From xen-devel-bounces@lists.xenproject.org Fri Sep 01 01:51:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 01:51:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594155.927374 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbtIz-0004sr-N5; Fri, 01 Sep 2023 01:50:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594155.927374; Fri, 01 Sep 2023 01:50:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbtIz-0004sj-IL; Fri, 01 Sep 2023 01:50:37 +0000
Received: by outflank-mailman (input) for mailman id 594155;
 Fri, 01 Sep 2023 01:50:36 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qbtIy-0004sZ-1a; Fri, 01 Sep 2023 01:50:36 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qbtIx-0003Yf-Rb; Fri, 01 Sep 2023 01:50:35 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qbtIx-0004qL-CW; Fri, 01 Sep 2023 01:50:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qbtIx-0000p9-C5; Fri, 01 Sep 2023 01:50:35 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=SXpfOeVqxqRkzDJWnr7u3HDNNwi1x709lq0bWcQApzE=; b=i4jiB48ytaB3iV6n0NGhMmkuhJ
	+pwRosgGE4Css+ojzH2h3PMLJMGbes0zUgPh0UO1BeNWgDVCEaLfrLi6HRCtEuvJHnE8s6YvYiBRC
	wRgbh8TaTFxxWzS3UT5m6vY/yIT8XzkeYlAQUCQMx2fhaXgU6aLwsCasYt9VlxcdFImU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182584-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182584: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-pvops:kernel-build:fail:regression
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=17780edd81d27fcfdb7a802efc870a99788bd2fc
X-Osstest-Versions-That:
    qemuu=156618d9ea67f2f2e31d9dedd97f2dcccbe6808c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 01 Sep 2023 01:50:35 +0000

flight 182584 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182584/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-pvops             6 kernel-build             fail REGR. vs. 182570

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182570
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182570
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182570
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182570
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182570
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182570
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182570
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182570
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                17780edd81d27fcfdb7a802efc870a99788bd2fc
baseline version:
 qemuu                156618d9ea67f2f2e31d9dedd97f2dcccbe6808c

Last test of basis   182570  2023-08-30 16:37:20 Z    1 days
Testing same since   182584  2023-08-31 16:38:53 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alex Bennée <alex.bennee@linaro.org>
  Daniel P. Berrangé <berrange@redhat.com>
  Ilya Leoshkevich <iii@linux.ibm.com>
  Jean-Christophe Dubois <jcd@tribudubois.net>
  Markus Armbruster <armbru@redhat.com>
  Matheus Branco Borella <dark.ryu.550@gmail.com>
  Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
  Peter Maydell <peter.maydell@linaro.org>
  Richard Henderson <richard.henderson@linaro.org>
  Stefan Hajnoczi <stefanha@redhat.com>
  Stefano Stabellini <stefano.stabellini@amd.com>
  Thomas Huth <thuth@redhat.com>
  Vikram Garhwal <vikram.garhwal@amd.com>
  Warner Losh <imp@bsdimp.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            fail    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 965 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 02:01:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 02:01:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594165.927387 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbtTK-0001gy-Mg; Fri, 01 Sep 2023 02:01:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594165.927387; Fri, 01 Sep 2023 02:01:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbtTK-0001gX-Jo; Fri, 01 Sep 2023 02:01:18 +0000
Received: by outflank-mailman (input) for mailman id 594165;
 Fri, 01 Sep 2023 02:01:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbtTJ-0000pF-23
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 02:01:17 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20621.outbound.protection.outlook.com
 [2a01:111:f400:7eab::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6d27e562-486b-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 04:01:14 +0200 (CEST)
Received: from MW3PR12MB4409.namprd12.prod.outlook.com (2603:10b6:303:2d::23)
 by SN7PR12MB7979.namprd12.prod.outlook.com (2603:10b6:806:32a::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.21; Fri, 1 Sep
 2023 02:01:08 +0000
Received: from MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::8931:6349:9a02:48c1]) by MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::8931:6349:9a02:48c1%4]) with mapi id 15.20.6745.021; Fri, 1 Sep 2023
 02:01:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6d27e562-486b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XPfkI5ksHooLbnMlteDNT9RvW5Pzx3c+/H2/52kB0arDvQe7lvy562g9kClKIGfBlPdDgIuTfRLJ+uXfbeMZj+ya124J289ADoi7rpHD6udyRyilVk3mH70TR/NtFg7+qzDvcvaVylys7Nwf0dSqZkky6/oPqrbeerHrp5u7UXvDeX4UwvAFyfi7+5/5WIPC/tG2h4fYPNu593JmZUok39OEaWTZv4zXc6HqVffHv/0wf33AyNESVioTksLr5Q1uiQhtiS90wpw8z7bny6IkkGxeQDp78FWJCrYZkQ8SXuFj576GrlD15RWmcjF22m7/GVafpEXOKJKLzTNsBPKg3w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=tefaZPbBjZKE8jg6y5E59w4cdQGNU/MmugF1cEd17wo=;
 b=hzd2HajX21rPE03X06wQnOtb59YqtZWxdvVSB9oslSDG5jOeJr/fzVG5aWcJ7bYw8ugthcD6orQlMnvSGQdIbZExDUSzBCmXVnM6OLWFRPULuKkAGy7yj6IrjBf0sSzXzWUjJujHK8Fk7mI2WIJD3Vm0Siu5N7k0CZhO3LIiHuBRnM1/BC6FHxWFd0oTHuRQ+i7xo9RosxDuzQbjjeflCqK/5DVPQBOzK8F1+yY5Ys130Z4Aor/EFvjn7kNUNlngmG1QCqap9tPaPJ/+YvrJLBFvIa2p7COfq1plO4AkHNKtbqh496i9gH4Bx539yoelubb1GiuPTrV3zWJQXXyE1A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=tefaZPbBjZKE8jg6y5E59w4cdQGNU/MmugF1cEd17wo=;
 b=o9EwpzxeedtQqGEQSXKSnsUCzNAm0qXsvDX4c+BJWyKaLcnFUW50EyveVwyMhWXKeA54w2z6o90fdNVEqEokFOTiw0iDTMStfnjYMs29mnPIubRuNOvPw6Eq+pz/Yg2OZYw6hYPxeg/0UTMrlN3Em8L84zfVdSeop/HzQHGFSmo=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Thu, 31 Aug 2023 19:01:04 -0700
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: Michal Orzel <michal.orzel@amd.com>
Cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, julien@xen.org,
	Jan Beulich <jbeulich@suse.com>, Paul Durrant <paul@xen.org>,
	Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
Subject: Re: [XEN][PATCH v10 11/20] xen/iommu: Introduce
 iommu_remove_dt_device()
Message-ID: <ZPFF4Hnp0Skc38IE@amd.com>
References: <20230825080222.14247-1-vikram.garhwal@amd.com>
 <20230825080222.14247-12-vikram.garhwal@amd.com>
 <079c831a-bf1e-5489-562b-01cf4e3e6b02@amd.com>
 <ZO-A7ZERxISru9Ug@amd.com>
 <7e622077-2062-f2c6-38ac-81196f80d1d2@amd.com>
 <4f5236f4-39c3-ddc7-3570-2b6bfcd514dd@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <4f5236f4-39c3-ddc7-3570-2b6bfcd514dd@amd.com>
X-ClientProxiedBy: BYAPR03CA0001.namprd03.prod.outlook.com
 (2603:10b6:a02:a8::14) To MW3PR12MB4409.namprd12.prod.outlook.com
 (2603:10b6:303:2d::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW3PR12MB4409:EE_|SN7PR12MB7979:EE_
X-MS-Office365-Filtering-Correlation-Id: a0bb132b-057a-4dc2-dea1-08dbaa8f4e97
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	N4YVOx2wC9W/IFeLQJQ3B6vx0ZiKL7XOtL8tTPZrgmGWrBCBr1CQyuq7tcfbXzaLHxyvxjKFQ1spb+XRb5/VflbiIVvZJGiA2erTAYi+/o5JRFTEqXfR0qWRLEvJxExnUG6wzkjx/SJW8rn5oGbp+ZCX0DSfDv+N9CTAirOWEWDh2Bu8x8PWEZ9GMLMrpsn5/Vb0ez7X24Xh7zxInn2JV3KXhP3C19jG9Y9G6eqXaxrs1C+Y3HweY9MYfZifjBIk6BYW7h5IdygFoZoVsCY+DLhhy/Qz/M+IoVIvSngQuzZauNwp1r7NBRLmvAWkrkyXvz/bXXxRvmOVsdVLGAgyWVWotXicXOyAaKhO03+4tPo3IDC6pDeux0T0l6MnrZmK1T5w4/OEGklPTXF9z8WR23Sw8WcZ1jUoaWYHnzBefEccAKBtu2DEQPuvaay9+/323ad4QriH2S54G25Sh4BgUiSX6fEtnsOKROIA/A1pOveP7M8g8eoDHh5P5fvT45XGUczX+80Rum4Gs0HnyuuBhGsyvxo/MwGHGxEy7rIORaXeQJbQW2QHxiReubuN1m30
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW3PR12MB4409.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(366004)(39860400002)(136003)(396003)(346002)(186009)(451199024)(1800799009)(6512007)(6666004)(6486002)(6506007)(36756003)(38100700002)(86362001)(2616005)(2906002)(26005)(53546011)(83380400001)(478600001)(4326008)(66556008)(54906003)(8936002)(8676002)(6862004)(66946007)(5660300002)(37006003)(6636002)(41300700001)(44832011)(316002)(66476007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ekthc3ZPOFpOMHlYU28yQ0kxRmk2RmFaL1J6cjQwT1NaN2FDak5waDlkaWcv?=
 =?utf-8?B?Ujc2Sjd6R2pEalp4TVRzWDMrVWpMcnV6Y3hhSUNKNTVha1RGR09zSHBlR3Fz?=
 =?utf-8?B?eWxWd2ErZTN5bjNGZnl1U1NFSnBjZ0pFV2lJeUJXZ1g3eEtKTzlnc0FPcFVt?=
 =?utf-8?B?d21zUGs4VjBmMllOd1dxSSsxUEVmYlhQZnJ2bXI3dytZeEEyUVRvaGE1WU9i?=
 =?utf-8?B?SGxJVHF6Y001bDVQajgwMkFBNkNkTGY1N0VmNU9VVEJQdHl0OHF1OUUyT24w?=
 =?utf-8?B?T2tIYW85ZDVuTDgzTENoUUhjM3dPR2VnckdKZDV4ZktFbWtDSHI0eG1hVUQ1?=
 =?utf-8?B?TTNiL0JXUmhwRzhvTlpvL1J6TUNiZnNDdWUrT0FXS2hqWTV5emFBQmJrL3RQ?=
 =?utf-8?B?Y2lqMXlHYlV3em1BWU41QjNaREJMTnBYZUJ5T1dEblROWHRZRG12V1JtMFJ0?=
 =?utf-8?B?eUxJeU4zWi9SbVR4K0NHVkF5cm1JOFd3b2t3enhlTGJRYWw2SFlqUDJZM3hy?=
 =?utf-8?B?Tzk3SlBZaEF2dzFldDdMeTkwOWRDLzVCV1BnV0RUa3ppY01CekIrcjV3aHZF?=
 =?utf-8?B?UmJVby9tWSsrRzBYU2RVdk10WkZMOE12eFFIM2tKQXd5MWZCWnF0OHdrTWto?=
 =?utf-8?B?cWIxMGFtN1l4VDU1UElmbU5aK2pFOGZ3U0RvNE9hQ3lCeTAwckRHL09OSDdh?=
 =?utf-8?B?VUtFa2hRenh1NWQ4clF3SW1zc2x6NFdFWDBFaFBscWZjZWZEVHo3UEpIR0cw?=
 =?utf-8?B?Z3E3SXdlQ3ZhWlQ3RlRScFp3MmV5Vmd0ekE5ek85MDFCMnlTRmJJUmp6RDl0?=
 =?utf-8?B?THVmM3BncnFWQndLeWZ6NzhNZ2gwTnY3VjFWem8xRTRuMnJaTmpaZEVCTDFh?=
 =?utf-8?B?RkRneVozQm55S29kVW5sMFNrWlJ6ZnU0L05haU1tVDlFdjF6cWtYUjBIeVZo?=
 =?utf-8?B?UldVVUlnSjJONDBFNFZwQnBFQURMTFFaS1Z1ZDZhWU5JRnRNN0p5bXk4d0pt?=
 =?utf-8?B?Qy9rL0gwb1Z4a2pWVHlDK2g5SmFDVGIrcGJGL0pYa0pnNmZtQWpwWDQvQWpS?=
 =?utf-8?B?R0lDd3kybVBSS0RNVUcxbDcxZ2VnNzdscHB2UENzYkI0RXB0OENoTWRBdEZa?=
 =?utf-8?B?M2RkeDNGTTdlSXErclRjcnIzR3dFRnM3NXFia1BVZ0JBQ3hoY1k1MkNucmIz?=
 =?utf-8?B?SHMybFd4SVh5Z0U0bzM1LzN2bjFKN3BBMGErcldqblZrT3MzdnNNb244WmVz?=
 =?utf-8?B?QXAvbEtqcDAzMUlwT2pjTVJQYmNKeEJ4L1B6NG15cnVIcWJFNnNUS2VqVEFP?=
 =?utf-8?B?ekNWWWhlZ1JKeWpiR2JkSTJvMzJVdWF2UUVnN3VNSVpCTGMrdjR2TzF2Q2Z4?=
 =?utf-8?B?RG9EYklJcWFFUU1lTU9nSkpHT2VPQlZKamxMcFBzeCtCY3BKa2U0OFh0bkNh?=
 =?utf-8?B?ejJwOGVjTlIzK25OTUcxc2Jlb1N3RC9EOFpRajBvb2J3eHMzNk8yNjRjcHM3?=
 =?utf-8?B?VmlSL09wOThza1I0Y1k0TEFVTkxJaVVyS0ZENFY5YlBCbnU1QTlCZ2QyM3dC?=
 =?utf-8?B?S0NzREFHcllxNHRqN3g0R2U5b2hQRHhBSnRxT0cwTUN1S29xMnV1VzdHMU5y?=
 =?utf-8?B?WW1kVFYrS1ZBVjBCWU8vOG5kSUlONWZHcDJmVWk3ejVuY0o5cTRHeDdaSXd4?=
 =?utf-8?B?U25oZ29xOTRUaDFNajNtaWw5dndXSDdOWFVmM01ZS0FDcElCK1FGVlR2UjRW?=
 =?utf-8?B?b1prR0o4MVlRVjNMWHdORE84THd6QkxxQk1kbStTTElVZkM5QnV3bndKNG55?=
 =?utf-8?B?SVR6SVNiTW1Ed2pJdmZLNndXOW5YdVZYS2pIalMxSk8xOTNNMk5nRjlCVHBl?=
 =?utf-8?B?K2FZK0hXdjFFVnN2WGhiWnRacTNFR3lBSXVVSVhaQzJ2elM3RHFCZUk4QURr?=
 =?utf-8?B?OXNaN2thY1NZN2t0b2Eyb1M0WjhGcnVNNk9hTTUwYTZFdGNnUUV3TVFBNWQr?=
 =?utf-8?B?NmRiQy9kVEVZUExSUU1jS2FQMFlqR2ZGUERXdlVyaldPNUY1YnFCWnVTTlc3?=
 =?utf-8?B?RElsRnFzQm5XTkEyakVTYlA4U3lkRW5iMjc4cXN4VUdCdDNqVTlYVVRtZTZU?=
 =?utf-8?Q?hRNEiIOwjMbr2feL4Re85ZHcS?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a0bb132b-057a-4dc2-dea1-08dbaa8f4e97
X-MS-Exchange-CrossTenant-AuthSource: MW3PR12MB4409.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 02:01:08.1835
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xB4j7hjnB/2q9NzCM0oPR7QoFH67Pzi3rc7qkgB0IjFRj/efZABwji1tub7S0RqBOCYzTBmtqIIA02oSE4cQuw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7979

On Thu, Aug 31, 2023 at 09:32:48AM +0200, Michal Orzel wrote:
> 
> 
> On 31/08/2023 09:23, Michal Orzel wrote:
> > 
> > 
> > On 30/08/2023 19:48, Vikram Garhwal wrote:
> >> Hi Michal,
> >> On Tue, Aug 29, 2023 at 10:23:30AM +0200, Michal Orzel wrote:
> >>>
> >>>
> >>> On 25/08/2023 10:02, Vikram Garhwal wrote:
> >>>> Remove master device from the IOMMU. This will be helpful when removing the
> >>>> overlay nodes using dynamic programming during run time.
> >>>>
> >>>> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> >>>> Acked-by: Jan Beulich <jbeulich@suse.com>
> >>>
> >>> You don't seem to handle Julien remarks for this patch made in v9.
> >>> I will forward them here to avoid answering to old version, but for the future, do not carry the exact same patch
> >>> if you haven't yet addressed someone's remarks.
> >> This got skipped as I cannot find direct email from Julien. The only email reply
> >> on this patch is can find is from: xen-devel-bounces@lists.xenproject.org and
> >> this got messed up with other larger set of email xen-devel sends.
> >>
> >> Did you get direct email?
> >>>
> >>>>
> >>>> ---
> >>>> Changes from v7:
> >>>>     Add check if IOMMU is enabled.
> >>>>     Fix indentation of fail.
> >>>> ---
> >>>> ---
> >>>>  xen/drivers/passthrough/device_tree.c | 44 +++++++++++++++++++++++++++
> >>>>  xen/include/xen/iommu.h               |  1 +
> >>>>  2 files changed, 45 insertions(+)
> >>>>
> >>>> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
> >>>> index 1202eac625..3fad65fb69 100644
> >>>> --- a/xen/drivers/passthrough/device_tree.c
> >>>> +++ b/xen/drivers/passthrough/device_tree.c
> >>>> @@ -128,6 +128,50 @@ int iommu_release_dt_devices(struct domain *d)
> >>>>      return 0;
> >>>>  }
> >>>>
> >>>> +int iommu_remove_dt_device(struct dt_device_node *np)
> >>>> +{
> >>>> +    const struct iommu_ops *ops = iommu_get_ops();
> >>>> +    struct device *dev = dt_to_dev(np);
> >>>> +    int rc;
> >>>> +
> >>>> +    if ( !iommu_enabled )
> >>>> +        return 1;
> >>> J:
> >>> The caller doesn't seem to check if the error code is > 0. So can we
> >>> instead return a -ERRNO?
> >> Will change the check in caller. I want to keep this as it as so it looks
> >> similar to iommu_add_dt_device().
> >>>
> >>> If you want to continue to return a value > 0 then I think it should be
> >>> documented in a comment like we did for iommu_add_dt_device().
> >>>
> >> Will add comment before iommu_remove_dt_device().
> >>>> +
> >>>> +    if ( !ops )
> >>>> +        return -EOPNOTSUPP;
> >>>> +
> >>>> +    spin_lock(&dtdevs_lock);
> >>>> +
> >>>> +    if ( iommu_dt_device_is_assigned_locked(np) )
> >>>> +    {
> >>>> +        rc = -EBUSY;
> >>>> +        goto fail;
> >>>> +    }
> >>>> +
> >>>> +    /*
> >>>> +     * The driver which supports generic IOMMU DT bindings must have this
> >>>> +     * callback implemented.
> >>>> +     */
> >>> J:
> >>> I have questioned this message in v7 and I still question it. I guess
> >>> you copied the comment on top of add_device(), this was add there
> >>> because we have a different way to add legacy device.
> >>>
> >>> But here there are no such requirement. In fact, you are not adding the
> >>> the callback to all the IOMMU drivers... Yet all of them support the
> >>> generic IOMMU DT bindings.
> >> Will change this.
> >>>
> >>>> +    if ( !ops->remove_device )
> >>>> +    {
> >>>> +        rc = -EOPNOTSUPP;
> >>>> +        goto fail;
> >>>> +    }
> >>>> +
> >>>> +    /*
> >>>> +     * Remove master device from the IOMMU if latter is present and available.
> >>> J:
> >>> I read this as this will not return an error if the device is protected.
> >>> However, AFAICT, the implement in the SMMU driver provided in this
> >>> series will return an error. So I would suggest to replace this sentence
> >>> with:
> >>>
> >>> de-register the device from the IOMMU driver.
> >> Will change the comment.
> >>>
> >>>> +     * The driver is responsible for removing is_protected flag.
> >>> J:
> >>> Can you add an assert in the 'if ( !rc )' block to confirm that
> >>> is_protected was effectively removed. Something like:
> >>>
> >>> ASSERT(!dt_device_is_protected(dev));
> >> Is ASSERT really required here. remove callback can return before setting is_protected as false.
> > I think Julien wanted to add extra check to make sure driver behaves as expected.
> > That said, his suggestion is incorrect since the callback can return before clearing the flag.
> > So, if ASSERT is required, this should be:
> > ASSERT(rc || !dt_device_is_protected(dev));
> > so that we check for is_protected being false only on callback returning success (i.e. 0).
> I wrote this based on iommu_add_dt_device(), which does:
>     if ( !rc )
>         rc = ops->add_device(0, dev);
> 
> but looking at iommu_remove_dt_device(), where you have:
>     rc = ops->remove_device(0, dev);
>     if ( !rc )
>         iommu_fwspec_free(dev);
> 
> you should do what Stefano suggested (i.e. just add ASSERT into ( !rc ) block)
Added it in v11.
> 
> ~Michal


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 02:19:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 02:19:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594175.927397 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbtl7-0007sH-DG; Fri, 01 Sep 2023 02:19:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594175.927397; Fri, 01 Sep 2023 02:19:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbtl7-0007sA-9Y; Fri, 01 Sep 2023 02:19:41 +0000
Received: by outflank-mailman (input) for mailman id 594175;
 Fri, 01 Sep 2023 02:19:39 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qbtl5-0007s0-RO; Fri, 01 Sep 2023 02:19:39 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qbtl5-0001Cq-HB; Fri, 01 Sep 2023 02:19:39 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qbtl5-0005ay-5W; Fri, 01 Sep 2023 02:19:39 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qbtl5-0006sh-4z; Fri, 01 Sep 2023 02:19:39 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=nJhWUpPg/68N5v/pnyB1vFNxIOVQkkw037e7PdjMzDQ=; b=SGTxeNaa6BXC+a9iqxsgp1uikg
	TFsXQqsiweZDeFZ4FoKVzPQY/JbSJ9rtB7iP46aZZx6MEy8AbabzK/6NTee+j3slZmDLWzhbgD5ob
	XtEy2pcxVtCPbHb3sjqcSOHYMZZOBhsjAfzwh54TkOMtIyzXwew3Ip23o7Ee+1BM5G3k=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182581-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182581: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=6621932264e3e86df3913db4249ecd3eb100b13f
X-Osstest-Versions-That:
    xen=e5522c71beaa83f2f5d2118724ace9f90c22e583
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 01 Sep 2023 02:19:39 +0000

flight 182581 xen-unstable real [real]
flight 182587 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182581/
http://logs.test-lab.xenproject.org/osstest/logs/182587/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 182571

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182571
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182571
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182571
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182571
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182571
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182571
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182571
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182571
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182571
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182571
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182571
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182571
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  6621932264e3e86df3913db4249ecd3eb100b13f
baseline version:
 xen                  e5522c71beaa83f2f5d2118724ace9f90c22e583

Last test of basis   182571  2023-08-30 17:08:53 Z    1 days
Testing same since   182581  2023-08-31 08:22:39 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Nicola Vetrini <nicola.vetrini@bugseng.com>
  Simone Ballarin <simone.ballarin@bugseng.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit 6621932264e3e86df3913db4249ecd3eb100b13f
Author: Nicola Vetrini <nicola.vetrini@bugseng.com>
Date:   Fri Aug 25 16:00:23 2023 +0200

    arm64/vfp: address MISRA C:2012 Dir 4.3
    
    Directive 4.3 prescribes the following:
    "Assembly language shall be encapsulated and isolated",
    on the grounds of improved readability and ease of maintenance.
    
    A static inline function is the chosen encapsulation mechanism.
    
    No functional change.
    
    Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
    Reviewed-by: Michal Orzel <michal.orzel@amd.com>
    Acked-by: Stefano Stabellini <sstabellini@kernel.org>

commit 1b7dc185f8421b6ad849e88c0e9b2a81c2a99331
Author: Stefano Stabellini <stefano.stabellini@amd.com>
Date:   Mon Aug 21 18:02:28 2023 -0700

    docs/misra: document gcc-specific behavior with shifting signed integers
    
    Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit 1f2f5087c0bbc8c6219e5ce33e5bf17575f1cc00
Author: Simone Ballarin <simone.ballarin@bugseng.com>
Date:   Mon Aug 28 15:20:08 2023 +0200

    xen/sched: address violations of MISRA C:2012 Directive 4.10
    
    Add inclusion guards to address violations of
    MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
    to prevent the contents of a header file being included more than
    once").
    
    Mechanical change.
    
    Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
    Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
    Reviewed-by: George Dunlap <george.dunlap@cloud.com>

commit 591fd09ffba5c6e587477d07302792ec2e68cf16
Author: Stefano Stabellini <stefano.stabellini@amd.com>
Date:   Fri Aug 25 14:48:42 2023 -0700

    docs/misra: add rules 10.1 10.2 10.3 10.4
    
    10.1 with several caveats, described in the notes.
    10.3 and 10.4 as "aspirational" guidelines, as clarified in the notes.
    
    Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
    Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 04:14:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 04:14:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594185.927410 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbvYL-0003o2-CA; Fri, 01 Sep 2023 04:14:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594185.927410; Fri, 01 Sep 2023 04:14:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbvYL-0003nv-9O; Fri, 01 Sep 2023 04:14:37 +0000
Received: by outflank-mailman (input) for mailman id 594185;
 Fri, 01 Sep 2023 04:14:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=am4h=ER=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qbvYK-0003np-Kb
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 04:14:36 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20612.outbound.protection.outlook.com
 [2a01:111:f400:7e88::612])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0c0082d0-487e-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 06:14:31 +0200 (CEST)
Received: from DM6PR10CA0022.namprd10.prod.outlook.com (2603:10b6:5:60::35) by
 SJ1PR12MB6052.namprd12.prod.outlook.com (2603:10b6:a03:489::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.23; Fri, 1 Sep
 2023 04:14:25 +0000
Received: from CY4PEPF0000EDD7.namprd03.prod.outlook.com
 (2603:10b6:5:60:cafe::9c) by DM6PR10CA0022.outlook.office365.com
 (2603:10b6:5:60::35) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22 via Frontend
 Transport; Fri, 1 Sep 2023 04:14:25 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000EDD7.mail.protection.outlook.com (10.167.241.211) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 04:14:24 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 23:14:24 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 23:14:24 -0500
Received: from [192.168.139.126] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Thu, 31 Aug 2023 23:14:22 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0c0082d0-487e-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AEDX4V6/JURJ1lV5zIG6iAb3/y8gvRHavNJneOLN1fhkvfBT1VFwBeep/BK05+AdmS3iWIiYo/IDnnfYR4DCX35XCrkLGrcqvHSbsL77E6L+N59juQUieD9KD4N3ekXO7XjBLuw+ePUxFa6W3BqjvIkd3lpR2F2YTrzexU8uxBTeUCOlEmWewLMyQy634+ir4Vu9wGe/joTVYWiw7epdPLuP4tjxey5t/OB+Yy43miqGwFMWZwHDwI5haQXQG+V/OSRvtWkItp6+o4+bcpiSniagDQNRUyEWQvhEeW9HjqP3qxiELaAzql1X9Z+5/htDjuJ72mWEzhnJO1bMCqOuGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UoeJEapfFqJUJn4pp1oxqV35yBWUaOfGoxv8sXmIsHE=;
 b=IoJBl9+12iO+VHHL/842jZ04Keh5aVuJnBo5avmDJiUalzhL+BtjpFAz4RQiwWjYS7VrMKwQOTX1C4Oziu80PP4nZ8eOZ4BA1O7YBK53vrD2dQT20pk6A7h4bBzVNQ4b+jezMIr48YOlk5IK3atD1n2gn4vTDLFsuFdF2ThUuoHn9RS0SEY3+sURWdZmAECJCHYgGnkmW+SvbYuT76QMwxIntTG1wx4MJV/VKLYqAMGLo337kvhiiVcuwvVQyHGWdu1d85QUVqWL6OCxXFmAxGrg4BeTk5MeaR2Bj0kZdWAI/amICU1XZb+TNPtat0js8unOjbytIrcMlrOInVwTcw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UoeJEapfFqJUJn4pp1oxqV35yBWUaOfGoxv8sXmIsHE=;
 b=Qn5PRU0kUan9+U43xasmHUi5E2AwdeF1lFh4wqHa5VyX9vtl3sxKP/rmatPu+4z0u6vyWx6eRY5zrO1CeJhmtVh4Shq3FhGTMtcIg5io38bM4BKshIcoE8UzXv8VNBQbIi9YndAlHe/1o9FYQl2aR0KsM8zElH+T6bj0EJQN/Ao=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <b76fbdab-9e72-996a-2ae3-afd13b086bad@amd.com>
Date: Fri, 1 Sep 2023 00:14:18 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH v4 6/6] xen/vpci: header: filter PCI capabilities
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
	<xen-devel@lists.xenproject.org>
References: <20230828175858.30780-1-stewart.hildebrand@amd.com>
 <20230828175858.30780-7-stewart.hildebrand@amd.com>
 <059d3e2d-26f2-e24a-57fb-5ae10f6c2f5f@suse.com>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <059d3e2d-26f2-e24a-57fb-5ae10f6c2f5f@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EDD7:EE_|SJ1PR12MB6052:EE_
X-MS-Office365-Filtering-Correlation-Id: 16b2347a-ce2b-4ba7-2a51-08dbaaa1ed54
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QvOBHGA/7yxDhCzj2BhoZY9n9H/wKo4oZs1UazrdI+5zfauBWJgQ24qhfnddINc4HHHVYhI85tnyb7GinDot++px1ngCspl6q+bYdrEWCjtlvG4Urcy0tnKJkQ26fe/isbRwak6R9bkJzIiw2he9QzXNkp9/yAc4iUX5uV77H/kLrA81J74aifjGs33ldtgYvzd5Sc7E8RLWCYbUrloC839v84BVGDs0uquRet1EDL4W8bGtxH9Wj2BBkoiBg44LrPJFwGiBAFb2wiz3ZzHx70VpHPYrD3cC1GfyShJKkJkPTOEmEOlVqJIHLgk9N67IdTfW39Ht5FxdbWO6FuPVNsxWZ20NyipQbm6oiQ8OWoN/LKbgwivfSJbsmvI2/fVtZWQOgw2eCLpEA/NRoUFMzachIELTvQSMPHbVnBdRtjts4PyKlYgHAM/Cf4qsFMC4BGqeJ1JDtVl88Rug9kp7qMdG6H7FyDrQZRpiYqL77GU5SC3bVE6MWfAgTIPdKzjK9ftg6EMjo3yeFGmpc//e/lNotrJ5MMFIzdQrftb7UFTYMZ/QJvdsABoxjxNAHntlQPRDIrfkYHPBzz05yRPGbjcc8STeVvl1vDJJX/NTK9+L5p2DMs1O8R8g0K/eODr/8hzSTdRM391+iy0xyqK44cYSPBQzJTe1ikXdBt/QbVdGYC7RJ9+/BtHhfFihEg/lE0XBRwR68gKFLGgSjK+UpWyWRPNWH96qHS++7vwQGUQZ5dtedauZQ8mMTXS7mAzaQX4+wFkg+gCxRbzZRl8IlDKta8yjHgI6eQ1LltP5VUMbYxrt4q5r9TTPJBfs8c8f
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(376002)(396003)(346002)(136003)(186009)(82310400011)(1800799009)(451199024)(36840700001)(40470700004)(46966006)(6666004)(53546011)(478600001)(2616005)(26005)(336012)(426003)(2906002)(44832011)(6916009)(16576012)(54906003)(316002)(41300700001)(70206006)(70586007)(5660300002)(8676002)(8936002)(4326008)(40460700003)(40480700001)(47076005)(36756003)(36860700001)(86362001)(31696002)(82740400003)(81166007)(356005)(31686004)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 04:14:24.9667
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 16b2347a-ce2b-4ba7-2a51-08dbaaa1ed54
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EDD7.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ1PR12MB6052

On 8/31/23 08:11, Jan Beulich wrote:
> On 28.08.2023 19:56, Stewart Hildebrand wrote:
>> Currently, Xen vPCI only supports virtualizing the MSI and MSI-X capabilities.
>> Hide all other PCI capabilities (including extended capabilities) from domUs for
>> now, even though there may be certain devices/drivers that depend on being able
>> to discover certain capabilities.
>>
>> We parse the physical PCI capabilities linked list and add vPCI register
>> handlers for the next elements, inserting our own next value, thus presenting a
>> modified linked list to the domU.
>>
>> Introduce helper functions vpci_hw_read8 and vpci_read_val. The vpci_read_val
>> helper function returns a fixed value, which may be used for RAZ registers, or
>> registers whose value doesn't change.
>>
>> Introduce pci_find_next_cap_ttl() helper while adapting the logic from
>> pci_find_next_cap() to suit our needs, and implement the existing
>> pci_find_next_cap() in terms of the new helper.
>>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> 
> Reviewed-by: Jan Beulich <jbeulich@suse.com>> 
> Nevertheless a couple of remarks:
> 
>> --- a/xen/drivers/pci/pci.c
>> +++ b/xen/drivers/pci/pci.c
>> @@ -39,31 +39,44 @@ unsigned int pci_find_cap_offset(pci_sbdf_t sbdf, unsigned int cap)
>>      return 0;
>>  }
>>
>> -unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
>> -                               unsigned int cap)
>> +unsigned int pci_find_next_cap_ttl(pci_sbdf_t sbdf, unsigned int pos,
>> +                                   bool (*is_match)(unsigned int, unsigned int),
>> +                                   unsigned int userdata, unsigned int *ttl)
>>  {
>> -    u8 id;
>> -    int ttl = 48;
>> +    unsigned int id;
>>
>> -    while ( ttl-- )
>> +    while ( (*ttl)-- )
>>      {
>>          pos = pci_conf_read8(sbdf, pos);
>>          if ( pos < 0x40 )
>>              break;
>>
>> -        pos &= ~3;
>> -        id = pci_conf_read8(sbdf, pos + PCI_CAP_LIST_ID);
>> +        id = pci_conf_read8(sbdf, (pos & ~3) + PCI_CAP_LIST_ID);
>>
>>          if ( id == 0xff )
>>              break;
>> -        if ( id == cap )
>> +        if ( is_match(id, userdata) )
>>              return pos;
>>
>> -        pos += PCI_CAP_LIST_NEXT;
>> +        pos = (pos & ~3) + PCI_CAP_LIST_NEXT;
>>      }
>> +
>>      return 0;
>>  }
>>
>> +static bool cf_check is_cap_match(unsigned int id1, unsigned int id2)
>> +{
>> +    return id1 == id2;
>> +}
> 
> Personally I would have preferred to get away without yet another hook
> function here, by ...
> 
>> +unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
>> +                               unsigned int cap)
>> +{
>> +    unsigned int ttl = 48;
>> +
>> +    return pci_find_next_cap_ttl(sbdf, pos, is_cap_match, cap, &ttl) & ~3;
> 
> ... passing NULL here and then suitably handling the case in that
> common helper.

Thinking in terms of reducing the amount of dead code, I'll change it

>> @@ -561,6 +573,71 @@ static int cf_check init_bars(struct pci_dev *pdev)
>>      if ( rc )
>>          return rc;
>>
>> +    if ( !is_hardware_domain(pdev->domain) )
>> +    {
>> +        if ( !(pci_conf_read16(pdev->sbdf, PCI_STATUS) & PCI_STATUS_CAP_LIST) )
>> +        {
>> +            /* RAZ/WI */
>> +            rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL,
>> +                                   PCI_CAPABILITY_LIST, 1, (void *)0);
>> +            if ( rc )
>> +                return rc;
>> +        }
>> +        else
>> +        {
>> +            /* Only expose capabilities to the guest that vPCI can handle. */
>> +            uint8_t next;
> 
> If this was "unsigned long", ...
> 
>> +            unsigned int ttl = 48;
>> +
>> +            next = pci_find_next_cap_ttl(pdev->sbdf, PCI_CAPABILITY_LIST,
>> +                                         vpci_cap_supported, 0, &ttl);
>> +
>> +            rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL,
>> +                                   PCI_CAPABILITY_LIST, 1,
>> +                                   (void *)(uintptr_t)next);
> 
> ... you'd avoid the need for the double cast here and again below. Yet
> then I realize that Misra would take offence at us doing so ...

As ugly as that double cast is, I think I prefer the next and pos declarations have consistent types (which I had intended to be unsigned int to match the prior patches, not uint8_t). As well as not making the MISRA situation any worse. The casts, after all, make it excruciatingly obvious what we're doing here, I hope.

Stew


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 04:58:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 04:58:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594195.927425 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwF9-0008R4-RJ; Fri, 01 Sep 2023 04:58:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594195.927425; Fri, 01 Sep 2023 04:58:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwF9-0008Qx-OW; Fri, 01 Sep 2023 04:58:51 +0000
Received: by outflank-mailman (input) for mailman id 594195;
 Fri, 01 Sep 2023 04:58:50 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=am4h=ER=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qbwF8-0008Qn-0v
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 04:58:50 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20619.outbound.protection.outlook.com
 [2a01:111:f400:7e89::619])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3bd819c1-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 06:58:47 +0200 (CEST)
Received: from MW4PR03CA0284.namprd03.prod.outlook.com (2603:10b6:303:b5::19)
 by DM6PR12MB4154.namprd12.prod.outlook.com (2603:10b6:5:21d::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.23; Fri, 1 Sep
 2023 04:58:41 +0000
Received: from CO1PEPF000042A7.namprd03.prod.outlook.com
 (2603:10b6:303:b5:cafe::57) by MW4PR03CA0284.outlook.office365.com
 (2603:10b6:303:b5::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.21 via Frontend
 Transport; Fri, 1 Sep 2023 04:58:41 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CO1PEPF000042A7.mail.protection.outlook.com (10.167.243.36) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.17 via Frontend Transport; Fri, 1 Sep 2023 04:58:40 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 23:58:39 -0500
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 23:58:39 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Thu, 31 Aug 2023 23:58:37 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3bd819c1-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ws0gXHjfhEZFyh53YRtVITL4wmMFZj7IomdcGqV+CQ8ygzWF2bL9zEwDklm1+pU+5C9alqhb6xmLvNTslwYdZ2ahqcnTZ7nCb/BqDvbBWUi+REuke3jtwmPImPIqExEG+cAQcMZxiNp674LpPSrSvtPvrLvSNqJe8DA2tPMbK+F6r4uX2gOwS5428l6moOT8ARdHt1L3hdUrTwBplUkJNmzB9IbbCi0kpEJnx3N16lheLy/47am2sG9h2kVoGADw3UeSo4vIv8vz4qYmyOgr8jwWPzZ7lSWR4d+2aXyC96mJfUAxHQOP53fvIGTyKSRvIaPaZMl0WCkMhoFOFWDnTA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+C51D0xK4gKlj0FHSjdsmIYag0hca3KTphOGv1GNRoo=;
 b=Wl4+J33TGdaJoVnlJC3q5wBy2d3Brj+gm3hLYwWz4k3XNaVCnVw1agxghDtuTKHQAVPHSjypC0OXzA+CQITr8aTw1h1MvUGJBfdoZuJG7DsRKiH0Zn9fD2SU+1hu1lig+Je4Wqu0JQukbGXVMZT369j7wUgwiUewWGPLo0kIxrzZBevTGdfDcS/nIi7nwk+1hHUrgmRd4C0ep9Agx7/MFaystP9pkOK12ZI8agZPx+Da0z9I5M30buwceH+dkKEyE8zeSA/1frKX3eQbHw/IKvuxRtzCnaHzij02Ad7YjO0hxzeejJ3SNdM0R9jAeTzDidAINEsNzRHeiZwaO8L/3g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+C51D0xK4gKlj0FHSjdsmIYag0hca3KTphOGv1GNRoo=;
 b=sRAftn0EPOlykcO3DIF9wBELkuLa2G3jVRp97sX5nzf4N81G2kTYj7Cfto7+jRnyhzttwQ0qRKRDWnIgr7VM7FeG3yzcBTBNSEULMpoUxTMK9k/33Dfiak31cIU9jm6e1qLZL2Y2MPEhhxpq6MBqplZe34vxC8XH+CSDFq+0EYQ=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, George Dunlap <george.dunlap@citrix.com>, Julien Grall
	<julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant
	<paul@xen.org>, Kevin Tian <kevin.tian@intel.com>
Subject: [PATCH v5 0/5] vPCI capabilities filtering
Date: Fri, 1 Sep 2023 00:57:27 -0400
Message-ID: <20230901045742.235975-1-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000042A7:EE_|DM6PR12MB4154:EE_
X-MS-Office365-Filtering-Correlation-Id: a9e2a0d1-d148-4729-52b8-08dbaaa81c34
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jGnP8c/JylRTOyxh0MgvWdWRXf2TgSt0OzohCTf+xhYlH+LrC/pQtEk1XoCwAZ5lUyaI+LpDZTLeMeqZyY29KDcZpCjw83hwSqAeM2JF1zMuNL2ksvM8U/Z3HxHhOC0E1Qar6iM6XL61pct0GBZ/n15MEtnEenZffObXH8Gq1jCn9BKYm+D1BUKelBInH0wqoPljF5EJHdmsXNV6XjkMx2IYuu25NmrX3g1lE29GBmgBHOoZymE6F68+vZxwmr+8/LcR5okHgLCcno1+eQ3zI5CTLLbu7aCNg7tmD+1fYuWqvd6qT0wR/j0MMd2LoJDKQAQTGOxirMSrN9nchsEhEmfv0F5u/CKln2d9xi92qYGIPKEQThyNZukWZTcf3Q0q1XSuI67GCtCDza3OlkZpz8ZjYOaohfj/sMy70nlPe5W/yxUhpNlvhKMcpe+WKdSHSHGW8DPkVmUwypqoIpE/xR2pg+fzx9HxSCgiWw5K2auW6t9VsS3VorPkReFhlzTTZRk5H4iSHrOjtEDV8SPVbsh4zvnTuuAASNSuEJEpZ4LMhveLWcFBLqiiEUoYMl8qbnVKQHkXOUgvdBnA0U5BGKfZpL3+sVsty4sRFkRLNmbA8kNcF6PzmdRYZZc7ezaTsKzKlzLrvrKjDDSMHhINO3xJMHvcCUZeUqM+Ou4iah2m07hWFzUViZhcZ5wYFtVRWDZTfVUQEtWFZyyLc9R7RQ9Jas4IZTtY4CCXeQyPoltA7Ow+w3r2UutpJkzHjrfd+yF/gORCy7h5JVzNwLduBA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(376002)(346002)(136003)(1800799009)(186009)(82310400011)(451199024)(40470700004)(36840700001)(46966006)(40480700001)(7416002)(66899024)(2906002)(6916009)(316002)(41300700001)(5660300002)(44832011)(40460700003)(8676002)(4326008)(8936002)(36756003)(86362001)(356005)(6666004)(966005)(81166007)(478600001)(82740400003)(1076003)(2616005)(426003)(336012)(83380400001)(26005)(70586007)(70206006)(36860700001)(47076005)(54906003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 04:58:40.6069
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a9e2a0d1-d148-4729-52b8-08dbaaa81c34
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000042A7.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4154

This small series enables vPCI to filter which PCI capabilities we expose to a
domU. This series adds vPCI register handlers within
xen/drivers/vpci/header.c:init_bars(), along with some supporting functions.

Note there are minor rebase conflicts with the in-progress vPCI series [1].
These conflicts fall into the category of functions and code being added
adjacent to one another, so are easily resolved. I did not identify any
dependency on the vPCI locking work, and the two series deal with different
aspects of emulating the PCI header.

Future work may involve adding handlers for more registers in the vPCI header,
such as VID/DID, etc. Future work may also involve exposing additional
capabilities to the guest for broader device/driver support.

v4->v5:
* drop ("x86/msi: remove some unused-but-set-variables") as it has been
  committed
* add ("xen/pci: update PCI_STATUS_* constants")
* squash ro_mask patch

v3->v4:
* drop "xen/pci: address a violation of MISRA C:2012 Rule 8.3" as it has been
  committed
* re-order status register handler and capabilities filtering patches
* split an unrelated change from ("xen/pci: convert pci_find_*cap* to pci_sbdf_t")
  into its own patch
* add new patch ("x86/msi: rearrange read_pci_mem_bar slightly") based on
  feedback
* add new RFC patch ("xen/vpci: support ro mask")

v2->v3:
* drop RFC "xen/vpci: header: avoid cast for value passed to vpci_read_val"
* minor misra C violation fixup in preparatory patch
* switch to pci_sbdf_t in preparatory patch
* introduce status handler

v1->v2:
* squash helper functions into the patch where they are used to avoid transient
  dead code situation
* add new RFC patch, possibly throwaway, to get an idea of what it would look
  like to get rid of the (void *)(uintptr_t) cast by introducing a new memory
  allocation

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-07/msg01281.html

Stewart Hildebrand (5):
  xen/pci: convert pci_find_*cap* to pci_sbdf_t
  x86/msi: rearrange read_pci_mem_bar slightly
  xen/pci: update PCI_STATUS_* constants
  xen/vpci: header: status register handler
  xen/vpci: header: filter PCI capabilities

 xen/arch/x86/msi.c                         | 62 +++++---------
 xen/drivers/char/ehci-dbgp.c               |  3 +-
 xen/drivers/passthrough/amd/iommu_detect.c |  2 +-
 xen/drivers/passthrough/ats.c              |  4 +-
 xen/drivers/passthrough/ats.h              |  6 +-
 xen/drivers/passthrough/msi.c              |  6 +-
 xen/drivers/passthrough/pci.c              | 21 ++---
 xen/drivers/passthrough/vtd/quirks.c       | 10 +--
 xen/drivers/passthrough/vtd/x86/ats.c      |  3 +-
 xen/drivers/pci/pci.c                      | 52 +++++++-----
 xen/drivers/vpci/header.c                  | 94 ++++++++++++++++++++++
 xen/drivers/vpci/msi.c                     |  4 +-
 xen/drivers/vpci/msix.c                    |  4 +-
 xen/drivers/vpci/vpci.c                    | 58 +++++++++++--
 xen/include/xen/pci.h                      | 14 ++--
 xen/include/xen/pci_regs.h                 | 10 +++
 xen/include/xen/vpci.h                     | 15 ++++
 17 files changed, 255 insertions(+), 113 deletions(-)


base-commit: 6621932264e3e86df3913db4249ecd3eb100b13f
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 04:59:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 04:59:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594198.927436 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwFc-0000Qw-3i; Fri, 01 Sep 2023 04:59:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594198.927436; Fri, 01 Sep 2023 04:59:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwFc-0000Qp-0n; Fri, 01 Sep 2023 04:59:20 +0000
Received: by outflank-mailman (input) for mailman id 594198;
 Fri, 01 Sep 2023 04:59:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=am4h=ER=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qbwFa-0000Nr-M1
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 04:59:18 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on2061d.outbound.protection.outlook.com
 [2a01:111:f400:7eab::61d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4c62c828-4884-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 06:59:16 +0200 (CEST)
Received: from CY5PR17CA0052.namprd17.prod.outlook.com (2603:10b6:930:12::30)
 by IA0PR12MB7674.namprd12.prod.outlook.com (2603:10b6:208:434::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.21; Fri, 1 Sep
 2023 04:59:11 +0000
Received: from CY4PEPF0000EE37.namprd05.prod.outlook.com
 (2603:10b6:930:12:cafe::d3) by CY5PR17CA0052.outlook.office365.com
 (2603:10b6:930:12::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22 via Frontend
 Transport; Fri, 1 Sep 2023 04:59:11 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000EE37.mail.protection.outlook.com (10.167.242.43) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 04:59:10 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 23:59:10 -0500
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 23:59:09 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Thu, 31 Aug 2023 23:59:08 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4c62c828-4884-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jR5pEtfBwCpghDODLPo4YolLTi9/N6jMeQi7NO+84WfbV6F9F7icsvGNkbex66K9r7ATAOGuJkKHQ1p5FZvFuVpxIyrzKQ4LtvJT9g5sqExWAjwnh/SYCguE73rXfefwJjVLdkeL1Ybw3SKqpESLNAIGutSIOD5JUA4PkvyJL7wRzoxfqeM89HuGvStzXU8/ABU8TWok7gDBnMjGsaSKCuaZHl+n/bgyVuNZQyvIBMc8SIOBZYpV5F4l0zkSc69TdYresiyF6n0J95YGcgq9BdJJEqJPedHdDrr3jRn7IEZMdJcEpB0ySGJxwWFbMWa45DeijityDStO3GlOks9aeQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZC2l0vFk7lQvmeX715YMFbry0xa9KxT1+wYTczHy+Ts=;
 b=ASMl42MQ6bIcwEVB395ebU/ubUsMZIsRiBlEcHU/Ea4mNrKSI/MttPqmjg81/ZV7yWrJ85Xmvk82Z/2Akm+NyPMuVYwoOCULBaGkO5GChf6csC+VEmfnwzvK1paqlVpc8DZwSI/YAr1YiqgT1/+Ab61h/omsyUDeyPKe7HQv1BCTsoj4/fpa8L2ta9pXdQKgdmY9YQk7UfTjBUwV8LR+cpaZlFr5tVdsjs1KnlSxTlwqF6R6hsUoYo4F+KHT5y0dx8Guecr+us3WPrIr7mTLY73muoKVI260uhYyKUhkDxHGIYaOl/r5sJE/iyMTgr/kQ2hPRBu+pt4wkgpD17iSWw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZC2l0vFk7lQvmeX715YMFbry0xa9KxT1+wYTczHy+Ts=;
 b=Kggt8T25TYEWefCoHKqOvKLlPxtf0D65xisVtEgiGsac85fPTRB/9EKUVdormvX3HrIpv24pvDHjyXUMrlNmxssRUQP6Rv35pZk621EO27OqNsBoHXPd26HehpvTRBebpwQ8mZFOmPSxrU2O9r+MjUfrpV5trkQrYyN8UVcpNSQ=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, George Dunlap <george.dunlap@citrix.com>, Julien Grall
	<julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant
	<paul@xen.org>, Kevin Tian <kevin.tian@intel.com>
Subject: [PATCH v5 1/5] xen/pci: convert pci_find_*cap* to pci_sbdf_t
Date: Fri, 1 Sep 2023 00:57:28 -0400
Message-ID: <20230901045742.235975-2-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20230901045742.235975-1-stewart.hildebrand@amd.com>
References: <20230901045742.235975-1-stewart.hildebrand@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE37:EE_|IA0PR12MB7674:EE_
X-MS-Office365-Filtering-Correlation-Id: 47de36dd-b8ab-4159-11a8-08dbaaa82e44
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	T5TyRQgQCLZSHOgollpB/M2qUTBNTUJdJMVPu9ugP32RAkt+Cpa2api+E3L/FHncZJg0thFzA4aWz9WUGUMZDOwYDFVAENXHza6LkivHXrUvWWr0zqKYwO04eXcRDYmonbt0NwCUnwTMB8CV1s4Qmrckl1krfwX/5e9fCEA75e2cXWIjEPoL5tybCBwFT29db2zoyilqoN3ONoczXaM+pGJYb4AnMI/KXo38DyG0lYzlyOJaPAonea+7r9dBGi8OysfrSs93KWnNsFTxA/M0P9rjNw344ARMovJqxy5ih/cAz9L3BmSJBrQm3B8Wy6tzu7fYF0ekYEFVaRBTBROxIuIcRifA0GKAglpyVQY8CVxagQEDLFtjFsMjXffX50KK9hG0TUe4fHeNpr4KAjPtChvPq8c4NjCcncZX4f3qmDKccRf9iEx6s2LrJ2yyjPbeCbEfddfN6VbE0CdjfcRfBfUK9opTPCdOkS+PnZlMsufyW89UZKd8fO/n4dnwlaToD7aIaGpl7J741ovSC76wY8JGx/ITU1petlvYbDklSXesLJ4gVHaumiFvp6pCD5G/Sdr5bawhCnYSgoC7qMZn54+ITNxpIf6kuNhfXr9DWKFJ3S33R0k0xs17BLUDZd4rFmGKL6ijovvFkx4yxu8gUwGrRWmZOVLEDaHrNNQiIViEzmLi1Mj4pE+7VudHwqpd03ZJ9RXiC7KK0rw+Djc2Qrsah5K9aYqivRIx6L50R6Ke8S9EnWQ9Id/vXj749Wo2eKzKoiZtnLVIjW89WLatjA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(396003)(346002)(376002)(136003)(1800799009)(186009)(451199024)(82310400011)(36840700001)(46966006)(40470700004)(356005)(82740400003)(6666004)(36756003)(40460700003)(36860700001)(86362001)(81166007)(47076005)(40480700001)(2616005)(1076003)(30864003)(2906002)(426003)(336012)(26005)(83380400001)(478600001)(70586007)(70206006)(8936002)(54906003)(8676002)(4326008)(44832011)(5660300002)(7416002)(41300700001)(6916009)(316002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 04:59:10.9403
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 47de36dd-b8ab-4159-11a8-08dbaaa82e44
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE37.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB7674

Convert pci_find_*cap* functions and call sites to pci_sbdf_t, and remove some
now unused local variables. Also change to more appropriate types on lines that
are already being modified as a result of the pci_sbdf_t conversion.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
I built with EXTRA_CFLAGS_XEN_CORE="-Wunused-but-set-variable" (and
unfortunately -Wno-error=unused-but-set-variable too) to identify locations of
unneeded local variables as a result of the change to pci_sbdf_t.

v4->v5:
* add Jan's R-b

v3->v4:
* use more appropriate types on lines that are being modified anyway
* remove "no functional change" from commit description

v2->v3:
* new patch
---
 xen/arch/x86/msi.c                         | 40 ++++++----------------
 xen/drivers/char/ehci-dbgp.c               |  3 +-
 xen/drivers/passthrough/amd/iommu_detect.c |  2 +-
 xen/drivers/passthrough/ats.c              |  4 +--
 xen/drivers/passthrough/ats.h              |  6 ++--
 xen/drivers/passthrough/msi.c              |  6 ++--
 xen/drivers/passthrough/pci.c              | 21 +++++-------
 xen/drivers/passthrough/vtd/quirks.c       | 10 ++----
 xen/drivers/passthrough/vtd/x86/ats.c      |  3 +-
 xen/drivers/pci/pci.c                      | 32 +++++++++--------
 xen/drivers/vpci/msi.c                     |  4 +--
 xen/drivers/vpci/msix.c                    |  4 +--
 xen/include/xen/pci.h                      | 11 +++---
 13 files changed, 58 insertions(+), 88 deletions(-)

diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
index 41b82f3e87cb..8d4fd43b10a6 100644
--- a/xen/arch/x86/msi.c
+++ b/xen/arch/x86/msi.c
@@ -283,7 +283,7 @@ static void msi_set_enable(struct pci_dev *dev, int enable)
     u8 slot = PCI_SLOT(dev->devfn);
     u8 func = PCI_FUNC(dev->devfn);
 
-    pos = pci_find_cap_offset(seg, bus, slot, func, PCI_CAP_ID_MSI);
+    pos = pci_find_cap_offset(dev->sbdf, PCI_CAP_ID_MSI);
     if ( pos )
         __msi_set_enable(seg, bus, slot, func, pos, enable);
 }
@@ -291,12 +291,9 @@ static void msi_set_enable(struct pci_dev *dev, int enable)
 static void msix_set_enable(struct pci_dev *dev, int enable)
 {
     int pos;
-    u16 control, seg = dev->seg;
-    u8 bus = dev->bus;
-    u8 slot = PCI_SLOT(dev->devfn);
-    u8 func = PCI_FUNC(dev->devfn);
+    uint16_t control;
 
-    pos = pci_find_cap_offset(seg, bus, slot, func, PCI_CAP_ID_MSIX);
+    pos = pci_find_cap_offset(dev->sbdf, PCI_CAP_ID_MSIX);
     if ( pos )
     {
         control = pci_conf_read16(dev->sbdf, msix_control_reg(pos));
@@ -603,13 +600,10 @@ static int msi_capability_init(struct pci_dev *dev,
     struct msi_desc *entry;
     int pos;
     unsigned int i, mpos;
-    u16 control, seg = dev->seg;
-    u8 bus = dev->bus;
-    u8 slot = PCI_SLOT(dev->devfn);
-    u8 func = PCI_FUNC(dev->devfn);
+    uint16_t control;
 
     ASSERT(pcidevs_locked());
-    pos = pci_find_cap_offset(seg, bus, slot, func, PCI_CAP_ID_MSI);
+    pos = pci_find_cap_offset(dev->sbdf, PCI_CAP_ID_MSI);
     if ( !pos )
         return -ENODEV;
     control = pci_conf_read16(dev->sbdf, msi_control_reg(pos));
@@ -680,8 +674,8 @@ static u64 read_pci_mem_bar(u16 seg, u8 bus, u8 slot, u8 func, u8 bir, int vf)
     {
         struct pci_dev *pdev = pci_get_pdev(NULL,
                                             PCI_SBDF(seg, bus, slot, func));
-        unsigned int pos = pci_find_ext_capability(seg, bus,
-                                                   PCI_DEVFN(slot, func),
+        unsigned int pos = pci_find_ext_capability(PCI_SBDF(seg, bus, slot,
+                                                            func),
                                                    PCI_EXT_CAP_ID_SRIOV);
         uint16_t ctrl = pci_conf_read16(PCI_SBDF(seg, bus, slot, func),
                                         pos + PCI_SRIOV_CTRL);
@@ -772,8 +766,7 @@ static int msix_capability_init(struct pci_dev *dev,
     u8 slot = PCI_SLOT(dev->devfn);
     u8 func = PCI_FUNC(dev->devfn);
     bool maskall = msix->host_maskall, zap_on_error = false;
-    unsigned int pos = pci_find_cap_offset(seg, bus, slot, func,
-                                           PCI_CAP_ID_MSIX);
+    unsigned int pos = pci_find_cap_offset(dev->sbdf, PCI_CAP_ID_MSIX);
 
     if ( !pos )
         return -ENODEV;
@@ -1097,12 +1090,7 @@ static void _pci_cleanup_msix(struct arch_msix *msix)
 static void __pci_disable_msix(struct msi_desc *entry)
 {
     struct pci_dev *dev = entry->dev;
-    u16 seg = dev->seg;
-    u8 bus = dev->bus;
-    u8 slot = PCI_SLOT(dev->devfn);
-    u8 func = PCI_FUNC(dev->devfn);
-    unsigned int pos = pci_find_cap_offset(seg, bus, slot, func,
-                                           PCI_CAP_ID_MSIX);
+    unsigned int pos = pci_find_cap_offset(dev->sbdf, PCI_CAP_ID_MSIX);
     u16 control = pci_conf_read16(dev->sbdf,
                                   msix_control_reg(entry->msi_attrib.pos));
     bool maskall = dev->msix->host_maskall;
@@ -1206,8 +1194,7 @@ void pci_cleanup_msi(struct pci_dev *pdev)
 
 int pci_reset_msix_state(struct pci_dev *pdev)
 {
-    unsigned int pos = pci_find_cap_offset(pdev->seg, pdev->bus, pdev->sbdf.dev,
-                                           pdev->sbdf.fn, PCI_CAP_ID_MSIX);
+    unsigned int pos = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_MSIX);
 
     ASSERT(pos);
     /*
@@ -1229,10 +1216,6 @@ int pci_reset_msix_state(struct pci_dev *pdev)
 int pci_msi_conf_write_intercept(struct pci_dev *pdev, unsigned int reg,
                                  unsigned int size, uint32_t *data)
 {
-    u16 seg = pdev->seg;
-    u8 bus = pdev->bus;
-    u8 slot = PCI_SLOT(pdev->devfn);
-    u8 func = PCI_FUNC(pdev->devfn);
     struct msi_desc *entry;
     unsigned int pos;
 
@@ -1240,8 +1223,7 @@ int pci_msi_conf_write_intercept(struct pci_dev *pdev, unsigned int reg,
     {
         entry = find_msi_entry(pdev, -1, PCI_CAP_ID_MSIX);
         pos = entry ? entry->msi_attrib.pos
-                    : pci_find_cap_offset(seg, bus, slot, func,
-                                          PCI_CAP_ID_MSIX);
+                    : pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_MSIX);
         ASSERT(pos);
 
         if ( reg >= pos && reg < msix_pba_offset_reg(pos) + 4 )
diff --git a/xen/drivers/char/ehci-dbgp.c b/xen/drivers/char/ehci-dbgp.c
index 72be4d9cc970..00cbdd5454dd 100644
--- a/xen/drivers/char/ehci-dbgp.c
+++ b/xen/drivers/char/ehci-dbgp.c
@@ -687,7 +687,8 @@ static unsigned int __init __find_dbgp(u8 bus, u8 slot, u8 func)
     if ( (class >> 8) != PCI_CLASS_SERIAL_USB_EHCI )
         return 0;
 
-    return pci_find_cap_offset(0, bus, slot, func, PCI_CAP_ID_EHCI_DEBUG);
+    return pci_find_cap_offset(PCI_SBDF(0, bus, slot, func),
+                               PCI_CAP_ID_EHCI_DEBUG);
 }
 
 static unsigned int __init find_dbgp(struct ehci_dbgp *dbgp,
diff --git a/xen/drivers/passthrough/amd/iommu_detect.c b/xen/drivers/passthrough/amd/iommu_detect.c
index 2317fa6a7d8d..cede44e6518f 100644
--- a/xen/drivers/passthrough/amd/iommu_detect.c
+++ b/xen/drivers/passthrough/amd/iommu_detect.c
@@ -27,7 +27,7 @@ static int __init get_iommu_msi_capabilities(
 {
     int pos;
 
-    pos = pci_find_cap_offset(seg, bus, dev, func, PCI_CAP_ID_MSI);
+    pos = pci_find_cap_offset(PCI_SBDF(seg, bus, dev, func), PCI_CAP_ID_MSI);
 
     if ( !pos )
         return -ENODEV;
diff --git a/xen/drivers/passthrough/ats.c b/xen/drivers/passthrough/ats.c
index 253f5c2e1042..0da183d057c5 100644
--- a/xen/drivers/passthrough/ats.c
+++ b/xen/drivers/passthrough/ats.c
@@ -24,11 +24,9 @@ boolean_param("ats", ats_enabled);
 int enable_ats_device(struct pci_dev *pdev, struct list_head *ats_list)
 {
     u32 value;
-    u16 seg = pdev->seg;
-    u8 bus = pdev->bus, devfn = pdev->devfn;
     int pos;
 
-    pos = pci_find_ext_capability(seg, bus, devfn, PCI_EXT_CAP_ID_ATS);
+    pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_ATS);
     BUG_ON(!pos);
 
     if ( iommu_verbose )
diff --git a/xen/drivers/passthrough/ats.h b/xen/drivers/passthrough/ats.h
index baa5f6a6dc04..f5e1d254e0d3 100644
--- a/xen/drivers/passthrough/ats.h
+++ b/xen/drivers/passthrough/ats.h
@@ -32,7 +32,8 @@ static inline int pci_ats_enabled(int seg, int bus, int devfn)
     u32 value;
     int pos;
 
-    pos = pci_find_ext_capability(seg, bus, devfn, PCI_EXT_CAP_ID_ATS);
+    pos = pci_find_ext_capability(PCI_SBDF(seg, bus, devfn),
+                                  PCI_EXT_CAP_ID_ATS);
     BUG_ON(!pos);
 
     value = pci_conf_read16(PCI_SBDF(seg, bus, devfn), pos + ATS_REG_CTL);
@@ -45,7 +46,8 @@ static inline int pci_ats_device(int seg, int bus, int devfn)
     if ( !ats_enabled )
         return 0;
 
-    return pci_find_ext_capability(seg, bus, devfn, PCI_EXT_CAP_ID_ATS);
+    return pci_find_ext_capability(PCI_SBDF(seg, bus, devfn),
+                                   PCI_EXT_CAP_ID_ATS);
 }
 
 #endif /* _ATS_H_ */
diff --git a/xen/drivers/passthrough/msi.c b/xen/drivers/passthrough/msi.c
index fb78e2ebe8a4..13d904692ef8 100644
--- a/xen/drivers/passthrough/msi.c
+++ b/xen/drivers/passthrough/msi.c
@@ -24,8 +24,7 @@ int pdev_msi_init(struct pci_dev *pdev)
 
     INIT_LIST_HEAD(&pdev->msi_list);
 
-    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
-                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSI);
+    pos = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_MSI);
     if ( pos )
     {
         uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
@@ -33,8 +32,7 @@ int pdev_msi_init(struct pci_dev *pdev)
         pdev->msi_maxvec = multi_msi_capable(ctrl);
     }
 
-    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
-                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSIX);
+    pos = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_MSIX);
     if ( pos )
     {
         struct arch_msix *msix = xzalloc(struct arch_msix);
diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index ed1f689227fa..04d00c7c37df 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -361,8 +361,7 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
             break;
 
         case DEV_TYPE_PCIe_ENDPOINT:
-            pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn),
-                                      PCI_FUNC(devfn), PCI_CAP_ID_EXP);
+            pos = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_EXP);
             BUG_ON(!pos);
             cap = pci_conf_read16(pdev->sbdf, pos + PCI_EXP_DEVCAP);
             if ( cap & PCI_EXP_DEVCAP_PHANTOM )
@@ -565,13 +564,12 @@ struct pci_dev *pci_get_pdev(const struct domain *d, pci_sbdf_t sbdf)
 static void pci_enable_acs(struct pci_dev *pdev)
 {
     int pos;
-    u16 cap, ctrl, seg = pdev->seg;
-    u8 bus = pdev->bus;
+    uint16_t cap, ctrl;
 
     if ( !is_iommu_enabled(pdev->domain) )
         return;
 
-    pos = pci_find_ext_capability(seg, bus, pdev->devfn, PCI_EXT_CAP_ID_ACS);
+    pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_ACS);
     if (!pos)
         return;
 
@@ -704,7 +702,7 @@ int pci_add_device(u16 seg, u8 bus, u8 devfn,
 
     if ( !pdev->info.is_virtfn && !pdev->vf_rlen[0] )
     {
-        unsigned int pos = pci_find_ext_capability(seg, bus, devfn,
+        unsigned int pos = pci_find_ext_capability(pdev->sbdf,
                                                    PCI_EXT_CAP_ID_SRIOV);
         uint16_t ctrl = pci_conf_read16(pdev->sbdf, pos + PCI_SRIOV_CTRL);
 
@@ -916,7 +914,8 @@ enum pdev_type pdev_type(u16 seg, u8 bus, u8 devfn)
 {
     u16 class_device, creg;
     u8 d = PCI_SLOT(devfn), f = PCI_FUNC(devfn);
-    int pos = pci_find_cap_offset(seg, bus, d, f, PCI_CAP_ID_EXP);
+    unsigned int pos = pci_find_cap_offset(PCI_SBDF(seg, bus, devfn),
+                                           PCI_CAP_ID_EXP);
 
     class_device = pci_conf_read16(PCI_SBDF(seg, bus, d, f), PCI_CLASS_DEVICE);
     switch ( class_device )
@@ -1184,10 +1183,7 @@ static int hest_match_pci(const struct acpi_hest_aer_common *p,
 static bool hest_match_type(const struct acpi_hest_header *hest_hdr,
                               const struct pci_dev *pdev)
 {
-    unsigned int pos = pci_find_cap_offset(pdev->seg, pdev->bus,
-                                           PCI_SLOT(pdev->devfn),
-                                           PCI_FUNC(pdev->devfn),
-                                           PCI_CAP_ID_EXP);
+    unsigned int pos = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_EXP);
     u8 pcie = MASK_EXTR(pci_conf_read16(pdev->sbdf, pos + PCI_EXP_FLAGS),
                         PCI_EXP_FLAGS_TYPE);
 
@@ -1258,8 +1254,7 @@ bool pcie_aer_get_firmware_first(const struct pci_dev *pdev)
 {
     struct aer_hest_parse_info info = { .pdev = pdev };
 
-    return pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
-                               PCI_FUNC(pdev->devfn), PCI_CAP_ID_EXP) &&
+    return pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_EXP) &&
            apei_hest_parse(aer_hest_parse, &info) >= 0 &&
            info.firmware_first;
 }
diff --git a/xen/drivers/passthrough/vtd/quirks.c b/xen/drivers/passthrough/vtd/quirks.c
index 5d706a539788..5a56565ea883 100644
--- a/xen/drivers/passthrough/vtd/quirks.c
+++ b/xen/drivers/passthrough/vtd/quirks.c
@@ -495,8 +495,6 @@ int me_wifi_quirk(struct domain *domain, uint8_t bus, uint8_t devfn,
 
 void pci_vtd_quirk(const struct pci_dev *pdev)
 {
-    int seg = pdev->seg;
-    int bus = pdev->bus;
     int pos;
     bool ff;
     u32 val, val2;
@@ -532,12 +530,10 @@ void pci_vtd_quirk(const struct pci_dev *pdev)
     /* Sandybridge-EP (Romley) */
     case 0x3c00: /* host bridge */
     case 0x3c01 ... 0x3c0b: /* root ports */
-        pos = pci_find_ext_capability(seg, bus, pdev->devfn,
-                                      PCI_EXT_CAP_ID_ERR);
+        pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_ERR);
         if ( !pos )
         {
-            pos = pci_find_ext_capability(seg, bus, pdev->devfn,
-                                          PCI_EXT_CAP_ID_VNDR);
+            pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_VNDR);
             while ( pos )
             {
                 val = pci_conf_read32(pdev->sbdf, pos + PCI_VNDR_HEADER);
@@ -546,7 +542,7 @@ void pci_vtd_quirk(const struct pci_dev *pdev)
                     pos += PCI_VNDR_HEADER;
                     break;
                 }
-                pos = pci_find_next_ext_capability(seg, bus, pdev->devfn, pos,
+                pos = pci_find_next_ext_capability(pdev->sbdf, pos,
                                                    PCI_EXT_CAP_ID_VNDR);
             }
             ff = 0;
diff --git a/xen/drivers/passthrough/vtd/x86/ats.c b/xen/drivers/passthrough/vtd/x86/ats.c
index 9de419775f90..1f5913bed9d2 100644
--- a/xen/drivers/passthrough/vtd/x86/ats.c
+++ b/xen/drivers/passthrough/vtd/x86/ats.c
@@ -57,8 +57,7 @@ int ats_device(const struct pci_dev *pdev, const struct acpi_drhd_unit *drhd)
         return 0;
 
     ats_drhd = find_ats_dev_drhd(drhd->iommu);
-    pos = pci_find_ext_capability(pdev->seg, pdev->bus, pdev->devfn,
-                                  PCI_EXT_CAP_ID_ATS);
+    pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_ATS);
 
     if ( pos && (ats_drhd == NULL) )
     {
diff --git a/xen/drivers/pci/pci.c b/xen/drivers/pci/pci.c
index c73a8c4124af..3569ccb24e9e 100644
--- a/xen/drivers/pci/pci.c
+++ b/xen/drivers/pci/pci.c
@@ -8,25 +8,25 @@
 #include <xen/pci.h>
 #include <xen/pci_regs.h>
 
-int pci_find_cap_offset(u16 seg, u8 bus, u8 dev, u8 func, u8 cap)
+unsigned int pci_find_cap_offset(pci_sbdf_t sbdf, unsigned int cap)
 {
     u8 id;
     int max_cap = 48;
     u8 pos = PCI_CAPABILITY_LIST;
     u16 status;
 
-    status = pci_conf_read16(PCI_SBDF(seg, bus, dev, func), PCI_STATUS);
+    status = pci_conf_read16(sbdf, PCI_STATUS);
     if ( (status & PCI_STATUS_CAP_LIST) == 0 )
         return 0;
 
     while ( max_cap-- )
     {
-        pos = pci_conf_read8(PCI_SBDF(seg, bus, dev, func), pos);
+        pos = pci_conf_read8(sbdf, pos);
         if ( pos < 0x40 )
             break;
 
         pos &= ~3;
-        id = pci_conf_read8(PCI_SBDF(seg, bus, dev, func), pos + PCI_CAP_LIST_ID);
+        id = pci_conf_read8(sbdf, pos + PCI_CAP_LIST_ID);
 
         if ( id == 0xff )
             break;
@@ -39,19 +39,20 @@ int pci_find_cap_offset(u16 seg, u8 bus, u8 dev, u8 func, u8 cap)
     return 0;
 }
 
-int pci_find_next_cap(u16 seg, u8 bus, unsigned int devfn, u8 pos, int cap)
+unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
+                               unsigned int cap)
 {
     u8 id;
     int ttl = 48;
 
     while ( ttl-- )
     {
-        pos = pci_conf_read8(PCI_SBDF(seg, bus, devfn), pos);
+        pos = pci_conf_read8(sbdf, pos);
         if ( pos < 0x40 )
             break;
 
         pos &= ~3;
-        id = pci_conf_read8(PCI_SBDF(seg, bus, devfn), pos + PCI_CAP_LIST_ID);
+        id = pci_conf_read8(sbdf, pos + PCI_CAP_LIST_ID);
 
         if ( id == 0xff )
             break;
@@ -65,21 +66,21 @@ int pci_find_next_cap(u16 seg, u8 bus, unsigned int devfn, u8 pos, int cap)
 
 /**
  * pci_find_ext_capability - Find an extended capability
- * @seg/@bus/@devfn: PCI device to query
+ * @sbdf: PCI device to query
  * @cap: capability code
  *
  * Returns the address of the requested extended capability structure
  * within the device's PCI configuration space or 0 if the device does
  * not support it.
  */
-int pci_find_ext_capability(int seg, int bus, int devfn, int cap)
+unsigned int pci_find_ext_capability(pci_sbdf_t sbdf, unsigned int cap)
 {
-    return pci_find_next_ext_capability(seg, bus, devfn, 0, cap);
+    return pci_find_next_ext_capability(sbdf, 0, cap);
 }
 
 /**
  * pci_find_next_ext_capability - Find another extended capability
- * @seg/@bus/@devfn: PCI device to query
+ * @sbdf: PCI device to query
  * @start: starting position
  * @cap: capability code
  *
@@ -87,13 +88,14 @@ int pci_find_ext_capability(int seg, int bus, int devfn, int cap)
  * within the device's PCI configuration space or 0 if the device does
  * not support it.
  */
-int pci_find_next_ext_capability(int seg, int bus, int devfn, int start, int cap)
+unsigned int pci_find_next_ext_capability(pci_sbdf_t sbdf, unsigned int start,
+                                          unsigned int cap)
 {
     u32 header;
     int ttl = 480; /* 3840 bytes, minimum 8 bytes per capability */
-    int pos = max(start, 0x100);
+    unsigned int pos = max(start, 0x100U);
 
-    header = pci_conf_read32(PCI_SBDF(seg, bus, devfn), pos);
+    header = pci_conf_read32(sbdf, pos);
 
     /*
      * If we have no capabilities, this is indicated by cap ID,
@@ -109,7 +111,7 @@ int pci_find_next_ext_capability(int seg, int bus, int devfn, int start, int cap
         pos = PCI_EXT_CAP_NEXT(header);
         if ( pos < 0x100 )
             break;
-        header = pci_conf_read32(PCI_SBDF(seg, bus, devfn), pos);
+        header = pci_conf_read32(sbdf, pos);
     }
     return 0;
 }
diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c
index 2814b63d2be7..a253ccbd7db7 100644
--- a/xen/drivers/vpci/msi.c
+++ b/xen/drivers/vpci/msi.c
@@ -184,9 +184,7 @@ static void cf_check mask_write(
 
 static int cf_check init_msi(struct pci_dev *pdev)
 {
-    uint8_t slot = PCI_SLOT(pdev->devfn), func = PCI_FUNC(pdev->devfn);
-    unsigned int pos = pci_find_cap_offset(pdev->seg, pdev->bus, slot, func,
-                                           PCI_CAP_ID_MSI);
+    unsigned int pos = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_MSI);
     uint16_t control;
     int ret;
 
diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c
index 1be861343dba..d1126a417da9 100644
--- a/xen/drivers/vpci/msix.c
+++ b/xen/drivers/vpci/msix.c
@@ -659,14 +659,12 @@ int vpci_make_msix_hole(const struct pci_dev *pdev)
 static int cf_check init_msix(struct pci_dev *pdev)
 {
     struct domain *d = pdev->domain;
-    uint8_t slot = PCI_SLOT(pdev->devfn), func = PCI_FUNC(pdev->devfn);
     unsigned int msix_offset, i, max_entries;
     uint16_t control;
     struct vpci_msix *msix;
     int rc;
 
-    msix_offset = pci_find_cap_offset(pdev->seg, pdev->bus, slot, func,
-                                      PCI_CAP_ID_MSIX);
+    msix_offset = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_MSIX);
     if ( !msix_offset )
         return 0;
 
diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h
index 7d8a7cd21301..ea6a4c9abf38 100644
--- a/xen/include/xen/pci.h
+++ b/xen/include/xen/pci.h
@@ -193,11 +193,12 @@ int pci_mmcfg_read(unsigned int seg, unsigned int bus,
                    unsigned int devfn, int reg, int len, u32 *value);
 int pci_mmcfg_write(unsigned int seg, unsigned int bus,
                     unsigned int devfn, int reg, int len, u32 value);
-int pci_find_cap_offset(u16 seg, u8 bus, u8 dev, u8 func, u8 cap);
-int pci_find_next_cap(u16 seg, u8 bus, unsigned int devfn, u8 pos, int cap);
-int pci_find_ext_capability(int seg, int bus, int devfn, int cap);
-int pci_find_next_ext_capability(int seg, int bus, int devfn, int start,
-                                 int cap);
+unsigned int pci_find_cap_offset(pci_sbdf_t sbdf, unsigned int cap);
+unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
+                               unsigned int cap);
+unsigned int pci_find_ext_capability(pci_sbdf_t sbdf, unsigned int cap);
+unsigned int pci_find_next_ext_capability(pci_sbdf_t sbdf, unsigned int start,
+                                          unsigned int cap);
 const char *parse_pci(const char *, unsigned int *seg, unsigned int *bus,
                       unsigned int *dev, unsigned int *func);
 const char *parse_pci_seg(const char *, unsigned int *seg, unsigned int *bus,
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 04:59:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 04:59:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594201.927446 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwFv-0000vj-GQ; Fri, 01 Sep 2023 04:59:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594201.927446; Fri, 01 Sep 2023 04:59:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwFv-0000vc-Dh; Fri, 01 Sep 2023 04:59:39 +0000
Received: by outflank-mailman (input) for mailman id 594201;
 Fri, 01 Sep 2023 04:59:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=am4h=ER=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qbwFu-0000Nr-CM
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 04:59:38 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on2061e.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::61e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 59c52397-4884-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 06:59:37 +0200 (CEST)
Received: from CYZPR12CA0001.namprd12.prod.outlook.com (2603:10b6:930:8b::8)
 by CH3PR12MB9393.namprd12.prod.outlook.com (2603:10b6:610:1c5::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22; Fri, 1 Sep
 2023 04:59:32 +0000
Received: from CY4PEPF0000EE3A.namprd03.prod.outlook.com
 (2603:10b6:930:8b:cafe::37) by CYZPR12CA0001.outlook.office365.com
 (2603:10b6:930:8b::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.26 via Frontend
 Transport; Fri, 1 Sep 2023 04:59:32 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3A.mail.protection.outlook.com (10.167.242.14) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 04:59:31 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 23:59:31 -0500
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 23:59:30 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Thu, 31 Aug 2023 23:59:29 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 59c52397-4884-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LDx174aM0GO6DnkPkhWJXu3LeOYu3CR0pH5qIMcvLtUKeFINcrT8LYibDZs8Q5+Vr4AIxeuycshUjb0hL06MHYFwKPWOXl9C5FM3+XILO7n8BT1ijF/+FzAsyajijAyuZspyaj4ADO+0KrnyJXdJTZC9wUavYbUl8hHToC9eyvEewJ6kJNYuv4pT8hzmIOoKvA8h5d+8egqTQ7EtjxxaL/WOFy9XyJ1Sdve8qd1fGK096yFVttJz7feDbw4mVeNslkOSVbOCWSUer4txudj1R90If9Bl0yDAFMCaetqDajnQh5M1Oe3bCFwodB/UtD0OtJd7tjX3P56uYtwPYtoapw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vTvGSsnvPNixHgnOIgBXlqmXYsXnEHucB1rNpscARZY=;
 b=JGYMBk8e6Er4wQ9/ct0jmSS6bjwg4QNEs8jseuIEHhcKhcT5tbAq6KDjqp34MnGa6oNO6saNIofPR1G7Kdjvt9FoSkMMTLzJD1itfjtOZXkWnl43lTCr+CCKdniJuMp2KgreUOCHnX8Q0Fb2vmLUGJgZb3wioPuS6s/XJcA7mLEFrScguDcG6v380QLPWftrQN1hsyMdo5Kbobvzmv/UIQzNUvaTbAiTi5ts6oAI1+x8UprnAN1sC03zGhAqx/qFUqsun8kT/UpUVk2fNftLlSY+HG48axQCMRp8faZ4/xCVgPfIPjq/0K0C45RNXJ6v+8obBhhZVri41NE5BEf4+Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vTvGSsnvPNixHgnOIgBXlqmXYsXnEHucB1rNpscARZY=;
 b=uM8D7pxXsGzzPtBO06mWP6KTkZL47lMc3Pr7LkVJK884CenbQgOfwK7X0xCZ3JrEcZOHln7F0Uw+EVchSApxlT99ghlvPqRO5rGXak9jr8ArA21SxTBQEVk9Fi96ckv/OYgQDEtkDnk672814LPyA/JtVR8upvxOgebRm4M3Ndg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v5 2/5] x86/msi: rearrange read_pci_mem_bar slightly
Date: Fri, 1 Sep 2023 00:57:29 -0400
Message-ID: <20230901045742.235975-3-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20230901045742.235975-1-stewart.hildebrand@amd.com>
References: <20230901045742.235975-1-stewart.hildebrand@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3A:EE_|CH3PR12MB9393:EE_
X-MS-Office365-Filtering-Correlation-Id: 2f8f8675-5617-45a0-4b65-08dbaaa83aa1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1hzyOp105N6jwjYukE5RGKMDl14iUz+PlS7vvsKKTM26ODKP0xIbmjr5adzAEZiQM9AVc6r36G8IsWJU6GJugStzggfzUmDTfXu6OgvCkjqgf9e9fz1rVAq4SSBlluDUOfsX41o2coN88q5yPsJJzIV/P/guxOAJFMWdNfCwcrparCvL9SOY6rEY3WCYrvW0KOQoP65m54aHYTrQ9QCZrucqT+GWErviljnJ5apmEUJdNp5/AdKDwtDkjNYfd4CIqJ897a/DphdVkHPkkL9x8nKpKqaFHoKV/uLRKxL3Nh1eIpwKpIQ1Ky4J7NSKVUoG4Dg3EkSKRXIKw80i1ucKLescjJ8j8OxwSKeFPeHBvLAGxsNfqQM3NNQ/FYbMMlgAJooIwwYBdV7qMaNA2Wl8tMpU/9Y3iAtztA78zB/jXndHjYkEVvbf9gTOvc7DBJFP6Va7uMKIxHlOFwyqfWRC7B+VMhhgXytjSdaYKIU1XDsBLL2PNMf5dkT5gxyvbm70bQ16eHu56SaSuAlkXaFb4+mc2ZqV6sRSLHsRkKZ5/7m8SF3ExLhYf59KEl4AsqTjgYmOtHzjnD7zpt3ih4B9+Zuf06avajUsCMzU3BrYjg5Cmvn4M+l7C/isglnj+1SD5lLdKmpwKSoWi/nsnlvxINbCLQd60oPJ6+A1YZQt5KCManInyp7GS+2Uzn+NEYiCtkskX4qe4Im1IqZDu5VlfRMsmYdZf5Tv7gzGUvY+5FFF8F8Zp9t05uMhnMr7AzlaF0hzQvP09Rk6UQAjOHAzqg==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(39860400002)(136003)(396003)(82310400011)(186009)(1800799009)(451199024)(40470700004)(46966006)(36840700001)(40480700001)(82740400003)(36756003)(41300700001)(336012)(426003)(26005)(1076003)(966005)(40460700003)(54906003)(356005)(70586007)(70206006)(81166007)(83380400001)(316002)(6916009)(478600001)(2906002)(5660300002)(86362001)(44832011)(8936002)(2616005)(36860700001)(8676002)(47076005)(4326008)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 04:59:31.6840
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2f8f8675-5617-45a0-4b65-08dbaaa83aa1
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3A.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB9393

Use pdev->sbdf instead of the PCI_SBDF macro in calls to pci_* functions
where appropriate. Move NULL check earlier.

Suggested-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
v4->v5:
* add Jan's R-b

v3->v4:
* new patch

Suggested-by tag added based on conversation at [1]

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg01886.html
---
 xen/arch/x86/msi.c | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
index 8d4fd43b10a6..a78367d7cf5d 100644
--- a/xen/arch/x86/msi.c
+++ b/xen/arch/x86/msi.c
@@ -674,19 +674,19 @@ static u64 read_pci_mem_bar(u16 seg, u8 bus, u8 slot, u8 func, u8 bir, int vf)
     {
         struct pci_dev *pdev = pci_get_pdev(NULL,
                                             PCI_SBDF(seg, bus, slot, func));
-        unsigned int pos = pci_find_ext_capability(PCI_SBDF(seg, bus, slot,
-                                                            func),
-                                                   PCI_EXT_CAP_ID_SRIOV);
-        uint16_t ctrl = pci_conf_read16(PCI_SBDF(seg, bus, slot, func),
-                                        pos + PCI_SRIOV_CTRL);
-        uint16_t num_vf = pci_conf_read16(PCI_SBDF(seg, bus, slot, func),
-                                          pos + PCI_SRIOV_NUM_VF);
-        uint16_t offset = pci_conf_read16(PCI_SBDF(seg, bus, slot, func),
-                                          pos + PCI_SRIOV_VF_OFFSET);
-        uint16_t stride = pci_conf_read16(PCI_SBDF(seg, bus, slot, func),
-                                          pos + PCI_SRIOV_VF_STRIDE);
-
-        if ( !pdev || !pos ||
+        unsigned int pos;
+        uint16_t ctrl, num_vf, offset, stride;
+
+        if ( !pdev )
+            return 0;
+
+        pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_SRIOV);
+        ctrl = pci_conf_read16(pdev->sbdf, pos + PCI_SRIOV_CTRL);
+        num_vf = pci_conf_read16(pdev->sbdf, pos + PCI_SRIOV_NUM_VF);
+        offset = pci_conf_read16(pdev->sbdf, pos + PCI_SRIOV_VF_OFFSET);
+        stride = pci_conf_read16(pdev->sbdf, pos + PCI_SRIOV_VF_STRIDE);
+
+        if ( !pos ||
              !(ctrl & PCI_SRIOV_CTRL_VFE) ||
              !(ctrl & PCI_SRIOV_CTRL_MSE) ||
              !num_vf || !offset || (num_vf > 1 && !stride) ||
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:00:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:00:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594211.927456 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGN-0002hp-Q3; Fri, 01 Sep 2023 05:00:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594211.927456; Fri, 01 Sep 2023 05:00:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGN-0002h0-MG; Fri, 01 Sep 2023 05:00:07 +0000
Received: by outflank-mailman (input) for mailman id 594211;
 Fri, 01 Sep 2023 05:00:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGM-0001Hn-56
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:06 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 68f966ed-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:03 +0200 (CEST)
Received: from DM6PR11CA0008.namprd11.prod.outlook.com (2603:10b6:5:190::21)
 by IA0PR12MB8351.namprd12.prod.outlook.com (2603:10b6:208:40e::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.21; Fri, 1 Sep
 2023 05:00:00 +0000
Received: from CY4PEPF0000EE3D.namprd03.prod.outlook.com
 (2603:10b6:5:190:cafe::20) by DM6PR11CA0008.outlook.office365.com
 (2603:10b6:5:190::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:00 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3D.mail.protection.outlook.com (10.167.242.17) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.17 via Frontend Transport; Fri, 1 Sep 2023 04:59:59 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 23:59:59 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 21:59:59 -0700
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Thu, 31 Aug 2023 23:59:57 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 68f966ed-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Paih+X6+it90Ol9lS59+MX/E+OKsQGH7btZxQiwdczixNnjxCyk98EMItfd7jBQs0H7f1JKm1ceVZ0NaCgX3ZpK9QCT3TSBYRAMWv0f7mKn5CpByl2K5JN42B5Ouv6/bakcGD6VyMhZr55ItYAuaZXbtuNpGmSix/JFOCa4f3Jo/MPcGI0drIktvh3hlsnMaL0HzDm3Ek3AV527s90gpdtoyrhGkYtx6mw7pBuvXrclC/lkvxsROkfOOlNG9y3amSk9FaqV5iZQtpyurp/WoRviG0lbDJVHCLvRkQvx14zrI6E+kcIp9QFt9UjvwpKDe7voe1Sniflsq5vIbVlGSgg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YRaSndzPuZOlWjgIrTo2bo6mQsmVRypiGZ7LfEF3wVc=;
 b=jg+yr6cqNCiXFi+esxKWOnEsJo5T1gs5vrRXuqOSjjKskEJ31LeHiMco7+pYa+7U2lSNpZgx7t6ClE6NaX2TBY/em9xDRjjtuK0k30hGeNLQYhOGHpaZrIXUU0KSEzrUY+wmciLXldD2039UQpHFZrUSGQ41nHuGAdSYmSagPhVcsG7UZq3dQum7W4ixs2dg3ToDB2bl+rQQRwJZKI5BNL5Xq7qSlEnp8FnuRNs2jBGtrpgB7KtG1I1BI4uZvLy4Vt5K+GZFsoRxYA2nFr49am2jiAMKK4DhTtJKyO0nusqqU2Y1Un8XeyxIbImeoXAGoJ/n6d8SkvmMO0LQH2o5ww==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YRaSndzPuZOlWjgIrTo2bo6mQsmVRypiGZ7LfEF3wVc=;
 b=4WyEVEl6ryYWEX3IGkh5oP8lmjYP2vokVEPqKpNm04zORemCjdPGUFpy5QY/Dz38iHBfNG9Yk/FIj4uVoyjYiF8mZRWlzm5eaRG1E+oLFI/Egk8yCpB5XdNClqHoeDPdxFK+XUdzxO2XV8dNWQJuagr/4TlzV5DP9MXdkWpu4j8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Henry Wang
	<Henry.Wang@arm.com>, Community Manager <community.manager@xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Wei Liu
	<wl@xen.org>, Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Rahul Singh
	<rahul.singh@arm.com>, Anthony PERARD <anthony.perard@citrix.com>, "Juergen
 Gross" <jgross@suse.com>
Subject: [XEN][PATCH v11 00/20] dynamic node programming using overlay dtbo
Date: Thu, 31 Aug 2023 21:59:27 -0700
Message-ID: <20230901045947.32351-1-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3D:EE_|IA0PR12MB8351:EE_
X-MS-Office365-Filtering-Correlation-Id: 8b6fb4ab-6c0a-4497-538e-08dbaaa84b78
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZdUcKlKCEuDmh9saxL3bCsi910Hi+Wlp6XLY3O6TcH2hD6i4wBLijnzUSbyC6sri0VyOc/LSbFByW3NHpSlox424b6+DGdXwoicKCRCZepO22Xm07Rc6u6qetqX8Y1o4Cos6n9ITDK4XV2cThug3Klva2GvdGv/ETfJsfzuc229NEqoGOZPb9BlOIT9P6p5M/XEjqafPBfap0GgD0dKGw1gtYznwXHIUwHQZ46K5U2jnVH0V+lRikPIbDirVQQ05OakuOdpB/yJFuBGlDOI6hr2EJ0Lm4qUAYKCGk8Tz3YbAmPR+IRLek4JKhqYWtz390aucHDA7+lc8zOZ7wC49+ulnexMg/KZutOEJ9aNu0kEGeF/OdSrNhBNKWpiuoV1/1QjT+evnOopJwcm+mmYSnc4fZiDUYgcBKmQlJIBdofsQLrxwKiRilFIMieR+HEry0hr+7/x7ImyEzeenTmvXsSdnQZ4+t4vArYiFNN7+EwnrEQkUydlLabHNih8p2HBA8rIfp2a978au2wj2wYJUBl2MU4OFOYdn0tVtajwVy/818l7+pvDy2dGRPVgLdAQjCuZX22Lq1iQof/L0iM8g4OPakTWVoqIlsWhCijuVcA0MwxxXyGZlJbbIVmnFKAozG9qT0zaMF0IRDBA1lwzUPqkm1yTC7KhBlDQmFau/+yUpvH/uuSoWDIf0NCvicev/74zvR3bVWDADsOfS4ASrhrmZwqPkIYl+2CYSB5HV2QWXjkYtEpwkQEAzfmyTRlrixmOHxhEO9RxlcHmTC0jz9g==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(39860400002)(136003)(396003)(346002)(451199024)(1800799009)(186009)(82310400011)(46966006)(36840700001)(40470700004)(4326008)(8936002)(8676002)(44832011)(5660300002)(316002)(6916009)(36756003)(54906003)(2906002)(70206006)(70586007)(7416002)(41300700001)(40460700003)(36860700001)(426003)(336012)(26005)(1076003)(40480700001)(81166007)(82740400003)(6666004)(356005)(478600001)(47076005)(83380400001)(86362001)(2616005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 04:59:59.9367
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8b6fb4ab-6c0a-4497-538e-08dbaaa84b78
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3D.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8351

Hi,
This patch series is for introducing dynamic programming i.e. add/remove the
devices during run time. Using "xl dt_overlay" a device can be added/removed
with dtbo.

For adding a node using dynamic programming:
    1. flatten device tree overlay node will be added to a fdt
    2. Updated fdt will be unflattened to a new dt_host_new
    3. Extract the newly added node information from dt_host_new
    4. Add the added node under correct parent in original dt_host.
    3. Map/Permit interrupt and iomem region as required.

For removing a node:
    1. Find the node with given path.
    2. Check if the node is used by any of domus. Removes the node only when
        it's not used by any domain.
    3. Removes IRQ permissions and MMIO access.
    5. Find the node in dt_host and delete the device node entry from dt_host.
    6. Free the overlay_tracker entry which means free dt_host_new also(created
in adding node step).

The main purpose of this series to address first part of the dynamic programming
i.e. making Xen aware of new device tree node which means updating the dt_host
with overlay node information. Here we are adding/removing node from dt_host,
and checking/set IOMMU and IRQ permission but never mapping them to any domain.
Right now, mapping/Un-mapping will happen only when a new domU is
created/destroyed using "xl create".

To map IOREQ and IOMMU during runtime, there will be another small series after
this one where we will do the actual IOMMU and IRQ mapping to a running domain
and will call unmap_mmio_regions() to remove the mapping.

Example of overlay node:
/dts-v1/;

/ {

        fragment@0 {
                target-path = "/axi";

                __overlay__ {

                        ethernet@ff0e0000 {
                                compatible = "cdns,zynqmp-gem", "cdns,gem";
                                status = "okay";
                                interrupt-parent = <0x4>;
                                interrupts = <0x0 0x3f 0x4>;
                                reg = <0x0 0xff0e0000 0x0 0x1000>;
                                clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk";
                                #address-cells = <0x1>;
                                #size-cells = <0x0>;
                                #stream-id-cells = <0x1>;
                                iommus = <0xe 0x877>;
                                power-domains = <0xc 0x20>;
                                clocks = <0x3 0x1f 0x3 0x6b 0x3 0x30 0x3 0x34 0x3 0x2c>;
                                phy-handle = <0xf>;
                                pinctrl-names = "default";
                                pinctrl-0 = <0x10>;
                                phy-mode = "rgmii-id";
                                xlnx,ptp-enet-clock = <0x0>;
                                local-mac-address = [00 0a 35 00 22 01];
                                xen,passthrough = <1>;
                                ethernet-phy@c {
                                        reg = <0xc>;
                                        ti,rx-internal-delay = <0x8>;
                                        ti,tx-internal-delay = <0xa>;
                                        ti,fifo-depth = <0x1>;
                                        ti,dp83867-rxctrl-strap-quirk;
                                interrupt-parent = <0x4>;
                                interrupts = <0x0 0x4f 0x4>;
                                xen,passthrough = <1>;
                                phandle = <0x2>;
                                };
                        };
    };
};

Change Log:
 v5 -> v6:
    Add separate patch for memory allocation failure in __unflatten_device_tree().
    Move __unflatten_device_tree() function type changes to single patch.
    Add error propagation for failures in unflatten_dt_node.
    Change CONFIG_OVERLAY_DTB status to "ARM: Tech Preview".
    xen/smmu: Add remove_device callback for smmu_iommu ops:
        Added check to see if device is currently used.
    common/device_tree: Add rwlock for dt_host:
        Addressed feedback from Henry to rearrange code.
    xen/arm: Implement device tree node removal functionalities:
        Changed file name to dash format.
        Addressed Michal's comments.
    Rectified formatting related errors pointed by Michal.

 v4 -> v5:
    Split patch 01/16 to two patches. One with function type changes and another
        with changes inside unflatten_device_tree().
    Change dt_overlay xl command to dt-overlay.
    Protect overlay functionality with CONFIG(arm).
    Fix rwlock issues.
    Move include "device_tree.h" to c file where arch_cpu_init() is called and
        forward declare dt_device_node. This was done to avoid circular deps b/w
        device_tree.h and rwlock.h
    Address Michal's comment on coding style.

 v3 -> v4:
    Add support for adding node's children.
    Add rwlock to dt_host functions.
    Corrected fdt size issue when applying overlay into it.
    Add memory allocation fail handling for unflatten_device_tree().
    Changed xl overlay to xl dt_overlay.
    Correct commit messages.
    Addressed code issue from v3 review.

 v2 -> v3:
    Moved overlay functionalities to dt_overlay.c file.
    Renamed XEN_SYSCTL_overlay to XEN_SYSCTL_dt_overlay.
    Add dt_* prefix to overlay_add/remove_nodes.
    Added dtdevs_lock to protect iommu_add_dt_device().
    For iommu, moved spin_lock to caller.
    Address code issue from v2 review.

 v1 -> v2:
    Add support for multiple node addition/removal using dtbo.
    Replaced fpga-add and fpga-remove with one hypercall overlay_op.
    Moved common domain_build.c function to device.c
    Add OVERLAY_DTB configuration.
    Renamed overlay_get_target() to fdt_overlay_get_target().
    Split remove_device patch into two patches.
    Moved overlay_add/remove code to sysctl and changed it from domctl to sysctl.
    Added all overlay code under CONFIG_OVERLAY_DTB
    Renamed all tool domains fpga function to overlay
    Addressed code issues from v1 review.

Regards,
Vikram

Vikram Garhwal (20):
  common/device_tree: handle memory allocation failure in
    __unflatten_device_tree()
  common/device_tree.c: unflatten_device_tree() propagate errors
  xen/arm/device: Remove __init from function type
  common/device_tree: Export __unflatten_device_tree()
  xen/arm: Add CONFIG_OVERLAY_DTB
  libfdt: Keep fdt functions after init for CONFIG_OVERLAY_DTB.
  libfdt: overlay: change overlay_get_target()
  xen/device-tree: Add dt_find_node_by_path_from() to find nodes in
    device tree
  xen/iommu: Move spin_lock from iommu_dt_device_is_assigned to caller
  xen/iommu: protect iommu_add_dt_device() with dtdevs_lock
  xen/iommu: Introduce iommu_remove_dt_device()
  xen/smmu: Add remove_device callback for smmu_iommu ops
  asm/smp.h: Fix circular dependency for device_tree.h and rwlock.h
  common/device_tree: Add rwlock for dt_host
  arm/asm/setup.h: Update struct map_range_data to add rangeset.
  xen/arm: Implement device tree node removal functionalities
  xen/arm: Implement device tree node addition functionalities
  tools/libs/ctrl: Implement new xc interfaces for dt overlay
  tools/libs/light: Implement new libxl functions for device tree
    overlay ops
  tools/xl: Add new xl command overlay for device tree overlay support

 CHANGELOG.md                            |   2 +
 MAINTAINERS                             |   1 +
 SUPPORT.md                              |   6 +
 tools/include/libxl.h                   |  11 +
 tools/include/xenctrl.h                 |   5 +
 tools/libs/ctrl/Makefile.common         |   1 +
 tools/libs/ctrl/xc_dt_overlay.c         |  50 ++
 tools/libs/light/Makefile               |   3 +
 tools/libs/light/libxl_dt_overlay.c     |  71 ++
 tools/xl/xl.h                           |   1 +
 tools/xl/xl_cmdtable.c                  |   6 +
 tools/xl/xl_vmcontrol.c                 |  52 ++
 xen/arch/arm/Kconfig                    |   5 +
 xen/arch/arm/device.c                   | 319 +++++++++
 xen/arch/arm/domain_build.c             | 297 +-------
 xen/arch/arm/include/asm/domain_build.h |   2 -
 xen/arch/arm/include/asm/setup.h        |  12 +
 xen/arch/arm/include/asm/smp.h          |   4 +-
 xen/arch/arm/smpboot.c                  |   1 +
 xen/arch/arm/sysctl.c                   |  16 +-
 xen/common/Makefile                     |   1 +
 xen/common/device_tree.c                |  58 +-
 xen/common/dt-overlay.c                 | 901 ++++++++++++++++++++++++
 xen/common/libfdt/Makefile              |   4 +
 xen/common/libfdt/fdt_overlay.c         |  29 +-
 xen/common/libfdt/version.lds           |   1 +
 xen/drivers/passthrough/arm/smmu.c      |  60 ++
 xen/drivers/passthrough/device_tree.c   |  92 ++-
 xen/include/public/sysctl.h             |  24 +
 xen/include/xen/device_tree.h           |  38 +-
 xen/include/xen/dt-overlay.h            |  63 ++
 xen/include/xen/iommu.h                 |  10 +
 xen/include/xen/libfdt/libfdt.h         |  18 +
 33 files changed, 1811 insertions(+), 353 deletions(-)
 create mode 100644 tools/libs/ctrl/xc_dt_overlay.c
 create mode 100644 tools/libs/light/libxl_dt_overlay.c
 create mode 100644 xen/common/dt-overlay.c
 create mode 100644 xen/include/xen/dt-overlay.h

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:00:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:00:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594214.927466 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGR-000385-0e; Fri, 01 Sep 2023 05:00:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594214.927466; Fri, 01 Sep 2023 05:00:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGQ-00037y-U2; Fri, 01 Sep 2023 05:00:10 +0000
Received: by outflank-mailman (input) for mailman id 594214;
 Fri, 01 Sep 2023 05:00:10 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGQ-0001Hn-08
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:10 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on2061f.outbound.protection.outlook.com
 [2a01:111:f400:7e88::61f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6c09cb3d-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:08 +0200 (CEST)
Received: from DM6PR11CA0016.namprd11.prod.outlook.com (2603:10b6:5:190::29)
 by IA1PR12MB6164.namprd12.prod.outlook.com (2603:10b6:208:3e8::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.20; Fri, 1 Sep
 2023 05:00:04 +0000
Received: from CY4PEPF0000EE3D.namprd03.prod.outlook.com
 (2603:10b6:5:190:cafe::24) by DM6PR11CA0016.outlook.office365.com
 (2603:10b6:5:190::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:04 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3D.mail.protection.outlook.com (10.167.242.17) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.17 via Frontend Transport; Fri, 1 Sep 2023 05:00:04 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:03 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:03 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6c09cb3d-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KZ7eUmJhLV9Zxs35H71ghReW7zKM3PMZaGQ31dBlYxhotVP1SyBSNUem9/8zuUD8F4MJERvT+kl01V13ue00j7pc7Ubo6I54Syis0rS5IxfA0nMothl9rOvB6wxQkV4sWT09yvEsCh9hdtzEQzlwFEC+KMP308xsqGd7BJuCu8pw3JjgX+wTIRciQ2bHl1eO7I139vzNLRHQ4qYMsHmmkLwIb0CaY0QGZWOquEO6YjgD8HI6feZeIGVb076jdspCUtqpqMtgh2LQoMqzc/L3yAqmJs0MwAatrCQmb2RevYRWc7kXbmsrn2I3j8SaJZdRqob+1nNsecCT0ZXyN85YNA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=551FbITUy/lX+UFAVwLYLGK11TzVaHOhuLFDvzMcrP0=;
 b=IjMnoH0+FMUUzhk2mcdrZBwuWupsgFYFUg7o/9fDrH5plLQOy5hauhMPcq7QfB5s7vVoIt6m4J583jcwki5Uo2UHPr2SsW4yG3tP9fj4tu0sAX1YP3F3OUB/MDYSZSJAZDE3x9E7rCfcp8Oitu1Kp1Ipj55iOUnIceEO/gSkA0fyZLfJ1S21fXa3lp8LeDra68G5Jc4vGEIn6uQOVsjoSjMRceLGvGitRcosbVuuUXsVUpkWlneFksngJ0Qr0YIArVBhcQPk0o/Flc4lR6hlzrMZn0KZPdjo5mtM0a+omURe7rHx42f5VRSccAm6AjYZ4iwasetHOj618CflUFcfOg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=551FbITUy/lX+UFAVwLYLGK11TzVaHOhuLFDvzMcrP0=;
 b=HXhYuYW9DFa/TIK6N1FgUZywh1VekL1ZiaI3OcxISmueGGFHBXS97LtMhP40tY4uGgxVmUy0SgkUqaeUvGGTVB4sAZL1U1crXQPtOkdjRMHZtCWkVrSMXl/Lk+41lBlfFnhGCVuYyaFN7oHgr71GJ+Yh19aWs3jk5cAaHqAE9CA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v11 01/20] common/device_tree: handle memory allocation failure in __unflatten_device_tree()
Date: Thu, 31 Aug 2023 21:59:28 -0700
Message-ID: <20230901045947.32351-2-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3D:EE_|IA1PR12MB6164:EE_
X-MS-Office365-Filtering-Correlation-Id: 737e6e59-95ad-4346-96f3-08dbaaa84e05
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	2SHxBrHydjnE4JcjMZxmv8H2Os82vmIaRa7cYQNKuR297uZ/BhnoCbM+Zzxu0mG6l8K0hATRPQFtPHqx6s2rHZKgisTU+tGmxYpvZlc4xRuGf0tjvEfUPuue80AWKJA82hPIC/bRHJckbNLIzsObxFoWvd6c0SfD5ErTZC8mY2DHZGmtwvX4PcahRWB2b+M4cuedShlttyxI9APhJXIRe3KzWifr7olg95PXxL7S4EQ0lchAQZ7ANZUbj4ww75uD4zmGRCpt00xM+3POlD2kXTRg8pNxql0dsN3B7KzsUVzSS8/9KRFpdWh6BzmzC6AwwKMRFJLakQJnXJYrYTnjeO9siOgv0epCNSbTxeWntbt0JLNrbWyVMYPVcsjQDUzpYZzoyMw4RgkQmociArChtqIfqwBElm9SAhHWYeg1f5NJyWWIuqIngr0x3HnlUD+UMLOasBFQGRYXHUziWpXhIRNq+Wuwd/3qnVEYpr3f50zn1mPGw2UtvAM1tDdKnsJSOfFANcN1X55FCgrwDKPOFmEOTfDq2VGXevKh0L+I/f4PMIbluRhqh2k5Jh2pYGxwiTFTrQvTr9Xytst7jvwqQIZmmCBEzaLX6f3knWCkOoteWhyGlg4MjUfQQVIjUV8WEkaKVb/fY8wEsEClVzmgF/hBN+LKBNSm68eV33evg7JSmM4XvjSnFGHjtXaPVVD/7FeEQYnm6b4CrjP3kLV/y4qNJnkYRwCMeHRfRVhdqbHSqoBi3YwPuy7tOWLtiUH/60hkw5hfBZMJ8r37ZfVTZA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(39860400002)(376002)(396003)(136003)(451199024)(82310400011)(1800799009)(186009)(40470700004)(36840700001)(46966006)(82740400003)(426003)(356005)(478600001)(1076003)(26005)(336012)(36756003)(81166007)(70586007)(70206006)(47076005)(36860700001)(41300700001)(6666004)(83380400001)(2616005)(54906003)(6916009)(316002)(44832011)(5660300002)(40460700003)(4326008)(8676002)(8936002)(86362001)(40480700001)(2906002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:04.2180
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 737e6e59-95ad-4346-96f3-08dbaaa84e05
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3D.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6164

Change __unflatten_device_tree() return type to integer so it can propagate
memory allocation failure. Add panic() in dt_unflatten_host_device_tree() for
memory allocation failure during boot.

Fixes: fb97eb614acf ("xen/arm: Create a hierarchical device tree")
Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Henry Wang <Henry.Wang@arm.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Julien Grall <jgrall@amazon.com>

---
Changes from v9:
    Update comment regarding return value of unflatten_device_tree().
---
---
 xen/common/device_tree.c | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index 0522fdf976..7c6b41c3b4 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -2091,9 +2091,11 @@ static unsigned long __init unflatten_dt_node(const void *fdt,
  * can be used.
  * @fdt: The fdt to expand
  * @mynodes: The device_node tree created by the call
+ *
+ * Returns 0 on success and a negative number on error
  */
-static void __init __unflatten_device_tree(const void *fdt,
-                                           struct dt_device_node **mynodes)
+static int __init __unflatten_device_tree(const void *fdt,
+                                          struct dt_device_node **mynodes)
 {
     unsigned long start, mem, size;
     struct dt_device_node **allnextp = mynodes;
@@ -2114,6 +2116,8 @@ static void __init __unflatten_device_tree(const void *fdt,
 
     /* Allocate memory for the expanded device tree */
     mem = (unsigned long)_xmalloc (size + 4, __alignof__(struct dt_device_node));
+    if ( !mem )
+        return -ENOMEM;
 
     ((__be32 *)mem)[size / 4] = cpu_to_be32(0xdeadbeefU);
 
@@ -2131,6 +2135,8 @@ static void __init __unflatten_device_tree(const void *fdt,
     *allnextp = NULL;
 
     dt_dprintk(" <- unflatten_device_tree()\n");
+
+    return 0;
 }
 
 static void dt_alias_add(struct dt_alias_prop *ap,
@@ -2215,7 +2221,11 @@ dt_find_interrupt_controller(const struct dt_device_match *matches)
 
 void __init dt_unflatten_host_device_tree(void)
 {
-    __unflatten_device_tree(device_tree_flattened, &dt_host);
+    int error = __unflatten_device_tree(device_tree_flattened, &dt_host);
+
+    if ( error )
+        panic("__unflatten_device_tree failed with error %d\n", error);
+
     dt_alias_scan();
 }
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:00:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:00:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594216.927476 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGU-0003Qq-Ce; Fri, 01 Sep 2023 05:00:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594216.927476; Fri, 01 Sep 2023 05:00:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGU-0003Qf-9a; Fri, 01 Sep 2023 05:00:14 +0000
Received: by outflank-mailman (input) for mailman id 594216;
 Fri, 01 Sep 2023 05:00:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGS-0001Hn-ES
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:12 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20606.outbound.protection.outlook.com
 [2a01:111:f400:7e88::606])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6cde6eb5-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:10 +0200 (CEST)
Received: from CY8PR10CA0035.namprd10.prod.outlook.com (2603:10b6:930:4b::20)
 by PH7PR12MB8425.namprd12.prod.outlook.com (2603:10b6:510:240::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.21; Fri, 1 Sep
 2023 05:00:07 +0000
Received: from CY4PEPF0000EE35.namprd05.prod.outlook.com
 (2603:10b6:930:4b:cafe::27) by CY8PR10CA0035.outlook.office365.com
 (2603:10b6:930:4b::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.25 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:07 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000EE35.mail.protection.outlook.com (10.167.242.41) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 05:00:07 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:06 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 22:00:05 -0700
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:05 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6cde6eb5-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=khGLwmFWZ7/CYopEgb7toFEB4nDktaUmMbocRTHbVkAdv06dcDeM9GF7Hjh1G/cnCXaCFr0EdFbbEFzrZ4gmVq4s16LQAfNOLJ0GzfjNs6olwbhNdYiXAWa/JPRuWs+d5ZCbbkRw9UpZC/f7WXpRO/nWi2xW4CIhL6xW9plm+bubcpzPvsM0vUKjQV3C5ZdrWxYCBbAunpE5KQfLX8niAT1957HyDC2vzrpN4pmAUEscx1H1QXAjhvaOcPSAKKXlf79PAWrfmDeLnt8WrpWRVGMeuSAnz6mSKozRWXrl2R4lOh8eaEs1kiRp1upEyrG31COj6Q8P+s8h+mk72wCRag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=N48gpSlC0ul9Dgr5X4IgXaGnFeuJhzDtng9Ayqa//1E=;
 b=Abc+rUFK2fnnFV6CGoiXJe5fSKWVPnWhTqWzod/O6n3m7/PcE45wnYpoSn0Y/qPmTXZgwOHX1QRtMaG8co2zcjf2qR16kjkIJpnIvy0lNveScXfHD3OMKduM7mT6EIRgSZW7Fc+ILEsDWDO88JQ2b4dbJuL0IAYfpdduTmxKKucqVQ+TnpLWak+xJJO+pm9uTctQmieRLLZVEEBdaNN3GkAPoPQZ9rRdRrr+0vEzQRsR/+nZsfRki4o1WX7oiv3M17nqAIxawU/QmRKTk0iSYIGKrpXhSvxnPBhDEOcKUyEDUferbBrUL8RlVxjMxp9pblR57/CJIIkZSOyVfay3ew==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=N48gpSlC0ul9Dgr5X4IgXaGnFeuJhzDtng9Ayqa//1E=;
 b=MYmmcPeLu+hSFXuMqC7KptfLXacjjBlenjK8/D7dzEileYMcRJ4q7FI56uKtC4XZdwuh15vvVZUSMWwpyj3oIZAz6TyYgcN+GkrNYPnSQhk4ECpJLzRjUMFbbgFxkMhw8R8PgsEUVManZWpmRGuOws/Q5tWKwdrZ0MHoU+cMqcc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v11 04/20] common/device_tree: Export __unflatten_device_tree()
Date: Thu, 31 Aug 2023 21:59:31 -0700
Message-ID: <20230901045947.32351-5-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE35:EE_|PH7PR12MB8425:EE_
X-MS-Office365-Filtering-Correlation-Id: c7213844-8e55-40ef-7f25-08dbaaa84fbb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rNjol1fFpIq8bEXkGh1N1j41ypf469TxtlaxMskCR+47C45Kbd61wVPj/dWUcnK/y5XZ1eflRemPqQcWKO0ERU3AQDbKOfzsNM34m9nBIHzmuuzFfn1bw7tBEZZBCgZBAA/hjVeorxukW/7wiUtvfDPe74kRd3048Rt0XMSfJlvEVgyPjkidgF0NpbpeQNsA9DWjfFYgD1W4LQT7gYUKoRnqYXqX3ySfE/HyqvrQkaGUSf53nFYYPXowjLoxInl07Cd4GMd0e4IaBmW53ZUhfLj6H5mRdVgBlQVVM8qeUdwht6JsmxoMCNCF1u1f0q99cRsdVcVIDUjNSOXnQ2O0p/GogYphrOupo9jZVptagRqaHf4LLFI8qCQHyY6QM4ZGeegKzZVPsCSz9ygAcNyZ5uuD4s6FTwwcgEyhpPrS4FzrtubV87MNCCI9nljBVG/H8YlD7YCEmgpGZFrCHqbGppXbMHPcU2sT/Frevpqwzk1oRlBOGeJOm9vLz2yezjxLjsFHv366diC+FCxC5B3xXf1UqA8RGr4kZtVCv/pL2Jo/dcQgpkxYpLZCfzBr+/0OQyRK6pp4fsaBdVWKN/rFSDixWhWxKj+vA7EEoXf02fpc0OGlTiAozU1+ifyq7AxBed5QIjTBc8B/ssAjIXqVpnC0tlRENGk5chTCWsWAvxfEOiH/OwDBpPH+nuGqacpp75dbdcE4cA+5V2zKIYGLwV0q4JLHOv4Bu16FPUzSeZCdcToXi5MFlDw7JxyKDR4N5qFxgCOPWNkwA4uDcMH9Fw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(39860400002)(396003)(376002)(136003)(1800799009)(186009)(451199024)(82310400011)(36840700001)(40470700004)(46966006)(82740400003)(356005)(6666004)(40460700003)(36756003)(86362001)(81166007)(36860700001)(40480700001)(47076005)(2616005)(1076003)(2906002)(426003)(336012)(26005)(83380400001)(478600001)(8936002)(70586007)(70206006)(54906003)(8676002)(4326008)(44832011)(5660300002)(41300700001)(6916009)(316002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:07.0878
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c7213844-8e55-40ef-7f25-08dbaaa84fbb
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE35.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB8425

Following changes are done to __unflatten_device_tree():
    1. __unflatten_device_tree() is renamed to unflatten_device_tree().
    2. Remove __init and static function type.

The changes are done to make this function useable for dynamic node programming
where new device tree overlay nodes are added to fdt and further unflattend to
update xen device tree during runtime.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Acked-by: Julien Grall <jgrall@amazon.com>

---
Changes from v7:
    Update the commit with why unflatten_device_tree() is changed.
    Move function documentation to device_tree.h
---
---
 xen/common/device_tree.c      | 19 +++----------------
 xen/include/xen/device_tree.h | 14 ++++++++++++++
 2 files changed, 17 insertions(+), 16 deletions(-)

diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index fccf98f94e..b8ef1c7ae2 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -2082,20 +2082,7 @@ static unsigned long unflatten_dt_node(const void *fdt,
     return mem;
 }
 
-/**
- * __unflatten_device_tree - create tree of device_nodes from flat blob
- *
- * unflattens a device-tree, creating the
- * tree of struct device_node. It also fills the "name" and "type"
- * pointers of the nodes so the normal device-tree walking functions
- * can be used.
- * @fdt: The fdt to expand
- * @mynodes: The device_node tree created by the call
- *
- * Returns 0 on success and a negative number on error
- */
-static int __init __unflatten_device_tree(const void *fdt,
-                                          struct dt_device_node **mynodes)
+int unflatten_device_tree(const void *fdt, struct dt_device_node **mynodes)
 {
     unsigned long start, mem, size;
     struct dt_device_node **allnextp = mynodes;
@@ -2234,10 +2221,10 @@ dt_find_interrupt_controller(const struct dt_device_match *matches)
 
 void __init dt_unflatten_host_device_tree(void)
 {
-    int error = __unflatten_device_tree(device_tree_flattened, &dt_host);
+    int error = unflatten_device_tree(device_tree_flattened, &dt_host);
 
     if ( error )
-        panic("__unflatten_device_tree failed with error %d\n", error);
+        panic("unflatten_device_tree failed with error %d\n", error);
 
     dt_alias_scan();
 }
diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h
index 1d79e23b28..a518310a62 100644
--- a/xen/include/xen/device_tree.h
+++ b/xen/include/xen/device_tree.h
@@ -178,6 +178,20 @@ int device_tree_for_each_node(const void *fdt, int node,
  */
 void dt_unflatten_host_device_tree(void);
 
+/**
+ * unflatten_device_tree - create tree of device_nodes from flat blob
+ *
+ * unflattens a device-tree, creating the
+ * tree of struct device_node. It also fills the "name" and "type"
+ * pointers of the nodes so the normal device-tree walking functions
+ * can be used.
+ * @fdt: The fdt to expand
+ * @mynodes: The device_node tree created by the call
+ *
+ * Returns 0 on success and a negative number on error
+ */
+int unflatten_device_tree(const void *fdt, struct dt_device_node **mynodes);
+
 /**
  * IRQ translation callback
  * TODO: For the moment we assume that we only have ONE
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:00:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:00:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594217.927481 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGU-0003U4-Sx; Fri, 01 Sep 2023 05:00:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594217.927481; Fri, 01 Sep 2023 05:00:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGU-0003TB-LD; Fri, 01 Sep 2023 05:00:14 +0000
Received: by outflank-mailman (input) for mailman id 594217;
 Fri, 01 Sep 2023 05:00:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGT-0001Hn-EX
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:13 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on20618.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::618])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6df55f76-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:11 +0200 (CEST)
Received: from CY8PR10CA0029.namprd10.prod.outlook.com (2603:10b6:930:4b::10)
 by BL1PR12MB5729.namprd12.prod.outlook.com (2603:10b6:208:384::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22; Fri, 1 Sep
 2023 05:00:06 +0000
Received: from CY4PEPF0000EE35.namprd05.prod.outlook.com
 (2603:10b6:930:4b:cafe::7e) by CY8PR10CA0029.outlook.office365.com
 (2603:10b6:930:4b::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.26 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:05 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000EE35.mail.protection.outlook.com (10.167.242.41) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 05:00:04 +0000
Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:04 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com
 (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 22:00:04 -0700
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:03 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6df55f76-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cxtIzzVeUDUjkTHCNTKOPrS4P+7I1RAtfBIkHmElRsSicW1JcoIKnQVajirH6i5FWcliRVf2jEmnEk3M58j00FWMjppggT6vI59yvhZQxuzXJwMRtMh6Ql9tmoJrXtDSEyq04QGUBouP/Clb4bx+I6wEgkbNSfPZGrn+2lh8eTEVqsFVN7Td8z2lXBZEbtTgml674qjtdVIlDyfgRddSkCbMl/WZhh/8JMbOoTW4lf+tANmhtpW2V2/7Mp3tlFLtCx04UgOGVsMiTJf898w+Thb0PpK8q2NDwQHfTJ5tK/PSWVwJmGx1yFdG1DqryRBcSkiZTYs+ZcT9DEqB7xEy9Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cro8idbWK6/j9Apeo95KJGwjFsR6k97QUgTNDxCH+H8=;
 b=XLlDgpRWF3Wx5s+0rQY1Z6Bj8ImZaVj1ic5goFQ2666XbARlznpBZun9TUyFE4Y6/C9earruSe32CQnXoiuxe8Q9yFU4Dubb5DvUjJuqSruJl6evCWnVMieE2jRthoNgVBfSo5ZWCPsIdSM2MjlEAAsTBqBQoSNypzJ1pBiyvPs39WGX4nh2tEfp2+rkGCG9GGp66sJOATdhb7NDQ4pMBmGNBxx05LMk6xyN/LYrBL+OfkiSriOkp15A9+6z4JEBw6Nk8dlDUDc2xR/ECwkrJfG9nnH+vvb1EN57GN9rlofZ/TFgy1WYTXMVHGk9PEwTwPROeJ74rNI+dKyEzm8ZDQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cro8idbWK6/j9Apeo95KJGwjFsR6k97QUgTNDxCH+H8=;
 b=E0gJYxDNBmIJ3MpQo3frVtGKgCSKC4ks1W9t/aHi/vfz9vpcJ5n4oq/z906XkL2iDv/YE+D+jpO+M8oVpzedkG1QKXUCCdI1gIvheJBoy8qBeqQkAzW/Tot7dQjA8N50R95E4pEzU4E1rnDh1FWQfpw616z/iuHPVZc+8tEkp94=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v11 02/20] common/device_tree.c: unflatten_device_tree() propagate errors
Date: Thu, 31 Aug 2023 21:59:29 -0700
Message-ID: <20230901045947.32351-3-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE35:EE_|BL1PR12MB5729:EE_
X-MS-Office365-Filtering-Correlation-Id: aa597767-0471-4327-40ba-08dbaaa84e58
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZrjKqd9zzJW/BMOvGBlpbW4RV50y2cVvRDendDY/FAsH85VfLDveKeuj1TjEZMmNKaNRjeBmhl5P8hcQgZ/i8snpYhZ6kozocsBOA+O1yLAqxf6lbZeXSSu6aGdf3tWNK5I1co1yyuY3kVfdIfrTv7rCDgeKXRVxq1T/OzqL9+rDo1ChLH6krWypaEMJBCY+Wy1TZUcN8IpmKEF8+xgMFWjbdB8xllB2AuYlUvyLGWKPzhXtm/zlC5spWE0vSjngMn+FKJW56qt7Zm3cS+E8E2RDCF3+fp4irUCCoFdjTfHeIDn1039guZrh0A9L6xjMwuSw2yAuoyK/Rqrrxh3SU8dc7qWKxAPcUQX0WXJhiE9O+tpvS3W9zFjiICjW+d17Oq06svxB1N/woSIxRHQfUQB7v5LDYG/euigw4PoHEA/Yi8z6SLwV0FgrLXo42lxLVLwfT6fI4A33vIIvwM+AEEya4WoJmJXIqSpLW8w2RquGL/WW+YYf5cfG8bUJf8LDx70hal6dq5VkBah4b3rtBj11gVOjKy38N056D9bTaFbRT8KJbd/TeFxBLFgYP0JVyGo9H++u8BFPFK5i6dOLjezn72p2lmReleze9qpa/QTAC947Vj8lt0pWGx74XpvbVQlHozhzIDxJlW3+xiasWjabLzVmAdNDt9FbX7tLU/4mIWQZXH17oyRCE8U2AkWWA1wb10ghgGj8y8bJf13VdrDRHzxDYrZFpbGPyWYq2zx6BrQ9ydVU313Jh8MGDxV424VWGdcVojhja2EVjOrWVg==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(396003)(346002)(376002)(451199024)(1800799009)(82310400011)(186009)(40470700004)(46966006)(36840700001)(6666004)(2906002)(5660300002)(86362001)(316002)(6916009)(478600001)(2616005)(4326008)(47076005)(8676002)(36860700001)(44832011)(8936002)(26005)(40460700003)(1076003)(82740400003)(40480700001)(41300700001)(426003)(336012)(36756003)(356005)(83380400001)(81166007)(54906003)(70206006)(70586007)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:04.7597
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: aa597767-0471-4327-40ba-08dbaaa84e58
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE35.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5729

This will be useful in dynamic node programming when new dt nodes are unflattend
during runtime. Invalid device tree node related errors should be propagated
back to the caller.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>

---
Changes from v9:
    Replace __be64 with void.
Changes from v7:
    Free allocated memory in case of errors when calling unflatten_dt_node.
---
---
 xen/common/device_tree.c | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index 7c6b41c3b4..b6d9f018c6 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -2110,6 +2110,9 @@ static int __init __unflatten_device_tree(const void *fdt,
     /* First pass, scan for size */
     start = ((unsigned long)fdt) + fdt_off_dt_struct(fdt);
     size = unflatten_dt_node(fdt, 0, &start, NULL, NULL, 0);
+    if ( !size )
+        return -EINVAL;
+
     size = (size | 3) + 1;
 
     dt_dprintk("  size is %#lx allocating...\n", size);
@@ -2127,11 +2130,21 @@ static int __init __unflatten_device_tree(const void *fdt,
     start = ((unsigned long)fdt) + fdt_off_dt_struct(fdt);
     unflatten_dt_node(fdt, mem, &start, NULL, &allnextp, 0);
     if ( be32_to_cpup((__be32 *)start) != FDT_END )
-        printk(XENLOG_WARNING "Weird tag at end of tree: %08x\n",
+    {
+        printk(XENLOG_ERR "Weird tag at end of tree: %08x\n",
                   *((u32 *)start));
+        xfree((void *)mem);
+        return -EINVAL;
+    }
+
     if ( be32_to_cpu(((__be32 *)mem)[size / 4]) != 0xdeadbeefU )
-        printk(XENLOG_WARNING "End of tree marker overwritten: %08x\n",
+    {
+        printk(XENLOG_ERR "End of tree marker overwritten: %08x\n",
                   be32_to_cpu(((__be32 *)mem)[size / 4]));
+        xfree((void *)mem);
+        return -EINVAL;
+    }
+
     *allnextp = NULL;
 
     dt_dprintk(" <- unflatten_device_tree()\n");
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:00:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:00:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594218.927488 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGV-0003bD-AM; Fri, 01 Sep 2023 05:00:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594218.927488; Fri, 01 Sep 2023 05:00:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGV-0003Zj-15; Fri, 01 Sep 2023 05:00:15 +0000
Received: by outflank-mailman (input) for mailman id 594218;
 Fri, 01 Sep 2023 05:00:13 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGT-0000Nr-HO
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:13 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on20601.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6e1fd67f-4884-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 07:00:11 +0200 (CEST)
Received: from CYZPR10CA0016.namprd10.prod.outlook.com (2603:10b6:930:8a::19)
 by SA1PR12MB7176.namprd12.prod.outlook.com (2603:10b6:806:2bd::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.23; Fri, 1 Sep
 2023 05:00:06 +0000
Received: from CY4PEPF0000EE39.namprd03.prod.outlook.com
 (2603:10b6:930:8a:cafe::35) by CYZPR10CA0016.outlook.office365.com
 (2603:10b6:930:8a::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.25 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:06 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE39.mail.protection.outlook.com (10.167.242.13) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 05:00:05 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:05 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 22:00:05 -0700
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:04 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6e1fd67f-4884-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eR29bI8FAsy9ByvUnBkGBKqnyF6RNK0rB8n0zKjjgv4nCNmmyaqwlacR5Cpl0gRv3T+wEZvkde92OuG0NXdnRZ2g+yUuVHdGVIT1TLLwbJ8pc6esXRIrnquSif5M3QiwPJIHaXutn540GDgIZnDk/ppeF4A+MJgUgB2FalOlv4qotLVoM/y1hMDufMLzol35dEpGGeXe5VD+5pUOTBxgjL6Ki6uueocsUvssgrFM/aWtTLvayXZtLhltNQFKjdJaP3if/Cu7UITX8i+ZjtbLmXH+Alm+o+UtV0tS+y6GYMHLasrER0etFskjmF6magxP4VyVeLQOupOGKSd/nJPb4Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FDrA8kyZcppqpVb5vdK9SGxL7ekN3/cHqigiQ/O+H7M=;
 b=eXgBe/deS+Qb+HVzx48IgJtiTciz36fQT8p+b5LI0SeuRIfNeAAM0bmq7n/gJCuhr977Xd2wPARwegmLPae7wkHd1Rg1KkDU4/tYrcKok9kSOTQYI3H44JY55PkKDOjco40BaXKSLJTFUfl/hHafjn+F8/5UI5dfRo2GKcPsLyK+mNIhTBhsWGVwvK/SXDwMan+Xo+r5/T7NOM19YyIMMEePtz6Ffu9XE1Nvq0+y94kR7R9evVicRAdvL0SZBFQcWLI1qOohL0SjEsrPiMaBnSTIWOT35a+laM2jSs7sBmTlkapYQXpfB1rLybozgOnuICpg9es6k6HB/pcJCh3SBw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FDrA8kyZcppqpVb5vdK9SGxL7ekN3/cHqigiQ/O+H7M=;
 b=oTPw1n2/1wtIyUxxd/oHOZ7hGmsQ+wRd+FTm24nHWYfcI7sf5XJv76Mb7vLTbgaJ6lbnYKIZrgjARJKPxemKdVdBAzDgVOwQUIavrd6B6Ufjk8FcckXBIFguBDruy2TK3usCbgv8aYHbVV7di0sdYhGVuvlXoay4TOwbaa1DSio=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN][PATCH v11 03/20] xen/arm/device: Remove __init from function type
Date: Thu, 31 Aug 2023 21:59:30 -0700
Message-ID: <20230901045947.32351-4-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE39:EE_|SA1PR12MB7176:EE_
X-MS-Office365-Filtering-Correlation-Id: 10f503ac-a65e-49ba-3e31-08dbaaa84f0f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+MWJhJXIdlOJptjSulo38oTtTQRR04+DITU7Bc31XEhloai67ourAYq+2LRdsdSPzqPnuWs1936vKXnn+CRLKmHDDhizxA6ET5cwakZYWIefCUtWiB6eOdpQFzfv4KpsSXs60pve7CZtgpvAX6CKKmUDzhhWZYKmU+lVT+vCcUzcmjbqG3wuWCFmADXun2nvluIqvetS7SuYPVNnxZEg3x0lU0yvWn1Ct0qRDRJufCx3OmNg17lk5fhCfGtPc1DO2/kBqIdSTJnV57xYfY1s+FMjuWHvSccaRrAtwAOdLo0eeQhU2YQQXQhUljT5mV+7l6t04Y+FC/8sMxMNZ00Q4VLud7K1IwmL8uqJbAoKsetQDaKlBaahtnVy6OpzVd4VHnxa7AMgnWFDEedS6O/aDB8OoIyHA2241AuKX2nipbqISacCABZFlxfFdAvQ2hgNNwUWbHWOUW8p2NdpO/K6ROv+n2ezdyA5+1GSXJTHU0+LcNBPfc9gsmfozT/kycWV+z2IphPm4mGFDVNne4GHw/gHY33s/i7AURF6Mdi0FZQdgWZhDU2nYqlDk2VPNiTNv+TANZeaPmQ/ERxpN02fOJSwxNhVey6MaDiJAyCuKUT4bQU8Zpcu4RDOKdlMNP2QlE41W+Dg5GmkSptJgVXQVcB3I1GXXVYeAP/BphuFtcptcWCngjEz/k7ft698C7dwILkwPAPMzjZ2dNPZovre6QV8/A3yX/qvyXD+cdq5BbnV44y7piYiyYhKgZ7FsaKJyTAUw/KKFeOLQ8SO9sFM2g==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(396003)(346002)(376002)(39860400002)(451199024)(82310400011)(1800799009)(186009)(40470700004)(36840700001)(46966006)(41300700001)(70586007)(70206006)(2906002)(30864003)(1076003)(2616005)(5660300002)(478600001)(316002)(4326008)(54906003)(6916009)(8936002)(8676002)(44832011)(6666004)(40460700003)(36756003)(36860700001)(47076005)(26005)(40480700001)(83380400001)(81166007)(86362001)(336012)(426003)(82740400003)(356005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:05.9590
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 10f503ac-a65e-49ba-3e31-08dbaaa84f0f
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE39.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB7176

Remove __init from following function to access during runtime:
    1. map_irq_to_domain()
    2. handle_device_interrupts()
    3. map_range_to_domain()
    4. unflatten_dt_node()
    5. handle_device()
    6. map_device_children()
    7. map_dt_irq_to_domain()
Move map_irq_to_domain() prototype from domain_build.h to setup.h.

Above changes will create an error on build as non-init function are still
in domain_build.c file. So, to avoid build fails, following changes are done:
1. Move map_irq_to_domain(), handle_device_interrupts(), map_range_to_domain(),
    handle_device(), map_device_children() and map_dt_irq_to_domain()
    to device.c. After removing __init type,  these functions are not specific
    to domain building, so moving them out of domain_build.c to device.c.
2. Remove static type from handle_device_interrupts().

Also, renamed handle_device_interrupts() to map_device_irqs_to_domain().

Overall, these changes are done to support the dynamic programming of a nodes
where an overlay node will be added to fdt and unflattened node will be added to
dt_host. Furthermore, IRQ and mmio mapping will be done for the added node.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

---
Changes from v10:
    Remove unnecessary rangeset variables  from handle_device() declaration.
    Rename handle_device_interrupts() to map_device_irqs_to_domain().
    Fix code styles.

Changes from v9:
    Move handle_device(), map_device_children() and map_dt_irq_to_domain() out
        of domain_build.c
---
---
 xen/arch/arm/device.c                   | 294 +++++++++++++++++++++++
 xen/arch/arm/domain_build.c             | 295 +-----------------------
 xen/arch/arm/include/asm/domain_build.h |   2 -
 xen/arch/arm/include/asm/setup.h        |   9 +
 xen/common/device_tree.c                |  12 +-
 5 files changed, 310 insertions(+), 302 deletions(-)

diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
index ca8539dee5..327e4d24fb 100644
--- a/xen/arch/arm/device.c
+++ b/xen/arch/arm/device.c
@@ -9,8 +9,10 @@
  */
 
 #include <asm/device.h>
+#include <asm/setup.h>
 #include <xen/errno.h>
 #include <xen/init.h>
+#include <xen/iocap.h>
 #include <xen/lib.h>
 
 extern const struct device_desc _sdevice[], _edevice[];
@@ -75,6 +77,298 @@ enum device_class device_get_class(const struct dt_device_node *dev)
     return DEVICE_UNKNOWN;
 }
 
+int map_irq_to_domain(struct domain *d, unsigned int irq,
+                      bool need_mapping, const char *devname)
+{
+    int res;
+
+    res = irq_permit_access(d, irq);
+    if ( res )
+    {
+        printk(XENLOG_ERR "Unable to permit to %pd access to IRQ %u\n", d, irq);
+        return res;
+    }
+
+    if ( need_mapping )
+    {
+        /*
+         * Checking the return of vgic_reserve_virq is not
+         * necessary. It should not fail except when we try to map
+         * the IRQ twice. This can legitimately happen if the IRQ is shared
+         */
+        vgic_reserve_virq(d, irq);
+
+        res = route_irq_to_guest(d, irq, irq, devname);
+        if ( res < 0 )
+        {
+            printk(XENLOG_ERR "Unable to map IRQ%u to %pd\n", irq, d);
+            return res;
+        }
+    }
+
+    dt_dprintk("  - IRQ: %u\n", irq);
+    return 0;
+}
+
+int map_range_to_domain(const struct dt_device_node *dev,
+                        uint64_t addr, uint64_t len, void *data)
+{
+    struct map_range_data *mr_data = data;
+    struct domain *d = mr_data->d;
+    int res;
+
+    if ( (addr != (paddr_t)addr) || (((paddr_t)~0 - addr) < len) )
+    {
+        printk(XENLOG_ERR "%s: [0x%"PRIx64", 0x%"PRIx64"] exceeds the maximum allowed PA width (%u bits)",
+               dt_node_full_name(dev), addr, (addr + len), PADDR_BITS);
+        return -ERANGE;
+    }
+
+    /*
+     * reserved-memory regions are RAM carved out for a special purpose.
+     * They are not MMIO and therefore a domain should not be able to
+     * manage them via the IOMEM interface.
+     */
+    if ( strncasecmp(dt_node_full_name(dev), "/reserved-memory/",
+                     strlen("/reserved-memory/")) != 0 )
+    {
+        res = iomem_permit_access(d, paddr_to_pfn(addr),
+                paddr_to_pfn(PAGE_ALIGN(addr + len - 1)));
+        if ( res )
+        {
+            printk(XENLOG_ERR "Unable to permit to dom%d access to"
+                    " 0x%"PRIx64" - 0x%"PRIx64"\n",
+                    d->domain_id,
+                    addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1);
+            return res;
+        }
+    }
+
+    if ( !mr_data->skip_mapping )
+    {
+        res = map_regions_p2mt(d,
+                               gaddr_to_gfn(addr),
+                               PFN_UP(len),
+                               maddr_to_mfn(addr),
+                               mr_data->p2mt);
+
+        if ( res < 0 )
+        {
+            printk(XENLOG_ERR "Unable to map 0x%"PRIx64
+                   " - 0x%"PRIx64" in domain %d\n",
+                   addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1,
+                   d->domain_id);
+            return res;
+        }
+    }
+
+    dt_dprintk("  - MMIO: %010"PRIx64" - %010"PRIx64" P2MType=%x\n",
+               addr, addr + len, mr_data->p2mt);
+
+    return 0;
+}
+
+/*
+ * map_device_irqs_to_domain retrieves the interrupts configuration from
+ * a device tree node and maps those interrupts to the target domain.
+ *
+ * Returns:
+ *   < 0 error
+ *   0   success
+ */
+int map_device_irqs_to_domain(struct domain *d,
+                              struct dt_device_node *dev,
+                              bool need_mapping)
+{
+    unsigned int i, nirq;
+    int res;
+    struct dt_raw_irq rirq;
+
+    nirq = dt_number_of_irq(dev);
+
+    /* Give permission and map IRQs */
+    for ( i = 0; i < nirq; i++ )
+    {
+        res = dt_device_get_raw_irq(dev, i, &rirq);
+        if ( res )
+        {
+            printk(XENLOG_ERR "Unable to retrieve irq %u for %s\n",
+                   i, dt_node_full_name(dev));
+            return res;
+        }
+
+        /*
+         * Don't map IRQ that have no physical meaning
+         * ie: IRQ whose controller is not the GIC
+         */
+        if ( rirq.controller != dt_interrupt_controller )
+        {
+            dt_dprintk("irq %u not connected to primary controller. Connected to %s\n",
+                      i, dt_node_full_name(rirq.controller));
+            continue;
+        }
+
+        res = platform_get_irq(dev, i);
+        if ( res < 0 )
+        {
+            printk(XENLOG_ERR "Unable to get irq %u for %s\n",
+                   i, dt_node_full_name(dev));
+            return res;
+        }
+
+        res = map_irq_to_domain(d, res, need_mapping, dt_node_name(dev));
+        if ( res )
+            return res;
+    }
+
+    return 0;
+}
+
+static int map_dt_irq_to_domain(const struct dt_device_node *dev,
+                                const struct dt_irq *dt_irq,
+                                void *data)
+{
+    struct map_range_data *mr_data = data;
+    struct domain *d = mr_data->d;
+    unsigned int irq = dt_irq->irq;
+    int res;
+
+    if ( irq < NR_LOCAL_IRQS )
+    {
+        printk(XENLOG_ERR "%s: IRQ%u is not a SPI\n", dt_node_name(dev), irq);
+        return -EINVAL;
+    }
+
+    /* Setup the IRQ type */
+    res = irq_set_spi_type(irq, dt_irq->type);
+    if ( res )
+    {
+        printk(XENLOG_ERR "%s: Unable to setup IRQ%u to %pd\n",
+               dt_node_name(dev), irq, d);
+        return res;
+    }
+
+    res = map_irq_to_domain(d, irq, !mr_data->skip_mapping, dt_node_name(dev));
+
+    return res;
+}
+
+/*
+ * For a node which describes a discoverable bus (such as a PCI bus)
+ * then we may need to perform additional mappings in order to make
+ * the child resources available to domain 0.
+ */
+static int map_device_children(const struct dt_device_node *dev,
+                               struct map_range_data *mr_data)
+{
+    if ( dt_device_type_is_equal(dev, "pci") )
+    {
+        int ret;
+
+        dt_dprintk("Mapping children of %s to guest\n",
+                   dt_node_full_name(dev));
+
+        ret = dt_for_each_irq_map(dev, &map_dt_irq_to_domain, mr_data);
+        if ( ret < 0 )
+            return ret;
+
+        ret = dt_for_each_range(dev, &map_range_to_domain, mr_data);
+        if ( ret < 0 )
+            return ret;
+    }
+
+    return 0;
+}
+
+/*
+ * For a given device node:
+ *  - Give permission to the guest to manage IRQ and MMIO range
+ *  - Retrieve the IRQ configuration (i.e edge/level) from device tree
+ * When the device is not marked for guest passthrough:
+ *  - Try to call iommu_add_dt_device to protect the device by an IOMMU
+ *  - Assign the device to the guest if it's protected by an IOMMU
+ *  - Map the IRQs and iomem regions to DOM0
+ */
+int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt)
+{
+    unsigned int naddr;
+    unsigned int i;
+    int res;
+    paddr_t addr, size;
+    bool own_device = !dt_device_for_passthrough(dev);
+    /*
+     * We want to avoid mapping the MMIO in dom0 for the following cases:
+     *   - The device is owned by dom0 (i.e. it has been flagged for
+     *     passthrough).
+     *   - PCI host bridges with driver in Xen. They will later be mapped by
+     *     pci_host_bridge_mappings().
+     */
+    struct map_range_data mr_data = {
+        .d = d,
+        .p2mt = p2mt,
+        .skip_mapping = !own_device ||
+                        (is_pci_passthrough_enabled() &&
+                        (device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE))
+    };
+
+    naddr = dt_number_of_address(dev);
+
+    dt_dprintk("%s passthrough = %d naddr = %u\n",
+               dt_node_full_name(dev), own_device, naddr);
+
+    if ( own_device )
+    {
+        dt_dprintk("Check if %s is behind the IOMMU and add it\n",
+                   dt_node_full_name(dev));
+
+        res = iommu_add_dt_device(dev);
+        if ( res < 0 )
+        {
+            printk(XENLOG_ERR "Failed to add %s to the IOMMU\n",
+                   dt_node_full_name(dev));
+            return res;
+        }
+
+        if ( dt_device_is_protected(dev) )
+        {
+            dt_dprintk("%s setup iommu\n", dt_node_full_name(dev));
+            res = iommu_assign_dt_device(d, dev);
+            if ( res )
+            {
+                printk(XENLOG_ERR "Failed to setup the IOMMU for %s\n",
+                       dt_node_full_name(dev));
+                return res;
+            }
+        }
+    }
+
+    res = map_device_irqs_to_domain(d, dev, own_device);
+    if ( res < 0 )
+        return res;
+
+    /* Give permission and map MMIOs */
+    for ( i = 0; i < naddr; i++ )
+    {
+        res = dt_device_get_paddr(dev, i, &addr, &size);
+        if ( res )
+        {
+            printk(XENLOG_ERR "Unable to retrieve address %u for %s\n",
+                   i, dt_node_full_name(dev));
+            return res;
+        }
+
+        res = map_range_to_domain(dev, addr, size, &mr_data);
+        if ( res )
+            return res;
+    }
+
+    res = map_device_children(dev, &mr_data);
+    if ( res )
+        return res;
+
+    return 0;
+}
+
 /*
  * Local variables:
  * mode: C
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 54bf5623c8..ff4fc30769 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -2293,299 +2293,6 @@ int __init make_chosen_node(const struct kernel_info *kinfo)
     return res;
 }
 
-int __init map_irq_to_domain(struct domain *d, unsigned int irq,
-                             bool need_mapping, const char *devname)
-{
-    int res;
-
-    res = irq_permit_access(d, irq);
-    if ( res )
-    {
-        printk(XENLOG_ERR "Unable to permit to %pd access to IRQ %u\n", d, irq);
-        return res;
-    }
-
-    if ( need_mapping )
-    {
-        /*
-         * Checking the return of vgic_reserve_virq is not
-         * necessary. It should not fail except when we try to map
-         * the IRQ twice. This can legitimately happen if the IRQ is shared
-         */
-        vgic_reserve_virq(d, irq);
-
-        res = route_irq_to_guest(d, irq, irq, devname);
-        if ( res < 0 )
-        {
-            printk(XENLOG_ERR "Unable to map IRQ%u to %pd\n", irq, d);
-            return res;
-        }
-    }
-
-    dt_dprintk("  - IRQ: %u\n", irq);
-    return 0;
-}
-
-static int __init map_dt_irq_to_domain(const struct dt_device_node *dev,
-                                       const struct dt_irq *dt_irq,
-                                       void *data)
-{
-    struct map_range_data *mr_data = data;
-    struct domain *d = mr_data->d;
-    unsigned int irq = dt_irq->irq;
-    int res;
-
-    if ( irq < NR_LOCAL_IRQS )
-    {
-        printk(XENLOG_ERR "%s: IRQ%u is not a SPI\n", dt_node_name(dev), irq);
-        return -EINVAL;
-    }
-
-    /* Setup the IRQ type */
-    res = irq_set_spi_type(irq, dt_irq->type);
-    if ( res )
-    {
-        printk(XENLOG_ERR "%s: Unable to setup IRQ%u to %pd\n",
-               dt_node_name(dev), irq, d);
-        return res;
-    }
-
-    res = map_irq_to_domain(d, irq, !mr_data->skip_mapping, dt_node_name(dev));
-
-    return res;
-}
-
-int __init map_range_to_domain(const struct dt_device_node *dev,
-                               uint64_t addr, uint64_t len, void *data)
-{
-    struct map_range_data *mr_data = data;
-    struct domain *d = mr_data->d;
-    int res;
-
-    if ( (addr != (paddr_t)addr) || (((paddr_t)~0 - addr) < len) )
-    {
-        printk(XENLOG_ERR "%s: [0x%"PRIx64", 0x%"PRIx64"] exceeds the maximum allowed PA width (%u bits)",
-               dt_node_full_name(dev), addr, (addr + len), PADDR_BITS);
-        return -ERANGE;
-    }
-
-    /*
-     * reserved-memory regions are RAM carved out for a special purpose.
-     * They are not MMIO and therefore a domain should not be able to
-     * manage them via the IOMEM interface.
-     */
-    if ( strncasecmp(dt_node_full_name(dev), "/reserved-memory/",
-                     strlen("/reserved-memory/")) != 0 )
-    {
-        res = iomem_permit_access(d, paddr_to_pfn(addr),
-                paddr_to_pfn(PAGE_ALIGN(addr + len - 1)));
-        if ( res )
-        {
-            printk(XENLOG_ERR "Unable to permit to dom%d access to"
-                    " 0x%"PRIx64" - 0x%"PRIx64"\n",
-                    d->domain_id,
-                    addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1);
-            return res;
-        }
-    }
-
-    if ( !mr_data->skip_mapping )
-    {
-        res = map_regions_p2mt(d,
-                               gaddr_to_gfn(addr),
-                               PFN_UP(len),
-                               maddr_to_mfn(addr),
-                               mr_data->p2mt);
-
-        if ( res < 0 )
-        {
-            printk(XENLOG_ERR "Unable to map 0x%"PRIx64
-                   " - 0x%"PRIx64" in domain %d\n",
-                   addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1,
-                   d->domain_id);
-            return res;
-        }
-    }
-
-    dt_dprintk("  - MMIO: %010"PRIx64" - %010"PRIx64" P2MType=%x\n",
-               addr, addr + len, mr_data->p2mt);
-
-    return 0;
-}
-
-/*
- * For a node which describes a discoverable bus (such as a PCI bus)
- * then we may need to perform additional mappings in order to make
- * the child resources available to domain 0.
- */
-static int __init map_device_children(const struct dt_device_node *dev,
-                                      struct map_range_data *mr_data)
-{
-    if ( dt_device_type_is_equal(dev, "pci") )
-    {
-        int ret;
-
-        dt_dprintk("Mapping children of %s to guest\n",
-                   dt_node_full_name(dev));
-
-        ret = dt_for_each_irq_map(dev, &map_dt_irq_to_domain, mr_data);
-        if ( ret < 0 )
-            return ret;
-
-        ret = dt_for_each_range(dev, &map_range_to_domain, mr_data);
-        if ( ret < 0 )
-            return ret;
-    }
-
-    return 0;
-}
-
-/*
- * handle_device_interrupts retrieves the interrupts configuration from
- * a device tree node and maps those interrupts to the target domain.
- *
- * Returns:
- *   < 0 error
- *   0   success
- */
-static int __init handle_device_interrupts(struct domain *d,
-                                           struct dt_device_node *dev,
-                                           bool need_mapping)
-{
-    unsigned int i, nirq;
-    int res;
-    struct dt_raw_irq rirq;
-
-    nirq = dt_number_of_irq(dev);
-
-    /* Give permission and map IRQs */
-    for ( i = 0; i < nirq; i++ )
-    {
-        res = dt_device_get_raw_irq(dev, i, &rirq);
-        if ( res )
-        {
-            printk(XENLOG_ERR "Unable to retrieve irq %u for %s\n",
-                   i, dt_node_full_name(dev));
-            return res;
-        }
-
-        /*
-         * Don't map IRQ that have no physical meaning
-         * ie: IRQ whose controller is not the GIC
-         */
-        if ( rirq.controller != dt_interrupt_controller )
-        {
-            dt_dprintk("irq %u not connected to primary controller. Connected to %s\n",
-                      i, dt_node_full_name(rirq.controller));
-            continue;
-        }
-
-        res = platform_get_irq(dev, i);
-        if ( res < 0 )
-        {
-            printk(XENLOG_ERR "Unable to get irq %u for %s\n",
-                   i, dt_node_full_name(dev));
-            return res;
-        }
-
-        res = map_irq_to_domain(d, res, need_mapping, dt_node_name(dev));
-        if ( res )
-            return res;
-    }
-
-    return 0;
-}
-
-/*
- * For a given device node:
- *  - Give permission to the guest to manage IRQ and MMIO range
- *  - Retrieve the IRQ configuration (i.e edge/level) from device tree
- * When the device is not marked for guest passthrough:
- *  - Try to call iommu_add_dt_device to protect the device by an IOMMU
- *  - Assign the device to the guest if it's protected by an IOMMU
- *  - Map the IRQs and iomem regions to DOM0
- */
-static int __init handle_device(struct domain *d, struct dt_device_node *dev,
-                                p2m_type_t p2mt)
-{
-    unsigned int naddr;
-    unsigned int i;
-    int res;
-    paddr_t addr, size;
-    bool own_device = !dt_device_for_passthrough(dev);
-    /*
-     * We want to avoid mapping the MMIO in dom0 for the following cases:
-     *   - The device is owned by dom0 (i.e. it has been flagged for
-     *     passthrough).
-     *   - PCI host bridges with driver in Xen. They will later be mapped by
-     *     pci_host_bridge_mappings().
-     */
-    struct map_range_data mr_data = {
-        .d = d,
-        .p2mt = p2mt,
-        .skip_mapping = !own_device ||
-                        (is_pci_passthrough_enabled() &&
-                        (device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE))
-    };
-
-    naddr = dt_number_of_address(dev);
-
-    dt_dprintk("%s passthrough = %d naddr = %u\n",
-               dt_node_full_name(dev), own_device, naddr);
-
-    if ( own_device )
-    {
-        dt_dprintk("Check if %s is behind the IOMMU and add it\n",
-                   dt_node_full_name(dev));
-
-        res = iommu_add_dt_device(dev);
-        if ( res < 0 )
-        {
-            printk(XENLOG_ERR "Failed to add %s to the IOMMU\n",
-                   dt_node_full_name(dev));
-            return res;
-        }
-
-        if ( dt_device_is_protected(dev) )
-        {
-            dt_dprintk("%s setup iommu\n", dt_node_full_name(dev));
-            res = iommu_assign_dt_device(d, dev);
-            if ( res )
-            {
-                printk(XENLOG_ERR "Failed to setup the IOMMU for %s\n",
-                       dt_node_full_name(dev));
-                return res;
-            }
-        }
-    }
-
-    res = handle_device_interrupts(d, dev, own_device);
-    if ( res < 0 )
-        return res;
-
-    /* Give permission and map MMIOs */
-    for ( i = 0; i < naddr; i++ )
-    {
-        res = dt_device_get_paddr(dev, i, &addr, &size);
-        if ( res )
-        {
-            printk(XENLOG_ERR "Unable to retrieve address %u for %s\n",
-                   i, dt_node_full_name(dev));
-            return res;
-        }
-
-        res = map_range_to_domain(dev, addr, size, &mr_data);
-        if ( res )
-            return res;
-    }
-
-    res = map_device_children(dev, &mr_data);
-    if ( res )
-        return res;
-
-    return 0;
-}
-
 static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
                               struct dt_device_node *node,
                               p2m_type_t p2mt)
@@ -3038,7 +2745,7 @@ static int __init handle_passthrough_prop(struct kernel_info *kinfo,
         return -EINVAL;
     }
 
-    res = handle_device_interrupts(kinfo->d, node, true);
+    res = map_device_irqs_to_domain(kinfo->d, node, true);
     if ( res < 0 )
         return res;
 
diff --git a/xen/arch/arm/include/asm/domain_build.h b/xen/arch/arm/include/asm/domain_build.h
index 34ceddc995..b9329c9ee0 100644
--- a/xen/arch/arm/include/asm/domain_build.h
+++ b/xen/arch/arm/include/asm/domain_build.h
@@ -4,8 +4,6 @@
 #include <xen/sched.h>
 #include <asm/kernel.h>
 
-int map_irq_to_domain(struct domain *d, unsigned int irq,
-                      bool need_mapping, const char *devname);
 int make_chosen_node(const struct kernel_info *kinfo);
 void evtchn_allocate(struct domain *d);
 
diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index 19dc637d55..6cda3e4039 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -165,6 +165,15 @@ void device_tree_get_reg(const __be32 **cell, uint32_t address_cells,
 u32 device_tree_get_u32(const void *fdt, int node,
                         const char *prop_name, u32 dflt);
 
+int handle_device(struct domain *d, struct dt_device_node *dev,
+                  p2m_type_t p2mt);
+
+int map_device_irqs_to_domain(struct domain *d, struct dt_device_node *dev,
+                              bool need_mapping);
+
+int map_irq_to_domain(struct domain *d, unsigned int irq,
+                      bool need_mapping, const char *devname);
+
 int map_range_to_domain(const struct dt_device_node *dev,
                         uint64_t addr, uint64_t len, void *data);
 
diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index b6d9f018c6..fccf98f94e 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -1847,12 +1847,12 @@ int dt_count_phandle_with_args(const struct dt_device_node *np,
  * @allnextpp: pointer to ->allnext from last allocated device_node
  * @fpsize: Size of the node path up at the current depth.
  */
-static unsigned long __init unflatten_dt_node(const void *fdt,
-                                              unsigned long mem,
-                                              unsigned long *p,
-                                              struct dt_device_node *dad,
-                                              struct dt_device_node ***allnextpp,
-                                              unsigned long fpsize)
+static unsigned long unflatten_dt_node(const void *fdt,
+                                       unsigned long mem,
+                                       unsigned long *p,
+                                       struct dt_device_node *dad,
+                                       struct dt_device_node ***allnextpp,
+                                       unsigned long fpsize)
 {
     struct dt_device_node *np;
     struct dt_property *pp, **prev_pp = NULL;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:00:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:00:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594219.927492 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGV-0003jP-Ld; Fri, 01 Sep 2023 05:00:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594219.927492; Fri, 01 Sep 2023 05:00:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGV-0003fK-D6; Fri, 01 Sep 2023 05:00:15 +0000
Received: by outflank-mailman (input) for mailman id 594219;
 Fri, 01 Sep 2023 05:00:13 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGT-0000Nr-S6
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:13 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on20623.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6ee03a18-4884-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 07:00:13 +0200 (CEST)
Received: from CY8PR10CA0035.namprd10.prod.outlook.com (2603:10b6:930:4b::20)
 by PH0PR12MB7960.namprd12.prod.outlook.com (2603:10b6:510:287::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.23; Fri, 1 Sep
 2023 05:00:08 +0000
Received: from CY4PEPF0000EE35.namprd05.prod.outlook.com
 (2603:10b6:930:4b:cafe::f8) by CY8PR10CA0035.outlook.office365.com
 (2603:10b6:930:4b::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.25 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:08 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000EE35.mail.protection.outlook.com (10.167.242.41) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 05:00:08 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:07 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:06 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6ee03a18-4884-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Fer7V9bgsZezmk7sLvUNhLb2F5rHjZWEIodmeTyFRqLQFsa0Xgnub3lKFNS1p0Cr+qBmkDPXKi9I72vzwcOJXsG/6dgNQIsWq15mlbjQcseTwBim11Pmi0cqpAm8ZSsuUFfO1nN/HsW3kTPq94E/6GrPytMM8ZhNmXZEjWp+PQQv0rMydsEuptI9Kt7LxracVohpECy+5BkyrPEpCd/SVcSQERLYgPiEVWxoWdtUXOJx3xCA/I/KvWJVLxcQlhrl7y/jVcrsoN7qS8YiIbIAS+2RxVcJVJ//9QZYC2w0OZ/dF2W1czc8LGaRRs4K8T4wY3mQLIfh64GQ9yyYiMa7FA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WEDXsWkF8KTl41RuBhMPUNVpLR2NQqTU90/MTcE+TTg=;
 b=R/4Z7WAaxAOtorxN0qm9Aj1EdheOveY8ml1avt+hPhWkYSete4xqQZWieozQ8l8m+E6yQKyZfDJXjIstpoZyp2ZgrVbcQJBmWWotBdQEYA4XOTvwlVyHFiF1l4fZ6N+6cYW9ORFo3dfe1h4AYoTkl/bs+bM3Pg4gHRkBRRW2CW83uysEt9zh2VZ+51Glk49o8G9lFy4NpOnQ1cVr27W4mklYXmHTppnKy2YRiAtoQ2fHxuSjY6LnzY4hrJ797Z5s/bgIcbdH7Gz99mDXLKyc2c4z6Y+CpOlhh3E8nTmXooBhT42g3ynkQJiUWZEAMzghBFtNiIOJcPbYZ4W6cDjW3A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WEDXsWkF8KTl41RuBhMPUNVpLR2NQqTU90/MTcE+TTg=;
 b=rD+TE4z2LQoLK2QcgfhUy68fXEYEfptN48CcIUoAuzxOa3YV+SO52NVonEWxkKxoAtAIszgjfuEXUWpyFcHB7+NjcbpoEi8KCtpYrwqlMHE8VUIeCw/JSj6dkMnS10oD10HFQ0vW9AezzyEMmVCKdvebRMoI976/tbR77NE3QM4=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Henry Wang <Henry.Wang@arm.com>, Community Manager
	<community.manager@xenproject.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Wei Liu <wl@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN][PATCH v11 05/20] xen/arm: Add CONFIG_OVERLAY_DTB
Date: Thu, 31 Aug 2023 21:59:32 -0700
Message-ID: <20230901045947.32351-6-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE35:EE_|PH0PR12MB7960:EE_
X-MS-Office365-Filtering-Correlation-Id: cf7d6b30-57f5-4933-74e3-08dbaaa85094
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	fjvd3bTZ0iBsyKsEHnsSmd0ddGLKFm4IbbHonWpt8EYuyQUgSuJSBOiiYqLWwbJB0Njhw5tK08f+a4TRM6FfTtPAbIe7iQD+1MUpueojxo5Wwgbp3oOxFRKf/yoz6IzWZbfu5uNtZk0kKAj9sEu3n2+vd+KYPuDBhyzc1yW3vf9tSPlrEjh9vMAMmsOvuUzX88qzeeL8h+Hp5C+tlrIYAJv6gm3UP25bStSr3dcCRCQvkxcVDBLapsSSVQ2A92aOIWwK/nBivOw7g+QxpisbolvNoQRDYGCKXU1LgBK0mzPI4Im5AtlJK/PUCi6ocOLBMY7VvEyUGV7sw37m9cIgm82QXRCKizeSOHcbmhOf1dJ6gY5T+1GvMf6LPcSGrQEFpXdMjwf3P1bqqP7rOkYEJ36xprwE/M73j6JRb75tgn8De6ffbFl0zDD4d/xDOnN6Xs35lT+TIb2+h++CiUnMxX+ZY/z6DT+xUgRvmDsksLMkgnGq2sccLQbYGC7+YcUFOHsF48ZG4T0wibGWVdSHy9mE40yWD5ZeS5gmMnkhy5XFb2nAUih+QaNNGWKzGQWebTjbTlm+aShYWRXE1Mvt8aBUdNR3TqFdMDq8p+BQ+HruqnNpjszp9MDWpnhFPYqASfBsW9ryiZG6c6n9dXy+gHhJWnXAgRSV+fDizuYaYpcOFzK8PjkdDDNYO0traVYuRbZaf732SxuZv2jZ0kks8azBC48gWgoOzDYvCbNNnmyL/yOq67SD3bH/iqIQ7HtBmVRwZf496t0REJMEJ7FZ/A==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(346002)(376002)(39860400002)(396003)(82310400011)(451199024)(1800799009)(186009)(36840700001)(46966006)(40470700004)(81166007)(478600001)(6666004)(2616005)(1076003)(82740400003)(356005)(36860700001)(54906003)(47076005)(336012)(426003)(83380400001)(26005)(70586007)(70206006)(6916009)(2906002)(44832011)(5660300002)(8676002)(40460700003)(41300700001)(316002)(7416002)(40480700001)(8936002)(36756003)(86362001)(4326008)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:08.5097
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: cf7d6b30-57f5-4933-74e3-08dbaaa85094
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE35.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB7960

Introduce a config option where the user can enable support for adding/removing
device tree nodes using a device tree binary overlay.

Update SUPPORT.md and CHANGELOG.md to state the Device Tree Overlays support for
Arm.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Acked-by: Henry Wang <Henry.Wang@arm.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

---
Changes from v9:
    Fix style.
Changes from v7:
    Add this feature as "experimental support" in CHANGELOG.md
---
---
 CHANGELOG.md         | 2 ++
 SUPPORT.md           | 6 ++++++
 xen/arch/arm/Kconfig | 5 +++++
 3 files changed, 13 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2516526589..24636b8eaf 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -27,6 +27,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - On Arm, add suport for Firmware Framework for Arm A-profile (FF-A) Mediator
    (Tech Preview)
  - Add Intel Hardware P-States (HWP) cpufreq driver.
+ - On Arm, experimental support for dynamic addition/removal of Xen device tree
+   nodes using a device tree overlay binary (.dtbo).
 
 ### Removed
  - On x86, the "pku" command line option has been removed.  It has never
diff --git a/SUPPORT.md b/SUPPORT.md
index 6ce0ec29b0..3461f5cf2f 100644
--- a/SUPPORT.md
+++ b/SUPPORT.md
@@ -855,6 +855,12 @@ xen/arch/arm/tee/ffa.c for limitations.
 
     Status: Supported
 
+### Device Tree Overlays
+
+Add/Remove device tree nodes using a device tree overlay binary (.dtbo).
+
+    Status, ARM: Experimental
+
 ### ARM: Guest ACPI support
 
     Status: Supported
diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 57bd1d01d7..650aca99ac 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -92,6 +92,11 @@ config HAS_ITS
         bool "GICv3 ITS MSI controller support (UNSUPPORTED)" if UNSUPPORTED
         depends on GICV3 && !NEW_VGIC && !ARM_32
 
+config OVERLAY_DTB
+	bool "DTB overlay support (UNSUPPORTED)" if UNSUPPORTED
+	help
+	  Dynamic addition/removal of Xen device tree nodes using a dtbo.
+
 config HVM
         def_bool y
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:00:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:00:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594220.927516 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGY-0004dI-6h; Fri, 01 Sep 2023 05:00:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594220.927516; Fri, 01 Sep 2023 05:00:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGY-0004dA-32; Fri, 01 Sep 2023 05:00:18 +0000
Received: by outflank-mailman (input) for mailman id 594220;
 Fri, 01 Sep 2023 05:00:16 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=am4h=ER=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qbwGW-0001Hn-D0
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:16 +0000
Received: from NAM04-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam04on20618.outbound.protection.outlook.com
 [2a01:111:f400:7e8c::618])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6fda6b53-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:14 +0200 (CEST)
Received: from CYZPR12CA0019.namprd12.prod.outlook.com (2603:10b6:930:8b::27)
 by MN2PR12MB4344.namprd12.prod.outlook.com (2603:10b6:208:26e::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22; Fri, 1 Sep
 2023 05:00:11 +0000
Received: from CY4PEPF0000EE3A.namprd03.prod.outlook.com
 (2603:10b6:930:8b:cafe::46) by CYZPR12CA0019.outlook.office365.com
 (2603:10b6:930:8b::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.25 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:10 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3A.mail.protection.outlook.com (10.167.242.14) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 05:00:10 +0000
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:09 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:08 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6fda6b53-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gzlIMWOg0FP4cgVpARgUZWqyRITroDg2UPYnZiyhYfcZhMpAg5Mg199WN4FmtGA4zMBBsrGvZwGxKQR/BwKtbv1vBvK7nU8CAEwamqbqpeBrC8KMsBxzBuQUfnCx9fuaLByBe/mLZ4SSIJuFToXWStvju0vyOxFIFz9W17eKVxvohxN6GD2gN58xMgwis3IFbh4YAOzv0XU3BMxLpSVpapC1lQok5xGuo+ch+WTWl9jbJjFvhysd7uh7MsYL5ciZGf0gr1X3aDQplE4tU2g1meXp3BLBV5FvuPGonE49YEGp8r/6dZMmdGhyjNoL7wLqiNE94FXgEAu6iV6HE8gSPg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zd6P0fZ6k3o3WMUNghQi6mMI+CPAIsveeO98Isieabc=;
 b=UvAL820KC35RbZejaLdh6STcCwpMlr5QaAes+9ak/Inf6gCioWpR6zBHHDz9faPp85bmYpWM/AFB835fK7v7fwjyPE/RDYiZ3RZxelj2/940TSc2z2wXOwgcyVB74clXg48V/fjpDY2RBvAcjVAdbdoht1tsgxdx1GmjA84CY18M/rfn6ELLeYmqpEvM8hfZz7eQqhMBxdc+W9bWJwgJk40Rsj0nz84o68Ja9HEGl86/L5Ip6zkauxl/Z/5h5kvT4cqwEDH1GmBvIVMpJFllAW1MUzITY/Il9M3y2MNy4ld6n3/k5VXal4lEznfTajHUMIcrc53kH+Z69uij2d/Ejg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zd6P0fZ6k3o3WMUNghQi6mMI+CPAIsveeO98Isieabc=;
 b=2UmqsIQlpyIvfucEbQ6vvCKIuPuLY63DVdZ7PD8GVTWIHIJJn7Xlih6BG4xyAwIo2Si0QwIC3L3lLJ00UqRQKl6aB/lYRr4cQMYbc6GAh9MbvdMR3tWCHXwVTpBNaCEztnTAP3bGHmWndQbJuttP1tet08pQplb7/x9OF12eUis=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Julien Grall <julien@xen.org>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: [PATCH v5 3/5] xen/pci: update PCI_STATUS_* constants
Date: Fri, 1 Sep 2023 00:57:30 -0400
Message-ID: <20230901045742.235975-4-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20230901045742.235975-1-stewart.hildebrand@amd.com>
References: <20230901045742.235975-1-stewart.hildebrand@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3A:EE_|MN2PR12MB4344:EE_
X-MS-Office365-Filtering-Correlation-Id: 8671c735-8bbf-46ae-0024-08dbaaa851c6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5tf0om0kWnVBHXxoscfu1/afuAUO7NgASO06LKNuf6UTwA7OMk3nAH+20dz2EW0ahk5sqS+wHblXGD45hRjx1JBe/9kjOSzemLFPG+G9zYoCxHnB9/vjWg2sM+0QsjSRbwpXuAGrVGYFaQvwosjAqNR5naBO3OsqZyWsPtyFQ9mMZAfwKfDMfPcTUR9xWDMN/mR0BMMAauSeepzY15YBP9UfCgGFsoRBMGA0uEXCNaiMQxo/YVF0/GELu0VPJJ1n1wFCpMMh09x059/JpuP8IG17cMhhB6MVwiVtL3GgKjoYu2EmVG6ReyY4ejE6Q6r7Sr+t4mAEh44DTGDe/ysDqfENFjf5dxPLITfkhCM+Dafz1pjmMfIf+JybDlVeiTxDSWw5D+CN7VLXLOPrRUYlEorELa6aNbhL1PGEfSqwtl5syrsJEi8cTvWMYz3+wdK53i3rLdUiUTGtKD8ryk9mz890GltyuOWyVD2Ox6nHhDhZ4z5pszgaG0+MSOeXOY9/NNEiYrPOuaU3ybRWeXcQv4ntBpch0cGaSPQSnulagBO7OPBtKXEkZQ+395jKmjbpgdQYcOOXVNd3KErwRd8h4ttnApVktlRzFW0FmXCQyX44J8IgNiRFwiFpolNOYdoGeRDp4R3W6EDn7psglAnRwU1HuUc1DJv9Y6Vn+6HM6jMJ6xbptjb/eWQrXrQA4vQvs1vYVcmqKVjSwHJDo+xFIc2hal1ZQxIl0mfpltlwd8f7g2LDaiZE/vCyLOGx4h8prhN/XkIl5D1/PgJ/SJYz0w==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(376002)(136003)(39860400002)(346002)(82310400011)(451199024)(186009)(1800799009)(36840700001)(46966006)(40470700004)(6666004)(36860700001)(82740400003)(356005)(40480700001)(81166007)(478600001)(47076005)(54906003)(316002)(41300700001)(70206006)(70586007)(86362001)(40460700003)(2906002)(5660300002)(426003)(6916009)(36756003)(4744005)(336012)(2616005)(1076003)(44832011)(26005)(8676002)(8936002)(4326008)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:10.5121
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8671c735-8bbf-46ae-0024-08dbaaa851c6
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3A.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4344

Interrupt status introduced in PCI 2.3
Immediate readiness introduced in PCIe 4.0

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v4->v5:
* new patch
---
 xen/include/xen/pci_regs.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/xen/include/xen/pci_regs.h b/xen/include/xen/pci_regs.h
index a90aff1712ba..84b18736a85d 100644
--- a/xen/include/xen/pci_regs.h
+++ b/xen/include/xen/pci_regs.h
@@ -50,6 +50,8 @@
 #define  PCI_COMMAND_INTX_DISABLE 0x400 /* INTx Emulation Disable */
 
 #define PCI_STATUS		0x06	/* 16 bits */
+#define  PCI_STATUS_IMM_READY	0x01	/* Immediate Readiness */
+#define  PCI_STATUS_INTERRUPT	0x08	/* Interrupt status */
 #define  PCI_STATUS_CAP_LIST	0x10	/* Support Capability List */
 #define  PCI_STATUS_66MHZ	0x20	/* Support 66 Mhz PCI 2.1 bus */
 #define  PCI_STATUS_UDF		0x40	/* Support User Definable Features [obsolete] */
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:00:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:00:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594221.927520 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGY-0004fd-Jl; Fri, 01 Sep 2023 05:00:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594221.927520; Fri, 01 Sep 2023 05:00:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwGY-0004ed-BX; Fri, 01 Sep 2023 05:00:18 +0000
Received: by outflank-mailman (input) for mailman id 594221;
 Fri, 01 Sep 2023 05:00:16 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGW-0000Nr-J3
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:16 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20609.outbound.protection.outlook.com
 [2a01:111:f400:fe59::609])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 705d405d-4884-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 07:00:15 +0200 (CEST)
Received: from DM6PR17CA0012.namprd17.prod.outlook.com (2603:10b6:5:1b3::25)
 by IA1PR12MB8335.namprd12.prod.outlook.com (2603:10b6:208:3fa::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22; Fri, 1 Sep
 2023 05:00:12 +0000
Received: from CY4PEPF0000EDD7.namprd03.prod.outlook.com
 (2603:10b6:5:1b3:cafe::af) by DM6PR17CA0012.outlook.office365.com
 (2603:10b6:5:1b3::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.21 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:12 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EDD7.mail.protection.outlook.com (10.167.241.211) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 05:00:12 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:09 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 22:00:08 -0700
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:08 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 705d405d-4884-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KCl9i6TtPsq/DJI5XK9ViXY58FauOFMr3COHviRussWdhIYG3dxLlw/Ml5k6CVXPLv13gxZAMwgKhd9jS1F2Gn3ynQQOVUh0CUeiUehFLiAaCtuZiR+oXEs7Kn25W52IFRLyNLkI3ewoyG8mgTW1KQBRgvLuJrY62a7JiQtSSIhh3F0WwVCkxVd+MUlsmj9b/ySao8lG3gqvVhfJrZdPp0etuP40qJ9/OJCwDoR+n4dNUa+H/hGZvX+1u/JZbjfC4qpdE9keiITz8FSMogMQ8A/vuxrCeNUfW0PzlYfs7z44QXuXdnlTKmrqkMGK/70/O5QMrPZhQyXOnRcqc26S+g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=653u6xWPNriUED+G4weH7ZKsZbL2O1CzT4XNOpC6uN4=;
 b=DNO5DspXD8xqALCd8PD9NjZbjozw4TAfdZRh6/8Kdyi5c78HKFuYzEL6Wo0TrtoeIBhs2KNyQGBxsx15bC7Pc8SxWt+1scQeHfL4DBzyBjBu6xcI2zCpgWxaFuL/1RdL98zYD7Peuned7qClQd8/qjPv5w2wrFsoZztLfCr4SGmrvFZ2Cf4GybSNQfp4/wmJdV14MJtJWSjR1yznB+keClSA9TmgrxNSOcvgOsOV4GMhan6ROn/hfptqNi7h1fv5bkHHc5LJtRN4xypQiZ7Co/nuxfJD0VpPXKESJzkZi6rPnhFw9r0JnzaNoV0fVIzjbz2eSIMjmBWY3ch+YMFX5A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=653u6xWPNriUED+G4weH7ZKsZbL2O1CzT4XNOpC6uN4=;
 b=rnPAmua7d6KsHdyvHeK68uuH73Yp+VA1p/96eBgTQsN1So9VvOzqrqDHS7VKhAb+++V7UjoL27uqaBnqzLr1WSbQoR7EXVhjduBOcVnIHTMAPQFJ82DjyWYQGYKxrPjBeF7YZI29TXvTxxmOz70HE99j8X6uKY78oR3WD//DBSQ=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Vikram Garhwal <fnu.vikram@xilinx.com>, "David
 Gibson" <david@gibson.dropbear.id.au>
Subject: [XEN][PATCH v11 07/20] libfdt: overlay: change overlay_get_target()
Date: Thu, 31 Aug 2023 21:59:34 -0700
Message-ID: <20230901045947.32351-8-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EDD7:EE_|IA1PR12MB8335:EE_
X-MS-Office365-Filtering-Correlation-Id: eca93473-b53b-4023-7f57-08dbaaa852c9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dRa8JPLYr9vTsXeECeb0xUrVHRGndnqunTidwwZ/98vY0aNtOsuxmoq0KUXfq7hGc+x0mDCuWh02j0UyVjnjVu9RYfMEnElREBzqMeazD4VUWes2SMKYx42SUKcfOLz3DE8wFNIy+Ckrxg5Ss7C5Ww9SNuK2/zYKZQ92ZRqiI21d4zEUOsjoLxtG5IoGB5TXyssy1RiaItIRFXtY89mBYcc7f+bnDe+JUHXZAq321vvsZGrMq3MUQDpsUS7IXYtDcH531egc3sd2uegHUs5ChdE8a+6ghZmESWYp2Sp20uH0SGRoislITKC/8PVTJVkMPsU2t6hlXcegluetV+qqKcu1qoNE+gF2opaxWkGDwSzU9ogwN4UzB1rXAZGrTXK+R28kPr8XBgqHjcs4QtISHFcjL88eddr2Xw4FTSOvRWjulKy+5utlYFY1anF9Sn1v898MSjt9tM6XT8IciazqFzw/Zuy4/azR/kfgNdkmfJbEY0Yfbx3Kv6zbPZfU9c6AOH5s0Im7j6ybOSf6PCrxcj6FB2Eat7KFCgmMr38VGE0mWaoCim6TQSDSVxESp08FGPKAtTOCoHecbVUm2Y98p3BF9tb/kjy9g4JpcQBGEJg5+z4Q3tv3g8iUIXwwKlf4P6inzCzS+xxM9HhemcNRGdJcQeZ+WImzkGxXRvu8G66AOJyCaNfOUbjhjV3SmJ/MKPmtwiiHkjmxeQ3PNHZNhUj9gXSGYDKnRN4C6B1u/Z8YNRy1x4HnbJkUW16zVuck2tig2fra2DjK3ElLUKPkJw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(39860400002)(136003)(396003)(82310400011)(186009)(1800799009)(451199024)(40470700004)(46966006)(36840700001)(40480700001)(82740400003)(36756003)(41300700001)(336012)(426003)(26005)(1076003)(40460700003)(54906003)(356005)(70586007)(70206006)(81166007)(83380400001)(316002)(6916009)(478600001)(6666004)(2906002)(5660300002)(86362001)(44832011)(8936002)(2616005)(36860700001)(8676002)(47076005)(4326008)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:12.2128
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: eca93473-b53b-4023-7f57-08dbaaa852c9
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EDD7.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB8335

Rename overlay_get_target() to fdt_overlay_target_offset() and remove static
function type.

This is done to get the target path for the overlay nodes which is very useful
in many cases. For example, Xen hypervisor needs it when applying overlays
because Xen needs to do further processing of the overlay nodes, e.g. mapping of
resources(IRQs and IOMMUs) to other VMs, creation of SMMU pagetables, etc.

Signed-off-by: Vikram Garhwal <fnu.vikram@xilinx.com>
Message-Id: <1637204036-382159-2-git-send-email-fnu.vikram@xilinx.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Origin: git://git.kernel.org/pub/scm/utils/dtc/dtc.git 45f3d1a095dd

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Reviewed-by: Henry Wang <Henry.Wang@arm.com>
Acked-by: Juline Grall <jgrall@amazon.com>
---
 xen/common/libfdt/fdt_overlay.c | 29 +++++++----------------------
 xen/common/libfdt/version.lds   |  1 +
 xen/include/xen/libfdt/libfdt.h | 18 ++++++++++++++++++
 3 files changed, 26 insertions(+), 22 deletions(-)

diff --git a/xen/common/libfdt/fdt_overlay.c b/xen/common/libfdt/fdt_overlay.c
index 7b95e2b639..acf0c4c2a6 100644
--- a/xen/common/libfdt/fdt_overlay.c
+++ b/xen/common/libfdt/fdt_overlay.c
@@ -41,37 +41,22 @@ static uint32_t overlay_get_target_phandle(const void *fdto, int fragment)
 	return fdt32_to_cpu(*val);
 }
 
-/**
- * overlay_get_target - retrieves the offset of a fragment's target
- * @fdt: Base device tree blob
- * @fdto: Device tree overlay blob
- * @fragment: node offset of the fragment in the overlay
- * @pathp: pointer which receives the path of the target (or NULL)
- *
- * overlay_get_target() retrieves the target offset in the base
- * device tree of a fragment, no matter how the actual targeting is
- * done (through a phandle or a path)
- *
- * returns:
- *      the targeted node offset in the base device tree
- *      Negative error code on error
- */
-static int overlay_get_target(const void *fdt, const void *fdto,
-			      int fragment, char const **pathp)
+int fdt_overlay_target_offset(const void *fdt, const void *fdto,
+			      int fragment_offset, char const **pathp)
 {
 	uint32_t phandle;
 	const char *path = NULL;
 	int path_len = 0, ret;
 
 	/* Try first to do a phandle based lookup */
-	phandle = overlay_get_target_phandle(fdto, fragment);
+	phandle = overlay_get_target_phandle(fdto, fragment_offset);
 	if (phandle == (uint32_t)-1)
 		return -FDT_ERR_BADPHANDLE;
 
 	/* no phandle, try path */
 	if (!phandle) {
 		/* And then a path based lookup */
-		path = fdt_getprop(fdto, fragment, "target-path", &path_len);
+		path = fdt_getprop(fdto, fragment_offset, "target-path", &path_len);
 		if (path)
 			ret = fdt_path_offset(fdt, path);
 		else
@@ -638,7 +623,7 @@ static int overlay_merge(void *fdt, void *fdto)
 		if (overlay < 0)
 			return overlay;
 
-		target = overlay_get_target(fdt, fdto, fragment, NULL);
+		target = fdt_overlay_target_offset(fdt, fdto, fragment, NULL);
 		if (target < 0)
 			return target;
 
@@ -781,7 +766,7 @@ static int overlay_symbol_update(void *fdt, void *fdto)
 			return -FDT_ERR_BADOVERLAY;
 
 		/* get the target of the fragment */
-		ret = overlay_get_target(fdt, fdto, fragment, &target_path);
+		ret = fdt_overlay_target_offset(fdt, fdto, fragment, &target_path);
 		if (ret < 0)
 			return ret;
 		target = ret;
@@ -803,7 +788,7 @@ static int overlay_symbol_update(void *fdt, void *fdto)
 
 		if (!target_path) {
 			/* again in case setprop_placeholder changed it */
-			ret = overlay_get_target(fdt, fdto, fragment, &target_path);
+			ret = fdt_overlay_target_offset(fdt, fdto, fragment, &target_path);
 			if (ret < 0)
 				return ret;
 			target = ret;
diff --git a/xen/common/libfdt/version.lds b/xen/common/libfdt/version.lds
index 7ab85f1d9d..cbce5d4a8b 100644
--- a/xen/common/libfdt/version.lds
+++ b/xen/common/libfdt/version.lds
@@ -77,6 +77,7 @@ LIBFDT_1.2 {
 		fdt_appendprop_addrrange;
 		fdt_setprop_inplace_namelen_partial;
 		fdt_create_with_flags;
+		fdt_overlay_target_offset;
 	local:
 		*;
 };
diff --git a/xen/include/xen/libfdt/libfdt.h b/xen/include/xen/libfdt/libfdt.h
index c71689e2be..fabddbee8c 100644
--- a/xen/include/xen/libfdt/libfdt.h
+++ b/xen/include/xen/libfdt/libfdt.h
@@ -2109,6 +2109,24 @@ int fdt_del_node(void *fdt, int nodeoffset);
  */
 int fdt_overlay_apply(void *fdt, void *fdto);
 
+/**
+ * fdt_overlay_target_offset - retrieves the offset of a fragment's target
+ * @fdt: Base device tree blob
+ * @fdto: Device tree overlay blob
+ * @fragment_offset: node offset of the fragment in the overlay
+ * @pathp: pointer which receives the path of the target (or NULL)
+ *
+ * fdt_overlay_target_offset() retrieves the target offset in the base
+ * device tree of a fragment, no matter how the actual targeting is
+ * done (through a phandle or a path)
+ *
+ * returns:
+ *      the targeted node offset in the base device tree
+ *      Negative error code on error
+ */
+int fdt_overlay_target_offset(const void *fdt, const void *fdto,
+			      int fragment_offset, char const **pathp);
+
 /**********************************************************************/
 /* Debugging / informational functions                                */
 /**********************************************************************/
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:10:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:10:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594252.927536 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwQP-0000N6-Pz; Fri, 01 Sep 2023 05:10:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594252.927536; Fri, 01 Sep 2023 05:10:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwQP-0000Mz-Ly; Fri, 01 Sep 2023 05:10:29 +0000
Received: by outflank-mailman (input) for mailman id 594252;
 Fri, 01 Sep 2023 05:10:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGc-0001Hn-KV
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:22 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on20624.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::624])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 72e360b3-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:20 +0200 (CEST)
Received: from DM6PR17CA0009.namprd17.prod.outlook.com (2603:10b6:5:1b3::22)
 by CH0PR12MB5330.namprd12.prod.outlook.com (2603:10b6:610:d5::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.23; Fri, 1 Sep
 2023 05:00:14 +0000
Received: from CY4PEPF0000EDD7.namprd03.prod.outlook.com
 (2603:10b6:5:1b3:cafe::21) by DM6PR17CA0009.outlook.office365.com
 (2603:10b6:5:1b3::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:14 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EDD7.mail.protection.outlook.com (10.167.241.211) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 05:00:14 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:12 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:12 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 72e360b3-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bTSZxqIGX6QUklP7E+2bT/V1IuikQIE7ptoo+pjO/hd1Go0+JvZiGOqh2QD11Qeq9To5cOfeLioLO/L2WEPvabHLtcOhC8fX+JENV1xPYwU9Ls1r9sF3H9YCQtVtSfC5Lgca4oHRzEzDj+nDlL0ChVqnXVddqi9FqmRSk0HhjMppx+A8Qn0u+eYR9K2gbLFVLCUkB15oAiT24/+3MYiNd4S/28D94MZQi7c/ak6zzMS6vVtqlLES7yCtRXiyM6m40N7gQeLodYTBE8ltFTP1zCdFXd6Us5Pa59LCIjTJ5zXVHoKxXPWMG2uj33pF9MkQ8RodIsR9lvJLV9ox20Q7yQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=N5Ad07nFyqe3yvUSTljKoScg3IAugPfBscvADFFb2TQ=;
 b=cfoERg+tJmlDINXCzok+2CY0OCeCSEjzptvM96kFfbMXaRJjGM7zr3+kp03HRbf/5XfXN5TJDkqOF3a80bcPxnEt5+cBOiT2NKhBmjhBe6SbMgK+PD3w4SxofdoD8gpO0+1udy5dn+ilQMG8zlRFavKi84lii1al8V1NKOW1Srt3t6WAB9jXuMpg7tf+0kepteck8tUwmRhVFbxStlRzPso2CqcapRc7VbYlAZOO+QWa7Qta0qDBKNdRcs3Cgxeek78CjkSBLIXaDdfgSIa8BtmkWwmM1HV0K3hahzf2bpWWHy99ir2/D66GNi1WIxQoSso4Zfx0D61REXPj1SLuFg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=N5Ad07nFyqe3yvUSTljKoScg3IAugPfBscvADFFb2TQ=;
 b=qwxtyOjyiw0it9jprvyaGDAx8fvVBChsAjAVNbo9CrfC9gDmtKH0EcHVwKZX+7BEwQNh/uWTu4oWpgeOB8owMRn2ld0ViOfeV26L6ipx1fxE3yDFgr0ff/wltqKEd/svN2gQfPJUS6JZLfC85X2h4w9h1FtPbeLVXgKeZEvhsGM=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Rahul Singh <rahul.singh@arm.com>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN][PATCH v11 12/20] xen/smmu: Add remove_device callback for smmu_iommu ops
Date: Thu, 31 Aug 2023 21:59:39 -0700
Message-ID: <20230901045947.32351-13-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EDD7:EE_|CH0PR12MB5330:EE_
X-MS-Office365-Filtering-Correlation-Id: f501a0e5-1e22-4433-c043-08dbaaa853ee
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	L0RiqoHbUAXBiQXKngOBAEYk8huoJjUHKDssVxDMWg0j6Hrilp0n+HYctAR4gw42huHltIQ1EPXD6zZEWCsJyfywkyfSaMbnzz5plYB772Yjm1BRDEeC1CQ56ms3o7b8NQ86vZYp0CjIIj6Lq7py0b0ziSLRp2FXF44y5f9miA6P7AHmgPJYaZzTts3rTfLUJkFyV8+9t+85YRzIiYNGVFt7BRO68qzwQ1uSaFElvDP2HsBb+Ubg4qcBSh6zE/RKXd1NmraABJYOjCYGzIAdwOZxH97WVlIPO3414q5qYu0HWvfFFD6b7mlmjBNt9g48uSCCA/O1iDZ/S7QThuyAn9QeewHf5WvEy7HacT6EI4SfpzdZXINIwXsrPirg+fLTOrKVAhsETfw+CCrauoxqgHmtDeibvSOBbv82EMrFeWgCi6UwmoiqnQaIPkfX3dtrVCqFol6Izn45l2GgdEg52LrT8SvAirtXDu/PZ7Xoq29MzDyZQqDqP2IIy8ygb0zZAYdxPGcxGoS6vt8InsYhFtxTnMi5RIXfMzUs3HeAJb4JMNKkOAQ9azPqLKIuT0J28PoLtpDsLbOfNQa8/QEfiL29Qp0HcJHMpkn51dQg6Qg3zQbTqt9pNxszfTWphoKq5ht3NDH+Wpx9JZew60enARBs7CsIJ8K/QcUAEWzc4vr/DG7Mv2IFIjHLRlZ+Jzv7OTWYXZbmp5LVXFlPb1BG5LxbuyS+L70xudCTvGG/8cQ2llQ4/0qFGRBt/p1H3K/2pnrD8VYaxXb4q67kongdag==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(136003)(346002)(376002)(39860400002)(82310400011)(451199024)(186009)(1800799009)(40470700004)(46966006)(36840700001)(6666004)(478600001)(83380400001)(1076003)(2616005)(336012)(426003)(26005)(2906002)(44832011)(6916009)(54906003)(316002)(41300700001)(70586007)(70206006)(5660300002)(8936002)(8676002)(4326008)(40460700003)(36756003)(40480700001)(47076005)(36860700001)(86362001)(81166007)(356005)(82740400003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:14.1503
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f501a0e5-1e22-4433-c043-08dbaaa853ee
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EDD7.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5330

Add remove_device callback for removing the device entry from smmu-master using
following steps:
1. Find if SMMU master exists for the device node.
2. Check if device is currently in use.
3. Remove the SMMU master.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>

---
 Changes from v9:
    Remove iommu_dt_device_is_assigned_locked().
    Add comment regarding caller holding the locks to protect concurrent access.
 Changes from v7:
        Added comments on arm_smmu_dt_remove_device_generic().
---
---
 xen/drivers/passthrough/arm/smmu.c | 60 ++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)

diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
index c37fa9af13..71799064f8 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -815,6 +815,19 @@ static int insert_smmu_master(struct arm_smmu_device *smmu,
 	return 0;
 }
 
+static int remove_smmu_master(struct arm_smmu_device *smmu,
+			      struct arm_smmu_master *master)
+{
+	if (!smmu->masters.rb_node) {
+		ASSERT_UNREACHABLE();
+		return -ENOENT;
+	}
+
+	rb_erase(&master->node, &smmu->masters);
+
+	return 0;
+}
+
 static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu,
 					 struct device *dev,
 					 struct iommu_fwspec *fwspec)
@@ -852,6 +865,32 @@ static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu,
 	return insert_smmu_master(smmu, master);
 }
 
+static int arm_smmu_dt_remove_device_legacy(struct arm_smmu_device *smmu,
+					 struct device *dev)
+{
+	struct arm_smmu_master *master;
+	struct device_node *dev_node = dev_get_dev_node(dev);
+	int ret;
+
+	master = find_smmu_master(smmu, dev_node);
+	if (master == NULL) {
+		dev_err(dev,
+			"No registrations found for master device %s\n",
+			dev_node->name);
+		return -EINVAL;
+	}
+
+	ret = remove_smmu_master(smmu, master);
+	if (ret)
+		return ret;
+
+	/* Protected by dt_host_lock and dtdevs_lock as caller holds these locks. */
+	dev_node->is_protected = false;
+
+	kfree(master);
+	return 0;
+}
+
 static int register_smmu_master(struct arm_smmu_device *smmu,
 				struct device *dev,
 				struct of_phandle_args *masterspec)
@@ -875,6 +914,26 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
 					     fwspec);
 }
 
+/*
+ * The driver which supports generic IOMMU DT bindings must have this
+ * callback implemented.
+ */
+static int arm_smmu_dt_remove_device_generic(u8 devfn, struct device *dev)
+{
+	struct arm_smmu_device *smmu;
+	struct iommu_fwspec *fwspec;
+
+	fwspec = dev_iommu_fwspec_get(dev);
+	if (fwspec == NULL)
+		return -ENXIO;
+
+	smmu = find_smmu(fwspec->iommu_dev);
+	if (smmu == NULL)
+		return -ENXIO;
+
+	return arm_smmu_dt_remove_device_legacy(smmu, dev);
+}
+
 static int arm_smmu_dt_add_device_generic(u8 devfn, struct device *dev)
 {
 	struct arm_smmu_device *smmu;
@@ -2859,6 +2918,7 @@ static const struct iommu_ops arm_smmu_iommu_ops = {
     .init = arm_smmu_iommu_domain_init,
     .hwdom_init = arch_iommu_hwdom_init,
     .add_device = arm_smmu_dt_add_device_generic,
+    .remove_device = arm_smmu_dt_remove_device_generic,
     .teardown = arm_smmu_iommu_domain_teardown,
     .iotlb_flush = arm_smmu_iotlb_flush,
     .assign_device = arm_smmu_assign_dev,
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:11:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:11:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594260.927546 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwR3-00016u-2P; Fri, 01 Sep 2023 05:11:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594260.927546; Fri, 01 Sep 2023 05:11:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwR2-00016n-UE; Fri, 01 Sep 2023 05:11:08 +0000
Received: by outflank-mailman (input) for mailman id 594260;
 Fri, 01 Sep 2023 05:11:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGY-0001Hn-6H
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:18 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20602.outbound.protection.outlook.com
 [2a01:111:f400:7eab::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7032be93-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:16 +0200 (CEST)
Received: from CY5PR15CA0006.namprd15.prod.outlook.com (2603:10b6:930:14::9)
 by DM4PR12MB7719.namprd12.prod.outlook.com (2603:10b6:8:101::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22; Fri, 1 Sep
 2023 05:00:13 +0000
Received: from CY4PEPF0000EE32.namprd05.prod.outlook.com
 (2603:10b6:930:14:cafe::fb) by CY5PR15CA0006.outlook.office365.com
 (2603:10b6:930:14::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.21 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:13 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000EE32.mail.protection.outlook.com (10.167.242.38) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 05:00:12 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:09 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:09 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7032be93-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=K89iQoFiEFSf0bqsEWd6uzDbDH/mfon3zokUzk7FcE5tydUT7CV2KTJCCNIoRxdh+biJMEworTi+m6W8DMbAuPmvOqyzTu0dUFssyIDTseJEoxNXoOBNfj5N4KQaNnpWGRkl57bGjDR6EDUI94FHEw5xc4ZPyB9ZxQDz/mOLD4nF+tw596aYs+vOE0g8ufwuky6IMGkSPLco6pIrH+JQ0wkV3eVpoFESilzvVKf5L7a1AklSyk/1Zb4CaF8SXCRrcQIS665uj2TDW6JfpbZaeoVDAEeeErRs7xC7bIT0T0YYGs69HqLe4f/82bFxf6ykuLJdiqnvTJ5KZMMM+bPmLg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=JIgawtLTJDYclMTRziV6+ukrPXqF+ozH3iEpHoQmI6c=;
 b=Z/w6AMB1A8+3B8OzZy71juf5K2/KzMsJm9oYqLZ8O+L/oDZlG/7sShD2Wly+C+W7nuVyrJB3wAnVKTLGwTS++aETrA5w3qsgPV1/iRSEPpHX1u7kKXGxWmnyoAaNiREsnRaXNibnbvsYr9CjmQoItBgHvGD9O/DMvR6X4gGAdanfxCsAgmsULkopBmuhGAqBR4CgFtSkSZ1KSMGc7LLKN6Ink75Zni3RQt2gpptQs5dutGrgkX3nSfV3BINO1VmBhC6dDPvlcPrvFAIW05+lTJKyjNs1eI0zyT7WkzPNFYLGaqWfzve/0iQLLUM3Rd/kImKWRxAQyIFPfAYc99K1kQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JIgawtLTJDYclMTRziV6+ukrPXqF+ozH3iEpHoQmI6c=;
 b=27/PiAWhzMgPwauVdDVn7zfLiIo9Cv5Q9YNhIqBX4P8uZFZFKP7QtkREDNRvBidQewuifvZ8K75ZbhALEWJp0tQ8pw/n4s7SzIt6layvuNh6MxijnTSjGpjP6IBy5OedqvPGnSl2WBPQDdTiRhpDFgkiIuZY94Ns+0/OlkcpsYI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v11 08/20] xen/device-tree: Add dt_find_node_by_path_from() to find nodes in device tree
Date: Thu, 31 Aug 2023 21:59:35 -0700
Message-ID: <20230901045947.32351-9-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE32:EE_|DM4PR12MB7719:EE_
X-MS-Office365-Filtering-Correlation-Id: 1b0c34c5-a605-4f58-26ca-08dbaaa85346
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zc79sxi8OJuMpM/rX1j8GrYByhB1hj7WWoCMsp3RbOOX+bXhThN4pjrApz2IjjympqCdghaJxB0egtrbY71LAWbka010sSJXdvckhG3Fo+XMXUTeaUOJR4ukFPXRrlGR4Bzzb7WL+5cknsH1imujtNJZnQHZceqd9eoK1Yzg1+rw1Cppiw6FGYE/PTfDOvpeLFDNZimyDTmqbqDLjWQvyYqV01MEyhpAcmw16FwazGgcWWwrt314tp+MNhkaX1L0INyw5PVYV78QyOoyHJKvppO3JlND9pWsO3ISLg23ojUPlpkTIogTbct2apIMBaalntVxNa2YM2SJ/d4eAcbT5wcgDPpkZ73PkWXjcFfsoySxNBJfTsVXaJFXluk9Vt9QmptG+NTmzZ0PR+IsWicRnfrW1yf3wpYVhdkccPaIom2I8LQVJmJ7anaCJqy49jmB6BFX0P3WTBB61Mlgi5Kr5XvPHqXFgn1TYI+SPdyUeXa2QJ5gb+0d/yDprTN7fg6X9LJTQ9P27r60Sw4U0HGDnI7EfEKQYG4tMAN+3eiG4RSDkBdRG3LlaX7+SzjLwwV2OKcVSAMuJeye5SPp24o59TeWIqYjcOlmKCGgxGolzGfCUvM4F53Mkulri+3ufp44wpmAm4MpDCAuehb+FA5DGYcBr8mBv0vXam7F5gZ9Jt+jvyfkioKcvNZyr02k0S3aWSr3+naRLSrYW4ahcETsjlKUIzkzX/1jwMWINYHFtqu98+AjGafcVxwB+QFQQwmVVe37imDXkDI8vmp43vfPlvRhLOxUMVujO+YFm9TEkMk=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(39860400002)(136003)(396003)(82310400011)(186009)(1800799009)(451199024)(40470700004)(46966006)(36840700001)(40480700001)(82740400003)(36756003)(41300700001)(336012)(426003)(26005)(1076003)(40460700003)(54906003)(356005)(70586007)(70206006)(81166007)(83380400001)(316002)(6916009)(478600001)(6666004)(2906002)(5660300002)(86362001)(44832011)(8936002)(2616005)(36860700001)(8676002)(47076005)(4326008)(37363002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:12.9672
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1b0c34c5-a605-4f58-26ca-08dbaaa85346
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE32.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB7719

Add dt_find_node_by_path_from() to find a matching node with path for a
dt_device_node.

Reason behind this function:
    Each time overlay nodes are added using .dtbo, a new fdt (memcpy of
    device_tree_flattened) is created and updated with overlay nodes. This
    updated fdt is further unflattened to a dt_host_new. Next, we need to find
    the overlay nodes in dt_host_new, find the overlay node's parent in dt_host
    and add the nodes as child under their parent in the dt_host. Thus we need
    this function to search for node in different unflattened device trees.

Also, make dt_find_node_by_path() static inline.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>

---
Changes from v10:
    Fix commit message with right function name.
Changes from v9:
    Fix indentation issues.

Changes from v7:
    Rename device_tree_find_node_by_path() to dt_find_node_by_path_from().
    Fix indentation.
---
---
 xen/common/device_tree.c      |  5 +++--
 xen/include/xen/device_tree.h | 17 +++++++++++++++--
 2 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index b8ef1c7ae2..f38f51ec0b 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -358,11 +358,12 @@ struct dt_device_node *dt_find_node_by_type(struct dt_device_node *from,
     return np;
 }
 
-struct dt_device_node *dt_find_node_by_path(const char *path)
+struct dt_device_node *dt_find_node_by_path_from(struct dt_device_node *from,
+                                                 const char *path)
 {
     struct dt_device_node *np;
 
-    dt_for_each_device_node(dt_host, np)
+    dt_for_each_device_node(from, np)
         if ( np->full_name && (dt_node_cmp(np->full_name, path) == 0) )
             break;
 
diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h
index a518310a62..44d315c8ba 100644
--- a/xen/include/xen/device_tree.h
+++ b/xen/include/xen/device_tree.h
@@ -570,13 +570,26 @@ struct dt_device_node *dt_find_node_by_type(struct dt_device_node *from,
 struct dt_device_node *dt_find_node_by_alias(const char *alias);
 
 /**
- * dt_find_node_by_path - Find a node matching a full DT path
+ * dt_find_node_by_path_from - Generic function to find a node matching the
+ * full DT path for any given unflatten device tree
+ * @from: The device tree node to start searching from
  * @path: The full path to match
  *
  * Returns a node pointer.
  */
-struct dt_device_node *dt_find_node_by_path(const char *path);
+struct dt_device_node *dt_find_node_by_path_from(struct dt_device_node *from,
+                                                 const char *path);
 
+/**
+ * dt_find_node_by_path - Find a node matching a full DT path in dt_host
+ * @path: The full path to match
+ *
+ * Returns a node pointer.
+ */
+static inline struct dt_device_node *dt_find_node_by_path(const char *path)
+{
+    return dt_find_node_by_path_from(dt_host, path);
+}
 
 /**
  * dt_find_node_by_gpath - Same as dt_find_node_by_path but retrieve the
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:11:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:11:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594261.927555 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwR8-0001Qk-8g; Fri, 01 Sep 2023 05:11:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594261.927555; Fri, 01 Sep 2023 05:11:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwR8-0001Qb-5U; Fri, 01 Sep 2023 05:11:14 +0000
Received: by outflank-mailman (input) for mailman id 594261;
 Fri, 01 Sep 2023 05:11:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGu-0001Hn-FU
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:40 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20601.outbound.protection.outlook.com
 [2a01:111:f400:fe59::601])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7bffc160-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:35 +0200 (CEST)
Received: from DS7PR03CA0168.namprd03.prod.outlook.com (2603:10b6:5:3b2::23)
 by MN0PR12MB6126.namprd12.prod.outlook.com (2603:10b6:208:3c6::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.21; Fri, 1 Sep
 2023 05:00:33 +0000
Received: from CY4PEPF0000EE3C.namprd03.prod.outlook.com
 (2603:10b6:5:3b2:cafe::5a) by DS7PR03CA0168.outlook.office365.com
 (2603:10b6:5:3b2::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:32 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3C.mail.protection.outlook.com (10.167.242.16) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.17 via Frontend Transport; Fri, 1 Sep 2023 05:00:32 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:31 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:31 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7bffc160-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Nf8WcL3qB/lcjeQrNWjnbCxHRKatLQmfford6ksOpyPUlcqya9+6rqLgYHywlsZblr/XqdHW9+2jg1w9yYp3m8RwUQ8a1IzjUXFe1zpVSNpMDHoyIDfeElnLXLfCRiAdMm711eMUs9deU4JNMIos8c2bjyb8LM1DvgkFjvqHyUXaQNxD7020+jlv/GwYuaF2uevF1YznENf02LOymE+zYjppuOmaLJdBA0jLTDIWY6SMHxSm+hyJg4hdvjCZ+CBAtVvLj7TXlTTGr2dtiuOZum8WYtTq+d/Rc7V69LGfIgzpq1KA/f56iIqHAvuTTczPY2sPwpZSBhrg7btHh6izvA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0SOh4yXnAAqd95uGtVLNuRN1JoH4/9uDY70TgG5n3FU=;
 b=Y04HI+23rnClaNfPhIzLPu8Fg9wvbrQvhxVZD5/M7f6mLclgN0/1oOS2z1kWJ95H89ulgddenQqeBei8xnjA/A6BL2z4jSmW3tS29lRaLbMADPbvtvYM4GpV91h86rcJsMLEA8v2JYbibWjc8vVhLOa+pV+vCEpvhrrOg+gEK/B5BuWzMd/jdbml1oD9ZT3MrZWW+q9EKL/5JWsvaZoaAuYOyxaiy6G1b382y5uJ9PAX6uxMmW8E8/XFLE5id3H9bGpl331cHP+EYg32yk4h0uEl1qE60p1WjLGf5PaH8/PdR/49zNHcFfoK5/DqDv23d0UZjJTiPWZejhd1AtrqQQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0SOh4yXnAAqd95uGtVLNuRN1JoH4/9uDY70TgG5n3FU=;
 b=eRlDvm2fCP5AReW4gx03Pg8Kf2U02BfUUIIQtpSLJe4eQsaud9OM/x7iDki4adYaP9+ZngKDrI/Xvpp3bgiyaF9J27sBtZMS5Hg1xW7jnUk6qZ/33i+IPVzihyk8joOLOW7hPdvbsYKDzP+6EHN6YEsKGisDn50urLG790xYNrU=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>
Subject: [XEN][PATCH v11 20/20] tools/xl: Add new xl command overlay for device tree overlay support
Date: Thu, 31 Aug 2023 21:59:47 -0700
Message-ID: <20230901045947.32351-21-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3C:EE_|MN0PR12MB6126:EE_
X-MS-Office365-Filtering-Correlation-Id: 7a01316f-071a-4814-6833-08dbaaa85f04
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	IKgAg60HDsnCItKCyZIz3/h3CEXHdWo7f3LshDBSsMpz8sM2j6hvobqqtIcVFQgp64BA6iCqOVXUBSTXjl2s8ZjcxNxdzqAPjWPU4L6qH+ubC2jAs+FwiFgKk5+zAedinFu8K6nMp03lf65E0B25JC/p9nqEwE6LYMlBfUxXpYsN04zGTZwiqDdI3pfdcVnNySNJvEewOD0jy87+k6ohbwi8M0Pvb/0bLxgqWlSOt5U3mDs6bdkLTMuSB5yKeO4M9VGMKPO1I0qEcjmiuBSByYduPreVAuAJr4uAJOgwBpIkpl8iNAdFif1oH6wXx6LynkUGWTctN80dxnkLY3qYitQvmrgjJTiFb+jD5oTH9hxPSJE9EjAxDq9KaTQP3ezctCYR6j5Zgr9KBuP3cMI6BNOs9dmfKW9OmYi1UxxukD9jDrzGx0Yw+R/txXg46/X3UwKR0Y/wEFm5HXISvrpkYDubk/ESh3rSbZdxBdgozJ6D8CvRXgyEUwxB2f1UTsRNfJX4qDcqfacFrQiB7z8ybNXbo9Ans4y066VVmKBn4S59IMfMEeBzRT5t2cDniEexEqiJS64j3zu9RmB4amXQiBKjoYIEHyaTz57Naj4iXYFNkvB1PaAuq/LeN72CuZ+5B2Y7B4l0GvqgMn3F15zh8H9MqFAXZZBVA9ZjGaHvLMRVeA52pDv/rB/Z7phzs9zQrgpq0nfa0mvBltnEZG8UDrdNfqj5K18n5W3zCI3sPKmE0EnKTO2ydX1Dwpxp4Z9E2uFdhtPrElO8PTWw6uj6Yg==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(396003)(346002)(376002)(136003)(1800799009)(186009)(451199024)(82310400011)(36840700001)(46966006)(40470700004)(356005)(82740400003)(6666004)(36756003)(40460700003)(36860700001)(86362001)(81166007)(47076005)(40480700001)(2616005)(1076003)(2906002)(426003)(336012)(26005)(83380400001)(478600001)(70586007)(70206006)(8936002)(54906003)(8676002)(4326008)(44832011)(5660300002)(41300700001)(6916009)(316002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:32.7315
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7a01316f-071a-4814-6833-08dbaaa85f04
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3C.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB6126

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/xl/xl.h           |  1 +
 tools/xl/xl_cmdtable.c  |  6 +++++
 tools/xl/xl_vmcontrol.c | 52 +++++++++++++++++++++++++++++++++++++++++
 3 files changed, 59 insertions(+)

diff --git a/tools/xl/xl.h b/tools/xl/xl.h
index 72538d6a81..a923daccd3 100644
--- a/tools/xl/xl.h
+++ b/tools/xl/xl.h
@@ -138,6 +138,7 @@ int main_shutdown(int argc, char **argv);
 int main_reboot(int argc, char **argv);
 int main_list(int argc, char **argv);
 int main_vm_list(int argc, char **argv);
+int main_dt_overlay(int argc, char **argv);
 int main_create(int argc, char **argv);
 int main_config_update(int argc, char **argv);
 int main_button_press(int argc, char **argv);
diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c
index 67604e9536..2463521156 100644
--- a/tools/xl/xl_cmdtable.c
+++ b/tools/xl/xl_cmdtable.c
@@ -631,6 +631,12 @@ const struct cmd_spec cmd_table[] = {
       "Issue a qemu monitor command to the device model of a domain",
       "<Domain> <Command>",
     },
+    { "dt-overlay",
+      &main_dt_overlay, 0, 1,
+      "Add/Remove a device tree overlay",
+      "add/remove <.dtbo>"
+      "-h print this help\n"
+    },
 };
 
 const int cmdtable_len = ARRAY_SIZE(cmd_table);
diff --git a/tools/xl/xl_vmcontrol.c b/tools/xl/xl_vmcontrol.c
index 03971927e9..cea5b4a88e 100644
--- a/tools/xl/xl_vmcontrol.c
+++ b/tools/xl/xl_vmcontrol.c
@@ -1265,6 +1265,58 @@ int main_create(int argc, char **argv)
     return 0;
 }
 
+int main_dt_overlay(int argc, char **argv)
+{
+    const char *overlay_ops = NULL;
+    const char *overlay_config_file = NULL;
+    void *overlay_dtb = NULL;
+    int rc;
+    uint8_t op;
+    int overlay_dtb_size = 0;
+    const int overlay_add_op = 1;
+    const int overlay_remove_op = 2;
+
+    if (argc < 2) {
+        help("dt_overlay");
+        return EXIT_FAILURE;
+    }
+
+    overlay_ops = argv[1];
+    overlay_config_file = argv[2];
+
+    if (strcmp(overlay_ops, "add") == 0)
+        op = overlay_add_op;
+    else if (strcmp(overlay_ops, "remove") == 0)
+        op = overlay_remove_op;
+    else {
+        fprintf(stderr, "Invalid dt overlay operation\n");
+        return EXIT_FAILURE;
+    }
+
+    if (overlay_config_file) {
+        rc = libxl_read_file_contents(ctx, overlay_config_file,
+                                      &overlay_dtb, &overlay_dtb_size);
+
+        if (rc) {
+            fprintf(stderr, "failed to read the overlay device tree file %s\n",
+                    overlay_config_file);
+            free(overlay_dtb);
+            return ERROR_FAIL;
+        }
+    } else {
+        fprintf(stderr, "overlay dtbo file not provided\n");
+        return ERROR_FAIL;
+    }
+
+    rc = libxl_dt_overlay(ctx, overlay_dtb, overlay_dtb_size, op);
+
+    free(overlay_dtb);
+
+    if (rc)
+        return EXIT_FAILURE;
+
+    return rc;
+}
 /*
  * Local variables:
  * mode: C
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:11:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:11:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594262.927561 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwR8-0001TY-K2; Fri, 01 Sep 2023 05:11:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594262.927561; Fri, 01 Sep 2023 05:11:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwR8-0001Sh-ET; Fri, 01 Sep 2023 05:11:14 +0000
Received: by outflank-mailman (input) for mailman id 594262;
 Fri, 01 Sep 2023 05:11:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=am4h=ER=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qbwGz-0000Nr-Fi
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:45 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on2062e.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::62e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 802edf13-4884-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 07:00:43 +0200 (CEST)
Received: from CYXPR03CA0024.namprd03.prod.outlook.com (2603:10b6:930:d0::6)
 by SA3PR12MB9228.namprd12.prod.outlook.com (2603:10b6:806:39c::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.21; Fri, 1 Sep
 2023 05:00:39 +0000
Received: from CY4PEPF0000EE36.namprd05.prod.outlook.com
 (2603:10b6:930:d0:cafe::e0) by CYXPR03CA0024.outlook.office365.com
 (2603:10b6:930:d0::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.26 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:38 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000EE36.mail.protection.outlook.com (10.167.242.42) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.17 via Frontend Transport; Fri, 1 Sep 2023 05:00:38 +0000
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:37 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:36 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 802edf13-4884-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ALwvTiVUKP2LQF75EQ4M+lHRB/TQENH+gIgDX76ZiF3WdchiZtCEWONgYCBp6eUfXpGTJTjWBwvPO8BNjkYB+MYd85ypUKh/EYePIF3Cph25ndvf68REvGA1QyxKqbpxeTk2g/MCMTOJhbLDdZSTwn6y9BVbs8V6DGObQ3p8o0wMq4sa6KwSWiKMRFMQBH/bOHLcScMtVDnWxxlZf9hcav+tDSiYC5FqEzZtA3NgwIVX6hj8wA0tBr0NkYV0KEL3y0cFoGYeGMzOhVebn6HlS0FUdtdKpP11muS/gl8XqOxeeLpOt60YQpfgVSG/Mgoh4IooEXWO1tM8B756CGb6Bg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8KaFay1YX9Z8ga1iLYKzEiksiXOhKppKo65QZoKXwB8=;
 b=NuFS3lhaCNw/RU0x1VS53d920Ag+6pL+O2N9GsrIzA59Rq0Q5vX5iHeWvKRnFzKvNkepR7uWpXO7TEAoeNeKCZLtjs6U0sOPNiJ8C7mW7fo85qWWDlPzFU3yhehRznSiQ1JUhqhHvraPwUo7WzxdzBnGG91SwSFtKBWKG5vyRDujAPjvx6HQvbit0FEwLcS7CbogXoeyu57+tKGi3JSmUqfFrCFHWbCI2ObkEnkEjzJlFiYlwhHfeHH14VwTLOTucLyy9XG9sa6xW8o/u0AJnmVxQnrH6Mirz7si6A9YZvJ9xEuIA8pzlizCzJTQSbOB1rhxFQRfmbgRfyn6EtghJw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8KaFay1YX9Z8ga1iLYKzEiksiXOhKppKo65QZoKXwB8=;
 b=2+xToq1c3rldSz2P2GatSA9a9MZgg3TC2zQ32xI9auzwxzfiiYwsSQCx0ZDTNTZTswRO2tHN+a53ExaUakjeXx9Za+2q+TctHrY+hi/5gMfH+ywieBp3HkjvBEFTSSK04sKYDVyS14B6H6DpsXnZxQ2Bd9sT7SPEcqP1kNzHfTc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Julien Grall <julien@xen.org>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: [PATCH v5 4/5] xen/vpci: header: status register handler
Date: Fri, 1 Sep 2023 00:57:31 -0400
Message-ID: <20230901045742.235975-5-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20230901045742.235975-1-stewart.hildebrand@amd.com>
References: <20230901045742.235975-1-stewart.hildebrand@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE36:EE_|SA3PR12MB9228:EE_
X-MS-Office365-Filtering-Correlation-Id: b2c3caae-94ad-4aa0-0895-08dbaaa86291
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xmVTJfwepUxRAI4b5u7VJxt9BSNe9tL+3Hi6kSQrHajETJ7SW5WWJ6D0DdPDh7Fnxv6baRpww+DbhLkjuw5vgXLYqJ6jOJmwM0VTNmM28+V3ySBp1w4aIhQWFrJyB9EVxSAY8sjeenZys3d44vidsqIFNZUtALYBN0L2sZrP4CeLQg+YxZEULc2GchuTSjE5djW4WK4CCbAuVaoGfGDjzlXmhqCVfhvKDctR1nYm9cXBHdnoltlLV93ErnCKM3q2oUO/LYwp/E9ieLtVBA/28IFpM32j7EYHicUeSaDj7XgEXaLetz/vyvB3g+1FfIaz0FdupgkpObPvJ8J8jouUAA2g8deeqHj8n/xAnTvwVd7iPPfUD/bFY8Tv0at9MXrQZpSEk/q4JxYw9ONAQCPUxzqU+hyM31wnoW0b9Pd2tTeL6/voN4L+5HopHqwIFT3J2IAPah55ykOlR+tXasxJsr8+qENxRU13NjVVgY1Qa3eiYwK4v80bR9Woqxpc+xlUe6dbUCOz/q2Ws9kBRvcHbaOfF/WRFILkusGxrNblv5bSTomr3oESdBBjISfPnDVYD/PPvDaTmD9b+M+Smq0txGiaxixE2AaOFEyI54n5FPfZIdH17vwe3eFNuFjuBbTFFocexkLMFx+nHbWQstC1/WX7ZdZUQqBacRaVXXQfiL1ClHGalhFCB/iSC8iimN2RDzmr6GUAgCa9/OqPW/O2dSQ8CtSDoSU04xNaiTZAfSBz/JbLHezdrimGvqeWlkVyXBSsW+NdrGx6c2Gaazwt6HBscKthfM7jdnCL9acAMfs=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(39860400002)(396003)(376002)(136003)(1800799009)(186009)(451199024)(82310400011)(36840700001)(40470700004)(46966006)(82740400003)(66899024)(356005)(6666004)(40460700003)(36756003)(86362001)(81166007)(36860700001)(40480700001)(47076005)(2616005)(1076003)(2906002)(426003)(336012)(26005)(83380400001)(478600001)(8936002)(70586007)(70206006)(54906003)(8676002)(4326008)(44832011)(5660300002)(41300700001)(6916009)(316002)(36900700001)(357404004);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:38.6863
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b2c3caae-94ad-4aa0-0895-08dbaaa86291
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE36.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR12MB9228

Introduce a handler for the PCI status register, with ability to mask the
capabilities bit. The status register contains reserved bits, read-only bits,
and write-1-to-clear bits, so introduce bitmasks to handle these in vPCI. If a
bit in the bitmask is set, then the special meaning applies:

  res_mask: read as zero, write ignore
  ro_mask: read normal, write ignore
  rw1c_mask: read normal, write 1 to clear

The mask_cap_list flag will be set in a follow-on patch.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v4->v5:
* add support for res_mask
* add support for ro_mask (squash ro_mask patch)
* add constants for reserved, read-only, and rw1c masks

v3->v4:
* move mask_cap_list setting to the capabilities patch
* single pci_conf_read16 in status_read
* align mask_cap_list bitfield in struct vpci_header
* change to rw1c bit mask instead of treating whole register as rw1c
* drop subsystem prefix on renamed add_register function

v2->v3:
* new patch
---
 xen/drivers/vpci/header.c  | 18 +++++++++++++++
 xen/drivers/vpci/vpci.c    | 46 +++++++++++++++++++++++++++++++-------
 xen/include/xen/pci_regs.h |  8 +++++++
 xen/include/xen/vpci.h     | 10 +++++++++
 4 files changed, 74 insertions(+), 8 deletions(-)

diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index 767c1ba718d7..791791e6c9b6 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -413,6 +413,18 @@ static void cf_check cmd_write(
         pci_conf_write16(pdev->sbdf, reg, cmd);
 }
 
+static uint32_t cf_check status_read(const struct pci_dev *pdev,
+                                     unsigned int reg, void *data)
+{
+    struct vpci_header *header = data;
+    uint32_t status = pci_conf_read16(pdev->sbdf, reg);
+
+    if ( header->mask_cap_list )
+        status &= ~PCI_STATUS_CAP_LIST;
+
+    return status;
+}
+
 static void cf_check bar_write(
     const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data)
 {
@@ -544,6 +556,12 @@ static int cf_check init_bars(struct pci_dev *pdev)
     if ( rc )
         return rc;
 
+    rc = vpci_add_register_mask(pdev->vpci, status_read, vpci_hw_write16,
+                                PCI_STATUS, 2, header, PCI_STATUS_RESERVED_MASK,
+                                PCI_STATUS_RO_MASK, PCI_STATUS_RW1C_MASK);
+    if ( rc )
+        return rc;
+
     if ( pdev->ignore_bars )
         return 0;
 
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index 3bec9a4153da..6e6ad4b80a0d 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -29,6 +29,9 @@ struct vpci_register {
     unsigned int offset;
     void *private;
     struct list_head node;
+    uint32_t res_mask;
+    uint32_t ro_mask;
+    uint32_t rw1c_mask;
 };
 
 #ifdef __XEN__
@@ -145,9 +148,16 @@ uint32_t cf_check vpci_hw_read32(
     return pci_conf_read32(pdev->sbdf, reg);
 }
 
-int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
-                      vpci_write_t *write_handler, unsigned int offset,
-                      unsigned int size, void *data)
+void cf_check vpci_hw_write16(
+    const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data)
+{
+    pci_conf_write16(pdev->sbdf, reg, val);
+}
+
+static int add_register(struct vpci *vpci, vpci_read_t *read_handler,
+                        vpci_write_t *write_handler, unsigned int offset,
+                        unsigned int size, void *data, uint32_t res_mask,
+                        uint32_t ro_mask, uint32_t rw1c_mask)
 {
     struct list_head *prev;
     struct vpci_register *r;
@@ -167,6 +177,9 @@ int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
     r->size = size;
     r->offset = offset;
     r->private = data;
+    r->res_mask = res_mask & (0xffffffffU >> (32 - 8 * size));
+    r->ro_mask = ro_mask & (0xffffffffU >> (32 - 8 * size));
+    r->rw1c_mask = rw1c_mask & (0xffffffffU >> (32 - 8 * size));
 
     spin_lock(&vpci->lock);
 
@@ -193,6 +206,23 @@ int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
     return 0;
 }
 
+int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
+                      vpci_write_t *write_handler, unsigned int offset,
+                      unsigned int size, void *data)
+{
+    return add_register(vpci, read_handler, write_handler, offset, size, data,
+                        0, 0, 0);
+}
+
+int vpci_add_register_mask(struct vpci *vpci, vpci_read_t *read_handler,
+                           vpci_write_t *write_handler, unsigned int offset,
+                           unsigned int size, void *data, uint32_t res_mask,
+                           uint32_t ro_mask, uint32_t rw1c_mask)
+{
+    return add_register(vpci, read_handler, write_handler, offset, size, data,
+                        res_mask, ro_mask, rw1c_mask);
+}
+
 int vpci_remove_register(struct vpci *vpci, unsigned int offset,
                          unsigned int size)
 {
@@ -376,6 +406,7 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size)
         }
 
         val = r->read(pdev, r->offset, r->private);
+        val &= ~r->res_mask;
 
         /* Check if the read is in the middle of a register. */
         if ( r->offset < emu.offset )
@@ -407,11 +438,6 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size)
 
 /*
  * Perform a maybe partial write to a register.
- *
- * Note that this will only work for simple registers, if Xen needs to
- * trap accesses to rw1c registers (like the status PCI header register)
- * the logic in vpci_write will have to be expanded in order to correctly
- * deal with them.
  */
 static void vpci_write_helper(const struct pci_dev *pdev,
                               const struct vpci_register *r, unsigned int size,
@@ -424,9 +450,13 @@ static void vpci_write_helper(const struct pci_dev *pdev,
         uint32_t val;
 
         val = r->read(pdev, r->offset, r->private);
+        val &= ~r->res_mask;
+        val &= ~r->rw1c_mask;
         data = merge_result(val, data, size, offset);
     }
 
+    data &= ~r->res_mask;
+    data &= ~r->ro_mask;
     r->write(pdev, r->offset, data & (0xffffffffU >> (32 - 8 * r->size)),
              r->private);
 }
diff --git a/xen/include/xen/pci_regs.h b/xen/include/xen/pci_regs.h
index 84b18736a85d..b7cb200969c6 100644
--- a/xen/include/xen/pci_regs.h
+++ b/xen/include/xen/pci_regs.h
@@ -66,6 +66,14 @@
 #define  PCI_STATUS_REC_MASTER_ABORT	0x2000 /* Set on master abort */
 #define  PCI_STATUS_SIG_SYSTEM_ERROR	0x4000 /* Set when we drive SERR */
 #define  PCI_STATUS_DETECTED_PARITY	0x8000 /* Set on parity error */
+#define  PCI_STATUS_RESERVED_MASK	0x06
+#define  PCI_STATUS_RO_MASK (PCI_STATUS_IMM_READY | PCI_STATUS_INTERRUPT | \
+    PCI_STATUS_CAP_LIST | PCI_STATUS_CAP_LIST | PCI_STATUS_66MHZ | \
+    PCI_STATUS_UDF | PCI_STATUS_FAST_BACK | PCI_STATUS_DEVSEL_MASK)
+#define  PCI_STATUS_RW1C_MASK (PCI_STATUS_PARITY | \
+    PCI_STATUS_SIG_TARGET_ABORT | PCI_STATUS_REC_TARGET_ABORT | \
+    PCI_STATUS_REC_MASTER_ABORT | PCI_STATUS_SIG_SYSTEM_ERROR | \
+    PCI_STATUS_DETECTED_PARITY)
 
 #define PCI_CLASS_REVISION	0x08	/* High 24 bits are class, low 8 revision */
 #define PCI_REVISION_ID		0x08	/* Revision ID */
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 0b8a2a3c745b..0a6c9e19b399 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -37,6 +37,12 @@ int __must_check vpci_add_register(struct vpci *vpci,
                                    vpci_write_t *write_handler,
                                    unsigned int offset, unsigned int size,
                                    void *data);
+int __must_check vpci_add_register_mask(struct vpci *vpci,
+                                        vpci_read_t *read_handler,
+                                        vpci_write_t *write_handler,
+                                        unsigned int offset, unsigned int size,
+                                        void *data, uint32_t res_mask,
+                                        uint32_t ro_mask, uint32_t rw1c_mask);
 int __must_check vpci_remove_register(struct vpci *vpci, unsigned int offset,
                                       unsigned int size);
 
@@ -50,6 +56,8 @@ uint32_t cf_check vpci_hw_read16(
     const struct pci_dev *pdev, unsigned int reg, void *data);
 uint32_t cf_check vpci_hw_read32(
     const struct pci_dev *pdev, unsigned int reg, void *data);
+void cf_check vpci_hw_write16(
+    const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data);
 
 /*
  * Check for pending vPCI operations on this vcpu. Returns true if the vcpu
@@ -94,6 +102,8 @@ struct vpci {
          * upon to know whether BARs are mapped into the guest p2m.
          */
         bool bars_mapped      : 1;
+        /* Store whether to hide all capabilities from the guest. */
+        bool mask_cap_list    : 1;
         /* FIXME: currently there's no support for SR-IOV. */
     } header;
 
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:11:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:11:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594263.927569 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwR9-0001ai-2Q; Fri, 01 Sep 2023 05:11:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594263.927569; Fri, 01 Sep 2023 05:11:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwR8-0001YZ-O7; Fri, 01 Sep 2023 05:11:14 +0000
Received: by outflank-mailman (input) for mailman id 594263;
 Fri, 01 Sep 2023 05:11:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGZ-0000Nr-Q1
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:19 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on20619.outbound.protection.outlook.com
 [2a01:111:f400:7e83::619])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 71b98988-4884-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 07:00:19 +0200 (CEST)
Received: from CYZPR12CA0006.namprd12.prod.outlook.com (2603:10b6:930:8b::22)
 by SJ2PR12MB9114.namprd12.prod.outlook.com (2603:10b6:a03:567::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.20; Fri, 1 Sep
 2023 05:00:13 +0000
Received: from CY4PEPF0000EE3A.namprd03.prod.outlook.com
 (2603:10b6:930:8b:cafe::8) by CYZPR12CA0006.outlook.office365.com
 (2603:10b6:930:8b::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.27 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:13 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3A.mail.protection.outlook.com (10.167.242.14) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 05:00:12 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:10 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:09 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 71b98988-4884-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dr5mBEqYlmHRjj1Im62kymab8EtDJgUc9wueBAxgJggdavG6pukTli+nCzSbI5Q6FA2GLnPQUIot67oWzOQpZwVpReDHGeIvb4K/GEzz1q14g0q4Twn6YiJQTDF06s/otON5Ln3qwkecY+sNOS04BHyRbUS5UFBP1w43USpHQWfqkGIyV96bDOTvE5X6AIpqatYps9eoJwk4hPs5P5hVAfsiTYE3LAfEpjEbKAyuhHoxpPq+DMZOUqxOoTd0lrqYBuE6vV6hRmALEjJS2yVv7oF0TbQUw49zOp025yUlllJX+uGKXZY5iP1J40K/JsgubDXQMRj7AvLADlTTbiLAgg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WEOO1lNx/ONa1/nR//BBauJgW25xq4jXfGIfpWrsOLc=;
 b=k7b2W91nzQFMU6ESbBF1UvA30Fkm9sybCmpyb5lFZ80KKO1HwtFI1E9VnUMwHzy50A6GTMU38YAyCeT71hP+gB9ILxXcnk+3iziYcucEvLJpAD+0Wl6xXRWgAmbQpF3QPcP+YQ/mW1eA+QsKcaE3RTyoLeHR2sFw/gqqCl4Ag1FTGeqb9pdcp5FrAZv6ugeRAEKhrsd3tc7vP6+/ynEPhsH02lHJPFSakDNKycu8jNCdHE/NpBJ1AokSX/3NdmvFxbBzgHhPBHY6P1gfnisbJBvMcmYoWt8GgcQ+bl5Uyny2BWlw6dl/o6LkNQJCQPgAu06wNqYmy0TmGiEaJXygqw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WEOO1lNx/ONa1/nR//BBauJgW25xq4jXfGIfpWrsOLc=;
 b=ARAI2mK0eudpSwKfxdvwb45RpyJcgH1O3rmFk9pR2uXMUVvTZvlQ01qJOJlgchFyAWvrjf443iWb5wEVbaM1//LH9jTc+BMkP5iYT9qu51uf1HjbXlQANPf9ddHW3CTwSlx/q+GmyAfU6wdnHKZQK5QvnItW389ysmoekB00zpM=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v11 09/20] xen/iommu: Move spin_lock from iommu_dt_device_is_assigned to caller
Date: Thu, 31 Aug 2023 21:59:36 -0700
Message-ID: <20230901045947.32351-10-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3A:EE_|SJ2PR12MB9114:EE_
X-MS-Office365-Filtering-Correlation-Id: 8c03ea69-01cf-4958-6586-08dbaaa85330
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7Kd2SX98lWwPVNPqKtEGuM59PRkBCGCpq4TclAqNXgwR3DoBSVEJk+9CQKAsxvrg5w9cciVfOX2E9U6gOdVZtI2HoizZL2anUJKo4pD4fuBvc4seBDuCZC8YMNiwgwQiDZEzBDK8h6J6Xt1E3hwmOBQGp4h5tvva/cE1Tk12hCpvbzV3mF6jQ70XUkX/8eSVs5kk2o/Iyo/VsSwl/piXi97ec4sq+0BClfARgnudKkaVolxyv+J1afcAoFLrI1uIFxmee734KSuKwJfuwTITY+GbCDuyQzebnMTBj6YDqG5G+ooxDM8Y3KKkYoPJXxlxeIeblmrgXUjUVTWMant222Y3Ce8j0nqGVn+ffPl8qx1sqXuMx5xRGwe7cMp9xcT3WZ0RhRkbfw0SC04wxl1iu3P4zFH44ETpxkmYW/L1m6QwKMVb46C5p7KhhGXASfg45GESOr59Lbk+C/LQl36ufayEbPA3conJ0O+1kw+tBcEXhxo+YGRLRKkYlFx7ELxpzjtm0TuWCQl8tGwL5hupL5uMICeLURrSf74RJoj/b6wMHhoJBvGSFNG5Fb4nX3k6FAZ9JbXgqZY83CUWvVmb7QgYez37++xuTrKQ2Sy791WYhyBAkL2XOov5D/o10o03AeUch+nDQ616a4g5142CvaNTE8zQ80UfuXsviP2KNJp2iaDiyrB2EaEZsqjlhiNMwHxOxzYwdyGp4Bqmlh3bRXU+xl+2heuYrh4nUUhDnUyRWVvmOtSHD6ZRn/2ipKf6dgu31oECYJeyKVVvbmCBXA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(136003)(376002)(39860400002)(186009)(82310400011)(451199024)(1800799009)(46966006)(40470700004)(36840700001)(36756003)(2616005)(40460700003)(40480700001)(83380400001)(4326008)(44832011)(86362001)(5660300002)(41300700001)(36860700001)(8936002)(8676002)(6666004)(426003)(336012)(1076003)(26005)(47076005)(478600001)(82740400003)(2906002)(356005)(81166007)(70206006)(70586007)(6916009)(316002)(54906003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:12.8871
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8c03ea69-01cf-4958-6586-08dbaaa85330
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3A.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB9114

Rename iommu_dt_device_is_assigned() to iommu_dt_device_is_assigned_locked().

Moving spin_lock to caller was done to prevent the concurrent access to
iommu_dt_device_is_assigned while doing add/remove/assign/deassign. Follow-up
patches in this series introduces node add/remove feature.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
---
Changes from v10:
    Move spin_lock before iommu_dt_device_is_assigned_locked() call.
    Rebase the patch with latest Xen.
Changes from v9:
    Make iommu_dt_device_is_assigned_locked() static and delete header.
    Move dtdevs_lock before iommu_dt_device_is_assigned_locked().
Changes from v7:
    Update commit message.
    Add ASSERT().
---
---
 xen/drivers/passthrough/device_tree.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index 3c0322c797..a7d86a20a0 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -83,16 +83,16 @@ fail:
     return rc;
 }
 
-static bool iommu_dt_device_is_assigned(const struct dt_device_node *dev)
+static bool iommu_dt_device_is_assigned_locked(const struct dt_device_node *dev)
 {
     bool assigned = false;
 
+    ASSERT(spin_is_locked(&dtdevs_lock));
+
     if ( !dt_device_is_protected(dev) )
         return 0;
 
-    spin_lock(&dtdevs_lock);
     assigned = !list_empty(&dev->domain_list);
-    spin_unlock(&dtdevs_lock);
 
     return assigned;
 }
@@ -225,12 +225,16 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
 
         if ( domctl->cmd == XEN_DOMCTL_test_assign_device )
         {
-            if ( iommu_dt_device_is_assigned(dev) )
+            spin_lock(&dtdevs_lock);
+
+            if ( iommu_dt_device_is_assigned_locked(dev) )
             {
                 printk(XENLOG_G_ERR "%s already assigned.\n",
                        dt_node_full_name(dev));
                 ret = -EINVAL;
             }
+
+            spin_unlock(&dtdevs_lock);
             break;
         }
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:11:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:11:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594265.927586 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwRB-0002Fy-C4; Fri, 01 Sep 2023 05:11:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594265.927586; Fri, 01 Sep 2023 05:11:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwRB-0002Fn-9D; Fri, 01 Sep 2023 05:11:17 +0000
Received: by outflank-mailman (input) for mailman id 594265;
 Fri, 01 Sep 2023 05:11:16 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGZ-0001Hn-Nl
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:19 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on2062a.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::62a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 711858fd-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:18 +0200 (CEST)
Received: from CYZPR12CA0021.namprd12.prod.outlook.com (2603:10b6:930:8b::28)
 by SA1PR12MB8095.namprd12.prod.outlook.com (2603:10b6:806:33f::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6699.35; Fri, 1 Sep
 2023 05:00:14 +0000
Received: from CY4PEPF0000EE3A.namprd03.prod.outlook.com
 (2603:10b6:930:8b:cafe::c5) by CYZPR12CA0021.outlook.office365.com
 (2603:10b6:930:8b::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.25 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:13 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3A.mail.protection.outlook.com (10.167.242.14) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 05:00:13 +0000
Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:08 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com
 (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 22:00:07 -0700
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:07 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 711858fd-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dccIBgjs7bq4UBoNXojMJajOOXWXcHlEyTdhA3hVTib0XBKFCIVs4pxWDfeSi8+QjFNvftDnvueKA2qiY/yi6MxhGsWEzfaOssQVev0CnZ1YMyxAU8J8aNUZbc/RQqVpRKATE8Q6TVxiPOXxZWelaHhVNCDZ1g06sRnG9ke9qpLNp2zyo/ZVfO51NGz0PWYO5x3Lfh1dvB7hgIGE9xBdKh6waeUNVEAg1yDjoHbIk4UCks2kYfH1qBjBU0UccmRcUfwpmzm/eVzJ+O6UBcmUWUgoRq+ct2tLetoN6ETHr3Iub1P5QbK1sYWnWUG58psjqMYNNelksEsEzl+sMcHeCQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+aOH8wbfxJ3CDB9n8z4otIPVVDXaY3ZnHxlpPeTlbO8=;
 b=CsdQVgIk8lVXC89MYuh1VnOveoGXyF73E8F+D6Hyd5QFEZzR4ZVXyVl+Hqtm8pLirV24+Xm2mS714GLY8rI7obimhTGjUaHQul8GjarEXcyTW/2ZfTPftCSeOMZRSjoUS9/SCqk9TamXAvjRg8xZrIA37jgEKaAuDJvsNCwptZIzZqcbZyn2qqcacS6zpvNWa/QtJSw8fRHvmjoPhCiBTzj95NjSxPQrfvogSuqL/lErU9/tt56kTs5lyzhNUBT5499uN7Xck5wi2ZreZ2oXkyyDgyUmkfCnqAzdhY41oc+YIK0NY07xaQFJK3oQHQFFPZryxaNnZ/J5gEZuUM0D0A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+aOH8wbfxJ3CDB9n8z4otIPVVDXaY3ZnHxlpPeTlbO8=;
 b=W2atpgT1FseznPwSfTMWMqm7HLlAHsEsuWu3PrHxODHX8pzoU5i7j/zfmE4vYipMHtG1lHq38++uI7bxS6YfxA80PYLa0tHv4plCgJePRCmGx7mTO3CY7OysGH4vbM3dHwFlSN42jXEVzdTsWtzDGFiDvjXrEZhyMNVpRt4egv8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v11 06/20] libfdt: Keep fdt functions after init for CONFIG_OVERLAY_DTB.
Date: Thu, 31 Aug 2023 21:59:33 -0700
Message-ID: <20230901045947.32351-7-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3A:EE_|SA1PR12MB8095:EE_
X-MS-Office365-Filtering-Correlation-Id: 4e215ad4-03cb-439f-5fd8-08dbaaa853ac
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	SjM3TMUhecCY3pwIcpuRuDVYJmZ8YlmU12LwyewhTk7vAUYAO4tZLlb5HCSgxjMwAjCWweDV1Z3q08QmvwuR1Ykj835122qwEIbki9wzmiMQ3zlbQgw/cZsZvj+fpZ7Su5keY2Cgr66c2VhDwfbDI7pmRexvpezyQdd4iSr703OjChpUeOFgt6DInctulVHztG2NO1Ek8Sj8wtROn7lzu3mzkl/xYoa6Kiw35ecqankbznAQwbjQKjtiqPxzuT1QnVWbfwi5ytTNlAVb7lS/Kq+laoetKKUq5XahTx+KwHZZQP6mJlFqnqi+TeqqMdRXjxRkFl2+uYHRjvll42vMFVRHW0mGB0bmkrRJKGNCqAtHVthk9oiYA4wdLea2plrF4M7BMIyYnEHVe1DQbaGL8npvXeqtgaDqaKSEgCc9PHqm3/CNM3MIN938DMrzls/CA+ZObJb3SijSw+MZksEhYlVTGO6ocUTOUHWN0Ebk/ZMnNdyyO7HX7gxi1FgmdAY/80QPYn+qlOnKza9XWpdidT7dVxegpbuEDF0YRCfHCDm4nDERelY5tt+PASqFHmsYnuW8vAV9DB7P0njFoVEv5Frgpuj6maeWQzGF0qL5AYEN2cDmx6QR9rcTyCnYvwhialFI1DTA5PFu5sPtHZCggUJrC3btZOw8lN0T/gWU/t1/8ikVDs1M9EFEHchQXQAkVrurmXZt/6AbGCavWYW87kECSyP5W6Z4mPVHlyMIS3oNqWbAILiU4B75eCoSiHXv+nAD3XlqIeeirSu8uiMsPg==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(136003)(376002)(396003)(39860400002)(1800799009)(186009)(82310400011)(451199024)(36840700001)(40470700004)(46966006)(356005)(81166007)(82740400003)(8936002)(6666004)(70206006)(70586007)(54906003)(478600001)(316002)(41300700001)(426003)(40460700003)(44832011)(86362001)(8676002)(1076003)(36756003)(26005)(2616005)(83380400001)(47076005)(6916009)(4744005)(40480700001)(36860700001)(2906002)(336012)(5660300002)(4326008)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:13.6996
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4e215ad4-03cb-439f-5fd8-08dbaaa853ac
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3A.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB8095

This is done to access fdt library function which are required for adding device
tree overlay nodes for dynamic programming of nodes.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Acked-by: Julien Grall <jgrall@amazon.com>
---
 xen/common/libfdt/Makefile | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/xen/common/libfdt/Makefile b/xen/common/libfdt/Makefile
index 75aaefa2e3..d50487aa6e 100644
--- a/xen/common/libfdt/Makefile
+++ b/xen/common/libfdt/Makefile
@@ -1,7 +1,11 @@
 include $(src)/Makefile.libfdt
 
 SECTIONS := text data $(SPECIAL_DATA_SECTIONS)
+
+# For CONFIG_OVERLAY_DTB, libfdt functionalities will be needed during runtime.
+ifneq ($(CONFIG_OVERLAY_DTB),y)
 OBJCOPYFLAGS := $(foreach s,$(SECTIONS),--rename-section .$(s)=.init.$(s))
+endif
 
 obj-y += libfdt.o
 nocov-y += libfdt.o
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:11:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:11:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594270.927596 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwRL-0002z5-Rf; Fri, 01 Sep 2023 05:11:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594270.927596; Fri, 01 Sep 2023 05:11:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwRL-0002yn-NH; Fri, 01 Sep 2023 05:11:27 +0000
Received: by outflank-mailman (input) for mailman id 594270;
 Fri, 01 Sep 2023 05:11:26 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGs-0001Hn-Ex
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:38 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on2060b.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::60b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7a990220-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:33 +0200 (CEST)
Received: from CY5P221CA0074.NAMP221.PROD.OUTLOOK.COM (2603:10b6:930:9::11) by
 CY8PR12MB8216.namprd12.prod.outlook.com (2603:10b6:930:78::20) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6699.35; Fri, 1 Sep 2023 05:00:29 +0000
Received: from CY4PEPF0000EE3F.namprd03.prod.outlook.com
 (2603:10b6:930:9:cafe::d8) by CY5P221CA0074.outlook.office365.com
 (2603:10b6:930:9::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.25 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:29 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3F.mail.protection.outlook.com (10.167.242.19) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.17 via Frontend Transport; Fri, 1 Sep 2023 05:00:29 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:28 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:28 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7a990220-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MHvAyuY+eBCVhlY7JBlkvEGrhh2wRBrldKuOhGTS3MJJIoxQGy4r/golspoYSqMzKs6NmAsp/1IruYsCzaEG0wAOvdPrKCRNK+bZpgzhAQy/x8Ak1aXfkj3m2SkGH2looewjf7oMwojDbsUT2uo9sRWpVYSQdM3WTpeWRT6+bgJCUxpGBjFcKkC4oQIZ5QHiQm+HvgJT3BB593BnPQJzGZXB55K2YZCTvDzxXV5wCHg9ZopahmGBpnnbtdevlzrCzr9CQEY3YtMUyrRhCaARKesY7YyHXqMYgvljkdsleZKghT/ktJ48xnmjMsr+p6dcexvwlGKtCbXrHuhtMZ1M6Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=U07oIExPBdAjjT4LN+M3eFjY0zcOWOucXEwjxMGcDw8=;
 b=Xrp04w3Z0rkLEzKcCE2DoKztptEWpbjZ1bjaCx7WdkftOSoWeaOLh1TOwDC2yLOQxEVdHR3WXHE4MR36y3JmfHGIqPPToTXja+JKbwBDTg2dOl/wBhKXQ2c03OPG6mursNdaN6EDVyBmXyFTwtV12vhCWRlVPUxQLmun+u5d4vJROYBtHL9kwigYW6dt0Xysed3D3WLum0eDnkcAXcFA+BOlSLLTTxG2D1DKMnWW+QEhnMmT4UIQ4gT/8d9ftcs4glFDDPAEUu2scs87zb18f7S/5+wPTXZM3G2yQQJXMVp/xwKllBUYXVzuWwpBmc8FZKX7//fpn2XPkrHIbbEieA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=U07oIExPBdAjjT4LN+M3eFjY0zcOWOucXEwjxMGcDw8=;
 b=pQBn/YSbgO7Q/NJn8rj3QSDDDUdtvvQCFH2YVMvpjkbIfoxz3bz8RnWhq64d266qT6e1TsDCkHAST5WBxvAUzc7nB+eYmqyPEKj+gjprs4x6DstIpfqnNmyKnKHve/kBID1oFboC1MdULDkLjNh+zV7h4TOWKjGCdYnuZflUV/A=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v11 17/20] xen/arm: Implement device tree node addition functionalities
Date: Thu, 31 Aug 2023 21:59:44 -0700
Message-ID: <20230901045947.32351-18-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3F:EE_|CY8PR12MB8216:EE_
X-MS-Office365-Filtering-Correlation-Id: 3677762e-9b11-4874-d648-08dbaaa85d2f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	HnEQCcJHgwfIAHefEmgkeLsHXM0tSCCwCE0hBQ4RBxr6jfFYO1Usp5thbkyWnzxP6bHp6dXtatVZNX0zaKzfHG4QS6M5wPAxi4IuMsDUJfuWgphu6wyiaAHlTpItp+hT+0PacvgjtSo/AGgLLmM2MTJH1dMkmvptuUTqM12rViPj+xJnVfRTu5AdU709MKLhDjs4LprQ/HRSN7YqFzzwq9FXeB/YiydceaLNsl3G/RqFx9C2ws0/c9/ixPj/9G2KOQCIeD5Flv2Vv5A2gJzU7PkLj4l4lIBIYtPHPHMcs/rZtqUJEtY2m4SWHm5yavxbx3DS42nYuN0JJMeLKzoKzNxLmHbyeGRAO2XoD83grQUKtvWdeygR5QhN5dgmYfFfbVzCoscef75JlHNm//jJ/cUov8pGiL6KmhoY/y8XwOo1R4/UqG6jXeETSxMlmfkQ/BgZJrW1GVH4sJSbQYVumMToGQJBk/BlBr+5CpeEDQ1jkXl2ik3LdGmTVKhzL9Owl9ecxmXgq/L7Ht61klsxKzEtNJ+Vp39RaPsb9lI1xDXekPKFrg3DEYuJOsh8XzuUWQZs581/I1+thXilYwD9f/w0pXnVI3XP52MvHRao0KIXLZ/ru5zpBWMKvjD6rkvfjuS8FLLtsUDUjlTtDkM3LiWEc/uKHNcy0JiqbxnF6eDMqj2SdfhKedRfvWNQhx1YEb10pkjiwzOpHvezAxH0zyBzOWSvW7POroZLXirSZWJwmQ9sbVBcIwTTbwg2z6EvQN6aZMztHfH+6ggmfTZssg==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(376002)(396003)(346002)(82310400011)(1800799009)(186009)(451199024)(40470700004)(36840700001)(46966006)(8936002)(66899024)(82740400003)(4326008)(6666004)(40480700001)(47076005)(356005)(40460700003)(36756003)(2906002)(81166007)(86362001)(36860700001)(426003)(1076003)(478600001)(336012)(30864003)(8676002)(26005)(54906003)(83380400001)(41300700001)(5660300002)(70586007)(44832011)(70206006)(6916009)(2616005)(316002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:29.6607
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 3677762e-9b11-4874-d648-08dbaaa85d2f
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3F.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB8216

Update sysctl XEN_SYSCTL_dt_overlay to enable support for dtbo nodes addition
using device tree overlay.

xl dt-overlay add file.dtbo:
    Each time overlay nodes are added using .dtbo, a new fdt(memcpy of
    device_tree_flattened) is created and updated with overlay nodes. This
    updated fdt is further unflattened to a dt_host_new. Next, it checks if any
    of the overlay nodes already exists in the dt_host. If overlay nodes doesn't
    exist then find the overlay nodes in dt_host_new, find the overlay node's
    parent in dt_host and add the nodes as child under their parent in the
    dt_host. The node is attached as the last node under target parent.

    Finally, add IRQs, add device to IOMMUs, set permissions and map MMIO for the
    overlay node.

When a node is added using overlay, a new entry is allocated in the
overlay_track to keep the track of memory allocation due to addition of overlay
node. This is helpful for freeing the memory allocated when a device tree node
is removed.

The main purpose of this to address first part of dynamic programming i.e.
making xen aware of new device tree node which means updating the dt_host with
overlay node information. Here we are adding/removing node from dt_host, and
checking/setting IOMMU and IRQ permission but never mapping them to any domain.
Right now, mapping/Un-mapping will happen only when a new domU is
created/destroyed using "xl create".

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>

---
Changes from v10:
    Change int to unsigned int for accessing node_nums.
    Re-organize free_nodes_full_path().
    Change order of calling xfree for err cases.
Changes from v9:
    Remove add_resources() and use handle_device().
Changes from v8:
    Add rangeset to keep IRQs and IOMEM information.
Changes from v7:
    Move overlay_node_count() in this patch.
    Fix indent with goto statements.
    Rename handle_add_irq_iommu() to add_resources().
Changes from v6:
    Fix comment style and add comment regarding false flag in irq mapping.
    Move malloc for nodes_full_path to handle_add_overlay_nodes.
    Move node_num define to start of overlay_get_nodes_info().
    Remove "domain *d" from handle_add_irq_iommu().
    Fix error handling for handle_add_irq_iommu().
    Split handle_add_overlay_nodes to two functions.
    Create a separate function for freeing nodes_full_path.
    Fix xfree for dt_sysctl.
---
---
 xen/common/dt-overlay.c | 495 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 495 insertions(+)

diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c
index 7b7224c29a..d748ea3df0 100644
--- a/xen/common/dt-overlay.c
+++ b/xen/common/dt-overlay.c
@@ -34,6 +34,25 @@ find_last_descendants_node(const struct dt_device_node *device_node)
     return child_node;
 }
 
+/*
+ * Returns next node to the input node. If node has children then return
+ * last descendant's next node.
+*/
+static struct dt_device_node *
+dt_find_next_node(struct dt_device_node *dt, const struct dt_device_node *node)
+{
+    struct dt_device_node *np;
+
+    dt_for_each_device_node(dt, np)
+        if ( np == node )
+            break;
+
+    if ( np->child )
+        np = find_last_descendants_node(np);
+
+    return np->allnext;
+}
+
 static int dt_overlay_remove_node(struct dt_device_node *device_node)
 {
     struct dt_device_node *np;
@@ -111,6 +130,78 @@ static int dt_overlay_remove_node(struct dt_device_node *device_node)
     return 0;
 }
 
+static int dt_overlay_add_node(struct dt_device_node *device_node,
+                               const char *parent_node_path)
+{
+    struct dt_device_node *parent_node;
+    struct dt_device_node *next_node;
+
+    parent_node = dt_find_node_by_path(parent_node_path);
+
+    if ( parent_node == NULL )
+    {
+        dt_dprintk("Parent node %s not found. Overlay node will not be added\n",
+                   parent_node_path);
+        return -EINVAL;
+    }
+
+    /* If parent has no child. */
+    if ( parent_node->child == NULL )
+    {
+        next_node = parent_node->allnext;
+        device_node->parent = parent_node;
+        parent_node->allnext = device_node;
+        parent_node->child = device_node;
+    }
+    else
+    {
+        struct dt_device_node *np;
+        /*
+         * If parent has at least one child node.
+         * Iterate to the last child node of parent.
+         */
+        for ( np = parent_node->child; np->sibling != NULL; np = np->sibling );
+
+        /* Iterate over all child nodes of np node. */
+        if ( np->child )
+        {
+            struct dt_device_node *np_last_descendant;
+
+            np_last_descendant = find_last_descendants_node(np);
+
+            next_node = np_last_descendant->allnext;
+            np_last_descendant->allnext = device_node;
+        }
+        else
+        {
+            next_node = np->allnext;
+            np->allnext = device_node;
+        }
+
+        device_node->parent = parent_node;
+        np->sibling = device_node;
+        np->sibling->sibling = NULL;
+    }
+
+    /* Iterate over all child nodes of device_node to add children too. */
+    if ( device_node->child )
+    {
+        struct dt_device_node *device_node_last_descendant;
+
+        device_node_last_descendant = find_last_descendants_node(device_node);
+
+        /* Plug next_node at the end of last children of device_node. */
+        device_node_last_descendant->allnext = next_node;
+    }
+    else
+    {
+        /* Now plug next_node at the end of device_node. */
+        device_node->allnext = next_node;
+    }
+
+    return 0;
+}
+
 /* Basic sanity check for the dtbo tool stack provided to Xen. */
 static int check_overlay_fdt(const void *overlay_fdt, uint32_t overlay_fdt_size)
 {
@@ -171,6 +262,102 @@ static int iomem_remove_cb(unsigned long s, unsigned long e, void *dom,
     return rc;
 }
 
+/* Count number of nodes till one level of __overlay__ tag. */
+static unsigned int overlay_node_count(const void *overlay_fdt)
+{
+    unsigned int num_overlay_nodes = 0;
+    int fragment;
+
+    fdt_for_each_subnode(fragment, overlay_fdt, 0)
+    {
+        int subnode;
+        int overlay;
+
+        overlay = fdt_subnode_offset(overlay_fdt, fragment, "__overlay__");
+
+        /*
+         * overlay value can be < 0. But fdt_for_each_subnode() loop checks for
+         * overlay >= 0. So, no need for a overlay>=0 check here.
+         */
+        fdt_for_each_subnode(subnode, overlay_fdt, overlay)
+        {
+            num_overlay_nodes++;
+        }
+    }
+
+    return num_overlay_nodes;
+}
+
+/*
+ * overlay_get_nodes_info gets full name with path for all the nodes which
+ * are in one level of __overlay__ tag. This is useful when checking node for
+ * duplication i.e. dtbo tries to add nodes which already exists in device tree.
+ */
+static int overlay_get_nodes_info(const void *fdto, char **nodes_full_path)
+{
+    int fragment;
+    unsigned int node_num = 0;
+
+    fdt_for_each_subnode(fragment, fdto, 0)
+    {
+        int target;
+        int overlay;
+        int subnode;
+        const char *target_path;
+
+        target = fdt_overlay_target_offset(device_tree_flattened, fdto,
+                                           fragment, &target_path);
+        if ( target < 0 )
+            return target;
+
+        if ( target_path == NULL )
+            return -EINVAL;
+
+        overlay = fdt_subnode_offset(fdto, fragment, "__overlay__");
+
+        /*
+         * overlay value can be < 0. But fdt_for_each_subnode() loop checks for
+         * overlay >= 0. So, no need for a overlay>=0 check here.
+         */
+        fdt_for_each_subnode(subnode, fdto, overlay)
+        {
+            const char *node_name = NULL;
+            int node_name_len;
+            unsigned int target_path_len = strlen(target_path);
+            unsigned int node_full_name_len;
+
+            node_name = fdt_get_name(fdto, subnode, &node_name_len);
+
+            if ( node_name == NULL )
+                return node_name_len;
+
+            /*
+             * Magic number 2 is for adding '/' and '\0'. This is done to keep
+             * the node_full_path in the correct full node name format.
+             */
+            node_full_name_len = target_path_len + node_name_len + 2;
+
+            nodes_full_path[node_num] = xmalloc_bytes(node_full_name_len);
+
+            if ( nodes_full_path[node_num] == NULL )
+                return -ENOMEM;
+
+            memcpy(nodes_full_path[node_num], target_path, target_path_len);
+
+            nodes_full_path[node_num][target_path_len] = '/';
+
+            memcpy(nodes_full_path[node_num] + target_path_len + 1,
+                    node_name, node_name_len);
+
+            nodes_full_path[node_num][node_full_name_len - 1] = '\0';
+
+            node_num++;
+        }
+    }
+
+    return 0;
+}
+
 /* Check if node itself can be removed and remove node from IOMMU. */
 static int remove_node_resources(struct dt_device_node *device_node)
 {
@@ -359,6 +546,312 @@ static long handle_remove_overlay_nodes(const void *overlay_fdt,
     return rc;
 }
 
+static void free_nodes_full_path(unsigned int num_nodes, char **nodes_full_path)
+{
+    unsigned int i;
+
+    if ( nodes_full_path != NULL )
+        return;
+
+    for ( i = 0; i < num_nodes && nodes_full_path[i] != NULL; i++ )
+    {
+        xfree(nodes_full_path[i]);
+    }
+
+    xfree(nodes_full_path);
+}
+
+static long add_nodes(struct overlay_track *tr, char **nodes_full_path)
+
+{
+    int rc;
+    unsigned int j;
+    struct dt_device_node *overlay_node;
+
+    for ( j = 0; j < tr->num_nodes; j++ )
+    {
+        struct dt_device_node *prev_node, *next_node;
+
+        dt_dprintk("Adding node: %s\n", nodes_full_path[j]);
+
+        /* Find the newly added node in tr->dt_host_new by it's full path. */
+        overlay_node = dt_find_node_by_path_from(tr->dt_host_new,
+                                                 nodes_full_path[j]);
+        if ( overlay_node == NULL )
+        {
+            /* Sanity check. But code will never come here. */
+            ASSERT_UNREACHABLE();
+            return -EFAULT;
+        }
+
+        /*
+         * Find previous and next node to overlay_node in dt_host_new. We will
+         * need these nodes to fix the dt_host_new mapping. When overlay_node is
+         * take out of dt_host_new tree and added to dt_host, link between
+         * previous node and next_node is broken. We will need to refresh
+         * dt_host_new with correct linking for any other overlay nodes
+         * extraction in future.
+         */
+        dt_for_each_device_node(tr->dt_host_new, prev_node)
+            if ( prev_node->allnext == overlay_node )
+                break;
+
+        next_node = dt_find_next_node(tr->dt_host_new, overlay_node);
+
+        write_lock(&dt_host_lock);
+
+        /* Add the node to dt_host. */
+        rc = dt_overlay_add_node(overlay_node, overlay_node->parent->full_name);
+        if ( rc )
+        {
+            write_unlock(&dt_host_lock);
+
+            /* Node not added in dt_host. */
+            return rc;
+        }
+
+        write_unlock(&dt_host_lock);
+
+        prev_node->allnext = next_node;
+
+        overlay_node = dt_find_node_by_path(overlay_node->full_name);
+        if ( overlay_node == NULL )
+        {
+            /* Sanity check. But code will never come here. */
+            ASSERT_UNREACHABLE();
+            return -EFAULT;
+        }
+
+        rc = handle_device(hardware_domain, overlay_node, p2m_mmio_direct_c,
+                           tr->iomem_ranges,
+                           tr->irq_ranges);
+        if ( rc )
+        {
+            printk(XENLOG_ERR "Adding IRQ and IOMMU failed\n");
+            return rc;
+        }
+
+        /* Keep overlay_node address in tracker. */
+        tr->nodes_address[j] = (unsigned long)overlay_node;
+    }
+
+    return 0;
+}
+/*
+ * Adds device tree nodes under target node.
+ * We use tr->dt_host_new to unflatten the updated device_tree_flattened. This
+ * is done to avoid the removal of device_tree generation, iomem regions mapping
+ * to hardware domain done by handle_node().
+ */
+static long handle_add_overlay_nodes(void *overlay_fdt,
+                                     uint32_t overlay_fdt_size)
+{
+    int rc;
+    unsigned int j;
+    struct dt_device_node *overlay_node;
+    struct overlay_track *tr = NULL;
+    char **nodes_full_path = NULL;
+    unsigned int new_fdt_size;
+
+    tr = xzalloc(struct overlay_track);
+    if ( tr == NULL )
+        return -ENOMEM;
+
+    new_fdt_size = fdt_totalsize(device_tree_flattened) +
+                                 fdt_totalsize(overlay_fdt);
+
+    tr->fdt = xzalloc_bytes(new_fdt_size);
+    if ( tr->fdt == NULL )
+    {
+        xfree(tr);
+        return -ENOMEM;
+    }
+
+    tr->num_nodes = overlay_node_count(overlay_fdt);
+    if ( tr->num_nodes == 0 )
+    {
+        xfree(tr->fdt);
+        xfree(tr);
+        return -ENOMEM;
+    }
+
+    tr->nodes_address = xzalloc_bytes(tr->num_nodes * sizeof(unsigned long));
+    if ( tr->nodes_address == NULL )
+    {
+        xfree(tr->fdt);
+        xfree(tr);
+        return -ENOMEM;
+    }
+
+    rc = check_overlay_fdt(overlay_fdt, overlay_fdt_size);
+    if ( rc )
+    {
+        xfree(tr->nodes_address);
+        xfree(tr->fdt);
+        xfree(tr);
+        return rc;
+    }
+
+    /*
+     * Keep a copy of overlay_fdt as fdt_overlay_apply will change the input
+     * overlay's content(magic) when applying overlay.
+     */
+    tr->overlay_fdt = xzalloc_bytes(overlay_fdt_size);
+    if ( tr->overlay_fdt == NULL )
+    {
+        xfree(tr->nodes_address);
+        xfree(tr->fdt);
+        xfree(tr);
+        return -ENOMEM;
+    }
+
+    memcpy(tr->overlay_fdt, overlay_fdt, overlay_fdt_size);
+
+    spin_lock(&overlay_lock);
+
+    memcpy(tr->fdt, device_tree_flattened,
+           fdt_totalsize(device_tree_flattened));
+
+    /* Open tr->fdt with more space to accommodate the overlay_fdt. */
+    rc = fdt_open_into(tr->fdt, tr->fdt, new_fdt_size);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "Increasing fdt size to accommodate overlay_fdt failed with error %d\n",
+               rc);
+        goto err;
+    }
+
+    nodes_full_path = xzalloc_bytes(tr->num_nodes * sizeof(char *));
+    if ( nodes_full_path == NULL )
+    {
+        rc = -ENOMEM;
+        goto err;
+    }
+
+    /*
+     * overlay_get_nodes_info is called to get the node information from dtbo.
+     * This is done before fdt_overlay_apply() because the overlay apply will
+     * erase the magic of overlay_fdt.
+     */
+    rc = overlay_get_nodes_info(overlay_fdt, nodes_full_path);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "Getting nodes information failed with error %d\n",
+               rc);
+        goto err;
+    }
+
+    rc = fdt_overlay_apply(tr->fdt, overlay_fdt);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "Adding overlay node failed with error %d\n", rc);
+        goto err;
+    }
+
+    /*
+     * Check if any of the node already exists in dt_host. If node already exits
+     * we can return here as this overlay_fdt is not suitable for overlay ops.
+     */
+    for ( j = 0; j < tr->num_nodes; j++ )
+    {
+        overlay_node = dt_find_node_by_path(nodes_full_path[j]);
+        if ( overlay_node != NULL )
+        {
+            printk(XENLOG_ERR "node %s exists in device tree\n",
+                   nodes_full_path[j]);
+            rc = -EINVAL;
+            goto err;
+        }
+    }
+
+    /*
+     * Unflatten the tr->fdt into a new dt_host.
+     * TODO: Check and add alias_scan() if it's needed for overlay in future.
+     */
+    rc = unflatten_device_tree(tr->fdt, &tr->dt_host_new);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "unflatten_device_tree failed with error %d\n", rc);
+        goto err;
+    }
+
+    tr->irq_ranges = rangeset_new(hardware_domain, "Overlays: Interrupts", 0);
+    if (tr->irq_ranges == NULL)
+    {
+        printk(XENLOG_ERR "Creating IRQ rangeset failed");
+        goto err;
+    }
+
+    tr->iomem_ranges = rangeset_new(hardware_domain, "Overlay: I/O Memory", 0);
+    if (tr->iomem_ranges == NULL)
+    {
+        printk(XENLOG_ERR "Creating IOMMU rangeset failed");
+        goto err;
+    }
+
+    rc = add_nodes(tr, nodes_full_path);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "Adding nodes failed. Removing the partially added nodes.\n");
+        goto remove_node;
+    }
+
+    INIT_LIST_HEAD(&tr->entry);
+    list_add_tail(&tr->entry, &overlay_tracker);
+
+    spin_unlock(&overlay_lock);
+
+    free_nodes_full_path(tr->num_nodes, nodes_full_path);
+
+    return rc;
+
+/*
+ * Failure case. We need to remove the nodes, free tracker(if tr exists) and
+ * tr->dt_host_new.
+ */
+ remove_node:
+    tr->num_nodes = j;
+    rc = remove_nodes(tr);
+
+    if ( rc )
+    {
+        /*
+         * User needs to provide right overlay. Incorrect node information
+         * example parent node doesn't exist in dt_host etc can cause memory
+         * leaks as removing_nodes() will fail and this means nodes memory is
+         * not freed from tracker. Which may cause memory leaks. Ideally, these
+         * device tree related mistakes will be caught by fdt_overlay_apply()
+         * but given that we don't manage that code keeping this warning message
+         * is better here.
+         */
+        printk(XENLOG_ERR "Removing node failed.\n");
+        spin_unlock(&overlay_lock);
+
+        free_nodes_full_path(tr->num_nodes, nodes_full_path);
+
+        return rc;
+    }
+
+ err:
+    spin_unlock(&overlay_lock);
+
+    if ( tr->dt_host_new )
+        xfree(tr->dt_host_new);
+
+    free_nodes_full_path(tr->num_nodes, nodes_full_path);
+
+    xfree(tr->overlay_fdt);
+    xfree(tr->nodes_address);
+    xfree(tr->fdt);
+
+    rangeset_destroy(tr->irq_ranges);
+    rangeset_destroy(tr->iomem_ranges);
+
+    xfree(tr);
+
+    return rc;
+}
+
 long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op)
 {
     long ret;
@@ -390,6 +883,8 @@ long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op)
 
     if ( op->overlay_op == XEN_SYSCTL_DT_OVERLAY_REMOVE )
         ret = handle_remove_overlay_nodes(overlay_fdt, op->overlay_fdt_size);
+    else
+        ret = handle_add_overlay_nodes(overlay_fdt, op->overlay_fdt_size);
 
     xfree(overlay_fdt);
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:11:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:11:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594272.927602 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwRM-00033b-9I; Fri, 01 Sep 2023 05:11:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594272.927602; Fri, 01 Sep 2023 05:11:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwRM-00032s-37; Fri, 01 Sep 2023 05:11:28 +0000
Received: by outflank-mailman (input) for mailman id 594272;
 Fri, 01 Sep 2023 05:11:26 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGn-0001Hn-Ds
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:33 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20612.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::612])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 79449440-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:31 +0200 (CEST)
Received: from CY5PR19CA0085.namprd19.prod.outlook.com (2603:10b6:930:83::9)
 by IA0PR12MB9010.namprd12.prod.outlook.com (2603:10b6:208:48e::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.20; Fri, 1 Sep
 2023 05:00:28 +0000
Received: from CY4PEPF0000EE34.namprd05.prod.outlook.com
 (2603:10b6:930:83:cafe::d5) by CY5PR19CA0085.outlook.office365.com
 (2603:10b6:930:83::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6699.36 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:27 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000EE34.mail.protection.outlook.com (10.167.242.40) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.17 via Frontend Transport; Fri, 1 Sep 2023 05:00:27 +0000
Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:26 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com
 (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 22:00:14 -0700
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:14 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 79449440-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gfZo7KZhLvVDthkBZjr4z6Is4q0UFGKOKCsNb7xrK4Fwae0YZVdxoxMLJfLpo8ZJGLS1mh5Li4Pg9uScT1XDX6lncr8SKwR4W97xjcDX8h9C4Ye4iZVv+IBmyGFk1fiCnYXbBDIIhGrKaSZOxzJy3BQB6dlwDX7GuYVSYBgSSF+WdYoZFLyvPURP1DS2zHUHK0uGOeDQ+WTf+Dg7sxxsPZAYPy0WMccra136hmHqTTRmnRYY7CTjidR0Kxgyhvw2a6Xj1mgfzaFal+bsf8z5SEihMhps2x7HoWP70dD0Fx3/TJSLovsHbMuethM4SnFQErbB+nO0fSxwOIVnOZYsCg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jHjqTJ1UaUiiJx0UNTFIv0uoiG+uui8ndyNCkHPJ/Yg=;
 b=hllnZopp2EQJWo2615T2uaFsDmL5eLMT7FrWXxWQBt6ZoTrTtsGT5LVIqhF2BqBfKHrY449+NnU6mvt9fdKIcsvhHLRo5hInDiHyHpZJJ9tY7wJxxwaijyj3DOHe025XUcJSrs1rNKyCCWJXYsatK+n4hwGh4B7kDXVti+1XXoMZOCOLmXLG5H9hX40VkAFWXszhElZ723hNwRFbf3hxyScVI/lUrXREaN2zo0BRJGd8M8v7k7C3LXqAH/RW23JwXVc+4k/ZVpauemyVyf5vkw9pd1KgLodOPKW0TQPpNIseslpMtovYFfsjwZDDBp35KtZBZ1ld7SkXSuo4QxPt/w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jHjqTJ1UaUiiJx0UNTFIv0uoiG+uui8ndyNCkHPJ/Yg=;
 b=lIhXTlYpnCmkiAq4Ev2XrDZ4zRP/KDrT9XzxToTYNam+PHW44FerL77yKXwpqEvf4udMSj8jGO8wwNpZR05TNcsYf7NCITR6ZDG2w2yD4K/jBrSa7oWE8+gulHRuRsMHrQtjevnEyEVP6WKR3NRfCL6PsrkSQQl2TLbRMlIlhsQ=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v11 14/20] common/device_tree: Add rwlock for dt_host
Date: Thu, 31 Aug 2023 21:59:41 -0700
Message-ID: <20230901045947.32351-15-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE34:EE_|IA0PR12MB9010:EE_
X-MS-Office365-Filtering-Correlation-Id: 27587e69-0acf-4bcb-d40b-08dbaaa85be7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	q7xsWm37SwrKiJXG/zuGJxpK9OucMlZD9lbw8WhXjfBSQlOXraC6Kw4ZSRnhb1HEZZTvWzRmNYnmc8yj0mwEMWqFzoq1h7PKpuq9EXaNt3WhJPzLH2T5Tyt6NoJ2QkE+SXgylBCEArLWBO+K7IfwwZLQe74j6L90CfjGWseXaR9dSEvVTIqgIH8Qz+EiXekFdT+RgczF34dnWpLlCilQLxmZy4MfwR4Q186iV09W2kVivILohrLDTzRo0orZky8SZnBouyYAAwCvMDnHhWSKvljO4358RR3+ywLFdi84RaWLNiQ7apYaUlm/7oYRcw8TGlULciZiurqXlaQKwydgsnFZTVad5LJr/cquATsNhpsYXSwrteWaaeeGTnNbhlqILiEGyjmE2/5AqEB3mmH66oKsCb6MV9CuX4CTIBxvdGnux8CvmuTc2CS6a4ci/ToCJH6QfMzVzlH1FMy8lk00iKHpBbzs+9EWhBFZqYQhQAgqgZSqyeiEKysQ+VRd/vVv3OuvoyOa2z4X0Ta2AFWNCoVrxN/vbRVXOdNh3U5Dx7lyYyw9QN+PM7xsg9JstxzYH88nbFg7fODZjmvduUhmbo9Tsv0Ay+EHRnptM3bWBkIHcz3BS5F7xvPymB7wxzQPoFFUN9x+4g3beqRi+WTzilnGcrrZDiiA3UZdRFWRPEN+fOaN5WTQWTAf/BtbYxzNYsrLSgGPnVkUP6J45zRQVwxeo2reoRcZFhjc6QJa6I+nieMz+2PZzx3GZoDritwhWt1u4F67M7sNhOn4x8n4vQ==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(376002)(39860400002)(136003)(451199024)(1800799009)(186009)(82310400011)(40470700004)(46966006)(36840700001)(70206006)(2906002)(36756003)(5660300002)(86362001)(44832011)(40460700003)(82740400003)(356005)(81166007)(40480700001)(36860700001)(47076005)(4326008)(8676002)(336012)(41300700001)(8936002)(83380400001)(426003)(1076003)(2616005)(26005)(316002)(54906003)(6666004)(478600001)(70586007)(6916009)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:27.5267
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 27587e69-0acf-4bcb-d40b-08dbaaa85be7
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE34.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB9010

Dynamic programming ops will modify the dt_host and there might be other
functions which are browsing the dt_host at the same time. To avoid the race
conditions, adding rwlock for browsing the dt_host during runtime. dt_host
writer will be added in the follow-up patch for device tree overlay
functionalities.

Reason behind adding rwlock instead of spinlock:
    For now, dynamic programming is the sole modifier of dt_host in Xen during
    run time. All other access functions like iommu_release_dt_device() are
    just reading the dt_host during run-time. So, there is a need to protect
    others from browsing the dt_host while dynamic programming is modifying
    it. rwlock is better suitable for this task as spinlock won't be able to
    differentiate between read and write access.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
---
Changes from v10:
    Add ASSERT for iommu_assign_dt_device() and iommu_add_dt_device().
Changes from v9:
    Update commit message and fix indentation.
    Add ASSERT() for iommu_deassign_dt_device() and iommu_remove_dt_device().
    Fix code styles.
    Remove rwlock_init in unflatten_device_tree() and do DEFINE_RWLOCK in
        device-tree.c
Changes from v7:
    Keep one lock for dt_host instead of lock for each node under dt_host.
---
---
 xen/common/device_tree.c              |  1 +
 xen/drivers/passthrough/device_tree.c | 28 +++++++++++++++++++++++++--
 xen/include/xen/device_tree.h         |  7 +++++++
 3 files changed, 34 insertions(+), 2 deletions(-)

diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index f38f51ec0b..b1c2952951 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -31,6 +31,7 @@ dt_irq_xlate_func dt_irq_xlate;
 struct dt_device_node *dt_host;
 /* Interrupt controller node*/
 const struct dt_device_node *dt_interrupt_controller;
+DEFINE_RWLOCK(dt_host_lock);
 
 /**
  * struct dt_alias_prop - Alias property in 'aliases' node
diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index 80f6efc606..1f9cfccf95 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -31,6 +31,8 @@ int iommu_assign_dt_device(struct domain *d, struct dt_device_node *dev)
     int rc = -EBUSY;
     struct domain_iommu *hd = dom_iommu(d);
 
+    ASSERT(system_state <= SYS_STATE_active || rw_is_locked(&dt_host_lock));
+
     if ( !is_iommu_enabled(d) )
         return -EINVAL;
 
@@ -62,6 +64,8 @@ int iommu_deassign_dt_device(struct domain *d, struct dt_device_node *dev)
     const struct domain_iommu *hd = dom_iommu(d);
     int rc;
 
+    ASSERT(rw_is_locked(&dt_host_lock));
+
     if ( !is_iommu_enabled(d) )
         return -EINVAL;
 
@@ -113,6 +117,8 @@ int iommu_release_dt_devices(struct domain *d)
     if ( !is_iommu_enabled(d) )
         return 0;
 
+    read_lock(&dt_host_lock);
+
     list_for_each_entry_safe(dev, _dev, &hd->dt_devices, domain_list)
     {
         rc = iommu_deassign_dt_device(d, dev);
@@ -120,10 +126,14 @@ int iommu_release_dt_devices(struct domain *d)
         {
             dprintk(XENLOG_ERR, "Failed to deassign %s in domain %u\n",
                     dt_node_full_name(dev), d->domain_id);
+            read_unlock(&dt_host_lock);
+
             return rc;
         }
     }
 
+    read_unlock(&dt_host_lock);
+
     return 0;
 }
 
@@ -133,6 +143,8 @@ int iommu_remove_dt_device(struct dt_device_node *np)
     struct device *dev = dt_to_dev(np);
     int rc;
 
+    ASSERT(rw_is_locked(&dt_host_lock));
+
     if ( !iommu_enabled )
         return 1;
 
@@ -177,6 +189,8 @@ int iommu_add_dt_device(struct dt_device_node *np)
     struct device *dev = dt_to_dev(np);
     int rc = 1, index = 0;
 
+    ASSERT(system_state <= SYS_STATE_active || rw_is_locked(&dt_host_lock));
+
     if ( !iommu_enabled )
         return 1;
 
@@ -249,6 +263,8 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
     int ret;
     struct dt_device_node *dev;
 
+    read_lock(&dt_host_lock);
+
     switch ( domctl->cmd )
     {
     case XEN_DOMCTL_assign_device:
@@ -289,7 +305,10 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
         }
 
         if ( d == dom_io )
-            return -EINVAL;
+        {
+            ret = -EINVAL;
+            break;
+        }
 
         ret = iommu_add_dt_device(dev);
         if ( ret < 0 )
@@ -327,7 +346,10 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
             break;
 
         if ( d == dom_io )
-            return -EINVAL;
+        {
+            ret = -EINVAL;
+            break;
+        }
 
         ret = iommu_deassign_dt_device(d, dev);
 
@@ -342,5 +364,7 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
         break;
     }
 
+    read_unlock(&dt_host_lock);
+
     return ret;
 }
diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h
index 44d315c8ba..a262bba2ed 100644
--- a/xen/include/xen/device_tree.h
+++ b/xen/include/xen/device_tree.h
@@ -18,6 +18,7 @@
 #include <xen/string.h>
 #include <xen/types.h>
 #include <xen/list.h>
+#include <xen/rwlock.h>
 
 #define DEVICE_TREE_MAX_DEPTH 16
 
@@ -218,6 +219,12 @@ extern struct dt_device_node *dt_host;
  */
 extern const struct dt_device_node *dt_interrupt_controller;
 
+/*
+ * Lock that protects r/w updates to unflattened device tree i.e. dt_host during
+ * runtime. Lock may not be taken for boot only code.
+ */
+extern rwlock_t dt_host_lock;
+
 /**
  * Find the interrupt controller
  * For the moment we handle only one interrupt controller: the first
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:11:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:11:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594283.927616 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwRT-0004Dv-PJ; Fri, 01 Sep 2023 05:11:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594283.927616; Fri, 01 Sep 2023 05:11:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwRT-0004Dd-LL; Fri, 01 Sep 2023 05:11:35 +0000
Received: by outflank-mailman (input) for mailman id 594283;
 Fri, 01 Sep 2023 05:11:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGo-0000Nr-HJ
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:34 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on2061c.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::61c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7a61ee8d-4884-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 07:00:32 +0200 (CEST)
Received: from CY5PR19CA0104.namprd19.prod.outlook.com (2603:10b6:930:83::21)
 by LV3PR12MB9410.namprd12.prod.outlook.com (2603:10b6:408:212::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.21; Fri, 1 Sep
 2023 05:00:29 +0000
Received: from CY4PEPF0000EE34.namprd05.prod.outlook.com
 (2603:10b6:930:83:cafe::f8) by CY5PR19CA0104.outlook.office365.com
 (2603:10b6:930:83::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.25 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:29 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000EE34.mail.protection.outlook.com (10.167.242.40) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.17 via Frontend Transport; Fri, 1 Sep 2023 05:00:29 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:28 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:28 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:27 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7a61ee8d-4884-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Px90ePQurEEV1jICaBhJlQVa72gDDNE0vlxzoZIcXhxcFtQJhS3FLPYgWveg/ZZLfYaH42Vf8Faz9b0aogJ98kv2qhMkKgextnvfx0piXAX6NobwxrFP1rbWPpNey00QGnoniwTq5rKNR+12pq32diB0rv8NgIOwHGU4HP22e4DFstuO1S3m6xWDeddw/ljkaha2IDehGClb8llg76R5McFHHOo+fL4Btj1dFrSPnhHfCAe8wM8wvZqr+SX2aq5vIigzToR+acntuZrkLCVxJMoCrcrkmR86PO/ufWkKznAZ6gAS5T06Ur+Z+o+JzGLqXEK2w4Qui1f1GV6a0N1MDQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zNgVOKlUw7+tkGNpzY9AQb7DzcxioZaMnr7HSCVji8M=;
 b=YcdeoyjzDi/5GDP3kLPzTr/pR8FQ/D6N75cCN+03FPImDqG0zvUsbbYXCiwXx70/cCFPrxrnDC0JjcOPYQm/bTGPT3b7kZT19Y2rIEQncgV2w6N9IClDUHxJAi4K0yHZeTdLdrWqhl2MyNrqjXv8rGalZFNxYIkMUSzkCeoDSWP/pZWfFpT2ahh42ky+HCbDWOtSLqwcIbP07a8PXGChYRBtBm9vV64oMrqifXcFTRFTM5vwbYoPkH5pttl7Rgl0vNm4FT10wu3NwYcKSe0IOOhnFAAB1Py/815F3AHLmQ2yng20oWzX9PuQwIeFUT3QHaivnM5mWoLh2j3djqANtg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zNgVOKlUw7+tkGNpzY9AQb7DzcxioZaMnr7HSCVji8M=;
 b=ARzfeZYeaSbwZHvcFJR8btAsjC6azR+aABfQhScBIvT0y+jCYciNjADrSOejKdGPirCWDCr4lxO/ENJZSaqw2CbWXKoH3O6Xm2gfoWDzKIgVMMnIX2MTIJIC/a027PoEzHZbMhnlHMQaaGhXoF2ZvMYqJXGfcEe0tBdRJdVdlOo=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Andrew Cooper <andrew.cooper3@citrix.com>, "George
 Dunlap" <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Wei Liu
	<wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
Subject: [XEN][PATCH v11 16/20] xen/arm: Implement device tree node removal functionalities
Date: Thu, 31 Aug 2023 21:59:43 -0700
Message-ID: <20230901045947.32351-17-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE34:EE_|LV3PR12MB9410:EE_
X-MS-Office365-Filtering-Correlation-Id: 5c0aac3b-4de8-4fe8-3f86-08dbaaa85cd6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	tDsQoRVCny+VBKb4OWE3WEAWZhLVHSazlWQ/uuC/WteowIFhRzL/d99d7l3Wq+irLXI54sNjGPUx/ctKTJ88guJOAHsdNjaeHViqVQBU+TBJMb8IH3dfaH+z50F7DCqviDZKoX3ToD2avwCikgEihhMYhRd3YY5Tpf44dGbjGpTrEmrAiJGfeHKZ8CfjX+se48hfapfgoyeHdXPS0/LWB/YF/bvrK3jfM21/6JUDrcc80iwAPiHN2DvXcdnPSxZmMRIL8nwXVzjImAaoJTu9RRwlGxBO2QIACaWKUG/BGtZRLngce5d/wKtyHhFsukDNchRSqIWd/LuYryBeyZnHqWIlcjro+IOpIJoRhj1YlNtvsMJmg3w9gHg+fB1DNbjQJ1atf7lxbVIEkFVz/F4wpa7RgKwZpxqnwS1x5DbNHF5J3Y8zR0D6DQYAJC0KbSe2eScjCQw1PUfC2+rc9CkHf+6tlPParr2x7YEtGY8cS2zvF6s09SWjfylbDxs/JHSOqMV2E4jAm4cP9jHIBoJ9O7pvh1IzjvpngArAnigmK3E0RtRQqe1k4xSczOBN6HX5g843m0qvTvMWYhTVjv1ixVoRLrXiGjYDdGbvNNobD8yepe/GV5D+OtzV59atN/jjrFJ5U0gfTOAE+in5el/wwIjgyymuSxbNEp92Fx8r0s0Qi8FIxsDXsEK9PSBOdVa7S+yH0GGr8KIW1mbDeyw2KUhIq8fPDbSvXsZMmBJ8kn//ISB7EnaaXPGcaqieKuZJq1ADR6JkpJcNjOglxHL/34YXZTKCZf0zZa1RdntOpCHzVPo8RIW6zVez5EbB0Zjs
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(396003)(346002)(376002)(136003)(1800799009)(186009)(451199024)(82310400011)(36840700001)(46966006)(40470700004)(356005)(82740400003)(6666004)(36756003)(40460700003)(36860700001)(86362001)(81166007)(47076005)(40480700001)(2616005)(1076003)(30864003)(2906002)(426003)(336012)(26005)(83380400001)(478600001)(70586007)(70206006)(8936002)(54906003)(8676002)(4326008)(44832011)(5660300002)(41300700001)(6916009)(316002)(333604002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:29.0579
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5c0aac3b-4de8-4fe8-3f86-08dbaaa85cd6
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE34.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV3PR12MB9410

Introduce sysctl XEN_SYSCTL_dt_overlay to remove device-tree nodes added using
device tree overlay.

xl dt-overlay remove file.dtbo:
    Removes all the nodes in a given dtbo.
    First, removes IRQ permissions and MMIO accesses. Next, it finds the nodes
    in dt_host and delete the device node entries from dt_host.

    The nodes get removed only if it is not used by any of dom0 or domio.

Also, added overlay_track struct to keep the track of added node through device
tree overlay. overlay_track has dt_host_new which is unflattened form of updated
fdt and name of overlay nodes. When a node is removed, we also free the memory
used by overlay_track for the particular overlay node.

Nested overlay removal is supported in sequential manner only i.e. if
overlay_child nests under overlay_parent, it is assumed that user first removes
overlay_child and then removes overlay_parent.
Also, this is an experimental feature so it is expected from user to make sure
correct device tree overlays are used when adding nodes and making sure devices
are not being used by other domain before removing them from Xen tree.
Partially added/removed i.e. failures while removing the overlay may cause other
failures and might need a system reboot.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>

---
Changes from v10:
    Add iommu_remove_dt_device if device has IOMMU added.
Changes from v9:
    Remove iommu and IRQ routing as this will not be done while adding the nodes.
Changes from v8:
    Remove IRQs and IOMMU entries using rangesets instead of parsing each node.
Changes from v7:
    Add dt-overlay.c in MAINTAINERS.
    Add comments for dt_overlay_remove_node.
    Rename handle_remove_irq_iommu() to remove_resources().
    Add comment regarding false mapping flag for reason behind not removing the
    mapping..
    Remove irq_access_premitted() check.
    Add error handling for remove_all_descendant_nodes
    Change read_lock with write_lock.
    Remove check_overlay_fdt() call from handle_remove_overlay_nodes().
    Re-organize dt_sysctl and reutnr -EOPNOSTSUPP for error cases. Also, renamed
        this function to dt_overlay_sysctl.
    Remove unnecessary header includes in dt-overlay.h
    Correct indentation and make func   tion inputs const wherever possible.
    Make overlay_fdt const_void inside xen_sysctl_dt_overlay{}.
    Add comment regarding why we not removing IRQ and MMIO mappings.
    Move overlay_node_count() out of this patch as it's not being used here
        anymore.
Changes from v6:
    Add explicit padding for xen_system_dt_overlay{}
    Update license.
    Rearrange xfree in dt_sysctl()
    Update overlay_track struct comment with relevant message.
    Fix missing xen/errno.h for builds without CONFIG_OVERLAY_DTB cases.
    Fix header formatting.
---
---
 MAINTAINERS                  |   1 +
 xen/arch/arm/sysctl.c        |  16 +-
 xen/common/Makefile          |   1 +
 xen/common/dt-overlay.c      | 406 +++++++++++++++++++++++++++++++++++
 xen/include/public/sysctl.h  |  24 +++
 xen/include/xen/dt-overlay.h |  63 ++++++
 6 files changed, 510 insertions(+), 1 deletion(-)
 create mode 100644 xen/common/dt-overlay.c
 create mode 100644 xen/include/xen/dt-overlay.h

diff --git a/MAINTAINERS b/MAINTAINERS
index bf71ac144c..d320233538 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -301,6 +301,7 @@ M:	Julien Grall <julien@xen.org>
 S:	Supported
 F:	xen/common/libfdt/
 F:	xen/common/device_tree.c
+F:	xen/common/dt-overlay.c
 F:	xen/include/xen/libfdt/
 F:	xen/include/xen/device_tree.h
 F:	xen/drivers/passthrough/device_tree.c
diff --git a/xen/arch/arm/sysctl.c b/xen/arch/arm/sysctl.c
index e9a0661146..5cda0dc674 100644
--- a/xen/arch/arm/sysctl.c
+++ b/xen/arch/arm/sysctl.c
@@ -9,6 +9,7 @@
 
 #include <xen/types.h>
 #include <xen/lib.h>
+#include <xen/dt-overlay.h>
 #include <xen/errno.h>
 #include <xen/hypercall.h>
 #include <asm/arm64/sve.h>
@@ -25,7 +26,20 @@ void arch_do_physinfo(struct xen_sysctl_physinfo *pi)
 long arch_do_sysctl(struct xen_sysctl *sysctl,
                     XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl)
 {
-    return -ENOSYS;
+    long ret;
+
+    switch ( sysctl->cmd )
+    {
+    case XEN_SYSCTL_dt_overlay:
+        ret = dt_overlay_sysctl(&sysctl->u.dt_overlay);
+        break;
+
+    default:
+        ret = -ENOSYS;
+        break;
+    }
+
+    return ret;
 }
 
 /*
diff --git a/xen/common/Makefile b/xen/common/Makefile
index 46049eac35..e7e96b1087 100644
--- a/xen/common/Makefile
+++ b/xen/common/Makefile
@@ -8,6 +8,7 @@ obj-$(CONFIG_DEBUG_TRACE) += debugtrace.o
 obj-$(CONFIG_HAS_DEVICE_TREE) += device_tree.o
 obj-$(CONFIG_IOREQ_SERVER) += dm.o
 obj-y += domain.o
+obj-$(CONFIG_OVERLAY_DTB) += dt-overlay.o
 obj-y += event_2l.o
 obj-y += event_channel.o
 obj-y += event_fifo.o
diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c
new file mode 100644
index 0000000000..7b7224c29a
--- /dev/null
+++ b/xen/common/dt-overlay.c
@@ -0,0 +1,406 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * xen/common/dt-overlay.c
+ *
+ * Device tree overlay support in Xen.
+ *
+ * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved.
+ * Written by Vikram Garhwal <vikram.garhwal@amd.com>
+ *
+ */
+#include <asm/domain_build.h>
+#include <xen/dt-overlay.h>
+#include <xen/guest_access.h>
+#include <xen/iocap.h>
+#include <xen/libfdt/libfdt.h>
+#include <xen/xmalloc.h>
+
+static LIST_HEAD(overlay_tracker);
+static DEFINE_SPINLOCK(overlay_lock);
+
+/* Find last descendants of the device_node. */
+static struct dt_device_node *
+find_last_descendants_node(const struct dt_device_node *device_node)
+{
+    struct dt_device_node *child_node;
+
+    for ( child_node = device_node->child; child_node->sibling != NULL;
+          child_node = child_node->sibling );
+
+    /* If last child_node also have children. */
+    if ( child_node->child )
+        child_node = find_last_descendants_node(child_node);
+
+    return child_node;
+}
+
+static int dt_overlay_remove_node(struct dt_device_node *device_node)
+{
+    struct dt_device_node *np;
+    struct dt_device_node *parent_node;
+    struct dt_device_node *last_descendant = device_node->child;
+
+    parent_node = device_node->parent;
+
+    /* Check if we are trying to remove "/" i.e. root node. */
+    if ( parent_node == NULL )
+    {
+        dt_dprintk("%s's parent node not found\n", device_node->name);
+        return -EFAULT;
+    }
+
+    /* Sanity check for linking between parent and child node. */
+    np = parent_node->child;
+    if ( np == NULL )
+    {
+        dt_dprintk("parent node %s's not found\n", parent_node->name);
+        return -EFAULT;
+    }
+
+    /* If node to be removed is only child node or first child. */
+    if ( !dt_node_cmp(np->full_name, device_node->full_name) )
+    {
+        parent_node->child = np->sibling;
+
+        /*
+         * Iterate over all child nodes of device_node. Given that we are
+         * removing a node, we need to remove all it's descendants too.
+         * Reason behind finding last_descendant:
+         * If device_node has multiple children, device_node->allnext will point
+         * to first_child and first_child->allnext will be a sibling. When the
+         * device_node and it's all children are removed, parent_node->allnext
+         * should point to node next to last children.
+         */
+        if ( last_descendant )
+        {
+            last_descendant = find_last_descendants_node(device_node);
+            parent_node->allnext = last_descendant->allnext;
+        }
+        else
+            parent_node->allnext = np->allnext;
+
+        return 0;
+    }
+
+    for ( np = parent_node->child; np->sibling != NULL; np = np->sibling )
+    {
+        if ( !dt_node_cmp(np->sibling->full_name, device_node->full_name) )
+        {
+            /* Found the node. Now we remove it. */
+            np->sibling = np->sibling->sibling;
+
+            if ( np->child )
+                np = find_last_descendants_node(np);
+
+            /*
+             * Iterate over all child nodes of device_node. Given that we are
+             * removing parent node, we need to remove all it's descendants too.
+             */
+            if ( last_descendant )
+                last_descendant = find_last_descendants_node(device_node);
+
+            if ( last_descendant )
+                np->allnext = last_descendant->allnext;
+            else
+                np->allnext = np->allnext->allnext;
+
+            break;
+        }
+    }
+
+    return 0;
+}
+
+/* Basic sanity check for the dtbo tool stack provided to Xen. */
+static int check_overlay_fdt(const void *overlay_fdt, uint32_t overlay_fdt_size)
+{
+    if ( (fdt_totalsize(overlay_fdt) != overlay_fdt_size) ||
+          fdt_check_header(overlay_fdt) )
+    {
+        printk(XENLOG_ERR "The overlay FDT is not a valid Flat Device Tree\n");
+        return -EINVAL;
+    }
+
+    return 0;
+}
+
+static int irq_remove_cb(unsigned long s, unsigned long e, void *dom,
+                         unsigned long *c)
+{
+    int rc;
+    struct domain *d = dom;
+
+    /*
+     * TODO: We don't handle shared IRQs for now. So, it is assumed that
+     * the IRQs was not shared with another devices.
+     * TODO: Undo the IRQ routing.
+     */
+    rc = irq_deny_access(d, s);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "unable to revoke access for irq %lu\n", s);
+    }
+    else
+        *c += e - s + 1;
+
+    return rc;
+
+}
+
+static int iomem_remove_cb(unsigned long s, unsigned long e, void *dom,
+                           unsigned long *c)
+{
+    int rc;
+    struct domain *d = dom;
+
+    /*
+    * Remove mmio access.
+    * TODO: Support for remove/add the mapping in P2M.
+    */
+    rc = iomem_deny_access(d, s, e);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "Unable to remove dom%d access to"
+               " 0x%"PRIx64" - 0x%"PRIx64"\n",
+               d->domain_id,
+               s & PAGE_MASK, PAGE_ALIGN(e) - 1);
+    }
+    else
+        *c += e - s + 1;
+
+    return rc;
+}
+
+/* Check if node itself can be removed and remove node from IOMMU. */
+static int remove_node_resources(struct dt_device_node *device_node)
+{
+    int rc = 0;
+    unsigned int len;
+    domid_t domid;
+
+    domid = dt_device_used_by(device_node);
+
+    dt_dprintk("Checking if node %s is used by any domain\n",
+               device_node->full_name);
+
+    /* Remove the node if only it's assigned to hardware domain or domain io. */
+    if ( domid != hardware_domain->domain_id && domid != DOMID_IO )
+    {
+        printk(XENLOG_ERR "Device %s is being used by domain %u. Removing nodes failed\n",
+               device_node->full_name, domid);
+        return -EINVAL;
+    }
+
+    /* Check if iommu property exists. */
+    if ( dt_get_property(device_node, "iommus", &len) )
+    {
+        if ( dt_device_is_protected(device_node) )
+        {
+            rc = iommu_remove_dt_device(device_node);
+            if ( rc < 0 )
+                return rc;
+        }
+    }
+
+    return rc;
+}
+
+/* Remove all descendants from IOMMU. */
+static int
+remove_descendant_nodes_resources(const struct dt_device_node *device_node)
+{
+    int rc = 0;
+    struct dt_device_node *child_node;
+
+    for ( child_node = device_node->child; child_node != NULL;
+         child_node = child_node->sibling )
+    {
+        if ( child_node->child )
+        {
+            rc = remove_descendant_nodes_resources(child_node);
+            if ( rc )
+                return rc;
+        }
+
+        rc = remove_node_resources(child_node);
+        if ( rc )
+            return rc;
+    }
+
+    return rc;
+}
+
+/* Remove nodes from dt_host. */
+static int remove_nodes(const struct overlay_track *tracker)
+{
+    int rc = 0;
+    struct dt_device_node *overlay_node;
+    unsigned int j;
+    struct domain *d = hardware_domain;
+
+    for ( j = 0; j < tracker->num_nodes; j++ )
+    {
+        overlay_node = (struct dt_device_node *)tracker->nodes_address[j];
+        if ( overlay_node == NULL )
+        {
+            printk(XENLOG_ERR "Device %s is not present in the tree. Removing nodes failed\n",
+                   overlay_node->full_name);
+            return -EINVAL;
+        }
+
+        rc = remove_descendant_nodes_resources(overlay_node);
+        if ( rc )
+            return rc;
+
+        rc = remove_node_resources(overlay_node);
+        if ( rc )
+            return rc;
+
+        dt_dprintk("Removing node: %s\n", overlay_node->full_name);
+
+        write_lock(&dt_host_lock);
+
+        rc = dt_overlay_remove_node(overlay_node);
+        if ( rc )
+        {
+            write_unlock(&dt_host_lock);
+            return rc;
+        }
+
+        write_unlock(&dt_host_lock);
+    }
+
+    /* Remove IRQ access. */
+    if ( tracker->irq_ranges )
+    {
+        rc = rangeset_consume_ranges(tracker->irq_ranges, irq_remove_cb, d);
+        if ( rc )
+            return rc;
+    }
+
+   /* Remove mmio access. */
+    if ( tracker->iomem_ranges )
+    {
+        rc = rangeset_consume_ranges(tracker->iomem_ranges, iomem_remove_cb, d);
+        if ( rc )
+            return rc;
+    }
+
+    return rc;
+}
+
+/*
+ * First finds the device node to remove. Check if the device is being used by
+ * any dom and finally remove it from dt_host. IOMMU is already being taken care
+ * while destroying the domain.
+ */
+static long handle_remove_overlay_nodes(const void *overlay_fdt,
+                                        uint32_t overlay_fdt_size)
+{
+    int rc;
+    struct overlay_track *entry, *temp, *track;
+    bool found_entry = false;
+
+    rc = check_overlay_fdt(overlay_fdt, overlay_fdt_size);
+    if ( rc )
+        return rc;
+
+    spin_lock(&overlay_lock);
+
+    /*
+     * First check if dtbo is correct i.e. it should one of the dtbo which was
+     * used when dynamically adding the node.
+     * Limitation: Cases with same node names but different property are not
+     * supported currently. We are relying on user to provide the same dtbo
+     * as it was used when adding the nodes.
+     */
+    list_for_each_entry_safe( entry, temp, &overlay_tracker, entry )
+    {
+        if ( memcmp(entry->overlay_fdt, overlay_fdt, overlay_fdt_size) == 0 )
+        {
+            track = entry;
+            found_entry = true;
+            break;
+        }
+    }
+
+    if ( !found_entry )
+    {
+        rc = -EINVAL;
+
+        printk(XENLOG_ERR "Cannot find any matching tracker with input dtbo."
+               " Removing nodes is supported only for prior added dtbo.\n");
+        goto out;
+
+    }
+
+    rc = remove_nodes(entry);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "Removing node failed\n");
+        goto out;
+    }
+
+    list_del(&entry->entry);
+
+    xfree(entry->dt_host_new);
+    xfree(entry->fdt);
+    xfree(entry->overlay_fdt);
+
+    xfree(entry->nodes_address);
+
+    rangeset_destroy(entry->irq_ranges);
+    rangeset_destroy(entry->iomem_ranges);
+
+    xfree(entry);
+
+ out:
+    spin_unlock(&overlay_lock);
+    return rc;
+}
+
+long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op)
+{
+    long ret;
+    void *overlay_fdt;
+
+    if ( op->overlay_op != XEN_SYSCTL_DT_OVERLAY_ADD &&
+         op->overlay_op != XEN_SYSCTL_DT_OVERLAY_REMOVE )
+        return -EOPNOTSUPP;
+
+    if ( op->overlay_fdt_size == 0 || op->overlay_fdt_size > KB(500) )
+        return -EINVAL;
+
+    if ( op->pad[0] || op->pad[1] || op->pad[2] )
+        return -EINVAL;
+
+    overlay_fdt = xmalloc_bytes(op->overlay_fdt_size);
+
+    if ( overlay_fdt == NULL )
+        return -ENOMEM;
+
+    ret = copy_from_guest(overlay_fdt, op->overlay_fdt, op->overlay_fdt_size);
+    if ( ret )
+    {
+        gprintk(XENLOG_ERR, "copy from guest failed\n");
+        xfree(overlay_fdt);
+
+        return -EFAULT;
+    }
+
+    if ( op->overlay_op == XEN_SYSCTL_DT_OVERLAY_REMOVE )
+        ret = handle_remove_overlay_nodes(overlay_fdt, op->overlay_fdt_size);
+
+    xfree(overlay_fdt);
+
+    return ret;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h
index 3975050248..f1eba78405 100644
--- a/xen/include/public/sysctl.h
+++ b/xen/include/public/sysctl.h
@@ -1185,6 +1185,25 @@ typedef struct xen_sysctl_cpu_policy xen_sysctl_cpu_policy_t;
 DEFINE_XEN_GUEST_HANDLE(xen_sysctl_cpu_policy_t);
 #endif
 
+#if defined(__arm__) || defined (__aarch64__)
+/*
+ * XEN_SYSCTL_dt_overlay
+ * Performs addition/removal of device tree nodes under parent node using dtbo.
+ * This does in three steps:
+ *  - Adds/Removes the nodes from dt_host.
+ *  - Adds/Removes IRQ permission for the nodes.
+ *  - Adds/Removes MMIO accesses.
+ */
+struct xen_sysctl_dt_overlay {
+    XEN_GUEST_HANDLE_64(const_void) overlay_fdt;  /* IN: overlay fdt. */
+    uint32_t overlay_fdt_size;              /* IN: Overlay dtb size. */
+#define XEN_SYSCTL_DT_OVERLAY_ADD                   1
+#define XEN_SYSCTL_DT_OVERLAY_REMOVE                2
+    uint8_t overlay_op;                     /* IN: Add or remove. */
+    uint8_t pad[3];                         /* IN: Must be zero. */
+};
+#endif
+
 struct xen_sysctl {
     uint32_t cmd;
 #define XEN_SYSCTL_readconsole                    1
@@ -1215,6 +1234,7 @@ struct xen_sysctl {
 #define XEN_SYSCTL_livepatch_op                  27
 /* #define XEN_SYSCTL_set_parameter              28 */
 #define XEN_SYSCTL_get_cpu_policy                29
+#define XEN_SYSCTL_dt_overlay                    30
     uint32_t interface_version; /* XEN_SYSCTL_INTERFACE_VERSION */
     union {
         struct xen_sysctl_readconsole       readconsole;
@@ -1245,6 +1265,10 @@ struct xen_sysctl {
 #if defined(__i386__) || defined(__x86_64__)
         struct xen_sysctl_cpu_policy        cpu_policy;
 #endif
+
+#if defined(__arm__) || defined (__aarch64__)
+        struct xen_sysctl_dt_overlay        dt_overlay;
+#endif
         uint8_t                             pad[128];
     } u;
 };
diff --git a/xen/include/xen/dt-overlay.h b/xen/include/xen/dt-overlay.h
new file mode 100644
index 0000000000..c0567741ee
--- /dev/null
+++ b/xen/include/xen/dt-overlay.h
@@ -0,0 +1,63 @@
+ /* SPDX-License-Identifier: GPL-2.0-only */
+ /*
+ * xen/dt-overlay.h
+ *
+ * Device tree overlay support in Xen.
+ *
+ * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved.
+ * Written by Vikram Garhwal <vikram.garhwal@amd.com>
+ *
+ */
+#ifndef __XEN_DT_OVERLAY_H__
+#define __XEN_DT_OVERLAY_H__
+
+#include <xen/device_tree.h>
+#include <xen/list.h>
+#include <xen/rangeset.h>
+
+/*
+ * overlay_track describes information about added nodes through dtbo.
+ * @entry: List pointer.
+ * @dt_host_new: Pointer to the updated dt_host_new which is unflattened from
+    the 'updated fdt'.
+ * @fdt: Stores the fdt.
+ * @overlay_fdt: Stores a copy of input overlay_fdt.
+ * @nodes_address: Stores each overlay_node's address.
+ * @num_nodes: Total number of nodes in overlay dtb.
+ * @iomem_ranges: Range set to keep track of all IOMEMs.
+ * @irq_ranges: Range set to keep track of all added IRQs.
+ */
+struct overlay_track {
+    struct list_head entry;
+    struct dt_device_node *dt_host_new;
+    void *fdt;
+    void *overlay_fdt;
+    unsigned long *nodes_address;
+    unsigned int num_nodes;
+    struct rangeset *iomem_ranges;
+    struct rangeset *irq_ranges;
+};
+
+struct xen_sysctl_dt_overlay;
+
+#ifdef CONFIG_OVERLAY_DTB
+long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op);
+#else
+#include <xen/errno.h>
+static inline long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op)
+{
+    return -EOPNOTSUPP;
+}
+#endif
+
+#endif /* __XEN_DT_OVERLAY_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:11:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:11:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594297.927626 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwRd-0004zo-1j; Fri, 01 Sep 2023 05:11:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594297.927626; Fri, 01 Sep 2023 05:11:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwRc-0004zh-Tw; Fri, 01 Sep 2023 05:11:44 +0000
Received: by outflank-mailman (input) for mailman id 594297;
 Fri, 01 Sep 2023 05:11:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGY-0000Nr-8t
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:18 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::61b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 70f13c05-4884-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 07:00:17 +0200 (CEST)
Received: from DM6PR17CA0006.namprd17.prod.outlook.com (2603:10b6:5:1b3::19)
 by CY5PR12MB6406.namprd12.prod.outlook.com (2603:10b6:930:3d::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.18; Fri, 1 Sep
 2023 05:00:13 +0000
Received: from CY4PEPF0000EDD7.namprd03.prod.outlook.com
 (2603:10b6:5:1b3:cafe::f1) by DM6PR17CA0006.outlook.office365.com
 (2603:10b6:5:1b3::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:13 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EDD7.mail.protection.outlook.com (10.167.241.211) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.16 via Frontend Transport; Fri, 1 Sep 2023 05:00:13 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:10 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:10 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 70f13c05-4884-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mS19cTSXN6/r9Wq3MHKmemP8Tf3XLbO8epJyRe/JM/bn4MPKghtxY5uxoVant/2cdUitBSYM2k3RVQxMI8bea1xSd5o/FV/7xo34JBZsQshikFtgwjcxanxgENtuS3LcJKO4iHiGdI1+N1sPIjA4dGZpMbZLROyrasekLDhslAc6i3qzyXR6rgmH8YdhvzxwzpceRNAxMas0EbR6/bOLP8BOZqkeqCmFSHP8gIr4g0TcqL+rGePv6Sedg6seSEn5zR4QS1Zt81Jxkn+nbclNq7yVMjGM1KUF8R2WtRgeriAPvr2myVq1FaWWaJRfWaIJPMB0riNAxJAAaB0ICcXp5Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fgeWijtmTwTyogLk6WxOUL3kuOmYaDdqs1e6E0a1fkw=;
 b=PzOsEMnUeFs40RoROJpd2htayQ5BKj0MQK7aqXRM9PLi+71jSxFpknXr1/XyaUrbhJHZaCw3aDrGUIx0sE1Mcc1VOTkvTCCKZxUEer33cjz/uRxb06nuBwSW2C3PHJPR+0rNcCidvEUPfPAX86t+pV2kWWXdeUI7vUwYN/geRECC/xSix8E0D0E2R+tK8XHuWkNNFPuyArBu57DRwo0OWSpNmrSvvEGhwZiRP7WOApQntn/tg+9ijJsSiEOc/Wa3FRdFqm8GqhQAfapTFZO6hB0fjwY9UwUp92mbp7iS5hPD2/oZLPXEx3chTrxsBhi24ELf9BCQcE48AwNep5APQA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fgeWijtmTwTyogLk6WxOUL3kuOmYaDdqs1e6E0a1fkw=;
 b=jynGNOCY0JLwrjcg1JHg53n+o3xNSiMrb61xmuBS6oqmm5yu247IEfAW6OyMul2zGVwzrK1FGkyCKraC8zm+rhVAsAYN7Q0qRr2muT9I8XtgqnooFwC4XM2soUINLnq/LMe8KDZT3L7qI1ff/GDS3aiVm1fb4JC4yYEkeQyvUp8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v11 10/20] xen/iommu: protect iommu_add_dt_device() with dtdevs_lock
Date: Thu, 31 Aug 2023 21:59:37 -0700
Message-ID: <20230901045947.32351-11-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EDD7:EE_|CY5PR12MB6406:EE_
X-MS-Office365-Filtering-Correlation-Id: 2dbcc140-53e8-4f26-2881-08dbaaa85375
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gTFr8QeWxDS82+Ho5lf8reBbi/hfAhBcY4PLg3H/SN78p2cJePkvXwU2vurlPEFj5ICOTQIVsYC7xfXQCiozyyL107I0JyjNL0JaedTbpe4sYmprnociFobA9k2eVUOsfSHjOxlCtqz7rAkbac3PMtTH27UIRVmn9gUYXY92ZBl3+5gbCEbPqKFlvNpYvahtUK4IB+TqAqQ2a95Nhgoi34fhh8aPlEmTXnArIO44rxlx7agFNNHPFrc/BxC74A1POKX87MITN4ZqMJWYLTBdkJp+Xdo6kZ4I4jBRRuU88d86/PBExlvxtu1+vPgM6rF06T+7M2i2yPiNGoO22bn3qdNhUNBytBfiQl0DnU0gooypR+gIAWQTzduGMswwTIoiFoPJGThdmOxZoiqp4kFcvk9zp0NQnuTA9oN9YcfHaVoGVYK7xld8UUQN2OSgJslUh7QKTIfiABTYTv5xN+Q2LJ2OCEitBYT2lqAeJAHw9E91qD1vVApVp9VZxyT5B5CE0VxMHargVqOZGESG9Eez9IOmkRZvoUEOK5aLgc9TNVI2J1FBQ+sta/+F+Jt2Q2IeiUFLo+GuOB2MHY1sgKGrj6jRVWbbef15OuFAQ0Y+XcIGmhz2PiK+biJW/fCnHEf9TIErecRA03BlyOAPVVrpuB7uB9Zl3a6+ICQMAlXlurjTRxOnTAice1keAY2MSB1X6sV6R0rpgq5+/nceecdBJyyx/Lvg7HNxpacic3CMsn8QW95PPnzTqmT4CHCzbizBXoHezALiFCYwlwVcBsdxiA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(376002)(396003)(346002)(39860400002)(1800799009)(186009)(82310400011)(451199024)(40470700004)(46966006)(36840700001)(81166007)(356005)(82740400003)(8936002)(6666004)(70206006)(478600001)(70586007)(54906003)(316002)(41300700001)(40460700003)(44832011)(1076003)(26005)(83380400001)(5660300002)(36756003)(2616005)(2906002)(86362001)(47076005)(8676002)(36860700001)(40480700001)(6916009)(426003)(336012)(4326008)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:13.3379
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2dbcc140-53e8-4f26-2881-08dbaaa85375
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EDD7.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6406

Protect iommu_add_dt_device() with dtdevs_lock to prevent concurrent access
to add/remove/assign/deassign.
With addition of dynamic programming feature(follow-up patches in this series),
this function can be concurrently accessed by dynamic node add/remove using
device tree overlays.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Luca Fancellu <luca.fancellu@arm.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

---
    Changes from v7:
        Update commit message and fix indent.
---
---
 xen/drivers/passthrough/device_tree.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index a7d86a20a0..687c61e7da 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -147,6 +147,8 @@ int iommu_add_dt_device(struct dt_device_node *np)
     if ( dev_iommu_fwspec_get(dev) )
         return 0;
 
+    spin_lock(&dtdevs_lock);
+
     /*
      * According to the Documentation/devicetree/bindings/iommu/iommu.txt
      * from Linux.
@@ -159,7 +161,10 @@ int iommu_add_dt_device(struct dt_device_node *np)
          * these callback implemented.
          */
         if ( !ops->add_device || !ops->dt_xlate )
-            return -EINVAL;
+        {
+            rc = -EINVAL;
+            goto fail;
+        }
 
         if ( !dt_device_is_available(iommu_spec.np) )
             break;
@@ -190,6 +195,8 @@ int iommu_add_dt_device(struct dt_device_node *np)
     if ( rc < 0 )
         iommu_fwspec_free(dev);
 
+ fail:
+    spin_unlock(&dtdevs_lock);
     return rc;
 }
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:12:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:12:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594317.927635 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwRt-000660-EP; Fri, 01 Sep 2023 05:12:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594317.927635; Fri, 01 Sep 2023 05:12:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwRt-00065t-BW; Fri, 01 Sep 2023 05:12:01 +0000
Received: by outflank-mailman (input) for mailman id 594317;
 Fri, 01 Sep 2023 05:11:59 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGZ-0000Nr-4x
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:19 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on2062f.outbound.protection.outlook.com
 [2a01:111:f400:7eab::62f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7155dada-4884-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 07:00:18 +0200 (CEST)
Received: from MW4PR03CA0013.namprd03.prod.outlook.com (2603:10b6:303:8f::18)
 by CH3PR12MB9024.namprd12.prod.outlook.com (2603:10b6:610:176::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22; Fri, 1 Sep
 2023 05:00:14 +0000
Received: from CO1PEPF000044FA.namprd21.prod.outlook.com
 (2603:10b6:303:8f:cafe::2) by MW4PR03CA0013.outlook.office365.com
 (2603:10b6:303:8f::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.23 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:14 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CO1PEPF000044FA.mail.protection.outlook.com (10.167.241.200) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.2 via Frontend Transport; Fri, 1 Sep 2023 05:00:13 +0000
Received: from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:12 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com
 (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 31 Aug
 2023 22:00:11 -0700
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:11 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7155dada-4884-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CNO8iPyieYQEIv4Pb0LITNx5IHz7P6nm5Ez1dA+zn8SRTuRbGxYAGdyEh4ICZJGvF+w/tYsKr1eCp1I2qyL1HQ3pnjTxazYaxIHvNzXiOLrcJiZZYq58tAqFIoZuh9usv1C+ZwaHqa2g7xU1v6ikFvMBprsn8APMtDoN2h/V4SAYyQnmyaK3J31vQHuqiAjQ7Xw5ZB9HXhToI4M9C/CxuHrw3QFuymFQm+1AedNWcbr7/i+iplMUVaU89YYzA6t8GI4iTBteWLcRysrAUxdMEZf2orA58UvmHrqDSFX/Q1AIa6mp8elGjzexgipT/1JNfFiVs3TSeFw4lSsB5Q8Dng==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xshnPL3bDlSXz1SSqrZ2OojIbY+USaVA9VSd3/Ty7gY=;
 b=Gz3v70KIQfqQT43Am88qqO9mc8Nvl8+3g47znZtYLbQ5okhw3ybDNTAqtTlPpC/NPl+xWTIADyFH/mTwcTTcT8qQOH93btctB0D5fEP7ePWrf7aVFaONzQr762AmB0yeW+IsmTER6NRUJKdwcboslT5xJhHJOgOROsW80Si4QIGul63TWPLuNWqDGCHABl/eUU/pFlUEuw+yH7JV2Tq3iAD19gte1w9zCi8Djd4KR/6QZizVDwefLG+dtrLZGx6wWOHV3SYBxKslt5rjNaGt7a9/pTeKhTLN9hODXDmkt0+d1XWog60C693FkdyXVsQ8VNd/F8MllqwuEVSUsOIFQQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xshnPL3bDlSXz1SSqrZ2OojIbY+USaVA9VSd3/Ty7gY=;
 b=4AQy9kWpqTd07rF7thjwCaFi52OgeB8G2KLr9eMxLyhYQivjDIgJssvff50f9IzqhhOcZWwejp35WpBggtKZSthES5HPkey2hPajLegvk++RzSPxQ3MjHf48BdiPJRGZyIWcQD81gYb0jqnSd4iWKE2+vb6Z4jQ1aI4DHbGTtD0=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Jan Beulich <jbeulich@suse.com>, Paul Durrant
	<paul@xen.org>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [XEN][PATCH v11 11/20] xen/iommu: Introduce iommu_remove_dt_device()
Date: Thu, 31 Aug 2023 21:59:38 -0700
Message-ID: <20230901045947.32351-12-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044FA:EE_|CH3PR12MB9024:EE_
X-MS-Office365-Filtering-Correlation-Id: b50ebd9f-22f2-41de-2318-08dbaaa853d5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	v5cnateb2uNiAYBoNDWZyKBwTnTHdfPsjbJn3MYnsZfArk/CbLhxQIuEXQr1RJ9w+V+POdMwrXj53o8BTVaoVYmO1lIAQ1+LjJ699VzyrLkubZ7VhRB8dWJ8dG3UC5ODid1jVHgd+4TmlZ67otkEeeZR98arF7eTe3C+iYMitgTSbDE7iArb1yb0kOlH8SZlt+g9BGmeJ7HnKRkhVrH+9pOHMWeiamo3ftJxWouBsPqnni8X6F73sJk0DhJJUwac9c5hGT2q7mxNz8pLS0/t41KFF6brGIFOdSxWWwWicCGSPCsNb9NFSkjlqzMicgO/uOdZebDe7WFvi0RFdvGT7myfl3kXaX5rx3PovLfufKEtewhSh1sNdo7+r9JYpP3ULBKHAhWOQM1yJwYjxT3hHbMy50KQVD9Q6/dCTZ4JbA1GiEqKfb/vDBvJT3aNTUPjs1pCILxgiFMv4Yb5CXn9XAAnVS7UnpNlqqj8DYYoXiuDOU2H4rPFz6vLigJHTF4g/JeCZ3gBipPwTgR9bCIkPxE2CRvx9UfeDHRg6JW9L1u8oZ0yN6RwhhwHTwaz+ZmINcWdj581GRpjENaDHLq/f8pfJkDdIssAgWBmreg6HxagjUdtA9WfS+M4iOx9TuTNJSAxkXQNzRHXoL+2uM4zlCtB9OHL3Q5V7A+8C0fifQX819cKsrims8Ietf6qjlUd49xet/9OfbXocymoI62TzphPgV8iXv2NP+9Che6UjsGHz4WB3nsZw+hKti/ey6Nfd1CCmOAshUVz2ZN+fsmfZw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(396003)(346002)(376002)(451199024)(1800799009)(82310400011)(186009)(40470700004)(46966006)(36840700001)(6666004)(2906002)(5660300002)(86362001)(316002)(6916009)(478600001)(2616005)(4326008)(47076005)(8676002)(36860700001)(44832011)(8936002)(26005)(40460700003)(1076003)(82740400003)(40480700001)(41300700001)(426003)(336012)(36756003)(356005)(83380400001)(81166007)(54906003)(70206006)(70586007)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:13.8418
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b50ebd9f-22f2-41de-2318-08dbaaa853d5
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000044FA.namprd21.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB9024

Remove master device from the IOMMU. This will be helpful when removing the
overlay nodes using dynamic programming during run time.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>

---
Changes from v10:
    Add comment regarding return values of iommu_remove_dt_device().
    Add ASSERT to check if is_protected is removed or not.
Changes from v7:
    Add check if IOMMU is enabled.
    Fix indentation of fail.
---
---
 xen/drivers/passthrough/device_tree.c | 43 +++++++++++++++++++++++++++
 xen/include/xen/iommu.h               | 10 +++++++
 2 files changed, 53 insertions(+)

diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index 687c61e7da..80f6efc606 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -127,6 +127,49 @@ int iommu_release_dt_devices(struct domain *d)
     return 0;
 }
 
+int iommu_remove_dt_device(struct dt_device_node *np)
+{
+    const struct iommu_ops *ops = iommu_get_ops();
+    struct device *dev = dt_to_dev(np);
+    int rc;
+
+    if ( !iommu_enabled )
+        return 1;
+
+    if ( !ops )
+        return -EOPNOTSUPP;
+
+    spin_lock(&dtdevs_lock);
+
+    if ( iommu_dt_device_is_assigned_locked(np) )
+    {
+        rc = -EBUSY;
+        goto fail;
+    }
+
+    if ( !ops->remove_device )
+    {
+        rc = -EOPNOTSUPP;
+        goto fail;
+    }
+
+    /*
+     * De-register the device from the IOMMU driver.
+     * The driver is responsible for removing is_protected flag.
+     */
+    rc = ops->remove_device(0, dev);
+
+    if ( !rc )
+    {
+        ASSERT(!dt_device_is_protected(np));
+        iommu_fwspec_free(dev);
+    }
+
+ fail:
+    spin_unlock(&dtdevs_lock);
+    return rc;
+}
+
 int iommu_add_dt_device(struct dt_device_node *np)
 {
     const struct iommu_ops *ops = iommu_get_ops();
diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
index a18b68e247..84bd77395e 100644
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
@@ -235,6 +235,16 @@ int iommu_add_dt_device(struct dt_device_node *np);
 int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
                        XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl);
 
+/*
+ * Helper to remove master device from the IOMMU.
+ *
+ * Return values:
+ *  0 : device is de-registerd from IOMMU.
+ * <0 : error while removing the device from IOMMU.
+ * >0 : IOMMU is not enabled/present or device is not connected to it.
+ */
+int iommu_remove_dt_device(struct dt_device_node *np);
+
 #endif /* HAS_DEVICE_TREE */
 
 struct page_info;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:12:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:12:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594324.927646 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwS1-0006hi-Og; Fri, 01 Sep 2023 05:12:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594324.927646; Fri, 01 Sep 2023 05:12:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwS1-0006hX-Ky; Fri, 01 Sep 2023 05:12:09 +0000
Received: by outflank-mailman (input) for mailman id 594324;
 Fri, 01 Sep 2023 05:12:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGo-0001Hn-E4
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:34 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20602.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 796f3ef0-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:31 +0200 (CEST)
Received: from DM6PR11CA0013.namprd11.prod.outlook.com (2603:10b6:5:190::26)
 by SJ2PR12MB8010.namprd12.prod.outlook.com (2603:10b6:a03:4c7::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.20; Fri, 1 Sep
 2023 05:00:27 +0000
Received: from CY4PEPF0000EE3D.namprd03.prod.outlook.com
 (2603:10b6:5:190:cafe::eb) by DM6PR11CA0013.outlook.office365.com
 (2603:10b6:5:190::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.25 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:27 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3D.mail.protection.outlook.com (10.167.242.17) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.17 via Frontend Transport; Fri, 1 Sep 2023 05:00:26 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:14 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:13 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:13 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 796f3ef0-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ABMb5caoFTHdGE90hdcC1LS27NfKX+6tsf9efu9pI6wnqLuVE1Kv7tvadcp7dvGKxttrBSeLVDdHTE5Dv1hbmwMo0DrsTIrGwQNfqRb2NOi8tBB5eifh1UDX/HPRnaQGy4n7ZOOV73s9ULVQ45Nvvhy33JC8pH4yvZKUWEcdaCsxd9NSaJZmYfi/gWWvZ9JTrBwUdmjIJUfZoB+TyuE+tUnM3wgvOi91U1bv2FTZAiAiCS220vSkTWFeO8Yi5h+OioHeCwy/oR+kaPQQ1DxR3KMVSijmHJOpBrLKzkub2yBk/VWsVnzdQolGmnXkdBuIJWzTb8ddXCuJc25umnFB4w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TDhW7f5w3p+/XHERjQf4wWurMSkKNLV2sxdzRwRCMQk=;
 b=WGEDvkUmdOMpVH14woCHDpQF7a55A2xKmXLfqMGsqtLgXgoaNfryumvI7E4CA1m7vPA+aV23stgIFD/VJ8wJx83SXWnitZbnlrByjrSvhBhU9cQYCLA5hHBxs7ZZ1rUdV7GlkVsCah9W37IVIX4RM+HKEOI9sK98yQVi/MEWHoNwKV21fpRSwd8F5ILX8m8qQDsKo4aKoGNU4kprvheh2vOT3yHJKYi+G1QOu22PsyEd31nb4n9U4edXQPGKlJg9cOb2Z3nq1EcsJwBYJ8dOzg2/Lxk7J1AguufP8zTjcbRwkl2ByNaqhQ7gHvGHWAnNAjZSI32KLPMp300JVdYxew==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TDhW7f5w3p+/XHERjQf4wWurMSkKNLV2sxdzRwRCMQk=;
 b=lmcDpSLY/D7Ar+F1Vtnkm+MbuYRjkAJzvO6MAAUbPAQeBZBkTDsaeo4WgFO/BNvykh/nQyEIVWMfiq2DI/I/+ckPtLux5LhT99QY1h8krn1AUmS8OiaD7ILzDeQMQKMFcxUfagf6eunTEWpGsaQZYGOAsKg9MzSkpPPrOG8E0Cs=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN][PATCH v11 13/20] asm/smp.h: Fix circular dependency for device_tree.h and rwlock.h
Date: Thu, 31 Aug 2023 21:59:40 -0700
Message-ID: <20230901045947.32351-14-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3D:EE_|SJ2PR12MB8010:EE_
X-MS-Office365-Filtering-Correlation-Id: c4adddf8-0b03-43df-a3c5-08dbaaa85b86
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PH23t3earyBwOkWZYWC9RGyr/2+0hhZ6KnZIVNcCGvmiKJhUjmWi5sOFrLu1Utue0z5NlwmAZL1MCyXwCTdnUZ6W3ODJcXUPPdQGqMD9AaXhRkUPANgJfRdJ2yP41+U5N6lNzTeQnPefVSf4lY+DB68JfRHuCh0Sv0sFPjKyKKCr8wy96jhKVeFIt+TJhAf9i+pSu0STzYl3dmCd+jRKFDsVQQPSXLt2ZENtz2zT8rzIWrI28RdlkH13vqzqr5g1MljehlOmQI08x1LqaiupkTYOhgKXI/jaYwsXkenOYgUpnUbNQnHCzz7FrWN//ZLRUkbuOC12wWPj8G5l/3bdC2rR9jDsls0hNzLFx3wU9o73qW5IFZrjWbWnUUjpnK0P1iWa+S5V/C3Npq7m6KKW9jKNnOo4hG9vc6YcbZhDQbh4k1kMbAHzyuti2+nzII37zznzdigYWoscd6PTxNgMCwuJ5UUDF+9JFJngr03St9HdySowbWMElVnVfNvDa5ihZH87Fd5X/I8Ra4DPgKlmSCpqm3/ZDQaMjRIdCqi3jRoKB8ISkSPrFbbwlX7OQ+Vb4pQDkW5ylkEJVqA+PIdidHcDbbig1+zbGPxNWhjHRiiuyemsJ43iAUFk1vs+nbh+A9D/Y0dFq2VgE7ex7MMMjpmvjdqW77468+TutfDROzMPtC4yDdehYTfkWxJADEWd+v5IbqIIA5Rs5WH+bG4I4t2sUqly7HWodLhilL2H1j6ouCSVU1hwghFNXGALc9Zgiy7Mp4B1ZGDe/M5g3a61Lw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(376002)(136003)(396003)(346002)(1800799009)(451199024)(82310400011)(186009)(36840700001)(40470700004)(46966006)(40480700001)(40460700003)(2906002)(316002)(6916009)(70586007)(70206006)(356005)(82740400003)(81166007)(478600001)(54906003)(5660300002)(8936002)(86362001)(8676002)(4326008)(83380400001)(41300700001)(44832011)(2616005)(36860700001)(47076005)(6666004)(336012)(26005)(1076003)(426003)(36756003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:26.8741
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c4adddf8-0b03-43df-a3c5-08dbaaa85b86
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3D.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8010

Dynamic programming ops will modify the dt_host and there might be other
function which are browsing the dt_host at the same time. To avoid the race
conditions, we will need to add a rwlock to protect access to the dt_host.
However, adding rwlock in device_tree.h causes following circular dependency:
    device_tree.h->rwlock.h->smp.h->asm/smp.h->device_tree.h

To fix this, removed the "#include <xen/device_tree.h> and forward declared
"struct dt_device_node".

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Henry Wang <Henry.Wang@arm.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Julien Grall <jgrall@amazon.com>
---
    Changes from v7:
        Move struct dt_device_node declaration just above arch_cpu_init().
---
---
 xen/arch/arm/include/asm/smp.h | 4 +++-
 xen/arch/arm/smpboot.c         | 1 +
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/include/asm/smp.h b/xen/arch/arm/include/asm/smp.h
index a37ca55bff..4fabdf5310 100644
--- a/xen/arch/arm/include/asm/smp.h
+++ b/xen/arch/arm/include/asm/smp.h
@@ -3,7 +3,6 @@
 
 #ifndef __ASSEMBLY__
 #include <xen/cpumask.h>
-#include <xen/device_tree.h>
 #include <asm/current.h>
 #endif
 
@@ -23,6 +22,9 @@ DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
 extern void noreturn stop_cpu(void);
 
 extern int arch_smp_init(void);
+
+struct dt_device_node;
+
 extern int arch_cpu_init(int cpu, struct dt_device_node *dn);
 extern int arch_cpu_up(int cpu);
 extern void arch_cpu_up_finish(void);
diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
index e107b86b7b..eeb76cd551 100644
--- a/xen/arch/arm/smpboot.c
+++ b/xen/arch/arm/smpboot.c
@@ -10,6 +10,7 @@
 #include <xen/cpu.h>
 #include <xen/cpumask.h>
 #include <xen/delay.h>
+#include <xen/device_tree.h>
 #include <xen/domain_page.h>
 #include <xen/errno.h>
 #include <xen/init.h>
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:12:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:12:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594325.927652 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwS2-0006lY-4W; Fri, 01 Sep 2023 05:12:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594325.927652; Fri, 01 Sep 2023 05:12:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwS1-0006jy-TB; Fri, 01 Sep 2023 05:12:09 +0000
Received: by outflank-mailman (input) for mailman id 594325;
 Fri, 01 Sep 2023 05:12:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGt-0001Hn-FD
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:39 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on2060c.outbound.protection.outlook.com
 [2a01:111:f400:7e88::60c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7b152e34-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:34 +0200 (CEST)
Received: from DS7PR03CA0168.namprd03.prod.outlook.com (2603:10b6:5:3b2::23)
 by CYYPR12MB8921.namprd12.prod.outlook.com (2603:10b6:930:c7::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.23; Fri, 1 Sep
 2023 05:00:30 +0000
Received: from CY4PEPF0000EE3C.namprd03.prod.outlook.com
 (2603:10b6:5:3b2:cafe::5a) by DS7PR03CA0168.outlook.office365.com
 (2603:10b6:5:3b2::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:30 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3C.mail.protection.outlook.com (10.167.242.16) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.17 via Frontend Transport; Fri, 1 Sep 2023 05:00:30 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:29 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:29 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7b152e34-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=br+vnSfFGe89wBRfE1hfe9zveK1u9F1Iq8b0lCb/nbOKksW5AheSyhg0LiOSS+2XPFpA+jBvWSe+jHuMRhxXixc0Ar91uXnO4LU+QU4qmelF0jzb9THMjFxgIOs4GT1glEuuhCpg6B6oiRCkOZxxZRUygyg7VaMH8TGX3141o+IT+Q/NLVSOzNjKhYv0Q8VGzMcJ30CrQgRAaASgdcIT9jZvzquLnMf9uwMPnJDm4CK/Z5ql+MLXejX0gB7GJjm2SFm9g9jrSWC6bEMipEGefpDWMocuGNlBgDSCMOWDLHDsbK4Glgyz7SykFwOdxc6Z8sy+gor8W2DBcLjYkLZTTw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=f3CXFnL+4aLIWZtU9p5mMJcpke4wuyPy6FqvOY6YZ1o=;
 b=ZYQ4qbXcuRQ5T2XIbqn4ApBVIoRq9noZWlen+q+VBeIcpoH1xMV9BzdV2rYR1l9yaFJVPTWy+nhd7uxFAccef9c9YB8RjyXZgc35jNa3Q7v0u/Db9Ve1njSuazr0C+uRapfJO5evYLHw3hOC15a70QcI6FUjFT2sj/T6RaryT2m3uULwBwfRe77DEJysIOYTvRow1v15S4w5kYjwFZOa42rhIj+v7UQ58VhEo1Gpznq5b9BFArQqfR1WGITK62+QKiF7tysheZIoR4G1R+5+730Ja7TDyIyGsLLTDto+uE/+qS8C8WajQ1UdqGjfYibaDP8kXmfYhIGBv+uFloZbsg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=f3CXFnL+4aLIWZtU9p5mMJcpke4wuyPy6FqvOY6YZ1o=;
 b=GguLGdsVWl7X/nGtZ1nYh0L/CIk92WxYRzCYP5aSrdmUALqURTuiDlvOB58jIZyU+GTaaGOwm0hs5r0iuf7ZTE37dYIuMjCQR54BT3vlqgjvdsNW2xSz1Q4jM/VqF1+OsB941r9rIkGWP7u/uixAvjF5ITz8WRAZzaT1hgtsCkg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, Juergen Gross <jgross@suse.com>
Subject: [XEN][PATCH v11 18/20] tools/libs/ctrl: Implement new xc interfaces for dt overlay
Date: Thu, 31 Aug 2023 21:59:45 -0700
Message-ID: <20230901045947.32351-19-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3C:EE_|CYYPR12MB8921:EE_
X-MS-Office365-Filtering-Correlation-Id: ac2dd0b3-e953-4150-3d3d-08dbaaa85db4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MvRa/6J4rDug4nsKud19NijEpszhflc0hexeCt0gli0S3WpmOEdsyImkaLc34KHmeCwABDsDgbfx5qu6cF5/vyskpahSzfuC4BiTIgTqf3iIObGAqhhKdssmcqJeMvbyypW9wcdPSLocspjEDFTpDR3RxYd/EQ3k9Gtx0sBAOHSx+a6UWhQpGwdDsnucdc+8iFlGyaVbTA5n3VIWSQBqu1POSZNLp/2VpApunUqPf5TMvISJ8e+H4lxFlyTbYZWntq3wHnRtYzKijIjSqn4IoTof9vrsIafrsjJLA5/FZk9WA8+R7LnOjmxpYCNxo8boQ6rRSODCfbMKnHPlu0meFea/Sv7HdovP50Xgq4H20KQ8lIhFeiNNNFphcholy684ur02+kuqaK4tNgojJlFvg/x+ATbsyXT4GTY90nUizFgaADsEeU+xHEEmd3NDjoCxAktfAWdvb9IoE7hHnmoN1hR5QKX1V3CtqUwXPcngJNBphG+h8QehK0OpvmF0Y0bki2pEBWR/41rJdxcOXm2BnAA5YeDYPwkCpaBXitwVen+BhJibexgSK+TaYz5eLZ428HghDwWeFdinILpYYbSohKRLJBBUYhVd18ZMUb8Z0WtR2ekNz/i0e2l6vT6RLDb01yWsKAQnLG78cdjAK7xmT05MKJy3xJkPSovU4mg+DStg4exY8xGvz8//6+H0ZAXAGvzVNfi7b9nu5CCBJYuNrEJ+MCzceXK/yRNXR62b6pB/pMWpSfYp36+F0IUIDin6oBXWMn4M7rsA9f66ok1Ia8boTaMmjNx9aUhmBzPEVTQ=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(346002)(376002)(136003)(39860400002)(451199024)(186009)(82310400011)(1800799009)(36840700001)(40470700004)(46966006)(356005)(82740400003)(6666004)(36756003)(40460700003)(86362001)(81166007)(40480700001)(47076005)(36860700001)(2616005)(2906002)(426003)(336012)(26005)(1076003)(478600001)(5660300002)(8936002)(70586007)(70206006)(8676002)(4326008)(6916009)(44832011)(41300700001)(316002)(54906003)(2004002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:30.5284
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ac2dd0b3-e953-4150-3d3d-08dbaaa85db4
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3C.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CYYPR12MB8921

xc_dt_overlay() sends the device tree binary overlay, size of .dtbo and overlay
operation type i.e. add or remove to xen.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/include/xenctrl.h         |  5 ++++
 tools/libs/ctrl/Makefile.common |  1 +
 tools/libs/ctrl/xc_dt_overlay.c | 50 +++++++++++++++++++++++++++++++++
 3 files changed, 56 insertions(+)
 create mode 100644 tools/libs/ctrl/xc_dt_overlay.c

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 12dca13b69..2ef8b4e054 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2653,6 +2653,11 @@ int xc_livepatch_replace(xc_interface *xch, char *name, uint32_t timeout, uint32
 int xc_domain_cacheflush(xc_interface *xch, uint32_t domid,
                          xen_pfn_t start_pfn, xen_pfn_t nr_pfns);
 
+#if defined(__arm__) || defined(__aarch64__)
+int xc_dt_overlay(xc_interface *xch, void *overlay_fdt,
+                  uint32_t overlay_fdt_size, uint8_t overlay_op);
+#endif
+
 /* Compat shims */
 #include "xenctrl_compat.h"
 
diff --git a/tools/libs/ctrl/Makefile.common b/tools/libs/ctrl/Makefile.common
index 0a09c28fd3..247afbe5f9 100644
--- a/tools/libs/ctrl/Makefile.common
+++ b/tools/libs/ctrl/Makefile.common
@@ -24,6 +24,7 @@ OBJS-y       += xc_hcall_buf.o
 OBJS-y       += xc_foreign_memory.o
 OBJS-y       += xc_kexec.o
 OBJS-y       += xc_resource.o
+OBJS-$(CONFIG_ARM)  += xc_dt_overlay.o
 OBJS-$(CONFIG_X86) += xc_psr.o
 OBJS-$(CONFIG_X86) += xc_pagetab.o
 OBJS-$(CONFIG_Linux) += xc_linux.o
diff --git a/tools/libs/ctrl/xc_dt_overlay.c b/tools/libs/ctrl/xc_dt_overlay.c
new file mode 100644
index 0000000000..c2224c4d15
--- /dev/null
+++ b/tools/libs/ctrl/xc_dt_overlay.c
@@ -0,0 +1,50 @@
+/*
+ *
+ * Device Tree Overlay functions.
+ * Copyright (C) 2021 Xilinx Inc.
+ * Author Vikram Garhwal <fnu.vikram@xilinx.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation;
+ * version 2.1 of the License.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "xc_private.h"
+
+int xc_dt_overlay(xc_interface *xch, void *overlay_fdt,
+                  uint32_t overlay_fdt_size, uint8_t overlay_op)
+{
+    int err;
+    struct xen_sysctl sysctl = {
+        .cmd = XEN_SYSCTL_dt_overlay,
+        .u.dt_overlay = {
+            .overlay_op = overlay_op,
+            .overlay_fdt_size = overlay_fdt_size,
+        }
+    };
+
+    DECLARE_HYPERCALL_BOUNCE(overlay_fdt, overlay_fdt_size,
+                             XC_HYPERCALL_BUFFER_BOUNCE_IN);
+
+    if ( (err = xc_hypercall_bounce_pre(xch, overlay_fdt)) )
+        goto err;
+
+    set_xen_guest_handle(sysctl.u.dt_overlay.overlay_fdt, overlay_fdt);
+
+    if ( (err = do_sysctl(xch, &sysctl)) != 0 )
+        PERROR("%s failed", __func__);
+
+err:
+    xc_hypercall_bounce_post(xch, overlay_fdt);
+
+    return err;
+}
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:12:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:12:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594328.927666 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwS5-0007Mp-Gw; Fri, 01 Sep 2023 05:12:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594328.927666; Fri, 01 Sep 2023 05:12:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwS5-0007Mc-CI; Fri, 01 Sep 2023 05:12:13 +0000
Received: by outflank-mailman (input) for mailman id 594328;
 Fri, 01 Sep 2023 05:12:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGr-0001Hn-Er
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:37 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on2062c.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::62c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7afcc685-4884-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:00:33 +0200 (CEST)
Received: from DM6PR11CA0005.namprd11.prod.outlook.com (2603:10b6:5:190::18)
 by PH7PR12MB6740.namprd12.prod.outlook.com (2603:10b6:510:1ab::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.18; Fri, 1 Sep
 2023 05:00:28 +0000
Received: from CY4PEPF0000EE3D.namprd03.prod.outlook.com
 (2603:10b6:5:190:cafe::25) by DM6PR11CA0005.outlook.office365.com
 (2603:10b6:5:190::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:28 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3D.mail.protection.outlook.com (10.167.242.17) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.17 via Frontend Transport; Fri, 1 Sep 2023 05:00:28 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:27 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:26 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7afcc685-4884-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eimMht/BIbCOaf4Ab03L1N9il/aUNePqR6JzU/ebpvo5l3ZqoHsY6GBTzE5LwUS7a8tZnpH7AC/dEfu6J6gREhdBHncIlIXyNq6cfhlKpKQSTDMw/BFcLLiPXm+E3cTyC3YPVHctmyeITnHB50DY1C3vAnYxiea98uI/+60kH6AknCm9ETcvSojiVTN5AwR0yibyG2UNk0fe9Q/whb0PIv277QYw+CmSjaCWKjBtjrh8AA0hwUGm2t5jYcqbTSdrHrAO4wiRrvPTx1IBXghBM47oXU9Buo7u8XCt5bX2nD47i/6wjnfLzRFidg0wP/sh4CCakrrRt7KnLHrRdxEsgQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=y81wVIygGPJh0Ydvh/80eu9K2SfjYwEv+GVsIT2ZkAI=;
 b=WscnBkmj25k8sndAXPLH4wTyEd6XndZui0vF8E8+RY9LaOQYpwfVU+/N1lVo9D3AG9bOxyaUrLZzNyecRt8JDVK6rZTVx9nswzwiC8DVHebHGzdMqNJl9j9q/ZJYnDDRv15TUQTo/3RB3Zbmo3wDJsXF2boWYdIJQotjcq8wtHvsyPUc/Y5jgfmtRus9shNy6SKMr4CJK4e7xQ5J2JRiEk48FGHFVZvKoPovKdLtQMweCuuRxrfMi+/a243g3INwIFqfRal35G+5fiF5xkN2lYAJ3R7J2pZEfmIdouTwVwXnfCeRWRMCUK6kEi/4bg4JvlnOj0BPXvNyZ0Iid9DKcQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=y81wVIygGPJh0Ydvh/80eu9K2SfjYwEv+GVsIT2ZkAI=;
 b=NBpNAVxSMHznO3GuBJYlw/rXwu2ca+1x8hBrDZMr19ZHjkZDur6kVO5EtkPcT0TYlXFeDzZDnOPwFtOkUaTZCT9phnnLEFX5noDDWreS4Tqn/zo2RgFaOUWLhjOOgVjL6apXkvxWcTqvKkvhk/JlIcFXyTvMzZvvf9F4/092qRM=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN][PATCH v11 15/20] arm/asm/setup.h: Update struct map_range_data to add rangeset.
Date: Thu, 31 Aug 2023 21:59:42 -0700
Message-ID: <20230901045947.32351-16-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3D:EE_|PH7PR12MB6740:EE_
X-MS-Office365-Filtering-Correlation-Id: 7a558305-c284-4366-c0af-08dbaaa85c66
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xQ5sVp8HbXryancRsEbIf5Q07n0zB/qU6d56xod1I0uBQmu84z0MyC21x5lkWgfFUYyfp0xypEGfQZBiUU/eGUy6k+TD3ss4Xf74PfpR+OGq/ybXGYgyjU0ik0ukD6fHLh1iRiliyHxF2SAfrZvXBD20TBDumszO9YDBN0HXbCW+MIgNx3pm9fWfAV4FWMpU5xXpIDviDwKXgGwCf++EOExbJCzlnkBQ8yzAGh9Ozso16sAZpLEcPYhm+uHu2Lp0iQruMvOUhNO2Nnyz7a0bvqKTMq9VUp2fooKwNEKUVI8VUZmtXsgcw/pkHdWT0XBx8m/zOe5XRCYZMUINZbwnwdHWftEZftqNV76/QGXi+oRdy5AHX/zlQzG4eTor5kqZHVHqs2a/AfiekLxCVsD8fgC/myF5SDctlWadz1yGhkgRvW7COIXNiaCqAU0iXcPLGr8KJF17EdjQrzwQxdVmRpW9jBcivIMsyNkhBT2OfzQqlnvQP29bVH7sa5tlp2AMwR/+ZepyGEoSMUQWbiWpKjBUftWMtkZNshymH0hb8qHgNWiatvTpb2T//w8MXk5q63tALNDEb1+mZNOj7PTx6S7uTCeaHGKJG0Se2SEKZqJpwJf7lKaGRWOQbjAuHYtTmYyd+BhfI7jjcZUJLz4pPrri0+KMwVkof54sN6iOyEOHFsrdFiw2QBQ+daFxjbJfyyKEOyTtjhLVLeiQ8MiSSsdT85QdTbqGwTn7IuQMPivCfzReP9rRFqfiGYkBkVAcNI+GfMQZHYeXjY9Jx3aTRw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(396003)(376002)(346002)(136003)(186009)(82310400011)(451199024)(1800799009)(36840700001)(46966006)(40470700004)(26005)(1076003)(426003)(336012)(47076005)(36860700001)(5660300002)(44832011)(6666004)(82740400003)(356005)(478600001)(8936002)(8676002)(81166007)(4326008)(86362001)(2616005)(83380400001)(70586007)(54906003)(2906002)(6916009)(36756003)(316002)(70206006)(41300700001)(40460700003)(40480700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:28.3428
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7a558305-c284-4366-c0af-08dbaaa85c66
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3D.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6740

Add rangesets for IRQs and IOMEMs. This was done to accommodate dynamic overlay
node addition/removal operations. With overlay operations, new IRQs and IOMEMs
are added in dt_host and routed. While removing overlay nodes, nodes are removed
from dt_host and their IRQs and IOMEMs routing is also removed. Storing IRQs and
IOMEMs in the rangeset will avoid re-parsing the device tree nodes to get the
IOMEM and IRQ ranges for overlay remove ops.

Dynamic overlay node add/remove will be introduced in follow-up patches.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>

---
Changes from v10:
    Replace paddr_to_pfn(PAGE_ALIGN()) with paddr_to_pfn_aligned().
    Change data type of irq.
    fix function change for handle_device().
    Remove unnecessary change .d = d in mr_data.
---
---
 xen/arch/arm/device.c            | 43 +++++++++++++++++++++++++-------
 xen/arch/arm/domain_build.c      |  4 +--
 xen/arch/arm/include/asm/setup.h |  9 ++++---
 3 files changed, 42 insertions(+), 14 deletions(-)

diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
index 327e4d24fb..1f631d3274 100644
--- a/xen/arch/arm/device.c
+++ b/xen/arch/arm/device.c
@@ -165,6 +165,15 @@ int map_range_to_domain(const struct dt_device_node *dev,
     dt_dprintk("  - MMIO: %010"PRIx64" - %010"PRIx64" P2MType=%x\n",
                addr, addr + len, mr_data->p2mt);
 
+    if ( mr_data->iomem_ranges )
+    {
+        res = rangeset_add_range(mr_data->iomem_ranges,
+                                 paddr_to_pfn(addr),
+                                 paddr_to_pfn_aligned(addr + len - 1));
+        if ( res )
+            return res;
+    }
+
     return 0;
 }
 
@@ -178,10 +187,11 @@ int map_range_to_domain(const struct dt_device_node *dev,
  */
 int map_device_irqs_to_domain(struct domain *d,
                               struct dt_device_node *dev,
-                              bool need_mapping)
+                              bool need_mapping,
+                              struct rangeset *irq_ranges)
 {
     unsigned int i, nirq;
-    int res;
+    int res, irq;
     struct dt_raw_irq rirq;
 
     nirq = dt_number_of_irq(dev);
@@ -208,17 +218,24 @@ int map_device_irqs_to_domain(struct domain *d,
             continue;
         }
 
-        res = platform_get_irq(dev, i);
-        if ( res < 0 )
+        irq = platform_get_irq(dev, i);
+        if ( irq < 0 )
         {
             printk(XENLOG_ERR "Unable to get irq %u for %s\n",
                    i, dt_node_full_name(dev));
-            return res;
+            return irq;
         }
 
-        res = map_irq_to_domain(d, res, need_mapping, dt_node_name(dev));
+        res = map_irq_to_domain(d, irq, need_mapping, dt_node_name(dev));
         if ( res )
             return res;
+
+        if ( irq_ranges )
+        {
+            res = rangeset_add_singleton(irq_ranges, irq);
+            if ( res )
+                return res;
+        }
     }
 
     return 0;
@@ -249,6 +266,11 @@ static int map_dt_irq_to_domain(const struct dt_device_node *dev,
     }
 
     res = map_irq_to_domain(d, irq, !mr_data->skip_mapping, dt_node_name(dev));
+    if ( res )
+        return res;
+
+    if ( mr_data->irq_ranges )
+        res = rangeset_add_singleton(mr_data->irq_ranges, irq);
 
     return res;
 }
@@ -289,7 +311,8 @@ static int map_device_children(const struct dt_device_node *dev,
  *  - Assign the device to the guest if it's protected by an IOMMU
  *  - Map the IRQs and iomem regions to DOM0
  */
-int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt)
+int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt,
+                  struct rangeset *iomem_ranges, struct rangeset *irq_ranges)
 {
     unsigned int naddr;
     unsigned int i;
@@ -308,7 +331,9 @@ int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt)
         .p2mt = p2mt,
         .skip_mapping = !own_device ||
                         (is_pci_passthrough_enabled() &&
-                        (device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE))
+                        (device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE)),
+        .iomem_ranges = iomem_ranges,
+        .irq_ranges = irq_ranges
     };
 
     naddr = dt_number_of_address(dev);
@@ -342,7 +367,7 @@ int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt)
         }
     }
 
-    res = map_device_irqs_to_domain(d, dev, own_device);
+    res = map_device_irqs_to_domain(d, dev, own_device, irq_ranges);
     if ( res < 0 )
         return res;
 
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index ff4fc30769..29dcbb8a2e 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -2402,7 +2402,7 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
                "WARNING: Path %s is reserved, skip the node as we may re-use the path.\n",
                path);
 
-    res = handle_device(d, node, p2mt);
+    res = handle_device(d, node, p2mt, NULL, NULL);
     if ( res)
         return res;
 
@@ -2745,7 +2745,7 @@ static int __init handle_passthrough_prop(struct kernel_info *kinfo,
         return -EINVAL;
     }
 
-    res = map_device_irqs_to_domain(kinfo->d, node, true);
+    res = map_device_irqs_to_domain(kinfo->d, node, true, NULL);
     if ( res < 0 )
         return res;
 
diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index 6cda3e4039..b8866c20f4 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -113,6 +113,9 @@ struct map_range_data
     p2m_type_t p2mt;
     /* Set if mapping of the memory ranges must be skipped. */
     bool skip_mapping;
+    /* Rangeset to store IRQs and IOMEM for overlay nodes. */
+    struct rangeset *iomem_ranges;
+    struct rangeset *irq_ranges;
 };
 
 extern struct bootinfo bootinfo;
@@ -165,11 +168,11 @@ void device_tree_get_reg(const __be32 **cell, uint32_t address_cells,
 u32 device_tree_get_u32(const void *fdt, int node,
                         const char *prop_name, u32 dflt);
 
-int handle_device(struct domain *d, struct dt_device_node *dev,
-                  p2m_type_t p2mt);
+int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt,
+                  struct rangeset *iomem_ranges, struct rangeset *irq_ranges);
 
 int map_device_irqs_to_domain(struct domain *d, struct dt_device_node *dev,
-                              bool need_mapping);
+                              bool need_mapping, struct rangeset *irq_ranges);
 
 int map_irq_to_domain(struct domain *d, unsigned int irq,
                       bool need_mapping, const char *devname);
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:12:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:12:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594329.927672 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwS5-0007R9-W9; Fri, 01 Sep 2023 05:12:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594329.927672; Fri, 01 Sep 2023 05:12:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwS5-0007QV-OG; Fri, 01 Sep 2023 05:12:13 +0000
Received: by outflank-mailman (input) for mailman id 594329;
 Fri, 01 Sep 2023 05:12:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JvPm=ER=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qbwGt-0000Nr-EI
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:00:39 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on20615.outbound.protection.outlook.com
 [2a01:111:f400:7e83::615])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7e21e25c-4884-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 07:00:38 +0200 (CEST)
Received: from DS7PR03CA0162.namprd03.prod.outlook.com (2603:10b6:5:3b2::17)
 by SJ1PR12MB6338.namprd12.prod.outlook.com (2603:10b6:a03:455::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.20; Fri, 1 Sep
 2023 05:00:32 +0000
Received: from CY4PEPF0000EE3C.namprd03.prod.outlook.com
 (2603:10b6:5:3b2:cafe::f6) by DS7PR03CA0162.outlook.office365.com
 (2603:10b6:5:3b2::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.25 via Frontend
 Transport; Fri, 1 Sep 2023 05:00:32 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3C.mail.protection.outlook.com (10.167.242.16) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.17 via Frontend Transport; Fri, 1 Sep 2023 05:00:32 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:00:30 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:00:30 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7e21e25c-4884-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QqAEX/Aia6VR6eHcLHNQ4K4Bfpc1cFBzh/TycvhH1Ei/DFNzO/ctL2TyOi4DQnhE9dDSrWN10koo5fAx2BMEC5nrBJiPMcfDx1nBJXy0EREG5888qAM1UlF3X/qOg2BRZPMtN0cd1y8VjL6cX1ZMAkMzDvHgko4sp6gZ3T0Pbv+Bzh1TF01DIHLF+tssJLB9dWDh+FReWr2QFtjbxf7/eylOzHCWnZwBLSNjoeZ1iBOxg5M5JRJfg9QSApoAAaPZz04rs8iRiPqf6CNqmDS/6V45mkR0+OMKXPUVL+XRD9Te7L2obMGckqg7zV7WRx/qBl0Q98OMuT/g+/YqYMWsfA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mTCPtQBNjoIyHEJsEb7hqin0hShKQ1om1xTixiBsYZA=;
 b=UL+uajtCXEF8s+UfOdk+0K4L4cfmh2KXdQye6aoagTBiY114zW94lF3vqxOlsK78eWdq7hXFQMOOVp5Em95X/ShHo2tf4l3efJQw09ErXlYo24J2wBeWpuMfdqXXMpWcAbcZ8Gd4SFdAwJAEqYHi9U+BoyQk6MYhu2dY2nOweS46ABlKp4dDJsToIHD1xtiOnBCXbInoJN72JAgaykqdXUSBvBevKiYHxgeZTqfON/SHlF0smIsAFcOlqFsSiLLaoBPvDfCGhpbumTKLfJ4BYZSShhXhmdMI+KN7jr20dZeWJJvhRZbYNGxdrNb0alEQXiiPLSfNWe1xBfKwumU2ew==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mTCPtQBNjoIyHEJsEb7hqin0hShKQ1om1xTixiBsYZA=;
 b=C7pNEwTj7YlLGY5iutzDUK9P+6dDmxWvdYcCesM/vhscApPjnyLc9ucAmVYpfasG7uapgb3KAtyUfyVjVps/C1v3YVWjC79ybetYvw+D5hDWK8VVqznGDo0gDc1WtAv0A2jwwSxUQ3E3LyYI2Gf7R17kzlWfNKO83UGnnv0P/CA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, Juergen Gross <jgross@suse.com>
Subject: [XEN][PATCH v11 19/20] tools/libs/light: Implement new libxl functions for device tree overlay ops
Date: Thu, 31 Aug 2023 21:59:46 -0700
Message-ID: <20230901045947.32351-20-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230901045947.32351-1-vikram.garhwal@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3C:EE_|SJ1PR12MB6338:EE_
X-MS-Office365-Filtering-Correlation-Id: 1d21bdfd-7d6d-449d-cf04-08dbaaa85ea9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ejNHlH2jMBZEeXTHwY/5N/u3gBFXbpvNSt4TMFbC1SrVDeGjKzKykuFfy8T4l63BBmt5d16BEkeiVUf5oGgywnJ+z5NjCeioeT6G+ONgr0CbrRuEYwy/qg6Q9IThD6x7uXD5bOUCPLz2cNAqv9j0bcJo4pk8CxgDBZO54c9vlIlQLBJWaoJ4uORSEIXas9mmPUPuLDLLfDHdfBarfAV5mb1PjT1Se2k853fBzggaBUCFK+mrXfeME3enYWn5sEszTOc9zDT0tUQHVSXt5Yi3TRej8K5c4bWmh4/H6MyyARlK/uzyOhSxGzbfkOct2MhQ/VZTHri0X/JtgP68Fv0LCoff+YXgr0Etz0hcmRNX5ycQnpOa1/w5/RLgUbshY+6z/dvdW1slrGOHc7Y7AKO5R3wiQgiDCZ/U+ajbTmZFVZEgmAZooEXiM3nnnTK0pcsSsAH4nKG2wraLN2aDEM/tSLYZTAgfCL8+eqZVyTM5EZVjLWdd0W5726ghONR7pTQtoaAmnJ+xM2Zeukr4IYXryj5GjeW1Xbm8qgARpr6c+uWZFhBSKaquYQb9yYULA3KbIRyCAz5Acs1UJxp7b8sGJe8KHLCpS/qs/rS8UdziTbrUk7QmZzBiTSGqqY+cM50WmrW7MU8JgvDnQfgaep6yLc1My1VPkPzKhTMk7KmyRUgP0HSQfFOELScPVHJyksXf9RkOMmMGibb4omAYc2XP6M/HZwEQKNsG1rInX+5PEk1MsTdVrjn8nmlXzgkL2i1RYYHZdbfFbFLh46rpfsjtGFAksABZOc9nxqcAtlHvxIQ=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(376002)(39860400002)(136003)(451199024)(1800799009)(186009)(82310400011)(40470700004)(46966006)(36840700001)(70206006)(2906002)(36756003)(5660300002)(86362001)(44832011)(40460700003)(82740400003)(356005)(81166007)(40480700001)(36860700001)(47076005)(4326008)(8676002)(336012)(41300700001)(8936002)(426003)(1076003)(2616005)(26005)(316002)(54906003)(6666004)(478600001)(70586007)(6916009)(2004002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:00:32.1377
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1d21bdfd-7d6d-449d-cf04-08dbaaa85ea9
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3C.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ1PR12MB6338

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/include/libxl.h               | 11 +++++
 tools/libs/light/Makefile           |  3 ++
 tools/libs/light/libxl_dt_overlay.c | 71 +++++++++++++++++++++++++++++
 3 files changed, 85 insertions(+)
 create mode 100644 tools/libs/light/libxl_dt_overlay.c

diff --git a/tools/include/libxl.h b/tools/include/libxl.h
index 82b764ff57..abc5fd52da 100644
--- a/tools/include/libxl.h
+++ b/tools/include/libxl.h
@@ -259,6 +259,12 @@
  */
 #define LIBXL_HAVE_DEVICETREE_PASSTHROUGH 1
 
+#if defined(__arm__) || defined(__aarch64__)
+/**
+ * This means Device Tree Overlay is supported.
+ */
+#define LIBXL_HAVE_DT_OVERLAY 1
+#endif
 /*
  * libxl_domain_build_info has device_model_user to specify the user to
  * run the device model with. See docs/misc/qemu-deprivilege.txt.
@@ -2498,6 +2504,11 @@ libxl_device_pci *libxl_device_pci_list(libxl_ctx *ctx, uint32_t domid,
                                         int *num);
 void libxl_device_pci_list_free(libxl_device_pci* list, int num);
 
+#if defined(__arm__) || defined(__aarch64__)
+int libxl_dt_overlay(libxl_ctx *ctx, void *overlay,
+                     uint32_t overlay_size, uint8_t overlay_op);
+#endif
+
 /*
  * Turns the current process into a backend device service daemon
  * for a driver domain.
diff --git a/tools/libs/light/Makefile b/tools/libs/light/Makefile
index 5d7ff94b05..ba4c1b7933 100644
--- a/tools/libs/light/Makefile
+++ b/tools/libs/light/Makefile
@@ -112,6 +112,9 @@ OBJS-y += _libxl_types.o
 OBJS-y += libxl_flask.o
 OBJS-y += _libxl_types_internal.o
 
+# Device tree overlay is enabled only for ARM architecture.
+OBJS-$(CONFIG_ARM) += libxl_dt_overlay.o
+
 ifeq ($(CONFIG_LIBNL),y)
 CFLAGS_LIBXL += $(LIBNL3_CFLAGS)
 endif
diff --git a/tools/libs/light/libxl_dt_overlay.c b/tools/libs/light/libxl_dt_overlay.c
new file mode 100644
index 0000000000..a6c709a6dc
--- /dev/null
+++ b/tools/libs/light/libxl_dt_overlay.c
@@ -0,0 +1,71 @@
+/*
+ * Copyright (C) 2021 Xilinx Inc.
+ * Author Vikram Garhwal <fnu.vikram@xilinx.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published
+ * by the Free Software Foundation; version 2.1 only. with the special
+ * exception on linking described in file LICENSE.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ */
+
+#include "libxl_osdeps.h" /* must come before any other headers */
+#include "libxl_internal.h"
+#include <libfdt.h>
+#include <xenctrl.h>
+
+static int check_overlay_fdt(libxl__gc *gc, void *fdt, size_t size)
+{
+    int r;
+
+    if (fdt_magic(fdt) != FDT_MAGIC) {
+        LOG(ERROR, "Overlay FDT is not a valid Flat Device Tree");
+        return ERROR_FAIL;
+    }
+
+    r = fdt_check_header(fdt);
+    if (r) {
+        LOG(ERROR, "Failed to check the overlay FDT (%d)", r);
+        return ERROR_FAIL;
+    }
+
+    if (fdt_totalsize(fdt) > size) {
+        LOG(ERROR, "Overlay FDT totalsize is too big");
+        return ERROR_FAIL;
+    }
+
+    return 0;
+}
+
+int libxl_dt_overlay(libxl_ctx *ctx, void *overlay_dt, uint32_t overlay_dt_size,
+                     uint8_t overlay_op)
+{
+    int rc;
+    int r;
+    GC_INIT(ctx);
+
+    if (check_overlay_fdt(gc, overlay_dt, overlay_dt_size)) {
+        LOG(ERROR, "Overlay DTB check failed");
+        rc = ERROR_FAIL;
+        goto out;
+    } else {
+        LOG(DEBUG, "Overlay DTB check passed");
+        rc = 0;
+    }
+
+    r = xc_dt_overlay(ctx->xch, overlay_dt, overlay_dt_size, overlay_op);
+
+    if (r) {
+        LOG(ERROR, "%s: Adding/Removing overlay dtb failed.", __func__);
+        rc = ERROR_FAIL;
+    }
+
+out:
+    GC_FREE;
+    return rc;
+}
+
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:15:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:15:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594357.927685 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwUj-0001Ga-Dw; Fri, 01 Sep 2023 05:14:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594357.927685; Fri, 01 Sep 2023 05:14:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwUj-0001GT-BB; Fri, 01 Sep 2023 05:14:57 +0000
Received: by outflank-mailman (input) for mailman id 594357;
 Fri, 01 Sep 2023 05:14:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=am4h=ER=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qbwUi-0001GN-03
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:14:56 +0000
Received: from NAM04-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam04on20616.outbound.protection.outlook.com
 [2a01:111:f400:7e8c::616])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7c2335fe-4886-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 07:14:54 +0200 (CEST)
Received: from MW4PR04CA0348.namprd04.prod.outlook.com (2603:10b6:303:8a::23)
 by CH0PR12MB5188.namprd12.prod.outlook.com (2603:10b6:610:bb::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22; Fri, 1 Sep
 2023 05:14:48 +0000
Received: from CO1PEPF000044FD.namprd21.prod.outlook.com
 (2603:10b6:303:8a:cafe::7a) by MW4PR04CA0348.outlook.office365.com
 (2603:10b6:303:8a::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.25 via Frontend
 Transport; Fri, 1 Sep 2023 05:14:48 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CO1PEPF000044FD.mail.protection.outlook.com (10.167.241.203) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.2 via Frontend Transport; Fri, 1 Sep 2023 05:14:47 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:14:47 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:14:45 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7c2335fe-4886-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YdY06kseYzjerhRqBZ9zVe8f8CFXvHIuLjWaFPOdwwGDjmMHLy8ZUg8Vp7p3hAeb6uEgn0uzg2kvbGNmMCMCnRd7oUIF/g/bhmNs+cES2ubqyxnFFqSkiVIFAiMFbNz86ii4vB+Sq9eSHc1TGS3/26rF1+NR/kKfi+FbZEio6afyXvreGBwxWInI1/LAtnSQH02o1fodIFqQtoJZ8l/4zkMUxUTuhEW2jCT01NxTtAvGsjyy0XKF8y4Y/Gvaml/7cCmDykrXjNyhyz6nwdKyQK5F8/obDKMvjnMkWozlrRs+OWqFRzdrtcqJkbldXCNgyPv1jUc63LHS0+U1ZGQEfg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EWgrFE1PFgTCu8cgThjyBQIC11fyPr/WMl8soFJau04=;
 b=FQDOdkseF2A6nt3vS3PI/GTkpz1Dxp8hxd7th1V1cqdduLt39NhQeIJ8+knPy4f2gNe84Er+ICFMCLWlejbqum9Y8hBYvq1j4X9Ch0N63HDIhnElplTQ76HqZvOhkPTCVUNsHzjg77kSEnlNiTRj4+0EI4qb98O4WJm2/rn+Tie87yWSpgvIuH8vlEGfsdxWmzOZj9v8b48PDfQyF7OFKpra5O+Dr/2PmMVAuyMvGQg6kIs/ZhrJwe0t3jAspDT46j4gUeta0sC4Een6+eWO6ZHQoldesso9k5V9mSBdC69B1T/7wnVq98efzWyOnrIK1mz3J6AeshvnyPkCwVjuxg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EWgrFE1PFgTCu8cgThjyBQIC11fyPr/WMl8soFJau04=;
 b=J6kdAQjeqLkS7bHW636KUKc3VGkFdw7mFfj0QvoBuiVOu9fFCcoLx+HLHiNjJVL7MTVC2axIPLDCGg//Kt1HKBda6dWgFg2Rz/yx/cnAA/AisHmvP++p+Qg4/gFWr+RI10BW8x/p8Ve3vOB7vZHdrSUYqx9Odh4gI58XQmd0bUA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Julien Grall <julien@xen.org>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [PATCH v5 5/5] xen/vpci: header: filter PCI capabilities
Date: Fri, 1 Sep 2023 01:13:53 -0400
Message-ID: <20230901051357.236049-1-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20230901045742.235975-1-stewart.hildebrand@amd.com>
References: <20230901045742.235975-1-stewart.hildebrand@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044FD:EE_|CH0PR12MB5188:EE_
X-MS-Office365-Filtering-Correlation-Id: 2a342d2c-33ef-41eb-8b07-08dbaaaa5ccd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zQif1+PdSaApbuz2d6GvtRDV5Z6CZ8zj2tvIicfZfaAmSiMWZ/X/VWqVVxu9HcB+SNs5uETERwCd0TLpS6eMdgNaIW4QCqjxBsm90BlT/ZVf5POP3no0Ln86cKs4w/k2hSjShOyLWI5oF/up9b8Yael6E+S1PnW6b/HlGeSas1prQvLMSJcsC/5OCBc0E2M9w2Wi9JHV+Gv0fQPW6dRGH1sU+paGtCcluR9FixbUuMUdhv21EGRo0zE1L/EQXy/MqOeCDVR6vGYM+DhdsWaLwYQ9ZdbDoliseDcr1j9l7t5xcjly1V81iDyQwxRXXsXnUaFtwzyENZ8we2n1C5Fmy/8VdQ4To5xHmWMuwu/ZwCsW9qhWic/Ne12S6e27HQ/AgYa7Ax/NNSWZWuzRTewTOjI18A6LHlerCu3nUNsG5fyikd22XPRviY3smdMbHMH5uEhSiLeVdhEWszkwYz+Gv/LADDWoiaFyK1c5pa7fjcYbJowEEIKcmWMCYgnaYm6gDHtSpNV3AnJSyC0I/2al8b/QrZAW7i0wvxNDjUA8Y7RnQ4WizuImJJll/M1FduXrXz3ppwzguC0hx9qBpQM/CU4gucDYaa2s9I1RTyIIkzn/u3ZxyiFjQtdZa+XHW6EVTCFkRSIvKi7KANvbbCHRtYvNDa85bYBJkvG5h7XcZOq+Gsc5ff/LlqdRvj/+Jwx0BMUJhGhwZbCNoWxAPWnan/sjUi+kSWpLZJsIlgGMX4B1rJv+arhw2TIabPj0pohvYv6/Yonz6/GoeFvCrHIX7w==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(376002)(136003)(39860400002)(346002)(82310400011)(451199024)(186009)(1800799009)(36840700001)(46966006)(40470700004)(6666004)(36860700001)(82740400003)(356005)(40480700001)(83380400001)(81166007)(478600001)(47076005)(54906003)(316002)(41300700001)(70206006)(70586007)(86362001)(40460700003)(2906002)(5660300002)(426003)(6916009)(36756003)(336012)(2616005)(1076003)(44832011)(26005)(8676002)(8936002)(4326008)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:14:47.9631
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2a342d2c-33ef-41eb-8b07-08dbaaaa5ccd
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000044FD.namprd21.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5188

Currently, Xen vPCI only supports virtualizing the MSI and MSI-X capabilities.
Hide all other PCI capabilities (including extended capabilities) from domUs for
now, even though there may be certain devices/drivers that depend on being able
to discover certain capabilities.

We parse the physical PCI capabilities linked list and add vPCI register
handlers for the next elements, inserting our own next value, thus presenting a
modified linked list to the domU.

Introduce helper functions vpci_hw_read8 and vpci_read_val. The vpci_read_val
helper function returns a fixed value, which may be used for RAZ registers, or
registers whose value doesn't change.

Introduce pci_find_next_cap_ttl() helper while adapting the logic from
pci_find_next_cap() to suit our needs, and implement the existing
pci_find_next_cap() in terms of the new helper.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
v4->v5:
* use more appropriate types, continued
* get rid of unnecessary hook function
* add Jan's R-b

v3->v4:
* move mask_cap_list setting to this patch
* leave pci_find_next_cap signature alone
* use more appropriate types

v2->v3:
* get rid of > 0 in loop condition
* implement pci_find_next_cap in terms of new pci_find_next_cap_ttl function so
  that hypothetical future callers wouldn't be required to pass &ttl.
* change NULL to (void *)0 for RAZ value passed to vpci_read_val
* change type of ttl to unsigned int
* remember to mask off the low 2 bits of next in the initial loop iteration
* change return type of pci_find_next_cap and pci_find_next_cap_ttl
* avoid wrapping the PCI_STATUS_CAP_LIST condition by using ! instead of == 0

v1->v2:
* change type of ttl to int
* use switch statement instead of if/else
* adapt existing pci_find_next_cap helper instead of rolling our own
* pass ttl as in/out
* "pass through" the lower 2 bits of the next pointer
* squash helper functions into this patch to avoid transient dead code situation
* extended capabilities RAZ/WI
---
 xen/drivers/pci/pci.c     | 26 +++++++++-----
 xen/drivers/vpci/header.c | 76 +++++++++++++++++++++++++++++++++++++++
 xen/drivers/vpci/vpci.c   | 12 +++++++
 xen/include/xen/pci.h     |  3 ++
 xen/include/xen/vpci.h    |  5 +++
 5 files changed, 113 insertions(+), 9 deletions(-)

diff --git a/xen/drivers/pci/pci.c b/xen/drivers/pci/pci.c
index 3569ccb24e9e..8799d60c2156 100644
--- a/xen/drivers/pci/pci.c
+++ b/xen/drivers/pci/pci.c
@@ -39,31 +39,39 @@ unsigned int pci_find_cap_offset(pci_sbdf_t sbdf, unsigned int cap)
     return 0;
 }
 
-unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
-                               unsigned int cap)
+unsigned int pci_find_next_cap_ttl(pci_sbdf_t sbdf, unsigned int pos,
+                                   bool (*is_match)(unsigned int),
+                                   unsigned int cap, unsigned int *ttl)
 {
-    u8 id;
-    int ttl = 48;
+    unsigned int id;
 
-    while ( ttl-- )
+    while ( (*ttl)-- )
     {
         pos = pci_conf_read8(sbdf, pos);
         if ( pos < 0x40 )
             break;
 
-        pos &= ~3;
-        id = pci_conf_read8(sbdf, pos + PCI_CAP_LIST_ID);
+        id = pci_conf_read8(sbdf, (pos & ~3) + PCI_CAP_LIST_ID);
 
         if ( id == 0xff )
             break;
-        if ( id == cap )
+        if ( (is_match && is_match(id)) || (!is_match && id == cap) )
             return pos;
 
-        pos += PCI_CAP_LIST_NEXT;
+        pos = (pos & ~3) + PCI_CAP_LIST_NEXT;
     }
+
     return 0;
 }
 
+unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
+                               unsigned int cap)
+{
+    unsigned int ttl = 48;
+
+    return pci_find_next_cap_ttl(sbdf, pos, NULL, cap, &ttl) & ~3;
+}
+
 /**
  * pci_find_ext_capability - Find an extended capability
  * @sbdf: PCI device to query
diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index 791791e6c9b6..f7d02a7f7bfa 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -525,6 +525,18 @@ static void cf_check rom_write(
         rom->addr = val & PCI_ROM_ADDRESS_MASK;
 }
 
+static bool cf_check vpci_cap_supported(unsigned int id)
+{
+    switch ( id )
+    {
+    case PCI_CAP_ID_MSI:
+    case PCI_CAP_ID_MSIX:
+        return true;
+    default:
+        return false;
+    }
+}
+
 static int cf_check init_bars(struct pci_dev *pdev)
 {
     uint16_t cmd;
@@ -562,6 +574,70 @@ static int cf_check init_bars(struct pci_dev *pdev)
     if ( rc )
         return rc;
 
+    if ( !is_hardware_domain(pdev->domain) )
+    {
+        if ( !(pci_conf_read16(pdev->sbdf, PCI_STATUS) & PCI_STATUS_CAP_LIST) )
+        {
+            /* RAZ/WI */
+            rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL,
+                                   PCI_CAPABILITY_LIST, 1, (void *)0);
+            if ( rc )
+                return rc;
+        }
+        else
+        {
+            /* Only expose capabilities to the guest that vPCI can handle. */
+            unsigned int next, ttl = 48;
+
+            next = pci_find_next_cap_ttl(pdev->sbdf, PCI_CAPABILITY_LIST,
+                                         vpci_cap_supported, 0, &ttl);
+
+            rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL,
+                                   PCI_CAPABILITY_LIST, 1,
+                                   (void *)(uintptr_t)next);
+            if ( rc )
+                return rc;
+
+            next &= ~3;
+
+            if ( !next )
+                /*
+                 * If we don't have any supported capabilities to expose to the
+                 * guest, mask the PCI_STATUS_CAP_LIST bit in the status
+                 * register.
+                 */
+                header->mask_cap_list = true;
+
+            while ( next && ttl )
+            {
+                unsigned int pos = next;
+
+                next = pci_find_next_cap_ttl(pdev->sbdf,
+                                             pos + PCI_CAP_LIST_NEXT,
+                                             vpci_cap_supported, 0, &ttl);
+
+                rc = vpci_add_register(pdev->vpci, vpci_hw_read8, NULL,
+                                       pos + PCI_CAP_LIST_ID, 1, NULL);
+                if ( rc )
+                    return rc;
+
+                rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL,
+                                       pos + PCI_CAP_LIST_NEXT, 1,
+                                       (void *)(uintptr_t)next);
+                if ( rc )
+                    return rc;
+
+                next &= ~3;
+            }
+        }
+
+        /* Extended capabilities RAZ/WI */
+        rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL, 0x100, 4,
+                               (void *)0);
+        if ( rc )
+            return rc;
+    }
+
     if ( pdev->ignore_bars )
         return 0;
 
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index 6e6ad4b80a0d..94cbae312abe 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -136,6 +136,18 @@ static void cf_check vpci_ignored_write(
 {
 }
 
+uint32_t cf_check vpci_read_val(
+    const struct pci_dev *pdev, unsigned int reg, void *data)
+{
+    return (uintptr_t)data;
+}
+
+uint32_t cf_check vpci_hw_read8(
+    const struct pci_dev *pdev, unsigned int reg, void *data)
+{
+    return pci_conf_read8(pdev->sbdf, reg);
+}
+
 uint32_t cf_check vpci_hw_read16(
     const struct pci_dev *pdev, unsigned int reg, void *data)
 {
diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h
index ea6a4c9abf38..cceac8654f07 100644
--- a/xen/include/xen/pci.h
+++ b/xen/include/xen/pci.h
@@ -194,6 +194,9 @@ int pci_mmcfg_read(unsigned int seg, unsigned int bus,
 int pci_mmcfg_write(unsigned int seg, unsigned int bus,
                     unsigned int devfn, int reg, int len, u32 value);
 unsigned int pci_find_cap_offset(pci_sbdf_t sbdf, unsigned int cap);
+unsigned int pci_find_next_cap_ttl(pci_sbdf_t sbdf, unsigned int pos,
+                                   bool (*is_match)(unsigned int),
+                                   unsigned int cap, unsigned int *ttl);
 unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
                                unsigned int cap);
 unsigned int pci_find_ext_capability(pci_sbdf_t sbdf, unsigned int cap);
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 0a6c9e19b399..866bbf656e2b 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -51,7 +51,12 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size);
 void vpci_write(pci_sbdf_t sbdf, unsigned int reg, unsigned int size,
                 uint32_t data);
 
+uint32_t cf_check vpci_read_val(
+    const struct pci_dev *pdev, unsigned int reg, void *data);
+
 /* Passthrough handlers. */
+uint32_t cf_check vpci_hw_read8(
+    const struct pci_dev *pdev, unsigned int reg, void *data);
 uint32_t cf_check vpci_hw_read16(
     const struct pci_dev *pdev, unsigned int reg, void *data);
 uint32_t cf_check vpci_hw_read32(
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:24:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:24:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594388.927696 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwdQ-0003wy-Dn; Fri, 01 Sep 2023 05:23:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594388.927696; Fri, 01 Sep 2023 05:23:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwdQ-0003wr-9b; Fri, 01 Sep 2023 05:23:56 +0000
Received: by outflank-mailman (input) for mailman id 594388;
 Fri, 01 Sep 2023 05:23:55 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=am4h=ER=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qbwdP-0003wl-7b
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:23:55 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20601.outbound.protection.outlook.com
 [2a01:111:f400:7eae::601])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bce3c47b-4887-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 07:23:53 +0200 (CEST)
Received: from MN2PR14CA0010.namprd14.prod.outlook.com (2603:10b6:208:23e::15)
 by BL1PR12MB5173.namprd12.prod.outlook.com (2603:10b6:208:308::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.23; Fri, 1 Sep
 2023 05:23:49 +0000
Received: from BL02EPF0001A105.namprd05.prod.outlook.com
 (2603:10b6:208:23e::4) by MN2PR14CA0010.outlook.office365.com
 (2603:10b6:208:23e::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.25 via Frontend
 Transport; Fri, 1 Sep 2023 05:23:49 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A105.mail.protection.outlook.com (10.167.241.137) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.20 via Frontend Transport; Fri, 1 Sep 2023 05:23:49 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:23:48 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:23:36 -0500
Received: from [192.168.139.126] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:23:35 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bce3c47b-4887-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=K11Fjs44LYfa19+Cw9dFAAibzJemG839nQZXO650L1pvQHZyrZ0WIjY5/7vu6lVH8SBg6a4TF70QiUyTkPQbPIZhZLsQfM+OT4NAiduGLNhYGSCCNww6jS+wy7Hf1kRzI6KliVss8e/BTcBDJzZLwZ9zj/Y9lYM5WLk47avMHC12jMY6RJdHe4zc6d/y7rfwqL3rxUrfdQaJTZW0MJurzPF96qdPhTYWhBmSuTJYZmCpMiJBHszzzLu3ab/o1VEki7d+zG4kDGD+OLhtW01UoUTWAGdUPu+bqk/SKH2PILYJlvN4KFNkLUwfXYoAAYTOmU5J+2R5IIn3Fh3pN37ZvQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Xn88MwuMqvRm9L17DSJ6UxuL5FMJtpVnGRfdeS2PdlY=;
 b=XAK/UOsC33OkHkfPxYo7kvAPtKJxiFE245zpqVDMFEfp6jpDLWB3bcd46sS3l7Bv3l5tTssyRB8HVKBHT9ZU1NwXv/9kf1jnxFNmfuvMVVQVBhvLYxA0mWxjFJe0oCAnWVPLDLLMds6NDxlWjPTcb6NbKeMrm426DUqAPv9so3kNRgPuQdwgYkr4AoDdcM7qzFrk0dgkMFT909JuK0Qr5tk6u+bzpnbvAkt5QPz/YzjnlL4BsdwqOuHTrhRjuPuLnv1OxLwMRlxO/JHfvvMpmptXM8TjqFL92LsbHeyoIDOOi+5ZlfWEPd2zk+AwXzDMQfZt3YjTTt6XKfhDsxQ+qg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=epam.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Xn88MwuMqvRm9L17DSJ6UxuL5FMJtpVnGRfdeS2PdlY=;
 b=WfOj979VVSzh3XRkN6CYOf6bRMGk64JB7OQDT64SKVJ9pXAFtZwNT1bSqjwS3Kx1lBKMKuOtkRoOF5ma+9UBeQBa77weyZ3DEhW2uYfklkGYcmAmE15PcA3+TcISzxKFamaY4zmvD1YpPo3/cusVTI4jaYbcyNTnN6ZcmLp8tSY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <9abdda50-6d5d-a9f9-d02f-d91e99968e9e@amd.com>
Date: Fri, 1 Sep 2023 01:23:31 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH v9 10/16] vpci/header: emulate PCI_COMMAND register for
 guests
Content-Language: en-US
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-11-volodymyr_babchuk@epam.com>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <20230829231912.4091958-11-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A105:EE_|BL1PR12MB5173:EE_
X-MS-Office365-Filtering-Correlation-Id: 2af0d5ce-2592-4b25-6bf4-08dbaaab9f4e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pQ85/FKbWdqrAAdOVH+HVVBFMFT0dQcwgKZcYq44xgHwclSC78xIjkyVexwu3EFW/qalZRAPeDJHjX5aHqdR1jB9hBHVitZ3QuYrEEl5FTTXp4gCjBb25R2Y2M0BM2mZj9ROdc0E7K8gH9UAdrPastzT4gkkYf/gpe6AMJEhJ2rXWPsH53dD0FKkVzo/WjhKvngAP9m//cI5Axfwf3hQPJbyM9aIsreEz/vtvLk9xxOiTIOngjie21qIZZkbvimq4Bh7GEFn8dAjpjl8iymYamxvKo2QWpkU6zMCOfc3V4r/iStZtN2WeRKV8j9wSrrUQFTGUSwiLUTLnp7yNXn6mrDBip+GDgINfqp4bENRxt6chYMKk4LC1/VhKcQ+v6cJmIjVcQNaJJShGTaNcvJ2RUnQRMZxGsoJKVEkHCc2XQn4tBvB6rDvRS48tagapkbxD4fseIxx52X8k8ncdPmyvJAoaMNBZvU3mShXpI7aUI55QakIDJfWlVCE+vtL/ujZmTx8fr2p0QUA5uOapbuyandg76Pga9LD5XTSVgQGmZ0DboCA8D6FA1RSA62PjS2R+Ad7UKxRERbHVqfL+AawfjJkOLmvIiqA+gucrIsXJ8vjinsxe/hf4cLv0Q4fF5eTK7+EoRYCCaJ3uo0kiC6m2uV0kcsRjOuLdP5sljVtpn5JXptayHUizrovtrfujykYDLGINYZ6kFAG5ZzV1PH1Y177rO8ve89APN7InEtHzswMVb7mCCuAFZFxzfkut5fH4s2T4JSNrpfb1UGmoUz+s6enzHrbbrCtBjgw9Cbp5fzpHqG2BFQDhdJU9AGjmF9Q
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(136003)(346002)(376002)(39860400002)(82310400011)(451199024)(186009)(1800799009)(40470700004)(46966006)(36840700001)(6666004)(53546011)(478600001)(2616005)(336012)(426003)(26005)(2906002)(4744005)(44832011)(16576012)(54906003)(316002)(41300700001)(70586007)(70206006)(110136005)(5660300002)(8936002)(8676002)(4326008)(40460700003)(36756003)(40480700001)(47076005)(36860700001)(31696002)(86362001)(81166007)(356005)(82740400003)(31686004)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:23:49.1590
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2af0d5ce-2592-4b25-6bf4-08dbaaab9f4e
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A105.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5173

On 8/29/23 19:19, Volodymyr Babchuk wrote:
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index 1e82217200..e351db4620 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -523,6 +546,14 @@ static void cf_check cmd_write(
>          pci_conf_write16(pdev->sbdf, reg, cmd);
>  }
> 
> +static uint32_t guest_cmd_read(const struct pci_dev *pdev, unsigned int reg,

As this function is called indirectly, it needs a cf_check attribute

> +                               void *data)
> +{
> +    const struct vpci_header *header = data;
> +
> +    return header->guest_cmd;
> +}
> +
>  static void cf_check bar_write(
>      const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data)
>  {


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 05:25:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 05:25:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594399.927706 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwez-0004tP-Ot; Fri, 01 Sep 2023 05:25:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594399.927706; Fri, 01 Sep 2023 05:25:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbwez-0004tI-Ls; Fri, 01 Sep 2023 05:25:33 +0000
Received: by outflank-mailman (input) for mailman id 594399;
 Fri, 01 Sep 2023 05:25:32 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=am4h=ER=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qbwey-0004t8-3T
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 05:25:32 +0000
Received: from NAM02-BN1-obe.outbound.protection.outlook.com
 (mail-bn1nam02on2060c.outbound.protection.outlook.com
 [2a01:111:f400:7eb2::60c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f7b67f9b-4887-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 07:25:31 +0200 (CEST)
Received: from DM5PR07CA0112.namprd07.prod.outlook.com (2603:10b6:4:ae::41) by
 BN9PR12MB5227.namprd12.prod.outlook.com (2603:10b6:408:100::6) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6745.23; Fri, 1 Sep 2023 05:25:27 +0000
Received: from CY4PEPF0000EE3B.namprd03.prod.outlook.com
 (2603:10b6:4:ae:cafe::d1) by DM5PR07CA0112.outlook.office365.com
 (2603:10b6:4:ae::41) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22 via Frontend
 Transport; Fri, 1 Sep 2023 05:25:26 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000EE3B.mail.protection.outlook.com (10.167.242.15) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6745.20 via Frontend Transport; Fri, 1 Sep 2023 05:25:26 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:25:26 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 1 Sep
 2023 00:25:25 -0500
Received: from [192.168.139.126] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 1 Sep 2023 00:25:25 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f7b67f9b-4887-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bz/puZT0YvupLpmbPHHQ6d4pvNgC1EYDNtCiV3NxJ/HlqMj3nnY7adwL98ywk0MmsUO5Wpj2LH7U/V9CtRg62/h2GV78KIGxEzF41wK57vvF7Rqyp3aNgRo9zboUhw/Cff0hmDCKOtb6Anh+hpACE0cjTW+VrNlFQfOARFolCjI6Usd54KCpIYSyqCsGuUkctemDL2zCzMENSJ/zGBL6njXVtr9HDZUuIxD3iOhF0omlE+l2pay2SzRXSIPLVAEcekXZSDhUsvuqHgKhM2fJgM6nLsrno6AqyPxLZ7mwUx8Kq+wJp5c0m8POW7e7K8Zt9eavs29nr0x4X4MPWyrKmw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YKgwnuMdzxkVoV7dgB9Q9D7fvP477lcuMC/7ewiTwRk=;
 b=cu2ptjgAC3jY+5P3hcDRYsVcTNXXREifQwkca6/+WcBE1seVf7FRGXyjT871QBObOu4pPezsm6GNYDTVwLiO2JwsHnCblpsPc58e/uKVgf9vo0XkGwYUAjzgE3Kh+4FsPpTGUzPJekOIytej2u33JE2yarjaWV4syUXJRbtK66EE2bZstuQzj3MKxfmFGGZfW+ymHaZJZJk5wPUxBh7EG0fTeIe6oBdE5RkGPYwIlIwDaQ5t7v88N0Xc/16IaFVaPHCvNtv3VWkFi23WhUW+uV8ubf1q887RJaoiv2AGAbViiM99hKF2IFJKCCTHQiK4STe2rwDkHyDMi2ApLDXQqg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=epam.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YKgwnuMdzxkVoV7dgB9Q9D7fvP477lcuMC/7ewiTwRk=;
 b=c8erFDR1HQVZP2mAo7bnw/zFmYt6/PKsnmlNY98M+e5k/IuCaVFQlAXFebf5hYyoIrzf5lAbhnyp1B4V8tKT+w3KD+XCo6oYDFa4+MHHd2Lcg+CIzQ2v4HEfEdBe/XZaM+53+Ma0f+soIvobkG301KXMX9z26ib7saSlz5N7RcU=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <0c5c3d9c-67e1-0b67-81af-6e20cd3a73b3@amd.com>
Date: Fri, 1 Sep 2023 01:25:15 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH v9 06/16] vpci/header: implement guest BAR register
 handlers
Content-Language: en-US
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-7-volodymyr_babchuk@epam.com>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <20230829231912.4091958-7-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3B:EE_|BN9PR12MB5227:EE_
X-MS-Office365-Filtering-Correlation-Id: 47d2aa67-6516-4274-d114-08dbaaabd967
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9BnK6//j3QbQKsLuOT1TB2FsVuT1GNHnCWy/pXAN9LhGE1rnufq8moFGxdbIM4aGyXoFXp7pxT+tFWYk6BkQ5VxKeNStyqdeTjGcuI+EVXfM9HBM7YZSmRab6ZTQWNylJBV71gtBe5kzsDRrvzYY5GgJYJFYFc99adshVFbVlr4b8rUdBbTxMz9UheDB58IvwqguvtkJQ6K476Z2ZwmnH4WURvbZxom0FkNTLFiF0cY/NoIGtioPivSudxRutGxB/zFAE1HnXOQF+iRT/tXhJi4FGO27ozd6YuljejDYyP/IpFKlZy69GI3S/4bhQ/psbjGXjTr2g8ICOs7oRXZCSO/0foEske2sSCPUq69hTuxkzpHYBbd9NnwTyWCmD08TBh52BhAnXP1RS1tNgzcPy95KXi7ffhvc0V2eSP2y6R5x+mS5DHPP9jfmEb4h/W7GVzCbF8sVpug/KiAOZA/xisTkC47krbqUcjyHyZKuzwRXQZVdBIv0fGxY/sfvKJPxmJWKUy+Y67kXNeSzUMSmSJoKmM/I1bn+eLF3VgX7eLqwYTzd+hElS6AXA9exme/Jj25ZfTibrn7XxDaVbjgLEfoNEgtfdbEKnmukIDgru8rAQQVLYWZPHn5KXXOGEcaCSE4YZfLRAtaYGb4GA5jqcvQKPO6eUgVWiM96QcVTwUieWuamkjc/qprGWqlBy2GMdn9/7UmM3xYMS9tIdX9XSO8llt/u8XUxkiI5vkOpnMyjET0AX3Apq2KUu5qCsAYffsfht1MgGfjU4kp7mlv/OG+EP1acHKlgrvTLXxcgIMtGFrVYyApZniqO4Sn39u4t
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(396003)(346002)(136003)(376002)(82310400011)(451199024)(1800799009)(186009)(40470700004)(36840700001)(46966006)(6666004)(53546011)(478600001)(2616005)(336012)(426003)(26005)(2906002)(4744005)(44832011)(16576012)(54906003)(316002)(41300700001)(70586007)(70206006)(110136005)(5660300002)(8936002)(8676002)(4326008)(40460700003)(36756003)(40480700001)(47076005)(36860700001)(31696002)(86362001)(81166007)(356005)(82740400003)(31686004)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 05:25:26.5396
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 47d2aa67-6516-4274-d114-08dbaaabd967
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3B.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5227

On 8/29/23 19:19, Volodymyr Babchuk wrote:
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index e58bbdf68d..e96d7b2b37 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -477,6 +477,72 @@ static void cf_check bar_write(
>      pci_conf_write32(pdev->sbdf, reg, val);
>  }
> 
> +static void cf_check guest_bar_write(const struct pci_dev *pdev,
> +                                     unsigned int reg, uint32_t val, void *data)
> +{
> +    struct vpci_bar *bar = data;
> +    bool hi = false;
> +    uint64_t guest_addr = bar->guest_addr;
> +
> +    if ( bar->type == VPCI_BAR_MEM64_HI )
> +    {
> +        ASSERT(reg > PCI_BASE_ADDRESS_0);
> +        bar--;
> +        hi = true;
> +    }
> +    else
> +    {
> +        val &= PCI_BASE_ADDRESS_MEM_MASK;
> +    }
> +
> +    guest_addr &= ~(0xffffffffull << (hi ? 32 : 0));

Uppercase ULL on the constant to avoid a MISRA violation


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 06:30:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 06:30:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594407.927716 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbxfW-0001QD-9S; Fri, 01 Sep 2023 06:30:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594407.927716; Fri, 01 Sep 2023 06:30:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbxfW-0001Q6-6U; Fri, 01 Sep 2023 06:30:10 +0000
Received: by outflank-mailman (input) for mailman id 594407;
 Fri, 01 Sep 2023 06:30:08 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=cwX6=ER=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qbxfU-0001Jn-6b
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 06:30:08 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0602.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::602])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fd7b8e07-4890-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 08:30:06 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB7165.eurprd04.prod.outlook.com (2603:10a6:800:125::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6699.20; Fri, 1 Sep
 2023 06:30:02 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.021; Fri, 1 Sep 2023
 06:30:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fd7b8e07-4890-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cF3y+/DFlmiC5k5IvSmD7cxRnmPmJuCs02S8rVTeFgO4aw0koXbp1mYZEYKXxXxVg8pUq/yPYpGCl/DVYbDsE8S5d8eJdlIMwIav1zIe7Ib0vW7uvqTI8FPtZtzFeUCwRy6Xg9WzTXpaDtRyYZ5FR+I8Bs5TABjbxCTREsToueHM8RGPYDc1ZHwO5vE5axZDWZ4tJsY2VOutzlss4lj920D6PfFtoTVsPUmynv5WxcrVtiWEQYtjY9/VIQFcxpJ6aThJOVM3B8Zv9YRXVCrQ5OSCy+p3Rljc2fZuwTkaU1ml43x6ebhfdP/0PoKGfB4Vz5x5A2Qm0MgoT6Hnh4HB2A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1iLRMKdSo3X5O8szupheY/zd2SQEXJ8qgqh3EYQfQpA=;
 b=lBo+dEyAPJYML87AHyrlXB76093V49Y46Wom3HbngjojxeNtoHQU5j9AnUgdTWxZ0UhUfcfCzAX39rcgKZIsDaXMmqMcwIfRtt9KY1IngJa3TCjgm0dh729whzxnt6g+2C7SNu997yL3TdYTIUEGg5gnzilLisE0RJZ25hefMGKzyZfPlANB1mXAikKbknNTpjz9dN2DPWVUOrjdmf5gi60ZGHucpPwG5F9MwNRDIddEzLLcgDG1f5HOug3QNlwakk9DMKC50zupB0KTpeIvrxfuouSaib3BERK9CAxrLG/VT92VufehTRHm+71lnYOPSYQUwD9zi7LquZGeqeOA2A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1iLRMKdSo3X5O8szupheY/zd2SQEXJ8qgqh3EYQfQpA=;
 b=uXz0vOXWvr7mQOP6cvkS1gVn4vgwMz5fp/xSTkFYM8U+Olvx845JSji5DDl/aIzH+O7eWqXaQsm012w0De3PLP5FPM+yr5GnA8LZKAgMx28rIERGTbuNiWqqHtrud+rrp9iMeBDSnTkQFbSnTlPUlJrSxz9hlAxhF5NHR6Xw2yTO07urBPGf0tyjOLlueR38/9JfioSjDde8hINSr0k3nVjbRdRA0adSyYiaP5so+cjh5yMVDslBD/Sp0utQw/B+M9k8eVwQvxpdSF9cbAYIsoXdRHcPdRha2uz3LsO+fD1R9s1ne+M2BhesBZi5ugTWDY7LKyXagd5Okn6dSw5xsQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <879889d0-0f2d-2d06-e7b3-ec629f87672e@suse.com>
Date: Fri, 1 Sep 2023 08:29:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v2 4/8] xen/ppc: Implement bitops.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1692816595.git.sanastasio@raptorengineering.com>
 <583ed0d715aa70e777e7aa62a287acafc52d5a24.1692816595.git.sanastasio@raptorengineering.com>
 <11f73889-2059-1d6d-6498-1f1907afabaa@suse.com>
 <3b05ad4d-20e8-72f1-3f43-1c4e618c6ba4@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <3b05ad4d-20e8-72f1-3f43-1c4e618c6ba4@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FRYP281CA0009.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::19)
 To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB7165:EE_
X-MS-Office365-Filtering-Correlation-Id: 245586f4-0711-45b7-c0c7-08dbaab4df7b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	nbExx14frCTskKQlZDn8ky8eZwNxYCfDKn2ljcEhaYk55JHUxLCLJopUODdaTbZ6Y+n5xgr9vGA8fvECdy2iBvwD+qcDH5zO/tV2mjbXba6WS5G78BiggHEGyH4FenaCo8NaXD19uXKmAKvFBIE2Q805R3k3T6cA1bAbuEE4E5tXsQIi+Nzzjypz3ceX0OjfEOXTyICFmFofinxWQpI5QWYRP+y0w52epKS1QL8iOfxsc2GZJkJDlu3Z0UBKAA4QA5ZNKeaXvYObt4ImbUteDrFE0GXOCTuJzGEJzeZoHlEN6BfKdNAHu5CZLaytwpDbIINm/PXSuSCFg+YWEL9/ZKxWKaKxDGxR6wZt81CnoJI6paOab184DYJnxzgQeOHCBfAnH1wTk5nwmat8fbhd2jWg96HuuMYsyWvQVVUiCHGlfYOUMoMRd1/Vx4RbnxU+YYMHrHF1zdPlYv4M4j/CslthPYOtWHQ5p5RXAtagDHCl9k+YDbblJaQdy1jJOi77/+O7KnXsv7crb0dxiZxkFB4llCwoan8U7iDkKat9VOz4dH2GDFCO2KmY0OL2mpQ4rxSNszrmHYEURPYSW4z6qQAyjO9q7Y3vc/SAvb49OQcDSTqz2/c/xY4e1N2PXY7BAdWrFTsQnUrQQQhrJwSHbw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(366004)(396003)(39850400004)(136003)(1800799009)(186009)(451199024)(478600001)(31686004)(83380400001)(2616005)(26005)(6512007)(86362001)(6506007)(6486002)(53546011)(6666004)(31696002)(2906002)(4326008)(5660300002)(8676002)(6916009)(316002)(8936002)(66476007)(66556008)(41300700001)(66946007)(36756003)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UEFyOU1CVUgxaExVMUN1aXdzYzFKZ0ZtMVJEcUY5bzRBRTIydkIvZlhrU1Mz?=
 =?utf-8?B?ZVlnbndySSsrZ2Uyc0ZGNU1uTVpvaVp6ZmhmaVM5QmVYcDdTSWtEK0xlMmlD?=
 =?utf-8?B?RDNMS1dsVmZuWk1tNUU4RlBndDY2VGF1OHdKVlBIZVVIbTYwS1BTWE1YOVBV?=
 =?utf-8?B?TzZuRHZFeHRZSDBZT2c1ei9mMmFaZ1I2dkVFdll6dWFyM0pxL1VyTjJRaDlY?=
 =?utf-8?B?S25xd2Y3WTBGMU5JRTdtNDQwbS84eGhGZUdKb2hCbFYwMG4xRStxZ09kU0Js?=
 =?utf-8?B?RFBBK2JxNXVyT3BIL0xWZW5mbVBCNDBGTjBHcWg1ZktSWVo1SW16WkhDdFox?=
 =?utf-8?B?M1gwcngrdm5hNlFEU09SblRlZXZmY0s1amM1V0VqRy9CS1Q0U3Q3TjFWQ1lK?=
 =?utf-8?B?N0w0TXd6OVBXUXJYamFmZnJJZi9NemNPVFMyVGtxSitZTGo0SUF2TVZYTFBO?=
 =?utf-8?B?NDNkTGxSdEJvaVFRVVVrb3EvR3krZkRIUjNiUkh5NmMxRE1NSXFmVVpFb2xr?=
 =?utf-8?B?em0wM2FzY0k1NzhBOEV3Q3hQSXk3NTM1YXBVRGcyWGhaNVFFUzZsSldYZjR6?=
 =?utf-8?B?TmJxK0EyRmx4cXROWGdkaGRNYS9CU0dRa3ZpV2hrd1RHd09ZSmxSMkRJYi9W?=
 =?utf-8?B?M09Rc1JxNU11dTV6RHZkRmpHSUlyTGpmVG5nSi8raENDVk5nWXRKSUlBcWNr?=
 =?utf-8?B?MmkzOHhsNWxlTkVzckJPV25JbS94dmYzOStqaEZ6VktucWpSZ29mYUhrU2hz?=
 =?utf-8?B?SU1vMm1sVDQwSDMvbUsxdVlBSG5YSlVvaU9td3piTXRBdThQSGVmemxnbHln?=
 =?utf-8?B?TzFuNXBIMVh5ajQ2WjZmcnB3NHkvZENsY3Q2UStiQ3ptYVorMlpWWVp1ZW5h?=
 =?utf-8?B?K0VUY3BTampBeWVBdnRRWWR3blYycnpyZmFpNXR3Ui93U2VkazZtTUZ2WmdG?=
 =?utf-8?B?Y08rK2sxNWJjbnZFSmxKSWVqaXZ2c3N1OFhJZldYWEFDSEJ0ZWs2WmhkWm5i?=
 =?utf-8?B?Y3p6R1NCbnJsYnAwaVdmcElMRE04WDRFRTh0OFhSWDZsQUlUMXhFUzlhMklp?=
 =?utf-8?B?bVZKZ1dpbUs2emRDTE1wKzVDc1F3UWlWWXpHOW5hdFNLNFRNYk1LTy9xakV4?=
 =?utf-8?B?b0VCZXNYNWhCS09NZlZsOXNrUnB6Y09wOUhZbDFFMzJGNWRnR3pmMSs0dzV6?=
 =?utf-8?B?eGVobFJTQWFHRGJ3bHZ2SGZMczBZSm9hV2FDM0l2M0JEcVY4eHR1cTA3Uzd0?=
 =?utf-8?B?S1hiZHAvOGlSbG4vV1R0a0dDMThQMTBYalg4TDdzVlREa3plbGx3N0lVWTF6?=
 =?utf-8?B?T0M2UVhYUHhheVNYcE8zQkEyTDdrT3FIcE1jSnNiNFY1NEJOeitBcno2QzZC?=
 =?utf-8?B?M2c0alpzRE9JMEpQOW9vM2pib0lQcWZQSFk3TVpoQXdoZVkwNmhNbzBYdm1K?=
 =?utf-8?B?NkU1aWtaSzJQaHJZeDR0SnJLaGdlMVZVYm12ZVpXTWw4ZDMrVmFQVm1aV1M5?=
 =?utf-8?B?UUZWcGd2VVNueU9EWjlYRlB2Nk9UakJ3R2ZPTzd0Y2FpeUo2UVFXRDIxdG5s?=
 =?utf-8?B?OWZtR3M4bXVXeFRVVncvRjhEZTFWQ2l1bnFEK2RNaStaOGtCdENzT2ZocC81?=
 =?utf-8?B?Y3ZxSitxQzh5OEsyaU1VZG92a3RVWHZEOEd4ZG9PQ3piYXdlaTFLR1NJd3ZH?=
 =?utf-8?B?RTFJMlhNdkpyd01EbUtDOFJtcVVFNkhIT3JPNjdrVUtocE96ZlU0em1FRVh1?=
 =?utf-8?B?UnQ1SlVobm9zK0IxUlNJSCs5UTVsTEpGYWxuR0ZSd1NNeFpXV05UZEJITTVE?=
 =?utf-8?B?a3doRk5SMzA2enhMYzNwSHNJSDFvamRQeEJDQlU2VTdEK0ZLUHdVWWFXaElx?=
 =?utf-8?B?MVZBSGlOWnBBZ1EwMS9GVlRqSVRBTEN5MVpmQm8yVk5na3oxQk1WOEhWZXRP?=
 =?utf-8?B?Z09vUWxFd21UWnllcnl2RVNSVHhBbnMxbStyK0UvUmZhWWZFQTRwbVFqSVZV?=
 =?utf-8?B?U0xlZlVYYm1sVFZlUmlVYW1lUVpLRTAybmNRWlRQbDYrZ0loOXZ1Mk4zYzl4?=
 =?utf-8?B?b1c0MzRCVDEvejFoaGtiVWUxZXRjM3Yvb2tuczBrSUhRTGZoS3p0WU5jUnl6?=
 =?utf-8?Q?JRONbAbqmcI0vIqJwZ6KzfPyf?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 245586f4-0711-45b7-c0c7-08dbaab4df7b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 06:30:02.5610
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9E33/5PpEjxBuorBCsp7BehWJ4nn2TlJcRV1NsXkVvv7twaAbdfw/DT7bV0i96B4lP4kxpqZKG33wW7+C/jbVQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7165

On 31.08.2023 22:06, Shawn Anastasio wrote:
> On 8/29/23 8:59 AM, Jan Beulich wrote:
>> On 23.08.2023 22:07, Shawn Anastasio wrote:
>>> +{                                                                              \
>>> +    unsigned long old;                                                         \
>>> +    unsigned int *p = (unsigned int *)_p;                                      \
>>> +    asm volatile (                                                             \
>>> +    prefix                                                                     \
>>> +"1: lwarx %0,0,%3,0\n"                                                         \
>>> +    #op "%I2 %0,%0,%2\n"                                                       \
>>> +    "stwcx. %0,0,%3\n"                                                         \
>>> +    "bne- 1b\n"                                                                \
>>> +    : "=&r" (old), "+m" (*p)                                                   \
>>> +    : "rK" (mask), "r" (p)                                                     \
>>> +    : "cc", "memory");                                                         \
>>
>> The asm() body wants indenting by another four blanks (more instances below).
>>
> 
> If I were to match the style used in the previous patch's atomic.h, the
> body should be indented to line up with the opening ( of the asm
> statement, right?

Depends on whether the ( is to remain the last token on its line. If so, ...

> I'll go ahead and do that for consistency's sake
> unless you think it would be better to just leave it as-is with an extra
> 4 spaces of indentation.

... this style of indentation would want using. Either is fine, in case you
have a specific preference.

>>> +/* Based on linux/include/asm-generic/bitops/ffz.h */
>>> +/*
>>> + * ffz - find first zero in word.
>>> + * @word: The word to search
>>> + *
>>> + * Undefined if no zero exists, so code should check against ~0UL first.
>>> + */
>>> +#define ffz(x)  __ffs(~(x))
>>> +
>>> +/**
>>> + * hweightN - returns the hamming weight of a N-bit word
>>> + * @x: the word to weigh
>>> + *
>>> + * The Hamming Weight of a number is the total number of bits set in it.
>>> + */
>>> +#define hweight64(x) generic_hweight64(x)
>>> +#define hweight32(x) generic_hweight32(x)
>>> +#define hweight16(x) generic_hweight16(x)
>>> +#define hweight8(x) generic_hweight8(x)
>>
>> Not using popcnt{b,w,d}, e.g. via a compiler builtin?
>>
> 
> Excellent point. It looks like gcc's __builtin_popcount* family of
> builtins will do what we want here. I suppose the other architectures in
> Xen don't do this because they target toolchains old enough to not have
> these builtins?

Well, on x86 a patch introducing its use is actually pending ("x86: use
POPCNT for hweight<N>() when available").

>>> +    tmp = (*p) & (~0UL >> (BITS_PER_LONG - size));
>>> +    if (tmp == 0UL)        /* Are any bits set? */
>>> +        return result + size;    /* Nope. */
>>> +found:
>>
>> Labels indented by at least one blank please. (More elsewhere.)
> 
> I wasn't aware of this style convention -- so a single blank before the
> label would be correct?

Yes. (There are cases where deeper indentation is neater, but this isn't
one of them.)

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 06:41:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 06:41:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594415.927726 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbxqq-0003eF-Ff; Fri, 01 Sep 2023 06:41:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594415.927726; Fri, 01 Sep 2023 06:41:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbxqq-0003e8-Bg; Fri, 01 Sep 2023 06:41:52 +0000
Received: by outflank-mailman (input) for mailman id 594415;
 Fri, 01 Sep 2023 06:41:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=cwX6=ER=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qbxqp-0003e2-5u
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 06:41:51 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20601.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::601])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9fcaf980-4892-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 08:41:48 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBAPR04MB7271.eurprd04.prod.outlook.com (2603:10a6:10:1a6::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22; Fri, 1 Sep
 2023 06:41:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.021; Fri, 1 Sep 2023
 06:41:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9fcaf980-4892-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aPAqlZoygv9sLeuRCFof5iwScnzraOzfGelq663H2A8M2awRJ4I2YKE6EZ3sfSScUTG03eMNmpoHoUT2ecney+kkO6jc+8nTBdr8CfKPZwP6gCAX1/YZO7GNKmw1sDfCisqT4OlEv+T0LGOk6zSkB8l+vHkv9Z20pO2sL6zgkav05ehJWdgk4jt1ewU+z8PcrqS+s/7v0j1t02W4mshpJZH8Kkyi2ZxfIwRpgfAAHT3hNuGReKCrxBF5mxuVnKPi5fhLbPK1svnkofyLyKxfj4PINpXtc3zOllMZIYKWmf4xgdjCFMbJDW2HfC3dh7HBU4qGWa91pVDFnf4xpx/gBw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9l312x2LMU0e88AsqYXEC7ucHbsAli9ncOp8TEE6QTc=;
 b=kxx1CXbXWxEODNk4/7zaM76eKoeujskmu9o65cA0R+CjLN9dAMiWCoMdw4wtFvJFG8JSZw3yYA5goIp9x1GAmTrwc+33n/JnJ4VaJCMuUTtOE8HOhoDF8+Pv+pVpqDtea0VQcvtE/XYYv2X+PezCLYiH5p3DwXlbmqQ7LgTe/7I/C7g9bWnU8T/cjlVw3RVg7J/zXwOovA6ZYs4h9tKC0c7CXAQDBA3eO/mxOGpjUZufXO2tAkRR12jZEgo9pZpbPOZcRz/4eJsz6qRsaW7J0OZIDS5hEM+ziTvkWd+xefzfu5K8jdNCuLnf9sXGEYKld9+grmThVXOmg/OJpTl1iQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9l312x2LMU0e88AsqYXEC7ucHbsAli9ncOp8TEE6QTc=;
 b=XtIlbQf6kZ5pMpIMJ+VlNCKUlhXZbKIk7SZl0nIr5eghhJBdhgV06GZkVMbJMP7bmqvxSEMWtPW8DOrFEsQ229d4qe+pHTzS3bSNII6+cfoYWvgEgqDEJOU2Th7qtaKFLVEhycAxZP+yDWt5cCgQc/zvwqkfUDFwFeIZ5KePMRy4Zpyql8Oc6jqm5ohZ90/2ePBAM5EF9rGaowDKFLU51tCAWfW3M+9o7JGAEw2uikJ4SryBZoVvLpXQ9HCDzcR6p7W01tpmkWk34ZILscmN+Ft78YqnY4wzyVkBwCaV7P78ciJAt7r1XrTvczHYGT0XX/ZgvBLQF7cBUsJYrnjChQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <56cbf28d-7d7e-6dae-25a3-c41783d590ef@suse.com>
Date: Fri, 1 Sep 2023 08:41:43 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v2 5/8] xen/ppc: Define minimal stub headers required for
 full build
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1692816595.git.sanastasio@raptorengineering.com>
 <a92f99e8f697da99d77bfde562a549dbef3760ce.1692816595.git.sanastasio@raptorengineering.com>
 <47e40325-0521-c2ee-e0da-99bfb4449097@suse.com>
 <e07d7f3c-0747-b979-3709-0900ae8798b5@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <e07d7f3c-0747-b979-3709-0900ae8798b5@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0183.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a4::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBAPR04MB7271:EE_
X-MS-Office365-Filtering-Correlation-Id: 9f549625-b534-460c-cef9-08dbaab68303
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	thiFawp3W1ZSvSApBbeyETELIWkC0c7mhzAdWn8pqzzcv1tv9ZgsxIUokISJ9YTQmmfBM0JxccgskKtH95DKbRWMMAb6qrJJc0WmbU/hN4yyR8VPih9HMilYAFGek3f/d4NtV67NmqFrVRoVAJEDQRH1Zk7HTmqD3rnPdRJhst4nqdesFB3yIfmmosQLFqnNgKMLDkXq5tHWiAHyGfYljm/6oZI0JMx+1QIJRa4MGMOvHn6derZ2PPqMIh+B+55pXWW6Rzr5ew34JU5SNGs+xrEXsGNqXBQH9bz3hk5Zr/+9Z/wrqXdoP423qkAfCBGWQPyXeDkq0ZdSjZBDvW8tQujg2lGOQzFbZIgu4okzPAj/Q7tCuwFvcOPBhEq/oyW5YE9MkAdpP7r9Wh5R4C6clZCNUoxHC98oZc5TXqYqpB+et7PSCG83Nb/EW7BXT7+Won5U42HQrVv3l+s8Tv4t+b3Kw+QlRcSMlNI4tZZZyCHmrEHQIif+F3q+fHFFTc7zZ/ckqCBCYuS507j+ghT9fJYJhNQ/2pMazpyhpgDo4x70FaT/34Ss6YiaYaXSFsnCDC8DlwkyFt2WcAg53WStbM1ri+8liovVuF0G2a4yJeQo2dCEzipJbrjpGw3jh/oQRZQWUVAtZEMrWrvDiXHvWg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39850400004)(396003)(366004)(346002)(376002)(136003)(451199024)(186009)(1800799009)(31686004)(66899024)(6512007)(6506007)(6666004)(6486002)(36756003)(38100700002)(86362001)(31696002)(2616005)(2906002)(26005)(53546011)(83380400001)(478600001)(66946007)(4326008)(8676002)(8936002)(5660300002)(66556008)(6916009)(41300700001)(316002)(66476007)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?S2Y0ZHJZdERRL0s1YnNSazFxcW03bGxpSXU3MFhuQWNvRTZWNDJGd3c5R2hI?=
 =?utf-8?B?THJxZUZ4bGQ2RG5GRG0wUlR5NjFuNVZrZ3hYRTZXYW8rU1hDTUdDc0h5Ti9v?=
 =?utf-8?B?azc4Nml1KytUbngwM2xsaDNlcU50Ty9wODcyUkd5bkhyZUVrbGJjMmZsbE5G?=
 =?utf-8?B?Wkowbk4xd2RtY09ya2IyQjBJcFF5cHo5VER6MDJjZGkrckNjUUdBOW1peXc5?=
 =?utf-8?B?ZXZkS0VkVlZkWHFPZElJQk5ncFo3U3lGTjVuSHdoRWd4VVlQNUNYdkRGdDZz?=
 =?utf-8?B?bE9DNTU4bVRISjFYa3pIaFdlYjhjSDlkZDhSODdCazdwOGphNzVFYjFOaUI3?=
 =?utf-8?B?OXp4L0xZbDlQS0xZZ1o5Q01IVThzREJPVUdmeVFKSVdUTUdBUEdIaVd6Y0lW?=
 =?utf-8?B?ZTZUYk9idkQ1UWNhcjYydkdqdmFGcVc0Sms3NHdIcTZEOXp3ZGhiNC9IV3VV?=
 =?utf-8?B?dlNqcXBZZVFJbHFiUUgvaXJMOUE3USsvK1BZSlNNUGwyK2VxYWVKZXdnUk5u?=
 =?utf-8?B?RzVFK1Ria3VhQXhEd2E1d2t6cVB4bmxUcVJGUEExU2NpQ2YzNVBHYlp5TlFx?=
 =?utf-8?B?NXRiUzVSS2NJdFFwb0ltcGV2cytnN2VKcEZydTFadSt6eHgzN3A1TTBkYXgv?=
 =?utf-8?B?emd5a1hLOGtoN0ZkR3BVRjBYblh0TndpMkJCWDJiOHdtVTFRMjRteUd0U2hM?=
 =?utf-8?B?aE1ldFZjMWdmcE9hZXJURVk3QmxJZ1hremVlQmQySC95eFlzSUVJSlVVTDZz?=
 =?utf-8?B?OTh0K05ybzk0cnhBNHprOENNV0pJZTYvaG9zWE9DNnl3bzdFT2x1NldUT0xH?=
 =?utf-8?B?dmFSWkpSVkl3b2pXK0ljc1BRZmJBcGc5L1k4bjV1Vm9aR3ZYMStCdndNVVg0?=
 =?utf-8?B?U0x5dGg4L1FLMFluMWduaGdCSXlsMVBMSkFOV2I4VTlYaSsrMFdCdlJ2TllB?=
 =?utf-8?B?MURjQ2doZzltc1Y4MXdIR3MrTTlwSzhYN0ZFTm5YWjlGYUpPSzRqY3diMmFl?=
 =?utf-8?B?RUhXM2M1TkFVM2lTdXJNNGg0VHFQT2x4R1lRTDlEdSs4M2pYT0JKakpiQlRi?=
 =?utf-8?B?ellIRjYyUDdnY3RNeWtHemlvVWY2VUo4MGdJNW03a0MzN2VRQzUyOCs2dGV1?=
 =?utf-8?B?amJ4VGp2a0JYb2xQQUU3Qi9kQVBvOW9sb1M3TkJRaU1vdUFwanVHaHJzYUdx?=
 =?utf-8?B?bzJxZThkQUhJTnk3ckdCaVhIR2p3a0N5RFNNdGhmbk00UTUwaUxLcWMxT1A5?=
 =?utf-8?B?RmtLME1VYXJseGZMQitNZ0gvSnppSmtmcjMrU3I4cnNxY2M0Rmc3MFg0aGRn?=
 =?utf-8?B?M2dUVXpBb09FL3dZWkdDT1dyWUIrdXJHTWtTWDNXdGFoZjY3bzU4c090aDVL?=
 =?utf-8?B?cFBUQmEwWDM3TUFoaXFVVnBlUi9KSzNYdmxMZU1pVFJEOEdaNVdzRWV2TkZ1?=
 =?utf-8?B?eWpra3FDWVFLVnM2dDllQXJvZXR0bVE2VStUYkNvVWlncEJ6K0ZyNHExN01I?=
 =?utf-8?B?b3RobkJjTng5V1VTRVRFUDhqZDVrTWplWTJKZ2Z1NG0wR3JwOGE5aExZMHcv?=
 =?utf-8?B?cWlVa3drLzA3RzhyMFlDVGJ0empRV0Zycmx4QzNEdzJ6M1libG9ITnVueVQx?=
 =?utf-8?B?NWVhaHk0SW55Tmc0dHp0Nnptd3Mrd3UvZ0tqb2pUc2MxOUVzNUR1UWoxbWVX?=
 =?utf-8?B?V0JPdlIrdENaZG9ZNmtQK1VUak1OQTFzWDlSL0g2TFNMZUlILzdCQWV5Z241?=
 =?utf-8?B?NVNxUytVYWY4bUNEd3BHVllsK0hzcW1WQ2FBQVdreDdVTTBsU3hJcmFTQUky?=
 =?utf-8?B?NC9oRTFMQlBXNDVYTkVudmo1Uzd0L3ZpSTF5MGMwZlRnaTAxV0VDQU9kdUl6?=
 =?utf-8?B?MUFjWStzd2ZsOG9mU1RjU1IzVDkzYzBXLzZPTGFUYmJwYjFQTUtVdW1TOU5t?=
 =?utf-8?B?ek9aQ2JLTzN3bDM4Qy9pNXZ3WFE5TDNMbFk3TFp0TnZKQnBpUmE0V014NmZr?=
 =?utf-8?B?cGFncGpvVlI5RytFRUtLZzFqTWtnRk1lMFJ4cW5rTzdTTWZwUy9oRmI1Q1d3?=
 =?utf-8?B?VWdkOS9may9BRDZmc1lwOGh2bnlGbjFabyt5UFR3Z1hmdTlGRjlFemFqaGtM?=
 =?utf-8?Q?ACFgW8q0t1lrO834b9SL9SjFX?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9f549625-b534-460c-cef9-08dbaab68303
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 06:41:46.3205
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: VFqQQ/Nz9TWFJGw01P8skq9qYontjU/pqeEidI759wuHrlFbeTBDBGCoLvky7qkKFRebdC10OSgI88VZxTAU7g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7271

On 01.09.2023 00:22, Shawn Anastasio wrote:
> On 8/30/23 5:49 AM, Jan Beulich wrote:
>> On 23.08.2023 22:07, Shawn Anastasio wrote:
>>> --- /dev/null
>>> +++ b/xen/arch/ppc/include/asm/div64.h
>>> @@ -0,0 +1,14 @@
>>> +#ifndef __ASM_PPC_DIV64_H__
>>> +#define __ASM_PPC_DIV64_H__
>>> +
>>> +#include <xen/types.h>
>>> +
>>> +#define do_div(n,base) ({                       \
>>> +    uint32_t __base = (base);                   \
>>> +    uint32_t __rem;                             \
>>> +    __rem = ((uint64_t)(n)) % __base;           \
>>> +    (n) = ((uint64_t)(n)) / __base;             \
>>> +    __rem;                                      \
>>> +})
>>
>> I understand you're merely copying this from elsewhere, but it would be
>> really nice if style could be corrected for such new instances (no
>> leading underscores, blank after comma, and ideally also no excess
>> parentheses).
>>
> 
> I'll fix the leading underscores and missing blank. As for unnecessary
> parenthesis, I'm assuming you mean (base) in the first statement and (n)
> in the second-to-last one, but I'd personally rather leave them.

Quite the other way around, actually:

#define do_div(n, base) ({                       \
    uint32_t base_ = (base);                     \
    uint32_t rem_ = (uint64_t)(n) % base_;       \
    (n) = (uint64_t)(n) / base_;                 \
    rem_;                                        \
})

(with other tidying included right away).

>> I also notice that most new files don't have an SPDX header. Would be
>> nice to fulfill this formal aspect right from the start.
> 
> Since you've commented on some copyright headers in trivial stub files
> before, could you clarify whether you'd want an SPDX header in every
> introduced header, including empty/trivially stubbed ones?

SPDX headers are about license, not copyright. Aiui ideally every source
file would have one.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 07:03:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 07:03:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594423.927739 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbyBh-0006Xv-3w; Fri, 01 Sep 2023 07:03:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594423.927739; Fri, 01 Sep 2023 07:03:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbyBh-0006Xo-1P; Fri, 01 Sep 2023 07:03:25 +0000
Received: by outflank-mailman (input) for mailman id 594423;
 Fri, 01 Sep 2023 07:03:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TF5h=ER=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qbyBf-0006Xf-VU
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 07:03:23 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a33cfefc-4895-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 09:03:22 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 1B92C4EE0738;
 Fri,  1 Sep 2023 09:03:21 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a33cfefc-4895-11ee-8783-cb3800f73035
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>
Subject: [XEN PATCH v3] drivers/video: make declarations of defined functions available
Date: Fri,  1 Sep 2023 09:02:33 +0200
Message-Id: <d0266b549dd88d273918521ccb538592df9e58b1.1693551521.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The declarations for 'vesa_{init,early_init,endboot}' needed by
'xen/drivers/video/vesa.c' and 'fill_console_start_info' in 'vga.c'
are now available by moving the relative code inside 'vga.h'.

While moving the code, the alternative definitions are now guarded by
CONFIG_VGA, since it implies all previously used constants.

This also resolves violations of MISRA C:2012 Rule 8.4.

Fixes: 6d9199bd0f22 ("x86-64: enable hypervisor output on VESA frame buffer")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
This is the last non-committed patch from that series, hence I put a v3
in the subject to convey the context of this patch.

Changes in v2:
- Moved fill_console_start_info to vga.h
  (21bee1787021 introduced this function)
Changes in v3:
- Changed the preprocessor guard
- Replace the inclusions of <xen/console.h> with <xen/vga.h> where needed.
---
 xen/arch/x86/include/asm/setup.h  | 6 ------
 xen/arch/x86/platform_hypercall.c | 2 +-
 xen/arch/x86/pv/dom0_build.c      | 2 +-
 xen/drivers/video/vga.c           | 8 --------
 xen/include/xen/console.h         | 2 --
 xen/include/xen/vga.h             | 8 ++++++++
 6 files changed, 10 insertions(+), 18 deletions(-)

diff --git a/xen/arch/x86/include/asm/setup.h b/xen/arch/x86/include/asm/setup.h
index b0e6a39e2365..dfdd9e555149 100644
--- a/xen/arch/x86/include/asm/setup.h
+++ b/xen/arch/x86/include/asm/setup.h
@@ -25,12 +25,6 @@ void subarch_init_memory(void);

 void init_IRQ(void);

-#ifdef CONFIG_VIDEO
-void vesa_init(void);
-#else
-static inline void vesa_init(void) {};
-#endif
-
 int construct_dom0(
     struct domain *d,
     const module_t *image, unsigned long image_headroom,
diff --git a/xen/arch/x86/platform_hypercall.c b/xen/arch/x86/platform_hypercall.c
index 9ff2da8fc324..9469de9045c7 100644
--- a/xen/arch/x86/platform_hypercall.c
+++ b/xen/arch/x86/platform_hypercall.c
@@ -14,7 +14,6 @@
 #include <xen/event.h>
 #include <xen/domain_page.h>
 #include <xen/trace.h>
-#include <xen/console.h>
 #include <xen/iocap.h>
 #include <xen/guest_access.h>
 #include <xen/hypercall.h>
@@ -24,6 +23,7 @@
 #include <xen/pmstat.h>
 #include <xen/irq.h>
 #include <xen/symbols.h>
+#include <xen/vga.h>
 #include <asm/current.h>
 #include <public/platform.h>
 #include <acpi/cpufreq/processor_perf.h>
diff --git a/xen/arch/x86/pv/dom0_build.c b/xen/arch/x86/pv/dom0_build.c
index 909ee9a899a4..5bbed3a36a21 100644
--- a/xen/arch/x86/pv/dom0_build.c
+++ b/xen/arch/x86/pv/dom0_build.c
@@ -4,7 +4,6 @@
  * Copyright (c) 2002-2005, K A Fraser
  */

-#include <xen/console.h>
 #include <xen/domain.h>
 #include <xen/domain_page.h>
 #include <xen/init.h>
@@ -13,6 +12,7 @@
 #include <xen/pfn.h>
 #include <xen/sched.h>
 #include <xen/softirq.h>
+#include <xen/vga.h>

 #include <asm/bzimage.h>
 #include <asm/dom0_build.h>
diff --git a/xen/drivers/video/vga.c b/xen/drivers/video/vga.c
index 0a03508bee60..18b590cdf072 100644
--- a/xen/drivers/video/vga.c
+++ b/xen/drivers/video/vga.c
@@ -54,14 +54,6 @@ string_param("vga", opt_vga);
 static unsigned int columns, lines;
 #define ATTRIBUTE   7

-#ifdef CONFIG_X86
-void vesa_early_init(void);
-void vesa_endboot(bool_t keep);
-#else
-#define vesa_early_init() ((void)0)
-#define vesa_endboot(x)   ((void)0)
-#endif
-
 void __init video_init(void)
 {
     char *p;
diff --git a/xen/include/xen/console.h b/xen/include/xen/console.h
index 53c56191ba9e..ab5c30c0daf2 100644
--- a/xen/include/xen/console.h
+++ b/xen/include/xen/console.h
@@ -20,8 +20,6 @@ void console_init_postirq(void);
 void console_endboot(void);
 int console_has(const char *device);

-int fill_console_start_info(struct dom0_vga_console_info *);
-
 unsigned long console_lock_recursive_irqsave(void);
 void console_unlock_recursive_irqrestore(unsigned long flags);
 void console_force_unlock(void);
diff --git a/xen/include/xen/vga.h b/xen/include/xen/vga.h
index f72b63d446b1..05f5013a05d8 100644
--- a/xen/include/xen/vga.h
+++ b/xen/include/xen/vga.h
@@ -13,6 +13,14 @@

 #ifdef CONFIG_VGA
 extern struct xen_vga_console_info vga_console_info;
+int fill_console_start_info(struct dom0_vga_console_info *);
+void vesa_init(void);
+void vesa_early_init(void);
+void vesa_endboot(bool_t keep);
+#else
+#define vesa_early_init() ((void)0)
+#define vesa_endboot(x)   ((void)0)
+static inline void vesa_init(void) {};
 #endif

 #endif /* _XEN_VGA_H */
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 07:13:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 07:13:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594431.927748 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbyLm-00088p-2A; Fri, 01 Sep 2023 07:13:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594431.927748; Fri, 01 Sep 2023 07:13:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbyLl-00088i-Vx; Fri, 01 Sep 2023 07:13:49 +0000
Received: by outflank-mailman (input) for mailman id 594431;
 Fri, 01 Sep 2023 07:13:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TF5h=ER=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qbyLl-00088c-1S
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 07:13:49 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1834af35-4897-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 09:13:48 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 457814EE0738;
 Fri,  1 Sep 2023 09:13:47 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1834af35-4897-11ee-8783-cb3800f73035
MIME-Version: 1.0
Date: Fri, 01 Sep 2023 09:13:47 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, Julien Grall
 <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, Paul Durrant <paul@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH] ioreq: include arch-specific ioreq header in
 <xen/ioreq.h>
In-Reply-To: <73a78132-a086-5ae1-2617-fb38c51e64e5@suse.com>
References: <e5f13920dfcb9f828abb4a36dd410d342f4c0939.1692974235.git.nicola.vetrini@bugseng.com>
 <73a78132-a086-5ae1-2617-fb38c51e64e5@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <f96865f3d7a47e4d9d52ee13dea064e3@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 28/08/2023 09:59, Jan Beulich wrote:
> On 25.08.2023 17:02, Nicola Vetrini wrote:
>> The common header file for ioreq should include the arch-specific one.
> 
> To be honest I'm not convinced of "should" here. There are two aspects
> to consider: On one hand it is good practice to do what you say. Otoh 
> it
> introduces a needless dependency, and it'll require new arch-es 
> (RISC-V,
> PPC at present) to introduce another dummy header just to satisfy the
> xen/ioreq.h use in common/memory.c. Therefore, _if_ we want to go this
> route, besides a wording change here I think ...
> 

Since including both <xen/ioreq.h> and the arch-specific one was 
requested to be changed
in previous series, I was trying to apply the same pattern here.
If you prefer not to change the current layout then the fix is even 
simpler: I'll just
include <asm/ioreq.h> in xen/arch/arm/ioreq.c, which is where it's 
missing.

>> --- a/xen/include/xen/ioreq.h
>> +++ b/xen/include/xen/ioreq.h
>> @@ -20,6 +20,7 @@
>>  #define __XEN_IOREQ_H__
>> 
>>  #include <xen/sched.h>
>> +#include <asm/ioreq.h>
> 
> ... this #include wants to be conditional upon CONFIG_IOREQ_SERVER 
> being
> defined. (I'm actually surprised that there's no respective #ifdef in
> that header, meaning types defined there are available even when the
> functionality was turned off.)
> 
> Jan

The two functions in question are actually guarded by an #ifdef 
CONFIG_IOREQ_SERVER
in arch/arm/include/asm/ioreq.h (in the #else branch some stubs are 
defined)


-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 07:26:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 07:26:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594440.927761 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbyYF-0001ME-6G; Fri, 01 Sep 2023 07:26:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594440.927761; Fri, 01 Sep 2023 07:26:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbyYF-0001M7-3Y; Fri, 01 Sep 2023 07:26:43 +0000
Received: by outflank-mailman (input) for mailman id 594440;
 Fri, 01 Sep 2023 07:26:41 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=cwX6=ER=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qbyYD-0001M1-Ph
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 07:26:41 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0628.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::628])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e3b35720-4898-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 09:26:38 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7557.eurprd04.prod.outlook.com (2603:10a6:20b:294::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.23; Fri, 1 Sep
 2023 07:26:37 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.021; Fri, 1 Sep 2023
 07:26:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e3b35720-4898-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=R1R1wrjCQI/EFhgWmtVtGFZXOHo/xPBPcYdqDybfC8gDxR01YkTMX04O5JZlKi5OserNBo7m+eCMfsRQohimIs37melBuhvl89Sxj3i1823MQGwZ/sGz6s3PGWK92XCBEat2Bx9QAwgIvKPUkaMVKV8sz8Nqz9aZbe2XqCyj1msIb8D5pRT0TNgAwkYKNdlsm0Qk29eCmJDhw9jPykszR39AIs0tFRaSdiOOw6ZISJBjUL7bcEEjLOdB13gWNIwLJRkiTtyZARQ2LNpR72IHTdQZ2IFcUHn0RCS5yHCfR3U5qK1LspS1DqJ+eUGM6d0Z8weiLS89t40YwPhLa84YAA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=deRWhbj0zeKddml58ln36qokWmFeaFHTvp2G+ldc8+0=;
 b=N8SAQOIlRKDoS3r3jIrpTzOwoGPLlL6M+ThEJnDwJYbMIwUws32xBa2Bqt/xXNWG5mAgWJRdWVJYLjTHEsRvYWzwRPO2Li1EPyERvC2AA7pAo8cNLeUdJYoz3sPWFVBkolxkWBARXgcjIOWaiZoUrRTOCy4XDKXLHtMRNDynh/4qth5usLjHl1PIT4R4FjzRJdWjzOZ7EnLyjJExgR1AYedWNsiY2OfbL9GPJTPubxP4Sc7ybXFEMJYct4xbv80f2/9q6/DBd9pA1EhUlkJn0qxMDDlasEOefQ64Jb4r+WecZyjikwVF4fYlL4DgAiFguowmgLezkQaPn/6yVWNiGw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=deRWhbj0zeKddml58ln36qokWmFeaFHTvp2G+ldc8+0=;
 b=fBObJax5N9tEszCWE5ObuwUkq1TSpHMrHvLkQrMMbSbci5x61MVXaz3qpcNQ4mDSRxRz+tfVwZiBxcdmXXF+amY2CKTSBA72z/T8p6s6OlcIIJNhasrbk+q5MqriHQfWQb7kLHJu9XefuAWRReh6w6a8XnwsvuJvM+bVZ+012JpPA+yjJvrB+g/wR1vF14zTPH7Y3b6D42w7bz19i+ga7tRlx+fv40f+hAOkyp4TAImaj9QIF9pXHI9kOqH2+Z5RIeWAqr1sl+COkLmfqVgTG+DYDnzyHcvy1UiYjuct85pkTwiy7AzuT4APavhCMNXK/iCVHd2fMKY082SsVa35qg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <56bb2024-dea0-79e6-6a51-66e6c35a2733@suse.com>
Date: Fri, 1 Sep 2023 09:26:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Content-Language: en-US
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Julien Grall <julien@xen.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] Arm: constrain {,u}int64_aligned_t in public header
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0001.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB7557:EE_
X-MS-Office365-Filtering-Correlation-Id: 1756d957-8639-43d8-af8f-08dbaabcc6ce
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Y5w1Ke8mQ6q885QLwckrPvdpae/gX9/cNNR5ZocQFcc3q4xKzW0iai2N8HEgZnTH1L5Na4PfQcguoohVnJ42J13+eUViCz4pWGAltTl17RwKe47gmePCoa5uaDQAWyZjlfJY3atER50+t4O2i/HyTOWTTNDSeB1u79kKWHJrNcwVUem+LvV3VrP9Oef6BXtA0aCZKvFkwEcCPRvbuDd35GD+BtBnUO+FWeHo9YNe4m//MZbHvMbJK/UEV10JSKMCC3n3JmcPnEyFZ2Unm0NVu8yqHLljutSYhrjdxFIpcLpcwcMNAycVgdqAYAmRfAeINkOvZ7RTB8w4iHfnlP1nHPHyHgVk9LhO9cxQC408O1qDjWgyzMhQPcrkgxtyAP704s4oOZ07Vuj+VRieCnjIDQA/m7xTAbw1pgKwlxXNxERtcUyq2gFBZswGMGvTSXwKPzxAOTQgP+tiaGBMYq3MrsDZ0jc7vsLzyP70OPNS1D/G4+DpiJ/rvaIv+6ikIiqoWr4vdvg5L3dGfrXSzRQ2r0Vd6MZWse0ic6tIdMKtVVz/GFdE4mqaUKX7CocaH9gnA86g2kMUQKw47cDdYqboP0d9wXXw8FPXzoyNBnPpObF66kGtY9eHjampKSfolj7wQ5MT4A3gtfPdh0/aSPAdQA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(346002)(39860400002)(366004)(396003)(451199024)(186009)(1800799009)(31686004)(6506007)(6666004)(6512007)(6486002)(36756003)(31696002)(86362001)(38100700002)(2616005)(2906002)(4744005)(26005)(478600001)(66946007)(8676002)(8936002)(4326008)(5660300002)(6916009)(41300700001)(316002)(66476007)(54906003)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SUdCYUlBMm1sbTNpdUxaOUJFT2JSVHpCemlHb2Vvd1R2bmsvdm1tYlZLdnVR?=
 =?utf-8?B?MlFvbmN6WllIWVVWY1ZFc1o0b2tlYjFSTEJmL28vMmk4bHdEaUp0eWlpK0J0?=
 =?utf-8?B?UVRnZXNzNDlWdnlOTUVOVlhWeURGWTFVeGd3T0krYnRSSXBZbmFkUjM4ekhI?=
 =?utf-8?B?QmNiODRNeTFlZkxrM0xjYnIxczAwakVDb0c1QTZ2ZTRZdFkxQ29IRW9RTitE?=
 =?utf-8?B?RnhkcTdFOUpCcDRpY2VLN0VPaVI2SS9FRVJTOTRlL1VNOU5tekxqY1hIT3dE?=
 =?utf-8?B?ZENqY1BYZnhLTHNrYjUvN0d5cnVGSU9pTDZkRXBZK2p6Tm9xaEkybFNNejFD?=
 =?utf-8?B?TDJpeUhoNlRhZENOU21rdXlQcW5yOTc1cWVZeExZZzBkYkluK2hwSzYrbUtJ?=
 =?utf-8?B?bml2TWJ0bTBCMGxhdjRnU2JNZmRDQlZ6V0hhbUE4RTQ5K1JOTEFMa1ZlbUY4?=
 =?utf-8?B?dGNreE8xMkR5NzBicmpxSitTZFNpanpIQzdjYk1COUVTbTNISUUrRVMxdXhJ?=
 =?utf-8?B?UExXdFgwTy9xRlRhUFhnZng1d0IvMVJ0RC9Sc2twaEVWYldmME9wazlqOUwv?=
 =?utf-8?B?a3g5cHZySU1CbWdVVjBid2JYVmRaVXJXcXRYbEpHTlpHTzBZL2piK25rUlMv?=
 =?utf-8?B?Y1N4Q1dudnJIR05FQW4raGxsVUxLZ0lMZitCUmZDUTVFMWQrdjk1OHFVTytB?=
 =?utf-8?B?Qml1eE5lb0ZCUEI3MFFEdjM1QjFSSnhzSld5cGtMMTBxMHlrZ1JaZU1URHZC?=
 =?utf-8?B?L2dlVVYwUU5UV2NuQnlQcGlENUJya0dtV2NMK3dtSkZlN1ZGMzdpUHZGK1BC?=
 =?utf-8?B?OUpONnNwT0lQL2JPTGNoTkVwVzdnVG0ySnkrVk5Oa1huSkh6SGdtc2RwNXl6?=
 =?utf-8?B?OVJhVkpGbzJQOTdGbXZRSXE0K0Mvdit1dUlKZG9zdHRySk1Damkyejlub05J?=
 =?utf-8?B?NHhpdEZEbTZRQ3pqMWFiYmN3RGdaWVZXR1JZeFNXVjVHMUdNRnFuUlBKdEp2?=
 =?utf-8?B?eXJmOUtSV3Q4ZzR1a2l3NWM4b2VhbmRRQlpqcHgzZ2toY2Y1T0JGbU9ENDVC?=
 =?utf-8?B?MmlZcmlnQ081dFNkWll0Q2grdEgxaXdVcnF1WGdYOTAvZlVndFFlMlZ4YUZR?=
 =?utf-8?B?OGJqRk43cThONUlHejBKUXZHbGhTaGFndFM1RGM3TXFWS0NnY0tZaXdtVGlC?=
 =?utf-8?B?MzJFb2tlT1AyWWQ4SHdxZWk4a0cySzZibit5Nzk3Uy8zWjFiaVdzQU1PaGww?=
 =?utf-8?B?Ny9veWRLcmpLK0RoSzAyTnU5ZzJIY2REVUdUQnRXY0tEMVZJZHgyZmdBYzkx?=
 =?utf-8?B?ZS8zWEpmc0VNRnVoZElRdWMxSFJnV3lCSjdIaDV5SU9KWG55NVNWZU9YM0c4?=
 =?utf-8?B?MUZWd3BuRndUY2hjcW4wV01DdjZuZ0VjTjFETzNxeTFiZEg0RUw4bUpGZzE3?=
 =?utf-8?B?Vnp1bmFNVVhjZTNBT0cwT2tUOU90TldnaHFSQUFQaGo1UlR1bXNsOGxlSkkz?=
 =?utf-8?B?UmZaVVhIa1hGdnU1MGZEYzFFMmwwNzlrNnpIUWxNeVY4YW51QVdUSVQ1YzlX?=
 =?utf-8?B?MklnejZSKzZhQ01OSUVHM2ZhQ2JjTnhRZEJGTDFxQU0wbG9ieWYycnI3VHRu?=
 =?utf-8?B?dElxNmhSd2k1NnBSc0drUDNSV2svZzQ2SzJEWW5ySXc2S2ZMV2J6NGRBK2dZ?=
 =?utf-8?B?Vktab1lmNG8rakJFQ0x6RDJPOEkrNWJLcjM2enhEVGlUaG9KWkRTMk1acmtL?=
 =?utf-8?B?c0NEM2gyQ041V25nRmhrSVU2ZFVIUW9WTlh5WlYxQVdRa0JrdlVuZ2tKNFJ0?=
 =?utf-8?B?empwVnZ5YjRaekNTdnJvczFrQnprczY1TGR5bzNtTFo1TlhMemxXSmdaT1ZL?=
 =?utf-8?B?bWlsM003UFRGTFVvck1FVC9jNzR4TkRscnpjNThidGxyai9lTEFPbG5PYzJY?=
 =?utf-8?B?YzE2UjdMSlpuS3RXQjBwUVE0aXl6WldjRExxK3ZWYmJUb0ljcUdpUTA0UlFK?=
 =?utf-8?B?TFFEaGp2bzBESE9Xay9lRVlpcldhbXlqKysxMjhwWUpqT2VnTmU0dWI2ejVs?=
 =?utf-8?B?NTdwQlh3ZzMrdDBNSHNmRUphQVQwbkYyZXdhUmlBb05sY0ZybzEyRjV6ZHds?=
 =?utf-8?Q?x21Guu9BjtVCy8o7m5soVMJaL?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1756d957-8639-43d8-af8f-08dbaabcc6ce
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 07:26:37.2926
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: uQ6/qu4VZqTT/k/HXdNyiaIfOdKujUGR+4gRNncV3wJ7UPFC5mN7rQiXYXC6qE9npBxwUtYCTN5J855/vOHlRA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7557

This using a GNU extension, it may not be exposed in general, just like
is done on x86. External consumers need to make this type available up
front (just like we expect {,u}int<N>_t to be supplied) - unlike on x86
the type is actually needed outside of tools-only interfaces, because
guest handle definitions use it.

While there also add underscores around "aligned".

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/include/public/arch-arm.h
+++ b/xen/include/public/arch-arm.h
@@ -152,8 +152,10 @@
 
 #define XEN_HYPERCALL_TAG   0XEA1
 
-#define  int64_aligned_t  int64_t __attribute__((aligned(8)))
-#define uint64_aligned_t uint64_t __attribute__((aligned(8)))
+#if defined(__XEN__) || defined(__XEN_TOOLS__)
+#define  int64_aligned_t  int64_t __attribute__((__aligned__(8)))
+#define uint64_aligned_t uint64_t __attribute__((__aligned__(8)))
+#endif
 
 #ifndef __ASSEMBLY__
 #define ___DEFINE_XEN_GUEST_HANDLE(name, type)                  \


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 07:32:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 07:32:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594448.927772 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbydY-000328-TG; Fri, 01 Sep 2023 07:32:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594448.927772; Fri, 01 Sep 2023 07:32:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbydY-000321-QH; Fri, 01 Sep 2023 07:32:12 +0000
Received: by outflank-mailman (input) for mailman id 594448;
 Fri, 01 Sep 2023 07:32:11 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=cwX6=ER=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qbydX-00031t-6b
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 07:32:11 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20623.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::623])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a73cce46-4899-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 09:32:07 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8358.eurprd04.prod.outlook.com (2603:10a6:20b:3fa::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.22; Fri, 1 Sep
 2023 07:32:05 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.021; Fri, 1 Sep 2023
 07:32:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a73cce46-4899-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=n0xaBiOm7RyQjJvwfL1kr8XopbplxmNGNhMKY6wsG5uqsqLJ1Z04+wgTZi32kN7R+JtTp/E/MS8l+YekSXti8LIl0s2e60SPzHCXObEmEaJQ5XNjGtYHCk3CNs5NTv/FWIiSO2HzyIVceLX+Seu2dR7ClsHYptX3Cpgi1uArMNw8a0G2WZNSfe+TK4ayp68ij2n2zvH/LJgg//llo13/yK+37g/LbUO2ofAq5dtPEpMPsSPEhktjWp1JzmErDI8w2KtTdiYKnublo2AjkTlTHEQI8J/ZmfFUyxc86ZMDS28UYSqx+52ECDVxGAK1EEZUdZIJCyXFD5Gk3ButdBCePA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ofsdvkR+CjFUdbZ9dCpr92+9gdnll11ftLZciaoTfY8=;
 b=BDerNULslbYx8ZZjBtJd+Xrr2raAdQpuByaze/1Q+CqyXxN4Tximn6sP4fCRC6B8bJXZC+fCODT6eOESoHV+DTcnq+EHYJH0HHwDXMRqJGw9AsT1W+00TOf1gXbZU1a4KgTe2Nywx/0PGp5SHhJX2qNSsOy+0Dj80vrFplIYEM6Dbb4Hl8Nzp92cheEqpud0pe/QVDiBIMqMPI1scPhQD9W85HLcqI8LmxOFhZ+Dt21Az1d73bQjz3p/b1+3LypwAW4GFXyAJFPJUfeLK6wFPF6fnq3CZEr5mFDOwD+MkVlw+4dncGQzgZPD7rd9Y+WTBRip9olqFYZ9Yh5/DvkoYg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ofsdvkR+CjFUdbZ9dCpr92+9gdnll11ftLZciaoTfY8=;
 b=fS5R87jj361Exhmc/kOtQs6iwiix2ZzYF6BQMaM0cJpZufwsHt0nmcBB1uIQbZdyFRnNa/ZT8F0KaSvBii01RFdN8BaRoqTylQkOy2LUEVoZcfv3f1WZWjqd+NgnHhppYBy++a41cFqFlG7nNht82fH0YbmiXeCxAdMMj6/WHHaPDw3jiqabtj1QUgeKFuevmktQteSP+MXDSo/prZ2jkaHmUQQd71ln2Af+76gFUZgNzLZoY57YSEpHCI+YGTkGBsgWj+r2RkfkjCLV9B26JjKSDpXnkA4WJ2jw4VftxS0kgdG/Nxr3j9Z4Rhve/paV8uFc0tu8OLg8ntOWUF5G/Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <20e292ad-fe8f-b23f-1eea-019afe887b40@suse.com>
Date: Fri, 1 Sep 2023 09:32:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v2 2/8] xen/ppc: Add public/arch-ppc.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1692816595.git.sanastasio@raptorengineering.com>
 <85bc5f57ad41a54f84ac9fa118ff0d9e02b71461.1692816595.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <85bc5f57ad41a54f84ac9fa118ff0d9e02b71461.1692816595.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0086.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8358:EE_
X-MS-Office365-Filtering-Correlation-Id: cb05906a-6405-4659-c14d-08dbaabd8a0a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	r9VXhZ6yY3+UR1lTpSy6IZelXSY9i8h9Hy0NqNxu7R1HmPdqoLlgJbdF1xxMKC2fetyHI2f3U3JMYZbz/vSSZV+QDx48+7fGZJJKlcpQB1guBtj7bbatd1LXpHMMXZ3lf0Qf2YNIlETaH+wVTCnFAQmfq8lgCSxD2eJ45lGFXuWlT6BrfREPHWagLplvAaR1HKnOMMM8GkcQFKzRq2dWPx7rxrJShLdcFjOSWYS5CTnHds4GdAVxMdyol4A1GSOTJ7rw6UNha9O4wD+UvLboMh9QeUq9zUHKNxk48RVRL1RMbCCcN388FZtUFXiww3Knl175qcuMzmU/AZNdJv1d+B4aPPBOjK2HvdZaAlkm3ZsKyycrUFeMyC9br/2rCok8yK8+IIANnNUgnDzlscvA62Zajwe0JZA+7YaZD25WV5AiU7AUBLznZ6z5ubh4LZtecAdDTUXKaznyxWz2+Gw+WZxc1pQ3ks7m6KUxDmRNxD3FWgjBsn3aWsYKi5LkB+sNhKM0qRhNsiOyARQFuzKNgpj6BBbCpEZxV8Wq4/Es3+TLshOf4j39YmzCo7EAD6dOfuVorbsm/qaXzQxb6IPwbS81bZ7OITDZDjVhrWg6THOCuyG69PAGk0hpTRsVFXEf
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(366004)(376002)(396003)(39860400002)(186009)(1800799009)(451199024)(41300700001)(8676002)(8936002)(4326008)(966005)(478600001)(66476007)(6666004)(66556008)(26005)(2616005)(54906003)(6916009)(53546011)(6486002)(6506007)(6512007)(316002)(4744005)(2906002)(66946007)(38100700002)(5660300002)(86362001)(31696002)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?L1EvcHRJaFgwYXd2NHhJRDhnaDFQTGxVTkpIZnYrYzdUZTFpMDBCMnhEQkk5?=
 =?utf-8?B?TWR6NE5UL04xTEo5ak14OVFmdytQTmp2YUs3Z1VNeDVVTk95WC9zNHZZZGRz?=
 =?utf-8?B?SUY0UlU1bnRybkcwaU5pUWJ0VElJSkQyRnJKSkczdzZmbWtHVUl1bVZPZVJx?=
 =?utf-8?B?emc0VzhRMkJzdWIzZ1NLaWRWdWY3R3BmSzd5ZE1RcTJ3WG9BVktVNHlwb3hN?=
 =?utf-8?B?cXVmdmI1YnRqK21CeDZVZ25vWXFMeEJvY2N5b0xKakh5MGRRSnJsUldLczlR?=
 =?utf-8?B?VEh3YlJLalVGeGp2VTUzNGJzUFJkQ2R3OXZvblZQdDZwSCtBYm9KQ1ZFTVo5?=
 =?utf-8?B?RnVlcjRpYTdxSUZLVmRzRzZsL2E5VHcySXhLTUdWYWhMcUtsVEM0ZkNMTG9h?=
 =?utf-8?B?dVVleVk4NnQxS25LZ0Jkc3BXQU9vSURSbklzUGpUNU1lSWN0VE4wdmFWT1R1?=
 =?utf-8?B?Z3ZGWXhDV0E1THhLRExMb29nSnNNWnk4eFBEdUF4SnhBZFlWdWd5NmRBai9N?=
 =?utf-8?B?NkFzSHo0QWYrY3hoQnFZNzBtZkVtOUF1RzQyT0xXTzNNYjg1RWMvOG5jeUpN?=
 =?utf-8?B?bHdkcEFqWElFS1FRR2t2cW1MZEo4SjdKQzM1YWQ0cGVyZldlVjQrR2R1eHRE?=
 =?utf-8?B?NVd0WWY0ejZXY1diTUtsK1c2N0ZaTkw5SW5RMTZuZk1GcWUzT1R1K0V3RVFr?=
 =?utf-8?B?MlRFbEtpbmRpYlM1VElsZkw0RCswMWNEbGF4MURZKzd5SHFCVTNmK1ZEbytK?=
 =?utf-8?B?UFlxQXpLRHNpWjNPVUp6Z2J2ZGNJSzJ0aXViNUFydHREaVA4WHRmeitmdnRj?=
 =?utf-8?B?bUNpa253a05ZWnRVQkplaUZXTmNaeG90R25nVEx3RU5hSFdGemc2OVVzcm1S?=
 =?utf-8?B?dXNLa0dQMDA3RkhOSUN1Y2RDR0lqaHA0bnRuTkdheDVaczF6TEhzb0FUMUkz?=
 =?utf-8?B?MWEwOVpyaHkybDQvZnY2T1RXcGk3S1BtZGdhcXhneVNBUUNEbnVoQ2ZsYWxM?=
 =?utf-8?B?NFpuZkJmcitFZk01cHNrWW1xU0ZhS0o1blZ1MWtDWE9iRDNxWG83MVV3QU52?=
 =?utf-8?B?Q1lyS01LR2xJSzZLT1RsUWdHZ2dqZlk4SHVCVWx5ZWh6NlI2Ryt5c1VHNkhu?=
 =?utf-8?B?bnV6TlJmNDZvR2FncGtpMTJUL2V2KzFJdnY2dGFnMUFIak1VSVppTjVyQjZ0?=
 =?utf-8?B?dC9tM05VUjVuQmVwQU1ZbUxGNVNRRlBBYzBPdGxwNW8zMUprR2wrQ1ZxMWN4?=
 =?utf-8?B?Q0VUMVEyUXJrRktGcGQ4TXRXdGxyZlpXU2YyL1dzTG0ySGoyVWRHYzV5Zy9R?=
 =?utf-8?B?RWlCb0hkTzdrOURWUkhTNms2allrNnBleXpTdGJhTDNYS09VUUtERE5sMkVW?=
 =?utf-8?B?eGY4YlRBNDFPWlRPRks4bzJtT3pPSUx3TVJGUDRIS1NiSVFheHZSMXhiSEEv?=
 =?utf-8?B?WFFHMGVEZ1JrTzdGZHhvdHRpVm9aK0RXSVBZWDZDV1pOYVhqM25WOEkrUmtp?=
 =?utf-8?B?Y2FkRXFIVkpJZHJLRlNDdnlkSU1ZWlYyUmpTdC9PZVdrUmdIVkJwMVF1UTBJ?=
 =?utf-8?B?ajJ6QzVFemRzMW1KaTh1SCtTcHZma2R4UmNLODJxdW5haFZvZnltTGVseEdn?=
 =?utf-8?B?TDk0OVdxUzRzQUFKN01ha3VxTTlWdmVHSU9KWXc1Qml2dlNRa0phZUxHbTYw?=
 =?utf-8?B?Yk1KVXBKNUcrOUl0WUY2RHBHcVZ0anJXMG02enJkbmx2TjEyT3dSd0twTFZX?=
 =?utf-8?B?M20vV2djUDE5eUFjRllrYzdydjdFSHh1cWZTWXFqWlg4elFCKzNzRUJLWU0v?=
 =?utf-8?B?V0RqTDRyeWZPZjI3TG5JRXVNbHV1Z3Fwdk5pS3IwcmlRSzZhSGVQb0ViU2dp?=
 =?utf-8?B?R3drS0hqMXk4ejFRQmdPYmozbEI2dkVPVXRES3JQZUx5MjdGVjlPdk5NbWtP?=
 =?utf-8?B?eWQySWpBR0Y3bVllMjhHdXdTNFpmZGRVNHBDYVl6bXNWRS9Eb2VEREFybWRj?=
 =?utf-8?B?NEZXRnQrakIrT1Zza01nN2Z1OWl1S0dPbTBZOC9KL2pNSTNSR2VTZzNJR2Rv?=
 =?utf-8?B?OUpQQ1NmdHFRaUxUZXNpRFhpRE00d3pSeHorbWNCREN4bnc2YjZkaHlFaXFR?=
 =?utf-8?Q?8Fzt6wT4bG7XCAtZOJkEW4FVY?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: cb05906a-6405-4659-c14d-08dbaabd8a0a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 07:32:04.6696
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 8LxdyODJsdME3YancCVMIKCBN/EaMOUo1vs+lmHyQfGw7I8Gy0oDV/1uU4OGORBurUxtSAjK9YboxH/ts3ZVMg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8358

On 23.08.2023 22:07, Shawn Anastasio wrote:
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>

There's one more edit I did while committing:

> --- /dev/null
> +++ b/xen/include/public/arch-ppc.h
> @@ -0,0 +1,110 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +/*
> + * Copyright (C) IBM Corp. 2005, 2006
> + * Copyright (C) Raptor Engineering, LLC 2023
> + *
> + * Authors: Hollis Blanchard <hollisb@us.ibm.com>
> + *          Timothy Pearson <tpearson@raptorengineering.com>
> + *          Shawn Anastasio <sanastasio@raptorengineering.com>
> + */
> +
> +#ifndef __XEN_PUBLIC_ARCH_PPC_H__
> +#define __XEN_PUBLIC_ARCH_PPC_H__
> +
> +#define  int64_aligned_t  int64_t __attribute__((__aligned__(8)))
> +#define uint64_aligned_t uint64_t __attribute__((__aligned__(8)))

These, using a GNU extension, cannot be exposed unconditionally. I've
submitted a corresponding patch for Arm [1], where I expect you took
this from.

Jan

[1] https://lists.xen.org/archives/html/xen-devel/2023-09/msg00037.html



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 07:36:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 07:36:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594454.927781 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbyhW-0003do-Do; Fri, 01 Sep 2023 07:36:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594454.927781; Fri, 01 Sep 2023 07:36:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbyhW-0003dh-B2; Fri, 01 Sep 2023 07:36:18 +0000
Received: by outflank-mailman (input) for mailman id 594454;
 Fri, 01 Sep 2023 07:36:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=cwX6=ER=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qbyhV-0003db-JJ
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 07:36:17 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2060e.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::60e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3b44f6cf-489a-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 09:36:15 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7592.eurprd04.prod.outlook.com (2603:10a6:20b:23f::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.21; Fri, 1 Sep
 2023 07:36:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.021; Fri, 1 Sep 2023
 07:36:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3b44f6cf-489a-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oTF6LrKzdc5kLRMBUKdFSK2zBAn7DpORe0fuqkpfYN7Nf9dklVzcEzBwVNry++tlFyTUOVTsH5kz+ViW18bvJ4YLDsXuhCwyeVzlcNihK7LLOlPKh0Ynz8Z0ZPlj68f2EUSmhYU3h6lQZHybOW15kA2ZIxzJaTPmeJHNvVEFKzrQpjczPc7P2juFxzqZE38tXMBoDaPZJJ5l6WYsHrzG5z8jte1PPC+rFIuhxeSdIlU4+DTC8kFue6wiDyNdK0KzNXiZnEwmaEIMcfEgRPsmF48AYOQAwHvKTwGFp+nJcQUzSia6a3OWSZrj6VsQ4tuU6VKUAnLiQu1ofv3jO23vcQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DbeZHPuLd0FdzTnmQLzPC1BzwpcIcK69pwrxEUw1Uf0=;
 b=jZSBvN8kakHyWuu0mayNihiF/bvPR9gRXIxtH+fxp5JR7m1cy+3XFdlyZAxL6+XNORIMQxmmn6G6+kZbef7A3HR8R3mKndk+18jMXh+/Y0E2ejE7OpdS14c8PbSPZQtThnXOO2mEMzI6sE7hG/bC3ybv972WWcsK69r4jk1mq65X7mMHiOtNRRKUKMvx/uFj5ojU3injC8M6XmKQjzi2OYR8xvMQO2BsrE3b/WsZNOgeZa/8Nl3BqGIJMcvOz/nu8+VJFztwmF4C0DGdoeZ0YZ1zY68RzFKYf8gg4bxCPPGsFlF3YmhUi4Lz2N94/YmBy3PcVv8ac7Wa/tquLYJRDg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DbeZHPuLd0FdzTnmQLzPC1BzwpcIcK69pwrxEUw1Uf0=;
 b=pkVH7pR7eHk+XUxUNzo8G4z4qn+vsTAl/TjC4+s7L50P4CyjDxuAWmQ1vpQyCnafTBXMX0Zg9ocV/zkH/IR+jdhpmvl+/OD41kcwId7C+QzVxgG09wnDmZ9i4ScYg0qsUntwMFj/DHCLbI7g+69u+8JGqoJAfFPDgb/uv+zrcRqQEKnF+fCYEovFM1vG0Wsa0sL5sVUETAJyjdrN1+tEqkNBagQ2xw8hnMu412F+ph00BkYSmtGZRmNJe/3lCZJph6oq1KJCHeiHZV1umd5tKhBhCUBbIYMh4Iq3gAbZLPEvPNEDPylZ5Tcij3EH7Ed3idA1cqj+UrV716xjXuRKjg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <15eef072-d7a5-23a9-a7de-3c16fea49dd9@suse.com>
Date: Fri, 1 Sep 2023 09:36:10 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [XEN PATCH] ioreq: include arch-specific ioreq header in
 <xen/ioreq.h>
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Julien Grall <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Paul Durrant <paul@xen.org>,
 xen-devel@lists.xenproject.org
References: <e5f13920dfcb9f828abb4a36dd410d342f4c0939.1692974235.git.nicola.vetrini@bugseng.com>
 <73a78132-a086-5ae1-2617-fb38c51e64e5@suse.com>
 <f96865f3d7a47e4d9d52ee13dea064e3@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f96865f3d7a47e4d9d52ee13dea064e3@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0057.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4b::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB7592:EE_
X-MS-Office365-Filtering-Correlation-Id: de2d2e24-bfcb-4cdf-27e9-08dbaabe1e8d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	U70HyUvhL6H1soFOnap8FB20npNBl4VOZNlHJnxzGIuFvYvEkYNkl73cW2aphfK8X2odsf1gOjol4Tt49XYLQhDfMbfS6l3tyXWDzpoV4fy/56Ql6f+6F9xL+bkcEloMc1fCYFGLpjxPcLWZDK0g+WnPx4PaPXHRVAJTbXDIjQOqq+4+PEvU/ZGP5t5AvdZjdZM0hXVDblAb0AYICxvhM0hiu+7d3yGHwrc1nokyNOfS2mbJHMuz06A10UM2SShLo8IDNcy6AT1rUZ2cnOHfJuBcSmDxb5jbz0WausuA2qd4gUYuzp6I2zn0iR2TJL5sIbrSLzLn2r8fRiCGon3GN25WfcSjjKjkvOpwxdYi0hPPtgcykh8NqX0w8JCdcKJ54RIfPMNcqBY4+/TEYDWT2AKI0bFwcIUilQ1uv9Gnyl7CzVRhgfK/9tjYEf3hlEaZVC0fJWVb4I9QEmWqbhBvoTX8tTF97plzW5opYdUpljawtFw4/MXunUfC+S1zuU8VrtzzkUAgelpl6exuAT+0vZNfbnUF/IcMf/sZafLqge8dX033FalcTkt6L6h5+mXa4g+hzbEG3sJytgK7ivbg7WkaFBqijtGnTvUe6P4QMF7eHPD7Xlya0FSYup0GF/tkM1gbsY+oG7fWJis9s26B/Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(396003)(346002)(376002)(136003)(1800799009)(186009)(451199024)(31686004)(6512007)(6486002)(6506007)(36756003)(31696002)(86362001)(38100700002)(2616005)(2906002)(26005)(53546011)(83380400001)(478600001)(66946007)(8936002)(54906003)(66476007)(8676002)(4326008)(5660300002)(66556008)(7416002)(41300700001)(6916009)(316002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Sk9kWWRBN2pwQjJ0WHpKeDlNZ05DbXY2a2JTSmZRemgwQ3VFamlybE0zTEx3?=
 =?utf-8?B?MEJYc2FtTHlxdDBYV05odm5SSXpLWk9IbWVCcm8vZm9OYVNvZXdod2RGSDJk?=
 =?utf-8?B?RXoyZTZoRVBueXJwV1d1eVR4Z29FYkYyVnBJejloVHVLbGFXTTNSTXgwZDI2?=
 =?utf-8?B?bUFIMDZOaGRTTTliZTBYOTBqOTNQL09HUXVjbDhCTHlxTGVOeGY4QTZUeWtF?=
 =?utf-8?B?Z1pQN3J3UUYrcVdjV1FLelAxVnNUdUkvUVlqV25hR2RlV3dWb1Z0NVpaZUVm?=
 =?utf-8?B?cGJMdFRwbUhJY2o1dW10OWp4a2xqRFZBN01HdUorREhCT2VHT1RtQmZsNUI4?=
 =?utf-8?B?c0h4Ung3eVk1WFVVeWVUODlUT3Evc1E0OEQ3UGFGVTRrb2VTZHdWWXVZbGNh?=
 =?utf-8?B?eGliZVhNblk3azBIeEc3RzRocjZPK3lTdUdBb08xNjBaQ2JDNU92TXY0b3NK?=
 =?utf-8?B?eVZUTTNyK0o3eVNhSk1ROTl3enhScFJCbHl4T1lPL1B0clM2NktTaktTWmRj?=
 =?utf-8?B?bE5obVgzYlVRdkVGT2RscWlKM05FZ3RRWGVGQmF4VEI0YzhhNFJHSmZ0Uzgx?=
 =?utf-8?B?a0tuSGEwMzd4VGozZjhMOHlQV3BVR1NxRW1qVml2bm16cWdqem9tT2ZjRzNR?=
 =?utf-8?B?bzNZbFBIaGhSWGNOZmlFbXV2NGp3ZTc5dnNhRXdsKzB1Mi9GOFFxSTFZZDRE?=
 =?utf-8?B?Y1F5aG85NFpUQ3pCV0hoUUdvWDRJbVNiSWhRQVE5Tk1pK2pJdXRZdnJzV2hu?=
 =?utf-8?B?NUNNdVhoUm5WT2NaTDF2TERLWDhFNCtEdExld1R3ZWQvYWFDOStDajlsemI2?=
 =?utf-8?B?dEV2NzljS1VYMWRXNFF5RU5YYmY4MTZUUE9lL0krS1Qrc3dIbFBjUUlPS1pQ?=
 =?utf-8?B?dU5mdVhaSGdHakVMTVlxTzhYc0xxR2E2eGdKOFJ0eUdUYmtsU0ZIZWZXRlR6?=
 =?utf-8?B?T1hZWjFZSThpNHRNU3JPUjJlalNEa28valF5QkxKWjJDT1kxN2ZKalo5d0lG?=
 =?utf-8?B?dzlNNEdHSkZmeHo1akJmdEcwKzYzQ2lTNWZCSE9GeWVaVFNDQVZtQ0JHN0Nu?=
 =?utf-8?B?TFZzVHMySWRoOHR2TTBmUVMxZGJWMEtqL1lCcWgyZjVDT0t5b3pFTEZKTVk2?=
 =?utf-8?B?WUFyQ09Vdk81eWxVcXpjSmlFVk9CelVqaUxXMHlCV094VGp1bzZ5NEtWYmww?=
 =?utf-8?B?TGJYT0k4STkzYUdTRTJMZlEzcWhjM01qdnVqQ3JkR3JHVnFsb1hCRXo0cFlr?=
 =?utf-8?B?U3Yxem1XUEd1bUJKamRxajFHVFlRS01NNDFpdzJBNVFDV1d3YVphUHR5aGdG?=
 =?utf-8?B?WFp4dWduMlVEM1AwUjUrdnNTRGtkUjgzclBIWkpQZ0kwc0JMQy9MR3VsSmh3?=
 =?utf-8?B?dGpRbWdpYkxQWlZmbWxYdUlkSG1yampkWGphSlRhNFFWZ2RadFA1UHlqZkt0?=
 =?utf-8?B?dllFL0dNeG1PV2JXWVA2UHQwMkhEKzk0NnpGUmkvVGZMUEJEeGw0UTd4bTVi?=
 =?utf-8?B?NWJkZkZwNHRCQ1d4eUZCbllidWlNam5YbHltWGp3d1ROSkE2L3h6M0l0TUJo?=
 =?utf-8?B?MisxSnhTejJhbzhEaU10SWd2Nks2c2lKaEdKZTFBMTFyR2QybHRHekZmSnlh?=
 =?utf-8?B?UmJEWGdETEVpenBPVkpzWm5pbStjTm5oM2tQaTZGRndZeEZacU1Qejk0dEI1?=
 =?utf-8?B?d3ZmVVJhUS8zN3Z2MHZEMUw5b3VjMjlVQnp1cERVVjZSajVqQ0IvSDhPYlZE?=
 =?utf-8?B?WG1OMXFPd2Z6NXh2ZTB6Z1FqY3lWWDhiVnZ1OWYvbXJrKzZ3ejhHdStlNjNh?=
 =?utf-8?B?TnB0U1oxS1ltUmFrekZ3NDJEZ0cvL3ZUMEMwYWRVSkdZd0Y0TktLYVRtSWM1?=
 =?utf-8?B?VXBOOWJ2R1pVblU3NDI3MzJZVDduSy9XMUNVQ3AzSXZZUWhlaFg1SUF4RHRD?=
 =?utf-8?B?d2UxT1NUenBiVDNYRElXR2QwWGhwS1ZCanpwOTRNaXNMM1dzdncvYlErdFYy?=
 =?utf-8?B?TUZkNldiYmRMQkdnSk5kVFA3eTNpbzIxVEZtSS9FeXRuNjdWR1RYVkkrK0lO?=
 =?utf-8?B?YjhXWEdSNnNiZk5vdW85KzlGTGdvNE1lbkhaQVhZdGhkK0JRWEt1NWFBQW9l?=
 =?utf-8?Q?FEr99OU1AXK6XCvbdW2kdvv7Q?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: de2d2e24-bfcb-4cdf-27e9-08dbaabe1e8d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 07:36:13.7487
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xvN1e1wPWfSvJYKjcJU4N/vUBpjImRh1kIkUM51ueQoPTV08QtSHKUghbbDzdgf/5MM0q6FxfP0aj4rw9wicDw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7592

On 01.09.2023 09:13, Nicola Vetrini wrote:
> On 28/08/2023 09:59, Jan Beulich wrote:
>> On 25.08.2023 17:02, Nicola Vetrini wrote:
>>> The common header file for ioreq should include the arch-specific one.
>>
>> To be honest I'm not convinced of "should" here. There are two aspects
>> to consider: On one hand it is good practice to do what you say. Otoh 
>> it
>> introduces a needless dependency, and it'll require new arch-es 
>> (RISC-V,
>> PPC at present) to introduce another dummy header just to satisfy the
>> xen/ioreq.h use in common/memory.c. Therefore, _if_ we want to go this
>> route, besides a wording change here I think ...
>>
> 
> Since including both <xen/ioreq.h> and the arch-specific one was 
> requested to be changed
> in previous series, I was trying to apply the same pattern here.
> If you prefer not to change the current layout then the fix is even 
> simpler: I'll just
> include <asm/ioreq.h> in xen/arch/arm/ioreq.c, which is where it's 
> missing.
> 
>>> --- a/xen/include/xen/ioreq.h
>>> +++ b/xen/include/xen/ioreq.h
>>> @@ -20,6 +20,7 @@
>>>  #define __XEN_IOREQ_H__
>>>
>>>  #include <xen/sched.h>
>>> +#include <asm/ioreq.h>
>>
>> ... this #include wants to be conditional upon CONFIG_IOREQ_SERVER 
>> being
>> defined. (I'm actually surprised that there's no respective #ifdef in
>> that header, meaning types defined there are available even when the
>> functionality was turned off.)
> 
> The two functions in question are actually guarded by an #ifdef 
> CONFIG_IOREQ_SERVER
> in arch/arm/include/asm/ioreq.h (in the #else branch some stubs are 
> defined)

Well, I don't see how an #ifdef there helps with the aspect mentioned
earlier (new arch-es needing to needlessly provide such a header as long
as the #include here is unconditional).

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 07:44:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 07:44:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594462.927792 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbypZ-0005Qp-7z; Fri, 01 Sep 2023 07:44:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594462.927792; Fri, 01 Sep 2023 07:44:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbypZ-0005Qi-4k; Fri, 01 Sep 2023 07:44:37 +0000
Received: by outflank-mailman (input) for mailman id 594462;
 Fri, 01 Sep 2023 07:44:36 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=cwX6=ER=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qbypY-0005Qc-Ej
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 07:44:36 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on060f.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::60f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 650bc4ee-489b-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 09:44:35 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB8064.eurprd04.prod.outlook.com (2603:10a6:102:cf::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.23; Fri, 1 Sep
 2023 07:44:31 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.021; Fri, 1 Sep 2023
 07:44:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 650bc4ee-489b-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bc2R6YtWyGjuxUgBXxHm3qUvaM8/kY3iLm3e57WonI9ixJdSDZwc4RGXH2sBzesk0XqGqzijr2SaRiaBG0//xnfGLOxy+wb/hgCcTzsKMIgMCGe2vJfb9XZzroQ7NyzG5rx4ZlOIWdriKAqFRb7LIk6Spq5bfBO9u9DUt5wa7uB+CGDjOggSyYJzIMA8X6mt1pZ9TJkMKWHaftNOoG89JjrU2r9FxXju3I1C2ibLuqWoo1WAPdV7zo+vvDOcnXIJeNalAZiYAHJ0Dybdoqu2ZDI6/3QhuSqz596iO/9sLGN9UN4g5gkfeqEriFA7bUzEyxedpkIJu6yW7nZ6yHE+pw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DotymbDAi8cUClpNc9fKcWdmy7p9FUp+OUWHV31d+X0=;
 b=MMTIPwBBXYIeO+2ilN+cSXeBNQNBIMvP+mToQ6LlJ6Wh1Pch+0fqdLfkshxsHgvq3dcp2u7vuU4m76sWfwQ+y76PMFXVKShE9WUMHyQrv5oFqz658YwTq/j9138fIY2e7VXXLCbcDOtnmMGIp0CBQSEZ+x8+MFVy4dHneri6fw87/XxbnaaSnLycl7By4m4boHfAzxPROEqBSCw2PpMkOMAg2bPdVlKjrQN8NQellvkzl+2Ccgr4jnAo5FMOjETlG4I5dUCjqs3+YT3QgTUEXxdsx5nvvnhxvdaJR/Zc474+CriUhk3nxjRsQWWljWOdSqJZC+Od+U8mpK244fs+nw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DotymbDAi8cUClpNc9fKcWdmy7p9FUp+OUWHV31d+X0=;
 b=l+TsADxPyqjS9Q8NBUBei56Z5x6Hw/Mf4Hq7dx3iwHHqJSenY+1sATQS+HKw0Eoo9ZEY0zmXpVHSsUSdrxjiaIuSTxOYK/FcBilGFi6YOxibKyOaiHVAOPn3beqt9wJNY13wfOZ71cWSupT5uJ3g52Pp34GxuNZjN11VRunTvfdAdjeigG5adN1I4NF2CC46YGh4OQhfqJ7MR2YGMmv+z7eLw1Zha3isZrAfTLIpfnm9+GG8QWWkGV5sT/xrDkQn4WUoWK6my91/uhXA4W6inKR91bVJ8WBWvQDu/kwSnMmDNdtpARbqYzqJfBzmB/Pn7+ljv7oEehv7QltpDPBANw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
Date: Fri, 1 Sep 2023 09:44:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
Content-Language: en-US
To: Simon Gaiser <simon@invisiblethingslab.com>,
 "committers@xenproject.org" <committers@xenproject.org>
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0123.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB8064:EE_
X-MS-Office365-Filtering-Correlation-Id: 547b43a6-84df-45fd-ad19-08dbaabf4762
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8GUbb8NdFHS5fDs+xOLcX1Nd7TuLEpY41S/+bP/PMKQEj0LgIDlQKIJZmahWf/cbpGF7KYHA2w4hcrcr+kx8iy6C6bDU2nrhhrqUOVBFawPto8B+4PEMuhSXw1Uh09pJ3ZQeglzRzo6QBhn5OcO7wiqao68/9Drd86RzJ1IhglvEw4Clg2GbbKJnMInsTB/bMLFJfbyIw4w4Hwdd6N3uIjPYTqcz7TnSyERa2I9J9ZN0XDWrMD97en03JvciLS6G0XtcNOFjx05WI90ZgRcUZNY9ncbmhjJC4bjtp0OZ6lB+PCXj6ixNj9UsL57XBOPDMHSxRebHnhevsMR92Eug0o6lriSMnKlc0s0jwyRgHrzNkpUOK93g/40M5d9XtKhx76CioYc+8jm1Wh/dHKGZBgtvomCvzbF8GB+7T9g2Bq8nfdndyp4LGwOLncvKAxDOgv7n96g40Pnf/7zNpC2FeFaleWtlJyPNEo59YLOhdIiiWKbOSPfDGkNcFSVKPGjXfv091m9IorPmx/dHb9YguOwwjV2rVZCoZjOWcGKaUz33ZX3Ng66dkiwGk63Qq3wokbJPNuXj9Nbv2d97FdUM/C0bKx2VBP2hUtg9r2wDPNEnAWTAdrN2Zpm7D2lGiHf5AG2LTBkNYoXHV/0SVPk5cQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(366004)(376002)(136003)(396003)(1800799009)(186009)(451199024)(6506007)(6486002)(53546011)(6512007)(6666004)(83380400001)(86362001)(31696002)(38100700002)(36756003)(26005)(2616005)(31686004)(41300700001)(2906002)(110136005)(66476007)(66556008)(66946007)(8676002)(8936002)(4326008)(316002)(966005)(478600001)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bjFrZDRoYldjWEJWQTN0NDdsUzhkUUQyUGdEMnBUYWFYNVRVQWg4SDV3dy9Q?=
 =?utf-8?B?aVRKK002M2hXWitwR0NLeFNGWmtFbk0vbFBKakJTSVZTYldGNWJTNzYwZ0VX?=
 =?utf-8?B?YVZ5d3grVUlDajVxMUFEdXEzaThrY3JXWWJmb21DTlJjdkZWMy9nbk9wWUlP?=
 =?utf-8?B?bXBPVTJHUTN3WE1xQ0pYNFJyS2pOM3N0eU5TQnJXZ1FaWkEzN3MwYWJLbWFH?=
 =?utf-8?B?RlBrb3BiejQ3aTRUNzdoZkpybHJ0aVZMZlorVzd4cVg1Q2NyYVZqalhPQ1A4?=
 =?utf-8?B?L2JuS3VTTjRJblhLNldrbm5nSzVGUmtVaTNiTmU0RjAyVCtNaVdZdlpKMDZC?=
 =?utf-8?B?NTk1cUswTitHem0wcDcrRjlPT3F4M0JLaGdYSlc1TCs1dHJ2aWJkdHI1ZVJq?=
 =?utf-8?B?dnJ4UkhqMHo2MnE0blRoQWtsY2dUYTdkSjluQ25WZEdlaHo1WjFXN2MwelRB?=
 =?utf-8?B?aUE2aFVrNlcwQTRINzBMdXhCU1ErKzFzM1pBRVhkeWhjUXg2YlJVMlpDN01v?=
 =?utf-8?B?ZGEvV1pGZ0xSR0tHT242WnVTRnArUms4bUI2b2JXVmZUVjF4ZmdEN0J1U09l?=
 =?utf-8?B?SEdvSlkzVUFacDNKMEczR1hLOXkzTHZkL2VsV3JWZi9PN2tLc0MwYVR0QWxO?=
 =?utf-8?B?dEN5Y3ZHcjF5b0x2cmtRb0x4a21adkFxQnRRck13U281OGxsZ2hRYWNCVWdP?=
 =?utf-8?B?OENPQUp3SEVXSDZlQldNdXVSTjZSTFZFdGxJRnl1NlFIVE5MdjZ0QnRsaW95?=
 =?utf-8?B?ODlBV09uaFhUQ25jRW8wd3JUNXZOY29Ocm9BWm9pSWM2UFJlMWgxamlpRHNQ?=
 =?utf-8?B?TG10bTZuR3plSkZzWlQ1Zk1udG9vTEh3N0E5TTZOc2IwbytVOFZnZDA1eEg1?=
 =?utf-8?B?eVRYR0srT1U2TFlsRzgwcTdiLzhwMU5CTFBPVTZrbE1haXFiOStqNG5rN3Fq?=
 =?utf-8?B?YVZMc01WQUJHVlJWRGR1VjBxdFg0YXk5Z3VwR0pxaEFZdjF5eUllb09QT1Q0?=
 =?utf-8?B?azFjOTZVVFBxRUVPTjFpLzhnNWQ2Nkd6NWJsSVZpS0ovd0hHbDNaMlkxb1kw?=
 =?utf-8?B?YnNkMEdCVVdGMFk2bWJsSzJYQlhlRjlhd1pjSkFUeGQxc1gzQTIvb2xTL3hi?=
 =?utf-8?B?QVNscDJXdm5Gc0Z6UE0ycHZBT0ZCMW9qT1lja1pValQ4SE96TzVpeDl6US9a?=
 =?utf-8?B?ZGdLZWttejZmUjVYcVo5TUhHU1ExTHE1Wnl0dmFJVEIxbWxFdlVXZUdHbWUv?=
 =?utf-8?B?V0lOVWo1ZEVMT1U5ckkwNWEwbHNQVVBZZk5YTUNpaW9jUDl4ZWdyQS9aT2F5?=
 =?utf-8?B?b2t6SGduWlEyWHlPWFBhZ0lEd05wUURmNm8yMyszMVJNVHhMbUo3dXBkK1U4?=
 =?utf-8?B?RVN6L01hWElRdUxSbnVybUYxQVZ1SGEybUJ4VDQ5VjdsZ3JaRFZWdzhNaHcz?=
 =?utf-8?B?OVNEcXZsVk1mcDQ5UlZJRm1mdUx3dktZQzdQK01Pdmd5cnFKTDlJeDRqaVVD?=
 =?utf-8?B?ai80NzFzMVp1VUZOWm5aY2ozanhxNGQ2SUwyMTVwdllqYnhsYWw3NFZ2QTlx?=
 =?utf-8?B?UVJFWmY4RmdhOGUvcld4R1huNUhlSGxMV3psTkJIYXBDYkEweGV6Z3FhUG9K?=
 =?utf-8?B?RXZsWTJnWFZZbUFwS2s4ZjM5T3ZLNy9YYmNTdkkwMnh6RmpKbFBZd0Q0M1d4?=
 =?utf-8?B?Q0lmdmhOU3hwcjVHaTlybG1YSURVWUNuNmpibG91V09CcHdhckxISVczdUxo?=
 =?utf-8?B?OHFsLzZ6UFdmRGI0S2lIajRia3plVGpUaTRUOGJVWlNaNjE1S2FlekllTWVX?=
 =?utf-8?B?OGxWOEVMM25rZllKOHEzT0pFaUJuTGo5a05XZVFqaHpDOGlQTUdzeTl3K2Ns?=
 =?utf-8?B?Y2hZcFdqY1ZteGFKSFp2VlZVVWhtT01SMDNlNG9pb3BkN3VXWjhuN0tVdCto?=
 =?utf-8?B?dzhlV3VXRWkvOVRIZ2J5MnhNT0ozYm82TlEvNFNTZWVZY2JlOEpSaVhBb1p3?=
 =?utf-8?B?Vk1uWWY3S1IreWZ1cXh2NE9MZHlDT2JhNWdDZEl0dk1nckQzdDRoTXhleXlq?=
 =?utf-8?B?Yjl3K1JoY2RUSUwrY1JBSGk4VXF1cVdLWHV5bHRtdWpKdXlvZnpPblVrZGRT?=
 =?utf-8?Q?wsPRTARn4BHlq3Xs6tAXVYwGV?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 547b43a6-84df-45fd-ad19-08dbaabf4762
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 07:44:31.7738
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: KVchVxZnWhLetgraxCqX0Qv9YKdSAw+7cEZ9NSat0pmSMu5oCbyTsKBLRph51yAwsZew+kg1zwy2gLEs9WEC6A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB8064

On 07.08.2023 11:38, Simon Gaiser wrote:
> It seems some firmwares put dummy entries in the ACPI MADT table for non
> existing processors. On my NUC11TNHi5 those have the invalid APIC ID
> 0xff. Linux already has code to handle those cases both in
> acpi_parse_lapic [1] as well as in acpi_parse_x2apic [2]. So add the
> same check to Xen.
> 
> Note that on some older (2nd gen Core i) laptop of mine I also saw dummy
> entries with a valid APIC ID. Linux would still ignore those because
> they have !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE. But in Xen
> this check is only active for madt_revision >= 5. But since this version
> check seems to be intentionally I leave that alone.
> 
> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f3bf1dbe64b62a2058dd1944c00990df203e8e7a # [1]
> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=10daf10ab154e31237a8c07242be3063fb6a9bf4 # [2]
> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>

This patch was committed with unaddressed review comments. The normal action
in such a case would be to revert, expecting a v2 to arrive. One alternative
here would be a timely incremental patch submission. Another alternative,
considering in particular Thomas's most recent reply, would be to properly
downgrade CPU hotplug support in SUPPORT.md (with a corresponding entry in
CHANGELOG.md).

I'll give it until the end of next week for either of the alternatives to be
carried out. If nothing appears by then, I'll assume I may rightfully revert.
(This timeline also allows putting this topic on the Community Call agenda,
should anyone think this is necessary.)

Regards, Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 07:48:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 07:48:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594470.927801 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbytB-000664-QY; Fri, 01 Sep 2023 07:48:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594470.927801; Fri, 01 Sep 2023 07:48:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbytB-00065x-Nw; Fri, 01 Sep 2023 07:48:21 +0000
Received: by outflank-mailman (input) for mailman id 594470;
 Fri, 01 Sep 2023 07:48:20 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qbytA-00065n-Al; Fri, 01 Sep 2023 07:48:20 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qbytA-0000dE-23; Fri, 01 Sep 2023 07:48:20 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qbyt9-0006aJ-MK; Fri, 01 Sep 2023 07:48:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qbyt9-0005iR-Lt; Fri, 01 Sep 2023 07:48:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=hkAPjuInIj0/13HdYRg8VkYRzBzEvnjp/Qrwb1sHZqQ=; b=yGwC0h0ZHRAQwZhJ4nai4TftzR
	nEnWDRRB7aeRdAg4/+DQc4CjtHXbH3T+CXW2ot1GGOBAa/Jekg757PCmrWF/pQt3bjtuemqdGBese
	eV7AChcZDHRqrt+8Ce5+06VMi30CTIwxAEsqksicOvOsAq7Lxuz47Lr5P5Ak/WivPyj8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182583-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 182583: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-5.4:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:guest-start.2:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-vhd:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=5eb967dd50a5a29952ab6e6b1ef4bf216cf1652c
X-Osstest-Versions-That:
    linux=fd2a1d1f32ea37c57a8b46a0857f06fd7274dd2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 01 Sep 2023 07:48:19 +0000

flight 182583 linux-5.4 real [real]
flight 182594 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182583/
http://logs.test-lab.xenproject.org/osstest/logs/182594/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 15 guest-start.2 fail in 182575 pass in 182583
 test-armhf-armhf-xl-multivcpu 14 guest-start     fail in 182575 pass in 182583
 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail in 182575 pass in 182583
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 182575 pass in 182583
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install          fail pass in 182575
 test-armhf-armhf-xl-vhd      13 guest-start                fail pass in 182575
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail pass in 182594-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-rtds   18 guest-start/debian.repeat fail blocked in 182363
 test-armhf-armhf-xl-rtds     14 guest-start   fail in 182575 blocked in 182363
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 182575 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 182575 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182363
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182363
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182363
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182363
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat    fail  like 182363
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182363
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182363
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182363
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182363
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182363
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182363
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182363
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182363
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass

version targeted for testing:
 linux                5eb967dd50a5a29952ab6e6b1ef4bf216cf1652c
baseline version:
 linux                fd2a1d1f32ea37c57a8b46a0857f06fd7274dd2c

Last test of basis   182363  2023-08-16 16:45:54 Z   15 days
Testing same since   182569  2023-08-30 14:44:38 Z    1 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Abel Wu <wuyun.abel@bytedance.com>
  Adrian Hunter <adrian.hunter@intel.com>
  Alan Liu <haoping.liu@amd.com>
  Aleksandr Loktionov <aleksandr.loktionov@intel.com>
  Alessio Igor Bogani <alessio.bogani@elettra.eu>
  Alex Deucher <alexander.deucher@amd.com>
  Alexander Aring <aahringo@redhat.com>
  Alfred Lee <l00g33k@gmail.com>
  Amir Goldstein <amir73il@gmail.com>
  Andreas Gruenbacher <agruenba@redhat.com>
  Andrew Morton <akpm@linux-foundation.org>
  Andrey Skvortsov <andrej.skvortzov@gmail.com>
  Andrii Staikov <andrii.staikov@intel.com>
  Ankit Nautiyal <ankit.k.nautiyal@intel.com>
  Armin Wolf <W_Armin@gmx.de>
  Arnd Bergmann <arnd@arndb.de>
  Arpana Arland <arpanax.arland@intel.com> (A Contingent worker at Intel)
  Atul Dhudase <adhudase@codeaurora.org>
  Benjamin Coddington <bcodding@redhat.com>
  Benjamin Gray <bgray@linux.ibm.com>
  Biju Das <biju.das.jz@bp.renesas.com>
  Bjorn Helgaas <bhelgaas@google.com>
  Chengfeng Ye <dg573847474@gmail.com>
  Christian Brauner <brauner@kernel.org>
  Christian König <christian.koenig@amd.com>
  Christian Marangi <ansuelsmth@gmail.com>
  Chuck Lever <chuck.lever@oracle.com>
  Clayton Yager <Clayton_Yager@selinc.com>
  Colin Ian King <colin.i.king@gmail.com>
  Cosmin Tanislav <cosmin.tanislav@analog.com>
  Cosmin Tanislav <demonsingur@gmail.com>
  Daniel Vetter <daniel.vetter@ffwll.ch>
  Daniel Wheeler <daniel.wheeler@amd.com>
  Dave Kleikamp <dave.kleikamp@oracle.com>
  David S. Miller <davem@davemloft.net>
  David Sterba <dsterba@suse.com>
  David Teigland <teigland@redhat.com>
  dengxiang <dengxiang@nfschina.com>
  Doug Berger <opendmb@gmail.com>
  Eric Dumazet <edumazet@google.com>
  Eyal Birger <eyal.birger@gmail.com>
  Feng Tang <feng.tang@intel.com>
  Florian Fainelli <florian.fainelli@broadcom.com>
  Florian Westphal <fw@strlen.de>
  Fred Eckert <Frede@cmslaser.com>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Geert Uytterhoeven <geert@linux-m68k.org>
  Georgi Djakov <georgi.djakov@linaro.org>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Guenter Roeck <linux@roeck-us.net>
  Gustavo A. R. Silva <gustavoars@kernel.org>
  hackyzh002 <hackyzh002@gmail.com>
  Hangbin Liu <liuhangbin@gmail.com>
  Hans Verkuil <hverkuil-cisco@xs4all.nl>
  Hariprasad Kelam <hkelam@marvell.com>
  Harshit Mogalapalli <harshit.m.mogalapalli@oracle.com>
  Helge Deller <deller@gmx.de>
  Ido Schimmel <idosch@nvidia.com>
  Igor Mammedov <imammedo@redhat.com>
  Immad Mir <mirimmad17@gmail.com>
  J. Bruce Fields <bfields@redhat.com>
  Jakob Koschel <jakobkoschel@gmail.com>
  Jakub Kicinski <kuba@kernel.org>
  Jamal Hadi Salim <jhs@mojatatu.com>
  Jan Kara <jack@suse.cz>
  Jani Nikula <jani.nikula@intel.com>
  Jason Wang <jasowang@redhat.com>
  Jason Xing <kernelxing@tencent.com>
  Jay Vosburgh <jay.vosburgh@canonical.com>
  Jerome Brunet <jbrunet@baylibre.com>
  Jiaxun Yang <jiaxun.yang@flygoat.com>
  Jiri Kosina <jkosina@suse.cz>
  Joel Savitz <jsavitz@redhat.com>
  Joerg Roedel <jroedel@suse.de>
  Johan Hovold <johan+linaro@kernel.org>
  Jon Hunter <jonathanh@nvidia.com>
  Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Josip Pavic <Josip.Pavic@amd.com>
  Julian Anastasov <ja@ssi.bg>
  Justin Chen <justin.chen@broadcom.com>
  Kishon Vijay Abraham I <kvijayab@amd.com>
  Krishna Kurapati <quic_kriskura@quicinc.com>
  Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
  Kuniyuki Iwashima <kuniyu@amazon.com>
  Lee Jones <lee@kernel.org>
  Li Jun <jun.li@nxp.com>
  Lin Ma <linma@zju.edu.cn>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linux Kernel Functional Testing <lkft@linaro.org>
  Lu Wei <luwei32@huawei.com>
  Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
  Marc Zyngier <maz@kernel.org>
  Marco Morandini <marco.morandini@polimi.it>
  Marek Vasut <marex@denx.de>
  Mark Brown <broonie@kernel.org>
  Martin K. Petersen <martin.petersen@oracle.com>
  Martin KaFai Lau <martin.lau@kernel.org>
  Masami Hiramatsu (Google) <mhiramat@kernel.org>
  Masami Hiramatsu <mhiramat@kernel.org>
  Matthieu Baerts <matthieu.baerts@tessares.net>
  Matus Gajdos <matuszpd@gmail.com>
  Mauro Carvalho Chehab <mchehab@kernel.org>
  Maximilian Heyne <mheyne@amazon.de>
  Michael Ellerman <mpe@ellerman.id.au>
  Michael S. Tsirkin <mst@redhat.com>
  Michal Koutný <mkoutny@suse.com>
  Michał Mirosław <mirq-linux@rere.qmqm.pl>
  Mike Snitzer <snitzer@kernel.org>
  Mike Snitzer <snitzer@redhat.com>
  Mikulas Patocka <mpatocka@redhat.com>
  Mimi Zohar <zohar@linux.ibm.com>
  Mirsad Todorovac <mirsad.todorovac@alu.unizg.hr>
  Nathan Lynch <nathanl@linux.ibm.com>
  Nicolin Chen <nicoleotsuka@gmail.com>
  Nikolay Aleksandrov <razor@blackwall.org>
  Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
  Pablo Neira Ayuso <pablo@netfilter.org>
  Paolo Abeni <pabeni@redhat.com>
  Paulo Alcantara (SUSE) <pc@manguebit.com>
  Pavle Kotarac <Pavle.Kotarac@amd.com>
  Peter Chen <peter.chen@kernel.org>
  Petr Machata <petrm@nvidia.com>
  Pina Chen <pina.chen@mediatek.com>
  Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  Rafael J. Wysocki <rafael@kernel.org>
  Randy Dunlap <rdunlap@infradead.org>
  Ray Jui <ray.jui@broadcom.com>
  Remi Pommarel <repk@triplefau.lt>
  Rob Clark <robdclark@chromium.org>
  Ruan Jinjie <ruanjinjie@huawei.com>
  Russell Harmon <russ@har.mn>
  Russell Harmon via samba-technical <samba-technical@lists.samba.org>
  Saeed Mirzamohammadi <saeed.mirzamohammadi@oracle.com>
  Sakari Ailus <sakari.ailus@linux.intel.com>
  Sam Ravnborg <sam@ravnborg.org>
  Sandeep Maheswaram <quic_c_sanm@quicinc.com>
  Sasha Levin <sashal@kernel.org>
  Serge Semin <fancer.lancer@gmail.com>
  Sergey Shtylyov <s.shtylyov@omp.ru>
  Shakeel Butt <shakeelb@google.com>
  shanzhulig <shanzhulig@gmail.com>
  Shawn Guo <shawnguo@kernel.org>
  Shengjiu Wang <shengjiu.wang@gmail.com>
  Shengjiu Wang <shengjiu.wang@nxp.com>
  Sherry Sun <sherry.sun@nxp.com>
  Shuah Khan <skhan@linuxfoundation.org>
  Simon Horman <horms@kernel.org>
  Simon Wunderlich <sw@simonwunderlich.de>
  Sishuai Gong <sishuai.system@gmail.com>
  Stefan Wahren <stefan.wahren@i2se.com>
  Steffen Klassert <steffen.klassert@secunet.com>
  Stephen Boyd <sboyd@kernel.org>
  Steve French <stfrench@microsoft.com>
  Steven Rostedt (Google) <rostedt@goodmis.org>
  Steven Rostedt (VMware) <rostedt@goodmis.org>
  Sudip Mukherjee <sudip.mukherjee@codethink.co.uk>
  Sunil Goutham <sgoutham@marvell.com>
  Sven Eckelmann <sven@narfation.org>
  Taimur Hassan <syed.hassan@amd.com>
  Takashi Iwai <tiwai@suse.de>
  Tang Bin <tangbin@cmss.chinamobile.com>
  Thinh Nguyen <Thinh.Nguyen@synopsys.com>
  Thomas Bogendoerfer <tsbogend@alpha.franken.de>
  Thomas Gleixner <tglx@linutronix.de>
  Thomas Zimmermann <tzimmermann@suse.de>
  Tony Lindgren <tony@atomide.com>
  Tony Nguyen <anthony.l.nguyen@intel.com>
  Trond Myklebust <trond.myklebust@hammerspace.com>
  Tuo Li <islituo@gmail.com>
  Ulf Hansson <ulf.hansson@linaro.org>
  Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
  Victor Nogueira <victor@mojatatu.com>
  Vijay Khemka <vijaykhemka@fb.com>
  Vladimir Oltean <vladimir.oltean@nxp.com>
  Wei Chen <harperchen1110@gmail.com>
  William Breathitt Gray <william.gray@linaro.org>
  Wolfram Sang <wsa+renesas@sang-engineering.com>
  Wolfram Sang <wsa@kernel.org>
  Woody Suwalski <terraluna977@gmail.com>
  Xiaolei Wang <xiaolei.wang@windriver.com>
  xiaoshoukui <xiaoshoukui@gmail.com>
  xiaoshoukui <xiaoshoukui@ruijie.com.cn>
  Xin Long <lucien.xin@gmail.com>
  Xu Yang <xu.yang_2@nxp.com>
  Yang Yingliang <yangyingliang@huawei.com>
  Yangtao Li <frank.li@vivo.com>
  Yangtao Li <tiny.windzz@gmail.com>
  Ye Bin <yebin10@huawei.com>
  Yibin Ding <yibin.ding@unisoc.com>
  Yogesh <yogi.kernel@gmail.com>
  Yuanjun Gong <ruc_gongyuanjun@163.com>
  Yunfei Dong <yunfei.dong@mediatek.com>
  Zhang Shurong <zhang_shurong@foxmail.com>
  Zheng Yejian <zhengyejian1@huawei.com>
  Zhengchao Shao <shaozhengchao@huawei.com>
  Zhengping Jiang <jiangzp@google.com>
  Zhu Wang <wangzhu9@huawei.com>
  Ziyang Xuan <william.xuanziyang@huawei.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           fail    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      fail    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

hint: The 'hooks/update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-receive' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
To xenbits.xen.org:/home/xen/git/linux-pvops.git
   fd2a1d1f32ea..5eb967dd50a5  5eb967dd50a5a29952ab6e6b1ef4bf216cf1652c -> tested/linux-5.4


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 08:05:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 08:05:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594483.927811 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbz9c-0001Jl-KT; Fri, 01 Sep 2023 08:05:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594483.927811; Fri, 01 Sep 2023 08:05:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbz9c-0001Je-HV; Fri, 01 Sep 2023 08:05:20 +0000
Received: by outflank-mailman (input) for mailman id 594483;
 Fri, 01 Sep 2023 08:05:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=odZU=ER=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qbz9a-0001JY-H8
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 08:05:18 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 48f5d454-489e-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 10:05:17 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-176-MQulV_cBNAm4d3ZX4whsBA-1; Fri, 01 Sep 2023 04:05:10 -0400
Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com
 [10.11.54.1])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id D6C3E101A52E;
 Fri,  1 Sep 2023 08:05:09 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.30])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id E869740C2063;
 Fri,  1 Sep 2023 08:05:07 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id E578E21E692A; Fri,  1 Sep 2023 10:05:06 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 48f5d454-489e-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1693555515;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=p9bH8tBHoE1nTGc4E8sU4DeLz2qqkxRJpm4B34MI+Qw=;
	b=gv3cTM7apmnqQIEzAomMauc1u2J+Alov4D59+ZcFCXla9Ri3fRW10zQpdvx2rQhKzcK08o
	uZaj9H1ki4lerif2t9zNyTY+z9E4rGhGzQw15Hf/aTT7a6pSsKGcldb6RN4aq+dKkq0PKM
	ESnqlNKoiL2K5JmrVZ/eBgDKOH2v2eQ=
X-MC-Unique: MQulV_cBNAm4d3ZX4whsBA-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,  hreitz@redhat.com,  eblake@redhat.com,
  vsementsov@yandex-team.ru,  jsnow@redhat.com,  idryomov@gmail.com,
  pl@kamp.de,  sw@weilnetz.de,  sstabellini@kernel.org,
  anthony.perard@citrix.com,  paul@xen.org,  pbonzini@redhat.com,
  marcandre.lureau@redhat.com,  berrange@redhat.com,  thuth@redhat.com,
  philmd@linaro.org,  stefanha@redhat.com,  fam@euphon.net,
  quintela@redhat.com,  peterx@redhat.com,  leobras@redhat.com,
  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org,
  peter.maydell@linaro.org
Subject: Re: [PATCH 0/7] Steps towards enabling -Wshadow=local
References: <20230831132546.3525721-1-armbru@redhat.com>
Date: Fri, 01 Sep 2023 10:05:06 +0200
In-Reply-To: <20230831132546.3525721-1-armbru@redhat.com> (Markus Armbruster's
	message of "Thu, 31 Aug 2023 15:25:39 +0200")
Message-ID: <87cyz2l3nx.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.1

Markus Armbruster <armbru@redhat.com> writes:

> Local variables shadowing other local variables or parameters make the
> code needlessly hard to understand.  Bugs love to hide in such code.
> Evidence: PATCH 1.
>
> Enabling -Wshadow would prevent bugs like this one.  But we'd have to
> clean up all the offenders first.  We got a lot of them.
>
> Enabling -Wshadow=local should be less work for almost as much gain.
> I took a stab at it.  There's a small, exciting part, and a large,
> boring part.
>
> The exciting part is dark preprocessor sorcery to let us nest macro
> calls without shadowing: PATCH 7.
>
> The boring part is cleaning up all the other warnings.  I did some
> [PATCH 2-6], but ran out of steam long before finishing the job.  Some
> 160 unique warnings remain.
>
> To see them, enable -Wshadow=local like so:
>
> diff --git a/meson.build b/meson.build
> index 98e68ef0b1..9fc4c7ac9d 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -466,6 +466,9 @@ warn_flags = [
>    '-Wno-tautological-type-limit-compare',
>    '-Wno-psabi',
>    '-Wno-gnu-variable-sized-type-not-at-end',
> +  '-Wshadow=local',
> +  '-Wno-error=shadow=local',
> +  '-Wno-error=shadow=compatible-local',
>  ]
>  
>  if targetos != 'darwin'
>
> You may want to drop the -Wno-error lines.
>
> Subsystems with -Wshadow=local warnings:
>
>     virtio-gpu
>     virtio
>     Device Tree
>     Overall TCG CPUs

Philippe's "[PATCH 00/11] (few more) Steps towards enabling -Wshadow"
takes care of this one.

>     Overall Audio backends
>     Open Sound System (OSS) Audio backend
>     vhost
>     vhost-user-gpu
>     Cryptography
>     M68K TCG CPUs
>     Dump
>     ACPI/SMBIOS
>     Allwinner-a10

Likewise.

>     ARM TCG CPUs
>     MPS2
>     ASPEED BMCs
>     ARM SMMU
>     Virt
>     Machine core
>     PC Chipset
>     X86 TCG CPUs
>     PC
>     VT-d Emulation
>     IDE

Likewise.

>     ARM cores
>     OpenPIC interrupt controller
>     q800

Likewise.

>     petalogix_ml605
>     MicroBlaze TCG CPUs
>     Versatile PB
>     Network devices
>     NiosII TCG CPUs
>     nvme
>     PowerNV (Non-Virtualized)
>     sPAPR (pseries)
>     OpenTitan
>     RISC-V TCG CPUs
>     SCSI
>     USB
>     Linux user
>     Network packet abstractions

Likewise.

>     Network device backends

Likewise.

>     Network Block Device (NBD)
>     Semihosting
>     Memory API
>     Seccomp
>     Main loop
>     Hexagon TCG CPUs
>     X86 KVM CPUs
>     MIPS TCG CPUs

Likewise.

>     PowerPC TCG CPUs
>     TriCore TCG CPUs
>     Common TCG code

Likewise.

>     qtest
>     Throttling infrastructure
>     Vhost-user block device backend server
>
> Files with -Wshadow=local warnings:
>
>     accel/tcg/tb-maint.c

Likewise.

>     audio/audio.c
>     audio/ossaudio.c
>     contrib/vhost-user-gpu/vhost-user-gpu.c
>     contrib/vhost-user-gpu/vugpu.h
>     crypto/cipher-gnutls.c.inc
>     crypto/tls-cipher-suites.c
>     disas/m68k.c
>     dump/dump.c
>     hw/acpi/cpu_hotplug.c
>     hw/arm/allwinner-r40.c

Likewise.

>     hw/arm/armsse.c
>     hw/arm/armv7m.c
>     hw/arm/aspeed_ast2600.c

Likewise.

>     hw/arm/smmuv3-internal.h
>     hw/arm/smmuv3.c
>     hw/arm/virt.c

Likewise.

>     hw/core/machine.c
>     hw/i2c/aspeed_i2c.c
>     hw/i2c/pm_smbus.c
>     hw/i386/acpi-build.c
>     hw/i386/acpi-microvm.c
>     hw/i386/intel_iommu.c
>     hw/i386/pc.c
>     hw/i386/x86.c
>     hw/ide/ahci.c

Likewise.

>     hw/intc/arm_gicv3_its.c
>     hw/intc/openpic.c
>     hw/loongarch/virt.c
>     hw/m68k/bootinfo.h

Likewise.

>     hw/microblaze/petalogix_ml605_mmu.c
>     hw/misc/arm_sysctl.c
>     hw/misc/aspeed_i3c.c
>     hw/net/vhost_net.c
>     hw/nios2/10m50_devboard.c
>     hw/nvme/ns.c
>     hw/ppc/pnv_psi.c
>     hw/ppc/spapr.c
>     hw/ppc/spapr_drc.c
>     hw/ppc/spapr_pci.c
>     hw/riscv/opentitan.c
>     hw/scsi/mptsas.c
>     hw/smbios/smbios.c
>     hw/usb/desc.c
>     hw/usb/dev-hub.c
>     hw/usb/dev-storage.c
>     hw/usb/hcd-xhci.c
>     hw/usb/host-libusb.c
>     hw/virtio/vhost.c
>     hw/virtio/virtio-pci.c
>     include/hw/cxl/cxl_device.h
>     include/hw/ppc/fdt.h
>     include/hw/virtio/virtio-gpu.h
>     include/sysemu/device_tree.h

Likewise.

>     linux-user/flatload.c
>     linux-user/mmap.c
>     linux-user/strace.c
>     linux-user/syscall.c
>     net/eth.c

Likewise.

>     qemu-nbd.c
>     semihosting/arm-compat-semi.c
>     softmmu/device_tree.c
>     softmmu/memory.c
>     softmmu/physmem.c
>     softmmu/qemu-seccomp.c
>     softmmu/vl.c

      target/arm/hvf/hvf.c

Likewise.

>     target/arm/tcg/mve_helper.c

Likewise.

>     target/arm/tcg/translate-m-nocp.c

Likewise.

>     target/hexagon/helper_funcs_generated.c.inc

This is actually

      target/hexagon/gen_helper_funcs.py

>     target/hexagon/mmvec/macros.h
>     target/hexagon/op_helper.c
>     target/hexagon/translate.c
>     target/i386/cpu.c
>     target/i386/kvm/kvm.c
>     target/i386/tcg/seg_helper.c
>     target/i386/tcg/sysemu/svm_helper.c
>     target/i386/tcg/translate.c
>     target/m68k/translate.c

Likewise.

>     target/mips/tcg/msa_helper.c

Likewise.

>     target/mips/tcg/nanomips_translate.c.inc

Likewise.

>     target/mips/tcg/translate.c

Likewise.

>     target/ppc/int_helper.c
>     target/riscv/cpu.c
>     target/riscv/vector_helper.c
>     target/tricore/translate.c
>     tcg/tcg.c

Likewise.

>     tests/qtest/m48t59-test.c
>     tests/qtest/pflash-cfi02-test.c
>     tests/unit/test-throttle.c
>     util/vhost-user-server.c



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 08:12:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 08:12:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594491.927821 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbzG5-00039l-DH; Fri, 01 Sep 2023 08:12:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594491.927821; Fri, 01 Sep 2023 08:12:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbzG5-00039e-Ab; Fri, 01 Sep 2023 08:12:01 +0000
Received: by outflank-mailman (input) for mailman id 594491;
 Fri, 01 Sep 2023 08:12:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=odZU=ER=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qbzG4-00039Y-QC
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 08:12:00 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 38536d83-489f-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 10:11:58 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-695-TzfSF95gMmykgvPpw4gz5g-1; Fri, 01 Sep 2023 04:11:54 -0400
Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com
 [10.11.54.9])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id C212B801005;
 Fri,  1 Sep 2023 08:11:53 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.30])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 81723492C13;
 Fri,  1 Sep 2023 08:11:53 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 7E84221E692A; Fri,  1 Sep 2023 10:11:52 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 38536d83-489f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1693555917;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=U4y8KpasydNTki6EwLl4CjttzvFm5eCWdJftrgP8a/k=;
	b=K6MxpnjHmjUXokQ1ivot1VMGNfhkvD9722dhGpgWHolUZFZlWF+SLX4fbJdmvA16c/adkR
	NGlWpTmJJ5LrBkUJDqmbOFvBxhu3IX0zj9cAYI2IxTDKo5d5n3D8VE7Jx3YHye0iHW+C0i
	hqtCAcvQmphLj7tg5PPx9ooUwnayVtQ=
X-MC-Unique: TzfSF95gMmykgvPpw4gz5g-1
From: Markus Armbruster <armbru@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-devel@nongnu.org,  kwolf@redhat.com,  hreitz@redhat.com,
  eblake@redhat.com,  vsementsov@yandex-team.ru,  jsnow@redhat.com,
  idryomov@gmail.com,  pl@kamp.de,  sw@weilnetz.de,
  sstabellini@kernel.org,  anthony.perard@citrix.com,  paul@xen.org,
  pbonzini@redhat.com,  marcandre.lureau@redhat.com,  berrange@redhat.com,
  thuth@redhat.com,  philmd@linaro.org,  stefanha@redhat.com,
  fam@euphon.net,  quintela@redhat.com,  peterx@redhat.com,
  leobras@redhat.com,  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org
Subject: Re: [PATCH 3/7] ui: Clean up local variable shadowing
References: <20230831132546.3525721-1-armbru@redhat.com>
	<20230831132546.3525721-4-armbru@redhat.com>
	<CAFEAcA-0yYGkeg1gOtz8GRp-DbaxMQCzhRf=B4rq=Bz_DrsxNA@mail.gmail.com>
Date: Fri, 01 Sep 2023 10:11:52 +0200
In-Reply-To: <CAFEAcA-0yYGkeg1gOtz8GRp-DbaxMQCzhRf=B4rq=Bz_DrsxNA@mail.gmail.com>
	(Peter Maydell's message of "Thu, 31 Aug 2023 15:53:59 +0100")
Message-ID: <875y4ul3cn.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.9

Peter Maydell <peter.maydell@linaro.org> writes:

> On Thu, 31 Aug 2023 at 14:25, Markus Armbruster <armbru@redhat.com> wrote:
>>
>> Local variables shadowing other local variables or parameters make the
>> code needlessly hard to understand.  Tracked down with -Wshadow=3Dlocal.
>> Clean up: delete inner declarations when they are actually redundant,
>> else rename variables.
>>
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>
>
>> diff --git a/ui/vnc-enc-zrle.c.inc b/ui/vnc-enc-zrle.c.inc
>> index c107d8affc..edf42d4a6a 100644
>> --- a/ui/vnc-enc-zrle.c.inc
>> +++ b/ui/vnc-enc-zrle.c.inc
>> @@ -153,11 +153,12 @@ static void ZRLE_ENCODE_TILE(VncState *vs, ZRLE_PI=
XEL *data, int w, int h,
>>      }
>>
>>      if (use_rle) {
>> -        ZRLE_PIXEL *ptr =3D data;
>> -        ZRLE_PIXEL *end =3D ptr + w * h;
>>          ZRLE_PIXEL *run_start;
>>          ZRLE_PIXEL pix;
>>
>> +        ptr =3D data;
>> +        end =3D ptr + w * h;
>> +
>>          while (ptr < end) {
>>              int len;
>>              int index =3D 0;
>> @@ -198,7 +199,7 @@ static void ZRLE_ENCODE_TILE(VncState *vs, ZRLE_PIXE=
L *data, int w, int h,
>>          }
>>      } else if (use_palette) { /* no RLE */
>>          int bppp;
>> -        ZRLE_PIXEL *ptr =3D data;
>> +        ptr =3D data;
>>
>>          /* packed pixels */
>>
>> @@ -241,8 +242,6 @@ static void ZRLE_ENCODE_TILE(VncState *vs, ZRLE_PIXE=
L *data, int w, int h,
>>  #endif
>>          {
>>  #ifdef ZRLE_COMPACT_PIXEL
>> -            ZRLE_PIXEL *ptr;
>> -
>>              for (ptr =3D data; ptr < data + w * h; ptr++) {
>>                  ZRLE_WRITE_PIXEL(vs, *ptr);
>>              }
>
> For this one I'm tempted to suggest instead moving the
> pix and end currently at whole-function scope into their
> own block, so it's clear these are actually four
> completely independent uses of ptr/end. But either way

You have a point.  However, we'd need to splice in a block just for
that, which involved some reindenting.  Can do if the assigned
maintainers (Gerd and Marc-Andr=C3=A9) prefer it.  Else, I'll stay with
minimally invasive.

> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

Thanks!



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 08:12:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 08:12:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594494.927831 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbzGY-0003bg-L3; Fri, 01 Sep 2023 08:12:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594494.927831; Fri, 01 Sep 2023 08:12:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbzGY-0003bZ-II; Fri, 01 Sep 2023 08:12:30 +0000
Received: by outflank-mailman (input) for mailman id 594494;
 Fri, 01 Sep 2023 08:12:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=odZU=ER=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qbzGX-0003Zx-LH
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 08:12:29 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4a790ce8-489f-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 10:12:29 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-543-mlbIbxUdP5q0drilQ8pCwA-1; Fri, 01 Sep 2023 04:12:24 -0400
Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com
 [10.11.54.5])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id C1926806007;
 Fri,  1 Sep 2023 08:12:23 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.30])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 9CB5263A63;
 Fri,  1 Sep 2023 08:12:23 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id A176521E692B; Fri,  1 Sep 2023 10:12:22 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4a790ce8-489f-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1693555947;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=o642JFAoymaeECrSS5y//igTa/bP/GV1G6KemP2w5Lo=;
	b=NiYUHoyw8anvZ0XyrJZKoGbg0XCk+BA7n0LOWHKS2Ew/LxN/KTAfg/e3k2R1+TYObMo0r1
	XttaSZlp2VFdnlyLEIf9uN0835eKHp8MJP1ABh6eiQYYfBssV/CRAxRKbL9qFypvMnxMGE
	lWaVA9z47wDh1gJ85dZYWFSglFEdWWE=
X-MC-Unique: mlbIbxUdP5q0drilQ8pCwA-1
From: Markus Armbruster <armbru@redhat.com>
To: Richard Henderson <richard.henderson@linaro.org>
Cc: qemu-devel@nongnu.org,  kwolf@redhat.com,  hreitz@redhat.com,
  eblake@redhat.com,  vsementsov@yandex-team.ru,  jsnow@redhat.com,
  idryomov@gmail.com,  pl@kamp.de,  sw@weilnetz.de,
  sstabellini@kernel.org,  anthony.perard@citrix.com,  paul@xen.org,
  pbonzini@redhat.com,  marcandre.lureau@redhat.com,  berrange@redhat.com,
  thuth@redhat.com,  philmd@linaro.org,  stefanha@redhat.com,
  fam@euphon.net,  quintela@redhat.com,  peterx@redhat.com,
  leobras@redhat.com,  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org,
  peter.maydell@linaro.org
Subject: Re: [PATCH 7/7] qobject atomics osdep: Make a few macros more hygienic
References: <20230831132546.3525721-1-armbru@redhat.com>
	<20230831132546.3525721-8-armbru@redhat.com>
	<f751ab27-2d6e-19a2-a0bc-ca021a61a8f4@linaro.org>
Date: Fri, 01 Sep 2023 10:12:22 +0200
In-Reply-To: <f751ab27-2d6e-19a2-a0bc-ca021a61a8f4@linaro.org> (Richard
	Henderson's message of "Thu, 31 Aug 2023 08:52:36 -0700")
Message-ID: <871qfil3bt.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.5

Richard Henderson <richard.henderson@linaro.org> writes:

> On 8/31/23 06:25, Markus Armbruster wrote:
>> +#define PASTE(a, b) a##b
>
> We already have glue() in qemu/compiler.h.

Missed it, will fix.

> The rest of it looks quite sensible.

Thanks!



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 08:48:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 08:48:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594504.927842 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbzpY-0008HL-3i; Fri, 01 Sep 2023 08:48:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594504.927842; Fri, 01 Sep 2023 08:48:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qbzpY-0008HE-0O; Fri, 01 Sep 2023 08:48:40 +0000
Received: by outflank-mailman (input) for mailman id 594504;
 Fri, 01 Sep 2023 08:48:38 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=odZU=ER=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qbzpW-0008H8-Nc
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 08:48:38 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 55351bd9-48a4-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 10:48:34 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73])
 by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-652-_-5Ivo6gMjGpo5PL1QjuTA-1; Fri, 01 Sep 2023 04:48:30 -0400
Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com
 [10.11.54.6])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 6E9FB1C05ED8;
 Fri,  1 Sep 2023 08:48:28 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.30])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id EC29D2166B26;
 Fri,  1 Sep 2023 08:48:27 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id E451721E692A; Fri,  1 Sep 2023 10:48:26 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 55351bd9-48a4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1693558113;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=qDec9lEmkr03tUmuqrMQUr6Z0wXTALRazdDr4iYPmgI=;
	b=X4hFf0HvEwrjcRdfzi0H2tFectEoL2zBk00Z93xzYkdHNrXPBy9bs58QkAEEmpmQmtDDhM
	ekXiPs2f0Y+7NswKhVZaDsftHyjMiz3i7qKDTREml8GvnZqYrC9+pwFCOhLnTiKTll7y5D
	14iTseueJA+KO1ZUAFx137mXs9K8t1k=
X-MC-Unique: _-5Ivo6gMjGpo5PL1QjuTA-1
From: Markus Armbruster <armbru@redhat.com>
To: Eric Blake <eblake@redhat.com>
Cc: qemu-devel@nongnu.org,  kwolf@redhat.com,  hreitz@redhat.com,
  vsementsov@yandex-team.ru,  jsnow@redhat.com,  idryomov@gmail.com,
  pl@kamp.de,  sw@weilnetz.de,  sstabellini@kernel.org,
  anthony.perard@citrix.com,  paul@xen.org,  pbonzini@redhat.com,
  marcandre.lureau@redhat.com,  berrange@redhat.com,  thuth@redhat.com,
  philmd@linaro.org,  stefanha@redhat.com,  fam@euphon.net,
  quintela@redhat.com,  peterx@redhat.com,  leobras@redhat.com,
  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org,
  peter.maydell@linaro.org
Subject: Re: [PATCH 7/7] qobject atomics osdep: Make a few macros more hygienic
References: <20230831132546.3525721-1-armbru@redhat.com>
	<20230831132546.3525721-8-armbru@redhat.com>
	<vfkfi6uld3gbd4urmqdlzkv6djtws6mkbluc5qvwcla6btszhu@ff66zfyd7smm>
Date: Fri, 01 Sep 2023 10:48:26 +0200
In-Reply-To: <vfkfi6uld3gbd4urmqdlzkv6djtws6mkbluc5qvwcla6btszhu@ff66zfyd7smm>
	(Eric Blake's message of "Thu, 31 Aug 2023 09:30:33 -0500")
Message-ID: <87ledqjn39.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6

Eric Blake <eblake@redhat.com> writes:

> On Thu, Aug 31, 2023 at 03:25:46PM +0200, Markus Armbruster wrote:
>
> [This paragraph written last: Bear with my stream of consciousness
> review below, where I end up duplicating some of the conslusions you
> reached before the point where I saw where the patch was headed]
>
>> Variables declared in macros can shadow other variables.  Much of the
>> time, this is harmless, e.g.:
>> 
>>     #define _FDT(exp)                                                  \
>>         do {                                                           \
>>             int ret = (exp);                                           \
>>             if (ret < 0) {                                             \
>>                 error_report("error creating device tree: %s: %s",   \
>>                         #exp, fdt_strerror(ret));                      \
>>                 exit(1);                                               \
>>             }                                                          \
>>         } while (0)
>
> Which is why I've seen some projects require a strict namespace
> separation: if all macro parameters and any identifiers declared in
> macros use either a leading or a trailing _ (I prefer a trailing one,
> to avoid risking conflicts with libc reserved namespace; but leading
> is usually okay), and all other identifiers avoid that namespace, then
> you will never have shadowing by calling a macro from normal code.
>
>> 
>> Harmless shadowing in h_client_architecture_support():
>> 
>>         target_ulong ret;
>> 
>>         [...]
>> 
>>         ret = do_client_architecture_support(cpu, spapr, vec, fdt_bufsize);
>>         if (ret == H_SUCCESS) {
>>             _FDT((fdt_pack(spapr->fdt_blob)));
>>             [...]
>>         }
>> 
>>         return ret;
>> 
>> However, we can get in trouble when the shadowed variable is used in a
>> macro argument:
>> 
>>     #define QOBJECT(obj) ({                                 \
>>         typeof(obj) o = (obj);                              \
>>         o ? container_of(&(o)->base, QObject, base) : NULL; \
>>      })
>> 
>> QOBJECT(o) expands into
>> 
>>     ({
>> --->    typeof(o) o = (o);
>>         o ? container_of(&(o)->base, QObject, base) : NULL;
>>     })
>> 
>> Unintended variable name capture at --->.  We'd be saved by
>> -Winit-self.  But I could certainly construct more elaborate death
>> traps that don't trigger it.
>
> Indeed, not fully understanding the preprocessor makes for some
> interesting death traps.

We use ALL_CAPS for macros to signal "watch out for traps".

>> To reduce the risk of trapping ourselves, we use variable names in
>> macros that no sane person would use elsewhere.  Here's our actual
>> definition of QOBJECT():
>> 
>>     #define QOBJECT(obj) ({                                         \
>>         typeof(obj) _obj = (obj);                                   \
>>         _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
>>     })
>
> Yep, goes back to the policy I've seen of enforcing naming conventions
> that ensure macros can't shadow normal code.
>
>> 
>> Works well enough until we nest macro calls.  For instance, with
>> 
>>     #define qobject_ref(obj) ({                     \
>>         typeof(obj) _obj = (obj);                   \
>>         qobject_ref_impl(QOBJECT(_obj));            \
>>         _obj;                                       \
>>     })
>> 
>> the expression qobject_ref(obj) expands into
>> 
>>     ({
>>         typeof(obj) _obj = (obj);
>>         qobject_ref_impl(
>>             ({
>> --->            typeof(_obj) _obj = (_obj);
>>                 _obj ? container_of(&(_obj)->base, QObject, base) : NULL;
>>             }));
>>         _obj;
>>     })
>> 
>> Unintended variable name capture at --->.
>
> Yep, you've just proven how macros calling macros requires care, as we
> no longer have the namespace protections.  If macro calls can only
> form a DAG, it is possible to choose unique intermediate declarations
> for every macro (although remembering to do that, and still keeping
> the macro definition legible, may not be easy).  But if you can have
> macros that form any sort of nesting loop (and we WANT to allow things
> like MIN(MIN(a, b), c) - which is such a loop), dynamic naming becomes
> the only solution.
>
>> 
>> The only reliable way to prevent unintended variable name capture is
>> -Wshadow.
>
> Yes, I would love to have that enabled eventually.
>
>> 
>> One blocker for enabling it is shadowing hiding in function-like
>> macros like
>> 
>>      qdict_put(dict, "name", qobject_ref(...))
>> 
>> qdict_put() wraps its last argument in QOBJECT(), and the last
>> argument here contains another QOBJECT().
>> 
>> Use dark preprocessor sorcery to make the macros that give us this
>> problem use different variable names on every call.
>
> Sounds foreboding; hopefully not many macros are affected...
>
>> 
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> ---
>>  include/qapi/qmp/qobject.h |  8 +++++---
>>  include/qemu/atomic.h      | 11 ++++++-----
>>  include/qemu/osdep.h       | 34 +++++++++++++++++++---------------
>>  3 files changed, 30 insertions(+), 23 deletions(-)
>
> ...okay, the size of the diffstat seems tolerable (good that we don't
> have many macros that expand to a temporary variable declaration and
> which are likely to be heavily reused from nested contexts).
>
>> diff --git a/include/qapi/qmp/qobject.h b/include/qapi/qmp/qobject.h
>> index 9003b71fd3..7b50fc905d 100644
>> --- a/include/qapi/qmp/qobject.h
>> +++ b/include/qapi/qmp/qobject.h
>> @@ -45,10 +45,12 @@ struct QObject {
>>      struct QObjectBase_ base;
>>  };
>>  
>> -#define QOBJECT(obj) ({                                         \
>> -    typeof(obj) _obj = (obj);                                   \
>> -    _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
>> +#define QOBJECT_INTERNAL(obj, l) ({                                     \
>> +    typeof(obj) PASTE(_obj, l) = (obj);                                 \
>> +    PASTE(_obj, l)                                                      \
>> +        ? container_of(&(PASTE(_obj, l))->base, QObject, base) : NULL;  \
>>  })
>> +#define QOBJECT(obj) QOBJECT_INTERNAL((obj), __COUNTER__)
>
> Slick!  Every call to QOBJECT() defines a unique temporary variable
> name.  But as written, QOBJECT(o) expands to this (when __COUNTER__ is
> 1):
>
> ({
>   typeof((o)) _obj1 = ((o));
>   _obj1 ? container_of(&(_obj1)->base, QObject, base) : NULL;
> })
>
> which has three sets of redundant parens that could be elided.  Why do
> you need to add () around obj when forwarding to QOBJECT_INTERNAL()?

Habit: enclose macro arguments in parenthesis unless there's a specific
need not to.

> The only way the expansion of the text passed through the 'obj'
> parameter can contain a comma is if the user has already parenthesized
> it on their end (not that I expect a comma expression to be a frequent
> argument to QOBJECT(), but who knows).  Arguing that it is to silence
> a syntax checker is weak; since we must NOT add parens around the
> parameters to QOBJECT_INTERNAL (calling PASTE((_obj), (l)) is
> obviously wrong).
>
> Meanwhile, the repetition of three calls to PASTE() is annoying.  How
> about:
>
> #define QOBJECT_INTERNAL_2(_obj, _tmp) ({ \
>   typeof _obj _tmp = _obj; \
>   _tmp ? container_of(&_tmp->base, QObject, base) : NULL; \
>   )}
> #define QOBJECT_INTERNAL_1(_arg, _tmp) QOBJECT_INTERNAL_2(_arg, _tmp)
> #define QOBJECT_INTERNAL(_arg, _ctr) \
>   QOBJECT_INTERNAL_1(_arg, PASTE(_obj, _ctr))
> #define QOBJECT(obj) QOBJECT_INTERNAL((obj), __COUNTER__)
>
> or:
>
> #define QOBJECT_INTERNAL_2(_obj, _tmp) ({ \
>   typeof(_obj) _tmp = (_obj); \
>   _tmp ? container_of(&_tmp->base, QObject, base) : NULL; \
>   )}
> #define QOBJECT_INTERNAL_1(_arg, _tmp) QOBJECT_INTERNAL_2(_arg, _tmp)
> #define QOBJECT_INTERNAL(_arg, _ctr) \
>   QOBJECT_INTERNAL_1(_arg, PASTE(_obj, _ctr))
> #define QOBJECT(obj) QOBJECT_INTERNAL(obj, __COUNTER__)
>
> where, in either case, QOBJECT(o) should then expand to
>
> ({
>   typeof (o) _obj1 = (o);
>   _obj1 ? container_of(&_obj1->base, QObject, base) : NULL;
> })

The idea is to have the innermost macro take the variable name instead
of the counter.  "PASTE(_obj, l)" then becomes "_tmp" there, which is
more legible.  However, we pay for it by going through two more macros.

Can you explain why you need two more?

Complication: the innermost macro needs to take all its variable names
as arguments.  The macro above has just one.  Macros below have two.

Not quite sure which version is easier to understand.

>>  /* Required for qobject_to() */
>>  #define QTYPE_CAST_TO_QNull     QTYPE_QNULL
>> diff --git a/include/qemu/atomic.h b/include/qemu/atomic.h
>> index d95612f7a0..3f80ffac69 100644
>> --- a/include/qemu/atomic.h
>> +++ b/include/qemu/atomic.h
>> @@ -157,13 +157,14 @@
>>      smp_read_barrier_depends();
>>  #endif
>>  
>> -#define qatomic_rcu_read(ptr)                          \
>> -    ({                                                 \
>> +#define qatomic_rcu_read_internal(ptr, l)               \
>> +    ({                                                  \
>>      qemu_build_assert(sizeof(*ptr) <= ATOMIC_REG_SIZE); \
>> -    typeof_strip_qual(*ptr) _val;                      \
>> -    qatomic_rcu_read__nocheck(ptr, &_val);             \
>> -    _val;                                              \
>> +    typeof_strip_qual(*ptr) PASTE(_val, l);             \
>> +    qatomic_rcu_read__nocheck(ptr, &PASTE(_val, l));    \
>> +    PASTE(_val, l);                                     \
>>      })
>> +#define qatomic_rcu_read(ptr) qatomic_rcu_read_internal((ptr), __COUNTER__)
>
> Same observation about being able to reduce the number of PASTE()
> calls by adding yet another layer of macro invocations.
>
>>  
>>  #define qatomic_rcu_set(ptr, i) do {                   \
>>      qemu_build_assert(sizeof(*ptr) <= ATOMIC_REG_SIZE); \
>> diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
>> index 21ef8f1699..9c191ebe99 100644
>> --- a/include/qemu/osdep.h
>> +++ b/include/qemu/osdep.h
>> @@ -371,18 +371,21 @@ void QEMU_ERROR("code path is reachable")
>>   * have to open-code it.  Sadly, Coverity is severely confused by the
>>   * constant variants, so we have to dumb things down there.
>>   */
>> +#define PASTE(a, b) a##b
>> +#define MIN_INTERNAL(a, b, l)                                           \
>> +    ({                                                                  \
>> +        typeof(1 ? (a) : (b)) PASTE(_a, l) = (a), PASTE(_b, l) = (b);   \
>> +        PASTE(_a, l) < PASTE(_b, l) ? PASTE(_a, l) : PASTE(_b, l);      \
>> +    })
>
> And again.
>
> I think you are definitely on the right track to have all internal
> variable declarations within a macro definition use multi-layered
> expansion with the help of __COUNTER__ to ensure that the macro's
> temporary variable is globally unique; so if you leave it as written,
> I could live with:
>
> Reviewed-by: Eric Blake <eblake@redhat.com>
>
> But if you respin it to pick up any of my suggestions, I'll definitely
> spend another review cycle on the result.
>
> If it helps, here's what I ended up using in nbdkit:
>
> https://gitlab.com/nbdkit/nbdkit/-/blame/master/common/include/unique-name.h#L36
> /* https://stackoverflow.com/a/1597129
>  * https://stackoverflow.com/a/12711226
>  */
> #define XXUNIQUE_NAME(name, counter) name ## counter
> #define XUNIQUE_NAME(name, counter) XXUNIQUE_NAME (name, counter)
> #define NBDKIT_UNIQUE_NAME(name) XUNIQUE_NAME (name, __COUNTER__)
>
> https://gitlab.com/nbdkit/nbdkit/-/blame/master/common/include/minmax.h#L47
> #include "unique-name.h"
>
> #undef MIN
> #define MIN(x, y) \
>   MIN_1 ((x), (y), NBDKIT_UNIQUE_NAME (_x), NBDKIT_UNIQUE_NAME (_y))
>
> ...
> #define MIN_1(x, y, _x, _y) ({                 \
>       __auto_type _x = (x);                    \
>       __auto_type _y = (y);                    \
>       _x < _y ? _x : _y;                       \
>     })

Thanks!



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 09:07:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 09:07:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594511.927852 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc07E-00036A-Kx; Fri, 01 Sep 2023 09:06:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594511.927852; Fri, 01 Sep 2023 09:06:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc07E-000363-GS; Fri, 01 Sep 2023 09:06:56 +0000
Received: by outflank-mailman (input) for mailman id 594511;
 Fri, 01 Sep 2023 09:06:55 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TF5h=ER=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qc07D-00035h-1a
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 09:06:55 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e423a147-48a6-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 11:06:52 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 463C04EE0737;
 Fri,  1 Sep 2023 11:06:51 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e423a147-48a6-11ee-9b0d-b553b5be7939
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>
Subject: [XEN PATCH 0/3] docs/misra: add documentation skeleton to address MISRA C:2012 Dir 4.1
Date: Fri,  1 Sep 2023 11:06:37 +0200
Message-Id: <cover.1693558913.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The headline of Directive 4.1 states: "Run-time failures shall be minimized".
Thus, it requires the project to supply documentation that pertains the measures
and techinques used to prevent run-time failures from happening. For ease of
reading, the documentation is in RST format, but since ECLAIR needs a source file
to check that the needed subsections and their format is the one expected, the
Makefiles for the docs/ are amended to generate such a file.

The format and categories of the subsections in the .rst file can be
customized based on feedback from the community: the one provided is just a
basic skeleton that should be tailored to the project.

This series is based on the following RFC:
https://lore.kernel.org/xen-devel/cover.1692636338.git.nicola.vetrini@bugseng.com/

Nicola Vetrini (3):
  docs/misra: add documentation skeleton for MISRA C:2012 Dir 4.1
  docs: make the docs for MISRA C:2012 Dir 4.1 visible to ECLAIR
  automation/eclair: build docs/misra to address MISRA C:2012 Dir 4.1

 automation/eclair_analysis/build.sh   |  11 +-
 automation/eclair_analysis/prepare.sh |   5 +-
 docs/Makefile                         |   7 +-
 docs/misra/C-runtime-failures.rst     | 239 ++++++++++++++++++++++++++
 docs/misra/Makefile                   |  17 ++
 docs/misra/rules.rst                  |   7 +-
 6 files changed, 279 insertions(+), 7 deletions(-)
 create mode 100644 docs/misra/C-runtime-failures.rst
 create mode 100644 docs/misra/Makefile

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 09:07:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 09:07:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594514.927870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc07F-0003ME-EV; Fri, 01 Sep 2023 09:06:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594514.927870; Fri, 01 Sep 2023 09:06:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc07F-0003IZ-8F; Fri, 01 Sep 2023 09:06:57 +0000
Received: by outflank-mailman (input) for mailman id 594514;
 Fri, 01 Sep 2023 09:06:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TF5h=ER=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qc07D-00035i-Qw
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 09:06:55 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e558a515-48a6-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 11:06:54 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id DA96A4EE073C;
 Fri,  1 Sep 2023 11:06:53 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e558a515-48a6-11ee-8783-cb3800f73035
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>
Subject: [XEN PATCH 3/3] automation/eclair: build docs/misra to address MISRA C:2012 Dir 4.1
Date: Fri,  1 Sep 2023 11:06:40 +0200
Message-Id: <ade1b214fc0e3a59c007ae2cdff78dc33b614c64.1693558913.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1693558913.git.nicola.vetrini@bugseng.com>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The documentation pertaining Directive 4.1 is contained in docs/misra.
The build script driving the analysis is amended to allow ECLAIR to
analyze such file.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 automation/eclair_analysis/build.sh   | 11 ++++++++---
 automation/eclair_analysis/prepare.sh |  5 +++--
 2 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/automation/eclair_analysis/build.sh b/automation/eclair_analysis/build.sh
index ec087dd822fa..556ed698bf8b 100755
--- a/automation/eclair_analysis/build.sh
+++ b/automation/eclair_analysis/build.sh
@@ -34,11 +34,16 @@ else
 fi
 
 (
-  cd xen
-
   make "-j${PROCESSORS}" "-l${PROCESSORS}.0"    \
        "CROSS_COMPILE=${CROSS_COMPILE}"         \
        "CC=${CROSS_COMPILE}gcc-12"              \
        "CXX=${CROSS_COMPILE}g++-12"             \
-       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"
+       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"     \
+       -C docs misra
+  make "-j${PROCESSORS}" "-l${PROCESSORS}.0"    \
+       "CROSS_COMPILE=${CROSS_COMPILE}"         \
+       "CC=${CROSS_COMPILE}gcc-12"              \
+       "CXX=${CROSS_COMPILE}g++-12"             \
+       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"     \
+			 -C xen
 )
diff --git a/automation/eclair_analysis/prepare.sh b/automation/eclair_analysis/prepare.sh
index 275a1a3f517c..452e309b658b 100755
--- a/automation/eclair_analysis/prepare.sh
+++ b/automation/eclair_analysis/prepare.sh
@@ -35,8 +35,9 @@ else
 fi
 
 (
-    cd xen
-    cp "${CONFIG_FILE}" .config
+    ./configure
+    cp "${CONFIG_FILE}" xen/.config
     make clean
+    cd xen
     make -f ${script_dir}/Makefile.prepare prepare
 )
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 09:07:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 09:07:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594513.927863 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc07F-0003Fj-6x; Fri, 01 Sep 2023 09:06:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594513.927863; Fri, 01 Sep 2023 09:06:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc07E-0003Dn-VU; Fri, 01 Sep 2023 09:06:56 +0000
Received: by outflank-mailman (input) for mailman id 594513;
 Fri, 01 Sep 2023 09:06:55 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TF5h=ER=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qc07D-00035h-M1
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 09:06:55 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e4f9913a-48a6-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 11:06:54 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 12DB94EE073A;
 Fri,  1 Sep 2023 11:06:53 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e4f9913a-48a6-11ee-9b0d-b553b5be7939
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>
Subject: [XEN PATCH 2/3] docs: make the docs for MISRA C:2012 Dir 4.1 visible to ECLAIR
Date: Fri,  1 Sep 2023 11:06:39 +0200
Message-Id: <bf38efce3ac551fc95eaf1935ce7f574a7804df2.1693558913.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1693558913.git.nicola.vetrini@bugseng.com>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

To be able to check for the existence of the necessary subsections in
the documentation for MISRA C:2012 Dir 4.1, ECLAIR needs to have a source
file that is built.

This file is generated from 'C-runtime-failures.rst' in docs/misra
and the configuration is updated accordingly.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes from RFC:
- Dropped unused/useless code
- Revised the sed command
- Revised the clean target
---
 docs/Makefile       |  7 ++++++-
 docs/misra/Makefile | 17 +++++++++++++++++
 2 files changed, 23 insertions(+), 1 deletion(-)
 create mode 100644 docs/misra/Makefile

diff --git a/docs/Makefile b/docs/Makefile
index 966a104490ac..ff991a0c3ca2 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -43,7 +43,7 @@ DOC_PDF  := $(patsubst %.pandoc,pdf/%.pdf,$(PANDOCSRC-y)) \
 all: build
 
 .PHONY: build
-build: html txt pdf man-pages figs
+build: html txt pdf man-pages figs misra
 
 .PHONY: sphinx-html
 sphinx-html:
@@ -66,9 +66,14 @@ endif
 .PHONY: pdf
 pdf: $(DOC_PDF)
 
+.PHONY: misra
+misra:
+	$(MAKE) -C misra
+
 .PHONY: clean
 clean: clean-man-pages
 	$(MAKE) -C figs clean
+	$(MAKE) -C misra clean
 	rm -rf .word_count *.aux *.dvi *.bbl *.blg *.glo *.idx *~
 	rm -rf *.ilg *.log *.ind *.toc *.bak *.tmp core
 	rm -rf html txt pdf sphinx/html
diff --git a/docs/misra/Makefile b/docs/misra/Makefile
new file mode 100644
index 000000000000..8ea0505c8a20
--- /dev/null
+++ b/docs/misra/Makefile
@@ -0,0 +1,17 @@
+TARGETS := C-runtime-failures.o
+
+all: $(TARGETS)
+
+# sed is used in place of cat to prevent occurrences of '*/'
+# in the .rst from breaking the compilation
+$(TARGETS:.o=.c): %.c: %.rst
+	echo "/*\n" > $@.tmp
+	sed -e 's|\*/|*//*|g' $< >> $@.tmp
+	echo "\n*/" >> $@.tmp
+	mv $@.tmp $@
+
+%.o: %.c
+	$(CC) -c $< -o $@
+
+clean:
+	rm -f C-runtime-failures.c *.o *.tmp
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 09:07:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 09:07:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594512.927857 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc07E-00039Y-S2; Fri, 01 Sep 2023 09:06:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594512.927857; Fri, 01 Sep 2023 09:06:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc07E-00038G-Ne; Fri, 01 Sep 2023 09:06:56 +0000
Received: by outflank-mailman (input) for mailman id 594512;
 Fri, 01 Sep 2023 09:06:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TF5h=ER=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qc07D-00035i-6Z
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 09:06:55 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e47feb97-48a6-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 11:06:53 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 4AF864EE0739;
 Fri,  1 Sep 2023 11:06:52 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e47feb97-48a6-11ee-8783-cb3800f73035
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 1/3] docs/misra: add documentation skeleton for MISRA C:2012 Dir 4.1
Date: Fri,  1 Sep 2023 11:06:38 +0200
Message-Id: <e74433904abe30e2e9e030f663a7a87813dabd24.1693558913.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1693558913.git.nicola.vetrini@bugseng.com>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The aforementioned directive requires the project to supply documentation
on the measures taken towards the minimization of run-time failures.

The actual content of the documentation is yet to be written.

The 'rules.rst' file is updated accordingly to mention the newly
added documentation.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 docs/misra/C-runtime-failures.rst | 239 ++++++++++++++++++++++++++++++
 docs/misra/rules.rst              |   7 +-
 2 files changed, 245 insertions(+), 1 deletion(-)
 create mode 100644 docs/misra/C-runtime-failures.rst

diff --git a/docs/misra/C-runtime-failures.rst b/docs/misra/C-runtime-failures.rst
new file mode 100644
index 000000000000..0d8d5adce231
--- /dev/null
+++ b/docs/misra/C-runtime-failures.rst
@@ -0,0 +1,239 @@
+===================================================================
+Measures taken towards the minimization of Run-time failures in Xen
+===================================================================
+
+This document specifies which procedures and techinques are used troughout the
+Xen codebase to prevent or minimize the impact of certain classes of run-time
+errors that can occurr in the execution of a C program, due to the very minimal
+built-in checks that are present in the language.
+
+The presence of such documentation is requested by MISRA C:2012 Directive 4.1,
+whose headline states: "Run-time failures shall be minimized".
+
+
+Documentation for MISRA C:2012 Dir 4.1: overflow
+________________________________________________
+
+To be written.
+Example: Pervasive use of assertions and extensive test suite.
+
+
+Documentation for MISRA C:2012 Dir 4.1: unexpected wrapping
+___________________________________________________________
+
+To be written.
+Example: The only wrapping the is present in the code concerns
+unsigned integers and they are all expected.
+
+
+Documentation for MISRA C:2012 Dir 4.1: invalid shift
+_____________________________________________________
+
+To be written.
+Example: Pervasive use of assertions and extensive test suite.
+
+
+Documentation for MISRA C:2012 Dir 4.1: division/remainder by zero
+__________________________________________________________________
+
+To be written.
+Example:
+There division or remainder operations in the project code ensure that
+their second argument is never zero.
+
+
+Documentation for MISRA C:2012 Dir 4.1: unsequenced side effects
+________________________________________________________________
+
+To be written.
+Example:
+No function in this project is meant to be executed from interrupt handlers
+or in multi-threading environments.
+
+
+Documentation for MISRA C:2012 Dir 4.1: read from uninitialized automatic object
+________________________________________________________________________________
+
+To be written.
+Example:
+Automatic variables are used to store temporary parameters and they
+are always initialized to either a default value or a proper value
+before usage.
+
+
+Documentation for MISRA C:2012 Dir 4.1: read from uninitialized allocated object
+________________________________________________________________________________
+
+To be written.
+Example:
+The code does not use dynamically allocated storage.
+
+
+Documentation for MISRA C:2012 Dir 4.1: write to string literal or const object
+_______________________________________________________________________________
+
+To be written.
+Example:
+The toolchain puts every string literal and const object into a read-only
+section of memory.  The hardware exception raised when a write is attempted
+on such a memory section is correctly handled.
+
+
+Documentation for MISRA C:2012 Dir 4.1: non-volatile access to volatile object
+______________________________________________________________________________
+
+To be written.
+Example:
+Volatile access is limited to registers that are always accessed
+through macros or inline functions.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access to dead allocated object
+_______________________________________________________________________
+
+To be written.
+Example:
+The code does not use dynamically allocated storage.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access to dead automatic object
+_______________________________________________________________________
+
+To be written.
+Example:
+Pointers to automatic variables are never returned, nor stored in
+wider-scoped objects.  No function does the same on any pointer
+received as a parameter.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access to dead thread object
+____________________________________________________________________
+
+To be written.
+Example:
+The program does not use per-thread variables.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access using null pointer
+_________________________________________________________________
+
+To be written.
+Example:
+All possibly null pointers are checked before access.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access using invalid pointer
+____________________________________________________________________
+
+To be written.
+Example:
+Usage of pointers is limited.  Pointers passed as parameters are
+always checked for validity.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access using out-of-bounds pointer
+__________________________________________________________________________
+
+To be written.
+Example:
+Pointers are never uses to access arrays: indices are always used
+instead.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access using unaligned pointer
+______________________________________________________________________
+
+To be written.
+Example:
+Pointer conversion that may result in unaligned pointers are never used.
+
+
+Documentation for MISRA C:2012 Dir 4.1: mistyped access to object
+_________________________________________________________________
+
+To be written.
+Example:
+Pointer conversions that may result in mistyped accesses to objects
+are never used.
+
+
+Documentation for MISRA C:2012 Dir 4.1: mistyped access to function
+___________________________________________________________________
+
+To be written.
+Example:
+The code never uses function pointers.
+
+
+Documentation for MISRA C:2012 Dir 4.1: invalid pointer arithmetic
+__________________________________________________________________
+
+To be written.
+Example:
+Pointer arithmetic is never used.
+
+
+Documentation for MISRA C:2012 Dir 4.1: invalid pointer comparison
+__________________________________________________________________
+
+To be written.
+Example:
+Arrays are always accessed using indices instead of pointers.  Pointers
+are only compared to NULL.
+
+
+Documentation for MISRA C:2012 Dir 4.1: overlapping copy
+________________________________________________________
+
+To be written.
+Example:
+The code never uses memcpy() and does not perform assignment of
+overlapping objects (which is doable only via pointers).
+
+
+Documentation for MISRA C:2012 Dir 4.1: invalid arguments to function
+_____________________________________________________________________
+
+To be written.
+Example:
+All parameters to functions are checked for validity.
+
+
+Documentation for MISRA C:2012 Dir 4.1: returned function error
+_______________________________________________________________
+
+To be written.
+Example:
+All functions that may produce an error, do returns a suitable status code
+that is checked at each call site.
+
+
+Documentation for MISRA C:2012 Dir 4.1: tainted input
+_____________________________________________________
+
+To be written.
+Example:
+All parameters of all functions in the API are checked before being used.
+
+
+Documentation for MISRA C:2012 Dir 4.1: data race
+_________________________________________________
+
+To be written.
+Example:
+No function in this code is meant to be executed from interrupt handlers or
+in a multi-threading environment.
+
+
+Documentation for MISRA C:2012 Dir 4.1: invariant violation
+___________________________________________________________
+
+To be written.
+
+
+Documentation for MISRA C:2012 Dir 4.1: communication error
+___________________________________________________________
+
+To be written.
+Example:
+This project does not involve any external communication.
diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index 34916e266aa5..84bb57c8e908 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -47,7 +47,12 @@ maintainers if you want to suggest a change.
    * - `Dir 2.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_02_01.c>`_
      - Required
      - All source files shall compile without any compilation errors
-     -
+
+   * - `Dir 4.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_01.c>`_
+     - Required
+     - Run-time failures shall be minimized
+     - The strategies adopted by Xen to prevent certain classes of runtime
+       failures will be documented by `C-runtime-failures.rst <docs/misra/C-runtime-failures.rst>`_
 
    * - `Dir 4.7 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_07.c>`_
      - Required
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 09:13:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 09:13:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594545.927895 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc0DJ-0006dn-AW; Fri, 01 Sep 2023 09:13:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594545.927895; Fri, 01 Sep 2023 09:13:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc0DJ-0006dg-7h; Fri, 01 Sep 2023 09:13:13 +0000
Received: by outflank-mailman (input) for mailman id 594545;
 Fri, 01 Sep 2023 09:13:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TF5h=ER=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qc0DI-0006da-2N
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 09:13:12 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c523b2a0-48a7-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 11:13:10 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 80EA14EE0737;
 Fri,  1 Sep 2023 11:13:09 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c523b2a0-48a7-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Fri, 01 Sep 2023 11:13:09 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, Julien Grall
 <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, Paul Durrant <paul@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH] ioreq: include arch-specific ioreq header in
 <xen/ioreq.h>
In-Reply-To: <15eef072-d7a5-23a9-a7de-3c16fea49dd9@suse.com>
References: <e5f13920dfcb9f828abb4a36dd410d342f4c0939.1692974235.git.nicola.vetrini@bugseng.com>
 <73a78132-a086-5ae1-2617-fb38c51e64e5@suse.com>
 <f96865f3d7a47e4d9d52ee13dea064e3@bugseng.com>
 <15eef072-d7a5-23a9-a7de-3c16fea49dd9@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <cf5f8c126cc6bb5564ac4cf214055df2@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 01/09/2023 09:36, Jan Beulich wrote:
> On 01.09.2023 09:13, Nicola Vetrini wrote:
>> On 28/08/2023 09:59, Jan Beulich wrote:
>>> On 25.08.2023 17:02, Nicola Vetrini wrote:
>>>> The common header file for ioreq should include the arch-specific 
>>>> one.
>>> 
>>> To be honest I'm not convinced of "should" here. There are two 
>>> aspects
>>> to consider: On one hand it is good practice to do what you say. Otoh
>>> it
>>> introduces a needless dependency, and it'll require new arch-es
>>> (RISC-V,
>>> PPC at present) to introduce another dummy header just to satisfy the
>>> xen/ioreq.h use in common/memory.c. Therefore, _if_ we want to go 
>>> this
>>> route, besides a wording change here I think ...
>>> 
>> 
>> Since including both <xen/ioreq.h> and the arch-specific one was
>> requested to be changed
>> in previous series, I was trying to apply the same pattern here.
>> If you prefer not to change the current layout then the fix is even
>> simpler: I'll just
>> include <asm/ioreq.h> in xen/arch/arm/ioreq.c, which is where it's
>> missing.
>> 
>>>> --- a/xen/include/xen/ioreq.h
>>>> +++ b/xen/include/xen/ioreq.h
>>>> @@ -20,6 +20,7 @@
>>>>  #define __XEN_IOREQ_H__
>>>> 
>>>>  #include <xen/sched.h>
>>>> +#include <asm/ioreq.h>
>>> 
>>> ... this #include wants to be conditional upon CONFIG_IOREQ_SERVER
>>> being
>>> defined. (I'm actually surprised that there's no respective #ifdef in
>>> that header, meaning types defined there are available even when the
>>> functionality was turned off.)
>> 
>> The two functions in question are actually guarded by an #ifdef
>> CONFIG_IOREQ_SERVER
>> in arch/arm/include/asm/ioreq.h (in the #else branch some stubs are
>> defined)
> 
> Well, I don't see how an #ifdef there helps with the aspect mentioned
> earlier (new arch-es needing to needlessly provide such a header as 
> long
> as the #include here is unconditional).
> 

As far as I can tell, including the asm header in the arm implementation 
file does not imply
that new archs will need such an header. Of course, if the solution 
proposed in the patch is
chosen then I agree with you.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 09:45:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 09:45:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594555.927907 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc0iA-0002GF-Lx; Fri, 01 Sep 2023 09:45:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594555.927907; Fri, 01 Sep 2023 09:45:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc0iA-0002G8-Ix; Fri, 01 Sep 2023 09:45:06 +0000
Received: by outflank-mailman (input) for mailman id 594555;
 Fri, 01 Sep 2023 09:45:04 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=cwX6=ER=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qc0i8-0002G2-M0
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 09:45:04 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20600.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3912ac35-48ac-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 11:45:03 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7984.eurprd04.prod.outlook.com (2603:10a6:102:ce::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.23; Fri, 1 Sep
 2023 09:45:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.021; Fri, 1 Sep 2023
 09:45:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3912ac35-48ac-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=i5WZhQTHKDrn6cJdVEy46adQGfa4P4QZB282OHT4RUAOxqGku6PbhQpJAXof+9EewDChaB/WQZLOgN7/2QZ4CzG+R+qHLVsaGdce4PArhWT24AgcBEO3cm4wjlwpn1rItxPcJQLf2C8YXIVvzh9+d8B6sbBvTjXl4EfYTpkaZTek2Dyf2X5b7Rd1cSU5hXvuUqDUBR31Iz83USZHn1OBoxOdLFPnQlptVzpTi4LAWsSe+dbYMGwh6RppdLj4UccCDrbh+POj8O9i3YyC/+y4xRsPBkRCokpvJuY20bqFaH8NZdY6YKLKBI7z5+O5M/LDUssX79UdlWTwdy4zWNrLjA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dPYjQh/I6+2PLd0nv5uoFusxETAxD7M0FSb7FeBXW+Y=;
 b=VMig4RijfPEH+c1si/o+pSUWtCyG5p32txytt4qj0/EsCgeEufZLqqoJK7ykSfsOwOfx7LVNSY/BgIfiXA7crrru6td20tlB+Si9KNNcQBzovaYRTt6kOnmlFY32WlbaoV4yTJ+VuChkHoPlo6UL311SAUwpZhyzEzBT76mGrFMlg41DibuT0cdFxQ4MBnGVKnS4V1JHzLx09w7Lx43Ll1j80LeVCVgNJ6h29XjiGRPFJQ5cNTNi5pr8XV2UkKvZf03q5vtT2lUGnS5zaVG+7cTiRhVGZNyQfoYI28cnwFZ4G568VOrYRKg3ANui/mqOiM9AGF2gclYGva+9P8Z6MA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dPYjQh/I6+2PLd0nv5uoFusxETAxD7M0FSb7FeBXW+Y=;
 b=AYGtgLS5boHfPBzkkNWJrlc5exB6GC45W2nNbvyMAKhGhRDcNG4qfTB6aGb5GWwh438m9BMhNsPsz118AZrMiMCobU4mGl9CtPSndLPcgETkwAAKr3ulsq59laTYy5hrEKPJ8yfAYqib/izSnH1f856EI0t7+uqSNGIIvGCG8igrHy/63nPFi1VqVK3LmCqRh7PruJFKR0nT4cvyQ6VOz+yvtNfQmUKCT/3KdSpcHVuGzVVN2kNk+YrNtFJTsbOhCHirK1/+YVrd5ys6LG0Ky17AR/0qM+6KRc93wa21wk3saxm7UpHC6aXAOscA9IRThR4RAnASBg5u6MNqUjRy7g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9de603f5-d7f9-495d-6f4a-2effe9db901d@suse.com>
Date: Fri, 1 Sep 2023 11:44:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [XEN PATCH] ioreq: include arch-specific ioreq header in
 <xen/ioreq.h>
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Julien Grall <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Paul Durrant <paul@xen.org>,
 xen-devel@lists.xenproject.org
References: <e5f13920dfcb9f828abb4a36dd410d342f4c0939.1692974235.git.nicola.vetrini@bugseng.com>
 <73a78132-a086-5ae1-2617-fb38c51e64e5@suse.com>
 <f96865f3d7a47e4d9d52ee13dea064e3@bugseng.com>
 <15eef072-d7a5-23a9-a7de-3c16fea49dd9@suse.com>
 <cf5f8c126cc6bb5564ac4cf214055df2@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cf5f8c126cc6bb5564ac4cf214055df2@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0170.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:99::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB7984:EE_
X-MS-Office365-Filtering-Correlation-Id: 8ab915b7-daad-4b13-fa91-08dbaad01bc2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KXI+pKdRkg5hCX+Na57YQb0EzOLGtZvZE7opslKVgmJPrhWRBMh803oQNls/5tVNwhWKgVoZpgWiYtiiSSjrABJap4KoKJRtPfR8GEvLXsmTc9DPogNOXwPnSA5Sz5Wd53ylElQU0/XpJA2/0gLTav67fcpwV660xDOLu1Dz+EjPgaEuTiDmmc3GKSPXmlfGHGdsGUeJNEWtMISvp/nF5PJeNOLWWVYAjUod6DW4lZZlrE4NXvl73w9mTy/Bd453ng7qbSlWIetfdT1rytJz8j8wJYqdsk5zlb3xPIBkLyhqtWpOdFBz4jd6zc8jNqNSH/AlavgHq4+c54Yw/+aMtVAXP7CyC/ygWAlzq1wHRDT2R7SzgA9Plppl9edUEURiecItP0LnDExQqWN6Wi5CE9YTUD5Loe06n5VrmYpPlSaL6+dMktEGoePBpyEBQExgYURHD3YtC8vS5TpMuMNd+xZhHLX4CjUoDl9/f6CKg0McGHngoLf6dYYKR9yZrKDtvSjLvXGhkx5IRpL6n1STpo/g3oqTAdpY4sxlSYh7BQ+hcZ3flCvfL0TmBuWWQnovtgwwdtN7xy1jeKMmheIaBpbleFn2mXlxHo8izNYqkGA/P/uESAvbyjnzR/PgnviEmvW7Hnc8t39ovtByxhVErQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(136003)(346002)(376002)(39860400002)(451199024)(186009)(1800799009)(6486002)(6506007)(6666004)(6512007)(53546011)(478600001)(83380400001)(2616005)(26005)(2906002)(7416002)(66556008)(6916009)(54906003)(66476007)(316002)(41300700001)(66946007)(5660300002)(8936002)(8676002)(4326008)(36756003)(31696002)(86362001)(38100700002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZlVyZTJKdi9VT2VVT2FHK2lCN3hRV0Q1UEQzbndiUk5WVmhENUNTcWd4WHJP?=
 =?utf-8?B?aDVZRkMxNGpRWHI4MHUwb0pib1F1Z3JyZlVDT0hFd1Ryc0h6TjlPd2RTMkZl?=
 =?utf-8?B?SU1nMGszVDJNazJ6UWFHb1F3YWJla0h2alJKa2xIRXhTakh5WUROOE9sRGZN?=
 =?utf-8?B?M01sQ3U1RHB2L3NDNDJkY0ZxTjM1elpsNWl1MUdnaVdXeVdESGpDOUFqcFN1?=
 =?utf-8?B?RkpIUjlsTUovRnFwSDFWczNXZnpIbWVjcTczN0NQd00yWUYvdHo2SExISkg1?=
 =?utf-8?B?b3FxRTVBYU1JbENUZTVKUXY0Y3lFT2ZxbDl0aFNaZVZTN3I1VmMwV1NYc3I2?=
 =?utf-8?B?aWMvaFl5a1JPQUp3RVpxYnNWQUwvNW1SUUM3RWxqcUZCSWRQanl0MmIwUFZt?=
 =?utf-8?B?NExHWjdHcHBOVDZvTkpTR0Vlc3hRK0JGU3ZMaVZLNlRYSmh0RHA2SDNZWlFi?=
 =?utf-8?B?TzJwMXlSM0s1ZDhoNi9lSVBzeTdrdWU3VWo5dG8vWlVuTmc0U2hzT3hqZ3RN?=
 =?utf-8?B?TXRCeVJXRXovUGNwMnM0OUx5Tk1DUHF2b09zQ1BqTWR3OHJ0NzZ0UGdFc0p3?=
 =?utf-8?B?MjNDNmlzVTJRV2xSMndnMVZaUHhuUytiRzJSZjJ0US9vRTFBMTBSOWVyVFhr?=
 =?utf-8?B?Q0cycTZ4Tm5OWi90bEI4dzZkbFI3NHJxc09QTER0dnVoMzhuOTVVUlpxc3E4?=
 =?utf-8?B?RXVsNjVwTy9KZytMOEpwdENiRzZkaGpqcXF4d2pIcnJHa084Mmh2bnNobFNB?=
 =?utf-8?B?R1JIWEloL243blpyODlteTNZQkhValdWN2FIb3BMK2JqREsvNUs1YW1GTUlS?=
 =?utf-8?B?MXF1MDViQTU0UTByZEhlZHFLZ0hNM1lwSkpKOVR2d3ZLeGZwUlNFNGtoMnVX?=
 =?utf-8?B?OWtvZkdNZUNGbVZxSkhkWk05T0dobVNvQnpaOWlHTThaQjNTZ29pNnRkMjZD?=
 =?utf-8?B?ZjZ2a1VnekhWamZKOU9NNzQvalpGU2FXSk5NVkdZQ1NyTXI3ZVpFcDdrdkFP?=
 =?utf-8?B?OHJVaXRCRHBqNkgwUVRxVktia2ZSQjJQLy9CSXFQN01CRkxpWFAxUlNaYkJE?=
 =?utf-8?B?Y0U5RUZUT3NiRzc1SlN2YysrbWNSZ2tobFZCVHJnQitkR3lKUC9UelhYakpx?=
 =?utf-8?B?Z2NTemI5YVcwSTNhTUQxYW9NWEtSRk9LRzFhdno2QWJaTTB1SVJaWlFjL0RM?=
 =?utf-8?B?Vi9qZWV2Y0I0cXpKclladnJrS3FIUDBKRXQ2bUs0NUN0S3pvNDhRQ2UzcHhH?=
 =?utf-8?B?dDkvT3JKc3dCSkNTd3FyT3pYSFlsdzR4RFYxQysvTHNoanpGRUwvbW1ZdlEx?=
 =?utf-8?B?blNaUlRLbFFtaGlwZ2JvWExoWG9pcTU1Zk5PVWVacHF1bnI1MEJEcjhzTDdB?=
 =?utf-8?B?ejI3ZFAvcEIrTXlaY0FwMGZzay9aMldMQ0N6UnpJODRwdFI0MDhobGF2TzV6?=
 =?utf-8?B?NnExNlVvamMxWlpZclhRb3gxWVdoTjJpRWpuWUJtcjliWjZRL0k1cndmUyth?=
 =?utf-8?B?L2tyMklTQXJzQVREMjlOcjZNbFhwYVViWGs2anAvZjF2YU5KL3h2dWpHUlgv?=
 =?utf-8?B?ajhxbmJqN2VFNHpieHAwUWF5aVlBdTJnNm5uREQrU3I5bVZSYzF6OWFGMjhs?=
 =?utf-8?B?TTU2b3d4NW5lVTlnUWtLcUtUT2NuRzc0Mm5Xa042NGhBdTdEQTdOWk9uU0Fu?=
 =?utf-8?B?VGpjc1lZay9UMm9sdS9UWHZjbEVWUzE1RzlSNS9WbGY0ckVGUEVLbmoxb0ZM?=
 =?utf-8?B?SkRad2ZzOTFwZm0xaTZ5dmxvRXBlaWhZYVFEam9xcjFwQkdwUmVqV3EwRUNR?=
 =?utf-8?B?cEUwc1FzTGFmSy9EY3JJR3grdUJJSUtIZkN2UXN4a3lHRjlybVl0OEtxaHhB?=
 =?utf-8?B?QmJ1d2h3R3AzQUx3K25UMG15TTVmN1BtS0xUV0NzYXdmUk8vcmZkTStVaC96?=
 =?utf-8?B?QVBvOVhzTnhtVStsaXVJaWdzSFF0VGtVeURpZzlWMVNmUEJpQUNMYWs0NDZD?=
 =?utf-8?B?TU9wYWRzNU5YL2VEUnR5bjZwSDhiMkl4cFFaeVFML0ptNi9aRHEvc0YzRndy?=
 =?utf-8?B?bmtKbWRNVjFPV3ZuNi9xbjg1WFl3Ly9XUytxN2F0WFFEcEVtMWtOUVRXcFNK?=
 =?utf-8?Q?17iKr9cdSQL5aqj9z1EfRJn6o?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8ab915b7-daad-4b13-fa91-08dbaad01bc2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2023 09:45:00.0927
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 6VGPlFuBi8jpG0sk10Y/uIk6Z25yqaIJ9+iHA5PZyvk4iWVgQd35+8mC8fjcQtcqURG+UDx9QrIy6k7QKZF6oA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7984

On 01.09.2023 11:13, Nicola Vetrini wrote:
> On 01/09/2023 09:36, Jan Beulich wrote:
>> On 01.09.2023 09:13, Nicola Vetrini wrote:
>>> On 28/08/2023 09:59, Jan Beulich wrote:
>>>> On 25.08.2023 17:02, Nicola Vetrini wrote:
>>>>> The common header file for ioreq should include the arch-specific 
>>>>> one.
>>>>
>>>> To be honest I'm not convinced of "should" here. There are two 
>>>> aspects
>>>> to consider: On one hand it is good practice to do what you say. Otoh
>>>> it
>>>> introduces a needless dependency, and it'll require new arch-es
>>>> (RISC-V,
>>>> PPC at present) to introduce another dummy header just to satisfy the
>>>> xen/ioreq.h use in common/memory.c. Therefore, _if_ we want to go 
>>>> this
>>>> route, besides a wording change here I think ...
>>>>
>>>
>>> Since including both <xen/ioreq.h> and the arch-specific one was
>>> requested to be changed
>>> in previous series, I was trying to apply the same pattern here.
>>> If you prefer not to change the current layout then the fix is even
>>> simpler: I'll just
>>> include <asm/ioreq.h> in xen/arch/arm/ioreq.c, which is where it's
>>> missing.
>>>
>>>>> --- a/xen/include/xen/ioreq.h
>>>>> +++ b/xen/include/xen/ioreq.h
>>>>> @@ -20,6 +20,7 @@
>>>>>  #define __XEN_IOREQ_H__
>>>>>
>>>>>  #include <xen/sched.h>
>>>>> +#include <asm/ioreq.h>
>>>>
>>>> ... this #include wants to be conditional upon CONFIG_IOREQ_SERVER
>>>> being
>>>> defined. (I'm actually surprised that there's no respective #ifdef in
>>>> that header, meaning types defined there are available even when the
>>>> functionality was turned off.)
>>>
>>> The two functions in question are actually guarded by an #ifdef
>>> CONFIG_IOREQ_SERVER
>>> in arch/arm/include/asm/ioreq.h (in the #else branch some stubs are
>>> defined)
>>
>> Well, I don't see how an #ifdef there helps with the aspect mentioned
>> earlier (new arch-es needing to needlessly provide such a header as 
>> long
>> as the #include here is unconditional).
> 
> As far as I can tell, including the asm header in the arm implementation 
> file does not imply
> that new archs will need such an header. Of course, if the solution 
> proposed in the patch is
> chosen then I agree with you.

Hmm, maybe then I misunderstood your earlier reply: I thought you were
arguing against the change I had suggested.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 09:52:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 09:52:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594562.927917 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc0pB-0003sl-C6; Fri, 01 Sep 2023 09:52:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594562.927917; Fri, 01 Sep 2023 09:52:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc0pB-0003se-9I; Fri, 01 Sep 2023 09:52:21 +0000
Received: by outflank-mailman (input) for mailman id 594562;
 Fri, 01 Sep 2023 09:52:20 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TF5h=ER=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qc0pA-0003sY-6C
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 09:52:20 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3ba4d6ea-48ad-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 11:52:16 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 005044EE0737;
 Fri,  1 Sep 2023 11:52:15 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3ba4d6ea-48ad-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Fri, 01 Sep 2023 11:52:15 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, Julien Grall
 <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, Paul Durrant <paul@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH] ioreq: include arch-specific ioreq header in
 <xen/ioreq.h>
In-Reply-To: <9de603f5-d7f9-495d-6f4a-2effe9db901d@suse.com>
References: <e5f13920dfcb9f828abb4a36dd410d342f4c0939.1692974235.git.nicola.vetrini@bugseng.com>
 <73a78132-a086-5ae1-2617-fb38c51e64e5@suse.com>
 <f96865f3d7a47e4d9d52ee13dea064e3@bugseng.com>
 <15eef072-d7a5-23a9-a7de-3c16fea49dd9@suse.com>
 <cf5f8c126cc6bb5564ac4cf214055df2@bugseng.com>
 <9de603f5-d7f9-495d-6f4a-2effe9db901d@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <b6eb4f217aff3c0cce6c3c4f894ddfe8@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 01/09/2023 11:44, Jan Beulich wrote:
> On 01.09.2023 11:13, Nicola Vetrini wrote:
>> On 01/09/2023 09:36, Jan Beulich wrote:
>>> On 01.09.2023 09:13, Nicola Vetrini wrote:
>>>> On 28/08/2023 09:59, Jan Beulich wrote:
>>>>> On 25.08.2023 17:02, Nicola Vetrini wrote:
>>>>>> The common header file for ioreq should include the arch-specific
>>>>>> one.
>>>>> 
>>>>> To be honest I'm not convinced of "should" here. There are two
>>>>> aspects
>>>>> to consider: On one hand it is good practice to do what you say. 
>>>>> Otoh
>>>>> it
>>>>> introduces a needless dependency, and it'll require new arch-es
>>>>> (RISC-V,
>>>>> PPC at present) to introduce another dummy header just to satisfy 
>>>>> the
>>>>> xen/ioreq.h use in common/memory.c. Therefore, _if_ we want to go
>>>>> this
>>>>> route, besides a wording change here I think ...
>>>>> 
>>>> 
>>>> Since including both <xen/ioreq.h> and the arch-specific one was
>>>> requested to be changed
>>>> in previous series, I was trying to apply the same pattern here.
>>>> If you prefer not to change the current layout then the fix is even
>>>> simpler: I'll just
>>>> include <asm/ioreq.h> in xen/arch/arm/ioreq.c, which is where it's
>>>> missing.
>>>> 
>>>>>> --- a/xen/include/xen/ioreq.h
>>>>>> +++ b/xen/include/xen/ioreq.h
>>>>>> @@ -20,6 +20,7 @@
>>>>>>  #define __XEN_IOREQ_H__
>>>>>> 
>>>>>>  #include <xen/sched.h>
>>>>>> +#include <asm/ioreq.h>
>>>>> 
>>>>> ... this #include wants to be conditional upon CONFIG_IOREQ_SERVER
>>>>> being
>>>>> defined. (I'm actually surprised that there's no respective #ifdef 
>>>>> in
>>>>> that header, meaning types defined there are available even when 
>>>>> the
>>>>> functionality was turned off.)
>>>> 
>>>> The two functions in question are actually guarded by an #ifdef
>>>> CONFIG_IOREQ_SERVER
>>>> in arch/arm/include/asm/ioreq.h (in the #else branch some stubs are
>>>> defined)
>>> 
>>> Well, I don't see how an #ifdef there helps with the aspect mentioned
>>> earlier (new arch-es needing to needlessly provide such a header as
>>> long
>>> as the #include here is unconditional).
>> 
>> As far as I can tell, including the asm header in the arm 
>> implementation
>> file does not imply
>> that new archs will need such an header. Of course, if the solution
>> proposed in the patch is
>> chosen then I agree with you.
> 
> Hmm, maybe then I misunderstood your earlier reply: I thought you were
> arguing against the change I had suggested.
> 

I'm fine with either way, but since the one proposed in the patch may 
result in an inconvenience
for other architectures, then perhaps the other is better.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 11:24:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 11:24:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594575.927934 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc2GV-0005EN-QH; Fri, 01 Sep 2023 11:24:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594575.927934; Fri, 01 Sep 2023 11:24:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc2GV-0005EG-N6; Fri, 01 Sep 2023 11:24:39 +0000
Received: by outflank-mailman (input) for mailman id 594575;
 Fri, 01 Sep 2023 11:24:38 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qc2GU-0005E6-2Y; Fri, 01 Sep 2023 11:24:38 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qc2GT-00060J-RW; Fri, 01 Sep 2023 11:24:37 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qc2GT-0005sX-H8; Fri, 01 Sep 2023 11:24:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qc2GT-0004bQ-Gi; Fri, 01 Sep 2023 11:24:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=nFyYZWE3P8rTb8UkdCjMyXEHauo9HBScdTCFcVsdGug=; b=ZQbaIIPvg2Pm8d8NjHijg7dOFT
	7Lve3sNMggVg1qQw9BAMF4ixTOnUsMtQ5/gjpN1gmVK87We5itY3a7AwhoQ0AEIWV/JJW5osAlwBC
	6h7gNUxdrHf2o/rFKIu6Xkm+u9wun1ZFljvu0hE5qO2XGsqoTTYRrJIDRDuzOavjlW9Q=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182596-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182596: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=f805cf3e9b87584e16b03b5059b1163fd22bf5a0
X-Osstest-Versions-That:
    xen=6621932264e3e86df3913db4249ecd3eb100b13f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 01 Sep 2023 11:24:37 +0000

flight 182596 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182596/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  f805cf3e9b87584e16b03b5059b1163fd22bf5a0
baseline version:
 xen                  6621932264e3e86df3913db4249ecd3eb100b13f

Last test of basis   182577  2023-08-31 03:02:08 Z    1 days
Testing same since   182596  2023-09-01 08:02:04 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Tamas K Lengyel <tamas@tklengyel.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   6621932264..f805cf3e9b  f805cf3e9b87584e16b03b5059b1163fd22bf5a0 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 12:00:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 12:00:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594588.927950 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc2p0-0001CE-Ls; Fri, 01 Sep 2023 12:00:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594588.927950; Fri, 01 Sep 2023 12:00:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc2p0-0001C7-IB; Fri, 01 Sep 2023 12:00:18 +0000
Received: by outflank-mailman (input) for mailman id 594588;
 Fri, 01 Sep 2023 12:00:17 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qc2oz-0001Bv-5I; Fri, 01 Sep 2023 12:00:17 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qc2oz-0006lg-1T; Fri, 01 Sep 2023 12:00:17 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qc2oy-0006kh-Kg; Fri, 01 Sep 2023 12:00:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qc2oy-0007Xo-KG; Fri, 01 Sep 2023 12:00:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=dpteYmxeh2+RB/0o+e+imPvt7SYHAlDYAjcNoaVahU8=; b=g5UbFdCZ3XZoZue/zzNXT5UN1R
	LCfriSzloCJKwjGHQeZV9ymTxAJRpez43Qoy/oJfXksQb94av4iuiAf2DCnPD8E3Qi6QdLUUN52tV
	0qEomRYJLKGPKLiL3TRqtFCnPv9I6IUAawV2XNyCrrgrkNOI+wLZGvmqEae3C0WyzRok=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182585-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182585: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=b97d64c722598ffed42ece814a2cb791336c6679
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 01 Sep 2023 12:00:16 +0000

flight 182585 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182585/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                b97d64c722598ffed42ece814a2cb791336c6679
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z    4 days
Failing since        182544  2023-08-28 20:42:13 Z    3 days    6 attempts
Testing same since   182585  2023-08-31 18:19:45 Z    0 days    1 attempts

------------------------------------------------------------
1638 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 183984 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 12:59:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 12:59:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594607.927970 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc3kX-0006mF-0U; Fri, 01 Sep 2023 12:59:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594607.927970; Fri, 01 Sep 2023 12:59:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc3kW-0006m8-TZ; Fri, 01 Sep 2023 12:59:44 +0000
Received: by outflank-mailman (input) for mailman id 594607;
 Fri, 01 Sep 2023 12:59:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SnXb=ER=kaod.org=clg@ozlabs.org>)
 id 1qc3kV-0006ly-IL
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 12:59:43 +0000
Received: from gandalf.ozlabs.org (gandalf.ozlabs.org [150.107.74.76])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6873af67-48c7-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 14:59:41 +0200 (CEST)
Received: from gandalf.ozlabs.org (gandalf.ozlabs.org [150.107.74.76])
 by gandalf.ozlabs.org (Postfix) with ESMTP id 4RcdQw0lVXz4wy6;
 Fri,  1 Sep 2023 22:59:36 +1000 (AEST)
Received: from authenticated.ozlabs.org (localhost [127.0.0.1])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
 (No client certificate requested)
 by mail.ozlabs.org (Postfix) with ESMTPSA id 4RcdQk1gjzz4wbj;
 Fri,  1 Sep 2023 22:59:25 +1000 (AEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6873af67-48c7-11ee-8783-cb3800f73035
Message-ID: <7b8a4589-7f29-e564-4904-9b1a4fd342af@kaod.org>
Date: Fri, 1 Sep 2023 14:59:22 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH 7/7] qobject atomics osdep: Make a few macros more
 hygienic
Content-Language: en-US
To: Eric Blake <eblake@redhat.com>, Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, kwolf@redhat.com, hreitz@redhat.com,
 vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com, pl@kamp.de,
 sw@weilnetz.de, sstabellini@kernel.org, anthony.perard@citrix.com,
 paul@xen.org, pbonzini@redhat.com, marcandre.lureau@redhat.com,
 berrange@redhat.com, thuth@redhat.com, philmd@linaro.org,
 stefanha@redhat.com, fam@euphon.net, quintela@redhat.com, peterx@redhat.com,
 leobras@redhat.com, kraxel@redhat.com, qemu-block@nongnu.org,
 xen-devel@lists.xenproject.org, alex.bennee@linaro.org,
 peter.maydell@linaro.org
References: <20230831132546.3525721-1-armbru@redhat.com>
 <20230831132546.3525721-8-armbru@redhat.com>
 <vfkfi6uld3gbd4urmqdlzkv6djtws6mkbluc5qvwcla6btszhu@ff66zfyd7smm>
From: =?UTF-8?Q?C=c3=a9dric_Le_Goater?= <clg@kaod.org>
In-Reply-To: <vfkfi6uld3gbd4urmqdlzkv6djtws6mkbluc5qvwcla6btszhu@ff66zfyd7smm>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 8/31/23 16:30, Eric Blake wrote:
> On Thu, Aug 31, 2023 at 03:25:46PM +0200, Markus Armbruster wrote:
> 
> [This paragraph written last: Bear with my stream of consciousness
> review below, where I end up duplicating some of the conslusions you
> reached before the point where I saw where the patch was headed]
> 
>> Variables declared in macros can shadow other variables.  Much of the
>> time, this is harmless, e.g.:
>>
>>      #define _FDT(exp)                                                  \
>>          do {                                                           \
>>              int ret = (exp);                                           \
>>              if (ret < 0) {                                             \
>>                  error_report("error creating device tree: %s: %s",   \
>>                          #exp, fdt_strerror(ret));                      \
>>                  exit(1);                                               \
>>              }                                                          \
>>          } while (0)
> 
> Which is why I've seen some projects require a strict namespace
> separation: if all macro parameters and any identifiers declared in
> macros use either a leading or a trailing _ (I prefer a trailing one,
> to avoid risking conflicts with libc reserved namespace; but leading
> is usually okay), and all other identifiers avoid that namespace, then
> you will never have shadowing by calling a macro from normal code.

I started fixing the _FDT() macro since it is quite noisy at compile.
Same for qemu_fdt_setprop_cells(). So are we ok with names like 'ret_'
and 'i_' ? I used a 'local_' prefix for now but I can change.

I also have a bunch of fixes for ppc.

C.

> 
>>
>> Harmless shadowing in h_client_architecture_support():
>>
>>          target_ulong ret;
>>
>>          [...]
>>
>>          ret = do_client_architecture_support(cpu, spapr, vec, fdt_bufsize);
>>          if (ret == H_SUCCESS) {
>>              _FDT((fdt_pack(spapr->fdt_blob)));
>>              [...]
>>          }
>>
>>          return ret;
>>
>> However, we can get in trouble when the shadowed variable is used in a
>> macro argument:
>>
>>      #define QOBJECT(obj) ({                                 \
>>          typeof(obj) o = (obj);                              \
>>          o ? container_of(&(o)->base, QObject, base) : NULL; \
>>       })
>>
>> QOBJECT(o) expands into
>>
>>      ({
>> --->    typeof(o) o = (o);
>>          o ? container_of(&(o)->base, QObject, base) : NULL;
>>      })
>>
>> Unintended variable name capture at --->.  We'd be saved by
>> -Winit-self.  But I could certainly construct more elaborate death
>> traps that don't trigger it.
> 
> Indeed, not fully understanding the preprocessor makes for some
> interesting death traps.
> 
>>
>> To reduce the risk of trapping ourselves, we use variable names in
>> macros that no sane person would use elsewhere.  Here's our actual
>> definition of QOBJECT():
>>
>>      #define QOBJECT(obj) ({                                         \
>>          typeof(obj) _obj = (obj);                                   \
>>          _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
>>      })
> 
> Yep, goes back to the policy I've seen of enforcing naming conventions
> that ensure macros can't shadow normal code.
> 
>>
>> Works well enough until we nest macro calls.  For instance, with
>>
>>      #define qobject_ref(obj) ({                     \
>>          typeof(obj) _obj = (obj);                   \
>>          qobject_ref_impl(QOBJECT(_obj));            \
>>          _obj;                                       \
>>      })
>>
>> the expression qobject_ref(obj) expands into
>>
>>      ({
>>          typeof(obj) _obj = (obj);
>>          qobject_ref_impl(
>>              ({
>> --->            typeof(_obj) _obj = (_obj);
>>                  _obj ? container_of(&(_obj)->base, QObject, base) : NULL;
>>              }));
>>          _obj;
>>      })
>>
>> Unintended variable name capture at --->.
> 
> Yep, you've just proven how macros calling macros requires care, as we
> no longer have the namespace protections.  If macro calls can only
> form a DAG, it is possible to choose unique intermediate declarations
> for every macro (although remembering to do that, and still keeping
> the macro definition legible, may not be easy).  But if you can have
> macros that form any sort of nesting loop (and we WANT to allow things
> like MIN(MIN(a, b), c) - which is such a loop), dynamic naming becomes
> the only solution.
> 
>>
>> The only reliable way to prevent unintended variable name capture is
>> -Wshadow.
> 
> Yes, I would love to have that enabled eventually.
> 
>>
>> One blocker for enabling it is shadowing hiding in function-like
>> macros like
>>
>>       qdict_put(dict, "name", qobject_ref(...))
>>
>> qdict_put() wraps its last argument in QOBJECT(), and the last
>> argument here contains another QOBJECT().
>>
>> Use dark preprocessor sorcery to make the macros that give us this
>> problem use different variable names on every call.
> 
> Sounds foreboding; hopefully not many macros are affected...
> 
>>
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> ---
>>   include/qapi/qmp/qobject.h |  8 +++++---
>>   include/qemu/atomic.h      | 11 ++++++-----
>>   include/qemu/osdep.h       | 34 +++++++++++++++++++---------------
>>   3 files changed, 30 insertions(+), 23 deletions(-)
> 
> ...okay, the size of the diffstat seems tolerable (good that we don't
> have many macros that expand to a temporary variable declaration and
> which are likely to be heavily reused from nested contexts).
> 
>>
>> diff --git a/include/qapi/qmp/qobject.h b/include/qapi/qmp/qobject.h
>> index 9003b71fd3..7b50fc905d 100644
>> --- a/include/qapi/qmp/qobject.h
>> +++ b/include/qapi/qmp/qobject.h
>> @@ -45,10 +45,12 @@ struct QObject {
>>       struct QObjectBase_ base;
>>   };
>>   
>> -#define QOBJECT(obj) ({                                         \
>> -    typeof(obj) _obj = (obj);                                   \
>> -    _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
>> +#define QOBJECT_INTERNAL(obj, l) ({                                     \
>> +    typeof(obj) PASTE(_obj, l) = (obj);                                 \
>> +    PASTE(_obj, l)                                                      \
>> +        ? container_of(&(PASTE(_obj, l))->base, QObject, base) : NULL;  \
>>   })
>> +#define QOBJECT(obj) QOBJECT_INTERNAL((obj), __COUNTER__)
> 
> Slick!  Every call to QOBJECT() defines a unique temporary variable
> name.  But as written, QOBJECT(o) expands to this (when __COUNTER__ is
> 1):
> 
> ({
>    typeof((o)) _obj1 = ((o));
>    _obj1 ? container_of(&(_obj1)->base, QObject, base) : NULL;
> })
> 
> which has three sets of redundant parens that could be elided.  Why do
> you need to add () around obj when forwarding to QOBJECT_INTERNAL()?
> The only way the expansion of the text passed through the 'obj'
> parameter can contain a comma is if the user has already parenthesized
> it on their end (not that I expect a comma expression to be a frequent
> argument to QOBJECT(), but who knows).  Arguing that it is to silence
> a syntax checker is weak; since we must NOT add parens around the
> parameters to QOBJECT_INTERNAL (calling PASTE((_obj), (l)) is
> obviously wrong).
> 
> Meanwhile, the repetition of three calls to PASTE() is annoying.  How
> about:
> 
> #define QOBJECT_INTERNAL_2(_obj, _tmp) ({ \
>    typeof _obj _tmp = _obj; \
>    _tmp ? container_of(&_tmp->base, QObject, base) : NULL; \
>    )}
> #define QOBJECT_INTERNAL_1(_arg, _tmp) QOBJECT_INTERNAL_2(_arg, _tmp)
> #define QOBJECT_INTERNAL(_arg, _ctr) \
>    QOBJECT_INTERNAL_1(_arg, PASTE(_obj, _ctr))
> #define QOBJECT(obj) QOBJECT_INTERNAL((obj), __COUNTER__)
> 
> or:
> 
> #define QOBJECT_INTERNAL_2(_obj, _tmp) ({ \
>    typeof(_obj) _tmp = (_obj); \
>    _tmp ? container_of(&_tmp->base, QObject, base) : NULL; \
>    )}
> #define QOBJECT_INTERNAL_1(_arg, _tmp) QOBJECT_INTERNAL_2(_arg, _tmp)
> #define QOBJECT_INTERNAL(_arg, _ctr) \
>    QOBJECT_INTERNAL_1(_arg, PASTE(_obj, _ctr))
> #define QOBJECT(obj) QOBJECT_INTERNAL(obj, __COUNTER__)
> 
> where, in either case, QOBJECT(o) should then expand to
> 
> ({
>    typeof (o) _obj1 = (o);
>    _obj1 ? container_of(&_obj1->base, QObject, base) : NULL;
> })
> 
>>   
>>   /* Required for qobject_to() */
>>   #define QTYPE_CAST_TO_QNull     QTYPE_QNULL
>> diff --git a/include/qemu/atomic.h b/include/qemu/atomic.h
>> index d95612f7a0..3f80ffac69 100644
>> --- a/include/qemu/atomic.h
>> +++ b/include/qemu/atomic.h
>> @@ -157,13 +157,14 @@
>>       smp_read_barrier_depends();
>>   #endif
>>   
>> -#define qatomic_rcu_read(ptr)                          \
>> -    ({                                                 \
>> +#define qatomic_rcu_read_internal(ptr, l)               \
>> +    ({                                                  \
>>       qemu_build_assert(sizeof(*ptr) <= ATOMIC_REG_SIZE); \
>> -    typeof_strip_qual(*ptr) _val;                      \
>> -    qatomic_rcu_read__nocheck(ptr, &_val);             \
>> -    _val;                                              \
>> +    typeof_strip_qual(*ptr) PASTE(_val, l);             \
>> +    qatomic_rcu_read__nocheck(ptr, &PASTE(_val, l));    \
>> +    PASTE(_val, l);                                     \
>>       })
>> +#define qatomic_rcu_read(ptr) qatomic_rcu_read_internal((ptr), __COUNTER__)
> 
> Same observation about being able to reduce the number of PASTE()
> calls by adding yet another layer of macro invocations.
> 
>>   
>>   #define qatomic_rcu_set(ptr, i) do {                   \
>>       qemu_build_assert(sizeof(*ptr) <= ATOMIC_REG_SIZE); \
>> diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
>> index 21ef8f1699..9c191ebe99 100644
>> --- a/include/qemu/osdep.h
>> +++ b/include/qemu/osdep.h
>> @@ -371,18 +371,21 @@ void QEMU_ERROR("code path is reachable")
>>    * have to open-code it.  Sadly, Coverity is severely confused by the
>>    * constant variants, so we have to dumb things down there.
>>    */
>> +#define PASTE(a, b) a##b
>> +#define MIN_INTERNAL(a, b, l)                                           \
>> +    ({                                                                  \
>> +        typeof(1 ? (a) : (b)) PASTE(_a, l) = (a), PASTE(_b, l) = (b);   \
>> +        PASTE(_a, l) < PASTE(_b, l) ? PASTE(_a, l) : PASTE(_b, l);      \
>> +    })
> 
> And again.
> 
> I think you are definitely on the right track to have all internal
> variable declarations within a macro definition use multi-layered
> expansion with the help of __COUNTER__ to ensure that the macro's
> temporary variable is globally unique; so if you leave it as written,
> I could live with:
> 
> Reviewed-by: Eric Blake <eblake@redhat.com>
> 
> But if you respin it to pick up any of my suggestions, I'll definitely
> spend another review cycle on the result.
> 
> If it helps, here's what I ended up using in nbdkit:
> 
> https://gitlab.com/nbdkit/nbdkit/-/blame/master/common/include/unique-name.h#L36
> /* https://stackoverflow.com/a/1597129
>   * https://stackoverflow.com/a/12711226
>   */
> #define XXUNIQUE_NAME(name, counter) name ## counter
> #define XUNIQUE_NAME(name, counter) XXUNIQUE_NAME (name, counter)
> #define NBDKIT_UNIQUE_NAME(name) XUNIQUE_NAME (name, __COUNTER__)
> 
> https://gitlab.com/nbdkit/nbdkit/-/blame/master/common/include/minmax.h#L47
> #include "unique-name.h"
> 
> #undef MIN
> #define MIN(x, y) \
>    MIN_1 ((x), (y), NBDKIT_UNIQUE_NAME (_x), NBDKIT_UNIQUE_NAME (_y))
> 
> ...
> #define MIN_1(x, y, _x, _y) ({                 \
>        __auto_type _x = (x);                    \
>        __auto_type _y = (y);                    \
>        _x < _y ? _x : _y;                       \
>      })
> 



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 13:19:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 13:19:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594615.927981 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc433-0000uD-Oi; Fri, 01 Sep 2023 13:18:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594615.927981; Fri, 01 Sep 2023 13:18:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc433-0000u6-Jx; Fri, 01 Sep 2023 13:18:53 +0000
Received: by outflank-mailman (input) for mailman id 594615;
 Fri, 01 Sep 2023 13:18:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=n7sW=ER=redhat.com=eblake@srs-se1.protection.inumbo.net>)
 id 1qc432-0000u0-IW
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 13:18:52 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1629738a-48ca-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 15:18:49 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-157-REwgjqJMNmWwe92Rdpm8Cw-1; Fri, 01 Sep 2023 09:18:44 -0400
Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com
 [10.11.54.6])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 022B88008A4;
 Fri,  1 Sep 2023 13:18:44 +0000 (UTC)
Received: from redhat.com (unknown [10.2.16.84])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 0937D200A86A;
 Fri,  1 Sep 2023 13:18:39 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1629738a-48ca-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1693574328;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=5ORjCogk/T3wtJvdEQcveV1ZRZ94PW0/afyX1i5phnI=;
	b=H7BRiONjiph/CkEGcyls08cJcD6BduAvxGwmuUrWoaLsxJGjJYuMOXx5CAeSxIjt4Ju8em
	FsKjhrYWVbgr3WyAeoZuarBBdA5ISkn+IrZx1+voCLnddSgdM7/kcUJK2tlNIko7Pb6ZyZ
	JVqQirlrQlgnMMNWgRvf4fxzoBf2vpI=
X-MC-Unique: REwgjqJMNmWwe92Rdpm8Cw-1
Date: Fri, 1 Sep 2023 08:18:38 -0500
From: Eric Blake <eblake@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, kwolf@redhat.com, hreitz@redhat.com, 
	vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com, sw@weilnetz.de, 
	sstabellini@kernel.org, anthony.perard@citrix.com, paul@xen.org, pbonzini@redhat.com, 
	marcandre.lureau@redhat.com, berrange@redhat.com, thuth@redhat.com, philmd@linaro.org, 
	stefanha@redhat.com, fam@euphon.net, quintela@redhat.com, peterx@redhat.com, 
	leobras@redhat.com, kraxel@redhat.com, qemu-block@nongnu.org, 
	xen-devel@lists.xenproject.org, alex.bennee@linaro.org, peter.maydell@linaro.org
Subject: Re: [PATCH 7/7] qobject atomics osdep: Make a few macros more
 hygienic
Message-ID: <viam47z5ascty5zluzvj3byrrrp2fe6jh6vevcaggpozxwzabj@avo7fb3gs7bt>
References: <20230831132546.3525721-1-armbru@redhat.com>
 <20230831132546.3525721-8-armbru@redhat.com>
 <vfkfi6uld3gbd4urmqdlzkv6djtws6mkbluc5qvwcla6btszhu@ff66zfyd7smm>
 <87ledqjn39.fsf@pond.sub.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <87ledqjn39.fsf@pond.sub.org>
User-Agent: NeoMutt/20230517
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6

On Fri, Sep 01, 2023 at 10:48:26AM +0200, Markus Armbruster wrote:
> > Indeed, not fully understanding the preprocessor makes for some
> > interesting death traps.
> 
> We use ALL_CAPS for macros to signal "watch out for traps".
> 

> >> -#define QOBJECT(obj) ({                                         \
> >> -    typeof(obj) _obj = (obj);                                   \
> >> -    _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
> >> +#define QOBJECT_INTERNAL(obj, l) ({                                     \
> >> +    typeof(obj) PASTE(_obj, l) = (obj);                                 \
> >> +    PASTE(_obj, l)                                                      \
> >> +        ? container_of(&(PASTE(_obj, l))->base, QObject, base) : NULL;  \
> >>  })
> >> +#define QOBJECT(obj) QOBJECT_INTERNAL((obj), __COUNTER__)
> >
> > Slick!  Every call to QOBJECT() defines a unique temporary variable
> > name.  But as written, QOBJECT(o) expands to this (when __COUNTER__ is
> > 1):
> >
> > ({
> >   typeof((o)) _obj1 = ((o));
> >   _obj1 ? container_of(&(_obj1)->base, QObject, base) : NULL;
> > })
> >
> > which has three sets of redundant parens that could be elided.  Why do
> > you need to add () around obj when forwarding to QOBJECT_INTERNAL()?
> 
> Habit: enclose macro arguments in parenthesis unless there's a specific
> need not to.
> 
> > The only way the expansion of the text passed through the 'obj'
> > parameter can contain a comma is if the user has already parenthesized
> > it on their end (not that I expect a comma expression to be a frequent
> > argument to QOBJECT(), but who knows).  Arguing that it is to silence
> > a syntax checker is weak; since we must NOT add parens around the
> > parameters to QOBJECT_INTERNAL (calling PASTE((_obj), (l)) is
> > obviously wrong).
> >
> > Meanwhile, the repetition of three calls to PASTE() is annoying.  How
> > about:
> >
> > #define QOBJECT_INTERNAL_2(_obj, _tmp) ({ \
> >   typeof _obj _tmp = _obj; \
> >   _tmp ? container_of(&_tmp->base, QObject, base) : NULL; \
> >   )}
> > #define QOBJECT_INTERNAL_1(_arg, _tmp) QOBJECT_INTERNAL_2(_arg, _tmp)
> > #define QOBJECT_INTERNAL(_arg, _ctr) \
> >   QOBJECT_INTERNAL_1(_arg, PASTE(_obj, _ctr))
> > #define QOBJECT(obj) QOBJECT_INTERNAL((obj), __COUNTER__)
> >
> > or:
> >
> > #define QOBJECT_INTERNAL_2(_obj, _tmp) ({ \
> >   typeof(_obj) _tmp = (_obj); \
> >   _tmp ? container_of(&_tmp->base, QObject, base) : NULL; \
> >   )}
> > #define QOBJECT_INTERNAL_1(_arg, _tmp) QOBJECT_INTERNAL_2(_arg, _tmp)
> > #define QOBJECT_INTERNAL(_arg, _ctr) \
> >   QOBJECT_INTERNAL_1(_arg, PASTE(_obj, _ctr))
> > #define QOBJECT(obj) QOBJECT_INTERNAL(obj, __COUNTER__)
> >
> > where, in either case, QOBJECT(o) should then expand to
> >
> > ({
> >   typeof (o) _obj1 = (o);
> >   _obj1 ? container_of(&_obj1->base, QObject, base) : NULL;
> > })
> 
> The idea is to have the innermost macro take the variable name instead
> of the counter.  "PASTE(_obj, l)" then becomes "_tmp" there, which is
> more legible.  However, we pay for it by going through two more macros.
> 
> Can you explain why you need two more?

Likewise habit, on my part (and laziness - I wrote the previous email
without testing anything). I've learned over the years that pasting is
hard (you can't mix ## with a macro that you want expanded without 2
layers of indirection), so I started out by adding two layers of
QOBJECT_INTERNAL, then wrote QOBJECT to forward to QOBJECT_INTERNAL.
But now that you asked, I actually spent the time to test with the
preprocessor, and your hunch is indeed correct: I over-compensated
becaues of my habit.

$cat foo.c
#define PASTE(_a, _b) _a##_b

#define QOBJECT_INTERNAL_2(_obj, _tmp) ({       \
  typeof _obj _tmp = _obj; \
  _tmp ? container_of(&_tmp->base, QObject, base) : NULL; \
  )}
#define QOBJECT_INTERNAL_1(_arg, _tmp) QOBJECT_INTERNAL_2(_arg, _tmp)
#define QOBJECT_INTERNAL(_arg, _ctr) \
  QOBJECT_INTERNAL_1(_arg, PASTE(_obj, _ctr))
#define QOBJECT(obj) QOBJECT_INTERNAL((obj), __COUNTER__)

QOBJECT(o)

#define Q_INTERNAL_1(_obj, _tmp) ({ \
  typeof _obj _tmp = _obj; \
  _tmp ? container_of(&_tmp->base, QObject, base) : NULL; \
  )}
#define Q_INTERNAL(_arg, _ctr) \
  Q_INTERNAL_1(_arg, PASTE(_obj, _ctr))
#define Q(obj) Q_INTERNAL((obj), __COUNTER__)

Q(o)
$ gcc -E foo.c
# 0 "foo.c"
# 0 "<built-in>"
# 0 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 0 "<command-line>" 2
# 1 "foo.c"
# 12 "foo.c"
({ typeof (o) _obj0 = (o); _obj0 ? container_of(&_obj0->base, QObject, base) : NULL; )}
# 22 "foo.c"
({ typeof (o) _obj1 = (o); _obj1 ? container_of(&_obj1->base, QObject, base) : NULL; )}

So the important part was merely ensuring that __COUNTER__ has a
chance to be expanded PRIOR to the point where ## gets its argument,
and one less layer of indirection was still sufficient for that.

> 
> Complication: the innermost macro needs to take all its variable names
> as arguments.  The macro above has just one.  Macros below have two.
> 
> Not quite sure which version is easier to understand.

Proper comments may help; once you realize that you are passing in the
unique variable name(s) to be used as the temporary identifier(s),
rather than an integer that still needs to be glued, then separating
the task of generating name(s) (which is done once per name, instead
of repeated 3 times) makes sense to me.  I also like minimizing the
number of times I have to spell out __COUNTER__; wrapping unique name
generation behind a well-named helper macro gives a better view of why
it is needed in the first place.

At any rate, this comment still applies:

> >
> > I think you are definitely on the right track to have all internal
> > variable declarations within a macro definition use multi-layered
> > expansion with the help of __COUNTER__ to ensure that the macro's
> > temporary variable is globally unique; so if you leave it as written,
> > I could live with:
> >
> > Reviewed-by: Eric Blake <eblake@redhat.com>
> >
> > But if you respin it to pick up any of my suggestions, I'll definitely
> > spend another review cycle on the result.
> >
> > If it helps, here's what I ended up using in nbdkit:
> >
> > https://gitlab.com/nbdkit/nbdkit/-/blame/master/common/include/unique-name.h#L36
> > /* https://stackoverflow.com/a/1597129
> >  * https://stackoverflow.com/a/12711226
> >  */
> > #define XXUNIQUE_NAME(name, counter) name ## counter
> > #define XUNIQUE_NAME(name, counter) XXUNIQUE_NAME (name, counter)
> > #define NBDKIT_UNIQUE_NAME(name) XUNIQUE_NAME (name, __COUNTER__)
> >
> > https://gitlab.com/nbdkit/nbdkit/-/blame/master/common/include/minmax.h#L47
> > #include "unique-name.h"
> >
> > #undef MIN
> > #define MIN(x, y) \
> >   MIN_1 ((x), (y), NBDKIT_UNIQUE_NAME (_x), NBDKIT_UNIQUE_NAME (_y))
> >
> > ...
> > #define MIN_1(x, y, _x, _y) ({                 \
> >       __auto_type _x = (x);                    \
> >       __auto_type _y = (y);                    \
> >       _x < _y ? _x : _y;                       \
> >     })
> 
> Thanks!

and so I'm fine leaving it up to you if you want to copy the paradigm
I've seen elsewhere, or if you want to leave it as you first proposed.
The end result is the same, and it is more of a judgment call on which
form is easier for you to reason about.

But as other commenters mentioned, we already have a glue() macro, so
use that instead of PASTE(), no matter what else you choose.

Looking forward to v2!

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.
Virtualization:  qemu.org | libguestfs.org



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 14:31:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 14:31:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594625.927995 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc5BD-0001PP-0i; Fri, 01 Sep 2023 14:31:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594625.927995; Fri, 01 Sep 2023 14:31:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc5BC-0001PI-UQ; Fri, 01 Sep 2023 14:31:22 +0000
Received: by outflank-mailman (input) for mailman id 594625;
 Fri, 01 Sep 2023 14:31:21 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=OLXw=ER=linaro.org=philmd@srs-se1.protection.inumbo.net>)
 id 1qc5BB-0001PC-G3
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 14:31:21 +0000
Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com
 [2a00:1450:4864:20::42f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 36c71e56-48d4-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 16:31:19 +0200 (CEST)
Received: by mail-wr1-x42f.google.com with SMTP id
 ffacd0b85a97d-31c8321c48fso7782f8f.1
 for <xen-devel@lists.xenproject.org>; Fri, 01 Sep 2023 07:31:18 -0700 (PDT)
Received: from [192.168.69.115] ([176.187.203.220])
 by smtp.gmail.com with ESMTPSA id
 m18-20020a056000181200b00317f29ad113sm5370740wrh.32.2023.09.01.07.31.13
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 01 Sep 2023 07:31:16 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 36c71e56-48d4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1693578678; x=1694183478; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=lTlmZTcTjXXm0dN15dhdczx3GEuymgxpFJn2+Kqce8g=;
        b=zvteF4qSkQZu2Y3SxIVFar8gL21Ku+lcq1pz4DhrRKbmL3DsIe2qhjpf8qsQD8FLCW
         bOeO0KIE6HXNYpCgPDovVlHdWpNqi57Yr6/7X3jsI+C1dzXG2wIwymc6qC6mVmlse6AP
         BpWrG2ZGmZwkyKpOoNf1QPJDn3L4P3B9/3lA6NiUVo2P81MXNH9YJdGzv28D0+wNO5hY
         KX2t+G4Ih77Re2jwDU6+QLI1bzYXexrE/jlVwjBakA14h91K7UURMgMfjU1v4DAaSP2l
         LdoR1PUPz+kTDYL5jlUZur42pEFa1nJUzCRX4wlYW7LKRWouIARa4xw0Kmoz9zf8ht+3
         u8/A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693578678; x=1694183478;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=lTlmZTcTjXXm0dN15dhdczx3GEuymgxpFJn2+Kqce8g=;
        b=EgRGl3Z61KDgilLJGSnnRHr8dh1MWnov76wP109lO8ooW5KFrAubzw4c5RT+96G6Of
         FEJysXJQUgwkLN+/3ID/5SID0yX5y5AHYPmJv+iOMnZRlYEoLKX6s58pGdRYuxbIpRom
         Wpq9Hb9ZCuoKaqIgE/c96xOkIPi4dy0fsE+DglP+i/04nNKrODOGRx9MFkAfUjnnMLlu
         xo4ZxczqisWFd71xct5JlbtetnnF5XmVe3yhLhjQpvw6mebH/9yqOjmLG/L+ovD86oUS
         qGizJFYjtIGG082gtE+QAU2qDYHn+AyJLnZ/zmvoSBRf3lWBIOqKEcsP0APxgplqPjeX
         zoTQ==
X-Gm-Message-State: AOJu0Ywm6UtJtc8QypxmFlQTMkterOPrWV4HO0Ve/zs971eSK7+vOkbg
	mbO27gSuDzjAFKivraPWUbSLtw==
X-Google-Smtp-Source: AGHT+IEBBN9CCsn9YltN2F0V7LF3Z5GRBPMVLtPg4poVoLEEKPmPVtqhAv3tXZryDsJq5nVnF/yeGQ==
X-Received: by 2002:a5d:69cf:0:b0:319:7ec8:53ba with SMTP id s15-20020a5d69cf000000b003197ec853bamr2219654wrw.14.1693578677580;
        Fri, 01 Sep 2023 07:31:17 -0700 (PDT)
Message-ID: <a577e600-5bd9-2b6b-d4e6-5486df10bdb8@linaro.org>
Date: Fri, 1 Sep 2023 16:31:12 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.14.0
Subject: Re: [PATCH 7/7] qobject atomics osdep: Make a few macros more
 hygienic
Content-Language: en-US
To: =?UTF-8?Q?C=c3=a9dric_Le_Goater?= <clg@kaod.org>,
 Eric Blake <eblake@redhat.com>, Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, kwolf@redhat.com, hreitz@redhat.com,
 vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com, pl@kamp.de,
 sw@weilnetz.de, sstabellini@kernel.org, anthony.perard@citrix.com,
 paul@xen.org, pbonzini@redhat.com, marcandre.lureau@redhat.com,
 berrange@redhat.com, thuth@redhat.com, stefanha@redhat.com, fam@euphon.net,
 quintela@redhat.com, peterx@redhat.com, leobras@redhat.com,
 kraxel@redhat.com, qemu-block@nongnu.org, xen-devel@lists.xenproject.org,
 alex.bennee@linaro.org, peter.maydell@linaro.org
References: <20230831132546.3525721-1-armbru@redhat.com>
 <20230831132546.3525721-8-armbru@redhat.com>
 <vfkfi6uld3gbd4urmqdlzkv6djtws6mkbluc5qvwcla6btszhu@ff66zfyd7smm>
 <7b8a4589-7f29-e564-4904-9b1a4fd342af@kaod.org>
From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= <philmd@linaro.org>
In-Reply-To: <7b8a4589-7f29-e564-4904-9b1a4fd342af@kaod.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 1/9/23 14:59, Cédric Le Goater wrote:
> On 8/31/23 16:30, Eric Blake wrote:
>> On Thu, Aug 31, 2023 at 03:25:46PM +0200, Markus Armbruster wrote:
>>
>> [This paragraph written last: Bear with my stream of consciousness
>> review below, where I end up duplicating some of the conslusions you
>> reached before the point where I saw where the patch was headed]
>>
>>> Variables declared in macros can shadow other variables.  Much of the
>>> time, this is harmless, e.g.:
>>>
>>>      #define 
>>> _FDT(exp)                                                  \
>>>          do 
>>> {                                                           \
>>>              int ret = 
>>> (exp);                                           \
>>>              if (ret < 0) 
>>> {                                             \
>>>                  error_report("error creating device tree: %s: %s",   \
>>>                          #exp, 
>>> fdt_strerror(ret));                      \
>>>                  
>>> exit(1);                                               \
>>>              
>>> }                                                          \
>>>          } while (0)
>>
>> Which is why I've seen some projects require a strict namespace
>> separation: if all macro parameters and any identifiers declared in
>> macros use either a leading or a trailing _ (I prefer a trailing one,
>> to avoid risking conflicts with libc reserved namespace; but leading
>> is usually okay), and all other identifiers avoid that namespace, then
>> you will never have shadowing by calling a macro from normal code.
> 
> I started fixing the _FDT() macro since it is quite noisy at compile.
> Same for qemu_fdt_setprop_cells(). So are we ok with names like 'ret_'
> and 'i_' ? I used a 'local_' prefix for now but I can change.

See 
https://lore.kernel.org/qemu-devel/20230831225607.30829-12-philmd@linaro.org/



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 14:50:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 14:50:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594633.928006 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc5TU-00044q-H1; Fri, 01 Sep 2023 14:50:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594633.928006; Fri, 01 Sep 2023 14:50:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc5TU-00044j-DG; Fri, 01 Sep 2023 14:50:16 +0000
Received: by outflank-mailman (input) for mailman id 594633;
 Fri, 01 Sep 2023 14:50:15 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=odZU=ER=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qc5TT-00043K-3s
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 14:50:15 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id da182dbe-48d6-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 16:50:12 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-574-esBF9IBpOe2aBcfYjXur5w-1; Fri, 01 Sep 2023 10:50:05 -0400
Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com
 [10.11.54.7])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 9F4641817905;
 Fri,  1 Sep 2023 14:50:03 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.30])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 3B9AE1460FE5;
 Fri,  1 Sep 2023 14:50:03 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 3048A21E692A; Fri,  1 Sep 2023 16:50:02 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: da182dbe-48d6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1693579811;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=paHLoHNKtg8UFBFt/WB+m2kHfbeuo7pAuQSEBP1sizg=;
	b=DJw4aklPsF2T5r1TEn1BGC9QVRLkFltxtmG+aUP5JLo1TR70ygctMwyoSoeL3Q4KpjV46z
	ZKexSWmDTds/AmMIdVQW4O1jMv6nBS5wvavC8juKTv5sLV+PPFoF+tLYYUSuqFV2SY9WNQ
	YbEdG2LqsD8uoAE+6cSxUY89FSziSts=
X-MC-Unique: esBF9IBpOe2aBcfYjXur5w-1
From: Markus Armbruster <armbru@redhat.com>
To: =?utf-8?Q?C=C3=A9dric?= Le Goater <clg@kaod.org>
Cc: Eric Blake <eblake@redhat.com>,  qemu-devel@nongnu.org,
  kwolf@redhat.com,  hreitz@redhat.com,  vsementsov@yandex-team.ru,
  jsnow@redhat.com,  idryomov@gmail.com,  pl@kamp.de,  sw@weilnetz.de,
  sstabellini@kernel.org,  anthony.perard@citrix.com,  paul@xen.org,
  pbonzini@redhat.com,  marcandre.lureau@redhat.com,  berrange@redhat.com,
  thuth@redhat.com,  philmd@linaro.org,  stefanha@redhat.com,
  fam@euphon.net,  quintela@redhat.com,  peterx@redhat.com,
  leobras@redhat.com,  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org,
  peter.maydell@linaro.org
Subject: Re: [PATCH 7/7] qobject atomics osdep: Make a few macros more hygienic
References: <20230831132546.3525721-1-armbru@redhat.com>
	<20230831132546.3525721-8-armbru@redhat.com>
	<vfkfi6uld3gbd4urmqdlzkv6djtws6mkbluc5qvwcla6btszhu@ff66zfyd7smm>
	<7b8a4589-7f29-e564-4904-9b1a4fd342af@kaod.org>
Date: Fri, 01 Sep 2023 16:50:02 +0200
In-Reply-To: <7b8a4589-7f29-e564-4904-9b1a4fd342af@kaod.org>
 (=?utf-8?Q?=22C=C3=A9dric?= Le
	Goater"'s message of "Fri, 1 Sep 2023 14:59:22 +0200")
Message-ID: <87ttsevtgl.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.7

C=C3=A9dric Le Goater <clg@kaod.org> writes:

> On 8/31/23 16:30, Eric Blake wrote:
>> On Thu, Aug 31, 2023 at 03:25:46PM +0200, Markus Armbruster wrote:
>> [This paragraph written last: Bear with my stream of consciousness
>> review below, where I end up duplicating some of the conslusions you
>> reached before the point where I saw where the patch was headed]
>>=20
>>> Variables declared in macros can shadow other variables.  Much of the
>>> time, this is harmless, e.g.:
>>>
>>>      #define _FDT(exp)                                                 =
 \
>>>          do {                                                          =
 \
>>>              int ret =3D (exp);                                        =
   \
>>>              if (ret < 0) {                                            =
 \
>>>                  error_report("error creating device tree: %s: %s",   \
>>>                          #exp, fdt_strerror(ret));                     =
 \
>>>                  exit(1);                                              =
 \
>>>              }                                                         =
 \
>>>          } while (0)
>> Which is why I've seen some projects require a strict namespace
>> separation: if all macro parameters and any identifiers declared in
>> macros use either a leading or a trailing _ (I prefer a trailing one,
>> to avoid risking conflicts with libc reserved namespace; but leading
>> is usually okay), and all other identifiers avoid that namespace, then
>> you will never have shadowing by calling a macro from normal code.
>
> I started fixing the _FDT() macro since it is quite noisy at compile.
> Same for qemu_fdt_setprop_cells(). So are we ok with names like 'ret_'
> and 'i_' ? I used a 'local_' prefix for now but I can change.

I believe identifiers with a '_' suffix are just fine in macros.  We
have quite a few of them already.

> I also have a bunch of fixes for ppc.

Appreciated!



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 14:55:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 14:55:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594641.928018 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc5YJ-0004pP-3W; Fri, 01 Sep 2023 14:55:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594641.928018; Fri, 01 Sep 2023 14:55:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc5YJ-0004pI-0z; Fri, 01 Sep 2023 14:55:15 +0000
Received: by outflank-mailman (input) for mailman id 594641;
 Fri, 01 Sep 2023 14:55:13 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SnXb=ER=kaod.org=clg@ozlabs.org>)
 id 1qc5YH-0004pC-Qa
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 14:55:13 +0000
Received: from gandalf.ozlabs.org (gandalf.ozlabs.org [150.107.74.76])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8bafa84a-48d7-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 16:55:11 +0200 (CEST)
Received: from gandalf.ozlabs.org (mail.ozlabs.org
 [IPv6:2404:9400:2221:ea00::3])
 by gandalf.ozlabs.org (Postfix) with ESMTP id 4Rch0C0g8Nz4wy8;
 Sat,  2 Sep 2023 00:55:07 +1000 (AEST)
Received: from authenticated.ozlabs.org (localhost [127.0.0.1])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
 (No client certificate requested)
 by mail.ozlabs.org (Postfix) with ESMTPSA id 4Rch000JYNz4wy7;
 Sat,  2 Sep 2023 00:54:55 +1000 (AEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8bafa84a-48d7-11ee-8783-cb3800f73035
Message-ID: <e6a0b290-b76c-2f6d-4bbc-c97222d26935@kaod.org>
Date: Fri, 1 Sep 2023 16:54:50 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH 7/7] qobject atomics osdep: Make a few macros more
 hygienic
Content-Language: en-US
To: Markus Armbruster <armbru@redhat.com>
Cc: Eric Blake <eblake@redhat.com>, qemu-devel@nongnu.org, kwolf@redhat.com,
 hreitz@redhat.com, vsementsov@yandex-team.ru, jsnow@redhat.com,
 idryomov@gmail.com, pl@kamp.de, sw@weilnetz.de, sstabellini@kernel.org,
 anthony.perard@citrix.com, paul@xen.org, pbonzini@redhat.com,
 marcandre.lureau@redhat.com, berrange@redhat.com, thuth@redhat.com,
 philmd@linaro.org, stefanha@redhat.com, fam@euphon.net, quintela@redhat.com,
 peterx@redhat.com, leobras@redhat.com, kraxel@redhat.com,
 qemu-block@nongnu.org, xen-devel@lists.xenproject.org,
 alex.bennee@linaro.org, peter.maydell@linaro.org
References: <20230831132546.3525721-1-armbru@redhat.com>
 <20230831132546.3525721-8-armbru@redhat.com>
 <vfkfi6uld3gbd4urmqdlzkv6djtws6mkbluc5qvwcla6btszhu@ff66zfyd7smm>
 <7b8a4589-7f29-e564-4904-9b1a4fd342af@kaod.org> <87ttsevtgl.fsf@pond.sub.org>
From: =?UTF-8?Q?C=c3=a9dric_Le_Goater?= <clg@kaod.org>
In-Reply-To: <87ttsevtgl.fsf@pond.sub.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 9/1/23 16:50, Markus Armbruster wrote:
> Cédric Le Goater <clg@kaod.org> writes:
> 
>> On 8/31/23 16:30, Eric Blake wrote:
>>> On Thu, Aug 31, 2023 at 03:25:46PM +0200, Markus Armbruster wrote:
>>> [This paragraph written last: Bear with my stream of consciousness
>>> review below, where I end up duplicating some of the conslusions you
>>> reached before the point where I saw where the patch was headed]
>>>
>>>> Variables declared in macros can shadow other variables.  Much of the
>>>> time, this is harmless, e.g.:
>>>>
>>>>       #define _FDT(exp)                                                  \
>>>>           do {                                                           \
>>>>               int ret = (exp);                                           \
>>>>               if (ret < 0) {                                             \
>>>>                   error_report("error creating device tree: %s: %s",   \
>>>>                           #exp, fdt_strerror(ret));                      \
>>>>                   exit(1);                                               \
>>>>               }                                                          \
>>>>           } while (0)
>>> Which is why I've seen some projects require a strict namespace
>>> separation: if all macro parameters and any identifiers declared in
>>> macros use either a leading or a trailing _ (I prefer a trailing one,
>>> to avoid risking conflicts with libc reserved namespace; but leading
>>> is usually okay), and all other identifiers avoid that namespace, then
>>> you will never have shadowing by calling a macro from normal code.
>>
>> I started fixing the _FDT() macro since it is quite noisy at compile.
>> Same for qemu_fdt_setprop_cells(). So are we ok with names like 'ret_'
>> and 'i_' ? I used a 'local_' prefix for now but I can change.
> 
> I believe identifiers with a '_' suffix are just fine in macros.  We
> have quite a few of them already.

ok

>> I also have a bunch of fixes for ppc.
> 
> Appreciated!

count me on for the ppc files :

  hw/ppc/pnv_psi.c
  hw/ppc/spapr.c
  hw/ppc/spapr_drc.c
  hw/ppc/spapr_pci.c
  include/hw/ppc/fdt.h

and surely some other files under target/ppc/

This one was taken care of by Phil:

  include/sysemu/device_tree.h

C.


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 16:02:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 16:02:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594651.928038 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc6bH-0005ED-2V; Fri, 01 Sep 2023 16:02:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594651.928038; Fri, 01 Sep 2023 16:02:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc6bG-0005E6-Ul; Fri, 01 Sep 2023 16:02:22 +0000
Received: by outflank-mailman (input) for mailman id 594651;
 Fri, 01 Sep 2023 16:02:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=bo8w=ER=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qc6bG-0005Dt-3c
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 16:02:22 +0000
Received: from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com
 [2a00:1450:4864:20::12e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id edecf90b-48e0-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 18:02:19 +0200 (CEST)
Received: by mail-lf1-x12e.google.com with SMTP id
 2adb3069b0e04-4ff8cf11b90so3944092e87.1
 for <xen-devel@lists.xenproject.org>; Fri, 01 Sep 2023 09:02:19 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 d23-20020ac25457000000b0050097974ec8sm685782lfn.216.2023.09.01.09.02.17
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 01 Sep 2023 09:02:17 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: edecf90b-48e0-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1693584139; x=1694188939; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=hGaFAm7Nc0hwxi3jZc3J8mm6pOQjYTxnZIGA//eoISs=;
        b=qK0zZNwaLLuPAeNP8TeAEOtaYIf21+k1F0iK3YiE1MVS+PPj7Y+7B+FRHA507QMjdz
         C5FIf6f/VsFDbNZ+PB5oOYem9OaOaiMALTMtLayEZqsG5NZ0swkoqCz9j/ce/V7ao3Y8
         EuGDHrJ5aZIksRZ7afn3LwgfByXm+pG8N6NbuhHaQN/dhoHa5PqUgtIJ2GQ2ynBNm/Db
         H2isOzgfzNCkB5j0bccyXv4xDHl3XjYybfRw0MRbEYzt1sK7EA6ctn43kT/QJS2fsuJJ
         4b8lfxCn9J9wkrtuwJDuMeuYxUg6lDrN2V2QIYLEggqwsu3CeBf4uTWMdI9MY11DguwQ
         lLwg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693584139; x=1694188939;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=hGaFAm7Nc0hwxi3jZc3J8mm6pOQjYTxnZIGA//eoISs=;
        b=lF5DBD/YFJhQQEdlai/eUp3VGxQOQcP9mB2UOLoDduD/6W5PVYzr0mmTyJgHyIuHsj
         lptb7UK1oUvzgg/K2tHGInzoOGRWFfmA8JVk+eOl2TPm0AejEcxr+TjibpdDCh7+aj/D
         +PxtHJbu0asvn4hDt4/vmlqD/RQ7eSBgZ3SpfYaP2Uo28AXdfGchhbZWyFnIBVBXzMmz
         ECJP20ThKWM+8V7YPXLw7e2Iu/424Ny78W2x141359lNIOIt3xIKFIvDD1AP2hip3TRQ
         Az/aRFUYAxwOp7IL5Wt/UmQS6HrzK9Q5a535EYPiQkCa00c+WJTKM/JxUELRDMNVljwa
         B9Cw==
X-Gm-Message-State: AOJu0Yzb18QuUiianzOImFziRVl7UPCBaAGSoATEs8C+RP1Lv60rmu7u
	92jDqu/62479bIuqN9wSPBQf2oTg9DI=
X-Google-Smtp-Source: AGHT+IEsqSdGk4iuWWeZOHs2bdV3eTIoiB9YFeNx3Bo8wPWAZb2iVAvMMWkiOapXB8PhcIoIDnLiGQ==
X-Received: by 2002:a05:6512:b15:b0:4fe:af1:c3ae with SMTP id w21-20020a0565120b1500b004fe0af1c3aemr2442996lfu.15.1693584138474;
        Fri, 01 Sep 2023 09:02:18 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Bob Eshleman <bobbyeshleman@gmail.com>,
	Alistair Francis <alistair.francis@wdc.com>,
	Connor Davis <connojdavis@gmail.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>
Subject: [PATCH v4 0/2] introduce stub directory to storing empty/stub headers
Date: Fri,  1 Sep 2023 19:02:13 +0300
Message-ID: <cover.1693583721.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

A lot of empty/stub headers should be introduced during the early steps of adding
support of new architecture.

An example can be found here:
1. https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kurochko@gmail.com/
2. https://lore.kernel.org/xen-devel/a92f99e8f697da99d77bfde562a549dbef3760ce.1692816595.git.sanastasio@raptorengineering.com/

As part of the patch series, asm/vm_event.h was moved to the stubs directory because
It is the same for ARM, PPC, and RISC-V.

---
Changes in V4:
 - add asm-generic support
 - update path of vm_event.h from include/asm-generic/asm to include/asm-generic
---
Changes in V3:
 - add Acked-by: Stefano Stabellini <sstabellini@kernel.org> for "xen: move arm/include/asm/vm_event.h to asm-generic"
 - update SPDX tag.
 - move asm/vm_event.h to asm-generic.
 - rename stubs dir to asm-generic.

---
Changes in V2:
 - change public/domctl.h to public/vm_event.h.
 - update commit message of [PATCH v2 2/2] xen: move arm/include/asm/vm_event.h to stubs


Oleksii Kurochko (2):
  xen: asm-generic support
  xen: move arm/include/asm/vm_event.h to asm-generic

 xen/Makefile                       | 10 +++++-
 xen/arch/arm/include/asm/Kbuild    |  1 +
 xen/arch/ppc/include/asm/Kbuild    |  1 +
 xen/arch/riscv/include/asm/Kbuild  |  1 +
 xen/arch/x86/include/asm/Kbuild    |  1 +
 xen/include/asm-generic/vm_event.h | 55 ++++++++++++++++++++++++++++++
 xen/scripts/Makefile.asm-generic   | 23 +++++++++++++
 7 files changed, 91 insertions(+), 1 deletion(-)
 create mode 100644 xen/arch/arm/include/asm/Kbuild
 create mode 100644 xen/arch/ppc/include/asm/Kbuild
 create mode 100644 xen/arch/riscv/include/asm/Kbuild
 create mode 100644 xen/arch/x86/include/asm/Kbuild
 create mode 100644 xen/include/asm-generic/vm_event.h
 create mode 100644 xen/scripts/Makefile.asm-generic

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 16:02:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 16:02:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594653.928055 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc6bI-0005Wl-Oi; Fri, 01 Sep 2023 16:02:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594653.928055; Fri, 01 Sep 2023 16:02:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc6bI-0005WF-HQ; Fri, 01 Sep 2023 16:02:24 +0000
Received: by outflank-mailman (input) for mailman id 594653;
 Fri, 01 Sep 2023 16:02:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=bo8w=ER=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qc6bH-0005E0-ER
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 16:02:23 +0000
Received: from mail-lf1-x12f.google.com (mail-lf1-x12f.google.com
 [2a00:1450:4864:20::12f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ee96834e-48e0-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 18:02:20 +0200 (CEST)
Received: by mail-lf1-x12f.google.com with SMTP id
 2adb3069b0e04-50087d47d4dso3818518e87.1
 for <xen-devel@lists.xenproject.org>; Fri, 01 Sep 2023 09:02:20 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 d23-20020ac25457000000b0050097974ec8sm685782lfn.216.2023.09.01.09.02.19
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 01 Sep 2023 09:02:19 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ee96834e-48e0-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1693584140; x=1694188940; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=XPQRiEY+3o/lM3cmyr+0FFHtgXvECooqvXEAA7BncAM=;
        b=P21WiiGF5xJQyxfeSmYs3tILVRnaVXd8cVafG3DBs89Er1zJ2J56k5JqQly7ehe55X
         DJUEWF79RFMicqfMvM6vXJ3Ix92xAWSf7pNFAp3cXaWtO4Fs4hB5FTgX//wdDJI4Cb4k
         oUYWdW9NSOr73waLCMUpywMJtPzRpvacwOEKkQr6VqrVZXbgOFNIYAxUcPxb7nffNCt8
         dwI1Spt6aGTyOALV+Pp0al+YdOdqS2PrdD+ICConPIRyiegz6U/sXVV6pQF6pRyM/bF6
         y4eBU8Ekp0rd+J12wcgP3AfVy7/mOII7+STc1cla4FVYXt064zl+hr8UEwJ+0REjawLb
         jmgg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693584140; x=1694188940;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=XPQRiEY+3o/lM3cmyr+0FFHtgXvECooqvXEAA7BncAM=;
        b=F8wQ0/Av+Rlv03psziaL2xDItMuM5XWa/OpHmEt9/otdjTGacxoAs6tgUgvpjm053u
         vJJ/yR9YK95ha7IAwwcLjMexG5puCs3uHE6JfWiqkVVn/YyblwpreU2hZxigEDBfQRES
         POy1TkGQnVqKr0locuhaWl8ZqgrF4wmM0P7azxhqrKJ6UtV46G2q/aYig3B45gkHlP+a
         XIoWpCq4cZKHhyWD14dc2BRkLEh8je9TrejrmDwDRNdr+5/J7oER7oKycysst9Yi2osB
         NTYPX62qiLRPVDzDLOcH4cRmkXmU5mM3OKVTLoojJEjYv8PdyCzq5MWSje/0HLbVlQwW
         W2bQ==
X-Gm-Message-State: AOJu0YzImvVPju7gX9ELlW5L6j1QxrfZvXgk7MW1XY5YfqAdedK9zs+M
	LWO8sjhmzCqWLyoAKDZlwzbUUyuCG50=
X-Google-Smtp-Source: AGHT+IF50ZRaLW+Ac9DN9DPOicJCvhy1v4svfMs9B2QcX/N/1OQg+/RWAuzHhzRLUmSdn0hdVDoXSw==
X-Received: by 2002:a05:6512:34d0:b0:4fe:85c:aeba with SMTP id w16-20020a05651234d000b004fe085caebamr1836527lfr.21.1693584139959;
        Fri, 01 Sep 2023 09:02:19 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH v4 2/2] xen: move arm/include/asm/vm_event.h to asm-generic
Date: Fri,  1 Sep 2023 19:02:15 +0300
Message-ID: <0d273a71bb3caca894485a33970a81ec9a9f44e5.1693583721.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1693583721.git.oleksii.kurochko@gmail.com>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

asm/vm_event.h is common for ARM and RISC-V so it will be moved to
asm-generic dir.

Original asm/vm_event.h from ARM was updated:
 * use SPDX-License-Identifier.
 * update comment messages of stubs.
 * update #ifdef.
 * change public/domctl.h to public/vm_event.h.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in V4:
 - update path of vm_event.h from include/asm-generic/asm to include/asm-generic
---
Changes in V3:
 - add Acked-by: Stefano Stabellini <sstabellini@kernel.org> for "xen: move arm/include/asm/vm_event.h to asm-generic"
 - update SPDX tag.
 - move asm/vm_event.h to asm-generic.
---
Changes in V2:
 - change public/domctl.h to public/vm_event.h.
 - update commit message of [PATCH v2 2/2] xen: move arm/include/asm/vm_event.h to stubs
---
 xen/include/asm-generic/vm_event.h | 55 ++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)
 create mode 100644 xen/include/asm-generic/vm_event.h

diff --git a/xen/include/asm-generic/vm_event.h b/xen/include/asm-generic/vm_event.h
new file mode 100644
index 0000000000..620c7b971c
--- /dev/null
+++ b/xen/include/asm-generic/vm_event.h
@@ -0,0 +1,55 @@
+/* SPDX-License-Identifier:  GPL-2.0-only */
+/*
+ * vm_event.h: stubs for architecture specific vm_event handling routines
+ *
+ * Copyright (c) 2015 Tamas K Lengyel (tamas@tklengyel.com)
+ */
+
+#ifndef __ASM_GENERIC_VM_EVENT_H__
+#define __ASM_GENERIC_VM_EVENT_H__
+
+#include <xen/sched.h>
+#include <public/vm_event.h>
+
+static inline int vm_event_init_domain(struct domain *d)
+{
+    /* Nothing to do. */
+    return 0;
+}
+
+static inline void vm_event_cleanup_domain(struct domain *d)
+{
+    memset(&d->monitor, 0, sizeof(d->monitor));
+}
+
+static inline void vm_event_toggle_singlestep(struct domain *d, struct vcpu *v,
+                                              vm_event_response_t *rsp)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_register_write_resume(struct vcpu *v, vm_event_response_t *rsp)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_emulate_check(struct vcpu *v, vm_event_response_t *rsp)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_sync_event(struct vcpu *v, bool value)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_reset_vmtrace(struct vcpu *v)
+{
+    /* Nothing to do. */
+}
+
+#endif /* __ASM_GENERIC_VM_EVENT_H__ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 16:02:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 16:02:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594652.928048 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc6bI-0005TM-Co; Fri, 01 Sep 2023 16:02:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594652.928048; Fri, 01 Sep 2023 16:02:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc6bI-0005TF-A4; Fri, 01 Sep 2023 16:02:24 +0000
Received: by outflank-mailman (input) for mailman id 594652;
 Fri, 01 Sep 2023 16:02:22 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=bo8w=ER=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qc6bG-0005E0-PI
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 16:02:22 +0000
Received: from mail-lf1-x132.google.com (mail-lf1-x132.google.com
 [2a00:1450:4864:20::132])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ee616c88-48e0-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 18:02:20 +0200 (CEST)
Received: by mail-lf1-x132.google.com with SMTP id
 2adb3069b0e04-4fe15bfb1adso3710101e87.0
 for <xen-devel@lists.xenproject.org>; Fri, 01 Sep 2023 09:02:20 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 d23-20020ac25457000000b0050097974ec8sm685782lfn.216.2023.09.01.09.02.18
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 01 Sep 2023 09:02:19 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ee616c88-48e0-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1693584140; x=1694188940; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=ZExcTC6l7icIOR2qrAEQ8pDFYYgMv3JXQMxkelpXgsM=;
        b=WsmQx6I3i3ZXkaDeXw6ybYjH5AFYpTosQjjTzOcrqt5AXpwwlUZRiVtSKI6sdM9Vc0
         ZGlkGVSwp0X5iWMz/X1FmojT3hy4g6rcsAO1PX51t8TwYugTnb/ZtncGsPNI3OttcMwX
         OgMVlMVRDfkhRqw32Bt7TAt91GUcaDQZzWls7kbzHTmgEn9gfneRYY8zj0+od4fLvcoh
         XL18uFeNw+Opc4mhmWv2B1t3xVq5Ifmo6K/3Q+qdHckMtvFY/MfGfBDy5HrX0MJ/sOzo
         fSY+RQ9yOoa85IFndIMHY+yJ8ynvmkZqQ1036VoxlUj/S1NHTzUF+YvygF+JLhjOcdX+
         bkFw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693584140; x=1694188940;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=ZExcTC6l7icIOR2qrAEQ8pDFYYgMv3JXQMxkelpXgsM=;
        b=FBZjY6+ykNHRt/qWSOE32WjJEaVAPbxW/6Y11Z4XH3/38hILOX40Is+jKVmln/f/7n
         fPjFhU7ppSG+OrNHwd6T8TbneKMuMPcI9MerLKpqHr+5xQWcTvBt63X+G8+h3yq9BvnL
         ZpkUXD+nmiQGR5SsVhUDkFK2rkL3eQMQie2zlTTB34LU+Jh/j5iFS7jTWjXVpV0dPLM5
         65ye/OJ2wNWPsgCaiHANl7L6f8LVfMAAlSd8HhhFMTZPTqM9DU1fXg/x5/aOBMi7hDYa
         LJsyMDO9ECZi4PHNL0HaIhnP3Tp58nllEH49m+mx96EmbXhHIZfh02nv6lAXuNnQT1Lo
         UEBg==
X-Gm-Message-State: AOJu0YwUQypy5uVUerCnCxj0Fs6Je71+DMRbcVlVA6WH4fn9HpDx7tsA
	TqKP6NHsbnQgmwvVNSYo2VOdcpIu76I=
X-Google-Smtp-Source: AGHT+IHrE1tkN7tOKvQW/xBdmqZlTj8BSvl8duyv6UMkZFwwT6vATlSAS/rvWs8AAArj4GHZZruweg==
X-Received: by 2002:a19:8c09:0:b0:500:9d6c:913e with SMTP id o9-20020a198c09000000b005009d6c913emr1838417lfd.52.1693584139348;
        Fri, 01 Sep 2023 09:02:19 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Bob Eshleman <bobbyeshleman@gmail.com>,
	Alistair Francis <alistair.francis@wdc.com>,
	Connor Davis <connojdavis@gmail.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [PATCH v4 1/2] xen: asm-generic support
Date: Fri,  1 Sep 2023 19:02:14 +0300
Message-ID: <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1693583721.git.oleksii.kurochko@gmail.com>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Some headers are shared between individual architectures or are empty.
To avoid duplication of these headers, asm-generic is introduced.

With the following patch, an architecture uses generic headers
mentioned in the file arch/$(ARCH)/include/asm/Kbuild.

To use a generic header is needed to add to
arch/$(ARCH)/include/asm/Kbuild :
        generic-y += <name-of-header-file.h>

For each mentioned header in arch/$(ARCH)/include/asm/Kbuild,
kbuild will generate the necessary wrapper in
arch/$(ARCH)/include/generated/asm.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
Changes in V4:
 - introduce asm-generic support
 - update commit message
---
Changes in V3:
 - Rename stubs dir to asm-generic
---
Changes in V2:
 - Nothing changed.
---
 xen/Makefile                      | 10 +++++++++-
 xen/arch/arm/include/asm/Kbuild   |  1 +
 xen/arch/ppc/include/asm/Kbuild   |  1 +
 xen/arch/riscv/include/asm/Kbuild |  1 +
 xen/arch/x86/include/asm/Kbuild   |  1 +
 xen/scripts/Makefile.asm-generic  | 23 +++++++++++++++++++++++
 6 files changed, 36 insertions(+), 1 deletion(-)
 create mode 100644 xen/arch/arm/include/asm/Kbuild
 create mode 100644 xen/arch/ppc/include/asm/Kbuild
 create mode 100644 xen/arch/riscv/include/asm/Kbuild
 create mode 100644 xen/arch/x86/include/asm/Kbuild
 create mode 100644 xen/scripts/Makefile.asm-generic

diff --git a/xen/Makefile b/xen/Makefile
index f57e5a596c..698d6ddeb8 100644
--- a/xen/Makefile
+++ b/xen/Makefile
@@ -438,6 +438,7 @@ ifdef building_out_of_srctree
 endif
 CFLAGS += -I$(srctree)/include
 CFLAGS += -I$(srctree)/arch/$(SRCARCH)/include
+CFLAGS += -I$(srctree)/arch/$(SRCARCH)/include/generated
 
 # Note that link order matters!
 ALL_OBJS-y                := common/built_in.o
@@ -580,6 +581,7 @@ _clean:
 	rm -f $(TARGET).efi $(TARGET).efi.map $(TARGET).efi.elf $(TARGET).efi.stripped
 	rm -f asm-offsets.s arch/*/include/asm/asm-offsets.h
 	rm -f .banner .allconfig.tmp include/xen/compile.h
+	rm -rf arch/*/include/generated
 
 .PHONY: _distclean
 _distclean: clean
@@ -589,7 +591,7 @@ $(TARGET).gz: $(TARGET)
 	gzip -n -f -9 < $< > $@.new
 	mv $@.new $@
 
-$(TARGET): outputmakefile FORCE
+$(TARGET): outputmakefile asm-generic FORCE
 	$(Q)$(MAKE) $(build)=tools
 	$(Q)$(MAKE) $(build)=. include/xen/compile.h
 	$(Q)$(MAKE) $(build)=include all
@@ -667,6 +669,12 @@ endif # need-sub-make
 PHONY += FORCE
 FORCE:
 
+# Support for using generic headers in asm-generic
+PHONY += asm-generic
+asm-generic:
+	$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.asm-generic \
+	            obj=arch/$(SRCARCH)/include/generated/asm
+
 # Declare the contents of the PHONY variable as phony.  We keep that
 # information in a variable so we can use it in if_changed and friends.
 .PHONY: $(PHONY)
diff --git a/xen/arch/arm/include/asm/Kbuild b/xen/arch/arm/include/asm/Kbuild
new file mode 100644
index 0000000000..a4e40e534e
--- /dev/null
+++ b/xen/arch/arm/include/asm/Kbuild
@@ -0,0 +1 @@
+# SPDX-License-Identifier: GPL-2.0-only
diff --git a/xen/arch/ppc/include/asm/Kbuild b/xen/arch/ppc/include/asm/Kbuild
new file mode 100644
index 0000000000..a4e40e534e
--- /dev/null
+++ b/xen/arch/ppc/include/asm/Kbuild
@@ -0,0 +1 @@
+# SPDX-License-Identifier: GPL-2.0-only
diff --git a/xen/arch/riscv/include/asm/Kbuild b/xen/arch/riscv/include/asm/Kbuild
new file mode 100644
index 0000000000..a4e40e534e
--- /dev/null
+++ b/xen/arch/riscv/include/asm/Kbuild
@@ -0,0 +1 @@
+# SPDX-License-Identifier: GPL-2.0-only
diff --git a/xen/arch/x86/include/asm/Kbuild b/xen/arch/x86/include/asm/Kbuild
new file mode 100644
index 0000000000..a4e40e534e
--- /dev/null
+++ b/xen/arch/x86/include/asm/Kbuild
@@ -0,0 +1 @@
+# SPDX-License-Identifier: GPL-2.0-only
diff --git a/xen/scripts/Makefile.asm-generic b/xen/scripts/Makefile.asm-generic
new file mode 100644
index 0000000000..0aac3f50b8
--- /dev/null
+++ b/xen/scripts/Makefile.asm-generic
@@ -0,0 +1,23 @@
+# SPDX-License-Identifier: GPL-2.0
+# include/asm-generic contains a lot of files that are used
+# verbatim by several architectures.
+#
+# This Makefile reads the file arch/$(SRCARCH)/include/asm/Kbuild
+# and for each file listed in this file with generic-y creates
+# a small wrapper file in $(obj) (arch/$(SRCARCH)/include/generated/asm)
+
+kbuild-file := $(srctree)/arch/$(SRCARCH)/include/asm/Kbuild
+include $(kbuild-file)
+
+include scripts/Kbuild.include
+
+# Create output directory if not already present
+_dummy := $(shell [ -d $(obj) ] || mkdir -p $(obj))
+
+quiet_cmd_wrap = WRAP    $@
+cmd_wrap = echo "\#include <asm-generic/$*.h>" >$@
+
+all: $(patsubst %, $(obj)/%, $(generic-y))
+
+$(obj)/%.h:
+	$(call cmd,wrap)
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 16:34:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 16:34:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594676.928091 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc76Y-0002SH-Mk; Fri, 01 Sep 2023 16:34:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594676.928091; Fri, 01 Sep 2023 16:34:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc76Y-0002SA-IB; Fri, 01 Sep 2023 16:34:42 +0000
Received: by outflank-mailman (input) for mailman id 594676;
 Fri, 01 Sep 2023 16:34:41 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TF5h=ER=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qc76X-0001xc-7V
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 16:34:41 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6fa1c190-48e5-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 18:34:35 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id E5B5D4EE0737;
 Fri,  1 Sep 2023 18:34:33 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6fa1c190-48e5-11ee-9b0d-b553b5be7939
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>
Subject: [XEN PATCH 0/2] xen: deviate asm-only definitions for Rule 8.4
Date: Fri,  1 Sep 2023 18:34:18 +0200
Message-Id: <cover.1693585223.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As stated in 'docs/misra/rules.rst' the community decided to deviate from Rule 8.4
whereby the definitions concern entities that are only used in asm modules.
The chosen deviation mechanism is that of textual deviations, through the use of
/* SAF-n-safe */ comments.

Deviating variables needs more care, and is therefore postponed to another patch.

Nicola Vetrini (2):
  xen: apply deviation for Rule 8.4 (asm-only definitions)
  automation: execute SAF translation before the analysis with ECLAIR

 automation/eclair_analysis/prepare.sh | 3 +++
 docs/misra/safe.json                  | 8 ++++++++
 xen/arch/arm/cpuerrata.c              | 1 +
 xen/arch/arm/setup.c                  | 1 +
 xen/arch/arm/smpboot.c                | 1 +
 xen/arch/arm/traps.c                  | 7 +++++++
 xen/arch/x86/boot/cmdline.c           | 1 +
 xen/arch/x86/boot/reloc.c             | 1 +
 xen/arch/x86/extable.c                | 4 ++--
 xen/arch/x86/mm.c                     | 1 +
 xen/arch/x86/setup.c                  | 2 ++
 xen/arch/x86/traps.c                  | 9 +++++++++
 xen/common/efi/boot.c                 | 5 +++--
 13 files changed, 40 insertions(+), 4 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 16:34:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 16:34:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594674.928071 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc76W-0001xu-2v; Fri, 01 Sep 2023 16:34:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594674.928071; Fri, 01 Sep 2023 16:34:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc76W-0001xn-0C; Fri, 01 Sep 2023 16:34:40 +0000
Received: by outflank-mailman (input) for mailman id 594674;
 Fri, 01 Sep 2023 16:34:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TF5h=ER=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qc76T-0001xb-Ux
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 16:34:37 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 706bcf97-48e5-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 18:34:36 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id ED42F4EE073A;
 Fri,  1 Sep 2023 18:34:35 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 706bcf97-48e5-11ee-8783-cb3800f73035
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>
Subject: [XEN PATCH 2/2] automation: execute SAF translation before the analysis with ECLAIR
Date: Fri,  1 Sep 2023 18:34:20 +0200
Message-Id: <b766ea02253f76d9aaacf06a1ffba8bab45ca0b8.1693585223.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1693585223.git.nicola.vetrini@bugseng.com>
References: <cover.1693585223.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This allows local MISRA deviation comments to be translated into
the format recognized by ECLAIR.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 automation/eclair_analysis/prepare.sh | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/automation/eclair_analysis/prepare.sh b/automation/eclair_analysis/prepare.sh
index 275a1a3f517c..0cac5eba00ae 100755
--- a/automation/eclair_analysis/prepare.sh
+++ b/automation/eclair_analysis/prepare.sh
@@ -38,5 +38,8 @@ fi
     cd xen
     cp "${CONFIG_FILE}" .config
     make clean
+    find . -type f -name "*.safparse" -print -delete
     make -f ${script_dir}/Makefile.prepare prepare
+    # Translate the /* SAF-n-safe */ comments into ECLAIR CBTs
+    scripts/xen-analysis.py --run-eclair --no-build --no-clean
 )
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 16:34:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 16:34:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594675.928075 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc76W-000208-8z; Fri, 01 Sep 2023 16:34:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594675.928075; Fri, 01 Sep 2023 16:34:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc76W-0001zS-6Q; Fri, 01 Sep 2023 16:34:40 +0000
Received: by outflank-mailman (input) for mailman id 594675;
 Fri, 01 Sep 2023 16:34:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TF5h=ER=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qc76U-0001xb-K2
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 16:34:38 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7008a98c-48e5-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 18:34:36 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 110F14EE0739;
 Fri,  1 Sep 2023 18:34:35 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7008a98c-48e5-11ee-8783-cb3800f73035
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [XEN PATCH 1/2] xen: apply deviation for Rule 8.4 (asm-only definitions)
Date: Fri,  1 Sep 2023 18:34:19 +0200
Message-Id: <a260399a471b84f3c37c15ac735dc7aec6bd33ea.1693585223.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1693585223.git.nicola.vetrini@bugseng.com>
References: <cover.1693585223.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As stated in 'docs/misra/rules.rst' the functions that are used only by
asm modules do not need to conform to MISRA C:2012 Rule 8.4.
The deviations are carried out with a SAF comment.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Where the identifier for a function definition is on the next line w.r.t. the
return type, they have been put on the same line (e.g. efi_start) to avoid
stylistically questionable constructs, such as

int
/* SAF-1-safe */
func(void) {
	...
}

This change is motivated by a shortcoming in the automatic translation of SAF
comments into ECLAIR-specific ones; the resulting comment deviates only the
single line following it, rather than the whole declarator. ECLAIR comments do
support deviating more than one line, and an extension to the conversion script
is already being discussed.
---
 docs/misra/safe.json        | 8 ++++++++
 xen/arch/arm/cpuerrata.c    | 1 +
 xen/arch/arm/setup.c        | 1 +
 xen/arch/arm/smpboot.c      | 1 +
 xen/arch/arm/traps.c        | 7 +++++++
 xen/arch/x86/boot/cmdline.c | 1 +
 xen/arch/x86/boot/reloc.c   | 1 +
 xen/arch/x86/extable.c      | 4 ++--
 xen/arch/x86/mm.c           | 1 +
 xen/arch/x86/setup.c        | 2 ++
 xen/arch/x86/traps.c        | 9 +++++++++
 xen/common/efi/boot.c       | 5 +++--
 12 files changed, 37 insertions(+), 4 deletions(-)

diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index e3c8a1d8eb36..39c5c056c7d4 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -12,6 +12,14 @@
         },
         {
             "id": "SAF-1-safe",
+            "analyser": {
+                "eclair": "MC3R1.R8.4"
+            },
+            "name": "Rule 8.4: asm-only definition",
+            "text": "Functions and variables used only by asm modules do not need to have a visible declaration prior to their definition."
+        },
+        {
+            "id": "SAF-2-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/arch/arm/cpuerrata.c b/xen/arch/arm/cpuerrata.c
index fcf32892a7ef..9137958fb682 100644
--- a/xen/arch/arm/cpuerrata.c
+++ b/xen/arch/arm/cpuerrata.c
@@ -370,6 +370,7 @@ custom_param("spec-ctrl", parse_spec_ctrl);

 /* Arm64 only for now as for Arm32 the workaround is currently handled in C. */
 #ifdef CONFIG_ARM_64
+/* SAF-1-safe */
 void __init arm_enable_wa2_handling(const struct alt_instr *alt,
                                     const uint32_t *origptr,
                                     uint32_t *updptr, int nr_inst)
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index 44ccea03ca14..db748839d383 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -1077,6 +1077,7 @@ static bool __init is_dom0less_mode(void)
 size_t __read_mostly dcache_line_bytes;

 /* C entry point for boot CPU */
+/* SAF-1-safe */
 void __init start_xen(unsigned long boot_phys_offset,
                       unsigned long fdt_paddr)
 {
diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
index e107b86b7b44..6efd17eb3500 100644
--- a/xen/arch/arm/smpboot.c
+++ b/xen/arch/arm/smpboot.c
@@ -302,6 +302,7 @@ smp_prepare_cpus(void)
 }

 /* Boot the current CPU */
+/* SAF-1-safe */
 void start_secondary(void)
 {
     unsigned int cpuid = init_data.cpuid;
diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
index 46c9a4031b30..ce89f16404d9 100644
--- a/xen/arch/arm/traps.c
+++ b/xen/arch/arm/traps.c
@@ -161,6 +161,7 @@ void init_traps(void)
     isb();
 }

+/* SAF-1-safe */
 void __div0(void)
 {
     printk("Division by zero in hypervisor.\n");
@@ -1954,6 +1955,7 @@ static inline bool needs_ssbd_flip(struct vcpu *v)
  * Actions that needs to be done after entering the hypervisor from the
  * guest and before the interrupts are unmasked.
  */
+/* SAF-1-safe */
 void enter_hypervisor_from_guest_preirq(void)
 {
     struct vcpu *v = current;
@@ -1968,6 +1970,7 @@ void enter_hypervisor_from_guest_preirq(void)
  * guest and before we handle any request. Depending on the exception trap,
  * this may be called with interrupts unmasked.
  */
+/* SAF-1-safe */
 void enter_hypervisor_from_guest(void)
 {
     struct vcpu *v = current;
@@ -1996,6 +1999,7 @@ void enter_hypervisor_from_guest(void)
     vgic_sync_from_lrs(v);
 }

+/* SAF-1-safe */
 void do_trap_guest_sync(struct cpu_user_regs *regs)
 {
     const union hsr hsr = { .bits = regs->hsr };
@@ -2191,11 +2195,13 @@ void do_trap_guest_serror(struct cpu_user_regs *regs)
     __do_trap_serror(regs, true);
 }

+/* SAF-1-safe */
 void do_trap_irq(struct cpu_user_regs *regs)
 {
     gic_interrupt(regs, 0);
 }

+/* SAF-1-safe */
 void do_trap_fiq(struct cpu_user_regs *regs)
 {
     gic_interrupt(regs, 1);
@@ -2269,6 +2275,7 @@ static bool check_for_vcpu_work(void)
  *
  * The function will return with IRQ masked.
  */
+/* SAF-1-safe */
 void leave_hypervisor_to_guest(void)
 {
     local_irq_disable();
diff --git a/xen/arch/x86/boot/cmdline.c b/xen/arch/x86/boot/cmdline.c
index 74997703b31e..f9eee756aaed 100644
--- a/xen/arch/x86/boot/cmdline.c
+++ b/xen/arch/x86/boot/cmdline.c
@@ -340,6 +340,7 @@ static void vga_parse(const char *cmdline, early_boot_opts_t *ebo)
 }
 #endif

+/* SAF-1-safe */
 void __stdcall cmdline_parse_early(const char *cmdline, early_boot_opts_t *ebo)
 {
     if ( !cmdline )
diff --git a/xen/arch/x86/boot/reloc.c b/xen/arch/x86/boot/reloc.c
index e22bb974bf20..609b02cb73dc 100644
--- a/xen/arch/x86/boot/reloc.c
+++ b/xen/arch/x86/boot/reloc.c
@@ -347,6 +347,7 @@ static multiboot_info_t *mbi2_reloc(uint32_t mbi_in, uint32_t video_out)
     return mbi_out;
 }

+/* SAF-1-safe */
 void *__stdcall reloc(uint32_t magic, uint32_t in, uint32_t trampoline,
                       uint32_t video_info)
 {
diff --git a/xen/arch/x86/extable.c b/xen/arch/x86/extable.c
index c3771c2e3937..74b14246e9d8 100644
--- a/xen/arch/x86/extable.c
+++ b/xen/arch/x86/extable.c
@@ -194,8 +194,8 @@ static int __init cf_check stub_selftest(void)
 __initcall(stub_selftest);
 #endif

-unsigned long
-search_pre_exception_table(struct cpu_user_regs *regs)
+/* SAF-1-safe */
+unsigned long search_pre_exception_table(struct cpu_user_regs *regs)
 {
     unsigned long addr = regs->rip;
     unsigned long fixup = search_one_extable(
diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 28fdf820ef3b..828786932021 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -143,6 +143,7 @@
 /* Mapping of the fixmap space needed early. */
 l1_pgentry_t __section(".bss.page_aligned") __aligned(PAGE_SIZE)
     l1_fixmap[L1_PAGETABLE_ENTRIES];
+/* SAF-1-safe */
 l1_pgentry_t __section(".bss.page_aligned") __aligned(PAGE_SIZE)
     l1_fixmap_x[L1_PAGETABLE_ENTRIES];

diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index 3358d9a0ff63..7e2979f419af 100644
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -153,6 +153,7 @@ char __section(".init.bss.stack_aligned") __aligned(STACK_SIZE)
 void *stack_start = cpu0_stack + STACK_SIZE - sizeof(struct cpu_info);

 /* Used by the boot asm to stash the relocated multiboot info pointer. */
+/* SAF-1-safe */
 unsigned int __initdata multiboot_ptr;

 struct cpuinfo_x86 __read_mostly boot_cpu_data = { 0, 0, 0, 0, -1 };
@@ -968,6 +969,7 @@ static struct domain *__init create_dom0(const module_t *image,
 /* How much of the directmap is prebuilt at compile time. */
 #define PREBUILT_MAP_LIMIT (1 << L2_PAGETABLE_SHIFT)

+/* SAF-1-safe */
 void __init noreturn __start_xen(unsigned long mbi_p)
 {
     const char *memmap_type = NULL;
diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index a898e1f2d731..dead728ce329 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -833,6 +833,7 @@ void fatal_trap(const struct cpu_user_regs *regs, bool show_remote)
           (regs->eflags & X86_EFLAGS_IF) ? "" : " IN INTERRUPT CONTEXT");
 }

+/* SAF-1-safe */
 void do_unhandled_trap(struct cpu_user_regs *regs)
 {
     unsigned int trapnr = regs->entry_vector;
@@ -920,6 +921,7 @@ static bool extable_fixup(struct cpu_user_regs *regs, bool print)
     return true;
 }

+/* SAF-1-safe */
 void do_trap(struct cpu_user_regs *regs)
 {
     unsigned int trapnr = regs->entry_vector;
@@ -1152,6 +1154,7 @@ void cpuid_hypervisor_leaves(const struct vcpu *v, uint32_t leaf,
     }
 }

+/* SAF-1-safe */
 void do_invalid_op(struct cpu_user_regs *regs)
 {
     u8 bug_insn[2];
@@ -1197,6 +1200,7 @@ void do_invalid_op(struct cpu_user_regs *regs)
     panic("FATAL TRAP: vector = %d (invalid opcode)\n", X86_EXC_UD);
 }

+/* SAF-1-safe */
 void do_int3(struct cpu_user_regs *regs)
 {
     struct vcpu *curr = current;
@@ -1564,6 +1568,7 @@ static int fixup_page_fault(unsigned long addr, struct cpu_user_regs *regs)
     return 0;
 }

+/* SAF-1-safe */
 void do_page_fault(struct cpu_user_regs *regs)
 {
     unsigned long addr;
@@ -1641,6 +1646,7 @@ void do_page_fault(struct cpu_user_regs *regs)
  * during early boot (an issue was seen once, but was most likely a hardware
  * problem).
  */
+/* SAF-1-safe */
 void __init do_early_page_fault(struct cpu_user_regs *regs)
 {
     static unsigned int __initdata stuck;
@@ -1841,6 +1847,7 @@ void trigger_nmi_continuation(void)
     apic_wait_icr_idle();
 }

+/* SAF-1-safe */
 void do_device_not_available(struct cpu_user_regs *regs)
 {
 #ifdef CONFIG_PV
@@ -1877,6 +1884,7 @@ void do_device_not_available(struct cpu_user_regs *regs)
 #endif
 }

+/* SAF-1-safe */
 void do_debug(struct cpu_user_regs *regs)
 {
     unsigned long dr6;
@@ -2002,6 +2010,7 @@ void do_debug(struct cpu_user_regs *regs)
     pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
 }

+/* SAF-1-safe */
 void do_entry_CP(struct cpu_user_regs *regs)
 {
     static const char errors[][10] = {
diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
index 79a654af69b0..99cb033e2a6f 100644
--- a/xen/common/efi/boot.c
+++ b/xen/common/efi/boot.c
@@ -1253,8 +1253,9 @@ static void __init efi_exit_boot(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *Syste
     efi_fw_vendor = (void *)efi_fw_vendor + DIRECTMAP_VIRT_START;
 }

-void EFIAPI __init noreturn
-efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
+/* SAF-1-safe */
+void EFIAPI __init noreturn efi_start(EFI_HANDLE ImageHandle,
+                                      EFI_SYSTEM_TABLE *SystemTable)
 {
     static EFI_GUID __initdata loaded_image_guid = LOADED_IMAGE_PROTOCOL;
     static EFI_GUID __initdata shim_lock_guid = SHIM_LOCK_PROTOCOL_GUID;
--
2.34.1


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 16:40:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 16:40:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594700.928104 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc7CN-0004iN-Ae; Fri, 01 Sep 2023 16:40:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594700.928104; Fri, 01 Sep 2023 16:40:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc7CN-0004iG-7j; Fri, 01 Sep 2023 16:40:43 +0000
Received: by outflank-mailman (input) for mailman id 594700;
 Fri, 01 Sep 2023 16:40:42 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qc7CM-0004i6-Ae; Fri, 01 Sep 2023 16:40:42 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qc7CM-0004wK-1u; Fri, 01 Sep 2023 16:40:42 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qc7CL-0005K7-QD; Fri, 01 Sep 2023 16:40:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qc7CL-0002PZ-Pd; Fri, 01 Sep 2023 16:40:41 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=fJG50zm3uINo05ZBvPMDgXyonNZV0VvU84OYEmWfVto=; b=VrgrKMu8szCyPeJA7J2dIaRCNm
	pH2LXiJXFvp5tMQUGcUJrXDwhJ14GPHlozWLIrCHeeJXhXPvtQuVUKpdwCuTch+p3b+WP+RRBpX3A
	5a2pljbU9JDfhXJJDLAfx/CyiGk3JVUhcpmCC/SM2k3sVAXhjaw/DJcI68zzLUMPDXaY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182588-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182588: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-pvops:kernel-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:heisenbug
    qemu-mainline:test-amd64-i386-xl-xsm:xen-install:fail:heisenbug
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=17780edd81d27fcfdb7a802efc870a99788bd2fc
X-Osstest-Versions-That:
    qemuu=156618d9ea67f2f2e31d9dedd97f2dcccbe6808c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 01 Sep 2023 16:40:41 +0000

flight 182588 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182588/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-pvops             6 kernel-build   fail in 182584 REGR. vs. 182570

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  7 xen-install fail pass in 182584
 test-amd64-i386-xl-xsm        7 xen-install                fail pass in 182584

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-libvirt-xsm  1 build-check(1)           blocked in 182584 n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)           blocked in 182584 n/a
 test-arm64-arm64-xl           1 build-check(1)           blocked in 182584 n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)           blocked in 182584 n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)           blocked in 182584 n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)           blocked in 182584 n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)           blocked in 182584 n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)           blocked in 182584 n/a
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182570
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182570
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182570
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182570
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182570
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182570
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182570
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182570
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                17780edd81d27fcfdb7a802efc870a99788bd2fc
baseline version:
 qemuu                156618d9ea67f2f2e31d9dedd97f2dcccbe6808c

Last test of basis   182570  2023-08-30 16:37:20 Z    1 days
Testing same since   182584  2023-08-31 16:38:53 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alex Bennée <alex.bennee@linaro.org>
  Daniel P. Berrangé <berrange@redhat.com>
  Ilya Leoshkevich <iii@linux.ibm.com>
  Jean-Christophe Dubois <jcd@tribudubois.net>
  Markus Armbruster <armbru@redhat.com>
  Matheus Branco Borella <dark.ryu.550@gmail.com>
  Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
  Peter Maydell <peter.maydell@linaro.org>
  Richard Henderson <richard.henderson@linaro.org>
  Stefan Hajnoczi <stefanha@redhat.com>
  Stefano Stabellini <stefano.stabellini@amd.com>
  Thomas Huth <thuth@redhat.com>
  Vikram Garhwal <vikram.garhwal@amd.com>
  Warner Losh <imp@bsdimp.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       fail    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 965 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 17:14:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 17:14:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594710.928118 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc7j5-00005V-1C; Fri, 01 Sep 2023 17:14:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594710.928118; Fri, 01 Sep 2023 17:14:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc7j4-00005O-St; Fri, 01 Sep 2023 17:14:30 +0000
Received: by outflank-mailman (input) for mailman id 594710;
 Fri, 01 Sep 2023 17:14:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=bo8w=ER=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qc7j3-00005I-RI
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 17:14:29 +0000
Received: from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com
 [2a00:1450:4864:20::12e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 016f0cc6-48eb-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 19:14:27 +0200 (CEST)
Received: by mail-lf1-x12e.google.com with SMTP id
 2adb3069b0e04-500b0f06136so4114775e87.0
 for <xen-devel@lists.xenproject.org>; Fri, 01 Sep 2023 10:14:27 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 016f0cc6-48eb-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1693588467; x=1694193267; darn=lists.xenproject.org;
        h=to:subject:message-id:date:from:in-reply-to:references:mime-version
         :from:to:cc:subject:date:message-id:reply-to;
        bh=BjDbzrnGSnUK7H0wJDD3glLnq1OAJMvqikMxhZu2eAg=;
        b=Byl/8DundIjGc5w/MUusoNrOa12D2aeKG3RFz9hGJ8dkmTCVWsnGkFTzg2Ye7esVSV
         93wVe0QeIXryzY3N6FCIdNcfuCtbO0v1rU+cJLqU4yZcPeQsOFfG7EJnrpn274o84+CN
         JLBb5AvT+hgOMa6FRtckKlmt0Kt0wu6ZgS3ouOSw3rv6gKyUBMqXbyVKAnkahrEymqWS
         f+CH4b8OqcRh6ABk17NhpRD4KcRt01BSTEwL4hCNYIwusD/78PoU5waOPed1YypnDeVf
         K8LIhQkRGy3Eqt7cmd8QpMUdkzz2Jxpr6bknpBpmujXhKYPZ1RKr2qqaUnFrSYKXSAlY
         7ERg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693588467; x=1694193267;
        h=to:subject:message-id:date:from:in-reply-to:references:mime-version
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=BjDbzrnGSnUK7H0wJDD3glLnq1OAJMvqikMxhZu2eAg=;
        b=WSjRxR3SUbkxgh0MnSAGFupbhXkbOp775Mo6SWammlcfJ7kidNtPuMdffejSgPZE4I
         /6PiX8rNMlivUt97mGefYC9HnSRhRm4pXVeaQFJ+7QbqR5I92sa9R1Sq1t3yXQ343yl+
         FXVR+u43wjGXEpkCCW07d0VRucBjLjh/gE9I5/d7NyYPq3dSdxg+/VtWtqEIrCrZADoh
         rV8EEn6UeB9DwAQx8OtzSx+BUi8OG2iVyCielsC8F7290EA5k1MOfOAI/T06Oej7KytE
         48uI3qq1/WIJMCmHGpDhoeEjO3BcYUpvZXMKHVKvHiLiugnF8e2+OjwwJ5/yhYPef/gE
         T2rA==
X-Gm-Message-State: AOJu0YyziL2YPhNShb5oXSBJfPGP6jhcZJ0mRl1cMgqUskeGp2deQWhN
	L4h1IC3CB0mui2gWi09yqGF4YVIaSPIPLdTzc74I/PNj
X-Google-Smtp-Source: AGHT+IGw/K7DDCdPCi4pM+XZZvgv4ALT099vrc4/tSVBBSORcaiDl0VxdSRL0QXYMZrtyEwbvnf3Q8Josi12m/k8JBE=
X-Received: by 2002:a05:6512:2214:b0:4ff:a02e:a53f with SMTP id
 h20-20020a056512221400b004ffa02ea53fmr2642379lfu.52.1693588466449; Fri, 01
 Sep 2023 10:14:26 -0700 (PDT)
MIME-Version: 1.0
References: <cover.1693583721.git.oleksii.kurochko@gmail.com> <0d273a71bb3caca894485a33970a81ec9a9f44e5.1693583721.git.oleksii.kurochko@gmail.com>
In-Reply-To: <0d273a71bb3caca894485a33970a81ec9a9f44e5.1693583721.git.oleksii.kurochko@gmail.com>
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Date: Fri, 1 Sep 2023 19:14:15 +0200
Message-ID: <CAMacjJz4-Zd8ferGuZKh83qiUCw_hh91Rep903Qys6pAx3kDfQ@mail.gmail.com>
Subject: Re: [PATCH v4 2/2] xen: move arm/include/asm/vm_event.h to asm-generic
To: Xen-devel <xen-devel@lists.xenproject.org>
Content-Type: multipart/alternative; boundary="000000000000f03f8a06044f4ae3"

--000000000000f03f8a06044f4ae3
Content-Type: text/plain; charset="UTF-8"

The change which adds generic-y += vm_event.h to ARM's Kbuild was lost
during creation of the patch. Should be added in the next patch version

On Fri, Sep 1, 2023, 18:02 Oleksii Kurochko <oleksii.kurochko@gmail.com>
wrote:

> asm/vm_event.h is common for ARM and RISC-V so it will be moved to
> asm-generic dir.
>
> Original asm/vm_event.h from ARM was updated:
>  * use SPDX-License-Identifier.
>  * update comment messages of stubs.
>  * update #ifdef.
>  * change public/domctl.h to public/vm_event.h.
>
> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
> Acked-by: Stefano Stabellini <sstabellini@kernel.org>
> ---
> Changes in V4:
>  - update path of vm_event.h from include/asm-generic/asm to
> include/asm-generic
> ---
> Changes in V3:
>  - add Acked-by: Stefano Stabellini <sstabellini@kernel.org> for "xen:
> move arm/include/asm/vm_event.h to asm-generic"
>  - update SPDX tag.
>  - move asm/vm_event.h to asm-generic.
> ---
> Changes in V2:
>  - change public/domctl.h to public/vm_event.h.
>  - update commit message of [PATCH v2 2/2] xen: move
> arm/include/asm/vm_event.h to stubs
> ---
>  xen/include/asm-generic/vm_event.h | 55 ++++++++++++++++++++++++++++++
>  1 file changed, 55 insertions(+)
>  create mode 100644 xen/include/asm-generic/vm_event.h
>
> diff --git a/xen/include/asm-generic/vm_event.h
> b/xen/include/asm-generic/vm_event.h
> new file mode 100644
> index 0000000000..620c7b971c
> --- /dev/null
> +++ b/xen/include/asm-generic/vm_event.h
> @@ -0,0 +1,55 @@
> +/* SPDX-License-Identifier:  GPL-2.0-only */
> +/*
> + * vm_event.h: stubs for architecture specific vm_event handling routines
> + *
> + * Copyright (c) 2015 Tamas K Lengyel (tamas@tklengyel.com)
> + */
> +
> +#ifndef __ASM_GENERIC_VM_EVENT_H__
> +#define __ASM_GENERIC_VM_EVENT_H__
> +
> +#include <xen/sched.h>
> +#include <public/vm_event.h>
> +
> +static inline int vm_event_init_domain(struct domain *d)
> +{
> +    /* Nothing to do. */
> +    return 0;
> +}
> +
> +static inline void vm_event_cleanup_domain(struct domain *d)
> +{
> +    memset(&d->monitor, 0, sizeof(d->monitor));
> +}
> +
> +static inline void vm_event_toggle_singlestep(struct domain *d, struct
> vcpu *v,
> +                                              vm_event_response_t *rsp)
> +{
> +    /* Nothing to do. */
> +}
> +
> +static inline
> +void vm_event_register_write_resume(struct vcpu *v, vm_event_response_t
> *rsp)
> +{
> +    /* Nothing to do. */
> +}
> +
> +static inline
> +void vm_event_emulate_check(struct vcpu *v, vm_event_response_t *rsp)
> +{
> +    /* Nothing to do. */
> +}
> +
> +static inline
> +void vm_event_sync_event(struct vcpu *v, bool value)
> +{
> +    /* Nothing to do. */
> +}
> +
> +static inline
> +void vm_event_reset_vmtrace(struct vcpu *v)
> +{
> +    /* Nothing to do. */
> +}
> +
> +#endif /* __ASM_GENERIC_VM_EVENT_H__ */
> --
> 2.41.0
>
>

--000000000000f03f8a06044f4ae3
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto">The change which adds generic-y +=3D vm_event.h to ARM&#3=
9;s Kbuild was lost during creation of the patch. Should be added in the ne=
xt patch version=C2=A0</div><br><div class=3D"gmail_quote"><div dir=3D"ltr"=
 class=3D"gmail_attr">On Fri, Sep 1, 2023, 18:02 Oleksii Kurochko &lt;<a hr=
ef=3D"mailto:oleksii.kurochko@gmail.com">oleksii.kurochko@gmail.com</a>&gt;=
 wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8=
ex;border-left:1px #ccc solid;padding-left:1ex">asm/vm_event.h is common fo=
r ARM and RISC-V so it will be moved to<br>
asm-generic dir.<br>
<br>
Original asm/vm_event.h from ARM was updated:<br>
=C2=A0* use SPDX-License-Identifier.<br>
=C2=A0* update comment messages of stubs.<br>
=C2=A0* update #ifdef.<br>
=C2=A0* change public/domctl.h to public/vm_event.h.<br>
<br>
Signed-off-by: Oleksii Kurochko &lt;<a href=3D"mailto:oleksii.kurochko@gmai=
l.com" target=3D"_blank" rel=3D"noreferrer">oleksii.kurochko@gmail.com</a>&=
gt;<br>
Acked-by: Stefano Stabellini &lt;<a href=3D"mailto:sstabellini@kernel.org" =
target=3D"_blank" rel=3D"noreferrer">sstabellini@kernel.org</a>&gt;<br>
---<br>
Changes in V4:<br>
=C2=A0- update path of vm_event.h from include/asm-generic/asm to include/a=
sm-generic<br>
---<br>
Changes in V3:<br>
=C2=A0- add Acked-by: Stefano Stabellini &lt;<a href=3D"mailto:sstabellini@=
kernel.org" target=3D"_blank" rel=3D"noreferrer">sstabellini@kernel.org</a>=
&gt; for &quot;xen: move arm/include/asm/vm_event.h to asm-generic&quot;<br=
>
=C2=A0- update SPDX tag.<br>
=C2=A0- move asm/vm_event.h to asm-generic.<br>
---<br>
Changes in V2:<br>
=C2=A0- change public/domctl.h to public/vm_event.h.<br>
=C2=A0- update commit message of [PATCH v2 2/2] xen: move arm/include/asm/v=
m_event.h to stubs<br>
---<br>
=C2=A0xen/include/asm-generic/vm_event.h | 55 +++++++++++++++++++++++++++++=
+<br>
=C2=A01 file changed, 55 insertions(+)<br>
=C2=A0create mode 100644 xen/include/asm-generic/vm_event.h<br>
<br>
diff --git a/xen/include/asm-generic/vm_event.h b/xen/include/asm-generic/v=
m_event.h<br>
new file mode 100644<br>
index 0000000000..620c7b971c<br>
--- /dev/null<br>
+++ b/xen/include/asm-generic/vm_event.h<br>
@@ -0,0 +1,55 @@<br>
+/* SPDX-License-Identifier:=C2=A0 GPL-2.0-only */<br>
+/*<br>
+ * vm_event.h: stubs for architecture specific vm_event handling routines<=
br>
+ *<br>
+ * Copyright (c) 2015 Tamas K Lengyel (<a href=3D"mailto:tamas@tklengyel.c=
om" target=3D"_blank" rel=3D"noreferrer">tamas@tklengyel.com</a>)<br>
+ */<br>
+<br>
+#ifndef __ASM_GENERIC_VM_EVENT_H__<br>
+#define __ASM_GENERIC_VM_EVENT_H__<br>
+<br>
+#include &lt;xen/sched.h&gt;<br>
+#include &lt;public/vm_event.h&gt;<br>
+<br>
+static inline int vm_event_init_domain(struct domain *d)<br>
+{<br>
+=C2=A0 =C2=A0 /* Nothing to do. */<br>
+=C2=A0 =C2=A0 return 0;<br>
+}<br>
+<br>
+static inline void vm_event_cleanup_domain(struct domain *d)<br>
+{<br>
+=C2=A0 =C2=A0 memset(&amp;d-&gt;monitor, 0, sizeof(d-&gt;monitor));<br>
+}<br>
+<br>
+static inline void vm_event_toggle_singlestep(struct domain *d, struct vcp=
u *v,<br>
+=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 vm_event_response_t *rsp)<br>
+{<br>
+=C2=A0 =C2=A0 /* Nothing to do. */<br>
+}<br>
+<br>
+static inline<br>
+void vm_event_register_write_resume(struct vcpu *v, vm_event_response_t *r=
sp)<br>
+{<br>
+=C2=A0 =C2=A0 /* Nothing to do. */<br>
+}<br>
+<br>
+static inline<br>
+void vm_event_emulate_check(struct vcpu *v, vm_event_response_t *rsp)<br>
+{<br>
+=C2=A0 =C2=A0 /* Nothing to do. */<br>
+}<br>
+<br>
+static inline<br>
+void vm_event_sync_event(struct vcpu *v, bool value)<br>
+{<br>
+=C2=A0 =C2=A0 /* Nothing to do. */<br>
+}<br>
+<br>
+static inline<br>
+void vm_event_reset_vmtrace(struct vcpu *v)<br>
+{<br>
+=C2=A0 =C2=A0 /* Nothing to do. */<br>
+}<br>
+<br>
+#endif /* __ASM_GENERIC_VM_EVENT_H__ */<br>
-- <br>
2.41.0<br>
<br>
</blockquote></div>

--000000000000f03f8a06044f4ae3--


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 17:53:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 17:53:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594720.928130 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8K7-0004tu-Sg; Fri, 01 Sep 2023 17:52:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594720.928130; Fri, 01 Sep 2023 17:52:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8K7-0004tn-Pl; Fri, 01 Sep 2023 17:52:47 +0000
Received: by outflank-mailman (input) for mailman id 594720;
 Fri, 01 Sep 2023 17:52:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=dN/X=ER=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qc8K6-0004th-0z
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 17:52:46 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 588107ae-48f0-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 19:52:41 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 65C4682869BC;
 Fri,  1 Sep 2023 12:52:40 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id kJz7m8L4079d; Fri,  1 Sep 2023 12:52:39 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id AF61582869C3;
 Fri,  1 Sep 2023 12:52:39 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id BOqYLJSJWTBC; Fri,  1 Sep 2023 12:52:39 -0500 (CDT)
Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 4FEF882869BC;
 Fri,  1 Sep 2023 12:52:39 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 588107ae-48f0-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com AF61582869C3
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693590759; bh=0XDFDG0Pvv2a9icifvrij9NIn+EyWrsgWkSPj6li4Yk=;
	h=Message-ID:Date:MIME-Version:From:To;
	b=dte33sEVpLOPK3XthDxt5YGLGjce8vJ6t3fZ9qPHe70KWqmgt3wh+/f9aIFgwBCCo
	 AaoQqaRKOm0PIIe55Jh+iS+JaDu0mRwk21k824VbUUgR1IcmU4ILM5Ch2AOFCkDIHW
	 9W4cLwOZd/VNcc+batKD5SQjzD6fdCOHK5sLNgUY=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <cbcf7cff-5832-dcb6-4050-26f5fb10cd02@raptorengineering.com>
Date: Fri, 1 Sep 2023 12:52:38 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v4 3/3] xen/ppc: Implement initial Radix MMU support
Content-Language: en-US
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.1692744718.git.sanastasio@raptorengineering.com>
 <7cebc2962002c36ecfe712bf1bcb251e083910b8.1692744718.git.sanastasio@raptorengineering.com>
 <e942f853-3536-2033-f214-1beccdfc8240@suse.com>
 <8a9c0fba-132b-1245-caf7-d4a3a670e9d9@raptorengineering.com>
In-Reply-To: <8a9c0fba-132b-1245-caf7-d4a3a670e9d9@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 8/23/23 12:36 PM, Shawn Anastasio wrote:
> On 8/23/23 9:04 AM, Jan Beulich wrote:
>> On 23.08.2023 01:03, Shawn Anastasio wrote:
>>> Add code to construct early identity-mapped page tables as well as the
>>> required process and partition tables to enable the MMU.
>>>
>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>>
>> Acked-by: Jan Beulich <jbeulich@suse.com>

Just a quick ping to see if you are still good to merge this patch. If
you'd like me to submit a new revision let me know.


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 18:25:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 18:25:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594732.928185 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8py-0001IG-DG; Fri, 01 Sep 2023 18:25:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594732.928185; Fri, 01 Sep 2023 18:25:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8py-0001I9-Aa; Fri, 01 Sep 2023 18:25:42 +0000
Received: by outflank-mailman (input) for mailman id 594732;
 Fri, 01 Sep 2023 18:25:40 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=dN/X=ER=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qc8pw-0000IZ-Og
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 18:25:40 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f232414b-48f4-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 20:25:37 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 92A70828531B;
 Fri,  1 Sep 2023 13:25:36 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id jNuxlwHu1aex; Fri,  1 Sep 2023 13:25:34 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id EB70D82869D1;
 Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id NCvhdtl5UI3E; Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 9949382869BA;
 Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f232414b-48f4-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com EB70D82869D1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693592734; bh=XqscMeggdHpBGrDZahiDD7v0SGCTCoPhoxXSSB+rfus=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=J/ng6Dc8n6f1By1wayupS+j9VRPu96B3akpEyg56ukIuk6J6bboayfti5qoZm86VL
	 PuPacZjne6EVl59FwxJpAcHIurICEjddQpILhpWu73hGOXEF+Tsdi93WCIyANjzTx7
	 5rk6HY+P87O5LNuObb+xUViBxzbWwkQzQeB47eXE=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v3 4/5] xen/ppc: Add stub function and symbol definitions
Date: Fri,  1 Sep 2023 13:25:17 -0500
Message-Id: <9a78e38c741259a13b97de956739cae284db77db.1693592471.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1693592471.git.sanastasio@raptorengineering.com>
References: <cover.1693592471.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

Add stub function and symbol definitions required by common code. If the
file that the definition is supposed to be located in doesn't already
exist yet, temporarily place its definition in the new stubs.c

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
v3:
  - (stubs.c) Drop ack_none hook definition

v2:
  - Use BUG_ON("unimplemented") instead of BUG() for unimplemented functi=
ons
    to make searching easier.
  - (mm-radix.c) Drop total_pages definition
  - (mm-radix.c) Move __read_mostly from after variable name to before it=
 in
    declaration of `frametable_base_pdx`
  - (setup.c) Fix include order
  - (stubs.c) Drop stub .end hw_irq_controller hook

 xen/arch/ppc/Makefile   |   1 +
 xen/arch/ppc/mm-radix.c |  42 +++++
 xen/arch/ppc/setup.c    |   8 +
 xen/arch/ppc/stubs.c    | 339 ++++++++++++++++++++++++++++++++++++++++
 4 files changed, 390 insertions(+)
 create mode 100644 xen/arch/ppc/stubs.c

diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile
index a059ac4c0a..969910b3b6 100644
--- a/xen/arch/ppc/Makefile
+++ b/xen/arch/ppc/Makefile
@@ -5,6 +5,7 @@ obj-$(CONFIG_EARLY_PRINTK) +=3D early_printk.init.o
 obj-y +=3D mm-radix.o
 obj-y +=3D opal.o
 obj-y +=3D setup.o
+obj-y +=3D stubs.o
 obj-y +=3D tlb-radix.o

 $(TARGET): $(TARGET)-syms
diff --git a/xen/arch/ppc/mm-radix.c b/xen/arch/ppc/mm-radix.c
index 06129cef9c..11d0f27b60 100644
--- a/xen/arch/ppc/mm-radix.c
+++ b/xen/arch/ppc/mm-radix.c
@@ -265,3 +265,45 @@ void __init setup_initial_pagetables(void)
     /* Turn on the MMU */
     enable_mmu();
 }
+
+/*
+ * TODO: Implement the functions below
+ */
+unsigned long __read_mostly frametable_base_pdx;
+
+void put_page(struct page_info *p)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_dump_shared_mem_info(void)
+{
+    BUG_ON("unimplemented");
+}
+
+int xenmem_add_to_physmap_one(struct domain *d,
+                              unsigned int space,
+                              union add_to_physmap_extra extra,
+                              unsigned long idx,
+                              gfn_t gfn)
+{
+    BUG_ON("unimplemented");
+}
+
+int destroy_xen_mappings(unsigned long s, unsigned long e)
+{
+    BUG_ON("unimplemented");
+}
+
+int map_pages_to_xen(unsigned long virt,
+                     mfn_t mfn,
+                     unsigned long nr_mfns,
+                     unsigned int flags)
+{
+    BUG_ON("unimplemented");
+}
+
+int __init populate_pt_range(unsigned long virt, unsigned long nr_mfns)
+{
+    BUG_ON("unimplemented");
+}
diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c
index 0106e9c9da..d57cccc141 100644
--- a/xen/arch/ppc/setup.c
+++ b/xen/arch/ppc/setup.c
@@ -1,5 +1,8 @@
 /* SPDX-License-Identifier: GPL-2.0-or-later */
 #include <xen/init.h>
+#include <xen/lib.h>
+#include <xen/mm.h>
+#include <public/version.h>
 #include <asm/boot.h>
 #include <asm/early_printk.h>
 #include <asm/mm.h>
@@ -38,3 +41,8 @@ void __init noreturn start_xen(unsigned long r3, unsign=
ed long r4,

     unreachable();
 }
+
+void arch_get_xen_caps(xen_capabilities_info_t *info)
+{
+    BUG_ON("unimplemented");
+}
diff --git a/xen/arch/ppc/stubs.c b/xen/arch/ppc/stubs.c
new file mode 100644
index 0000000000..4c276b0e39
--- /dev/null
+++ b/xen/arch/ppc/stubs.c
@@ -0,0 +1,339 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#include <xen/cpumask.h>
+#include <xen/domain.h>
+#include <xen/irq.h>
+#include <xen/nodemask.h>
+#include <xen/time.h>
+#include <public/domctl.h>
+#include <public/vm_event.h>
+
+#include <asm/current.h>
+
+/* smpboot.c */
+
+cpumask_t cpu_online_map;
+cpumask_t cpu_present_map;
+cpumask_t cpu_possible_map;
+
+/* ID of the PCPU we're running on */
+DEFINE_PER_CPU(unsigned int, cpu_id);
+/* XXX these seem awfully x86ish... */
+/* representing HT siblings of each logical CPU */
+DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_sibling_mask);
+/* representing HT and core siblings of each logical CPU */
+DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_core_mask);
+
+nodemask_t __read_mostly node_online_map =3D { { [0] =3D 1UL } };
+
+/* time.c */
+
+s_time_t get_s_time(void)
+{
+    BUG_ON("unimplemented");
+}
+
+int reprogram_timer(s_time_t timeout)
+{
+    BUG_ON("unimplemented");
+}
+
+void send_timer_event(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+/* traps.c */
+
+void show_execution_state(const struct cpu_user_regs *regs)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_hypercall_tasklet_result(struct vcpu *v, long res)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_show_execution_state(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+/* shutdown.c */
+
+void machine_restart(unsigned int delay_millisecs)
+{
+    BUG_ON("unimplemented");
+}
+
+void machine_halt(void)
+{
+    BUG_ON("unimplemented");
+}
+
+/* vm_event.c */
+
+void vm_event_fill_regs(vm_event_request_t *req)
+{
+    BUG_ON("unimplemented");
+}
+
+void vm_event_set_registers(struct vcpu *v, vm_event_response_t *rsp)
+{
+    BUG_ON("unimplemented");
+}
+
+void vm_event_monitor_next_interrupt(struct vcpu *v)
+{
+    /* Not supported on PPC. */
+}
+
+/* domctl.c */
+void arch_get_domain_info(const struct domain *d,
+                          struct xen_domctl_getdomaininfo *info)
+{
+    BUG_ON("unimplemented");
+}
+
+/* monitor.c */
+
+int arch_monitor_domctl_event(struct domain *d,
+                              struct xen_domctl_monitor_op *mop)
+{
+    BUG_ON("unimplemented");
+}
+
+/* smp.c */
+
+void arch_flush_tlb_mask(const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+void smp_send_event_check_mask(const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+void smp_send_call_function_mask(const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+/* irq.c */
+
+struct pirq *alloc_pirq_struct(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+int pirq_guest_bind(struct vcpu *v, struct pirq *pirq, int will_share)
+{
+    BUG_ON("unimplemented");
+}
+
+void pirq_guest_unbind(struct domain *d, struct pirq *pirq)
+{
+    BUG_ON("unimplemented");
+}
+
+void pirq_set_affinity(struct domain *d, int pirq, const cpumask_t *mask=
)
+{
+    BUG_ON("unimplemented");
+}
+
+hw_irq_controller no_irq_type =3D {
+    .typename =3D "none",
+    .startup =3D irq_startup_none,
+    .shutdown =3D irq_shutdown_none,
+    .enable =3D irq_enable_none,
+    .disable =3D irq_disable_none,
+};
+
+int arch_init_one_irq_desc(struct irq_desc *desc)
+{
+    BUG_ON("unimplemented");
+}
+
+void smp_send_state_dump(unsigned int cpu)
+{
+    BUG_ON("unimplemented");
+}
+
+/* domain.c */
+
+DEFINE_PER_CPU(struct vcpu *, curr_vcpu);
+unsigned long __per_cpu_offset[NR_CPUS];
+
+void context_switch(struct vcpu *prev, struct vcpu *next)
+{
+    BUG_ON("unimplemented");
+}
+
+void continue_running(struct vcpu *same)
+{
+    BUG_ON("unimplemented");
+}
+
+void sync_local_execstate(void)
+{
+    BUG_ON("unimplemented");
+}
+
+void sync_vcpu_execstate(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void startup_cpu_idle_loop(void)
+{
+    BUG_ON("unimplemented");
+}
+
+void free_domain_struct(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void dump_pageframe_info(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void free_vcpu_struct(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_vcpu_create(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_vcpu_destroy(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_switch_to_aarch64_mode(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_domain_create(struct domain *d,
+                       struct xen_domctl_createdomain *config,
+                       unsigned int flags)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_domain_teardown(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_destroy(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_shutdown(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_pause(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_unpause(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_domain_soft_reset(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_creation_finished(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_set_info_guest(struct vcpu *v, vcpu_guest_context_u c)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_initialise_vcpu(struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) ar=
g)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_vcpu_reset(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+int domain_relinquish_resources(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_dump_domain_info(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_dump_vcpu_info(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_mark_events_pending(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_update_evtchn_irq(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_block_unless_event_pending(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_kick(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+struct domain *alloc_domain_struct(void)
+{
+    BUG_ON("unimplemented");
+}
+
+struct vcpu *alloc_vcpu_struct(const struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+unsigned long
+hypercall_create_continuation(unsigned int op, const char *format, ...)
+{
+    BUG_ON("unimplemented");
+}
+
+int __init parse_arch_dom0_param(const char *s, const char *e)
+{
+    BUG_ON("unimplemented");
+}
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 18:25:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 18:25:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594731.928176 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8px-00011p-7M; Fri, 01 Sep 2023 18:25:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594731.928176; Fri, 01 Sep 2023 18:25:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8px-00011g-31; Fri, 01 Sep 2023 18:25:41 +0000
Received: by outflank-mailman (input) for mailman id 594731;
 Fri, 01 Sep 2023 18:25:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=dN/X=ER=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qc8pv-0000IZ-OL
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 18:25:39 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f1aa62e4-48f4-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 20:25:36 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id A92D282854A4;
 Fri,  1 Sep 2023 13:25:35 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id cyQ6ZOzmALu4; Fri,  1 Sep 2023 13:25:34 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 3557D82869BA;
 Fri,  1 Sep 2023 13:25:34 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 9ylQYT-ju3v2; Fri,  1 Sep 2023 13:25:34 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id DD7498285A00;
 Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f1aa62e4-48f4-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 3557D82869BA
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693592734; bh=Q4fNHeOLiiVVS7Deb7ZBxNvaJPUUM5xGRRAG6kuerFA=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=iE7m+uSedeoIhN1P9ioDrhx1SzdeUF0IIQoIsMA/94UG6dKJTDSHCAfUg1FDk6zkk
	 3QvCWkHp+E5xUY2xK5NER5YxHYCvsqNgYHxNnpdlkYv54laUW5nlC2F/R1n/HZekxg
	 KhqogMcSaWPz/FbXT828eqL3caeGZ2vn/l5NJqLY=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v3 5/5] xen/ppc: Enable full Xen build
Date: Fri,  1 Sep 2023 13:25:18 -0500
Message-Id: <2dabc6da215a7270eaed060390a7720b3a63b901.1693591462.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1693591462.git.sanastasio@raptorengineering.com>
References: <cover.1693591462.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

Bring ppc's Makefile and arch.mk in line with arm and x86 to disable the
build overrides and enable the full Xen build.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
 xen/arch/ppc/Makefile | 16 +++++++++++++++-
 xen/arch/ppc/arch.mk  |  3 ---
 2 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile
index 969910b3b6..7b68b5ace2 100644
--- a/xen/arch/ppc/Makefile
+++ b/xen/arch/ppc/Makefile
@@ -12,10 +12,24 @@ $(TARGET): $(TARGET)-syms
 	cp -f $< $@
=20
 $(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds
-	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) -o $@
+	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< \
+	    $(objtree)/common/symbols-dummy.o -o $(dot-target).0
+	$(NM) -pa --format=3Dsysv $(dot-target).0 \
+		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
+		> $(dot-target).0.S
+	$(MAKE) $(build)=3D$(@D) $(dot-target).0.o
+	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< \
+	    $(dot-target).0.o -o $(dot-target).1
+	$(NM) -pa --format=3Dsysv $(dot-target).1 \
+		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
+		> $(dot-target).1.S
+	$(MAKE) $(build)=3D$(@D) $(dot-target).1.o
+	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) \
+	    $(dot-target).1.o -o $@
 	$(NM) -pa --format=3Dsysv $@ \
 		| $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \
 		> $@.map
+	rm -f $(@D)/.$(@F).[0-9]*
=20
 $(obj)/xen.lds: $(src)/xen.lds.S FORCE
 	$(call if_changed_dep,cpp_lds_S)
diff --git a/xen/arch/ppc/arch.mk b/xen/arch/ppc/arch.mk
index d05cbf1df5..917ad0e6a8 100644
--- a/xen/arch/ppc/arch.mk
+++ b/xen/arch/ppc/arch.mk
@@ -7,6 +7,3 @@ CFLAGS +=3D -m64 -mlittle-endian -mcpu=3D$(ppc-march-y)
 CFLAGS +=3D -mstrict-align -mcmodel=3Dmedium -mabi=3Delfv2 -fPIC -mno-al=
tivec -mno-vsx -msoft-float
=20
 LDFLAGS +=3D -m elf64lppc
-
-# TODO: Drop override when more of the build is working
-override ALL_OBJS-y =3D arch/$(SRCARCH)/built_in.o common/libfdt/built_i=
n.o lib/built_in.o
--=20
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 18:25:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 18:25:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594728.928146 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8pv-0000Iw-Cy; Fri, 01 Sep 2023 18:25:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594728.928146; Fri, 01 Sep 2023 18:25:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8pv-0000Ip-9n; Fri, 01 Sep 2023 18:25:39 +0000
Received: by outflank-mailman (input) for mailman id 594728;
 Fri, 01 Sep 2023 18:25:38 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=dN/X=ER=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qc8pu-0000IZ-2O
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 18:25:38 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f0f4788e-48f4-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 20:25:35 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 786D38285699;
 Fri,  1 Sep 2023 13:25:34 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id bk8AZN-nrLEC; Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id E9D3C82856E0;
 Fri,  1 Sep 2023 13:25:32 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id c-8IhFVnTeTB; Fri,  1 Sep 2023 13:25:32 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 7D75782854A4;
 Fri,  1 Sep 2023 13:25:32 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f0f4788e-48f4-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com E9D3C82856E0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693592732; bh=YvUuOVQ1VMhq3G/ldYRNM00UTD+hjEULrIEUv41wqaM=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=Sy9almopYutXKEfcarJhDPhovJsIUnxJlTtlT5Ia5MnAQgRuIR5q5H0/viFJSMU1Z
	 6kHn6kbGn+ibIDtFFAhJC/eygDzzyMGQ1+PzqPekrJ4a0HbaqpzaWV1kYHR8lFsmsI
	 uKUFKKUxt0vD4dsNerWfBXBY0YczeRABIji8Sp1U=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v3 1/5] xen/ppc: Implement atomic.h
Date: Fri,  1 Sep 2023 13:25:14 -0500
Message-Id: <917dc5517b69657b48e69c4100234383f5c70e0e.1693590982.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1693590982.git.sanastasio@raptorengineering.com>
References: <cover.1693590982.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

Implement atomic.h for PPC, based off of the original Xen 3.2
implementation.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
v3:
  - Drop full copyright text headers
  - Drop unnecessary spaces after casts
  - const-ize write_atomic_size
  - Don't use GNU 0-length array extension in read_atomic
  - Use "+m" asm constraint instead of separate "=3Dm" and "m"
  - Fix line-continuing backslash formatting in arch_cmpxchg

v2:
  - Fix style of asm block constraints to include required spaces
  - Fix macro local variable naming (use trailing underscore instead of
    leading)
  - Drop unnecessary parens in __atomic_add_unless

 xen/arch/ppc/include/asm/atomic.h | 384 ++++++++++++++++++++++++++++++
 xen/arch/ppc/include/asm/memory.h |  34 +++
 2 files changed, 418 insertions(+)
 create mode 100644 xen/arch/ppc/include/asm/atomic.h
 create mode 100644 xen/arch/ppc/include/asm/memory.h

diff --git a/xen/arch/ppc/include/asm/atomic.h b/xen/arch/ppc/include/asm=
/atomic.h
new file mode 100644
index 0000000000..06cd24ead4
--- /dev/null
+++ b/xen/arch/ppc/include/asm/atomic.h
@@ -0,0 +1,384 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * PowerPC64 atomic operations
+ *
+ * Copyright (C) 2001 Paul Mackerras <paulus@au.ibm.com>, IBM
+ * Copyright (C) 2001 Anton Blanchard <anton@au.ibm.com>, IBM
+ * Copyright Raptor Engineering LLC
+ */
+
+#ifndef _ASM_PPC64_ATOMIC_H_
+#define _ASM_PPC64_ATOMIC_H_
+
+#include <xen/atomic.h>
+
+#include <asm/memory.h>
+
+static inline int atomic_read(const atomic_t *v)
+{
+    return *(volatile int *)&v->counter;
+}
+
+static inline int _atomic_read(atomic_t v)
+{
+    return v.counter;
+}
+
+static inline void atomic_set(atomic_t *v, int i)
+{
+    v->counter =3D i;
+}
+
+static inline void _atomic_set(atomic_t *v, int i)
+{
+    v->counter =3D i;
+}
+
+void __bad_atomic_read(const volatile void *p, void *res);
+void __bad_atomic_size(void);
+
+#define build_atomic_read(name, insn, type)                             =
       \
+    static inline type name(const volatile type *addr)                  =
       \
+    {                                                                   =
       \
+        type ret;                                                       =
       \
+        asm volatile ( insn "%U1%X1 %0,%1" : "=3Dr" (ret) : "m<>" (*addr=
) );     \
+        return ret;                                                     =
       \
+    }
+
+#define build_atomic_write(name, insn, type)                            =
       \
+    static inline void name(volatile type *addr, type val)              =
       \
+    {                                                                   =
       \
+        asm volatile ( insn "%U0%X0 %1,%0" : "=3Dm<>" (*addr) : "r" (val=
) );     \
+    }
+
+#define build_add_sized(name, ldinsn, stinsn, type)                     =
       \
+    static inline void name(volatile type *addr, type val)              =
       \
+    {                                                                   =
       \
+        type t;                                                         =
       \
+        asm volatile ( "1: " ldinsn " %0,0,%3\n"                        =
       \
+                       "add%I2 %0,%0,%2\n"                              =
       \
+                       stinsn " %0,0,%3 \n"                             =
       \
+                       "bne- 1b\n"                                      =
       \
+                       : "=3D&r" (t), "+m" (*addr)                      =
         \
+                       : "r" (val), "r" (addr)                          =
       \
+                       : "cc" );                                        =
       \
+    }
+
+build_atomic_read(read_u8_atomic, "lbz", uint8_t)
+build_atomic_read(read_u16_atomic, "lhz", uint16_t)
+build_atomic_read(read_u32_atomic, "lwz", uint32_t)
+build_atomic_read(read_u64_atomic, "ldz", uint64_t)
+
+build_atomic_write(write_u8_atomic, "stb", uint8_t)
+build_atomic_write(write_u16_atomic, "sth", uint16_t)
+build_atomic_write(write_u32_atomic, "stw", uint32_t)
+build_atomic_write(write_u64_atomic, "std", uint64_t)
+
+build_add_sized(add_u8_sized, "lbarx", "stbcx.",uint8_t)
+build_add_sized(add_u16_sized, "lharx", "sthcx.", uint16_t)
+build_add_sized(add_u32_sized, "lwarx", "stwcx.", uint32_t)
+
+#undef build_atomic_read
+#undef build_atomic_write
+#undef build_add_sized
+
+static always_inline void read_atomic_size(const volatile void *p, void =
*res,
+                                           unsigned int size)
+{
+    ASSERT(IS_ALIGNED((vaddr_t)p, size));
+    switch ( size )
+    {
+    case 1:
+        *(uint8_t *)res =3D read_u8_atomic(p);
+        break;
+    case 2:
+        *(uint16_t *)res =3D read_u16_atomic(p);
+        break;
+    case 4:
+        *(uint32_t *)res =3D read_u32_atomic(p);
+        break;
+    case 8:
+        *(uint64_t *)res =3D read_u64_atomic(p);
+        break;
+    default:
+        __bad_atomic_read(p, res);
+        break;
+    }
+}
+
+static always_inline void write_atomic_size(volatile void *p, const void=
 *val,
+                                            unsigned int size)
+{
+    ASSERT(IS_ALIGNED((vaddr_t)p, size));
+    switch ( size )
+    {
+    case 1:
+        write_u8_atomic(p, *(const uint8_t *)val);
+        break;
+    case 2:
+        write_u16_atomic(p, *(const uint16_t *)val);
+        break;
+    case 4:
+        write_u32_atomic(p, *(const uint32_t *)val);
+        break;
+    case 8:
+        write_u64_atomic(p, *(const uint64_t *)val);
+        break;
+    default:
+        __bad_atomic_size();
+        break;
+    }
+}
+
+#define read_atomic(p)                                                  =
       \
+    ({                                                                  =
       \
+        union {                                                         =
       \
+            typeof(*(p)) val;                                           =
       \
+            char c[sizeof(*(p))];                                       =
       \
+        } x_;                                                           =
       \
+        read_atomic_size(p, x_.c, sizeof(*(p)));                        =
       \
+        x_.val;                                                         =
       \
+    })
+
+#define write_atomic(p, x)                                              =
       \
+    do                                                                  =
       \
+    {                                                                   =
       \
+        typeof(*(p)) x_ =3D (x);                                        =
         \
+        write_atomic_size(p, &x_, sizeof(*(p)));                        =
       \
+    } while ( 0 )
+
+#define add_sized(p, x)                                                 =
       \
+    ({                                                                  =
       \
+        typeof(*(p)) x_ =3D (x);                                        =
         \
+        switch ( sizeof(*(p)) )                                         =
       \
+        {                                                               =
       \
+        case 1:                                                         =
       \
+            add_u8_sized((uint8_t *)(p), x_);                           =
       \
+            break;                                                      =
       \
+        case 2:                                                         =
       \
+            add_u16_sized((uint16_t *)(p), x_);                         =
       \
+            break;                                                      =
       \
+        case 4:                                                         =
       \
+            add_u32_sized((uint32_t *)(p), x_);                         =
       \
+            break;                                                      =
       \
+        default:                                                        =
       \
+            __bad_atomic_size();                                        =
       \
+            break;                                                      =
       \
+        }                                                               =
       \
+    })
+
+static inline void atomic_add(int a, atomic_t *v)
+{
+    int t;
+
+    asm volatile ( "1: lwarx %0,0,%3\n"
+                   "add %0,%2,%0\n"
+                   "stwcx. %0,0,%3\n"
+                   "bne- 1b"
+                   : "=3D&r" (t), "+m" (v->counter)
+                   : "r" (a), "r" (&v->counter)
+                   : "cc" );
+}
+
+static inline int atomic_add_return(int a, atomic_t *v)
+{
+    int t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%2\n"
+                   "add %0,%1,%0\n"
+                   "stwcx. %0,0,%2\n"
+                   "bne- 1b"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=3D&r" (t)
+                   : "r" (a), "r" (&v->counter)
+                   : "cc", "memory" );
+
+    return t;
+}
+
+static inline void atomic_sub(int a, atomic_t *v)
+{
+    int t;
+
+    asm volatile ( "1: lwarx %0,0,%3\n"
+                   "subf %0,%2,%0\n"
+                   "stwcx. %0,0,%3\n"
+                   "bne- 1b"
+                   : "=3D&r" (t), "+m" (v->counter)
+                   : "r" (a), "r" (&v->counter)
+                   : "cc" );
+}
+
+static inline int atomic_sub_return(int a, atomic_t *v)
+{
+    int t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%2\n"
+                   "subf %0,%1,%0\n"
+                   "stwcx. %0,0,%2\n"
+                   "bne- 1b"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=3D&r" (t)
+                   : "r" (a), "r" (&v->counter)
+                   : "cc", "memory" );
+
+    return t;
+}
+
+static inline void atomic_inc(atomic_t *v)
+{
+    int t;
+
+    asm volatile ( "1: lwarx %0,0,%2\n"
+                   "addic %0,%0,1\n"
+                   "stwcx. %0,0,%2\n"
+                   "bne- 1b"
+                   : "=3D&r" (t), "+m" (v->counter)
+                   : "r" (&v->counter)
+                   : "cc" );
+}
+
+static inline int atomic_inc_return(atomic_t *v)
+{
+    int t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%1\n"
+                   "addic %0,%0,1\n"
+                   "stwcx. %0,0,%1\n"
+                   "bne- 1b"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=3D&r" (t)
+                   : "r" (&v->counter)
+                   : "cc", "memory" );
+
+    return t;
+}
+
+static inline void atomic_dec(atomic_t *v)
+{
+    int t;
+
+    asm volatile ( "1: lwarx %0,0,%2\n"
+                   "addic %0,%0,-1\n"
+                   "stwcx. %0,0,%2\n"
+                   "bne- 1b"
+                   : "=3D&r" (t), "+m" (v->counter)
+                   : "r" (&v->counter)
+                   : "cc" );
+}
+
+static inline int atomic_dec_return(atomic_t *v)
+{
+    int t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%1\n"
+                   "addic %0,%0,-1\n"
+                   "stwcx. %0,0,%1\n"
+                   "bne- 1b"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=3D&r" (t)
+                   : "r" (&v->counter)
+                   : "cc", "memory" );
+
+    return t;
+}
+
+/*
+ * Atomically test *v and decrement if it is greater than 0.
+ * The function returns the old value of *v minus 1.
+ */
+static inline int atomic_dec_if_positive(atomic_t *v)
+{
+    int t;
+
+    asm volatile( PPC_ATOMIC_ENTRY_BARRIER
+                  "1: lwarx %0,0,%1 # atomic_dec_if_positive\n"
+                  "addic. %0,%0,-1\n"
+                  "blt- 2f\n"
+                  "stwcx. %0,0,%1\n"
+                  "bne- 1b\n"
+                  PPC_ATOMIC_EXIT_BARRIER
+                  "2:"
+                  : "=3D&r" (t)
+                  : "r" (&v->counter)
+                  : "cc", "memory" );
+
+    return t;
+}
+
+static inline atomic_t atomic_compareandswap(atomic_t old, atomic_t new,
+                                             atomic_t *v)
+{
+    atomic_t rc;
+    rc.counter =3D __cmpxchg(&v->counter, old.counter, new.counter, size=
of(int));
+    return rc;
+}
+
+#define arch_cmpxchg(ptr, o, n)                                         =
       \
+    ({                                                                  =
       \
+        __typeof__(*(ptr)) o_ =3D (o);                                  =
         \
+        __typeof__(*(ptr)) n_ =3D (n);                                  =
         \
+        (__typeof__(*(ptr))) __cmpxchg((ptr), (unsigned long) o_,       =
       \
+                                       (unsigned long) n_, sizeof(*(ptr)=
));    \
+    })
+
+static inline int atomic_cmpxchg(atomic_t *v, int old, int new)
+{
+    return arch_cmpxchg(&v->counter, old, new);
+}
+
+#define ATOMIC_OP(op, insn, suffix, sign) \
+    static inline void atomic_##op(int a, atomic_t *v)                  =
         \
+    {                                                                   =
         \
+        int t;                                                          =
         \
+        asm volatile ( "1: lwarx %0,0,%3\n"                             =
         \
+                       insn "%I2" suffix " %0,%0,%2\n"                  =
         \
+                       "stwcx. %0,0,%3 \n"                              =
         \
+                       "bne- 1b\n"                                      =
         \
+                       : "=3D&r" (t), "+m" (v->counter)                 =
           \
+                       : "r" #sign (a), "r" (&v->counter)               =
         \
+                       : "cc" );                                        =
         \
+    }
+
+ATOMIC_OP(and, "and", ".", K)
+
+static inline int atomic_sub_and_test(int i, atomic_t *v)
+{
+    return atomic_sub_return(i, v) =3D=3D 0;
+}
+
+static inline int atomic_inc_and_test(atomic_t *v)
+{
+    return atomic_add_return(1, v) =3D=3D 0;
+}
+
+static inline int atomic_dec_and_test(atomic_t *v)
+{
+    return atomic_sub_return(1, v) =3D=3D 0;
+}
+
+static inline int atomic_add_negative(int i, atomic_t *v)
+{
+    return atomic_add_return(i, v) < 0;
+}
+
+static inline int __atomic_add_unless(atomic_t *v, int a, int u)
+{
+	int c, old;
+
+	c =3D atomic_read(v);
+	while (c !=3D u && (old =3D atomic_cmpxchg(v, c, c + a)) !=3D c)
+		c =3D old;
+	return c;
+}
+
+static inline int atomic_add_unless(atomic_t *v, int a, int u)
+{
+    return __atomic_add_unless(v, a, u);
+}
+
+#endif /* _ASM_PPC64_ATOMIC_H_ */
diff --git a/xen/arch/ppc/include/asm/memory.h b/xen/arch/ppc/include/asm=
/memory.h
new file mode 100644
index 0000000000..a159ba2d63
--- /dev/null
+++ b/xen/arch/ppc/include/asm/memory.h
@@ -0,0 +1,21 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Copyright (C) IBM Corp. 2005
+ *
+ * Authors: Jimi Xenidis <jimix@watson.ibm.com>
+ */
+
+#ifndef _ASM_MEMORY_H_
+#define _ASM_MEMORY_H_
+
+#include <xen/config.h>
+
+#ifdef CONFIG_SMP
+#define PPC_ATOMIC_ENTRY_BARRIER "sync\n"
+#define PPC_ATOMIC_EXIT_BARRIER  "sync\n"
+#else
+#define PPC_ATOMIC_ENTRY_BARRIER
+#define PPC_ATOMIC_EXIT_BARRIER
+#endif
+
+#endif
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 18:25:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 18:25:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594729.928152 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8pv-0000MF-KY; Fri, 01 Sep 2023 18:25:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594729.928152; Fri, 01 Sep 2023 18:25:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8pv-0000Lp-Gf; Fri, 01 Sep 2023 18:25:39 +0000
Received: by outflank-mailman (input) for mailman id 594729;
 Fri, 01 Sep 2023 18:25:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=dN/X=ER=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qc8pu-0000IY-9a
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 18:25:38 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f0e0bba7-48f4-11ee-8783-cb3800f73035;
 Fri, 01 Sep 2023 20:25:35 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id E9FC982856EE;
 Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id hk7pN1Vy8hSi; Fri,  1 Sep 2023 13:25:32 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 8D39D8285699;
 Fri,  1 Sep 2023 13:25:32 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id LRXrqQmT6By6; Fri,  1 Sep 2023 13:25:32 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 348E18285413;
 Fri,  1 Sep 2023 13:25:32 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f0e0bba7-48f4-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 8D39D8285699
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693592732; bh=djKn+q6TnbD7tmrQ3qegjd46k3TROOAefW6U0hVilSY=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=N2R6hYhpWVOw8EkLGPUdu33t3910QMnu8r09so02pD9xxshb5YNPla53+Q6Cuu6PP
	 waVzSwDNQhLYTMAsAuwQP4zab/qqK4PTjH9CzuzvbYZDouL9YL+MD9i5CCDhfudtDr
	 +DL5GLeDP4IZQLMBGHYpSqTZ928hj9O/Mm3ohq/4=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v3 0/5] ppc: Enable full Xen build
Date: Fri,  1 Sep 2023 13:25:13 -0500
Message-Id: <cover.1693590982.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

Hello all,

This patch series performs all of the additions necessary to drop the
build overrides for PPC and enable the full Xen build. Except in cases
where compatibile implementations already exist (e.g. atomic.h and
bitops.h), the newly added definitions are simple, unimplemented stubs
that just call BUG_ON("unimplemented").

A few miscellaneous changes were also made to non-ppc code as well,
specifically a few missing header fixes in common.

Thanks,
Shawn

--
v3: Address review comments from v2.

v2: Address review comments from v1. Some changes are still pending until
the following patches are merged:
  - [PATCH] mem-sharing: move (x86) / drop (Arm) arch_dump_shared_mem_inf=
o()
  https://lists.xen.org/archives/html/xen-devel/2023-08/msg00887.html

  - [PATCH] move max_page and total_pages to common code
  https://lists.xen.org/archives/html/xen-devel/2023-08/msg00874.html

Shawn Anastasio (5):
  xen/ppc: Implement atomic.h
  xen/ppc: Implement bitops.h
  xen/ppc: Define minimal stub headers required for full build
  xen/ppc: Add stub function and symbol definitions
  xen/ppc: Enable full Xen build

 xen/arch/ppc/Kconfig                     |   1 +
 xen/arch/ppc/Makefile                    |  17 +-
 xen/arch/ppc/arch.mk                     |   3 -
 xen/arch/ppc/include/asm/altp2m.h        |  25 ++
 xen/arch/ppc/include/asm/atomic.h        | 384 +++++++++++++++++++++++
 xen/arch/ppc/include/asm/bitops.h        | 330 ++++++++++++++++++-
 xen/arch/ppc/include/asm/bug.h           |   9 +
 xen/arch/ppc/include/asm/cache.h         |   2 +
 xen/arch/ppc/include/asm/config.h        |  10 +
 xen/arch/ppc/include/asm/cpufeature.h    |  10 +
 xen/arch/ppc/include/asm/current.h       |  43 +++
 xen/arch/ppc/include/asm/delay.h         |  12 +
 xen/arch/ppc/include/asm/device.h        |  53 ++++
 xen/arch/ppc/include/asm/div64.h         |  14 +
 xen/arch/ppc/include/asm/domain.h        |  47 +++
 xen/arch/ppc/include/asm/event.h         |  36 +++
 xen/arch/ppc/include/asm/flushtlb.h      |  24 ++
 xen/arch/ppc/include/asm/grant_table.h   |   5 +
 xen/arch/ppc/include/asm/guest_access.h  |  68 ++++
 xen/arch/ppc/include/asm/guest_atomics.h |  23 ++
 xen/arch/ppc/include/asm/hardirq.h       |  19 ++
 xen/arch/ppc/include/asm/hypercall.h     |   5 +
 xen/arch/ppc/include/asm/io.h            |  16 +
 xen/arch/ppc/include/asm/iocap.h         |   8 +
 xen/arch/ppc/include/asm/iommu.h         |   8 +
 xen/arch/ppc/include/asm/irq.h           |  33 ++
 xen/arch/ppc/include/asm/mem_access.h    |   5 +
 xen/arch/ppc/include/asm/memory.h        |  34 ++
 xen/arch/ppc/include/asm/mm.h            | 248 ++++++++++++++-
 xen/arch/ppc/include/asm/monitor.h       |  43 +++
 xen/arch/ppc/include/asm/nospec.h        |  15 +
 xen/arch/ppc/include/asm/numa.h          |  26 ++
 xen/arch/ppc/include/asm/p2m.h           | 105 +++++++
 xen/arch/ppc/include/asm/page.h          |  18 ++
 xen/arch/ppc/include/asm/paging.h        |   7 +
 xen/arch/ppc/include/asm/pci.h           |   7 +
 xen/arch/ppc/include/asm/percpu.h        |  24 ++
 xen/arch/ppc/include/asm/processor.h     |  10 +
 xen/arch/ppc/include/asm/random.h        |   9 +
 xen/arch/ppc/include/asm/setup.h         |   6 +
 xen/arch/ppc/include/asm/smp.h           |  18 ++
 xen/arch/ppc/include/asm/softirq.h       |   8 +
 xen/arch/ppc/include/asm/spinlock.h      |  15 +
 xen/arch/ppc/include/asm/system.h        | 224 ++++++++++++-
 xen/arch/ppc/include/asm/time.h          |  21 ++
 xen/arch/ppc/include/asm/vm_event.h      |  49 +++
 xen/arch/ppc/include/asm/xenoprof.h      |   0
 xen/arch/ppc/mm-radix.c                  |  44 ++-
 xen/arch/ppc/setup.c                     |   8 +
 xen/arch/ppc/stubs.c                     | 345 ++++++++++++++++++++
 xen/arch/ppc/tlb-radix.c                 |   2 +-
 xen/include/public/hvm/save.h            |   2 +
 xen/include/public/pmu.h                 |   2 +
 xen/include/public/xen.h                 |   2 +
 54 files changed, 2491 insertions(+), 11 deletions(-)
 create mode 100644 xen/arch/ppc/include/asm/altp2m.h
 create mode 100644 xen/arch/ppc/include/asm/atomic.h
 create mode 100644 xen/arch/ppc/include/asm/cpufeature.h
 create mode 100644 xen/arch/ppc/include/asm/current.h
 create mode 100644 xen/arch/ppc/include/asm/delay.h
 create mode 100644 xen/arch/ppc/include/asm/device.h
 create mode 100644 xen/arch/ppc/include/asm/div64.h
 create mode 100644 xen/arch/ppc/include/asm/domain.h
 create mode 100644 xen/arch/ppc/include/asm/event.h
 create mode 100644 xen/arch/ppc/include/asm/flushtlb.h
 create mode 100644 xen/arch/ppc/include/asm/grant_table.h
 create mode 100644 xen/arch/ppc/include/asm/guest_access.h
 create mode 100644 xen/arch/ppc/include/asm/guest_atomics.h
 create mode 100644 xen/arch/ppc/include/asm/hardirq.h
 create mode 100644 xen/arch/ppc/include/asm/hypercall.h
 create mode 100644 xen/arch/ppc/include/asm/io.h
 create mode 100644 xen/arch/ppc/include/asm/iocap.h
 create mode 100644 xen/arch/ppc/include/asm/iommu.h
 create mode 100644 xen/arch/ppc/include/asm/irq.h
 create mode 100644 xen/arch/ppc/include/asm/mem_access.h
 create mode 100644 xen/arch/ppc/include/asm/memory.h
 create mode 100644 xen/arch/ppc/include/asm/monitor.h
 create mode 100644 xen/arch/ppc/include/asm/nospec.h
 create mode 100644 xen/arch/ppc/include/asm/numa.h
 create mode 100644 xen/arch/ppc/include/asm/p2m.h
 create mode 100644 xen/arch/ppc/include/asm/paging.h
 create mode 100644 xen/arch/ppc/include/asm/pci.h
 create mode 100644 xen/arch/ppc/include/asm/percpu.h
 create mode 100644 xen/arch/ppc/include/asm/random.h
 create mode 100644 xen/arch/ppc/include/asm/setup.h
 create mode 100644 xen/arch/ppc/include/asm/smp.h
 create mode 100644 xen/arch/ppc/include/asm/softirq.h
 create mode 100644 xen/arch/ppc/include/asm/spinlock.h
 create mode 100644 xen/arch/ppc/include/asm/time.h
 create mode 100644 xen/arch/ppc/include/asm/vm_event.h
 create mode 100644 xen/arch/ppc/include/asm/xenoprof.h
 create mode 100644 xen/arch/ppc/stubs.c

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 18:25:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 18:25:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594733.928196 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8q0-0001av-Uv; Fri, 01 Sep 2023 18:25:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594733.928196; Fri, 01 Sep 2023 18:25:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8q0-0001ak-RH; Fri, 01 Sep 2023 18:25:44 +0000
Received: by outflank-mailman (input) for mailman id 594733;
 Fri, 01 Sep 2023 18:25:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=dN/X=ER=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qc8pz-0000IZ-8t
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 18:25:43 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f3bfb005-48f4-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 20:25:40 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 27C5782854A4;
 Fri,  1 Sep 2023 13:25:39 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id BevxThJWf6mm; Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id C793D8285413;
 Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id SHtDb85pGGfy; Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 41F1582856EE;
 Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f3bfb005-48f4-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com C793D8285413
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693592733; bh=31eWlJgNFrHwMe9AexAyrqKkjQ9MQ1NXnxeE4OASIto=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=OnPP/k54ApVFCbbTMTSAZ3VH03R946bz3gfj1SOSYDPC1HSxvGlYiGEO+fFHs306N
	 0LXncv/57HvGpzwP8+eH/9e0wgRb8s8E5586+mNVcP1Mc9J8zPKplxgEvN/txFiEIn
	 d+A9wfP76CA/XuD0PWnhPK2DOGhBOQBrje4E4JOM=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v3 3/5] xen/ppc: Define minimal stub headers required for full build
Date: Fri,  1 Sep 2023 13:25:16 -0500
Message-Id: <dd3d9c5d9ec94f9e1747ccc0fbf82629a58bddcb.1693590982.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1693590982.git.sanastasio@raptorengineering.com>
References: <cover.1693590982.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

Additionally, change inclusion of asm/ headers to corresponding xen/ ones
throughout arch/ppc now that they work.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
v3:
  - Drop procarea.h
  - Add SPDX headers to all headers touched or added by this patch
  - (altp2m.h) Use ASSERT_UNREACHABLE for function that is meant to
    stay unimplemented
  - (current.h) Consistently use plain C types in struct cpu_info
  - (current.h) Fix formatting of inline asm in get_cpu_info()
  - (device.h) Drop unnecessary DEVICE_GIC enumeration inherited from
    ARM
  - (div64.h) Drop underscore-prefixed macro variables, fix formatting
  - (domain.h) Drop unnecessary space after cast in guest_mode()
  - (guest_access.h) Clean up line wrapping of functions w/ many
    parameters
  - (guest_atomics.h) Avoid overly-long stub macros
  - (grant_table.h) Add include guard + SPDX
  - (hypercall.h) Add include guard + SPDX
  - (mem_access.h) Add include guard + SPDX
  - (mm.h) BUG_ON("unimplemented") for mfn_to_gfn/set_gpfn_from_mfn
  - (mm.h) Define PDX_GROUP_SHIFT in terms of XEN_PT_SHIFT_LVL_3
  - (monitor.h) BUG_ON("unimplemented") for arch_monitor_get_capabilities
  - (system.h) Fix formatting of inline assembly + macros
  - (time.h) Fix too-deep indentation

v2:
  - Use BUG_ON("unimplemented") instead of BUG() for unimplemented functi=
ons
    to make searching easier.
  - (altp2m.h) Drop Intel license in favor of an SPDX header
  - (altp2m.h) Drop <xen/sched.h> include in favor of <xen/bug.h> and
    forward declarations of struct domain and struct vcpu.
  - (bug.h) Add TODO comments above BUG and BUG_FRAME implementations
  - (desc.h) Drop desc.h
  - (mm.h) Drop <asm/config.h> include
  - (mm.h) Drop PGC_static definition
  - (mm.h) Drop max_page definition
  - (mm.h/mm-radix.c) Drop total_pages definition
  - (monitor.h) Drop <xen/sched.h> and <public/domctl.h> includes in favo=
r
    of just <xen/errno.h>
  - (page.h) Drop PAGE_ALIGN definition
  - (percpu.h) Drop <xen/types.h> include
  - (procarea.h) Drop license text in favor of SPDX header
  - (procarea.h) Drop unnecessary forward declarations and <xen/types.h>
    include
  - (processor.h) Fix macro parameter naming (drop leading underscore)
  - (processor.h) Add explanation comment to cpu_relax()
  - (regs.h) Drop stray hunk adding <xen/types.h> include
  - (system.h) Drop license text in favor of SPDX header
  - (system.h) Drop <xen/config.h> include
  - (opal.c) Drop stray hunk changing opal.c includes

 xen/arch/ppc/Kconfig                     |   1 +
 xen/arch/ppc/include/asm/altp2m.h        |  25 +++
 xen/arch/ppc/include/asm/bug.h           |   9 +
 xen/arch/ppc/include/asm/cache.h         |   2 +
 xen/arch/ppc/include/asm/config.h        |  10 +
 xen/arch/ppc/include/asm/cpufeature.h    |  10 +
 xen/arch/ppc/include/asm/current.h       |  43 ++++
 xen/arch/ppc/include/asm/delay.h         |  12 ++
 xen/arch/ppc/include/asm/device.h        |  53 +++++
 xen/arch/ppc/include/asm/div64.h         |  14 ++
 xen/arch/ppc/include/asm/domain.h        |  47 +++++
 xen/arch/ppc/include/asm/event.h         |  36 ++++
 xen/arch/ppc/include/asm/flushtlb.h      |  24 +++
 xen/arch/ppc/include/asm/grant_table.h   |   5 +
 xen/arch/ppc/include/asm/guest_access.h  |  68 +++++++
 xen/arch/ppc/include/asm/guest_atomics.h |  23 +++
 xen/arch/ppc/include/asm/hardirq.h       |  19 ++
 xen/arch/ppc/include/asm/hypercall.h     |   5 +
 xen/arch/ppc/include/asm/io.h            |  16 ++
 xen/arch/ppc/include/asm/iocap.h         |   8 +
 xen/arch/ppc/include/asm/iommu.h         |   8 +
 xen/arch/ppc/include/asm/irq.h           |  33 +++
 xen/arch/ppc/include/asm/mem_access.h    |   5 +
 xen/arch/ppc/include/asm/mm.h            | 248 ++++++++++++++++++++++-
 xen/arch/ppc/include/asm/monitor.h       |  43 ++++
 xen/arch/ppc/include/asm/nospec.h        |  15 ++
 xen/arch/ppc/include/asm/numa.h          |  26 +++
 xen/arch/ppc/include/asm/p2m.h           | 105 ++++++++++
 xen/arch/ppc/include/asm/page.h          |  18 ++
 xen/arch/ppc/include/asm/paging.h        |   7 +
 xen/arch/ppc/include/asm/pci.h           |   7 +
 xen/arch/ppc/include/asm/percpu.h        |  24 +++
 xen/arch/ppc/include/asm/processor.h     |  10 +
 xen/arch/ppc/include/asm/random.h        |   9 +
 xen/arch/ppc/include/asm/setup.h         |   6 +
 xen/arch/ppc/include/asm/smp.h           |  18 ++
 xen/arch/ppc/include/asm/softirq.h       |   8 +
 xen/arch/ppc/include/asm/spinlock.h      |  15 ++
 xen/arch/ppc/include/asm/system.h        | 224 +++++++++++++++++++-
 xen/arch/ppc/include/asm/time.h          |  21 ++
 xen/arch/ppc/include/asm/vm_event.h      |  49 +++++
 xen/arch/ppc/include/asm/xenoprof.h      |   0
 xen/arch/ppc/mm-radix.c                  |   2 +-
 xen/arch/ppc/tlb-radix.c                 |   2 +-
 xen/include/public/hvm/save.h            |   2 +
 xen/include/public/pmu.h                 |   2 +
 xen/include/public/xen.h                 |   2 +
 47 files changed, 1335 insertions(+), 4 deletions(-)
 create mode 100644 xen/arch/ppc/include/asm/altp2m.h
 create mode 100644 xen/arch/ppc/include/asm/cpufeature.h
 create mode 100644 xen/arch/ppc/include/asm/current.h
 create mode 100644 xen/arch/ppc/include/asm/delay.h
 create mode 100644 xen/arch/ppc/include/asm/device.h
 create mode 100644 xen/arch/ppc/include/asm/div64.h
 create mode 100644 xen/arch/ppc/include/asm/domain.h
 create mode 100644 xen/arch/ppc/include/asm/event.h
 create mode 100644 xen/arch/ppc/include/asm/flushtlb.h
 create mode 100644 xen/arch/ppc/include/asm/grant_table.h
 create mode 100644 xen/arch/ppc/include/asm/guest_access.h
 create mode 100644 xen/arch/ppc/include/asm/guest_atomics.h
 create mode 100644 xen/arch/ppc/include/asm/hardirq.h
 create mode 100644 xen/arch/ppc/include/asm/hypercall.h
 create mode 100644 xen/arch/ppc/include/asm/io.h
 create mode 100644 xen/arch/ppc/include/asm/iocap.h
 create mode 100644 xen/arch/ppc/include/asm/iommu.h
 create mode 100644 xen/arch/ppc/include/asm/irq.h
 create mode 100644 xen/arch/ppc/include/asm/mem_access.h
 create mode 100644 xen/arch/ppc/include/asm/monitor.h
 create mode 100644 xen/arch/ppc/include/asm/nospec.h
 create mode 100644 xen/arch/ppc/include/asm/numa.h
 create mode 100644 xen/arch/ppc/include/asm/p2m.h
 create mode 100644 xen/arch/ppc/include/asm/paging.h
 create mode 100644 xen/arch/ppc/include/asm/pci.h
 create mode 100644 xen/arch/ppc/include/asm/percpu.h
 create mode 100644 xen/arch/ppc/include/asm/random.h
 create mode 100644 xen/arch/ppc/include/asm/setup.h
 create mode 100644 xen/arch/ppc/include/asm/smp.h
 create mode 100644 xen/arch/ppc/include/asm/softirq.h
 create mode 100644 xen/arch/ppc/include/asm/spinlock.h
 create mode 100644 xen/arch/ppc/include/asm/time.h
 create mode 100644 xen/arch/ppc/include/asm/vm_event.h
 create mode 100644 xen/arch/ppc/include/asm/xenoprof.h

diff --git a/xen/arch/ppc/Kconfig b/xen/arch/ppc/Kconfig
index ab116ffb2a..a6eae597af 100644
--- a/xen/arch/ppc/Kconfig
+++ b/xen/arch/ppc/Kconfig
@@ -1,6 +1,7 @@
 config PPC
 	def_bool y
 	select HAS_DEVICE_TREE
+	select HAS_PDX

 config PPC64
 	def_bool y
diff --git a/xen/arch/ppc/include/asm/altp2m.h b/xen/arch/ppc/include/asm=
/altp2m.h
new file mode 100644
index 0000000000..bd5c9aa415
--- /dev/null
+++ b/xen/arch/ppc/include/asm/altp2m.h
@@ -0,0 +1,25 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_ALTP2M_H__
+#define __ASM_PPC_ALTP2M_H__
+
+#include <xen/bug.h>
+
+struct domain;
+struct vcpu;
+
+/* Alternate p2m on/off per domain */
+static inline bool altp2m_active(const struct domain *d)
+{
+    /* Not implemented on PPC. */
+    return false;
+}
+
+/* Alternate p2m VCPU */
+static inline uint16_t altp2m_vcpu_idx(const struct vcpu *v)
+{
+    /* Not implemented on PPC, should not be reached. */
+    ASSERT_UNREACHABLE();
+    return 0;
+}
+
+#endif /* __ASM_PPC_ALTP2M_H__ */
diff --git a/xen/arch/ppc/include/asm/bug.h b/xen/arch/ppc/include/asm/bu=
g.h
index e5e874b31c..35d4568402 100644
--- a/xen/arch/ppc/include/asm/bug.h
+++ b/xen/arch/ppc/include/asm/bug.h
@@ -4,6 +4,7 @@
 #define _ASM_PPC_BUG_H

 #include <xen/stringify.h>
+#include <asm/processor.h>

 /*
  * Power ISA guarantees that an instruction consisting of all zeroes is
@@ -15,4 +16,12 @@

 #define BUG_FN_REG r0

+/* TODO: implement this properly */
+#define BUG() do { \
+    die(); \
+} while (0)
+
+/* TODO: implement this properly */
+#define BUG_FRAME(type, line, ptr, second_frame, msg) do { } while (0)
+
 #endif /* _ASM_PPC_BUG_H */
diff --git a/xen/arch/ppc/include/asm/cache.h b/xen/arch/ppc/include/asm/=
cache.h
index 8a0a6b7b17..0d7323d789 100644
--- a/xen/arch/ppc/include/asm/cache.h
+++ b/xen/arch/ppc/include/asm/cache.h
@@ -3,4 +3,6 @@
 #ifndef _ASM_PPC_CACHE_H
 #define _ASM_PPC_CACHE_H

+#define __read_mostly __section(".data.read_mostly")
+
 #endif /* _ASM_PPC_CACHE_H */
diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm=
/config.h
index 30438d22d2..a11a09c570 100644
--- a/xen/arch/ppc/include/asm/config.h
+++ b/xen/arch/ppc/include/asm/config.h
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #ifndef __PPC_CONFIG_H__
 #define __PPC_CONFIG_H__

@@ -41,6 +42,15 @@

 #define XEN_VIRT_START _AC(0xc000000000000000, UL)

+#define VMAP_VIRT_START (XEN_VIRT_START + GB(1))
+#define VMAP_VIRT_SIZE  GB(1)
+
+#define FRAMETABLE_VIRT_START  (XEN_VIRT_START + GB(32))
+#define FRAMETABLE_SIZE        GB(32)
+#define FRAMETABLE_NR          (FRAMETABLE_SIZE / sizeof(*frame_table))
+
+#define HYPERVISOR_VIRT_START  XEN_VIRT_START
+
 #define SMP_CACHE_BYTES (1 << 6)

 #define STACK_ORDER 0
diff --git a/xen/arch/ppc/include/asm/cpufeature.h b/xen/arch/ppc/include=
/asm/cpufeature.h
new file mode 100644
index 0000000000..1c5946512b
--- /dev/null
+++ b/xen/arch/ppc/include/asm/cpufeature.h
@@ -0,0 +1,10 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_CPUFEATURE_H__
+#define __ASM_PPC_CPUFEATURE_H__
+
+static inline int cpu_nr_siblings(unsigned int cpu)
+{
+    return 1;
+}
+
+#endif /* __ASM_PPC_CPUFEATURE_H__ */
diff --git a/xen/arch/ppc/include/asm/current.h b/xen/arch/ppc/include/as=
m/current.h
new file mode 100644
index 0000000000..0ca06033f9
--- /dev/null
+++ b/xen/arch/ppc/include/asm/current.h
@@ -0,0 +1,43 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_CURRENT_H__
+#define __ASM_PPC_CURRENT_H__
+
+#include <xen/percpu.h>
+
+#ifndef __ASSEMBLY__
+
+struct vcpu;
+
+/* Which VCPU is "current" on this PCPU. */
+DECLARE_PER_CPU(struct vcpu *, curr_vcpu);
+
+#define current            (this_cpu(curr_vcpu))
+#define set_current(vcpu)  do { current =3D (vcpu); } while (0)
+#define get_cpu_current(cpu)  (per_cpu(curr_vcpu, cpu))
+
+/* Per-VCPU state that lives at the top of the stack */
+struct cpu_info {
+    struct cpu_user_regs guest_cpu_user_regs;
+    unsigned long elr;
+    unsigned int flags;
+};
+
+static inline struct cpu_info *get_cpu_info(void)
+{
+#ifdef __clang__
+    unsigned long sp;
+
+    asm ( "mr %0, 1" : "=3Dr" (sp) );
+#else
+    register unsigned long sp asm ("r1");
+#endif
+
+    return (struct cpu_info *)((sp & ~(STACK_SIZE - 1)) +
+                               STACK_SIZE - sizeof(struct cpu_info));
+}
+
+#define guest_cpu_user_regs() (&get_cpu_info()->guest_cpu_user_regs)
+
+#endif /* __ASSEMBLY__ */
+
+#endif /* __ASM_PPC_CURRENT_H__ */
diff --git a/xen/arch/ppc/include/asm/delay.h b/xen/arch/ppc/include/asm/=
delay.h
new file mode 100644
index 0000000000..da6635888b
--- /dev/null
+++ b/xen/arch/ppc/include/asm/delay.h
@@ -0,0 +1,12 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DELAY_H__
+#define __ASM_PPC_DELAY_H__
+
+#include <xen/lib.h>
+
+static inline void udelay(unsigned long usecs)
+{
+    BUG_ON("unimplemented");
+}
+
+#endif /* __ASM_PPC_DELAY_H__ */
diff --git a/xen/arch/ppc/include/asm/device.h b/xen/arch/ppc/include/asm=
/device.h
new file mode 100644
index 0000000000..b0cbfc1648
--- /dev/null
+++ b/xen/arch/ppc/include/asm/device.h
@@ -0,0 +1,53 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DEVICE_H__
+#define __ASM_PPC_DEVICE_H__
+
+enum device_type
+{
+    DEV_DT,
+    DEV_PCI,
+};
+
+struct device {
+    enum device_type type;
+#ifdef CONFIG_HAS_DEVICE_TREE
+    struct dt_device_node *of_node; /* Used by drivers imported from Lin=
ux */
+#endif
+};
+
+enum device_class
+{
+    DEVICE_SERIAL,
+    DEVICE_IOMMU,
+    DEVICE_PCI_HOSTBRIDGE,
+    /* Use for error */
+    DEVICE_UNKNOWN,
+};
+
+struct device_desc {
+    /* Device name */
+    const char *name;
+    /* Device class */
+    enum device_class class;
+    /* List of devices supported by this driver */
+    const struct dt_device_match *dt_match;
+    /*
+     * Device initialization.
+     *
+     * -EAGAIN is used to indicate that device probing is deferred.
+     */
+    int (*init)(struct dt_device_node *dev, const void *data);
+};
+
+typedef struct device device_t;
+
+#define DT_DEVICE_START(_name, _namestr, _class)                    \
+static const struct device_desc __dev_desc_##_name __used           \
+__section(".dev.info") =3D {                                          \
+    .name =3D _namestr,                                               \
+    .class =3D _class,                                                \
+
+#define DT_DEVICE_END                                               \
+};
+
+#endif /* __ASM_PPC_DEVICE_H__ */
diff --git a/xen/arch/ppc/include/asm/div64.h b/xen/arch/ppc/include/asm/=
div64.h
new file mode 100644
index 0000000000..d213e50585
--- /dev/null
+++ b/xen/arch/ppc/include/asm/div64.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DIV64_H__
+#define __ASM_PPC_DIV64_H__
+
+#include <xen/types.h>
+
+#define do_div(n, base) ({                       \
+    uint32_t base_ =3D (base);                     \
+    uint32_t rem_ =3D (uint64_t)(n) % base_;       \
+    (n) =3D (uint64_t)(n) / base_;                 \
+    rem_;                                        \
+})
+
+#endif /* __ASM_PPC_DIV64_H__ */
diff --git a/xen/arch/ppc/include/asm/domain.h b/xen/arch/ppc/include/asm=
/domain.h
new file mode 100644
index 0000000000..573276d0a8
--- /dev/null
+++ b/xen/arch/ppc/include/asm/domain.h
@@ -0,0 +1,47 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DOMAIN_H__
+#define __ASM_PPC_DOMAIN_H__
+
+#include <xen/xmalloc.h>
+#include <public/hvm/params.h>
+
+struct hvm_domain
+{
+    uint64_t              params[HVM_NR_PARAMS];
+};
+
+#define is_domain_direct_mapped(d) ((void)(d), 0)
+
+/* TODO: Implement */
+#define guest_mode(r) ({ (void)(r); BUG_ON("unimplemented"); 0; })
+
+struct arch_vcpu_io {
+};
+
+struct arch_vcpu {
+};
+
+struct arch_domain {
+    struct hvm_domain hvm;
+};
+
+#include <xen/sched.h>
+
+static inline struct vcpu_guest_context *alloc_vcpu_guest_context(void)
+{
+    return xmalloc(struct vcpu_guest_context);
+}
+
+static inline void free_vcpu_guest_context(struct vcpu_guest_context *vg=
c)
+{
+    xfree(vgc);
+}
+
+struct guest_memory_policy {};
+static inline void update_guest_memory_policy(struct vcpu *v,
+                                              struct guest_memory_policy=
 *gmp)
+{}
+
+static inline void arch_vcpu_block(struct vcpu *v) {}
+
+#endif /* __ASM_PPC_DOMAIN_H__ */
diff --git a/xen/arch/ppc/include/asm/event.h b/xen/arch/ppc/include/asm/=
event.h
new file mode 100644
index 0000000000..1b95ee4f61
--- /dev/null
+++ b/xen/arch/ppc/include/asm/event.h
@@ -0,0 +1,36 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_EVENT_H__
+#define __ASM_PPC_EVENT_H__
+
+#include <xen/lib.h>
+
+/* TODO: implement */
+static inline void vcpu_kick(struct vcpu *v) { BUG_ON("unimplemented"); =
}
+static inline void vcpu_mark_events_pending(struct vcpu *v) { BUG_ON("un=
implemented"); }
+static inline void vcpu_update_evtchn_irq(struct vcpu *v) { BUG_ON("unim=
plemented"); }
+static inline void vcpu_block_unless_event_pending(struct vcpu *v) { BUG=
_ON("unimplemented"); }
+
+static inline int vcpu_event_delivery_is_enabled(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+/* No arch specific virq definition now. Default to global. */
+static inline bool arch_virq_is_global(unsigned int virq)
+{
+    return true;
+}
+
+static inline int local_events_need_delivery(void)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+static inline void local_event_delivery_enable(void)
+{
+    BUG_ON("unimplemented");
+}
+
+#endif /* __ASM_PPC_EVENT_H__ */
diff --git a/xen/arch/ppc/include/asm/flushtlb.h b/xen/arch/ppc/include/a=
sm/flushtlb.h
new file mode 100644
index 0000000000..afcb740783
--- /dev/null
+++ b/xen/arch/ppc/include/asm/flushtlb.h
@@ -0,0 +1,24 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_FLUSHTLB_H__
+#define __ASM_PPC_FLUSHTLB_H__
+
+#include <xen/cpumask.h>
+
+/*
+ * Filter the given set of CPUs, removing those that definitely flushed =
their
+ * TLB since @page_timestamp.
+ */
+/* XXX lazy implementation just doesn't clear anything.... */
+static inline void tlbflush_filter(cpumask_t *mask, uint32_t page_timest=
amp) {}
+
+#define tlbflush_current_time()                 (0)
+
+static inline void page_set_tlbflush_timestamp(struct page_info *page)
+{
+    page->tlbflush_timestamp =3D tlbflush_current_time();
+}
+
+/* Flush specified CPUs' TLBs */
+void arch_flush_tlb_mask(const cpumask_t *mask);
+
+#endif /* __ASM_PPC_FLUSHTLB_H__ */
diff --git a/xen/arch/ppc/include/asm/grant_table.h b/xen/arch/ppc/includ=
e/asm/grant_table.h
new file mode 100644
index 0000000000..d0ff58dd3d
--- /dev/null
+++ b/xen/arch/ppc/include/asm/grant_table.h
@@ -0,0 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_GRANT_TABLE_H__
+#define __ASM_PPC_GRANT_TABLE_H__
+
+#endif /* __ASM_PPC_GRANT_TABLE_H__ */
diff --git a/xen/arch/ppc/include/asm/guest_access.h b/xen/arch/ppc/inclu=
de/asm/guest_access.h
new file mode 100644
index 0000000000..6546931911
--- /dev/null
+++ b/xen/arch/ppc/include/asm/guest_access.h
@@ -0,0 +1,68 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_GUEST_ACCESS_H__
+#define __ASM_PPC_GUEST_ACCESS_H__
+
+#include <xen/mm.h>
+
+/* TODO */
+
+static inline unsigned long raw_copy_to_guest(
+    void *to,
+    const void *from,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+static inline unsigned long raw_copy_to_guest_flush_dcache(
+    void *to,
+    const void *from,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+static inline unsigned long raw_copy_from_guest(
+    void *to,
+    const void *from,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+static inline unsigned long raw_clear_guest(void *to, unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+
+/* Copy data to guest physical address, then clean the region. */
+static inline unsigned long copy_to_guest_phys_flush_dcache(
+    struct domain *d,
+    paddr_t gpa,
+    void *buf,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+
+static inline int access_guest_memory_by_gpa(
+    struct domain *d,
+    paddr_t gpa,
+    void *buf,
+    uint32_t size,
+    bool is_write)
+{
+    BUG_ON("unimplemented");
+}
+
+
+#define __raw_copy_to_guest raw_copy_to_guest
+#define __raw_copy_from_guest raw_copy_from_guest
+#define __raw_clear_guest raw_clear_guest
+
+/*
+ * Pre-validate a guest handle.
+ * Allows use of faster __copy_* functions.
+ */
+/* All PPC guests are paging mode external and hence safe */
+#define guest_handle_okay(hnd, nr) (1)
+#define guest_handle_subrange_okay(hnd, first, last) (1)
+
+#endif /* __ASM_PPC_GUEST_ACCESS_H__ */
diff --git a/xen/arch/ppc/include/asm/guest_atomics.h b/xen/arch/ppc/incl=
ude/asm/guest_atomics.h
new file mode 100644
index 0000000000..1190e10bbb
--- /dev/null
+++ b/xen/arch/ppc/include/asm/guest_atomics.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_GUEST_ATOMICS_H__
+#define __ASM_PPC_GUEST_ATOMICS_H__
+
+#include <xen/lib.h>
+
+/* TODO: implement */
+#define unimplemented_guest_bit_op(d, nr, p) ({                         =
       \
+    (void)(d);                                                          =
       \
+    (void)(nr);                                                         =
       \
+    (void)(p);                                                          =
       \
+    BUG_ON("unimplemented");                                            =
       \
+    false;                                                              =
       \
+})
+
+#define guest_test_bit(d, nr, p)            unimplemented_guest_bit_op(d=
, nr, p)
+#define guest_clear_bit(d, nr, p)           unimplemented_guest_bit_op(d=
, nr, p)
+#define guest_set_bit(d, nr, p)             unimplemented_guest_bit_op(d=
, nr, p)
+#define guest_test_and_set_bit(d, nr, p)    unimplemented_guest_bit_op(d=
, nr, p)
+#define guest_test_and_clear_bit(d, nr, p)  unimplemented_guest_bit_op(d=
, nr, p)
+#define guest_test_and_change_bit(d, nr, p) unimplemented_guest_bit_op(d=
, nr, p)
+
+#endif /* __ASM_PPC_GUEST_ATOMICS_H__ */
diff --git a/xen/arch/ppc/include/asm/hardirq.h b/xen/arch/ppc/include/as=
m/hardirq.h
new file mode 100644
index 0000000000..343efc7e69
--- /dev/null
+++ b/xen/arch/ppc/include/asm/hardirq.h
@@ -0,0 +1,19 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_HARDIRQ_H__
+#define __ASM_PPC_HARDIRQ_H__
+
+#include <xen/cache.h>
+
+typedef struct {
+        unsigned long __softirq_pending;
+        unsigned int __local_irq_count;
+} __cacheline_aligned irq_cpustat_t;
+
+#include <xen/irq_cpustat.h>    /* Standard mappings for irq_cpustat_t a=
bove */
+
+#define in_irq() (local_irq_count(smp_processor_id()) !=3D 0)
+
+#define irq_enter()     (local_irq_count(smp_processor_id())++)
+#define irq_exit()      (local_irq_count(smp_processor_id())--)
+
+#endif /* __ASM_PPC_HARDIRQ_H__ */
diff --git a/xen/arch/ppc/include/asm/hypercall.h b/xen/arch/ppc/include/=
asm/hypercall.h
new file mode 100644
index 0000000000..1e8ca0ce9c
--- /dev/null
+++ b/xen/arch/ppc/include/asm/hypercall.h
@@ -0,0 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_HYPERCALL_H__
+#define __ASM_PPC_HYPERCALL_H__
+
+#endif /* __ASM_PPC_HYPERCALL_H__ */
diff --git a/xen/arch/ppc/include/asm/io.h b/xen/arch/ppc/include/asm/io.=
h
new file mode 100644
index 0000000000..85b5b27157
--- /dev/null
+++ b/xen/arch/ppc/include/asm/io.h
@@ -0,0 +1,16 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IO_H__
+#define __ASM_PPC_IO_H__
+
+#include <xen/lib.h>
+
+/* TODO */
+#define readb(c)        ({ (void)(c); BUG_ON("unimplemented"); 0; })
+#define readw(c)        ({ (void)(c); BUG_ON("unimplemented"); 0; })
+#define readl(c)        ({ (void)(c); BUG_ON("unimplemented"); 0; })
+
+#define writeb(v,c)     ({ (void)(v); (void)(c); BUG_ON("unimplemented")=
; })
+#define writew(v,c)     ({ (void)(v); (void)(c); BUG_ON("unimplemented")=
; })
+#define writel(v,c)     ({ (void)(v); (void)(c); BUG_ON("unimplemented")=
; })
+
+#endif /* __ASM_PPC_IO_H__ */
diff --git a/xen/arch/ppc/include/asm/iocap.h b/xen/arch/ppc/include/asm/=
iocap.h
new file mode 100644
index 0000000000..76bf13a70f
--- /dev/null
+++ b/xen/arch/ppc/include/asm/iocap.h
@@ -0,0 +1,8 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IOCAP_H__
+#define __ASM_PPC_IOCAP_H__
+
+#define cache_flush_permitted(d)                        \
+    (!rangeset_is_empty((d)->iomem_caps))
+
+#endif /* __ASM_PPC_IOCAP_H__ */
diff --git a/xen/arch/ppc/include/asm/iommu.h b/xen/arch/ppc/include/asm/=
iommu.h
new file mode 100644
index 0000000000..024ead3473
--- /dev/null
+++ b/xen/arch/ppc/include/asm/iommu.h
@@ -0,0 +1,8 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IOMMU_H__
+#define __ASM_PPC_IOMMU_H__
+
+struct arch_iommu {
+};
+
+#endif /* __ASM_PPC_IOMMU_H__ */
diff --git a/xen/arch/ppc/include/asm/irq.h b/xen/arch/ppc/include/asm/ir=
q.h
new file mode 100644
index 0000000000..5c37d0cf25
--- /dev/null
+++ b/xen/arch/ppc/include/asm/irq.h
@@ -0,0 +1,33 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IRQ_H__
+#define __ASM_PPC_IRQ_H__
+
+#include <xen/lib.h>
+#include <xen/device_tree.h>
+#include <public/device_tree_defs.h>
+
+/* TODO */
+#define nr_irqs 0U
+#define nr_static_irqs 0
+#define arch_hwdom_irqs(domid) 0U
+
+#define domain_pirq_to_irq(d, pirq) (pirq)
+
+struct arch_pirq {
+};
+
+struct arch_irq_desc {
+    unsigned int type;
+};
+
+static inline void arch_move_irqs(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+static inline int platform_get_irq(const struct dt_device_node *device, =
int index)
+{
+    BUG_ON("unimplemented");
+}
+
+#endif /* __ASM_PPC_IRQ_H__ */
diff --git a/xen/arch/ppc/include/asm/mem_access.h b/xen/arch/ppc/include=
/asm/mem_access.h
new file mode 100644
index 0000000000..e7986dfdbd
--- /dev/null
+++ b/xen/arch/ppc/include/asm/mem_access.h
@@ -0,0 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_MEM_ACCESS_H__
+#define __ASM_PPC_MEM_ACCESS_H__
+
+#endif /* __ASM_PPC_MEM_ACCESS_H__ */
diff --git a/xen/arch/ppc/include/asm/mm.h b/xen/arch/ppc/include/asm/mm.=
h
index c85a7ed686..124cfaddc2 100644
--- a/xen/arch/ppc/include/asm/mm.h
+++ b/xen/arch/ppc/include/asm/mm.h
@@ -1,10 +1,25 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #ifndef _ASM_PPC_MM_H
 #define _ASM_PPC_MM_H

+#include <public/xen.h>
+#include <xen/pdx.h>
+#include <xen/types.h>
+#include <asm/config.h>
 #include <asm/page-bits.h>
+#include <asm/page.h>
+
+void setup_initial_pagetables(void);

 #define pfn_to_paddr(pfn) ((paddr_t)(pfn) << PAGE_SHIFT)
 #define paddr_to_pfn(pa)  ((unsigned long)((pa) >> PAGE_SHIFT))
+#define paddr_to_pdx(pa)    mfn_to_pdx(maddr_to_mfn(pa))
+#define gfn_to_gaddr(gfn)   pfn_to_paddr(gfn_x(gfn))
+#define gaddr_to_gfn(ga)    _gfn(paddr_to_pfn(ga))
+#define mfn_to_maddr(mfn)   pfn_to_paddr(mfn_x(mfn))
+#define maddr_to_mfn(ma)    _mfn(paddr_to_pfn(ma))
+#define vmap_to_mfn(va)     maddr_to_mfn(virt_to_maddr((vaddr_t)va))
+#define vmap_to_page(va)    mfn_to_page(vmap_to_mfn(va))

 #define virt_to_maddr(va) ((paddr_t)((vaddr_t)(va) & PADDR_MASK))
 #define maddr_to_virt(pa) ((void *)((paddr_t)(pa) | XEN_VIRT_START))
@@ -13,6 +28,237 @@
 #define __pa(x)             (virt_to_maddr(x))
 #define __va(x)             (maddr_to_virt(x))

-void setup_initial_pagetables(void);
+/* Convert between Xen-heap virtual addresses and machine frame numbers.=
 */
+#define __virt_to_mfn(va) (virt_to_maddr(va) >> PAGE_SHIFT)
+#define __mfn_to_virt(mfn) (maddr_to_virt((paddr_t)(mfn) << PAGE_SHIFT))
+
+/* Convert between Xen-heap virtual addresses and page-info structures. =
*/
+static inline struct page_info *virt_to_page(const void *v)
+{
+    BUG_ON("unimplemented");
+    return NULL;
+}
+
+/*
+ * We define non-underscored wrappers for above conversion functions.
+ * These are overriden in various source files while underscored version
+ * remain intact.
+ */
+#define virt_to_mfn(va)     __virt_to_mfn(va)
+#define mfn_to_virt(mfn)    __mfn_to_virt(mfn)
+
+#define PG_shift(idx)   (BITS_PER_LONG - (idx))
+#define PG_mask(x, idx) (x ## UL << PG_shift(idx))
+
+#define PGT_none          PG_mask(0, 1)  /* no special uses of this page=
   */
+#define PGT_writable_page PG_mask(1, 1)  /* has writable mappings?      =
   */
+#define PGT_type_mask     PG_mask(1, 1)  /* Bits 31 or 63.              =
   */
+
+ /* 2-bit count of uses of this frame as its current type. */
+#define PGT_count_mask    PG_mask(3, 3)
+
+/* Cleared when the owning guest 'frees' this page. */
+#define _PGC_allocated    PG_shift(1)
+#define PGC_allocated     PG_mask(1, 1)
+/* Page is Xen heap? */
+#define _PGC_xen_heap     PG_shift(2)
+#define PGC_xen_heap      PG_mask(1, 2)
+/* Page is broken? */
+#define _PGC_broken       PG_shift(7)
+#define PGC_broken        PG_mask(1, 7)
+ /* Mutually-exclusive page states: { inuse, offlining, offlined, free }=
. */
+#define PGC_state         PG_mask(3, 9)
+#define PGC_state_inuse   PG_mask(0, 9)
+#define PGC_state_offlining PG_mask(1, 9)
+#define PGC_state_offlined PG_mask(2, 9)
+#define PGC_state_free    PG_mask(3, 9)
+#define page_state_is(pg, st) (((pg)->count_info&PGC_state) =3D=3D PGC_s=
tate_##st)
+/* Page is not reference counted */
+#define _PGC_extra        PG_shift(10)
+#define PGC_extra         PG_mask(1, 10)
+
+/* Count of references to this frame. */
+#define PGC_count_width   PG_shift(10)
+#define PGC_count_mask    ((1UL<<PGC_count_width)-1)
+
+/*
+ * Page needs to be scrubbed. Since this bit can only be set on a page t=
hat is
+ * free (i.e. in PGC_state_free) we can reuse PGC_allocated bit.
+ */
+#define _PGC_need_scrub   _PGC_allocated
+#define PGC_need_scrub    PGC_allocated
+
+#define is_xen_heap_page(page) ((page)->count_info & PGC_xen_heap)
+#define is_xen_heap_mfn(mfn) \
+    (mfn_valid(mfn) && is_xen_heap_page(mfn_to_page(mfn)))
+
+#define is_xen_fixed_mfn(mfn)                                   \
+    ((mfn_to_maddr(mfn) >=3D virt_to_maddr(&_start)) &&           \
+     (mfn_to_maddr(mfn) <=3D virt_to_maddr((vaddr_t)_end - 1)))
+
+#define page_get_owner(_p)    (_p)->v.inuse.domain
+#define page_set_owner(_p,_d) ((_p)->v.inuse.domain =3D (_d))
+
+/* TODO: implement */
+#define mfn_valid(mfn) ({ (void) (mfn); 0; })
+
+#define domain_set_alloc_bitsize(d) ((void)(d))
+#define domain_clamp_alloc_bitsize(d, b) (b)
+
+#define PFN_ORDER(pfn_) ((pfn_)->v.free.order)
+
+struct page_info
+{
+    /* Each frame can be threaded onto a doubly-linked list. */
+    struct page_list_entry list;
+
+    /* Reference count and various PGC_xxx flags and fields. */
+    unsigned long count_info;
+
+    /* Context-dependent fields follow... */
+    union {
+        /* Page is in use: ((count_info & PGC_count_mask) !=3D 0). */
+        struct {
+            /* Type reference count and various PGT_xxx flags and fields=
. */
+            unsigned long type_info;
+        } inuse;
+        /* Page is on a free list: ((count_info & PGC_count_mask) =3D=3D=
 0). */
+        union {
+            struct {
+                /*
+                 * Index of the first *possibly* unscrubbed page in the =
buddy.
+                 * One more bit than maximum possible order to accommoda=
te
+                 * INVALID_DIRTY_IDX.
+                 */
+#define INVALID_DIRTY_IDX ((1UL << (MAX_ORDER + 1)) - 1)
+                unsigned long first_dirty:MAX_ORDER + 1;
+
+                /* Do TLBs need flushing for safety before next page use=
? */
+                bool need_tlbflush:1;
+
+#define BUDDY_NOT_SCRUBBING    0
+#define BUDDY_SCRUBBING        1
+#define BUDDY_SCRUB_ABORT      2
+                unsigned long scrub_state:2;
+            };
+
+            unsigned long val;
+        } free;
+
+    } u;
+
+    union {
+        /* Page is in use, but not as a shadow. */
+        struct {
+            /* Owner of this page (zero if page is anonymous). */
+            struct domain *domain;
+        } inuse;
+
+        /* Page is on a free list. */
+        struct {
+            /* Order-size of the free chunk this page is the head of. */
+            unsigned int order;
+        } free;
+
+    } v;
+
+    union {
+        /*
+         * Timestamp from 'TLB clock', used to avoid extra safety flushe=
s.
+         * Only valid for: a) free pages, and b) pages with zero type co=
unt
+         */
+        u32 tlbflush_timestamp;
+    };
+    u64 pad;
+};
+
+
+#define FRAMETABLE_VIRT_START  (XEN_VIRT_START + GB(32))
+#define frame_table ((struct page_info *)FRAMETABLE_VIRT_START)
+
+/* PDX of the first page in the frame table. */
+extern unsigned long frametable_base_pdx;
+
+/* Convert between machine frame numbers and page-info structures. */
+#define mfn_to_page(mfn)                                            \
+    (frame_table + (mfn_to_pdx(mfn) - frametable_base_pdx))
+#define page_to_mfn(pg)                                             \
+    pdx_to_mfn((unsigned long)((pg) - frame_table) + frametable_base_pdx=
)
+
+static inline void *page_to_virt(const struct page_info *pg)
+{
+    return mfn_to_virt(mfn_x(page_to_mfn(pg)));
+}
+
+/*
+ * Common code requires get_page_type and put_page_type.
+ * We don't care about typecounts so we just do the minimum to make it
+ * happy.
+ */
+static inline int get_page_type(struct page_info *page, unsigned long ty=
pe)
+{
+    return 1;
+}
+
+static inline void put_page_type(struct page_info *page)
+{
+    return;
+}
+
+/* TODO */
+static inline bool get_page_nr(struct page_info *page, const struct doma=
in *domain,
+                        unsigned long nr)
+{
+    BUG_ON("unimplemented");
+}
+static inline void put_page_nr(struct page_info *page, unsigned long nr)
+{
+    BUG_ON("unimplemented");
+}
+
+static inline void put_page_and_type(struct page_info *page)
+{
+    put_page_type(page);
+    put_page(page);
+}
+
+/*
+ * PPC does not have an M2P, but common code expects a handful of
+ * M2P-related defines and functions. Provide dummy versions of these.
+ */
+#define INVALID_M2P_ENTRY        (~0UL)
+#define SHARED_M2P_ENTRY         (~0UL - 1UL)
+#define SHARED_M2P(_e)           ((_e) =3D=3D SHARED_M2P_ENTRY)
+
+#define set_gpfn_from_mfn(mfn, pfn) BUG_ON("unimplemented")
+#define mfn_to_gfn(d, mfn) ({ BUG_ON("unimplemented"); _gfn(0); })
+
+#define PDX_GROUP_SHIFT XEN_PT_SHIFT_LVL_3
+
+static inline unsigned long domain_get_maximum_gpfn(struct domain *d)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+static inline long arch_memory_op(int op, XEN_GUEST_HANDLE_PARAM(void) a=
rg)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+static inline unsigned int arch_get_dma_bitsize(void)
+{
+    return 32; /* TODO */
+}
+
+/*
+ * On PPC, all the RAM is currently direct mapped in Xen.
+ * Hence return always true.
+ */
+static inline bool arch_mfns_in_directmap(unsigned long mfn, unsigned lo=
ng nr)
+{
+    return true;
+}

 #endif /* _ASM_PPC_MM_H */
diff --git a/xen/arch/ppc/include/asm/monitor.h b/xen/arch/ppc/include/as=
m/monitor.h
new file mode 100644
index 0000000000..e5b0282bf1
--- /dev/null
+++ b/xen/arch/ppc/include/asm/monitor.h
@@ -0,0 +1,43 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/* Derived from xen/arch/arm/include/asm/monitor.h */
+#ifndef __ASM_PPC_MONITOR_H__
+#define __ASM_PPC_MONITOR_H__
+
+#include <public/domctl.h>
+#include <xen/errno.h>
+
+static inline
+void arch_monitor_allow_userspace(struct domain *d, bool allow_userspace=
)
+{
+}
+
+static inline
+int arch_monitor_domctl_op(struct domain *d, struct xen_domctl_monitor_o=
p *mop)
+{
+    /* No arch-specific monitor ops on PPC. */
+    return -EOPNOTSUPP;
+}
+
+int arch_monitor_domctl_event(struct domain *d,
+                              struct xen_domctl_monitor_op *mop);
+
+static inline
+int arch_monitor_init_domain(struct domain *d)
+{
+    /* No arch-specific domain initialization on PPC. */
+    return 0;
+}
+
+static inline
+void arch_monitor_cleanup_domain(struct domain *d)
+{
+    /* No arch-specific domain cleanup on PPC. */
+}
+
+static inline uint32_t arch_monitor_get_capabilities(struct domain *d)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+#endif /* __ASM_PPC_MONITOR_H__ */
diff --git a/xen/arch/ppc/include/asm/nospec.h b/xen/arch/ppc/include/asm=
/nospec.h
new file mode 100644
index 0000000000..b97322e48d
--- /dev/null
+++ b/xen/arch/ppc/include/asm/nospec.h
@@ -0,0 +1,15 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/* From arch/arm/include/asm/nospec.h. */
+#ifndef __ASM_PPC_NOSPEC_H__
+#define __ASM_PPC_NOSPEC_H__
+
+static inline bool evaluate_nospec(bool condition)
+{
+    return condition;
+}
+
+static inline void block_speculation(void)
+{
+}
+
+#endif /* __ASM_PPC_NOSPEC_H__ */
diff --git a/xen/arch/ppc/include/asm/numa.h b/xen/arch/ppc/include/asm/n=
uma.h
new file mode 100644
index 0000000000..d857bba2ba
--- /dev/null
+++ b/xen/arch/ppc/include/asm/numa.h
@@ -0,0 +1,26 @@
+#ifndef __ASM_PPC_NUMA_H__
+#define __ASM_PPC_NUMA_H__
+
+#include <xen/types.h>
+#include <xen/mm.h>
+
+typedef uint8_t nodeid_t;
+
+/* Fake one node for now. See also node_online_map. */
+#define cpu_to_node(cpu) 0
+#define node_to_cpumask(node)   (cpu_online_map)
+
+/*
+ * TODO: make first_valid_mfn static when NUMA is supported on Arm, this
+ * is required because the dummy helpers are using it.
+ */
+extern mfn_t first_valid_mfn;
+
+/* XXX: implement NUMA support */
+#define node_spanned_pages(nid) (max_page - mfn_x(first_valid_mfn))
+#define node_start_pfn(nid) (mfn_x(first_valid_mfn))
+#define __node_distance(a, b) (20)
+
+#define arch_want_default_dmazone() (false)
+
+#endif /* __ASM_PPC_NUMA_H__ */
diff --git a/xen/arch/ppc/include/asm/p2m.h b/xen/arch/ppc/include/asm/p2=
m.h
new file mode 100644
index 0000000000..591427bf42
--- /dev/null
+++ b/xen/arch/ppc/include/asm/p2m.h
@@ -0,0 +1,105 @@
+#ifndef __ASM_PPC_P2M_H__
+#define __ASM_PPC_P2M_H__
+
+#include <asm/page-bits.h>
+
+#define paddr_bits PADDR_BITS
+
+/*
+ * List of possible type for each page in the p2m entry.
+ * The number of available bit per page in the pte for this purpose is 4=
 bits.
+ * So it's possible to only have 16 fields. If we run out of value in th=
e
+ * future, it's possible to use higher value for pseudo-type and don't s=
tore
+ * them in the p2m entry.
+ */
+typedef enum {
+    p2m_invalid =3D 0,    /* Nothing mapped here */
+    p2m_ram_rw,         /* Normal read/write guest RAM */
+    p2m_ram_ro,         /* Read-only; writes are silently dropped */
+    p2m_mmio_direct_dev,/* Read/write mapping of genuine Device MMIO are=
a */
+    p2m_mmio_direct_nc, /* Read/write mapping of genuine MMIO area non-c=
acheable */
+    p2m_mmio_direct_c,  /* Read/write mapping of genuine MMIO area cache=
able */
+    p2m_map_foreign_rw, /* Read/write RAM pages from foreign domain */
+    p2m_map_foreign_ro, /* Read-only RAM pages from foreign domain */
+    p2m_grant_map_rw,   /* Read/write grant mapping */
+    p2m_grant_map_ro,   /* Read-only grant mapping */
+    /* The types below are only used to decide the page attribute in the=
 P2M */
+    p2m_iommu_map_rw,   /* Read/write iommu mapping */
+    p2m_iommu_map_ro,   /* Read-only iommu mapping */
+    p2m_max_real_type,  /* Types after this won't be store in the p2m */
+} p2m_type_t;
+
+#include <xen/p2m-common.h>
+
+static inline int get_page_and_type(struct page_info *page,
+                                    struct domain *domain,
+                                    unsigned long type)
+{
+    BUG_ON("unimplemented");
+    return 1;
+}
+
+/* Look up a GFN and take a reference count on the backing page. */
+typedef unsigned int p2m_query_t;
+#define P2M_ALLOC    (1u<<0)   /* Populate PoD and paged-out entries */
+#define P2M_UNSHARE  (1u<<1)   /* Break CoW sharing */
+
+static inline struct page_info *get_page_from_gfn(
+    struct domain *d, unsigned long gfn, p2m_type_t *t, p2m_query_t q)
+{
+    BUG_ON("unimplemented");
+    return NULL;
+}
+
+static inline void memory_type_changed(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+
+static inline int guest_physmap_mark_populate_on_demand(struct domain *d=
, unsigned long gfn,
+                                                        unsigned int ord=
er)
+{
+    BUG_ON("unimplemented");
+    return 1;
+}
+
+static inline int guest_physmap_add_entry(struct domain *d,
+                            gfn_t gfn,
+                            mfn_t mfn,
+                            unsigned long page_order,
+                            p2m_type_t t)
+{
+    BUG_ON("unimplemented");
+    return 1;
+}
+
+/* Untyped version for RAM only, for compatibility */
+static inline int __must_check
+guest_physmap_add_page(struct domain *d, gfn_t gfn, mfn_t mfn,
+                       unsigned int page_order)
+{
+    return guest_physmap_add_entry(d, gfn, mfn, page_order, p2m_ram_rw);
+}
+
+static inline mfn_t gfn_to_mfn(struct domain *d, gfn_t gfn)
+{
+    BUG_ON("unimplemented");
+    return _mfn(0);
+}
+
+static inline bool arch_acquire_resource_check(struct domain *d)
+{
+    /*
+     * The reference counting of foreign entries in set_foreign_p2m_entr=
y()
+     * is supported on PPC.
+     */
+    return true;
+}
+
+static inline void p2m_altp2m_check(struct vcpu *v, uint16_t idx)
+{
+    /* Not supported on PPC. */
+}
+
+#endif /* __ASM_PPC_P2M_H__ */
diff --git a/xen/arch/ppc/include/asm/page.h b/xen/arch/ppc/include/asm/p=
age.h
index 3c90e8bf19..7ede71e2fc 100644
--- a/xen/arch/ppc/include/asm/page.h
+++ b/xen/arch/ppc/include/asm/page.h
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #ifndef _ASM_PPC_PAGE_H
 #define _ASM_PPC_PAGE_H

@@ -36,6 +37,9 @@
 #define PTE_XEN_RO   (PTE_XEN_BASE | PTE_EAA_READ)
 #define PTE_XEN_RX   (PTE_XEN_BASE | PTE_EAA_READ | PTE_EAA_EXECUTE)

+/* TODO */
+#define PAGE_HYPERVISOR 0
+
 /*
  * Radix Tree layout for 64KB pages:
  *
@@ -177,4 +181,18 @@ struct prtb_entry {

 void tlbie_all(void);

+static inline void invalidate_icache(void)
+{
+    BUG_ON("unimplemented");
+}
+
+#define clear_page(page) memset(page, 0, PAGE_SIZE)
+#define copy_page(dp, sp) memcpy(dp, sp, PAGE_SIZE)
+
+/* TODO: Flush the dcache for an entire page. */
+static inline void flush_page_to_ram(unsigned long mfn, bool sync_icache=
)
+{
+    BUG_ON("unimplemented");
+}
+
 #endif /* _ASM_PPC_PAGE_H */
diff --git a/xen/arch/ppc/include/asm/paging.h b/xen/arch/ppc/include/asm=
/paging.h
new file mode 100644
index 0000000000..eccacece29
--- /dev/null
+++ b/xen/arch/ppc/include/asm/paging.h
@@ -0,0 +1,7 @@
+#ifndef __ASM_PPC_PAGING_H__
+#define __ASM_PPC_PAGING_H__
+
+#define paging_mode_translate(d)              (1)
+#define paging_mode_external(d)               (1)
+
+#endif /* __ASM_PPC_PAGING_H__ */
diff --git a/xen/arch/ppc/include/asm/pci.h b/xen/arch/ppc/include/asm/pc=
i.h
new file mode 100644
index 0000000000..e76c8e5475
--- /dev/null
+++ b/xen/arch/ppc/include/asm/pci.h
@@ -0,0 +1,7 @@
+#ifndef __ASM_PPC_PCI_H__
+#define __ASM_PPC_PCI_H__
+
+struct arch_pci_dev {
+};
+
+#endif /* __ASM_PPC_PCI_H__ */
diff --git a/xen/arch/ppc/include/asm/percpu.h b/xen/arch/ppc/include/asm=
/percpu.h
new file mode 100644
index 0000000000..e7c40c0f03
--- /dev/null
+++ b/xen/arch/ppc/include/asm/percpu.h
@@ -0,0 +1,24 @@
+#ifndef __PPC_PERCPU_H__
+#define __PPC_PERCPU_H__
+
+#ifndef __ASSEMBLY__
+
+extern char __per_cpu_start[], __per_cpu_data_end[];
+extern unsigned long __per_cpu_offset[NR_CPUS];
+void percpu_init_areas(void);
+
+#define smp_processor_id() 0 /* TODO: Fix this */
+
+#define per_cpu(var, cpu)  \
+    (*RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[cpu]))
+#define this_cpu(var) \
+    (*RELOC_HIDE(&per_cpu__##var, smp_processor_id()))
+
+#define per_cpu_ptr(var, cpu)  \
+    (*RELOC_HIDE(var, __per_cpu_offset[cpu]))
+#define this_cpu_ptr(var) \
+    (*RELOC_HIDE(var, smp_processor_id()))
+
+#endif
+
+#endif /* __PPC_PERCPU_H__ */
diff --git a/xen/arch/ppc/include/asm/processor.h b/xen/arch/ppc/include/=
asm/processor.h
index 6b70569eb8..0e651d0aa9 100644
--- a/xen/arch/ppc/include/asm/processor.h
+++ b/xen/arch/ppc/include/asm/processor.h
@@ -110,6 +110,10 @@
 /* Macro to adjust thread priority for hardware multithreading */
 #define HMT_very_low()  asm volatile ( "or %r31, %r31, %r31" )

+/* TODO: This isn't correct */
+#define cpu_to_core(cpu)   (0)
+#define cpu_to_socket(cpu) (0)
+
 /*
  * User-accessible registers: most of these need to be saved/restored
  * for every nested Xen invocation.
@@ -178,6 +182,12 @@ static inline void noreturn die(void)
         HMT_very_low();
 }

+/*
+ * Implemented on pre-POWER10 by setting HMT to low then to medium using
+ * the special OR forms. See HMT_very_low above.
+ */
+#define cpu_relax() asm volatile ( "or %r1, %r1, %r1; or %r2, %r2, %r2" =
)
+
 #endif /* __ASSEMBLY__ */

 #endif /* _ASM_PPC_PROCESSOR_H */
diff --git a/xen/arch/ppc/include/asm/random.h b/xen/arch/ppc/include/asm=
/random.h
new file mode 100644
index 0000000000..2f9e9bbae4
--- /dev/null
+++ b/xen/arch/ppc/include/asm/random.h
@@ -0,0 +1,9 @@
+#ifndef __ASM_PPC_RANDOM_H__
+#define __ASM_PPC_RANDOM_H__
+
+static inline unsigned int arch_get_random(void)
+{
+    return 0;
+}
+
+#endif /* __ASM_PPC_RANDOM_H__ */
diff --git a/xen/arch/ppc/include/asm/setup.h b/xen/arch/ppc/include/asm/=
setup.h
new file mode 100644
index 0000000000..e4f64879b6
--- /dev/null
+++ b/xen/arch/ppc/include/asm/setup.h
@@ -0,0 +1,6 @@
+#ifndef __ASM_PPC_SETUP_H__
+#define __ASM_PPC_SETUP_H__
+
+#define max_init_domid (0)
+
+#endif /* __ASM_PPC_SETUP_H__ */
diff --git a/xen/arch/ppc/include/asm/smp.h b/xen/arch/ppc/include/asm/sm=
p.h
new file mode 100644
index 0000000000..eca43f0e6c
--- /dev/null
+++ b/xen/arch/ppc/include/asm/smp.h
@@ -0,0 +1,18 @@
+#ifndef __ASM_SMP_H
+#define __ASM_SMP_H
+
+#include <xen/cpumask.h>
+#include <xen/percpu.h>
+
+DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
+DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
+
+#define cpu_is_offline(cpu) unlikely(!cpu_online(cpu))
+
+/*
+ * Do we, for platform reasons, need to actually keep CPUs online when w=
e
+ * would otherwise prefer them to be off?
+ */
+#define park_offline_cpus false
+
+#endif
diff --git a/xen/arch/ppc/include/asm/softirq.h b/xen/arch/ppc/include/as=
m/softirq.h
new file mode 100644
index 0000000000..a0b28a5e51
--- /dev/null
+++ b/xen/arch/ppc/include/asm/softirq.h
@@ -0,0 +1,8 @@
+#ifndef __ASM_PPC_SOFTIRQ_H__
+#define __ASM_PPC_SOFTIRQ_H__
+
+#define NR_ARCH_SOFTIRQS 0
+
+#define arch_skip_send_event_check(cpu) 0
+
+#endif /* __ASM_PPC_SOFTIRQ_H__ */
diff --git a/xen/arch/ppc/include/asm/spinlock.h b/xen/arch/ppc/include/a=
sm/spinlock.h
new file mode 100644
index 0000000000..4bdb4b1e98
--- /dev/null
+++ b/xen/arch/ppc/include/asm/spinlock.h
@@ -0,0 +1,15 @@
+#ifndef __ASM_SPINLOCK_H
+#define __ASM_SPINLOCK_H
+
+#define arch_lock_acquire_barrier() smp_mb()
+#define arch_lock_release_barrier() smp_mb()
+
+#define arch_lock_relax() cpu_relax()
+#define arch_lock_signal()
+#define arch_lock_signal_wmb()      \
+({                                  \
+    smp_wmb();                      \
+    arch_lock_signal();             \
+})
+
+#endif /* __ASM_SPINLOCK_H */
diff --git a/xen/arch/ppc/include/asm/system.h b/xen/arch/ppc/include/asm=
/system.h
index 94091df644..e13ce27598 100644
--- a/xen/arch/ppc/include/asm/system.h
+++ b/xen/arch/ppc/include/asm/system.h
@@ -1,6 +1,228 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Copyright (C) IBM Corp. 2005
+ * Copyright (C) Raptor Engineering LLC
+ *
+ * Authors: Jimi Xenidis <jimix@watson.ibm.com>
+ *          Shawn Anastasio <sanastasio@raptorengineering.com>
+ */
+
 #ifndef _ASM_SYSTEM_H_
 #define _ASM_SYSTEM_H_

-#define smp_wmb() __asm__ __volatile__ ( "lwsync" : : : "memory" )
+#include <xen/lib.h>
+#include <asm/memory.h>
+#include <asm/time.h>
+#include <asm/processor.h>
+#include <asm/msr.h>
+
+#define xchg(ptr,x) 							                               \
+({									                                           \
+	__typeof__(*(ptr)) _x_ =3D (x);					                           \
+	(__typeof__(*(ptr))) __xchg((ptr), (unsigned long)_x_, sizeof(*(ptr)));=
    \
+})
+
+#define build_xchg(fn, type, ldinsn, stinsn) \
+static inline unsigned long fn(volatile type *m, unsigned long val)     =
       \
+{                                                                       =
       \
+    unsigned long dummy;                                                =
       \
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER                             =
       \
+                   "1: " ldinsn " %0,0,%3\n"                            =
       \
+                   stinsn " %2,0,%3\n"                                  =
       \
+                   "2:  bne- 1b"                                        =
       \
+                   PPC_ATOMIC_EXIT_BARRIER                              =
       \
+                   : "=3D&r" (dummy), "=3Dm" (*m)                       =
           \
+                   : "r" (val), "r" (m)                                 =
       \
+                   : "cc", "memory" );                                  =
       \
+    return dummy;                                                       =
       \
+}
+
+build_xchg(__xchg_u8, uint8_t, "lbarx", "stbcx.")
+build_xchg(__xchg_u16, uint16_t, "lharx", "sthcx.")
+build_xchg(__xchg_u32, uint32_t, "lwarx", "stwcx.")
+build_xchg(__xchg_u64, uint64_t, "ldarx", "stdcx.")
+
+#undef build_xchg
+
+/*
+ * This function doesn't exist, so you'll get a linker error
+ * if something tries to do an invalid xchg().
+ */
+extern void __xchg_called_with_bad_pointer(void);
+
+static inline unsigned long __xchg(volatile void *ptr, unsigned long x,
+                                   int size)
+{
+    switch (size) {
+    case 1:
+        return __xchg_u8(ptr, x);
+    case 2:
+        return __xchg_u16(ptr, x);
+    case 4:
+        return __xchg_u32(ptr, x);
+    case 8:
+        return __xchg_u64(ptr, x);
+    }
+    __xchg_called_with_bad_pointer();
+    return x;
+}
+
+
+static inline unsigned long __cmpxchg_u32(volatile int *p, int old, int =
new)
+{
+    unsigned int prev;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx   %0,0,%2\n"
+                   "cmpw    0,%0,%3\n"
+                   "bne-    2f\n "
+                   "stwcx.  %4,0,%2\n"
+                   "bne-    1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER "\n"
+                   "2:"
+                   : "=3D&r" (prev), "=3Dm" (*p)
+                   : "r" (p), "r" (old), "r" (new), "m" (*p)
+                   : "cc", "memory" );
+
+    return prev;
+}
+
+static inline unsigned long __cmpxchg_u64(volatile long *p, unsigned lon=
g old,
+                                          unsigned long new)
+{
+    unsigned long prev;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: ldarx   %0,0,%2\n"
+                   "cmpd    0,%0,%3\n"
+                   "bne-    2f\n"
+                   "stdcx.  %4,0,%2\n"
+                   "bne-    1b"
+                   PPC_ATOMIC_EXIT_BARRIER "\n"
+                   "2:"
+                   : "=3D&r" (prev), "=3Dm" (*p)
+                   : "r" (p), "r" (old), "r" (new), "m" (*p)
+                   : "cc", "memory" );
+
+    return prev;
+}
+
+/* This function doesn't exist, so you'll get a linker error
+   if something tries to do an invalid cmpxchg().  */
+extern void __cmpxchg_called_with_bad_pointer(void);
+
+static always_inline unsigned long __cmpxchg(
+    volatile void *ptr,
+    unsigned long old,
+    unsigned long new,
+    int size)
+{
+    switch (size) {
+    case 2:
+        BUG_ON("unimplemented"); return 0; /* XXX implement __cmpxchg_u1=
6 ? */
+    case 4:
+        return __cmpxchg_u32(ptr, old, new);
+    case 8:
+        return __cmpxchg_u64(ptr, old, new);
+    }
+    __cmpxchg_called_with_bad_pointer();
+    return old;
+}
+
+#define cmpxchg_user(ptr,o,n) cmpxchg(ptr,o,n)
+
+#define cmpxchg(ptr,o,n)                         \
+  ({                                     \
+     __typeof__(*(ptr)) _o_ =3D (o);                   \
+     __typeof__(*(ptr)) _n_ =3D (n);                   \
+     (__typeof__(*(ptr))) __cmpxchg((ptr), (unsigned long)_o_,       \
+                    (unsigned long)_n_, sizeof(*(ptr))); \
+  })
+
+
+/*
+ * Memory barrier.
+ * The sync instruction guarantees that all memory accesses initiated
+ * by this processor have been performed (with respect to all other
+ * mechanisms that access memory).  The eieio instruction is a barrier
+ * providing an ordering (separately) for (a) cacheable stores and (b)
+ * loads and stores to non-cacheable memory (e.g. I/O devices).
+ *
+ * mb() prevents loads and stores being reordered across this point.
+ * rmb() prevents loads being reordered across this point.
+ * wmb() prevents stores being reordered across this point.
+ * read_barrier_depends() prevents data-dependent loads being reordered
+ *  across this point (nop on PPC).
+ *
+ * We have to use the sync instructions for mb(), since lwsync doesn't
+ * order loads with respect to previous stores.  Lwsync is fine for
+ * rmb(), though.
+ * For wmb(), we use sync since wmb is used in drivers to order
+ * stores to system memory with respect to writes to the device.
+ * However, smp_wmb() can be a lighter-weight eieio barrier on
+ * SMP since it is only used to order updates to system memory.
+ */
+#define mb()   __asm__ __volatile__ ("sync" : : : "memory")
+#define rmb()  __asm__ __volatile__ ("lwsync" : : : "memory")
+#define wmb()  __asm__ __volatile__ ("sync" : : : "memory")
+#define read_barrier_depends()  do { } while(0)
+
+#define set_mb(var, value)  do { var =3D value; smp_mb(); } while (0)
+#define set_wmb(var, value) do { var =3D value; smp_wmb(); } while (0)
+
+#define smp_mb__before_atomic()    smp_mb()
+#define smp_mb__after_atomic()     smp_mb()
+
+#ifdef CONFIG_SMP
+#define smp_mb()    mb()
+#define smp_rmb()   rmb()
+#define smp_wmb()   __asm__ __volatile__ ("lwsync" : : : "memory")
+#define smp_read_barrier_depends()  read_barrier_depends()
+#else
+#define smp_mb()    __asm__ __volatile__("": : :"memory")
+#define smp_rmb()   __asm__ __volatile__("": : :"memory")
+#define smp_wmb()   __asm__ __volatile__("": : :"memory")
+#define smp_read_barrier_depends()  do { } while(0)
+#endif /* CONFIG_SMP */
+
+#define local_save_flags(flags) ((flags) =3D mfmsr())
+#define local_irq_restore(flags) do { \
+        __asm__ __volatile__("": : :"memory"); \
+        mtmsrd((flags)); \
+} while(0)
+
+static inline void local_irq_disable(void)
+{
+    unsigned long msr;
+    msr =3D mfmsr();
+    mtmsrd(msr & ~MSR_EE);
+    asm volatile ( "" : : : "memory" );
+}
+
+static inline void local_irq_enable(void)
+{
+    unsigned long msr;
+    __asm__ __volatile__("" : : : "memory");
+    msr =3D mfmsr();
+    mtmsrd(msr | MSR_EE);
+}
+
+static inline void __do_save_and_cli(unsigned long *flags)
+{
+    unsigned long msr;
+    msr =3D mfmsr();
+    *flags =3D msr;
+    mtmsrd(msr & ~MSR_EE);
+    __asm__ __volatile__("" : : : "memory");
+}
+
+#define local_irq_save(flags) __do_save_and_cli(&flags)
+
+static inline int local_irq_is_enabled(void)
+{
+    return !!(mfmsr() & MSR_EE);
+}
+
+#define arch_fetch_and_add(x, v) __sync_fetch_and_add(x, v)

 #endif /* _ASM_SYSTEM_H */
diff --git a/xen/arch/ppc/include/asm/time.h b/xen/arch/ppc/include/asm/t=
ime.h
new file mode 100644
index 0000000000..d47a6f9245
--- /dev/null
+++ b/xen/arch/ppc/include/asm/time.h
@@ -0,0 +1,21 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_TIME_H__
+#define __ASM_PPC_TIME_H__
+
+#include <xen/lib.h>
+#include <asm/processor.h>
+#include <asm/regs.h>
+
+struct vcpu;
+
+/* TODO: implement */
+static inline void force_update_vcpu_system_time(struct vcpu *v) { BUG_O=
N("unimplemented"); }
+
+typedef unsigned long cycles_t;
+
+static inline cycles_t get_cycles(void)
+{
+    return mfspr(SPRN_TBRL);
+}
+
+#endif /* __ASM_PPC_TIME_H__ */
diff --git a/xen/arch/ppc/include/asm/vm_event.h b/xen/arch/ppc/include/a=
sm/vm_event.h
new file mode 100644
index 0000000000..75eba6346d
--- /dev/null
+++ b/xen/arch/ppc/include/asm/vm_event.h
@@ -0,0 +1,49 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_VM_EVENT_H__
+#define __ASM_PPC_VM_EVENT_H__
+
+#include <xen/sched.h>
+#include <public/vm_event.h>
+
+static inline int vm_event_init_domain(struct domain *d)
+{
+    /* Nothing to do. */
+    return 0;
+}
+
+static inline void vm_event_cleanup_domain(struct domain *d)
+{
+    memset(&d->monitor, 0, sizeof(d->monitor));
+}
+
+static inline void vm_event_toggle_singlestep(struct domain *d, struct v=
cpu *v,
+                                              vm_event_response_t *rsp)
+{
+    /* Not supported on PPC. */
+}
+
+static inline
+void vm_event_register_write_resume(struct vcpu *v, vm_event_response_t =
*rsp)
+{
+    /* Not supported on PPC. */
+}
+
+static inline
+void vm_event_emulate_check(struct vcpu *v, vm_event_response_t *rsp)
+{
+    /* Not supported on PPC. */
+}
+
+static inline
+void vm_event_sync_event(struct vcpu *v, bool value)
+{
+    /* Not supported on PPC. */
+}
+
+static inline
+void vm_event_reset_vmtrace(struct vcpu *v)
+{
+    /* Not supported on PPC. */
+}
+
+#endif /* __ASM_PPC_VM_EVENT_H__ */
diff --git a/xen/arch/ppc/include/asm/xenoprof.h b/xen/arch/ppc/include/a=
sm/xenoprof.h
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/xen/arch/ppc/mm-radix.c b/xen/arch/ppc/mm-radix.c
index 3feeb90ebc..06129cef9c 100644
--- a/xen/arch/ppc/mm-radix.c
+++ b/xen/arch/ppc/mm-radix.c
@@ -1,13 +1,13 @@
 /* SPDX-License-Identifier: GPL-2.0-or-later */
 #include <xen/init.h>
 #include <xen/kernel.h>
+#include <xen/mm.h>
 #include <xen/types.h>
 #include <xen/lib.h>

 #include <asm/bitops.h>
 #include <asm/byteorder.h>
 #include <asm/early_printk.h>
-#include <asm/mm.h>
 #include <asm/page.h>
 #include <asm/processor.h>
 #include <asm/regs.h>
diff --git a/xen/arch/ppc/tlb-radix.c b/xen/arch/ppc/tlb-radix.c
index 3dde102c62..74213113e0 100644
--- a/xen/arch/ppc/tlb-radix.c
+++ b/xen/arch/ppc/tlb-radix.c
@@ -5,9 +5,9 @@
  *
  * Copyright 2015-2016, Aneesh Kumar K.V, IBM Corporation.
  */
+#include <xen/bitops.h>
 #include <xen/stringify.h>

-#include <asm/bitops.h>
 #include <asm/msr.h>
 #include <asm/processor.h>

diff --git a/xen/include/public/hvm/save.h b/xen/include/public/hvm/save.=
h
index 464ebdb0da..2cf4238daa 100644
--- a/xen/include/public/hvm/save.h
+++ b/xen/include/public/hvm/save.h
@@ -89,6 +89,8 @@ DECLARE_HVM_SAVE_TYPE(END, 0, struct hvm_save_end);
 #include "../arch-x86/hvm/save.h"
 #elif defined(__arm__) || defined(__aarch64__)
 #include "../arch-arm/hvm/save.h"
+#elif defined(__powerpc64__)
+#include "../arch-ppc.h"
 #else
 #error "unsupported architecture"
 #endif
diff --git a/xen/include/public/pmu.h b/xen/include/public/pmu.h
index eb87a81e7b..5a176b6ac3 100644
--- a/xen/include/public/pmu.h
+++ b/xen/include/public/pmu.h
@@ -11,6 +11,8 @@
 #include "arch-x86/pmu.h"
 #elif defined (__arm__) || defined (__aarch64__)
 #include "arch-arm.h"
+#elif defined (__powerpc64__)
+#include "arch-ppc.h"
 #else
 #error "Unsupported architecture"
 #endif
diff --git a/xen/include/public/xen.h b/xen/include/public/xen.h
index 920567e006..b812a0a324 100644
--- a/xen/include/public/xen.h
+++ b/xen/include/public/xen.h
@@ -16,6 +16,8 @@
 #include "arch-x86/xen.h"
 #elif defined(__arm__) || defined (__aarch64__)
 #include "arch-arm.h"
+#elif defined(__powerpc64__)
+#include "arch-ppc.h"
 #else
 #error "Unsupported architecture"
 #endif
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 18:25:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 18:25:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594730.928157 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8pv-0000QK-Sh; Fri, 01 Sep 2023 18:25:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594730.928157; Fri, 01 Sep 2023 18:25:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qc8pv-0000PG-NH; Fri, 01 Sep 2023 18:25:39 +0000
Received: by outflank-mailman (input) for mailman id 594730;
 Fri, 01 Sep 2023 18:25:38 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=dN/X=ER=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qc8pu-0000IZ-OJ
 for xen-devel@lists.xenproject.org; Fri, 01 Sep 2023 18:25:38 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f17ebf42-48f4-11ee-9b0d-b553b5be7939;
 Fri, 01 Sep 2023 20:25:36 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 628D282856E0;
 Fri,  1 Sep 2023 13:25:35 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id JaV1nqkQtJne; Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 5CF7D82854A4;
 Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id gF14Zje-3yKq; Fri,  1 Sep 2023 13:25:33 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id E06568285413;
 Fri,  1 Sep 2023 13:25:32 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f17ebf42-48f4-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 5CF7D82854A4
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693592733; bh=u1+JzE6+tuD8L5yf+Orv/qg/MDEc7yHSArpA19fmM4Y=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=s6wsNyEzT1P32HEuRufP57jBPRv6+kyCy4nCdQigU8tEKmS2jnQ8O7HHVgB19PK98
	 fIeSHzzgOKrD4gol73tLULCaTLMoFyh25N9NxP0Hp6NGNAD6juSa4Q3bv2RbA/slUc
	 08CTW82ahrEQEe4DzJDpi+cWjJI3pOjIutI4yi4w=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v3 2/5] xen/ppc: Implement bitops.h
Date: Fri,  1 Sep 2023 13:25:15 -0500
Message-Id: <63e66eed26da8f957315cb1db05693b1799ee7ad.1693591462.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1693591462.git.sanastasio@raptorengineering.com>
References: <cover.1693591462.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

Implement bitops.h, based on Linux's implementation as of commit
5321d1b1afb9a17302c6cec79f0cbf823eb0d3fc. Though it is based off of
Linux's implementation, this code diverges significantly in a number of
ways:
  - Bitmap entries changed to 32-bit words to match X86 and Arm on Xen
  - PPC32-specific code paths dropped
  - Formatting completely re-done to more closely line up with Xen.
    Including 4 space indentation.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
v3:
  - Fix style of inline asm blocks.
  - Fix underscore-prefixed macro parameters/variables
  - Use __builtin_popcount for hweight* implementation
  - Update C functions to use proper Xen coding style

v2:
  - Clarify changes from Linux implementation in commit message
  - Use PPC_ATOMIC_{ENTRY,EXIT}_BARRIER macros from <asm/memory.h> instea=
d
    of hardcoded "sync" instructions in inline assembly blocks.
  - Fix macro line-continuing backslash spacing
  - Fix hard-tab usage in find_*_bit C functions.

 xen/arch/ppc/include/asm/bitops.h | 330 +++++++++++++++++++++++++++++-
 1 file changed, 327 insertions(+), 3 deletions(-)

diff --git a/xen/arch/ppc/include/asm/bitops.h b/xen/arch/ppc/include/asm=
/bitops.h
index 548e97b414..9e2bf8ef1b 100644
--- a/xen/arch/ppc/include/asm/bitops.h
+++ b/xen/arch/ppc/include/asm/bitops.h
@@ -1,9 +1,333 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Adapted from Linux's arch/powerpc/include/asm/bitops.h.
+ *
+ * Merged version by David Gibson <david@gibson.dropbear.id.au>.
+ * Based on ppc64 versions by: Dave Engebretsen, Todd Inglett, Don
+ * Reed, Pat McCarthy, Peter Bergner, Anton Blanchard.  They
+ * originally took it from the ppc32 code.
+ */
 #ifndef _ASM_PPC_BITOPS_H
 #define _ASM_PPC_BITOPS_H

+#include <asm/memory.h>
+
+#define __set_bit(n, p)         set_bit(n, p)
+#define __clear_bit(n, p)       clear_bit(n, p)
+
+#define BITOP_BITS_PER_WORD     32
+#define BITOP_MASK(nr)          (1UL << ((nr) % BITOP_BITS_PER_WORD))
+#define BITOP_WORD(nr)          ((nr) / BITOP_BITS_PER_WORD)
+#define BITS_PER_BYTE           8
+
 /* PPC bit number conversion */
-#define PPC_BITLSHIFT(be)	(BITS_PER_LONG - 1 - (be))
-#define PPC_BIT(bit)		(1UL << PPC_BITLSHIFT(bit))
-#define PPC_BITMASK(bs, be)	((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
+#define PPC_BITLSHIFT(be)    (BITS_PER_LONG - 1 - (be))
+#define PPC_BIT(bit)         (1UL << PPC_BITLSHIFT(bit))
+#define PPC_BITMASK(bs, be)  ((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
+
+/* Macro for generating the ***_bits() functions */
+#define DEFINE_BITOP(fn, op, prefix)                                    =
       \
+static inline void fn(unsigned long mask,                               =
       \
+                      volatile unsigned int *p_)                        =
       \
+{                                                                       =
       \
+    unsigned long old;                                                  =
       \
+    unsigned int *p =3D (unsigned int *)p_;                             =
         \
+    asm volatile ( prefix                                               =
       \
+                   "1: lwarx %0,0,%3,0\n"                               =
       \
+                   #op "%I2 %0,%0,%2\n"                                 =
       \
+                   "stwcx. %0,0,%3\n"                                   =
       \
+                   "bne- 1b\n"                                          =
       \
+                   : "=3D&r" (old), "+m" (*p)                           =
         \
+                   : "rK" (mask), "r" (p)                               =
       \
+                   : "cc", "memory" );                                  =
       \
+}
+
+DEFINE_BITOP(set_bits, or, "")
+DEFINE_BITOP(change_bits, xor, "")
+
+#define DEFINE_CLROP(fn, prefix)                                        =
       \
+static inline void fn(unsigned long mask, volatile unsigned int *_p)    =
       \
+{                                                                       =
       \
+    unsigned long old;                                                  =
       \
+    unsigned int *p =3D (unsigned int *)_p;                             =
         \
+    asm volatile ( prefix                                               =
       \
+                   "1: lwarx %0,0,%3,0\n"                               =
       \
+                   "andc %0,%0,%2\n"                                    =
       \
+                   "stwcx. %0,0,%3\n"                                   =
       \
+                   "bne- 1b\n"                                          =
       \
+                   : "=3D&r" (old), "+m" (*p)                           =
         \
+                   : "r" (mask), "r" (p)                                =
       \
+                   : "cc", "memory" );                                  =
       \
+}
+
+DEFINE_CLROP(clear_bits, "")
+
+static inline void set_bit(int nr, volatile void *addr)
+{
+    set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(=
nr));
+}
+static inline void clear_bit(int nr, volatile void *addr)
+{
+    clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WOR=
D(nr));
+}
+
+/**
+ * test_bit - Determine whether a bit is set
+ * @nr: bit number to test
+ * @addr: Address to start counting from
+ */
+static inline int test_bit(int nr, const volatile void *addr)
+{
+    const volatile unsigned long *p =3D (const volatile unsigned long *)=
addr;
+    return 1 & (p[BITOP_WORD(nr)] >> (nr & (BITOP_BITS_PER_WORD - 1)));
+}
+
+static inline unsigned long test_and_clear_bits(unsigned long mask, vola=
tile void *_p)
+{
+    unsigned long old, t;
+    unsigned int *p =3D (unsigned int *)_p;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%3,0\n"
+                   "andc %1,%0,%2\n"
+                   "stwcx. %1,0,%3\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=3D&r" (old), "=3D&r" (t)
+                   : "r" (mask), "r" (p)
+                   : "cc", "memory" );
+
+    return (old & mask);
+}
+
+static inline int test_and_clear_bit(unsigned int nr,
+                                     volatile void *addr)
+{
+    return test_and_clear_bits(BITOP_MASK(nr), addr + BITOP_WORD(nr)) !=3D=
 0;
+}
+
+#define DEFINE_TESTOP(fn, op, eh)                                       =
       \
+static inline unsigned long fn(unsigned long mask, volatile unsigned int=
 *_p)  \
+{                                                                       =
       \
+    unsigned long old, t;                                               =
       \
+    unsigned int *p =3D (unsigned int *)_p;                             =
         \
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER                             =
       \
+                   "1: lwarx %0,0,%3,%4\n"                              =
       \
+                   #op "%I2 %1,%0,%2\n"                                 =
       \
+                   "stwcx. %1,0,%3\n"                                   =
       \
+                   "bne- 1b\n"                                          =
       \
+                   PPC_ATOMIC_EXIT_BARRIER                              =
       \
+                   : "=3D&r" (old), "=3D&r" (t)                         =
           \
+                   : "rK" (mask), "r" (p), "n" (eh)                     =
       \
+                   : "cc", "memory" );                                  =
       \
+    return (old & mask);                                                =
       \
+}
+
+DEFINE_TESTOP(test_and_set_bits, or, 0)
+
+static inline int test_and_set_bit(unsigned long nr, volatile void *addr=
)
+{
+    return test_and_set_bits(BITOP_MASK(nr), (volatile unsigned int *)ad=
dr +
+                                             BITOP_WORD(nr)) !=3D 0;
+}
+
+/**
+ * __test_and_set_bit - Set a bit and return its old value
+ * @nr: Bit to set
+ * @addr: Address to count from
+ *
+ * This operation is non-atomic and can be reordered.
+ * If two examples of this operation race, one can appear to succeed
+ * but actually fail.  You must protect multiple accesses with a lock.
+ */
+static inline int __test_and_set_bit(int nr, volatile void *addr)
+{
+    unsigned int mask =3D BITOP_MASK(nr);
+    volatile unsigned int *p =3D ((volatile unsigned int *)addr) + BITOP=
_WORD(nr);
+    unsigned int old =3D *p;
+
+    *p =3D old | mask;
+    return (old & mask) !=3D 0;
+}
+
+/**
+ * __test_and_clear_bit - Clear a bit and return its old value
+ * @nr: Bit to clear
+ * @addr: Address to count from
+ *
+ * This operation is non-atomic and can be reordered.
+ * If two examples of this operation race, one can appear to succeed
+ * but actually fail.  You must protect multiple accesses with a lock.
+ */
+static inline int __test_and_clear_bit(int nr, volatile void *addr)
+{
+    unsigned int mask =3D BITOP_MASK(nr);
+    volatile unsigned int *p =3D ((volatile unsigned int *)addr) + BITOP=
_WORD(nr);
+    unsigned int old =3D *p;
+
+    *p =3D old & ~mask;
+    return (old & mask) !=3D 0;
+}
+
+#define flsl(x) generic_flsl(x)
+#define fls(x) generic_fls(x)
+#define ffs(x) ({ unsigned int t_ =3D (x); fls(t_ & - t_); })
+#define ffsl(x) ({ unsigned long t_ =3D (x); flsl(t_ & - t_); })
+
+/* Based on linux/include/asm-generic/bitops/ffz.h */
+/*
+ * ffz - find first zero in word.
+ * @word: The word to search
+ *
+ * Undefined if no zero exists, so code should check against ~0UL first.
+ */
+#define ffz(x)  __ffs(~(x))
+
+/**
+ * hweightN - returns the hamming weight of a N-bit word
+ * @x: the word to weigh
+ *
+ * The Hamming Weight of a number is the total number of bits set in it.
+ */
+#define hweight64(x) __builtin_popcountll(x)
+#define hweight32(x) __builtin_popcount(x)
+#define hweight16(x) __builtin_popcount((uint16_t)(x))
+#define hweight8(x)  __builtin_popcount((uint8_t)(x))
+
+/* Based on linux/include/asm-generic/bitops/builtin-__ffs.h */
+/**
+ * __ffs - find first bit in word.
+ * @word: The word to search
+ *
+ * Undefined if no bit exists, so code should check against 0 first.
+ */
+static always_inline unsigned long __ffs(unsigned long word)
+{
+    return __builtin_ctzl(word);
+}
+
+/**
+ * find_first_set_bit - find the first set bit in @word
+ * @word: the word to search
+ *
+ * Returns the bit-number of the first set bit (first bit being 0).
+ * The input must *not* be zero.
+ */
+#define find_first_set_bit(x) (ffsl(x) - 1)
+
+/*
+ * Find the first set bit in a memory region.
+ */
+static inline unsigned long find_first_bit(const unsigned long *addr,
+                                           unsigned long size)
+{
+    const unsigned long *p =3D addr;
+    unsigned long result =3D 0;
+    unsigned long tmp;
+
+    while ( size & ~(BITS_PER_LONG - 1) )
+    {
+        if ( (tmp =3D *(p++)) )
+            goto found;
+        result +=3D BITS_PER_LONG;
+        size -=3D BITS_PER_LONG;
+    }
+    if ( !size )
+        return result;
+
+    tmp =3D (*p) & (~0UL >> (BITS_PER_LONG - size));
+    if ( tmp =3D=3D 0UL )         /* Are any bits set? */
+        return result + size; /* Nope. */
+ found:
+    return result + __ffs(tmp);
+}
+
+static inline unsigned long find_next_bit(const unsigned long *addr,
+                                          unsigned long size,
+                                          unsigned long offset)
+{
+    const unsigned long *p =3D addr + BITOP_WORD(offset);
+    unsigned long result =3D offset & ~(BITS_PER_LONG - 1);
+    unsigned long tmp;
+
+    if ( offset >=3D size )
+        return size;
+    size -=3D result;
+    offset %=3D BITS_PER_LONG;
+    if ( offset )
+    {
+        tmp =3D *(p++);
+        tmp &=3D (~0UL << offset);
+        if ( size < BITS_PER_LONG )
+            goto found_first;
+        if ( tmp )
+            goto found_middle;
+        size -=3D BITS_PER_LONG;
+        result +=3D BITS_PER_LONG;
+    }
+    while ( size & ~(BITS_PER_LONG - 1) )
+    {
+        if ( (tmp =3D *(p++)) )
+            goto found_middle;
+        result +=3D BITS_PER_LONG;
+        size -=3D BITS_PER_LONG;
+    }
+    if ( !size )
+        return result;
+    tmp =3D *p;
+
+ found_first:
+    tmp &=3D (~0UL >> (BITS_PER_LONG - size));
+    if ( tmp =3D=3D 0UL )         /* Are any bits set? */
+        return result + size; /* Nope. */
+ found_middle:
+    return result + __ffs(tmp);
+}
+
+/*
+ * This implementation of find_{first,next}_zero_bit was stolen from
+ * Linus' asm-alpha/bitops.h.
+ */
+static inline unsigned long find_next_zero_bit(const unsigned long *addr=
,
+                                               unsigned long size,
+                                               unsigned long offset)
+{
+    const unsigned long *p =3D addr + BITOP_WORD(offset);
+    unsigned long result =3D offset & ~(BITS_PER_LONG - 1);
+    unsigned long tmp;
+
+    if ( offset >=3D size )
+        return size;
+    size -=3D result;
+    offset %=3D BITS_PER_LONG;
+    if ( offset )
+    {
+        tmp =3D *(p++);
+        tmp |=3D ~0UL >> (BITS_PER_LONG - offset);
+        if ( size < BITS_PER_LONG )
+            goto found_first;
+        if ( ~tmp )
+            goto found_middle;
+        size -=3D BITS_PER_LONG;
+        result +=3D BITS_PER_LONG;
+    }
+    while ( size & ~(BITS_PER_LONG - 1) )
+    {
+        if ( ~(tmp =3D *(p++)) )
+            goto found_middle;
+        result +=3D BITS_PER_LONG;
+        size -=3D BITS_PER_LONG;
+    }
+    if ( !size )
+        return result;
+    tmp =3D *p;
+
+ found_first:
+    tmp |=3D ~0UL << size;
+    if ( tmp =3D=3D ~0UL )        /* Are any bits zero? */
+        return result + size; /* Nope. */
+ found_middle:
+    return result + ffz(tmp);
+}

 #endif /* _ASM_PPC_BITOPS_H */
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 01 20:49:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 20:49:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594774.928209 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcB5D-0002Ih-BF; Fri, 01 Sep 2023 20:49:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594774.928209; Fri, 01 Sep 2023 20:49:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcB5D-0002Ia-8U; Fri, 01 Sep 2023 20:49:35 +0000
Received: by outflank-mailman (input) for mailman id 594774;
 Fri, 01 Sep 2023 20:49:34 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcB5C-0002IQ-4c; Fri, 01 Sep 2023 20:49:34 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcB5B-0002Au-SZ; Fri, 01 Sep 2023 20:49:33 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcB5B-0006w6-Dq; Fri, 01 Sep 2023 20:49:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcB5B-0005Ec-DK; Fri, 01 Sep 2023 20:49:33 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=DfxVZWSwBRoI/KpBXfoDyYGsrQgVC1H0XTrgrJFgNmc=; b=TglxiW97haN2K+pTaDJAx+CQYj
	yUwLnIK39JYwX8ZR3Y8RUW3vhMvCAmftyjOCmK+3qVmqXtyrs1ERph6WJ7s/QktuIrC7p8lmhPZ1/
	GrmYHbylVN+4hY+AxzJ+GlwYuRl+rwM+ABPaLTT+Wd5Zxv/fuhBbeSEffnQRvpuOhNpU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182590-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182590: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:regression
    xen-unstable:test-amd64-i386-livepatch:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-xsm:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=6621932264e3e86df3913db4249ecd3eb100b13f
X-Osstest-Versions-That:
    xen=e5522c71beaa83f2f5d2118724ace9f90c22e583
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 01 Sep 2023 20:49:33 +0000

flight 182590 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182590/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail REGR. vs. 182571

Tests which are failing intermittently (not blocking):
 test-amd64-i386-livepatch     7 xen-install                fail pass in 182581
 test-amd64-i386-libvirt-xsm   7 xen-install                fail pass in 182581

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail in 182581 never pass
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182571
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182571
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182571
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182571
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182571
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182571
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182571
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182571
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182571
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182571
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182571
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182571
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  6621932264e3e86df3913db4249ecd3eb100b13f
baseline version:
 xen                  e5522c71beaa83f2f5d2118724ace9f90c22e583

Last test of basis   182571  2023-08-30 17:08:53 Z    2 days
Testing same since   182581  2023-08-31 08:22:39 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Nicola Vetrini <nicola.vetrini@bugseng.com>
  Simone Ballarin <simone.ballarin@bugseng.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  fail    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    fail    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit 6621932264e3e86df3913db4249ecd3eb100b13f
Author: Nicola Vetrini <nicola.vetrini@bugseng.com>
Date:   Fri Aug 25 16:00:23 2023 +0200

    arm64/vfp: address MISRA C:2012 Dir 4.3
    
    Directive 4.3 prescribes the following:
    "Assembly language shall be encapsulated and isolated",
    on the grounds of improved readability and ease of maintenance.
    
    A static inline function is the chosen encapsulation mechanism.
    
    No functional change.
    
    Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
    Reviewed-by: Michal Orzel <michal.orzel@amd.com>
    Acked-by: Stefano Stabellini <sstabellini@kernel.org>

commit 1b7dc185f8421b6ad849e88c0e9b2a81c2a99331
Author: Stefano Stabellini <stefano.stabellini@amd.com>
Date:   Mon Aug 21 18:02:28 2023 -0700

    docs/misra: document gcc-specific behavior with shifting signed integers
    
    Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit 1f2f5087c0bbc8c6219e5ce33e5bf17575f1cc00
Author: Simone Ballarin <simone.ballarin@bugseng.com>
Date:   Mon Aug 28 15:20:08 2023 +0200

    xen/sched: address violations of MISRA C:2012 Directive 4.10
    
    Add inclusion guards to address violations of
    MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
    to prevent the contents of a header file being included more than
    once").
    
    Mechanical change.
    
    Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
    Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
    Reviewed-by: George Dunlap <george.dunlap@cloud.com>

commit 591fd09ffba5c6e587477d07302792ec2e68cf16
Author: Stefano Stabellini <stefano.stabellini@amd.com>
Date:   Fri Aug 25 14:48:42 2023 -0700

    docs/misra: add rules 10.1 10.2 10.3 10.4
    
    10.1 with several caveats, described in the notes.
    10.3 and 10.4 as "aspirational" guidelines, as clarified in the notes.
    
    Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
    Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Fri Sep 01 23:14:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 01 Sep 2023 23:14:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594783.928219 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcDLO-0000O6-3A; Fri, 01 Sep 2023 23:14:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594783.928219; Fri, 01 Sep 2023 23:14:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcDLO-0000Nz-05; Fri, 01 Sep 2023 23:14:26 +0000
Received: by outflank-mailman (input) for mailman id 594783;
 Fri, 01 Sep 2023 23:14:24 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcDLM-0000Np-Qh; Fri, 01 Sep 2023 23:14:24 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcDLM-0005Kf-EX; Fri, 01 Sep 2023 23:14:24 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcDLM-0005C2-4k; Fri, 01 Sep 2023 23:14:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcDLM-0003uM-4G; Fri, 01 Sep 2023 23:14:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=wAKepcDo8zPzgL8HcvSw/u+rhkBTjSBUGGMi+EgumsA=; b=Vyre1uRZtFQIg3fVklpN4kbnVr
	UKRMrDqjMNhUmRjCWeteq5a53hAwivKtys/VGwKm+EvvmDu1IDSEFsYuuZz4LtOzyrriVF+XuQa3c
	0uL9lZBGPvKomO9imZooNNBpi/+W2+jBGN6FdPKTPyhX5kxTXGVSFfrCbmzg7bdQCnGg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182592-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 182592: tolerable FAIL - PUSHED
X-Osstest-Failures:
    libvirt:test-amd64-i386-libvirt-raw:xen-install:fail:heisenbug
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=aa5895cbc72bd9b4bb1ce99e231b2ac4b25db9c4
X-Osstest-Versions-That:
    libvirt=e7d26c5dcd3b988fa02ac1e45baf2f9934623381
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 01 Sep 2023 23:14:24 +0000

flight 182592 libvirt real [real]
flight 182610 libvirt real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182592/
http://logs.test-lab.xenproject.org/osstest/logs/182610/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-libvirt-raw   7 xen-install         fail pass in 182610-retest

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt-raw 14 migrate-support-check fail in 182610 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182579
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182579
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182579
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              aa5895cbc72bd9b4bb1ce99e231b2ac4b25db9c4
baseline version:
 libvirt              e7d26c5dcd3b988fa02ac1e45baf2f9934623381

Last test of basis   182579  2023-08-31 04:18:52 Z    1 days
Testing same since   182592  2023-09-01 04:20:39 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrea Bolognani <abologna@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  fail    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   e7d26c5dcd..aa5895cbc7  aa5895cbc72bd9b4bb1ce99e231b2ac4b25db9c4 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Sep 02 04:31:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 02 Sep 2023 04:31:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594793.928229 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcIHk-0003Q1-UF; Sat, 02 Sep 2023 04:31:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594793.928229; Sat, 02 Sep 2023 04:31:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcIHk-0003PM-OL; Sat, 02 Sep 2023 04:31:00 +0000
Received: by outflank-mailman (input) for mailman id 594793;
 Sat, 02 Sep 2023 04:30:59 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcIHj-0003PC-Qy; Sat, 02 Sep 2023 04:30:59 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcIHj-0000cW-K1; Sat, 02 Sep 2023 04:30:59 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcIHj-0001UQ-2d; Sat, 02 Sep 2023 04:30:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcIHj-00076A-25; Sat, 02 Sep 2023 04:30:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=DXtGsyd6V4kfgJ6LQHH/Ii3zxBhvX3WAb1+uvWDGejs=; b=YR4pGfaXR0R3Pv3Na2WuvWzNVj
	iE9EvDzPK7a6zREdo28/2GbUZWzb6cLlDa6V1U0eA9jNOc8j/Obw1l2hEbVk5yBgoGmg/fckt7GSZ
	ETCQmxeYQoKCrcUDPNJPFLOBRa5b1q87PqzLDrqpMeb1DZnLS2bIjbhzsUdCzTu8dYTc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182600-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182600: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=99d99825fc075fd24b60cc9cf0fb1e20b9c16b0f
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 02 Sep 2023 04:30:59 +0000

flight 182600 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182600/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                99d99825fc075fd24b60cc9cf0fb1e20b9c16b0f
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z    5 days
Failing since        182544  2023-08-28 20:42:13 Z    4 days    7 attempts
Testing same since   182600  2023-09-01 12:03:28 Z    0 days    1 attempts

------------------------------------------------------------
1695 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 192788 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Sep 02 07:24:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 02 Sep 2023 07:24:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594802.928240 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcKzX-0003ku-Tr; Sat, 02 Sep 2023 07:24:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594802.928240; Sat, 02 Sep 2023 07:24:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcKzX-0003kn-OP; Sat, 02 Sep 2023 07:24:23 +0000
Received: by outflank-mailman (input) for mailman id 594802;
 Sat, 02 Sep 2023 07:24:23 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcKzX-0003kd-70; Sat, 02 Sep 2023 07:24:23 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcKzW-0004xB-RC; Sat, 02 Sep 2023 07:24:22 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcKzW-0005yp-5R; Sat, 02 Sep 2023 07:24:22 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcKzW-0007FA-53; Sat, 02 Sep 2023 07:24:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=NX9KPWfSm07EX4UZK3bCp5uIfRbvsM5H/9bXrKKQPrI=; b=iWfv5PZ9/F9OLGkI1ep88F0uK9
	9Hy3lQaGqnK0725ouTZpCfDNJmRn/zk8j4gSQpEwEuMWslNmmjIntUW/P31l6Bri2ewH3ATSjksVi
	EoIG+qSQKS4w/ShKndUBEIhV4MYBkQtCpVYs5Xuimf05Di81J9YKGa3+7LDthm0BFOak=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182606-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182606: tolerable FAIL - PUSHED
X-Osstest-Failures:
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:xen-install:fail:heisenbug
    qemu-mainline:test-amd64-i386-xl-xsm:xen-install:fail:heisenbug
    qemu-mainline:test-armhf-armhf-libvirt:xen-boot:fail:heisenbug
    qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=17780edd81d27fcfdb7a802efc870a99788bd2fc
X-Osstest-Versions-That:
    qemuu=156618d9ea67f2f2e31d9dedd97f2dcccbe6808c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 02 Sep 2023 07:24:22 +0000

flight 182606 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182606/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm 7 xen-install fail in 182588 pass in 182606
 test-amd64-i386-xl-xsm        7 xen-install      fail in 182588 pass in 182606
 test-armhf-armhf-libvirt      8 xen-boot                   fail pass in 182588

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 182588 like 182570
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 182588 never pass
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182570
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182570
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182570
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182570
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182570
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182570
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182570
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                17780edd81d27fcfdb7a802efc870a99788bd2fc
baseline version:
 qemuu                156618d9ea67f2f2e31d9dedd97f2dcccbe6808c

Last test of basis   182570  2023-08-30 16:37:20 Z    2 days
Testing same since   182584  2023-08-31 16:38:53 Z    1 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alex Bennée <alex.bennee@linaro.org>
  Daniel P. Berrangé <berrange@redhat.com>
  Ilya Leoshkevich <iii@linux.ibm.com>
  Jean-Christophe Dubois <jcd@tribudubois.net>
  Markus Armbruster <armbru@redhat.com>
  Matheus Branco Borella <dark.ryu.550@gmail.com>
  Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
  Peter Maydell <peter.maydell@linaro.org>
  Richard Henderson <richard.henderson@linaro.org>
  Stefan Hajnoczi <stefanha@redhat.com>
  Stefano Stabellini <stefano.stabellini@amd.com>
  Thomas Huth <thuth@redhat.com>
  Vikram Garhwal <vikram.garhwal@amd.com>
  Warner Losh <imp@bsdimp.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/qemu-xen.git
   156618d9ea..17780edd81  17780edd81d27fcfdb7a802efc870a99788bd2fc -> upstream-tested


From xen-devel-bounces@lists.xenproject.org Sat Sep 02 12:43:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 02 Sep 2023 12:43:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594818.928249 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcPxt-0001rm-OO; Sat, 02 Sep 2023 12:43:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594818.928249; Sat, 02 Sep 2023 12:43:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcPxt-0001rf-LD; Sat, 02 Sep 2023 12:43:01 +0000
Received: by outflank-mailman (input) for mailman id 594818;
 Sat, 02 Sep 2023 12:43:00 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcPxs-0001rV-G9; Sat, 02 Sep 2023 12:43:00 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcPxs-0003yW-7b; Sat, 02 Sep 2023 12:43:00 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcPxr-0002ur-Ng; Sat, 02 Sep 2023 12:42:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcPxr-0001bn-NH; Sat, 02 Sep 2023 12:42:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=9uQiIgT418Q8T5KuUccSXuh75Jib0Xk5PYbFAfPGM9c=; b=EFbnsL17U234setheZbGh19NHV
	BDhOM6fDV9UGnAksRxyDouQvu5LHDwIfWxRINfIXbr7Jsw8LJESE1YpRD0yGfJNISOin4r1EsC/LZ
	99vKcU7R7xMFZdhrHFwcZm7YLfwBoElV0fwehcyFm7rDWBmx7IXOtWwai2RQXLErvIHU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182609-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182609: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-arm64-arm64-xl-thunderx:xen-boot:fail:heisenbug
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=f805cf3e9b87584e16b03b5059b1163fd22bf5a0
X-Osstest-Versions-That:
    xen=e5522c71beaa83f2f5d2118724ace9f90c22e583
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 02 Sep 2023 12:42:59 +0000

flight 182609 xen-unstable real [real]
flight 182614 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182609/
http://logs.test-lab.xenproject.org/osstest/logs/182614/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-arm64-arm64-xl-thunderx  8 xen-boot            fail pass in 182614-retest

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 182614 never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 182614 never pass
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182571
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182571
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182571
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182571
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182571
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182571
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182571
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182571
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182571
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182571
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182571
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182571
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  f805cf3e9b87584e16b03b5059b1163fd22bf5a0
baseline version:
 xen                  e5522c71beaa83f2f5d2118724ace9f90c22e583

Last test of basis   182571  2023-08-30 17:08:53 Z    2 days
Failing since        182581  2023-08-31 08:22:39 Z    2 days    3 attempts
Testing same since   182609  2023-09-01 21:10:16 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Nicola Vetrini <nicola.vetrini@bugseng.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Simone Ballarin <simone.ballarin@bugseng.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stefano Stabellini <stefano.stabellini@amd.com>
  Tamas K Lengyel <tamas@tklengyel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 fail    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   e5522c71be..f805cf3e9b  f805cf3e9b87584e16b03b5059b1163fd22bf5a0 -> master


From xen-devel-bounces@lists.xenproject.org Sat Sep 02 17:33:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 02 Sep 2023 17:33:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594838.928286 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcUUO-0005wB-5g; Sat, 02 Sep 2023 17:32:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594838.928286; Sat, 02 Sep 2023 17:32:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcUUO-0005w4-2v; Sat, 02 Sep 2023 17:32:52 +0000
Received: by outflank-mailman (input) for mailman id 594838;
 Sat, 02 Sep 2023 17:32:51 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcUUN-0005vu-7t; Sat, 02 Sep 2023 17:32:51 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcUUM-0002Jb-W3; Sat, 02 Sep 2023 17:32:51 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcUUM-0000mC-IO; Sat, 02 Sep 2023 17:32:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcUUM-0005Tt-Hw; Sat, 02 Sep 2023 17:32:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=2rsulh/EcSlSLu0WGGBOTMvE/XQtR+Cyr97wONQZIJU=; b=LKIYiahooW2+4MuIdsDLigauZb
	buig1z2H9zoTOb82LlGvNMoahmaWeFRs17e2WXuH4iEV4cFbH5xm59ZE2IsZ1MojGljBdsCt9JsHL
	c6XDeea88k0Udeq4Km/AQt+59A/nl3DQvIYZ2bcmBfZZv8coKOfEPeRKzsbvEXhESzgM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182611-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 182611: tolerable FAIL - PUSHED
X-Osstest-Failures:
    libvirt:test-arm64-arm64-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=8a0319fc7d38afdf0d7ea5ff5b3a4c221ef66f1b
X-Osstest-Versions-That:
    libvirt=aa5895cbc72bd9b4bb1ce99e231b2ac4b25db9c4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 02 Sep 2023 17:32:50 +0000

flight 182611 libvirt real [real]
flight 182616 libvirt real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182611/
http://logs.test-lab.xenproject.org/osstest/logs/182616/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-arm64-arm64-libvirt-qcow2 17 guest-start/debian.repeat fail pass in 182616-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182592
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182592
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182592
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              8a0319fc7d38afdf0d7ea5ff5b3a4c221ef66f1b
baseline version:
 libvirt              aa5895cbc72bd9b4bb1ce99e231b2ac4b25db9c4

Last test of basis   182592  2023-09-01 04:20:39 Z    1 days
Testing same since   182611  2023-09-02 04:21:55 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Erik Skultety <eskultet@redhat.com>
  Jiri Denemark <jdenemar@redhat.com>
  Ján Tomko <jtomko@redhat.com>
  K Shiva Kiran <shiva_kr@riseup.net>
  Martin Kletzander <mkletzan@redhat.com>
  Pavel Hrdina <phrdina@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   aa5895cbc7..8a0319fc7d  8a0319fc7d38afdf0d7ea5ff5b3a4c221ef66f1b -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Sep 02 17:45:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 02 Sep 2023 17:45:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594848.928297 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcUgi-0007Za-Cy; Sat, 02 Sep 2023 17:45:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594848.928297; Sat, 02 Sep 2023 17:45:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcUgi-0007ZT-AD; Sat, 02 Sep 2023 17:45:36 +0000
Received: by outflank-mailman (input) for mailman id 594848;
 Sat, 02 Sep 2023 17:45:35 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcUgh-0007ZJ-Gr; Sat, 02 Sep 2023 17:45:35 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcUgh-0002h5-Av; Sat, 02 Sep 2023 17:45:35 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcUgg-0001B9-Uk; Sat, 02 Sep 2023 17:45:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcUgg-0000r6-UE; Sat, 02 Sep 2023 17:45:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=kWobi4Xs+DnA7g4s7GhO+2Cp7jpq00i0EWsPpJAwmcI=; b=zbh0V1GUS4xaA1894uP/B9yWkO
	fYubZnbbi3la12SZiTmJNfAzQ8JOKsmXmhS8SpYWrbBgngFWvkSh89bYfyyOo01RcQmLGzFkWRLVP
	8oPDu7He+qQ7xq7lA3d6PGFDYlLg9KYScUo0ML68XhEUDJWGVzijpiF9GX4BTEmOsOBM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182617-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182617: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=dfb941d32a2f38c9177729e39c6a6515abbbad48
X-Osstest-Versions-That:
    ovmf=beafabdae49c873adecdb7511dbebe9d4ff5c8f0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 02 Sep 2023 17:45:34 +0000

flight 182617 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182617/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 dfb941d32a2f38c9177729e39c6a6515abbbad48
baseline version:
 ovmf                 beafabdae49c873adecdb7511dbebe9d4ff5c8f0

Last test of basis   182586  2023-08-31 19:42:36 Z    1 days
Testing same since   182617  2023-09-02 15:11:45 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ard Biesheuvel <ardb@kernel.org>
  Pedro Falcato <pedro.falcato@gmail.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   beafabdae4..dfb941d32a  dfb941d32a2f38c9177729e39c6a6515abbbad48 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Sep 02 19:35:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 02 Sep 2023 19:35:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594858.928307 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcWOb-0001sc-2T; Sat, 02 Sep 2023 19:35:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594858.928307; Sat, 02 Sep 2023 19:35:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcWOa-0001sV-Vs; Sat, 02 Sep 2023 19:35:00 +0000
Received: by outflank-mailman (input) for mailman id 594858;
 Sat, 02 Sep 2023 19:34:59 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcWOZ-0001sL-6K; Sat, 02 Sep 2023 19:34:59 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcWOY-00050G-PB; Sat, 02 Sep 2023 19:34:58 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcWOY-0004ra-7v; Sat, 02 Sep 2023 19:34:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcWOY-00005g-7U; Sat, 02 Sep 2023 19:34:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=HLAu3MQVEWw+A24i0j2CWV1pK5imaiax7SOLE2Pe/f8=; b=jLCoNg/x0wx3iKQ5oxSL8xGlrz
	cSyzqFVEJ9qopf3PfwquqwP2/zm0WrWIIStcA1l+x8F1+sQWe7aZNsAeB32IVeTpgcH33wWDmVBPr
	cEx+HbtCqXhMpDaCu50PVw0UVeCK68zQcVR/7NH6ndPAZJA1bPpMsAuZkOydwfasRb/o=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182612-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182612: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:build-armhf-pvops:kernel-build:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-examine:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=0468be89b3fa5b9249cee1097f1d50314950a2df
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 02 Sep 2023 19:34:58 +0000

flight 182612 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182612/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 build-armhf-pvops             6 kernel-build             fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-examine      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                0468be89b3fa5b9249cee1097f1d50314950a2df
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z    5 days
Failing since        182544  2023-08-28 20:42:13 Z    4 days    8 attempts
Testing same since   182612  2023-09-02 04:32:50 Z    0 days    1 attempts

------------------------------------------------------------
1964 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            fail    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     blocked 
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 223653 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 03 03:19:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 03 Sep 2023 03:19:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594869.928317 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcdeB-0007kR-FB; Sun, 03 Sep 2023 03:19:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594869.928317; Sun, 03 Sep 2023 03:19:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcdeB-0007k5-90; Sun, 03 Sep 2023 03:19:35 +0000
Received: by outflank-mailman (input) for mailman id 594869;
 Sun, 03 Sep 2023 03:19:34 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcdeA-0007jv-Q1; Sun, 03 Sep 2023 03:19:34 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcdeA-0001fb-IM; Sun, 03 Sep 2023 03:19:34 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcde9-0007Re-Of; Sun, 03 Sep 2023 03:19:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcde9-00021s-OE; Sun, 03 Sep 2023 03:19:33 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=3N1w7nGHz6aPiVFEp69KWFrlfWg+0ZifrNQGtWjOBFg=; b=beVgpKZncaKcDgXnT8zBL1m1AJ
	Kx7NVoHKnBIiv/HG0iOc+Yq9hdlY3kh3E1CLWgDStCSZ6X9hsQ1IQeTSgOtq0m6sBLLOIWMeaaYTp
	afm2Db0nANze28+Xy9gBoQHoyrKWxeOQc80cqyIdf2ve8Sf6ZCUGW0wcW/MeR+SlLiUc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182613-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 182613: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
X-Osstest-Versions-That:
    linux=5eb967dd50a5a29952ab6e6b1ef4bf216cf1652c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 03 Sep 2023 03:19:33 +0000

flight 182613 linux-5.4 real [real]
flight 182619 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182613/
http://logs.test-lab.xenproject.org/osstest/logs/182619/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl    18 guest-start/debian.repeat fail pass in 182619-retest
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail pass in 182619-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 14 guest-start                  fail like 182575
 test-armhf-armhf-xl-arndale  18 guest-start/debian.repeat    fail  like 182575
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182583
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182583
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182583
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182583
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 182583
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182583
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat    fail  like 182583
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182583
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182583
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182583
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182583
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182583
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182583
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182583
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
baseline version:
 linux                5eb967dd50a5a29952ab6e6b1ef4bf216cf1652c

Last test of basis   182583  2023-08-31 14:23:56 Z    2 days
Testing same since   182613  2023-09-02 07:45:54 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Florian Fainelli <florian.fainelli@broadcom.com>
  Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  Guenter Roeck <linux@roeck-us.net>
  Ilie Halip <ilie.halip@gmail.com>
  Jon Hunter <jonathanh@nvidia.com>
  Linux Kernel Functional Testing <lkft@linaro.org>
  Michael Ellerman <mpe@ellerman.id.au>
  Shuah Khan <skhan@linuxfoundation.org>
  Sudip Mukherjee <sudip.mukherjee@codethink.co.uk>
  YueHaibing <yuehaibing@huawei.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

hint: The 'hooks/update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-receive' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
To xenbits.xen.org:/home/xen/git/linux-pvops.git
   5eb967dd50a5..0c2544add9fc  0c2544add9fc25c0e54a2167d6a2cfd2e696cf58 -> tested/linux-5.4


From xen-devel-bounces@lists.xenproject.org Sun Sep 03 04:58:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 03 Sep 2023 04:58:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594836.928330 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcfBh-0001Gz-6I; Sun, 03 Sep 2023 04:58:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594836.928330; Sun, 03 Sep 2023 04:58:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcfBh-0001GC-25; Sun, 03 Sep 2023 04:58:17 +0000
Received: by outflank-mailman (input) for mailman id 594836;
 Sat, 02 Sep 2023 16:23:18 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=M48F=ES=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qcTP4-0007ci-Rp
 for xen-devel@lists.xenproject.org; Sat, 02 Sep 2023 16:23:18 +0000
Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com
 [2a00:1450:4864:20::334])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 03836172-49ad-11ee-9b0d-b553b5be7939;
 Sat, 02 Sep 2023 18:23:13 +0200 (CEST)
Received: by mail-wm1-x334.google.com with SMTP id
 5b1f17b1804b1-401187f8071so500015e9.0
 for <xen-devel@lists.xenproject.org>; Sat, 02 Sep 2023 09:23:15 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (public.devonshire.individualpubs.co.uk. [82.68.35.2])
 by smtp.gmail.com with ESMTPSA id
 x15-20020a1c7c0f000000b003feef82bbefsm8307408wmc.29.2023.09.02.09.23.14
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 02 Sep 2023 09:23:14 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 03836172-49ad-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1693671795; x=1694276595; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=LgeK+aY1vpTJ3t7aZjZxOVf5kztKqWqhUwyAaFM32YE=;
        b=R+Jo6R8Z9hFDbsw6MNn7yA7JufWOX1oyPanbJ73aOLYbtWGKhRvye2KqZu/hZCHL/l
         UuYnjZ6R89BK8A+jqpw1WnZxBgyGxcHa9jvvVTv/gUUDXnxOTrpB8IIztAq9LRy6Got3
         OXdSG4DIYUvB1GDNnj0v7KdxFn6FbkG7ATX0o=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693671795; x=1694276595;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=LgeK+aY1vpTJ3t7aZjZxOVf5kztKqWqhUwyAaFM32YE=;
        b=hRPZD9nM8SCYhw84fXZEmbB7QmuyHQ4inSfGtBAyt945NAEnzj8ZVL0Bal0UUVoIVW
         gLP2Y0IjAIGrGY1SyJYyBnTLOnNU3+2rhc017ZwaA1ZE3ZfVGzrslUKp4gvTWetWzvTN
         AnqkfaE4v2hgS19zvaQqFR34BoUVbs1kQgr2wREG6+ANhTyG2aegz+rL2B0gbrpRayZX
         CpYAcOLvhSt2VGRR/jlbTesAEvBfLAE/u7feH6JfSLQiL/weHA970ouEM0Sco9v2cXfB
         hOOqic6v/OuhACVFwgWkk/Sv8jYWvDnHj2UcMS5Ev2D8hC8tLDHzfWAfvKJxryAvGBuV
         mt7g==
X-Gm-Message-State: AOJu0Yxk+SVHEa5iJ7tFvRrFihVRo9pRtuu9UfAOp5WvyEO/js6y6jNF
	LldikN9uMH/ayqIDtEW57lArwJFVw0cKrLU0q14=
X-Google-Smtp-Source: AGHT+IGxP0iU5Nf0OmsfxKK19LVYO1HSy4TX1yNJ1vVfcvLkhZQ5AsIjnvWDZ6NN/dX8wjp7LsGHjw==
X-Received: by 2002:a7b:c385:0:b0:401:c1e2:f74f with SMTP id s5-20020a7bc385000000b00401c1e2f74fmr4436867wmj.15.1693671794956;
        Sat, 02 Sep 2023 09:23:14 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Javi Merino <javi.merino@cloud.com>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH] tools/misc/xencov_split: Add python 3 compatibility
Date: Sat,  2 Sep 2023 17:21:08 +0100
Message-ID: <20230902162246.15672-1-javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Closes #154

Signed-off-by: Javi Merino <javi.merino@cloud.com>
---

Generating coverage data is a bit broken at the moment.  Depending on
the compiler you are using, you would need "coverage: update gcov info
for newer versions of gcc" (Message-Id:
20230902151351.10325-1-javi.merino@cloud.com) which I just sent to the
list. On top of that, you would have to comment out the freeing of the
init sections due to #168 .

I have tested it with these two fixes and the python2 and python3
create the same outputs.

 tools/misc/xencov_split | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/tools/misc/xencov_split b/tools/misc/xencov_split
index e4f68ebb6e..8f1271bfe7 100755
--- a/tools/misc/xencov_split
+++ b/tools/misc/xencov_split
@@ -1,5 +1,7 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
 
+from __future__ import print_function
+from builtins import str
 import sys, os, os.path as path, struct, errno
 from optparse import OptionParser
 
@@ -16,7 +18,7 @@ def xencov_split(opts):
 
     input_file = opts.args[0]
 
-    f = open(input_file)
+    f = open(input_file, "rb")
 
     # Magic number
     s = f.read(4)
@@ -31,9 +33,10 @@ def xencov_split(opts):
     f.close()
 
     while content:
-        off = content.find('\x00')
+        off = content.find(b'\x00')
         fmt = bo_prefix + str(off) + 's'
         fn, = struct.unpack_from(fmt, content)
+        fn = fn.decode('utf-8')
         content = content[off+1:]
 
         fmt = bo_prefix + 'I'
@@ -51,14 +54,14 @@ def xencov_split(opts):
         dir = opts.output_dir + path.dirname(fn)
         try:
             os.makedirs(dir)
-        except OSError, e:
+        except OSError as e:
             if e.errno == errno.EEXIST and os.path.isdir(dir):
                 pass
             else:
                 raise
 
         full_path = dir + '/' + path.basename(fn)
-        f = open(full_path, "w")
+        f = open(full_path, "wb")
         f.write(payload)
         f.close()
 
@@ -89,8 +92,8 @@ def main():
 if __name__ == "__main__":
     try:
         sys.exit(main())
-    except Exception, e:
-        print >>sys.stderr, "Error:", e
+    except Exception as e:
+        print("Error:", e, file=sys.stderr)
         sys.exit(1)
     except KeyboardInterrupt:
         sys.exit(1)
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Sun Sep 03 04:58:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 03 Sep 2023 04:58:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594834.928327 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcfBh-0001FR-0I; Sun, 03 Sep 2023 04:58:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594834.928327; Sun, 03 Sep 2023 04:58:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcfBg-0001F4-Qn; Sun, 03 Sep 2023 04:58:16 +0000
Received: by outflank-mailman (input) for mailman id 594834;
 Sat, 02 Sep 2023 15:14:20 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=M48F=ES=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qcSKJ-0000OF-Vf
 for xen-devel@lists.xenproject.org; Sat, 02 Sep 2023 15:14:19 +0000
Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com
 [2a00:1450:4864:20::436])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 60a65840-49a3-11ee-9b0d-b553b5be7939;
 Sat, 02 Sep 2023 17:14:17 +0200 (CEST)
Received: by mail-wr1-x436.google.com with SMTP id
 ffacd0b85a97d-31c4d5bd69cso2591444f8f.3
 for <xen-devel@lists.xenproject.org>; Sat, 02 Sep 2023 08:14:14 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (public.devonshire.individualpubs.co.uk. [82.68.35.2])
 by smtp.gmail.com with ESMTPSA id
 d18-20020a5d5392000000b0031c6e1ea4c7sm8865297wrv.90.2023.09.02.08.14.13
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 02 Sep 2023 08:14:13 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 60a65840-49a3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1693667654; x=1694272454; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=/2xRYdOEDKtBVaBOyq800sv45VxEh+Q5jz1wP+SEtns=;
        b=IbvnhKEN3c/UHaxWwmjhGGNgZRRSMIMIVsKWOeIS9XHHc6ElY6zlBTgyy/4qdye7DA
         ZY3h/LSzcUFbanSyUqXlVdthd4s8xRrB5Td38GokhU+PKHaTc8kx5Uh63YT1xM1AcTQp
         7dTQMSKRxZ51yqxxUuGiR9sdnytdV7IIRLBK4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693667654; x=1694272454;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=/2xRYdOEDKtBVaBOyq800sv45VxEh+Q5jz1wP+SEtns=;
        b=OW9vy/Ziq6q4QUbQOURaKfGk7zmA8AZWqvOoV+sg3OTDb45Ic130kGv9gOB2YczWDc
         Kens3M5R3J1LeX52VBaa6K6IaeVaLjFITi9E3s0qIsZGJKd1L+liZCFNPNQhnKMcMCMq
         lZrh/c9tWdvFiKIB0Hf6z69L1YZHlS65KGvMH/BYOzehJfpdBR8W4GX3g7/tqwWcpy9j
         UHsrED9jYCAV2TEGmuVDSskVhnUQQIQK/ckSUcGWD3wwJV4cI0SQhtZfk8NUoa94Xk6v
         r98kEQ/AyJzeq3ImKZYKTOdhXpZqNCmZt35svr6Pgr+OVjtGbgvrwWFC+XZ65kB1a1zq
         CHgw==
X-Gm-Message-State: AOJu0Yz3GI5KAJMyQdyNphI4ERHM5aAOPwCAwOFOrJDDN7f/ufRAU1wY
	XEEOBQBXr3gWQrNMXbF2iY0BXvjhL1e8oV0u+YU=
X-Google-Smtp-Source: AGHT+IEx4I+vRQr9iEUXOVs7mumFUKLLBV786SNLznYsc880MLZpDjbkh3myjbsMMYY14Wr+g/IrYA==
X-Received: by 2002:adf:f30d:0:b0:317:eee2:6fba with SMTP id i13-20020adff30d000000b00317eee26fbamr3685517wro.40.1693667653866;
        Sat, 02 Sep 2023 08:14:13 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Javi Merino <javi.merino@cloud.com>
Subject: [PATCH] coverage: update gcov info for newer versions of gcc
Date: Sat,  2 Sep 2023 16:11:56 +0100
Message-ID: <20230902151351.10325-1-javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Shamelessly copy changes to gcov_info structures from linux so that we
can capture coverage for xen built with newer compilers.

Signed-off-by: Javi Merino <javi.merino@cloud.com>
---

This doesn't solve all the problems with coverage as Xen still crashes
when trying to reset/read coverage[0]. Still, it's a step forward.

[0] https://gitlab.com/xen-project/xen/-/issues/168

 xen/common/coverage/Makefile  |  4 +++-
 xen/common/coverage/gcc_10.c  | 31 +++++++++++++++++++++++++++++++
 xen/common/coverage/gcc_12.c  | 32 ++++++++++++++++++++++++++++++++
 xen/common/coverage/gcc_4_7.c | 14 ++++++++++++--
 xen/common/coverage/gcc_4_9.c |  1 +
 xen/common/coverage/gcc_5.c   |  1 +
 xen/common/coverage/gcc_7.c   |  3 ++-
 7 files changed, 82 insertions(+), 4 deletions(-)
 create mode 100644 xen/common/coverage/gcc_10.c
 create mode 100644 xen/common/coverage/gcc_12.c

diff --git a/xen/common/coverage/Makefile b/xen/common/coverage/Makefile
index 63f98c71d6..75d05909f8 100644
--- a/xen/common/coverage/Makefile
+++ b/xen/common/coverage/Makefile
@@ -5,7 +5,9 @@ obj-y += $(call cc-ifversion,-lt,0407, \
 		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
 		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
 		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
-		gcc_5.o, gcc_7.o))))
+		gcc_5.o, $(call cc-ifversion,-lt,1000, \
+		gcc_7.o,  $(call cc-ifversion,-lt,1200, \
+		gcc_10.o, gcc_12.o))))))
 else
 obj-y += llvm.o
 endif
diff --git a/xen/common/coverage/gcc_10.c b/xen/common/coverage/gcc_10.c
new file mode 100644
index 0000000000..f03f5c0f21
--- /dev/null
+++ b/xen/common/coverage/gcc_10.c
@@ -0,0 +1,31 @@
+/*
+ *  This code provides functions to handle gcc's profiling data format
+ *  introduced with gcc 10.
+ *
+ *  For a better understanding, refer to gcc source:
+ *  gcc/gcov-io.h
+ *  libgcc/libgcov.c
+ *
+ *  Uses gcc-internal data definitions.
+ */
+
+#include "gcov.h"
+
+#if GCC_VERSION < 100000 || GCC_VERSION > 120000
+#error "Wrong version of GCC used to compile gcov"
+#endif
+
+#define GCOV_COUNTERS 8
+#define GCOV_UNIT_SIZE 1
+
+#include "gcc_4_7.c"
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/common/coverage/gcc_12.c b/xen/common/coverage/gcc_12.c
new file mode 100644
index 0000000000..a551b6a51b
--- /dev/null
+++ b/xen/common/coverage/gcc_12.c
@@ -0,0 +1,32 @@
+/*
+ *  This code provides functions to handle gcc's profiling data format
+ *  introduced with gcc 12.
+ *
+ *  For a better understanding, refer to gcc source:
+ *  gcc/gcov-io.h
+ *  libgcc/libgcov.c
+ *
+ *  Uses gcc-internal data definitions.
+ */
+
+#include "gcov.h"
+
+#if GCC_VERSION < 120000
+#error "Wrong version of GCC used to compile gcov"
+#endif
+
+#define GCOV_COUNTERS 8
+/* Since GCC 12.1, sizes are in BYTES and not in WORDS (4B). */
+#define GCOV_UNIT_SIZE 4
+
+#include "gcc_4_7.c"
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/common/coverage/gcc_4_7.c b/xen/common/coverage/gcc_4_7.c
index 25b4a8bcdc..bf99062fcb 100644
--- a/xen/common/coverage/gcc_4_7.c
+++ b/xen/common/coverage/gcc_4_7.c
@@ -27,6 +27,7 @@
 #  error "Wrong version of GCC used to compile gcov"
 # endif
 #define GCOV_COUNTERS 8
+#define GCOV_UNIT_SIZE 1
 #endif
 
 #define GCOV_TAG_FUNCTION_LENGTH        3
@@ -88,6 +89,10 @@ struct gcov_info {
     unsigned int version;
     struct gcov_info *next;
     unsigned int stamp;
+#if (GCC_VERSION >= 120000)
+    /*  GCC 12.1 introduced a checksum field */
+    unsigned int checksum;
+#endif
     const char *filename;
     void (*merge[GCOV_COUNTERS])(gcov_type *, unsigned int);
     unsigned int n_functions;
@@ -160,13 +165,18 @@ size_t gcov_info_to_gcda(char *buffer, const struct gcov_info *info)
     pos += gcov_store_uint32(buffer, pos, info->version);
     pos += gcov_store_uint32(buffer, pos, info->stamp);
 
+#if (GCC_VERSION >= 120000)
+    /* Use zero as checksum of the compilation unit. */
+    pos += gcov_store_uint32(buffer, pos, 0);
+#endif
+
     for ( fi_idx = 0; fi_idx < info->n_functions; fi_idx++ )
     {
         fi_ptr = info->functions[fi_idx];
 
         /* Function record. */
         pos += gcov_store_uint32(buffer, pos, GCOV_TAG_FUNCTION);
-        pos += gcov_store_uint32(buffer, pos, GCOV_TAG_FUNCTION_LENGTH);
+        pos += gcov_store_uint32(buffer, pos, GCOV_TAG_FUNCTION_LENGTH * GCOV_UNIT_SIZE);
         pos += gcov_store_uint32(buffer, pos, fi_ptr->ident);
         pos += gcov_store_uint32(buffer, pos, fi_ptr->lineno_checksum);
         pos += gcov_store_uint32(buffer, pos, fi_ptr->cfg_checksum);
@@ -181,7 +191,7 @@ size_t gcov_info_to_gcda(char *buffer, const struct gcov_info *info)
             /* Counter record. */
             pos += gcov_store_uint32(buffer, pos,
                                      GCOV_TAG_FOR_COUNTER(ct_idx));
-            pos += gcov_store_uint32(buffer, pos, ci_ptr->num * 2);
+            pos += gcov_store_uint32(buffer, pos, ci_ptr->num * 2 * GCOV_UNIT_SIZE);
 
             for ( cv_idx = 0; cv_idx < ci_ptr->num; cv_idx++ )
                 pos += gcov_store_uint64(buffer, pos, ci_ptr->values[cv_idx]);
diff --git a/xen/common/coverage/gcc_4_9.c b/xen/common/coverage/gcc_4_9.c
index dcea961936..ded89ab9d2 100644
--- a/xen/common/coverage/gcc_4_9.c
+++ b/xen/common/coverage/gcc_4_9.c
@@ -19,6 +19,7 @@
 #endif
 
 #define GCOV_COUNTERS 9
+#define GCOV_UNIT_SIZE 1
 
 #include "gcc_4_7.c"
 
diff --git a/xen/common/coverage/gcc_5.c b/xen/common/coverage/gcc_5.c
index 6e0d276f3b..fe39053311 100644
--- a/xen/common/coverage/gcc_5.c
+++ b/xen/common/coverage/gcc_5.c
@@ -19,6 +19,7 @@
 #endif
 
 #define GCOV_COUNTERS 10
+#define GCOV_UNIT_SIZE 1
 
 #include "gcc_4_7.c"
 
diff --git a/xen/common/coverage/gcc_7.c b/xen/common/coverage/gcc_7.c
index 3962eb4c76..edfdc9fa44 100644
--- a/xen/common/coverage/gcc_7.c
+++ b/xen/common/coverage/gcc_7.c
@@ -11,11 +11,12 @@
 
 #include "gcov.h"
 
-#if GCC_VERSION < 70000
+#if GCC_VERSION < 70000 || GCC_VERSION >= 100000
 #error "Wrong version of GCC used to compile gcov"
 #endif
 
 #define GCOV_COUNTERS 9
+#define GCOV_UNIT_SIZE 1
 
 #include "gcc_4_7.c"
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Sun Sep 03 06:30:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 03 Sep 2023 06:30:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594891.928347 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcgcB-0003YG-Dy; Sun, 03 Sep 2023 06:29:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594891.928347; Sun, 03 Sep 2023 06:29:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcgcB-0003Y9-A0; Sun, 03 Sep 2023 06:29:43 +0000
Received: by outflank-mailman (input) for mailman id 594891;
 Sun, 03 Sep 2023 06:29:41 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcgc9-0003Xz-Cu; Sun, 03 Sep 2023 06:29:41 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcgc9-0006Lj-0Z; Sun, 03 Sep 2023 06:29:41 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcgc8-0003Lw-El; Sun, 03 Sep 2023 06:29:40 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcgc8-0002CO-D9; Sun, 03 Sep 2023 06:29:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Glb1RBDE6gC784iFggAgsyQa9/b+XrNQEzyvfJi+nAY=; b=g0SkpFvApBfm3nwNHR/EFg9PNa
	HbpeeqUkACG1xvC5VLC8VM02F03QFCvh1r7krHrGASipEnINspDvRKrGLpbuuUizIF1+8ftxR7/Qd
	dvYNXvHIokOUXHld8+x+e5APcCC4Qe15bQXsc8tVUMKd5dTjl/H3vLtALIP5tBZUuBCk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182615-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182615: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-arm64-arm64-xl-thunderx:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=f805cf3e9b87584e16b03b5059b1163fd22bf5a0
X-Osstest-Versions-That:
    xen=f805cf3e9b87584e16b03b5059b1163fd22bf5a0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 03 Sep 2023 06:29:40 +0000

flight 182615 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182615/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-arm64-arm64-xl-thunderx  8 xen-boot         fail in 182609 pass in 182615
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail pass in 182609
 test-amd64-i386-libvirt-pair 10 xen-install/src_host       fail pass in 182609
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host       fail pass in 182609
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install    fail pass in 182609

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail in 182609 blocked in 182615
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182609
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182609
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182609
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182609
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182609
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182609
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182609
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182609
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182609
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182609
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182609
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  f805cf3e9b87584e16b03b5059b1163fd22bf5a0
baseline version:
 xen                  f805cf3e9b87584e16b03b5059b1163fd22bf5a0

Last test of basis   182615  2023-09-02 12:45:16 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         fail    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Sun Sep 03 09:44:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 03 Sep 2023 09:44:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594906.928357 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcjeN-0006wy-32; Sun, 03 Sep 2023 09:44:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594906.928357; Sun, 03 Sep 2023 09:44:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcjeM-0006wr-W7; Sun, 03 Sep 2023 09:44:10 +0000
Received: by outflank-mailman (input) for mailman id 594906;
 Sun, 03 Sep 2023 09:44:09 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcjeL-0006wh-MU; Sun, 03 Sep 2023 09:44:09 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcjeL-0002vN-5f; Sun, 03 Sep 2023 09:44:09 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcjeK-0006LT-O9; Sun, 03 Sep 2023 09:44:08 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcjeK-00016B-LJ; Sun, 03 Sep 2023 09:44:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=FwAloCZDKacSNpFZJkg/dib7Oh5xE7F0OtCIQeCVlSw=; b=MlnpXBAGhSjOlIhZdLgOcfW3h3
	66PjhODG4+8NIQpywmJ2C/uVGCMxkv/DsSKQ/hg87EZXHzRmc7zf+jCz/31/kjPet6/AGGi32FAAg
	OHcO5JSW+tfgpGongk+NhhpUlFuL81oaDVhFDlXmnk4Dcx4+CxbjzqV2cLrpX2fc4nn4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182618-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182618: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-armhf-armhf-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-armhf-armhf-libvirt-qcow2:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=b89b029377c8c441649c7a6be908386e74ea9420
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 03 Sep 2023 09:44:08 +0000

flight 182618 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182618/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-armhf-armhf-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-armhf-armhf-libvirt-qcow2 13 guest-start            fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                b89b029377c8c441649c7a6be908386e74ea9420
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z    6 days
Failing since        182544  2023-08-28 20:42:13 Z    5 days    9 attempts
Testing same since   182618  2023-09-02 19:43:19 Z    0 days    1 attempts

------------------------------------------------------------
1994 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               fail    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 227104 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 03 15:44:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 03 Sep 2023 15:44:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594916.928367 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcpGc-0008Ol-0g; Sun, 03 Sep 2023 15:44:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594916.928367; Sun, 03 Sep 2023 15:44:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcpGb-0008Oe-Tu; Sun, 03 Sep 2023 15:44:01 +0000
Received: by outflank-mailman (input) for mailman id 594916;
 Sun, 03 Sep 2023 15:44:00 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcpGa-0008OU-F0; Sun, 03 Sep 2023 15:44:00 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcpGa-0002I8-3F; Sun, 03 Sep 2023 15:44:00 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcpGZ-0000YT-Ng; Sun, 03 Sep 2023 15:43:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcpGZ-0002Mc-NA; Sun, 03 Sep 2023 15:43:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=gDEmyKnv93SN/M/238G6a9es2Fjqy6zBzr71bfpGpso=; b=k2WX3wZGH/WSq3Bx+AH9Y5XRH0
	f8BerxJaXuCjHpG5H4SVh8bCpU45D/geR+rGOMyLc/y0xSe69Lfa7Dw6TtUd2oR4C9Npt3JERWDO7
	COuqs3zLVFbAqg443V3E+fxdxkG/Ru8kl6UNDJw4dU71ETFos6bM4LChLTxKMyEapuNo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182620-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182620: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-qcow2:guest-start.2:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=f805cf3e9b87584e16b03b5059b1163fd22bf5a0
X-Osstest-Versions-That:
    xen=f805cf3e9b87584e16b03b5059b1163fd22bf5a0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 03 Sep 2023 15:43:59 +0000

flight 182620 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182620/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail in 182615 pass in 182620
 test-amd64-i386-libvirt-pair 10 xen-install/src_host fail in 182615 pass in 182620
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail in 182615 pass in 182620
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail in 182615 pass in 182620
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install         fail pass in 182615
 test-armhf-armhf-xl-rtds      8 xen-boot                   fail pass in 182615
 test-armhf-armhf-libvirt-qcow2 18 guest-start.2            fail pass in 182615

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-rtds    15 migrate-support-check fail in 182615 never pass
 test-armhf-armhf-xl-rtds 16 saverestore-support-check fail in 182615 never pass
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182609
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182615
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182615
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182615
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182615
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182615
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182615
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182615
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182615
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182615
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182615
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182615
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  f805cf3e9b87584e16b03b5059b1163fd22bf5a0
baseline version:
 xen                  f805cf3e9b87584e16b03b5059b1163fd22bf5a0

Last test of basis   182620  2023-09-03 06:32:11 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               fail    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Sun Sep 03 19:31:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 03 Sep 2023 19:31:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594925.928378 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcsoo-0006BM-VT; Sun, 03 Sep 2023 19:31:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594925.928378; Sun, 03 Sep 2023 19:31:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcsoo-0006BF-Qf; Sun, 03 Sep 2023 19:31:34 +0000
Received: by outflank-mailman (input) for mailman id 594925;
 Sun, 03 Sep 2023 19:31:33 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcson-0006B3-7n; Sun, 03 Sep 2023 19:31:33 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcson-0007gi-0d; Sun, 03 Sep 2023 19:31:33 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcsom-0005ny-Iw; Sun, 03 Sep 2023 19:31:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcsom-0002ua-IT; Sun, 03 Sep 2023 19:31:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Fkaqso61nQiVXu031wCXIbUD2R61Ac3wvG4jSoK8L/o=; b=4bnywBD7DUJS5yJJPr6OHNsWPe
	i8JPY9QyDYisahsGXChBGe4rTPBfizTi8mDnL5WSfGF0G5Y6U2Kvr7DYIWmHUdxDwkqchRdj4OuA8
	tIqrQgQ6su0Rs7OXgienzUjMeZMCOdwmlqdeyLuPJGU/ct/vkBXcnawa69HxendL/V58=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182621-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182621: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=92901222f83d988617aee37680cb29e1a743b5e4
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 03 Sep 2023 19:31:32 +0000

flight 182621 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182621/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                92901222f83d988617aee37680cb29e1a743b5e4
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z    6 days
Failing since        182544  2023-08-28 20:42:13 Z    5 days   10 attempts
Testing same since   182621  2023-09-03 09:47:10 Z    0 days    1 attempts

------------------------------------------------------------
1999 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 227835 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 02:12:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 02:12:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594935.928387 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcz49-00061a-8j; Mon, 04 Sep 2023 02:11:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594935.928387; Mon, 04 Sep 2023 02:11:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qcz49-00061S-47; Mon, 04 Sep 2023 02:11:49 +0000
Received: by outflank-mailman (input) for mailman id 594935;
 Mon, 04 Sep 2023 02:11:48 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcz47-00061I-Un; Mon, 04 Sep 2023 02:11:47 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcz47-0002oc-KD; Mon, 04 Sep 2023 02:11:47 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qcz47-0006rn-1x; Mon, 04 Sep 2023 02:11:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qcz47-000738-1W; Mon, 04 Sep 2023 02:11:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=4N5aoaal+IQ8RTa+GYpaJ1/eLSF3rEOj5IsLq7YO0cE=; b=086JAZRcy45sIFe+nWi51LvIKe
	4Me+f45bFxMV27J0C1d9IpShq3CkzM+wsH/i5xCUfAom5r76XfshpdgdjGL08+THPAsGib1Dar+te
	Dr7bgHoYrJDelaCDRLefAW0EyKb7smCVx2EEfijJCDdbdzYqBdNasNGbuZIFU6MIyLiU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182622-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182622: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=708283abf896dd4853e673cc8cba70acaf9bf4ea
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 04 Sep 2023 02:11:47 +0000

flight 182622 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182622/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                708283abf896dd4853e673cc8cba70acaf9bf4ea
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z    7 days
Failing since        182544  2023-08-28 20:42:13 Z    6 days   11 attempts
Testing same since   182622  2023-09-03 19:43:01 Z    0 days    1 attempts

------------------------------------------------------------
2023 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 232318 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 06:08:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 06:08:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594955.928396 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd2kv-0004R2-AV; Mon, 04 Sep 2023 06:08:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594955.928396; Mon, 04 Sep 2023 06:08:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd2kv-0004Qv-7U; Mon, 04 Sep 2023 06:08:13 +0000
Received: by outflank-mailman (input) for mailman id 594955;
 Mon, 04 Sep 2023 06:08:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vltW=EU=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qd2ku-0004Qp-Aq
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 06:08:12 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2062e.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::62e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6b8ee96e-4ae9-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 08:08:09 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB10073.eurprd04.prod.outlook.com (2603:10a6:800:1dd::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 06:08:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 06:08:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6b8ee96e-4ae9-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UxQrxPZVYOelMPfqGyTZvpVpg7xIpnfuMcdA6T/wZ0lAawthqEDZsDSmKpkNyl6gMFcWRCeBohtqLpgN636OdAp4oCHY/M2oin/kdDEScTdtTuIkEeg6RUr/q/GVJURJjO1ntGqjQJLT3NWYE32zQhrHQN5A0QuZZmp9LbiT/tzjx4x513PkH91ssJYj3mNKRkOByuu1QiW3FqzQePMdgSI1+TEt2QnmygyGgBa8isKvPkRBUZYAdnuvX8szgCu6ojLuUMHd8K9r/qEz/IX7eRIrx3FnBXPUttzrsxD8pvZuZYB+72GI2VksE/k4wxbVFXUkIn/CvZHJRbe/Du6+Mg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MTyLGEVhMT3LiaN+QZivDPGH643cuZBoZO8kxVDu6r8=;
 b=VOnlomwL6/FPGdUAL0+w/MP2ivhGlL3XWJzCBi6UanqJ7564tN4zlVwoB9/e77FxsHat6nYwo/NFl0OfcDI1dxkDrW/8iV0+x1GzSLDIMQsbtXfxZXNWCeATDxK4zxPf2RZqXVqn9In3FXa+F+aUcT/ll0xy3bjcAbR0PuXRmuuDJO3aelIgHoupgbMqHVZc1KigP8beDZPQPuubFQIt1sYAQz6rl/p4oQHpH0EziTFed0VU3CG/QgGplOmxKMmJZqqIEl5JxOL5cTpG/OoeBze1/yycdsf3H0SdtkgM6g1xL5aK2zATuWmX/O0txNAJaPDCzcmz9K88sGGEnyAN/Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MTyLGEVhMT3LiaN+QZivDPGH643cuZBoZO8kxVDu6r8=;
 b=2UEFERUtD1QMSbVckMGB2VxYz2pAxplQJzaXOaCaHvfHRve+pe/872mkWmTb6VgayfqQXd6kbr+vW1c+Uf/n5jWZGwqiKWrywzkpr2BN8kp/sHRs3nQQc6A6VAfXifR41hDzo4rR6Fi+p6n+s/sXeyGh/uwPfJFEj7CBUMQqcGRU3z30Pc5FvoRDo34wCK9hWhnmLej1uAdwHwTBywTueLe0308OWkG1TvuHds33b4dnQbcIigJOZKMmRTu6sReQr8ttwFN6tTWWRBf9tvKX5Wi9MhjHkEJ4BHLsKqgBCojZooaMzYrMo+l4BfEhUCnOM2yc/mnyn3QwhfvZLsIZDQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <43e29941-8434-06b6-2e5c-d3f0a39b85cf@suse.com>
Date: Mon, 4 Sep 2023 08:08:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 3/3] xen/ppc: Implement initial Radix MMU support
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.1692744718.git.sanastasio@raptorengineering.com>
 <7cebc2962002c36ecfe712bf1bcb251e083910b8.1692744718.git.sanastasio@raptorengineering.com>
 <e942f853-3536-2033-f214-1beccdfc8240@suse.com>
 <8a9c0fba-132b-1245-caf7-d4a3a670e9d9@raptorengineering.com>
 <cbcf7cff-5832-dcb6-4050-26f5fb10cd02@raptorengineering.com>
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cbcf7cff-5832-dcb6-4050-26f5fb10cd02@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0075.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1f::23) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB10073:EE_
X-MS-Office365-Filtering-Correlation-Id: 7b60320a-77d0-4355-5991-08dbad0d4e9f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wUXSRcsfbJMauruGcXghxdT/vmOdBp5gt/bys1HhFVtHoBJoI5GrnJLEWwPOs1oTv4n7tiXWXsohpAmp4w8lYuPek3cuVrQu62ufyKeGqicpWuVp0+FE5dw/+zioXgwv7PBYNw2obWfLD+djpu65oMeR5E3aGO0ntFrHTX6eL2CrBBwbuPClTfMQRHJMIlny3Tez3/brRfHSlE6weCT/UensF27T3uH4nExempIvT98Gu7VeI0PzE/AC9DpGNblftd7mq40EfCX8QtpDuLVDOLeo+nSyijkrUopdVPaAceoKtLUu2NJ8xf1I7bcOh/qfzONdHe3R4SkVCgmGJsh0JLSlwHShmEKEASBXDRsCM1F8yHhpcfvpy76vXvu6OGl8eP/bnzTR8vpiKzwLs1YUhOPWmpnzmfowFBSmC3t7Mnrtfec4/mGsfZMJJqD3e6sWgCF7wVDFssyxMhksStaU4D5cX/GIzG8Y2OJmIohRe6eRqttSO4aN+IvUtVYHv0WUrfT+LPYYzoqCy4Syi+XCFvvc6KOK4xHON7KC+/vbZ6WKLrD5+muR1q9oZNxL1FMJK1uTQ2BDZwYUYxksUwNwRhx4UH/NHMHj4onr+2SfpHuh/RtKvuFsM1Lyzeo4WQoYk9vzFxb4+LBpaOtIBfCjtw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(366004)(396003)(376002)(39850400004)(451199024)(1800799009)(186009)(4744005)(8936002)(41300700001)(478600001)(2906002)(66946007)(5660300002)(8676002)(31686004)(6916009)(66476007)(66556008)(54906003)(316002)(4326008)(6512007)(53546011)(2616005)(6506007)(26005)(6486002)(36756003)(38100700002)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OWMvNk1ZZG43SFBJYlpBUkZlbVJodVI0THBDaTlDTncxRDdBeitidHYzTlhE?=
 =?utf-8?B?V2k4QVVMM1o5UzByUGgzbmFSTCt0TkN1TytqMmhqalNYek9XM0dGOGhNSGU2?=
 =?utf-8?B?bzF0M2RIK0h6SDZsZ1lVSlA5dUtrZVozcU5vM2tacEsxd0JoaTlqa3Z1cjRL?=
 =?utf-8?B?b3pjSXdlNmdBTkJJczQydW5Ia3BTQ1RyS2xVNHY4ZFcyOUJldGU5TjU5VUQ2?=
 =?utf-8?B?TzVjcHRpU2pYaWNRdWlPRHpRaUQ5NFZHUG5rWG10L1oyNysyY3h4S3RqSjYy?=
 =?utf-8?B?TnFtU0VRL2ZrTHJWd0VlR0l4Z0dnMy9RTmova1EzSVYvTERhUVpuNExWaTkv?=
 =?utf-8?B?WUpFTmMwQXFtaHJmRnVyREhRVFByZXk5UkFvUVZ0NnZlT1NVeHlQdWNBMCtE?=
 =?utf-8?B?M1hzSWFIY1RlRm43WHA5TktjUnl0VjJJZVR4aHUveWxUc1pSK1gvSVlGMlNW?=
 =?utf-8?B?NXQ1TjRpMEN6K3kyWFdqYTBrSFZYdnZHSk1PaHF1MU1ETm9tamJSQlVOQ2J4?=
 =?utf-8?B?NDBsU05LYXcvRUpnNUJlUndJK3hTSnNTd0owZkIwQ1ZVZ1krOXJqSHZBbTFP?=
 =?utf-8?B?cXlhQ2YvTVlWTkJZQW05TG8xcDluajlHOHBDRjRsdFl1MjNQaURkc1JQZFI1?=
 =?utf-8?B?MGprb1NTQWthSUdVaE85WTdJdjdKS1BwOXU2UXpYVlR3WU9QNE1yZWwwQVoy?=
 =?utf-8?B?dU8wTERLOXFSQnJMMEtKcS96ZEpYY1VneGI0S1lVbXVqSmc4NUFZRTZ2WUhq?=
 =?utf-8?B?TU1jN1lhYlJQbHhOeWd5MFlwVEdDbmwyTGhCUXMyY1A5VjVURkJIWEZwc2hZ?=
 =?utf-8?B?cTVoK3RET2M1dWl2eHhuSG45bDdqODliZDNKYUlyOXg0TmJYMlBTTS9McG0y?=
 =?utf-8?B?R3BUVzNTdys1cWlXaDZsRmV0cFpGUnpHZkVDeWZvMjQ1Zk1RMCtnaGFPQmor?=
 =?utf-8?B?MTkzR1FoUkNmdFl6V1pjWmRMRXZINWw3ejJyK0Z3NTI5bTFtbE1wcWVBMW5r?=
 =?utf-8?B?TWNzYktkMzZIWms0azJTOVhyTHhiT2JkbDcxWUQzS3FCM2hDL1Z3RGVpTnR2?=
 =?utf-8?B?UUJmN0NkaGZPM3dPK2pSTHdiQkxKeUxnbWxnb2hYUE1CMEg3REdmMEc3NXFh?=
 =?utf-8?B?cEgwc1dkZzhPSFI5THBkRE5pRU5FY1VxMGdITW4vNW1VS1pZSHR0emFUUC9C?=
 =?utf-8?B?VFl5OTl6bzJiY0gzTFFNRkl6V3dWS3kxSFpzNUh2RU1heXozNGRYZkEyTDgy?=
 =?utf-8?B?UDZwL09yUkYwVHE0YkYyNE80QVZLNjQwTnlZS0hEeEVsY1JhMEN3RVZ5K2ZW?=
 =?utf-8?B?RHhTMjBwWStSd0FCclJkOGhiOGkxcHdPOVE2RjJjeGdrUUZUZGNYMUYxU1ps?=
 =?utf-8?B?M1MzbTBlN0hwaTRuS1drNER0TnFIMHZmNmlwMDlNVUdHTUhZVHgxa3l3RDV6?=
 =?utf-8?B?STQ3MkRqQWxtb0RUVUxjMlZreUpMajMyRkZMSVg1blJ2Rmh3OHYrb2R3N3Z6?=
 =?utf-8?B?OFBpOHdMVDAxOFdwSGtUNmNRTGd6TGhQRGVMd2xxQXBuTjJ5a2dOUXpBaXBh?=
 =?utf-8?B?RENmZkpWSHJENjJHMWJCc0RHZFR5alVZa29mZFk0WVIwRUNNck9SWVl6K3du?=
 =?utf-8?B?cFRqZ3ZuaUhlMHgraGE5WmdqOWZQdEVYa2FQWnd1T3ZtMjhhSEozVWRRblZm?=
 =?utf-8?B?YkxZZzJjcm04ZjZhc0lncGoxS3ZPcENSQXF1QVpkNUg1dys3Mk9peTg3eWVG?=
 =?utf-8?B?WDlRMnRtTDJHOFJPRzB4ekthOERoSjhKUmxBZFE4QUc5WkxqdERiSUxnY3Ex?=
 =?utf-8?B?WmpZdXE2VURZL0ZRRFNTd0ZqUEdCWmlUTmVaVW5zZDNpTWdETXVURk9XMTRH?=
 =?utf-8?B?akZSb20zckpQN1R1YmhmVmlsbzhqN3BTVnBMVkQ5MFpkQzYvWFZnWWdXUlhy?=
 =?utf-8?B?TFMvRVBmUFNReVVVWUdTNysxNTFaSkFmYUFPa0Z1MjRoZVBhRmJ5Nng3V1kv?=
 =?utf-8?B?T0xjZndSdzkycHZ2YU9TL2hQMGVqRWlja3V6TGZML29KaDFETVdZalZvNmll?=
 =?utf-8?B?eHY0akVTYURudlhzQXBXWTN6c1VCL0tqRng4a0daK3R2L3Z6Q0pGeVpiT0Mv?=
 =?utf-8?Q?cm81VcATbx1vTmABE2RsGnCqs?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7b60320a-77d0-4355-5991-08dbad0d4e9f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 06:08:06.9753
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: G7qJ1YKnOywCvfTs0a7+nZxBUY4mWhgyG4ABoUKZgx2tf8JpY9E8/JDay5wMZGQBSuxawrQdjS3ZaIMmWcICEw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB10073

On 01.09.2023 19:52, Shawn Anastasio wrote:
> On 8/23/23 12:36 PM, Shawn Anastasio wrote:
>> On 8/23/23 9:04 AM, Jan Beulich wrote:
>>> On 23.08.2023 01:03, Shawn Anastasio wrote:
>>>> Add code to construct early identity-mapped page tables as well as the
>>>> required process and partition tables to enable the MMU.
>>>>
>>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>>>
>>> Acked-by: Jan Beulich <jbeulich@suse.com>
> 
> Just a quick ping to see if you are still good to merge this patch. If
> you'd like me to submit a new revision let me know.

Ah, yes, I managed to overlook this (perhaps more than once) because the
earlier two went in already. I'll try to remember to include this in the
next batch to push out.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 06:46:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 06:46:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594961.928407 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd3M3-0000SA-AU; Mon, 04 Sep 2023 06:46:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594961.928407; Mon, 04 Sep 2023 06:46:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd3M3-0000S3-6n; Mon, 04 Sep 2023 06:46:35 +0000
Received: by outflank-mailman (input) for mailman id 594961;
 Mon, 04 Sep 2023 06:46:34 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=8Cex=EU=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qd3M2-0000Rv-3X
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 06:46:34 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20605.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c851369d-4aee-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 08:46:32 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by DS0PR12MB9323.namprd12.prod.outlook.com (2603:10b6:8:1b3::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 06:46:27 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 06:46:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c851369d-4aee-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QRzqBPi7RwtfRtdE5rdxAU1IVsogrWidtVhjK7tssaQ+zKkayiJi60/rgb56SL37iB0LtxbSvArm08kE+9UklaMjZqhJHtUTRLuhrsdU6kOi0sniD21EMAkqillP9xHKStrg+FlE6Yvzhj+6K8MsJbF8fciZELQyyS7Q7Ku7yMewHNPbbgnpoBdg+5s0ApCziWEJ7ntUkbRHT/zeMVirLSwtltDOeT3n1qu5+YVLB5VAlXwy/8gQjZvHktm++9tTrAbxuggrIZxMFbeegr55cbUSmNrpKbpcZGNWYrCtbOhvcMNzOA2riLLE0Qw5Wp9rEaTzZHjPp07ZI74MgK+wvw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=SJrRPI1Ee77EK7uAYCAbaRtDK7w/nt+ui+Ot9R1oiv0=;
 b=eKQecve5NRpwHW7xmdC/No7S6JwEyrlv+kVtAl4/jm8kDKzhSMByF1OHWXaB/CfTV1Ms0rkmVDWDFUySPyh9WLeaPUyrpNYNgkXZd/ScH7ozMwbBCuWOQNhKrUEyTI6+zylPZWEiS8HghtC7jV1juqaN5c5TYgG7q3xVTwgzoGdA6IvyC0NroGVfFK4q2Uq1VA1gDaqQXXedb1T2/N4hdrmi5xK+qUlarQY+slcydNa9doaJJEFXt53KIHjfJMPF+8Lv3kve2srozfFS3mRz1iOCqprJok7wuzwQM5HHtvpzU8ur8c5z6CxB2crvYOvK2K/3PUDqsGX04fsOgoGIoQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=SJrRPI1Ee77EK7uAYCAbaRtDK7w/nt+ui+Ot9R1oiv0=;
 b=ZAcUtPAT93QE2kw/RbYkC2wTborgxhgrP74N59g2djygZt1+NxTCidM+2dFs5pJhpZQpem+Y7UYd8ds8lwdCM6MtG95jL8C8qFKq4GUbYbNIQi66byW8DYZcGTA8sc2soBv73HDwZ2Y7eMDggP8mePz3ou78PrawII29HKoGlqQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Mon, 4 Sep 2023 14:45:59 +0800
From: Huang Rui <ray.huang@amd.com>
To: Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
Subject: Re: [QEMU PATCH v4 06/13] virtio-gpu: Configure context init for
 virglrenderer
Message-ID: <ZPV9JxTVPNwkteu8@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-7-ray.huang@amd.com>
 <a3ffe20a-db49-5c16-caed-a858ea5dff09@linaro.org>
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <a3ffe20a-db49-5c16-caed-a858ea5dff09@linaro.org>
X-ClientProxiedBy: SI2PR01CA0004.apcprd01.prod.exchangelabs.com
 (2603:1096:4:191::22) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|DS0PR12MB9323:EE_
X-MS-Office365-Filtering-Correlation-Id: f69290d1-7a55-4de0-a25f-08dbad12a924
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kZX9mc+XtEWssxRbcJGEBSN33fA8EkYGVL286jZL+ijfuAi40nS4m9HIn9bg1zsNlcxN5MawgYS0pFVKxOf3/JBnI2QxxbJWVNyr3Qt/DJgodCMzATe38iUMwAXaiMBtd1kcr4IAT4W40pNLrq/gluoRPvpP8Fb25uYmBjpxVb4UiefFgU2mdrm0I4D3UoE4FniZca1pNLmt6NCImQHQGPW2IWHZJRkJRKQ1diUl+Um0fS4NOwIs+urnk86v6m4Ic2HfIA0r0N+QWPecgY9cn2MVMhbpgu0VHZ3XIagtpDAf4pjCXajD0UxpD5E8s2plL9vz4sa6sf0wEXJ1vbwjbla2oWlqg8FepY2zDTJrGufeZoo4ZUuEwXMr/CVCo/YtpMav9ZFSj8wn7QHpiv1/P9xgOR+yQQnghCJbw+Ec+nmnd/p4KcxoRp53/bOx22T8nGoTbu0em12XpT6B9pDmyJ7p6euKTjRJ8cTUctpf9Maqp8XBCzmM80vLCA4I2x73BNsTPOBdHCxo034ABo5v45FtjDz0b/F5MaotBrPjaYfKRA+PTHXakSP9ZN1wD8pW
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(136003)(366004)(396003)(376002)(451199024)(1800799009)(186009)(7416002)(8936002)(41300700001)(83380400001)(478600001)(6666004)(2906002)(66946007)(5660300002)(8676002)(6916009)(66476007)(66556008)(54906003)(316002)(4326008)(6512007)(53546011)(2616005)(6506007)(26005)(6486002)(36756003)(38100700002)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?iso-8859-1?Q?Qlay4XOvTzSEG0Hazw/1kkV5FDeWfGwsD5+oJUSZb0rj1whPGHNr9rSnB+?=
 =?iso-8859-1?Q?2Ps04IAd3PmeHvt7NzLI3GelN9pWB7l0XMn4B1IDyZjDS7vDK4W2uNWPXM?=
 =?iso-8859-1?Q?e3E0G/WOPbV8zLiABZkn03Qo02Obo94/D+P4Ax2MUcC89i64agtKJUJ+FQ?=
 =?iso-8859-1?Q?q+kD5X0jXJV44roSx7ML2DzEGBmKRGMRoeyOc2/wJf3OH+rThpm7UaJTUt?=
 =?iso-8859-1?Q?S9l+28y90CMkWkOJWCCJs8dpvBu5oNjvbA7OgVSnow2YsX1IKNpOYfQQjA?=
 =?iso-8859-1?Q?JFxwcqLxQntV4yZAVCn+8FJsolEnkRUDX4kPfimelfqHBU8blpLkU6QggJ?=
 =?iso-8859-1?Q?C+RyoysYCHHHY58/G5TRx3EinDt9td1J0e4XLANOe1eytxIP637JiBuGez?=
 =?iso-8859-1?Q?7wLq6X90P+nkxU1y3IsDJf9GV0Qc9D5Qt6Z/6OKp07MN+apLEdvAQJarEa?=
 =?iso-8859-1?Q?PrWgFywr5PcT8hTOagm7+usn1jbrqGEzSX6f6z7r2H2F5peMGaaK0yoIic?=
 =?iso-8859-1?Q?c6cApXEZqpQPczz9S1S8o6IKGLJWH+Epm6QnZMc0+eXiJhywgrCUfMnOkC?=
 =?iso-8859-1?Q?C3OVU7p5/vWPOenb7JSNvdU6ngeJhcfaJwWw1odRPO3GbLTPWnLbbYRAxK?=
 =?iso-8859-1?Q?VKV0G1CFE2nIQMWADHWcy/mI6FNi76p9gRjvhLrumZ4urKHFLOHn6MVYLJ?=
 =?iso-8859-1?Q?pH0hWiTaQMPwXggy2OzR51mlWVPtomsRxrC+2N5dMm9J9OJNC+QGKJ3r88?=
 =?iso-8859-1?Q?Hn2dIBTnR2sqNTZvY0DOcbowXWTSQhOmu7gehqhavLZnOtOXnZget0N4md?=
 =?iso-8859-1?Q?TmQYH1Azl3pta06es+PCLei+4lGkKNcvQyRZBBA5X32y0PKN0IOBjkfdyq?=
 =?iso-8859-1?Q?ZfbwWuFHd8kDKCvpOeRRTHOISiZai2qF8Lq5cuFg5uQHCghiByaJNKyKyQ?=
 =?iso-8859-1?Q?O2N9nbhCLytFJPk6309bG7v5iEoq/X57CpUylh0Xl0ag4DhW6a1RFbREW+?=
 =?iso-8859-1?Q?L4jsEIl0bJ/WguEU4W1JTL6e69nB2SUWxl9MuOcQF5cRiNsUt9WU3I3deS?=
 =?iso-8859-1?Q?YnvshhvLA3GYyUuw65mcO3fvc+u5XakZ7RoQbeRButXQESNS+4Z20WI4Ni?=
 =?iso-8859-1?Q?I+Xn8R5vfsgQEVBTsBWiiTc03nQFMcAxy9l17WJCVo1FI8F7PjzZalqTHd?=
 =?iso-8859-1?Q?i5tztRJnGRdRoh1Toq4p1/uvDWvecoPDK7cP/nab9XuxJptMhbqzP+AzTH?=
 =?iso-8859-1?Q?Uf1pTL8/f8Ts9J2bBzQ7+lqbN8MZRgd1qsQnbkuCQIoG2m+N9rbo/5QhAF?=
 =?iso-8859-1?Q?7MZoY/E3e+x+MpRa4tEIacTJkc2l4dPHUYaoAdfBKJWeQY5htS36eywfab?=
 =?iso-8859-1?Q?hpPpwfziU1X1GbHpnpNs//Eq/4P1z2DXBu9CYAIqhum1Qn+tBo/BOowB0t?=
 =?iso-8859-1?Q?xLWDO8P3996X/spBzS6RcH2c0zulMtm8u1HtjqN8K8cOmo9nu8DXEFGK0L?=
 =?iso-8859-1?Q?TWjSo5E34xA4OOzBwFEF0v6lvu+qAoeq4bedj4EbTVx1gK/JwQbt+hCfD0?=
 =?iso-8859-1?Q?s39RjNirEURjYLiEqDcdL//s5QPECIKsBG2PwzBlVfVIfQ37qifc2h7LsX?=
 =?iso-8859-1?Q?KMPlHuX/Nny7PEgKv9MZi+11CxecoJGLwM?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f69290d1-7a55-4de0-a25f-08dbad12a924
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 06:46:26.3336
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7u/BB/Qoneb+LE7knJLMyOidZzPBSldvbNAa9tc8MvhCO0/UHoJA9x0S79HojUsSXKYPjZJ+RhfN3JuxNRLe6Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB9323

On Thu, Aug 31, 2023 at 05:39:38PM +0800, Philippe Mathieu-Daud wrote:
> On 31/8/23 11:32, Huang Rui wrote:
> > Configure context init feature flag for virglrenderer.
> > 
> > Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> > 
> > New patch, result of splitting
> > [RFC QEMU PATCH 04/18] virtio-gpu: CONTEXT_INIT feature
> > 
> >   meson.build | 4 ++++
> >   1 file changed, 4 insertions(+)
> > 
> > diff --git a/meson.build b/meson.build
> > index 98e68ef0b1..ff20d3c249 100644
> > --- a/meson.build
> > +++ b/meson.build
> > @@ -1068,6 +1068,10 @@ if not get_option('virglrenderer').auto() or have_system or have_vhost_user_gpu
> >                                          prefix: '#include <virglrenderer.h>',
> >                                          dependencies: virgl))
> >     endif
> > +  config_host_data.set('HAVE_VIRGL_CONTEXT_INIT',
> > +                       cc.has_function('virgl_renderer_context_create_with_flags',
> > +                                       prefix: '#include <virglrenderer.h>',
> > +                                       dependencies: virgl))
> 
> Shouldn't this be inverted with previous patch?
> 

Yes, this should be patch 3 because we should configure
HAVE_VIRGL_CONTEXT_INIT firstly. I will update it in next version.

Thanks
Ray


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 06:51:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 06:51:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594968.928417 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd3Qu-0001tr-TD; Mon, 04 Sep 2023 06:51:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594968.928417; Mon, 04 Sep 2023 06:51:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd3Qu-0001tk-Om; Mon, 04 Sep 2023 06:51:36 +0000
Received: by outflank-mailman (input) for mailman id 594968;
 Mon, 04 Sep 2023 06:51:35 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vltW=EU=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qd3Qt-0001te-N0
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 06:51:35 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0627.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::627])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7c93b8c4-4aef-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 08:51:34 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7842.eurprd04.prod.outlook.com (2603:10a6:20b:245::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 06:51:32 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 06:51:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7c93b8c4-4aef-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=b4rrbQC7NuJ2YPxVI2oJKowd0y+Kz8pMLe5yYLd568iww2tFcCjggbOGq6OME//pQ7l7DSzq/8mYZe4NmWyKzjV6Pg+yuFgXOT0TvhGSycp8lQKAPwoN8O8fjXe4eK0nIGhA01bjhG99EdGgRAqZ5FXPlRMwOuQ1w6wI5JOunBQZEkq6DwnPjQc0siJ8IRflOjWjREqWWjl/dPkD9/IEQvarAhv1gJ/jp12bSSOuzNhTdg6NMoq4h5JsnAOhvzDVdx1q834Hp+UmLj45HhSHYtMYfihTrDjTAcRgPTi/0vOdDxOX7XOGQypONBvno3ITrfm6RWupk4LdU0qxJd2tNw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TF2lOeCbTErEfk6SsN41ExQh882zt8sOJvz5ZkwPoWY=;
 b=RciAYagqaaECs5nsfi2v4DRTsBeBONNnwoGN3PZ2Wn7VNRVB2Jx0cdK7OhR8filIP/UG5mynNbADoNl2UOk/uxujUbN4tRs7qFbWe9+HZuR2GKx9Vk8OMFOD6wQdTmr5zp/eOjg/SccseL0DVBpSOtJG7roYzrSlJXtDjw1DqP0+DyqFFVvjq/pIxyBHlFvzi7SwqlrksvoIoQOPZDVTJXp2dE2ZXDDxziIZ5SbiN8wCM0peCPPbiJtHRauxXwcGllJKJeFe+GLi4z0a83vC5WTo4iUHHaxT72zGJjfALMAj2zmjTSxnDrbJM2iTWgJWPKOaMv856bxHD5jEzujOdw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TF2lOeCbTErEfk6SsN41ExQh882zt8sOJvz5ZkwPoWY=;
 b=YHLF+3hqDxkLz+VZTCShu3xOAvBqTaoBns0fkxOnBqcFx0QQgWqqGXXpAh5AEUsjkXje4/G1JIAwS2kgHCxNJSWmy5v9KIHDoaMYNxe3VDRz3Gor20/xIhVEcSHoaX4sFijU9LKeqQigzR1nkvk8SeQMloZkt+m2eUHgoEByW3i/MNv9UUnY8QFqUl4prTOfBbo00fcTguiXtxYKSwX4NyO15A5FCjVEAfzxPNzQEiFn5+DNRkWdG4Ghj4qu6GSdDdrfesxTPCzYMF8TXUxHsKcvllndGwbcdYPQqVVpW4lOQMFIgP/980/fa07tLco3GbQ4WDiUMjqPTaHgYAMqEA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <44f0ee82-2a84-d4fb-15e0-fb74ed1ad2c3@suse.com>
Date: Mon, 4 Sep 2023 08:51:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] tools/misc/xencov_split: Add python 3 compatibility
Content-Language: en-US
To: Javi Merino <javi.merino@cloud.com>
Cc: Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>,
 xen-devel@lists.xenproject.org
References: <20230902162246.15672-1-javi.merino@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230902162246.15672-1-javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0137.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9e::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7842:EE_
X-MS-Office365-Filtering-Correlation-Id: ccdfd1bf-698e-43d3-fae8-08dbad135f6e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	A6Xxwj03pCiVyjnMdg5VmCFdhQAaO1c2GrFOSdBRyLkAt6NRDLPbydyb/Z8iRlefq1AQjgbFjroWgGW12v/Xxk7R8b85bKpBQICFikyeEEo8H3j5whY2YJ/cmdiPodadKkgLGgdejIgA4BRzcJsuqmgmwHr6Yp/wcNaFe3loDISOBpINfn84VnAcBDe5ELETGOjh0lgq5KRHLNFZx8MhrioSoU+95BBSxIRuDGRmdo9pIKEum7gj3MDNXI/yMS0LaVJf2L6jV2G97t+q804ANYkgloBP2smhtR6x0BVchlRkCmQUWcIxhFWh+qN/6YHXQWziWajH2CR4FBmeHqVUDyMlKqBTIzxIGkmr0p6ZsyFxeC968Ci2tM0yNuEsKKZ229SXDYhzYBclK7zRSuCEli4jDpATp7zICW0pSqwSHpy0IUrdKzFA0Yhe3+Fh3HGECLOSj05tU5rmOcarvnqB2rVOSWtpFG/2GgZsEws9+U4FUkOknvapaW0t8CV5r6q/VL3trsCyuq0o5TkQyhKEPQcV8MsAm0aW/g1p94prDBZN4NayIwtr/2LrSqi9rMqjcGHVKVuuj0Eb8qEmv+Pp0boFY5GsO+wYrd29cAWE/nEcOR9SpYpSDeEafwBkQ4jsskUsj3Z0QD6tyl+7qb04Pg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39860400002)(136003)(376002)(346002)(396003)(186009)(1800799009)(451199024)(41300700001)(6506007)(6486002)(53546011)(478600001)(38100700002)(83380400001)(2616005)(26005)(6512007)(4744005)(54906003)(66946007)(36756003)(2906002)(66476007)(66556008)(6916009)(316002)(86362001)(31696002)(31686004)(5660300002)(8936002)(8676002)(4326008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eTlTdGw4bXFRU0NwQS8wQ1E1VUtqbVltS0RadUxwV1NFRVVCMlZGanh5QzZ6?=
 =?utf-8?B?NCtRRXdHTmlmS25WSHhUb1dKck91Zk44RzIyOHdIRjJnbHdFWGxaWHVvek11?=
 =?utf-8?B?Y3pzU3lLbTlmTTNPdUJZckIwVUx1emo1eExjZGxicUZOdVdoQjJVclo4WWJ1?=
 =?utf-8?B?VGo3QStweUw1M3R3Z05JZnNiazRiVk81bXZoSVBrZyt4V3hsSWE4WHV2d21n?=
 =?utf-8?B?WmdhYzUyRVJCRWowNzRWb3pzekNiQyt6NzNwZmo0ZE1ubTBPc3ArY0pTS0s4?=
 =?utf-8?B?WWpqeXNYT2ZBMWtUL04zUEJxTjBlWW1nc2VFSUl1cXpBWG9pdU5oT3VJdHRD?=
 =?utf-8?B?elA5VlV3RzNzVHpQbkhDZlRYYmhvWjVZajVMV1dnSHpqUzNaK2VBZ0k3RUVs?=
 =?utf-8?B?OEh3MG1McmNKMFhxSlNVenJQN051bkp4ejh3Q2kyKzR1bGVRQVVQaVFMNWF3?=
 =?utf-8?B?SHpSRTVhWjM0L2RsTFo2YTdWcWp6eW84VnZxOUZaZVNWSTlZYlk4VGZ4UGVI?=
 =?utf-8?B?VDI0b1dXVzRSekZJeFo2SElUeHUvcjdDQ2U4MkZlRjNJamFldFo3aDB6TFBy?=
 =?utf-8?B?bjFMK25yVFFHNzlJbzNhS2l3b0tBUjh2YnhyU3lUN1JNWnhEbjNKaDQ5d2lI?=
 =?utf-8?B?VDhHbWFScXowUllMQzhweDAxVnBGVkVvYjRJeE9MMWdpTjhRSXg2VWF6KzhO?=
 =?utf-8?B?YTErbHoyN1pJT2xoZEg2T01jNEdJd2lMQkE2NEZxdXo5NGVjc0NZWlhQaTZ3?=
 =?utf-8?B?d1JsVXovZTVXaHNKZGU4bElqOUNweEp3WjNLT0xpdEUza05vOFRNSDMyU25u?=
 =?utf-8?B?ZERwQzZ5Yy9XbjR2dU8rQXhhVWdTNXJVbUMxRHptNFRrNzVMWlZFQWNLSVJj?=
 =?utf-8?B?WUhkd2Z2RldWTlhDT3lTMnJlMUg2WEtKRTkydWM2UGdNT2s1SkF4Y2t2U200?=
 =?utf-8?B?R09wVE5SV0xTclJ1dVJDMVhXVGc2N2ZuTmlRSm11V3NId1IyRUU4UWpoaFJj?=
 =?utf-8?B?ei9rd3kyZnRlVGFzNW02WG9pQ2Nza01HT09QcFNIR1JOeHFUbElMRk5qdjJp?=
 =?utf-8?B?dXpVaThpMXRYQjN3U2pMeUJvL0syVWVtSEdjbGtKTU83cjlXZHUweFlUY0Fm?=
 =?utf-8?B?d3llUHdGMXc4YU1EMk5Bb1krR2N0VzdUUTJSelNCWUNiR2NPZnZXb1hMenh4?=
 =?utf-8?B?U2ZsR09Vd0dyQnR4Qi82Q0JyTi80WjJPRVVyUTdIdzFxMG1kZklhQ2pLMTBW?=
 =?utf-8?B?VjRHdGhFY1g2bzlHTUNkNUw5UzFlQVZRMDZzMzMrWUxEOWtQT2UrRkg3RDBr?=
 =?utf-8?B?aDFDOEp0VVNzZHpHYzBZc24yMGEvY1BKYXJMdjBlV2dQNG9jT05LU1k3RXFM?=
 =?utf-8?B?QWpDK3RZUXVoVUY1cVFSQWpHN05Wc0ZvNzRIdWRQc01NY1dnSFFQcHdzTDZk?=
 =?utf-8?B?c2cya3NRcnBkTEU0K1RVY2FDWXhiTURGSTBydmpIZ1NLNVgySGsrcWh1azBL?=
 =?utf-8?B?aHdtdE1PaFJROFlpTFFRMDVKT3gwUjcyekk4Q0dFNExJbmJ6UFR4bG5aNHpr?=
 =?utf-8?B?ZUlMSVhDZm12WWV4YWdtTzFkbkJkSzJadkNoc2tMN1pQdVN2RjRNMW5IZ3Zv?=
 =?utf-8?B?czZ6ejlnVk53ZXN5OUh1RytuVkduSUJzM1E5djlkSVBKcWkwRUtYQTFtQkZL?=
 =?utf-8?B?bFBUVkEzVW9kMkR3M0ZsODhub1BkMTQ5ZGpDODlhSDRqbjBtZHE1NWpxU2FR?=
 =?utf-8?B?L1M3REVQdHlVNDk4cnlVM0ZheDNzZ2N5NHhBM0xJcmN4bzA1WFdpeUxXUVBa?=
 =?utf-8?B?UEZTZGZlQkZRalFEbnUwcEVQVWRucFBHWnVqcFczTnFsUEZOSU02V0FuVkhr?=
 =?utf-8?B?YURRK0kxekVRZnlvL1ljeU9lZm9tTHpuQ3hzeENGaEZUdS9Ddmx2ajhKdVZG?=
 =?utf-8?B?bXJrMzZvKzZud2J4Ly96cWh3bmZaeklYVEt5Wm5Ib2lWV1hNMlpFSnBNVitN?=
 =?utf-8?B?UzJ1U1BLNFlsbHliMXkydlRrNEd0ZHlWcE1LNTM4a0NxQVVLcFE3TVBCOCsw?=
 =?utf-8?B?eGhkaGN0a3dFL3p4b3d2TnNaVFlZY0J6T1NYUk92RGc3eGFkamVYYzd6amNt?=
 =?utf-8?Q?5oydErIMYZOwNeU6DFBxkUvZT?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ccdfd1bf-698e-43d3-fae8-08dbad135f6e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 06:51:32.1919
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: j1hnPwbZiVmEDVegoQhhseTOLvNDFEbwQwZbsQwMZTdfXW64jp/l4X4xCxtA4kSQqBpp0tNlJ1/A5fHNjuZSzQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7842

On 02.09.2023 18:21, Javi Merino wrote:
> Closes #154
> 
> Signed-off-by: Javi Merino <javi.merino@cloud.com>

The title isn't really in line with ...

> --- a/tools/misc/xencov_split
> +++ b/tools/misc/xencov_split
> @@ -1,5 +1,7 @@
> -#!/usr/bin/env python
> +#!/usr/bin/env python3

... this part of the change, and making Py3 a requirement here (assuming
that's indeed necessary) surely wants adding a few words as description.
Grep-ing the tools/ sub-tree I notice that so far we've avoided explicit
uses of "python3", and I assume we would better continue doing so as on
a distro with only Py3 a "python3" alias may legitimately not exist.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 06:54:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 06:54:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594973.928427 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd3TS-0002UN-8c; Mon, 04 Sep 2023 06:54:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594973.928427; Mon, 04 Sep 2023 06:54:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd3TS-0002UG-50; Mon, 04 Sep 2023 06:54:14 +0000
Received: by outflank-mailman (input) for mailman id 594973;
 Mon, 04 Sep 2023 06:54:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vltW=EU=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qd3TQ-0002UA-UO
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 06:54:12 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2047.outbound.protection.outlook.com [40.107.13.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d9adf1e3-4aef-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 08:54:10 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7395.eurprd04.prod.outlook.com (2603:10a6:20b:1c4::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 06:53:41 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 06:53:41 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d9adf1e3-4aef-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WP6tkmng9Kz9rXhGlU8bwV/3aoA1D7d4gaKS6xuLWsdP9cdRgZXx+fiuZVbtgj9hVFFu9dfhT1SZ+b3QQgQ+xzaYNGAX43QXkDCp3SYQmbhwc+b/B15/ei0yN8+cvi+1t4+eS0TM7y0j4hGPksRKfyWcAHyEayxFBQK2rdpJKE9adyV4ukSU/Oq3f2OIIXXAuiGBLM7wOJ2325X9UKaGQJ6CqO9Fx+vDE6Ayj+JPympxuhCjSKZH5RVqmGz7JSEqEJ9jMbICjyrL0LulSh5scqixcot84JWZm4+EHnnm4uGWJQeyzFGX9aAJWm+qzlGk2NGr0MpDaHUoa1L1O5Q26w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yQCkIMJnDmpeutwPEvoHUYsip+Qlpmk/jXAZ8gbMxiw=;
 b=csMUXZp7Fkg+cGMucGaERxsX6aSe8/4iUIxd1lsgzuPKh71loT/3m4bc7EyE2GukFLzvbrNr51Wg+9ZBfH9J+IZwatHEevvdvfUD9t/4Sf9U7aKE3Qo+1kfp3x9cIOnrZZ5LZAPx/CNEXdmBdyULVAOs6rN1fY+n1uYok1BqXlbQBNjXmNBR0YwKBF3NgsLuAg2PBtpvt3WYtp0QNKkQgWR486JaLA3Pj4SlpFlk2i1Ku1jmcEOk7qdDUEqu7FrWFfxTFxK2sVkwdSyIk2FZOMAt6kXdVF98nN21h1MYUFIngeP1DDYvFOUK2CpbqAX6709WeC2uEiorA7v08jkXgw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yQCkIMJnDmpeutwPEvoHUYsip+Qlpmk/jXAZ8gbMxiw=;
 b=Uue73rA53ebin5ChSDVZ41jb7qllrjWq8YJzAfNB1XrB0l7K/suyNMOba/Z63kLPoRS9e0rp4sq+OOhPOq42MEKK7zHiACjRzlV91MulFbNMTgupM4yfQ/gEDt6uslCsyVufapX8EKmryNyEOqakrCD1KIb6H0QcJgo6lUqSRlwDdDDRvUhDRbw6x2f6vB4jk1gD2x4sbTeghusX3VkqRmNUi52mcdPsdAKIjV9+Fi7Z0uFL14iW83OZZIVE97WZU9WPw2OYRPzhZrdh6qM4sZKrcaEDvL7brGPtU0Bwh2oMqbXqvb6tcuM/HU+S86rz0LbR1HWqjWctXf/cQgfn+Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <50ee02b6-45b1-9664-c001-31233c6fd47a@suse.com>
Date: Mon, 4 Sep 2023 08:53:41 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 2/2] xen: move arm/include/asm/vm_event.h to
 asm-generic
Content-Language: en-US
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
 <0d273a71bb3caca894485a33970a81ec9a9f44e5.1693583721.git.oleksii.kurochko@gmail.com>
 <CAMacjJz4-Zd8ferGuZKh83qiUCw_hh91Rep903Qys6pAx3kDfQ@mail.gmail.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <CAMacjJz4-Zd8ferGuZKh83qiUCw_hh91Rep903Qys6pAx3kDfQ@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0060.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:93::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7395:EE_
X-MS-Office365-Filtering-Correlation-Id: ca13eaa4-a287-421d-9183-08dbad13ac3e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jRqvialsfwGepKd8GIvDhCSnE4T8MWcXvXbTdGfAys09Q62TMZPZXOgOK4ojULbcCPfmtnOoL5avq5aEqa9WWm8Rqk6lo3RNX4NGVW+WYWy59/T5Z7FWOMy6EE6bAVLeAGtutOTZMN3Bk3g40mhhc+lhn/wL7K+XMOhLdSP3R0ZSpTMLMbz8DIhQpMMANXCQoHrIO30Xi7HmA7f/igO/TaaVEri/Gj2oZXE3LreC6ikeVm9GrWHfsCIKp7fiL25UCcX+3ssZavqx2xVyo6vfZOGdIVdg5NAeRmLnr3sfr27f0+RkrOWbhflNVB2RHxWkVrWtppvCd623XORlcBjeXTgzGhzfaaQLDG9NXh2gDhxBr5fTfIXfCm7w0LuAi2HRiBa4lMuivljH9iU/43o7X/nCyHr1PplLygfV6es4nXvGd8moGR3K7dYT8UrPcY4ULOBE+iHYLaX1ak0WGNxTnaTxSrzjXnidB/rtdFSCo5hH5CNZo2/t613851UEZw3yYj3V+3IjQOO9SeS0xmtNl6S50c+DY2webJbsNhrogJW4pgyOBxIqEs2o//Ca7I80n6Qu+tYVJlYmwtgRXoxFme7qX1DeGPLuY6lf0jg5pXXeSJc7BChnopQsMkRn79YAtAFyn2hbzfXiWR86pHPkPogZ1GlIIFNN4Q34M7YkucY=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39860400002)(136003)(376002)(346002)(396003)(186009)(1800799009)(451199024)(41300700001)(6506007)(6486002)(53546011)(478600001)(38100700002)(83380400001)(2616005)(26005)(6512007)(4744005)(66946007)(36756003)(2906002)(66476007)(66556008)(6916009)(316002)(86362001)(31696002)(31686004)(5660300002)(8936002)(8676002)(4326008)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bkdNeUR3WWc4OXJKUFY2OVplV0wwMkZXTkZXYzNONG1jNDIwNlBPZVhTTHdq?=
 =?utf-8?B?YTZ5bWxEWTk4R1lUdkp6ZWx1Rlh2M0l4TnR4V3FPS1VzQnVFbWRCc2FER3Jx?=
 =?utf-8?B?dVQrdHlNV0JRYWNvWUU3dGlTR1QvcDY2aTUxQTdtVDNuVS9PejJGTVI2YTFz?=
 =?utf-8?B?Y28zb1Z1NU1YSkhpMnRVQ0JHaXFkNlFhdEd2cHpMZlRwTVh1R3F5Wm15NktI?=
 =?utf-8?B?czJJay9hUXVzT0RvSVlWZ3kzaUY4OUtzajkyMExYMnJiemg5aHhWQUd2cEls?=
 =?utf-8?B?WU9JeFRPeTIxbUhhc2tXQXlKVEZwQlFWQ0NBUEtLc2FnV0M1UGd1K0tQUHBj?=
 =?utf-8?B?L3EzdTdQWDE3WCtzMjEwbWFIZDVCKzI3TWFFZWFBVGs1ZVFPS0VOQ1FzUzB3?=
 =?utf-8?B?b3RPbmYwSm00OFNjWUNRVGNIUTg2ZkExZGhvNXhJUVRNWlovMXZNRUFDd3VY?=
 =?utf-8?B?b29TZnZpcmNrY3YxWmJQNndVYjE5dExMdWUzUzNPMXdqMXJjd1REKzdkZzRl?=
 =?utf-8?B?MzhzN3VPQy9LWCsybWthcVJVNjlTOStGSHdPUEM0clJBdjJjekxnTm1VTVlS?=
 =?utf-8?B?N3N4dllUUG1RTnF6V0FrSVpyS0NudXVBaVFTZzlkUko1WXJtRmVBN05EempB?=
 =?utf-8?B?N2lPQisra0dVQ25IVzFjMVdUSWFHaGR3aU8xdmprYWU2emV0MW0yZU9pdnlB?=
 =?utf-8?B?UjJVOUJWM1NaMGt2QVYzdnZyeUtkOE1zOExUNUtxM2NIMjBMdlZRc2wvM1Yz?=
 =?utf-8?B?MFBrM1gyNm8rTHR1ZWJTWkU2NnFsbWozZkpLOEFBNnVJdUp2Y2NJdTNWT0tC?=
 =?utf-8?B?MDdoeGVsOU9YTHo3MW03WjE4YnVBamwrNU9OUDFxUXZpcWMwMWM3UnVJaC8v?=
 =?utf-8?B?WS9uYXc1b1FDcXdmL2R1dVZyS0xYc3RBaGZKMElwcDZwYzJZSjk5b1MrOGkx?=
 =?utf-8?B?MHpmc1VTMHMzU1JzeDdRK1VEZGpsNXY0ZjBlZXExa1l1V3MyYnh0ZHVNc21l?=
 =?utf-8?B?Q2RGaGYyaGczZFhjQkVEZzV6bm1pMzhnOVdxVHVMdWtJNlhCZTlQZzZiZkZ6?=
 =?utf-8?B?NGE2cDNpTk9XY1ZDb1ByOHlKUzg5cUpieitHZEpDTzJVYURvbmxuY1hiVk80?=
 =?utf-8?B?bXFTQ0dKWXJhbFNGZEtEc0IvUFZDMTBVTDgwd2t6N0JYdzJMeUlsMk9TK2ZC?=
 =?utf-8?B?ZDJla21pNVRKYnJCZTNoNlRHRitBL3Z1TUZvV0laZkVuTnRHYVNLQkRtbUJv?=
 =?utf-8?B?K0g4QlpveEVNYWZreWNqTWFIOUdUT3dmOXQxU2p5T1JGdDJvYTJkcldqK0xw?=
 =?utf-8?B?VWdzaHRqYmxBVlhodFRZdkQrejY5Uzl5SkRpcXpYQUpHRVQyRGthSW5WakFC?=
 =?utf-8?B?REdydkNRYlhaNE4ydWxDYytwSmpCbVRweUgzVEdXNmNsU2FhUXM4K3ErSDJL?=
 =?utf-8?B?MXRQUnpnVEk5cllqWDJMVkdWL0ZZa1J4ZXRDUVlXZUlnVVRQOFFsSW10RmVP?=
 =?utf-8?B?Z2NQZmttckJ3bUNUb0pkeXU3b2N2eEVJQjYxWjMyYTYyVWRISFp1TlA2dk1E?=
 =?utf-8?B?MlQza29EUTRqaFdpRHY4dHA4WTFHb2dVVm9iV1MwQnVDSnVJUHJabWpKbWsz?=
 =?utf-8?B?bGp0VXJpdDJ3cTVJTXFGOEpBSlc3czkrRlB2NmZaSDdnRnNLaVN2UmJ3VjlV?=
 =?utf-8?B?WTRnN1BRYUhoUTIyY0Rid095eStIM1drSXVkYzY2ZlA3WE9VdmpzWmhIZGU2?=
 =?utf-8?B?RHcxQkhoRU1nNFJjWVBwTEptMEhxemYweXEyMXh6UFZkblcxb2NMaFpHUURN?=
 =?utf-8?B?MTJVZDI2YjBuZDlDYUJWdGQ0aTduRm0wazdzKzV1ZFRpQXRUV0NKRkM4bWFO?=
 =?utf-8?B?ZFdOcXFjMUFlWlhscmlCc0lla1JYUUNLL2FPMFBnRlhCejFlUnhrbUtZOEVB?=
 =?utf-8?B?aWlpOHBXQ1RkNzI4SmgyenFuRHZCYlluUjUvNE9mMmRhTWZhSk9HY09ObWp0?=
 =?utf-8?B?U2twbEN0L1M1b3ZGb2ZQVmpXZ3BWdE55ZkszenAwRlhGYys5VGJ2Y2VjTmVL?=
 =?utf-8?B?Z1N3ZnNTK3JWWXh2ZWFxUWM1U3lYZmJsZmE5MHE0ODUxaDNlS1h5SzdMTGU2?=
 =?utf-8?Q?nUiWVMje4tYeB3V2+YpNMtG/s?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ca13eaa4-a287-421d-9183-08dbad13ac3e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 06:53:41.0735
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 8a5gwknw56PfK96nsy4l+996B6lKg0NVgBW1ljnhcatLZrSTME/hCntqeR42IZvq2Vi6qN83yw4ULkuANCPSxA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7395

On 01.09.2023 19:14, Oleksii Kurochko wrote:
> The change which adds generic-y += vm_event.h to ARM's Kbuild was lost
> during creation of the patch. Should be added in the next patch version

Which I guess is an indication that ...

> On Fri, Sep 1, 2023, 18:02 Oleksii Kurochko <oleksii.kurochko@gmail.com>
> wrote:
> 
>> asm/vm_event.h is common for ARM and RISC-V so it will be moved to
>> asm-generic dir.
>>
>> Original asm/vm_event.h from ARM was updated:
>>  * use SPDX-License-Identifier.
>>  * update comment messages of stubs.
>>  * update #ifdef.
>>  * change public/domctl.h to public/vm_event.h.
>>
>> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
>> Acked-by: Stefano Stabellini <sstabellini@kernel.org>

... any earlier acks would better have been dropped.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 06:55:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 06:55:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594980.928436 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd3UE-000342-Ko; Mon, 04 Sep 2023 06:55:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594980.928436; Mon, 04 Sep 2023 06:55:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd3UE-00033v-IC; Mon, 04 Sep 2023 06:55:02 +0000
Received: by outflank-mailman (input) for mailman id 594980;
 Mon, 04 Sep 2023 06:55:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vltW=EU=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qd3UD-00033p-FT
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 06:55:01 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20631.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f76c4fdd-4aef-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 08:55:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GV1PR04MB9134.eurprd04.prod.outlook.com (2603:10a6:150:25::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 06:54:56 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 06:54:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f76c4fdd-4aef-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Z86pvISJEPocsoa3XvUHLVvz+OqLxLRD5hNcfJQmsQFzSdp7NcJ4IxnbIatpqkO4hyrWZVCnaFp2xgmXdMOUTIDTGZjxpTCnvqWW4BE9cyMW5KKZBkLkifolkzQlyy18jk7QqK3DXHA7vKRMJJu1Kl32ITg2N+iPRs8XKxOlV4qT2/JcRSiWmnVDw51AKgwCKcpRHhfXHEu9asoyMQBJ9+u2WMGsAIJ1JLsyl9PZR4HdfF8wOetm1EKb4HsizYQboFrSCV31kYS/0ZEjHG2xjXYHu/fsnZ5BqL3rjfV2u95bk/VUfSwQSzPzlgewDiowBPCKz7k6FaF0R6OrqrFAMw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vTzpCVHCJTKOQRO3v4L6LiJj6MoZebddJ+AUkOG1B8w=;
 b=axTXPE7iS140q36OOEQ86q2AgOmDHi1lEkI06/rbywrpVhYwahWQGDcezJsdw+B3fvChMENGqWOYV7sSSpB14oi278YENEQY+jkJk3Z5dK1uHXHPPBZI1dTrKxcuPoEiLmbsWfRTkfnMBbVJlIQ3c6HFLSpknk7ZIgje51a4+rUcL9BvUtCekdDfxbnCEunuZDodf38fdm1LDh+kG4aZJR2dTaJP8KhTrl58DQ6jTMIKbZYBNTgNo0V7QRTOB2GqRri2UvoA9bhuEYR4htX0NWoCIMSA3MpVuU77j6iAe+CGWDRhQs1N1IuZm5AKEz/T2mFwpvBfb79qqpVKqP9x5Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vTzpCVHCJTKOQRO3v4L6LiJj6MoZebddJ+AUkOG1B8w=;
 b=1wwSY+4uyOySlyBOE30Oky87lvtm5AuNf1Iya149oGheKUJrGQcJzD1xjKVJKLG+gQsdAts1PsWuF8XA+19wkkPxSZcvUlNT3AOoR/SrkQKEMB8znbgeK0K2yRNUpkukmZk7oJnzpcR9RcieflZHOcDL5sEg5N5z3fvtlwdmRE5VCOjsQXpVKRWWMFS9oFpo6RFs6HrCRQ/s0tI5nkJOq67KP6Wl3AUfdHgGIjcQ9jkNfUV/tfF6wo3K7D0Z8cURh9vec0zUtU6GPX+qLgfToeL7iOKViXdaUuFiuX+nHexieeGlcNHrsYaI1nOaOrSZGUi1Y854afEmD0ibSfPAQQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <464e3134-8b40-5f80-ddc8-7b523b1d3330@suse.com>
Date: Mon, 4 Sep 2023 08:54:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 2/2] xen: move arm/include/asm/vm_event.h to
 asm-generic
Content-Language: en-US
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Cc: Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>,
 Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
 <0d273a71bb3caca894485a33970a81ec9a9f44e5.1693583721.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0d273a71bb3caca894485a33970a81ec9a9f44e5.1693583721.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0006.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1d::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|GV1PR04MB9134:EE_
X-MS-Office365-Filtering-Correlation-Id: 1d40ca25-1d4a-48fb-42f5-08dbad13d93f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ugEf/ihmojgOGMeLWLHRmP6LaxxL8cTsTl71MGUUyqTjsN0OZyWnvn9FS58NDPxAuv9XL6L5AzY8a+/B3QmRSboQapG5KW3pOLOamvuSQf0/YDSLqqQOnYNs0nuo/ofAO+xTa3uES0PGZF8HEeD1Tlv+d0v9q8+P7E0rA00KBuL2pC9WnRZAWCxAEnEJBc6f1KPOGj2DSmaleGyDp3Oquq7VbcAl2g16vbz1pOep2vARmqRpLOn9u08tB0zjGE/lNAOdmA+WM8wSv9N7OVyHxiWqZKhcUlJ2gAeYsIUh4uUyBP4oirurvMCYnLbRveXp2xm+4kSUi5DxFsJmSkFJL5ZQOHAE4xV4Kv1MARLgjpreiAnnvPoGKdlkVzmDnBaEk17NNKPev6IhG9WUn3ucfOGivUR83etlj3CnlY3RVOdO3PbCZ8SSnjThWxk9oqj17AyT3GOBuF/OAQfZ6oO+zUyx4i98a6I7r3igNhC06UsnC3tGI6jhkaZ5ts6IoQ/cU0cdN6IXumMzcfvKmSqHulKCqDy6rwKhc7Jc7dqKZJr4BgnQdQAeKjW+A/tqCNdWrskV9zcz4h4RJdzQ14lm7FFlEgRPK5mK0TMSgkv16XroXsEcLEoYmhB+scbvYGp3l5JY+TbVBotSf+xfFma3UhDSr6lX6o0O5yxCVsebV/g=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(366004)(136003)(376002)(346002)(186009)(1800799009)(451199024)(41300700001)(6506007)(6486002)(53546011)(478600001)(38100700002)(83380400001)(2616005)(26005)(6512007)(66946007)(36756003)(2906002)(66556008)(66476007)(54906003)(6916009)(316002)(86362001)(31696002)(31686004)(5660300002)(8936002)(8676002)(4326008)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eEpDMjVUa1lqcGYxWVVEUlF0bnV3aHpuN1BPNUR3YU53NTdMY0hlWkdGWmow?=
 =?utf-8?B?ZlhjaHlYdUxrMHJFSjhlNFZBWjl6b3ZzNjdqa1ExQUFiejl5ZG1GZHdZNzdh?=
 =?utf-8?B?YjdKSnY0d0VSSlljMlc2am9KWTJxMUZGckxGYW8rQVUrZVhxMnFqYVFUeDE2?=
 =?utf-8?B?OHMwWDM4YUIybVpYblpyRmRkeWlYSWxpcUxBUWVYRUovcUREM2tZM2h2NFNq?=
 =?utf-8?B?b2w0RzR5WWI4MDdrZXZmbnBQNDQ5Q1ViT2pHYjg2TFNhczhRMHVQa1Q3OTd4?=
 =?utf-8?B?NmwvUmovdDJtWUFuTWdubk0xdnRBZ3JCT0xhbW11eUxRVGIxOXEwMGE5MUgv?=
 =?utf-8?B?ZG43YmJsVDNiSmNtRXRnUEFwM2dLdlZqcy9jVzJ2Vy9qQ2R5YkFGZk1tQ2pz?=
 =?utf-8?B?VDM3WDdpQ1ZKeXF0dEVZdzl4WU9QMjZ1b00rVXZQY3YwK2VyNjIySU1BcVJO?=
 =?utf-8?B?V1ZndjQ1QjNQcm9RTk5UTmtpblpSTnpob2dJbklqcUtiNkl4V1JKMkhGRkRu?=
 =?utf-8?B?YmZnYmdJN3lFZGRQdmFQL3dlNDNhZW9BRlRUTnl4dEhZZitTVWkxUUhEOC9r?=
 =?utf-8?B?aEhkNkJqazYxU2p3OVJkNDdMdXk2SHZ5NWRlRWdBRkVZdWR5ZnhHczgvRHlK?=
 =?utf-8?B?ZFdkUVo0VlZkRk9PdWtvOU5UWVVucFhOTzNuRlpXQjF0ZEYvU1ZlRFBZVXk4?=
 =?utf-8?B?S2ZVdWNZRDRaRTMrNm9RQW5EbzVJL0hLSGlySFBMUmZMWXNZaktsRjV2N1A4?=
 =?utf-8?B?dExUd09JbjBFVUhrZlNWOW9BaWZVbDJmWllnNm5kTkdzSkNleWt3V2l1Uklw?=
 =?utf-8?B?eEplUzdndTNtL0E5cjNrMGFidWM0VlZ0dmNnZU5CclNwZHk5SlhzQ2E4YUt3?=
 =?utf-8?B?MnRhTUlDa05WcUN4K1BCSVQxOVZyVE01NDdWQ3h1MTIwSlU1aTZNMnZvVE5V?=
 =?utf-8?B?bE1Qc3dqenQvM01YTDRWQUpmM0xNME1JQm9CQ09PSHgzVjc3QUlUd3lMQ0xI?=
 =?utf-8?B?ZzIxRGwvQW16RTlXSXZadG96TmtLTzZmSVoxVHFSdWg3NVM2QWRTdU1BS1R1?=
 =?utf-8?B?MXhXbWRyMFF6OG9sNDQrRkZnV09QWUN4N2dxN0J3R0QwRkJxNVllTGpPL0x1?=
 =?utf-8?B?NU9VdU9BbC92bTA0RGRqTnFvcWdYQUdEKzdJdFRFdHNPM2xwNGtpRzJLWW9w?=
 =?utf-8?B?SVJPckYrYy9TRVhvUVMxSGRTODdaRDczQWJyOU5aR1I5MFcvdDBRbzVQbnBU?=
 =?utf-8?B?MWdsSG0zREVpWUt1MUlCS0FwRDNQaDlLNHRneXk2NHFWREo0bUpOSElZdTk1?=
 =?utf-8?B?a0xQUDZvUTZnaHRxQ1BZK09ZYlAzQ3QxT3B2NE8wcjJnczFMNkljM3pNRWJi?=
 =?utf-8?B?OHFwZmN4UmgrMTlBYWZJaXVHZWVvMW9jTHdZcURMRXdzcEJSOTZCY0FidzA5?=
 =?utf-8?B?QlVENTBGOFRNTGNsaVYydktwSUdnNnFSd1FOU1dWTE5FSTBKeitTby9GYzgx?=
 =?utf-8?B?R0pleFhkbmorcDdNUlpxbHdvUHFUdnZnTEpjVjRVbHBhdHgydFJUMU5jQmxo?=
 =?utf-8?B?bHJBSGY4UVVSeWVaQUlxTnhySm5ZUTF6cWh1bEFkYmVjMkw2RytjWkNISkhL?=
 =?utf-8?B?bTE0cXd5TzRZNm9wSUxmaGJmNGpCYVJmYkttN05aaFlNSWpvR240dGo4Ulhz?=
 =?utf-8?B?dmdGc3N6aDVuQ3ltdFFYL0xpME02WHRGd3pkdHJjQ3U1aC9wZXNtK2hjYjFo?=
 =?utf-8?B?Q0lGNmRmOEV3clpWdEJhb1UrdCtEVEJ4OVBtRmFlYk5GWkYraDJRelo3WEl6?=
 =?utf-8?B?by9YdG84WmZyUVdnNG9LTDF3YlUxMkJ6engyRENtRmxCK2xjN0tFS0p0MDFj?=
 =?utf-8?B?bUd6S01YRFBnZmZtTjJQOUdKN2gvYnZDRFJQNTBMaHBOa2F0ZFVZeUVIZ3h6?=
 =?utf-8?B?VDRrUVhnL3d5aDZrS201QkE1emgzbzgwdEw1cDFTNzRVYWNpNHh5Z3VIVlkw?=
 =?utf-8?B?d2dta0dXdE4rL1hLU0xqcmR4a25rMm9xUGdOYXdZL2p1cmxlbWlZclQxODhp?=
 =?utf-8?B?Q0k0S21pa0tQRm9ZdUp0ZkdqdmZsWGs0eUlESURFUkhkWS9WMlBUYzhNK0U1?=
 =?utf-8?Q?g8Z/VBvxze5jmk5/eojoWbKUt?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1d40ca25-1d4a-48fb-42f5-08dbad13d93f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 06:54:56.5099
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xtWTX0ishfotlbKpcZQxkHnmBMj9n9pMMBRGQu0q1Wz44ING8BxyzmlR/Sqg7MVIMCeJ7869hU/3kT5V1OEYvA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9134

On 01.09.2023 18:02, Oleksii Kurochko wrote:
> asm/vm_event.h is common for ARM and RISC-V so it will be moved to
> asm-generic dir.
> 
> Original asm/vm_event.h from ARM was updated:
>  * use SPDX-License-Identifier.
>  * update comment messages of stubs.
>  * update #ifdef.
>  * change public/domctl.h to public/vm_event.h.
> 
> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
> Acked-by: Stefano Stabellini <sstabellini@kernel.org>
> ---
> Changes in V4:
>  - update path of vm_event.h from include/asm-generic/asm to include/asm-generic
> ---
> Changes in V3:
>  - add Acked-by: Stefano Stabellini <sstabellini@kernel.org> for "xen: move arm/include/asm/vm_event.h to asm-generic"
>  - update SPDX tag.
>  - move asm/vm_event.h to asm-generic.
> ---
> Changes in V2:
>  - change public/domctl.h to public/vm_event.h.
>  - update commit message of [PATCH v2 2/2] xen: move arm/include/asm/vm_event.h to stubs
> ---
>  xen/include/asm-generic/vm_event.h | 55 ++++++++++++++++++++++++++++++
>  1 file changed, 55 insertions(+)
>  create mode 100644 xen/include/asm-generic/vm_event.h

But that's not "move" anymore, as the Arm header isn't being deleted.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 07:02:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 07:02:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594988.928448 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd3bN-0004me-Dc; Mon, 04 Sep 2023 07:02:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594988.928448; Mon, 04 Sep 2023 07:02:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd3bN-0004mX-9I; Mon, 04 Sep 2023 07:02:25 +0000
Received: by outflank-mailman (input) for mailman id 594988;
 Mon, 04 Sep 2023 07:02:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vltW=EU=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qd3bM-0004mR-0N
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 07:02:24 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20626.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::626])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fe312f78-4af0-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 09:02:23 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DUZPR04MB9982.eurprd04.prod.outlook.com (2603:10a6:10:4db::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 07:02:18 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 07:02:18 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fe312f78-4af0-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=P4lhyL8vCK4vYf4xzx449y2SelLz92tXd3X0N7xYQO9oscSvWm1xtlJ2ncMnE69H9TPgE4DsjWXazmY6XgYNa7x1CXEVaKTI4i2esYu7h00CziMuFS77qL3ACeENnR9B81dVs02Nq7RwWp7T6wLqL1L3kHiKuuTU9XNUWp5SzMySJ1tAl5vo2yaiMeM8z080tVBMHPjQWhO7JlmeCDMWQJM6LrRx4cit/QkdtHMIxmGK+99FPzkFLW3XGCVmPDSkgn13f7FVZR5nfK1MgjhJGpqVUJqioY7/3s2RqMQEBdvfB/EDqttD02Gaxj/oXd5VgoxISXR0VKdJbc4bJ5gpeQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=XvhV8bJIXP3amXrNNZ88zPluy4GadBNN/caC65Jk+7Q=;
 b=XQ4+93zT643lmG6bjVyI0xWlNhWzmbIngoJeWDoaB9EhRPTeoID42PE0rxwuL00V03AUbnDCU6ep9PG7bYT93ml/yciV2pCgDoX6pN2/m2Rf4sxYJXmpSnmSgGAidVM3gPAwPu129KnD3TtPfTKI2pFdDLYQ9yUCz9i6viiRjVxFBIL7IxIyj+zB0xKrnWBCd7W/U+Ufd+NxkiUBOWUkyJJD8Ks/Tw5WuXCEEK2+MsCjnsqzGuOPTUypRO9geiHgQmR3Sy0wTN1CArRtkslkqb3KuKr9AZnrDtV1swDHxLtv4qEk7D5XrqRSXcpXvRcz4DSd2Z38qZNik08nfZprtw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XvhV8bJIXP3amXrNNZ88zPluy4GadBNN/caC65Jk+7Q=;
 b=XR+3ijuBlnpnaer+GBVJJLcCLY8NE5qIv/Mfru4BlL7K94ihEz9y/Kd7qZH5iwd1/p4HqvZ2XjVTkGO+E8WPqIRUCgo5LOPponfv2dN96bkFqU866sdEVdsvy7ukwCETGOuXtBoYJJMb5g4k8HCgD+rfvv4jl+/Tw04VDaQTjSKdPo6egEy/VSdQssk55Tl3t35hM8GSVv+o8uKpn5JRFGR90uWC/bLqMdwquyJnlmskPZE4YOufntq7Si3Mm/TBLRfEb39IOWaZHJoyBYG9XGJgu5JUey03QCEQZQObb53FViEf3aVSBu2gguVc9aw51l6mWxdNdCrOlw8wxJSAlg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <efb3dfa7-0fd0-83a5-67dc-eafad0a2bb57@suse.com>
Date: Mon, 4 Sep 2023 09:02:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH 1/2] xen: apply deviation for Rule 8.4 (asm-only
 definitions)
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693585223.git.nicola.vetrini@bugseng.com>
 <a260399a471b84f3c37c15ac735dc7aec6bd33ea.1693585223.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <a260399a471b84f3c37c15ac735dc7aec6bd33ea.1693585223.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0184.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9f::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DUZPR04MB9982:EE_
X-MS-Office365-Filtering-Correlation-Id: e5118e7a-92bc-40d6-7ffe-08dbad14e0a4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	97Jdw9joFBGmmn6alKuVsDjkmU21neMGiDAYXl90/AKpXAsrQZMuXohw5NPd+7xmGmK+B514y6oIlOtf48K2UlxJBTTU1Tstfyyymuh0j92Pw4W2wh0L2JG355f5ysKiVxIRkc2xsRqeRt2fAP+71elo3TEZL+dRE+9Mqx1Wx6sdworvACchkOhv5/xPaJtuL9AgZ8oOn7a2hgptv2oKwqYo4oVcMSbv4Yr7+/W2+ac8aFdIbjCL+XLYVyqp197ygmXE7NcXwuQlOZTYqIBBb2U5zM8ui/MFcIs0w4K39XzoE3Bm9+h1xxx0yz5QWV5aW8jPAMOXoosla3YiSWznvPtBczHZce8NRCpF86YRDjN6us6/ZJYc+ZCB2O8l6WjuJ7Ry/z20V3uEZ4fNgIQW39Am3O4/UsGcSdFdq1h16dMs4tTpWwMhqpwxCDcAVs8CZr4SYISUt9K5Nw4nAxwu20LSmWNUag3OzhDjP3FPLPqfFLN+m+j3594DY4ipoLhi25yipNQLkNTjoQLA1ozZmSV+xKNag7zl3Qb9QG2u8HLr8y4DXrtTnSQqZvAwQ0y38PVnfR2yoge6IjM0WQqswFc9tUWqy5FZ0wj9qm4aeMH3K+orEH2RRWSK0SCJSo4PE6T0cP0sP0Sh9mLRANaQhw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(376002)(39860400002)(366004)(136003)(451199024)(186009)(1800799009)(31686004)(36756003)(38100700002)(41300700001)(7416002)(5660300002)(86362001)(31696002)(54906003)(66556008)(66946007)(66476007)(2616005)(26005)(478600001)(2906002)(8936002)(53546011)(6916009)(8676002)(4326008)(6512007)(6486002)(6506007)(4744005)(316002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?elFxdVorTE5TMzVUNm0rYXVmZ0xiUHhkVHNQTWZ1bkZUeVltMythblZyK3lB?=
 =?utf-8?B?YjR1MmZFY2R1ZjllN0plQVdQck5VL0dKc0FUS3FjOHljY3BVc2VNaUNhRnVN?=
 =?utf-8?B?T1dtSENYdFdKM3JvRTVjZ2dZeGpEK2ovby9GSm5UOCtIcXpURUhNaUphajhY?=
 =?utf-8?B?dnA2bUxCc202NXh3OUN1NzRubXdQcjF0aDdLT0ZZU2VXU0llS2VCYUl3aHBC?=
 =?utf-8?B?eXpjL1BHQ2w1MUZ1SHUzQS8zNCsvOHJQVEhCY05WdG1RcU5BajVaWS9sT3Yv?=
 =?utf-8?B?V3FDcCtsekVsMXptcWJ2RDlSRithWUQwcUVKUUhyZCtXeFpsZEh4aVpQQTlQ?=
 =?utf-8?B?eEpJWFRFSFlVQm00UEVxSytVbWhWS2t5TDUyZnpzaUpVNHNrQ2ltVk0rSGRN?=
 =?utf-8?B?MXhGVkhrMlExWC9CTWg5NWt5MVdQMWRHUWhHN0c5YUFjK3JMTnMxTS9YWklQ?=
 =?utf-8?B?R29yMURyYlVsQS9TaEhYZzFRRGFQL29WM0lhd3A5YmRjeld4Zm5YODA0U1Ju?=
 =?utf-8?B?eUt1RXVYbzBaTmpnWkhQUVk2SG44OUVrVTB4ak1uTHAwc3dYUnVrYzlSTTRM?=
 =?utf-8?B?NzQxZnUrRS9hcmpLTTVERExqQmZlemUzUnJzYkwxZ0t2NkZ5bUlZUE9Vd0NM?=
 =?utf-8?B?UHhRelUvd05jYW96cWZRTXYxdFBqdVpQUUZ0QUxqQWRMOVZjUEtKNnpicWRt?=
 =?utf-8?B?ZElTMFhDM1VFOTVOdmNNVDdXNm1lVUo1cDhvdGptTy9mcnJ3eTlQZ0ZldlFG?=
 =?utf-8?B?SVJ4THVWQ2R0RFo4SWcvcGk2TTVLRGhDZ3NBMmNuWTBXMUJWYnR4UWJpRElQ?=
 =?utf-8?B?VGMrM3crZVBKKzRqdmIydWNMUVJUbmlYRXY0aXU1UjV3QjVWK1BWZDFvdkx5?=
 =?utf-8?B?YURZVExzTzF5UTdOODVTM1VsQ2dBSnJmb21tL3k0Z1JmNFhSS215bzJkQ2Zn?=
 =?utf-8?B?WHYrcFc3dGhQMEY1RXEydS9qSVQ1M0NGMXRlckZqTTRJeGtlY2dCN1QyRytL?=
 =?utf-8?B?U21kR1hNWkJLelVXNnJGVEQvZ2N1V1FKT0wwTVV4KzlDQ2lpbnVPY0d1UUtL?=
 =?utf-8?B?Q1NlVTdTRjFFWkNBai93QlRnOTE2dkFxeG8rdUdoMXFjaGV2aHJHeW5Hdk9Y?=
 =?utf-8?B?SjlOYkRXVnlSckYwSGhvUG0wUC9kK3g0Z3E4OHAreDBFbGtxMjVZSmIrdGV4?=
 =?utf-8?B?UktyZEN5TTlBZk04R1BPZ243SXJ0TGx6MzNXakVjdUxIRHoyQWcvbDRTWFJj?=
 =?utf-8?B?UlY5Z2dabDNtdTRtRTVzRU1GTFdZVkZFZXJwY2doQjAyZG81RndhNkxQWTlP?=
 =?utf-8?B?M2NBTEE3cUtOQnErVkYxVytpY0VCZC9CNHdoMVI3R0FsdUdIY0Z0TG1iK05r?=
 =?utf-8?B?SXdabjZnTzYxemVBUndsNmxvL2RUMjNCbTMrRElrSHBlWi9xWklUQWFIMkNu?=
 =?utf-8?B?VFF5dXFiYVlCOXZhZTJMRjJtY0dSQmc1TTRKamdCemYxYzhnS09xU01YdWZC?=
 =?utf-8?B?MU9lYnYyQXR4Sk9tNWRjbHl2R2VrcjlnWGgwTTRxNkp1Rk0yM3FqaUN5bzJ4?=
 =?utf-8?B?QjV2NFNjOWU1cnNubEpqRStLVzd5c0EzbUFzdThWVyt5c1E4aUlnQmt4bmlF?=
 =?utf-8?B?cjIwTElwbEcyZTJ4WjlUV3hsSVFodXpHZm8vRlp1dHJ3TVlrZWRiK1pkd3ps?=
 =?utf-8?B?K0N4MzZiT3lHUGhlZXJkL2VXVEFkL3VKWWNhT0c1NkdZeFAxSDdoc3pWSXNs?=
 =?utf-8?B?OFVtMFFQd3BIKytTK01QUlNCN1QrUTZ2RnprRTBOTEgxRFlKOXJXcnVQSDdI?=
 =?utf-8?B?V2wydkczbjdmS1NIK3QzVEFkU1NKVmMvY3VkVXlvV1VmdkdmYmp3Y2xCN1F0?=
 =?utf-8?B?Um1KcG1qTHBRUjNCbmRvWi9WdDR1SlhyWUV0SWl2WlhwWWpKOFRJazIzcnh5?=
 =?utf-8?B?T2ticXgzOEhzQURnNXRuWG5vUFhkRDBEZ3pkdUxXUzdrcTEzdzlSSkRRVm5y?=
 =?utf-8?B?RFlkVE5PY3ZKZFpmZUgzQjY0d3lKSmpOaXlmR0l3ZCtjYlo5NkU1dTlJNzBk?=
 =?utf-8?B?dVAweE4wOGNmaVZqS2RveFFWVmxLYk43TGVFbGU3WC9rOE42Yjc1aDJXOEdi?=
 =?utf-8?Q?Q76B31XbX/YAuTvY7nAsTf3wy?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e5118e7a-92bc-40d6-7ffe-08dbad14e0a4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 07:02:18.4275
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: DQ1BYjfUzqy26E0HIFLBMohq6N0szJkXgNvoJGT5dqXuCX5XiXyE5pSaXGE7CjbnqelIzvXc2+ROWsBnHSncVQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9982

On 01.09.2023 18:34, Nicola Vetrini wrote:
> As stated in 'docs/misra/rules.rst' the functions that are used only by
> asm modules do not need to conform to MISRA C:2012 Rule 8.4.
> The deviations are carried out with a SAF comment.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> Where the identifier for a function definition is on the next line w.r.t. the
> return type, they have been put on the same line (e.g. efi_start) to avoid
> stylistically questionable constructs, such as
> 
> int
> /* SAF-1-safe */
> func(void) {
> 	...
> }

And

/* SAF-1-safe */
int
func(void) {

is not an option?

Further in the cover letter you say "Deviating variables needs more care, and
is therefore postponed to another patch", yet then here you annotate a couple
of variables as well. Could you clarify what the criteria are for "needs more
care"?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 07:19:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 07:19:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.594995.928456 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd3ri-0006WV-Gv; Mon, 04 Sep 2023 07:19:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 594995.928456; Mon, 04 Sep 2023 07:19:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd3ri-0006WO-EF; Mon, 04 Sep 2023 07:19:18 +0000
Received: by outflank-mailman (input) for mailman id 594995;
 Mon, 04 Sep 2023 07:19:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=MaJ0=EU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qd3rh-0006WI-1j
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 07:19:17 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 58b76b78-4af3-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 09:19:12 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 7E42B4EE0737;
 Mon,  4 Sep 2023 09:19:12 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 58b76b78-4af3-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Mon, 04 Sep 2023 09:19:12 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>, Bertrand Marquis
 <bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH 1/2] xen: apply deviation for Rule 8.4 (asm-only
 definitions)
In-Reply-To: <efb3dfa7-0fd0-83a5-67dc-eafad0a2bb57@suse.com>
References: <cover.1693585223.git.nicola.vetrini@bugseng.com>
 <a260399a471b84f3c37c15ac735dc7aec6bd33ea.1693585223.git.nicola.vetrini@bugseng.com>
 <efb3dfa7-0fd0-83a5-67dc-eafad0a2bb57@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <babbc14aff87b0d8546f4c617eccac3b@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 04/09/2023 09:02, Jan Beulich wrote:
> On 01.09.2023 18:34, Nicola Vetrini wrote:
>> As stated in 'docs/misra/rules.rst' the functions that are used only 
>> by
>> asm modules do not need to conform to MISRA C:2012 Rule 8.4.
>> The deviations are carried out with a SAF comment.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>> Where the identifier for a function definition is on the next line 
>> w.r.t. the
>> return type, they have been put on the same line (e.g. efi_start) to 
>> avoid
>> stylistically questionable constructs, such as
>> 
>> int
>> /* SAF-1-safe */
>> func(void) {
>> 	...
>> }
> 
> And
> 
> /* SAF-1-safe */
> int
> func(void) {
> 
> is not an option?
> 

Not at the moment, as it would deviate the line with the return type and 
not the one below,
and this is not configurable in the scripts under 
xen/scripts/xen-analysis:

/* SAF-1-safe */ -> /* -E> safe ... 1 */
int                 int
func(void)          func(void)

As I said, this can perhaps be solved by allowing markers to specify 
either a row count, such as

/* SAF-1-safe 2 */ -> /* -E> safe ... 2 */
int                   int
func(void)            func(void)

or count the line span of the whole function declarator in the python 
script and translating
/* SAF-1-safe */ -> /* -E> safe ... 2 */.

> Further in the cover letter you say "Deviating variables needs more 
> care, and
> is therefore postponed to another patch", yet then here you annotate a 
> couple
> of variables as well. Could you clarify what the criteria are for 
> "needs more
> care"?
> 

I see. I did not intend for those changes to end up in this patch, 
although those two are
clearly only used by asm code and therefore are excepted.
Most of the variables I left out are also used by C code, therefore they 
may be eligible for
a declaration, but where to put this declaration requires a careful 
examination in my opinion.
They are not too many, tough.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 07:50:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 07:50:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595003.928467 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd4Lq-0002kO-Tg; Mon, 04 Sep 2023 07:50:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595003.928467; Mon, 04 Sep 2023 07:50:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd4Lq-0002kH-Qj; Mon, 04 Sep 2023 07:50:26 +0000
Received: by outflank-mailman (input) for mailman id 595003;
 Mon, 04 Sep 2023 07:50:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=tTqt=EU=aepfle.de=olaf@srs-se1.protection.inumbo.net>)
 id 1qd4Lq-0002kB-6W
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 07:50:26 +0000
Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de
 [81.169.146.220]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b42ac553-4af7-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 09:50:23 +0200 (CEST)
Received: from sender by smtp.strato.de (RZmta 49.8.2 AUTH)
 with ESMTPSA id jfc75bz847oBZYD
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits))
 (Client did not present a certificate);
 Mon, 4 Sep 2023 09:50:11 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b42ac553-4af7-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; t=1693813811; cv=none;
    d=strato.com; s=strato-dkim-0002;
    b=d+fsvdg7mLPRwfJHnuJYWdGchcBAzedIMUyodNw1ZIhUM2xg7A8vFTNXgirJyfNs1V
    zzim4fEs+k2LPOMBQSe64Bx5EaOl8LiGk/gD9NBeAnUUM+qu7CsAsON/IqK3UlTgHyIu
    tPQTjhtevfV7pFSDwwpBsYAuo6Si5whbFy8Vfi7/DETsm7xpp9Z2xQEn3iP7ke9tQymm
    9Vt+cZxLdaDeCdzk9N1vZaZFp5Qph/fwNm2O6VIoPs1Pm8rkC50T1hwoVGsBtfvzHlGn
    V5Rr+cEgPYNT9m+CdMPX5uKakwA/hbGeMKbHfKwUbz+7+G0M8FQiJ27SI5LiOvWWtnWC
    rjtQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1693813811;
    s=strato-dkim-0002; d=strato.com;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=j4vHCbUNWtJmIeF4inWFPx/sQq3nAuoXCYUyC3yjMLo=;
    b=B9+/A+On5mP5S7xllAlDV5b8biWZO4HQgVq/0y6VtEH1zr5a39FPIjsVfFhijiac0v
    TLdxF+kIpOff/WjV+rrFYQV+JufbbFP6dZCpsj/2He+cuugyDS+WrLBscYfZGP2RK0/6
    Ylrt+XBQBWfOWZAVG4DnJgT/LEiYiBvCNYOupn5d7gBgKCqhiIEMNYHBYJO/q4dDCCrb
    C9HsMV/+DCPpqx7QXE3n3f290Opgjlj3VEV9r88ZqJgKvNuUXjQrMz+//PEa1RooaTjn
    A+tFJB4YcWXFwXU8WtFqhS2mxDoLfb7EbgQp3ZvDwLs0J5QF/4MXEVNkPD7Fw6y2glRu
    u+QA==
ARC-Authentication-Results: i=1; strato.com;
    arc=none;
    dkim=none
X-RZG-CLASS-ID: mo00
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1693813811;
    s=strato-dkim-0002; d=aepfle.de;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=j4vHCbUNWtJmIeF4inWFPx/sQq3nAuoXCYUyC3yjMLo=;
    b=Itg3HkgNa0L0GKw38gry3/YJF47xLKGu2yAqcGY9HnApDQ5IN5bheJrxeoSxfI0Cf1
    NBU34w8evkQrR1zvN8JVb6Acvhu72dn/g0TpwHCaKVL/NUxTYGSKTgigavd4dO7jTTqC
    afz/qt5tVAPeJkJtHQT9M7F3WjiC/3zIACrp+bkfCvzhTSApHGkZm19wQ8ZgwRLojXU/
    zqzJ41g/Ih3lgcHU/kLczw/yiZI8YhrJHNiRNr+hb9RU5bMIjd4WRlHAsljN5RpMLcaH
    jd53ItnixQd3B6GuxedOHbq79TG0dB5/8OogiUoZJOF2E8Jm9idA8z/6I4u4Anw+fqyg
    3uEA==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1693813811;
    s=strato-dkim-0003; d=aepfle.de;
    h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender;
    bh=j4vHCbUNWtJmIeF4inWFPx/sQq3nAuoXCYUyC3yjMLo=;
    b=7Yzc/nesnvK6n8LbN3kr+Vlqdof/t227lFUJ2S0SMc9NegQ0zp0e1mMhH7T2te8Jr5
    fF7uD103f0CDB+0DY5Cw==
X-RZG-AUTH: ":P2EQZWCpfu+qG7CngxMFH1J+3q8wa/QXkBR9MXjAuzpIG0mv9coXAg4xrVn7F5otYd+QgnvMgMBBq+8hhN3EzOMmjnoZDw=="
From: Olaf Hering <olaf@aepfle.de>
To: xen-devel@lists.xenproject.org
Cc: Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH v1] automation: add awk to opensuse images
Date: Mon,  4 Sep 2023 09:50:08 +0200
Message-Id: <20230904075008.2049-1-olaf@aepfle.de>
X-Mailer: git-send-email 2.35.3
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset="us-ascii"

Some awk binary is used in many places during build,
make sure it is part of the image.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
---
 automation/build/suse/opensuse-leap.dockerfile       | 1 +
 automation/build/suse/opensuse-tumbleweed.dockerfile | 1 +
 2 files changed, 2 insertions(+)

diff --git a/automation/build/suse/opensuse-leap.dockerfile b/automation/build/suse/opensuse-leap.dockerfile
index 79de83ac20..98ee42970d 100644
--- a/automation/build/suse/opensuse-leap.dockerfile
+++ b/automation/build/suse/opensuse-leap.dockerfile
@@ -21,6 +21,7 @@ RUN zypper install -y --no-recommends \
         diffutils \
         discount \
         flex \
+        gawk \
         gcc \
         gcc-c++ \
         git \
diff --git a/automation/build/suse/opensuse-tumbleweed.dockerfile b/automation/build/suse/opensuse-tumbleweed.dockerfile
index abb25c8c84..aed81f0240 100644
--- a/automation/build/suse/opensuse-tumbleweed.dockerfile
+++ b/automation/build/suse/opensuse-tumbleweed.dockerfile
@@ -21,6 +21,7 @@ RUN zypper install -y --no-recommends \
         diffutils \
         discount \
         flex \
+        gawk \
         gcc \
         gcc-c++ \
         git \


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 08:10:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 08:10:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595016.928477 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd4ef-00058w-OF; Mon, 04 Sep 2023 08:09:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595016.928477; Mon, 04 Sep 2023 08:09:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd4ef-00058p-Kk; Mon, 04 Sep 2023 08:09:53 +0000
Received: by outflank-mailman (input) for mailman id 595016;
 Mon, 04 Sep 2023 08:09:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vltW=EU=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qd4ed-00058j-UZ
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 08:09:52 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on2060b.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::60b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6bb0eb5d-4afa-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 10:09:50 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB9738.eurprd04.prod.outlook.com (2603:10a6:800:1dc::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6699.34; Mon, 4 Sep
 2023 08:09:47 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 08:09:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6bb0eb5d-4afa-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ThPuebcTIf67xv83p8adNHBv47AV6gF9rVQBHdcfCXIKgRM/2jXAQ2NZNvlxuZkXNJcT4dus4LKD9thcrPe8Lbjyr+bFJitH2mJNXZ7RorBRXpAWd9cG88G5oE/OUm/TX+9FtYivJTlHti+JouoPdxee70Z9PUUqMQM8m1qSvLrwmUwWAw7+iO1izbGqj0QCGGzq8SSihxBzWnoZRlre5T2oe6niyWeaWKRavZbA/5KZ4tFctnLYi8Bsl/UyZJPmOaIj0TcH7OBk2Ts0O516G5VFpBxriTBrtdRDR6WFiJb9ItDTnTxMzoPjHXz3ETnhzrJaUhJ0vvAsCfSzvaXzRQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=BPV1n5wU+6knr2XSodVZzlJ7DcWx89sqS/gXBWrYl7g=;
 b=ZzNtxf+NhoVRHk9Y8WX1HLWmDKVOc/e8zQSp+nIGFa/yblLou/2YuhvzJW3sfNDw/gdgq7dB59qoEy0s7/P+66PA8aGloA3/whcOybRKlJnT2rZEZagm0IY116rydL43y5N+UhqaZHuujOkDzIMtGjak5YP4888oKRqBQZQDeB+usqdxgJ7w3MxoIzBJn7dG8eyTBwqqCfAoAbB30nJnF0UpgchKkBIteBtg7TFilAFo/E188Pew6I0dw/ikis449K3LmvCcYis83HX5/JOSPEJ9LY3giVh2k+p1fhVOf+GU0tNzkQk0pG6flnhzsxa+0oTNvrQTpvnTVrlBxlO3Fg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=BPV1n5wU+6knr2XSodVZzlJ7DcWx89sqS/gXBWrYl7g=;
 b=MKOuBKVYmqH0w9uTr/7gtQlmwAIK9QD1Qy4kXqW9GydkPjIhszYcD0ir+DjE7bmHL6//PoM/6H0ujsGpe/+9bXbtA7CEWm+rXBES2mAkuFNmF+mO9hCR4I0o/+X7n8+L6Iyj5Fx618o5H5qiLigGBqhZwQY88wYJ10Q/tMb81rYGaFf0RlpXBxu4FuPtl6m3RDM76BO4T43OGIDEv1nOrpYWen7sGWsW/DH+m1hn/sqoIvcs0yoLADAOhrLPClmkcMtjXYfF5gmXDhwPLeTYsiZ7JF7nmSa7vpkHSKJJGrMQ7K9G4dF7FNu7HLH0RG95AWvhVrrWgV4/FY+AcbYnqQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <fff285f4-55e9-3709-372d-2344e7227dff@suse.com>
Date: Mon, 4 Sep 2023 10:09:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH 1/2] xen: apply deviation for Rule 8.4 (asm-only
 definitions)
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693585223.git.nicola.vetrini@bugseng.com>
 <a260399a471b84f3c37c15ac735dc7aec6bd33ea.1693585223.git.nicola.vetrini@bugseng.com>
 <efb3dfa7-0fd0-83a5-67dc-eafad0a2bb57@suse.com>
 <babbc14aff87b0d8546f4c617eccac3b@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <babbc14aff87b0d8546f4c617eccac3b@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0109.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9c::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB9738:EE_
X-MS-Office365-Filtering-Correlation-Id: 3218a493-2751-4023-95fa-08dbad1e4db5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Hofzn3YrCuTHJPtr/vl7oebQcoRvkm4IA71kJnBDuXFgnWY0lJkgLcpJwa/l4ZLqjbmlRjU1C5oDXCPhaZhgrY4pTe4j7O8Xba1zHpkTddMnM1ItLgIPA5WVyj40hTWI0gtJ77grx/5izfsMXt6TlUBrf5U7I6FGp21LMzJ28moTmLk0Y+1OkfMIl9U/oJBwBwEwjeX6Tfiysg8m6un5vcPVyFbtOxm7T+08tjSplkpBplZsxMMkDAe6F88+PF3U9LCYlfFHD9iUxuuV/uMSRGp+tFjvr8Lr/AqXYS1/bqyNexlJn8kyushUm2wF9LePjk0/clQdWh2B6zAB6IyUsTpWUnz/HwXrRFzv7L1jgR8a85W4A3a//p12tfP/NlsLHCa5ZptCKkPQfx8V7H2O/ZbCT3AtpyWllOLT4FnPuqvlbdU08aJ7oIZRHDKx2WjsvbkaG//fJg3EILpGb2VL9c2e6pfM43Avw1y9c+njQxwLPmGFrCl22KZ+328HmHGY/LAlvZLu7S8zW+VZvOpuswNipey8i/rw1L/qX5JPl0aEhlyX+sIezZuzRKpYOxTq3Xbqn6wP4uMbQByxty6wLigfd0KjiTWEy5f1RRgL7/9CjHp65/4zBSM2UcAipKaa5W5nRbT2WkYKCDoNOWuu4g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(376002)(39850400004)(346002)(366004)(186009)(1800799009)(451199024)(26005)(6506007)(2616005)(53546011)(6486002)(6512007)(86362001)(38100700002)(36756003)(31696002)(4744005)(7416002)(8936002)(41300700001)(316002)(54906003)(66476007)(66556008)(5660300002)(66946007)(8676002)(31686004)(4326008)(2906002)(6916009)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TVBWRUJtWjd6QkFibE9TT0FJVCtQRllmWHNWa3U0R3FOZjBOc1lBTEw5SWds?=
 =?utf-8?B?a3VSQ2VuR1hIWGVOcFNHaVBzb2N6U01vOTAzdzA5SUQyM29OV1B0azhvWUs4?=
 =?utf-8?B?aEcvZ0ZOclFyREVmTi83cG9QZnFZdDBvQ2hLLzA1dkJRcnhzbFoxbUZlVnY4?=
 =?utf-8?B?Y1ZDTkdiVHlXazFPWFdBbHMveExWNTVWVDM4TXh0S2JIekZSYnlpLy95Z2Z1?=
 =?utf-8?B?UDc1WFp2dERxL2VDOWdiYWkvRVlwdWZHdld2YTlzR1kveHhjMHR6MTVvT0Iv?=
 =?utf-8?B?cy9WNkw3WkFBbThsbGVtZy9RSDZIcEg0SExZMG0vYlpkSFNzOEowRFo0Yi9Q?=
 =?utf-8?B?akJEeFhyNGp6Uk5IdGE5V3hNd3AwSUJRWHEwdEhyQ3Z2dU9qMVhRek5IUmZC?=
 =?utf-8?B?RldQVi90bW9wQWZOR1lTd243LzZQQWV2SXRKUzFvSWFOZ05hTDJwSXI1R0dX?=
 =?utf-8?B?L08waFlJZC9sbVFReE9rMTFsRXpic2FFdTVSaHY4ajJxY0dOQjJEakd0QzhC?=
 =?utf-8?B?VUhPcEE0TXQrYzBHYTh3QzNEUCtGUTU4cGpkWUFzdU5kK25lQmtwWkVkVUlS?=
 =?utf-8?B?ZTMwYTdvdjB0OWFWRXRIT2FvQXdZWVJBeDNzQU1ZMndoWnd5djRubVRXeDQx?=
 =?utf-8?B?N05GRDVaYStYRlcrL2EzTGFxbGo3VGtRb29uOHBHRzJ0UFQwUWVINFcxb2li?=
 =?utf-8?B?K21hajA5UlNOYzFvWkxDeWFxNWU1a0h5V0tyL2dNbW9rcUZBN1dKUEV5bGMv?=
 =?utf-8?B?dU52Q0VDWXczK0lrMWljUXdyeGpBdDZ1OVBQVVpwVWZaSHpvMzhrMUNLd000?=
 =?utf-8?B?N0ljNHhRRVdwVHFwZm5QRmM3NGY0eW84MDJTd00vZ0Z1cElQM01RRGh5QnYr?=
 =?utf-8?B?d1RUM3ljYlNzaGFOVTkrVStIVEFYeEt1NzB3TmVCTDQ4SFlmMFVuZ1FjKytC?=
 =?utf-8?B?VVV4L1FNT0QyMktHL1Yrd05xT0x3eFZYZ0hvdW43OTJBeFdpaWl3TzdweExv?=
 =?utf-8?B?ZmhlalFmYW1ONEsrM3VqOXloRDFFM0YrenRGbjFZaFJXNGFaZlBESzh0KzE1?=
 =?utf-8?B?MUk4YVRLZHJFeDJSZ1JuOHFJZzRsZEJGVk5DaWwvMzZ4QmlTeEFUeTd0TXR6?=
 =?utf-8?B?VDV4VUxvenZMYVRkS0h3WU1aeVNlQUdjNlRuaFdOLzZVQjJFRjBZRm5YZjMx?=
 =?utf-8?B?bnpSakl3MmRzM01oR2NFdkZZSWhnb2tacjA4Tks0Y1VSdkxLdE5OVStCQ2NC?=
 =?utf-8?B?bEFEeFZBYTlENEdZYlVmQ2J0bzFDb2JESjY5ZGpibnY3ekl2ZVBGeXFCd2lH?=
 =?utf-8?B?Vi9yM0ExZ1duaFIrQ2d3WnJ5ekVqTStwVSt1U3FnK2F4UjVQMEVPeENzaEpT?=
 =?utf-8?B?eUk5R2xzTGpqR2tCb3hBbVpFd3VsSnpCMWEvUk1OZUkrbG5hN2hxY3VJUFg3?=
 =?utf-8?B?bGNmdzhSK3VnMzlOeGNlbXhXc0dsMnpNNmFNeGRMS0tFOE10Lzg2VFNxWVgz?=
 =?utf-8?B?U1M0MUJhclNBVktkcDNCVlphQUwwaG85WERwYmM3SHlRZnZRNVl4c1RvUG9v?=
 =?utf-8?B?a0ZzS2NUMmE1bVlIVHduMnJxWVpaUUFnaEdlRjJCUFJMU2pudVcrUERsSXlw?=
 =?utf-8?B?Z3ZVazJmNW8vN3hjOWE3N1lmQXlJRXNnVzlrN1pSRE5pWE5KRTI0NkZtKzZk?=
 =?utf-8?B?Y2s4MTZHUStLMEJaME1vdWlUdmoyc0tJWjljNTVMNHp6a2Fycm9EeVAydlFZ?=
 =?utf-8?B?Rm5RS2xYRk95bWZwMDdQWDFxbHd5UmpaZUVJVkxPMW5jaVdaTzdLQVdLdjRH?=
 =?utf-8?B?Q2c3bjdCVmdmR3hCRmsvWC9yenNjZTRnbzBuSXJjYktydFZ3VlhwYUZGK0NE?=
 =?utf-8?B?SFQzM1NjK0Zmc3VOZExvaEYyOHJ1ZEthTXo2OW5DdzBONmRiOTBVNXQ0bS9n?=
 =?utf-8?B?dmd0Y05LR0hBdFEyOU5wbnZnRkM3c0lxdkQ4dU83TUxKWWtkUzg4L2pFOTg2?=
 =?utf-8?B?Z3VpaDljRWlsOUlOd3NMZ2Y4MDFKTnN2ZWJJT3p6T3lSY0tlQmlONHlMUzBU?=
 =?utf-8?B?SVJaM0gxSU9OdG9qN2YvV2lsaS94N3N2MkJDeG5Rd1o2ejFXUmRpczlJa0tt?=
 =?utf-8?Q?a78GudFrjJ0LGq9ImSkA2y2nm?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3218a493-2751-4023-95fa-08dbad1e4db5
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 08:09:46.8947
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: nHbCGh00Rb9gN/mkqj5bof4WwQGUD9kQYwXYwALly62nkOdohjCTTF36ZGRDeBE2hgfePnXOqiVcpji0QJB1ag==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB9738

On 04.09.2023 09:19, Nicola Vetrini wrote:
> On 04/09/2023 09:02, Jan Beulich wrote:
>> Further in the cover letter you say "Deviating variables needs more 
>> care, and
>> is therefore postponed to another patch", yet then here you annotate a 
>> couple
>> of variables as well. Could you clarify what the criteria are for 
>> "needs more
>> care"?
> 
> I see. I did not intend for those changes to end up in this patch, 
> although those two are
> clearly only used by asm code and therefore are excepted.
> Most of the variables I left out are also used by C code, therefore they 
> may be eligible for
> a declaration, but where to put this declaration requires a careful 
> examination in my opinion.
> They are not too many, tough.

Anything also used by C code (and not in the same CU) clearly wants a
declaration.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 09:14:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 09:14:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595022.928488 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd5fH-0004T7-6O; Mon, 04 Sep 2023 09:14:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595022.928488; Mon, 04 Sep 2023 09:14:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd5fH-0004T0-1q; Mon, 04 Sep 2023 09:14:35 +0000
Received: by outflank-mailman (input) for mailman id 595022;
 Mon, 04 Sep 2023 09:14:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ceyR=EU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qd5fE-0004Sj-UZ
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 09:14:33 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on2061a.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::61a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 73793a5c-4b03-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 11:14:30 +0200 (CEST)
Received: from DS7PR05CA0090.namprd05.prod.outlook.com (2603:10b6:8:56::13) by
 DS0PR12MB6605.namprd12.prod.outlook.com (2603:10b6:8:d3::11) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6745.33; Mon, 4 Sep 2023 09:14:26 +0000
Received: from DS1PEPF00017092.namprd03.prod.outlook.com
 (2603:10b6:8:56:cafe::ac) by DS7PR05CA0090.outlook.office365.com
 (2603:10b6:8:56::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.25 via Frontend
 Transport; Mon, 4 Sep 2023 09:14:26 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 DS1PEPF00017092.mail.protection.outlook.com (10.167.17.135) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Mon, 4 Sep 2023 09:14:26 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 04:14:25 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 04:14:25 -0500
Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by
 SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27
 via Frontend Transport; Mon, 4 Sep 2023 04:14:24 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 73793a5c-4b03-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=R/Bw3H1chNc6T9PUaqygjcSB9ZqRy0j1Jlby3vKAmjsx4CPIfq5BVAFsNFXmI4K8uGKgRGGV2IsQkm5x2M7GnyLHwfgwbdGNyaAp5iaMOT7RGMKIp4ITpHmVgQ+oYfAkyj+SKwo7mF22mBsVuytruKz3wBsGl8UBvXmHE2N5Yz0djwt+/XxOxZo28Alr3hqtZjimFaTtRJ3Amktpq6r6zh51sytqzT47TiQtE9YUymqKez6Rw2vF2cLBGtlBSTjA954djzu8BYGvGsnADZ7AAH8qwwpFeM8oo/D9rDH0JG0DnNx6YDgGqV8wnw4rnSiaSrL0RWS0TgBxqyE++Rlnwg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QBnCGHonNCHGh97PQEUyjKjN1aii3LsbaDXQQKkQfu8=;
 b=HZCpeZHRL2t81CSzWe94wdYQOJvMgeS+zQtT1tO48ak7eTRrxqbQB+95hV4hd1fuHLkyj1UJwb52/otv9HQyau4OduhbntNMWMLum/oaCHBDqLgCUvpafT3DTfE1lM/iCwu7rQYo5YB6kD9V09OObTivotwhRdk1+dPQzRvPKFriq3yeFS1Btkr1J2QfZpRFm+08P5E5Sv9xZ6FTkaWCsC3Cz+97D9pJdFhg4m8qggeNe6uS3yTNDJcsv/bEleAZszN8wN9V+W8QJeKkq7yTASKcoj6YC/HgWnKgrlkeGZiwVO2NtlmZBzdvoCVHS/vcQsR4q9hpTmgpYfVSzpZoQQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QBnCGHonNCHGh97PQEUyjKjN1aii3LsbaDXQQKkQfu8=;
 b=2KdPJEPFWVjZah/WfR27wcvL6EMihzGGmvX9RUx6f3gZGrzyJTz/ZyUlc1fwQTmDfJxPhlH3a3XonxfhEU4aHoQQAWAdEbAI8XLc/bdhGKzFIQj59w6bbSFAz86mOGFmlJMfR/v939CQFSlBZGgSq0lSKxesu6SMqqHdLbfHOKc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Michal Orzel <michal.orzel@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Michal Orzel <michal.orzel@amd.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Julien Grall <julien@xen.org>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: [PATCH 2/2] xen: Change parameter of generic_fls() to unsigned int
Date: Mon, 4 Sep 2023 11:14:06 +0200
Message-ID: <20230904091406.942-3-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230904091406.942-1-michal.orzel@amd.com>
References: <20230904091406.942-1-michal.orzel@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017092:EE_|DS0PR12MB6605:EE_
X-MS-Office365-Filtering-Correlation-Id: c6ebf2f0-e8ea-41f6-3821-08dbad27561f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vComPv9FMtEHnR1t/DJKxbYtkM2LiKz5KdXRy0NUn7lrcpvq2SpyfrUYSAqnqdPg8FMbkvEh9tF/E/PRZfG402Q44xvxdcpWRTi7XZ6mP08Yv5dTLt0T5d23EuqGGMyTj5DpDnByVoNs4qK7Je4OYC7AuKfHF76E7j24L353+6o2M58Bfrbfwn1h6yQgTQzGrpNlx7tqrpO8Bh3O/aRDM+NrCx0NQU4qy++Kc7ZwGILZ+Ujt7tTCl3XyIM1BDsNmA+p/wJrfR4cZ+J3NfFeBu5Ye5vLBSJM+LNx045jt95VkGZSuocRmE3iMlOIwlRzQRDU7uvpskvBHszaWdzH8SQtdgrF/IBmaIe3avsOFV/PgR0YTZWcV3EFnfQ6o6FJ9JuJJb5wtskxp3lLzw4hhSNtPd5Oqs56PuJgR9v89i/F+3m9lpPELqU4KAvyyrIstlb3Q/9MTb8drD74OLPFJ/WjDxoU9DSDI4A2G2zXKFNrbVPiSyUh08f3OcHd53JwuSRT2d/d00puELyXmD6Hn/eWhDWwGuPuWq8yKKZs8yAErSJNn3eo4Tbkf19E/ST1yg36vQzxBJSQET+Qvga7KeybX9FoYy1YnmYe0PSba1XVy/+sGUEJivkaXyyQSgJPkbi0Akd2lOUFafS3Vvfvdck3ULOkzYQ7+GCFXL6qYem414X1hKQqFLo9/F+Q0Z4bij/Fvo9dqQb0K6YoiWroV0wccuDgfWro+E2WX3UvPSTrK/5ypdCYnSIZPXRAJlI8TkfLgwpukk1PQ/UGj80kDxYJzoeuzVzufINUEVXljtQI=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(396003)(136003)(39860400002)(1800799009)(186009)(82310400011)(451199024)(46966006)(40470700004)(36840700001)(40460700003)(41300700001)(6666004)(81166007)(356005)(82740400003)(86362001)(478600001)(2616005)(83380400001)(426003)(336012)(26005)(1076003)(47076005)(36860700001)(40480700001)(70586007)(70206006)(36756003)(2906002)(54906003)(6916009)(316002)(8676002)(8936002)(5660300002)(44832011)(4326008)(41533002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 09:14:26.2492
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c6ebf2f0-e8ea-41f6-3821-08dbad27561f
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017092.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB6605

When running with SMMUv3 and UBSAN enabled on arm64, there are a lot of
warnings printed related to shifting into sign bit in generic_fls()
as it takes parameter of type int.

Example:
(XEN) UBSAN: Undefined behaviour in ./include/xen/bitops.h:69:11
(XEN) left shift of 134217728 by 4 places cannot be represented in type 'int'

It does not make a lot of sense to ask for the last set bit of a negative
value. We don't have a direct user of this helper and all the wrappers
pass value of type unsigned {int,long}.

Linux did the same as part of commit:
3fc2579e6f16 ("fls: change parameter to unsigned int")

Signed-off-by: Michal Orzel <michal.orzel@amd.com>
---
It looks like generic_fls() is only used by Arm and invoked only if
the arguement passed is a compile time constant. This is true for SMMUv3
which makes use of ffs64() in FIELD_{PREP,GET} macros.
---
 xen/include/xen/bitops.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/xen/bitops.h b/xen/include/xen/bitops.h
index 654f525fb437..b2d7bbd66687 100644
--- a/xen/include/xen/bitops.h
+++ b/xen/include/xen/bitops.h
@@ -51,7 +51,7 @@ static inline int generic_ffs(int x)
  * fls: find last bit set.
  */
 
-static __inline__ int generic_fls(int x)
+static __inline__ int generic_fls(unsigned int x)
 {
     int r = 32;
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 09:14:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 09:14:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595024.928499 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd5fH-0004d1-Ot; Mon, 04 Sep 2023 09:14:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595024.928499; Mon, 04 Sep 2023 09:14:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd5fH-0004cQ-If; Mon, 04 Sep 2023 09:14:35 +0000
Received: by outflank-mailman (input) for mailman id 595024;
 Mon, 04 Sep 2023 09:14:34 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ceyR=EU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qd5fG-0004Su-El
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 09:14:34 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20631.outbound.protection.outlook.com
 [2a01:111:f400:7eab::631])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 746e8734-4b03-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 11:14:32 +0200 (CEST)
Received: from SA0PR13CA0022.namprd13.prod.outlook.com (2603:10b6:806:130::27)
 by IA1PR12MB8335.namprd12.prod.outlook.com (2603:10b6:208:3fa::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 09:14:27 +0000
Received: from SN1PEPF00026367.namprd02.prod.outlook.com
 (2603:10b6:806:130:cafe::38) by SA0PR13CA0022.outlook.office365.com
 (2603:10b6:806:130::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.23 via Frontend
 Transport; Mon, 4 Sep 2023 09:14:27 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 SN1PEPF00026367.mail.protection.outlook.com (10.167.241.132) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Mon, 4 Sep 2023 09:14:26 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 04:14:24 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 04:14:23 -0500
Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by
 SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27
 via Frontend Transport; Mon, 4 Sep 2023 04:14:22 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 746e8734-4b03-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oPYrM7nLWJ17divS8FFP1TjkppFVMIcdIofyM3fqfd5XKiSyYbQJETNRMIqpeZSp4s5Jkfd0slYFyP+tm5MvEtDHpXI0uDbUqgu0hf3l2sg+y1FqX6noby01NmY3YXJ2gjqTiuNbYJ4ajUA7bOKg57wOEpX78PrpzrbXW9DODN4EKNIpq2vANOl6C+fAEF9829kE38TcBOPx7KvFKt6oj6XiLuFzHiIF9caFJlX1ZEfRbFGHvxQlUUCZEUAZ91MuoFt2EvwHSQEEKP1ARdwnUSn8Pyy+igYby+y+haDFg+3MmGKVGrAm/gAfVOtLHyHzkjgYF0v/uFlM6ikLSH1L4w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gIq+cqKXin8yRNnzT94HulgKn5L0z4PTEoU760E1PXI=;
 b=n8SlCcoQgZr9ZiS72VofVj9FkYXFdIbPdAIANWH18P7pS9rE+w9qAPIlvHpjrCM4rirytiPpHwAQYd0REj3SmxL4PZqzy3yh06xlOHdqcV62Xo+tt2ugyFKUjFeLjR78QNmpIZ7/q6BPt2bUoasiqbDFKZ2Jv6ZXF6021GPnBmQ9cM39iwAy+9pA0Z7IhNKiAAqOz8WiPEh9cX6TG+HMemeFl/mPLfc/7bveuo5qZWMM5Lbs7HEf3kv/1OyMBc5NeC/t6hY+8KQeHkPy0VumtWDNE/qjagBoO4xT02CgSemDSmV+Ti6H5mI7EDOpH35DQ4+CLWDMUJy/lW5bjmpp0Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gIq+cqKXin8yRNnzT94HulgKn5L0z4PTEoU760E1PXI=;
 b=aPu+uuesYIyDgj1ElC0sgV87YgqQyq5WRLWX6RikQTJCBzzoLB0JsYQduXXek7qs1xGKD4OP0JfLz0exYzmg62xF3tBRjErOXN94IRhZpm6J2ZooLCZrS+/cNO/wi6vHZxPFFVT7sJHgUqf75TF5nccVcRu825zjfBwQynDxiQY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Michal Orzel <michal.orzel@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Michal Orzel <michal.orzel@amd.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH 1/2] xen/arm: smmuv3: Add missing U for shifted constant
Date: Mon, 4 Sep 2023 11:14:05 +0200
Message-ID: <20230904091406.942-2-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230904091406.942-1-michal.orzel@amd.com>
References: <20230904091406.942-1-michal.orzel@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF00026367:EE_|IA1PR12MB8335:EE_
X-MS-Office365-Filtering-Correlation-Id: b878e39b-ed36-4ca3-e3f2-08dbad275642
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rwpxUpUjg0Cmyw3WMIeBnyv+a1FpqTN5znxdFk8H9gbkIyt92s04fMKvl/0EZz2Th0HECQzhcSkYZJ6EYmIhTVbRHpxqICKD0qBNdiOxxEuISGScZQwkBtxbLPxP/cHitibZqI5bAGoXBJsN9weU0hVDH/CwjHeMmN4Xdu1Gs3HVUmLfX+odB/UwJRJWvdoT67/87kl6zz1F8N24tSWdlUvu8Fv/5Ct4gLG2RbIxG7QySdTilMqD4/GtmZAx4RotrAhN80CFfbvdBA/Io1Y2FRKcI2SxeOpCdr9JpYjM2jCRhnD3WdCfLCnrAQY0OL2JBzeNDO8gxcA3pSBvUZcdUnU7nTRNEQOl4a/MpXUPG4LhlmXd3NZna3rVy/T2jM2MSQ068nUlObUajoTfe87jWPm1gGisBSp9P+AndvNcFSndsHqIwGAuGtSlplrRRbOVGuf5XzldiDti6rmwPtXMwKYqy1r3VuP9qXnrZIbiTmturAmgf8oyEGb3e1TSb7u8JHaGeHtdL1soDOqcGnToJ5ZNChxHc1CMj2YMVRXkfFafawYgnrfIMUpcYyMIqUjZVm/7mWgYp8Enuy2LI6yGx9Ls73MjgJ/vHleLF5gW94s/UUpWwK8o0vyBcTVD1pnBZ8sCK3h+3/J4psucRY1Su7/elDl3VB2D5NDWmA2bEKlhdzLWtEbt+6j+E61N0kDrthODhNRzgDA470077MyB0tpC7GtmSca7EfD9FLaN8zzQqXhD2c1L3Sd4P0y2mSX4DstD7qjyDVlylFVlR/6dLg==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(346002)(376002)(396003)(1800799009)(82310400011)(451199024)(186009)(36840700001)(46966006)(40470700004)(8676002)(8936002)(5660300002)(316002)(6916009)(2906002)(36756003)(54906003)(70206006)(70586007)(4326008)(44832011)(41300700001)(40460700003)(26005)(1076003)(36860700001)(40480700001)(336012)(47076005)(82740400003)(6666004)(81166007)(356005)(426003)(478600001)(2616005)(83380400001)(86362001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 09:14:26.5142
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b878e39b-ed36-4ca3-e3f2-08dbad275642
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF00026367.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB8335

When running with SMMUv3 and UBSAN enabled, the following is printed:

(XEN) UBSAN: Undefined behaviour in drivers/passthrough/arm/smmu-v3.c:297:12
(XEN) left shift of 1 by 31 places cannot be represented in type 'int'

This refers to shift in Q_OVERFLOW_FLAG that is missing 'U' suffix.
While there, also fix the same in GBPA_UPDATE.

This should address MISRA Rule 7.2:
    A "u" or "U" suffix shall be applied to all integer constants that
    are represented in an unsigned type

Signed-off-by: Michal Orzel <michal.orzel@amd.com>
---
 xen/drivers/passthrough/arm/smmu-v3.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/drivers/passthrough/arm/smmu-v3.h b/xen/drivers/passthrough/arm/smmu-v3.h
index b381ad373845..05f6b1fb7e33 100644
--- a/xen/drivers/passthrough/arm/smmu-v3.h
+++ b/xen/drivers/passthrough/arm/smmu-v3.h
@@ -87,7 +87,7 @@
 #define CR2_E2H				(1 << 0)
 
 #define ARM_SMMU_GBPA			0x44
-#define GBPA_UPDATE			(1 << 31)
+#define GBPA_UPDATE			(1U << 31)
 #define GBPA_ABORT			(1 << 20)
 
 #define ARM_SMMU_IRQ_CTRL		0x50
@@ -159,7 +159,7 @@
 
 #define Q_IDX(llq, p)			((p) & ((1 << (llq)->max_n_shift) - 1))
 #define Q_WRP(llq, p)			((p) & (1 << (llq)->max_n_shift))
-#define Q_OVERFLOW_FLAG			(1 << 31)
+#define Q_OVERFLOW_FLAG			(1U << 31)
 #define Q_OVF(p)			((p) & Q_OVERFLOW_FLAG)
 #define Q_ENT(q, p)			((q)->base +			\
 					 Q_IDX(&((q)->llq), p) *	\
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 09:14:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 09:14:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595023.928492 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd5fH-0004Wj-Ez; Mon, 04 Sep 2023 09:14:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595023.928492; Mon, 04 Sep 2023 09:14:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd5fH-0004VN-9I; Mon, 04 Sep 2023 09:14:35 +0000
Received: by outflank-mailman (input) for mailman id 595023;
 Mon, 04 Sep 2023 09:14:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ceyR=EU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qd5fF-0004Sj-Ad
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 09:14:33 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on2061a.outbound.protection.outlook.com
 [2a01:111:f400:7e89::61a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 73ede4e1-4b03-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 11:14:31 +0200 (CEST)
Received: from DM6PR21CA0018.namprd21.prod.outlook.com (2603:10b6:5:174::28)
 by BY5PR12MB4098.namprd12.prod.outlook.com (2603:10b6:a03:205::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 09:14:27 +0000
Received: from SN1PEPF0002636D.namprd02.prod.outlook.com
 (2603:10b6:5:174:cafe::87) by DM6PR21CA0018.outlook.office365.com
 (2603:10b6:5:174::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.5 via Frontend
 Transport; Mon, 4 Sep 2023 09:14:27 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 SN1PEPF0002636D.mail.protection.outlook.com (10.167.241.138) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Mon, 4 Sep 2023 09:14:25 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 04:14:22 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 02:14:21 -0700
Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by
 SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27
 via Frontend Transport; Mon, 4 Sep 2023 04:14:20 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 73ede4e1-4b03-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lSYFUR2g+6UrsbsS2mVbOGZ7jGCEPohaVyjcDcfgDbb01Ka/G2yLlQbcuWaSMM8VlYVp69Q3skaWqXKojtQZpE5WZdyJrZ6hc46gdbUqE/aPu1rg6Fc3PBM+r25hucIIdg4vHnIy7d4AWEc2zpeyrCWL/4+5+yu87kGKyElRdYpLDfh3ehAjcp2HSXhmUKy+hy5qfYD1XQEHJuJm2dQxNHqE9hfuavdDzGirA109esUm7Ky4tUduOKz8SPtRr8xSClpISIZsHp3hlVyB5l4KJ3F1ZdZOw8VcGDV3d7Z2eg22BGru6CGUlFI/a8yEyRy4J1ysI/xuGfyf6xh02tpYcA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+0uRhGXuIgZxSQy/zEQcePI+/liKzQjmWhxoOnLxvTI=;
 b=KstMVevoXrc3vSoQIWTQRLYblYoWGthwjbwU1AO5+xWQO+JEYChL1JfeOpAts90GkG7zSjHw+oIVLlN1LyDx6wpFue+jxf2ZWirAN95mU2+XXcPxN8xIVwGu/VuZph5Chrfc4xCv4QYuojx56Tl27mbILJh1+rRzGOaVIt1jUn/l9Ao/B9Eow6YSD5jH+rmiyT0xNBvHGOmfGiidbsJkYbnnoSjVJSYaKEy8bOBX1o9ty7FWWOU4fFGHHIVzV18qv+rJn5+/TZ/OAvquP7+d/oE14ZS9q96GFaiYqLjZLTeMxB2iWy/9vCcFkfAW5d21tiknS0gC43X6oeULSBMVpA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+0uRhGXuIgZxSQy/zEQcePI+/liKzQjmWhxoOnLxvTI=;
 b=5pDpjHJVaEtODoT1NNPR6SeKhR6QLo7W3S9CyuuQELMk+8cQtPNNlQGMgkzdDrc+grOONQLejAwf0BcbKmFxDwF5DZkU3dxL8E8N7UGFYTXrOIbuGLiBbE3JvAlql07GkXRD5aOBqclp1XS4rKRL+vDH6Ab6Jh+UgLCcsRqKAeA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Michal Orzel <michal.orzel@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Michal Orzel <michal.orzel@amd.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Wei Liu
	<wl@xen.org>
Subject: [PATCH 0/2] xen: fixes for UBSAN findings with SMMUv3 enabled
Date: Mon, 4 Sep 2023 11:14:04 +0200
Message-ID: <20230904091406.942-1-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002636D:EE_|BY5PR12MB4098:EE_
X-MS-Office365-Filtering-Correlation-Id: 3b49431e-ab82-489d-a5c0-08dbad2755f2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	chVx5QRoHwFZQc/08Mkp9q7NPFLLBey85CjfHkJcubbbqkJUGBJknO0Zc1pG9Z9JCXjVD+BP9e1pQQTL3v+1lGBgJpn4epI2//3t5DWbppptEoClA5pOP4wHM62Vy872h4159Jl5etZHW/IdfOzTll7NvcAhNyefEwHSjOur4hMRW3WlhkoODQ8uHmyMeTtcXhN2MYmFUMOZ8LCzOll6su+ZCL5xvARagSgJHgyYOWtr4yCfbLiuyeQ8XbYU6/4ARNc7Ur45kuF83MkHQlAIXOt9slXatVivFT+rQt9H7+DTvsAZS27A0V4O2QcmDSWiZcKGboFGxYrXNoHO4tPFVAUReMqLQRTtNYLZFBdOvjkf3WkI5nApqzWUYN0T/n0OsNWwBDHA8eRWI5GTKSubMjzp5fa30s/UzB29I3SgFewDW01/QilKDqwPOC5+TNpzIvwJLF5IYwxZcHLkRCAa2rjrxa0/dEVhXRCE207UWI0Li0jBh7JQm4ePz2SphiXxN1nnnazNy/cH1dYtcCIITIap7bblAzTDWsNXasXDx6wvcityFiDDTJmn5wpEU8yhVQFXdzlJsNuJu4MEtweGfLa50aMGuse/XsRXHrJxC3mQharpxe3o1yHSej5LwsDtwbWtD2XsepT6LeUEOKq+8hvGCS1pRO5op3Y7tB8309+Z3kn5r8fF19ZNS0FIgM+PlpSo+F/yR38OeR0vWwMOxEEqe3j4pl7Jf37DyhBz2GZAUBiAo9GVOMlIqKc/I6a6WLP46GDNg2ogpbLe5Z5onw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(346002)(376002)(136003)(451199024)(186009)(1800799009)(82310400011)(40470700004)(36840700001)(46966006)(316002)(70586007)(36756003)(2906002)(6916009)(70206006)(86362001)(54906003)(40480700001)(8936002)(5660300002)(44832011)(8676002)(4326008)(41300700001)(40460700003)(1076003)(36860700001)(2616005)(83380400001)(426003)(26005)(336012)(47076005)(4744005)(356005)(81166007)(478600001)(82740400003)(6666004)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 09:14:25.9727
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 3b49431e-ab82-489d-a5c0-08dbad2755f2
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002636D.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR12MB4098

This series contains fixes for UBSAN findings reported when running
with SMMUv3 enabled.

Michal Orzel (2):
  xen/arm: smmuv3: Add missing U for shifted constant
  xen: Change parameter of generic_fls() to unsigned int

 xen/drivers/passthrough/arm/smmu-v3.h | 4 ++--
 xen/include/xen/bitops.h              | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 09:23:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 09:23:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595044.928517 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd5o0-0007MH-LT; Mon, 04 Sep 2023 09:23:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595044.928517; Mon, 04 Sep 2023 09:23:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd5o0-0007MA-IN; Mon, 04 Sep 2023 09:23:36 +0000
Received: by outflank-mailman (input) for mailman id 595044;
 Mon, 04 Sep 2023 09:23:35 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LKCA=EU=cloud.com=alejandro.vallejo@srs-se1.protection.inumbo.net>)
 id 1qd5nz-0007Ll-BU
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 09:23:35 +0000
Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com
 [2a00:1450:4864:20::32d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b87feced-4b04-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 11:23:34 +0200 (CEST)
Received: by mail-wm1-x32d.google.com with SMTP id
 5b1f17b1804b1-4018af103bcso7399605e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 04 Sep 2023 02:23:34 -0700 (PDT)
Received: from EMEAENGAAD19049. ([66.81.173.62])
 by smtp.gmail.com with ESMTPSA id
 s16-20020adfecd0000000b0030ada01ca78sm13967281wro.10.2023.09.04.02.23.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 04 Sep 2023 02:23:33 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b87feced-4b04-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1693819414; x=1694424214; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:subject:cc
         :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=WHihUs1L790Rl4FSQ4WCI66SEc83+rw0NOyAyMvGEnY=;
        b=Oc7/cCGczDjI9MLDwCmVSJBY0r6qg2v1NKj/Fb6J7p4+JZhBdfPxFZs3E7f1g2Ta4A
         ngL+Q7p6SlLF4MQs4zQ3TOymwPr9z3U5Cvy5muNrXihjJ8zflTtfyjL2QRGsRo2NvjwF
         PqJg9EJ+ZGU9ecOPK0jKjnZIDE0TyOvbQ4IXw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693819414; x=1694424214;
        h=in-reply-to:content-disposition:mime-version:references:subject:cc
         :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=WHihUs1L790Rl4FSQ4WCI66SEc83+rw0NOyAyMvGEnY=;
        b=UrnYkhxNSwqDYjqI9ufcXos86z6yM+Fb/FXF04N9v1H/8rQt/ykxaOTThOL5cr/gVe
         4sX/isltSOiiSfeQnPMCTeajut7aoQ9ndhzpk54zzVzw1DZVTSwLl0EpBXdf2Md4XjUk
         Kjl+9t+S0foYGqu0+UHkvohxkxAft+hF2cZMDLM8U4JG9dD/naJbPuEyFNykascIRIAB
         Cnc3hVoU0wIKDl2+ANAXVQ1sd7arL0iFh4+DRx1hm8zeRd02c8auYXhPfccmqbrMXy3u
         UaZUtwYFB9YEooKvB0rCuxOHB1kFl8uXfQt/ml9HPk5UlqUv/TbiBo0J2wFvpm4YaXj2
         bmmw==
X-Gm-Message-State: AOJu0Yz7FhuhdkM9ZnqSzfg+euTVnUmtoITWpodJV+9nGEIqJoBMon0f
	6cQIOy4mjyvYbLXNikeJsoDSmw==
X-Google-Smtp-Source: AGHT+IFiNNzhj3UM1g9hNaFppljbFyM7x8ig5Bs48+uka2x84d8TfdFed/PnycavvrN3SFpy2lgZug==
X-Received: by 2002:a05:600c:3b8b:b0:400:140c:6083 with SMTP id n11-20020a05600c3b8b00b00400140c6083mr9583482wms.2.1693819413826;
        Mon, 04 Sep 2023 02:23:33 -0700 (PDT)
Message-ID: <64f5a215.df0a0220.8c475.b1b4@mx.google.com>
X-Google-Original-Message-ID: <ZPWiE8u/GhGmoYmu@EMEAENGAAD19049.>
Date: Mon, 4 Sep 2023 10:23:31 +0100
From: Alejandro Vallejo <alejandro.vallejo@cloud.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Javi Merino <javi.merino@cloud.com>, Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] tools/misc/xencov_split: Add python 3 compatibility
References: <20230902162246.15672-1-javi.merino@cloud.com>
 <44f0ee82-2a84-d4fb-15e0-fb74ed1ad2c3@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <44f0ee82-2a84-d4fb-15e0-fb74ed1ad2c3@suse.com>

Hi,

On Mon, Sep 04, 2023 at 08:51:31AM +0200, Jan Beulich wrote:
> On 02.09.2023 18:21, Javi Merino wrote:
> > Closes #154
> > 
> > Signed-off-by: Javi Merino <javi.merino@cloud.com>
> 
> The title isn't really in line with ...
> 
> > --- a/tools/misc/xencov_split
> > +++ b/tools/misc/xencov_split
> > @@ -1,5 +1,7 @@
> > -#!/usr/bin/env python
> > +#!/usr/bin/env python3
> 
> ... this part of the change, and making Py3 a requirement here (assuming
> that's indeed necessary) surely wants adding a few words as description.
> Grep-ing the tools/ sub-tree I notice that so far we've avoided explicit
> uses of "python3", and I assume we would better continue doing so as on
> a distro with only Py3 a "python3" alias may legitimately not exist.
> 
> Jan
> 
The only credible reason for doing that would be to have scripts compatible
with both python2 and python3. Python2 has been deprecated since 2020 and
it's no longer security supported[1]. No one should be even remotely
encouraged to use that interpreter. The libs it uses are also in similar
positions. The recommended approach is to migrate as much as possible to
python3 and live happily ever after.

On that topic, the official PEP states:

(From https://peps.python.org/pep-0394/)

  Some Linux distributions will not provide a python command at all by
  default, but will provide a python3 command by default.

Which seems to imply the correct shebang is indeed `/usr/bin/env python3`

Thanks,
Alejandro


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 10:32:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 10:32:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595050.928526 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd6sl-0007Qz-4H; Mon, 04 Sep 2023 10:32:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595050.928526; Mon, 04 Sep 2023 10:32:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd6sl-0007Qs-1l; Mon, 04 Sep 2023 10:32:35 +0000
Received: by outflank-mailman (input) for mailman id 595050;
 Mon, 04 Sep 2023 10:32:34 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ceyR=EU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qd6sj-0007Qm-P7
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 10:32:33 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20616.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::616])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 57b24d92-4b0e-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 12:32:27 +0200 (CEST)
Received: from MW4PR03CA0045.namprd03.prod.outlook.com (2603:10b6:303:8e::20)
 by DS0PR12MB7876.namprd12.prod.outlook.com (2603:10b6:8:148::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 10:32:24 +0000
Received: from MWH0EPF000989E9.namprd02.prod.outlook.com
 (2603:10b6:303:8e:cafe::99) by MW4PR03CA0045.outlook.office365.com
 (2603:10b6:303:8e::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Mon, 4 Sep 2023 10:32:24 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 MWH0EPF000989E9.mail.protection.outlook.com (10.167.241.136) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Mon, 4 Sep 2023 10:32:23 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 05:31:55 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 05:31:45 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 4 Sep 2023 05:31:44 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 57b24d92-4b0e-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FJ4qDnzwrRvKKSpxD4kBdGM9BzzYIt8rnMQ7LJOJMKatgHj/jFtzQMlqoqYDtpYSy3y6rxkuv55/8Ub5xz4ofjr+XXMNgsu0vqi1ROQsgcalgaiFvntpQqcb3Io0IfsY94o/zRRW+dyUFt0Ss6K34eV2eFrMcpK53NsXP7E/c0hlW9WyX4TYCICMevbAf2ucgCemtAVun2rSS6n7y3LupnPbeAb5NCsGN3Cgp1X1KktLf8fAEAb2GJQ22g0kFwDj0JnMkEbdT1/VactqZ/CbgVQIeFom2rhjmB3uwF/hIstyUdUj3+vqcsEzVw2lIH370lhQ3xJd+UdY5BinNiyu7g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=RTdBjjlskRyXVFnQ3rkx2reo+2sZu6EORZam6WJQLzQ=;
 b=MdgzzKFPVCaAn71tJ0eS50U3Ts5FocG8lXFaIlMlRTlFt0HozHzhYRzoWEJICZvf1TEW24GvY5jL0ftR5LE4Y1kAMYUXDrOFmOF3EHgGXoHwRBW6HnefWhhG60kz8PKoxAvqtUNTTAiBYBEzYD5ZByfwZeYeimEKSbfOaELziD6lkeo0xgnyEVKzTuTTrjxQkSUbIqRj02v2ZuuXcNrF29gpLScwStf3S01YxFuTY9u00o5DeOeLaIKOUu4O1haWogrGPUxIGM6Waa//rcKs0dKTrLPCdI9YFG6bDooJ4gse2HiH97g2OGvIgBTbkvEREq2n5ToMUdS2CisI5JfpsQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RTdBjjlskRyXVFnQ3rkx2reo+2sZu6EORZam6WJQLzQ=;
 b=X3uikVkeYBbhT2D/lAnIeE7ONseTanIjJS8BADr/gG0hZ4DWvm3G/0knPqTJgGs0+k82DTPgGiQgB739BJr7gbwpR6+zp+//FeZaLmgLNOS22Vr1Yz5xtJp7VmWotCekrjg0sz0E9DIQzCMjlcQcVjZiPCLrkd/mYbEK2N9r4Hg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <0578e1fc-4999-b375-6805-5c980dad41c4@amd.com>
Date: Mon, 4 Sep 2023 12:31:43 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN][PATCH v11 11/20] xen/iommu: Introduce
 iommu_remove_dt_device()
Content-Language: en-US
To: Vikram Garhwal <vikram.garhwal@amd.com>, <xen-devel@lists.xenproject.org>
CC: <julien@xen.org>, <sstabellini@kernel.org>, Jan Beulich
	<jbeulich@suse.com>, Paul Durrant <paul@xen.org>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
 <20230901045947.32351-12-vikram.garhwal@amd.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20230901045947.32351-12-vikram.garhwal@amd.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MWH0EPF000989E9:EE_|DS0PR12MB7876:EE_
X-MS-Office365-Filtering-Correlation-Id: 93585f3d-ef16-4342-05a0-08dbad3239f6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5fHmhIaXPOPRPXYy70ruKLng+v7DoBPQTB1IQzkpC123X74HS7dQeARqqqgNBRHELhKDKekZhJLcYdbo7BjLdjZc3cENmv9WmcxILnldcLol+guJNyU6j4/cShidAqTGW7WSwnOlLKifNinS0bdaagS6/sI4Ow7FOoMyAjdSklWH0rm3tbYB17fYPHjln1HmSscuR4kJ/fSXCjPC5syhnhvMLXaiX71jmFw68I25nMxvCb2gkEOnDKxMdC7PBW0zLYE+4b+j6Wrp9Zn3wNfi7swOlAIG4aESvKmkF8umbM8a74tQvnlvUAFrBl0r8hDHFz6UaAcHTa1xidCIF8665gAD6TyNsnhDUcXd96hLhHOGK6By28Z7l+4uLh1CarfNlRaudRiNKsj5rRHieLSSGFUMnReljaYvoAFx70naXnNGg7aHHRfwGCVYxEsB3ghcBpYCPfDeHKWwla9HfaWY+eGNisuPvhKebe+WpHSZAc4fQLXDY6AMKmo5WzOu+OLa6bECv25SCiaHC2sLVdSw9jzuSFlkjEJvJB/TEDXbt6mDu3ECOf6VcuHAsOfp6aQ94R3R7hepcsbByOHq9J38Z31jiYovYzTeG1Fk5AoBp43NJmppzJodGJJFw0VLRwe9TYpSi9kJ0HNEiS7MZWNr5hQ9OeFcpHNz+nCbQQ7lG9jLzYR3lh05DT8+/Q6SNrCHmw+THexmDvEER4iXRb0Q1rD/DKuHH/JP5g3MwNTXAVwfbOEOqIUBMRQhRjNpdIq3zpWfNxj1hIjiURHwmayPd2wbzQGkwqERs0Hre503xTo=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(346002)(39860400002)(396003)(376002)(186009)(1800799009)(82310400011)(451199024)(40470700004)(36840700001)(46966006)(40460700003)(41300700001)(478600001)(356005)(82740400003)(81166007)(31696002)(86362001)(2616005)(83380400001)(336012)(26005)(53546011)(36860700001)(40480700001)(426003)(47076005)(70206006)(70586007)(54906003)(2906002)(110136005)(36756003)(316002)(16576012)(8936002)(5660300002)(31686004)(8676002)(44832011)(4326008)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 10:32:23.3889
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 93585f3d-ef16-4342-05a0-08dbad3239f6
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	MWH0EPF000989E9.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7876



On 01/09/2023 06:59, Vikram Garhwal wrote:
> Remove master device from the IOMMU. This will be helpful when removing the
> overlay nodes using dynamic programming during run time.
> 
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> 
> ---
> Changes from v10:
>     Add comment regarding return values of iommu_remove_dt_device().
>     Add ASSERT to check if is_protected is removed or not.
> Changes from v7:
>     Add check if IOMMU is enabled.
>     Fix indentation of fail.
> ---
> ---
>  xen/drivers/passthrough/device_tree.c | 43 +++++++++++++++++++++++++++
>  xen/include/xen/iommu.h               | 10 +++++++
>  2 files changed, 53 insertions(+)
> 
> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
> index 687c61e7da..80f6efc606 100644
> --- a/xen/drivers/passthrough/device_tree.c
> +++ b/xen/drivers/passthrough/device_tree.c
> @@ -127,6 +127,49 @@ int iommu_release_dt_devices(struct domain *d)
>      return 0;
>  }
>  
> +int iommu_remove_dt_device(struct dt_device_node *np)
> +{
> +    const struct iommu_ops *ops = iommu_get_ops();
> +    struct device *dev = dt_to_dev(np);
> +    int rc;
> +
> +    if ( !iommu_enabled )
> +        return 1;
> +
> +    if ( !ops )
> +        return -EOPNOTSUPP;
> +
> +    spin_lock(&dtdevs_lock);
> +
> +    if ( iommu_dt_device_is_assigned_locked(np) )
> +    {
> +        rc = -EBUSY;
> +        goto fail;
> +    }
> +
> +    if ( !ops->remove_device )
> +    {
> +        rc = -EOPNOTSUPP;
> +        goto fail;
> +    }
> +
> +    /*
> +     * De-register the device from the IOMMU driver.
> +     * The driver is responsible for removing is_protected flag.
> +     */
> +    rc = ops->remove_device(0, dev);
> +
> +    if ( !rc )
> +    {
> +        ASSERT(!dt_device_is_protected(np));
> +        iommu_fwspec_free(dev);
> +    }
> +
> + fail:
> +    spin_unlock(&dtdevs_lock);
> +    return rc;
> +}
> +
>  int iommu_add_dt_device(struct dt_device_node *np)
>  {
>      const struct iommu_ops *ops = iommu_get_ops();
> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
> index a18b68e247..84bd77395e 100644
> --- a/xen/include/xen/iommu.h
> +++ b/xen/include/xen/iommu.h
> @@ -235,6 +235,16 @@ int iommu_add_dt_device(struct dt_device_node *np);
>  int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
>                         XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl);
>  
> +/*
> + * Helper to remove master device from the IOMMU.
> + *
> + * Return values:
> + *  0 : device is de-registerd from IOMMU.
s/registerd/registered/

> + * <0 : error while removing the device from IOMMU.
> + * >0 : IOMMU is not enabled/present or device is not connected to it.
The first part refers to "iommu_enabled" but I cannot see how you check for the second part
(and return >0).

Apart from that:
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 10:38:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 10:38:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595057.928537 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd6yI-000865-On; Mon, 04 Sep 2023 10:38:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595057.928537; Mon, 04 Sep 2023 10:38:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd6yI-00085y-LP; Mon, 04 Sep 2023 10:38:18 +0000
Received: by outflank-mailman (input) for mailman id 595057;
 Mon, 04 Sep 2023 10:38:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ceyR=EU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qd6yH-00085s-M1
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 10:38:17 +0000
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
 (mail-sn1nam02on2061a.outbound.protection.outlook.com
 [2a01:111:f400:7ea9::61a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 26f6941a-4b0f-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 12:38:16 +0200 (CEST)
Received: from SA0PR11CA0025.namprd11.prod.outlook.com (2603:10b6:806:d3::30)
 by IA0PR12MB8226.namprd12.prod.outlook.com (2603:10b6:208:403::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6699.34; Mon, 4 Sep
 2023 10:38:11 +0000
Received: from SN1PEPF000252A3.namprd05.prod.outlook.com
 (2603:10b6:806:d3:cafe::27) by SA0PR11CA0025.outlook.office365.com
 (2603:10b6:806:d3::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Mon, 4 Sep 2023 10:38:11 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 SN1PEPF000252A3.mail.protection.outlook.com (10.167.242.10) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Mon, 4 Sep 2023 10:38:11 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 05:38:10 -0500
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 05:38:03 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 4 Sep 2023 05:38:02 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 26f6941a-4b0f-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eyFoTEYqEVc2zRQ/nrRbUkvoVQjllobighRYZmhhL+mKh6R+8rVq6g44RFAMCn7UHhFFMIxxaEE8Jq7WPxH31LRD9Dy08n5wlMF8uKDoSX10uPvxPSC8SCNtWyMj0IbvLCQ8eg4Cn/jtj5Vy4Dgq9nM9axjgCVyvJxmx0FDXJovcJP5iiZv8kAFj7fCDOzM8B9YXUxT4VsozhWH3eaofihFk50J3xC2tc2k9smMR07nqG2CMb78gpLvwA0KuSv6NcPXdENiIo4aNqgFN3zDTKRwmltTmEgjC5Yk0m8p0ITVorqtyx/SMAPYcg+h0TFBw5y4OCmZCF0Kzmqf/v1xyCA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6d5oVQokJaFdpMS/R67uh6fWE/X2RjazXQwSgFWrGBE=;
 b=hYVgm83QmFgEJvuFOQYfZodcnSzDRzR5sTiyALpelJ2sk+M4NZ2JRuMyER2+mBNDbhom1/fNuWTOj4aenUb0NgWDxh4/5GXg/gpUqcQFjqQ067LOLlZp7MSjH3zno84ibIHiRVJ+vsTZmIdrQchjr+GrKq/uqNCivHEorbiy085Fc+rZnWPxU7NFF4Jlylq4GVZvNk5/Cs822ma5oZvvLVGW6Oy5ZgObZSD4u0lNDMrSvnDHCqxfwRPa8ILC53aRU2ab2ChYG7i6u2Znu1h+8LPhRIIX/+bOI2fvuKzEVYXnt8JL33RzoyAXbn/3jxGLpqUbofk/tKMrBlBgSI4QCA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6d5oVQokJaFdpMS/R67uh6fWE/X2RjazXQwSgFWrGBE=;
 b=A9e+ywESnjIkQlUSh9TYYFq7UAMeFx08VbvCER2ztM85rOCQzUJGNwn6frEkdAcRU5hiC+deGvM33nY4rPHZfHWaiiNGDV1hwcI12ys4JZQ62rkGSMGxlpKRS6MWWi2fLyNXptKv6zS0xd0UIRLewiJW/TdK56dAGcHbReASlD4=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <dca9c2b9-aeaf-3628-de2a-846e1b92a0c4@amd.com>
Date: Mon, 4 Sep 2023 12:38:01 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN][PATCH v11 12/20] xen/smmu: Add remove_device callback for
 smmu_iommu ops
Content-Language: en-US
To: Vikram Garhwal <vikram.garhwal@amd.com>, <xen-devel@lists.xenproject.org>
CC: <julien@xen.org>, <sstabellini@kernel.org>, Rahul Singh
	<rahul.singh@arm.com>, Bertrand Marquis <bertrand.marquis@arm.com>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
 <20230901045947.32351-13-vikram.garhwal@amd.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20230901045947.32351-13-vikram.garhwal@amd.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF000252A3:EE_|IA0PR12MB8226:EE_
X-MS-Office365-Filtering-Correlation-Id: 21b8c441-d87d-4ccb-98c2-08dbad330925
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	bLhEAA6PZQjwb5fraJJ6q5hzDB25z1Ds4EMNMr19uYSVWqagduQNbeyopXz3ihwwv6GT3vIlz1uF0isyLYWAfaTTznVKmdP8foqYBXXGIdaWwXJj7hZ2PxZlnE3hGhK0cu2QGCROZPKMouU1BPOQZgwkTQXLlt6otreFc41oQCMPAfPStWZxp1sfKJAsl1wRjJCzBoFMzakdOXZbz5ip9p6DBdut5zIX2SGvpH7Lan0HTCnt+PkcqFaMlNeUgsWqQ/Vo1mvC+Oa0uJxtKYfYAdiv3blSxe9HTZGH6sPYBaM0lJSioNrALLfeFbCpU2d7PYttWkXDxkJTZVXwR+8zkUdKZ9JSVc7vgHXHWCrFV0AdXzhvDThPFuSpW1mEwaXMHwdE4y+QyZAv7NPJDMd0KTaXCHeaT6zAUEZW27IXZOunIt6Iu0Q2rDgIbuDTCTDyPBmX3kgAuk/uqhwuWtsI79oYEOGzwLk70GC35kidfK38qkD6/6WggDpZs33ZNP7Blunvk7kt5pTATRJ1MNHRpcJ5+xcnl51Zkv4jLbSzqFr4WLXMTCMy5xhkeUV7oH11OiD/LfK/6xa36ByTra+k8uH+Bp8CZvjPAjAD4MFlnIOpm8insbgLJALJnBhQbhn/CEWWEBpaZtyeKtaiWW3b6IQrQAXf5VeZKm8pSG8evhy3NcxAdE6WWf4eHj6Y3lIV8J9Oy5H8//mqVe0mKgJfFDdTJapo6sCy5ktn4izEaA2dS8VBHFSUBPnpQ0u7iJrf9yVnZAc7dn1dp1XlNsPMhAh+gwzVwWBnxRR5LLIRiNYi1Sa3aQryPS2DYkioZgV2
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(136003)(376002)(396003)(39860400002)(82310400011)(186009)(451199024)(1800799009)(36840700001)(46966006)(40470700004)(41300700001)(40460700003)(356005)(82740400003)(53546011)(478600001)(31696002)(36860700001)(86362001)(47076005)(81166007)(2616005)(426003)(336012)(26005)(40480700001)(4744005)(70206006)(70586007)(36756003)(110136005)(316002)(16576012)(5660300002)(54906003)(2906002)(8676002)(8936002)(4326008)(44832011)(31686004)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 10:38:11.0828
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 21b8c441-d87d-4ccb-98c2-08dbad330925
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF000252A3.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8226



On 01/09/2023 06:59, Vikram Garhwal wrote:
> Add remove_device callback for removing the device entry from smmu-master using
> following steps:
> 1. Find if SMMU master exists for the device node.
> 2. Check if device is currently in use.
Just like in v10: you are not checking it. I asked you to add a check following Julien suggestion
but you did not reply to it. Even if you do not want to add this extra layer of protection, you
should mention that you rely on a check in iommu_remove_dt_device() instead. You can wait for Stefano
to give his opinion (and possibly ack this patch as is).

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 11:10:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 11:10:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595063.928547 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd7T4-0004NQ-4A; Mon, 04 Sep 2023 11:10:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595063.928547; Mon, 04 Sep 2023 11:10:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd7T4-0004Ml-0k; Mon, 04 Sep 2023 11:10:06 +0000
Received: by outflank-mailman (input) for mailman id 595063;
 Mon, 04 Sep 2023 11:10:04 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ceyR=EU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qd7T1-0003vt-TY
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 11:10:03 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9789a2ca-4b13-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 13:10:02 +0200 (CEST)
Received: from DS7PR03CA0251.namprd03.prod.outlook.com (2603:10b6:5:3b3::16)
 by PH7PR12MB8779.namprd12.prod.outlook.com (2603:10b6:510:26b::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 11:09:57 +0000
Received: from DS1PEPF00017093.namprd03.prod.outlook.com
 (2603:10b6:5:3b3:cafe::35) by DS7PR03CA0251.outlook.office365.com
 (2603:10b6:5:3b3::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Mon, 4 Sep 2023 11:09:57 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017093.mail.protection.outlook.com (10.167.17.136) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Mon, 4 Sep 2023 11:09:56 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 06:09:56 -0500
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 06:09:53 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 4 Sep 2023 06:09:52 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9789a2ca-4b13-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FvEFVMxV+WtcG7I+db9k46EH9BugIPAsywS/t+ep25jqfbyhAJp9cbMTVRXxFgEKJONzy3OCQtK3Z4Tu4Pwz+63kla0HLErlhfyUqS38E+lsMQIVh/W+juqJr8IoUaeL3r86PEPSGW577nkgTfC+NGr7f4A6LZHJtWMIZDgsSrWX/6mHyYC7r5OXKR1fKKid3FBHma6TequOWBJZFekKtg3f/wHIF4CBuwx7shm22zCOdn8gUZaiIQVVwHp/I0NbevztFISzyHWkJ7XSPjcwd1d6LTe2nrR4OjvO9zxhlhYxOHQP7cCtx6tcxAqAg0aVTiwtX6NP4ylY7ehF3pY/SQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5sGROfzvEVePyKFycxc70YFM7l53m46UweqOf7/QWGw=;
 b=ZTp0sCmllkUvqHZDKzaxcdqbOzd7hCGUwat6/LJv9lMPKQKorVlH+WO5inQvsO9txdskpF7YTUxks3a4OlaLDUkxwQ3//elXWCtxOKycLy4RpewM2VYm1ZxiWRPrt8fSi1oSyAUvSTuKNL+JvWcL2+c/a1r1nUPdZgF8Wxgk+uAc5kMMXLkHkRGvXh6qUO04vgoiLh0koDlxYmWnpS5cNq309KzVF84dWS4BzmNUIBNmkI00hVkO7amWKje7GC1jZA/hsFCllUk4LQS3IuKAZzR4TtARcryYkST3mqKRmgQr0AN9xhxMgHb+phLHMNi/Jy8XHq/V7TnDPExJpJ/N9g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5sGROfzvEVePyKFycxc70YFM7l53m46UweqOf7/QWGw=;
 b=4BuaLzbXgLxOZLf0/NSKTvh07x5xyQUFtPHpzwqG+gaEz8a9il7Bf3aF4ZJGBle2Ack51u51gmvE/u2uG7e2zyWOC/aO7/U5KPl0soKWX+i34KZqBbvyv3iWYqLi1+2WgJsw9JI+9sJBR7RYSuJMXLc3eD6OKihS+YVWy6OETAo=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <227d9107-5f5c-b773-639e-ee59a7047a27@amd.com>
Date: Mon, 4 Sep 2023 13:09:52 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN][PATCH v11 14/20] common/device_tree: Add rwlock for dt_host
Content-Language: en-US
To: Vikram Garhwal <vikram.garhwal@amd.com>, <xen-devel@lists.xenproject.org>
CC: <julien@xen.org>, <sstabellini@kernel.org>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
 <20230901045947.32351-15-vikram.garhwal@amd.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20230901045947.32351-15-vikram.garhwal@amd.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017093:EE_|PH7PR12MB8779:EE_
X-MS-Office365-Filtering-Correlation-Id: c0150d69-2e85-47e4-77ef-08dbad377912
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MlV9mE0UZ1MMLRVdl7XiNpYXb73tQPy3FVBNj89IqCZb1a14oGVPnZmIIkMw8XaBpjhVsTS7r7UyC2dUX4pK+4olQsB6xSZe5WG70t6ovWyGVvcLX7VeITZ4BcPgNBxz6+CVpgzZThf4WV8g5szT1uW2Nw1eHCCK2gHSXuSvM+F2EDbuklynhLkbFV0+DbjaNHsH6QbFmTQDvSVQiWQODq5xOJUmXi+ASdMl+z6skLtSoNcvG7+EPQ0pJOyDW2LE0s7xwkX18aAHMr2/FOQ0k8JO8SnxdwnicsYK+Ey3cPIkDNKFZ2S+jWPM7jlB2AaDJim00EjMY/0SSl4wsGCn5ug3qQwGhlNISZIAnERe3kjgdzO/N2Kj28GyCBhi2sO6ShaClfHS0FbHVaF4wGks6Msh6Q9eLS4DCOqzG8x14JJ9oXbavsSMYLNQcFx34ZFkyzvkMptVmXeXQEnlgmZsxLbWVoCQCImlq+VTutjNSrTQOpvWKh7oE/8GN7W4+qkXt25/wLlKZ1JauIWQxm5td86LPmUJ1jAmZIfehNaLqRW/Fva8wBup2iATyUwAB2vkAdTX631bOBbVkGNEvqm00JKWeHuBiwsAqLEAz7EkAOQXtIvRBsAcRthqljypSYidhpl9SW4JZh1wmcASRXdFoBl57TRPT0AL6wuSNqF3Zy/2meIn/6UyD9jTDef1sQM5tfdSQG+2RIqUVliZiJBU/CXNuujju7IDOxsbm56A+cUlPqgfpO+P3rMFa0Etu5jTUCDhaAx36zU798XV2Q3JZlAyjbbJfoz1+6IIqLim1qOD6wbBu7RvVPq9MrjUxYvu
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(396003)(136003)(376002)(451199024)(186009)(1800799009)(82310400011)(36840700001)(46966006)(40470700004)(8936002)(41300700001)(40480700001)(83380400001)(44832011)(478600001)(2906002)(70586007)(5660300002)(70206006)(31686004)(110136005)(8676002)(16576012)(54906003)(316002)(4326008)(53546011)(2616005)(40460700003)(26005)(36860700001)(336012)(426003)(356005)(36756003)(81166007)(82740400003)(31696002)(47076005)(86362001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 11:09:56.8335
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c0150d69-2e85-47e4-77ef-08dbad377912
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017093.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB8779



On 01/09/2023 06:59, Vikram Garhwal wrote:
> Dynamic programming ops will modify the dt_host and there might be other
> functions which are browsing the dt_host at the same time. To avoid the race
> conditions, adding rwlock for browsing the dt_host during runtime. dt_host
> writer will be added in the follow-up patch for device tree overlay
> functionalities.
> 
> Reason behind adding rwlock instead of spinlock:
>     For now, dynamic programming is the sole modifier of dt_host in Xen during
>     run time. All other access functions like iommu_release_dt_device() are
>     just reading the dt_host during run-time. So, there is a need to protect
>     others from browsing the dt_host while dynamic programming is modifying
>     it. rwlock is better suitable for this task as spinlock won't be able to
>     differentiate between read and write access.
> 
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>
> ---
> Changes from v10:
>     Add ASSERT for iommu_assign_dt_device() and iommu_add_dt_device().
> Changes from v9:
>     Update commit message and fix indentation.
>     Add ASSERT() for iommu_deassign_dt_device() and iommu_remove_dt_device().
>     Fix code styles.
>     Remove rwlock_init in unflatten_device_tree() and do DEFINE_RWLOCK in
>         device-tree.c
> Changes from v7:
>     Keep one lock for dt_host instead of lock for each node under dt_host.
> ---
> ---
>  xen/common/device_tree.c              |  1 +
>  xen/drivers/passthrough/device_tree.c | 28 +++++++++++++++++++++++++--
>  xen/include/xen/device_tree.h         |  7 +++++++
>  3 files changed, 34 insertions(+), 2 deletions(-)
> 
> diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
> index f38f51ec0b..b1c2952951 100644
> --- a/xen/common/device_tree.c
> +++ b/xen/common/device_tree.c
> @@ -31,6 +31,7 @@ dt_irq_xlate_func dt_irq_xlate;
>  struct dt_device_node *dt_host;
>  /* Interrupt controller node*/
>  const struct dt_device_node *dt_interrupt_controller;
> +DEFINE_RWLOCK(dt_host_lock);
>  
>  /**
>   * struct dt_alias_prop - Alias property in 'aliases' node
> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
> index 80f6efc606..1f9cfccf95 100644
> --- a/xen/drivers/passthrough/device_tree.c
> +++ b/xen/drivers/passthrough/device_tree.c
> @@ -31,6 +31,8 @@ int iommu_assign_dt_device(struct domain *d, struct dt_device_node *dev)
>      int rc = -EBUSY;
>      struct domain_iommu *hd = dom_iommu(d);
>  
> +    ASSERT(system_state <= SYS_STATE_active || rw_is_locked(&dt_host_lock));
This looks not right (I know Julien suggested this). The second part will be checked only if state > active i.e. suspend/resume.
I think this wants to be:
ASSERT(system_state < SYS_STATE_active || rw_is_locked(&dt_host_lock));
so that once the state is >= active, we require dt_host_lock to be locked.

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 11:14:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 11:14:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595071.928556 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd7Xd-0005DG-Qd; Mon, 04 Sep 2023 11:14:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595071.928556; Mon, 04 Sep 2023 11:14:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd7Xd-0005D9-NV; Mon, 04 Sep 2023 11:14:49 +0000
Received: by outflank-mailman (input) for mailman id 595071;
 Mon, 04 Sep 2023 11:14:49 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qd7Xd-0005Cz-02; Mon, 04 Sep 2023 11:14:49 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qd7Xc-00087q-Jc; Mon, 04 Sep 2023 11:14:48 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qd7Xc-0002lZ-1F; Mon, 04 Sep 2023 11:14:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qd7Xc-0004vj-0u; Mon, 04 Sep 2023 11:14:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=AQ3QNb6LJFpz94ic18rsZTPUyXD6EoGjrRdqV9xTRlo=; b=v8V7Lvy5xpYlI3OAaRuN28IqPv
	cON0m9eMGw7lS7Zi8QfDp0c6cdK5mMkMOuYXm9pXzzDQqNxLTcA2ojOlAAj9X6sWupBlBr8wtMtf/
	DOkXbINPBOlsZs/TwLYRmEwxg3Sl3HEqW8Tprkz7REWev34N+rJWH6T7XWLfFU25Me4Y=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182623-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182623: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-rtds:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-qcow2:guest-start.2:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=f805cf3e9b87584e16b03b5059b1163fd22bf5a0
X-Osstest-Versions-That:
    xen=f805cf3e9b87584e16b03b5059b1163fd22bf5a0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 04 Sep 2023 11:14:48 +0000

flight 182623 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182623/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-rtds      8 xen-boot         fail in 182620 pass in 182623
 test-armhf-armhf-libvirt-qcow2 18 guest-start.2  fail in 182620 pass in 182623
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 182620

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop  fail in 182620 like 182609
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 182615
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install            fail like 182620
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182620
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182620
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182620
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182620
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182620
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182620
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182620
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182620
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182620
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182620
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182620
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  f805cf3e9b87584e16b03b5059b1163fd22bf5a0
baseline version:
 xen                  f805cf3e9b87584e16b03b5059b1163fd22bf5a0

Last test of basis   182623  2023-09-04 01:52:05 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 11:28:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 11:28:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595086.928566 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd7kS-0006u9-0a; Mon, 04 Sep 2023 11:28:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595086.928566; Mon, 04 Sep 2023 11:28:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd7kR-0006u2-Tp; Mon, 04 Sep 2023 11:28:03 +0000
Received: by outflank-mailman (input) for mailman id 595086;
 Mon, 04 Sep 2023 11:28:02 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SRlT=EU=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qd7kQ-0006tw-Ei
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 11:28:02 +0000
Received: from mail-lf1-x134.google.com (mail-lf1-x134.google.com
 [2a00:1450:4864:20::134])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1a25d27d-4b16-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 13:27:59 +0200 (CEST)
Received: by mail-lf1-x134.google.com with SMTP id
 2adb3069b0e04-5008faf4456so2060033e87.3
 for <xen-devel@lists.xenproject.org>; Mon, 04 Sep 2023 04:28:00 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 v3-20020a056512348300b005008b8dd56csm1699210lfr.44.2023.09.04.04.27.58
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 04 Sep 2023 04:27:59 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1a25d27d-4b16-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1693826880; x=1694431680; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=87oJpJO59HBiBG6+j0oIk0WQCxoHB94G7LqpEKHqGzc=;
        b=JVRzaWEZ5+TdPzZNVAeOQC8JcTgyB93vkjnVcT7IIR+hXSWz07LS+W0O5zfjUi+mpQ
         HIKpEdMNfPQ1N0deu1PgANwfwkTusSjgz2fo+Hf8/jZ5W05KBSAKSNRY7Q4U/Cr4Y6qH
         L6VsDCwihsjTUpGJ2INcNtJCuGROFQ2vr6xvRQ2z+PmmW2o2Ep3G68RYt8zdUy1KlTUF
         o41USpMrzqa53uuxX1jcZ5LbDk1BixqXQyOniCD6Z2P3yxlLHIRBx+6nljLtbiFKoQSH
         b/sImB+JUaNAqEbqSgIfATl/6THPA5184CsDu7gU/4PIzrEuJDlsgkBYdjN113d+Bx/v
         lGeg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693826880; x=1694431680;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=87oJpJO59HBiBG6+j0oIk0WQCxoHB94G7LqpEKHqGzc=;
        b=ZEqKZ4TkdxsMahP21rHezTtq5DeWU3Y7AmOSWBxGrG03mRxE/PLRNf8t7mJgXKTGgn
         q9PHn6QvNSLnWv2MwvIbQ63RIx8luPduPnvyNBWtid/AkPXERrMYQwmlD02ZJGQfXSL2
         D8YO9tEZVDQFkIM7J/tg+2o651PKV+lpL4l1Eh7Z7Nhgb0eRV5ozxLSa0EnZXwQ0oQVg
         5yPRThjp50Qc0sO67ZJUwkD7KIqXZwEAHlQSAjf/ajtoBWdU9FjKW6zXaJw7btPuuCkJ
         1tRStxQ4aQ7dSt44s6hjxkx7gkC+4vIjj9nLHAyNHaVBwgdqgHt1dDPyU5HEF5qQ6KBI
         UAyA==
X-Gm-Message-State: AOJu0Yxj7ytGEJOv+6pAgOOMa6M7Xa1xQC5M+h9GTwheaGMpW8+seAH9
	3XK9fKV95Cpz2INy413q/nJCCG4H37g=
X-Google-Smtp-Source: AGHT+IE+eIY4N4hrd/MXexn38r73SBd/c4eg7u7H8oAJUp/F53iluQptAUdWh2y6UpwSPpOoDzxZLQ==
X-Received: by 2002:a05:6512:3e1f:b0:4fa:21d4:b3ca with SMTP id i31-20020a0565123e1f00b004fa21d4b3camr7383202lfv.2.1693826879641;
        Mon, 04 Sep 2023 04:27:59 -0700 (PDT)
Message-ID: <82ab4853d53b7e45525b1f5293a2ccc7340dc869.camel@gmail.com>
Subject: Re: [PATCH v4 2/2] xen: move arm/include/asm/vm_event.h to
 asm-generic
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>
Date: Mon, 04 Sep 2023 14:27:58 +0300
In-Reply-To: <50ee02b6-45b1-9664-c001-31233c6fd47a@suse.com>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
	 <0d273a71bb3caca894485a33970a81ec9a9f44e5.1693583721.git.oleksii.kurochko@gmail.com>
	 <CAMacjJz4-Zd8ferGuZKh83qiUCw_hh91Rep903Qys6pAx3kDfQ@mail.gmail.com>
	 <50ee02b6-45b1-9664-c001-31233c6fd47a@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Mon, 2023-09-04 at 08:53 +0200, Jan Beulich wrote:
> On 01.09.2023 19:14, Oleksii Kurochko wrote:
> > The change which adds generic-y +=3D vm_event.h to ARM's Kbuild was
> > lost
> > during creation of the patch. Should be added in the next patch
> > version
>=20
> Which I guess is an indication that ...
>=20
> > On Fri, Sep 1, 2023, 18:02 Oleksii Kurochko
> > <oleksii.kurochko@gmail.com>
> > wrote:
> >=20
> > > asm/vm_event.h is common for ARM and RISC-V so it will be moved
> > > to
> > > asm-generic dir.
> > >=20
> > > Original asm/vm_event.h from ARM was updated:
> > > =C2=A0* use SPDX-License-Identifier.
> > > =C2=A0* update comment messages of stubs.
> > > =C2=A0* update #ifdef.
> > > =C2=A0* change public/domctl.h to public/vm_event.h.
> > >=20
> > > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
> > > Acked-by: Stefano Stabellini <sstabellini@kernel.org>
>=20
> ... any earlier acks would better have been dropped.
You are right. I will remove acked-by in the next patch series version.

~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 11:29:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 11:29:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595091.928577 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd7ls-0007Rf-Bo; Mon, 04 Sep 2023 11:29:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595091.928577; Mon, 04 Sep 2023 11:29:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd7ls-0007RY-91; Mon, 04 Sep 2023 11:29:32 +0000
Received: by outflank-mailman (input) for mailman id 595091;
 Mon, 04 Sep 2023 11:29:31 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SRlT=EU=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qd7lr-0007RQ-2q
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 11:29:31 +0000
Received: from mail-lj1-x236.google.com (mail-lj1-x236.google.com
 [2a00:1450:4864:20::236])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 502e4b59-4b16-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 13:29:30 +0200 (CEST)
Received: by mail-lj1-x236.google.com with SMTP id
 38308e7fff4ca-2bcd7a207f7so19322901fa.3
 for <xen-devel@lists.xenproject.org>; Mon, 04 Sep 2023 04:29:30 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 c16-20020a2e9d90000000b002bccfd37659sm2069716ljj.99.2023.09.04.04.29.29
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 04 Sep 2023 04:29:29 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 502e4b59-4b16-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1693826970; x=1694431770; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=mG6tIuG6MeJ6Vm7BapEi3ENGWqTkKkvgzZFpVTLl8o8=;
        b=KnCleExqqZy5X1tBiM2kPy3WAswQ6/PcLmL9BIH3VfvPLxpYf9GyYdJpfkbIh4CRnH
         DFtT9l6kLsYLA5SRcgvUHud4SeCrQY8eL9lzEfuZD56JLQ+i/4xeehKv+HYlWtYpMovN
         MV5218rN2L5nBlTB6q4QFq0ZXUHMUvFzq8USqACKCa/uQQ+TqqpE8VPmp9PSJNoaSaKY
         +atuNaAtgCEVjS6BVRThyC4lt2chuDPyOf9+hWMsVkjU0wSxXTde1S0+7+EiATj+NIlh
         kNzBiWc/POSDpx76sBqBDVax7duzrkrErgY1LMq+Wrl8psUIHAgHvil3On3mBHNCQCd7
         qTTw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693826970; x=1694431770;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=mG6tIuG6MeJ6Vm7BapEi3ENGWqTkKkvgzZFpVTLl8o8=;
        b=iSsyd2oTmTpAzUZnnWdzRWivjZP0oOQikmR19sI0f1kuqCh+T5KN0meohwk9TJSUNx
         qKMq/I8AQLOEo2Lr3Cxo+uEivnKnMK/m0w1x8wjmvy75+5KC3Zl7t/S78cdpE3Isiyz7
         A0oHDhlq2OWAdYhfX1D11NEBeTWW9lg536lCDZdByvyaEEw5w348jefczMo6s6X5piMl
         LO/NVMQTjfA0UEx9m7wtmLKUWYZzvtcoE7vTnqMV4BaTlcymNpK+cWgw14iIZh/KzJi+
         6sGTXd4G0i9u7LH2HTvdyNqtO7z6RAz5RGvW9MYYbPGy094Ci+Jn9d34qw9yj4HLZR4y
         WJrw==
X-Gm-Message-State: AOJu0YxPOT1mtCvSPl3tsQe1sWnZ27doFTXPM370KARc7QuLPZ9E+ttv
	SSX+EuUse6pyzDRRcxN0IKs=
X-Google-Smtp-Source: AGHT+IFjGHZg3I/Q0v9VEOf/AyJ3tk6p9mRzNqUqmm8nBJKHx3QibhKlecnlW83dG5UJWCRnaAz5wg==
X-Received: by 2002:a2e:2c09:0:b0:2bc:d522:dfd4 with SMTP id s9-20020a2e2c09000000b002bcd522dfd4mr6922829ljs.8.1693826969662;
        Mon, 04 Sep 2023 04:29:29 -0700 (PDT)
Message-ID: <44ce802b41b9062a99e25f22590eac78519de908.camel@gmail.com>
Subject: Re: [PATCH v4 2/2] xen: move arm/include/asm/vm_event.h to
 asm-generic
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Tamas K Lengyel <tamas@tklengyel.com>, Alexandru Isaila
	 <aisaila@bitdefender.com>, Petre Pircalabu <ppircalabu@bitdefender.com>, 
	Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
Date: Mon, 04 Sep 2023 14:29:28 +0300
In-Reply-To: <464e3134-8b40-5f80-ddc8-7b523b1d3330@suse.com>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
	 <0d273a71bb3caca894485a33970a81ec9a9f44e5.1693583721.git.oleksii.kurochko@gmail.com>
	 <464e3134-8b40-5f80-ddc8-7b523b1d3330@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Mon, 2023-09-04 at 08:54 +0200, Jan Beulich wrote:
> On 01.09.2023 18:02, Oleksii Kurochko wrote:
> > asm/vm_event.h is common for ARM and RISC-V so it will be moved to
> > asm-generic dir.
> >=20
> > Original asm/vm_event.h from ARM was updated:
> > =C2=A0* use SPDX-License-Identifier.
> > =C2=A0* update comment messages of stubs.
> > =C2=A0* update #ifdef.
> > =C2=A0* change public/domctl.h to public/vm_event.h.
> >=20
> > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
> > Acked-by: Stefano Stabellini <sstabellini@kernel.org>
> > ---
> > Changes in V4:
> > =C2=A0- update path of vm_event.h from include/asm-generic/asm to
> > include/asm-generic
> > ---
> > Changes in V3:
> > =C2=A0- add Acked-by: Stefano Stabellini <sstabellini@kernel.org> for
> > "xen: move arm/include/asm/vm_event.h to asm-generic"
> > =C2=A0- update SPDX tag.
> > =C2=A0- move asm/vm_event.h to asm-generic.
> > ---
> > Changes in V2:
> > =C2=A0- change public/domctl.h to public/vm_event.h.
> > =C2=A0- update commit message of [PATCH v2 2/2] xen: move
> > arm/include/asm/vm_event.h to stubs
> > ---
> > =C2=A0xen/include/asm-generic/vm_event.h | 55
> > ++++++++++++++++++++++++++++++
> > =C2=A01 file changed, 55 insertions(+)
> > =C2=A0create mode 100644 xen/include/asm-generic/vm_event.h
>=20
> But that's not "move" anymore, as the Arm header isn't being deleted.
Yes, it is correct.

But I think we still have to remove it as this is not any sense to have
the same file for ARM, PPC and RISC-V.




From xen-devel-bounces@lists.xenproject.org Mon Sep 04 11:30:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 11:30:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595097.928587 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd7mR-0000Pd-QD; Mon, 04 Sep 2023 11:30:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595097.928587; Mon, 04 Sep 2023 11:30:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd7mR-0000PW-Mk; Mon, 04 Sep 2023 11:30:07 +0000
Received: by outflank-mailman (input) for mailman id 595097;
 Mon, 04 Sep 2023 11:30:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ceyR=EU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qd7mQ-0000MH-SP
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 11:30:06 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on2061d.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::61d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 63f6889e-4b16-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 13:30:03 +0200 (CEST)
Received: from DM6PR03CA0020.namprd03.prod.outlook.com (2603:10b6:5:40::33) by
 LV8PR12MB9450.namprd12.prod.outlook.com (2603:10b6:408:202::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 11:30:01 +0000
Received: from DS3PEPF000099D6.namprd04.prod.outlook.com
 (2603:10b6:5:40:cafe::ca) by DM6PR03CA0020.outlook.office365.com
 (2603:10b6:5:40::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Mon, 4 Sep 2023 11:30:00 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS3PEPF000099D6.mail.protection.outlook.com (10.167.17.7) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Mon, 4 Sep 2023 11:30:00 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 06:29:59 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 4 Sep 2023 06:29:54 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 63f6889e-4b16-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GC81OpH/MYEyGh5toYYr3n1dz1oYk9DEfT8crgOiRNN/Gv5C98h8awfkUXSKeFgCN5uCjTcHOdJb7ArP0YnPxDZv7pcbR8tF4JSTvCZmxgFf5/39StJmXG9e/fWI3b1BcHEtCTuZsqaXYknLCep8iMSuMUPq841Pj73eaEpU32rP36FiBA5c/kBSsxHa5A7SXyUPZH/dldrgMSkeLOUcYhBmTy6Whk+o+c5+/i7OWqvBQOURUGPsfSHsszKIlHBdPbN86mFsN74eMnjLvOQ1U0USQ899txbTR6Q6WFGkZGECy3dnZhTckQFu10m8b7kP2/I8bZE9LBxA1uAiFbDvkQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jYYP8czLRtpn3KnDUAftby/fdRS1lsK3Pmv3fpWaVS8=;
 b=BkU4rTJudcxku+yhLsEy4pUd/D29U0ecCLXTVPbN3VAR2A6TnWphP77aGXdWjIAMrpKlqDgcFtA4tjV5TK6Lxi9cu6wG7GSUNc8N3v3SABNzojpd9Rex9reIQo5X2AW1ww2lqR2NRlHH2JoWRpc8sI9QD4lrARJKiqz+wL6qRYkYaGwVjsmmCWNo7+hMJF1lbmgjr//z0UDJRXG+l3Zo6zV1Sg3ck6DVQoR8dHdreO+5yu9E8LMHcpY1o+u2LfiN/kEsCsHJGhCkgjUi3JnMJw75iggk3x8SB1nEGa12CJJabMyLrrhO7nPUxCPp2N7oIJjrv0/olxxrHh1yQXekPw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jYYP8czLRtpn3KnDUAftby/fdRS1lsK3Pmv3fpWaVS8=;
 b=NAj54o0rY3klhP1Px7vzG+X8ho4cjNdCA7O96npX6bTT4J2IZvcIP+Lbme50bUDR/arLWBqRP+lD3JK+HbZpHuRfPZoEfISM0TxqioG2rj/MxGDzpeeMmYAtV+7vqyXrNckUqzNBJYBrG3rQtWGwl4jAEEMHMBviu5JYx2JRqVE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <eb2c932d-c096-55bf-aec3-a8e311f4a6d7@amd.com>
Date: Mon, 4 Sep 2023 13:29:53 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN][PATCH v11 15/20] arm/asm/setup.h: Update struct
 map_range_data to add rangeset.
Content-Language: en-US
To: Vikram Garhwal <vikram.garhwal@amd.com>, <xen-devel@lists.xenproject.org>
CC: <julien@xen.org>, <sstabellini@kernel.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
 <20230901045947.32351-16-vikram.garhwal@amd.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20230901045947.32351-16-vikram.garhwal@amd.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099D6:EE_|LV8PR12MB9450:EE_
X-MS-Office365-Filtering-Correlation-Id: b7c2cbab-9f72-4bb7-4255-08dbad3a4664
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/2XMKfKAlx2kE+1d61O6mwkxFKAohnL7VnMgnqYJQVmAbuejwH7Xuu8h6hsS0Y5VIl8bTz3tkQNo778GOPVbZAxT4qJWMWXFG01PvYVbialLw8ikz/Nn9yAPCRKz38bNQ0Fe1aB4q5WyhE2G6T4KvSEd6/XQE7DOWaahLgZjNzemed5ZRd883YBPSYaTgGBjNi+BxifkIBbyYXTr0Ppc/XKpJdHfP3ei/zz7OOIn9AnA+ELlz6uppf+7PBzJ/qM5UD/wBC7NTaNCg1z9/mA6kATmNBh7l2E+wseTYV8uUgQi+on+tUCXFz9FTyhtpW0yPchavFB/gWqjBy1Gih9ukoVmPHiFofHzrS1fGNdPDdOI3YdW0XY3GWtmbXZ2NlKWzecYnvRjjZgLXg4FGAAKFvWweSHWVm78Yv4S1U9sGqC58w/Mfzi2Sgryqhzo1ltWzYkPaa/dXUAWfNZiuXdgCvEKwWfGK7Dvv+WkU8xKHKGmEk0VhOxQ69pxPAUW4obmFGXQ2kdHRxfVmL6UaW0rajEyziWRj0QrUNoUpmqukRnCbthS5d7FLd9Ar3YdeIz0PLiilE02dCd3rkDpC1So3jP1bkuPH/JRFCMSMk9KhowbiCf1gUqkyi+NJEljfkxfAcCXrwhhFNX5xiB+TzyTz/oruavXNTfckHtU7XIlb3gqam0KKneYydrr9g7R+K7sS6zEIbZbAeVkRa47VLi/MG1T2HyZhI9ExFsPULgl8qVZOmBbSQ9MJutNEoGuBEQcBD7Y3K7AlcqG7LyEjtQDn0CivI+1vHJNCORP6KjTOrIjLi4tIpOaVlOB/PIwvt5u
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(376002)(346002)(39860400002)(136003)(186009)(1800799009)(82310400011)(451199024)(36840700001)(46966006)(40470700004)(41300700001)(40460700003)(53546011)(356005)(478600001)(82740400003)(81166007)(83380400001)(336012)(2616005)(47076005)(426003)(26005)(36860700001)(40480700001)(70586007)(2906002)(110136005)(16576012)(36756003)(54906003)(70206006)(316002)(86362001)(31696002)(31686004)(8936002)(5660300002)(44832011)(8676002)(4326008)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 11:30:00.2960
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b7c2cbab-9f72-4bb7-4255-08dbad3a4664
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS3PEPF000099D6.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR12MB9450



On 01/09/2023 06:59, Vikram Garhwal wrote:
> Add rangesets for IRQs and IOMEMs. This was done to accommodate dynamic overlay
> node addition/removal operations. With overlay operations, new IRQs and IOMEMs
> are added in dt_host and routed. While removing overlay nodes, nodes are removed
> from dt_host and their IRQs and IOMEMs routing is also removed. Storing IRQs and
> IOMEMs in the rangeset will avoid re-parsing the device tree nodes to get the
> IOMEM and IRQ ranges for overlay remove ops.
> 
> Dynamic overlay node add/remove will be introduced in follow-up patches.
> 
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> 
> ---
> Changes from v10:
>     Replace paddr_to_pfn(PAGE_ALIGN()) with paddr_to_pfn_aligned().
>     Change data type of irq.
>     fix function change for handle_device().
>     Remove unnecessary change .d = d in mr_data.
> ---
> ---
>  xen/arch/arm/device.c            | 43 +++++++++++++++++++++++++-------
>  xen/arch/arm/domain_build.c      |  4 +--
>  xen/arch/arm/include/asm/setup.h |  9 ++++---
>  3 files changed, 42 insertions(+), 14 deletions(-)
> 
> diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
> index 327e4d24fb..1f631d3274 100644
> --- a/xen/arch/arm/device.c
> +++ b/xen/arch/arm/device.c
> @@ -165,6 +165,15 @@ int map_range_to_domain(const struct dt_device_node *dev,
>      dt_dprintk("  - MMIO: %010"PRIx64" - %010"PRIx64" P2MType=%x\n",
>                 addr, addr + len, mr_data->p2mt);
>  
> +    if ( mr_data->iomem_ranges )
> +    {
> +        res = rangeset_add_range(mr_data->iomem_ranges,
> +                                 paddr_to_pfn(addr),
> +                                 paddr_to_pfn_aligned(addr + len - 1));
> +        if ( res )
> +            return res;
> +    }
> +
>      return 0;
>  }
>  
> @@ -178,10 +187,11 @@ int map_range_to_domain(const struct dt_device_node *dev,
>   */
>  int map_device_irqs_to_domain(struct domain *d,
>                                struct dt_device_node *dev,
> -                              bool need_mapping)
> +                              bool need_mapping,
> +                              struct rangeset *irq_ranges)
>  {
>      unsigned int i, nirq;
> -    int res;
> +    int res, irq;
You could make use of res to store irq just as it was done before without introducing new local var.
Anyway, if you think it improves readability:
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 12:00:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 12:00:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595107.928597 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd8F8-0003nf-1M; Mon, 04 Sep 2023 11:59:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595107.928597; Mon, 04 Sep 2023 11:59:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd8F7-0003nY-UT; Mon, 04 Sep 2023 11:59:45 +0000
Received: by outflank-mailman (input) for mailman id 595107;
 Mon, 04 Sep 2023 11:59:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pUi+=EU=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qd8F6-0003nP-B9
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 11:59:44 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20613.outbound.protection.outlook.com
 [2a01:111:f400:7d00::613])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 87399f3b-4b1a-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 13:59:42 +0200 (CEST)
Received: from DU2PR04CA0260.eurprd04.prod.outlook.com (2603:10a6:10:28e::25)
 by AM8PR08MB5780.eurprd08.prod.outlook.com (2603:10a6:20b:1c4::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 11:59:38 +0000
Received: from DBAEUR03FT007.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:28e:cafe::e3) by DU2PR04CA0260.outlook.office365.com
 (2603:10a6:10:28e::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Mon, 4 Sep 2023 11:59:38 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT007.mail.protection.outlook.com (100.127.142.161) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.22 via Frontend Transport; Mon, 4 Sep 2023 11:59:37 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Mon, 04 Sep 2023 11:59:37 +0000
Received: from 03d416cd6d63.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 0BEA148F-4CA3-4668-B216-6FE42A71A45D.1; 
 Mon, 04 Sep 2023 11:59:31 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 03d416cd6d63.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 04 Sep 2023 11:59:31 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by DB9PR08MB6666.eurprd08.prod.outlook.com (2603:10a6:10:2a7::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 11:59:29 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 11:59:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 87399f3b-4b1a-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=c27yNJOKjC7RlfGgXnh4UN95e54DnrHxIaarBPGZC5Y=;
 b=UvSFVr6a+eB2PVmZDLvvm6mlCAoSBBTcGa8o4/GDm9qJmJUiLlrpdl5ALsJ9oXHD+ITmPNQNH/JK/mAmqY0+OFl4Esq9RiQ8VjxgpLsyV1ha25bcdwOOMxXOYDcHQoafGQaulf5TNp1qO1/m+YIc6N9TRLMD/P3OOTTzPaOUHeI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 69ada62281fbdb12
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U69xA5w+o7jGAM/nkULT6sabWCjHVW3kkjElFYBiLLMpogSm6qRdd48dP4ttWHqpp5DX2qx3Kzvj800EXHde/9xsjOH/PiXC+kfZQQ379pZBKgR69J4Zy5Lal3QNiFWFg21eeSgpP9CG0p1/30BJjr8vzct+ht0ECLEb0eopuoCzFOLLV5LOTbYII/kAxwrSqqkecha3RzhNOadg7ptrOUns4v+RFwGyHQMqjGuq2QzrVlgIOQR+WPB8FLGcEGbUuRRxPLqwwkwfez9crtHgQVGw+NYFiYi21Y5VkZPEW0RDEB7VWWiV7ag1OLu3t/kRl5FGoow5Lg2B1ScA4Br2nA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=c27yNJOKjC7RlfGgXnh4UN95e54DnrHxIaarBPGZC5Y=;
 b=jiXO3hbQSpZ4aKKpXR0zT7lL/KhYiNb4KL1lJ3AeVuAPiAFUq4MvCMcw/F7vHaabgjz4C5f9AfV40UkpDY3RovnkADvWOzrNJatZHm+Kh9AH5FCC7GKPzpBEtx0jlxk8Weg/54Co/VmHudSo2gMCODzJZIchQJU0gj8AImxVl4gHuEUpIMJPrq2fcrKO07QTY1BIUolwYdboPF4B+jCVUevAv0iJWjwvTPo0lukjDqKWi37z6gRwRgRZJ3FCFSw4C3xZvIyuvwd8SJeH73UMGhQ0Zv0RZDvW0sqRjRx2GNpEXkTFwfuUmet9gRH4uhqCQLOR+O+uoz+wHOsxHbBi/g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=c27yNJOKjC7RlfGgXnh4UN95e54DnrHxIaarBPGZC5Y=;
 b=UvSFVr6a+eB2PVmZDLvvm6mlCAoSBBTcGa8o4/GDm9qJmJUiLlrpdl5ALsJ9oXHD+ITmPNQNH/JK/mAmqY0+OFl4Esq9RiQ8VjxgpLsyV1ha25bcdwOOMxXOYDcHQoafGQaulf5TNp1qO1/m+YIc6N9TRLMD/P3OOTTzPaOUHeI=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Michal Orzel <michal.orzel@amd.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH 1/2] xen/arm: smmuv3: Add missing U for shifted constant
Thread-Topic: [PATCH 1/2] xen/arm: smmuv3: Add missing U for shifted constant
Thread-Index: AQHZ3xA6Uh0Zbf8c6kSq95XOBrrVBLAKkFYA
Date: Mon, 4 Sep 2023 11:59:28 +0000
Message-ID: <7B8C61A5-0AC2-487D-B7B5-908A1184B205@arm.com>
References: <20230904091406.942-1-michal.orzel@amd.com>
 <20230904091406.942-2-michal.orzel@amd.com>
In-Reply-To: <20230904091406.942-2-michal.orzel@amd.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|DB9PR08MB6666:EE_|DBAEUR03FT007:EE_|AM8PR08MB5780:EE_
X-MS-Office365-Filtering-Correlation-Id: 34e95101-c2e2-4715-e20a-08dbad3e69ca
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 fpwOfH36ljnbin4TPLZjaSP9oxnEGh4XjwsOnt2lDEUvoPHWsAfQW4EJqqGIepOcvWkspuG/RTuTx60HjlP+A+PNxe+aqCu9AnH4AhEEMihODeki633ssUxS9VRIViXnu1Dy4x0X0xt0jIyeQxhnQaAFB5RbDylzNg0L5BDflQuW40ZiykQL9pooskE8cBuYwHYcXgE/HNh7eH5CdJzPCDrE81fPXI1g5709PneQuzpXNJzDs+3zJSCipjSE9JBMxgwUF+qXdy6X1FQO6YkopRRYa//pwAj5xHX4H5PbJsNRe5kw/1e/Ww+mQUkAgNiU/XTgaq4X9fLmToV40Gd5h/ESDKLgqYT5o4M8+hguN0FlEH+Lc/gcWkaQg7cmspu4LfIc1i3WDiq0CFuaJwpNVSsWmQjC4TjR4STjrbb7HXibpe6ime6HfKS4B1f2QO7/7vcG8mR1MZ2/hT1arTa8HM/RdByBDdJRyUonC5yzmD73kQcuSc1qQ/K/Gy4spf/qlzxIRbJ2+EpYppy7DjTQeSrone3JofYEtAzRfauHHkmJxULUizD1mgjpG3k9HDwbDCATt58hE875yoAzB0jEx2HKKtmuc9FwKJHpxKp+aY11cpwNTBuYusOXsTvPzYQLb7gyv0RflwdbfuBs2QCjQA==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(396003)(39860400002)(136003)(376002)(186009)(1800799009)(451199024)(41300700001)(71200400001)(6486002)(6506007)(53546011)(122000001)(478600001)(83380400001)(2616005)(26005)(6512007)(38070700005)(38100700002)(54906003)(91956017)(76116006)(66946007)(2906002)(36756003)(66556008)(66476007)(6916009)(64756008)(66446008)(316002)(33656002)(86362001)(5660300002)(8936002)(4326008)(8676002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <581C922DCF5CC347A8DDAB2A2739A3DA@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6666
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT007.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	bd8936f1-822a-4268-c5bc-08dbad3e647a
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	x9HkTms8j2QQqsdG9CbR82PFC8rxoM+6zCtdHT7LEd6q+ikn4Y7BpbLRpVaY69epZAnLC6iiQej69/o95+AQXF8dwHQar9yu7iXKV2uHWVbDCiGuG5UF3R1hYB1IU+5cIrgRTmr1RQiJJIAc/ojwudRStwVUn/dw/8/VSjxQbfeQ9/KRXzwbHPVhAO2gnWoSFaZr7lsY7GmCjrDEmogOa4tV63O2/VJMnJ8kskMNIGvStYtgG52nAIeQEJb2AETdE05r7IwpGmQy+Ng/4+3mt+qQ/Xi3mN6TWY43d9Q4aOZwlriadi3ldErv9qQIo4V5knkS6G9sU8xBr9OsSU/UP5P+peKAMusXwJUWlouDf15uDke61RhEfFDv4h5mpIVzKjyAuP9bpR9zq+NRWK/svbNsqScIhVozLtE1JshXhCV5fkyMvS46aPR2b+HqZalQjooeG93z2uIGF4izJAmCZ/XAI2I74CLZnSWEdlzBqRJhPLOuswoH8KpBxlzdR4Debh/SXK0FtNcxkDpS/Dg3DT+8VLH4WW68DoY7noRInCF6CIhe7iRGopODyt/TgLotHecyk1Wz7d5fhnojK0f1qzJ7W2sOXeH5tK2Mt+n5S8DNdyL537CgJRjcXO+aMrk2uImHNGoszJdJ7HLGHFbysM+wXWP6ah8E1yiANqbHJyHojyKMzW8HcLHVUG9eCyzdBAFrHe+0xYv4mGLolpHBVXNADDYjeMjMdBWN/7WB8C7Wkr2u4FAAXQD0MW3iaLUl
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(136003)(376002)(396003)(1800799009)(186009)(82310400011)(451199024)(46966006)(40470700004)(36840700001)(53546011)(6486002)(6506007)(40460700003)(41300700001)(6512007)(54906003)(81166007)(82740400003)(356005)(2906002)(36756003)(33656002)(86362001)(316002)(70586007)(478600001)(70206006)(40480700001)(6862004)(8676002)(4326008)(8936002)(336012)(26005)(83380400001)(2616005)(107886003)(5660300002)(36860700001)(47076005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 11:59:37.7538
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 34e95101-c2e2-4715-e20a-08dbad3e69ca
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT007.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5780

Hi Michal,

> On 4 Sep 2023, at 11:14, Michal Orzel <michal.orzel@amd.com> wrote:
>=20
> When running with SMMUv3 and UBSAN enabled, the following is printed:
>=20
> (XEN) UBSAN: Undefined behaviour in drivers/passthrough/arm/smmu-v3.c:297=
:12
> (XEN) left shift of 1 by 31 places cannot be represented in type 'int'
>=20
> This refers to shift in Q_OVERFLOW_FLAG that is missing 'U' suffix.
> While there, also fix the same in GBPA_UPDATE.
>=20
> This should address MISRA Rule 7.2:
>    A "u" or "U" suffix shall be applied to all integer constants that
>    are represented in an unsigned type
>=20
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>

Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

> ---
> xen/drivers/passthrough/arm/smmu-v3.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>=20
> diff --git a/xen/drivers/passthrough/arm/smmu-v3.h b/xen/drivers/passthro=
ugh/arm/smmu-v3.h
> index b381ad373845..05f6b1fb7e33 100644
> --- a/xen/drivers/passthrough/arm/smmu-v3.h
> +++ b/xen/drivers/passthrough/arm/smmu-v3.h
> @@ -87,7 +87,7 @@
> #define CR2_E2H (1 << 0)
>=20
> #define ARM_SMMU_GBPA 0x44
> -#define GBPA_UPDATE (1 << 31)
> +#define GBPA_UPDATE (1U << 31)
> #define GBPA_ABORT (1 << 20)
>=20
> #define ARM_SMMU_IRQ_CTRL 0x50
> @@ -159,7 +159,7 @@
>=20
> #define Q_IDX(llq, p) ((p) & ((1 << (llq)->max_n_shift) - 1))
> #define Q_WRP(llq, p) ((p) & (1 << (llq)->max_n_shift))
> -#define Q_OVERFLOW_FLAG (1 << 31)
> +#define Q_OVERFLOW_FLAG (1U << 31)
> #define Q_OVF(p) ((p) & Q_OVERFLOW_FLAG)
> #define Q_ENT(q, p) ((q)->base + \
> Q_IDX(&((q)->llq), p) * \
> --=20
> 2.25.1
>=20



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 12:13:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 12:13:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595115.928606 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd8Sg-0006hg-B6; Mon, 04 Sep 2023 12:13:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595115.928606; Mon, 04 Sep 2023 12:13:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd8Sg-0006hZ-8P; Mon, 04 Sep 2023 12:13:46 +0000
Received: by outflank-mailman (input) for mailman id 595115;
 Mon, 04 Sep 2023 12:13:45 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qd8Sf-0006hP-CU; Mon, 04 Sep 2023 12:13:45 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qd8Sf-00011h-06; Mon, 04 Sep 2023 12:13:45 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qd8Se-0004A1-Fv; Mon, 04 Sep 2023 12:13:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qd8Se-0003lp-FU; Mon, 04 Sep 2023 12:13:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=QYEkxyIRdSmnZGO2Uq7Rsb/pl/l+lzgVmlE4STEiNWI=; b=5uJjEDF91h14CMmotOiF8ozrcK
	SSAZAQ6/9hcbz9oT6nP9rB8czI/RYuGef83Wxi+RxrxcCb8edw9luAbCOXIXESm/AFZbXo0pDNbWq
	kzrqbs1V7seEruBuh5cTI75jMNFwG+DrR7YVc4kd4Gkdsmdci0zHnt4Fqc8aUikJuRxI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182624-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182624: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=708283abf896dd4853e673cc8cba70acaf9bf4ea
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 04 Sep 2023 12:13:44 +0000

flight 182624 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182624/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                708283abf896dd4853e673cc8cba70acaf9bf4ea
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z    7 days
Failing since        182544  2023-08-28 20:42:13 Z    6 days   12 attempts
Testing same since   182622  2023-09-03 19:43:01 Z    0 days    2 attempts

------------------------------------------------------------
2023 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 232318 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 12:17:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 12:17:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595124.928617 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd8Vu-0007Hj-S9; Mon, 04 Sep 2023 12:17:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595124.928617; Mon, 04 Sep 2023 12:17:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd8Vu-0007Hc-Oo; Mon, 04 Sep 2023 12:17:06 +0000
Received: by outflank-mailman (input) for mailman id 595124;
 Mon, 04 Sep 2023 12:17:05 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5g5r=EU=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qd8Vt-0007HU-2I
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 12:17:05 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0612.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::612])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f427be35-4b1c-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 14:17:02 +0200 (CEST)
Received: from DB7PR05CA0012.eurprd05.prod.outlook.com (2603:10a6:10:36::25)
 by PAWPR08MB9590.eurprd08.prod.outlook.com (2603:10a6:102:2e8::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 12:17:00 +0000
Received: from DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:36:cafe::89) by DB7PR05CA0012.outlook.office365.com
 (2603:10a6:10:36::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Mon, 4 Sep 2023 12:16:59 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT022.mail.protection.outlook.com (100.127.142.217) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.23 via Frontend Transport; Mon, 4 Sep 2023 12:16:59 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Mon, 04 Sep 2023 12:16:59 +0000
Received: from 9fb047743ad0.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 9597A815-850E-4962-928C-AC30007D47D0.1; 
 Mon, 04 Sep 2023 12:13:55 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9fb047743ad0.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 04 Sep 2023 12:13:55 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by DB8PR08MB5482.eurprd08.prod.outlook.com (2603:10a6:10:116::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 12:13:53 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::4c7d:6a1:e742:3b1a]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::4c7d:6a1:e742:3b1a%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 12:13:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f427be35-4b1c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Fa64oUxSBs8PZfZbcvMA1ZD2ib4mo9J4tT1DgDYUNA0=;
 b=99mC+wBoE75e0h4v8CiUGDGI51aabO4opfGeIatmGrtI6L5jIn4WKhwwxt0/pB1KGV/wlHEgpTpxZsdY9JuNoF4+PojliDyBY6HY/fpzF69mSze0vEsbY4gUUgRjkQheQL5s6v4vRtlxDvVpCHSzpKk5ut0StzcQRRocUWl9ot4=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 026fdb30c70ea5ad
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XOtGxpeCq6Lr8Of+sDfb+SNzjcslttV3NGalNiBOwQXWwDnirYgH4z+L/IQOLZ4lx2fimlL4WSTj4JgxuXIQe523jVUteKQwHOt1gceQDdCBhKC3WlDmgY7GxZb1SRCaQpPGlro+DdMXQ6XRFjcQfBo4LZK7dFnBPuP1O6DUp1kdi3sPWsCzIe4nbLtKVmHuLhdirsWEwUmmRaWrlO8zbfg3hPzlP9e7UbR2BABRCY2aNIrgJixMntrkIXJF9mUCKuZq9jjdhhPhBBkzamCrnJDYXBbFC0F1zfFnfHK7Ci85uL1TKn43HXVZdmZAP1x+ROjCSVu3MCWvrdpJ8ETUrA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Fa64oUxSBs8PZfZbcvMA1ZD2ib4mo9J4tT1DgDYUNA0=;
 b=OkNXVwzDOG4mGUurjviPnq6djDolFSobiIXllLq7XSUTlCBM6MM9/yBfdHCqfZ77rBRguxYsGUFI/Br4KA4i7u7SmdCHM2qQLR9KixhB4wsZzH7mXovlpfXOeuPmyzzWz2gAePW1MrWb9knFRat+NttN5oa0S7YT0VKPF7lHsFAuuBx4qw0o62y8Ypxb8UojnRKXZadfIe0x3cx0itzJXhQXogw1FnGHM7nAb47gy8krr0spkxquNC2407bTbfZsi1GIYZpycF24ZpZKzWlOtxwxAe0Dkola15+3ZJUv5w7VTvGVkt0Z1MgB+3VW2No7qR+YO9mZ3ys400U13oAHhg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Fa64oUxSBs8PZfZbcvMA1ZD2ib4mo9J4tT1DgDYUNA0=;
 b=99mC+wBoE75e0h4v8CiUGDGI51aabO4opfGeIatmGrtI6L5jIn4WKhwwxt0/pB1KGV/wlHEgpTpxZsdY9JuNoF4+PojliDyBY6HY/fpzF69mSze0vEsbY4gUUgRjkQheQL5s6v4vRtlxDvVpCHSzpKk5ut0StzcQRRocUWl9ot4=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Michal Orzel <michal.orzel@amd.com>
CC: Stefano Stabellini <sstabellini@kernel.org>, "nicola.vetrini@bugseng.com"
	<nicola.vetrini@bugseng.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>
Subject: Re: xen-analysis ECLAIR support
Thread-Topic: xen-analysis ECLAIR support
Thread-Index: AQHZ1tnZvpm8hZMDREGKKcjBarux3K/6q84AgA/4+wA=
Date: Mon, 4 Sep 2023 12:13:53 +0000
Message-ID: <63E4B0A8-1B3E-4542-81E6-4DC60A5C63E8@arm.com>
References:
 <alpine.DEB.2.22.394.2308241453470.6458@ubuntu-linux-20-04-desktop>
 <aec70a33-b5b7-0bcb-52db-15162407c8bb@amd.com>
In-Reply-To: <aec70a33-b5b7-0bcb-52db-15162407c8bb@amd.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|DB8PR08MB5482:EE_|DBAEUR03FT022:EE_|PAWPR08MB9590:EE_
X-MS-Office365-Filtering-Correlation-Id: 97eca471-8f73-4072-fe34-08dbad40d6b4
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 9xiGInmJZy4ri+4eyxDa7RQ7lNoJkyYgpSH1Xc2Mwslq8L0fz0AAM5U2OrbpY4sjGX52YK8bMVFhtaWAGRqOThEOMYzlFMp7zgLphYzRKLecVuqSNkpNUnVcSUFXgctXRcteXCSxDchfMJOdg16BuuVEHQ9VC4fJP69kUWUU+aIcKY3++p8vXFgeV3lU/6dB0znjYiHyjIG1/e0U5virDKdCP2q3EtjKthXOMVU6JvioRmoevNIRhxLroFCWtok3qrXRMdmls00YUPPfhLrQmQ5IMNTc/0w9BWqfHnVo85hKZsvWtIeOd5VDiYfz2VVFIkfcKoAWUAbidABAxNqOgLVWNKT9DutEsubUjZY8EhOlsXJUwM2E/4ocdgtgSLubOOt+OpPe/qVx5/LOWxr33cbi26n0A45ex2zT1h+dxQe9FPkAHinLwefhh61nIaGritWqE856wehihqaaDtH6QuEcz6Bwg+RVMsPS9+1nRnghlYyf/cZSeUTFB6a5d9RhL4l5nDGV1zSiK/GgXAP1fPeWuQc4dX2zh9aaJotTCVr81PoWOEhD2kwJAUci1cUAAsx+06tluIcMt4G1vVqNLaojSwu39y8EvlIxSyg8nz5ePucWdyWIOr83VSxmn5rVH/NIyp5xdH1wj3JURb3yVA==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(376002)(366004)(396003)(39860400002)(451199024)(186009)(1800799009)(3480700007)(38100700002)(122000001)(38070700005)(33656002)(41300700001)(5660300002)(36756003)(86362001)(83380400001)(66556008)(66476007)(66946007)(66446008)(76116006)(26005)(64756008)(478600001)(2616005)(91956017)(71200400001)(8936002)(8676002)(4326008)(316002)(53546011)(6512007)(6486002)(54906003)(2906002)(6506007)(6916009)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <C9155F9A108E584B947A66E31D7F81A4@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB5482
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	ddff42c3-4e4e-4bbd-abbe-08dbad4067d4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	2cGG8OGS7DKfqJhrvX0OQDHRKkQI0fW8n6GEUJ+dULpXHUbh4+yWA+pIUyGXjWJErgEU7D4/WGavFxFXjnrYmMbzsAzbFibkMfuap7OPNYsl/lIRJv8x7yM3MPXiNx+BCIvSiBK9SYEIIa+29ugedSQT7nKx7Uyq+afFazHCTV60sbNjSU2P5KIxu9FGT0lMJoOrDzaMLfnltsFIVNGiojv5S/OUG0W1Io8bl31lK6x8yGKCY5vafeDr5cY4PbFP59QDeIRyCs8WU0EwZV4MyweiHxJpcEfqgx5ufhy/W+xvJ4DfgGOKmCfuETftQJ22LvD/iNk+hFWU3odRbcb/RyagAc+w8G24+8mdng8A127zc/ZOH4Vn2O7UrSMJeeihxdaBnXu3YrNExZmdEpvB/l47nYQD7rfZqIcYs+UkhEU5fJcKiXZaK15jgDorktKWfzpt4Z8c4lLPldZzDh1OUy604vJeJH/HcTEN0fxXxJgiAnTKqXQ+Tiwtl3uGeX8FnVlD9NrRkI1ZnFK7rcbUQ1JrEOGQwBrFxbfWhQggoq3filAGyzY2g8W32qtHEcT9qogBWZyDL0eWAg1Wi09AoCk3O7DWV3obgflVNnIRxBxB+LsJ3YLeulKc5wI7BHMlu271GxnYg0WCKTLlkrUYvDuPRgHVdGi3TmsZtLOHb8qVSrPXvpgjrLmdq7jmCmoS2xyZNxZuujN3dQdqxxv4qoMsPyH0lIqKkY1xxMwhRZ0=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(396003)(376002)(346002)(451199024)(186009)(1800799009)(82310400011)(46966006)(40470700004)(36840700001)(2906002)(36756003)(54906003)(86362001)(316002)(70206006)(70586007)(33656002)(40480700001)(5660300002)(4326008)(8936002)(8676002)(6862004)(41300700001)(40460700003)(6512007)(3480700007)(47076005)(2616005)(83380400001)(336012)(26005)(36860700001)(478600001)(81166007)(356005)(82740400003)(6506007)(6486002)(53546011);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 12:16:59.4755
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 97eca471-8f73-4072-fe34-08dbad40d6b4
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9590



> On 25 Aug 2023, at 09:18, Michal Orzel <michal.orzel@amd.com> wrote:
>=20
> Hi Stefano,
>=20
> On 25/08/2023 00:24, Stefano Stabellini wrote:
>>=20
>>=20
>> Hi Luca,
>>=20
>> We are looking into adding ECLAIR support for xen-analysis so that we
>> can use the SAF-n-safe tags also with ECLAIR.
>>=20
>> One question that came up is about multi-line statements. For instance,
>> in a case like the following:
>>=20
>> diff --git a/xen/common/inflate.c b/xen/common/inflate.c
>> index 8fa4b96d12..8bdc9208da 100644
>> --- a/xen/common/inflate.c
>> +++ b/xen/common/inflate.c
>> @@ -1201,6 +1201,7 @@ static int __init gunzip(void)
>>     magic[1] =3D NEXTBYTE();
>>     method   =3D NEXTBYTE();
>>=20
>> +    /* SAF-1-safe */
>>     if (magic[0] !=3D 037 ||
>>         ((magic[1] !=3D 0213) && (magic[1] !=3D 0236))) {
>>         error("bad gzip magic numbers");
>>=20
>>=20
>> Would SAF-1-safe cover both 037, and also 0213 and 0213?
>> Or would it cover only 037?
>>=20
>> We haven't use SAFE-n-safe extensively through the codebase yet but
>> my understanding is that SAFE-n-safe would cover the entire statement of
>> the following line, even if it is multi-line. Is that also your
>> understanding? Does it work like that with cppcheck?
> Looking at the docs and the actual script, only the single line below SAF=
 comment is excluded.
> So in your case you would require:
>=20
> /* SAF-1-safe */
> if (magic[0] !=3D 037 ||
>    /* SAF-1-safe */
>    ((magic[1] !=3D 0213) && (magic[1] !=3D 0236))) {
>    error("bad gzip magic numbers");

Yes correct

>=20
> I guess this was done so that it is clear that someone took all the parts=
 of the statements into account
> and all of them fall into the same justification (which might not be the =
case).
>=20
> BTW. I don't think we have also covered the case where there is more than=
 one violation in a single line
> that we want to deviate (e.g. sth like /* SAF-1-safe, SAF-2-safe */

You are right, but it should work adding multiple comments in this way:

/* SAF-1-safe */
/* SAF-2-safe */
<code where violation 1 and 2 are in the same line>

>=20
> ~Michal



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 12:17:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 12:17:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595125.928626 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd8W8-0007bZ-6T; Mon, 04 Sep 2023 12:17:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595125.928626; Mon, 04 Sep 2023 12:17:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd8W8-0007bO-3S; Mon, 04 Sep 2023 12:17:20 +0000
Received: by outflank-mailman (input) for mailman id 595125;
 Mon, 04 Sep 2023 12:17:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5g5r=EU=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qd8W7-0007aj-8I
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 12:17:19 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2060a.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::60a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fd2ef1f1-4b1c-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 14:17:17 +0200 (CEST)
Received: from DB7PR02CA0006.eurprd02.prod.outlook.com (2603:10a6:10:52::19)
 by DU0PR08MB7567.eurprd08.prod.outlook.com (2603:10a6:10:317::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 12:17:14 +0000
Received: from DBAEUR03FT044.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:52:cafe::8f) by DB7PR02CA0006.outlook.office365.com
 (2603:10a6:10:52::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30 via Frontend
 Transport; Mon, 4 Sep 2023 12:17:14 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT044.mail.protection.outlook.com (100.127.142.189) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.25 via Frontend Transport; Mon, 4 Sep 2023 12:17:14 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Mon, 04 Sep 2023 12:17:14 +0000
Received: from 57a1ed950554.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 2C0B97AE-30A5-448F-881E-12324E97D118.1; 
 Mon, 04 Sep 2023 12:14:24 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 57a1ed950554.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 04 Sep 2023 12:14:24 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by DB8PR08MB5482.eurprd08.prod.outlook.com (2603:10a6:10:116::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 12:14:22 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::4c7d:6a1:e742:3b1a]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::4c7d:6a1:e742:3b1a%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 12:14:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fd2ef1f1-4b1c-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+RnS05jI6H3JpjPV5IefLl8NNzXrmBZZ1KhpgGvGT2k=;
 b=nOXEhcvS5JTmv1KVidUxjn1vIQ9X9pFTR3UMZ17qONiie/UwCjzMR9SklRYkAeOgb2Hhlrfw5ddR0XQLdF/CwmNGDYLf2Zq7yR9o6OYG9pHZUmvL6GP1+Rzl1n//maIdvU6QJhInVLFSZiDRMyAeUrU9AgWPNG6v3TzJlo1FVC4=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 15bd7a501e6755d6
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=b+4mrTqPSJg9Xc2ykNqsSOaupkTEDbZlKP8xnNfN8y+cSo9Lv1m1zZZzCtw+Gxl0gKycv9EGPZnyaoJsOPoAZwKSq2jS7nHRkQpEa7G6z0fJNGqj4WOzR0fLhg1qHUgXHPt6dn6p4iWfN9PmYSScBNG8DaC4+4c6ZXRn4HnfdAu8SutRGZr3aPOIzLdk0vZY0+B77pSIxsa/sEy92NTS3sFMwO7AHEcW+J1WPMW4gAab0RPXBqy+eDUtGAU5k/cuRgBxrZn+z2Hzdiq/Wk6DJaV2GR+t7w0axvJ5lqkxMuHV5DpY8FdB2nvtwYnrCIRU+dL47GXP8CD8GFEWLLBHDQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+RnS05jI6H3JpjPV5IefLl8NNzXrmBZZ1KhpgGvGT2k=;
 b=PoD2u3IwgGivQdRW0/keBBqmQ6UQ2VCaDMscHMFrC8uKeMcxWZHRzP1FqHxzr27DBMxR/sEmZXebjxSDIzhxcrfuSFAz2kO3qBVH8fnVAhdsxs1tehZyEPv2dOC7Me/Yi/JcgHFbSQhgn9qzJIy8wGdZJrhxFzTBcguCIqUmXKoD9BHBR2GMh7ciex3muiVpDnLC3YWRPHxxtD+6ny5oKvCkg300vJURv4/CikV9cb8DIDur0qXDDy8SKpfmjm1HehwrBpqcla8svBGnwhMnuIksLxUDeJsJ/NcQux79JydCfkC29dxrJDItq0nrbgpAHMvj0O0kl+TC95cRmamFCw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+RnS05jI6H3JpjPV5IefLl8NNzXrmBZZ1KhpgGvGT2k=;
 b=nOXEhcvS5JTmv1KVidUxjn1vIQ9X9pFTR3UMZ17qONiie/UwCjzMR9SklRYkAeOgb2Hhlrfw5ddR0XQLdF/CwmNGDYLf2Zq7yR9o6OYG9pHZUmvL6GP1+Rzl1n//maIdvU6QJhInVLFSZiDRMyAeUrU9AgWPNG6v3TzJlo1FVC4=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Michal Orzel <michal.orzel@amd.com>, Nicola Vetrini
	<nicola.vetrini@bugseng.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: xen-analysis ECLAIR support
Thread-Topic: xen-analysis ECLAIR support
Thread-Index: AQHZ1tnZvpm8hZMDREGKKcjBarux3K/6q84AgAACt4CAD/ZmgA==
Date: Mon, 4 Sep 2023 12:14:22 +0000
Message-ID: <A4B0B048-9CBB-4F02-96F1-18D27AAD6EDA@arm.com>
References:
 <alpine.DEB.2.22.394.2308241453470.6458@ubuntu-linux-20-04-desktop>
 <aec70a33-b5b7-0bcb-52db-15162407c8bb@amd.com>
 <906c34d2-4e62-7819-2ce3-e88caf7152b4@suse.com>
In-Reply-To: <906c34d2-4e62-7819-2ce3-e88caf7152b4@suse.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|DB8PR08MB5482:EE_|DBAEUR03FT044:EE_|DU0PR08MB7567:EE_
X-MS-Office365-Filtering-Correlation-Id: 5830c507-a84e-40b9-a5ba-08dbad40dfb9
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 UoXrV5600Ji/gj8qt0XX+EOm8LJo6FXmT192XXe6YNti8n4gxdPv7R6nswqOp+thl+3sti0X1zn8SR/jUpEwzPOksafp9OWjMfprLLzlTwpXfFbfxbhuLeYGDXhcIg9dhwv17Wz8jRKsCK6p0tBbgQ/+Nr5WB5OftkXvaeDfX0v0925pD+bCYxll8g+8lwFxQtXZoV/dnOtECGFEWhvU2QcEwuXP3LlBhmDdR/a73ORXh7Wf6apwIHS0eyBF+74nT8EjN38T/urjBEBleG+WMIrAgL1aUiBo1HSiwte+Q3U+HvE0vOiPzpKrFEYFMJicT/l+iNLpu6rhPA8DkWs4eHcBZoYEDGYfiwv5FyYindJf/q7a4pLR6ZgDrSrgd1Fgca2aPHy0KoxFhDFbvLPyIAPJ/nZ0LWJkiv65bNj8ILQPXUWzziMLVt7uEKQL1sRwbf8ziu52etNdr+zEb4TPrdUn5Ks249Cc5vPdMfIEJtGeeLaYqfZHCkQbDr2VaN2d4ZpZbMpzAWHeiIbzzqx9PrdaVlw0mCXGHv0scI3sseV8ck6nb7No0lyWx8OvNhe01OTvWncBCK7s/DmSTYkfq4hl4t31nlV3EV4vxmwvCG/bIn1JoyPZy+Tuu2j6IP50q+0DQuBW8ld/bjV8skTP7Q==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(376002)(366004)(396003)(39860400002)(451199024)(186009)(1800799009)(3480700007)(38100700002)(122000001)(38070700005)(33656002)(41300700001)(5660300002)(36756003)(86362001)(66556008)(66476007)(66946007)(66446008)(76116006)(26005)(64756008)(478600001)(2616005)(91956017)(71200400001)(8936002)(8676002)(4326008)(316002)(53546011)(6512007)(6486002)(54906003)(2906002)(6506007)(6916009)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <DBF6E21305FBC64C99791A9C49D183EE@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB5482
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT044.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	54962d13-74bb-464b-7df5-08dbad4078f2
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	innQl8N/hABoNIiVDvDZudqrA2zOnGLsiJ9y/yNZIFnFURa+rfq+MTVuzwpE1YS09SvtDll+EpbWQTmb1bl2Uqts2IN145F4KriugREvOJydMQqLftBOwf3KUClUPCkVSnKaNb/57dXoZyZIhkEoEyNe49U+eeXoOy3rNuxOmCTx1QqIZH/P56VBYdsnn0pJMv2//Xw9ehDa500XbpwkaU0S5RHZEVsQI5C2KrkgujE10GBPyeDZYX6AIV/REB7epKaMEKITV/UYC31bCf6Yq402afsenmn4ekSpyyYQmvfs6jOKxUksnuh7PZIorguWrPo7tJ2Bww9xjYgLq3UJVacb9PbmD6uLmTrv69ey8ih5cr4M2IA7y8vKTSFYvhZhxyGs+Y9ftp80h4IFMn75PACqewz36acO9OS5DYGsyZxHH2oECrgvY+u3SMSVaRozvbIFbg579x/dj8Zx3MxbGBBE+oklG+Lt1qXZQmO7JSBbH4rxrTvSqE+qi3ocJLjZTsZSOqLsgIgn2Vy2cfkXKjUcTQJfoeDLeEx2f37zpLZ2XEhGCBqsyXrmm9lUmM5kMKPYGBu8psfyyaZVNgtFQptAwc8WcyP1bSCGQPPdLrptB64Of1uHy0qqTz0F+rGFc/fZdvvkiYylMgkshr46M+BD/O1kCK6gCkTGuFo2xJuEmwKDu1hdPugNhAMbokiLEh0FgykLf4OhqEfVdaiLUGHA4zCWsPzUP7kW1X0R96d4N7p3/Dv4sA0P0Z2hocwc
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(396003)(376002)(346002)(451199024)(186009)(1800799009)(82310400011)(46966006)(40470700004)(36840700001)(2906002)(36756003)(54906003)(86362001)(316002)(70206006)(70586007)(33656002)(40480700001)(5660300002)(4326008)(8936002)(8676002)(6862004)(41300700001)(40460700003)(107886003)(6512007)(3480700007)(47076005)(2616005)(336012)(26005)(36860700001)(478600001)(81166007)(356005)(82740400003)(6506007)(6486002)(53546011);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 12:17:14.5898
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5830c507-a84e-40b9-a5ba-08dbad40dfb9
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT044.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7567



> On 25 Aug 2023, at 09:28, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 25.08.2023 10:18, Michal Orzel wrote:
>> Hi Stefano,
>>=20
>> On 25/08/2023 00:24, Stefano Stabellini wrote:
>>>=20
>>>=20
>>> Hi Luca,
>>>=20
>>> We are looking into adding ECLAIR support for xen-analysis so that we
>>> can use the SAF-n-safe tags also with ECLAIR.
>>>=20
>>> One question that came up is about multi-line statements. For instance,
>>> in a case like the following:
>>>=20
>>> diff --git a/xen/common/inflate.c b/xen/common/inflate.c
>>> index 8fa4b96d12..8bdc9208da 100644
>>> --- a/xen/common/inflate.c
>>> +++ b/xen/common/inflate.c
>>> @@ -1201,6 +1201,7 @@ static int __init gunzip(void)
>>>     magic[1] =3D NEXTBYTE();
>>>     method   =3D NEXTBYTE();
>>>=20
>>> +    /* SAF-1-safe */
>>>     if (magic[0] !=3D 037 ||
>>>         ((magic[1] !=3D 0213) && (magic[1] !=3D 0236))) {
>>>         error("bad gzip magic numbers");
>>>=20
>>>=20
>>> Would SAF-1-safe cover both 037, and also 0213 and 0213?
>>> Or would it cover only 037?
>>>=20
>>> We haven't use SAFE-n-safe extensively through the codebase yet but
>>> my understanding is that SAFE-n-safe would cover the entire statement o=
f
>>> the following line, even if it is multi-line. Is that also your
>>> understanding? Does it work like that with cppcheck?
>> Looking at the docs and the actual script, only the single line below SA=
F comment is excluded.
>> So in your case you would require:
>>=20
>> /* SAF-1-safe */
>> if (magic[0] !=3D 037 ||
>>    /* SAF-1-safe */
>>    ((magic[1] !=3D 0213) && (magic[1] !=3D 0236))) {
>>    error("bad gzip magic numbers");
>=20
> Or (perhaps more neatly):
>=20
>    /* SAF-1-safe */
>    if (magic[0] !=3D 037 || (magic[1] !=3D 0213 && magic[1] !=3D 0236)) {
>        error("bad gzip magic numbers");

+1 for this approach, I was going to suggest it

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 12:17:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 12:17:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595128.928637 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd8WM-000874-El; Mon, 04 Sep 2023 12:17:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595128.928637; Mon, 04 Sep 2023 12:17:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd8WM-00086v-Bk; Mon, 04 Sep 2023 12:17:34 +0000
Received: by outflank-mailman (input) for mailman id 595128;
 Mon, 04 Sep 2023 12:17:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5g5r=EU=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qd8WL-0007aj-HU
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 12:17:33 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20617.outbound.protection.outlook.com
 [2a01:111:f400:7d00::617])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 065baf11-4b1d-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 14:17:32 +0200 (CEST)
Received: from DUZPR01CA0218.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b4::21) by GV2PR08MB8582.eurprd08.prod.outlook.com
 (2603:10a6:150:b5::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 12:17:28 +0000
Received: from DBAEUR03FT056.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b4:cafe::c4) by DUZPR01CA0218.outlook.office365.com
 (2603:10a6:10:4b4::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Mon, 4 Sep 2023 12:17:28 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT056.mail.protection.outlook.com (100.127.142.88) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.22 via Frontend Transport; Mon, 4 Sep 2023 12:17:27 +0000
Received: ("Tessian outbound 0b7d6027328f:v175");
 Mon, 04 Sep 2023 12:17:27 +0000
Received: from 3fccac754c3c.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 28085554-2D12-44FE-9F3B-B7CA9BE77163.1; 
 Mon, 04 Sep 2023 12:16:38 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3fccac754c3c.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 04 Sep 2023 12:16:38 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by DB8PR08MB5482.eurprd08.prod.outlook.com (2603:10a6:10:116::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 12:16:36 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::4c7d:6a1:e742:3b1a]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::4c7d:6a1:e742:3b1a%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 12:16:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 065baf11-4b1d-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fT1+/3FFo8sr+A3+bTatit0MNOKNX3/wCVSxe1aBOn0=;
 b=ZLMwddM4XUB4r7kgQ095yhxKImNqDkRh738a18JCulQ41K4jmPZKWlIB2Uwh55wktklfBTyC6lJR/wFaRXwtWyODJZ3u4oD0fVtM0N7U63gVPOQMJXO/sKY1xbOwnuK0wMKRtHLc6Wai1H5k1Dk5HsrpKb0WXVmkXDpHuQOnuQI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 62e32a9d75c85eda
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fVNPOrBjCAVDr/UajzXHSoXZJIHmrHJoF1tSbRtDR0pbmWmUmEXPS4OKywLvX3pBBUa5eGL7vtjVqcWEwxYyIN9yKmhq78g9Y9aB2mZn+u9pMQU/LlZMJHv9+TfiTgBAPilYpNIzMfIWGfEs4ApAD0brf72rGcYH0iSaxTlVpfTpJ4tEc1GUFVwTk5WlWYuBy0dWq6RQYJsfQ4qth3tSfcjgrQCrg6gwe2NSMaLQoS47fRYfAdwCD5EVkMytW4utKincFlsV7Yz3s44WJtONPZwBD1GVoU6hz0Wv0s7v93uPViE+yaZhElE3YbyjQEgnDFe1KYnfCOvrL3rqd0g38A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fT1+/3FFo8sr+A3+bTatit0MNOKNX3/wCVSxe1aBOn0=;
 b=aAoMVC6BzLYBVHCLkvhR2vbOGWX8G/p0ZIam0YQDRGMOP1vAJAZ5bywmdgWr7QI1FxcPrEZWKFB+OPkgcjaGkRfzauooEMsVRx2xJydc2KLhcHgfrNc+x4etwOvH/G7C84j4MMBmnPcnk2QyoequDGek+56nWlAvYdtz4CwlK3WZ3EwdApAMcPPyEYYJ9tfB1edtHJKsbx9dEyuP3BJpHVvCcoIh/gxhFjKSNLm+TCbUUrSxoxgKpbJ0iMJUDokzLXjckyly2HcHcaR1Q/oUs+MJhH1YVIyB1Tn0Vj2I3fsZcPgTW4ASxrOPDTy2ZBw9H61gAITjd00V++SmqzRxLg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fT1+/3FFo8sr+A3+bTatit0MNOKNX3/wCVSxe1aBOn0=;
 b=ZLMwddM4XUB4r7kgQ095yhxKImNqDkRh738a18JCulQ41K4jmPZKWlIB2Uwh55wktklfBTyC6lJR/wFaRXwtWyODJZ3u4oD0fVtM0N7U63gVPOQMJXO/sKY1xbOwnuK0wMKRtHLc6Wai1H5k1Dk5HsrpKb0WXVmkXDpHuQOnuQI=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>
Subject: Re: xen-analysis ECLAIR support
Thread-Topic: xen-analysis ECLAIR support
Thread-Index: AQHZ1tnZvpm8hZMDREGKKcjBarux3K/6qaOAgADmnoCADxVLAA==
Date: Mon, 4 Sep 2023 12:16:36 +0000
Message-ID: <9CD36BEE-F8E4-40DF-96DF-9C280A58D646@arm.com>
References:
 <alpine.DEB.2.22.394.2308241453470.6458@ubuntu-linux-20-04-desktop>
 <da8dce5678814f7e0805522a5111b09e@bugseng.com>
 <alpine.DEB.2.22.394.2308251455070.6458@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2308251455070.6458@ubuntu-linux-20-04-desktop>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|DB8PR08MB5482:EE_|DBAEUR03FT056:EE_|GV2PR08MB8582:EE_
X-MS-Office365-Filtering-Correlation-Id: 727ddefe-771e-4c24-0a8f-08dbad40e785
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 /3APB1ju6Miz4AVaLj6Yd3CJ5HU0fS67WNOTGmeB8fffDw+ubntA38Skqr9o6tegSlu3PA6lDHZ+v6vA5yAUprPQxCvCZdQ0kM/imMIj9BtNHDeYhBl9CWXY0ALU28GDNbEK+5FlVCmIJCc4/nPIANulifVaBfR/BkaADdpKQNGSHlnVaybn8sjWh4AcFxHfGZPw9md2L9auDKGn2MO/J93pO+DNH+7graq0xy/wK2Vb9sB+myaVVtnwORL5nwDwTUsVPrnSB7+0quoHmV1G36jEcEQVN7fzXID+oEwW6Rv70uL0N2gwhdR1CvKHgd2Ev9eoa/1mLNjKmQ0wws3S1CLBwvfT3Q5BzUyapm3Cf+vIiO6cMHFomxHFBuH6r1HMuDLjdcrVqiBP4APFDD6Vs1XXHeqJEbhMZBSLjyAMnw1KgMpwilpLkkwpe/esXXzzfbMJn6N3gsinUUiIRe+ujatxbBlFOiJXorzN/sjmadpOJNsGER3IMyg0FF/Sj6+4Cfphk2vhhaFD4KeVGS/AL0FIowg4GM7nKoq9C+B99wX0A6cVY2a07ZZJkQ1gJCmecKYBniiZDtjisaM3xrRqrfcyakiUjpHO7NXiV4bRur758FlZaKX0t6aPgUXnmEGj8Kka8E83DybeNp0gtkNrOw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(376002)(366004)(396003)(39860400002)(451199024)(186009)(1800799009)(3480700007)(38100700002)(122000001)(38070700005)(33656002)(41300700001)(5660300002)(36756003)(86362001)(66556008)(66476007)(66946007)(66446008)(76116006)(26005)(64756008)(478600001)(2616005)(91956017)(71200400001)(8936002)(8676002)(4326008)(316002)(53546011)(6512007)(6486002)(54906003)(2906002)(6506007)(6916009)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <4301032FC519AE41A1A747272C309767@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB5482
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT056.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	78208f8f-9e37-4c45-6b0e-08dbad40c92a
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9Spd+5nma+fOqrAlla8l6FjNUyV6/JFvIkwmmedPRoCK1jjwXtUWv3YL7FM7HpNRKwUd8qc5MH9l3BU/OQqS/QiXiC3HeBH0VGIwrFmLpOzrf7odOrcL9RNWg8IOXj76CQ3YJTYVMosElaP6jgyANCUhHDFvypiJo5MTZGyyCyLVmzVv/D4tfxpBD2/gThhQblqT8PQodE2EOilMA4L/Ej29dg7SbxgCSfLLJktAxLDmnOaO6mg2Ss34bwbFh7KsP4ObgK/NAdTgDwYXhn9cNEZH1rDRopiDiCnEIPuLngeTuFj5KAymChcrbjbCKnBGN20JtM1yK8HhaOCP1JN3xXshdHJVQVJy5MYiKkBoagPSfl6jTFVNBgN/z3tc9s/flqkeyC1odqaVwSJd7x45aiug3y52ade+QvzMwrxLQFA4EUNuybMxmluL9ZMxJw2y7ApY6mtJPjlACEUtZ/Uafmy4mKFmWvAiECiQfIR1Ep3BQjZfBXzvwwNRI2qPm7acBH9/A5b5XVBtI6mfqkQMpae1BgRB/laCHeglUwHkjxVb+LzxsU/CcCgSsHCA+xr92hFU6m4BpmC/WZW89E9OpPv0dHXSZDMig2zxTZ2Fx86jlzdBSNhenxAgWwJLXjtF6bO8aS3YUbsOzJUZYvTdAfktbSOjMMVZOWQ5xmNElB7VGEhkuKBPkYt1ni+qu/sYt59d9N3Rq7+4x1oCgAnWCwFzQPAJoo42JgPL6F4bxa/wpxeejGYRXByHzMXt52KR
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(346002)(376002)(396003)(1800799009)(82310400011)(451199024)(186009)(46966006)(36840700001)(40470700004)(8676002)(6862004)(5660300002)(316002)(36756003)(2906002)(54906003)(70586007)(70206006)(8936002)(4326008)(41300700001)(40460700003)(6506007)(6486002)(53546011)(36860700001)(26005)(336012)(6512007)(3480700007)(40480700001)(47076005)(81166007)(82740400003)(356005)(478600001)(2616005)(86362001)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 12:17:27.6825
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 727ddefe-771e-4c24-0a8f-08dbad40e785
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT056.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8582

DQoNCj4gT24gMjUgQXVnIDIwMjMsIGF0IDIyOjU2LCBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFi
ZWxsaW5pQGtlcm5lbC5vcmc+IHdyb3RlOg0KPiANCj4gT24gRnJpLCAyNSBBdWcgMjAyMywgTmlj
b2xhIFZldHJpbmkgd3JvdGU6DQo+PiBPbiAyNS8wOC8yMDIzIDAwOjI0LCBTdGVmYW5vIFN0YWJl
bGxpbmkgd3JvdGU6DQo+Pj4gSGkgTHVjYSwNCj4+PiANCj4+PiBXZSBhcmUgbG9va2luZyBpbnRv
IGFkZGluZyBFQ0xBSVIgc3VwcG9ydCBmb3IgeGVuLWFuYWx5c2lzIHNvIHRoYXQgd2UNCj4+PiBj
YW4gdXNlIHRoZSBTQUYtbi1zYWZlIHRhZ3MgYWxzbyB3aXRoIEVDTEFJUi4NCj4+PiANCj4+PiBP
bmUgcXVlc3Rpb24gdGhhdCBjYW1lIHVwIGlzIGFib3V0IG11bHRpLWxpbmUgc3RhdGVtZW50cy4g
Rm9yIGluc3RhbmNlLA0KPj4+IGluIGEgY2FzZSBsaWtlIHRoZSBmb2xsb3dpbmc6DQo+Pj4gDQo+
Pj4gZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vaW5mbGF0ZS5jIGIveGVuL2NvbW1vbi9pbmZsYXRl
LmMNCj4+PiBpbmRleCA4ZmE0Yjk2ZDEyLi44YmRjOTIwOGRhIDEwMDY0NA0KPj4+IC0tLSBhL3hl
bi9jb21tb24vaW5mbGF0ZS5jDQo+Pj4gKysrIGIveGVuL2NvbW1vbi9pbmZsYXRlLmMNCj4+PiBA
QCAtMTIwMSw2ICsxMjAxLDcgQEAgc3RhdGljIGludCBfX2luaXQgZ3VuemlwKHZvaWQpDQo+Pj4g
ICAgIG1hZ2ljWzFdID0gTkVYVEJZVEUoKTsNCj4+PiAgICAgbWV0aG9kICAgPSBORVhUQllURSgp
Ow0KPj4+IA0KPj4+ICsgICAgLyogU0FGLTEtc2FmZSAqLw0KPj4+ICAgICBpZiAobWFnaWNbMF0g
IT0gMDM3IHx8DQo+Pj4gICAgICAgICAoKG1hZ2ljWzFdICE9IDAyMTMpICYmIChtYWdpY1sxXSAh
PSAwMjM2KSkpIHsNCj4+PiAgICAgICAgIGVycm9yKCJiYWQgZ3ppcCBtYWdpYyBudW1iZXJzIik7
DQo+Pj4gDQo+Pj4gDQo+Pj4gV291bGQgU0FGLTEtc2FmZSBjb3ZlciBib3RoIDAzNywgYW5kIGFs
c28gMDIxMyBhbmQgMDIxMz8NCj4+PiBPciB3b3VsZCBpdCBjb3ZlciBvbmx5IDAzNz8NCj4+PiAN
Cj4+PiBXZSBoYXZlbid0IHVzZSBTQUZFLW4tc2FmZSBleHRlbnNpdmVseSB0aHJvdWdoIHRoZSBj
b2RlYmFzZSB5ZXQgYnV0DQo+Pj4gbXkgdW5kZXJzdGFuZGluZyBpcyB0aGF0IFNBRkUtbi1zYWZl
IHdvdWxkIGNvdmVyIHRoZSBlbnRpcmUgc3RhdGVtZW50IG9mDQo+Pj4gdGhlIGZvbGxvd2luZyBs
aW5lLCBldmVuIGlmIGl0IGlzIG11bHRpLWxpbmUuIElzIHRoYXQgYWxzbyB5b3VyDQo+Pj4gdW5k
ZXJzdGFuZGluZz8gRG9lcyBpdCB3b3JrIGxpa2UgdGhhdCB3aXRoIGNwcGNoZWNrPw0KPj4+IA0K
Pj4+IA0KPj4+IEl0IGxvb2tzIGxpa2UgRUNMQUlSIHJlcXVpcmVzIGEgd3JpdHRlbi1kb3duIG51
bWJlciBvZiBsaW5lcyBvZiBjb2RlIHRvDQo+Pj4gZGV2aWF0ZSBpZiBpdCBpcyBtb3JlIHRoYW4g
MSBsaW5lLiBJbiB0aGlzIGV4YW1wbGUgaXQgd291bGQgYmUgMiBsaW5lczoNCj4+PiANCj4+PiAg
ICAgLyogU0FGLTEtc2FmZSAyICovDQo+Pj4gICAgIGlmIChtYWdpY1swXSAhPSAwMzcgfHwNCj4+
PiAgICAgICAgICgobWFnaWNbMV0gIT0gMDIxMykgJiYgKG1hZ2ljWzFdICE9IDAyMzYpKSkgew0K
Pj4+IA0KPj4+IE9uZSBvcHRpb24gdGhhdCBJIHdhcyB0aGlua2luZyBhYm91dCBpcyB3aGV0aGVy
IHdlIGNhbiBhZGQgdGhlIG51bWJlciBvZg0KPj4+IGxpbmVzIGF1dG9tYXRpY2FsbHkgaW4geGVu
LWFuYWx5c2lzIGJhc2VkIG9uIHRoZSBudW1iZXIgb2YgbGluZXMgb2YgdGhlDQo+Pj4gbmV4dCBz
dGF0ZW1lbnQuIFdoYXQgZG8geW91IHRoaW5rPw0KPj4+IA0KPj4+IEl0IHNlZW1zIGZyYWdpbGUg
dG8gYWN0dWFsbHkga2VlcCB0aGUgbnVtYmVyIG9mIGxpbmVzIGluc2lkZSB0aGUgU0FGDQo+Pj4g
Y29tbWVudCBpbiB0aGUgY29kZS4gSSBhbSBhZnJhaWQgaXQgY291bGQgZ2V0IG91dCBvZiBzeW5j
IGR1ZSB0byBjb2RlDQo+Pj4gc3R5bGUgcmVmYWN0b3Jpbmcgb3Igb3RoZXIgbWVjaGFuaWNhbCBj
aGFuZ2VzLg0KPj4+IA0KPj4gDQo+PiBIYXZpbmcgdGhlIG51bWJlciBvZiBsaW5lcyBhdXRvbWF0
aWNhbGx5IGluZmVycmVkIGZyb20gdGhlIGNvZGUgZm9sbG93aW5nIHRoZQ0KPj4gY29tbWVudA0K
Pj4gZG9lcyBub3Qgc2VlbSB0aGF0IHJvYnVzdCBlaXRoZXIsIGdpdmVuIHRoZSBtaW5pbWFsIGlu
Zm9ybWF0aW9uIGluIHRoZSBTQUYNCj4+IGNvbW1lbnRzDQo+PiAoZS5nLiwgd2hhdCBpZiB0aGUg
d2hvbGUgaWYgc3RhdGVtZW50IG5lZWRzIHRvIGJlIGRldmlhdGVkLCByYXRoZXINCj4+IHRoYW4g
dGhlIGNvbnRyb2xsaW5nIGV4cHJlc3Npb24/KS4NCj4+IA0KPj4gQW4gYWx0ZXJuYXRpdmUgcHJv
cG9zYWwgY291bGQgYmUgdGhlIGZvbGxvd2luZzoNCj4+ICAgICAgLyogU0FGLW4tc2FmZSBiZWdp
biAqLw0KPj4gICAgICBpZiAobWFnaWNbMF0gIT0gMDM3IHx8DQo+PiAgICAgICAgICAoKG1hZ2lj
WzFdICE9IDAyMTMpICYmIChtYWdpY1sxXSAhPSAwMjM2KSkpIHsNCj4+ICAgICAgLyogU0FGLW4t
c2FmZSBlbmQgKi8NCj4+IA0KPj4gd2hpY2ggaXMgdHJhbnNsYXRlZCwgZm9yIEVDTEFJUiwgaW50
bzoNCj4+IA0KPj4gICAgLyogLUU+IHNhZmUgPFJ1bGUgSUQ+IDIgPGZyZWUgdGV4dD4gKi8NCj4+
ICAgIGlmIChtYWdpY1swXSAhPSAwMzcgfHwNCj4+ICAgICAgICAgICgobWFnaWNbMV0gIT0gMDIx
MykgJiYgKG1hZ2ljWzFdICE9IDAyMzYpKSkgew0KPj4gDQo+PiB0aGlzIHdpbGwgZGV2aWF0ZSBo
b3dldmVyIG1hbnkgbGluZXMgYXJlIGJldHdlZW4gdGhlIGJlZ2luIGFuZCBlbmQgbWFya2Vycy4N
Cj4gDQo+IEkgdGhpbmsgdGhpcyBjb3VsZCBiZSBhIGdvb2Qgd2F5IHRvIHNvbHZlIHRoZSBwcm9i
bGVtIHdoZW4gbXVsdGktbGluZQ0KPiBkZXZpYXRpb24gc3VwcG9ydCBpcyByZXF1aXJlZC4gSW4g
dGhpcyBjYXNlLCBsaWtlIEphbiBzdWdnZXN0ZWQsIGl0DQo+IGlzIGVhc2llciB0byBwdXQgZXZl
cnl0aGluZyBvbiBhIHNpbmdsZSBsaW5lLCBidXQgaW4gb3RoZXIgY2FzZXMgaXQNCj4gbWlnaHQg
bm90IGJlIHBvc3NpYmxlLg0KDQpZZXMsIGluIHRoYXQgY2FzZSBob3dldmVyIHdlIGFyZSB0aWVk
IHRvIHdoYXQgdGhlIHVuZGVybHlpbmcgdG9vbCBhcmUgc3VwcG9ydGluZywNCmZvciBleGFtcGxl
IGVjbGFpciBpcyBwcmV0dHkgbmljZSBhbmQgc3VwcG9ydCBhbiBpbi1jb2RlIGNvbW1lbnQgd2l0
aCBhZHZhbmNlZA0KU3ludGF4LCBidXQgZm9yIGV4YW1wbGUgY3BwY2hlY2sgYW5kIGFsc28gY292
ZXJpdHkgZG9u4oCZdCwgc28gaW4gdGhlIGVuZCB3ZSB1c2VkDQp0aGUgY29tbW9uIGRlbm9taW5h
dG9yIHdoZXJlIHRoZSBjb21tZW50IHN1cHByZXNzIHRoZSBuZXh0IGxpbmUgKGNvbnRhaW5pbmcg
Y29kZSkuDQoNCg0KDQoNCg==


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 12:44:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 12:44:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595146.928647 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd8wM-0004MN-H5; Mon, 04 Sep 2023 12:44:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595146.928647; Mon, 04 Sep 2023 12:44:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd8wM-0004MG-EK; Mon, 04 Sep 2023 12:44:26 +0000
Received: by outflank-mailman (input) for mailman id 595146;
 Mon, 04 Sep 2023 12:44:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5g5r=EU=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qd8wL-0004MA-FG
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 12:44:25 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0616.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::616])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c5cf836d-4b20-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 14:44:22 +0200 (CEST)
Received: from DU2PR04CA0186.eurprd04.prod.outlook.com (2603:10a6:10:28d::11)
 by AS2PR08MB9619.eurprd08.prod.outlook.com (2603:10a6:20b:608::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 12:44:10 +0000
Received: from DBAEUR03FT021.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:28d:cafe::d1) by DU2PR04CA0186.outlook.office365.com
 (2603:10a6:10:28d::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Mon, 4 Sep 2023 12:44:09 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT021.mail.protection.outlook.com (100.127.142.184) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.23 via Frontend Transport; Mon, 4 Sep 2023 12:44:09 +0000
Received: ("Tessian outbound 5c548696a0e7:v175");
 Mon, 04 Sep 2023 12:44:09 +0000
Received: from bf157b4599c0.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 662CB877-9702-47F9-9A25-E9F9B20A0EF3.1; 
 Mon, 04 Sep 2023 12:43:41 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id bf157b4599c0.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 04 Sep 2023 12:43:41 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by AS2PR08MB8904.eurprd08.prod.outlook.com (2603:10a6:20b:5f8::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 12:43:40 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::4c7d:6a1:e742:3b1a]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::4c7d:6a1:e742:3b1a%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 12:43:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c5cf836d-4b20-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rFklO5b2f6dOhFRf87IcVWpkw9/3z5lUCgxCbIbtKEw=;
 b=CBufgoNq9rjPwZFvcZotJF46wUZ98b3+uzCdOgXA2Sk9gBxBb+PEzaFuI1e6tk69hHuEqfFjdrPzkSZWYDGL5dmidzYXbmVv8t/pDzEvmt1SUsRObu0SPhCkl7XuhsPT5tCxnoAtsUcs2zyJwIMTc+aKsqPjN2cSuPftxB5Db2k=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 5565f4239582139f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hQzoN/YmQBEBwa2GU50uFznCfssKwxp11kxGDPObqsWA1DyB07oLGNB4zVYTu5/EWqIl9byALfA4rb13wEZn5wHdndEMQIWfs1sAHHxiRkyqlLvVpj2PU5soLwnNghsl9J27j82JwNUQk8UjaOs6DtV3XugaN0iGeyoFjFrQKqZYZtY45XS/f+qBJ6zFz4UxNDphZkyEJ0horqV9NAo6VYsmvrYhGTMcjZ2Mk2ZeFkb1Aqi4Fjopg0LT9WGGW/3bySofW75nJ9iIm6iARwccH9hPyLbqBXifo/+Qo2g+4Q3fkCxrXiVI+1o56NQjmyJOlVPfGr/fbejicWqxwjHqcw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rFklO5b2f6dOhFRf87IcVWpkw9/3z5lUCgxCbIbtKEw=;
 b=VWow8GoG7DgBhmVYywVKVgwVTAJEC/jL6d4tosymP2rlJKhgfA2Q+4Atf1MBtCUKE8JYmY/ZZFbfl4ipX/qQ/dCSI8b9bY1RDnpnnT1KeabiKu7PNNueKIfePIJNNZvib9uFET64WMAOgBGr1AB7nAMwskFecg74JFl18Iq8oqNRKXU0P8sV7oVCVrhO3O6rl58I65gXwx1OvzXVi5pUBeZBIXFFx/p5kRmUZewM4Ihwl2D4frskMa7L2VY6Fx+j8fYONEG8SIO+/lMrCnsOML8wDRht3s7ZcUjhRStEYmlFn4skmQTUv8npq4GlknFhqcWl+GdoxLcdaNdEkSVjrw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rFklO5b2f6dOhFRf87IcVWpkw9/3z5lUCgxCbIbtKEw=;
 b=CBufgoNq9rjPwZFvcZotJF46wUZ98b3+uzCdOgXA2Sk9gBxBb+PEzaFuI1e6tk69hHuEqfFjdrPzkSZWYDGL5dmidzYXbmVv8t/pDzEvmt1SUsRObu0SPhCkl7XuhsPT5tCxnoAtsUcs2zyJwIMTc+aKsqPjN2cSuPftxB5Db2k=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Simone Ballarin <simone.ballarin@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Jan
 Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>, Wei Liu
	<wl@xen.org>, "nicola.vetrini@bugseng.com" <nicola.vetrini@bugseng.com>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, "michal.orzel@amd.com"
	<michal.orzel@amd.com>
Subject: Re: [XEN PATCH 05/13] automation/eclair: add deviation for usercopy.c
Thread-Topic: [XEN PATCH 05/13] automation/eclair: add deviation for
 usercopy.c
Thread-Index: AQHZ2b5Rm/+16tf7DEqQZJ2JP8GC+7AASiEAgApdMAA=
Date: Mon, 4 Sep 2023 12:43:39 +0000
Message-ID: <002EA5BA-DD4A-44ED-8DCE-94E67A786DC5@arm.com>
References: <cover.1693228255.git.simone.ballarin@bugseng.com>
 <4039623dc4341758f383ec49228c1e55e5862b0f.1693228255.git.simone.ballarin@bugseng.com>
 <alpine.DEB.2.22.394.2308281512360.6458@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2308281512360.6458@ubuntu-linux-20-04-desktop>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|AS2PR08MB8904:EE_|DBAEUR03FT021:EE_|AS2PR08MB9619:EE_
X-MS-Office365-Filtering-Correlation-Id: c0c1420d-0885-4fb0-dc12-08dbad44a265
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 bnFhgCOePLh1flN/MdpmRCFA5DHd095/T5695oiGbP96ZDzS4bogN8FdwqLNqTkcFw9M/T7NteQ9lVweRONnT5DLSGU0NqdaHU69OSbHxN+oawP0vjkIqj3eXxRSJKmw3n/Xoo/AOk8T9VVAUGtCmfKOWBI9365ZGVK4awMUeXeK7RxHHJ5Z5jzUBJ+nDhow+PaUVGdvlxinEiWB/vpunD+oLATORS7S1dJQyVgHW91RCd/AqUiWq06Uz5P46TzX5vOIS/+NaLTUfcL3BjEeewDvYyFpfWPTIhBYm1rlGNX16EyTkWiowmJNdePWzHdPHDSNyA55aln7yParrEtb4OuzHy2QvXe2Rjo6zr+mIfIwxE+iB2eNLTWfORSO0NzKqnPaQq+myfeWPdh5kPyvfTBeo9HhQ666hmWSfQCm+kjK/ZWHI2WC3keGqlYWcV+fPuLWOxQapfj7SZ7xqCijGj7B+WG2KhhYWfsId1ckSx8GPPWQBTOtVVW0S002xujJf1cGHwDqQ9TRJy3Oo2HUMCh4BMm/BvPAtII/O0xaRR2OUeoj/nAd++iwyE+A0drZA8ZOfHRulYDT4nadD8PVOkPLNbbbNVxmOTJ8D0GRLNBhNPLtzII4yXA8USAPPCiiadDDuZqU97xo7XbFVgEnHQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(396003)(136003)(366004)(346002)(186009)(1800799009)(451199024)(41300700001)(7416002)(71200400001)(38070700005)(122000001)(478600001)(33656002)(86362001)(2616005)(83380400001)(38100700002)(26005)(6512007)(53546011)(6506007)(6486002)(64756008)(76116006)(66446008)(91956017)(36756003)(54906003)(2906002)(316002)(6916009)(66476007)(66556008)(66946007)(8676002)(8936002)(5660300002)(4326008)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <B9F0718B8DB95746A53B1D591BAEEF96@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8904
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT021.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	3d2290d1-e990-4232-6796-08dbad4490af
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hhf8wpkddghFcxuh2nuqkyGjTWQesoVo/jkeKgP56WfEN4u+8wni8PrRI+LCVLUV3Oy5ArLMi3/auCaemKOL/2IeViHOHYgTGpGH8x2ueULAik/WtoBi5ism/RuNDH7TGXoNK3Rbt/AGKfGFbg+m9H1j0lWq+FWRpsvkNUdTlQ+O4mfzYE532rXP2n37ZV7dSJ5IXxlMvWGgH68ix4Ffz1iG64nlW2hZDcmg7GwtT1Hdky2dqgfyM0yU89VRB/0smHPA1wr4tw5o7rFJaKcY/F8GH+Rb2ngpmQUnkd8jQ7HXC6n2JFjkcba/vHC8bzql+pbFNRxvjDyVTeJfCJXalCQRHIyM9+r2oBCWrtm5vz679lLm/4tLoagBL0njm3zyeU5n9NMJWBHIOpBn9TwXm5AqhkYBv4Y7nJLX7M5gv0J7WwfqIAjg7A9tzfpZwEJJMpljjymMYMLxPpraMTniyQnrpgcFGwMGjWXHTi1+ABhiGWWmnK9zCqRwST56SPnYnKmf/PqOPKV8ZTHjVJZaIU+3WI7iSxAf07zfIHm1+Tvu7vEvISQN7YTQrn+iQxQDxLBFpivWJkCwBChgYs4VTjme99Bl4Bg3g1/47bVkiBpvuY29AG8BIBfWPGK9ZNPDUmxQBLqriN/qHENWpwm2GCFFca2qsGi37UPN2JmIgGKbfYf8sKRsIgRZYMn1ruL93qik6WZk+bBB4878lUeD42sw7YBjJ1UrNTZ2D8cp0UOKMme/UA5sBcFJ1HHZQYlh
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(39860400002)(396003)(136003)(346002)(186009)(1800799009)(82310400011)(451199024)(40470700004)(46966006)(36840700001)(40460700003)(41300700001)(356005)(82740400003)(81166007)(478600001)(33656002)(86362001)(2616005)(83380400001)(336012)(26005)(6512007)(47076005)(53546011)(6506007)(6486002)(36860700001)(40480700001)(70206006)(70586007)(36756003)(54906003)(2906002)(316002)(8676002)(8936002)(6862004)(5660300002)(4326008);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 12:44:09.6866
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c0c1420d-0885-4fb0-dc12-08dbad44a265
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT021.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9619

DQoNCj4gT24gMjggQXVnIDIwMjMsIGF0IDIzOjI3LCBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFi
ZWxsaW5pQGtlcm5lbC5vcmc+IHdyb3RlOg0KPiANCj4gK05pY29sYSwgTHVjYQ0KPiANCj4gT24g
TW9uLCAyOCBBdWcgMjAyMywgU2ltb25lIEJhbGxhcmluIHdyb3RlOg0KPj4geGVuL2FyY2gveDg2
L3VzZXJjb3B5LmMgaW5jbHVkZXMgaXRzZWxmLCBzbyBpdCBpcyBub3Qgc3VwcG9zZWQgdG8NCj4+
IGNvbXBseSB3aXRoIERpcmVjdGl2ZSA0LjEwOg0KPj4gIlByZWNhdXRpb25zIHNoYWxsIGJlIHRh
a2VuIGluIG9yZGVyIHRvIHByZXZlbnQgdGhlIGNvbnRlbnRzIG9mIGENCj4+IGhlYWRlciBmaWxl
IGJlaW5nIGluY2x1ZGVkIG1vcmUgdGhhbiBvbmNlIg0KPj4gDQo+PiBUaGlzIHBhdGNoIGFkZHMg
YSBkZXZpYXRpb24gZm9yIHRoZSBmaWxlLg0KPj4gDQo+PiBTaWduZWQtb2ZmLWJ5OiBTaW1vbmUg
QmFsbGFyaW4gPHNpbW9uZS5iYWxsYXJpbkBidWdzZW5nLmNvbT4NCj4+IA0KPj4gLS0tDQo+PiBh
dXRvbWF0aW9uL2VjbGFpcl9hbmFseXNpcy9FQ0xBSVIvZGV2aWF0aW9ucy5lY2wgfCA0ICsrKysN
Cj4+IGRvY3MvbWlzcmEvcnVsZXMucnN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDIg
KysNCj4+IDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspDQo+PiANCj4+IGRpZmYgLS1n
aXQgYS9hdXRvbWF0aW9uL2VjbGFpcl9hbmFseXNpcy9FQ0xBSVIvZGV2aWF0aW9ucy5lY2wgYi9h
dXRvbWF0aW9uL2VjbGFpcl9hbmFseXNpcy9FQ0xBSVIvZGV2aWF0aW9ucy5lY2wNCj4+IGluZGV4
IDI2ODFhNGNmZjUuLmE3ZDRmMjliNDMgMTAwNjQ0DQo+PiAtLS0gYS9hdXRvbWF0aW9uL2VjbGFp
cl9hbmFseXNpcy9FQ0xBSVIvZGV2aWF0aW9ucy5lY2wNCj4+ICsrKyBiL2F1dG9tYXRpb24vZWNs
YWlyX2FuYWx5c2lzL0VDTEFJUi9kZXZpYXRpb25zLmVjbA0KPj4gQEAgLTk2LDYgKzk2LDEwIEBA
IGNvbmZvcm0gdG8gdGhlIGRpcmVjdGl2ZS4iDQo+PiAtY29uZmlnPU1DM1IxLkQ0LjEwLHJlcG9y
dHMrPXtzYWZlLCAiZmlyc3RfYXJlYSh0ZXh0KF4gXFwqIEluIHRoaXMgY2FzZSwgbm8gaW5jbHVz
aW9uIGd1YXJkcyBhcHBseSBhbmQgdGhlIGNhbGxlciBpcyByZXNwb25zaWJsZS4qXFwqLyQsIGJl
Z2luLTEpKSJ9DQo+PiAtZG9jX2VuZA0KPj4gDQo+PiArLWRvY19iZWdpbj0ieGVuL2FyY2gveDg2
L3VzZXJjb3B5LmMgaW5jbHVkZXMgaXRzZWxmOiBpdCBpcyBub3Qgc3VwcG9zZWQgdG8gY29tcGx5
IHdpdGggdGhlIGRpcmVjdGl2ZSINCj4+ICstY29uZmlnPU1DM1IxLkQ0LjEwLHJlcG9ydHMrPXtk
ZWxpYmVyYXRlLCAiYWxsX2FyZWEoYWxsX2xvYyhmaWxlKCJeeGVuL2FyY2gveDg2L3VzZXJjb3B5
XFwuYyQiKSkpIn0NCj4+ICstZG9jX2VuZA0KPj4gKw0KPj4gIw0KPj4gIyBTZXJpZXMgNS4NCj4+
ICMNCj4+IGRpZmYgLS1naXQgYS9kb2NzL21pc3JhL3J1bGVzLnJzdCBiL2RvY3MvbWlzcmEvcnVs
ZXMucnN0DQo+PiBpbmRleCA0YjFhN2IwMmI2Li40NWUxM2QwMzAyIDEwMDY0NA0KPj4gLS0tIGEv
ZG9jcy9taXNyYS9ydWxlcy5yc3QNCj4+ICsrKyBiL2RvY3MvbWlzcmEvcnVsZXMucnN0DQo+PiBA
QCAtNjIsNiArNjIsOCBAQCBtYWludGFpbmVycyBpZiB5b3Ugd2FudCB0byBzdWdnZXN0IGEgY2hh
bmdlLg0KPj4gICAgICAtIEZpbGVzIHRoYXQgYXJlIGludGVuZGVkIHRvIGJlIGluY2x1ZGVkIG1v
cmUgdGhhbiBvbmNlIGRvIG5vdCBuZWVkIHRvDQo+PiAgICAgICAgY29uZm9ybSB0byB0aGUgZGly
ZWN0aXZlLiBGaWxlcyB0aGF0IGV4cGxpY2l0bHkgYXZvaWQgaW5jbHVzaW9uIGd1YXJkcw0KPj4g
ICAgICAgIHVuZGVyIHNwZWNpZmljIGNpcmN1bXN0YW5jZXMgZG8gbm90IG5lZWQgdG8gY29uZm9y
bSB0aGUgZGlyZWN0aXZlLg0KPj4gKyAgICAgICB4ZW4vYXJjaC94ODYvdXNlcmNvcHkuYyBpbmNs
dWRlcyBpdHNlbGY6IGl0IGlzIG5vdCBzdXBwb3NlZCB0byBjb21wbHkNCj4+ICsgICAgICAgd2l0
aCB0aGUgZGlyZWN0aXZlLg0KPiANCj4gDQo+IFdlIG5lZWQgdG8gZmluZCBhIGNvbnNpc3RlbnQg
d2F5IHRvIGRvY3VtZW50IHRoaXMga2luZCBvZiBkZXZpYXRpb25zIGluDQo+IGEgbm9uLUVDTEFJ
UiBzcGVjaWZpYyB3YXksIHdpdGhvdXQgYWRkaW5nIHRoZSBjb21wbGV0ZSBsaXN0IG9mDQo+IGRl
dmlhdGlvbnMgdG8gcnVsZXMucnN0Lg0KPiANCj4gQ2FuIHdlIHVzZSBzYWZlLmpzb24gYW5kIGFk
ZCBhbiBpbi1jb2RlIGNvbW1lbnQgYXQgdGhlIHRvcCBvZg0KPiB1c2VyY29weS5jPyBFLmcuOg0K
PiANCj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni91c2VyY29weS5jIGIveGVuL2FyY2gveDg2
L3VzZXJjb3B5LmMNCj4gaW5kZXggYjhjMmQxY2MwYi4uOGJiNTkxZjQ3MiAxMDA2NDQNCj4gLS0t
IGEveGVuL2FyY2gveDg2L3VzZXJjb3B5LmMNCj4gKysrIGIveGVuL2FyY2gveDg2L3VzZXJjb3B5
LmMNCj4gQEAgLTEsMyArMSw0IEBADQo+ICsvKiBTQUYtMS1zYWZlICovDQo+IC8qIA0KPiAgKiBV
c2VyIGFkZHJlc3Mgc3BhY2UgYWNjZXNzIGZ1bmN0aW9ucy4NCj4gICoNCj4gDQo+IE90aGVyd2lz
ZSwgbWF5YmUgd2Ugc2hvdWxkIGV4dGVuZCBzYWZlLmpzb24gdG8gYWxzbyBoYXZlIGFuIGV4dHJh
IGZpZWxkDQo+IHdpdGggYSBsaXN0IG9mIHBhdGhzLiBGb3IgaW5zdGFuY2Ugc2VlICJmaWxlcyIg
YmVsb3c6DQo+IA0KPiB7DQo+ICAgICJ2ZXJzaW9uIjogIjEuMCIsDQo+ICAgICJjb250ZW50Ijog
Ww0KPiAgICAgICAgew0KPiAgICAgICAgICAgICJpZCI6ICJTQUYtMC1zYWZlIiwNCj4gICAgICAg
ICAgICAiYW5hbHlzZXIiOiB7DQo+ICAgICAgICAgICAgICAgICJlY2xhaXIiOiAiTUMzUjEuUjgu
NiIsDQo+ICAgICAgICAgICAgICAgICJjb3Zlcml0eSI6ICJtaXNyYV9jXzIwMTJfcnVsZV84XzZf
dmlvbGF0aW9uIg0KPiAgICAgICAgICAgIH0sDQo+ICAgICAgICAgICAgIm5hbWUiOiAiUnVsZSA4
LjY6IGxpbmtlciBzY3JpcHQgZGVmaW5lZCBzeW1ib2xzIiwNCj4gICAgICAgICAgICAidGV4dCI6
ICJJdCBpcyBzYWZlIHRvIGRlY2xhcmUgdGhpcyBzeW1ib2wgYmVjYXVzZSBpdCBpcyBkZWZpbmVk
IGluIHRoZSBsaW5rZXIgc2NyaXB0LiINCj4gICAgICAgIH0sDQo+ICAgICAgICB7DQo+ICAgICAg
ICAgICAgImlkIjogIlNBRi0xLXNhZmUiLA0KPiAgICAgICAgICAgICJhbmFseXNlciI6IHsNCj4g
ICAgICAgICAgICAgICAgImVjbGFpciI6ICJNQzNSMS5ENC4xMCINCj4gICAgICAgICAgICB9LA0K
PiAgICAgICAgICAgICJuYW1lIjogIkRpciA0LjEwOiBmaWxlcyB0aGF0IGluY2x1ZGUgdGhlbXNl
bHZlcyIsDQo+ICAgICAgICAgICAgInRleHQiOiAiRmlsZXMgcHVycG9zZWx5IHdyaXR0ZW4gdG8g
aW5jbHVkZSB0aGVtc2VsdmVzIGFyZSBub3Qgc3VwcG9zZWQgdG8gY29tcGx5IHdpdGggRDQuMTAu
IiwNCj4gICAgICAgICAgICAiZmlsZXMiOiBbInhlbi9hcmNoL3g4Ni91c2VyY29weS5jIl0NCg0K
V2h5IGNvdWxkbuKAmXQgd2UgZG8gaXQgd2l0aG91dCB0aGUg4oCcZmlsZXPigJ0gZmllbGQ/IFRo
ZSBwcmVzZW5jZSBvZiB0aGUgdGFnIGluIHRoZSBmaWxlIGFuZCB0aGUganVzdGlmaWNhdGlvbiAo
SSB0aGluaykNCmFyZSBlbm91Z2guIA0KDQo+ICAgICAgICB9LA0KPiAgICAgICAgew0KPiAgICAg
ICAgICAgICJpZCI6ICJTQUYtMi1zYWZlIiwNCj4gICAgICAgICAgICAiYW5hbHlzZXIiOiB7fSwN
Cj4gICAgICAgICAgICAibmFtZSI6ICJTZW50aW5lbCIsDQo+ICAgICAgICAgICAgInRleHQiOiAi
TmV4dCBJRCB0byBiZSB1c2VkIg0KPiAgICAgICAgfQ0KPiAgICBdDQo+IH0NCg0K


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 12:49:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 12:49:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595154.928658 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd90l-000534-8d; Mon, 04 Sep 2023 12:48:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595154.928658; Mon, 04 Sep 2023 12:48:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd90l-00052x-3h; Mon, 04 Sep 2023 12:48:59 +0000
Received: by outflank-mailman (input) for mailman id 595154;
 Mon, 04 Sep 2023 12:48:57 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VIGl=EU=cloud.com=kelly.choi@srs-se1.protection.inumbo.net>)
 id 1qd90j-00052g-K2
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 12:48:57 +0000
Received: from mail-ed1-x531.google.com (mail-ed1-x531.google.com
 [2a00:1450:4864:20::531])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 687e5b40-4b21-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 14:48:55 +0200 (CEST)
Received: by mail-ed1-x531.google.com with SMTP id
 4fb4d7f45d1cf-52a1ce52ef4so1965300a12.2
 for <xen-devel@lists.xenproject.org>; Mon, 04 Sep 2023 05:48:55 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 687e5b40-4b21-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1693831735; x=1694436535; darn=lists.xenproject.org;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=P6SuIUeMJ8u02mehYLNuaFrRUsUQroHyAonWStAvrmk=;
        b=ICcLqZdDZXEdDG3eSmQ/3RwrE0tTvt4tBbjQ3KIcBehoGfb2quNAKIHYRYzTIENLRV
         BZJ4FScPoWGDHGFVPpFBifgOgwUZX3UbAjrRjQoNPMJ4lCLxDaa9jegXTD9OdhpJQ9Tk
         AV2OP6Izr5Ezlnc0dYtN+IymAxWh/njBq/Kas=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693831735; x=1694436535;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=P6SuIUeMJ8u02mehYLNuaFrRUsUQroHyAonWStAvrmk=;
        b=liRvpbOuw5vDIHr3V3vS6kM7lzvQtVVGVPA0qQf726JoVC6QFHVA92fibzqJNctytx
         G0Wjz6LG5tYisFGwEF4iKjsja1QJf6Ma1gKGmOjm4DMAxRBrF2WAi5TwBQv8/gv0sfH/
         RyIOczvvvHzIqINcldj/26Mfygv00YkHoNqfcEweTxSQMTEDOMcXCSP0e2gtdPlXnF43
         RTJz0EBY0+ejAJpy1/wPWhRQDZ8Gg9zl9sdYrboSFslKEl3uIxHTpeZ2lKIt18jXtCbf
         vugqmNa2L/mf3GaK1F+ZtuKNaFX6z8GQaZ/KFxIiS6FBt/OeQoaDEPPMV+wHyfdFTX9g
         b10w==
X-Gm-Message-State: AOJu0YwwLMbtr1QXqxICJGqhL4V/ooRsqe7y1mh8UqbaRQdxjCL12bN1
	69zkogbjc1zGbT/LBJ/fe7sTNA1qPOY4T0xwH1L1wg==
X-Google-Smtp-Source: AGHT+IGOHrE9TCNaLsNNnyUR4UqMIUoxRy4E0ZklR9ivvATHeaKUHt2WrQjcxEFKNU6AiMaatfk3e+92UF+d+q1xwVU=
X-Received: by 2002:a17:906:197:b0:99d:dce8:41d6 with SMTP id
 23-20020a170906019700b0099ddce841d6mr6417985ejb.71.1693831734906; Mon, 04 Sep
 2023 05:48:54 -0700 (PDT)
MIME-Version: 1.0
From: Kelly Choi <kelly.choi@cloud.com>
Date: Mon, 4 Sep 2023 13:48:19 +0100
Message-ID: <CAO-mL=zvA8WYjPoKM2t961dEC3unb_eHW=GNLhkX3Gra3Hoi4A@mail.gmail.com>
Subject: Documentation survey
To: xen-announce@lists.xenproject.org, xen-users@lists.xenproject.org, 
	xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="000000000000de7127060487eeaf"

--000000000000de7127060487eeaf
Content-Type: text/plain; charset="UTF-8"

Hey everyone,

Hope you've all had a good weekend!

I know that documentation is an important part of The Xen Project, and I
have received feedback from a number of users on this topic. Currently,
there are some barriers to entry and improvements that can be made.

In order to understand further, please could you answer the following
survey (~5-10 mins) on your thoughts around the existing documentation.
This feedback will help achieve a plan of action.

*All responses will be anonymous. *

*https://cryptpad.fr/form/#/2/form/view/aIaNqMdkkV85YkQSzM0+ddwMY36XSTf+Vl3k2APoP-U/
*
<https://cryptpad.fr/form/#/2/form/view/aIaNqMdkkV85YkQSzM0+ddwMY36XSTf+Vl3k2APoP-U/>

Many thanks,
Kelly Choi

Open Source Community Manager, XenServer
Cloud Software Group

--000000000000de7127060487eeaf
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hey everyone,=C2=A0<div><br></div><div>Hope you&#39;ve all=
 had a good weekend!</div><div><br></div><div>I know that documentation=C2=
=A0is an important part of The Xen Project, and I have received feedback fr=
om a number of users on this topic. Currently, there are some barriers to e=
ntry and improvements that can be made.=C2=A0</div><div><br></div><div>In o=
rder to understand further, please could you answer the following survey (~=
5-10 mins) on your thoughts around the existing documentation. This feedbac=
k will help achieve a plan of action.</div><div><br></div><div><b>All respo=
nses will be anonymous.=C2=A0</b></div><div><b><br></b></div><div><a href=
=3D"https://cryptpad.fr/form/#/2/form/view/aIaNqMdkkV85YkQSzM0+ddwMY36XSTf+=
Vl3k2APoP-U/" target=3D"_blank"><b>https://cryptpad.fr/form/#/2/form/view/a=
IaNqMdkkV85YkQSzM0+ddwMY36XSTf+Vl3k2APoP-U/=C2=A0</b><br></a></div><div><br=
 clear=3D"all"><div><div dir=3D"ltr" class=3D"gmail_signature" data-smartma=
il=3D"gmail_signature"><div dir=3D"ltr"><div>Many thanks,</div><div>Kelly C=
hoi</div><div><br></div><div><div style=3D"color:rgb(136,136,136)">Open Sou=
rce Community Manager, XenServer</div><div style=3D"color:rgb(136,136,136)"=
>Cloud Software Group</div></div></div></div></div></div></div>

--000000000000de7127060487eeaf--


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 13:28:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 13:28:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595214.928697 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd9ch-0004t7-T9; Mon, 04 Sep 2023 13:28:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595214.928697; Mon, 04 Sep 2023 13:28:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd9ch-0004t0-Pn; Mon, 04 Sep 2023 13:28:11 +0000
Received: by outflank-mailman (input) for mailman id 595214;
 Mon, 04 Sep 2023 13:28:10 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vltW=EU=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qd9cf-0004su-Qn
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 13:28:09 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20602.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e2649263-4b26-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 15:28:07 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7744.eurprd04.prod.outlook.com (2603:10a6:102:c9::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 13:28:05 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 13:28:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e2649263-4b26-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=M5UUdSQ/ksW/sesBg0bfUaLiEpasugniYBg/GDEfQQSvelPIYrKi97bzg/knwaVKNMHRiI9JSRmxg5LsBvtmlvyheO10rgmincI8G6Z5iwF+4bojqXufko3O/WqvWNRb0izgLOnWhEnJ4pCQaXrbqN9H8L7I7bLM9xQHltGX9UZiJavG899wVGkvG+nC6qd/xCFaBiddm4odcClhp3OVKUB307oymC/vsxi6GOCFwPwazqD+RoaqSGwirVfy38YBoR7dC2KWtucvoZRZhWxcA0ggpLk8yRu4hIo9W78a059kYKwJECIEnd2/cRAK5QXPo1anbWcu5Hi8zwmpfQOj9Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zLZSnbVwolq8C8JlcoJNQrrEjOAt23yMtT6/TJutg4E=;
 b=ZKt/3pwNhun/2CEpyiOhp9emWCJD4+drzJVbuvuzrEEeXWxLZW0esw+asQrJ+p/bD9Gmw0rqX837pKU5dLDe045rqtdvZOXI7sWSyjCZ6QUcKWMeXo2OsMWUISFTG15NDj/QWhZ9LsU0yJUVx4l1vfgoF8ygAyvMupp9CGcENTXFCNkFUFbpyhKXgkVxl+3Rs9hWL717PI5JRR3yFytmY5oHLicz3iolxI45GMGPqz2QBs09D4jmGP3eGmOjrVVYvd85uV1iuPhHjFKnNZTCGVGRffMFN/RMFib0QPxYIsglruf++s4WwXGYCuqGmy9Fb2pyQijDWheRNUlE0vFs9Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zLZSnbVwolq8C8JlcoJNQrrEjOAt23yMtT6/TJutg4E=;
 b=v3xJvZq5rb3rzRJCmuFZ72JKqAV7gONwnCQd5OfnhMKU6HoJktLcKSUWVjXgsQEXyGA4H3DrlGo4MaBQVLJU6XAsWdRxLB3P/tH2zMHCAowppFmM43qhEzxds3W/dd3s2q9raFscc2ZNAmR90x4vjvBJZm4sPZlYOK0Pq3HIEnhxgWpmTjwXZOmbKkHGMZuO32epHI+ctFkKytAumyqamjqJHhDmu5QC8DzoOU935OCLFh+atJA8IhMSWAft88Sq3W232AB2qCIP5jmnZAeMjK5ME1KQ2NknBWI9gpde7CrmyNTukur7iIMmAeuS+VcaoU9aC4V1JRKIy9dM2pLPAg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ec00892f-d9e8-1095-fb27-c344caa6aa28@suse.com>
Date: Mon, 4 Sep 2023 15:28:02 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH 2/2] xen: Change parameter of generic_fls() to unsigned
 int
Content-Language: en-US
To: Michal Orzel <michal.orzel@amd.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230904091406.942-1-michal.orzel@amd.com>
 <20230904091406.942-3-michal.orzel@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230904091406.942-3-michal.orzel@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0068.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4b::15) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB7744:EE_
X-MS-Office365-Filtering-Correlation-Id: 6efc8e7f-d07b-47e8-5974-08dbad4ac4f1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Le0tehx0EOZfQAzf8QWjL5f9lqDWnPGybYfegC/kmVadVVrYUv4nqAUXNMtzhnk5V5w+K9ohqWDJcqymZ17u7ygeUyyVdS4PPvQtHBjySGhw8gR7Y8xTeRC7jrVggcuaFyftV6uRSoB3VPXazIKGjnIEAbaz8I/GeAJm9NwOL8+NYgo3S9hZ824WgpqGSs8v9qUmvQyc0J8DXxUAD23/AC6A8h4ld/rGDMC4p8X0tsiWBIwFbj6LmuiUBI2tYnyfHzJ298Mi2VtrvZeIiTQPntn66WRZgWZnGUQVC2wm5ibouLUUhoVbJMAcsx6bEn2Rszr7QFXX3TLPZ9XGkDx5seHhrSG8OAcz/DhcNcJcRYLQ8q0uAD91WCpp84WtkMQNAlDxHrPmg2ZJZ5XDNDfTUrkczhfQmTibvdvG4AnhPvT3fjnOr1RDzMuec0MKxtMBsdmI17jyETxgkcoo2dMvYB+uuDGo/C6lxiZjiPRh0qlaIwNK+meX2oZ98ILEEQ9N2KcX7BEXM9WTWO9rZem3bsSA2TyVUdIgaSArn6fpsEYaamSk0kQzBd1CCyXc/OpMQeX9Yi0VPTwbtaKpYkWwgw6ItYTMT2wSAeUvUgbezjLPKvsKDnNdMLov44tmyExrpm1AzseqlFJ/A7BySJVHP/0wI8ac58dD0rNbi7ToATI=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(396003)(376002)(346002)(136003)(1800799009)(186009)(451199024)(6486002)(53546011)(6506007)(41300700001)(6512007)(54906003)(4744005)(2906002)(36756003)(316002)(31696002)(38100700002)(86362001)(6916009)(66476007)(478600001)(66556008)(66946007)(6666004)(8676002)(4326008)(8936002)(26005)(31686004)(5660300002)(2616005)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OUdIRlZVdUFCdHFoTXlLb2FmOW4ycldjOXNzMkFoKzFEdUo4L0IvYzUzdFh4?=
 =?utf-8?B?YUxNcXRNb3RPRnJRNzEvUGxIZ0tqNWF4V2JYRjlGWHNEV0RuV0wvbllIbVZo?=
 =?utf-8?B?V2ptWitvNG9CYXgxK1FvQXpoeDNPNnVHMG9tVitDTXZ3T1BBR0ZUV2lyUFBp?=
 =?utf-8?B?S0NTYVVEdlcwWXBNU2RISFBDdm9kUXFQbGtyUmtLd2xzSmNTZC9QZWx6S3cx?=
 =?utf-8?B?WTdwK25Ja2Fpc2hHT0RUN2hkbGNSNHVOb2dqeWFxdjcvVWN1NWhZT1Ftdnlx?=
 =?utf-8?B?MnYrMWlwNXRBVFR2eExBT1hGck9iMC9acXhoVUFXckhDbTF6dXJYM3NveHB2?=
 =?utf-8?B?V2dZYTVDMldTMHFYTDNjMG5xQ2N6YkxJcnUyNGtvZTJCQkNJcTU2VWRHUUNN?=
 =?utf-8?B?Z1JHZldUSEF6YkRlWFVCSXVoNzU0YS9KdHlFbHZMMm55NUVKUnRvQlZPdXgx?=
 =?utf-8?B?aVBzd3ZOZit4QkNkeklPM25DcVI5aU5abko4RXJPVFNaa1BvRHRsNWhKaGEy?=
 =?utf-8?B?cUlkSXYvZFhieE91UERqVzdncDIxWHpLUkFURThXM0Nac0ZFeHdxUk80YU1q?=
 =?utf-8?B?Z2k3ejg3OXlaZHd6K0tCZlExTERITUpCUDZZK2szSURsRldPRldpTEk2UEMy?=
 =?utf-8?B?djloQURCMlFmc1E3ZzdxaEl2bExxWWo2ZUZvZG9hUEVRUTUwTnc1b1lGZm9v?=
 =?utf-8?B?ek9vT1lmQ1EyNll6azg4eUwzK2xYeUFGSkdHMFpnSUFBc1dlZHJObWtGWnF2?=
 =?utf-8?B?RDdpaFhxVVRHYUxaZldla0pZQjNPNUZ4QkFORjZZVnZqbm1RVTF3Rlc4dDQ4?=
 =?utf-8?B?Z1R1SE03OVU0cEhiMm41WHdLcGdqcWhkNkd1N3FWZDZEalJ3VTRYY3NveXFt?=
 =?utf-8?B?elJrT2NkQml5VXQvWVFBWGRjSmtkUzZ2S2hxd2JiazlKVWpSRFA0K0gxOW9W?=
 =?utf-8?B?ak9nN3g2OXk0RVdiT3EvYXZPNEFxTzdBQThjeEEyRFo4UkJIS3pTQklNK1ZX?=
 =?utf-8?B?RnIvc3B1Mmd1NThDT1NCWGlkeUJkdlVDbjg4VW9lMVN3ZVA2RTJhSkJMdXhV?=
 =?utf-8?B?eGhNQXBRL28xdnpFK2hTMldlNk1zRXlLL21MUnI3cnhQUEx0cHBLQTVrTnVm?=
 =?utf-8?B?eEdTdDJMMnVzVjNPZnRjWVcxaWJqT2lkNnJ5d29vUEtVenpQSlVxN3AyeldB?=
 =?utf-8?B?YXRUbU1mSFdJelRiNExSODhXVVgxdjJwWDl2KzcwNlliUTBBMitZcGZEeE5j?=
 =?utf-8?B?RTdndWtoMWZEUkNOUFRVMWRuQTB2Mldib0lKTTE4YUNnVGdTM1RlQWUwaEFU?=
 =?utf-8?B?aUhZSmRPRFU1azVVWTVxQjhEOGRuUEx5Z0pqRVdzWjNOWE42aEk0RUVJYnVB?=
 =?utf-8?B?bFZIekFDd29mNTcwam1YelRiWnpXaVU0V3hIMy83WmRMVWVTSHhsWHZvNHZT?=
 =?utf-8?B?bjM2UGd0N3ZpU1NXNjhWRGM5ZDJkdnNKVkdFY0dLaVN2UVIwaVFMT1VXUHdV?=
 =?utf-8?B?TnlQaUdLaUk1TU1lUENVaHVKcHJVa3dqKzNvTTJjZDRweHBDS0ZMM1d3OEhl?=
 =?utf-8?B?VVRjdU1ob2w3MFo4aENQVnFTR05qV0VUZ3lSTkZGMlNxeGNwTzFYR0kzUCti?=
 =?utf-8?B?dnJ2SEJGNWVOQlo3ckd3TEg3eS9xTHdHOEs2M09WR1pZQk1RTWFRa29QT0hX?=
 =?utf-8?B?bW5RVHM2N0VkWXpkaEVQYW5DNTVCL3ZlZ1lrdnlQKzFOdTJ3dXdZaFQvT1JD?=
 =?utf-8?B?N1pmUmF1TjhOM1M3ZGZQZWhpWXZtN0VCU29XV2JTblZZNkticUhSTVp0UDBo?=
 =?utf-8?B?SS81akZvazdjQldpaE1KOTNLSldZNUR1c3ZKTDJKOVNOUDZSaXRpek5KdVBj?=
 =?utf-8?B?V1BvemZndllLS0o2d3RrVlhPckRjeWdkejV3M2txUDVoQURuM0IyTVdCZThh?=
 =?utf-8?B?VlBLTmUyU29UNUFxbFJtbzFUQm9lM2VQUVY4UFpzaHFjWU9ZVm9lR093Mmwr?=
 =?utf-8?B?SDQ2M1FIa2FZbTNWT3Q3YytSUnlaSFFGUjBqU0hmYzYzcGtmNVBNd3o4MEdr?=
 =?utf-8?B?azBPajF3RFc2Snp6U296Y1BadDR3alF4RzhyZ3pCOGZvd2lCd2tjNkdKcHlj?=
 =?utf-8?Q?cpC5P4hLyDmYGE8h1rJHHpSi4?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6efc8e7f-d07b-47e8-5974-08dbad4ac4f1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 13:28:05.5673
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 24r4NBayT8q9nmHnOjFS2oSgGokFM7fOJ2973uToUY2VtVy4nOYs4F5migmJY5TDT0K11ckVYqh1NcFiF5gYFQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7744

On 04.09.2023 11:14, Michal Orzel wrote:
> --- a/xen/include/xen/bitops.h
> +++ b/xen/include/xen/bitops.h
> @@ -51,7 +51,7 @@ static inline int generic_ffs(int x)
>   * fls: find last bit set.
>   */
>  
> -static __inline__ int generic_fls(int x)
> +static __inline__ int generic_fls(unsigned int x)
>  {
>      int r = 32;
>  

Even if perhaps not affected by UBSAN, generic_ffs() then wants taking care
of as well, imo. If additionally you switch __inline__ to inline, things
will become nicely symmetric with generic_f{f,l}sl().

Another aspect that may be nice to take care of at this occasion is their
return values: None of them can return negative values, so return type
would better be unsigned int.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 13:40:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 13:40:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595220.928707 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd9oI-0007if-Uy; Mon, 04 Sep 2023 13:40:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595220.928707; Mon, 04 Sep 2023 13:40:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd9oI-0007iY-R8; Mon, 04 Sep 2023 13:40:10 +0000
Received: by outflank-mailman (input) for mailman id 595220;
 Mon, 04 Sep 2023 13:40:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pUi+=EU=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qd9oH-0007iS-TL
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 13:40:10 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0607.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::607])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9020ef04-4b28-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 15:40:08 +0200 (CEST)
Received: from FR3P281CA0101.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::10)
 by GV2PR08MB8390.eurprd08.prod.outlook.com (2603:10a6:150:bc::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6699.34; Mon, 4 Sep
 2023 13:39:49 +0000
Received: from VI1EUR03FT029.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:d10:a1:cafe::65) by FR3P281CA0101.outlook.office365.com
 (2603:10a6:d10:a1::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.22 via Frontend
 Transport; Mon, 4 Sep 2023 13:39:49 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 VI1EUR03FT029.mail.protection.outlook.com (100.127.145.13) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.25 via Frontend Transport; Mon, 4 Sep 2023 13:39:48 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Mon, 04 Sep 2023 13:39:48 +0000
Received: from c064c3e157dc.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B87F3D9A-FE3B-49A3-94E3-1A2D874570F6.1; 
 Mon, 04 Sep 2023 13:39:41 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c064c3e157dc.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 04 Sep 2023 13:39:41 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AM7PR08MB5462.eurprd08.prod.outlook.com (2603:10a6:20b:10b::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.28; Mon, 4 Sep
 2023 13:39:40 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 13:39:39 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9020ef04-4b28-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dh4G701vKNPM5YJc/HMCS0mu9oIEKMaQDLAyDa8JDUE=;
 b=8lkqqBOqB+JGQhAHV4Fpd6TPyC3n7nZQv1wIlFUNI44jPaAK9gkCXjxWoK/uWJgEaMCRzoXfyfyEn2tL3tSTSzTNnjLrs2Hwk7l0MjoMvrcAkqsXOR33SGDaGFzm+fXmspCm1i1I8BvurjZVacuxCux3qR0qTPB/q904D0WcH3U=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: dd55241b72d1f1af
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VsNItzIzZuWTfepQH2oQJqYYjExTZnz366bS1MxJOq4tHCl3OeOXT/S8Cbzhf0A3Ii3TpxbxJBKwR6LzeMID1YAvQvbKd+8NsaMq9y0+trbZLutDARc2WoglnJ46pOzEeDQ7ZZihHf2RCFK/rDljYFdsyCiYf7lqPur6Ddcw/slfx+l2z7CiyhxnR/PR1bTXBQQypbpMKB5Ghi6sK9w1qGGd/HglbPN7lEvfHSzuhIM1V8bI3/JUVbnecG+kJRSuqAOtfjxZwGz3JTtfshFkWSR3cNKHluYYKgy9asK5rkEIxRyMEzUSIBBC5hbbNRVaivyp330UQnxdJmeS3JUnIw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dh4G701vKNPM5YJc/HMCS0mu9oIEKMaQDLAyDa8JDUE=;
 b=DVMKsae7Ujgm1+S7oPOEkL21CbAc0evI6fKJrtEycFMt7ZQ3ZtnOHBj30QgRq/Xffei8nIG8Mv9dGmGuZzufCQgvqqBextWwVmQguVVCvtufSb/HjfU8ULowj3pszCaEHXdLhbscsjQ1YwTGLs7PIXfXutGkJqgn2CzyW3Vcp6WoMUuJqDKbCfdEqU0siqoM3S7PKHKpCBRonVyuDfLDY4X3XASaYytIXNHAXIDZPQGK5csZAyIreydeFFD0x3g1NPoKve9q8Vr3oFxaEDy3KrFRMvD3NL+9K+HGKlMtlAcBPz4RHKnIbf2ER8NVM34u/lrPfjh+Stz2VTJhgMKI9A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dh4G701vKNPM5YJc/HMCS0mu9oIEKMaQDLAyDa8JDUE=;
 b=8lkqqBOqB+JGQhAHV4Fpd6TPyC3n7nZQv1wIlFUNI44jPaAK9gkCXjxWoK/uWJgEaMCRzoXfyfyEn2tL3tSTSzTNnjLrs2Hwk7l0MjoMvrcAkqsXOR33SGDaGFzm+fXmspCm1i1I8BvurjZVacuxCux3qR0qTPB/q904D0WcH3U=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Shawn Anastasio
	<sanastasio@raptorengineering.com>, Bob Eshleman <bobbyeshleman@gmail.com>,
	Alistair Francis <alistair.francis@wdc.com>, Connor Davis
	<connojdavis@gmail.com>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
Thread-Topic: [PATCH v4 1/2] xen: asm-generic support
Thread-Index: AQHZ3O2/QR3JeW3CfU20DuxQPAN2rLAKsJgA
Date: Mon, 4 Sep 2023 13:39:39 +0000
Message-ID: <3DCD5649-C172-4400-AA75-A28F5C0A106D@arm.com>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
In-Reply-To:
 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|AM7PR08MB5462:EE_|VI1EUR03FT029:EE_|GV2PR08MB8390:EE_
X-MS-Office365-Filtering-Correlation-Id: 54d8f41c-ea23-4b72-af95-08dbad4c688c
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 NeQntxKGBM1txKSAMbA8ceU7bQDtMQCOsPONxRkLJu5caIINzGB/6libtUBOuEZoK/zEDWUiopXhIIz4coXHkpB6Vr4DICUV7MEkxA1Myb9Hws3JaqlPzbOkd1efumf2GYv2Qo5M3Bjq/kyeqJACUK1jIaHPbuHC2S2zMqa9I5pci+whmwPz1AA47OT8H98B/plLtwzNiKnUUe15WCf72/4CQTWLXJYhl/5adUpJsbpNHrsQoAqeMcepiGizw4vmn41H7igIddD1LKCCXKtB5J20x56eB1nUpybx6TRuv+Qwry0oWG+lFjOKU2iDhrf1yIeYEfm2RwsDsZ88enNeR4KiW/ZSiHMRaMrmN4xHaymcauhBufTlH//lpSAuKhGqgDpwdJJrr57F2RPQezbs3nwGow1fVbuMuPQ4cKEB19IkNJfNXv58zFpTyt+sJAN5b7ZCrCOILVSmpFEae/4cRX1ZvCMGjKcR27XuVVc+mYWx97f0P+Awr3B6jzENwT14yBjlU+zD5MC4uqHzbZKudhW57Y2ljE5S0JvaW6PSJsZr/UpAb8UDXmhpjxVGAAo0FXo2cTmMsMvIZUck5ieNiYM+mkDYwSItrEwTSoRF8fKYBJy0yEtVG2uRELCIMJWmzix7cDChEAKUuBatjngCRFwHYcZ3MhjTQBSgFM5noyE=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(346002)(366004)(39850400004)(136003)(451199024)(1800799009)(186009)(38100700002)(122000001)(38070700005)(7416002)(41300700001)(33656002)(5660300002)(36756003)(86362001)(83380400001)(66556008)(76116006)(66446008)(64756008)(66946007)(71200400001)(26005)(66476007)(478600001)(2616005)(91956017)(8676002)(4326008)(8936002)(6916009)(316002)(6512007)(54906003)(6506007)(6486002)(2906002)(53546011)(41533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <5339EE7A4EBF254999820F90AD0BB9A4@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR08MB5462
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 VI1EUR03FT029.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6c743d45-bd4a-4a76-f305-08dbad4c6358
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1XTh9VmtV01c4Vu4hSDCZZS3UuS5Tw6/O+895ZcJkhnxpK66Qp0tn7IOf8QABxFJ5rNiCPIlnM/fPPKfSMSPZhtCwYowVKh21PBBREDSLdgRly/alpMIttgJwZVxKl14bZVmnD7tBoKzqOmcN5x8oUccxVf/Icnp+pbfiH4EwelZx7BRRexOdqWuogmNusqmmyKPC5b00Uh3H4fPOXYSDey+IRib+XXCnpBf3VJq7xn9d/eCZeNfbXTEz3moONoI5EyEnovwb2NEFGSoTHA04w7QlHfMWFyYrWPmquCQaPGvFYxnAY7UWtFgXP0ueOAZq/QoPHZ6+ORfRAL8nMp6jGgzONnCo0+DjpqiBIajQd1pXB7Wr2SYNAWxzv4QzG2U7eQ8ea9BnFDxt8apRCctIIFny68rOTH6tRVKLWwEFwLfxOVIg4KpYIY+o5e5NncgFQQhoUpBcAaoVwliLm8KYGLwuFRMu7xPcsrP4VqVWuPIb06qDbkjK49Rsue0P7maOWrNYX7Z96Z8vr5JzAPfoNQOOHJiUQKeLoBW64U7ry6hneMLLVTD2SAO2eLL5+nWU8Zg+H9zVTx566GBdqiU163WPPaO7uE/62FeaS95cS5e20dM59CH1R5isY1pSh6Lx0xTC++Ln6mcq1KuIeIzrhGismfmRr3/gtm6iEI5K8Ueo3FCP3z/AOjtgnqodDINsbCJ8ZGxbc78AEpSmV6JTk+d2+yft8S7FRsA//S5mTaU4MY5PMfPCbaG9MmaBhjutQvJ0y9MXGdfeJAcd3LB0w==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(376002)(396003)(346002)(39860400002)(186009)(1800799009)(82310400011)(451199024)(46966006)(40470700004)(36840700001)(81166007)(356005)(82740400003)(8936002)(70206006)(478600001)(53546011)(6506007)(54906003)(70586007)(6486002)(316002)(6512007)(26005)(41300700001)(86362001)(40460700003)(8676002)(5660300002)(2616005)(2906002)(107886003)(36756003)(83380400001)(36860700001)(40480700001)(33656002)(6862004)(47076005)(336012)(4326008)(41533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 13:39:48.4196
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 54d8f41c-ea23-4b72-af95-08dbad4c688c
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	VI1EUR03FT029.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8390

Hi Oleksii,

> On 1 Sep 2023, at 18:02, Oleksii Kurochko <oleksii.kurochko@gmail.com> wr=
ote:
>=20
> Some headers are shared between individual architectures or are empty.
> To avoid duplication of these headers, asm-generic is introduced.
>=20
> With the following patch, an architecture uses generic headers
> mentioned in the file arch/$(ARCH)/include/asm/Kbuild.

Kbuild refers to "Kernel build" I guess.
I am ok to keep that name to keep things simpler when compared to
Linux scripts but it would be good to mention that in the commit
message for future reference.=20

>=20
> To use a generic header is needed to add to
> arch/$(ARCH)/include/asm/Kbuild :
>        generic-y +=3D <name-of-header-file.h>
>=20
> For each mentioned header in arch/$(ARCH)/include/asm/Kbuild,
> kbuild will generate the necessary wrapper in
> arch/$(ARCH)/include/generated/asm.
>=20
> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
> ---
> Changes in V4:
> - introduce asm-generic support
> - update commit message
> ---
> Changes in V3:
> - Rename stubs dir to asm-generic
> ---
> Changes in V2:
> - Nothing changed.
> ---
> xen/Makefile                      | 10 +++++++++-
> xen/arch/arm/include/asm/Kbuild   |  1 +
> xen/arch/ppc/include/asm/Kbuild   |  1 +
> xen/arch/riscv/include/asm/Kbuild |  1 +
> xen/arch/x86/include/asm/Kbuild   |  1 +
> xen/scripts/Makefile.asm-generic  | 23 +++++++++++++++++++++++
> 6 files changed, 36 insertions(+), 1 deletion(-)
> create mode 100644 xen/arch/arm/include/asm/Kbuild
> create mode 100644 xen/arch/ppc/include/asm/Kbuild
> create mode 100644 xen/arch/riscv/include/asm/Kbuild
> create mode 100644 xen/arch/x86/include/asm/Kbuild
> create mode 100644 xen/scripts/Makefile.asm-generic
>=20
> diff --git a/xen/Makefile b/xen/Makefile
> index f57e5a596c..698d6ddeb8 100644
> --- a/xen/Makefile
> +++ b/xen/Makefile
> @@ -438,6 +438,7 @@ ifdef building_out_of_srctree
> endif
> CFLAGS +=3D -I$(srctree)/include
> CFLAGS +=3D -I$(srctree)/arch/$(SRCARCH)/include
> +CFLAGS +=3D -I$(srctree)/arch/$(SRCARCH)/include/generated

Why are we generating files in the source tree ?=20
Shouldn't we keep it unmodified ?

>=20
> # Note that link order matters!
> ALL_OBJS-y                :=3D common/built_in.o
> @@ -580,6 +581,7 @@ _clean:
> rm -f $(TARGET).efi $(TARGET).efi.map $(TARGET).efi.elf $(TARGET).efi.str=
ipped
> rm -f asm-offsets.s arch/*/include/asm/asm-offsets.h
> rm -f .banner .allconfig.tmp include/xen/compile.h
> + rm -rf arch/*/include/generated
>=20

You must use the same as for CFLAGS here so $(srctree) would be needed.
(or something else depending on the fix for previous comment)

> .PHONY: _distclean
> _distclean: clean
> @@ -589,7 +591,7 @@ $(TARGET).gz: $(TARGET)
> gzip -n -f -9 < $< > $@.new
> mv $@.new $@
>=20
> -$(TARGET): outputmakefile FORCE
> +$(TARGET): outputmakefile asm-generic FORCE
> $(Q)$(MAKE) $(build)=3Dtools
> $(Q)$(MAKE) $(build)=3D. include/xen/compile.h
> $(Q)$(MAKE) $(build)=3Dinclude all
> @@ -667,6 +669,12 @@ endif # need-sub-make
> PHONY +=3D FORCE
> FORCE:
>=20
> +# Support for using generic headers in asm-generic
> +PHONY +=3D asm-generic
> +asm-generic:
> + $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.asm-generic \
> +            obj=3Darch/$(SRCARCH)/include/generated/asm
> +
> # Declare the contents of the PHONY variable as phony.  We keep that
> # information in a variable so we can use it in if_changed and friends.
> .PHONY: $(PHONY)
> diff --git a/xen/arch/arm/include/asm/Kbuild b/xen/arch/arm/include/asm/K=
build
> new file mode 100644
> index 0000000000..a4e40e534e
> --- /dev/null
> +++ b/xen/arch/arm/include/asm/Kbuild
> @@ -0,0 +1 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> diff --git a/xen/arch/ppc/include/asm/Kbuild b/xen/arch/ppc/include/asm/K=
build
> new file mode 100644
> index 0000000000..a4e40e534e
> --- /dev/null
> +++ b/xen/arch/ppc/include/asm/Kbuild
> @@ -0,0 +1 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> diff --git a/xen/arch/riscv/include/asm/Kbuild b/xen/arch/riscv/include/a=
sm/Kbuild
> new file mode 100644
> index 0000000000..a4e40e534e
> --- /dev/null
> +++ b/xen/arch/riscv/include/asm/Kbuild
> @@ -0,0 +1 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> diff --git a/xen/arch/x86/include/asm/Kbuild b/xen/arch/x86/include/asm/K=
build
> new file mode 100644
> index 0000000000..a4e40e534e
> --- /dev/null
> +++ b/xen/arch/x86/include/asm/Kbuild
> @@ -0,0 +1 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> diff --git a/xen/scripts/Makefile.asm-generic b/xen/scripts/Makefile.asm-=
generic
> new file mode 100644
> index 0000000000..0aac3f50b8
> --- /dev/null
> +++ b/xen/scripts/Makefile.asm-generic
> @@ -0,0 +1,23 @@
> +# SPDX-License-Identifier: GPL-2.0
> +# include/asm-generic contains a lot of files that are used
> +# verbatim by several architectures.
> +#
> +# This Makefile reads the file arch/$(SRCARCH)/include/asm/Kbuild
> +# and for each file listed in this file with generic-y creates
> +# a small wrapper file in $(obj) (arch/$(SRCARCH)/include/generated/asm)
> +
> +kbuild-file :=3D $(srctree)/arch/$(SRCARCH)/include/asm/Kbuild
> +include $(kbuild-file)
> +
> +include scripts/Kbuild.include
> +
> +# Create output directory if not already present
> +_dummy :=3D $(shell [ -d $(obj) ] || mkdir -p $(obj))
> +
> +quiet_cmd_wrap =3D WRAP    $@
> +cmd_wrap =3D echo "\#include <asm-generic/$*.h>" >$@
> +
> +all: $(patsubst %, $(obj)/%, $(generic-y))
> +
> +$(obj)/%.h:
> + $(call cmd,wrap)

In fact i think your files are not generated in the srctree so this
will break if you use out of tree compilation.

Cheers
Bertrand

> --=20
> 2.41.0
>=20



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 13:40:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 13:40:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595225.928717 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd9oz-0008Rq-9r; Mon, 04 Sep 2023 13:40:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595225.928717; Mon, 04 Sep 2023 13:40:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd9oz-0008Rj-7F; Mon, 04 Sep 2023 13:40:53 +0000
Received: by outflank-mailman (input) for mailman id 595225;
 Mon, 04 Sep 2023 13:40:52 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vltW=EU=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qd9oy-0008KO-7i
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 13:40:52 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20604.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::604])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a8ff114a-4b28-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 15:40:50 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS5PR04MB10043.eurprd04.prod.outlook.com (2603:10a6:20b:67f::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 13:40:48 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 13:40:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a8ff114a-4b28-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DfZgyipPFzbFIZ7fRBTbGW21Os8ec4rLWFCwsgKSDnwAmDq7YOchBhrRmvjqQzToSsE0h3As9cZrUMc3kClmtbUqW3VuySpVJvaGo79G1E4fdF8xx+6vComVQAM3lRYAOKqEmfppvrD6qq/a6yOIFyV5W1lcdz/VoFvRVVRvr5nOld1Elaz5WIfaj4JqIdv4bFqUtJ3ve9fmRxWyTAKXS8IUsOuU/JcbjzFIEUT2UI0bAjDNftl1tF/pLp1N89osP49DugwjWjNuC9ECdLmhM9cQr9paUmrbDac5bke5WLuMLErGjX9XoxSk6EQ2T3kH9wurWz+bTtW9r9C+p9DxLg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9L6vwvrR7V6qNVkpoe82dW81DbyRpbCR08Mw1dxcMP4=;
 b=A1HPhdSxbpCZkwypWbS+i5U/zCn9vJa7sQPbg4o2bJ8T0b6FGB7NyB8qooqr0Jl2OznvjOA6tgkF9EktWn0ZCaD5jiqp/fpOt9MMPrwRmjyB0yde2a/MQ/wUdvmbMRytcMRjvj0nxoamyVaD2o/unGn6BgrnxqdLPY6lzHnLIQAgXhiYpAvs32xqp/hAkb+IrO+whVOq6EooeVNPAk2WVKDMAiHjyaFi0f+TT6Pu6u4PqsRtodfIjARrMuVgBrUWzxuAovdssAVM5d2JQ8UcljE4/87wPjjBqHqkRbv7oegxbX6HwLOtz2lKNyCfJL88G0N5+rz6vU0UbU6EhA1X+A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9L6vwvrR7V6qNVkpoe82dW81DbyRpbCR08Mw1dxcMP4=;
 b=qqL750BQ4LykodnA/wCruM39F20dlMwIoHFw7s0zLbUQ3trYrHBsnhVtMpc7qFfGlbpqA1DhXlK1he6pv66Gl5ht44oehy7OlhTXkYtJ/rOF3xXVBTiujUmeq1jXzuX14TbH5DdDfL+/ad3uumQyRWoefW+Xpo8Y9W6vVsrD9Gd7/gdZWzQSri3IiB2NZ9QkUG1nYm9ziTPqGKMjrmPWVvCaNWs8N2UFC2n83WWQT2dDl3b2RMDSZv9t9YA4KIDDTXh9tQ7d8znfv1k0hvl59seNDeR0OyWzm8dfUVYWaRuSegYRElaEMItwY1hnK5kqs6/9/PS+1L2OIp5aI3Q8xg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <8d894d37-4a03-7d51-9a45-3f764d05a90d@suse.com>
Date: Mon, 4 Sep 2023 15:40:46 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [Xen-devel] [PATCH] x86/HVM: adjust hvm_interrupt_blocked()
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wei.liu2@citrix.com>
References: <5BC0C4B602000078001F1258@prv1-mh.provo.novell.com>
 <ZPBusqv7NGaJnOoT@MacBook-MacBook-Pro-de-Roger.local>
 <ZPByJJEoJOjV3CIY@MacBook-MacBook-Pro-de-Roger.local>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZPByJJEoJOjV3CIY@MacBook-MacBook-Pro-de-Roger.local>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0186.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ab::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS5PR04MB10043:EE_
X-MS-Office365-Filtering-Correlation-Id: e5b71f70-b402-4e73-a367-08dbad4c8be7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9/G8bnRwkJiap6OxVUEEb6dVskjMk2kQTdblEkVeNXjpwUJ0yR5kf9WB+8ncMz9LDXMqTwoD10cH+/Dx6LbXQiyeWPHzu6T8HgLibz5oV6Nu5IbX5gFkXYgVVOJf89FSSgP7yE5wjH5wojiUUf6swo0yo4YdAH1XsyN8TZgU2/Zd2uriAUcsJyIqe1WGJ2Drr7ebn7CsQSROTO0ngZST61zmuCVV+2dRUZYGWDAIYtlOLNjvU8BX7EaUwSvw0xmglxz1zx5t/p0Dx7JIcayzEthohyxgDb2nVS27rwMT5D+BH8pBtM4Nr03QfaXThkg21P9iTtW+5+gm5YcfLbtGGCjHegNuCJ1N69kLY1jEvQwo5JVQK52n4Z5QNddG4FUW9TIVh2V21vUeTYo/QUDd+suklmm0iLCxFjwRdcZ6oigfixFokUgWcRiDHR8BAhJgc3uDXpRB344XT3T8cfuUhDA0GqAx4LufZI3iq7RiDSRPXYVrN/AoFBSFssnZTLpsswHw/+3vfI1EAtdWDWyW5xIx1St+hyXqaKJgOdG6eQHlKpiqOkaSSibV18g2aguXKGFUlT1JisKoltNzmr0MbXxM3vdZ85U5omo7/I1HQGXWlXjmj1bPCU5Z226MdZOp9FaqF+zq2woLkpj++9h+Lg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(346002)(136003)(366004)(376002)(39860400002)(186009)(1800799009)(451199024)(41300700001)(66899024)(38100700002)(478600001)(31696002)(86362001)(2616005)(83380400001)(26005)(6512007)(6506007)(53546011)(6486002)(54906003)(2906002)(36756003)(316002)(6916009)(66946007)(66476007)(66556008)(8676002)(8936002)(5660300002)(31686004)(4326008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cHhJcmxUa2g0bzBWVUlaS3hlRCtLMGVHdm9nbVFyQTY2cWJGOFUySzBIekNY?=
 =?utf-8?B?aGY2SUVuWVBZV01mL2RMRURraWVNaXJwcWRFSEV3TEUvYzZRY3RxbUNaeE1i?=
 =?utf-8?B?NENia1hEa01tK2lyR1hhU3VqeE9mVHJOd1RJSDcwbTgyQU51R1hxZnBPaTgw?=
 =?utf-8?B?WnJtV20wemRNMDkwVEcwQ1FYSEYyT2sxSUc2eDByTjkwS0krd0VQeXJHZFVX?=
 =?utf-8?B?cHRpVTgrOW5hNU9RbGJEMTB1YXJaTndWMllKTEhpRk9OUU9EOXZhUnZ1Y1FT?=
 =?utf-8?B?STBMcGc3eWlYZXhmTm1Hdlp3YVd1akZLWUM2YS9VS01jd1lrcC9BQUJ5VDFu?=
 =?utf-8?B?dUUyOERmQlA3NDloMVhOTHFNSHNaYnVkUmFUZkx6Zk11dU1CaGlwcjFFTVFj?=
 =?utf-8?B?elJHTkJhcTBSQVFvbXdicmVLK05PRnZqbFhMTDFyRFoxcXBKdVlkdFkwcndG?=
 =?utf-8?B?QWZmVUNnNWZ6RjZjOEVHRGM2V2lGSHZsQTlaMk1zRXd3bG51eDN0MktpUUUy?=
 =?utf-8?B?L2xoWitQK25hSE42dUFFS0FzSzZ5cGtMUlU3a0VWbDF3UnY4K1BCc3F5WlVl?=
 =?utf-8?B?NS8zcW5xSWZDUzM4ODNkNXEwQVA1Z2Z0TTR0RGpLWUdBdS84SkxNaXFhczdF?=
 =?utf-8?B?MkVWZmNTSytMaEs5NmVCRGcwUHdIRUh4VkxGaHFFd0JzNkZnRTRacVVpTmN3?=
 =?utf-8?B?emwwVlFValVoT25zL25sN1VabFc2VjBVYzhDQU53NHdtazc2K0FHVjBPckpO?=
 =?utf-8?B?bnFuOW4yYTA2WU8wQ3VmQ3ppWXg5eHplTDAxV2ZtMWxndFNyYmliWHpPb255?=
 =?utf-8?B?V0ovNjBid1lzUHl0TUNSN0t5QlZtU0RHUEhyREVwVTF2SGtuSDVQVnFSUmYr?=
 =?utf-8?B?NG15ejVsZGdVb0JpZkZkUWRHc1VYL053eFprcXpKWnJObzJSWWZjeFY1VnFz?=
 =?utf-8?B?NjNBbWVlZy90SDZwTGh2UmtpVUJYSkJIalhjd09zWlcrYVF6TUJqdVUzV2Fu?=
 =?utf-8?B?VUc3dGxRblhia2wrWS9KNGo5N3lwQVV5SU1XeG1UdTY1bE1zeEFkUFhUL3F6?=
 =?utf-8?B?ZFRFcStHSTF6MklKck1TRW9qSjVFWUtpRXJKQ0lqN2FDWGgrU0lyRjNmRGh6?=
 =?utf-8?B?a1dZTFB5N0dpWThBMHZLY25ValFDYXBCSS9KeGNhTCtPODA2d2xGdHVQL3Nw?=
 =?utf-8?B?MUlESndkNStyeHl4SWgrcnpadWdMdFg3QS9sbFhHcWdjcnBEblJTNHRIelAy?=
 =?utf-8?B?NGdHRHUwQzNaR1R2b0U2dGk3UkxtK2VDYmE4K29xSm16bC9WblBYZm5wR095?=
 =?utf-8?B?VXZHb3RxSEo1RWF3RThPOVdRV1B4Q1o1N3lSbEt4SUpCeU5TZlZ2U3R5b0lW?=
 =?utf-8?B?emlSMUdpSUFoQzJXdG1xTWtsN1JFS2NnRFdrQmFDYjBZVlM2ZFBValdYbXQ5?=
 =?utf-8?B?Ky9QOGh4UXFUSHZzb2ZpZWJqbzRyVnEwU2FwdHhqaHk4NjczVXZpTTl6cklS?=
 =?utf-8?B?WWxlckhTSTlURHdVOCsvQkR4RUdISFdzQWRRY1lzaEtHYnd0d2k2Z1pyV3F0?=
 =?utf-8?B?dHk3NXNQMHJnQ3RnMmRvRzNCVDNXcjRBVWJoN0NSUTROWGlLUWRldThuNllj?=
 =?utf-8?B?V0xQZmJ1ajhNdFE1eTdyTGFaZVZYOW9SdW5xQk9FaDNhSkhtVkZWRFkzV3o1?=
 =?utf-8?B?SlNMU2FWcGlKRzBpOFdhWDdiR2VKTWNHdDBVWk1jNjFtOXphSy9yelVWaGQw?=
 =?utf-8?B?eTVzdUJhUWFDL2c3cmFWU25ueVQrMGp6R2JFL0IyNDJRN3Jyb2o1TllwdGU4?=
 =?utf-8?B?TkRVdWt6ODZYeEhha21aTCtVeEFEZ0Z1VkJ1Yi96ZDJHMEN0Unl2S3pNRDZP?=
 =?utf-8?B?aVY4VUJLNHNzVFZmWFFZRzBMaHdDa1MxVi9hZ2NlZ2QrTGZwZ0NNWjlFZUxM?=
 =?utf-8?B?VklRWFlkMCs5NDdGVG92a0NvUjVKU21MMjZTVTlPQ2Y0NXBBWC9DWWtNdGFW?=
 =?utf-8?B?eFdDZkU4REhYU1RvQloyRXZ4cTk1WGtoOFZRMDhGZXBidGdGTjgzRWNpQ0hm?=
 =?utf-8?B?YTFnTUIwc210cmFLYUtpVHBhQTR5Y3ZZQWxHRGtDUXVZS0hRNitlMVphM1la?=
 =?utf-8?Q?DooANV492AfPioFsxTpmGC1gc?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e5b71f70-b402-4e73-a367-08dbad4c8be7
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 13:40:48.0820
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: b0RoVX2oIDPSlL3+j2KhWzKHgi1QSDRmnnzZwc5kVGDlqvHzWRojl+ekcw2GKr95b7CNbnsHPcwpIMS4ylGe0A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB10043

On 31.08.2023 12:57, Roger Pau Monné wrote:
> On Thu, Aug 31, 2023 at 12:42:58PM +0200, Roger Pau Monné wrote:
>> On Fri, Oct 12, 2018 at 09:58:46AM -0600, Jan Beulich wrote:
>>> First of all, hvm_intsrc_mce was not considered here at all, yet nothing
>>> blocks #MC (other than an already in-progress #MC, but dealing with this
>>> is not the purpose of this patch).
>>>
>>> Additionally STI-shadow only blocks maskable interrupts, but not NMI.
>>
>> I've found the Table 25-3 on Intel SDM vol3 quite helpful:
>>
>> "Execution of STI with RFLAGS.IF = 0 blocks maskable interrupts on the
>> instruction boundary following its execution.1 Setting this bit
>> indicates that this blocking is in effect."
>>
>> And:
>>
>> "Execution of a MOV to SS or a POP to SS blocks or suppresses certain
>> debug exceptions as well as interrupts (maskable and nonmaskable) on
>> the instruction boundary following its execution."
>>
>> Might be worth adding to the commit message IMO.
> 
> So I've found a further footnote that contains:
> 
> "Nonmaskable interrupts and system-management interrupts may also be
> inhibited on the instruction boundary following such an execution of
> STI."
> 
> So we want to take the more restrictive implementation of STI-shadow,
> and block #NMI there also.

Hmm, that text says "may", not will, and imo STI affecting NMI can at best
be viewed as a quirk (quite possibly intentional, for simplifying some
internal logic on the processor). Plus I'm not convinced AMD allows similar
leeway in SVM; at least I can't spot any similar statement in their PM.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 13:42:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 13:42:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595232.928726 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd9qx-0000vV-Lt; Mon, 04 Sep 2023 13:42:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595232.928726; Mon, 04 Sep 2023 13:42:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qd9qx-0000vO-JH; Mon, 04 Sep 2023 13:42:55 +0000
Received: by outflank-mailman (input) for mailman id 595232;
 Mon, 04 Sep 2023 13:42:54 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pUi+=EU=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qd9qw-0000vI-Js
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 13:42:54 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2085.outbound.protection.outlook.com [40.107.7.85])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f1c0b3a6-4b28-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 15:42:52 +0200 (CEST)
Received: from AS4PR09CA0026.eurprd09.prod.outlook.com (2603:10a6:20b:5d4::9)
 by VI1PR08MB10220.eurprd08.prod.outlook.com (2603:10a6:800:1bd::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 13:42:22 +0000
Received: from AM7EUR03FT048.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:5d4:cafe::74) by AS4PR09CA0026.outlook.office365.com
 (2603:10a6:20b:5d4::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Mon, 4 Sep 2023 13:42:22 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT048.mail.protection.outlook.com (100.127.140.86) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.24 via Frontend Transport; Mon, 4 Sep 2023 13:42:22 +0000
Received: ("Tessian outbound 30c9f5e988c5:v175");
 Mon, 04 Sep 2023 13:42:21 +0000
Received: from 12cae7b2be09.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 30DBA455-C699-4CD8-9FC6-C2C62EBBE5EF.1; 
 Mon, 04 Sep 2023 13:42:15 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 12cae7b2be09.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 04 Sep 2023 13:42:15 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by DBBPR08MB6281.eurprd08.prod.outlook.com (2603:10a6:10:1f6::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 13:42:12 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 13:42:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f1c0b3a6-4b28-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=agG9ptatKdCvR+p02190YvNp1Ai7bkxLcXwFOTCqJQE=;
 b=iEb56VOvwCHzlkiTIPYsc0N5QyOLvINjGn7ARhwLYFno23OqboXoTKw9rwrE4LnFq6Nj0jPaiPuBp2CPoAUrc7T7Q1tF3LBoKtUcyudLQ7gRbbBOslWMjQKxBye33md+fWGrqN8hjiCNb511lLs+JEXSV1oxHt//6AqF2KzJLSY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 43d910ac2d884510
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PlGmXPEaT7BRe3W0pnaZZGj4YBZ2xii8DBKqGObW74rCcbqcBvMjHUfNXs+ZbemhvBX6gZR56Hkur0l2GdRhylXd6ky0sQ3N8Tzt3tuRU3PU05ix3jTLh461bZZsUq6nM0xXfGK07VE3doteIoyuybuQVGVP+GZ1VSX88u3HM4kSAzQ4/lSWYe2XmnIkgMZIfo5Tmfs6bDi5Xt7GlrsRsNIfW2ngu/VNqoW5MR0XePgJ1vIZLYnvHFztjJWG3XkFJBnNnKKSzLCt/lATKjyiuAioVVOY0gx18wF+yKoQTKnDmLBSVtRNLZdV/UbWn4Hc6dV41tWdgTIqiq4pUSJxzA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=agG9ptatKdCvR+p02190YvNp1Ai7bkxLcXwFOTCqJQE=;
 b=ldc7rSX48YIfGpgSENqPpHvVUnenvRgTYC3Dl5UgITWfgJim1GU+B6oLEJHxarWu3HY+922AYpCw0pXbB/j/DFW3QlKn0KKNg43lZ5/JDGs21CBKYEmpgeHkLWrfa9zvj1N6CD1o9LWWSJJ3Uv8YUZf/dLTsIrfDrGNOmY79g4dkXXyolKVw1q0V3fy9AIHiFDkySu2zskDu9Qa+SrA5vjMggDDbvN54slRHZHDQGOMwkpLhHMQ0Y2fSC6dZxJXeNbNZ52LQwDadyyOUWbMkCy2zXXGbqW77m4vbNDE4bhzvGyjzzGrVS65HzeogmU+K27pM3CSHLFOUVS2YLz8gqg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=agG9ptatKdCvR+p02190YvNp1Ai7bkxLcXwFOTCqJQE=;
 b=iEb56VOvwCHzlkiTIPYsc0N5QyOLvINjGn7ARhwLYFno23OqboXoTKw9rwrE4LnFq6Nj0jPaiPuBp2CPoAUrc7T7Q1tF3LBoKtUcyudLQ7gRbbBOslWMjQKxBye33md+fWGrqN8hjiCNb511lLs+JEXSV1oxHt//6AqF2KzJLSY=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Julien
 Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <volodymyr_babchuk@epam.com>
Subject: Re: [PATCH] Arm: constrain {,u}int64_aligned_t in public header
Thread-Topic: [PATCH] Arm: constrain {,u}int64_aligned_t in public header
Thread-Index: AQHZ3KWtdw8jwJKuHkKXZbII/FmnYbAKsd6A
Date: Mon, 4 Sep 2023 13:42:12 +0000
Message-ID: <7D7DA9F4-8B0B-447C-B35F-6BF53E5D0E52@arm.com>
References: <56bb2024-dea0-79e6-6a51-66e6c35a2733@suse.com>
In-Reply-To: <56bb2024-dea0-79e6-6a51-66e6c35a2733@suse.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|DBBPR08MB6281:EE_|AM7EUR03FT048:EE_|VI1PR08MB10220:EE_
X-MS-Office365-Filtering-Correlation-Id: 853213da-bb28-4c97-066f-08dbad4cc412
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 fLHuLRgW8BEpfJXvWpfI1bZr83Sm41AJVicmyhOJxhw04OA9buBmfFlYkhdHYb+zhthk8r2mrKY17swTVOv1BKvC10KKXHTuICqd1ihAY/k4l2BkcbKZeKLRU4RvbVDqoNaUyEbVx5pkuDcoKIjpnVAjxDDtfvzvFZvNvwEOF2XblxJ8IKthyHWpDSF6DY8DvMZ3/WeeC8TYdbQR9CcFGG5nKapHSeVc14YxkdagKlwsvMP7PgRmPT94B69kghnSRe6d0i9IWXNZ95rBdLBeYpRRjbFDG4CgRG1fxBVYTqb/Id0nKPPXwfGaD+L1wTJZuRplPl8TuFxIUVgJaZTUcLHIQhP+KwGtUNAeMDxYR72sWzENDHxKFmm1U1qXoAydc5c5r/7ajw6K4fy0XaE/ht6BPOgYeRBFn5VQwdXMVq7+HdkgIHto60inX+ZKgDcVvx+a29WpdIF5aoHyo9VreC0uTjlybgsWDO/NUP0/N2g/dKlhXiwqEwqUHzxOseo11cIeAxq1O4TCndl8G+HUQERUz/aQNPDh00dpzeM0C8gTuaEjh9C7CviqzvnCuVHG2o36HRDiNhBNWfptjB+aExV24onpc+mWfCWCo9Kxxg9IFWw6A1AQfYK9PzjYYBjkjQfMN85twOAzxVUrKniacg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(136003)(376002)(366004)(396003)(451199024)(186009)(1800799009)(8936002)(41300700001)(478600001)(2906002)(71200400001)(66946007)(5660300002)(76116006)(8676002)(91956017)(66476007)(6916009)(54906003)(64756008)(66556008)(66446008)(316002)(4326008)(6512007)(2616005)(6506007)(26005)(53546011)(6486002)(36756003)(38100700002)(38070700005)(122000001)(33656002)(86362001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <15DFFDF37ABA2E46892F7068DFE9DFBE@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6281
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT048.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	53889e97-4b3a-45ed-d3be-08dbad4cbe57
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ad0ub0CpejJzyVVTxkHuPtUHYoboARbhttxzY8E0aEFlfREzy+4zmUoTxXNJHKcyeubuO2vdFIMrrcbdHcDXgGZxUFrhzUf39hMmUNU7wQZ7IlTmzoUDWRD7wtxqB5PkLusiPWmUiKeriLgaXDZkn4PjrZ5Ldit8RZxF67LYJB2tv5xShX5WN+rs4MnZJAOPsySJ6SEDU7ZyH2I0dwi+6rAWovHkDa5cCfRI/HJzyYZsqey6/ASqt0P+wpsRqKVWA+j2Pi6ukQOoZAL0mzk1OuyDOQRl8crpY3ToOyL+Q6i8S9AbLBVxEzQa9bVSSArJwyn69vfKqycWdyzGFtIXktbgw6/I+s2GkrEPygOmWfDEYXFaIAJmN/784PDEvIxvje+EbIxgKCjJwOyZy5o8qLo4sipLrRB+Tdb39BDlgpRhf2uxn7+pFZ6QhVAA3rMX5s9CTOFL30jdpOhGD8Jc4Z8iJlvsATLm2A8h+cBc5T7Kz8HZAukcwnV+ZFBdXZB3k84y5qeqaGSDxH5w0zZvgGE1On0vO6eoIPqUZmhP5sKNXmbVTttlQLKDupNX4wNThJVCZNTQMTGFJgu/D7cHtD/RZSUOS5EJtUZAX55Spe5XHqLxEZldHPHQaD4mg8ER1YYOLj7v2yuDOUYLsr/3qBxrjmz41IEsnzfS8KbsF/bWBeLlI7Mx0xUIlSY2vYdK7Da7walawRjpRzGxhmrbrzbxLCd+7mu/vnpqCpvsFNg=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(376002)(39850400004)(136003)(186009)(1800799009)(82310400011)(451199024)(40470700004)(36840700001)(46966006)(41300700001)(40460700003)(356005)(82740400003)(81166007)(33656002)(86362001)(478600001)(2616005)(26005)(336012)(107886003)(6512007)(36860700001)(6506007)(6486002)(53546011)(40480700001)(47076005)(70206006)(70586007)(36756003)(2906002)(316002)(54906003)(8936002)(8676002)(6862004)(5660300002)(4326008);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 13:42:22.1067
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 853213da-bb28-4c97-066f-08dbad4cc412
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT048.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB10220

Hi Jan,

> On 1 Sep 2023, at 09:26, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> This using a GNU extension, it may not be exposed in general, just like

Nit: Missing "is"

> is done on x86. External consumers need to make this type available up
> front (just like we expect {,u}int<N>_t to be supplied) - unlike on x86
> the type is actually needed outside of tools-only interfaces, because
> guest handle definitions use it.
>=20
> While there also add underscores around "aligned".
>=20
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

With the Nit fixed (can be done on commit):

Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

>=20
> --- a/xen/include/public/arch-arm.h
> +++ b/xen/include/public/arch-arm.h
> @@ -152,8 +152,10 @@
>=20
> #define XEN_HYPERCALL_TAG   0XEA1
>=20
> -#define  int64_aligned_t  int64_t __attribute__((aligned(8)))
> -#define uint64_aligned_t uint64_t __attribute__((aligned(8)))
> +#if defined(__XEN__) || defined(__XEN_TOOLS__)
> +#define  int64_aligned_t  int64_t __attribute__((__aligned__(8)))
> +#define uint64_aligned_t uint64_t __attribute__((__aligned__(8)))
> +#endif
>=20
> #ifndef __ASSEMBLY__
> #define ___DEFINE_XEN_GUEST_HANDLE(name, type)                  \



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 13:55:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 13:55:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595241.928737 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdA3C-00034l-M9; Mon, 04 Sep 2023 13:55:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595241.928737; Mon, 04 Sep 2023 13:55:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdA3C-00034e-IC; Mon, 04 Sep 2023 13:55:34 +0000
Received: by outflank-mailman (input) for mailman id 595241;
 Mon, 04 Sep 2023 13:55:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pUi+=EU=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qdA3B-00034Y-IZ
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 13:55:33 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0623.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::623])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b577fd0a-4b2a-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 15:55:30 +0200 (CEST)
Received: from DU7PR01CA0016.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:50f::11) by PAVPR08MB9818.eurprd08.prod.outlook.com
 (2603:10a6:102:31e::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 13:55:23 +0000
Received: from DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:50f:cafe::15) by DU7PR01CA0016.outlook.office365.com
 (2603:10a6:10:50f::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Mon, 4 Sep 2023 13:55:23 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT026.mail.protection.outlook.com (100.127.142.242) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.23 via Frontend Transport; Mon, 4 Sep 2023 13:55:22 +0000
Received: ("Tessian outbound 30c9f5e988c5:v175");
 Mon, 04 Sep 2023 13:55:22 +0000
Received: from 19383bff2fb9.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E41A57D0-1BE3-4D96-9AFE-9A9D90BF3201.1; 
 Mon, 04 Sep 2023 13:55:15 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 19383bff2fb9.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 04 Sep 2023 13:55:15 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by DU0PR08MB7614.eurprd08.prod.outlook.com (2603:10a6:10:31c::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 13:55:13 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 13:55:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b577fd0a-4b2a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=N9sJABUIlpmpXiKQpuaGlgUW15tWjkX/1AIiQ/CZppA=;
 b=VlhXaBhUkMdUeNwYACPaKqBNwhUaBloQlLhDML0DhDxSj+/5/PBLLtidolttLqAaF2E+dxj0AJ+m+0ctcSgP8rOi37wDejPq0xzvnM0j2/A0BNvag1+USKMbCpKYVlX0VnzCr1MdnnyWRUtyZQdR1HdJZ3SmYtCboTrhN3DxwBY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 303382f8088a1de0
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bLRxaiz/8iX6aZNLzWAd1SEmdXGDhCuApSAv/Lxdcr9PC+g05+7qVgZBZ3IKCqrS2ssRqqgg+9WPs99XwQ6RmY5Kt8wsHZhyokDYtFOiiNZ2SpPz0gDZxfoVwUoKm+ZNLSfcYNO3JxUxkpZ3mONPErQuNKmOywclRBpjvgezor7645oAPdllQvdlex7lxPGMJVC6P7CfAtY+w59g+HptgjqNGNRokYx6y0SaEHASz9zZ02p9/NoAg3ROV7lNu+seB8qTAqjl3T6eVTrp/+B+Mpuzklhf23X9JjuWJNVr9542RPiDZ2HVpXvNbRt5ieb0RXBWuhn+wRac5K6547EEwA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=N9sJABUIlpmpXiKQpuaGlgUW15tWjkX/1AIiQ/CZppA=;
 b=YXdmNQN0HnBbaFQsSlGNxJ+oB98jb6HXeaVutSOowXWZSzhVWZPhSB5DZdKJd6My6yRZz4evEycYcLPTwKB+rp+SWnlqkqpKIkHz+i7vN41zMWETAKz7wced0Zvw5AxD3TaLqfR+Ps4s90gEbjguxaWze399s4GQjvseUL67RC0clNV4mKTQE2pnOATeSWb2K+Tuan/vs4zueMYuomavJpRjTRcX58y6v2h/fs5Zj+Aq4afy1iAuOuDRqNUsO2YaOuseiTGns33uUcILzRi+FM49dXaP25WAhrXs7kCI1pgwuhFWwXxqMmFbsgYjZexCDql9E9PG8DTNbRTVv87sSQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=N9sJABUIlpmpXiKQpuaGlgUW15tWjkX/1AIiQ/CZppA=;
 b=VlhXaBhUkMdUeNwYACPaKqBNwhUaBloQlLhDML0DhDxSj+/5/PBLLtidolttLqAaF2E+dxj0AJ+m+0ctcSgP8rOi37wDejPq0xzvnM0j2/A0BNvag1+USKMbCpKYVlX0VnzCr1MdnnyWRUtyZQdR1HdJZ3SmYtCboTrhN3DxwBY=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: "leo.yan@linaro.org" <leo.yan@linaro.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Alexey Klimov <alexey.klimov@linaro.org>
Subject: Re: [PATCH v1 2/2] xen/arm: Enlarge identity map space to 127TiB
Thread-Topic: [PATCH v1 2/2] xen/arm: Enlarge identity map space to 127TiB
Thread-Index: AQHZ2/qDuICFuFkYAUiWEvnuJknicbAKttaA
Date: Mon, 4 Sep 2023 13:55:12 +0000
Message-ID: <338BB8BD-5B22-4201-8411-4836B5768AF4@arm.com>
References: <20230831110107.2747633-1-leo.yan@linaro.org>
 <20230831110107.2747633-3-leo.yan@linaro.org>
In-Reply-To: <20230831110107.2747633-3-leo.yan@linaro.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|DU0PR08MB7614:EE_|DBAEUR03FT026:EE_|PAVPR08MB9818:EE_
X-MS-Office365-Filtering-Correlation-Id: bf101268-d60f-4efb-a56b-08dbad4e9572
x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 5dzq1eIC8XladPpurYc47y/u7/6BKAtEguPzUyhS0Df02uw2B0Dn7bm/LrCbEfsBYnzJIBOyD1udfnQyDweNOadybdQotWo3yQGGga2U3ifnbBzPKe3Ptt1RGD+FD90i1cs+6thWTz6OokIUz9h4QVFbkCiyNqX9jD1Lxb/RQCNJQsIuzlXyCiGwGNwcNwq/8CWIVEzUcUHGG8IOSgDa30zAEqV7Cx1xm6UgDc4HdRWACa77BLqqpVKMn2mCuRg2BkSTaz5yclnYVFH/nKDduchoJz+LX/czFjS2OBd5DN0iLL93uMrh5ks7a8lUevYdT6W1ODFcYjZO1Yj0v8lTyQNXWRfu5ZXN/nVi4M1S6rCZ4ibJ518A4u4gFrGe0q9oJwYzXcRKb/ZDD+H2Ti/QWgfNDIU5izJQ8DlCUKI45eYK8O3uK+hfAASv6od4oX2TS90xPaBMW+wU6q5k0QwRG4JsPuBuh0ELzDVpQhCGPmlf6VGb+L9ajUKl8eS5HIaApqKkJFKHrJ/q08ga5WJz/zUHPBV8o85tpgD1gtLjFRFdTW6EOSJqEmU+lr96Tvu90fSLwS9W9Wvuq/v3Vc5LR4f0kjyjYB7lhRwzZ23dzTh8J6U9OghmZKsUVmtY0Ge6FvpV4Pe7bgRMsAzFdtmC66oWj9+IR1ZbUfO8zHM4O+aMwNh8hETszTKJPMLFu88w
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(346002)(136003)(39860400002)(396003)(366004)(451199024)(186009)(1800799009)(66476007)(6916009)(66446008)(76116006)(2906002)(66946007)(36756003)(64756008)(54906003)(86362001)(316002)(33656002)(91956017)(66556008)(5660300002)(4326008)(8936002)(8676002)(41300700001)(6512007)(2616005)(38070700005)(83380400001)(26005)(38100700002)(478600001)(122000001)(71200400001)(6486002)(6506007)(53546011)(147533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <5D4E2AB5DAD68A47886EEAC979496884@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7614
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	1607ec36-06b4-4c8a-77a7-08dbad4e8f63
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vTtHTeBn7t0iAProvMTue/+UH0LA3bv/iV8EjPGaQm2MH8YGxhcALyLlYB3YLlEaRWMxYHG3oNfihY6tIRFaomY7A5481I5jC7WOOUOLNgiqMf02zpzZAPCGeSAEWxKeyr3m6pyRdSePyhmbOCRZrsKrxVwoNrX7hyu8jS2GG/0ua4ohfKmhBw3SPYRxyufwjDtEV8PZHpbWoFOYsXj/lx0MAl0G7gj2WRQtxPqJnTBFl0yOasaIMlXi69rWPvi5S+lZgU1upbnlego2h1UGplqQ9IfLb+0hUM4pCB15ucZQPkiZ9STsCO3kmrQ249KVpds5hqwjEuca+BZvm2lPpLzOt8tB1i/eGWSRLMTD+33pqiMdvEhSB98GncIAhGIa1zSTfIVDOBZS67a5M9IwHwkS4MDzXVtL4qmyDYBb+asGQUjNQd8i64e4lEuV50L0nIA77+GzOiCpkaxsMKBc/sgBqO34Hp7JqzQo9dA545zNA2ICAoAj0yJQ8LwHMVUlRkk7l1cyXeyPwMR0gvhWx6n4UlGNedmbrjMcV8JDib0TRnzZjoaChJIKRAleMQDrjdrpWoYhhsCOEhiyK4xHUWTvb+oUF+ale1YkC/fL6zvMoz5K/IOLK/PQ8MC6pkF99eygkiRTUJWnfur5l/EGR2AsByfk4jJAiVYJzgD5CzW2srtFzO+oQVjx1iy57MqVOZUzBdoqUut8zWDaxFUozQlmJXXsT2RyRngYda/6+caYe2Sjw0kh6uLFFKlMM2CxVvE9L0dtnn+dUb/OjPRE8Q==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(136003)(396003)(39850400004)(451199024)(186009)(1800799009)(82310400011)(46966006)(40470700004)(36840700001)(2906002)(36756003)(54906003)(86362001)(316002)(70586007)(70206006)(33656002)(40480700001)(5660300002)(4326008)(8936002)(8676002)(6862004)(41300700001)(40460700003)(107886003)(6512007)(47076005)(2616005)(83380400001)(336012)(26005)(36860700001)(478600001)(81166007)(356005)(82740400003)(6486002)(6506007)(53546011)(147533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 13:55:22.9430
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: bf101268-d60f-4efb-a56b-08dbad4e9572
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9818

Hi Leo,

> On 31 Aug 2023, at 13:01, Leo Yan <leo.yan@linaro.org> wrote:
>=20
> On some platforms, the memory regions could be:
>=20
>  (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
>  (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
>  (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
>  (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel
>=20
> In this case, the Xen binary is loaded above 2TB, so Xen fails to boot
> up due to the out of the identity map space.
>=20
> This patch enlarges identity map space to 127TiB, which can support the
> memory space [0x0 .. 0x00007eff_ffff_ffff], thus it has flexibility for
> support different platforms.
>=20
> Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/di=
sable")
> Reported-by: Alexey Klimov <alexey.klimov@linaro.org>
> Signed-off-by: Leo Yan <leo.yan@linaro.org>

This is not based on the current status of staging where this part of the
code was modified.

Currently Xen virtual address is at 2TB and the extension you are making
will potentially make it possible to load Xen at 2TB which will clash for t=
he
identity mapping handling in Xen.

Please rebase on the latest staging and check there how you can do as
this patch if rebased on staging right now with rightfully end in a compila=
tion
error.

Cheers
Bertrand

> ---
> xen/arch/arm/include/asm/config.h | 9 +++------
> 1 file changed, 3 insertions(+), 6 deletions(-)
>=20
> diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm=
/config.h
> index 21f4e68a40..3e97c95b57 100644
> --- a/xen/arch/arm/include/asm/config.h
> +++ b/xen/arch/arm/include/asm/config.h
> @@ -87,11 +87,11 @@
>  *   2G -   4G   Domheap: on-demand-mapped
>  *
>  * ARM64 layout:
> - * 0x0000000000000000 - 0x000001ffffffffff (2TB, L0 slots [0..3])
> + * 0x0000000000000000 - 0x00007effffffffff (127TB, L0 slots [0..253])
>  *
>  *  Reserved to identity map Xen
>  *
> - * 0x0000020000000000 - 0x0000027fffffffff (512GB, L0 slot [4])
> + * 0x000007f000000000 - 0x00007fffffffffff (1TB, L0 slot [254..255])
>  *  (Relative offsets)
>  *   0  -   2M   Unmapped
>  *   2M -  10M   Xen text, data, bss
> @@ -103,9 +103,6 @@
>  *
>  *  32G -  64G   Frametable: 56 bytes per page for 2TB of RAM
>  *
> - * 0x0000028000000000 - 0x00007fffffffffff (125TB, L0 slots [5..255])
> - *  Unused
> - *
>  * 0x0000800000000000 - 0x000084ffffffffff (5TB, L0 slots [256..265])
>  *  1:1 mapping of RAM
>  *
> @@ -117,7 +114,7 @@
> #define XEN_VIRT_START          _AT(vaddr_t, MB(2))
> #else
>=20
> -#define IDENTITY_MAPPING_AREA_NR_L0 4
> +#define IDENTITY_MAPPING_AREA_NR_L0 254
> #define XEN_VM_MAPPING SLOT0(IDENTITY_MAPPING_AREA_NR_L0)
>=20
> #define SLOT0_ENTRY_BITS  39
> --=20
> 2.39.2
>=20



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 13:55:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 13:55:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595243.928747 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdA3Y-0003SH-1k; Mon, 04 Sep 2023 13:55:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595243.928747; Mon, 04 Sep 2023 13:55:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdA3X-0003SA-Te; Mon, 04 Sep 2023 13:55:55 +0000
Received: by outflank-mailman (input) for mailman id 595243;
 Mon, 04 Sep 2023 13:55:54 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vltW=EU=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdA3W-00034Y-03
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 13:55:54 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2062d.outbound.protection.outlook.com
 [2a01:111:f400:7d00::62d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c26b119f-4b2a-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 15:55:52 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB7052.eurprd04.prod.outlook.com (2603:10a6:10:12d::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 13:55:50 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 13:55:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c26b119f-4b2a-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bhgnukQIT3x+izTNuZKFOkC57LekWn1HsTpG9jTtcvVztDqmXCLg0Vw7P0A+vzUwOX/0P2jFcgHEx+TKJgShZVcqFgjFynREfjgqDxdjkaSwc3UTyZC84GOdaaQuSyoxQsawMxIzrKXmh099xiSjO+Wr+xj6er4cR2YULl+islouFq+oXnUMpzFAXSGs23on1Lb64rltQW9ozy4iSjAP3gTw5HI1oG/91C5/rYEOgjLxNyTwN3wl12zDrUsuxPIMzf/mfe3Pq7Cj9JwgkDmhAWGYFHEi/lItdF0oc9ymamoKK1DHTAxxhW/3MaclJkvvAABBvVGM3Y2+sKYa00P9ng==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=n0P1Z8DGaDzApWPE0F5c87R3dy5CngDY71J0Rx6DZRk=;
 b=fxhvbjM+GEKf6alLdzHOdWKEbCRE2TrcnlpgUuiW0h7ePo89jQikv8LiGRDyIThuHoloGqfr7I3uQ4PShwn82W00iTA/tyIG/x5/VBgFAP+/w23j39XZBmRrAUeOuORH/hqUHOptp/dhvkKdjDprHAORtqP17dSXtpAftM2UWtAPEmDM0DH3JcfW/3exJhRhMyzWme9bbIwVK6BAVcjiXM7JE5kYhleY8508lp9zGRJ8IOSx8o8KRUSOcX1xLinLy2YgiUwRlPZvnqGJVV4ds6OZcxi3t3mAVc9AWDUgffDgKtQpKg16jHtCcabNZoBFud9qQG1C5aelfdfoTiZOzQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=n0P1Z8DGaDzApWPE0F5c87R3dy5CngDY71J0Rx6DZRk=;
 b=1MQma0s3NJjICsGFGvLrpevMcJArtG7tCByKlJijF7j+mRZ0jr0qHO87q2jgiW5qVsQiK2RZEvO7by4ahrP6KOEHWpGjvCc5jwRzjr3UM0lg56k4aliDZ3wiJm9dpy3vAuH3cvpRe55t+UJDkjaBN2+AqjyHQXSkLoCpMZ1NEugkGEOt99ZoFWK3vSP3KWUQDDZ6Hny8UZezx+28iR5b8TaNl0OvLYB/p6F4HAbDxAvEsUjx1oeBmErpVWP0LSzAAs8/ilEc9At6xyHhveiWA/exmdjvnAoWziu0te5YUUpdek+7zvp0E0HZyF/YEanzJWIHNM1ayWgPBDq2rn+1Ig==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3af0be91-36a4-e0ca-1974-ae030ba07908@suse.com>
Date: Mon, 4 Sep 2023 15:55:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [Xen-devel] [PATCH] x86/HVM: adjust hvm_interrupt_blocked()
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wei.liu2@citrix.com>
References: <5BC0C4B602000078001F1258@prv1-mh.provo.novell.com>
 <ZPBusqv7NGaJnOoT@MacBook-MacBook-Pro-de-Roger.local>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZPBusqv7NGaJnOoT@MacBook-MacBook-Pro-de-Roger.local>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0007.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c8::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB8PR04MB7052:EE_
X-MS-Office365-Filtering-Correlation-Id: a88e85c6-1a26-4bc3-0a49-08dbad4ea590
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9KSB/fmNXNHl5OpPNnkhN0SqskkKTZYeHJdQzeGGitgHQfE4HcQmyHK1uPiF77vR+ljqqfNX1TqTBvlgf4JeVaDjAuBYiv+L6tt9fudzYS4L07WrLtXSwIys9cv2v0l7ALMHXjlqCH49xslw6h2WRBHxeYX4hgVV2sK7rrg3wkcijPY8NUzrx2XnY0hD2iYtBu2WYApt9Kh3zvB0Zaq11ptLoxrpOE2Pz/ufwGKUxM1vHPd9OoG3MX7rPNw0laEjwvqgt0FspEZru8B5zwcKEvsfqrZX8HE1ANQ34h+/lBkaPyVvE38M3udV8vAevSrkaxircd01izkTWFBGhdIPISWgTFum7tb9snACG68YujNQ+2aYmfgTVXfX9AD5EeJiHC6STcBs2rx4pbYTN9ZtXC1kmU+tgDGfS+1dqkd7F6t37QDsWe3th2McQMdcLgpaTI3/LEajh4uchsYClmYZtCG1q9ryP4I1QTayAelii4mdq/d728Qw/i/sGOZ3E3ZmBAsCcczt11yEGFP+Ecx4Eutwc9Y9WMJp9xzb37shq7wgVe8/jxsuOVDaNkcYRUJ/czGV4CIV1Inm3nCMxFUtQX5F19OmV4QC2cnC9P/dwQZhymlEGS7kdQeJfqWExNwQAQUXPd8o7wA2RzoKD3DQbw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(346002)(39860400002)(366004)(136003)(451199024)(1800799009)(186009)(66899024)(31686004)(38100700002)(36756003)(5660300002)(86362001)(31696002)(83380400001)(41300700001)(54906003)(66556008)(66946007)(66476007)(2616005)(26005)(478600001)(6512007)(2906002)(8936002)(6916009)(8676002)(4326008)(6506007)(6486002)(316002)(53546011)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WnFnQnJ5SVYvVXNlY1JrN2Z4NjMrdXgzYkl4b3c1bVFVOXZ4eTVBK1AwYXBL?=
 =?utf-8?B?TEQzTVBjM29LVUVBQjFaLzEvemU4VUF0MTBWaVp1V2hzT1RwK2YyMHIxUm9X?=
 =?utf-8?B?OUJoUjMrMXZSU2pSVTYvWml1QnVoelloNkVlcjNNdHhNRVpZRFJ6SzBUbWxO?=
 =?utf-8?B?MDc3eitDdmh2UnM0Uzl3QURYVHBtNzZrU0g0RmY4Y3BSRkprNitleVlkNThI?=
 =?utf-8?B?RVpQSVpDVWtEL3N1bWI1SHJ0WDlrLzR2WGpuRkZSWE12MzF0R25taWZuSHVs?=
 =?utf-8?B?WlZZUC9kcGF1cEZnTWxCcjFVUjdRU2pWRG4xVkEwRkFYWTBpblRaTFdneFpM?=
 =?utf-8?B?QVV6QzZaUVF2ZTZoYUNxU0xDdzN5bHk4K3BLU2xwN1FWM2hrNWNnVkk5N2Jo?=
 =?utf-8?B?endiZ1I3RW8rY1ZBMElwaldidC80b1FwRisxWUFrMVQ0YmZVRkdYSnFpQXF1?=
 =?utf-8?B?RUVseXVwejZhZUdpbzlBU0lmWE5RZmNyelN1L0hpaUZFNkx3RmsyMWNaNDZq?=
 =?utf-8?B?TFRKNDAya21rU0dXV21GQlUyaUVvbXFqV0dtYUFmbWNMWE5oc3dMbFZjMFEr?=
 =?utf-8?B?YVkwdTNEK3VONkNNL1pFekhGT1MxRVlDR0FEbDZPYmdCL0NQMEwzUnJmMVFx?=
 =?utf-8?B?RXZzZEluc3BCMlcyUjhLcFZSZC9Yb2hBaXVMbkt0eHBCby9Ta251U0NXUTZl?=
 =?utf-8?B?QmJGd0dFV2NmcGo4WnVXSVh4dVZZS0VWa1NPZHZNTWpUV1Blbm1mZkM2NnFp?=
 =?utf-8?B?azliM05wdUYvc3RCZGJ4eldIamQzdTg1b0t5bWpiNmhVdi9ZdGNrREJaMFlh?=
 =?utf-8?B?ZHBMMTBDMk1JenNLTGN4WUY2d2pWWE50cEN2WEZhRE5qZXNSVGlPdVBLalNx?=
 =?utf-8?B?SktYNUtINTJ6dFhYclZPM3pSVGtJaElDWlNMYmJQQXcrRFI1TzlpYk9IQU1x?=
 =?utf-8?B?NkJhVS81ZzlpeVRpWnZTVlR2ajRrVEdRRnpXRFhiaVFKb0tLVW5CdFR0SXNv?=
 =?utf-8?B?a2FVaFI4c2Vkd1ZNekR4MVYyUlZIN3BOVGZJbWVyVmMvelRQTjJPZitwWExj?=
 =?utf-8?B?WitjSDhYa0hiTno5a3FxS1RESWRQUHNJNUJtK1JLUVUvbys3dUxDQ0JtZXlU?=
 =?utf-8?B?dEVXdjFFbmJ0eVlMRWg1b2FaSm5pQ0hxK2hnNEVOY09HaEZTakVEcm5TYzZM?=
 =?utf-8?B?NUVyRjNuTERqaFpvU2N1RStyTmZJclpVbTBIdlRtL2RoOHJCMTVEaVhmUXJl?=
 =?utf-8?B?dTIraVArU2JLQVUvczZsTG01WUEyNGZTQVNtdXFUNXErVEdkNEZpK0ZjM25J?=
 =?utf-8?B?ZXYySWcxVllXbThVNHY2bCtOQW9oWHk3L0RWNlB2Rm5nU000YWszWVlwWXNB?=
 =?utf-8?B?SUt2MkR4T1FKWkZFeU1CcE91aERxUjRRenovZFR0clFHT3d4QmRxZTB1Tnox?=
 =?utf-8?B?NW9PbWtHbVR0RmQ0TnUwYzd2MU1IYWFZNEVucXUyMkN2cXFsTmE5RVhWc0kr?=
 =?utf-8?B?cW5OZlFkRHMxY3dSMkg1djU2cC85TGdTVkErVXFJWWFXVVJtRU9wdkpWUG43?=
 =?utf-8?B?OFhrTGJ4aTBla0lpdzl3dHluSFV1dVBuWUxHT2hwNkdOR1Q5OGVsSHU2dDla?=
 =?utf-8?B?Wkx2eVpSL0lVOHE2c0liZ0txZEpTRkQzWXgxbUdodlk2UmcwcUFpTHl1QmR1?=
 =?utf-8?B?K2gxYUtzdnNMd2lsY0hSdTNLcUNmUUN1ZllqNEtmN3lOc0xZMTFldk1CWDBj?=
 =?utf-8?B?bS94MDRObEZ5Uld1ZDVNTENlWXplS202UXVCbW5wbVVOYnNmYkZNRjZTYWEz?=
 =?utf-8?B?WkFyenltUzZja1hjNmU0aEt3RzUrOGlKZW95SFBtZ2Y0RzZkWUJISStIZ3Bo?=
 =?utf-8?B?d0lqeTM0S3pKcURnUUZMNGR6YmYrSDY0b2VtSG5TSVd4VStVd2lyNlNrc2Q3?=
 =?utf-8?B?REVLOHhLN3hBS1BiMnB4bU1EUHAyUXM1ZTFpTDRnNktRNmZzcUJyTHFqQzJE?=
 =?utf-8?B?QVhhWlNScE1jU3pqb3dxcTdGT3QxMXFGT1U1WWs0STBkclB0cWpMcDQxQkp3?=
 =?utf-8?B?NGs4QjNYWHA0dHh2Nlk5ZS91NUU0WmZZdVQ5T1Ftem1ZbzhxN0VhdE9pbHRT?=
 =?utf-8?Q?efxFSp/gLIGOUBwWyvd095AUC?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a88e85c6-1a26-4bc3-0a49-08dbad4ea590
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 13:55:50.1583
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: I7+GuUCkbU1Lnh9wBjRdsrXLfcyLL3/EaFFKjZ58M3cNElhGkZkPz4NnyBCfAi5I32CqcWSiraRho3pnSxOQLQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7052

On 31.08.2023 12:42, Roger Pau Monné wrote:
> On Fri, Oct 12, 2018 at 09:58:46AM -0600, Jan Beulich wrote:
>> First of all, hvm_intsrc_mce was not considered here at all, yet nothing
>> blocks #MC (other than an already in-progress #MC, but dealing with this
>> is not the purpose of this patch).
>>
>> Additionally STI-shadow only blocks maskable interrupts, but not NMI.
> 
> I've found the Table 25-3 on Intel SDM vol3 quite helpful:
> 
> "Execution of STI with RFLAGS.IF = 0 blocks maskable interrupts on the
> instruction boundary following its execution.1 Setting this bit
> indicates that this blocking is in effect."
> 
> And:
> 
> "Execution of a MOV to SS or a POP to SS blocks or suppresses certain
> debug exceptions as well as interrupts (maskable and nonmaskable) on
> the instruction boundary following its execution."
> 
> Might be worth adding to the commit message IMO.

Hmm, to be honest I'm not sure why reproducing some of one vendor's doc
would be useful here.

>> --- a/xen/arch/x86/hvm/hvm.c
>> +++ b/xen/arch/x86/hvm/hvm.c
>> @@ -3771,19 +3771,24 @@ enum hvm_intblk hvm_interrupt_blocked(st
>>              return intr;
>>      }
>>  
>> -    if ( (intack.source != hvm_intsrc_nmi) &&
>> -         !(guest_cpu_user_regs()->eflags & X86_EFLAGS_IF) )
>> -        return hvm_intblk_rflags_ie;
>> +    if ( intack.source == hvm_intsrc_mce )
>> +        return hvm_intblk_none;
> 
> I've been wondering, why do we handle #MC here, instead of doing the
> same as for other Traps/Exceptions and use hvm_inject_hw_exception()
> directly?

I'm afraid I can only guess here, but I suspect a connection to how
vMCE "works" (and the point in time when v->arch.mce_pending would be
set).

>>      intr_shadow = hvm_funcs.get_interrupt_shadow(v);
>>  
>> -    if ( intr_shadow & (HVM_INTR_SHADOW_STI|HVM_INTR_SHADOW_MOV_SS) )
>> +    if ( intr_shadow & HVM_INTR_SHADOW_MOV_SS )
>>          return hvm_intblk_shadow;
>>  
>>      if ( intack.source == hvm_intsrc_nmi )
>>          return ((intr_shadow & HVM_INTR_SHADOW_NMI) ?
>>                  hvm_intblk_nmi_iret : hvm_intblk_none);
>>  
>> +    if ( intr_shadow & HVM_INTR_SHADOW_STI )
>> +        return hvm_intblk_shadow;
>> +
>> +    if ( !(guest_cpu_user_regs()->eflags & X86_EFLAGS_IF) )
>> +        return hvm_intblk_rflags_ie;
> 
> I do wonder whether this code would be clearer using a `switch (
> intack.source )` construct, but that's out of the scope.

If it would help, I could switch to using switch(), but the order
of checks isn't really a sequence of comparisons against intack.source.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 13:57:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 13:57:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595254.928757 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdA4a-0004Cv-At; Mon, 04 Sep 2023 13:57:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595254.928757; Mon, 04 Sep 2023 13:57:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdA4a-0004Co-7S; Mon, 04 Sep 2023 13:57:00 +0000
Received: by outflank-mailman (input) for mailman id 595254;
 Mon, 04 Sep 2023 13:56:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pUi+=EU=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qdA4Z-00034Y-4H
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 13:56:59 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0612.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::612])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e97153c4-4b2a-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 15:56:57 +0200 (CEST)
Received: from DU2PR04CA0350.eurprd04.prod.outlook.com (2603:10a6:10:2b4::22)
 by DB4PR08MB8103.eurprd08.prod.outlook.com (2603:10a6:10:385::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 13:56:54 +0000
Received: from DBAEUR03FT060.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:2b4:cafe::14) by DU2PR04CA0350.outlook.office365.com
 (2603:10a6:10:2b4::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Mon, 4 Sep 2023 13:56:54 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT060.mail.protection.outlook.com (100.127.142.238) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.25 via Frontend Transport; Mon, 4 Sep 2023 13:56:54 +0000
Received: ("Tessian outbound 1eb4e931b055:v175");
 Mon, 04 Sep 2023 13:56:53 +0000
Received: from 876806955b08.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 E8D23892-B9C9-4837-8F74-A6CAB91BB410.1; 
 Mon, 04 Sep 2023 13:56:47 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 876806955b08.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 04 Sep 2023 13:56:47 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by DU0PR08MB7614.eurprd08.prod.outlook.com (2603:10a6:10:31c::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 13:56:44 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 13:56:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e97153c4-4b2a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AKEnHB9nC3h0nG0gTidwgT0CvFTAyAF25MIFKgqiqYo=;
 b=F0joPjgjdSsECMpbTH7S72sc9IHS2eSibHzGn08Ttpkaz9Cj6JBQ+Ckr9/NaLQehP5Hh+pR+iURv89KX+S6KR7FBah0/q5TCd9J5ie1snBUgOiYksIM8S/XAlLkUmIRPHQYN8AkfcvN+0M0+G3yZTO8RGO3lXfLM/TdrPDqxlBA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 8e89487cd32bdd7c
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aLYo41M8SG+h6IZVOsqKb1KndyRqEdeLeyPzNb9MiRI/vTdlCZwYpin39sV3ivGvelVckQngv4ZVZsT8R4Lq2+FTE3NMYdKnJk8Cd7ICYahcLMK7kNq+z0ecRlM2h7kyIb7JRBAOEPuMTuWlUurEKBkr8UauL+V81NQEhFIoksaR74/lBB5tWJLpmYrOhU2gTNk4zXpDiIOyq9/xrQNMqX+WVjVjsDXYpJwUIxQAvxmRKAusntIE/F51BQdskn4atX0fJSnkVKz0sbXrzN2ca/YSh9hWVLxh/IJaiN3PyP7ghvKwfOVpywpgnTqYb/cWv7tDTdC0SgSNPPaFH/Z14A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AKEnHB9nC3h0nG0gTidwgT0CvFTAyAF25MIFKgqiqYo=;
 b=K+HJyUfgkDKvdr5aOxZYKiZQv1desOqSpTXhWA9vFLRp6E1jRe27GdhjTL3rP4ULTQ+KwmxIQwIsp3HeyNsXvEV7Mk0JAeuwjLRWpAZeSGfq5vQtk1Sp5RSCaA8wYV/+TiBLHVchwxNJGzKO8+lWgs0uugGJfPk8OEvJj4NqjWbr9jtvrWWXiwM9VwJFoz/baerRAVt8q+EBdvq/RqfXpkcCqz3MrnpnphaNNHSC89t8AiVv4KG+DU291THpJDrO7enmvc2pYaG/2OM1snbl/4tkbeG2ac2PKlrpfqOja+eHHWqhMXK/FxoHjNAFUd2ly3DmpB9oQKkq/wnMT4qvpw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AKEnHB9nC3h0nG0gTidwgT0CvFTAyAF25MIFKgqiqYo=;
 b=F0joPjgjdSsECMpbTH7S72sc9IHS2eSibHzGn08Ttpkaz9Cj6JBQ+Ckr9/NaLQehP5Hh+pR+iURv89KX+S6KR7FBah0/q5TCd9J5ie1snBUgOiYksIM8S/XAlLkUmIRPHQYN8AkfcvN+0M0+G3yZTO8RGO3lXfLM/TdrPDqxlBA=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: "leo.yan@linaro.org" <leo.yan@linaro.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Alexey Klimov <alexey.klimov@linaro.org>
Subject: Re: [PATCH v1 1/2] xen/arm: Add macro XEN_VM_MAPPING
Thread-Topic: [PATCH v1 1/2] xen/arm: Add macro XEN_VM_MAPPING
Thread-Index: AQHZ2/p+UpPxNbzQ2kazbqUwug846LAKt0SA
Date: Mon, 4 Sep 2023 13:56:44 +0000
Message-ID: <943B904C-E479-4FF5-B0C2-D0F329B1B969@arm.com>
References: <20230831110107.2747633-1-leo.yan@linaro.org>
 <20230831110107.2747633-2-leo.yan@linaro.org>
In-Reply-To: <20230831110107.2747633-2-leo.yan@linaro.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|DU0PR08MB7614:EE_|DBAEUR03FT060:EE_|DB4PR08MB8103:EE_
X-MS-Office365-Filtering-Correlation-Id: f1e6efca-0c33-4683-b851-08dbad4ecbc1
x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 7VJnczl371E/CVJtVRCxOTYP/OGbkp9vyzqs5+Dlh7rFekXP/5v65uFG0/j9p/SGRTjlLal8KYqoGUQfy74A7dk+6eX/Te2CF2FaP01cEAv6mO+kSybJAEmVw2V99rYHoiv0sL3z34H10CErEVWKK2T2ZNhUGcOgkQTbDowlywzFLlQv1UtM/XfByXS3VVf6CeztKqtjhAah9XdHf7k5O4rPJpecgy6ik3LlDl4vBENTqgU5rRbUwn/R259ynWcTvMfZnWZW9zLYEbOIFyJfmvERXhzoL4XY1L6hMi1WN81uUFCB5rV87mwciPfJqmpWTQtlHW8NrJL7+eIr5yWq6jEjlguv1ReEVldr2pqLR1qim/SThNOTLRXjsUE4DHFUj80kraGXe2cAXiyg0ZfW7zirbcxxcgjRp1drC3RfF44kCQRYhkSM/nn0kY4H0dWoaIcDCVN7/WIyUniufCJN8hcowcCLF/n21P5eRGssTn73eSy3yn5/gOFoC5JUvAEuMdf8snhf56rfHJotCBvfLZ9u2SFyDUzgJEcUr1VfHcQJg4v1YafpHpsLUK6yB/saSc5NY4w7c45IxLWxp/q32szxTLV9acSsouAbDBE7MsoPvetRFYKUZAGI6GzuJAoQgr6iCb9lUHrkK3ahY8JFJQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(346002)(136003)(39860400002)(396003)(366004)(451199024)(186009)(1800799009)(66476007)(6916009)(66446008)(76116006)(2906002)(66946007)(36756003)(64756008)(54906003)(86362001)(316002)(33656002)(91956017)(66556008)(5660300002)(4326008)(8936002)(8676002)(41300700001)(6512007)(2616005)(38070700005)(83380400001)(26005)(38100700002)(478600001)(122000001)(71200400001)(6486002)(6506007)(53546011)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <17739B12D2C8DC40985B9B2A921939CD@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7614
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT060.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	2b97cce1-1a7b-4760-44cc-08dbad4ec609
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gV1xWVQnkcFO578v/MuHi+9xi5+SVGR+nrOLoKyBuG4xQhui4xi5opPHDol7nWOJZA0jUG4SPiQBml9kcN9Fsb6VNqGmW0mb0rKADa/KhSQwCo5QCwQ3QVFpBlaxql5SxHHaH1oP66CBPyZiXaZEKAltzZH3mxO8kqew70ULB22IT7B3IH21Yj2+QIQ4PVAdGvNaPhGJ9cmyc7UjZRjqtDm2NrD36Oc0qIl/8g6oC6+aaRGr8YeJGVeux9Bt+UqTtblvhXRn1WEHZXfgAlJRnMtgbs7xtfuGHlDpeJQJOAgxZuASeU19VgvIOMosPTLtJKiM6f6QSBIbFviKFXeneQk5JeLew3avc6NZ7moj6gKRXlmt3h6fcMI3XYD+lIYw8+PJbrOKJNe2wi4g6PkoOxfkSW3tSveKcGXBnMFPIHd3xQNqTN+SQ3QO+dW+8r5y7gPSq/NnOf9TawIx9CVK8vrjlQIC+ajOluxFaAjFQ0nUlYO0NjzoBlDOlcf4ksxWbJBQZE2EnH6P9GzhDJdn8RoU9LWjBD9so+oQuE3ucB3FQ9UuHztq9ZLxEYnSUL4eMumVaIwQ2ymdH+wdgw+Wb+5KZ5woo0/er3UAO5s268bnh/qjCk0lLge8W3bKmKli34aX5p3rfv4SR8UjNPcVVkGzHdEQoKS31et9qBYqwrjQSWhTk09TVvu7YKpewFtDY6+KHVT7DtvNctXnax3tOXDKo26kpLsDfM0Ql/dA+Fcm0lTe15zHVC9USniWdous
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39850400004)(376002)(136003)(346002)(396003)(1800799009)(82310400011)(451199024)(186009)(46966006)(40470700004)(36840700001)(8936002)(5660300002)(6862004)(316002)(2906002)(36756003)(54906003)(70206006)(70586007)(8676002)(4326008)(41300700001)(40460700003)(6486002)(53546011)(36860700001)(6506007)(107886003)(26005)(47076005)(6512007)(336012)(40480700001)(82740400003)(81166007)(478600001)(356005)(2616005)(83380400001)(33656002)(86362001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 13:56:54.0581
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f1e6efca-0c33-4683-b851-08dbad4ecbc1
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT060.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR08MB8103

Hi Leo,

> On 31 Aug 2023, at 13:01, Leo Yan <leo.yan@linaro.org> wrote:
>=20
> Xen maps the virtual memory space starting from L0 slot 4, so it's open
> coded for macros with the offset '4'.
>=20
> For more readable, add a new macro XEN_VM_MAPPING which defines the
> start slot for Xen virtual memory mapping, and all virtual memory
> regions are defined based on it.
>=20
> Signed-off-by: Leo Yan <leo.yan@linaro.org>

As said on patch 2, please check current staging code as it does not work
like this anymore.

Cheers
Bertrand

> ---
> xen/arch/arm/include/asm/config.h | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>=20
> diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm=
/config.h
> index 83cbf6b0cb..21f4e68a40 100644
> --- a/xen/arch/arm/include/asm/config.h
> +++ b/xen/arch/arm/include/asm/config.h
> @@ -117,11 +117,14 @@
> #define XEN_VIRT_START          _AT(vaddr_t, MB(2))
> #else
>=20
> +#define IDENTITY_MAPPING_AREA_NR_L0 4
> +#define XEN_VM_MAPPING SLOT0(IDENTITY_MAPPING_AREA_NR_L0)
> +
> #define SLOT0_ENTRY_BITS  39
> #define SLOT0(slot) (_AT(vaddr_t,slot) << SLOT0_ENTRY_BITS)
> #define SLOT0_ENTRY_SIZE  SLOT0(1)
>=20
> -#define XEN_VIRT_START          (SLOT0(4) + _AT(vaddr_t, MB(2)))
> +#define XEN_VIRT_START          (XEN_VM_MAPPING + _AT(vaddr_t, MB(2)))
> #endif
>=20
> /*
> @@ -184,12 +187,10 @@
>=20
> #else /* ARM_64 */
>=20
> -#define IDENTITY_MAPPING_AREA_NR_L0  4
> -
> -#define VMAP_VIRT_START  (SLOT0(4) + GB(1))
> +#define VMAP_VIRT_START  (XEN_VM_MAPPING + GB(1))
> #define VMAP_VIRT_SIZE   GB(1)
>=20
> -#define FRAMETABLE_VIRT_START  (SLOT0(4) + GB(32))
> +#define FRAMETABLE_VIRT_START  (XEN_VM_MAPPING + GB(32))
> #define FRAMETABLE_SIZE        GB(32)
> #define FRAMETABLE_NR          (FRAMETABLE_SIZE / sizeof(*frame_table))
>=20
> --=20
> 2.39.2
>=20



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 14:01:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 14:01:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595263.928767 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdA8f-0005pw-RD; Mon, 04 Sep 2023 14:01:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595263.928767; Mon, 04 Sep 2023 14:01:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdA8f-0005pp-Ng; Mon, 04 Sep 2023 14:01:13 +0000
Received: by outflank-mailman (input) for mailman id 595263;
 Mon, 04 Sep 2023 14:01:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vltW=EU=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdA8e-0005pj-HV
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 14:01:12 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20626.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::626])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 80531bd9-4b2b-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 16:01:10 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB6895.eurprd04.prod.outlook.com (2603:10a6:803:13b::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 14:01:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 14:01:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 80531bd9-4b2b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nFrsLkDkIHDXnoKAxscV846Kq/Nefs75c8VHF+3m+sC5OWGYqvsMH1C68LcM9Q9mjYabjUbphQcouuKEV5ds6QUAn3UDmcmjSRFQRUBK+9QHJtBuleoqNnAH+MZgHT+6GZkOAts3bseyE92yaIX2Mkq2EjOAoIm3EbjIcvPTeSrBiJosoWDCA9GjeRgrBwnSwlwHdwHCylcKjENvT2QynjQaSq+Gbe13s42NymYHWTxZ7KEAmUv0cwrHZB0V+h0mZQAA4VMuEwQQS5S5Y46/15kWnKmrOrxg70ZYpecXFDP979OxvVac85EvNfkiMYJVlEPC9lUC4QH90W6fxKk/KQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8Z6URf7VbHHuZ/hH5Ul8lpeTtPS2w+QrQSYC9K0Ba+g=;
 b=KiBNZqj+iZRfyizKr1zmwHmiyEO5vO3xu/vCZZIt81WafeN65t64TIydDm1GUxGlnuna14rhXGNv8IIaJKG4E0EIGTwpsxloeCwa/pW7MB8MAfQj0NxbcNU9srob+PhQkIcKL3fC7lpjeyS+EwgIR930Ll8+d3GdJjE9JpG/raJmamm94IlhbOvJLuRJt+t8DCKSZl0AM8YhmGmL8lBVNLcLigJcwmCKjdbB2Wj3eWtxMQslPKrqlc4WuaHSKnAlYquB+d8yXyluXGSd27FOB/LV/VAK6q+ppUqTWozBQ+juvYcRDWx1mQ4ob2odYqVUFWo8kbpjxALhQUCn6+fhiw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8Z6URf7VbHHuZ/hH5Ul8lpeTtPS2w+QrQSYC9K0Ba+g=;
 b=xQim64bSgp46MwWrw4pWLESl97W1JJ5H0XEPg4NDawKppg1PxdicPqGecHehy5EeFNuKLOtTM3MI9Pq8EJCso+c+PWIwLRBkzpsOcn5/v5X0w84G7ylU/Uz5mNI8JN22ME0csWBlA0DBPNs+cTat/gNs9n04joGQDP8L9YeaD4TEWUc4YrVUoMTGKklzw+GuH9BO6jvnbiiMXaWephvkK9WBuVjmIpsLgPpttx0rXN6gt7CP5nxAztSkXKP84/DihxJxrthP0PfY/Rt7+865/iMV7S3Q5DMOX2G1MDTz9ttiXpi/Fs0qa/vHE/YLe9qFlSGnvIP80q1FH1B9mFvXbQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <03a6847c-95df-696c-5df9-53af425795e2@suse.com>
Date: Mon, 4 Sep 2023 16:01:05 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] Arm: constrain {,u}int64_aligned_t in public header
Content-Language: en-US
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>
References: <56bb2024-dea0-79e6-6a51-66e6c35a2733@suse.com>
 <7D7DA9F4-8B0B-447C-B35F-6BF53E5D0E52@arm.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7D7DA9F4-8B0B-447C-B35F-6BF53E5D0E52@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0031.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1c::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB6895:EE_
X-MS-Office365-Filtering-Correlation-Id: 51dd91ef-8c4a-4061-57a7-08dbad4f628a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	n83IzBVkYw1lro7ZljdchVB2BiZHOtGk/JQpH3mnr5P6WGAFouvx2e6jnYC/KW0W4EfifknMvMXHakChtgV5gHFabdZ8F70urFseikx9Rp9MuJc5syueJU1uABlFEuTh1ETSFRrQTgbl7e0zsbBIyPVjEyyHeENbhNHHGXESNTsAuaRJAUVYXo+btAUs5QGJTVIjAqYMjweNgC5CAaj3x0mkO9uCxhV2yE6d+HBKy+DdtybR1benpsQsYsWsjPO+cbviNETOz5/2Qsi92tafK5rS9ikQd4mZIWJdE93V2sVAva5m5xIIbGqdspGy7MG1QJdjB0hdpQ7hQgRP2gxaBBmQvp2PbJfWgVvuTLj5WdEg5FCzxaGo/p4lcNXxs453QC9NXY/LwyEDDb/MBsGqjj8SIZsX9MJFq/IWjHhsuk0I+YjwbQmjaHLewzrNr9bNu7E/ZjvRJqJVxRTu2R3BqUY1dibMJatoYiCCGjN1y0EGKixrRCDBy/JfrvVkbIGhKP9u8TVD4NH/HiEXJoSoDM/aZDsPW3x/xqWZEZeJ36sCoRLmO6K4TJoWgKwk+E0plxiWWAODzOhakdJAJIONJo4+eAiU2jiA0J6NISCcN6TkSMikbW3nfhPLzBNqeE8WivGw+JR76lBZrycOhidK9g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39850400004)(366004)(376002)(136003)(346002)(186009)(1800799009)(451199024)(2616005)(478600001)(53546011)(66476007)(66556008)(66946007)(26005)(54906003)(6486002)(6506007)(2906002)(6512007)(8936002)(4326008)(8676002)(316002)(6916009)(41300700001)(86362001)(31696002)(5660300002)(36756003)(38100700002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NC9zbFFGemdBSk9YV2thdlJsNk5Eay9aeldCdnlQUy85S1hhdXpBa3Nzd2hV?=
 =?utf-8?B?NVh3QmZEOHFmYlp1VU9LVU0xWG1hbnhHRlEyYnJjdHo2VmEyZkQzbWlpc1h0?=
 =?utf-8?B?eEY0THRwVndFVnp5WG5iNkdUTmN4VWtrTUpkN1FjbHpJQlR5dnZBUG03eURG?=
 =?utf-8?B?ME9VSFZKdnpxK1VJOWNsV21BaHRzV0FWQ3Z2UGtqNy8xcmJLQ3ZuQjY1TFZ1?=
 =?utf-8?B?V3JWK2NHN0VNSVFrc3Q2UEtuUnp5K3JWeU0xYW1teGVTYkdqQ2tma2Qwblc1?=
 =?utf-8?B?UDJZam9NOXRvancvQXdsdDFUelovMjg4WDZhaVBvK2cyU1lpby92YTVRblJq?=
 =?utf-8?B?c2FHWlhpYzVhbWFMUmc4YXordlArWmJTK0FtNElnRThydFN6aTZaZjhXeElP?=
 =?utf-8?B?M2k2eUdiMnZkZWlKcSszcDlaU2FDZHdGOTlZREdndTB5UWhGNjJIRjRxVnRn?=
 =?utf-8?B?VEpxTlJlVEh6YlllZDlUT1Y5Ui96cENva0FVTW5iTkt3Y093UWo1R0Q4ZTg5?=
 =?utf-8?B?aXlBL2RoeDJ6cDFnNnhXajNvOGlUZEpGL0QycUsxa2llc2p2QVhzT0FHdm9P?=
 =?utf-8?B?QmlVYnVZMmlvSWlxV0Z6U1NwYlgxOEVYaWluRjZOeXExUHZrY0tnQlJ3U0Vk?=
 =?utf-8?B?REppMitRRm5PL0VCQU05UTRKeDRNS2FDVHVJSVlNT1pVeE5ScVVmazN1VDBi?=
 =?utf-8?B?VS9GSGdETlM2b0pLejRpNnNLVHpuUHM4cjJxZkh2dG5ScmZzcnBuVE00TDhu?=
 =?utf-8?B?RjcvNTZhUGdMRWltdUFlTUp2ejRBUmVYYnEyL1BxbGRLSE0xYlExRkdHQm5j?=
 =?utf-8?B?SXgxc0o5QzhsZmJlcWJnd0dURXlldENmMnU3MmJvandRYTdHenlKL2t2Nytk?=
 =?utf-8?B?UFI2dlg3V2tDMDVGak95TEtKWTA0VlRzeU0zdDBpWm9LMEd1SnFhUllIaC8r?=
 =?utf-8?B?ZnJaNXdPTXlNT1RYUWk1K2ZVZTh6cEtKbFZOUEJlOEFPNjRHNVFqUWczNGtD?=
 =?utf-8?B?NE9IQmxyY0c5S2tkdlh1MGxIV1AxTnhaTTlZUTkzcGpzYXRpNjNDOXI2N21j?=
 =?utf-8?B?MFhSbXJWL3dUR2J3eVNKRnBMUXBjV0ZsL2greG5NTDRMVlJYb2pGSDNNMWUx?=
 =?utf-8?B?amllMmUwMXZaV3hIZmF5a3J0ZHJaUUJQZEFqbWZJZjZhVUlxRS9OWkQ2SWVz?=
 =?utf-8?B?TzB6cTNBNnVwUUFqNm5neXVMdEJDdERwcElrMHZlaWpwS3BWS090eUl2SVM3?=
 =?utf-8?B?K2Eydlljcm5zVFNrQkIrUlNkZXpOQ3lqZE8zQWQ5NFpNSm01dXg1LzF4SGZF?=
 =?utf-8?B?S2wzR3hyL2htd05FT1NtelhtdlZOQ2hLbWV4d2FwdkxWT0FFWEJxZGdtc2tq?=
 =?utf-8?B?dXU4QVBMOU9TNVpqUHVqclpzUjJic0paL20rVGhtanZpVFJwNEtCWTNZd3lv?=
 =?utf-8?B?cVNEaW0zSmV1ZzByQzVXSnhNMTRvS0g0UmtHZlJuZzFvRCs5a2pnV3VOSkQ1?=
 =?utf-8?B?eWNIRkJFTlRrYTdsc09JbmxwK25HaTBFeTg2V3dJUmYvWHNpOWNWZ016VlNr?=
 =?utf-8?B?ZUIyejlGM1E3dEpPTFVXZ05wSFFwVkczMFNwRElLQTZ1ODV4M3FRbmR3RzEx?=
 =?utf-8?B?cmFwTDdyNjk4RkJTQzlsSGFFdEdtWVowOFh6UVR5dUpJcTUyY2drMFRZQlVp?=
 =?utf-8?B?T0RvOFQzUVpXdmsvako3TWtLc09veW1ZOEtNZzdOaGJxNFQzbGRhS2lFM3Yz?=
 =?utf-8?B?bGhNMkloSFk2VDJMeGtUY2c1MCtOaml1aXF1T3B1STd5ek1RaUNUbmtabEtC?=
 =?utf-8?B?SytLZ2FYaWRPZ2JOZ2JxYzhvLzNQTDNWV2lkblZqMkNzSFZzY2UrV08zTndr?=
 =?utf-8?B?Y3ArSy9yaWdZY1FERUlvY3FoMFZIVWRQVlBwZjhEMEtUR2JHSXg1UTRWZTFm?=
 =?utf-8?B?ZUNibURBRzVnTkVBSTMxVi9yR1p1OTZVWWNab2p5dlFISHdYdzBibmxlK3dp?=
 =?utf-8?B?cnFrTnFCMFR2QXlpbjc2SFlqUzZ0VEpWRXFQQnhCVDY0c3dnNUdZOXNyKzgx?=
 =?utf-8?B?Sk5UL3NhVzlFS0F0RE8wZHRiemFia2VqMzBvMmJFUURlV3lGMnI5WG4wMUw4?=
 =?utf-8?Q?jffWEKK8da+XqWZ37QMrIsesl?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 51dd91ef-8c4a-4061-57a7-08dbad4f628a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 14:01:07.2016
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 2vElnbUecEHqqtIHmVf/m1Ow8Mr9/DxTT0y84ylgv4KY3uBFSfPiZBj4xvOY0Eh/nQ0a7baZx4ZWqVBsliyYEw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB6895

On 04.09.2023 15:42, Bertrand Marquis wrote:
>> On 1 Sep 2023, at 09:26, Jan Beulich <jbeulich@suse.com> wrote:
>>
>> This using a GNU extension, it may not be exposed in general, just like
> 
> Nit: Missing "is"

I would guess you would want it added as the 2nd word of the sentence. If
not, please clarify where you think it is missing. If so, then I'm afraid
I can't parse the sentence anymore with it added (i.e. there would need
to be further modifications, e.g. at the very least "so" after the first
comma).

>> is done on x86. External consumers need to make this type available up
>> front (just like we expect {,u}int<N>_t to be supplied) - unlike on x86
>> the type is actually needed outside of tools-only interfaces, because
>> guest handle definitions use it.
>>
>> While there also add underscores around "aligned".
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> With the Nit fixed (can be done on commit):
> 
> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Thanks, but I'm afraid I can't take it before the above is clarified.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 14:04:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 14:04:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595269.928776 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdABV-0006bd-Bt; Mon, 04 Sep 2023 14:04:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595269.928776; Mon, 04 Sep 2023 14:04:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdABV-0006bW-9J; Mon, 04 Sep 2023 14:04:09 +0000
Received: by outflank-mailman (input) for mailman id 595269;
 Mon, 04 Sep 2023 14:04:07 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ceyR=EU=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qdABT-0006bG-HN
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 14:04:07 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on20623.outbound.protection.outlook.com
 [2a01:111:f400:7e83::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e81c99e5-4b2b-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 16:04:06 +0200 (CEST)
Received: from BL1P221CA0001.NAMP221.PROD.OUTLOOK.COM (2603:10b6:208:2c5::12)
 by PH8PR12MB6889.namprd12.prod.outlook.com (2603:10b6:510:1c9::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 14:04:01 +0000
Received: from BL02EPF0001A103.namprd05.prod.outlook.com
 (2603:10b6:208:2c5:cafe::93) by BL1P221CA0001.outlook.office365.com
 (2603:10b6:208:2c5::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Mon, 4 Sep 2023 14:04:01 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL02EPF0001A103.mail.protection.outlook.com (10.167.241.133) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Mon, 4 Sep 2023 14:04:01 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 09:04:00 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 4 Sep
 2023 07:04:00 -0700
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 4 Sep 2023 09:03:58 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e81c99e5-4b2b-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mZOltmfR7PaYWuWegK3MZPzKqvcs4arjanyq82dVIEbxUiTTfPZl0UtH5OR3cy6YPl3Nr0rt/SuN8rDxbmyhBYQvL+tWVmW9KWmWXWdDVQZHsM9QpSN1d0QJ2dGqlOA2CoboBQjJUak+VXiPiprXhbUbkgD/zMfDcpzavnFue2QFblJ5KGHIk6hdY5S5NwQF53ufck5KIxq43pcoiCqs+DziiIkvWYm6rGgQmzNTGIce7kyZ/Ci4kHtgZyN36p0BM7wFKD/USYg27jDE7Qfxinv4peCrgJNiel4RnmQJk6FfZy/F61EEy7pui/rJm4PzXxVwrnj4AKA/IBylkwJRvQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WP8xNuXL0PAriXUf5AHCn8c4rfj0NpsovbDCdgUptzM=;
 b=bxwyE6sTQtLxEwl9hPJBCiYKv8Xh3xIWFnBRPdo4mEtl4wZ7Rvq3hcwSpnPQB784gfNDJZ4Mx98JxKqD57+167SUvT1cUYWl/1W2VY7FJq9P4TS96uXEk0Sqw/QcQh/YC0cthNq0IwL0QXfXWFUYYp7fLYhRKJotAMeXD6mMPOKJpLjKRaOcbb5jIzUq0hJdruiEn1vPvE5j4TWFObQABnWz1jwM/3bK4XNZ/iXRsTShApkJAmp539idWaMge73ij6cGvaAMKrsvjkkfIdLGJUHbcqWR92tStH04EAQBEdqX8ECjOXzhQmqjOI/dR0qYxynj6K/kmFEi3K2QkF7Ckw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WP8xNuXL0PAriXUf5AHCn8c4rfj0NpsovbDCdgUptzM=;
 b=MNmZpaXOWIxSuYO1+TbfmWprILmcQDMvfyYr/Z5otamE0mSSL+aZZqCCYPaLBL6uPmEdOo5HpzMk/Sm2MtyUz10Jujo6ZWmGw+ir/3Cp1sKCznJlklAwPJz8N6hcTfHTLt20HIi66KbfNln0pXYYvpGJHyngDk5ejafnoQcO86E=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <3538634f-61df-efc1-e45c-ba4c01b5014b@amd.com>
Date: Mon, 4 Sep 2023 16:03:53 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH 2/2] xen: Change parameter of generic_fls() to unsigned
 int
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	<xen-devel@lists.xenproject.org>
References: <20230904091406.942-1-michal.orzel@amd.com>
 <20230904091406.942-3-michal.orzel@amd.com>
 <ec00892f-d9e8-1095-fb27-c344caa6aa28@suse.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <ec00892f-d9e8-1095-fb27-c344caa6aa28@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A103:EE_|PH8PR12MB6889:EE_
X-MS-Office365-Filtering-Correlation-Id: 30ae584a-0806-4093-2027-08dbad4fca99
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	U+X2mD5qo0xR/GTXpAGnDelYE+cFdfUMO3B93bHfLYw1PsXiaDBDC6WrOaxhlssTdtxBav784Ha7RshrXRWwgctAFq5ep0dD+rFTQXBed66BgFDJfud/0TvR0NJzaGY+/Z3Jk44JayVKP8kE8/zoWe6tOIugBYMFk5kycgMZeu+awfiwEI6aq76z8VHVlvm9ri29CbIJyh2Pyo8RUpK8zpx5CMoxDb+qDvFwNf0h90DwuOfjYaE18bp3f9J9vNlXC1MFQcy4Rv7U19BPPiX+mdOwXmh5kawev3xWUHvCmh4fz6wMAUqn1xDCpCwfxCgYWM4HxE5XWwpwEdHJOtcgcQWIrtI7FqkpxOL0rQu7oy5V0sPKxvtgLgf3UP1L2doEk4RVMqY0fEF0lospPkSfiXd8RDthIiC61Z4JXgNaTaQXrD6A4eWA77c/a3+Fktb8MSIVAhxyQaCKSnD4wIAfjDKQD0OdnjJqeqzCLqGEdoZfEFYAGngUMsf2pCXRec3ZJZU54QA79su36K+BFnP+lThJo5KAEDOQz6UkosgFJ+o5p4+5gCaXe9Q9XXP+DSQtZGAKo/uE2CNWQpf8hbP81UjcJp8oWGUVYBRR/AkTOWzEXrtOnHWbjYIX+iIw7ejxwBm6MhZDr9L/5xMEpAfk3/wbsTL2oBdeEl1vVHOFEId4EFzFybgupfQ6p+mUm1Ac2NI3ql5FtyYLGSfZeUYg2ga41c4yLycNY1cGAqjcQ6gxphRLZdACeO/NmRcPM8h9oQANoVXXD+u8ESrIVbPLK+k14Bk9hl2qfykSvTKGp9BToo9u30xQF8SJ3SjyD31wo6rPYeVWg2WuAEw9CkqeUw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(39860400002)(396003)(136003)(346002)(186009)(1800799009)(82310400011)(451199024)(36840700001)(46966006)(40470700004)(40460700003)(41300700001)(26005)(356005)(82740400003)(6666004)(81166007)(86362001)(31696002)(478600001)(2616005)(336012)(47076005)(53546011)(36860700001)(40480700001)(426003)(8676002)(70586007)(70206006)(36756003)(2906002)(54906003)(16576012)(6916009)(316002)(8936002)(5660300002)(31686004)(44832011)(4326008)(41533002)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 14:04:01.5642
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 30ae584a-0806-4093-2027-08dbad4fca99
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A103.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB6889



On 04/09/2023 15:28, Jan Beulich wrote:
> 
> 
> On 04.09.2023 11:14, Michal Orzel wrote:
>> --- a/xen/include/xen/bitops.h
>> +++ b/xen/include/xen/bitops.h
>> @@ -51,7 +51,7 @@ static inline int generic_ffs(int x)
>>   * fls: find last bit set.
>>   */
>>
>> -static __inline__ int generic_fls(int x)
>> +static __inline__ int generic_fls(unsigned int x)
>>  {
>>      int r = 32;
>>
> 
> Even if perhaps not affected by UBSAN, generic_ffs() then wants taking care
> of as well, imo. If additionally you switch __inline__ to inline, things
> will become nicely symmetric with generic_f{f,l}sl().
If others agree, I can switch generic_ffs() to take unsigned as well (together with s/__inline__/inline/).
However, such change would no longer fall in fixes category (i.e. nothing wrong with ffs() taking int):
- is it ok at this stage of release? (not sure but no problem for me to do this)
- is it ok to mix a fix with non-fix change? (I always prefer fixes to be done as standalone changes)

> 
> Another aspect that may be nice to take care of at this occasion is their
> return values: None of them can return negative values, so return type
> would better be unsigned int.
Looking at all the variations (including arch asm specific) of helpers to find first set/clear in the codebase, returning int is the de-facto standard.
So, this would result in some inconsistency or require changing at least the direct callers to also return unsigned.
I'd prefer not to be required to add this extra churn at this release stage.

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 14:05:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 14:05:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595275.928787 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdACs-0007DJ-NZ; Mon, 04 Sep 2023 14:05:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595275.928787; Mon, 04 Sep 2023 14:05:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdACs-0007DC-Kk; Mon, 04 Sep 2023 14:05:34 +0000
Received: by outflank-mailman (input) for mailman id 595275;
 Mon, 04 Sep 2023 14:05:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pUi+=EU=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qdACr-0007D4-5d
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 14:05:33 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062b.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1c33b23f-4b2c-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 16:05:32 +0200 (CEST)
Received: from AM6P192CA0073.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:8d::14)
 by AS2PR08MB9246.eurprd08.prod.outlook.com (2603:10a6:20b:59e::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 14:05:27 +0000
Received: from AM7EUR03FT038.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:8d:cafe::e2) by AM6P192CA0073.outlook.office365.com
 (2603:10a6:209:8d::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Mon, 4 Sep 2023 14:05:27 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT038.mail.protection.outlook.com (100.127.140.120) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.22 via Frontend Transport; Mon, 4 Sep 2023 14:05:25 +0000
Received: ("Tessian outbound 0b7d6027328f:v175");
 Mon, 04 Sep 2023 14:05:25 +0000
Received: from 51071459adc9.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B1BEF1F6-9D5B-4AA3-88A8-8D6B41B41668.1; 
 Mon, 04 Sep 2023 14:05:19 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 51071459adc9.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 04 Sep 2023 14:05:19 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by PAXPR08MB7394.eurprd08.prod.outlook.com (2603:10a6:102:2bc::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 14:05:15 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 14:05:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1c33b23f-4b2c-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1KhdceH21n5rvRVhrcBVV+X1di3f8F+BTWVfSrxx2T4=;
 b=MYnBu8p+yCtZD4wFJRYaHOTPlJLg9oMZAAABfS5XoAmGIMY3Edl9MynWyQhhCYK7AsxsKfuVkVVdbhbr37yD1idfIopoQsFOWwR5nyiCcaaQ8G08bGIivOgCmm8tgkhW7kDC6+LlHthGC6v5lzUWBvf8O5ySMz2EaV4qVCFuQ7U=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 17e4905d768ba8b8
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TP57lmiLEk+2sR5USfNuSuyz06dywob5Vk5F22IKnXCXWz/NGwt1qVKIxJvXyVOovAvHHFf9NO+H5oTvUBHl3BJU4DJnhuFSZkMMEyRDmk9kFKqKA4rkrJh2Moyw//fcGIGmVyGBBcx8bB3bkL+dlWR32u5+zIq6B6/lAJkHAtdA9LKqi6kKw8+F2P0UzNSBjfZQLdekPAoU9sxk3zgsnb5v16bSOvVvHVLsZNMjqXS3kgXDQoNUkUPOSfPA8T5+cCbMI13/qB6l5/bhM1PYONiyoeWSHwFXiDUVaQQ/sFKvNvhVhKbomx/px1y0BVUV5cEzaU4Qw5qHlJUn7C4m7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1KhdceH21n5rvRVhrcBVV+X1di3f8F+BTWVfSrxx2T4=;
 b=YmZicxleHz/2TCbD7Akb6Ci3IPEMZ1lCQyElanJPCfP2XUuIHiZYw+X7vh0dALds36lp4uDWCkcjjqsOHjlq4BaKo+oMgEz1IrWWBZNREiey2DW87+QyRbUj+gQtKTFzmZqhDces58MRsNP/fUbuZ41WeMMPxKt+gDHsBx/Ah9pqgLcStOV+Y2k2omicCJaq1ri7u3qf2/lclH3Xei1VntQSKYHn2mCTu2bnQvcg+Y3iSeq3PxHiAjzXkV/0hZjkuFk6BAs+EdVxUBJhC16vpbGR0Ph/MdE+Ui16xCAnfX/oX+75fZG8CZEyfMgEYnjngZykMWzWrMKyJM+uIZ+5yg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1KhdceH21n5rvRVhrcBVV+X1di3f8F+BTWVfSrxx2T4=;
 b=MYnBu8p+yCtZD4wFJRYaHOTPlJLg9oMZAAABfS5XoAmGIMY3Edl9MynWyQhhCYK7AsxsKfuVkVVdbhbr37yD1idfIopoQsFOWwR5nyiCcaaQ8G08bGIivOgCmm8tgkhW7kDC6+LlHthGC6v5lzUWBvf8O5ySMz2EaV4qVCFuQ7U=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Julien
 Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <volodymyr_babchuk@epam.com>
Subject: Re: [PATCH] Arm: constrain {,u}int64_aligned_t in public header
Thread-Topic: [PATCH] Arm: constrain {,u}int64_aligned_t in public header
Thread-Index: AQHZ3KWtdw8jwJKuHkKXZbII/FmnYbAKsd6AgAAFVICAAAEdAA==
Date: Mon, 4 Sep 2023 14:05:15 +0000
Message-ID: <F05B7AF7-94CC-4AEC-9633-20F34F2BB458@arm.com>
References: <56bb2024-dea0-79e6-6a51-66e6c35a2733@suse.com>
 <7D7DA9F4-8B0B-447C-B35F-6BF53E5D0E52@arm.com>
 <03a6847c-95df-696c-5df9-53af425795e2@suse.com>
In-Reply-To: <03a6847c-95df-696c-5df9-53af425795e2@suse.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|PAXPR08MB7394:EE_|AM7EUR03FT038:EE_|AS2PR08MB9246:EE_
X-MS-Office365-Filtering-Correlation-Id: aafa58a7-256e-482f-2f4b-08dbad4ffcd6
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 7tv6WmRUO9F9sPsG4lm9LcxHEwe0QAKeK33ACnqcbYLnq3untnNY9AuxoPqvocF1+AJDtQ4VS91H/w5HKaO0HMcjHEszUWTER6oMLcasUE1dN8VTcnQrjujkfTfgUnMzVOKJKu9Nzd3QMTeC6uN5Pon3g8WyoPVa9bBCQ1S6THhQ5VAi2hZ+BZg1wNxmB2MB2fVGTvB5oN6n5eFPw3aGGEYYr83Pow2vyqKDjP7gpBwFD7U5s6tFGfl9V2KGEZGtR5Wjw04riy/Fh3JfTQq4NcuHYQkuWC0ZFp/wcT4X0fWJxLFDDM5rOY4EH1u8GFaKEsY/31DLdRXxql+Gx3TOwRAQyZStM02mVd2BruLWrxEPK3BQ3A2o7Vimqmga0r29pCMdrMvfeExtcapm/ipIWXUOtz3bstCVqxQN9v29NJyx2+d6nhX9ClMtf5sXpKRGXZghy+GzwsJiCbUZJPVEbW0Nrg3z0xgEumwH2dNNG5NfhZR+WL11p563TsXm/7dyHFIEG4335XN4F1weiPd42oGbVSobRxaGfFkirIbn2wA5AuWSwiiOCyqyoOFaIm2AMuRQLe4BkTZSBa9WecGM//xE+EIEEbnY0u9esvTh0+B5e5IhSUjPRgVEyhxMmePt1qXUkdlVd4ACWVe86CBdwLtAbM33JpE6AoeJKlWpp3fDNZhZq7cj/FHgNanjF7E4hX/lsefmHfl2oxveSsn1uw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(346002)(366004)(39850400004)(136003)(451199024)(1800799009)(186009)(38100700002)(38070700005)(122000001)(33656002)(36756003)(5660300002)(86362001)(41300700001)(54906003)(66556008)(66946007)(66476007)(66446008)(2616005)(76116006)(26005)(64756008)(478600001)(91956017)(71200400001)(6512007)(2906002)(8936002)(6916009)(8676002)(4326008)(6506007)(6486002)(316002)(53546011)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <28B621AA95AC8C4DB98C638504957E5C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7394
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT038.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	3bea6179-0ee7-4b85-b941-08dbad4ff66a
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BARVmYisVU639TISwa2iZR1c7lqWICmLfaUht1RUZSdQziRkOvjZhU9Xzph2Ghx+Hyxoxg2XdMN3Ac/DS5Qtwght2TVbkDGx9j4+RnU5yQig1nzhGscsfoXetGPIjwivsHS4+YK/iZO1pRtoh+hWfmGrVg/ty9HNgBPd/YVB/ZyLMR6cYmBYz18d+MQsqYrBZQbRfQ8lYVi3dy8JR3wHEfOkr/u7LF54+2d/8RQHMn27+S/l71JZnKhlHsVkAhWstsikyNW3HFvTLauOF6t4D8KxX3SeLhwt6G+g0uKaowSmbrbZQ2m92Org+WzlzYjoo2B0jqTmt6phn5d4BgqCR5kNf9uH50IEKKoOuxaoGkFyxZlbv+NPHWkMEceIYAcd6a1lOZ6bFbs8ehmfxiQDltsylcvn2VR/k23+x/XQNUDXJ0qiAPENq3vyXuGREI2ZQBakTyT5qRYIDyC/pjdPEbzfSZWb017WP8S4g9VyETr7wCQiPQTiKH4tgEx3Q3ApvWdhvW9cM2s7h2LP+QRUcD7R8ysysHUk4wjZL7XI0U4wLsDhbFjID4ALyOnh1ReH8f8SGZ2kXiTWOxDPCOp6y8iX/vPc3NzNq25H4UY1l5iHYUpFBdo/cqKDbXkLaeHlwyWAzaNHihYhmcGFFhKOPw1nB4mfcF1qZkVf2dLtPwfZ7VX7EYWmOxkuBx0FEi5vvD11MIJg7VIJiH+zpw6C3h9KhaQp1nDEvkDWt2hyer5JtT9tS2vRmiFZrx1mNYfm
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(39850400004)(136003)(376002)(82310400011)(1800799009)(186009)(451199024)(40470700004)(36840700001)(46966006)(40460700003)(41300700001)(356005)(82740400003)(81166007)(33656002)(86362001)(478600001)(2616005)(336012)(26005)(107886003)(47076005)(53546011)(6512007)(6506007)(6486002)(36860700001)(40480700001)(70586007)(70206006)(54906003)(2906002)(36756003)(316002)(8936002)(8676002)(5660300002)(4326008)(6862004);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 14:05:25.8349
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: aafa58a7-256e-482f-2f4b-08dbad4ffcd6
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT038.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9246

Hi Jan,

> On 4 Sep 2023, at 16:01, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 04.09.2023 15:42, Bertrand Marquis wrote:
>>> On 1 Sep 2023, at 09:26, Jan Beulich <jbeulich@suse.com> wrote:
>>>=20
>>> This using a GNU extension, it may not be exposed in general, just like
>>=20
>> Nit: Missing "is"
>=20
> I would guess you would want it added as the 2nd word of the sentence. If
> not, please clarify where you think it is missing. If so, then I'm afraid
> I can't parse the sentence anymore with it added (i.e. there would need
> to be further modifications, e.g. at the very least "so" after the first
> comma).

Sorry yes, it should be "This is using a GNU".

>=20
>>> is done on x86. External consumers need to make this type available up
>>> front (just like we expect {,u}int<N>_t to be supplied) - unlike on x86
>>> the type is actually needed outside of tools-only interfaces, because
>>> guest handle definitions use it.
>>>=20
>>> While there also add underscores around "aligned".
>>>=20
>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>=20
>> With the Nit fixed (can be done on commit):
>>=20
>> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
>=20
> Thanks, but I'm afraid I can't take it before the above is clarified.

Please see above.

Bertrand

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 14:51:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 14:51:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595284.928797 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdAvV-0007NR-5m; Mon, 04 Sep 2023 14:51:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595284.928797; Mon, 04 Sep 2023 14:51:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdAvV-0007NK-2Y; Mon, 04 Sep 2023 14:51:41 +0000
Received: by outflank-mailman (input) for mailman id 595284;
 Mon, 04 Sep 2023 14:51:40 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6iaL=EU=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qdAvU-0007NE-9d
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 14:51:40 +0000
Received: from mail-pj1-x102e.google.com (mail-pj1-x102e.google.com
 [2607:f8b0:4864:20::102e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8b23a40e-4b32-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 16:51:36 +0200 (CEST)
Received: by mail-pj1-x102e.google.com with SMTP id
 98e67ed59e1d1-26fe4997871so601935a91.3
 for <xen-devel@lists.xenproject.org>; Mon, 04 Sep 2023 07:51:35 -0700 (PDT)
Received: from leoy-huanghe ([98.98.49.29]) by smtp.gmail.com with ESMTPSA id
 5-20020a17090a19c500b0026596b8f33asm9857731pjj.40.2023.09.04.07.51.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 04 Sep 2023 07:51:33 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8b23a40e-4b32-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1693839094; x=1694443894; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=IMXteDfS81V7Qlzz5HpuyJ9OfkKMENRaE66CVAPvD58=;
        b=lBM8sgRw9+xziQTLTJYti5+yPtZTRNcnFZW3UdlaAzgRlhNhWxKZrKHrso16tTm/wI
         kGu+j3lwpmTmwdo3KeRVpeBbuzt3rQoAh9ufgB+s7qGs7/J9G/wDwXhVmZl9CTI2a1b9
         f0KqQrSRmBiNac5byuerut60zEnO4TfGkATaPy0W5tNQ2tceTyUjRY2zuBj6oLstcZQO
         HP9SKKQlUtTqk5w0gOXJYoEKsmWThJoLSaR7MToilJAZgztNORhYZyGK2mBRG/COfTW4
         jLDLNY8vIMNjM+/lnif66nn6+er75k/0GTLIyUJpMgEYYbMJoKJXsJVQJsvqBtePJp/h
         tiuA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693839094; x=1694443894;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=IMXteDfS81V7Qlzz5HpuyJ9OfkKMENRaE66CVAPvD58=;
        b=dwllEyhWYXzqBqU1YsMN+fSKnW143qlW8iqYszuCo0QNMHe8Tl1SW0VR5trBkiqtf5
         wyR707tMozwvALIig29DuhiGFAS9/3Ndusp+pJ1/7GyLt3/t00YwmGDB86Lnh4z7Wl6z
         A4Wp9GNxjzgEzNOzTNiZ9bHDt6JxZu/2Qqyt4Z7qYn6tl+ZnxA/BPWXRjk2XgOFekiJv
         zebs9CUHsC3xdGuGNvs/kHyZgQp3BmUfK7VFD9/gXcihaA7PnSBlgdPDReO5jezE+n8K
         1w2JserfPSTa50dU//oWnp/6LaaYU8ahbJrVt4Tbq2bLUeB0NFcG5WrHhg6JbJpe1OUG
         zi+g==
X-Gm-Message-State: AOJu0YzufMYPiX/yB99O8u2fMram8sjn0DDuPsdkfRpx/PwEtJRPtDqX
	VYYrAn/LfV3w0fKR45zxc49PvA==
X-Google-Smtp-Source: AGHT+IHtkuS3ZlkzSMGPsrHQjZV/cG8KYJb1TgngMVovIqfXtTZUYUP8dFm0RLYCaPNsmFpjW1orQg==
X-Received: by 2002:a17:90b:909:b0:268:2500:b17e with SMTP id bo9-20020a17090b090900b002682500b17emr7508664pjb.23.1693839094310;
        Mon, 04 Sep 2023 07:51:34 -0700 (PDT)
Date: Mon, 4 Sep 2023 22:51:30 +0800
From: Leo Yan <leo.yan@linaro.org>
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>
Subject: Re: [PATCH v1 2/2] xen/arm: Enlarge identity map space to 127TiB
Message-ID: <20230904145130.GC114383@leoy-huanghe>
References: <20230831110107.2747633-1-leo.yan@linaro.org>
 <20230831110107.2747633-3-leo.yan@linaro.org>
 <338BB8BD-5B22-4201-8411-4836B5768AF4@arm.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <338BB8BD-5B22-4201-8411-4836B5768AF4@arm.com>

Hi Bertrand,

On Mon, Sep 04, 2023 at 01:55:12PM +0000, Bertrand Marquis wrote:
> Hi Leo,
> 
> > On 31 Aug 2023, at 13:01, Leo Yan <leo.yan@linaro.org> wrote:
> > 
> > On some platforms, the memory regions could be:
> > 
> >  (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
> >  (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
> >  (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
> >  (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel
> > 
> > In this case, the Xen binary is loaded above 2TB, so Xen fails to boot
> > up due to the out of the identity map space.
> > 
> > This patch enlarges identity map space to 127TiB, which can support the
> > memory space [0x0 .. 0x00007eff_ffff_ffff], thus it has flexibility for
> > support different platforms.
> > 
> > Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
> > Reported-by: Alexey Klimov <alexey.klimov@linaro.org>
> > Signed-off-by: Leo Yan <leo.yan@linaro.org>
> 
> This is not based on the current status of staging where this part of the
> code was modified.
> 
> Currently Xen virtual address is at 2TB and the extension you are making
> will potentially make it possible to load Xen at 2TB which will clash for the
> identity mapping handling in Xen.

I will check the stage code if this patch will introduce any clash
with the identity mapping handling.

> Please rebase on the latest staging and check there how you can do as
> this patch if rebased on staging right now with rightfully end in a compilation
> error.

Sure, I will rebase on the latest staging branch.

Thank you for suggestions.

Leo


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 14:59:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 14:59:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595291.928807 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdB2j-0008If-Uy; Mon, 04 Sep 2023 14:59:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595291.928807; Mon, 04 Sep 2023 14:59:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdB2j-0008IY-QF; Mon, 04 Sep 2023 14:59:09 +0000
Received: by outflank-mailman (input) for mailman id 595291;
 Mon, 04 Sep 2023 14:59:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vW96=EU=linaro.org=jens.wiklander@srs-se1.protection.inumbo.net>)
 id 1qdB2i-0008IS-OW
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 14:59:09 +0000
Received: from mail-lf1-x130.google.com (mail-lf1-x130.google.com
 [2a00:1450:4864:20::130])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 976d12fe-4b33-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 16:59:05 +0200 (CEST)
Received: by mail-lf1-x130.google.com with SMTP id
 2adb3069b0e04-5007616b756so2628623e87.3
 for <xen-devel@lists.xenproject.org>; Mon, 04 Sep 2023 07:59:05 -0700 (PDT)
Received: from rayden.urgonet (h-46-59-78-111.A175.priv.bahnhof.se.
 [46.59.78.111]) by smtp.gmail.com with ESMTPSA id
 x17-20020ac25dd1000000b004f8555f7aa1sm1776516lfq.52.2023.09.04.07.59.03
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 04 Sep 2023 07:59:03 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 976d12fe-4b33-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1693839544; x=1694444344; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=DETKmXdreaA56VxK1iMyBUC33tuEXPpiM3LXEY1tnSQ=;
        b=dfIw89eJJ++Oghgq/vpthtcAKE7NkDWOB1xUJl2RlmbflTtnaXgtdym8weVLtHAnFK
         QrNeMyffODObwCVrVXfELLA2h5r0KQOpHpcubd7SVybsCiJrpQjL2a8zNCD7A8vaxfQk
         pVu1bx9+SDcMCKYB4lj+RU/T0wG3w19ChjNSKrE5ns/RPH3h6JbSbTpLI6VaCzaxJLXE
         3mhpV+25xuQpUku4T242IQ27nRUNvQN/n0MpYkf3hyLyjwlldbGReqnwwuIvh7ZfDF8G
         ys1MgRX8EeqPgRoIn+jQGZwzJkyGiua3tCBlqa9vHSxUCYTvHppdiqG11BhrH6tnU0a8
         G2og==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693839544; x=1694444344;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=DETKmXdreaA56VxK1iMyBUC33tuEXPpiM3LXEY1tnSQ=;
        b=deHlLUTrnuqQPP0xlaQmAybdXXGEOL/hhphvqZ7+nV4i9YRykq3eqSDHyEkqv7XqNz
         GHGgXQczqLcSqKr5qpLA0UuC0iM0MvHprnkYBXGggM/4OcyQ6okKrPE7LN56TAsCBjO+
         IkZsV0Ac/Sii/SN0ErU7ztOGnFE13RhUizxSLI33j1PXCwBKodLYE6MUEUHIysjBof2M
         qWPSJyWX3wcYNJDnZdIsfB2Xum9PHm2oF2a62u93EpcFgARj7bVrmy0DJLzLzQe1eP+h
         mJ56AhnRnquke9BhADX7we09YFjZ6Xfk8vJWBew9whjjSeE0nnTRHET1ah4K5lQ7Tev0
         hm2Q==
X-Gm-Message-State: AOJu0Yxz6efxPyRlbnqEj/E1pLWSLDct6Q6E3h486sga3b0cWj/eDUQz
	DwOE89r820kH3FGmWtMyxp16CZdtSD/rdzijKhM=
X-Google-Smtp-Source: AGHT+IEhWv35Vh5ZFMbh4tfTmuPJLZjlMeJjdFcjsDT3Qgn/uXG/LGGWSyWfzJZIL4b9dht3XKAsnQ==
X-Received: by 2002:a05:6512:114d:b0:500:b5db:990c with SMTP id m13-20020a056512114d00b00500b5db990cmr9223219lfg.57.1693839544061;
        Mon, 04 Sep 2023 07:59:04 -0700 (PDT)
From: Jens Wiklander <jens.wiklander@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Marc Bonnici <marc.bonnici@arm.com>,
	Achin Gupta <achin.gupta@arm.com>,
	Jens Wiklander <jens.wiklander@linaro.org>,
	Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>
Subject: [PATCH] xen/arm: ffa: fix guest map RX/TX error code
Date: Mon,  4 Sep 2023 16:58:14 +0200
Message-Id: <20230904145814.2534808-1-jens.wiklander@linaro.org>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

FFA_RXTX_MAP is currently limited to mapping only one 4k page for each
RX and TX buffer. If a guest tries to map more than one page, an error
is returned. Until this patch, we have been using FFA_RET_NOT_SUPPORTED.
However, that error code is reserved in the FF-A specification to report
that the function is not implemented. Of all the other defined error
codes, the least bad is FFA_RET_INVALID_PARAMETERS, so use that instead.

Fixes: 38d81e7ccb11 ("xen/arm: ffa: support mapping guest RX/TX buffers")
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
---
 xen/arch/arm/tee/ffa.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/arm/tee/ffa.c b/xen/arch/arm/tee/ffa.c
index 802b2dbb1d36..183528d13388 100644
--- a/xen/arch/arm/tee/ffa.c
+++ b/xen/arch/arm/tee/ffa.c
@@ -706,7 +706,7 @@ static uint32_t handle_rxtx_map(uint32_t fid, register_t tx_addr,
     {
         printk(XENLOG_ERR "ffa: RXTX_MAP: error: %u pages requested (limit %u)\n",
                page_count, FFA_MAX_RXTX_PAGE_COUNT);
-        return FFA_RET_NOT_SUPPORTED;
+        return FFA_RET_INVALID_PARAMETERS;
     }
 
     /* Already mapped */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 15:13:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 15:13:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595299.928816 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdBGW-0003Nw-7L; Mon, 04 Sep 2023 15:13:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595299.928816; Mon, 04 Sep 2023 15:13:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdBGW-0003Np-4i; Mon, 04 Sep 2023 15:13:24 +0000
Received: by outflank-mailman (input) for mailman id 595299;
 Mon, 04 Sep 2023 15:13:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vltW=EU=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdBGV-0003Nj-3h
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 15:13:23 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20600.outbound.protection.outlook.com
 [2a01:111:f400:fe16::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 953a6f52-4b35-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 17:13:20 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8713.eurprd04.prod.outlook.com (2603:10a6:20b:43c::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 15:13:18 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 15:13:18 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 953a6f52-4b35-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UgmePPzp4fVu3nhPfbKiawtIaTLPz3ufvjyjnU/UY1x6871mNIY3umaw1dI0sk2fg4Ot2s6xpZBSfGMTTFEfcwrZLLA25L/f5fv/EAncQGB6cjL4x/pAbhRB42O6KjobqvSJsCnXJEGLmF6QT7MvmWYB01el1SKEaMJMqK9XNygKrvDMU1TE3spE/f+hkysJhimqeqUp1LWOu+LvKG0t9UoOaw9zbMuP2IgFKOQ8BAKfSg2vDoW28hLy340YkCWYeB3RvrrQBqbuV2kpbpDXwJQ8UFvLu2IidyHNP05cZ9pFNoXO1WbErh2xfzdSLWMnFYEHfju519nGI+zJQqdI8w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=S8JIv6W7EpN3kT49oRVmaUamLPtPsejDWu/lj6gh2BA=;
 b=CgF7tMy1J9FMGtWNN4WsIbgWyikmX2l6TAghIuN2gR+usMj+DvEam4MBAN22wiqmMtJ+j8goyGzzLeY4Gh/7DRL8TUnrKrEO7XqD40MX5quD6Okkf6+sAh9wIKuIpd+y2cP4wiMq2FbP02+I5M13ph1bt1FL+OHPPfNGiyYDLPQUkfSzR5144JRVBko5lFhr1vjoKD+8V56R+YPcVd3PxFHRlIU+G2nhwfZWPomRgQ1s41SjT6KprT0w1KJ+rHOv05H6EWAj0F8/SOeGshA4xn2EhhgNItbvEE9AFVvACWoxSr42IcJNZzxXcI3cJ6OTkDWvRJQ358qZfTcCJqeJ0A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=S8JIv6W7EpN3kT49oRVmaUamLPtPsejDWu/lj6gh2BA=;
 b=pys24PGKfy/bw2VCR9rToEmqgsTx5oOW9Y78YN5YWUWzAcYEzYFr+gOMhdlOiMgA5XY8UTJtszAvfuzzQgBtu9tChIxmNmBKxCwcbVcJ01VBgeh1x2oBp5ufn7eRIVK7PN9QeqHJRpXoMWZL9uhH4CoX/QaMLSAPL/LhCrVMghQCDUXVHuhs4D2Dle9CEB/h2jh2kLhHs8w9SaSFaj0ZK/DYgFr1z52qR0Odva5oGSpoXDsbWLWOb91MFZHF+j9R2AoqSfrVjUFoso1oITCOjGLfqrXnIt17S9yQ6WR9dHJFkUOI/kSr9u24z+Gxm7YXpOd8x7xmZw/SFbLG5v7iPw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c4c3f708-b3f0-3028-ca3a-6661d0f78d56@suse.com>
Date: Mon, 4 Sep 2023 17:13:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH 2/2] xen: Change parameter of generic_fls() to unsigned
 int
Content-Language: en-US
To: Michal Orzel <michal.orzel@amd.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230904091406.942-1-michal.orzel@amd.com>
 <20230904091406.942-3-michal.orzel@amd.com>
 <ec00892f-d9e8-1095-fb27-c344caa6aa28@suse.com>
 <3538634f-61df-efc1-e45c-ba4c01b5014b@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <3538634f-61df-efc1-e45c-ba4c01b5014b@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0094.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8713:EE_
X-MS-Office365-Filtering-Correlation-Id: 5ac5e986-65f0-466d-0a41-08dbad597834
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gwnorqj3uKhJioDhlhCnqZWWrAg4QRKUj87ApUkldmFjhdAKOQzjNSW1ym5gahUtkmzGjYqhhzR3vZdyKtU85kQhv1GK5PPRRd6GRo0g4B+82GoV4UkKRDPnXem9h76zAqrQ7ELJNGhu7VWcNihBqhqjD2uqk8U+ewaxqXpdNgnUiwJZDV4iYpOZe1A5ow6sAxKnkP3kaetxo7lBpvA1zKFpSpvfLvCWZezoUqkvxYaP07jEKA/SfdASK3aUhoY82ifZSHON8ktPhKNwix2/Ks4FApRmd2V/JA4KJ7SrqFfWyQ5xUfGija9usHmFqYpg3XH4pHZ04H5VYNdwB59KWxYFF0eL6bwvWbjIG5p88hra5bUUTGw+sRGDzItFNCPwjxvmPSnZUERY/vamFQtosclawf5VRwiybhKTmlerowS0kgXLamxPB+0o1oSy+wjCNwa/k/LN/qf8roAeG6Elrb/39ca82Fli0dMqvonfsnN8sXMO+XvnLYd3AnnA94pHxQbzV7sa9Nb5iEEoosxD6LfeOHq5TjMVUqoSIUKzDg12Lx6HUVVnJiIj5COvPIpaUJDBfcHxvBmQzaqoXhgwAv78xLebLx+mxqUcO3v6p2ej3VQ8RkXFc4FfCmdfVMHgaNW2LTS00ShzwOqIaRCNg9ri9Ad7HuagmrXEwzaiKG4=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39850400004)(376002)(396003)(366004)(136003)(346002)(186009)(1800799009)(451199024)(41300700001)(53546011)(6486002)(6506007)(478600001)(83380400001)(2616005)(26005)(6512007)(38100700002)(66946007)(6916009)(2906002)(36756003)(66476007)(316002)(86362001)(31696002)(54906003)(66556008)(31686004)(5660300002)(8936002)(4326008)(8676002)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?c0pKa2VDOGZ1MDNxNzhTZVRTT0x0ajNPM0xoZS83Nm5OWTJhV090aWlPQ3Fr?=
 =?utf-8?B?U0d3eGRTK1BiSUxUYkZQemxlT2pQWW01aklDWTJBTWdCaFVxRjhndzJSdm43?=
 =?utf-8?B?QTdrWVQ4cmZVUVhCcm85eDdsaEpvM2lPcWZ6cGhCOTBJcVk5dllMZTRFODJ2?=
 =?utf-8?B?Y2RnYWVFTjViWlF5c05pd1crYWxWZ1l2SDlaKzdmdXhSVVUwdU9ReW1ldWFa?=
 =?utf-8?B?ZnJvRTkvWlhwdWhXOGlOYVdsdWhnMzVHNVRIdE5jNU44d0lBOTJlTFd0cnNk?=
 =?utf-8?B?Rk5hMnBVL3RVZ0tQRWZJNlA0Y2dwd2RVYmpxV1h2c0dCYk41czVKQW96ajFr?=
 =?utf-8?B?alhNcWZZVFN6N3FIeXNOWlpXVmFmcFZXY3FORVZIa0luU2VGTHVoeExSMDBY?=
 =?utf-8?B?dkZKZm1Gd1ZwNmZUbnNrTUNGZHp3aWZ0bStwSmVwMnRsblZIRWdDb0JlVGRi?=
 =?utf-8?B?V0JucEdxc0R0ZU5jNTBublZ3T3V6MWs2YXJyZHpyVkR3T2kvKzBsNGF0TFYy?=
 =?utf-8?B?VEdJbURFTzR6VW5YaXpYc3JqcmJOWGl0UGh5VytFK0VmZkFDeGw0S2ZrS3V6?=
 =?utf-8?B?WWFyYXAva25sOTZnODdPck1aU3RuNE9DeGg4bm1CSEtUWTI0M2t6K0xCZDRV?=
 =?utf-8?B?S1g1QUxkRFNjNjdpT3ptOS9qVG9BVXNXaFkvK0RrZTVwYmh4UC9CT2dPUFFo?=
 =?utf-8?B?bFNXVmhCZG1DZXZJU2FXQmRBZ0ltZDR6SlAvREMyR3lGbUYrVzNyM1Y2M0JC?=
 =?utf-8?B?ZjJaVFpwUFhla2NNeXRGakphWi9ROWVnZDRJWkRGL2JMUjBCMmYwdFljeWdC?=
 =?utf-8?B?aW1oTjBLR0tVb0NFbTIyOTBSYlJqMlQyK2dUVHhGVkFjVzBKN1QyKzNWKzFn?=
 =?utf-8?B?VGp5RVZaaVgyTHFscHJUSGtQelhFZURPcXljeFl2U2pGRmNrQ3ZDZWlQa0I4?=
 =?utf-8?B?TEFDVTh2TFJlRE5hOHF4ZTRYdTZnLzVzTGdHdTFQTG1EUHVuT0xBT3pUaEdy?=
 =?utf-8?B?SWNqbmN5WHlUeTlIOFRaZnMwMytuSE81cnNiMEJZTnpQTE9IbHUwYVpQQXB0?=
 =?utf-8?B?aVpTMkRua0FDSDlPeWdhRkVpY1NEN2R6RVQvZmtZTHV1Q29EVHEreEhVazNB?=
 =?utf-8?B?UzU2Mmg3V0FycGNYbC9QTCtFRnhwUUQyUmlmTXBXSFhwa0xYUTgwSmdLQ0dq?=
 =?utf-8?B?ZWoyeUlSK3I5Q2VCaFhkOVA4b2RhaXpqbjBRV0V5ZzZma0h3aG9UY2RHWkkz?=
 =?utf-8?B?NjF6WG16OGpxYWJhYWFaZXFjbnRhM2IzemtLai9kOWlGaWtMTFZSZUFzdVZr?=
 =?utf-8?B?akttOC9ra2w0Z3lkOVY2L01xcHpDUEJoMFhXNUtQWkJ6U0lTVGJoamM4Nlpi?=
 =?utf-8?B?a0NpR0NSK2tLb2Zwc0ZOYUFzM01xSTVSa3orYWNPN213MnFhZWFtcnN3R0th?=
 =?utf-8?B?V0QveWwxekw1RUs5VVY2RWw5U2piSFpkdHM2ZDN6REFyTzVuOUZVSHNCdU0z?=
 =?utf-8?B?djRlZW5LNzJDNWhYRGNycWJRYnNTZ2lkUmJjZUlBYS9zbDlLa0lESTFRdFd0?=
 =?utf-8?B?Rmx3Y05ZWmYxQkpkbkhFNlJ3YUdSb3k0NVV1UEx5YTczcUlNeStkaFdFTzAz?=
 =?utf-8?B?TkRUdUFjTzBQVmpIbEMzTzh6Yk8zQStQVDhjV2V2cHIrY0w3Y1k1eWlNN2xi?=
 =?utf-8?B?Rzh1SkRIaWtXRWFCbTRPakRVb2pOSHZzQ3RGa2puV3RpZWdpelUvdjdmL2V6?=
 =?utf-8?B?dnhyRjI4OWJmSGRYSFRacVpQNVdPZFErQTV0SFZtUHUySEpnOTBZMUhETVhY?=
 =?utf-8?B?ekloaGorSVhNVUt2OW9OVFBJN0NJeElPZG5WZTJ6MGJubDVhV1pwYzJGNE1S?=
 =?utf-8?B?WllZTlo0TkJZZXdBZ1pvd3l0eHBhaTRtVkZXNkNpUHBRZzVZaTIwTk1idERL?=
 =?utf-8?B?YURBRG1pQTF2c2JrK2V5U3AzMUQwUldabFRNNHBTR3liSlBoOTU4VC82bHpp?=
 =?utf-8?B?RjBENXJobUVyNERYZ1BpcW1Cd29ScFNNQ2dLRUd2aVRUSkVaT2QyT3ZtV01K?=
 =?utf-8?B?clJVL3dnK3V6MXd1Q2hyYTFUZHlqU2JxQ29DaGE0OHdKa0hNZFNqTEVIU1Nz?=
 =?utf-8?Q?76/zo8eVomNM2CQxK7Y8RJSa/?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5ac5e986-65f0-466d-0a41-08dbad597834
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 15:13:18.5191
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: XMngNEeWUaDTeHIBRE8Odg7bBkl5kJiNlBYS5aKHpHobHxSUo6Sh5crul6093I/2ZAN62obSE5q00Bjl5FN7sw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8713

On 04.09.2023 16:03, Michal Orzel wrote:
> On 04/09/2023 15:28, Jan Beulich wrote:
>> On 04.09.2023 11:14, Michal Orzel wrote:
>>> --- a/xen/include/xen/bitops.h
>>> +++ b/xen/include/xen/bitops.h
>>> @@ -51,7 +51,7 @@ static inline int generic_ffs(int x)
>>>   * fls: find last bit set.
>>>   */
>>>
>>> -static __inline__ int generic_fls(int x)
>>> +static __inline__ int generic_fls(unsigned int x)
>>>  {
>>>      int r = 32;
>>>
>>
>> Even if perhaps not affected by UBSAN, generic_ffs() then wants taking care
>> of as well, imo. If additionally you switch __inline__ to inline, things
>> will become nicely symmetric with generic_f{f,l}sl().
> If others agree, I can switch generic_ffs() to take unsigned as well (together with s/__inline__/inline/).
> However, such change would no longer fall in fixes category (i.e. nothing wrong with ffs() taking int):
> - is it ok at this stage of release? (not sure but no problem for me to do this)

I'd say yes, but the release manager would have the ultimate say.

> - is it ok to mix a fix with non-fix change? (I always prefer fixes to be done as standalone changes)

Imo it is, to avoid introducing an inconsistency. While such may
not themselves be bugs, they increase the risk of introducing some.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 15:17:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 15:17:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595306.928827 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdBKJ-0003y7-Op; Mon, 04 Sep 2023 15:17:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595306.928827; Mon, 04 Sep 2023 15:17:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdBKJ-0003y0-LL; Mon, 04 Sep 2023 15:17:19 +0000
Received: by outflank-mailman (input) for mailman id 595306;
 Mon, 04 Sep 2023 15:17:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pUi+=EU=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qdBKI-0003xu-DR
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 15:17:18 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0606.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2260692d-4b36-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 17:17:17 +0200 (CEST)
Received: from DU7PR01CA0033.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:50e::11) by GV1PR08MB8130.eurprd08.prod.outlook.com
 (2603:10a6:150:92::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 15:17:09 +0000
Received: from DBAEUR03FT010.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:50e:cafe::e4) by DU7PR01CA0033.outlook.office365.com
 (2603:10a6:10:50e::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Mon, 4 Sep 2023 15:17:09 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT010.mail.protection.outlook.com (100.127.142.78) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.22 via Frontend Transport; Mon, 4 Sep 2023 15:17:08 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Mon, 04 Sep 2023 15:17:08 +0000
Received: from ae8c9c03de5f.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B2C66D6F-F144-4F9C-A660-B7F02B1CA0B5.1; 
 Mon, 04 Sep 2023 15:17:02 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ae8c9c03de5f.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 04 Sep 2023 15:17:02 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by DU0PR08MB7462.eurprd08.prod.outlook.com (2603:10a6:10:355::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 15:17:00 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 15:17:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2260692d-4b36-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=moJc+Plf2lnc+nhGDyE/NC3UhTpdM5oHUFDrKjzeQGM=;
 b=1jCdM3uAjEh5GgVY/APjRV70GKVBepUgU9bTxofJTlKqykkAO8zNVu1klmjEX4XRFCK1qUU3GIFQsxvOpANqeCSU+XCGMA1QPcSrHqNBIBlvONYLB+RAex25YGYcCkti9p+kcg4PPyL+MGBhlEWTmgYnnaOUf/wx5hSvj+TxSzI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 4243503d17548822
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AVecoezH//7eBLyAV59mGjFkskN/EZJEySGgszIdXwSWsCRG4Yek4pMeKvmlHLVxOo36eN9HFNDxWfBlIxBNfzpY43ghQH1nQLcYkpC8F0XI1zSNImHWcc4zL3O/KKbLda0efil6YDv4cJpN/h1t5I3tfhKkqah+Z3ekPHtFXeDB96qkE8cV3IOiG8uq6gVbjHqsgcIVRmwtvC8NryUM/XSFmv6s+QItrDvmcKsxtUnINhus+Gg+179DqD5wLV0AWMM3Z2LAPksRUfFPANpyE9Taq8iqhdiekNZlYY3XFkT6L6HHKo57roeLw9jd+sXLA0FOJBc9ATs7Qxi+mBCSOQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=moJc+Plf2lnc+nhGDyE/NC3UhTpdM5oHUFDrKjzeQGM=;
 b=OxCkULfF93+8tv94MHKumwt7YlEwtmf/dLmHwsBHapmSVJwCu2UkVzqGwjw8ciuFsRnOQTgF6fEnwEDYgAHI7AXv+4kumqo2PQrHubSqdBhY1CvtPmHuz241ZIenZJTrm37NcwYnHRiz+qw3nUcSnLNCe5vuErpnFC+FPCUXQ7RE9GYK1LFgdR+5Ahsk0OHm/bdw957FhrU22UXb2E6qGGpiHE+mNVf18b6SEsCgZ4GVag8hVLBBVq9lmoCtqPgeN+zlpQmcex61mw2rRnt7xRMKBMOaxXlGyBHgNEUg061USavmXN41HRjeSjdgyJG2qU54Lu77xmIxQwlFbfGpUA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=moJc+Plf2lnc+nhGDyE/NC3UhTpdM5oHUFDrKjzeQGM=;
 b=1jCdM3uAjEh5GgVY/APjRV70GKVBepUgU9bTxofJTlKqykkAO8zNVu1klmjEX4XRFCK1qUU3GIFQsxvOpANqeCSU+XCGMA1QPcSrHqNBIBlvONYLB+RAex25YGYcCkti9p+kcg4PPyL+MGBhlEWTmgYnnaOUf/wx5hSvj+TxSzI=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Jens Wiklander <jens.wiklander@linaro.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Marc Bonnici
	<Marc.Bonnici@arm.com>, Achin Gupta <Achin.Gupta@arm.com>, Volodymyr Babchuk
	<volodymyr_babchuk@epam.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>
Subject: Re: [PATCH] xen/arm: ffa: fix guest map RX/TX error code
Thread-Topic: [PATCH] xen/arm: ffa: fix guest map RX/TX error code
Thread-Index: AQHZ30BfHINFg5m3OEWmBuJ6JsrWObAKxyWA
Date: Mon, 4 Sep 2023 15:17:00 +0000
Message-ID: <1570C23B-D0D5-4794-9B77-13D3BB81D6C3@arm.com>
References: <20230904145814.2534808-1-jens.wiklander@linaro.org>
In-Reply-To: <20230904145814.2534808-1-jens.wiklander@linaro.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|DU0PR08MB7462:EE_|DBAEUR03FT010:EE_|GV1PR08MB8130:EE_
X-MS-Office365-Filtering-Correlation-Id: 85987ea3-ce7a-4a49-09ab-08dbad5a01a6
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 hkty+aK/YARSnVNYjdYUFWlDl9jWu4m0OVUp5bzhqw5Uu3DiFCjyK/whQYMgBCVHxohNh8PDyS+l1qtuGaZFokjrPFM0Onpqg4hu1NhmAzGbRSRZigrwiKvhlYCIn/N6wEViCe295LdJmO/8Lvrz5HqMhVeYoAQBWxXSvqrveyN2I27coTsx8Sbd8j1D1xv0sJ6+C/nteb7jbFK+Z7Oie9JCoCBsXmTwV9sN4ApBRM/DSw/GWMnG0x5fd6A7ICuM2rZB7GguFWLeVsYWHelgqCxxdMdZByfy7H3kwzkoEEG5Ish9BjxLxZvnTuxk921ZvMhDFjO24psCKe6VK7FR3FhIUeEZyMqSAZsgvHmR04FgCWBuUTfgl2jGUvCEmGUwA5DVWzaxtdkK/Mj5g55HNiMOvSVLnytnTwvQ4PVT67RPlHBGeLFAV8BZqfZ80JTRY/r2mIuMlzzGJd7j48jhwUJ8diZQUyuUavtR9j+6yPPXDAvU7gf57fLO1YOxMVjJ0aUmgTE+YFaSbfwbq4gDkTzw8+i5CLfXTE7oP0ndw85038MjxLNhZuDnumlQFOgUEYArOJWjve+1/RX7GYJMANuflgWPEevuSqB9uslgiG/OxE1UqpPyez2MJgAc/UjZK7huukUXkHRkwiL+WxLHbg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(376002)(136003)(346002)(366004)(451199024)(1800799009)(186009)(6916009)(64756008)(66446008)(66476007)(36756003)(54906003)(76116006)(91956017)(66946007)(2906002)(316002)(86362001)(33656002)(66556008)(5660300002)(8936002)(8676002)(4326008)(41300700001)(6512007)(2616005)(83380400001)(26005)(38100700002)(38070700005)(478600001)(122000001)(6486002)(71200400001)(6506007)(53546011)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <F2B8A464CCC6C64C98A365DE6BADC2F2@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7462
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	8d9d0ece-20c4-4d2e-137a-08dbad59fca0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UlVrEELSMKI1DnpdJXvZ1cXLqpljd47nh9y+2R/klwqF4YyBRtrU9y459AOO1Y9dRhH0nAgmAM/kXGKn/ZLdpOVNk6XA5Zp8Ua1TBtTEgQMtMxkSU4dHclfNPqGFtoHaQbomvtndYqoYL9ZOedqvrrG78NKNIWPGibDZ5YPfjXWEl7ubH+zFSRFwqLoiMxATrxzpFkRm9XH1sg/WO9KG/c6z/cfrxAbbZoIJJRV+NDluj5v7l5/Nhi/HT/mmFSN6jsSBoyJHgyHvYX8i6SCzExjCZ+6lp0y6DqaFNqdOMf0POLFHikfskX3JXTEZP5CC8TuvYQ+GsiPYIunjDeOYEenE+bS7Vmh9BQNt3CYhRU0NAzOw0YyTEJCax4RtN8+lC2LvTOxJ0H3Q2rCbDRqTDIQGOZZa3yWvpRfJu7V9aWX8HzCpHKv6ZNOQX/TWYEv/SPPtvS+PMWM3sqd7h6urkD2sp1XS9S3wPXNb7RKClTPnbFDBZfVmJFY+yifdZ4PRIskH6dDNholV3ImK3WJZL1RJE2+86j+Y6jGnATRpNM9Hgt9STugTzWIyXhRDKQ6vJc33HXsLhgvSF7krmEiWNbIT/cPLBq+Hw8vEkqIjK9xrQM6nIksOWj9r0XeIrimgr+kOgc5UT6PD+mMli6a9vd0oiSGrQKvzJnAQTvQRUkSyM5s34Dgu183z5ibZnLDsLKeGhbx/OaA1nkdsnSDP2gV8VTQWDNtRR47EAneP0IG9aAERh0c21EtE33J3cpD8
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(396003)(376002)(136003)(346002)(451199024)(1800799009)(186009)(82310400011)(36840700001)(40470700004)(46966006)(36756003)(54906003)(2906002)(316002)(86362001)(70586007)(70206006)(33656002)(40480700001)(5660300002)(8936002)(8676002)(6862004)(4326008)(41300700001)(40460700003)(47076005)(6512007)(336012)(2616005)(83380400001)(26005)(36860700001)(478600001)(81166007)(356005)(82740400003)(6486002)(6506007)(53546011);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 15:17:08.9377
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 85987ea3-ce7a-4a49-09ab-08dbad5a01a6
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8130

Hi Jens,

> On 4 Sep 2023, at 16:58, Jens Wiklander <jens.wiklander@linaro.org> wrote=
:
>=20
> FFA_RXTX_MAP is currently limited to mapping only one 4k page for each
> RX and TX buffer. If a guest tries to map more than one page, an error
> is returned. Until this patch, we have been using FFA_RET_NOT_SUPPORTED.
> However, that error code is reserved in the FF-A specification to report
> that the function is not implemented. Of all the other defined error
> codes, the least bad is FFA_RET_INVALID_PARAMETERS, so use that instead.

Agree and thanks for the fix.

>=20
> Fixes: 38d81e7ccb11 ("xen/arm: ffa: support mapping guest RX/TX buffers")
> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

> ---
> xen/arch/arm/tee/ffa.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>=20
> diff --git a/xen/arch/arm/tee/ffa.c b/xen/arch/arm/tee/ffa.c
> index 802b2dbb1d36..183528d13388 100644
> --- a/xen/arch/arm/tee/ffa.c
> +++ b/xen/arch/arm/tee/ffa.c
> @@ -706,7 +706,7 @@ static uint32_t handle_rxtx_map(uint32_t fid, registe=
r_t tx_addr,
>     {
>         printk(XENLOG_ERR "ffa: RXTX_MAP: error: %u pages requested (limi=
t %u)\n",
>                page_count, FFA_MAX_RXTX_PAGE_COUNT);
> -        return FFA_RET_NOT_SUPPORTED;
> +        return FFA_RET_INVALID_PARAMETERS;
>     }
>=20
>     /* Already mapped */
> --=20
> 2.34.1
>=20



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 15:21:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 15:21:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595313.928837 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdBNw-0005tf-74; Mon, 04 Sep 2023 15:21:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595313.928837; Mon, 04 Sep 2023 15:21:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdBNw-0005tY-4K; Mon, 04 Sep 2023 15:21:04 +0000
Received: by outflank-mailman (input) for mailman id 595313;
 Mon, 04 Sep 2023 15:21:02 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=vltW=EU=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdBNu-0005op-EN
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 15:21:02 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0614.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::614])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a70f8b87-4b36-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 17:21:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8514.eurprd04.prod.outlook.com (2603:10a6:20b:341::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Mon, 4 Sep
 2023 15:20:57 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 15:20:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a70f8b87-4b36-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MkZ7r0g33PQ8W5jh1fvHrk5ytN7jv3PxrwI2MkGWqtbzj6ZId3bcT4USlql+1jYKdZgRkjcDri/Wk2Re7E1aUoXWtVf3SI/5veKEfAwfJJr/9etUvJ6t778NWXsNSx55frWiKQRl/Q+FydijF4ISDvNYEx5e0t10dmuX8zEHRgc9WleSKjIlP+JRG0/+8a9cvNMmCChi3iD3wM2wXJS9+6444M7qyN0AAIYUYaJH9znuLAzoNFiLYasX5PaO04hheYKV6JA+wqfJsbY+z4ebs7IqySMs5hBW1pNOT54eZmw+T1Iw94bmhn3RWGndb+QVYvg5fgASDrh4KEeVZUeCzQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+5L3DdFqJw8W9Tau/gdHrdHUTDkdsPDX3o4JeRi6i3g=;
 b=L1XalDwsVKk1DYxQLQql4Yc4dylg45dAuavs2818KijcJQR2+gFr41RAqAEQUdR5sUVa/yArMl+rRJmBXGYaIH71j047edeG7nMTjhWx7uETjV7oQL0+os9f6QYRhixuA8+OTUjoiXB9+LwFw0MHgE+2wjJAYG+sGNSrLtAq+ALh4AFEd6FikvXB3D25oztsEeRkbQinNavW+OQloo+HaV0JX+XPSi4mbZD7td66E399h3s9uGEOI1J+pCxE6FfwxaCOCk7YqZTdeR63OlMx83ep4G1QjuvrPmzxGD5i0O/XzG9Ciymnom4SMPlW9vWffR1VzSiHRQqa6odBwQgV+Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+5L3DdFqJw8W9Tau/gdHrdHUTDkdsPDX3o4JeRi6i3g=;
 b=exMuiZWflIqJFvHr+9QgWZbJ1zcT/eHH3txVv/JHYfE2hbikcAuiZF3IYZPl8EbglsKYCp2I4kZPV51BkK0i+ZA01fha3Dh1X0A1Sd4glfNoW74szcvz89TiHGg2r+ppCGGKbl1fCv9CRTq8JMMRlb7EPCvM+7LZrI8uDHfEYkI8MpIBhdJ4tmD/yvN8RKFgM47wi7HeAGEuXP2HZPwP5fS7hudBYoMSiVdEiDu7xNvhDAoY7uJcrvC+jqFW+1wkHT2I0rtkEvJc+JPXfRwU2nK4KnUTzmJ5W6NVxM36tnHQcxD217Z8KFPY2TET6oEMaPF2sdcQd92+vBFpzP/3uw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e955227e-c791-3a01-8efe-78a8cfb85267@suse.com>
Date: Mon, 4 Sep 2023 17:20:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] Arm: constrain {,u}int64_aligned_t in public header
Content-Language: en-US
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>
References: <56bb2024-dea0-79e6-6a51-66e6c35a2733@suse.com>
 <7D7DA9F4-8B0B-447C-B35F-6BF53E5D0E52@arm.com>
 <03a6847c-95df-696c-5df9-53af425795e2@suse.com>
 <F05B7AF7-94CC-4AEC-9633-20F34F2BB458@arm.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <F05B7AF7-94CC-4AEC-9633-20F34F2BB458@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0116.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a8::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8514:EE_
X-MS-Office365-Filtering-Correlation-Id: 54686001-83df-47dd-a61e-08dbad5a89cb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	EJjiRekJamKDZGYfQRUN6tPKypY+amBvEYPMXBgbhJkDf1CtIePMJ+7viXeKGgoi+NV6cM89NQyxR0Gbu5j5l84Hc2B2m+awZqG0quIxHyz21FtE6Q17oDOnf7ekVEvcWTSxMpQp1J2d5g/XtvrC+MVGqSICuI6YspKQMer/2pcgsjkRTpG0TXb0loMFs8+2sy56RBI40pRMaJlAdthRlY2VBFbH8HFolSpvqXGJv246ZRYFBNQowTGhGY3nw96+Lj9ZJYa02bF1xD72h+yrvqV/8hAXeBAkceu3vbdlpfatUfc1nA3CQWrLQ2THYoO879/qPCRCxm9aU1fTeK0saCSgb9L6Nf0sxl9R/q+MNjvoXYiyOuOlW4RIJcyK6zIxCqrin6POkTkhIdq3VKiOuNQINNHI90Q2AJ/v3ptZ9DEiOt43rfLJ1xboP64vjRhQEisrVueNs/ojaSe6G/FcwbVEJZy9g5xbbXFwymFd81v+rDT5gL5rjDHuDRIg0ILpoZWPXlI1PS8Ji+xkFA0brQ31YYIkdRTgI/4YBqxmRajE8/5D9g2DawfrbHGcxmVzD1Zl2XhEP2RHJeITdzzNsj94cuypFouEndxQKYeuazLYQUtp8VmHHInf80zjYFX2gVd89CXFDMlMZMtwe8nlVQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(366004)(39860400002)(136003)(346002)(186009)(1800799009)(451199024)(41300700001)(53546011)(6486002)(6506007)(478600001)(2616005)(26005)(6512007)(38100700002)(66946007)(6916009)(2906002)(36756003)(66476007)(316002)(86362001)(31696002)(54906003)(66556008)(31686004)(5660300002)(8936002)(4326008)(8676002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZU9oaUcxNTRnK1FOVzhIbnBPK2xzajlSL0dxMExIR1ZBUGxwbDk5OTZobW52?=
 =?utf-8?B?bzgvd3JtQ1Rvc2t4dnp4azB2TUh4c3NTenZZRVNKd3l2TzVFNjJUY2ZjazNI?=
 =?utf-8?B?ZFNRL2xiSXBmdHRKY1dML211L3gwZHNXbFhidWZ4dnpzYlR2UWN5V3ozNUlK?=
 =?utf-8?B?aG5TMytheFBtS290NmNmQUpuT3VJc3FUK0tITnIwa0ovQ2lrNkhPeHRPREtx?=
 =?utf-8?B?UTIxeVNlQkgxbCtoaXVDbTd4R2pwVlJCa2toa01nVFdldmZnWWZIeGVPNFA3?=
 =?utf-8?B?NUxURDhyMkJlNjVTM2Z5NlhaUGhKNDdNcWkvSzlUaVVTR3gxdjZHbVM3bGJT?=
 =?utf-8?B?aDg1V3UwcjluNGN5NFlPVzVsdWpLcFFLa1EzWTdYMTNjUmhKd1FmMzhUN2tL?=
 =?utf-8?B?RnRTeWZMaUMxUFlVOEo2Sk9NbnNUMUovOU5KblFPY1FiYTBoUURING5LbDda?=
 =?utf-8?B?MHYvTzkwc3dJSXpqbmZ0dlRwZEN1azVYYWFZWVNMTGtybVJza3p3N2FpWE5J?=
 =?utf-8?B?N1ovZTdobEpsMTcyMFRmZzkzRkFpRGxMRjdIVUtJa3VMN0o0V0phM1B6Vk42?=
 =?utf-8?B?NnhxK2g5S1RQVmNyd2VQUlhHaVY5VnZsdCttTU4xcWRqaHlyNGdGdUF0K2Vx?=
 =?utf-8?B?OGNWNElZQVBrUkhvNU93Nml2UkJsT1NKWG1IM1pkRThaRnEvblRIdUo3Zlha?=
 =?utf-8?B?L05lOEovRUZ4Mkh4cU91alBlRkZmRE1VenVKNjZrSmhYa0tPOHZHVUg4Y0xD?=
 =?utf-8?B?SE15V3BOQnVnOGptc0wrNFloUHp0dGU3S0ZjWWRSMW93SThkQm1yTXpPZk5l?=
 =?utf-8?B?NUJnL21jMmE5Z0Z4VUZUczBzQTdTWml6QkRlWlRPRVlubWtmMTM1RkUzQjIr?=
 =?utf-8?B?RWMreGV4d3N0Z3JtV3plZDFXd1FyNXlSK3VxVWVnenBQMjhJRjNLc081dlhs?=
 =?utf-8?B?TU02bDdrbWVobVgySmtOYk5xVnFrT2ZGOG5VQ0ZQRGphbFQ2MjR1dHB6am9y?=
 =?utf-8?B?NERxdXkrQ2RiNlUzOGRFZE1FaGtjNGFiM2tkR095WEFKZUpvTHRoQVI3dXg3?=
 =?utf-8?B?bE8xcHNqays5WnhPSzVCa09QT2QwYmcvZDdSaWY2a0RuejhHU1IzWmV0WkNk?=
 =?utf-8?B?clZTOExnK0xhRHAyRmJ3cWp5bkJ3Ung2OXZVSGZhRGJDRFp5Ni93UE90dWwx?=
 =?utf-8?B?b0U3VnIxZXVXY3ByWFNGd1pjQ1lVeUMrTE1NMS8rT0JwazY4ajdLTFlQeFZn?=
 =?utf-8?B?OVk5aE41MEg4VmZnRWIvb1pLS3dDOUpsOUtZb3JWejhFOXRwWlNVSTV0VDZl?=
 =?utf-8?B?NzZNaUo0S2VTZ1JYUEtQQVNiZVFIR2tHZ0RwYWtzVEViYjNXZFZTTkt3M3Vj?=
 =?utf-8?B?djUvTHZ2ZktZclFJc1EvRG55UTMzdXJMV1F0Ty9oMWxYUXZjM0dkZkNsZ2l2?=
 =?utf-8?B?UzdaR1RaSmdrSmozdHUvZnByWjNjNVVmZDJReEJFRDBtWHFBZzR3ek5Pdk9x?=
 =?utf-8?B?V3hiSEtWQnQ0c0xiaEpIcno2SDg0MHp2cDlaanRDUGQzbmp0WnVEWDNZbHQ4?=
 =?utf-8?B?Q1pmc3h6N3pxUDdDbTFSU3VYZmJzVllRVFhjMkFid20yNUUva1RaRHk3UG42?=
 =?utf-8?B?eTlFQ0ttU1VlV2RQMGJYTzA2TGhWOHE4Sk5mdVRRYXYyLzJZenJkNUxnenM1?=
 =?utf-8?B?QjV6VlFTa0FmNWwzdUdvTTJEUzR6bWZHTVFRemJqL2cwQmJXZ0RHLzF2STEz?=
 =?utf-8?B?dXVMSldNWVRqL0VVbW5pTUM3SmN1TVBOSWRRcHpZazdYa2xSbFpoMXlBY21V?=
 =?utf-8?B?bzlnSStUbzN3Vk5UTTB2V0c0Y3h0Q21uYlVSS1RVK1VPdzZ6NjA2aVRNd00w?=
 =?utf-8?B?V3IxQ1dxK3E2T04zamFpTkc0OHcxNTdYL1BvVzFlTjVXQ0RwWXJZWDdDMVZT?=
 =?utf-8?B?Tm4zMFAzbnJHM001Q0NVY0NUQVJhMTU0NTVNOXR4SEtwWGN0VXRlL21oN016?=
 =?utf-8?B?YU0xMnJQd1dtVTVJRlJTRS9NYTFJdlVRS0ZVSHJTWS84QWlMYVFEN0Nvc2cr?=
 =?utf-8?B?dXZ4R0JwSFIxOUVQTDd5M2pscnFhMDNYQzE4aS9SU3JkaEVYMjZnTWhMTk9W?=
 =?utf-8?Q?MxUSD4o3f//0yeBPvH6mFTwRb?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 54686001-83df-47dd-a61e-08dbad5a89cb
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 15:20:57.5319
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: AlITppTRw/MDjuvEEaZRmK7QQURdSWH4KOiwKnBZIrgpwZKCEhdGQ+bB051ES6E2HQepIjDGNSFGwANkWUXhDg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8514

On 04.09.2023 16:05, Bertrand Marquis wrote:
>> On 4 Sep 2023, at 16:01, Jan Beulich <jbeulich@suse.com> wrote:
>>
>> On 04.09.2023 15:42, Bertrand Marquis wrote:
>>>> On 1 Sep 2023, at 09:26, Jan Beulich <jbeulich@suse.com> wrote:
>>>>
>>>> This using a GNU extension, it may not be exposed in general, just like
>>>
>>> Nit: Missing "is"
>>
>> I would guess you would want it added as the 2nd word of the sentence. If
>> not, please clarify where you think it is missing. If so, then I'm afraid
>> I can't parse the sentence anymore with it added (i.e. there would need
>> to be further modifications, e.g. at the very least "so" after the first
>> comma).
> 
> Sorry yes, it should be "This is using a GNU".

So as I inferred, yet as said - according to my reading the sentence then
ends up broken. If you continue to think the sentence is wrong as is, would
it help if I replaced "This" by "For"?

Jan

>>>> is done on x86. External consumers need to make this type available up
>>>> front (just like we expect {,u}int<N>_t to be supplied) - unlike on x86
>>>> the type is actually needed outside of tools-only interfaces, because
>>>> guest handle definitions use it.
>>>>
>>>> While there also add underscores around "aligned".
>>>>
>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>
>>> With the Nit fixed (can be done on commit):
>>>
>>> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
>>
>> Thanks, but I'm afraid I can't take it before the above is clarified.
> 
> Please see above.
> 
> Bertrand
> 
>>
>> Jan
> 



From xen-devel-bounces@lists.xenproject.org Mon Sep 04 15:31:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 15:31:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595321.928846 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdBYM-00083R-96; Mon, 04 Sep 2023 15:31:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595321.928846; Mon, 04 Sep 2023 15:31:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdBYM-00083K-6H; Mon, 04 Sep 2023 15:31:50 +0000
Received: by outflank-mailman (input) for mailman id 595321;
 Mon, 04 Sep 2023 15:31:49 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pUi+=EU=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qdBYL-00083E-3Y
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 15:31:49 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2062e.outbound.protection.outlook.com
 [2a01:111:f400:fe13::62e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 282012ea-4b38-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 17:31:46 +0200 (CEST)
Received: from AM6PR0202CA0069.eurprd02.prod.outlook.com
 (2603:10a6:20b:3a::46) by DB5PR08MB10191.eurprd08.prod.outlook.com
 (2603:10a6:10:4a6::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 15:31:43 +0000
Received: from AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:3a:cafe::20) by AM6PR0202CA0069.outlook.office365.com
 (2603:10a6:20b:3a::46) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Mon, 4 Sep 2023 15:31:43 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT059.mail.protection.outlook.com (100.127.140.215) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.22 via Frontend Transport; Mon, 4 Sep 2023 15:31:42 +0000
Received: ("Tessian outbound c99fbc01d472:v175");
 Mon, 04 Sep 2023 15:31:42 +0000
Received: from 2d76b8ce2c72.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 740F85F9-F8D5-4097-8560-3FD620592475.1; 
 Mon, 04 Sep 2023 15:31:36 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2d76b8ce2c72.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 04 Sep 2023 15:31:36 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AS2PR08MB10322.eurprd08.prod.outlook.com (2603:10a6:20b:5ff::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Mon, 4 Sep
 2023 15:31:32 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe%4]) with mapi id 15.20.6745.030; Mon, 4 Sep 2023
 15:31:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 282012ea-4b38-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=n39ueO/dXnqa640U6d5LykrsjisjI6oKMffQ/BKuGL4=;
 b=GcgC6l/tDSF/NWKJjeIF9TVXF9jjHXkWx7DoCXg0z3EhbxixyO/lCUl36bpaaZAwv80rdanEi1de+RFGDzaLCAtxV3Hdv+1IcWA/Z7MUNrDw4L55dx5nTLnWmivIqoTfJolcxsxCvfA9as47cH7JkQfKqQ1cYLuRYo2PZ5jERSU=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 963e5b23e190cceb
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bB4nITIJGxk/Sft79shv0vL/6G0Ua2sJCU6bapx0M++YL7fP9KbeO4SzE8DRNJuqEJYSTxXpUCZzRErGLp0O2oe9qcX2LIh7uPDs5aSbrXxzJGdkT2feNd8VUlOKbaDM9KhKHo6iluaQXw9GMgzgLNqj6pnGqw15Z93JKEyP53CrkIaAMN8Gnw8xeoNjzVYS0YOhY+etascF6JRcRPKFGkh0fVwZT8RMVNzIWwkkO8fCgaDF+NSMyi7vg2Keps4jJDZ0BBh/roMnN+pXpRIYjmYOG5Hrvn2q2d1VrGlSIJQWPvuIp4uOeSJ1ZFPaXa+zntWlExSLdv8kRdR5ikSKBg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=n39ueO/dXnqa640U6d5LykrsjisjI6oKMffQ/BKuGL4=;
 b=KhvyhDG/gkxOgXFUvEmvOLtxo05KFC5jclTJyj3R1/UMfXb/4a/s7LVdfKNANbeJK/LoeODfPgZUiyzpdn5wZylQNrsc8oQfZFTWDNa/TQwuEjfmr/5W7/rjB8hIpD8+fQTbugIYN4gI1pRX83YTx/Om7i/4g8YIah9/mMQhXKmevSJNjIEf6NehV/WihjGCSi4WExciTur0S6Eqk9XJIb5+TDhauE3gSSDZJBAOehiKMy9okblb+CSE0czN+J4KJG5iItmx6OhPNmgSSw6vqDLdn1RJcQW1tCONLp+bMKcMYIMvUMOtzsmNWaWi4GXXw3aNMoi7Re1/KGZIib7EXg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=n39ueO/dXnqa640U6d5LykrsjisjI6oKMffQ/BKuGL4=;
 b=GcgC6l/tDSF/NWKJjeIF9TVXF9jjHXkWx7DoCXg0z3EhbxixyO/lCUl36bpaaZAwv80rdanEi1de+RFGDzaLCAtxV3Hdv+1IcWA/Z7MUNrDw4L55dx5nTLnWmivIqoTfJolcxsxCvfA9as47cH7JkQfKqQ1cYLuRYo2PZ5jERSU=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Julien
 Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <volodymyr_babchuk@epam.com>
Subject: Re: [PATCH] Arm: constrain {,u}int64_aligned_t in public header
Thread-Topic: [PATCH] Arm: constrain {,u}int64_aligned_t in public header
Thread-Index: AQHZ3KWtdw8jwJKuHkKXZbII/FmnYbAKsd6AgAAFVICAAAEdAIAAFTGAgAAC6wA=
Date: Mon, 4 Sep 2023 15:31:32 +0000
Message-ID: <B5A2832E-C89C-4BF5-B12C-A51CBD9D4E3A@arm.com>
References: <56bb2024-dea0-79e6-6a51-66e6c35a2733@suse.com>
 <7D7DA9F4-8B0B-447C-B35F-6BF53E5D0E52@arm.com>
 <03a6847c-95df-696c-5df9-53af425795e2@suse.com>
 <F05B7AF7-94CC-4AEC-9633-20F34F2BB458@arm.com>
 <e955227e-c791-3a01-8efe-78a8cfb85267@suse.com>
In-Reply-To: <e955227e-c791-3a01-8efe-78a8cfb85267@suse.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|AS2PR08MB10322:EE_|AM7EUR03FT059:EE_|DB5PR08MB10191:EE_
X-MS-Office365-Filtering-Correlation-Id: c2dfe4c4-dd47-452b-52f6-08dbad5c0a8e
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 mkIEig8VnBqSNHH8wdwFLrPe9sayueR9ux0TjiQ8LPaDa+50kJVSrhFDpa/1DLFH+DirkMwcFJn9+uPrTJBqV5aMgZwmd/0kOWqJOn5Ms7jqI94XRy4MtUnjJRH9QuKv7hwb0vyUHsZcpqzMR16P/lQ07EfqhHck8IKZvQ4x5l5fuE4rkUr0ftZo76YyYp6UtVyjy73PpWFp/lpGlFSFgF4hvBrLWUK59Cijibi40QxkotkRCErRJj0g+AWAnZ/4algfIdysab5HtJltz8Oa9E2iTspA2KKDP72L2Pth8LuwSIexRNETq9rOsUwvgFw/T0kTJBfOlR07PeilCE8uF2qxEqRcIw7GeNNnUoJW7ZskIJjBcRqsaY0tR1Np+MuDKr1891mUpbTQ/LsXdCK1jHNA3fsAmZGrJJErEXarHKtOwvmFYJuuGubsBNbrx82ZUMZ5CzuA2bk31TwBuRKeZrmzlvEnppXv0KhAyfDyiIatrHMH0BnlIAFyjUx8pF5LJMyaptqm4jYW70L7xbGCEVjcYg/+LaS/G5vgtn7icryNIh19FNepVT6MirMn5qBhB9OUAvjL5aSHlufJ08aSdZxrmuegUp31aw3NCoAyRuqub39uIOC1xnpNDB9DtMEuPnqnqHaipUFfqH3wB9ntCQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(346002)(39860400002)(366004)(136003)(451199024)(186009)(1800799009)(122000001)(38070700005)(33656002)(41300700001)(5660300002)(36756003)(86362001)(66476007)(66556008)(66946007)(66446008)(76116006)(26005)(64756008)(478600001)(2616005)(91956017)(71200400001)(38100700002)(6486002)(8936002)(8676002)(4326008)(316002)(53546011)(6512007)(54906003)(2906002)(6916009)(6506007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <6263878D407AED4EAA49FF7FCA5EACD9@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB10322
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	cc85d7f4-944b-402b-e7db-08dbad5c045f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	6bmWdj4Yy8M4bVDGijmoQaXGlRCQAGBiafas+E+5Hak4axL2iDsg5cRi0zy+w2eV0AXlv4Fv0UuIQRNYGPHlSIS1QKfOA8D0emYNGcBMMMwKgZwZKLwnk+LC42s74yGyxfz1+tzhQfEw+DQ0G2TgYsI8mY3ecljOJCngwikoS1R081oECkNpogqMdh8wGKnifXpTAob22dIqnIVnuXrvhu0sfqaeVgfeOeMNaGRrexqMbBK+cos6CzfXEtvdzlhaDvYMQCRAChhEzMu3rL5pH9mFJzPGsixYuM+IPAw84LNPxjvSqfhMzx893TG69PzKJOaHqw7Gzd0GmrUYY9HIVMnxbOTpCjrAqhX/TxBBrRGPvdDmvfsL7MQLVhNNgBJ6tMFEQ+/Spg67J5uZN36yjqGPUzh9do5rFD3i4Ti+NWlJQc8Kl/RJ7WiQ0FaVNBUdydHh12w7YG28frqIw5RshY+JJwwPqfWbeOhECkf5HT9H5TmNP8SBWSsHIymKeM4P81MBnSbI8PagYJrm294HGh6p8cy2axUHxBxeGsvaD6wfkyhjUNRyXH4uxeczWSIaxyxGipYpR0eWS4ApleOWPdegpbMSRejt8b0UyFk2sUIJOEvmajmhGoJ1rStSd44wIlNP5heXygYTHywLcEL0XarNXhqMRdwE/RHyStukTeFWcmVDV9who4y8Ozb/C8hWFt7OJ53ObvC/a++E8SnezARcXUDzICRtzLpbzdyjfj6xcv3voxpD2tBZC0yhbSuU
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(346002)(376002)(396003)(451199024)(1800799009)(186009)(82310400011)(46966006)(36840700001)(40470700004)(8936002)(41300700001)(40480700001)(478600001)(2906002)(6862004)(70586007)(5660300002)(70206006)(8676002)(4326008)(54906003)(316002)(6512007)(53546011)(2616005)(107886003)(6506007)(40460700003)(26005)(6486002)(36860700001)(336012)(36756003)(356005)(81166007)(33656002)(82740400003)(47076005)(86362001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2023 15:31:42.8128
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c2dfe4c4-dd47-452b-52f6-08dbad5c0a8e
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR08MB10191

Hi Jan,

> On 4 Sep 2023, at 17:20, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 04.09.2023 16:05, Bertrand Marquis wrote:
>>> On 4 Sep 2023, at 16:01, Jan Beulich <jbeulich@suse.com> wrote:
>>>=20
>>> On 04.09.2023 15:42, Bertrand Marquis wrote:
>>>>> On 1 Sep 2023, at 09:26, Jan Beulich <jbeulich@suse.com> wrote:
>>>>>=20
>>>>> This using a GNU extension, it may not be exposed in general, just li=
ke
>>>>=20
>>>> Nit: Missing "is"
>>>=20
>>> I would guess you would want it added as the 2nd word of the sentence. =
If
>>> not, please clarify where you think it is missing. If so, then I'm afra=
id
>>> I can't parse the sentence anymore with it added (i.e. there would need
>>> to be further modifications, e.g. at the very least "so" after the firs=
t
>>> comma).
>>=20
>> Sorry yes, it should be "This is using a GNU".
>=20
> So as I inferred, yet as said - according to my reading the sentence then
> ends up broken. If you continue to think the sentence is wrong as is, wou=
ld
> it help if I replaced "This" by "For"?

The sentence looks a bit weird to me but I am not a native english speaker.
Any reformulation coming from me will probably not be good english anyway.
I understand that one as "we don't want to expose this in general because
it is a using a GNU extension and x86 is already not", the sentence here is
just asking me a bit more thinking that is it.

As this was a Nit, feel free to ignore and you can keep my R-b.

Cheers
Bertrand

>=20
> Jan
>=20
>>>>> is done on x86. External consumers need to make this type available u=
p
>>>>> front (just like we expect {,u}int<N>_t to be supplied) - unlike on x=
86
>>>>> the type is actually needed outside of tools-only interfaces, because
>>>>> guest handle definitions use it.
>>>>>=20
>>>>> While there also add underscores around "aligned".
>>>>>=20
>>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>>=20
>>>> With the Nit fixed (can be done on commit):
>>>>=20
>>>> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
>>>=20
>>> Thanks, but I'm afraid I can't take it before the above is clarified.
>>=20
>> Please see above.
>>=20
>> Bertrand
>>=20
>>>=20
>>> Jan




From xen-devel-bounces@lists.xenproject.org Mon Sep 04 15:36:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 15:36:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595327.928857 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdBcn-0000FZ-QR; Mon, 04 Sep 2023 15:36:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595327.928857; Mon, 04 Sep 2023 15:36:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdBcn-0000FS-NB; Mon, 04 Sep 2023 15:36:25 +0000
Received: by outflank-mailman (input) for mailman id 595327;
 Mon, 04 Sep 2023 15:36:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=MaJ0=EU=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qdBcm-0000FK-Te
 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2023 15:36:24 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cd510055-4b38-11ee-8783-cb3800f73035;
 Mon, 04 Sep 2023 17:36:23 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 469794EE0737;
 Mon,  4 Sep 2023 17:36:22 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cd510055-4b38-11ee-8783-cb3800f73035
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN PATCH v2] xen/arm: ioreq: add header for 'handle_ioserv' and 'try_fwd_ioserv'
Date: Mon,  4 Sep 2023 17:36:06 +0200
Message-Id: <7a58fd2e4361de53fc81475dd4aca52a57b770f1.1693581823.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The functions referenced by this patch should have had a compatible
declaration visible prior to their definition. This is achieved by
including the arch-specific header in 'xen/arch/arm/ioreq.c'

Fixes: cb9953d2f2bc ("arm/ioreq: Introduce arch specific bits for IOREQ/DM features")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- Avoid including <asm/ioreq.h> in <xen/ioreq.h> to allow new architectures
  (e.g. ppc and riscv) not to provide one more stub header,
  as pointed out by Jan Beulich.
---
 xen/arch/arm/ioreq.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/xen/arch/arm/ioreq.c b/xen/arch/arm/ioreq.c
index 55854571898d..3bed0a14c050 100644
--- a/xen/arch/arm/ioreq.c
+++ b/xen/arch/arm/ioreq.c
@@ -9,6 +9,7 @@
 #include <xen/ioreq.h>

 #include <asm/traps.h>
+#include <asm/ioreq.h>

 #include <public/hvm/ioreq.h>

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Mon Sep 04 19:40:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 19:40:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595336.928867 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdFQa-0002sY-VL; Mon, 04 Sep 2023 19:40:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595336.928867; Mon, 04 Sep 2023 19:40:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdFQa-0002s0-ST; Mon, 04 Sep 2023 19:40:04 +0000
Received: by outflank-mailman (input) for mailman id 595336;
 Mon, 04 Sep 2023 19:40:03 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdFQZ-0002Xu-4z; Mon, 04 Sep 2023 19:40:03 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdFQZ-0002pe-1U; Mon, 04 Sep 2023 19:40:03 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdFQY-0006EW-H4; Mon, 04 Sep 2023 19:40:02 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdFQY-0001BU-Gb; Mon, 04 Sep 2023 19:40:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=k2j7vDxmVvvOmKRdJYQoPsxnde5hAV2Pn8e8/CGCmyE=; b=Z1BYLbgV/E4IBAzMLAVg/875CE
	JhUzOvCRpAQ02/MS3acy8Oq4JVzaEMNlCPHElrJR0sFxxcsihHbVSvMkClHJpiKgJ/DpVw2vpu2QD
	1/XbaFm+7qxLnCNIDYn4V2uKUtLcMyZ9JsKuJfsP0/li8KcLlAdgefkmvfxxSkZuiHKE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182625-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182625: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=708283abf896dd4853e673cc8cba70acaf9bf4ea
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 04 Sep 2023 19:40:02 +0000

flight 182625 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182625/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                708283abf896dd4853e673cc8cba70acaf9bf4ea
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z    7 days
Failing since        182544  2023-08-28 20:42:13 Z    6 days   13 attempts
Testing same since   182622  2023-09-03 19:43:01 Z    0 days    3 attempts

------------------------------------------------------------
2023 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 232318 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 01:26:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 01:26:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595346.928877 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdKpE-00061V-6u; Tue, 05 Sep 2023 01:25:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595346.928877; Tue, 05 Sep 2023 01:25:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdKpE-00061O-2s; Tue, 05 Sep 2023 01:25:52 +0000
Received: by outflank-mailman (input) for mailman id 595346;
 Tue, 05 Sep 2023 01:25:51 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qilU=EV=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qdKpD-00061H-JT
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 01:25:51 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20613.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::613])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 12ffa025-4b8b-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 03:25:19 +0200 (CEST)
Received: from DB3PR08CA0036.eurprd08.prod.outlook.com (2603:10a6:8::49) by
 PAVPR08MB8893.eurprd08.prod.outlook.com (2603:10a6:102:321::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Tue, 5 Sep
 2023 01:25:15 +0000
Received: from DBAEUR03FT039.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:8:0:cafe::8a) by DB3PR08CA0036.outlook.office365.com
 (2603:10a6:8::49) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Tue, 5 Sep 2023 01:25:15 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT039.mail.protection.outlook.com (100.127.142.225) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.25 via Frontend Transport; Tue, 5 Sep 2023 01:25:15 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Tue, 05 Sep 2023 01:25:14 +0000
Received: from a69a6a279955.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 8EE84764-2F13-400C-847B-CD96A11DA65C.1; 
 Tue, 05 Sep 2023 01:25:08 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a69a6a279955.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 05 Sep 2023 01:25:08 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV1PR08MB7801.eurprd08.prod.outlook.com (2603:10a6:150:58::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Tue, 5 Sep
 2023 01:25:05 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 01:25:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 12ffa025-4b8b-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xOw4Oi59PFX4ysVZJuIxorJytYFaH52BkmSQWBeFz7g=;
 b=nL6kRV0v5zCwebdUN4zQz/cVTrLdRd64ChRRqJ1vg+1g8gX4NApKjXn/eKcu0V12mLgvZLUSgmbf1JzVn2bAE6L/huKbOgV+/ZNuq1ifJ0UKJ5kh1L8UEShKjO3m6Npb1ppSKOJOgY3poL4ThLNgFMom2WFl0f+80pWPLdH8puY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: bdadc0a676c3c753
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=A4atISDtaPjEMaE5fWJdJYnkXlji1QuTj3a3WEYj75m3xhmy+QoviBJt2hscYmrThU5UapGQ1UW1hoe4hsBliL/zNZpKEV3eH6s7/huh/pYAXCAFT6/ZDsm/PdlzO0OlblPTWqSt1+P9Kl7OrECwvYYf/mcHy0y2pZ5wq6h+lX29rDylc6ieARVg1u1Ec4OdmgktPAcbrQsNWRpVq/KbAQEtW9BxmOnA1pYre6oamR1XNUssYaBp7wcQcV4tEzjVxqFKtjgw8FY0jtj4i8d8826iHnpFKCTTS3bPw8+7PjQtIm5rlfECWcjkBQd3QmLo41sDF3Xi0GHoziY7kFwzRg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xOw4Oi59PFX4ysVZJuIxorJytYFaH52BkmSQWBeFz7g=;
 b=DxA6D/INqXC5c6fyjbm/K/qOo0hfgn+NqYTd+UcAZ+mEbXiZL5TrovdoUcIDKYBtPbchPnzU6rHVqtOe0dyOn2QBX2+UCFj/WnNqSPPJ5upeAGPNzw8qve4Y070IaJb0glfsysBq3O2qrK+ZDi5J6LB9+SUyoPJISC7sw5WAyAHce4an/s1X29GZPkQNWcSLK07rD6HJjms2Y9asH7gxcK1AG9y6mUYyG8HMn3r2C6HozaQgs+Pr3OHibXIO5IBtkibd/q4FFptqkEQj2YS2pcpZ6v+rjT2vmmt07D4uWhi1ekc0IKI9jxTpe18os162rd7OkXoEwky8TXNeqcQfow==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xOw4Oi59PFX4ysVZJuIxorJytYFaH52BkmSQWBeFz7g=;
 b=nL6kRV0v5zCwebdUN4zQz/cVTrLdRd64ChRRqJ1vg+1g8gX4NApKjXn/eKcu0V12mLgvZLUSgmbf1JzVn2bAE6L/huKbOgV+/ZNuq1ifJ0UKJ5kh1L8UEShKjO3m6Npb1ppSKOJOgY3poL4ThLNgFMom2WFl0f+80pWPLdH8puY=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>, Michal Orzel <michal.orzel@amd.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Xen-devel
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH 2/2] xen: Change parameter of generic_fls() to unsigned
 int
Thread-Topic: [PATCH 2/2] xen: Change parameter of generic_fls() to unsigned
 int
Thread-Index: AQHZ3xBF/3psu2nmz0CVECL22ChB0bAKqSEAgAAKBICAABNjAIAAquSA
Date: Tue, 5 Sep 2023 01:25:05 +0000
Message-ID: <7275DC3D-DEF1-4925-AE6E-5AC2BD6D5070@arm.com>
References: <20230904091406.942-1-michal.orzel@amd.com>
 <20230904091406.942-3-michal.orzel@amd.com>
 <ec00892f-d9e8-1095-fb27-c344caa6aa28@suse.com>
 <3538634f-61df-efc1-e45c-ba4c01b5014b@amd.com>
 <c4c3f708-b3f0-3028-ca3a-6661d0f78d56@suse.com>
In-Reply-To: <c4c3f708-b3f0-3028-ca3a-6661d0f78d56@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|GV1PR08MB7801:EE_|DBAEUR03FT039:EE_|PAVPR08MB8893:EE_
X-MS-Office365-Filtering-Correlation-Id: 94b48a21-c4ac-4890-8269-08dbadaef51c
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 WP/TLXt+kRXOtaKmzH8ErAfe6aiHU6xWyI12kRRDlVnEM4vylcnfXs5tHKSc0vO3CEtr5HCVtsObFhlSM1WXz8ftCpelRrCTweC99kIBIIpPmMNleKuDn0RYlgSV/+dTCwL38yWyAAksjKcMZ3/jaWoI01r6EVc/ExzyqDlujhFgrZ0Giv6EkgYd7mwDJEeDy7xeHiu9MiwvTyPp36EPAkXrdar/yo/lDTLuY62mpBPEVfOO5yHhxkCJjDwBl9A7Qj2IC870suZfdse5j13p7wrHRYfwkHa7OCtLyapnXy+gMEmO1e3smEn+PWPib5O0aEbDMucQ7wJOKSMIFASXSgKscG6v6rVtZW4QlY0D9zT+GHmoPPP2f++R2c1/fBnAWrpjhLblh0VWVc78NjV/f7l6S/VZG+JHCZ/uhP7tAxALLHPtw2kF4u/6+YSxRAqAu2s5Mvf/pnZWq4J2DzwStea1Rjf7KRxhJER+0E8rBk+MhJaJXXCJNI6WyvFWK7gEl38PjaXXOPdoZlKQgkYlGzurzpm6PcilJ7/7GUxS7AgVwe2UKy0g4RaXkQysHVEEw8Aq5En0GKPZ49s23JzLclNAvmEm9bcMmA2JZ/ikwHLLXF+tCjMHMRxHFTVun4OWmnK8ll8M1pk1UAucd1yyRXAYB16LGM5YduUjvhEQq44=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(346002)(366004)(376002)(136003)(186009)(451199024)(1800799009)(54906003)(66476007)(66556008)(66946007)(66446008)(86362001)(316002)(110136005)(2906002)(64756008)(36756003)(33656002)(76116006)(91956017)(8936002)(5660300002)(8676002)(4326008)(41300700001)(6512007)(2616005)(83380400001)(38100700002)(38070700005)(26005)(478600001)(122000001)(6486002)(71200400001)(6506007)(53546011)(41533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <C03574EC82B3C8448B6C72E5F7DF3CCF@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7801
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT039.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	3247fb4e-7e57-4c60-3dcb-08dbadaeef65
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Wq8sJv271vqEQCbGxz5GioE0M6VR4CdgTvYAbULpeEbgM17b5T0MknIDwM9GH1ytwWr4aSMB5RRyZCcrmnFa2yCF70hf231un9KgzjW3xGBcOW1dcgNi0jLHJzEgZWcZV65parFpnx4OMQzBYBryLjzm+qi1yRGtt3FhsDOR6jABgrgwY8BSRBpKd5PVjx8ODzbJaVLdj2ENacF3VPaL5dkNrCrMzfA79JvmFf0tfrVq3EHXnZOCbv8uDzA5zinhFiyuFImFQAurpK3gILXjDYly/y5ZmC+v+xeKt8nX0UIKA9P6+dinZd9Uo8Ryozlf6WsXZVxoifMIV0rMkEYB+Rji0NJrTSIfJBuX9vCIWNafS3dnwaLVES/umTpqsXEH2SeKURj9w3jVvernR1yKilG+3SgypLzoJ+xUGPgIE3sKjqucz/i2QLcDsW/3yFXlaJ8S2KndAtd2gNwbFKYyXJ28diSTfxeQ8lBYXohtqXkxIS9tppl5lgNdr2sOsdTAC2NqxW6T3RFqLsWSFN0TqUOz6SP77kBtVgoHTybum8qaggaKycKd8pcyRDhVLDxp6+bVIOGFOPpOgmTtoLF0tVrvD5N4vyNt/w1KhGXyH+R52tKDqr8XjsO01m8+aOcxYzuu2EhndMB8ByLON2if52HeBkS3wzNCeEFonievA5ZDLLAyxvOkhZHqOhwDDsAsB3cijQVz+oTKnipTDaczv7/8Rzxo+nAubZEGhOi3Lb5oMOhthJC+TDLQpIyy2993i9cOhljsn08fGYRcQ52d4Q==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(376002)(136003)(346002)(1800799009)(451199024)(186009)(82310400011)(46966006)(36840700001)(40470700004)(70206006)(316002)(36756003)(110136005)(54906003)(86362001)(33656002)(70586007)(2906002)(40480700001)(8936002)(5660300002)(8676002)(4326008)(40460700003)(41300700001)(36860700001)(6512007)(336012)(2616005)(83380400001)(47076005)(26005)(478600001)(81166007)(356005)(82740400003)(6486002)(6506007)(53546011)(41533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 01:25:15.1101
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 94b48a21-c4ac-4890-8269-08dbadaef51c
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT039.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB8893

Hi Jan and Michal,

> On Sep 4, 2023, at 23:13, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 04.09.2023 16:03, Michal Orzel wrote:
>> On 04/09/2023 15:28, Jan Beulich wrote:
>>> On 04.09.2023 11:14, Michal Orzel wrote:
>>>> --- a/xen/include/xen/bitops.h
>>>> +++ b/xen/include/xen/bitops.h
>>>> @@ -51,7 +51,7 @@ static inline int generic_ffs(int x)
>>>>  * fls: find last bit set.
>>>>  */
>>>>=20
>>>> -static __inline__ int generic_fls(int x)
>>>> +static __inline__ int generic_fls(unsigned int x)
>>>> {
>>>>     int r =3D 32;
>>>>=20
>>>=20
>>> Even if perhaps not affected by UBSAN, generic_ffs() then wants taking =
care
>>> of as well, imo. If additionally you switch __inline__ to inline, thing=
s
>>> will become nicely symmetric with generic_f{f,l}sl().
>> If others agree, I can switch generic_ffs() to take unsigned as well (to=
gether with s/__inline__/inline/).
>> However, such change would no longer fall in fixes category (i.e. nothin=
g wrong with ffs() taking int):
>> - is it ok at this stage of release? (not sure but no problem for me to =
do this)
>=20
> I'd say yes, but the release manager would have the ultimate say.

>From the release aspect, I am fine with doing the above-mentioned extra
changes, as we are not in the code freeze stage. From the development
point of view, I think whether doing such extra changes or not is supposed
to be an agreement between the developer and the maintainer.

Also this patch itself looks good to me so:

Reviewed-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
>> - is it ok to mix a fix with non-fix change? (I always prefer fixes to b=
e done as standalone changes)
>=20
> Imo it is, to avoid introducing an inconsistency. While such may
> not themselves be bugs, they increase the risk of introducing some.
>=20
> Jan
>=20



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 02:08:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 02:08:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595354.928887 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdLUR-0002cV-9t; Tue, 05 Sep 2023 02:08:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595354.928887; Tue, 05 Sep 2023 02:08:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdLUR-0002cO-5u; Tue, 05 Sep 2023 02:08:27 +0000
Received: by outflank-mailman (input) for mailman id 595354;
 Tue, 05 Sep 2023 02:08:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qilU=EV=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qdLUP-0002cI-SE
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 02:08:25 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on2061f.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::61f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 17cabc05-4b91-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 04:08:23 +0200 (CEST)
Received: from DUZPR01CA0168.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b3::24) by AS4PR08MB8217.eurprd08.prod.outlook.com
 (2603:10a6:20b:51c::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Tue, 5 Sep
 2023 02:08:20 +0000
Received: from DBAEUR03FT062.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b3:cafe::60) by DUZPR01CA0168.outlook.office365.com
 (2603:10a6:10:4b3::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Tue, 5 Sep 2023 02:08:20 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT062.mail.protection.outlook.com (100.127.142.64) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.24 via Frontend Transport; Tue, 5 Sep 2023 02:08:20 +0000
Received: ("Tessian outbound 5c548696a0e7:v175");
 Tue, 05 Sep 2023 02:08:20 +0000
Received: from c05aeaf24d72.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 31CF3D25-6F7A-4F68-88DD-31A18E64A720.1; 
 Tue, 05 Sep 2023 02:08:14 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c05aeaf24d72.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 05 Sep 2023 02:08:14 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAVPR08MB9697.eurprd08.prod.outlook.com (2603:10a6:102:31c::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 02:08:11 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 02:08:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 17cabc05-4b91-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=siZ6A8anDTZdFmb643EEAVg6Cf9ogYSzQ3fyBkqOWI8=;
 b=40Iv3H3N0xPGWpqqsdyoMPJGvQdvxZyDe3AxD5kie2RXPc4rXWpZPR0xxoAOdgc+z85/LtIh2vf205S/IDwjoPyAowi+VjTyGv47I6mcSl56+GHbBQioj+8fg3AJmwHV6Ld5KRX75eA8xHCFhlp5aruTn2Gd1Zedw5rj28Xj53k=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 014ef8d8630aaae5
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=i+4dV6e+YQGv1DKO3jx4F0GYPi3thyCaXV/6oihoCiRYRmyhQ7kmEqdYNL5LLVhlR7iGi4ZdKn31OBH1EKJkXE0s8iSbaTCp5cHl17VjhMqu/pNrio1hYKLOyMgsNxpLE9LuM6VQXxMF4tpToq+IYrE7GDmyty0JOuJSCngOj8eOPA+sBSOT6IIxonxa2S0f9wVngkXCurFQ2IPFT6UBBPcElaW3+ziZBBwtaA/7RYB+G2e7Gjjz8E08Xvj5m8e1E39mD6Qk6JRun/vVIpnsqz3I+lmQ0a58GyjNfHta4LTH/gVljFkEDiLyuyRMkanflx1LzKYHfvdHVIbrX/zdhw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=siZ6A8anDTZdFmb643EEAVg6Cf9ogYSzQ3fyBkqOWI8=;
 b=Irdsr/14+ocv5THUb/jUU65hjA2sAzjmWCov4W9NRk0Cam/wQjbE6JUaLamOIdKL0fn7PvgfXvdeRe2XkBYwgvqGfHyMuPMN9iW1BOfRXDka7sWlqphhsIK4NRLtvJSNP0ar/kp8mHh2aq0eO6Pg9h8HJZ1Hz7r2tS66ZZxDwvGJro2N0YBje/qUf6qp+8lfIyRyYiUtN1l524XIARngSFZ9+zgtQDJz8TVTdSrg4pRwiBMBxkNPNJE6lk/sV+Kkez5jwklXwE58ux3vFyJ7e63YiJWpfFqVtLr8TkSwZ9jKAhzZFLxdfOeMGJ0AmK5yB+lqRyh9mu3Bx295ENMnpg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=siZ6A8anDTZdFmb643EEAVg6Cf9ogYSzQ3fyBkqOWI8=;
 b=40Iv3H3N0xPGWpqqsdyoMPJGvQdvxZyDe3AxD5kie2RXPc4rXWpZPR0xxoAOdgc+z85/LtIh2vf205S/IDwjoPyAowi+VjTyGv47I6mcSl56+GHbBQioj+8fg3AJmwHV6Ld5KRX75eA8xHCFhlp5aruTn2Gd1Zedw5rj28Xj53k=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Julien
 Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <volodymyr_babchuk@epam.com>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>
Subject: Re: [PATCH] Arm: constrain {,u}int64_aligned_t in public header
Thread-Topic: [PATCH] Arm: constrain {,u}int64_aligned_t in public header
Thread-Index: AQHZ3KW1QbAyYFQEp0mKJtVOIbYC5LALgkkA
Date: Tue, 5 Sep 2023 02:08:10 +0000
Message-ID: <5FA473DD-FC52-4F55-8B49-69E75752112A@arm.com>
References: <56bb2024-dea0-79e6-6a51-66e6c35a2733@suse.com>
In-Reply-To: <56bb2024-dea0-79e6-6a51-66e6c35a2733@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PAVPR08MB9697:EE_|DBAEUR03FT062:EE_|AS4PR08MB8217:EE_
X-MS-Office365-Filtering-Correlation-Id: 8fd04524-c824-4b6f-a04c-08dbadb4f9e9
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 VxdKUeqyI379k++4wmux1GjBVHIO3eHUmuF0dc38UGT258f3dvx+7BPlhh60lvHPV41+Z5dUX2mal4jDs6M9T0PVHbWvr06ymZKChJLxQpCLNndMOje3FZPTi3VdffQp9usCjTU1iqiHrOfzsb/NQWO/Y1sDZWXLVs7IDeVw7EmXGQPdQKpIqi9ROQTVVb1OBtHcrLIRx/C1gG7sPabgZ5apc8xz0lqPOh9kVLMUy857XDZF5p11c9E92jK+UnuaTUKrtyTMWC9UwxTL+Vxu3nwFYEBNOwmTiCM1OrYca3lPvi570pDMVu5ensqwOttZ2eZWu2ilURMSjq/jc6UGOuH8F/rXnxFFEKuxAeWxe+c4mznFU+EauI8CjgYVYHQLyUvuQjFSdDu1Yeu8WgK9ZVelmKOq48DxafNi5Rtq3144hOasfBP2EulOJLE9HugVqgcKR7cS5Lsi9mgd+eaB892h5MKaHtI9ZtI0pbE/UpBYSSmMcK3vuVm4/yQHD8BKVcffOY04Hvfa1BE43Rpq3CfyDpoGQTv08hqvebLyDeVHI+9QZ2eRjaxU/2NLaCsgfV7mZMbWA1YqAxHZo1KJY16dD1zpF7NIYH3VPJ/WNfBPobIri850tm8NTkADl5GyXtOUPRUpIOXNPzrNNPGnGZIE6OaFPsAXAOa52tEMdpc=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(366004)(346002)(396003)(136003)(39860400002)(451199024)(186009)(1800799009)(53546011)(26005)(5660300002)(2616005)(66556008)(66946007)(66446008)(66476007)(6512007)(316002)(64756008)(54906003)(6916009)(6506007)(91956017)(76116006)(41300700001)(122000001)(71200400001)(4326008)(8676002)(8936002)(478600001)(6486002)(83380400001)(966005)(2906002)(86362001)(36756003)(38100700002)(38070700005)(33656002)(10126625003)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <D012867EFB50C14BAD3B9706699CC53B@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9697
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT062.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	d3770609-c171-4785-63e7-08dbadb4f45a
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	z9COxa2iKYAw3dNxxzzGdGYHODW18WeNbG0AAY2PrDAWOeXvG93CaO6lkS/wSHgXAf5uE7HotT7+nto2CgXFJzQiGcuReNpQ+MCFPJZSr0+5H4dQnY6f42F+ZWlnpb/ZWUomNtwcSK7Gw7OzXZfr/rsPoSLJKZmhcvWrmRlPUUjzTcT4WJD2ZmrvM9zMLHCAQuoeuKDgbinOa2yKagJbIculn0azIbJeEHDfhYnCgxHTOWyGJ+rl+oat4B7JE1VPCrJUWGo4k2IYgCTE+5nb1JSnM1QonT0zhJEyuh4ew7Bu/HsdEAUzLBarL44lClwvKO9yOpzK1Zgu5ylhfgmTB8bW+FRDeqvKvW1SEusNgWRocfFVW4DYhIPtiWmU1vyiobBECtZBRlBi7nVEpWm1d+s0sFSHacRy6bhqw68xRYmN3w0r9iKnPfy9Y25/gtQQBvAXY9yD9c/uXYIBOipo53E9LfrE2geltiuGaT2rlyUpIm7SNLq8UC3Tz1U2PAtLq4L+SGuMZB/hWGmtqbHDgACKGuks2xXcxq+uFA6jVmXP8fnGZez7Kfn+BgAwiwQTDmLF0UN9EMcNgFekWm0ai0IswXWrkFwd/XjtkCf/UBGsnXhdU+kNrFTs9zNo0cskuEX14Uda94ZQ6aJEHELm4dlp4sH9+2GcAz/Ja43Tmr4y9Hq6zmp83XIDu9iTk804j2+BPCW70xN21dd4Nd+eP75wycXIMuTltXsH8NR8oqBEG3pz5qtQq2sWS4aG4h4s8cIbBBdR3NFA1hWBvRq6CQ==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(346002)(396003)(376002)(1800799009)(186009)(82310400011)(451199024)(40470700004)(46966006)(36840700001)(478600001)(966005)(26005)(2616005)(70206006)(70586007)(54906003)(336012)(6506007)(6486002)(6512007)(316002)(2906002)(8676002)(6862004)(4326008)(53546011)(8936002)(5660300002)(86362001)(356005)(36756003)(81166007)(33656002)(82740400003)(47076005)(41300700001)(40460700003)(83380400001)(36860700001)(40480700001)(10126625003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 02:08:20.1457
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8fd04524-c824-4b6f-a04c-08dbadb4f9e9
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT062.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB8217

SGkgSmFuLA0KDQo+IE9uIFNlcCAxLCAyMDIzLCBhdCAxNToyNiwgSmFuIEJldWxpY2ggPGpiZXVs
aWNoQHN1c2UuY29tPiB3cm90ZToNCj4gDQo+IFRoaXMgdXNpbmcgYSBHTlUgZXh0ZW5zaW9uLCBp
dCBtYXkgbm90IGJlIGV4cG9zZWQgaW4gZ2VuZXJhbCwganVzdCBsaWtlDQo+IGlzIGRvbmUgb24g
eDg2LiBFeHRlcm5hbCBjb25zdW1lcnMgbmVlZCB0byBtYWtlIHRoaXMgdHlwZSBhdmFpbGFibGUg
dXANCj4gZnJvbnQgKGp1c3QgbGlrZSB3ZSBleHBlY3Qgeyx1fWludDxOPl90IHRvIGJlIHN1cHBs
aWVkKSAtIHVubGlrZSBvbiB4ODYNCj4gdGhlIHR5cGUgaXMgYWN0dWFsbHkgbmVlZGVkIG91dHNp
ZGUgb2YgdG9vbHMtb25seSBpbnRlcmZhY2VzLCBiZWNhdXNlDQo+IGd1ZXN0IGhhbmRsZSBkZWZp
bml0aW9ucyB1c2UgaXQuDQo+IA0KPiBXaGlsZSB0aGVyZSBhbHNvIGFkZCB1bmRlcnNjb3JlcyBh
cm91bmQgImFsaWduZWQiLg0KPiANCj4gU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVs
aWNoQHN1c2UuY29tPg0KPiANCj4gLS0tIGEveGVuL2luY2x1ZGUvcHVibGljL2FyY2gtYXJtLmgN
Cj4gKysrIGIveGVuL2luY2x1ZGUvcHVibGljL2FyY2gtYXJtLmgNCj4gQEAgLTE1Miw4ICsxNTIs
MTAgQEANCj4gDQo+ICNkZWZpbmUgWEVOX0hZUEVSQ0FMTF9UQUcgICAwWEVBMQ0KPiANCj4gLSNk
ZWZpbmUgIGludDY0X2FsaWduZWRfdCAgaW50NjRfdCBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgp
KSkNCj4gLSNkZWZpbmUgdWludDY0X2FsaWduZWRfdCB1aW50NjRfdCBfX2F0dHJpYnV0ZV9fKChh
bGlnbmVkKDgpKSkNCj4gKyNpZiBkZWZpbmVkKF9fWEVOX18pIHx8IGRlZmluZWQoX19YRU5fVE9P
TFNfXykNCj4gKyNkZWZpbmUgIGludDY0X2FsaWduZWRfdCAgaW50NjRfdCBfX2F0dHJpYnV0ZV9f
KChfX2FsaWduZWRfXyg4KSkpDQo+ICsjZGVmaW5lIHVpbnQ2NF9hbGlnbmVkX3QgdWludDY0X3Qg
X19hdHRyaWJ1dGVfXygoX19hbGlnbmVkX18oOCkpKQ0KPiArI2VuZGlmDQoNClRvZGF5IEkgdGVz
dGVkIHRoaXMgcGF0Y2ggYnkgb3VyIENJIChvbiB0b3Agb2YgdG9kYXnigJlzIHN0YWdpbmcpLCBh
bmQgaXQgbG9va3MNCmxpa2UgYmVsb3cgZXJyb3Igd2lsbCBoYXBwZW4gZm9yIGJvdGggYXJtMzIg
YW5kIGFybTY0IFlvY3RvIGJ1aWxkOg0KDQpUaGUgYXJtMzIgZmFpbHVyZToNCmh0dHBzOi8vcGFz
dGViaW4uY29tL3Jhdy9TN1pxbUc2eg0KDQpUaGUgYXJtNjQgZmFpbHVyZToNCmh0dHBzOi8vcGFz
dGViaW4uY29tL3Jhdy9ITUZoNXR1Uw0KDQpLaW5kIHJlZ2FyZHMsDQpIZW5yeQ0KDQo+IA0KPiAj
aWZuZGVmIF9fQVNTRU1CTFlfXw0KPiAjZGVmaW5lIF9fX0RFRklORV9YRU5fR1VFU1RfSEFORExF
KG5hbWUsIHR5cGUpICAgICAgICAgICAgICAgICAgXA0KPiANCg0K


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 03:19:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 03:19:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595361.928897 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdMav-0001uq-Bd; Tue, 05 Sep 2023 03:19:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595361.928897; Tue, 05 Sep 2023 03:19:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdMav-0001uj-96; Tue, 05 Sep 2023 03:19:13 +0000
Received: by outflank-mailman (input) for mailman id 595361;
 Tue, 05 Sep 2023 03:19:11 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdMat-0001uZ-GI; Tue, 05 Sep 2023 03:19:11 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdMat-00059H-DD; Tue, 05 Sep 2023 03:19:11 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdMas-0000dp-TE; Tue, 05 Sep 2023 03:19:10 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdMas-0003f6-Sn; Tue, 05 Sep 2023 03:19:10 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=tyNnvNrCGXu7D8N5g0m/u/KxKHhBh6SqE6DeG0y0EwA=; b=hE9Mrcg99wmSdHr3WGuq4ahLXn
	TE+QUvYUCfhQq2WsLf5UdYf9ObvJND2TGNH0PffyUjqPMOpZ5RrICeWZ8oFxu7HRIzfP+GQg2k7Kg
	kXKyTyJEYU+afT8cuVcEJT2UXuISOw3YCrwmGA7mkrkpAv5SeHV51BAdh0JDVEKXKtos=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182626-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182626: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=7a1415eebeece5a27fb40c0242b171c104ad5727
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 05 Sep 2023 03:19:10 +0000

flight 182626 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182626/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                7a1415eebeece5a27fb40c0242b171c104ad5727
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z    8 days
Failing since        182544  2023-08-28 20:42:13 Z    7 days   14 attempts
Testing same since   182626  2023-09-04 20:11:35 Z    0 days    1 attempts

------------------------------------------------------------
2034 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 233913 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 07:32:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 07:32:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595374.928937 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQXX-0003eL-VN; Tue, 05 Sep 2023 07:31:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595374.928937; Tue, 05 Sep 2023 07:31:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQXX-0003eB-SJ; Tue, 05 Sep 2023 07:31:59 +0000
Received: by outflank-mailman (input) for mailman id 595374;
 Tue, 05 Sep 2023 07:31:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=AA/O=EV=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qdQXV-0002rN-O1
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 07:31:57 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on20605.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4a728ebc-4bbe-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 09:31:57 +0200 (CEST)
Received: from PH8PR02CA0013.namprd02.prod.outlook.com (2603:10b6:510:2d0::14)
 by DS0PR12MB7654.namprd12.prod.outlook.com (2603:10b6:8:11d::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.28; Tue, 5 Sep
 2023 07:31:53 +0000
Received: from SA2PEPF000015C8.namprd03.prod.outlook.com
 (2603:10b6:510:2d0:cafe::9e) by PH8PR02CA0013.outlook.office365.com
 (2603:10b6:510:2d0::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Tue, 5 Sep 2023 07:31:53 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 SA2PEPF000015C8.mail.protection.outlook.com (10.167.241.198) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Tue, 5 Sep 2023 07:31:52 +0000
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 02:31:51 -0500
Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by
 SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27
 via Frontend Transport; Tue, 5 Sep 2023 02:31:49 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4a728ebc-4bbe-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eaUmqwAvbS0bq6t6s2ZB5/xGhmszoBwoG9dbVmFgl6dMO1cSnjZd0e3QnhXKYHVWtjj2u6PHMtOcSWpwKnMFX++hQ26QBmC+LTKpiM7bNlB+HH0+ueU0oHzncCiRo3rni2R8y221nzPeoEdrddEuqAWWsmGM/jfz+f/2HgMprgu4P/L8A0tcwk26OZdFoukuKvLQlVSAUeWcY/HcjCEiQR/fv5cB3Yf33vGApxdpYyaH2LZRiK+KJLRaVJxJd9Bujnxf16q237kIBQ9MJ1KshfdmoSfbVIiN98sx44yPdtDiLnV07sLzwVnTJYmqiR+i/oLvcMByAPW6R1MAiErMxw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7ttBx/RLfvS/dpP2YFQ9lhSCOmO9pCv8GBtM7hOK5HY=;
 b=TdQ7GGnQpL2+aRwiKuVazqoQi0N8R/BSndhvjvPCaP9jNf0Z+PMmF3UvIfo6Yth7XjZOpYFnBaKeAdf/QuPVsBnwgnexN0Z/i6KYWiYIavzqq6Fvxlqm4ggTh/LQp8C1ZyFJilAdd1TNn5IXQFPVuCcPQRu6kYevFOILXc1nWb3gs2WmQTnWP6wtYqE2/Kli9hnMRESPcEQkLVK9q/Xmb9TAW51AVq3Pp7tmCIo/LrhyxCDuuKBLfBFvFsnqsFGWgFOPe/pOuslehwAgpG8rdC/xg8dWraqB4aP8IGxWXoHb4js20t0gmStNhvviP9W11S7idGs4p3n7nxYmq3HUgw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7ttBx/RLfvS/dpP2YFQ9lhSCOmO9pCv8GBtM7hOK5HY=;
 b=kF7DdiXTfabXf12QKsc+JQbtmY0NsMnkouNBb+7tmEh67h89DO7chafghGiXLx1OM0iqXkgwhZ2gvuzuhtFa6W1vkTiVeoK7v+bkn6jmcYL1Gf5YFqQikkcRpHr/Luui31B26G+YY7cU1i6B01g9OWHMVMG2KH9+CG9Zv/bdVho=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Michal Orzel <michal.orzel@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Michal Orzel <michal.orzel@amd.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Julien Grall <julien@xen.org>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	<Henry.Wang@arm.com>
Subject: [PATCH v2 2/2] xen: Change parameter of generic_{fls,ffs}() to unsigned int
Date: Tue, 5 Sep 2023 09:31:35 +0200
Message-ID: <20230905073135.12360-3-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230905073135.12360-1-michal.orzel@amd.com>
References: <20230905073135.12360-1-michal.orzel@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SA2PEPF000015C8:EE_|DS0PR12MB7654:EE_
X-MS-Office365-Filtering-Correlation-Id: f2b8cf58-0433-414e-f10f-08dbade22c6b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	6yG3E5Fdmt37VCAUJYNK3dg/K8EaXIG/kXwYUjLNllUsotS9I0mGzbAyzOYozeurMv0dATf5n91pHAKM3lu8jb3iKoJ3cxgqnzV1GjWkZNz9c9TAzJ9+7WOICSiBfQacOlk19I4KiuOqz1vpWC/LOS0aYZfEzJdGTLSiNj7IZKOjztPd15By9STSztjSn2CH14M0s9f8DE0OeEJYSgX8eH8H1vK6wIDftElDP/WkZNUEnG2+zHff88B/6iDUgY+jLIseu7UhIm0vWv2Uhhwbisv9birTjZ5n/yNFKIxdutqhkpJoglqzniUGCvAMcewDYyfv74uZrmKQ0IEIZnO7jVGEqfEYAEVxgTNA0pP305b05gEF/6nFcoFAHEZe7mhfZQPRcrtU9d0UF9RgDXOAlpMj4cNYWnX+rV3Pslyinor5//1KLPZKX8Xz52LEUX+JO9G8+Ip8Dcm3GCZb5oYSTJqT6tX9QL+Gf8I1XwtexwTuf+Za3PKagyhtq2nGr5rF4EECFiRdMdUy3RDw1R1AIy1oehLkhPHUICSgg5haUkYOgeYz9JAaIiGsGBXcSOsERlbhfs80ODOSJi+jUV3rgxvlvA6esMXcYv0j61vOo7diSdYHUvTwDagnO1ivKBYnGDc+fQzI4D6M14caSt+xFwkDZu1SvH8Uf5Cu2aSxjAjGdzG74bvGuwJd9GFKCE2f94wIwabZWaBqX2v8gk7YWyutG0wjm68kq9Q4gkGWTdPnrKZqWcQWR45oQQC1O8ndjHMW0MgW9F6qryWz0dlbPTlGAZGuWhaOyqozdrLpU1I=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(376002)(346002)(136003)(1800799009)(82310400011)(186009)(451199024)(46966006)(36840700001)(40470700004)(41300700001)(40460700003)(356005)(81166007)(36756003)(82740400003)(2906002)(70206006)(86362001)(316002)(6916009)(70586007)(478600001)(54906003)(40480700001)(6666004)(8676002)(4326008)(8936002)(426003)(44832011)(336012)(26005)(5660300002)(1076003)(83380400001)(36860700001)(2616005)(47076005)(41533002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 07:31:52.2074
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f2b8cf58-0433-414e-f10f-08dbade22c6b
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SA2PEPF000015C8.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7654

When running with SMMUv3 and UBSAN enabled on arm64, there are a lot of
warnings printed related to shifting into sign bit in generic_fls()
as it takes parameter of type int.

Example:
(XEN) UBSAN: Undefined behaviour in ./include/xen/bitops.h:69:11
(XEN) left shift of 134217728 by 4 places cannot be represented in type 'int'

It does not make a lot of sense to ask for the last set bit of a negative
value. We don't have a direct user of this helper and all the wrappers
pass value of type unsigned {int,long}.

Linux did the same as part of commit:
3fc2579e6f16 ("fls: change parameter to unsigned int")

To keep consistency between the helpers, take the opportunity to:
 - replace __inline__ with inline,
 - modify generic_ffs() to take parameter of type unsigned int as well
   (currently no user and the only wrapper generic_ffsl() passes unsigned
   long).

Signed-off-by: Michal Orzel <michal.orzel@amd.com>
---
Changes in v2:
 - as requested by Jan, s/__inline__/inline/ and modify generic_ffs()
   for consistency

It looks like generic_fls() is only used by Arm and invoked only if
the arguement passed is a compile time constant. This is true for SMMUv3
which makes use of ffs64() in FIELD_{PREP,GET} macros. generic_ffs() has no
user at the moment.

Note for the future:
The return type could be unsigned as well. However, looking at all variations
of the helpers to find first set/clear in the codebase, returning int is the
de-facto standard. Changing the return type of the title helpers would result
in inconsistency or require to do modifications in other places which is not
something I want to do at this stage of release.
---
 xen/include/xen/bitops.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/include/xen/bitops.h b/xen/include/xen/bitops.h
index 654f525fb437..edd6817d5356 100644
--- a/xen/include/xen/bitops.h
+++ b/xen/include/xen/bitops.h
@@ -18,7 +18,7 @@
  * differs in spirit from the above ffz (man ffs).
  */
 
-static inline int generic_ffs(int x)
+static inline int generic_ffs(unsigned int x)
 {
     int r = 1;
 
@@ -51,7 +51,7 @@ static inline int generic_ffs(int x)
  * fls: find last bit set.
  */
 
-static __inline__ int generic_fls(int x)
+static inline int generic_fls(unsigned int x)
 {
     int r = 32;
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 07:32:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 07:32:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595373.928924 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQXW-0003D2-Qo; Tue, 05 Sep 2023 07:31:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595373.928924; Tue, 05 Sep 2023 07:31:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQXW-0003Ce-J2; Tue, 05 Sep 2023 07:31:58 +0000
Received: by outflank-mailman (input) for mailman id 595373;
 Tue, 05 Sep 2023 07:31:57 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=AA/O=EV=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qdQXV-00038m-3O
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 07:31:57 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 496e8321-4bbe-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 09:31:55 +0200 (CEST)
Received: from SA9PR13CA0133.namprd13.prod.outlook.com (2603:10b6:806:27::18)
 by DS7PR12MB8371.namprd12.prod.outlook.com (2603:10b6:8:e9::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 07:31:52 +0000
Received: from SA2PEPF000015CB.namprd03.prod.outlook.com
 (2603:10b6:806:27:cafe::16) by SA9PR13CA0133.outlook.office365.com
 (2603:10b6:806:27::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.25 via Frontend
 Transport; Tue, 5 Sep 2023 07:31:51 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 SA2PEPF000015CB.mail.protection.outlook.com (10.167.241.201) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Tue, 5 Sep 2023 07:31:50 +0000
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 02:31:49 -0500
Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by
 SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27
 via Frontend Transport; Tue, 5 Sep 2023 02:31:47 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 496e8321-4bbe-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bd4sco1KaaGMICWmgX7PUZnVBiVqU4E9pbMEGHezIH980GaD3lIYIpv6lGYRWsEa0avOfTsuLRD3ZN32iPyCH0igDowOrBT3RZJUh17g0mJ51KgwvOXOaUA/Jf0pRCq6lFtPV5nkhMpb7e6NV6od7Qgn9wMn1OIuLR48LtJfSmaA90oHydqGKOUuQS/bjWXjnq68X4MwctDcDHNIVcSruuBUNxlzU2MsS5e3UcLb/BxmNzRTg/c6k30jNLUKS2A1hK0eDIAFo+jFjlbbtCx1jSd5HJLlfHXhjvT2NRzMMXLu/4vzTsAJ3lUkQXJC0UB8E2cxkJ+h4RHpiRihLkI+3g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QwVDrVREkEGynMq9B3iITCmc/U6BSq/jOOAsWVt3pQA=;
 b=FQCoGKWgILuLd+lZezBrnQ6KqV0lBPjl1HODhjYrWmJohHN3t6vzCrbHL4f3+LX0FzzSIg557k1swbgX3xa4xW4mLIouSx43WryvZrvBnm76vyTRFW0syhV+77p0g/XxdETPEL6uFxqJ8R3pILqhWyAvZy7cdEt7pDh+h11u7I0LCB7WxwGpCyTs9qV9Y5UJd1YxGwkfPC76F2CUODG+c2IpcvZd6txsDJtbjeIcwD60rBj+Tuaj2dkk3s77Wf+nBvmfegJhqwP3LgF1+aKA3K4wAstfM5T1F58cmC+dknw8bWsQhc6D3d52b3MeDgmsiLZeWuVujaE264O66NSSig==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QwVDrVREkEGynMq9B3iITCmc/U6BSq/jOOAsWVt3pQA=;
 b=3OUYiK2WPecKpnb7vWEzVRSvbS49+JDn6yvYn8E9JR9NWDmLkeGRsYqFpBkZsW7wx4ppX0RU6dcOUCzBi0k5fsEQtauOZR6eqKFglWM/zhaC85/ihSerSUS/dkqSsG7LiTsExTsni3FLlEs1Tv0rzALZwRC1Xh7qOxIsE/FMs04=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Michal Orzel <michal.orzel@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Michal Orzel <michal.orzel@amd.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	<Henry.Wang@arm.com>
Subject: [PATCH v2 1/2] xen/arm: smmuv3: Add missing U for shifted constant
Date: Tue, 5 Sep 2023 09:31:34 +0200
Message-ID: <20230905073135.12360-2-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230905073135.12360-1-michal.orzel@amd.com>
References: <20230905073135.12360-1-michal.orzel@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SA2PEPF000015CB:EE_|DS7PR12MB8371:EE_
X-MS-Office365-Filtering-Correlation-Id: bd81ed0a-f742-4958-6166-08dbade22b9c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1gyeYaITHa/ZFj7nbixS9Q9MAhG+EQ4RUGQBw755wnhwkfiZ90MbXWv988xK4MWlc8kejf3SGJYevY2WlvW+w7RwDPlXnSpqXzJWONsblXQA61JgCQBYZkYU8u5Xc0La+1J7xj7mNy+UuYMQnek8bgQrqvi4TnMlBNPh3csvSm6E+Fazv5b0iQjCLOzcoP9jpp9J4k5GnkeJkFVe6LGUK8V8E1/OlnkAPfVm8go/KhdFSM0SRXwSLOYK2XMqnKjQ3jrNRdgl+CpCUgt67Ghm+5nThyJW3TwqY3MUXIq+f5vSJgLCDYfYii2cb6AzgxxpAqzpZUjICkNm9hwJfTzUhkBzxBsyFFdExoWEiZWOy/wStSohmhkIj/Nmra1HX8mVJc6zsoJfeJ3u9AgqrgG7/EyWpmst0V1im/C71kxtqgIzOEOaIzPB9kO2PlZHlIVFnkQg3GoH/cnXm48AhbTNLqOu0yvJb+/wuKuTI+ATrSHa/Z7vmz4hUhXR/DeBI3u5ngRPBQHBuTlg6c+FY0WpRiEkQZ+GNFnLDQkJxwQAyG7sSXSnZP3KhSat8Cthuk2ZaRX1GN1msQAlydjmzkDtJipFS6Lhs39bUfCanUWmD9kVtCn5f4xSz1NDUlPD+OVgvBbP3CjehmU+8Udc1tTcB2qyLQaGnCdy7YI+pYrXLh0iNEnINEqASFHo/Ec3GhLffXtVWFVHaK1LaWKj2hEEfSJXLyw/UkaVA/Fki1Fo2tCrpiRHgK7S0Tp+EDycO/DBraZObRToi1SgFlgZXdByVA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(39860400002)(396003)(136003)(376002)(186009)(1800799009)(451199024)(82310400011)(46966006)(40470700004)(36840700001)(81166007)(356005)(82740400003)(40480700001)(478600001)(70206006)(70586007)(54906003)(6916009)(41300700001)(316002)(8936002)(4326008)(8676002)(5660300002)(44832011)(36860700001)(6666004)(86362001)(40460700003)(47076005)(26005)(36756003)(83380400001)(2906002)(426003)(1076003)(2616005)(336012)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 07:31:50.8315
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: bd81ed0a-f742-4958-6166-08dbade22b9c
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SA2PEPF000015CB.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB8371

When running with SMMUv3 and UBSAN enabled, the following is printed:

(XEN) UBSAN: Undefined behaviour in drivers/passthrough/arm/smmu-v3.c:297:12
(XEN) left shift of 1 by 31 places cannot be represented in type 'int'

This refers to shift in Q_OVERFLOW_FLAG that is missing 'U' suffix.
While there, also fix the same in GBPA_UPDATE.

This should address MISRA Rule 7.2:
    A "u" or "U" suffix shall be applied to all integer constants that
    are represented in an unsigned type

Signed-off-by: Michal Orzel <michal.orzel@amd.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
---
Changes in v2:
 - add Bertrand's Rb
---
 xen/drivers/passthrough/arm/smmu-v3.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/drivers/passthrough/arm/smmu-v3.h b/xen/drivers/passthrough/arm/smmu-v3.h
index b381ad373845..05f6b1fb7e33 100644
--- a/xen/drivers/passthrough/arm/smmu-v3.h
+++ b/xen/drivers/passthrough/arm/smmu-v3.h
@@ -87,7 +87,7 @@
 #define CR2_E2H				(1 << 0)
 
 #define ARM_SMMU_GBPA			0x44
-#define GBPA_UPDATE			(1 << 31)
+#define GBPA_UPDATE			(1U << 31)
 #define GBPA_ABORT			(1 << 20)
 
 #define ARM_SMMU_IRQ_CTRL		0x50
@@ -159,7 +159,7 @@
 
 #define Q_IDX(llq, p)			((p) & ((1 << (llq)->max_n_shift) - 1))
 #define Q_WRP(llq, p)			((p) & (1 << (llq)->max_n_shift))
-#define Q_OVERFLOW_FLAG			(1 << 31)
+#define Q_OVERFLOW_FLAG			(1U << 31)
 #define Q_OVF(p)			((p) & Q_OVERFLOW_FLAG)
 #define Q_ENT(q, p)			((q)->base +			\
 					 Q_IDX(&((q)->llq), p) *	\
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 07:32:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 07:32:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595371.928907 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQXH-0002ra-7X; Tue, 05 Sep 2023 07:31:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595371.928907; Tue, 05 Sep 2023 07:31:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQXH-0002rT-4U; Tue, 05 Sep 2023 07:31:43 +0000
Received: by outflank-mailman (input) for mailman id 595371;
 Tue, 05 Sep 2023 07:31:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0K8l=EV=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qdQXF-0002rN-Pa
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 07:31:41 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 40a05c4d-4bbe-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 09:31:40 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 98AE84EE0737;
 Tue,  5 Sep 2023 09:31:38 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 40a05c4d-4bbe-11ee-8783-cb3800f73035
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
Date: Tue,  5 Sep 2023 09:31:16 +0200
Message-Id: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Given its use in the declaration
'DECLARE_BITMAP(features, IOMMU_FEAT_count)' the argument
'bits' has essential type 'enum iommu_feature', which is not
allowed by the Rule as an operand to the addition operator.
Given that its value can be represented by a signed integer,
the explicit cast resolves the violation.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 xen/include/xen/types.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h
index aea259db1ef2..2ff8f243908d 100644
--- a/xen/include/xen/types.h
+++ b/xen/include/xen/types.h
@@ -23,7 +23,7 @@ typedef signed long ssize_t;
 typedef __PTRDIFF_TYPE__ ptrdiff_t;
 
 #define BITS_TO_LONGS(bits) \
-    (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
+    (((int)(bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
 #define DECLARE_BITMAP(name,bits) \
     unsigned long name[BITS_TO_LONGS(bits)]
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 07:32:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 07:32:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595372.928917 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQXW-00039Y-EO; Tue, 05 Sep 2023 07:31:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595372.928917; Tue, 05 Sep 2023 07:31:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQXW-00039N-BW; Tue, 05 Sep 2023 07:31:58 +0000
Received: by outflank-mailman (input) for mailman id 595372;
 Tue, 05 Sep 2023 07:31:56 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=AA/O=EV=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qdQXU-00038m-MD
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 07:31:56 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 47fad186-4bbe-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 09:31:52 +0200 (CEST)
Received: from CH2PR14CA0037.namprd14.prod.outlook.com (2603:10b6:610:56::17)
 by MW4PR12MB6756.namprd12.prod.outlook.com (2603:10b6:303:1e9::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 07:31:49 +0000
Received: from DS2PEPF00003439.namprd02.prod.outlook.com
 (2603:10b6:610:56:cafe::4d) by CH2PR14CA0037.outlook.office365.com
 (2603:10b6:610:56::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Tue, 5 Sep 2023 07:31:49 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 DS2PEPF00003439.mail.protection.outlook.com (10.167.18.36) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Tue, 5 Sep 2023 07:31:48 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 02:31:47 -0500
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 00:31:47 -0700
Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by
 SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27
 via Frontend Transport; Tue, 5 Sep 2023 02:31:45 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 47fad186-4bbe-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NjsBEEkweSY9bfvMBo05rIV2ARuIIBoVvKgiS771qm7QhJ2ptu+xMBE4+q9y/+eB2jx3tHtGV0pmFvaoVlPbkj4ITzfZs8I7LfHv5k0nVatCl+pd6qwwpVrbMW01gMXh1Y6FNjJdjQDhLDnWQul6wBRWuy6Gli4xtb/CQ8xamFHjuxXDHwzl5ZKDVL3txnZdQAtRipc30yeJwJxAYdIG0T1IJLpzn15d7VTfZLFRLk30+rIdkXziRCOnwW6kjqX2rU8OWHnR6Wa2FVSlNxiQ1/moftRwWbppZu5IKvACU9kuSZftqTkVpAmPFtKd2OZkRCRYk+b9Acjc1dRkqidD7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=uQos5evTDRDmWxEzyWKU7S4SaDAyuWyzW4IdN3YnOu4=;
 b=fHAuQUgVVThS0TTVJZlFpySbeHR5UcxHUsgYGXD3B0NdUpld8/GL/o9CIV4jkAli/PBXrEP3j0yDfyWAPlr9HXovyC3zWbL5sicJWjv7yE9xlOKzDLw/52mpitb7wZOyYLLhrTBwEcYYiLk4g9DeW2EAcLVD1DOQeLy31xlylkUwlFYhnA1Fr+ctZg5YwG8YdDLybQL3zdD8Cn/buiE9VGy/yFBcFWtarcH9kCcJH4LPZBjtA3nPsf7jStl7JMToNbF+m+/D2KKOC8Sx07e2ycxJizBlJaELn/B2b2zwDJzC4GG2Spfqr8mdRu1qd3Uhv09aKzj3Q5a8bul5aWDq4w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uQos5evTDRDmWxEzyWKU7S4SaDAyuWyzW4IdN3YnOu4=;
 b=il3Q7gig+EodVIT12b5867/47cvgMqduZY3l58FbSP46EQtK5tWEy9ka3QvwlFUmmkNoOSWJRf2T/7D/SpC47ytIrEHIh2uDlYhkBnYMpXMKKpWN0ppHrzJAe0UGhlME8nj7l5Xk4+Ux9xnIKt6RQUMha/SFKv1FQNNqmpePxjA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Michal Orzel <michal.orzel@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Michal Orzel <michal.orzel@amd.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Wei Liu
	<wl@xen.org>, <Henry.Wang@arm.com>
Subject: [PATCH v2 0/2] xen: fixes for UBSAN findings with SMMUv3 enabled
Date: Tue, 5 Sep 2023 09:31:33 +0200
Message-ID: <20230905073135.12360-1-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF00003439:EE_|MW4PR12MB6756:EE_
X-MS-Office365-Filtering-Correlation-Id: 20319af3-3c28-453d-31bc-08dbade22a08
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	eZhpEDI30dHhcghPp05QExGVhedE+7ADCagO1tr3iKGU2SdJPYL2QRjWzKSx25U9Iu2cBylbZD9hCOV2VUh7fyc6F0nQegSPY8FNpPuVMhxt+pg0JxMlv+s8xW+agMUOzQsJOLzCsCu5dM4cZSTp+IZ1qWoTDlliW8etTQY/Dz6IXpRuIvUjm5ywivFjZIGeU4g7sAw5IA2LuUIpCHBT1dSdlQF5bddFD5PW52tiOvMHrqJEQ7FsDzvIwNeDXpP49DxHxv03ADax1ztlXPspHauswpt7MY7sj0jw5qKv+CS+ypcQoeRWKGfS3WeqsUxH42/rQm4lNCikTt1/Ay4PBGWy2hJlTcM2VnzF7FcZD8JZV40BBHExGOqxO60CgYaopqLS9sml+ySl0eQC3At55E0o9t/XztF3M2C0I1JlVTbRlCVIQiVlEVdBRR9kB1hT/pjTYSeixQ9PXSG5iRDQhyE8nGBdWkaJ1zXndeRZ3NVHeVefoQ0xruXBRgmfkuPlgGGsV/xMn8kQUfaVghv3b1crBHUntB+vmTAeUz5SJMZ9YjS+kkUa/KoWAsILF3ytxx/j+Isufk+cPhi0zQc69toR87XPGxWg5xlFHbh5rDdLjEhLv78rdeG4B3iq+a9vwMn4/Nyqd6LoftnTafakF69+vhhe8Iy3okWg0VSJ/1y1u1xFTTEaefuMxshkTZjNZMwW6x57FCztM3vOJRawRJ+BaZgaXx3VX+AM5F+0ApQPEVhX5tCQIKfEpmxU2vcP7rB80kXyeaIAIzUaASPG5w==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(346002)(39860400002)(396003)(376002)(186009)(1800799009)(451199024)(82310400011)(36840700001)(46966006)(40470700004)(6666004)(82740400003)(1076003)(2616005)(26005)(426003)(336012)(86362001)(478600001)(47076005)(36860700001)(81166007)(356005)(83380400001)(40460700003)(44832011)(8936002)(5660300002)(8676002)(36756003)(4326008)(54906003)(70206006)(70586007)(316002)(41300700001)(6916009)(40480700001)(7416002)(4744005)(2906002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 07:31:48.1670
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 20319af3-3c28-453d-31bc-08dbade22a08
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS2PEPF00003439.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB6756

This series contains fixes for UBSAN findings reported when running
with SMMUv3 enabled.

Michal Orzel (2):
  xen/arm: smmuv3: Add missing U for shifted constant
  xen: Change parameter of generic_{fls,ffs}() to unsigned int

 xen/drivers/passthrough/arm/smmu-v3.h | 4 ++--
 xen/include/xen/bitops.h              | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 07:40:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 07:40:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595397.928946 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQfU-000663-RY; Tue, 05 Sep 2023 07:40:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595397.928946; Tue, 05 Sep 2023 07:40:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQfU-00065w-Oy; Tue, 05 Sep 2023 07:40:12 +0000
Received: by outflank-mailman (input) for mailman id 595397;
 Tue, 05 Sep 2023 07:40:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdQfT-00065q-Jg
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 07:40:11 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on20613.outbound.protection.outlook.com
 [2a01:111:f400:fe12::613])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 70e34792-4bbf-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 09:40:10 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU0PR04MB9370.eurprd04.prod.outlook.com (2603:10a6:10:359::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 07:40:08 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 07:40:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 70e34792-4bbf-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FQA7GhtpOcpjajrcN8tP4BsWS1xijlY9QTDOv6uoCMp2XP+uWqO3D0SczQX3IABWCWoLR0/CPjbH8NHR+p9nTqggDglAN7uzmAiLOpyv0Q1C4Lr3gvQq2LNWR44VwntptVhiloTO93BGmeLs0NR/TqGe1EWBRcKiuP8PMQZXyJ6pR4JgaA9NbjXojYNcsnzbpVa04HBm+Ba4Y0ExkOdG4AP7vvWUpKaiaQVUNpvf14gr0U5IHc7u/US9UfI1QzawhEiTDsbKa2z+mS/WtXca8QQbV94rW4Ay74y0jLp3D3ykzH8agD7EqLYd3XlTKGZe/TFjf2//2/tqOmCu9u0H2Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rDGwdodHeI8Exek8Qg94JKUD6WpPOC1FCUmeGauuBDk=;
 b=AJ0hj6PYq0oNTMlb4pazdClMRdDE7IegAPqeWyZDYSQvFMQTpDzDrXlSpO1mK9B64FeQlzWYcbzYuDmgOZlKn+Io0g0cTGGiRx+4StGOdCCvrj3eFtKdiCRfErO6ZiQNR9fET6yRha9RiuGhy8iQ61QvrsLoa0c6HS61ZkykezQ6jF64afuzWz1Svtc9yPfKLAlp4T6lMl2R3/Vmku6kAAmsvyBzzVNS8rsx2t0VoZLGaAuJzwHINGpi+oBrWZoJcDvay9e/VYUaPTTbq0Ef4zg+mlwlP8DvOSAdlfj5Jf5XMWQq90+Tti9/kj9mKv0EWWumfs4vLdSoX2oeo+Pl+A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rDGwdodHeI8Exek8Qg94JKUD6WpPOC1FCUmeGauuBDk=;
 b=i8F8n4ZurrSd0kWN2ivL6USgNeRmKatMKZVH1mUc2RYNITtcVWiLH23rwHyjBW6fPi73V7YYOg/p50xm+EX6FW1b2znJnBK+Qfx/3gbU33uzBPJdMH7UnpDqxhsG8d/QGXWRXT0BZBPnUsE4KSFMZ+7ynIgqfkZVWAga+6bu5c6lZVfg68AGMgnv4Ecyv7wvk5VqopUIKO+2NFow31jJOnsG+PNcsalDcWJpfdCqILHIeZUaZPfU7PE1pZhsGqoqTdJgS4XrTbG/OuYKs0pkyfdBSsAXP4wqQYUjtudvC3BxI1WKwDJN4E4H/ewB62pTLRS+/QE1IWxGoRfcc7UshQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <fcd13ea3-3da7-17ec-6ed8-a983454e372d@suse.com>
Date: Tue, 5 Sep 2023 09:40:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v2 2/2] xen: Change parameter of generic_{fls,ffs}() to
 unsigned int
Content-Language: en-US
To: Michal Orzel <michal.orzel@amd.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Henry.Wang@arm.com, xen-devel@lists.xenproject.org
References: <20230905073135.12360-1-michal.orzel@amd.com>
 <20230905073135.12360-3-michal.orzel@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230905073135.12360-3-michal.orzel@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0075.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1f::23) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU0PR04MB9370:EE_
X-MS-Office365-Filtering-Correlation-Id: 74cc26ad-96ce-45c1-7bb8-08dbade35436
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	EITn/vH5xMCGaLbZC9C30UyP7lY0gniemfLbwLp/m63Zo8odnCtk+oBY22LJdDDlR7+yDsmSKJNb09IUdMlkMmToQH1HzR2+TqJBz2O3PrljhgLDGvCuEO0AveHOXtoqgh4QlKWhjMCgMmOoVvFZWqIvKU9ag+j+cnNVBdhzI7phZ80yCdanhaNERom/PDtFCdJ9HLEyX26nOvoF61nGYC0hPmoIVQS4qG6k7G5ymM+eCFsSZVfhsynlWucBiAOvCu+o1zeBcAJdmCKnHXswPnRI70E996ulhoVISbURkshtxJQvCty1OB2Op254MHRd2x6kXVskBBqj0Kd9h+8GJlR8HyAqoRNFICCoIdbF0WKtpBqpLyqwjpdl7SoS+ZAuOZFyVV61LfwZuzNtYdcCaZg09DzHJ1lvXiCVVfwukJLlBne75NOG0re3e8YE1w9YNFABgB34C9V/jWdkK/YG8GtxN3wywn7Z5Tr3A7l36/qwmGpCO9Pfn6hOeaeUAZwLzGjuB6mlzwGOXTqoOCu2z4OQUMkecEez+Pr4KLOFOyxTIyr+P0L3r/rfxqH1rnO/23774JJb2qkN60n6+PVUglOiKGEMe3Uqa8nPtYEVwM/kILeatFegDb76lPeibAwgYBC/lyndY05ypb8NUzBVNOWx6fz10oRM7V6v3CMZKvE=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(136003)(396003)(346002)(366004)(451199024)(186009)(1800799009)(53546011)(26005)(5660300002)(2616005)(66556008)(66946007)(66476007)(6512007)(316002)(54906003)(6916009)(6506007)(41300700001)(4326008)(8676002)(8936002)(31686004)(478600001)(6486002)(83380400001)(2906002)(31696002)(86362001)(36756003)(38100700002)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?anNrSFJCbWlzRGFJc2hRU3pRM2NTU0lxZDBtUlZBRjFwOFcxR0hhUW40SnMz?=
 =?utf-8?B?QkV1WGJLcVJoQjNzU1liL3l1aTFETmkrNWxqcVN1dXV6Q3pQV0FzbVFmTVRW?=
 =?utf-8?B?eDNLNU1SZkdDUWtnWkQ5UTVoM3hCZFcvZDkramhmWURvYnBiQnMrc1ZVTXhK?=
 =?utf-8?B?bTd1UFcxRGN2dXJlcmFkMmMxR3BEbDZNT2ZES3Rnbjh2U2VSYTJuV1ZoZWU0?=
 =?utf-8?B?SG8vUlJkdkcrL1NBS0dzekhMVlpxOXkyZEt4ajNwUGdJSFhrOCt0VzQ1RTl0?=
 =?utf-8?B?V0g5SGk0ZFBKOVA1T2ttd2hLNnozWG1Yb3ltbURkbzNMQ04rQ3ZSWWJaeHBo?=
 =?utf-8?B?UlRyUmNnR1RzVDNsak5YWnFyMjhNeXdhOVhyZjRiNlFBQU83Q1IwYy81UG5F?=
 =?utf-8?B?YXpuK2NaSk4vM2JmazA0T3I0bmh2eWl1dVI1K3ZET3RMMkRxT29DMU91eHdp?=
 =?utf-8?B?WStJTVNoTks5Q2pDY2IrcTJyb1dId3RQalVGT0ZHaVVGZktvZlB1MTBRMURR?=
 =?utf-8?B?eGdVNnp0NjFIeVNENm4vUHF6WWtyKzQ2ZGlyS2ZOU1l6OXpkc1lIUk04ZGo0?=
 =?utf-8?B?TVJZTTZ0Vkt1MGlDT3dYdkMzL29RRnVjbjM4M3NtY2R0Z1ozWDVFSSszNkJi?=
 =?utf-8?B?ajBQTU9hUElXTFNuMkFQMXlReS9VSkdOS3NCVUNxOHZlck0vaUpIendaQkpB?=
 =?utf-8?B?ak02S0tDM2JRSkpzR29uZEJlWFlJc0hNMVRPOHJLbFNCb0E0bnJ1WmpHUnd4?=
 =?utf-8?B?Q0VqbTJTNzJMbU9SMWNSYUt6RXFUZy9ITmpjNW82R2FUdkU4TmZiNW5WZ050?=
 =?utf-8?B?K0hWRTlvL0ZnL1hUMTJVeVM0OTIvZ09sYnc4TkR1ZHNaOVF3d2huVFlNSkJR?=
 =?utf-8?B?d21PSWNZTDZ2dVVRUG0rN2lmSVV2UlBhZ0crcWczSHU4UGUwWHhHeVdzeUcw?=
 =?utf-8?B?QVR3QTRBSUIrRmIzRGRjNVJ5Zm44OWlPazZ2eUFtMWwzcVo5UFg2UkczUlU3?=
 =?utf-8?B?eVBUUTE3SFErM0J1cTlpYXZ0MnpQQ2dhRmViaWR3d0JYVEhEdmdPR1RCS2Mv?=
 =?utf-8?B?R0JYQUhUL3VKeVRSUHNtZnFZLzRlZHlKZHZYN1V5b1JiWU1OTGpvd2FrWEU4?=
 =?utf-8?B?L2dmNzdNUWVmeEVJcjRpM1kzaHhBam1GSm9LdFZNSEtXNmtYTTNHRFlvaGV1?=
 =?utf-8?B?SjVXQzZIZFduSVJsVUY1Qms2bWlGQVJzalorY0Yzdk9lUGdValc4clhhWE9O?=
 =?utf-8?B?bHdLMm5Pc01NREdVTFI0bmV4ckFWYUliTzFlbk1RUjk4c2Z3SFIwQVArL2VF?=
 =?utf-8?B?WVMzZk8xRkVjUVR3SzBJMERuQlp3TExXNUJBOGVUUm5sMXdMNUczVmNyVk0x?=
 =?utf-8?B?TjA4NE9NVDRlK0hndS8xcGdRenQxWitlU01KNUxTSVo0blN1UmI0Y0dHaVNS?=
 =?utf-8?B?a0RKcU1wTnhXM1dWQ3ZtbWR5L2NGa1FNMThGb053ZEU2UHhLVFFTdjlkWTE0?=
 =?utf-8?B?V211R3A1T05Bb085V2ltd1R5Z1BBWW9acFFueTdnOEE5SCtGd0tEckJCczVq?=
 =?utf-8?B?Um5EMmcvRVpxTlJWYTBjTkx5clVVN1J6ekhycnJSdjJ6dmNHbFNmNEo5QWh2?=
 =?utf-8?B?dTNXVHlBbmdWSkIxWkhHdTNBU0c3bTRoR1gzeFI4eUYrNmhSYTFIK0dhVk8x?=
 =?utf-8?B?ZXllbnZZN0cxcFNRMmhaNFJiOW5YVUp3a25jTUJuejRBM2lKQWliRWxOOCtQ?=
 =?utf-8?B?NDlhUGhseVdyOTU3Vm52eWs1aHVrNFZlY1luZnVLOFRhV0pFSjd4NWtWVFRu?=
 =?utf-8?B?TVJleTNQY3B2MnVBam50M3NVbTVJWWlUYjd1U2FZc1dST01uNXltUWYrQ21y?=
 =?utf-8?B?aW41dlhLNHJINmQrUFgyaUhjTDJkL3VRNkFISjFXajZMV1YveHZVSHkya2lH?=
 =?utf-8?B?Z1BCT0lhOHNiZVVDNDJ2S3RuQmExWXhvSlZGbkNtTHZMd2p5VmNaQkdJUlJS?=
 =?utf-8?B?dnR5LzNjMkRyTkRoY2wwZGxwQk9ib3dkRTVFV3AweSszWVcvZkNSVVdiYnVQ?=
 =?utf-8?B?cXI3SUg1OFNoSUtqaVhVUTJIMmpLbWJxL3FpOE04NXh4SlJDNU9xblVJdHV2?=
 =?utf-8?Q?ldD+gLn/ucjBNKufrFfg1GTGq?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 74cc26ad-96ce-45c1-7bb8-08dbade35436
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 07:40:08.6762
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: OQqp0uUpHoeVlG837rmWtgk3PoOUUyK2GxGDOcsCqOi6zUZZ3RcGw26GJNq1T97EORuFtmA3ZeZ8x5VCKVf0jg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9370

On 05.09.2023 09:31, Michal Orzel wrote:
> When running with SMMUv3 and UBSAN enabled on arm64, there are a lot of
> warnings printed related to shifting into sign bit in generic_fls()
> as it takes parameter of type int.
> 
> Example:
> (XEN) UBSAN: Undefined behaviour in ./include/xen/bitops.h:69:11
> (XEN) left shift of 134217728 by 4 places cannot be represented in type 'int'
> 
> It does not make a lot of sense to ask for the last set bit of a negative
> value. We don't have a direct user of this helper and all the wrappers
> pass value of type unsigned {int,long}.
> 
> Linux did the same as part of commit:
> 3fc2579e6f16 ("fls: change parameter to unsigned int")
> 
> To keep consistency between the helpers, take the opportunity to:
>  - replace __inline__ with inline,
>  - modify generic_ffs() to take parameter of type unsigned int as well
>    (currently no user and the only wrapper generic_ffsl() passes unsigned
>    long).
> 
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Tue Sep 05 07:43:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 07:43:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595405.928956 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQiK-0006o7-AB; Tue, 05 Sep 2023 07:43:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595405.928956; Tue, 05 Sep 2023 07:43:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQiK-0006o0-7T; Tue, 05 Sep 2023 07:43:08 +0000
Received: by outflank-mailman (input) for mailman id 595405;
 Tue, 05 Sep 2023 07:43:06 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qilU=EV=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qdQiI-0006nq-H5
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 07:43:06 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2060a.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::60a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d8fc72f0-4bbf-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 09:43:05 +0200 (CEST)
Received: from DB9PR01CA0005.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:1d8::10) by PA4PR08MB7644.eurprd08.prod.outlook.com
 (2603:10a6:102:262::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Tue, 5 Sep
 2023 07:43:01 +0000
Received: from DBAEUR03FT040.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:1d8:cafe::d5) by DB9PR01CA0005.outlook.office365.com
 (2603:10a6:10:1d8::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Tue, 5 Sep 2023 07:43:01 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT040.mail.protection.outlook.com (100.127.142.157) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.25 via Frontend Transport; Tue, 5 Sep 2023 07:43:01 +0000
Received: ("Tessian outbound 5c548696a0e7:v175");
 Tue, 05 Sep 2023 07:43:01 +0000
Received: from c5fac1c3bc5b.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 5BA8EC25-71C8-4443-B33F-D3863FA92CA7.1; 
 Tue, 05 Sep 2023 07:42:20 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c5fac1c3bc5b.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 05 Sep 2023 07:42:20 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAVPR08MB9794.eurprd08.prod.outlook.com (2603:10a6:102:31e::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Tue, 5 Sep
 2023 07:42:18 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 07:42:18 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d8fc72f0-4bbf-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mPkDAnYQHJqcmCq75LxYkg4zpnkkUwhuZK2Yr8VzeXI=;
 b=rJR/Mg5Hgw0VfYJYi+AX3PsMoYwHHIq7IdxJYfn7fXUcoYXcs6CGBYD1nfBt6z1/EOxarVFH20Thkyr1JBSCXue7LB9+Dw7hSmg+kaqP/EsncDrov/HDtl3voz4CZbN6fTnjw8nTKGKmwQfVFiL/5i+F9P2iGOdq27iAPzB5A+Q=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 6a6190deb9384785
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=adiA1zn/P6n3l1zPuNPm3l5ZCFuG/th9JQ5HYGVhv47mPt7jYZ3Wa8HQheHiHjdqyFmiZQsubL5807sMpRkWTtyTGcqGmq0iCUB+Q4hchcO3pniiWRlx9QlN03T5r3ppZ7ywu39TngGmSN8HU+2SlGBmkwSV2xqiq9pvaF8jw8bpGOvnpB4+8+CDpCUHMrbloVLKwbFm0A8wGljNIqo5/UpzEdEapVREN5lyrGyptMyUWs5yUuv0dW7wqC+7AfEEFJo4R1wzKHN/LfwHh5gExLlLwODgxdSqzBHgcmiVrlkDG0esrioSW/GxxIdh1flfoe1AgRHlHM+tkfXB4lTLVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mPkDAnYQHJqcmCq75LxYkg4zpnkkUwhuZK2Yr8VzeXI=;
 b=Uo11qj9uHx21Zqe4DxQsEjGZeo94E85yYCh10urn1hH4VVzv3978Zq95uO8Lbrm+O/N6VESQWhL5HWxmdr2I1+9wELt/XPvn2u1gYv3DcWnwbIazasT3isRSjDcOXyQdkP/8QNEOtJjRrLyy3fm8SE7J4hkO2Mdgon9bYamkvbOYf6yOr9qMahFZ4Q+s9yUv8QkEo3LKWhOkjqwgFy95kpMTi5qKV562Oef43uYnkTkHhMcI5zM6068BjuRZGM6SHCntFC9krF3a0K6qt923RWvY0/7kOewAdSgYbgiNnSySOdjNDCrzVw+dA4rnB9tZiVpIGSF07wXpPNTfXr7UNQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mPkDAnYQHJqcmCq75LxYkg4zpnkkUwhuZK2Yr8VzeXI=;
 b=rJR/Mg5Hgw0VfYJYi+AX3PsMoYwHHIq7IdxJYfn7fXUcoYXcs6CGBYD1nfBt6z1/EOxarVFH20Thkyr1JBSCXue7LB9+Dw7hSmg+kaqP/EsncDrov/HDtl3voz4CZbN6fTnjw8nTKGKmwQfVFiL/5i+F9P2iGOdq27iAPzB5A+Q=
From: Henry Wang <Henry.Wang@arm.com>
To: Michal Orzel <michal.orzel@amd.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Jan
 Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2 2/2] xen: Change parameter of generic_{fls,ffs}() to
 unsigned int
Thread-Topic: [PATCH v2 2/2] xen: Change parameter of generic_{fls,ffs}() to
 unsigned int
Thread-Index: AQHZ38sXKQ5hzrjtLkWszUwJKclG67AL2VqA
Date: Tue, 5 Sep 2023 07:42:18 +0000
Message-ID: <61D8EE1B-B656-44BE-BF28-7AE4BF163093@arm.com>
References: <20230905073135.12360-1-michal.orzel@amd.com>
 <20230905073135.12360-3-michal.orzel@amd.com>
In-Reply-To: <20230905073135.12360-3-michal.orzel@amd.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PAVPR08MB9794:EE_|DBAEUR03FT040:EE_|PA4PR08MB7644:EE_
X-MS-Office365-Filtering-Correlation-Id: b48a4eda-df3f-4ef7-3b1b-08dbade3bb45
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 QJdY+tem/4kAqxrlDONPLJ2JrucyUkeX5q13+Awjny8hgeV4fVXFCtVQ+OyGY8EIU7GPXWb7vKJWfTi39ToIhFyt25d/vUVdjL3AsZwZionlkH2eFTiscepRV8zgGssK/v9sxyPIPJAT3HC4LloI/rFMJMgR7x1HlxXRwxN0WPYGwBy7jkIupT1BQWJBcpWiKd+CCXxwGznVrYrTnuPmyTLAR0zDWIdTU5+VvdHajRNzXrOP33KBaqA1gvEneNSsvn74JPdqNdlMY5xKJqolPOwoIxTypa/+Kh9u+1JXDcS6O27f851IeQ5yXYzVLiBtbXqVQ+vFyciUaO4gVo9IgdV/wJ+HZAj8v+SBP0w8a51JvZEhD09GwXBRdGC/pv3vwRzRk/jc5aZS9vKUZVqyJWsePcr11A1RQ6jhOiUoz//5WpQLn0dKDdlDo4Htty7FVJqI8inNDTMaNPZcTX+hsQpovOuGkzVaHUqDnmgHjNOIgLjGhWgNJ3lo6pTM4ndAegHjM7lEFAXV7yU90P50U4lKMRY61gTb9NC4w3Gpr2jfHiECFRmO29Vdk13dyrn/wuPzlyIliw4FdqHKPZDjr8fmyBg+AC6QHNsTy39fB2L+ePb3+2oyqoo8kWEG3BMojlUH2hAKp599He/+ZcYX0QIv+5uIRdsJhm1YmMpSbxA=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(376002)(136003)(39860400002)(346002)(451199024)(186009)(1800799009)(2906002)(66556008)(66476007)(64756008)(6916009)(54906003)(66446008)(66946007)(36756003)(76116006)(316002)(86362001)(33656002)(91956017)(5660300002)(4326008)(8676002)(8936002)(41300700001)(6512007)(38070700005)(2616005)(83380400001)(26005)(38100700002)(478600001)(6506007)(6486002)(122000001)(71200400001)(53546011)(41533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <F46A5C3A9AC553498EF49BB95D56C584@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9794
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT040.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	2fae6622-a811-4768-ffe7-08dbade3a178
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Z34YelBLMcb1oHTPm+JeI115ra7cloM4zsygAx2jS2a+I2OWck01N1R3f3EdGEWK9sS/yzzfpj2INpR37i+y1ig08vSvk+0faoKFYCl1KFgvmpeY/RK5HxLd4ZLhRMVwRz6pkLpuHc76ibYFg3r+LGg7SfmMsUHXWrOfPUfmSF6sEnvAOps9GP6tJLk+pLJB/011T0WtYCds/p+LSRhcUvJ0+CXTda3r32vH1DwOAnmw94CDbesb3tryz+u+yfOft4qwQ5TsodMO97KWJ501PyojNVajzv0k9wryjTGBatG/cc6jxM/YUhPfrwEw1sG4OKFM7/C+vyPuFnXQ9k5Euq3Yde6GDZjT+spt0rLtsNEB7SepFrvdlJ6AF58/3sp6dzZ5MI1a8OzSF3yp+LMyxoG3GHBn3AbQpyAMkMLdn9R/ue8nFNfGnqRQwKfakLzf4BzdmTs1APrO4fqZh+Wk+F1mzLmTW6LKammXxfWLTvKW6Vxou/EA5kqF+lq6G2121BrIA2ihIFc0PcYSMWoLIaGzvGoKlISWXKCZ1zaGKbMnwMxthjl6g4DXTl7ImBtSKuFe02TP8M4zo5sKtsLMPU4VKoKQWcFhAniawXRAyXPjXXx196+bDcSu5rVY5X6iaMhbyOfYo3tMDp7Z4TwXPqmJxT7E61q/7XkYTqne/JkV1CtBONku/lHPfjfFqIfBC21BeD/sb0ZA7k4ioM5bgL5mqYbvslAlUxhH0sZudtVKENilUHRk2rVXrHlA9nhq/hpc/hB+D8f8WJ6UfDdBaw==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(376002)(346002)(39860400002)(136003)(186009)(1800799009)(82310400011)(451199024)(36840700001)(40470700004)(46966006)(40460700003)(41300700001)(356005)(82740400003)(81166007)(33656002)(86362001)(478600001)(2616005)(83380400001)(6486002)(6512007)(6506007)(36860700001)(53546011)(336012)(26005)(47076005)(40480700001)(70206006)(70586007)(54906003)(36756003)(316002)(2906002)(8676002)(8936002)(5660300002)(6862004)(4326008)(41533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 07:43:01.4115
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b48a4eda-df3f-4ef7-3b1b-08dbade3bb45
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT040.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB7644

Hi Michal,

> On Sep 5, 2023, at 15:31, Michal Orzel <michal.orzel@amd.com> wrote:
>=20
> When running with SMMUv3 and UBSAN enabled on arm64, there are a lot of
> warnings printed related to shifting into sign bit in generic_fls()
> as it takes parameter of type int.
>=20
> Example:
> (XEN) UBSAN: Undefined behaviour in ./include/xen/bitops.h:69:11
> (XEN) left shift of 134217728 by 4 places cannot be represented in type '=
int'
>=20
> It does not make a lot of sense to ask for the last set bit of a negative
> value. We don't have a direct user of this helper and all the wrappers
> pass value of type unsigned {int,long}.
>=20
> Linux did the same as part of commit:
> 3fc2579e6f16 ("fls: change parameter to unsigned int")
>=20
> To keep consistency between the helpers, take the opportunity to:
> - replace __inline__ with inline,
> - modify generic_ffs() to take parameter of type unsigned int as well
>   (currently no user and the only wrapper generic_ffsl() passes unsigned
>   long).
>=20
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>

Reviewed-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 07:46:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 07:46:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595412.928967 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQlu-0007Ou-P4; Tue, 05 Sep 2023 07:46:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595412.928967; Tue, 05 Sep 2023 07:46:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdQlu-0007On-MK; Tue, 05 Sep 2023 07:46:50 +0000
Received: by outflank-mailman (input) for mailman id 595412;
 Tue, 05 Sep 2023 07:46:49 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdQlt-0007OK-DB
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 07:46:49 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062b.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5db481a6-4bc0-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 09:46:47 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9317.eurprd04.prod.outlook.com (2603:10a6:102:2a4::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 07:46:44 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 07:46:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5db481a6-4bc0-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Za0oOFaL2eWkz7nP+lOjH62gOPUyiDot1o8vtYwsa7TRaPNEGvryjNZAvC3/0AhlMxYqqbbdoXW6NKIz8C0tgvwDVEMjbjKZNYDyUFzNOOoriojuygfrXRKfzUD2Th8u3hdkAVS8EfmzbZZGZRuel2KGizSKAtY+OXrreS4UmoUSoFwsPlFUyM0S1R9p75Wj4BctVGhrgixqKABxuxdEk1RKV+5r52haDxy+fvLe9ZWbP9gZ088fIDpZ5ep2wDNWXLb2mS9QmNpY9pHwLOT4AD+VCcXVdtR8NA1s//+hPGoPNdNWwZ/KUQOzH7VUj2WILd8zd50ldBA+xx9tFAoLAw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=arVjiqzRKuqF+U74p69xaqT0ApN91zlmkQkNxIWjppo=;
 b=X1ron+kZoN4zyyaJytoT+GiXPBBLewVO73r7bLGuRJAPJbx9+M/13R0LMqpTSI/ZxHhI0WXqajs+eHmaztTmJLbEqbPmA7puKyIaDNhYvx2drQyvUEE/6kFx//d+QDHIyBX4r5TVP67Z5U1qDxBu/EN9ERGAaDPe9CCt5QazhzMTBoccd8eU0PbJ68GrswR/5eIcFU2K9NiLCOoJ1amcyVg1R8nWRdrFPlK+Y5wnlVVud9w26yXWJ8n1uxI+n6z1TLrLbmnA7U39ESD9o35wVP8NCT/PYciocpxcsYyeTOg07giztxV3yNtAASPqfhZ8f5QbRiIBKxv/8pIVtW1/yA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=arVjiqzRKuqF+U74p69xaqT0ApN91zlmkQkNxIWjppo=;
 b=aBlTy9ChM7LwkkktbFDqCDyz7/pyzkTb+I3cwFiBKFmM6T8lGiKp6z4x+bxCiGft6zimjpao7zTsMcgGpboDrSviZdSOB0h33NsWLLJ8PzyUZtCTnZSGVoN/cgzVc2riK03nGZQkHEwMNBMo9NDjmwfBHX59lpdssfcCaAR7HH61DeCcJVI7RF4pmuarXT6a3ev95/Y+e2OwKbP+affN4pJChefuyLc617DW3mm3+6Qgs3mg6azzlR/HJad1r41qR8rvG3CVOhgYosSFIBVV6SYcFgqGS2CkZ1Ivg2JHSdomxilWiOe+03M54gWxULoVDBaD9EcKe67Pc2h/PzP/Eg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
Date: Tue, 5 Sep 2023 09:46:41 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0045.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:92::17) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB9317:EE_
X-MS-Office365-Filtering-Correlation-Id: e62f9755-6695-4202-9fab-08dbade43ff1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gquMebQXUi+0EYUJ12Ekwm1gCyyKpxPsIKUGuaaHIBYqkixiNDSt768PKHNkyxiCPytGTitRRoN5z5d2g+i+mY7i1m+fyncqfzfLNTo7uEYxJnXo6ZBOMKl9GcNG7+qalM4BEQwLklQKSufQ+IvcJW36+tJeU1qsfoE364KEDk0p7N5NLFvBFgIpfbVxFIXCGwyRg+dE4nx8aLhZr+VkLzZwm2/M6EOkyqb5hzZUtL6YOTD/uTLzOcjfObKX5CzpdGiXnUIE+7jEi3M0mGLfgyZgElSc0tD63Jwx85DCjVVv1+vt3wX6zUDLTbwW0xxvj8Yau3KK3MYyrX0NxwKSrXA/bUi/Z64YrrnYROdAX2YjQYwqjsWA5lp+qZM4U6Am+lCCt8OKlXXkWy3uDwfhtHozcR2rSigXBCddmdqSYVeqPqYxMYDQJQFGO3zVuxgfXSuV/a+lWmaqHnFI8YL4eOnYaoJP0GbtSJAL+e4OGEq6fIbzsD+zEbsOD6A9joxrS7kh54ToyKIsCiGRqupV0NhEDeyShW+ahmpGVDatcs9HJQGWdqhvrNvfMJBrIhi0BGMKqMLQRqTLYW/K7UIXZR9pAK/SF2JJs5y8HgQyOP+dHK6G0p5OnmNW1tubTuY2il/SQFKHPVEAkfGtbIH2PA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(366004)(346002)(39860400002)(376002)(451199024)(1800799009)(186009)(53546011)(6486002)(6506007)(41300700001)(6512007)(66556008)(66476007)(66946007)(6666004)(316002)(54906003)(6916009)(26005)(2616005)(5660300002)(86362001)(31696002)(478600001)(8936002)(8676002)(4326008)(31686004)(36756003)(83380400001)(7416002)(38100700002)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ajRPOHRQOHRhdnRsNWxXTVdldlN6VjBJbTBNSk1nY3lvUjhZNkw4eVM4Sjdw?=
 =?utf-8?B?TkJXY3h2Mlc5OUVDQjFwT2l3ZGpkL2JkRmtYNlkrYnFVbG55Qnh1RFRRenJL?=
 =?utf-8?B?TkZid3MyOUNNOVBBTFZrZ2dOTHh5a2pVSlpEZUtqRnRTSzc1YkRsYWZHemJV?=
 =?utf-8?B?dCtDYkRJVWpFQ2xhSWhzNTBHUlhvYVc2cnFDQzFQa25BSW44bkUxSHVrdWFy?=
 =?utf-8?B?dHFLTkhRcjdnWlNRMXhRT1BFTkdidXQ4M2VxemgxcDA5U3BsbjZ4WU9tcnBP?=
 =?utf-8?B?VUJWLzlpM3Jia2VXQldydzRSdytHYTJVY2FuZ2F0ZnlvbUhkdjhwQ24vZzNv?=
 =?utf-8?B?eDlvbDlHOEJZWFBjQW1WcU9CZElFMVZIc3A3alo5VjZoSUVHcE9zVzBEQ3Zo?=
 =?utf-8?B?b3BPRkV5UjJMVjNYVXZ0ZDhZUDhob3JDM1YyOElITWJpVkZjRSs2RUR5ZStK?=
 =?utf-8?B?V0xkWG10OEpJT3JET2kvRjlacGR0dEN1YmdCYTRHZGVVdzBDK1grNmVKWVdt?=
 =?utf-8?B?cW94bjlNU1prdnJFQzYwU1ZDYURSbVlibTdjWlhBR2N6c0ljaStqZmwyN2la?=
 =?utf-8?B?ZTUyRnQ5SEV2UzVUTTRFN2xaN0dlSk1WWGprQnREYkNESDgySWdwZG9yTFNX?=
 =?utf-8?B?TGJKM0piaTIrZXNpNjVKbnpSdnBudi90SjlhWmluOGRmMHhxM29DSUNRZmI1?=
 =?utf-8?B?TkNmK1hQb3VwY3BQYWxXcUQyZWVvSjhiN2VJOVVOVHpqY0htbFBMOXo1OEZJ?=
 =?utf-8?B?ekhubjlsLzVaam1XczVCS3pjcThFcnhoU1F3U1NPQUtrRVg4aWdDbVV6cGhx?=
 =?utf-8?B?QXg0ZElxbTcrcUd6endQUDBYelFCTHhIL20zN05BcUN2UDFTeW1TMVIvd0FX?=
 =?utf-8?B?V3hTSnRaa1JQc0h0enVqbXFDeEFrc3BHbkVvU1VDYTF4MnN1amszaTIweTJ3?=
 =?utf-8?B?bndYc1dvU1plQWFhbFp5aDFQV0c5VDhqUTVZVHl3eVkwMm9EUmt4dllNQWZr?=
 =?utf-8?B?M1BJM3Qwck4zTEcwT3hjc0VzWEhJMkRGMGhTNk1Ud0tCRGlUNGdkVHpVVEFI?=
 =?utf-8?B?YXZDdHNEM253ZnVONHd2U0NHM083WUFDanVBdzhsYnpweDByTTN0YTFYNmR0?=
 =?utf-8?B?U0hTOGJ2STBzd3k3Tmd4NWVKVDQyYWRGSmxnVU1Demp1MEk4a2ZHU1dUSzdy?=
 =?utf-8?B?dU9aV0k4OVJCYWIwVjJnVjZtbnNneHB3Qlk0blB0NS9tN1grZE9GVVlLdHpJ?=
 =?utf-8?B?Sk40N0pUQkR5anBKRXZ3RmRSZSt4M2ZmckpIWlZzT21OWGdoQjZMaHFqODF0?=
 =?utf-8?B?RGN0RDRrTkVzejRhR21meVVwaVF5SE9qdEZPbEo4RTZEb0ZUUmJlcXg3ZUlM?=
 =?utf-8?B?eFlEWXFvdFhVaGl1OUxlbGRKWkRYMVNoQVZFZkhZK0lHL1U5UmcySzR6Y1ZX?=
 =?utf-8?B?MlcwVEJWV3hTbkVoQ1VFbnQyZUtnSDk1TWtxaUViQTJ3R001YXR0LzN4amZn?=
 =?utf-8?B?a1JYOGdLZUZWcEgwNnd3L0tvcTQwNS94YzAzR2h6YS9OOUkzSDlIbmRET3hx?=
 =?utf-8?B?THJubDZzMmtDZ216VEVMSjRiSS9Vc0V4R1FaR1owTmUyR0hEeUtXVVRGSFAz?=
 =?utf-8?B?czBKRCtaQmFubWlPUXFzS05xcW8rdXFFNXRGd0xTRjlPUFpqRzRnL0FCTi9m?=
 =?utf-8?B?ejZSTDZvWStOek1DUzN1YXZsR0dYTzkyK0J1dmhVMDBZdWtJaWJNbE5kSGdm?=
 =?utf-8?B?amx6bGR4aFRMSlBYV1FIUzdEYi9RSzFvdHY2WVNFb2V6bmJ4SUFsbnBFblpj?=
 =?utf-8?B?MWczMnZ2MjJyMVgwK2VONGVMd3FsM28vL0tJR0g1S2FHNmFVYTZ3V2QxNU15?=
 =?utf-8?B?TENXbWNCaDFaQWdTWHk3cUwrTDVOandVOUo3ZkM3UldhbWFkUXhXNkpURFVK?=
 =?utf-8?B?NjVUWmZka3ltRmNteUNhUWFVTDFjb2Fka0dYdXpkSnh4MkhhWThPZ3RRV1hs?=
 =?utf-8?B?RnBTdDZFNzRWZlNLaFUzY0M1MjVubmVzY0FUWGJxRHV1eFZVK3VwRkJReDA5?=
 =?utf-8?B?akZZaXZiV3J6NndJNTZ0YXhMeFhUY1BKWm1BcStaMUVTL0YyVzhhVXJsbExs?=
 =?utf-8?Q?McVvl1t1CjONu3qcJWXefkyv2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e62f9755-6695-4202-9fab-08dbade43ff1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 07:46:44.1482
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: XoIZdTLwq2Pdb2OMaSW7sQdkthS90+iqBl0olraOuoXpYMGJ4etBk3omRFFzjPs/VI6HjRxBazAifBztt9bBEA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9317

On 05.09.2023 09:31, Nicola Vetrini wrote:
> Given its use in the declaration
> 'DECLARE_BITMAP(features, IOMMU_FEAT_count)' the argument
> 'bits' has essential type 'enum iommu_feature', which is not
> allowed by the Rule as an operand to the addition operator.
> Given that its value can be represented by a signed integer,
> the explicit cast resolves the violation.

Wait - why would this lead to a change to BITS_TO_LONGS()? And if that
was to be changed, why plain int? I don't think negative input makes
sense there, and in principle I'd expect values beyond 4 billion to
also be permissible (even if likely no such use will ever appear in a
DECLARE_BITMAP(), but elsewhere it may make sense). Even going to
"unsigned long" may be too limiting ...

> --- a/xen/include/xen/types.h
> +++ b/xen/include/xen/types.h
> @@ -23,7 +23,7 @@ typedef signed long ssize_t;
>  typedef __PTRDIFF_TYPE__ ptrdiff_t;
>  
>  #define BITS_TO_LONGS(bits) \
> -    (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
> +    (((int)(bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>  #define DECLARE_BITMAP(name,bits) \
>      unsigned long name[BITS_TO_LONGS(bits)]
>  

Furthermore, as always - if this was to be touched, please take care
of style violations (numerous missing blanks) at this occasion.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 08:21:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 08:21:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595425.928976 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRIz-0004t3-RF; Tue, 05 Sep 2023 08:21:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595425.928976; Tue, 05 Sep 2023 08:21:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRIz-0004sw-OM; Tue, 05 Sep 2023 08:21:01 +0000
Received: by outflank-mailman (input) for mailman id 595425;
 Tue, 05 Sep 2023 08:21:00 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0K8l=EV=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qdRIy-0004sq-Og
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 08:21:00 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 24bf2e4d-4bc5-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 10:20:59 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id F199D4EE0737;
 Tue,  5 Sep 2023 10:20:58 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 24bf2e4d-4bc5-11ee-8783-cb3800f73035
MIME-Version: 1.0
Date: Tue, 05 Sep 2023 10:20:58 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
In-Reply-To: <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 05/09/2023 09:46, Jan Beulich wrote:
> On 05.09.2023 09:31, Nicola Vetrini wrote:
>> Given its use in the declaration
>> 'DECLARE_BITMAP(features, IOMMU_FEAT_count)' the argument
>> 'bits' has essential type 'enum iommu_feature', which is not
>> allowed by the Rule as an operand to the addition operator.
>> Given that its value can be represented by a signed integer,
>> the explicit cast resolves the violation.
> 
> Wait - why would this lead to a change to BITS_TO_LONGS()? And if that
> was to be changed, why plain int? I don't think negative input makes
> sense there, and in principle I'd expect values beyond 4 billion to
> also be permissible (even if likely no such use will ever appear in a
> DECLARE_BITMAP(), but elsewhere it may make sense). Even going to
> "unsigned long" may be too limiting ...
> 

You have a point. I can think of doing it like this:
DECLARE_BITMAP(features, (int)IOMMU_FEAT_count)
on the grounds that the enum constant is representable in an int, and it 
does not seem likely
to get much bigger.
Having an unsigned cast requires making the whole expression
essentially unsigned, otherwise Rule 10.4 is violated because 
BITS_PER_LONG is
essentially signed. This can be done, but it depends on how 
BITS_TO_LONGS will be/is used.

>> --- a/xen/include/xen/types.h
>> +++ b/xen/include/xen/types.h
>> @@ -23,7 +23,7 @@ typedef signed long ssize_t;
>>  typedef __PTRDIFF_TYPE__ ptrdiff_t;
>> 
>>  #define BITS_TO_LONGS(bits) \
>> -    (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>> +    (((int)(bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>>  #define DECLARE_BITMAP(name,bits) \
>>      unsigned long name[BITS_TO_LONGS(bits)]
>> 
> 
> Furthermore, as always - if this was to be touched, please take care
> of style violations (numerous missing blanks) at this occasion.
> 

Then the whole file needs a cleanup.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 08:23:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 08:23:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595432.928987 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRL6-0005VZ-61; Tue, 05 Sep 2023 08:23:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595432.928987; Tue, 05 Sep 2023 08:23:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRL6-0005VS-3A; Tue, 05 Sep 2023 08:23:12 +0000
Received: by outflank-mailman (input) for mailman id 595432;
 Tue, 05 Sep 2023 08:23:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdRL4-0005VK-Ky
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 08:23:10 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0616.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::616])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7255db35-4bc5-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 10:23:09 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB6935.eurprd04.prod.outlook.com (2603:10a6:20b:10e::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 08:23:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 08:23:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7255db35-4bc5-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MTqY5TrPxWtDBQPYcbNcyHx6EViiuPprJmqAqoo9lvNvZ45lwbkMHIdcQO5a0zJb2hz0tQbSrdRyvOsJPvbmnw1qz1wBx8qHx+cJWVtzJ9HAKpsnRt8btC75iLuIkYJ1pwe1QHKRLhz6ZcdkE4+gtUTvsnj4Cc4gpG6u+T+xyEFT5L0QahDu5zOunv/0daDi+E/4pxYx4XQqJlUUxbs/6ZF8XzvrV5f+4MVuGn4q+0AqLgNz8SUqqDklHj1IaXvvKlutRRhskgwhXvOmNzAduiWrJxuE8NFAwkyfqkTxJjfd6YXrX6Ck0OCI2bJn4D3+dXrBxndSsAFn2Bey/BrrEg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fizhdZTeaN1ZrOIRkRNtGAYrbL2Kl430AMz7kkJjzXE=;
 b=KsKNIrR2Mo+7q630/A+SwpFgxqOzruP1wKzcS6m5ttmlOx8J++/tWCryKqmp+8Lsay65+Hwnw47ju02CxUnA+944oio24E2thG0UMLjl94e6HOSyRoLJfXdxlpxxchmW8jaWGsJvJKLW9oajDf7z1fKawq3If540As8CCur3mskWJEu++O9CU03Uk99M2COV8/qCjCHGxfPo5pOWQ5+aby1HXlb1weI287JrOBxc3OIz/JArDuNCFjGldP19ScBRqx9M7EsHLOIJ8OS6Kz926I5EW1R67Oe+zxfNH4Gs/dAjf/jCEQwFMBRX2o42qyRbv9lMluLQJTPPjX7ISFazQQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fizhdZTeaN1ZrOIRkRNtGAYrbL2Kl430AMz7kkJjzXE=;
 b=kwdRWpQ1w9bul1T2zjeqqolkFJ9chT6liF4S3Og7aIMgZKuAq4cB8G7IF5H/vwNaKkTBwqS8sLf4TXtxlvzwZ+EDCeWQhLt+/y6cnOA7uQVik4dt8Jq1hbstsbafxKwxro1xtU/TrneLRNF32/5+LE4Gr0o9rusdZqMjNZK/WWSnq9zyPLQ8aL984H3SP6jFaPUVK7Y5b5Wn4RmR1LkTLGITo41WLVPIfEZ7FeqB+QCUDi8yqH7bBPkPT2FVhm+TvYxnPr+TnwzE0DI1A7dNqLFKG/Bx7LL7yk3m1ZFGxmeR+2PQbBcRa5i59DeCB9tg+fR0zUvYlquSWqW6RNobfg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d131cdf5-8716-a6d1-5477-ed2bb60145cb@suse.com>
Date: Tue, 5 Sep 2023 10:23:04 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] Arm: constrain {,u}int64_aligned_t in public header
Content-Language: en-US
To: Henry Wang <Henry.Wang@arm.com>,
 Anthony Perard <anthony.perard@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>
References: <56bb2024-dea0-79e6-6a51-66e6c35a2733@suse.com>
 <5FA473DD-FC52-4F55-8B49-69E75752112A@arm.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <5FA473DD-FC52-4F55-8B49-69E75752112A@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0098.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a9::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM7PR04MB6935:EE_
X-MS-Office365-Filtering-Correlation-Id: 58bd49e1-75f2-4d92-b0a2-08dbade95517
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	m3ErvH+LRHBVeSaEJmM7a0MehL3sXo1OjnDaItcsk6uGOsBwEgiLPbI9ic4PbsnvHPXPe0filpDgb2hefhoD2vkGEEdii1c4tu+x1QMMgKutxN8V9ijs0Fl4gAeXcnL8KWcUEIwbofycRXo16mmTGJVSXSCTM7chSzmOvFgtAcP8cC2dQpJUU0BOcVIOZOikNeXztCYXdw0yYElCsnsIvO5wjQtZXDcndNpFBhO6GpPEZr8dl2T0WMGYCVOY+ZepGiLYQlgs/aa4uA3nwxWTXs6LQsIYldd9mQHWuD0unafbmPCcZqj6nw7riot4b5CWE0Wl86kXDafscCbZynZsDR5H8IYBbGO6t3TPSNt5TqHCZ64oBxnOrFsSE+o4a4R60ShBcMOrG9SIgJ1ECubM4ZnSlJhpeT3+zvwYyq6BmJUeW3+grhMzNLUDkkfotVIpF26snT+MfimKJCgFandx+MJCsHB3LEcMK+JvIfxMxdvMwQ0oW++/OZ6Fp0Vqf4Sw/TycAAB88tHUBDi6lyXZQe44eZhAVRXUgaf6TxsAGIOmFRfjFdY3GZrIgDBcwqg8H1+FS5Kpd4EvAmJynD12TEGd4fR8I/cQVcxD209h6QzdLRPaJ2EM+aV3q/Ecvy8P5ZN/oVHjDB2NitTlb+1vRN9y07c4433zCwkT3X8jHM8=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39850400004)(396003)(366004)(376002)(136003)(346002)(186009)(451199024)(1800799009)(66899024)(2906002)(38100700002)(36756003)(31696002)(86362001)(41300700001)(6512007)(6486002)(53546011)(6506007)(54906003)(110136005)(316002)(66476007)(66556008)(66946007)(4326008)(8676002)(2616005)(8936002)(478600001)(966005)(6666004)(31686004)(5660300002)(83380400001)(26005)(10126625003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M004Y1Z1b01zUlEyTWRHdnFMS3lsUTNQekRBakxwdDExajNxK081eXRpUklZ?=
 =?utf-8?B?WmJES3dna1hpSzBTa1Y2dGY5U2VaR1lZNS93VHdQaDFHamFJeE50VC9sL3l0?=
 =?utf-8?B?ZGtiQ2EyTmhITkIxODV3ZUJJbkd6QW94dy80UXAwVHJXekt5WDh0bVNibk84?=
 =?utf-8?B?cEJJeFlxM250SmU5U2l4bmVuTGdEVUdRRGsvYXhqM1Q2Q0lpQzRlNEU1eHp4?=
 =?utf-8?B?OFVCbkROZzR1ZUQyNVViODJ2a292NkFzOSs0WHFVbTMrdDZyUk1zQjdQQ2Zj?=
 =?utf-8?B?ZTR0SE53dWRhR004RmwwbUZjMzRHdnB0M1R1SWpaeVBMU3ByQVRBV3RTa0J0?=
 =?utf-8?B?SnRWZndWV3RJUjZwSVZSR1BHTVBidXlVRUx2RkQycE1lSGxTelh6OHlra01y?=
 =?utf-8?B?SWw5WlpickFzbGFjdW9hZFkySlRpVkhBQTd5cDg1cmExSkNMR1RBQkgxRHha?=
 =?utf-8?B?WVJ5RG1NR0Z4eEljOXJJelVyUVdCMm9PRUtQUldGNWZMeWlMeDRFblZiSjYz?=
 =?utf-8?B?aGNkNWFsWFFLZEtCRXJTSGdYeGVoMGNWaUF0b1BhZXUwSUJGa2FzdU9rRklQ?=
 =?utf-8?B?clByeElId1huZ3lIT0JVbWpiUUoxdW0rRkVpS1VuTk1mNXNhUzFIR1Q1MlFt?=
 =?utf-8?B?Rk9wVDN6biszOTdBV2o0ZkI0QTY2MVRvbHQ2cHFGcGgxdkdFZUcyUk9JWWNR?=
 =?utf-8?B?bXhVbk4yNkl5VlRBazloZ0VlNlFqTTNDOGd4OHkvZUhsRWFpY0JwdXFJZi83?=
 =?utf-8?B?YnBNUHhYWWNPREZwOW9BTndTTG5BejZ5WGRtc3FWemQ5VXFjeEZCWCtUeCtJ?=
 =?utf-8?B?SWtFOWtQVTF3cWo3dUV1bUJoWExMbHJZMW9FUXY0SVZTTmhydElpUkI0UHlm?=
 =?utf-8?B?KzdRd0dzTzFBcmJqY1E1dmlreFdtd2pPVDRNRUZPY29KVTA5cXpFMkloVlZP?=
 =?utf-8?B?Y3lwQzBWdERjRWlyV3VNRURPOTE1aU90eDFORlgwaTNQVVZXZlhYKzdHcDhX?=
 =?utf-8?B?RHdxdWlnYTRqZWpjN0l1OExMcTVSK2tlbGxvU2JQYUVlcjF4bUM1RlVHUW5W?=
 =?utf-8?B?NmRrRjQwUXhvZGNTUDhhV25XWVN4UVZjU0ZCSDZqQTVrc3NNcEZXTlJpeG5U?=
 =?utf-8?B?dkxlN1hxRVJyT1ozN2xqRUJPdjZPeHl1ZE1BQ0YrSkxjdnFZem5mZTJac2tD?=
 =?utf-8?B?bGtqTzJhWTZhNVV1cWVQZlhpQXFVN0o4VnduTnpXLzlNNUd4c2VEOEx2bGUx?=
 =?utf-8?B?a1YzOW5KWHlDanphN0l0a2RwRWJOT2tkbjcraVdnd0R2dytFVVFKb2lPbzM1?=
 =?utf-8?B?MVo5YXM0VWIwdHVjbHk0TDVsYjRKZlpnNUdUOG5JZm10M2lPTnI5N1JPL1Jn?=
 =?utf-8?B?T3pMN3BvMlNKQ2JldWcwOFZmaHQxMEVuNkRDaTkzVzhhQXhDNTdCTUljdjVG?=
 =?utf-8?B?Mis5QmRsYWIvM1ZFOWRzWm5YUzI1MmZxTkNpWUhPNzUrYXpoSXFDckNZdzRB?=
 =?utf-8?B?WGpEYksyeGRDRkFrbFU2WUF1bjB3WDlaZUg1MCtIYU5hc0FFQUlZNHkrTXVI?=
 =?utf-8?B?d2xmTldZMXhZTEY2eUM1MlRycGZXRk8rQ3o0d1VCbG5LVkQ4aytvUGZGVXhY?=
 =?utf-8?B?RUEwQnFGOTk4ekxkQzVVK1lweVZnejBsbGZ3UDd1ZnNyK0o3Y1JIRCs4L1lG?=
 =?utf-8?B?dGZLYlpJSllQM1lxa0dPQ2pEV2h4WmJtQVEzcDJNU2NTZFdjQmI5UmUzNkIx?=
 =?utf-8?B?c0pmTzd2RHVIdGo1ZG9IWVZTYnF3VHZOZkdmTmxUcVc5ZmtoZklNUy9yQ1VW?=
 =?utf-8?B?bkI0elFUQ2liTVY3MGdxR1I0TG44Uk8wRGdNblFXNlJIaE9XRDVYVUp6cSt5?=
 =?utf-8?B?dDFHRkVqNnY0UXpaRkZ4R1pwN21WaGxsRFdkd1lWSnAwS0krQVE3bmZ0TTFv?=
 =?utf-8?B?cUtPUHhKSy9ndzg5RkNoK2UzWkt6N3N0MTZzWHY0eTlaRWZ4MzBybWJycldx?=
 =?utf-8?B?VUZVNUNnK3VmTmk0R2c2cU1lS3Q4eVpabTR4YkpvUlhxQmRKakFzZTdMTVF1?=
 =?utf-8?B?eWtoTmI5T280OHo4bFBnU2xvNVFLaXAvWDRJNWdkR1lMQkp2VldpSDMwSU5h?=
 =?utf-8?Q?dZKSS1zbPJetVBcsP+dzMngSp?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 58bd49e1-75f2-4d92-b0a2-08dbade95517
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 08:23:07.1265
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: KdXtCsJoe0QcRsXun6wk1YEgmXKHpKfXyxSTYHFkvZqjqdtoPin4ntAvJtJB79rO5me9mDV2/NK5S1JQBU0qXA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6935

On 05.09.2023 04:08, Henry Wang wrote:
>> On Sep 1, 2023, at 15:26, Jan Beulich <jbeulich@suse.com> wrote:
>> --- a/xen/include/public/arch-arm.h
>> +++ b/xen/include/public/arch-arm.h
>> @@ -152,8 +152,10 @@
>>
>> #define XEN_HYPERCALL_TAG   0XEA1
>>
>> -#define  int64_aligned_t  int64_t __attribute__((aligned(8)))
>> -#define uint64_aligned_t uint64_t __attribute__((aligned(8)))
>> +#if defined(__XEN__) || defined(__XEN_TOOLS__)
>> +#define  int64_aligned_t  int64_t __attribute__((__aligned__(8)))
>> +#define uint64_aligned_t uint64_t __attribute__((__aligned__(8)))
>> +#endif
> 
> Today I tested this patch by our CI (on top of today’s staging), and it looks
> like below error will happen for both arm32 and arm64 Yocto build:
> 
> The arm32 failure:
> https://pastebin.com/raw/S7ZqmG6z
> 
> The arm64 failure:
> https://pastebin.com/raw/HMFh5tuS

Thanks for pointing this out. Turns out that not even all libraries
get __XEN_TOOLS__ defined (see tools/Rules.mk). In the case of
toolcore, the public xen.h is included solely to get a definition
of domid_t. None of the handles are actually needed. I wonder if such
a dependency couldn't be avoided. Yet doing so would help only a little:
Other libraries (evtchn or gnttab for example) likely need more, yet
don't depend on libxc either.

For the time being I'll extend the #if to also check for __GNUC__, but
I'm not convinced this is a good way of dealing with the issue.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 08:26:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 08:26:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595440.928997 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdROV-00066a-M8; Tue, 05 Sep 2023 08:26:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595440.928997; Tue, 05 Sep 2023 08:26:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdROV-00066T-JE; Tue, 05 Sep 2023 08:26:43 +0000
Received: by outflank-mailman (input) for mailman id 595440;
 Tue, 05 Sep 2023 08:26:42 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdROU-00066N-Aj
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 08:26:42 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20624.outbound.protection.outlook.com
 [2a01:111:f400:7d00::624])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id efe3b5ec-4bc5-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 10:26:40 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9262.eurprd04.prod.outlook.com (2603:10a6:20b:4c6::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Tue, 5 Sep
 2023 08:26:38 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 08:26:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: efe3b5ec-4bc5-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kmiK7gcobTEwJ1ZVrnCLcr2AnHc88NVOzsQ2dbZqutZIoOWGHk5Tn9+dA5lzxa8hfJClNDvAj91P+qi/WWC85jjk4vx0ZzgNvSLp3WOJl0QXf7U0evFC7+nauSBnzZ4ecNVEZ/jtHpOUMg40ZHhH4VLjQG/KWxmqvuxqCpNIl1fSQlJKnS4bz2s2miQK7JM/2IDgfwqdxZio3gebpk/qgKiEd246vvXEdFrVzuxbOHs1XfOzagD2o/vdmKY4dVQVZz/m9js/az5ouy+yPxXmvyvIe1c2VWyqsnRaWTAjWHSvbxS0Lr6H4dBFiEiywJW1Eowpon/vxWlNWkkCyBndmA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bCjZhitKxoSe0B59YDSAKns2l7OfkDSX/iRNgrXhgrM=;
 b=PpojojDA3+wYqbRd7DmNXJxM2tbB03H7rmVTTKoOooPEGaCUdpeDpMw8HjRSjHsl+c0ygtykdz4XGERgum5TbPI2BNumnXiSF5dPKMTzEGw/crGUt6vT/92gpa9jN1l17dkVk+IxTmQ8w0aKRcHDnKsFMltGUS5DsHM6TaZY4mA1LPAqAaxCbj580gyIl2zLoGxKfGFKG8FlKwD1IF4xTT1NmMckjRc4hJAORq8Tv/Xm7QARccRxhaheyqzNYhS3LG0sGD2L8GI6vI/JWT8fN29hjZkeWCy8KhzpPFcGhl7nbf+gpjRI5VmUo1CDtlN9M7z4TmtTUSDET1LlnBKOww==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bCjZhitKxoSe0B59YDSAKns2l7OfkDSX/iRNgrXhgrM=;
 b=lHYJnao2Ln68YzmR7tLSR9BrWydvHi+93bDrYvspEbdyVbznrA83Zy83V0ZjFcCSvMznTGtiribBewMFPLpA45wkIitj/9W7bkRgKFEEPx8BFIPAuDiGC+F3NIgL1R88/aDihuqCGudGOgTybBSHrZo+MlQ6yHQJhLSCfW1WL/H+8QLzpay1ScBdFrllrNUc6rMxlxGmSLdmOPxWxSUcKqVpmoBN5Ko+QIeBhrN+rVsQLFDTA01QP+v0iXfwkayQNgE9lq2fRgcC30C/vW2RrzqjfGyyzTMN+4mz1o3EY/JL17xgKpPLKmuYXkdrqxb1Rwo/FamPeY/xcYQ4mNI1lw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6bea2061-e6df-2cea-4bff-858b0f44a0c2@suse.com>
Date: Tue, 5 Sep 2023 10:26:36 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2] Arm: constrain {,u}int64_aligned_t in public header
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Julien Grall <julien@xen.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Henry Wang <Henry.Wang@arm.com>
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0143.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:98::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS1PR04MB9262:EE_
X-MS-Office365-Filtering-Correlation-Id: 996495c6-d118-4cd3-37e2-08dbade9d303
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RV5adJSCGbsQp/z1zAKYX4WJm7LSHVA3aXe2134H4j805HLXhB6344nhdz4OKQ3v3rctEB/MXjpcFplDrUCXxMwgZkt3ipFmFZ8WtWJsvHw1clEx18O4dq+TBr6U6ntjjt7JtFZQ0AYrwq6dCWPBYlAw+q5Mq0XqFIyx+VzQQVOYUSGXtsK029JAQxLfJmo+81r2iiSzfHdqNZw9bYRmxQ19W7gPbOkFmyU0uYivXg87khPzHziWWQClUhMrDDTvQbdBBClgSl3MwCrY+fxqBbObCoy6Fg/8VSliJoZ/cUGy+VyvEf7h5/k6vU73XhGdF6IqshOTfrIWkLYZmYL2vHuD/fyrr2dTiuEJS7G2TU2S5AHR0jjiAhHR9omdgtkkXtrbt0ReNhwhlOfxF+z0zYi7kahXZfgXxIfBzCxNyadkGLQbNDONuee922LAIVlki8M0WORPLM/R4nmn6iGiMe/e6iTcNEuwiRgV2oKhsxyrrx1EC9A0MIKDJqHf5/+/bxEfwGzifka4ProttSxHcfGG22LEbkXUKxnzIoODDRpwFAcfNlGe8VTNr4yjRL0AoNG8A/Q1wBVs4EnGAL5aZMG+WU5GU00GIEH0pIvqNHt3bILsEnf/q9mAZifj0qtXuLAd9FOpRvaEj7AgUsC/bg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(376002)(136003)(39860400002)(396003)(1800799009)(451199024)(186009)(8936002)(31686004)(5660300002)(2906002)(6916009)(36756003)(316002)(54906003)(66946007)(66556008)(66476007)(8676002)(4326008)(41300700001)(6506007)(6486002)(6512007)(26005)(478600001)(38100700002)(2616005)(86362001)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NkZqdFFmWnYxdytISDMzd2lMMnI1OVpkVTZUbVNacTk2S0J4akNldHRVeHBi?=
 =?utf-8?B?SXEwVVU4aFhkWVByYXlUM3VVcHJSWWwvMGpzZVhHNG14VlpROVB5TUJkTm5l?=
 =?utf-8?B?TUNQUitwbWZaMVh6ZmJFTE1iQW1NUENROFA4Tkc1U25Wb3pjOXBxTlVyK24x?=
 =?utf-8?B?Q3J4L1dtRFh5SWJGYVVSVVJpMUNmVExpQ2FDN2pyS0t1ajBxZVVXcitrdzBS?=
 =?utf-8?B?RTJwU24veUhleDV2Si9VTEloNnNmczRSckxHd3Fvcm5VakcvYTdOcEtJY1Bn?=
 =?utf-8?B?NXQ4NWhwTzJPc3NvTW9FY1lhRFQzaVczN2pVL2hIVFBkSmI2dGtCM0xxTlpj?=
 =?utf-8?B?SmFhTEh1ejBOSVllNmpJTnRCWjRsOVN4WUtDcEJETEVhQkdlMjBsMk5OSzV6?=
 =?utf-8?B?YnJCaUwrL05Way9LMnh0aTNDdHMvOTBJV0ZPeXpoalZrNHd4dVRZdVZkWHdh?=
 =?utf-8?B?U1o1cUtWQTFwbENVUVB4MUROYmFTMXJMRE5XUGZKUy9ZVWhtdm1QL1BPTVpB?=
 =?utf-8?B?cFptdEdtZlEyUDBsR1JtWjlSM3BzS0JnWjJiODhLS1ZPeHNMbzZYcFFUdFB0?=
 =?utf-8?B?RURhZGIvMmthc0NGamdYYTNXRG1CbUF3aFJIbU9hYVE5NVpqR3Q4aW9LSEFH?=
 =?utf-8?B?RzdOcWg3MnlHSGttVnJIYVgzU2lhNHB5a09tb2UzZS9BSHROTExWcGE5emZi?=
 =?utf-8?B?em95RVNud2Q1MWhTSkFzdE1qaGZnQUIwUjBpK01LTmVROTMwV2tIMjZSbDkw?=
 =?utf-8?B?UDZ5aFRkcGp1cDhaVjNaSXl2RCsrdXJnYkJWTGpxVDRKS0tIR2JLSnU3NVM4?=
 =?utf-8?B?ODRoUERTcDM3K29seTJQUkFCemtIRlRFbFZocGg3czVBOWtZaVJOL0puWUpX?=
 =?utf-8?B?NXh5cHZtQmF1YzAxQTBzd2xzNFVPdXFCMW9WaGgwak93dmhSNktYeVZ5c3lx?=
 =?utf-8?B?L2FlMW5Sd1FCZ1M0M1pVZ2txa05PNDIyRHc0cTBvWEpLclJ1aWNoRFJyWUg3?=
 =?utf-8?B?SGhnZkdMVUo1U2d3cnNzQTNTTWNSNFJUb0NkaThtN0RCZm5rVXlpeUIxUjdz?=
 =?utf-8?B?bnVIcWI5bDZtQWlzNDhiMEVnK3puSDZoRHJ4NHdRYktXcXh2cDNjdXR1czBV?=
 =?utf-8?B?SjF0NHFxaVpoZ05GYkVkUlVzK1I5WTZoTWkyNjFGY0tmWkdVaUxkMjJPNUlC?=
 =?utf-8?B?NVp2TkM0TCtUWWp1U0J1Q2QxU2FBU1hWeWpTaHorKzBtZktlaXVBdzVpK2FZ?=
 =?utf-8?B?R0hzM0hXNHZFUGRFNDdvdG1JK1dRb0xCYWR0amNQMTFTT2lLSDZtY2N2R09x?=
 =?utf-8?B?eUxTQjFjbExNdVJSTk02YVR4MTR2R1NrQitFM0krdDNsYWl4WHFJYzROZWcr?=
 =?utf-8?B?MStSK3dkdVczRS9kREJ4TTdyNit0dkFmTGlHaGh0eCtYYUU4TkVWZHVuRUpG?=
 =?utf-8?B?NUhVUFR1M2VTVzl4bXpHVmVNMld1VWRmZjUzK1BqbWVON1hYeFp5a2pmQjN5?=
 =?utf-8?B?MGJEeUJyaldaejNDL0lIMFNxOWNidmNaL1Y5RVBnSis4RDR2VUxzNkNJOTNr?=
 =?utf-8?B?enBRREtDelRBUkdHbHM1eHRBZ3FHQ1B3VUJJaHZodjVjVnlZWWlZSERYWnQ2?=
 =?utf-8?B?TUxMOGlIS1F3RHRCTVBuV25SSnowS0NMT0FtOTJheTFXcXpicVg0aTVvbHpO?=
 =?utf-8?B?YVVKNzhsMHUvYlExa2ZQR2NiTGlZaGUyYkZoMFAwQ2VMcFVYWXc2clcyWlEw?=
 =?utf-8?B?cVhLWitvWnl6TGhxcFlrVTAvME5BT2djNUdVUEhFZG5LR003RE4zUlpnU0FH?=
 =?utf-8?B?RE1jZTBGNTYyMVVSZVIybnFQRDQ1WWRTSDhZTkdkQ3dadVpJdGYzR0hZSU9o?=
 =?utf-8?B?OUxaRGpMQ3R0OFN6bnlpamR1Q0VxTnRuS0l6a0NnQkl5allDZFljcWNHcVFz?=
 =?utf-8?B?Z0d5ZG5kcmcwdTVPSFJNVEhRU21BRUVRVjlxYVVaeUd0ZTVRN01KN05RdzFH?=
 =?utf-8?B?VURVZlJ0RTdlcUlMN1IrUlRBTWJUcnBERWFiMXBsaVk4Tk85MFU4WWxwc2g5?=
 =?utf-8?B?SkZoMUpydGVXTGpZZXJZY0duSUpZVVRLcXo0WkFDRS8rdnBpRm0xaDhLTUE1?=
 =?utf-8?Q?kD0IexQ9EKnt3cmtVqxzBtguI?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 996495c6-d118-4cd3-37e2-08dbade9d303
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 08:26:38.3586
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: BiQaGBeBo1NCQphipK5n4K5S4Mg4RZkWLBq9WTiYRkGNWPCfFHEc5TJ+WIdXWl0ljfafnOHOoEYVsThUni59pg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9262

For using a GNU extension, it may not be exposed in general, just like
is done on x86 (except that here we need to also work around not all of
the tool stack actually defining __XEN_TOOLS__). External consumers (not
using gcc or a compatible compiler) need to make this type available up
front (just like we expect {,u}int<N>_t to be supplied) - unlike on x86
the type is actually needed outside of tools-only interfaces, because
guest handle definitions use it.

While there also add underscores around "aligned".

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v2: Also check for __GNUC__.

--- a/xen/include/public/arch-arm.h
+++ b/xen/include/public/arch-arm.h
@@ -152,8 +152,10 @@
 
 #define XEN_HYPERCALL_TAG   0XEA1
 
-#define  int64_aligned_t  int64_t __attribute__((aligned(8)))
-#define uint64_aligned_t uint64_t __attribute__((aligned(8)))
+#if defined(__XEN__) || defined(__XEN_TOOLS__) || defined(__GNUC__)
+#define  int64_aligned_t  int64_t __attribute__((__aligned__(8)))
+#define uint64_aligned_t uint64_t __attribute__((__aligned__(8)))
+#endif
 
 #ifndef __ASSEMBLY__
 #define ___DEFINE_XEN_GUEST_HANDLE(name, type)                  \


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 08:28:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 08:28:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595446.929006 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRPz-0006fa-1T; Tue, 05 Sep 2023 08:28:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595446.929006; Tue, 05 Sep 2023 08:28:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRPy-0006fT-Uj; Tue, 05 Sep 2023 08:28:14 +0000
Received: by outflank-mailman (input) for mailman id 595446;
 Tue, 05 Sep 2023 08:28:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=91v+=EV=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qdRPx-0006fN-J3
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 08:28:13 +0000
Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com
 [2a00:1450:4864:20::32f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 263fc912-4bc6-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 10:28:11 +0200 (CEST)
Received: by mail-wm1-x32f.google.com with SMTP id
 5b1f17b1804b1-4018af1038cso22014265e9.0
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 01:28:11 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 h8-20020adf9cc8000000b0031c612146f1sm12673344wre.100.2023.09.05.01.28.10
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 05 Sep 2023 01:28:10 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 263fc912-4bc6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1693902491; x=1694507291; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=tVQXMOxpCGwUKl9lu7b1EV2nD/VVtAUfSccL9u2mm/U=;
        b=iT3pQf/HzJOtcVHVYaF+8fl7NbJu4ufkGYOwDirwOMtPGeJcnDHpI/N9Qw5ChC3HY3
         5pl/m4lYa7v1NXsGPOJt7r756kvwLF/GQMOuZjcG9t21+BknrAgStYmyEN4ifbhMTAjm
         HXLEM4heiShFH99M2Aw4f2ptLqUCIxg5d/fR8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693902491; x=1694507291;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=tVQXMOxpCGwUKl9lu7b1EV2nD/VVtAUfSccL9u2mm/U=;
        b=gFFaCRxaMjhh315HhbdsXaArzvpKyS7GTKYssjwVtSwwJQDQJzH2bNKECfTo2KrfVa
         gSCghzhGLP2ZdZfXU7xDMbGVhGSvmkPCxFp22mKFj8bAanRmINZnEC+0vckKGgBeY93O
         TtCYIoj5uVgfhsk3hqX1NfNxqoHkoy+4IYy9sDf2bH1v3a1Xi/D4jV2hmDidwUhih2Zd
         59MAdy+o9yxwpj8TylvGYOcb07cyRVV9DDuSszw2IiPdVFjo/hz0hg1WnDsb9z2+7ICE
         MvdZVPgA8yOkLZfCfgXAcQYE4BuPitLoFekm6XZu5PQ3W8zeO2WegYmzyIlHT+VG9RwA
         iZ6w==
X-Gm-Message-State: AOJu0YyjkUtcxDyiutCpSmYfpoXtCWR3q9tjZGixr3ZCGieag0bWRAdh
	UjTrYx8VMQrRAkh1fPqHwamktw==
X-Google-Smtp-Source: AGHT+IGqfY/NDSTjZ/eF460BiwEZfNswFYtExa9ot2ddtUrdr9pSXTjeOv3BYnsW1R+tY47J51dH6w==
X-Received: by 2002:adf:ef91:0:b0:317:69d2:35be with SMTP id d17-20020adfef91000000b0031769d235bemr9586843wro.30.1693902490810;
        Tue, 05 Sep 2023 01:28:10 -0700 (PDT)
Date: Tue, 5 Sep 2023 09:28:10 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>, 
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] tools/misc/xencov_split: Add python 3 compatibility
Message-ID: <g5mxlivacq4jsx67vpolxofe6y5lknns6cfqxujg4bjaavozo2@otl4fqobhoah>
References: <20230902162246.15672-1-javi.merino@cloud.com>
 <44f0ee82-2a84-d4fb-15e0-fb74ed1ad2c3@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <44f0ee82-2a84-d4fb-15e0-fb74ed1ad2c3@suse.com>

On Mon, Sep 04, 2023 at 08:51:31AM +0200, Jan Beulich wrote:
> On 02.09.2023 18:21, Javi Merino wrote:
> > Closes #154
> > 
> > Signed-off-by: Javi Merino <javi.merino@cloud.com>
> 
> The title isn't really in line with ...
> 
> > --- a/tools/misc/xencov_split
> > +++ b/tools/misc/xencov_split
> > @@ -1,5 +1,7 @@
> > -#!/usr/bin/env python
> > +#!/usr/bin/env python3
> 
> ... this part of the change, and making Py3 a requirement here (assuming
> that's indeed necessary) surely wants adding a few words as description.
> Grep-ing the tools/ sub-tree I notice that so far we've avoided explicit
> uses of "python3", and I assume we would better continue doing so as on
> a distro with only Py3 a "python3" alias may legitimately not exist.

A distro with only Python 3 would still have to provide a python3 binary:

  We expect Unix-like software distributions (including systems like
  macOS and Cygwin) to install the python2 command into the default
  path whenever a version of the Python 2 interpreter is installed,
  and the same for python3 and the Python 3 interpreter.

https://peps.python.org/pep-0394/#for-python-runtime-distributors

Having said that, PEP 394 recommends script publishers to leave the
shebang line as "#!/usr/bin/env python" so I will revert this change in
v2.

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 08:33:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 08:33:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595454.929017 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRVF-00008C-Mk; Tue, 05 Sep 2023 08:33:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595454.929017; Tue, 05 Sep 2023 08:33:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRVF-000085-Jq; Tue, 05 Sep 2023 08:33:41 +0000
Received: by outflank-mailman (input) for mailman id 595454;
 Tue, 05 Sep 2023 08:33:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdRVE-00007z-AW
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 08:33:40 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on061e.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::61e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e8ffd685-4bc6-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 10:33:38 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9559.eurprd04.prod.outlook.com (2603:10a6:20b:483::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Tue, 5 Sep
 2023 08:33:36 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 08:33:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e8ffd685-4bc6-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XDLmTLNqwDJnasTHu3aBkj3XRBXjANmmACmp7HkgEggXxPe8WSHR2hAuzquK4ht++121aW2TqZy65Iz0XjT1Ny+Cgz6g/paIrB6uwq1ScBhb6wl+t/EwS3PjBqP0GO8GvvTPzSCy8N5dW4w9tThfdzO6i5pf5zUYFwsTgklSbuheOHFjJOZRyD14AP6Bzj/zfXlEIHAa5hLDd6z0jdGQ4Yslzcac0BKv6SsBtKJ40RTTLXeti/uVxE7GuVLEiTKYOiSv9+z/W+P87DAGoHXB5gW3eeUMRbGKXOIYqw2chqhmCp2ZiWFcWrEIHTxRIpISTsXbIa9SCJnt+VXCyuRbUA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=q/HHToEkMe3B2XFg/++0EV4xoD2cdz82tE7Z3UpIYz0=;
 b=Bx99OgosU35OI1m61OzUbSo3+soCa9xvroolo0y6V1BtwawRqQCXvNTUEjMZTuSrrS1J85IY0P7WAA3aFd133SWz+QF/yFjiU2Zr7hnxMAcG5u1qrF0ND3x0w0M/p7LzMW6DLy+Isj9rWVcfzbmEjoIKKh1pgzqDzcp4jmkqJB17RppXvJMJVFcbFh1KHI9XW5yG29nCzkoy1Oy/TAE7I6bjXiNGDYMqCIvfpgJZnegg0LpMEuaOzZVI/ht4iZjLr8+HenPocbtndHuQYYCaFVO9TUu0yehHEbO+T07UTqh7tCqPqtbCoyc/2uIT5mHPeuZCEnXExiPuH+T8pjV9hg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=q/HHToEkMe3B2XFg/++0EV4xoD2cdz82tE7Z3UpIYz0=;
 b=EgiY3pTBG6XwGpCKKKTI7oOTW04VTQK3FtJ5DU3+H1K0vp5MRwRXVRb8CRzWAutgHCAPUC0nh+bl814b4BNyrUCLWHZ09zt4P0pKyikNi1AODQOYycYBJ3UndbyGI3foiKlhBBHW0QWzCitxaEVE07eFWpnj+4s2YGIYLhaVUyaGwANKUeJRhNCnfbxOdFA3PQsFhTnVOb8FsTDgYVQGvZyV1LYMlWlbZBo1HVVQbmXfwrgOI9Opk5CWs2dCg6VsgH1Zxc3V79Kb9ng8ueLYb9xX/OcipIZG8wp7ZhjtJMQcaOJqPFAQePgn6On3OJlZ20VObg/7l+xaby6PSliIxg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
Date: Tue, 5 Sep 2023 10:33:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0125.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:97::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS1PR04MB9559:EE_
X-MS-Office365-Filtering-Correlation-Id: 74735f8f-dad6-46c0-c43e-08dbadeacbed
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	c8G29NReXPz4FppqPj2dOWV7AbhwSAStqZlO8/2CviP2qJXpB1gkcay39vgwLbdMEYbvB38H2l3PrYJAvq5qkUFTuH1/xnIXBsjHX3/Qz3pRdz1KXnRU2cuwN+8T/dkEob6MSozydrfAt7Z0hIefUG6rArqJwVnQ1S7oJ9NcbdfrxffpZ4xdd/Fgs96BbIPFfS6gDaFBpVqvkeCWjTfIX/wgnRjyvpQyg4UMZuUjN99N94NhaxjS7SlLkiGH1oiUmM2m8cdILjWHzMA0c2FNoqbhsteGTKSu5qvSd1SiU82btzCr226YkyB27z9s9Kccvd7BHEiUyiaeSJqvzLBFxAtLgpMmbLCB3JWrF6A88poAVOt6B0JCcnsib/9rxPAhXzJZAW3hULckA751rLRGnxZqHe0cNLnJH/2HnLCl9m3OQt4LNzkGy4bNbOhTWV5W+bdSWAQ4EQP3sxNgUgKuHnVmfoKiW3rD9Rn15qFXEzCwy5BAk+sRxFrmezQ4XYWBAlOnsdtICLXwwR7AQTPA9YiIg7nS4OFo1dKL43j8tRz/goxmNga2r8oDyH/0/BZoaHZTZhwgYe5QpoIQgXENQBWw/SdW5W9C2b+e03h4/cBovlAMeo4s4Hgf+EQF8TWLn533a3w4JViF0jBRin0yuw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(376002)(136003)(39860400002)(396003)(1800799009)(451199024)(186009)(8936002)(31686004)(5660300002)(2906002)(6916009)(36756003)(316002)(54906003)(66946007)(66556008)(66476007)(8676002)(4326008)(7416002)(41300700001)(6506007)(53546011)(6486002)(6512007)(26005)(478600001)(6666004)(38100700002)(2616005)(83380400001)(86362001)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R1IxTGgvQmdlTjdoRzRTdWFwS0l1WDg1bEEweXNiS3FEM0tpeFJpOE5XeTly?=
 =?utf-8?B?RHo2MjltN2xmQUw3cTJPVUprUjZUWG9uZnAxZ2pNUCs4UjRaYkJmWEFFNVhz?=
 =?utf-8?B?VHZmVVZtc3A1eUQ4S3M5SmVVcjhpaEdkRTBWNFJFbVR4OGJDQkYzZUU1SDRF?=
 =?utf-8?B?TmxvM0tyNFlHbksycjdocndEZU5xZnpNdzVKdW5ad0pNUm9ZMU5wK0F0SWl5?=
 =?utf-8?B?bW4xbTJOVmFlSEtWT1Y0dVMyMjl3WUo4Rm8wWjBuZnZlZlIwWUFjeFErbFdv?=
 =?utf-8?B?MTNaVWNCTDVrY3ExMzBHZHlGeUh2QmJlU3BuZ2YrQnlmcWMrVnZTcE9XdXNN?=
 =?utf-8?B?eTF4RGpXNEtMZEQ3ZnBncnNKUjIycnNsMncreHpSeXlEY2hDVHg2SnIwSGE4?=
 =?utf-8?B?eEVEMmRVMXpaZnZZeXNvcW8rR2FIOCtDem0wQWRvSzNUeVhaV04rLy9HYVBG?=
 =?utf-8?B?akxlek9STnlwaUJkellPT0t2bEI1S0txSDZONVlITkFJNHROd3YzaWJZOTd2?=
 =?utf-8?B?RWZHRFFNQWNTUXlEeXlWRXo0bkRXVm9Vd3ZXSmMxbWtNS01IaCtJR1hta1Jl?=
 =?utf-8?B?dUtyenliOTNqR1plSUpMdnA3ejUyK1JGdDhhMVppL01kQ2lvYzl1V0xpK0ZK?=
 =?utf-8?B?UG05WW9GNkhtbHF2TUpjM2pzZkxlM0ZURGIva1pKNWtQYmpPT1lvRTA2OWlS?=
 =?utf-8?B?aTFoMHdOMGRwbWRyQStIYUJla2xwTEl6Mmo5YnBpSHBRM2QzN1NIeVY0bkFP?=
 =?utf-8?B?Mm4yRzRyQnF2QmZNUDd1dmZLYkR1cmFVVlozYXZVM2puMXU2UStCaWxYbWpZ?=
 =?utf-8?B?TDJTQ2p0UGdHc21VdnZoYUxZd2pidE9kcm5CWTdBZ3RYWTg4ZG0wTGdRNm1j?=
 =?utf-8?B?dXo2b1l0dWJackJlcUtwVm5pTFE3a0pvQXZBcmY1ZXJzenpLNlVDb3p6bnd1?=
 =?utf-8?B?dzVZM2cwZXcyUWxlcmNXWHB3amJTb0pXU1dqTnY1d1YrWG9yQ1VLQVdJVUo0?=
 =?utf-8?B?dmJhZTlJRm1pZEo1QnVYOTloQ1FIaFRQT0cyM1lsaEFLZlpHQ0NLb1poRzVs?=
 =?utf-8?B?T3UwYm9jSThLS083cFBpRVk1ODNGbWpyQklhK1EzWUdRMkUvVjhxQUlGT3NB?=
 =?utf-8?B?T0JoSmxCcGJ2YTVIN1o1Um91bHdSWlN5K2duRGpDNFgxV1N3MzZNM3NLSUY1?=
 =?utf-8?B?cGFQSzdlWmdBVnNJc3lpMjZHdlFRL2J1SzJmVk9VaXJSS25hZHlGdEtobmRz?=
 =?utf-8?B?NSswV1dNbG5WZjNGWVRsT2YvRklOTU1Vcm4yZld6Z2I3K0p5eHJHRzc5L2Iw?=
 =?utf-8?B?NnJaaVdyakppZW56TDZkVERBYlphWW1QUUhieHAxS3dCWnZpQnRNZnZnMDFE?=
 =?utf-8?B?VUIxR1prMFFLWk5UVlVHRW9NQnBZVzBDbVF2MERIdWI5V1puN3BGLzFFRWN1?=
 =?utf-8?B?c0c3M3BTZ3FHeC9TQkdURXBOd2U2NnFFeFNmYjVULzJCWENyQzlhTFpocFVM?=
 =?utf-8?B?UGMyVDZmV2ZMZWdBOGVwY01DcEIydGtCVStkblFMZHdlSXIyR3Z1dmQ5YndQ?=
 =?utf-8?B?WXlUYUJQNktJeWJxSTYzc2ZhVjRnM1RLNUtDSGhEMDZKTXI0VG9uRHpjV296?=
 =?utf-8?B?WTFwQUM5SVZaZjd0L25ZbjZrTmpPTWtGamd4VU5waWIwL1piTk1kWVZwU082?=
 =?utf-8?B?NGJvYjNCaHZMRGpBQlU1NTBzZ2JCS25VK3QyOW5VdjlCYnJ6Qi90VEYzYkVD?=
 =?utf-8?B?R3FGV0N1d1hhL0E2SzFEZEVTeW5Cd0o1akpVbVc2R1RnNGNrd09IcFRTMGx6?=
 =?utf-8?B?TU4vdnlZOVM2R1ZmM3I2UE1Vamw0RXNLM2JYdHZ3c3dzaEJrYnFEYTlISFU3?=
 =?utf-8?B?bWM3bytYd1hEVDVMT2FmOStRcVJCTmxzZVRFdU5hYXZCS3FHYkFObEVwN1Fx?=
 =?utf-8?B?LzhoZHZBSWhKWUNNWkYzNDNjSHNVOWsvSHkrN2Qrd3lOR1lHZ3V3QjFaVzhB?=
 =?utf-8?B?cE1uZEs3REJRVFZSWkRadS8xRDBKT2JmbFRwd1FweHZldmZBa1c3c0JWQ1kr?=
 =?utf-8?B?Tnc3Skk4RmlJY1dnT2ZxMGEyOUFBSjBCV2YvWm5uZUFwZ0t3ZE9MQ3NCa1RW?=
 =?utf-8?Q?kuEYI9fVdAycNETjZOqUEhNnF?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 74735f8f-dad6-46c0-c43e-08dbadeacbed
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 08:33:35.9716
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: nDD3zysotLcY5aekVtXrZIW7R6WsVDve/XqIAuPaKoMjfsBNUCJ/6xO52JvIhuSWDai9uj8CkRpFtplkSA7IRg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9559

On 05.09.2023 10:20, Nicola Vetrini wrote:
> On 05/09/2023 09:46, Jan Beulich wrote:
>> On 05.09.2023 09:31, Nicola Vetrini wrote:
>>> Given its use in the declaration
>>> 'DECLARE_BITMAP(features, IOMMU_FEAT_count)' the argument
>>> 'bits' has essential type 'enum iommu_feature', which is not
>>> allowed by the Rule as an operand to the addition operator.
>>> Given that its value can be represented by a signed integer,
>>> the explicit cast resolves the violation.
>>
>> Wait - why would this lead to a change to BITS_TO_LONGS()? And if that
>> was to be changed, why plain int? I don't think negative input makes
>> sense there, and in principle I'd expect values beyond 4 billion to
>> also be permissible (even if likely no such use will ever appear in a
>> DECLARE_BITMAP(), but elsewhere it may make sense). Even going to
>> "unsigned long" may be too limiting ...
>>
> 
> You have a point. I can think of doing it like this:
> DECLARE_BITMAP(features, (int)IOMMU_FEAT_count)
> on the grounds that the enum constant is representable in an int, and it 
> does not seem likely
> to get much bigger.
> Having an unsigned cast requires making the whole expression
> essentially unsigned, otherwise Rule 10.4 is violated because 
> BITS_PER_LONG is
> essentially signed. This can be done, but it depends on how 
> BITS_TO_LONGS will be/is used.

It'll need looking closely, yes, but I expect that actually wants to be an
unsigned constant. I wouldn't be surprised if some use of DECLARE_BITMAP()
appeared (or already existed) where the 2nd argument involves sizeof() in
some way.

>>> --- a/xen/include/xen/types.h
>>> +++ b/xen/include/xen/types.h
>>> @@ -23,7 +23,7 @@ typedef signed long ssize_t;
>>>  typedef __PTRDIFF_TYPE__ ptrdiff_t;
>>>
>>>  #define BITS_TO_LONGS(bits) \
>>> -    (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>>> +    (((int)(bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>>>  #define DECLARE_BITMAP(name,bits) \
>>>      unsigned long name[BITS_TO_LONGS(bits)]
>>>
>>
>> Furthermore, as always - if this was to be touched, please take care
>> of style violations (numerous missing blanks) at this occasion.
> 
> Then the whole file needs a cleanup.

Perhaps, but going as we touch things is generally deemed better than doing
a single cleanup-only patch. First and foremost to not unduly affect the
usefulness of "git blame" and alike.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 08:37:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 08:37:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595460.929027 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRYY-0000is-5u; Tue, 05 Sep 2023 08:37:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595460.929027; Tue, 05 Sep 2023 08:37:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRYY-0000il-1j; Tue, 05 Sep 2023 08:37:06 +0000
Received: by outflank-mailman (input) for mailman id 595460;
 Tue, 05 Sep 2023 08:37:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdRYW-0000if-Re
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 08:37:04 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20608.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::608])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 62e6e894-4bc7-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 10:37:02 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8305.eurprd04.prod.outlook.com (2603:10a6:20b:3ee::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 08:37:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 08:37:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 62e6e894-4bc7-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dVFKpgH/BbJf9tK2sJuc/hkaA4Mk07MqCV9LjTSwGdcMU8R5r9gyhwhUUcJOd7Pbg1Km719BOmflo4vR9Q7hSm+doDMWVu7/FF2XDPZMB/HePRqMTVq1V7hMkJN7ddLWIecjpGOvZl2pqBYCpUO+G03ihyicOhbAvBttm0J3Yga1rzbUFtwc47KiXBEShhNLbm4HazWNBfmYOcSn+IXYZ6zHkMc5AFBL5AROe64876spj/9AFJdUhvCy4rHU43UAnoPZbIcejTeyv9qavEcq6yA9+fjfxkjpO9bcu24uGPqnd7yUtyYqaaxQ2MBw/hjzS2lWHLmYVwdZ05Zyql2m+Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PodOGwYb2dB3wHOO+VCt4Tg169CUtnUQRoGFdlfnJBA=;
 b=n2J3UzCDWjeYj/oSM++NwdQo7nSqqcDDTXWjzXJyBnk2v5pZtCVXqQ7vjki5hBcbuG9JsD4ie90qphwPhfVk0vLN7H1GgjOsElrT5QsYALkguANQZVzcAoRI08uDHSKy47uhqnpTM7s2QljI8dK1meqt2e7uB+CCj9Q+K4gl/X/kj8ZHlYN0rLBQBHculZ/Xjl72QKVSrenEm9t0S+qNVl1NYsdIBH9ar01GL0uLtYP1Xmrtqp8faQ8Jfk54czu/VSBXRoZ0nXaNWgkfkLHiCGSqsJp6tuQDffiac9E8Ka1D1FtDzi+jfDTrX7ru9wrPKhqevkaPlshBCcboPSI9XA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=PodOGwYb2dB3wHOO+VCt4Tg169CUtnUQRoGFdlfnJBA=;
 b=POIG6l5KNJHF7y6DzcAnxGI82ZyaNRBlYYjvLwHYP6yDheP8HrU6GTr+nRdV1TyW36lVqZMbfwRdAaOP6wiGXLiDo6f3zOiN9TltImv8YInX28z5EeSMOvRWsPnmmSJBQRTkfmJ4EqZBoVV+jVSC7TAfofR734uhw43vjSZNdb262eq4otKqI28oW/ywkPGlR5AP/T/NpE7z2vMTOjtKJRdVGvMVvFMKnPWgQW33ZCNkwmJR7puB0kQ1AYUnyViHUvElkAdy2QfGJ/EzQ+sj6fo8DW9oHknQ/IBmbMyn7sT17Dp5J0XlbeykRu1Awgd+ty9iWGjZNnatTJ3VYm9biw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0ae5cc93-6de1-8c37-f6da-086ba1287e98@suse.com>
Date: Tue, 5 Sep 2023 10:36:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: xen | Failed pipeline for staging-4.17 | 699de512
Content-Language: en-US
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <64f6e593e9f77_28aa2c885476f@gitlab-sidekiq-catchall-v2-5dbc7c84dc-8wms7.mail>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <64f6e593e9f77_28aa2c885476f@gitlab-sidekiq-catchall-v2-5dbc7c84dc-8wms7.mail>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0033.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:14::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8305:EE_
X-MS-Office365-Filtering-Correlation-Id: 2c1d8338-eef5-4def-2e7b-08dbadeb4603
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Fa1mcWn6R0d/SdZUyWgdndeApb+oalQ+/vyKuzT0IqNapU86apGml7ARz4lUNIEbsnL/edFPN7caEZHvdjGRsaJZyB5A/UvsptyoCYJ1+4LVpdWIsizvipx014YX7Rsxwk+OOZ1q4040jdxnuBi+HWbVtqb7SAo35aCfzszeMsdBpn63ft4/0Y9MPLMRwLlbzcMYhV1wjgu7W5ZgVHD2RDDUOWvJjEJ1Yi4b7OmKFwJ02qOE/WNGx5Vg72eFgxJRa9KhXX+1sAcrNP9Xg038Ph8+4RrbgLGP+W0UX7aB5uGBpoK3Gw1gCdSDmpef/MAHrpTD01/tHsOPKgxY3OaSRMOqPg0JMmgU+EBgfb23NEE17sk2nIdnZy9pTmeQH5NU4mg1h1j9z/iPc+qKBDp4tyzJiOqQK9k8Xsdmxf0NFsJDzs3UUh4yKJj3H2NiE8zD8dfDaZ9MRTpaBuX8EaV8Xnkc7GCgrJZDpNvRr7l5GeTgfal8oEPMzseIQUZ+wCTM+CLG85bVBWGD6FckXcy6ULJdEGUgDuw83vYl31ehgc3cZsbjhBFiSfUDzFHnsThP3Sshv9cd6gkyWTzm9n6PFHKlS+3aLbf8rH7j5Z9x/9ZZc6ewr5KSQro8iedhHB53bS5KCjOcHSDbUBFotEgddA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(366004)(39860400002)(136003)(396003)(451199024)(186009)(1800799009)(53546011)(26005)(5660300002)(2616005)(66946007)(66556008)(66476007)(6512007)(316002)(6916009)(6506007)(41300700001)(8676002)(8936002)(31686004)(478600001)(6486002)(83380400001)(966005)(2906002)(31696002)(86362001)(36756003)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Qmt5bDJEN2lRbVBtbWpEYUtraWlNdlh6M2pod01FMm1BbTQvQmF6YlUyTi9O?=
 =?utf-8?B?TVFGcmkwNlF3VU1uK1pBWmlDLzg2RjhvcGRwaGlWbXQ2ZEdXSDd4TzBmVDFL?=
 =?utf-8?B?cU04Vlc5cGhoN3lNT1ZNQTV3SnUxWENaaThXNCt1VkVOQ0lEUThnTXZSZ0J3?=
 =?utf-8?B?ZjFlZUI0L2pzZ2dLQmJPUnVDU2Mwc1JRRDVaTWs3TzhzVzlNWDBKZklsOHlU?=
 =?utf-8?B?TUQrL0ZpZ2JxdnhnL0xKWW11VTUrV05HTlg3SjFvZlAyV3dSL3dkOFpGbE0z?=
 =?utf-8?B?bEtZd25xQWJiV1ZsQjE4T3NqaTRCSWJuVlF4bEJGTWlZaFBybmQ2SGZTMXhC?=
 =?utf-8?B?cHRreEp0Zy9qWU82S3VBZUN2R2V6MGxRbCtzVU91ZFpRVTJSdkhMVTNKUitz?=
 =?utf-8?B?MzdLbUZqMzI0T0hObnpYRXNsbGEwOE5zOVZTTlF6b250NUJpRjBwSE5IQWI1?=
 =?utf-8?B?N0M0WFJvRE1vN2t4VmlCclpVTHpLcmdoY2tPQkt3RzFMVmQxM1RObzhYWGdI?=
 =?utf-8?B?V1V2amw3WXFsSXVPSlJ6czVXd0lGRUtKeE5UWXZlZVkvYmROTVBCU05YaG1k?=
 =?utf-8?B?RUc2ZkkzT3VNY3pSN3JFeDNaeDF6Y2FhZkRNVlBSZVJqVHc2a0FGRXJrcGlQ?=
 =?utf-8?B?aHFGd0ZtTDJUeVJRMXdhNEpRUVFaTWlmemFRV1lWWDh5NVN3c2FYT2kzYjA4?=
 =?utf-8?B?UmdyY05POExmZmRvUis0QXZJbE90cEgzbmFQbkhpdFNzUExjR2dvV3NyOHZl?=
 =?utf-8?B?ZUZQS1JOTnE1L2hQZStSL3ExWWp5WG1INWQwUEFiTTNnNlczS2hKOXRMVDly?=
 =?utf-8?B?Y3RML0FVSWduRWlxU2dNNjdkWE5nRmc5NEczdmlkTzhkOFpYVlZWN0RBdTlr?=
 =?utf-8?B?eHRBTEZURFNyVDNmQm1MWTJQSzBrcEFLTVZGMk90RVQ3ajc0T1RCU0RwbjVr?=
 =?utf-8?B?ZGpGY3VmWmZVUCsrTnprdm5halExeFZlc1orRnJlSjBRV2lHTkh0SDNZSkVs?=
 =?utf-8?B?NE9RZHlvUnkyM0Fzbmg0RUpuWnFPbk1CS0ExL2ZPVjVSMENzMmF6SU5Ccklm?=
 =?utf-8?B?d2tVQ0QrZW03MG1qd24yQ2pnQkw5aHNEdE5xN2ZGWklYSkFzN0o5UENQbC9P?=
 =?utf-8?B?RWVDRDVhaUVLY2YzcVdQTFFuVGpWNDRJZElTb2ZUMGVKR2xSODNPUWxyTzNv?=
 =?utf-8?B?c1pNSTg3eGhoazB3b0xPNnFwNW5kOVpMMHUzYmpjMlJBVk9iL1BMaWlndUJN?=
 =?utf-8?B?ditxd1JsUDdxLzRiMmpzMW1XL0ZJV3ArNXpqdGU0SmQwQzJwY2hTMVVXelFV?=
 =?utf-8?B?Tm9LeHRoVlAwSy96bk4xaUwvK2NLRGhHaHU4WDQ4a0J5YWcwNEFPejIxVG4x?=
 =?utf-8?B?ZjdSKzBzelNheVNzVDlYa04veFF1YmV6ZzN1aVcxQ1N1THRPQTF3SDJyajU4?=
 =?utf-8?B?Y0l0UHRKVU4xZytPeis2b2gvWS9GK2R1ZkE3WU9WeHF4elV1SmVUcUhhWjAv?=
 =?utf-8?B?ZHV6WUNLUW94T29icWJld0hkMEpaSHFPZXpnK0pPaXpiQ1dOZTZLaUJDNEM2?=
 =?utf-8?B?eTFRWWpXYWpFeVE4akR4WkZRb0tmMks2cFlqNE1odW01K1dSOVdEVmJwcGlq?=
 =?utf-8?B?RVhpQlZsd1dPUnROa2JlRXAvWGQvcVN6SmkyZTlBbjFrY2NITkc1dEtZUkpv?=
 =?utf-8?B?eUJobGl0QVBMdXZQeUVxOEkyOTg0MnFsQ2xjTGFYWEZWNU81cmZRTFJRWWtH?=
 =?utf-8?B?RFplUndlNjdaSjNsQ0ZiSDF6bHpqRkJtTkVPcjQvZnd0Zi95cnFwRkx2azhX?=
 =?utf-8?B?a3E1eW1oZ2lDenVHNlRSUEZxMGlqUHJiVGNaV1Y0K0p6ZWQ5eEd1aFYzWVVx?=
 =?utf-8?B?aDVFdmZRM1BvYS9wRmFFaG5nZWdGVTArK21aU1hJOTQ1NXRrN0ZvalhUNEZ2?=
 =?utf-8?B?Q0ZVSzZWSlgxd2FDUVZvRGZSZEdMUkpIS3dZczhVdnRLSlIxaXNmbTFOOVNn?=
 =?utf-8?B?SHJyNXMwR0syWERWRFZpc1BmTUk4cUJUZmk0KzExdmg2WG1HQ1dZREZXcmQ0?=
 =?utf-8?B?T2dEanhuQVBBbDBKNTVHclRzTVlQaG5ORXgzNEkydWk1YjltMU41dmFGTDJk?=
 =?utf-8?Q?oybtzVTYPtAKcEk88JnEq2lsg?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2c1d8338-eef5-4def-2e7b-08dbadeb4603
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 08:37:00.8062
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: lQxjL4nxC1yJcpZz6eWMtAlv71yMCk+KmSsJqBgVt8wmU897/mcYt8/i9LOdjHicRSihYEAdsR2bfOwadvOoyg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8305

On 05.09.2023 10:23, GitLab wrote:
> 
> 
> Pipeline #992747061 has failed!
> 
> Project: xen ( https://gitlab.com/xen-project/xen )
> Branch: staging-4.17 ( https://gitlab.com/xen-project/xen/-/commits/staging-4.17 )
> 
> Commit: 699de512 ( https://gitlab.com/xen-project/xen/-/commit/699de512748d8e3bdcb3225b3b2a77c10cfd2408 )
> Commit Message: x86/irq: fix reporting of spurious i8259 interr...
> Commit Author: Roger Pau Monné
> Committed by: Jan Beulich ( https://gitlab.com/jbeulich )
> 
> 
> Pipeline #992747061 ( https://gitlab.com/xen-project/xen/-/pipelines/992747061 ) triggered by Ganis ( https://gitlab.com/ganis )
> had 5 failed jobs.
> 
> Job #5017577664 ( https://gitlab.com/xen-project/xen/-/jobs/5017577664/raw )
> 
> Stage: test
> Name: qemu-smoke-arm64-gcc-staticmem
> Job #5017577671 ( https://gitlab.com/xen-project/xen/-/jobs/5017577671/raw )
> 
> Stage: test
> Name: qemu-smoke-arm64-gcc-boot-cpupools
> Job #5017577635 ( https://gitlab.com/xen-project/xen/-/jobs/5017577635/raw )
> 
> Stage: test
> Name: qemu-alpine-arm64-gcc
> Job #5017577678 ( https://gitlab.com/xen-project/xen/-/jobs/5017577678/raw )
> 
> Stage: test
> Name: qemu-smoke-arm32-gcc
> Job #5017577654 ( https://gitlab.com/xen-project/xen/-/jobs/5017577654/raw )
> 
> Stage: test
> Name: qemu-smoke-arm64-gcc
> 

Hmm, none of what I pushed looks to stand a fair chance of affecting Arm.
IOW I'm afraid I don't see what's going on here.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 08:45:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 08:45:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595468.929036 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRgn-0002kf-Uo; Tue, 05 Sep 2023 08:45:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595468.929036; Tue, 05 Sep 2023 08:45:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRgn-0002kY-SB; Tue, 05 Sep 2023 08:45:37 +0000
Received: by outflank-mailman (input) for mailman id 595468;
 Tue, 05 Sep 2023 08:45:36 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=AA/O=EV=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qdRgm-0002kM-5E
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 08:45:36 +0000
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
 (mail-sn1nam02on2062a.outbound.protection.outlook.com
 [2a01:111:f400:7ea9::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9345cb22-4bc8-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 10:45:34 +0200 (CEST)
Received: from CY5PR15CA0254.namprd15.prod.outlook.com (2603:10b6:930:66::28)
 by DS0PR12MB8368.namprd12.prod.outlook.com (2603:10b6:8:fe::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Tue, 5 Sep
 2023 08:45:30 +0000
Received: from CY4PEPF0000FCC1.namprd03.prod.outlook.com
 (2603:10b6:930:66:cafe::72) by CY5PR15CA0254.outlook.office365.com
 (2603:10b6:930:66::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Tue, 5 Sep 2023 08:45:30 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000FCC1.mail.protection.outlook.com (10.167.242.103) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Tue, 5 Sep 2023 08:45:30 +0000
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 03:45:30 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 03:45:29 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9345cb22-4bc8-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LKXqGSEWq9NQu9hH2JafKP5jTlpMC+NxvBLl385oHieLsnQvIVeL8ODMokpvxfb6O7WzHsKWgMwg99a/o89PL6KI9SyQqEhCZRXAXNgL10J/zTUoVa1e+FUjKu+xF//bxnOnxkf4bZqhP2N9tdG+LXHSulT3JTA6i2lKOJcGb/o1bv4YIL/FkKO4qNbQKqpJrN/IIxuOFjSGqbXQ6zrWoQKAeObf1d6z4R6MwbNbOqYGPrxLN96INNF05vFKXKeO6iuGte7dhusMSD3pCcexJ47DRk2+W54Kn1BKLubsGRdcxU2FPYWN2igmk6NVsqgP0Bg9hv+bgFF9XZUJEzwd/A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PreXsEIG4HOkpoUqakLoN3jEpVjtoYHOPv+R9L58IB8=;
 b=lWCRrbtJCE3vfSxVTzDFTV8AtADKY5xiSAvl8S+dndNpPxIGcjONCnxdZe134UFnHcPBE66laV8XAnJvdhUJbILnrArQ4a28AbuJizAYIiFCjKCOCbI3hoPCe8Q5bPbCiMqp51qpb3/O8NFlSzTOeKkSiF9uE2KDbNGebUVLlwxes7M6fJMqydulnYJeNeJL4Li76z+CB1oJMUu8rNrX/DztVvTk5mEWXUOkGuSpCd0myxr6MICWjJqKbRLpjjBKEzk/EJJDbALapACzcOq9HLT5NbCxX+Zv8qpYjc1HcIfRTRHieClYp8RNVocYPuqM/oj1LXtWpSLWdEL2v/Ar1A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=PreXsEIG4HOkpoUqakLoN3jEpVjtoYHOPv+R9L58IB8=;
 b=1MbCKoqjOgTatrOYdCEctdJNGCI76+WdUcgZ1Pl0+vTpS2vpXe0bz68PD8X+5+2Fn8F30pWpw1B8X0T+MtqCU7oBv/CIanHbQj1G826Oa2PUWVWursuRfI5JdwG9ZPEeeBnY05lxIOGzx+krBllB+lBIQEY91JeczIpymeqTQZE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <f73b36fd-71c5-6e97-995a-70b8270aafd6@amd.com>
Date: Tue, 5 Sep 2023 10:45:28 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: xen | Failed pipeline for staging-4.17 | 699de512
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
References: <64f6e593e9f77_28aa2c885476f@gitlab-sidekiq-catchall-v2-5dbc7c84dc-8wms7.mail>
 <0ae5cc93-6de1-8c37-f6da-086ba1287e98@suse.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <0ae5cc93-6de1-8c37-f6da-086ba1287e98@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000FCC1:EE_|DS0PR12MB8368:EE_
X-MS-Office365-Filtering-Correlation-Id: 06f03a9e-7ef1-4850-048b-08dbadec761e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	tz4gsNi/k/Qe3q70Fmxj9hjPXdrILU98JURFBGlby27QnPnd7OyoaSgj0GtVryIRhqbU1C1d03sNHEhdnYpv8tvs3yARQzQ/ubOeizA/cnEZsKWhNe72WoSe3silXn7fvDwE5PN84B42YfZvhQejHi0j6qQtFzfxUo8MRAj+JkewSbx9XRICPL4d27zJy4qqVfYe4z/Z6M2jbHmDwJd69hRlABqO8vEItcIlpG0jTipFRdK9wtLPxqS96jqv0BgTQDcGrLSnBy9vW6qrRB05bix9lWyKRqT6lydrViOB3f0/rL96452eABGflTbgwukfPiPHlGfOsJcT7FFUHj0sTwCbQc8orsJ2GWSdjoLc7ff7E+IAAtBzc8kjTH9K2yyEq+d0xO0J5ciF/2+XpY+vJfEd0Fz8y/z8o0I0mvqOc8K7N2Kh0581Re5++flkdZI+6LYazRTSHrXNX7LfCJT7cmn2v8doBDVtQZGBrCtl4jiOYgF2w+4sQBZ3hl9+BSHfUqHWOAID71Gmv13sMWimG2TMdaUJXefIvhPXiPzRl4wo5L/q8qbqIIcqWdanGJmMj/+1pUVthbkYzNLX623jcBEeGJb+7ZW0mn/0HzRGfEEFx8sgh04KBwgKCBbXIHuorwY3Ado0e6b4xvfDkIQt+eVg93yzLUQR4/bnclc4R+MdZqiQR+G/CXg3BShlTz3KENnw18bt/jkxK/nCJa0IBEOiaGBOSTdf3nIZgpdhMBK3nwnakEwpWUmi3PYv9YAkLi59XSdWZZC7keDoZYgnUeVYCcYkUvcIYBqWnf2VNyHwvkxkyU3FH17ZVyPPJep/OFoLxCX08C3THC8sE1WQQA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(376002)(396003)(136003)(451199024)(1800799009)(186009)(82310400011)(46966006)(40470700004)(36840700001)(966005)(41300700001)(83380400001)(40480700001)(44832011)(8936002)(478600001)(2906002)(5660300002)(31686004)(8676002)(110136005)(16576012)(316002)(70586007)(70206006)(53546011)(2616005)(40460700003)(26005)(36860700001)(336012)(426003)(82740400003)(81166007)(31696002)(86362001)(36756003)(356005)(47076005)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 08:45:30.7529
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 06f03a9e-7ef1-4850-048b-08dbadec761e
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000FCC1.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB8368



On 05/09/2023 10:36, Jan Beulich wrote:
> Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
> 
> 
> On 05.09.2023 10:23, GitLab wrote:
>>
>>
>> Pipeline #992747061 has failed!
>>
>> Project: xen ( https://gitlab.com/xen-project/xen )
>> Branch: staging-4.17 ( https://gitlab.com/xen-project/xen/-/commits/staging-4.17 )
>>
>> Commit: 699de512 ( https://gitlab.com/xen-project/xen/-/commit/699de512748d8e3bdcb3225b3b2a77c10cfd2408 )
>> Commit Message: x86/irq: fix reporting of spurious i8259 interr...
>> Commit Author: Roger Pau Monné
>> Committed by: Jan Beulich ( https://gitlab.com/jbeulich )
>>
>>
>> Pipeline #992747061 ( https://gitlab.com/xen-project/xen/-/pipelines/992747061 ) triggered by Ganis ( https://gitlab.com/ganis )
>> had 5 failed jobs.
>>
>> Job #5017577664 ( https://gitlab.com/xen-project/xen/-/jobs/5017577664/raw )
>>
>> Stage: test
>> Name: qemu-smoke-arm64-gcc-staticmem
>> Job #5017577671 ( https://gitlab.com/xen-project/xen/-/jobs/5017577671/raw )
>>
>> Stage: test
>> Name: qemu-smoke-arm64-gcc-boot-cpupools
>> Job #5017577635 ( https://gitlab.com/xen-project/xen/-/jobs/5017577635/raw )
>>
>> Stage: test
>> Name: qemu-alpine-arm64-gcc
>> Job #5017577678 ( https://gitlab.com/xen-project/xen/-/jobs/5017577678/raw )
>>
>> Stage: test
>> Name: qemu-smoke-arm32-gcc
>> Job #5017577654 ( https://gitlab.com/xen-project/xen/-/jobs/5017577654/raw )
>>
>> Stage: test
>> Name: qemu-smoke-arm64-gcc
>>
> 
> Hmm, none of what I pushed looks to stand a fair chance of affecting Arm.
> IOW I'm afraid I don't see what's going on here.
In all the cases:
+ curl -fsSLO https://github.com/qemu/qemu/raw/v5.2.0/pc-bios/efi-virtio.rom
curl: (22) The requested URL returned error: 503

The address is the same as in staging, so maybe some intermittent issue.

~Michal


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 08:45:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 08:45:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595469.929047 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRgp-0002zl-94; Tue, 05 Sep 2023 08:45:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595469.929047; Tue, 05 Sep 2023 08:45:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRgp-0002ze-6N; Tue, 05 Sep 2023 08:45:39 +0000
Received: by outflank-mailman (input) for mailman id 595469;
 Tue, 05 Sep 2023 08:45:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yb0f=EV=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qdRgn-0002kS-F8
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 08:45:37 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on061d.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::61d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 93a672d9-4bc8-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 10:45:34 +0200 (CEST)
Received: from AS9PR04CA0142.eurprd04.prod.outlook.com (2603:10a6:20b:48a::16)
 by DB9PR08MB7397.eurprd08.prod.outlook.com (2603:10a6:10:36c::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 08:45:26 +0000
Received: from AM7EUR03FT027.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:48a:cafe::a8) by AS9PR04CA0142.outlook.office365.com
 (2603:10a6:20b:48a::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Tue, 5 Sep 2023 08:45:26 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT027.mail.protection.outlook.com (100.127.140.124) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.25 via Frontend Transport; Tue, 5 Sep 2023 08:45:26 +0000
Received: ("Tessian outbound 0b7d6027328f:v175");
 Tue, 05 Sep 2023 08:45:26 +0000
Received: from f0e33304a8e6.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 574CA6D2-79E0-4567-B3A3-729E28B31C90.1; 
 Tue, 05 Sep 2023 08:45:18 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f0e33304a8e6.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 05 Sep 2023 08:45:18 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by PA4PR08MB5903.eurprd08.prod.outlook.com (2603:10a6:102:e9::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Tue, 5 Sep
 2023 08:45:13 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe%4]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 08:45:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 93a672d9-4bc8-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zeQCJwf5DbPB7mGs9GWyXW+zW82stdIjprvnND5gS5k=;
 b=gWOR5UFd3Y5rMFywP5AbtZnWot7gScfhSR51ggIl8VN8dIw5Sw9WNXh4toRl7TJztH0JVTPglyEff+V9JI/nkLCgUadU84Y55liFiRJmayXoq/MFNSgYvy4PYeF/voC5TT9DV+zEf3Lb8a9KwoO8VbK2xcTv98hB/s1cXjQL7Zo=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: dc90614e1a87a09d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Pv23nEBUPHsIhHwn02qspDiD+8nBee+8QmInsfyr2Pgw9S4uaJjc57hc/JDpzwKH4OB+0WGvx9CpjcZZyoWWDGr0pte/MHBTSQPoYwLmulBOIy/Jhp/VrA9QKGg/SCbmZW48+05Bl0JqoLRTYf9bmGy8xLwEEsAFPozv6dDR8a2sD2MKSLAvvgWDLeaw2e7NaGtcFWhDC8vvl5wtgcHrsyPPAycCAL0iCXFgg1as64NNcOEDPW6onflKUoAz/omZw7+s4ojoa+3hp4s3KL/dvVIAcJa8BtYhRIAmSMyreKAl0G58Bh7BkcUW7zNVxYlI9YC5l+0OVNxEzrmvy+VwIA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zeQCJwf5DbPB7mGs9GWyXW+zW82stdIjprvnND5gS5k=;
 b=Wjo+QzUEiIwDN2cvNQzS6rNzCthrds9b22FzoNPOlCMj0k9DpQd5qn+16vanmtWF4kC0vshy4hsoAp3uoDrSma0ikMwvMlFjOsu/IHxmCjsDLp2QxhjGP5AOFV9tZIXXLcXvQHPgaVfpliLmsIY4S30cjIN2C26pFFf9xAlU0bNBhnerTXfMGziye6obtKt5diVTHwKGwQZhIFG6k3g4/qmhH5wvO8kYe5QYh8M6lQaBO+8WLChoP54WBRnJrxG1IbYSCK3z+0h087yoHyrKMCQvaBtbsJQ/2v2EF44S7oJ+ZlME+5gOLRcTFFOAfQq4UiGC/4riaz7tqo4BxGYPcQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zeQCJwf5DbPB7mGs9GWyXW+zW82stdIjprvnND5gS5k=;
 b=gWOR5UFd3Y5rMFywP5AbtZnWot7gScfhSR51ggIl8VN8dIw5Sw9WNXh4toRl7TJztH0JVTPglyEff+V9JI/nkLCgUadU84Y55liFiRJmayXoq/MFNSgYvy4PYeF/voC5TT9DV+zEf3Lb8a9KwoO8VbK2xcTv98hB/s1cXjQL7Zo=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: xen | Failed pipeline for staging-4.17 | 699de512
Thread-Topic: xen | Failed pipeline for staging-4.17 | 699de512
Thread-Index: AQHZ39QyX1pFSJ76TkywyzD3Btjz4LAL6twA
Date: Tue, 5 Sep 2023 08:45:13 +0000
Message-ID: <DCE19DAD-4C4D-4E1C-8001-8A13D9ED2C3A@arm.com>
References:
 <64f6e593e9f77_28aa2c885476f@gitlab-sidekiq-catchall-v2-5dbc7c84dc-8wms7.mail>
 <0ae5cc93-6de1-8c37-f6da-086ba1287e98@suse.com>
In-Reply-To: <0ae5cc93-6de1-8c37-f6da-086ba1287e98@suse.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|PA4PR08MB5903:EE_|AM7EUR03FT027:EE_|DB9PR08MB7397:EE_
X-MS-Office365-Filtering-Correlation-Id: 7a20926f-7152-499a-c043-08dbadec736a
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 qrQv0UNQG6eAfXHRmAMdnUL7WNNcpYg+/z4roGGMgi2bfhoRa+LlSGqwX4HautUGWWd5fXA9WPQAJKVqLltmLy5ZOrNkc+3kgetXe20/2vvpj+BQgbxZvlySXPC85tCqmHf9DtSOvn42r2MBsQJA6GwGQeezADGOhEk/LWv2BHyAs+hVFcruKTUhjIfK5gZmnFmI4ZI1AsxsPOKBJCZAQMgNU1gakmLn2Sn1n9ogY0zafEJAXcot8Pu5cyIB1+SJNDRfUJj0ebvZvYE2uX1lv5yRRUPRWfNIm6z05wKmEIXdvyG1Bh4QWsT+RdSDw6dTdplB4niQQc2qJWVvVDnKX/mW+8iHLyLcT9HrbPkdAxXrBEITKo30CNk11XcvVr6l5pk9BdBP9F+uR/14AwLptAhtwwlAzN3GMDA/mUJA0EBOXGlkFzc3cTwmdrjUrYDwTxUaKCzTqA6Q+mO5aDtqFt3dcIE+hFNFBX58/+63fadkFzU3bOfDQvM3rI3Qzr8776S2w3a1I8gWGwBgoToUlzk5oNK/pi18unZvLVXXXLqvOYrjZFiM4RydclEYN0EDcBehLLHyjo+60YhNydJ+4Ty0w0qRXfLSorfu201KEwdRgc3RIL9gpMa3sswaAaoXS8JgQHn95rWtG4XT0J4dfsw5WEpZqXaSPzHvZT+PUFEU8gM/E2BtN6y73fnA0/nZ
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(376002)(366004)(396003)(39860400002)(346002)(186009)(1800799009)(451199024)(41300700001)(71200400001)(6486002)(6506007)(53546011)(478600001)(966005)(122000001)(83380400001)(2616005)(26005)(6512007)(38100700002)(38070700005)(91956017)(76116006)(2906002)(66946007)(64756008)(66476007)(36756003)(6916009)(66446008)(316002)(33656002)(86362001)(66556008)(5660300002)(4326008)(8676002)(8936002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <900B086CD26C34488431397F0689BEC4@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB5903
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT027.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	76e75c8d-a329-4014-7a81-08dbadec6bca
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Tg2q8VxHAzZDNGypmmhWf7ncoB3SQYcCChub51s0bcnukWhRnsWaG3xcJ0biBFlSjWDd0uGSnm2tzo/B6dwMrJIz8ZdEpkbBfX34u35m5KJqFVTkO+vqSpknlq/LMCIz/U9SY8Ook+xAY+dZ53p8y3FJC4jaMmEjrohAVYXKIxFIOri+1mRa+rnCpba0AqXFseB1WKY/l69/Z4giGCZGzsJRK3UUGSqWGX8aksRoTv+35v1Jb9Zg6YrJd3Jnd0Yt6nqgmgcbamS0HOFUw9W6VgA/NuER/mGWrPCw/7cD4ewlYKKLuaDqrnFvERnltavb3kjltZFWKNsrsLtxB2P2c3BN6Ddtei1sE8htmuVXYjoYVX84klMkp7MnS05cr1XJX/i9OwNosiaMTqe5DvsZqr6eiVF6P7N6C334NY2YHylU89jzLgX0BFjcv3DcckGRmRvFvkLOok4PP0UJx76tcrXTgc7dhdM9hUwQ/soAA6lDTlnauXfBvE3v5u6arfY+GGfYQPtt5n28kSazW8y1UAcYAjEzacmChH/Q4VBInlznVsZRP0k1aqgsFoD7wdsFhhxoYtBZw7gyKT6cjLDMIXMZjjbEqlb3NMfH891nBqkHCdRK/x7U2p6TKvdNEpBgqw2Z9cqme5qa2NDkTJ5OoiW4aJYXEHBhrZbxCJWpEKgzBjzJc8MxkJcJalJKCTdCjzk1Mr+3PnNjQLhVgQnUN2+yNDG9NYc/d3Yy+4bJLrtl2dbasRtzjxgKLFje8slKINoYBXpcaOs39412ztN5uw==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(136003)(39860400002)(396003)(82310400011)(186009)(451199024)(1800799009)(46966006)(36840700001)(40470700004)(33656002)(36756003)(40460700003)(40480700001)(6506007)(53546011)(83380400001)(86362001)(26005)(41300700001)(36860700001)(6862004)(5660300002)(4326008)(8936002)(8676002)(2616005)(6486002)(336012)(6512007)(47076005)(82740400003)(356005)(81166007)(478600001)(316002)(2906002)(966005)(70206006)(70586007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 08:45:26.2695
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7a20926f-7152-499a-c043-08dbadec736a
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT027.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7397

SGkgSmFuLA0KDQo+IE9uIDUgU2VwIDIwMjMsIGF0IDEwOjM2LCBKYW4gQmV1bGljaCA8amJldWxp
Y2hAc3VzZS5jb20+IHdyb3RlOg0KPiANCj4gT24gMDUuMDkuMjAyMyAxMDoyMywgR2l0TGFiIHdy
b3RlOg0KPj4gDQo+PiANCj4+IFBpcGVsaW5lICM5OTI3NDcwNjEgaGFzIGZhaWxlZCENCj4+IA0K
Pj4gUHJvamVjdDogeGVuICggaHR0cHM6Ly9naXRsYWIuY29tL3hlbi1wcm9qZWN0L3hlbiApDQo+
PiBCcmFuY2g6IHN0YWdpbmctNC4xNyAoIGh0dHBzOi8vZ2l0bGFiLmNvbS94ZW4tcHJvamVjdC94
ZW4vLS9jb21taXRzL3N0YWdpbmctNC4xNyApDQo+PiANCj4+IENvbW1pdDogNjk5ZGU1MTIgKCBo
dHRwczovL2dpdGxhYi5jb20veGVuLXByb2plY3QveGVuLy0vY29tbWl0LzY5OWRlNTEyNzQ4ZDhl
M2JkY2IzMjI1YjNiMmE3N2MxMGNmZDI0MDggKQ0KPj4gQ29tbWl0IE1lc3NhZ2U6IHg4Ni9pcnE6
IGZpeCByZXBvcnRpbmcgb2Ygc3B1cmlvdXMgaTgyNTkgaW50ZXJyLi4uDQo+PiBDb21taXQgQXV0
aG9yOiBSb2dlciBQYXUgTW9ubsOpDQo+PiBDb21taXR0ZWQgYnk6IEphbiBCZXVsaWNoICggaHR0
cHM6Ly9naXRsYWIuY29tL2piZXVsaWNoICkNCj4+IA0KPj4gDQo+PiBQaXBlbGluZSAjOTkyNzQ3
MDYxICggaHR0cHM6Ly9naXRsYWIuY29tL3hlbi1wcm9qZWN0L3hlbi8tL3BpcGVsaW5lcy85OTI3
NDcwNjEgKSB0cmlnZ2VyZWQgYnkgR2FuaXMgKCBodHRwczovL2dpdGxhYi5jb20vZ2FuaXMgKQ0K
Pj4gaGFkIDUgZmFpbGVkIGpvYnMuDQo+PiANCj4+IEpvYiAjNTAxNzU3NzY2NCAoIGh0dHBzOi8v
Z2l0bGFiLmNvbS94ZW4tcHJvamVjdC94ZW4vLS9qb2JzLzUwMTc1Nzc2NjQvcmF3ICkNCj4+IA0K
Pj4gU3RhZ2U6IHRlc3QNCj4+IE5hbWU6IHFlbXUtc21va2UtYXJtNjQtZ2NjLXN0YXRpY21lbQ0K
Pj4gSm9iICM1MDE3NTc3NjcxICggaHR0cHM6Ly9naXRsYWIuY29tL3hlbi1wcm9qZWN0L3hlbi8t
L2pvYnMvNTAxNzU3NzY3MS9yYXcgKQ0KPj4gDQo+PiBTdGFnZTogdGVzdA0KPj4gTmFtZTogcWVt
dS1zbW9rZS1hcm02NC1nY2MtYm9vdC1jcHVwb29scw0KPj4gSm9iICM1MDE3NTc3NjM1ICggaHR0
cHM6Ly9naXRsYWIuY29tL3hlbi1wcm9qZWN0L3hlbi8tL2pvYnMvNTAxNzU3NzYzNS9yYXcgKQ0K
Pj4gDQo+PiBTdGFnZTogdGVzdA0KPj4gTmFtZTogcWVtdS1hbHBpbmUtYXJtNjQtZ2NjDQo+PiBK
b2IgIzUwMTc1Nzc2NzggKCBodHRwczovL2dpdGxhYi5jb20veGVuLXByb2plY3QveGVuLy0vam9i
cy81MDE3NTc3Njc4L3JhdyApDQo+PiANCj4+IFN0YWdlOiB0ZXN0DQo+PiBOYW1lOiBxZW11LXNt
b2tlLWFybTMyLWdjYw0KPj4gSm9iICM1MDE3NTc3NjU0ICggaHR0cHM6Ly9naXRsYWIuY29tL3hl
bi1wcm9qZWN0L3hlbi8tL2pvYnMvNTAxNzU3NzY1NC9yYXcgKQ0KPj4gDQo+PiBTdGFnZTogdGVz
dA0KPj4gTmFtZTogcWVtdS1zbW9rZS1hcm02NC1nY2MNCj4+IA0KPiANCj4gSG1tLCBub25lIG9m
IHdoYXQgSSBwdXNoZWQgbG9va3MgdG8gc3RhbmQgYSBmYWlyIGNoYW5jZSBvZiBhZmZlY3Rpbmcg
QXJtLg0KPiBJT1cgSSdtIGFmcmFpZCBJIGRvbid0IHNlZSB3aGF0J3MgZ29pbmcgb24gaGVyZS4N
Cg0KY3VybCAtZnNTTE8gaHR0cHM6Ly9naXRodWIuY29tL3FlbXUvcWVtdS9yYXcvdjUuMi4wL3Bj
LWJpb3MvZWZpLXZpcnRpby5yb20NCmN1cmw6ICgyMikgVGhlIHJlcXVlc3RlZCBVUkwgcmV0dXJu
ZWQgZXJyb3I6IDUwMw0KDQpJdCBzZWVtcyB0aGF0IHdlIGRlcGVuZCBvbiBzb21lIGJpb3MgaW1h
Z2VzIGluIGdpdGh1YiBhbmQgZG93bmxvYWRpbmcgdGhvc2UNCmRpZCBub3Qgd29yay4NCg0KSSBq
dXN0IGNoZWNrZWQgYW5kIHRoZXkgYXJlIHRoZXJlIHNvIG1pZ2h0IGhhdmUgYmVlbiBhIHRyYW5z
aWVudCBpc3N1ZS4NCkkgd291bGQgc3VnZ2VzdCB0byByZXRyaWdnZXIgYW5kIGNoZWNrLg0KDQpD
aGVlcnMNCkJlcnRyYW5kDQoNCj4gDQo+IEphbg0KPiANCg0K


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 09:02:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 09:02:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595483.929057 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRwg-0006zM-NQ; Tue, 05 Sep 2023 09:02:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595483.929057; Tue, 05 Sep 2023 09:02:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdRwg-0006zF-JM; Tue, 05 Sep 2023 09:02:02 +0000
Received: by outflank-mailman (input) for mailman id 595483;
 Tue, 05 Sep 2023 09:02:01 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdRwf-0006y5-4O
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 09:02:01 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20615.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::615])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dec9b868-4bca-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 11:01:59 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8675.eurprd04.prod.outlook.com (2603:10a6:20b:42a::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 09:01:56 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 09:01:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dec9b868-4bca-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=e/DvZ9Ff6MgIHaEYIQD6S55FXNEmefzgiOZKlg0+/8jhW1BK+ItR67oXP/9A5QJNtATL4Ivtl6FKEcTYkwzaqZmed8HQuo3Hhwig896/8xhJHPcgaCgWpbyuioE3BF+4NX3C8AJQprhPEQW/5QyorVkGTbh0nDst/WBeSLfpgQZXeebMNwDyZK/2gLQbDa8H+il9cgEW2LKAXYODYz1A/k3meLtHcrHbi+pSWk8lexvumxeR4GiCADXZxkvwtGQnhoqQEVvjxTQqc9Qxhivhclhzhvs4YoX3LPrPkBY51M/UsqpFbhZfVvY4qpsfAZPWhnCMD2CNzgDfJd+cGjVFqQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xg5KCu1n8KLFrYWgLwAidW+Hx8AYR9obGKSxceilEMU=;
 b=SRpwakU61TJX/jKk8oktQUEsHc1Ofns39Bh5KRzZY5P98dOKi8yQIbRS6DyxHcJginMnxL7r5G5TBFnQ57CgrDiWd8999bD1YT8k34uzIMrkOywCpHPbfjbCMC3aRgsj3ymkdK1wdv7ChQHV3PtNSTykKxr0+3KA3fy4Vk4pG1gFRF97V5jSLJBUuiEZEn3vr3l6XX6NZSm6PmeiaXgkde3NwbDiI9Ow0KPyXARL7IjlMccjtiCeSep55wqHpRfrnb4aldGxuGS1Nfzuk6Lhrezha3JNZ/SKHJ/39smvoRYtF/3rUuKNZWVU7l42fGwzeNrp4LF6K8yOHEjRgXg9Ng==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xg5KCu1n8KLFrYWgLwAidW+Hx8AYR9obGKSxceilEMU=;
 b=zn7xz/hIbF57iOEDB4wdcdxnrGj4Ze4OVM7i8uMYKrTe37LyRhwh5iPyM5vQ0SArvDC4A175k0i/rsx6aFpbBVAYmi3/mwkzyBx0woVWlFx1Ez2uKKkjHE9vawbd0JNcN5k1jsvSnn2XgaTqRdKN7v82mIBYgpq4X+dfohG3UxVAl4fzOh0RvDye4TYlxWIPah8O3m/BZyFLu/4Jo9J3Myzhoqnu0d4WE9ISQrXnHzC95LxGP3GZjd6+E9X/SY8ufg64UZy2CGVSr6sc7Km6G1HsrGRlB2ZDeN9Wy4NQwton1DolfoargCmsmQf/dSQEVmeCAlYiYbMiTcUEjsIZSQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f2e73d5e-209c-235c-9fad-7d541aa38382@suse.com>
Date: Tue, 5 Sep 2023 11:01:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Content-Language: en-US
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] x86/PV: don't use access_ok() in set_debugreg()
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0229.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b2::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8675:EE_
X-MS-Office365-Filtering-Correlation-Id: 5b619ba4-2d44-4e0f-b5f0-08dbadeec152
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mgNJyMFnRwBtRs/wZjHO0Z/mfZFY2KuJzPbnvSjywTHgrnjUVlSp2gLLnpUJTGn0WNhZxo4Bhs+JzUZ81/WW1VPI5Q1N20UHaCUiMpCWZID5JE/9bCjUBuZF4X3Pk3Irk7phuFbKMhvzZ2+v3K1r2OojdCg4kPGrU49ump1xKlvzfQy9AC3D2GasIGkgyxlKbcEIEW7xSiagl4qIrQXLo4I2tJfcxGy3+4PIkspDE7p6LHcUUrvPr0HW9kEO7lA9CHI/PfjccNOog+ERdpRaFD2BZq5nqnYz6djIE1R2QyWWklmNPhl6bpmUvX2idFxGSDvMb6QZZavnoWNC2aqnNv5T/+mgn9SHNSRFCSxTqKUl2g6pW+xPdqQhEWvrrkkhX+85RkbQHpXrQIquCSniXQt944y+3JjKL96/F7dvoXzuqxe8IKMkNVmDsOAnJ2uBFpymWny5qyy+Nuld3xrA6xPw2sa7Z9UVGMsWkDB7b9rosJIQ1wzAC9XicfqX5szlPMv+RmStEa4Bfj9f1fdYU1xwJDYQ1hG2lU6nd7pEMozGXKb4KbOtjK1jchowFD81nRsOcqoLN+iTSAA/1NVyaJWaSoSakO9G0nGSoD7y8UWxKHhiWYZZHtmwrvOm60ulqP+PYG5VCveSd3xlE8hc0w==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(376002)(396003)(136003)(366004)(1800799009)(451199024)(186009)(31686004)(5660300002)(8936002)(316002)(6916009)(66556008)(66476007)(54906003)(36756003)(2906002)(66946007)(8676002)(4326008)(66899024)(41300700001)(6486002)(6506007)(26005)(6512007)(38100700002)(478600001)(6666004)(2616005)(83380400001)(86362001)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dWpoaGd2YmJlWHRJdXlwWTNLTDNFMzF3UDdIby9YalJjd3N2eEYwbVg5SGRC?=
 =?utf-8?B?bjI5UWpZcFcyNHU4SWtYa0VzQW90RlFJQUNWMXhrVUJueWVkTUpIMDdzV245?=
 =?utf-8?B?N3hGVk5jWW9iemR6LzZJTUhhZ0xtTDB6SkN5NzVuWGNKT2p3dzhHa2xrTFdP?=
 =?utf-8?B?TzFrV3V6L3dwQ3Fjb2FEWmZQZ1E0bjdRWmVGSm5zcGN4TFk5TTk4WW5BMkc3?=
 =?utf-8?B?RGtITHY2NkhwaXlmcGEzYmVmelVFdzJ6L3ZJQUgzaktyMWQzaWZCSXJCWTE1?=
 =?utf-8?B?SElkTEJ3dUx1eGdoYW1zNDd5SzN0QnlEWFRmbExkR2IrUFdSQU9UdHNWYmp6?=
 =?utf-8?B?WFlJaXZETnJjV1dGUVlPSUs2cEh0OVRncVYrcHo0ZHZQSDZPQ3pkQkZIWXhN?=
 =?utf-8?B?RS9VRXpyMGtVQUVuYW4xOXppL1Nxa05PSnY5MTFsUGVyaVRKTWYvTi81QW9j?=
 =?utf-8?B?ajJTaTYweGpNMWd6RHgyenZXYU5GYmtrbExIVUFNZDJ0M1hpS0RnTUNneUZ6?=
 =?utf-8?B?bGlZOGhxdXM2UXRBUmNxNnNUdm5PYkRXK1lxU0hVYU52UUtQclFKMEJqUDVw?=
 =?utf-8?B?azhnR3NJVlQyemdheVhiMkFFZ2xNWEYxdWNtOHY4bWNrNURjR1hPMGY0UlJz?=
 =?utf-8?B?UUtYWEJDcm4zTE04QmI4WGd2eEVORTh3RTlCZlZhNGtRM1hmWWxlU1FMbkdw?=
 =?utf-8?B?cDdWaklUa2JRd1BRWEY0dDVKSDdoOTkvZjFaMkhjdWRkcnlYUHBsWVkzdTAz?=
 =?utf-8?B?VS9nQ1RoNDJKMnBCZTFPZ1hLR3pXanpRQXpleU4yRTFGVGk1Q0lQcHFldEZt?=
 =?utf-8?B?WnBrL1BLaCthTk9jY3lQc2hVa1RpNFdadFpEbmpqVkhRL1hOZzAzcExZT1M0?=
 =?utf-8?B?SExGdWk0V1BQNHFxNXprdWJLcm50RElCVW1mQkVmMW9tUExYZld0cFJ1WFk0?=
 =?utf-8?B?dnMzVkpQSnRaMTFuUFJvd1dGNC8yM3pXcVd3NVVxNmE4UCtJdHBiY3hFTDBv?=
 =?utf-8?B?cGk2eDBDTlJxT0YzZVk5V2c5S0xQeFBxbkRpUDNtRm1nY0xhMEhOclJjTktx?=
 =?utf-8?B?WUViOUNIMisycW9SQ0cvdHhQN0Z5VnZBUU0wa2w1RjEzdjR2Ym9TVitsZGxs?=
 =?utf-8?B?UGZqT1Nrd2d2NkNYZEtHelFlUDVPQUtSeTQzM0xkeUE5ZlZqbU9aZHEzUU44?=
 =?utf-8?B?VVl5dTFmVWEwZUpFblVZRWdKc0ZTakcrTjluMTlhZmlESnNiRzBuL1BpNlFr?=
 =?utf-8?B?S0JMTGN3TmJVVGM2TXRqOVdPR2xQcDJadHpqZGF0dC9NdUJMQWlTRlVLRU9l?=
 =?utf-8?B?RWlxWEpMdTc1SUpQdktCWDhnSmFFM0xWZXVTTEFGL3B6ZUx2YzR5NEZ2NXZq?=
 =?utf-8?B?UjE2eTJwSmZIcytLUGcxS0NWaTg3ZVFURmlBOS9wN2N5eUxkS3dIeGQ4Tkdh?=
 =?utf-8?B?eXJac09CaENYWWN4WGlsNGZRdTd4ckxYQjJaWDJRUVhFdEhEdzRHY2xURXFC?=
 =?utf-8?B?d3g3a0ZrYW1OcGFHa3pFL1JsVnBvMWlwQTlPREFOMjZCV2VndW5ycExsMW5r?=
 =?utf-8?B?SjVCNGN5ZFIvU1NwaS9ISy9JQ0xPOGFibXNtN00wRnJmenVmbjJUMFFIM2NF?=
 =?utf-8?B?c3RGeFpoN3JrUDZ0NlYvRHJ4czJndWNKblFFRDcwL3Zydy9PTHdjVlJwb25Q?=
 =?utf-8?B?eUNmOEljcVNMaGgrdjJBeVdmV2ZrQkszQkxEeTRmN2xIeFNNL3RQU3VUVStj?=
 =?utf-8?B?UmpxWkpwdzgwejJhL2tUang2eVF5WHR0SlduVzJlSDRiUlVDQWUzWC95OG1E?=
 =?utf-8?B?UGQwMEdxcWswSy9aZCtrRjYybkozN09KZWZGYlp6VUVlQ2FTVWpraUllREVY?=
 =?utf-8?B?eGl0OHZKVXpCZ1N3VmE0TWxTNmFzR2hEUzY4bXpBRTVqV080UmYzeTZTanI0?=
 =?utf-8?B?NEVMK1AyYVRSeURmcjE4ODdnMWhsU1ZIbWxiRFVCOVQ4Q1NvTmFWVGNGbEN3?=
 =?utf-8?B?dTBTa1FuNU10cS9hVWgxV2F6amlWSkZUc1gxckZhQWdiN3dlSUFpQzE5aFpj?=
 =?utf-8?B?YU4ybDF1VVRlYVJqUFhwUzFoTnpSa2FwWXBDbEVxTmVHTlRwT1Y4cEp2S2RN?=
 =?utf-8?Q?hAWOr9896PLpeuJTSTgbE2yST?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5b619ba4-2d44-4e0f-b5f0-08dbadeec152
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 09:01:56.1904
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: iF19MxBjJ6BR/9XxlT+xOxJuc/VrBI+10ajHKrE4agrVoWc7LN9GyDquTcc2VVAKz2WUzxEFWRft7sBnW54Lpw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8675

access_ok() is not be applicable here; we really only want a linear
address check for breakpoint addresses, as putting those in debug
register isn't going to result in actual memory accesses. Furthermore
access_ok() assumes to be acting on current, which isn't the case here
when called from arch_set_info_guest().

Note that access_ok() was too lax anyway for 32-bit domains.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
The questionable use of sizeof(long) is left in place for the moment,
as it's not clear how to best deal with the upper bound of breakpoint
covered ranges: We'd like those to not cover Xen space.

--- a/xen/arch/x86/pv/misc-hypercalls.c
+++ b/xen/arch/x86/pv/misc-hypercalls.c
@@ -60,7 +60,10 @@ long set_debugreg(struct vcpu *v, unsign
     switch ( reg )
     {
     case 0 ... 3:
-        if ( !access_ok(value, sizeof(long)) )
+        if ( is_pv_32bit_vcpu(v)
+             ? value + sizeof(long) > HYPERVISOR_COMPAT_VIRT_START(v->domain)
+             : value + sizeof(long) > (1UL << (VADDR_BITS - 1)) &&
+               value < HYPERVISOR_VIRT_END )
             return -EPERM;
 
         v->arch.dr[reg] = value;


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 09:08:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 09:08:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595489.929067 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdS2S-0007e1-Ak; Tue, 05 Sep 2023 09:08:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595489.929067; Tue, 05 Sep 2023 09:08:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdS2S-0007du-7E; Tue, 05 Sep 2023 09:08:00 +0000
Received: by outflank-mailman (input) for mailman id 595489;
 Tue, 05 Sep 2023 09:07:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Og0L=EV=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qdS2Q-0007d2-TY
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 09:07:58 +0000
Received: from NAM04-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam04on20617.outbound.protection.outlook.com
 [2a01:111:f400:7e8d::617])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b3b172dc-4bcb-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 11:07:57 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by DS0PR12MB9037.namprd12.prod.outlook.com (2603:10b6:8:f1::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 09:07:50 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40%4]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 09:07:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b3b172dc-4bcb-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UT39xLUPCKFDSxDkJTptSle1oIimjCNGSvWvmQnuC7sz2Jxtk/CSKUfzOyg8A00/kINJzkdL2PP8TuEu7ZVnvU7O2FJ6bCb7cNu6ap6U7ku5tUJxXirFM6IMC0JUVzbv0HUHeMKzUxpTsCZF4uAltfga1C76f0S+Nl3VOev7Dna+/Qaq7PcDCY/EZ/HFgzlKpUAvcSH7pvsd1lMdcwZOthxoSvaATrlZkQqSgr2kB44BEESVLHyKmbWibxfO/pQHGIL5GjTaQTzz2ro9diaqXNgVZZZVjqXpKLd66jmwToxr6IUwMxTm9RHuKjMciI+aekvRkIzjrSUQ0YjyOs9kgQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=v6bD8Dmuxp+VS6LhVzgyPaD7tX6Y8BFtDWoybBL9UdQ=;
 b=Ra2t4CPnjfXAoqiz6RBPUEIbpH2MRZVL+Oi0Wdbr/rISIBFcg4u8zy1enM+5c0gO2xbNPm33SIFgFdCumf5K24uWJaf8kFp+aOG7lpRYssATjQku3qe31rACupIAbDn6o6R2NLOYMmBm1phWN9ZOmAx3DP2y21H77kwdLlV+uduGBmqIDAat/ltAiw1i0uxznUMcKjKPVSEzPY+LMKuszjFLIc100ZPCfyS+BIS3RXZUefC3ut24ugw+WDbuq/J5IWu7I51p7VS0/WCbIVaeAsDCyKB1Wx3SKjrg6kgprldHI8BZj/fuw69yCWnSWZezxq8J6RPGYqLAXd1X0UyJyw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=v6bD8Dmuxp+VS6LhVzgyPaD7tX6Y8BFtDWoybBL9UdQ=;
 b=JDsdWY7lPiaYNYl/qVzMxZOsqdKRcGrIGRcdaLhTPh59E2ZdBECoGESK9UDH4vme2XlBA8N0iSJVopepH2GVb/Q62NOxHsNdNaP++3e6K6g5Gsd/4snyHPLZi+SLPF8imqNov4anS3aGhseMHn5jF38XZhjvxkOKOZMdlVy0tYs=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Tue, 5 Sep 2023 17:07:20 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
Subject: Re: [QEMU PATCH v4 07/13] softmmu/memory: enable automatic
 deallocation of memory regions
Message-ID: <ZPbvyDsikvvzierv@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-8-ray.huang@amd.com>
 <b988f9d4-69d7-4cc4-b13e-3e697acf9fe9@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <b988f9d4-69d7-4cc4-b13e-3e697acf9fe9@daynix.com>
X-ClientProxiedBy: SG2PR06CA0235.apcprd06.prod.outlook.com
 (2603:1096:4:ac::19) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|DS0PR12MB9037:EE_
X-MS-Office365-Filtering-Correlation-Id: 2a1317ac-c6dd-4276-77a0-08dbadef9425
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1KyKkk4i/SAn5bYPu9kGfv63IBLQYhq3oh2y9KdK/ayUNAdXXSNqztkgmuXaAPxHP/Jgk6Qwq9A3Za/b7QpoLvLIhTwfffEeG4fOQIJGnfVcO17S03iOBPQqmKJyyIlLtq8Vvh1fX9rABBLBf2peqn4Jp/g2G0o31D5JyzEJDB/1+csRBRtqf480ddDXFsZHu6N5282o3q/nVBmO5+TXnlEpbalavnbq6uOHAsgnqIjjTHLf/AImR+/dqOM2UAUXq2d3deupmyRRNhnYtuImFCXgK8JS9DweeWT/9LLxz2dfyZCU4oHQ5acpZe15IZOMHqDbt2gI2RDrrd7fU0lH2EpSHz2Lvcx7+tET09sJzlzcj3/PX4kLiZESIrpdYKYy3X/Z7+u54Fnr/pu2YNgQkHkZvIm7AXVc0OU6ehn/8MWdXsWlsTHdr9nXaEQEfieC7ZYa649FTkq7JAYJEr4aWKQVDHsiHCyBS3W2lwMfvjIHaSs1sbA5XBRQXSxehKY7oobWAfUjVbHRXRuj1r/xIQoJOvhI59WRLH/CZNIXWZWe4WtbK6DP26H1b5ML9Yvp
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(396003)(366004)(376002)(39860400002)(1800799009)(451199024)(186009)(5660300002)(8936002)(66476007)(7416002)(41300700001)(54906003)(66556008)(6916009)(66946007)(316002)(2906002)(6666004)(53546011)(6486002)(6506007)(6512007)(4326008)(2616005)(8676002)(478600001)(26005)(83380400001)(38100700002)(36756003)(86362001)(66899024);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?780OJ5YKoF9e4DhNdKFNsckHnHP0/tjfY2zbyKUMffFclh8kvqAIGsZluvnB?=
 =?us-ascii?Q?Lf0tY1XcazUuC082Svnb/J38a5wmW2fXpOHim2jSFV/YSVgIjeRhXPDDsz5V?=
 =?us-ascii?Q?4NhrYpc7GlKsOVOGtdBstfsmKzSCHCrDx2h9mpYGMl/VLq+Xir9Kj62mrgkS?=
 =?us-ascii?Q?QYnLRKZgUOvpwasrXNuG7CZno0isOBPn584rOQO/ba9nXj/mVGP2ugghkYl1?=
 =?us-ascii?Q?aeHl/Ka7a9vmSzAjms5BmPmaiOJwCS2i9N8ZTOeKSbq2gqKZKbEHPkNroN9I?=
 =?us-ascii?Q?Z/txy9db4dUWEoNXuqyo4TCfIWWdbc42nq3THOx+YDBuCLHEEP9qyy3tRhOF?=
 =?us-ascii?Q?1WsdBkz63R/1DC0a8B0SfrSCOCbMKCfqd0OLUOOATqXSIetsDzk/FTxjXmbK?=
 =?us-ascii?Q?e0u0aihud6MeDWMJNiMPS1I1IKYHYuhPm46KXfcPEHHXW2LvuA72zR2qJ1WG?=
 =?us-ascii?Q?4exBBpMk5cA6BGNneNniAwzOihH9leFlYCzT6tVu6SEOl+N9sPUKkS2vDtkd?=
 =?us-ascii?Q?e87ih/niJX9+zrhgXDrq3ErRynj07QhsWjw2bhXogtYjxYhhr7b6X7UTlsOq?=
 =?us-ascii?Q?haJUCOTzrpJlrezqbwx2aL6AJ5zzCgqHYwaY36lTBr8bQ0IPJ90f98S4WVWX?=
 =?us-ascii?Q?oXcXjl+4hc72hbVx/pD2NMWBeME+sGD1TCKvxAwqOw+0uzITolPY0fcT3o4v?=
 =?us-ascii?Q?gOpERC74Zpb7ar0e6xu9RKk4qlS3GLXt5tCUB/iL4l21NFV92EHsPfZerL9Z?=
 =?us-ascii?Q?EDY7ucqy6QnVaaqI73gsxKrTRG0J3+XtFT+w6pUZoJIwWDL6vGBByVYjy1Pv?=
 =?us-ascii?Q?KHkNG42k26R5TsZk+AWaEQ/Nugig9cxnbG5Ci0t2KmRCnxShtAin3VN2iICY?=
 =?us-ascii?Q?AIYr4WhgnGgFCerqo3vkIAkEiSFdqDitVz1d8XWZTYMyR7tMqEChLv65lMRE?=
 =?us-ascii?Q?/6vs9PcY4PK5L4W6J+cJvQyvjQ9aJ2Xhf/eizI+5TtpG+GHjxnwiLVu07Dmf?=
 =?us-ascii?Q?5VLGwKsW7YRaEn7Mufc+i7SMwruRekLgCk3mDydTd5byZ3ePkwZ4qtId8e0W?=
 =?us-ascii?Q?74YnSL2P6gSriI5M7uXxt0Zs4A59D0o3J+Lk/KSLQKSoDxz1btZskfsHDowk?=
 =?us-ascii?Q?ejILlJwQWUQqKDsQRuEB+Dxxs81roiVl31y3EF3GmSCsYvd9iXNZMY34jUXv?=
 =?us-ascii?Q?4+aCntMg9DgqQWFmHpmgQ58hyffS9zgaEQDJ9K2Al6QTzR/vtXqy8s2gmkJT?=
 =?us-ascii?Q?pGv4sDvin7LPV88+MpBNRyn3kDFx1AEjrGt3t+9+CmlkBYIdKsQ2Gp8TMFQY?=
 =?us-ascii?Q?BpnljpVemnwa/Xgrs13czzKq6tR5UDdGjXurRNTN7rRcZFOegN/Q08JKgQLS?=
 =?us-ascii?Q?vnp77U2GW39dmLGOVO8VZNV2IciJPCgzuTcLx0/cMa7IbXeOWU9fy3Mi7Hr5?=
 =?us-ascii?Q?hreqEMG6EWFlC0kJuAKXR2t31nAZF3ylyatQRmvW2zUtGyCPajpQsRh4kQEu?=
 =?us-ascii?Q?80pG8iz/sR1UPU8MxdgwrKfMLNSVCstgJ8bTAgC9CtHak05UUDMolMVE8h3w?=
 =?us-ascii?Q?CLy1lkmm4BVskj8O6RAdi/V20LLFBiio44ImYwoe?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2a1317ac-c6dd-4276-77a0-08dbadef9425
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 09:07:49.9400
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rUpuGd4nEE33L8MUsK+WRrkJk3FISuDt9LYqCwRwLv4BMQlC7SGASn5i7HMPnIjG6uee9KM9cTib4Ib2HM1Vlw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB9037

On Thu, Aug 31, 2023 at 06:10:08PM +0800, Akihiko Odaki wrote:
> On 2023/08/31 18:32, Huang Rui wrote:
> > From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> > 
> > When the memory region has a different life-cycle from that of her parent,
> > could be automatically released, once has been unparent and once all of her
> > references have gone away, via the object's free callback.
> > 
> > However, currently, references to the memory region are held by its owner
> > without first incrementing the memory region object's reference count.
> > As a result, the automatic deallocation of the object, not taking into
> > account those references, results in use-after-free memory corruption.
> > 
> > This patch increases the reference count of the memory region object on
> > each memory_region_ref() and decreases it on each memory_region_unref().
> > 
> > Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> > 
> > New patch
> > 
> >   softmmu/memory.c | 19 +++++++++++++++++--
> >   1 file changed, 17 insertions(+), 2 deletions(-)
> > 
> > diff --git a/softmmu/memory.c b/softmmu/memory.c
> > index 7d9494ce70..0fdd5eebf9 100644
> > --- a/softmmu/memory.c
> > +++ b/softmmu/memory.c
> > @@ -1797,6 +1797,15 @@ Object *memory_region_owner(MemoryRegion *mr)
> >   
> >   void memory_region_ref(MemoryRegion *mr)
> >   {
> > +    if (!mr) {
> > +        return;
> > +    }
> > +
> > +    /* Obtain a reference to prevent the memory region object
> > +     * from being released under our feet.
> > +     */
> > +    object_ref(OBJECT(mr));
> > +
> >       /* MMIO callbacks most likely will access data that belongs
> >        * to the owner, hence the need to ref/unref the owner whenever
> >        * the memory region is in use.
> > @@ -1807,16 +1816,22 @@ void memory_region_ref(MemoryRegion *mr)
> >        * Memory regions without an owner are supposed to never go away;
> >        * we do not ref/unref them because it slows down DMA sensibly.
> >        */
> 
> The collapsed comment says:
>  > The memory region is a child of its owner.  As long as the
>  > owner doesn't call unparent itself on the memory region,
>  > ref-ing the owner will also keep the memory region alive.
>  > Memory regions without an owner are supposed to never go away;
>  > we do not ref/unref them because it slows down DMA sensibly.
> 
> It contradicts with this patch.

The reason that we modify it is because we would like to address the memory
leak issue in the original codes. Please see below, we find the memory
region will be crashed once we free(unref) the simple resource, because the
region will be freed in object_finalize() after unparent and the ref count
is to 0. Then the VM will be crashed with this.

In virgl_cmd_resource_map_blob():
    memory_region_init_ram_device_ptr(res->region, OBJECT(g), NULL, size, data);
    OBJECT(res->region)->free = g_free;
    memory_region_add_subregion(&b->hostmem, mblob.offset, res->region);
    memory_region_set_enabled(res->region, true);

In virtio_gpu_virgl_resource_unmap():
    memory_region_set_enabled(res->region, false);
    memory_region_del_subregion(&b->hostmem, res->region);
    object_unparent(OBJECT(res->region));
    res->region = NULL;

I spent a bit more time to understand your point, do you want me to update
corresponding comments or you have some concern about this change?

Thanks,
Ray

> 
> > -    if (mr && mr->owner) {
> > +    if (mr->owner) {
> >           object_ref(mr->owner);
> >       }
> >   }
> >   
> >   void memory_region_unref(MemoryRegion *mr)
> >   {
> > -    if (mr && mr->owner) {
> > +    if (!mr) {
> > +        return;
> > +    }
> > +
> > +    if (mr->owner) {
> >           object_unref(mr->owner);
> >       }
> > +
> > +    object_unref(OBJECT(mr));
> >   }
> >   
> >   uint64_t memory_region_size(MemoryRegion *mr)


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 09:09:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 09:09:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595496.929077 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdS3g-0008Em-Os; Tue, 05 Sep 2023 09:09:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595496.929077; Tue, 05 Sep 2023 09:09:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdS3g-0008Ef-LU; Tue, 05 Sep 2023 09:09:16 +0000
Received: by outflank-mailman (input) for mailman id 595496;
 Tue, 05 Sep 2023 09:09:15 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Og0L=EV=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qdS3f-0008EZ-1k
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 09:09:15 +0000
Received: from NAM04-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam04on20629.outbound.protection.outlook.com
 [2a01:111:f400:7e8d::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e09eb752-4bcb-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 11:09:12 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by DS0PR12MB9037.namprd12.prod.outlook.com (2603:10b6:8:f1::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 09:09:08 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40%4]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 09:09:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e09eb752-4bcb-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Dw+7Z2rufoHOvxkm5h2MIUjhyEvxVXCijO6kmfYMFlR5jt1wvGPC86bctkMKDyASkM3Zylws3kztKMGOoyIK+AUz2PSoirZZlMzDi978b686r1c9Xz9hvcRoo5WFsJx/Ck/5W55qLnBAWBVkgcoDH13jDx+8CVyO3U3iq4rLIGoKMNN5WjyVjTlXgNTiCzaoLptxpkPo0a0HRkGZc+018ABiNSAjZXyUYALQ1v9S/XlLc4s0Y9BknGMin0jJD5ot094RHZMM6ljvejhGldOQHAoVH8peToq0uM38n8I3Dx1IdTEpI8YvjnGtsrISNbDA0xkXdTrSHDFPGtCKW1trCw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UZTlXoNoNczrtqNBYxQZRjvScQ5LFRngZk2YbfQs9n8=;
 b=fj4qJa1o9AJ/+6/TJmLn9BJX+qEog8Q6JlraYYy24zgJ+u4jEJR1B3XmCubWgCWp8fYHfw1twV5ZRsEQwPLt9V4YcDoWMkRM1KTq38C/cblXIRCf2ibfn0AJiWMxa9snovy3W7EcU5O9P+KsXXzwOsw4mg+6stAkhbPKTZ9aTHLZrtu8kRqTf4qM24aIHr3urZfnfVmHRqBtUmQu8oJg0AaYZazhZ4nf2GMjsajMOiKvyjlvIAmIve1UdwkKZCTwL0FXrk9T7M2TSIMN5KlIyk4aAiNdkdymgb2cSuhZ/xx3rc/g95YryObQB/t5FdWOcTk3CUUK+LY7TeXNmSUtVQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UZTlXoNoNczrtqNBYxQZRjvScQ5LFRngZk2YbfQs9n8=;
 b=xT75Y/YHP5wpNAVqUgCUZBVNQ/xaKE3hKWZCC9YEHocXg8FvxdFyvscRvN3E99r+BHVdc0Ob01hTYxOdFQ4nGs7q70Mx+/p2Dc+ZOEoAPgeJZcaVRebuGW2I2R45tcI9BjUn6BYJ0M4EfBurUrPcaOD8N7iw0JCW7I750y57OjY=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Tue, 5 Sep 2023 17:08:40 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
Subject: Re: [QEMU PATCH v4 09/13] virtio-gpu: Handle resource blob commands
Message-ID: <ZPbwGA3apjQTtCeu@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-10-ray.huang@amd.com>
 <ba478789-5db0-4011-bed1-7dd6901eccd6@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <ba478789-5db0-4011-bed1-7dd6901eccd6@daynix.com>
X-ClientProxiedBy: SI2PR06CA0016.apcprd06.prod.outlook.com
 (2603:1096:4:186::22) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|DS0PR12MB9037:EE_
X-MS-Office365-Filtering-Correlation-Id: 5043260b-d012-4cef-9fd3-08dbadefc2ee
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	NTfLOFdUbE5l7BKnZbsye5yHF8lGVuc/YGOPFJ6TNlM7k22mtPmPPbPJTGmFnDahCl+g0JCOKQNUD7LpeBkkS2UQqklEkvXm7Ulh7Fq3Aul7JapOiP/Q/8h051sFLHuFdWUMekfspxpUhKy+LzcD5hpFsTFaQ0hYo/+JRAROdLuGgJgmNcZ00jdcBj6aZpj+x3Lp9ya18n0U2D8Wa6qe1Kqrb/vsYhodlLD/jm27ngoXDoBBNR7ChQlG0D2apv1ltvR5dKcGxKjToYV/jcysme7Au//o+yJk5L9ptkQ0wouArJVNrzNtqRhtAKlp3fukBxU5sGOU2fyUapsBxDf/fo/S3RVy0xQ6crwTO2Mv9OB2DWmk4dxePXEOxw/UI8iPu3GiiJ7CGBcyemnCcO0EUL/KdpRyOcsWV5GeHVjQ0tzBz3S2JQBmqxtRH37B5w1skyb/+MTHkpmFI/s9M/XCFjL/PL8ZrIe3QodDNB7XxKLaLAFpASbQ8OYuz8RQHNq+AQmdFysPNuYxRJRU/KYI015AK9byWoGQswCmkfoa0FqgXuG9YQ1/rSdWGa025wBw
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(396003)(366004)(376002)(39860400002)(1800799009)(451199024)(186009)(5660300002)(8936002)(66476007)(7416002)(41300700001)(54906003)(66556008)(6916009)(66946007)(316002)(2906002)(6666004)(53546011)(6486002)(6506007)(6512007)(4326008)(2616005)(8676002)(478600001)(26005)(83380400001)(38100700002)(36756003)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?t4ScbwmUmMsg3wGMGZXm885PiOTavLXn6973NLXYLysBo0mAvJiceYp0uBS/?=
 =?us-ascii?Q?kBrwWK0SFh5VH80mivcccQgM8nlU8ravOt1Xnzhao3Ss6vh3Qd7shUyBzTs7?=
 =?us-ascii?Q?ZQfeAzJLnN3c9F3G7btPvN2/QNy7kUYx3samc3Y9m1P+3rBT0Rt2zJBF06j8?=
 =?us-ascii?Q?Lb9HetNrjcbfY7dEu36wLtuPD6Yg4H3pgzt6nTpQ5TvLZ7KmB0rnbWea+9x4?=
 =?us-ascii?Q?N41AoRUfn1P5lF4Yb0BBGCI+ZZtVT6DXUw2GI9yb1H5XWpWjEvz2h6bmVKYm?=
 =?us-ascii?Q?thYIM2cw0ZMn+C1Av6/kdShR/+iMtO9NM1oGeuIdcZhKDEUUOjQMX7HWOd4z?=
 =?us-ascii?Q?u0I6GskIZWPY+rJ3zwDzHlQOauW2bNbn+2WDkbyPOiqXiC+6Yd5RK8mzaooB?=
 =?us-ascii?Q?9lZi/VJDzFapKNRgsD+bFdYdZ102lZ6Boxp3cvHO3P/3URJArEf8Gesst/c1?=
 =?us-ascii?Q?wz0z6SXjNH47ham8GUBeIm4vaulQvB2SMkshSgj0XZuk69kiOwvmQc7ymYgB?=
 =?us-ascii?Q?pqPQ5IvK3rGcKMXighV13dmrg0SozryJjkQ/0YNSXNT8VAdGeB4vGkb4gtfS?=
 =?us-ascii?Q?rmPk7b02eADkphBvgQv76nSOUoNDYtW4aNX+DYhNiJff7ZDQVogSo1EJZiE3?=
 =?us-ascii?Q?C1UB3kKktyt9Y17xOqngnlZ6XN61iUoKtC/mFc3adaeUgHAqUXOKqFj7OTQA?=
 =?us-ascii?Q?5q2hpCffHr5cn2ZeHCK0lX70jOgwRGL/tg/9Pe7qxZFy4I0kW7Nshf1c+Fs7?=
 =?us-ascii?Q?bOMWthe1Pa1Drx4SENLGTLtNgYI2QdByhKRA3KNPdiDIPJrSCFfSyOD7JCAX?=
 =?us-ascii?Q?x4eah1WpADA7icUQa2NZgRAxYGL3YjYFzv0Sw4k3DnQHCLTxJx1BcwJm1rsc?=
 =?us-ascii?Q?8NuB7Ps6mtwNo1t/bfCTAx+pYGGPIu+/ZzzmljKdwWYd9WckPTHLjrjLIpI9?=
 =?us-ascii?Q?IZXDkBmETzDnjoMZN40TdmjDbVm16mhwGq4T/ULIuJAL/ZK2Hr8Q6NZicK+d?=
 =?us-ascii?Q?g9c9CUj/p63Skr4zsKtLYi1fzFdbeyg1xNcISuycUFkO5cZEJfGWkcND1dud?=
 =?us-ascii?Q?oBd0odLKhPY3/MqskVNxyxW7RWnx+Rj8YjvXrIh8SczHT0EmlZfaB471z9ZM?=
 =?us-ascii?Q?ODXq+iC8nqa55PDdmeCM2pM/n9XG/6UqQRdt1rcx6/ka4GR1y6/W24ltbUVR?=
 =?us-ascii?Q?/fJzWX3pFBHPbrrgza9TPVbNyh+uXrdkrNZNYzD9wY69kRX9/HFFRBaGzLwk?=
 =?us-ascii?Q?/hHHbwUd05XSD/8GoBYBcnl1VCPAnLOqbJcgHLlWzrPamwY3BBSLUyTNqV5F?=
 =?us-ascii?Q?bvlDGTqNAMcnBSsPASuVqLlJXK9BZ361btpYi/GXqAYVIBX6XoythnH3HURc?=
 =?us-ascii?Q?jIlEiJXMYj0H8zdh0Tu7XglKRIrOXVhoZqk486PyGLsnR69d9IsLB9/e0Hlw?=
 =?us-ascii?Q?T6gI/4EXNxEnePp0L/P0np2zZsj7xPPRISQphN6pWmqRN4bhn9VzJwX74Oj3?=
 =?us-ascii?Q?m7bAlZcGhXHlBmaatvm0319Osg4/7wVm7NlWnSBdQNvXALMBfnghUxKUKius?=
 =?us-ascii?Q?fFnuzs5cWgiuS6VfB/N0mmLBVzWEFkb/t4HN3D/J?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5043260b-d012-4cef-9fd3-08dbadefc2ee
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 09:09:08.4066
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 4ByG8U//hxwOawf/ILm4+TKFK+q9rwYDHt5hGloIp+syzC/mgSBj24D8Pt1fL+RztNrDBkH/FTKtXyiqHMvzqg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB9037

On Thu, Aug 31, 2023 at 06:24:32PM +0800, Akihiko Odaki wrote:
> On 2023/08/31 18:32, Huang Rui wrote:
> > From: Antonio Caggiano <antonio.caggiano@collabora.com>
> > 
> > Support BLOB resources creation, mapping and unmapping by calling the
> > new stable virglrenderer 0.10 interface. Only enabled when available and
> > via the blob config. E.g. -device virtio-vga-gl,blob=true
> > 
> > Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
> > Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> > 
> > v1->v2:
> >      - Remove unused #include "hw/virtio/virtio-iommu.h"
> > 
> >      - Add a local function, called virgl_resource_destroy(), that is used
> >        to release a vgpu resource on error paths and in resource_unref.
> > 
> >      - Remove virtio_gpu_virgl_resource_unmap from virtio_gpu_cleanup_mapping(),
> >        since this function won't be called on blob resources and also because
> >        blob resources are unmapped via virgl_cmd_resource_unmap_blob().
> > 
> >      - In virgl_cmd_resource_create_blob(), do proper cleanup in error paths
> >        and move QTAILQ_INSERT_HEAD(&g->reslist, res, next) after the resource
> >        has been fully initialized.
> > 
> >      - Memory region has a different life-cycle from virtio gpu resources
> >        i.e. cannot be released synchronously along with the vgpu resource.
> >        So, here the field "region" was changed to a pointer that will be
> >        released automatically once the memory region is unparented and all
> >        of its references have been released.
> >        Also, since the pointer can be used to indicate whether the blob
> >        is mapped, the explicit field "mapped" was removed.
> > 
> >      - In virgl_cmd_resource_map_blob(), add check on the value of
> >        res->region, to prevent beeing called twice on the same resource.
> > 
> >      - Remove direct references to parent_obj.
> > 
> >      - Separate declarations from code.
> > 
> >   hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
> >   hw/display/virtio-gpu.c        |   4 +-
> >   include/hw/virtio/virtio-gpu.h |   5 +
> >   meson.build                    |   4 +
> >   4 files changed, 225 insertions(+), 1 deletion(-)
> > 
> > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> > index 312953ec16..17b634d4ee 100644
> > --- a/hw/display/virtio-gpu-virgl.c
> > +++ b/hw/display/virtio-gpu-virgl.c
> > @@ -17,6 +17,7 @@
> >   #include "trace.h"
> >   #include "hw/virtio/virtio.h"
> >   #include "hw/virtio/virtio-gpu.h"
> > +#include "hw/virtio/virtio-gpu-bswap.h"
> >   
> >   #include "ui/egl-helpers.h"
> >   
> > @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
> >       virgl_renderer_resource_create(&args, NULL, 0);
> >   }
> >   
> > +static void virgl_resource_destroy(VirtIOGPU *g,
> > +                                   struct virtio_gpu_simple_resource *res)
> > +{
> > +    if (!res)
> > +        return;
> > +
> > +    QTAILQ_REMOVE(&g->reslist, res, next);
> > +
> > +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
> > +    g_free(res->addrs);
> > +
> > +    g_free(res);
> > +}
> > +
> >   static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >                                        struct virtio_gpu_ctrl_command *cmd)
> >   {
> > +    struct virtio_gpu_simple_resource *res;
> >       struct virtio_gpu_resource_unref unref;
> >       struct iovec *res_iovs = NULL;
> >       int num_iovs = 0;
> > @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >       VIRTIO_GPU_FILL_CMD(unref);
> >       trace_virtio_gpu_cmd_res_unref(unref.resource_id);
> >   
> > +    res = virtio_gpu_find_resource(g, unref.resource_id);
> > +
> >       virgl_renderer_resource_detach_iov(unref.resource_id,
> >                                          &res_iovs,
> >                                          &num_iovs);
> >       if (res_iovs != NULL && num_iovs != 0) {
> >           virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
> > +        if (res) {
> > +            res->iov = NULL;
> > +            res->iov_cnt = 0;
> > +        }
> >       }
> > +
> >       virgl_renderer_resource_unref(unref.resource_id);
> > +
> > +    virgl_resource_destroy(g, res);
> >   }
> >   
> >   static void virgl_cmd_context_create(VirtIOGPU *g,
> > @@ -426,6 +451,183 @@ static void virgl_cmd_get_capset(VirtIOGPU *g,
> >       g_free(resp);
> >   }
> >   
> > +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> > +
> > +static void virgl_cmd_resource_create_blob(VirtIOGPU *g,
> > +                                           struct virtio_gpu_ctrl_command *cmd)
> > +{
> > +    struct virtio_gpu_simple_resource *res;
> > +    struct virtio_gpu_resource_create_blob cblob;
> > +    struct virgl_renderer_resource_create_blob_args virgl_args = { 0 };
> > +    int ret;
> > +
> > +    VIRTIO_GPU_FILL_CMD(cblob);
> > +    virtio_gpu_create_blob_bswap(&cblob);
> > +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
> > +
> > +    if (cblob.resource_id == 0) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> > +                      __func__);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res = virtio_gpu_find_resource(g, cblob.resource_id);
> > +    if (res) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already exists %d\n",
> > +                      __func__, cblob.resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> > +    if (!res) {
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> > +        return;
> > +    }
> > +
> > +    res->resource_id = cblob.resource_id;
> > +    res->blob_size = cblob.size;
> > +
> > +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
> > +        ret = virtio_gpu_create_mapping_iov(g, cblob.nr_entries, sizeof(cblob),
> > +                                            cmd, &res->addrs, &res->iov,
> > +                                            &res->iov_cnt);
> > +        if (!ret) {
> > +            g_free(res);
> > +            cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> > +            return;
> > +        }
> > +    }
> > +
> > +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> > +
> > +    virgl_args.res_handle = cblob.resource_id;
> > +    virgl_args.ctx_id = cblob.hdr.ctx_id;
> > +    virgl_args.blob_mem = cblob.blob_mem;
> > +    virgl_args.blob_id = cblob.blob_id;
> > +    virgl_args.blob_flags = cblob.blob_flags;
> > +    virgl_args.size = cblob.size;
> > +    virgl_args.iovecs = res->iov;
> > +    virgl_args.num_iovs = res->iov_cnt;
> > +
> > +    ret = virgl_renderer_resource_create_blob(&virgl_args);
> > +    if (ret) {
> > +        virgl_resource_destroy(g, res);
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: virgl blob create error: %s\n",
> > +                      __func__, strerror(-ret));
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> > +    }
> > +}
> > +
> > +static void virgl_cmd_resource_map_blob(VirtIOGPU *g,
> > +                                        struct virtio_gpu_ctrl_command *cmd)
> > +{
> > +    struct virtio_gpu_simple_resource *res;
> > +    struct virtio_gpu_resource_map_blob mblob;
> > +    int ret;
> > +    void *data;
> > +    uint64_t size;
> > +    struct virtio_gpu_resp_map_info resp;
> > +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
> > +
> > +    VIRTIO_GPU_FILL_CMD(mblob);
> > +    virtio_gpu_map_blob_bswap(&mblob);
> > +
> > +    if (mblob.resource_id == 0) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> > +                      __func__);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res = virtio_gpu_find_resource(g, mblob.resource_id);
> > +    if (!res) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
> > +                      __func__, mblob.resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +    if (res->region) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already mapped %d\n",
> > +		      __func__, mblob.resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    ret = virgl_renderer_resource_map(res->resource_id, &data, &size);
> > +    if (ret) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource map error: %s\n",
> > +                      __func__, strerror(-ret));
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res->region = g_new0(MemoryRegion, 1);
> > +    if (!res->region) {
> > +        virgl_renderer_resource_unmap(res->resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> > +        return;
> > +    }
> > +    memory_region_init_ram_device_ptr(res->region, OBJECT(g), NULL, size, data);
> 
> I think memory_region_init_ram_ptr() should be used instead.

Would you mind to explain the reason?

Thanks,
Ray


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 09:10:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 09:10:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595502.929087 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdS51-0001Ym-2s; Tue, 05 Sep 2023 09:10:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595502.929087; Tue, 05 Sep 2023 09:10:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdS50-0001Yf-Vc; Tue, 05 Sep 2023 09:10:38 +0000
Received: by outflank-mailman (input) for mailman id 595502;
 Tue, 05 Sep 2023 09:10:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdS4z-0001W7-7U
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 09:10:37 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on2062d.outbound.protection.outlook.com
 [2a01:111:f400:fe12::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 12de11dd-4bcc-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 11:10:36 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB6914.eurprd04.prod.outlook.com (2603:10a6:208:189::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Tue, 5 Sep
 2023 09:10:34 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 09:10:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 12de11dd-4bcc-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kvT3XvZBMoNC/fQorQe3PMpMiPPbY7aABKff4Qk+u/YIgBQBsxZ/euA5jsg79+2vtUBkn6O0lVYs4Ofjt11v29CRhWsn9/RwGdNBz89czsF9RFqhqBrtNAopbUw+RQRAFypINAp0f48pDp6pXyXPczXZa4LNj8Ra2JBQ57K5VXfT1Dl4H6kUJRoXe6NuFn9kzny5D3r2pcKMQGmxqpaTjNlg7t38l1vTOg13DKYw9g/FjZok4nyMGBeUw7TGisyzjgr+5ABYpnsMLv+Kjo5cvA7S1Pn2ZDcVguRqbXXuibzLAQ5o3tJzyy4DAfw+DuK/NhzJhFbbWoykYHJfTm7rhw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DE7MpGw7Og0CWnJ0nbJklNmp29KoDOwItn08FJ66lgQ=;
 b=U2PIii+a6XBoB/KxE48rTOnAfN8KkhLTwIuQWBZGO0NoPaQHpbqzArvnCj4di6IO82uJHSND6Rdb5T9MVadDUMoYQXzhsuvUs6Z/wZWdMaDcTt9s+WlpfUR7ZR4IRCesLt6y59D7P3RTedX4EKkq2ZyyIfCzYhyXC/bdEnnOzcpRtGp2P6F/AEZuhhS5fQJul44lOjt/XoaMk/WXK0EqYABQmaGjLxAv57y3tT8wm4k/Xz9LrNzBTlRztSJF6K4d/eFFIpbjxc25/COty5r4gp2lJGanEFkPJvNs9Gp1/ZXmiKCFERe2jYrVcyXCPctb5zGEhSwPHmQa4Sq3L/IsWQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DE7MpGw7Og0CWnJ0nbJklNmp29KoDOwItn08FJ66lgQ=;
 b=eDzeXpK5Z/CtspS8fP9LdxrmSoC2/dfxNtjnHungaJFEyZb5zSOMzl3CIr+SmhEz47wzmRVum4C0F4kzZoLPnOnklBpEdEVHZtWU4hmbnH2qeQjY1UgJkvGlQTkJR9/uzjDYGCtfmR+OpxWgq69rklqHrbr8xa+XRUP9yk/umGS2eY7fGo26v9BbyHPjeo7BYa9JXr5cB17D/pPjPchRjNrCZ3TrcUC02NwNS7xJjkiss1mYAFKGUuK00UjfqMxk5gsPddEMHNhJChjgGDgU97OKavAhBEkqDJXKhwNYrE7qktn3Gl5yctmks4YrGiecNbbLqgKQXyjtz9QZFDWtEA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <882e9427-25b4-244f-ad2e-9efa4e3be076@suse.com>
Date: Tue, 5 Sep 2023 11:10:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Content-Language: en-US
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] x86/PV: consolidate LDT checks
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0255.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:af::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM0PR04MB6914:EE_
X-MS-Office365-Filtering-Correlation-Id: ca5406e3-7caa-4108-58d6-08dbadeff607
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hwrRWzoshFo3Z7PLRXaYsV+Z4c2lEte/s7pa96Anacqdg9GOlBwJO/++z83J3MwD/Iha2YXvJsPHYIfz6IEaJnpi6uFXqf1vAeIkwS/fCDX4G2pDYeFsEsWTrVLxYbGd5fCn13dJ/Y95k9iEQxCsH+Jf2z+GLeUM6Sfas3QTGTLik8aXdql1Ypxa5lUCrPZc1rGJ0uje/OviXbOHN3OyAbnSvmIQ6d8wZ8nbquddeqnI4O+wIwK/QHGKJ92ZyKjOCduLDa+xUygvCJNBJTIl8qOhDTv8HJ6yXjOzHvcLKA3orDXSyGcE8EMGUyiwLCaJtwGfh3Oj1rzJrbElaHVoJjQupRUF3RPNPlXlOxBcLfG+5IdMUqr97nSFxys0wp3Lh9+BKWt6HZJjEQj6dbxr2mKiviqbMxb86UkTN4qfF5gb9zjgaqVAw9NgZ0WLvl77IO9Nmu26QpS2hQ2VUiPlrr/87Cgc4B/FnYKnSPsH283FLA18TLWLoZ4RZzVzsu0K6zi5+xMTTrDHNmQ64plAy+GOtvvFfkAQMrqHaAmePSbfyCpuIrZgQVr95MrMZnhUti/SYInOCgLt2RoPpV1Sr954Yl2rk+oqorcPufX/nuNhuYaaKfZKr61xYHaUrI9/MW+1U26hb7A26tNZHkAh4Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39860400002)(346002)(376002)(136003)(396003)(451199024)(186009)(1800799009)(31686004)(38100700002)(36756003)(5660300002)(86362001)(31696002)(83380400001)(41300700001)(26005)(66476007)(66556008)(54906003)(66946007)(2616005)(478600001)(6666004)(2906002)(316002)(6486002)(6916009)(8936002)(4326008)(6506007)(6512007)(8676002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?S3FkODVVWFdrbUthTEozaFF6TWUxSDMxS216bUkrZEJ1QjJDSDdmanhsVEVH?=
 =?utf-8?B?ZU1ralBFSitDWlZ6cTkrVHlEMUQ5bHRMOExVVnZBQ3ZjWEZsSHNVdU43UFor?=
 =?utf-8?B?bEhWOEpmNkg3elJCUUlTdEhWa0hWblVrenVEOUJFWURLUFlMVFp0UjAzaEVp?=
 =?utf-8?B?ZGE0M1Bzc0pVcDZtR2Y4SEI4bkptVTZ0dVIvRlo0SGhnaE1nTndmdm1pbVJM?=
 =?utf-8?B?bStNUmMvL1dmL282RlNWQWhEaEFFNUo4NGl0dFErVVhlbVdkTEdkWE5RS0Uy?=
 =?utf-8?B?VFlDTWJ0Zm02cTBudmNUOFQzKzh2QVdnNWVZQzl4Vjh4WnZjb1Q4dGlUdExl?=
 =?utf-8?B?NVhVcTh1ZDRrMXZ1SjBuaU9lb0hWVUhYdGV2VGEzVlk1WDRGRnVSRWNGU0lN?=
 =?utf-8?B?c2Q0cEl6RUtQOURtYS95ZEJxNGdkVFM0WEZ6RURaU1ZIOWVGTFdzNmhicU1Q?=
 =?utf-8?B?MVRGWW9sTjY3TXZWSE9SakdveWU2SDBJZkdHclVnci9ITllwTWN5UjNjcCtE?=
 =?utf-8?B?TENGeUdSSGtsWFRaWUhjSHczQzFDUkpHSVBjVmRNRE9TbU5VVkxYd1VLM0s5?=
 =?utf-8?B?d1A0TXVBd3BOM2YveFlJZ3hrTEs1NlRKWER4U09IM3B6ZWlhY0tnQW5iWnYz?=
 =?utf-8?B?WVRvSnorOHFVbEM0REFtK2hqU296ZGVkSjl4RlFkUUIvakNyRHB6SFhGOWI5?=
 =?utf-8?B?QVV4U1J6OElPTnJHb2hPbVRRTEdycEM2VjM0eVRlVzJka3kyN3JFVTI2UkM3?=
 =?utf-8?B?dEpGSkpmR3J3MU9QUWxrSU5TaWpkZVFEa3lFTXhseUgvN2FRcEtXM3RlZXVV?=
 =?utf-8?B?L2Z0YVFINGdoWVNTWEllM3VrdnNTc3AvUERXL2tFaGhqTldteG40QkVFeEJI?=
 =?utf-8?B?MjZHWlBmdVMxMDBqdldLTmJIZ01nUW1GdTE3RHdLcUJtbEl3M29WUS95a3Ni?=
 =?utf-8?B?aVcrbkJIUmhhWERUT3F5UVRXMXh4Rk5ZaG5Zc0VRTHRPdGxQVDFySzJDYzBO?=
 =?utf-8?B?dkszOU5oSmMzc2lyMVdTeTA0U1h3MXk0MkhXOU5SWXJ1YkpSQkVNRGlXRFR2?=
 =?utf-8?B?alBoQm1Hd2hyM3ZBcmhlcktaRTNLYUFQVFlIS1NUZk9tZlp6a1ZsVU1UZndr?=
 =?utf-8?B?b3BlTW9HYm5RaHNLUjJKK1M4RTRKVi9hVFZqem42ZkJsLytrby96QlRDcVdw?=
 =?utf-8?B?am1IWGJYbUY3d0NWMHFXNVZuYy9hS0REamlkZzJBek4vdXBWL0lEMlpJOStR?=
 =?utf-8?B?bk5QOTRQamg0RlFmZys4OGx4ZCtyaG9uRDY2YnhHTmQ5eHdqcnFGd28yS2tQ?=
 =?utf-8?B?Y0JPUmx2MWRDb05DQXAvTXNCQnF4Qjlpd3BTL3ZGSC9yWHNoT0JjNU9zRmY0?=
 =?utf-8?B?OWx5TzVEMzBzczV6VTFuc0ZWcXQ0eUdzTmVubU5KOUFlNUhCbW0yTGk3c2hJ?=
 =?utf-8?B?cFZLZmdPYUh0UEFYNEp3S1VGZnpIVERxVXp2cS83ZGdZRXdzU2lmZEVNdWxN?=
 =?utf-8?B?YlZra0pCQmVjQ2xEa1l2VDdvQUx4aXBEWnhaVlhpSnpDNW55VEx6ODN6ZDhS?=
 =?utf-8?B?dXRYa3hPdnVUcHZvb25nNlI5MjJ4RUJOcldrVkdubUUvMTlEWTdHTmpBVmFD?=
 =?utf-8?B?dGhkbjJJc3Z4TGxNckxIMkNvMm8zZWVNZVdNaCtyN0kwVkpyKzUrcHdEQjly?=
 =?utf-8?B?WDVXbnk5cFYwb29kNklUajYrZ3JsYW5SOVhSaW9wRHJkSlZPSy90U2NNbFhv?=
 =?utf-8?B?QUhzQzZZaHp0aWVGampMNWF4b2Q3YmR0QStVSUtYdkMzc1lsYkxXZmNNd2dv?=
 =?utf-8?B?SG1uLzJyZmpHVVFtZTdUYmxOMlU0MGd3S1pmODBYZWQyWDlSMHRjSlVlQWV6?=
 =?utf-8?B?MFpWNEZreVBsdEFxeVZ5Q1hDaFA0ZHU4VXBjcG9RdmJFeFh3WGxML2lCRmNZ?=
 =?utf-8?B?RE5CWTVQbEsxQk9PNkk3M3kzbm5qZnFoREtudTRmOG94NHp5alFMOXVrVXFx?=
 =?utf-8?B?TjRFWWNKMEVUSTNoTGs4N3hISU5WYmJlSmpJRWZ5WHFkUzAzUEFOckhQN3Ev?=
 =?utf-8?B?amVKOFdOOGV1MHIxTkxRL2JsUDNDSlg0VE1SOWhIeVJNQytoQXVyRkhqYm91?=
 =?utf-8?Q?6vMR12NVjGycecvg3OPji7bHi?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ca5406e3-7caa-4108-58d6-08dbadeff607
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 09:10:34.1033
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: SoyjJjUJbHUML67ZF1AK07z5Sbhk5t+6vn0mS7o4jSYfR+7sa/xnSwcu2caM09gGr2arudBcRDNTUahp8F8Kvg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6914

Consolidate all hypercall time checking into a single helper function,
checking only static properties. The dynamic properties are already
taken care of by the __addr_ok() check in guest_get_eff_kern_l1e(),
used by pv_map_ldt_shadow_page(), in a formally more "precise" manner
(accounting for the offset into the table).

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -1081,7 +1081,6 @@ int arch_set_info_guest(
             if ( !is_canonical_address(c.nat->user_regs.rip) ||
                  !is_canonical_address(c.nat->user_regs.rsp) ||
                  !is_canonical_address(c.nat->kernel_sp) ||
-                 (c.nat->ldt_ents && !is_canonical_address(c.nat->ldt_base)) ||
                  !is_canonical_address(c.nat->fs_base) ||
                  !is_canonical_address(c.nat->gs_base_kernel) ||
                  !is_canonical_address(c.nat->gs_base_user) ||
@@ -1100,9 +1099,6 @@ int arch_set_info_guest(
                     return -EINVAL;
                 fixup_guest_code_selector(d, c.nat->trap_ctxt[i].cs);
             }
-
-            if ( !__addr_ok(c.nat->ldt_base) )
-                return -EINVAL;
         }
 #ifdef CONFIG_COMPAT
         else
@@ -1119,8 +1115,7 @@ int arch_set_info_guest(
 #endif
 
         /* LDT safety checks. */
-        if ( ((c(ldt_base) & (PAGE_SIZE - 1)) != 0) ||
-             (c(ldt_ents) > 8192) )
+        if ( !pv_is_valid_ldt(c(ldt_base), c(ldt_ents)) )
             return -EINVAL;
 
         v->arch.pv.vgc_flags = flags;
--- a/xen/arch/x86/include/asm/pv/mm.h
+++ b/xen/arch/x86/include/asm/pv/mm.h
@@ -46,4 +46,14 @@ static inline bool pv_destroy_ldt(struct
 
 #endif
 
+static inline bool pv_is_valid_ldt(unsigned long base, unsigned int ents)
+{
+    if ( !ents )
+        return true;
+
+    return !(base & (PAGE_SIZE - 1)) && ents <= 8192 &&
+           is_canonical_address(base) &&
+           is_canonical_address(base + ents * 8 - 1);
+}
+
 #endif /* __X86_PV_MM_H__ */
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -3800,8 +3800,7 @@ long do_mmuext_op(
                 rc = -EPERM;
             else if ( paging_mode_external(currd) )
                 rc = -EINVAL;
-            else if ( (ents > 8192) ||
-                      (ents && ((ptr & (PAGE_SIZE - 1)) || !__addr_ok(ptr))) )
+            else if ( !pv_is_valid_ldt(ptr, ents) )
             {
                 gdprintk(XENLOG_WARNING,
                          "Bad args to SET_LDT: ptr=%lx, ents=%x\n", ptr, ents);


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 09:17:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 09:17:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595512.929096 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdSBs-0002Y6-Sn; Tue, 05 Sep 2023 09:17:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595512.929096; Tue, 05 Sep 2023 09:17:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdSBs-0002Xz-QJ; Tue, 05 Sep 2023 09:17:44 +0000
Received: by outflank-mailman (input) for mailman id 595512;
 Tue, 05 Sep 2023 09:17:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=C5vf=EV=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qdSBr-0002Xt-IB
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 09:17:43 +0000
Received: from mail-pl1-x631.google.com (mail-pl1-x631.google.com
 [2607:f8b0:4864:20::631])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0f4b9605-4bcd-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 11:17:40 +0200 (CEST)
Received: by mail-pl1-x631.google.com with SMTP id
 d9443c01a7336-1bc83a96067so11493615ad.0
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 02:17:40 -0700 (PDT)
Received: from [157.82.204.253] ([157.82.204.253])
 by smtp.gmail.com with ESMTPSA id
 d10-20020a170902654a00b001bde877a7casm8982684pln.264.2023.09.05.02.17.33
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 05 Sep 2023 02:17:38 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0f4b9605-4bcd-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1693905458; x=1694510258; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=XO2+yXar5HP/Nvv10RVpzWvUXgBqEg4olN/cjiB+X1I=;
        b=nhV5V0wWiBmhhrnV+GYA/8L8LyFRO80B8xgkICKe1UcMGJFC5Xh2TnM2xYLllPQIap
         mAqwHtGHEfDVCPAN9ybIOA7Zrsp8Ugbz/FFlBC9fCa690m6szFtzr+KsmZd+sTqrVooC
         RjwL8r0wFrb7jY7IW62FI6/8E5Jpf5FAPrSZ9DzRbt7jPeAIcnYwhVK/zSI7xB0To8I3
         4SBv+mb2RipWRyBAzCpsPDI+1lsNN/sUpL+YBnCMcjMwKxahwQKnxpKFxAKQw/uHgTME
         3R3Ieq1Tp/7+1F7pxfxNTZRDU4io2E+0NKSUBNwmNoDp+h4Ju0FHSbB/DdIY8dZqwTOd
         DiaA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693905458; x=1694510258;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=XO2+yXar5HP/Nvv10RVpzWvUXgBqEg4olN/cjiB+X1I=;
        b=IykSips/D8IM8NR0TQNCgPOBjQ/uC4Xp9oy7GDLtvGthS3kWPhnAWlxU6YBv3PvGNe
         ZLVMRCEBtWY45uGIFqLbTOuEwwa8EVfXEIkLBJDU3tjeRrvwAWy5qDH2Nhj9glAl3Lea
         2TiMZsd/t550nBRHHgwa383CIPgsGUbgv1m3S2JdPUueorUmb/EL9J23AtfNBh4lDQSb
         AfBYUNgQ6pmXqb5AqVGXxv7KnjS8qBVa58lNV02/htzAX2vmvOQpTrFLVizGYx6nP6Yi
         7MhKRgdj9fCoHWhkPF/TPujHeOE+Kgs9nxtLgY+3hqIR19haMBxeAo3PNfwi5+NWjFRK
         n4+A==
X-Gm-Message-State: AOJu0YydP5d8KYA6y8Kyw+lDrkL6pJCXtOLPAPp5kxAQvis7B0a1Pxzq
	QplfR9JsDKup81Qz4kC8xbtrDQ==
X-Google-Smtp-Source: AGHT+IHmdsTj3NWf+kJXTqNa0KpZXSsejtq0BJ85YRdCU9SkqxFyfpvDRx0WQ9z097JuwTP/N0j0PA==
X-Received: by 2002:a17:903:228a:b0:1bd:a22a:d40a with SMTP id b10-20020a170903228a00b001bda22ad40amr12216472plh.2.1693905458526;
        Tue, 05 Sep 2023 02:17:38 -0700 (PDT)
Message-ID: <2ec5929b-eb79-4848-8ab4-517c89f6b476@daynix.com>
Date: Tue, 5 Sep 2023 18:17:32 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v4 07/13] softmmu/memory: enable automatic
 deallocation of memory regions
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin"
 <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 "ernunes@redhat.com" <ernunes@redhat.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-8-ray.huang@amd.com>
 <b988f9d4-69d7-4cc4-b13e-3e697acf9fe9@daynix.com> <ZPbvyDsikvvzierv@amd.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <ZPbvyDsikvvzierv@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/05 18:07, Huang Rui wrote:
> On Thu, Aug 31, 2023 at 06:10:08PM +0800, Akihiko Odaki wrote:
>> On 2023/08/31 18:32, Huang Rui wrote:
>>> From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>
>>> When the memory region has a different life-cycle from that of her parent,
>>> could be automatically released, once has been unparent and once all of her
>>> references have gone away, via the object's free callback.
>>>
>>> However, currently, references to the memory region are held by its owner
>>> without first incrementing the memory region object's reference count.
>>> As a result, the automatic deallocation of the object, not taking into
>>> account those references, results in use-after-free memory corruption.
>>>
>>> This patch increases the reference count of the memory region object on
>>> each memory_region_ref() and decreases it on each memory_region_unref().
>>>
>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>> ---
>>>
>>> New patch
>>>
>>>    softmmu/memory.c | 19 +++++++++++++++++--
>>>    1 file changed, 17 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/softmmu/memory.c b/softmmu/memory.c
>>> index 7d9494ce70..0fdd5eebf9 100644
>>> --- a/softmmu/memory.c
>>> +++ b/softmmu/memory.c
>>> @@ -1797,6 +1797,15 @@ Object *memory_region_owner(MemoryRegion *mr)
>>>    
>>>    void memory_region_ref(MemoryRegion *mr)
>>>    {
>>> +    if (!mr) {
>>> +        return;
>>> +    }
>>> +
>>> +    /* Obtain a reference to prevent the memory region object
>>> +     * from being released under our feet.
>>> +     */
>>> +    object_ref(OBJECT(mr));
>>> +
>>>        /* MMIO callbacks most likely will access data that belongs
>>>         * to the owner, hence the need to ref/unref the owner whenever
>>>         * the memory region is in use.
>>> @@ -1807,16 +1816,22 @@ void memory_region_ref(MemoryRegion *mr)
>>>         * Memory regions without an owner are supposed to never go away;
>>>         * we do not ref/unref them because it slows down DMA sensibly.
>>>         */
>>
>> The collapsed comment says:
>>   > The memory region is a child of its owner.  As long as the
>>   > owner doesn't call unparent itself on the memory region,
>>   > ref-ing the owner will also keep the memory region alive.
>>   > Memory regions without an owner are supposed to never go away;
>>   > we do not ref/unref them because it slows down DMA sensibly.
>>
>> It contradicts with this patch.
> 
> The reason that we modify it is because we would like to address the memory
> leak issue in the original codes. Please see below, we find the memory
> region will be crashed once we free(unref) the simple resource, because the
> region will be freed in object_finalize() after unparent and the ref count
> is to 0. Then the VM will be crashed with this.
> 
> In virgl_cmd_resource_map_blob():
>      memory_region_init_ram_device_ptr(res->region, OBJECT(g), NULL, size, data);
>      OBJECT(res->region)->free = g_free;
>      memory_region_add_subregion(&b->hostmem, mblob.offset, res->region);
>      memory_region_set_enabled(res->region, true);
> 
> In virtio_gpu_virgl_resource_unmap():
>      memory_region_set_enabled(res->region, false);
>      memory_region_del_subregion(&b->hostmem, res->region);
>      object_unparent(OBJECT(res->region));
>      res->region = NULL;
> 
> I spent a bit more time to understand your point, do you want me to update
> corresponding comments or you have some concern about this change?

As the comment says ref-ing memory regions without an owner will slow 
down DMA, you should avoid that. More concretely, you should check 
mr->owner before doing object_ref(OBJECT(mr)).

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 09:20:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 09:20:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595518.929107 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdSEv-00049R-A3; Tue, 05 Sep 2023 09:20:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595518.929107; Tue, 05 Sep 2023 09:20:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdSEv-00049K-7B; Tue, 05 Sep 2023 09:20:53 +0000
Received: by outflank-mailman (input) for mailman id 595518;
 Tue, 05 Sep 2023 09:20:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=C5vf=EV=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qdSEu-000499-8G
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 09:20:52 +0000
Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com
 [2607:f8b0:4864:20::634])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 80eddaa9-4bcd-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 11:20:50 +0200 (CEST)
Received: by mail-pl1-x634.google.com with SMTP id
 d9443c01a7336-1c06f6f98c0so17123935ad.3
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 02:20:50 -0700 (PDT)
Received: from [157.82.204.253] ([157.82.204.253])
 by smtp.gmail.com with ESMTPSA id
 ju20-20020a170903429400b001b672af624esm8931499plb.164.2023.09.05.02.20.44
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 05 Sep 2023 02:20:48 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 80eddaa9-4bcd-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1693905649; x=1694510449; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=noZcTROyvKGLT7OS+tdoVzmRn0DMVveNoAJHiI7S8hA=;
        b=Eozk6DT6vgH2eIjyaLDiXiXWhqp2LGOQ2YZKE7wGqt2u6hpi5P9Kj3prNpNLiXO3AG
         DZGiLXO3q7RaLY5uxWQFDjM+/AkzENkBGrRkekA8YSeozUThkdTAzU/DmriNRZD48+PE
         6zhuijzPNnHWMr0SOLS0ryl2+HlLtfv58OD+t71YB2wf/q+bjhhrLmSuSSQA8W1flWmi
         xXlWWbx4gQsonpQo46VZcBYkN4keSoJq7K+99PN3pPqZ9Z2aVYiy7kMGznCXn0/K3iYQ
         ANNoqcXKNlL3jj5ToY48gHk7wGnNuVtr+YuDbjuJKZ6CeslFbu35t27DxG67AVMvneYF
         CyLQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693905649; x=1694510449;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=noZcTROyvKGLT7OS+tdoVzmRn0DMVveNoAJHiI7S8hA=;
        b=h5H459/bwnJI2V9FEWPgoZ69SouO93BLrivXsc3UusB3BjAr+PKyvs5+6dv1Lzucfx
         9ksoxnVHywjDXbleTLrKQXatBCneHJAhB7iAU3icHvBRtnhmHEkdoRxXmXcNIbxcOmWr
         rH1nZHCZIsGRfnspdQUNf7I86Sl65tZfnjNPhoBp2BLwDvdzw0qAOCk/43Fem0WF8JDp
         RzjMJPB/vaSZHdgcS+9j6oibJWNJD+Bwh8i8diuOLuPOeuUuKivTOb8Idkf495SEqBLt
         Z8bKUXXf8seceBIhtteNtvNYLGQhOe0QhotdaTm8Zv5lr2EPpzDf5nlz44jkm/6zJqbY
         yoig==
X-Gm-Message-State: AOJu0Yxm1HKmUauug/Ctdkckzw7TA/+jgTH21VBQKoAI4o242J+P4AAJ
	b496c15UtbnNyLFtevQuv6wybg==
X-Google-Smtp-Source: AGHT+IFen8AN/Q9ef6hgMdPtr3VaUTRz2tC5gD2pyhrsBICbeDQj1dG7i6bKZTSjkHSDp79ReDyy8g==
X-Received: by 2002:a17:902:e84e:b0:1c3:4565:225 with SMTP id t14-20020a170902e84e00b001c345650225mr3760241plg.10.1693905649240;
        Tue, 05 Sep 2023 02:20:49 -0700 (PDT)
Message-ID: <053ecca7-f76d-4289-9189-0c3600d4804b@daynix.com>
Date: Tue, 5 Sep 2023 18:20:43 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v4 09/13] virtio-gpu: Handle resource blob commands
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin"
 <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 "ernunes@redhat.com" <ernunes@redhat.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-10-ray.huang@amd.com>
 <ba478789-5db0-4011-bed1-7dd6901eccd6@daynix.com> <ZPbwGA3apjQTtCeu@amd.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <ZPbwGA3apjQTtCeu@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/05 18:08, Huang Rui wrote:
> On Thu, Aug 31, 2023 at 06:24:32PM +0800, Akihiko Odaki wrote:
>> On 2023/08/31 18:32, Huang Rui wrote:
>>> From: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>
>>> Support BLOB resources creation, mapping and unmapping by calling the
>>> new stable virglrenderer 0.10 interface. Only enabled when available and
>>> via the blob config. E.g. -device virtio-vga-gl,blob=true
>>>
>>> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
>>> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>> ---
>>>
>>> v1->v2:
>>>       - Remove unused #include "hw/virtio/virtio-iommu.h"
>>>
>>>       - Add a local function, called virgl_resource_destroy(), that is used
>>>         to release a vgpu resource on error paths and in resource_unref.
>>>
>>>       - Remove virtio_gpu_virgl_resource_unmap from virtio_gpu_cleanup_mapping(),
>>>         since this function won't be called on blob resources and also because
>>>         blob resources are unmapped via virgl_cmd_resource_unmap_blob().
>>>
>>>       - In virgl_cmd_resource_create_blob(), do proper cleanup in error paths
>>>         and move QTAILQ_INSERT_HEAD(&g->reslist, res, next) after the resource
>>>         has been fully initialized.
>>>
>>>       - Memory region has a different life-cycle from virtio gpu resources
>>>         i.e. cannot be released synchronously along with the vgpu resource.
>>>         So, here the field "region" was changed to a pointer that will be
>>>         released automatically once the memory region is unparented and all
>>>         of its references have been released.
>>>         Also, since the pointer can be used to indicate whether the blob
>>>         is mapped, the explicit field "mapped" was removed.
>>>
>>>       - In virgl_cmd_resource_map_blob(), add check on the value of
>>>         res->region, to prevent beeing called twice on the same resource.
>>>
>>>       - Remove direct references to parent_obj.
>>>
>>>       - Separate declarations from code.
>>>
>>>    hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
>>>    hw/display/virtio-gpu.c        |   4 +-
>>>    include/hw/virtio/virtio-gpu.h |   5 +
>>>    meson.build                    |   4 +
>>>    4 files changed, 225 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
>>> index 312953ec16..17b634d4ee 100644
>>> --- a/hw/display/virtio-gpu-virgl.c
>>> +++ b/hw/display/virtio-gpu-virgl.c
>>> @@ -17,6 +17,7 @@
>>>    #include "trace.h"
>>>    #include "hw/virtio/virtio.h"
>>>    #include "hw/virtio/virtio-gpu.h"
>>> +#include "hw/virtio/virtio-gpu-bswap.h"
>>>    
>>>    #include "ui/egl-helpers.h"
>>>    
>>> @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
>>>        virgl_renderer_resource_create(&args, NULL, 0);
>>>    }
>>>    
>>> +static void virgl_resource_destroy(VirtIOGPU *g,
>>> +                                   struct virtio_gpu_simple_resource *res)
>>> +{
>>> +    if (!res)
>>> +        return;
>>> +
>>> +    QTAILQ_REMOVE(&g->reslist, res, next);
>>> +
>>> +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
>>> +    g_free(res->addrs);
>>> +
>>> +    g_free(res);
>>> +}
>>> +
>>>    static void virgl_cmd_resource_unref(VirtIOGPU *g,
>>>                                         struct virtio_gpu_ctrl_command *cmd)
>>>    {
>>> +    struct virtio_gpu_simple_resource *res;
>>>        struct virtio_gpu_resource_unref unref;
>>>        struct iovec *res_iovs = NULL;
>>>        int num_iovs = 0;
>>> @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
>>>        VIRTIO_GPU_FILL_CMD(unref);
>>>        trace_virtio_gpu_cmd_res_unref(unref.resource_id);
>>>    
>>> +    res = virtio_gpu_find_resource(g, unref.resource_id);
>>> +
>>>        virgl_renderer_resource_detach_iov(unref.resource_id,
>>>                                           &res_iovs,
>>>                                           &num_iovs);
>>>        if (res_iovs != NULL && num_iovs != 0) {
>>>            virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
>>> +        if (res) {
>>> +            res->iov = NULL;
>>> +            res->iov_cnt = 0;
>>> +        }
>>>        }
>>> +
>>>        virgl_renderer_resource_unref(unref.resource_id);
>>> +
>>> +    virgl_resource_destroy(g, res);
>>>    }
>>>    
>>>    static void virgl_cmd_context_create(VirtIOGPU *g,
>>> @@ -426,6 +451,183 @@ static void virgl_cmd_get_capset(VirtIOGPU *g,
>>>        g_free(resp);
>>>    }
>>>    
>>> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
>>> +
>>> +static void virgl_cmd_resource_create_blob(VirtIOGPU *g,
>>> +                                           struct virtio_gpu_ctrl_command *cmd)
>>> +{
>>> +    struct virtio_gpu_simple_resource *res;
>>> +    struct virtio_gpu_resource_create_blob cblob;
>>> +    struct virgl_renderer_resource_create_blob_args virgl_args = { 0 };
>>> +    int ret;
>>> +
>>> +    VIRTIO_GPU_FILL_CMD(cblob);
>>> +    virtio_gpu_create_blob_bswap(&cblob);
>>> +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
>>> +
>>> +    if (cblob.resource_id == 0) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
>>> +                      __func__);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +
>>> +    res = virtio_gpu_find_resource(g, cblob.resource_id);
>>> +    if (res) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already exists %d\n",
>>> +                      __func__, cblob.resource_id);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +
>>> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
>>> +    if (!res) {
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
>>> +        return;
>>> +    }
>>> +
>>> +    res->resource_id = cblob.resource_id;
>>> +    res->blob_size = cblob.size;
>>> +
>>> +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
>>> +        ret = virtio_gpu_create_mapping_iov(g, cblob.nr_entries, sizeof(cblob),
>>> +                                            cmd, &res->addrs, &res->iov,
>>> +                                            &res->iov_cnt);
>>> +        if (!ret) {
>>> +            g_free(res);
>>> +            cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
>>> +            return;
>>> +        }
>>> +    }
>>> +
>>> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
>>> +
>>> +    virgl_args.res_handle = cblob.resource_id;
>>> +    virgl_args.ctx_id = cblob.hdr.ctx_id;
>>> +    virgl_args.blob_mem = cblob.blob_mem;
>>> +    virgl_args.blob_id = cblob.blob_id;
>>> +    virgl_args.blob_flags = cblob.blob_flags;
>>> +    virgl_args.size = cblob.size;
>>> +    virgl_args.iovecs = res->iov;
>>> +    virgl_args.num_iovs = res->iov_cnt;
>>> +
>>> +    ret = virgl_renderer_resource_create_blob(&virgl_args);
>>> +    if (ret) {
>>> +        virgl_resource_destroy(g, res);
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: virgl blob create error: %s\n",
>>> +                      __func__, strerror(-ret));
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
>>> +    }
>>> +}
>>> +
>>> +static void virgl_cmd_resource_map_blob(VirtIOGPU *g,
>>> +                                        struct virtio_gpu_ctrl_command *cmd)
>>> +{
>>> +    struct virtio_gpu_simple_resource *res;
>>> +    struct virtio_gpu_resource_map_blob mblob;
>>> +    int ret;
>>> +    void *data;
>>> +    uint64_t size;
>>> +    struct virtio_gpu_resp_map_info resp;
>>> +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
>>> +
>>> +    VIRTIO_GPU_FILL_CMD(mblob);
>>> +    virtio_gpu_map_blob_bswap(&mblob);
>>> +
>>> +    if (mblob.resource_id == 0) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
>>> +                      __func__);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +
>>> +    res = virtio_gpu_find_resource(g, mblob.resource_id);
>>> +    if (!res) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
>>> +                      __func__, mblob.resource_id);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +    if (res->region) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already mapped %d\n",
>>> +		      __func__, mblob.resource_id);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +
>>> +    ret = virgl_renderer_resource_map(res->resource_id, &data, &size);
>>> +    if (ret) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource map error: %s\n",
>>> +                      __func__, strerror(-ret));
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +
>>> +    res->region = g_new0(MemoryRegion, 1);
>>> +    if (!res->region) {
>>> +        virgl_renderer_resource_unmap(res->resource_id);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
>>> +        return;
>>> +    }
>>> +    memory_region_init_ram_device_ptr(res->region, OBJECT(g), NULL, size, data);
>>
>> I think memory_region_init_ram_ptr() should be used instead.
> 
> Would you mind to explain the reason?

The documentation comment of memory_region_init_ram_device_ptr() says:
 > A RAM device represents a mapping to a physical device, such as to a
 > PCI MMIO BAR of an vfio-pci assigned device.  The memory region may be
 > mapped into the VM address space and access to the region will modify
 > memory directly.  However, the memory region should not be included in
 > a memory dump (device may not be enabled/mapped at the time of the
 > dump), and operations incompatible with manipulating MMIO should be
 > avoided.  Replaces skip_dump flag.

In my understanding it's not MMIO so memory_region_init_ram_ptr() should 
be used instead.

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 09:35:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 09:35:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595526.929117 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdST5-0006vb-I5; Tue, 05 Sep 2023 09:35:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595526.929117; Tue, 05 Sep 2023 09:35:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdST5-0006vU-F1; Tue, 05 Sep 2023 09:35:31 +0000
Received: by outflank-mailman (input) for mailman id 595526;
 Tue, 05 Sep 2023 09:35:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qilU=EV=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qdST3-0006vO-UO
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 09:35:29 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on062f.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::62f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8c4acc29-4bcf-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 11:35:28 +0200 (CEST)
Received: from AS8P250CA0017.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:330::22)
 by GV1PR08MB8425.eurprd08.prod.outlook.com (2603:10a6:150:a7::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 09:35:23 +0000
Received: from AM7EUR03FT057.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:330:cafe::b0) by AS8P250CA0017.outlook.office365.com
 (2603:10a6:20b:330::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Tue, 5 Sep 2023 09:35:23 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT057.mail.protection.outlook.com (100.127.140.117) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.25 via Frontend Transport; Tue, 5 Sep 2023 09:35:22 +0000
Received: ("Tessian outbound 30c9f5e988c5:v175");
 Tue, 05 Sep 2023 09:35:22 +0000
Received: from 3d6908e7a7fe.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 8F9F396E-6503-4591-9E63-702AAFADFB38.1; 
 Tue, 05 Sep 2023 09:35:11 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3d6908e7a7fe.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 05 Sep 2023 09:35:11 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AM0PR08MB5521.eurprd08.prod.outlook.com (2603:10a6:208:18a::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.28; Tue, 5 Sep
 2023 09:35:06 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 09:35:06 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8c4acc29-4bcf-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZHH9LdOUMyvfQ+SoksI+W005evFIR5HJ4xQEUQDYeOI=;
 b=nOXzSLudAjwxQ1U17zbx0xZ78043hn75yaVju3ZVPX2j8HHu/CkmPGbboGz4AC8j2azhKQlAlzG3aPlzEt/EGr4A7KQsW2DihCLl7As6fqovXjQSY8Pez72bnENI7FaXDBgADio4DmTAeKjUun4FwEe+QAQ/aonEzT0ZOImARRo=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 387d8ff7161e4d91
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dAuu+rnDGYS04dYXY2GA3O5MbfSlkLXXaZKZoCdxjYtACxLBDw06lTfwM6NkRu4tRpdby6MVkE6GOcPh6/z0wKXT4Lf0bLPc++FC5ixJhEnrWouD+Yo9bbKNbEaCpqXswodajfxT/z3UIkdgFrHH4Ka4YyDCscv8GCoQQsuo/52LWBfOYVlfLLEucy8hUDLnSVUQ08Ihsip8g8coNrZhXe0lQsE1Zp+Mx711PlLaWRNy+wa9CFTzj1+V5bBLRm/pKrcvJpCfupXIpyDxsIOPWr9ybonwtVv5LsxXKvCgx9x7bYjMJhr2nBMzopRMThPBhwXXQjCW22o2bZ3L85Os2A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZHH9LdOUMyvfQ+SoksI+W005evFIR5HJ4xQEUQDYeOI=;
 b=hCgEjNFXddv3u1H9UEa4vZMiJKSlUqW0IlEKUwwyEroopINqGInCLk/KfMGf76w7gmpjv1cCt7xUw5BZFhMWvvUL3LI6awJUa+tDn5OJejcfsN3Kq0sTjmxZ/IwsDs8xb/74P8YDMnUj7YmzDt3FIkesi1Zhe6ibdVwjV1KtsWTDpHb3zXFgVnxTIksfBO3wOkXCBuWO/MjCGla41JIBG3yjuj2H+xlif/ztyoo2B271eISnXGYtw0ZKur4xveWX4SnLS2t1n9qMm1QmVs8jfaXEhQqvPGyQe43cVVziwO9U0MbrOO9g4kS+rJFPxj+JwEUDUI/W45q7rvgvRuE84g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZHH9LdOUMyvfQ+SoksI+W005evFIR5HJ4xQEUQDYeOI=;
 b=nOXzSLudAjwxQ1U17zbx0xZ78043hn75yaVju3ZVPX2j8HHu/CkmPGbboGz4AC8j2azhKQlAlzG3aPlzEt/EGr4A7KQsW2DihCLl7As6fqovXjQSY8Pez72bnENI7FaXDBgADio4DmTAeKjUun4FwEe+QAQ/aonEzT0ZOImARRo=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Julien
 Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
	Volodymyr Babchuk <volodymyr_babchuk@epam.com>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>
Subject: Re: [PATCH v2] Arm: constrain {,u}int64_aligned_t in public header
Thread-Topic: [PATCH v2] Arm: constrain {,u}int64_aligned_t in public header
Thread-Index: AQHZ39K3OzaUe4swdEmgFg74tOYCyLAL+M4A
Date: Tue, 5 Sep 2023 09:35:06 +0000
Message-ID: <DAF26DA2-3438-4B44-B783-2C7445618CF1@arm.com>
References: <6bea2061-e6df-2cea-4bff-858b0f44a0c2@suse.com>
In-Reply-To: <6bea2061-e6df-2cea-4bff-858b0f44a0c2@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AM0PR08MB5521:EE_|AM7EUR03FT057:EE_|GV1PR08MB8425:EE_
X-MS-Office365-Filtering-Correlation-Id: 03f16717-a5e8-45a5-9381-08dbadf36d88
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 t8Ms+td0wyd6Oaquq1llnb+tVQ2aaDaaJZ+rjtZRMhKHrYoebqL/yO1eXQH0r9CcNDz7zY/Fk366cD2x4ZRV0BBEM0vWyIoMWJZDj5auc2QYmgufmXCrK8sIbuthDA7WZYNCsx6PbErH/R6bWuJ2xptYZICYFHIkpQToUEM/LB8CUVjultxzJmP3LS8hZ1xTWItnuyamUWjzSzwc/7G6yeg1BMbgk/6qhu93vIVx2kS8eP9SntB88bY70cZUQQMDWN2oxT7lPsVYf3wG+eIlYyAYo2XzXXUfOMzOyQ6ggxuOyNwq4+/qz+SAcT9ve441x+cVwDC+63T/FN+Vr7VAu3sdE0HARmqi23wg3RXW/F+0RcYIzGOgcf/6smoB1eTc5f64ldgFEQmo3LTel2y85SxOqY40CDxWywCfNfe3f3IVrxB3+Jj63Bd2tHwpVKmA+RTjAf3PuNJqDEqvHqDlwufjyizmCFhEGJTLhnae83QVx+PWtMnY8+i9rarYeibEqkarCNl7X7U3nVagnH62zFEBjT4fmyN6w0+d6exrJs7GdqX/jIzIOQogUEpUVSX318Y3c4EjMKZ5nnJZMmgsyiAEhMGkeGWl8IXIW3USnvZoG1dp9UZshyRswUbOTqaNGx+wvPhK6c15BQzFwoYLPg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(366004)(39860400002)(376002)(346002)(396003)(1800799009)(186009)(451199024)(478600001)(71200400001)(91956017)(66556008)(54906003)(66446008)(76116006)(26005)(2616005)(6506007)(66476007)(66946007)(64756008)(316002)(6486002)(53546011)(4744005)(8676002)(4326008)(2906002)(6512007)(8936002)(6916009)(5660300002)(86362001)(36756003)(122000001)(38100700002)(38070700005)(33656002)(41300700001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <A2F1E2B9AD19B542A97E94A6422ED83A@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB5521
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT057.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6e8c80fd-1924-498d-4fec-08dbadf363d0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	tmJuB9NBDKdjP6WHxCskb4Lcz/hqoHNMN+L4z3sTwnH2OwxbmlMw/SMfoD9+/2sv3ix+ltGAmozouuCMRXkngyNL1LNkC70bgjgt1AdKMDoUCq90p1k3+Z9ZZtG4JaxqnkGFRHABphFSTaSRvN6A+kCuhStNda4at1JH/B0364yK9x/lc0rGS9bRIh1CjE2f0rzYdY80+NBZDm2ZLrB30NYad8a099Y6ILjW4v4mwgpDyxk/8mkf18/WHw315MpddBpd3iuu8mthfDnGNHW9uBvLPQ1/Q1S1ATF1cV1CZqHG3RYEtG0Li/TBDmVLB0BOUFccGziwv/fQPKtmaLnQ+GRcTpGKVsAiKui3cRzSg46gB9uZFVw2SbfRRLxtHRheAbqYojU1OMTrDVTvNA5dOtyVyviuzeuhJcpCnUc52tHkhVMz2j5iLuQozeLzGY4AxNE+I0ZYbLP6Px0Qpta4hy7fbTK+kxlC9dikV/9htspTnG/NGG56cww+UmoyUi+zwg2kKALjFAPfwgewZ6OlpaDJmTGBYpwRi6aQ69JWm8XOe1eHImDqnk2ftgSFJkxvNrhYpWRdHzHhrSYYbLxRDga64cKBHcZZpSUgbrduaN3XbU1xoT9ZBU3SMXPiFwjx1xyuRFI9yqID52c2jhb5oKO5X76nv1OMOBxCdBwKNL0z48XJJF9R7ejtBTRNZPBP0t3IMIvsjasAD1C0/drLzRqQ149tE0iPxoZgj0tzrek=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(376002)(39860400002)(136003)(396003)(451199024)(186009)(1800799009)(82310400011)(40470700004)(46966006)(36840700001)(53546011)(26005)(5660300002)(2616005)(6512007)(54906003)(70586007)(316002)(6506007)(41300700001)(70206006)(40480700001)(82740400003)(356005)(81166007)(4326008)(6862004)(8676002)(8936002)(478600001)(6486002)(336012)(2906002)(47076005)(36860700001)(40460700003)(4744005)(86362001)(36756003)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 09:35:22.8913
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 03f16717-a5e8-45a5-9381-08dbadf36d88
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT057.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8425

Hi Jan,

> On Sep 5, 2023, at 16:26, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> For using a GNU extension, it may not be exposed in general, just like
> is done on x86 (except that here we need to also work around not all of
> the tool stack actually defining __XEN_TOOLS__). External consumers (not
> using gcc or a compatible compiler) need to make this type available up
> front (just like we expect {,u}int<N>_t to be supplied) - unlike on x86
> the type is actually needed outside of tools-only interfaces, because
> guest handle definitions use it.
>=20
> While there also add underscores around "aligned".
>=20
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

I used the same testing approach to redo the test for v2, and everything
works fine this time.

Tested-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 09:57:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 09:57:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595533.929126 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdSoX-00023J-AM; Tue, 05 Sep 2023 09:57:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595533.929126; Tue, 05 Sep 2023 09:57:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdSoX-00023C-7h; Tue, 05 Sep 2023 09:57:41 +0000
Received: by outflank-mailman (input) for mailman id 595533;
 Tue, 05 Sep 2023 09:57:40 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=n/I5=EV=linaro.org=dan.carpenter@srs-se1.protection.inumbo.net>)
 id 1qdSoW-000236-AW
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 09:57:40 +0000
Received: from mail-lf1-x129.google.com (mail-lf1-x129.google.com
 [2a00:1450:4864:20::129])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a51fd4af-4bd2-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 11:57:38 +0200 (CEST)
Received: by mail-lf1-x129.google.com with SMTP id
 2adb3069b0e04-50091b91a83so3823361e87.3
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 02:57:38 -0700 (PDT)
Received: from localhost ([102.36.222.112]) by smtp.gmail.com with ESMTPSA id
 o3-20020a5d4083000000b0031435731dfasm16913703wrp.35.2023.09.05.02.57.36
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 05 Sep 2023 02:57:37 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a51fd4af-4bd2-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1693907857; x=1694512657; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=AKHR62ul+UyAMBBLZNZLoFrH8efwjpri67YRyIEqGb8=;
        b=PwDCoPUBD/4seHd+G+LNsZyILf/+Wh3VMPoxn9OO0gwdkwvl++0/jv/qNVmLDnLV3j
         96ttU+WHrckOEkRkvAidkIuwN5qo5C0+7L4TdhPmGqatpKvmJgQYPnzts7MYqAPDL+dM
         xxX6HlZteN0VGhVzJUI18X1IUVFjUkiW6TeOAZCbbPct1VCVm97F6+s2mGaPx/iBJ1Xz
         ylvufRK7a+xVVmeEv3qeVE8c5lRHm4MOnyYhAcTEEwzQwtu3GV3uPpqQ3SxhktwbnMIW
         qE3KO+qrJponKACU4DLzOAPZxRz0CBqNct5+BNAysJSE/awNSe5EAa8H6lKLAdrZ578u
         KPeQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693907857; x=1694512657;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=AKHR62ul+UyAMBBLZNZLoFrH8efwjpri67YRyIEqGb8=;
        b=hmHACXvDUhNo3BVeg18pLEqJPjOzMcXEhU+g/Kv4he/uepdRoy3FgwNuaVUKmBvfMY
         ugfCQ5zgX/RHCy2F9d4FM/NT00MUlzm4efmDaWuNFdvu2y8eIqxb15yZzL9qf1bJPgll
         Iw7ktw4+TAmwoDAZ1s5cvzBuhqKFMHw1znV9o0QnbOn82qpMZsW7EZjkTo2Lhtdd8R+H
         /Ub8mqMO0wJw8yKr/pcSz1k1MadeY2Sh6clJ3qYvjQe2HNuc9I3FagqRY8PvCiPfAm0F
         C/7+ftc1xYIHh3c+EIeNydL2sQlf6jiBF5nQzfex/BNztPU6gRF2i/9VGil8VTUlUU2E
         AZNw==
X-Gm-Message-State: AOJu0YwfJFJujhfef4rLVbxq7Ee1eHtZlJ6vRV45BzouMUzMZ+sdegJb
	2FmtJ5vTK6Lc/CxPVsf6I6/hPQ==
X-Google-Smtp-Source: AGHT+IF/Krv9XoaHXmgTX6hA95PT3mrsyeECELy7hFWygISVfjLi7nO3m0A/foR0u3zSojYLTMDlFA==
X-Received: by 2002:a19:8c09:0:b0:500:9d6c:913e with SMTP id o9-20020a198c09000000b005009d6c913emr7472258lfd.52.1693907857446;
        Tue, 05 Sep 2023 02:57:37 -0700 (PDT)
Date: Tue, 5 Sep 2023 12:57:34 +0300
From: Dan Carpenter <dan.carpenter@linaro.org>
To: Ratheesh Kannoth <rkannoth@marvell.com>
Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	davem@davemloft.net, edumazet@google.com, kuba@kernel.org,
	pabeni@redhat.com, ast@kernel.org, daniel@iogearbox.net,
	hawk@kernel.org, john.fastabend@gmail.com, jiawenwu@trustnetic.com,
	mengyuanlou@net-swift.com, yang.lee@linux.alibaba.com,
	error27@gmail.com, linyunsheng@huawei.com,
	linux-hyperv@vger.kernel.org, kys@microsoft.com,
	haiyangz@microsoft.com, wei.liu@kernel.org, decui@microsoft.com,
	longli@microsoft.com, shradhagupta@linux.microsoft.com,
	linux-hwmon@vger.kernel.org, michael.chan@broadcom.com,
	richardcochran@gmail.com, jdelvare@suse.com, linux@roeck-us.net,
	yisen.zhuang@huawei.com, salil.mehta@huawei.com,
	linux-arm-kernel@lists.infradead.org,
	linux-mediatek@lists.infradead.org, nbd@nbd.name, john@phrozen.org,
	sean.wang@mediatek.com, Mark-MC.Lee@mediatek.com,
	lorenzo@kernel.org, matthias.bgg@gmail.com,
	angelogioacchino.delregno@collabora.com, linux@armlinux.org.uk,
	linux-rdma@vger.kernel.org, saeedm@nvidia.com, leon@kernel.org,
	gerhard@engleder-embedded.com, maciej.fijalkowski@intel.com,
	alexanderduyck@fb.com, wei.fang@nxp.com, shenwei.wang@nxp.com,
	xiaoning.wang@nxp.com, linux-imx@nxp.com, lgirdwood@gmail.com,
	broonie@kernel.org, jaswinder.singh@linaro.org,
	ilias.apalodimas@linaro.org, UNGLinuxDriver@microchip.com,
	horatiu.vultur@microchip.com, linux-omap@vger.kernel.org,
	grygorii.strashko@ti.com, simon.horman@corigine.com,
	vladimir.oltean@nxp.com, aleksander.lobakin@intel.com,
	linux-stm32@st-md-mailman.stormreply.com,
	alexandre.torgue@foss.st.com, joabreu@synopsys.com,
	mcoquelin.stm32@gmail.com, p.zabel@pengutronix.de,
	thomas.petazzoni@bootlin.com, mw@semihalf.com, sgoutham@marvell.com,
	gakula@marvell.com, sbhatta@marvell.com, hkelam@marvell.com,
	xen-devel@lists.xenproject.org, jgross@suse.com,
	sstabellini@kernel.org, oleksandr_tyshchenko@epam.com,
	linux-wireless@vger.kernel.org, ryder.lee@mediatek.com,
	shayne.chen@mediatek.com, kvalo@kernel.org, andrii@kernel.org,
	martin.lau@linux.dev, song@kernel.org, yonghong.song@linux.dev,
	kpsingh@kernel.org, sdf@google.com, haoluo@google.com,
	jolsa@kernel.org
Subject: Re: [PATCH v1 net] page_pool: Cap queue size to 32k.
Message-ID: <75bcd331-9a62-486f-a15f-6aebf4d1838b@kadam.mountain>
References: <20230814060411.2401817-1-rkannoth@marvell.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230814060411.2401817-1-rkannoth@marvell.com>

On Mon, Aug 14, 2023 at 11:34:11AM +0530, Ratheesh Kannoth wrote:
> Clamp to 32k instead of returning error.

What is the motivation here?  What is the real world impact for the
users?

> 
> Please find discussion at
> https://lore.kernel.org/lkml/
> CY4PR1801MB1911E15D518A77535F6E51E2D308A@CY4PR1801MB1911.
> namprd18.prod.outlook.com/T/

Please don't break the URL up like this.  I think normally we would just
write up a normal commit message and use the Link: tag.

Fixes: ff7d6b27f894 ("page_pool: refurbish version of page_pool code")
Link: https://lore.kernel.org/lkml/CY4PR1801MB1911E15D518A77535F6E51E2D308A@CY4PR1801MB1911.namprd18.prod.outlook.com/
Signed-off-by:

> @@ -171,9 +171,10 @@ static int page_pool_init(struct page_pool *pool,
>  	if (pool->p.pool_size)
>  		ring_qsize = pool->p.pool_size;
>  
> -	/* Sanity limit mem that can be pinned down */
> +	/* Cap queue size to 32k */
>  	if (ring_qsize > 32768)
> -		return -E2BIG;
> +		ring_qsize = 32768;
> +
>  
>  	/* DMA direction is either DMA_FROM_DEVICE or DMA_BIDIRECTIONAL.

Don't introduce a blank line here.  Checkpatch will complain if you
have to blank lines in a row.  It won't complain about the patch but it
will complain if you apply the patch and then re-run checkpatch -f on
the file.  (I didn't test this but it's wrong either way. :P).

regards,
dan carpenter



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 10:01:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 10:01:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595539.929137 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdSs3-0003rY-P7; Tue, 05 Sep 2023 10:01:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595539.929137; Tue, 05 Sep 2023 10:01:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdSs3-0003rR-MN; Tue, 05 Sep 2023 10:01:19 +0000
Received: by outflank-mailman (input) for mailman id 595539;
 Tue, 05 Sep 2023 10:01:19 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdSs2-0003rJ-Vu
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 10:01:18 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20610.outbound.protection.outlook.com
 [2a01:111:f400:7d00::610])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 27382ab0-4bd3-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 12:01:16 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9233.eurprd04.prod.outlook.com (2603:10a6:10:361::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Tue, 5 Sep
 2023 10:01:14 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 10:01:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 27382ab0-4bd3-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IIrQF8pN6xH4lkk3KUSCtH1dGkV9JgMil3CUXhez3CON+BVH0weARSthx0uaNwCCavwbr9upy+Y/MZFkKOfP85WYAiuxHSPKTqcCOqRyciHpq0tn8+DuVGuG/zYl7ut9GHPN+2qmZhh8+2sKwRgJiMZsr9Rlhw+He7Y/cMbPUviazE/0/tDR7++J9ALQvTRA5HM0hTqh8ZDYhGbOqHL0jPmT8vNSeHhhDIuBb7uc9EzyS4bm9nVe7qA0Oa7UvCzUAhy15xY+/yU3P5m3aTm24rFjmN1iRCxSNamCkCi2U8+MHL99LGTqKSnb2W/ZDAxKbV9uk2Jt97wmbdIWjdkzLQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8Ct+2GTJx/tV4RjCTobD8cm1WfBCadZ7+XWHPybvZ2Y=;
 b=X8HsluVbZGp/eNvG6Eupu88CXby6ws+C8NfVutpGOzNzA1VcvV74dxdvPznK/4E0LuOqBtn48ngiRNiJa3dH2BoVAaLK+jhQgAiqC3Qom5uDkm97zUipNd6H1VvleceSllMRrp7OECWe/ddoY/CFvFHVmUJdiqmn/umbxWPDGWoagx/V4EWjgI3LCyO+0LhPO4uJRFayO/swbH5EZs6wUy3MrFnl7jH28/ne0qcLZjGLjmEzGVVw00sDlnZxIpZLHdfuXByw2XOHDTxWREHlGACacuybr/5iZ9VV6uLcr4ugfRGOkBuXImSomkaOdWNywUNtkQpLQ+xjcoMtuDD3jw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8Ct+2GTJx/tV4RjCTobD8cm1WfBCadZ7+XWHPybvZ2Y=;
 b=nuwpqjx6UptAW5dgmVbZXRBYKf6Wcs1KoYT2GL4mQ/Ejdzi/spkxhUHL5mbqg0TMBaNtRn67tnh1e/jkz/cGLzvaw1Ri0bs+Av6FeNkgMPfrADcUumPK39nS60VJXAJjS7n5B1AqXM5HdVjR8TYJxlAiOmzmP43/hdkrhnw0qawrSrGzVp40Us0cc42of+K4DBGs3yoIyQRojeYS6Nz4C/+HXz+adD35ZFH8BvgVtv9ZegU1T/urxK+ncADCC61zN/nbA62nOCUAXVNH2x9EloH8mwXFR1AgjuI82/nazHVfpualkO4U7DkpccD3fVBSONTJ2YJFLp8AfJSBZa22Fg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <45081782-69cb-1b8e-7925-fd9fb4e3d0c4@suse.com>
Date: Tue, 5 Sep 2023 12:01:11 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 3/3] xen/ppc: Implement initial Radix MMU support
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.1692744718.git.sanastasio@raptorengineering.com>
 <7cebc2962002c36ecfe712bf1bcb251e083910b8.1692744718.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7cebc2962002c36ecfe712bf1bcb251e083910b8.1692744718.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0113.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB9233:EE_
X-MS-Office365-Filtering-Correlation-Id: 0212de84-a02a-4b8f-5b79-08dbadf709f6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RlZmMTL8iCnJVXXgXttGzl3KaZKjYW3i4WG79vFg0obdxEjPp2XEbrXpO1GOvA6iSl2Dro2n9SQNGjGz/vIE/s31zHDPBtKiZ19dr6SdYwBh+45wSHNJBRa8KW2C/g+tkQKC+jiPNu4L0a+Itv/RXfycArZ3wBcfGFmeSXOegKAnT7S77EbZ46DGXflXF67558c5aKxxMLSN0CSPdcjyxlmssEXIW3hNv+AhJpEqsb0hDIGGyFXgno3+NOA7KAFKudqltRw9tkVAM6wx6dVxAVU7bvGWBwneThLXZnQeOWXRO+J8cEYjXyCxXGbjwikBOQY56xrcQ/pxnmDQzH4aYbzmUpnfejIKjF2jWki3dnx8qdRNq7P0ssyiy1S+0L9utaaJqUU45J9OaJNN3McFK+5qeS3oMzEMTj3bUe3xdlJRMOLM97AO48PQpcJ00VmahHyGdozOlMJ1mAyF1Q9+oUhei88a45lA/9FG30jTA8KZhryKbS9k6Kohid0wpLIdFxqpGwN/a32BBAtEDsatRVuxGIGLbomv0gQyCiF6qrsOqYnmIev6fFPIAFizpBirg8aFwrq5jmUBwI66m3OXs1pU26se0lUeJE8zNYJ7Iejlbp8T0dtIMQuD9kCtLz0/uWgt2mGVU8Pl9KgljhM6Zw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(346002)(366004)(39860400002)(396003)(451199024)(1800799009)(186009)(2616005)(26005)(31686004)(6666004)(8676002)(8936002)(4326008)(83380400001)(5660300002)(6486002)(53546011)(6506007)(41300700001)(54906003)(66476007)(66946007)(66556008)(38100700002)(86362001)(6512007)(6916009)(31696002)(316002)(478600001)(966005)(36756003)(2906002)(4744005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bmY2a3FEekNpRll5cyt4cjBmcFpNTHg3emR5dXF4ZnFVMytsQ1lXMTdjYjlD?=
 =?utf-8?B?b3pNNDAwYVhIUGxlQlppeHdSK21qNE5LcHdGeFFoeGw5eFo1TmZ1MUNFQjZV?=
 =?utf-8?B?SERQcFZUWVlsaGkwcGRRQ3o5eUZVQWNRU1c2WURiTWtpMFdjZmtyaU9KVS9Z?=
 =?utf-8?B?UTMwMU5KQjdQVStKcnVoK3BSQlVqaURON3A4V2Yyb3dkbDkvMmhsbjBqMC9W?=
 =?utf-8?B?ZDMxZTVnZmpmWFkreEtvcDhZQ0x2b3I1MDZDSXQrUEtYbllTbW9FaGxVZmxY?=
 =?utf-8?B?NjY5N1hYd1pXWTdVN1dOY29YS1gyZXM1cVRkUUlya0ExeXZJNzE1SloxSVBi?=
 =?utf-8?B?UDFxNVI0RmVZV2R1ZktUclI0eUlLWjVpQ3prbFluQklCb1VCYWdFYk1EYlRw?=
 =?utf-8?B?VzZieW91OGxYdjhYRFUxSU5NbFZPSlNaRW9yckU3elpVc1U5K3lWMndSUUsw?=
 =?utf-8?B?WVN4eTFGWjZTa1FaYnI0dHYzVURCcDQwaEJNZUpmRzNwVnJ1QTN1VHU0NklC?=
 =?utf-8?B?NUpCUzE1eXI2Q2xEbHluZ2hnUDJyN2V6dDdCRk1TQW4zaFRBWVBDb2VxdDNH?=
 =?utf-8?B?RDZkeWUxNE9UVDBVRTBHQ01OeDN1eUN3QWE3ZjRrSnExOVhIaFoybCtPWTNB?=
 =?utf-8?B?SVIveE4xNlBhRUVOalhnY1JHekdqa0NReklJMWl4R3lQSmVGT1dXcFJUSUxp?=
 =?utf-8?B?YnpRK1RqZ2N2bk8zRndpWFIwWmdIZWdJUDlsQVZIMGFwc3E3bzA1cVFSSFBp?=
 =?utf-8?B?N1Z3Nlh0SElxR0doMFlkQW96MmV5d3FSMnIvNERYcU9IbGJ6NFIyczRvcGtW?=
 =?utf-8?B?eUttMm5oV05lbkJzR1hXRWdaSkxVSFRodUxWZ1V1dlgyMFpQSC9IaFlncGhu?=
 =?utf-8?B?emtHdHo4L0o3UXB2a2txTWd6dy9TSW5mL1ZGeEF4WE1FeHJMaHlRWXVNQ083?=
 =?utf-8?B?ZkFmZEVrRnVpY1NNRmlvYUJ5UzMrK1NhOGQyZmh2TWkzZmsxdXQ1NVphdEJP?=
 =?utf-8?B?d2dGZ3l1N0tkWkx5WDhBOE5QbjNReDAyYnRjeHFxTDlVaW4zcEptSUh0M0xj?=
 =?utf-8?B?QmU4Zm9VT0ozcU9keFp1MGZzYUcxYVpad1V6Vk55bGxROFN4aFRINUlJNDZR?=
 =?utf-8?B?ZXB6Z1k2dTJJVHdSRHVyMnZLVDIxbjJDRDMvbGJqUCtRREhNRWp5czJ3RWt0?=
 =?utf-8?B?Wlo3MzdDZWxMTUZKclp2QVkxTC80Z0JvcmhmaEhoZnRUanZ1WER3ZWxsK3ZH?=
 =?utf-8?B?UTU0aXFRQ0U5RXpnVjNCazlPY3FLcFZXRDRGbHc2RUZ1R0dBeGMzRko1Y2tn?=
 =?utf-8?B?Wk85cVhJNktSWC90Wk5ibUYyL0ZVMEtNbmkyTG1jNjNJb2RldFFaWnQrRERU?=
 =?utf-8?B?UnZQZnkzNTk0c1VHdzFzbzN5cUlFQUNKN1VDSWpDbTFPUEYvSWNIbk92Vms4?=
 =?utf-8?B?VWVpL1ZJYVZXa3RBUitRMkZSeC9lYi9sd0JhcXJpZTRxY1padVV0SXdLY1Fa?=
 =?utf-8?B?U0d1NmRpN0EyNks1ZmYrcGE4WkxseFNFSkhjM0NoaFNhR21UN3B6a2J2Y1lG?=
 =?utf-8?B?UjMvVzF5b2dkSGVXZ0lKczQ4OVdZWUt0NHQ2S2ozWjhISURJVGttUm55OFJx?=
 =?utf-8?B?Ny8vZlBkOUJIcWx0OFIvMGJhZUs1czdqTXdLenRoOEZSRXQ2ZFkvVzBMTG1w?=
 =?utf-8?B?TVFRMDlJdGJtejhBNXFNRGhCVnhvRU9VR1N4LzBlbnl2NWdRQ2YyRnZycEtX?=
 =?utf-8?B?YzVjMG1oalVCaXNaR1hMaW9FRVh1bHhFVjgycm1kSDI2am9xODQ4Q2RPeXhK?=
 =?utf-8?B?Z002TWprWFdEMVZPVkw4UTFiR1NVT1RUallzUkt0WUV0bnV1clkrNDBwcStF?=
 =?utf-8?B?dmFNTTVrRSt0WTk1YnFpaFZxRXlZM0VPN1dJSitRZld2Y2VXcm1CcHpqYmQx?=
 =?utf-8?B?M0FTZTh0enVsd2ptL0x4M0RZWEdJNHFHdlhSUk82SUovY3hIbEtWYnNoL1NC?=
 =?utf-8?B?TnVWbHVYOWdYK2dSNzlyeEhmWElRK2FDSThmaDB6SENCNHFlakZxSW85RTJt?=
 =?utf-8?B?Z1hIajBxb1dYTm1ZNzBjSWt0U3RtTlNjTkY1aW1sTEt2Z2JUR0IrYm9QS0dw?=
 =?utf-8?Q?nPC6r1qf/oQYW4GcJEgvezLds?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0212de84-a02a-4b8f-5b79-08dbadf709f6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 10:01:14.0266
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: qjAplYN7rXtw0NigKZ8jFJfrXgMEMHbFU2KEKMs4v68ZYS3D7DTaL4NCZFxyQouE0uRBcZeH0TT9f8JtDebqRw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9233

On 23.08.2023 01:03, Shawn Anastasio wrote:
> Add code to construct early identity-mapped page tables as well as the
> required process and partition tables to enable the MMU.
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>

Having committed this, something broke in CI. As per the artifacts of
https://gitlab.com/xen-project/xen/-/jobs/5017915681 ...

> +void __init setup_initial_pagetables(void)
> +{
> +    struct lvl1_pd *root = lvl1_pd_pool_alloc();
> +    unsigned long lpcr;
> +
> +    setup_initial_mapping(root, (vaddr_t)_start, (vaddr_t)_end, __pa(_start));
> +
> +    /* Enable Radix mode in LPCR */
> +    lpcr = mfspr(SPRN_LPCR);
> +    mtspr(SPRN_LPCR, lpcr | LPCR_UPRT | LPCR_HR);
> +    early_printk("Enabled radix in LPCR\n");

... this is the first message missing; setup_initial_mapping() appears
to be completing fine.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 10:20:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 10:20:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595546.929147 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdTAW-00073m-8s; Tue, 05 Sep 2023 10:20:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595546.929147; Tue, 05 Sep 2023 10:20:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdTAW-00073f-5A; Tue, 05 Sep 2023 10:20:24 +0000
Received: by outflank-mailman (input) for mailman id 595546;
 Tue, 05 Sep 2023 10:20:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=10iL=EV=linaro.org=alex.bennee@srs-se1.protection.inumbo.net>)
 id 1qdTAV-00073Z-Af
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 10:20:23 +0000
Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com
 [2a00:1450:4864:20::32d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d1543ff3-4bd5-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 12:20:20 +0200 (CEST)
Received: by mail-wm1-x32d.google.com with SMTP id
 5b1f17b1804b1-402d0eda361so15238285e9.0
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 03:20:20 -0700 (PDT)
Received: from zen.linaroharston ([85.9.250.243])
 by smtp.gmail.com with ESMTPSA id
 e16-20020a05600c219000b003fe2a40d287sm16545398wme.1.2023.09.05.03.20.19
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 05 Sep 2023 03:20:19 -0700 (PDT)
Received: from zen (localhost [127.0.0.1])
 by zen.linaroharston (Postfix) with ESMTP id A79C61FFBB;
 Tue,  5 Sep 2023 11:20:18 +0100 (BST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d1543ff3-4bd5-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1693909220; x=1694514020; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:in-reply-to:date
         :subject:cc:to:from:user-agent:references:from:to:cc:subject:date
         :message-id:reply-to;
        bh=iLAvvAZgDqDrAheBxaxmnPyPUu7z5u2uvapTCYrrRso=;
        b=vI5dMc/rbWvWBIqmwFahUHTIkz2bbd/QHMbO4sl39AUAqc8JUOhxE11p7oTbAbTiwJ
         vfJ3iP17legmGAu1adEkzFRiMN13emn/HWVmO93PJND4Qrif+S24TXAZhLCVZB/A/Iza
         wr0AU3TwpiPlAmFmymJAOvmI/8axLNGrzMqGQWRhGsXd40kwuI3m42T9vMzh1t9ZGBKj
         x1IhFIyUS2Xua5U47Y+i5He362d+M0sFHJymWvv4oQCR/OgcSZ3Tx4YzQQWXnf7cg7+V
         eygRSFXBXXha7kWsfbKLcvcM9iA55wXABbI0Qd9uSWIteAq+qHezabT+ZqxRFgRoWN46
         PfTA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693909220; x=1694514020;
        h=content-transfer-encoding:mime-version:message-id:in-reply-to:date
         :subject:cc:to:from:user-agent:references:x-gm-message-state:from:to
         :cc:subject:date:message-id:reply-to;
        bh=iLAvvAZgDqDrAheBxaxmnPyPUu7z5u2uvapTCYrrRso=;
        b=inQ+L9XGNrJBun68eA6ZF+zNUDq33SRbWi0ZKuQOXUe8JYaguuylGNWVVYNe1Rm6Dr
         8AC6u929FzDjjoazD36pNBZ2kMMICOJgs3ZDKXl+WFnKWZ3rhuXE+kBPmQlOJK2MBQIc
         4ggovO55kNZeQ57mNBk/pI3yIVAvPPIiKY0T9DKr3CtmQ7Bj5aVYJfcZ+5BC6mqZzLb8
         RNvciKiTufsNOEBRucXZ7sf9z4O6+RS9kBYJmrrPB/EalWy6ZMdp1VEzBldDdcKZZJZp
         ioojTu31yR/RGQyCKkcKcDpY6mrAPRaiTf5iY+zdKvoND9Jc0JNfIt9mhxf28V3KihCr
         V3ow==
X-Gm-Message-State: AOJu0YyYNGzup/MreQ1H04jivXA1O1BHlwvWRBwqiYPqH+kRTzrBQw4v
	aRPm+mFrMNHjKfzvol3YTL+6sA==
X-Google-Smtp-Source: AGHT+IFekvr/SFOvIRA6BcCxn5lTVXkbuuY6klPIZwbkqkINlw9lLdBRRyJNKV2x8vEl/9zRIANMtA==
X-Received: by 2002:a05:600c:2981:b0:3fe:1db2:5179 with SMTP id r1-20020a05600c298100b003fe1db25179mr9371957wmd.19.1693909219763;
        Tue, 05 Sep 2023 03:20:19 -0700 (PDT)
References: <87y1hspiyh.fsf@linaro.org>
 <alpine.DEB.2.22.394.2308301745530.6458@ubuntu-linux-20-04-desktop>
 <CAFEAcA8Ziov9vA9dW+4vzFE=KkSUqfMNNMZOtvQhqCXyjRytzQ@mail.gmail.com>
 <87cyz3pmgz.fsf@linaro.org>
 <CAFEAcA-m8G1kfTw52kOGPEvQwWPph0NWc0URVY1aQ2WwVeB_OQ@mail.gmail.com>
 <799b1754-7529-0538-1b5a-d94a362eb74d@amd.com>
User-agent: mu4e 1.11.16; emacs 29.1.50
From: Alex =?utf-8?Q?Benn=C3=A9e?= <alex.bennee@linaro.org>
To: Ayan Kumar Halder <ayankuma@amd.com>
Cc: Peter Maydell <peter.maydell@linaro.org>, Stefano Stabellini
 <sstabellini@kernel.org>, Xen-devel <xen-devel@lists.xenproject.org>,
 Stewart Hildebrand <stewart.hildebrand@amd.com>, Viresh Kumar
 <viresh.kumar@linaro.org>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Sergiy Kibrik <Sergiy_Kibrik@epam.com>, QEMU Developers
 <qemu-devel@nongnu.org>, Vikram Garhwal <vikram.garhwal@amd.com>, Stefano
 Stabellini <stefano.stabellini@amd.com>, Marcin Juszkiewicz
 <marcin.juszkiewicz@linaro.org>, Jonathan Cameron
 <jonathan.cameron@huawei.com>, Bill Mills <bill.mills@linaro.org>, Ilias
 Apalodimas <ilias.apalodimas@linaro.org>
Subject: Re: QEMU features useful for Xen development?
Date: Tue, 05 Sep 2023 10:55:20 +0100
In-reply-to: <799b1754-7529-0538-1b5a-d94a362eb74d@amd.com>
Message-ID: <87tts8hqfx.fsf@linaro.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


Ayan Kumar Halder <ayankuma@amd.com> writes:

> Hi Peter/Alex,
>
> Appreciate your help. :)
>
> On 31/08/2023 11:03, Peter Maydell wrote:
>> On Thu, 31 Aug 2023 at 10:53, Alex Benn=C3=A9e <alex.bennee@linaro.org> =
wrote:
>>>
>>> Peter Maydell <peter.maydell@linaro.org> writes:
>>>
>>>> On Thu, 31 Aug 2023 at 01:57, Stefano Stabellini <sstabellini@kernel.o=
rg> wrote:
>>>>> As Xen is gaining R52 and R82 support, it would be great to be able to
>>>>> use QEMU for development and testing there as well, but I don't think
>>>>> QEMU can emulate EL2 properly for the Cortex-R architecture. We would
>>>>> need EL2 support in the GIC/timer for R52/R82 as well.
>>>> We do actually have a Cortex-R52 model which at least in theory
>>>> should include EL2 support, though as usual with newer QEMU
>>>> stuff it quite likely has lurking bugs; I'm not sure how much
>>>> testing it's had. Also there is currently no board model which
>>>> will work with the Cortex-R52 so it's a bit tricky to use in practice.
>>>> (What sort of board model would Xen want to use it with?)
>>> We already model a bunch of the mps2/mps3 images so I'm assuming adding
>>> the mps3-an536 would be a fairly simple step to do (mps2tz.c is mostly
>>> tweaking config values). The question is would it be a useful target for
>>> Xen?
>> All our MPS2/MPS3 boards are M-profile. That means we have the
>> device models for all the interesting devices on the board, but
>> it would be simpler to write the an536 board model separately.
>> (In particular, the M-profile boards are wrappers around an
>> "ARMSSE" sort-of-like-an-SoC component; there's no equivalent
>> for the Cortex-R52.)
>>
>>>    https://developer.arm.com/documentation/dai0536/latest/
>
> Yes, it will be helpful if Qemu can model this board. We have a
> downstream port of Xen on R52 (upstreaming is in progress).
>
> So, we can test the Qemu model with Xen.
>
> Also if all works fine, we might consider adding this to the upstream
> Xen CI docker.
>
> Out of curiosity, are you planning to add Qemu R52 SoC support to Zephyr ?

Generally enabling other software platforms is out of scope for the QEMU
team as we have plenty enough to do in QEMU itself. However its
certainly useful to have images we can test with.

Eyeballing the Zephyr docs it looks like it already supports some
R-profile cores on various boards, including CPU_CORTEX_R52 for the
NXPS32Z/E board. The BSP sections mostly look like config fragments but
I'm not really familiar with how Zephyr goes together.

I can ask our micro-controller experts what might be missing and need
implementing but I can't commit them to work on it ;-)

--=20
Alex Benn=C3=A9e
Virtualisation Tech Lead @ Linaro


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 10:31:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 10:31:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595553.929156 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdTKw-0000oP-4t; Tue, 05 Sep 2023 10:31:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595553.929156; Tue, 05 Sep 2023 10:31:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdTKw-0000oI-2C; Tue, 05 Sep 2023 10:31:10 +0000
Received: by outflank-mailman (input) for mailman id 595553;
 Tue, 05 Sep 2023 10:31:08 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdTKu-0000o8-UG; Tue, 05 Sep 2023 10:31:08 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdTKu-0004vk-Rg; Tue, 05 Sep 2023 10:31:08 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdTKu-0006t8-AY; Tue, 05 Sep 2023 10:31:08 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdTKu-00066r-9I; Tue, 05 Sep 2023 10:31:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=IjZOID4M39l+JXmJGIw8Nmp0FEpqDeiFRiL4ukNK1Rk=; b=nhtyMeYELpA/JSM1F+mWwin4Vp
	YdAq9poeLKWhPO6nlz460HoZsrtnZipwKigLOGtDEcNEPtzPMIOKWSqz1c0E6mIVCep2f24FLgMcK
	/UpV9HNROCd39YfAFn+yPQ/P1p4sX/lOV4WhopsWZT11EYMrSmzRDzLbiGrsOyZWORRA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182627-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182627: trouble: broken/fail/pass
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-qemuu-freebsd11-amd64:<job status>:broken:regression
    xen-unstable:test-amd64-amd64-qemuu-freebsd11-amd64:host-install(5):broken:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=f805cf3e9b87584e16b03b5059b1163fd22bf5a0
X-Osstest-Versions-That:
    xen=f805cf3e9b87584e16b03b5059b1163fd22bf5a0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 05 Sep 2023 10:31:08 +0000

flight 182627 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182627/

Failures and problems with tests :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-qemuu-freebsd11-amd64    <job status>                 broken

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-qemuu-freebsd11-amd64 5 host-install(5) broken pass in 182623
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail in 182623 pass in 182627

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install  fail in 182623 like 182620
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182623
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182623
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182623
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182623
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182623
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182623
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182623
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182623
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182623
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182623
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182623
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 182623
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  f805cf3e9b87584e16b03b5059b1163fd22bf5a0
baseline version:
 xen                  f805cf3e9b87584e16b03b5059b1163fd22bf5a0

Last test of basis   182627  2023-09-05 01:53:32 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       broken  
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary

broken-job test-amd64-amd64-qemuu-freebsd11-amd64 broken
broken-step test-amd64-amd64-qemuu-freebsd11-amd64 host-install(5)

Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 10:37:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 10:37:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595563.929166 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdTQU-0001W3-UJ; Tue, 05 Sep 2023 10:36:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595563.929166; Tue, 05 Sep 2023 10:36:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdTQU-0001Vw-Qs; Tue, 05 Sep 2023 10:36:54 +0000
Received: by outflank-mailman (input) for mailman id 595563;
 Tue, 05 Sep 2023 10:36:54 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VRCr=EV=citrix.com=prvs=6050903fc=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qdTQT-0001Vq-OX
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 10:36:54 +0000
Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com
 [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1d64792e-4bd8-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 12:36:49 +0200 (CEST)
Received: from mail-dm3nam02lp2049.outbound.protection.outlook.com (HELO
 NAM02-DM3-obe.outbound.protection.outlook.com) ([104.47.56.49])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 05 Sep 2023 06:36:46 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA0PR03MB7541.namprd03.prod.outlook.com (2603:10b6:806:b9::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 10:36:43 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::8a1b:5230:3575:dc68]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::8a1b:5230:3575:dc68%4]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 10:36:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1d64792e-4bd8-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1693910209;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=IgENLZ+IaDkiBAypsbgqja2qkZRSpapleI7yUTSKC3U=;
  b=W/gbLgPEwpQO7xLO5Ynz0M0ZkKioESRu8VTvJehQt7HApujv14jtBbwg
   CFc0ISZcktG89bSPNmVfanrLrdxzTt5aIcX7THdhFDjkZFrCotK7zqARf
   n9qkxJRbCdM+Nl5A+EgmhTtq3vEjCF3a0mqW9yVBPS4cjUPC2hfT+elil
   0=;
X-IronPort-RemoteIP: 104.47.56.49
X-IronPort-MID: 121534171
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
IronPort-Data: A9a23:HaNf8KpgeeNe2fRIQ2UAacIxtoZeBmILZBIvgKrLsJaIsI4StFCzt
 garIBnXMvneMDD1edB+Pdvlox8HvpOAmNZkGwVoqnwxEnxHo5uZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbKCYWYpA1c/Ek/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GlwUmAWP6gR5wePzyRNV/rzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXAAEiNk6BnbyJ+qzhU/BFmf0ZCu+3PYxK7xmMzRmBZRonabbqZv2QoPN9h3I3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jearbIu9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAttPT+HhqacCbFu79C8OJhgoaVWAnfiigVycBOMBJ
 G0Jw397xUQ13AnxJjXnZDW6qnOZuh8XW/JLDvY3rgqKz8L88wufQ2QJUDNFQNgnr9MtAywn0
 EeTmNHkDiApt6eaIU9x7Z+RpDK2fCQQdmkLYHdeSRNfu4Wy5oYukhjIU9BvVravicH4Ei3xx
 DbMqzUig7IUjogA0KDTEU37vg9Ab6PhFmYdjjg7lEr/hu+lTOZJv7CV1GU=
IronPort-HdrOrdr: A9a23:CrfqvqO+0xFKGMBcT/X155DYdb4zR+YMi2TDiHoddfUFSKalfp
 6V98jzjSWE9Ar5K0tQ5uxoWZPwMk80kKQY3WB/B8bZYOCLghrOEGgA1/qR/9SDIVyCygc178
 4JHMYOa6yTfD0K6foW+DPZYqEdKbG8gdSVbIzlvg5QpHRRGtpdBnBCe36m+yNNNW977UZQLu
 vo2iNynUvXRZ1bVLX0OlA1G8z44/HbnpPvZhALQzYh9Qm1lDutrIX3FhCJty1uHg+mld0ZkF
 Ttokjc3OGOovu7whjT2yv49JJNgubszdNFGYilltUVAi+EsHfuWK1RH5m5+BwlquCm71gn1P
 PWpQ07Ash143TNOkmovBrW3RX62jpG0Q6n9bahuwqknSXFfkN5NyMBv/MbTvLh0TthgDio6t
 MP44qb36AnRy8o0h6NvuQgHCsa6HZcmkBS2tL7v0YvGLf2IIUh3LD3w3klWKvoPBiKpLzPQ9
 MeQ/00oswmMG9yQUqpzlVS/A==
X-Talos-CUID: =?us-ascii?q?9a23=3AgdK6Mmju5O7AlbMQVNLbmXvbpjJuQ1KFknXKfXC?=
 =?us-ascii?q?CFzxwUZSKcGW23v9lnJ87?=
X-Talos-MUID: =?us-ascii?q?9a23=3Am55v7Q2bmfrvKu72OWyJoYz7uDUj0eezJkUzrZs?=
 =?us-ascii?q?9h8ifPj5SZAbDgxWqe9py?=
X-IronPort-AV: E=Sophos;i="6.02,229,1688443200"; 
   d="scan'208";a="121534171"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dFzGrGm/h0wTH5IgdVjQLFk9+68n8WJGdqcIOgf6omJVBbeo29nkG9r6wrLpl3y+8GpmRl77BK+lN9lXDfUkvA2/1tTUbhnSHvXry2+lu366k94Oe6UXR1UiPFmiS+fpxv6VJXH9SUWnPJYOpu5jkk/RdHxrP2Ua0lsl29f9KpxVzQEF1jpft5vcTAgvumZJUmMJb1tzDsFpjX3ERvgPbQzXk7lp0M4/ihJt2/keYD6/2jw92uGt8YhLpYHr2mpPINCZQh/IatsniqnTLUPsL/bmCsmGdkz3l+pTe3JP5sXH93zXnQBg0qCRFODT/4nE8bhuydNeuL5XzfeHkdKPRA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MDETOJUBJE9xOpwfPJBxla+FHGSZCMdXh6hZ18IM1wM=;
 b=PO2E1WYcgLcy2QdMyy94G2S6yE+t0u07xphmc1mqxQM1NEV0vRND1sM6wudhybvX5MCb2JANog3HJ+XUcMuhqcayufSeuTKLpz5tDrwmrmIwKkdcRtdfJljdluxYtzNt66B5dVpScfNhZ1IQGadBFgXvyckaQsvT+RIKLE1kGsRgYNgCEUWjDVABHM6iDmvkWmuonYx59va1+5eMDA/bSpECJB07hz2Jp/J3pPM4cn4mOGQfEuRX+IpiZxlS1ajZ7OhWwPq0Ndcjim1UvOwfUn4hDC0zxRUtVCDaML7/NJQXMiTp0xRp2kuyzM06JlTLxhkvT9bMVe7cSMxmRlkgWw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MDETOJUBJE9xOpwfPJBxla+FHGSZCMdXh6hZ18IM1wM=;
 b=SU6/XNzdscsvmfFMKw3K5ZFY6+ejxruvJYX+f3RvtROAaTWSlvDQCTa/4QBuWZMiQRrnyxVoKIXG5mHYbYJRq7gPX+U8IGYBirhH6fbVNufO6Fd/xbFo3dha9TyILQBxVY+b519Nlstgmwz2a7WHr3bYz2buGfCAnAdtHOOvBdI=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 5 Sep 2023 12:36:36 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wei.liu2@citrix.com>
Subject: Re: [Xen-devel] [PATCH] x86/HVM: adjust hvm_interrupt_blocked()
Message-ID: <ZPcEtALJ6-08yWo7@MacBook-MacBook-Pro-de-Roger.local>
References: <5BC0C4B602000078001F1258@prv1-mh.provo.novell.com>
 <ZPBusqv7NGaJnOoT@MacBook-MacBook-Pro-de-Roger.local>
 <ZPByJJEoJOjV3CIY@MacBook-MacBook-Pro-de-Roger.local>
 <8d894d37-4a03-7d51-9a45-3f764d05a90d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <8d894d37-4a03-7d51-9a45-3f764d05a90d@suse.com>
X-ClientProxiedBy: MR1P264CA0007.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:2e::12) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA0PR03MB7541:EE_
X-MS-Office365-Filtering-Correlation-Id: 6baccc23-a7c3-4a1b-9962-08dbadfbfeff
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/0rBnSXKcpOhvu/jRls2kFsLWUWXQ2dXTR4fzeSP6WShKabkqdBDcjaLGpO/TLbj9CXG3VYXaeW6qmHcSyYxPWhVr1Yw569KzJrxlAE6OynhWt2Dhp28zwccEYb1nDOKkGjYa3Tj8fV6w09F29vW1O/dyEXv2fjB+SXO5SDdl1pKkJNmUs/A+Zz7m4jITmWokwjpl+N0RgbO2Leb/UNTJGjwh7kYlwDrP03naTOeiallOA73UHcyJCiuKa1+gJXBYbC729u9Me4Jfxz7aTkrfskhOHIchqIj6nPIqSVQU8TN+3gFzY6M18p84YHHfj+/2AWivLIt4uEtNX7eZSbOOLjbOphm/+rXuUdQGhaJNMezy7cW+on2xX5SBdIz8pgu9iHmzhoJTNhUrwak/66NvFT8pcyAvWVVBIsR67kP3E/M1brRV2EAISsFMk21fz0cZUSQkrpiamG0k0yZwBESmU7BHMwoGh0o0MCjxf0BHzFaO/2X1U9m0E3kFhM7qbnkEzd5BYXjIUNqRyx3ddgPL97hlCN2606tw9fSTNqwnDZvoqaAWoSwYuVGydhrQRxC
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(366004)(136003)(39860400002)(346002)(451199024)(186009)(1800799009)(8936002)(8676002)(5660300002)(316002)(85182001)(54906003)(6916009)(66476007)(66556008)(66946007)(2906002)(4326008)(41300700001)(66899024)(6506007)(6486002)(53546011)(9686003)(107886003)(26005)(6512007)(6666004)(82960400001)(38100700002)(478600001)(83380400001)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eGJ1aWk0eU93NzRtTmxuMTIyK3ZsdzV4NnBhN282cEVDaFVnOFczOGg1blFQ?=
 =?utf-8?B?L093TmNORCs4NzFnUG9uV0RrNTdhaHpoN0I0S09JNEc3c3pSYUpheTRFekpk?=
 =?utf-8?B?WC8vcnNjZ2NMTHRYczFCQXVzN1AyZGUzTFJxOFBHMnYwbXVwTGxFNGJyM2ZM?=
 =?utf-8?B?Y3pwaFd6RmxlQ3VGejdSN3ovS293eTV1VzRHRTRnVUNPU29jZGI0alQybTRR?=
 =?utf-8?B?enRjVytyVG93eEVveVYvT0dxMDR4QTBnbHMyOVJ0amszNmxpZENNVWswTTE0?=
 =?utf-8?B?MXZsUUxSaFdJLzBSTDhxOTB0V1U0UHhqQUNQYkU0MHBRWjcrYmFPOEU3bXlF?=
 =?utf-8?B?eS9TYjdpQWtSblNyWldidVZQWndjT0RTN0FsMUUxcUFHMUVQand6OU9CYUFB?=
 =?utf-8?B?MmJ0N0lrVkY1Z25MTzhWNGNmNVFFY0FOUEJxcHQ2MXdPT1VvZHhqb25zYk5Z?=
 =?utf-8?B?UTFmMXVNR0Q2Qkg2djRrUHNPT25GbnBTd3I3OUoxam5OanJYS2svNDRJYksw?=
 =?utf-8?B?UEFJdnovbnpxTjNMcHR2b2RhL2ovNW9SektMMVVER2puejFPaldTVjdYZFJY?=
 =?utf-8?B?K0lVL3BaQ0tFRzlQUHlhaVN3bHVIQzQrNnk0Q2ZvUXN5cWVPWk9NOFFKSndz?=
 =?utf-8?B?YTlJWHhtU3Y4cUZPSlR3R2dQNk9mdWdwNHdMZERMbnZUL201enMvTlBCUU9t?=
 =?utf-8?B?N3hwMDQybkVRSUg2bEMzdFdxeG42UEJ1d3FWaTYxYnphVkhOc2VLeDd6SWRy?=
 =?utf-8?B?UVJMU2NkWTVDWjdqQVF1eUs0VWNUYWQ0K05aQi9zaExBQnpucUZFNDZSSVl6?=
 =?utf-8?B?dUFJL3BKN0FFaHRvWStRUVQwLzRLRFF3aFU4TjZkd1dybFNGcVJCMjNNM040?=
 =?utf-8?B?R3FmSjZYeDE1SjlMY3hLdUlQY3l0V2dSMmszUno5VVhLUFRLRGp2R3JNL3Bo?=
 =?utf-8?B?SDFSbmh1cStPNDlkd3Ywd09BWmFJTFNaMmFIZkQ4SUM1dU44dDd1UjVBU0Iv?=
 =?utf-8?B?VkpYZWx5bWMxUnF3U3RkVzR4c0xYV3NOQmFmb25ZTTIrVE45QWplbjJlSnhD?=
 =?utf-8?B?TDV5SlovYXRmWjh6RWYvUjhmMk93ek54cjRUd3lHV1BMZHNFMVdpY0RVSDEr?=
 =?utf-8?B?VjNKZXNVc1psK0YzeDV6bTFtZ0xSK3IxUld6clhYejdneW1NRFNxRXl5ckFK?=
 =?utf-8?B?aXhnZGlLemxkbVpCSGZ2ekcxcUhLc3h5Ylc4TVF3MHNudm5RYXF1T2Jpa2hH?=
 =?utf-8?B?Q0JPT0xRZWxUUFZtU1l4V2cxdVNsbHRRV1duUGY2ZllHVTM1L1htK0Y4S0Rr?=
 =?utf-8?B?Q3V2Zks4QXl2MW1HN05rNERPYlJpdnNPK012eC8xeVRRWEJoKzJMSm0yQmxn?=
 =?utf-8?B?Z2IwL2ROS21BbWhFZE9wR1pLMldoZGZ0Q0p3OFB3UW9zb012NzVXZTgvcjFx?=
 =?utf-8?B?QmtlRFY3RmtnQ0RmUDBoNEJyMk9PczVKR05NUi90T2c3Ujk2djEwVnYxY2xJ?=
 =?utf-8?B?Y00vRUx1aHRiT1ZiWmJqb21zbk9Ia0F4TUhGTVJZUG1LeVlNUTgyWUdkdGNh?=
 =?utf-8?B?bks4SFVISG1wbHZUdW9aTHBnMC9DemtGUHF2WncwemJPMm1NUGZlUkZPN3No?=
 =?utf-8?B?bzFISzA5SXBUN0JmS1RTVm1maXhuUmVhNzhROHRtd0U2UWh0Y3ZXZityN3Ev?=
 =?utf-8?B?TlBjV0dScm9wYXhvWnBxTGx4WkZ3WDl2bERRdnZJR1J6SDZOTWlWcDdUY3hq?=
 =?utf-8?B?QzArdDNkam9iZUdQMEpacHhLd0FSUXhjb0czbElPK2ZpK0NsN2xnVW9FaFdS?=
 =?utf-8?B?YzB6MWJ5eXpuOURYSmxLMHhoU0dTTWE0Z1BYM1IyblNCY09iOFB5enlTUGVD?=
 =?utf-8?B?N0w0SnpLeEY0KzhNWXp1VklFUDZhL2hVTHFtQVVjM2ZaWGlETWplTFloS1Nt?=
 =?utf-8?B?OUQ2NloyNE1uUkxjWmh5azIrNGVSbjRLa254SlRlMnNmNm9QUEFCYkdiK295?=
 =?utf-8?B?aklaTUwxUkJFOW4yLzg3UGhsdVZscFZNK3MwelROcG1JSjdhMU8yNWxxZFNK?=
 =?utf-8?B?TmJiTHZKSlhFdURma0NMUHZ1QmlHNWFIM29MVyt0OHY0QWR0ZmVreUF0Wk5R?=
 =?utf-8?Q?c+oPd91qntY9I+B+DMKMqZblP?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	AsNeqsvVXwXVcEoKJU5AUBYO2+5TqqfEUdDUqsppg0PfBWAedu8s/JClmtV2JXs4aX8gHepCcMCUHNoqDoiZwqUhKoeO+v3JNBkHcNyBRoEEV52rU0fqRUPO6ZWZShVjVPeGuOquFTl54Yl1A6hHkwtG6I3SMwNd/6x8sN7EJozfTuqJxUsg0tnq7aO2nDWfZmSTaWyddFcJbJZV6fPNKlooN4ZGyoi6tCOoHslaTNIr1wMeEakhILPs0dRggVZxWO/Aa/koLt6t04xmDG8TjJx4yqFpzTnHyDRVSjGhJxlXikWDFtjkgRU0TXQ5hrawEaQLvBk3/ANoPPVUTHF/EIiRLkFoUcdBeBi2VD68dp5l8ntV6bbhcUqfHAJritYL/2yaORSRQenN0BiDCoIHSnhcJbGtVuw2xaS9S8+5TKzdI0L5YX9muhbUXzydGdfRphy1W6jjfe6XnrEeC0EFjjIVzCjaj/j11Uli1WIicTnfDHlyK+K3KizdvbpJnivJbbJvjLNWxYp8E/+jAMrWZKlq51bfPisOpe1WEYRrpA9wFj1t45jijV+oMEGbUtRaZ0t+Q+dXSaNdub9Hgo51ye8GlOwdgEWigbCv4U2z6xqbKQE7HwbEsb+LjcJMUXL9WYrs1iYpXsGqOujvW9xmpyRPPORaxq4T0GDKIIZ5ad5ygYgvo0uPNHuzuK2lhODO4YHogmiIjDFqyN+5n1dDALrd2oy30KI+vJ8fQdLTS4SxoxNW/eUDpOTJ1Qw4xKY2fOvIhBGKAnaoNCxpKTHE1T2WcaenTN4viJ3CQ/5Dnrg=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6baccc23-a7c3-4a1b-9962-08dbadfbfeff
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 10:36:43.3232
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: BWOX9jlTY2o1454lGnaTkDiB0/+1ckSYYsMVqFsfqmivxDi+rhs7qmYtKhSUBvCUOVFQSpgBc5hPAp/W0rX9Bw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB7541

On Mon, Sep 04, 2023 at 03:40:46PM +0200, Jan Beulich wrote:
> On 31.08.2023 12:57, Roger Pau Monné wrote:
> > On Thu, Aug 31, 2023 at 12:42:58PM +0200, Roger Pau Monné wrote:
> >> On Fri, Oct 12, 2018 at 09:58:46AM -0600, Jan Beulich wrote:
> >>> First of all, hvm_intsrc_mce was not considered here at all, yet nothing
> >>> blocks #MC (other than an already in-progress #MC, but dealing with this
> >>> is not the purpose of this patch).
> >>>
> >>> Additionally STI-shadow only blocks maskable interrupts, but not NMI.
> >>
> >> I've found the Table 25-3 on Intel SDM vol3 quite helpful:
> >>
> >> "Execution of STI with RFLAGS.IF = 0 blocks maskable interrupts on the
> >> instruction boundary following its execution.1 Setting this bit
> >> indicates that this blocking is in effect."
> >>
> >> And:
> >>
> >> "Execution of a MOV to SS or a POP to SS blocks or suppresses certain
> >> debug exceptions as well as interrupts (maskable and nonmaskable) on
> >> the instruction boundary following its execution."
> >>
> >> Might be worth adding to the commit message IMO.
> > 
> > So I've found a further footnote that contains:
> > 
> > "Nonmaskable interrupts and system-management interrupts may also be
> > inhibited on the instruction boundary following such an execution of
> > STI."
> > 
> > So we want to take the more restrictive implementation of STI-shadow,
> > and block #NMI there also.
> 
> Hmm, that text says "may", not will, and imo STI affecting NMI can at best
> be viewed as a quirk (quite possibly intentional, for simplifying some
> internal logic on the processor).

Possibly, but a guest expecting such behavior and Xen not emulating it
would most likely lead to a crash, while forcing the other way around
(Xen blocking NMIs on STI shadow unconditionally) is not likely to
cause issues for OSes not relying on it.

> Plus I'm not convinced AMD allows similar
> leeway in SVM; at least I can't spot any similar statement in their PM.

Hard to tell, in any case I would apply the same reasoning as above,
as IMO implementing STI shadow blocking NMIs is the safer option, and
is what Xen has been doing so far without reported issues that I know
of.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 11:12:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 11:12:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595570.929176 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdTzB-000750-Cb; Tue, 05 Sep 2023 11:12:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595570.929176; Tue, 05 Sep 2023 11:12:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdTzB-00074t-A9; Tue, 05 Sep 2023 11:12:45 +0000
Received: by outflank-mailman (input) for mailman id 595570;
 Tue, 05 Sep 2023 11:12:44 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdTzA-00074j-47; Tue, 05 Sep 2023 11:12:44 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdTzA-0005uS-0p; Tue, 05 Sep 2023 11:12:44 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdTz9-0000YE-Nl; Tue, 05 Sep 2023 11:12:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdTz9-0008In-NJ; Tue, 05 Sep 2023 11:12:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=9EzGWA5/3ksjRWG2DB4ENdsu/tc2BgRdszNPmVtoOQ0=; b=gqxVJ6+F1Dc80zrRQ0joav9Awh
	Zt238MF65RczeG5N+rGCZs3eW+wwF0semSfI6wjMvZMOXKeBuo6N376Z0pbRgWj8T/YrCFUbfPlun
	w4faN4XsEdlXDCFbzA2PkgjD0V2pvpWQKrI9LwgrOnKsUPmRZOmJ5yXQ3ImcpQsREOWk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182631-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182631: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=74b725a64d800822e007e0f449317ff0a8249971
X-Osstest-Versions-That:
    xen=f805cf3e9b87584e16b03b5059b1163fd22bf5a0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 05 Sep 2023 11:12:43 +0000

flight 182631 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182631/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  74b725a64d800822e007e0f449317ff0a8249971
baseline version:
 xen                  f805cf3e9b87584e16b03b5059b1163fd22bf5a0

Last test of basis   182596  2023-09-01 08:02:04 Z    4 days
Testing same since   182631  2023-09-05 08:00:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   f805cf3e9b..74b725a64d  74b725a64d800822e007e0f449317ff0a8249971 -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 12:13:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 12:13:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595601.929217 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdUvs-0006ek-ML; Tue, 05 Sep 2023 12:13:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595601.929217; Tue, 05 Sep 2023 12:13:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdUvs-0006dj-IC; Tue, 05 Sep 2023 12:13:24 +0000
Received: by outflank-mailman (input) for mailman id 595601;
 Tue, 05 Sep 2023 12:13:23 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QKXV=EV=xenbits.xen.org=gdunlap@srs-se1.protection.inumbo.net>)
 id 1qdUvr-0005x3-5A
 for xen-devel@lists.xen.org; Tue, 05 Sep 2023 12:13:23 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 98d16999-4be5-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 14:13:19 +0200 (CEST)
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <gdunlap@xenbits.xen.org>)
 id 1qdUve-0007DA-94; Tue, 05 Sep 2023 12:13:10 +0000
Received: from gdunlap by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <gdunlap@xenbits.xen.org>)
 id 1qdUve-0000uM-7J; Tue, 05 Sep 2023 12:13:10 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 98d16999-4be5-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Date:Message-Id:Subject:CC:From:To:MIME-Version:
	Content-Transfer-Encoding:Content-Type;
	bh=spnz0msETp+VJUNPMgdko2F44ryYPdJkTxl/ALqd22I=; b=hUUGhxXe1YhIr7jC/N3tM3nONv
	uUsW7mu8npgDg+BzdPw//zoAa8nNmdBVAo3WfI7r6OmoLWnCVgLUXCpppAHFXPpRsw7TfQ7VUSo4I
	gOKcptnf/88wbjdo35tHgVOFzSwsZ95lpR2Pf0mv9f04ZC11wdBiYrBdXt+TCcCHUKT0=;
Content-Type: multipart/mixed; boundary="=separator"; charset="utf-8"
Content-Transfer-Encoding: binary
MIME-Version: 1.0
X-Mailer: MIME-tools 5.509 (Entity 5.509)
To: xen-announce@lists.xen.org, xen-devel@lists.xen.org,
 xen-users@lists.xen.org, oss-security@lists.openwall.com
From: Xen.org security team <security@xen.org>
CC: Xen.org security team <security-team-members@xen.org>
Subject: Xen Security Advisory 437 v2 (CVE-2023-34321) - arm32: The cache
 may not be properly cleaned/invalidated
Message-Id: <E1qdUve-0000uM-7J@xenbits.xenproject.org>
Date: Tue, 05 Sep 2023 12:13:10 +0000

--=separator
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

            Xen Security Advisory CVE-2023-34321 / XSA-437
                               version 2

            arm32: The cache may not be properly cleaned/invalidated

UPDATES IN VERSION 2
====================

Public release.

ISSUE DESCRIPTION
=================

Arm provides multiple helpers to clean & invalidate the cache
for a given region.  This is, for instance, used when allocating
guest memory to ensure any writes (such as the ones during scrubbing)
have reached memory before handing over the page to a guest.

Unfortunately, the arithmetics in the helpers can overflow and would
then result to skip the cache cleaning/invalidation.  Therefore there
is no guarantee when all the writes will reach the memory.

IMPACT
======

A malicious guest may be able to read sensitive data from memory that
previously belonged to another guest.

VULNERABLE SYSTEMS
==================

Systems running all version of Xen are affected.

Only systems running Xen on Arm 32-bit are vulnerable.  Xen on Arm 64-bit
is not affected.

MITIGATION
==========

There is no known mitigation.

CREDITS
=======

This issue was discovered by Julien Grall of Amazon.

RESOLUTION
==========

Applying the appropriate attached patch resolves this issue.

Note that patches for released versions are generally prepared to
apply to the stable branches, and may not apply cleanly to the most
recent release tarball.  Downstreams are encouraged to update to the
tip of the stable branch before applying these patches.

xsa437/xsa437.patch           xen-unstable - Xen 4.17.x
xsa437/xsa437-4.16.patch      Xen 4.16.x - Xen 4.15.x

$ sha256sum xsa437* xsa437*/*
259b872275d9d77fc1744df886ffe611d933889bb5ea2833f3c7d8f554eff061  xsa437.meta
31b1a4050403fc83d4ea7619155105001cfd2f739ceb0b0cc7212ab7d0b9d559  xsa437/xsa437.patch
ada8ba64e8562ff6016d456e08b7a171ef356cf476c643df9f66b8650009115c  xsa437/xsa437-4.16.patch
$

DEPLOYMENT DURING EMBARGO
=========================

Deployment of the patches and/or mitigations described above (or
others which are substantially similar) is permitted during the
embargo, even on public-facing systems with untrusted guest users and
administrators.

But: Distribution of updated software is prohibited (except to other
members of the predisclosure list).

Predisclosure list members who wish to deploy significantly different
patches and/or mitigations, please contact the Xen Project Security
Team.

(Note: this during-embargo deployment notice is retained in
post-embargo publicly released Xen Project advisories, even though it
is then no longer applicable.  This is to enable the community to have
oversight of the Xen Project Security Team's decisionmaking.)

For more information about permissible uses of embargoed information,
consult the Xen Project community's agreed Security Policy:
  http://www.xenproject.org/security-policy.html
-----BEGIN PGP SIGNATURE-----

iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAmTorfoMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZIv8H/1Grce6f0aytYn0WTXyMdEXtUCkaHQd/pkNkXTe4
uOfNTBM0z2m6MUBATFNUyTiBqm+I8ywZWDp5UVW8nD2YF2hEIGrhdkDMK+cQg98q
iZ+RW4W0cIjZFTbYXRRUm6RPhp31cx4kvTHKk2+imD1bTa/4SVFyDy2ps5ybim9b
1QnPw2+Kbvd2orx6VHpCjnpTqsElRRA1phN9t87UZhgFBCeeatYizHNNqUrvBZXg
UPsB3ERyxAyMqET82jGboUfwmjpctr1I+p9UvEvY9aViSXy+SMnNi84fFSzBrOXr
EaKUg0glvV3uaNwbvJQfmgkhDUOwXN/ySO7Hcu7QpfmUn70=
=2wxR
-----END PGP SIGNATURE-----

--=separator
Content-Type: application/octet-stream; name="xsa437.meta"
Content-Disposition: attachment; filename="xsa437.meta"
Content-Transfer-Encoding: base64

ewogICJYU0EiOiA0MzcsCiAgIlN1cHBvcnRlZFZlcnNpb25zIjogWwogICAg
Im1hc3RlciIsCiAgICAiNC4xNyIsCiAgICAiNC4xNiIsCiAgICAiNC4xNSIK
ICBdLAogICJUcmVlcyI6IFsKICAgICJ4ZW4iCiAgXSwKICAiUmVjaXBlcyI6
IHsKICAgICI0LjE1IjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAi
eGVuIjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICJkZjMzOTVmNmIyZDc1
OWFiYTM5ZmI2N2E3YmMwZmU0OTE0N2M4YjM5IiwKICAgICAgICAgICJQcmVy
ZXFzIjogW10sCiAgICAgICAgICAiUGF0Y2hlcyI6IFsKICAgICAgICAgICAg
InhzYTQzNy94c2E0MzctNC4xNi5wYXRjaCIKICAgICAgICAgIF0KICAgICAg
ICB9CiAgICAgIH0KICAgIH0sCiAgICAiNC4xNiI6IHsKICAgICAgIlJlY2lw
ZXMiOiB7CiAgICAgICAgInhlbiI6IHsKICAgICAgICAgICJTdGFibGVSZWYi
OiAiODlmZTZkMGVkZWE4NDFkMWQyNjkwY2YzZjUxNzNlMzM0YzY4NzgyMyIs
CiAgICAgICAgICAiUHJlcmVxcyI6IFtdLAogICAgICAgICAgIlBhdGNoZXMi
OiBbCiAgICAgICAgICAgICJ4c2E0MzcveHNhNDM3LTQuMTYucGF0Y2giCiAg
ICAgICAgICBdCiAgICAgICAgfQogICAgICB9CiAgICB9LAogICAgIjQuMTci
OiB7CiAgICAgICJSZWNpcGVzIjogewogICAgICAgICJ4ZW4iOiB7CiAgICAg
ICAgICAiU3RhYmxlUmVmIjogIjMxNDFhMGI4NWMzN2I3NmUwNjllYzdkY2I5
MDZmZjIwMmY1YzQwNzUiLAogICAgICAgICAgIlByZXJlcXMiOiBbXSwKICAg
ICAgICAgICJQYXRjaGVzIjogWwogICAgICAgICAgICAieHNhNDM3L3hzYTQz
Ny5wYXRjaCIKICAgICAgICAgIF0KICAgICAgICB9CiAgICAgIH0KICAgIH0s
CiAgICAibWFzdGVyIjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAi
eGVuIjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICIwMWNhMjlmMGIxN2E1
MGE5NGIwZTIzMmJhMjc2YzMyZTk1ZDgwYWUzIiwKICAgICAgICAgICJQcmVy
ZXFzIjogW10sCiAgICAgICAgICAiUGF0Y2hlcyI6IFsKICAgICAgICAgICAg
InhzYTQzNy94c2E0MzcucGF0Y2giCiAgICAgICAgICBdCiAgICAgICAgfQog
ICAgICB9CiAgICB9CiAgfQp9Cg==

--=separator
Content-Type: application/octet-stream; name="xsa437/xsa437.patch"
Content-Disposition: attachment; filename="xsa437/xsa437.patch"
Content-Transfer-Encoding: base64

RnJvbSA3ZmFjNTk3MTM0MGExM2NhOTQ1ODE5NTMwNWJjZmUxNGRmMmU1MmQy
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVmYW5vIFN0YWJl
bGxpbmkgPHN0ZWZhbm8uc3RhYmVsbGluaUBhbWQuY29tPgpEYXRlOiBUaHUs
IDE3IEF1ZyAyMDIzIDEzOjQxOjM1ICswMTAwClN1YmplY3Q6IFtQQVRDSF0g
eGVuL2FybTogcGFnZTogSGFuZGxlIGNhY2hlIGZsdXNoIG9mIGFuIGVsZW1l
bnQgYXQgdGhlIHRvcCBvZgogdGhlIGFkZHJlc3Mgc3BhY2UKClRoZSByZWdp
b24gdGhhdCBuZWVkcyB0byBiZSBjbGVhbmVkL2ludmFsaWRhdGVkIG1heSBi
ZSBhdCB0aGUgdG9wCm9mIHRoZSBhZGRyZXNzIHNwYWNlLiBUaGlzIG1lYW5z
IHRoYXQgJ2VuZCcgKGkuZS4gJ3AgKyBzaXplJykgd2lsbApiZSAwIGFuZCB0
aGVyZWZvcmUgbm90aGluZyB3aWxsIGJlIGNsZWFuZWQvaW52YWxpZGF0ZWQg
YXMgdGhlIGNoZWNrCmluIHRoZSBsb29wIHdpbGwgYWx3YXlzIGJlIGZhbHNl
LgoKT24gQXJtNjQsIHdlIG9ubHkgc3VwcG9ydCB3ZSBvbmx5IHN1cHBvcnQg
dXAgdG8gNDgtYml0IFZpcnR1YWwKYWRkcmVzcyBzcGFjZS4gU28gdGhpcyBp
cyBub3QgYSBjb25jZXJuIHRoZXJlLiBIb3dldmVyLCBmb3IgMzItYml0LAp0
aGUgbWFwY2FjaGUgaXMgdXNpbmcgdGhlIGxhc3QgMkdCIG9mIHRoZSBhZGRy
ZXNzIHNwYWNlLiBUaGVyZWZvcmUKd2UgbWF5IG5vdCBjbGVhbi9pbnZhbGlk
YXRlIHByb3Blcmx5IHNvbWUgcGFnZXMuIFRoaXMgY291bGQgbGVhZAp0byBt
ZW1vcnkgY29ycnVwdGlvbiBvciBkYXRhIGxlYWthZ2UgKHRoZSBzY3J1YmJl
ZCB2YWx1ZSBtYXkKc3RpbGwgc2l0IGluIHRoZSBjYWNoZSB3aGVuIHRoZSBn
dWVzdCBjb3VsZCByZWFkIGRpcmVjdGx5IHRoZSBtZW1vcnkKYW5kIHRoZXJl
Zm9yZSByZWFkIHRoZSBvbGQgY29udGVudCkuCgpSZXdvcmsgaW52YWxpZGF0
ZV9kY2FjaGVfdmFfcmFuZ2UoKSwgY2xlYW5fZGNhY2hlX3ZhX3JhbmdlKCks
CmNsZWFuX2FuZF9pbnZhbGlkYXRlX2RjYWNoZV92YV9yYW5nZSgpIHRvIGhh
bmRsZSBhIGNhY2hlIGZsdXNoCndpdGggYW4gZWxlbWVudCBhdCB0aGUgdG9w
IG9mIHRoZSBhZGRyZXNzIHNwYWNlLgoKVGhpcyBpcyBDVkUtMjAyMy0zNDMy
MSAvIFhTQS00MzcuCgpSZXBvcnRlZC1ieTogSnVsaWVuIEdyYWxsIDxqZ3Jh
bGxAYW1hem9uLmNvbT4KU2lnbmVkLW9mZi1ieTogU3RlZmFubyBTdGFiZWxs
aW5pIDxzdGVmYW5vLnN0YWJlbGxpbmlAYW1kLmNvbT4KU2lnbmVkLW9mZi1i
eTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KQWNrZWQtYnk6
IEJlcnRyYW5kIE1hcnF1aXMgPGJlcnRyYW5kLm1hcnF1aXNAYXJtLmNvbT4K
Ci0tLQogeGVuL2FyY2gvYXJtL2luY2x1ZGUvYXNtL3BhZ2UuaCB8IDMzICsr
KysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5n
ZWQsIDIwIGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQoKZGlmZiAt
LWdpdCBhL3hlbi9hcmNoL2FybS9pbmNsdWRlL2FzbS9wYWdlLmggYi94ZW4v
YXJjaC9hcm0vaW5jbHVkZS9hc20vcGFnZS5oCmluZGV4IGU3Y2Q2MjE5MGM3
Zi4uZDdmZTc3MGE1ZTQ5IDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0vaW5j
bHVkZS9hc20vcGFnZS5oCisrKyBiL3hlbi9hcmNoL2FybS9pbmNsdWRlL2Fz
bS9wYWdlLmgKQEAgLTE2MCwyNiArMTYwLDI1IEBAIHN0YXRpYyBpbmxpbmUg
c2l6ZV90IHJlYWRfZGNhY2hlX2xpbmVfYnl0ZXModm9pZCkKIAogc3RhdGlj
IGlubGluZSBpbnQgaW52YWxpZGF0ZV9kY2FjaGVfdmFfcmFuZ2UoY29uc3Qg
dm9pZCAqcCwgdW5zaWduZWQgbG9uZyBzaXplKQogewotICAgIGNvbnN0IHZv
aWQgKmVuZCA9IHAgKyBzaXplOwogICAgIHNpemVfdCBjYWNoZWxpbmVfbWFz
ayA9IGRjYWNoZV9saW5lX2J5dGVzIC0gMTsKIAogICAgIGRzYihzeSk7ICAg
ICAgICAgICAvKiBTbyB0aGUgQ1BVIGlzc3VlcyBhbGwgd3JpdGVzIHRvIHRo
ZSByYW5nZSAqLwogCiAgICAgaWYgKCAodWludHB0cl90KXAgJiBjYWNoZWxp
bmVfbWFzayApCiAgICAgeworICAgICAgICBzaXplIC09IGRjYWNoZV9saW5l
X2J5dGVzIC0gKCh1aW50cHRyX3QpcCAmIGNhY2hlbGluZV9tYXNrKTsKICAg
ICAgICAgcCA9ICh2b2lkICopKCh1aW50cHRyX3QpcCAmIH5jYWNoZWxpbmVf
bWFzayk7CiAgICAgICAgIGFzbSB2b2xhdGlsZSAoX19jbGVhbl9hbmRfaW52
YWxpZGF0ZV9kY2FjaGVfb25lKDApIDogOiAiciIgKHApKTsKICAgICAgICAg
cCArPSBkY2FjaGVfbGluZV9ieXRlczsKICAgICB9Ci0gICAgaWYgKCAodWlu
dHB0cl90KWVuZCAmIGNhY2hlbGluZV9tYXNrICkKLSAgICB7Ci0gICAgICAg
IGVuZCA9ICh2b2lkICopKCh1aW50cHRyX3QpZW5kICYgfmNhY2hlbGluZV9t
YXNrKTsKLSAgICAgICAgYXNtIHZvbGF0aWxlIChfX2NsZWFuX2FuZF9pbnZh
bGlkYXRlX2RjYWNoZV9vbmUoMCkgOiA6ICJyIiAoZW5kKSk7Ci0gICAgfQog
Ci0gICAgZm9yICggOyBwIDwgZW5kOyBwICs9IGRjYWNoZV9saW5lX2J5dGVz
ICkKKyAgICBmb3IgKCA7IHNpemUgPj0gZGNhY2hlX2xpbmVfYnl0ZXM7Cisg
ICAgICAgICAgICBwICs9IGRjYWNoZV9saW5lX2J5dGVzLCBzaXplIC09IGRj
YWNoZV9saW5lX2J5dGVzICkKICAgICAgICAgYXNtIHZvbGF0aWxlIChfX2lu
dmFsaWRhdGVfZGNhY2hlX29uZSgwKSA6IDogInIiIChwKSk7CiAKKyAgICBp
ZiAoIHNpemUgPiAwICkKKyAgICAgICAgYXNtIHZvbGF0aWxlIChfX2NsZWFu
X2FuZF9pbnZhbGlkYXRlX2RjYWNoZV9vbmUoMCkgOiA6ICJyIiAocCkpOwor
CiAgICAgZHNiKHN5KTsgICAgICAgICAgIC8qIFNvIHdlIGtub3cgdGhlIGZs
dXNoZXMgaGFwcGVuIGJlZm9yZSBjb250aW51aW5nICovCiAKICAgICByZXR1
cm4gMDsKQEAgLTE4NywxMCArMTg2LDE0IEBAIHN0YXRpYyBpbmxpbmUgaW50
IGludmFsaWRhdGVfZGNhY2hlX3ZhX3JhbmdlKGNvbnN0IHZvaWQgKnAsIHVu
c2lnbmVkIGxvbmcgc2l6ZSkKIAogc3RhdGljIGlubGluZSBpbnQgY2xlYW5f
ZGNhY2hlX3ZhX3JhbmdlKGNvbnN0IHZvaWQgKnAsIHVuc2lnbmVkIGxvbmcg
c2l6ZSkKIHsKLSAgICBjb25zdCB2b2lkICplbmQgPSBwICsgc2l6ZTsKKyAg
ICBzaXplX3QgY2FjaGVsaW5lX21hc2sgPSBkY2FjaGVfbGluZV9ieXRlcyAt
IDE7CisKICAgICBkc2Ioc3kpOyAgICAgICAgICAgLyogU28gdGhlIENQVSBp
c3N1ZXMgYWxsIHdyaXRlcyB0byB0aGUgcmFuZ2UgKi8KLSAgICBwID0gKHZv
aWQgKikoKHVpbnRwdHJfdClwICYgfihkY2FjaGVfbGluZV9ieXRlcyAtIDEp
KTsKLSAgICBmb3IgKCA7IHAgPCBlbmQ7IHAgKz0gZGNhY2hlX2xpbmVfYnl0
ZXMgKQorICAgIHNpemUgKz0gKHVpbnRwdHJfdClwICYgY2FjaGVsaW5lX21h
c2s7CisgICAgc2l6ZSA9IChzaXplICsgY2FjaGVsaW5lX21hc2spICYgfmNh
Y2hlbGluZV9tYXNrOworICAgIHAgPSAodm9pZCAqKSgodWludHB0cl90KXAg
JiB+Y2FjaGVsaW5lX21hc2spOworICAgIGZvciAoIDsgc2l6ZSA+PSBkY2Fj
aGVfbGluZV9ieXRlczsKKyAgICAgICAgICAgIHAgKz0gZGNhY2hlX2xpbmVf
Ynl0ZXMsIHNpemUgLT0gZGNhY2hlX2xpbmVfYnl0ZXMgKQogICAgICAgICBh
c20gdm9sYXRpbGUgKF9fY2xlYW5fZGNhY2hlX29uZSgwKSA6IDogInIiIChw
KSk7CiAgICAgZHNiKHN5KTsgICAgICAgICAgIC8qIFNvIHdlIGtub3cgdGhl
IGZsdXNoZXMgaGFwcGVuIGJlZm9yZSBjb250aW51aW5nICovCiAgICAgLyog
QVJNIGNhbGxlcnMgYXNzdW1lIHRoYXQgZGNhY2hlXyogZnVuY3Rpb25zIGNh
bm5vdCBmYWlsLiAqLwpAQCAtMjAwLDEwICsyMDMsMTQgQEAgc3RhdGljIGlu
bGluZSBpbnQgY2xlYW5fZGNhY2hlX3ZhX3JhbmdlKGNvbnN0IHZvaWQgKnAs
IHVuc2lnbmVkIGxvbmcgc2l6ZSkKIHN0YXRpYyBpbmxpbmUgaW50IGNsZWFu
X2FuZF9pbnZhbGlkYXRlX2RjYWNoZV92YV9yYW5nZQogICAgIChjb25zdCB2
b2lkICpwLCB1bnNpZ25lZCBsb25nIHNpemUpCiB7Ci0gICAgY29uc3Qgdm9p
ZCAqZW5kID0gcCArIHNpemU7CisgICAgc2l6ZV90IGNhY2hlbGluZV9tYXNr
ID0gZGNhY2hlX2xpbmVfYnl0ZXMgLSAxOworCiAgICAgZHNiKHN5KTsgICAg
ICAgICAvKiBTbyB0aGUgQ1BVIGlzc3VlcyBhbGwgd3JpdGVzIHRvIHRoZSBy
YW5nZSAqLwotICAgIHAgPSAodm9pZCAqKSgodWludHB0cl90KXAgJiB+KGRj
YWNoZV9saW5lX2J5dGVzIC0gMSkpOwotICAgIGZvciAoIDsgcCA8IGVuZDsg
cCArPSBkY2FjaGVfbGluZV9ieXRlcyApCisgICAgc2l6ZSArPSAodWludHB0
cl90KXAgJiBjYWNoZWxpbmVfbWFzazsKKyAgICBzaXplID0gKHNpemUgKyBj
YWNoZWxpbmVfbWFzaykgJiB+Y2FjaGVsaW5lX21hc2s7CisgICAgcCA9ICh2
b2lkICopKCh1aW50cHRyX3QpcCAmIH5jYWNoZWxpbmVfbWFzayk7CisgICAg
Zm9yICggOyBzaXplID49IGRjYWNoZV9saW5lX2J5dGVzOworICAgICAgICAg
ICAgcCArPSBkY2FjaGVfbGluZV9ieXRlcywgc2l6ZSAtPSBkY2FjaGVfbGlu
ZV9ieXRlcyApCiAgICAgICAgIGFzbSB2b2xhdGlsZSAoX19jbGVhbl9hbmRf
aW52YWxpZGF0ZV9kY2FjaGVfb25lKDApIDogOiAiciIgKHApKTsKICAgICBk
c2Ioc3kpOyAgICAgICAgIC8qIFNvIHdlIGtub3cgdGhlIGZsdXNoZXMgaGFw
cGVuIGJlZm9yZSBjb250aW51aW5nICovCiAgICAgLyogQVJNIGNhbGxlcnMg
YXNzdW1lIHRoYXQgZGNhY2hlXyogZnVuY3Rpb25zIGNhbm5vdCBmYWlsLiAq
LwotLSAKMi40MC4xCgo=

--=separator
Content-Type: application/octet-stream; name="xsa437/xsa437-4.16.patch"
Content-Disposition: attachment; filename="xsa437/xsa437-4.16.patch"
Content-Transfer-Encoding: base64

RnJvbSAyYjIxMzE5ZWVjZDg2MjMwNzhmMjdmMGJjY2JiZmRlYjI2NjA2ZmYx
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVmYW5vIFN0YWJl
bGxpbmkgPHN0ZWZhbm8uc3RhYmVsbGluaUBhbWQuY29tPgpEYXRlOiBUaHUs
IDE3IEF1ZyAyMDIzIDEzOjQxOjM1ICswMTAwClN1YmplY3Q6IFtQQVRDSF0g
eGVuL2FybTogcGFnZTogSGFuZGxlIGNhY2hlIGZsdXNoIG9mIGFuIGVsZW1l
bnQgYXQgdGhlIHRvcCBvZgogdGhlIGFkZHJlc3Mgc3BhY2UKClRoZSByZWdp
b24gdGhhdCBuZWVkcyB0byBiZSBjbGVhbmVkL2ludmFsaWRhdGVkIG1heSBi
ZSBhdCB0aGUgdG9wCm9mIHRoZSBhZGRyZXNzIHNwYWNlLiBUaGlzIG1lYW5z
IHRoYXQgJ2VuZCcgKGkuZS4gJ3AgKyBzaXplJykgd2lsbApiZSAwIGFuZCB0
aGVyZWZvcmUgbm90aGluZyB3aWxsIGJlIGNsZWFuZWQvaW52YWxpZGF0ZWQg
YXMgdGhlIGNoZWNrCmluIHRoZSBsb29wIHdpbGwgYWx3YXlzIGJlIGZhbHNl
LgoKT24gQXJtNjQsIHdlIG9ubHkgc3VwcG9ydCB3ZSBvbmx5IHN1cHBvcnQg
dXAgdG8gNDgtYml0IFZpcnR1YWwKYWRkcmVzcyBzcGFjZS4gU28gdGhpcyBp
cyBub3QgYSBjb25jZXJuIHRoZXJlLiBIb3dldmVyLCBmb3IgMzItYml0LAp0
aGUgbWFwY2FjaGUgaXMgdXNpbmcgdGhlIGxhc3QgMkdCIG9mIHRoZSBhZGRy
ZXNzIHNwYWNlLiBUaGVyZWZvcmUKd2UgbWF5IG5vdCBjbGVhbi9pbnZhbGlk
YXRlIHByb3Blcmx5IHNvbWUgcGFnZXMuIFRoaXMgY291bGQgbGVhZAp0byBt
ZW1vcnkgY29ycnVwdGlvbiBvciBkYXRhIGxlYWthZ2UgKHRoZSBzY3J1YmJl
ZCB2YWx1ZSBtYXkKc3RpbGwgc2l0IGluIHRoZSBjYWNoZSB3aGVuIHRoZSBn
dWVzdCBjb3VsZCByZWFkIGRpcmVjdGx5IHRoZSBtZW1vcnkKYW5kIHRoZXJl
Zm9yZSByZWFkIHRoZSBvbGQgY29udGVudCkuCgpSZXdvcmsgaW52YWxpZGF0
ZV9kY2FjaGVfdmFfcmFuZ2UoKSwgY2xlYW5fZGNhY2hlX3ZhX3JhbmdlKCks
CmNsZWFuX2FuZF9pbnZhbGlkYXRlX2RjYWNoZV92YV9yYW5nZSgpIHRvIGhh
bmRsZSBhIGNhY2hlIGZsdXNoCndpdGggYW4gZWxlbWVudCBhdCB0aGUgdG9w
IG9mIHRoZSBhZGRyZXNzIHNwYWNlLgoKVGhpcyBpcyBDVkUtMjAyMy0zNDMy
MSAvIFhTQS00MzcuCgpSZXBvcnRlZC1ieTogSnVsaWVuIEdyYWxsIDxqZ3Jh
bGxAYW1hem9uLmNvbT4KU2lnbmVkLW9mZi1ieTogU3RlZmFubyBTdGFiZWxs
aW5pIDxzdGVmYW5vLnN0YWJlbGxpbmlAYW1kLmNvbT4KU2lnbmVkLW9mZi1i
eTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KQWNrZWQtYnk6
IEJlcnRyYW5kIE1hcnF1aXMgPGJlcnRyYW5kLm1hcnF1aXNAYXJtLmNvbT4K
Ci0tLQogeGVuL2luY2x1ZGUvYXNtLWFybS9wYWdlLmggfCAzMyArKysrKysr
KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAy
MCBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg
YS94ZW4vaW5jbHVkZS9hc20tYXJtL3BhZ2UuaCBiL3hlbi9pbmNsdWRlL2Fz
bS1hcm0vcGFnZS5oCmluZGV4IGM2ZjlmYjBkNGUwYy4uZWZmNTg4M2VmODdi
IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20tYXJtL3BhZ2UuaAorKysg
Yi94ZW4vaW5jbHVkZS9hc20tYXJtL3BhZ2UuaApAQCAtMTUyLDI2ICsxNTIs
MjUgQEAgc3RhdGljIGlubGluZSBzaXplX3QgcmVhZF9kY2FjaGVfbGluZV9i
eXRlcyh2b2lkKQogCiBzdGF0aWMgaW5saW5lIGludCBpbnZhbGlkYXRlX2Rj
YWNoZV92YV9yYW5nZShjb25zdCB2b2lkICpwLCB1bnNpZ25lZCBsb25nIHNp
emUpCiB7Ci0gICAgY29uc3Qgdm9pZCAqZW5kID0gcCArIHNpemU7CiAgICAg
c2l6ZV90IGNhY2hlbGluZV9tYXNrID0gZGNhY2hlX2xpbmVfYnl0ZXMgLSAx
OwogCiAgICAgZHNiKHN5KTsgICAgICAgICAgIC8qIFNvIHRoZSBDUFUgaXNz
dWVzIGFsbCB3cml0ZXMgdG8gdGhlIHJhbmdlICovCiAKICAgICBpZiAoICh1
aW50cHRyX3QpcCAmIGNhY2hlbGluZV9tYXNrICkKICAgICB7CisgICAgICAg
IHNpemUgLT0gZGNhY2hlX2xpbmVfYnl0ZXMgLSAoKHVpbnRwdHJfdClwICYg
Y2FjaGVsaW5lX21hc2spOwogICAgICAgICBwID0gKHZvaWQgKikoKHVpbnRw
dHJfdClwICYgfmNhY2hlbGluZV9tYXNrKTsKICAgICAgICAgYXNtIHZvbGF0
aWxlIChfX2NsZWFuX2FuZF9pbnZhbGlkYXRlX2RjYWNoZV9vbmUoMCkgOiA6
ICJyIiAocCkpOwogICAgICAgICBwICs9IGRjYWNoZV9saW5lX2J5dGVzOwog
ICAgIH0KLSAgICBpZiAoICh1aW50cHRyX3QpZW5kICYgY2FjaGVsaW5lX21h
c2sgKQotICAgIHsKLSAgICAgICAgZW5kID0gKHZvaWQgKikoKHVpbnRwdHJf
dCllbmQgJiB+Y2FjaGVsaW5lX21hc2spOwotICAgICAgICBhc20gdm9sYXRp
bGUgKF9fY2xlYW5fYW5kX2ludmFsaWRhdGVfZGNhY2hlX29uZSgwKSA6IDog
InIiIChlbmQpKTsKLSAgICB9CiAKLSAgICBmb3IgKCA7IHAgPCBlbmQ7IHAg
Kz0gZGNhY2hlX2xpbmVfYnl0ZXMgKQorICAgIGZvciAoIDsgc2l6ZSA+PSBk
Y2FjaGVfbGluZV9ieXRlczsKKyAgICAgICAgICAgIHAgKz0gZGNhY2hlX2xp
bmVfYnl0ZXMsIHNpemUgLT0gZGNhY2hlX2xpbmVfYnl0ZXMgKQogICAgICAg
ICBhc20gdm9sYXRpbGUgKF9faW52YWxpZGF0ZV9kY2FjaGVfb25lKDApIDog
OiAiciIgKHApKTsKIAorICAgIGlmICggc2l6ZSA+IDAgKQorICAgICAgICBh
c20gdm9sYXRpbGUgKF9fY2xlYW5fYW5kX2ludmFsaWRhdGVfZGNhY2hlX29u
ZSgwKSA6IDogInIiIChwKSk7CisKICAgICBkc2Ioc3kpOyAgICAgICAgICAg
LyogU28gd2Uga25vdyB0aGUgZmx1c2hlcyBoYXBwZW4gYmVmb3JlIGNvbnRp
bnVpbmcgKi8KIAogICAgIHJldHVybiAwOwpAQCAtMTc5LDEwICsxNzgsMTQg
QEAgc3RhdGljIGlubGluZSBpbnQgaW52YWxpZGF0ZV9kY2FjaGVfdmFfcmFu
Z2UoY29uc3Qgdm9pZCAqcCwgdW5zaWduZWQgbG9uZyBzaXplKQogCiBzdGF0
aWMgaW5saW5lIGludCBjbGVhbl9kY2FjaGVfdmFfcmFuZ2UoY29uc3Qgdm9p
ZCAqcCwgdW5zaWduZWQgbG9uZyBzaXplKQogewotICAgIGNvbnN0IHZvaWQg
KmVuZCA9IHAgKyBzaXplOworICAgIHNpemVfdCBjYWNoZWxpbmVfbWFzayA9
IGRjYWNoZV9saW5lX2J5dGVzIC0gMTsKKwogICAgIGRzYihzeSk7ICAgICAg
ICAgICAvKiBTbyB0aGUgQ1BVIGlzc3VlcyBhbGwgd3JpdGVzIHRvIHRoZSBy
YW5nZSAqLwotICAgIHAgPSAodm9pZCAqKSgodWludHB0cl90KXAgJiB+KGRj
YWNoZV9saW5lX2J5dGVzIC0gMSkpOwotICAgIGZvciAoIDsgcCA8IGVuZDsg
cCArPSBkY2FjaGVfbGluZV9ieXRlcyApCisgICAgc2l6ZSArPSAodWludHB0
cl90KXAgJiBjYWNoZWxpbmVfbWFzazsKKyAgICBzaXplID0gKHNpemUgKyBj
YWNoZWxpbmVfbWFzaykgJiB+Y2FjaGVsaW5lX21hc2s7CisgICAgcCA9ICh2
b2lkICopKCh1aW50cHRyX3QpcCAmIH5jYWNoZWxpbmVfbWFzayk7CisgICAg
Zm9yICggOyBzaXplID49IGRjYWNoZV9saW5lX2J5dGVzOworICAgICAgICAg
ICAgcCArPSBkY2FjaGVfbGluZV9ieXRlcywgc2l6ZSAtPSBkY2FjaGVfbGlu
ZV9ieXRlcyApCiAgICAgICAgIGFzbSB2b2xhdGlsZSAoX19jbGVhbl9kY2Fj
aGVfb25lKDApIDogOiAiciIgKHApKTsKICAgICBkc2Ioc3kpOyAgICAgICAg
ICAgLyogU28gd2Uga25vdyB0aGUgZmx1c2hlcyBoYXBwZW4gYmVmb3JlIGNv
bnRpbnVpbmcgKi8KICAgICAvKiBBUk0gY2FsbGVycyBhc3N1bWUgdGhhdCBk
Y2FjaGVfKiBmdW5jdGlvbnMgY2Fubm90IGZhaWwuICovCkBAIC0xOTIsMTAg
KzE5NSwxNCBAQCBzdGF0aWMgaW5saW5lIGludCBjbGVhbl9kY2FjaGVfdmFf
cmFuZ2UoY29uc3Qgdm9pZCAqcCwgdW5zaWduZWQgbG9uZyBzaXplKQogc3Rh
dGljIGlubGluZSBpbnQgY2xlYW5fYW5kX2ludmFsaWRhdGVfZGNhY2hlX3Zh
X3JhbmdlCiAgICAgKGNvbnN0IHZvaWQgKnAsIHVuc2lnbmVkIGxvbmcgc2l6
ZSkKIHsKLSAgICBjb25zdCB2b2lkICplbmQgPSBwICsgc2l6ZTsKKyAgICBz
aXplX3QgY2FjaGVsaW5lX21hc2sgPSBkY2FjaGVfbGluZV9ieXRlcyAtIDE7
CisKICAgICBkc2Ioc3kpOyAgICAgICAgIC8qIFNvIHRoZSBDUFUgaXNzdWVz
IGFsbCB3cml0ZXMgdG8gdGhlIHJhbmdlICovCi0gICAgcCA9ICh2b2lkICop
KCh1aW50cHRyX3QpcCAmIH4oZGNhY2hlX2xpbmVfYnl0ZXMgLSAxKSk7Ci0g
ICAgZm9yICggOyBwIDwgZW5kOyBwICs9IGRjYWNoZV9saW5lX2J5dGVzICkK
KyAgICBzaXplICs9ICh1aW50cHRyX3QpcCAmIGNhY2hlbGluZV9tYXNrOwor
ICAgIHNpemUgPSAoc2l6ZSArIGNhY2hlbGluZV9tYXNrKSAmIH5jYWNoZWxp
bmVfbWFzazsKKyAgICBwID0gKHZvaWQgKikoKHVpbnRwdHJfdClwICYgfmNh
Y2hlbGluZV9tYXNrKTsKKyAgICBmb3IgKCA7IHNpemUgPj0gZGNhY2hlX2xp
bmVfYnl0ZXM7CisgICAgICAgICAgICBwICs9IGRjYWNoZV9saW5lX2J5dGVz
LCBzaXplIC09IGRjYWNoZV9saW5lX2J5dGVzICkKICAgICAgICAgYXNtIHZv
bGF0aWxlIChfX2NsZWFuX2FuZF9pbnZhbGlkYXRlX2RjYWNoZV9vbmUoMCkg
OiA6ICJyIiAocCkpOwogICAgIGRzYihzeSk7ICAgICAgICAgLyogU28gd2Ug
a25vdyB0aGUgZmx1c2hlcyBoYXBwZW4gYmVmb3JlIGNvbnRpbnVpbmcgKi8K
ICAgICAvKiBBUk0gY2FsbGVycyBhc3N1bWUgdGhhdCBkY2FjaGVfKiBmdW5j
dGlvbnMgY2Fubm90IGZhaWwuICovCi0tIAoyLjQwLjEKCg==

--=separator--


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 12:21:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 12:21:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595649.929230 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdV3a-0000wU-EN; Tue, 05 Sep 2023 12:21:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595649.929230; Tue, 05 Sep 2023 12:21:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdV3a-0000wL-B1; Tue, 05 Sep 2023 12:21:22 +0000
Received: by outflank-mailman (input) for mailman id 595649;
 Tue, 05 Sep 2023 12:21:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=ddRg=EV=linaro.org=philmd@srs-se1.protection.inumbo.net>)
 id 1qdV3Z-0000wD-BY
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 12:21:21 +0000
Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com
 [2a00:1450:4864:20::329])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b280f1a6-4be6-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 14:21:16 +0200 (CEST)
Received: by mail-wm1-x329.google.com with SMTP id
 5b1f17b1804b1-3fbd33a57b6so22832255e9.2
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 05:21:10 -0700 (PDT)
Received: from localhost.localdomain ([37.69.27.38])
 by smtp.gmail.com with ESMTPSA id
 c4-20020adfe704000000b0031c5e9c2ed7sm17364203wrm.92.2023.09.05.05.21.01
 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256);
 Tue, 05 Sep 2023 05:21:01 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b280f1a6-4be6-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1693916462; x=1694521262; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=vo1aRaoDGIJk9TkLkiwceh/LZhlV95aaWzCdG9GKBDU=;
        b=L66FSv2K8WEHYtcSJiqo1ZAKD6q2cz8cFG8hvsbRzTGWgMYJtuRcsPCyV9H3RbNxm6
         1zrhi0vc2VI6P4syzuX2PwC+ZE5Ip4+PzA9EekyZGG/QZ0jzNNsNPeYGS2SNDn5wkbLW
         7Ucg3U2gOhB+3CTkA2qAzv23Cpm9WiiEThM3dJUvw60GUXq/8oST0UFLzSvQPEe8FAGx
         /5x9RyPeGNneRXz9nZD/LUV/DYZ7VA9jrmYZR06IaERJdrn6akCWUDDHKPnojlXDO0W4
         Jlp8wyU5WYFACty0krloAJJkL/LP+7JNe6fXIJHyzlot1rmFPcNYbsEdnaPTcN15599I
         y/qw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693916462; x=1694521262;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=vo1aRaoDGIJk9TkLkiwceh/LZhlV95aaWzCdG9GKBDU=;
        b=a7HGM0XkvZlMuTxYh6eEyfe12DOahWWOenwgrKBE5VcUvrD8O2QfnYXZs6vCJlkuRD
         U8Ey9Ty4GALnHH8oZkGSbGsTk6H0CnIB4W5kWLqjCNvOgf5iEmOIRzjFOOVNXE+zn1Ej
         lmCJbH2O95wEKy8VtITrFWZmaw639AczsiT6gMOIMCmu3WwsuhcVSE0RBVuFdH12dHcU
         aRINky9Z4uZWviyFc6mONyWZvKzgDU0liKiDQUoeAoxvRbjizhDgh04uFxyfdRhpzA9t
         yJCdDVeEPgkzwcubbzG7dPELS0tvx3b52EIiHGwr3pmrLvjFUumVyWH8oVKcMZnisX3K
         S1AA==
X-Gm-Message-State: AOJu0YxvvCHJsqDeOKPdSvZtAaKqPBECRwmyAqRZN/pdVo5lq4D/t4Ws
	0plJ3FSncKUCGYhAhrgCr1KRfA==
X-Google-Smtp-Source: AGHT+IGj+FWbnOLg0Wi9eXeWmYpkHUZdidVng2m9pM2hnF3MRQ/aMSTXN0nrcceqHNV4hMS2iFeAfg==
X-Received: by 2002:a5d:4843:0:b0:317:3c89:7f03 with SMTP id n3-20020a5d4843000000b003173c897f03mr9032646wrs.5.1693916462037;
        Tue, 05 Sep 2023 05:21:02 -0700 (PDT)
From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: xen-devel@lists.xenproject.org,
	Anthony Perard <anthony.perard@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>
Subject: [PATCH v4 0/3] sysemu/accel: Simplify sysemu/xen.h
Date: Tue,  5 Sep 2023 14:20:56 +0200
Message-ID: <20230905122100.5787-1-philmd@linaro.org>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

Trivial cleanups which simplify "sysemu/xen.h".

Philippe Mathieu-Daudé (3):
  sysemu/xen: Remove unuseful CONFIG_USER_ONLY header guard
  sysemu/xen: Remove unreachable xen_ram_alloc() code
  sysemu/xen: Allow elision of xen_hvm_modified_memory()

 include/exec/ram_addr.h |  8 ++++++--
 include/sysemu/xen.h    | 24 +++---------------------
 2 files changed, 9 insertions(+), 23 deletions(-)

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 12:21:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 12:21:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595650.929240 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdV3y-0001Jj-LO; Tue, 05 Sep 2023 12:21:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595650.929240; Tue, 05 Sep 2023 12:21:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdV3y-0001Ja-Ie; Tue, 05 Sep 2023 12:21:46 +0000
Received: by outflank-mailman (input) for mailman id 595650;
 Tue, 05 Sep 2023 12:21:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=ddRg=EV=linaro.org=philmd@srs-se1.protection.inumbo.net>)
 id 1qdV3x-0000wD-CJ
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 12:21:45 +0000
Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com
 [2a00:1450:4864:20::233])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c7062385-4be6-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 14:21:44 +0200 (CEST)
Received: by mail-lj1-x233.google.com with SMTP id
 38308e7fff4ca-2bd0d135ca3so40691601fa.3
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 05:21:44 -0700 (PDT)
Received: from localhost.localdomain ([37.69.27.38])
 by smtp.gmail.com with ESMTPSA id
 c20-20020a7bc854000000b003feef5b0bb7sm16637862wml.40.2023.09.05.05.21.43
 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256);
 Tue, 05 Sep 2023 05:21:44 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c7062385-4be6-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1693916504; x=1694521304; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=vo1aRaoDGIJk9TkLkiwceh/LZhlV95aaWzCdG9GKBDU=;
        b=BfgVQRCDJOnM3yMK0uJ3hBQUY/9lG2QjDWObb9idP19MoTmhXCYk5gwxVxqivRiY6F
         rO+SxPxF3M0VD2JB2MT+wQZtZWyH0YDmfP/uAPRem+8nwlleXLKS48nwnLZPQFP0hVsu
         sg+uufTwnPaP07U13wyGyyh4TIxXkxqwElbPf+RCwmuCHYGkmulkgEQlJ6UViKB608K4
         iMA9/LoWsaPnhrsRnKzZ4bbHZRogChpdLlnmC2DoPxoU/NuiH6R1S8pZ/O7NrOuYG9J0
         Wr1XXoH+6NtbfIpzjuF8OGcVGPft4jQ8G6bt1ZZ+zMvD3UjnCeG52+BvnckdfKmnXMbv
         0k+w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693916504; x=1694521304;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=vo1aRaoDGIJk9TkLkiwceh/LZhlV95aaWzCdG9GKBDU=;
        b=dlbH4n9/2PJ4dX5N8KSat/9kNDoGXFMRmdpNckxG9AaXNKUYdpvr6XzMCnuNg3nxso
         J8Lrn1gV49TrB1HcF20ROLysTcm5HfU6HmRdOgSz7NR3GVkseuUxc715GZirfyAQ+Mdb
         FEIyNtigEtQorfM2AH4Kl17Smf+JpqrUfFmWlveoPh0ePlzh+oO1j7LlvJ8RhyR1dbzA
         A0STg8T3TP2QJ3NHFCQMHEUlQdaL0MO5Cqm5Wtb4VDj4YeZ7hkNPussQ3K4eBuXHczwi
         442xfMXkOLR7NIUzQ3dG71VYHvtIGW6wpOnTnRTtRGsYWBRxJEJNNPxN21pOW8/HZXWO
         iWkA==
X-Gm-Message-State: AOJu0YyyAEDnEdUutRBkdpGf5oiEOpAKXwUKEg8vbkn2A6Mly/bdg5fQ
	32xltAGYWehadO878+Gb0dspjw==
X-Google-Smtp-Source: AGHT+IGHceR0DxOo08btZrf4dHcOI+V5se4WRpPBquf7QOLcWBYqYSVeTEjv9tLfnWmKk2ZrPPRgjg==
X-Received: by 2002:a2e:9c06:0:b0:2bc:b8f5:aaf1 with SMTP id s6-20020a2e9c06000000b002bcb8f5aaf1mr8949290lji.35.1693916504432;
        Tue, 05 Sep 2023 05:21:44 -0700 (PDT)
From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: Paul Durrant <paul@xen.org>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	xen-devel@lists.xenproject.org,
	Anthony Perard <anthony.perard@citrix.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>
Subject: [PATCH 0/3] sysemu/accel: Simplify sysemu/xen.h
Date: Tue,  5 Sep 2023 14:21:39 +0200
Message-ID: <20230905122142.5939-1-philmd@linaro.org>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

Trivial cleanups which simplify "sysemu/xen.h".

Philippe Mathieu-Daudé (3):
  sysemu/xen: Remove unuseful CONFIG_USER_ONLY header guard
  sysemu/xen: Remove unreachable xen_ram_alloc() code
  sysemu/xen: Allow elision of xen_hvm_modified_memory()

 include/exec/ram_addr.h |  8 ++++++--
 include/sysemu/xen.h    | 24 +++---------------------
 2 files changed, 9 insertions(+), 23 deletions(-)

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 12:21:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 12:21:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595653.929250 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdV44-0001gJ-TV; Tue, 05 Sep 2023 12:21:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595653.929250; Tue, 05 Sep 2023 12:21:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdV44-0001gC-QQ; Tue, 05 Sep 2023 12:21:52 +0000
Received: by outflank-mailman (input) for mailman id 595653;
 Tue, 05 Sep 2023 12:21:50 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=ddRg=EV=linaro.org=philmd@srs-se1.protection.inumbo.net>)
 id 1qdV42-0000wD-Ql
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 12:21:50 +0000
Received: from mail-lj1-x229.google.com (mail-lj1-x229.google.com
 [2a00:1450:4864:20::229])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ca0faf5e-4be6-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 14:21:50 +0200 (CEST)
Received: by mail-lj1-x229.google.com with SMTP id
 38308e7fff4ca-2bd0d19a304so39825711fa.1
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 05:21:50 -0700 (PDT)
Received: from localhost.localdomain ([37.69.27.38])
 by smtp.gmail.com with ESMTPSA id
 j22-20020a05600c1c1600b00402be2666bcsm12497901wms.6.2023.09.05.05.21.48
 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256);
 Tue, 05 Sep 2023 05:21:49 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ca0faf5e-4be6-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1693916509; x=1694521309; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=fom2vgYtrw2N7/lqmr4BnBWCA2ps570z0kqcY4sB1MA=;
        b=ck71Hs7ixqPkjiOaa5EbuK0QCCHF4QhJSwo9WilH9lHmaF1lYw/xBMtSVCUjL/cCaO
         P3fetjDX/IHfff5XGA3kHj+7LrZqt+eCYg5++FKtc8va80toaDlsJfiACJJXno1cGE9F
         mCfCQxql0/M1kfar9Y6alPvB281YaNgJPGF96/lirYh5eCIVKoBalkcUbOrNcYUeWyl9
         9ekGwpodTLjhYAJEzzLbvCplEMueresgzXeuxMOVVzVazodIdfe58DdQSW32Nc6m2csh
         DrR0NI2d8NPOdysJa/l3JegKOVwA3NaGlLqN8704IN8gXRg+dyfIFGS96alpjTYqbBum
         yRtA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693916509; x=1694521309;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=fom2vgYtrw2N7/lqmr4BnBWCA2ps570z0kqcY4sB1MA=;
        b=YP2pxZbAMfg7fIT7Uo8IRJfrOXVMG47LYrjLLLq8C7T5eRY3aoGZ9aWZPlFJe2q2Ny
         sTWAz+LeB5+ykCMDLTnRwAycls0JUjYWqGsdB9aONrvpiS8cKj/Oj1/MzvQly5DKoTZD
         gy1dMc2NqWg1J7NjTD5k3PAQIPZKcQiACo2v95QF8ueTWEelncdovFUy6Ocz7Dn5i8ra
         lHTZX8b8YxecTnxGMUW5cRbGnWA47PD7kFPJBrt6cJJRKolsHILKc+mLwVOBjpiWU0kG
         cKBRuVkcGnK+D4ge+MKRu4o056WbqAagEMx2MoS8zSt80Wu+KfsuDEvknwe8Q7z6mXlQ
         vYvQ==
X-Gm-Message-State: AOJu0YxRqbgVEiy0g8RgKP3s39yCwARNU3XB0A0TFoUC5CbGqjyKNssU
	Lo5nKIS9ou3Ei+K5Xx952gFKJw==
X-Google-Smtp-Source: AGHT+IGMdsgf/s9WMe8CesBc8Ve0lvCwfg45DPh1IToTH7tHvHwDiyDho3ZmRnkrYkRDDX1PPf9pqQ==
X-Received: by 2002:a2e:b045:0:b0:2bc:df55:eec7 with SMTP id d5-20020a2eb045000000b002bcdf55eec7mr9131145ljl.40.1693916509654;
        Tue, 05 Sep 2023 05:21:49 -0700 (PDT)
From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: Paul Durrant <paul@xen.org>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	xen-devel@lists.xenproject.org,
	Anthony Perard <anthony.perard@citrix.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>
Subject: [PATCH 1/3] sysemu/xen: Remove unuseful CONFIG_USER_ONLY header guard
Date: Tue,  5 Sep 2023 14:21:40 +0200
Message-ID: <20230905122142.5939-2-philmd@linaro.org>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20230905122142.5939-1-philmd@linaro.org>
References: <20230905122142.5939-1-philmd@linaro.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

In commit da278d58a0 ("accel: Move Xen accelerator code under
accel/xen/") we used include/sysemu/kvm.h as a template for
include/sysemu/xen.h, using the CONFIG_USER_ONLY header guard.
In retrospective, it is not used / useful, so remove it.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 include/sysemu/xen.h | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/include/sysemu/xen.h b/include/sysemu/xen.h
index bc13ad5692..9b2d0b21ff 100644
--- a/include/sysemu/xen.h
+++ b/include/sysemu/xen.h
@@ -26,16 +26,14 @@ extern bool xen_allowed;
 
 #define xen_enabled()           (xen_allowed)
 
-#ifndef CONFIG_USER_ONLY
 void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length);
 void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size,
                    struct MemoryRegion *mr, Error **errp);
-#endif
 
 #else /* !CONFIG_XEN_IS_POSSIBLE */
 
 #define xen_enabled() 0
-#ifndef CONFIG_USER_ONLY
+
 static inline void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length)
 {
     /* nothing */
@@ -45,7 +43,6 @@ static inline void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size,
 {
     g_assert_not_reached();
 }
-#endif
 
 #endif /* CONFIG_XEN_IS_POSSIBLE */
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 12:22:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 12:22:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595655.929260 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdV4C-00024J-8g; Tue, 05 Sep 2023 12:22:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595655.929260; Tue, 05 Sep 2023 12:22:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdV4C-00024A-5F; Tue, 05 Sep 2023 12:22:00 +0000
Received: by outflank-mailman (input) for mailman id 595655;
 Tue, 05 Sep 2023 12:21:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=ddRg=EV=linaro.org=philmd@srs-se1.protection.inumbo.net>)
 id 1qdV4A-0000wD-S1
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 12:21:58 +0000
Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com
 [2a00:1450:4864:20::42f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cef0c38c-4be6-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 14:21:58 +0200 (CEST)
Received: by mail-wr1-x42f.google.com with SMTP id
 ffacd0b85a97d-31c479ede21so2167621f8f.2
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 05:21:58 -0700 (PDT)
Received: from localhost.localdomain ([37.69.27.38])
 by smtp.gmail.com with ESMTPSA id
 bp5-20020a5d5a85000000b0031f07d1edbcsm14680949wrb.77.2023.09.05.05.21.53
 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256);
 Tue, 05 Sep 2023 05:21:54 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cef0c38c-4be6-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1693916515; x=1694521315; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=gzxK/xbqt7oVpzvsNE0mB2t8RXiKOYU8OLm+TL14vNw=;
        b=N0i0yfEEbsmUkpTa1E44uiuVksl9e1A5b3rfK08X6RqLTI1DAMpnVrubYQ/bMRTB0D
         cDAWp5dOpl5vN/F3YqOMbwmKZwylLMcDCxBNBKQFKU1O8W6lXbadZtUZDva3HW9JhEOE
         oDxtlsdbQKjQmBOoN063yXcmAnEgY2qVPqoMNXZDsINvutuHLla0cZPw7nzbs7WYCx8d
         RV7Jo1XqRjP/Uk+qofjPPnbfpJUdUmKTFNJ9uQAuuAsPPXeDtNY1jr3B1eH0t1VD0IxL
         iDlaS0SGNpAjSNF+yx2FAKJ5WQi51v62FCAMr1lZsdhKT9Xd84cdBDh+rIOvL5zQ7PP/
         UXjA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693916515; x=1694521315;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=gzxK/xbqt7oVpzvsNE0mB2t8RXiKOYU8OLm+TL14vNw=;
        b=dsvI0rCzwAdmEonBLHJd0LvrcxI48i+tr/SB2BYgiIxVqjhkdOv008zjGUkUN9v9xV
         qOJObH/c9t5drY+q5pZIjToPTgtw1G0xErJ68QQ8OWEGciBH0VIVzEbUhCbiUASH0eeT
         Nnjb4lj4Mxr91hBLf8hvAKcoe7j0eAEhJ7asKeH2pEW7c+bcr1DX7MLAj23tmvbC2O+c
         T4XOIP4paKBAZX6lbYyDDJ8WQLT8oAPN0+JaAybxldsQ7k1WIKFh/GBcA4kPrdn2/sgk
         wYEcX1UDmRj77gy9GLjOancq0q2EtlH2GphOvtng+BfN5k0xLSc2sr40E8HIjXycRjUc
         UGPg==
X-Gm-Message-State: AOJu0YzfccbpI8+iJtKGK1P851Lm0AQaeLTHyYP6BihrZEXOsi6amwaO
	vXAQRENa/y+G7BaKZ9rTk0ai8g==
X-Google-Smtp-Source: AGHT+IHbz5YkYNFi6ne5hl8VA0Ok/qvzggQRihAZp+7XxeX9TpfDtJE/W1Zlywnx0kt8k7q4Mg47Ow==
X-Received: by 2002:a5d:56c7:0:b0:314:3a3d:5d1f with SMTP id m7-20020a5d56c7000000b003143a3d5d1fmr9789209wrw.19.1693916514769;
        Tue, 05 Sep 2023 05:21:54 -0700 (PDT)
From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: Paul Durrant <paul@xen.org>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	xen-devel@lists.xenproject.org,
	Anthony Perard <anthony.perard@citrix.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Subject: [PATCH 2/3] sysemu/xen: Remove unreachable xen_ram_alloc() code
Date: Tue,  5 Sep 2023 14:21:41 +0200
Message-ID: <20230905122142.5939-3-philmd@linaro.org>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20230905122142.5939-1-philmd@linaro.org>
References: <20230905122142.5939-1-philmd@linaro.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

The xen_ram_alloc() call in softmmu/physmem.c is guarded
by checking for xen_enabled(), which evaluate to 'false'
when XEN is not built in. The compiler elide the function
call, and thus the inlined function is not used. Remove it.

Inspired-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 include/sysemu/xen.h | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/include/sysemu/xen.h b/include/sysemu/xen.h
index 9b2d0b21ff..1f797a9abe 100644
--- a/include/sysemu/xen.h
+++ b/include/sysemu/xen.h
@@ -27,8 +27,6 @@ extern bool xen_allowed;
 #define xen_enabled()           (xen_allowed)
 
 void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length);
-void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size,
-                   struct MemoryRegion *mr, Error **errp);
 
 #else /* !CONFIG_XEN_IS_POSSIBLE */
 
@@ -38,12 +36,10 @@ static inline void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length)
 {
     /* nothing */
 }
-static inline void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size,
-                                 MemoryRegion *mr, Error **errp)
-{
-    g_assert_not_reached();
-}
 
 #endif /* CONFIG_XEN_IS_POSSIBLE */
 
+void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size,
+                   struct MemoryRegion *mr, Error **errp);
+
 #endif
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 12:22:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 12:22:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595656.929269 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdV4F-0002NH-Fm; Tue, 05 Sep 2023 12:22:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595656.929269; Tue, 05 Sep 2023 12:22:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdV4F-0002N7-Cr; Tue, 05 Sep 2023 12:22:03 +0000
Received: by outflank-mailman (input) for mailman id 595656;
 Tue, 05 Sep 2023 12:22:02 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=ddRg=EV=linaro.org=philmd@srs-se1.protection.inumbo.net>)
 id 1qdV4E-0002LV-97
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 12:22:02 +0000
Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com
 [2a00:1450:4864:20::42f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d026ab34-4be6-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 14:22:00 +0200 (CEST)
Received: by mail-wr1-x42f.google.com with SMTP id
 ffacd0b85a97d-31c3726cc45so2171385f8f.0
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 05:22:00 -0700 (PDT)
Received: from localhost.localdomain ([37.69.27.38])
 by smtp.gmail.com with ESMTPSA id
 n9-20020a05600c294900b003feff926fc5sm16775933wmd.17.2023.09.05.05.21.58
 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256);
 Tue, 05 Sep 2023 05:21:59 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d026ab34-4be6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1693916520; x=1694521320; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=sB86fzFOmVDgMvea5i3OluWg93+WlVCOeLM0GI/SSvo=;
        b=CFSys+oEQ1mwFgJd9akO2EGuY4ZT651m0Qx6NOmtc1Hcnpz2p1IuFxWNkK2mLZmDo8
         Q7SMn4UIXPbILk6yNA05CDAMaw5TShzBY3UF3qUbDP1RJpHS9iWTH3+2fnZmFdoqHUJS
         SHXqiJzxMz0mBZ5PgsZeyNLb+SHXSvGpf790BizG/sbcKcxOuPmYUhjc7Xsfuc6sHuf2
         1XiYzKCBNHd0okpWfPCwkdddGK2BquRdjFKrfJ4ZgXoCtVFpd+WdEKE/DmhIGPdxNPbV
         /BuAkdxDXjD7tEE/FX5xWi+eApmWz5Eu/EKYzz0Iv13BtD0OWaunFPldw7Wc7WiB1PhB
         Ohqw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693916520; x=1694521320;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=sB86fzFOmVDgMvea5i3OluWg93+WlVCOeLM0GI/SSvo=;
        b=gPWjyHgy5uBnNw08EQL05E4HVwaf86N7pioQ/GmMpzjduS0tpkRc7bRMVls8LE7WY0
         BwXxac/7vaM/oO8p5f5XgCkZs/4ODU2u5GKD9bsWJfUOlRNNTZSsIiekWssHe/FOntML
         Potd0WQLjWj109VSAY0cT1CCiD5SWM52U/xMU96aXBhSzgxUEG5XG9DLBl4ogShrHnv1
         tOdBKHKzkd9v7VDwerXrrRsuLkh4UnMVwIq28iEJBTdkFlAE2oLXPPFe1h/jTXcUiSNA
         5AqmEJ3AW8/4nbycPCjQ0FFnsi5Kdys4AdUBIVgUw9GXo3ipxgiWT7vvz+GjWIEYaquM
         HS/Q==
X-Gm-Message-State: AOJu0YzvMwqld4inTSc2/Ju4SS2X8Oju9Zau2LcxbqIVeiiZf0ltryE6
	6js8LIx6noCsno4zWKePEGUSUg==
X-Google-Smtp-Source: AGHT+IGMv++IXwOb16f2+PfK5YVZCa7H80s2i/rxCKRU0mJ1BiJzgJBBclvgdAZjwKfes8Lh0/ctrQ==
X-Received: by 2002:a5d:5510:0:b0:319:6fff:f2c1 with SMTP id b16-20020a5d5510000000b003196ffff2c1mr8841138wrv.38.1693916519881;
        Tue, 05 Sep 2023 05:21:59 -0700 (PDT)
From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: Paul Durrant <paul@xen.org>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	xen-devel@lists.xenproject.org,
	Anthony Perard <anthony.perard@citrix.com>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Daniel Henrique Barboza <dbarboza@ventanamicro.com>,
	Peter Xu <peterx@redhat.com>,
	David Hildenbrand <david@redhat.com>
Subject: [PATCH 3/3] sysemu/xen: Allow elision of xen_hvm_modified_memory()
Date: Tue,  5 Sep 2023 14:21:42 +0200
Message-ID: <20230905122142.5939-4-philmd@linaro.org>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <20230905122142.5939-1-philmd@linaro.org>
References: <20230905122142.5939-1-philmd@linaro.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Call xen_enabled() before xen_hvm_modified_memory() to let
the compiler elide its call.

Have xen_enabled() return a boolean to match its declaration
in the CONFIG_XEN_IS_POSSIBLE case.

Suggested-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 include/exec/ram_addr.h |  8 ++++++--
 include/sysemu/xen.h    | 15 ++-------------
 2 files changed, 8 insertions(+), 15 deletions(-)

diff --git a/include/exec/ram_addr.h b/include/exec/ram_addr.h
index 9f2e3893f5..66e849ac4e 100644
--- a/include/exec/ram_addr.h
+++ b/include/exec/ram_addr.h
@@ -330,7 +330,9 @@ static inline void cpu_physical_memory_set_dirty_range(ram_addr_t start,
         }
     }
 
-    xen_hvm_modified_memory(start, length);
+    if (xen_enabled()) {
+        xen_hvm_modified_memory(start, length);
+    }
 }
 
 #if !defined(_WIN32)
@@ -406,7 +408,9 @@ uint64_t cpu_physical_memory_set_dirty_lebitmap(unsigned long *bitmap,
             }
         }
 
-        xen_hvm_modified_memory(start, pages << TARGET_PAGE_BITS);
+        if (xen_enabled()) {
+            xen_hvm_modified_memory(start, pages << TARGET_PAGE_BITS);
+        }
     } else {
         uint8_t clients = tcg_enabled() ? DIRTY_CLIENTS_ALL : DIRTY_CLIENTS_NOCODE;
 
diff --git a/include/sysemu/xen.h b/include/sysemu/xen.h
index 1f797a9abe..d84a5f3551 100644
--- a/include/sysemu/xen.h
+++ b/include/sysemu/xen.h
@@ -21,24 +21,13 @@
 #endif
 
 #ifdef CONFIG_XEN_IS_POSSIBLE
-
 extern bool xen_allowed;
-
 #define xen_enabled()           (xen_allowed)
-
-void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length);
-
 #else /* !CONFIG_XEN_IS_POSSIBLE */
-
-#define xen_enabled() 0
-
-static inline void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length)
-{
-    /* nothing */
-}
-
+#define xen_enabled()           false
 #endif /* CONFIG_XEN_IS_POSSIBLE */
 
+void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length);
 void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size,
                    struct MemoryRegion *mr, Error **errp);
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 12:22:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 12:22:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595664.929279 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdV4Q-00035Q-Nv; Tue, 05 Sep 2023 12:22:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595664.929279; Tue, 05 Sep 2023 12:22:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdV4Q-00035J-KQ; Tue, 05 Sep 2023 12:22:14 +0000
Received: by outflank-mailman (input) for mailman id 595664;
 Tue, 05 Sep 2023 12:22:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=ddRg=EV=linaro.org=philmd@srs-se1.protection.inumbo.net>)
 id 1qdV4P-0002LV-1b
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 12:22:13 +0000
Received: from mail-lj1-x22b.google.com (mail-lj1-x22b.google.com
 [2a00:1450:4864:20::22b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d6d9c0e9-4be6-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 14:22:11 +0200 (CEST)
Received: by mail-lj1-x22b.google.com with SMTP id
 38308e7fff4ca-2b703a0453fso37143391fa.3
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 05:22:11 -0700 (PDT)
Received: from [192.168.1.34] ([37.69.27.38]) by smtp.gmail.com with ESMTPSA id
 p1-20020a05600c204100b003fedcd02e2asm16736177wmg.35.2023.09.05.05.22.08
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 05 Sep 2023 05:22:08 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d6d9c0e9-4be6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1693916529; x=1694521329; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=mr+5ZH3u0P7meL1erw8CVa+r7WQNyOC0HPVh5GzsMyI=;
        b=ItLRG3QIQiU4PGGgQwRFSIUv3X3LnFsvujA5hzIIVqQ6As/7SgcqpETFAMvl8QkTQU
         4YxznEtlzagcY0GVxJzzU4ROp8OwRXe7rQffaDkexBRXzMqNReRYitfNOBYTm5FXh+Fr
         ZfEp6R8atll0hWDU9KndDxWHzpWXgh2ArGvFWlAPStbgeIFmjGV/aUvIhUm2N0EAqgko
         T1XXYN4kn5EqqLNNmfeEvPsfvuy4/Nq+wdYRGr70A9A09ZfQ3UjYN0G/SRu8q9RrEfzl
         HXg1Lp4XuAbAy3czR1lcPFa4CUqX4K01ZQRygfFKH9JdcdUDKdQZD28uqZMaxYE8jwm1
         ct/A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693916529; x=1694521329;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=mr+5ZH3u0P7meL1erw8CVa+r7WQNyOC0HPVh5GzsMyI=;
        b=S579oZ0R+lhvQ/58FrIhgNFjmGSDv9ov7d+khJUP7dOykrmZJGQ68m+2S4YOuTgUjv
         VYsS3tI63A9QAumJQw9E79bbQRdLfKhc0e82PzmZjp10QeNhATbWGSG0Rlf7tWfS5rd9
         XA1G2APcWN4zm4N0GLH+TgW2hhaH9PMN/9F9mS6SzbBui/782PpqM0cvcUMY4qPxaUOS
         OIdvmfg4k0sIcPCaqlq/5zMYgPohfIf3iGVOEF9FPwU+YWYHMXhwqWrp3yKlhExdCmqG
         POb8YN0p3IcVrov5WyVPhvjdWh2WnXm6lh3I8PYbKqJ3CvU9YT5CSHBd7qqTohMv0U1X
         q0yg==
X-Gm-Message-State: AOJu0YwLEhhO958nLA5Iv9ij4ze6j3qKrLa3dbsnVDBsL6ipt+3IHhaG
	7+1QDY1vfQJ2neVewrY6GsAFpQ==
X-Google-Smtp-Source: AGHT+IE7HDyJrQysj8lLFxucXBzfwzRVMvTQ/15XtAR24Yz+30WKWUxDpf4WkHmXZ2rT25oZ7Mr2+g==
X-Received: by 2002:a2e:9c90:0:b0:2bd:16ed:517f with SMTP id x16-20020a2e9c90000000b002bd16ed517fmr9368897lji.4.1693916529093;
        Tue, 05 Sep 2023 05:22:09 -0700 (PDT)
Message-ID: <3621d12e-67ab-4286-b319-fac2cc77a763@linaro.org>
Date: Tue, 5 Sep 2023 14:22:07 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.0
Subject: Re: [PATCH v4 0/3] sysemu/accel: Simplify sysemu/xen.h
To: qemu-devel@nongnu.org
Cc: xen-devel@lists.xenproject.org, Anthony Perard
 <anthony.perard@citrix.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Paolo Bonzini <pbonzini@redhat.com>, Paul Durrant <paul@xen.org>
References: <20230905122100.5787-1-philmd@linaro.org>
Content-Language: en-US
From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= <philmd@linaro.org>
In-Reply-To: <20230905122100.5787-1-philmd@linaro.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 5/9/23 14:20, Philippe Mathieu-Daudé wrote:
> Trivial cleanups which simplify "sysemu/xen.h".
> 
> Philippe Mathieu-Daudé (3):
>    sysemu/xen: Remove unuseful CONFIG_USER_ONLY header guard
>    sysemu/xen: Remove unreachable xen_ram_alloc() code
>    sysemu/xen: Allow elision of xen_hvm_modified_memory()
> 
>   include/exec/ram_addr.h |  8 ++++++--
>   include/sysemu/xen.h    | 24 +++---------------------
>   2 files changed, 9 insertions(+), 23 deletions(-)

Oops, this isn't v4. v1 coming...



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 13:30:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 13:30:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595703.929289 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdW8P-0007K4-M9; Tue, 05 Sep 2023 13:30:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595703.929289; Tue, 05 Sep 2023 13:30:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdW8P-0007Jx-Jc; Tue, 05 Sep 2023 13:30:25 +0000
Received: by outflank-mailman (input) for mailman id 595703;
 Tue, 05 Sep 2023 13:30:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Og0L=EV=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qdW8O-0007Jr-IJ
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 13:30:24 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20605.outbound.protection.outlook.com
 [2a01:111:f400:7e89::605])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5b6f1b8c-4bf0-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 15:30:20 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by DS0PR12MB8218.namprd12.prod.outlook.com (2603:10b6:8:f2::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 13:30:16 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40%4]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 13:30:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5b6f1b8c-4bf0-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MIfWOeEtFjTmuOKYVogyoWUFs19QXdkV/FRr/wRg7xFroqTxkJGKJ1Bx6ttfi5V3ZpMom8R1r1FSOb3+JjGbRfC9eoZe0nQgQuhI536ZuZNp2xjp8dift024IycJ7743UKYbjWEHyLtcJvNE0gQZxGG18k9bS26VnTT65PGdFT50LcJupVjybQo63HqjU42X/v00ArvDuisJn2JjI3q3FlM4VvmpO9Bu9EEuR9XZcuyGCG4PQYcxplYW0AyLnlmoPU8cavhjpVmD2weATWdU3gdqmu1XS5fxJdzwARVHLbNGLURBCPXiuE1JcQKysjRgywnxHBeJAX7KRrlnzQLomw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=H0EvEhSxCOUFPRdO6OaJzKLDAzBGY2q3d/3oKLd5TG0=;
 b=HHsbF7JerWClNZ59LGKb3Up+e6e2kfyGkDS4SnunoXcmYjZBL4fZcL6/gAku4amW1DaRuJ0B+ZMOaWtUCA5GQzBX+Z4+k9GqXN+ZtVgGcTVVT7puRXb9FR1MJDIjTCTzb6CKwNMfZAFs8ZblMPy+0YSrkzipuq8w4Qo2p44M5E5N7tmqHKV6dMTG+f6h5kiDudWzW6Xw2qz8wWN6ar1NzD5sNPph3t4fPQ4RH8oRtSdwVqcSyUT5Xv6TuzNJKNG9BmLSDjVGoRXmDISp257saMU0+DwzZV4CinMXVUPc53PGmvTlnddGHHCXmk4EE1Qz6un2/dvelZ2M8LDyqfp5UQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=H0EvEhSxCOUFPRdO6OaJzKLDAzBGY2q3d/3oKLd5TG0=;
 b=4t7NdFHO1BnfQwhQnXXKn2S38qwZTO2uOpG2saDIU4LBIvQugdvn/HYOzUYqXBEvYmBgffI3rCPQ2hlJ3IV9cz6uSoaOJTZkcis62GkuFQqJeTzasoJ2u6vRcvEtOdAfXRNj7AUvYadfo1JdcIaWD616IgMiAoZ5EIBbspfKuVs=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Tue, 5 Sep 2023 21:29:52 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
Subject: Re: [QEMU PATCH v4 07/13] softmmu/memory: enable automatic
 deallocation of memory regions
Message-ID: <ZPctUPqt/eHeqJqb@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-8-ray.huang@amd.com>
 <b988f9d4-69d7-4cc4-b13e-3e697acf9fe9@daynix.com>
 <ZPbvyDsikvvzierv@amd.com>
 <2ec5929b-eb79-4848-8ab4-517c89f6b476@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <2ec5929b-eb79-4848-8ab4-517c89f6b476@daynix.com>
X-ClientProxiedBy: TYCP286CA0244.JPNP286.PROD.OUTLOOK.COM
 (2603:1096:400:456::19) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|DS0PR12MB8218:EE_
X-MS-Office365-Filtering-Correlation-Id: 948617e9-5289-4502-304e-08dbae143dc1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lyNhL2NS5IdvPQ3O5HLwX8xHeeM4bCIMGYlii/KZYDuPBg6QUg9JYsgXiSXOeplPQxQQBJtBOT3GTmHkOvMz/kEO1oY/ImypDI9e3SBbazrNLV2ckeaHNcRZdwXmsCSXtwpR4B4Jht/VKJ5NAbyT2itE/gcJwLMDVvbvAWEHA7Wl4A/H+1WB3c8Fzsp1it0QDgMZf+c+64nsxRHfdmLDk++bfblB2aWifMdlUFaIDfQC+Sz8Sk6hcqleM0L+j6NkMBjVIGGJgDs/AUOhuL8Ccm4DNH0pIW+OjcDMxFLlC7H8AzNJ/fFS6W4gw9UZ9889mRtMahQQ7A/yi/om7UyJRdQwMwWtCK6G6dxtpRB0h2nmbdv7P9iw2nt6h9S3TJGKAVNrWvvpAJtBnJLXJstYfqVk2TFlt82TJwZJN2OZCLHvoNcL6KLV2mthrL71h4fCioQtZ78/31cmufQUCPlbXH01t6SXnxYp0JBJ9izBbUVYQ7Axhm2FJ8fus7cyyR37/rHfG1Tf1/0S56k25Wl1zpqDFwORv5M6wm7lt5D3ReZ6eQjhGACE2cwWZnnIvh96
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(366004)(136003)(376002)(39860400002)(1800799009)(451199024)(186009)(6666004)(83380400001)(86362001)(38100700002)(36756003)(53546011)(6512007)(6486002)(6506007)(26005)(2616005)(478600001)(66556008)(66476007)(4326008)(6916009)(66946007)(8936002)(8676002)(41300700001)(2906002)(54906003)(316002)(66899024)(7416002)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?yVHyN8ZcO1DIZL4hEWIhUZf9enwyQnosvrc0qWJZye92JmYHns6a854YZDWX?=
 =?us-ascii?Q?engenXRfFIjqs6t1UXrrYSo+isbcw50J3WtpJSEJeouWII9/1KurnR44Hzw2?=
 =?us-ascii?Q?oMX/+vWkPqki6kENYoPNexnIpiFyl3zxJ4C0vg+eZMsvzk+xJ3JfwYVuKMd+?=
 =?us-ascii?Q?u8102wvX5TRf32HdCVuDPxpydw8gZis2Lsn14QXCHYEQw1RrMPWlbF7O80au?=
 =?us-ascii?Q?u1knnEvT/46u0XhNJJZeuKV6hvKBU8YsdnwHTkCyRqqKsXaFDItDd2bvdksR?=
 =?us-ascii?Q?EFrQCV25lKiHD9tqxExPF2J12UWcz3wAtO0/zAHjVj45r9KlUtRfDBUN4gNy?=
 =?us-ascii?Q?9S8IxE7vPEHfcDtOzG3EffP47pXrCAWqPJfcXeWTeONPj9H7c1UzzKMS7oAT?=
 =?us-ascii?Q?XUDL7xnaB+PD5BTR/Enyl5h+w66MMAowTpSa0D4MwKewy8vPpa1t0H8Aom29?=
 =?us-ascii?Q?Gvdou+W7S1c4yA0Z18CqthU8dhxhUt3O2rGfC727baEPbBpIvI51Qjj8kNyF?=
 =?us-ascii?Q?sDkNR/hpbaorVyXj1CWZ1TRTh028TSzRaJy1myOB/X9GTPBrtle82j3Jd7NN?=
 =?us-ascii?Q?Ap3mSIKffkAys7k8VhuEDjRVAlZV1mDsduSBUfrCD615a+6ZWckdgGGtlJb2?=
 =?us-ascii?Q?eB/EYur0tXFcKG/9XVU7QJTF0tl9rLEn/SPnGej+5F4MJ9tq6BT9sNjgTjfa?=
 =?us-ascii?Q?uBeICvEWkiuUyGCSWNCPqaoPmpPEYQKHGog3KkyTfU0kCcP/mOmjKY3z3Srp?=
 =?us-ascii?Q?uMGIXcyPKCRjoGuZaLPg/1wSZlYDIQTTSxyb3qO+/UqCCH2C9vTxEd3iN/AQ?=
 =?us-ascii?Q?vLwuIaN1h0S5h3Hvrt0g3Z4u5lm8NQc5pvOhBmdfBQM1POlCtEjJmhgAoX3D?=
 =?us-ascii?Q?+G+4LT27hIk6H8zin/Uo4F6O0nif6j0aZFPHeQaQSIAEW6/ohVzc69cqSXVC?=
 =?us-ascii?Q?0qjn84yMlVh+tVF/sGDQ7oFTImtQ7YIksLckWNXSvBqvxw5PQzLnzQVGk8Xb?=
 =?us-ascii?Q?cNpZjFHHg4dVMbfM4+FSg7I8rIEJ7UO5BCBKfXg0YL20QIAxik6FxgIbBMmD?=
 =?us-ascii?Q?ntHGqCHu96lYSJS8/3AM4hSFeQiwKUd38cwzqQO9jdL1nwnOjAPC2/qqO4KH?=
 =?us-ascii?Q?aYznVr2quZoDiZyS6pXL9kiy5cUQJ9T1O/nzr6B0H8qFNFOuhj/ZjwEWhyuT?=
 =?us-ascii?Q?DSH5lC018dnXTSBtw6+FohEnnJI5DfD8HcoUGQHmWivYoRmfQyTPoKf6eR1W?=
 =?us-ascii?Q?XZXOcAyzzkRIc0RRXIXuhlKsPn30zSZK0gZFFA5iYAFj/rZ9J1Btc2YZuC2D?=
 =?us-ascii?Q?ZOgZWzPm/xeSEaFhfnRawwDoBwoe+eNZxai8jMm5tyH3Zpgfx8PiDh9Zuslg?=
 =?us-ascii?Q?1CPi/zr7DXzfDksw6pOJJ01LWd7ZjdaYJQMtMe3VrOjY3yJvJs1N0LNb2ysf?=
 =?us-ascii?Q?gmVMKTS8S4M220GDnGbTcxoInW2mJzS5HfRdKZMR6X8Xg4Ay54sZZ6TfqX5H?=
 =?us-ascii?Q?mIIknHcwfHz6xM+kiG2FozhkDgXs+Ad/IdGItPkfcBmzI/FgRedDX7Umwe+j?=
 =?us-ascii?Q?FiTnXn9iBUA/DmIhJPJw6l0QyR0t+LQKQSEInhg8?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 948617e9-5289-4502-304e-08dbae143dc1
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 13:30:16.3229
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 33G004RyzIl3CLVkSer9bIhZlHeA8lVbuJ/wQoBejxprCyuz7ajBmz0AgCfR3p375rAi7VuZbDuHI4zZXpiX0w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB8218

On Tue, Sep 05, 2023 at 05:17:32PM +0800, Akihiko Odaki wrote:
> On 2023/09/05 18:07, Huang Rui wrote:
> > On Thu, Aug 31, 2023 at 06:10:08PM +0800, Akihiko Odaki wrote:
> >> On 2023/08/31 18:32, Huang Rui wrote:
> >>> From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> >>>
> >>> When the memory region has a different life-cycle from that of her parent,
> >>> could be automatically released, once has been unparent and once all of her
> >>> references have gone away, via the object's free callback.
> >>>
> >>> However, currently, references to the memory region are held by its owner
> >>> without first incrementing the memory region object's reference count.
> >>> As a result, the automatic deallocation of the object, not taking into
> >>> account those references, results in use-after-free memory corruption.
> >>>
> >>> This patch increases the reference count of the memory region object on
> >>> each memory_region_ref() and decreases it on each memory_region_unref().
> >>>
> >>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> >>> Signed-off-by: Huang Rui <ray.huang@amd.com>
> >>> ---
> >>>
> >>> New patch
> >>>
> >>>    softmmu/memory.c | 19 +++++++++++++++++--
> >>>    1 file changed, 17 insertions(+), 2 deletions(-)
> >>>
> >>> diff --git a/softmmu/memory.c b/softmmu/memory.c
> >>> index 7d9494ce70..0fdd5eebf9 100644
> >>> --- a/softmmu/memory.c
> >>> +++ b/softmmu/memory.c
> >>> @@ -1797,6 +1797,15 @@ Object *memory_region_owner(MemoryRegion *mr)
> >>>    
> >>>    void memory_region_ref(MemoryRegion *mr)
> >>>    {
> >>> +    if (!mr) {
> >>> +        return;
> >>> +    }
> >>> +
> >>> +    /* Obtain a reference to prevent the memory region object
> >>> +     * from being released under our feet.
> >>> +     */
> >>> +    object_ref(OBJECT(mr));
> >>> +
> >>>        /* MMIO callbacks most likely will access data that belongs
> >>>         * to the owner, hence the need to ref/unref the owner whenever
> >>>         * the memory region is in use.
> >>> @@ -1807,16 +1816,22 @@ void memory_region_ref(MemoryRegion *mr)
> >>>         * Memory regions without an owner are supposed to never go away;
> >>>         * we do not ref/unref them because it slows down DMA sensibly.
> >>>         */
> >>
> >> The collapsed comment says:
> >>   > The memory region is a child of its owner.  As long as the
> >>   > owner doesn't call unparent itself on the memory region,
> >>   > ref-ing the owner will also keep the memory region alive.
> >>   > Memory regions without an owner are supposed to never go away;
> >>   > we do not ref/unref them because it slows down DMA sensibly.
> >>
> >> It contradicts with this patch.
> > 
> > The reason that we modify it is because we would like to address the memory
> > leak issue in the original codes. Please see below, we find the memory
> > region will be crashed once we free(unref) the simple resource, because the
> > region will be freed in object_finalize() after unparent and the ref count
> > is to 0. Then the VM will be crashed with this.
> > 
> > In virgl_cmd_resource_map_blob():
> >      memory_region_init_ram_device_ptr(res->region, OBJECT(g), NULL, size, data);
> >      OBJECT(res->region)->free = g_free;
> >      memory_region_add_subregion(&b->hostmem, mblob.offset, res->region);
> >      memory_region_set_enabled(res->region, true);
> > 
> > In virtio_gpu_virgl_resource_unmap():
> >      memory_region_set_enabled(res->region, false);
> >      memory_region_del_subregion(&b->hostmem, res->region);
> >      object_unparent(OBJECT(res->region));
> >      res->region = NULL;
> > 
> > I spent a bit more time to understand your point, do you want me to update
> > corresponding comments or you have some concern about this change?
> 
> As the comment says ref-ing memory regions without an owner will slow 
> down DMA, you should avoid that. More concretely, you should check 
> mr->owner before doing object_ref(OBJECT(mr)).
> 

I get it, thanks to point this exactly. Will update it in V5.

Thanks,
Ray


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 13:37:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 13:37:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595711.929300 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdWF2-0000Bw-Ga; Tue, 05 Sep 2023 13:37:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595711.929300; Tue, 05 Sep 2023 13:37:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdWF2-0000Bp-De; Tue, 05 Sep 2023 13:37:16 +0000
Received: by outflank-mailman (input) for mailman id 595711;
 Tue, 05 Sep 2023 13:37:15 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uOuH=EV=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qdWF1-0000Bi-GP
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 13:37:15 +0000
Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com
 [2a00:1450:4864:20::12c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 52242199-4bf1-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 15:37:13 +0200 (CEST)
Received: by mail-lf1-x12c.google.com with SMTP id
 2adb3069b0e04-500cfb168c6so4177091e87.2
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 06:37:13 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 i24-20020ac25238000000b004fb78959218sm2388003lfl.200.2023.09.05.06.37.11
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 05 Sep 2023 06:37:11 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 52242199-4bf1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1693921033; x=1694525833; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=emeEI0p6W+EweINIUmLiMj/8DhyvM4qSHxn8c66icZY=;
        b=QE44nHmO9Vn0/r10ZaW5adrC2d7lCLtN5UW6MjuSn7z32xwy2ULa1BBdNPzyd2jAGD
         FK/jjO22keUvl5gaIpFhcagOmUOs0VCPp42yD/u2KJSCtp7ZNCyf65WTmMhU23HjGuZH
         1lv5vCFfyfRs1D8D+gKX6JOXaqdF+QVcaLfITynLNJQP1NaMTQfJ2bn0pQ4TXJ8o0EFe
         jBNddt6sPmnR3Vy+sj5rXJYAMtw3MGS6q+LBKYCd4BuAzGFO+tYFyd7eBgCtn7beKmhk
         O57N1oMj3BiOKMVpYgp/w7wjzVjTOMnXVPnuoWJp8RXVc7BdHuazQbMKSJ9HuMfy58hA
         ZdWw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693921033; x=1694525833;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=emeEI0p6W+EweINIUmLiMj/8DhyvM4qSHxn8c66icZY=;
        b=Q1sbU+0+DnDYlsEf71RAJQ29jTMUlW8UpZND/yRn+EzSVxsrC2Xxnz6p4Az/h/pG5w
         n0r1xXoKbOMMqQIqfHiz1q1HDg33nKAYDWTfniOrkErE7QVsyj/4LdXG6N8Wc1YaQUpU
         bvIFUKC0BIL9R7FihC5M15u+4ZnNICfTCh/6gjhDndbSG96xOcg16/ttd+bGmEqBrJJ5
         SB/UXHha+rDjZ9GyCp5PQiHJHq6SUSYjr9C9QmH8XuQMNmMFD4bOUyGYo9Ls3ulnr3QI
         x3v+kj93lklNNcGP0sHu1r/OjoOYwiXF0EBGExRTKsScwTXi03lHCHQWuqsOiCcgTVNI
         EDUw==
X-Gm-Message-State: AOJu0Yz2XnX9mybc6a5N+dPYTPsZ89fMEowGCzWXEEqaKsVzBMg2GKaj
	llJL/KE08V8wqX00GV15j3o=
X-Google-Smtp-Source: AGHT+IH/Q9OGygzs4XPKMK3iVpopeXRS/hTohw8S1+qM48kZetpWdhhdY1BssflcBCK3L+BxLaz2Ng==
X-Received: by 2002:a05:6512:3ca8:b0:500:b5db:990b with SMTP id h40-20020a0565123ca800b00500b5db990bmr10919641lfv.47.1693921032414;
        Tue, 05 Sep 2023 06:37:12 -0700 (PDT)
Message-ID: <e2b6ee2ecae5512a23a3e33bba0083b90a1c8831.camel@gmail.com>
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
From: Oleksii <oleksii.kurochko@gmail.com>
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
 <jbeulich@suse.com>,  Andrew Cooper <andrew.cooper3@citrix.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, Shawn Anastasio
 <sanastasio@raptorengineering.com>, Bob Eshleman <bobbyeshleman@gmail.com>,
  Alistair Francis <alistair.francis@wdc.com>, Connor Davis
 <connojdavis@gmail.com>, Roger Pau =?ISO-8859-1?Q?Monn=E9?=
 <roger.pau@citrix.com>
Date: Tue, 05 Sep 2023 16:37:11 +0300
In-Reply-To: <3DCD5649-C172-4400-AA75-A28F5C0A106D@arm.com>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
	 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
	 <3DCD5649-C172-4400-AA75-A28F5C0A106D@arm.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

Hi Bertrand,

On Mon, 2023-09-04 at 13:39 +0000, Bertrand Marquis wrote:
> Hi Oleksii,
>=20
> > On 1 Sep 2023, at 18:02, Oleksii Kurochko
> > <oleksii.kurochko@gmail.com> wrote:
> >=20
> > Some headers are shared between individual architectures or are
> > empty.
> > To avoid duplication of these headers, asm-generic is introduced.
> >=20
> > With the following patch, an architecture uses generic headers
> > mentioned in the file arch/$(ARCH)/include/asm/Kbuild.
>=20
> Kbuild refers to "Kernel build" I guess.
> I am ok to keep that name to keep things simpler when compared to
> Linux scripts but it would be good to mention that in the commit
> message for future reference.
Sure. I'll add that Kbuild refers to "Kernel build"
>=20
> >=20
> > To use a generic header is needed to add to
> > arch/$(ARCH)/include/asm/Kbuild :
> > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 generic-y +=3D <name-of-header-fil=
e.h>
> >=20
> > For each mentioned header in arch/$(ARCH)/include/asm/Kbuild,
> > kbuild will generate the necessary wrapper in
> > arch/$(ARCH)/include/generated/asm.
> >=20
> > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
> > ---
> > Changes in V4:
> > - introduce asm-generic support
> > - update commit message
> > ---
> > Changes in V3:
> > - Rename stubs dir to asm-generic
> > ---
> > Changes in V2:
> > - Nothing changed.
> > ---
> > xen/Makefile=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 | 10 =
+++++++++-
> > xen/arch/arm/include/asm/Kbuild=C2=A0=C2=A0 |=C2=A0 1 +
> > xen/arch/ppc/include/asm/Kbuild=C2=A0=C2=A0 |=C2=A0 1 +
> > xen/arch/riscv/include/asm/Kbuild |=C2=A0 1 +
> > xen/arch/x86/include/asm/Kbuild=C2=A0=C2=A0 |=C2=A0 1 +
> > xen/scripts/Makefile.asm-generic=C2=A0 | 23 +++++++++++++++++++++++
> > 6 files changed, 36 insertions(+), 1 deletion(-)
> > create mode 100644 xen/arch/arm/include/asm/Kbuild
> > create mode 100644 xen/arch/ppc/include/asm/Kbuild
> > create mode 100644 xen/arch/riscv/include/asm/Kbuild
> > create mode 100644 xen/arch/x86/include/asm/Kbuild
> > create mode 100644 xen/scripts/Makefile.asm-generic
> >=20
> > diff --git a/xen/Makefile b/xen/Makefile
> > index f57e5a596c..698d6ddeb8 100644
> > --- a/xen/Makefile
> > +++ b/xen/Makefile
> > @@ -438,6 +438,7 @@ ifdef building_out_of_srctree
> > endif
> > CFLAGS +=3D -I$(srctree)/include
> > CFLAGS +=3D -I$(srctree)/arch/$(SRCARCH)/include
> > +CFLAGS +=3D -I$(srctree)/arch/$(SRCARCH)/include/generated
>=20
> Why are we generating files in the source tree ?=20
> Shouldn't we keep it unmodified ?
I think you are right.
I got myself confused because I do not use out-of-tree compilation so
for me it looked like $(srctree).

It would be better to use $(objtree) instead.
>=20
> >=20
> > # Note that link order matters!
> > ALL_OBJS-y=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 :=3D common/built_in.o
> > @@ -580,6 +581,7 @@ _clean:
> > rm -f $(TARGET).efi $(TARGET).efi.map $(TARGET).efi.elf
> > $(TARGET).efi.stripped
> > rm -f asm-offsets.s arch/*/include/asm/asm-offsets.h
> > rm -f .banner .allconfig.tmp include/xen/compile.h
> > + rm -rf arch/*/include/generated
> >=20
>=20
> You must use the same as for CFLAGS here so $(srctree) would be
> needed.
> (or something else depending on the fix for previous comment)
Thanks. I'll change to the value mentioned in CFLAGS.

>=20
> > .PHONY: _distclean
> > _distclean: clean
> > @@ -589,7 +591,7 @@ $(TARGET).gz: $(TARGET)
> > gzip -n -f -9 < $< > $@.new
> > mv $@.new $@
> >=20
> > -$(TARGET): outputmakefile FORCE
> > +$(TARGET): outputmakefile asm-generic FORCE
> > $(Q)$(MAKE) $(build)=3Dtools
> > $(Q)$(MAKE) $(build)=3D. include/xen/compile.h
> > $(Q)$(MAKE) $(build)=3Dinclude all
> > @@ -667,6 +669,12 @@ endif # need-sub-make
> > PHONY +=3D FORCE
> > FORCE:
> >=20
> > +# Support for using generic headers in asm-generic
> > +PHONY +=3D asm-generic
> > +asm-generic:
> > + $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.asm-generic \
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 obj=
=3Darch/$(SRCARCH)/include/generated/asm
> > +
> > # Declare the contents of the PHONY variable as phony.=C2=A0 We keep
> > that
> > # information in a variable so we can use it in if_changed and
> > friends.
> > .PHONY: $(PHONY)
> > diff --git a/xen/arch/arm/include/asm/Kbuild
> > b/xen/arch/arm/include/asm/Kbuild
> > new file mode 100644
> > index 0000000000..a4e40e534e
> > --- /dev/null
> > +++ b/xen/arch/arm/include/asm/Kbuild
> > @@ -0,0 +1 @@
> > +# SPDX-License-Identifier: GPL-2.0-only
> > diff --git a/xen/arch/ppc/include/asm/Kbuild
> > b/xen/arch/ppc/include/asm/Kbuild
> > new file mode 100644
> > index 0000000000..a4e40e534e
> > --- /dev/null
> > +++ b/xen/arch/ppc/include/asm/Kbuild
> > @@ -0,0 +1 @@
> > +# SPDX-License-Identifier: GPL-2.0-only
> > diff --git a/xen/arch/riscv/include/asm/Kbuild
> > b/xen/arch/riscv/include/asm/Kbuild
> > new file mode 100644
> > index 0000000000..a4e40e534e
> > --- /dev/null
> > +++ b/xen/arch/riscv/include/asm/Kbuild
> > @@ -0,0 +1 @@
> > +# SPDX-License-Identifier: GPL-2.0-only
> > diff --git a/xen/arch/x86/include/asm/Kbuild
> > b/xen/arch/x86/include/asm/Kbuild
> > new file mode 100644
> > index 0000000000..a4e40e534e
> > --- /dev/null
> > +++ b/xen/arch/x86/include/asm/Kbuild
> > @@ -0,0 +1 @@
> > +# SPDX-License-Identifier: GPL-2.0-only
> > diff --git a/xen/scripts/Makefile.asm-generic
> > b/xen/scripts/Makefile.asm-generic
> > new file mode 100644
> > index 0000000000..0aac3f50b8
> > --- /dev/null
> > +++ b/xen/scripts/Makefile.asm-generic
> > @@ -0,0 +1,23 @@
> > +# SPDX-License-Identifier: GPL-2.0
> > +# include/asm-generic contains a lot of files that are used
> > +# verbatim by several architectures.
> > +#
> > +# This Makefile reads the file arch/$(SRCARCH)/include/asm/Kbuild
> > +# and for each file listed in this file with generic-y creates
> > +# a small wrapper file in $(obj)
> > (arch/$(SRCARCH)/include/generated/asm)
> > +
> > +kbuild-file :=3D $(srctree)/arch/$(SRCARCH)/include/asm/Kbuild
> > +include $(kbuild-file)
> > +
> > +include scripts/Kbuild.include
> > +
> > +# Create output directory if not already present
> > +_dummy :=3D $(shell [ -d $(obj) ] || mkdir -p $(obj))
> > +
> > +quiet_cmd_wrap =3D WRAP=C2=A0=C2=A0=C2=A0 $@
> > +cmd_wrap =3D echo "\#include <asm-generic/$*.h>" >$@
> > +
> > +all: $(patsubst %, $(obj)/%, $(generic-y))
> > +
> > +$(obj)/%.h:
> > + $(call cmd,wrap)
>=20
> In fact i think your files are not generated in the srctree so this
> will break if you use out of tree compilation.
Why not? They will be generated in $obj which equal to
obj=3Darch/$(SRCARCH)/include/generated/asm ( in my case ).

Anyway I think that obj should be equal to what is mentioned in CFLAGS.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 14:10:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 14:10:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595719.929313 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdWlD-0006kj-2M; Tue, 05 Sep 2023 14:10:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595719.929313; Tue, 05 Sep 2023 14:10:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdWlC-0006kc-Vk; Tue, 05 Sep 2023 14:10:30 +0000
Received: by outflank-mailman (input) for mailman id 595719;
 Tue, 05 Sep 2023 14:10:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yb0f=EV=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qdWlA-0006kW-Rw
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 14:10:29 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2060a.outbound.protection.outlook.com
 [2a01:111:f400:fe13::60a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f52cdfb2-4bf5-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 16:10:25 +0200 (CEST)
Received: from AS9PR01CA0015.eurprd01.prod.exchangelabs.com
 (2603:10a6:20b:540::28) by DBBPR08MB5945.eurprd08.prod.outlook.com
 (2603:10a6:10:1f7::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 14:10:20 +0000
Received: from AM7EUR03FT049.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:540:cafe::75) by AS9PR01CA0015.outlook.office365.com
 (2603:10a6:20b:540::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Tue, 5 Sep 2023 14:10:20 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT049.mail.protection.outlook.com (100.127.140.234) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.25 via Frontend Transport; Tue, 5 Sep 2023 14:10:19 +0000
Received: ("Tessian outbound 0b7d6027328f:v175");
 Tue, 05 Sep 2023 14:10:18 +0000
Received: from ca22b360d433.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 5788060F-EA19-4CD9-AB8A-970025261448.1; 
 Tue, 05 Sep 2023 14:10:12 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ca22b360d433.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 05 Sep 2023 14:10:12 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by PAVPR08MB9699.eurprd08.prod.outlook.com (2603:10a6:102:31e::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 14:10:08 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe%4]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 14:10:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f52cdfb2-4bf5-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+N7pg+g1BSB2/vvGwziM5rcMpVriXsJzZIVhXkBgxFQ=;
 b=qO3QiXtZHC2r+2LqQFwXdrquNURWv9bLrlvXv+GOx8nSrdoqrH6A6EC1AHLZggXm2LMtpUhnc9VVZgSoo8vB7P9yaCdIHixefr6qwyEbZbvowBBX50nZuJnxbPzG/nx3TBlG19WaqqiRBujN1IffN8/ew3gjJ1eR8/HWfpAa9d8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: f53a287cf76ee9d6
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=b6G3dg4aw1lbkP+K79CTqm0sPURaZj8m031/XYbBqFwzyL8b2RgCOvuTpU+jYNVps5aQ+jDK6+jO82hbtF/5l8hYBJpjiomPJAwz91B+cYZMam5netMPn4Btv8BwsG/UTpIKaI90UxmHd8BbN0iDJcHHV+4IqId4noIYFMrCzV0efGZQ+89RJph4D/c5PT7EGjYunOlPBhBSr3zA3fnLlc4T8DmrN2PpqE33Y5sT04s6cssK2/QsMvokScfzxh9gPlWaySEdqRQeHi8pEGUjVgtN4G7G+iWCedtOTI1u0AeGpvdB19EmKZzVaQoPQWG4eAuczn/6HImzR3rgRDKdyw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+N7pg+g1BSB2/vvGwziM5rcMpVriXsJzZIVhXkBgxFQ=;
 b=DAhEt1DyoWpoQkxzGuK65V+VIFapM+5AfmRbN5nn9K4b8rqbNBwlmlSq3ejdT8cFxYYjadOeifL4W1przUsftb2U5ELHrJIzrkGXz0GgEBM7tQRhtkWeovBHkTXXiykqDdz6KhD2v1Atw8BedgZVvFUx4mIKToLuuNC8QcF8mFQN0eFtY8AQa2Fztl3bbMoVw+dBtV24ttMqE5hguXX7i2IjMBK+1aiJNuWFY1d6dyaS+WxOJdXZxUIYIzXHst+JnjuOC00uYcI0cA7VbW//3dRKs+Wns7QO5KZjbLrCPNgU1i4TAixqQowrrVcylPToO38MDu/ABFX4XaDtBnrFGQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+N7pg+g1BSB2/vvGwziM5rcMpVriXsJzZIVhXkBgxFQ=;
 b=qO3QiXtZHC2r+2LqQFwXdrquNURWv9bLrlvXv+GOx8nSrdoqrH6A6EC1AHLZggXm2LMtpUhnc9VVZgSoo8vB7P9yaCdIHixefr6qwyEbZbvowBBX50nZuJnxbPzG/nx3TBlG19WaqqiRBujN1IffN8/ew3gjJ1eR8/HWfpAa9d8=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Oleksii <oleksii.kurochko@gmail.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Shawn Anastasio
	<sanastasio@raptorengineering.com>, Bob Eshleman <bobbyeshleman@gmail.com>,
	Alistair Francis <alistair.francis@wdc.com>, Connor Davis
	<connojdavis@gmail.com>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
Thread-Topic: [PATCH v4 1/2] xen: asm-generic support
Thread-Index: AQHZ3O2/QR3JeW3CfU20DuxQPAN2rLAKsJgAgAGRsYCAAAklgA==
Date: Tue, 5 Sep 2023 14:10:08 +0000
Message-ID: <048CB17B-A139-4552-A51A-5696B019507B@arm.com>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
 <3DCD5649-C172-4400-AA75-A28F5C0A106D@arm.com>
 <e2b6ee2ecae5512a23a3e33bba0083b90a1c8831.camel@gmail.com>
In-Reply-To: <e2b6ee2ecae5512a23a3e33bba0083b90a1c8831.camel@gmail.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|PAVPR08MB9699:EE_|AM7EUR03FT049:EE_|DBBPR08MB5945:EE_
X-MS-Office365-Filtering-Correlation-Id: b9215422-0372-4bc9-62d1-08dbae19d645
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 lrkdOY/b/Bh3tgSE2xO7UNEXeJpgNd1xlQg10IX6aS93ExgVN15/VfOfISnnmd6k8epxdj336PRjGq2N2iraHmP6hz549v8lCaIfxDKHdUi4wTRsBkCsjiMWKMgR4KXErkNxKJv+RB1X/oEEy9X7DJ5vCtMzYewClosuZsPds3n8kG8WhS7rYnzNfdj4STxR/4iQJYrrMMsFTJUp7BSYcrvId2W8akFAXvMNa2XmFuGCT3bWTBm8GAEJ4J8NJm+camEMeFEtwSNEFXrozC651T/c7g95+9oU19RG2K1qP0l2X7Q2AoTW4BvsiFM+OQQpCICi1fwGPXgVIz1s/kINooXag1+PGeLxD7a59nCWfSAmR+ofkuodyEv+xKZ85y+8c9q+F/fS3KQC525xuPu3fEf9vBkECtMYHHj5SPGueA1H99fOsxqqgY9/vU9OnDBxisfLS9sgKmS06e1+XnZh/hUuPt5M5YgrHmX7bcLtQ5I5hmU2ric3xI9HREYu8dn/4Ygtfq0KViBFntmJX0hC6iXdFfajqLhXqcuwhASQbsuQZWDw0zOGrFh/IAiny6LxeuhBWJlD+lL80shdQwHCz9j0IUUIy/WAE3FzOvRgqrwfYivq7JA5VieBEapPVAVcWJbdmfRpYxV7bqJmtDjeVpOADzeprB+F1Gy9CuAnaXg=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(376002)(39860400002)(366004)(346002)(451199024)(1800799009)(186009)(2616005)(8936002)(316002)(64756008)(54906003)(6916009)(8676002)(4326008)(66946007)(66556008)(66476007)(66446008)(76116006)(122000001)(6486002)(6506007)(53546011)(6512007)(41300700001)(5660300002)(83380400001)(7416002)(26005)(91956017)(478600001)(71200400001)(2906002)(86362001)(36756003)(38100700002)(38070700005)(33656002)(41533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <8FFDE81F97BB4B4CAAF6BC82FD2AD29E@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9699
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT049.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	a1f40cee-1437-4260-784e-08dbae19cfa2
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ru5/rtwY5Uv1CHDsWvytaGPKyl9f0I8hHRAD4IbRHGhLcR+qLph6Z/1Wm4E/cKcfQdTJuEIIVxSs8FJcLER/lZWQYSPSu39CRYlniKSk/tYlhnrMSpNXX0vGtGcJCMMmQtT4MTDEqTEgbghlVlvudZaVx8+UYcr1GwrptaHnCznVm7wGkFQWv89EwYDXL2ydXR8/vf8Oz4U2FL8Mg630S6jwQrW1AWa+mcLBi38/3Unw9IdYC2uMV9hiM49RVpTWu071+QX0dFF0pWIsVC6b7FKD0sgDpxgkjF3cdkaVrKaTtuJnX5jbeMNcDH5BCQ2kCpHi8xbdO4E8FFsea6jAYnMZ9uUkihama/0jbvwoFA3483SUpPWGN1nYwIzhYreHH9b+cxr9v50dUWfM3rfv/HLn4cEwsxlMnx5cAPglfT9CGP2MsliMJ582yFhrhYO5gRHBrFP1NO4/+kDva193Cbo36QLLv7rUhZR437NOp+M11JEVtEc3XAAC3kobLi6kBqJtB8SiEo6CfgFLTAmEo3Cbg5jYDqCUTzUKhcNYSasLVxqON4hDo8eUAMI29L8tiI8VBhELdKtTGMyJb36SeU8qm7mpZnqajSV15WLtNA6UFf2FD3aJdjIdoU+zJBv41t2FjBB7Jqq6OmBaDK77TkKgwo/Eegg0qiOeZiX5FE8xx6/nRFSycbpt/yCgYsTV3Vy+KZwZqF8rlE85JxAXBLbV9+0YN5Owal+rY7MuYeeJc5qiyWLCpzjvfGqz+lOpr1XbM3x9dBDWphOMJOGelQ==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(39860400002)(396003)(346002)(136003)(186009)(451199024)(82310400011)(1800799009)(46966006)(36840700001)(40470700004)(70586007)(53546011)(70206006)(54906003)(40480700001)(6486002)(6506007)(316002)(41300700001)(6512007)(478600001)(6862004)(4326008)(8676002)(40460700003)(2616005)(107886003)(26005)(5660300002)(36756003)(36860700001)(33656002)(82740400003)(356005)(81166007)(336012)(2906002)(8936002)(47076005)(86362001)(83380400001)(41533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 14:10:19.4406
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b9215422-0372-4bc9-62d1-08dbae19d645
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT049.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB5945

Hi Oleksii,

> On 5 Sep 2023, at 15:37, Oleksii <oleksii.kurochko@gmail.com> wrote:
>=20
> Hi Bertrand,
>=20
> On Mon, 2023-09-04 at 13:39 +0000, Bertrand Marquis wrote:
>> Hi Oleksii,
>>=20
>>> On 1 Sep 2023, at 18:02, Oleksii Kurochko
>>> <oleksii.kurochko@gmail.com> wrote:
>>>=20
>>> Some headers are shared between individual architectures or are
>>> empty.
>>> To avoid duplication of these headers, asm-generic is introduced.
>>>=20
>>> With the following patch, an architecture uses generic headers
>>> mentioned in the file arch/$(ARCH)/include/asm/Kbuild.
>>=20
>> Kbuild refers to "Kernel build" I guess.
>> I am ok to keep that name to keep things simpler when compared to
>> Linux scripts but it would be good to mention that in the commit
>> message for future reference.
> Sure. I'll add that Kbuild refers to "Kernel build"
>>=20
>>>=20
>>> To use a generic header is needed to add to
>>> arch/$(ARCH)/include/asm/Kbuild :
>>>        generic-y +=3D <name-of-header-file.h>
>>>=20
>>> For each mentioned header in arch/$(ARCH)/include/asm/Kbuild,
>>> kbuild will generate the necessary wrapper in
>>> arch/$(ARCH)/include/generated/asm.
>>>=20
>>> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
>>> ---
>>> Changes in V4:
>>> - introduce asm-generic support
>>> - update commit message
>>> ---
>>> Changes in V3:
>>> - Rename stubs dir to asm-generic
>>> ---
>>> Changes in V2:
>>> - Nothing changed.
>>> ---
>>> xen/Makefile                      | 10 +++++++++-
>>> xen/arch/arm/include/asm/Kbuild   |  1 +
>>> xen/arch/ppc/include/asm/Kbuild   |  1 +
>>> xen/arch/riscv/include/asm/Kbuild |  1 +
>>> xen/arch/x86/include/asm/Kbuild   |  1 +
>>> xen/scripts/Makefile.asm-generic  | 23 +++++++++++++++++++++++
>>> 6 files changed, 36 insertions(+), 1 deletion(-)
>>> create mode 100644 xen/arch/arm/include/asm/Kbuild
>>> create mode 100644 xen/arch/ppc/include/asm/Kbuild
>>> create mode 100644 xen/arch/riscv/include/asm/Kbuild
>>> create mode 100644 xen/arch/x86/include/asm/Kbuild
>>> create mode 100644 xen/scripts/Makefile.asm-generic
>>>=20
>>> diff --git a/xen/Makefile b/xen/Makefile
>>> index f57e5a596c..698d6ddeb8 100644
>>> --- a/xen/Makefile
>>> +++ b/xen/Makefile
>>> @@ -438,6 +438,7 @@ ifdef building_out_of_srctree
>>> endif
>>> CFLAGS +=3D -I$(srctree)/include
>>> CFLAGS +=3D -I$(srctree)/arch/$(SRCARCH)/include
>>> +CFLAGS +=3D -I$(srctree)/arch/$(SRCARCH)/include/generated
>>=20
>> Why are we generating files in the source tree ?=20
>> Shouldn't we keep it unmodified ?
> I think you are right.
> I got myself confused because I do not use out-of-tree compilation so
> for me it looked like $(srctree).
>=20
> It would be better to use $(objtree) instead.

Ack

>>=20
>>>=20
>>> # Note that link order matters!
>>> ALL_OBJS-y                :=3D common/built_in.o
>>> @@ -580,6 +581,7 @@ _clean:
>>> rm -f $(TARGET).efi $(TARGET).efi.map $(TARGET).efi.elf
>>> $(TARGET).efi.stripped
>>> rm -f asm-offsets.s arch/*/include/asm/asm-offsets.h
>>> rm -f .banner .allconfig.tmp include/xen/compile.h
>>> + rm -rf arch/*/include/generated
>>>=20
>>=20
>> You must use the same as for CFLAGS here so $(srctree) would be
>> needed.
>> (or something else depending on the fix for previous comment)
> Thanks. I'll change to the value mentioned in CFLAGS.
>=20
>>=20
>>> .PHONY: _distclean
>>> _distclean: clean
>>> @@ -589,7 +591,7 @@ $(TARGET).gz: $(TARGET)
>>> gzip -n -f -9 < $< > $@.new
>>> mv $@.new $@
>>>=20
>>> -$(TARGET): outputmakefile FORCE
>>> +$(TARGET): outputmakefile asm-generic FORCE
>>> $(Q)$(MAKE) $(build)=3Dtools
>>> $(Q)$(MAKE) $(build)=3D. include/xen/compile.h
>>> $(Q)$(MAKE) $(build)=3Dinclude all
>>> @@ -667,6 +669,12 @@ endif # need-sub-make
>>> PHONY +=3D FORCE
>>> FORCE:
>>>=20
>>> +# Support for using generic headers in asm-generic
>>> +PHONY +=3D asm-generic
>>> +asm-generic:
>>> + $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.asm-generic \
>>> +            obj=3Darch/$(SRCARCH)/include/generated/asm
>>> +
>>> # Declare the contents of the PHONY variable as phony.  We keep
>>> that
>>> # information in a variable so we can use it in if_changed and
>>> friends.
>>> .PHONY: $(PHONY)
>>> diff --git a/xen/arch/arm/include/asm/Kbuild
>>> b/xen/arch/arm/include/asm/Kbuild
>>> new file mode 100644
>>> index 0000000000..a4e40e534e
>>> --- /dev/null
>>> +++ b/xen/arch/arm/include/asm/Kbuild
>>> @@ -0,0 +1 @@
>>> +# SPDX-License-Identifier: GPL-2.0-only
>>> diff --git a/xen/arch/ppc/include/asm/Kbuild
>>> b/xen/arch/ppc/include/asm/Kbuild
>>> new file mode 100644
>>> index 0000000000..a4e40e534e
>>> --- /dev/null
>>> +++ b/xen/arch/ppc/include/asm/Kbuild
>>> @@ -0,0 +1 @@
>>> +# SPDX-License-Identifier: GPL-2.0-only
>>> diff --git a/xen/arch/riscv/include/asm/Kbuild
>>> b/xen/arch/riscv/include/asm/Kbuild
>>> new file mode 100644
>>> index 0000000000..a4e40e534e
>>> --- /dev/null
>>> +++ b/xen/arch/riscv/include/asm/Kbuild
>>> @@ -0,0 +1 @@
>>> +# SPDX-License-Identifier: GPL-2.0-only
>>> diff --git a/xen/arch/x86/include/asm/Kbuild
>>> b/xen/arch/x86/include/asm/Kbuild
>>> new file mode 100644
>>> index 0000000000..a4e40e534e
>>> --- /dev/null
>>> +++ b/xen/arch/x86/include/asm/Kbuild
>>> @@ -0,0 +1 @@
>>> +# SPDX-License-Identifier: GPL-2.0-only
>>> diff --git a/xen/scripts/Makefile.asm-generic
>>> b/xen/scripts/Makefile.asm-generic
>>> new file mode 100644
>>> index 0000000000..0aac3f50b8
>>> --- /dev/null
>>> +++ b/xen/scripts/Makefile.asm-generic
>>> @@ -0,0 +1,23 @@
>>> +# SPDX-License-Identifier: GPL-2.0
>>> +# include/asm-generic contains a lot of files that are used
>>> +# verbatim by several architectures.
>>> +#
>>> +# This Makefile reads the file arch/$(SRCARCH)/include/asm/Kbuild
>>> +# and for each file listed in this file with generic-y creates
>>> +# a small wrapper file in $(obj)
>>> (arch/$(SRCARCH)/include/generated/asm)
>>> +
>>> +kbuild-file :=3D $(srctree)/arch/$(SRCARCH)/include/asm/Kbuild
>>> +include $(kbuild-file)
>>> +
>>> +include scripts/Kbuild.include
>>> +
>>> +# Create output directory if not already present
>>> +_dummy :=3D $(shell [ -d $(obj) ] || mkdir -p $(obj))
>>> +
>>> +quiet_cmd_wrap =3D WRAP    $@
>>> +cmd_wrap =3D echo "\#include <asm-generic/$*.h>" >$@
>>> +
>>> +all: $(patsubst %, $(obj)/%, $(generic-y))
>>> +
>>> +$(obj)/%.h:
>>> + $(call cmd,wrap)
>>=20
>> In fact i think your files are not generated in the srctree so this
>> will break if you use out of tree compilation.
> Why not? They will be generated in $obj which equal to
> obj=3Darch/$(SRCARCH)/include/generated/asm ( in my case ).

Right they are generated in the build tree but if it is not the same
as srctree it will not work due to CFLAGS.

>=20
> Anyway I think that obj should be equal to what is mentioned in CFLAGS.

We generate other files like asm-offsets.h and it could in fact be that
both srctree and build tree are already in include path.

There is in makefile a rule already removing asm-offsets.h which is generat=
ed
and this one does not use a prefix so we should follow this standard in fac=
t.

So we should not use any prefix (srctree or obj) i think.

@anthony: any suggestion here ?

Bertrand

>=20
> ~ Oleksii




From xen-devel-bounces@lists.xenproject.org Tue Sep 05 14:18:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 14:18:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595727.929323 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdWsU-0000Am-W6; Tue, 05 Sep 2023 14:18:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595727.929323; Tue, 05 Sep 2023 14:18:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdWsU-0000Ae-RQ; Tue, 05 Sep 2023 14:18:02 +0000
Received: by outflank-mailman (input) for mailman id 595727;
 Tue, 05 Sep 2023 14:18:02 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdWsT-0000AU-VB; Tue, 05 Sep 2023 14:18:01 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdWsT-0001ec-Qi; Tue, 05 Sep 2023 14:18:01 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdWsT-0000M2-ES; Tue, 05 Sep 2023 14:18:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdWsT-0005Hb-Do; Tue, 05 Sep 2023 14:18:01 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=RG1RXqDOxgkXk5JE5o+3nxb0oHFA8gayEcUJ0gO3Gzw=; b=4EEfdLV1qDtxTxUX41xGSc9tNY
	Fi68o1eCpYeJGUaE1rVyid18GKxM5FYx1Scc3KpMYkE9mFwbVohae54WnlbQHMI0Rs3ChSgtQl2wM
	zdFreQAQs8BnL2UupUDaNlW5Gu2KU2YxG8LUe8RfWDgDTxXA0tzd8FM13htwZWM8r/kE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182628-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182628: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=3f86ed6ec0b390c033eae7f9c487a3fea268e027
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 05 Sep 2023 14:18:01 +0000

flight 182628 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182628/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                3f86ed6ec0b390c033eae7f9c487a3fea268e027
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z    8 days
Failing since        182544  2023-08-28 20:42:13 Z    7 days   15 attempts
Testing same since   182628  2023-09-05 03:23:31 Z    0 days    1 attempts

------------------------------------------------------------
2072 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 239743 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 14:43:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 14:43:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595736.929333 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdXGc-0005s8-UG; Tue, 05 Sep 2023 14:42:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595736.929333; Tue, 05 Sep 2023 14:42:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdXGc-0005s1-QJ; Tue, 05 Sep 2023 14:42:58 +0000
Received: by outflank-mailman (input) for mailman id 595736;
 Tue, 05 Sep 2023 14:42:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdXGb-0005rA-3g
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 14:42:57 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20624.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::624])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7f91ca58-4bfa-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 16:42:55 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9639.eurprd04.prod.outlook.com (2603:10a6:102:260::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 14:42:52 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 14:42:52 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7f91ca58-4bfa-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=O6N40g4BBBXFcFcRzjZY6jErGOI5izg6Reb78to9EPLDeFxhrBnNHNcvDAHLDuwwnqQPlLD+6iEYLesuAfe2DvDFZIRTFySd6fNyum8A95vZWNHxWiC3wejSlc6fayp6x9JYqVmJ7j8f4GLNk38lm/xM3iff3XE+n7BL23qJLw2x0E5QbD5cA4AxjxiANLOV2BLp25yr2uzlLY6CWTNY5D+SkAINqFSSffHmPvMJ9/xe5UKUhtjPnAfDTpgx2knIUIiFxYoqrpnUdunHi4xj7Ll8p8UN5co1luniSvhdZKIIHba9n1nNkK8rROwsUlEk+3RlCKWfeaaIHSmlhGFZCg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9EckAGdbJxM6GXHklp4w84GtqGWjLoFS1T/JUXPQtwI=;
 b=NpDw9wyqmfMhUikqOZ0PdRVhKi+9YSXxOdH2gRCzqHMszEJEWDRUryP6ydqYGMJS46UGwe/uDWTtYmqQEW18y/f4PEAqoUADG4DlFAJ4jLrlQC4yNGNnPNGsxVv3ynOoLx9f1CPIiM2gXt+P43fmZvkSmpmlWpHAKjp6Ugd/fPKmOTL8/0R+pO22TK9ZgRAVlvcT5cOxg7EiNDEcutcT7mwVC1xk52wW/yorwAlUxMOfh25QChZ94yPz8EjpWbQWWufwF2BPvzvBWwNfxtEM7nCxtP0t7bMnVA9yfHrmJNVSYz0EADKDcINxrloD/e0n3S/Fsh4jVcBlS/kvVQo7MQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9EckAGdbJxM6GXHklp4w84GtqGWjLoFS1T/JUXPQtwI=;
 b=UKVSjzbF/ivitUYMnYvGjKDvUw6nIvl6mNyidAgGLoNFx1LCdoeNe9pjXcUruGKpsaX3Z8CygRujeDcbJKOEzJt/X9HEcQ5EWatQJsijsiQ/LeuZTu6YgSNyMQ7tYWUL3aoC7UXk1tprdePN9lSHYG6jt14uWvK7K/CKjPmXVrFfjPPqHyBxvMI7NgBSJ/VjV23oL8Yd/0f+NW8YpaRS0jW1Q9gOofkUoiLgxrQeAfEDebuyNrtRg+2vpGR5x3EP/mdDMSr4pvlECa7t6o+bKiulvOjCgFz0K2H6oZ74TI1Gbi53rElALkICoDjP6HI+2iSZJsOXEeIxUfRunbUL5w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2dc97f01-7088-1a91-77e2-79792840b828@suse.com>
Date: Tue, 5 Sep 2023 16:42:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v3] drivers/video: make declarations of defined
 functions available
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
References: <d0266b549dd88d273918521ccb538592df9e58b1.1693551521.git.nicola.vetrini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d0266b549dd88d273918521ccb538592df9e58b1.1693551521.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0051.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4a::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB9639:EE_
X-MS-Office365-Filtering-Correlation-Id: 6e2d52e5-3c55-45a3-5cae-08dbae1e6243
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YmCpdVutUGfBYdSQAUw2DT7t/g/Rwr12zcBDAH3sQvAPNX3TXvTmVIgQoWPRmawSDrJnS8oQXQPr3bu5iZATB7JUxIdxJ7hmA+meSQiGcphfN6UQMjZOl3i1c940egckCmf5fyqJo5LrnVNbeS+AfYDA0BVWKGnw2umf1dcrxuGoHoGdUH1bjbT3MDpkAhKQdD4UeX6p7o4/NC22583SAkzFZRU51TnP+4m1Mc8EjdDBnRfsqILNEszVYiXtmJunY0//Hp8Ygg2u8bGzVHnh2DOUe/1FBhjlovjPS40pWPIPsihypxwmXbL5d679SQ9zmprrZfblFJ1FC+gqvYedBRfZ+fZN1j5pPHnWcJsfO5Kk1KxeXjcLSw4zSorIr6W9jarG8Vf3qe49C+DP8iJ/RvdbQGM5gecMTjfqmqEAdpqlc75tdsvUKxVKKEpR4yb1nInxAn9ac8gVLY8Ee8ILMzNfsLuY5bKrH7zZxYSD+xz5hJqCGNPgW2a8zrbNdLP6lwD3e41UI/ErJ2rK5iLbFuVQ9CV2teiwvRfhj1eAlsLktb3/ng8zgPvOmp4Ul4zQH4g4K2wADnKyZqL8cPouFTyyZdTLCT1SwHVf0eJy0Vbqt96D4zAqd97BSLQ2ws5EECqtNbXHk9ikJ85OerSO0g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(376002)(136003)(396003)(39860400002)(451199024)(186009)(1800799009)(53546011)(26005)(5660300002)(2616005)(66556008)(66946007)(66476007)(54906003)(316002)(6512007)(6916009)(6506007)(41300700001)(6666004)(4326008)(8676002)(8936002)(31686004)(478600001)(6486002)(7416002)(2906002)(31696002)(86362001)(36756003)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aHU0b0hUWkJDLzlhcFFZTjBTVzFJcURYMWFUSlZlZGduNVkveXdXMHc4L1Q1?=
 =?utf-8?B?WEpRMTQ4YWVjTjYyczJkcUlsQ3JQMFNjd2F2b3RQV1NtVzE1ZmRqaWI1TWNO?=
 =?utf-8?B?ZFBtT2tDUUVjQ3RKcHJBSlFHeHJBSi9qdndTVEowMFcrVHF4M0FzL3EveUJP?=
 =?utf-8?B?NjFzajFlMlhYdlpJZEtGY0JCMGpqWnZWUGp4VE9xVjFGeHJnUmYrOE1KT0V6?=
 =?utf-8?B?MUxIZXpjUzFGZjlmam1HVUpHWkdFRmgxZ3B1b1NJbGo4VmI4bjBja1hPWksr?=
 =?utf-8?B?YnBZRGovMGptN3ZnejVZTEo3ZnQyRFpHVk9reUNVbHpKNXU2UmdmYk91UTFD?=
 =?utf-8?B?UXJ0b1VGUVh5RFFLdG5nTmlDM09sVktvanEzZ2Y0bjliZHF2cDhYMlVDQTRH?=
 =?utf-8?B?cEpjeXdOenZoUVRaazVNSVRjeTV2OFVhVlBiNTNPeE5iNzZaY1VaVjEwdnBh?=
 =?utf-8?B?TXU3RFQ0ZEZLczBMaTdNa0s5azdnYXgxM0FCTlpyVkVxQTJJcldCckJJQVkv?=
 =?utf-8?B?K0owSmF5ZXNTbmNCYUJKUStVaDY3eFJCRjljK3hXckcvaXhFYVlUUTgvSDZB?=
 =?utf-8?B?eVlkMzY4b3k3d005QTRtRHZCL1FRZUY4RHBLVDAvSlZqeHZBekYvSXRjWWpU?=
 =?utf-8?B?RDIzYm8xbDJlRTNEYVNqU2xCWnRQNWVncTVIZmJESG1ieVdpdUNXK1psTTBH?=
 =?utf-8?B?eUt3dG9sb2tKMjl3cUlsbU1wWUFVdTVTQmNwbFdRY3hUazJWS2VLSnlvVCtn?=
 =?utf-8?B?ZGNteklSeEo4L2tUYTFVUHRnWW8rWXdrNXdDL3VMaE1FdmtZYUowTXdINXFZ?=
 =?utf-8?B?YkRrZUxxbzhoVVNUZkZ3YVk1cnU4My9qUDJkdTJlTmNBKzZuMFAzdVp5YS9U?=
 =?utf-8?B?Z1BuQk9mS2kycGYrUVJEUHNXdzE5SUNLNUNCcm84VnVlMjQvZDFTWDRFK21M?=
 =?utf-8?B?ellFOVBqL3FPYWpEV0tFTzM3b0xOVW9sZ3BhUVEyV09yN0ZIYndTWkxKNkk1?=
 =?utf-8?B?MGtHWld2eHN2Unk5ZzdmbWZmUXRnSjB3QS9HVUFRcDRrSUJLcklBRDE5bDJJ?=
 =?utf-8?B?TUNwM0tvMWVjR1pkSm9HQS9kaVVvckxTTEtUWUZFa0FMSzg5VEFGOXR3aC9u?=
 =?utf-8?B?MFpoUVh6V1ZWZkNML21pa0VyTU9WN25ySUg5OUJDQjRydTNwcWxZTXViZGl5?=
 =?utf-8?B?ZzAyWkRSYmxIMTlPZStOdDZ4a3MvUDU5c1A2Q3J1bHhuRkZkSDVjeVhjWHNk?=
 =?utf-8?B?NkRJZ25XN3hMVzMrMEN3SmJLRHBwQ3M0VzRZV2IzYmhOQnZVVVdFdk9MME1M?=
 =?utf-8?B?Tjczd01OK2x6bW5OQkd3N0ZuZ2xjOFMxdkdxdm5rTlo4S05Zekc2SEhIOG5h?=
 =?utf-8?B?YVlvazJRQ1kzRUVTbUZnVWl1Q1lFbkl1VDNzM1hUbHRlbUhXUGZOemlWbmoz?=
 =?utf-8?B?elFuODB6bXgwZVNjWnkzM0hVWU9YY3E4TjBTQjBSeWRXMnE1eURyYUtEYkRK?=
 =?utf-8?B?NmZMd0VTUFpRL0ZaaGl6U2FFdFNYdS9EcS80TVRsR08yLytOUjIrQzdMbmxr?=
 =?utf-8?B?RzVyQStJVW5USkxDcDBHQ2g2a0NlMGt2cUd3OWxXV3M4VjRlamxsVTQ4TGg3?=
 =?utf-8?B?dmNpZzNrV1E0bHZwNC9Ja1M3N3RkNksyb3RtUGR4QWZqeVU5MWM1UVdDeFRl?=
 =?utf-8?B?T2k1NUdONU1EMlRvYWYwZ0h1TFhrNmNhcXhYM1hNMTB6V2Z5VHBad1h0M3lM?=
 =?utf-8?B?MTVENU5VK3VpK0hyN1R2MUFkc3pOT2R2blYrYTRlOTZkRzVQekVUVE50MEda?=
 =?utf-8?B?UENuSkFxU3R2SHhOL1lPcFVHVmw2aG5pbVIydGEzV1VETEJydkU3bGxteHBT?=
 =?utf-8?B?RXpiQTJFY3ZCZjVoaVFmbEM5UjMvVEVxc3N0MFRZU1cvWGxpUE1WaVQyTXJB?=
 =?utf-8?B?d1p6VUdUa1VpRjNDdmhsZmxKSGFNOHdTTGZ2WjhCelVmU2p4bE5oaFJoZFV4?=
 =?utf-8?B?alk1bmI0eDQ0Y3p6ajdXb3BmcTJMdmlhRFE3ZWJZQUZZQ0FZR2lyREhYME5s?=
 =?utf-8?B?ZjJZUE5kMVpKWjFna0R6cHlMcXUybFUreHRYQ0t5L3pyV0h5UklvRlBzTjRn?=
 =?utf-8?Q?Td5hXgZ6fq4q1ivTNhRKSxkpl?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6e2d52e5-3c55-45a3-5cae-08dbae1e6243
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 14:42:52.5173
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: YWtDxGn89lypDv522oRWrFqhHRgNSeOPGErqwCj/qlmSj8A8CvnE+EkhoPV+PkxuDZXNJJafX50DMPgSzT9bhQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9639

On 01.09.2023 09:02, Nicola Vetrini wrote:
> The declarations for 'vesa_{init,early_init,endboot}' needed by
> 'xen/drivers/video/vesa.c' and 'fill_console_start_info' in 'vga.c'
> are now available by moving the relative code inside 'vga.h'.
> 
> While moving the code, the alternative definitions are now guarded by
> CONFIG_VGA, since it implies all previously used constants.

But such an implication doesn't mean said adjustment is correct. Easiest
would likely be to simply drop that half sentence.

> --- a/xen/include/xen/vga.h
> +++ b/xen/include/xen/vga.h
> @@ -13,6 +13,14 @@
> 
>  #ifdef CONFIG_VGA
>  extern struct xen_vga_console_info vga_console_info;
> +int fill_console_start_info(struct dom0_vga_console_info *);
> +void vesa_init(void);
> +void vesa_early_init(void);
> +void vesa_endboot(bool_t keep);

Nit: Just "bool" please.

> +#else
> +#define vesa_early_init() ((void)0)
> +#define vesa_endboot(x)   ((void)0)
> +static inline void vesa_init(void) {};

So why two #define-s and one inline function? Just because it was that
way originally doesn't mean it needs to stay that way. Then again are
the two #define-s actually needed at all? It looks like they were added
to vga.c just out of precaution, covering the "VGA but no VESA" case.
Now that things are properly moved to headers (and keyed to CONFIG_VGA)
I think we'd better omit those. They can be introduced again when we
gain a VGA/VESA split (and a CONFIG_VESA).

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 14:58:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 14:58:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595744.929343 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdXVb-0008EJ-AF; Tue, 05 Sep 2023 14:58:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595744.929343; Tue, 05 Sep 2023 14:58:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdXVb-0008EC-7V; Tue, 05 Sep 2023 14:58:27 +0000
Received: by outflank-mailman (input) for mailman id 595744;
 Tue, 05 Sep 2023 14:58:26 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdXVa-0008E6-4y
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 14:58:26 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2061f.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::61f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a8edb11d-4bfc-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 16:58:23 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8889.eurprd04.prod.outlook.com (2603:10a6:20b:408::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 14:58:21 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 14:58:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a8edb11d-4bfc-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FXEraWyAKrObJhq++y8qlZLozIyAkJ6F9uCPMXs2bD4HhooRmwIzoTHnMVFEien+JrWUFbkdt7hBjA0y3kLuhne7s8BIMIBFjd1llhYXK0Cwnm6mUIklw6GsKPjHO5XKC64EHYR+QAvxO88wwi66gt1hAWw4aa3eSZLAMcLQxXbquGNNK18fHurwISx8IQoO+K+JH1QY+IbVNZmjfwMLP+g6PRe/jERSVe9MGsKGS1mXAG1/qYjvDsBCYmUg7UPVvdtqORUYKBtGlllV63Y9LF5bBwmrTBI+qnG2PbKCPJ2oPG9YH6CGE2Fhq1bZGllnx8lr/MxsU9TRYFAqIewFNA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kH8U8l8x3oH9VXoWQ8vgN+kErZjRLvzrKcTCOaCO2VI=;
 b=nFtsk8TaSuhqyM9hJpL5dqetHesDjXDVKEFSISih2QmNIKTagdRAROsHrlZjH9boCOjKTI9J6JAyIM2vJ3kdKXNMN7vZ65zZ3hmLQCpfAFCyVGPVD0TqsU7awdjtO70GM2egz3zTyJVYtFukz6RqcWGP8H+BoEWmdtvySViEpPyL43hLXTGi2QUenVCY0SKZfW6Kf9f1cbgTHSrqAOdIz+vt/DsExmRxaSdHM1Ph5faAKtwrXPDmjeRV0CWXR0q/CTHaBnztdHjKPjMw9AqKX/0nLxdDca8AyqNAy5puiueb8WahXasoRoWi+aQ1yQPYsZhfE2CFenCUoClQIT/9TA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kH8U8l8x3oH9VXoWQ8vgN+kErZjRLvzrKcTCOaCO2VI=;
 b=v6niG8vHXe5ejO1dAW1vOi1rKKz5ISt0AyTTxnhHLgbFlmjztLxEBH3KasUXsQ/bDHSaz3qmD144P8gNfqmFwzn6j0ug/6TqUokh13vxcMJ8VWLjz8FWqI5woV+IzLVJDOtgYEDxi651F13OymhkR9VRoWxHp7Ro37MAikFAxlyMvjafLoG07AcnHKDskQoTQbFyK5K/aPxKVpBSzZsKnZZAPCwcWRMRl+uAbr0V6BuA9A1n1M9D3Y9iFpyVaj04pU2tp11oRIIH9dYe7t1kZQM0+RRpNSKbwh1LbkQ/ZdDJIt7aYCxJHJnTEOh5Ybjf8qU0iu7K7ozv/Hq7QEa59A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <692dae52-947b-5856-f1b8-5d9f03f78e6a@suse.com>
Date: Tue, 5 Sep 2023 16:58:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v3 1/5] xen/ppc: Implement atomic.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693590982.git.sanastasio@raptorengineering.com>
 <917dc5517b69657b48e69c4100234383f5c70e0e.1693590982.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <917dc5517b69657b48e69c4100234383f5c70e0e.1693590982.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0105.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9c::17) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8889:EE_
X-MS-Office365-Filtering-Correlation-Id: 392c1e19-1b2b-4d5c-a27d-08dbae208bc2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	cOqvlB7pnAWzLiOGGC8h8n/nc2v61AjEPR6jBnQq8I0f2DCoN570w6riqHDQPK/JHdDl642MahFx2mt/iELj5zKfsG2OkCoeiHFlvVCgCCw6eSRC/zTUdjvAkcv1sF84C/3Px7o7ZcQwOxwaFDHWdYz0bPHo0pclkjwAlV9gxQZRIcPF6aUX1baqJOc7NfgSBitAeasUU3iztVfAb8XqhCjGBrdrMfeKVqI3V9Z/YCR/YWlk42Uvj5GhomqaWZ9YIajDtOUMTLbXhkWUUdue8YuaClADiQqmngxb78B8aPet0QraVEM+//Q8lMrG0RwaP/CiZRyHShUb/L6eThESHDtC4jedCuxRTsaacJ+82Ev47vtUuKM2vnMir/rWkQOoCmb1Kls93Y1m8Er9UNG5uOvnGp9QJkk8Ys6dZ9r8+QXnVvogf5XLQLVNytutVTZaTTAC9yt9z00G/1xBJPZGQYurQ7W80v/6GwgoFW8D6ein9KXerGs5vCMNBHJfPTGhsSP9abmktWQsnbjl9njjxNvpYSpbiKxNnOssIrNteUnG25kKqcw+xXofqEXvCdloEVqzG5o4VNtlJZU2/3fxPghzNsqbFx8FKjuTut09iuMwqILs+k7O9AAP0W5agIoV3XDcV5SQL+3famj9+QQDGSS1R5MhvbYScj7vwg26w2zfdvbJB5ci70B3wgzPkY11o8HzghrcrjsP2JZiwsD5Wg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(396003)(346002)(366004)(376002)(1800799009)(186009)(451199024)(2906002)(38100700002)(36756003)(31696002)(86362001)(4326008)(8676002)(8936002)(53546011)(26005)(2616005)(66946007)(41300700001)(6512007)(66476007)(66556008)(6916009)(6506007)(316002)(5660300002)(6486002)(478600001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Z2dxWm1kdzRycUtEaS90b3B6K3VvS2puNU9oWXZJSVFZa3hTQzVkejJFRDlk?=
 =?utf-8?B?OVpSc2RIWjhXVTIxc0RWU2NSK21YV0lnSisreG5rS1dEYnlJZFJwREYrWFp6?=
 =?utf-8?B?WFZ4WWxHMExCWWNpNHQxeVFONnhqby80NXVxNmxQME1na2xJaTdOVXZncXFw?=
 =?utf-8?B?amZhQk9pNnA4VStucThOa0kwSVhQdjI3MW9FampzRlJjOTNLU3ByZ21FZjI2?=
 =?utf-8?B?RzA0Y3ZNeG94N29XRHBhOTl0V3N2c1o1OFY1cVJjazhvUXhBN0xFTmg0SUtC?=
 =?utf-8?B?SnZlUmJjT3U2NDlkUDk5TkxITkQvMjRJY3dSOTV3eittR1cxOFR1K3ZCOUll?=
 =?utf-8?B?MkI3ZHhuSGFrMzlWQTJBVDBHSmFxRWF6S3dLZmo2RFdVbW1LWEJJblhEMEN6?=
 =?utf-8?B?UFV6SE1lcklFTDhraUlSNndBajA5SEVyUTVRV296UmtOU1dFcVpoN2FsUnUv?=
 =?utf-8?B?cGtpelVJcFJDdkRGb2xxY2c3SFpIYWVsQ2RodkZpQzRPUUtiRSsvV0lWTkxU?=
 =?utf-8?B?VnZvbWIxWCtQdWRwelU4NThQdi9qbkdNMU5LR082SmlDZ0hIL0xhQlc3dTNk?=
 =?utf-8?B?aTZqcUJvSHlXbC83OUxTQm9Lbi9WdDB3TDQzc2hPTmhXaFVtN2QrRm5ObEl1?=
 =?utf-8?B?NDlJSE5KcjU5VFIzQ2tXZUI5OHhGMjhmRllxeEtJK2prcG1TZ0IyUTl0R0JE?=
 =?utf-8?B?enAvdXpMNnplSUVHN1ZqaHlxcmZZWDluVnNzNnZMMTdXYzNRUWJMWVdPS0xC?=
 =?utf-8?B?RkE4TnFrdCtjZkQ5dTdScmxHOFdBR1VGV3djUGRKRFJ4WTVUU1p1eWlKWEtq?=
 =?utf-8?B?Mi9NWnQ1N2lOc0loUUZkSlpIdDM5OWZtemZWblBFVGluU2dlbUw0Z0ZGeith?=
 =?utf-8?B?S3lsUk5VS3FqM1VyaUl3OTVWbHhzZmg2M3dVUTgwcGw1UHFrQ1M1c3NtanBw?=
 =?utf-8?B?eEtYMkNaWnZUNmRTcXROb1RPNE5rTFNFZUtlYjhvR2F3VzY4WWR5UkxqckdK?=
 =?utf-8?B?dk1sR1Y3ZzhWSVMyaU1lZzl4VHJoakZhQzZLWVlZMGt1S2tkMWlFYnpWYmdk?=
 =?utf-8?B?Q0M5eGhTN2h0VU51NHBGZlJ2TnM3eFVDem5uRTg5eGpUaFEyZG9vZVBBQm5Z?=
 =?utf-8?B?aTg5aTR5NWR2K25vQ0EzSjhCRU9kaytrWnRkekx4UUtReGFqRGlvSmVZSW5y?=
 =?utf-8?B?eHFNa3BRVTFzZmo1TUk3Qld6Y1lrai9jYVhXSURuUjJjc29TSzVoUjFEdjZm?=
 =?utf-8?B?WEdsa215NHFBYU5TRjJHZDhwTGVHVk1NZ0V2SnVIZmJJOXFEbXpvbEN5cjJ5?=
 =?utf-8?B?YzVoM05DVjVIRm9sejhidzM1VjA0MnErV0VSZXBseUJhR3p2UisrZWs2U3l6?=
 =?utf-8?B?SW50ajhSL3oyUkhpME5hVlZhdndWNzBwZ29zeHFxdEkrbnFBb05mdkdHTEpB?=
 =?utf-8?B?SExoUitBZklTQWF4bXhDVlIvbG0yVzRUZGt1NGN1bk90NHBWbnhxVnI4NS8y?=
 =?utf-8?B?VWx6MEQxNUlyd2FMcytLNkQxZER3VGRGcEgxdTFSVHlRK3d1NEQycitZelRk?=
 =?utf-8?B?MXBaWjhEL0tqRXNzTXEvOWxueHRGSzAvS0YvQlB6d2lXNmFDV1cweXhkSTY4?=
 =?utf-8?B?UXpyQnA2V3VkSG84S1MyaU9PVEc4L0ZkQ1ZpRDVRMjNsTmdNV0VhbHN3MXRo?=
 =?utf-8?B?ajhmOVB0ZmFrL2pZbkd0akxZSE9TMXI2RG41UHhhWGtYVDJEcFlkbHp0eUFy?=
 =?utf-8?B?WmxVQUx2U0U4QTVIVEhLL3AwVFpSZjZaM212U2ZqZnV1S3h0OGNpZ2EwZHRr?=
 =?utf-8?B?amdkL1J3bHhJQms4TDRCTnFBWFRpVmhtamhzbWVFRlpqTHQ5ekpNa2ljMVlL?=
 =?utf-8?B?eEJtOVpnOFp4MHdpNk1ZREIrdkhyS1hHdHBHZjBUbXZHekxrNjFhQjQvNVUv?=
 =?utf-8?B?R0dESWpCck43bFVkZDZENDJFTlY3Y24vU3VwZW9LTmNXWlJyYjJ2UVpnKzVo?=
 =?utf-8?B?MFpDdGRqUDBtQVZkVzhyNWkxek83VlhQelFhYitDQWhhWHJDdVVtZm45Wk5Z?=
 =?utf-8?B?UmJtTXppd2kxNHZLNDlLWEJzTWUyc0Jvbi9FdTdveUJKeXVOVkkxSWI5V25W?=
 =?utf-8?Q?72PT0qPIKBg0cZ2G28R90uZzc?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 392c1e19-1b2b-4d5c-a27d-08dbae208bc2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 14:58:21.1021
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Y/v5VKkr9FxNAVVj0Eom0puIJGSMJw438Z09YyxOru8XlkBtBEjrF55vXvWPNEy1ecJQEEKULZy8UoP2cd1VAQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8889

On 01.09.2023 20:25, Shawn Anastasio wrote:
> +static inline atomic_t atomic_compareandswap(atomic_t old, atomic_t new,
> +                                             atomic_t *v)
> +{
> +    atomic_t rc;
> +    rc.counter = __cmpxchg(&v->counter, old.counter, new.counter, sizeof(int));

I can't seem to be able to spot where __cmpxchg() is defined. (I really
only wanted to check why it needs the 4th argument, which here rather
would want to be e.g. sizeof(v->counter). If it can't be omitted.)

> +    return rc;
> +}
> +
> +#define arch_cmpxchg(ptr, o, n)                                                \
> +    ({                                                                         \
> +        __typeof__(*(ptr)) o_ = (o);                                           \
> +        __typeof__(*(ptr)) n_ = (n);                                           \
> +        (__typeof__(*(ptr))) __cmpxchg((ptr), (unsigned long) o_,              \
> +                                       (unsigned long) n_, sizeof(*(ptr)));    \

Nit: Stray blanks again after cast specifiers.

> --- /dev/null
> +++ b/xen/arch/ppc/include/asm/memory.h
> @@ -0,0 +1,21 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +/*
> + * Copyright (C) IBM Corp. 2005
> + *
> + * Authors: Jimi Xenidis <jimix@watson.ibm.com>
> + */
> +
> +#ifndef _ASM_MEMORY_H_
> +#define _ASM_MEMORY_H_
> +
> +#include <xen/config.h>

As mentioned before - no need for this explicit #include.

> +#ifdef CONFIG_SMP
> +#define PPC_ATOMIC_ENTRY_BARRIER "sync\n"
> +#define PPC_ATOMIC_EXIT_BARRIER  "sync\n"
> +#else
> +#define PPC_ATOMIC_ENTRY_BARRIER
> +#define PPC_ATOMIC_EXIT_BARRIER
> +#endif

Is this correct, considering that we have no CONFIG_SMP and assume SMP
in all cases?

I'm sorry for not paying attention earlier.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 15:19:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 15:19:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595751.929353 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdXqB-0003oC-Vf; Tue, 05 Sep 2023 15:19:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595751.929353; Tue, 05 Sep 2023 15:19:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdXqB-0003o5-Rs; Tue, 05 Sep 2023 15:19:43 +0000
Received: by outflank-mailman (input) for mailman id 595751;
 Tue, 05 Sep 2023 15:19:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdXqA-0003nw-29
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 15:19:42 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2060f.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::60f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a1e1881f-4bff-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 17:19:40 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB6814.eurprd04.prod.outlook.com (2603:10a6:803:138::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Tue, 5 Sep
 2023 15:19:37 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 15:19:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a1e1881f-4bff-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mBN9r0yPkkm8Am4vW1I7eshiIfnMMO5UQQGgpKvdaI83hSuG67EZc/ENOsjROJprmJbUkWkdZHjOhfn96190bhR4ZImH3m3FxLlrMZN1QFPen/sz2jeOOpRYrcgw/G2WmLJeQ6m73AuEfR4wDLg7AQ1yeCFSoVxSmkdqiCrL2D1/QzBejaW16+DeyYOi+SBUWKOvUxrDj4ARVqpLvBF33uOpv/IkkDkOphv2fhdTZpmp+5RsZ18rQ8kUp5YE2/oa/CmCWvHpybsMQpYjeFwiBlQdEjO2b8cx9jaR/g7ah190BoKiJqBVUqpn0Kp/NO9Vw+dO1P8hILSKr3gf9cgJQg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LtWe0SSwjHO3z5r7lMC4iyu2laZ7ykPv0D+eZiZDU3w=;
 b=JFBE3FGEworlWUYs2Jj6SPdfESblQiXTEvueNuo2e2y1NysZSsMbrAsiXm3Ez4jfxu8y9KgtoBmAK5AvzExBlLlxeSoXRaJhQ21JHK9M9zayUN35rlwMya2idM0lLWOP1fnmquUVEoY6EtfH9YQ2G5tGKu/AHCn3mz/xjWXHH03MJUvcOLIXwXauUxfUaZIMf5/HbOyl8Xnli1uyvL3VuD5VpWtxFW+uTgoisdCFYgF0tpFn7bOAtJaYg9k7M7ZXfxbzC5WV7iv0cG4x1iBT1pk9NKpDa9am9Lmyc33QfvfPgMdGsGaEa9lUyc5HfOdEVNgGZ0CRvcGDLZX9tvqXCg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LtWe0SSwjHO3z5r7lMC4iyu2laZ7ykPv0D+eZiZDU3w=;
 b=eKA8WkUswrSXAbeqhGbISZBe8ppMgDVqhFHDz13sUhd8W7tUu/3yQLy9bGFjcAjS8OQ46LLrFx8mBho89dLiL2GeYOcIrXdANIdsXHqzsIjTIqww/m8m+SAhyqYq0cNgPJztLA4248mx1iP2l53wNmcZuGTxXM2VhvMOhSBO1W9G2mw5DAhcG47r37JGK1hQy7DWF/beVbABCa3yZBOvgtwEW3r7cXrdZsFM7q88HhfXFJc82yk/LUPSKEXmZRLiIf5Wha2SvPWaVqGmLYMf7E3FiDiOF5TB52wOLSrkWXakX4hcc3tEt+BdA3dRUZTrTw2L42oJjqV26VlpBA6Z9Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <003690cf-e34b-2e61-1166-86bcfd9da3b7@suse.com>
Date: Tue, 5 Sep 2023 17:19:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v3 2/5] xen/ppc: Implement bitops.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693591462.git.sanastasio@raptorengineering.com>
 <63e66eed26da8f957315cb1db05693b1799ee7ad.1693591462.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <63e66eed26da8f957315cb1db05693b1799ee7ad.1693591462.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0045.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:48::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB6814:EE_
X-MS-Office365-Filtering-Correlation-Id: f6c9e884-f686-4b20-5994-08dbae238469
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GI3mCyoDrQAxNtNLtz4H5rls6j2gcxY04YGK/QG+ZPFIhJR0EXSuccCEEtlyqlkd9T47jac4EMKnnun82jrIj8C5CuqDlBcO4jWAW+gRfNnx0bATzYCiMaA3pTgfFWdyDxzNLzITco1ab2oO4d7npyadzQWZAE5GAP+kWrl/FN2jMs8CsFNQgnNKFUYh6gfCvpHDnBhCmsWRxYVgTbw3wL1d49qvCIXKS7ita9S0GaulFxYAXWat8Q/yGQ1o57jQ1ofTtilou6HB9EvM3gQgdBj9zCxAkn8IumbNF4qHZrRJKlWtip7uQo3aL2elENKlnwqUfotMJUy5/6W9I1pIq0xC+3tU26yegHUZnqH52y7WYYWqcBDn4WYzj2jZVo8UlrYJwxCPFErwIKg0C3hb6GvHYXhTC1ehI3TStAj8/WqoMRFplBo+In0WXu/d6yLgBQSpETf6Eb3pfiVggoW16Wogv+BFTnFKwtyKHxdtjMFoMGaceFqpG89S1nS9FumTz7CfhlO/xWQYkSykzXrDBv21NZ/1am0IxofGamhPSqtxOoT64RtcJTbS9g0GtzYSzZOvtAuYQIv/SJ29FsmNt6i9CPU1tKTCmN49S4BekzWwRMPSA9UaUz99xJCmBWhPvS2vc4Y8gltRcJQs4WSIgw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39850400004)(136003)(366004)(346002)(396003)(376002)(186009)(1800799009)(451199024)(6486002)(2616005)(6666004)(66556008)(38100700002)(26005)(478600001)(66946007)(66476007)(6512007)(316002)(6916009)(2906002)(6506007)(8936002)(8676002)(4326008)(53546011)(31696002)(86362001)(5660300002)(36756003)(83380400001)(41300700001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OHMxWlg2NlYwME55WEc5UDlZa3p4cmpRMW1pVHNyeXIwRVh2VjYrazJ0RzlS?=
 =?utf-8?B?Q1R0SmNLVzQrQnVkK0tjNVVCNGlTdDZCZHIydjMyTmRkNDdaZ0RLRlNTRjdw?=
 =?utf-8?B?MmtjSEcrdVVjT2VFa3I2R1h2Z1lUcjEzSHU3ZDlkRjBzSWZydEhaM2xjK3hK?=
 =?utf-8?B?UnRFSzMyY3cyRHg3U2lzZGhmWVBqbXdzYW8yTmloUjlCTGl4ZzFwQUs0WEZF?=
 =?utf-8?B?a2hGeFVoVGZvZ0ZDSk1sWlNhZUF5VWk0ZDc4QnZjaVIrQUhNTlRESUt5Skhm?=
 =?utf-8?B?RzBLb0pOMm9ZOTBFck9NM1JkNTZVcG5xcHR6cXo3ODFwcHF6TExWTktBVVFK?=
 =?utf-8?B?dDRud3BIeU0yNEZkSGFqMW9yaTFHeHg1cU8xT1VPQ3J1MFdoM3RMUGtSV0o3?=
 =?utf-8?B?eTMyOGFwZHNyditQTGZNZ3Y3UUk3UmcxOUNHRkxtTFg4ZElQRUk2NnRlNStV?=
 =?utf-8?B?Y1ZwN3o5ZE5uUGk1SjJJdVRWam8zaXlnUXArK1dzUGRmV2Rnd3o3cFNkNGFu?=
 =?utf-8?B?djhMSGZaeFIyZjBsKzI0Y1BHV3Z1ZnlDZm5adFlqOVFmVExiQis0YmNNaCs3?=
 =?utf-8?B?OFN6QmVoL3RtbENZbEVLVjZZbzR6ZE9UL2NQT2RaOWk5RFRBTEo1N2s5UXdR?=
 =?utf-8?B?TGE4U1k5QTVDZDJJWUJVZ1VKWnFONU5aM3VnSzUrWlZYSnVVTUpxMG4zWHAr?=
 =?utf-8?B?bitVRk5nL1NGcktZVCtwTjlLNXdublBvNnRoZDhLY2dtdmFKYlpKbHhLdk1o?=
 =?utf-8?B?WFVRSUtkVVgwam0zRGpVVWlib096QXo2cFNVTkQ5ZlBxMGJONmozcXg5dkli?=
 =?utf-8?B?RjRxRzl0SDRISVEyNHdEVk9lN0V1ajU3UXAzSkh1TlBQWUxXYUdyR0VMTHNi?=
 =?utf-8?B?ZUNqdjYyTDMzd0lBMGJ6NFJqZ0NneW9zRWZzWlpYYmdMdmVvRWhvZzBIcjdZ?=
 =?utf-8?B?Wk1aeWdERUxIL2E5ZHBnN1cxM0oxajZXM09TUjdHZG5weTMxcnVTMHdsOU9F?=
 =?utf-8?B?WWQ5bHR0ODVVQnVQelU3Zk9GVWxBbnBXZzg1ek8wd1JTOTlyYkFYRWFnOS9Q?=
 =?utf-8?B?Q2k2QlRGVmR0YXJYRTFHSVppVzgvYlJDQ0ZwZm9weGdrajN2M1lUZ2JjaGlX?=
 =?utf-8?B?OFJyZGllbXVKSjlXT3ZuQWlLNXMxOXd1OG9ZdTl4UVo3WmlmaDgyYjNDS2E0?=
 =?utf-8?B?K3JwdkRKU3dkYW1YR3Z0MWMvNk5oSmFGTmVYN0t1UGIxdnBKV21OcDcwR01t?=
 =?utf-8?B?VE9SMVh0S1FnVm8vSmdteElnZmVyU0hQdCs3RmQ4UWphTWZUTzZIWTlVY0hm?=
 =?utf-8?B?N09Wa3RaME5uSW9pRTNoV0FJSEVkdm9SREYxdWJYMTcwVG9uVExPNTlEbEJl?=
 =?utf-8?B?anA0NEdiVVhPM2xHZ1pMdU1CVzJnZ3BTQVhrUHFGTlRPUjNwSHVOS2xZV0ZB?=
 =?utf-8?B?U1dFbk92VWdUT2xEbVJHVXJQaThxM0djWGN6ZmhVbzBWZVZtZWpFVnp1cEFX?=
 =?utf-8?B?ZjRISWFDSFMzQVAxSnJ0QldQTHdZZUdiN1k0UWluS0pnNUFjcjhvc2NQSDZP?=
 =?utf-8?B?dGlLL2RHekZrSW1iZVpETUo3NUVxaWZwTTJseC90clpnM3JVQlMzV2l1Zy9k?=
 =?utf-8?B?bHMxSWRLMmNVb092bzZLTEMzbThIVnE4aXVleFhZV2lMUm1TU3JqcS9FZ053?=
 =?utf-8?B?RHNqMXZFaXMxQ1BCRnBkWXJaV1MxVkdJdy9ZVVEzTWNIVmJzUlludE11VkhZ?=
 =?utf-8?B?UGw2KzVuczY4Q3owd05SYS8wU0YvNytjcHcvQVYzUUlMQWZUU0RBeHZNQkNB?=
 =?utf-8?B?OWdkM09nWWZTMTlYOWtJYXk0Z1NnNVFrY3NqWHd4WXZKRWF1bzc0bE9rTG8y?=
 =?utf-8?B?YXhWUTkyZk9MeU5PK1dWUlJKQnNGYnFTSVhIZWhoNUhNS0V6MldPOHVqMXdj?=
 =?utf-8?B?U0NENjJuSHFOcndFd1VOWU9nOEV3aERYRUczejNJTHlYTUIvZjRncEk2Q20r?=
 =?utf-8?B?cXMzWEZQdlNjNVA3MmkvQ2RRMkFvN1h5NlFGQzZtbkZHOTdRM1hTY0h6bjRw?=
 =?utf-8?B?RGFsVUFpUEpGUGpKL2JISW96NDc2Snc0MzVDNTNKU05RU0lFTlpFaHd2NUV5?=
 =?utf-8?Q?nUcA/1jzHjF9c/CLfIcv6X+er?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f6c9e884-f686-4b20-5994-08dbae238469
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 15:19:37.2642
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ViR6VGWzVOAJeCxJXSLxLl7VhneDltNQ3UiWNQlx/V/2EpfbvBajKkioFzgkt5zq2q2GOkTkkm1rUUunT31GtA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB6814

On 01.09.2023 20:25, Shawn Anastasio wrote:
> Implement bitops.h, based on Linux's implementation as of commit
> 5321d1b1afb9a17302c6cec79f0cbf823eb0d3fc. Though it is based off of
> Linux's implementation, this code diverges significantly in a number of
> ways:
>   - Bitmap entries changed to 32-bit words to match X86 and Arm on Xen
>   - PPC32-specific code paths dropped
>   - Formatting completely re-done to more closely line up with Xen.
>     Including 4 space indentation.

Isn't ...

> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> ---
> v3:
>   - Fix style of inline asm blocks.
>   - Fix underscore-prefixed macro parameters/variables
>   - Use __builtin_popcount for hweight* implementation

... this also a divergence worth calling out?

> --- a/xen/arch/ppc/include/asm/bitops.h
> +++ b/xen/arch/ppc/include/asm/bitops.h
> @@ -1,9 +1,333 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +/*
> + * Adapted from Linux's arch/powerpc/include/asm/bitops.h.
> + *
> + * Merged version by David Gibson <david@gibson.dropbear.id.au>.
> + * Based on ppc64 versions by: Dave Engebretsen, Todd Inglett, Don
> + * Reed, Pat McCarthy, Peter Bergner, Anton Blanchard.  They
> + * originally took it from the ppc32 code.
> + */
>  #ifndef _ASM_PPC_BITOPS_H
>  #define _ASM_PPC_BITOPS_H
> 
> +#include <asm/memory.h>
> +
> +#define __set_bit(n, p)         set_bit(n, p)
> +#define __clear_bit(n, p)       clear_bit(n, p)
> +
> +#define BITOP_BITS_PER_WORD     32
> +#define BITOP_MASK(nr)          (1UL << ((nr) % BITOP_BITS_PER_WORD))

With the switch to 32-bit operations, doesn't this want to be 1U?

> +#define BITOP_WORD(nr)          ((nr) / BITOP_BITS_PER_WORD)
> +#define BITS_PER_BYTE           8
> +
>  /* PPC bit number conversion */
> -#define PPC_BITLSHIFT(be)	(BITS_PER_LONG - 1 - (be))
> -#define PPC_BIT(bit)		(1UL << PPC_BITLSHIFT(bit))
> -#define PPC_BITMASK(bs, be)	((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
> +#define PPC_BITLSHIFT(be)    (BITS_PER_LONG - 1 - (be))
> +#define PPC_BIT(bit)         (1UL << PPC_BITLSHIFT(bit))
> +#define PPC_BITMASK(bs, be)  ((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
> +
> +/* Macro for generating the ***_bits() functions */
> +#define DEFINE_BITOP(fn, op, prefix)                                           \
> +static inline void fn(unsigned long mask,                                      \
> +                      volatile unsigned int *p_)                               \
> +{                                                                              \
> +    unsigned long old;                                                         \
> +    unsigned int *p = (unsigned int *)p_;                                      \
> +    asm volatile ( prefix                                                      \
> +                   "1: lwarx %0,0,%3,0\n"                                      \
> +                   #op "%I2 %0,%0,%2\n"                                        \
> +                   "stwcx. %0,0,%3\n"                                          \
> +                   "bne- 1b\n"                                                 \
> +                   : "=&r" (old), "+m" (*p)                                    \
> +                   : "rK" (mask), "r" (p)                                      \
> +                   : "cc", "memory" );                                         \
> +}
> +
> +DEFINE_BITOP(set_bits, or, "")
> +DEFINE_BITOP(change_bits, xor, "")
> +
> +#define DEFINE_CLROP(fn, prefix)                                               \
> +static inline void fn(unsigned long mask, volatile unsigned int *_p)           \

Leftover leading underscore.

> +{                                                                              \
> +    unsigned long old;                                                         \
> +    unsigned int *p = (unsigned int *)_p;                                      \
> +    asm volatile ( prefix                                                      \
> +                   "1: lwarx %0,0,%3,0\n"                                      \
> +                   "andc %0,%0,%2\n"                                           \
> +                   "stwcx. %0,0,%3\n"                                          \
> +                   "bne- 1b\n"                                                 \
> +                   : "=&r" (old), "+m" (*p)                                    \
> +                   : "r" (mask), "r" (p)                                       \
> +                   : "cc", "memory" );                                         \
> +}
> +
> +DEFINE_CLROP(clear_bits, "")
> +
> +static inline void set_bit(int nr, volatile void *addr)
> +{
> +    set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
> +}
> +static inline void clear_bit(int nr, volatile void *addr)
> +{
> +    clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
> +}
> +
> +/**
> + * test_bit - Determine whether a bit is set
> + * @nr: bit number to test
> + * @addr: Address to start counting from
> + */
> +static inline int test_bit(int nr, const volatile void *addr)
> +{
> +    const volatile unsigned long *p = (const volatile unsigned long *)addr;
> +    return 1 & (p[BITOP_WORD(nr)] >> (nr & (BITOP_BITS_PER_WORD - 1)));
> +}
> +
> +static inline unsigned long test_and_clear_bits(unsigned long mask, volatile void *_p)

Again. And there are more. Yet here (and below) ...

> +{
> +    unsigned long old, t;
> +    unsigned int *p = (unsigned int *)_p;
> +
> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
> +                   "1: lwarx %0,0,%3,0\n"
> +                   "andc %1,%0,%2\n"
> +                   "stwcx. %1,0,%3\n"
> +                   "bne- 1b\n"
> +                   PPC_ATOMIC_EXIT_BARRIER
> +                   : "=&r" (old), "=&r" (t)
> +                   : "r" (mask), "r" (p)
> +                   : "cc", "memory" );

... do you actually need the helper variable, when there's no "+m"
constraint operand?

> +    return (old & mask);
> +}
> +
> +static inline int test_and_clear_bit(unsigned int nr,
> +                                     volatile void *addr)
> +{
> +    return test_and_clear_bits(BITOP_MASK(nr), addr + BITOP_WORD(nr)) != 0;
> +}
> +
> +#define DEFINE_TESTOP(fn, op, eh)                                              \
> +static inline unsigned long fn(unsigned long mask, volatile unsigned int *_p)  \
> +{                                                                              \
> +    unsigned long old, t;                                                      \
> +    unsigned int *p = (unsigned int *)_p;                                      \
> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER                                    \
> +                   "1: lwarx %0,0,%3,%4\n"                                     \
> +                   #op "%I2 %1,%0,%2\n"                                        \
> +                   "stwcx. %1,0,%3\n"                                          \
> +                   "bne- 1b\n"                                                 \
> +                   PPC_ATOMIC_EXIT_BARRIER                                     \
> +                   : "=&r" (old), "=&r" (t)                                    \
> +                   : "rK" (mask), "r" (p), "n" (eh)                            \
> +                   : "cc", "memory" );                                         \
> +    return (old & mask);                                                       \
> +}
> +
> +DEFINE_TESTOP(test_and_set_bits, or, 0)

Why can't test_and_clear_bits() not use this macro-ization? And if it
can't and hence there's only this single use, wouldn't it make sense
to avoid going through a macro here, too?

> +static inline int test_and_set_bit(unsigned long nr, volatile void *addr)
> +{
> +    return test_and_set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr +
> +                                             BITOP_WORD(nr)) != 0;

This wants wrapping differently, e.g.

static inline int test_and_set_bit(unsigned long nr, volatile void *addr)
{
    return test_and_set_bits(BITOP_MASK(nr),
                             (volatile unsigned int *)addr +
                             BITOP_WORD(nr)) != 0;
}

or

static inline int test_and_set_bit(unsigned long nr, volatile void *addr)
{
    return test_and_set_bits(
               BITOP_MASK(nr),
               (volatile unsigned int *)addr + BITOP_WORD(nr)) != 0;
}

> +#define flsl(x) generic_flsl(x)
> +#define fls(x) generic_fls(x)
> +#define ffs(x) ({ unsigned int t_ = (x); fls(t_ & - t_); })
> +#define ffsl(x) ({ unsigned long t_ = (x); flsl(t_ & - t_); })

Nit: No blanks after unary operators, please.

> +/* Based on linux/include/asm-generic/bitops/ffz.h */
> +/*
> + * ffz - find first zero in word.
> + * @word: The word to search
> + *
> + * Undefined if no zero exists, so code should check against ~0UL first.
> + */
> +#define ffz(x)  __ffs(~(x))

Nit: Stray double padding blank?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 15:22:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 15:22:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595757.929362 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdXtD-00061n-Ca; Tue, 05 Sep 2023 15:22:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595757.929362; Tue, 05 Sep 2023 15:22:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdXtD-00061g-9u; Tue, 05 Sep 2023 15:22:51 +0000
Received: by outflank-mailman (input) for mailman id 595757;
 Tue, 05 Sep 2023 15:22:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JXF+=EV=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdXtB-00061Y-ON
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 15:22:49 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20624.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::624])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 11495ae0-4c00-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 17:22:48 +0200 (CEST)
Received: from MW3PR12MB4409.namprd12.prod.outlook.com (2603:10b6:303:2d::23)
 by MW4PR12MB6974.namprd12.prod.outlook.com (2603:10b6:303:207::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 15:22:42 +0000
Received: from MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::8931:6349:9a02:48c1]) by MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::8931:6349:9a02:48c1%4]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 15:22:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 11495ae0-4c00-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Jw0VTKN0qBaN372W/HMTYlDdSDoSGegSMIht9ctozb4ldXxdFBxZhzuYntnGZlatAHaGgS8PdLMiXwk//rRsk6jm2bQkGyIBLHldxVD1vw+X+ElQUrXg8BRucnZpUBSgzbVpYuD6KMoPW3N9Hv/4nEhJtK8b/HSmaiDp76lHnkESK/WjYggNip4Zi/7F/scAN3gJC4xJFv52yFJJrHXhqETeFjX+elEQum9uZ3KdKQxO7NRBHuNXLPLnFrkO0WoUDorVt8eps5+WUzQ2D9vcbY11AM6UGUXN/sGJaG0Y0i4o8V3+fY82LWdeVoiHFRpl54exB6iozcWK3F2kQYIXPg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=I7IyLr8CHuhpDduBWOMWoe1GGPPTXFXEx9y4UKXR5lw=;
 b=JaaMrWmHhz4fHy8RuipDz4PMbZ0j4TyAcay2YtjCawmHrvL2JVN5Wkbqe+FfCi68yuxo4/I7W7lbYybKFfyjDws9nTbjs3lldWAsJJJVCjsc+t2774d5xZL2HPsgELmkszYpmpnoJQUwVVK3d9zYQJ0+QksWxrWM9AVEN+6Qy4QX3KwYeLSum/fttUIw/Nad9av74LgZSbMVoBZYIPhEpgz36rMFwVbR3s7VvkB2BpYJqs3z1kqTwly4fBeGvbA/d2mi52SuSYt4YlclW/Oeo0Zi0D/+ilaXhf0piojoBRA5Liu2q3zn4yWxX0T25Ltpkvy5BvwL0vghxCIWIpqKQQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=I7IyLr8CHuhpDduBWOMWoe1GGPPTXFXEx9y4UKXR5lw=;
 b=5acgDSIBAuVwFy/wuG7bsSx0X76ExKFgMm5pg2+5UWlvPrzJPphQsjxJ0y6uV4KskzV5AsnrSrBYTTRiSBwstxBmqoF271U7WoLUD5asdTZuzhx8dFoALhQVSY0xjRWLPwqm9AM7zkjOUP9KpB+izqSp+o7+23wqg4CyWGIY1FQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Tue, 5 Sep 2023 11:22:33 -0400
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: Michal Orzel <michal.orzel@amd.com>
Cc: xen-devel@lists.xenproject.org, julien@xen.org, sstabellini@kernel.org,
	Rahul Singh <rahul.singh@arm.com>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN][PATCH v11 12/20] xen/smmu: Add remove_device callback for
 smmu_iommu ops
Message-ID: <ZPdHuVUOqjmdEWdD@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
 <20230901045947.32351-13-vikram.garhwal@amd.com>
 <dca9c2b9-aeaf-3628-de2a-846e1b92a0c4@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <dca9c2b9-aeaf-3628-de2a-846e1b92a0c4@amd.com>
X-ClientProxiedBy: SJ0P220CA0019.NAMP220.PROD.OUTLOOK.COM
 (2603:10b6:a03:41b::35) To MW3PR12MB4409.namprd12.prod.outlook.com
 (2603:10b6:303:2d::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW3PR12MB4409:EE_|MW4PR12MB6974:EE_
X-MS-Office365-Filtering-Correlation-Id: 9e4cae4d-3a95-4173-7545-08dbae23f2c2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kPCMZ8+dnJSuPPeEFJb9BUtZBUABVk8FpNXw+YJJJ5Si+RjEyb1ORApJJYviTEQcNR4lrNKePRmmBHE2SOrYQidCuoGu5s90/B6xpgc4A/kNZ3kcfJbbN8y8ebOswKj1GFKSKY8/OsL9DCIWG7SpFpCh7kMVj38oISj8oueN1B6JoRinP4/EYJXyI2QAAXIJspAFZGEhfT2EV2rfGtcZEvlKY3pwpaBn436ehJxY9l+IyEG5qWw0xeNcFS3kD2JWonxPRVXZ2y3NK3x6uSuF5hhYMTiewWDMqVDq0qv7Vupo4vvH+Wv9EewlYRI8cO+3ggTnBfSU8PeMMVGrJk5KElwYPDEmhl9Janmx7QhxRPe8CykhFFCw0Gm00TKXf6dlf+2e4nhio/dC7c9cb9SZGyidM2blb92umCdEUnZNQz0mEzBSBhHBYDc+AE4PE9bcigMObhg+Ymh2yy6sHji1jGSHBWhhCmKwM2/dKfjqBTinAzPotJ7+DmTi/LTYgsSFBAKkVCFIIj3wnB8qdi2lfM3XHHP6QR7+VjBgQf0q0MxykuB13h3g0LTlLvr2lwVJ
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW3PR12MB4409.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(136003)(366004)(396003)(346002)(186009)(1800799009)(451199024)(26005)(4744005)(2906002)(8676002)(8936002)(53546011)(6512007)(2616005)(6486002)(6506007)(86362001)(36756003)(44832011)(38100700002)(5660300002)(478600001)(6666004)(4326008)(6862004)(6636002)(316002)(37006003)(66556008)(66476007)(66946007)(54906003)(41300700001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RTBUU1NUVVRMQUNxcVMvVElrOVVRY25OeXVMRFFYU2pDR05sN3JKUWh5U2oz?=
 =?utf-8?B?UHlIS01JQ3JLWDk4bEVpWkZjNkYvQmxjanE4bGIwU3FJNWxOUWdZT05KaTFZ?=
 =?utf-8?B?NCtCQnU1Um0zN2ZydUZVWVhXNEp2MmFPc0NNbVBPaDk2cnZjVmVnNmN2K3px?=
 =?utf-8?B?OENKYXc0MGd0RmRJTUQ1aXRaSER4anlrWVRNRTNod1EyQVhtWVJzdHE4QjNF?=
 =?utf-8?B?TzkyaFNGYnB4cGxqKzNrOVFOSlBmbjJKM3k4dlVvK1c0STVrZUpJM1RTdGJp?=
 =?utf-8?B?Zk1wV1hma25Yb0FJbFZGYzJKR01LYmUyN1ZKbCtZRFZoTnRrNUxqNlpPY0tP?=
 =?utf-8?B?T3RhVnFueEZzUURqK05oemU2S2doWnN2eWxvWUs3VXlYMnptZ083WFpCTCtP?=
 =?utf-8?B?aS9uMU9OTnkrY1hRRjB0eU56Szg4c0pXc1hNY3A1K2h0ZXJDMmxsS21DWmZW?=
 =?utf-8?B?bzlwMGErV1BOM1VCOVQxNGFkK2t2eWg5Zk9yUFlBVVJLUHg3Mnl5aXZENG9D?=
 =?utf-8?B?YWhISWY1ODRTOEVWQ3pUdms2YUJFR01waklqdFBwbjdSeFZEMXpoV2ZaQ3g5?=
 =?utf-8?B?aWtTVlI1Y1dpMEdsanVneHQzYmZMTGllYTNZM1BLNW03aUluSUFoSW5odG5W?=
 =?utf-8?B?M2wvZmU2dGtjYTQvdXZzanN3R0dSalJFTis1RzByUTVZT0pKRHlIbFZrVkFF?=
 =?utf-8?B?aExHN1lsU25xdytOeVpxQnpGRWs2NzhrVGVwOXdxK2tMLzkyekZwZEsxajdw?=
 =?utf-8?B?c1ZZRzQ4dVlJSHNsTE4yOHUzalBtOTFqQ0RPYUZwb2wxdzV3SEtwcWFXaWpU?=
 =?utf-8?B?dHNDYUxhNVpkYkFVMWlVOTIzV08yNERJOTUyOTZSeUZ4NlVSSEJ2SWhGNGtM?=
 =?utf-8?B?L1JXa2piL0kzTnNjSHl4RXVFUWp3QmhpemgzY1lYMlNWR2ZoTDBVdFVNL3hv?=
 =?utf-8?B?R21waXU2VkVGUTlYcTZRdWtEUTFKQTZmZlZoV0Z2em50NXU5QjRFM0pxbGMw?=
 =?utf-8?B?cFplb1d1d2ZzNzVhOFdncWNBWnpBY1Ridzd1UVlUc0pPU0wwL0lnVk9ndnZo?=
 =?utf-8?B?Qmk2YzUyZVdhcU9hVGxJTkw2ZXRyUEhCUnd6bUt1RllDbEcySjAzeTVoc0hM?=
 =?utf-8?B?YVNMNnRCTFNxNzc0cmhRVkFTMUM3RHo3RVZrSUdWOXNWb2RLdHJMeHJ1bjkx?=
 =?utf-8?B?RzZHY05LMmxncTlRdG1LeVQ1NTRoMjlQTXVlOVpUSTlwdFpZVVlOamdTbDF5?=
 =?utf-8?B?UlFCRDdNSTRjYnF1bDFMUktBOEVPV2lHYjIycHlURXIxWWQ2SVNodDRxL2Uy?=
 =?utf-8?B?SHpBQVZ6aUp6d2ZGVGxzdWtITGlYc3VvZmszL29PZ1FPaGM4QWo4c2NXVVNw?=
 =?utf-8?B?aHNxeFZmVEJuYk0wUE5IeVQza1M1WTZQYVBycld1YzM1M1VnM2J2VjM2VUdl?=
 =?utf-8?B?aWU1bWFtUVhKdEVja1NKOWZFcWFQR21acStHRUlWTmVFaDFTbDlOc2NVUFpC?=
 =?utf-8?B?aHIzdjc2QTdWTGpnY0wwei9HY0JPeVlLdnJSZnpQYW43WFhHWmJjTWtYbldl?=
 =?utf-8?B?YytEQjBOdjZJeWd0RnRsbnNoOXpIbUoxdzEwTEoyUWZ6K2lBRG1pWDVvUHZq?=
 =?utf-8?B?QlVtREpESDZ2VEJVL1pXSzhFamN4dEQySW8ya0dIYUlCaUZ2aklScDAzdjJY?=
 =?utf-8?B?NzRDREMxQ3lkV3I0TDJOOU0yVzdWUnRVYmdVTVlRbUVITHlTQkF4TVlDUEdO?=
 =?utf-8?B?N3FjaGRRaVBnQjlEYWZHRnM2NXJOb0x3TFNST0NpV1R3ZDBrdklacVZqNDNX?=
 =?utf-8?B?NGlsdmF2cFF2aXFLNW1UT005dlM0NEwxYkZ4YTZVL3BWSG1KL2dpNFpKNTFT?=
 =?utf-8?B?NlVGd3pTTzVBd0RFR3F4L1Q1dDg3STF0QjdpdE5PcUcxRFZUWDAvQXZ6Vlo1?=
 =?utf-8?B?SFV2czJCcmJVNXI2Z0lhRmJxbnNad2Zrc1I4UG0zQk5xOHdxZHdwY1pUcHFx?=
 =?utf-8?B?cTIwNlFSU1hSMTlncW5pNlV4dm5ZeXd6NUhINkFLRkZjOG5jNThsVENwZ2hy?=
 =?utf-8?B?M3JFQWdtbWJ2RFRVNkxkbEhMZXpSaThHbEhadU5iYWpmQUxvdjZtWkJ3NFJU?=
 =?utf-8?Q?i1vMMvXbBnMp/fry+mT/cUl84?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9e4cae4d-3a95-4173-7545-08dbae23f2c2
X-MS-Exchange-CrossTenant-AuthSource: MW3PR12MB4409.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 15:22:42.5098
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 4I7quiGy0CeMikIglQoRJU+jWk+lhgTfvogpzk++7G0ss6lIjZLjeCOCu68HtJ2CL+FlwXvXZO4cuHkNW/jIXA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB6974

Hi Michal, 
On Mon, Sep 04, 2023 at 12:38:01PM +0200, Michal Orzel wrote:
> 
> 
> On 01/09/2023 06:59, Vikram Garhwal wrote:
> > Add remove_device callback for removing the device entry from smmu-master using
> > following steps:
> > 1. Find if SMMU master exists for the device node.
> > 2. Check if device is currently in use.
> Just like in v10: you are not checking it. I asked you to add a check following Julien suggestion
> but you did not reply to it. Even if you do not want to add this extra layer of protection, you
> should mention that you rely on a check in iommu_remove_dt_device() instead. You can wait for Stefano
> to give his opinion (and possibly ack this patch as is).
> 
Caller checks it already so that was the reason for not adding here. IIUC, Stefano
was okay with v10 patch so that's why i didn't make changes.

> ~Michal


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 15:39:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 15:39:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595766.929373 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdY8j-000089-SX; Tue, 05 Sep 2023 15:38:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595766.929373; Tue, 05 Sep 2023 15:38:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdY8j-000082-PY; Tue, 05 Sep 2023 15:38:53 +0000
Received: by outflank-mailman (input) for mailman id 595766;
 Tue, 05 Sep 2023 15:38:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JXF+=EV=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdY8j-00007w-9E
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 15:38:53 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20628.outbound.protection.outlook.com
 [2a01:111:f400:7eab::628])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4edb7ec2-4c02-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 17:38:51 +0200 (CEST)
Received: from MW3PR12MB4409.namprd12.prod.outlook.com (2603:10b6:303:2d::23)
 by LV2PR12MB5726.namprd12.prod.outlook.com (2603:10b6:408:17e::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 15:38:46 +0000
Received: from MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::8931:6349:9a02:48c1]) by MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::8931:6349:9a02:48c1%4]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 15:38:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4edb7ec2-4c02-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BJ3MTmfTw3sW2caZE72FUVyommhNZ2x/BJdWFmX9wKPB5zbw/H0b1PcYzvQeZ8hqyW8mfmtBB1VzxPltCUx4NqBpVfZu1yrMrdQNEAnpAiOdCeek1j+5q8w/W1+pURL0fvjvKVD+yvQSjz8SmeYq/1SjVOX5E+V/WhwQQVczlaCeYRZ1u8OGg5ivhEYUOUNBf/xfgnY7YbbFYcxND7FC+2V2+qj0Uow0kMB/PuXQXsh0lBhQmejGLNlKy+BqQPQCPwjSsx1knkqtWXNhwQsZ4zsrrjxlxIKAPdZmn450BdAMHQofWrVx+rOEHbFvSQ3pjO4f7ULiQ/FBlKLuskNB2g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Jp+CDM5M1kKPiFuAkbjlFz5ns0wvQUg4ze1J3pFIDUY=;
 b=GaKQl98ac8zlDXld1+9IHtSGG7BkZzuLYUclw7ApwHl0liiI1Nn3SG3ZCYVyvgWO1uY35+eIYooWGHPK5aK4ta3hUut+bg5orDmbxmOzrPL3tCGkz3m/0bZ+9tPGSP61lbsTxvk1c+2EDftFQbUJDefqU4Co4k2inXmdFXmJJK7z9e40rO49RQ8xWT2mX4MSdCAJA01xPmdlYISlwXoL7R214PNolqzG8/EE544KEZc77iiYAxtvvsBG9CPKnNQVYcdT2XeW/nlObfs2McqkODkocA42Of4ZTBUqjGS0slKTane7q8DySAtWcabheIAD964RpnT0NY+CnYUu/rnk3A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Jp+CDM5M1kKPiFuAkbjlFz5ns0wvQUg4ze1J3pFIDUY=;
 b=0Tr/Nziiay/F7l794KC9kmEzGH47pjy/ppjY1TeydYDsrMwtHhgXqwuvn+QXg7/NGFjt5jtCV8xnzbM/4Stc3KqeFR842zk0OthFyXWSTVhm+FTpkccWUblSd8TtDRYVeeJHpFWCImM5MHxB2qtF+yftCnbBA3BXpPzDstZhuu8=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Tue, 5 Sep 2023 11:38:37 -0400
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: Michal Orzel <michal.orzel@amd.com>
Cc: xen-devel@lists.xenproject.org, julien@xen.org, sstabellini@kernel.org
Subject: Re: [XEN][PATCH v11 14/20] common/device_tree: Add rwlock for dt_host
Message-ID: <ZPdLfWX5KFKjXmQK@amd.com>
References: <20230901045947.32351-1-vikram.garhwal@amd.com>
 <20230901045947.32351-15-vikram.garhwal@amd.com>
 <227d9107-5f5c-b773-639e-ee59a7047a27@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <227d9107-5f5c-b773-639e-ee59a7047a27@amd.com>
X-ClientProxiedBy: BY3PR03CA0001.namprd03.prod.outlook.com
 (2603:10b6:a03:39a::6) To MW3PR12MB4409.namprd12.prod.outlook.com
 (2603:10b6:303:2d::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW3PR12MB4409:EE_|LV2PR12MB5726:EE_
X-MS-Office365-Filtering-Correlation-Id: e32532f2-5306-405a-165d-08dbae26310a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	DyzNWaE8jBQD4/xE2VH+JeXN2D7bChTmSiZZWez8+6zPFULzI3gsAhnH/Ug92GYGcdUGQigFyj+P8Lc3h6YpdhR4uYYQ6Ie3eJK3aAaTCyNXaFPa1S5evFGIN2gP2aG+Ffmtj+VBBQ/ZLUKqwU0Lr5JOD1lVkFeQqcVw09Da/j58r99LfEvFolsS3JF+4JBExpBfad6q90TzWO4a5yebqjxKKEWGtVxSyZVr3mxk6kkLiI3EUYrDxYscY3KmodAL769xDNaEsLMeHIfi13xow4drmBUx7JhE0VwyLhKFRZLBZK1Ks2/o5ACHvCXL5fOpa0tkmMsmBfGnlypwER0AfIuNv+M81DNLLjTYDYFHClJG+TBIhXa3VDtAdWiM6X3XtGM9iMheT6XmbQY0JmwxMd8GlefFOkAJO9l3ID+v14e5NKHvmXVz/vYzv8IGBVaNUnslmoOtfOoYTTIVgn0UZzsolWw8lLjhawIfzM9LRP+9Pud8hIXacNr+V8exebEX1jLugoBTo96E7ztnzntNUYIS6Icjl2gjlq4P47ERDoaabCNDklxysrd7i+dIPE0X
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW3PR12MB4409.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(39860400002)(366004)(396003)(136003)(186009)(451199024)(1800799009)(8936002)(8676002)(5660300002)(2906002)(6636002)(37006003)(36756003)(316002)(66556008)(66476007)(66946007)(4326008)(6862004)(44832011)(41300700001)(6486002)(6506007)(53546011)(6512007)(26005)(38100700002)(6666004)(478600001)(2616005)(83380400001)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VVcxWFp0ZVBOODMxVEpyODVIQVlOQmJTQXRoaFVaYURrbDVGb01iVGlSbUp0?=
 =?utf-8?B?Qk9rQkl1cUFxZDZJM3dZWkZHL1V5QURSaFNscXNzc1FiK1lBVzZ3a2NQa1ll?=
 =?utf-8?B?WGxLbVc2bldWS1lQRUtSbFBycGNYT1JyWi9VTGt2RDdPSFZTa3JZZ0Y0cHVB?=
 =?utf-8?B?MEJZWlo2MmpnNG0ySENmeEFuRDhtNDFDRjZRVnlHMkxmU25pWXlVVUxIQWZG?=
 =?utf-8?B?MnBaYVlhTWJCbFhESU55cUhVSzE0TDV2bENtMDNheWNGKzM3Y1Vqb3BVRCth?=
 =?utf-8?B?WDkyUDZhSTYxbFg3dzhickNjengrK3d0RVY2Z2JUNmhDcFlnVkNmNE92NmZU?=
 =?utf-8?B?QklJQjdReHMzZ0czNVVaVllncEVNd2tyaDVkbVFvVTF5WmpTbDJ0ajJBcW1t?=
 =?utf-8?B?cnZicllmQzIzTnYzLzlNYWVNdlpadFlBekNzSnhLRHpqQjdYenpKZlJhN0E5?=
 =?utf-8?B?YkJVRGE3d1U0cmlweW0xSDV3ck1YbjdOcXAwSEN3bWwvajc4Y2lNQmhVenVl?=
 =?utf-8?B?YVF3dzMvWEZ4M3BlbXlLUVFXczdsZ2R3aVZ4WTE1YllMdTMvMmJGcnJDRVAz?=
 =?utf-8?B?K3pNMjZxbEZibjE4dElzWU9UNDNoR0w4LzRCejVCVGJFbHVlL0dwekNBbjNs?=
 =?utf-8?B?M040RElpaUlQVyswN1ZITzIzRStUbFFpT3dzMlZMOHdQYmJiTkJ4anR1ZDZN?=
 =?utf-8?B?T2dKZk4yOGtBbGZ0TWJYRGhTMG1XSW9KTDZWYzVlMVByTU5RS3dYeGhiRzNK?=
 =?utf-8?B?WGFPTlVnYlpjMTBKVmdlQ3M1RHFXY0lKMGpHL3pTOTQxakZvVXIxREc4SFov?=
 =?utf-8?B?OWxMaU1Ha29mc3A0RkdWdDhsakNSSkx3WnhaV2dLTDJyQnNycWdlZHVmb3Rs?=
 =?utf-8?B?VCtNRllpVFQwZkl0eWYwa1RUWHM0K002WXZCWUZqWXRUblAzdUUwWjdOYlR3?=
 =?utf-8?B?eWRGMFEzOFZSYTh4enhJckhITnh6dWhzdEFmc2FKMlY0UWR2TjFEMjJjc3Bu?=
 =?utf-8?B?ZUdHWk5XaTdrQm00ckpNbGJQRzVXV2lDQ3N3dzA0d1hOYk9nMUxKMUZrOE1N?=
 =?utf-8?B?d1RFSzNEWUoyMFZidUpPZXYrckJPRGNjQWpTVTNUZzI0MFU0VTVpYk5ZYlJw?=
 =?utf-8?B?RElBWlBqVUVtMlVxLzdrZU5hSTlrNlpNM2RQNFhvaEtqNE9NUm5KT2ZqK2FG?=
 =?utf-8?B?YzAzdTZPY2lVQnFHalFoWk9aUGJQMEQxUkRuclJWNTIzWCs5MWhPNEtlWWVw?=
 =?utf-8?B?TUc2TXZUcmNkaVpTdHlKdGdkZ0c1cFRqT09BVE9YY21Ra3hCLy9DRW1hRmxF?=
 =?utf-8?B?dUVTN1I0UkxTditQbVdQQmtLanBzcjY3Q2FHN0ExSEJNSEllMThWbUNUUlBr?=
 =?utf-8?B?ZnpwdzlESDFTTEdvSkgxQnkwTTJpRld2a3k4ZE9wZk91UE4rUzEzSVZBYjJZ?=
 =?utf-8?B?eXE3QlNTb0FIMUltWkpxQVlCOWhoZmR3cjVsekQ2ek85UFV0TTB3bjh3QnN3?=
 =?utf-8?B?MVlsUEhPS0JUS0FtMGlvVzRobG9iSHN4VmVmTHMvVHEzckQzMUErSXp0UG94?=
 =?utf-8?B?bUJUV29mNEdiMy82THZSSjk5Q05lQjZsaEExRmF5RksrWVpLUmlpNUpWQ2tu?=
 =?utf-8?B?QlpYZGpJRld1eHlQNFlwMGxOb01jU3IxUFJCRFEranpya051WU9WZ0s0dVFX?=
 =?utf-8?B?cmtJOGF1Y2pacFlqZjg1WlhiODdWTzJFdkpmOU1jTjFkT0hXOW1HTG9KS3Uz?=
 =?utf-8?B?U1cyRUdQSkR4NlJCZWpKb0t6T3JCTFJaakd3dlZDaTVxRVlud0R6OU9iMUs0?=
 =?utf-8?B?QnBXcEVLVjB5eEpMU3VpV2diRTVpOUpBYnN0TG9Kc2tMMFBxcXJnSEJBVGZB?=
 =?utf-8?B?UGZhT0swc0NyTUxYWGV1QWo4TURVai8rRU9FekJqdkNNNkdnejJlZGh0akQy?=
 =?utf-8?B?aGlmaGd4T1ZkSHBzK1pxRmNYcGloVFBDZnAwRmcvbThrNHliYlZCSWRkYlFu?=
 =?utf-8?B?TDk4bWJ1cGkvbWVkOGVWbEFxSmU3TUJGaXdLRlpxMENza0V4RjR4a2d1dTJM?=
 =?utf-8?B?Q21oUU9ENVVEc0xJVUFyUy9DQVJaN0I1NUwxVXhNSEYyeDg0eXV1ZzlpNFNY?=
 =?utf-8?Q?qtk+Y5Ts0mlme5cEaRnLE6bUl?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e32532f2-5306-405a-165d-08dbae26310a
X-MS-Exchange-CrossTenant-AuthSource: MW3PR12MB4409.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 15:38:46.0131
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: BwUTduia6PtmWeCziNV414sRPBa4w+MVNiKSv/ADh61RX9e8l0CLV1+Bwqpg/W3+pm3jbK4Z5VRj1zTWVTRrtw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV2PR12MB5726

Hi,
On Mon, Sep 04, 2023 at 01:09:52PM +0200, Michal Orzel wrote:
> 
> 
> On 01/09/2023 06:59, Vikram Garhwal wrote:
> > Dynamic programming ops will modify the dt_host and there might be other
> > functions which are browsing the dt_host at the same time. To avoid the race
> > conditions, adding rwlock for browsing the dt_host during runtime. dt_host
> > writer will be added in the follow-up patch for device tree overlay
> > functionalities.
> > 
> > Reason behind adding rwlock instead of spinlock:
> >     For now, dynamic programming is the sole modifier of dt_host in Xen during
> >     run time. All other access functions like iommu_release_dt_device() are
> >     just reading the dt_host during run-time. So, there is a need to protect
> >     others from browsing the dt_host while dynamic programming is modifying
> >     it. rwlock is better suitable for this task as spinlock won't be able to
> >     differentiate between read and write access.
> > 
> > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> > Reviewed-by: Michal Orzel <michal.orzel@amd.com>
> > ---
> > Changes from v10:
> >     Add ASSERT for iommu_assign_dt_device() and iommu_add_dt_device().
> > Changes from v9:
> >     Update commit message and fix indentation.
> >     Add ASSERT() for iommu_deassign_dt_device() and iommu_remove_dt_device().
> >     Fix code styles.
> >     Remove rwlock_init in unflatten_device_tree() and do DEFINE_RWLOCK in
> >         device-tree.c
> > Changes from v7:
> >     Keep one lock for dt_host instead of lock for each node under dt_host.
> > ---
> > ---
> >  xen/common/device_tree.c              |  1 +
> >  xen/drivers/passthrough/device_tree.c | 28 +++++++++++++++++++++++++--
> >  xen/include/xen/device_tree.h         |  7 +++++++
> >  3 files changed, 34 insertions(+), 2 deletions(-)
> > 
> > diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
> > index f38f51ec0b..b1c2952951 100644
> > --- a/xen/common/device_tree.c
> > +++ b/xen/common/device_tree.c
> > @@ -31,6 +31,7 @@ dt_irq_xlate_func dt_irq_xlate;
> >  struct dt_device_node *dt_host;
> >  /* Interrupt controller node*/
> >  const struct dt_device_node *dt_interrupt_controller;
> > +DEFINE_RWLOCK(dt_host_lock);
> >  
> >  /**
> >   * struct dt_alias_prop - Alias property in 'aliases' node
> > diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
> > index 80f6efc606..1f9cfccf95 100644
> > --- a/xen/drivers/passthrough/device_tree.c
> > +++ b/xen/drivers/passthrough/device_tree.c
> > @@ -31,6 +31,8 @@ int iommu_assign_dt_device(struct domain *d, struct dt_device_node *dev)
> >      int rc = -EBUSY;
> >      struct domain_iommu *hd = dom_iommu(d);
> >  
> > +    ASSERT(system_state <= SYS_STATE_active || rw_is_locked(&dt_host_lock));
> This looks not right (I know Julien suggested this). The second part will be checked only if state > active i.e. suspend/resume.
> I think this wants to be:
> ASSERT(system_state < SYS_STATE_active || rw_is_locked(&dt_host_lock));
> so that once the state is >= active, we require dt_host_lock to be locked.
I rechecked this, you are right! Will update it to check the lock only for
>= active.
> 
> ~Michal


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 15:52:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 15:52:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595773.929383 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdYM7-0003fG-1z; Tue, 05 Sep 2023 15:52:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595773.929383; Tue, 05 Sep 2023 15:52:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdYM6-0003f9-VM; Tue, 05 Sep 2023 15:52:42 +0000
Received: by outflank-mailman (input) for mailman id 595773;
 Tue, 05 Sep 2023 15:52:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdYM5-0003f3-Q3
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 15:52:42 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on2062e.outbound.protection.outlook.com
 [2a01:111:f400:fe12::62e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3d5644d4-4c04-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 17:52:39 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7953.eurprd04.prod.outlook.com (2603:10a6:20b:246::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 5 Sep
 2023 15:52:36 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 15:52:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3d5644d4-4c04-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=F5fgjzWAugmi1/QXYBpLKuR5DFsXtcVFcwqKqAyDXhmEJ78G0alW7KmnBHW7vb4PNIzpr+NrrJBwo6fmOOU0LvkWqsaduSL4WbRNBzLlDe2oft3i7AP6pFgEYDZUOUcfm9CJGqG4ScgIF5gWlN2RBcaSJbUFBRG8i7bcaLekQNYX5xNMq1n/nMKkSppTQootP+MKfjVncw4s82GwTgg77ilJ4Hh3+XYpSW0soYhXyV/VgigCUP63hyfxyguWIcCBm5RpFifxxKxlfl8+83oLwmgotZyMDIr9n3YBtWrr4GSHUmMjT0rt7HJZasPK9lo6y7E/j/i0Az91cGz49pS2kA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WAiq6nDoxcQSexF9dVvEFeOM0Tr4rdbNV/KwAN1lTTI=;
 b=L7EGixHeo9pvYBO6zNRuJDLad+ObQegycP6LBwcTibLZU/h/kBLYFYBHfKWZF/whj0QCknsry+QBsET2gqLv+9navfrVw0u8PDAxZukvbFyKOa6k8YM0SRcYtxUEE4jVdAEkEHXdZhUXPv13XOqBywQFSRMaeM8K8Jdy6mIcuOufDBvoZ0f3wlncU1YTKy73hoQ7bNllDmkIcPMiNnye7Mr+H9LtM1fckSXoboby6fuBWvcquvK5MRjk557jN4NjUs9E54WS0uao0cAttQAvMKehIU31RPMlwjezS/c7tG7Fd6nVVjN/Ect5fVgs9OUTMg2k+rn1lO88P62cjI//8w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WAiq6nDoxcQSexF9dVvEFeOM0Tr4rdbNV/KwAN1lTTI=;
 b=2rOp3qnVdcJ96QB2eZx8zbfn6bScHp2O2yG0k/G7EuNJ28FwfoCfs+fE3ISiicfbLBofmPvL6GDu8Sffx/w3CER6Gl5SHUIDZU5//NVzPOCT5UwcXuK1C5dGHpv/CMI0LV84rC8nDNYOumeJ/mfuryF09a8oMhQ365WW+K7W+NV8s5DP9C3QyvaLS/ZHiJaDZPp241ChuiBFOpEqvKS7d5lNK9Qo320L3iMVPdtwm0eGrYSCjWW4D4J804EEYNvVzL+zx96a2Cw1OnRqHM+nEdeEOhNYQ60ULyoHrSbSbDME8ptSMj4yfGF0GHfuDXm3aU4TrNcl/T9owIuQds/F1w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <16496c4c-4c92-7ed9-a612-72e75f86798f@suse.com>
Date: Tue, 5 Sep 2023 17:52:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v3 3/5] xen/ppc: Define minimal stub headers required for
 full build
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693590982.git.sanastasio@raptorengineering.com>
 <dd3d9c5d9ec94f9e1747ccc0fbf82629a58bddcb.1693590982.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <dd3d9c5d9ec94f9e1747ccc0fbf82629a58bddcb.1693590982.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0084.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7953:EE_
X-MS-Office365-Filtering-Correlation-Id: 47f5d557-b881-4aa8-d694-08dbae281fdb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9D4K+KmC21H9I5qhouFRRIvC2YPDAWonPdYKcsgQtUMMWhtCxP/fPzLxKOg+MHJQXIR064SMrtb0028giAOWrW+jsLLbTj3S6J3v8A4iWlVKpc1v+0HXMtOFXLg0NM8TZ1PbMDtd3rD6Dd4JfGqxxM8Kt4CSKKNwN8TSrdzJWzWzpj1PX+s5qLkpZV7aVq2e5SYtPspWmTzgXpJdps2+rCusDPmfOCHjmHRcX/2xQkkBVBzFoBjmuqCPKrKpE6i9eC7JsmLu+EEu6gVfF6YY4fIicxo+Hz4sApbFA6HHk//W9kxYneBw4D0NTYIU9mSnZF9a0fLc3J4sXn+HynN9G03JutZhet8MBGTQOTMDKMlgYRQcItu7gYAlTsYaiY8rwHgutEmO4FfQ3rxmRyQ2A7ivMlyb192n5uPKV4j4YS706qqDrD6sZvN0QPZ06FWgtUzzTPO3NZ/SUGKQ5j8c8YPd7cbOQSmgSxsZ5tcX9PxkAfl6vRAMpFquLRzNjyKALa9z1NPhYcJjP2LVSN7OOTKLuadZgekIQRIvwxjAszIkzQ8S+NIzPIFORNKSwK/D5AzqTrlPLTQ8xqP6Ae+SlkCUdK0cSPRMs8n11MY4uZBIBxGzRUewoBahQ23eq0tMg28ZkYz9i3R2Fd8NRY83hQ0gkS+c4KNy/PpaE8bkZ8g=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(396003)(136003)(39860400002)(346002)(451199024)(1800799009)(186009)(66556008)(66476007)(66946007)(31696002)(86362001)(41300700001)(316002)(6916009)(6512007)(31686004)(2616005)(26005)(6486002)(53546011)(6506007)(4326008)(5660300002)(8936002)(8676002)(478600001)(36756003)(38100700002)(83380400001)(30864003)(2906002)(21314003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aXFnOThsS3NWQ21ja3ZsbGpuQmovR0JINzBBZTcxemdnSVJ3VmVIaFFaMDl1?=
 =?utf-8?B?QlcxL3BIKytGb1lZOUZlWVZjRTZqQ0lqWCs3VVdlc0tGK3FpWG9GOTdpd0Nw?=
 =?utf-8?B?S0E0YmcrT0J3UnQ4ZUcxRHBnWi9USXRvTnc5T28rSnlBeDcxSUFCRFhET1ov?=
 =?utf-8?B?ZGtoMzdwYlgxM2g5RVFXNUNJODN0QUgxeWE4K2JMOVVpczArcVlkek45QjJ2?=
 =?utf-8?B?VFI4QmhCV1pSdE9FcjlYVWtxV250dGFrcXRsbnBORFZxR1N5K2pPSEhCN0h0?=
 =?utf-8?B?b3FJNktDNi9kMFllMzZKUWhGNkdORWZSS0V1QnBlNHpWMFBvWFFtSnNxTHRy?=
 =?utf-8?B?MEw4TUhWbEROUTNnbmhFWXdhbjc2ekcvdzJmbkJnU3ZUSkFpcnJjNElUaFY3?=
 =?utf-8?B?Qno2ZmwvUHhZMUlZdng3OHd5U2tndTVVRGh3SXEySWUyR1pxMXBSK1VRbTc0?=
 =?utf-8?B?a0g1bU9pUUN6RlVPOUZLaWdFR2U0NWhxeGdaSU5aOGx1SGtKZWx0QWM1eHl5?=
 =?utf-8?B?NlBETS9Wb1ZqenRiQlB4a3FSeVpVYTdlTTMzOGVraUlheG1rZFVTRWVKMk9S?=
 =?utf-8?B?NGJzK3N5UGVOdEk5cWRTQjJ6MStKbW8yM2EvQ0VCZXVmd2JmRGx3WjZhdmJX?=
 =?utf-8?B?OVJmRmppRy9la3RoRGtqeWxmdUJhSWFwRHRLTzN0NGU4M3hXUnh4WXdXRXZI?=
 =?utf-8?B?cnpkdmJtWTVhWEpWbWdiTXcwaEhEaGhweUwvLzJJQ1BGMlhSRnZYcld0TkRR?=
 =?utf-8?B?cG1mZzdMb2IvcGlhTUJOVHQxLzNHWXZqYUthdUQ2bFFkalN1QXBxWVk4ZW1D?=
 =?utf-8?B?cDVoYVdIL1hJS01rdW94RTNSN05Vd0dIRjd6MEhJTlc1dGRqZUNyV2hVREpM?=
 =?utf-8?B?cU1tSWVqcnpwemkvdTdyMGNyc2t5M1NtUDU4Y1hUdDNINDk4M3o1UWxvUnhv?=
 =?utf-8?B?b2p3OEVDZUxFSlhaWThleitiamx4SUhsUnVpd1JDamhWK2I0bVhlLzV1T0li?=
 =?utf-8?B?QzJJcXN3NEFoRGRkcTRDdVpWOUZ0KzRRYXlPVzBVanlnUFdaNG5OQlIrZk91?=
 =?utf-8?B?SXR2Ykp3RHpyR0RDajllTjdpK3J2dWZBTXc0K1pWS1hCK1ZvWHlCQTlLUlVn?=
 =?utf-8?B?OWFNY1lneUxEc294VXVXcXh2ejh6alFzY014YkRrUmNQT2k0N2cxQkc4N1Fm?=
 =?utf-8?B?UGtRL0JQcXFqd3RBenpIRUdKV05kTDRabnIxU2hxcnFpT0xodllCVGtBMG9T?=
 =?utf-8?B?bXVUdHpsR0YzeUdERHpsNzVhSHRSeE5lTWcxOTU3U2JGb3BpM0d2SkRVeWR3?=
 =?utf-8?B?Qk9kOU9tVDRVU2V5RGk4ZjJRSklxZmxLYklkQXdsUVV2SEZIMnU4U0NSVGti?=
 =?utf-8?B?SHRCeWpsTy9oKzdiM2VYQ2pIbGdWV21RKzFYa3QyWmdXL0FTWVJBQkhqbE1Y?=
 =?utf-8?B?YlMxRkJPU0FZbEYyU01qSlltNTZwTkRQdGVnVzYrTEZNWTkxSGQvRUU2QXdT?=
 =?utf-8?B?MUtJNndmdkcwcC81VFViaHJqeFNEWTJ3b0dHV3FPMldwODZvMGdVa2x3eVJQ?=
 =?utf-8?B?ZitzS2svLzRLWHdUWDFqRkFKSnd3ZWVOa09majlZdzRYN2ZRU3kvU0JqdENm?=
 =?utf-8?B?T25rS3dZU3B5U1RkM2pnVS9weU00ejBqMzU0NmVYR1dIUTlUazlXT3pWNk12?=
 =?utf-8?B?a2dyQnIwT2hKanpxQ0NCdXYyQWJpdUFaV2doK2NDTXNjSmUxNFJiOVQrM004?=
 =?utf-8?B?b05lNWk0WTVzdjhqdmdaZjVLbGNydjlVMDhLVzdFajVwd29ZclhXbkl5VlRG?=
 =?utf-8?B?eG5MRGN5UU9aUzk2Zjh5TWlnV1BxNVMyeTJjUllHalVGS2ZUalZHWlppUkNm?=
 =?utf-8?B?enVlRk5odkp2eW85ckI5cS85OGRLdG9PR3g0bHdWSTJIS3d3YWVHRGdpVkFL?=
 =?utf-8?B?SmZEc2svM1VLeUQrTUZFenZOMHROcDc1WW9xVU1LeDhPQS9aU2tzZUZHNmdM?=
 =?utf-8?B?SXI1bFcvR1lMckM0Kyt0M3lvVWVaTFRJcnVQK1B2WWFrQ2lMK1FUNEpEN1Rz?=
 =?utf-8?B?eG1JUVNZVFJIUUpKUXVQRml3N0xSQWhWRFVFR1lBVmloakw1RFgwVXc3bVNw?=
 =?utf-8?Q?33YiGxmt2fVM0BtGlpdC0e3dC?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 47f5d557-b881-4aa8-d694-08dbae281fdb
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 15:52:36.0739
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0F0DTK/P0TJr1BAeFvRG64UiKr/BhQjjnF9c00Da7bf4OX6hQJNGtcElRK1YZ/S4Rx0FLAFGoJBP+7rrLQWOjw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7953

On 01.09.2023 20:25, Shawn Anastasio wrote:
> --- /dev/null
> +++ b/xen/arch/ppc/include/asm/device.h
> @@ -0,0 +1,53 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
> +#ifndef __ASM_PPC_DEVICE_H__
> +#define __ASM_PPC_DEVICE_H__
> +
> +enum device_type
> +{
> +    DEV_DT,
> +    DEV_PCI,
> +};
> +
> +struct device {
> +    enum device_type type;
> +#ifdef CONFIG_HAS_DEVICE_TREE
> +    struct dt_device_node *of_node; /* Used by drivers imported from Linux */
> +#endif
> +};
> +
> +enum device_class
> +{
> +    DEVICE_SERIAL,
> +    DEVICE_IOMMU,
> +    DEVICE_PCI_HOSTBRIDGE,
> +    /* Use for error */
> +    DEVICE_UNKNOWN,
> +};
> +
> +struct device_desc {
> +    /* Device name */
> +    const char *name;
> +    /* Device class */
> +    enum device_class class;
> +    /* List of devices supported by this driver */
> +    const struct dt_device_match *dt_match;
> +    /*
> +     * Device initialization.
> +     *
> +     * -EAGAIN is used to indicate that device probing is deferred.
> +     */
> +    int (*init)(struct dt_device_node *dev, const void *data);
> +};
> +
> +typedef struct device device_t;
> +
> +#define DT_DEVICE_START(_name, _namestr, _class)                    \

Nit: Underscore-prefixed macro parameter names again.

> --- a/xen/arch/ppc/include/asm/mm.h
> +++ b/xen/arch/ppc/include/asm/mm.h
> @@ -1,10 +1,25 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
>  #ifndef _ASM_PPC_MM_H
>  #define _ASM_PPC_MM_H
> 
> +#include <public/xen.h>
> +#include <xen/pdx.h>
> +#include <xen/types.h>
> +#include <asm/config.h>
>  #include <asm/page-bits.h>
> +#include <asm/page.h>
> +
> +void setup_initial_pagetables(void);
> 
>  #define pfn_to_paddr(pfn) ((paddr_t)(pfn) << PAGE_SHIFT)
>  #define paddr_to_pfn(pa)  ((unsigned long)((pa) >> PAGE_SHIFT))
> +#define paddr_to_pdx(pa)    mfn_to_pdx(maddr_to_mfn(pa))
> +#define gfn_to_gaddr(gfn)   pfn_to_paddr(gfn_x(gfn))
> +#define gaddr_to_gfn(ga)    _gfn(paddr_to_pfn(ga))
> +#define mfn_to_maddr(mfn)   pfn_to_paddr(mfn_x(mfn))
> +#define maddr_to_mfn(ma)    _mfn(paddr_to_pfn(ma))
> +#define vmap_to_mfn(va)     maddr_to_mfn(virt_to_maddr((vaddr_t)va))
> +#define vmap_to_page(va)    mfn_to_page(vmap_to_mfn(va))
> 
>  #define virt_to_maddr(va) ((paddr_t)((vaddr_t)(va) & PADDR_MASK))
>  #define maddr_to_virt(pa) ((void *)((paddr_t)(pa) | XEN_VIRT_START))

Is it intentional that the additions don't align, padding-wise, with the
surrounding #define-s?

> @@ -13,6 +28,237 @@
>  #define __pa(x)             (virt_to_maddr(x))
>  #define __va(x)             (maddr_to_virt(x))
> 
> -void setup_initial_pagetables(void);
> +/* Convert between Xen-heap virtual addresses and machine frame numbers. */
> +#define __virt_to_mfn(va) (virt_to_maddr(va) >> PAGE_SHIFT)
> +#define __mfn_to_virt(mfn) (maddr_to_virt((paddr_t)(mfn) << PAGE_SHIFT))
> +
> +/* Convert between Xen-heap virtual addresses and page-info structures. */
> +static inline struct page_info *virt_to_page(const void *v)
> +{
> +    BUG_ON("unimplemented");
> +    return NULL;
> +}
> +
> +/*
> + * We define non-underscored wrappers for above conversion functions.
> + * These are overriden in various source files while underscored version
> + * remain intact.
> + */
> +#define virt_to_mfn(va)     __virt_to_mfn(va)
> +#define mfn_to_virt(mfn)    __mfn_to_virt(mfn)

Is the comment really applicable? The only non-arch-specific file still
doing so is xenoprof.c, and I'm not sure you mean to support xenoprof
on PPC. PPC-specific files would better be introduced in a type-safe way
right from the beginning.

> +#define PG_shift(idx)   (BITS_PER_LONG - (idx))
> +#define PG_mask(x, idx) (x ## UL << PG_shift(idx))
> +
> +#define PGT_none          PG_mask(0, 1)  /* no special uses of this page   */
> +#define PGT_writable_page PG_mask(1, 1)  /* has writable mappings?         */
> +#define PGT_type_mask     PG_mask(1, 1)  /* Bits 31 or 63.                 */
> +
> + /* 2-bit count of uses of this frame as its current type. */
> +#define PGT_count_mask    PG_mask(3, 3)
> +
> +/* Cleared when the owning guest 'frees' this page. */
> +#define _PGC_allocated    PG_shift(1)
> +#define PGC_allocated     PG_mask(1, 1)
> +/* Page is Xen heap? */
> +#define _PGC_xen_heap     PG_shift(2)
> +#define PGC_xen_heap      PG_mask(1, 2)
> +/* Page is broken? */
> +#define _PGC_broken       PG_shift(7)
> +#define PGC_broken        PG_mask(1, 7)
> + /* Mutually-exclusive page states: { inuse, offlining, offlined, free }. */
> +#define PGC_state         PG_mask(3, 9)
> +#define PGC_state_inuse   PG_mask(0, 9)
> +#define PGC_state_offlining PG_mask(1, 9)
> +#define PGC_state_offlined PG_mask(2, 9)
> +#define PGC_state_free    PG_mask(3, 9)
> +#define page_state_is(pg, st) (((pg)->count_info&PGC_state) == PGC_state_##st)
> +/* Page is not reference counted */
> +#define _PGC_extra        PG_shift(10)
> +#define PGC_extra         PG_mask(1, 10)
> +
> +/* Count of references to this frame. */
> +#define PGC_count_width   PG_shift(10)
> +#define PGC_count_mask    ((1UL<<PGC_count_width)-1)
> +
> +/*
> + * Page needs to be scrubbed. Since this bit can only be set on a page that is
> + * free (i.e. in PGC_state_free) we can reuse PGC_allocated bit.
> + */
> +#define _PGC_need_scrub   _PGC_allocated
> +#define PGC_need_scrub    PGC_allocated
> +
> +#define is_xen_heap_page(page) ((page)->count_info & PGC_xen_heap)
> +#define is_xen_heap_mfn(mfn) \
> +    (mfn_valid(mfn) && is_xen_heap_page(mfn_to_page(mfn)))
> +
> +#define is_xen_fixed_mfn(mfn)                                   \
> +    ((mfn_to_maddr(mfn) >= virt_to_maddr(&_start)) &&           \
> +     (mfn_to_maddr(mfn) <= virt_to_maddr((vaddr_t)_end - 1)))

Please use (or, preferred, do not use) & and cast consistently on _start
and _end.

> +#define page_get_owner(_p)    (_p)->v.inuse.domain
> +#define page_set_owner(_p,_d) ((_p)->v.inuse.domain = (_d))
> +
> +/* TODO: implement */
> +#define mfn_valid(mfn) ({ (void) (mfn); 0; })
> +
> +#define domain_set_alloc_bitsize(d) ((void)(d))
> +#define domain_clamp_alloc_bitsize(d, b) (b)
> +
> +#define PFN_ORDER(pfn_) ((pfn_)->v.free.order)
> +
> +struct page_info
> +{
> +    /* Each frame can be threaded onto a doubly-linked list. */
> +    struct page_list_entry list;
> +
> +    /* Reference count and various PGC_xxx flags and fields. */
> +    unsigned long count_info;
> +
> +    /* Context-dependent fields follow... */
> +    union {
> +        /* Page is in use: ((count_info & PGC_count_mask) != 0). */
> +        struct {
> +            /* Type reference count and various PGT_xxx flags and fields. */
> +            unsigned long type_info;
> +        } inuse;
> +        /* Page is on a free list: ((count_info & PGC_count_mask) == 0). */
> +        union {
> +            struct {
> +                /*
> +                 * Index of the first *possibly* unscrubbed page in the buddy.
> +                 * One more bit than maximum possible order to accommodate
> +                 * INVALID_DIRTY_IDX.
> +                 */
> +#define INVALID_DIRTY_IDX ((1UL << (MAX_ORDER + 1)) - 1)
> +                unsigned long first_dirty:MAX_ORDER + 1;
> +
> +                /* Do TLBs need flushing for safety before next page use? */
> +                bool need_tlbflush:1;
> +
> +#define BUDDY_NOT_SCRUBBING    0
> +#define BUDDY_SCRUBBING        1
> +#define BUDDY_SCRUB_ABORT      2
> +                unsigned long scrub_state:2;
> +            };
> +
> +            unsigned long val;
> +        } free;
> +
> +    } u;
> +
> +    union {
> +        /* Page is in use, but not as a shadow. */
> +        struct {
> +            /* Owner of this page (zero if page is anonymous). */
> +            struct domain *domain;

Since this is a pointer, NULL (instead of zero) would seem more appropriate
in the comment.

> +        } inuse;
> +
> +        /* Page is on a free list. */
> +        struct {
> +            /* Order-size of the free chunk this page is the head of. */
> +            unsigned int order;
> +        } free;
> +
> +    } v;
> +
> +    union {
> +        /*
> +         * Timestamp from 'TLB clock', used to avoid extra safety flushes.
> +         * Only valid for: a) free pages, and b) pages with zero type count
> +         */
> +        u32 tlbflush_timestamp;
> +    };
> +    u64 pad;

uint<N>_t please (or unsigned int/long).

> --- /dev/null
> +++ b/xen/arch/ppc/include/asm/monitor.h
> @@ -0,0 +1,43 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
> +/* Derived from xen/arch/arm/include/asm/monitor.h */
> +#ifndef __ASM_PPC_MONITOR_H__
> +#define __ASM_PPC_MONITOR_H__
> +
> +#include <public/domctl.h>
> +#include <xen/errno.h>
> +
> +static inline
> +void arch_monitor_allow_userspace(struct domain *d, bool allow_userspace)
> +{
> +}
> +
> +static inline
> +int arch_monitor_domctl_op(struct domain *d, struct xen_domctl_monitor_op *mop)
> +{
> +    /* No arch-specific monitor ops on PPC. */
> +    return -EOPNOTSUPP;
> +}
> +
> +int arch_monitor_domctl_event(struct domain *d,
> +                              struct xen_domctl_monitor_op *mop);
> +
> +static inline
> +int arch_monitor_init_domain(struct domain *d)
> +{
> +    /* No arch-specific domain initialization on PPC. */
> +    return 0;
> +}
> +
> +static inline
> +void arch_monitor_cleanup_domain(struct domain *d)
> +{
> +    /* No arch-specific domain cleanup on PPC. */
> +}
> +
> +static inline uint32_t arch_monitor_get_capabilities(struct domain *d)
> +{
> +    BUG_ON("unimplemented");
> +    return 0;
> +}
> +
> +#endif /* __ASM_PPC_MONITOR_H__ */

>From a formal perspective you'll need Tamas's ack for this file, so you
may want to Cc him. (Also for vm_event.h, unless the generic solution
there doesn't land first.)

> --- /dev/null
> +++ b/xen/arch/ppc/include/asm/p2m.h
> @@ -0,0 +1,105 @@
> +#ifndef __ASM_PPC_P2M_H__
> +#define __ASM_PPC_P2M_H__
> +
> +#include <asm/page-bits.h>
> +
> +#define paddr_bits PADDR_BITS
> +
> +/*
> + * List of possible type for each page in the p2m entry.
> + * The number of available bit per page in the pte for this purpose is 4 bits.
> + * So it's possible to only have 16 fields. If we run out of value in the
> + * future, it's possible to use higher value for pseudo-type and don't store
> + * them in the p2m entry.
> + */
> +typedef enum {
> +    p2m_invalid = 0,    /* Nothing mapped here */
> +    p2m_ram_rw,         /* Normal read/write guest RAM */
> +    p2m_ram_ro,         /* Read-only; writes are silently dropped */
> +    p2m_mmio_direct_dev,/* Read/write mapping of genuine Device MMIO area */
> +    p2m_mmio_direct_nc, /* Read/write mapping of genuine MMIO area non-cacheable */
> +    p2m_mmio_direct_c,  /* Read/write mapping of genuine MMIO area cacheable */

Didn't you agree to drop at least what's clear Arm-specific?

> --- a/xen/arch/ppc/include/asm/system.h
> +++ b/xen/arch/ppc/include/asm/system.h
> @@ -1,6 +1,228 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +/*
> + * Copyright (C) IBM Corp. 2005
> + * Copyright (C) Raptor Engineering LLC
> + *
> + * Authors: Jimi Xenidis <jimix@watson.ibm.com>
> + *          Shawn Anastasio <sanastasio@raptorengineering.com>
> + */
> +
>  #ifndef _ASM_SYSTEM_H_
>  #define _ASM_SYSTEM_H_
> 
> -#define smp_wmb() __asm__ __volatile__ ( "lwsync" : : : "memory" )
> +#include <xen/lib.h>
> +#include <asm/memory.h>
> +#include <asm/time.h>
> +#include <asm/processor.h>
> +#include <asm/msr.h>
> +
> +#define xchg(ptr,x) 							                               \
> +({									                                           \
> +	__typeof__(*(ptr)) _x_ = (x);					                           \

Hard tabs look to have slipped in here.

> +	(__typeof__(*(ptr))) __xchg((ptr), (unsigned long)_x_, sizeof(*(ptr)));    \
> +})
> +
> +#define build_xchg(fn, type, ldinsn, stinsn) \
> +static inline unsigned long fn(volatile type *m, unsigned long val)            \
> +{                                                                              \
> +    unsigned long dummy;                                                       \
> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER                                    \
> +                   "1: " ldinsn " %0,0,%3\n"                                   \
> +                   stinsn " %2,0,%3\n"                                         \
> +                   "2:  bne- 1b"                                               \
> +                   PPC_ATOMIC_EXIT_BARRIER                                     \
> +                   : "=&r" (dummy), "=m" (*m)                                  \
> +                   : "r" (val), "r" (m)                                        \
> +                   : "cc", "memory" );                                         \
> +    return dummy;                                                              \
> +}
> +
> +build_xchg(__xchg_u8, uint8_t, "lbarx", "stbcx.")
> +build_xchg(__xchg_u16, uint16_t, "lharx", "sthcx.")
> +build_xchg(__xchg_u32, uint32_t, "lwarx", "stwcx.")
> +build_xchg(__xchg_u64, uint64_t, "ldarx", "stdcx.")
> +
> +#undef build_xchg
> +
> +/*
> + * This function doesn't exist, so you'll get a linker error
> + * if something tries to do an invalid xchg().
> + */
> +extern void __xchg_called_with_bad_pointer(void);
> +
> +static inline unsigned long __xchg(volatile void *ptr, unsigned long x,
> +                                   int size)
> +{
> +    switch (size) {

Nit: Since the file looks like it wants to use Xen style:

    switch ( size )
    {

please.

> +    case 1:
> +        return __xchg_u8(ptr, x);
> +    case 2:
> +        return __xchg_u16(ptr, x);
> +    case 4:
> +        return __xchg_u32(ptr, x);
> +    case 8:
> +        return __xchg_u64(ptr, x);
> +    }
> +    __xchg_called_with_bad_pointer();
> +    return x;
> +}
> +
> +
> +static inline unsigned long __cmpxchg_u32(volatile int *p, int old, int new)
> +{
> +    unsigned int prev;
> +
> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
> +                   "1: lwarx   %0,0,%2\n"
> +                   "cmpw    0,%0,%3\n"
> +                   "bne-    2f\n "
> +                   "stwcx.  %4,0,%2\n"
> +                   "bne-    1b\n"
> +                   PPC_ATOMIC_EXIT_BARRIER "\n"
> +                   "2:"
> +                   : "=&r" (prev), "=m" (*p)
> +                   : "r" (p), "r" (old), "r" (new), "m" (*p)
> +                   : "cc", "memory" );
> +
> +    return prev;
> +}
> +
> +static inline unsigned long __cmpxchg_u64(volatile long *p, unsigned long old,
> +                                          unsigned long new)
> +{
> +    unsigned long prev;
> +
> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
> +                   "1: ldarx   %0,0,%2\n"
> +                   "cmpd    0,%0,%3\n"
> +                   "bne-    2f\n"
> +                   "stdcx.  %4,0,%2\n"
> +                   "bne-    1b"
> +                   PPC_ATOMIC_EXIT_BARRIER "\n"
> +                   "2:"
> +                   : "=&r" (prev), "=m" (*p)
> +                   : "r" (p), "r" (old), "r" (new), "m" (*p)
> +                   : "cc", "memory" );
> +
> +    return prev;
> +}
> +
> +/* This function doesn't exist, so you'll get a linker error
> +   if something tries to do an invalid cmpxchg().  */
> +extern void __cmpxchg_called_with_bad_pointer(void);
> +
> +static always_inline unsigned long __cmpxchg(
> +    volatile void *ptr,
> +    unsigned long old,
> +    unsigned long new,
> +    int size)
> +{
> +    switch (size) {
> +    case 2:
> +        BUG_ON("unimplemented"); return 0; /* XXX implement __cmpxchg_u16 ? */
> +    case 4:
> +        return __cmpxchg_u32(ptr, old, new);
> +    case 8:
> +        return __cmpxchg_u64(ptr, old, new);
> +    }
> +    __cmpxchg_called_with_bad_pointer();
> +    return old;
> +}
> +
> +#define cmpxchg_user(ptr,o,n) cmpxchg(ptr,o,n)
> +
> +#define cmpxchg(ptr,o,n)                         \
> +  ({                                     \
> +     __typeof__(*(ptr)) _o_ = (o);                   \
> +     __typeof__(*(ptr)) _n_ = (n);                   \
> +     (__typeof__(*(ptr))) __cmpxchg((ptr), (unsigned long)_o_,       \
> +                    (unsigned long)_n_, sizeof(*(ptr))); \

Not: Style (multiple previously mentioned issues).

> +  })
> +
> +
> +/*
> + * Memory barrier.
> + * The sync instruction guarantees that all memory accesses initiated
> + * by this processor have been performed (with respect to all other
> + * mechanisms that access memory).  The eieio instruction is a barrier
> + * providing an ordering (separately) for (a) cacheable stores and (b)
> + * loads and stores to non-cacheable memory (e.g. I/O devices).
> + *
> + * mb() prevents loads and stores being reordered across this point.
> + * rmb() prevents loads being reordered across this point.
> + * wmb() prevents stores being reordered across this point.
> + * read_barrier_depends() prevents data-dependent loads being reordered
> + *  across this point (nop on PPC).
> + *
> + * We have to use the sync instructions for mb(), since lwsync doesn't
> + * order loads with respect to previous stores.  Lwsync is fine for
> + * rmb(), though.
> + * For wmb(), we use sync since wmb is used in drivers to order
> + * stores to system memory with respect to writes to the device.
> + * However, smp_wmb() can be a lighter-weight eieio barrier on
> + * SMP since it is only used to order updates to system memory.
> + */
> +#define mb()   __asm__ __volatile__ ("sync" : : : "memory")
> +#define rmb()  __asm__ __volatile__ ("lwsync" : : : "memory")
> +#define wmb()  __asm__ __volatile__ ("sync" : : : "memory")

Nit: Missing blanks.

> +#define read_barrier_depends()  do { } while(0)
> +
> +#define set_mb(var, value)  do { var = value; smp_mb(); } while (0)
> +#define set_wmb(var, value) do { var = value; smp_wmb(); } while (0)
> +
> +#define smp_mb__before_atomic()    smp_mb()
> +#define smp_mb__after_atomic()     smp_mb()
> +
> +#ifdef CONFIG_SMP
> +#define smp_mb()    mb()
> +#define smp_rmb()   rmb()
> +#define smp_wmb()   __asm__ __volatile__ ("lwsync" : : : "memory")
> +#define smp_read_barrier_depends()  read_barrier_depends()
> +#else
> +#define smp_mb()    __asm__ __volatile__("": : :"memory")
> +#define smp_rmb()   __asm__ __volatile__("": : :"memory")
> +#define smp_wmb()   __asm__ __volatile__("": : :"memory")

And more missing blanks (further below from here).

> +#define smp_read_barrier_depends()  do { } while(0)
> +#endif /* CONFIG_SMP */
> +
> +#define local_save_flags(flags) ((flags) = mfmsr())
> +#define local_irq_restore(flags) do { \
> +        __asm__ __volatile__("": : :"memory"); \
> +        mtmsrd((flags)); \
> +} while(0)
> +
> +static inline void local_irq_disable(void)
> +{
> +    unsigned long msr;
> +    msr = mfmsr();
> +    mtmsrd(msr & ~MSR_EE);
> +    asm volatile ( "" : : : "memory" );

That's simply barrier(), isn't it? Please avoid open-coding. (More
further down.)

> --- /dev/null
> +++ b/xen/arch/ppc/include/asm/time.h
> @@ -0,0 +1,21 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
> +#ifndef __ASM_PPC_TIME_H__
> +#define __ASM_PPC_TIME_H__
> +
> +#include <xen/lib.h>
> +#include <asm/processor.h>
> +#include <asm/regs.h>
> +
> +struct vcpu;
> +
> +/* TODO: implement */
> +static inline void force_update_vcpu_system_time(struct vcpu *v) { BUG_ON("unimplemented"); }

Nit: Too long line.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 15:54:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 15:54:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595780.929393 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdYOF-0004ll-Ht; Tue, 05 Sep 2023 15:54:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595780.929393; Tue, 05 Sep 2023 15:54:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdYOF-0004lO-Ef; Tue, 05 Sep 2023 15:54:55 +0000
Received: by outflank-mailman (input) for mailman id 595780;
 Tue, 05 Sep 2023 15:54:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdYOD-0004lI-LB
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 15:54:53 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0616.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::616])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8c46982f-4c04-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 17:54:51 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7948.eurprd04.prod.outlook.com (2603:10a6:10:1e6::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Tue, 5 Sep
 2023 15:54:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 15:54:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8c46982f-4c04-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BU8s4yaaIeufEBWII02wgYOpCQytQIfHDr1j+kNdMtosApAYYNz7HGEjLSpu18l9FH4bfUEBfYOdjDIU5Cyd4EbSD08TIP54E3Vsl9qQtTOIsGUYj8YbUZNkmx3BCQfA5PEi5bi0jjhulVBvIZyy/yDezwr4xIj6bJ4nQ1mIamnb99T1bBFk+HX37aKIMI2bBGvdYuzjYzYwuxHyTbGc03eVW+QVf6K060I792MdqNIir0IX0a+bvRuryvnVn5YQKGc8GnZ4wqezUz2jQYa9Nc7DoLwOg6t2mG4ktGMfTuttiMDyNNLUXPS90TZLvfg/QNyV+CTjWpBhd+776WoxLw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mAW8ffXMYnsUL/t8juwJ+T0e9mNjFfmdRiuiTpcgFVk=;
 b=DomS4rD27PhsZibcxnjYiA1ifbRIzYl1LMQLCXiaWFiJ96lQ/t7HWxL7dzYu3+mWaYvHt2k/iYkSSvKuKPniVPNotuswILmXnfsxY4q1Z4/wilr6hGEGqYCQSGhe2bLs5cY166qvE6EUYzR2xw7wpg0YiQNPwmqDRJZHFasXIWgf87QWaIDNUMh6kQGI3Hywsy8mNtjpsLN7H3AuEgyr7B9tRlxqvROT8Tj9j4AcWDNQSLQdhNLfc8AYcHlanl3kXjZcpJBC3xMHlx4csNMChpn1RNok18aAyWwDIQLvUb/zGSP9fWrtned5NP8OI1YPivF/MFKCN7T15xLuCJ8aDw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mAW8ffXMYnsUL/t8juwJ+T0e9mNjFfmdRiuiTpcgFVk=;
 b=yAExpvoPEhypnbKCwFsR/ppgI8Fk8WIVbF7gCT+vEcCAxz9Lj3D45NmO9Ji+1/Ss3SUAXymc+dVsxNwGgOeVmMX19Jhan393Ueet5Tp7lqoHvLp697KCvI3qTPFo8/WZ47AWc7JcTmzs9hgN90CdobNuBSz2qIKwYNJpPS22Y3Lze+/xZL32ELtpAXaSNaRqMDJdgDB/kFhgfzUS0YE8o9Xhe4PoMg9ajmdLONbixFmDVUI7twC7GvmmPtiVXq4zgraXuRzZ1lXgO9OwPyqDywtyWjnsV3CCwBWFLJJ3lgUHoDcKeBauAKoR/hS3ybfO8xpNRm6hLokOdrgM1vuw/A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <910a5e9c-eda7-86aa-2100-15fcd055c0b5@suse.com>
Date: Tue, 5 Sep 2023 17:54:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v3 1/5] xen/ppc: Implement atomic.h
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693590982.git.sanastasio@raptorengineering.com>
 <917dc5517b69657b48e69c4100234383f5c70e0e.1693590982.git.sanastasio@raptorengineering.com>
 <692dae52-947b-5856-f1b8-5d9f03f78e6a@suse.com>
In-Reply-To: <692dae52-947b-5856-f1b8-5d9f03f78e6a@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0066.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:93::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBBPR04MB7948:EE_
X-MS-Office365-Filtering-Correlation-Id: 6f802848-feeb-4099-5a4a-08dbae286f3d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	T5/i+/MmF8nqSUh2BX3+B+uLXrnIeUgvtlhCGM0RUszmUYAa7pwTEbEbt5aF99LkSRJzKsbbVHvNrevfu26XL19nr4sgiO9/s2hkprm3rTotgD2VAapedH+0dceE4c4R7zOa3avo+3RcuAuOKOdxMC2g8f9LFjjwLaA80QumooPXR6ZEgwao5fFU81kbGXUgc44SQdDH6LvB9lQXupuddcqmctdk7Mmx5X4zLOKB99zJNhp0eqGtEDZsHYII41FYzg8FnvUH1aYEg1a6Th4BN+IGwPG8byXXMn4GqiBTb3v98ngP7df/jtzrPxJz9LtIRp0M8ZEnH5HA3cO5uUkqQfWfV6mpemCe/DdUgevYW5Qb4q4X/0hFfDuCVBHZ9vG88jb9iwTqaLbjLpHEZS3KgjYorO2DDlpaswNAhCSqCJUh7EfS6Jl3LhF81kznH/XLuwua/QYxTGn8prh/+ZQ4IwXAsMNchtI/m8/UCyjn1d/QwS4anBUcwdjQGV/TyvEoOmEiEhuFtAWHjBJZVTOBMtS5nDwx8N7wCs3p1u0L9476A1tOKoc21nmSwyR2LzxkY+VOuWTJC+WRG8l7yBLbQ7R096/gK15eYqVj+eziPr5I4/Y5HprqumPKMWDGTrjW1aH0WZbEyhZslpYGPHwZTg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(366004)(376002)(346002)(136003)(186009)(1800799009)(451199024)(53546011)(6486002)(6506007)(41300700001)(478600001)(4744005)(2906002)(36756003)(6512007)(38100700002)(316002)(6916009)(31696002)(66476007)(66946007)(66556008)(86362001)(8936002)(8676002)(4326008)(31686004)(26005)(2616005)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M29jVlI1SE1uZzJRdStVc1ZJQWlYbkRsSWJqVzgyUEpNeGVlUlhzSUd6cE5J?=
 =?utf-8?B?ZEl1OVZXUDRjUVMxRHJZZDFyN1Ivd3lXb21oWmR5eC95VE5IQk9lc3dKOHVX?=
 =?utf-8?B?Uy9KQk9NNDVXY0xDK2RSSXBINVlKUTZVcTl0ZVBaM2ppU3dQNTg5akhlakhN?=
 =?utf-8?B?dzRWN1VUbWpCdmVWZmdhb251UjdocFVRY0xCUmhPNXc3RWlPNlJhV1dpZnlp?=
 =?utf-8?B?QTc1MGNMM24vTTBjbnVyQkROYlhITUtheE5NQlgzU3NmZnlQVk5xWG9DRGZu?=
 =?utf-8?B?UC9ybS9ObGh3SGRtcUVBK2Iydjk0TzRJcGZqdEtWK2FoWFExTStJdDVuQ3I4?=
 =?utf-8?B?WGxFb2IzanJBa1dQbFVDZU9WOFk2UW5TNDBwTEhPK0xhbHpPYWdMZWM4S016?=
 =?utf-8?B?S3c5OExUY1NZZElEUVhSbTBGMExpNWRsaC9sUHEwaXBScjUrekxTYlNvMWho?=
 =?utf-8?B?VnZYd1dESzlpTVJpN1hnS2s1M2NNTW5HT2pBaSt5cVF0NVBRbHEwWmtGc3Jq?=
 =?utf-8?B?WWQzbG5LYnFvUkNPQU1ib2VTWWdDNWkyaFFnenEwSFZ2TmhvcWdaZDN1UEtX?=
 =?utf-8?B?Z1JKRDlUNUlja0xxZGc4ekhLRjJxVVorMS9WVVBRL1hRTXJDTW0vNldWb3dz?=
 =?utf-8?B?cUJYdTR5eDk4d1c4cE5zZUtlWEZza0lsUmpXVzdBc2J2ay8wdFBQaklHby90?=
 =?utf-8?B?cjFud2R5N0N4UkNBZEluT0lVUkhNZVgwclFXbGw2YmNLdEE4T0lUS0hqeTVI?=
 =?utf-8?B?QStubWdGSEtYZWNVc0M3KzMzdm5CQXZUdzlLcFVnRm9RaVhaUm1wRXd6bHRw?=
 =?utf-8?B?YUhZZzMyYnRvS1lHNy9iVUJLTGNZelBkcEFTbkVjR3lzYzI3dVJxQnpwWFk1?=
 =?utf-8?B?c1NKTjUxWWIxUEw1L3NOekIxbWhlUmtkaXdBbStZQ0VKYkxSV1F4R3UvWVpa?=
 =?utf-8?B?K0VZRTkvZERPQ052bW9UM3NVS2F6VmJIbXpjY2xVNmVSVjR1MCtWeUlGeGRR?=
 =?utf-8?B?bXpDUlJETlYxK01HU09XLzZtSVlxb2xVcmpmb05NY2FNeitJY1JNbXkwNzVs?=
 =?utf-8?B?dThDcHdQSUFRZG1nVy9vQTNxODRlYkxoYmRqVStNL0ZxUktUYXgweFRpbGNX?=
 =?utf-8?B?SUZqblZjcmVSTjJ6amI1MkFSTmtxUm9TK09sQUEzK05iNnlQMjRqdUVoYklU?=
 =?utf-8?B?dVZ4QUpWSTdCblVtaC9YK1RBd2g3MEtvSFprL28zaWo3cmduaXNFZ1FBK256?=
 =?utf-8?B?eTNpdDduU2RNWFlCYTNNdlVWN2JEWWdiMDhSUTRxaVdobEFUV1B4YjAzY0F5?=
 =?utf-8?B?YnJ3VjVpanlSMG1JUXMwMTlFOG5vUythenpZREQ1a21RbFJvc0ptK1lXa0Vl?=
 =?utf-8?B?aHlnZ3VESExoMmhwdkRWZ2hPUXZncjJCNHprZW5iR0tZWDRnL2U0aXBCY2lM?=
 =?utf-8?B?cjhDeG5COUhrSHhXUFRZczNkaXozTUNsWUhGNjd5UlIxL045anprVnMxbnV0?=
 =?utf-8?B?eTdiRHBDK3l6dnV6enVuYXNhTWJ6NGlmdGRDTXVnQTFGYWJGaElxSndqWDZi?=
 =?utf-8?B?OWhpd1lYZWNRdzNqTm1NQ0c1V1BXd0NzU0VxNm9vTlMvRmJjNTRka3VYeXhL?=
 =?utf-8?B?ZTJDNUl3Zy9lSFlwOUhUbVhQVGlWRnM1ZldwU1U0VmlsR0F6bm1EN0VHZ2Zz?=
 =?utf-8?B?UUVkc0ltKzdjbmFTZU1WeHF3U2FvbFZDWjI4Q0UwSjkyK2RFTHZMOCtYZE9p?=
 =?utf-8?B?eThPenh4SVUxVU9rRHVDODVEMmcyclljdUhaNGtDY3BZSzBvSG5vdnFNU1ds?=
 =?utf-8?B?Y2xreVRqbXRmSkVUWENIb25URklGSEtqL3ZuWkhuNGJyTFlUN2Z5NFQ3OFhQ?=
 =?utf-8?B?WGJhb2V1anE2T3FFdUhxVUNNSkNJdWhIOEJ6YzFDcmVYU042eDhTSkMvbXB2?=
 =?utf-8?B?dy9WeGVscklJRlgvMit1K3ZVcEtCZWZlUzBZVXdSbFVEUS93U2toMGdxZm55?=
 =?utf-8?B?ZGZpTWE5SEtQeDZyNXNuZzh2NmFBcUcxZXhvSHJoL3Y3cWhWSENVaTdUNHZV?=
 =?utf-8?B?T3RXYllDMW01Z2lyTWhhTTZXR0w5OERWUHRncWJ2S0NZSVROMmxDelYzZkJr?=
 =?utf-8?Q?3Q0ZbQKkF+9PgF2btdOf3sics?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6f802848-feeb-4099-5a4a-08dbae286f3d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 15:54:49.2308
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: HNsAfUw0o/WgxJbI5iKm+/fv+Bn5GX4+REGQzoQc6ZnTz06DwxZHOYsJmNDKFw5xzHiPa8AtT7ujDwyy6JOa5A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7948

On 05.09.2023 16:58, Jan Beulich wrote:
> On 01.09.2023 20:25, Shawn Anastasio wrote:
>> +static inline atomic_t atomic_compareandswap(atomic_t old, atomic_t new,
>> +                                             atomic_t *v)
>> +{
>> +    atomic_t rc;
>> +    rc.counter = __cmpxchg(&v->counter, old.counter, new.counter, sizeof(int));
> 
> I can't seem to be able to spot where __cmpxchg() is defined. (I really
> only wanted to check why it needs the 4th argument, which here rather
> would want to be e.g. sizeof(v->counter). If it can't be omitted.)

Found it in patch 3, which suggests an incorrect split of patches. May
not matter all that much of course if the headers aren't used before
enough of the machinery is in place. But then such broken connections
would be nice to mention in the description.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 16:08:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 16:08:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595787.929403 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdYb4-0007lY-LR; Tue, 05 Sep 2023 16:08:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595787.929403; Tue, 05 Sep 2023 16:08:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdYb4-0007lR-Ik; Tue, 05 Sep 2023 16:08:10 +0000
Received: by outflank-mailman (input) for mailman id 595787;
 Tue, 05 Sep 2023 16:08:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JoEh=EV=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdYb2-0007lL-IX
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 16:08:08 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2089.outbound.protection.outlook.com [40.107.13.89])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 65efabe6-4c06-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 18:08:06 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBAPR04MB7416.eurprd04.prod.outlook.com (2603:10a6:10:1b3::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Tue, 5 Sep
 2023 16:07:37 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.030; Tue, 5 Sep 2023
 16:07:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 65efabe6-4c06-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nDGykEMxi1nlVPRWF8kvs2TUYZeYPQfWUAkTsYspcgr/qEmN5CMVv4rYBTOD8Eer1kC0u5uz+Jg+pG9uegONiBcBI0KYQB+aTUpTuMODSyr89MoWthxHLN770XfTWThJsKviRZVRfR2e56rScZOycU8vHojJ2CG+N5FrQ5e3Gsd+jGCLZA+tgnziNFLFIIY+cL3x2TCvVjPr2YzXZv9NP5quKeWDYcKV+rCfdMF9RJt5P0kXI6t7iZkBswDWZn+9HCIBFlwh4WrpyBfAUduqZdkWpJHScSkh9Mt2B+Z/J18mFjJiCSGscLmqHm+SUN2MB4txsUEtQrp/REltQs0rqQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mHfTW3hgPWNG0Dmze3x2GP18OR4yBlIjNhdQN13rLbI=;
 b=QZCwoFW/fkGXTrJIVdTXnLkFm44oGYW9xBFCH+v/+YgSfLFD0LjY+MfTuzomYr2cgscSTIt0otHUSMraJJX8ubGqd3R+GAhLkInk/XjvzzYCi3PUvJv/MphBiVD/8+RPUA14nZKobeFg4N8AcqmovbpcpBDbOSBR/ixwDKW95AhZbwyt6irCTTMmk4zi0l7csNN8+etbKwhUP0XUPi1jSDF9Wil034PtWLfI8wdwNbvCaAyrQHiJTxFOtGdhvgGABD+ZAmLzNrlShpVsxYb4eO5w5FwS19J5K/HCnWaRqIr5b/njKrAAgjGS3eT02/j7FMZBMl2Gj1Gez0ztYByHug==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mHfTW3hgPWNG0Dmze3x2GP18OR4yBlIjNhdQN13rLbI=;
 b=yq6RPreF5K8uH+fgx5TQtYLNTBhJFsInpvh2RdFJ+3Fr+GJVA+CQWPviky85cKnvLEqPNUftwdOP6eBlNK3B2uJtKGONl4HVbWcNkBDOmw+ikMM4Yh6Ez20Hp/fGGeoXaVgUclV2/wALYmCpdY+ScFOV8hStmcolMdSQ9GoMQFfnkiLLh7kioE9Gm8jYXmRiJ045AdUQiPulQrDsynoQKEDNuS6VpyQ6uyy+PZC/97V0Rn6dYhgNOCPos51/PEsjmzyOqa8kPs8tMtO9AVXcP0UPj756z6gd/WW+XclBdXrPhPzXT99jJtR2QPjg1aAGtMe1tR1lTAylmHpZSguzfw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <332a7462-d0cb-154e-415b-e7f40b9b1421@suse.com>
Date: Tue, 5 Sep 2023 18:07:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v3 0/5] ppc: Enable full Xen build
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693590982.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cover.1693590982.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0169.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a0::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBAPR04MB7416:EE_
X-MS-Office365-Filtering-Correlation-Id: ea548520-22e8-44f4-d4d7-08dbae2a38a1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BPpD3lfD8XynkKlRPLrA3vzxSLSBecNthM9xqWsjITlhAstMrP1l4zVtP8nSje6YNp0WZF0zr20CAy2N938oNd7l32j8wjXGwgMR2qiXQvksPWaQNvQkIy6rMPnv49+bm0o4DuV0/+MtDY7l1nusWXuI3oAETXu+n2CDLw46u/ibZqN6h/TvcCo9undz++yATxJawFQyTeirp1dN2i7NcGwsY5K2YhjVqliL1hj2PJfeXz28Q7LvAxx7dnUIC8J62PBQlBVkeqr/8J+Mzz3nSL8ccuyI6na3laA7biIZ2GRDW5xehburknuRGcdCu7qy4fH/pfjh9A0qpDwidC4CCCeugmto5Og1lN7wY8W++TPnJa87pE0fw0kujltErIOzM5Ow5sRM8NMo7PiDEHUX3aEOfvkEXCYOOMJR8tMZYhs0z18w8WLgt+K2JdySFKWieOzzblPiFh7uh0Xd1T0wzaf8dswaO4CnkD2T7TvM/o4YJSf+/mrxoij4yEKmvQW2yPDGO2Wk24MrhiaB8iy2czKWYpSBLvlQYxFxqO3vhzATiYg98h2qPTrAVcao3jgc2jJG6ESHVwuVfhFjxMSEK0HnQMTSeg4gVTUWJYIN9yYE/qSrq3g0fFPFqmKLrceQdqaTRZFBzH9lBL3l2ehYPg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(366004)(39850400004)(346002)(136003)(186009)(1800799009)(451199024)(26005)(6506007)(53546011)(6486002)(6512007)(38100700002)(86362001)(31696002)(36756003)(2616005)(8936002)(966005)(41300700001)(316002)(4326008)(66476007)(6916009)(66556008)(5660300002)(66946007)(31686004)(8676002)(2906002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?N0RSTGJhbjZmaURJWkdzK2M1Rzk4WlQ5OFAvUllIQkh2NUFhaXpLVXBsMjgx?=
 =?utf-8?B?YWVpaENQbTkrOGxyZ3BwZEpsTDBna09pcUVCVDY3VHZ0TG1naGpubG9NOWJP?=
 =?utf-8?B?QkR3VE02VzcwZnV4NEFyQjcxTDBNMGx5UEFJV2hJSWZDK1RORHpxdGIyalF0?=
 =?utf-8?B?TE9JTzV5OTlrV21hSlk4a2RTeWxUK2hnYkdOV0l2aFMvS3ZFT3NvNStlQWx1?=
 =?utf-8?B?RFFYY2hiK1dZOUFBZ3g1VGV3N3gyczJGQmdTZVlSS0VZQ3ZuY2c2eEt4TDFn?=
 =?utf-8?B?Um5VNHRIVk5SeC9pa3hoVUc1UU9RcHM1N3dRUmFHaUtJUjYwdHF5M3dsOGlQ?=
 =?utf-8?B?enNOa2ovVEw0RERlbFpFMzRlV0NCbDQrbm1uU3B3d1grMW1TcXFxeEpySXFs?=
 =?utf-8?B?QkZqenJ4dFl3L25DNXNodmxNMkloRmJBWmtJVjdKenM5b01mVnN2Q1k5L3Nj?=
 =?utf-8?B?emp6TXYxY21WUytza3BmK3FaQXl4Q3p5SlpydHVnL0Q1MSt4ZHNVMUk0eEZC?=
 =?utf-8?B?Q0hQcFFRMklCeEdYQ1ZoaTgySitQdStTNElrZkh0Y1pBVzZoSXFiL0haS1pj?=
 =?utf-8?B?Y0RjdXoyT1FBSkM3VjJFelZsMnFhd3lLOERqRnRuRzltdjNzdTV3aGR6R0dN?=
 =?utf-8?B?S3FvZzFneFdEOEdUdGxKU3h1K1RqWS9Ra3ZQU1BlRUh4UlpSak51TGMrU0Q2?=
 =?utf-8?B?Z01wY2tvS1QyMGV0UFZ2enNyL3NObjVMUDF1cHZpVkZmQmxvRlV3NG9EUlpD?=
 =?utf-8?B?S3IxOGY0cElSRlpQYW55czZGcVpoUUxoYXNhMnRzMEhZZ3ZyelVpVFU1REpR?=
 =?utf-8?B?R0VEajZZNmoremZqc3l0ajQ4OG1heTVpZk1Rd2V2T2VYUnpNRTBRRTBxb1A2?=
 =?utf-8?B?VFR4TkV6akdIbWJ4dU5WQVpNazdleUFNRnBKdnM1MmZ2Tkgra2hTTEJZeWxP?=
 =?utf-8?B?KzlnZmdjQytzMGpGeDNOcVlBVEVzdFRWTm1PRVQwc3V5MXNJUW9HQVE2bUV1?=
 =?utf-8?B?MTRIb3gyb1BNOVdtTXkyYkhhL0dkcUhKUDU3NHlxTndJc0FJRHdWd2E3aFNj?=
 =?utf-8?B?WkQrdDk0QmV0dG1LTy9Cb0xtSnBpUUN0d2J0bVYzQ09uVVUxRm9YZmdWNUxa?=
 =?utf-8?B?ODhXeDl1Qyt2aUVVQ3ViQ09vbFZETmtJK0YwTzAvQ0FwMEtJT3ZFUFM1czdF?=
 =?utf-8?B?eVR6RkMxSWNKYXNPUW9pWjZnR0dmcHVsdENmKzExNjJwY3BjODdURlZPb0xJ?=
 =?utf-8?B?WUdJSzZWeFNvTHkwUHc4OUE1YWJDUGVod1ZKSUl6NHQxVUdJcHU3Y283UUpT?=
 =?utf-8?B?L291RHpuR25jK3I0VlAranV1SU5RVU5OK0lmSWVMM3B2SFYrajJZYXYwMUFy?=
 =?utf-8?B?andqamx4VXBSdHNqbHBGTnM4N2xwcjJaVzNybkJMQWtkUUdTSjRWUnJNM0lN?=
 =?utf-8?B?b1Nobk50Zkh3eU43cStzeHhRbFdGaWI4U2RCYWw5dUp6R2cyYW53bXlCK3dK?=
 =?utf-8?B?Rk9DdTFDbFBuMzM1dUxvMUpUY011OGRWRXFBdWQ0WHFadG92TlphenM2KytJ?=
 =?utf-8?B?RG40d2g3NXJrUExKRnJ4UW9FeDFacmFsV1J4TDBEUmM4bW1MUGFSRC9aS210?=
 =?utf-8?B?SzlSSXVwLytzVTQzT3lORThGLzdPNnFnSi8wMS9iZ0NzWTVoanhXM0k2alpl?=
 =?utf-8?B?T2dTSVl1citEWktobnlFa3FMNkJnWWxFQnZia1I4Y3lGUEpoNVlxc0orbFh3?=
 =?utf-8?B?N0xNbG1yeGlQSlN0Y0p0ajhxaVBia1dIYnUxRmNjakRrT284WFNvRDFob1dX?=
 =?utf-8?B?TlFCTTA1bGYyYUhaQ2JSdmRDQ1lRMkJaRi9OR3F5Z05uOGNnN3hPeEtyNWVu?=
 =?utf-8?B?K1YxWTlGRElndGtmemZHckZMdCtsOU5LNVFjWktlOXNab0JGaHRHQ1ZKekxY?=
 =?utf-8?B?QWxTeUcxMW5RRW91cUdES3FVdFpSMjZNYmR2alpMbXNNRTVnK2JBQ3NqR0xm?=
 =?utf-8?B?MXdITUx5QVVaYmRoVGpmdHh4ZlNHSG15eVhBVTdYZUx0R1VMbDluS0V0RDh5?=
 =?utf-8?B?bmFxdEZHKzhWSFdmY1VRR0RhZTQzQjFPMkVkZXgzTXh1Zk1hL0g2SklWTDFo?=
 =?utf-8?Q?v/U+OKoeV4+0nBwrKrC53alDp?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ea548520-22e8-44f4-d4d7-08dbae2a38a1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Sep 2023 16:07:36.6022
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: sLTHQkW6tgHiwKBsW8yKUJYHf2uZVKvzGMR/Y0URSts+u0k5ygAA2hqNLMiNwwaT1YtYmQrPAVC0v1aEWmXVuA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7416

On 01.09.2023 20:25, Shawn Anastasio wrote:
> Hello all,
> 
> This patch series performs all of the additions necessary to drop the
> build overrides for PPC and enable the full Xen build. Except in cases
> where compatibile implementations already exist (e.g. atomic.h and
> bitops.h), the newly added definitions are simple, unimplemented stubs
> that just call BUG_ON("unimplemented").
> 
> A few miscellaneous changes were also made to non-ppc code as well,
> specifically a few missing header fixes in common.

Nit: This is stale now, isn't it?

But what I really wanted to mention here: Something's odd with how you
sent this series. I received 0, 1, and 3 as one thread, 2 and 5 as
another one, and 4 entirely standalone. The list archive [1] has all of
2, 4, and 5 as standalone mails.

Another thing I wanted to ask: Would it be possible to configure
whatever mail client you use for sending patches to send plain ASCII or
UTF-8 text, not quoted-printable ones? At least for me, so far having
shoveled in most of your patches, that encoding gets in the way of
running a pre-apply-test with plain "patch --dry-run -F0" on all
patches (from a script I use for committing). I can help myself with
plain "git am", but sooner or later some patch will end up having a
collision with something else having gone in, and then I'll need to
manually clean up after the failed / incomplete command.

Jan

[1] https://lists.xen.org/archives/html/xen-devel/2023-09/threads.html


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 16:44:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 16:44:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595795.929413 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdZ9f-0007FN-6e; Tue, 05 Sep 2023 16:43:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595795.929413; Tue, 05 Sep 2023 16:43:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdZ9f-0007FG-40; Tue, 05 Sep 2023 16:43:55 +0000
Received: by outflank-mailman (input) for mailman id 595795;
 Tue, 05 Sep 2023 16:43:53 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdZ9d-0007F3-4Q; Tue, 05 Sep 2023 16:43:53 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdZ9d-0005P9-28; Tue, 05 Sep 2023 16:43:53 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdZ9c-0007Za-Hb; Tue, 05 Sep 2023 16:43:52 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdZ9c-0006o0-Fh; Tue, 05 Sep 2023 16:43:52 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=f+VhXXNhJ7qf3lJNzNyywL0Vmx/t7VY4JTzXKp/X1uc=; b=7D4D2YF/j57RaQx4CTcFUuw2Gg
	mnxrprjmFs0Y0W4SRTvJMEAtYpLSH+qT+LC1X/vZljQHg2P21ZWdDnBtAQxp5EWxs/c8GdvyJg2fn
	xIZ2JiO4ioGkprDwrI91Al2T/P1lJTZkhldDhtiqMUJ0mNAnlSf1YED7ciAW+NvAIDU0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182629-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 182629: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=e95b81c2fd62d700f697349964b8b2f63e44c64b
X-Osstest-Versions-That:
    libvirt=8a0319fc7d38afdf0d7ea5ff5b3a4c221ef66f1b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 05 Sep 2023 16:43:52 +0000

flight 182629 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182629/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182611
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182611
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182611
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              e95b81c2fd62d700f697349964b8b2f63e44c64b
baseline version:
 libvirt              8a0319fc7d38afdf0d7ea5ff5b3a4c221ef66f1b

Last test of basis   182611  2023-09-02 04:21:55 Z    3 days
Testing same since   182629  2023-09-05 04:18:53 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Martin Kletzander <mkletzan@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Peter Krempa <pkrempa@redhat.com>
  김인수 <simmon@nplob.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   8a0319fc7d..e95b81c2fd  e95b81c2fd62d700f697349964b8b2f63e44c64b -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 17:05:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 17:05:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595805.929423 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdZUm-0002ky-0D; Tue, 05 Sep 2023 17:05:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595805.929423; Tue, 05 Sep 2023 17:05:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdZUl-0002kr-Tt; Tue, 05 Sep 2023 17:05:43 +0000
Received: by outflank-mailman (input) for mailman id 595805;
 Tue, 05 Sep 2023 17:05:42 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdZUk-0002kh-HS; Tue, 05 Sep 2023 17:05:42 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdZUk-0005mo-ED; Tue, 05 Sep 2023 17:05:42 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdZUk-0000NE-1a; Tue, 05 Sep 2023 17:05:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdZUk-0000H2-16; Tue, 05 Sep 2023 17:05:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Y7YQCi3HiiqKZaQMhhdz76Nyy53nQ9u6Wy1ipLqjDgQ=; b=CxaQfO/BIV1QPZ5OmrDdcjBtt8
	stoKMC/Nf8LlYiTuWpPEpmNO/Uaq8T4Q9z6cQD6DE8ircOM58grkNL8LUsSR5Q3kW21Dzz+AziFl2
	QGLMDH2P+2Ru3Fx1sihZfGRWDWm5NbbCP4idBmQe5tO/VNZGRBJn3p0/c3EWtvTwW2w8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182635-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182635: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=9a216e92de9f9011097e4f1fb55ff67ba0a21704
X-Osstest-Versions-That:
    xen=74b725a64d800822e007e0f449317ff0a8249971
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 05 Sep 2023 17:05:42 +0000

flight 182635 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182635/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  9a216e92de9f9011097e4f1fb55ff67ba0a21704
baseline version:
 xen                  74b725a64d800822e007e0f449317ff0a8249971

Last test of basis   182631  2023-09-05 08:00:26 Z    0 days
Testing same since   182635  2023-09-05 13:00:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bertrand Marquis <bertrand.marquis@arm.com>
  Julien Grall <jgrall@amazon.com>
  Stefano Stabellini <stefano.stabellini@amd.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   74b725a64d..9a216e92de  9a216e92de9f9011097e4f1fb55ff67ba0a21704 -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 19:19:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 19:19:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595819.929433 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdbaK-0002hg-CP; Tue, 05 Sep 2023 19:19:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595819.929433; Tue, 05 Sep 2023 19:19:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdbaK-0002hZ-9d; Tue, 05 Sep 2023 19:19:36 +0000
Received: by outflank-mailman (input) for mailman id 595819;
 Tue, 05 Sep 2023 19:19:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rZRj=EV=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qdbaJ-0002hT-9h
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 19:19:35 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 23056259-4c21-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 21:19:31 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 4335E828588D;
 Tue,  5 Sep 2023 14:19:29 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id vGVnCSTeHm2g; Tue,  5 Sep 2023 14:19:27 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id A09D5828589F;
 Tue,  5 Sep 2023 14:19:27 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id b8Q-ddKtp9kd; Tue,  5 Sep 2023 14:19:27 -0500 (CDT)
Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 322AC828588D;
 Tue,  5 Sep 2023 14:19:27 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 23056259-4c21-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com A09D5828589F
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693941567; bh=nl4E7DZVQLWnURdI6KAIDmOWsKZeIcwUKfpaDJdm+0g=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=WH68cvnuXcioT40XevLtFBQFbTb2DErYzC/8rTFmObBGwwkKxuFMQxj/Cs89Zubix
	 d2wUAdZci4YgQ4F8AGEhztuFS9WZ/4hzEINITMT8xOs/oCDuzYY3JQwXR0mE9xzOCo
	 qWni2c4Qkie8bcStkDqwbbdIXv8d62bcU+H4NOns=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <df8de9f5-f1d2-61a6-7bc3-e74d5a99270a@raptorengineering.com>
Date: Tue, 5 Sep 2023 14:19:26 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v4 3/3] xen/ppc: Implement initial Radix MMU support
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.1692744718.git.sanastasio@raptorengineering.com>
 <7cebc2962002c36ecfe712bf1bcb251e083910b8.1692744718.git.sanastasio@raptorengineering.com>
 <45081782-69cb-1b8e-7925-fd9fb4e3d0c4@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <45081782-69cb-1b8e-7925-fd9fb4e3d0c4@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/5/23 5:01 AM, Jan Beulich wrote:
> On 23.08.2023 01:03, Shawn Anastasio wrote:
>> Add code to construct early identity-mapped page tables as well as the
>> required process and partition tables to enable the MMU.
>>
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> 
> Having committed this, something broke in CI. As per the artifacts of
> https://gitlab.com/xen-project/xen/-/jobs/5017915681 ...
> 
>> +void __init setup_initial_pagetables(void)
>> +{
>> +    struct lvl1_pd *root = lvl1_pd_pool_alloc();
>> +    unsigned long lpcr;
>> +
>> +    setup_initial_mapping(root, (vaddr_t)_start, (vaddr_t)_end, __pa(_start));
>> +
>> +    /* Enable Radix mode in LPCR */
>> +    lpcr = mfspr(SPRN_LPCR);
>> +    mtspr(SPRN_LPCR, lpcr | LPCR_UPRT | LPCR_HR);
>> +    early_printk("Enabled radix in LPCR\n");
> 
> ... this is the first message missing; setup_initial_mapping() appears
> to be completing fine.

Ah, yes, this is a side-effect of the CI pipeline using the pseries
machine type instead of PowerNV. Setting the LPCR directly as we're
doing here has to be done via a hypercall on the paravirtualized pseries
platform.

I've given it some thought and I think the best path forward would be to
just drop pseries support. I had originally targeted it for the early
bringup patches since it has historically been much better supported by
QEMU, but that's no longer the case with QEMU git. Outside of testing I
don't think there's much practical value in continuing to support
pseries.

I'll prepare a series to drop pseries support and update the CI
container to use the PowerNV machine type instead, if there are no
objections.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 20:17:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 20:17:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595825.929442 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdcUL-0001ml-GM; Tue, 05 Sep 2023 20:17:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595825.929442; Tue, 05 Sep 2023 20:17:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdcUL-0001me-Dp; Tue, 05 Sep 2023 20:17:29 +0000
Received: by outflank-mailman (input) for mailman id 595825;
 Tue, 05 Sep 2023 20:17:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=91v+=EV=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qdcUK-0001mY-2W
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 20:17:28 +0000
Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com
 [2a00:1450:4864:20::430])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3a859cf0-4c29-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 22:17:25 +0200 (CEST)
Received: by mail-wr1-x430.google.com with SMTP id
 ffacd0b85a97d-307d20548adso2471018f8f.0
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 13:17:25 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (cpc92302-cmbg19-2-0-cust781.5-4.cable.virginm.net. [82.1.211.14])
 by smtp.gmail.com with ESMTPSA id
 g7-20020a5d46c7000000b0031accc7228asm18276300wrs.34.2023.09.05.13.17.24
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 05 Sep 2023 13:17:24 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3a859cf0-4c29-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1693945045; x=1694549845; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=/KfqP95JahvULL+583DSkWljDAxm9MZrxXWX/SVz384=;
        b=gYpQcTWLk+LVhj104NK+S4F/M4lnzrzRt7Njio+3M71rVMYo7vFH15x4Eq77dKcpIS
         a3z/H5KIGiSH4KcrTpnTYbIzfcSbEGzud9AfloTS8bNO2wkXzR2O/UpMrzZWBhtwMGgr
         VGDwPwpTvFMIqlvDBGXzK7LJCNX5/rmsSObDE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693945045; x=1694549845;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=/KfqP95JahvULL+583DSkWljDAxm9MZrxXWX/SVz384=;
        b=KzZcwpIHaytETluh9WbJNWMcQxudfs2h1gYq/ZGWDAEBr7rxp1Rkc+lNEKO5jtbpLL
         0eDcDDvksyn12N17WbR/2NDZAFrwOlXneKhD/w/9BIumD8vGjPdpkKU+/kZqbmuuquqp
         LNh/sFlCNZRbZhymFwYv+MzmTLL5DakxNkt8Q+PmMsgbz6ZU0/lVQ1/pLrYRrzIKqlxo
         +jBKOTkNR0KBt9JhMAAmO84UDL41fRES0SkgHcHoK3rWknl4mKYrkyFBZEimCEDdzfeQ
         QmC2LU2ppUQrWQEGNCvw5gH6ueRu2FDMwn9D+yvd2IFjrZOuRbtml/zHle3HUZ+gFLt4
         b6Rw==
X-Gm-Message-State: AOJu0YyUgHduQh+qEjNOyBtDZMtA/Ni2pIKCBF4qAIQ+lsw2l3WSJa+m
	DQIgv86fekFfvmyiVaKVR5uZep+/oi/YdqBRXcA=
X-Google-Smtp-Source: AGHT+IFBW8XfZ2BPrde/X1D0kHod3Df3PZ/NfMGOJjnw2za8CXKCiQiEHC2toZNLQJs/TIEeFKem7w==
X-Received: by 2002:adf:ed4e:0:b0:31a:dbd8:95d4 with SMTP id u14-20020adfed4e000000b0031adbd895d4mr650990wro.12.1693945044884;
        Tue, 05 Sep 2023 13:17:24 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Javi Merino <javi.merino@cloud.com>
Subject: [PATCH v2] tools/misc/xencov_split: Add python 3 compatibility
Date: Tue,  5 Sep 2023 21:15:37 +0100
Message-ID: <20230905201653.98425-1-javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Closes #154

Signed-off-by: Javi Merino <javi.merino@cloud.com>
---

Changes since v1:
  - Don't touch the shebang.

 tools/misc/xencov_split | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/tools/misc/xencov_split b/tools/misc/xencov_split
index e4f68ebb6e..a921e8ef44 100755
--- a/tools/misc/xencov_split
+++ b/tools/misc/xencov_split
@@ -1,5 +1,7 @@
 #!/usr/bin/env python
 
+from __future__ import print_function
+from builtins import str
 import sys, os, os.path as path, struct, errno
 from optparse import OptionParser
 
@@ -16,7 +18,7 @@ def xencov_split(opts):
 
     input_file = opts.args[0]
 
-    f = open(input_file)
+    f = open(input_file, "rb")
 
     # Magic number
     s = f.read(4)
@@ -31,9 +33,10 @@ def xencov_split(opts):
     f.close()
 
     while content:
-        off = content.find('\x00')
+        off = content.find(b'\x00')
         fmt = bo_prefix + str(off) + 's'
         fn, = struct.unpack_from(fmt, content)
+        fn = fn.decode('utf-8')
         content = content[off+1:]
 
         fmt = bo_prefix + 'I'
@@ -51,14 +54,14 @@ def xencov_split(opts):
         dir = opts.output_dir + path.dirname(fn)
         try:
             os.makedirs(dir)
-        except OSError, e:
+        except OSError as e:
             if e.errno == errno.EEXIST and os.path.isdir(dir):
                 pass
             else:
                 raise
 
         full_path = dir + '/' + path.basename(fn)
-        f = open(full_path, "w")
+        f = open(full_path, "wb")
         f.write(payload)
         f.close()
 
@@ -89,8 +92,8 @@ def main():
 if __name__ == "__main__":
     try:
         sys.exit(main())
-    except Exception, e:
-        print >>sys.stderr, "Error:", e
+    except Exception as e:
+        print("Error:", e, file=sys.stderr)
         sys.exit(1)
     except KeyboardInterrupt:
         sys.exit(1)
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 21:02:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 21:02:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595832.929453 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qddBa-0008D0-Rt; Tue, 05 Sep 2023 21:02:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595832.929453; Tue, 05 Sep 2023 21:02:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qddBa-0008Ct-Or; Tue, 05 Sep 2023 21:02:10 +0000
Received: by outflank-mailman (input) for mailman id 595832;
 Tue, 05 Sep 2023 21:02:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rZRj=EV=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qddBZ-0008Cn-1R
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 21:02:09 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 780d212b-4c2f-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 23:02:06 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 1F06D8285BDC;
 Tue,  5 Sep 2023 16:02:05 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 8W3hj5_Mi9xr; Tue,  5 Sep 2023 16:02:04 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id D12D88285BE0;
 Tue,  5 Sep 2023 16:02:03 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id V-cdS7kxvMfX; Tue,  5 Sep 2023 16:02:03 -0500 (CDT)
Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 88D098285BDC;
 Tue,  5 Sep 2023 16:02:03 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 780d212b-4c2f-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com D12D88285BE0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693947723; bh=Lmp8MHSPykR1AvCjAK+dRBjgHG6gxgp1d+Fhh3mBe2E=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=eoMy3laRiAXJKGS2Mumcs9ydos1V4t53iXQfYQe1C/isAjRhatAkuFvfAD15vFVgc
	 4zUoi1Y87wlURpm1dUgxu9cH/ciuGi2a0Oz0PGDjHoFwuGxoo353ZaxtTYhxPFeBJY
	 jxZQ9+K3AXkokVp/O2PxyhhY63RhsnY/pg41fNFQ=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <7f0582cf-e78b-a62d-3f1e-b446acc82cf6@raptorengineering.com>
Date: Tue, 5 Sep 2023 16:02:03 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v3 0/5] ppc: Enable full Xen build
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693590982.git.sanastasio@raptorengineering.com>
 <332a7462-d0cb-154e-415b-e7f40b9b1421@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <332a7462-d0cb-154e-415b-e7f40b9b1421@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/5/23 11:07 AM, Jan Beulich wrote:
> On 01.09.2023 20:25, Shawn Anastasio wrote:
>> Hello all,
>>
>> This patch series performs all of the additions necessary to drop the
>> build overrides for PPC and enable the full Xen build. Except in cases
>> where compatibile implementations already exist (e.g. atomic.h and
>> bitops.h), the newly added definitions are simple, unimplemented stubs
>> that just call BUG_ON("unimplemented").
>>
>> A few miscellaneous changes were also made to non-ppc code as well,
>> specifically a few missing header fixes in common.
> 
> Nit: This is stale now, isn't it?

Yes, I'll drop that sentence.

> But what I really wanted to mention here: Something's odd with how you
> sent this series. I received 0, 1, and 3 as one thread, 2 and 5 as
> another one, and 4 entirely standalone. The list archive [1] has all of
> 2, 4, and 5 as standalone mails.
>

I'm also seeing this in my own inbox -- I'm not sure what happened here
since I used the same exact git send-email invocation that I used last
time.

> Another thing I wanted to ask: Would it be possible to configure
> whatever mail client you use for sending patches to send plain ASCII or
> UTF-8 text, not quoted-printable ones? At least for me, so far having
> shoveled in most of your patches, that encoding gets in the way of
> running a pre-apply-test with plain "patch --dry-run -F0" on all
> patches (from a script I use for committing). I can help myself with
> plain "git am", but sooner or later some patch will end up having a
> collision with something else having gone in, and then I'll need to
> manually clean up after the failed / incomplete command.
>

If I'm understanding correctly, it looks like git send-email's
--transfer-encoding=8bit [1] should do what you're asking. I'll do this
for future submissions.

[1] https://git-scm.com/docs/git-send-email

> Jan

Thanks,
Shawn



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 21:47:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 21:47:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595839.929463 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qddt2-000561-5j; Tue, 05 Sep 2023 21:47:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595839.929463; Tue, 05 Sep 2023 21:47:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qddt2-00055u-28; Tue, 05 Sep 2023 21:47:04 +0000
Received: by outflank-mailman (input) for mailman id 595839;
 Tue, 05 Sep 2023 21:47:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rZRj=EV=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qddt1-00055j-HD
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 21:47:03 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bea37307-4c35-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 23:47:01 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id BEAFF8285A0F;
 Tue,  5 Sep 2023 16:47:00 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id Y4O2C3U_i-oP; Tue,  5 Sep 2023 16:46:59 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id B5CA08285BE0;
 Tue,  5 Sep 2023 16:46:59 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 4HC6_Dc8Gkyq; Tue,  5 Sep 2023 16:46:59 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 1423A8285BDA;
 Tue,  5 Sep 2023 16:46:59 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bea37307-4c35-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com B5CA08285BE0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693950419; bh=HPoBwSCbQLNGCbqSv6oxH+y3tTtdXTvzN64OUdvDgbU=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=ZHsJVib6nUh8BY59zfvXiEuqFmtiKwGyH4IKX8iX81S1D6+fbEgkNgDvyIOUVWQDw
	 g96gF/5b2/cGkfI5mSh6shpTqnNKPrBB2NdC7JGSIC+jZbfUeClexlCaByeryjTlrE
	 mH39Su9AMnhatHn7ypgxmreuoDuLhjrTlUhpftrA=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH 1/2] automation: Switch ppc64le tests to PowerNV machine type
Date: Tue,  5 Sep 2023 16:46:49 -0500
Message-Id: <50693d0763b656bad9d799313c8f12e736bb68ef.1693949731.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1693949731.git.sanastasio@raptorengineering.com>
References: <cover.1693949731.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

Run ppc64le tests with the PowerNV machine type (bare metal) instead of
the paravirtualized pseries machine. This requires a more modern version
of QEMU than is present in debian bullseye's repository, so update the
dockerfile to build QEMU from source.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
 .../build/debian/bullseye-ppc64le.dockerfile  | 37 ++++++++++++++++++-
 automation/gitlab-ci/test.yaml                |  2 +-
 2 files changed, 36 insertions(+), 3 deletions(-)

diff --git a/automation/build/debian/bullseye-ppc64le.dockerfile b/automa=
tion/build/debian/bullseye-ppc64le.dockerfile
index 8fad26e903..15827bbcf4 100644
--- a/automation/build/debian/bullseye-ppc64le.dockerfile
+++ b/automation/build/debian/bullseye-ppc64le.dockerfile
@@ -1,4 +1,36 @@
+FROM debian:bullseye-slim AS builder
+
+ENV DEBIAN_FRONTEND=3Dnoninteractive
+ENV QEMU_TAG=3Dstable-8.1
+ENV USER root
+
+# dependencies for qemu build
+RUN apt-get update && \
+    apt-get --quiet --yes install \
+        git \
+        build-essential \
+        python3-minimal \
+        python3-elementpath \
+        python3-pip \
+        ninja-build \
+        libglib2.0-dev \
+        libpixman-1-dev
+
+RUN mkdir /build
+WORKDIR /build
+
+# QEMU build from git
+RUN git clone --depth 1 --branch "${QEMU_TAG}" https://github.com/qemu/q=
emu && \
+    mkdir qemu/build && \
+    cd qemu/build && \
+    ../configure --target-list=3Dppc64-softmmu && \
+    ninja && \
+    ninja install
+
 FROM debian:bullseye-slim
+COPY --from=3Dbuilder /usr/local/bin/qemu-system-ppc64 /usr/local/bin/qe=
mu-system-ppc64
+COPY --from=3Dbuilder /usr/local/share/qemu/skiboot.lid /usr/local/share=
/qemu/skiboot.lid
+
 LABEL maintainer.name=3D"The Xen Project" \
       maintainer.email=3D"xen-devel@lists.xenproject.org"
=20
@@ -22,8 +54,9 @@ RUN apt-get update && \
         gcc-powerpc64le-linux-gnu \
         make \
         python3-minimal \
-        # for test phase
-        qemu-system-ppc \
+        # QEMU runtime dependencies
+        libglib2.0-0 \
+        libpixman-1-0 \
         && \
         apt-get autoremove -y && \
         apt-get clean && \
diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.y=
aml
index 9aa8deabea..9b26ccd907 100644
--- a/automation/gitlab-ci/test.yaml
+++ b/automation/gitlab-ci/test.yaml
@@ -457,6 +457,6 @@ qemu-smoke-riscv64-gcc:
 qemu-smoke-ppc64le-pseries-gcc:
   extends: .qemu-ppc64le
   script:
-    - ./automation/scripts/qemu-smoke-ppc64le.sh pseries-5.2 2>&1 | tee =
${LOGFILE}
+    - ./automation/scripts/qemu-smoke-ppc64le.sh powernv9 2>&1 | tee ${L=
OGFILE}
   needs:
     - debian-bullseye-gcc-ppc64le-debug
--=20
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 21:47:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 21:47:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595841.929478 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qddt3-0005Oh-KU; Tue, 05 Sep 2023 21:47:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595841.929478; Tue, 05 Sep 2023 21:47:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qddt3-0005Nj-HO; Tue, 05 Sep 2023 21:47:05 +0000
Received: by outflank-mailman (input) for mailman id 595841;
 Tue, 05 Sep 2023 21:47:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rZRj=EV=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qddt2-00055o-LN
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 21:47:04 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id beea7590-4c35-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 23:47:02 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 46E1A8285BE0;
 Tue,  5 Sep 2023 16:47:01 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id vjhmunKp1U2C; Tue,  5 Sep 2023 16:46:59 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id D2B468285C00;
 Tue,  5 Sep 2023 16:46:59 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id jL37CL8bUDtT; Tue,  5 Sep 2023 16:46:59 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 8062F828594E;
 Tue,  5 Sep 2023 16:46:59 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: beea7590-4c35-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com D2B468285C00
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693950419; bh=DW8PEudLI4zhj2Zf+H/OT8tQEwXWRs4S/82bL1NuRGo=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=d+OgDkui0toEh4PtuSXqfkTsgmE5xi6YFiMpMeUqhN9rZ8r0Oy2P7oRSX5/S7xw+/
	 D+xN/CQOWVHhwFI1kxrvkfuMAQNReVXh+e2uSf3U85JWi2V8uPxb6fzAoc/oLWjvVO
	 7TNHqs5j+nr9PAIVip7TsVo36rJMLsnt3Gy+IC10=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH 2/2] xen/ppc: Drop support for pseries/OpenFirmware
Date: Tue,  5 Sep 2023 16:46:50 -0500
Message-Id: <8c09322cff220d4d102d50b2fc45e9290106d109.1693949731.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1693949731.git.sanastasio@raptorengineering.com>
References: <cover.1693949731.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

Since QEMU's PowerNV support has matured to the point where it is
now suitable for development, drop support for booting on the
paravirtualized pseries machine type and its associated interfaces.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
 xen/arch/ppc/Makefile           |   1 -
 xen/arch/ppc/boot-of.c          | 113 --------------------------------
 xen/arch/ppc/include/asm/boot.h |  19 ------
 xen/arch/ppc/ppc64/Makefile     |   1 -
 xen/arch/ppc/ppc64/of-call.S    |  83 -----------------------
 xen/arch/ppc/setup.c            |  11 +---
 6 files changed, 3 insertions(+), 225 deletions(-)
 delete mode 100644 xen/arch/ppc/boot-of.c
 delete mode 100644 xen/arch/ppc/ppc64/of-call.S

diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile
index a059ac4c0a..b3205b8f7a 100644
--- a/xen/arch/ppc/Makefile
+++ b/xen/arch/ppc/Makefile
@@ -1,6 +1,5 @@
 obj-$(CONFIG_PPC64) +=3D ppc64/
=20
-obj-y +=3D boot-of.init.o
 obj-$(CONFIG_EARLY_PRINTK) +=3D early_printk.init.o
 obj-y +=3D mm-radix.o
 obj-y +=3D opal.o
diff --git a/xen/arch/ppc/boot-of.c b/xen/arch/ppc/boot-of.c
deleted file mode 100644
index d6755ccc8e..0000000000
--- a/xen/arch/ppc/boot-of.c
+++ /dev/null
@@ -1,113 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-or-later */
-/*
- * This file was derived from Xen 3.2's xen/arch/powerpc/boot_of.c,
- * originally licensed under GPL version 2 or later.
- *
- * Copyright IBM Corp. 2005, 2006, 2007
- * Copyright Raptor Engineering, LLC
- *
- * Authors: Jimi Xenidis <jimix@watson.ibm.com>
- *          Hollis Blanchard <hollisb@us.ibm.com>
- *          Shawn Anastasio <sanastasio@raptorengineering.com>
- */
-
-#include <xen/init.h>
-#include <xen/macros.h>
-#include <xen/stdarg.h>
-#include <xen/types.h>
-#include <asm/boot.h>
-#include <asm/byteorder.h>
-#include <asm/early_printk.h>
-
-/*
- * The Open Firmware client interface is called in 32-bit mode with the =
MMU off,
- * so any addresses passed to it must be physical addresses under 4GB.
- *
- * Since the client interface is only used during early boot before the =
MMU is on
- * and Xen itself was loaded by Open Firmware (and therefore resides bel=
ow 4GB),
- * we can achieve the desired result with a simple cast to uint32_t.
- */
-#define ADDR(x) ((uint32_t)(unsigned long)(x))
-
-/* OF entrypoint*/
-static unsigned long __initdata of_vec;
-
-static int __initdata of_out;
-
-static int __init of_call(const char *service, uint32_t nargs, uint32_t =
nrets,
-                          int32_t rets[], ...)
-{
-    int rc;
-    va_list args;
-    unsigned int i;
-    struct of_service s;
-
-    s.ofs_service =3D cpu_to_be32(ADDR(service));
-    s.ofs_nargs =3D cpu_to_be32(nargs);
-    s.ofs_nrets =3D cpu_to_be32(nrets);
-
-    /* Copy all the params into the args array */
-    va_start(args, rets);
-
-    for ( i =3D 0; i < nargs; i++ )
-        s.ofs_args[i] =3D cpu_to_be32(va_arg(args, uint32_t));
-
-    va_end(args);
-
-    rc =3D enter_of(&s, of_vec);
-
-    /* Copy all return values to the output rets array */
-    for ( i =3D 0; i < nrets; i++ )
-        rets[i] =3D be32_to_cpu(s.ofs_args[i + nargs]);
-
-    return rc;
-}
-
-static int __init of_finddevice(const char *devspec)
-{
-    int32_t rets[1] =3D { OF_FAILURE };
-
-    of_call("finddevice", 1, ARRAY_SIZE(rets), rets, ADDR(devspec));
-    return rets[0];
-}
-
-static int __init of_getprop(int ph, const char *name, void *buf, uint32=
_t buflen)
-{
-    int32_t rets[1] =3D { OF_FAILURE };
-
-    of_call("getprop", 4, ARRAY_SIZE(rets), rets, ph, ADDR(name), ADDR(b=
uf),
-            buflen);
-    return rets[0];
-}
-
-int __init of_write(int ih, const char *addr, uint32_t len)
-{
-    int32_t rets[1] =3D { OF_FAILURE };
-
-    of_call("write", 3, ARRAY_SIZE(rets), rets, ih, ADDR(addr), len);
-    return rets[0];
-}
-
-static void __init of_putchar(char c)
-{
-    if ( c =3D=3D '\n' )
-    {
-        char buf =3D '\r';
-        of_write(of_out, &buf, 1);
-    }
-    of_write(of_out, &c, 1);
-}
-
-void __init boot_of_init(unsigned long vec)
-{
-    int bof_chosen;
-
-    of_vec =3D vec;
-
-    /* Get a handle to the default console */
-    bof_chosen =3D of_finddevice("/chosen");
-    of_getprop(bof_chosen, "stdout", &of_out, sizeof(of_out));
-    of_out =3D be32_to_cpu(of_out);
-
-    early_printk_init(of_putchar);
-}
diff --git a/xen/arch/ppc/include/asm/boot.h b/xen/arch/ppc/include/asm/b=
oot.h
index 296539cd9e..d62c3ff6e0 100644
--- a/xen/arch/ppc/include/asm/boot.h
+++ b/xen/arch/ppc/include/asm/boot.h
@@ -4,25 +4,6 @@
=20
 #include <xen/types.h>
=20
-/*
- * OpenFirmware boot interfaces
- */
-
-enum {
-    OF_FAILURE =3D -1,
-    OF_SUCCESS =3D 0,
-};
-
-struct of_service {
-    __be32 ofs_service;
-    __be32 ofs_nargs;
-    __be32 ofs_nrets;
-    __be32 ofs_args[10];
-};
-
-int enter_of(struct of_service *args, unsigned long entry);
-void boot_of_init(unsigned long vec);
-
 /*
  * OPAL boot interfaces
  */
diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile
index b9a91dc15f..5b88355bb2 100644
--- a/xen/arch/ppc/ppc64/Makefile
+++ b/xen/arch/ppc/ppc64/Makefile
@@ -1,3 +1,2 @@
 obj-y +=3D head.o
-obj-y +=3D of-call.o
 obj-y +=3D opal-calls.o
diff --git a/xen/arch/ppc/ppc64/of-call.S b/xen/arch/ppc/ppc64/of-call.S
deleted file mode 100644
index 2a2e308f6b..0000000000
--- a/xen/arch/ppc/ppc64/of-call.S
+++ /dev/null
@@ -1,83 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-or-later */
-/*
- * Adapted from Linux's arch/powerpc/kernel/entry_64.S, with the
- * following copyright notice:
- *
- *  PowerPC version
- *    Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org)
- *  Rewritten by Cort Dougan (cort@cs.nmt.edu) for PReP
- *    Copyright (C) 1996 Cort Dougan <cort@cs.nmt.edu>
- *  Adapted for Power Macintosh by Paul Mackerras.
- *  Low-level exception handlers and MMU support
- *  rewritten by Paul Mackerras.
- *    Copyright (C) 1996 Paul Mackerras.
- *  MPC8xx modifications Copyright (C) 1997 Dan Malek (dmalek@jlc.net).
- */
-
-#include <asm/asm-offsets.h>
-#include <asm/asm-defns.h>
-#include <asm/msr.h>
-
-/* size of minimum stack frame that can hold an entire cpu_user_regs str=
uct */
-#define STACK_SWITCH_FRAME_SIZE UREGS_sizeof
-
-    .section .init.text, "ax", @progbits
-
-ENTRY(enter_of)
-    mflr    %r0
-    std     %r0, 16(%r1)
-    stdu    %r1, -STACK_SWITCH_FRAME_SIZE(%r1) /* Save SP and create sta=
ck space */
-
-    /*
-     * Because PROM is running in 32b mode, it clobbers the high order h=
alf
-     * of all registers that it saves.  We therefore save those register=
s
-     * PROM might touch to the stack.  (%r0, %r3-%r13 are caller saved)
-     */
-    SAVE_GPR(2, %r1)
-    SAVE_GPR(13, %r1)
-    SAVE_NVGPRS(%r1)
-    mfcr    %r10
-    mfmsr   %r11
-    std     %r10, UREGS_cr(%r1)
-    std     %r11, UREGS_msr(%r1)
-
-    /* Put PROM address in SRR0 */
-    mtsrr0  %r4
-
-    /* Setup our trampoline return addr in LR */
-    bcl     20, 31, .+4
-0:  mflr    %r4
-    addi    %r4, %r4, 1f - 0b
-    mtlr    %r4
-
-    /* Prepare a 32-bit mode big endian MSR */
-    LOAD_IMM64(%r12, MSR_SF | MSR_LE)
-    andc    %r11, %r11, %r12
-    mtsrr1  %r11
-    rfid
-
-1:  /* Return from OF */
-    FIXUP_ENDIAN
-
-    /* Just make sure that %r1 top 32 bits didn't get corrupt by OF */
-    rldicl  %r1, %r1, 0, 32
-
-    /* Restore the MSR (back to 64 bits) */
-    ld      %r0, UREGS_msr(%r1)
-    mtmsrd  %r0
-    isync
-
-    /* Restore other registers */
-    REST_GPR(2, %r1)
-    REST_GPR(13, %r1)
-    REST_NVGPRS(%r1)
-    ld      %r4, UREGS_cr(%r1)
-    mtcr    %r4
-
-    addi    %r1, %r1, STACK_SWITCH_FRAME_SIZE
-    ld      %r0, 16(%r1)
-    mtlr    %r0
-    blr
-
-    .size enter_of, . - enter_of
-    .type enter_of, %function
diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c
index 0106e9c9da..3fc7705d9b 100644
--- a/xen/arch/ppc/setup.c
+++ b/xen/arch/ppc/setup.c
@@ -14,17 +14,12 @@ void __init noreturn start_xen(unsigned long r3, unsi=
gned long r4,
 {
     if ( r5 )
     {
-        /* OpenFirmware boot protocol */
-        boot_of_init(r5);
+        /* Unsupported OpenFirmware boot protocol */
+        __builtin_trap();
     }
     else
     {
-        /*
-         * kexec boot protocol
-         *
-         * TODO: This currently assumes an OPAL/PowerNV system, but it's=
 also
-         * possible to be kexec'd on an OF system.
-         */
+        /* kexec boot protocol */
         boot_opal_init((void *)r3);
     }
=20
--=20
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 21:47:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 21:47:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595840.929473 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qddt3-0005Ku-CQ; Tue, 05 Sep 2023 21:47:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595840.929473; Tue, 05 Sep 2023 21:47:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qddt3-0005Kn-97; Tue, 05 Sep 2023 21:47:05 +0000
Received: by outflank-mailman (input) for mailman id 595840;
 Tue, 05 Sep 2023 21:47:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rZRj=EV=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qddt1-00055o-Vh
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 21:47:03 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id be74d2e3-4c35-11ee-9b0d-b553b5be7939;
 Tue, 05 Sep 2023 23:47:01 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 21CA3828594E;
 Tue,  5 Sep 2023 16:47:00 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 44OJQRfMxJsK; Tue,  5 Sep 2023 16:46:59 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 0AE408285A0F;
 Tue,  5 Sep 2023 16:46:59 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id lWkGi50jjqcD; Tue,  5 Sep 2023 16:46:58 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 6F2AA828594E;
 Tue,  5 Sep 2023 16:46:58 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: be74d2e3-4c35-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 0AE408285A0F
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693950419; bh=VBTFxnUIx5sJRKdW6+PlziDn8S/ThoaIwZyWuny0Llw=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=eRcF/ZGWZB3eBtpgtWQ8ctbamafU2wqCSEAg2aHs35rc6Vce0Two3gzpuGEvUXDNW
	 apKOnmecN9euDYyg2HE2PFU2Q+7rwhWThP4jEn/FR5Ge4BMD1KKxKx0gwLnsyxOEcc
	 RRwOzTLKbiGlFr1Vhv7VFowm4Dyp7s14ThNS1w3Y=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH 0/2] ppc: Drop support for QEMU pseries
Date: Tue,  5 Sep 2023 16:46:48 -0500
Message-Id: <cover.1693949731.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

Hello all,

This small series drops support for the QEMU paravirtualized pseries
machine type in favor of the bare metal PowerNV platform.

pseries was originally targeted for initial bringup since it has
historically been much better supported by QEMU, but PowerNV support in
QEMU has recently developed to the point where this is no longer a
concern.  Since I can think of very little practical use for running Xen
under pseries, and supporting it requires non-trivial duplication of
effort, drop support for it entirely.

This also requires a change to the ppc64le CI dockerfile to build a
newer version of QEMU than is available in the bullseye repository.

Thanks,
Shawn

Shawn Anastasio (2):
  automation: Switch ppc64le tests to PowerNV machine type
  xen/ppc: Drop support for pseries/OpenFirmware

 .../build/debian/bullseye-ppc64le.dockerfile  |  37 +++++-
 automation/gitlab-ci/test.yaml                |   2 +-
 xen/arch/ppc/Makefile                         |   1 -
 xen/arch/ppc/boot-of.c                        | 113 ------------------
 xen/arch/ppc/include/asm/boot.h               |  19 ---
 xen/arch/ppc/ppc64/Makefile                   |   1 -
 xen/arch/ppc/ppc64/of-call.S                  |  83 -------------
 xen/arch/ppc/setup.c                          |  11 +-
 8 files changed, 39 insertions(+), 228 deletions(-)
 delete mode 100644 xen/arch/ppc/boot-of.c
 delete mode 100644 xen/arch/ppc/ppc64/of-call.S

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 05 21:58:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 21:58:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595863.929493 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qde3z-0008Mj-Rq; Tue, 05 Sep 2023 21:58:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595863.929493; Tue, 05 Sep 2023 21:58:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qde3z-0008Mc-PD; Tue, 05 Sep 2023 21:58:23 +0000
Received: by outflank-mailman (input) for mailman id 595863;
 Tue, 05 Sep 2023 21:58:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rZRj=EV=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qde3y-0008MU-Gs
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 21:58:22 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 53bdf52b-4c37-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 23:58:21 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 373C6828589F;
 Tue,  5 Sep 2023 16:58:20 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id kBsS9qQE-Whb; Tue,  5 Sep 2023 16:58:19 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 678C68285BDA;
 Tue,  5 Sep 2023 16:58:19 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id eCbTsi8njBLC; Tue,  5 Sep 2023 16:58:19 -0500 (CDT)
Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id F0093828589F;
 Tue,  5 Sep 2023 16:58:18 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 53bdf52b-4c37-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 678C68285BDA
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1693951099; bh=4GMVTYQepYNE09Uj10ENke0DdRuzsOylQKmMxm0GlBE=;
	h=Message-ID:Date:MIME-Version:From:To;
	b=NwjUztGWb8OkVHUyMLMxNZtr2fYv14vfWx1yjkgZ4jqVI8UFQXwafVz3LZrkt2LTh
	 5Z7Bpv+KGtgT9q9eAdvqyT+6fIJbE8WCzX++dns3kg7TPXRbQOE85J3onKDyUIXyOI
	 XBbuG4OtBtuPh0FaIjQGy2Af+25fntUiz4hk0l1k=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <ee4a88cb-3692-a0b2-1389-b60080de0bd9@raptorengineering.com>
Date: Tue, 5 Sep 2023 16:58:18 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v3 0/5] ppc: Enable full Xen build
Content-Language: en-US
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693590982.git.sanastasio@raptorengineering.com>
 <332a7462-d0cb-154e-415b-e7f40b9b1421@suse.com>
 <7f0582cf-e78b-a62d-3f1e-b446acc82cf6@raptorengineering.com>
In-Reply-To: <7f0582cf-e78b-a62d-3f1e-b446acc82cf6@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/5/23 4:02 PM, Shawn Anastasio wrote:
> On 9/5/23 11:07 AM, Jan Beulich wrote:
>> On 01.09.2023 20:25, Shawn Anastasio wrote:
>> Another thing I wanted to ask: Would it be possible to configure
>> whatever mail client you use for sending patches to send plain ASCII or
>> UTF-8 text, not quoted-printable ones? At least for me, so far having
>> shoveled in most of your patches, that encoding gets in the way of
>> running a pre-apply-test with plain "patch --dry-run -F0" on all
>> patches (from a script I use for committing). I can help myself with
>> plain "git am", but sooner or later some patch will end up having a
>> collision with something else having gone in, and then I'll need to
>> manually clean up after the failed / incomplete command.
>>
> 
> If I'm understanding correctly, it looks like git send-email's
> --transfer-encoding=8bit [1] should do what you're asking. I'll do this
> for future submissions.

I've done this for my latest series dropping pseries support, but it
seems the messages that reached the mailing list are still encoded as
quoted-printable, despite git reporting that they were sent as 8bit.

I suppose my SMTP server is mangling the encoding, then. I'll look into
this some more, but hopefully the quoted-printable patches I send in the
meantime won't pose too much of an inconvenience.

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 22:12:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 22:12:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595870.929503 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdeH9-0003Gx-W6; Tue, 05 Sep 2023 22:11:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595870.929503; Tue, 05 Sep 2023 22:11:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdeH9-0003Gq-TL; Tue, 05 Sep 2023 22:11:59 +0000
Received: by outflank-mailman (input) for mailman id 595870;
 Tue, 05 Sep 2023 22:11:59 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdeH9-0003GN-2i; Tue, 05 Sep 2023 22:11:59 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdeH8-0004An-Ue; Tue, 05 Sep 2023 22:11:58 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdeH8-0006RE-Il; Tue, 05 Sep 2023 22:11:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdeH8-0006TK-I6; Tue, 05 Sep 2023 22:11:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=cV7SXtkKn9BZ2pX2HmZpTAHWLZaFDbMFovq1KxuBoWs=; b=aLrLqDiNEbYl9MTx8OunLAEFVp
	5si/7XeJC8pSU+tt1w9v6A/qOmAbcG0yQn5IiS170nbQUU/dAe9/QWkswLfAqQaNj8XFGHBLaF6gd
	clro8GXtk0LwKa0UqPgkP2PMJxUJZsDIIEL2IzVH3gGIFdqClW1ES9Gbw/vS19Ie+0as=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182636-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182636: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=8b66f9df1bb0fd5ebb743944d41cb33178cf2fdd
X-Osstest-Versions-That:
    ovmf=dfb941d32a2f38c9177729e39c6a6515abbbad48
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 05 Sep 2023 22:11:58 +0000

flight 182636 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182636/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 8b66f9df1bb0fd5ebb743944d41cb33178cf2fdd
baseline version:
 ovmf                 dfb941d32a2f38c9177729e39c6a6515abbbad48

Last test of basis   182617  2023-09-02 15:11:45 Z    3 days
Testing same since   182636  2023-09-05 14:12:37 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Gerd Hoffmann <kraxel@redhat.com>
  Michael Roth <michael.roth@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   dfb941d32a..8b66f9df1b  8b66f9df1bb0fd5ebb743944d41cb33178cf2fdd -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 22:18:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 22:18:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595879.929513 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdeNa-000487-Nv; Tue, 05 Sep 2023 22:18:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595879.929513; Tue, 05 Sep 2023 22:18:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdeNa-000480-JZ; Tue, 05 Sep 2023 22:18:38 +0000
Received: by outflank-mailman (input) for mailman id 595879;
 Tue, 05 Sep 2023 22:18:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IDwH=EV=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdeNZ-00047u-TU
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 22:18:37 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 28557890-4c3a-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 00:18:36 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 16932B816ED;
 Tue,  5 Sep 2023 22:18:36 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6FBD3C433C9;
 Tue,  5 Sep 2023 22:18:33 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 28557890-4c3a-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693952314;
	bh=Y/ZSekEWj0KebHYSVgMajjUmYk9YUYMLQ3uAO0HUT8s=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ZWfz39J8RiUCNDYJ8z5VWVBKeUlRRW+C4rpI7wxxPwzuNsKHZELNbJn7R3LL053+W
	 bwMe+IUYqKO71ERCVSzvQoUJSmC2iHO1k0QbcoVdR5ZGpytgA9vW8BSFc+NPd6FGEG
	 dRYnXDDFaDg/dc5hf9aHZMIiuf8JT7LVvOjvhxOmy9DbHaCyNXEuigIVndkAto76D0
	 r2RmHRqfRKT/zd8pNYlCMiVvW1eShEE9HbTHnGEEnlDq4hIwC2qIJ71Ug3ATWvZrFb
	 wtvQ3Lv8Kk7wJhqCYwvhvYHDJ8JLi93Yh9cDZF66bdW9A30DA+5Ov2S0AU/+A9Eh0z
	 DJDc7pSIKptBg==
Date: Tue, 5 Sep 2023 15:18:31 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: Jan Beulich <jbeulich@suse.com>, consulting@bugseng.com, 
    sstabellini@kernel.org, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH 09/13] xen/common: address violations of MISRA C:2012
 Directive 4.10
In-Reply-To: <814c3aa1-dbce-97d2-f526-93e185d61438@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309051514200.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693228255.git.simone.ballarin@bugseng.com> <fe1768342df0cd9315af87c83cc6d8d09f61b983.1693228255.git.simone.ballarin@bugseng.com> <00d67696-7895-f4cd-de0d-0c24f937deb9@suse.com> <be7ba4ea-b5e9-cc00-a8d1-0fec82248b8f@bugseng.com>
 <00866371-7adb-9cfa-267d-ee78cf14e68c@suse.com> <7d5244fe-d89c-8878-b16a-a3345426de1e@bugseng.com> <6ea28c90-68aa-4a14-e352-2bcb6e42a76a@suse.com> <814c3aa1-dbce-97d2-f526-93e185d61438@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 31 Aug 2023, Simone Ballarin wrote:
> On 31/08/23 15:05, Jan Beulich wrote:
> > On 31.08.2023 14:54, Simone Ballarin wrote:
> > > On 31/08/23 13:10, Jan Beulich wrote:
> > > > On 31.08.2023 12:08, Simone Ballarin wrote:
> > > > > The danger of multi-inclusion also exists for .c files, why do you
> > > > > want
> > > > > to avoid guards for them?
> > > > 
> > > > Counter question: Why only add guards to some of them? (My personal
> > > > answer is "Because it's extra clutter.")
> > > 
> > > It's not "some of them", it's exactly the ones used in an #include
> > > directive, so I'm not getting your objection.
> > 
> > My point is that by adding guards only for files we presently use in some
> > #include directive, we set us up for introducing new violations as soon
> > as another .c file becomes the subject of an #include.The more that it
> > is unusual to add guards in .c files, i.e. it is to be expected that
> > people wouldn't think about this extra Misra requirement.
> > 
> > Jan
> 
> I can agree to partially adopt the directive: I will add a deviation for C
> files in rules.txt.

Sorry for the late reply as I was OOO. Please hold on before adding a
deviation for C files.

In general, I think including .c files is not common behavior, and
should be restricted to special cases. We could say that exactly because
they are special, they follow different rules so we can skip the guards.
Or we could say that they are still at risk of double-inclusion, hence
we should be consistent and protect them too. I think we should discuss
the topic during the next MISRA C meeting.


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 22:26:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 22:26:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595900.929580 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdeUm-0006mV-Um; Tue, 05 Sep 2023 22:26:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595900.929580; Tue, 05 Sep 2023 22:26:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdeUm-0006mO-QE; Tue, 05 Sep 2023 22:26:04 +0000
Received: by outflank-mailman (input) for mailman id 595900;
 Tue, 05 Sep 2023 22:26:03 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdeUl-0006mE-9R; Tue, 05 Sep 2023 22:26:03 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdeUl-0004RG-7W; Tue, 05 Sep 2023 22:26:03 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdeUk-0006qh-LG; Tue, 05 Sep 2023 22:26:02 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdeUk-0006v3-Kp; Tue, 05 Sep 2023 22:26:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=t3VaSpOIpaxKEkn1MUZJa7X6V/cKlUzyli2TcNPOr/s=; b=xmdKxdKd2evLBsJhyI6i8Pxk/o
	zgan3kf86JgKOidR2GA3RhJ/ZyYofGX+ugrgafUZPCr9+0OJ/NRrldYMTCMlnoBw7g+dKfx0S1Xvz
	DLhQKhVGINQZMcXvxzuEvWBYGK8DypItXJtNZsjdEcEQqDJdGmPVJKoMN7jvjvrpcKIY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182630-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.17-testing test] 182630: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-4.17-testing:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=699de512748d8e3bdcb3225b3b2a77c10cfd2408
X-Osstest-Versions-That:
    xen=052a8d24bc670ab6503e21dfd2fb8bccfc22aa73
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 05 Sep 2023 22:26:02 +0000

flight 182630 xen-4.17-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182630/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host         fail  like 182427
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182427
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182427
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182427
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182427
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182427
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182427
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182427
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182427
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182427
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182427
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182427
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182427
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  699de512748d8e3bdcb3225b3b2a77c10cfd2408
baseline version:
 xen                  052a8d24bc670ab6503e21dfd2fb8bccfc22aa73

Last test of basis   182427  2023-08-23 04:34:41 Z   13 days
Testing same since   182630  2023-09-05 07:08:44 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  George Dunlap <george.dunlap@cloud.com>
  Henry Wang <Henry.Wang@arm.com> # CHANGELOG
  Jan Beulich <jbeulich@suse.com>
  Jason Andryuk <jandryuk@gmail.com>
  Jinoh Kang <jinoh.kang.kr@gmail.com>
  Roger Pau Monné <roger.pau@citrix.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   052a8d24bc..699de51274  699de512748d8e3bdcb3225b3b2a77c10cfd2408 -> stable-4.17


From xen-devel-bounces@lists.xenproject.org Tue Sep 05 22:27:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 22:27:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595909.929589 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdeWO-0007OC-CK; Tue, 05 Sep 2023 22:27:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595909.929589; Tue, 05 Sep 2023 22:27:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdeWO-0007O5-8n; Tue, 05 Sep 2023 22:27:44 +0000
Received: by outflank-mailman (input) for mailman id 595909;
 Tue, 05 Sep 2023 22:27:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IDwH=EV=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdeWN-0007Nw-47
 for xen-devel@lists.xenproject.org; Tue, 05 Sep 2023 22:27:43 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6cd1ee52-4c3b-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 00:27:40 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 3E92DB816ED;
 Tue,  5 Sep 2023 22:27:40 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id AC46DC433CA;
 Tue,  5 Sep 2023 22:27:38 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6cd1ee52-4c3b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693952859;
	bh=OX3L10SuN1W6QMrxDYb2mX7nY/V90/XCzZIYSkI9NuQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=bthpRCM/3IgeEH6Y/kiQL8GYGUND1mWeMzSrY13WKN1OBmXMaJd3i5cz9AxQSVNyC
	 DpX9Ziu8CHIotXzOvQwseEosWZBOUZ4VTSLW5F0RgPLNsCugNebSjQekP9ni2u5PbG
	 uEWXMtbf/38Ct8BcL2IQ5YeoQ4zTWNtZi5ab36E++9OGqFHoAYmCGhBEJhezM/lic9
	 t59yH/lOSbaP9OKItCk8pkEJvaZx1RgFOLkEDY8orUmu3Gl5AkGqxPYHVn/yseTrRt
	 xConaExAabhR2ehSRvTjo48eePR8IiUfbx155RZZ0fk2SV4Yl+uFeUVNQhzu6OjCyL
	 XT/iUlztPnyuQ==
Date: Tue, 5 Sep 2023 15:27:36 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 12/13] xen: address violations of MISRA C:2012
 Directive 4.10
In-Reply-To: <35401207-544a-156c-85ee-20e33a78f3a7@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309051519270.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693228255.git.simone.ballarin@bugseng.com> <6ef4634e273a89582299061f1d14346572bf1d47.1693228255.git.simone.ballarin@bugseng.com> <alpine.DEB.2.22.394.2308281548580.6458@ubuntu-linux-20-04-desktop>
 <35401207-544a-156c-85ee-20e33a78f3a7@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 31 Aug 2023, Simone Ballarin wrote:
> On 29/08/23 00:51, Stefano Stabellini wrote:
> > On Mon, 28 Aug 2023, Simone Ballarin wrote:
> > > Move or amended inclusion guards to address violations of
> > > MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
> > > to prevent the contents of a header file being included more than
> > > once").
> > > 
> > > Inclusion guards must appear at the beginning of the headers
> > > (comments are permitted anywhere) and the #if directive cannot
> > > be used for other checks.
> > > 
> > > Mechanical change.
> > > 
> > > Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> > > ---
> > >   xen/include/xen/err.h       | 4 +++-
> > >   xen/include/xen/pci_ids.h   | 5 +++++
> > >   xen/include/xen/softirq.h   | 4 +++-
> > >   xen/include/xen/unaligned.h | 7 ++++---
> > >   xen/include/xen/vmap.h      | 4 +++-
> > >   5 files changed, 18 insertions(+), 6 deletions(-)
> > > 
> > > diff --git a/xen/include/xen/err.h b/xen/include/xen/err.h
> > > index 2f29b57d28..a6323d82d7 100644
> > > --- a/xen/include/xen/err.h
> > > +++ b/xen/include/xen/err.h
> > > @@ -1,5 +1,6 @@
> > > -#if !defined(__XEN_ERR_H__) && !defined(__ASSEMBLY__)
> > > +#if !defined(__XEN_ERR_H__)
> > >   #define __XEN_ERR_H__
> > > +#if !defined(__ASSEMBLY__)
> > 
> > The original pattern was also guarding the header file sufficiently,
> > protecting it from double-inclusion. In fact, it is posing stricter
> > restrictions than usual (not laxer). This change is unnecessary?
> 
> The MISRA directive asks to use one of the two following forms:
> 
> <start-of-file>
> #if !defined ( identifier )
> #define identifier
> /* Contents of file */
> #endif
> <end-of-file>
> 
> <start-of-file>
> #ifndef identifier
> #define identifier
> /* Contents of file */
> #endif
> <end-of-file>
> 
> I do not see any reason for deviating, but if you ask that, I can do it.

Let's follow MISRA's form.


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 00:23:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 00:23:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595917.929600 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgK9-0007K3-08; Wed, 06 Sep 2023 00:23:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595917.929600; Wed, 06 Sep 2023 00:23:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgK8-0007Jw-Rj; Wed, 06 Sep 2023 00:23:12 +0000
Received: by outflank-mailman (input) for mailman id 595917;
 Wed, 06 Sep 2023 00:23:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdgK7-0007Jq-Df
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 00:23:11 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8d93d091-4c4b-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 02:23:08 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id CA5456068B;
 Wed,  6 Sep 2023 00:23:06 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1F8E5C433C7;
 Wed,  6 Sep 2023 00:23:04 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8d93d091-4c4b-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693959786;
	bh=WjEU1NG7SBttOuygurde7rk8UQ6DInqhhKjGYODUJoI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=tY1MwAud+jZox1jUYPzY3lk+/3SzWHD5vKNgtu9zUb5sAUSVRFyvQlnvkp7kZRPC6
	 9hRmF1zUkDgSYicVgrpo2zdCfo/PYW76+nQq5CCg8cmxAvD5cTNBJz5BHYIblJbOYN
	 bL6132LFQzWNNDg0ZmSqlRhv/48D2cb/TJmWzjmHtLW/m6oI+Pj/PIr/5N4M5wZGSk
	 HlxW5lY+cTlDT62efirNuwknXnuioxBPpvEFCSZUUMFwzejwLep7Ti2IYeYS8MDkd+
	 f6LSaLfhC0AgGpvDlTfwmNGyqC+8LhQyRWc9OHmsem8toxhywJdFp2sExzTQ3QwILw
	 7/SsFNrW3vYuQ==
Date: Tue, 5 Sep 2023 17:23:03 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Vikram Garhwal <vikram.garhwal@amd.com>
cc: xen-devel@lists.xenproject.org, julien@xen.org, michal.orzel@amd.com, 
    sstabellini@kernel.org, Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN][PATCH v11 03/20] xen/arm/device: Remove __init from function
 type
In-Reply-To: <20230901045947.32351-4-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309051722550.6458@ubuntu-linux-20-04-desktop>
References: <20230901045947.32351-1-vikram.garhwal@amd.com> <20230901045947.32351-4-vikram.garhwal@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 31 Aug 2023, Vikram Garhwal wrote:
> Remove __init from following function to access during runtime:
>     1. map_irq_to_domain()
>     2. handle_device_interrupts()
>     3. map_range_to_domain()
>     4. unflatten_dt_node()
>     5. handle_device()
>     6. map_device_children()
>     7. map_dt_irq_to_domain()
> Move map_irq_to_domain() prototype from domain_build.h to setup.h.
> 
> Above changes will create an error on build as non-init function are still
> in domain_build.c file. So, to avoid build fails, following changes are done:
> 1. Move map_irq_to_domain(), handle_device_interrupts(), map_range_to_domain(),
>     handle_device(), map_device_children() and map_dt_irq_to_domain()
>     to device.c. After removing __init type,  these functions are not specific
>     to domain building, so moving them out of domain_build.c to device.c.
> 2. Remove static type from handle_device_interrupts().
> 
> Also, renamed handle_device_interrupts() to map_device_irqs_to_domain().
> 
> Overall, these changes are done to support the dynamic programming of a nodes
> where an overlay node will be added to fdt and unflattened node will be added to
> dt_host. Furthermore, IRQ and mmio mapping will be done for the added node.
> 
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> Changes from v10:
>     Remove unnecessary rangeset variables  from handle_device() declaration.
>     Rename handle_device_interrupts() to map_device_irqs_to_domain().
>     Fix code styles.
> 
> Changes from v9:
>     Move handle_device(), map_device_children() and map_dt_irq_to_domain() out
>         of domain_build.c
> ---
> ---
>  xen/arch/arm/device.c                   | 294 +++++++++++++++++++++++
>  xen/arch/arm/domain_build.c             | 295 +-----------------------
>  xen/arch/arm/include/asm/domain_build.h |   2 -
>  xen/arch/arm/include/asm/setup.h        |   9 +
>  xen/common/device_tree.c                |  12 +-
>  5 files changed, 310 insertions(+), 302 deletions(-)
> 
> diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
> index ca8539dee5..327e4d24fb 100644
> --- a/xen/arch/arm/device.c
> +++ b/xen/arch/arm/device.c
> @@ -9,8 +9,10 @@
>   */
>  
>  #include <asm/device.h>
> +#include <asm/setup.h>
>  #include <xen/errno.h>
>  #include <xen/init.h>
> +#include <xen/iocap.h>
>  #include <xen/lib.h>
>  
>  extern const struct device_desc _sdevice[], _edevice[];
> @@ -75,6 +77,298 @@ enum device_class device_get_class(const struct dt_device_node *dev)
>      return DEVICE_UNKNOWN;
>  }
>  
> +int map_irq_to_domain(struct domain *d, unsigned int irq,
> +                      bool need_mapping, const char *devname)
> +{
> +    int res;
> +
> +    res = irq_permit_access(d, irq);
> +    if ( res )
> +    {
> +        printk(XENLOG_ERR "Unable to permit to %pd access to IRQ %u\n", d, irq);
> +        return res;
> +    }
> +
> +    if ( need_mapping )
> +    {
> +        /*
> +         * Checking the return of vgic_reserve_virq is not
> +         * necessary. It should not fail except when we try to map
> +         * the IRQ twice. This can legitimately happen if the IRQ is shared
> +         */
> +        vgic_reserve_virq(d, irq);
> +
> +        res = route_irq_to_guest(d, irq, irq, devname);
> +        if ( res < 0 )
> +        {
> +            printk(XENLOG_ERR "Unable to map IRQ%u to %pd\n", irq, d);
> +            return res;
> +        }
> +    }
> +
> +    dt_dprintk("  - IRQ: %u\n", irq);
> +    return 0;
> +}
> +
> +int map_range_to_domain(const struct dt_device_node *dev,
> +                        uint64_t addr, uint64_t len, void *data)
> +{
> +    struct map_range_data *mr_data = data;
> +    struct domain *d = mr_data->d;
> +    int res;
> +
> +    if ( (addr != (paddr_t)addr) || (((paddr_t)~0 - addr) < len) )
> +    {
> +        printk(XENLOG_ERR "%s: [0x%"PRIx64", 0x%"PRIx64"] exceeds the maximum allowed PA width (%u bits)",
> +               dt_node_full_name(dev), addr, (addr + len), PADDR_BITS);
> +        return -ERANGE;
> +    }
> +
> +    /*
> +     * reserved-memory regions are RAM carved out for a special purpose.
> +     * They are not MMIO and therefore a domain should not be able to
> +     * manage them via the IOMEM interface.
> +     */
> +    if ( strncasecmp(dt_node_full_name(dev), "/reserved-memory/",
> +                     strlen("/reserved-memory/")) != 0 )
> +    {
> +        res = iomem_permit_access(d, paddr_to_pfn(addr),
> +                paddr_to_pfn(PAGE_ALIGN(addr + len - 1)));
> +        if ( res )
> +        {
> +            printk(XENLOG_ERR "Unable to permit to dom%d access to"
> +                    " 0x%"PRIx64" - 0x%"PRIx64"\n",
> +                    d->domain_id,
> +                    addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1);
> +            return res;
> +        }
> +    }
> +
> +    if ( !mr_data->skip_mapping )
> +    {
> +        res = map_regions_p2mt(d,
> +                               gaddr_to_gfn(addr),
> +                               PFN_UP(len),
> +                               maddr_to_mfn(addr),
> +                               mr_data->p2mt);
> +
> +        if ( res < 0 )
> +        {
> +            printk(XENLOG_ERR "Unable to map 0x%"PRIx64
> +                   " - 0x%"PRIx64" in domain %d\n",
> +                   addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1,
> +                   d->domain_id);
> +            return res;
> +        }
> +    }
> +
> +    dt_dprintk("  - MMIO: %010"PRIx64" - %010"PRIx64" P2MType=%x\n",
> +               addr, addr + len, mr_data->p2mt);
> +
> +    return 0;
> +}
> +
> +/*
> + * map_device_irqs_to_domain retrieves the interrupts configuration from
> + * a device tree node and maps those interrupts to the target domain.
> + *
> + * Returns:
> + *   < 0 error
> + *   0   success
> + */
> +int map_device_irqs_to_domain(struct domain *d,
> +                              struct dt_device_node *dev,
> +                              bool need_mapping)
> +{
> +    unsigned int i, nirq;
> +    int res;
> +    struct dt_raw_irq rirq;
> +
> +    nirq = dt_number_of_irq(dev);
> +
> +    /* Give permission and map IRQs */
> +    for ( i = 0; i < nirq; i++ )
> +    {
> +        res = dt_device_get_raw_irq(dev, i, &rirq);
> +        if ( res )
> +        {
> +            printk(XENLOG_ERR "Unable to retrieve irq %u for %s\n",
> +                   i, dt_node_full_name(dev));
> +            return res;
> +        }
> +
> +        /*
> +         * Don't map IRQ that have no physical meaning
> +         * ie: IRQ whose controller is not the GIC
> +         */
> +        if ( rirq.controller != dt_interrupt_controller )
> +        {
> +            dt_dprintk("irq %u not connected to primary controller. Connected to %s\n",
> +                      i, dt_node_full_name(rirq.controller));
> +            continue;
> +        }
> +
> +        res = platform_get_irq(dev, i);
> +        if ( res < 0 )
> +        {
> +            printk(XENLOG_ERR "Unable to get irq %u for %s\n",
> +                   i, dt_node_full_name(dev));
> +            return res;
> +        }
> +
> +        res = map_irq_to_domain(d, res, need_mapping, dt_node_name(dev));
> +        if ( res )
> +            return res;
> +    }
> +
> +    return 0;
> +}
> +
> +static int map_dt_irq_to_domain(const struct dt_device_node *dev,
> +                                const struct dt_irq *dt_irq,
> +                                void *data)
> +{
> +    struct map_range_data *mr_data = data;
> +    struct domain *d = mr_data->d;
> +    unsigned int irq = dt_irq->irq;
> +    int res;
> +
> +    if ( irq < NR_LOCAL_IRQS )
> +    {
> +        printk(XENLOG_ERR "%s: IRQ%u is not a SPI\n", dt_node_name(dev), irq);
> +        return -EINVAL;
> +    }
> +
> +    /* Setup the IRQ type */
> +    res = irq_set_spi_type(irq, dt_irq->type);
> +    if ( res )
> +    {
> +        printk(XENLOG_ERR "%s: Unable to setup IRQ%u to %pd\n",
> +               dt_node_name(dev), irq, d);
> +        return res;
> +    }
> +
> +    res = map_irq_to_domain(d, irq, !mr_data->skip_mapping, dt_node_name(dev));
> +
> +    return res;
> +}
> +
> +/*
> + * For a node which describes a discoverable bus (such as a PCI bus)
> + * then we may need to perform additional mappings in order to make
> + * the child resources available to domain 0.
> + */
> +static int map_device_children(const struct dt_device_node *dev,
> +                               struct map_range_data *mr_data)
> +{
> +    if ( dt_device_type_is_equal(dev, "pci") )
> +    {
> +        int ret;
> +
> +        dt_dprintk("Mapping children of %s to guest\n",
> +                   dt_node_full_name(dev));
> +
> +        ret = dt_for_each_irq_map(dev, &map_dt_irq_to_domain, mr_data);
> +        if ( ret < 0 )
> +            return ret;
> +
> +        ret = dt_for_each_range(dev, &map_range_to_domain, mr_data);
> +        if ( ret < 0 )
> +            return ret;
> +    }
> +
> +    return 0;
> +}
> +
> +/*
> + * For a given device node:
> + *  - Give permission to the guest to manage IRQ and MMIO range
> + *  - Retrieve the IRQ configuration (i.e edge/level) from device tree
> + * When the device is not marked for guest passthrough:
> + *  - Try to call iommu_add_dt_device to protect the device by an IOMMU
> + *  - Assign the device to the guest if it's protected by an IOMMU
> + *  - Map the IRQs and iomem regions to DOM0
> + */
> +int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt)
> +{
> +    unsigned int naddr;
> +    unsigned int i;
> +    int res;
> +    paddr_t addr, size;
> +    bool own_device = !dt_device_for_passthrough(dev);
> +    /*
> +     * We want to avoid mapping the MMIO in dom0 for the following cases:
> +     *   - The device is owned by dom0 (i.e. it has been flagged for
> +     *     passthrough).
> +     *   - PCI host bridges with driver in Xen. They will later be mapped by
> +     *     pci_host_bridge_mappings().
> +     */
> +    struct map_range_data mr_data = {
> +        .d = d,
> +        .p2mt = p2mt,
> +        .skip_mapping = !own_device ||
> +                        (is_pci_passthrough_enabled() &&
> +                        (device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE))
> +    };
> +
> +    naddr = dt_number_of_address(dev);
> +
> +    dt_dprintk("%s passthrough = %d naddr = %u\n",
> +               dt_node_full_name(dev), own_device, naddr);
> +
> +    if ( own_device )
> +    {
> +        dt_dprintk("Check if %s is behind the IOMMU and add it\n",
> +                   dt_node_full_name(dev));
> +
> +        res = iommu_add_dt_device(dev);
> +        if ( res < 0 )
> +        {
> +            printk(XENLOG_ERR "Failed to add %s to the IOMMU\n",
> +                   dt_node_full_name(dev));
> +            return res;
> +        }
> +
> +        if ( dt_device_is_protected(dev) )
> +        {
> +            dt_dprintk("%s setup iommu\n", dt_node_full_name(dev));
> +            res = iommu_assign_dt_device(d, dev);
> +            if ( res )
> +            {
> +                printk(XENLOG_ERR "Failed to setup the IOMMU for %s\n",
> +                       dt_node_full_name(dev));
> +                return res;
> +            }
> +        }
> +    }
> +
> +    res = map_device_irqs_to_domain(d, dev, own_device);
> +    if ( res < 0 )
> +        return res;
> +
> +    /* Give permission and map MMIOs */
> +    for ( i = 0; i < naddr; i++ )
> +    {
> +        res = dt_device_get_paddr(dev, i, &addr, &size);
> +        if ( res )
> +        {
> +            printk(XENLOG_ERR "Unable to retrieve address %u for %s\n",
> +                   i, dt_node_full_name(dev));
> +            return res;
> +        }
> +
> +        res = map_range_to_domain(dev, addr, size, &mr_data);
> +        if ( res )
> +            return res;
> +    }
> +
> +    res = map_device_children(dev, &mr_data);
> +    if ( res )
> +        return res;
> +
> +    return 0;
> +}
> +
>  /*
>   * Local variables:
>   * mode: C
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 54bf5623c8..ff4fc30769 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -2293,299 +2293,6 @@ int __init make_chosen_node(const struct kernel_info *kinfo)
>      return res;
>  }
>  
> -int __init map_irq_to_domain(struct domain *d, unsigned int irq,
> -                             bool need_mapping, const char *devname)
> -{
> -    int res;
> -
> -    res = irq_permit_access(d, irq);
> -    if ( res )
> -    {
> -        printk(XENLOG_ERR "Unable to permit to %pd access to IRQ %u\n", d, irq);
> -        return res;
> -    }
> -
> -    if ( need_mapping )
> -    {
> -        /*
> -         * Checking the return of vgic_reserve_virq is not
> -         * necessary. It should not fail except when we try to map
> -         * the IRQ twice. This can legitimately happen if the IRQ is shared
> -         */
> -        vgic_reserve_virq(d, irq);
> -
> -        res = route_irq_to_guest(d, irq, irq, devname);
> -        if ( res < 0 )
> -        {
> -            printk(XENLOG_ERR "Unable to map IRQ%u to %pd\n", irq, d);
> -            return res;
> -        }
> -    }
> -
> -    dt_dprintk("  - IRQ: %u\n", irq);
> -    return 0;
> -}
> -
> -static int __init map_dt_irq_to_domain(const struct dt_device_node *dev,
> -                                       const struct dt_irq *dt_irq,
> -                                       void *data)
> -{
> -    struct map_range_data *mr_data = data;
> -    struct domain *d = mr_data->d;
> -    unsigned int irq = dt_irq->irq;
> -    int res;
> -
> -    if ( irq < NR_LOCAL_IRQS )
> -    {
> -        printk(XENLOG_ERR "%s: IRQ%u is not a SPI\n", dt_node_name(dev), irq);
> -        return -EINVAL;
> -    }
> -
> -    /* Setup the IRQ type */
> -    res = irq_set_spi_type(irq, dt_irq->type);
> -    if ( res )
> -    {
> -        printk(XENLOG_ERR "%s: Unable to setup IRQ%u to %pd\n",
> -               dt_node_name(dev), irq, d);
> -        return res;
> -    }
> -
> -    res = map_irq_to_domain(d, irq, !mr_data->skip_mapping, dt_node_name(dev));
> -
> -    return res;
> -}
> -
> -int __init map_range_to_domain(const struct dt_device_node *dev,
> -                               uint64_t addr, uint64_t len, void *data)
> -{
> -    struct map_range_data *mr_data = data;
> -    struct domain *d = mr_data->d;
> -    int res;
> -
> -    if ( (addr != (paddr_t)addr) || (((paddr_t)~0 - addr) < len) )
> -    {
> -        printk(XENLOG_ERR "%s: [0x%"PRIx64", 0x%"PRIx64"] exceeds the maximum allowed PA width (%u bits)",
> -               dt_node_full_name(dev), addr, (addr + len), PADDR_BITS);
> -        return -ERANGE;
> -    }
> -
> -    /*
> -     * reserved-memory regions are RAM carved out for a special purpose.
> -     * They are not MMIO and therefore a domain should not be able to
> -     * manage them via the IOMEM interface.
> -     */
> -    if ( strncasecmp(dt_node_full_name(dev), "/reserved-memory/",
> -                     strlen("/reserved-memory/")) != 0 )
> -    {
> -        res = iomem_permit_access(d, paddr_to_pfn(addr),
> -                paddr_to_pfn(PAGE_ALIGN(addr + len - 1)));
> -        if ( res )
> -        {
> -            printk(XENLOG_ERR "Unable to permit to dom%d access to"
> -                    " 0x%"PRIx64" - 0x%"PRIx64"\n",
> -                    d->domain_id,
> -                    addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1);
> -            return res;
> -        }
> -    }
> -
> -    if ( !mr_data->skip_mapping )
> -    {
> -        res = map_regions_p2mt(d,
> -                               gaddr_to_gfn(addr),
> -                               PFN_UP(len),
> -                               maddr_to_mfn(addr),
> -                               mr_data->p2mt);
> -
> -        if ( res < 0 )
> -        {
> -            printk(XENLOG_ERR "Unable to map 0x%"PRIx64
> -                   " - 0x%"PRIx64" in domain %d\n",
> -                   addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1,
> -                   d->domain_id);
> -            return res;
> -        }
> -    }
> -
> -    dt_dprintk("  - MMIO: %010"PRIx64" - %010"PRIx64" P2MType=%x\n",
> -               addr, addr + len, mr_data->p2mt);
> -
> -    return 0;
> -}
> -
> -/*
> - * For a node which describes a discoverable bus (such as a PCI bus)
> - * then we may need to perform additional mappings in order to make
> - * the child resources available to domain 0.
> - */
> -static int __init map_device_children(const struct dt_device_node *dev,
> -                                      struct map_range_data *mr_data)
> -{
> -    if ( dt_device_type_is_equal(dev, "pci") )
> -    {
> -        int ret;
> -
> -        dt_dprintk("Mapping children of %s to guest\n",
> -                   dt_node_full_name(dev));
> -
> -        ret = dt_for_each_irq_map(dev, &map_dt_irq_to_domain, mr_data);
> -        if ( ret < 0 )
> -            return ret;
> -
> -        ret = dt_for_each_range(dev, &map_range_to_domain, mr_data);
> -        if ( ret < 0 )
> -            return ret;
> -    }
> -
> -    return 0;
> -}
> -
> -/*
> - * handle_device_interrupts retrieves the interrupts configuration from
> - * a device tree node and maps those interrupts to the target domain.
> - *
> - * Returns:
> - *   < 0 error
> - *   0   success
> - */
> -static int __init handle_device_interrupts(struct domain *d,
> -                                           struct dt_device_node *dev,
> -                                           bool need_mapping)
> -{
> -    unsigned int i, nirq;
> -    int res;
> -    struct dt_raw_irq rirq;
> -
> -    nirq = dt_number_of_irq(dev);
> -
> -    /* Give permission and map IRQs */
> -    for ( i = 0; i < nirq; i++ )
> -    {
> -        res = dt_device_get_raw_irq(dev, i, &rirq);
> -        if ( res )
> -        {
> -            printk(XENLOG_ERR "Unable to retrieve irq %u for %s\n",
> -                   i, dt_node_full_name(dev));
> -            return res;
> -        }
> -
> -        /*
> -         * Don't map IRQ that have no physical meaning
> -         * ie: IRQ whose controller is not the GIC
> -         */
> -        if ( rirq.controller != dt_interrupt_controller )
> -        {
> -            dt_dprintk("irq %u not connected to primary controller. Connected to %s\n",
> -                      i, dt_node_full_name(rirq.controller));
> -            continue;
> -        }
> -
> -        res = platform_get_irq(dev, i);
> -        if ( res < 0 )
> -        {
> -            printk(XENLOG_ERR "Unable to get irq %u for %s\n",
> -                   i, dt_node_full_name(dev));
> -            return res;
> -        }
> -
> -        res = map_irq_to_domain(d, res, need_mapping, dt_node_name(dev));
> -        if ( res )
> -            return res;
> -    }
> -
> -    return 0;
> -}
> -
> -/*
> - * For a given device node:
> - *  - Give permission to the guest to manage IRQ and MMIO range
> - *  - Retrieve the IRQ configuration (i.e edge/level) from device tree
> - * When the device is not marked for guest passthrough:
> - *  - Try to call iommu_add_dt_device to protect the device by an IOMMU
> - *  - Assign the device to the guest if it's protected by an IOMMU
> - *  - Map the IRQs and iomem regions to DOM0
> - */
> -static int __init handle_device(struct domain *d, struct dt_device_node *dev,
> -                                p2m_type_t p2mt)
> -{
> -    unsigned int naddr;
> -    unsigned int i;
> -    int res;
> -    paddr_t addr, size;
> -    bool own_device = !dt_device_for_passthrough(dev);
> -    /*
> -     * We want to avoid mapping the MMIO in dom0 for the following cases:
> -     *   - The device is owned by dom0 (i.e. it has been flagged for
> -     *     passthrough).
> -     *   - PCI host bridges with driver in Xen. They will later be mapped by
> -     *     pci_host_bridge_mappings().
> -     */
> -    struct map_range_data mr_data = {
> -        .d = d,
> -        .p2mt = p2mt,
> -        .skip_mapping = !own_device ||
> -                        (is_pci_passthrough_enabled() &&
> -                        (device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE))
> -    };
> -
> -    naddr = dt_number_of_address(dev);
> -
> -    dt_dprintk("%s passthrough = %d naddr = %u\n",
> -               dt_node_full_name(dev), own_device, naddr);
> -
> -    if ( own_device )
> -    {
> -        dt_dprintk("Check if %s is behind the IOMMU and add it\n",
> -                   dt_node_full_name(dev));
> -
> -        res = iommu_add_dt_device(dev);
> -        if ( res < 0 )
> -        {
> -            printk(XENLOG_ERR "Failed to add %s to the IOMMU\n",
> -                   dt_node_full_name(dev));
> -            return res;
> -        }
> -
> -        if ( dt_device_is_protected(dev) )
> -        {
> -            dt_dprintk("%s setup iommu\n", dt_node_full_name(dev));
> -            res = iommu_assign_dt_device(d, dev);
> -            if ( res )
> -            {
> -                printk(XENLOG_ERR "Failed to setup the IOMMU for %s\n",
> -                       dt_node_full_name(dev));
> -                return res;
> -            }
> -        }
> -    }
> -
> -    res = handle_device_interrupts(d, dev, own_device);
> -    if ( res < 0 )
> -        return res;
> -
> -    /* Give permission and map MMIOs */
> -    for ( i = 0; i < naddr; i++ )
> -    {
> -        res = dt_device_get_paddr(dev, i, &addr, &size);
> -        if ( res )
> -        {
> -            printk(XENLOG_ERR "Unable to retrieve address %u for %s\n",
> -                   i, dt_node_full_name(dev));
> -            return res;
> -        }
> -
> -        res = map_range_to_domain(dev, addr, size, &mr_data);
> -        if ( res )
> -            return res;
> -    }
> -
> -    res = map_device_children(dev, &mr_data);
> -    if ( res )
> -        return res;
> -
> -    return 0;
> -}
> -
>  static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
>                                struct dt_device_node *node,
>                                p2m_type_t p2mt)
> @@ -3038,7 +2745,7 @@ static int __init handle_passthrough_prop(struct kernel_info *kinfo,
>          return -EINVAL;
>      }
>  
> -    res = handle_device_interrupts(kinfo->d, node, true);
> +    res = map_device_irqs_to_domain(kinfo->d, node, true);
>      if ( res < 0 )
>          return res;
>  
> diff --git a/xen/arch/arm/include/asm/domain_build.h b/xen/arch/arm/include/asm/domain_build.h
> index 34ceddc995..b9329c9ee0 100644
> --- a/xen/arch/arm/include/asm/domain_build.h
> +++ b/xen/arch/arm/include/asm/domain_build.h
> @@ -4,8 +4,6 @@
>  #include <xen/sched.h>
>  #include <asm/kernel.h>
>  
> -int map_irq_to_domain(struct domain *d, unsigned int irq,
> -                      bool need_mapping, const char *devname);
>  int make_chosen_node(const struct kernel_info *kinfo);
>  void evtchn_allocate(struct domain *d);
>  
> diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
> index 19dc637d55..6cda3e4039 100644
> --- a/xen/arch/arm/include/asm/setup.h
> +++ b/xen/arch/arm/include/asm/setup.h
> @@ -165,6 +165,15 @@ void device_tree_get_reg(const __be32 **cell, uint32_t address_cells,
>  u32 device_tree_get_u32(const void *fdt, int node,
>                          const char *prop_name, u32 dflt);
>  
> +int handle_device(struct domain *d, struct dt_device_node *dev,
> +                  p2m_type_t p2mt);
> +
> +int map_device_irqs_to_domain(struct domain *d, struct dt_device_node *dev,
> +                              bool need_mapping);
> +
> +int map_irq_to_domain(struct domain *d, unsigned int irq,
> +                      bool need_mapping, const char *devname);
> +
>  int map_range_to_domain(const struct dt_device_node *dev,
>                          uint64_t addr, uint64_t len, void *data);
>  
> diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
> index b6d9f018c6..fccf98f94e 100644
> --- a/xen/common/device_tree.c
> +++ b/xen/common/device_tree.c
> @@ -1847,12 +1847,12 @@ int dt_count_phandle_with_args(const struct dt_device_node *np,
>   * @allnextpp: pointer to ->allnext from last allocated device_node
>   * @fpsize: Size of the node path up at the current depth.
>   */
> -static unsigned long __init unflatten_dt_node(const void *fdt,
> -                                              unsigned long mem,
> -                                              unsigned long *p,
> -                                              struct dt_device_node *dad,
> -                                              struct dt_device_node ***allnextpp,
> -                                              unsigned long fpsize)
> +static unsigned long unflatten_dt_node(const void *fdt,
> +                                       unsigned long mem,
> +                                       unsigned long *p,
> +                                       struct dt_device_node *dad,
> +                                       struct dt_device_node ***allnextpp,
> +                                       unsigned long fpsize)
>  {
>      struct dt_device_node *np;
>      struct dt_property *pp, **prev_pp = NULL;
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 00:24:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 00:24:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595923.929608 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgLP-0007tQ-Cq; Wed, 06 Sep 2023 00:24:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595923.929608; Wed, 06 Sep 2023 00:24:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgLP-0007tH-A6; Wed, 06 Sep 2023 00:24:31 +0000
Received: by outflank-mailman (input) for mailman id 595923;
 Wed, 06 Sep 2023 00:24:30 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdgLO-0007t9-0s
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 00:24:30 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bcd6c50c-4c4b-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 02:24:27 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 9AEED60EE9;
 Wed,  6 Sep 2023 00:24:26 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3CBAFC433C9;
 Wed,  6 Sep 2023 00:24:24 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bcd6c50c-4c4b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693959866;
	bh=0nPjol8i5HwWlJY59KqUNswONKRiALt7aET4yUbGTeI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=SOhaDFL4XeEIdYyiLX08A5J0a91cFwjQYp/CF1Q3cJghD+a/+LYK3uNBt67/tzKZk
	 wS8tD0EJUcpPU3YoQ0ZEF0yu476oTlc3NLv8mSetkS7djP4tIq3fhvuSW1LIiy8yT+
	 sbz7Fh9jqhWTwagpvxN7KBQI4dongEP/P37Z/m9bioakRjTctlYq7EdaKA2A51nD94
	 Cad/PZanEEuAD+kL/DOTOrcBP1rfcmy040JPPQx8U/5NnzcVxB0MmTzQi5U2nt+/pH
	 +/pL4W5tmcWeT30dG9KzsLqU7BZoDpamNqymOKXb51B1JEyMoDw3KODW0yM86kyW5r
	 PqL5Am/r8f6Ug==
Date: Tue, 5 Sep 2023 17:24:22 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Vikram Garhwal <vikram.garhwal@amd.com>
cc: xen-devel@lists.xenproject.org, julien@xen.org, michal.orzel@amd.com, 
    sstabellini@kernel.org, Henry Wang <Henry.Wang@arm.com>, 
    Community Manager <community.manager@xenproject.org>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Wei Liu <wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN][PATCH v11 05/20] xen/arm: Add CONFIG_OVERLAY_DTB
In-Reply-To: <20230901045947.32351-6-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309051724110.6458@ubuntu-linux-20-04-desktop>
References: <20230901045947.32351-1-vikram.garhwal@amd.com> <20230901045947.32351-6-vikram.garhwal@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 31 Aug 2023, Vikram Garhwal wrote:
> Introduce a config option where the user can enable support for adding/removing
> device tree nodes using a device tree binary overlay.
> 
> Update SUPPORT.md and CHANGELOG.md to state the Device Tree Overlays support for
> Arm.
> 
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> Acked-by: Henry Wang <Henry.Wang@arm.com>
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>



> ---
> Changes from v9:
>     Fix style.
> Changes from v7:
>     Add this feature as "experimental support" in CHANGELOG.md
> ---
> ---
>  CHANGELOG.md         | 2 ++
>  SUPPORT.md           | 6 ++++++
>  xen/arch/arm/Kconfig | 5 +++++
>  3 files changed, 13 insertions(+)
> 
> diff --git a/CHANGELOG.md b/CHANGELOG.md
> index 2516526589..24636b8eaf 100644
> --- a/CHANGELOG.md
> +++ b/CHANGELOG.md
> @@ -27,6 +27,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
>   - On Arm, add suport for Firmware Framework for Arm A-profile (FF-A) Mediator
>     (Tech Preview)
>   - Add Intel Hardware P-States (HWP) cpufreq driver.
> + - On Arm, experimental support for dynamic addition/removal of Xen device tree
> +   nodes using a device tree overlay binary (.dtbo).
>  
>  ### Removed
>   - On x86, the "pku" command line option has been removed.  It has never
> diff --git a/SUPPORT.md b/SUPPORT.md
> index 6ce0ec29b0..3461f5cf2f 100644
> --- a/SUPPORT.md
> +++ b/SUPPORT.md
> @@ -855,6 +855,12 @@ xen/arch/arm/tee/ffa.c for limitations.
>  
>      Status: Supported
>  
> +### Device Tree Overlays
> +
> +Add/Remove device tree nodes using a device tree overlay binary (.dtbo).
> +
> +    Status, ARM: Experimental
> +
>  ### ARM: Guest ACPI support
>  
>      Status: Supported
> diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
> index 57bd1d01d7..650aca99ac 100644
> --- a/xen/arch/arm/Kconfig
> +++ b/xen/arch/arm/Kconfig
> @@ -92,6 +92,11 @@ config HAS_ITS
>          bool "GICv3 ITS MSI controller support (UNSUPPORTED)" if UNSUPPORTED
>          depends on GICV3 && !NEW_VGIC && !ARM_32
>  
> +config OVERLAY_DTB
> +	bool "DTB overlay support (UNSUPPORTED)" if UNSUPPORTED
> +	help
> +	  Dynamic addition/removal of Xen device tree nodes using a dtbo.
> +
>  config HVM
>          def_bool y
>  
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 00:28:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 00:28:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595932.929619 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgOt-00006m-Qz; Wed, 06 Sep 2023 00:28:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595932.929619; Wed, 06 Sep 2023 00:28:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgOt-00006f-ON; Wed, 06 Sep 2023 00:28:07 +0000
Received: by outflank-mailman (input) for mailman id 595932;
 Wed, 06 Sep 2023 00:28:06 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdgOs-00006Z-RE
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 00:28:06 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3eb53efe-4c4c-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 02:28:05 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 729FC60EE9;
 Wed,  6 Sep 2023 00:28:04 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 20259C433C7;
 Wed,  6 Sep 2023 00:28:03 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3eb53efe-4c4c-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693960083;
	bh=DJqpuFo8h2Mz2UY/Yq0L1CMErw0s+oQmpLr4GuldxoE=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=nuAcB43W00gkqLA83YCmM7cXkxsslKHbzTK90hHeNemlSMuBeMerk1+t4HYdMJgcB
	 83P6GFvZZkpGsqEVx9/rELKnS48I2hqPzc0at9rrIqeko2yuxxHPLJQuEFPxW6Cc4B
	 /55HijsimIBeiEu5C1Tft6SLAROY8PDmgO8Goitpguz44EdGqN78XMoBeN7jrx734P
	 E5LpPBMQJiY35qiQFUpcbfCG4AWqm0Lm13X5TUA4SHxuO8jrYTi157eFPMjASN5Q98
	 DtH2G9zotHM9pQWBv90M24K14jss8Wns4KZxiyfHfLUzfZkgq4s2IZIUY5M9GtTmyT
	 wsFInjKzWlMZA==
Date: Tue, 5 Sep 2023 17:28:01 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Vikram Garhwal <vikram.garhwal@amd.com>
cc: xen-devel@lists.xenproject.org, julien@xen.org, michal.orzel@amd.com, 
    sstabellini@kernel.org
Subject: Re: [XEN][PATCH v11 09/20] xen/iommu: Move spin_lock from
 iommu_dt_device_is_assigned to caller
In-Reply-To: <20230901045947.32351-10-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309051727490.6458@ubuntu-linux-20-04-desktop>
References: <20230901045947.32351-1-vikram.garhwal@amd.com> <20230901045947.32351-10-vikram.garhwal@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 31 Aug 2023, Vikram Garhwal wrote:
> Rename iommu_dt_device_is_assigned() to iommu_dt_device_is_assigned_locked().
> 
> Moving spin_lock to caller was done to prevent the concurrent access to
> iommu_dt_device_is_assigned while doing add/remove/assign/deassign. Follow-up
> patches in this series introduces node add/remove feature.
> 
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>



> ---
> Changes from v10:
>     Move spin_lock before iommu_dt_device_is_assigned_locked() call.
>     Rebase the patch with latest Xen.
> Changes from v9:
>     Make iommu_dt_device_is_assigned_locked() static and delete header.
>     Move dtdevs_lock before iommu_dt_device_is_assigned_locked().
> Changes from v7:
>     Update commit message.
>     Add ASSERT().
> ---
> ---
>  xen/drivers/passthrough/device_tree.c | 12 ++++++++----
>  1 file changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
> index 3c0322c797..a7d86a20a0 100644
> --- a/xen/drivers/passthrough/device_tree.c
> +++ b/xen/drivers/passthrough/device_tree.c
> @@ -83,16 +83,16 @@ fail:
>      return rc;
>  }
>  
> -static bool iommu_dt_device_is_assigned(const struct dt_device_node *dev)
> +static bool iommu_dt_device_is_assigned_locked(const struct dt_device_node *dev)
>  {
>      bool assigned = false;
>  
> +    ASSERT(spin_is_locked(&dtdevs_lock));
> +
>      if ( !dt_device_is_protected(dev) )
>          return 0;
>  
> -    spin_lock(&dtdevs_lock);
>      assigned = !list_empty(&dev->domain_list);
> -    spin_unlock(&dtdevs_lock);
>  
>      return assigned;
>  }
> @@ -225,12 +225,16 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
>  
>          if ( domctl->cmd == XEN_DOMCTL_test_assign_device )
>          {
> -            if ( iommu_dt_device_is_assigned(dev) )
> +            spin_lock(&dtdevs_lock);
> +
> +            if ( iommu_dt_device_is_assigned_locked(dev) )
>              {
>                  printk(XENLOG_G_ERR "%s already assigned.\n",
>                         dt_node_full_name(dev));
>                  ret = -EINVAL;
>              }
> +
> +            spin_unlock(&dtdevs_lock);
>              break;
>          }
>  
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 00:29:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 00:29:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595938.929629 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgQS-0000fl-6j; Wed, 06 Sep 2023 00:29:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595938.929629; Wed, 06 Sep 2023 00:29:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgQS-0000fe-2x; Wed, 06 Sep 2023 00:29:44 +0000
Received: by outflank-mailman (input) for mailman id 595938;
 Wed, 06 Sep 2023 00:29:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdgQQ-0000fT-EH
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 00:29:42 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 77b8c3ce-4c4c-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 02:29:41 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 08A5660EE9;
 Wed,  6 Sep 2023 00:29:40 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A3D11C433C8;
 Wed,  6 Sep 2023 00:29:38 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 77b8c3ce-4c4c-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693960179;
	bh=jNulyxO2TVUnYxpacu+NxB/vJ8JD69XG3eZPbh71uKM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=LsqcVwf9nf6fYU0y51j5sa568wWi3BZW0iv4fHUDwyGHUZnUXH1Ac/ScM2ZcQj8zk
	 uSdUin68hUe0jrYi/KpeVtYe2mMJIISaBCmAqxiiJGi/cz3j/03+syr7FXs9hF54PL
	 CaNvXd2Ua/5/3LbRsvqGAiZeNjMpHVWQtY+n2PlEQ1N3VImkDwpsUFKEonmTCDZfVI
	 I12q2ZKP7j+HiEPTsFLO9mZNCTTrt/WkQyirxOGi6uZCc1zCPdLTpN24GbdmC4cZly
	 jNcfQf6fc+0OQDvealntQkxcAGRhto2F+MaYIt0CjFDYjZJXUrPWfMU8ebFV2ATsJ2
	 nLiGz5FEul9ig==
Date: Tue, 5 Sep 2023 17:29:36 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Vikram Garhwal <vikram.garhwal@amd.com>
cc: xen-devel@lists.xenproject.org, julien@xen.org, michal.orzel@amd.com, 
    sstabellini@kernel.org
Subject: Re: [XEN][PATCH v11 10/20] xen/iommu: protect iommu_add_dt_device()
 with dtdevs_lock
In-Reply-To: <20230901045947.32351-11-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309051729200.6458@ubuntu-linux-20-04-desktop>
References: <20230901045947.32351-1-vikram.garhwal@amd.com> <20230901045947.32351-11-vikram.garhwal@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 31 Aug 2023, Vikram Garhwal wrote:
> Protect iommu_add_dt_device() with dtdevs_lock to prevent concurrent access
> to add/remove/assign/deassign.
> With addition of dynamic programming feature(follow-up patches in this series),
> this function can be concurrently accessed by dynamic node add/remove using
> device tree overlays.
> 
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> Reviewed-by: Luca Fancellu <luca.fancellu@arm.com>
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>     Changes from v7:
>         Update commit message and fix indent.
> ---
> ---
>  xen/drivers/passthrough/device_tree.c | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
> index a7d86a20a0..687c61e7da 100644
> --- a/xen/drivers/passthrough/device_tree.c
> +++ b/xen/drivers/passthrough/device_tree.c
> @@ -147,6 +147,8 @@ int iommu_add_dt_device(struct dt_device_node *np)
>      if ( dev_iommu_fwspec_get(dev) )
>          return 0;
>  
> +    spin_lock(&dtdevs_lock);
> +
>      /*
>       * According to the Documentation/devicetree/bindings/iommu/iommu.txt
>       * from Linux.
> @@ -159,7 +161,10 @@ int iommu_add_dt_device(struct dt_device_node *np)
>           * these callback implemented.
>           */
>          if ( !ops->add_device || !ops->dt_xlate )
> -            return -EINVAL;
> +        {
> +            rc = -EINVAL;
> +            goto fail;
> +        }
>  
>          if ( !dt_device_is_available(iommu_spec.np) )
>              break;
> @@ -190,6 +195,8 @@ int iommu_add_dt_device(struct dt_device_node *np)
>      if ( rc < 0 )
>          iommu_fwspec_free(dev);
>  
> + fail:
> +    spin_unlock(&dtdevs_lock);
>      return rc;
>  }
>  
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 00:35:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 00:35:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595946.929638 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgW0-0002bV-PM; Wed, 06 Sep 2023 00:35:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595946.929638; Wed, 06 Sep 2023 00:35:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgW0-0002bO-Mo; Wed, 06 Sep 2023 00:35:28 +0000
Received: by outflank-mailman (input) for mailman id 595946;
 Wed, 06 Sep 2023 00:35:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdgVz-0002bI-Kf
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 00:35:27 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4440181f-4c4d-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 02:35:25 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id BBC1F60EB2;
 Wed,  6 Sep 2023 00:35:22 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 04966C433C8;
 Wed,  6 Sep 2023 00:35:20 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4440181f-4c4d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693960522;
	bh=n0mdlCk5d5mJrNIcJq8q6zBCzeM0MuXkx8QhLEshiXE=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=jcZZGaWwZxeZnZ8d9k2w0h3m5wKv7uM1D5RF300C/7hIRqJaRa4Zd7io8u2Ulj/KN
	 MCBhWQXoPh7pc1C8f9bCMyte6l7apDCoYxn/9bieuI+3R1cuEuO34rFKwjIdr91+8d
	 B7YbtL5fohCQ2nl2pxqZU6uh8kMwLRrSToaVL2YEEvmnTc+mbtnW943GolzID4nL19
	 f0oau8l+BS32jl67ewV3fcKyGvTUP1kn6LfZt8skLL67q25iUAnu4e9QBAHXGkz6OL
	 g7y9Y2GvtPdgY0NlDPlYmGN3RsGnYta5CCbGDAmGtBBwe3wz5ZSPQ1fnaIzVIVDGAV
	 LeFbZSUW5Ea9w==
Date: Tue, 5 Sep 2023 17:35:19 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Michal Orzel <michal.orzel@amd.com>
cc: Vikram Garhwal <vikram.garhwal@amd.com>, xen-devel@lists.xenproject.org, 
    julien@xen.org, sstabellini@kernel.org, Jan Beulich <jbeulich@suse.com>, 
    Paul Durrant <paul@xen.org>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Subject: Re: [XEN][PATCH v11 11/20] xen/iommu: Introduce
 iommu_remove_dt_device()
In-Reply-To: <0578e1fc-4999-b375-6805-5c980dad41c4@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309051734560.6458@ubuntu-linux-20-04-desktop>
References: <20230901045947.32351-1-vikram.garhwal@amd.com> <20230901045947.32351-12-vikram.garhwal@amd.com> <0578e1fc-4999-b375-6805-5c980dad41c4@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 4 Sep 2023, Michal Orzel wrote:
> On 01/09/2023 06:59, Vikram Garhwal wrote:
> > Remove master device from the IOMMU. This will be helpful when removing the
> > overlay nodes using dynamic programming during run time.
> > 
> > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> > 
> > ---
> > Changes from v10:
> >     Add comment regarding return values of iommu_remove_dt_device().
> >     Add ASSERT to check if is_protected is removed or not.
> > Changes from v7:
> >     Add check if IOMMU is enabled.
> >     Fix indentation of fail.
> > ---
> > ---
> >  xen/drivers/passthrough/device_tree.c | 43 +++++++++++++++++++++++++++
> >  xen/include/xen/iommu.h               | 10 +++++++
> >  2 files changed, 53 insertions(+)
> > 
> > diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
> > index 687c61e7da..80f6efc606 100644
> > --- a/xen/drivers/passthrough/device_tree.c
> > +++ b/xen/drivers/passthrough/device_tree.c
> > @@ -127,6 +127,49 @@ int iommu_release_dt_devices(struct domain *d)
> >      return 0;
> >  }
> >  
> > +int iommu_remove_dt_device(struct dt_device_node *np)
> > +{
> > +    const struct iommu_ops *ops = iommu_get_ops();
> > +    struct device *dev = dt_to_dev(np);
> > +    int rc;
> > +
> > +    if ( !iommu_enabled )
> > +        return 1;
> > +
> > +    if ( !ops )
> > +        return -EOPNOTSUPP;
> > +
> > +    spin_lock(&dtdevs_lock);
> > +
> > +    if ( iommu_dt_device_is_assigned_locked(np) )
> > +    {
> > +        rc = -EBUSY;
> > +        goto fail;
> > +    }
> > +
> > +    if ( !ops->remove_device )
> > +    {
> > +        rc = -EOPNOTSUPP;
> > +        goto fail;
> > +    }
> > +
> > +    /*
> > +     * De-register the device from the IOMMU driver.
> > +     * The driver is responsible for removing is_protected flag.
> > +     */
> > +    rc = ops->remove_device(0, dev);
> > +
> > +    if ( !rc )
> > +    {
> > +        ASSERT(!dt_device_is_protected(np));
> > +        iommu_fwspec_free(dev);
> > +    }
> > +
> > + fail:
> > +    spin_unlock(&dtdevs_lock);
> > +    return rc;
> > +}
> > +
> >  int iommu_add_dt_device(struct dt_device_node *np)
> >  {
> >      const struct iommu_ops *ops = iommu_get_ops();
> > diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
> > index a18b68e247..84bd77395e 100644
> > --- a/xen/include/xen/iommu.h
> > +++ b/xen/include/xen/iommu.h
> > @@ -235,6 +235,16 @@ int iommu_add_dt_device(struct dt_device_node *np);
> >  int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
> >                         XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl);
> >  
> > +/*
> > + * Helper to remove master device from the IOMMU.
> > + *
> > + * Return values:
> > + *  0 : device is de-registerd from IOMMU.
> s/registerd/registered/
> 
> > + * <0 : error while removing the device from IOMMU.
> > + * >0 : IOMMU is not enabled/present or device is not connected to it.
> The first part refers to "iommu_enabled" but I cannot see how you check for the second part
> (and return >0).

Yes I would remove "or device is not connected to it". It can be done on
commit.


> Apart from that:
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 00:38:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 00:38:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595952.929649 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgYc-0003CT-5K; Wed, 06 Sep 2023 00:38:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595952.929649; Wed, 06 Sep 2023 00:38:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgYc-0003CM-2j; Wed, 06 Sep 2023 00:38:10 +0000
Received: by outflank-mailman (input) for mailman id 595952;
 Wed, 06 Sep 2023 00:38:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdgYa-0003CG-Vk
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 00:38:08 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a428ac37-4c4d-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 02:38:06 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id B5AA4CE1369;
 Wed,  6 Sep 2023 00:38:01 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id E50E8C433C8;
 Wed,  6 Sep 2023 00:37:58 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a428ac37-4c4d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693960680;
	bh=hM7OMAxRm413QcZmV4y9sDYXYEsHrgIGYRmgfM+mfBk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=FIJZaawMu/gSYZhnXp+k5fW1cNDAChfv4stmQ/Vio++ESgd5okCFP8oxTfQMpMKY2
	 KspjW9ACfWBeSXYZOrE81tn2/juJGTnm0Zsm8rO+KZUrd/IsHMRi44GxpgRntd7Q+x
	 JKD3EnjTIVFgMnibbgA/5U/eNBM+ZF17tceh69/GLlDbSEHObjQH0HhALAQ+dAFfsb
	 k6vbODwouEVFCjPT0mu4UMvYMj1p3gHRJ9y26kUTBn7oVCTIZEMiZ686Sl6z+1hpDu
	 vr7GoARoPax71zjk3cYvPUUa2zIu0TnTu+2ZdfqCOYISGowECutJ14mhLCxQ1D3/fF
	 xkhqoU71rF8pg==
Date: Tue, 5 Sep 2023 17:37:56 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Michal Orzel <michal.orzel@amd.com>
cc: Vikram Garhwal <vikram.garhwal@amd.com>, xen-devel@lists.xenproject.org, 
    julien@xen.org, sstabellini@kernel.org, Rahul Singh <rahul.singh@arm.com>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN][PATCH v11 12/20] xen/smmu: Add remove_device callback for
 smmu_iommu ops
In-Reply-To: <dca9c2b9-aeaf-3628-de2a-846e1b92a0c4@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309051736580.6458@ubuntu-linux-20-04-desktop>
References: <20230901045947.32351-1-vikram.garhwal@amd.com> <20230901045947.32351-13-vikram.garhwal@amd.com> <dca9c2b9-aeaf-3628-de2a-846e1b92a0c4@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 4 Sep 2023, Michal Orzel wrote:
> On 01/09/2023 06:59, Vikram Garhwal wrote:
> > Add remove_device callback for removing the device entry from smmu-master using
> > following steps:
> > 1. Find if SMMU master exists for the device node.
> > 2. Check if device is currently in use.
> Just like in v10: you are not checking it. I asked you to add a check following Julien suggestion
> but you did not reply to it. Even if you do not want to add this extra layer of protection, you
> should mention that you rely on a check in iommu_remove_dt_device() instead. You can wait for Stefano
> to give his opinion (and possibly ack this patch as is).

Yes I would have appreciated a reply on the list. I'll ack it as is.

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 00:42:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 00:42:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595959.929658 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgcX-0004zW-Mf; Wed, 06 Sep 2023 00:42:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595959.929658; Wed, 06 Sep 2023 00:42:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgcX-0004zP-KD; Wed, 06 Sep 2023 00:42:13 +0000
Received: by outflank-mailman (input) for mailman id 595959;
 Wed, 06 Sep 2023 00:42:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdgcW-0004zJ-IP
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 00:42:12 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 368796c4-4c4e-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 02:42:11 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 8387160EB2;
 Wed,  6 Sep 2023 00:42:09 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id E8F5AC433C7;
 Wed,  6 Sep 2023 00:42:07 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 368796c4-4c4e-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693960928;
	bh=4g6yjLjb05lD8yhE8Udv193WIPJtl/okthMcWiSnY+0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=VXjz+zUQLSrn/1m266OQcebmWnnp3Nqj6RTKHrEvgUeHSoS9IkYPjmPm5w4DFdSU9
	 hbrxpc9hQlStN/RjN4IeT3hiCtItkrCp/sYM8uOiD5QBCEiWWZJlsdR2SKR9uY0ibB
	 7p2/RdBrtpP9cnEkd/fyXLF8ze5DtS91s3HfaRS55hmMesak3wmKQuiQq+wrWV/3An
	 Td2Otae6MDW7nWL3FHzyfM6Gtb1k9iTAjhT030e42AZfVv60Zjehs/8Qux1i42K/cY
	 O+xm8ewwQl2AGS3HVQOhnITRO7ct6nZnMIJXQpfzo91hFrPneOt1YVAfeYCI68DpjX
	 8IKa+j2F0uQ1w==
Date: Tue, 5 Sep 2023 17:42:06 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Michal Orzel <michal.orzel@amd.com>
cc: Vikram Garhwal <vikram.garhwal@amd.com>, xen-devel@lists.xenproject.org, 
    julien@xen.org, sstabellini@kernel.org, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN][PATCH v11 15/20] arm/asm/setup.h: Update struct map_range_data
 to add rangeset.
In-Reply-To: <eb2c932d-c096-55bf-aec3-a8e311f4a6d7@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309051741560.6458@ubuntu-linux-20-04-desktop>
References: <20230901045947.32351-1-vikram.garhwal@amd.com> <20230901045947.32351-16-vikram.garhwal@amd.com> <eb2c932d-c096-55bf-aec3-a8e311f4a6d7@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 4 Sep 2023, Michal Orzel wrote:
> On 01/09/2023 06:59, Vikram Garhwal wrote:
> > Add rangesets for IRQs and IOMEMs. This was done to accommodate dynamic overlay
> > node addition/removal operations. With overlay operations, new IRQs and IOMEMs
> > are added in dt_host and routed. While removing overlay nodes, nodes are removed
> > from dt_host and their IRQs and IOMEMs routing is also removed. Storing IRQs and
> > IOMEMs in the rangeset will avoid re-parsing the device tree nodes to get the
> > IOMEM and IRQ ranges for overlay remove ops.
> > 
> > Dynamic overlay node add/remove will be introduced in follow-up patches.
> > 
> > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> > 
> > ---
> > Changes from v10:
> >     Replace paddr_to_pfn(PAGE_ALIGN()) with paddr_to_pfn_aligned().
> >     Change data type of irq.
> >     fix function change for handle_device().
> >     Remove unnecessary change .d = d in mr_data.
> > ---
> > ---
> >  xen/arch/arm/device.c            | 43 +++++++++++++++++++++++++-------
> >  xen/arch/arm/domain_build.c      |  4 +--
> >  xen/arch/arm/include/asm/setup.h |  9 ++++---
> >  3 files changed, 42 insertions(+), 14 deletions(-)
> > 
> > diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
> > index 327e4d24fb..1f631d3274 100644
> > --- a/xen/arch/arm/device.c
> > +++ b/xen/arch/arm/device.c
> > @@ -165,6 +165,15 @@ int map_range_to_domain(const struct dt_device_node *dev,
> >      dt_dprintk("  - MMIO: %010"PRIx64" - %010"PRIx64" P2MType=%x\n",
> >                 addr, addr + len, mr_data->p2mt);
> >  
> > +    if ( mr_data->iomem_ranges )
> > +    {
> > +        res = rangeset_add_range(mr_data->iomem_ranges,
> > +                                 paddr_to_pfn(addr),
> > +                                 paddr_to_pfn_aligned(addr + len - 1));
> > +        if ( res )
> > +            return res;
> > +    }
> > +
> >      return 0;
> >  }
> >  
> > @@ -178,10 +187,11 @@ int map_range_to_domain(const struct dt_device_node *dev,
> >   */
> >  int map_device_irqs_to_domain(struct domain *d,
> >                                struct dt_device_node *dev,
> > -                              bool need_mapping)
> > +                              bool need_mapping,
> > +                              struct rangeset *irq_ranges)
> >  {
> >      unsigned int i, nirq;
> > -    int res;
> > +    int res, irq;
> You could make use of res to store irq just as it was done before without introducing new local var.
> Anyway, if you think it improves readability:
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 00:48:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 00:48:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595967.929669 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgiU-00060y-D0; Wed, 06 Sep 2023 00:48:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595967.929669; Wed, 06 Sep 2023 00:48:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgiU-00060r-8z; Wed, 06 Sep 2023 00:48:22 +0000
Received: by outflank-mailman (input) for mailman id 595967;
 Wed, 06 Sep 2023 00:48:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdgiT-00060j-3J
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 00:48:21 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 121ce651-4c4f-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 02:48:18 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id E5C44B8181E;
 Wed,  6 Sep 2023 00:48:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8C040C433C8;
 Wed,  6 Sep 2023 00:48:14 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 121ce651-4c4f-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693961296;
	bh=U+Y+16W7SB/e6Vhj0riwqhinkFZOpxoG8o8LzzKQmFc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=iyJlDhLcS343ktjhJayQDt5A5hpj+WMFTk4iXVq8z4nWvnO3g7xcdrep1b77pi7v9
	 GCpPSXihYKKNC32cNnGH8cbvumQjslBEB68luZa5QcPIECulRhHcTzhJ++FTk/z3hf
	 lW+0WdENJjwlwH+5RaOIAkkZbfUan5hmvenwMRf2WfJs79fiph6zY3cKywDFqnxe2x
	 3+U+LAj5t2ga9x15UimZzu2PHZICgs5+EWv83uL9fnVuhbQVAOMo6R8lndp6NOF33X
	 CZJwTYPUL0xHdmCezlwdECslrDMk8qQVxTWcO7SYMrlQytSMvCeZtUxuENGTOKKXW6
	 obvsfXCvVbm4Q==
Date: Tue, 5 Sep 2023 17:48:12 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Vikram Garhwal <vikram.garhwal@amd.com>
cc: xen-devel@lists.xenproject.org, julien@xen.org, michal.orzel@amd.com, 
    sstabellini@kernel.org, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Wei Liu <wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN][PATCH v11 16/20] xen/arm: Implement device tree node
 removal functionalities
In-Reply-To: <20230901045947.32351-17-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309051747090.6458@ubuntu-linux-20-04-desktop>
References: <20230901045947.32351-1-vikram.garhwal@amd.com> <20230901045947.32351-17-vikram.garhwal@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 31 Aug 2023, Vikram Garhwal wrote:
> Introduce sysctl XEN_SYSCTL_dt_overlay to remove device-tree nodes added using
> device tree overlay.
> 
> xl dt-overlay remove file.dtbo:
>     Removes all the nodes in a given dtbo.
>     First, removes IRQ permissions and MMIO accesses. Next, it finds the nodes
>     in dt_host and delete the device node entries from dt_host.
> 
>     The nodes get removed only if it is not used by any of dom0 or domio.
> 
> Also, added overlay_track struct to keep the track of added node through device
> tree overlay. overlay_track has dt_host_new which is unflattened form of updated
> fdt and name of overlay nodes. When a node is removed, we also free the memory
> used by overlay_track for the particular overlay node.
> 
> Nested overlay removal is supported in sequential manner only i.e. if
> overlay_child nests under overlay_parent, it is assumed that user first removes
> overlay_child and then removes overlay_parent.
> Also, this is an experimental feature so it is expected from user to make sure
> correct device tree overlays are used when adding nodes and making sure devices
> are not being used by other domain before removing them from Xen tree.
> Partially added/removed i.e. failures while removing the overlay may cause other
> failures and might need a system reboot.
> 
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> Changes from v10:
>     Add iommu_remove_dt_device if device has IOMMU added.
> Changes from v9:
>     Remove iommu and IRQ routing as this will not be done while adding the nodes.
> Changes from v8:
>     Remove IRQs and IOMMU entries using rangesets instead of parsing each node.
> Changes from v7:
>     Add dt-overlay.c in MAINTAINERS.
>     Add comments for dt_overlay_remove_node.
>     Rename handle_remove_irq_iommu() to remove_resources().
>     Add comment regarding false mapping flag for reason behind not removing the
>     mapping..
>     Remove irq_access_premitted() check.
>     Add error handling for remove_all_descendant_nodes
>     Change read_lock with write_lock.
>     Remove check_overlay_fdt() call from handle_remove_overlay_nodes().
>     Re-organize dt_sysctl and reutnr -EOPNOSTSUPP for error cases. Also, renamed
>         this function to dt_overlay_sysctl.
>     Remove unnecessary header includes in dt-overlay.h
>     Correct indentation and make func   tion inputs const wherever possible.
>     Make overlay_fdt const_void inside xen_sysctl_dt_overlay{}.
>     Add comment regarding why we not removing IRQ and MMIO mappings.
>     Move overlay_node_count() out of this patch as it's not being used here
>         anymore.
> Changes from v6:
>     Add explicit padding for xen_system_dt_overlay{}
>     Update license.
>     Rearrange xfree in dt_sysctl()
>     Update overlay_track struct comment with relevant message.
>     Fix missing xen/errno.h for builds without CONFIG_OVERLAY_DTB cases.
>     Fix header formatting.
> ---
> ---
>  MAINTAINERS                  |   1 +
>  xen/arch/arm/sysctl.c        |  16 +-
>  xen/common/Makefile          |   1 +
>  xen/common/dt-overlay.c      | 406 +++++++++++++++++++++++++++++++++++
>  xen/include/public/sysctl.h  |  24 +++
>  xen/include/xen/dt-overlay.h |  63 ++++++
>  6 files changed, 510 insertions(+), 1 deletion(-)
>  create mode 100644 xen/common/dt-overlay.c
>  create mode 100644 xen/include/xen/dt-overlay.h
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index bf71ac144c..d320233538 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -301,6 +301,7 @@ M:	Julien Grall <julien@xen.org>
>  S:	Supported
>  F:	xen/common/libfdt/
>  F:	xen/common/device_tree.c
> +F:	xen/common/dt-overlay.c
>  F:	xen/include/xen/libfdt/
>  F:	xen/include/xen/device_tree.h
>  F:	xen/drivers/passthrough/device_tree.c
> diff --git a/xen/arch/arm/sysctl.c b/xen/arch/arm/sysctl.c
> index e9a0661146..5cda0dc674 100644
> --- a/xen/arch/arm/sysctl.c
> +++ b/xen/arch/arm/sysctl.c
> @@ -9,6 +9,7 @@
>  
>  #include <xen/types.h>
>  #include <xen/lib.h>
> +#include <xen/dt-overlay.h>
>  #include <xen/errno.h>
>  #include <xen/hypercall.h>
>  #include <asm/arm64/sve.h>
> @@ -25,7 +26,20 @@ void arch_do_physinfo(struct xen_sysctl_physinfo *pi)
>  long arch_do_sysctl(struct xen_sysctl *sysctl,
>                      XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl)
>  {
> -    return -ENOSYS;
> +    long ret;
> +
> +    switch ( sysctl->cmd )
> +    {
> +    case XEN_SYSCTL_dt_overlay:
> +        ret = dt_overlay_sysctl(&sysctl->u.dt_overlay);
> +        break;
> +
> +    default:
> +        ret = -ENOSYS;
> +        break;
> +    }
> +
> +    return ret;
>  }
>  
>  /*
> diff --git a/xen/common/Makefile b/xen/common/Makefile
> index 46049eac35..e7e96b1087 100644
> --- a/xen/common/Makefile
> +++ b/xen/common/Makefile
> @@ -8,6 +8,7 @@ obj-$(CONFIG_DEBUG_TRACE) += debugtrace.o
>  obj-$(CONFIG_HAS_DEVICE_TREE) += device_tree.o
>  obj-$(CONFIG_IOREQ_SERVER) += dm.o
>  obj-y += domain.o
> +obj-$(CONFIG_OVERLAY_DTB) += dt-overlay.o
>  obj-y += event_2l.o
>  obj-y += event_channel.o
>  obj-y += event_fifo.o
> diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c
> new file mode 100644
> index 0000000000..7b7224c29a
> --- /dev/null
> +++ b/xen/common/dt-overlay.c
> @@ -0,0 +1,406 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
> +/*
> + * xen/common/dt-overlay.c
> + *
> + * Device tree overlay support in Xen.
> + *
> + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved.
> + * Written by Vikram Garhwal <vikram.garhwal@amd.com>
> + *
> + */
> +#include <asm/domain_build.h>
> +#include <xen/dt-overlay.h>
> +#include <xen/guest_access.h>
> +#include <xen/iocap.h>
> +#include <xen/libfdt/libfdt.h>
> +#include <xen/xmalloc.h>
> +
> +static LIST_HEAD(overlay_tracker);
> +static DEFINE_SPINLOCK(overlay_lock);
> +
> +/* Find last descendants of the device_node. */
> +static struct dt_device_node *
> +find_last_descendants_node(const struct dt_device_node *device_node)
> +{
> +    struct dt_device_node *child_node;
> +
> +    for ( child_node = device_node->child; child_node->sibling != NULL;
> +          child_node = child_node->sibling );
> +
> +    /* If last child_node also have children. */
> +    if ( child_node->child )
> +        child_node = find_last_descendants_node(child_node);
> +
> +    return child_node;
> +}
> +
> +static int dt_overlay_remove_node(struct dt_device_node *device_node)
> +{
> +    struct dt_device_node *np;
> +    struct dt_device_node *parent_node;
> +    struct dt_device_node *last_descendant = device_node->child;
> +
> +    parent_node = device_node->parent;
> +
> +    /* Check if we are trying to remove "/" i.e. root node. */
> +    if ( parent_node == NULL )
> +    {
> +        dt_dprintk("%s's parent node not found\n", device_node->name);
> +        return -EFAULT;
> +    }
> +
> +    /* Sanity check for linking between parent and child node. */
> +    np = parent_node->child;
> +    if ( np == NULL )
> +    {
> +        dt_dprintk("parent node %s's not found\n", parent_node->name);
> +        return -EFAULT;
> +    }
> +
> +    /* If node to be removed is only child node or first child. */
> +    if ( !dt_node_cmp(np->full_name, device_node->full_name) )
> +    {
> +        parent_node->child = np->sibling;
> +
> +        /*
> +         * Iterate over all child nodes of device_node. Given that we are
> +         * removing a node, we need to remove all it's descendants too.
> +         * Reason behind finding last_descendant:
> +         * If device_node has multiple children, device_node->allnext will point
> +         * to first_child and first_child->allnext will be a sibling. When the
> +         * device_node and it's all children are removed, parent_node->allnext
> +         * should point to node next to last children.
> +         */
> +        if ( last_descendant )
> +        {
> +            last_descendant = find_last_descendants_node(device_node);
> +            parent_node->allnext = last_descendant->allnext;
> +        }
> +        else
> +            parent_node->allnext = np->allnext;
> +
> +        return 0;
> +    }
> +
> +    for ( np = parent_node->child; np->sibling != NULL; np = np->sibling )
> +    {
> +        if ( !dt_node_cmp(np->sibling->full_name, device_node->full_name) )
> +        {
> +            /* Found the node. Now we remove it. */
> +            np->sibling = np->sibling->sibling;
> +
> +            if ( np->child )
> +                np = find_last_descendants_node(np);
> +
> +            /*
> +             * Iterate over all child nodes of device_node. Given that we are
> +             * removing parent node, we need to remove all it's descendants too.
> +             */
> +            if ( last_descendant )
> +                last_descendant = find_last_descendants_node(device_node);
> +
> +            if ( last_descendant )
> +                np->allnext = last_descendant->allnext;
> +            else
> +                np->allnext = np->allnext->allnext;
> +
> +            break;
> +        }
> +    }
> +
> +    return 0;
> +}
> +
> +/* Basic sanity check for the dtbo tool stack provided to Xen. */
> +static int check_overlay_fdt(const void *overlay_fdt, uint32_t overlay_fdt_size)
> +{
> +    if ( (fdt_totalsize(overlay_fdt) != overlay_fdt_size) ||
> +          fdt_check_header(overlay_fdt) )
> +    {
> +        printk(XENLOG_ERR "The overlay FDT is not a valid Flat Device Tree\n");
> +        return -EINVAL;
> +    }
> +
> +    return 0;
> +}
> +
> +static int irq_remove_cb(unsigned long s, unsigned long e, void *dom,
> +                         unsigned long *c)
> +{
> +    int rc;
> +    struct domain *d = dom;
> +
> +    /*
> +     * TODO: We don't handle shared IRQs for now. So, it is assumed that
> +     * the IRQs was not shared with another devices.
> +     * TODO: Undo the IRQ routing.
> +     */
> +    rc = irq_deny_access(d, s);
> +    if ( rc )
> +    {
> +        printk(XENLOG_ERR "unable to revoke access for irq %lu\n", s);
> +    }
> +    else
> +        *c += e - s + 1;
> +
> +    return rc;
> +
> +}
> +
> +static int iomem_remove_cb(unsigned long s, unsigned long e, void *dom,
> +                           unsigned long *c)
> +{
> +    int rc;
> +    struct domain *d = dom;
> +
> +    /*
> +    * Remove mmio access.
> +    * TODO: Support for remove/add the mapping in P2M.
> +    */
> +    rc = iomem_deny_access(d, s, e);
> +    if ( rc )
> +    {
> +        printk(XENLOG_ERR "Unable to remove dom%d access to"
> +               " 0x%"PRIx64" - 0x%"PRIx64"\n",
> +               d->domain_id,
> +               s & PAGE_MASK, PAGE_ALIGN(e) - 1);
> +    }
> +    else
> +        *c += e - s + 1;
> +
> +    return rc;
> +}
> +
> +/* Check if node itself can be removed and remove node from IOMMU. */
> +static int remove_node_resources(struct dt_device_node *device_node)
> +{
> +    int rc = 0;
> +    unsigned int len;
> +    domid_t domid;
> +
> +    domid = dt_device_used_by(device_node);
> +
> +    dt_dprintk("Checking if node %s is used by any domain\n",
> +               device_node->full_name);
> +
> +    /* Remove the node if only it's assigned to hardware domain or domain io. */
> +    if ( domid != hardware_domain->domain_id && domid != DOMID_IO )
> +    {
> +        printk(XENLOG_ERR "Device %s is being used by domain %u. Removing nodes failed\n",
> +               device_node->full_name, domid);
> +        return -EINVAL;
> +    }
> +
> +    /* Check if iommu property exists. */
> +    if ( dt_get_property(device_node, "iommus", &len) )
> +    {
> +        if ( dt_device_is_protected(device_node) )
> +        {
> +            rc = iommu_remove_dt_device(device_node);
> +            if ( rc < 0 )
> +                return rc;
> +        }
> +    }
> +
> +    return rc;
> +}
> +
> +/* Remove all descendants from IOMMU. */
> +static int
> +remove_descendant_nodes_resources(const struct dt_device_node *device_node)
> +{
> +    int rc = 0;
> +    struct dt_device_node *child_node;
> +
> +    for ( child_node = device_node->child; child_node != NULL;
> +         child_node = child_node->sibling )
> +    {
> +        if ( child_node->child )
> +        {
> +            rc = remove_descendant_nodes_resources(child_node);
> +            if ( rc )
> +                return rc;
> +        }
> +
> +        rc = remove_node_resources(child_node);
> +        if ( rc )
> +            return rc;
> +    }
> +
> +    return rc;
> +}
> +
> +/* Remove nodes from dt_host. */
> +static int remove_nodes(const struct overlay_track *tracker)
> +{
> +    int rc = 0;
> +    struct dt_device_node *overlay_node;
> +    unsigned int j;
> +    struct domain *d = hardware_domain;
> +
> +    for ( j = 0; j < tracker->num_nodes; j++ )
> +    {
> +        overlay_node = (struct dt_device_node *)tracker->nodes_address[j];
> +        if ( overlay_node == NULL )
> +        {
> +            printk(XENLOG_ERR "Device %s is not present in the tree. Removing nodes failed\n",
> +                   overlay_node->full_name);
> +            return -EINVAL;
> +        }
> +
> +        rc = remove_descendant_nodes_resources(overlay_node);
> +        if ( rc )
> +            return rc;
> +
> +        rc = remove_node_resources(overlay_node);
> +        if ( rc )
> +            return rc;
> +
> +        dt_dprintk("Removing node: %s\n", overlay_node->full_name);
> +
> +        write_lock(&dt_host_lock);
> +
> +        rc = dt_overlay_remove_node(overlay_node);
> +        if ( rc )
> +        {
> +            write_unlock(&dt_host_lock);
> +            return rc;
> +        }
> +
> +        write_unlock(&dt_host_lock);
> +    }
> +
> +    /* Remove IRQ access. */
> +    if ( tracker->irq_ranges )
> +    {
> +        rc = rangeset_consume_ranges(tracker->irq_ranges, irq_remove_cb, d);
> +        if ( rc )
> +            return rc;
> +    }
> +
> +   /* Remove mmio access. */
> +    if ( tracker->iomem_ranges )
> +    {
> +        rc = rangeset_consume_ranges(tracker->iomem_ranges, iomem_remove_cb, d);
> +        if ( rc )
> +            return rc;
> +    }
> +
> +    return rc;
> +}
> +
> +/*
> + * First finds the device node to remove. Check if the device is being used by
> + * any dom and finally remove it from dt_host. IOMMU is already being taken care
> + * while destroying the domain.
> + */
> +static long handle_remove_overlay_nodes(const void *overlay_fdt,
> +                                        uint32_t overlay_fdt_size)
> +{
> +    int rc;
> +    struct overlay_track *entry, *temp, *track;
> +    bool found_entry = false;
> +
> +    rc = check_overlay_fdt(overlay_fdt, overlay_fdt_size);
> +    if ( rc )
> +        return rc;
> +
> +    spin_lock(&overlay_lock);
> +
> +    /*
> +     * First check if dtbo is correct i.e. it should one of the dtbo which was
> +     * used when dynamically adding the node.
> +     * Limitation: Cases with same node names but different property are not
> +     * supported currently. We are relying on user to provide the same dtbo
> +     * as it was used when adding the nodes.
> +     */
> +    list_for_each_entry_safe( entry, temp, &overlay_tracker, entry )
> +    {
> +        if ( memcmp(entry->overlay_fdt, overlay_fdt, overlay_fdt_size) == 0 )
> +        {
> +            track = entry;
> +            found_entry = true;
> +            break;
> +        }
> +    }
> +
> +    if ( !found_entry )
> +    {
> +        rc = -EINVAL;
> +
> +        printk(XENLOG_ERR "Cannot find any matching tracker with input dtbo."
> +               " Removing nodes is supported only for prior added dtbo.\n");
> +        goto out;
> +
> +    }
> +
> +    rc = remove_nodes(entry);
> +    if ( rc )
> +    {
> +        printk(XENLOG_ERR "Removing node failed\n");
> +        goto out;
> +    }
> +
> +    list_del(&entry->entry);
> +
> +    xfree(entry->dt_host_new);
> +    xfree(entry->fdt);
> +    xfree(entry->overlay_fdt);
> +
> +    xfree(entry->nodes_address);
> +
> +    rangeset_destroy(entry->irq_ranges);
> +    rangeset_destroy(entry->iomem_ranges);
> +
> +    xfree(entry);
> +
> + out:
> +    spin_unlock(&overlay_lock);
> +    return rc;
> +}
> +
> +long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op)
> +{
> +    long ret;
> +    void *overlay_fdt;
> +
> +    if ( op->overlay_op != XEN_SYSCTL_DT_OVERLAY_ADD &&
> +         op->overlay_op != XEN_SYSCTL_DT_OVERLAY_REMOVE )
> +        return -EOPNOTSUPP;
> +
> +    if ( op->overlay_fdt_size == 0 || op->overlay_fdt_size > KB(500) )
> +        return -EINVAL;
> +
> +    if ( op->pad[0] || op->pad[1] || op->pad[2] )
> +        return -EINVAL;
> +
> +    overlay_fdt = xmalloc_bytes(op->overlay_fdt_size);
> +
> +    if ( overlay_fdt == NULL )
> +        return -ENOMEM;
> +
> +    ret = copy_from_guest(overlay_fdt, op->overlay_fdt, op->overlay_fdt_size);
> +    if ( ret )
> +    {
> +        gprintk(XENLOG_ERR, "copy from guest failed\n");
> +        xfree(overlay_fdt);
> +
> +        return -EFAULT;
> +    }
> +
> +    if ( op->overlay_op == XEN_SYSCTL_DT_OVERLAY_REMOVE )
> +        ret = handle_remove_overlay_nodes(overlay_fdt, op->overlay_fdt_size);
> +
> +    xfree(overlay_fdt);
> +
> +    return ret;
> +}
> +
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
> diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h
> index 3975050248..f1eba78405 100644
> --- a/xen/include/public/sysctl.h
> +++ b/xen/include/public/sysctl.h
> @@ -1185,6 +1185,25 @@ typedef struct xen_sysctl_cpu_policy xen_sysctl_cpu_policy_t;
>  DEFINE_XEN_GUEST_HANDLE(xen_sysctl_cpu_policy_t);
>  #endif
>  
> +#if defined(__arm__) || defined (__aarch64__)
> +/*
> + * XEN_SYSCTL_dt_overlay
> + * Performs addition/removal of device tree nodes under parent node using dtbo.
> + * This does in three steps:
> + *  - Adds/Removes the nodes from dt_host.
> + *  - Adds/Removes IRQ permission for the nodes.
> + *  - Adds/Removes MMIO accesses.
> + */
> +struct xen_sysctl_dt_overlay {
> +    XEN_GUEST_HANDLE_64(const_void) overlay_fdt;  /* IN: overlay fdt. */
> +    uint32_t overlay_fdt_size;              /* IN: Overlay dtb size. */
> +#define XEN_SYSCTL_DT_OVERLAY_ADD                   1
> +#define XEN_SYSCTL_DT_OVERLAY_REMOVE                2
> +    uint8_t overlay_op;                     /* IN: Add or remove. */
> +    uint8_t pad[3];                         /* IN: Must be zero. */
> +};
> +#endif
> +
>  struct xen_sysctl {
>      uint32_t cmd;
>  #define XEN_SYSCTL_readconsole                    1
> @@ -1215,6 +1234,7 @@ struct xen_sysctl {
>  #define XEN_SYSCTL_livepatch_op                  27
>  /* #define XEN_SYSCTL_set_parameter              28 */
>  #define XEN_SYSCTL_get_cpu_policy                29
> +#define XEN_SYSCTL_dt_overlay                    30
>      uint32_t interface_version; /* XEN_SYSCTL_INTERFACE_VERSION */
>      union {
>          struct xen_sysctl_readconsole       readconsole;
> @@ -1245,6 +1265,10 @@ struct xen_sysctl {
>  #if defined(__i386__) || defined(__x86_64__)
>          struct xen_sysctl_cpu_policy        cpu_policy;
>  #endif
> +
> +#if defined(__arm__) || defined (__aarch64__)
> +        struct xen_sysctl_dt_overlay        dt_overlay;
> +#endif
>          uint8_t                             pad[128];
>      } u;
>  };
> diff --git a/xen/include/xen/dt-overlay.h b/xen/include/xen/dt-overlay.h
> new file mode 100644
> index 0000000000..c0567741ee
> --- /dev/null
> +++ b/xen/include/xen/dt-overlay.h
> @@ -0,0 +1,63 @@
> + /* SPDX-License-Identifier: GPL-2.0-only */
> + /*
> + * xen/dt-overlay.h
> + *
> + * Device tree overlay support in Xen.
> + *
> + * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved.
> + * Written by Vikram Garhwal <vikram.garhwal@amd.com>
> + *
> + */
> +#ifndef __XEN_DT_OVERLAY_H__
> +#define __XEN_DT_OVERLAY_H__
> +
> +#include <xen/device_tree.h>
> +#include <xen/list.h>
> +#include <xen/rangeset.h>
> +
> +/*
> + * overlay_track describes information about added nodes through dtbo.
> + * @entry: List pointer.
> + * @dt_host_new: Pointer to the updated dt_host_new which is unflattened from
> +    the 'updated fdt'.
> + * @fdt: Stores the fdt.
> + * @overlay_fdt: Stores a copy of input overlay_fdt.
> + * @nodes_address: Stores each overlay_node's address.
> + * @num_nodes: Total number of nodes in overlay dtb.
> + * @iomem_ranges: Range set to keep track of all IOMEMs.
> + * @irq_ranges: Range set to keep track of all added IRQs.
> + */
> +struct overlay_track {
> +    struct list_head entry;
> +    struct dt_device_node *dt_host_new;
> +    void *fdt;
> +    void *overlay_fdt;
> +    unsigned long *nodes_address;
> +    unsigned int num_nodes;
> +    struct rangeset *iomem_ranges;
> +    struct rangeset *irq_ranges;
> +};
> +
> +struct xen_sysctl_dt_overlay;
> +
> +#ifdef CONFIG_OVERLAY_DTB
> +long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op);
> +#else
> +#include <xen/errno.h>
> +static inline long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op)
> +{
> +    return -EOPNOTSUPP;
> +}
> +#endif
> +
> +#endif /* __XEN_DT_OVERLAY_H__ */
> +
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * tab-width: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 00:53:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 00:53:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595974.929679 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgne-0008Gl-UR; Wed, 06 Sep 2023 00:53:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595974.929679; Wed, 06 Sep 2023 00:53:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgne-0008Ge-Rg; Wed, 06 Sep 2023 00:53:42 +0000
Received: by outflank-mailman (input) for mailman id 595974;
 Wed, 06 Sep 2023 00:53:41 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdgnd-0008GY-Do
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 00:53:41 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org
 [2604:1380:4601:e00::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d0f546a5-4c4f-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 02:53:39 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 35637B8181A;
 Wed,  6 Sep 2023 00:53:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id EF2F3C433C9;
 Wed,  6 Sep 2023 00:53:35 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d0f546a5-4c4f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693961616;
	bh=YhgC7/2hjdPqPg/k7qH5Aex1Z/DOAWi5U6XPtMQ32/o=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=V8/UgG46XB8tFZpjRNiPcWzSGhbB4qr2gfcXp3dyaWr+05JyGqWUcFXbxinuwMAeJ
	 4yh/BDFy3cpna/s6quo1Q9qGP0f4XTfHNRv8jy0sFH8ANbG5WXeYLQuVk0nJeCxmiN
	 SZJSw/l4098aeDxlvJ/PzvwAXOoVIqUgO2zfycQmRWgrkN8I+wojJc0u7VP8VFW2Vg
	 xBYXBfm/a08R/HHkXKcAcBx69Pw/NQ3ETKdVwBVz0npVdB+kSCcf9hHCWeTpwJHchD
	 krOxinbbGbZlSyjGeoz72W8ToGd8d/fp8inDnj3qoFyeeZiL0WIZbdMiSt+PBH1TCd
	 o+fwWF94sbpAA==
Date: Tue, 5 Sep 2023 17:53:34 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Vikram Garhwal <vikram.garhwal@amd.com>
cc: xen-devel@lists.xenproject.org, julien@xen.org, michal.orzel@amd.com, 
    sstabellini@kernel.org
Subject: Re: [XEN][PATCH v11 17/20] xen/arm: Implement device tree node
 addition functionalities
In-Reply-To: <20230901045947.32351-18-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309051751280.6458@ubuntu-linux-20-04-desktop>
References: <20230901045947.32351-1-vikram.garhwal@amd.com> <20230901045947.32351-18-vikram.garhwal@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 31 Aug 2023, Vikram Garhwal wrote:
> Update sysctl XEN_SYSCTL_dt_overlay to enable support for dtbo nodes addition
> using device tree overlay.
> 
> xl dt-overlay add file.dtbo:
>     Each time overlay nodes are added using .dtbo, a new fdt(memcpy of
>     device_tree_flattened) is created and updated with overlay nodes. This
>     updated fdt is further unflattened to a dt_host_new. Next, it checks if any
>     of the overlay nodes already exists in the dt_host. If overlay nodes doesn't
>     exist then find the overlay nodes in dt_host_new, find the overlay node's
>     parent in dt_host and add the nodes as child under their parent in the
>     dt_host. The node is attached as the last node under target parent.
> 
>     Finally, add IRQs, add device to IOMMUs, set permissions and map MMIO for the
>     overlay node.
> 
> When a node is added using overlay, a new entry is allocated in the
> overlay_track to keep the track of memory allocation due to addition of overlay
> node. This is helpful for freeing the memory allocated when a device tree node
> is removed.
> 
> The main purpose of this to address first part of dynamic programming i.e.
> making xen aware of new device tree node which means updating the dt_host with
> overlay node information. Here we are adding/removing node from dt_host, and
> checking/setting IOMMU and IRQ permission but never mapping them to any domain.
> Right now, mapping/Un-mapping will happen only when a new domU is
> created/destroyed using "xl create".
> 
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> @@ -359,6 +546,312 @@ static long handle_remove_overlay_nodes(const void *overlay_fdt,
>      return rc;
>  }
>  
> +static void free_nodes_full_path(unsigned int num_nodes, char **nodes_full_path)
> +{
> +    unsigned int i;
> +
> +    if ( nodes_full_path != NULL )
> +        return;

Shouldn't this be:

    if ( nodes_full_path == NULL )
        return;


> +    for ( i = 0; i < num_nodes && nodes_full_path[i] != NULL; i++ )
> +    {
> +        xfree(nodes_full_path[i]);
> +    }
> +
> +    xfree(nodes_full_path);
> +}


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 00:53:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 00:53:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595975.929689 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgnt-00009R-6S; Wed, 06 Sep 2023 00:53:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595975.929689; Wed, 06 Sep 2023 00:53:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdgnt-00009K-3P; Wed, 06 Sep 2023 00:53:57 +0000
Received: by outflank-mailman (input) for mailman id 595975;
 Wed, 06 Sep 2023 00:53:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdgnr-00008b-UR
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 00:53:55 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org
 [2604:1380:4601:e00::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id da4de28b-4c4f-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 02:53:54 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 2AE74B81835;
 Wed,  6 Sep 2023 00:53:54 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8D608C433C7;
 Wed,  6 Sep 2023 00:53:52 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: da4de28b-4c4f-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693961633;
	bh=CrPqomtDE1matdoZ4HxUUPdCMnwna8XS9lekLHtSbDM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=CZ/YhH6wLXZPF4QoXBPwUzcSbjjWoVee90smyyRpmdYfFQOKDowEXUgLWkbHqQM7G
	 dlu6Wq14Md62swSukOuUYobKABWHTFFHKdCQGYUhykTCMajVcqKVfZh5HCRxCkg6lN
	 thB9k+j/do4Fkq7ZwGdB0WceB+sTOb/9FLknPEZJETOpG+WUg/w6getFX/6L35wrMR
	 BQu3dkIyIaeP6ntJ5rGUXjGmL5pa2tHG5PoBURNSGYB0hCKnvGKSFIZTsWswQJIpZk
	 EcUL2qnwjEozVvuZu0ea2FOVfz9IlKWQ5LtAyza6QamAkw71jnEEOK0uJjSc7cW65O
	 jFpyVVh4iiaMw==
Date: Tue, 5 Sep 2023 17:53:50 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Michal Orzel <michal.orzel@amd.com>
cc: Vikram Garhwal <vikram.garhwal@amd.com>, xen-devel@lists.xenproject.org, 
    julien@xen.org, sstabellini@kernel.org
Subject: Re: [XEN][PATCH v11 14/20] common/device_tree: Add rwlock for
 dt_host
In-Reply-To: <227d9107-5f5c-b773-639e-ee59a7047a27@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309051740440.6458@ubuntu-linux-20-04-desktop>
References: <20230901045947.32351-1-vikram.garhwal@amd.com> <20230901045947.32351-15-vikram.garhwal@amd.com> <227d9107-5f5c-b773-639e-ee59a7047a27@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 4 Sep 2023, Michal Orzel wrote:
> On 01/09/2023 06:59, Vikram Garhwal wrote:
> > Dynamic programming ops will modify the dt_host and there might be other
> > functions which are browsing the dt_host at the same time. To avoid the race
> > conditions, adding rwlock for browsing the dt_host during runtime. dt_host
> > writer will be added in the follow-up patch for device tree overlay
> > functionalities.
> > 
> > Reason behind adding rwlock instead of spinlock:
> >     For now, dynamic programming is the sole modifier of dt_host in Xen during
> >     run time. All other access functions like iommu_release_dt_device() are
> >     just reading the dt_host during run-time. So, there is a need to protect
> >     others from browsing the dt_host while dynamic programming is modifying
> >     it. rwlock is better suitable for this task as spinlock won't be able to
> >     differentiate between read and write access.
> > 
> > Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> > Reviewed-by: Michal Orzel <michal.orzel@amd.com>
> > ---
> > Changes from v10:
> >     Add ASSERT for iommu_assign_dt_device() and iommu_add_dt_device().
> > Changes from v9:
> >     Update commit message and fix indentation.
> >     Add ASSERT() for iommu_deassign_dt_device() and iommu_remove_dt_device().
> >     Fix code styles.
> >     Remove rwlock_init in unflatten_device_tree() and do DEFINE_RWLOCK in
> >         device-tree.c
> > Changes from v7:
> >     Keep one lock for dt_host instead of lock for each node under dt_host.
> > ---
> > ---
> >  xen/common/device_tree.c              |  1 +
> >  xen/drivers/passthrough/device_tree.c | 28 +++++++++++++++++++++++++--
> >  xen/include/xen/device_tree.h         |  7 +++++++
> >  3 files changed, 34 insertions(+), 2 deletions(-)
> > 
> > diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
> > index f38f51ec0b..b1c2952951 100644
> > --- a/xen/common/device_tree.c
> > +++ b/xen/common/device_tree.c
> > @@ -31,6 +31,7 @@ dt_irq_xlate_func dt_irq_xlate;
> >  struct dt_device_node *dt_host;
> >  /* Interrupt controller node*/
> >  const struct dt_device_node *dt_interrupt_controller;
> > +DEFINE_RWLOCK(dt_host_lock);
> >  
> >  /**
> >   * struct dt_alias_prop - Alias property in 'aliases' node
> > diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
> > index 80f6efc606..1f9cfccf95 100644
> > --- a/xen/drivers/passthrough/device_tree.c
> > +++ b/xen/drivers/passthrough/device_tree.c
> > @@ -31,6 +31,8 @@ int iommu_assign_dt_device(struct domain *d, struct dt_device_node *dev)
> >      int rc = -EBUSY;
> >      struct domain_iommu *hd = dom_iommu(d);
> >  
> > +    ASSERT(system_state <= SYS_STATE_active || rw_is_locked(&dt_host_lock));
> This looks not right (I know Julien suggested this). The second part will be checked only if state > active i.e. suspend/resume.
> I think this wants to be:
> ASSERT(system_state < SYS_STATE_active || rw_is_locked(&dt_host_lock));
> so that once the state is >= active, we require dt_host_lock to be locked.

Well spotted!


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595991.929719 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdh9x-0007OS-GZ; Wed, 06 Sep 2023 01:16:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595991.929719; Wed, 06 Sep 2023 01:16:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdh9x-0007OJ-DO; Wed, 06 Sep 2023 01:16:45 +0000
Received: by outflank-mailman (input) for mailman id 595991;
 Wed, 06 Sep 2023 01:16:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdh9v-0006tr-Tp
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:44 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20624.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::624])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0953fbca-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:41 +0200 (CEST)
Received: from CYXPR02CA0080.namprd02.prod.outlook.com (2603:10b6:930:ce::8)
 by MN0PR12MB6199.namprd12.prod.outlook.com (2603:10b6:208:3c4::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:38 +0000
Received: from CY4PEPF0000E9D8.namprd05.prod.outlook.com
 (2603:10b6:930:ce:cafe::e9) by CYXPR02CA0080.outlook.office365.com
 (2603:10b6:930:ce::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:37 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9D8.mail.protection.outlook.com (10.167.241.83) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:37 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:36 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:36 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:35 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0953fbca-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eZK62RNbfq7YXQsP22HxaDGHeRcLmcLIcBROF1LHy/cRaoYGpXbarK5UaTuzXNeKzRHyWspWWZM5ZYja48BRORWL3fVfCLeWusRRrSL2GuQHwBAV6mhLBwrD0VAdN/OBMMTfzNc4g8J1Uq3H4TNNK77QZPo/kY3baqqBG0ZDFZM1Ho3kXE/Tw2cGsyNwA6OaXRqzzQHImDJGuQD3CJjcV89IPbp2tW0+HxQJj8b9sT8ejSvVEEVW2fdM0hp66O/L8mSazNNyU07VEk2PjxxhLqi5Ud77YG/dPYEw66TACTsNa+GoY5BBPmI2tbXIPKRx57SIxgXaQghMGmI30W62EA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=2+pQ3ebYYcNFbMgc60KnoBaf8TeMmZbz4zbbyGRSvFk=;
 b=mckzlKQLSv8lKJ4wGfjW3XLsdznjo1ieEYnQBzgQCn1M2h3oGGYFgW+bz6jKL3TtvXDkjtsFVVLBEHcC6i3R3+VGYzYrkLN8XBcbJdkKP6q6GAveLGwxBCidATTJpMHSioVZ9Iiayq1LuFn9cjN/qYfAgU7YBsSW4ajwlrSoQJZ1+GMdMSZ88jvhe2eHY/nMxnORCQuIEi6zR8dw2fowOwm8p1O1Di5YIjzl8935OFuH7++CQMSFNL+FkpOPLSaEUJzDZaZgUUz8QeZjtQu44Qx3U8RnGrLZb8JyGqbk0vy08Vw1qqOXPucV1srP1UXXi5UA5y4II7keCnOQ7J41ag==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2+pQ3ebYYcNFbMgc60KnoBaf8TeMmZbz4zbbyGRSvFk=;
 b=o+cQ04d6ExGnf9JnB0WiQxPBqxLrKoXu8tEPKADj8JNKIh79jIzn7H0FEmBQ2FEsTocp+jw5M3u1ZbD1U9ov2KAVcTMq127ytQWLUEb2NU5ZGr8ETOykuyc1YTXORSvsk6yoazsyihKQyZkf1R5Lu2SYBMf0Zj0AHXojHCmEA2o=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN][PATCH v12 03/20] xen/arm/device: Remove __init from function type
Date: Tue, 5 Sep 2023 18:16:13 -0700
Message-ID: <20230906011631.30310-4-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D8:EE_|MN0PR12MB6199:EE_
X-MS-Office365-Filtering-Correlation-Id: 94a50eb7-6f75-4314-ff46-08dbae76eae7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KzSFc35eC0z2LSk2p7rVWwJctcnWs8namLfd95BVivFze1yrUHd6x2yJd1/PiFRyFnCe/0XGY3c5owtfPUx+zJ83okQxzaE0/p4Ney3nmMvPrz5I7V8N7Qczv517Q0PpI18uxKY+OYYZB+pi63fhIXEemDZ28NLRcTAEkwKWij0l/yOtnOSa4rw0u9uLWbP3S90mn2UKG2FO0nPyr+VDyfFGwVnRkDO1AA9JgLEgapq87GtVDWLsqYCmKkQukSLMw8lUv1QNVIfdgzMsTbv/K1Wf1QWZk5hVxGn2U94cjxHs+MO/fJthctUx6gcb0rjFedJArK9rVWMoiYY6lER8ZXPM8Eiv1gIfQ6iPapz1la7t6cOwCn2uFysA7bkhSW+rSmYasYHC5Z6pA38DQ6ERwWMb1BRJbsvIsKK2ha3Fe0DFSe/4Xy9q6ckTsHqLXFveKaPx4TwQ/c81hoAAcsgdS356HUBR1fhrM568NlQWrfOaCuzqOhJSBjWXu93J1bi2zcPZ/hTzhRNaebNDldoSnerCRYYYDHPvakqugvwP1+bWAm3X/j2uk9DC0uzhZAphohe2VvYCC6pZegLIQQ7182p5WTxNoRaj7h8IX06Cwc+tVfDwzwm4qFP/+X9enJr+bfSGnhxjvqlPu0tv0s1zVeUnwZu4PIHlYGjTpOvEb6UBMsCuQuYTU/9fA/wBN40eWOOk6wLVI0KupG/XazG9IpuwE5wcYq2kmoCf81JB6s5mRTVDHPDTEQCfKswk7cyS+rJNO0WLV0ia6zcejZWf7g==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(136003)(396003)(39860400002)(451199024)(1800799009)(186009)(82310400011)(36840700001)(40470700004)(46966006)(2616005)(1076003)(54906003)(316002)(4326008)(8676002)(70206006)(70586007)(8936002)(6916009)(40480700001)(82740400003)(81166007)(356005)(41300700001)(426003)(336012)(83380400001)(5660300002)(26005)(44832011)(6666004)(478600001)(30864003)(2906002)(47076005)(36860700001)(40460700003)(86362001)(36756003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:37.2566
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 94a50eb7-6f75-4314-ff46-08dbae76eae7
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000E9D8.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB6199

Remove __init from following function to access during runtime:
    1. map_irq_to_domain()
    2. handle_device_interrupts()
    3. map_range_to_domain()
    4. unflatten_dt_node()
    5. handle_device()
    6. map_device_children()
    7. map_dt_irq_to_domain()
Move map_irq_to_domain() prototype from domain_build.h to setup.h.

Above changes will create an error on build as non-init function are still
in domain_build.c file. So, to avoid build fails, following changes are done:
1. Move map_irq_to_domain(), handle_device_interrupts(), map_range_to_domain(),
    handle_device(), map_device_children() and map_dt_irq_to_domain()
    to device.c. After removing __init type,  these functions are not specific
    to domain building, so moving them out of domain_build.c to device.c.
2. Remove static type from handle_device_interrupts().

Also, renamed handle_device_interrupts() to map_device_irqs_to_domain().

Overall, these changes are done to support the dynamic programming of a nodes
where an overlay node will be added to fdt and unflattened node will be added to
dt_host. Furthermore, IRQ and mmio mapping will be done for the added node.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes from v10:
    Remove unnecessary rangeset variables  from handle_device() declaration.
    Rename handle_device_interrupts() to map_device_irqs_to_domain().
    Fix code styles.

Changes from v9:
    Move handle_device(), map_device_children() and map_dt_irq_to_domain() out
        of domain_build.c
---
---
 xen/arch/arm/device.c                   | 294 +++++++++++++++++++++++
 xen/arch/arm/domain_build.c             | 295 +-----------------------
 xen/arch/arm/include/asm/domain_build.h |   2 -
 xen/arch/arm/include/asm/setup.h        |   9 +
 xen/common/device_tree.c                |  12 +-
 5 files changed, 310 insertions(+), 302 deletions(-)

diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
index ca8539dee5..327e4d24fb 100644
--- a/xen/arch/arm/device.c
+++ b/xen/arch/arm/device.c
@@ -9,8 +9,10 @@
  */
 
 #include <asm/device.h>
+#include <asm/setup.h>
 #include <xen/errno.h>
 #include <xen/init.h>
+#include <xen/iocap.h>
 #include <xen/lib.h>
 
 extern const struct device_desc _sdevice[], _edevice[];
@@ -75,6 +77,298 @@ enum device_class device_get_class(const struct dt_device_node *dev)
     return DEVICE_UNKNOWN;
 }
 
+int map_irq_to_domain(struct domain *d, unsigned int irq,
+                      bool need_mapping, const char *devname)
+{
+    int res;
+
+    res = irq_permit_access(d, irq);
+    if ( res )
+    {
+        printk(XENLOG_ERR "Unable to permit to %pd access to IRQ %u\n", d, irq);
+        return res;
+    }
+
+    if ( need_mapping )
+    {
+        /*
+         * Checking the return of vgic_reserve_virq is not
+         * necessary. It should not fail except when we try to map
+         * the IRQ twice. This can legitimately happen if the IRQ is shared
+         */
+        vgic_reserve_virq(d, irq);
+
+        res = route_irq_to_guest(d, irq, irq, devname);
+        if ( res < 0 )
+        {
+            printk(XENLOG_ERR "Unable to map IRQ%u to %pd\n", irq, d);
+            return res;
+        }
+    }
+
+    dt_dprintk("  - IRQ: %u\n", irq);
+    return 0;
+}
+
+int map_range_to_domain(const struct dt_device_node *dev,
+                        uint64_t addr, uint64_t len, void *data)
+{
+    struct map_range_data *mr_data = data;
+    struct domain *d = mr_data->d;
+    int res;
+
+    if ( (addr != (paddr_t)addr) || (((paddr_t)~0 - addr) < len) )
+    {
+        printk(XENLOG_ERR "%s: [0x%"PRIx64", 0x%"PRIx64"] exceeds the maximum allowed PA width (%u bits)",
+               dt_node_full_name(dev), addr, (addr + len), PADDR_BITS);
+        return -ERANGE;
+    }
+
+    /*
+     * reserved-memory regions are RAM carved out for a special purpose.
+     * They are not MMIO and therefore a domain should not be able to
+     * manage them via the IOMEM interface.
+     */
+    if ( strncasecmp(dt_node_full_name(dev), "/reserved-memory/",
+                     strlen("/reserved-memory/")) != 0 )
+    {
+        res = iomem_permit_access(d, paddr_to_pfn(addr),
+                paddr_to_pfn(PAGE_ALIGN(addr + len - 1)));
+        if ( res )
+        {
+            printk(XENLOG_ERR "Unable to permit to dom%d access to"
+                    " 0x%"PRIx64" - 0x%"PRIx64"\n",
+                    d->domain_id,
+                    addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1);
+            return res;
+        }
+    }
+
+    if ( !mr_data->skip_mapping )
+    {
+        res = map_regions_p2mt(d,
+                               gaddr_to_gfn(addr),
+                               PFN_UP(len),
+                               maddr_to_mfn(addr),
+                               mr_data->p2mt);
+
+        if ( res < 0 )
+        {
+            printk(XENLOG_ERR "Unable to map 0x%"PRIx64
+                   " - 0x%"PRIx64" in domain %d\n",
+                   addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1,
+                   d->domain_id);
+            return res;
+        }
+    }
+
+    dt_dprintk("  - MMIO: %010"PRIx64" - %010"PRIx64" P2MType=%x\n",
+               addr, addr + len, mr_data->p2mt);
+
+    return 0;
+}
+
+/*
+ * map_device_irqs_to_domain retrieves the interrupts configuration from
+ * a device tree node and maps those interrupts to the target domain.
+ *
+ * Returns:
+ *   < 0 error
+ *   0   success
+ */
+int map_device_irqs_to_domain(struct domain *d,
+                              struct dt_device_node *dev,
+                              bool need_mapping)
+{
+    unsigned int i, nirq;
+    int res;
+    struct dt_raw_irq rirq;
+
+    nirq = dt_number_of_irq(dev);
+
+    /* Give permission and map IRQs */
+    for ( i = 0; i < nirq; i++ )
+    {
+        res = dt_device_get_raw_irq(dev, i, &rirq);
+        if ( res )
+        {
+            printk(XENLOG_ERR "Unable to retrieve irq %u for %s\n",
+                   i, dt_node_full_name(dev));
+            return res;
+        }
+
+        /*
+         * Don't map IRQ that have no physical meaning
+         * ie: IRQ whose controller is not the GIC
+         */
+        if ( rirq.controller != dt_interrupt_controller )
+        {
+            dt_dprintk("irq %u not connected to primary controller. Connected to %s\n",
+                      i, dt_node_full_name(rirq.controller));
+            continue;
+        }
+
+        res = platform_get_irq(dev, i);
+        if ( res < 0 )
+        {
+            printk(XENLOG_ERR "Unable to get irq %u for %s\n",
+                   i, dt_node_full_name(dev));
+            return res;
+        }
+
+        res = map_irq_to_domain(d, res, need_mapping, dt_node_name(dev));
+        if ( res )
+            return res;
+    }
+
+    return 0;
+}
+
+static int map_dt_irq_to_domain(const struct dt_device_node *dev,
+                                const struct dt_irq *dt_irq,
+                                void *data)
+{
+    struct map_range_data *mr_data = data;
+    struct domain *d = mr_data->d;
+    unsigned int irq = dt_irq->irq;
+    int res;
+
+    if ( irq < NR_LOCAL_IRQS )
+    {
+        printk(XENLOG_ERR "%s: IRQ%u is not a SPI\n", dt_node_name(dev), irq);
+        return -EINVAL;
+    }
+
+    /* Setup the IRQ type */
+    res = irq_set_spi_type(irq, dt_irq->type);
+    if ( res )
+    {
+        printk(XENLOG_ERR "%s: Unable to setup IRQ%u to %pd\n",
+               dt_node_name(dev), irq, d);
+        return res;
+    }
+
+    res = map_irq_to_domain(d, irq, !mr_data->skip_mapping, dt_node_name(dev));
+
+    return res;
+}
+
+/*
+ * For a node which describes a discoverable bus (such as a PCI bus)
+ * then we may need to perform additional mappings in order to make
+ * the child resources available to domain 0.
+ */
+static int map_device_children(const struct dt_device_node *dev,
+                               struct map_range_data *mr_data)
+{
+    if ( dt_device_type_is_equal(dev, "pci") )
+    {
+        int ret;
+
+        dt_dprintk("Mapping children of %s to guest\n",
+                   dt_node_full_name(dev));
+
+        ret = dt_for_each_irq_map(dev, &map_dt_irq_to_domain, mr_data);
+        if ( ret < 0 )
+            return ret;
+
+        ret = dt_for_each_range(dev, &map_range_to_domain, mr_data);
+        if ( ret < 0 )
+            return ret;
+    }
+
+    return 0;
+}
+
+/*
+ * For a given device node:
+ *  - Give permission to the guest to manage IRQ and MMIO range
+ *  - Retrieve the IRQ configuration (i.e edge/level) from device tree
+ * When the device is not marked for guest passthrough:
+ *  - Try to call iommu_add_dt_device to protect the device by an IOMMU
+ *  - Assign the device to the guest if it's protected by an IOMMU
+ *  - Map the IRQs and iomem regions to DOM0
+ */
+int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt)
+{
+    unsigned int naddr;
+    unsigned int i;
+    int res;
+    paddr_t addr, size;
+    bool own_device = !dt_device_for_passthrough(dev);
+    /*
+     * We want to avoid mapping the MMIO in dom0 for the following cases:
+     *   - The device is owned by dom0 (i.e. it has been flagged for
+     *     passthrough).
+     *   - PCI host bridges with driver in Xen. They will later be mapped by
+     *     pci_host_bridge_mappings().
+     */
+    struct map_range_data mr_data = {
+        .d = d,
+        .p2mt = p2mt,
+        .skip_mapping = !own_device ||
+                        (is_pci_passthrough_enabled() &&
+                        (device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE))
+    };
+
+    naddr = dt_number_of_address(dev);
+
+    dt_dprintk("%s passthrough = %d naddr = %u\n",
+               dt_node_full_name(dev), own_device, naddr);
+
+    if ( own_device )
+    {
+        dt_dprintk("Check if %s is behind the IOMMU and add it\n",
+                   dt_node_full_name(dev));
+
+        res = iommu_add_dt_device(dev);
+        if ( res < 0 )
+        {
+            printk(XENLOG_ERR "Failed to add %s to the IOMMU\n",
+                   dt_node_full_name(dev));
+            return res;
+        }
+
+        if ( dt_device_is_protected(dev) )
+        {
+            dt_dprintk("%s setup iommu\n", dt_node_full_name(dev));
+            res = iommu_assign_dt_device(d, dev);
+            if ( res )
+            {
+                printk(XENLOG_ERR "Failed to setup the IOMMU for %s\n",
+                       dt_node_full_name(dev));
+                return res;
+            }
+        }
+    }
+
+    res = map_device_irqs_to_domain(d, dev, own_device);
+    if ( res < 0 )
+        return res;
+
+    /* Give permission and map MMIOs */
+    for ( i = 0; i < naddr; i++ )
+    {
+        res = dt_device_get_paddr(dev, i, &addr, &size);
+        if ( res )
+        {
+            printk(XENLOG_ERR "Unable to retrieve address %u for %s\n",
+                   i, dt_node_full_name(dev));
+            return res;
+        }
+
+        res = map_range_to_domain(dev, addr, size, &mr_data);
+        if ( res )
+            return res;
+    }
+
+    res = map_device_children(dev, &mr_data);
+    if ( res )
+        return res;
+
+    return 0;
+}
+
 /*
  * Local variables:
  * mode: C
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 54bf5623c8..ff4fc30769 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -2293,299 +2293,6 @@ int __init make_chosen_node(const struct kernel_info *kinfo)
     return res;
 }
 
-int __init map_irq_to_domain(struct domain *d, unsigned int irq,
-                             bool need_mapping, const char *devname)
-{
-    int res;
-
-    res = irq_permit_access(d, irq);
-    if ( res )
-    {
-        printk(XENLOG_ERR "Unable to permit to %pd access to IRQ %u\n", d, irq);
-        return res;
-    }
-
-    if ( need_mapping )
-    {
-        /*
-         * Checking the return of vgic_reserve_virq is not
-         * necessary. It should not fail except when we try to map
-         * the IRQ twice. This can legitimately happen if the IRQ is shared
-         */
-        vgic_reserve_virq(d, irq);
-
-        res = route_irq_to_guest(d, irq, irq, devname);
-        if ( res < 0 )
-        {
-            printk(XENLOG_ERR "Unable to map IRQ%u to %pd\n", irq, d);
-            return res;
-        }
-    }
-
-    dt_dprintk("  - IRQ: %u\n", irq);
-    return 0;
-}
-
-static int __init map_dt_irq_to_domain(const struct dt_device_node *dev,
-                                       const struct dt_irq *dt_irq,
-                                       void *data)
-{
-    struct map_range_data *mr_data = data;
-    struct domain *d = mr_data->d;
-    unsigned int irq = dt_irq->irq;
-    int res;
-
-    if ( irq < NR_LOCAL_IRQS )
-    {
-        printk(XENLOG_ERR "%s: IRQ%u is not a SPI\n", dt_node_name(dev), irq);
-        return -EINVAL;
-    }
-
-    /* Setup the IRQ type */
-    res = irq_set_spi_type(irq, dt_irq->type);
-    if ( res )
-    {
-        printk(XENLOG_ERR "%s: Unable to setup IRQ%u to %pd\n",
-               dt_node_name(dev), irq, d);
-        return res;
-    }
-
-    res = map_irq_to_domain(d, irq, !mr_data->skip_mapping, dt_node_name(dev));
-
-    return res;
-}
-
-int __init map_range_to_domain(const struct dt_device_node *dev,
-                               uint64_t addr, uint64_t len, void *data)
-{
-    struct map_range_data *mr_data = data;
-    struct domain *d = mr_data->d;
-    int res;
-
-    if ( (addr != (paddr_t)addr) || (((paddr_t)~0 - addr) < len) )
-    {
-        printk(XENLOG_ERR "%s: [0x%"PRIx64", 0x%"PRIx64"] exceeds the maximum allowed PA width (%u bits)",
-               dt_node_full_name(dev), addr, (addr + len), PADDR_BITS);
-        return -ERANGE;
-    }
-
-    /*
-     * reserved-memory regions are RAM carved out for a special purpose.
-     * They are not MMIO and therefore a domain should not be able to
-     * manage them via the IOMEM interface.
-     */
-    if ( strncasecmp(dt_node_full_name(dev), "/reserved-memory/",
-                     strlen("/reserved-memory/")) != 0 )
-    {
-        res = iomem_permit_access(d, paddr_to_pfn(addr),
-                paddr_to_pfn(PAGE_ALIGN(addr + len - 1)));
-        if ( res )
-        {
-            printk(XENLOG_ERR "Unable to permit to dom%d access to"
-                    " 0x%"PRIx64" - 0x%"PRIx64"\n",
-                    d->domain_id,
-                    addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1);
-            return res;
-        }
-    }
-
-    if ( !mr_data->skip_mapping )
-    {
-        res = map_regions_p2mt(d,
-                               gaddr_to_gfn(addr),
-                               PFN_UP(len),
-                               maddr_to_mfn(addr),
-                               mr_data->p2mt);
-
-        if ( res < 0 )
-        {
-            printk(XENLOG_ERR "Unable to map 0x%"PRIx64
-                   " - 0x%"PRIx64" in domain %d\n",
-                   addr & PAGE_MASK, PAGE_ALIGN(addr + len) - 1,
-                   d->domain_id);
-            return res;
-        }
-    }
-
-    dt_dprintk("  - MMIO: %010"PRIx64" - %010"PRIx64" P2MType=%x\n",
-               addr, addr + len, mr_data->p2mt);
-
-    return 0;
-}
-
-/*
- * For a node which describes a discoverable bus (such as a PCI bus)
- * then we may need to perform additional mappings in order to make
- * the child resources available to domain 0.
- */
-static int __init map_device_children(const struct dt_device_node *dev,
-                                      struct map_range_data *mr_data)
-{
-    if ( dt_device_type_is_equal(dev, "pci") )
-    {
-        int ret;
-
-        dt_dprintk("Mapping children of %s to guest\n",
-                   dt_node_full_name(dev));
-
-        ret = dt_for_each_irq_map(dev, &map_dt_irq_to_domain, mr_data);
-        if ( ret < 0 )
-            return ret;
-
-        ret = dt_for_each_range(dev, &map_range_to_domain, mr_data);
-        if ( ret < 0 )
-            return ret;
-    }
-
-    return 0;
-}
-
-/*
- * handle_device_interrupts retrieves the interrupts configuration from
- * a device tree node and maps those interrupts to the target domain.
- *
- * Returns:
- *   < 0 error
- *   0   success
- */
-static int __init handle_device_interrupts(struct domain *d,
-                                           struct dt_device_node *dev,
-                                           bool need_mapping)
-{
-    unsigned int i, nirq;
-    int res;
-    struct dt_raw_irq rirq;
-
-    nirq = dt_number_of_irq(dev);
-
-    /* Give permission and map IRQs */
-    for ( i = 0; i < nirq; i++ )
-    {
-        res = dt_device_get_raw_irq(dev, i, &rirq);
-        if ( res )
-        {
-            printk(XENLOG_ERR "Unable to retrieve irq %u for %s\n",
-                   i, dt_node_full_name(dev));
-            return res;
-        }
-
-        /*
-         * Don't map IRQ that have no physical meaning
-         * ie: IRQ whose controller is not the GIC
-         */
-        if ( rirq.controller != dt_interrupt_controller )
-        {
-            dt_dprintk("irq %u not connected to primary controller. Connected to %s\n",
-                      i, dt_node_full_name(rirq.controller));
-            continue;
-        }
-
-        res = platform_get_irq(dev, i);
-        if ( res < 0 )
-        {
-            printk(XENLOG_ERR "Unable to get irq %u for %s\n",
-                   i, dt_node_full_name(dev));
-            return res;
-        }
-
-        res = map_irq_to_domain(d, res, need_mapping, dt_node_name(dev));
-        if ( res )
-            return res;
-    }
-
-    return 0;
-}
-
-/*
- * For a given device node:
- *  - Give permission to the guest to manage IRQ and MMIO range
- *  - Retrieve the IRQ configuration (i.e edge/level) from device tree
- * When the device is not marked for guest passthrough:
- *  - Try to call iommu_add_dt_device to protect the device by an IOMMU
- *  - Assign the device to the guest if it's protected by an IOMMU
- *  - Map the IRQs and iomem regions to DOM0
- */
-static int __init handle_device(struct domain *d, struct dt_device_node *dev,
-                                p2m_type_t p2mt)
-{
-    unsigned int naddr;
-    unsigned int i;
-    int res;
-    paddr_t addr, size;
-    bool own_device = !dt_device_for_passthrough(dev);
-    /*
-     * We want to avoid mapping the MMIO in dom0 for the following cases:
-     *   - The device is owned by dom0 (i.e. it has been flagged for
-     *     passthrough).
-     *   - PCI host bridges with driver in Xen. They will later be mapped by
-     *     pci_host_bridge_mappings().
-     */
-    struct map_range_data mr_data = {
-        .d = d,
-        .p2mt = p2mt,
-        .skip_mapping = !own_device ||
-                        (is_pci_passthrough_enabled() &&
-                        (device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE))
-    };
-
-    naddr = dt_number_of_address(dev);
-
-    dt_dprintk("%s passthrough = %d naddr = %u\n",
-               dt_node_full_name(dev), own_device, naddr);
-
-    if ( own_device )
-    {
-        dt_dprintk("Check if %s is behind the IOMMU and add it\n",
-                   dt_node_full_name(dev));
-
-        res = iommu_add_dt_device(dev);
-        if ( res < 0 )
-        {
-            printk(XENLOG_ERR "Failed to add %s to the IOMMU\n",
-                   dt_node_full_name(dev));
-            return res;
-        }
-
-        if ( dt_device_is_protected(dev) )
-        {
-            dt_dprintk("%s setup iommu\n", dt_node_full_name(dev));
-            res = iommu_assign_dt_device(d, dev);
-            if ( res )
-            {
-                printk(XENLOG_ERR "Failed to setup the IOMMU for %s\n",
-                       dt_node_full_name(dev));
-                return res;
-            }
-        }
-    }
-
-    res = handle_device_interrupts(d, dev, own_device);
-    if ( res < 0 )
-        return res;
-
-    /* Give permission and map MMIOs */
-    for ( i = 0; i < naddr; i++ )
-    {
-        res = dt_device_get_paddr(dev, i, &addr, &size);
-        if ( res )
-        {
-            printk(XENLOG_ERR "Unable to retrieve address %u for %s\n",
-                   i, dt_node_full_name(dev));
-            return res;
-        }
-
-        res = map_range_to_domain(dev, addr, size, &mr_data);
-        if ( res )
-            return res;
-    }
-
-    res = map_device_children(dev, &mr_data);
-    if ( res )
-        return res;
-
-    return 0;
-}
-
 static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
                               struct dt_device_node *node,
                               p2m_type_t p2mt)
@@ -3038,7 +2745,7 @@ static int __init handle_passthrough_prop(struct kernel_info *kinfo,
         return -EINVAL;
     }
 
-    res = handle_device_interrupts(kinfo->d, node, true);
+    res = map_device_irqs_to_domain(kinfo->d, node, true);
     if ( res < 0 )
         return res;
 
diff --git a/xen/arch/arm/include/asm/domain_build.h b/xen/arch/arm/include/asm/domain_build.h
index 34ceddc995..b9329c9ee0 100644
--- a/xen/arch/arm/include/asm/domain_build.h
+++ b/xen/arch/arm/include/asm/domain_build.h
@@ -4,8 +4,6 @@
 #include <xen/sched.h>
 #include <asm/kernel.h>
 
-int map_irq_to_domain(struct domain *d, unsigned int irq,
-                      bool need_mapping, const char *devname);
 int make_chosen_node(const struct kernel_info *kinfo);
 void evtchn_allocate(struct domain *d);
 
diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index 19dc637d55..6cda3e4039 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -165,6 +165,15 @@ void device_tree_get_reg(const __be32 **cell, uint32_t address_cells,
 u32 device_tree_get_u32(const void *fdt, int node,
                         const char *prop_name, u32 dflt);
 
+int handle_device(struct domain *d, struct dt_device_node *dev,
+                  p2m_type_t p2mt);
+
+int map_device_irqs_to_domain(struct domain *d, struct dt_device_node *dev,
+                              bool need_mapping);
+
+int map_irq_to_domain(struct domain *d, unsigned int irq,
+                      bool need_mapping, const char *devname);
+
 int map_range_to_domain(const struct dt_device_node *dev,
                         uint64_t addr, uint64_t len, void *data);
 
diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index b6d9f018c6..fccf98f94e 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -1847,12 +1847,12 @@ int dt_count_phandle_with_args(const struct dt_device_node *np,
  * @allnextpp: pointer to ->allnext from last allocated device_node
  * @fpsize: Size of the node path up at the current depth.
  */
-static unsigned long __init unflatten_dt_node(const void *fdt,
-                                              unsigned long mem,
-                                              unsigned long *p,
-                                              struct dt_device_node *dad,
-                                              struct dt_device_node ***allnextpp,
-                                              unsigned long fpsize)
+static unsigned long unflatten_dt_node(const void *fdt,
+                                       unsigned long mem,
+                                       unsigned long *p,
+                                       struct dt_device_node *dad,
+                                       struct dt_device_node ***allnextpp,
+                                       unsigned long fpsize)
 {
     struct dt_device_node *np;
     struct dt_property *pp, **prev_pp = NULL;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595994.929748 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdh9z-00086L-Oz; Wed, 06 Sep 2023 01:16:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595994.929748; Wed, 06 Sep 2023 01:16:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdh9z-00085A-Kv; Wed, 06 Sep 2023 01:16:47 +0000
Received: by outflank-mailman (input) for mailman id 595994;
 Wed, 06 Sep 2023 01:16:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdh9x-0006tr-UF
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:45 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on2061e.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::61e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0ab2a3b0-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:44 +0200 (CEST)
Received: from BL0PR0102CA0019.prod.exchangelabs.com (2603:10b6:207:18::32) by
 PH7PR12MB6977.namprd12.prod.outlook.com (2603:10b6:510:1b7::9) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6745.34; Wed, 6 Sep 2023 01:16:39 +0000
Received: from BL02EPF0001A101.namprd05.prod.outlook.com
 (2603:10b6:207:18:cafe::a4) by BL0PR0102CA0019.outlook.office365.com
 (2603:10b6:207:18::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:38 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A101.mail.protection.outlook.com (10.167.241.132) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:38 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:37 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:37 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:36 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0ab2a3b0-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fldq++7/Oe8Bk8QQTy24bj8wmNJnukw7JGYG3EJ4sDbp94f81UjbKy/CjBYlEpH5dMFj3XIOw2SYl3jRo3wXLYwgJpsq+lkWoF8dImRtyeib3HvB/4Y+v00Mvox6BPOTN63CGh1Pk+n2HsIkVzsBeS6JvZrU1aAGc8DDwO5IthAisQxX4eIDq9KptwCanaLFb0yOw1ZtMNYszxNCryCRBXaDVnYltp9sTrD44OvSKI8DpP+7iQYXP3MaLC36YvvBGIIZN8OJiVDdE5HUN6Pd2BDmsSse29M3lWVNMmSzbaZ2au1wldOeTYL1cl2Ofj/6b3sp2TCtDX7MQvCf7QWqAg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=N48gpSlC0ul9Dgr5X4IgXaGnFeuJhzDtng9Ayqa//1E=;
 b=hDJg47iSvsg+IRLSvQJ8i13lBe4K2A3uXfBGyCA02CG7psq8WLfeog+mmszNdzamSCz6F5zs0aPhECWFSpeTR2PpGQR5tfj5E0/4tSa2gWS7we8sJnlfJlpT6utWfBWIim3ZM1T2GE1XjbsRrE8VvqJWfUJjT4D9J/34xLRHjIqaAZ73hij7qzyJSyVCs6BYcKr9WRaok6B/XVWgYIf3vTZY2w4XIk9U7a9hfmuxwoeEitOldBRYFV0SRRFgrN7gDK1sGo7V3EcJPMItT/oOqCcPRo1YXPOnzrk6Hfp0k9q4yHcl6jbiGGdjC4wOY+dHiIpmgqsJ5Hpylg9ixpx6TA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=N48gpSlC0ul9Dgr5X4IgXaGnFeuJhzDtng9Ayqa//1E=;
 b=3Ozu8m7HW/fHwu5SlGsge3V8Uigk+jree6lfqjc3BA/ms4BZnXhDOCBztwuYufko4afLp2O1KrM4ZWkvE8BlRM7UXysnfriD/tl5Ts1L7LWvLbXqpg7tUX0jS3ogHDk0sQ+l1dWUQbwg2nW2aZJhciWC+JVM1VUQ9vvsofNQsdk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v12 04/20] common/device_tree: Export __unflatten_device_tree()
Date: Tue, 5 Sep 2023 18:16:14 -0700
Message-ID: <20230906011631.30310-5-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A101:EE_|PH7PR12MB6977:EE_
X-MS-Office365-Filtering-Correlation-Id: 174c8e84-ed8e-4e23-eb6f-08dbae76eb74
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/UM5K77t4AdsTCHzHs9b8dGRd0PqzZSZbYvjhNbDtWkCsuejBD3/3xKycSgHZAarTTv+pKla1Kak/6PVpDbf2ayv6MSqrVvDbhAfytf+uU0rQ+MQ9Z2O8NSWqtb6JxpfA3SQHzjyvrarKuAwlrdcjuthb5eui9aBjN0kjYKgU/jhJnOrmKuk5Rlh4+vKljaPEv/a9KXpXAryqYdc5qvdJyJBIGAL0D5YH4ui6EbCoV4fuiUX6bpvabr2SzR5ZWmVCICprhR2TgE7tjuT428WA5JBTEODck/cSml7TlEIxITke/M+koxLGzYSwoGzfaWhSWLzZfc7qG+HhJO66q/PL6gF4QO5dqIp6oXTxoYOi4nNCOSpmwpX5R+AdfRG0tIt6hSPpXbX6CNjvtmbkQnpQ9gJwEkMm62E74Vfal5gq/BgHckB8WT4MxnQE4yyFAF5MAeNxOAt+/9R9yj/bUCBwZJdY8jv11eblfvN1bVdKL41zZcN9XDAttGeYyGyVXTHRU6d0tSQ4Ksnifz0Ow7dl2r18vwkwuiTg493m8fxjwbytK6ZMl0/0ZvjZyDxsMNWN0E0JbUhVJLYvfna8dmENTwfulp+OuiJpPwtn8mjXKl+ldVwz2cE/H7d602jVBqrZW9QJpbxUBisdgwkIl0n0GsSGnESXGYjs7be6jzXRYhO8hvjV9MIZaMilcGVXJT7iZFJAnSsUYsu0uPvC3hCSOBbgWH7cyHufEItjZJF46CpK1mVYKowhwpQV90DXys3DfX1UaMKP+u4iBJV4eEBFw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(39860400002)(396003)(346002)(451199024)(1800799009)(186009)(82310400011)(46966006)(40470700004)(36840700001)(5660300002)(41300700001)(40480700001)(8676002)(8936002)(316002)(6916009)(54906003)(44832011)(70206006)(70586007)(4326008)(2906002)(40460700003)(356005)(81166007)(83380400001)(47076005)(82740400003)(26005)(2616005)(336012)(426003)(1076003)(86362001)(36756003)(36860700001)(478600001)(6666004)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:38.2270
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 174c8e84-ed8e-4e23-eb6f-08dbae76eb74
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A101.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6977

Following changes are done to __unflatten_device_tree():
    1. __unflatten_device_tree() is renamed to unflatten_device_tree().
    2. Remove __init and static function type.

The changes are done to make this function useable for dynamic node programming
where new device tree overlay nodes are added to fdt and further unflattend to
update xen device tree during runtime.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Acked-by: Julien Grall <jgrall@amazon.com>

---
Changes from v7:
    Update the commit with why unflatten_device_tree() is changed.
    Move function documentation to device_tree.h
---
---
 xen/common/device_tree.c      | 19 +++----------------
 xen/include/xen/device_tree.h | 14 ++++++++++++++
 2 files changed, 17 insertions(+), 16 deletions(-)

diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index fccf98f94e..b8ef1c7ae2 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -2082,20 +2082,7 @@ static unsigned long unflatten_dt_node(const void *fdt,
     return mem;
 }
 
-/**
- * __unflatten_device_tree - create tree of device_nodes from flat blob
- *
- * unflattens a device-tree, creating the
- * tree of struct device_node. It also fills the "name" and "type"
- * pointers of the nodes so the normal device-tree walking functions
- * can be used.
- * @fdt: The fdt to expand
- * @mynodes: The device_node tree created by the call
- *
- * Returns 0 on success and a negative number on error
- */
-static int __init __unflatten_device_tree(const void *fdt,
-                                          struct dt_device_node **mynodes)
+int unflatten_device_tree(const void *fdt, struct dt_device_node **mynodes)
 {
     unsigned long start, mem, size;
     struct dt_device_node **allnextp = mynodes;
@@ -2234,10 +2221,10 @@ dt_find_interrupt_controller(const struct dt_device_match *matches)
 
 void __init dt_unflatten_host_device_tree(void)
 {
-    int error = __unflatten_device_tree(device_tree_flattened, &dt_host);
+    int error = unflatten_device_tree(device_tree_flattened, &dt_host);
 
     if ( error )
-        panic("__unflatten_device_tree failed with error %d\n", error);
+        panic("unflatten_device_tree failed with error %d\n", error);
 
     dt_alias_scan();
 }
diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h
index 1d79e23b28..a518310a62 100644
--- a/xen/include/xen/device_tree.h
+++ b/xen/include/xen/device_tree.h
@@ -178,6 +178,20 @@ int device_tree_for_each_node(const void *fdt, int node,
  */
 void dt_unflatten_host_device_tree(void);
 
+/**
+ * unflatten_device_tree - create tree of device_nodes from flat blob
+ *
+ * unflattens a device-tree, creating the
+ * tree of struct device_node. It also fills the "name" and "type"
+ * pointers of the nodes so the normal device-tree walking functions
+ * can be used.
+ * @fdt: The fdt to expand
+ * @mynodes: The device_node tree created by the call
+ *
+ * Returns 0 on success and a negative number on error
+ */
+int unflatten_device_tree(const void *fdt, struct dt_device_node **mynodes);
+
 /**
  * IRQ translation callback
  * TODO: For the moment we assume that we only have ONE
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595993.929734 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdh9y-0007f5-KN; Wed, 06 Sep 2023 01:16:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595993.929734; Wed, 06 Sep 2023 01:16:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdh9y-0007c1-AL; Wed, 06 Sep 2023 01:16:46 +0000
Received: by outflank-mailman (input) for mailman id 595993;
 Wed, 06 Sep 2023 01:16:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdh9w-0006tr-U3
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:44 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20611.outbound.protection.outlook.com
 [2a01:111:f400:7e88::611])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0a09f55d-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:43 +0200 (CEST)
Received: from DM6PR05CA0058.namprd05.prod.outlook.com (2603:10b6:5:335::27)
 by DS0PR12MB6488.namprd12.prod.outlook.com (2603:10b6:8:c3::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:39 +0000
Received: from CY4PEPF0000E9DA.namprd05.prod.outlook.com
 (2603:10b6:5:335:cafe::ed) by DM6PR05CA0058.outlook.office365.com
 (2603:10b6:5:335::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.25 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:39 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9DA.mail.protection.outlook.com (10.167.241.79) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:39 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:38 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:38 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:37 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0a09f55d-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ISgq3ucjE6nwy4Na3bB2U3gRvs9AUlL5cRXBO8XDuy3fovcT+xoAv7ootYyAZ60D5OxYRrIK4XhAwRmSqkgyJfxz9w+eEoXaYuKRC1bkNZFS+yPO/L7bh2xiPq9bEpvvt7kBmjCYL7rqgzyXkX2VAayJctjcCYK8eoNH+2t0eIKBiCyBeqGn8hyD8FKHpg65oWe3BCbSV4GiamdjkN+54ETNBaFmZlNz+OnUb4hHQrge9NiBrNSOiclh72ts0QXAyS8wtoc/5sgGWL/F6jAHWyKLJ6DULhitqHcPG8Ee+yAulnGQMIsPEUj56fT0GyHE8ZDJLx3Gora191aWxrMgKw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zEyT6DqrQYXvE2hVcLijFdcrNkFKPw4yo+BSRds+BLE=;
 b=dsUfaodB6bQBNBKhzKeDF3bPKyZlAtYQAlOi4TOfkGmgV28E7ZhcGaiwGHSv2sbEp6+YNL43Zly9HlaMBhr37ItLx/wV+zL1DoBI8RsWOcXrr1940dPLO8u/zeXxLNGwTF97Zpy+I1FmnoGVPIyUO786FRk9rm4H5lVm2C8hGRi9dkAB2ZMcqNnNF+AMVE3ISE4uhRDjfod/TawquemCljIhUVgBbzpCVcNGoL3kh4gcGrY9XdwMsOLDb8/LcxSJjTPHbFPq7KXMVNr09yYM1LFjkK+xXzVkFFvzZEmk42D8vxeJoYO7oLAm/ls0tHS64JKYwkNe30FFZzSVzuroRA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zEyT6DqrQYXvE2hVcLijFdcrNkFKPw4yo+BSRds+BLE=;
 b=b434QoaA5AZdoaMJckTk8xzwcuSLsVklwCYNUB+SA3ZP1Ah2jDShQdv2Y2z1b42Jb3lVYirttPXo9x85x2Ir4lgLtfd97nE5cuOo2/4YgNNjk1Wyq0HVNUa7iTy4zNT0sHdz8ZxNBmXNJdhLgWx/MW1TTkoP0NcM/VbK+L1fWi8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Henry Wang <Henry.Wang@arm.com>, Community Manager
	<community.manager@xenproject.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Wei Liu <wl@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN][PATCH v12 05/20] xen/arm: Add CONFIG_OVERLAY_DTB
Date: Tue, 5 Sep 2023 18:16:15 -0700
Message-ID: <20230906011631.30310-6-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9DA:EE_|DS0PR12MB6488:EE_
X-MS-Office365-Filtering-Correlation-Id: 55283776-035f-4223-5323-08dbae76ec16
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pfYRW0zossqfKJDCwYxz+uejvsObbvsQWOHhBzDiC4e62KolhKaDFolxEjiDaUBnO6uz3NR1x/tP7Zqvaw3jk0qYwjonyP4FB7d8gu/7mZQFBUNLno6CpUCAMnXAqXApG5oZu8MGWPDYgnjagDRy9qRV5DIKPnyBr622B1m6Gh+r9lD6WZ186jo6h1hQiG1jtzE1TJCMhoyHl6kOUHg3Mrtbm/o457QBroSPiluMXtO5wfUNMCNzU+QzgmhjbUHInFurzz6OiJiYKKWIt0UGG5y28EoDVUo1Bk1e5FzoFdnCU9/4Q98s/wls3WiOwxcx9lub/0Np4OkUvWgnKwTpUpGx47bg1hVdAp/uLuh3ckRlWrUB+64pOm3+kHLLhnsmT+bcjBgC/AW6KaRNOhSAyg4dY2VaMQZh9dHREEXCtUbT83aez0Euu7Y/uJNdtk4WCdDwhcx70h+9XF5vwG7gY0XrfdhlAXZ262mUkfo1FulBE2rqiVDUsGBVVlt8RwuLWLlWA6J2KknH2x8gkJjvDjpwQp2goi4+477CXYVu9a1VQWbDftqlZO5WEOfxouw1vMfdBOST/0FZZNGT6a3e9RjOOt3yWlN31Ze6z6WHmSPU+rOGgSWuW5U+Ybm6ifv0IwNeam8acebSwJZRHB6dfcm8Pt/o9XJ5OjtsmKoJ/WpcYD6TEwlbiQnilvyONh+GzQOjfS3HzeUb7/v1slhv3patVv0+fOHTIzQf4C6lVMLgttjl46ZzSdfgIc9ip6kta8lrxEAgS3H5Z086MzVk3g==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(376002)(39860400002)(396003)(136003)(451199024)(1800799009)(186009)(82310400011)(40470700004)(36840700001)(46966006)(26005)(5660300002)(44832011)(54906003)(70586007)(316002)(6916009)(70206006)(41300700001)(40480700001)(82740400003)(81166007)(356005)(1076003)(6666004)(4326008)(8936002)(8676002)(2616005)(426003)(478600001)(83380400001)(7416002)(336012)(2906002)(47076005)(40460700003)(36860700001)(86362001)(36756003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:39.2223
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 55283776-035f-4223-5323-08dbae76ec16
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000E9DA.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB6488

Introduce a config option where the user can enable support for adding/removing
device tree nodes using a device tree binary overlay.

Update SUPPORT.md and CHANGELOG.md to state the Device Tree Overlays support for
Arm.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Acked-by: Henry Wang <Henry.Wang@arm.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>

---
Changes from v9:
    Fix style.
Changes from v7:
    Add this feature as "experimental support" in CHANGELOG.md
---
---
 CHANGELOG.md         | 2 ++
 SUPPORT.md           | 6 ++++++
 xen/arch/arm/Kconfig | 5 +++++
 3 files changed, 13 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2516526589..24636b8eaf 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -27,6 +27,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
  - On Arm, add suport for Firmware Framework for Arm A-profile (FF-A) Mediator
    (Tech Preview)
  - Add Intel Hardware P-States (HWP) cpufreq driver.
+ - On Arm, experimental support for dynamic addition/removal of Xen device tree
+   nodes using a device tree overlay binary (.dtbo).
 
 ### Removed
  - On x86, the "pku" command line option has been removed.  It has never
diff --git a/SUPPORT.md b/SUPPORT.md
index 6ce0ec29b0..3461f5cf2f 100644
--- a/SUPPORT.md
+++ b/SUPPORT.md
@@ -855,6 +855,12 @@ xen/arch/arm/tee/ffa.c for limitations.
 
     Status: Supported
 
+### Device Tree Overlays
+
+Add/Remove device tree nodes using a device tree overlay binary (.dtbo).
+
+    Status, ARM: Experimental
+
 ### ARM: Guest ACPI support
 
     Status: Supported
diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 57bd1d01d7..650aca99ac 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -92,6 +92,11 @@ config HAS_ITS
         bool "GICv3 ITS MSI controller support (UNSUPPORTED)" if UNSUPPORTED
         depends on GICV3 && !NEW_VGIC && !ARM_32
 
+config OVERLAY_DTB
+	bool "DTB overlay support (UNSUPPORTED)" if UNSUPPORTED
+	help
+	  Dynamic addition/removal of Xen device tree nodes using a dtbo.
+
 config HVM
         def_bool y
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595992.929726 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdh9x-0007Rv-V2; Wed, 06 Sep 2023 01:16:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595992.929726; Wed, 06 Sep 2023 01:16:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdh9x-0007Rd-Mf; Wed, 06 Sep 2023 01:16:45 +0000
Received: by outflank-mailman (input) for mailman id 595992;
 Wed, 06 Sep 2023 01:16:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdh9w-00079K-JO
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:44 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on20622.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::622])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 084ec877-4c53-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 03:16:40 +0200 (CEST)
Received: from BL1PR13CA0247.namprd13.prod.outlook.com (2603:10b6:208:2ba::12)
 by DM6PR12MB4106.namprd12.prod.outlook.com (2603:10b6:5:221::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:36 +0000
Received: from BL02EPF0001A106.namprd05.prod.outlook.com
 (2603:10b6:208:2ba:cafe::9a) by BL1PR13CA0247.outlook.office365.com
 (2603:10b6:208:2ba::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.25 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:36 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A106.mail.protection.outlook.com (10.167.241.139) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:36 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:35 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:35 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:35 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 084ec877-4c53-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OLR2embtpmdoUiozsCHGJZh+jIIsbnREkrK8eI3Z5EKx8FjsfXgnbpql4XNUVb/M18mU83UXMlPa6mYSJG2CvzOlxLy6Uf1pSl73OdxJ4ViGBdhCcy48qrAHLdTSJwrdTTWGNriqcsUAIeM2oz49a6MLettbCB8f4TqFzB8coRrj7M/0yivuv1qIzDHjNX3TYVdbysLkVcP8nWd7D6ba0s4/byUXqzLCkg4mYSFFLEG4Qj/73euJHIWxgPLgYkTH4WQbz9ta3HmEauZHgOy4fAJo62oRNpAAPY0kfXooIOTLfpvbR8QsljsiSXgeAAJ1YUVk3G1GtgyS3ZC34I4yvQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cro8idbWK6/j9Apeo95KJGwjFsR6k97QUgTNDxCH+H8=;
 b=H6WVFilQd4o0lho5Ejcru7/2NbI2L2QGziCT0eOw7VQ5ktuz6cEG09a2YakRzIGDO8TqyZHRdWR1JWbpVk3F6u6uk9rVQX0W9taMoJhfujkOW4nhEnSWtxFhcUiazTyU7u6kfq8RrotRkRWckFc7OJ374+WbGSbia5SKXeFHMIOalhHvpyiL/obavXoxiRXij2L0RXHg3a8LMhnx0df9Xrbp4gttCMXHBurlbBX+4Ktn7CrPL+SPhASy4A/0w/63ty0w5rD8SidYkInErhu/yEf1j25c8GXgUOLWxXOcj2I6wBa2BglGAFnJqi9DZkaevYtJMO1DkJIstYIRaM6jsA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cro8idbWK6/j9Apeo95KJGwjFsR6k97QUgTNDxCH+H8=;
 b=aJx+zwGQYyF0BkSbDrE83uUW8Wdih6afDgfCegG+gHUHA9o7ZF1PCSD538tP1XV1OsRVT8KfgDXDWbP80O6d3eAYc6M/ilZUOT32kXmxiLeBUh2tWNkQsfA2yG5Fta0zfi4/pNbB6v3nh7eHYvkYqgM42kju4UOrz4DD3rhm/kI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v12 02/20] common/device_tree.c: unflatten_device_tree() propagate errors
Date: Tue, 5 Sep 2023 18:16:12 -0700
Message-ID: <20230906011631.30310-3-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A106:EE_|DM6PR12MB4106:EE_
X-MS-Office365-Filtering-Correlation-Id: 716502bd-0a27-4d3a-873a-08dbae76ea24
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1K+rXODlw3AOuVPQXHJlvvD0fqz2SfwcqwmzgnNZJvtNCnBQ8HwaXUZF/yoj3qxUFHMAW4D42jJEWWx/I4ziZKMy2SbYPdyUAwl4FW+Oen+zzJ28e3Aq2ja7TRu6ZbeX/ezM6ObJxuM72wrnDUm0wHyYLxXR0GO831iJWtO92saLdhJTY0uFMaT4c70B05nIszPpp/0l21RoJCKD0paNCK4GNy4laEBZzluz8c2EMRoRZjQYa3Ei/MK8Bl8cctgyXrDK10RzulUBW5Lng4QHHGHWx9OM1imfQZHGjtELw1VAIL5sYYQF+ESLkhUTycyBkFvAkM3fyKkSWaHQ1bGuxUQsYunH2QVjYcu5E2a5jRAWxICE+kTKEyZ2U8rjNOgtHW3bxVG/xvSy1g70mVkODxpAuXHTgbFWf4hNELr1IV/BueZxG2LTePrjOXFsLgYkVDiqyQnoJmjqFxMx+Dnl7v70d+AtHSXG16Nz496rYlHXH648PgPb2FgPkbcPi9u7J2jjE9ikftMf6f5TcudKw0jEu0++H4x6lCL0bmVFjRb36+qv4naXhoUTLPM93/ic31hB/KGUSgHfDYHTKBD74S6tmvcVAROgzip1npXrmpX1hMJAgjWSGCdrGo0nxeKB5dM5gzfeX/Yg40BMw3FvcjxiUtzoMVXKBi9rOfFYuzkxI4nRZe1TTvyyEYQDETWum0Ty5k8yKhISb4WYLNVLDlXs4JzC86U/7GZTS5qCjecjuFKJmgf+3Hu85vfHHqhigyb5HgnIC3ggmp4RXg1fLw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(39860400002)(396003)(346002)(136003)(1800799009)(186009)(451199024)(82310400011)(36840700001)(46966006)(40470700004)(6916009)(6666004)(70586007)(54906003)(70206006)(40480700001)(316002)(41300700001)(478600001)(44832011)(1076003)(4326008)(8676002)(40460700003)(2616005)(26005)(5660300002)(36860700001)(426003)(36756003)(82740400003)(356005)(81166007)(8936002)(336012)(2906002)(86362001)(83380400001)(47076005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:36.0224
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 716502bd-0a27-4d3a-873a-08dbae76ea24
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A106.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4106

This will be useful in dynamic node programming when new dt nodes are unflattend
during runtime. Invalid device tree node related errors should be propagated
back to the caller.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>

---
Changes from v9:
    Replace __be64 with void.
Changes from v7:
    Free allocated memory in case of errors when calling unflatten_dt_node.
---
---
 xen/common/device_tree.c | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index 7c6b41c3b4..b6d9f018c6 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -2110,6 +2110,9 @@ static int __init __unflatten_device_tree(const void *fdt,
     /* First pass, scan for size */
     start = ((unsigned long)fdt) + fdt_off_dt_struct(fdt);
     size = unflatten_dt_node(fdt, 0, &start, NULL, NULL, 0);
+    if ( !size )
+        return -EINVAL;
+
     size = (size | 3) + 1;
 
     dt_dprintk("  size is %#lx allocating...\n", size);
@@ -2127,11 +2130,21 @@ static int __init __unflatten_device_tree(const void *fdt,
     start = ((unsigned long)fdt) + fdt_off_dt_struct(fdt);
     unflatten_dt_node(fdt, mem, &start, NULL, &allnextp, 0);
     if ( be32_to_cpup((__be32 *)start) != FDT_END )
-        printk(XENLOG_WARNING "Weird tag at end of tree: %08x\n",
+    {
+        printk(XENLOG_ERR "Weird tag at end of tree: %08x\n",
                   *((u32 *)start));
+        xfree((void *)mem);
+        return -EINVAL;
+    }
+
     if ( be32_to_cpu(((__be32 *)mem)[size / 4]) != 0xdeadbeefU )
-        printk(XENLOG_WARNING "End of tree marker overwritten: %08x\n",
+    {
+        printk(XENLOG_ERR "End of tree marker overwritten: %08x\n",
                   be32_to_cpu(((__be32 *)mem)[size / 4]));
+        xfree((void *)mem);
+        return -EINVAL;
+    }
+
     *allnextp = NULL;
 
     dt_dprintk(" <- unflatten_device_tree()\n");
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595995.929755 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA0-0008HM-HP; Wed, 06 Sep 2023 01:16:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595995.929755; Wed, 06 Sep 2023 01:16:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA0-0008Fa-9f; Wed, 06 Sep 2023 01:16:48 +0000
Received: by outflank-mailman (input) for mailman id 595995;
 Wed, 06 Sep 2023 01:16:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdh9y-0006tr-UU
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:46 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on2060a.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::60a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0b4ed898-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:46 +0200 (CEST)
Received: from MN2PR19CA0030.namprd19.prod.outlook.com (2603:10b6:208:178::43)
 by MW4PR12MB7312.namprd12.prod.outlook.com (2603:10b6:303:21a::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:43 +0000
Received: from BL02EPF0001A102.namprd05.prod.outlook.com
 (2603:10b6:208:178:cafe::8c) by MN2PR19CA0030.outlook.office365.com
 (2603:10b6:208:178::43) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:42 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A102.mail.protection.outlook.com (10.167.241.134) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:41 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:41 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 18:16:41 -0700
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:40 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0b4ed898-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PqCLErCrKH3HAn/mkGie6vzVVS+mAZA8E27XmjeCvxNdEuWR+UbucMNz9AXJeIwpti+QIIhGpHH9LeHCZsh3+QPnE9J0kgO/9xWzBZPbOa4wcmtQKJ2TEWcI2TpbrjRdxYDnDH3O8ILgeGtbB9WUGEy59UveIqSe3uJ2mPXSe+zOFz/3A098jIWcuy0oOjHlvJMQ/jcw+4Ph5hIo5MqHEgR0Bo3VsNM07SVGI9boDGRGfHS6OgVQPlc+MvxQG+xQZkyYFXEzHrzjv7pT3PUtbbUr/0K/85tfWuePo3uO9eM9R2AmfSx/CjHSmWLYUDDUlw1iaoC5GKBYquH5lXaesQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6x0JurAquc6KiyXO0EZH+9rHRs3E5f2UzTo4cnlYiAw=;
 b=NvlREKPyw5e9WZCwTDCbZhekBIEGuWqza8lNIl1Nnk3Unjcw2TU7/R5zrDG29wSkV3N8ZPByOLXxuuCnLoDMOhRZ5SdHI9iA/3Yb410FNsGsgKHb8JCvhp9bYwWqN17BWuBfoEFKs9PILOWFQuKvcGNhCSOx+yzC+/S8+4gIet+UtadLjrZyq8AzHaKYrsCdLXJ+u+Q1++9ukJ538huEFPGy80tX9OdhuzTfhY4OzTq8q84UjPLomvd0K3Gv1fajifTA5ro05Nwhz8RlKbiALQBib0Ghg7V3lGRxe0WXGqSspr3WMs31JtFB/YrZ3TDObGGhFc/AoVycNpQfNUI15w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6x0JurAquc6KiyXO0EZH+9rHRs3E5f2UzTo4cnlYiAw=;
 b=pJkf2FBJCEVGMHUFYIRrzJs1GeoENxcA9SpTHNBBhLK0IChal3RgyH8FdbgG1l2GFiUIdrKl5gwW3fpCBl9C/yfgFBAEh8/a/9MlEB2QJfxNbcZizUOpl2vuGBjUYt9fogS/pPJBY7fhCTFUSoMgJMEja+UHIbKESh+8SgW1gKk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v12 09/20] xen/iommu: Move spin_lock from iommu_dt_device_is_assigned to caller
Date: Tue, 5 Sep 2023 18:16:19 -0700
Message-ID: <20230906011631.30310-10-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A102:EE_|MW4PR12MB7312:EE_
X-MS-Office365-Filtering-Correlation-Id: 081765bc-8498-4c87-6047-08dbae76edb0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rHIVzBjxG2ppYS7SqA+2Z5CIVzg4UnsD316X5fE3naZLfheza85XgEwzT/QODQWXUBRfyyKAiTK7BmxZWN7AQQsCeRcG6p06zjI/8OeMGqtk8xaoDkwPLTAm0E/IEHDle1peO83TN0pYVJzX4cU0daNORuzLwF4CXU2EziFlGimsbP/exfqhST62d8Cx23aEbdFKhAo322Cl9vVySaH9NxBQo8O3VvqejF+4QLbG9TF+dlUn3Mo2DJbRJl2zI2yv+4dzg2m4t+jWa2DB/YW0JjFomMP/LJ94r+zgVX4qjfofCyNwFOYm2kqI0qf5gsSPyxhEXVuEtnTQtjWVepHLQhIy68QOaNzC+NhNDy2fm+vLQAyIDXwX9JML3XcpqHvBzb5p3BJtoZ7W4Jp3aj/Fvn6gMqAonpXZBX+7+ZPdrR9pjKJzoLoxdcubEVHxmnRYlonGjd+73NTckuZ0hhbFU+Co0mPvuQRMM6BVxc6sCRV/+8VUKVLG9Mz2aSO9wzRIK00gmF8cmJ44U5JhATlrA2xi9J/9zBr8oK9yI+AWIKXeVlCc/C8uhY5iRE4xwl/0cT71orBJRdymkcs1xtJgI6P+wE4Il+hm1AILnvFnjH05TxPX7Kimb6WeXRQHxOntdGt3c0H7Q5rJD8YuTC9JPELdwyeBLB9hTHhk38eI//DHFa/rWE4/ZdvM9lsxkXT2snyxJzo3O6Uu5YbvprCNjWq0JGshL8SyAc4s3300lajpeoHqWSEs1FiaqC2s3+/o+j0L07MCWNs2otCs8lxhqw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(396003)(346002)(376002)(82310400011)(1800799009)(451199024)(186009)(40470700004)(46966006)(36840700001)(8936002)(5660300002)(2906002)(6916009)(316002)(36756003)(54906003)(70586007)(70206006)(8676002)(44832011)(4326008)(41300700001)(36860700001)(1076003)(40460700003)(40480700001)(426003)(47076005)(6666004)(336012)(82740400003)(81166007)(26005)(356005)(478600001)(83380400001)(2616005)(86362001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:41.9721
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 081765bc-8498-4c87-6047-08dbae76edb0
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A102.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB7312

Rename iommu_dt_device_is_assigned() to iommu_dt_device_is_assigned_locked().

Moving spin_lock to caller was done to prevent the concurrent access to
iommu_dt_device_is_assigned while doing add/remove/assign/deassign. Follow-up
patches in this series introduces node add/remove feature.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>

---
Changes from v10:
    Move spin_lock before iommu_dt_device_is_assigned_locked() call.
    Rebase the patch with latest Xen.
Changes from v9:
    Make iommu_dt_device_is_assigned_locked() static and delete header.
    Move dtdevs_lock before iommu_dt_device_is_assigned_locked().
Changes from v7:
    Update commit message.
    Add ASSERT().
---
---
 xen/drivers/passthrough/device_tree.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index 3c0322c797..a7d86a20a0 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -83,16 +83,16 @@ fail:
     return rc;
 }
 
-static bool iommu_dt_device_is_assigned(const struct dt_device_node *dev)
+static bool iommu_dt_device_is_assigned_locked(const struct dt_device_node *dev)
 {
     bool assigned = false;
 
+    ASSERT(spin_is_locked(&dtdevs_lock));
+
     if ( !dt_device_is_protected(dev) )
         return 0;
 
-    spin_lock(&dtdevs_lock);
     assigned = !list_empty(&dev->domain_list);
-    spin_unlock(&dtdevs_lock);
 
     return assigned;
 }
@@ -225,12 +225,16 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
 
         if ( domctl->cmd == XEN_DOMCTL_test_assign_device )
         {
-            if ( iommu_dt_device_is_assigned(dev) )
+            spin_lock(&dtdevs_lock);
+
+            if ( iommu_dt_device_is_assigned_locked(dev) )
             {
                 printk(XENLOG_G_ERR "%s already assigned.\n",
                        dt_node_full_name(dev));
                 ret = -EINVAL;
             }
+
+            spin_unlock(&dtdevs_lock);
             break;
         }
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595990.929709 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdh9w-000792-97; Wed, 06 Sep 2023 01:16:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595990.929709; Wed, 06 Sep 2023 01:16:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdh9w-00078t-5f; Wed, 06 Sep 2023 01:16:44 +0000
Received: by outflank-mailman (input) for mailman id 595990;
 Wed, 06 Sep 2023 01:16:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdh9u-0006tr-Tc
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:43 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 088e5575-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:41 +0200 (CEST)
Received: from BL1PR13CA0230.namprd13.prod.outlook.com (2603:10b6:208:2bf::25)
 by DM4PR12MB7551.namprd12.prod.outlook.com (2603:10b6:8:10d::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:35 +0000
Received: from BL02EPF0001A107.namprd05.prod.outlook.com
 (2603:10b6:208:2bf:cafe::3e) by BL1PR13CA0230.outlook.office365.com
 (2603:10b6:208:2bf::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.27 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:35 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A107.mail.protection.outlook.com (10.167.241.136) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:34 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:34 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:33 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:32 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 088e5575-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=F9YfDexylpOWTQ7H6hKw3QtpJGel5iqgstjT7Zx1Hl2CVWoUPl5pZbY9DjCrdmgNqhEqywvao94gHz2I7ifyzlZ3HK3lu2OvScklDkgD0KQMNMOJ7Of7SlQ6YNcksFhzPxtCc7lPAd49ieoyKWHT7YATJVSfqTXOukFQ+uWYL5Ur4Xx8kaeZ5UW40lcYGkUHv5BMvOtYdKIjhxN+R6r/7twimhb+lN2PbmJj465VceQX4zEYyp3NXYhOFjaaj2yhBizyceebRrNM8zssFhqtElcwk/8bh/qxD76xreFCSJNtGxlhhwCyUGg6Uuj3SAelgpJVbOZiOMsS4OxjuBdcHQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YRaSndzPuZOlWjgIrTo2bo6mQsmVRypiGZ7LfEF3wVc=;
 b=TxRTqL7z+9tfhPV0vhrBgPcGEB5xn9ly8r3vAcJ7DR5fHeaHQX/30eZGvgc36Vt6Kr+nZoRLgHLg830mRr2i82vBCjkFGVzy0uL/hYhIUGFnauCGQ97WRcb5c6bz5OYCmOTKv2N1LoR98FmJHwAAJZrhEn3iBOTlzlm6qugqplq9Y+orfy3oNJmC4aXVyaoKrnBakifnIqw4r7Gh4Ii+lbc5MmuXysCWWtsoOexWxn3BhOLG6p89JB//xxRvQTy3KH6m3MIe377b/+6L//EHRJEXPbIUWbkPHqeHDsWdLSsT55YKWgURUooO60RJpcmeQ39kTxyQIubOjRxEf+XjCA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YRaSndzPuZOlWjgIrTo2bo6mQsmVRypiGZ7LfEF3wVc=;
 b=ONglr0V10uUwHBDcxzP1l81U2iiRn3ICwwfUmUM9YBiHPBHV59Fp9D9g92tp9RIdn1TiFhccTu2qDl75Nz6egvNBIJeuOH5VjqCShbRqySmG0HFiwOug7Nz6gaLNQBM6YRXDvpzoLGDrdmXVriIAB4P2jgWGetw68ur+huak3Ew=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Henry Wang
	<Henry.Wang@arm.com>, Community Manager <community.manager@xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Wei Liu
	<wl@xen.org>, Paul Durrant <paul@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Rahul Singh
	<rahul.singh@arm.com>, Anthony PERARD <anthony.perard@citrix.com>, "Juergen
 Gross" <jgross@suse.com>
Subject: [XEN][PATCH v12 00/20] dynamic node programming using overlay dtbo
Date: Tue, 5 Sep 2023 18:16:10 -0700
Message-ID: <20230906011631.30310-1-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A107:EE_|DM4PR12MB7551:EE_
X-MS-Office365-Filtering-Correlation-Id: 143d2a1f-f7ae-4c0b-572d-08dbae76e949
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	97FfOS0Fn/T/9N/T+36K21bd03n+6KM4OWS3q+s4OCeswHmkoz96hvdUP1rFziYUi6jS5YcgpxOj/XigxoxfOy1cTTVEs3UOQlozG8YtnWkuy+IXXdsXGCCcFtb2aWU0XlxCEDcP4qaXF8hcC1fKgPHTnZwc8o7yc6tBkB6lanXVFDxfWpVVeArse2TADqFTHejI3Ush4q4hlIYMAlS7IRkPrlkKwBNNc0V5KRuxsa/nTwT7eDyUtJN6T3XMpk68PLDqh7qyAlQoqhutQfZjC7E/aHE4/53+ePOsH2eqfewcfA4Fpq8PZ5AvtlG6UmIdv0y67rjjCA/e0uDmDIUGKhvUZtJsvDRhhAAvtxkA6V6Rfutjd5q3xo4XJ/NqxurQROeo1gUkLjHVV+jw4OSZs48jE9gfSfkff+pGehG42mQnTsX7iIaWzTuGO6iagHJbdfs8phzIKkgO7g8mWXxxjAhhMTvfzff18imXuuRpua6pBCp7Eq7YFk8eIKZoJRn9e0g/rTxYKYqQibSAhNRkD3R/Jx25OokQA+W4JN4nZD0PLUPGf9is8cJ3KzrIK12iZ6fsSa6WtJHKgi3Kz8twZioWUZ/N4KxtIUefJ6HJDEpO24imlm2b4kLoEJtHoOM58T8cK3WWBQ5Y+YRzMGfTNqoQQ3ax6DZfi5P0FVIVzc+CD/v+Tjkv9RqULN4Wzm4073CbtBS/i5BECKbiGw//NSb+WQZmRM5y3lpGZQsG9SYUd5qyKUkBlM91e0mRcQ4m+LlM0sQuLn7H7Fuya4pB2g==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(376002)(396003)(346002)(451199024)(186009)(1800799009)(82310400011)(36840700001)(40470700004)(46966006)(81166007)(356005)(6666004)(82740400003)(36756003)(40460700003)(36860700001)(86362001)(40480700001)(47076005)(2906002)(336012)(2616005)(426003)(26005)(478600001)(83380400001)(1076003)(70586007)(4326008)(8676002)(44832011)(70206006)(8936002)(5660300002)(7416002)(6916009)(54906003)(41300700001)(316002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:34.5860
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 143d2a1f-f7ae-4c0b-572d-08dbae76e949
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A107.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB7551

Hi,
This patch series is for introducing dynamic programming i.e. add/remove the
devices during run time. Using "xl dt_overlay" a device can be added/removed
with dtbo.

For adding a node using dynamic programming:
    1. flatten device tree overlay node will be added to a fdt
    2. Updated fdt will be unflattened to a new dt_host_new
    3. Extract the newly added node information from dt_host_new
    4. Add the added node under correct parent in original dt_host.
    3. Map/Permit interrupt and iomem region as required.

For removing a node:
    1. Find the node with given path.
    2. Check if the node is used by any of domus. Removes the node only when
        it's not used by any domain.
    3. Removes IRQ permissions and MMIO access.
    5. Find the node in dt_host and delete the device node entry from dt_host.
    6. Free the overlay_tracker entry which means free dt_host_new also(created
in adding node step).

The main purpose of this series to address first part of the dynamic programming
i.e. making Xen aware of new device tree node which means updating the dt_host
with overlay node information. Here we are adding/removing node from dt_host,
and checking/set IOMMU and IRQ permission but never mapping them to any domain.
Right now, mapping/Un-mapping will happen only when a new domU is
created/destroyed using "xl create".

To map IOREQ and IOMMU during runtime, there will be another small series after
this one where we will do the actual IOMMU and IRQ mapping to a running domain
and will call unmap_mmio_regions() to remove the mapping.

Example of overlay node:
/dts-v1/;

/ {

        fragment@0 {
                target-path = "/axi";

                __overlay__ {

                        ethernet@ff0e0000 {
                                compatible = "cdns,zynqmp-gem", "cdns,gem";
                                status = "okay";
                                interrupt-parent = <0x4>;
                                interrupts = <0x0 0x3f 0x4>;
                                reg = <0x0 0xff0e0000 0x0 0x1000>;
                                clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk";
                                #address-cells = <0x1>;
                                #size-cells = <0x0>;
                                #stream-id-cells = <0x1>;
                                iommus = <0xe 0x877>;
                                power-domains = <0xc 0x20>;
                                clocks = <0x3 0x1f 0x3 0x6b 0x3 0x30 0x3 0x34 0x3 0x2c>;
                                phy-handle = <0xf>;
                                pinctrl-names = "default";
                                pinctrl-0 = <0x10>;
                                phy-mode = "rgmii-id";
                                xlnx,ptp-enet-clock = <0x0>;
                                local-mac-address = [00 0a 35 00 22 01];
                                xen,passthrough = <1>;
                                ethernet-phy@c {
                                        reg = <0xc>;
                                        ti,rx-internal-delay = <0x8>;
                                        ti,tx-internal-delay = <0xa>;
                                        ti,fifo-depth = <0x1>;
                                        ti,dp83867-rxctrl-strap-quirk;
                                interrupt-parent = <0x4>;
                                interrupts = <0x0 0x4f 0x4>;
                                xen,passthrough = <1>;
                                phandle = <0x2>;
                                };
                        };
    };
};

Change Log:
 v5 -> v6:
    Add separate patch for memory allocation failure in __unflatten_device_tree().
    Move __unflatten_device_tree() function type changes to single patch.
    Add error propagation for failures in unflatten_dt_node.
    Change CONFIG_OVERLAY_DTB status to "ARM: Tech Preview".
    xen/smmu: Add remove_device callback for smmu_iommu ops:
        Added check to see if device is currently used.
    common/device_tree: Add rwlock for dt_host:
        Addressed feedback from Henry to rearrange code.
    xen/arm: Implement device tree node removal functionalities:
        Changed file name to dash format.
        Addressed Michal's comments.
    Rectified formatting related errors pointed by Michal.

 v4 -> v5:
    Split patch 01/16 to two patches. One with function type changes and another
        with changes inside unflatten_device_tree().
    Change dt_overlay xl command to dt-overlay.
    Protect overlay functionality with CONFIG(arm).
    Fix rwlock issues.
    Move include "device_tree.h" to c file where arch_cpu_init() is called and
        forward declare dt_device_node. This was done to avoid circular deps b/w
        device_tree.h and rwlock.h
    Address Michal's comment on coding style.

 v3 -> v4:
    Add support for adding node's children.
    Add rwlock to dt_host functions.
    Corrected fdt size issue when applying overlay into it.
    Add memory allocation fail handling for unflatten_device_tree().
    Changed xl overlay to xl dt_overlay.
    Correct commit messages.
    Addressed code issue from v3 review.

 v2 -> v3:
    Moved overlay functionalities to dt_overlay.c file.
    Renamed XEN_SYSCTL_overlay to XEN_SYSCTL_dt_overlay.
    Add dt_* prefix to overlay_add/remove_nodes.
    Added dtdevs_lock to protect iommu_add_dt_device().
    For iommu, moved spin_lock to caller.
    Address code issue from v2 review.

 v1 -> v2:
    Add support for multiple node addition/removal using dtbo.
    Replaced fpga-add and fpga-remove with one hypercall overlay_op.
    Moved common domain_build.c function to device.c
    Add OVERLAY_DTB configuration.
    Renamed overlay_get_target() to fdt_overlay_get_target().
    Split remove_device patch into two patches.
    Moved overlay_add/remove code to sysctl and changed it from domctl to sysctl.
    Added all overlay code under CONFIG_OVERLAY_DTB
    Renamed all tool domains fpga function to overlay
    Addressed code issues from v1 review.

Regards,
Vikram

Vikram Garhwal (20):
  common/device_tree: handle memory allocation failure in
    __unflatten_device_tree()
  common/device_tree.c: unflatten_device_tree() propagate errors
  xen/arm/device: Remove __init from function type
  common/device_tree: Export __unflatten_device_tree()
  xen/arm: Add CONFIG_OVERLAY_DTB
  libfdt: Keep fdt functions after init for CONFIG_OVERLAY_DTB.
  libfdt: overlay: change overlay_get_target()
  xen/device-tree: Add dt_find_node_by_path_from() to find nodes in
    device tree
  xen/iommu: Move spin_lock from iommu_dt_device_is_assigned to caller
  xen/iommu: protect iommu_add_dt_device() with dtdevs_lock
  xen/iommu: Introduce iommu_remove_dt_device()
  xen/smmu: Add remove_device callback for smmu_iommu ops
  asm/smp.h: Fix circular dependency for device_tree.h and rwlock.h
  common/device_tree: Add rwlock for dt_host
  arm/asm/setup.h: Update struct map_range_data to add rangeset.
  xen/arm: Implement device tree node removal functionalities
  xen/arm: Implement device tree node addition functionalities
  tools/libs/ctrl: Implement new xc interfaces for dt overlay
  tools/libs/light: Implement new libxl functions for device tree
    overlay ops
  tools/xl: Add new xl command overlay for device tree overlay support

 CHANGELOG.md                            |   2 +
 MAINTAINERS                             |   1 +
 SUPPORT.md                              |   6 +
 tools/include/libxl.h                   |  11 +
 tools/include/xenctrl.h                 |   5 +
 tools/libs/ctrl/Makefile.common         |   1 +
 tools/libs/ctrl/xc_dt_overlay.c         |  50 ++
 tools/libs/light/Makefile               |   3 +
 tools/libs/light/libxl_dt_overlay.c     |  71 ++
 tools/xl/xl.h                           |   1 +
 tools/xl/xl_cmdtable.c                  |   6 +
 tools/xl/xl_vmcontrol.c                 |  52 ++
 xen/arch/arm/Kconfig                    |   5 +
 xen/arch/arm/device.c                   | 319 +++++++++
 xen/arch/arm/domain_build.c             | 297 +-------
 xen/arch/arm/include/asm/domain_build.h |   2 -
 xen/arch/arm/include/asm/setup.h        |  12 +
 xen/arch/arm/include/asm/smp.h          |   4 +-
 xen/arch/arm/smpboot.c                  |   1 +
 xen/arch/arm/sysctl.c                   |  16 +-
 xen/common/Makefile                     |   1 +
 xen/common/device_tree.c                |  58 +-
 xen/common/dt-overlay.c                 | 901 ++++++++++++++++++++++++
 xen/common/libfdt/Makefile              |   4 +
 xen/common/libfdt/fdt_overlay.c         |  29 +-
 xen/common/libfdt/version.lds           |   1 +
 xen/drivers/passthrough/arm/smmu.c      |  60 ++
 xen/drivers/passthrough/device_tree.c   |  92 ++-
 xen/include/public/sysctl.h             |  24 +
 xen/include/xen/device_tree.h           |  38 +-
 xen/include/xen/dt-overlay.h            |  63 ++
 xen/include/xen/iommu.h                 |  10 +
 xen/include/xen/libfdt/libfdt.h         |  18 +
 33 files changed, 1811 insertions(+), 353 deletions(-)
 create mode 100644 tools/libs/ctrl/xc_dt_overlay.c
 create mode 100644 tools/libs/light/libxl_dt_overlay.c
 create mode 100644 xen/common/dt-overlay.c
 create mode 100644 xen/include/xen/dt-overlay.h

-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595989.929700 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdh9v-0006u4-39; Wed, 06 Sep 2023 01:16:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595989.929700; Wed, 06 Sep 2023 01:16:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdh9u-0006tx-Uf; Wed, 06 Sep 2023 01:16:42 +0000
Received: by outflank-mailman (input) for mailman id 595989;
 Wed, 06 Sep 2023 01:16:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdh9u-0006tr-8F
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:42 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20620.outbound.protection.outlook.com
 [2a01:111:f400:fe59::620])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 082fd43b-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:41 +0200 (CEST)
Received: from CY5PR15CA0125.namprd15.prod.outlook.com (2603:10b6:930:68::28)
 by DS7PR12MB6237.namprd12.prod.outlook.com (2603:10b6:8:97::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.28; Wed, 6 Sep
 2023 01:16:36 +0000
Received: from CY4PEPF0000E9DC.namprd05.prod.outlook.com
 (2603:10b6:930:68:cafe::28) by CY5PR15CA0125.outlook.office365.com
 (2603:10b6:930:68::28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:36 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9DC.mail.protection.outlook.com (10.167.241.82) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:35 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:34 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:34 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:34 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 082fd43b-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cjkzRChznUFsL/Kb4ezMYaOVqHLLgwX8VivHXQTbxdPuksUtLcGHtpYaONAcfrNmLFAk8OIrsn7Zkan9vjH0Xj2cEKu9T0VWvnFsQWVQj+lNQjxiVT15QbaKySHyKEtSsRCZMSuqH5P62r3EkNbC2EBPOOuzRusxVHS2fv/RTpJliKFlHO6/kWSxS61b1D4xNffDRkciO/qoyzKREq8TH5BlAAU8hYhIR+zGlMVaozesk9nyTw4XFECOeO3H9SXU6lL+8NM30NCCjVRS7VC7rE6luPimKTNAurrL0Vbv84wUtOi4TDxjBxTVnL/15sL0Rb1ddliajkwl3luDkUm4GQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=551FbITUy/lX+UFAVwLYLGK11TzVaHOhuLFDvzMcrP0=;
 b=bHnf0id+X79G0TkY80EYj9riKNuFeUQDAhuo5XE34GTtGxWD1aSTa7t5H1PiCBJ1gNsxt5ANp3OsuMFy+s8IDgsve+LtftUSSJdzB37rigHogZOPE3vYgpcD+cphMtKIMLAIf+/Ysk25aSQicBqNiTgYvM1W1s8FL5NhUOnFWZyzFufOCMthqHEArZGTEo9CnXm3FJuqOcAKhOafxyhCMaPE53jVpiopPSSA6dOEF/3+Wac4CoF5VXpFcsofctkbxzxtqW3JVlpWn1MMfQJ/P8YKWEFWJ1Rbn4+rqUhiscyfYEH66PzhfcnKSkgO3F74P7GTKggnFxDax2tkNIqa9Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=551FbITUy/lX+UFAVwLYLGK11TzVaHOhuLFDvzMcrP0=;
 b=2mStBXeiExRDjGr89TFfTiTBbP2C3BpqTOAcHceDOw6rSPuH6Tvz0PeW74t5QkIrsEVFdNCu1PFndvCA4ZU9v0wNsHkKla97MdjhPBtfn48dfIbhIb9yxd81FcltA7ijOoeLswP/jRqaw7K5BfPGkPtZGy7saElcm/12pGnGc1g=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v12 01/20] common/device_tree: handle memory allocation failure in __unflatten_device_tree()
Date: Tue, 5 Sep 2023 18:16:11 -0700
Message-ID: <20230906011631.30310-2-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9DC:EE_|DS7PR12MB6237:EE_
X-MS-Office365-Filtering-Correlation-Id: e08b7899-7037-46fd-e334-08dbae76e9e1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wC/e+H7Gv3Aj63UAEApYCrfbJCTghyZDKBvaUE1PGN64/fVJr73Sl1EIQQMVdthUQ2UN/wLdllDqKNKBldarPu8NJMtF/wKZk8xW9kP4G3XlqcYdAZalMuA/WUpIAx9aWtURG4SUCXiW0wUhmz8J9uPThuZiOFszkIMO4aC6C1Tk+Gqn85NnPnaLtIg65xlq7w/WpKDOw56vJz1/qYnReZD8mGpqjVI3c5Rpiv6EWq21UWh5i+xxrWG9TZK2GfoJvdUb63zx+EPOoKpE/R3TVtmg7KgfW/viNjU5QIWBEp1eJqsMEVyfohPS+9IZbhKKzBwyWAA/pwOJj5Rsgc6jxAY6lrxBnoNQHCvlkFBUWUkRsJyNsxBq0eqcnNlz2wMo5vliE7IzOA3zTxPIQskC6N9161vMYMVmJyKBHQF7reoAyGLpe9Eq/lM4jRl4/pM7LdBk2QaX0k4nVY7//1OJZeh6xPMa2bkk8LpUFXXcJ0DVUHhYThfXd41zm1HRF2SSNe8fFHE/w4/Ru21vFclfeeZl37Uw5KQefnHx9YmncgNHerICktk/vEQE5WCwmvIBwbrB0ltH+vi998LmnXa/fEHX0bbYNB9BQpYFtd+plqTwqTxk3A11eKe0ONBKY2Z8zfLr5rcuE7V6BezKRZHzu4GiQMjuujmLb0HyMe7B9DFxJmzKb6E81dI0/bylPQyWNRf01AFwwtnZ208zBjzgowbpHuZ29frhuCKPtuORnXJNwUuqN+nuatYSS7mLdztAZGm5tSyvznHiidf7qMp6aQ==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(136003)(376002)(396003)(451199024)(1800799009)(186009)(82310400011)(40470700004)(36840700001)(46966006)(41300700001)(8936002)(40480700001)(83380400001)(44832011)(478600001)(6916009)(6666004)(2906002)(5660300002)(70206006)(8676002)(316002)(54906003)(4326008)(70586007)(1076003)(40460700003)(26005)(2616005)(36860700001)(336012)(426003)(356005)(36756003)(47076005)(82740400003)(81166007)(86362001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:35.5232
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e08b7899-7037-46fd-e334-08dbae76e9e1
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000E9DC.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB6237

Change __unflatten_device_tree() return type to integer so it can propagate
memory allocation failure. Add panic() in dt_unflatten_host_device_tree() for
memory allocation failure during boot.

Fixes: fb97eb614acf ("xen/arm: Create a hierarchical device tree")
Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Henry Wang <Henry.Wang@arm.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Julien Grall <jgrall@amazon.com>

---
Changes from v9:
    Update comment regarding return value of unflatten_device_tree().
---
---
 xen/common/device_tree.c | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index 0522fdf976..7c6b41c3b4 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -2091,9 +2091,11 @@ static unsigned long __init unflatten_dt_node(const void *fdt,
  * can be used.
  * @fdt: The fdt to expand
  * @mynodes: The device_node tree created by the call
+ *
+ * Returns 0 on success and a negative number on error
  */
-static void __init __unflatten_device_tree(const void *fdt,
-                                           struct dt_device_node **mynodes)
+static int __init __unflatten_device_tree(const void *fdt,
+                                          struct dt_device_node **mynodes)
 {
     unsigned long start, mem, size;
     struct dt_device_node **allnextp = mynodes;
@@ -2114,6 +2116,8 @@ static void __init __unflatten_device_tree(const void *fdt,
 
     /* Allocate memory for the expanded device tree */
     mem = (unsigned long)_xmalloc (size + 4, __alignof__(struct dt_device_node));
+    if ( !mem )
+        return -ENOMEM;
 
     ((__be32 *)mem)[size / 4] = cpu_to_be32(0xdeadbeefU);
 
@@ -2131,6 +2135,8 @@ static void __init __unflatten_device_tree(const void *fdt,
     *allnextp = NULL;
 
     dt_dprintk(" <- unflatten_device_tree()\n");
+
+    return 0;
 }
 
 static void dt_alias_add(struct dt_alias_prop *ap,
@@ -2215,7 +2221,11 @@ dt_find_interrupt_controller(const struct dt_device_match *matches)
 
 void __init dt_unflatten_host_device_tree(void)
 {
-    __unflatten_device_tree(device_tree_flattened, &dt_host);
+    int error = __unflatten_device_tree(device_tree_flattened, &dt_host);
+
+    if ( error )
+        panic("__unflatten_device_tree failed with error %d\n", error);
+
     dt_alias_scan();
 }
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595996.929762 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA1-0008MB-06; Wed, 06 Sep 2023 01:16:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595996.929762; Wed, 06 Sep 2023 01:16:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA0-0008JC-La; Wed, 06 Sep 2023 01:16:48 +0000
Received: by outflank-mailman (input) for mailman id 595996;
 Wed, 06 Sep 2023 01:16:47 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdh9y-00079K-Vb
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:46 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0aecb4fa-4c53-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 03:16:45 +0200 (CEST)
Received: from BL0PR0102CA0035.prod.exchangelabs.com (2603:10b6:207:18::48) by
 LV2PR12MB6015.namprd12.prod.outlook.com (2603:10b6:408:14f::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:39 +0000
Received: from BL02EPF0001A101.namprd05.prod.outlook.com
 (2603:10b6:207:18:cafe::61) by BL0PR0102CA0035.outlook.office365.com
 (2603:10b6:207:18::48) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:39 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A101.mail.protection.outlook.com (10.167.241.132) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:39 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:39 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:39 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:38 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0aecb4fa-4c53-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gYfPCUou6Me5bAHdo0fdbji6sGCqTVaXWC+WNm4mk8YggFzkQ6c9P0AlGbmM5o2bVM+eQwDjTPlHJmhUtGsubDT9Mv5+fhQ/w41PnrnSrQImxouAP4JBmcVim50ABA4Zuq+kgapIrn3YZmNHeC/SjBkh8uFBfvCfpFbSs5QgXqvYznDgejRF6l/6ZWFNU4r9CvFX5l2OnaiC6uimgtrYzAAdLeK7iuvwAVMTlxXFSouqrDevHFQePm61hejtdIs2kQyf9rAGUNjs/buPlk21u4Vg7kInFAkReG667VRD4Awv/HTCugCWxCkvhJWSfYQ2F8RpX+A3PxUwoE9I151QxQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+aOH8wbfxJ3CDB9n8z4otIPVVDXaY3ZnHxlpPeTlbO8=;
 b=Owyo5CSr9/6ZX2Z+joewg8Saxrid9UartnNb0urqnEuQ+09XTVzXGwxxR0LrTgvcwIeZfRmDaXFq4vIVJfLfODlp0skuC457XNnYr+PuzzCtNoWGI0uttMKwJSfD0I/8jea7aLpk1QU3jaeYGrpvEyF3pBgr6bLLtaJDjhjLUUrav+twp9GXX7PN9U8F/lmUgOKsNXC+lIX2ksemqbeip9pTc073U1VhfA5LG5WWXrVUE+xjUMe283NQhIVP7n8mqF5G5RVc9ig1xjZfxqYhg6ayUOy6QjtcYBaKAxgkO57PfxGwv7+hVIBTGZcQuQWEtdW05L7+NATbnIyEEwHXww==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+aOH8wbfxJ3CDB9n8z4otIPVVDXaY3ZnHxlpPeTlbO8=;
 b=S4mSZ7BAbOHs0azHtNS8K3t3ynHo2A1O/Osx61WsSS7LJGmmpPGncXMb8xMq3f3jW01ZY7Gsyi2L94sJDDKxtYSg+iJn1wS+ob9T9tpqDBA2MYsB+c+kypsvBqMRD1aDemdtPt/lMl2VfbJWmoZDfGwx3T5QWZ8vxuAcw3Pcuws=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v12 06/20] libfdt: Keep fdt functions after init for CONFIG_OVERLAY_DTB.
Date: Tue, 5 Sep 2023 18:16:16 -0700
Message-ID: <20230906011631.30310-7-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A101:EE_|LV2PR12MB6015:EE_
X-MS-Office365-Filtering-Correlation-Id: 966adf19-d251-4134-e266-08dbae76ec4d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	J9JVl4o4VWjcHtLoBQny51ZptNiZDs0vz3P3veBdganJRFCOHSfBR13ObDkwulEW4sS6X2VT9lOJR+OanQIVi0HyN9yeQKV/RQKu4gc4y0UMOJStrUnaYRbSzfOXUvoFTGMjfnjQbeOBlV0y38kvQhvTQbz9TYi3iFgjNL3aARCEGQ2JW3AQ07pOoYirRUEdydNq57QWj/8FOeeawYlEbQ514yEGM2289VTEdJwd5TsppHcYnY0g7Vu5obuxwTCzYryfi4XpF6DwaW0wBzH0ZmyiSKIgL5MWeWjJletFj4on5O3jXZg/Xn6eHWpLvM9YLapP1AU/J2z3Q57VDkgz7cOwhGSdD/sgU1fz/RcTS9oO99+PMVnD52HpVlxuNggeh9+AHZh5ezSUCqhgk9PQEdkHFqiYvQSumXlyRigDW4lSdKDoSTUMpV2O1KY4hMSX4CNB4vKImDUwlqajps+J0dFUr/d5fKjwypdMnguTO2gyWSezGpHcfhvwygyAYXVGLyrI1lqNtGE9Esr+ijjak5ik8w/qDTRB/+TNgI92coa6Xx+W35K5xn9fPaPE9p8ototkwOsP+S69eMCllXsIh0yocF7YkSblmxG1OjPZ8oYTtk6g7OcjWF7iHMrnzHRki1bbujIPIwVxzO2UZUN/fXWxL2E3HqqqmKq9NQUludNtrRuflNzzmkeTIHq+NC5idc7GB3BTjbtkHr2e4WrLklUoFUBQ3BQUU3fD7kaIXfWpeRolVKMaJ33NkPqn8E29f8t6VfTYQ6p0MlyUnREP/w==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(346002)(396003)(39860400002)(376002)(186009)(1800799009)(82310400011)(451199024)(46966006)(36840700001)(40470700004)(36860700001)(6666004)(40460700003)(44832011)(5660300002)(83380400001)(86362001)(1076003)(2616005)(426003)(336012)(2906002)(4744005)(47076005)(36756003)(26005)(40480700001)(356005)(82740400003)(316002)(41300700001)(70206006)(6916009)(54906003)(81166007)(8936002)(8676002)(70586007)(4326008)(478600001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:39.6489
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 966adf19-d251-4134-e266-08dbae76ec4d
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A101.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV2PR12MB6015

This is done to access fdt library function which are required for adding device
tree overlay nodes for dynamic programming of nodes.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Acked-by: Julien Grall <jgrall@amazon.com>
---
 xen/common/libfdt/Makefile | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/xen/common/libfdt/Makefile b/xen/common/libfdt/Makefile
index 75aaefa2e3..d50487aa6e 100644
--- a/xen/common/libfdt/Makefile
+++ b/xen/common/libfdt/Makefile
@@ -1,7 +1,11 @@
 include $(src)/Makefile.libfdt
 
 SECTIONS := text data $(SPECIAL_DATA_SECTIONS)
+
+# For CONFIG_OVERLAY_DTB, libfdt functionalities will be needed during runtime.
+ifneq ($(CONFIG_OVERLAY_DTB),y)
 OBJCOPYFLAGS := $(foreach s,$(SECTIONS),--rename-section .$(s)=.init.$(s))
+endif
 
 obj-y += libfdt.o
 nocov-y += libfdt.o
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595997.929775 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA2-0000OY-CJ; Wed, 06 Sep 2023 01:16:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595997.929775; Wed, 06 Sep 2023 01:16:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA2-0000NX-4Z; Wed, 06 Sep 2023 01:16:50 +0000
Received: by outflank-mailman (input) for mailman id 595997;
 Wed, 06 Sep 2023 01:16:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhA0-0006tr-8D
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:48 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20611.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::611])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0ccc862b-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:47 +0200 (CEST)
Received: from MN2PR19CA0019.namprd19.prod.outlook.com (2603:10b6:208:178::32)
 by BL3PR12MB9052.namprd12.prod.outlook.com (2603:10b6:208:3bb::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Wed, 6 Sep
 2023 01:16:45 +0000
Received: from BL02EPF0001A102.namprd05.prod.outlook.com
 (2603:10b6:208:178:cafe::c1) by MN2PR19CA0019.outlook.office365.com
 (2603:10b6:208:178::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:45 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A102.mail.protection.outlook.com (10.167.241.134) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:45 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:42 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:41 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0ccc862b-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bBg1DDNhP8qXdAIAGp4WVRdfKNF/Vhc1E2Ef4e/v7RtotSiVJn6SCq6luUbAwTXNYukBzUTzieXkoTcgpGI4sZYaY2K/zNmrHKJVxOd1oNu7otn+udHaOeTptmdZtGJVLfSy8W2RIYSpfaI7OJwHcsMtAbWXdgq/mZkP7z1E6jVYiEqDzZYNgTG9k0uAjjn1s9tHNXf4I6UTMq8A8zAXJWWbecjUm/IJrJy4RRjy0Rn60LvRS1Thwz6xMkgEFoDLCG3GaMcVHUtixKYWZdZUebtPL9mfsIle/d+mhalC+I1hT8PwyAI7wcsgOhBPHtS6vpF8b3OkAm8t+TDWt62NTg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FrgEsWcwxI+fxIg7Dz5RugaxhcdPFLlME4+MrASnUSw=;
 b=AT2m9zaG7bjnMwOj/ZSaCea/fUOtdSk/P8DL9tZ1/S4CrtblrjG6RqPaP1VPQi5XZO2+WkDGxe+e4OYC3y0IhLQjnN3VLNkB6x9Q49i2O+ugqmHzr6YntFBLS7FNK+JNr6yOs/AiWE1Jkh+uhyqeAcNzbTLlMQtsJx3Tk6sxzzyEo8Ci0yyV7wB6Br2wGi+y5F9v8EnQ134k5G3oCuwful5C0rM9U6KM3WIdQfBRtYlGtIGQQb7G9yFK1N8AElW76UqzBCiBuWLb1oO74OD7VI20sh/4Fm/nKIl1tQeqFvTGjS21NilSq5uoDOfFnBRMmxI/CPYUC7t7v429jWWO7w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FrgEsWcwxI+fxIg7Dz5RugaxhcdPFLlME4+MrASnUSw=;
 b=VcCRaChZJ1TFoLFO2pa8VsdCc5MqBjoaKV7gnUWjvc/v1Y979diX+XohwpyTJKF5nPF9/dxhcuCfazh6Y/8tnejj1SSqt+w6y8ossDYfpWYzD0oZvTBWHzixAD5jG17I24iLSjeJ/hZKM6PcFuzcnArUVBBWmg6DNMZr0vpP4GA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v12 10/20] xen/iommu: protect iommu_add_dt_device() with dtdevs_lock
Date: Tue, 5 Sep 2023 18:16:20 -0700
Message-ID: <20230906011631.30310-11-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A102:EE_|BL3PR12MB9052:EE_
X-MS-Office365-Filtering-Correlation-Id: b10a6c5c-a22b-4109-c291-08dbae76ef96
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5VxtcJgTRbn5Qmw74uvCbkM7DCwaEVZuMfNOCGcCKsJfPfxnC5O353Cs8sArJNuUACmnMaCKulPJqurjKOdnNt6VUCtZFVqMjU9LsN7575y/pONWSg1gv8CcCrnV7KuBJuVTVeRnZr/5VfwMpyEaSYO3jNeVG2CYxXtZho2ZzuSfJNucHZAJNYFgGwyIyrOm/lzFxcgJzFoGVtkOjKx2KHRGTzgq8282dy4C4YVHCqrl5+DNPyYo2lIILSeD3BRG1Jj+kcqsoMAgWQuZZ/HCePaCw5E91My6lEyeYUwpQGh+7njxFk4f4dYdGwu3uZtB0ZPA5e4dvFbmBPRJ6rGYJkJTR+oBqcDC3wlUkRVA/KztdTTNgB5sC0f32+TiBgkz2tIQQYFuKn65K7a8aGDaGHoCFp4dTs3/THkcwjFNxZiN5+01gtHFiQt06HFA0rkUhTZ5SR05XldtHhwtGlKAjhNrWHeWVAzFHoZcgtVdfL9wptMYKLN9KZf3uJ57N6pVSRC+0OsSJ+VFtGm1JfKA/YYokp6YlZhZCoxTpZr0dZkIqULXtp4XQ5RetF2CeAmQPfqzsQ4xHYVncD+Dyy7P/udHkQacR/FBpNQvbqdFEgw2D2kGpoO7K9FWP7aFRSCLRM7DmG4tC8Sk3JFRU8WnNRvtm5D/3no6IUkQV22A37pVGL6bNYSiRv/2T4FYCUKxhAmQZ2L2DhCtBiRyy13EhOo89BwN3bvoDqdzm9Aaj994zSpRK2aA+/pI+n2dsHoimHkt+MDi7FdO7jVirYy7hg==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(396003)(346002)(376002)(186009)(1800799009)(82310400011)(451199024)(40470700004)(36840700001)(46966006)(8676002)(8936002)(5660300002)(6916009)(316002)(2906002)(54906003)(36756003)(70206006)(70586007)(44832011)(4326008)(36860700001)(41300700001)(40460700003)(426003)(1076003)(26005)(40480700001)(47076005)(336012)(82740400003)(6666004)(81166007)(356005)(478600001)(83380400001)(2616005)(86362001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:45.1597
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b10a6c5c-a22b-4109-c291-08dbae76ef96
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A102.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR12MB9052

Protect iommu_add_dt_device() with dtdevs_lock to prevent concurrent access
to add/remove/assign/deassign.
With addition of dynamic programming feature(follow-up patches in this series),
this function can be concurrently accessed by dynamic node add/remove using
device tree overlays.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Luca Fancellu <luca.fancellu@arm.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>

---
    Changes from v7:
        Update commit message and fix indent.
---
---
 xen/drivers/passthrough/device_tree.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index a7d86a20a0..687c61e7da 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -147,6 +147,8 @@ int iommu_add_dt_device(struct dt_device_node *np)
     if ( dev_iommu_fwspec_get(dev) )
         return 0;
 
+    spin_lock(&dtdevs_lock);
+
     /*
      * According to the Documentation/devicetree/bindings/iommu/iommu.txt
      * from Linux.
@@ -159,7 +161,10 @@ int iommu_add_dt_device(struct dt_device_node *np)
          * these callback implemented.
          */
         if ( !ops->add_device || !ops->dt_xlate )
-            return -EINVAL;
+        {
+            rc = -EINVAL;
+            goto fail;
+        }
 
         if ( !dt_device_is_available(iommu_spec.np) )
             break;
@@ -190,6 +195,8 @@ int iommu_add_dt_device(struct dt_device_node *np)
     if ( rc < 0 )
         iommu_fwspec_free(dev);
 
+ fail:
+    spin_unlock(&dtdevs_lock);
     return rc;
 }
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595998.929781 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA3-0000W3-2p; Wed, 06 Sep 2023 01:16:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595998.929781; Wed, 06 Sep 2023 01:16:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA2-0000Ub-N1; Wed, 06 Sep 2023 01:16:50 +0000
Received: by outflank-mailman (input) for mailman id 595998;
 Wed, 06 Sep 2023 01:16:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhA1-0006tr-74
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:49 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on2060b.outbound.protection.outlook.com
 [2a01:111:f400:7e89::60b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0c76908c-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:48 +0200 (CEST)
Received: from DM6PR02CA0047.namprd02.prod.outlook.com (2603:10b6:5:177::24)
 by PH8PR12MB7326.namprd12.prod.outlook.com (2603:10b6:510:216::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 01:16:42 +0000
Received: from CY4PEPF0000E9D7.namprd05.prod.outlook.com (2603:10b6:5:177::4)
 by DM6PR02CA0047.outlook.office365.com (2603:10b6:5:177::24) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6745.34 via Frontend Transport; Wed, 6 Sep 2023 01:16:41 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9D7.mail.protection.outlook.com (10.167.241.78) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:41 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:40 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:40 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:40 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0c76908c-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Bma/VP8gAET5qymQzVqSBwBwPI2pCwhUDxs/W0zwksb/wIfp7NaBkIStIFkDT013HKHTkjOuXq6Z5bgcj+duTqgdDsTwxw1YryEEMIoV68BK2xaW58vGgZfuREVpj9TdmddXctkuoWQSo1n3nY/KO7Fw+waTtuI/awzuNYWtmdiZrtnN6/ujGPk+IchToQGE35e2rNBxbC/gZ1aQPiVfjp5UG7rQSu54VoOYblk3rqaZzjwhvU8xQ4HLhkIiK0kXDzIghcP+72lBRzW+CETAG9DpQFW3a87gPbFbGW8IVlcdkbIxjX2MCXgsuFL5RWBSqjWQPmigglYqg911VYA0nw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=JIgawtLTJDYclMTRziV6+ukrPXqF+ozH3iEpHoQmI6c=;
 b=dzTsvZc9PcP6ZIbBY8Oou2Y4Wdr1Nm5Nhmt6klWU0E50DCTbYcUn5RdrndOOY524q16g6NeJNZccW5RBypV4ZEk2WxWNdfYsFx15geAmgkAWQfbj9PdXziFl7lwVvqxEOeanTWWEWOjvpIGhJZSFNpWmx+1YOrm0EkXO+J78NM6OYYF8RPRdGdEztVJHoPJEHfjMmjpJkaSbm59qoAofGy/GoE0+FKDAhJXFtGj1L9x1bms4srnyOmzu9YD+YdyD6cg6KEIZULlxlK1Mr2KBXqdDbNd6+6Mt6CeRSVQOQBi4EoGiGRbcgoBviOgmQK+hs7RJyQPlTiyXgxrtB65uCw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JIgawtLTJDYclMTRziV6+ukrPXqF+ozH3iEpHoQmI6c=;
 b=xVPaTsQNoxjMoIYYP2l1jzMsJqXVymBNeiUHKtqIMm4h3TTiTy0VvrnrbfvwLAw/dj7Q9vMaJ+rSWrXS0Fzy+CE8OtlIJl+de2lPxpzQk1OB8jZYF4Jx/UKKVXbD0d9xOHuLn2ZZZlzIdVEgHiEMZRDfOYIY/M4F94374alq/Ks=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v12 08/20] xen/device-tree: Add dt_find_node_by_path_from() to find nodes in device tree
Date: Tue, 5 Sep 2023 18:16:18 -0700
Message-ID: <20230906011631.30310-9-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D7:EE_|PH8PR12MB7326:EE_
X-MS-Office365-Filtering-Correlation-Id: 34fcf7f5-4b5c-4d16-eae0-08dbae76ed9a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	V3Os/i7+i9psodDWzfHA4FGaduAWPW6D5+NjZ+AYzqZGdvPaG0XTP0cwbvUGywYLTUMFpsTcj6jdLdIrfyhjJluhDelyNnxKZAngnMnDokD+0A4SsWqLI7cQMOjUWS0KEX+PA1Cq9YL9hxACusGAX3C30UtrpEijAPrW2flZpOicQ6plTwspSPKrGyOfmQeTXzH9IwoK+f/Hpku9vPif+2IqG9HVBGZ6i5hNKyLyG0XoyrMEqUVGrJHPdbERMFPsJiwJ4/xUzSrx2TaTjOVeyOyBCnbmRvaq37IjuIIWhy1E20I2356yHIJgYQ/X0h/r3WonNE64fvWehQKkEXaPk0aLl9OjcLGkc0b2MWkup6DMCoEulyXcLddBCAL7hkkO0c0rjq8cdqXQMqhAbrBfaEnNxqLRntDlXMZoKWyKUdDZOWKXwif6N9NUNc5V/XIsHOaYsLhqMAnYJeP7RnSCPBFhvFjhqDhbtBExDZOneEJxhPs/N6Hzr36gE/qG2HWEb0cDl+I/GLJDCwxxdovmLH4AdTB/k/6KORHqOoI4Pvn+mhUWYupUgauxrSyrL8vDfWpfpyainD1P0lASDL+GRCSjqZqgxM2n74PYB464XeupmF6F7XjTHwQZaexT/VKpkrfA4VJD+HnZLmFwgy9osuMYlIUevMGflcERHt2oGT8RH38k/aTlJXb8r38RXl7LWxUVmLNHN6GEkhOfP28RkcxFQtbeFVoEWqo55m0fD9RACFJZUac7PjnagBo+NfKm/1Xk5boXjeieO0xaSeQOmJnHo8t+SrIT2+rcrKhjxQ8=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(376002)(346002)(396003)(451199024)(82310400011)(186009)(1800799009)(40470700004)(46966006)(36840700001)(478600001)(6666004)(316002)(6916009)(8676002)(2616005)(4326008)(8936002)(44832011)(26005)(5660300002)(41300700001)(336012)(426003)(2906002)(83380400001)(36860700001)(1076003)(47076005)(356005)(82740400003)(81166007)(36756003)(54906003)(70586007)(70206006)(86362001)(40460700003)(40480700001)(37363002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:41.7690
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 34fcf7f5-4b5c-4d16-eae0-08dbae76ed9a
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000E9D7.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB7326

Add dt_find_node_by_path_from() to find a matching node with path for a
dt_device_node.

Reason behind this function:
    Each time overlay nodes are added using .dtbo, a new fdt (memcpy of
    device_tree_flattened) is created and updated with overlay nodes. This
    updated fdt is further unflattened to a dt_host_new. Next, we need to find
    the overlay nodes in dt_host_new, find the overlay node's parent in dt_host
    and add the nodes as child under their parent in the dt_host. Thus we need
    this function to search for node in different unflattened device trees.

Also, make dt_find_node_by_path() static inline.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>

---
Changes from v10:
    Fix commit message with right function name.
Changes from v9:
    Fix indentation issues.

Changes from v7:
    Rename device_tree_find_node_by_path() to dt_find_node_by_path_from().
    Fix indentation.
---
---
 xen/common/device_tree.c      |  5 +++--
 xen/include/xen/device_tree.h | 17 +++++++++++++++--
 2 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index b8ef1c7ae2..f38f51ec0b 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -358,11 +358,12 @@ struct dt_device_node *dt_find_node_by_type(struct dt_device_node *from,
     return np;
 }
 
-struct dt_device_node *dt_find_node_by_path(const char *path)
+struct dt_device_node *dt_find_node_by_path_from(struct dt_device_node *from,
+                                                 const char *path)
 {
     struct dt_device_node *np;
 
-    dt_for_each_device_node(dt_host, np)
+    dt_for_each_device_node(from, np)
         if ( np->full_name && (dt_node_cmp(np->full_name, path) == 0) )
             break;
 
diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h
index a518310a62..44d315c8ba 100644
--- a/xen/include/xen/device_tree.h
+++ b/xen/include/xen/device_tree.h
@@ -570,13 +570,26 @@ struct dt_device_node *dt_find_node_by_type(struct dt_device_node *from,
 struct dt_device_node *dt_find_node_by_alias(const char *alias);
 
 /**
- * dt_find_node_by_path - Find a node matching a full DT path
+ * dt_find_node_by_path_from - Generic function to find a node matching the
+ * full DT path for any given unflatten device tree
+ * @from: The device tree node to start searching from
  * @path: The full path to match
  *
  * Returns a node pointer.
  */
-struct dt_device_node *dt_find_node_by_path(const char *path);
+struct dt_device_node *dt_find_node_by_path_from(struct dt_device_node *from,
+                                                 const char *path);
 
+/**
+ * dt_find_node_by_path - Find a node matching a full DT path in dt_host
+ * @path: The full path to match
+ *
+ * Returns a node pointer.
+ */
+static inline struct dt_device_node *dt_find_node_by_path(const char *path)
+{
+    return dt_find_node_by_path_from(dt_host, path);
+}
 
 /**
  * dt_find_node_by_gpath - Same as dt_find_node_by_path but retrieve the
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595999.929799 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA5-0001EV-MW; Wed, 06 Sep 2023 01:16:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595999.929799; Wed, 06 Sep 2023 01:16:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA5-0001Dh-ID; Wed, 06 Sep 2023 01:16:53 +0000
Received: by outflank-mailman (input) for mailman id 595999;
 Wed, 06 Sep 2023 01:16:51 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhA3-0006tr-5n
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:51 +0000
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
 (mail-sn1nam02on20601.outbound.protection.outlook.com
 [2a01:111:f400:7ea9::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0dd521f1-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:50 +0200 (CEST)
Received: from MN2PR19CA0023.namprd19.prod.outlook.com (2603:10b6:208:178::36)
 by PH7PR12MB8121.namprd12.prod.outlook.com (2603:10b6:510:2b5::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.20; Wed, 6 Sep
 2023 01:16:46 +0000
Received: from BL02EPF0001A102.namprd05.prod.outlook.com
 (2603:10b6:208:178:cafe::58) by MN2PR19CA0023.outlook.office365.com
 (2603:10b6:208:178::36) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:45 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A102.mail.protection.outlook.com (10.167.241.134) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:45 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:43 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:42 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0dd521f1-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=labp9xYICQHkakEdDLSrjb9llPcSUyeYrLqGh3XOgUj24Fu8VStNtoCrMWUSd8in373Qggb9m9MnzsWbGHALkuo1VYMZrK0wgdyVhCDdVFKujdx1j8lKQa6333+/vqdATbFA3fB46Es3jtim5Bf6vPe+noZektzTz+1CyKl4OdKREj6ECjrpUFGaUqY5spP8moxAOtx0FL9hRUvLsZccIqEC0fv9f7yVDgtRpKU40u4VhOE0prLj+MMcGY/iKKMwGlCYnjTG2ydX9EXadevxiMAeTJ623b66TD+FLaoA4S1QsHiGvweyZGd14aqtxY62Iba6B7vIScZqxYXkv8VWQw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=XiT/RwOVy6mwEmWSqI/dWGYlfQVkf5SstjJbmGxz3sM=;
 b=Ow9jDr2XLZ3vRVhvHAAgOq0q13pOVMt8Sl8ZLGiy3rcJh0RwdT4bP8NQgB40t/9VJdr4DblLoLs3FtiFSDGys7IM2DOzX1UwWVYIAl+xn1bnUIgO99QffFldnE/8rOE1wSHPeCSuZNmQ4g9wFPEThMEelfJMTIbvpCpnjSjEtkcu3Q/iUto1L48KeBS/RLKtXNXK5ntYnNOnrqZEEoW/ws2UMGUvnw2v4LPiK2K+VH5KQr9W0W71R3K96ZCwR2rBGjRrFKVAX7UqZy6AcQyOPX+5yN6jB0df5ZcldcLK6XVpP56gXMu2HvrR/leLNmnNR/yRxz+PCDztYmryXUYQjA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XiT/RwOVy6mwEmWSqI/dWGYlfQVkf5SstjJbmGxz3sM=;
 b=3Cjhf2owuTWkYxyH0N4ZHKbk1BEh3GCFYnmYX+aczJD1gxGOPh3wHghLYUZPdb3bMFk7sXsa1sbK9hrwa6GyYZWxlqMPlOjrC7MRVUME2X+j0APt8ukqrZZqVSdUlGNfvTQgPjphvnqo9fIWaHvSQHr4naVUWk7zklmlijVwv1Y=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Jan Beulich <jbeulich@suse.com>, Paul Durrant
	<paul@xen.org>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [XEN][PATCH v12 11/20] xen/iommu: Introduce iommu_remove_dt_device()
Date: Tue, 5 Sep 2023 18:16:21 -0700
Message-ID: <20230906011631.30310-12-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A102:EE_|PH7PR12MB8121:EE_
X-MS-Office365-Filtering-Correlation-Id: b2edb5c1-aebf-4288-36a3-08dbae76efcb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	v3/TOB9lhW9kXRBUR6VdN6SE76ShL9TKb8yIAvY9517DHLbWSLjdyLxjNwyzlwrFCtywYdYUMzZz0pITl/jRk+P7SB3JeM1+SC8Kq8aRaetTqrdWBHWaKDGxtHIhhbt/PliPzVImMPDEGiNCbhAj85r2zsZLGZcg3u6mp3sAhO8ZHomXNu4W8FGyamzHg0VuDatvkGUpRodrztRPAc1CE2mvgjVxRH8j8M03+alFOADIjPqorlux//frxdlYB2Cbf1A75duTJaP5atsETjc8YswGgB7SL/MUNNdM/nm34I7ALIXNE/1By/kADYdawW1OGj1nJwtEQifBS4mYRsIOmH28F91WUBUsNTQqLb20DyOzBTi9U1nHIEY+OyPYYgpM9uxkCdldj24+o4b0JvKABWS6gOlw4IPawGs+KW1UcbVj62OTJLsIzA4aXtGcSyYjpp/8SUMYd7JElsMwRRsc/qXUub0nB3rNk1fBPFq+tzO1q+SNCju293snDMYGOBXQh0z4sIx34OGa5sGez2XXM0Zrt6vOUErdXvWTUTUsO0uam4SRKXA9cK7OvLnZwkCWI3bNpFALN9/WHIdEVTfTAdj2mRmqYo+1/VoG2HCOi3R72LoP6MB9Zx4buygL8CftCSgBQxOzBImgZlZZfOPZzlke5G6Y9qzkD/AdohudVxvdcIeHTm/YWSyLiqhXbzK8YMyR3uV0LPDu4pOxBTwio7RsikRMshurTbwSbe00WbGZXats8+seLHMXLJzmPWSvY0yfNHb7aYQ9ezUVloB8Rg==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(136003)(346002)(39860400002)(376002)(82310400011)(451199024)(186009)(1800799009)(46966006)(40470700004)(36840700001)(44832011)(8936002)(356005)(6666004)(81166007)(83380400001)(54906003)(2906002)(40480700001)(36756003)(47076005)(82740400003)(86362001)(40460700003)(26005)(478600001)(2616005)(36860700001)(426003)(70586007)(1076003)(41300700001)(4326008)(5660300002)(70206006)(6916009)(316002)(336012)(8676002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:45.5034
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b2edb5c1-aebf-4288-36a3-08dbae76efcb
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A102.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB8121

Remove master device from the IOMMU. This will be helpful when removing the
overlay nodes using dynamic programming during run time.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes from v10:
    Add comment regarding return values of iommu_remove_dt_device().
    Add ASSERT to check if is_protected is removed or not.
Changes from v7:
    Add check if IOMMU is enabled.
    Fix indentation of fail.
---
---
 xen/drivers/passthrough/device_tree.c | 43 +++++++++++++++++++++++++++
 xen/include/xen/iommu.h               | 10 +++++++
 2 files changed, 53 insertions(+)

diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index 687c61e7da..80f6efc606 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -127,6 +127,49 @@ int iommu_release_dt_devices(struct domain *d)
     return 0;
 }
 
+int iommu_remove_dt_device(struct dt_device_node *np)
+{
+    const struct iommu_ops *ops = iommu_get_ops();
+    struct device *dev = dt_to_dev(np);
+    int rc;
+
+    if ( !iommu_enabled )
+        return 1;
+
+    if ( !ops )
+        return -EOPNOTSUPP;
+
+    spin_lock(&dtdevs_lock);
+
+    if ( iommu_dt_device_is_assigned_locked(np) )
+    {
+        rc = -EBUSY;
+        goto fail;
+    }
+
+    if ( !ops->remove_device )
+    {
+        rc = -EOPNOTSUPP;
+        goto fail;
+    }
+
+    /*
+     * De-register the device from the IOMMU driver.
+     * The driver is responsible for removing is_protected flag.
+     */
+    rc = ops->remove_device(0, dev);
+
+    if ( !rc )
+    {
+        ASSERT(!dt_device_is_protected(np));
+        iommu_fwspec_free(dev);
+    }
+
+ fail:
+    spin_unlock(&dtdevs_lock);
+    return rc;
+}
+
 int iommu_add_dt_device(struct dt_device_node *np)
 {
     const struct iommu_ops *ops = iommu_get_ops();
diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
index a18b68e247..0e747b0bbc 100644
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
@@ -235,6 +235,16 @@ int iommu_add_dt_device(struct dt_device_node *np);
 int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
                        XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl);
 
+/*
+ * Helper to remove master device from the IOMMU.
+ *
+ * Return values:
+ *  0 : device is de-registered from IOMMU.
+ * <0 : error while removing the device from IOMMU.
+ * >0 : IOMMU is not enabled/present.
+ */
+int iommu_remove_dt_device(struct dt_device_node *np);
+
 #endif /* HAS_DEVICE_TREE */
 
 struct page_info;
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596000.929804 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA6-0001Io-9f; Wed, 06 Sep 2023 01:16:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596000.929804; Wed, 06 Sep 2023 01:16:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA6-0001Hk-0L; Wed, 06 Sep 2023 01:16:54 +0000
Received: by outflank-mailman (input) for mailman id 596000;
 Wed, 06 Sep 2023 01:16:51 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhA3-0006tr-Cz
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:51 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on2061c.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::61c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0dce3f77-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:50 +0200 (CEST)
Received: from MN2PR19CA0018.namprd19.prod.outlook.com (2603:10b6:208:178::31)
 by SA3PR12MB8801.namprd12.prod.outlook.com (2603:10b6:806:312::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:47 +0000
Received: from BL02EPF0001A102.namprd05.prod.outlook.com
 (2603:10b6:208:178:cafe::c1) by MN2PR19CA0018.outlook.office365.com
 (2603:10b6:208:178::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:46 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A102.mail.protection.outlook.com (10.167.241.134) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:46 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:44 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:44 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0dce3f77-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iSHKIwGspQXOTfuBnwXgt81U/y1Xkxln/KC8SFmYaH4dCLeiFYCcFdeCnf1BmTJojs35qQVbhNQKCbNHauV6d53JOU21H1pYzWZBTUMritldT8tm3ttvCnlHLw3DkGIs4+khj5u8LckugZ1W4wN1pIiMtuyem/ziVUMKQ2yCwB6hnLHmO2/cEwhaO4GxuKb4JJSsMQpjBCCotYjxxzJnqBcOmcMWFsCeFAcF+/e02XdDh+de2/bYvCzO+p71uwF7F7vJe9Rv5HCBv68GMGZQ/qg5MmiHIjIYKfgSytl/T2AUf8EQydkJITAr+G3A9qI78FaKqpBQda2JByO1GWRB2A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TDhW7f5w3p+/XHERjQf4wWurMSkKNLV2sxdzRwRCMQk=;
 b=AlkowZMcvEXae2WRO3RPyZ4+byRyjMFoBsVfrwBwyLW2l2qG8ORKOfc6vhXagnIwG9K8cZgGl9UNdHtoQGLeOqP3rW0dAygvianAFFEft7CHlCHFq8Jpz3XxOGtTuEtHhRHsAXLQ9ErVFpS1iKHcZK0Ojh/fHS5fH7RTbJSAcqCQMmqbhZpz9PO2d33FSLFA1GY1XwNOjF0Gw7fpilqk8l1B8ltXnGeOqkb4ZM/EPoBzZNzuqSfVtq0SOPOXnyYg/nbNGFDDGp21JHkz2pdBkQt6+NGABsmjHDGbFA7plBal1ggUBviONbsQfX/oQS42hScX02FrWRRm6o1GEOGEkA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TDhW7f5w3p+/XHERjQf4wWurMSkKNLV2sxdzRwRCMQk=;
 b=FHJIDGMQivtrOJNQf3EoTY2yIBr3+/TuJaEoTMdXC7kbjX/HVXxt89iTWs5k6Xn7m3iiOrqEtBcLCptmIiJKINpjysQOi4pRWmxYYPVhwveJZWFIQSkHkMh7AsLRzyWbTw2niAlJ2NXN0J6khnOLVNwCVS9+04hfn3zR6SIG/Dc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN][PATCH v12 13/20] asm/smp.h: Fix circular dependency for device_tree.h and rwlock.h
Date: Tue, 5 Sep 2023 18:16:23 -0700
Message-ID: <20230906011631.30310-14-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A102:EE_|SA3PR12MB8801:EE_
X-MS-Office365-Filtering-Correlation-Id: 13a7f2e9-d0b7-43ad-575a-08dbae76f06d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	eAw1lGrWNbpFKg2anXnZHunWRlUJNLm3O9vtyZNJaSZT6kXSasoYY12uh9IC9wNQ7xg9giNCc5OzHBaP6pz6ZyX81B9Mxqb1dd4ZUSjKB+bVj+/Kg33Awoi5yhVNWWvamhrOM3pJS34LSYHGCCN0cwR0Xl5GVlJQOuCsS9FdfGIJmKeGfnXk8mxEKTCFAf7nLcXwKmf56ppLUqjVtnip1M83m37OWM4M2ePe0SDgqLPq7WjqPmUOyQUMKwUnbGieOaRA0nf/BImSPLPa8tD/3oNaB69Cl7+5h0BdrggY3FHw+W0BhzIXnqawBe2ODk2M8PrywqddPE/l6WTkmKGDYAc0/LZLDwZeoNnF5yaIxUglLIzRk+7Ouda9RKjnbIZpgj+fP7PGrzXnk4a3GR1k7Rb1/1Y/1d00lPkbckdZWqUdKvJXefW01h1S+AOxsU0oD7NRE3xyNDP7i9Hv4EJUbuWsaoGOGtdl4x3GttAl4HbE+YC8oQw38XxOFoJFftwPdy0ebd64ItemPm3i5lN51xQZmcry9i3puibLTgT+jz98MY1nYDkSbyoD+thuNCPhkiiL3m5HVhImHkXeh7jS0I5wTSht3ZN0sKV813qvGrCNSLzdAgTjEHAVtu3H4LvsIZ3WrOHMi5OphpnTO7qVuQDxrWnMLBIpm74u8vTIuQ1pKAKr7n+35pHYLV4imbQRQW5smD7E9AOSzYEX2sHt6soEloESAofutylDMCG9QOv9uXksIUVUb4+CeO4azihiRYVpqJsjgOnFzdlszVVd2Q==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(376002)(136003)(396003)(39860400002)(451199024)(1800799009)(82310400011)(186009)(46966006)(36840700001)(40470700004)(8676002)(4326008)(426003)(26005)(44832011)(336012)(40480700001)(6666004)(8936002)(36860700001)(47076005)(83380400001)(2616005)(5660300002)(1076003)(40460700003)(41300700001)(54906003)(70586007)(70206006)(6916009)(316002)(86362001)(478600001)(356005)(82740400003)(36756003)(2906002)(81166007)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:46.5660
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 13a7f2e9-d0b7-43ad-575a-08dbae76f06d
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A102.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR12MB8801

Dynamic programming ops will modify the dt_host and there might be other
function which are browsing the dt_host at the same time. To avoid the race
conditions, we will need to add a rwlock to protect access to the dt_host.
However, adding rwlock in device_tree.h causes following circular dependency:
    device_tree.h->rwlock.h->smp.h->asm/smp.h->device_tree.h

To fix this, removed the "#include <xen/device_tree.h> and forward declared
"struct dt_device_node".

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Henry Wang <Henry.Wang@arm.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Acked-by: Julien Grall <jgrall@amazon.com>
---
    Changes from v7:
        Move struct dt_device_node declaration just above arch_cpu_init().
---
---
 xen/arch/arm/include/asm/smp.h | 4 +++-
 xen/arch/arm/smpboot.c         | 1 +
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/include/asm/smp.h b/xen/arch/arm/include/asm/smp.h
index a37ca55bff..4fabdf5310 100644
--- a/xen/arch/arm/include/asm/smp.h
+++ b/xen/arch/arm/include/asm/smp.h
@@ -3,7 +3,6 @@
 
 #ifndef __ASSEMBLY__
 #include <xen/cpumask.h>
-#include <xen/device_tree.h>
 #include <asm/current.h>
 #endif
 
@@ -23,6 +22,9 @@ DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
 extern void noreturn stop_cpu(void);
 
 extern int arch_smp_init(void);
+
+struct dt_device_node;
+
 extern int arch_cpu_init(int cpu, struct dt_device_node *dn);
 extern int arch_cpu_up(int cpu);
 extern void arch_cpu_up_finish(void);
diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
index e107b86b7b..eeb76cd551 100644
--- a/xen/arch/arm/smpboot.c
+++ b/xen/arch/arm/smpboot.c
@@ -10,6 +10,7 @@
 #include <xen/cpu.h>
 #include <xen/cpumask.h>
 #include <xen/delay.h>
+#include <xen/device_tree.h>
 #include <xen/domain_page.h>
 #include <xen/errno.h>
 #include <xen/init.h>
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596001.929807 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA6-0001Ph-Mz; Wed, 06 Sep 2023 01:16:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596001.929807; Wed, 06 Sep 2023 01:16:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA6-0001MT-Dg; Wed, 06 Sep 2023 01:16:54 +0000
Received: by outflank-mailman (input) for mailman id 596001;
 Wed, 06 Sep 2023 01:16:52 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhA3-00079K-TF
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:51 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on2061d.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::61d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0da21748-4c53-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 03:16:49 +0200 (CEST)
Received: from DM6PR02CA0046.namprd02.prod.outlook.com (2603:10b6:5:177::23)
 by CH0PR12MB8580.namprd12.prod.outlook.com (2603:10b6:610:192::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 01:16:41 +0000
Received: from CY4PEPF0000E9D7.namprd05.prod.outlook.com
 (2603:10b6:5:177:cafe::fc) by DM6PR02CA0046.outlook.office365.com
 (2603:10b6:5:177::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:41 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9D7.mail.protection.outlook.com (10.167.241.78) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:40 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:40 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 18:16:39 -0700
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:39 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0da21748-4c53-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=F1eCggap940r3PjRkSvnfz0QJhFg8LUifFyWCbFNN1gV1nL8CbUq8ihRAJjoWGZyU5nHYurQbavX/MEC+YY+CbtVn3qNMuaKUwJKQNiGw8ADsIYhfVqxMrTN3g22TmsNI3ffiGaIjjyUkPvlCHc+8zvdR2sEpaySOJS0dK3ClCP7A62TdAYJ/1NlhS/iPy9DI6RQI40WnU11qbepxj5Tr/HJYMWkv6rp6Pp7hXEqIYxjdP01jZand/K120tPQwlUWQ3ZPh0e0SW3H0U1OPVew2RccF6QcBdw+hk6JDJOrLXDpIj+8tLylswimqUwfSLG7u/sGMtWZYp8Dm9aPhTHHg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=653u6xWPNriUED+G4weH7ZKsZbL2O1CzT4XNOpC6uN4=;
 b=hIdkQwz/vWZLb8REj8ZgK31pJlOCQXNBIIO0mzDnm/ywrt7NhZsmqZmPEDQQhvVex67Rlk8cXsPpvKTdg+78Ku7uXvUTcqJBh16IMPtvFWLZnRUPknZm+gq4ItZiUgCMazmH2miyYYY30NNjWcM3voVlBsXvuZXopTZXtN9FPSQdPzEGnJw1jDs4gipmYb3vViTSwEUhExM6VxDKmOzgs00bsxQM3MY5iRWYBOoWQjehIJHFi/9cPJ1dttKgf+ttfnQfftxIuvLRxzZaglatrJU1yzbs6lxg6eilWMSLt33oQtLlOiMeXdq03TmvASakAnZt1bQMV6P+DebBWqaeCQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=653u6xWPNriUED+G4weH7ZKsZbL2O1CzT4XNOpC6uN4=;
 b=C7zsaAVDELHUanqZlKqck1kQYvI8frMhnSouQ808KExjIUqFWf3JHqrsy22fZssAExYmagSL3VJ/dlNDTw00zumeEV2PvHvtq4EZ6T53MosGfGUNAEM/QttazpvYcER5OwhV9jpBn6/Q8ya/8LBPf7xBaBPx2o62sIX7jOmRvOs=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Vikram Garhwal <fnu.vikram@xilinx.com>, "David
 Gibson" <david@gibson.dropbear.id.au>
Subject: [XEN][PATCH v12 07/20] libfdt: overlay: change overlay_get_target()
Date: Tue, 5 Sep 2023 18:16:17 -0700
Message-ID: <20230906011631.30310-8-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D7:EE_|CH0PR12MB8580:EE_
X-MS-Office365-Filtering-Correlation-Id: cf8bc73d-abf6-4521-0439-08dbae76ed13
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ddskFYipucxe6RKqCM9alvr+E1ETLk0WMdE9yPF2xaa1u/Os4oSV22P8PACsIrpi84WNdE71HBT4pzXJg0y9HJsaAZHEtCRd+jkBljUC+IgWxyoXW1u3xT2qL3XTrycs+cGAJPzh1f2+rirnO/AJPjJncVqnBlas6FredmrGfKycpoUlZqrQ0HTwxcA6F0zUd9ud2TKCP9huvz10Dc63+vSI6kNB2XlY5u4duyzDZ0JH4wHIQbIYcCuxMTXx2lY4D5Mms13mbPb9zojSf/dt7jGYvFLrLV1jdEWLcFqVXplQZ3n6WAFOnNy+zAgIEZAo3wrQiVmleasAcOqOpRzIAjFyTrMA4cPBpwMryj/P06G4An04C+vhOe5u+hXbGRGQbTo30PyUsSeRM6ULEsP56KBu6n2dOjSkTuShHAKks+xYciwSeqT4H6RqTsNKod+vWLFvJkt8DPOlTn0nxLoRCI3vkfzP27lBXW9JCdtMBOKlIOIOOGpxFmWDoKgmvB1+WmmaMdAY5xoZshbl9FDDf1dDSjbcdeowSBAxK/b2SyQECZ8/D/rmB29AbWRnUqYCM+fpER0etcuAL3vKa15+jiGNlqrHm1TBIp+sBTaNZsTPTyxSAwQnYkBpX+uJwKRbCIhssh2GpTI2FcI/BzawDRRVZN2fuRqpUCC/azPdnMvq4SOhPMn8D/GJG5NravcMNL8RBT1Su1unWAoicMMrq4w6dRhEuyA4Dsiqos72V+TbducK4JEZyloh8Qj2ZJijWBtBt+yUP7brmcwSE0ikAw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(396003)(39860400002)(346002)(136003)(451199024)(186009)(82310400011)(1800799009)(40470700004)(36840700001)(46966006)(81166007)(356005)(82740400003)(6666004)(40460700003)(36860700001)(86362001)(40480700001)(36756003)(47076005)(1076003)(2616005)(2906002)(426003)(336012)(26005)(83380400001)(478600001)(70206006)(316002)(70586007)(8936002)(8676002)(5660300002)(4326008)(6916009)(44832011)(41300700001)(54906003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:40.8783
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: cf8bc73d-abf6-4521-0439-08dbae76ed13
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000E9D7.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB8580

Rename overlay_get_target() to fdt_overlay_target_offset() and remove static
function type.

This is done to get the target path for the overlay nodes which is very useful
in many cases. For example, Xen hypervisor needs it when applying overlays
because Xen needs to do further processing of the overlay nodes, e.g. mapping of
resources(IRQs and IOMMUs) to other VMs, creation of SMMU pagetables, etc.

Signed-off-by: Vikram Garhwal <fnu.vikram@xilinx.com>
Message-Id: <1637204036-382159-2-git-send-email-fnu.vikram@xilinx.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Origin: git://git.kernel.org/pub/scm/utils/dtc/dtc.git 45f3d1a095dd

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
Reviewed-by: Henry Wang <Henry.Wang@arm.com>
Acked-by: Juline Grall <jgrall@amazon.com>
---
 xen/common/libfdt/fdt_overlay.c | 29 +++++++----------------------
 xen/common/libfdt/version.lds   |  1 +
 xen/include/xen/libfdt/libfdt.h | 18 ++++++++++++++++++
 3 files changed, 26 insertions(+), 22 deletions(-)

diff --git a/xen/common/libfdt/fdt_overlay.c b/xen/common/libfdt/fdt_overlay.c
index 7b95e2b639..acf0c4c2a6 100644
--- a/xen/common/libfdt/fdt_overlay.c
+++ b/xen/common/libfdt/fdt_overlay.c
@@ -41,37 +41,22 @@ static uint32_t overlay_get_target_phandle(const void *fdto, int fragment)
 	return fdt32_to_cpu(*val);
 }
 
-/**
- * overlay_get_target - retrieves the offset of a fragment's target
- * @fdt: Base device tree blob
- * @fdto: Device tree overlay blob
- * @fragment: node offset of the fragment in the overlay
- * @pathp: pointer which receives the path of the target (or NULL)
- *
- * overlay_get_target() retrieves the target offset in the base
- * device tree of a fragment, no matter how the actual targeting is
- * done (through a phandle or a path)
- *
- * returns:
- *      the targeted node offset in the base device tree
- *      Negative error code on error
- */
-static int overlay_get_target(const void *fdt, const void *fdto,
-			      int fragment, char const **pathp)
+int fdt_overlay_target_offset(const void *fdt, const void *fdto,
+			      int fragment_offset, char const **pathp)
 {
 	uint32_t phandle;
 	const char *path = NULL;
 	int path_len = 0, ret;
 
 	/* Try first to do a phandle based lookup */
-	phandle = overlay_get_target_phandle(fdto, fragment);
+	phandle = overlay_get_target_phandle(fdto, fragment_offset);
 	if (phandle == (uint32_t)-1)
 		return -FDT_ERR_BADPHANDLE;
 
 	/* no phandle, try path */
 	if (!phandle) {
 		/* And then a path based lookup */
-		path = fdt_getprop(fdto, fragment, "target-path", &path_len);
+		path = fdt_getprop(fdto, fragment_offset, "target-path", &path_len);
 		if (path)
 			ret = fdt_path_offset(fdt, path);
 		else
@@ -638,7 +623,7 @@ static int overlay_merge(void *fdt, void *fdto)
 		if (overlay < 0)
 			return overlay;
 
-		target = overlay_get_target(fdt, fdto, fragment, NULL);
+		target = fdt_overlay_target_offset(fdt, fdto, fragment, NULL);
 		if (target < 0)
 			return target;
 
@@ -781,7 +766,7 @@ static int overlay_symbol_update(void *fdt, void *fdto)
 			return -FDT_ERR_BADOVERLAY;
 
 		/* get the target of the fragment */
-		ret = overlay_get_target(fdt, fdto, fragment, &target_path);
+		ret = fdt_overlay_target_offset(fdt, fdto, fragment, &target_path);
 		if (ret < 0)
 			return ret;
 		target = ret;
@@ -803,7 +788,7 @@ static int overlay_symbol_update(void *fdt, void *fdto)
 
 		if (!target_path) {
 			/* again in case setprop_placeholder changed it */
-			ret = overlay_get_target(fdt, fdto, fragment, &target_path);
+			ret = fdt_overlay_target_offset(fdt, fdto, fragment, &target_path);
 			if (ret < 0)
 				return ret;
 			target = ret;
diff --git a/xen/common/libfdt/version.lds b/xen/common/libfdt/version.lds
index 7ab85f1d9d..cbce5d4a8b 100644
--- a/xen/common/libfdt/version.lds
+++ b/xen/common/libfdt/version.lds
@@ -77,6 +77,7 @@ LIBFDT_1.2 {
 		fdt_appendprop_addrrange;
 		fdt_setprop_inplace_namelen_partial;
 		fdt_create_with_flags;
+		fdt_overlay_target_offset;
 	local:
 		*;
 };
diff --git a/xen/include/xen/libfdt/libfdt.h b/xen/include/xen/libfdt/libfdt.h
index c71689e2be..fabddbee8c 100644
--- a/xen/include/xen/libfdt/libfdt.h
+++ b/xen/include/xen/libfdt/libfdt.h
@@ -2109,6 +2109,24 @@ int fdt_del_node(void *fdt, int nodeoffset);
  */
 int fdt_overlay_apply(void *fdt, void *fdto);
 
+/**
+ * fdt_overlay_target_offset - retrieves the offset of a fragment's target
+ * @fdt: Base device tree blob
+ * @fdto: Device tree overlay blob
+ * @fragment_offset: node offset of the fragment in the overlay
+ * @pathp: pointer which receives the path of the target (or NULL)
+ *
+ * fdt_overlay_target_offset() retrieves the target offset in the base
+ * device tree of a fragment, no matter how the actual targeting is
+ * done (through a phandle or a path)
+ *
+ * returns:
+ *      the targeted node offset in the base device tree
+ *      Negative error code on error
+ */
+int fdt_overlay_target_offset(const void *fdt, const void *fdto,
+			      int fragment_offset, char const **pathp);
+
 /**********************************************************************/
 /* Debugging / informational functions                                */
 /**********************************************************************/
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:16:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:16:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596002.929816 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA7-0001dq-Tk; Wed, 06 Sep 2023 01:16:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596002.929816; Wed, 06 Sep 2023 01:16:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhA7-0001bR-F5; Wed, 06 Sep 2023 01:16:55 +0000
Received: by outflank-mailman (input) for mailman id 596002;
 Wed, 06 Sep 2023 01:16:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhA5-00079K-2y
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:53 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20614.outbound.protection.outlook.com
 [2a01:111:f400:7e88::614])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0eeae674-4c53-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 03:16:51 +0200 (CEST)
Received: from MN2PR19CA0007.namprd19.prod.outlook.com (2603:10b6:208:178::20)
 by DS0PR12MB6534.namprd12.prod.outlook.com (2603:10b6:8:c1::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:48 +0000
Received: from BL02EPF0001A102.namprd05.prod.outlook.com
 (2603:10b6:208:178:cafe::5e) by MN2PR19CA0007.outlook.office365.com
 (2603:10b6:208:178::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:47 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A102.mail.protection.outlook.com (10.167.241.134) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:47 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:45 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:45 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0eeae674-4c53-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jjq62g6wiENr6dvlbk1lgsrMkn3idpyQylg2gaWbMrlsFmt9uaqOv0d+oNJpG3BfyGKVL62GotCHpuMshPW/iaWZ8zFIc3UGgHhc0sXmBoFI6CG+zl+N1W2BKURoG6eTc5lnGvu1eYal7sMAnW41uJ5ccSuMYdIP9FFGm/YP/T3mLkSGnxliMQBWCDhcimTdwGXuzHIyAZsHs6MEdEFV5apLdORcOUdstayZyJu5OnWzxM0ojUG2EosyigXGOJ6dvH7lDFBwycJKWEe7uHJgFy6o9htaz57TU18wgLUMqGFiCAQgOc2AgD1DpTYEg6uFnmytZTB6D2gQeXHwjOYaug==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QUEVYKXF5gyGWM9LJIJFFbZLDptuiHcthAk8QZxHgHI=;
 b=MHn1QGy0lsG2IqtvB4m/BFc6fuQCBGgWi4TxpfimSUYr6qJ3tb5No6ouRlf+23f11Ru6/EBG3QqMRKb1dfGJXDIJVDytUN4gm83KAb0Pc9cQzumfXPfnjkvrateQh3AvQ2zzfp8RE914MxbCIT4V5WaYpj/Yd4NA1BzwWr1cENesiPIsQxYwKbZG/+578npL+Pjxsh8rHlgOHQpn6ggx6xkmICrlzsco4L+shrb+CLDDDWnbiJ8izRJCTntWdJFDoyDW2UmUkjnNuTI/Dqv5TmnGoKTVI4gu5QGfROlMoLPidEwRHXKETXcovGYdBEXbgbjlyI7plYebxeCE09q0Hg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QUEVYKXF5gyGWM9LJIJFFbZLDptuiHcthAk8QZxHgHI=;
 b=Dn8JDe3aw+JfSt1AHbzFgMlurP1U+fRmg3CZNcG0z+hw34zMcc4xrEGzIbbDmSEsqoj1lNk2gRbsZ/AgL9HuKrdIpFAR0g6UZrzE4qH7v3q2iYFOt9Yh96pqw9EOHNw6V3ei8psKOUb3HzUdCwYl9doCIlh5XK6YMSGdzz5mOJs=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v12 14/20] common/device_tree: Add rwlock for dt_host
Date: Tue, 5 Sep 2023 18:16:24 -0700
Message-ID: <20230906011631.30310-15-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A102:EE_|DS0PR12MB6534:EE_
X-MS-Office365-Filtering-Correlation-Id: 9b72af36-97d0-4b52-0054-08dbae76f138
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	fj7k17JM76pkQz7LTYOUtBk41o2BpO0xvF/BjofovlgrRo3LkDVU3x7qON9Xz9U7sUMoMDJQxWo2/62DZX9/G+2KgwdJ6N42fMmd9Ecf7ffSvXO525e6qn/prAch39h21IHea2zdL0/1OsZAMr1cQfq9WTUuhRBpJ8YynGqa+vLFGbI6DCemx8gguOVioPUskWgSD1vmVkgNlrhIz+LEw6laLDuJU5oyGATMs422qY64H9uVNYI8v+t4Vkk2VKgQfVe0hw9iuDqALCXe0jTtf0SeHvXxnXbI68PNEJW4+McjVcVzUUOO/9AgyR5/iZESa5OAL17TTs5pUchu89UBfuEf/IG5rG8pqW1cZAWX7DNDVBVvva5A42wxv85M3pVjH0DkHHkgcF+3AHyrsgaLHd4pe/ZI3+Zceod7PPTazwit9fuTDjEvRM84gVuMfzQ5nbKHWvD3vH2Zmvf7wxXBcuYYyeWTb5Mvrq/vf+ssijfW2lJySrBbWuR9z4dtElym8LC5xDEdclRvHDjgaQiswfKdSMx4nzQSDW9bWevz6HdjmxIzNhaXtle0MlpC1Siv3+0SVKRHUwiL5nrYk3VrbGjbn/6SBweRrkP1Z8wWV8j2ddQXSpvzN9tRYAtF9YXe9O6ILEPMLnUyl4EZvJm6QZbIqcAFWssXHKPumpDUiVrRnnDy5oDHs7VWChsIVWxtU7L/x0MJbjfg/VoMOWa806H9rqccBNnqk2rmT59DjPVcwgfSLJ+e11lqWf1FhkBHEPOhut5S+tDj1Y2GSCGeMw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(346002)(39860400002)(136003)(376002)(82310400011)(1800799009)(186009)(451199024)(36840700001)(46966006)(40470700004)(83380400001)(40460700003)(336012)(426003)(36756003)(81166007)(356005)(2906002)(36860700001)(70206006)(47076005)(82740400003)(40480700001)(54906003)(41300700001)(316002)(6916009)(70586007)(86362001)(6666004)(478600001)(8936002)(8676002)(4326008)(5660300002)(2616005)(1076003)(44832011)(26005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:47.8785
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9b72af36-97d0-4b52-0054-08dbae76f138
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A102.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB6534

Dynamic programming ops will modify the dt_host and there might be other
functions which are browsing the dt_host at the same time. To avoid the race
conditions, adding rwlock for browsing the dt_host during runtime. dt_host
writer will be added in the follow-up patch for device tree overlay
functionalities.

Reason behind adding rwlock instead of spinlock:
    For now, dynamic programming is the sole modifier of dt_host in Xen during
    run time. All other access functions like iommu_release_dt_device() are
    just reading the dt_host during run-time. So, there is a need to protect
    others from browsing the dt_host while dynamic programming is modifying
    it. rwlock is better suitable for this task as spinlock won't be able to
    differentiate between read and write access.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
---
Changes from v11:
    Update check state >= active for checking dt_host_lock to be locked
Changes from v10:
    Add ASSERT for iommu_assign_dt_device() and iommu_add_dt_device().
Changes from v9:
    Update commit message and fix indentation.
    Add ASSERT() for iommu_deassign_dt_device() and iommu_remove_dt_device().
    Fix code styles.
    Remove rwlock_init in unflatten_device_tree() and do DEFINE_RWLOCK in
        device-tree.c
Changes from v7:
    Keep one lock for dt_host instead of lock for each node under dt_host.
---
---
 xen/common/device_tree.c              |  1 +
 xen/drivers/passthrough/device_tree.c | 28 +++++++++++++++++++++++++--
 xen/include/xen/device_tree.h         |  7 +++++++
 3 files changed, 34 insertions(+), 2 deletions(-)

diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
index f38f51ec0b..b1c2952951 100644
--- a/xen/common/device_tree.c
+++ b/xen/common/device_tree.c
@@ -31,6 +31,7 @@ dt_irq_xlate_func dt_irq_xlate;
 struct dt_device_node *dt_host;
 /* Interrupt controller node*/
 const struct dt_device_node *dt_interrupt_controller;
+DEFINE_RWLOCK(dt_host_lock);
 
 /**
  * struct dt_alias_prop - Alias property in 'aliases' node
diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
index 80f6efc606..075fb25a37 100644
--- a/xen/drivers/passthrough/device_tree.c
+++ b/xen/drivers/passthrough/device_tree.c
@@ -31,6 +31,8 @@ int iommu_assign_dt_device(struct domain *d, struct dt_device_node *dev)
     int rc = -EBUSY;
     struct domain_iommu *hd = dom_iommu(d);
 
+    ASSERT(system_state < SYS_STATE_active || rw_is_locked(&dt_host_lock));
+
     if ( !is_iommu_enabled(d) )
         return -EINVAL;
 
@@ -62,6 +64,8 @@ int iommu_deassign_dt_device(struct domain *d, struct dt_device_node *dev)
     const struct domain_iommu *hd = dom_iommu(d);
     int rc;
 
+    ASSERT(rw_is_locked(&dt_host_lock));
+
     if ( !is_iommu_enabled(d) )
         return -EINVAL;
 
@@ -113,6 +117,8 @@ int iommu_release_dt_devices(struct domain *d)
     if ( !is_iommu_enabled(d) )
         return 0;
 
+    read_lock(&dt_host_lock);
+
     list_for_each_entry_safe(dev, _dev, &hd->dt_devices, domain_list)
     {
         rc = iommu_deassign_dt_device(d, dev);
@@ -120,10 +126,14 @@ int iommu_release_dt_devices(struct domain *d)
         {
             dprintk(XENLOG_ERR, "Failed to deassign %s in domain %u\n",
                     dt_node_full_name(dev), d->domain_id);
+            read_unlock(&dt_host_lock);
+
             return rc;
         }
     }
 
+    read_unlock(&dt_host_lock);
+
     return 0;
 }
 
@@ -133,6 +143,8 @@ int iommu_remove_dt_device(struct dt_device_node *np)
     struct device *dev = dt_to_dev(np);
     int rc;
 
+    ASSERT(rw_is_locked(&dt_host_lock));
+
     if ( !iommu_enabled )
         return 1;
 
@@ -177,6 +189,8 @@ int iommu_add_dt_device(struct dt_device_node *np)
     struct device *dev = dt_to_dev(np);
     int rc = 1, index = 0;
 
+    ASSERT(system_state < SYS_STATE_active || rw_is_locked(&dt_host_lock));
+
     if ( !iommu_enabled )
         return 1;
 
@@ -249,6 +263,8 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
     int ret;
     struct dt_device_node *dev;
 
+    read_lock(&dt_host_lock);
+
     switch ( domctl->cmd )
     {
     case XEN_DOMCTL_assign_device:
@@ -289,7 +305,10 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
         }
 
         if ( d == dom_io )
-            return -EINVAL;
+        {
+            ret = -EINVAL;
+            break;
+        }
 
         ret = iommu_add_dt_device(dev);
         if ( ret < 0 )
@@ -327,7 +346,10 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
             break;
 
         if ( d == dom_io )
-            return -EINVAL;
+        {
+            ret = -EINVAL;
+            break;
+        }
 
         ret = iommu_deassign_dt_device(d, dev);
 
@@ -342,5 +364,7 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
         break;
     }
 
+    read_unlock(&dt_host_lock);
+
     return ret;
 }
diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h
index 44d315c8ba..a262bba2ed 100644
--- a/xen/include/xen/device_tree.h
+++ b/xen/include/xen/device_tree.h
@@ -18,6 +18,7 @@
 #include <xen/string.h>
 #include <xen/types.h>
 #include <xen/list.h>
+#include <xen/rwlock.h>
 
 #define DEVICE_TREE_MAX_DEPTH 16
 
@@ -218,6 +219,12 @@ extern struct dt_device_node *dt_host;
  */
 extern const struct dt_device_node *dt_interrupt_controller;
 
+/*
+ * Lock that protects r/w updates to unflattened device tree i.e. dt_host during
+ * runtime. Lock may not be taken for boot only code.
+ */
+extern rwlock_t dt_host_lock;
+
 /**
  * Find the interrupt controller
  * For the moment we handle only one interrupt controller: the first
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:17:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:17:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596003.929839 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhAC-0002ic-Lj; Wed, 06 Sep 2023 01:17:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596003.929839; Wed, 06 Sep 2023 01:17:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhAC-0002hx-9K; Wed, 06 Sep 2023 01:17:00 +0000
Received: by outflank-mailman (input) for mailman id 596003;
 Wed, 06 Sep 2023 01:16:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhAB-00079K-C3
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:59 +0000
Received: from NAM02-BN1-obe.outbound.protection.outlook.com
 (mail-bn1nam02on20619.outbound.protection.outlook.com
 [2a01:111:f400:7eb2::619])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 11d49cb7-4c53-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 03:16:56 +0200 (CEST)
Received: from CY5PR19CA0013.namprd19.prod.outlook.com (2603:10b6:930:15::32)
 by DM4PR12MB6496.namprd12.prod.outlook.com (2603:10b6:8:bd::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:52 +0000
Received: from CY4PEPF0000E9DB.namprd05.prod.outlook.com
 (2603:10b6:930:15:cafe::4) by CY5PR19CA0013.outlook.office365.com
 (2603:10b6:930:15::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:52 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9DB.mail.protection.outlook.com (10.167.241.81) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:51 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:48 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 18:16:48 -0700
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:47 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 11d49cb7-4c53-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=O5kaXHWALsQ+FoipwxpxVEaWAc0LrtWdM8OpJvFud7JciadjvFPr5XkMikEf1up7/0EcZNsIaXR3ncPkBTRTs9h2ZrN/beiMyngosYONXgehzo1krkzhFBaEUxy4QdyWE33cTzNSwtutI2vlDrCDTaCOwWWNrCIzp+UyhKySn2ReHEZVBoNwKxlij5Qvsi4Lwz9qRs/knCsnKiDAYQF7wMjVo2T2f3LiqLp6JLCYMK3apKaSGyArVQx/V7OhuC6LfmC1lVVMtQ7HPEHAIKPqBJQmQO5M9fC9mTV54iy/s6HUlS1fqH84lLMBOI+3FtqDAB1V0LgAm604qTatpRwrew==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=x7T2p5a2Ff/HAq+v2RKRNl+IMs8XMzp5B2xd5/wlRh0=;
 b=eShWP/nIm9Ak9vNzON7i8BqDlG3yYBo+Y8x45h0QSU2Vx8K02NOAnYewjNV0kAOLhmMzIbmOkfmjIyfPtAQOadOskzaNS5ewyhUHcvEKuYHKGi7vv0avDnkLo70M00hfuLYUjsjKlFSd2zhsCmNXDhFyZO5Ox6DdB9Bd0Q3dCYUHKLEao3n9975drf7pol4CWnQqIsnx96DgUQy5Kj1jbKUUkh94kFu0wugqJYC0ADOPxwEgtZB50fMvL24YF90XUAzJr2eTwQ353dz+PjsP3jXViidb2DMO4sIYHsppTlSC87rDCqLHYguzqte+n16VHuQ4KFfuGajZ6OHY9yjrPw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=x7T2p5a2Ff/HAq+v2RKRNl+IMs8XMzp5B2xd5/wlRh0=;
 b=ZJnznf+V/xy/1gnhDPQe+xBo4ALdLAWPxyO0CCAkjATHyQOw9nQYOzExi42s8SWFn5Kp3txS/yytbl1JEJ3aEi+x44ioLmb1GX2mlNmRU8DrhIf6QwLKsZIq2U3ooJgWRwBNCDl9btNVhY1bFFFWpxCeeBE82m6Kf2JhjAxu9vY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>
Subject: [XEN][PATCH v12 17/20] xen/arm: Implement device tree node addition functionalities
Date: Tue, 5 Sep 2023 18:16:27 -0700
Message-ID: <20230906011631.30310-18-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9DB:EE_|DM4PR12MB6496:EE_
X-MS-Office365-Filtering-Correlation-Id: 81dcb88c-7b9c-4350-10d3-08dbae76f375
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5Ivz7wLxg7ke7jdxoL46u5PsuwSP/CCwfREfS/etRgoGSqCsmDPz+rqg5ITmk1XZMAo3h5v6ImUrcSzuliiNO6R1ug1FUi0V8a8i5SRmN/03mX3Y4SeFFgs5xQpGaJ++GqlvqN7t4D9xNwvt20u42HlCpv2cf1iae5e6UIE/EKf29VWgBw30FXkeD4w9JhU7PxZL1pr+4de54Qkx8xTiDaIvobpULA/7zEl2LrkxtK1Sp5U/EF1SbBzPvio2qwsqf6fgWFFIHhhyMyS1DmWgvlup9+fudGbjll+Zpbue8Gnm3YGxuL0SnAhEV59++XliPzfKWlYOf06nbiNoENXWERu9CiEDCxOSzggdqvjXPEmXsByV6kfyfHk+H2vCAK6AZKJDqst3Ei+rUnfzclBcmvGd/zvo+mi216CEMFJnx8ItJHgb03yiv2cGqYh6Kg9aYXGcBIAB74QdWlm2w1PX6Ag5RVaeyg1P8uj/rZhAuw5fZVtbvuo4YcoFVv09MV/1ONBUJptE0UGR5kN9CO/rTnRy2TvHhupelnvlfUqnXox2yFica374jnJbLCmMc0u+LdCt6eVuzsIq9A3iky12sQcTmqbwAzmik3rSlUfs4rsmRqGyCy7db7NgTlmT3aZAVGuAWcekQzCdWwU+LUI58pXUR4r/GOn7wu7w/TI2DXNH4mJJv3owsohOFzVqHwlt/XaBq7Gmu+OubV0C4Edj8ZJCLET0kTQkAq0Ri9qK6Us0q2G7XfzVvbaKgcZvy6gXYUVl8tROtoh7m8RTgQBJpA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(376002)(39860400002)(396003)(136003)(451199024)(1800799009)(186009)(82310400011)(40470700004)(36840700001)(46966006)(26005)(5660300002)(44832011)(54906003)(70586007)(316002)(6916009)(70206006)(41300700001)(40480700001)(82740400003)(81166007)(356005)(1076003)(6666004)(4326008)(8936002)(8676002)(2616005)(426003)(478600001)(83380400001)(336012)(2906002)(47076005)(40460700003)(36860700001)(30864003)(66899024)(86362001)(36756003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:51.5717
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 81dcb88c-7b9c-4350-10d3-08dbae76f375
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000E9DB.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6496

Update sysctl XEN_SYSCTL_dt_overlay to enable support for dtbo nodes addition
using device tree overlay.

xl dt-overlay add file.dtbo:
    Each time overlay nodes are added using .dtbo, a new fdt(memcpy of
    device_tree_flattened) is created and updated with overlay nodes. This
    updated fdt is further unflattened to a dt_host_new. Next, it checks if any
    of the overlay nodes already exists in the dt_host. If overlay nodes doesn't
    exist then find the overlay nodes in dt_host_new, find the overlay node's
    parent in dt_host and add the nodes as child under their parent in the
    dt_host. The node is attached as the last node under target parent.

    Finally, add IRQs, add device to IOMMUs, set permissions and map MMIO for the
    overlay node.

When a node is added using overlay, a new entry is allocated in the
overlay_track to keep the track of memory allocation due to addition of overlay
node. This is helpful for freeing the memory allocated when a device tree node
is removed.

The main purpose of this to address first part of dynamic programming i.e.
making xen aware of new device tree node which means updating the dt_host with
overlay node information. Here we are adding/removing node from dt_host, and
checking/setting IOMMU and IRQ permission but never mapping them to any domain.
Right now, mapping/Un-mapping will happen only when a new domU is
created/destroyed using "xl create".

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>

---
Changes from v10:
    Change int to unsigned int for accessing node_nums.
    Re-organize free_nodes_full_path().
    Change order of calling xfree for err cases.
Changes from v9:
    Remove add_resources() and use handle_device().
Changes from v8:
    Add rangeset to keep IRQs and IOMEM information.
Changes from v7:
    Move overlay_node_count() in this patch.
    Fix indent with goto statements.
    Rename handle_add_irq_iommu() to add_resources().
Changes from v6:
    Fix comment style and add comment regarding false flag in irq mapping.
    Move malloc for nodes_full_path to handle_add_overlay_nodes.
    Move node_num define to start of overlay_get_nodes_info().
    Remove "domain *d" from handle_add_irq_iommu().
    Fix error handling for handle_add_irq_iommu().
    Split handle_add_overlay_nodes to two functions.
    Create a separate function for freeing nodes_full_path.
    Fix xfree for dt_sysctl.
---
---
 xen/common/dt-overlay.c | 495 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 495 insertions(+)

diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c
index 7b7224c29a..b07a6128dc 100644
--- a/xen/common/dt-overlay.c
+++ b/xen/common/dt-overlay.c
@@ -34,6 +34,25 @@ find_last_descendants_node(const struct dt_device_node *device_node)
     return child_node;
 }
 
+/*
+ * Returns next node to the input node. If node has children then return
+ * last descendant's next node.
+*/
+static struct dt_device_node *
+dt_find_next_node(struct dt_device_node *dt, const struct dt_device_node *node)
+{
+    struct dt_device_node *np;
+
+    dt_for_each_device_node(dt, np)
+        if ( np == node )
+            break;
+
+    if ( np->child )
+        np = find_last_descendants_node(np);
+
+    return np->allnext;
+}
+
 static int dt_overlay_remove_node(struct dt_device_node *device_node)
 {
     struct dt_device_node *np;
@@ -111,6 +130,78 @@ static int dt_overlay_remove_node(struct dt_device_node *device_node)
     return 0;
 }
 
+static int dt_overlay_add_node(struct dt_device_node *device_node,
+                               const char *parent_node_path)
+{
+    struct dt_device_node *parent_node;
+    struct dt_device_node *next_node;
+
+    parent_node = dt_find_node_by_path(parent_node_path);
+
+    if ( parent_node == NULL )
+    {
+        dt_dprintk("Parent node %s not found. Overlay node will not be added\n",
+                   parent_node_path);
+        return -EINVAL;
+    }
+
+    /* If parent has no child. */
+    if ( parent_node->child == NULL )
+    {
+        next_node = parent_node->allnext;
+        device_node->parent = parent_node;
+        parent_node->allnext = device_node;
+        parent_node->child = device_node;
+    }
+    else
+    {
+        struct dt_device_node *np;
+        /*
+         * If parent has at least one child node.
+         * Iterate to the last child node of parent.
+         */
+        for ( np = parent_node->child; np->sibling != NULL; np = np->sibling );
+
+        /* Iterate over all child nodes of np node. */
+        if ( np->child )
+        {
+            struct dt_device_node *np_last_descendant;
+
+            np_last_descendant = find_last_descendants_node(np);
+
+            next_node = np_last_descendant->allnext;
+            np_last_descendant->allnext = device_node;
+        }
+        else
+        {
+            next_node = np->allnext;
+            np->allnext = device_node;
+        }
+
+        device_node->parent = parent_node;
+        np->sibling = device_node;
+        np->sibling->sibling = NULL;
+    }
+
+    /* Iterate over all child nodes of device_node to add children too. */
+    if ( device_node->child )
+    {
+        struct dt_device_node *device_node_last_descendant;
+
+        device_node_last_descendant = find_last_descendants_node(device_node);
+
+        /* Plug next_node at the end of last children of device_node. */
+        device_node_last_descendant->allnext = next_node;
+    }
+    else
+    {
+        /* Now plug next_node at the end of device_node. */
+        device_node->allnext = next_node;
+    }
+
+    return 0;
+}
+
 /* Basic sanity check for the dtbo tool stack provided to Xen. */
 static int check_overlay_fdt(const void *overlay_fdt, uint32_t overlay_fdt_size)
 {
@@ -171,6 +262,102 @@ static int iomem_remove_cb(unsigned long s, unsigned long e, void *dom,
     return rc;
 }
 
+/* Count number of nodes till one level of __overlay__ tag. */
+static unsigned int overlay_node_count(const void *overlay_fdt)
+{
+    unsigned int num_overlay_nodes = 0;
+    int fragment;
+
+    fdt_for_each_subnode(fragment, overlay_fdt, 0)
+    {
+        int subnode;
+        int overlay;
+
+        overlay = fdt_subnode_offset(overlay_fdt, fragment, "__overlay__");
+
+        /*
+         * overlay value can be < 0. But fdt_for_each_subnode() loop checks for
+         * overlay >= 0. So, no need for a overlay>=0 check here.
+         */
+        fdt_for_each_subnode(subnode, overlay_fdt, overlay)
+        {
+            num_overlay_nodes++;
+        }
+    }
+
+    return num_overlay_nodes;
+}
+
+/*
+ * overlay_get_nodes_info gets full name with path for all the nodes which
+ * are in one level of __overlay__ tag. This is useful when checking node for
+ * duplication i.e. dtbo tries to add nodes which already exists in device tree.
+ */
+static int overlay_get_nodes_info(const void *fdto, char **nodes_full_path)
+{
+    int fragment;
+    unsigned int node_num = 0;
+
+    fdt_for_each_subnode(fragment, fdto, 0)
+    {
+        int target;
+        int overlay;
+        int subnode;
+        const char *target_path;
+
+        target = fdt_overlay_target_offset(device_tree_flattened, fdto,
+                                           fragment, &target_path);
+        if ( target < 0 )
+            return target;
+
+        if ( target_path == NULL )
+            return -EINVAL;
+
+        overlay = fdt_subnode_offset(fdto, fragment, "__overlay__");
+
+        /*
+         * overlay value can be < 0. But fdt_for_each_subnode() loop checks for
+         * overlay >= 0. So, no need for a overlay>=0 check here.
+         */
+        fdt_for_each_subnode(subnode, fdto, overlay)
+        {
+            const char *node_name = NULL;
+            int node_name_len;
+            unsigned int target_path_len = strlen(target_path);
+            unsigned int node_full_name_len;
+
+            node_name = fdt_get_name(fdto, subnode, &node_name_len);
+
+            if ( node_name == NULL )
+                return node_name_len;
+
+            /*
+             * Magic number 2 is for adding '/' and '\0'. This is done to keep
+             * the node_full_path in the correct full node name format.
+             */
+            node_full_name_len = target_path_len + node_name_len + 2;
+
+            nodes_full_path[node_num] = xmalloc_bytes(node_full_name_len);
+
+            if ( nodes_full_path[node_num] == NULL )
+                return -ENOMEM;
+
+            memcpy(nodes_full_path[node_num], target_path, target_path_len);
+
+            nodes_full_path[node_num][target_path_len] = '/';
+
+            memcpy(nodes_full_path[node_num] + target_path_len + 1,
+                    node_name, node_name_len);
+
+            nodes_full_path[node_num][node_full_name_len - 1] = '\0';
+
+            node_num++;
+        }
+    }
+
+    return 0;
+}
+
 /* Check if node itself can be removed and remove node from IOMMU. */
 static int remove_node_resources(struct dt_device_node *device_node)
 {
@@ -359,6 +546,312 @@ static long handle_remove_overlay_nodes(const void *overlay_fdt,
     return rc;
 }
 
+static void free_nodes_full_path(unsigned int num_nodes, char **nodes_full_path)
+{
+    unsigned int i;
+
+    if ( nodes_full_path == NULL )
+        return;
+
+    for ( i = 0; i < num_nodes && nodes_full_path[i] != NULL; i++ )
+    {
+        xfree(nodes_full_path[i]);
+    }
+
+    xfree(nodes_full_path);
+}
+
+static long add_nodes(struct overlay_track *tr, char **nodes_full_path)
+
+{
+    int rc;
+    unsigned int j;
+    struct dt_device_node *overlay_node;
+
+    for ( j = 0; j < tr->num_nodes; j++ )
+    {
+        struct dt_device_node *prev_node, *next_node;
+
+        dt_dprintk("Adding node: %s\n", nodes_full_path[j]);
+
+        /* Find the newly added node in tr->dt_host_new by it's full path. */
+        overlay_node = dt_find_node_by_path_from(tr->dt_host_new,
+                                                 nodes_full_path[j]);
+        if ( overlay_node == NULL )
+        {
+            /* Sanity check. But code will never come here. */
+            ASSERT_UNREACHABLE();
+            return -EFAULT;
+        }
+
+        /*
+         * Find previous and next node to overlay_node in dt_host_new. We will
+         * need these nodes to fix the dt_host_new mapping. When overlay_node is
+         * take out of dt_host_new tree and added to dt_host, link between
+         * previous node and next_node is broken. We will need to refresh
+         * dt_host_new with correct linking for any other overlay nodes
+         * extraction in future.
+         */
+        dt_for_each_device_node(tr->dt_host_new, prev_node)
+            if ( prev_node->allnext == overlay_node )
+                break;
+
+        next_node = dt_find_next_node(tr->dt_host_new, overlay_node);
+
+        write_lock(&dt_host_lock);
+
+        /* Add the node to dt_host. */
+        rc = dt_overlay_add_node(overlay_node, overlay_node->parent->full_name);
+        if ( rc )
+        {
+            write_unlock(&dt_host_lock);
+
+            /* Node not added in dt_host. */
+            return rc;
+        }
+
+        write_unlock(&dt_host_lock);
+
+        prev_node->allnext = next_node;
+
+        overlay_node = dt_find_node_by_path(overlay_node->full_name);
+        if ( overlay_node == NULL )
+        {
+            /* Sanity check. But code will never come here. */
+            ASSERT_UNREACHABLE();
+            return -EFAULT;
+        }
+
+        rc = handle_device(hardware_domain, overlay_node, p2m_mmio_direct_c,
+                           tr->iomem_ranges,
+                           tr->irq_ranges);
+        if ( rc )
+        {
+            printk(XENLOG_ERR "Adding IRQ and IOMMU failed\n");
+            return rc;
+        }
+
+        /* Keep overlay_node address in tracker. */
+        tr->nodes_address[j] = (unsigned long)overlay_node;
+    }
+
+    return 0;
+}
+/*
+ * Adds device tree nodes under target node.
+ * We use tr->dt_host_new to unflatten the updated device_tree_flattened. This
+ * is done to avoid the removal of device_tree generation, iomem regions mapping
+ * to hardware domain done by handle_node().
+ */
+static long handle_add_overlay_nodes(void *overlay_fdt,
+                                     uint32_t overlay_fdt_size)
+{
+    int rc;
+    unsigned int j;
+    struct dt_device_node *overlay_node;
+    struct overlay_track *tr = NULL;
+    char **nodes_full_path = NULL;
+    unsigned int new_fdt_size;
+
+    tr = xzalloc(struct overlay_track);
+    if ( tr == NULL )
+        return -ENOMEM;
+
+    new_fdt_size = fdt_totalsize(device_tree_flattened) +
+                                 fdt_totalsize(overlay_fdt);
+
+    tr->fdt = xzalloc_bytes(new_fdt_size);
+    if ( tr->fdt == NULL )
+    {
+        xfree(tr);
+        return -ENOMEM;
+    }
+
+    tr->num_nodes = overlay_node_count(overlay_fdt);
+    if ( tr->num_nodes == 0 )
+    {
+        xfree(tr->fdt);
+        xfree(tr);
+        return -ENOMEM;
+    }
+
+    tr->nodes_address = xzalloc_bytes(tr->num_nodes * sizeof(unsigned long));
+    if ( tr->nodes_address == NULL )
+    {
+        xfree(tr->fdt);
+        xfree(tr);
+        return -ENOMEM;
+    }
+
+    rc = check_overlay_fdt(overlay_fdt, overlay_fdt_size);
+    if ( rc )
+    {
+        xfree(tr->nodes_address);
+        xfree(tr->fdt);
+        xfree(tr);
+        return rc;
+    }
+
+    /*
+     * Keep a copy of overlay_fdt as fdt_overlay_apply will change the input
+     * overlay's content(magic) when applying overlay.
+     */
+    tr->overlay_fdt = xzalloc_bytes(overlay_fdt_size);
+    if ( tr->overlay_fdt == NULL )
+    {
+        xfree(tr->nodes_address);
+        xfree(tr->fdt);
+        xfree(tr);
+        return -ENOMEM;
+    }
+
+    memcpy(tr->overlay_fdt, overlay_fdt, overlay_fdt_size);
+
+    spin_lock(&overlay_lock);
+
+    memcpy(tr->fdt, device_tree_flattened,
+           fdt_totalsize(device_tree_flattened));
+
+    /* Open tr->fdt with more space to accommodate the overlay_fdt. */
+    rc = fdt_open_into(tr->fdt, tr->fdt, new_fdt_size);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "Increasing fdt size to accommodate overlay_fdt failed with error %d\n",
+               rc);
+        goto err;
+    }
+
+    nodes_full_path = xzalloc_bytes(tr->num_nodes * sizeof(char *));
+    if ( nodes_full_path == NULL )
+    {
+        rc = -ENOMEM;
+        goto err;
+    }
+
+    /*
+     * overlay_get_nodes_info is called to get the node information from dtbo.
+     * This is done before fdt_overlay_apply() because the overlay apply will
+     * erase the magic of overlay_fdt.
+     */
+    rc = overlay_get_nodes_info(overlay_fdt, nodes_full_path);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "Getting nodes information failed with error %d\n",
+               rc);
+        goto err;
+    }
+
+    rc = fdt_overlay_apply(tr->fdt, overlay_fdt);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "Adding overlay node failed with error %d\n", rc);
+        goto err;
+    }
+
+    /*
+     * Check if any of the node already exists in dt_host. If node already exits
+     * we can return here as this overlay_fdt is not suitable for overlay ops.
+     */
+    for ( j = 0; j < tr->num_nodes; j++ )
+    {
+        overlay_node = dt_find_node_by_path(nodes_full_path[j]);
+        if ( overlay_node != NULL )
+        {
+            printk(XENLOG_ERR "node %s exists in device tree\n",
+                   nodes_full_path[j]);
+            rc = -EINVAL;
+            goto err;
+        }
+    }
+
+    /*
+     * Unflatten the tr->fdt into a new dt_host.
+     * TODO: Check and add alias_scan() if it's needed for overlay in future.
+     */
+    rc = unflatten_device_tree(tr->fdt, &tr->dt_host_new);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "unflatten_device_tree failed with error %d\n", rc);
+        goto err;
+    }
+
+    tr->irq_ranges = rangeset_new(hardware_domain, "Overlays: Interrupts", 0);
+    if (tr->irq_ranges == NULL)
+    {
+        printk(XENLOG_ERR "Creating IRQ rangeset failed");
+        goto err;
+    }
+
+    tr->iomem_ranges = rangeset_new(hardware_domain, "Overlay: I/O Memory", 0);
+    if (tr->iomem_ranges == NULL)
+    {
+        printk(XENLOG_ERR "Creating IOMMU rangeset failed");
+        goto err;
+    }
+
+    rc = add_nodes(tr, nodes_full_path);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "Adding nodes failed. Removing the partially added nodes.\n");
+        goto remove_node;
+    }
+
+    INIT_LIST_HEAD(&tr->entry);
+    list_add_tail(&tr->entry, &overlay_tracker);
+
+    spin_unlock(&overlay_lock);
+
+    free_nodes_full_path(tr->num_nodes, nodes_full_path);
+
+    return rc;
+
+/*
+ * Failure case. We need to remove the nodes, free tracker(if tr exists) and
+ * tr->dt_host_new.
+ */
+ remove_node:
+    tr->num_nodes = j;
+    rc = remove_nodes(tr);
+
+    if ( rc )
+    {
+        /*
+         * User needs to provide right overlay. Incorrect node information
+         * example parent node doesn't exist in dt_host etc can cause memory
+         * leaks as removing_nodes() will fail and this means nodes memory is
+         * not freed from tracker. Which may cause memory leaks. Ideally, these
+         * device tree related mistakes will be caught by fdt_overlay_apply()
+         * but given that we don't manage that code keeping this warning message
+         * is better here.
+         */
+        printk(XENLOG_ERR "Removing node failed.\n");
+        spin_unlock(&overlay_lock);
+
+        free_nodes_full_path(tr->num_nodes, nodes_full_path);
+
+        return rc;
+    }
+
+ err:
+    spin_unlock(&overlay_lock);
+
+    if ( tr->dt_host_new )
+        xfree(tr->dt_host_new);
+
+    free_nodes_full_path(tr->num_nodes, nodes_full_path);
+
+    xfree(tr->overlay_fdt);
+    xfree(tr->nodes_address);
+    xfree(tr->fdt);
+
+    rangeset_destroy(tr->irq_ranges);
+    rangeset_destroy(tr->iomem_ranges);
+
+    xfree(tr);
+
+    return rc;
+}
+
 long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op)
 {
     long ret;
@@ -390,6 +883,8 @@ long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op)
 
     if ( op->overlay_op == XEN_SYSCTL_DT_OVERLAY_REMOVE )
         ret = handle_remove_overlay_nodes(overlay_fdt, op->overlay_fdt_size);
+    else
+        ret = handle_add_overlay_nodes(overlay_fdt, op->overlay_fdt_size);
 
     xfree(overlay_fdt);
 
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:17:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:17:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596004.929845 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhAF-00032N-U3; Wed, 06 Sep 2023 01:17:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596004.929845; Wed, 06 Sep 2023 01:17:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhAE-0002zS-Bz; Wed, 06 Sep 2023 01:17:02 +0000
Received: by outflank-mailman (input) for mailman id 596004;
 Wed, 06 Sep 2023 01:17:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhAC-00079K-CG
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:17:00 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20625.outbound.protection.outlook.com
 [2a01:111:f400:7eab::625])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 11dc9176-4c53-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 03:16:57 +0200 (CEST)
Received: from MN2PR19CA0004.namprd19.prod.outlook.com (2603:10b6:208:178::17)
 by MN0PR12MB6173.namprd12.prod.outlook.com (2603:10b6:208:3c6::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:52 +0000
Received: from BL02EPF0001A102.namprd05.prod.outlook.com
 (2603:10b6:208:178:cafe::50) by MN2PR19CA0004.outlook.office365.com
 (2603:10b6:208:178::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:52 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A102.mail.protection.outlook.com (10.167.241.134) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:52 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:47 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:46 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 11dc9176-4c53-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RpYXkIVdtxM+f5Bq8tKFdm0rU32Oq6xCG/dX2+ppnLRRA1mmHGULOpagioMbdA54EdVvGsi065xoR/XDn+AIm2gbhYcmz8cI9rB28mVwcVMrnvaV+9XqN/WAFsuEIlszIG/Q9AOr+k5fHW7213pbnxxw7K3rv4X9QTkrinbAG1nFanVXSuZ1jD1dm8QoeXhJQUjK0Qtgt/StbpOLJKGuK1oBYI5oG0UJwbSIPTIi65Xhu5QB1nYzsjQRjCS3kmNVDLYgkNr59VuWH65s5MMRlVLKllDXjpOQGcORDbvfvkC+kC9H5A+7Bnoj2X81NWbCSfkP53pw9TQLvfC6gyEVvA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=BzU2V5UhlhCONkwcboNamsl2T4uX8forSiEa0laE+KA=;
 b=bT+SqQp3y/nAaO7ZRZFLB6MnQKlFDMhbIogNlfzy7kpb3g8tkw0Eha0cxvxqmXu4rXg5h4NpAOapL0gIfBIdwh69XUGj2l7GjLDdV1DyTOgt9//UfoxImEn1Hd1eQeEH9RUGyvhHzW1lhZjKn9uXpfaF8voORc0D94YNhhepgxAZJn+ZkuhYtYC9mLZSCHM8iwTKUNFK8r5qfeHxKWLVYI5ZzLsGP07321nSDhttWCs38ogKIjZ1K7rVRTVefV5d8Q8jGTwLTK4DxAIDfjN2/zH8gMIxbSm2KldVgi9UsdDYxNeMDzxE8reAVx6JBFhrtxznTbjM2wEEfXQCfYgE8Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=BzU2V5UhlhCONkwcboNamsl2T4uX8forSiEa0laE+KA=;
 b=imq+Z6paJtrAC27+AePkkoe1BswpSPZRj73dNw5JLjHdC6SEIHyO02xZ8S/ykjPKstN2c9JruMnBsIQPHp5Ssyx9HmEKOkBy1g8UgLTW8ZbitjI/IidzKwYC1gCffbLhsADcLEBN7hlzPU5FskzX/LB8lmTWNE+nwe1riPOiMGQ=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Andrew Cooper <andrew.cooper3@citrix.com>, "George
 Dunlap" <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Wei Liu
	<wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
Subject: [XEN][PATCH v12 16/20] xen/arm: Implement device tree node removal functionalities
Date: Tue, 5 Sep 2023 18:16:26 -0700
Message-ID: <20230906011631.30310-17-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A102:EE_|MN0PR12MB6173:EE_
X-MS-Office365-Filtering-Correlation-Id: dd3e6e9d-59e5-4008-d2f3-08dbae76f3af
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	2V57KMeZkfIB4yQxYIK7sG+DkX8C+Rq1ubbTXLe3wh3H5qzIkIp4Wc0VfLcye+1HmOgHnnYL8MrstzlElcXnpg+lQL6GW27RbCJCqZMAjtTl195Vfm4hUno1jGX2MgTN61mPzz7take+kpk902dKmTicpof6end7p9gfAzhoYylXLdVp1/HJCNO4eDpQl+o2y5U8rPe3sQ87cdU3bv85uyNywkaG7l19c0DLhJEvjQ6jgdh7HhZpLFjuodnZ0ZP7y6/Trk1O3PnfIV9dQgpffkXM7Ht5q21RQUK+cMuWsu25cPejlpx/8AhB51np9aDfwI5RScjF18Hj6uwApPoJJw/b9+IQvpChjRFMF6lMBAK4Ym+8i6bZZOKblTPYRACyF64RHtsE9eq4DO7jJv2PhnRXUEqUDXbyKSS8kzrqOGQC3e16TJBufgYnvYeqVl5ApDU1nPkxLyHaDq6S0rKXGmrQemWZwsdbH2U5meApPvgAQ4BQ+zDcbMSQ2aOBe8BPaf/zcS89b81nt0PGV7TOzm7H0pVg8x/gBVxRfDtyLbu0tuxh0r9b+JNMd/sQ4VlNqwgBhhDvS/uyUbnYwYXUORHbV491LDXlUvnyFd6AT1mKHjTvJkgGr6EhZclirnXyS+KGRunwDiVI1ZQPUdYuYZY65AbTMH6Mla0qQxgV+W3vxzb9DiFjL5OHRBwTdyHQB938orJIHS0YnumNyXWmns4Jm+UgW3sWLIIYOEkiOGpzLNgiRavtfcHeJ7VFDnY5LHjZVQVPBKMA+Nezd2n2oSfQA5HUFbDMG5JV12PABzxCDPK5nLZeln3Y4VNMMSPa
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(396003)(39860400002)(346002)(376002)(451199024)(1800799009)(82310400011)(186009)(46966006)(36840700001)(40470700004)(5660300002)(8936002)(6916009)(36756003)(30864003)(54906003)(316002)(2906002)(70206006)(70586007)(4326008)(44832011)(8676002)(40460700003)(41300700001)(36860700001)(336012)(26005)(1076003)(47076005)(40480700001)(426003)(82740400003)(81166007)(356005)(478600001)(83380400001)(2616005)(86362001)(6666004)(333604002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:52.0036
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: dd3e6e9d-59e5-4008-d2f3-08dbae76f3af
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A102.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB6173

Introduce sysctl XEN_SYSCTL_dt_overlay to remove device-tree nodes added using
device tree overlay.

xl dt-overlay remove file.dtbo:
    Removes all the nodes in a given dtbo.
    First, removes IRQ permissions and MMIO accesses. Next, it finds the nodes
    in dt_host and delete the device node entries from dt_host.

    The nodes get removed only if it is not used by any of dom0 or domio.

Also, added overlay_track struct to keep the track of added node through device
tree overlay. overlay_track has dt_host_new which is unflattened form of updated
fdt and name of overlay nodes. When a node is removed, we also free the memory
used by overlay_track for the particular overlay node.

Nested overlay removal is supported in sequential manner only i.e. if
overlay_child nests under overlay_parent, it is assumed that user first removes
overlay_child and then removes overlay_parent.
Also, this is an experimental feature so it is expected from user to make sure
correct device tree overlays are used when adding nodes and making sure devices
are not being used by other domain before removing them from Xen tree.
Partially added/removed i.e. failures while removing the overlay may cause other
failures and might need a system reboot.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes from v10:
    Add iommu_remove_dt_device if device has IOMMU added.
Changes from v9:
    Remove iommu and IRQ routing as this will not be done while adding the nodes.
Changes from v8:
    Remove IRQs and IOMMU entries using rangesets instead of parsing each node.
Changes from v7:
    Add dt-overlay.c in MAINTAINERS.
    Add comments for dt_overlay_remove_node.
    Rename handle_remove_irq_iommu() to remove_resources().
    Add comment regarding false mapping flag for reason behind not removing the
    mapping..
    Remove irq_access_premitted() check.
    Add error handling for remove_all_descendant_nodes
    Change read_lock with write_lock.
    Remove check_overlay_fdt() call from handle_remove_overlay_nodes().
    Re-organize dt_sysctl and reutnr -EOPNOSTSUPP for error cases. Also, renamed
        this function to dt_overlay_sysctl.
    Remove unnecessary header includes in dt-overlay.h
    Correct indentation and make func   tion inputs const wherever possible.
    Make overlay_fdt const_void inside xen_sysctl_dt_overlay{}.
    Add comment regarding why we not removing IRQ and MMIO mappings.
    Move overlay_node_count() out of this patch as it's not being used here
        anymore.
Changes from v6:
    Add explicit padding for xen_system_dt_overlay{}
    Update license.
    Rearrange xfree in dt_sysctl()
    Update overlay_track struct comment with relevant message.
    Fix missing xen/errno.h for builds without CONFIG_OVERLAY_DTB cases.
    Fix header formatting.
---
---
 MAINTAINERS                  |   1 +
 xen/arch/arm/sysctl.c        |  16 +-
 xen/common/Makefile          |   1 +
 xen/common/dt-overlay.c      | 406 +++++++++++++++++++++++++++++++++++
 xen/include/public/sysctl.h  |  24 +++
 xen/include/xen/dt-overlay.h |  63 ++++++
 6 files changed, 510 insertions(+), 1 deletion(-)
 create mode 100644 xen/common/dt-overlay.c
 create mode 100644 xen/include/xen/dt-overlay.h

diff --git a/MAINTAINERS b/MAINTAINERS
index 59103dbac0..0e1d1b7655 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -301,6 +301,7 @@ M:	Julien Grall <julien@xen.org>
 S:	Supported
 F:	xen/common/libfdt/
 F:	xen/common/device_tree.c
+F:	xen/common/dt-overlay.c
 F:	xen/include/xen/libfdt/
 F:	xen/include/xen/device_tree.h
 F:	xen/drivers/passthrough/device_tree.c
diff --git a/xen/arch/arm/sysctl.c b/xen/arch/arm/sysctl.c
index e9a0661146..5cda0dc674 100644
--- a/xen/arch/arm/sysctl.c
+++ b/xen/arch/arm/sysctl.c
@@ -9,6 +9,7 @@
 
 #include <xen/types.h>
 #include <xen/lib.h>
+#include <xen/dt-overlay.h>
 #include <xen/errno.h>
 #include <xen/hypercall.h>
 #include <asm/arm64/sve.h>
@@ -25,7 +26,20 @@ void arch_do_physinfo(struct xen_sysctl_physinfo *pi)
 long arch_do_sysctl(struct xen_sysctl *sysctl,
                     XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl)
 {
-    return -ENOSYS;
+    long ret;
+
+    switch ( sysctl->cmd )
+    {
+    case XEN_SYSCTL_dt_overlay:
+        ret = dt_overlay_sysctl(&sysctl->u.dt_overlay);
+        break;
+
+    default:
+        ret = -ENOSYS;
+        break;
+    }
+
+    return ret;
 }
 
 /*
diff --git a/xen/common/Makefile b/xen/common/Makefile
index 46049eac35..e7e96b1087 100644
--- a/xen/common/Makefile
+++ b/xen/common/Makefile
@@ -8,6 +8,7 @@ obj-$(CONFIG_DEBUG_TRACE) += debugtrace.o
 obj-$(CONFIG_HAS_DEVICE_TREE) += device_tree.o
 obj-$(CONFIG_IOREQ_SERVER) += dm.o
 obj-y += domain.o
+obj-$(CONFIG_OVERLAY_DTB) += dt-overlay.o
 obj-y += event_2l.o
 obj-y += event_channel.o
 obj-y += event_fifo.o
diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c
new file mode 100644
index 0000000000..7b7224c29a
--- /dev/null
+++ b/xen/common/dt-overlay.c
@@ -0,0 +1,406 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * xen/common/dt-overlay.c
+ *
+ * Device tree overlay support in Xen.
+ *
+ * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved.
+ * Written by Vikram Garhwal <vikram.garhwal@amd.com>
+ *
+ */
+#include <asm/domain_build.h>
+#include <xen/dt-overlay.h>
+#include <xen/guest_access.h>
+#include <xen/iocap.h>
+#include <xen/libfdt/libfdt.h>
+#include <xen/xmalloc.h>
+
+static LIST_HEAD(overlay_tracker);
+static DEFINE_SPINLOCK(overlay_lock);
+
+/* Find last descendants of the device_node. */
+static struct dt_device_node *
+find_last_descendants_node(const struct dt_device_node *device_node)
+{
+    struct dt_device_node *child_node;
+
+    for ( child_node = device_node->child; child_node->sibling != NULL;
+          child_node = child_node->sibling );
+
+    /* If last child_node also have children. */
+    if ( child_node->child )
+        child_node = find_last_descendants_node(child_node);
+
+    return child_node;
+}
+
+static int dt_overlay_remove_node(struct dt_device_node *device_node)
+{
+    struct dt_device_node *np;
+    struct dt_device_node *parent_node;
+    struct dt_device_node *last_descendant = device_node->child;
+
+    parent_node = device_node->parent;
+
+    /* Check if we are trying to remove "/" i.e. root node. */
+    if ( parent_node == NULL )
+    {
+        dt_dprintk("%s's parent node not found\n", device_node->name);
+        return -EFAULT;
+    }
+
+    /* Sanity check for linking between parent and child node. */
+    np = parent_node->child;
+    if ( np == NULL )
+    {
+        dt_dprintk("parent node %s's not found\n", parent_node->name);
+        return -EFAULT;
+    }
+
+    /* If node to be removed is only child node or first child. */
+    if ( !dt_node_cmp(np->full_name, device_node->full_name) )
+    {
+        parent_node->child = np->sibling;
+
+        /*
+         * Iterate over all child nodes of device_node. Given that we are
+         * removing a node, we need to remove all it's descendants too.
+         * Reason behind finding last_descendant:
+         * If device_node has multiple children, device_node->allnext will point
+         * to first_child and first_child->allnext will be a sibling. When the
+         * device_node and it's all children are removed, parent_node->allnext
+         * should point to node next to last children.
+         */
+        if ( last_descendant )
+        {
+            last_descendant = find_last_descendants_node(device_node);
+            parent_node->allnext = last_descendant->allnext;
+        }
+        else
+            parent_node->allnext = np->allnext;
+
+        return 0;
+    }
+
+    for ( np = parent_node->child; np->sibling != NULL; np = np->sibling )
+    {
+        if ( !dt_node_cmp(np->sibling->full_name, device_node->full_name) )
+        {
+            /* Found the node. Now we remove it. */
+            np->sibling = np->sibling->sibling;
+
+            if ( np->child )
+                np = find_last_descendants_node(np);
+
+            /*
+             * Iterate over all child nodes of device_node. Given that we are
+             * removing parent node, we need to remove all it's descendants too.
+             */
+            if ( last_descendant )
+                last_descendant = find_last_descendants_node(device_node);
+
+            if ( last_descendant )
+                np->allnext = last_descendant->allnext;
+            else
+                np->allnext = np->allnext->allnext;
+
+            break;
+        }
+    }
+
+    return 0;
+}
+
+/* Basic sanity check for the dtbo tool stack provided to Xen. */
+static int check_overlay_fdt(const void *overlay_fdt, uint32_t overlay_fdt_size)
+{
+    if ( (fdt_totalsize(overlay_fdt) != overlay_fdt_size) ||
+          fdt_check_header(overlay_fdt) )
+    {
+        printk(XENLOG_ERR "The overlay FDT is not a valid Flat Device Tree\n");
+        return -EINVAL;
+    }
+
+    return 0;
+}
+
+static int irq_remove_cb(unsigned long s, unsigned long e, void *dom,
+                         unsigned long *c)
+{
+    int rc;
+    struct domain *d = dom;
+
+    /*
+     * TODO: We don't handle shared IRQs for now. So, it is assumed that
+     * the IRQs was not shared with another devices.
+     * TODO: Undo the IRQ routing.
+     */
+    rc = irq_deny_access(d, s);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "unable to revoke access for irq %lu\n", s);
+    }
+    else
+        *c += e - s + 1;
+
+    return rc;
+
+}
+
+static int iomem_remove_cb(unsigned long s, unsigned long e, void *dom,
+                           unsigned long *c)
+{
+    int rc;
+    struct domain *d = dom;
+
+    /*
+    * Remove mmio access.
+    * TODO: Support for remove/add the mapping in P2M.
+    */
+    rc = iomem_deny_access(d, s, e);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "Unable to remove dom%d access to"
+               " 0x%"PRIx64" - 0x%"PRIx64"\n",
+               d->domain_id,
+               s & PAGE_MASK, PAGE_ALIGN(e) - 1);
+    }
+    else
+        *c += e - s + 1;
+
+    return rc;
+}
+
+/* Check if node itself can be removed and remove node from IOMMU. */
+static int remove_node_resources(struct dt_device_node *device_node)
+{
+    int rc = 0;
+    unsigned int len;
+    domid_t domid;
+
+    domid = dt_device_used_by(device_node);
+
+    dt_dprintk("Checking if node %s is used by any domain\n",
+               device_node->full_name);
+
+    /* Remove the node if only it's assigned to hardware domain or domain io. */
+    if ( domid != hardware_domain->domain_id && domid != DOMID_IO )
+    {
+        printk(XENLOG_ERR "Device %s is being used by domain %u. Removing nodes failed\n",
+               device_node->full_name, domid);
+        return -EINVAL;
+    }
+
+    /* Check if iommu property exists. */
+    if ( dt_get_property(device_node, "iommus", &len) )
+    {
+        if ( dt_device_is_protected(device_node) )
+        {
+            rc = iommu_remove_dt_device(device_node);
+            if ( rc < 0 )
+                return rc;
+        }
+    }
+
+    return rc;
+}
+
+/* Remove all descendants from IOMMU. */
+static int
+remove_descendant_nodes_resources(const struct dt_device_node *device_node)
+{
+    int rc = 0;
+    struct dt_device_node *child_node;
+
+    for ( child_node = device_node->child; child_node != NULL;
+         child_node = child_node->sibling )
+    {
+        if ( child_node->child )
+        {
+            rc = remove_descendant_nodes_resources(child_node);
+            if ( rc )
+                return rc;
+        }
+
+        rc = remove_node_resources(child_node);
+        if ( rc )
+            return rc;
+    }
+
+    return rc;
+}
+
+/* Remove nodes from dt_host. */
+static int remove_nodes(const struct overlay_track *tracker)
+{
+    int rc = 0;
+    struct dt_device_node *overlay_node;
+    unsigned int j;
+    struct domain *d = hardware_domain;
+
+    for ( j = 0; j < tracker->num_nodes; j++ )
+    {
+        overlay_node = (struct dt_device_node *)tracker->nodes_address[j];
+        if ( overlay_node == NULL )
+        {
+            printk(XENLOG_ERR "Device %s is not present in the tree. Removing nodes failed\n",
+                   overlay_node->full_name);
+            return -EINVAL;
+        }
+
+        rc = remove_descendant_nodes_resources(overlay_node);
+        if ( rc )
+            return rc;
+
+        rc = remove_node_resources(overlay_node);
+        if ( rc )
+            return rc;
+
+        dt_dprintk("Removing node: %s\n", overlay_node->full_name);
+
+        write_lock(&dt_host_lock);
+
+        rc = dt_overlay_remove_node(overlay_node);
+        if ( rc )
+        {
+            write_unlock(&dt_host_lock);
+            return rc;
+        }
+
+        write_unlock(&dt_host_lock);
+    }
+
+    /* Remove IRQ access. */
+    if ( tracker->irq_ranges )
+    {
+        rc = rangeset_consume_ranges(tracker->irq_ranges, irq_remove_cb, d);
+        if ( rc )
+            return rc;
+    }
+
+   /* Remove mmio access. */
+    if ( tracker->iomem_ranges )
+    {
+        rc = rangeset_consume_ranges(tracker->iomem_ranges, iomem_remove_cb, d);
+        if ( rc )
+            return rc;
+    }
+
+    return rc;
+}
+
+/*
+ * First finds the device node to remove. Check if the device is being used by
+ * any dom and finally remove it from dt_host. IOMMU is already being taken care
+ * while destroying the domain.
+ */
+static long handle_remove_overlay_nodes(const void *overlay_fdt,
+                                        uint32_t overlay_fdt_size)
+{
+    int rc;
+    struct overlay_track *entry, *temp, *track;
+    bool found_entry = false;
+
+    rc = check_overlay_fdt(overlay_fdt, overlay_fdt_size);
+    if ( rc )
+        return rc;
+
+    spin_lock(&overlay_lock);
+
+    /*
+     * First check if dtbo is correct i.e. it should one of the dtbo which was
+     * used when dynamically adding the node.
+     * Limitation: Cases with same node names but different property are not
+     * supported currently. We are relying on user to provide the same dtbo
+     * as it was used when adding the nodes.
+     */
+    list_for_each_entry_safe( entry, temp, &overlay_tracker, entry )
+    {
+        if ( memcmp(entry->overlay_fdt, overlay_fdt, overlay_fdt_size) == 0 )
+        {
+            track = entry;
+            found_entry = true;
+            break;
+        }
+    }
+
+    if ( !found_entry )
+    {
+        rc = -EINVAL;
+
+        printk(XENLOG_ERR "Cannot find any matching tracker with input dtbo."
+               " Removing nodes is supported only for prior added dtbo.\n");
+        goto out;
+
+    }
+
+    rc = remove_nodes(entry);
+    if ( rc )
+    {
+        printk(XENLOG_ERR "Removing node failed\n");
+        goto out;
+    }
+
+    list_del(&entry->entry);
+
+    xfree(entry->dt_host_new);
+    xfree(entry->fdt);
+    xfree(entry->overlay_fdt);
+
+    xfree(entry->nodes_address);
+
+    rangeset_destroy(entry->irq_ranges);
+    rangeset_destroy(entry->iomem_ranges);
+
+    xfree(entry);
+
+ out:
+    spin_unlock(&overlay_lock);
+    return rc;
+}
+
+long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op)
+{
+    long ret;
+    void *overlay_fdt;
+
+    if ( op->overlay_op != XEN_SYSCTL_DT_OVERLAY_ADD &&
+         op->overlay_op != XEN_SYSCTL_DT_OVERLAY_REMOVE )
+        return -EOPNOTSUPP;
+
+    if ( op->overlay_fdt_size == 0 || op->overlay_fdt_size > KB(500) )
+        return -EINVAL;
+
+    if ( op->pad[0] || op->pad[1] || op->pad[2] )
+        return -EINVAL;
+
+    overlay_fdt = xmalloc_bytes(op->overlay_fdt_size);
+
+    if ( overlay_fdt == NULL )
+        return -ENOMEM;
+
+    ret = copy_from_guest(overlay_fdt, op->overlay_fdt, op->overlay_fdt_size);
+    if ( ret )
+    {
+        gprintk(XENLOG_ERR, "copy from guest failed\n");
+        xfree(overlay_fdt);
+
+        return -EFAULT;
+    }
+
+    if ( op->overlay_op == XEN_SYSCTL_DT_OVERLAY_REMOVE )
+        ret = handle_remove_overlay_nodes(overlay_fdt, op->overlay_fdt_size);
+
+    xfree(overlay_fdt);
+
+    return ret;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h
index 3975050248..f1eba78405 100644
--- a/xen/include/public/sysctl.h
+++ b/xen/include/public/sysctl.h
@@ -1185,6 +1185,25 @@ typedef struct xen_sysctl_cpu_policy xen_sysctl_cpu_policy_t;
 DEFINE_XEN_GUEST_HANDLE(xen_sysctl_cpu_policy_t);
 #endif
 
+#if defined(__arm__) || defined (__aarch64__)
+/*
+ * XEN_SYSCTL_dt_overlay
+ * Performs addition/removal of device tree nodes under parent node using dtbo.
+ * This does in three steps:
+ *  - Adds/Removes the nodes from dt_host.
+ *  - Adds/Removes IRQ permission for the nodes.
+ *  - Adds/Removes MMIO accesses.
+ */
+struct xen_sysctl_dt_overlay {
+    XEN_GUEST_HANDLE_64(const_void) overlay_fdt;  /* IN: overlay fdt. */
+    uint32_t overlay_fdt_size;              /* IN: Overlay dtb size. */
+#define XEN_SYSCTL_DT_OVERLAY_ADD                   1
+#define XEN_SYSCTL_DT_OVERLAY_REMOVE                2
+    uint8_t overlay_op;                     /* IN: Add or remove. */
+    uint8_t pad[3];                         /* IN: Must be zero. */
+};
+#endif
+
 struct xen_sysctl {
     uint32_t cmd;
 #define XEN_SYSCTL_readconsole                    1
@@ -1215,6 +1234,7 @@ struct xen_sysctl {
 #define XEN_SYSCTL_livepatch_op                  27
 /* #define XEN_SYSCTL_set_parameter              28 */
 #define XEN_SYSCTL_get_cpu_policy                29
+#define XEN_SYSCTL_dt_overlay                    30
     uint32_t interface_version; /* XEN_SYSCTL_INTERFACE_VERSION */
     union {
         struct xen_sysctl_readconsole       readconsole;
@@ -1245,6 +1265,10 @@ struct xen_sysctl {
 #if defined(__i386__) || defined(__x86_64__)
         struct xen_sysctl_cpu_policy        cpu_policy;
 #endif
+
+#if defined(__arm__) || defined (__aarch64__)
+        struct xen_sysctl_dt_overlay        dt_overlay;
+#endif
         uint8_t                             pad[128];
     } u;
 };
diff --git a/xen/include/xen/dt-overlay.h b/xen/include/xen/dt-overlay.h
new file mode 100644
index 0000000000..c0567741ee
--- /dev/null
+++ b/xen/include/xen/dt-overlay.h
@@ -0,0 +1,63 @@
+ /* SPDX-License-Identifier: GPL-2.0-only */
+ /*
+ * xen/dt-overlay.h
+ *
+ * Device tree overlay support in Xen.
+ *
+ * Copyright (C) 2023, Advanced Micro Devices, Inc. All Rights Reserved.
+ * Written by Vikram Garhwal <vikram.garhwal@amd.com>
+ *
+ */
+#ifndef __XEN_DT_OVERLAY_H__
+#define __XEN_DT_OVERLAY_H__
+
+#include <xen/device_tree.h>
+#include <xen/list.h>
+#include <xen/rangeset.h>
+
+/*
+ * overlay_track describes information about added nodes through dtbo.
+ * @entry: List pointer.
+ * @dt_host_new: Pointer to the updated dt_host_new which is unflattened from
+    the 'updated fdt'.
+ * @fdt: Stores the fdt.
+ * @overlay_fdt: Stores a copy of input overlay_fdt.
+ * @nodes_address: Stores each overlay_node's address.
+ * @num_nodes: Total number of nodes in overlay dtb.
+ * @iomem_ranges: Range set to keep track of all IOMEMs.
+ * @irq_ranges: Range set to keep track of all added IRQs.
+ */
+struct overlay_track {
+    struct list_head entry;
+    struct dt_device_node *dt_host_new;
+    void *fdt;
+    void *overlay_fdt;
+    unsigned long *nodes_address;
+    unsigned int num_nodes;
+    struct rangeset *iomem_ranges;
+    struct rangeset *irq_ranges;
+};
+
+struct xen_sysctl_dt_overlay;
+
+#ifdef CONFIG_OVERLAY_DTB
+long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op);
+#else
+#include <xen/errno.h>
+static inline long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op)
+{
+    return -EOPNOTSUPP;
+}
+#endif
+
+#endif /* __XEN_DT_OVERLAY_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:20:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:20:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596058.929858 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhDi-00009d-Jq; Wed, 06 Sep 2023 01:20:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596058.929858; Wed, 06 Sep 2023 01:20:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhDi-00009V-HC; Wed, 06 Sep 2023 01:20:38 +0000
Received: by outflank-mailman (input) for mailman id 596058;
 Wed, 06 Sep 2023 01:20:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhA8-0006tr-Mw
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:56 +0000
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
 (mail-sn1nam02on20623.outbound.protection.outlook.com
 [2a01:111:f400:7ea9::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 11306e33-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:56 +0200 (CEST)
Received: from MN2PR19CA0014.namprd19.prod.outlook.com (2603:10b6:208:178::27)
 by DM4PR12MB5216.namprd12.prod.outlook.com (2603:10b6:5:398::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:52 +0000
Received: from BL02EPF0001A102.namprd05.prod.outlook.com
 (2603:10b6:208:178:cafe::6d) by MN2PR19CA0014.outlook.office365.com
 (2603:10b6:208:178::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:52 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A102.mail.protection.outlook.com (10.167.241.134) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:52 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:49 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 18:16:49 -0700
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:48 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 11306e33-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Yq4mhoS3LAABD9NmKBUaIFKOTq7SLsBeTC8uhAWCvLljbwCFTDnh77nChkC1XOMuLOm1sBiKVEaketWHHthJ4cYlmNs/42UPV6yew2GYFVNTRjr5Sst5UiEkxonhR9yj4YvA0ViMzXVRjSqJNv36/weTAKXXlcjTynRbFxTAIoY0yBccyFS7Kezw136w3CSVElzteGfIpdzSp4/4beFynfQvSgSBMd6nqvvtqmyLsb6K2dhBY+XubdRBBjShncSstdheoNgzySHCbgY4QF9vCYPchHTkNR6f0aK9GztbLoEl7gE9vlcpDFcobApsI0z/lPstztE9ztKhfQkN8G6Sgw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=f3CXFnL+4aLIWZtU9p5mMJcpke4wuyPy6FqvOY6YZ1o=;
 b=RIPBciSjncsw7YeHrzTWt61p0BsB9wLoO6aGsWsnNdAzk1rETwl68AuggqHKjRRBJlZgQQFS3ltPeVK1uoveJbH6aYC4p8FjBp1mqLDQLBFW7Of7RvJ5EsZQBIbe/qYqJnNCMLu+vegC8f8Ryt7wRERrV5j1LpU0J08AbyZ/LX5EIvOpnt5BLYKstKrZ3Epooyn+AfXnep5o2WzdbgNHd0ExM5rzJfv0U7tqhrhjwqfRvcn0Ooe/MbNOyU6HKyNTe/4CxNRqnMQ0rW2fFu4CNW6SCEylpnrszm+TjWAhIlClMAGK34cfgVtnWrD0rmZAr9HYKp3BrVAqjZnvNIlThw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=f3CXFnL+4aLIWZtU9p5mMJcpke4wuyPy6FqvOY6YZ1o=;
 b=0tNn2rCiudBygV+H1xPMR7qt7toR0jUKsmtxgxZEUf1X08ZvobL8xM40NZGyRE7gRVVhHpDgzcu0BStoAZDzVKecinn139vHPRfRbj1DWmOYsnpsDSS+sDvhfeMlTB81iY/jBGZB7kxqszB6c1bv9rpCQEQ5FPx9k2OyMBtFtvA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, Juergen Gross <jgross@suse.com>
Subject: [XEN][PATCH v12 18/20] tools/libs/ctrl: Implement new xc interfaces for dt overlay
Date: Tue, 5 Sep 2023 18:16:28 -0700
Message-ID: <20230906011631.30310-19-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A102:EE_|DM4PR12MB5216:EE_
X-MS-Office365-Filtering-Correlation-Id: f60b614e-9acb-4e7b-a949-08dbae76f3e6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9sgS/T4Zdd8wWUnKjUTNt/qFjZCgspRdV+wXJhCxxUfETelrMECuLbCDhnHW7FZ7AapEURPNk5HpW7YO3tV1ChaQ9BBrUGEyQ4Rp+zdsCxUJF7PYMTa7/HI/gaqgUlj7ejND435NTiE5k7sAvGGwUFEGfd2auSdx/35s5/5ahry4hrhqkhQXHH231HzIIqmF9dtnF1jHX8Bb7sNOCzvMUGvMPIdyBZVFe1eeFINU0n+dUjANG0III5NHIssN64WNhRgTE58iEK4EqxUt7HkfvwdbWGQxxCRwzqXo6wg89ObjvGWCKQTEzW5jZDJ57ZvA195GDGg+IWwsK0xH3hki8sEG6GJtdoN2fdL9MsaaI1dLmwJo/0XpdrWI/HGmjEhk02UYkHUPzKitg4o0hfGDi1mVdOUNl6pn4OaWw9qJY0hAVBKZ8URxjaB5c8acIO6k2pUo1meg0s3QdblGDSHYPcd2vbAk/nliBbWJwRyRYw5UgRGtAV1WkigsDo5OcudkuDX8KFEfvMb4JpQtqDi9AC7sCNFL+ZrfTXctYUkFSekpEs6q6yDkua4PofvTif3LPnHpbJiSEFAW9ofLuqFi1uvbtjPe+u5eCZsd/S1lEW5CQ2ygucs1Qp1lCGUi88ccNwbzlZLlStdSo4m1YRPZkrvOxVj0D8/npCQkM9qiZHG16XTSVpW0Ibm39qzEktS3daRJBzX+1U7VM02ucCqS0NhzPRrshE5Uha3mAJluSYbPFwL5nvS9WUCyT3iqGFv8nU+0Uam5dw2o9+CPQ1gWnc6+4ofkCwZQqJl+hULy6f0=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(346002)(39860400002)(136003)(376002)(82310400011)(1800799009)(186009)(451199024)(36840700001)(46966006)(40470700004)(40460700003)(336012)(426003)(36756003)(81166007)(356005)(2906002)(36860700001)(70206006)(47076005)(82740400003)(40480700001)(54906003)(41300700001)(316002)(6916009)(70586007)(86362001)(6666004)(478600001)(8936002)(8676002)(4326008)(5660300002)(2616005)(1076003)(44832011)(26005)(2004002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:52.3942
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f60b614e-9acb-4e7b-a949-08dbae76f3e6
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A102.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5216

xc_dt_overlay() sends the device tree binary overlay, size of .dtbo and overlay
operation type i.e. add or remove to xen.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/include/xenctrl.h         |  5 ++++
 tools/libs/ctrl/Makefile.common |  1 +
 tools/libs/ctrl/xc_dt_overlay.c | 50 +++++++++++++++++++++++++++++++++
 3 files changed, 56 insertions(+)
 create mode 100644 tools/libs/ctrl/xc_dt_overlay.c

diff --git a/tools/include/xenctrl.h b/tools/include/xenctrl.h
index 12dca13b69..2ef8b4e054 100644
--- a/tools/include/xenctrl.h
+++ b/tools/include/xenctrl.h
@@ -2653,6 +2653,11 @@ int xc_livepatch_replace(xc_interface *xch, char *name, uint32_t timeout, uint32
 int xc_domain_cacheflush(xc_interface *xch, uint32_t domid,
                          xen_pfn_t start_pfn, xen_pfn_t nr_pfns);
 
+#if defined(__arm__) || defined(__aarch64__)
+int xc_dt_overlay(xc_interface *xch, void *overlay_fdt,
+                  uint32_t overlay_fdt_size, uint8_t overlay_op);
+#endif
+
 /* Compat shims */
 #include "xenctrl_compat.h"
 
diff --git a/tools/libs/ctrl/Makefile.common b/tools/libs/ctrl/Makefile.common
index 0a09c28fd3..247afbe5f9 100644
--- a/tools/libs/ctrl/Makefile.common
+++ b/tools/libs/ctrl/Makefile.common
@@ -24,6 +24,7 @@ OBJS-y       += xc_hcall_buf.o
 OBJS-y       += xc_foreign_memory.o
 OBJS-y       += xc_kexec.o
 OBJS-y       += xc_resource.o
+OBJS-$(CONFIG_ARM)  += xc_dt_overlay.o
 OBJS-$(CONFIG_X86) += xc_psr.o
 OBJS-$(CONFIG_X86) += xc_pagetab.o
 OBJS-$(CONFIG_Linux) += xc_linux.o
diff --git a/tools/libs/ctrl/xc_dt_overlay.c b/tools/libs/ctrl/xc_dt_overlay.c
new file mode 100644
index 0000000000..c2224c4d15
--- /dev/null
+++ b/tools/libs/ctrl/xc_dt_overlay.c
@@ -0,0 +1,50 @@
+/*
+ *
+ * Device Tree Overlay functions.
+ * Copyright (C) 2021 Xilinx Inc.
+ * Author Vikram Garhwal <fnu.vikram@xilinx.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation;
+ * version 2.1 of the License.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "xc_private.h"
+
+int xc_dt_overlay(xc_interface *xch, void *overlay_fdt,
+                  uint32_t overlay_fdt_size, uint8_t overlay_op)
+{
+    int err;
+    struct xen_sysctl sysctl = {
+        .cmd = XEN_SYSCTL_dt_overlay,
+        .u.dt_overlay = {
+            .overlay_op = overlay_op,
+            .overlay_fdt_size = overlay_fdt_size,
+        }
+    };
+
+    DECLARE_HYPERCALL_BOUNCE(overlay_fdt, overlay_fdt_size,
+                             XC_HYPERCALL_BUFFER_BOUNCE_IN);
+
+    if ( (err = xc_hypercall_bounce_pre(xch, overlay_fdt)) )
+        goto err;
+
+    set_xen_guest_handle(sysctl.u.dt_overlay.overlay_fdt, overlay_fdt);
+
+    if ( (err = do_sysctl(xch, &sysctl)) != 0 )
+        PERROR("%s failed", __func__);
+
+err:
+    xc_hypercall_bounce_post(xch, overlay_fdt);
+
+    return err;
+}
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:25:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:25:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596086.929868 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhIA-0001pD-9k; Wed, 06 Sep 2023 01:25:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596086.929868; Wed, 06 Sep 2023 01:25:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhIA-0001p6-6r; Wed, 06 Sep 2023 01:25:14 +0000
Received: by outflank-mailman (input) for mailman id 596086;
 Wed, 06 Sep 2023 01:25:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhAD-0006tr-MT
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:17:01 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20623.outbound.protection.outlook.com
 [2a01:111:f400:7eab::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 13ef21dd-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:17:01 +0200 (CEST)
Received: from CY5PR19CA0010.namprd19.prod.outlook.com (2603:10b6:930:15::14)
 by DM4PR12MB5261.namprd12.prod.outlook.com (2603:10b6:5:398::22) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:57 +0000
Received: from CY4PEPF0000E9DB.namprd05.prod.outlook.com
 (2603:10b6:930:15:cafe::c0) by CY5PR19CA0010.outlook.office365.com
 (2603:10b6:930:15::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:52 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9DB.mail.protection.outlook.com (10.167.241.81) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:52 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:50 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:50 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:49 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 13ef21dd-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=d56YR/rPBMe5MbfmAWrkXHY2mM3cXK/a3Z7Vh6oW8KP942Sh/Lw20hBz4Z3/Cf0JQWs6+wYI0VpOOwZAZQoKc2MpjwwUCmYRlfu0EuqQu9gwYOyq/4EYUsjq6KNcF9cTJ/6eAutC/EGNwryD/FfRPMOXVLS6c9UiZhRXkdmTtxEhx3CcEbCrzdHZW5pe+ANzzWIUKJWYB07He4T2z0AwkhcWWptVB6mITxxxUSCzB4DlBlHjYf5U2hspSaIVeKGRwr6OpCjUO/aI5sq7i5VgxeDHnQAh3/+g9RQdsDLUIgAFW7Ewas16Cg9dzDyU51o7Ubvihuf3fMEw46dwPPVAqQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mTCPtQBNjoIyHEJsEb7hqin0hShKQ1om1xTixiBsYZA=;
 b=eb2dABpz0S361YurgN8F+wNB+bewaZZ5H46s1nAbIJ6X7wG1RxvGJ3ms/T2x/foJ4SfwfyUrkHkFlvq+qSuhFYln4qoPt48dOh6LGH9PW7IjrAupS3PAwCQnc7+FzLWnfT9+ZQ4BLHrFISQuWZB9C0AsSDQr6sliy821QKBD/5KQgwe78xe+Bh5iDsT5BXXidUFlhUn/4HGApLhoC6ex+gdoXISWsH/pTBrJgwApHClLzD55ppUHaXorC3y3WcRuZFNpsJKdG7ax3fsFoswYObD8uXYzPNJzsOkV6H85AnijMIXIYgzu3VRFWiaAGFhYJr2ywJYgziLO9gz5d2dyZw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mTCPtQBNjoIyHEJsEb7hqin0hShKQ1om1xTixiBsYZA=;
 b=07fn0GtN05eajXibiOW8XkRaruJ5S9U/bUVjyVUc7XaIoRG56BHdjWtZvoxDTeXIqIE7BzZ7gkDyAwiFb17fbezJ6aa1UxAV6mIjYhBDztgFiC2q/sDltRIQPYa3jbDivl+EKGSfh3ZYaOz5VaNRcs0FNlQuHhVtXuxSkRQpxGE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, Juergen Gross <jgross@suse.com>
Subject: [XEN][PATCH v12 19/20] tools/libs/light: Implement new libxl functions for device tree overlay ops
Date: Tue, 5 Sep 2023 18:16:29 -0700
Message-ID: <20230906011631.30310-20-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9DB:EE_|DM4PR12MB5261:EE_
X-MS-Office365-Filtering-Correlation-Id: b982ab02-2f3e-43f7-599f-08dbae76f3ff
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3NduXH4F4IyJR2KnHtwwAc9IZcsZ7EYbXNUubsLkwawdQRTPEdxs9YrVgs+ZIFqufVMsvA5n45/yD1hcytq3YjP16IhMJz7lhNb1hmlxFaeh2V7PvyxcgApQEuqxGHBe1CBF9qQ3ZdW1x0a7L1OhGccuxJAa51ViZe6o9imGK6JtGu4IkKLCfn9YhVRhD9BHo7DCthckoacr9ot624f5+4EDBwNOp5fqWkO63V6BclCtuUcjZWczYBrUOqm5bQm86XQ9sdncBQcXl8JIW6DO9sPtd6RMtgD5tkqXv3xqmzSrlgew/FShp1WgfnZX4aBrKqUyUi0jQGMxpGSefV0IYc7KRsdLNtNeD4BKxPVHjrsF7CvzUEFuAW1lG7U+VQze91XKN+5dB12bnLQB1+zGkMICVjlJU4gEaXg4G07b6YgJQtnN5D7I4Vn7K1XliRG7lrJb76FI7JHs2+sVKzC/4FWS7vQCuPRIP7mdqzs8Y1Fnnz2bhtvUDES99VNY40DJj+MGuECmSCvxVwVGFsSH/SJAYPqtJLXsVuJrfpAQMZ7G7BiilvYRM9+NOuCY2Bbyy5mJXHJP4AwUIOSHqNYddWk8frFWFdarxP2Mo1BlMpDeir5QyiQARaVIgleDaqoMZPbQA4jOFY1iuPXJAl4ejShvAbx+bpnyTGBDl0dvclTv6AM7WDhsXmyA4DCXVlrmyKH9IyDeZ2FUh5+EP4QtX1ydPppSi0H/qOH9ZwhPK2HwK83bG5raFdQ0WIbhSGrqlrKenkbWBQQ4wE+bCz9WnySDkqbiU/uPKwjtDxB4TKc=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(396003)(346002)(376002)(451199024)(82310400011)(186009)(1800799009)(46966006)(36840700001)(40470700004)(2906002)(40460700003)(54906003)(70586007)(70206006)(6916009)(40480700001)(316002)(44832011)(41300700001)(8936002)(4326008)(36756003)(8676002)(5660300002)(86362001)(6666004)(2616005)(1076003)(336012)(81166007)(426003)(26005)(36860700001)(478600001)(356005)(82740400003)(47076005)(2004002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:52.4935
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b982ab02-2f3e-43f7-599f-08dbae76f3ff
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000E9DB.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5261

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/include/libxl.h               | 11 +++++
 tools/libs/light/Makefile           |  3 ++
 tools/libs/light/libxl_dt_overlay.c | 71 +++++++++++++++++++++++++++++
 3 files changed, 85 insertions(+)
 create mode 100644 tools/libs/light/libxl_dt_overlay.c

diff --git a/tools/include/libxl.h b/tools/include/libxl.h
index 82b764ff57..abc5fd52da 100644
--- a/tools/include/libxl.h
+++ b/tools/include/libxl.h
@@ -259,6 +259,12 @@
  */
 #define LIBXL_HAVE_DEVICETREE_PASSTHROUGH 1
 
+#if defined(__arm__) || defined(__aarch64__)
+/**
+ * This means Device Tree Overlay is supported.
+ */
+#define LIBXL_HAVE_DT_OVERLAY 1
+#endif
 /*
  * libxl_domain_build_info has device_model_user to specify the user to
  * run the device model with. See docs/misc/qemu-deprivilege.txt.
@@ -2498,6 +2504,11 @@ libxl_device_pci *libxl_device_pci_list(libxl_ctx *ctx, uint32_t domid,
                                         int *num);
 void libxl_device_pci_list_free(libxl_device_pci* list, int num);
 
+#if defined(__arm__) || defined(__aarch64__)
+int libxl_dt_overlay(libxl_ctx *ctx, void *overlay,
+                     uint32_t overlay_size, uint8_t overlay_op);
+#endif
+
 /*
  * Turns the current process into a backend device service daemon
  * for a driver domain.
diff --git a/tools/libs/light/Makefile b/tools/libs/light/Makefile
index 5d7ff94b05..ba4c1b7933 100644
--- a/tools/libs/light/Makefile
+++ b/tools/libs/light/Makefile
@@ -112,6 +112,9 @@ OBJS-y += _libxl_types.o
 OBJS-y += libxl_flask.o
 OBJS-y += _libxl_types_internal.o
 
+# Device tree overlay is enabled only for ARM architecture.
+OBJS-$(CONFIG_ARM) += libxl_dt_overlay.o
+
 ifeq ($(CONFIG_LIBNL),y)
 CFLAGS_LIBXL += $(LIBNL3_CFLAGS)
 endif
diff --git a/tools/libs/light/libxl_dt_overlay.c b/tools/libs/light/libxl_dt_overlay.c
new file mode 100644
index 0000000000..a6c709a6dc
--- /dev/null
+++ b/tools/libs/light/libxl_dt_overlay.c
@@ -0,0 +1,71 @@
+/*
+ * Copyright (C) 2021 Xilinx Inc.
+ * Author Vikram Garhwal <fnu.vikram@xilinx.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published
+ * by the Free Software Foundation; version 2.1 only. with the special
+ * exception on linking described in file LICENSE.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ */
+
+#include "libxl_osdeps.h" /* must come before any other headers */
+#include "libxl_internal.h"
+#include <libfdt.h>
+#include <xenctrl.h>
+
+static int check_overlay_fdt(libxl__gc *gc, void *fdt, size_t size)
+{
+    int r;
+
+    if (fdt_magic(fdt) != FDT_MAGIC) {
+        LOG(ERROR, "Overlay FDT is not a valid Flat Device Tree");
+        return ERROR_FAIL;
+    }
+
+    r = fdt_check_header(fdt);
+    if (r) {
+        LOG(ERROR, "Failed to check the overlay FDT (%d)", r);
+        return ERROR_FAIL;
+    }
+
+    if (fdt_totalsize(fdt) > size) {
+        LOG(ERROR, "Overlay FDT totalsize is too big");
+        return ERROR_FAIL;
+    }
+
+    return 0;
+}
+
+int libxl_dt_overlay(libxl_ctx *ctx, void *overlay_dt, uint32_t overlay_dt_size,
+                     uint8_t overlay_op)
+{
+    int rc;
+    int r;
+    GC_INIT(ctx);
+
+    if (check_overlay_fdt(gc, overlay_dt, overlay_dt_size)) {
+        LOG(ERROR, "Overlay DTB check failed");
+        rc = ERROR_FAIL;
+        goto out;
+    } else {
+        LOG(DEBUG, "Overlay DTB check passed");
+        rc = 0;
+    }
+
+    r = xc_dt_overlay(ctx->xch, overlay_dt, overlay_dt_size, overlay_op);
+
+    if (r) {
+        LOG(ERROR, "%s: Adding/Removing overlay dtb failed.", __func__);
+        rc = ERROR_FAIL;
+    }
+
+out:
+    GC_FREE;
+    return rc;
+}
+
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:28:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:28:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596109.929879 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhLS-0003OD-No; Wed, 06 Sep 2023 01:28:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596109.929879; Wed, 06 Sep 2023 01:28:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhLS-0003O6-Ko; Wed, 06 Sep 2023 01:28:38 +0000
Received: by outflank-mailman (input) for mailman id 596109;
 Wed, 06 Sep 2023 01:28:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhA4-0006tr-5s
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:52 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7e89::61b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0dedf5bb-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:51 +0200 (CEST)
Received: from MN2PR19CA0007.namprd19.prod.outlook.com (2603:10b6:208:178::20)
 by BL1PR12MB5031.namprd12.prod.outlook.com (2603:10b6:208:31a::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 01:16:46 +0000
Received: from BL02EPF0001A102.namprd05.prod.outlook.com
 (2603:10b6:208:178:cafe::35) by MN2PR19CA0007.outlook.office365.com
 (2603:10b6:208:178::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:46 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A102.mail.protection.outlook.com (10.167.241.134) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:46 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:43 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:43 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0dedf5bb-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MTS5niPUpI3bBgY1brrkFz1jq7XueygLFpQStz/ob76cPRWBr4zwC0nBZBxD6D1bcnD1G8Fpp4l+UFiI1NkDeek9khatGgmWbbZtbyDZhRKTmZ1u89/YYtS3VaRROHSXrTNjCiEOTqIt0Nt4I1eake+4fDOPnSUZETZ32k+ozVaLCco6mfP36I6q5o8hgjYOokJzlrGAxY7Qf7w5tciwMBzJEDB+N59LBgU84+tH9GlfNcz6RIVt2tpS27T04xTgbMGdKMCpJeyimbcHXiuTwIOWI0/5pdkkuOO7QMhW1SeFDHL9N8Bnl0yP6Ymd6QVyw9i+93lVH8WzSNdmq10Jew==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1SW4wKXQYKIhPbVrs0COOCkOCwqWA0YoU6tRZStnLaY=;
 b=K8xgQEPwiBp28p44BBLFce4Gmu555Noe+My3/9s/md9FUenqQWBKIx0m2E8Hz5MOEDnCnX4gceVMg7aToZpfFR3auaKvwsZzOVWyDzPY29c8eQA2jOo8W0WkaryI4cfYP4aJK7snLfls5HBm6sm7NGpV7UHRpEdt392n2j1Nba6hK3Z74fkxz6RUKKQ1ORoj6KKvjfqibIHCZseX8rZ6PZCeiTo3BpYy5VNfFLIf5tOhb7YlKKqqYykb+cQfzWY2MkVBsNBL6nrujEliYhGOGBNl/+HDXtj/M2L9ImUjz21mr45pZksmgqwh+9Iqbd8L+eP2hCavEq7Z6l+JVVJukA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1SW4wKXQYKIhPbVrs0COOCkOCwqWA0YoU6tRZStnLaY=;
 b=2lgEjYy7zmTz1+PT5azLMf6CcCJibpCQ0JYd+cvG/s3tLtEZQ5KZ1KlT69WSRPSt71Lvsc3kL2aImBbsSKVhiTHXMKL1XnPvJxnuAaZ9eFs5dD4ldmZXZZ19VgXV1KiJ5wObHh9/h3uKIUXXzdSxA5+ZljqoHegOqBLKEovnt7s=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Rahul Singh <rahul.singh@arm.com>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN][PATCH v12 12/20] xen/smmu: Add remove_device callback for smmu_iommu ops
Date: Tue, 5 Sep 2023 18:16:22 -0700
Message-ID: <20230906011631.30310-13-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A102:EE_|BL1PR12MB5031:EE_
X-MS-Office365-Filtering-Correlation-Id: 180f8bdd-565d-401a-a82a-08dbae76f03d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	4WPy7IofN+szBGIbDlPd+HYyenDo108xNcupNYuj0V7v+J8Wtqsg0DzvNEdBbxNgAVQxQf1JsWR/793BpxWa++7DS09X+qw6i4bIMa2jhPJ/Ymg9bQEs8doLOdMvttVCmALXliiCjNBVSJ+KeNqL/8dS38pUBQnefWAP2ETflWeDCp43obdnPO1Yw3kCge0qaHiRB1a6rFeoTF5ugWBUjmnEZI+KWwYaBBRO3FfL4CXHbWJQuNEmVHRZ4JqdkkS2CiGRfEj/0S30KJtEpQSk5LZOnodKFVF+tv44lFSHLCPUwrvNL+nESdgBZbtXsc6EBO5BVYP9rPEtWFic0m3AEhWD2yXHitlYkp707cj0rdB1jINs7pnknGkWwGodH7cKoztzWMkdNj1u/zS4a1FxzScTsBieWUK/Mhhm5w+OJ/fLC/2aJ8FkniGYTc1EZlat8KX1ao1lk6ORO8o1SV6OdJbH2okZHfi/ucr2v3I2zCkMemgXf8rSJFGFfx6hbZrp+xZjMtRyNd0HsdzVbwRsYAh4cn2iiwvQyw1molBu/FxZ2xc0f51MUMc2h6yTFRCV2X4WiO7Nh/swN2WnvTTSwy9Rh5XmyqXllcLEGWH5DZLmzNdTxQ6Q/KdQm4htydVEEnitc7tnJy5rgd6eW1IQ6TmUG/QWD/KYxgqkgZ7djhuwYcQhljTWmIWTQjasYlllXWoNNf6pSLpqJRnU8xbbZPEbFGIjyczslAJcYcl8O82uoS4OhRYFkOl3yuWJDNg1NQSKb9D+FKGl8IZtBfQJ9w==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(376002)(346002)(136003)(396003)(451199024)(1800799009)(186009)(82310400011)(46966006)(36840700001)(40470700004)(82740400003)(81166007)(356005)(6666004)(36756003)(40460700003)(86362001)(36860700001)(40480700001)(47076005)(2616005)(1076003)(2906002)(26005)(426003)(336012)(83380400001)(478600001)(70206006)(316002)(70586007)(8936002)(8676002)(5660300002)(4326008)(44832011)(6916009)(41300700001)(54906003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:46.2534
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 180f8bdd-565d-401a-a82a-08dbae76f03d
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A102.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5031

Add remove_device callback for removing the device entry from smmu-master using
following steps:
1. Find if SMMU master exists for the device node.
2. Check if device is currently in use.
3. Remove the SMMU master.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>

---
 Changes from v9:
    Remove iommu_dt_device_is_assigned_locked().
    Add comment regarding caller holding the locks to protect concurrent access.
 Changes from v7:
        Added comments on arm_smmu_dt_remove_device_generic().
---
---
 xen/drivers/passthrough/arm/smmu.c | 60 ++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)

diff --git a/xen/drivers/passthrough/arm/smmu.c b/xen/drivers/passthrough/arm/smmu.c
index c37fa9af13..71799064f8 100644
--- a/xen/drivers/passthrough/arm/smmu.c
+++ b/xen/drivers/passthrough/arm/smmu.c
@@ -815,6 +815,19 @@ static int insert_smmu_master(struct arm_smmu_device *smmu,
 	return 0;
 }
 
+static int remove_smmu_master(struct arm_smmu_device *smmu,
+			      struct arm_smmu_master *master)
+{
+	if (!smmu->masters.rb_node) {
+		ASSERT_UNREACHABLE();
+		return -ENOENT;
+	}
+
+	rb_erase(&master->node, &smmu->masters);
+
+	return 0;
+}
+
 static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu,
 					 struct device *dev,
 					 struct iommu_fwspec *fwspec)
@@ -852,6 +865,32 @@ static int arm_smmu_dt_add_device_legacy(struct arm_smmu_device *smmu,
 	return insert_smmu_master(smmu, master);
 }
 
+static int arm_smmu_dt_remove_device_legacy(struct arm_smmu_device *smmu,
+					 struct device *dev)
+{
+	struct arm_smmu_master *master;
+	struct device_node *dev_node = dev_get_dev_node(dev);
+	int ret;
+
+	master = find_smmu_master(smmu, dev_node);
+	if (master == NULL) {
+		dev_err(dev,
+			"No registrations found for master device %s\n",
+			dev_node->name);
+		return -EINVAL;
+	}
+
+	ret = remove_smmu_master(smmu, master);
+	if (ret)
+		return ret;
+
+	/* Protected by dt_host_lock and dtdevs_lock as caller holds these locks. */
+	dev_node->is_protected = false;
+
+	kfree(master);
+	return 0;
+}
+
 static int register_smmu_master(struct arm_smmu_device *smmu,
 				struct device *dev,
 				struct of_phandle_args *masterspec)
@@ -875,6 +914,26 @@ static int register_smmu_master(struct arm_smmu_device *smmu,
 					     fwspec);
 }
 
+/*
+ * The driver which supports generic IOMMU DT bindings must have this
+ * callback implemented.
+ */
+static int arm_smmu_dt_remove_device_generic(u8 devfn, struct device *dev)
+{
+	struct arm_smmu_device *smmu;
+	struct iommu_fwspec *fwspec;
+
+	fwspec = dev_iommu_fwspec_get(dev);
+	if (fwspec == NULL)
+		return -ENXIO;
+
+	smmu = find_smmu(fwspec->iommu_dev);
+	if (smmu == NULL)
+		return -ENXIO;
+
+	return arm_smmu_dt_remove_device_legacy(smmu, dev);
+}
+
 static int arm_smmu_dt_add_device_generic(u8 devfn, struct device *dev)
 {
 	struct arm_smmu_device *smmu;
@@ -2859,6 +2918,7 @@ static const struct iommu_ops arm_smmu_iommu_ops = {
     .init = arm_smmu_iommu_domain_init,
     .hwdom_init = arch_iommu_hwdom_init,
     .add_device = arm_smmu_dt_add_device_generic,
+    .remove_device = arm_smmu_dt_remove_device_generic,
     .teardown = arm_smmu_iommu_domain_teardown,
     .iotlb_flush = arm_smmu_iotlb_flush,
     .assign_device = arm_smmu_assign_dev,
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:29:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:29:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596116.929889 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhLw-0003zr-Vo; Wed, 06 Sep 2023 01:29:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596116.929889; Wed, 06 Sep 2023 01:29:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhLw-0003zi-Sk; Wed, 06 Sep 2023 01:29:08 +0000
Received: by outflank-mailman (input) for mailman id 596116;
 Wed, 06 Sep 2023 01:29:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdhLv-0003yE-6Q
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:29:07 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c2ada569-4c54-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 03:29:03 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 208D5CE1384;
 Wed,  6 Sep 2023 01:29:01 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id ADCF9C433C8;
 Wed,  6 Sep 2023 01:28:58 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c2ada569-4c54-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693963739;
	bh=WVL8TP3p8QGPqOGLpiYPw7wVXbzx66zsmtImYlGPhIc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=JXVsnG201xFrEGrNq8QcSk2p/eXN7ZOKRxQEZ3pgORSZk9ElWmnFSHDQuzD2a1lvT
	 wz/YEim9GJ+VdGccIKP3Lg+cPI7uxC8VVDcxg7HXkkHojTM7GfT+2LYyRWWLVFIuQF
	 mhtTB7pddg9BXJv+EX6a+0B9PLQwkmRdIHCE197TOBGhBBUy2P6fcDcreQYvTO8Jgr
	 wyxAeOG/xOUUOKWT8foGnEKZO6YAvbOw5iRdsEhT0AfOnjPj9KEOSi0dCDYvyyOx3W
	 dJntuL1Th31yHApoEoh10HrQdjLWOzZWikjkxPLKcIMInv5Efl/9VPqQmS1VLe8iKf
	 tbSiqSxLQehnA==
Date: Tue, 5 Sep 2023 18:28:56 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Vikram Garhwal <vikram.garhwal@amd.com>
cc: xen-devel@lists.xenproject.org, julien@xen.org, michal.orzel@amd.com, 
    sstabellini@kernel.org
Subject: Re: [XEN][PATCH v12 14/20] common/device_tree: Add rwlock for
 dt_host
In-Reply-To: <20230906011631.30310-15-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309051828442.6458@ubuntu-linux-20-04-desktop>
References: <20230906011631.30310-1-vikram.garhwal@amd.com> <20230906011631.30310-15-vikram.garhwal@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 5 Sep 2023, Vikram Garhwal wrote:
> Dynamic programming ops will modify the dt_host and there might be other
> functions which are browsing the dt_host at the same time. To avoid the race
> conditions, adding rwlock for browsing the dt_host during runtime. dt_host
> writer will be added in the follow-up patch for device tree overlay
> functionalities.
> 
> Reason behind adding rwlock instead of spinlock:
>     For now, dynamic programming is the sole modifier of dt_host in Xen during
>     run time. All other access functions like iommu_release_dt_device() are
>     just reading the dt_host during run-time. So, there is a need to protect
>     others from browsing the dt_host while dynamic programming is modifying
>     it. rwlock is better suitable for this task as spinlock won't be able to
>     differentiate between read and write access.
> 
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>

> ---
> Changes from v11:
>     Update check state >= active for checking dt_host_lock to be locked
> Changes from v10:
>     Add ASSERT for iommu_assign_dt_device() and iommu_add_dt_device().
> Changes from v9:
>     Update commit message and fix indentation.
>     Add ASSERT() for iommu_deassign_dt_device() and iommu_remove_dt_device().
>     Fix code styles.
>     Remove rwlock_init in unflatten_device_tree() and do DEFINE_RWLOCK in
>         device-tree.c
> Changes from v7:
>     Keep one lock for dt_host instead of lock for each node under dt_host.
> ---
> ---
>  xen/common/device_tree.c              |  1 +
>  xen/drivers/passthrough/device_tree.c | 28 +++++++++++++++++++++++++--
>  xen/include/xen/device_tree.h         |  7 +++++++
>  3 files changed, 34 insertions(+), 2 deletions(-)
> 
> diff --git a/xen/common/device_tree.c b/xen/common/device_tree.c
> index f38f51ec0b..b1c2952951 100644
> --- a/xen/common/device_tree.c
> +++ b/xen/common/device_tree.c
> @@ -31,6 +31,7 @@ dt_irq_xlate_func dt_irq_xlate;
>  struct dt_device_node *dt_host;
>  /* Interrupt controller node*/
>  const struct dt_device_node *dt_interrupt_controller;
> +DEFINE_RWLOCK(dt_host_lock);
>  
>  /**
>   * struct dt_alias_prop - Alias property in 'aliases' node
> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
> index 80f6efc606..075fb25a37 100644
> --- a/xen/drivers/passthrough/device_tree.c
> +++ b/xen/drivers/passthrough/device_tree.c
> @@ -31,6 +31,8 @@ int iommu_assign_dt_device(struct domain *d, struct dt_device_node *dev)
>      int rc = -EBUSY;
>      struct domain_iommu *hd = dom_iommu(d);
>  
> +    ASSERT(system_state < SYS_STATE_active || rw_is_locked(&dt_host_lock));
> +
>      if ( !is_iommu_enabled(d) )
>          return -EINVAL;
>  
> @@ -62,6 +64,8 @@ int iommu_deassign_dt_device(struct domain *d, struct dt_device_node *dev)
>      const struct domain_iommu *hd = dom_iommu(d);
>      int rc;
>  
> +    ASSERT(rw_is_locked(&dt_host_lock));
> +
>      if ( !is_iommu_enabled(d) )
>          return -EINVAL;
>  
> @@ -113,6 +117,8 @@ int iommu_release_dt_devices(struct domain *d)
>      if ( !is_iommu_enabled(d) )
>          return 0;
>  
> +    read_lock(&dt_host_lock);
> +
>      list_for_each_entry_safe(dev, _dev, &hd->dt_devices, domain_list)
>      {
>          rc = iommu_deassign_dt_device(d, dev);
> @@ -120,10 +126,14 @@ int iommu_release_dt_devices(struct domain *d)
>          {
>              dprintk(XENLOG_ERR, "Failed to deassign %s in domain %u\n",
>                      dt_node_full_name(dev), d->domain_id);
> +            read_unlock(&dt_host_lock);
> +
>              return rc;
>          }
>      }
>  
> +    read_unlock(&dt_host_lock);
> +
>      return 0;
>  }
>  
> @@ -133,6 +143,8 @@ int iommu_remove_dt_device(struct dt_device_node *np)
>      struct device *dev = dt_to_dev(np);
>      int rc;
>  
> +    ASSERT(rw_is_locked(&dt_host_lock));
> +
>      if ( !iommu_enabled )
>          return 1;
>  
> @@ -177,6 +189,8 @@ int iommu_add_dt_device(struct dt_device_node *np)
>      struct device *dev = dt_to_dev(np);
>      int rc = 1, index = 0;
>  
> +    ASSERT(system_state < SYS_STATE_active || rw_is_locked(&dt_host_lock));
> +
>      if ( !iommu_enabled )
>          return 1;
>  
> @@ -249,6 +263,8 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
>      int ret;
>      struct dt_device_node *dev;
>  
> +    read_lock(&dt_host_lock);
> +
>      switch ( domctl->cmd )
>      {
>      case XEN_DOMCTL_assign_device:
> @@ -289,7 +305,10 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
>          }
>  
>          if ( d == dom_io )
> -            return -EINVAL;
> +        {
> +            ret = -EINVAL;
> +            break;
> +        }
>  
>          ret = iommu_add_dt_device(dev);
>          if ( ret < 0 )
> @@ -327,7 +346,10 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
>              break;
>  
>          if ( d == dom_io )
> -            return -EINVAL;
> +        {
> +            ret = -EINVAL;
> +            break;
> +        }
>  
>          ret = iommu_deassign_dt_device(d, dev);
>  
> @@ -342,5 +364,7 @@ int iommu_do_dt_domctl(struct xen_domctl *domctl, struct domain *d,
>          break;
>      }
>  
> +    read_unlock(&dt_host_lock);
> +
>      return ret;
>  }
> diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h
> index 44d315c8ba..a262bba2ed 100644
> --- a/xen/include/xen/device_tree.h
> +++ b/xen/include/xen/device_tree.h
> @@ -18,6 +18,7 @@
>  #include <xen/string.h>
>  #include <xen/types.h>
>  #include <xen/list.h>
> +#include <xen/rwlock.h>
>  
>  #define DEVICE_TREE_MAX_DEPTH 16
>  
> @@ -218,6 +219,12 @@ extern struct dt_device_node *dt_host;
>   */
>  extern const struct dt_device_node *dt_interrupt_controller;
>  
> +/*
> + * Lock that protects r/w updates to unflattened device tree i.e. dt_host during
> + * runtime. Lock may not be taken for boot only code.
> + */
> +extern rwlock_t dt_host_lock;
> +
>  /**
>   * Find the interrupt controller
>   * For the moment we handle only one interrupt controller: the first
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:29:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:29:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596119.929899 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhM4-0004MS-CE; Wed, 06 Sep 2023 01:29:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596119.929899; Wed, 06 Sep 2023 01:29:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhM4-0004MJ-83; Wed, 06 Sep 2023 01:29:16 +0000
Received: by outflank-mailman (input) for mailman id 596119;
 Wed, 06 Sep 2023 01:29:15 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhA7-0006tr-HC
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:16:55 +0000
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
 (mail-sn1nam02on20615.outbound.protection.outlook.com
 [2a01:111:f400:7ea9::615])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1065a1e5-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:16:54 +0200 (CEST)
Received: from MN2PR19CA0018.namprd19.prod.outlook.com (2603:10b6:208:178::31)
 by DM6PR12MB4353.namprd12.prod.outlook.com (2603:10b6:5:2a6::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 01:16:50 +0000
Received: from BL02EPF0001A102.namprd05.prod.outlook.com
 (2603:10b6:208:178:cafe::b8) by MN2PR19CA0018.outlook.office365.com
 (2603:10b6:208:178::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:50 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A102.mail.protection.outlook.com (10.167.241.134) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:50 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:46 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:45 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1065a1e5-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BXt5SUSwssXIp8tIHllnOsBvYQPAwvCwWH82uXfET8Uzpk31nU+Gqq04mV972bipR49aszBx27Y2X/B+p2Fn3YEN6zXCV+Nsdh7C+N9WNFXv3T+29NWw7LYzsd4ZW+QCyCHoP8tnAgN1srIA/0bMGRglOPzE+4DR1lu/PnxBVa/zc0aS/A0lqmKViqC+oZalTYE0LdaMBM+E3+lyUDnTlQVuTZIvDcrzIpOmXJi/JGD1sAJwnjgGxsJLo7LHYiURogJuskau9Xyeb+QlxIiwIZLbpIKDRt/wdjQCnyKBp7/xFeLZwic+Xbzs4U65UL+xb5geiPDWEG6i8PynPK67dw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=stho6rkmy8rK1oECb+GLo4R5AalHWAkc6H9ty4aMTD0=;
 b=Dka0VPYq/EzD/G2y4GfxRcFI+3837lkPUsVs/oPMH131ZMKa6f7HBXxsjLlh12ZJ6ot9ecqurEVw9v3q1QqSe1YJiOzYloaPdqhNCXSo2I5PkuaM/6h9jQaIgGtvPqAs4PkpoEwh2LIum3ECwsJN/sFKaDhpMLl1FC6QpOZ9jNYcFrXnyCqDY5E1bCI1RfiFMKWGRik9UOdXC2qRu7z2OLQ4pPOs8H3MLAdt4ArcFfR1bKsMIN8njM2t7Z48qC7Tv6I7c6uX8UjGLMLczrOaF3uwUQW7BOUwDycsJ3XFa68TdOY7dXWXbhUVx8UVsOZzLRWtw5nGxV7npwuuC1fSZw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=stho6rkmy8rK1oECb+GLo4R5AalHWAkc6H9ty4aMTD0=;
 b=1F4SU6rl2ubSDbP3yT/NCUHgWy9x5bIHPKnMmMEcP3DsQY2fWXCdBPkTRmP9xFfLwcYxWbbiKhTEwVjIigr1MxqybFc5tusz+mmu6Brtrs3pygvrUogK2fO3PIGt80gQUod5D2vtnUVZkJ5CeMKWyAIaktsb+CK1sJeWAxklD3Y=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN][PATCH v12 15/20] arm/asm/setup.h: Update struct map_range_data to add rangeset.
Date: Tue, 5 Sep 2023 18:16:25 -0700
Message-ID: <20230906011631.30310-16-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A102:EE_|DM6PR12MB4353:EE_
X-MS-Office365-Filtering-Correlation-Id: 8a799134-2e38-4d71-a30b-08dbae76f29d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1CUM1Nxp7aG+Ebhf1czbVBk6GNv7gSznYVfOfFmE6xq2024ayKXslt69KEFjgkIsBRl6dBNrSeffQYjirGz601mBVBzjVw3nHqIP+jjMUJFRAo28oAFJOll7fU7cAvdzjp2RCz5tqT8Uc6iMS4Ev2JqSBsVM8YZBQrh9yhoLZ19g9H5Qp0MhnztB4v4xNsMFpjO4HuPCCyadC6oNcFEnA1LrSbHd+ItxvISvsvDL63/YEMUMAasD29y2mQHU89N60hZvC1D4UYOdLu5incfhso0qwjqupanLuoMSNFZvGDRAcycciH7pPIXUGHr1J6/huAKIpjNJLjtH+fjxYdZNw++yDb+mZp70IpYjUOVSdy/B66v5nc1RcTEuvGqejqVr2sdUJYSnUGtGAgpTdxRhwX6GPtx6rLfrrPiNeNbZ+Ba7k+k/cpR2ODSCGEH1HX/DS/DkfPJDuIH7x/K0oPG6Vn2gG5M4R8VzBhyLg4iVuU+P4RhCY32Z8FJbPQqm49lKHdJ+mw1o3lLi/Mm4fXo9saHYTSViq6C4IWm+vTafMoC1i2yazm66fjolVwQpzmtUApsB0git7voLcnait6VNOlSgLfGTZrP1rWqiL5lP5JFsJKZUb8Ck+/0+WowJ//zQ+8avozkhebPcXjUEcXi2A89km0bMj7pNEYLN54Ln8pSLMM/7jkBoFkERteYeP0OaSIQSeBMMrQt68SNnjgg46aRWq6v9vTulZHYX35SkJtWEaphb8JnHeGklWBF03O7bBS4/XNhi0SV90bIgiK0CcA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(346002)(39860400002)(396003)(376002)(82310400011)(186009)(1800799009)(451199024)(46966006)(40470700004)(36840700001)(6666004)(478600001)(83380400001)(1076003)(2616005)(26005)(336012)(426003)(2906002)(44832011)(6916009)(54906003)(41300700001)(316002)(70206006)(70586007)(5660300002)(4326008)(8676002)(8936002)(40460700003)(36756003)(40480700001)(47076005)(36860700001)(86362001)(81166007)(356005)(82740400003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:50.2379
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8a799134-2e38-4d71-a30b-08dbae76f29d
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A102.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4353

Add rangesets for IRQs and IOMEMs. This was done to accommodate dynamic overlay
node addition/removal operations. With overlay operations, new IRQs and IOMEMs
are added in dt_host and routed. While removing overlay nodes, nodes are removed
from dt_host and their IRQs and IOMEMs routing is also removed. Storing IRQs and
IOMEMs in the rangeset will avoid re-parsing the device tree nodes to get the
IOMEM and IRQ ranges for overlay remove ops.

Dynamic overlay node add/remove will be introduced in follow-up patches.

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>

---
Changes from v10:
    Replace paddr_to_pfn(PAGE_ALIGN()) with paddr_to_pfn_aligned().
    Change data type of irq.
    fix function change for handle_device().
    Remove unnecessary change .d = d in mr_data.
---
---
 xen/arch/arm/device.c            | 43 +++++++++++++++++++++++++-------
 xen/arch/arm/domain_build.c      |  4 +--
 xen/arch/arm/include/asm/setup.h |  9 ++++---
 3 files changed, 42 insertions(+), 14 deletions(-)

diff --git a/xen/arch/arm/device.c b/xen/arch/arm/device.c
index 327e4d24fb..1f631d3274 100644
--- a/xen/arch/arm/device.c
+++ b/xen/arch/arm/device.c
@@ -165,6 +165,15 @@ int map_range_to_domain(const struct dt_device_node *dev,
     dt_dprintk("  - MMIO: %010"PRIx64" - %010"PRIx64" P2MType=%x\n",
                addr, addr + len, mr_data->p2mt);
 
+    if ( mr_data->iomem_ranges )
+    {
+        res = rangeset_add_range(mr_data->iomem_ranges,
+                                 paddr_to_pfn(addr),
+                                 paddr_to_pfn_aligned(addr + len - 1));
+        if ( res )
+            return res;
+    }
+
     return 0;
 }
 
@@ -178,10 +187,11 @@ int map_range_to_domain(const struct dt_device_node *dev,
  */
 int map_device_irqs_to_domain(struct domain *d,
                               struct dt_device_node *dev,
-                              bool need_mapping)
+                              bool need_mapping,
+                              struct rangeset *irq_ranges)
 {
     unsigned int i, nirq;
-    int res;
+    int res, irq;
     struct dt_raw_irq rirq;
 
     nirq = dt_number_of_irq(dev);
@@ -208,17 +218,24 @@ int map_device_irqs_to_domain(struct domain *d,
             continue;
         }
 
-        res = platform_get_irq(dev, i);
-        if ( res < 0 )
+        irq = platform_get_irq(dev, i);
+        if ( irq < 0 )
         {
             printk(XENLOG_ERR "Unable to get irq %u for %s\n",
                    i, dt_node_full_name(dev));
-            return res;
+            return irq;
         }
 
-        res = map_irq_to_domain(d, res, need_mapping, dt_node_name(dev));
+        res = map_irq_to_domain(d, irq, need_mapping, dt_node_name(dev));
         if ( res )
             return res;
+
+        if ( irq_ranges )
+        {
+            res = rangeset_add_singleton(irq_ranges, irq);
+            if ( res )
+                return res;
+        }
     }
 
     return 0;
@@ -249,6 +266,11 @@ static int map_dt_irq_to_domain(const struct dt_device_node *dev,
     }
 
     res = map_irq_to_domain(d, irq, !mr_data->skip_mapping, dt_node_name(dev));
+    if ( res )
+        return res;
+
+    if ( mr_data->irq_ranges )
+        res = rangeset_add_singleton(mr_data->irq_ranges, irq);
 
     return res;
 }
@@ -289,7 +311,8 @@ static int map_device_children(const struct dt_device_node *dev,
  *  - Assign the device to the guest if it's protected by an IOMMU
  *  - Map the IRQs and iomem regions to DOM0
  */
-int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt)
+int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt,
+                  struct rangeset *iomem_ranges, struct rangeset *irq_ranges)
 {
     unsigned int naddr;
     unsigned int i;
@@ -308,7 +331,9 @@ int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt)
         .p2mt = p2mt,
         .skip_mapping = !own_device ||
                         (is_pci_passthrough_enabled() &&
-                        (device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE))
+                        (device_get_class(dev) == DEVICE_PCI_HOSTBRIDGE)),
+        .iomem_ranges = iomem_ranges,
+        .irq_ranges = irq_ranges
     };
 
     naddr = dt_number_of_address(dev);
@@ -342,7 +367,7 @@ int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt)
         }
     }
 
-    res = map_device_irqs_to_domain(d, dev, own_device);
+    res = map_device_irqs_to_domain(d, dev, own_device, irq_ranges);
     if ( res < 0 )
         return res;
 
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index ff4fc30769..29dcbb8a2e 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -2402,7 +2402,7 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
                "WARNING: Path %s is reserved, skip the node as we may re-use the path.\n",
                path);
 
-    res = handle_device(d, node, p2mt);
+    res = handle_device(d, node, p2mt, NULL, NULL);
     if ( res)
         return res;
 
@@ -2745,7 +2745,7 @@ static int __init handle_passthrough_prop(struct kernel_info *kinfo,
         return -EINVAL;
     }
 
-    res = map_device_irqs_to_domain(kinfo->d, node, true);
+    res = map_device_irqs_to_domain(kinfo->d, node, true, NULL);
     if ( res < 0 )
         return res;
 
diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index 6cda3e4039..b8866c20f4 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -113,6 +113,9 @@ struct map_range_data
     p2m_type_t p2mt;
     /* Set if mapping of the memory ranges must be skipped. */
     bool skip_mapping;
+    /* Rangeset to store IRQs and IOMEM for overlay nodes. */
+    struct rangeset *iomem_ranges;
+    struct rangeset *irq_ranges;
 };
 
 extern struct bootinfo bootinfo;
@@ -165,11 +168,11 @@ void device_tree_get_reg(const __be32 **cell, uint32_t address_cells,
 u32 device_tree_get_u32(const void *fdt, int node,
                         const char *prop_name, u32 dflt);
 
-int handle_device(struct domain *d, struct dt_device_node *dev,
-                  p2m_type_t p2mt);
+int handle_device(struct domain *d, struct dt_device_node *dev, p2m_type_t p2mt,
+                  struct rangeset *iomem_ranges, struct rangeset *irq_ranges);
 
 int map_device_irqs_to_domain(struct domain *d, struct dt_device_node *dev,
-                              bool need_mapping);
+                              bool need_mapping, struct rangeset *irq_ranges);
 
 int map_irq_to_domain(struct domain *d, unsigned int irq,
                       bool need_mapping, const char *devname);
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:29:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:29:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596126.929909 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhMJ-0004zG-Kd; Wed, 06 Sep 2023 01:29:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596126.929909; Wed, 06 Sep 2023 01:29:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhMJ-0004z9-HK; Wed, 06 Sep 2023 01:29:31 +0000
Received: by outflank-mailman (input) for mailman id 596126;
 Wed, 06 Sep 2023 01:29:30 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdhAH-0006tr-GT
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:17:05 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20605.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1673d7aa-4c53-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 03:17:04 +0200 (CEST)
Received: from CY5PR19CA0013.namprd19.prod.outlook.com (2603:10b6:930:15::32)
 by CY8PR12MB8065.namprd12.prod.outlook.com (2603:10b6:930:73::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 01:16:58 +0000
Received: from CY4PEPF0000E9DB.namprd05.prod.outlook.com
 (2603:10b6:930:15:cafe::f4) by CY5PR19CA0013.outlook.office365.com
 (2603:10b6:930:15::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 01:16:58 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9DB.mail.protection.outlook.com (10.167.241.81) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 01:16:57 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:51 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 5 Sep
 2023 20:16:51 -0500
Received: from xsjfnuv50.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 5 Sep 2023 20:16:50 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1673d7aa-4c53-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hb1YC71dWmYwfb1a3xolxxMDYaeNezVKWgfuxWbClIF2IFlUenHyuTW+zKe8MtmkVgVcJIXhUyNR5W/iXrvPZFyXoUCvXCQoZtiA6fiifUvQhrIlN0vVJFh6mBGa2Q7XAAceVMPRh1zoMTiinVUEDcbztpF9rjsgn9OLdOvtaIWC1yIJnQs/0F95vJQdBdNtn3LYga+/zzSaa0qu57jGA4DGEnDsNi0NEzmw/gtLJg2wye5DVUQOyFo5R/NMi47aMPIIM7Y5hTajN77Xh0wM8WxPCKw1ViFtcwXa7hpd6RXb7udIuUuKyDGc7+nnstvNU4pMI/+LSKe6iEkai1ACsQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0SOh4yXnAAqd95uGtVLNuRN1JoH4/9uDY70TgG5n3FU=;
 b=kAyIhe93y9ueci/hvUwQB/OarFTCkbKKRZ0VopB7v4VDN9uDOAac9+B9ZePmJ6WBRE1Yw9++XkmK7LOL3dWhlu3hVVoDj5EA7T0HRbwFYPy3csBj7Awp9SXDcK59M8VPqi+KqvlV82aIEziXfnmXHjJwC+pBsnyRamTYmtwjp+pdweSdMMyUf+3ZjvptLWP3wd0dmV+/TpCOJ14f9WYsTznO1G+KvoN0SAm37cVZn+barniUYB/D1IZu4ZpC7E8IqURBDaPh/rbCqBLDIwMoYJw2c17A2UCs+fcHDXifHUwCaCWIHklyMe9rX0FHKIQgBHFOTLgTlzwyEfNixTSAwg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0SOh4yXnAAqd95uGtVLNuRN1JoH4/9uDY70TgG5n3FU=;
 b=PgNFZPcvkOTjdzwI22qm6s1v/KD6JMWl3BqAoupfdUeCgb4kmydIcSsB+xyiqZ4p6UYHSExZRa5XfOQ4yBRwmvzjhG63OcAiIOrRGEFocypQ9wFFO8dnf12eTLe0VrGpESWbrHkhBMs8OD+Eb4Qd6YGonVcdpFsSIVNCp3HVG3E=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <vikram.garhwal@amd.com>, <julien@xen.org>, <michal.orzel@amd.com>,
	<sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>
Subject: [XEN][PATCH v12 20/20] tools/xl: Add new xl command overlay for device tree overlay support
Date: Tue, 5 Sep 2023 18:16:30 -0700
Message-ID: <20230906011631.30310-21-vikram.garhwal@amd.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20230906011631.30310-1-vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
MIME-Version: 1.0
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9DB:EE_|CY8PR12MB8065:EE_
X-MS-Office365-Filtering-Correlation-Id: 9de38f9f-df21-41d5-e750-08dbae76f735
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OwAUQkkbGzQMyrvIUy0Mbn/RhRsaxwiQ/3OyEGRxrc1x55Rxr/mR6ch2OAIlGm7EUMpLdWXZeFUw6MNnmyRnqORA4pw6e1EPHPUrdLLSA+EmejkMGKGStrbIHr/+18LHlYaJH4Dku1pEQtDlEakifqmyv8JkhF4JWyLhco7HxnbhggAUjAX2u9Bbfwa9Yev2mg48koIAncmCqqMWo7uk8dQjVHjbCuAjsevV2nylSKDQ+OB8H/HwaYaFS6//m4+2MRlWRrjQz8uBSniAQ/ZdPtoMefvR5R+oYgXODUk+8AYWsRfLqQgyH7o/yt1lVs+wy9IpDzrCHQChSK1LnIzkJ8686WoG3gZFsfiibL+a2MvE4JYA0Zp3EotHBP8N1pgZ7NjZhweKP1PxxfLh1fzJM0/oL6rxa5cENvtckw4/ikIK34eWupIy9cZacKjqDF5CZ+5n0g+hAvuhhP0/AAmk1dwU8x+CPO35hNY4xt5pNPZzfNjC+RXSZ+UjwQ7sVtBQPcAMQ0Qp4E8ABJIFDlaaSeTMtIEhWShE7zfD8UYxNpi5pT428u3uf3p9Uv9T9NpkXKyo7uMKhoECV7YQ2J7HymxtsgUk9yT249obfI2LA6iQWoBRfrFkFbAUSnhBuqJAeNtBFt314txtzpPsFSDSg2lReI8Ayjbz9gyQgdmWdqAIUsGyV4PExQdybq9L3qm6g+4Z1bbWbkrfHF7i4AXbbX7KFJJ64xxCLGpdwWVdRbRCauaOHHVFcnSPEn+IfGnlc8xwvna6uE8gd8skOQUmsA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(396003)(346002)(376002)(82310400011)(1800799009)(186009)(451199024)(46966006)(40470700004)(36840700001)(40460700003)(36756003)(40480700001)(6666004)(81166007)(478600001)(356005)(82740400003)(2616005)(1076003)(6916009)(316002)(41300700001)(54906003)(70586007)(70206006)(36860700001)(47076005)(426003)(26005)(336012)(83380400001)(2906002)(86362001)(5660300002)(8676002)(4326008)(8936002)(44832011)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 01:16:57.8842
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9de38f9f-df21-41d5-e750-08dbae76f735
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000E9DB.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB8065

Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
---
 tools/xl/xl.h           |  1 +
 tools/xl/xl_cmdtable.c  |  6 +++++
 tools/xl/xl_vmcontrol.c | 52 +++++++++++++++++++++++++++++++++++++++++
 3 files changed, 59 insertions(+)

diff --git a/tools/xl/xl.h b/tools/xl/xl.h
index 72538d6a81..a923daccd3 100644
--- a/tools/xl/xl.h
+++ b/tools/xl/xl.h
@@ -138,6 +138,7 @@ int main_shutdown(int argc, char **argv);
 int main_reboot(int argc, char **argv);
 int main_list(int argc, char **argv);
 int main_vm_list(int argc, char **argv);
+int main_dt_overlay(int argc, char **argv);
 int main_create(int argc, char **argv);
 int main_config_update(int argc, char **argv);
 int main_button_press(int argc, char **argv);
diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c
index 67604e9536..2463521156 100644
--- a/tools/xl/xl_cmdtable.c
+++ b/tools/xl/xl_cmdtable.c
@@ -631,6 +631,12 @@ const struct cmd_spec cmd_table[] = {
       "Issue a qemu monitor command to the device model of a domain",
       "<Domain> <Command>",
     },
+    { "dt-overlay",
+      &main_dt_overlay, 0, 1,
+      "Add/Remove a device tree overlay",
+      "add/remove <.dtbo>"
+      "-h print this help\n"
+    },
 };
 
 const int cmdtable_len = ARRAY_SIZE(cmd_table);
diff --git a/tools/xl/xl_vmcontrol.c b/tools/xl/xl_vmcontrol.c
index 03971927e9..cea5b4a88e 100644
--- a/tools/xl/xl_vmcontrol.c
+++ b/tools/xl/xl_vmcontrol.c
@@ -1265,6 +1265,58 @@ int main_create(int argc, char **argv)
     return 0;
 }
 
+int main_dt_overlay(int argc, char **argv)
+{
+    const char *overlay_ops = NULL;
+    const char *overlay_config_file = NULL;
+    void *overlay_dtb = NULL;
+    int rc;
+    uint8_t op;
+    int overlay_dtb_size = 0;
+    const int overlay_add_op = 1;
+    const int overlay_remove_op = 2;
+
+    if (argc < 2) {
+        help("dt_overlay");
+        return EXIT_FAILURE;
+    }
+
+    overlay_ops = argv[1];
+    overlay_config_file = argv[2];
+
+    if (strcmp(overlay_ops, "add") == 0)
+        op = overlay_add_op;
+    else if (strcmp(overlay_ops, "remove") == 0)
+        op = overlay_remove_op;
+    else {
+        fprintf(stderr, "Invalid dt overlay operation\n");
+        return EXIT_FAILURE;
+    }
+
+    if (overlay_config_file) {
+        rc = libxl_read_file_contents(ctx, overlay_config_file,
+                                      &overlay_dtb, &overlay_dtb_size);
+
+        if (rc) {
+            fprintf(stderr, "failed to read the overlay device tree file %s\n",
+                    overlay_config_file);
+            free(overlay_dtb);
+            return ERROR_FAIL;
+        }
+    } else {
+        fprintf(stderr, "overlay dtbo file not provided\n");
+        return ERROR_FAIL;
+    }
+
+    rc = libxl_dt_overlay(ctx, overlay_dtb, overlay_dtb_size, op);
+
+    free(overlay_dtb);
+
+    if (rc)
+        return EXIT_FAILURE;
+
+    return rc;
+}
 /*
  * Local variables:
  * mode: C
-- 
2.17.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:30:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:30:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596145.929919 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhNN-00077C-1Y; Wed, 06 Sep 2023 01:30:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596145.929919; Wed, 06 Sep 2023 01:30:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhNM-000775-UG; Wed, 06 Sep 2023 01:30:36 +0000
Received: by outflank-mailman (input) for mailman id 596145;
 Wed, 06 Sep 2023 01:30:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdhNL-00075a-FY
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:30:35 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f769ed24-4c54-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 03:30:32 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id E0D2ECE1384;
 Wed,  6 Sep 2023 01:30:28 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 60A44C433C8;
 Wed,  6 Sep 2023 01:30:26 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f769ed24-4c54-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693963827;
	bh=w5lwXGwrB5oEk2ntluu77LDGIJed+XTS0iXISkFgL3o=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=UYPBeYWFDQ7GkcrviHd8IvlHzwudPRuzJ5S68sXoQgyLMBUYWnXZvSQ3ntIg9SEFD
	 CFpaX53FMYhHUgCYVl+O4ni8hseVthxugURYJSCW02dGjm5cBjxE1OWnuCAhRnic4n
	 AUQR+J1Zywa0jbuXV/NsUHBEQhHgSXY/jkVa+1rV35/Z6Ki2qUx+tbOreQmBeqDcn+
	 oCFKyU067+Q31nTkCryBS4jsZJATqqCB4yexpM32P16+1/Fsp6WICaeBJI/Lse+tMG
	 9W9lx1oJkgqYw5c10B2KNzH4UYTLGaSQJbwaa6wIjCmcC4TdR57JYxoClabJguK+CM
	 7DxTIht/Zf/1A==
Date: Tue, 5 Sep 2023 18:30:24 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Vikram Garhwal <vikram.garhwal@amd.com>
cc: xen-devel@lists.xenproject.org, julien@xen.org, michal.orzel@amd.com, 
    sstabellini@kernel.org
Subject: Re: [XEN][PATCH v12 17/20] xen/arm: Implement device tree node
 addition functionalities
In-Reply-To: <20230906011631.30310-18-vikram.garhwal@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309051830120.6458@ubuntu-linux-20-04-desktop>
References: <20230906011631.30310-1-vikram.garhwal@amd.com> <20230906011631.30310-18-vikram.garhwal@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 5 Sep 2023, Vikram Garhwal wrote:
> Update sysctl XEN_SYSCTL_dt_overlay to enable support for dtbo nodes addition
> using device tree overlay.
> 
> xl dt-overlay add file.dtbo:
>     Each time overlay nodes are added using .dtbo, a new fdt(memcpy of
>     device_tree_flattened) is created and updated with overlay nodes. This
>     updated fdt is further unflattened to a dt_host_new. Next, it checks if any
>     of the overlay nodes already exists in the dt_host. If overlay nodes doesn't
>     exist then find the overlay nodes in dt_host_new, find the overlay node's
>     parent in dt_host and add the nodes as child under their parent in the
>     dt_host. The node is attached as the last node under target parent.
> 
>     Finally, add IRQs, add device to IOMMUs, set permissions and map MMIO for the
>     overlay node.
> 
> When a node is added using overlay, a new entry is allocated in the
> overlay_track to keep the track of memory allocation due to addition of overlay
> node. This is helpful for freeing the memory allocated when a device tree node
> is removed.
> 
> The main purpose of this to address first part of dynamic programming i.e.
> making xen aware of new device tree node which means updating the dt_host with
> overlay node information. Here we are adding/removing node from dt_host, and
> checking/setting IOMMU and IRQ permission but never mapping them to any domain.
> Right now, mapping/Un-mapping will happen only when a new domU is
> created/destroyed using "xl create".
> 
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> Changes from v10:
>     Change int to unsigned int for accessing node_nums.
>     Re-organize free_nodes_full_path().
>     Change order of calling xfree for err cases.
> Changes from v9:
>     Remove add_resources() and use handle_device().
> Changes from v8:
>     Add rangeset to keep IRQs and IOMEM information.
> Changes from v7:
>     Move overlay_node_count() in this patch.
>     Fix indent with goto statements.
>     Rename handle_add_irq_iommu() to add_resources().
> Changes from v6:
>     Fix comment style and add comment regarding false flag in irq mapping.
>     Move malloc for nodes_full_path to handle_add_overlay_nodes.
>     Move node_num define to start of overlay_get_nodes_info().
>     Remove "domain *d" from handle_add_irq_iommu().
>     Fix error handling for handle_add_irq_iommu().
>     Split handle_add_overlay_nodes to two functions.
>     Create a separate function for freeing nodes_full_path.
>     Fix xfree for dt_sysctl.
> ---
> ---
>  xen/common/dt-overlay.c | 495 ++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 495 insertions(+)
> 
> diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c
> index 7b7224c29a..b07a6128dc 100644
> --- a/xen/common/dt-overlay.c
> +++ b/xen/common/dt-overlay.c
> @@ -34,6 +34,25 @@ find_last_descendants_node(const struct dt_device_node *device_node)
>      return child_node;
>  }
>  
> +/*
> + * Returns next node to the input node. If node has children then return
> + * last descendant's next node.
> +*/
> +static struct dt_device_node *
> +dt_find_next_node(struct dt_device_node *dt, const struct dt_device_node *node)
> +{
> +    struct dt_device_node *np;
> +
> +    dt_for_each_device_node(dt, np)
> +        if ( np == node )
> +            break;
> +
> +    if ( np->child )
> +        np = find_last_descendants_node(np);
> +
> +    return np->allnext;
> +}
> +
>  static int dt_overlay_remove_node(struct dt_device_node *device_node)
>  {
>      struct dt_device_node *np;
> @@ -111,6 +130,78 @@ static int dt_overlay_remove_node(struct dt_device_node *device_node)
>      return 0;
>  }
>  
> +static int dt_overlay_add_node(struct dt_device_node *device_node,
> +                               const char *parent_node_path)
> +{
> +    struct dt_device_node *parent_node;
> +    struct dt_device_node *next_node;
> +
> +    parent_node = dt_find_node_by_path(parent_node_path);
> +
> +    if ( parent_node == NULL )
> +    {
> +        dt_dprintk("Parent node %s not found. Overlay node will not be added\n",
> +                   parent_node_path);
> +        return -EINVAL;
> +    }
> +
> +    /* If parent has no child. */
> +    if ( parent_node->child == NULL )
> +    {
> +        next_node = parent_node->allnext;
> +        device_node->parent = parent_node;
> +        parent_node->allnext = device_node;
> +        parent_node->child = device_node;
> +    }
> +    else
> +    {
> +        struct dt_device_node *np;
> +        /*
> +         * If parent has at least one child node.
> +         * Iterate to the last child node of parent.
> +         */
> +        for ( np = parent_node->child; np->sibling != NULL; np = np->sibling );
> +
> +        /* Iterate over all child nodes of np node. */
> +        if ( np->child )
> +        {
> +            struct dt_device_node *np_last_descendant;
> +
> +            np_last_descendant = find_last_descendants_node(np);
> +
> +            next_node = np_last_descendant->allnext;
> +            np_last_descendant->allnext = device_node;
> +        }
> +        else
> +        {
> +            next_node = np->allnext;
> +            np->allnext = device_node;
> +        }
> +
> +        device_node->parent = parent_node;
> +        np->sibling = device_node;
> +        np->sibling->sibling = NULL;
> +    }
> +
> +    /* Iterate over all child nodes of device_node to add children too. */
> +    if ( device_node->child )
> +    {
> +        struct dt_device_node *device_node_last_descendant;
> +
> +        device_node_last_descendant = find_last_descendants_node(device_node);
> +
> +        /* Plug next_node at the end of last children of device_node. */
> +        device_node_last_descendant->allnext = next_node;
> +    }
> +    else
> +    {
> +        /* Now plug next_node at the end of device_node. */
> +        device_node->allnext = next_node;
> +    }
> +
> +    return 0;
> +}
> +
>  /* Basic sanity check for the dtbo tool stack provided to Xen. */
>  static int check_overlay_fdt(const void *overlay_fdt, uint32_t overlay_fdt_size)
>  {
> @@ -171,6 +262,102 @@ static int iomem_remove_cb(unsigned long s, unsigned long e, void *dom,
>      return rc;
>  }
>  
> +/* Count number of nodes till one level of __overlay__ tag. */
> +static unsigned int overlay_node_count(const void *overlay_fdt)
> +{
> +    unsigned int num_overlay_nodes = 0;
> +    int fragment;
> +
> +    fdt_for_each_subnode(fragment, overlay_fdt, 0)
> +    {
> +        int subnode;
> +        int overlay;
> +
> +        overlay = fdt_subnode_offset(overlay_fdt, fragment, "__overlay__");
> +
> +        /*
> +         * overlay value can be < 0. But fdt_for_each_subnode() loop checks for
> +         * overlay >= 0. So, no need for a overlay>=0 check here.
> +         */
> +        fdt_for_each_subnode(subnode, overlay_fdt, overlay)
> +        {
> +            num_overlay_nodes++;
> +        }
> +    }
> +
> +    return num_overlay_nodes;
> +}
> +
> +/*
> + * overlay_get_nodes_info gets full name with path for all the nodes which
> + * are in one level of __overlay__ tag. This is useful when checking node for
> + * duplication i.e. dtbo tries to add nodes which already exists in device tree.
> + */
> +static int overlay_get_nodes_info(const void *fdto, char **nodes_full_path)
> +{
> +    int fragment;
> +    unsigned int node_num = 0;
> +
> +    fdt_for_each_subnode(fragment, fdto, 0)
> +    {
> +        int target;
> +        int overlay;
> +        int subnode;
> +        const char *target_path;
> +
> +        target = fdt_overlay_target_offset(device_tree_flattened, fdto,
> +                                           fragment, &target_path);
> +        if ( target < 0 )
> +            return target;
> +
> +        if ( target_path == NULL )
> +            return -EINVAL;
> +
> +        overlay = fdt_subnode_offset(fdto, fragment, "__overlay__");
> +
> +        /*
> +         * overlay value can be < 0. But fdt_for_each_subnode() loop checks for
> +         * overlay >= 0. So, no need for a overlay>=0 check here.
> +         */
> +        fdt_for_each_subnode(subnode, fdto, overlay)
> +        {
> +            const char *node_name = NULL;
> +            int node_name_len;
> +            unsigned int target_path_len = strlen(target_path);
> +            unsigned int node_full_name_len;
> +
> +            node_name = fdt_get_name(fdto, subnode, &node_name_len);
> +
> +            if ( node_name == NULL )
> +                return node_name_len;
> +
> +            /*
> +             * Magic number 2 is for adding '/' and '\0'. This is done to keep
> +             * the node_full_path in the correct full node name format.
> +             */
> +            node_full_name_len = target_path_len + node_name_len + 2;
> +
> +            nodes_full_path[node_num] = xmalloc_bytes(node_full_name_len);
> +
> +            if ( nodes_full_path[node_num] == NULL )
> +                return -ENOMEM;
> +
> +            memcpy(nodes_full_path[node_num], target_path, target_path_len);
> +
> +            nodes_full_path[node_num][target_path_len] = '/';
> +
> +            memcpy(nodes_full_path[node_num] + target_path_len + 1,
> +                    node_name, node_name_len);
> +
> +            nodes_full_path[node_num][node_full_name_len - 1] = '\0';
> +
> +            node_num++;
> +        }
> +    }
> +
> +    return 0;
> +}
> +
>  /* Check if node itself can be removed and remove node from IOMMU. */
>  static int remove_node_resources(struct dt_device_node *device_node)
>  {
> @@ -359,6 +546,312 @@ static long handle_remove_overlay_nodes(const void *overlay_fdt,
>      return rc;
>  }
>  
> +static void free_nodes_full_path(unsigned int num_nodes, char **nodes_full_path)
> +{
> +    unsigned int i;
> +
> +    if ( nodes_full_path == NULL )
> +        return;
> +
> +    for ( i = 0; i < num_nodes && nodes_full_path[i] != NULL; i++ )
> +    {
> +        xfree(nodes_full_path[i]);
> +    }
> +
> +    xfree(nodes_full_path);
> +}
> +
> +static long add_nodes(struct overlay_track *tr, char **nodes_full_path)
> +
> +{
> +    int rc;
> +    unsigned int j;
> +    struct dt_device_node *overlay_node;
> +
> +    for ( j = 0; j < tr->num_nodes; j++ )
> +    {
> +        struct dt_device_node *prev_node, *next_node;
> +
> +        dt_dprintk("Adding node: %s\n", nodes_full_path[j]);
> +
> +        /* Find the newly added node in tr->dt_host_new by it's full path. */
> +        overlay_node = dt_find_node_by_path_from(tr->dt_host_new,
> +                                                 nodes_full_path[j]);
> +        if ( overlay_node == NULL )
> +        {
> +            /* Sanity check. But code will never come here. */
> +            ASSERT_UNREACHABLE();
> +            return -EFAULT;
> +        }
> +
> +        /*
> +         * Find previous and next node to overlay_node in dt_host_new. We will
> +         * need these nodes to fix the dt_host_new mapping. When overlay_node is
> +         * take out of dt_host_new tree and added to dt_host, link between
> +         * previous node and next_node is broken. We will need to refresh
> +         * dt_host_new with correct linking for any other overlay nodes
> +         * extraction in future.
> +         */
> +        dt_for_each_device_node(tr->dt_host_new, prev_node)
> +            if ( prev_node->allnext == overlay_node )
> +                break;
> +
> +        next_node = dt_find_next_node(tr->dt_host_new, overlay_node);
> +
> +        write_lock(&dt_host_lock);
> +
> +        /* Add the node to dt_host. */
> +        rc = dt_overlay_add_node(overlay_node, overlay_node->parent->full_name);
> +        if ( rc )
> +        {
> +            write_unlock(&dt_host_lock);
> +
> +            /* Node not added in dt_host. */
> +            return rc;
> +        }
> +
> +        write_unlock(&dt_host_lock);
> +
> +        prev_node->allnext = next_node;
> +
> +        overlay_node = dt_find_node_by_path(overlay_node->full_name);
> +        if ( overlay_node == NULL )
> +        {
> +            /* Sanity check. But code will never come here. */
> +            ASSERT_UNREACHABLE();
> +            return -EFAULT;
> +        }
> +
> +        rc = handle_device(hardware_domain, overlay_node, p2m_mmio_direct_c,
> +                           tr->iomem_ranges,
> +                           tr->irq_ranges);
> +        if ( rc )
> +        {
> +            printk(XENLOG_ERR "Adding IRQ and IOMMU failed\n");
> +            return rc;
> +        }
> +
> +        /* Keep overlay_node address in tracker. */
> +        tr->nodes_address[j] = (unsigned long)overlay_node;
> +    }
> +
> +    return 0;
> +}
> +/*
> + * Adds device tree nodes under target node.
> + * We use tr->dt_host_new to unflatten the updated device_tree_flattened. This
> + * is done to avoid the removal of device_tree generation, iomem regions mapping
> + * to hardware domain done by handle_node().
> + */
> +static long handle_add_overlay_nodes(void *overlay_fdt,
> +                                     uint32_t overlay_fdt_size)
> +{
> +    int rc;
> +    unsigned int j;
> +    struct dt_device_node *overlay_node;
> +    struct overlay_track *tr = NULL;
> +    char **nodes_full_path = NULL;
> +    unsigned int new_fdt_size;
> +
> +    tr = xzalloc(struct overlay_track);
> +    if ( tr == NULL )
> +        return -ENOMEM;
> +
> +    new_fdt_size = fdt_totalsize(device_tree_flattened) +
> +                                 fdt_totalsize(overlay_fdt);
> +
> +    tr->fdt = xzalloc_bytes(new_fdt_size);
> +    if ( tr->fdt == NULL )
> +    {
> +        xfree(tr);
> +        return -ENOMEM;
> +    }
> +
> +    tr->num_nodes = overlay_node_count(overlay_fdt);
> +    if ( tr->num_nodes == 0 )
> +    {
> +        xfree(tr->fdt);
> +        xfree(tr);
> +        return -ENOMEM;
> +    }
> +
> +    tr->nodes_address = xzalloc_bytes(tr->num_nodes * sizeof(unsigned long));
> +    if ( tr->nodes_address == NULL )
> +    {
> +        xfree(tr->fdt);
> +        xfree(tr);
> +        return -ENOMEM;
> +    }
> +
> +    rc = check_overlay_fdt(overlay_fdt, overlay_fdt_size);
> +    if ( rc )
> +    {
> +        xfree(tr->nodes_address);
> +        xfree(tr->fdt);
> +        xfree(tr);
> +        return rc;
> +    }
> +
> +    /*
> +     * Keep a copy of overlay_fdt as fdt_overlay_apply will change the input
> +     * overlay's content(magic) when applying overlay.
> +     */
> +    tr->overlay_fdt = xzalloc_bytes(overlay_fdt_size);
> +    if ( tr->overlay_fdt == NULL )
> +    {
> +        xfree(tr->nodes_address);
> +        xfree(tr->fdt);
> +        xfree(tr);
> +        return -ENOMEM;
> +    }
> +
> +    memcpy(tr->overlay_fdt, overlay_fdt, overlay_fdt_size);
> +
> +    spin_lock(&overlay_lock);
> +
> +    memcpy(tr->fdt, device_tree_flattened,
> +           fdt_totalsize(device_tree_flattened));
> +
> +    /* Open tr->fdt with more space to accommodate the overlay_fdt. */
> +    rc = fdt_open_into(tr->fdt, tr->fdt, new_fdt_size);
> +    if ( rc )
> +    {
> +        printk(XENLOG_ERR "Increasing fdt size to accommodate overlay_fdt failed with error %d\n",
> +               rc);
> +        goto err;
> +    }
> +
> +    nodes_full_path = xzalloc_bytes(tr->num_nodes * sizeof(char *));
> +    if ( nodes_full_path == NULL )
> +    {
> +        rc = -ENOMEM;
> +        goto err;
> +    }
> +
> +    /*
> +     * overlay_get_nodes_info is called to get the node information from dtbo.
> +     * This is done before fdt_overlay_apply() because the overlay apply will
> +     * erase the magic of overlay_fdt.
> +     */
> +    rc = overlay_get_nodes_info(overlay_fdt, nodes_full_path);
> +    if ( rc )
> +    {
> +        printk(XENLOG_ERR "Getting nodes information failed with error %d\n",
> +               rc);
> +        goto err;
> +    }
> +
> +    rc = fdt_overlay_apply(tr->fdt, overlay_fdt);
> +    if ( rc )
> +    {
> +        printk(XENLOG_ERR "Adding overlay node failed with error %d\n", rc);
> +        goto err;
> +    }
> +
> +    /*
> +     * Check if any of the node already exists in dt_host. If node already exits
> +     * we can return here as this overlay_fdt is not suitable for overlay ops.
> +     */
> +    for ( j = 0; j < tr->num_nodes; j++ )
> +    {
> +        overlay_node = dt_find_node_by_path(nodes_full_path[j]);
> +        if ( overlay_node != NULL )
> +        {
> +            printk(XENLOG_ERR "node %s exists in device tree\n",
> +                   nodes_full_path[j]);
> +            rc = -EINVAL;
> +            goto err;
> +        }
> +    }
> +
> +    /*
> +     * Unflatten the tr->fdt into a new dt_host.
> +     * TODO: Check and add alias_scan() if it's needed for overlay in future.
> +     */
> +    rc = unflatten_device_tree(tr->fdt, &tr->dt_host_new);
> +    if ( rc )
> +    {
> +        printk(XENLOG_ERR "unflatten_device_tree failed with error %d\n", rc);
> +        goto err;
> +    }
> +
> +    tr->irq_ranges = rangeset_new(hardware_domain, "Overlays: Interrupts", 0);
> +    if (tr->irq_ranges == NULL)
> +    {
> +        printk(XENLOG_ERR "Creating IRQ rangeset failed");
> +        goto err;
> +    }
> +
> +    tr->iomem_ranges = rangeset_new(hardware_domain, "Overlay: I/O Memory", 0);
> +    if (tr->iomem_ranges == NULL)
> +    {
> +        printk(XENLOG_ERR "Creating IOMMU rangeset failed");
> +        goto err;
> +    }
> +
> +    rc = add_nodes(tr, nodes_full_path);
> +    if ( rc )
> +    {
> +        printk(XENLOG_ERR "Adding nodes failed. Removing the partially added nodes.\n");
> +        goto remove_node;
> +    }
> +
> +    INIT_LIST_HEAD(&tr->entry);
> +    list_add_tail(&tr->entry, &overlay_tracker);
> +
> +    spin_unlock(&overlay_lock);
> +
> +    free_nodes_full_path(tr->num_nodes, nodes_full_path);
> +
> +    return rc;
> +
> +/*
> + * Failure case. We need to remove the nodes, free tracker(if tr exists) and
> + * tr->dt_host_new.
> + */
> + remove_node:
> +    tr->num_nodes = j;
> +    rc = remove_nodes(tr);
> +
> +    if ( rc )
> +    {
> +        /*
> +         * User needs to provide right overlay. Incorrect node information
> +         * example parent node doesn't exist in dt_host etc can cause memory
> +         * leaks as removing_nodes() will fail and this means nodes memory is
> +         * not freed from tracker. Which may cause memory leaks. Ideally, these
> +         * device tree related mistakes will be caught by fdt_overlay_apply()
> +         * but given that we don't manage that code keeping this warning message
> +         * is better here.
> +         */
> +        printk(XENLOG_ERR "Removing node failed.\n");
> +        spin_unlock(&overlay_lock);
> +
> +        free_nodes_full_path(tr->num_nodes, nodes_full_path);
> +
> +        return rc;
> +    }
> +
> + err:
> +    spin_unlock(&overlay_lock);
> +
> +    if ( tr->dt_host_new )
> +        xfree(tr->dt_host_new);
> +
> +    free_nodes_full_path(tr->num_nodes, nodes_full_path);
> +
> +    xfree(tr->overlay_fdt);
> +    xfree(tr->nodes_address);
> +    xfree(tr->fdt);
> +
> +    rangeset_destroy(tr->irq_ranges);
> +    rangeset_destroy(tr->iomem_ranges);
> +
> +    xfree(tr);
> +
> +    return rc;
> +}
> +
>  long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op)
>  {
>      long ret;
> @@ -390,6 +883,8 @@ long dt_overlay_sysctl(struct xen_sysctl_dt_overlay *op)
>  
>      if ( op->overlay_op == XEN_SYSCTL_DT_OVERLAY_REMOVE )
>          ret = handle_remove_overlay_nodes(overlay_fdt, op->overlay_fdt_size);
> +    else
> +        ret = handle_add_overlay_nodes(overlay_fdt, op->overlay_fdt_size);
>  
>      xfree(overlay_fdt);
>  
> -- 
> 2.17.1
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 01:51:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 01:51:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596157.929929 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhhR-00071R-OX; Wed, 06 Sep 2023 01:51:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596157.929929; Wed, 06 Sep 2023 01:51:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdhhR-00071K-Ln; Wed, 06 Sep 2023 01:51:21 +0000
Received: by outflank-mailman (input) for mailman id 596157;
 Wed, 06 Sep 2023 01:51:19 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdhhP-00071E-MF
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 01:51:19 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dd076b20-4c57-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 03:51:16 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id C360ECE10E7;
 Wed,  6 Sep 2023 01:51:11 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id C490BC433C7;
 Wed,  6 Sep 2023 01:51:08 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dd076b20-4c57-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693965069;
	bh=WIxr+TBAdJUHzBphOPyO9KsAzPrS1mSZCiJ4LNhzUgc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ogM+H9Gc56HhYSI/1IqnJtMMWQJlql8GyG4F1hRstoMZcRAWhW2fPYpl2DUpt0qTE
	 DfPCqM6d3AEdjRD3LyAHc9jOG0msyur1WTZXpRzzYkcOgHCjFluHNWFf5O6c9S4wEd
	 WmYhhjmddRNPuNLXa6gBMM/88aVzYDHDDRSFYjxf6X+vqJC7GkKrZQBrAcsfs0lrVs
	 m5FB/PxZQS6xedQI4wZTzVXSe3RG/MYGD1vnKtDTskExaR8x1qgIhK7w68XUVqKzj2
	 nPqnd83B7JkyBK6xrG7taTRoVPVJfOB//nvouvKTbLLam7jNZ14jmTXMCODyQauzru
	 ZFv4OnQ2QkMEg==
Date: Tue, 5 Sep 2023 18:51:06 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Anthony Chan <anthonychan@nureva.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
    "bertrand.marquis@arm.com" <bertrand.marquis@arm.com>, 
    "julien@xen.org" <julien@xen.org>, 
    "Volodymyr_Babchuk@epam.com" <Volodymyr_Babchuk@epam.com>, 
    "michal.orzel@amd.com" <michal.orzel@amd.com>, 
    Dan Waqar <danwaqar@nureva.com>
Subject: RE: [EXT] Re: xen arm64 low power sleep support
In-Reply-To: <DM6PR20MB2779E6DD63DC5CC9A1FE161AC1E5A@DM6PR20MB2779.namprd20.prod.outlook.com>
Message-ID: <alpine.DEB.2.22.394.2309051848590.6458@ubuntu-linux-20-04-desktop>
References: <DM6PR20MB277971712E5415CB231AEB37C1E7A@DM6PR20MB2779.namprd20.prod.outlook.com> <alpine.DEB.2.22.394.2308291512271.6458@ubuntu-linux-20-04-desktop> <DM6PR20MB27795F4B6C327F7F031BABB0C1E6A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2308301814580.6458@ubuntu-linux-20-04-desktop> <DM6PR20MB2779E6DD63DC5CC9A1FE161AC1E5A@DM6PR20MB2779.namprd20.prod.outlook.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 31 Aug 2023, Anthony Chan wrote:
> On Thu, 30 Aug 2023, Stefano Stabellini wrote:
> > On Wed, 30 Aug 2023, Anthony Chan wrote:
> > > On Tue, 29 Aug 2023, Stefano Stabellini wrote:
> > > > On Tue, 29 Aug 2023, Anthony Chan wrote:
> > > > > Hi all,
> > > > >
> > > > > My name is Tony and I've been researching/developing using Xen
> > > > > for potential upcoming uses in our embedded systems.  I started
> > > > > with Xen using Xilinx tools about a year ago and still have lots
> > > > > to learn about what it can to do in the embedded space.  So far,
> > > > > I've managed to integrate Xen and Linux into an existing product
> > > > > that exclusively runs bare-metal code on a ZynqMP SoC and
> > > > > migrate some of the functionality into custom Linux driver/userspace.
> > > > >
> > > > > I'm now looking at low power support, for now at least between
> > > > > Xen
> > > > > (4.16) and Linux (5.15) dom0.  I've tried a few different Linux
> > > > > kernel configs around power management and each time I try to
> > > > > suspend from linux dom0 (via sysfs or systemctl), Xen will
> > > > > watchdog on
> > > > > dom0 guest.
> > > > > AFAIK, Xen should trap on a 'WFI' from guests, but from what I
> > > > > can tell debugging through the linux suspend process is it's
> > > > > spinning in a 'suspend- to-idle' loop before it can get to
> > > > > issuing a 'WFI' or using PSCI interface to notify Xen.  I'm
> > > > > beginning to suspect that 'low power' support for embedded arm64
> > > > > just isn't quite there yet, or am I missing something in the configs?
> > > > >
> > > > > I realize this could very well be a Linux 'issue' but checking
> > > > > here first.  I know Xen presents a flattened device tree to
> > > > > Linux without CPU idle-state nodes and maybe this is causing the
> > > > > linux guest to only do the suspend- to-idle mode?  I should
> > > > > mention that I'm booting up using dom0less feature if that
> > > > > matters.
> > > >
> > > >
> > > > Hi Anthony,
> > > >
> > > > Assuming you are using the default Xen command line parameters for
> > > > Xilinx boards: sched=null vwfi=native, then if the guest uses WFI,
> > > > the CPU will execute WFI directly and go into low power mode.
> > > Yes, using these command line params.
> > >
> > > > Given the issue you are describing, I am suspecting the guest is
> > > > not issuing
> > > > WFI: that is simple and known to work. Instead, I suspect that
> > > > Linux might be trying to use PSCI_suspend in a way that is not
> > > > supported or well- implemented by Xen.
> > > >
> > > > Can you check? You can add a printk in Linux
> > > > drivers/firmware/psci/psci.c:__psci_cpu_suspend or in Xen
> > > > xen/arch/arm/vpsci.c:do_psci_0_2_cpu_suspend
> > > Instrumented both places it doesn't appear to reach there.  In
> > > kernel/power/suspend.c, there's a call to s2idle_loop that it's currently 'stuck'
> > > in and I think it doesn't get to the psci suspend your referring
> > > till afterwards, when suspend_ops->enter is called.  Unfortunately,
> > > without any idle-states nodes in the FDT, the only suspend state
> > > Linux is defaults to is 'suspend to idle'.
> >
> > The fact that Linux uses "suspend to idle" is not a problem because as
> > I mentioned WFI or PSCI_suspent are not different on Xen. That part is OK.
> What if using "suspend to idle" is preventing a WFI/PSCI_suspend?  Which is
> what I believe I'm currently seeing in my setup.  In kernel/power/suspend.c,
> suspend_devices_and_enter(), it gets into the this s2idle_loop and upon
> resuming from idle, it jumps past the point where I believe a
> WFI/PSCI_suspend can happen.
> if (state == PM_SUSPEND_TO_IDLE) {
>                 s2idle_loop();
>                 goto Platform_wake;
> }
 
If that is the case, then it looks like a Linux bug. Maybe something
along these lines?

https://lore.kernel.org/linux-arm-kernel/4665489.GXAFRqVoOG@kreacher/T/#m6edda92d0b5dc09f8e05e7d6db3807501b7249f4


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 03:10:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 03:10:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596164.929939 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdivS-0005IS-73; Wed, 06 Sep 2023 03:09:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596164.929939; Wed, 06 Sep 2023 03:09:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdivS-0005IL-42; Wed, 06 Sep 2023 03:09:54 +0000
Received: by outflank-mailman (input) for mailman id 596164;
 Wed, 06 Sep 2023 03:09:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3g10=EW=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qdivQ-0005IF-MN
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 03:09:52 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20618.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::618])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d636cfc1-4c62-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 05:09:49 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by DM4PR12MB6399.namprd12.prod.outlook.com (2603:10b6:8:b7::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Wed, 6 Sep
 2023 03:09:44 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40%4]) with mapi id 15.20.6745.030; Wed, 6 Sep 2023
 03:09:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d636cfc1-4c62-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NBUj/8tifbYXj/EVdq6evlaUeiftNBYBc3A9K1TsjQ+wTk70EEk1uDm5YL3ds+l7jR5dn7kZzcE/3fc8gLV74h01HmsoLV2514JvHSXEwJ8NkQ6RlKnmtkt0+UgMJkgunjNxSO4+hmBvMgp6fNmWwYnwGLwntrI+WIRw6XTKHnOQuJEQ00vxhMcoaGSZG3fxJWdBKCEl3360TUEtP1sBh5Q7NLG//HntLfOENtsHhcKFF9MmIFCDzf2mPbTG0+6BB1QdKyX4b4ywy0q6/ThLyfBPGouXf8hDnb1R/wtEJO2b8H4cLqhYZ/vea1s6/ux7ptqQ4wj7NyCFitu3e8rkfA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+celjngktGnUavdb7WI9WREN6aut1Hcf2eD0KLO2jBQ=;
 b=MNzmsKbOTfwPxTYyrSU/aET6YUJlnuQkn0RlKzuhdfWk6kCAzZ8lVX+X5KsnADF1Tm4+rMu0hpMJJ9RqRYuX9G3MUMQ8LB+iIL+Kl0O5hOPFTbLCnB3jE2Exm0DtP41ra9RQc2hVp3lhKdJyFOJFSXfe3akJQfLDqPkPj4gD35oFDgvSfzDU2oHLVR/6if6DE4Xm+Uw4ugbbp9FyYTKVkKwOg3qaAIsjGdpfbS2kUc9h+1r2V+mIn2lYWj076WEnsXF4jFodeKLU02v3kOeXZpgSTdNPRTvA6jSsYol9f0hZp8lDTSK8WPWN9/2IpSF3mnmBFT9dvyKW6h3wr5qbSg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+celjngktGnUavdb7WI9WREN6aut1Hcf2eD0KLO2jBQ=;
 b=ULWuH3m9igff57/6NVoKHuYu0Dh6cDXoIxJvEQBk1sG+RVrLxP9thI1W0/8Yol5mM/rtDb+5uGVcduG192Z2c5mZXH0G0NrFA/+Fza0CZvIQxyPVgscYyLtKkk2VCDlEbJ8gOPhh82lbCcFzknDKH7J/JK/y6iNUqaejI6D4XOg=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Wed, 6 Sep 2023 11:09:13 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
Subject: Re: [QEMU PATCH v4 09/13] virtio-gpu: Handle resource blob commands
Message-ID: <ZPftWfuwLKafLPah@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-10-ray.huang@amd.com>
 <ba478789-5db0-4011-bed1-7dd6901eccd6@daynix.com>
 <ZPbwGA3apjQTtCeu@amd.com>
 <053ecca7-f76d-4289-9189-0c3600d4804b@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <053ecca7-f76d-4289-9189-0c3600d4804b@daynix.com>
X-ClientProxiedBy: SG2PR04CA0186.apcprd04.prod.outlook.com
 (2603:1096:4:14::24) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|DM4PR12MB6399:EE_
X-MS-Office365-Filtering-Correlation-Id: 1db210d6-fe60-4935-9f43-08dbae86b7a9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	t8Eh7wAzdUuuCvCxjSIfNIx9DcACNsfUmytnVetGAtGVBJGjsTHcsx0e5uIxHUL+n1oi4pp3CnqGdSKP8e7nuYdx6cABJ+grJsoQWiIgUgZcZx2EqlVvn0IkPx0VLBJalHBRIDle206FMI6stL3AhrfuFLzyRJo/+Ts6tJw8U0znpWec5YhbYBdmHPSzKxlSSgtpu31IuTWzvUW9uRMch+rHIeAAqSR6sBbqmiI6B9EhJBkCMI9n9gSSrEZ1ildmWT4507a7N15d1MBhcFTDf74FoGaXhO2sqekyMO9V/N4hDuumqybCnqT2oPWljhG2v1h90McwvJHmASobVCknW7OEuZxKmjW/GikLCyuZ/lhB6avPhoXM7iVfryMqV4/vBu0rkvSV64ROTSC6EFqEURyNMWygxOgp9U68oFMx7UILumdq8kVMbedzKUPjXzcw/22XcuGJA82WqJFZAj/ZW1lsE86H+07o4mWjCH98kMvxMWBwzZO6ftJw4Fww8yVEnuGNPGYwgxW41OVywkRsa8XIO38I9P7l3nF3Ev/sht02mdoa37P4RNkaaTZozfzo
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(346002)(376002)(39860400002)(366004)(136003)(186009)(451199024)(1800799009)(83380400001)(38100700002)(5660300002)(86362001)(7416002)(41300700001)(36756003)(66946007)(2616005)(66476007)(54906003)(66556008)(6666004)(53546011)(478600001)(2906002)(6486002)(6916009)(4326008)(316002)(8936002)(26005)(6512007)(6506007)(30864003)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?GTvX0ZwNWQgnPAcNzNKg9KrRK923eI+vTgT2PGK4eKrSjx48LSCBEzLsMrVv?=
 =?us-ascii?Q?zIjPXBpPzxgEKI8qumtJkxJ1GP3guaCTZwXrd65ERb+QXwseSU5fV0mBlehB?=
 =?us-ascii?Q?8uipYfJYztzRBEvWc4Q0Hol1+QQbjmPwvpUXoBwkaIGoCQIx2wo9cPvtUsIM?=
 =?us-ascii?Q?Mq2odFMtZWeJEFXtBE0Xue7G0d3j9BpMhr/JJoghgVAoDhf2b63cNxbP/AHY?=
 =?us-ascii?Q?FOq1MywXktgkxwI9Wqb3UYyLkwi0at51Nd8DasQVk5R0BZ5b3fk4Knoitb8L?=
 =?us-ascii?Q?s80bFfP4b+dQZR9sz0Y6RHzV+omhHbb4t5+kzJ9ZbyaxcugMvWM0JBRVIaf8?=
 =?us-ascii?Q?bR8TdVy1WfWB9k8rtJRvqvHen9Ipi6HNC5zA3+3bLQkLGfwk0Y9LnJZPVm7b?=
 =?us-ascii?Q?fyAUkiDtFO0e97IkcOoV4uoaB7CJERwbqWCg4DXRWzsCxYyC1IqW+bXSq96Z?=
 =?us-ascii?Q?fqliIVXL1vLEsuJFbHufny6UOC+vJlA6c5D0xV0k6x9Uv8nPK76vTYfwsY6T?=
 =?us-ascii?Q?rGgWCcLrVPvqeEoEhWz6wuXDfiqvcL9W7ij14SN/GecH9onwY8Xsm/4z/rWf?=
 =?us-ascii?Q?B3JPym3xBFKywEAmRSA75u+5ViPLU16Cpd7ochB3aVSUwNjb08f2ZTFL4hc7?=
 =?us-ascii?Q?1RjW+rccrrMQd7DMHAdrRcC0umJP0nZuKkLbKcSpUCyv9tgPfto/focStM07?=
 =?us-ascii?Q?wD8UCTIVw46wm/DqHlgImmefAY92I7Ki+oyhhMeDE1z26UT7Zzxgyd2ZcC9i?=
 =?us-ascii?Q?+mdkpDF3Ww/8nByyPacrx3D0uP89vqlANzeP6bd8WhgXqW7zKIf0sEzl3SWe?=
 =?us-ascii?Q?T+ZKsIR4eGUdaFmTT3unzrQ8gWrg3fauX6gwb/EuvciojcRG3OCPzqCTe97K?=
 =?us-ascii?Q?AcQQCFbrCtdB/AmvkOSG1L6R77lui+sTNp9r/gx4FczIKys/bw69NZFySTa2?=
 =?us-ascii?Q?1UGiVXyaKdGksVAY6jyvsvKliFHNYOOlgnpLv1CBwqm5Y12b59LMrI0tRtbR?=
 =?us-ascii?Q?4Cs4nn9WYVSc8Jwi7bSp1ap/idj4oyelaNEDMJRYt7mfYdPp+4VsUmiAzelp?=
 =?us-ascii?Q?YITSCBoXIXfzAEP1bj2Fa0xlvqvUqcR8fg5ZijufXqXy3VWITIyc61onpcFr?=
 =?us-ascii?Q?s5PKQVAc4g3Mo1fRhqPNckZycbZV7F8iBUq3yHG/V143LDhnB9p7qZN+v30I?=
 =?us-ascii?Q?WJ8/d1iVPqgNlGcGMH6v7a0SxJxmfggOi2E4AdXWrTFrwsm/6RMycJoeDdPI?=
 =?us-ascii?Q?kpJMkUoc7YKeaSPH9d+qS6SebZ4/epzAvTrSSayQGHAqDdPB0+MwxUUOMovv?=
 =?us-ascii?Q?XlDODSuU48KvypfjfOHPzVhAR3PsvDuQPYQh5PTYW87/zCWIAVXIfLTIHVBd?=
 =?us-ascii?Q?b7CWia97kG/KyvtS7qmGzqh98uAI7NtNEAjpGHtmJ3VCPYO3DLutD63t7h8+?=
 =?us-ascii?Q?ASF7xAiB7czp+4xk6ikG8G6+J3kBUTtJyQVNCHXqLyQG4KmqbDMNp2Qm97NM?=
 =?us-ascii?Q?X9oDV0wsSo8deCsVrtc4rv0GBvCvgdHM23nYJBEOX4/g3Yjrv3BPd7ZeKOkv?=
 =?us-ascii?Q?90HOsRBp3vFzcw1+j4pR7xTGtXXHk/VoLZYHcYWV?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1db210d6-fe60-4935-9f43-08dbae86b7a9
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 03:09:43.5014
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tb0UcE37kwjczKOVVeN10Zu4+LJ/6iuVMHmXXIcEOjTPncM6AZFV3pGxXAwEYQTsm+lso3bZa/lex2QikLax3g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6399

On Tue, Sep 05, 2023 at 05:20:43PM +0800, Akihiko Odaki wrote:
> On 2023/09/05 18:08, Huang Rui wrote:
> > On Thu, Aug 31, 2023 at 06:24:32PM +0800, Akihiko Odaki wrote:
> >> On 2023/08/31 18:32, Huang Rui wrote:
> >>> From: Antonio Caggiano <antonio.caggiano@collabora.com>
> >>>
> >>> Support BLOB resources creation, mapping and unmapping by calling the
> >>> new stable virglrenderer 0.10 interface. Only enabled when available and
> >>> via the blob config. E.g. -device virtio-vga-gl,blob=true
> >>>
> >>> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> >>> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
> >>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> >>> Signed-off-by: Huang Rui <ray.huang@amd.com>
> >>> ---
> >>>
> >>> v1->v2:
> >>>       - Remove unused #include "hw/virtio/virtio-iommu.h"
> >>>
> >>>       - Add a local function, called virgl_resource_destroy(), that is used
> >>>         to release a vgpu resource on error paths and in resource_unref.
> >>>
> >>>       - Remove virtio_gpu_virgl_resource_unmap from virtio_gpu_cleanup_mapping(),
> >>>         since this function won't be called on blob resources and also because
> >>>         blob resources are unmapped via virgl_cmd_resource_unmap_blob().
> >>>
> >>>       - In virgl_cmd_resource_create_blob(), do proper cleanup in error paths
> >>>         and move QTAILQ_INSERT_HEAD(&g->reslist, res, next) after the resource
> >>>         has been fully initialized.
> >>>
> >>>       - Memory region has a different life-cycle from virtio gpu resources
> >>>         i.e. cannot be released synchronously along with the vgpu resource.
> >>>         So, here the field "region" was changed to a pointer that will be
> >>>         released automatically once the memory region is unparented and all
> >>>         of its references have been released.
> >>>         Also, since the pointer can be used to indicate whether the blob
> >>>         is mapped, the explicit field "mapped" was removed.
> >>>
> >>>       - In virgl_cmd_resource_map_blob(), add check on the value of
> >>>         res->region, to prevent beeing called twice on the same resource.
> >>>
> >>>       - Remove direct references to parent_obj.
> >>>
> >>>       - Separate declarations from code.
> >>>
> >>>    hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
> >>>    hw/display/virtio-gpu.c        |   4 +-
> >>>    include/hw/virtio/virtio-gpu.h |   5 +
> >>>    meson.build                    |   4 +
> >>>    4 files changed, 225 insertions(+), 1 deletion(-)
> >>>
> >>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> >>> index 312953ec16..17b634d4ee 100644
> >>> --- a/hw/display/virtio-gpu-virgl.c
> >>> +++ b/hw/display/virtio-gpu-virgl.c
> >>> @@ -17,6 +17,7 @@
> >>>    #include "trace.h"
> >>>    #include "hw/virtio/virtio.h"
> >>>    #include "hw/virtio/virtio-gpu.h"
> >>> +#include "hw/virtio/virtio-gpu-bswap.h"
> >>>    
> >>>    #include "ui/egl-helpers.h"
> >>>    
> >>> @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
> >>>        virgl_renderer_resource_create(&args, NULL, 0);
> >>>    }
> >>>    
> >>> +static void virgl_resource_destroy(VirtIOGPU *g,
> >>> +                                   struct virtio_gpu_simple_resource *res)
> >>> +{
> >>> +    if (!res)
> >>> +        return;
> >>> +
> >>> +    QTAILQ_REMOVE(&g->reslist, res, next);
> >>> +
> >>> +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
> >>> +    g_free(res->addrs);
> >>> +
> >>> +    g_free(res);
> >>> +}
> >>> +
> >>>    static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >>>                                         struct virtio_gpu_ctrl_command *cmd)
> >>>    {
> >>> +    struct virtio_gpu_simple_resource *res;
> >>>        struct virtio_gpu_resource_unref unref;
> >>>        struct iovec *res_iovs = NULL;
> >>>        int num_iovs = 0;
> >>> @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >>>        VIRTIO_GPU_FILL_CMD(unref);
> >>>        trace_virtio_gpu_cmd_res_unref(unref.resource_id);
> >>>    
> >>> +    res = virtio_gpu_find_resource(g, unref.resource_id);
> >>> +
> >>>        virgl_renderer_resource_detach_iov(unref.resource_id,
> >>>                                           &res_iovs,
> >>>                                           &num_iovs);
> >>>        if (res_iovs != NULL && num_iovs != 0) {
> >>>            virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
> >>> +        if (res) {
> >>> +            res->iov = NULL;
> >>> +            res->iov_cnt = 0;
> >>> +        }
> >>>        }
> >>> +
> >>>        virgl_renderer_resource_unref(unref.resource_id);
> >>> +
> >>> +    virgl_resource_destroy(g, res);
> >>>    }
> >>>    
> >>>    static void virgl_cmd_context_create(VirtIOGPU *g,
> >>> @@ -426,6 +451,183 @@ static void virgl_cmd_get_capset(VirtIOGPU *g,
> >>>        g_free(resp);
> >>>    }
> >>>    
> >>> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> >>> +
> >>> +static void virgl_cmd_resource_create_blob(VirtIOGPU *g,
> >>> +                                           struct virtio_gpu_ctrl_command *cmd)
> >>> +{
> >>> +    struct virtio_gpu_simple_resource *res;
> >>> +    struct virtio_gpu_resource_create_blob cblob;
> >>> +    struct virgl_renderer_resource_create_blob_args virgl_args = { 0 };
> >>> +    int ret;
> >>> +
> >>> +    VIRTIO_GPU_FILL_CMD(cblob);
> >>> +    virtio_gpu_create_blob_bswap(&cblob);
> >>> +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
> >>> +
> >>> +    if (cblob.resource_id == 0) {
> >>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> >>> +                      __func__);
> >>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> >>> +        return;
> >>> +    }
> >>> +
> >>> +    res = virtio_gpu_find_resource(g, cblob.resource_id);
> >>> +    if (res) {
> >>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already exists %d\n",
> >>> +                      __func__, cblob.resource_id);
> >>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> >>> +        return;
> >>> +    }
> >>> +
> >>> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> >>> +    if (!res) {
> >>> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> >>> +        return;
> >>> +    }
> >>> +
> >>> +    res->resource_id = cblob.resource_id;
> >>> +    res->blob_size = cblob.size;
> >>> +
> >>> +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
> >>> +        ret = virtio_gpu_create_mapping_iov(g, cblob.nr_entries, sizeof(cblob),
> >>> +                                            cmd, &res->addrs, &res->iov,
> >>> +                                            &res->iov_cnt);
> >>> +        if (!ret) {
> >>> +            g_free(res);
> >>> +            cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> >>> +            return;
> >>> +        }
> >>> +    }
> >>> +
> >>> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> >>> +
> >>> +    virgl_args.res_handle = cblob.resource_id;
> >>> +    virgl_args.ctx_id = cblob.hdr.ctx_id;
> >>> +    virgl_args.blob_mem = cblob.blob_mem;
> >>> +    virgl_args.blob_id = cblob.blob_id;
> >>> +    virgl_args.blob_flags = cblob.blob_flags;
> >>> +    virgl_args.size = cblob.size;
> >>> +    virgl_args.iovecs = res->iov;
> >>> +    virgl_args.num_iovs = res->iov_cnt;
> >>> +
> >>> +    ret = virgl_renderer_resource_create_blob(&virgl_args);
> >>> +    if (ret) {
> >>> +        virgl_resource_destroy(g, res);
> >>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: virgl blob create error: %s\n",
> >>> +                      __func__, strerror(-ret));
> >>> +        cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> >>> +    }
> >>> +}
> >>> +
> >>> +static void virgl_cmd_resource_map_blob(VirtIOGPU *g,
> >>> +                                        struct virtio_gpu_ctrl_command *cmd)
> >>> +{
> >>> +    struct virtio_gpu_simple_resource *res;
> >>> +    struct virtio_gpu_resource_map_blob mblob;
> >>> +    int ret;
> >>> +    void *data;
> >>> +    uint64_t size;
> >>> +    struct virtio_gpu_resp_map_info resp;
> >>> +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
> >>> +
> >>> +    VIRTIO_GPU_FILL_CMD(mblob);
> >>> +    virtio_gpu_map_blob_bswap(&mblob);
> >>> +
> >>> +    if (mblob.resource_id == 0) {
> >>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> >>> +                      __func__);
> >>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> >>> +        return;
> >>> +    }
> >>> +
> >>> +    res = virtio_gpu_find_resource(g, mblob.resource_id);
> >>> +    if (!res) {
> >>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
> >>> +                      __func__, mblob.resource_id);
> >>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> >>> +        return;
> >>> +    }
> >>> +    if (res->region) {
> >>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already mapped %d\n",
> >>> +		      __func__, mblob.resource_id);
> >>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> >>> +        return;
> >>> +    }
> >>> +
> >>> +    ret = virgl_renderer_resource_map(res->resource_id, &data, &size);
> >>> +    if (ret) {
> >>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource map error: %s\n",
> >>> +                      __func__, strerror(-ret));
> >>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> >>> +        return;
> >>> +    }
> >>> +
> >>> +    res->region = g_new0(MemoryRegion, 1);
> >>> +    if (!res->region) {
> >>> +        virgl_renderer_resource_unmap(res->resource_id);
> >>> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> >>> +        return;
> >>> +    }
> >>> +    memory_region_init_ram_device_ptr(res->region, OBJECT(g), NULL, size, data);
> >>
> >> I think memory_region_init_ram_ptr() should be used instead.
> > 
> > Would you mind to explain the reason?
> 
> The documentation comment of memory_region_init_ram_device_ptr() says:
>  > A RAM device represents a mapping to a physical device, such as to a
>  > PCI MMIO BAR of an vfio-pci assigned device.  The memory region may be
>  > mapped into the VM address space and access to the region will modify
>  > memory directly.  However, the memory region should not be included in
>  > a memory dump (device may not be enabled/mapped at the time of the
>  > dump), and operations incompatible with manipulating MMIO should be
>  > avoided.  Replaces skip_dump flag.
> 
> In my understanding it's not MMIO so memory_region_init_ram_ptr() should 
> be used instead.
> 

It actually maybe the video memory (mmio) or system memory here. :-)

We will get the host memory for blob from host with
virgl_renderer_resource_map() in virglrenderer. In virglrenderer, there are two
types of VIRGL_RESOURCE_FD_DMABUF and VIRGL_RESOURCE_FD_SHM to indicate the
memory types. The shmem is the system memory that won't need GPU
accessible, and dmabuf is the memory that required GPU accessible. Host
kernel amdgpu driver will register dma-buf to export the resource buffer
for sharing, and here, it may have video memory that exposed by amdgpu pcie
bar0 in the dma-buf buffers. And we also have system memory(gtt) that can
be mapped as gpu page tables for gpu accessible.

07:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Renoir (rev c1) (prog-if 00 [VGA controller])
        Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] Renoir
        Flags: bus master, fast devsel, latency 0, IRQ 56
        Memory at fcc0000000 (64-bit, prefetchable) [size=256M]
        Memory at fcd0000000 (64-bit, prefetchable) [size=2M]
        I/O ports at 1000 [size=256]
        Memory at d0400000 (32-bit, non-prefetchable) [size=512K]
        Capabilities: <access denied>
        Kernel driver in use: amdgpu
        Kernel modules: amdgpu

Thanks,
Ray


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 03:39:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 03:39:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596171.929949 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdjNz-0003J1-3X; Wed, 06 Sep 2023 03:39:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596171.929949; Wed, 06 Sep 2023 03:39:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdjNz-0003Iu-0c; Wed, 06 Sep 2023 03:39:23 +0000
Received: by outflank-mailman (input) for mailman id 596171;
 Wed, 06 Sep 2023 03:39:20 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JMkp=EW=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qdjNw-0003Io-Mi
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 03:39:20 +0000
Received: from mail-oo1-xc2a.google.com (mail-oo1-xc2a.google.com
 [2607:f8b0:4864:20::c2a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f4bcb038-4c66-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 05:39:18 +0200 (CEST)
Received: by mail-oo1-xc2a.google.com with SMTP id
 006d021491bc7-570e005c480so2002668eaf.0
 for <xen-devel@lists.xenproject.org>; Tue, 05 Sep 2023 20:39:17 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 l16-20020a17090a599000b002630c9d78aasm9882458pji.5.2023.09.05.20.39.11
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 05 Sep 2023 20:39:16 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f4bcb038-4c66-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1693971556; x=1694576356; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=1RK647TPei0/JRa8Nnw4F7PmDHS7tRWa+EVLcCk4e3Y=;
        b=qeILEIvp/TeTN5lkyjNcBd6mEECyYRhJxjiVIV2Q81NHSQPMZ9SDTk20WimL7tKFpy
         BvjliijC2q1wbu/3Md0A5IqzXGIS7ASBnhWMoifHSeG4LrUU9kCU6NpertL7y4v04Kn2
         7yRgO51J050BqEAr9QEKTwKn5oupWzVF9mJ35HlRQAZ1dp+H9vYZ5nglsWAhYhPlqzno
         ZnvJm2f9vv7Hg+8am7fIxpruXl7Mtz2ltKcpm2M9B+l74fRjOiUTlo7L82qTB2M+ZMAa
         Xfa7tvXCaNtxpdv84wnqCBcMwUubNV0T1xnC02MQXk8YUEk4yX3GPgdgccGRSZWRJO9G
         /gVA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693971556; x=1694576356;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=1RK647TPei0/JRa8Nnw4F7PmDHS7tRWa+EVLcCk4e3Y=;
        b=CWtF9MNZRMTNauP/1H0HPs5iEDs/D1bZkYuX4WMRt4k/BbmsaojeKVGKUoPBf7Owqf
         6zaMXa5Xozzc/GrKUwZNJaioX21Nt9C0hE3MCLifrE4Hlhp7kVx/92wD7nNcAWxinU/x
         NrARNJOzkcihSeHXqJUSqU8KxiJ8r3gLqK3vDc3A6AUmUpUfZjqday30cckiWpysrT2L
         PuTyFnr7WH95mX7o5d2i3A6taW2ncJ3tbdSVTuUrLtlTwobqFhUVQl6DbEuBWsRpPXq7
         oIRKKAJGKe0jByK5oWBRPDKqBbkdBrBqYehzdbDif59KOIfSfNoqZXjlwyqoyPMZGWUN
         189w==
X-Gm-Message-State: AOJu0Yyh+0LnKjr3mAvRdqlYV6jiMStoXR6DCPWzfTsOiuEGGdKLxT8x
	zNPmRZb4AdL1bmNT3SgWgiJaHQ==
X-Google-Smtp-Source: AGHT+IFmTjfxkCKTxteEIVq/a7vlVvxSoRG+U9S0V2E0ghKNvnwpNeGFb3pdSe1UTf3KK0/dnIKF/g==
X-Received: by 2002:a05:6358:c03:b0:135:ae78:56c9 with SMTP id f3-20020a0563580c0300b00135ae7856c9mr1580288rwj.6.1693971556451;
        Tue, 05 Sep 2023 20:39:16 -0700 (PDT)
Message-ID: <9d883490-3c82-4016-a290-6570f682908a@daynix.com>
Date: Wed, 6 Sep 2023 12:39:09 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v4 09/13] virtio-gpu: Handle resource blob commands
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin"
 <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 "ernunes@redhat.com" <ernunes@redhat.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-10-ray.huang@amd.com>
 <ba478789-5db0-4011-bed1-7dd6901eccd6@daynix.com> <ZPbwGA3apjQTtCeu@amd.com>
 <053ecca7-f76d-4289-9189-0c3600d4804b@daynix.com> <ZPftWfuwLKafLPah@amd.com>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <ZPftWfuwLKafLPah@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/06 12:09, Huang Rui wrote:
> On Tue, Sep 05, 2023 at 05:20:43PM +0800, Akihiko Odaki wrote:
>> On 2023/09/05 18:08, Huang Rui wrote:
>>> On Thu, Aug 31, 2023 at 06:24:32PM +0800, Akihiko Odaki wrote:
>>>> On 2023/08/31 18:32, Huang Rui wrote:
>>>>> From: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>>>
>>>>> Support BLOB resources creation, mapping and unmapping by calling the
>>>>> new stable virglrenderer 0.10 interface. Only enabled when available and
>>>>> via the blob config. E.g. -device virtio-vga-gl,blob=true
>>>>>
>>>>> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>>> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
>>>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>>>> ---
>>>>>
>>>>> v1->v2:
>>>>>        - Remove unused #include "hw/virtio/virtio-iommu.h"
>>>>>
>>>>>        - Add a local function, called virgl_resource_destroy(), that is used
>>>>>          to release a vgpu resource on error paths and in resource_unref.
>>>>>
>>>>>        - Remove virtio_gpu_virgl_resource_unmap from virtio_gpu_cleanup_mapping(),
>>>>>          since this function won't be called on blob resources and also because
>>>>>          blob resources are unmapped via virgl_cmd_resource_unmap_blob().
>>>>>
>>>>>        - In virgl_cmd_resource_create_blob(), do proper cleanup in error paths
>>>>>          and move QTAILQ_INSERT_HEAD(&g->reslist, res, next) after the resource
>>>>>          has been fully initialized.
>>>>>
>>>>>        - Memory region has a different life-cycle from virtio gpu resources
>>>>>          i.e. cannot be released synchronously along with the vgpu resource.
>>>>>          So, here the field "region" was changed to a pointer that will be
>>>>>          released automatically once the memory region is unparented and all
>>>>>          of its references have been released.
>>>>>          Also, since the pointer can be used to indicate whether the blob
>>>>>          is mapped, the explicit field "mapped" was removed.
>>>>>
>>>>>        - In virgl_cmd_resource_map_blob(), add check on the value of
>>>>>          res->region, to prevent beeing called twice on the same resource.
>>>>>
>>>>>        - Remove direct references to parent_obj.
>>>>>
>>>>>        - Separate declarations from code.
>>>>>
>>>>>     hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
>>>>>     hw/display/virtio-gpu.c        |   4 +-
>>>>>     include/hw/virtio/virtio-gpu.h |   5 +
>>>>>     meson.build                    |   4 +
>>>>>     4 files changed, 225 insertions(+), 1 deletion(-)
>>>>>
>>>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
>>>>> index 312953ec16..17b634d4ee 100644
>>>>> --- a/hw/display/virtio-gpu-virgl.c
>>>>> +++ b/hw/display/virtio-gpu-virgl.c
>>>>> @@ -17,6 +17,7 @@
>>>>>     #include "trace.h"
>>>>>     #include "hw/virtio/virtio.h"
>>>>>     #include "hw/virtio/virtio-gpu.h"
>>>>> +#include "hw/virtio/virtio-gpu-bswap.h"
>>>>>     
>>>>>     #include "ui/egl-helpers.h"
>>>>>     
>>>>> @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
>>>>>         virgl_renderer_resource_create(&args, NULL, 0);
>>>>>     }
>>>>>     
>>>>> +static void virgl_resource_destroy(VirtIOGPU *g,
>>>>> +                                   struct virtio_gpu_simple_resource *res)
>>>>> +{
>>>>> +    if (!res)
>>>>> +        return;
>>>>> +
>>>>> +    QTAILQ_REMOVE(&g->reslist, res, next);
>>>>> +
>>>>> +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
>>>>> +    g_free(res->addrs);
>>>>> +
>>>>> +    g_free(res);
>>>>> +}
>>>>> +
>>>>>     static void virgl_cmd_resource_unref(VirtIOGPU *g,
>>>>>                                          struct virtio_gpu_ctrl_command *cmd)
>>>>>     {
>>>>> +    struct virtio_gpu_simple_resource *res;
>>>>>         struct virtio_gpu_resource_unref unref;
>>>>>         struct iovec *res_iovs = NULL;
>>>>>         int num_iovs = 0;
>>>>> @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
>>>>>         VIRTIO_GPU_FILL_CMD(unref);
>>>>>         trace_virtio_gpu_cmd_res_unref(unref.resource_id);
>>>>>     
>>>>> +    res = virtio_gpu_find_resource(g, unref.resource_id);
>>>>> +
>>>>>         virgl_renderer_resource_detach_iov(unref.resource_id,
>>>>>                                            &res_iovs,
>>>>>                                            &num_iovs);
>>>>>         if (res_iovs != NULL && num_iovs != 0) {
>>>>>             virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
>>>>> +        if (res) {
>>>>> +            res->iov = NULL;
>>>>> +            res->iov_cnt = 0;
>>>>> +        }
>>>>>         }
>>>>> +
>>>>>         virgl_renderer_resource_unref(unref.resource_id);
>>>>> +
>>>>> +    virgl_resource_destroy(g, res);
>>>>>     }
>>>>>     
>>>>>     static void virgl_cmd_context_create(VirtIOGPU *g,
>>>>> @@ -426,6 +451,183 @@ static void virgl_cmd_get_capset(VirtIOGPU *g,
>>>>>         g_free(resp);
>>>>>     }
>>>>>     
>>>>> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
>>>>> +
>>>>> +static void virgl_cmd_resource_create_blob(VirtIOGPU *g,
>>>>> +                                           struct virtio_gpu_ctrl_command *cmd)
>>>>> +{
>>>>> +    struct virtio_gpu_simple_resource *res;
>>>>> +    struct virtio_gpu_resource_create_blob cblob;
>>>>> +    struct virgl_renderer_resource_create_blob_args virgl_args = { 0 };
>>>>> +    int ret;
>>>>> +
>>>>> +    VIRTIO_GPU_FILL_CMD(cblob);
>>>>> +    virtio_gpu_create_blob_bswap(&cblob);
>>>>> +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
>>>>> +
>>>>> +    if (cblob.resource_id == 0) {
>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
>>>>> +                      __func__);
>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>>>> +        return;
>>>>> +    }
>>>>> +
>>>>> +    res = virtio_gpu_find_resource(g, cblob.resource_id);
>>>>> +    if (res) {
>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already exists %d\n",
>>>>> +                      __func__, cblob.resource_id);
>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>>>> +        return;
>>>>> +    }
>>>>> +
>>>>> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
>>>>> +    if (!res) {
>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
>>>>> +        return;
>>>>> +    }
>>>>> +
>>>>> +    res->resource_id = cblob.resource_id;
>>>>> +    res->blob_size = cblob.size;
>>>>> +
>>>>> +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
>>>>> +        ret = virtio_gpu_create_mapping_iov(g, cblob.nr_entries, sizeof(cblob),
>>>>> +                                            cmd, &res->addrs, &res->iov,
>>>>> +                                            &res->iov_cnt);
>>>>> +        if (!ret) {
>>>>> +            g_free(res);
>>>>> +            cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
>>>>> +            return;
>>>>> +        }
>>>>> +    }
>>>>> +
>>>>> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
>>>>> +
>>>>> +    virgl_args.res_handle = cblob.resource_id;
>>>>> +    virgl_args.ctx_id = cblob.hdr.ctx_id;
>>>>> +    virgl_args.blob_mem = cblob.blob_mem;
>>>>> +    virgl_args.blob_id = cblob.blob_id;
>>>>> +    virgl_args.blob_flags = cblob.blob_flags;
>>>>> +    virgl_args.size = cblob.size;
>>>>> +    virgl_args.iovecs = res->iov;
>>>>> +    virgl_args.num_iovs = res->iov_cnt;
>>>>> +
>>>>> +    ret = virgl_renderer_resource_create_blob(&virgl_args);
>>>>> +    if (ret) {
>>>>> +        virgl_resource_destroy(g, res);
>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: virgl blob create error: %s\n",
>>>>> +                      __func__, strerror(-ret));
>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
>>>>> +    }
>>>>> +}
>>>>> +
>>>>> +static void virgl_cmd_resource_map_blob(VirtIOGPU *g,
>>>>> +                                        struct virtio_gpu_ctrl_command *cmd)
>>>>> +{
>>>>> +    struct virtio_gpu_simple_resource *res;
>>>>> +    struct virtio_gpu_resource_map_blob mblob;
>>>>> +    int ret;
>>>>> +    void *data;
>>>>> +    uint64_t size;
>>>>> +    struct virtio_gpu_resp_map_info resp;
>>>>> +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
>>>>> +
>>>>> +    VIRTIO_GPU_FILL_CMD(mblob);
>>>>> +    virtio_gpu_map_blob_bswap(&mblob);
>>>>> +
>>>>> +    if (mblob.resource_id == 0) {
>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
>>>>> +                      __func__);
>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>>>> +        return;
>>>>> +    }
>>>>> +
>>>>> +    res = virtio_gpu_find_resource(g, mblob.resource_id);
>>>>> +    if (!res) {
>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
>>>>> +                      __func__, mblob.resource_id);
>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>>>> +        return;
>>>>> +    }
>>>>> +    if (res->region) {
>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already mapped %d\n",
>>>>> +		      __func__, mblob.resource_id);
>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>>>> +        return;
>>>>> +    }
>>>>> +
>>>>> +    ret = virgl_renderer_resource_map(res->resource_id, &data, &size);
>>>>> +    if (ret) {
>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource map error: %s\n",
>>>>> +                      __func__, strerror(-ret));
>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>>>> +        return;
>>>>> +    }
>>>>> +
>>>>> +    res->region = g_new0(MemoryRegion, 1);
>>>>> +    if (!res->region) {
>>>>> +        virgl_renderer_resource_unmap(res->resource_id);
>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
>>>>> +        return;
>>>>> +    }
>>>>> +    memory_region_init_ram_device_ptr(res->region, OBJECT(g), NULL, size, data);
>>>>
>>>> I think memory_region_init_ram_ptr() should be used instead.
>>>
>>> Would you mind to explain the reason?
>>
>> The documentation comment of memory_region_init_ram_device_ptr() says:
>>   > A RAM device represents a mapping to a physical device, such as to a
>>   > PCI MMIO BAR of an vfio-pci assigned device.  The memory region may be
>>   > mapped into the VM address space and access to the region will modify
>>   > memory directly.  However, the memory region should not be included in
>>   > a memory dump (device may not be enabled/mapped at the time of the
>>   > dump), and operations incompatible with manipulating MMIO should be
>>   > avoided.  Replaces skip_dump flag.
>>
>> In my understanding it's not MMIO so memory_region_init_ram_ptr() should
>> be used instead.
>>
> 
> It actually maybe the video memory (mmio) or system memory here. :-)
> 
> We will get the host memory for blob from host with
> virgl_renderer_resource_map() in virglrenderer. In virglrenderer, there are two
> types of VIRGL_RESOURCE_FD_DMABUF and VIRGL_RESOURCE_FD_SHM to indicate the
> memory types. The shmem is the system memory that won't need GPU
> accessible, and dmabuf is the memory that required GPU accessible. Host
> kernel amdgpu driver will register dma-buf to export the resource buffer
> for sharing, and here, it may have video memory that exposed by amdgpu pcie
> bar0 in the dma-buf buffers. And we also have system memory(gtt) that can
> be mapped as gpu page tables for gpu accessible.
> 
> 07:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Renoir (rev c1) (prog-if 00 [VGA controller])
>          Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] Renoir
>          Flags: bus master, fast devsel, latency 0, IRQ 56
>          Memory at fcc0000000 (64-bit, prefetchable) [size=256M]
>          Memory at fcd0000000 (64-bit, prefetchable) [size=2M]
>          I/O ports at 1000 [size=256]
>          Memory at d0400000 (32-bit, non-prefetchable) [size=512K]
>          Capabilities: <access denied>
>          Kernel driver in use: amdgpu
>          Kernel modules: amdgpu

In my understanding it is not relevant if the memory is backed by device 
or not. Here MMIO means memory-mapping I/O registers that has 
side-effects during accesses. Reading such a register may acknowledge an 
interrupt for example and the unit of writes may also matter. 
memory_region_init_ram_device_ptr() ensures no supurious memory read 
will not happen and word accesses are preserved.

They do not matter for video memory even if it lies in a separate device 
memory. In this sense the name "memory_region_init_ram_device_ptr" is 
somewhat misnomer.

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 04:10:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 04:10:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596181.929959 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdjsF-0001TR-Ja; Wed, 06 Sep 2023 04:10:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596181.929959; Wed, 06 Sep 2023 04:10:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdjsF-0001TK-FI; Wed, 06 Sep 2023 04:10:39 +0000
Received: by outflank-mailman (input) for mailman id 596181;
 Wed, 06 Sep 2023 04:10:38 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdjsE-0001TA-RV; Wed, 06 Sep 2023 04:10:38 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdjsE-0006o6-Ob; Wed, 06 Sep 2023 04:10:38 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdjsE-000227-9f; Wed, 06 Sep 2023 04:10:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdjsE-0003KY-8m; Wed, 06 Sep 2023 04:10:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=4Fd2r1Z5fWe7c/NdobZb27876KdufZbRTcCnpoB9DqI=; b=L37+uWSKqg8hbBZk33QXZh2bHr
	XL56dZ6zNkxO3Rk7TUCjcxRtjkOtIfkuQmp13OREZdLemkGfvLCu9k3JmEjYH0kexOHjWRZPYi4Cy
	9HnUqfzIaVbD5pqFcjgWIQuKWSVGJ2lQz9b0UYMOGudtKiOkd+EplL5lvkvonA1EK3/k=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182640-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182640: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=f008890ae55929f7f17e7d2f8aff929255007d33
X-Osstest-Versions-That:
    ovmf=8b66f9df1bb0fd5ebb743944d41cb33178cf2fdd
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 04:10:38 +0000

flight 182640 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182640/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 f008890ae55929f7f17e7d2f8aff929255007d33
baseline version:
 ovmf                 8b66f9df1bb0fd5ebb743944d41cb33178cf2fdd

Last test of basis   182636  2023-09-05 14:12:37 Z    0 days
Testing same since   182640  2023-09-05 22:41:46 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Gerd Hoffmann <kraxel@redhat.com>
  Jiewen Yao <Jiewen.yao@intel.com>
  Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
  Michael Roth <michael.roth@amd.com>
  Roth, Michael via groups.io <Michael.Roth=amd.com@groups.io>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   8b66f9df1b..f008890ae5  f008890ae55929f7f17e7d2f8aff929255007d33 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 04:48:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 04:48:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596179.929968 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdkSt-0006Tb-EQ; Wed, 06 Sep 2023 04:48:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596179.929968; Wed, 06 Sep 2023 04:48:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdkSt-0006TU-Bg; Wed, 06 Sep 2023 04:48:31 +0000
Received: by outflank-mailman (input) for mailman id 596179;
 Wed, 06 Sep 2023 03:48:21 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PN8I=EW=fujitsu.com=lizhijian@srs-se1.protection.inumbo.net>)
 id 1qdjWf-0005mY-Ip
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 03:48:21 +0000
Received: from esa6.fujitsucc.c3s2.iphmx.com (esa6.fujitsucc.c3s2.iphmx.com
 [68.232.159.83]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 36747cfc-4c68-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 05:48:18 +0200 (CEST)
Received: from mail-tycjpn01lp2169.outbound.protection.outlook.com (HELO
 JPN01-TYC-obe.outbound.protection.outlook.com) ([104.47.23.169])
 by ob1.fujitsucc.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 06 Sep 2023 12:48:09 +0900
Received: from OS7PR01MB11664.jpnprd01.prod.outlook.com (2603:1096:604:247::6)
 by TY3PR01MB11496.jpnprd01.prod.outlook.com (2603:1096:400:371::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 03:48:06 +0000
Received: from OS7PR01MB11664.jpnprd01.prod.outlook.com
 ([fe80::6996:50d0:fd3d:15f1]) by OS7PR01MB11664.jpnprd01.prod.outlook.com
 ([fe80::6996:50d0:fd3d:15f1%4]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 03:48:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 36747cfc-4c68-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=fujitsu.com; i=@fujitsu.com; q=dns/txt; s=fj1;
  t=1693972098; x=1725508098;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-id:content-transfer-encoding:
   mime-version;
  bh=bpBP0SCNVBN2dnjUTUDUlSjAYUO+VNOZmIXw3uJFKBw=;
  b=jyMOnubOJy1EjcgCVJ7GlkHkbkh8iNQc/r9Kj77EHRZrjxIpmJu7h/UZ
   fLHrf3NCpVUsUnWggDYiiRBnP6aqHB2HwSUhK9gI6ZMsLuazPuIPjqJ4R
   87QbpYHvYYvWZSjC8dVIYHYd6dP9kkIAg5ju971oeVFHJ2VjYb/KBZSVV
   jDTU6aFF5D0JcIHzykp0L2SjtvOrKyiwzt23s3XLxiQhg6Cd4ylFzZbvM
   xJHoKaCdyASt7ni/83NDC+KbNGOvcQ9L8gTLbQMhEFbtrHg6jFJQgaHO2
   lyPPDEfstpccLj8bVPkaO1cQKVSQ5rxRflx7BDtzysmmm2xckXRLNr5wh
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10824"; a="94290858"
X-IronPort-AV: E=Sophos;i="6.02,231,1688396400"; 
   d="scan'208";a="94290858"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KtwHCt2h5m5qLpPP/0fgyouDOPRJQ/aHZRDl1twllczK6onlfuLgvzll8ZwgkhUPC+2n/YURa1VrVlRtXgoMTM1NEMaQuLsHaiTLlEB7LNM1g0sOMAjq8FwQnzMe8QOAS9de/54D+lgrtePTbuOFUKbwjF6p6W6vrS1+xLOpKF09dVwGHe5PzfWJYL5uhAg95MBn/WzIATDPZ/YR+I2fL6DoiwSl10kgUgxfvTtdywGpCTnn4CxrMwIvtjfrPjbYkQHA6AEOyV8P8h9Fpd76+lZjJCEtu8/4292uARFY5QsjsMrRfjdwSqte2xnsXTQPBbOKKL4Ej8iP4fvFwZ+tVQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bpBP0SCNVBN2dnjUTUDUlSjAYUO+VNOZmIXw3uJFKBw=;
 b=cbbZ4XNHrP9Ero922b8ykV/kRLzFavw1YF5jnCINfGV30ZT6yg/Gpvx/XRSklMIxhc4ifSkuh3+CtNQqbXB2RO/kHJyXxArgIl1sNtheZWNv+L+MgGW4L6/aUv/OC8AM+rj/6jnkxOmMLj98HxJu5b0dZcqN7KhIUU9TsOb8VIqaH94B5zS/9xP5fYF/q91p9FlUofX5u3gAGvo6DhRyBQ+LyWTshkgDROE4agu/GdGoEBH+lKtXBqhZnUV/2Li8do6EcnMpBeuuho2c48dQr3vmTe5nEN1KjlIueqfXuKbTHxlR8tPUWjUVQ6+eDIIYkX0d4X5wBxJihYzEz5i87g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=fujitsu.com; dmarc=pass action=none header.from=fujitsu.com;
 dkim=pass header.d=fujitsu.com; arc=none
From: "Zhijian Li (Fujitsu)" <lizhijian@fujitsu.com>
To: Markus Armbruster <armbru@redhat.com>, "qemu-devel@nongnu.org"
	<qemu-devel@nongnu.org>
CC: "kwolf@redhat.com" <kwolf@redhat.com>, "hreitz@redhat.com"
	<hreitz@redhat.com>, "eblake@redhat.com" <eblake@redhat.com>,
	"vsementsov@yandex-team.ru" <vsementsov@yandex-team.ru>, "jsnow@redhat.com"
	<jsnow@redhat.com>, "idryomov@gmail.com" <idryomov@gmail.com>, "pl@kamp.de"
	<pl@kamp.de>, "sw@weilnetz.de" <sw@weilnetz.de>, "sstabellini@kernel.org"
	<sstabellini@kernel.org>, "anthony.perard@citrix.com"
	<anthony.perard@citrix.com>, "paul@xen.org" <paul@xen.org>,
	"pbonzini@redhat.com" <pbonzini@redhat.com>, "marcandre.lureau@redhat.com"
	<marcandre.lureau@redhat.com>, "berrange@redhat.com" <berrange@redhat.com>,
	"thuth@redhat.com" <thuth@redhat.com>, "philmd@linaro.org"
	<philmd@linaro.org>, "stefanha@redhat.com" <stefanha@redhat.com>,
	"fam@euphon.net" <fam@euphon.net>, "quintela@redhat.com"
	<quintela@redhat.com>, "peterx@redhat.com" <peterx@redhat.com>,
	"leobras@redhat.com" <leobras@redhat.com>, "kraxel@redhat.com"
	<kraxel@redhat.com>, "qemu-block@nongnu.org" <qemu-block@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	"alex.bennee@linaro.org" <alex.bennee@linaro.org>, "peter.maydell@linaro.org"
	<peter.maydell@linaro.org>
Subject: Re: [PATCH 1/7] migration/rdma: Fix save_page method to fail on
 polling error
Thread-Topic: [PATCH 1/7] migration/rdma: Fix save_page method to fail on
 polling error
Thread-Index: AQHZ3A7oCOHOGe53IUCQTH8HwpnDB7ANMcMA
Date: Wed, 6 Sep 2023 03:48:05 +0000
Message-ID: <b363efe3-76ba-14f1-503f-c2ca36864253@fujitsu.com>
References: <20230831132546.3525721-1-armbru@redhat.com>
 <20230831132546.3525721-2-armbru@redhat.com>
In-Reply-To: <20230831132546.3525721-2-armbru@redhat.com>
Accept-Language: en-US, zh-CN
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=fujitsu.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: OS7PR01MB11664:EE_|TY3PR01MB11496:EE_
x-ms-office365-filtering-correlation-id: d1a31b88-242e-465f-bcfe-08dbae8c140a
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 2niVXsa41CVKxjTq/ZP1RetlSyhUI5YRYDuhVKRpffd6AXG7PP8nVwSOXkqyN/qymvZVhREKCq518l5n52n5NF79O6nA16XtlhqkZIxhUfAMfn1JQ34nTtJulIwfYt1sQVbOEHCzThyOcldim9TovfWaDPHytnSDyGPH7WJVYoN4tfrnk9FmfPxhLFBIMXcDBSejHddx9jbEVMP+KZmt0E1Ht/OhpMh98zASwRypMMgcRnQAKyxiknYbDXZUpxIXjx83R2NNDMgf5VPQ1EHbOVIaQMwRPK7HfpWq+HIPo0AR4JpdG04G0zD+6PC3bXuK6/vYBDvOLwc1T3kFiTUT5DoJxkjJMQP2cZa08W2zAS8b81euGraiKCyR6VUQFzG2m3dNbfOzejc5K++5HP7djo2vO+4ZGPx57C769/E9OkAMWsdIKJAC0XU60LfmPt/nIxChZKzgy2Raom+Qkiv6y6fStl002J3NDTRZAPS3wClW56HFZcZEZXGo6MDkXs6gQrjtb2SslX9Q2qwN0LnS882ueZVZ2tKlafePnkBOIYsrX1+HiDG/kLL6FYSyFjpXC/zG/haMhLDkNo49d6/aq3dK4EC4gTMb3SiH5Q6hZfFDzUTAckRU8ogkhcZeVcBmghdXYVG9Ulluct/wdGwXpGGwMpvjXx2VbMiI+pcBuBcEDyP7QUkeAreqqraBCJKxKpVj/qEYPA5id01xEPwaCQ==
x-forefront-antispam-report:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:OS7PR01MB11664.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(366004)(346002)(376002)(39860400002)(1590799021)(186009)(1800799009)(451199024)(31686004)(1580799018)(71200400001)(53546011)(6486002)(6506007)(6512007)(85182001)(36756003)(82960400001)(31696002)(86362001)(38100700002)(122000001)(38070700005)(2616005)(2906002)(26005)(83380400001)(478600001)(110136005)(91956017)(66946007)(8676002)(316002)(8936002)(4326008)(76116006)(5660300002)(66556008)(7416002)(54906003)(66476007)(41300700001)(66446008)(64756008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?utf-8?B?S1dZYnFnTnFkQ2YwTENvZDExakR1ZURRZkMwb0FxVlpQblI1ZDduekNkNFJv?=
 =?utf-8?B?ZFk0TzZRSTRHcmIzVlZoYzduYWhOUWZwVmxQaS9RekREaEJydEJzb0FybHFm?=
 =?utf-8?B?VnY1TmgzOGRaVUpnSmN5VVJRalZaOXVNZTQ2MXEvbzV5UjhMUmd3Rk9pSEIy?=
 =?utf-8?B?aXpZMWFHOHZkSU1XcXQrQnJpbUtjYVJERnZZVGlRSlk5R015NE1JSFpYM2s1?=
 =?utf-8?B?dzEvUm53bS9ZQytnbG5KZjlWdDBFS1VoY2NpOTdxNW82WGNMUzcyQnhhZEI2?=
 =?utf-8?B?dURoNmFKenhpTUROU2R0dFRtOGl4OVI3TUtGeXB1ZWl6cCtUM1hYRDkwekRO?=
 =?utf-8?B?dVNjYllGVTh5bUZGdUZnS2VGcXVOOWJjY0RmZTBCQy93UVRpWnRLallBOGVO?=
 =?utf-8?B?OXdJOU4xOXltQ08zRWp2WjlNUkdsZGd1ajRaTFBEZXp1UHVFZFNPWitscnJR?=
 =?utf-8?B?Z2QveTBPMG91eUJxbXBIMlRSOWIrUGc2UTR6SFE3QUF1V2dYbzF4cXZETzRM?=
 =?utf-8?B?cDdNL0dZYm92MXY0b3RhY3NsU21QZG1NVmlmSFlDYlRJL25yY1hrdnNVY056?=
 =?utf-8?B?aEl2N3RvaDQwSmx2alZ4SlBOeVdxOTZrTTRlczlveE1PMHhKZjJaWUtKQW9u?=
 =?utf-8?B?MmRxUzF1NlNUN25Yb05EbWlaeXdjM0FLeHd6dWlFcjVnZVhHR0NjRUxtMmdT?=
 =?utf-8?B?aFpOYUovU1lrNW11VTRJRkVpaHJBTHNYL3F4NkxIQXVnNm1oZ2szTzdxQ0Vo?=
 =?utf-8?B?dWh3RDUyZFU0dkZZNU55YTB2QW5pazZ1M3F6dlZ0S2VveVBpcEZtd2s3NTVR?=
 =?utf-8?B?N0pYTjZaTzFkZlBHcGRjZDQ1UWVVQmlYbUF6NXlIdXVyaXRiRFR2bTByWW9y?=
 =?utf-8?B?REpBbUtrM2pyTWRNVlBHVUJmQmtZK21CZThjNlpiSG8xcHJ2dUVkY0RtSVIr?=
 =?utf-8?B?K2NBZ2RhVjZCSnRaQnFLSW8xbTNKK0YwcUVEOWVSOExlanNWVFVKYUZCdTNu?=
 =?utf-8?B?V05zelRSbkUyWFlpQ2hHNnVCcDBvSVFTN3lDWlUvSVQ5VXlDR0hycVlLcUdC?=
 =?utf-8?B?dTdtKzVNeFpTZXNZejZJK3NyVk5SYzkrTzM0WkdTVnh2clE2N3dMRmtHYnZ2?=
 =?utf-8?B?WFU5MlFxUm9jczE2RXRreTQycGJla2NoTkcycUpYVlRyT2hqT2dZTFhvTmlP?=
 =?utf-8?B?aXhreXBsb2F2S1hvMHBmUzB2aE0yOVMyUUFhWEY0TkJjK29VQ1NoeDlFa3BC?=
 =?utf-8?B?MlNPSnIzejExcHlQNzgzN25PbWgyaHZMbjBJZ3hGT3BlVVVzTVhtQndPUFdk?=
 =?utf-8?B?bzdkbkV1K0Y1dGQ0Y3NJb3pTTmF3MVZGNVNwTkRBdjdMUzB1QnZvano2SE4x?=
 =?utf-8?B?VzBORzhPczlWTUkzZTZSS2NkbUswVFprMmt6ME9EeEVLSkZBQVRzbzJYUnJy?=
 =?utf-8?B?MGpzUDZWd0hNVkV5TmZaNWFPNHZ3V1plbHdySTQwSGNDZGg2UldRQmIwVlV1?=
 =?utf-8?B?SmlSc1dlZm84MWljdmx2THlUbm9JN3kvVm1zbG5sMTZUSGxOZnZDaHJTaVpO?=
 =?utf-8?B?S0xxMHAvYXZPQnAvZ1JHUjhqQi9tSUUzb0hvdzRvVU83b1lIOHZzdy9ENnJ3?=
 =?utf-8?B?ZnYyM2YyZ2F6dG1CY1dNc2tNTkxoY3lOL2UxWWRJcjNYWjhtNE1lZkpXeWNw?=
 =?utf-8?B?MEJDVXpjVmpycUs4NkJwTUQydUpGc0o5c3pieWwrOVRYWWFMcE03ZEMySXBV?=
 =?utf-8?B?dEp4K2ZMbUo0dGxqWWFGRTNubzRYeGI2MW1QWmpzbnZ4bENXaytJb3hrTWpz?=
 =?utf-8?B?RGpvNVY4WHUrMDdnK1JuM3BPQ0dXVmlnRzdPK2RYTGxoSGllVVFmOU5jdjBB?=
 =?utf-8?B?RFNoUGFKVkxpN1pWVnV6dTBFNFZySmUwVVFhVDdNRlY5NzUxSGVNRUlPZmdW?=
 =?utf-8?B?OXVzTEY1SDNvNXhwU0Y4NmlqdFBld09vdEdkSmlEWTJCemJ4V2IzOE5XZk1r?=
 =?utf-8?B?REFFNzJKeHNYT3p6R1JFVS82Z2JCc1NvZTYwMmNSUmdtOVMyM1J3Q2JlajYz?=
 =?utf-8?B?QUUyTWtLb2wwc0U5a3RXcFpuTlpKN0k2U28vdVRoYW5aY2orQk43Z2JmU3Zq?=
 =?utf-8?B?bWh4NGNHK1Nmc0NrNktwMUJOVUhtVmpPOUlOTkRYalphTE5EWUdIMDdoakUr?=
 =?utf-8?B?cHc9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <215BB8D900A32D48BEF9A0DFCD72C7B7@jpnprd01.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?UVZhb2NpT1VRSEIrZmFOOUx6VVJjdnZkcHNRbjNrbGZvaERhbENHMXFIejkx?=
 =?utf-8?B?Q2czYUZGZmZlN3hhVG9KZkgzUWdxNzNZcTFqa0Y2cFlHRzNzc2Q5YTNSbU1a?=
 =?utf-8?B?eng4cFhyaG9EN2Mzai80RVpUeU5Tb1dlb3dsMWVERGo3dkNyY3hsckJDZDBE?=
 =?utf-8?B?bHNhUFR5SnJUZXBjOHBFT0o3OWJZR21mOFZYQ1dQaVlRVzJ0cmcyeGpwWHlF?=
 =?utf-8?B?QXlQRDBMcDV6K0JEaUI1akJNelVtUGtYblZkNzFmbVdvQjVwVDJzLzc0UHh5?=
 =?utf-8?B?QnJHc1lYT1RLWFdncGs5ZkdBMXVqeTl3VGw2TnlmL1R0RkZLYVNmcDRvWmlR?=
 =?utf-8?B?TExjTm44Qi9CQWJQUzcwOGxsdE9IY1hlb21YOHRyS3lnWnBuM1lZSlA1SVB5?=
 =?utf-8?B?WFExNld3ZkJ5VXF6UGFSRnhoRGFROUNpT05MZE9GUWMrREVSQ1hjZ3Z0ckxr?=
 =?utf-8?B?eEN2WlB4RC9vdzVUVEJpUi8yWmdlb1cvN1VRRXh0Yks0UVMzSHpadkc1aU5p?=
 =?utf-8?B?UDRYMHBsRzdoSzRHSFBMU1hUMmtIdW9TdnFqTWRPUVB6bTlaUCtkcVJ0NXB0?=
 =?utf-8?B?bEVDVnhmaEtpVUp5d3ZlM1Q4Zkg0QlRaQWQ2a3htK1BTRnoya3FIbVMyNFZW?=
 =?utf-8?B?UXFLUmJRLzYxNGdDL0JhU015ZXluVFBhMVJnSVhiRFBkazNKYWloZHR3WWlq?=
 =?utf-8?B?Nis4aUZaSm9SclhoYW5RUFlSbFlLN25NYURpdndOTWFNSk9tTi91cjkzYzdL?=
 =?utf-8?B?bjF4c1BuZ3IyTWdyNEU2Z1ZYTlN2SXRPK2lsV0V2YmhZSWQ0REVIM1dLVGgz?=
 =?utf-8?B?cWtiM1ZUYTIrNm1pc2RSNXNuRm9EQUh0U2ZsQ3prYjZQa1RrSWx1U2hZLyt1?=
 =?utf-8?B?OStpVnZnNzFqQWtzbXNZclZnOHl3Vk5nSEhMUG5MWFBCQnhuNFpHcEpCbHNH?=
 =?utf-8?B?ZE9kWkRtWC9LWWlIYWV1aWxkQXlyT1psU0loNkVmWHl3YUVueCt2aWJEb0k0?=
 =?utf-8?B?OVZNK1JkMlM5c3F5OWJ3RFpPUURUN0RDc2RIbjhraTdhbnl5NVMxNnp4cmFr?=
 =?utf-8?B?TTlSQzU4UEtCam82RlR1WEcxd2o1UjV4U0dPNEorTmxRU2JNc1VIMnU2MHVD?=
 =?utf-8?B?MjFKYld0UjNZcElzSmFvUnpvckYxVHVmN3laUTFoU2kvakJZOFAzdUtpZi9N?=
 =?utf-8?B?MDJrdzJvSjVxLzNydHZzclNkdUlXS29lUzFXdGlSb1liY3BZdTNMQm5EdEZL?=
 =?utf-8?B?b0JXWGlqa2lpYlJud3A3Z3NhenhKandBQnU0NVRUQWNaN2kzbk8xdHNUOXhk?=
 =?utf-8?B?OVhwRVhqVW14aGwzbm03K3RHTjFVL0ljR1puL1g3T0o0RnJDZzJySmtLUnIv?=
 =?utf-8?B?N1g3MXdDRTVYdUxkVHVGYUViMHZVSU45ZUJocWtjSkdOUTJWbStWN0w1VWFl?=
 =?utf-8?B?SjBIc0d2YVoyWkhkNDNkeHBqdTVvUDd6SFo5VjR6MWpIdDhsUUxWL0NlNU5F?=
 =?utf-8?Q?tLd71Q=3D?=
X-OriginatorOrg: fujitsu.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: OS7PR01MB11664.jpnprd01.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d1a31b88-242e-465f-bcfe-08dbae8c140a
X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Sep 2023 03:48:05.7810
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: a19f121d-81e1-4858-a9d8-736e267fd4c7
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: pa1IIalk7dWWCHf/i6eHcdJf+iw7VbsOff5+cZXQg2ByPfIKhBA8b0lVjMAXnjDYI9Cv2ApqvlGec3LlpckDsA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TY3PR01MB11496

DQoNCk9uIDMxLzA4LzIwMjMgMjE6MjUsIE1hcmt1cyBBcm1icnVzdGVyIHdyb3RlOg0KPiBxZW11
X3JkbWFfc2F2ZV9wYWdlKCkgcmVwb3J0cyBwb2xsaW5nIGVycm9yIHdpdGggZXJyb3JfcmVwb3J0
KCksIHRoZW4NCj4gc3VjY2VlZHMgYW55d2F5LiAgVGhpcyBpcyBiZWNhdXNlIHRoZSB2YXJpYWJs
ZSBob2xkaW5nIHRoZSBwb2xsaW5nDQo+IHN0YXR1cyAqc2hhZG93cyogdGhlIHZhcmlhYmxlIHRo
ZSBmdW5jdGlvbiByZXR1cm5zLiAgVGhlIGxhdHRlcg0KPiByZW1haW5zIHplcm8uDQo+IA0KPiBC
cm9rZW4gc2luY2UgZGF5IG9uZSwgYW5kIGR1cGxpY2F0ZWQgbW9yZSByZWNlbnRseS4NCj4gDQo+
IEZpeGVzOiAyZGE3NzZkYjQ4NDYgKHJkbWE6IGNvcmUgbG9naWMpDQo+IEZpeGVzOiBiMzkwYWZk
OGM1MGIgKG1pZ3JhdGlvbi9yZG1hOiBGaXggb3V0IG9mIG9yZGVyIHdyaWQpDQoNClRoYW5rcyBm
b3IgdGhlIGZpeGVzDQoNCg0KPiBTaWduZWQtb2ZmLWJ5OiBNYXJrdXMgQXJtYnJ1c3RlciA8YXJt
YnJ1QHJlZGhhdC5jb20+DQoNCg0KUmV2aWV3ZWQtYnk6IExpIFpoaWppYW4gPGxpemhpamlhbkBm
dWppdHN1LmNvbT4NCg0KDQoNCg0KPiAtLS0NCj4gICBtaWdyYXRpb24vcmRtYS5jIHwgNiArKysr
LS0NCj4gICAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQ0K
PiANCj4gZGlmZiAtLWdpdCBhL21pZ3JhdGlvbi9yZG1hLmMgYi9taWdyYXRpb24vcmRtYS5jDQo+
IGluZGV4IGNhNDMwZDMxOWQuLmIyZTg2OWFjZWQgMTAwNjQ0DQo+IC0tLSBhL21pZ3JhdGlvbi9y
ZG1hLmMNCj4gKysrIGIvbWlncmF0aW9uL3JkbWEuYw0KPiBAQCAtMzI4MSw3ICszMjgxLDggQEAg
c3RhdGljIHNpemVfdCBxZW11X3JkbWFfc2F2ZV9wYWdlKFFFTVVGaWxlICpmLA0KPiAgICAgICAg
Ki8NCj4gICAgICAgd2hpbGUgKDEpIHsNCj4gICAgICAgICAgIHVpbnQ2NF90IHdyX2lkLCB3cl9p
ZF9pbjsNCj4gLSAgICAgICAgaW50IHJldCA9IHFlbXVfcmRtYV9wb2xsKHJkbWEsIHJkbWEtPnJl
Y3ZfY3EsICZ3cl9pZF9pbiwgTlVMTCk7DQo+ICsgICAgICAgIHJldCA9IHFlbXVfcmRtYV9wb2xs
KHJkbWEsIHJkbWEtPnJlY3ZfY3EsICZ3cl9pZF9pbiwgTlVMTCk7DQo+ICsNCj4gICAgICAgICAg
IGlmIChyZXQgPCAwKSB7DQo+ICAgICAgICAgICAgICAgZXJyb3JfcmVwb3J0KCJyZG1hIG1pZ3Jh
dGlvbjogcG9sbGluZyBlcnJvciEgJWQiLCByZXQpOw0KPiAgICAgICAgICAgICAgIGdvdG8gZXJy
Ow0KPiBAQCAtMzI5Niw3ICszMjk3LDggQEAgc3RhdGljIHNpemVfdCBxZW11X3JkbWFfc2F2ZV9w
YWdlKFFFTVVGaWxlICpmLA0KPiAgIA0KPiAgICAgICB3aGlsZSAoMSkgew0KPiAgICAgICAgICAg
dWludDY0X3Qgd3JfaWQsIHdyX2lkX2luOw0KPiAtICAgICAgICBpbnQgcmV0ID0gcWVtdV9yZG1h
X3BvbGwocmRtYSwgcmRtYS0+c2VuZF9jcSwgJndyX2lkX2luLCBOVUxMKTsNCj4gKyAgICAgICAg
cmV0ID0gcWVtdV9yZG1hX3BvbGwocmRtYSwgcmRtYS0+c2VuZF9jcSwgJndyX2lkX2luLCBOVUxM
KTsNCj4gKw0KPiAgICAgICAgICAgaWYgKHJldCA8IDApIHsNCj4gICAgICAgICAgICAgICBlcnJv
cl9yZXBvcnQoInJkbWEgbWlncmF0aW9uOiBwb2xsaW5nIGVycm9yISAlZCIsIHJldCk7DQo+ICAg
ICAgICAgICAgICAgZ290byBlcnI7


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 05:02:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 05:02:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596196.929978 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdkg4-0001OR-J0; Wed, 06 Sep 2023 05:02:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596196.929978; Wed, 06 Sep 2023 05:02:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdkg4-0001OK-GC; Wed, 06 Sep 2023 05:02:08 +0000
Received: by outflank-mailman (input) for mailman id 596196;
 Wed, 06 Sep 2023 05:02:07 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdkg3-0001OA-Gk; Wed, 06 Sep 2023 05:02:07 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdkg3-0008R6-Cv; Wed, 06 Sep 2023 05:02:07 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdkg2-0003dM-VB; Wed, 06 Sep 2023 05:02:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdkg2-0008HY-Uj; Wed, 06 Sep 2023 05:02:06 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=KJC1kYeLbKjDIi17dQBAbwK2EJbykPwvXwf/98VZpPs=; b=kuXGymj0AD78pmpB+gVIgnVYA8
	xWjxWsQCRWr/Hp76hwkKbvhkeGYNbhQ5mYdy1KSl6kfYzNhHsarIrsbXv2Ef1YwYFBFhCldceNXiE
	GVlytpSGN+IC8JQJxDu/SngpHiCu+BbwM7i0fO27n2dpq10qbeH6jhZNVlc6fr/FBOrM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182641-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182641: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:build-amd64:xen-build:fail:regression
    xen-unstable-smoke:build-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-unstable-smoke:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=61765a07e3d8a4dabbb8323b55f13ee75c80e54a
X-Osstest-Versions-That:
    xen=9a216e92de9f9011097e4f1fb55ff67ba0a21704
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 05:02:06 +0000

flight 182641 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182641/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-amd64                   6 xen-build                fail REGR. vs. 182635

Tests which did not succeed, but are not blocking:
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  61765a07e3d8a4dabbb8323b55f13ee75c80e54a
baseline version:
 xen                  9a216e92de9f9011097e4f1fb55ff67ba0a21704

Last test of basis   182635  2023-09-05 13:00:27 Z    0 days
Testing same since   182641  2023-09-06 02:02:08 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  David Gibson <david@gibson.dropbear.id.au>
  Henry Wang <Henry.Wang@arm.com>
  Julien Grall <jgrall@amazon.com>
  Juline Grall <jgrall@amazon.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Vikram Garhwal <fnu.vikram@xilinx.com>
  Vikram Garhwal <vikram.garhwal@amd.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  fail    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          blocked 
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-amd64-libvirt                                     blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 380 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 05:26:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 05:26:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596207.929997 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdl34-0004go-JX; Wed, 06 Sep 2023 05:25:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596207.929997; Wed, 06 Sep 2023 05:25:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdl34-0004gh-Ec; Wed, 06 Sep 2023 05:25:54 +0000
Received: by outflank-mailman (input) for mailman id 596207;
 Wed, 06 Sep 2023 05:25:53 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdl33-0004gX-FP; Wed, 06 Sep 2023 05:25:53 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdl33-0000YD-CB; Wed, 06 Sep 2023 05:25:53 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdl32-0004Dg-Up; Wed, 06 Sep 2023 05:25:53 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdl32-0000U9-UP; Wed, 06 Sep 2023 05:25:52 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=YHfquV2eUUSxcmr0YyMRit4F2JF0/ZTgJptsqGFc9wg=; b=rhEcJWO5tZy913rX1VaQt4LGb1
	OCJFdHQUcEVcr6vT0g6APM3UJo/Nh0mho1Awk/KvpB8Os40YTRsm49jc3dv2oTXToh4R5ERLlYNt3
	l9fm8MD83zVU+7DlylNScYJ2ajNKnO693BTee7w0EnlbcMWXfJUf3E67/ElOHkXl5MZE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182639-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.17-testing test] 182639: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    xen-4.17-testing:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-qcow2:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit1:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit2:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-multivcpu:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-rtds:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-vhd:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-arndale:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=d31e5b2a9c39816a954d1088d4cfc782f0006f39
X-Osstest-Versions-That:
    xen=699de512748d8e3bdcb3225b3b2a77c10cfd2408
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 05:25:52 +0000

flight 182639 xen-4.17-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182639/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host         fail  like 182630
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182630
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182630
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182630
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182630
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182630
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182630
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182630
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182630
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182630
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt      3 hosts-allocate               starved  n/a
 test-arm64-arm64-libvirt-raw  3 hosts-allocate               starved  n/a
 test-arm64-arm64-libvirt-xsm  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl           3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit2   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-vhd       3 hosts-allocate               starved  n/a
 test-armhf-armhf-libvirt-qcow2  3 hosts-allocate               starved  n/a
 test-armhf-armhf-libvirt-raw  3 hosts-allocate               starved  n/a
 test-armhf-armhf-xl           3 hosts-allocate               starved  n/a
 test-armhf-armhf-xl-credit1   3 hosts-allocate               starved  n/a
 test-armhf-armhf-xl-credit2   3 hosts-allocate               starved  n/a
 test-armhf-armhf-xl-multivcpu  3 hosts-allocate               starved  n/a
 test-armhf-armhf-xl-rtds      3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit1   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-thunderx  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-xsm       3 hosts-allocate               starved  n/a
 test-armhf-armhf-xl-vhd       3 hosts-allocate               starved  n/a
 test-armhf-armhf-xl-arndale   3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  d31e5b2a9c39816a954d1088d4cfc782f0006f39
baseline version:
 xen                  699de512748d8e3bdcb3225b3b2a77c10cfd2408

Last test of basis   182630  2023-09-05 07:08:44 Z    0 days
Testing same since   182639  2023-09-05 22:40:32 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bertrand Marquis <bertrand.marquis@arm.com>
  Julien Grall <jgrall@amazon.com>
  Stefano Stabellini <stefano.stabellini@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          starved 
 test-armhf-armhf-xl                                          starved 
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 starved 
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      starved 
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  starved 
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  starved 
 test-armhf-armhf-xl-credit1                                  starved 
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  starved 
 test-armhf-armhf-xl-credit2                                  starved 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     starved 
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                starved 
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               starved 
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 starved 
 test-armhf-armhf-libvirt-raw                                 starved 
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     starved 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 starved 
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      starved 
 test-armhf-armhf-xl-vhd                                      starved 
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   699de51274..d31e5b2a9c  d31e5b2a9c39816a954d1088d4cfc782f0006f39 -> stable-4.17


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 06:29:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 06:29:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596224.930023 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdm22-0004L2-F5; Wed, 06 Sep 2023 06:28:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596224.930023; Wed, 06 Sep 2023 06:28:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdm22-0004Kv-CM; Wed, 06 Sep 2023 06:28:54 +0000
Received: by outflank-mailman (input) for mailman id 596224;
 Wed, 06 Sep 2023 06:28:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdm20-0004Kp-L3
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 06:28:52 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2061a.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::61a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a4c5295d-4c7e-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 08:28:51 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9281.eurprd04.prod.outlook.com (2603:10a6:10:36f::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 06:28:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 06:28:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a4c5295d-4c7e-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Fwp+vRxmohLt156SPCA1LXo//vaeoNBhmpXZT2aDPjxuchNWoWXHE3TgVOZKxift7UiHopyrnnX29y7IDYw3F/ufg2JSd+3dUvPS82BM37LBE+NIRHA0m9DkATcsvCmFEU0yMVfhH2NJbQKHI5Z5vL8bWUyAb9BMueBPijZZkvG8nZTlvhxt+FAncxfBjnb19a1by/Shs3e+VNcLT6oCTl/YYsOo4aQEgXKGNp3Wf7alyobCeDvTWPLBJ636uz/IR7t4p7XnDda/UPyZFhtxRil8QgTmMUNuhW22+eq9z1LxF2BhGgdiZvgGiYqQ3u8Dwi5/EYqlmZyiNZN//asYBw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=BwrJ9v0tPmlWK4vV3wJoLU6KbLFOGLut1bdotv1hGhI=;
 b=TxY9cVm8bSrJmoGyn85Y9+qtpbrYK0zpzH+ViOiAH72b8SjpYTMuZFs1PWEmVtYAxsOVBEiAmLRqQcz5GARCLA/fIjVKZ7ASIubllYQeECr5dAFcOllVFxDDUByPtBX163LXv+MTKqnDkc+ADUZlmrGkpaK1u8F2hmWglYdXxsyY9Cltr/zhNZ/dv9Co6XXvT538xpzJDwx7F6AHC5T4KSbryvtS8eV8ou6jBS3losXM6W4moGciv71ceFpIIPwEA3Ckkns6tZ7HLGS3rGG57cV6LmAWGvh6BkOn/vELnH04N8YPRTyx51d5GKnfeN9im0aQkYi/dNpQyy7fLxfaXA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=BwrJ9v0tPmlWK4vV3wJoLU6KbLFOGLut1bdotv1hGhI=;
 b=oNdp0r6uK7cFN9BI/yqf85cfe5CohgIpWrBOWTfXcpOvrgbVlITT+opZOEwLgjiRWa5fcv9QKqCsMuzgApS+jUUdrOqUfu7L1W1bhL/61ysQJjhSUPk9/hhHtxVVLd8UBjUBvuNJ01XmUB+gwH8GB2ZVoqIHGzyg8URluuT8mFPjS9LBVMI492xzGDR1wfglHQ3foc01CR7sWu3LtGj64EITBBqzFWULkBk7InTpEaYiohLcXTB7FstRiTLEswczdBbvYHbTQnxPn+SjA+hwPPWy1Oma4xb2dPZJZ9G3ptN+MGurYCnoqbHp2LUT6gGtL/ZQjk16CSGzjLIGiRDHcg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b782cf54-246c-9226-7246-47ffbd00dea9@suse.com>
Date: Wed, 6 Sep 2023 08:28:41 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH 09/13] xen/common: address violations of MISRA C:2012
 Directive 4.10
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>,
 Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1693228255.git.simone.ballarin@bugseng.com>
 <fe1768342df0cd9315af87c83cc6d8d09f61b983.1693228255.git.simone.ballarin@bugseng.com>
 <00d67696-7895-f4cd-de0d-0c24f937deb9@suse.com>
 <be7ba4ea-b5e9-cc00-a8d1-0fec82248b8f@bugseng.com>
 <00866371-7adb-9cfa-267d-ee78cf14e68c@suse.com>
 <7d5244fe-d89c-8878-b16a-a3345426de1e@bugseng.com>
 <6ea28c90-68aa-4a14-e352-2bcb6e42a76a@suse.com>
 <814c3aa1-dbce-97d2-f526-93e185d61438@bugseng.com>
 <alpine.DEB.2.22.394.2309051514200.6458@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309051514200.6458@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0091.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB9281:EE_
X-MS-Office365-Filtering-Correlation-Id: a2f3861b-c956-4100-7a56-08dbaea285db
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rR0oKzl133WI9bJx3lKwz0UIWdA7wIJnd3miSk5kwfMqNmNVSs/nepBc9SXdqrJseZVymCUVEIfeNnF/av5hrVoOBSNg58p9qwd7Awse8hk5mCgu1CbMRKQB0+E+mtcdk3gXFvE5oqMvfyb+6hsbVfa8/TtN6I2XXNvmReGCGMxedpQq1WjVnKWuWYmqW6r38/W6ebrGfo3jHpD+R2kbAdjxS/Yh374+5gGQS1IwIw6YTCqkp6s08wEc1Has7RNNLcIMakfY8MOq+cGZFwBgawpxagKeZGsPVjgrlKaflcWCjbeidoGFtVSuS2T02EVGf0OathDnQS49qtDVToZ5r6vZANMjvRNCAnWTnjcPcv5bY9b/amTFm5kGiYmoeP4GjSj6Oa2tLAniRbvEWZR4WdLjOdf+jvgwpaI40arF8IRUyydP1uS5E3gyyd8aXj/EmkqngLtreLWLXdAgwC+gZY62kgORULeNTRdJOGkbd0NAAICpxTDX8adlrsIi7UkWOqfC9d1DnNu8D+PhLjDdL1HC7MAofIgKSAhPkPu0T81HaPb7VXPJmBGdoB3Ccr8TLGp4EATZMFmKw9UiqZWwYXsYbpvV0waZvI3LKXbRzKEvEE8Cqoy57KGi0tKcAMaHDeY4YEMM+zq2iEy5IZRzDQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(136003)(366004)(396003)(346002)(186009)(1800799009)(451199024)(6486002)(53546011)(6666004)(6506007)(6512007)(478600001)(83380400001)(2616005)(26005)(2906002)(41300700001)(66476007)(66556008)(54906003)(66946007)(8936002)(110136005)(8676002)(316002)(5660300002)(4326008)(36756003)(38100700002)(31696002)(86362001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R3Rqd0NrVWxhUE5qeUhqanBtRzFLenNDYXg4TWxLTDZ6Y0JHOU8rbmpEaU1w?=
 =?utf-8?B?dSs2ZHZ5ZXFlS2VJTXdjOGk5dGNPK1hacU83azN3amlSRlNIYnNyYlh1RXNh?=
 =?utf-8?B?Y0RURDVIMVkyTjl5bW55WW5kTXJTYU9vck5RWDZyVjVoWW9ON3dBNVFXcTlZ?=
 =?utf-8?B?NHR0QjhCSEVVZk5zL0hPYUhURFA5SWhwNFVDK3NBNFc5SWswUjJ6VWt6R1c5?=
 =?utf-8?B?QTJDQ2tyWDlaOFM1bXJDUForRi9oRVRtME1aYnY4REFEWHVOQUt2WnR1S3Jn?=
 =?utf-8?B?cndyclM3REp4SjhtK0doejM4OTJENVY4bC80Z3NUQTRBQmZza2s4TnI2aDlE?=
 =?utf-8?B?b29jaUwzMXFZQTB5d0lzbTdNV2s1cWlibzVqVFNZa1BkbXV3T3lqM2xtTHJn?=
 =?utf-8?B?aTZycDdIYWlyOXJjVG1jc2gzanovbGIrZVRHdzlIbnNIWkhvOFpVUFFqN1p5?=
 =?utf-8?B?bXJFbmJON2dsZ0pEOG8xbWFxM2dHa21aeEtqcVhIdmtFeHgvTjJIdXIwclBK?=
 =?utf-8?B?TE5DN0YwNUs5emxNZmoySWNPczVPYzB4SzcyanlXNmhkQTVNS2N1MVJkUDIr?=
 =?utf-8?B?LzdveXJ2anQ3dDFKL2NTZVNVM0ZUbVQ3TWlPVDA5ak9ZTHh0QzE3SEdGM0pl?=
 =?utf-8?B?YUhZeGFCSXdKSTFUYkJWVFhraXEvNVdCRVdIbjF4ODlKUzNRNmI0UkY1cmEz?=
 =?utf-8?B?RmR2VzZGKzlYcWVBaUNYaUN0ZHdmS2N0RTcwTG00QndNdFFGMml6ZFZPckFj?=
 =?utf-8?B?QjVhY0pYTFNrbmcwOVB4dnhRUTY4NW9Idk1nUnJCZld3ekt4S1NsSVFwbGd1?=
 =?utf-8?B?cHBybG5TamlGdG5jc3JlOTg3S0ZvZ1VWU09zKzlpT2w0dDBlWk53eFBVMmJ0?=
 =?utf-8?B?WFcvMnl0bE50OUhUeWhsMUVFb1FxRkl2V1FIZVpsMXZYZDhWOTRENGRSQmUy?=
 =?utf-8?B?Y0hZa040RzNSTVM2RGo4T1pFdEJqTTQvTzQ2WkZKNVVXMzNQdlN6TkpRV2Qz?=
 =?utf-8?B?bUxQREVMOTBRbndpcGxNNElDRzVjTDRySTZDQk1UVTMrcHdDM05aRW5GcE04?=
 =?utf-8?B?d3ZXbFBwRXJuM2QydDlwRGVLUGZ5QTR3YWpWZnFDREUzMDA0a3pkOWhSb3ZE?=
 =?utf-8?B?SHN5L2NRQ2l3S1BPYnpWTjM3VkM2U0dIekhIYkxTOU5lZTRkK1RBSkkvVDRN?=
 =?utf-8?B?WitwVE1lVFNtNGlvOGNYcGl5ZDZaQjVhcmZvNWNEeWhuN0FTakczMTh6R0FI?=
 =?utf-8?B?ZHlsOTVEdXA1LzZQLzN4SFZPZDBKOTB1RXpRZXdEN0QvY205MWtBc0JwZlhP?=
 =?utf-8?B?bG4wNFJLS3RNWnJqUmdPc013b0ZxZ0ZBL0lRMENvVFVEUnF6dXU1cURwU1hn?=
 =?utf-8?B?a3VFQ2QvaFU5QjBTL25EZC95M0RuSEloYnhkUW5GRzBveXU2VVZnTkw1NlFm?=
 =?utf-8?B?SW5VeG52YllVODZUdnMxR3JJTVRiUE53MitxMWEvTFJQTVlUMVJ3b1dsRkpP?=
 =?utf-8?B?bDlpbW1YRGZaWHBEaHhOc3o4MDZRUHh3d0VIT0p1ZzhZa3dVQ25rY0lJeUU1?=
 =?utf-8?B?d0VXdzRDMXBGUjI4bjBUSE0wRXpDQWp3dkowT0JyUmlzenA5VUs3N2lLRjQ0?=
 =?utf-8?B?VDBqV3JqUWVxZDJEYjVOQ01xdjZXVGZEOWl6TFlwNEtoTFo1bmxSanVONkZF?=
 =?utf-8?B?Mjhmci93Z05TUElGdFkwY2g5M3lVREtDYjZRdERRcEwwaEZTUldxbjgyNTN0?=
 =?utf-8?B?UEkvNGFjNFZQZEp0Qm0rbERmWTZrQzltc2FZS25jZEZtZUJjNHdsVkVCNkY4?=
 =?utf-8?B?QUZDa3dhQU93eEw1aXltRTdEcHVUZlZJei9kRDUraVo4SHF4emMxUzJPVUtu?=
 =?utf-8?B?K01HanEvaE5MTXhXb0ZXYjdvdERLd3hxbEFPYkl0dG9NMHcxZ0tVc2VGYVlN?=
 =?utf-8?B?MjMyYnQ4VDhwK3pNeGMyNUYzcXZ6SVhYTkxVblQ3RklIYmJKNDZoQUhXaE9i?=
 =?utf-8?B?QTRzS29qNmNEbGVEd0tTanMwa2MrajNVNFN4UkxndU5oWTc1M1NxTmwyQk43?=
 =?utf-8?B?d0dSTkVoTlFhbndMUHhjTXpOUEIxK0hHSTNRRnBKZTVNTU5hVlBEV3cyZDZw?=
 =?utf-8?Q?Ba93aC5YAKqabdRhRdRhjLTNT?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a2f3861b-c956-4100-7a56-08dbaea285db
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 06:28:45.9776
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5AG73fRn6ImAbscTc07wlgENM2FqgQ3G385DKzN88i8Lt9feurBdUqOHWpgIL7tJLwuQzBLRuSPGkmlio3W1ng==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9281

On 06.09.2023 00:18, Stefano Stabellini wrote:
> On Thu, 31 Aug 2023, Simone Ballarin wrote:
>> On 31/08/23 15:05, Jan Beulich wrote:
>>> On 31.08.2023 14:54, Simone Ballarin wrote:
>>>> On 31/08/23 13:10, Jan Beulich wrote:
>>>>> On 31.08.2023 12:08, Simone Ballarin wrote:
>>>>>> The danger of multi-inclusion also exists for .c files, why do you
>>>>>> want
>>>>>> to avoid guards for them?
>>>>>
>>>>> Counter question: Why only add guards to some of them? (My personal
>>>>> answer is "Because it's extra clutter.")
>>>>
>>>> It's not "some of them", it's exactly the ones used in an #include
>>>> directive, so I'm not getting your objection.
>>>
>>> My point is that by adding guards only for files we presently use in some
>>> #include directive, we set us up for introducing new violations as soon
>>> as another .c file becomes the subject of an #include.The more that it
>>> is unusual to add guards in .c files, i.e. it is to be expected that
>>> people wouldn't think about this extra Misra requirement.
>>
>> I can agree to partially adopt the directive: I will add a deviation for C
>> files in rules.txt.
> 
> Sorry for the late reply as I was OOO. Please hold on before adding a
> deviation for C files.
> 
> In general, I think including .c files is not common behavior, and
> should be restricted to special cases. We could say that exactly because
> they are special, they follow different rules so we can skip the guards.
> Or we could say that they are still at risk of double-inclusion, hence
> we should be consistent and protect them too. I think we should discuss
> the topic during the next MISRA C meeting.

Just one further remark right here: While including a header file a 2nd
time stands a fair chance of working (i.e. the compiler not spitting out
errors), that would be very unusual for a .c file: Every function or
data item it defines would (in the common case) be already defined.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 06:32:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 06:32:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596230.930034 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdm5Z-0005we-Ts; Wed, 06 Sep 2023 06:32:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596230.930034; Wed, 06 Sep 2023 06:32:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdm5Z-0005wX-R6; Wed, 06 Sep 2023 06:32:33 +0000
Received: by outflank-mailman (input) for mailman id 596230;
 Wed, 06 Sep 2023 06:32:32 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdm5Y-0005wP-N7
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 06:32:32 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062c.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 275cb8b8-4c7f-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 08:32:30 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9711.eurprd04.prod.outlook.com (2603:10a6:102:267::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 06:32:28 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 06:32:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 275cb8b8-4c7f-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GWjwORNcMoMqdStdALC1AjRJ39xrlI5aJXuA97CqAYe1mj+JB8oYwTRZ9HJA83KylNLlH4ERaoiZJRIjyYc7lTzLzP5E7EJcBynMn2WFOopM3ZNm5PuGxOkQUmZvfvcknHB7ilAxrTYk21YLBqezNRKrqXgKtaS6/gdh2DMGR0+25718u+rwVl8VWHfc3hjRKz6DGPpUbV/YsSbzdLvNPon3or1peScCjlHPXND56pgJaLzuvo+KdhFXD0Xb2WI6FAcmtOF25dc1SDWlyqP4Qt8/FARVKGlF/52nS3jF7HGkCYkVKUM55Md3lcL+NI3PKlNDomsUKD1/UqC6sdluug==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nUWmwin3pKqy2LcyeZ6RR9krFaO+29MQUinPN/EI4Ao=;
 b=UzPM9jCLfFvv47jPnNeoDTbQOPZhsWcfa+x+iLk7WXtBWfRgOe7QQpkU7F5BJ8tXYbgxdfAbh0beqyhwiLVQEExfQ2Xp9cPeuhkyZVKayBfKujvh8bWc1ivUiTPWFdoDbnuTsnFPpTFR+ZORgSRoF02WRGRWmXbfxHfVSOEigpOvlVpNm8v5SoSvjyM1WX8HpeJ0PwMeZ8/kJQ3viSfgwCln56zuIlYsA9vPLeYMfm7ylrRSeuPkpXqadl8HIPr0j+PcOZXOnAjo8Ft6ipxcMAI/p+YBNXA/vz8cHwMsXcfU/U6CEo5Nl45HP1XSspoG1WRMYFQcFp2j8mLkANXwrw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nUWmwin3pKqy2LcyeZ6RR9krFaO+29MQUinPN/EI4Ao=;
 b=VChuqZOhkStRZB5Rog21u9HqELntOnSBvMt4g9XOaBrhLoJLdSKJ7c9q4CDrLOSTVMvfxYtMSPU3FvEJtiD2YdzZEB0FsGKLhmyfn0mRiAYJRLxkA17A6bFLRnbuGeWcXyKHxTgm2B0M3ww/OND9Ooq6rv+u2S6Ma4de23QBhm+t/8BVjjXSgKVWfVZNqvus3oI5z+/g6+lmKEcXJwF/90fSF2bcc81igNe84PWrues4j7Enm2PBtGkcHiFAzxg5/MlPVowKBBFhCgorLvxR9Ai3hORmbj9Mz21t5QtfnSchXlpoVQOc3xcbiL+ABsZ+Csz0+ue6NLFJHHYSG+SCCg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <096eec08-04e4-638f-d250-3a4785a3309d@suse.com>
Date: Wed, 6 Sep 2023 08:32:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH 12/13] xen: address violations of MISRA C:2012
 Directive 4.10
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>,
 Simone Ballarin <simone.ballarin@bugseng.com>
Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <cover.1693228255.git.simone.ballarin@bugseng.com>
 <6ef4634e273a89582299061f1d14346572bf1d47.1693228255.git.simone.ballarin@bugseng.com>
 <alpine.DEB.2.22.394.2308281548580.6458@ubuntu-linux-20-04-desktop>
 <35401207-544a-156c-85ee-20e33a78f3a7@bugseng.com>
 <alpine.DEB.2.22.394.2309051519270.6458@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309051519270.6458@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0243.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:af::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB9711:EE_
X-MS-Office365-Filtering-Correlation-Id: 1205e20a-1a54-41c0-3387-08dbaea30a87
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	g/Wao83NGr5uid/euj1BZGi+zSerzzwf1ipgMzLn+yjxGzEZxEaZ9muTleqgPMh/E1yN951Xu36XbZj00Ych8ZQX0oeqC7Xjrq8dS6ysUCjzR68pxxwENfiUBLREooa29pMb+yd2dymDN+iHCuA/Nh+EvHTdZ8B9dRr1cGWlYk+GvT7Waowfe7v42XzxkUevHv92LP5sENwn3aHFXMi76pVM3tghZjboM8zWuKCp0mRIEPhmeeI8xR6H3IYuc2qrU6uVLtfvixBOKkF64PAKaNl0qeT07EXC6xVsT45pDRLYraFxut2fKUukiBl53a1vj5nXNoX8JtEnmtqAGkIPrjYVPaZv43CLB2oWc4BxEtEajmV0rq9zkYZXjAMOHSJPcaHC9tjL7wV6iPLaDt7iEGrVdPS6rU8uQ++cfabIPYF7aPFBakt1xBCNJ38M+hSf29SolJEoMIwtgoXEsdsDDC/Ic84zrrCQNnujnMPB00d715y0rJvaFtnLsG+nUdFQnhGvJR+baa97oUuO4c50gDXtrv5whiF/dEpeT6FbeZzpImiR0DPwnZ+XOb5HBuNBX8yxcyOFqnwnbPvO2aHyVE1kiBj0HzHnYA2FJ7SYsyQ34VoDT/BZYdActROAP9NQYZUWm8PGIiaxJreS66gL2g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(136003)(366004)(396003)(346002)(186009)(451199024)(1800799009)(41300700001)(38100700002)(86362001)(6666004)(83380400001)(478600001)(2616005)(31696002)(26005)(6512007)(53546011)(6486002)(6506007)(66946007)(66476007)(36756003)(2906002)(66556008)(316002)(54906003)(110136005)(31686004)(8936002)(5660300002)(8676002)(4326008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WGdmdmpUbjlIMW9xcHFsNVk3MmhSNlFjekRqVWErVXdqMWs3SjNKYVhtSmNQ?=
 =?utf-8?B?YVN2K2pUbk9GZVhNOEF0TGtpU1VXOE5ZVzMxQjlRU1FNck9lTS9KWHRXM0lm?=
 =?utf-8?B?bHErMW94bWVnNW43dFBTSEJ5aG8rdjZKMUlOYm5MemJtMnpBYkhjKy9YQ003?=
 =?utf-8?B?aFI5TnhSWnpoYWN3Y1NzbVB6UXFrTjVqNURCOG15ajZMQmtvR2pVa0RZbHAx?=
 =?utf-8?B?ejl2OTJOS3hkcVY4SmV5Z0xYS0orOWFubzZWdWgxQ2lsVlZvbmZNMnUyYzNP?=
 =?utf-8?B?aHRDMnI1eUV6KzZzdmloYWFkdEdDYXhMK3ZrdnVKRCtRRlBmM1IxYW9Gb2tG?=
 =?utf-8?B?ZUZ6Z1NpMFlCajR2THNJOEJyN3pOd0orY1pLT3hsRUpwNEl6TjNqME5ZZXFI?=
 =?utf-8?B?OG1BWUUzdzcyejNOT0M0cUpoRU9DWWpkb1Vxd0FPQjgzZWRhV1psUnlMdlpy?=
 =?utf-8?B?d2VFRS96Wkx4aDQybjhDMDVyNXdCV0JwYWdSbno2Z1ZZQlFnZHpSU1lmYXBp?=
 =?utf-8?B?SU5nREt3MUV0d3BPNXYwRnE5S2phcHhrYjNlNy9kaERZSnZ3RUZUNGo0elh0?=
 =?utf-8?B?VlpNM0lhb3JuZVU4SlhRWlcwcGgrYjlqU1BPd1pZejZWWk5YUzZRN0c3b2x3?=
 =?utf-8?B?b0JSVE9iTFRXcDhCOENFWjQrNnczSU9HWlBZaXUycnhUcEtYWThkWWFiVjgv?=
 =?utf-8?B?TFloUzVPWVpzTHJlVnU5TEpIMmlEL2NHbDdLcEdBeUQrSFNvZUlCanVMVXZ5?=
 =?utf-8?B?ZWtUTmFiTENaeHBvaFdvQ2xzd3B4SElkdzlHcGFwT3pHMTZCa0F2NW8wQXcv?=
 =?utf-8?B?OW1aWkpLMU1UMEMzOXFRUWI4QnZlbDA0Q0NnSVlQbUIrN1hVZGlaNzROMEd1?=
 =?utf-8?B?K0hUNXZVVEVpdzdVay9kc1NIKzl3M29peXU3WkVpcmMrdGIwbm44QjVPZXYz?=
 =?utf-8?B?OTd1S1VReFc2aElTQ0Y5b2ZxOUwzVkFvMDNZbkN2bC92dHlpaldZSUorWTNX?=
 =?utf-8?B?cWFocGg1dllaVUVQZTEwT3ZPV3lDZENiTktkRWdFNmtTTzh3bCtDVkZyOFN1?=
 =?utf-8?B?YUhjbWF6RmNpQmJrL3R3M1ZIdUFwNmw3c0FmQTJYSitlRk9id0hyaVpBZ3JJ?=
 =?utf-8?B?ZFNnQXpvMGZBQUxLMDRZWm1pYkw4eG8reStNalZpNHo1N2pPVHNyLzBIbVg3?=
 =?utf-8?B?aURuVGtIcXdhN2lPL1VQNklnd0UrbjZabHhnbFJhQXlVbGVZNzV6d01wbTRw?=
 =?utf-8?B?c2g2WEQrS2NzeEMzWnFpc2pmMFA1S1dTUWo1OXIyTjlOQWU1R1FvODJVZ0RO?=
 =?utf-8?B?cDVVTzlrSFpCZ1Z0aTAzYkdTbmdYUC9MK0R4VWhRQjJiM1pSd3FOUmdKNjl4?=
 =?utf-8?B?eW5XZTdVMFREV3ZKUzJCMUozWXlCOE1SUEVmeGlQUzlkMS9rUGk2eGxGb2ZI?=
 =?utf-8?B?UEhUZm4vSU5BblN1QU1rekt6bWl5SFRFdUJHQUs2Wloybnpsd1dNVHoxNy9D?=
 =?utf-8?B?WkFVVWgrMTZUT2lNYmM2aTRpQjBVMU4zUlhnUnF0NXp2VFp6WXY1NXkyUERW?=
 =?utf-8?B?dmM2NDVXcXlWZ3N0SjhJMGNvY2hNNTM1eFhleHRnMm1yZHZCOFpoZkpqdm9G?=
 =?utf-8?B?VUQybk5hOGx3VXVXaW1SOW1RRlhUWWhqWVVOZGtxZml5T0xyQWVFTy9EczEv?=
 =?utf-8?B?Rm9WeTQweE9CNXNJeGFiNGFRc2VjRnI1SGRBa0dkL1JJcmZzMTNoYlEzVkRZ?=
 =?utf-8?B?UzNaazlBd0xCbHlaMDRxTEorZHlrVkpMMEVyblFLNTJGWjFZRDVGR3hvTmZw?=
 =?utf-8?B?T0RJODhNbUQyR3dkVU1jdE9qYlBwbXV5MklUQ0t1dFJWTmRlUXc5bVN2NVlS?=
 =?utf-8?B?U0Q1NGJYbDFTNnRzenhjN002VUNmS2xhV1U1UDBUb0lrTTU2aXI4dE9XM3hz?=
 =?utf-8?B?SEI3V3FOZ21wRVkwUTd1NFZ6Y2lIVlpSVzlNTDd3a203aDB1UksrR1lTVy9h?=
 =?utf-8?B?NXRUL0EweDlNUWZwdHRhTEVWOVRKdlNaeExXRHlsbjIvbFRJK3h0K1I1alpW?=
 =?utf-8?B?ejNGc0tqeDBVQTh4Njdtd05UcVVXWWx3N2kzYkJ1Q1ZtbHZvSENuVFRVSnly?=
 =?utf-8?Q?9kyfxXAQdN78RX+6GatZZS2x+?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1205e20a-1a54-41c0-3387-08dbaea30a87
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 06:32:28.3645
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 91R5GkMdpay+0bhV6kUah6NEqJVPoaISsKYVX1zdgoHRDsJi6puY/y7WfFUxhd0MfgLKIloEJMOiXC0BGdfhfw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9711

On 06.09.2023 00:27, Stefano Stabellini wrote:
> On Thu, 31 Aug 2023, Simone Ballarin wrote:
>> On 29/08/23 00:51, Stefano Stabellini wrote:
>>> On Mon, 28 Aug 2023, Simone Ballarin wrote:
>>>> Move or amended inclusion guards to address violations of
>>>> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
>>>> to prevent the contents of a header file being included more than
>>>> once").
>>>>
>>>> Inclusion guards must appear at the beginning of the headers
>>>> (comments are permitted anywhere) and the #if directive cannot
>>>> be used for other checks.
>>>>
>>>> Mechanical change.
>>>>
>>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>>> ---
>>>>   xen/include/xen/err.h       | 4 +++-
>>>>   xen/include/xen/pci_ids.h   | 5 +++++
>>>>   xen/include/xen/softirq.h   | 4 +++-
>>>>   xen/include/xen/unaligned.h | 7 ++++---
>>>>   xen/include/xen/vmap.h      | 4 +++-
>>>>   5 files changed, 18 insertions(+), 6 deletions(-)
>>>>
>>>> diff --git a/xen/include/xen/err.h b/xen/include/xen/err.h
>>>> index 2f29b57d28..a6323d82d7 100644
>>>> --- a/xen/include/xen/err.h
>>>> +++ b/xen/include/xen/err.h
>>>> @@ -1,5 +1,6 @@
>>>> -#if !defined(__XEN_ERR_H__) && !defined(__ASSEMBLY__)
>>>> +#if !defined(__XEN_ERR_H__)
>>>>   #define __XEN_ERR_H__
>>>> +#if !defined(__ASSEMBLY__)
>>>
>>> The original pattern was also guarding the header file sufficiently,
>>> protecting it from double-inclusion. In fact, it is posing stricter
>>> restrictions than usual (not laxer). This change is unnecessary?
>>
>> The MISRA directive asks to use one of the two following forms:
>>
>> <start-of-file>
>> #if !defined ( identifier )
>> #define identifier
>> /* Contents of file */
>> #endif
>> <end-of-file>
>>
>> <start-of-file>
>> #ifndef identifier
>> #define identifier
>> /* Contents of file */
>> #endif
>> <end-of-file>
>>
>> I do not see any reason for deviating, but if you ask that, I can do it.
> 
> Let's follow MISRA's form.

This is what I strongly dislike: They could be less restrictive on the
exact patterns permitted without impacting the goal intended to be
reached. But it's all as simple as possible, not as flexible as possible.

In any event, if a transformation like what can still be seen in context
is to be made, then please #ifdef / #ifndef instead of defined(...)
whenever possible.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 06:33:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 06:33:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596237.930044 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdm6u-0006Wi-9J; Wed, 06 Sep 2023 06:33:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596237.930044; Wed, 06 Sep 2023 06:33:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdm6u-0006Wb-6B; Wed, 06 Sep 2023 06:33:56 +0000
Received: by outflank-mailman (input) for mailman id 596237;
 Wed, 06 Sep 2023 06:33:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdm6t-0006WI-Ea
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 06:33:55 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062b.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5972a018-4c7f-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 08:33:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8842.eurprd04.prod.outlook.com (2603:10a6:20b:409::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 06:33:52 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 06:33:52 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5972a018-4c7f-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kHfSlgF2ZTsfepuMPuw0E8M5/5CQWK2mWtLUp19c4n0pNmIQd7+0HOjXs4CH+rZe7c5YCyoxvcBn11njsignX/eceGTFmGneolf+J9SOE7Wv+IrKBkmmSr5x9LFYFMrkIXiotzx/O5aM+A8K1IAr6knRRgSwvkyfIb6YPcTsRssoo/eq0Wuju7KOgrgA4bnRIDnE0/4lCcGubA+Wk3VTi2vrkNuXYzPvZplZEX3/+Kx9NffhOE7srPkCuxHooEhjxrKjIR8QmxxiLOYoCmcloqztbhr/LcbtI0055vpk9GRkioKIdY/qxhhdFNDiyY7f7jmWIxCRiv4rj2b+WyPl3w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=U5BGLBNicceP2/lgYPNwLZNDj1v04gEpsGB773amOeY=;
 b=nh0ggBWi3aS9XddLZH44/+0hLbxQk6RLQr/fFOcqgwdbOgEev/36xks+1gckmhZHLv6No5Dn/VsPzmDKGdr5QI1TccatIJJxVs2ZNJn+IXBbNrEmcJ4qyZd6PQmhzvOGVKLJbwETz54l119hjXEw6ul7FH4jkjbQPPZ6bl3vEThiEooe6jlaD72vUjaXYNlBso9eRF8BkhYzzn2sxR4giLKfmvK0nAAbTamCTSGkIN3jHKUQfjO3JBpcDqS730nvFF8fNcaLY4SiTt1GHPA1kdoZoNgj9+a5f6HYmz+2fRZQ95czSqT9OAfjR25ifRgBgsL2dD2/8tupcmo/YS9xlQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=U5BGLBNicceP2/lgYPNwLZNDj1v04gEpsGB773amOeY=;
 b=mh8p6r8S+CGu7SHcInqqAAgzGqS4BpnUPXslVIgZJU22kLpp6Vrxt9Cs/F1SKQNszTjwsjdCc/PMYtUEXkDzsJzSdrs2n2v+M+R1GJ8oSCcW4UQ7TvAyoCrX0Im4WYHelbkDSa9b/ShVz/guCTY4oYAlGl+3ngIPapWElIA0Ubm9PnbDkemrSO8eyJ/53OwllI/Cx660MVIWI+80FlWV6QRNBZo1Gfcjhg1nFhX85jn9igFgzWQt/y+dQ8jaePeqg1zwdAc1Yiwhi0i6RijUpq8va0JwHZp37z3I2LZkEES06G8qP2hrWTGCT0wWp5BnQ/TykbldYxfCslWDQz2TPg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3d811598-54b1-fda9-35e2-7a2ace8595fb@suse.com>
Date: Wed, 6 Sep 2023 08:33:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN][PATCH v12 11/20] xen/iommu: Introduce
 iommu_remove_dt_device()
Content-Language: en-US
To: Vikram Garhwal <vikram.garhwal@amd.com>
Cc: julien@xen.org, michal.orzel@amd.com, sstabellini@kernel.org,
 Paul Durrant <paul@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
 <20230906011631.30310-12-vikram.garhwal@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230906011631.30310-12-vikram.garhwal@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0046.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4a::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8842:EE_
X-MS-Office365-Filtering-Correlation-Id: 351e7b13-eedf-4fef-8d7a-08dbaea33cc3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7ed3TnEkYenYSAdCOA7fp1hrPfPOA6sn6M3QkiZxwOMbodDkEazLFTEGGDkneCDTEVi48oAVqRS/YuoolOjhxKIsBZtoOZ1TPliBaZUW7u5jsH4lQr/xdlvZp7F37ElTOXiStPxrzn0svkFLInhEf4u8SM7CD+NTW+vm6r6ARS5cc6YlCkmOsttQSG+AOcV59bpFfFpGSHg3hkZeAaMy/C+E693/l75PxLe7ZY5LwweHZMDvR8HajH91409Cu3LpX8miM3vHXnIXzKJXFBAUbnaa8hBaji+qesl9mDJ+Dk8dBMnjv/I/NVQhSr0XZ79U/E3luk0lYvxBkPfnGWJknHjJwTHw6a1wJlLytI0ugA5xi7hE2AmYISswkD6vDPBP1JkPluVgY0vO15cRRzh1alv0n/nF5wGN2BNM51MaYDkKtKVXaspIIRtV5h2LgCGNfXsJiuBbsAkgh0LPE7D1t3Rcq5lcZ30aMNdG4z4noql+CrBAZCBvdPXHacm1Le1brF89nx085KM/ohWl5zv/esjqLpwg9Th7Fg1fxyKLVKwsPf2tI6bWu/tJtSv7auJkBtQv9z63/IQRQovP9Tk3+wCBdLyWtaU/2iKKSQDpYAkHjHtPneeJz53mgW4OubEHF9d8qwTktfSbM3FLINxSJQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(346002)(39860400002)(376002)(136003)(451199024)(1800799009)(186009)(36756003)(38100700002)(31696002)(86362001)(31686004)(6666004)(478600001)(26005)(316002)(5660300002)(6486002)(53546011)(6506007)(54906003)(66476007)(66556008)(66946007)(6916009)(41300700001)(8676002)(6512007)(2616005)(8936002)(4326008)(2906002)(4744005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YjZQems4YkU1QmZEZDRENzV5ZXptN3kwdnp1ZmlyNGd4WmFKRlZYTThhbEUy?=
 =?utf-8?B?c21uUUxBdlR4YXJ6RHhNRGVpajNPcG9nWDBGdGdSM2k5aHNad05GOWV5bjEz?=
 =?utf-8?B?R0lKRFFmRDZKY2hIWjhjcHdTK1pvVkh2S3cwMVBJUWF1TmtKeFJJMjgzZlFq?=
 =?utf-8?B?MnA4Si9RWDBHaXZGakpyVy9COElLWkRTekFIMi9oZnpnQnRmdXJqekVtMEpN?=
 =?utf-8?B?R3o1emhpakt4OHkvK2k4UGNzUm02TE16aGFpNU5sa01pWHRZcTFEenZpSFEr?=
 =?utf-8?B?cHFwKzhBYlJmd3EwOWVqMWY4ZkFOTzdZbzBFSXNvcFJ3M0lIekd3Y0gvdTVL?=
 =?utf-8?B?K0hzL2VpUTJRbzNsTGhWcjhTWkJWVWdxWXBTVDJBb2tjZktlenFuSGhCMTNP?=
 =?utf-8?B?cHVnd2tnczRuOEppcDd4cjZRMVBiR2RERzMzK2FlYUN2TnZDc2xOQVVGWktY?=
 =?utf-8?B?RnU3RFNSVXp5bWYwUmF0YWUyQy9qSTAzOVFrYU5aeEs2Myt3NEN1YUdOM0FV?=
 =?utf-8?B?clUwSkVVTVJGdm5OSWROdk9IU2U2TStKN2ZzbzliZnM4TXU5c1lwZ0ZIT252?=
 =?utf-8?B?elpLYk5JVFNYUFRYT3hPd2JFWEt6L3k0VklXVnhZdlc2QkVVK0tidEJFd2tn?=
 =?utf-8?B?NEswMVhSV3FKNGNHcmh6M0swNTI3bm9JSnExYnZ6a2c1NDhEUUk0V2xyOXBy?=
 =?utf-8?B?eW9YWHIxZWJGRnJHQkh1cUVkcGRlVlQ3Q2lWdnZUTC9DVjcrcmNIWE1XekFZ?=
 =?utf-8?B?U2VuT3RBU1J2MFVTZ2ZBa1VxSUFuM25QRFJLYk5vQTdpdldzS3RDNk4wekFz?=
 =?utf-8?B?cG9xazNEeG01cmFOMk1BRC9CN3BFamsycXhOQjRXWWNBZSt0Wm9xOEsvYWRv?=
 =?utf-8?B?MHpadXI1Q2R5YjFzNklIMGNSMXhCM1BVaTBES1RRZ3FjbndvbjBFclRHd0VO?=
 =?utf-8?B?VEFnTnk2UkI4L0l0bERCTVNVd2p1c1R1bXZoY2dvOE5VaTVCRTZvVVFMdTBK?=
 =?utf-8?B?QnpXUE5qazFLdzVoZGxTRGM4YUhqcTRFN3ozZnlqRnAvZ1lvR0R5QlZTUGl0?=
 =?utf-8?B?VmM1TWhHZXVhK1JxRjV2bkk1bEF6QzRTc3F4a2JURkk0MzdjUUIzU2ppeHRJ?=
 =?utf-8?B?MTJNWTJVNmQ2eFBSZlJWUDdnVldIeGtuZ3NIUFEzQ29FalpmOVpwbnQyZlBn?=
 =?utf-8?B?bFM3SmtwcnZOOWpVcHlqVEVoR1VrWk1EclRUT281Sm1YdzYrbTVTcnhZa0FV?=
 =?utf-8?B?cVFXbXVBUmtMeXJEK1ZtUkFSekVMMk45N2E1QlMyQWJPQ2JZQXFjTE5lRjND?=
 =?utf-8?B?U0RWVDllYzdOQVlvdS9kWlpoWWpXUGFwQloraEN5NEVZbHhGTVhKa2plTFox?=
 =?utf-8?B?Tk5hOFUxVFkwMlo2L21pYno1TVJDWnF0RlJaQi9zeXViT3VuSnZHa1RoZTZs?=
 =?utf-8?B?MWpGSGJDaE9BNGZWb3YxZVQ4amZjS1RwckkxZUhLOWRFUzBOUzcrWVcwQVUw?=
 =?utf-8?B?SmlOT1o1dWVzNFhvSFNpNjZYTUg4RnhiZ25OZmc5U1FSOGlYRzlQbWdGMGJL?=
 =?utf-8?B?b2doTkIycWhHeGthQWp1TWJtaDMxd0tDQkFzYlF2c0FLMkt1Z1ZFMUNSTEpB?=
 =?utf-8?B?Ky83SzZPdlZQYXpIeFVQaFh0ek9HUXUxVmZyb05WdWdGTHgrQUMxaVJYeGNF?=
 =?utf-8?B?YkpXV1lLQWVuZnErNFR6MjFwNUdmOG1aUXpvanYvQkF0alFtME1DL0xRQkJB?=
 =?utf-8?B?ZVFUSTc1RjJ4cmdRNnN2cmIwM3BXUmp2MVhkOFJ2RjBmN3Juc3VaODY1VnZQ?=
 =?utf-8?B?Q1daQk0zOE5jdTVMSkNQN0xWTk5zTkg0L2I3WElTUHFsaE9VNWRaVndTd3dv?=
 =?utf-8?B?SE5rOWF0d0puWHhydzNqdkk3blBmMlhOdldveGZWbDlXcllsb2ZYOGZCREVk?=
 =?utf-8?B?N1FPZmZ5dE45QWtmRTBBV1pDMWVFV2YrM0x6R0hSRnMwYjZFQ2Z3aDNQZW5l?=
 =?utf-8?B?ZnpCVU5RQjNDby9GSFV0TXJZVUs3ZUJYZU4yN2lkZ3BnN2diNm1BR3Uya09k?=
 =?utf-8?B?MERFdGhNUkF4QW8rSnRHbE9zUytodFdtdkU0V3BVekI0ZzZXa0hoaUdZYUVT?=
 =?utf-8?Q?wUOpu8hPCZIv9drG1cO8YvD8A?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 351e7b13-eedf-4fef-8d7a-08dbaea33cc3
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 06:33:52.6709
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Go7bOt4pstZvryD6tel4GWb+N5O3eGanYpm1xEqwoN+4FAqKPcnfA9N8d3qHiJHzFXB7iF6Ao8pXzaFT5H79Pg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8842

On 06.09.2023 03:16, Vikram Garhwal wrote:
> Remove master device from the IOMMU. This will be helpful when removing the
> overlay nodes using dynamic programming during run time.
> 
> Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>
> Acked-by: Stefano Stabellini <sstabellini@kernel.org>

Since apparently required from a formal perspective:
Acked-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 06:38:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 06:38:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596245.930054 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdmBI-0007Mc-UN; Wed, 06 Sep 2023 06:38:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596245.930054; Wed, 06 Sep 2023 06:38:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdmBI-0007MV-Qi; Wed, 06 Sep 2023 06:38:28 +0000
Received: by outflank-mailman (input) for mailman id 596245;
 Wed, 06 Sep 2023 06:38:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdmBH-0007MP-Cw
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 06:38:27 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2054.outbound.protection.outlook.com [40.107.13.54])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fbb32dcd-4c7f-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 08:38:26 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9500.eurprd04.prod.outlook.com (2603:10a6:10:361::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 06:37:57 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 06:37:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fbb32dcd-4c7f-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Y1CacfBx0rm/PsOSapGz7b/f2np0jV8yQUojq3eqjHxcKb9ztIAnEdQ3Y97CLnmpo7eAmxnlxg6gdBNDSGKxo7hPN146J2ijHWgdF5rWK87f5MNvdw3ta94MD2wsuKZr26f6B0Vay77MXZi8za9Fsyn4vKiZ6x4JDaEB0n1sUUe5sGiHQAP4EyLqy08fYM9P9Bjp99LIfD+96Roqe5SkAQ3S3aaqlDS+ChkpSe5B+0EN3aX4RTKrXY3qEnM/zJVntOruGtBj3zxu0Qzem1egRh4l7eACQ2nXdtx3IC6iUI2XQX7xo3Lh9Mj3Pj4Pr4YGlo2G3nvjgk+QhWdcwdADxg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=uIhasFUZms2bFJw4LIJ8tQhTJ7afVzol7nBkEOLIXuI=;
 b=WZqw3bGVQ7gfiBahBiO9OnwV/fCE8WnS2tZu/FZ2mThFm2506wcV4BF/XVQriIJTTa2j010Idympc5VXQRNtdd+OmDx06zxiI1wUE4ir81PzixaFP07155gBFhWVaLNshioLsmXL0v/tk4dcjb1C+XII81+b8jC9XbRWvvqhlMYybIemgxAQYE6vXq8v3a4ynvwMFE2H816X4QTbxg1iNLhhm/DVqXdcE/TQGISctFqwnvkbUh1DfrmUbO+2CtCr7CPvFQVpA07GpmqpXw9E5rQAVSoN7uiuGG+Gd4V7eue0FlgZS+zdPmoLUi8YWSzg0ZOtii0T97wKc+ajWhzDhg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uIhasFUZms2bFJw4LIJ8tQhTJ7afVzol7nBkEOLIXuI=;
 b=z1mhOwegEFeAZG2GPZ0HKbqohhbQkYxg67cECpYytEGxGcbr1bXUeJC4A0Pup0RL5P7NsPgrPPdHNOn1nyEJ8CEstrxGS+HWu02khrghB46QUCJNzgUJ1fNTFgzg/VTEgriJpHl3eII8lSlU7smfFifdCj13YwXIBcfp7asOWKpeWmD6fZX3EvRUdUiikD/GRkF1IegYzXoW88hF3CRtyMw5dXkUs+XyEqgGAHN5Q6HqebeIhyiwBiwU6xFJldsZ1utF6rgGRK5LMTxIRHGxCQZcJwnfKODKiGOBs7ES8qbUiSn9nTIhW21qLuDRqA/WweDGDcEXyJaDgbPWNShx5Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <343c335c-2fe8-db79-1023-b6631304c670@suse.com>
Date: Wed, 6 Sep 2023 08:37:54 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN][PATCH v12 16/20] xen/arm: Implement device tree node
 removal functionalities
Content-Language: en-US
To: Vikram Garhwal <vikram.garhwal@amd.com>
Cc: julien@xen.org, michal.orzel@amd.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 xen-devel@lists.xenproject.org
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
 <20230906011631.30310-17-vikram.garhwal@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230906011631.30310-17-vikram.garhwal@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0128.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9e::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB9500:EE_
X-MS-Office365-Filtering-Correlation-Id: cdec78a5-f781-4460-252b-08dbaea3ce95
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GmP/izdX3bXJNqNJlg7L3hg7Wr3OPhm3z9W0iG/9/PcQ6oLKy7h055Zw5Z/zqyDQCxdhiPvjAwDh86zwe5qPoKKGbjBCpgE12fTmGbhcdgfdHA0986qwBTtu/E7sKLODdmsRCuSpmz0bgBN3UpLf6SO+RXq4qulbVmmysgvDTr4UDgJelGwzNMYQFjWUhpOYAzDxpkIr2M74FVIORQuNqbdvnWFNcMDbIiZElzgZ2jpCbiFYZQq5XpQhr0l87BMM1c2XLY/F5GqFawBbeo+NRv77uzbwZmXnF2rPxvdyh5wl8M1Fmkb+n+0mW0Fj1h6kINYTZ+Mxufxuva+KJzgS0eOSUdJ3roaDkBrG0xQ23t6z9mGlXZ3E8R4Gl0tD3pQn+aHuvUsD4OUqXTImeHJB9OZpUbNlEIcralUXwLe/2Big6UrU0a/3NXE78FKjKo+IZlR9U7y6vA/y8OcX1yFdZMvwrpogJPv8jo4kYm08URai3GEk7oBr5569wcz2ilyY+7KliCXSj0dXtntPpI61YvHBQ25lJLdPJDqXxiI6+xMeJwI1OLcrYJQLMcRRbRz0YiJgUpJCF+D1f1MHo//ZBH9/XdPv/CTL2x3vkcYupaajtx9q1dUMa1eULMMl3/SF5aAndEA4FZgaDUY7TFI7dg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(346002)(376002)(366004)(39860400002)(136003)(451199024)(186009)(1800799009)(31686004)(53546011)(6666004)(6486002)(6506007)(36756003)(38100700002)(31696002)(86362001)(2616005)(478600001)(2906002)(26005)(6512007)(83380400001)(41300700001)(8936002)(8676002)(5660300002)(4326008)(7416002)(316002)(6916009)(66476007)(66946007)(66556008)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eHV1Wlo5QmIvZEtaZ1BZRW5NQm9pYm5YT1JDTktQajhhQnBPdlpXR3FwTWdU?=
 =?utf-8?B?TTR0alQ3dXdiMzc2U291N0xsUzRhQklrVXFYL2kvZmFwVXRSeTlRRUVDV085?=
 =?utf-8?B?cjVicFNtV2tBLzNXSjNaWVNpSk1oeEJZRklNaUlmelZqK1JaQWt0NUZCbXcv?=
 =?utf-8?B?MXloSjBwWi9XaWtMbXdXcUYxdnpvdURYcVB0QmtOWEZZb25BYTFyOEx4UGRJ?=
 =?utf-8?B?aEtOanZySUJpQnhGNHZ0MGM3ZG5vSWhOTkp3Qit2T0FseXcyTFB2NlBMU2ty?=
 =?utf-8?B?NHN1RmIyQXhiWTIzL1hielhPcG1YWXlQelJ2alJ6a2wwWUlkaG4wQTY0SVVQ?=
 =?utf-8?B?MFRHOW9xYlVzVnJuU21yZ3lpYk0vSmRxQnkxdk9SVHNuUW53clF5dTFOUUhn?=
 =?utf-8?B?NHR6QVB4VGNFTWM1V3hiTENReHplc2E5SnB0R3ZGRTBGWkYvc1dCQ0NYM1RN?=
 =?utf-8?B?eW1PUEdmaW5oTFZFOURXNWZRdk53VWhoN2lCVUdTRWdPeUZ6UUlLMThEOXNH?=
 =?utf-8?B?d3lqd1dMWWRmejUzZHZ5VGZuSVFJcFpPcGxucTJkNXRCdDdPVDV4WXkvMEFt?=
 =?utf-8?B?Y2RGNCtsWUVKNUx3WGhvcFlxZ1hnVElINS9lVkh4MWZrdzk2UkNLU3BWdkJB?=
 =?utf-8?B?TGFoN1JEemh5SFpraEdsZi9hbVJPbmVBNWlWNWYwaEpQSUtYQVZmTXZBd2hv?=
 =?utf-8?B?NEtZalE4bk5xa3QxajBhU1NJWTEzUzVncWtCNUw3NnhKejYyQnkwS2tFZHpE?=
 =?utf-8?B?TThsdUZDUlQ2TS80SzlNc0ZNbGNIK2JOVXAxTXFKejNYbzRtcHpIRUh3aXEy?=
 =?utf-8?B?S3B3RHFRSzR3UXVyRzhyUGs0MTlvcTdVellUQWZkNnV4QTV0dEtJbm9rQ0k0?=
 =?utf-8?B?Mi96RkN6dVpPMEgvb1ZiTks0WWNXckEwcTdtbjNJZUo4bHVPSjlYM09HNnk4?=
 =?utf-8?B?UDFzb0ZCUWp0OG5vQjRDR2VNQXZGZ0QyOUwwK2EzN1VhbDllRHV1Q0luRTJ5?=
 =?utf-8?B?aGtJVFJ2czZ4eHN5RVVnWmpMMHE4WmQ3K2tQbldxTkhQQjRkVndjZThxNllw?=
 =?utf-8?B?WEtiM0FZTVUyaGZxeWJ5Ym1yVk5pRXpSa3FXSlUyUVNSU1pzbGdmbXZoRzFS?=
 =?utf-8?B?NXJ3L01aMk81dEVxUlRsZktRVGNmZjd4NnRDVm1YU3Npc2lUdmRudEF5bGly?=
 =?utf-8?B?UVRCYUlrME13dVRyY0ZyR2NMV2F6bW0xeUJWdGhxTXBFYVRGMTRJSHkxdy9F?=
 =?utf-8?B?RHpXemw3dDVlZHJxUjVodUc1VXZHeGxnMWYvcStmTytIU0FrY1IyYXk2QUY1?=
 =?utf-8?B?NHN5RUxkRW1KTVdqaG0xQ3d4akZUYjlTTUtlQUFmSG9pSU1DUnpqRFNhTk1I?=
 =?utf-8?B?dFdlZTVuYXpHOUFWc2VTOGRQWnJQa3pvU3UrN3NpZWxoa3F0RU0vRjliQXVq?=
 =?utf-8?B?YmpaYTJNNHM0dys0OFdubDE2VXNyQkh5RStYYWNwTHJ2L1NzL0RPT0h3eVF5?=
 =?utf-8?B?MEJXVFBlcUxjUlpldU0vTDRDYkxuQ2Q2aWJreDUwY3lhTDJpYldXSHBtKzN2?=
 =?utf-8?B?VTF1WDM3RXUzOVNqeTFXSm1ZWFFkcklwZ1NkTlZQamtoRytoWHdBblJSWjUz?=
 =?utf-8?B?SFE0cFZXYzZkeEZMdlM0VXI5OUd4Z3Y1V3RqdU9JbUFOSEI3Rm1KOGZMNS9o?=
 =?utf-8?B?M3loZ2ZLOUdmc2Q1SXVBQk1yZHU1YUEyYnlENzQ3MXJ5ckZaMXVSUDlIZjZM?=
 =?utf-8?B?KzIzTVNvR3B1RFcwaWNZRm9MSng3cjBQS2NCUWYyWlRIRi9QNUx2VStWMUM3?=
 =?utf-8?B?SFh6enhTL0ZyUFlTOUxuR1BkcmlUR3hjR3poeVhHWXFmMzUwRjVOa3ZOM0wy?=
 =?utf-8?B?RjNvTzA1WU5zcmpUSExiY21jNG1FMzUvc3loMHRtb3JIdVZ2OTFHQzM1Wm84?=
 =?utf-8?B?T0d5VC9MUVc0OFVtRDVIZG9HbGQwNDI2dHFpMUtqNW9DeWVNR3JHQ2tyMHFr?=
 =?utf-8?B?cHN6dWRFN3o1VHR6VndhUGJjNDllT3BoL2w3cWJBSlFLWEdYelJVTEZveXhr?=
 =?utf-8?B?NEkrbUV4WE80dEtiRnNVejhzcHczWlVCZWVRWDg4NVIrT2Nja2hUUlhHYzhw?=
 =?utf-8?Q?jbhZgTmuDIzoW0/TTyDozU+6I?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: cdec78a5-f781-4460-252b-08dbaea3ce95
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 06:37:57.2882
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: NEPUZBNwe8nOhZTnU8M1KVxeTIcJNNmlSt6aOovmyQ0u8tSw+xFkcYvTryIjqUqrwMOslSEoX8Ebmjl8Fz63ow==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9500

On 06.09.2023 03:16, Vikram Garhwal wrote:
> --- a/xen/include/public/sysctl.h
> +++ b/xen/include/public/sysctl.h
> @@ -1185,6 +1185,25 @@ typedef struct xen_sysctl_cpu_policy xen_sysctl_cpu_policy_t;
>  DEFINE_XEN_GUEST_HANDLE(xen_sysctl_cpu_policy_t);
>  #endif
>  
> +#if defined(__arm__) || defined (__aarch64__)

Nit (style): Please be consistent with defined().

> +/*
> + * XEN_SYSCTL_dt_overlay
> + * Performs addition/removal of device tree nodes under parent node using dtbo.
> + * This does in three steps:
> + *  - Adds/Removes the nodes from dt_host.
> + *  - Adds/Removes IRQ permission for the nodes.
> + *  - Adds/Removes MMIO accesses.
> + */
> +struct xen_sysctl_dt_overlay {
> +    XEN_GUEST_HANDLE_64(const_void) overlay_fdt;  /* IN: overlay fdt. */
> +    uint32_t overlay_fdt_size;              /* IN: Overlay dtb size. */
> +#define XEN_SYSCTL_DT_OVERLAY_ADD                   1
> +#define XEN_SYSCTL_DT_OVERLAY_REMOVE                2
> +    uint8_t overlay_op;                     /* IN: Add or remove. */
> +    uint8_t pad[3];                         /* IN: Must be zero. */
> +};
> +#endif
> +
>  struct xen_sysctl {
>      uint32_t cmd;
>  #define XEN_SYSCTL_readconsole                    1
> @@ -1215,6 +1234,7 @@ struct xen_sysctl {
>  #define XEN_SYSCTL_livepatch_op                  27
>  /* #define XEN_SYSCTL_set_parameter              28 */
>  #define XEN_SYSCTL_get_cpu_policy                29
> +#define XEN_SYSCTL_dt_overlay                    30
>      uint32_t interface_version; /* XEN_SYSCTL_INTERFACE_VERSION */
>      union {
>          struct xen_sysctl_readconsole       readconsole;
> @@ -1245,6 +1265,10 @@ struct xen_sysctl {
>  #if defined(__i386__) || defined(__x86_64__)
>          struct xen_sysctl_cpu_policy        cpu_policy;
>  #endif
> +
> +#if defined(__arm__) || defined (__aarch64__)

Same here then.

While not to be done right here, ultimately I expect we want to
have some other way of specifying whether an arch wants DT-
specific sub-ops (here or elsewhere). As per the hyperlaunch
plans aiui even x86 may gain such support ...

Jan

> +        struct xen_sysctl_dt_overlay        dt_overlay;
> +#endif
>          uint8_t                             pad[128];
>      } u;
>  };



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 06:44:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 06:44:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596254.930070 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdmH3-0000zs-Jj; Wed, 06 Sep 2023 06:44:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596254.930070; Wed, 06 Sep 2023 06:44:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdmH3-0000zl-Fn; Wed, 06 Sep 2023 06:44:25 +0000
Received: by outflank-mailman (input) for mailman id 596254;
 Wed, 06 Sep 2023 06:44:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdmH2-0000zf-22
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 06:44:24 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2060c.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::60c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cf61ab47-4c80-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 08:44:21 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8212.eurprd04.prod.outlook.com (2603:10a6:20b:3b7::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 06:44:19 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 06:44:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cf61ab47-4c80-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MvBeI8zsJqTcNDCkNBo40VjljPC9h6cEnlW0R75wi/8hFaKLHuUHnI3nsQBpiejbhuBxewACfrz8r5dfJSn39ybIA42F3RusXpJwqFBd7UzRn9Mr+clhsmpIBop1FD2LwJXP+hahntZRSKjamtEx+zEZJTRVittvYz+JTfPZtiiaRy3U35TeSGRDU3KJjF8nUoU6UZCRE47Hobo9gt/cqgsMDBxYE8fuJ7XMdtqZiCr8x1YgT5eQIymnxBd5t6dIr5Y8awA9xNf/e3wK196C5vszsOrb14SmMJVTbWLzWK0LGAuwpzGN2qBK4+61Jg670m8aNV3ZvYgwfcqcWJNe9w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Em+oenfVRVwqQRq7ulmEQ3tFHmJloNlEfMFSV0WWKkE=;
 b=m4/6YU5YOW0ao1tEIMUaYT8uqNzhIL+A5AygbmvuARulAC4Wjg/I1bMxWxM+kmLYdDiP6XYUUOXwwvCkJmqAkW7HtWyztFxDmLLO0oAhbPjXaBRF4kgP38A633vg/OncPkMKQ4qbEHF+7+/xazWc2BFdGAO/iLJuKc/X4bxdTFdTeP8XRuwbBGrzEC7x0UC0XbIydvN8NhEz/nJ/1kJWYzIDnuh5JnB0lCdHzshc4gpSY1/fAy3RUr5qUWJati915VjHZtsyQgZnDQ/3yaaEh04r8WJL3N2P89Kr9VCj1ufX1EdJpEsJ3ZbdRakpvLqPjYUN0A19dnyt/wKY2SEyUQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Em+oenfVRVwqQRq7ulmEQ3tFHmJloNlEfMFSV0WWKkE=;
 b=A8msOZLxtfafBrxDOXhYRIdiHjaZcfazhCuqYMeyaYrtFbOr59B/ji1Sj0Q/1MhMJ9gnFTPsGUC8RwIcuTXZYbgKhKDVv41P6QFVOnLSkF/hReJ6unEpXFF7VNfh/2wphRRKs28P4nxLcLXfA5R81Gc8zlJwsnbcC2woT6T856Kgt7bZD2Zx51007QBHsMZptxyO72BBl4t4eRflDSy4hCLQq6rmFLfqkzUGSvJ70zLRpuYvphG4n/LWgCAjerPE0RT98xNUuAlZbyjPT+S5xRHZszjFqooWyo5JORzKFudh2IWCyrN7z+nfdfZluWyo3Q1NIqq0b0uzxxEUXqg0iw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e5fc9fe7-83fa-98a0-02db-8d28fc2b0524@suse.com>
Date: Wed, 6 Sep 2023 08:44:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH 2/2] xen/ppc: Drop support for pseries/OpenFirmware
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.1693949731.git.sanastasio@raptorengineering.com>
 <8c09322cff220d4d102d50b2fc45e9290106d109.1693949731.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <8c09322cff220d4d102d50b2fc45e9290106d109.1693949731.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0121.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:94::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8212:EE_
X-MS-Office365-Filtering-Correlation-Id: 4debd843-db92-4c31-4677-08dbaea4b210
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iya3MwKm/+XsyS1wwFwILiiPfC9JUJ+TuY+1qoEo/OhPJS5rbwTN14FWD6qNhC1IIlBDq6+vODxYLcFYYlb3O0lGmPDoHpUg5dOzfMqh0UWKSGJchl3g01WW4dvWH8r4NMGtcz1YbQAsBMHHanwxO86TMrGy1DMf2siV4X/jSRvqYnpSCtcrNn/sx+SxnjGyl85HtUTbE4sISzopieIbStkvhLrM0hSLZRiFT9b5wIMrTEpxuqjZnMmkzokUmtAHJl3bUWdbfS01vi2MNfzWsAb4liKvr2AKuSNa9AGDJ1ob9M4F3XMN0I6kwX7Npfq3jsJT9XAKMgj8oo9O321iHkMvaHz4jd+38MkEsJqdtwiGARd4d73bLiluBZuaDjvnIm+PZCQ+qCai1AQaezfVoqxbqK+KmBGj3TaFxeF8Trts5/ZxCSrKmbXmqh+oXIAcCSMqoooft7572gCr1/RYNkBXPV38KKxkuAiPQa8P/nSu0OuWN1il/cDYCaUlH1qVrcahnRHXnbHCKiJVxnK8NN1l8gfTCULRYC8s+jKmToamTvH3XapqldcCEWCI8XTZ5AJgm4eYxjPF9/VFUOD7lB8UbydXWhRvVQRk8AX995al8HKA1SwykddLup+ybHBW0uFpO2L9WbFp2xKMeFg4xA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(366004)(376002)(396003)(39860400002)(1800799009)(186009)(451199024)(41300700001)(38100700002)(6666004)(86362001)(31696002)(478600001)(2616005)(26005)(6512007)(53546011)(6506007)(6486002)(66946007)(66476007)(66556008)(2906002)(6916009)(36756003)(316002)(54906003)(31686004)(8936002)(8676002)(4326008)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SHF5bFplSlZwL0E2dm9VWkxqNXhIOGtPT3NuckM1cklGdHNBVm1OU01XQ2pS?=
 =?utf-8?B?SEhXNFNndGNKY0R6MytSV1IyTFcwK2pkY0JYYktpMGVwZVFBZnVoSkdaVmc2?=
 =?utf-8?B?elJrY2g5TDl3ZEhwQzU3OUVjWXYvN3BTZ25yQ0llejNaY1dWWTE1S25qMGNZ?=
 =?utf-8?B?N1d6V1NDZnlRbkNyRUFYd20vMlR4TUEwWFBwZzc3T0hHWTF4ams0bmVha1lx?=
 =?utf-8?B?MFBmMzNHNWNHMEpYbXAvZkswQ0lZQ2NBVDNIRmhIcjlPdTJmYlZNS0Rlblg3?=
 =?utf-8?B?RkpwQWNHM3oyaG5wNnBUbWsxV1NPT3d3UForYVltWlg3cEt0QngzM3ZwTEZm?=
 =?utf-8?B?alc1TmdUZzJQYS9NWFlCb0E0QWxxL2g2OVFzMDJMY0xRbytxeStTcHVxNnJi?=
 =?utf-8?B?K2xFdmdVWEtMMkZQWjF3eXd3RDJzNlFxcFVja0EvczBwS24rMVMwNm9JVkpz?=
 =?utf-8?B?d1duZ3pxNW81U0FTQ2o0OUk1UzlOejZjVHdlTzcvQVZmM2VIRHZsdWw3Wmgy?=
 =?utf-8?B?QVFOb1lPNzNYcnNRbGhsRXI1c0RkVGI2RlV5RmQyNkVIT01yTU5FZmJEa2hU?=
 =?utf-8?B?MENOUTdHU0hFRXlpU0VvQk84NWZ5aEpKOWZsM0Vid05NMVl0Y1B4YlhIZWg5?=
 =?utf-8?B?NlNRcktmK0ZzcHFYT2pLYTFwek5LWVZrK2ZoN28yMXlXUGdicXRRck9ENVhr?=
 =?utf-8?B?cDRVamtXekdBRjFqd0ZmYXNCNTRsSlozdFN1N0V4N3JwK2tzZ3BYek9xUkVH?=
 =?utf-8?B?L1d3d0JDNFduOENsTjk5RVZjMXhaa3Nkam1aYUVXV01zRTlJZkxuWmt5WXp4?=
 =?utf-8?B?YnYrdTlNV0d5cEdVMHpHbTNUZWZEUGZkQnAyb3U0L2lWOXRaeGFSaURkdHVM?=
 =?utf-8?B?bzA5S2pyS1hrbmhsaEd5YVl0NjF1d2FqQVczWGJML1V0OEVvcjlMVGpqN0U2?=
 =?utf-8?B?ZDU1NDVQZlVKWi9zMnNWajl5R2I4L2ZJNHZMcTY5OXBuaWRzYURtY2Z0WHVG?=
 =?utf-8?B?VUt5cnNSY3NNRktORlhLZHJvbzFxRzV3aEFGZ3JzeFZ1VTJnSkRLTDFoMTlj?=
 =?utf-8?B?b1NRSURYZU9ZQWFISGwrS1ErNXZGRi9LaDBaV213ZUtYWUNVL0g2dVpDSWdN?=
 =?utf-8?B?SC8xZk4rV2lYL0FTaWdxdUNrdm1uUjU0azI2TnZydlNDNUZ4UkE5MW82U2Jz?=
 =?utf-8?B?Y1Vpd0xWdkoyNU0xSDZ4c01RbVVoMEtCVXkrZ3B6Nkk1MjJnYTZqbUIzeXd3?=
 =?utf-8?B?OTUrNVdzc1NaMDJzZGZud3NWS2pZOVhTRDI4YlR6SEljMnA1ZG1md2pFSGxM?=
 =?utf-8?B?b2VScGN1YlZNR2RzMkg5UlZpU3U1Y1pXRWpmeFduaEhESFkwL09jT05RODFt?=
 =?utf-8?B?WjJDYlZaNU5Qb0JlT0JkT0lzYVJENHgwNGd1YkZoSHhvaDBPRTV0VTdjMzNw?=
 =?utf-8?B?eUg2NTEyQU92dklrOW1yVlg4Nk5tY2lqYUVVa1RybGtsUXhmZ2svRjQvOWVL?=
 =?utf-8?B?Wk85K3VBYkRNY1YvTmhUZG1OZzlVZGl0QkdzNGJCMityUG9scGk5NGhRdTdC?=
 =?utf-8?B?UG5OaE9rck9IRThnV3lUbkk5cDZRdVdkdXdSWVJwcDIydTMvYm91RHdJelNP?=
 =?utf-8?B?dFNnWWMrSk13MXFKQlBjNUlGVjNvaWNtL0t4cTRJOGNuc3ozKy9MOU1LcUV5?=
 =?utf-8?B?Tk5hSWpiUDAxRFNITVNUSGVTWFFnQUVVeFZUN3hFSTczYjRrS1pnbUIrZm5q?=
 =?utf-8?B?YytMWmd2T040R2RVbXk0R2JGejBNWjh0TlRZdllaTXgrZi9uUjV6UXl6VE5l?=
 =?utf-8?B?TTZGODQzcFZRT0F3SXp2K3o4UEhodXY5MXNBT1RabmE0b3VyK0lHN3E4ZHlw?=
 =?utf-8?B?ZTFraW1meVlyNnFmVytDa3VBeFVCS2FKTml1QnNxVVYyVGJJNmVLR2VuN2lH?=
 =?utf-8?B?RDdwMkpDU29CakJQNHVtNHM4S1FHcUJxdERMRXphZ3JWWmZzeG9XaHNiUXFq?=
 =?utf-8?B?TFBZNURXemFZZjlRMVE0bnVaaElnWWV4TVdENWVsMXFjUFREYWM4WHJOZGhs?=
 =?utf-8?B?UFA1cXdRSzNZRDFLMW00V1pnZGtXRmw4T2xSdHcxalpzaG5pb2s4SEhKMmps?=
 =?utf-8?Q?KIbsDWelNgUWiAaHp3XY26LEn?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4debd843-db92-4c31-4677-08dbaea4b210
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 06:44:19.1389
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: PbHsL+/oqtEpPTkfrHJCTx8X0HTGuQFGRAQleu4LwaKR06DdBwszWmcBflA5MGHWi4QetjeR/vg/5jhjXnTscg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8212

On 05.09.2023 23:46, Shawn Anastasio wrote:
> Since QEMU's PowerNV support has matured to the point where it is
> now suitable for development, drop support for booting on the
> paravirtualized pseries machine type and its associated interfaces.

I think you want to mention that the pseries functionality was actually
broken by the earlier change, both verbally and by means of a Fixes:
tag. The breakage actually may also want mentioning in patch 1 as well
as the cover letter.

> --- a/xen/arch/ppc/setup.c
> +++ b/xen/arch/ppc/setup.c
> @@ -14,17 +14,12 @@ void __init noreturn start_xen(unsigned long r3, unsigned long r4,
>  {
>      if ( r5 )
>      {
> -        /* OpenFirmware boot protocol */
> -        boot_of_init(r5);
> +        /* Unsupported OpenFirmware boot protocol */
> +        __builtin_trap();
>      }
>      else
>      {
> -        /*
> -         * kexec boot protocol
> -         *
> -         * TODO: This currently assumes an OPAL/PowerNV system, but it's also
> -         * possible to be kexec'd on an OF system.
> -         */
> +        /* kexec boot protocol */
>          boot_opal_init((void *)r3);

At least part of the comment may want retaining, as the code only handles
the OPAL case?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 06:50:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 06:50:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596260.930080 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdmNF-0002cz-8c; Wed, 06 Sep 2023 06:50:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596260.930080; Wed, 06 Sep 2023 06:50:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdmNF-0002cs-5i; Wed, 06 Sep 2023 06:50:49 +0000
Received: by outflank-mailman (input) for mailman id 596260;
 Wed, 06 Sep 2023 06:50:47 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdmND-0002cf-Hu; Wed, 06 Sep 2023 06:50:47 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdmND-0002Ur-DI; Wed, 06 Sep 2023 06:50:47 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdmND-0006uI-2z; Wed, 06 Sep 2023 06:50:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdmND-0008Fj-2Z; Wed, 06 Sep 2023 06:50:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=SthxH9H+PWA8bhL65rzho07ZFM1oc3w0BBO3CJKIcek=; b=5VkJ2ojBbSgQqrC1kiTltTFevL
	A+87zu5M159x7NLBv7GanGeJiaEZ1Ec3XFq9VkgI1y1i9MLdGJNZBk7bj1RWou+qrIL7+9zddBM9e
	EyjAZ4EPW0vbeiSBDYY14y4PGJdLQs4wPc1MKiZwIV7Nb8ZYNrK7a8DUDjYJv+cFtXRA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182632-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182632: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=74b725a64d800822e007e0f449317ff0a8249971
X-Osstest-Versions-That:
    xen=f805cf3e9b87584e16b03b5059b1163fd22bf5a0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 06:50:47 +0000

flight 182632 xen-unstable real [real]
flight 182643 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182632/
http://logs.test-lab.xenproject.org/osstest/logs/182643/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl            7 xen-install         fail pass in 182643-retest
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail pass in 182643-retest
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 182643-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182627
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182627
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182627
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182627
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182627
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182627
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182627
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182627
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182627
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182627
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182627
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 182627
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  74b725a64d800822e007e0f449317ff0a8249971
baseline version:
 xen                  f805cf3e9b87584e16b03b5059b1163fd22bf5a0

Last test of basis   182627  2023-09-05 01:53:32 Z    1 days
Testing same since   182632  2023-09-05 11:40:21 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              fail    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   f805cf3e9b..74b725a64d  74b725a64d800822e007e0f449317ff0a8249971 -> master


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 06:56:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 06:56:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596271.930094 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdmSG-0003h8-1a; Wed, 06 Sep 2023 06:56:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596271.930094; Wed, 06 Sep 2023 06:56:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdmSF-0003h1-U5; Wed, 06 Sep 2023 06:55:59 +0000
Received: by outflank-mailman (input) for mailman id 596271;
 Wed, 06 Sep 2023 06:55:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdmSE-0003gv-1H
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 06:55:58 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2082.outbound.protection.outlook.com [40.107.7.82])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6df10cbd-4c82-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 08:55:57 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9261.eurprd04.prod.outlook.com (2603:10a6:20b:4c7::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Wed, 6 Sep
 2023 06:55:27 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 06:55:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6df10cbd-4c82-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HGncuk2HDdVjCqO5qcns1oADj/xPjClo+4QI28z/x8QVdbeY07u7onsjDACi1GJjvwX2ZN5DvZtorGKJTAJP5/P7rc3P6tVz/hICPzdHpGw0Ua9WaiWjAIe9XoLHUAgj/Z225xmcYAmsx0kx9RBNBdBoqByBGgTCC++3Ghd/2w+C3NafGcQhozAgwJO0uQVo6EKA1s9sj8u7LBzytEZOLFk3xcs6rA/+0J7In7y3zXhkuJL1q00qIRklJLHF6lx8Igtq3Ya/uBD6vxIoqomEIGl2ky/Bm4VRVKXVhpYGFnN8T/eHiDpRaqxnt6ptWXJafRXy0WwVRYAhevFy/M9LhQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3tvcL8mpPLLrth8lvdsblRl4OrilGZemtnhMNQYPW0c=;
 b=L9WrfzTAgMiRkdfxb86bwt0VCnBa1e1FBuKmcBQsiKw9x9b6BFvhDgNixMZAJpi0STN+BHrf86A2Z0xg6CWqhRbxN5hnBSHfvIlUQBbqkytF7Hh1bsehjzY3XELRlcnzf+estrWc+8npkYqIawmeM+qZ2kpEW+TK/xPJu6gFrmc00dWZL0np+78YTME81v5kdMdQS5R6T28B1HH/i1WfLIeMsL6Ee7RybaRM37AXpJCXzWGqn9tLSV3TeuizeDxhaopPhxJ0YeYG4Slc5iSzQShg7noK/3PpCY+ixOH/76NivcLdKXb+8DPkPND7+7Pu0gD4o8+qE9WjIB9nLcsscw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3tvcL8mpPLLrth8lvdsblRl4OrilGZemtnhMNQYPW0c=;
 b=iMKnm1Au+nOYZmGe2NatwrfnZ51Sn0WBHCeSYu9WmsqO71pjiYJK5ND3uNJu6roakYqWFvbE9TFwSSYGhfohz8p+NrcS8+D3SAvvSj+NA+40eFQ+BZ6Hf/aKI7qw7tJz6FBLp+hZXCbCMrQJbbC5K5iY8Xdk3m/gU3LewEQkHQRHGWqly2hOy5EU6MOJR7WJP4HAuuBJd1zI9v4SLgMLvwbGAtm+HUPL70aypoha5Iej/cE2BjE56VT5vST2HKMXnAcB0eNcWToneJg47AqKk6l7jSkwOZvqk37587kMT7NHSr3NnBLEolYhxA8ADVrOfU4ppgz//87OtiNYCMiKIw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3ee81557-50d2-1ae0-e700-9f20672ef15e@suse.com>
Date: Wed, 6 Sep 2023 08:55:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN][PATCH v12 20/20] tools/xl: Add new xl command overlay for
 device tree overlay support
Content-Language: en-US
To: Vikram Garhwal <vikram.garhwal@amd.com>
Cc: julien@xen.org, michal.orzel@amd.com, sstabellini@kernel.org,
 Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>,
 xen-devel@lists.xenproject.org
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
 <20230906011631.30310-21-vikram.garhwal@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230906011631.30310-21-vikram.garhwal@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0197.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ad::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS1PR04MB9261:EE_
X-MS-Office365-Filtering-Correlation-Id: 7eb58c61-c324-4f46-14ef-08dbaea64081
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	CfUXJ0v41h9ccAEwU3gVoXFRyohbjKONuM7Hnz0BVaouHiO4PV1tTPOlvCG45cTl+itBP/8W/nRpi/89gyXGPOTFUldEhB307JEoL3JVfkR/Aqxcz1EwsvQ5Org7m9wsUpxwWn3bMMxhXe6GgWCICb2WnGySxl+1nHSHdykk6ir8rdvDiijN5KqMeN+Un1NSgDAAI10C1rOnf9ic6UedOFaf/for4gndOEC4KUU71qawWMr9KneR5HO7TUePI/naDyUgu2ZZ7GrRGttWDIiorRJ+EYliLE3IlDmHq3kEQARJTcc28zGVnbVHUkxnh4Oa7vVXzX5AhOSXsHFyXy32az+CUtpvAbWx/H5hTLAj/eubd74M1x1+rd8j7Rdeuzqwo1DZoiEcNMr18ZC1NkLJN4zhMzhFH0eBPBWazi2wEkvbRf2mWAGWNLwIvSs6/gPpjtSIVzHTgALI5ImARxCmbGrgRHBEFh6cY1AJHGhe1tWojPU+4+UgsDv3kD1jpLTNqLIe7zJsmI3IFDfZKU3nTZRl52RND5uR2i+5GMeihhbDFfBtWM2rMmSGDlg8VriLsQjYBdX5Yw6kkwHeyBNq794jIQuasOtxvJ881AsANEP3FJ4P9tPiFR4BHQMSNh+OvJjB16WTUaxPFDDFlE+vcw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(396003)(136003)(376002)(366004)(1800799009)(186009)(451199024)(41300700001)(478600001)(6666004)(31696002)(86362001)(83380400001)(38100700002)(2616005)(53546011)(6486002)(6506007)(6512007)(26005)(66946007)(2906002)(6916009)(36756003)(66476007)(316002)(54906003)(66556008)(31686004)(5660300002)(8676002)(8936002)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?emVGYUdwRnRTOWlYcGZHU3dzM2JsR2NRczVPUlJqSmEzemRYWjN1OHFDNDln?=
 =?utf-8?B?cStPMWpYakRXR1QwSEJpWXdwRzh4RXZSOUhWdllWNUtuNlpOa3AwaHl4WWVK?=
 =?utf-8?B?NUhib1JLei9iTGsvVzR1TXduUHFoOERQWFNYMkprQk96STM5RW0xN3E5elM2?=
 =?utf-8?B?RndZNWR0YjVZUG1VOGs0cWM0RkZoK1FHa3FGMFR2ZGtlYmNnTFJ6T01XMGlU?=
 =?utf-8?B?UCtEY2tIR2FpRHI3YUFZSXZ2WTBUZ2hRVnRadVpzcy9HMW4xRThZbHZkWVFF?=
 =?utf-8?B?b01VeW8yWXdlejAyR2xwQlZ1b1VoSEJsc3NnZFZGdXFNTzE3ejE0WWl0Yzh1?=
 =?utf-8?B?Y2krdkZGaWtYSG9LUThRMFhiMXNMMFBydUhjVXlHblVwek12elFtdVpCRnVT?=
 =?utf-8?B?a2xUVE5vTWxUa3FGd0l2cWtSYnlvNkFBUndjT0ZZN3E5RkwwQnpiVDViZ2xq?=
 =?utf-8?B?VldCckdYM3FjSXd5RGNaUW1YQmFaaFNhRmNNVk82VDI0cC9vazFjamVZcGta?=
 =?utf-8?B?dXVveXZ0VEh3Nm9xbHMyeWw1MmQ1WkFZMGVZQW1PUE82RHo2THAxVjVWeEpl?=
 =?utf-8?B?M1lFVDBnK3puQXd0QnBvTmRHZEJUYm5EQ1VPOGdldDhMczJkaVlETy96dXhi?=
 =?utf-8?B?T3N2M1VHSWt6VlpXaFJ6dnBFaEc4QmV5blpwVHJyUGQ4SHpHZ05zbjE2b3Jp?=
 =?utf-8?B?Mm9vWjg2SVdjUm9wYlN1WTFVSUFDOGJWRmpSMG9kRlFLL2FGQ1dDVXlJbjV3?=
 =?utf-8?B?TzMrc2JaMGkwRXVMREI5ZUlsbklWVklUNU00VWY0TlVnQmlPSUtONDAybVQz?=
 =?utf-8?B?MTdha00zT25FNElLQkJmdy9ZRDJVdWhpSHlnMmJnOWdXTEt5dUovaUdNSHpQ?=
 =?utf-8?B?VmpEb2U2dVlocUtzcTFRZFkxTGVIaXdIanc3L2hUZCtPZG0vdk9mWk5Jczk4?=
 =?utf-8?B?Q3JsOFVFS2gyVjBSVGwyb2d0TjZDQVlDRTh4bG1RV2sxY3AxN0hkUUowQzk5?=
 =?utf-8?B?RDJSVVNsaFVWRk1LOEtsR2N3L3hBZVhib2hiUXRoMU9VbTQ5bWs5Yy9Bdk1R?=
 =?utf-8?B?ZFFPWEtHTDRvS2ZsQXlFUlhBOW40ZVZwRlFTdHRzOFkrL1V2TEVVcEFYclNH?=
 =?utf-8?B?YXcrZ0E1djROMUpYcXFIMmdZZE80M0Y5Y0NJaGhNaGpMcWdFbmJNOXJrZ2xE?=
 =?utf-8?B?NEdDYUZJL3Fyd3A5ODZLdjJ2UjRIOWI4R3pOdXZlekZwNUJiZWs1cXhpa3dE?=
 =?utf-8?B?OUJxNTcvVXdlMEsvTXVhMnZySVJISTRSMUNQcE0xRk4zTzJ6VkJ2a1pENXFB?=
 =?utf-8?B?dnlGQzJBOXo0NWo2TlM1dUQ3YUNNSVBrVXZIRk1pbUR4NVJTYmFxWjg0cE9t?=
 =?utf-8?B?dER3Nng2ZzVFazN5WnhOWmZtTW50ZldUSk9KZVlKSUluZVV3SHFJNmtEMDBi?=
 =?utf-8?B?L3ZIOXY0NTFVcHhvNGhHaG1oSG5WUms1WkZmOXE0VStPSGVDRFZlMGhRN1FN?=
 =?utf-8?B?b0xvR1NxSkIwak50N3p2M2hYdi9DWXZNczFPYUliVXRDNGZtNXlnUzFhd21G?=
 =?utf-8?B?QWxBZUJoa1NWSCtMODQwR091Q3JWTVFaaFVBOXdDeDMvZ25HVTFibzU3QXd6?=
 =?utf-8?B?V0djYmxQSWJHalJjWXZTMWxIYTlkMUtLTkdXLzU3K0NMYk05WWVxaC9RN1h4?=
 =?utf-8?B?ZXlBNExwRkE5emYrYThMamtoajN2OFhIbGJiN2lqdkZnMGtwdlZadGV1bXVV?=
 =?utf-8?B?ZkZIRXI4dG83akJaanVmTjg0ckpRZmhrVldYRVhtZE5vTWRPbEFVaEZ4akZh?=
 =?utf-8?B?UzZqclZvZlpZT04vREpVbG1aK0xqZVQ3enlLOTFyQ3c4eEpqdWJ6SXR3eWxG?=
 =?utf-8?B?b0p1UFZXeExVMVZjOW1qYkszUC8vSEtFa3pIbm5qSGtKOVZZemNtTWQza2Mx?=
 =?utf-8?B?em05dGtFUGViODJTQVZNVXkrQkpaTWVJa3crTUVlVC9ncHp4ckk4Y0prOUVk?=
 =?utf-8?B?MXAyTEV0OE5DcXZvQzlTRWxsY20rN2F0S3BmZ2JibHA3M0FyN3ZYRkEraDhY?=
 =?utf-8?B?bWk3dXJIRWQyZjgwZ212Y0l4WVZKOWRnZ0NUc2RKbmlMdGNEVU5MUUhXMDhr?=
 =?utf-8?Q?Kufaa89IT4kWAXoDjshwzB5AC?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7eb58c61-c324-4f46-14ef-08dbaea64081
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 06:55:27.4318
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: AJvpnI5BGz//JW9+pfIASMpVStRTfmmUhDiuQFcoD5SRcg9SMN5bS+kEczTpW0GPQQJzZnQQbKo2CYyOVMt0xA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9261

On 06.09.2023 03:16, Vikram Garhwal wrote:
> --- a/tools/xl/xl_vmcontrol.c
> +++ b/tools/xl/xl_vmcontrol.c
> @@ -1265,6 +1265,58 @@ int main_create(int argc, char **argv)
>      return 0;
>  }
>  
> +int main_dt_overlay(int argc, char **argv)
> +{
> +    const char *overlay_ops = NULL;
> +    const char *overlay_config_file = NULL;
> +    void *overlay_dtb = NULL;
> +    int rc;
> +    uint8_t op;
> +    int overlay_dtb_size = 0;
> +    const int overlay_add_op = 1;
> +    const int overlay_remove_op = 2;
> +
> +    if (argc < 2) {
> +        help("dt_overlay");
> +        return EXIT_FAILURE;
> +    }
> +
> +    overlay_ops = argv[1];
> +    overlay_config_file = argv[2];
> +
> +    if (strcmp(overlay_ops, "add") == 0)
> +        op = overlay_add_op;
> +    else if (strcmp(overlay_ops, "remove") == 0)
> +        op = overlay_remove_op;
> +    else {
> +        fprintf(stderr, "Invalid dt overlay operation\n");
> +        return EXIT_FAILURE;
> +    }
> +
> +    if (overlay_config_file) {
> +        rc = libxl_read_file_contents(ctx, overlay_config_file,
> +                                      &overlay_dtb, &overlay_dtb_size);
> +
> +        if (rc) {
> +            fprintf(stderr, "failed to read the overlay device tree file %s\n",
> +                    overlay_config_file);
> +            free(overlay_dtb);
> +            return ERROR_FAIL;
> +        }
> +    } else {
> +        fprintf(stderr, "overlay dtbo file not provided\n");
> +        return ERROR_FAIL;
> +    }
> +
> +    rc = libxl_dt_overlay(ctx, overlay_dtb, overlay_dtb_size, op);

Because of this being Arm-only (as validly pointed out by osstest), I expect
the entire function here as well as its entry in cmd_table[] want to be
Arm-specific, too? Of course it would be nice to not key this to __arm__ /
__aarch64__, but to something that would not need touching again if the
underlying infrastructure was made available to, say, RISC-V as well. But of
course - right now the goal needs to be to address the CI and osstest
breakage.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 07:33:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 07:33:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596282.930116 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdn1p-0002Vb-KZ; Wed, 06 Sep 2023 07:32:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596282.930116; Wed, 06 Sep 2023 07:32:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdn1p-0002VU-HZ; Wed, 06 Sep 2023 07:32:45 +0000
Received: by outflank-mailman (input) for mailman id 596282;
 Wed, 06 Sep 2023 07:32:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7I91=EW=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qdn1n-0002VO-M6
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 07:32:43 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20622.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::622])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8ee34407-4c87-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 09:32:39 +0200 (CEST)
Received: from DM6PR03CA0079.namprd03.prod.outlook.com (2603:10b6:5:333::12)
 by IA0PR12MB8982.namprd12.prod.outlook.com (2603:10b6:208:481::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 07:32:35 +0000
Received: from DS3PEPF000099DA.namprd04.prod.outlook.com
 (2603:10b6:5:333:cafe::89) by DM6PR03CA0079.outlook.office365.com
 (2603:10b6:5:333::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 07:32:35 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 DS3PEPF000099DA.mail.protection.outlook.com (10.167.17.11) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 07:32:34 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 6 Sep
 2023 02:32:34 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 6 Sep 2023 02:32:32 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8ee34407-4c87-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=i0MsFkdhrbSYcJWdAA7rxlZZS+O2BjZ64Rzhp54GrKK3410m4ByvRq5xYX6IwJeCdIUyhaK6wBgkSdqTaShaaLGfaBab6LvCH1laVdGdkOYkODFD7j/uUx+gnUzcuu2spJtYuItiYUI3V58N8xy/kyPXhEB0mGu6eC9sZ7w/d+Zk1SVqK0lbyBETnzB8TFuTBShmSIi2lczypfcrl3Urkeqn3JOxQzFIz2K4IyDPOQJu7WElxrI6fb1Qre5VBxDT+HrZBhOZCZWfAVdUI3mJvWo4oBpfE8T4J7VCBE/uttAXOAuvzfoHIrm3PDEBj/6rCn7QMQ4Ipw0YXet74PbDBA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=whwNS31ciyyyIKDdM7G6dzN//dXtNumdFdEUk0tQB70=;
 b=RgQXa4gVB6nJP5393Y+/ewpeuF6yywlYD0Ez34LQ9OEx24Ej1T0jfttkB3Ek+6vSDsbYcv3opeUKGS7gksPIkh1/tUa7rmBGpbvK+DAG09wBF49HpazRL3m1YzO9ZuMIGjB3xbJiPjF55+pIVsxdMbQSqab54sCzNwv/hhJ5bmxcsrYz17he2/ke6ZuYbyBFwgOkn7SaJ1iR2ch/i5LMyboNOsQJDv499uJYo5f7NEzEobTcV5OMz5QSsI5INHdBA6MDWPsBdSKeuhZBVkHr6kUpJUEF3LYF2xzwUxil8z+xKKfM3gQaCav3QLIlsNmdCpTZyoQ0FHzo9DQyiJHt2A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=whwNS31ciyyyIKDdM7G6dzN//dXtNumdFdEUk0tQB70=;
 b=RcPI63T0JMP9nckdqS6pjBhqShesxTLiMMerfaoz+rFjpFSppqmNpttufrp/0b40sVlVAbmNcvpZdqYTZ7dbZ1rEfxOfXfUEg66ADHImPugeTtzLpElCWtI01jT5UqDOXLepncnBlzTTKczKxnWWxD5XRNrPjp2djRavCTsxTMg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <6a3bcb64-2416-225e-8a5e-5ea7823d3c29@amd.com>
Date: Wed, 6 Sep 2023 09:32:31 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN][PATCH v12 20/20] tools/xl: Add new xl command overlay for
 device tree overlay support
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>, Vikram Garhwal <vikram.garhwal@amd.com>
CC: <julien@xen.org>, <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, "Anthony
 PERARD" <anthony.perard@citrix.com>, <xen-devel@lists.xenproject.org>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
 <20230906011631.30310-21-vikram.garhwal@amd.com>
 <3ee81557-50d2-1ae0-e700-9f20672ef15e@suse.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <3ee81557-50d2-1ae0-e700-9f20672ef15e@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099DA:EE_|IA0PR12MB8982:EE_
X-MS-Office365-Filtering-Correlation-Id: 46f1ec7e-93c6-426c-b0f9-08dbaeab703d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xscjzJBhStU+6maWvBxBJQg/qwhQ7VBooZE8dDmc57/ho3jLB1YoYVzFirixaRkNPBKCOcV0vCf61imqPytMU2OF4jbYppV6FG5cT5BHsGDYggNcw6q6wHuPgt13ElsVk5GIgTmlyQeIRpPnvOXXUrzYZxrbxSrz7dpKuMqr2oozYsA71KXUl5Rpzh5a0vjp0DDf6Q/mkwoXSgsMw5jo7oPjbC6YHj6fTuVzHv3O1Erms1p970Jd6cCcvp0EeyxY5a2M6RKhWKw0b/SlGHJdidiGZVy7oPu7yIdACY3NbAT6gxQnpvRpgxQgPHv/jdoXd5Bi3Ik0jb+GeRj2g1LqwjDl+XSdtfWgEQanB1MeG1pLnY/bjM3F6Eek3aM9Nv5qW4kvTkACHIgiDeIdPXm3ALzl6FN0N2t2E/Lg3x2u7xKkthIdGYt8M5DQ1IrCq9r9ESBPqk2kegx7C1onIPAXd6s0J7IwlM2gcdxIpxgF0CNa7cRR7PwqUOFqy5bZmEuO4XpMxwXMCP9q/IJjVLLLZA15gVeA8cKpufvAEJmXi9GRuSCtfbzSvNRHxWLbC9fR43gzYqn9ZZ+gFG0uAJAGfpWjk75CrT89/GVqmhaRmlnoVIWFXeHgoVIngY+7s3D9qiIlqUoJo6Q2f+5c8x+sA6KrOhJPhO5acYpJsaBVMHUOMt4Dn/I7Vjez57SXpG7Xft0x7FJhEWifm0TflNAMASmX7annGONfF3LW8+acTcGLSQp7+Eri9PDWUt6Fo9YwyQ285m83oFRRrIKsF9DUgPyFA28d6ujfxVj+bTb/fmYk2neWWAbKaOTECOjJ6MUi
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(136003)(376002)(396003)(186009)(82310400011)(451199024)(1800799009)(40470700004)(46966006)(36840700001)(47076005)(36860700001)(40460700003)(2906002)(36756003)(31696002)(86362001)(81166007)(356005)(82740400003)(40480700001)(41300700001)(53546011)(16576012)(54906003)(316002)(110136005)(70586007)(4326008)(70206006)(8676002)(2616005)(8936002)(31686004)(6636002)(336012)(426003)(478600001)(44832011)(26005)(5660300002)(83380400001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 07:32:34.8007
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 46f1ec7e-93c6-426c-b0f9-08dbaeab703d
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS3PEPF000099DA.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8982



On 06/09/2023 08:55, Jan Beulich wrote:
> 
> 
> On 06.09.2023 03:16, Vikram Garhwal wrote:
>> --- a/tools/xl/xl_vmcontrol.c
>> +++ b/tools/xl/xl_vmcontrol.c
>> @@ -1265,6 +1265,58 @@ int main_create(int argc, char **argv)
>>      return 0;
>>  }
>>
>> +int main_dt_overlay(int argc, char **argv)
>> +{
>> +    const char *overlay_ops = NULL;
>> +    const char *overlay_config_file = NULL;
>> +    void *overlay_dtb = NULL;
>> +    int rc;
>> +    uint8_t op;
>> +    int overlay_dtb_size = 0;
>> +    const int overlay_add_op = 1;
>> +    const int overlay_remove_op = 2;
>> +
>> +    if (argc < 2) {
>> +        help("dt_overlay");
>> +        return EXIT_FAILURE;
>> +    }
>> +
>> +    overlay_ops = argv[1];
>> +    overlay_config_file = argv[2];
>> +
>> +    if (strcmp(overlay_ops, "add") == 0)
>> +        op = overlay_add_op;
>> +    else if (strcmp(overlay_ops, "remove") == 0)
>> +        op = overlay_remove_op;
>> +    else {
>> +        fprintf(stderr, "Invalid dt overlay operation\n");
>> +        return EXIT_FAILURE;
>> +    }
>> +
>> +    if (overlay_config_file) {
>> +        rc = libxl_read_file_contents(ctx, overlay_config_file,
>> +                                      &overlay_dtb, &overlay_dtb_size);
>> +
>> +        if (rc) {
>> +            fprintf(stderr, "failed to read the overlay device tree file %s\n",
>> +                    overlay_config_file);
>> +            free(overlay_dtb);
>> +            return ERROR_FAIL;
>> +        }
>> +    } else {
>> +        fprintf(stderr, "overlay dtbo file not provided\n");
>> +        return ERROR_FAIL;
>> +    }
>> +
>> +    rc = libxl_dt_overlay(ctx, overlay_dtb, overlay_dtb_size, op);
> 
> Because of this being Arm-only (as validly pointed out by osstest), I expect
> the entire function here as well as its entry in cmd_table[] want to be
> Arm-specific, too? Of course it would be nice to not key this to __arm__ /
> __aarch64__, but to something that would not need touching again if the
> underlying infrastructure was made available to, say, RISC-V as well. But of
> course - right now the goal needs to be to address the CI and osstest
> breakage.
I agree. I would suggest to guard it with LIBXL_HAVE_DT_OVERLAY which is for now
only defined for arm32/arm64. This way the code will not need to be modified if other
arch gain support for the feature.
If you agree, I can send a patch to unbreak CI unless you want to do this.

~Michal


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 07:35:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 07:35:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596287.930126 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdn4p-00035Z-37; Wed, 06 Sep 2023 07:35:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596287.930126; Wed, 06 Sep 2023 07:35:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdn4o-00035S-VZ; Wed, 06 Sep 2023 07:35:50 +0000
Received: by outflank-mailman (input) for mailman id 596287;
 Wed, 06 Sep 2023 07:35:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3YH9=EW=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qdn4n-00035M-Nu
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 07:35:49 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ff4e17ea-4c87-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 09:35:48 +0200 (CEST)
Received: from [192.168.1.9] (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 92F0D4EE0737;
 Wed,  6 Sep 2023 09:35:47 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ff4e17ea-4c87-11ee-8783-cb3800f73035
Message-ID: <af0e3fa1-c0de-18ae-c899-5e4bdfbd0509@bugseng.com>
Date: Wed, 6 Sep 2023 09:35:46 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [XEN PATCH 09/13] xen/common: address violations of MISRA C:2012
 Directive 4.10
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Jan Beulich <jbeulich@suse.com>, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1693228255.git.simone.ballarin@bugseng.com>
 <fe1768342df0cd9315af87c83cc6d8d09f61b983.1693228255.git.simone.ballarin@bugseng.com>
 <00d67696-7895-f4cd-de0d-0c24f937deb9@suse.com>
 <be7ba4ea-b5e9-cc00-a8d1-0fec82248b8f@bugseng.com>
 <00866371-7adb-9cfa-267d-ee78cf14e68c@suse.com>
 <7d5244fe-d89c-8878-b16a-a3345426de1e@bugseng.com>
 <6ea28c90-68aa-4a14-e352-2bcb6e42a76a@suse.com>
 <814c3aa1-dbce-97d2-f526-93e185d61438@bugseng.com>
 <alpine.DEB.2.22.394.2309051514200.6458@ubuntu-linux-20-04-desktop>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <alpine.DEB.2.22.394.2309051514200.6458@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 06/09/23 00:18, Stefano Stabellini wrote:
> On Thu, 31 Aug 2023, Simone Ballarin wrote:
>> On 31/08/23 15:05, Jan Beulich wrote:
>>> On 31.08.2023 14:54, Simone Ballarin wrote:
>>>> On 31/08/23 13:10, Jan Beulich wrote:
>>>>> On 31.08.2023 12:08, Simone Ballarin wrote:
>>>>>> The danger of multi-inclusion also exists for .c files, why do you
>>>>>> want
>>>>>> to avoid guards for them?
>>>>>
>>>>> Counter question: Why only add guards to some of them? (My personal
>>>>> answer is "Because it's extra clutter.")
>>>>
>>>> It's not "some of them", it's exactly the ones used in an #include
>>>> directive, so I'm not getting your objection.
>>>
>>> My point is that by adding guards only for files we presently use in some
>>> #include directive, we set us up for introducing new violations as soon
>>> as another .c file becomes the subject of an #include.The more that it
>>> is unusual to add guards in .c files, i.e. it is to be expected that
>>> people wouldn't think about this extra Misra requirement.
>>>
>>> Jan
>>
>> I can agree to partially adopt the directive: I will add a deviation for C
>> files in rules.txt.
> 
> Sorry for the late reply as I was OOO. Please hold on before adding a
> deviation for C files.
> 
> In general, I think including .c files is not common behavior, and
> should be restricted to special cases. We could say that exactly because
> they are special, they follow different rules so we can skip the guards.
> Or we could say that they are still at risk of double-inclusion, hence
> we should be consistent and protect them too. I think we should discuss
> the topic during the next MISRA C meeting.
> 
Ok, I will drop changes in C files without adding the deviation.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 07:56:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 07:56:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596299.930142 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdnP5-00074d-PC; Wed, 06 Sep 2023 07:56:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596299.930142; Wed, 06 Sep 2023 07:56:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdnP5-00074W-Lv; Wed, 06 Sep 2023 07:56:47 +0000
Received: by outflank-mailman (input) for mailman id 596299;
 Wed, 06 Sep 2023 07:56:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3g10=EW=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qdnP4-00074O-Fc
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 07:56:46 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20608.outbound.protection.outlook.com
 [2a01:111:f400:7eab::608])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id eac9133a-4c8a-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 09:56:43 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by MW4PR12MB6825.namprd12.prod.outlook.com (2603:10b6:303:20d::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 07:56:37 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40%4]) with mapi id 15.20.6745.030; Wed, 6 Sep 2023
 07:56:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: eac9133a-4c8a-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cQPe/N9wkzJnlycJ1DspCmw1XFRiOiJ3Mbu/ELHV7GzsIqWxh0hwYZCvQjn4gOtqU5oNVi6cTvq9Wx3wJKbRrR4iTDjRODcoWANE3ApY0KPKzMLimCgfzts0Isozct0emBuMXEjGE9j6VeMijwP32unLweN0yPEWcViNUKX4LW6vg8nD+Glvhha4sRAfs2NFGYR4oSY46KQrVWI3yMfIcNJChLP9wThjOYqqpQXgNA7V5IhyswwomaZ3Io1YuVKmS0pYgxsm3FOVp4N8monMuwcsbn67ZX+BNsPM34DbmztvvtdaKdJW4BlHrfbcjtqRlaljJEPYzWP9CploNr2oxg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7SkGQgPYJx9/6zWq+enDufxrCOY5Fc5Z7JoDDDYEmCI=;
 b=Yw75d48s2G7AXEaI0BxyTVAjjk0TMEUXdG54SR/vpwto1BM0ARA8JQ80i1t+yGS61bU+OyoTP9SUi552DYD3Vq8PKCtKzi1DfwVr5103okYQY8U3fIUCJGyO6MgnGqsVRSBoT18+py8s6XqqOe+6ciP22e7InbOjWrxMtTLhUchNYqqY9NJ7sRuomEOInhgDdYTrNFWkxopwtq4v3vrHWJ3x+rYJzh6UOeweg51Mwi6mR1g8Z/6NZ84DvcOhsgcPdHYm3KKo67SuNSNZ+CC2ig4fX7LngpErZka1leZfn2wSDArqGO4tR8W5X+fyFlSTTYOS95OEuW654CxQvH16XA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7SkGQgPYJx9/6zWq+enDufxrCOY5Fc5Z7JoDDDYEmCI=;
 b=jPsYnCCx1IdlY/5IPwcIAFfwBukS1ce7efxe7XZZv2zGvvfdmAn4Xd7FHgXB6PP9dxzVFDD+xUTcoFyYJYcF56B9A42mSe7dL6BlVq6MKt873acsX4dDBy+yvj7shnJvixcgtmwpx6810JagsIdq5wc2gq9O53f7dIJpi5O7lHs=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Wed, 6 Sep 2023 15:56:12 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
Subject: Re: [QEMU PATCH v4 09/13] virtio-gpu: Handle resource blob commands
Message-ID: <ZPgwnMR5YM9rFLtK@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-10-ray.huang@amd.com>
 <ba478789-5db0-4011-bed1-7dd6901eccd6@daynix.com>
 <ZPbwGA3apjQTtCeu@amd.com>
 <053ecca7-f76d-4289-9189-0c3600d4804b@daynix.com>
 <ZPftWfuwLKafLPah@amd.com>
 <9d883490-3c82-4016-a290-6570f682908a@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <9d883490-3c82-4016-a290-6570f682908a@daynix.com>
X-ClientProxiedBy: TY2PR02CA0068.apcprd02.prod.outlook.com
 (2603:1096:404:e2::32) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|MW4PR12MB6825:EE_
X-MS-Office365-Filtering-Correlation-Id: 6aee892b-bf98-48a0-233f-08dbaeaecbe3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hmHz2xCT2NcKZVr8g2DviEDK7HzQG4sAqXQS3Hj4vQ8y4esr3qYpzLJU2McjKuGXfMEqOkNSYkAbAqResz3VZ2ca/aX2nyFb+vjsMiopFRB5BXrw0bQ1cC6M4oap8iKC846MFiINKE3KGODpMMgkkDYrh13Xg4jPxLrFTOLDeN4jtPAyPPIXgw7a40T9FtuyADQ3ONeOp11wUBscwujTASCkduoysCo/vaziLyE4AIohNg2xGEvc0aOgnRowJJjURXhmRRpJdHzpJ16AWzDiG0tBvFHnaEe6pZDuFMETWwVJ7r2RMLHy7gM31Pr5Nvh37EApVzWMlXkcF3iWt+gQmvWh+Qzekia8xVBjkb9RDCBY+JVCoZrW92hClT8k3VksEfS1WBy2vwOqb85H61CsO0oSeXsGd3ZIcbQ+39KEFg6aem5hvQOm+LJw4rPt/8D/KvMSAZR7zCbl3OKi2zCjVryKLjcZ9rdBlQBsy80OMNq+iYA1ok3FGb1mq5BwmYJV+rsOm59X53QyrHMYQzaJzWdKH6jd1z2ZvoljISQkJrKVcZjtPrI0i3gdueT42mPQ7iEkmZIyXAfmxk3GsTyfOELJ5s1Gka3YQXLRs/JS4Fk=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(366004)(396003)(346002)(136003)(186009)(451199024)(1800799009)(83380400001)(26005)(2616005)(54906003)(66476007)(66556008)(66946007)(316002)(6916009)(4326008)(8676002)(8936002)(41300700001)(5660300002)(53546011)(6486002)(6506007)(6512007)(6666004)(2906002)(30864003)(7416002)(478600001)(86362001)(36756003)(38100700002)(21314003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?F2lUgGBZowA8fnOkBVrkrX+24Dowf4bbYezKI3cCAsrtAVNZSViE6SkFApm9?=
 =?us-ascii?Q?z6KMYUpIaZgctomgDs1DXyZHJtwFIDAVvDOiu6kAfYhpw/+eg1arX9b8VMv9?=
 =?us-ascii?Q?dIpftdUtVT685hDI8ahbPF7W9dpSC0U/VRNp/kPUKXK0Lap7aA5xymNkzvi6?=
 =?us-ascii?Q?bbozmLf/XfW8AjfsERpWc488SvLnArvsjrkclBIdDd8s6Yk+sTN7CjiLDDR5?=
 =?us-ascii?Q?4o5sxp0da4KfHxXNA+3TqPGQtPRFhd5S08m7ruLm0L4XFyt7nQZ+zIdIyclW?=
 =?us-ascii?Q?4rlezssJEqxFFNbfhlSUiBssq2nEn9KhMk+yR8GvFCJmXu4s2xsvMILi6nAy?=
 =?us-ascii?Q?NKsNBUbsfqAj7Mz7fg2EKublJxAAAvvx0B3CH1hqy2SkrIyKG7j+WeaT2Yhs?=
 =?us-ascii?Q?38FPKHYsJzOiJf2XxGfp821ePCSCnwMslkO8+1Cl+o0Ce79V8jvPaA2jqoyY?=
 =?us-ascii?Q?cZUyBtdAE9TbscrKrOEdeJ1zpZNxPmCJGdA0NIhcbhi50mPU8J52FFvKG27u?=
 =?us-ascii?Q?kZ0dS8Xrb5MA3rgOimfRnR+d2yQ6EoKXUtXMvXLQPZjW5rWPnNMx1CjW919b?=
 =?us-ascii?Q?+FN3FvsCq6zllCB4EJ62wAL8Gaa9nIm2rPSkEZE9UpChr3lH7RdL9l2754Ys?=
 =?us-ascii?Q?LQdSs8OgfH8mvv1eyUAOFybsc12gcRX1WK+LfdHexCQYY1sRIKp0N+NIg0wT?=
 =?us-ascii?Q?aDv2xvCM0nlM9KyVucGvsQ9+NnAj12f0pJlnKmoeLp8sSjCFVWUWyrxljhZa?=
 =?us-ascii?Q?maKg0VDRaOunf1DK9ur4vAp4hCEkpkNSdN/F8C1MkGeitvgs+GBxZ6I6VSam?=
 =?us-ascii?Q?R3w4wYOi4dxp+DqLl9HxO+0w4gKYfRggIWohoDkYvW1hpetsA/0PnOCipdec?=
 =?us-ascii?Q?k7ixCFRzXJQqG4j74PGB6LOGgFod1i+MUFN+ohNhvvU3bbYWIxrOO42QWV1p?=
 =?us-ascii?Q?yHXaUBIFO0oC0dJuw5aZd6LKk6Iisi6dB8Evp5/4HCAkQi8iIy3McFScBGVb?=
 =?us-ascii?Q?v0GE+nK4o5nd/Dmi7jQ6RMIqLnoP6wHxeGtFSNWJ6MxGPcEv8MURAee1Ee54?=
 =?us-ascii?Q?snjYKcK/gymYDZL2F3eAeZDYR+UNWBS0egWBmiTlxJQ/8CknMX8auxzNwXr4?=
 =?us-ascii?Q?nnYDFQraN6P2HlWerhnuzvgDV3gZGjLst9LGzS5PlH1IAapk/tUTlAM2EKzK?=
 =?us-ascii?Q?oAYeoGfaGbDfPivUG34WX0GxwRVdkIfaWxnx8e+CAy+VkWJksWgl8dIj77jW?=
 =?us-ascii?Q?oHarcZIgKt8gF5JTZDhpcqjRYvNhPoMD9gUjl/FgoE9h8TzFttohH2ruEdew?=
 =?us-ascii?Q?+FwZGcdlCiXp5idXhwz3FnFt0rP7mFw9N0zkYx+OaldlNKr9NtRZ/7n5rO96?=
 =?us-ascii?Q?Sfbv/cojcLl0QV2ill94HyVo2oE3xDh+uUNi3FLNoCv7Fb1r8VJG9L+357M5?=
 =?us-ascii?Q?vJ+WIzl2VHeuw4Ca9Flb7woo/zggbzru0JmnWVh+WSl5yCbEvp0osLDV2FsY?=
 =?us-ascii?Q?S2wl9SQO5kuDiQWKezKgReMrDEmBGKfykVUtJc2QCGf1BE4Uac3pNmU/VvaJ?=
 =?us-ascii?Q?CPSk/nQJxoe51Dx9Ouu7l/kUhcolOnc/fTb2pqs8?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6aee892b-bf98-48a0-233f-08dbaeaecbe3
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 07:56:37.3162
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: o45J3mama7HEFYWCSw3gsGI6nNPYlZvbgBTxvWGWxFXE3o71JmdfmhcQLV0iP46kezCnL8nrZCBfZK8wCNVIZg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB6825

On Wed, Sep 06, 2023 at 11:39:09AM +0800, Akihiko Odaki wrote:
> On 2023/09/06 12:09, Huang Rui wrote:
> > On Tue, Sep 05, 2023 at 05:20:43PM +0800, Akihiko Odaki wrote:
> >> On 2023/09/05 18:08, Huang Rui wrote:
> >>> On Thu, Aug 31, 2023 at 06:24:32PM +0800, Akihiko Odaki wrote:
> >>>> On 2023/08/31 18:32, Huang Rui wrote:
> >>>>> From: Antonio Caggiano <antonio.caggiano@collabora.com>
> >>>>>
> >>>>> Support BLOB resources creation, mapping and unmapping by calling the
> >>>>> new stable virglrenderer 0.10 interface. Only enabled when available and
> >>>>> via the blob config. E.g. -device virtio-vga-gl,blob=true
> >>>>>
> >>>>> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> >>>>> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
> >>>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> >>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
> >>>>> ---
> >>>>>
> >>>>> v1->v2:
> >>>>>        - Remove unused #include "hw/virtio/virtio-iommu.h"
> >>>>>
> >>>>>        - Add a local function, called virgl_resource_destroy(), that is used
> >>>>>          to release a vgpu resource on error paths and in resource_unref.
> >>>>>
> >>>>>        - Remove virtio_gpu_virgl_resource_unmap from virtio_gpu_cleanup_mapping(),
> >>>>>          since this function won't be called on blob resources and also because
> >>>>>          blob resources are unmapped via virgl_cmd_resource_unmap_blob().
> >>>>>
> >>>>>        - In virgl_cmd_resource_create_blob(), do proper cleanup in error paths
> >>>>>          and move QTAILQ_INSERT_HEAD(&g->reslist, res, next) after the resource
> >>>>>          has been fully initialized.
> >>>>>
> >>>>>        - Memory region has a different life-cycle from virtio gpu resources
> >>>>>          i.e. cannot be released synchronously along with the vgpu resource.
> >>>>>          So, here the field "region" was changed to a pointer that will be
> >>>>>          released automatically once the memory region is unparented and all
> >>>>>          of its references have been released.
> >>>>>          Also, since the pointer can be used to indicate whether the blob
> >>>>>          is mapped, the explicit field "mapped" was removed.
> >>>>>
> >>>>>        - In virgl_cmd_resource_map_blob(), add check on the value of
> >>>>>          res->region, to prevent beeing called twice on the same resource.
> >>>>>
> >>>>>        - Remove direct references to parent_obj.
> >>>>>
> >>>>>        - Separate declarations from code.
> >>>>>
> >>>>>     hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
> >>>>>     hw/display/virtio-gpu.c        |   4 +-
> >>>>>     include/hw/virtio/virtio-gpu.h |   5 +
> >>>>>     meson.build                    |   4 +
> >>>>>     4 files changed, 225 insertions(+), 1 deletion(-)
> >>>>>
> >>>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> >>>>> index 312953ec16..17b634d4ee 100644
> >>>>> --- a/hw/display/virtio-gpu-virgl.c
> >>>>> +++ b/hw/display/virtio-gpu-virgl.c
> >>>>> @@ -17,6 +17,7 @@
> >>>>>     #include "trace.h"
> >>>>>     #include "hw/virtio/virtio.h"
> >>>>>     #include "hw/virtio/virtio-gpu.h"
> >>>>> +#include "hw/virtio/virtio-gpu-bswap.h"
> >>>>>     
> >>>>>     #include "ui/egl-helpers.h"
> >>>>>     
> >>>>> @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
> >>>>>         virgl_renderer_resource_create(&args, NULL, 0);
> >>>>>     }
> >>>>>     
> >>>>> +static void virgl_resource_destroy(VirtIOGPU *g,
> >>>>> +                                   struct virtio_gpu_simple_resource *res)
> >>>>> +{
> >>>>> +    if (!res)
> >>>>> +        return;
> >>>>> +
> >>>>> +    QTAILQ_REMOVE(&g->reslist, res, next);
> >>>>> +
> >>>>> +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
> >>>>> +    g_free(res->addrs);
> >>>>> +
> >>>>> +    g_free(res);
> >>>>> +}
> >>>>> +
> >>>>>     static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >>>>>                                          struct virtio_gpu_ctrl_command *cmd)
> >>>>>     {
> >>>>> +    struct virtio_gpu_simple_resource *res;
> >>>>>         struct virtio_gpu_resource_unref unref;
> >>>>>         struct iovec *res_iovs = NULL;
> >>>>>         int num_iovs = 0;
> >>>>> @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >>>>>         VIRTIO_GPU_FILL_CMD(unref);
> >>>>>         trace_virtio_gpu_cmd_res_unref(unref.resource_id);
> >>>>>     
> >>>>> +    res = virtio_gpu_find_resource(g, unref.resource_id);
> >>>>> +
> >>>>>         virgl_renderer_resource_detach_iov(unref.resource_id,
> >>>>>                                            &res_iovs,
> >>>>>                                            &num_iovs);
> >>>>>         if (res_iovs != NULL && num_iovs != 0) {
> >>>>>             virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
> >>>>> +        if (res) {
> >>>>> +            res->iov = NULL;
> >>>>> +            res->iov_cnt = 0;
> >>>>> +        }
> >>>>>         }
> >>>>> +
> >>>>>         virgl_renderer_resource_unref(unref.resource_id);
> >>>>> +
> >>>>> +    virgl_resource_destroy(g, res);
> >>>>>     }
> >>>>>     
> >>>>>     static void virgl_cmd_context_create(VirtIOGPU *g,
> >>>>> @@ -426,6 +451,183 @@ static void virgl_cmd_get_capset(VirtIOGPU *g,
> >>>>>         g_free(resp);
> >>>>>     }
> >>>>>     
> >>>>> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> >>>>> +
> >>>>> +static void virgl_cmd_resource_create_blob(VirtIOGPU *g,
> >>>>> +                                           struct virtio_gpu_ctrl_command *cmd)
> >>>>> +{
> >>>>> +    struct virtio_gpu_simple_resource *res;
> >>>>> +    struct virtio_gpu_resource_create_blob cblob;
> >>>>> +    struct virgl_renderer_resource_create_blob_args virgl_args = { 0 };
> >>>>> +    int ret;
> >>>>> +
> >>>>> +    VIRTIO_GPU_FILL_CMD(cblob);
> >>>>> +    virtio_gpu_create_blob_bswap(&cblob);
> >>>>> +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
> >>>>> +
> >>>>> +    if (cblob.resource_id == 0) {
> >>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> >>>>> +                      __func__);
> >>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> >>>>> +        return;
> >>>>> +    }
> >>>>> +
> >>>>> +    res = virtio_gpu_find_resource(g, cblob.resource_id);
> >>>>> +    if (res) {
> >>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already exists %d\n",
> >>>>> +                      __func__, cblob.resource_id);
> >>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> >>>>> +        return;
> >>>>> +    }
> >>>>> +
> >>>>> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> >>>>> +    if (!res) {
> >>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> >>>>> +        return;
> >>>>> +    }
> >>>>> +
> >>>>> +    res->resource_id = cblob.resource_id;
> >>>>> +    res->blob_size = cblob.size;
> >>>>> +
> >>>>> +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
> >>>>> +        ret = virtio_gpu_create_mapping_iov(g, cblob.nr_entries, sizeof(cblob),
> >>>>> +                                            cmd, &res->addrs, &res->iov,
> >>>>> +                                            &res->iov_cnt);
> >>>>> +        if (!ret) {
> >>>>> +            g_free(res);
> >>>>> +            cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> >>>>> +            return;
> >>>>> +        }
> >>>>> +    }
> >>>>> +
> >>>>> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> >>>>> +
> >>>>> +    virgl_args.res_handle = cblob.resource_id;
> >>>>> +    virgl_args.ctx_id = cblob.hdr.ctx_id;
> >>>>> +    virgl_args.blob_mem = cblob.blob_mem;
> >>>>> +    virgl_args.blob_id = cblob.blob_id;
> >>>>> +    virgl_args.blob_flags = cblob.blob_flags;
> >>>>> +    virgl_args.size = cblob.size;
> >>>>> +    virgl_args.iovecs = res->iov;
> >>>>> +    virgl_args.num_iovs = res->iov_cnt;
> >>>>> +
> >>>>> +    ret = virgl_renderer_resource_create_blob(&virgl_args);
> >>>>> +    if (ret) {
> >>>>> +        virgl_resource_destroy(g, res);
> >>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: virgl blob create error: %s\n",
> >>>>> +                      __func__, strerror(-ret));
> >>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> >>>>> +    }
> >>>>> +}
> >>>>> +
> >>>>> +static void virgl_cmd_resource_map_blob(VirtIOGPU *g,
> >>>>> +                                        struct virtio_gpu_ctrl_command *cmd)
> >>>>> +{
> >>>>> +    struct virtio_gpu_simple_resource *res;
> >>>>> +    struct virtio_gpu_resource_map_blob mblob;
> >>>>> +    int ret;
> >>>>> +    void *data;
> >>>>> +    uint64_t size;
> >>>>> +    struct virtio_gpu_resp_map_info resp;
> >>>>> +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
> >>>>> +
> >>>>> +    VIRTIO_GPU_FILL_CMD(mblob);
> >>>>> +    virtio_gpu_map_blob_bswap(&mblob);
> >>>>> +
> >>>>> +    if (mblob.resource_id == 0) {
> >>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> >>>>> +                      __func__);
> >>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> >>>>> +        return;
> >>>>> +    }
> >>>>> +
> >>>>> +    res = virtio_gpu_find_resource(g, mblob.resource_id);
> >>>>> +    if (!res) {
> >>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
> >>>>> +                      __func__, mblob.resource_id);
> >>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> >>>>> +        return;
> >>>>> +    }
> >>>>> +    if (res->region) {
> >>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already mapped %d\n",
> >>>>> +		      __func__, mblob.resource_id);
> >>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> >>>>> +        return;
> >>>>> +    }
> >>>>> +
> >>>>> +    ret = virgl_renderer_resource_map(res->resource_id, &data, &size);
> >>>>> +    if (ret) {
> >>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource map error: %s\n",
> >>>>> +                      __func__, strerror(-ret));
> >>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> >>>>> +        return;
> >>>>> +    }
> >>>>> +
> >>>>> +    res->region = g_new0(MemoryRegion, 1);
> >>>>> +    if (!res->region) {
> >>>>> +        virgl_renderer_resource_unmap(res->resource_id);
> >>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> >>>>> +        return;
> >>>>> +    }
> >>>>> +    memory_region_init_ram_device_ptr(res->region, OBJECT(g), NULL, size, data);
> >>>>
> >>>> I think memory_region_init_ram_ptr() should be used instead.
> >>>
> >>> Would you mind to explain the reason?
> >>
> >> The documentation comment of memory_region_init_ram_device_ptr() says:
> >>   > A RAM device represents a mapping to a physical device, such as to a
> >>   > PCI MMIO BAR of an vfio-pci assigned device.  The memory region may be
> >>   > mapped into the VM address space and access to the region will modify
> >>   > memory directly.  However, the memory region should not be included in
> >>   > a memory dump (device may not be enabled/mapped at the time of the
> >>   > dump), and operations incompatible with manipulating MMIO should be
> >>   > avoided.  Replaces skip_dump flag.
> >>
> >> In my understanding it's not MMIO so memory_region_init_ram_ptr() should
> >> be used instead.
> >>
> > 
> > It actually maybe the video memory (mmio) or system memory here. :-)
> > 
> > We will get the host memory for blob from host with
> > virgl_renderer_resource_map() in virglrenderer. In virglrenderer, there are two
> > types of VIRGL_RESOURCE_FD_DMABUF and VIRGL_RESOURCE_FD_SHM to indicate the
> > memory types. The shmem is the system memory that won't need GPU
> > accessible, and dmabuf is the memory that required GPU accessible. Host
> > kernel amdgpu driver will register dma-buf to export the resource buffer
> > for sharing, and here, it may have video memory that exposed by amdgpu pcie
> > bar0 in the dma-buf buffers. And we also have system memory(gtt) that can
> > be mapped as gpu page tables for gpu accessible.
> > 
> > 07:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Renoir (rev c1) (prog-if 00 [VGA controller])
> >          Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] Renoir
> >          Flags: bus master, fast devsel, latency 0, IRQ 56
> >          Memory at fcc0000000 (64-bit, prefetchable) [size=256M]
> >          Memory at fcd0000000 (64-bit, prefetchable) [size=2M]
> >          I/O ports at 1000 [size=256]
> >          Memory at d0400000 (32-bit, non-prefetchable) [size=512K]
> >          Capabilities: <access denied>
> >          Kernel driver in use: amdgpu
> >          Kernel modules: amdgpu
> 
> In my understanding it is not relevant if the memory is backed by device 
> or not. Here MMIO means memory-mapping I/O registers that has 
> side-effects during accesses. Reading such a register may acknowledge an 
> interrupt for example and the unit of writes may also matter. 
> memory_region_init_ram_device_ptr() ensures no supurious memory read 
> will not happen and word accesses are preserved.
> 
> They do not matter for video memory even if it lies in a separate device 
> memory. In this sense the name "memory_region_init_ram_device_ptr" is 
> somewhat misnomer.
> 

OK. Thanks for the clarification.

After traced the code, if memory_region_init_ram_device_ptr(), it will use
memory_region_dispatch_write() to call into memory_region_ram_device_write()
which registered as ram_device_mem_ops to write ram_block->host with offset
dword by dword. And if we use memory_region_init_ram_ptr(), the
flatview_write_continue() will use memmove() to write buf into ramblock while
we write the blob memory. May I know whether you mean the "memmove" may have an
interrupt or supurious memory access?

        } else if (!memory_access_is_direct(mr, true)) {
            release_lock |= prepare_mmio_access(mr);
            l = memory_access_size(mr, l, addr1);
            /* XXX: could force current_cpu to NULL to avoid
               potential bugs */
            val = ldn_he_p(buf, l);
            result |= memory_region_dispatch_write(mr, addr1, val,
                                                   size_memop(l), attrs);
        } else {
            /* RAM case */
            ram_ptr = qemu_ram_ptr_length(mr->ram_block, addr1, &l, false);
            memmove(ram_ptr, buf, l);
            invalidate_and_set_dirty(mr, addr1, l);
        }

Thanks,
Ray


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 07:57:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 07:57:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596304.930152 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdnQ1-0007ey-5r; Wed, 06 Sep 2023 07:57:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596304.930152; Wed, 06 Sep 2023 07:57:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdnQ1-0007eq-2U; Wed, 06 Sep 2023 07:57:45 +0000
Received: by outflank-mailman (input) for mailman id 596304;
 Wed, 06 Sep 2023 07:57:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdnQ0-0007Y3-05
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 07:57:44 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20603.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::603])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0ef7064d-4c8b-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 09:57:43 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB7090.eurprd04.prod.outlook.com (2603:10a6:208:19e::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Wed, 6 Sep
 2023 07:57:40 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 07:57:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0ef7064d-4c8b-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cWjKNUQ1Ib0Q4zLRU8pzTkUD6LaH8CXt9btwO986/SYwKMRtcrCcAzqlwgNy9+gpxU1ohe5ytKk7194WRtKZGts2OPypiej17J05fs7Y2jAC797FtQzbMGc99wpMzpmhvAtFyD3Efs7u++AMW8IdOQ76gjpXyiW3MVXbON6MeKM2Dhc8xF4WXPaaEVwFt5jzkwE1lkhZlve5SPRc8tyqo6YxjqaOI5rF+joIiMGtF+I0rSbSixlEvooTL9DnaSrUqn1ES5JNPobM3wbrKg0hNnM8dXJV6hdC1Ks1629AF/PBxhA03dS0NcFrZE8j3TZdWUfgBPAyl+PTjzldt9BA6A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vmiJC2/D3Lccxlr3AQUOlcFKrxW7piVLIaRarkfX0AE=;
 b=HPbJRRKZYp4ygOBOeVCpTbHz6Xk8EHPckhvaliYsHvXH9gClzCBe+70UHGr9rtZz8Qi7bd0moZ8g3unUz2B3nRRX5b9o9opiJcjYuZXEqJtHYBryMKRle7IYwADycOeot2Q28NMg3fRBh8hXHCMsjxB/M4qIKLfBCkXx4tzlIYMxwtQFZPF5q2tAnZ/xPhPtTjUlVOKeKLjo2RtDnTXxzEztM9+4oBJIxSFxdwU694V43C7wFYIWdYTSs4EEwYnhtWMtK9auLsWI6atSiI2Gwg5Vtq+I87wVy0yGTrYNRETqnj590hbV7GmSw9+hjynggc9izZKR6UuWgCVgdmCXFA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vmiJC2/D3Lccxlr3AQUOlcFKrxW7piVLIaRarkfX0AE=;
 b=2LD0BiRQOmuytOJuAXEonay1PrPS8dAA5u44CSBSjTHzad4uyO7Ouva4eLQrllP7SBzkeouelufFJ0Ezvrv+58CucGGwAQiAX5H0/HW0aFQh8VKLtdmsxMq3iA8td+e2SDc912iqRQ73D1T5GKeTGli9gDhgs3daNtX/nXYSW30TwUnweYc3UOHU+8WBq2v9VHf4TmaFnRh1QBvPnK6jLN9KqLErz+IoTUxmEo2W7E8AQ7lw9s/UaDTZt2PKgNxSk7WwHmGXFpeEAYxmAwjEorYkV+OAS8iNHLKYfXtaNseTA8lBcH+cfTG40myxAJnKPEq8T2Y8lBjEsBgwpkBuMw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <dd1026ce-8c2b-2198-fc7f-91f7e671e62f@suse.com>
Date: Wed, 6 Sep 2023 09:57:37 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN][PATCH v12 20/20] tools/xl: Add new xl command overlay for
 device tree overlay support
Content-Language: en-US
To: Michal Orzel <michal.orzel@amd.com>,
 Vikram Garhwal <vikram.garhwal@amd.com>
Cc: julien@xen.org, sstabellini@kernel.org, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
 <20230906011631.30310-21-vikram.garhwal@amd.com>
 <3ee81557-50d2-1ae0-e700-9f20672ef15e@suse.com>
 <6a3bcb64-2416-225e-8a5e-5ea7823d3c29@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6a3bcb64-2416-225e-8a5e-5ea7823d3c29@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0088.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM0PR04MB7090:EE_
X-MS-Office365-Filtering-Correlation-Id: b77ede8b-10b5-4445-2110-08dbaeaef16c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BPwshETNJsDryG7b6nCEr/UoHi7uODau7i1Se4+78b44ARvn9jdtAlBRqKsYS6FOk0PJS7I6R3XFSfDXZMXIWL0l31HG1ySpgGkB5ElCgSgOdmc19sGG+SMrgxkliqD7mMg8ljjPkmE/Y2/nAqxAKJYYjvErdLjEKtbSaq5vdRL45+XK0mpsUISTG5cOFzP6Badk3hL77q60oF+EYbQxU70Bk2xYkt0eOR5tjpjxJ7jqQQ9HVa7vUYuAP9xXuxT9j4a/g96JpdTKua0idS0d7lHySn4rQpY8wrsLOrM0u4sumhlBuiPC58DhL+fydSc7/Gpm9zGSRQYzFkRKIB3hFIQQXhqICo56G02IqBo4P+P3lZXk4YjLLzvmABVISKiqpBfT26S/V0CHOv6rsVAqote6MTNcsAWamlvly/IJLljRprh0JxnMnC0aKuWH+KHxfFJKsha3fVUkFI+gLOyHYe6nNk3KvPi9v6BsctMYMcBK6d7HBmpGem3WvKliSP6KsWeSd4R72/07Txw/K53Gvf3DuAZeyC5zhgQe2sO7/5qi3Dy3tKYgCQ28RW080LjpZ2NHuE1XIPTkxU4ENjPyyYvXpKqSlAdKWH7oPS4j6f3Y39eoZRPnKF+oEnefKGfO8xDObBO+h7GGJJPM5umD5Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(376002)(39860400002)(136003)(396003)(451199024)(186009)(1800799009)(31686004)(86362001)(83380400001)(36756003)(5660300002)(31696002)(6486002)(41300700001)(38100700002)(66556008)(66946007)(478600001)(26005)(66476007)(2616005)(6666004)(110136005)(53546011)(8676002)(8936002)(4326008)(6512007)(6506007)(2906002)(316002)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?REtsd2t4UFBnaGd1OWc4clc0RXJBSWpvc1dwOTJsc2R4NDdKWmNkVlBqM0I5?=
 =?utf-8?B?MHBLUHl2a3p5QjYwVnVYWlVrdWZUcnpSRkg2MHZHQVo4N2RyRlEzQWd2aDY2?=
 =?utf-8?B?em1xOHlhYVpLMFd2cFdVNGlFQUx6aDdEb0dvQVd0cThoM1laU0lPdk53Z05S?=
 =?utf-8?B?bVVEQkdyQW1ybWRqU25jclo2K3ZNRWRUNlVrKzZmTHlnMWJLUmVpcTFTaGxU?=
 =?utf-8?B?am5rQlMwa2d3R2Z3Tlh0ZThDTEFJL3dwWFV6aFFsQlRHdm96aXMwYU02eDZB?=
 =?utf-8?B?UWkxc0J5UTFCakkzRHBFNUVwNk1sL2l5bVYrK3R4cXp5Nk9GWlAyVUw4bzdt?=
 =?utf-8?B?TkV4N3FPS2VVTVFHYUxONHdFUDk1bDVyTzR6MWJOWDVPN0xVUHNrckFrNTJo?=
 =?utf-8?B?alBSL3JqdHM1VTJCWFR0VndJYmlkZk1Xak93OUk0TzNJQmdYSkRzbjRHUWlR?=
 =?utf-8?B?Y0xPV25RMkxHTndLNTN5RHlGRVl0czRaNnZmeitKYUo5aWkwTUFVWS9CQ3ZK?=
 =?utf-8?B?ZVJCTTRjQ3ZXL2RNbzdLajRQNjFsbk8xaHRrYzNDanRDci9xRmtWWXE5bVRr?=
 =?utf-8?B?NW10Tm94cDZNa1NQcTIreURZSzNkVFAyZUdybW1NNHNCSHdrSkVOVWIrZHUw?=
 =?utf-8?B?OFNFRU5uSFBKemwzL0FCNzBZVENzSFRaTWtkOFl5bEVrTXJvRmtiQURpU3Vz?=
 =?utf-8?B?ZEI0SHRERWFpZnlwS2txcVRpbDhMU0F6MzNFdnprVktFVW1LbmdKUy9HSFhJ?=
 =?utf-8?B?ZlRvbzFqR2tDN2dXVThucUliWVZ5MVFtUnZlV0FVWVdtcVlpendPcnJVOUQv?=
 =?utf-8?B?TmxCRkcrV3ZZRjFzMnd4NkdTaVhYaGxOZWg5Sk5ETDRIakVheVRhN0kwVWZW?=
 =?utf-8?B?T1Q2Rm5BMjZTWFpmMktCRWZuVXZqR3ZqTUROaFc5bmtKOE9Ld1BoeXhCY0lx?=
 =?utf-8?B?Qk1TNWc3WmxTZ2VocFVSUHFFQzBROUhZNHhYYmIyVHEwWnFzUTRDb1pxMkph?=
 =?utf-8?B?aXJEL0hlRkFSNkNpQnRNU1VyTFE0VmNzbmN5YlBlTXBBRFV0UmZDNGEvS3k3?=
 =?utf-8?B?bVlKNWtRUVBEakhZU0xPSm1iNGZnNG44Q0FUK1YwdnRnSlBLdllDSEhFcEs2?=
 =?utf-8?B?aExpMHpzalVUcE5NYkVYb2NxUi9YL3RPZjRvdVFWWCtEc3VnYzQ1clBiTG1m?=
 =?utf-8?B?RVpLcVdkWHpJSis1NWxXcEpJOHloUmYrdDI3U0tUR0MvSEg3UEYwT1pIUFUy?=
 =?utf-8?B?NWZ6SG9jNS9sWXF6VFJycmRVRytZMmxaNjFycC80WFNmV2FQLzVwUFM4cHJW?=
 =?utf-8?B?Q3FjRHVMNEF6NEM2N0RhK040TjN6L3pLeXh3RzdsMFpwNWtJeVAxekpRcnZE?=
 =?utf-8?B?YTdkR2dCbTNLa3Nic3NTdnR1aXovTVcyUXc4VGNzL0RxRyt0RTQ2TnNCSGN0?=
 =?utf-8?B?M09FSHpTU3Vla3NHQVoxTVIrMWI3Z0lvek5JTldzZ1BnV3ExdDRoVklYT0Jv?=
 =?utf-8?B?ZDhSZjF5a3hrVlVWaU13ejd2dTJuVFFKakVqOHJjNGRGZTVoNWtDMENOUktI?=
 =?utf-8?B?SW1qWU43bDJoSnVwcnFyR3pCTURNanV2cDNzaFpKVjZkSmpndFZJWC9iZWFP?=
 =?utf-8?B?cGFBRVo2MElKa0lzMmpha0VMUThWOWdwL3U2UEU2NE1HS3Y3MXN5NUN4WWVu?=
 =?utf-8?B?eDU4VlFHQktYM0NlVkRpSUFOUHoxRU5Tbm82Q0hUT2RHbGx3L3pBOFB0c2pp?=
 =?utf-8?B?V3grWU5jMUhsUWpwSGFoYXdmQkZTRDNUaHRIS0dJUXFEc2V3YmJTenBFem1P?=
 =?utf-8?B?bENPMmlTbzhldXp1ZFhKbU5XZjJVWWt4TTFlMlB4MzR4dE9WUFpCb3UyTElN?=
 =?utf-8?B?VlZrSnZWcjdqemVZZ1NaQm8xVmFIVldxSGcrMitzV25veHhSUGdxUWhqVktH?=
 =?utf-8?B?TmNmNGNQdDFTU0hLZnpma3c2em9ZRUR0QjJlNjFpeHBha2hLY2pkcGt4MFRp?=
 =?utf-8?B?cm1teFEyK2NLdHAxRW8wVVdLV0VjVGJaQWZhend6aEdoSUd5bm9MWEc3RGFV?=
 =?utf-8?B?RlNacy80dk9CNzhwaTJJclBlRDBJUkc5ZE5CVE5iM3NTY0NTTm81QnpDV3p3?=
 =?utf-8?Q?uS8DG0F1TxsjLN7SFFGd/DHl3?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b77ede8b-10b5-4445-2110-08dbaeaef16c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 07:57:40.2244
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 78daT/jdFoSjz6E1hTFfn3aQ6RC8NaJ6ajjm38fv0wTMW+TEOveYj8la1603q4IsCDLpyu13CmydPGi2CitV7Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB7090

On 06.09.2023 09:32, Michal Orzel wrote:
> 
> 
> On 06/09/2023 08:55, Jan Beulich wrote:
>>
>>
>> On 06.09.2023 03:16, Vikram Garhwal wrote:
>>> --- a/tools/xl/xl_vmcontrol.c
>>> +++ b/tools/xl/xl_vmcontrol.c
>>> @@ -1265,6 +1265,58 @@ int main_create(int argc, char **argv)
>>>      return 0;
>>>  }
>>>
>>> +int main_dt_overlay(int argc, char **argv)
>>> +{
>>> +    const char *overlay_ops = NULL;
>>> +    const char *overlay_config_file = NULL;
>>> +    void *overlay_dtb = NULL;
>>> +    int rc;
>>> +    uint8_t op;
>>> +    int overlay_dtb_size = 0;
>>> +    const int overlay_add_op = 1;
>>> +    const int overlay_remove_op = 2;
>>> +
>>> +    if (argc < 2) {
>>> +        help("dt_overlay");
>>> +        return EXIT_FAILURE;
>>> +    }
>>> +
>>> +    overlay_ops = argv[1];
>>> +    overlay_config_file = argv[2];
>>> +
>>> +    if (strcmp(overlay_ops, "add") == 0)
>>> +        op = overlay_add_op;
>>> +    else if (strcmp(overlay_ops, "remove") == 0)
>>> +        op = overlay_remove_op;
>>> +    else {
>>> +        fprintf(stderr, "Invalid dt overlay operation\n");
>>> +        return EXIT_FAILURE;
>>> +    }
>>> +
>>> +    if (overlay_config_file) {
>>> +        rc = libxl_read_file_contents(ctx, overlay_config_file,
>>> +                                      &overlay_dtb, &overlay_dtb_size);
>>> +
>>> +        if (rc) {
>>> +            fprintf(stderr, "failed to read the overlay device tree file %s\n",
>>> +                    overlay_config_file);
>>> +            free(overlay_dtb);
>>> +            return ERROR_FAIL;
>>> +        }
>>> +    } else {
>>> +        fprintf(stderr, "overlay dtbo file not provided\n");
>>> +        return ERROR_FAIL;
>>> +    }
>>> +
>>> +    rc = libxl_dt_overlay(ctx, overlay_dtb, overlay_dtb_size, op);
>>
>> Because of this being Arm-only (as validly pointed out by osstest), I expect
>> the entire function here as well as its entry in cmd_table[] want to be
>> Arm-specific, too? Of course it would be nice to not key this to __arm__ /
>> __aarch64__, but to something that would not need touching again if the
>> underlying infrastructure was made available to, say, RISC-V as well. But of
>> course - right now the goal needs to be to address the CI and osstest
>> breakage.
> I agree. I would suggest to guard it with LIBXL_HAVE_DT_OVERLAY which is for now
> only defined for arm32/arm64. This way the code will not need to be modified if other
> arch gain support for the feature.

Ah yes, that ought to work. While there perhaps also replace the conditional
around the declaration of the function in libxl.h. (But of course Anthony
may tell me/us that this isn't the way to go.)

> If you agree, I can send a patch to unbreak CI unless you want to do this.

Please do.

Thanks, Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 08:01:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 08:01:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596317.930162 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdnTC-0001MC-VT; Wed, 06 Sep 2023 08:01:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596317.930162; Wed, 06 Sep 2023 08:01:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdnTC-0001M7-SZ; Wed, 06 Sep 2023 08:01:02 +0000
Received: by outflank-mailman (input) for mailman id 596317;
 Wed, 06 Sep 2023 08:01:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdnTB-0001Ly-Lq
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 08:01:01 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0604.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::604])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 84a70f3d-4c8b-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 10:01:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS4PR04MB9574.eurprd04.prod.outlook.com (2603:10a6:20b:4fc::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 08:00:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 08:00:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 84a70f3d-4c8b-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hcFBbnMl/ICDCIE9PV/EGZ8KLBGsr2+OIWEnkNLhl6Z8eXTe76cMD+wGYZgOKY3qq7sVDarubQmWGt8j6G5YF+ti2Voqu5vPPgbZ8vEbvXjAWj7G9DAmz/w4EqJeFrILpUZR6/mBCQF6sDDDq5nttXcd+K0TEvylietuoAyV/gCs4f8XVY9YpU00Vo3xwjz1gtntRi7lgZCRO5XiwL0lm38hZ16aPyLwCHaX1A5WULFz0G+bCtbufoxC9UP3fxx58aNp2pXVEyqr49lewxy9maN6Pwmy0X2Y9ejErTAFe+au3NRiI4vTfay3yHFgh9M2YNRvl6UL4LF6qRkQVH52Jw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MVvUqnpUMebK4DgtpqZUlL/bKQ1dl3/Br0PPov3hBjw=;
 b=e1dn2zkNy5VY59Gk3iyT3b5gLD3sLcVaus42tl/AcoD1HiBxN4xt6qifp/4hE3Fs4e/zCOGtBywG5+mmYh/E4olPaMPj0Dkq4g+h9/C9q+SgaESO71PiNRR5YUDP8FijkoN4ZB3XUNt4jDuBTiMXe9ORoRnmOf11Dg1+lJ7dh2yRj/aXdUaIo2YZzJjTphT+w8jv/7/8ELPN0MOe1xUAiK5t/fJl0W/BY2naimZv6m8TCA6SUKNJvGEsQNZefejY6cQGuMPH8EN9jYVNavYu60fNPjxbx7kv7+IMBPlah9FTjDUKBa0fN2iWq291QRrfRyn4RV8oUS3kO9mcq8uK8w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MVvUqnpUMebK4DgtpqZUlL/bKQ1dl3/Br0PPov3hBjw=;
 b=RWScphPyL18EZ0o37kyHFZLqqDkyPZMwyiHmYtmHVPXuNKgpTHRPgivgqmMZNIYCfkwHjDqyjGG7ro4d74g238LDuFEki6J/1fb1vuHqU3f+sr17/GBJHOBxjxVj5YKbkOUAQk2oXQ7xAZ1CMg1EIOqAA86Gth4OeOuxrjwWMShvWOyGUHE42HtW95AcMhVAbfpxvklVEeEgC/HV/HmAUePrCcrAuk/g6vraiVCpssXY9ktRScFvxt5U/jelWaiCIsi2ut/Dh/VF60/nnVq0qe7uboaSm9b/eKHUcfVYQvzNB+vpgaIaa3d/jSOKtsDyxlVGicW5+RXfFNi4vYuxLA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <aa70cc0f-452b-7e73-0592-ff46c3727636@suse.com>
Date: Wed, 6 Sep 2023 10:00:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v5 3/5] xen/pci: update PCI_STATUS_* constants
Content-Language: en-US
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230901045742.235975-1-stewart.hildebrand@amd.com>
 <20230901045742.235975-4-stewart.hildebrand@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230901045742.235975-4-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0040.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4a::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS4PR04MB9574:EE_
X-MS-Office365-Filtering-Correlation-Id: fc3b5a70-6099-4306-61e3-08dbaeaf6779
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VXwnlSWzXhW5WX69LZb4rXiICgg+2kgzfh7sZFtgFAvcFNlIISrd8TY3LnLZvC2DAHPSSbzrB0qcFcoWZJPjApg1ZJuqryFKcJrlao2DsDBc6O06F0jr3qlyWbfHmrPgwUHx3yNsgLlRrEofM0RRznjIihrkKeTIBGZFLQKAOhaLFMMTQPil/LbEnHS4Netwr/K2ukqrt8I0oUE/POuTMNbgmQ2HF1iwjbWOQ0NNtak5uWQ05hoRrfqJtu40KhyGwl6t/Y/8BXFYkvy8OPsl0VyNpxCyezFiXReozxJJGfN9OFpGXrx1pBtc6LTyaE+IEaf33CWKKekdDUcbRN3qV8GaEYMEs0n8vbHihX1B0pdvTTgkLKEyL+/xfxxcifmNz1XE3gbUht/8aqy4x0Nr39L7cyf+4TemEOv8LLXm3ngSPTJyhDqWtg16NRZOCdYUA55UrJOBhD6YkjePwmgNb4Z4S/eHru+v2T/AoM7cdYFuIhmyvx8+FqUpbyVlTw2jTR1/Ap5uuGNaZdQaRusy21qL8yh2vDdFlb1FzDzp75K7+85CobVYtJzZPEwuou3OlAaGZTaq9VortB7E24FEpxzWcy4TtlRXSbTEy+M08zM6lDIIAHPn9iuk5w0Ivl7DLiFIxxsNUxvkOogxLetpqQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(346002)(376002)(366004)(39860400002)(136003)(451199024)(186009)(1800799009)(31686004)(53546011)(6666004)(6486002)(6506007)(36756003)(38100700002)(31696002)(86362001)(558084003)(2616005)(478600001)(2906002)(26005)(6512007)(41300700001)(8936002)(8676002)(5660300002)(4326008)(316002)(6916009)(66476007)(66946007)(66556008)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?c3l1RWZHcFoySEZUZVNtcUF2bUF1ZU51SlErZE5DUVVZdFMwTGdRbWpteGph?=
 =?utf-8?B?MU9qNFRXaGhISFNsUkJhRWpteXhUamk4c0JKWjZIdWE1Y1g2OWRRM0dlSW9U?=
 =?utf-8?B?dnJCeTQ4azJJeUEvSVZNOFlFcm0xUWdScEh2RXovZ1gwY21tUFdwOUIzKzha?=
 =?utf-8?B?aDhGL3FvY2gxZ1VUQU5IVGtLa21GV2YzQzlpd1NNNTFrdjA1OXJQVVhKMG5C?=
 =?utf-8?B?akNiRFQ0QWs1NDBVV0padmw1QmNOc1BBd1BZalU1aU5ISmg3dGE0Z0VrUmFx?=
 =?utf-8?B?TlVza2xML0xLZXBHT2tUaUtyaFRxVG5PRlBMQXM1cjNoekliM3ZsMm91ZGtX?=
 =?utf-8?B?QzA0b1lvRW5pdE1nKytGUlAzOTFFaGlpRWxJTG82b2l3aGVvcXp5R1B0bUVN?=
 =?utf-8?B?S1JLdUxCcWh5bHgyU2ZDU244OEpZMXdBdXZuYUhpTklQVVRIckw0MlAvM1VI?=
 =?utf-8?B?UkI3WFNWeHc2S2ZzU1B4d2xkQVlhdlRUZUVVR2Z3Rll5Sy9CbWx5UlYyYkdu?=
 =?utf-8?B?Ym1qQUloQ04vSW5HWUVSZGcyUmZxNm9Kam9PQVpyWGZjU0dqQjFjYjVkM3Vk?=
 =?utf-8?B?MWxpN0VBbjJXdGFRL2F2SXQ4Zm9Zdmt6R3IyYmQwTU9zZ3F1elFXTUJVWGxo?=
 =?utf-8?B?Y3pWQW85NkVzVlBpTnB6S0NpckdaMFo1eHc2cnMrRWRUUFllYUxLc0h4VUtv?=
 =?utf-8?B?Ymx5ZHJNUlM2NVNFaHZ0SUVvZHl1R1VrSG1PeVh1QVQ4N2xGdHpDektxMUk2?=
 =?utf-8?B?UXZCb0ppcm4yRkZ5bXc4OHpUVitCZkF4K2hBMFdBODVxTkh3NTYrL1RpS0FW?=
 =?utf-8?B?Mk9xa3hHVS82UUU2THUvdzU2UGJHd3ZlZUZXUXNuTzZYdWpNNHFYSGkxVk9T?=
 =?utf-8?B?Nm9ZUGRYSzJuV2JMSTNKa3FKRlZpZnRWZ3FsZnFvRTFnK1h3bmpTL3gxZHFo?=
 =?utf-8?B?WUpESnUxRndDbmNCSmt4ZW11M3FYUVlFUitOU05xN00wditXSU02MTU4bFZm?=
 =?utf-8?B?TXk4Z09UanpHYnJyRzlWVWIvU29URXBOd3BuNVJxZEFtNk9xZThCWngzMGhU?=
 =?utf-8?B?SzVsN0R6eVBnY3lpZG9oeUtCRW1KRERmZ01wNnR5V1I0TUNDdGVJSnA3UCs4?=
 =?utf-8?B?NjRNZnZDL2l4SG5mSThCZlUvUWR5WnFCZVltcmxwNXZkUy9yd3A4RFNJNHM2?=
 =?utf-8?B?bVVvRFk5bklQRFNuWlNrTTk1Mjk3L091bjAzQ1AxV1pXb0pKKzRxc2hnSTA5?=
 =?utf-8?B?VGFEYktyNHNiV3Bac28wVU5hcGw0MndWZGtuSWl6Q3R6K0duMlVRclhxMndR?=
 =?utf-8?B?SUJVYWxQY2xhZ2UvSWt6TFVtQXBSUzNFQzYrT1Z0MmhEVkxRQWlJL3kxSG5I?=
 =?utf-8?B?b0N5S0NsS0t6bG5Wcjk5LzJVVE9aUHBwU3lmY3lNODlDV2graGVKQzFiTEN5?=
 =?utf-8?B?bmc3Q0dRUURwMU05enY4emtRUXNGSkpEZ2lRQWNTeFFWMi9TQnN6akc3UVRn?=
 =?utf-8?B?LzNER0RwWFlDUXhFUVRTc3hjN3JDajZ4c2QyMUVCZEFmVUdMZWlqbDZXd29T?=
 =?utf-8?B?QjcvS09OQ3dRdmx0RjduZ2FWWnpGcU9wSityR2xUeTNXVWZreWdlV2Zack1S?=
 =?utf-8?B?RmQrMjdVNTk3cTRzRjdQcVE3ZEMxY1N6YzBPcVE0VXBWbXdHNTRGM0JtUUhh?=
 =?utf-8?B?cGNiMG02bWZSaWxjZkMyaEFLRmJSZThhdGtZelMreGJWMC9oREJ2Yk9nS083?=
 =?utf-8?B?UDhVbmhoTjhMNmFtOUFHQkFGc1p6TzVxYmlBdXgvdWkyaFVVbGtWN0oyUUFj?=
 =?utf-8?B?TlZ6UGVYNHhmaE1TY3Y4blFLU1luVVFWa3p4VUVOVDJncFRuVzYrNWd3WkpP?=
 =?utf-8?B?SDVaZlF6dFg1c3BFdWRzejBwQmplTEo0bDhkUW44TEZ2VFBUeWpIcWR4d0ZS?=
 =?utf-8?B?OWViaU5rZGtPOFVBbzR1aVNhSEltSDBJMURkMjVhU2syRlo0YTRCL3hZQkVr?=
 =?utf-8?B?QTJOaStPaU1qRElaNlovcURsT1l2Q1JuN2c3QzdXUHpJZGNDd1RLYUlyblJO?=
 =?utf-8?B?V0lxTFRubW9iZlVqOXczbWJTdWdJOXJFUmFkSXBROE0wU2NQUkFnR3dUayta?=
 =?utf-8?Q?w5cu6Qc6298vQxFZfSkuurUKG?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fc3b5a70-6099-4306-61e3-08dbaeaf6779
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 08:00:58.5752
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: vwYzKtTgsRRoU4BeZGzlmKTS8SLO8kjWF4g4RXV+rdsK18zRua5YGDNHi2efVSW92u68CPJtrui2KvU7BRS1cw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9574

On 01.09.2023 06:57, Stewart Hildebrand wrote:
> Interrupt status introduced in PCI 2.3
> Immediate readiness introduced in PCIe 4.0
> 
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Wed Sep 06 08:06:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 08:06:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596323.930172 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdnYl-0002do-JU; Wed, 06 Sep 2023 08:06:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596323.930172; Wed, 06 Sep 2023 08:06:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdnYl-0002dh-Ga; Wed, 06 Sep 2023 08:06:47 +0000
Received: by outflank-mailman (input) for mailman id 596323;
 Wed, 06 Sep 2023 08:06:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7I91=EW=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qdnYk-0002dZ-Hk
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 08:06:46 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20601.outbound.protection.outlook.com
 [2a01:111:f400:7eae::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 51bdcf93-4c8c-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 10:06:45 +0200 (CEST)
Received: from DM6PR11CA0038.namprd11.prod.outlook.com (2603:10b6:5:14c::15)
 by IA0PR12MB8864.namprd12.prod.outlook.com (2603:10b6:208:485::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 08:06:39 +0000
Received: from CY4PEPF0000EDD1.namprd03.prod.outlook.com
 (2603:10b6:5:14c:cafe::b9) by DM6PR11CA0038.outlook.office365.com
 (2603:10b6:5:14c::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36 via Frontend
 Transport; Wed, 6 Sep 2023 08:06:38 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EDD1.mail.protection.outlook.com (10.167.241.205) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 08:06:38 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 6 Sep
 2023 03:06:37 -0500
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 6 Sep
 2023 03:06:37 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 6 Sep 2023 03:06:35 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 51bdcf93-4c8c-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=h1jTUNJu8IzGmLUj366TAJFXRgab29eaO/T2i4qgJG4CgLOB4qYqaH0vn9/LfBA9HqMLPFjHD2U+B5RMutln1QDdxLIle06L7YW+9gRjc++HZlEowudWj4ePlHp6yWYAQwN49lc6XlgrJUdB3BnnWalJyRjYA7WJnIA/oJy9oGO6SREPOBtBTbxQ1vmDqrMYWh55UzPPY2Ya8h3ijNuXDo1he/4dZIHC/YQ/pcsDk9Cz7p36/27UIi8y47uoLk4F4ze4GunmQZEp+MuvCZ/rt7687vOlZXnw+N7ai+EG8NxFW1HIacI6A8c/dYu2kJiMdyEJ5CNOFONBn9xi7bfDFg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=I6cr/Bd+Og4QIyLoDX0k2Rypo4kx5cz0WNC55Ldy40o=;
 b=YuDnS3izQedGPjoI4xCUGbb3htT4hU7DmCwQBF0fbcZLEencUrQBHViqQUZupkfNe+0jtkXwMvINccRHMjyalAib5s1kZlCSmlnPVk3cUXsR+zHFCvzqawC0g2GnjDuFKBBQ6dpaIZBkrdAEuf5ni5PpJ6Q3ZXKOonrcSmMj+XsrYlexPrFiAzxEGh+hOe1pSJAmuV0C+lf2XOyiMNXFutU3pq90qxjtyYRoEuiW9phmMNDwuzRpMhDIv3CL3heqnCwiMqfu4pRROl7Shc9kDlOMKEDd6PEmWpuOgwwODRXAssaiaxKhj0VLzMm4JD2xeVpIJgIu4igaQdaOAlkBsw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=I6cr/Bd+Og4QIyLoDX0k2Rypo4kx5cz0WNC55Ldy40o=;
 b=kt8Gh7+0CxT2VTYN+BfxViJxZ4OAW0zbPjYHGsV3lpwLe4+rAN40QrytXq1ERxsTV3LidL0dg2XyxaOVFL2zcvLOeul7k2SB84HOVeGjqmSxe4asYohYWRZxWQdZdlAB0qffGelF2ltN37Q0y3nhDqYo3HVDSTGJG/GasSM7D/M=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <4ce7bcfe-0c32-70f0-7501-451a67ccd26b@amd.com>
Date: Wed, 6 Sep 2023 10:06:35 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN][PATCH v12 20/20] tools/xl: Add new xl command overlay for
 device tree overlay support
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>, Vikram Garhwal <vikram.garhwal@amd.com>
CC: <julien@xen.org>, <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, "Anthony
 PERARD" <anthony.perard@citrix.com>, <xen-devel@lists.xenproject.org>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
 <20230906011631.30310-21-vikram.garhwal@amd.com>
 <3ee81557-50d2-1ae0-e700-9f20672ef15e@suse.com>
 <6a3bcb64-2416-225e-8a5e-5ea7823d3c29@amd.com>
 <dd1026ce-8c2b-2198-fc7f-91f7e671e62f@suse.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <dd1026ce-8c2b-2198-fc7f-91f7e671e62f@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EDD1:EE_|IA0PR12MB8864:EE_
X-MS-Office365-Filtering-Correlation-Id: 4f153880-dee8-4bc8-2ab7-08dbaeb03270
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TcxJ7dj/68TvQoO791wgW3/706n4wliBh2fQQEmNjKq85d/B08pwmv2RYvku3DnZIt5srUnbvmpjNwvFq8EALGkNyupKMs6olSc7wtb/MqjfXFrJaEnfExVNiyDGZzf9FDW5VF+pDobp/GWoMFJ2zqeTxlPE44sfTFF5ybBY8zVoHvfv/WmqQp4wwSGaEmw3bxCnkuP+TNdPBVSNJkBbwLz0A9pcameSbdIfW290cdi7tRqBNhlZflAtYEugAmAIzk8T0+9ozOFO8W+uUwESx9HjFvrWVniQwTtiI3py06aDef4ic4yoNxhsYCOzLM9dzIWpq74SoGcagU/QSIoQkYL/rskRXNw4FXhV1VoiVDyPm1nJSgV+PZDkoiVb3/WPMqZZV/rO0Jr2cjvZomhpxkJ8PRuLPW+mSULf4gmtII2+onP5qx/x8MY4K79LWIcbzaIfubLAVNjlTgaUBevJJ+enLiHv70/jy1gFm661EGCLNOanw6ClwUwSxIUscYTZ5LB07nLJKjh5xQoOcpyWfRRo5MpnBaLlm+BW9RJDSlIUF7Bv7zBggKK+R3rhv6o5cCOB0lsCyM03Bc7gJO646Ti7ke9GE9/5Kb904pJKGKy0B9VjetwGujvCwncD841BC7PK09F+Q8TkbH0vDdIlEdoZnPmVjley+jukxIuo3atnXzlgvq8fXlqmS+ftamre/2eCNiQyStkzyWOQGYTvX8TujvkcFAUiP66EatkOJahw9YHVJn8Sx254DcqrGggXYrN/0OQznxIn8euIi8WqIbFV9Oj2butmzFKyJMzkygMHAQA1Bv4DjCTOLVF3bdrt
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(376002)(136003)(346002)(396003)(186009)(451199024)(82310400011)(1800799009)(46966006)(36840700001)(40470700004)(40480700001)(478600001)(336012)(426003)(83380400001)(40460700003)(36756003)(53546011)(356005)(26005)(81166007)(2616005)(82740400003)(44832011)(36860700001)(31686004)(316002)(6636002)(16576012)(54906003)(47076005)(2906002)(4326008)(8676002)(8936002)(41300700001)(5660300002)(86362001)(70206006)(70586007)(110136005)(31696002)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 08:06:38.5808
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 4f153880-dee8-4bc8-2ab7-08dbaeb03270
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EDD1.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8864



On 06/09/2023 09:57, Jan Beulich wrote:
> 
> 
> On 06.09.2023 09:32, Michal Orzel wrote:
>>
>>
>> On 06/09/2023 08:55, Jan Beulich wrote:
>>>
>>>
>>> On 06.09.2023 03:16, Vikram Garhwal wrote:
>>>> --- a/tools/xl/xl_vmcontrol.c
>>>> +++ b/tools/xl/xl_vmcontrol.c
>>>> @@ -1265,6 +1265,58 @@ int main_create(int argc, char **argv)
>>>>      return 0;
>>>>  }
>>>>
>>>> +int main_dt_overlay(int argc, char **argv)
>>>> +{
>>>> +    const char *overlay_ops = NULL;
>>>> +    const char *overlay_config_file = NULL;
>>>> +    void *overlay_dtb = NULL;
>>>> +    int rc;
>>>> +    uint8_t op;
>>>> +    int overlay_dtb_size = 0;
>>>> +    const int overlay_add_op = 1;
>>>> +    const int overlay_remove_op = 2;
>>>> +
>>>> +    if (argc < 2) {
>>>> +        help("dt_overlay");
>>>> +        return EXIT_FAILURE;
>>>> +    }
>>>> +
>>>> +    overlay_ops = argv[1];
>>>> +    overlay_config_file = argv[2];
>>>> +
>>>> +    if (strcmp(overlay_ops, "add") == 0)
>>>> +        op = overlay_add_op;
>>>> +    else if (strcmp(overlay_ops, "remove") == 0)
>>>> +        op = overlay_remove_op;
>>>> +    else {
>>>> +        fprintf(stderr, "Invalid dt overlay operation\n");
>>>> +        return EXIT_FAILURE;
>>>> +    }
>>>> +
>>>> +    if (overlay_config_file) {
>>>> +        rc = libxl_read_file_contents(ctx, overlay_config_file,
>>>> +                                      &overlay_dtb, &overlay_dtb_size);
>>>> +
>>>> +        if (rc) {
>>>> +            fprintf(stderr, "failed to read the overlay device tree file %s\n",
>>>> +                    overlay_config_file);
>>>> +            free(overlay_dtb);
>>>> +            return ERROR_FAIL;
>>>> +        }
>>>> +    } else {
>>>> +        fprintf(stderr, "overlay dtbo file not provided\n");
>>>> +        return ERROR_FAIL;
>>>> +    }
>>>> +
>>>> +    rc = libxl_dt_overlay(ctx, overlay_dtb, overlay_dtb_size, op);
>>>
>>> Because of this being Arm-only (as validly pointed out by osstest), I expect
>>> the entire function here as well as its entry in cmd_table[] want to be
>>> Arm-specific, too? Of course it would be nice to not key this to __arm__ /
>>> __aarch64__, but to something that would not need touching again if the
>>> underlying infrastructure was made available to, say, RISC-V as well. But of
>>> course - right now the goal needs to be to address the CI and osstest
>>> breakage.
>> I agree. I would suggest to guard it with LIBXL_HAVE_DT_OVERLAY which is for now
>> only defined for arm32/arm64. This way the code will not need to be modified if other
>> arch gain support for the feature.
> 
> Ah yes, that ought to work. While there perhaps also replace the conditional
> around the declaration of the function in libxl.h. (But of course Anthony
> may tell me/us that this isn't the way to go.)
Hmm, if we change guards for libxl_dt_overlay(), what about xc_dt_overlay()
for which we cannot use LIBXL guard? Is it ok in that case or better just focus
on the fix.

~Michal


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 08:22:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 08:22:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596333.930188 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdnoD-0007CH-3P; Wed, 06 Sep 2023 08:22:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596333.930188; Wed, 06 Sep 2023 08:22:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdnoC-0007CA-WF; Wed, 06 Sep 2023 08:22:45 +0000
Received: by outflank-mailman (input) for mailman id 596333;
 Wed, 06 Sep 2023 08:22:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdnoB-0007Aq-U5
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 08:22:43 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20622.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::622])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8c9abc74-4c8e-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 10:22:42 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9209.eurprd04.prod.outlook.com (2603:10a6:10:2f8::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 08:22:40 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 08:22:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8c9abc74-4c8e-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=K1g0yLe8eU6/EmBzihQiF68G84NCee6chz2RnUgaDWMm/l41MGsSSLJM3Ottvj3zozTVJs2rrc+161r+QHfaVdGBluXDid4GoazEKf/4X7gNR7uBcnHqLYLjzBUKIozwE2WalBHWE/4w/HsmbwzlyHR/38zCyj42fiN8Ts0cnReRjOAsJ+NRfv5r18ngMYG/xpIUAT/DCQ8Bsfau1OEL8MoLBehl+8nDZxnzjZK3CLt7ynwD8A9q2mrxe68f+i/VGfi3sl6qnxQYAZ4TAXu/xAjfiVSodOaLjh9DN5i//VlGziD/d4LzBDm0k7qQrv718KaWWKjaxw8xtq+8tXhLUg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OmntcxHuofnsEUjgQ4LYo/WSavnZwuNq5K2lRPcThdI=;
 b=LROPgFAN8FYnvUIiBP40vVbrBtebxLYpRPXJFIC11qZ0j75XwV+fQ5DC0goAqf5r1nwMP2RZiW/WbLYifqw4df21y/YEjogFzijz4PT8TlOmm6/NVzGHvOjMMumy4S2dlRZR4/jNBaRfu2UOPj+jmDsi2DQQ98MiaWLLimv/EB4V+P6ZSl3dBJAmT5ERYqc5VWR/cCe9TRDjyh4xSK6eMX0iUJpI5w/0pdjHZQg9/YbC0x0Zeft93RRhQriIQBrl6pEwgynhoDqfHCS6AZ5a3KZSOOp2pRA/LxfnSxux3nGKIGuxsyFGdYgoY1GN52CMdRWtcBIMsCiER4AyHaEnsw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OmntcxHuofnsEUjgQ4LYo/WSavnZwuNq5K2lRPcThdI=;
 b=pf8McBhRSYsbOjc0gWcJN7Rl6zXqQqxxSHJJOcHQWKl+26ssmfZ1TfkKR4BxZ8UiJI502KZmWCq08uvOmvyFLJuXhB+tGWjOFV7OFjRxM81+eHNlhNJn0J6owoeUuK8qWvpEFKqlUw9y2lrd6yieD3mDCH9geQkogtfhir7CIJYP9FUA4DdMHN/MAwDYfOmRkulax503KoHJQnM0doGszSAJqzOZPw47C/S65mpbzdb8nJdp4btgutsFvOqOuy5lDdfGuhnwIENPUsZ9zuRVJczMCPtCClv52yhmlxUYfXGy20TWWJtFb6z6/OxejYn7fUAsL0BGfXVpmybK0ol7fw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3b816ecd-e7a6-c6a9-9b42-b9287deac111@suse.com>
Date: Wed, 6 Sep 2023 10:22:37 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v5 4/5] xen/vpci: header: status register handler
Content-Language: en-US
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230901045742.235975-1-stewart.hildebrand@amd.com>
 <20230901045742.235975-5-stewart.hildebrand@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230901045742.235975-5-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0120.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a8::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB9209:EE_
X-MS-Office365-Filtering-Correlation-Id: d21eb668-c7f4-45ad-af4a-08dbaeb26f86
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	sYKX7sXYEO2V92iec1Y8BVWEigmJTkQOOzg6yQLDK6HlSzSHYQGON5Rct8c3kPMbwgCFlCpWIYzmM6w6S4h9PWjSgMhjrJ5UlFRzvDPzZ4zwSDtwSWe2d83/rf/Vk9Q1yW1AU3GNdq81jLNlPb1539gwu8Ge1CUtJ8PBAfj2bLe5tIsv6gzvPZhHhfOTaABFlO2KGKkEMI99Q3oHP+ebrKOxka9T8llYaX4BJwQFLbjMXu6/7fENvbwAE9ixFi+M1DOS8xWcD8adhfAuA6B77m6nWbjRtAWx/B5w6RPhzGm5iTFG7X86dalcN1SrS9Qmk2b0lcuGJt1IPKc9ChrzQrN/dV17ol8m5zMCM7v2DjkGQ8MjNk4qFT2j0jBoZiNCez5SQVyBYpMmGFhmewT+EBzQSTREhxuIEEQrk5RabR9yk5lrnNBAgeed2TJ+AGqbS3B6CSLW2KuF/peTw3+5DrAxSplGa/8LV2shaYfIdRjmW/P6e/rzsCNUm0q70dJEsKXZmG71ZS4VenbH9wK36g3Luu96fen1m3nW3MbBoeWbUyZWuq7XZb8s9N1Ys47jh11g2s3700JKeqJy8otV5h+g4+3cBqbS2Q+yzd4Glq4Qdd8sPCL7uEXfUM6uDHk002ETfe9RkQlaGLNM6pD87jutttqZFNPa1Jj4Zhxb/iA=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(366004)(376002)(396003)(39850400004)(346002)(186009)(451199024)(1800799009)(31686004)(6666004)(53546011)(6506007)(6486002)(31696002)(38100700002)(86362001)(36756003)(2616005)(2906002)(26005)(6512007)(83380400001)(478600001)(66946007)(316002)(8676002)(8936002)(5660300002)(4326008)(6916009)(41300700001)(54906003)(66476007)(66556008)(45980500001)(43740500002)(357404004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QzN1T3MwU2RPRXV3ZUQyajVGV2NqTlVYS2NnZkhCSzdCV0hWUzc1M2diamxy?=
 =?utf-8?B?ODVaMks2ai9zSWN3Q0tFNGFCYjF0ZU5KeitqSDdBZnNJZjBuYVA4aVA5aWpk?=
 =?utf-8?B?UkhuaXUxdWtuNS9sVDVGTGlTVEgybXozUXZaVm9RQjFOUEhRNGF2WWp0TWcv?=
 =?utf-8?B?d1FNTExXcUU4NTZMOU1vczVicjhoRzBCZkcvOW1YeEkrQjl4bTd0T0dFd2FG?=
 =?utf-8?B?RndxdmZRTXZoNEx6YnRYNHpBeFVEdXpmU3lNTC9LRWJKeldwY0szZEpCRXFS?=
 =?utf-8?B?Qy9sZGtlSy8rTVJXczk2K1hMUXVaRG5zMy9aUldud3JCNDRHVUVlaXgxaVRj?=
 =?utf-8?B?RnFnR1hVSkRYYWZHUVFoS1R2eFloZk9NdnB2Yml5cVdrZmVhYjJjTVhpR3Ra?=
 =?utf-8?B?YlRPWnFLMWQ1alV1Q3NEWnRTYjk2UUdlMzVDZ1MwalNMQStHSlF3ZGJiaU5o?=
 =?utf-8?B?elc5YlpkQXhHUkRqUmd6SWhrbFVDMmVSbHpEdTVaSEl6Q05kYjZoSEJvSlpS?=
 =?utf-8?B?NU56Q2o2MXRoT3VPZVFjT2F5NDFnTk1lRHoxV2dOeURaV3NFMHpDK2RtMVZF?=
 =?utf-8?B?M0lRZkszUFkvNk16Rm1KaU1CNEQ1emVPNWxaR0dlYjFuOXhEK3RRSThZcktI?=
 =?utf-8?B?NkVlN1kxbFZVNzE1Q1pjdUNKbXRwYjIwWTNVVkNHM1Q3L2pKQW54RmQ5VXhR?=
 =?utf-8?B?ZTJzalBNMlNVYTV5SmtkTWVCWVQva0NjNXo3aXR5U1dvMzA3RTlKNjdDL014?=
 =?utf-8?B?a3hpdHRMci9WUUxlekg4WHM3OGZ6RitBWWZER29MeHJTNWl4ekZxU0FjODA2?=
 =?utf-8?B?VkRUbWRneFIwK0g4R3hhdE9xSCtBUXBaMzhONEprRlU5bXJhUWRXTDByWkwx?=
 =?utf-8?B?cUJpT25RY2RlcUNiaWpvbVU5SWkxcjRFOFdLV3c3VnhKNmYrQUg0VmdLVEJK?=
 =?utf-8?B?L0YvZVgrbVduUmlXd1hJZU13WEhIeEhqcDFQSFBYRXhuNVlDemU0eXMrekl0?=
 =?utf-8?B?MnJLU3FNaWdYQVRXQjZzQ2ZqVDlkMVVyV3JYYlM5Z2tucFNCOUR4ejBkYVZQ?=
 =?utf-8?B?Uk5POG9jL1Jaek1rck8rQVY0aFBHeko3QzhiRjRwTjFXNDRWS1hveERDcTZR?=
 =?utf-8?B?M3NOQzZjNnFOMCtYNWZUNlA1SVVOdEs3VTYweG13cXJPUjhiSUdjNjhyRU5Z?=
 =?utf-8?B?ZWg1SnpHSU8xSGk3bXZ6eGR4ditzYUFNTVdVTXozWWRXRUtlSEtDTHNXTnc0?=
 =?utf-8?B?eGR1aFBxYk1KTXZOVElZeGw3YXhNWHd0c1M2VEZtV0Vpd3VHckRYRkVORkNv?=
 =?utf-8?B?QTNwSkVDY0RFOHQxOHc1dDNldkdPTEVrQ3I4US9DTkYzUVVuK0txYVAyTjRC?=
 =?utf-8?B?S1NJRWV5RURTWXlIRCtLUHNiVXk1QXFhVThnUE1YU3IrQkhuRDk5WkNFMnBF?=
 =?utf-8?B?WHhCS2w1UnRJTjI5TDlVbm1BL1ZLR3VLSnoyL0c3TzJ3bkdhbWJTQmZIUndo?=
 =?utf-8?B?emR3UHhPZjN4N0lpR3NWcUo4T0Nrc2phVUlWRzlYMlFXK0t6bzh4V0VCbVkv?=
 =?utf-8?B?THJka25Eb3JTRnZZeStlUUdGdmpGc2RHRk1CeTB6R1dHZ3hVdGNpNllUNXZW?=
 =?utf-8?B?Lzd4TzQyaDZoUUZrTE0vODRLQzd1NWJQN3lCWW9iM0xSNVhpeTU3d1ZVUGRa?=
 =?utf-8?B?SzBoWUREVEFRQ1E5UnU0N0Q1Q0NjSjJvYXMrTlB3V09ORU5PUnJIZE4zdytX?=
 =?utf-8?B?MldLZXZJcWxwYVpjYUZJc0RwTlh6eTM5T0QrV0VJTEp1WElBWnJ6cWVlN2lF?=
 =?utf-8?B?Tk5WK1VTQmRMNnRmTnZEUkZ0a3BIaHpTUnQrcldlaDFUclBJLy9mZ2lUNGdS?=
 =?utf-8?B?N0JmQ0VXMERwNnRITlIweG5TTlZvc3ZjeFBmclE5dUo4Q2ZQK2dOVS9kSnNM?=
 =?utf-8?B?SHlqTE8yWWJZWEJ6dTF6ekowRWY3S1BBc0RJYUs0R1p0Q3hwdytCbWVLY3hy?=
 =?utf-8?B?dmZQdTZobTJVMFkrdGhnaHQ0d1BONDdONTVZdEx2ZzlISnJDcEgwYy8zdEx3?=
 =?utf-8?B?TTZPeEVhU05IbzZkUXk1Q0k0K2hSSFRBZXVTMUhFTTR1MFF5V0oxNUo4MW9H?=
 =?utf-8?Q?Ya4mrYmOSha+nNNepKFO9vusN?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d21eb668-c7f4-45ad-af4a-08dbaeb26f86
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 08:22:40.2507
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: YYbbZODcepWPdYXwcHgWHKiayQqC+4AGxemgWS4BPm/BZXkVEz1L4yC/tj72/BBu9CDjFPsHK4I5X9Q6kJ6vLg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9209

On 01.09.2023 06:57, Stewart Hildebrand wrote:
> Introduce a handler for the PCI status register, with ability to mask the
> capabilities bit. The status register contains reserved bits, read-only bits,
> and write-1-to-clear bits, so introduce bitmasks to handle these in vPCI. If a
> bit in the bitmask is set, then the special meaning applies:
> 
>   res_mask: read as zero, write ignore
>   ro_mask: read normal, write ignore
>   rw1c_mask: read normal, write 1 to clear

With the last one's name being descriptive of what the behavior is, would
it make sense to name the first one "raz_mask"? (Also a question to Roger
as the maintainer of this code.)

> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -413,6 +413,18 @@ static void cf_check cmd_write(
>          pci_conf_write16(pdev->sbdf, reg, cmd);
>  }
>  
> +static uint32_t cf_check status_read(const struct pci_dev *pdev,
> +                                     unsigned int reg, void *data)
> +{
> +    struct vpci_header *header = data;
> +    uint32_t status = pci_conf_read16(pdev->sbdf, reg);
> +
> +    if ( header->mask_cap_list )
> +        status &= ~PCI_STATUS_CAP_LIST;
> +
> +    return status;
> +}

Do you actually need this function? Can't you ...

> @@ -544,6 +556,12 @@ static int cf_check init_bars(struct pci_dev *pdev)
>      if ( rc )
>          return rc;
>  
> +    rc = vpci_add_register_mask(pdev->vpci, status_read, vpci_hw_write16,
> +                                PCI_STATUS, 2, header, PCI_STATUS_RESERVED_MASK,
> +                                PCI_STATUS_RO_MASK, PCI_STATUS_RW1C_MASK);

... conditionally OR in PCI_STATUS_CAP_LIST right here? Without
capabilities the CAP_LIST bit becomes kind of reserved anyway.

> @@ -424,9 +450,13 @@ static void vpci_write_helper(const struct pci_dev *pdev,
>          uint32_t val;
>  
>          val = r->read(pdev, r->offset, r->private);
> +        val &= ~r->res_mask;
> +        val &= ~r->rw1c_mask;

Personally I'd fold these two lines into just one (and similarly below).

>          data = merge_result(val, data, size, offset);
>      }
>  
> +    data &= ~r->res_mask;
> +    data &= ~r->ro_mask;

This seems risky to me. I'd rather see the same value being written back
for r/o bits, just in case a device doesn't actually implement a bit as
mandated. For reserved flags it's less clear what's best, because in
principle they could also become rw1c once defined.

> --- a/xen/include/xen/pci_regs.h
> +++ b/xen/include/xen/pci_regs.h
> @@ -66,6 +66,14 @@
>  #define  PCI_STATUS_REC_MASTER_ABORT	0x2000 /* Set on master abort */
>  #define  PCI_STATUS_SIG_SYSTEM_ERROR	0x4000 /* Set when we drive SERR */
>  #define  PCI_STATUS_DETECTED_PARITY	0x8000 /* Set on parity error */
> +#define  PCI_STATUS_RESERVED_MASK	0x06

I'd recommend separating the "derived" constants by a blank line. I'd
further like to ask that you add two more padding zeros above.

> +#define  PCI_STATUS_RO_MASK (PCI_STATUS_IMM_READY | PCI_STATUS_INTERRUPT | \
> +    PCI_STATUS_CAP_LIST | PCI_STATUS_CAP_LIST | PCI_STATUS_66MHZ | \

CAP_LIST twice?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 08:26:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 08:26:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596340.930198 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdns9-00084L-IV; Wed, 06 Sep 2023 08:26:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596340.930198; Wed, 06 Sep 2023 08:26:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdns9-00084E-Fl; Wed, 06 Sep 2023 08:26:49 +0000
Received: by outflank-mailman (input) for mailman id 596340;
 Wed, 06 Sep 2023 08:26:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdns7-000845-Jz
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 08:26:47 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2061e.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::61e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1e0616f3-4c8f-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 10:26:46 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9212.eurprd04.prod.outlook.com (2603:10a6:10:2fb::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 08:26:43 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 08:26:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1e0616f3-4c8f-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hr2WVE1U1Vktbe4nNcimcHksc58GyP9ZHz1rNHcHLiJkdSD8oy/qYfsTS8blUlGtMloWbIq3AiSFbWyGgUQhuiVYXOwZN/zHObHeVl9Fnf8Q5iS7t33qna5nofsIhLwG6xwHXA/4NKlzhb3MaTghOWz9VM5wD5eEzU6VVeeIlsN2S0s6ZJ0aQflhdtCuyUp0ZlMWZV85xqQU24MB9kCE1teeenXZ+zXwAdRLSEKvj3mbvAnRwvygRt77ZXiofPtsAU7xD7Yj/I6+irzfgs5Q2lrYSVO7CZGqUFDedQnIhmx8ebsyqAvAJPDkpl9211poRJCqnKQ48QFNHUBVaRmXLw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=m9M4gm6WkdVeiHtQFvdsgD3j/V3QgLej0YlSXnMOTKw=;
 b=Q/JROAbdBMxBEbV8wtMJCN1iq34K1x6490IolyL2Z8t10i6gzvLLlLYCuwxWS2rFldasOnV1JWbAxfu87xLL791/daMOTocuV9u6dGhv7x3hwuxaLbNuEnwGszvZ1OC91BNyljweXSeZVHb2Gah62gVET6heW5Q/Ecy05JEpS1KgWrpqBxtEtNOJhHN7tLL69/CuW9/V4hicaBWRnTAOOc9y6TVkJB7F2VI/djLHB+aGlzBMehYk6s3mhSTWPVaovkvTmz6j3X1Yt6F6gPmWmLpupJ0PxxBkhtfQ6YbWGvrZkvS142tiJwjlS8sBlQ+N6i3nr3+G1TZCUPszd85jig==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=m9M4gm6WkdVeiHtQFvdsgD3j/V3QgLej0YlSXnMOTKw=;
 b=V4E0/r6rF//QDipq13KsvyBDDP/EtYP9f485oVKWDMmq2juTrfgfWb0xbe6KiPwUwKcO/lbR6Q8Cz3gk6ZPc72Xoo9OvJ/eekhcoA9NwzQWhEnfa8vX+iuJaqXp2jS99wxgzdpY+RRAU00Nj6fj66Tn5VqhtTAD63AI6h0Xat2WFjlYNWdDQrXaPG4+EATYDSocajjO266PcuV7HnUEaHxwoMZNrXVyHfTUJYv6rLZrvqc1ysmeej2MtTk4Jo/zMthv0HD4y71hS2UIiV6aX+qO00AlFr25HUGAn56Kb6wgsLxJZE71oqiFqtXYW8D8vf24TE7rSf1LoYoZavxToAQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <55ee17e5-0e90-4cc5-6168-4230e9e7e6b9@suse.com>
Date: Wed, 6 Sep 2023 10:26:40 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN][PATCH v12 20/20] tools/xl: Add new xl command overlay for
 device tree overlay support
Content-Language: en-US
To: Michal Orzel <michal.orzel@amd.com>
Cc: julien@xen.org, sstabellini@kernel.org, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, xen-devel@lists.xenproject.org,
 Vikram Garhwal <vikram.garhwal@amd.com>
References: <20230906011631.30310-1-vikram.garhwal@amd.com>
 <20230906011631.30310-21-vikram.garhwal@amd.com>
 <3ee81557-50d2-1ae0-e700-9f20672ef15e@suse.com>
 <6a3bcb64-2416-225e-8a5e-5ea7823d3c29@amd.com>
 <dd1026ce-8c2b-2198-fc7f-91f7e671e62f@suse.com>
 <4ce7bcfe-0c32-70f0-7501-451a67ccd26b@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4ce7bcfe-0c32-70f0-7501-451a67ccd26b@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0220.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ac::15) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB9212:EE_
X-MS-Office365-Filtering-Correlation-Id: 7d06bbf3-beae-45d1-ada0-08dbaeb3006e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lDM2TKMQzT+ZQGBWU/aUv6uYZWgbNHpxkcIF94RHbP4k9VLvdU1awfVxJUL8H46su7J/wyKc5BaI7IEKM9S5LlkenBeSNDPiNUaqoID8mXlQTo2sjRxSYIVlugH8bz3WsC9ck0w/CqqW8UOhv1F03UPFEuNfJC/wZxT773UDe4smPQ2dq3i4euI6SwpdQh0pOoHjseTt+pw9G9PvXRGJ7db5WmDgxFfAViu2KQJzmpj8tZHtQpK0FSIhyB4FvJE5wl5I5ZcJVQ7BPsF57BJkC6uLsIChudZMGOkW8cRQficS8p3OV7NYQfMIKdbPi8v0wzYyv2DI+URixKr0GdoUN20v9TuECwwL/QoJWhr2X9Cs2MU7JEtKxQPV8vm95t5M1zToLVYIyJ+V0yJC/TzVoRtouM/5hFADapODK92cXI0QKVgzxkq4jhFBuV+2hoKyByy7VlBlNRVNnJiyOozd3pJiDkqAqbXqW9UORc/LOMIK27nCetxMnwyAPcUj5801gyE/1cCuVcn0YrF3oVDuQG9yg9d2oxtVA52CZyS8FKmGFGXNha8uUOFQU24FeGcaVUez9YPubzfIX3Xbvgkn56zHDmeEMVwx6w6MwJipZTHM9LlP32OY92gHk54U6UjfO+YAbDOgW0akyTIGZ9arOg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39850400004)(346002)(136003)(396003)(366004)(376002)(1800799009)(186009)(451199024)(66899024)(2906002)(38100700002)(36756003)(31696002)(86362001)(8936002)(4326008)(8676002)(53546011)(26005)(5660300002)(2616005)(66476007)(41300700001)(66556008)(54906003)(66946007)(6916009)(6506007)(6512007)(316002)(6486002)(83380400001)(478600001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NTM4ZVJDbjE4S3lsUkd3OGg5MmYwY3R2YTB3a0tlekNTVlRlSWdBbVBOTVZ6?=
 =?utf-8?B?Kytxc1RuWExRUnExOXZqY0JHY2VOcSt0NnFyZkgzZDRNaTFQMnlGQkc5ZXE0?=
 =?utf-8?B?RFBxZVVoYitmdUhzSTBUVFBpYWw0TDVtakZVK00waXVPSHg2ejhObmgxMk1C?=
 =?utf-8?B?ang2a1o4d0RuUS9HZ3lrRUJLU2tNMmR6ay9EWHZidHJwYzBaakYvdG9BWDBw?=
 =?utf-8?B?aXdodWRXS0F3N3BoVWtPN3hyMU8ydTNWM3lmdDhiZUhySStnZHBTYlQzZ0JN?=
 =?utf-8?B?UzYyMU00ZXl4T0VvRm16K2hTMjVlVW1XYSt0bkVNQnZDNHo4eTJ3c1ZLYnhX?=
 =?utf-8?B?eEdTMUNzWFlpcTR3QXYxbCtlSEVuYklubE1tUjFURlZ1UzR4djNScnJWdkFx?=
 =?utf-8?B?S3NmTTc5Yy8vL1dOTWgzeUpidmtDTm55MUlaSklPcVVieHR2QzBmUXQ1UFFw?=
 =?utf-8?B?SnFsczRKekRZRkdwM0pRb21VVWY0Z2V6QmxoZDBSRHVSNFNQcFpzMFA3T0dw?=
 =?utf-8?B?OU5UcU5kRmQrQWZMWEcram0yOXpsSTNPZG0vd05SdUl6Y3l5bjZ6ZGhyZS9m?=
 =?utf-8?B?K0dsSnJQY21vc0FFdVBlUUxvS3kreUgzMnlGV25ZUjl6OUlCR2g2SUdXcGE5?=
 =?utf-8?B?MU1IeXBpSnljNkFucVV5ZURmMGpKSkk3TUw4aVUwZGhpUU9EazFCV3M0bDh0?=
 =?utf-8?B?TWlOeUN5ZDJqdXA5MzgwV0VwbWMyNWFQdktYSk9YcGIvVDUzZUovcHpCZzI5?=
 =?utf-8?B?TE44VnpudlZ2Z1dUTzFhT1B0a2lIb0RyUEhXT2lBZURLdDhjZmhMVDh3bnVz?=
 =?utf-8?B?Z0lxOStJZU9NUGhueEpySHpUb1p3Tk5CYk9RbzZZZ1B6TW41U3lzd2hiT3dS?=
 =?utf-8?B?ZHZKOVF4WTIvNHIrVEZTT00vOVRyNGNJUk1LN2tKaHgwVUErVXcvT2ZxVzRl?=
 =?utf-8?B?bmVjbzF3NXBWZlF0ZlJXMDdFZ0ttNzJkRjVOQnYrZDFpdXU1YTFZRFIzaGJr?=
 =?utf-8?B?WWRRK2J0b1ZWVVJNSFp4amd4N3JUMWs5MjRZTGZoMDhMbktvanVoTVRQVU1h?=
 =?utf-8?B?NjlJRzhtZUZoQTRicWdDc3ZZZFRxZXZzWTJTR3VqSDdtemdMN0ZmNFVURTZ2?=
 =?utf-8?B?YWgrdGx0MmJJNUhGd2U0d2g2bzEra2ZJOUNSM0pWUXZxRVBRazMzeWwvdC9t?=
 =?utf-8?B?eCs4TDVwVmlmUHNraEVCQVV1WjdnaG9hUERJa2IyQnUvVUZ5U2twSXZXZXph?=
 =?utf-8?B?V2Q4eGdnNWdadG9uSHBFenBFY0pzYzV3VGJ0NTF5L0dNNWk2N1Zwc3FkYXBz?=
 =?utf-8?B?ck9vMDNyaTNuUytiYk4wbjVXT0hIdzlyQzI4ckpmMUlYYUp1SnNMSjhFTjdp?=
 =?utf-8?B?d0FjSjlVZTlZcDhnbXdDWmRiVEtPVUJjMUMvNFQxWldvNGt2cmRIeWFJSWlG?=
 =?utf-8?B?ZU9XYVZ1UE9YMHh0SnhjLzZxMENuTmE3b01XbU1BYlJUZlpFSFh5MFZXYVJp?=
 =?utf-8?B?cFI2b3JwLy9aYldLQi9Xem5VaXRqdmM0VmNJZmtGUDBEMnkrSzh4cG5hOThj?=
 =?utf-8?B?RUdGdUxuay9qUUZheDhTTi9Eem1YZVpTcldQVmM0c3dWakhjaS9BUHpObjdm?=
 =?utf-8?B?OVZwVGpEZkNUbmZDQTRyMDNRZ0VmbldlTm9ycGxwb0ZPWlc1ck0wN0d0enl0?=
 =?utf-8?B?NEJkOHJSa0NNdmdRYm5xcDlsWDJaY0NGYzAzaEQ0VFAra2Z5NnJvclZkVUdH?=
 =?utf-8?B?SFdybVNZdEFtdXFyR2toRU9odFJmVnlSbE5LR0NFOGIwOGZURStGWEprZ25M?=
 =?utf-8?B?eTI5b091OGo2cldZZVo2c1dYVHRpaWV2S2JNOENIZnI4NDc1WE9LU0FKQ1R3?=
 =?utf-8?B?OFdMb3JRa29BYTJ0THBOTkdMWXFkVjJ4UjVSQUlPS01iQTNLbllORDlLcmFW?=
 =?utf-8?B?SjRlT3A4NXRwdTVtWVZMSnVIN1FLWTZpT1M1eERsQjB2MityZk5WMW9xRG43?=
 =?utf-8?B?c1VKaEZnbUt4c2YwV2hwenpiU0JOenJrWDRuM2ZHVncrd2ZXdHIxWUUycEpP?=
 =?utf-8?B?TGVKVzFoNSttYVd0clgzdTV3cUh0ZXptaHdBWnE4UnluY3pobFo2TlQrU29C?=
 =?utf-8?Q?UaPfNjKAaAk2N/tasUmg5AG98?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7d06bbf3-beae-45d1-ada0-08dbaeb3006e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 08:26:43.3567
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: aiUWZgkftFd5GOiykm/KsduIRXXq7st5VG0d/Mt+hrUPEUUbXNTnx+kD/dokXAKXENy5S7UKW937PFkrLbKPIQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9212

On 06.09.2023 10:06, Michal Orzel wrote:
> 
> 
> On 06/09/2023 09:57, Jan Beulich wrote:
>>
>>
>> On 06.09.2023 09:32, Michal Orzel wrote:
>>>
>>>
>>> On 06/09/2023 08:55, Jan Beulich wrote:
>>>>
>>>>
>>>> On 06.09.2023 03:16, Vikram Garhwal wrote:
>>>>> --- a/tools/xl/xl_vmcontrol.c
>>>>> +++ b/tools/xl/xl_vmcontrol.c
>>>>> @@ -1265,6 +1265,58 @@ int main_create(int argc, char **argv)
>>>>>      return 0;
>>>>>  }
>>>>>
>>>>> +int main_dt_overlay(int argc, char **argv)
>>>>> +{
>>>>> +    const char *overlay_ops = NULL;
>>>>> +    const char *overlay_config_file = NULL;
>>>>> +    void *overlay_dtb = NULL;
>>>>> +    int rc;
>>>>> +    uint8_t op;
>>>>> +    int overlay_dtb_size = 0;
>>>>> +    const int overlay_add_op = 1;
>>>>> +    const int overlay_remove_op = 2;
>>>>> +
>>>>> +    if (argc < 2) {
>>>>> +        help("dt_overlay");
>>>>> +        return EXIT_FAILURE;
>>>>> +    }
>>>>> +
>>>>> +    overlay_ops = argv[1];
>>>>> +    overlay_config_file = argv[2];
>>>>> +
>>>>> +    if (strcmp(overlay_ops, "add") == 0)
>>>>> +        op = overlay_add_op;
>>>>> +    else if (strcmp(overlay_ops, "remove") == 0)
>>>>> +        op = overlay_remove_op;
>>>>> +    else {
>>>>> +        fprintf(stderr, "Invalid dt overlay operation\n");
>>>>> +        return EXIT_FAILURE;
>>>>> +    }
>>>>> +
>>>>> +    if (overlay_config_file) {
>>>>> +        rc = libxl_read_file_contents(ctx, overlay_config_file,
>>>>> +                                      &overlay_dtb, &overlay_dtb_size);
>>>>> +
>>>>> +        if (rc) {
>>>>> +            fprintf(stderr, "failed to read the overlay device tree file %s\n",
>>>>> +                    overlay_config_file);
>>>>> +            free(overlay_dtb);
>>>>> +            return ERROR_FAIL;
>>>>> +        }
>>>>> +    } else {
>>>>> +        fprintf(stderr, "overlay dtbo file not provided\n");
>>>>> +        return ERROR_FAIL;
>>>>> +    }
>>>>> +
>>>>> +    rc = libxl_dt_overlay(ctx, overlay_dtb, overlay_dtb_size, op);
>>>>
>>>> Because of this being Arm-only (as validly pointed out by osstest), I expect
>>>> the entire function here as well as its entry in cmd_table[] want to be
>>>> Arm-specific, too? Of course it would be nice to not key this to __arm__ /
>>>> __aarch64__, but to something that would not need touching again if the
>>>> underlying infrastructure was made available to, say, RISC-V as well. But of
>>>> course - right now the goal needs to be to address the CI and osstest
>>>> breakage.
>>> I agree. I would suggest to guard it with LIBXL_HAVE_DT_OVERLAY which is for now
>>> only defined for arm32/arm64. This way the code will not need to be modified if other
>>> arch gain support for the feature.
>>
>> Ah yes, that ought to work. While there perhaps also replace the conditional
>> around the declaration of the function in libxl.h. (But of course Anthony
>> may tell me/us that this isn't the way to go.)
> Hmm, if we change guards for libxl_dt_overlay(), what about xc_dt_overlay()
> for which we cannot use LIBXL guard?

I'd key that to some suitable sysctl definition from the public header. If
need be, the sub-op #define itself could be made conditional and then be
used for that purpose.

> Is it ok in that case or better just focus > on the fix.

Personally I'd consider dealing with just the breakage sufficient for the
moment. The libxc part then of course still wants dealing with later on,
preferably in time for 4.18.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 08:36:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 08:36:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596347.930208 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdo1e-0002Nh-Fe; Wed, 06 Sep 2023 08:36:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596347.930208; Wed, 06 Sep 2023 08:36:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdo1e-0002Na-CL; Wed, 06 Sep 2023 08:36:38 +0000
Received: by outflank-mailman (input) for mailman id 596347;
 Wed, 06 Sep 2023 08:36:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7I91=EW=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qdo1c-0002NQ-VC
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 08:36:37 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7c669300-4c90-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 10:36:35 +0200 (CEST)
Received: from MW4PR03CA0358.namprd03.prod.outlook.com (2603:10b6:303:dc::33)
 by MW3PR12MB4524.namprd12.prod.outlook.com (2603:10b6:303:2d::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 08:36:30 +0000
Received: from MWH0EPF000989EA.namprd02.prod.outlook.com
 (2603:10b6:303:dc:cafe::1e) by MW4PR03CA0358.outlook.office365.com
 (2603:10b6:303:dc::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 08:36:30 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 MWH0EPF000989EA.mail.protection.outlook.com (10.167.241.137) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 08:36:29 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 6 Sep
 2023 03:36:26 -0500
Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by
 SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27
 via Frontend Transport; Wed, 6 Sep 2023 03:36:25 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7c669300-4c90-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=T9+CgbifMdb0JZ2kJyJRPYodmoIloX7XVEH6Rql4vVEiKtzEdT1Gj4ph398guFJRYch1AzcXoL1WtTDgLrCJ4PYtD2s4CN/of+nnPPE4l0sOzHDML8PCuD6Astzb0rW7v8lsnHHyL0cqShBYU19q01a4t0TkWxrv3StrJiaZHZks42L4ML0lt+clhGQfP0GfYYrlQN+h8Rzn1ypD4+9uIzu4BC0iQ0KZHRji8YyK4b1PFkDS7XV34QvEq882Miq/6oOI7fLB6YMcNic09kZlLIbbj/Kvuwo+3QMHSf7YFaHpQcI3iDZm+bLki2jRLBPOcYxwaqGYTm/EauewDM4TwA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=2N9qman4jPoFedFZdZwqNPAoopTV8srge1tPN9OvOTw=;
 b=OCfXYgvOsLkQ5MatLusUdv+JuAd5xAznjt0j/2JdYsPVu1kI7MccRL8LpNJKxYzxpgnzuW2qoLa3EOf3UDZuzEv2CZ9a44MeMQVAUEmhv6W+gmw1i3+Yz+xikYqlV+GgOIFseODekindF8wtZguDcDL1Yg6S2wZa8PWeEbl6cAzrjWJkmns7+kEJZxvR8JC09OQgd61chZ5Uw11dOaEktJufLj3Js+mPbV1rZakKvyfebE9GWeuw5oO6LAUDVHgcnhspARK672tbpey3k7i1E/PVmaNc9HAlbJVZrmAmHcALPQVx0+yMY7HGbGQ2T52WrZJRKpQGif98OgQ08sOzEQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2N9qman4jPoFedFZdZwqNPAoopTV8srge1tPN9OvOTw=;
 b=bSL56byUyXvBv/snYMZuzYj/sERYPKybDfAcDtLy35u4E62TpD5N3ltLXOy9pOV0HalOm4IGi6HxE0hEz0TuQBcxxx+gR17/QofM8AkoKC76Rfn84PV2vNArJgKrX+A623AXT3ezvILhSmOvbmbuX2l2H1SbjxnNC/G7ajiwil0=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Michal Orzel <michal.orzel@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Michal Orzel <michal.orzel@amd.com>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, <jbeulich@suse.com>,
	<stefano.stabellini@amd.com>, <vikram.garhwal@amd.com>
Subject: [PATCH] tools/xl: Guard main_dt_overlay() with LIBXL_HAVE_DT_OVERLAY
Date: Wed, 6 Sep 2023 10:36:14 +0200
Message-ID: <20230906083614.25315-1-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MWH0EPF000989EA:EE_|MW3PR12MB4524:EE_
X-MS-Office365-Filtering-Correlation-Id: 2ebc7cd3-c417-4004-c503-08dbaeb45e25
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	C4sAQKYUYQTEgNkz3cDHdPxenZtglauhu6hg3O+w75kL2KuEhst2/IlBfKI/5a8jh1oamo7+1uHMEMxYF2WuKO1YF2OxMTekQKZz4vUgz4Eq0xMltwov8uR6okjh3HPiHsTRMspgi2shwJHhua3mEHBO6SGt4LUbFLdO0YLNi/RwDd6o3ds+Nfvt8uZtr9E+XfwLuGUtFPSjZcRm/KLUOhkb68XKIVbYSNDCrCHBAOlnyAeM11sojtXI2OZTSs9+0d++aqslppzI4C9exOjnokA2LiSZVZsy6b8vxaPsX9OkASYwsHNQAvpOCg+joJEVjE5QC8Js3IoTSHenWy+rP4ZwrT9yB+Cmtxc4hMG79bfT7tzphuo2RgT6PvEIvKYfQJr+dim294dZnXTT7LvzWmJbJhUSoWvV2hGml9bqxSxyDDMg5aTMmHgpCjHom2WeLTpGVf3HjET3TzeNDEHp6nv3daRSq5cMvDDWK94+u2r+pejTnYvvCmWM4hu1I6d8r3w41erT1jOKMHpkW+Ivt222b2j44ppj9lWW82nNeHJtpUumseV565NIE9HbagGaKIFGeCJYT8Zcxfe6q/cFIeIJ6+EBnGQU+PsjgTpJ/hfIlCB917O95PyLQNpLAxm0jbE9JCNdy5d0z/2uWvyMGyRbRv3aHYlcEeZ8ulz4fxk73polvlDDxlbtJq6H9cV4PVxOZNEkQV67AjlViu3/WQkbzcog7KwerXolH/UrmVqJNDohkz4u2u7YTXKR2GIb3n3KkwVCPWzK98OqJZaMAg==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(39860400002)(376002)(136003)(396003)(82310400011)(1800799009)(186009)(451199024)(40470700004)(46966006)(36840700001)(82740400003)(2616005)(40460700003)(26005)(81166007)(356005)(1076003)(47076005)(36756003)(36860700001)(426003)(336012)(83380400001)(40480700001)(478600001)(4326008)(8676002)(8936002)(70586007)(70206006)(5660300002)(44832011)(54906003)(86362001)(6916009)(316002)(6666004)(2906002)(41300700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 08:36:29.8374
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2ebc7cd3-c417-4004-c503-08dbaeb45e25
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	MWH0EPF000989EA.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW3PR12MB4524

main_dt_overlay() makes a call to libxl_dt_overlay() which is for now
only compiled for Arm. This causes the build failure as reported by
gitlab CI and OSSTEST. Fix it by guarding the function, prototype and
entry in cmd_table[] using LIBXL_HAVE_DT_OVERLAY. This has an advantage
over regular Arm guard so that the code will not need to be modified again
if other architecture gain support for this feature.

Fixes: 61765a07e3d8 ("tools/xl: Add new xl command overlay for device tree overlay support")
Reported-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Michal Orzel <michal.orzel@amd.com>
---
There are still other parts of dt overlay support in toolstack that would
want to be revisited in order to use guards suitable to be used by other
arches.
---
 tools/xl/xl.h           | 2 ++
 tools/xl/xl_cmdtable.c  | 2 ++
 tools/xl/xl_vmcontrol.c | 3 +++
 3 files changed, 7 insertions(+)

diff --git a/tools/xl/xl.h b/tools/xl/xl.h
index a923daccd340..3045b5a8e3f0 100644
--- a/tools/xl/xl.h
+++ b/tools/xl/xl.h
@@ -138,7 +138,9 @@ int main_shutdown(int argc, char **argv);
 int main_reboot(int argc, char **argv);
 int main_list(int argc, char **argv);
 int main_vm_list(int argc, char **argv);
+#ifdef LIBXL_HAVE_DT_OVERLAY
 int main_dt_overlay(int argc, char **argv);
+#endif
 int main_create(int argc, char **argv);
 int main_config_update(int argc, char **argv);
 int main_button_press(int argc, char **argv);
diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c
index 2463521156a1..62bdb2aeaa35 100644
--- a/tools/xl/xl_cmdtable.c
+++ b/tools/xl/xl_cmdtable.c
@@ -631,12 +631,14 @@ const struct cmd_spec cmd_table[] = {
       "Issue a qemu monitor command to the device model of a domain",
       "<Domain> <Command>",
     },
+#ifdef LIBXL_HAVE_DT_OVERLAY
     { "dt-overlay",
       &main_dt_overlay, 0, 1,
       "Add/Remove a device tree overlay",
       "add/remove <.dtbo>"
       "-h print this help\n"
     },
+#endif
 };
 
 const int cmdtable_len = ARRAY_SIZE(cmd_table);
diff --git a/tools/xl/xl_vmcontrol.c b/tools/xl/xl_vmcontrol.c
index cea5b4a88e81..98f6bd2e7607 100644
--- a/tools/xl/xl_vmcontrol.c
+++ b/tools/xl/xl_vmcontrol.c
@@ -1265,6 +1265,7 @@ int main_create(int argc, char **argv)
     return 0;
 }
 
+#ifdef LIBXL_HAVE_DT_OVERLAY
 int main_dt_overlay(int argc, char **argv)
 {
     const char *overlay_ops = NULL;
@@ -1317,6 +1318,8 @@ int main_dt_overlay(int argc, char **argv)
 
     return rc;
 }
+#endif
+
 /*
  * Local variables:
  * mode: C
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 08:43:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 08:43:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596355.930218 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdo8M-0004u1-Bj; Wed, 06 Sep 2023 08:43:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596355.930218; Wed, 06 Sep 2023 08:43:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdo8M-0004tu-7P; Wed, 06 Sep 2023 08:43:34 +0000
Received: by outflank-mailman (input) for mailman id 596355;
 Wed, 06 Sep 2023 08:43:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdo8L-0004tl-5K
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 08:43:33 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2081.outbound.protection.outlook.com [40.107.13.81])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 75933492-4c91-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 10:43:32 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GVXPR04MB9974.eurprd04.prod.outlook.com (2603:10a6:150:11a::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 08:43:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 08:42:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 75933492-4c91-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U3pnbfk89S2w6jrKwkt3lziEyqrUjwGu/vodG91o/RVjznbDSm70BquTy5cE+a/AwcgFFvzDPbqr8GlHZVvyEj/axkBmt1NMV+T6Lx8vAQgATa2umhFmCjfLRbP2rmNRJdfodErwnZCFjJnLnRrRSmpg/lBEChLiPjlo2+D96/4gkmje+7+tXpdn6ZyYymgSxjLn/MluzzHCcl5tGddtQeuEBZMk4M4JqfxgPbKZKXawwb50JcozAlDzcS+3Asz/BrV9xwSLqk8U0HBvKP+vnxZpBlCJ3HJ897XEdhAx2DYZbjqX5fsINnXASSsiQ53x9habfKyVPiod6PhkWtFfUQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=m66DQlzf2OSwC8Hx2KkbPczMJLaxP7cV8n+9xN/rQRw=;
 b=T+XwVvAENSCK4bhXRNyRfs9Rp8mFBcgfD2ZHtet2o5/hZjhGcnvRMSjmqjBYblEsZx57EPbRpoETayfIow69MaKprDGlUyLq8vb8JYPnaFQUafC6I2RMrEgQF5ZPBxPYK/3pGygdokRQsshuXHEq/rDlCRVQRbmP3mh4ewQYq7mLSAB6INPf3rHxZalJuTTkDBHU5Dpcu78zie3FrNkWxh9nKfxYhPUbwFSguXq/wk1cZA1+IFwGxAf1Zg3h39gmj5wX/2jQk82IHn3QPWQFBj4B/7q8VNeXWF92gM+4w4qh/XfVF31Un11wxj3S2+3McJzy4kepPNf3PRMTitd31g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=m66DQlzf2OSwC8Hx2KkbPczMJLaxP7cV8n+9xN/rQRw=;
 b=P3PpSo537i7pWMJ3hl0Yj4MP1ksD0oG8dkdCA31+Ed2QV0sib7kryWYdncHDrsaXcjMbhzCA1FcGU+X+MI8FMDFUZLsonOoFrO96X28BJIzfXVB2Lmpf6aqZ7qh/JR0L/Fq1CTQxqiN6Oq3tnlXA8Nv4S2RanM/8ma4Z9HS0XLgPxvlcn5lOozToyeI4S+FDTR3U0LaLlKSSTOjpd96crXpfqKWfwZpZGsD3eeM+pUhISQKIn3tkxHMVQgm6Qe4Ia1uunLEXO/gyZaGo6KsT8JzaS6+m5HbtcQQ24CN82hXgbTRnvFKkReAnMpYsU+m97Nak9IRpiYLaEcWjdvYZXw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0bc7937c-e051-ceac-d9a8-2c6afb1196c2@suse.com>
Date: Wed, 6 Sep 2023 10:42:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] tools/xl: Guard main_dt_overlay() with
 LIBXL_HAVE_DT_OVERLAY
Content-Language: en-US
To: Michal Orzel <michal.orzel@amd.com>
Cc: Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>,
 stefano.stabellini@amd.com, vikram.garhwal@amd.com,
 xen-devel@lists.xenproject.org
References: <20230906083614.25315-1-michal.orzel@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230906083614.25315-1-michal.orzel@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0136.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9e::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|GVXPR04MB9974:EE_
X-MS-Office365-Filtering-Correlation-Id: 859c6d23-f5ae-4d78-b5ba-08dbaeb54675
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MRwFXgJ+oh3W6qUYPVaiPxRw2XK8vaiB6mEbgHagexhg0io5pbltLza5G7m8FNLSoPDk0esZsv5NGWyfM+2NLXckKAM0WWdUNQM1H67jNmnH0yBLMGxU2sPS5IrJoqyfeQia15A0EX5Vc/76Cdvui35j9+Wl3KhfIkV7RfYaZoyW1fxlaYSv+eFWs4Ub/CIJtqSjZ3/7iEfeKvbwxs7nwps+XgCqrqqyHRyqae9W+sMqMSvUeFNh9FVsrhTa8cbdd+DfzARguJKydEUSSViWDfgt392Ys4bSkhGyAvWrgfZM3ZN0pCSncWVdf1hYmWgtWx6bGp0eitk8HTBaSQzBdwTQxwpFSC1rAFDCxa1nx7d290RXfjATxqyWBhCRRkXSgHC2IysiKKae8Sn4mN6z/O2Dw7oWLkRCjAYTOudNl2rPNxtnT400vLLCIcrBJtqWVP0yM8nb1xduI86A1uFhM+P5bUXhOqT5Me6BsejxQZcudCgCQWCfdA/ecr30b+dky1IUZI/uUIFmR7XEWa5Re+WNZ+AlPropbhGkm0hOlKv0Rq6xw21lkAxMiZHqCB5Dzet7HNP2qgEm9FxW7Ren9FnqHS/M98ZoiOGYgh8K7hElnxk+hF19TNgylCpyfUEgeFLcQMJiapV2gqcqfO2OFg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(39860400002)(376002)(396003)(366004)(186009)(1800799009)(451199024)(2616005)(38100700002)(26005)(53546011)(6506007)(6486002)(6512007)(36756003)(83380400001)(86362001)(31696002)(5660300002)(41300700001)(54906003)(66476007)(6916009)(66556008)(66946007)(316002)(4326008)(8676002)(8936002)(31686004)(478600001)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eDJ3aGF2Um5JSXhLZ2tMUzhmcmRIVzk0VVlaRmtGZ0NWM3I1ajBRbFUyZm5a?=
 =?utf-8?B?ZzNEdHNuOXQrUk9PYkUrWlVySVhDSExlTW03amkzM2p2UUtoRnhhWEgxaUFV?=
 =?utf-8?B?TkdmeFhVTmdscFpoSWoyZnZtMXJCMlZDd2prczJCRW5mOW9CV0JtbWVWOWx1?=
 =?utf-8?B?NDVmSm9KK3RLbDdNdG5ZenU0TThvb3dKdUlWUWh3c1c1K2ZIYXJTaHJyRUls?=
 =?utf-8?B?emhoQ1BtNVVBN2M5NTFIWnRPNHF3U1VIek1NOEtZU0trSU5PaXVUdTIwK0Nw?=
 =?utf-8?B?eWtUc2NscDJCU2tSMlRLbzhEZ1hONFhXa2g5S296VXRGTk1wNHRkV0ZrMU92?=
 =?utf-8?B?WFJZdVNBVE9vaUcwNnBOWmRxMmJpK3gzNEtlSWxjUCs0V3A4NmdVd0tvR1h2?=
 =?utf-8?B?cU9NWEtJdnE5UE10OTh2ajkzZVo0bHoxcHNNT0UzcThYejQybGw4Y1Z0ZVRO?=
 =?utf-8?B?MndwalF3RytQNzdqMzFaQzlBMkVDaFRIV09IaFYyWGZsa2M5eDg1LzNTUWhx?=
 =?utf-8?B?WDBHVWhUSmI3VllLZUZuMW9COHVOd3pTN3h0YmdXdmRNUEN5alA3UEpIMVV0?=
 =?utf-8?B?blQ3Znp0OU1xU0dsK1UwcWR2R0gzcTJGcFJpQWlrK3B5RDNpZzhTWkZTWEpj?=
 =?utf-8?B?bFVmZkFob0x3VC9zVTBBdlpzTVlGVXdOQUpYRGQvMno0Z2dtb2VMbzJzWE4v?=
 =?utf-8?B?eGRab2x3dUhMK0duUFhCaldjZ3JoTDJHTUFnVlJ4SGJFZUV1RmRmS0VVZzl0?=
 =?utf-8?B?ZmtnQmVMZWJzcG9rR09PMFdLdHdJbmlCc3dpOHZrRm9wd0xyWE0raGNaYmZM?=
 =?utf-8?B?RW1mcHN2a2tZeEhOVUVIQXVSNXBmL0RyNXdMb3JUL1BOTmNNcEZqUTI5SmZo?=
 =?utf-8?B?K20vL1psNFNiQnNvWGhua0V1SGJvaHd3MkpJWUpPVmcxNkdKTUVaVUg1ajIy?=
 =?utf-8?B?b0xXWVRvQ3QzU0ZTdVF0bWVYbGM0bU9STitPV0hIempUS1NkTWJDNStRSjU5?=
 =?utf-8?B?WHNIamc2WnZVZjFpT1JyMk96M0dTQ21tK3VqSDVyNFNudTlZc2xPYy9ONDJJ?=
 =?utf-8?B?U0wweitaZndObnNJbDZXUEN2bG9ZK1lEZk1Zd1hSQ0JuemV2VFlnMDkvQ2dj?=
 =?utf-8?B?anduMlZhK2VMWXVhMkRMZ1B3eUgrbVk3SzlwTTcvdHpjeHdiMXRCc28rRUtN?=
 =?utf-8?B?RVRrcVFTVFpnM3hQK29tV0RvcVA5bVdvWHdvSktnbmNsMlo5cW9DaGtnMmI3?=
 =?utf-8?B?OEUyamdMVHZCMk9KdjM4bi92K1VhQ2pSQUV6aDJSWUJkR0dLTm5lYkZLTWVY?=
 =?utf-8?B?UW1scGtxbUhsZW5JSm5jeVo5bGRmS3FDd0kyM1VXWkFyTUx3QTNLZm1xaVZ1?=
 =?utf-8?B?ZFkxeERlMkpkMWJiZHlSL1Baak5UYStZNHN6YW1GZkNCc2FjN2R3enMrbXdt?=
 =?utf-8?B?akVMQURqWWt3UTRmQXpGTFJGeUh1enVEekFWVlR0MGpRY3didXBjcC8wK0pG?=
 =?utf-8?B?TkMvNXFwTFFGTkJKZVBCSkJTV3dQZTBFakI4bXg0VExmZ3pXQ0duNXppbXNz?=
 =?utf-8?B?eHBIRXNEbTErNUpidGltblVaS0VzVnZNOW11bUxScEpvUEN4bU1zNTdGYms2?=
 =?utf-8?B?c3dzYkN3NXkyZnhmY3lyeTVndXZCSFNwOG93LzNwVGNObW9jTEVmYXZiVVRN?=
 =?utf-8?B?aGJMclpmVzc2eExIOFp1K3I5a0pmUU5vNzZpZGM0SzVqSWt0SUwxUFRTcGVw?=
 =?utf-8?B?ell4cGtSNkNEWk5jVmVVb0VweENuSEJidUxvcHJ5WWVaRkJRUUJqaEl0N01R?=
 =?utf-8?B?bi9pNUlTV3hzS2Q0WEVwY05CSU9XN2l0Q0tiUGZnVmh5MlVZN0UycktPT1dN?=
 =?utf-8?B?cW1RL0tkTFpzcGlkc2wrd0RITllkbkRsaTdSdVEwa3BBUW1tV0ltYXpybnpH?=
 =?utf-8?B?YXdCOTlnZTkyYVdqN0psek5tdzcxUzF0Q3FNTzFIUlZZQkJMOHpLZkZSdFFn?=
 =?utf-8?B?S082WEoyb0x2Sk4vMWlMc1ZWWWpmOWpNczVBUldFdFROYTQ5cGI1ck9xMDhl?=
 =?utf-8?B?aWR0Kzl3SDMxZG4xRHdVMXRWYmJqZklJajBQWUFnMVFBYzZ4cURHK0E1NEhE?=
 =?utf-8?Q?YXzKxfg1E/JUDDgh6bsRNAgOj?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 859c6d23-f5ae-4d78-b5ba-08dbaeb54675
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 08:42:59.8531
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: BihKDp3CTeMA8CTR9MmFF4b/QWO6BGbMMRxp8KRf72JeGJNwOOtW+yM1xBBbyplubdlkgWvR4ElF3PTG8KW10Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9974

On 06.09.2023 10:36, Michal Orzel wrote:
> main_dt_overlay() makes a call to libxl_dt_overlay() which is for now
> only compiled for Arm. This causes the build failure as reported by
> gitlab CI and OSSTEST. Fix it by guarding the function, prototype and
> entry in cmd_table[] using LIBXL_HAVE_DT_OVERLAY. This has an advantage
> over regular Arm guard so that the code will not need to be modified again
> if other architecture gain support for this feature.
> 
> Fixes: 61765a07e3d8 ("tools/xl: Add new xl command overlay for device tree overlay support")
> Reported-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
> ---
> There are still other parts of dt overlay support in toolstack that would
> want to be revisited in order to use guards suitable to be used by other
> arches.

Since from all I can tell this will do
Reviewed-by: Jan Beulich <jbeulich@suse.com>

But I still wonder: We agreed to leave libxc alone for now, but was it
really intentional that you didn't adjust libxl.h right here, but instead
...

> --- a/tools/xl/xl.h
> +++ b/tools/xl/xl.h
> @@ -138,7 +138,9 @@ int main_shutdown(int argc, char **argv);
>  int main_reboot(int argc, char **argv);
>  int main_list(int argc, char **argv);
>  int main_vm_list(int argc, char **argv);
> +#ifdef LIBXL_HAVE_DT_OVERLAY
>  int main_dt_overlay(int argc, char **argv);
> +#endif
>  int main_create(int argc, char **argv);
>  int main_config_update(int argc, char **argv);
>  int main_button_press(int argc, char **argv);

... made this adjustment, which imo isn't strictly necessary.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 08:53:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 08:53:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596364.930234 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoI6-0007jk-9R; Wed, 06 Sep 2023 08:53:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596364.930234; Wed, 06 Sep 2023 08:53:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoI6-0007jd-6R; Wed, 06 Sep 2023 08:53:38 +0000
Received: by outflank-mailman (input) for mailman id 596364;
 Wed, 06 Sep 2023 08:53:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7I91=EW=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qdoI5-0007jV-7d
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 08:53:37 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20601.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::601])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dc1885e4-4c92-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 10:53:34 +0200 (CEST)
Received: from CH0PR04CA0109.namprd04.prod.outlook.com (2603:10b6:610:75::24)
 by DS0PR12MB7802.namprd12.prod.outlook.com (2603:10b6:8:145::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 08:53:28 +0000
Received: from DS2PEPF00003440.namprd02.prod.outlook.com
 (2603:10b6:610:75:cafe::4c) by CH0PR04CA0109.outlook.office365.com
 (2603:10b6:610:75::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 08:53:28 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 DS2PEPF00003440.mail.protection.outlook.com (10.167.18.43) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 08:53:28 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 6 Sep
 2023 03:53:27 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 6 Sep 2023 03:53:26 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dc1885e4-4c92-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ag+RyM0wldVG18Xah7WlKhb6VNUqy0SY7UIhLE/FrLFEVXLd+aL5I1INEH3JPnEUFNfll3sf+lLPgsZ0Y7vSsqOomivkKkbuxPiZbEaUtn5lbuWhl6BMLKWdPphqldg47dglvl7v6uaLjIKrl4cOMm5q+9HhykX62zY/9AoCO6FRgtjVv4xOrMNG27V109ORtbisYNNjIIdQZKe0kkb645UQ0TCkDZqZIpgnjyRg5VrLhvpHKfjNsexT7fIcWKjd12kQ9QkYdMlkjn6xd+eNdX/yyv/Th3knEqRvi+mVPjmRirfsd8FSoy/6cGS3aZxkKXsdR7YX0R+taL55igo/LA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QY9RtrUjxZdgvr8IDgaiUK9SF7yQES3ZNUlQi7LV1Lk=;
 b=npcQCCyMbjM0IGc2BWF36CATt0aUJPPVXd30POQ/JpWhmSEeevUREWf9pv2GIsH6F3owD0/q41jcdCUJaT+YCy1L/d6ZpfX88eAaUyyVmuXk2mkUBdYpdH4MFN8bujQVM7kQQETjqoXd+0FY8VU3iqESWbz/LcnBAD6ukIya8vI9OUbqXkXgisjrHCGh/mQWaXvZQeBqMdszAlaCy1f5mxLb2iA3ZnypYaD8c6wSZr4fbJPhT2x9pg2JV5FU1QLv7CT2ETRPddk9TRTJT0uaWWe2p+BeiHozAAolhG+trEJp5AJWN2owtkejxVWn2f1u/zhPi2xtFDnCbbydmsQuMA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QY9RtrUjxZdgvr8IDgaiUK9SF7yQES3ZNUlQi7LV1Lk=;
 b=2XdSPPkxAvn9Gj9wvf4+Ydgb1D6n1xNMrdJNU06DpaWdKAndgN0bMQaqhNmzBzZeazQ3A2mRkY4e44xlO/tv1FEirjXoZg4BvhCUlLpAQ/+6ydI5QY02HHR3fNpxfnIRlHvNY0HYoCPRrTWW8KwDsSKw5URbC91pTkCDeK06S1w=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <c0dbf43b-c579-4731-f25a-b1a7a008f1ec@amd.com>
Date: Wed, 6 Sep 2023 10:53:20 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] tools/xl: Guard main_dt_overlay() with
 LIBXL_HAVE_DT_OVERLAY
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
CC: Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>,
	<stefano.stabellini@amd.com>, <vikram.garhwal@amd.com>,
	<xen-devel@lists.xenproject.org>
References: <20230906083614.25315-1-michal.orzel@amd.com>
 <0bc7937c-e051-ceac-d9a8-2c6afb1196c2@suse.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <0bc7937c-e051-ceac-d9a8-2c6afb1196c2@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF00003440:EE_|DS0PR12MB7802:EE_
X-MS-Office365-Filtering-Correlation-Id: 49eae7c2-20ea-45eb-28af-08dbaeb6bd42
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	CPuVGTmdqfR1j1p+2OY4rJDD/7oXVrnVJhqH7N+74DxBY335D+jIWX33pbEfBbUqoUeg3QTomKZtWDRD9n59ozqNBtpXlSBd7nhRDnLgHhFRiP0OjcC7zyqLJmY34pIh3DaM51yreoO5PIM2yE+AeGbZkzmNqTeV1SpBcKsA4JPUndjpMr4RSbVS3DhsR2pwGENOVPgqupuLasKP9U2GKcBz6bpoV1AV0EC1lA5520BjUp8Mj8t4XA6rGUVNiMzk7VNBRH3us3V1IJaBReKD0dl2tpvt856qv9m+cbUe1mxqZ5/YvHNJFnFRlGRiPatF0Qeoswfgw6h5xelPXpDJNw+JHBUUnpQaRQZrHYbtdupbLsrXGk+KH8QKx+u8/pc9fkuLMjg3G6l2WkERVX7FJsgyt0fvdGcGvsEMqxMAmxwEono7qjBV2EOSIZ9TZ0H426885L7F8T5xsXQSgpd2boHG3JEjLv7DFRcPn7G6YhOjSrrUUpOa3Ja3vrW9sWEho5+WHaKbYDFlPQAK0doJM4Mvnkfj3jNRbTiR6G3Y/LxcqaILLnGj4iAoUlyiqSosvR1GL3NFxpq4eY/G278/sr8hBcDVZKPzErtZzr0prq0jf8mcTsSZBMEocQPZuKDKu9kMtMjaUDE7sOzxuafXfaMD+eBpqEiOtoJ295ekd5u4E4Ux748AJ37Tv0pKoeu1PkJTvIlfiKacO3iG+kIuvziLuty6bxkvyAj3DGA6UoEb0COus6AY3A9okZSJ/dRVtMrSfIZGS6aStlRT1nmNKV9oQHLxvzHq84j27IUzgqGaBldkB8xLQEQPJVGp9XK9
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(346002)(376002)(136003)(39860400002)(1800799009)(186009)(82310400011)(451199024)(36840700001)(40470700004)(46966006)(6666004)(53546011)(83380400001)(426003)(478600001)(336012)(2616005)(2906002)(26005)(44832011)(16576012)(54906003)(316002)(41300700001)(70206006)(6916009)(70586007)(4326008)(5660300002)(8676002)(8936002)(40460700003)(36756003)(40480700001)(47076005)(86362001)(31696002)(81166007)(36860700001)(356005)(31686004)(82740400003)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 08:53:28.4630
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 49eae7c2-20ea-45eb-28af-08dbaeb6bd42
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS2PEPF00003440.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7802



On 06/09/2023 10:42, Jan Beulich wrote:
> 
> 
> On 06.09.2023 10:36, Michal Orzel wrote:
>> main_dt_overlay() makes a call to libxl_dt_overlay() which is for now
>> only compiled for Arm. This causes the build failure as reported by
>> gitlab CI and OSSTEST. Fix it by guarding the function, prototype and
>> entry in cmd_table[] using LIBXL_HAVE_DT_OVERLAY. This has an advantage
>> over regular Arm guard so that the code will not need to be modified again
>> if other architecture gain support for this feature.
>>
>> Fixes: 61765a07e3d8 ("tools/xl: Add new xl command overlay for device tree overlay support")
>> Reported-by: Jan Beulich <jbeulich@suse.com>
>> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
>> ---
>> There are still other parts of dt overlay support in toolstack that would
>> want to be revisited in order to use guards suitable to be used by other
>> arches.
> 
> Since from all I can tell this will do
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> 
> But I still wonder: We agreed to leave libxc alone for now, but was it
> really intentional that you didn't adjust libxl.h right here, but instead
> ...
> 
>> --- a/tools/xl/xl.h
>> +++ b/tools/xl/xl.h
>> @@ -138,7 +138,9 @@ int main_shutdown(int argc, char **argv);
>>  int main_reboot(int argc, char **argv);
>>  int main_list(int argc, char **argv);
>>  int main_vm_list(int argc, char **argv);
>> +#ifdef LIBXL_HAVE_DT_OVERLAY
>>  int main_dt_overlay(int argc, char **argv);
>> +#endif
>>  int main_create(int argc, char **argv);
>>  int main_config_update(int argc, char **argv);
>>  int main_button_press(int argc, char **argv);
> 
> ... made this adjustment, which imo isn't strictly necessary.
I'm not a toolstack expert but I decided to guard the prototype as well
given that quite a few of them are guarded either using LIBXL_HAVE or arch guard.

~Michal


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 08:57:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 08:57:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596372.930250 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoMC-00005k-4A; Wed, 06 Sep 2023 08:57:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596372.930250; Wed, 06 Sep 2023 08:57:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoMB-00005M-UM; Wed, 06 Sep 2023 08:57:51 +0000
Received: by outflank-mailman (input) for mailman id 596372;
 Wed, 06 Sep 2023 08:57:50 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5kCQ=EW=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qdoMA-0008TQ-BH
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 08:57:50 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 73ecc2ff-4c93-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 10:57:48 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-6-207-235.retail.telecomitalia.it [87.6.207.235])
 by support.bugseng.com (Postfix) with ESMTPSA id 02D444EE0739;
 Wed,  6 Sep 2023 10:57:47 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 73ecc2ff-4c93-11ee-8783-cb3800f73035
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 1/4] x86/genapic: address a violation of MISRA C:2012 Rule 8.3
Date: Wed,  6 Sep 2023 10:57:38 +0200
Message-Id: <375af065f072488f74003256aecc325f166d532a.1693990010.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1693990010.git.federico.serafini@bugseng.com>
References: <cover.1693990010.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function delcaration consistent with the corresponding definition.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/genapic.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/include/asm/genapic.h b/xen/arch/x86/include/asm/genapic.h
index beeaddf19d..970df8ffe0 100644
--- a/xen/arch/x86/include/asm/genapic.h
+++ b/xen/arch/x86/include/asm/genapic.h
@@ -43,7 +43,7 @@ void cf_check send_IPI_self_legacy(uint8_t vector);
 
 void cf_check init_apic_ldr_flat(void);
 unsigned int cf_check cpu_mask_to_apicid_flat(const cpumask_t *cpumask);
-void cf_check send_IPI_mask_flat(const cpumask_t *mask, int vector);
+void cf_check send_IPI_mask_flat(const cpumask_t *cpumask, int vector);
 const cpumask_t *cf_check vector_allocation_cpumask_flat(int cpu);
 #define GENAPIC_FLAT \
 	.int_delivery_mode = dest_LowestPrio, \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 08:57:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 08:57:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596373.930255 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoMC-0000B9-DX; Wed, 06 Sep 2023 08:57:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596373.930255; Wed, 06 Sep 2023 08:57:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoMC-00009J-4k; Wed, 06 Sep 2023 08:57:52 +0000
Received: by outflank-mailman (input) for mailman id 596373;
 Wed, 06 Sep 2023 08:57:50 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5kCQ=EW=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qdoMA-0008Tb-PF
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 08:57:50 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 742b585f-4c93-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 10:57:48 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-6-207-235.retail.telecomitalia.it [87.6.207.235])
 by support.bugseng.com (Postfix) with ESMTPSA id 61D814EE073C;
 Wed,  6 Sep 2023 10:57:48 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 742b585f-4c93-11ee-9b0d-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 2/4] x86/io: address violations of MISRA C:2012 Rule 8.3
Date: Wed,  6 Sep 2023 10:57:39 +0200
Message-Id: <f1be66565b6a1155ee25a840ed62474ca9bc08a4.1693990010.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1693990010.git.federico.serafini@bugseng.com>
References: <cover.1693990010.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make declarations consistent, no functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/io.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/include/asm/io.h b/xen/arch/x86/include/asm/io.h
index 92b784a861..8c8a15bd06 100644
--- a/xen/arch/x86/include/asm/io.h
+++ b/xen/arch/x86/include/asm/io.h
@@ -51,6 +51,6 @@ __OUT(l,,int)
 #define IOEMUL_QUIRK_STUB_BYTES 9
 struct cpu_user_regs;
 extern unsigned int (*ioemul_handle_quirk)(
-    u8 opcode, char *io_emul_stub, struct cpu_user_regs *regs);
+    uint8_t opcode, char *io_emul_stub, struct cpu_user_regs *regs);
 
 #endif
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 08:57:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 08:57:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596374.930260 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoMC-0000J3-ML; Wed, 06 Sep 2023 08:57:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596374.930260; Wed, 06 Sep 2023 08:57:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoMC-0000GG-Dz; Wed, 06 Sep 2023 08:57:52 +0000
Received: by outflank-mailman (input) for mailman id 596374;
 Wed, 06 Sep 2023 08:57:51 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5kCQ=EW=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qdoMB-0008TQ-Bb
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 08:57:51 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7468798e-4c93-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 10:57:49 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-6-207-235.retail.telecomitalia.it [87.6.207.235])
 by support.bugseng.com (Postfix) with ESMTPSA id CA65D4EE073D;
 Wed,  6 Sep 2023 10:57:48 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7468798e-4c93-11ee-8783-cb3800f73035
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 3/4] x86/io_apic: address violations of MISRA C:2012 Rules 8.2 and 8.3
Date: Wed,  6 Sep 2023 10:57:40 +0200
Message-Id: <56bfeae4c6a5c7f65a3f329003583aed6de13b19.1693990010.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1693990010.git.federico.serafini@bugseng.com>
References: <cover.1693990010.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names and make function declarations and
definitions consistent.

No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/io_apic.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/include/asm/io_apic.h b/xen/arch/x86/include/asm/io_apic.h
index 9165da2281..a7e4c9e146 100644
--- a/xen/arch/x86/include/asm/io_apic.h
+++ b/xen/arch/x86/include/asm/io_apic.h
@@ -199,7 +199,7 @@ extern struct IO_APIC_route_entry __ioapic_read_entry(
     unsigned int apic, unsigned int pin, bool raw);
 void __ioapic_write_entry(
     unsigned int apic, unsigned int pin, bool raw,
-    struct IO_APIC_route_entry);
+    struct IO_APIC_route_entry e);
 
 extern struct IO_APIC_route_entry **alloc_ioapic_entries(void);
 extern void free_ioapic_entries(struct IO_APIC_route_entry **ioapic_entries);
@@ -211,6 +211,6 @@ extern int restore_IO_APIC_setup(struct IO_APIC_route_entry **ioapic_entries,
 unsigned highest_gsi(void);
 
 int ioapic_guest_read( unsigned long physbase, unsigned int reg, u32 *pval);
-int ioapic_guest_write(unsigned long physbase, unsigned int reg, u32 pval);
+int ioapic_guest_write(unsigned long physbase, unsigned int reg, u32 val);
 
 #endif
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 08:57:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 08:57:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596371.930243 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoMB-0008Tv-P5; Wed, 06 Sep 2023 08:57:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596371.930243; Wed, 06 Sep 2023 08:57:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoMB-0008To-Lo; Wed, 06 Sep 2023 08:57:51 +0000
Received: by outflank-mailman (input) for mailman id 596371;
 Wed, 06 Sep 2023 08:57:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5kCQ=EW=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qdoM9-0008TQ-Ln
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 08:57:49 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 73c6688f-4c93-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 10:57:48 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-6-207-235.retail.telecomitalia.it [87.6.207.235])
 by support.bugseng.com (Postfix) with ESMTPSA id 85CE54EE0737;
 Wed,  6 Sep 2023 10:57:47 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 73c6688f-4c93-11ee-8783-cb3800f73035
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 0/4] xen/x86: address some violations of MISRA C:2012 Rules 8.2 and 8.3
Date: Wed,  6 Sep 2023 10:57:37 +0200
Message-Id: <cover.1693990010.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This serie addresses some violations of MISRA C:2012 Rules 8.2 and 8.3
for x86-64.

Federico Serafini (4):
  x86/genapic: address a violation of MISRA C:2012 Rule 8.3
  x86/io: address violations of MISRA C:2012 Rule 8.3
  x86/io_apic: address violations of MISRA C:2012 Rules 8.2 and 8.3
  xen/vpci: address a violation of MISRA C:2012 Rule 8.3

 xen/arch/x86/include/asm/genapic.h | 2 +-
 xen/arch/x86/include/asm/hap.h     | 2 +-
 xen/arch/x86/include/asm/io.h      | 2 +-
 xen/arch/x86/include/asm/io_apic.h | 4 ++--
 xen/include/xen/vpci.h             | 2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 08:57:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 08:57:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596375.930271 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoMD-0000Ym-C9; Wed, 06 Sep 2023 08:57:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596375.930271; Wed, 06 Sep 2023 08:57:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoMD-0000Vy-5S; Wed, 06 Sep 2023 08:57:53 +0000
Received: by outflank-mailman (input) for mailman id 596375;
 Wed, 06 Sep 2023 08:57:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5kCQ=EW=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qdoMC-0008TQ-Bd
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 08:57:52 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 74a2f0b9-4c93-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 10:57:49 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-6-207-235.retail.telecomitalia.it [87.6.207.235])
 by support.bugseng.com (Postfix) with ESMTPSA id 357964EE073E;
 Wed,  6 Sep 2023 10:57:49 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 74a2f0b9-4c93-11ee-8783-cb3800f73035
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH 4/4] xen/vpci: address a violation of MISRA C:2012 Rule 8.3
Date: Wed,  6 Sep 2023 10:57:41 +0200
Message-Id: <f5de24818596d88da1c27075c674a823670ee44c.1693990010.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1693990010.git.federico.serafini@bugseng.com>
References: <cover.1693990010.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function declarations and definitions consistent.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/hap.h | 2 +-
 xen/include/xen/vpci.h         | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/include/asm/hap.h b/xen/arch/x86/include/asm/hap.h
index 9d12327b12..05e124ad57 100644
--- a/xen/arch/x86/include/asm/hap.h
+++ b/xen/arch/x86/include/asm/hap.h
@@ -30,7 +30,7 @@ void  hap_vcpu_init(struct vcpu *v);
 int   hap_track_dirty_vram(struct domain *d,
                            unsigned long begin_pfn,
                            unsigned int nr_frames,
-                           XEN_GUEST_HANDLE(void) dirty_bitmap);
+                           XEN_GUEST_HANDLE(void) guest_dirty_bitmap);
 
 extern const struct paging_mode *hap_paging_get_mode(struct vcpu *);
 int hap_set_allocation(struct domain *d, unsigned int pages, bool *preempted);
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 0b8a2a3c74..d743d96a10 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -26,7 +26,7 @@ typedef int vpci_register_init_t(struct pci_dev *dev);
                __used_section(".data.vpci." p) = x
 
 /* Add vPCI handlers to device. */
-int __must_check vpci_add_handlers(struct pci_dev *dev);
+int __must_check vpci_add_handlers(struct pci_dev *pdev);
 
 /* Remove all handlers and free vpci related structures. */
 void vpci_remove_device(struct pci_dev *pdev);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 09:08:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 09:08:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596413.930293 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoWn-0004zE-E6; Wed, 06 Sep 2023 09:08:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596413.930293; Wed, 06 Sep 2023 09:08:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoWn-0004z7-Bb; Wed, 06 Sep 2023 09:08:49 +0000
Received: by outflank-mailman (input) for mailman id 596413;
 Wed, 06 Sep 2023 09:08:48 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdoWm-0004yx-FM; Wed, 06 Sep 2023 09:08:48 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdoWm-0006HM-DQ; Wed, 06 Sep 2023 09:08:48 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdoWm-0004Yr-5F; Wed, 06 Sep 2023 09:08:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdoWm-0003wT-4k; Wed, 06 Sep 2023 09:08:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ceUoZlwNBiTWtzvwWWxr+FuhTo4u/5PMkcq1J+wAq2A=; b=F+0iVsnCTAuNXIUxTsfJ/+2M6K
	+1CPLb6uC+SoC+lOUI9Tl/dg9ekZI0SbmMQSJgyGNAQhPfU9Z1w1R4bfLGXm23nxQXbNJCSC8CrjQ
	JZpFDdhVdsjDmE5Smxu3ic4V1S9ypaahR7MG/CUDD5svXFLDEnibudu7xKLabELmkNNI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182646-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182646: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:build-amd64:xen-build:fail:regression
    xen-unstable-smoke:build-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-unstable-smoke:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=61765a07e3d8a4dabbb8323b55f13ee75c80e54a
X-Osstest-Versions-That:
    xen=9a216e92de9f9011097e4f1fb55ff67ba0a21704
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 09:08:48 +0000

flight 182646 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182646/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-amd64                   6 xen-build                fail REGR. vs. 182635

Tests which did not succeed, but are not blocking:
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  61765a07e3d8a4dabbb8323b55f13ee75c80e54a
baseline version:
 xen                  9a216e92de9f9011097e4f1fb55ff67ba0a21704

Last test of basis   182635  2023-09-05 13:00:27 Z    0 days
Testing same since   182641  2023-09-06 02:02:08 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  David Gibson <david@gibson.dropbear.id.au>
  Henry Wang <Henry.Wang@arm.com>
  Julien Grall <jgrall@amazon.com>
  Juline Grall <jgrall@amazon.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Vikram Garhwal <fnu.vikram@xilinx.com>
  Vikram Garhwal <vikram.garhwal@amd.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  fail    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          blocked 
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-amd64-libvirt                                     blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 380 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 09:25:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 09:25:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596424.930309 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoma-0000tf-SO; Wed, 06 Sep 2023 09:25:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596424.930309; Wed, 06 Sep 2023 09:25:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdoma-0000tY-OQ; Wed, 06 Sep 2023 09:25:08 +0000
Received: by outflank-mailman (input) for mailman id 596424;
 Wed, 06 Sep 2023 09:25:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Mtf2=EW=kernel.org=ardb@srs-se1.protection.inumbo.net>)
 id 1qdomZ-0000tQ-GH
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 09:25:07 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 426356e0-4c97-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 11:25:04 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 8B98B60FA4
 for <xen-devel@lists.xenproject.org>; Wed,  6 Sep 2023 09:25:02 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id C7D76C433AD
 for <xen-devel@lists.xenproject.org>; Wed,  6 Sep 2023 09:25:01 +0000 (UTC)
Received: by mail-lf1-f45.google.com with SMTP id
 2adb3069b0e04-50078eba7afso5802574e87.0
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 02:25:01 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 426356e0-4c97-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1693992301;
	bh=lmJjVtMotZR0OEyvP2Hr8GZbnRjZIP8Ao3JdDPcQq2o=;
	h=References:In-Reply-To:From:Date:Subject:To:Cc:From;
	b=OY9p21GOOSqNemi6Nx47WMZmAbM1jtR3KZ3wehN4eUWQOLC096xwn9Y7Aqsx+iDdy
	 vjj4YEh+S6t9mSvAvFcXGVsofGdnunMzURL+s+J7WMxSn0/YdFA4sPE78nnBb7Oz8A
	 8WsxE8fP41ifRpaa5Ux7Pn5O1NGP76SEcv0Uy9rE6M1Mq1de8DFc4dXXAOjWPU7/jO
	 RIKIsAw7bJp83v8mHN3Ejs9TctABuMY6TaAP7nFwGERLZO6d5T9VUP1+l4jZRWP0z2
	 wq2ui3kdWqVEksD45T81rEcGc5GFpftxmk5d3o4fzpp26Di4WO3b0gZGWdEVleZ3wf
	 woBC/R7MRvF4g==
X-Gm-Message-State: AOJu0YyZR+02fh9eA7JpcfgM49q4dHg4eaoiattKG2JBLPVap7k4WjMU
	jVOmoJ6U3bKt+RU8rlGfrL/R+Gew8DJuCOuvDAM=
X-Google-Smtp-Source: AGHT+IF9m75EGAUP/FRxHy9FzYPj8AVAnqNyJxlhMAtQ5mOPYoA4I6H2XvJqCnVZ3MZJmkj+1jC0DjCyu17N+9+HlJQ=
X-Received: by 2002:a05:6512:3e01:b0:4fd:cae7:2393 with SMTP id
 i1-20020a0565123e0100b004fdcae72393mr2496977lfv.2.1693992299613; Wed, 06 Sep
 2023 02:24:59 -0700 (PDT)
MIME-Version: 1.0
References: <c79e568e0d1c85bef9a2efc4c854de8f80ea1487.1689244868.git.xenia.ragiadakou@amd.com>
In-Reply-To: <c79e568e0d1c85bef9a2efc4c854de8f80ea1487.1689244868.git.xenia.ragiadakou@amd.com>
From: Ard Biesheuvel <ardb@kernel.org>
Date: Wed, 6 Sep 2023 11:24:48 +0200
X-Gmail-Original-Message-ID: <CAMj1kXEcgbxMbh=B43KqKikVZMmz75f6Pd3rZB9fFF3eszghHA@mail.gmail.com>
Message-ID: <CAMj1kXEcgbxMbh=B43KqKikVZMmz75f6Pd3rZB9fFF3eszghHA@mail.gmail.com>
Subject: Re: [PATCH] OvmfPkg/OvmfXen: Fix S3
To: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Cc: devel@edk2.groups.io, Ard Biesheuvel <ardb+tianocore@kernel.org>, 
	Jiewen Yao <jiewen.yao@intel.com>, Jordan Justen <jordan.l.justen@intel.com>, 
	Gerd Hoffmann <kraxel@redhat.com>, Anthony Perard <anthony.perard@citrix.com>, 
	Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="UTF-8"

On Thu, 13 Jul 2023 at 12:48, Xenia Ragiadakou <xenia.ragiadakou@amd.com> wrote:
>
> Currently, resuming an S3 suspended guest results in the following
> assertion failure:
> ASSERT MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.c(41): MemoryLength > 0
> This happens because some parts of the S3 suspend and resume paths
> are missing in order for S3 to work. For instance, the variables
> mS3AcpiReservedMemoryBase and mS3AcpiReservedMemoryBase are not
> initialized, regions that are used on S3 resume are either missing
> or not marked as ACPI NVS memory and can be corrupted by the OS.
> This patch adds the missing parts based heavily on the existing S3
> implementation of other virtual platforms.
>
> For S3 support, the provision of fw_cfg is required in order for
> suspend states to be retrieved.
>
> Another issue noticed is that when CalibrateLapicTimer() is called
> on S3 resume path, the shared info page is remapped to a different
> guest physical address. This remapping happens under guest's feet,
> so any subsequent attempt of the guest to access the shared info
> page results in nested page faults. This patch removes any local
> APIC timer initializion and calibration from S3 resume path.
>
> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>

Anyone care to review this?

> ---
>  OvmfPkg/XenPlatformPei/Fv.c               |  2 +-
>  OvmfPkg/XenPlatformPei/MemDetect.c        | 60 ++++++++++++++++++++++-
>  OvmfPkg/XenPlatformPei/Platform.c         | 11 ++++-
>  OvmfPkg/XenPlatformPei/Platform.h         |  2 +
>  OvmfPkg/XenPlatformPei/XenPlatformPei.inf |  7 +++
>  5 files changed, 78 insertions(+), 4 deletions(-)
>
> diff --git a/OvmfPkg/XenPlatformPei/Fv.c b/OvmfPkg/XenPlatformPei/Fv.c
> index 871a2c1c5b..37ecb3cfee 100644
> --- a/OvmfPkg/XenPlatformPei/Fv.c
> +++ b/OvmfPkg/XenPlatformPei/Fv.c
> @@ -37,7 +37,7 @@ PeiFvInitialization (
>    BuildMemoryAllocationHob (
>      PcdGet32 (PcdOvmfPeiMemFvBase),
>      PcdGet32 (PcdOvmfPeiMemFvSize),
> -    EfiBootServicesData
> +    mS3Supported ? EfiACPIMemoryNVS : EfiBootServicesData
>      );
>
>    //
> diff --git a/OvmfPkg/XenPlatformPei/MemDetect.c b/OvmfPkg/XenPlatformPei/MemDetect.c
> index e552e7a55e..1724a4988f 100644
> --- a/OvmfPkg/XenPlatformPei/MemDetect.c
> +++ b/OvmfPkg/XenPlatformPei/MemDetect.c
> @@ -283,6 +283,19 @@ PublishPeiMemory (
>
>    LowerMemorySize = GetSystemMemorySizeBelow4gb ();
>
> +  //
> +  // If S3 is supported, then the S3 permanent PEI memory is placed next,
> +  // downwards. Its size is primarily dictated by CpuMpPei. The formula below
> +  // is an approximation.
> +  //
> +  if (mS3Supported) {
> +    mS3AcpiReservedMemorySize = SIZE_512KB +
> +                                PcdGet32 (PcdCpuMaxLogicalProcessorNumber) *
> +                                PcdGet32 (PcdCpuApStackSize);
> +    mS3AcpiReservedMemoryBase = LowerMemorySize - mS3AcpiReservedMemorySize;
> +    LowerMemorySize           = mS3AcpiReservedMemoryBase;
> +  }
> +
>    if (mBootMode == BOOT_ON_S3_RESUME) {
>      MemoryBase = mS3AcpiReservedMemoryBase;
>      MemorySize = mS3AcpiReservedMemorySize;
> @@ -328,6 +341,51 @@ InitializeRamRegions (
>  {
>    XenPublishRamRegions ();
>
> +  if (mS3Supported && (mBootMode != BOOT_ON_S3_RESUME)) {
> +    //
> +    // This is the memory range that will be used for PEI on S3 resume
> +    //
> +    BuildMemoryAllocationHob (
> +      mS3AcpiReservedMemoryBase,
> +      mS3AcpiReservedMemorySize,
> +      EfiACPIMemoryNVS
> +      );
> +
> +    //
> +    // Cover the initial RAM area used as stack and temporary PEI heap.
> +    //
> +    // This is reserved as ACPI NVS so it can be used on S3 resume.
> +    //
> +    BuildMemoryAllocationHob (
> +      PcdGet32 (PcdOvmfSecPeiTempRamBase),
> +      PcdGet32 (PcdOvmfSecPeiTempRamSize),
> +      EfiACPIMemoryNVS
> +      );
> +
> +    //
> +    // SEC stores its table of GUIDed section handlers here.
> +    //
> +    BuildMemoryAllocationHob (
> +      PcdGet64 (PcdGuidedExtractHandlerTableAddress),
> +      PcdGet32 (PcdGuidedExtractHandlerTableSize),
> +      EfiACPIMemoryNVS
> +      );
> +
> + #ifdef MDE_CPU_X64
> +    //
> +    // Reserve the initial page tables built by the reset vector code.
> +    //
> +    // Since this memory range will be used by the Reset Vector on S3
> +    // resume, it must be reserved as ACPI NVS.
> +    //
> +    BuildMemoryAllocationHob (
> +      (EFI_PHYSICAL_ADDRESS)(UINTN)PcdGet32 (PcdOvmfSecPageTablesBase),
> +      (UINT64)(UINTN)PcdGet32 (PcdOvmfSecPageTablesSize),
> +      EfiACPIMemoryNVS
> +      );
> + #endif
> +  }
> +
>    if (mBootMode != BOOT_ON_S3_RESUME) {
>      //
>      // Reserve the lock box storage area
> @@ -346,7 +404,7 @@ InitializeRamRegions (
>      BuildMemoryAllocationHob (
>        (EFI_PHYSICAL_ADDRESS)(UINTN)PcdGet32 (PcdOvmfLockBoxStorageBase),
>        (UINT64)(UINTN)PcdGet32 (PcdOvmfLockBoxStorageSize),
> -      EfiBootServicesData
> +      mS3Supported ? EfiACPIMemoryNVS : EfiBootServicesData
>        );
>    }
>  }
> diff --git a/OvmfPkg/XenPlatformPei/Platform.c b/OvmfPkg/XenPlatformPei/Platform.c
> index c3fdf3d0b8..1b074cff33 100644
> --- a/OvmfPkg/XenPlatformPei/Platform.c
> +++ b/OvmfPkg/XenPlatformPei/Platform.c
> @@ -60,6 +60,8 @@ UINT16  mHostBridgeDevId;
>
>  EFI_BOOT_MODE  mBootMode = BOOT_WITH_FULL_CONFIGURATION;
>
> +BOOLEAN  mS3Supported = FALSE;
> +
>  VOID
>  AddIoMemoryBaseSizeHob (
>    EFI_PHYSICAL_ADDRESS  MemoryBase,
> @@ -350,6 +352,11 @@ BootModeInitialization (
>
>    if (CmosRead8 (0xF) == 0xFE) {
>      mBootMode = BOOT_ON_S3_RESUME;
> +    if (!mS3Supported) {
> +      DEBUG ((DEBUG_ERROR, "ERROR: S3 not supported\n"));
> +      ASSERT (FALSE);
> +      CpuDeadLoop ();
> +    }
>    }
>
>    CmosWrite8 (0xF, 0x00);
> @@ -463,6 +470,7 @@ InitializeXenPlatform (
>    //
>    if (QemuFwCfgS3Enabled ()) {
>      DEBUG ((DEBUG_INFO, "S3 support was detected on QEMU\n"));
> +    mS3Supported = TRUE;
>      Status = PcdSetBoolS (PcdAcpiS3Enable, TRUE);
>      ASSERT_EFI_ERROR (Status);
>    }
> @@ -481,9 +489,8 @@ InitializeXenPlatform (
>
>    InitializeRamRegions ();
>
> -  CalibrateLapicTimer ();
> -
>    if (mBootMode != BOOT_ON_S3_RESUME) {
> +    CalibrateLapicTimer ();
>      ReserveEmuVariableNvStore ();
>      PeiFvInitialization ();
>      MemMapInitialization ();
> diff --git a/OvmfPkg/XenPlatformPei/Platform.h b/OvmfPkg/XenPlatformPei/Platform.h
> index 7b4de128e7..fda66747cc 100644
> --- a/OvmfPkg/XenPlatformPei/Platform.h
> +++ b/OvmfPkg/XenPlatformPei/Platform.h
> @@ -139,4 +139,6 @@ extern UINT8  mPhysMemAddressWidth;
>
>  extern UINT16  mHostBridgeDevId;
>
> +extern BOOLEAN  mS3Supported;
> +
>  #endif // _PLATFORM_PEI_H_INCLUDED_
> diff --git a/OvmfPkg/XenPlatformPei/XenPlatformPei.inf b/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> index 20c27ff34b..a359cf60ca 100644
> --- a/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> +++ b/OvmfPkg/XenPlatformPei/XenPlatformPei.inf
> @@ -69,9 +69,13 @@
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvSize
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvBase
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvSize
> +  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPeiTempRamBase
> +  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPeiTempRamSize
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesBase
> +  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesSize
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfLockBoxStorageBase
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfLockBoxStorageSize
> +  gUefiOvmfPkgTokenSpaceGuid.PcdGuidedExtractHandlerTableSize
>    gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId
>    gUefiOvmfPkgTokenSpaceGuid.PcdPciIoBase
>    gUefiOvmfPkgTokenSpaceGuid.PcdPciIoSize
> @@ -80,6 +84,7 @@
>    gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Base
>    gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Size
>    gUefiOvmfPkgTokenSpaceGuid.PcdQ35TsegMbytes
> +  gEfiMdePkgTokenSpaceGuid.PcdGuidedExtractHandlerTableAddress
>    gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiS3Enable
>    gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize
>    gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved
> @@ -89,6 +94,8 @@
>    gEfiMdePkgTokenSpaceGuid.PcdFSBClock
>    gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy
>    gUefiCpuPkgTokenSpaceGuid.PcdCpuLocalApicBaseAddress
> +  gUefiCpuPkgTokenSpaceGuid.PcdCpuApStackSize
> +  gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber
>
>    gUefiOvmfPkgTokenSpaceGuid.PcdXenPvhStartOfDayStructPtr
>    gUefiOvmfPkgTokenSpaceGuid.PcdXenPvhStartOfDayStructPtrSize
> --
> 2.34.1
>


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 09:44:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 09:44:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596431.930320 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdp4f-00050t-CA; Wed, 06 Sep 2023 09:43:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596431.930320; Wed, 06 Sep 2023 09:43:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdp4f-00050m-8W; Wed, 06 Sep 2023 09:43:49 +0000
Received: by outflank-mailman (input) for mailman id 596431;
 Wed, 06 Sep 2023 09:43:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=KsGs=EW=redhat.com=david@srs-se1.protection.inumbo.net>)
 id 1qdp4e-00050e-GL
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 09:43:48 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id df43a516-4c99-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 11:43:46 +0200 (CEST)
Received: from mail-lf1-f71.google.com (mail-lf1-f71.google.com
 [209.85.167.71]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-581-Vvk8yWiXObaiJznqKvZhTw-1; Wed, 06 Sep 2023 05:43:41 -0400
Received: by mail-lf1-f71.google.com with SMTP id
 2adb3069b0e04-4fe55c417fcso3777057e87.0
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 02:43:41 -0700 (PDT)
Received: from ?IPV6:2003:cb:c70c:6c00:92a4:6f8:ff7e:6853?
 (p200300cbc70c6c0092a406f8ff7e6853.dip0.t-ipconnect.de.
 [2003:cb:c70c:6c00:92a4:6f8:ff7e:6853])
 by smtp.gmail.com with ESMTPSA id
 fj15-20020a05600c0c8f00b003fe2bea77ccsm19856818wmb.5.2023.09.06.02.43.39
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 06 Sep 2023 02:43:39 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: df43a516-4c99-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1693993425;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=7vefdYlMR/8ArdCua+cW/iz5J210AzDO/E5mu7BSKJE=;
	b=JlqVnKsOfM1RvABnsFPPDDMuMONyRoK6mmH32ncxuEa9ByyEHe5+6hD6j/2vvo6W1C2upE
	LE21X4eArT6X5DhI98iexhCc+skBK3zdjYZQdXFYdF2gYwPWDBapKDGXhuNNkOZuYhQnkT
	7kE1Mg4R6phxpwJlFUBpwEtQizOvNbs=
X-MC-Unique: Vvk8yWiXObaiJznqKvZhTw-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693993420; x=1694598220;
        h=content-transfer-encoding:in-reply-to:organization:from:references
         :cc:to:content-language:subject:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=7vefdYlMR/8ArdCua+cW/iz5J210AzDO/E5mu7BSKJE=;
        b=GppWKMvHBdRZ+/ZIGiQGyNA59q26AnO0c8b5cLx+yFo42JB2AniZ4IEk4bGcBWOLFN
         EPVBQIv8+FL/AK6aqbP0ONjpJj49tNztviNAcNHkwmgHzMkNhQDt5dhARjmklCRSDZXs
         IHdzc/0LjgFKEO57pkSPT5mts3OARpZwEpR3Nqf13T5kOvpzCCZenijNB6epDo9ugxtz
         6otQORlIf9c3HgDdVoRynPiKtyEwM0ZKFhZBqNh/rdLBtFONhDTiEssb3q3dhArjLdLB
         5ecJ0Qi42zGbi+ZW0/RVmaBHEBbc8YiuziWN5Ap3eAI9jTxC2NbuLhq4u/wq+5z3Q0CS
         9UcA==
X-Gm-Message-State: AOJu0YxZzPOmhkv2/wZ+mhH56RiG6o33yTIKQA8NBdiOLT/3T5O7+3rZ
	wZpGIrwr/35++Ts5xvgyNDWnykm2TC83wCRhtUqrX8qI061tvfoI0Zuk7KXuZz2QzemX8rE+xd9
	ih/WZKQZKpgXctmU/3gNTlwU3hvU=
X-Received: by 2002:a05:6512:3b95:b0:501:bee7:487b with SMTP id g21-20020a0565123b9500b00501bee7487bmr2207171lfv.11.1693993420463;
        Wed, 06 Sep 2023 02:43:40 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IG+kyCh8ge5omnOO19l81ywndCSnl3vv4iOpfU70qjIprwIBa/mvZhLPu1h129TM4P09QBp6g==
X-Received: by 2002:a05:6512:3b95:b0:501:bee7:487b with SMTP id g21-20020a0565123b9500b00501bee7487bmr2207152lfv.11.1693993420099;
        Wed, 06 Sep 2023 02:43:40 -0700 (PDT)
Message-ID: <12cb4d92-948b-d87b-8fe6-57e3bbcee248@redhat.com>
Date: Wed, 6 Sep 2023 11:43:38 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH 3/3] sysemu/xen: Allow elision of
 xen_hvm_modified_memory()
To: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= <philmd@linaro.org>,
 qemu-devel@nongnu.org
Cc: Paul Durrant <paul@xen.org>, Paolo Bonzini <pbonzini@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org,
 Anthony Perard <anthony.perard@citrix.com>,
 Daniel Henrique Barboza <dbarboza@ventanamicro.com>,
 Peter Xu <peterx@redhat.com>
References: <20230905122142.5939-1-philmd@linaro.org>
 <20230905122142.5939-4-philmd@linaro.org>
From: David Hildenbrand <david@redhat.com>
Organization: Red Hat
In-Reply-To: <20230905122142.5939-4-philmd@linaro.org>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 05.09.23 14:21, Philippe Mathieu-Daudé wrote:
> Call xen_enabled() before xen_hvm_modified_memory() to let
> the compiler elide its call.
> 
> Have xen_enabled() return a boolean to match its declaration
> in the CONFIG_XEN_IS_POSSIBLE case.
> 
> Suggested-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---

Reviewed-by: David Hildenbrand <david@redhat.com>

-- 
Cheers,

David / dhildenb



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 09:47:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 09:47:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596437.930329 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdp8f-0005wy-R1; Wed, 06 Sep 2023 09:47:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596437.930329; Wed, 06 Sep 2023 09:47:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdp8f-0005wr-OW; Wed, 06 Sep 2023 09:47:57 +0000
Received: by outflank-mailman (input) for mailman id 596437;
 Wed, 06 Sep 2023 09:47:55 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdp8d-0005wf-Rx; Wed, 06 Sep 2023 09:47:55 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdp8d-0007Sq-NO; Wed, 06 Sep 2023 09:47:55 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdp8d-0006uq-80; Wed, 06 Sep 2023 09:47:55 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdp8d-0000XA-7a; Wed, 06 Sep 2023 09:47:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Cmnsf4spjR6iTqvWEX8GYlc1sIjl9SB17Nz627pi1dE=; b=47suRZbru5x3cGZiusPP/9/4xA
	wRq4D++CiY6z4wLL7K1UQBZ4FtpUtJwSBlZmLtfLwMnQ013kjaaTTfkJtKjIgwkhSCJORc3jeeCfJ
	eW752F7xvAJIlJzG5Qop4YCh3cl3TW3MGEqsHAhm8oeq2mDA8Ry/TwvjHQVMWiRT75S0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182633-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.15-testing test] 182633: regressions - FAIL
X-Osstest-Failures:
    xen-4.15-testing:test-amd64-i386-migrupgrade:xen-install/src_host:fail:regression
    xen-4.15-testing:test-amd64-i386-migrupgrade:xen-install/dst_host:fail:regression
    xen-4.15-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:regression
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=0517763e771f2e2582bc492fafa42a86400ab957
X-Osstest-Versions-That:
    xen=da7f151a63108db5543ca53c1e902c34ae6ee825
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 09:47:55 +0000

flight 182633 xen-4.15-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182633/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-migrupgrade  10 xen-install/src_host     fail REGR. vs. 182235
 test-amd64-i386-migrupgrade  11 xen-install/dst_host     fail REGR. vs. 182235
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail REGR. vs. 182235

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182235
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182235
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182235
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182235
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182235
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182235
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182235
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182235
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182235
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182235
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182235
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182235
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  0517763e771f2e2582bc492fafa42a86400ab957
baseline version:
 xen                  da7f151a63108db5543ca53c1e902c34ae6ee825

Last test of basis   182235  2023-08-08 17:08:09 Z   28 days
Testing same since   182633  2023-09-05 12:36:47 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bertrand Marquis <bertrand.marquis@arm.com>
  Julien Grall <jgrall@amazon.com>
  Stefano Stabellini <stefano.stabellini@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit 0517763e771f2e2582bc492fafa42a86400ab957
Author: Stefano Stabellini <stefano.stabellini@amd.com>
Date:   Tue Sep 5 14:34:46 2023 +0200

    xen/arm: page: Handle cache flush of an element at the top of the address space
    
    The region that needs to be cleaned/invalidated may be at the top
    of the address space. This means that 'end' (i.e. 'p + size') will
    be 0 and therefore nothing will be cleaned/invalidated as the check
    in the loop will always be false.
    
    On Arm64, we only support we only support up to 48-bit Virtual
    address space. So this is not a concern there. However, for 32-bit,
    the mapcache is using the last 2GB of the address space. Therefore
    we may not clean/invalidate properly some pages. This could lead
    to memory corruption or data leakage (the scrubbed value may
    still sit in the cache when the guest could read directly the memory
    and therefore read the old content).
    
    Rework invalidate_dcache_va_range(), clean_dcache_va_range(),
    clean_and_invalidate_dcache_va_range() to handle a cache flush
    with an element at the top of the address space.
    
    This is CVE-2023-34321 / XSA-437.
    
    Reported-by: Julien Grall <jgrall@amazon.com>
    Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
    Signed-off-by: Julien Grall <jgrall@amazon.com>
    Acked-by: Bertrand Marquis <bertrand.marquis@arm.com>
    master commit: 9a216e92de9f9011097e4f1fb55ff67ba0a21704
    master date: 2023-09-05 14:30:08 +0200
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 10:30:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 10:30:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596454.930354 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdpo2-0006bT-Bm; Wed, 06 Sep 2023 10:30:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596454.930354; Wed, 06 Sep 2023 10:30:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdpo2-0006bM-8d; Wed, 06 Sep 2023 10:30:42 +0000
Received: by outflank-mailman (input) for mailman id 596454;
 Wed, 06 Sep 2023 10:30:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7I91=EW=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qdpo0-0006bC-V1
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 10:30:41 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on2062d.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6be20e9a-4ca0-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 12:30:39 +0200 (CEST)
Received: from SA1P222CA0147.NAMP222.PROD.OUTLOOK.COM (2603:10b6:806:3c2::11)
 by DM6PR12MB5023.namprd12.prod.outlook.com (2603:10b6:5:1b6::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 10:30:35 +0000
Received: from SA2PEPF000015C8.namprd03.prod.outlook.com
 (2603:10b6:806:3c2:cafe::17) by SA1P222CA0147.outlook.office365.com
 (2603:10b6:806:3c2::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36 via Frontend
 Transport; Wed, 6 Sep 2023 10:30:35 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 SA2PEPF000015C8.mail.protection.outlook.com (10.167.241.198) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Wed, 6 Sep 2023 10:30:34 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 6 Sep
 2023 05:30:34 -0500
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 6 Sep
 2023 05:30:34 -0500
Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by
 SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27
 via Frontend Transport; Wed, 6 Sep 2023 05:30:32 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6be20e9a-4ca0-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=j16RLfOW9C4YiaH7BB6MMRcFU42D1+U1SQcp/GDdtLxhSlRBA0SMvahdDG21hfEfx0Jb1931rci4I7vIXpPeGjphKvhZFKY9812BxxZmpZ/ya6vVobft22b+q3FPb5oAWNvC6oRsZ8sYoHWtsbr6/SPCEBe8OnwL8+1f64ZygCVPcorumcYiFyKwzTrFD9NCMwq89rVxuBZZFufVelq6aXBUmaqRQLu62373350ArOKBT5ZdOZ0zn4VmgjzwBY84ZtCc+KeX1ug1hG1roAW3VwB59kdIGclCwkNaAnuYolfHEDPmysgb7bG5KDEhwXr+aWLd/fB7bwVkLYhfdbPwfQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LdAtjaar4ROIVXVYKTPqVQwFRkWwqzCrYvtnNpQFYjI=;
 b=AU+yNmewweewP5q0iEa+Ss9UtvgctCdiBWKwdOdOdk5cZT05jJS03yzBMeb6qpIe4MEGkcrvyaM7zBFTcMly5aojAbor/xkVNXzAjJdsP7b7gmNwn6nKHhGSaRpzNjVeRMV190T5Uw6bgRaPBMWcnvsw3sBIaIU4kldkCsd3ie6++R4PpQ6JZdP/0BNz1iAj2j8IUj2+8h9Z4mcIGfvOxu9I+XFBQrvM65Vl8ORc5ZKK4HDWiaISNJ4ZS6d0VCtQE3KZL8kKmYzN9WZc71yl9cq4YAg/d3o5RUhu8obqzk+56wFbS0r2KUGloY2Tetg3104S39oWf8LYcmAb2jIrKQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LdAtjaar4ROIVXVYKTPqVQwFRkWwqzCrYvtnNpQFYjI=;
 b=Rd5vys58nk8N6XO/QArCXNBAHo+Pf105yM7W/FxzoCcrolHhEGIlwkY0YZGcu9rtw7KWfXfKHjBn0jTTyR7Vj6RpCXgldQNbs5NyTz8aa6ZJmrYB15FPWHxEdW2d7Y7n+blKU/tmguVxQmtZ+UhwPd2/HIkfuDNoZoB0UZq5iQk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Michal Orzel <michal.orzel@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Michal Orzel <michal.orzel@amd.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
	<vikram.garhwal@amd.com>
Subject: [PATCH] xen/arm: Fix printk specifiers and arguments in iomem_remove_cb()
Date: Wed, 6 Sep 2023 12:30:14 +0200
Message-ID: <20230906103014.19574-1-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SA2PEPF000015C8:EE_|DM6PR12MB5023:EE_
X-MS-Office365-Filtering-Correlation-Id: d52bd04d-ddc1-411f-5d60-08dbaec44df8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Qs7hlqg0BkaBAuOfigZyWtTLSdA74PBXArA+lXNIYv3+mF9mbX0UlsXQH03H6hS14z38quoXdJ+qfgjSA4mfLL3jngsEzu/roqA5siaF/sSfpOm9B887q1UmbbXQ4fUGsI57L6/FsvwnWTgVfgJ8JwkHQeiVKmqM8AcSMfQM7HJCsi/MQ7D7ti5uw1Vsa0F6f1WKnivD3BbM3Yh26NiDPvMGcfPzsftOSjJDuo2yX4I9dd7RwiG/m3hUftLG+wB7/mU48Hcd4yindhJ9w/YfZ1HmeC3cD/MwEaoop4FUXvCt/xjcm18Nw7j9ovnmIfGO3rsgq4e/EYBjpO6VuNcxrBbLPkvHs0DoxX/ysHd7YU8bur4woFeySCqqp0BjqtP4HyuQkYaEWcnKn88waScKC2kUc+kLo8olwVVmK5g1c5YS26o39UMDxfwbssU5E8J/5hBRHDaPAYAJ5C4dgU7TaoRvcCtTW2uXZcK1ZVE5EaQTWe3bp66xrMcTnwgNYh32y5REmodIeBv+1HyNvIS3IBpfrYn77F2Vp5m/j8F3r+W6wG5h/RCjh/udZXveGXYywiQxjmCwBwe2Kyqsm9AcMTaKXvpSsPqGj1Q6S/h0ASJW2ERcaGxfG06ePxiUdoZOuJgJgAJHIiaBdA+YUqPiE+vvCXZmTEi36p2klsrVRjzaTR5bRDseb5fxBy3E+v5w+CW8SWEJpA5IRl7a314mM8F3b7CwrNV7S4HZ4aJvf+qTa7/WZIMjxpmSS6tJcVxLULiYv9tvBOWhSioV7pYzig==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(136003)(346002)(376002)(451199024)(186009)(82310400011)(1800799009)(36840700001)(46966006)(40470700004)(2906002)(40460700003)(70586007)(44832011)(54906003)(6916009)(70206006)(316002)(41300700001)(40480700001)(8676002)(4326008)(8936002)(36756003)(5660300002)(966005)(6666004)(86362001)(426003)(336012)(47076005)(2616005)(1076003)(36860700001)(26005)(478600001)(81166007)(82740400003)(356005)(83380400001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 10:30:34.6752
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d52bd04d-ddc1-411f-5d60-08dbaec44df8
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SA2PEPF000015C8.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB5023

When building Xen for arm32 with CONFIG_DTB_OVERLAY, the following
error is printed:

common/dt-overlay.c: In function ‘iomem_remove_cb’:
././include/xen/config.h:55:24: error: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘long unsigned int’ [-Werror=format=]

Function parameters s and e (denoting MMIO region) are of type unsigned
long and indicate frame numbers and not addresses. This also means that
the arguments passed to printk() are incorrect (using PAGE_ALIGN() or
PAGE_MASK ANDed with a frame number results in unwanted output). Fix it.

Take the opportunity to switch to %pd specifier to print domain id in
a consolidated way.

Fixes: 7e5c4a8b86f1 ("xen/arm: Implement device tree node removal functionalities")
Signed-off-by: Michal Orzel <michal.orzel@amd.com>
---
After this patch (and the one for xl), we are left with one issue breaking CI:
https://gitlab.com/xen-project/patchew/xen/-/jobs/5026938514
---
 xen/common/dt-overlay.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c
index b07a6128dc99..5663a049e90a 100644
--- a/xen/common/dt-overlay.c
+++ b/xen/common/dt-overlay.c
@@ -251,10 +251,8 @@ static int iomem_remove_cb(unsigned long s, unsigned long e, void *dom,
     rc = iomem_deny_access(d, s, e);
     if ( rc )
     {
-        printk(XENLOG_ERR "Unable to remove dom%d access to"
-               " 0x%"PRIx64" - 0x%"PRIx64"\n",
-               d->domain_id,
-               s & PAGE_MASK, PAGE_ALIGN(e) - 1);
+        printk(XENLOG_ERR "Unable to remove %pd access to %#lx - %#lx\n",
+               d, s, e);
     }
     else
         *c += e - s + 1;
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 10:36:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 10:36:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596464.930371 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdpti-0007iD-2E; Wed, 06 Sep 2023 10:36:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596464.930371; Wed, 06 Sep 2023 10:36:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdpth-0007i6-V3; Wed, 06 Sep 2023 10:36:33 +0000
Received: by outflank-mailman (input) for mailman id 596464;
 Wed, 06 Sep 2023 10:36:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UMkA=EW=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qdpth-0007hc-Do
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 10:36:33 +0000
Received: from mail-lj1-x232.google.com (mail-lj1-x232.google.com
 [2a00:1450:4864:20::232])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3e586ac0-4ca1-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 12:36:31 +0200 (CEST)
Received: by mail-lj1-x232.google.com with SMTP id
 38308e7fff4ca-2bcb54226e7so9644151fa.1
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 03:36:31 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 j12-20020a2e800c000000b002b9f0b25ff6sm3341788ljg.4.2023.09.06.03.36.29
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 03:36:30 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3e586ac0-4ca1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1693996591; x=1694601391; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=C/KCsZxilrmaHr5dZv3qQjSxOdCI8ni2LFgH1WMsz3Q=;
        b=DJac3bGgrty2sCLdt8tvf+6NLKnT9LnoZLDvGYcfh7yHFsoEJmu2Njhk1T5VJEEDcM
         kFN77YkgzBT9O2OASPXbBuqK6816KZkN+VZAFA2CRJs+P/dN3/Lv5aIs2YBWILMn4elL
         DaNOBRS8NTRF8jt46pZ5GXrg9HAAC5CwXZ86JV/ANJ3MWmt0ZJX3PmDezWLKYmSl/dvl
         T8qLWe5eBgHiN/doDCd6IX6FNHuDOdjKlA3nM2EccclV5H2Z75Bc8SYkxMcKo1W2kwA8
         Pm1TtCiKvm3bvcAf79FlxAFVDggZOdC7IXLMlGtIIoUILf58+2qTU/jFnTHSO4vUYX5M
         VXVA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693996591; x=1694601391;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=C/KCsZxilrmaHr5dZv3qQjSxOdCI8ni2LFgH1WMsz3Q=;
        b=dh71DSU64woo520zu4GdLegXSn1a9oAw20hEwe3f9u6QITk3sjRKUXh3l7CopWb4cT
         xx6jMWqQLSclYe3iQ17gNvj14RO84J5o8mkHBhfmC8WVe+nxRmhAgYP0rGmlLqhX9Jkl
         47MndD0Lrb9RPLC4nGCk5r9l8b7dxr3mMXfjwgbYtATUizCtHIm7Fh0d3Nd0lCQdNswo
         oeiuoszyfGVY1yhLoCqrRrUrdnOXsyIQy5lYWevHGMq12RSfxxmpqG4G1sVYl+jWQ7G3
         /6bIMzRdcaptyAPCjqyhT2DWQ45mbJAWEznwNPjkAZqEm2zKpJZghi+p8DZVXT8vsYEq
         A5XQ==
X-Gm-Message-State: AOJu0YwB5fDR2K+U7RH51M4Vn7vi6vwS9z5AfXQhDcENskG2x6EJFJtH
	UB8TuFkhavJO8AR/MjW8/oc=
X-Google-Smtp-Source: AGHT+IGDnnlu+8iRzwtckFnxjAgRVZT8k1fAY+IFG7Sey0092Dy66qSLHhO8Rbv6kA3AM80kH8A8xw==
X-Received: by 2002:a2e:a4ba:0:b0:2b6:9e82:446 with SMTP id g26-20020a2ea4ba000000b002b69e820446mr1065372ljm.0.1693996590669;
        Wed, 06 Sep 2023 03:36:30 -0700 (PDT)
Message-ID: <8d297f28f6a92230fba950b5592fcdefe54f7f09.camel@gmail.com>
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
From: Oleksii <oleksii.kurochko@gmail.com>
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
 <jbeulich@suse.com>,  Andrew Cooper <andrew.cooper3@citrix.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, Shawn Anastasio
 <sanastasio@raptorengineering.com>, Bob Eshleman <bobbyeshleman@gmail.com>,
  Alistair Francis <alistair.francis@wdc.com>, Connor Davis
 <connojdavis@gmail.com>, Roger Pau =?ISO-8859-1?Q?Monn=E9?=
 <roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>
Date: Wed, 06 Sep 2023 13:36:29 +0300
In-Reply-To: <048CB17B-A139-4552-A51A-5696B019507B@arm.com>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
	 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
	 <3DCD5649-C172-4400-AA75-A28F5C0A106D@arm.com>
	 <e2b6ee2ecae5512a23a3e33bba0083b90a1c8831.camel@gmail.com>
	 <048CB17B-A139-4552-A51A-5696B019507B@arm.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Tue, 2023-09-05 at 14:10 +0000, Bertrand Marquis wrote:
> Hi Oleksii,
>=20
> > On 5 Sep 2023, at 15:37, Oleksii <oleksii.kurochko@gmail.com>
> > wrote:
> >=20
> > Hi Bertrand,
> >=20
> > On Mon, 2023-09-04 at 13:39 +0000, Bertrand Marquis wrote:
> > > Hi Oleksii,
> > >=20
> > > > On 1 Sep 2023, at 18:02, Oleksii Kurochko
> > > > <oleksii.kurochko@gmail.com> wrote:
> > > >=20
> > > > Some headers are shared between individual architectures or are
> > > > empty.
> > > > To avoid duplication of these headers, asm-generic is
> > > > introduced.
> > > >=20
> > > > With the following patch, an architecture uses generic headers
> > > > mentioned in the file arch/$(ARCH)/include/asm/Kbuild.
> > >=20
> > > Kbuild refers to "Kernel build" I guess.
> > > I am ok to keep that name to keep things simpler when compared to
> > > Linux scripts but it would be good to mention that in the commit
> > > message for future reference.
> > Sure. I'll add that Kbuild refers to "Kernel build"
> > >=20
> > > >=20
> > > > To use a generic header is needed to add to
> > > > arch/$(ARCH)/include/asm/Kbuild :
> > > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 generic-y +=3D <name-of-header=
-file.h>
> > > >=20
> > > > For each mentioned header in arch/$(ARCH)/include/asm/Kbuild,
> > > > kbuild will generate the necessary wrapper in
> > > > arch/$(ARCH)/include/generated/asm.
> > > >=20
> > > > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
> > > > ---
> > > > Changes in V4:
> > > > - introduce asm-generic support
> > > > - update commit message
> > > > ---
> > > > Changes in V3:
> > > > - Rename stubs dir to asm-generic
> > > > ---
> > > > Changes in V2:
> > > > - Nothing changed.
> > > > ---
> > > > xen/Makefile=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 | =
10 +++++++++-
> > > > xen/arch/arm/include/asm/Kbuild=C2=A0=C2=A0 |=C2=A0 1 +
> > > > xen/arch/ppc/include/asm/Kbuild=C2=A0=C2=A0 |=C2=A0 1 +
> > > > xen/arch/riscv/include/asm/Kbuild |=C2=A0 1 +
> > > > xen/arch/x86/include/asm/Kbuild=C2=A0=C2=A0 |=C2=A0 1 +
> > > > xen/scripts/Makefile.asm-generic=C2=A0 | 23 +++++++++++++++++++++++
> > > > 6 files changed, 36 insertions(+), 1 deletion(-)
> > > > create mode 100644 xen/arch/arm/include/asm/Kbuild
> > > > create mode 100644 xen/arch/ppc/include/asm/Kbuild
> > > > create mode 100644 xen/arch/riscv/include/asm/Kbuild
> > > > create mode 100644 xen/arch/x86/include/asm/Kbuild
> > > > create mode 100644 xen/scripts/Makefile.asm-generic
> > > >=20
> > > > diff --git a/xen/Makefile b/xen/Makefile
> > > > index f57e5a596c..698d6ddeb8 100644
> > > > --- a/xen/Makefile
> > > > +++ b/xen/Makefile
> > > > @@ -438,6 +438,7 @@ ifdef building_out_of_srctree
> > > > endif
> > > > CFLAGS +=3D -I$(srctree)/include
> > > > CFLAGS +=3D -I$(srctree)/arch/$(SRCARCH)/include
> > > > +CFLAGS +=3D -I$(srctree)/arch/$(SRCARCH)/include/generated
> > >=20
> > > Why are we generating files in the source tree ?=20
> > > Shouldn't we keep it unmodified ?
> > I think you are right.
> > I got myself confused because I do not use out-of-tree compilation
> > so
> > for me it looked like $(srctree).
> >=20
> > It would be better to use $(objtree) instead.
>=20
> Ack
>=20
> > >=20
> > > >=20
> > > > # Note that link order matters!
> > > > ALL_OBJS-y=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 :=3D common/built_in.o
> > > > @@ -580,6 +581,7 @@ _clean:
> > > > rm -f $(TARGET).efi $(TARGET).efi.map $(TARGET).efi.elf
> > > > $(TARGET).efi.stripped
> > > > rm -f asm-offsets.s arch/*/include/asm/asm-offsets.h
> > > > rm -f .banner .allconfig.tmp include/xen/compile.h
> > > > + rm -rf arch/*/include/generated
> > > >=20
> > >=20
> > > You must use the same as for CFLAGS here so $(srctree) would be
> > > needed.
> > > (or something else depending on the fix for previous comment)
> > Thanks. I'll change to the value mentioned in CFLAGS.
> >=20
> > >=20
> > > > .PHONY: _distclean
> > > > _distclean: clean
> > > > @@ -589,7 +591,7 @@ $(TARGET).gz: $(TARGET)
> > > > gzip -n -f -9 < $< > $@.new
> > > > mv $@.new $@
> > > >=20
> > > > -$(TARGET): outputmakefile FORCE
> > > > +$(TARGET): outputmakefile asm-generic FORCE
> > > > $(Q)$(MAKE) $(build)=3Dtools
> > > > $(Q)$(MAKE) $(build)=3D. include/xen/compile.h
> > > > $(Q)$(MAKE) $(build)=3Dinclude all
> > > > @@ -667,6 +669,12 @@ endif # need-sub-make
> > > > PHONY +=3D FORCE
> > > > FORCE:
> > > >=20
> > > > +# Support for using generic headers in asm-generic
> > > > +PHONY +=3D asm-generic
> > > > +asm-generic:
> > > > + $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.asm-generic \
> > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 obj=3Darch/$(SRCARCH)/include/generated/asm
> > > > +
> > > > # Declare the contents of the PHONY variable as phony.=C2=A0 We kee=
p
> > > > that
> > > > # information in a variable so we can use it in if_changed and
> > > > friends.
> > > > .PHONY: $(PHONY)
> > > > diff --git a/xen/arch/arm/include/asm/Kbuild
> > > > b/xen/arch/arm/include/asm/Kbuild
> > > > new file mode 100644
> > > > index 0000000000..a4e40e534e
> > > > --- /dev/null
> > > > +++ b/xen/arch/arm/include/asm/Kbuild
> > > > @@ -0,0 +1 @@
> > > > +# SPDX-License-Identifier: GPL-2.0-only
> > > > diff --git a/xen/arch/ppc/include/asm/Kbuild
> > > > b/xen/arch/ppc/include/asm/Kbuild
> > > > new file mode 100644
> > > > index 0000000000..a4e40e534e
> > > > --- /dev/null
> > > > +++ b/xen/arch/ppc/include/asm/Kbuild
> > > > @@ -0,0 +1 @@
> > > > +# SPDX-License-Identifier: GPL-2.0-only
> > > > diff --git a/xen/arch/riscv/include/asm/Kbuild
> > > > b/xen/arch/riscv/include/asm/Kbuild
> > > > new file mode 100644
> > > > index 0000000000..a4e40e534e
> > > > --- /dev/null
> > > > +++ b/xen/arch/riscv/include/asm/Kbuild
> > > > @@ -0,0 +1 @@
> > > > +# SPDX-License-Identifier: GPL-2.0-only
> > > > diff --git a/xen/arch/x86/include/asm/Kbuild
> > > > b/xen/arch/x86/include/asm/Kbuild
> > > > new file mode 100644
> > > > index 0000000000..a4e40e534e
> > > > --- /dev/null
> > > > +++ b/xen/arch/x86/include/asm/Kbuild
> > > > @@ -0,0 +1 @@
> > > > +# SPDX-License-Identifier: GPL-2.0-only
> > > > diff --git a/xen/scripts/Makefile.asm-generic
> > > > b/xen/scripts/Makefile.asm-generic
> > > > new file mode 100644
> > > > index 0000000000..0aac3f50b8
> > > > --- /dev/null
> > > > +++ b/xen/scripts/Makefile.asm-generic
> > > > @@ -0,0 +1,23 @@
> > > > +# SPDX-License-Identifier: GPL-2.0
> > > > +# include/asm-generic contains a lot of files that are used
> > > > +# verbatim by several architectures.
> > > > +#
> > > > +# This Makefile reads the file
> > > > arch/$(SRCARCH)/include/asm/Kbuild
> > > > +# and for each file listed in this file with generic-y creates
> > > > +# a small wrapper file in $(obj)
> > > > (arch/$(SRCARCH)/include/generated/asm)
> > > > +
> > > > +kbuild-file :=3D $(srctree)/arch/$(SRCARCH)/include/asm/Kbuild
> > > > +include $(kbuild-file)
> > > > +
> > > > +include scripts/Kbuild.include
> > > > +
> > > > +# Create output directory if not already present
> > > > +_dummy :=3D $(shell [ -d $(obj) ] || mkdir -p $(obj))
> > > > +
> > > > +quiet_cmd_wrap =3D WRAP=C2=A0=C2=A0=C2=A0 $@
> > > > +cmd_wrap =3D echo "\#include <asm-generic/$*.h>" >$@
> > > > +
> > > > +all: $(patsubst %, $(obj)/%, $(generic-y))
> > > > +
> > > > +$(obj)/%.h:
> > > > + $(call cmd,wrap)
> > >=20
> > > In fact i think your files are not generated in the srctree so
> > > this
> > > will break if you use out of tree compilation.
> > Why not? They will be generated in $obj which equal to
> > obj=3Darch/$(SRCARCH)/include/generated/asm ( in my case ).
>=20
> Right they are generated in the build tree but if it is not the same
> as srctree it will not work due to CFLAGS.
>=20
> >=20
> > Anyway I think that obj should be equal to what is mentioned in
> > CFLAGS.
>=20
> We generate other files like asm-offsets.h and it could in fact be
> that
> both srctree and build tree are already in include path.
>=20
> There is in makefile a rule already removing asm-offsets.h which is
> generated
> and this one does not use a prefix so we should follow this standard
> in fact.
>=20
> So we should not use any prefix (srctree or obj) i think.
I think you are right. Lets avoid usage of srctree/obj.


~ Oleksii


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 10:59:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 10:59:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596473.930387 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdqG7-0003Ex-UL; Wed, 06 Sep 2023 10:59:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596473.930387; Wed, 06 Sep 2023 10:59:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdqG7-0003Eq-RR; Wed, 06 Sep 2023 10:59:43 +0000
Received: by outflank-mailman (input) for mailman id 596473;
 Wed, 06 Sep 2023 10:59:43 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdqG7-0003Ed-3Y; Wed, 06 Sep 2023 10:59:43 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdqG6-0001d2-VT; Wed, 06 Sep 2023 10:59:42 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdqG6-000212-OB; Wed, 06 Sep 2023 10:59:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdqG6-000558-Nl; Wed, 06 Sep 2023 10:59:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=7OCPcNpB0YCyO4L4FSDQjIAopSo8WU/HvNxHErpkP/c=; b=YtmK8nCSU6xT1vNTV5xdPYQZgb
	3ypw4X5IKdcUMMia9HhUjklDJdvw3WI4f3vr8CywPG0oXxt09+Us1Ux2FA+kq3HytU1VWuiPKHIc1
	9dNIxqUwiu7yn0WTwPU/3d83f330YF03AtQKTiujpMrlIScKCLUAGoL5MDAncMmdgZQw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182654-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182654: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=d1e4a16f868fb1ccfa8bed8eaba5f9617ec8382d
X-Osstest-Versions-That:
    ovmf=f008890ae55929f7f17e7d2f8aff929255007d33
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 10:59:42 +0000

flight 182654 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182654/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 d1e4a16f868fb1ccfa8bed8eaba5f9617ec8382d
baseline version:
 ovmf                 f008890ae55929f7f17e7d2f8aff929255007d33

Last test of basis   182640  2023-09-05 22:41:46 Z    0 days
Testing same since   182654  2023-09-06 08:12:34 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Yin Wang <yin.wang@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   f008890ae5..d1e4a16f86  d1e4a16f868fb1ccfa8bed8eaba5f9617ec8382d -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 11:09:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 11:09:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596482.930397 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdqPX-0005ID-P9; Wed, 06 Sep 2023 11:09:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596482.930397; Wed, 06 Sep 2023 11:09:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdqPX-0005I6-MM; Wed, 06 Sep 2023 11:09:27 +0000
Received: by outflank-mailman (input) for mailman id 596482;
 Wed, 06 Sep 2023 11:09:26 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=T1xS=EW=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qdqPW-0005Hp-PF
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 11:09:26 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d641daeb-4ca5-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 13:09:24 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id B07CD4EE0737;
 Wed,  6 Sep 2023 13:09:22 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d641daeb-4ca5-11ee-9b0d-b553b5be7939
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>
Subject: [XEN PATCH v2 0/2] xen: deviate asm-only function definitions for Rule 8.4
Date: Wed,  6 Sep 2023 13:09:07 +0200
Message-Id: <cover.1693998375.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As stated in 'docs/misra/rules.rst' the community decided to deviate from Rule 8.4
whereby the definitions concern entities that are only used in asm modules.
The chosen deviation mechanism is that of textual deviations, through the use of
/* SAF-n-safe */ comments.

The deviation of variables is postponed to a future patch.

Nicola Vetrini (2):
  xen: apply deviation for Rule 8.4 (asm-only definitions)
  automation: execute SAF translation before the analysis with ECLAIR

 automation/eclair_analysis/prepare.sh | 3 +++
 docs/misra/safe.json                  | 8 ++++++++
 xen/arch/arm/cpuerrata.c              | 1 +
 xen/arch/arm/setup.c                  | 1 +
 xen/arch/arm/smpboot.c                | 1 +
 xen/arch/arm/traps.c                  | 7 +++++++
 xen/arch/x86/boot/cmdline.c           | 1 +
 xen/arch/x86/boot/reloc.c             | 1 +
 xen/arch/x86/extable.c                | 4 ++--
 xen/arch/x86/setup.c                  | 1 +
 xen/arch/x86/traps.c                  | 9 +++++++++
 xen/common/efi/boot.c                 | 5 +++--
 12 files changed, 38 insertions(+), 4 deletions(-)

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 11:09:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 11:09:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596484.930417 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdqPZ-0005my-Ff; Wed, 06 Sep 2023 11:09:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596484.930417; Wed, 06 Sep 2023 11:09:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdqPZ-0005mp-CU; Wed, 06 Sep 2023 11:09:29 +0000
Received: by outflank-mailman (input) for mailman id 596484;
 Wed, 06 Sep 2023 11:09:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=T1xS=EW=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qdqPX-0005Hp-E2
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 11:09:27 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d726772e-4ca5-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 13:09:25 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 183954EE073A;
 Wed,  6 Sep 2023 13:09:25 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d726772e-4ca5-11ee-9b0d-b553b5be7939
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>
Subject: [XEN PATCH v2 2/2] automation: execute SAF translation before the analysis with ECLAIR
Date: Wed,  6 Sep 2023 13:09:09 +0200
Message-Id: <8d4dba44bf70de642d3128cd11785ebdf1fce421.1693998375.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1693998375.git.nicola.vetrini@bugseng.com>
References: <cover.1693998375.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This allows local MISRA deviation comments to be translated into
the format recognized by ECLAIR.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
 automation/eclair_analysis/prepare.sh | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/automation/eclair_analysis/prepare.sh b/automation/eclair_analysis/prepare.sh
index 275a1a3f517c..0cac5eba00ae 100755
--- a/automation/eclair_analysis/prepare.sh
+++ b/automation/eclair_analysis/prepare.sh
@@ -38,5 +38,8 @@ fi
     cd xen
     cp "${CONFIG_FILE}" .config
     make clean
+    find . -type f -name "*.safparse" -print -delete
     make -f ${script_dir}/Makefile.prepare prepare
+    # Translate the /* SAF-n-safe */ comments into ECLAIR CBTs
+    scripts/xen-analysis.py --run-eclair --no-build --no-clean
 )
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 11:09:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 11:09:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596483.930403 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdqPY-0005N5-3O; Wed, 06 Sep 2023 11:09:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596483.930403; Wed, 06 Sep 2023 11:09:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdqPX-0005Ku-UJ; Wed, 06 Sep 2023 11:09:27 +0000
Received: by outflank-mailman (input) for mailman id 596483;
 Wed, 06 Sep 2023 11:09:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=T1xS=EW=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qdqPX-0005Hq-1g
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 11:09:27 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d6b5866e-4ca5-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 13:09:25 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 1EBB94EE0739;
 Wed,  6 Sep 2023 13:09:24 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d6b5866e-4ca5-11ee-8783-cb3800f73035
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [XEN PATCH v2 1/2] xen: apply deviation for Rule 8.4 (asm-only definitions)
Date: Wed,  6 Sep 2023 13:09:08 +0200
Message-Id: <ef301ab9843d810a389f175bd8a204f362b58e27.1693998375.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1693998375.git.nicola.vetrini@bugseng.com>
References: <cover.1693998375.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

As stated in 'docs/misra/rules.rst' the functions that are used only by
asm modules do not need to conform to MISRA C:2012 Rule 8.4.
The deviations are carried out with a SAF comment.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- Removed deviations on variables
---
 docs/misra/safe.json        | 8 ++++++++
 xen/arch/arm/cpuerrata.c    | 1 +
 xen/arch/arm/setup.c        | 1 +
 xen/arch/arm/smpboot.c      | 1 +
 xen/arch/arm/traps.c        | 7 +++++++
 xen/arch/x86/boot/cmdline.c | 1 +
 xen/arch/x86/boot/reloc.c   | 1 +
 xen/arch/x86/extable.c      | 4 ++--
 xen/arch/x86/setup.c        | 1 +
 xen/arch/x86/traps.c        | 9 +++++++++
 xen/common/efi/boot.c       | 5 +++--
 11 files changed, 35 insertions(+), 4 deletions(-)

diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index e3c8a1d8eb36..39c5c056c7d4 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -12,6 +12,14 @@
         },
         {
             "id": "SAF-1-safe",
+            "analyser": {
+                "eclair": "MC3R1.R8.4"
+            },
+            "name": "Rule 8.4: asm-only definition",
+            "text": "Functions and variables used only by asm modules do not need to have a visible declaration prior to their definition."
+        },
+        {
+            "id": "SAF-2-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/arch/arm/cpuerrata.c b/xen/arch/arm/cpuerrata.c
index fcf32892a7ef..9137958fb682 100644
--- a/xen/arch/arm/cpuerrata.c
+++ b/xen/arch/arm/cpuerrata.c
@@ -370,6 +370,7 @@ custom_param("spec-ctrl", parse_spec_ctrl);
 
 /* Arm64 only for now as for Arm32 the workaround is currently handled in C. */
 #ifdef CONFIG_ARM_64
+/* SAF-1-safe */
 void __init arm_enable_wa2_handling(const struct alt_instr *alt,
                                     const uint32_t *origptr,
                                     uint32_t *updptr, int nr_inst)
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index 44ccea03ca14..db748839d383 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -1077,6 +1077,7 @@ static bool __init is_dom0less_mode(void)
 size_t __read_mostly dcache_line_bytes;
 
 /* C entry point for boot CPU */
+/* SAF-1-safe */
 void __init start_xen(unsigned long boot_phys_offset,
                       unsigned long fdt_paddr)
 {
diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
index e107b86b7b44..6efd17eb3500 100644
--- a/xen/arch/arm/smpboot.c
+++ b/xen/arch/arm/smpboot.c
@@ -302,6 +302,7 @@ smp_prepare_cpus(void)
 }
 
 /* Boot the current CPU */
+/* SAF-1-safe */
 void start_secondary(void)
 {
     unsigned int cpuid = init_data.cpuid;
diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
index 46c9a4031b30..ce89f16404d9 100644
--- a/xen/arch/arm/traps.c
+++ b/xen/arch/arm/traps.c
@@ -161,6 +161,7 @@ void init_traps(void)
     isb();
 }
 
+/* SAF-1-safe */
 void __div0(void)
 {
     printk("Division by zero in hypervisor.\n");
@@ -1954,6 +1955,7 @@ static inline bool needs_ssbd_flip(struct vcpu *v)
  * Actions that needs to be done after entering the hypervisor from the
  * guest and before the interrupts are unmasked.
  */
+/* SAF-1-safe */
 void enter_hypervisor_from_guest_preirq(void)
 {
     struct vcpu *v = current;
@@ -1968,6 +1970,7 @@ void enter_hypervisor_from_guest_preirq(void)
  * guest and before we handle any request. Depending on the exception trap,
  * this may be called with interrupts unmasked.
  */
+/* SAF-1-safe */
 void enter_hypervisor_from_guest(void)
 {
     struct vcpu *v = current;
@@ -1996,6 +1999,7 @@ void enter_hypervisor_from_guest(void)
     vgic_sync_from_lrs(v);
 }
 
+/* SAF-1-safe */
 void do_trap_guest_sync(struct cpu_user_regs *regs)
 {
     const union hsr hsr = { .bits = regs->hsr };
@@ -2191,11 +2195,13 @@ void do_trap_guest_serror(struct cpu_user_regs *regs)
     __do_trap_serror(regs, true);
 }
 
+/* SAF-1-safe */
 void do_trap_irq(struct cpu_user_regs *regs)
 {
     gic_interrupt(regs, 0);
 }
 
+/* SAF-1-safe */
 void do_trap_fiq(struct cpu_user_regs *regs)
 {
     gic_interrupt(regs, 1);
@@ -2269,6 +2275,7 @@ static bool check_for_vcpu_work(void)
  *
  * The function will return with IRQ masked.
  */
+/* SAF-1-safe */
 void leave_hypervisor_to_guest(void)
 {
     local_irq_disable();
diff --git a/xen/arch/x86/boot/cmdline.c b/xen/arch/x86/boot/cmdline.c
index 74997703b31e..f9eee756aaed 100644
--- a/xen/arch/x86/boot/cmdline.c
+++ b/xen/arch/x86/boot/cmdline.c
@@ -340,6 +340,7 @@ static void vga_parse(const char *cmdline, early_boot_opts_t *ebo)
 }
 #endif
 
+/* SAF-1-safe */
 void __stdcall cmdline_parse_early(const char *cmdline, early_boot_opts_t *ebo)
 {
     if ( !cmdline )
diff --git a/xen/arch/x86/boot/reloc.c b/xen/arch/x86/boot/reloc.c
index e22bb974bf20..609b02cb73dc 100644
--- a/xen/arch/x86/boot/reloc.c
+++ b/xen/arch/x86/boot/reloc.c
@@ -347,6 +347,7 @@ static multiboot_info_t *mbi2_reloc(uint32_t mbi_in, uint32_t video_out)
     return mbi_out;
 }
 
+/* SAF-1-safe */
 void *__stdcall reloc(uint32_t magic, uint32_t in, uint32_t trampoline,
                       uint32_t video_info)
 {
diff --git a/xen/arch/x86/extable.c b/xen/arch/x86/extable.c
index c3771c2e3937..74b14246e9d8 100644
--- a/xen/arch/x86/extable.c
+++ b/xen/arch/x86/extable.c
@@ -194,8 +194,8 @@ static int __init cf_check stub_selftest(void)
 __initcall(stub_selftest);
 #endif
 
-unsigned long
-search_pre_exception_table(struct cpu_user_regs *regs)
+/* SAF-1-safe */
+unsigned long search_pre_exception_table(struct cpu_user_regs *regs)
 {
     unsigned long addr = regs->rip;
     unsigned long fixup = search_one_extable(
diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index 3358d9a0ff63..08ba1f95d635 100644
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -968,6 +968,7 @@ static struct domain *__init create_dom0(const module_t *image,
 /* How much of the directmap is prebuilt at compile time. */
 #define PREBUILT_MAP_LIMIT (1 << L2_PAGETABLE_SHIFT)
 
+/* SAF-1-safe */
 void __init noreturn __start_xen(unsigned long mbi_p)
 {
     const char *memmap_type = NULL;
diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index a898e1f2d731..dead728ce329 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -833,6 +833,7 @@ void fatal_trap(const struct cpu_user_regs *regs, bool show_remote)
           (regs->eflags & X86_EFLAGS_IF) ? "" : " IN INTERRUPT CONTEXT");
 }
 
+/* SAF-1-safe */
 void do_unhandled_trap(struct cpu_user_regs *regs)
 {
     unsigned int trapnr = regs->entry_vector;
@@ -920,6 +921,7 @@ static bool extable_fixup(struct cpu_user_regs *regs, bool print)
     return true;
 }
 
+/* SAF-1-safe */
 void do_trap(struct cpu_user_regs *regs)
 {
     unsigned int trapnr = regs->entry_vector;
@@ -1152,6 +1154,7 @@ void cpuid_hypervisor_leaves(const struct vcpu *v, uint32_t leaf,
     }
 }
 
+/* SAF-1-safe */
 void do_invalid_op(struct cpu_user_regs *regs)
 {
     u8 bug_insn[2];
@@ -1197,6 +1200,7 @@ void do_invalid_op(struct cpu_user_regs *regs)
     panic("FATAL TRAP: vector = %d (invalid opcode)\n", X86_EXC_UD);
 }
 
+/* SAF-1-safe */
 void do_int3(struct cpu_user_regs *regs)
 {
     struct vcpu *curr = current;
@@ -1564,6 +1568,7 @@ static int fixup_page_fault(unsigned long addr, struct cpu_user_regs *regs)
     return 0;
 }
 
+/* SAF-1-safe */
 void do_page_fault(struct cpu_user_regs *regs)
 {
     unsigned long addr;
@@ -1641,6 +1646,7 @@ void do_page_fault(struct cpu_user_regs *regs)
  * during early boot (an issue was seen once, but was most likely a hardware
  * problem).
  */
+/* SAF-1-safe */
 void __init do_early_page_fault(struct cpu_user_regs *regs)
 {
     static unsigned int __initdata stuck;
@@ -1841,6 +1847,7 @@ void trigger_nmi_continuation(void)
     apic_wait_icr_idle();
 }
 
+/* SAF-1-safe */
 void do_device_not_available(struct cpu_user_regs *regs)
 {
 #ifdef CONFIG_PV
@@ -1877,6 +1884,7 @@ void do_device_not_available(struct cpu_user_regs *regs)
 #endif
 }
 
+/* SAF-1-safe */
 void do_debug(struct cpu_user_regs *regs)
 {
     unsigned long dr6;
@@ -2002,6 +2010,7 @@ void do_debug(struct cpu_user_regs *regs)
     pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
 }
 
+/* SAF-1-safe */
 void do_entry_CP(struct cpu_user_regs *regs)
 {
     static const char errors[][10] = {
diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
index 79a654af69b0..99cb033e2a6f 100644
--- a/xen/common/efi/boot.c
+++ b/xen/common/efi/boot.c
@@ -1253,8 +1253,9 @@ static void __init efi_exit_boot(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *Syste
     efi_fw_vendor = (void *)efi_fw_vendor + DIRECTMAP_VIRT_START;
 }
 
-void EFIAPI __init noreturn
-efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
+/* SAF-1-safe */
+void EFIAPI __init noreturn efi_start(EFI_HANDLE ImageHandle,
+                                      EFI_SYSTEM_TABLE *SystemTable)
 {
     static EFI_GUID __initdata loaded_image_guid = LOADED_IMAGE_PROTOCOL;
     static EFI_GUID __initdata shim_lock_guid = SHIM_LOCK_PROTOCOL_GUID;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 11:38:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 11:38:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596509.930436 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdqrB-0002VX-Pj; Wed, 06 Sep 2023 11:38:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596509.930436; Wed, 06 Sep 2023 11:38:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdqrB-0002VQ-MY; Wed, 06 Sep 2023 11:38:01 +0000
Received: by outflank-mailman (input) for mailman id 596509;
 Wed, 06 Sep 2023 11:38:01 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UMkA=EW=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qdqrA-0002VK-Vk
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 11:38:01 +0000
Received: from mail-lf1-x12d.google.com (mail-lf1-x12d.google.com
 [2a00:1450:4864:20::12d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d424595a-4ca9-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 13:37:58 +0200 (CEST)
Received: by mail-lf1-x12d.google.com with SMTP id
 2adb3069b0e04-5009d4a4897so5996656e87.0
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 04:37:58 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 y25-20020ac255b9000000b005009c4ba3f0sm2700561lfg.72.2023.09.06.04.37.57
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 04:37:57 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d424595a-4ca9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694000278; x=1694605078; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=0b7F3w2NOK3EcAL7wqitumn9Cqn9hxHIbie5nyhoAKg=;
        b=FIhdecgGnk4rH4EtamMiE6Yhj+5WoxVSJkxeWkq0ZdgVHItt2Al2/cJmMpKuX2sfvl
         /kCQ6s5Z8UACsCBcqjTFh4CgXjVwYXG71lWaATdTwiUqCZY/AbVdZFES6Hqlt0bsSqgl
         oTN9g39SeCeupnKCw9jXSAX84pi+j9goE39jsuXDKZDtfGGgQnQ2/s6Y6MdYYU/yFe0z
         LZAMa2/ENHOlO0dZ7Wzvd+1F6+Jhk9tXk6T5ThKLTD+4+kSK5yVQnXp5SOVYlDX1ic+E
         6oxfEZ4/cDpPnW4kqt/1CB3SAesSBOZ9wkjIkUVTqbu9FcY8R20zHbjC+Fjhh8z6elT/
         nJCQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694000278; x=1694605078;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=0b7F3w2NOK3EcAL7wqitumn9Cqn9hxHIbie5nyhoAKg=;
        b=IQUJ6+VRuVeRZwY05hHDJ2xgupi5t+ksMfnTDjNYpRouWqQZEv1RmElHmwWu0ZEfUm
         Ac0d7AM789nMqH/CXxBVYaUe24U6OwvAWCUbsQ+aKCjsz/v3dcIHmAjbAcFERq1O6c7A
         DLKBFgC0ga8aHGAxjHc4u48phALPBGJ+1JWAUfU3Wf+5uZtgj2uPCCgsMgm0GPca95He
         g0hRwqyWf2MJHX7YF7uvbYMY7y/7K17z6k7s51QG7LS7CXHu9D2Xi2igymcr3bB1dnEb
         Qirl8cT8f9ixIBjhe7gE08ajnWl8SWU5/5yL0YjrWBXlYHncVvYXQv9r355BLhZ0qqen
         UYwA==
X-Gm-Message-State: AOJu0YwBJOSjK8WexaxDOHw2gSjLMzXoeuRYVm2nyapuSmWmJn1qX308
	vt9gS6UzjA3c7Md7tatPzYE=
X-Google-Smtp-Source: AGHT+IEkYoA9ck9AgB2BJbRxf+SZ0YtlawFK3dlUvaBkGRBHUDlfJF7nvnKVRIr1uzAQbn89Ugx2zQ==
X-Received: by 2002:a19:675a:0:b0:4fb:99d9:6ba2 with SMTP id e26-20020a19675a000000b004fb99d96ba2mr1689581lfj.24.1694000278011;
        Wed, 06 Sep 2023 04:37:58 -0700 (PDT)
Message-ID: <b90c2e4dc9ec84ef6487f1dd980d7858d7903e89.camel@gmail.com>
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
From: Oleksii <oleksii.kurochko@gmail.com>
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
 <jbeulich@suse.com>,  Andrew Cooper <andrew.cooper3@citrix.com>, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>, Shawn Anastasio
 <sanastasio@raptorengineering.com>, Bob Eshleman <bobbyeshleman@gmail.com>,
  Alistair Francis <alistair.francis@wdc.com>, Connor Davis
 <connojdavis@gmail.com>, Roger Pau =?ISO-8859-1?Q?Monn=E9?=
 <roger.pau@citrix.com>
Date: Wed, 06 Sep 2023 14:37:56 +0300
In-Reply-To: <3DCD5649-C172-4400-AA75-A28F5C0A106D@arm.com>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
	 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
	 <3DCD5649-C172-4400-AA75-A28F5C0A106D@arm.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

Hello Bertrand

On Mon, 2023-09-04 at 13:39 +0000, Bertrand Marquis wrote:
> > diff --git a/xen/scripts/Makefile.asm-generic
> > b/xen/scripts/Makefile.asm-generic
> > new file mode 100644
> > index 0000000000..0aac3f50b8
> > --- /dev/null
> > +++ b/xen/scripts/Makefile.asm-generic
> > @@ -0,0 +1,23 @@
> > +# SPDX-License-Identifier: GPL-2.0
> > +# include/asm-generic contains a lot of files that are used
> > +# verbatim by several architectures.
> > +#
> > +# This Makefile reads the file arch/$(SRCARCH)/include/asm/Kbuild
> > +# and for each file listed in this file with generic-y creates
> > +# a small wrapper file in $(obj)
> > (arch/$(SRCARCH)/include/generated/asm)
> > +
> > +kbuild-file :=3D $(srctree)/arch/$(SRCARCH)/include/asm/Kbuild
> > +include $(kbuild-file)
> > +
> > +include scripts/Kbuild.include
> > +
> > +# Create output directory if not already present
> > +_dummy :=3D $(shell [ -d $(obj) ] || mkdir -p $(obj))
> > +
> > +quiet_cmd_wrap =3D WRAP=C2=A0=C2=A0=C2=A0 $@
> > +cmd_wrap =3D echo "\#include <asm-generic/$*.h>" >$@
> > +
> > +all: $(patsubst %, $(obj)/%, $(generic-y))
> > +
> > +$(obj)/%.h:
> > + $(call cmd,wrap)
>=20
> In fact i think your files are not generated in the srctree so this
> will break if you use out of tree compilation.
I checked that and in both cases it generated in correct place.

First case:
$ CONTAINER_NO_PULL=3D1 CONTAINER=3Driscv64
./automation/scripts/containerize make XEN_TARGET_ARCH=3Driscv64 -C xen
build

$ ls -la xen/arch/riscv/include/generated/asm/vm_event.h=20
-rw-r--r--. 1 ok ok 34 =D0=B2=D0=B5=D1=80  6 14:32
xen/arch/riscv/include/generated/asm/vm_event.h

Second case: ( out-of-tree )
$ CONTAINER_NO_PULL=3D1 CONTAINER=3Driscv64
./automation/scripts/containerize make O=3Dxen_build
XEN_TARGET_ARCH=3Driscv64 -C xen build V=3D1

$ ls -la xen/xen_build/arch/riscv/include/generated/asm/vm_event.h=20
-rw-r--r--. 1 ok ok 34 =D0=B2=D0=B5=D1=80  6 14:34
xen/xen_build/arch/riscv/include/generated/asm/vm_event.h

Could you please clarify if there's somithing I might have overlooked?

~ Oleksii




From xen-devel-bounces@lists.xenproject.org Wed Sep 06 12:18:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 12:18:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596542.930463 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrTU-0000a7-Am; Wed, 06 Sep 2023 12:17:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596542.930463; Wed, 06 Sep 2023 12:17:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrTU-0000a0-7w; Wed, 06 Sep 2023 12:17:36 +0000
Received: by outflank-mailman (input) for mailman id 596542;
 Wed, 06 Sep 2023 12:17:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdrTS-0000Zu-WC
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 12:17:35 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2053.outbound.protection.outlook.com [40.107.7.53])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5a7e47ec-4caf-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 14:17:31 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9592.eurprd04.prod.outlook.com (2603:10a6:102:271::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 12:17:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 12:16:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5a7e47ec-4caf-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Eka45vijPt0kpDhxMnPA6E+KgA0H/TapKNCcY89tbO6QaPYB9yWBXOIhHnv99d9EB+nIHBQocg9P3Sb+qQBRaJaR+kebxkFqWsFmnZhtuXMdAR8N0vilSTHK6C7UKvMPeoYWL3vefo7Q/sgWrVhbFqHuSfvkOiXq9ic+BbU0NDV0BgsUwDU/KefTkmLT6aFJ9mMwkh1A9WnyN5kW80AqVMpFpyI84/kMgIIEPYXMoCvYCjoZHW8axZ+nSxK0K+AURdrtXQZirE1kvrXd5LvbsLzBQY1q/BbzYL1Qpje/C/o7Dgq4EAd/0+aC9XvINtgUCOOMZLP2DVbCZGCI2Kb3xw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=i7UDn+dimNEBgHL8FiTYLskYxVWJJaEICEuZRKCFwsU=;
 b=AnJij7T/nf0+gIKCvSoi8wKO84jydCk/AA8xHL+jdAJ6rnKfn2aC5Lc7o+0n4ek1TfN2YH7xsrjU4Y0zq5JjUqPOE/SHBNXaPmnx+988rOzpmk+iUQqbboPpaAjBiA5ooVAJAPaF26+SQ+LuMaqTmRyX3bD+21Xp4A9WMHF/vyaowREZ1/S7AHAc82DGbbvl/VykQb/xSc8QAnoJxv+2ufDaHh8vyXJ77A+rdrvJ2bloNXz2UaHK60xJh/JinX+Va1cutEUfqoIlE3rZl32UA2rfdfnollNqRSXbMHC45ONYLo9yPYiidkTAOGhdLnRRu+vOxQ5KIlgJACEEXXJ0rw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=i7UDn+dimNEBgHL8FiTYLskYxVWJJaEICEuZRKCFwsU=;
 b=WeLAkJa/7kHqJEvuQw8padWZWIh3ik0dQsgBjXrIFqbODABUk9/ONdcrRJt52FGf/3u4CRr9aVvD9GG317DJ/n6muWzi1ROWxpV8G36z7aF4TqCOrQSR2RX8J5/SxhU+Yo4TNxRdEHbq4YM3WFF+HFlneL2TUzfmHNqexW4KOl7+YLbbyceu/xk7F0/bazYqZpooQp7fNBOLY/ErTvbharqQMkg5qk8gTe+Ool5llK2oJnxbiG+7/Dtzxd3D8DgjEcns5JNo8Py6aT5mFrrMKVsc3hKW9NBHa3f/yIbJQFLC3yLMYVcn3HhduRTg6Woh1c35kZSpHAKZ4n9+4QBOgg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <731b436d-748c-092d-0bec-dcea5bdaed29@suse.com>
Date: Wed, 6 Sep 2023 14:16:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
Content-Language: en-US
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 Bob Eshleman <bobbyeshleman@gmail.com>,
 Alistair Francis <alistair.francis@wdc.com>,
 Connor Davis <connojdavis@gmail.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0207.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ad::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB9592:EE_
X-MS-Office365-Filtering-Correlation-Id: 35c49ec2-2f4c-46c5-64bd-08dbaed32b9a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XPOC8gcpwbMyTEHN9Xy7cbWTySM6d5SNvoNezagNxNrFLOHgZDrix4YU+PbTtL5T3sI/XzQqrGrOKKdqVpni+1cv4S8bEq4fluBpibMRhIDA8TDs8UXpf7YSgMg/xW2xRxVniG2kxDUgoLveHS639FcQd2kOSC0Aw6+kDH2hl+hnLA5W4CimIZBzrM+D8l+WAPeUGrN073bVsCt/5vJ4hCSnqFhEaFp5oY+D6pgGoLHEZ+9Rwvl7dVrDYsvHrdrj47/MKqnPRgN9Qq7Vqs+MYBniDT5ry0a26prFu3LA4oWQsSwUi5Ev0vhXerLtaXM+rvCM92AzfMNxdy59W/L3BB7LPl1rajVaNbagSkRWbtfscjtAL1t1p8ZEY/pi5BGPLvKJ4bfe/oV9b1oAP/xPAXYBgmdYOerdpfHEKEK6kvVtXiStiArlWYPRIThke01lTNMTqw/86kuhVOkDUqDPTvVSChX7KQD3FRQUjpDqPEN4S6S9uPkLtMygmTyXr4O8fbYR6gKW9vAmJW9cozqeFh8Tnt9lk8ZdtI7clf+6P0uBAVmW3AxmJi4z9jlqJ/hzEmdn6ASE2N4YqMLHRqEDncvHrXRNQgAVWaEaD/vDMt2kbi2dbYrQ41zJrrcfTjmCbznkFL0MggVsTLflnKkuPp85RC7w1GygGJ8DJbcPq3A=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(396003)(136003)(346002)(39860400002)(1800799009)(451199024)(186009)(41300700001)(7416002)(53546011)(478600001)(31696002)(86362001)(38100700002)(6666004)(2616005)(6512007)(26005)(6506007)(6486002)(2906002)(66476007)(36756003)(6916009)(54906003)(66556008)(66946007)(316002)(8936002)(5660300002)(31686004)(4326008)(8676002)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WTFiUTdja0ZIbU9NellzQWVMb2lCTXE3Q2t1eFlUaWJJSlpjNGdRUGNSWDdo?=
 =?utf-8?B?VDB2V3lFWU9oQk5Da0pEcU1mWlRXQTFpVXZYWkZzbzZjaFFLUXlUUmFWNWlm?=
 =?utf-8?B?RU5Td083MnV6Ymx2QzlwY3RzS2NuZllvNUdlUGxTMUZHQnAyeTMvK3pUMlpL?=
 =?utf-8?B?dFY1Mm5LeHBNRHY3NkJ1akFqbXlBcU45UGpwdlpyYmcxcis2QVBXZk9wbEFF?=
 =?utf-8?B?WWdmekJnTHRVaEQ3MHRSK1J5WURjK3E1QXZhRTlId1JEVDlWNHVJaUIwTzUx?=
 =?utf-8?B?TkI2TkRYTXQxWVQ4SkJuUVhBTVM0bDhVcXp1WmJ0YlNYRlIwQ0poOXNpWVE1?=
 =?utf-8?B?aWxRTFlBOVRXZHkrbzJYVEhsWDRJV0E5SGVMMysrYW5HK2hDWE0zeWc0azFG?=
 =?utf-8?B?UHBkenRXN3Fydi90dXIxL2MrK2Joa3h2aGRNWkMwaFhQWitPYnBoVXJ4WTJT?=
 =?utf-8?B?dms1WVovQStZR0p6TjVWRE5wbmJwQVpMNzQzeURUQWdjKzRLdTBJWFFkK21J?=
 =?utf-8?B?ZWhNMjlWdjZielczUmYxTGZ6UVJ3YUNYaHJsT1F4Ty83eFR3Z2FNMm1qb2N1?=
 =?utf-8?B?c2RzYUd2MldzQkZZaEJ0clhlOWs0SndWeEM0enR5T1FaTzBwdUlxMnlNVVZo?=
 =?utf-8?B?RHpxbWZLVjZVTG95MlZhRG9DMUgrV3F5SXlqTm5CV1UxVWlLWXo1RTBOanF3?=
 =?utf-8?B?US9TR2dTSUFraDFhaGdlblBUVEFvemhrYVpuQ0F0ZjY2NEJLOG1lME9DUWtD?=
 =?utf-8?B?czZ5cFRmQWlYUVA1RnZudENCYXZwOUFHT0ZFZHJHMnJNSStJS05KWEZtZXox?=
 =?utf-8?B?dXY5OHNGZHNjek03YnJrNXpXRGgzU1JpMG5xUEMwbUdsSEp2MzJHNzF5MCtj?=
 =?utf-8?B?SDNkNFBadHlZU2ZwMUlITm56NzJlNjRyQ0FDYUU3VGdPRUJwSm1LY3A3UkRh?=
 =?utf-8?B?aDlNNURDaElvcno3SkxyRlVCaEo3OGNCY0lQM2ZPeWpjUHdTa29aTFYrT2V2?=
 =?utf-8?B?RW4yekRyLzNDbis5bEtsNHpZSjI2aG8vUWZTNEs5QnlHZGVOdGc0QysxSnIx?=
 =?utf-8?B?NWtuK0NWVE4vZHVZOFpMNVlSejFJdEtRMlIxVHpJRHN3S2lHbjZUZjBPWkVh?=
 =?utf-8?B?V2IvYkVjYUZPdXJGOUg3VUFTNzYvaTU2Q2lRazRGOUxqTlU1c3p1NlBPU2JP?=
 =?utf-8?B?SENVSDhDL2F0UDVXL0dJMXYyQVhFRU9uUGp1a0liajl4SkI1NFpEYUhaU2ph?=
 =?utf-8?B?eUpsWk5HUHZNM3lDeEpEWWRENXNsK3N5YnI1TEZpSlc2VTRxV1NmVjgxak53?=
 =?utf-8?B?VHkrYXFXZnRmY011N3JiUUViNFFwaW16cmVuSklZMmYzYlpwbEV6TzE3cHhF?=
 =?utf-8?B?RW9Nb054MGF6Ylh0R2xDVHdOMHEwbGUySGFGRWJqWkpuNm9ScnpmbDcyOWVa?=
 =?utf-8?B?WklwNG01clk5SHlaYWppVDlmdkc3VXkyNjFQaXcvRmJGc3hIL2xqYWFaSlJV?=
 =?utf-8?B?WDFET3VjbzhMRkhKVkhseEFxMEtoc3VyZ2FkaDdlNEZVRGx6ZUh2Rks0UERa?=
 =?utf-8?B?bEcxVEJuR25zVHVOelc4MWRZOVJOMW9yT2xNVmNGQW9adnQzRlNaMlJNSDMw?=
 =?utf-8?B?bVBuR3JRSlh3UlVtQXR0K1JwSGZVSDZNVFJGZkFscVl3QkgxNXZ1V0ZxU2NQ?=
 =?utf-8?B?azlabHU2SHk5c3BDclBkRGUzaEVxUkxDOFp5eWV0eTlZZ1FoQUsvOG13TW9B?=
 =?utf-8?B?akJESGV3R010SnU5TjhIUDh3UFRIVDY4YkRYc3VFYUFnWHhoNG5Gcy9NQUhs?=
 =?utf-8?B?d1NlTmRWOXF0TCt4UDNTQktLWGo0a2VnS2pkWDFGN2ZEcW50TWk4TWJvSmQ3?=
 =?utf-8?B?eEZnOFREQkNYVW4vWGFNaXlsRVd0ck1VTElaZ3N0anlIS1FXa3lSa1pWTWkr?=
 =?utf-8?B?VithSlJCTitOd1p4KzY3T3FvZGdURVFSQXdwUzZKVXlBNjlHbzd6OHFaNEhF?=
 =?utf-8?B?M0l3ajA2bStrRExsc0JpY0UxVXJUVXIyWTJOcjM4dWtrRlNXZU02VTBjcDh0?=
 =?utf-8?B?aGh5T0hUb3JpZmtTemFYMmpTV0l4MHdINDk4aXV1ZzIrdWtvZEdrYUpWNk5G?=
 =?utf-8?Q?Zo6fBolGnjk/45JF4H0aQT2QL?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 35c49ec2-2f4c-46c5-64bd-08dbaed32b9a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 12:16:59.7797
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tdZR4cbvZfo8kOzSvE48aD36/cpWYPGbdNlrhcnPvcbAzd5jJp/59XmYXSsQpKmO7IfD5wulctC20LKeiuhcuA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9592

On 01.09.2023 18:02, Oleksii Kurochko wrote:
> --- /dev/null
> +++ b/xen/scripts/Makefile.asm-generic
> @@ -0,0 +1,23 @@
> +# SPDX-License-Identifier: GPL-2.0

While this is what the Linux file presently says, you still want to add
"-only", which is merely the newer name for the same thing.

> +# include/asm-generic contains a lot of files that are used
> +# verbatim by several architectures.
> +#
> +# This Makefile reads the file arch/$(SRCARCH)/include/asm/Kbuild
> +# and for each file listed in this file with generic-y creates
> +# a small wrapper file in $(obj) (arch/$(SRCARCH)/include/generated/asm)
> +
> +kbuild-file := $(srctree)/arch/$(SRCARCH)/include/asm/Kbuild
> +include $(kbuild-file)
> +
> +include scripts/Kbuild.include
> +
> +# Create output directory if not already present
> +_dummy := $(shell [ -d $(obj) ] || mkdir -p $(obj))
> +
> +quiet_cmd_wrap = WRAP    $@
> +cmd_wrap = echo "\#include <asm-generic/$*.h>" >$@
> +
> +all: $(patsubst %, $(obj)/%, $(generic-y))
> +
> +$(obj)/%.h:
> +	$(call cmd,wrap)

You've removed quite a bit of functionality, comparing with the Linux
original. May I ask why that is? What they have all makes sense to me,
and looks to be useful down the road.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 12:20:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 12:20:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596549.930477 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrWS-0002PK-Q9; Wed, 06 Sep 2023 12:20:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596549.930477; Wed, 06 Sep 2023 12:20:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrWS-0002PD-N5; Wed, 06 Sep 2023 12:20:40 +0000
Received: by outflank-mailman (input) for mailman id 596549;
 Wed, 06 Sep 2023 12:20:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z0AC=EW=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qdrWS-0002P7-3u
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 12:20:40 +0000
Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com
 [2a00:1450:4864:20::336])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ca39ffed-4caf-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 14:20:39 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-402c1407139so37079005e9.1
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 05:20:39 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 f12-20020adffccc000000b003143c9beeaesm20236502wrs.44.2023.09.06.05.20.37
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 05:20:38 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ca39ffed-4caf-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694002839; x=1694607639; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=7r6qLFbuKfuXSK53o2v5XRzXtH2c14K8H3kGtNCpkL4=;
        b=hhjUhB7dXCZntWcXTLjy3M6iOteL3mc6cBegKXOeckyaLApyJxaDLp7wpOqjzu6ZM5
         sEX4VA01QddG9G6/8BKzeMYPmCryz5CIZfKwh3e5Ps5LB2wWovTr14Hi5getxLORemwE
         AI+fcBYsbFLjG6Uk3+SOt405oGdosp0cyX19s=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694002839; x=1694607639;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=7r6qLFbuKfuXSK53o2v5XRzXtH2c14K8H3kGtNCpkL4=;
        b=E55cVpgUxS+eEKiy7RyLc++LYFCNMaqVvozjOufax3eqXDA49c/lKKEk6cMxc3N7pg
         +CeYUapJfr13HKTL6MJHL0JnRBtQqbLKp5lYywX5G8J21rDPhUQyyZ8aPIOty/6LEvV3
         y3wB9vxEWibIQjhPgxr0Bgn5YhIYBvySwruMuQz20XpSavnx7UXkwOiXU/bPKNPqKHEM
         74sm3QObZUMYjarqA8Wkxr61ut592TjdOJRcG9ZD+01ghXIwCjYYq7WNWQR4jBM/DizQ
         Wo/DXhoPu83wxquZRiLJwknXZW8viCJEukI5jZDJF9/IeW7biLQ9cBxYSw46cIlYCh73
         v4aw==
X-Gm-Message-State: AOJu0YxqUcMYw7JNIUr1WJqgZxhX+cA0JJyaWZZ4N4oIhPGnRchNkOLd
	8Wp06Azb2/iqJEneHF8AFjd0CQ==
X-Google-Smtp-Source: AGHT+IECYCmsP+8mkPKuydlPccByQeCJJkw+wp53sAR58aPQhMG5ehbgMjBGuknQB/5ci/MaH+jANQ==
X-Received: by 2002:a05:600c:11c1:b0:401:b204:3b84 with SMTP id b1-20020a05600c11c100b00401b2043b84mr2144060wmi.40.1694002838646;
        Wed, 06 Sep 2023 05:20:38 -0700 (PDT)
Date: Wed, 6 Sep 2023 13:20:37 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Michal Orzel <michal.orzel@amd.com>
Cc: xen-devel@lists.xenproject.org, Wei Liu <wl@xen.org>, jbeulich@suse.com,
	stefano.stabellini@amd.com, vikram.garhwal@amd.com
Subject: Re: [PATCH] tools/xl: Guard main_dt_overlay() with
 LIBXL_HAVE_DT_OVERLAY
Message-ID: <6097b8cf-d4a3-4b8f-8bdc-e4f69f00f785@perard>
References: <20230906083614.25315-1-michal.orzel@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230906083614.25315-1-michal.orzel@amd.com>

On Wed, Sep 06, 2023 at 10:36:14AM +0200, Michal Orzel wrote:
> main_dt_overlay() makes a call to libxl_dt_overlay() which is for now
> only compiled for Arm. This causes the build failure as reported by
> gitlab CI and OSSTEST. Fix it by guarding the function, prototype and
> entry in cmd_table[] using LIBXL_HAVE_DT_OVERLAY. This has an advantage
> over regular Arm guard so that the code will not need to be modified again
> if other architecture gain support for this feature.
> 
> Fixes: 61765a07e3d8 ("tools/xl: Add new xl command overlay for device tree overlay support")
> Reported-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>

Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 12:28:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 12:28:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596569.930487 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdreJ-00036p-Jo; Wed, 06 Sep 2023 12:28:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596569.930487; Wed, 06 Sep 2023 12:28:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdreJ-00036i-Gh; Wed, 06 Sep 2023 12:28:47 +0000
Received: by outflank-mailman (input) for mailman id 596569;
 Wed, 06 Sep 2023 12:28:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UMkA=EW=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qdreI-00036c-HW
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 12:28:46 +0000
Received: from mail-lf1-x133.google.com (mail-lf1-x133.google.com
 [2a00:1450:4864:20::133])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id eae431be-4cb0-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 14:28:43 +0200 (CEST)
Received: by mail-lf1-x133.google.com with SMTP id
 2adb3069b0e04-500cd6261fdso6223647e87.3
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 05:28:44 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 x26-20020a19e01a000000b00500d1f67be9sm2774671lfg.43.2023.09.06.05.28.42
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 05:28:43 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: eae431be-4cb0-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694003324; x=1694608124; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=o2ZD6jPwNLGcVHUurMD6kEC54tTmJqEhRDaHvLcHsz0=;
        b=MUV96ftyMIxYRKfhbkkGJdA5vaqeB/Ek1wUK10v695s5tFPWj6/+KgwI/ICjW6oKMv
         kCSj2tU7oC3QaTNaOJI+NpnBMB7TORzemzMcwuEp35ODZ6HMhdYiq5zqJroTO2Ekww54
         yWms0IaZ/kepcKXjwMxSH2ObTtGT6629Aa5iSahxNWXzeRvaAmhdul/S2wVOAEEiegcP
         CoFxTKTma/ryExGflxZqeWQ0mmekE8Bb+IP7zrY8R4AjSv2R6IFRghKKlUBYFX9hxsx3
         tKXS2wQ1yvtcIUFqwhdF44lyrYfxlD4liuAEMkl4gIw/cMB6pKDmBrrLAk5fiSz0R6gs
         2YFw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694003324; x=1694608124;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=o2ZD6jPwNLGcVHUurMD6kEC54tTmJqEhRDaHvLcHsz0=;
        b=iOHSX5Oj2lQ1MWXDZa9eOIQqqUM0wY375JXHBeZnWW9MMV+vDQsWEblsuCnNzxeleQ
         RENW7FnRSi3tm+Xtn9noBOlsQwf6sENODW29IJ/vtQhUMSBlsb18ATaHBCQHJ8l0ws9/
         QcPG6SOkV7Yrn+6ZWkFkMztrO3W5th+E+4GTeVjP/SkU15OjxOCj72OexwkQOrLcdAMX
         I2tCi6/fc6YgyKgCvkClcxFIOH6ovRfMXgIGcR+NySnzk+uQkYKDAIxgG4aWOggRZE86
         qJkupX7sVgWxFgoZSKglDB+04zxP6zQmhH3WSw4p0tL/3mzen/uPJwhT0S7qzERJrI9c
         aQwA==
X-Gm-Message-State: AOJu0Yw+7fC7SnMi1Qb1dGmcbFJBgBN8sh0u5PCMzP3De08Wa85e0wNP
	vWVcUeaodD98PiSa1oT4b2A=
X-Google-Smtp-Source: AGHT+IGKQ+0ycDAfNw05bzB60M7PJ+AwPth5mqmHRhbL/X68GMvqKa0mGPpi+BTvcARBOC4eMcmpdw==
X-Received: by 2002:a05:6512:2108:b0:500:d960:8b6d with SMTP id q8-20020a056512210800b00500d9608b6dmr2199569lfr.33.1694003323517;
        Wed, 06 Sep 2023 05:28:43 -0700 (PDT)
Message-ID: <66fcd43cbcb176f13b5fe2aad53f659feefb9667.camel@gmail.com>
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Bertrand Marquis
 <bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
  Shawn Anastasio <sanastasio@raptorengineering.com>, Bob Eshleman
 <bobbyeshleman@gmail.com>, Alistair Francis <alistair.francis@wdc.com>,
 Connor Davis <connojdavis@gmail.com>, Roger Pau =?ISO-8859-1?Q?Monn=E9?=
 <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Date: Wed, 06 Sep 2023 15:28:42 +0300
In-Reply-To: <731b436d-748c-092d-0bec-dcea5bdaed29@suse.com>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
	 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
	 <731b436d-748c-092d-0bec-dcea5bdaed29@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Wed, 2023-09-06 at 14:16 +0200, Jan Beulich wrote:
> On 01.09.2023 18:02, Oleksii Kurochko wrote:
> > --- /dev/null
> > +++ b/xen/scripts/Makefile.asm-generic
> > @@ -0,0 +1,23 @@
> > +# SPDX-License-Identifier: GPL-2.0
>=20
> While this is what the Linux file presently says, you still want to
> add
> "-only", which is merely the newer name for the same thing.
>=20
> > +# include/asm-generic contains a lot of files that are used
> > +# verbatim by several architectures.
> > +#
> > +# This Makefile reads the file arch/$(SRCARCH)/include/asm/Kbuild
> > +# and for each file listed in this file with generic-y creates
> > +# a small wrapper file in $(obj)
> > (arch/$(SRCARCH)/include/generated/asm)
> > +
> > +kbuild-file :=3D $(srctree)/arch/$(SRCARCH)/include/asm/Kbuild
> > +include $(kbuild-file)
> > +
> > +include scripts/Kbuild.include
> > +
> > +# Create output directory if not already present
> > +_dummy :=3D $(shell [ -d $(obj) ] || mkdir -p $(obj))
> > +
> > +quiet_cmd_wrap =3D WRAP=C2=A0=C2=A0=C2=A0 $@
> > +cmd_wrap =3D echo "\#include <asm-generic/$*.h>" >$@
> > +
> > +all: $(patsubst %, $(obj)/%, $(generic-y))
> > +
> > +$(obj)/%.h:
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0$(call cmd,wrap)
>=20
> You've removed quite a bit of functionality, comparing with the Linux
> original. May I ask why that is? What they have all makes sense to
> me,
> and looks to be useful down the road.
I decided to take only minimum needed now but if you think it would be
better to use the latest Linux's Makefile.asm-generic then I will
update it in the next patch version.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 12:36:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 12:36:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596576.930497 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrlq-0005DH-Ch; Wed, 06 Sep 2023 12:36:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596576.930497; Wed, 06 Sep 2023 12:36:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrlq-0005DA-8i; Wed, 06 Sep 2023 12:36:34 +0000
Received: by outflank-mailman (input) for mailman id 596576;
 Wed, 06 Sep 2023 12:36:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=T1xS=EW=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qdrlp-0005D2-Ck
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 12:36:33 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0125f9fb-4cb2-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 14:36:30 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id B01EB4EE0737;
 Wed,  6 Sep 2023 14:36:30 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0125f9fb-4cb2-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Wed, 06 Sep 2023 14:36:30 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper
 <andrew.cooper3@citrix.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v3] drivers/video: make declarations of defined
 functions available
In-Reply-To: <2dc97f01-7088-1a91-77e2-79792840b828@suse.com>
References: <d0266b549dd88d273918521ccb538592df9e58b1.1693551521.git.nicola.vetrini@bugseng.com>
 <2dc97f01-7088-1a91-77e2-79792840b828@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <35db7891e985e3376f744b8cbffdf252@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 05/09/2023 16:42, Jan Beulich wrote:
> On 01.09.2023 09:02, Nicola Vetrini wrote:
>> The declarations for 'vesa_{init,early_init,endboot}' needed by
>> 'xen/drivers/video/vesa.c' and 'fill_console_start_info' in 'vga.c'
>> are now available by moving the relative code inside 'vga.h'.
>> 
>> While moving the code, the alternative definitions are now guarded by
>> CONFIG_VGA, since it implies all previously used constants.
> 
> But such an implication doesn't mean said adjustment is correct. 
> Easiest
> would likely be to simply drop that half sentence.
> 

Maybe I didn't phrase that correctly, I'm ok with just dropping the last 
part
(it can be traced to the Kconfig anyway).

>> --- a/xen/include/xen/vga.h
>> +++ b/xen/include/xen/vga.h
>> @@ -13,6 +13,14 @@
>> 
>>  #ifdef CONFIG_VGA
>>  extern struct xen_vga_console_info vga_console_info;
>> +int fill_console_start_info(struct dom0_vga_console_info *);
>> +void vesa_init(void);
>> +void vesa_early_init(void);
>> +void vesa_endboot(bool_t keep);
> 
> Nit: Just "bool" please.
> 

Right, I missed it.

>> +#else
>> +#define vesa_early_init() ((void)0)
>> +#define vesa_endboot(x)   ((void)0)
>> +static inline void vesa_init(void) {};
> 
> So why two #define-s and one inline function? Just because it was that
> way originally doesn't mean it needs to stay that way. Then again are
> the two #define-s actually needed at all? It looks like they were added
> to vga.c just out of precaution, covering the "VGA but no VESA" case.
> Now that things are properly moved to headers (and keyed to CONFIG_VGA)
> I think we'd better omit those. They can be introduced again when we
> gain a VGA/VESA split (and a CONFIG_VESA).
> 

Ok on uniforming them to inline functions.
I don't have an opinion on the second matter. If you're otherwise okay 
with the patch
and no one objects I can drop them.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 12:38:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 12:38:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596583.930507 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrny-0005nX-Nz; Wed, 06 Sep 2023 12:38:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596583.930507; Wed, 06 Sep 2023 12:38:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrny-0005nQ-KJ; Wed, 06 Sep 2023 12:38:46 +0000
Received: by outflank-mailman (input) for mailman id 596583;
 Wed, 06 Sep 2023 12:38:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdrnw-0005nI-PC
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 12:38:44 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062a.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4ffcd6af-4cb2-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 14:38:42 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7727.eurprd04.prod.outlook.com (2603:10a6:102:e0::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 12:38:39 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 12:38:39 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4ffcd6af-4cb2-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=af4jfIzrkJyjpexgX2B42GiKuinszw98PGMCAMaE2IrQWjxgPuaE8NazpOogkh6/tWVADNGGaGDtP+AuMBR27SHQlF7cqx4pzZVE4O7KPfcY6ySGPAV9mMYjsClfd9YFv1ihiLFnqniHsvEgZOAc6948fPozZ/Os/3/FuS/xHmipDPfA88gv7W9qtIuNCD9F7FlVOWLDWPCeKM8vgRCNFUCnhFvfDhxbKHFOC2pmUJJuNsiVuepSxRMcRoHi76blk9weUL5p+gqRpAe6Yj/ydsjGSmVhi41mDbYM3ZSSz32Qoo91VXewD7AxJ7nP9PSQ7ZfSGaxEwUzRWZq6VgqkZg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AMFUiH7TPjAgom+E8xcNGRDHEluUJV3lDLbbG+jyKGw=;
 b=KESTLhnlahOWfIqc1A2u2BeVaA7JcvuKKMfAp79bYc/dZs2JEPidLS8D5kyTeW77LGnSno6MTtFK+9MbbXaRGQGnGVzZ3Tht4kvaBjjxwASljxHwREmDMvid38aMriF2DzwiWjba9mUovfiGVaH2+lWh3KZok8/CTReHXzUUDQKwTPD2/4xRkhp6VNLJEFAQe+/arKxI0Rn+6i6+pAYI1awszw45Lz25L/Ygr7RJA646xIx0vLixquO/c13LyHJd5LcOB0JEje18vFIxB1RTYTxRvKeOchu45PYSnhivP+4V+zees3ZAtoUPexJNbRR7/CuaP7FjWJSxc2S2ZjMVHA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AMFUiH7TPjAgom+E8xcNGRDHEluUJV3lDLbbG+jyKGw=;
 b=BopFtSA2E1BNd3LzRdkhqdrFPj2jNsgVtvFllfSIDjb6tIOy37xlSsb3rC8mCQs/N5bSGOW9p8C7fuwmlsj8g6cGThvf2wbZsFvGHx/ktE5mLfJ+rqQHkvDJunc0g8vXVbj3Pvyyh2jFsGCeexzfceIlbGAadg1fLc4s/m7qgLKCn0wMYTxIyrnldlkGkGXatDmA1zs1vJXuRe36m8e39fQN99Yk+JIKopEaDmiWejrEVnaqX20sA5VnnP4TsUMHFGAPY1xYuwoBRPyIHQIX409wFcqx67od4wpK/8rvVjoFaA39ZNtKP8uVPL4Oq9d9gzGyVqWQuhE6l1r6PjQmEQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <90502ece-0891-db40-325a-b325a2bdeb57@suse.com>
Date: Wed, 6 Sep 2023 14:38:36 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v3] drivers/video: make declarations of defined
 functions available
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
References: <d0266b549dd88d273918521ccb538592df9e58b1.1693551521.git.nicola.vetrini@bugseng.com>
 <2dc97f01-7088-1a91-77e2-79792840b828@suse.com>
 <35db7891e985e3376f744b8cbffdf252@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <35db7891e985e3376f744b8cbffdf252@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0021.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:14::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB7727:EE_
X-MS-Office365-Filtering-Correlation-Id: b10d43a4-a7c5-456d-ece4-08dbaed63290
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	bbb6c6Eu6xRuyWkQt9GnHz7A2IYs/7UzmjJ4LOaaByURAC/TFpajBdTM1xQ8cutOe2cm2RTt3++hc1Y4jT8/KvrLZsdCFAhKUZ6nE9UG5f8lByOhPDit/DkTpsyfNeh6fKSjQkegVw7Gg6H49ljZP62mWBIZRkSw+5xzpYXEzh4O1riWXKnYR/Ig55u5iKHmLVYSY0VkZWBhT7DKRU/3moF4jtqeSxcKqeHb0jXA9gEp2bwDETQUcWvQRVgpmsJaa2Qv3v8lA7hxwUlo1yd1BXxmJh+bRGpetpU78Kda0/ZVHnBFY90aNFwvD2TAj79m4+6P7DKZx7VGylLAd5oVex5TKiuAHEEqnZOVz0LFWtNZsc741Cj9qLWq8gSV1pPr6Z5w7CgL6tppa+04IiIPsUqpE/EqjAVtp2mjPiNqOHw5aHtXTClfqOyEFJ/s+PNqJnbJylpkACFvfa1lDzm4cdSGsWni6Q1fgwFmH3GYsBQkuTL3wkzu32XojtFbb5GdlSLqQH2cl+Qi6wrrmd7589prgVpsXETZVp5Es2oENmBsTUWN4lOKRyF7rCpFkP47iTj+W2v2l7WpTRHgCs+3L8FhRR9Hl5bTfkb1/53IyV6kvGpZTjMLyN2snoUUjL5I8W29abwS+zI7EAMEKt/E9Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(396003)(39860400002)(346002)(136003)(451199024)(1800799009)(186009)(8936002)(8676002)(4326008)(478600001)(66476007)(66556008)(66946007)(5660300002)(31686004)(7416002)(2906002)(41300700001)(6666004)(31696002)(316002)(86362001)(54906003)(6916009)(6506007)(53546011)(6486002)(6512007)(2616005)(38100700002)(26005)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SzVJUzJMdmlrZmdxbkRqWjFHTURSVXN0TEIwcUFVZ0tCRzFMZU80bmUySTJL?=
 =?utf-8?B?eWR0cGhHRXNXQWNwQzlHdUJtOGRHZXg2TFdySVhUVkZlVm1Dd3VWemNvbXBJ?=
 =?utf-8?B?Mm5KNmU0V1lWRG0vWUFWSUxlV2dRZXJrZjF6dWNGN0dLaG0xYTE5SU9KL01P?=
 =?utf-8?B?Q2JqcjVCMnZXVW8rbjVSSDJZcjB3S2l6M2tJVndYWTZTd3dqcDFsZHdqS2NO?=
 =?utf-8?B?dTRHdVQrTWRGWi9sOXI0Y0RUK1o1OW5JdEZydDViODRNZVFlWE4veUdmREtp?=
 =?utf-8?B?a1FRTzdsNGlrdjViUVFndkQ5Z0pXSlFiNS83Y01LUG9iUTFjTjRTYnFTZXl2?=
 =?utf-8?B?SWE0TWVYcnZZRVdrQWxLUzdERXZ2NzdOaGZwRnhmTFYzREozelNiK0hLOFJC?=
 =?utf-8?B?L1BRSUdhR3cybk9YVGx1S2ZBWFpsUHZxRmtLYmNIcXkzbnVodWRQN0dDblMw?=
 =?utf-8?B?TGR6VkRwbDBzNkRXQ283bHdXK1ZyaVkrWlkvV2RLaE9LUm8xUGRKd05VSUlF?=
 =?utf-8?B?aGh3SnpMaHRNNmZuK0MyU0wwMXpiTnA0NXJ0YWdPcVVVTFJlSGhrc0hNOFJG?=
 =?utf-8?B?U2x4RERLQUpEcE1XY2M4emFVWlRaWVNBK3N5M0FtQUJYYVBoVGNkYnBmbzB6?=
 =?utf-8?B?L0c1bzlDMWtnanYvRmRwVmN2bjNCVkdZaHpjSjkySzZWc1BHQk5jYWdxa2Fl?=
 =?utf-8?B?Y3pPbDRmRXdkTXl0YUdkOTlZa2s5cVRqazlWRU9vR3RtRVhVV3E1ajk4dXpa?=
 =?utf-8?B?ZC9hTlJkTFArUGhLbzZTaVZYTEhOeUJLUVo0ZkJyVmhLM1JiQy8zOS8xVzE0?=
 =?utf-8?B?a0l3TEhOQ2JvczRlUDJBTXl6L3ZVczdJZkpNSHljeWRzVTFSalU0c1BqZkor?=
 =?utf-8?B?NjhWWEZsSHpqWTlzQk1QMk83eGVJd1lGNzNuZDFOTGRtRVdncjJ4QUdOb0U5?=
 =?utf-8?B?R2cvVlZEY0w4czFjNXpRTS9HOTdldG9ibGRCRmcwU01pdXFyZHRrYjFSNjVE?=
 =?utf-8?B?QlhzcDlWUVkrVzRSc1JaVTNWcy9VL0VHYlJlcHc5Mnk3cXJQT1lJTzgyMWF2?=
 =?utf-8?B?OTZzc2llV2xMditKamFteVcwc0FldXdvUW5sOTFjN0htdmRpa0Fwd1NmK1Bw?=
 =?utf-8?B?QkVqWUs1bVk2VThDWUx5Y3pKNkVSSWpoOENNY2ZMSlNZWjdFUjk1alhmMGdD?=
 =?utf-8?B?alNldExkSVA1bTZqY0VueU9KVlZZRk9TL2dDYittMURlbUVTMlJLby9LMWF6?=
 =?utf-8?B?MGJmUTJYRnI1bGNtVjA2Q2FhSmVNZ0VQcGZRa1hHYUhuUkZkVTc5ZGFOQUk1?=
 =?utf-8?B?a2h6c2x2aXVtamZaMk1zamM0bS9kaU9VRDAyVjVKM0IrdVdTTnQ4Qlp6eks3?=
 =?utf-8?B?RDRGV2hNYW8wRU5FQUN6bHY3eTVYVjg0VlZodlFhT2NuQTcvSHJMbWIyKzk0?=
 =?utf-8?B?d2p0NkthU2NMMlZubnRnOEd5Z2dXQ3NSNks2M3E1WnpsdWRaL0NDc2RFTllL?=
 =?utf-8?B?OURoZXJSdFVMOFNESVFvTlByaGxCMU5OcUpXYUNuRnRqN0RmWUJzMHhYUXhi?=
 =?utf-8?B?MGRGeUNSSDhTSGFaM0lBbC9OS1JhWm92S1Y0WDdySDdXT0Zra2xZMTNiNEUx?=
 =?utf-8?B?Y1dhSWxGWUlJKzk1M3hncXNTWGRoL09hdHN3dGxnenJ2R2ZJNkpiUngzSU1i?=
 =?utf-8?B?eDhtMnNsSTJRZW96UzFLRkYrVXFQdUdMeU11ckYxY2hFUUlGM1V4WFFnME15?=
 =?utf-8?B?TmdMb2hiaWNIZlBaL1J6TlBHcmFmNWZqM0o3eUdlU2JnazB1QkpyVmxpZElN?=
 =?utf-8?B?dlBkZWhPZ0RJUWxoRnZRWUlHR09SYmhNYUtIR0Y3WXJTemVDek8rZE1qZmJr?=
 =?utf-8?B?MHhQR3ZqczFmU0V0RzEzcXdoazhBdnIraHMyWUtlTUpQWW5SSTZmZStxcGl2?=
 =?utf-8?B?bGhrcVpUZXN5eUxRbjgwNUt2ZEMxYjl6Ym9haUxrN2VsblFLTnBhSER6TlNj?=
 =?utf-8?B?anJLS0dnUnY5T0VoR3RTMk1LMFNWcW9TQmg3dDNuYWRYM1ZWcWlrS3FhYTRQ?=
 =?utf-8?B?RGdvYTJKVFc0TVVsNVduMGtFd0s5OGpEOEgrWnB2YWxFYlVLSS9MNmpKdDhz?=
 =?utf-8?Q?51SLAnNV1v05QtQZWPoux847r?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b10d43a4-a7c5-456d-ece4-08dbaed63290
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 12:38:39.8681
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: f6KlSHtSP+TUeI+r5YmY2apEUQjUGto1sREEFUkxTw6RT9GtHNvhRdPhint+N3NdmKHKRP7J1JafCmR2oUPlXQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7727

On 06.09.2023 14:36, Nicola Vetrini wrote:
> On 05/09/2023 16:42, Jan Beulich wrote:
>> On 01.09.2023 09:02, Nicola Vetrini wrote:
>>> +#else
>>> +#define vesa_early_init() ((void)0)
>>> +#define vesa_endboot(x)   ((void)0)
>>> +static inline void vesa_init(void) {};
>>
>> So why two #define-s and one inline function? Just because it was that
>> way originally doesn't mean it needs to stay that way. Then again are
>> the two #define-s actually needed at all? It looks like they were added
>> to vga.c just out of precaution, covering the "VGA but no VESA" case.
>> Now that things are properly moved to headers (and keyed to CONFIG_VGA)
>> I think we'd better omit those. They can be introduced again when we
>> gain a VGA/VESA split (and a CONFIG_VESA).
>>
> 
> Ok on uniforming them to inline functions.
> I don't have an opinion on the second matter. If you're otherwise okay 
> with the patch
> and no one objects I can drop them.

I am okay with the rest of the patch (as always subject to spotting
something else when looking at the next version), yes.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 12:40:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 12:40:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596588.930517 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrpk-0007QE-5I; Wed, 06 Sep 2023 12:40:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596588.930517; Wed, 06 Sep 2023 12:40:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrpk-0007Q7-2j; Wed, 06 Sep 2023 12:40:36 +0000
Received: by outflank-mailman (input) for mailman id 596588;
 Wed, 06 Sep 2023 12:40:35 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z0AC=EW=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qdrpi-0007Pz-Uy
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 12:40:34 +0000
Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com
 [2a00:1450:4864:20::333])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 920cf11f-4cb2-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 14:40:34 +0200 (CEST)
Received: by mail-wm1-x333.google.com with SMTP id
 5b1f17b1804b1-401187f8071so6187325e9.0
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 05:40:33 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 u2-20020a05600c00c200b003fe3674bb39sm19700068wmm.2.2023.09.06.05.40.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 05:40:32 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 920cf11f-4cb2-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694004033; x=1694608833; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=nYq+qJETNyES0U40k6CFMLfJigzIC0iAMdfnPipQtPk=;
        b=tZ1BzEdCvV8YbBjaPdNfdhkM39HH7eYL0BO9zBaJdr0K1LNlYWRRlJOBqlELgL9JOz
         Kje3tiQ8vwSsVqPAjdVkaPxJzWwn30PJHEYRcRYAWV2zVPnHLj/UwklLcw7mH11548CE
         NhVXYSRWqe7CHjA4SS9XZ9J5d5DNobZVeyy3U=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694004033; x=1694608833;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=nYq+qJETNyES0U40k6CFMLfJigzIC0iAMdfnPipQtPk=;
        b=EQzvNJTRjhbgiPr7T2heMjraX2g0j+iq3lXwN5rcSU0SbmAupPzW8z79wJ8YjLrqov
         FwtTNhWTXZH9HWwHOlpRjYw+Okh8ZzBZNE1L1mdDyq9HK2vnEajAsz1Nz+hsLkrqI8b1
         UF/SS1rrlAeGnFEHX4fL8yUG1O0rf0VlBF311jXztrdh2IQrkickE6q7SRmk6hAdP8pl
         TAXa0oJbJ8OQNj8gjVHrpnppKdvTHrRGrdxlo2gpzgLH35ceq7rXdsLR93oUSBgp/Rta
         AGSPUBRUAnATnESqlrO6Sogt+K4Q4opA4dtRFdZ6BgpadI5N1Voe9zCR4aB9C0mVs9cf
         eH0w==
X-Gm-Message-State: AOJu0YztV3U3EEkWXJFXbw/NS5v0coGcfd/9T8oEl/Q+tAagaI/lBoti
	W1MiJDkHxPhJOo2CSvUMtCojDA==
X-Google-Smtp-Source: AGHT+IHyhYm1dpH1PcunCsTl2K09gsPxeml81nH9rP20JQ9WLzayVNBT3R31YF7c8g2SrK01Cc/8ww==
X-Received: by 2002:a05:600c:24d3:b0:401:b307:7ba8 with SMTP id 19-20020a05600c24d300b00401b3077ba8mr2518935wmu.13.1694004032974;
        Wed, 06 Sep 2023 05:40:32 -0700 (PDT)
Date: Wed, 6 Sep 2023 13:40:31 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2] MAINTAINERS: consolidate vm-event/monitor entry
Message-ID: <09a93c71-28ed-4593-b8b4-fbb4d2a240f7@perard>
References: <e3ccc381-1fd5-b99c-e37e-5870af401dd0@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <e3ccc381-1fd5-b99c-e37e-5870af401dd0@suse.com>

On Thu, Aug 31, 2023 at 08:15:13AM +0200, Jan Beulich wrote:
> If the F: description is to be trusted, the two xen/arch/x86/hvm/
> lines were fully redundant with the earlier wildcard ones. Arch header
> files, otoh, were no longer covered by anything as of the move from
> include/asm-*/ to arch/*/include/asm/. Further also generalize (by
> folding) the x86- and Arm-specific mem_access.c entries.
> 
> Finally, again assuming the F: description can be trusted, there's no
> point listing arch/, common/, and include/ entries separately. Fold
> them all.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> -F:	xen/arch/*/monitor.c
> -F:	xen/arch/*/vm_event.c
> -F:	xen/arch/arm/mem_access.c
> -F:	xen/arch/x86/include/asm/hvm/monitor.h
> -F:	xen/arch/x86/include/asm/hvm/vm_event.h
> -F:	xen/arch/x86/mm/mem_access.c
> -F:	xen/arch/x86/hvm/monitor.c
> -F:	xen/arch/x86/hvm/vm_event.c
> -F:	xen/common/mem_access.c
> -F:	xen/common/monitor.c
> -F:	xen/common/vm_event.c
> -F:	xen/include/*/mem_access.h
> -F:	xen/include/*/monitor.h
> -F:	xen/include/*/vm_event.h
> +F:	xen/*/mem_access.[ch]
> +F:	xen/*/monitor.[ch]
> +F:	xen/*/vm_event.[ch]


Hi,

Did you mean to for example change the maintainer ship of
"xen/arch/x86/mm/mem_access.c"? Before it was:
    - VM EVENT, MEM ACCESS and MONITOR
    - X86 MEMORY MANAGEMENT
    - X86 ARCHITECTURE
And now, it's just:
    - X86 MEMORY MANAGEMENT
    - X86 ARCHITECTURE

(see ./scripts/get_maintainer.pl --sections -f xen/arch/x86/mm/mem_access.c)

Also, now "xen/include/xen/monitor.h" is only "THE REST".

On the other hand, there's no change for "xen/common/monitor.c", so the
pattern works for this particular file.

Cheers,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 12:40:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 12:40:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596589.930527 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrpm-0007hy-D8; Wed, 06 Sep 2023 12:40:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596589.930527; Wed, 06 Sep 2023 12:40:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrpm-0007hp-AC; Wed, 06 Sep 2023 12:40:38 +0000
Received: by outflank-mailman (input) for mailman id 596589;
 Wed, 06 Sep 2023 12:40:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdrpk-0007at-SU
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 12:40:36 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062b.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 92c83b9f-4cb2-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 14:40:35 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7727.eurprd04.prod.outlook.com (2603:10a6:102:e0::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 12:40:33 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 12:40:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 92c83b9f-4cb2-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JECIs4YSO0ihU1yyDnef2cTR084TXD3qpeNnAIrYocQe5Ea9YZupuLX4p9ck3yQgL7N52rCyITHzUlcJJ3UjlRJQYmQAT/agPMDquIQqFiAk7iRF3T31j8wrJitBfocSTcJJvRe5JXHrpoX5csaCdf9iNueCzcBvxLcrEfeZA70cJLipVEmP+P/nAmjsmTVInBo28oFwAF/D67e5P1ce0H2MCFrgzAWE91BgW9qByEW2d3bhvNK/yty28ywx5S/wM5FNbIZGhFm9WQkoluMdEDhewsTMphCLbiOuS9K46d5xhVhIt1HofQ37y10PNrI6UnEP65jp6pZkJLPMQvnVGw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fd9Rl61b+F4wAgMH6fIQoygRcwqItCzl+5KoNESXVDc=;
 b=ZNmsrSZgkiRoqGR+YnTXaDttR5JmlqLgYNuw0AOUVlTTfC7hIgltHNb1vi2PXpOeLLS27Q55DAHKw1BzMWs5mDOtQEFX7f1QKdJK8uSFWpEAGllLqXqUpuJYJO9XBy+diS53ayA30p3TKe8mVEIHioRFBtoORQjLVCfPnBrkONjQ5dm7q8jVYo132OFV9mxYDoHQC4zBeSU2ZakTnCMO8OrAnJjCV1oUI1KHI/m+wobvMXRizQzN5Zz8K0ElMFuLTn+9LSD0AODK9RDSucSGEb7MoyLLQBPT3DEn2dvCk53paE43fNelv7KlUZRGiXBSmC51LboeSR81zXvNubaeVw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fd9Rl61b+F4wAgMH6fIQoygRcwqItCzl+5KoNESXVDc=;
 b=EbMez13SytnjSvC4CrMYjD4TxTzFGNRMsvtfikw5h2Gqw33DjhnWn8mpXR7/IPq7zux+sXPaykEiv0WcV0kwHPJMnKACP+cXV+08dCs/I67AhrjxeMG6GnZvPk3EqWURpHKj/dD2X/HDkBrVbW4fewIAPkxdjSJuosCAaNWrPkc9wdWD3I6DwnAelrGEW8HCWo242nlHMMu9Zrl4Dyjzwkwrxmj3LeK11HIV3T6XncKfJyxWx+cJv4YQQ2slvPELTRe71gQ9eUqT1W7GwYM//mAy+flS0SNHu8+ttmuarS6zpo7YLBzW4moLeD2XzbdrF4DG2zbA9AVgfzZZ+q51hg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <627a5863-0ced-956d-f76a-0547cd46c2bd@suse.com>
Date: Wed, 6 Sep 2023 14:40:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
Content-Language: en-US
To: Oleksii <oleksii.kurochko@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 Bob Eshleman <bobbyeshleman@gmail.com>,
 Alistair Francis <alistair.francis@wdc.com>,
 Connor Davis <connojdavis@gmail.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
 <731b436d-748c-092d-0bec-dcea5bdaed29@suse.com>
 <66fcd43cbcb176f13b5fe2aad53f659feefb9667.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <66fcd43cbcb176f13b5fe2aad53f659feefb9667.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0112.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a8::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB7727:EE_
X-MS-Office365-Filtering-Correlation-Id: e4d35e82-117b-418c-8011-08dbaed675a5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lkdp5CSK54P8PVloBAK/l7XzALDGg99tpNp2B462mfR/bxvedEqJ32sdKsZSd9ZWwMxv3gTjOoavkCxsPowaEI5GtmxwErG+Mdq2EHqnyRGjIXRlTyFDOfKkMnQYOen54eYaV5WsDUyfqJ/lx8ocSGB4rACZ8OOrRdgufNBAB3iEivqm6OagNouoyfYR2oQbMkdNWhj9iHzHL4licMea/bO0Qrdd7ZbU0Q/GVjZ3+yUTE+SwfQTLvE5mQiJGdKjugMAON/dH6YxVTXNGL/U31jq8zbKvJi8bq0Qwz8zd9jB8qYWxAMpoBSzwfEag9D0xc9FUo56hJspY8M5dl7iwGthu3j659yrxw6cFue78ysKLDzM9mDDAlm5ED2wlVbBqy8e43F+yfvoaNEwvigBzlMCqzhlqd72nHepvETIvqBkcaKS1APKFvArEYwxphwbscB8RESkRj6GP3a+qvwUy86b7Y8qmimzR1R1xhXzGG/dMCnb/eJpOUAWQa0PbuCGr8fq0UkpKr0zWKgLN6J/ejEaQvqQ0F4wTEwarFHnhzPwWgU81FObFSGf/DxmzipsuxbW7rwFuXmJgb/zSNB0C2I6oScy3VRhfXC2p+tHl+6MtMB4Qwux+mvCqE0tek+tySK70oGaI8txLAS01EL84c4Koi+PnKaQYwGyg0w+VYLs=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(396003)(39860400002)(346002)(136003)(451199024)(1800799009)(186009)(8936002)(8676002)(4326008)(478600001)(66476007)(66556008)(66946007)(5660300002)(83380400001)(31686004)(7416002)(2906002)(41300700001)(6666004)(31696002)(316002)(86362001)(54906003)(6916009)(6506007)(53546011)(6486002)(6512007)(2616005)(38100700002)(26005)(36756003)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UjkzZ1l3ZHl5aHdOTjVwcXAvVUpnbnk2V1N5Q0JxNXBPNXJHMEFXTStPaUFl?=
 =?utf-8?B?ZXc4ZjU2djhTRnRXay9wYlRRMUpNZkcyYithd0l5WWR3VVI5Q2lQaHF4WGs3?=
 =?utf-8?B?cWxrRGNDMStHcTZKTzRFblVkeHdrN2VMb1BpdndNMEo1d1hzUmU3Y3h2V2FR?=
 =?utf-8?B?dEhGVjF1NHN0SzVJNEQwWGtmZWpidVd1UlZCYjd2ck8ySHo1d2Zvb0xNaXc5?=
 =?utf-8?B?Q210eWVaTWNIM0c2VW5Vby9IWDd0eGRVZFpQM21HeWxFN0xYeEd1RDIwUWFv?=
 =?utf-8?B?VGFWTVpPVnRhclZwUlVrRzdNU3dEOUxSK0pDUlI3NjdPN3pHMnZ3Y1F4aDho?=
 =?utf-8?B?V1NIaDZxc2ErMHpSUy9admZlK2J3TS9VYldHV1BwRGJOYzY5bTRJQ0ZzWWhN?=
 =?utf-8?B?ekY5b1JFRDk0MU5ZOWZqK0pKaHRjWEQrS3BYL29kK055NGlpb2IvUkNFNTZq?=
 =?utf-8?B?MmhUeVB0TXUzTGdxWENkL0JtSGNvQTJlZmtDdVpUUmIyb3NPbStKL05HNXAx?=
 =?utf-8?B?WSsyU2gvU3JrZ0NkVVBzaDRmMXlZb3kwNmt6Rmtkb3BuY0gzQXV4NVZIU3B4?=
 =?utf-8?B?Tm9iUm03QmJ5WXdySHRHMENMNUVrc1l4SXZucWQ4UlVjQ1dsMlFFaC9Pd3ZI?=
 =?utf-8?B?UHZ6RXc5QmlsUE5sM2E4ZS80dlMwazY3NHhCMUJVc1VlaE1aZWo2b3gyRDN2?=
 =?utf-8?B?SXNXMlhpc0JnN3hPTmR0WHc2K3VUbVplZzJnMHRWWGtNV1B2cmJYaVk3Ungv?=
 =?utf-8?B?QVl5NUVnbm1QcmNDZFhQbXJZS1BVMVIwYVRCOW10eFY5aUUzaTJHTGFGK1dD?=
 =?utf-8?B?NUowTTdXUlVwR0dGTkp4Wml5d1k0Z3pzYkRRSWhoMVdKdGg2V1QrSDUxT09H?=
 =?utf-8?B?T0dXNHlnR1dlV1pRYUJpTDNGdVRZWCtaaUo2UENiQUUyYWVpb1FUclNrd3Vn?=
 =?utf-8?B?cnBxNTJiRU4wZitnSGVBclRyZVBoemJsak9xU05kbGZkdDZ0ZFVmQ0ZqRDJP?=
 =?utf-8?B?OCtyVXhGczdGWURpYXpuQlpjUU1jSVBLbzZOYlBlNkZZeEEwSU84WU5ta1pL?=
 =?utf-8?B?Vm9rTG9mSWIwaFVmMUtqdnRnd1k5dzhLZHhpVUZWeGIwY0tIcE5Rdi9mcm5y?=
 =?utf-8?B?dTlxU3drWjQ0OWs5MFpSN20rbkZ5aUF6NkxpQTZKRkp4K2xEaFhpSXY4ZFI2?=
 =?utf-8?B?VVdpbm01bVJsWnFuSkFLcTBCVWFMTHVXN0g0cWtHUDdjTjRuYXJRMWI0c3NK?=
 =?utf-8?B?RUxsRzFQRkhsWXhncWwva0Fta0hUeTNLcXJxU2JNZWx2VThDVGM5amhIZ0l2?=
 =?utf-8?B?YnZONzkrUFQwdUlRVG9aTS9LM25UM1FvQkMvZ2tSVDZKV1E3RTNjZGdMQ0Zx?=
 =?utf-8?B?dkpzbnRoM2h5OVZlbnVsSW9pdk5DSzNLVEdIOE84WDY5cG85T3pCckc0WU9P?=
 =?utf-8?B?S3cyV2FCdnNYZ3hGcVZPSitXL2FjS2h4eFl2ZWg2TTNyczdZWHYvSEFsU2k0?=
 =?utf-8?B?VTJIQzJ4d2pQUERDRWw3MnZWUUdoL2d6azVhYjVrcGxjK25rUlZXQ2JCQytW?=
 =?utf-8?B?RlAwdUF1bTdWTWxYcTcwbi9kZzdaYmU2WW0zNnRaN0JycHRYdWVScnhpWWVi?=
 =?utf-8?B?QUVFbXNaSzVRWGFaNzhoang1ZExSZDVZWkJvaUkxenNndFp3QzBpS2RsVlpn?=
 =?utf-8?B?S3RacTR5Y0FzN1h5YjhhRTRDOUZDYUlVcGR0b29seVIzWjNSc1MwZnlKYnFp?=
 =?utf-8?B?ZGhKMG5NOHd0dSt6N0NEaEYrMkhCSHF5SjFUSTBhVUl1WGYyTENuRDg1bFFk?=
 =?utf-8?B?RUFpOW9IMjI5VzljMUwza24yYmowV1ZsNUhDTG92L2VxVzlIc3F1M25PVHZr?=
 =?utf-8?B?T0hhdTRWYVVNdFJqNUdYc1p0ai9YWjFBazBqTDA2c0lzOE5xeDRUMWV5UVNX?=
 =?utf-8?B?NE0vQllMd1FpbjdZUFBLMjQ3anNLQ0RTeVpyeHJYU09iQndUOFBGRFFZRjB0?=
 =?utf-8?B?QWNxcDVNUmpRaDdNS2NJWVpTL3NjWE1SN2ZsQ1NUYWJEc2lpZEpsbGtkSFY1?=
 =?utf-8?B?QTY0RTZMY0tiUHlSbkxaclBQMUVLRTIxcTh1OUs2OEh6L2cvVUQ3K3lDS1o1?=
 =?utf-8?Q?2ids0Vyh3jG24oOvOtn7La62F?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e4d35e82-117b-418c-8011-08dbaed675a5
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 12:40:32.3994
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: njV58toZj3xNKe8hUngeLe3/3nrQhYPZVQyr9hVULCEC9jGUcyysO442ytw5LF8t0HorPgVjY4d6Wm8qKjHvAQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7727

On 06.09.2023 14:28, Oleksii wrote:
> On Wed, 2023-09-06 at 14:16 +0200, Jan Beulich wrote:
>> On 01.09.2023 18:02, Oleksii Kurochko wrote:
>>> --- /dev/null
>>> +++ b/xen/scripts/Makefile.asm-generic
>>> @@ -0,0 +1,23 @@
>>> +# SPDX-License-Identifier: GPL-2.0
>>
>> While this is what the Linux file presently says, you still want to
>> add
>> "-only", which is merely the newer name for the same thing.
>>
>>> +# include/asm-generic contains a lot of files that are used
>>> +# verbatim by several architectures.
>>> +#
>>> +# This Makefile reads the file arch/$(SRCARCH)/include/asm/Kbuild
>>> +# and for each file listed in this file with generic-y creates
>>> +# a small wrapper file in $(obj)
>>> (arch/$(SRCARCH)/include/generated/asm)
>>> +
>>> +kbuild-file := $(srctree)/arch/$(SRCARCH)/include/asm/Kbuild
>>> +include $(kbuild-file)
>>> +
>>> +include scripts/Kbuild.include
>>> +
>>> +# Create output directory if not already present
>>> +_dummy := $(shell [ -d $(obj) ] || mkdir -p $(obj))
>>> +
>>> +quiet_cmd_wrap = WRAP    $@
>>> +cmd_wrap = echo "\#include <asm-generic/$*.h>" >$@
>>> +
>>> +all: $(patsubst %, $(obj)/%, $(generic-y))
>>> +
>>> +$(obj)/%.h:
>>> +       $(call cmd,wrap)
>>
>> You've removed quite a bit of functionality, comparing with the Linux
>> original. May I ask why that is? What they have all makes sense to
>> me,
>> and looks to be useful down the road.
> I decided to take only minimum needed now but if you think it would be
> better to use the latest Linux's Makefile.asm-generic then I will
> update it in the next patch version.

Unless there are things getting in the way, I indeed think it would be
better to take the whole thing largely verbatim (a few edits are
unavoidable afaict).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 12:50:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 12:50:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596604.930536 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrzK-0001bP-AI; Wed, 06 Sep 2023 12:50:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596604.930536; Wed, 06 Sep 2023 12:50:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdrzK-0001bI-7h; Wed, 06 Sep 2023 12:50:30 +0000
Received: by outflank-mailman (input) for mailman id 596604;
 Wed, 06 Sep 2023 12:50:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qdrzJ-0001bB-5K
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 12:50:29 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2062a.outbound.protection.outlook.com
 [2a01:111:f400:fe16::62a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f39bab94-4cb3-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 14:50:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8486.eurprd04.prod.outlook.com (2603:10a6:20b:419::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 12:50:25 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 12:50:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f39bab94-4cb3-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NYBkojvjnZqKTjaX+m/S03A/iiwlbbCfqBavwEiPXKERg1Lc7hBDv35c2dY0dhKsvKyBA4PANOR6a3UXe08lyjjc42r/+EeWCTF/oCiIcytePQC94zlVI26jiC7Qxq7Fd43bbwfz6tiolqb/xQPU1h4xDJmHUo+qAc4rhQL0wCJY44MQZiuzLcQaWA3KN0BVESACiWxeudxzbfqTrSkbwt2oyp7wyIYiQJMiIldX9vW1U4oxDZyB7D1W8rr5IWSIky2SrocXf4jjEFP3FFyhVrMh9HouPpkVXA/ngDJnrAh6xOMfbRahFPNNwnzHttvBMaPjp8ZFyUrJ6pYoXHitTA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=J7DqZKBsBFGBHGjWHDGWefcFFNcvUMNSS/H7pv+WaNo=;
 b=KrEuSBbIgpXQC8HX1zfiv6z/JnUDZwr7xWzc2A/LVhCmtJ61aGbpc6IFJY3zkzbqfsFHsWx72vSjlp0cWsfhRCIYzIv+iwgacEkZWszoE9z/eLSiVmRaQibSFgNH69NLNKLgrqPfQ+4N3//s6n1BdsXp9t1tv3jz3gQpqnwrN66ZVzqEz1FswEezAVk2VoUSVukZToJrkb91AA9kifYpv22P0fUqEU8eIv6GubUOQ2tNuDZN6cjT3g5Zw4W+UlAT8gn26ZGwcE26uKC3DLSwoDllWtv4OxpIyyQzsEqXkya1OxqfL9C/xIG1hwHFEybDfxyWQCQymyLTPrlxvGis/g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=J7DqZKBsBFGBHGjWHDGWefcFFNcvUMNSS/H7pv+WaNo=;
 b=XKvhAdvh8yb89/8dj4OeQCARWnvz4WLwI7upRdKiyPuGh45neft0zCHyQd3FvYyPc0lMlGD+boWboJZ+/CirKTQ1p1KPzS7PiuOvea1dOQ/zygTwKM9nnpXLP7pVVweIItuPDBFGRI3jiSZcKRsGV5CMnQwDZmAY5uzfrolBBKniiUz1Z8Kgx4jnUGCmuQxmbWIPh9815bOnqIte2F1lM5/yO9Z8kJ4YrXKKsQh9y9K86gUArZcK0dobPxIGEyYlwXdCSSdkozWOHp2sts6Mr1eoSVJBg4CyXMtrDhTgQlt/ErPu/Ztc2FvYqeVRUnH3qFoxNG+7dUtayjubHW+elQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9a42f222-7803-aab6-99c2-6919fb1cc4c3@suse.com>
Date: Wed, 6 Sep 2023 14:50:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v2] MAINTAINERS: consolidate vm-event/monitor entry
Content-Language: en-US
To: Anthony PERARD <anthony.perard@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <e3ccc381-1fd5-b99c-e37e-5870af401dd0@suse.com>
 <09a93c71-28ed-4593-b8b4-fbb4d2a240f7@perard>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <09a93c71-28ed-4593-b8b4-fbb4d2a240f7@perard>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0041.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:92::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8486:EE_
X-MS-Office365-Filtering-Correlation-Id: 4ff5cf61-941b-41c3-ad06-08dbaed7d6b1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	CoZQjLLTXwKSBf6/mKmZtbGNDeJpghlorblMs+RskI0ESt/Jhj2910qqnzdk3+ZXiZo4v9VwcouUWPMWJhUJk1PW/Lkljwq0lAxLSsGGe5w8a4BzrqI6Tp0p9NvZS5bx1vM87Kc7M1Qkz4251PcLXdpAjAXydFKEq2XXaHBIYbbo1lNAQLB/BNOosySJmMwUw+7tA0MCurZdByDMSCVl9Mf/O82sHMJNNgEeWFiJUCaEJcvG5xbiCyFtdLFwNKzl3Nfis3Cyxs3qkkkFr/LRtWhSrLOIqOAoDLZ3Xjh919Z14t2ljbBua/mgUxspQWlASdGYNWGoNkf10geuYLpX/xLAKZlb/kMqCI5DGMSzCdvE4yuWwZ27o11pe63ETORW7pFv7F7sMyfN3TOD8FrPKHJTd6KEPynFw/R1csOlrGh/PpxGDVQaVcgCWd0Q3Mhc6A5Wm2sBXQun5Kf+6VRZfk7ZgJ91RiBIy1x4rSuPoekIzWpCDeRd8tpdG3CNVtNaQfP17O/i6HVPCUjS/xpx43/nKyCZwXKdMlEyvJeEvVTzJBCFgj6vrIDYu28kdl6qp6NLj/IfQaFTZ6VZB0SI1wMKKnAIGs1pEZe6ymkxeTbxzC/GPx/e8yByO8d84s+eCGGlGG2Lf3iTieGbZCbePw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(396003)(136003)(346002)(366004)(1800799009)(186009)(451199024)(2906002)(83380400001)(6506007)(6486002)(66476007)(66556008)(54906003)(6916009)(316002)(53546011)(66946007)(26005)(478600001)(6666004)(5660300002)(41300700001)(8676002)(8936002)(2616005)(4326008)(6512007)(36756003)(86362001)(31696002)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NFphZFU5bDl4Q1VKbkt0V25yajFXTzd6QUIwRC9vbEtMK0tmd0pCYVcvRE9a?=
 =?utf-8?B?RVZmWmg1alVERHZ6MTFIbGMzZmFXZHh3c1g1dkxNaEpkWVBPSmJ4UXVqcFho?=
 =?utf-8?B?TUt1b1B1K3BNVC8yQTJsQ3F2WEpBUnpMUElnbm5QS2o0bnEvbTFnVHgySzM5?=
 =?utf-8?B?Zko0VzlvNGNhbC9vaFExVG9ZVFlZNTBhY001NzRVYTdRbkMraEFCN0FMQjFm?=
 =?utf-8?B?OVF1bGZ0ZE1zYTVOQitsbXpKaEw0RlZzdjVQaWQ3OWNEY3BsTXI1ZmlBd09l?=
 =?utf-8?B?UUZRdUpGTWJTdFgrZWo0VjZ3eS9kc0tISGI4V3poUEl1d1JXMSsvczc3ekpN?=
 =?utf-8?B?Rnp1WGQzejREaHhLUmtGQUpHUlk2d3djTVlhS1d3QlYwRFJscUlLdnErMWFk?=
 =?utf-8?B?bDVjTXRnVkpieXhJRmt5TEFwQTBiUkdrNFNqSGJ3dnhVMFZrcWJKQ0gxdWdk?=
 =?utf-8?B?WTFBRWRJM0lMY3ovWktXWHprVGVTdXFLS3RBQnZVbTJZZGRRUGRWci9sN1NI?=
 =?utf-8?B?MHFIU1ozazR6UnEvSWtBbHE3c0d2V0F3anRHWEMwYS9zanlaYkhWbWZ6dGdK?=
 =?utf-8?B?NGdsVTJITDljV05hQkdUdVQ1V2JSME53TjFwc1A0di9PT0gzeExTeWxHYllB?=
 =?utf-8?B?QXZSSmdlc1FaZTJCREw4OE15ZXRLVVpDcFFZVDJLZE1hU3UrL3pJYTJZVDNx?=
 =?utf-8?B?bUEwTFZiNVYvcURVWHlLL0hLNG1iN0hJOUpyNjFkOUlGQUE4dnN6WkNMK1hu?=
 =?utf-8?B?WkZiUi9aczJzVjRhU1FPTlE1R0lDQ1NwRDQxL2taVCtvWEdxWUMwNnU3UTha?=
 =?utf-8?B?TmhqK3MwdDNIV2VPRzZkQ2Y2S0pTUWRaenVaaVVDbE1JZnhjcEFHUERITEtk?=
 =?utf-8?B?TitBVHBiNWJxbTVrZzM4WFdIRlFXOVRxUjRaS0RtU1ZZV2crV0lITXNQYUt4?=
 =?utf-8?B?cUhRc1J6VjlkVWVFcjk4cHFiQ3hDZW5kYWdHd2V4UjNiQkYrYjlyN0JFUXlv?=
 =?utf-8?B?SHRsbDBFOGFHbkNKV296VTlHTTBtSkNLTG5aYmtRWnhSZ2ZRZ2VVWUdqTGZY?=
 =?utf-8?B?TDdJUE1yYkVYbHF1TkRtY255aWN0U3Vib2VtY0tTYmNvK2pPYmpVK0RvZk5Y?=
 =?utf-8?B?YXpFVHIwc21Qd0VlM2R1d2h2cVNFQWVvQmcxRTlqRVpnVDIyc2R0RkhpZm1Y?=
 =?utf-8?B?OS93QmRDOVFwUVlJZDB5R0gwMWE5VlFzRzhvVE55aGkyVEthQU5nWUVqV284?=
 =?utf-8?B?bi85VEFDcVJ0azEwckI4RmtlMHJCUHZCSDBNWUhxTUxkUlRNQ296czJ3bVl6?=
 =?utf-8?B?TjVsSk5GMEpoSlRsZ09wbjJuTzUwbFdaeEQwd1owMnJBNTlmWStrMTh1QThQ?=
 =?utf-8?B?UEJmUlNzelpoMnd0RE82Ym5OVWFDWGplT3BNODlNM29FaG0zTE1QTmVWLzU4?=
 =?utf-8?B?cGlPcEcwOU90YmowNnpSMC92aERGTVc3cVNvc2srTU92dlJvZXN1R3F5ZnhP?=
 =?utf-8?B?WFBJaHd2YmdYUENVM1RpZU9mRWoxRWo1VXp6RFpnd0N3WFVEWStIMnp4dHVq?=
 =?utf-8?B?VHI0NVVqdEZYWStSc1JHZ3ltd0NMWXUwZVNnckQ5dUNuYUJNOGlzNDhOZjJL?=
 =?utf-8?B?YmRLZ0lVSWNoMEhIUnF5Z0lFK2sybDlKaWhvMDkrM3MrZS9UR3QrTm5MejJW?=
 =?utf-8?B?UDdGK3BZSXFWQTl5S3Q0NTU2VG5EUE1OWThsSHVsTjJYM01IaENCVGJxUENh?=
 =?utf-8?B?dWt3VEc1MTRrT2ZmUmozTmN1MG40R2ROTXBETGVFeWxQbnRsUUpRWTcwTWI0?=
 =?utf-8?B?Ty8yVSt4ZERidHdacjFoOEwyb1Bhd0UzYzd1clQ2YVhMNFdGbVlqUUxCTVZn?=
 =?utf-8?B?WlBWa0lNcUo3YmhDOFQrNUNVREUzbzZJeXo3ZHo2YzlJZUkvYnlTaVN0b2Fh?=
 =?utf-8?B?b25hd3EvU1FHRnd4dmpVcXFZMzJuSkdFelBNcmxpb1RlL3ZLdDdvVnpUcVZa?=
 =?utf-8?B?ck01emF3Y1NLRVZFbFg1Wk9CMWI1ZnlwcE9JbkdxdVJwbWVkdXRWbTVFaHJS?=
 =?utf-8?B?cWJCOXFtOVJEVjlTby90QzJkNHFLczNuZUpQVXBIdFBDU3V2QUE1aWNzNVhn?=
 =?utf-8?Q?cLDIH8XisdIdeDoMJR5UEa9RZ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4ff5cf61-941b-41c3-ad06-08dbaed7d6b1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 12:50:24.7456
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: PTqfzuoSinfdu7g3YEVbfyxOlnei1n3KufE4FQzErIP4nzwAXf2jXTu7nKsxKdtJzRW66yIQO2o0yfLLXTgL9A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8486

On 06.09.2023 14:40, Anthony PERARD wrote:
> On Thu, Aug 31, 2023 at 08:15:13AM +0200, Jan Beulich wrote:
>> If the F: description is to be trusted, the two xen/arch/x86/hvm/
>> lines were fully redundant with the earlier wildcard ones. Arch header
>> files, otoh, were no longer covered by anything as of the move from
>> include/asm-*/ to arch/*/include/asm/. Further also generalize (by
>> folding) the x86- and Arm-specific mem_access.c entries.
>>
>> Finally, again assuming the F: description can be trusted, there's no
>> point listing arch/, common/, and include/ entries separately. Fold
>> them all.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> -F:	xen/arch/*/monitor.c
>> -F:	xen/arch/*/vm_event.c
>> -F:	xen/arch/arm/mem_access.c
>> -F:	xen/arch/x86/include/asm/hvm/monitor.h
>> -F:	xen/arch/x86/include/asm/hvm/vm_event.h
>> -F:	xen/arch/x86/mm/mem_access.c
>> -F:	xen/arch/x86/hvm/monitor.c
>> -F:	xen/arch/x86/hvm/vm_event.c
>> -F:	xen/common/mem_access.c
>> -F:	xen/common/monitor.c
>> -F:	xen/common/vm_event.c
>> -F:	xen/include/*/mem_access.h
>> -F:	xen/include/*/monitor.h
>> -F:	xen/include/*/vm_event.h
>> +F:	xen/*/mem_access.[ch]
>> +F:	xen/*/monitor.[ch]
>> +F:	xen/*/vm_event.[ch]
> 
> 
> Hi,
> 
> Did you mean to for example change the maintainer ship of
> "xen/arch/x86/mm/mem_access.c"? Before it was:
>     - VM EVENT, MEM ACCESS and MONITOR
>     - X86 MEMORY MANAGEMENT
>     - X86 ARCHITECTURE
> And now, it's just:
>     - X86 MEMORY MANAGEMENT
>     - X86 ARCHITECTURE
> 
> (see ./scripts/get_maintainer.pl --sections -f xen/arch/x86/mm/mem_access.c)
> 
> Also, now "xen/include/xen/monitor.h" is only "THE REST".

No, no change of maintainership was intended. But there was an uncertainty,
which is why I said "assuming the F: description can be trusted". So ...

> On the other hand, there's no change for "xen/common/monitor.c", so the
> pattern works for this particular file.

... together with this observation, I take it that

	   F:	*/net/*		all files in "any top level directory"/net

is actually at best misleading / ambiguous - I read it as not just a single
level of directories, but it may well be that that's what is meant. At
which point the question is how "any number of directories" could be
expressed. Would **/ or .../**/... work here? I'm afraid my Perl is far
from sufficient to actually spot where (and hence how) this is handled in
the script.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 13:03:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 13:03:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596611.930547 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdsCF-0004B9-Fo; Wed, 06 Sep 2023 13:03:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596611.930547; Wed, 06 Sep 2023 13:03:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdsCF-0004B2-DD; Wed, 06 Sep 2023 13:03:51 +0000
Received: by outflank-mailman (input) for mailman id 596611;
 Wed, 06 Sep 2023 13:03:50 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=nrw9=EW=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qdsCE-0004As-5a
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 13:03:50 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0606.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d0e3687e-4cb5-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 15:03:47 +0200 (CEST)
Received: from AM6P191CA0081.EURP191.PROD.OUTLOOK.COM (2603:10a6:209:8a::22)
 by DU0PR08MB9226.eurprd08.prod.outlook.com (2603:10a6:10:419::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 13:03:45 +0000
Received: from AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:8a:cafe::31) by AM6P191CA0081.outlook.office365.com
 (2603:10a6:209:8a::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Wed, 6 Sep 2023 13:03:45 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT063.mail.protection.outlook.com (100.127.140.221) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.26 via Frontend Transport; Wed, 6 Sep 2023 13:03:44 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Wed, 06 Sep 2023 13:03:43 +0000
Received: from d0f614c2f8ea.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 0E88C96E-561D-4746-A9CD-B63BC678A653.1; 
 Wed, 06 Sep 2023 13:03:35 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d0f614c2f8ea.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 06 Sep 2023 13:03:35 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AM9PR08MB6161.eurprd08.prod.outlook.com (2603:10a6:20b:280::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep
 2023 13:03:32 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::3cb8:2053:e853:92fe%4]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 13:03:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d0e3687e-4cb5-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LDDKiPi2SJZz1lihIr4tQG8oTuJ3FdEoTC23ddjXaNk=;
 b=1YK3mLPSXTiGhj2xeficd5ytJhHQgYs8kDgDIx3QHtvnCEZXyYwGe/w5jb2OmHsZyqEg50IPi9GNjtDfW2/dz7oQOyiujf6C4zTT01GhVBCQybFciAZGAhGmbSGvaTbp/JM6ho6AH3jx6CzYqzGFQ1gbpS1gjOtz+PM00RvlsHE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 1ab2117cfaeef6cf
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WaE6ICVqDf6UwPq3LjbNdi6b2eLvBNKn662T13y+pNbZHkJTbypsRJPTrVcinHUD1vzzSHDDSIuoourR36kGRB3zIhQk/tAxquN1Y3jyrNW3txw85UGRlXJW5shSMF1dpkAXru+GT+FbFBcRC3paEPLcbSaXQSYH4OShRZrvgCujV5tHJCfOzocmM3Hm/466N7AmrkNzsqm/6PjkwyXTmW4Kh+wXZMtRZt3degp5/ANft3DDJr5RNK1aNLy5Bi2Dd/+Ps4ywqTB2iGXFzbUJIRUS/rw8LsfggmUFgRjKhGDK9kZqNr796A0w8xzXyA/NKv+ENDeUgIrMiKL+JmCirw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LDDKiPi2SJZz1lihIr4tQG8oTuJ3FdEoTC23ddjXaNk=;
 b=mjejVZBK2rPibK+FD2eDiMTflM3yiNubOfJY1JQ73v71GumE6BsURz/zXUERWcPVF9hm4ZVtiI7UyPiLvUG+Y/eGGnQsWNvqr5TGfefv9VzOAowmRgVeWTvAB7VAergafSDGX+ojIqfhEPjbYzXDn4+ICSPnd4t8xGMr69HY/9pTos4ri6LOnRF+q+QSC2PqzcS4q35RLX7WLJYaIoVdR4qg+U929HoT6WQF8QXyduCmX1PeaGHfxc4Wwo7v1TLZt9PTaa9zQA1U5oYmfJfK/KWmC0CqyYcpyJax0eKVpvM4oQUSWjYXXvi2LshjYuD3b7NOUHTEMXs8Y72SiXU1ew==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LDDKiPi2SJZz1lihIr4tQG8oTuJ3FdEoTC23ddjXaNk=;
 b=1YK3mLPSXTiGhj2xeficd5ytJhHQgYs8kDgDIx3QHtvnCEZXyYwGe/w5jb2OmHsZyqEg50IPi9GNjtDfW2/dz7oQOyiujf6C4zTT01GhVBCQybFciAZGAhGmbSGvaTbp/JM6ho6AH3jx6CzYqzGFQ1gbpS1gjOtz+PM00RvlsHE=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Oleksii <oleksii.kurochko@gmail.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Shawn Anastasio
	<sanastasio@raptorengineering.com>, Bob Eshleman <bobbyeshleman@gmail.com>,
	Alistair Francis <alistair.francis@wdc.com>, Connor Davis
	<connojdavis@gmail.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
Thread-Topic: [PATCH v4 1/2] xen: asm-generic support
Thread-Index: AQHZ3O2/QR3JeW3CfU20DuxQPAN2rLAKsJgAgAMCtQCAABfdgA==
Date: Wed, 6 Sep 2023 13:03:32 +0000
Message-ID: <E2C450BC-F080-41DB-B025-9DD1949C835A@arm.com>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
 <3DCD5649-C172-4400-AA75-A28F5C0A106D@arm.com>
 <b90c2e4dc9ec84ef6487f1dd980d7858d7903e89.camel@gmail.com>
In-Reply-To: <b90c2e4dc9ec84ef6487f1dd980d7858d7903e89.camel@gmail.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|AM9PR08MB6161:EE_|AM7EUR03FT063:EE_|DU0PR08MB9226:EE_
X-MS-Office365-Filtering-Correlation-Id: 282b9681-4d6b-4e51-b8c9-08dbaed9b395
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 Wer60jYhAIUB2JSYPAjTMrVK7E7pLGDgnmVLHvTi8wtIRh+h75WZ/BUwJn96WfdqEwtrlDH7d483n1Q4rGalT3cZgm0+fnpq9x3FpzKU6JbRf8ldocNs0BCa2lO2JI1EW32Sl3AQD38ki8P1KSESLc0Ph5sdtVQU1LrI729IWSKU33r0S8N8IpI0XFsCxPRUp5lfRmYVtwxxXViQcc8bvtay32CilO26sMbr0DEnBbLwh7QcFJCNBD7kIXjtZYkm+Dqzw3JgkxWsKJupy1F7hiwjkelS+LoVPvDBtVGN9ghIr3jw/bmizZ8ZYvlOqRGvZRlerwzpMB3gxhg4jWzYELPGdr+BPWr2THmx9P/rnk5ZRwtHB+UN1KSSswDpj4zirf4h3b9ljsAfBLktp38f2NhSucw24jT+XvG83XcWh1t7it0nM2SIsmjW/r+aBlE1f7Q5vTfE3dDHZSsiBOYYggcXF8Ql37V1epJx5PmnKlQI6JZ14mzLNcfyY5426xvhIblFDyzg3CYFFf92Ao4+c3O9m3pYyYfYc1Fkn+jBv0+WCY8cgyloAG/VVwWEi17m/HgQkVtCua1pVgluZPL8OB8y7Ai3l4EqIQ3YqRA6TXfkAGSdpABX2ASgU24ADCG63nmc9dOGH6Unuk3+OnxkYhxCHNPn41At6VpsXYKpQEc=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39860400002)(346002)(396003)(376002)(136003)(186009)(1800799009)(451199024)(6506007)(6486002)(6512007)(53546011)(71200400001)(478600001)(2616005)(2906002)(7416002)(41300700001)(66556008)(64756008)(316002)(54906003)(66446008)(6916009)(66476007)(5660300002)(91956017)(8676002)(66946007)(8936002)(4326008)(76116006)(36756003)(38100700002)(33656002)(86362001)(38070700005)(122000001)(41533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <3031BFB4F6B16143A9851B9BC4C348A2@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6161
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	151ecfba-59e5-4751-9fdf-08dbaed9ac28
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	HDA7icMdtCakBASsS9X/udfPgVzJGFKGK/Rtt1PIk7iUVTXH45/QAKiebHeKwnkBm8Q6jdJNkk0U5vAQnM0TfCGXlEOLqUvzDQCLRfSAORiX6Rjx3XZ5lW5ZFOHsBf+IIhdENVLA3sgFxo9K5N+UvDBMQfSOntwMqIPjxOtnRNUql938lMGa7LL0Sd+Mf5ERGTIQjU++mlvZFixGyHGBE93beNMkEkqCs/j15nk/z5LJToh4agSiKNQGi9kArD1ZY6ilVlLooF35GoiX47T9myF00AUVbFFNgwcJSkwgseH3uYOikuJFiud1xz/qpYSA5XBZI167Y0RAACetN7pNa5MGIRp3hYbfktXtZVFDyNNz5AGPI+XjNH6a37k09jx1FdouIoYS+ZGhgOAMe9E6jc4RKYAdDNFFcj5cPgDTmBPRrBoL4mqYd5b0hTKSsLO6qpehUSFvsmagiyycuT21+lX4cIerRRR9NJBgeBKBlCyho9YiF5/fWHqG2o17mtMFtwR/GfsnRm9/BmmodlwUK0jVdk1DpYrBtc0NbWRvf2T0NcCkui7En9jrcWK6n0GlapssHC3m1xApfQv8Fa3ikYg14ZGFafqJwuN68EPCLDXbORjdm39XNhFo9Re2NPv8//hzX09L6aYxUYrQMuOQzHjzxOy4hHB62aBbVnYZlaxf/i5mtfXB3C/3xm63poNZ43HEIPKnqx/yRfAYaibTLG/KNo/qaVYzSZmPWKs5dIxe0/PPzrZHWsY0jB7hGE0F5CeM5py6OH4pdAROjmFISA==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(376002)(346002)(136003)(186009)(451199024)(1800799009)(82310400011)(46966006)(36840700001)(40470700004)(36756003)(33656002)(316002)(2906002)(41300700001)(40460700003)(82740400003)(40480700001)(86362001)(356005)(81166007)(5660300002)(36860700001)(47076005)(4326008)(8936002)(8676002)(6862004)(2616005)(107886003)(26005)(6512007)(53546011)(336012)(6506007)(6486002)(478600001)(54906003)(70586007)(70206006)(41533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 13:03:44.6189
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 282b9681-4d6b-4e51-b8c9-08dbaed9b395
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9226

SGkgT2xla3NpaSwNCg0KPiBPbiA2IFNlcCAyMDIzLCBhdCAxMzozNywgT2xla3NpaSA8b2xla3Np
aS5rdXJvY2hrb0BnbWFpbC5jb20+IHdyb3RlOg0KPiANCj4gSGVsbG8gQmVydHJhbmQNCj4gDQo+
IE9uIE1vbiwgMjAyMy0wOS0wNCBhdCAxMzozOSArMDAwMCwgQmVydHJhbmQgTWFycXVpcyB3cm90
ZToNCj4+PiBkaWZmIC0tZ2l0IGEveGVuL3NjcmlwdHMvTWFrZWZpbGUuYXNtLWdlbmVyaWMNCj4+
PiBiL3hlbi9zY3JpcHRzL01ha2VmaWxlLmFzbS1nZW5lcmljDQo+Pj4gbmV3IGZpbGUgbW9kZSAx
MDA2NDQNCj4+PiBpbmRleCAwMDAwMDAwMDAwLi4wYWFjM2Y1MGI4DQo+Pj4gLS0tIC9kZXYvbnVs
bA0KPj4+ICsrKyBiL3hlbi9zY3JpcHRzL01ha2VmaWxlLmFzbS1nZW5lcmljDQo+Pj4gQEAgLTAs
MCArMSwyMyBAQA0KPj4+ICsjIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wDQo+Pj4g
KyMgaW5jbHVkZS9hc20tZ2VuZXJpYyBjb250YWlucyBhIGxvdCBvZiBmaWxlcyB0aGF0IGFyZSB1
c2VkDQo+Pj4gKyMgdmVyYmF0aW0gYnkgc2V2ZXJhbCBhcmNoaXRlY3R1cmVzLg0KPj4+ICsjDQo+
Pj4gKyMgVGhpcyBNYWtlZmlsZSByZWFkcyB0aGUgZmlsZSBhcmNoLyQoU1JDQVJDSCkvaW5jbHVk
ZS9hc20vS2J1aWxkDQo+Pj4gKyMgYW5kIGZvciBlYWNoIGZpbGUgbGlzdGVkIGluIHRoaXMgZmls
ZSB3aXRoIGdlbmVyaWMteSBjcmVhdGVzDQo+Pj4gKyMgYSBzbWFsbCB3cmFwcGVyIGZpbGUgaW4g
JChvYmopDQo+Pj4gKGFyY2gvJChTUkNBUkNIKS9pbmNsdWRlL2dlbmVyYXRlZC9hc20pDQo+Pj4g
Kw0KPj4+ICtrYnVpbGQtZmlsZSA6PSAkKHNyY3RyZWUpL2FyY2gvJChTUkNBUkNIKS9pbmNsdWRl
L2FzbS9LYnVpbGQNCj4+PiAraW5jbHVkZSAkKGtidWlsZC1maWxlKQ0KPj4+ICsNCj4+PiAraW5j
bHVkZSBzY3JpcHRzL0tidWlsZC5pbmNsdWRlDQo+Pj4gKw0KPj4+ICsjIENyZWF0ZSBvdXRwdXQg
ZGlyZWN0b3J5IGlmIG5vdCBhbHJlYWR5IHByZXNlbnQNCj4+PiArX2R1bW15IDo9ICQoc2hlbGwg
WyAtZCAkKG9iaikgXSB8fCBta2RpciAtcCAkKG9iaikpDQo+Pj4gKw0KPj4+ICtxdWlldF9jbWRf
d3JhcCA9IFdSQVAgICAgJEANCj4+PiArY21kX3dyYXAgPSBlY2hvICJcI2luY2x1ZGUgPGFzbS1n
ZW5lcmljLyQqLmg+IiA+JEANCj4+PiArDQo+Pj4gK2FsbDogJChwYXRzdWJzdCAlLCAkKG9iaikv
JSwgJChnZW5lcmljLXkpKQ0KPj4+ICsNCj4+PiArJChvYmopLyUuaDoNCj4+PiArICQoY2FsbCBj
bWQsd3JhcCkNCj4+IA0KPj4gSW4gZmFjdCBpIHRoaW5rIHlvdXIgZmlsZXMgYXJlIG5vdCBnZW5l
cmF0ZWQgaW4gdGhlIHNyY3RyZWUgc28gdGhpcw0KPj4gd2lsbCBicmVhayBpZiB5b3UgdXNlIG91
dCBvZiB0cmVlIGNvbXBpbGF0aW9uLg0KPiBJIGNoZWNrZWQgdGhhdCBhbmQgaW4gYm90aCBjYXNl
cyBpdCBnZW5lcmF0ZWQgaW4gY29ycmVjdCBwbGFjZS4NCj4gDQo+IEZpcnN0IGNhc2U6DQo+ICQg
Q09OVEFJTkVSX05PX1BVTEw9MSBDT05UQUlORVI9cmlzY3Y2NA0KPiAuL2F1dG9tYXRpb24vc2Ny
aXB0cy9jb250YWluZXJpemUgbWFrZSBYRU5fVEFSR0VUX0FSQ0g9cmlzY3Y2NCAtQyB4ZW4NCj4g
YnVpbGQNCj4gDQo+ICQgbHMgLWxhIHhlbi9hcmNoL3Jpc2N2L2luY2x1ZGUvZ2VuZXJhdGVkL2Fz
bS92bV9ldmVudC5oIA0KPiAtcnctci0tci0tLiAxIG9rIG9rIDM0INCy0LXRgCAgNiAxNDozMg0K
PiB4ZW4vYXJjaC9yaXNjdi9pbmNsdWRlL2dlbmVyYXRlZC9hc20vdm1fZXZlbnQuaA0KPiANCj4g
U2Vjb25kIGNhc2U6ICggb3V0LW9mLXRyZWUgKQ0KPiAkIENPTlRBSU5FUl9OT19QVUxMPTEgQ09O
VEFJTkVSPXJpc2N2NjQNCj4gLi9hdXRvbWF0aW9uL3NjcmlwdHMvY29udGFpbmVyaXplIG1ha2Ug
Tz14ZW5fYnVpbGQNCj4gWEVOX1RBUkdFVF9BUkNIPXJpc2N2NjQgLUMgeGVuIGJ1aWxkIFY9MQ0K
PiANCj4gJCBscyAtbGEgeGVuL3hlbl9idWlsZC9hcmNoL3Jpc2N2L2luY2x1ZGUvZ2VuZXJhdGVk
L2FzbS92bV9ldmVudC5oIA0KPiAtcnctci0tci0tLiAxIG9rIG9rIDM0INCy0LXRgCAgNiAxNDoz
NA0KPiB4ZW4veGVuX2J1aWxkL2FyY2gvcmlzY3YvaW5jbHVkZS9nZW5lcmF0ZWQvYXNtL3ZtX2V2
ZW50LmgNCj4gDQo+IENvdWxkIHlvdSBwbGVhc2UgY2xhcmlmeSBpZiB0aGVyZSdzIHNvbWl0aGlu
ZyBJIG1pZ2h0IGhhdmUgb3Zlcmxvb2tlZD8NCg0KTm8gSSBkbyBub3QgdGhpbmsgeW91IGRpZC4N
Cg0KU28gb2JqIGlzIGVtcHR5IEkgd291bGQgZ3Vlc3MuDQpBbnl3YXkgeW91IGp1c3QgbmVlZCB0
byBtYWtlIHN1cmUgdGhhdCBDRkxBR1MgaXMgY29oZXJlbnQgd2l0aCB3aGF0IHlvdSBnZW5lcmF0
ZS4NClNvIGlmIHlvdSBnZW5lcmF0ZSBpbiAkKG9iaikgeW91IG5lZWQgdG8gbWFrZSBzdXJlIHlv
dSB1c2UgdGhlIHNhbWUgaW4gQ0ZMQUdTIGkgd291bGQgc2F5Lg0KDQpAYW50aG9ueTogYW55IGFk
dmljZSBoZXJlID8NCg0KQ2hlZXJzDQpCZXJ0cmFuZA0KDQoNCg0KPiANCj4gfiBPbGVrc2lpDQo+
IA0KPiANCj4gDQoNCg==


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 13:25:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 13:25:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596619.930556 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdsWt-0000AE-7d; Wed, 06 Sep 2023 13:25:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596619.930556; Wed, 06 Sep 2023 13:25:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdsWt-0000A2-4p; Wed, 06 Sep 2023 13:25:11 +0000
Received: by outflank-mailman (input) for mailman id 596619;
 Wed, 06 Sep 2023 13:25:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4Jy9=EW=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qdsWr-00009b-QX
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 13:25:09 +0000
Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com
 [2a00:1450:4864:20::32c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cc97563a-4cb8-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 15:25:08 +0200 (CEST)
Received: by mail-wm1-x32c.google.com with SMTP id
 5b1f17b1804b1-401d67434daso36132585e9.2
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 06:25:08 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 p22-20020a1c7416000000b003fe23b10fdfsm23024250wmc.36.2023.09.06.06.25.07
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 06:25:07 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cc97563a-4cb8-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694006708; x=1694611508; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=gHZT37ph+apRRKVcB+jqgGnudNtO5NAW3UTxBPcaBmY=;
        b=G9hWF1dhaRCu4RjudwR98T2pZAf+zXJ3DPW5VMtV/z6GxvSH2Yvc7HRLit2Z/uWhv2
         VZZsSLQ1CgoY3PkCotiOFX283r+LlTyV+JSjipTUzNzFQQTGEc11icZmE8ULUjsUF17O
         L7w5U8ibPFVE9k3ktNOblhaOOWPu7mkpqy1hQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694006708; x=1694611508;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=gHZT37ph+apRRKVcB+jqgGnudNtO5NAW3UTxBPcaBmY=;
        b=dwwWxtqBngPtyu0LZAVFZ58w9eb3Ue11BWDLcf2er7w2sfZBAQMOGEHOJ7JlpP3ouG
         i6wIUwZ4d0D369wQMBvqxxN6MBaQKyxwuKoaq2gfPSWvV0hI30ge9bhlPl/aub0tLdSa
         HKAUTybEZOw6pM0OUfeQHMlZ2Q364nfoy/LjCOByHXuuQ6DtAPyv+kACfd2MAbDKl0es
         q140Wn7xM/yYeAUR0zT43f9ia9jd4gpXjeWIfVv36S+EoJe+0ghiPrHE57ycLVpyAUBt
         8JdVBUbj5trTnzGPk8P3O0+kEA4UNzPc3nPWVmECEJgEJnSuXRVsMYO172zx2wSZZBO+
         opNw==
X-Gm-Message-State: AOJu0YxoQgnTgsPQHax7popU6regGh+vRruwjvO0FmrkH1SrFeSczLzk
	JcP5J5P3ZZtT/LbM7MEZw9kn9H7vmlHnNqSPeikoeA==
X-Google-Smtp-Source: AGHT+IFRyI7vnw2itWYrvrd1dlj8ak/GmBDyIg87mloQAJiyVTgqPJNfmLhCD2ztSTk+8gXRSIT/yQ==
X-Received: by 2002:a7b:c389:0:b0:3ff:28b8:c53d with SMTP id s9-20020a7bc389000000b003ff28b8c53dmr2174762wmj.33.1694006707892;
        Wed, 06 Sep 2023 06:25:07 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Javi Merino <javi.merino@cloud.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [PATCH v1] tools/xentrace/xentrace_format: Add python 3 compatibility
Date: Wed,  6 Sep 2023 14:14:46 +0100
Message-ID: <20230906131616.7681-1-javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Closes issue #155

Signed-off-by: Javi Merino <javi.merino@cloud.com>
---

Tested using the format file in tools/xentrace/formats.  With this patch, both python2 and python3 produce the same output.

 tools/xentrace/xentrace_format | 63 +++++++++++++++++++---------------
 1 file changed, 36 insertions(+), 27 deletions(-)

diff --git a/tools/xentrace/xentrace_format b/tools/xentrace/xentrace_format
index 5ff85ae2e8..166ebae325 100644
--- a/tools/xentrace/xentrace_format
+++ b/tools/xentrace/xentrace_format
@@ -4,11 +4,15 @@
 
 # Program for reformatting trace buffer output according to user-supplied rules
 
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+from builtins import str
+from past.utils import old_div
 import re, sys, string, signal, struct, os, getopt
 
 def usage():
-    print >> sys.stderr, \
-          "Usage: " + sys.argv[0] + """ defs-file
+    print("Usage: " + sys.argv[0] + """ defs-file
           Parses trace data in binary format, as output by Xentrace and
           reformats it according to the rules in a file of definitions.  The
           rules in this file should have the format ({ and } show grouping
@@ -29,7 +33,7 @@ def usage():
           this script may not be able to keep up with the output of xentrace
           if it is piped directly.  In these circumstances you should have
           xentrace output to a file for processing off-line.
-          """
+          """, file=sys.stderr)
     sys.exit(1)
 
 def read_defs(defs_file):
@@ -49,7 +53,7 @@ def read_defs(defs_file):
 
         m = reg.match(line)
 
-        if not m: print >> sys.stderr, "Bad format file" ; sys.exit(1)
+        if not m: print("Bad format file", file=sys.stderr) ; sys.exit(1)
 
         defs[str(eval(m.group(1)))] = m.group(2)
 
@@ -83,8 +87,8 @@ interrupted = 0
 
 try:
     defs = read_defs(arg[0])
-except IOError, exn:
-    print exn
+except IOError as exn:
+    print(exn)
     sys.exit(1)
 
 # structure of trace record (as output by xentrace):
@@ -117,12 +121,17 @@ TRC_PV_HYPERCALL_SUBCALL = 0x20100e
 NR_VECTORS = 256
 irq_measure = [{'count':0, 'tot_cycles':0, 'max_cycles':0}] * NR_VECTORS
 
+if sys.version_info >= (3, 0):
+    stdin_bytes = sys.stdin.buffer
+else:
+    stdin_bytes = sys.stdin
+
 i=0
 
 while not interrupted:
     try:
         i=i+1
-        line = sys.stdin.read(struct.calcsize(HDRREC))
+        line = stdin_bytes.read(struct.calcsize(HDRREC))
         if not line:
             break
         event = struct.unpack(HDRREC, line)[0]
@@ -140,43 +149,43 @@ while not interrupted:
         tsc = 0
 
         if tsc_in == 1:
-            line = sys.stdin.read(struct.calcsize(TSCREC))
+            line = stdin_bytes.read(struct.calcsize(TSCREC))
             if not line:
                 break
             tsc = struct.unpack(TSCREC, line)[0]
 
         if n_data == 1:
-            line = sys.stdin.read(struct.calcsize(D1REC))
+            line = stdin_bytes.read(struct.calcsize(D1REC))
             if not line:
                 break
             d1 = struct.unpack(D1REC, line)[0]
         if n_data == 2:
-            line = sys.stdin.read(struct.calcsize(D2REC))
+            line = stdin_bytes.read(struct.calcsize(D2REC))
             if not line:
                 break
             (d1, d2) = struct.unpack(D2REC, line)
         if n_data == 3:
-            line = sys.stdin.read(struct.calcsize(D3REC))
+            line = stdin_bytes.read(struct.calcsize(D3REC))
             if not line:
                 break
             (d1, d2, d3) = struct.unpack(D3REC, line)
         if n_data == 4:
-            line = sys.stdin.read(struct.calcsize(D4REC))
+            line = stdin_bytes.read(struct.calcsize(D4REC))
             if not line:
                 break
             (d1, d2, d3, d4) = struct.unpack(D4REC, line)
         if n_data == 5:
-            line = sys.stdin.read(struct.calcsize(D5REC))
+            line = stdin_bytes.read(struct.calcsize(D5REC))
             if not line:
                 break
             (d1, d2, d3, d4, d5) = struct.unpack(D5REC, line)
         if n_data == 6:
-            line = sys.stdin.read(struct.calcsize(D6REC))
+            line = stdin_bytes.read(struct.calcsize(D6REC))
             if not line:
                 break
             (d1, d2, d3, d4, d5, d6) = struct.unpack(D6REC, line)
         if n_data == 7:
-            line = sys.stdin.read(struct.calcsize(D7REC))
+            line = stdin_bytes.read(struct.calcsize(D7REC))
             if not line:
                 break
             (d1, d2, d3, d4, d5, d6, d7) = struct.unpack(D7REC, line)
@@ -211,7 +220,7 @@ while not interrupted:
         if cpu >= len(last_tsc):
             last_tsc += [0] * (cpu - len(last_tsc) + 1)
         elif tsc < last_tsc[cpu] and tsc_in == 1:
-            print "TSC stepped backward cpu %d !  %d %d" % (cpu,tsc,last_tsc[cpu])
+            print("TSC stepped backward cpu %d !  %d %d" % (cpu,tsc,last_tsc[cpu]))
 
         # provide relative TSC
         if last_tsc[cpu] > 0 and tsc_in == 1:
@@ -223,7 +232,7 @@ while not interrupted:
             last_tsc[cpu] = tsc
 
         if mhz:
-            tsc = tsc / (mhz*1000000.0)
+            tsc = old_div(tsc, (mhz*1000000.0))
 
         args = {'cpu'   : cpu,
                 'tsc'   : tsc,
@@ -239,18 +248,18 @@ while not interrupted:
 
         try:
 
-            if defs.has_key(str(event)): 
-                print defs[str(event)] % args
+            if str(event) in defs: 
+                print(defs[str(event)] % args)
             else:
-                if defs.has_key(str(0)): print defs[str(0)] % args
+                if str(0) in defs: print(defs[str(0)] % args)
         except TypeError:
-            if defs.has_key(str(event)):
-                print defs[str(event)]
-                print args
+            if str(event) in defs:
+                print(defs[str(event)])
+                print(args)
             else:
-                if defs.has_key(str(0)):
-                    print defs[str(0)]
-                    print args
+                if str(0) in defs:
+                    print(defs[str(0)])
+                    print(args)
 
 
-    except IOError, struct.error: sys.exit()
+    except (IOError, struct.error): sys.exit()
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 13:52:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 13:52:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596630.930579 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdsxN-0006Eo-F3; Wed, 06 Sep 2023 13:52:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596630.930579; Wed, 06 Sep 2023 13:52:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdsxN-0006Eh-Bv; Wed, 06 Sep 2023 13:52:33 +0000
Received: by outflank-mailman (input) for mailman id 596630;
 Wed, 06 Sep 2023 13:52:32 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdsxM-0006EX-Nt; Wed, 06 Sep 2023 13:52:32 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdsxM-0007jL-LP; Wed, 06 Sep 2023 13:52:32 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdsxM-0004Fw-Fg; Wed, 06 Sep 2023 13:52:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdsxM-00049c-FG; Wed, 06 Sep 2023 13:52:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=nvH6Dlz2QI7fyloW0TtH9ht4t3WdM0L6Loq/lSY91Sg=; b=VOxT86GkExBULITfKKv+vD6dks
	5pX9hYmb/YjdZ45fTEI5A3EwD9+BrmlVREh9Nn9WLztjoL6k6JZkyuqqj+Kx43zx1aq2Ip1jInzOZ
	XJ4zvjwbWOoEzJPwElUxdyN70FEfOUU9QDRkSPmTuzyPF8eLhWMmjRywIseMPxS36l7o=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182661-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182661: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:build-amd64:xen-build:fail:regression
    xen-unstable-smoke:build-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-unstable-smoke:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=61765a07e3d8a4dabbb8323b55f13ee75c80e54a
X-Osstest-Versions-That:
    xen=9a216e92de9f9011097e4f1fb55ff67ba0a21704
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 13:52:32 +0000

flight 182661 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182661/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-amd64                   6 xen-build                fail REGR. vs. 182635

Tests which did not succeed, but are not blocking:
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  61765a07e3d8a4dabbb8323b55f13ee75c80e54a
baseline version:
 xen                  9a216e92de9f9011097e4f1fb55ff67ba0a21704

Last test of basis   182635  2023-09-05 13:00:27 Z    1 days
Testing same since   182641  2023-09-06 02:02:08 Z    0 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  David Gibson <david@gibson.dropbear.id.au>
  Henry Wang <Henry.Wang@arm.com>
  Julien Grall <jgrall@amazon.com>
  Juline Grall <jgrall@amazon.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Vikram Garhwal <fnu.vikram@xilinx.com>
  Vikram Garhwal <vikram.garhwal@amd.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  fail    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          blocked 
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-amd64-libvirt                                     blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 380 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 14:16:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 14:16:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596643.930602 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdtKn-0001tM-H8; Wed, 06 Sep 2023 14:16:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596643.930602; Wed, 06 Sep 2023 14:16:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdtKn-0001tF-Cq; Wed, 06 Sep 2023 14:16:45 +0000
Received: by outflank-mailman (input) for mailman id 596643;
 Wed, 06 Sep 2023 14:16:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JMkp=EW=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qdtKl-0001t9-Qj
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 14:16:44 +0000
Received: from mail-pl1-x62e.google.com (mail-pl1-x62e.google.com
 [2607:f8b0:4864:20::62e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ff16f3f7-4cbf-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 16:16:40 +0200 (CEST)
Received: by mail-pl1-x62e.google.com with SMTP id
 d9443c01a7336-1bf7a6509deso20590465ad.3
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 07:16:40 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 jo6-20020a170903054600b001c1f0b3e900sm11149485plb.229.2023.09.06.07.16.34
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 06 Sep 2023 07:16:38 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ff16f3f7-4cbf-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694009799; x=1694614599; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=oPhfXB0+xtVI5sfW6SQMWjPWh0SJW5yl2FvAZ8mTD4c=;
        b=w9fvaglkc0n0pRke8R2DKSI/p3ljYBmKLAVkSoFIHQ704Z7Nzo/z/cEg0qj8DqRGGW
         PJ2sZbx0KiCVfv3ZoNEVsUGq1d6I1IgQjDhyMj3kgfx9a44AF+0DbpwgDLe9f+rNxTlZ
         hzNBfEx5UwrtT67eaTAmWOgcssdA4T+HyVe1UUFM2PD5FBzUUcntrhJ9WLLZa4Q1H4gk
         63lrluummmcjTG1YzrENiLT2Eiq0Bs2hVUiT2yn8Zxg0zhI8p0mUu706azuxMKsPIlZZ
         pUzjwnM3E8Wklv1UUNO7u++td1NyjSjT3dzMgsG501MwghOtwBo6kp9bVadgWSA5Wuip
         0aRg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694009799; x=1694614599;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=oPhfXB0+xtVI5sfW6SQMWjPWh0SJW5yl2FvAZ8mTD4c=;
        b=ANxGa7has+Pv7vjNV+dJ6A0kgQ05cyA+vQqSDu2al/wOcRygwpO19DC3L1I1mX6UEm
         oNhq6giYyzT0gbUQ7kpVY1dYKqWmCEmbo/y0uyRMtwo8uU2S4bXGGFPKa9WSZg/BwhPx
         4LDAzEdqy2NdsVKk6vT1yzFxOpprPpwAzSQ7M4Za8k1ujIr1r/e5N/LrZVK/uE9ROGU/
         7jb/gBIQPfZIGmoqJavD+OIXSUZ3vZbi7txC1B7/0RoRHm+6az8bKDcnzbMuCE3MgiHh
         wRgk44rivWnqSdO98mEnfdwyhIbu4uP+j/oje9HXeaPMXSdJWDbJAM1SZB0gP0aS3D73
         ERPQ==
X-Gm-Message-State: AOJu0Ywy563QV3ds1JTpIo+aOqDbb838dWdrnqQwMIyLq9/z+OxLKrwm
	0GT1PqOz/UIRkZeCdR90B62Brg==
X-Google-Smtp-Source: AGHT+IFSwfDanQxY4jQ5BvI9U/JVyRy1EbjHe/TlH/Qvmyt/YqomZzQpH00GcypBSN5fy4Z5/J3Tsg==
X-Received: by 2002:a17:902:930a:b0:1bd:e5e7:4845 with SMTP id bc10-20020a170902930a00b001bde5e74845mr11723462plb.26.1694009798952;
        Wed, 06 Sep 2023 07:16:38 -0700 (PDT)
Message-ID: <9d25f151-9b02-4332-8664-ba3cf81412f3@daynix.com>
Date: Wed, 6 Sep 2023 23:16:33 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v4 09/13] virtio-gpu: Handle resource blob commands
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin"
 <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 "ernunes@redhat.com" <ernunes@redhat.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-10-ray.huang@amd.com>
 <ba478789-5db0-4011-bed1-7dd6901eccd6@daynix.com> <ZPbwGA3apjQTtCeu@amd.com>
 <053ecca7-f76d-4289-9189-0c3600d4804b@daynix.com> <ZPftWfuwLKafLPah@amd.com>
 <9d883490-3c82-4016-a290-6570f682908a@daynix.com> <ZPgwnMR5YM9rFLtK@amd.com>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <ZPgwnMR5YM9rFLtK@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/06 16:56, Huang Rui wrote:
> On Wed, Sep 06, 2023 at 11:39:09AM +0800, Akihiko Odaki wrote:
>> On 2023/09/06 12:09, Huang Rui wrote:
>>> On Tue, Sep 05, 2023 at 05:20:43PM +0800, Akihiko Odaki wrote:
>>>> On 2023/09/05 18:08, Huang Rui wrote:
>>>>> On Thu, Aug 31, 2023 at 06:24:32PM +0800, Akihiko Odaki wrote:
>>>>>> On 2023/08/31 18:32, Huang Rui wrote:
>>>>>>> From: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>>>>>
>>>>>>> Support BLOB resources creation, mapping and unmapping by calling the
>>>>>>> new stable virglrenderer 0.10 interface. Only enabled when available and
>>>>>>> via the blob config. E.g. -device virtio-vga-gl,blob=true
>>>>>>>
>>>>>>> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>>>>> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
>>>>>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>>>>>> ---
>>>>>>>
>>>>>>> v1->v2:
>>>>>>>         - Remove unused #include "hw/virtio/virtio-iommu.h"
>>>>>>>
>>>>>>>         - Add a local function, called virgl_resource_destroy(), that is used
>>>>>>>           to release a vgpu resource on error paths and in resource_unref.
>>>>>>>
>>>>>>>         - Remove virtio_gpu_virgl_resource_unmap from virtio_gpu_cleanup_mapping(),
>>>>>>>           since this function won't be called on blob resources and also because
>>>>>>>           blob resources are unmapped via virgl_cmd_resource_unmap_blob().
>>>>>>>
>>>>>>>         - In virgl_cmd_resource_create_blob(), do proper cleanup in error paths
>>>>>>>           and move QTAILQ_INSERT_HEAD(&g->reslist, res, next) after the resource
>>>>>>>           has been fully initialized.
>>>>>>>
>>>>>>>         - Memory region has a different life-cycle from virtio gpu resources
>>>>>>>           i.e. cannot be released synchronously along with the vgpu resource.
>>>>>>>           So, here the field "region" was changed to a pointer that will be
>>>>>>>           released automatically once the memory region is unparented and all
>>>>>>>           of its references have been released.
>>>>>>>           Also, since the pointer can be used to indicate whether the blob
>>>>>>>           is mapped, the explicit field "mapped" was removed.
>>>>>>>
>>>>>>>         - In virgl_cmd_resource_map_blob(), add check on the value of
>>>>>>>           res->region, to prevent beeing called twice on the same resource.
>>>>>>>
>>>>>>>         - Remove direct references to parent_obj.
>>>>>>>
>>>>>>>         - Separate declarations from code.
>>>>>>>
>>>>>>>      hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
>>>>>>>      hw/display/virtio-gpu.c        |   4 +-
>>>>>>>      include/hw/virtio/virtio-gpu.h |   5 +
>>>>>>>      meson.build                    |   4 +
>>>>>>>      4 files changed, 225 insertions(+), 1 deletion(-)
>>>>>>>
>>>>>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
>>>>>>> index 312953ec16..17b634d4ee 100644
>>>>>>> --- a/hw/display/virtio-gpu-virgl.c
>>>>>>> +++ b/hw/display/virtio-gpu-virgl.c
>>>>>>> @@ -17,6 +17,7 @@
>>>>>>>      #include "trace.h"
>>>>>>>      #include "hw/virtio/virtio.h"
>>>>>>>      #include "hw/virtio/virtio-gpu.h"
>>>>>>> +#include "hw/virtio/virtio-gpu-bswap.h"
>>>>>>>      
>>>>>>>      #include "ui/egl-helpers.h"
>>>>>>>      
>>>>>>> @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
>>>>>>>          virgl_renderer_resource_create(&args, NULL, 0);
>>>>>>>      }
>>>>>>>      
>>>>>>> +static void virgl_resource_destroy(VirtIOGPU *g,
>>>>>>> +                                   struct virtio_gpu_simple_resource *res)
>>>>>>> +{
>>>>>>> +    if (!res)
>>>>>>> +        return;
>>>>>>> +
>>>>>>> +    QTAILQ_REMOVE(&g->reslist, res, next);
>>>>>>> +
>>>>>>> +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
>>>>>>> +    g_free(res->addrs);
>>>>>>> +
>>>>>>> +    g_free(res);
>>>>>>> +}
>>>>>>> +
>>>>>>>      static void virgl_cmd_resource_unref(VirtIOGPU *g,
>>>>>>>                                           struct virtio_gpu_ctrl_command *cmd)
>>>>>>>      {
>>>>>>> +    struct virtio_gpu_simple_resource *res;
>>>>>>>          struct virtio_gpu_resource_unref unref;
>>>>>>>          struct iovec *res_iovs = NULL;
>>>>>>>          int num_iovs = 0;
>>>>>>> @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
>>>>>>>          VIRTIO_GPU_FILL_CMD(unref);
>>>>>>>          trace_virtio_gpu_cmd_res_unref(unref.resource_id);
>>>>>>>      
>>>>>>> +    res = virtio_gpu_find_resource(g, unref.resource_id);
>>>>>>> +
>>>>>>>          virgl_renderer_resource_detach_iov(unref.resource_id,
>>>>>>>                                             &res_iovs,
>>>>>>>                                             &num_iovs);
>>>>>>>          if (res_iovs != NULL && num_iovs != 0) {
>>>>>>>              virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
>>>>>>> +        if (res) {
>>>>>>> +            res->iov = NULL;
>>>>>>> +            res->iov_cnt = 0;
>>>>>>> +        }
>>>>>>>          }
>>>>>>> +
>>>>>>>          virgl_renderer_resource_unref(unref.resource_id);
>>>>>>> +
>>>>>>> +    virgl_resource_destroy(g, res);
>>>>>>>      }
>>>>>>>      
>>>>>>>      static void virgl_cmd_context_create(VirtIOGPU *g,
>>>>>>> @@ -426,6 +451,183 @@ static void virgl_cmd_get_capset(VirtIOGPU *g,
>>>>>>>          g_free(resp);
>>>>>>>      }
>>>>>>>      
>>>>>>> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
>>>>>>> +
>>>>>>> +static void virgl_cmd_resource_create_blob(VirtIOGPU *g,
>>>>>>> +                                           struct virtio_gpu_ctrl_command *cmd)
>>>>>>> +{
>>>>>>> +    struct virtio_gpu_simple_resource *res;
>>>>>>> +    struct virtio_gpu_resource_create_blob cblob;
>>>>>>> +    struct virgl_renderer_resource_create_blob_args virgl_args = { 0 };
>>>>>>> +    int ret;
>>>>>>> +
>>>>>>> +    VIRTIO_GPU_FILL_CMD(cblob);
>>>>>>> +    virtio_gpu_create_blob_bswap(&cblob);
>>>>>>> +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
>>>>>>> +
>>>>>>> +    if (cblob.resource_id == 0) {
>>>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
>>>>>>> +                      __func__);
>>>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>>>>>> +        return;
>>>>>>> +    }
>>>>>>> +
>>>>>>> +    res = virtio_gpu_find_resource(g, cblob.resource_id);
>>>>>>> +    if (res) {
>>>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already exists %d\n",
>>>>>>> +                      __func__, cblob.resource_id);
>>>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>>>>>> +        return;
>>>>>>> +    }
>>>>>>> +
>>>>>>> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
>>>>>>> +    if (!res) {
>>>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
>>>>>>> +        return;
>>>>>>> +    }
>>>>>>> +
>>>>>>> +    res->resource_id = cblob.resource_id;
>>>>>>> +    res->blob_size = cblob.size;
>>>>>>> +
>>>>>>> +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
>>>>>>> +        ret = virtio_gpu_create_mapping_iov(g, cblob.nr_entries, sizeof(cblob),
>>>>>>> +                                            cmd, &res->addrs, &res->iov,
>>>>>>> +                                            &res->iov_cnt);
>>>>>>> +        if (!ret) {
>>>>>>> +            g_free(res);
>>>>>>> +            cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
>>>>>>> +            return;
>>>>>>> +        }
>>>>>>> +    }
>>>>>>> +
>>>>>>> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
>>>>>>> +
>>>>>>> +    virgl_args.res_handle = cblob.resource_id;
>>>>>>> +    virgl_args.ctx_id = cblob.hdr.ctx_id;
>>>>>>> +    virgl_args.blob_mem = cblob.blob_mem;
>>>>>>> +    virgl_args.blob_id = cblob.blob_id;
>>>>>>> +    virgl_args.blob_flags = cblob.blob_flags;
>>>>>>> +    virgl_args.size = cblob.size;
>>>>>>> +    virgl_args.iovecs = res->iov;
>>>>>>> +    virgl_args.num_iovs = res->iov_cnt;
>>>>>>> +
>>>>>>> +    ret = virgl_renderer_resource_create_blob(&virgl_args);
>>>>>>> +    if (ret) {
>>>>>>> +        virgl_resource_destroy(g, res);
>>>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: virgl blob create error: %s\n",
>>>>>>> +                      __func__, strerror(-ret));
>>>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
>>>>>>> +    }
>>>>>>> +}
>>>>>>> +
>>>>>>> +static void virgl_cmd_resource_map_blob(VirtIOGPU *g,
>>>>>>> +                                        struct virtio_gpu_ctrl_command *cmd)
>>>>>>> +{
>>>>>>> +    struct virtio_gpu_simple_resource *res;
>>>>>>> +    struct virtio_gpu_resource_map_blob mblob;
>>>>>>> +    int ret;
>>>>>>> +    void *data;
>>>>>>> +    uint64_t size;
>>>>>>> +    struct virtio_gpu_resp_map_info resp;
>>>>>>> +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
>>>>>>> +
>>>>>>> +    VIRTIO_GPU_FILL_CMD(mblob);
>>>>>>> +    virtio_gpu_map_blob_bswap(&mblob);
>>>>>>> +
>>>>>>> +    if (mblob.resource_id == 0) {
>>>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
>>>>>>> +                      __func__);
>>>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>>>>>> +        return;
>>>>>>> +    }
>>>>>>> +
>>>>>>> +    res = virtio_gpu_find_resource(g, mblob.resource_id);
>>>>>>> +    if (!res) {
>>>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
>>>>>>> +                      __func__, mblob.resource_id);
>>>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>>>>>> +        return;
>>>>>>> +    }
>>>>>>> +    if (res->region) {
>>>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already mapped %d\n",
>>>>>>> +		      __func__, mblob.resource_id);
>>>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>>>>>> +        return;
>>>>>>> +    }
>>>>>>> +
>>>>>>> +    ret = virgl_renderer_resource_map(res->resource_id, &data, &size);
>>>>>>> +    if (ret) {
>>>>>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource map error: %s\n",
>>>>>>> +                      __func__, strerror(-ret));
>>>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>>>>>> +        return;
>>>>>>> +    }
>>>>>>> +
>>>>>>> +    res->region = g_new0(MemoryRegion, 1);
>>>>>>> +    if (!res->region) {
>>>>>>> +        virgl_renderer_resource_unmap(res->resource_id);
>>>>>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
>>>>>>> +        return;
>>>>>>> +    }
>>>>>>> +    memory_region_init_ram_device_ptr(res->region, OBJECT(g), NULL, size, data);
>>>>>>
>>>>>> I think memory_region_init_ram_ptr() should be used instead.
>>>>>
>>>>> Would you mind to explain the reason?
>>>>
>>>> The documentation comment of memory_region_init_ram_device_ptr() says:
>>>>    > A RAM device represents a mapping to a physical device, such as to a
>>>>    > PCI MMIO BAR of an vfio-pci assigned device.  The memory region may be
>>>>    > mapped into the VM address space and access to the region will modify
>>>>    > memory directly.  However, the memory region should not be included in
>>>>    > a memory dump (device may not be enabled/mapped at the time of the
>>>>    > dump), and operations incompatible with manipulating MMIO should be
>>>>    > avoided.  Replaces skip_dump flag.
>>>>
>>>> In my understanding it's not MMIO so memory_region_init_ram_ptr() should
>>>> be used instead.
>>>>
>>>
>>> It actually maybe the video memory (mmio) or system memory here. :-)
>>>
>>> We will get the host memory for blob from host with
>>> virgl_renderer_resource_map() in virglrenderer. In virglrenderer, there are two
>>> types of VIRGL_RESOURCE_FD_DMABUF and VIRGL_RESOURCE_FD_SHM to indicate the
>>> memory types. The shmem is the system memory that won't need GPU
>>> accessible, and dmabuf is the memory that required GPU accessible. Host
>>> kernel amdgpu driver will register dma-buf to export the resource buffer
>>> for sharing, and here, it may have video memory that exposed by amdgpu pcie
>>> bar0 in the dma-buf buffers. And we also have system memory(gtt) that can
>>> be mapped as gpu page tables for gpu accessible.
>>>
>>> 07:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Renoir (rev c1) (prog-if 00 [VGA controller])
>>>           Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] Renoir
>>>           Flags: bus master, fast devsel, latency 0, IRQ 56
>>>           Memory at fcc0000000 (64-bit, prefetchable) [size=256M]
>>>           Memory at fcd0000000 (64-bit, prefetchable) [size=2M]
>>>           I/O ports at 1000 [size=256]
>>>           Memory at d0400000 (32-bit, non-prefetchable) [size=512K]
>>>           Capabilities: <access denied>
>>>           Kernel driver in use: amdgpu
>>>           Kernel modules: amdgpu
>>
>> In my understanding it is not relevant if the memory is backed by device
>> or not. Here MMIO means memory-mapping I/O registers that has
>> side-effects during accesses. Reading such a register may acknowledge an
>> interrupt for example and the unit of writes may also matter.
>> memory_region_init_ram_device_ptr() ensures no supurious memory read
>> will not happen and word accesses are preserved.
>>
>> They do not matter for video memory even if it lies in a separate device
>> memory. In this sense the name "memory_region_init_ram_device_ptr" is
>> somewhat misnomer.
>>
> 
> OK. Thanks for the clarification.
> 
> After traced the code, if memory_region_init_ram_device_ptr(), it will use
> memory_region_dispatch_write() to call into memory_region_ram_device_write()
> which registered as ram_device_mem_ops to write ram_block->host with offset
> dword by dword. And if we use memory_region_init_ram_ptr(), the
> flatview_write_continue() will use memmove() to write buf into ramblock while
> we write the blob memory. May I know whether you mean the "memmove" may have an
> interrupt or supurious memory access?

memmove can split one word write into smaller writes and that is 
implementation dependent.

git blame is your friend if you want to know more. Particularly commits 
21e00fa55f ("memory: Replace skip_dump flag with "ram_device"") and 
4a2e242bbb ("memory: Don't use memcpy for ram_device regions" [the 
memmove call was used to be memcpy) may interest you.

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 14:46:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 14:46:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596655.930622 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdtmw-00075U-Ub; Wed, 06 Sep 2023 14:45:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596655.930622; Wed, 06 Sep 2023 14:45:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdtmw-00075N-Ri; Wed, 06 Sep 2023 14:45:50 +0000
Received: by outflank-mailman (input) for mailman id 596655;
 Wed, 06 Sep 2023 14:45:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z0AC=EW=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qdtmu-00075C-VM
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 14:45:49 +0000
Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com
 [2a00:1450:4864:20::32f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 10a2a8d6-4cc4-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 16:45:47 +0200 (CEST)
Received: by mail-wm1-x32f.google.com with SMTP id
 5b1f17b1804b1-401187f8071so7335175e9.0
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 07:45:47 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 m18-20020a7bca52000000b003fe601a7d46sm23277096wml.45.2023.09.06.07.45.45
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 07:45:46 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 10a2a8d6-4cc4-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694011547; x=1694616347; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=T6llfyhCDD4IbQCUerVc2RwrEp3NCx7NRrJ4oPuteaM=;
        b=AUOZfUX2g38T8TuJIyb0SBE62ESJcs2kpGqBHA+njnn3HCCsGYc3VA0p5rwwZsPx9d
         UG7VeioltkJ6VNNzfa3rgwRMcUPfzBlZF/49FK3CuTPGh7H3wDpK8JzsszhSzOc0ELDW
         1ou/2Eu09eiYiDMDVoGk0jljDHluF7hTSMd+w=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694011547; x=1694616347;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=T6llfyhCDD4IbQCUerVc2RwrEp3NCx7NRrJ4oPuteaM=;
        b=VNv2S5owgzs9FL8t5x3xZ+DoheoM2vItX0ig9yb/k260kufE7y6/Ko79mrd9eAor0d
         U3wKqRhkH8h66WAB632N+cNSga96XO2Q4tpiWuSnz2Y+wIcM+oHG9U5R5XOAPKNf6h4j
         0mF1x47e+lHoY1OJt6Sa/Oh5/NLEMGLycoSlN19FjU/Fxw5CAunxnIaBw9vYrSfqak2B
         GnCfxOToayHH8UYcUOgu+zc9wbIUfxXGgqUTj1HEgSDPwfw6SwjgluDLRFuI8CU2dK5J
         Q7GS5kh+4NvTvzl2uwN9DGJHWI5lynS5NpIOG/kWYNoT48UOpXqHA2I+TsvA/4Gcw6Rg
         tLcw==
X-Gm-Message-State: AOJu0YyEaBGOSVb4DIiHL7JJh/PNcXSC7y9wfXrwNqsU6FdqBdHmqWT8
	M0cmUFsrCaIvLLcquLhS+HXSzQ==
X-Google-Smtp-Source: AGHT+IFF5E2F78zZC7qU2ujdTEIZYR5JFu3/kIjMj9HBxhZzi6EdJfzmFxBjLqFPBl4cL9wyDato6Q==
X-Received: by 2002:a7b:ca4f:0:b0:400:5962:6aa9 with SMTP id m15-20020a7bca4f000000b0040059626aa9mr2837755wml.11.1694011546745;
        Wed, 06 Sep 2023 07:45:46 -0700 (PDT)
Date: Wed, 6 Sep 2023 15:45:45 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2] MAINTAINERS: consolidate vm-event/monitor entry
Message-ID: <54be3f6e-3a54-4cbf-ae9a-9ceda5a0c5a0@perard>
References: <e3ccc381-1fd5-b99c-e37e-5870af401dd0@suse.com>
 <09a93c71-28ed-4593-b8b4-fbb4d2a240f7@perard>
 <9a42f222-7803-aab6-99c2-6919fb1cc4c3@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <9a42f222-7803-aab6-99c2-6919fb1cc4c3@suse.com>

On Wed, Sep 06, 2023 at 02:50:22PM +0200, Jan Beulich wrote:
> On 06.09.2023 14:40, Anthony PERARD wrote:
> > On Thu, Aug 31, 2023 at 08:15:13AM +0200, Jan Beulich wrote:
> >> If the F: description is to be trusted, the two xen/arch/x86/hvm/
> >> lines were fully redundant with the earlier wildcard ones. Arch header
> >> files, otoh, were no longer covered by anything as of the move from
> >> include/asm-*/ to arch/*/include/asm/. Further also generalize (by
> >> folding) the x86- and Arm-specific mem_access.c entries.
> >>
> >> Finally, again assuming the F: description can be trusted, there's no
> >> point listing arch/, common/, and include/ entries separately. Fold
> >> them all.
> >>
> >> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> >> ---
> >> -F:	xen/arch/*/monitor.c
> >> -F:	xen/arch/*/vm_event.c
> >> -F:	xen/arch/arm/mem_access.c
> >> -F:	xen/arch/x86/include/asm/hvm/monitor.h
> >> -F:	xen/arch/x86/include/asm/hvm/vm_event.h
> >> -F:	xen/arch/x86/mm/mem_access.c
> >> -F:	xen/arch/x86/hvm/monitor.c
> >> -F:	xen/arch/x86/hvm/vm_event.c
> >> -F:	xen/common/mem_access.c
> >> -F:	xen/common/monitor.c
> >> -F:	xen/common/vm_event.c
> >> -F:	xen/include/*/mem_access.h
> >> -F:	xen/include/*/monitor.h
> >> -F:	xen/include/*/vm_event.h
> >> +F:	xen/*/mem_access.[ch]
> >> +F:	xen/*/monitor.[ch]
> >> +F:	xen/*/vm_event.[ch]
> > 
> > 
> > Hi,
> > 
> > Did you mean to for example change the maintainer ship of
> > "xen/arch/x86/mm/mem_access.c"? Before it was:
> >     - VM EVENT, MEM ACCESS and MONITOR
> >     - X86 MEMORY MANAGEMENT
> >     - X86 ARCHITECTURE
> > And now, it's just:
> >     - X86 MEMORY MANAGEMENT
> >     - X86 ARCHITECTURE
> > 
> > (see ./scripts/get_maintainer.pl --sections -f xen/arch/x86/mm/mem_access.c)
> > 
> > Also, now "xen/include/xen/monitor.h" is only "THE REST".
> 
> No, no change of maintainership was intended. But there was an uncertainty,
> which is why I said "assuming the F: description can be trusted". So ...
> 
> > On the other hand, there's no change for "xen/common/monitor.c", so the
> > pattern works for this particular file.
> 
> ... together with this observation, I take it that
> 
> 	   F:	*/net/*		all files in "any top level directory"/net
> 
> is actually at best misleading / ambiguous - I read it as not just a single
> level of directories, but it may well be that that's what is meant. At

I guess the ambiguity would lie in the word "files". Here, "files" is a
single file and not a directory, unlike the shell globing which would
include directories with a '*'.

The first '*' is described at "any top level directory", but it is also
"only top level directory". This kind of tells me that there is only a
single level of directories that is match by '*'.

> which point the question is how "any number of directories" could be
> expressed. Would **/ or .../**/... work here? I'm afraid my Perl is far
> from sufficient to actually spot where (and hence how) this is handled in
> the script.

I think you could write a regexp with the "N:" type instead of "F:".
This is described Linux's MAINTAINERS file, but not ours, yet our
get_maintainer.pl script has the functionality. It might be nice to be
able to write just '**' but until someone implement that, we could go
for a regex, which is more complicated and more prone to mistake.

So I think in the short-term, you want:

N:	^xen/.*/mem_access\.[ch]$
N:	^xen/.*/monitor\.[ch]$
N:	^xen/.*/vm_event\.[ch]$

As for adding "**", there's maybe something to do with
"file_match_pattern()" in get_maintainer.pl, this function compare the
number of '/' in both the pattern and the filepath to find out if a '*'
only match one level of directory or more.

Cheers,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 15:06:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 15:06:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596662.930632 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdu7D-0001xz-FZ; Wed, 06 Sep 2023 15:06:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596662.930632; Wed, 06 Sep 2023 15:06:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdu7D-0001xs-Cl; Wed, 06 Sep 2023 15:06:47 +0000
Received: by outflank-mailman (input) for mailman id 596662;
 Wed, 06 Sep 2023 15:06:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z0AC=EW=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qdu7C-0001xm-30
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 15:06:46 +0000
Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com
 [2a00:1450:4864:20::42e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fd619d98-4cc6-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 17:06:43 +0200 (CEST)
Received: by mail-wr1-x42e.google.com with SMTP id
 ffacd0b85a97d-313e742a787so737155f8f.1
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 08:06:43 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 cc11-20020a5d5c0b000000b0031f34a395e7sm14400495wrb.45.2023.09.06.08.06.42
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 08:06:42 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fd619d98-4cc6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694012803; x=1694617603; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=QXuin7IP5covAgQK4SZeRZX11R3PRkTRd8e51Jp2B5g=;
        b=jc9a7VFwv5egZRMgJ1lDACG1P6+c000KEY9MdfXd+zHdNutR+Lh0ccG00pCnVkVv1F
         19yQhczE2uFei8qQIhhKT8Aba7lFMHxhmMUIeI8fqbnja4mit2BOjCHEp1a6xMzf4ce3
         3t+hbhFADKsSy1/Jhtil/NcnhJNEgJ6HhNBE0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694012803; x=1694617603;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=QXuin7IP5covAgQK4SZeRZX11R3PRkTRd8e51Jp2B5g=;
        b=P87fwhsM/QWH0up0FNAfo5fn0V8Jn3cNnaU557cadheE5weXNsTlPskvAHM9uC4fR9
         nkSWWoXMbj8cVUOmjWCForZnf5Rpq+q/YPpNYtW8AeZu21yPLvk6W7GxiPiv+VXFoZCR
         6Eioyd75d5Rvd6H0VgRUgXhQP+pQZFVu7eXV+SGRMKxhoj+02l0otLrLk1/W4ZFf4e94
         +aqBgCvgvCVF+c/IOYeArsJUlVX3FQzaa+kVDuf2nRyYtYEiwxkSHCQ/kNWnFSBTwBwS
         DYQi55S0SY5OLEz2t6QD0Wlszkq5wJxLCxzl7WdmzGZZJh+HV6Q+583/rrC8yblrh2hv
         DTjg==
X-Gm-Message-State: AOJu0Yz5OpzvBdXOhcmJd0stK7KxDHzkzjJiCGkIpvBKs0qnRvziQ4Vn
	XNrd8nzNudB3z/UfssIBj2sOVg==
X-Google-Smtp-Source: AGHT+IFByzCBFOa+qAD+Tda4Gdo2nblxYMqsoYWs4tCgRUGW5rn5JWxg9E4Vgypvl3Xd8ZMfAitA5A==
X-Received: by 2002:a05:6000:1049:b0:319:7537:b454 with SMTP id c9-20020a056000104900b003197537b454mr2692464wrx.28.1694012802755;
        Wed, 06 Sep 2023 08:06:42 -0700 (PDT)
Date: Wed, 6 Sep 2023 16:06:41 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Oleksii <oleksii.kurochko@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Bob Eshleman <bobbyeshleman@gmail.com>,
	Alistair Francis <alistair.francis@wdc.com>,
	Connor Davis <connojdavis@gmail.com>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
Message-ID: <32993819-b4b8-4ee3-bbb9-823ee7a46722@perard>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
 <731b436d-748c-092d-0bec-dcea5bdaed29@suse.com>
 <66fcd43cbcb176f13b5fe2aad53f659feefb9667.camel@gmail.com>
 <627a5863-0ced-956d-f76a-0547cd46c2bd@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <627a5863-0ced-956d-f76a-0547cd46c2bd@suse.com>

On Wed, Sep 06, 2023 at 02:40:29PM +0200, Jan Beulich wrote:
> On 06.09.2023 14:28, Oleksii wrote:
> > On Wed, 2023-09-06 at 14:16 +0200, Jan Beulich wrote:
> >> You've removed quite a bit of functionality, comparing with the Linux
> >> original. May I ask why that is? What they have all makes sense to
> >> me,
> >> and looks to be useful down the road.
> > I decided to take only minimum needed now but if you think it would be
> > better to use the latest Linux's Makefile.asm-generic then I will
> > update it in the next patch version.
> 
> Unless there are things getting in the way, I indeed think it would be
> better to take the whole thing largely verbatim (a few edits are
> unavoidable afaict).

Yes, I think it would be useful as well to take most of the file from
Linux. At least, this would include the "$(unwanted)" variable, which is
used to remove old wrapper when an header is removed from "generic-y".
But instead of the "-include $(kbuild-file)", could you include
"$(src)/Makefile" instead like we do in "Rules.mk"? We don't have
$(kbuild-file) macro anyway, and I don't see the point in using files
name "Kbuild" when "Makefile" works and is enough.

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 15:22:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 15:22:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596668.930643 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qduMY-0005Gz-Pw; Wed, 06 Sep 2023 15:22:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596668.930643; Wed, 06 Sep 2023 15:22:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qduMY-0005Gs-MX; Wed, 06 Sep 2023 15:22:38 +0000
Received: by outflank-mailman (input) for mailman id 596668;
 Wed, 06 Sep 2023 15:22:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=T1xS=EW=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qduMX-0005Gm-SC
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 15:22:37 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 34b46d37-4cc9-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 17:22:35 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id C8AE64EE0737;
 Wed,  6 Sep 2023 17:22:34 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 34b46d37-4cc9-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Wed, 06 Sep 2023 17:22:34 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>, Bertrand Marquis
 <bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH 1/2] xen: apply deviation for Rule 8.4 (asm-only
 definitions)
In-Reply-To: <fff285f4-55e9-3709-372d-2344e7227dff@suse.com>
References: <cover.1693585223.git.nicola.vetrini@bugseng.com>
 <a260399a471b84f3c37c15ac735dc7aec6bd33ea.1693585223.git.nicola.vetrini@bugseng.com>
 <efb3dfa7-0fd0-83a5-67dc-eafad0a2bb57@suse.com>
 <babbc14aff87b0d8546f4c617eccac3b@bugseng.com>
 <fff285f4-55e9-3709-372d-2344e7227dff@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <2c89b9977fbdc6539f121f5866e22977@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 04/09/2023 10:09, Jan Beulich wrote:
> On 04.09.2023 09:19, Nicola Vetrini wrote:
>> On 04/09/2023 09:02, Jan Beulich wrote:
>>> Further in the cover letter you say "Deviating variables needs more
>>> care, and
>>> is therefore postponed to another patch", yet then here you annotate 
>>> a
>>> couple
>>> of variables as well. Could you clarify what the criteria are for
>>> "needs more
>>> care"?
>> 
>> I see. I did not intend for those changes to end up in this patch,
>> although those two are
>> clearly only used by asm code and therefore are excepted.
>> Most of the variables I left out are also used by C code, therefore 
>> they
>> may be eligible for
>> a declaration, but where to put this declaration requires a careful
>> examination in my opinion.
>> They are not too many, tough.
> 
> Anything also used by C code (and not in the same CU) clearly wants a
> declaration.
> 
> Jan

I think that a declaration (in an header) is a good idea also when a 
symbol is defined in a translation unit
and it used both by C code in that TU and asm modules. This also allows 
C code that uses
that symbol to be moved around freely without other changes.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 15:25:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 15:25:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596675.930653 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qduOt-0005rN-5T; Wed, 06 Sep 2023 15:25:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596675.930653; Wed, 06 Sep 2023 15:25:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qduOt-0005rG-2l; Wed, 06 Sep 2023 15:25:03 +0000
Received: by outflank-mailman (input) for mailman id 596675;
 Wed, 06 Sep 2023 15:25:02 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UMkA=EW=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qduOs-0005r8-3T
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 15:25:02 +0000
Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com
 [2a00:1450:4864:20::231])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8bb1d0e1-4cc9-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 17:25:01 +0200 (CEST)
Received: by mail-lj1-x231.google.com with SMTP id
 38308e7fff4ca-2bcd7a207f7so58197321fa.3
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 08:25:01 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 h18-20020a2e3a12000000b002b9e501a6acsm3470953lja.3.2023.09.06.08.24.59
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 08:24:59 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8bb1d0e1-4cc9-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694013900; x=1694618700; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=RvaN4WB3VsgURhvKELCNkBKDcfj/od8t1vh2UoJnoqI=;
        b=jx+9+PY9hK3+2yYJ9MwIsrtH4oiT9tUKtziXQ7t9nTLyt/RiqxiY/9R+RPxEKmEo6f
         aHOFhPPIkFroE9mKu5dFv3pKUvKiHz7dWfvuYLyA8SZJaKbPXuL9pU9g9Izx+1U7JzBh
         XhhzZLgd8yJBcveRypYOkcIxdBl6lQrDvWv7NJxJ2Y2hXJUXtpEZO/OONwuV/GYHmgwA
         n8jGdmH4dPMZ4C4oqFFJcOMf1gBRY4t24lexgMWJmj7is7WbgOOvs20J4ksvUW5n8Ha2
         eH9wZ8hg1t4f2p9OwV9wX21yga7LHq190dc7cFgBftYQI5wR5kqPk52CW0f1eZn1zJIA
         bSNg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694013900; x=1694618700;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=RvaN4WB3VsgURhvKELCNkBKDcfj/od8t1vh2UoJnoqI=;
        b=cajc3dyPWdmaXqAFRvl/f8rMUe45L9el/Xponfh6u2Lba6Wh7g3r9e+xUzJfT3pIH0
         4xQIdaXNL0Zi+91No0gAXpJvw9SkjhtqiFCdFMAd5jXhzinCRPE8QBxXPZiW1qU945w6
         4AzD+soOo/hZVvNncUPVxJpJrOQw9sfdFkZUp5VndCBotGwK3PPR2mZ9FIcuY3hHhZG6
         dZ7Sp0tM3CnNSR3J4f2+VpvFhcHLd0Qn8qTuIvnI0QmFi1M5W0zqEtu+b38MfYX7Towb
         ynDcAONou1lyZIC1c6oGvwZ5OpXIPVf0H6GiPQ73fbBnfv+07LL7QDuhvJVV/y2FPJme
         neXA==
X-Gm-Message-State: AOJu0YxInWmap1TJRAKVv7De97ovvzpVNzrUZekPShUyv/6K17bfuIbm
	mqQVCFdUH7GdhR+s58soERY=
X-Google-Smtp-Source: AGHT+IEU5yOE1OiSsrfJXpKU0FM2PieDA0I2N+E8vnaY5iOr51Gh5ciVJKYFfAWGOal0k47qsNgD+g==
X-Received: by 2002:a2e:909a:0:b0:2b6:d89e:74e2 with SMTP id l26-20020a2e909a000000b002b6d89e74e2mr2630846ljg.7.1694013900299;
        Wed, 06 Sep 2023 08:25:00 -0700 (PDT)
Message-ID: <286df5d32b082675c71af3f8bd1b70d747969738.camel@gmail.com>
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
From: Oleksii <oleksii.kurochko@gmail.com>
To: Anthony PERARD <anthony.perard@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Bertrand Marquis
 <bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
  Shawn Anastasio <sanastasio@raptorengineering.com>, Bob Eshleman
 <bobbyeshleman@gmail.com>, Alistair Francis <alistair.francis@wdc.com>,
 Connor Davis <connojdavis@gmail.com>, Roger Pau =?ISO-8859-1?Q?Monn=E9?=
 <roger.pau@citrix.com>, xen-devel@lists.xenproject.org, Jan Beulich
 <jbeulich@suse.com>
Date: Wed, 06 Sep 2023 18:24:58 +0300
In-Reply-To: <32993819-b4b8-4ee3-bbb9-823ee7a46722@perard>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
	 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
	 <731b436d-748c-092d-0bec-dcea5bdaed29@suse.com>
	 <66fcd43cbcb176f13b5fe2aad53f659feefb9667.camel@gmail.com>
	 <627a5863-0ced-956d-f76a-0547cd46c2bd@suse.com>
	 <32993819-b4b8-4ee3-bbb9-823ee7a46722@perard>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Wed, 2023-09-06 at 16:06 +0100, Anthony PERARD wrote:
> On Wed, Sep 06, 2023 at 02:40:29PM +0200, Jan Beulich wrote:
> > On 06.09.2023 14:28, Oleksii wrote:
> > > On Wed, 2023-09-06 at 14:16 +0200, Jan Beulich wrote:
> > > > You've removed quite a bit of functionality, comparing with the
> > > > Linux
> > > > original. May I ask why that is? What they have all makes sense
> > > > to
> > > > me,
> > > > and looks to be useful down the road.
> > > I decided to take only minimum needed now but if you think it
> > > would be
> > > better to use the latest Linux's Makefile.asm-generic then I will
> > > update it in the next patch version.
> >=20
> > Unless there are things getting in the way, I indeed think it would
> > be
> > better to take the whole thing largely verbatim (a few edits are
> > unavoidable afaict).
>=20
> Yes, I think it would be useful as well to take most of the file from
> Linux. At least, this would include the "$(unwanted)" variable, which
> is
> used to remove old wrapper when an header is removed from "generic-
> y".
> But instead of the "-include $(kbuild-file)", could you include
> "$(src)/Makefile" instead like we do in "Rules.mk"? We don't have
> $(kbuild-file) macro anyway, and I don't see the point in using files
> name "Kbuild" when "Makefile" works and is enough.
>=20
Thank you for your feedback.

I'll take into account your suggestions in the next patch version.

~ Oleksii



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 15:32:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 15:32:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596683.930663 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qduW5-0007YL-Su; Wed, 06 Sep 2023 15:32:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596683.930663; Wed, 06 Sep 2023 15:32:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qduW5-0007YE-Px; Wed, 06 Sep 2023 15:32:29 +0000
Received: by outflank-mailman (input) for mailman id 596683;
 Wed, 06 Sep 2023 15:32:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qduW4-0007Y8-8n
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 15:32:28 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0620.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::620])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 94ab3a5f-4cca-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 17:32:26 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB7120.eurprd04.prod.outlook.com (2603:10a6:800:124::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.28; Wed, 6 Sep
 2023 15:32:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 15:32:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 94ab3a5f-4cca-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=L9TRt6Adz2I9s62Ix2y3qdqbrkBvW7Y2xZSzi723PgEQur0QI+7m0XUYhu8hSIE+Bd9qYTMPwsG3Y0N7P5Kiv+MTAtxHi5PmdgGwR5LpjYJhQiSnjNEs08gb/a4VYSJTowAsP9e14E2Mz5FHx4M9AasS97lgGRs4EKN9JR4nto2Z+Z80IyGde12Z1RrbFGn9NnqVLipPdgvnNsO/rcQJtrykvou1Mhd7C+Ci0iNUWhejeYMMr+u5M0yc564h1Bt4xHD3F0eOIVNhYpcUxCiPPF8MWK0gUSEsaIC3xIGe+Ygi41KiyG5GHz1rA6eXvTunvmvvPsmoJgD/7UuD+/Xjyg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ptpIpSjfDcZazuS1CWcVHyuPjuxME/AUNX+LSBsJlvw=;
 b=W5wcxmpfcgcTECI0tWLgoAwJpMPByzKTQRejs1EKuhtd7TOc51GZ8tg7nRf8SnYGyhvwmawUuPT5+PwBiAuevD4mA3POT2YMMpvHrcPAIfGUJQi/XlxW8QhQ2r3mZQPb5MzU4Uey4U34gERgflfCdS3/dAoQeBwe2b+CpR8YXRy0RvWsjayyEiHXzkd+IJO+3tUpad4RTJPZ03vYRa9p9yfiI3TacgBAUqBZOKeow9sIVjty9VL6iK/MosrgruH5qxrU6AkdboXWyGXKGrVJqcGNKQZaU5TduniSzMbBp5u+SbDsFavaLH1626Yb7hm8xbWWAUdObhIqXzCHj0tsNg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ptpIpSjfDcZazuS1CWcVHyuPjuxME/AUNX+LSBsJlvw=;
 b=xiV2zzc0BegQjVy/Qo3brimN0gu5Sal5F3Amb7Ckze+9Bd8wCFwQ/8FU/r5QodaZT7J5FQFwjTVeEsetsE9my3yxiRubhxOCtxmr1/4PQAc9ALx3xyvv4CRZl5YxLQG4yTrZSkwJfWNZ3gIq1mdDm6sPvWH5FiXqQlJtAMmReF6Q94Q1R5TYghSwYfKSy3Ls6qybUTSuZ+ACKq5OdEsa/rWAgZhhowQUBND1EBnchTgIygMYQ0pwBH4mpvKImJ+SwhRRyBBw1rrInpk+3Bl4pYA40I1sGMkTovjJLZIJnZ2d+k0myNXJ4EFDQo+a9uRwg3K0hTc6dE0jFBlt3ZkluQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <fa3cf62a-2d91-c2d9-b475-e5c58a312e29@suse.com>
Date: Wed, 6 Sep 2023 17:32:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v2] MAINTAINERS: consolidate vm-event/monitor entry
Content-Language: en-US
To: Anthony PERARD <anthony.perard@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <e3ccc381-1fd5-b99c-e37e-5870af401dd0@suse.com>
 <09a93c71-28ed-4593-b8b4-fbb4d2a240f7@perard>
 <9a42f222-7803-aab6-99c2-6919fb1cc4c3@suse.com>
 <54be3f6e-3a54-4cbf-ae9a-9ceda5a0c5a0@perard>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <54be3f6e-3a54-4cbf-ae9a-9ceda5a0c5a0@perard>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0084.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1e::23) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB7120:EE_
X-MS-Office365-Filtering-Correlation-Id: 9bbfa008-6ecc-40a8-0d2b-08dbaeee77cd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+yUnIgm31a25+kjV7CLBh1J37YMI+keXn4MgB0LZ216V7A9vM0M9Lyt/uNd2oZ2tnPc2VCfO0SuiCqYxqutonPf0SolDhdeARwDM/tdDB+UvudttFDX+8cGikdStOTR0UXide1VD151WeciSqnj6IniwYbmxVYxoXWkcrObCGbBwFEMP9FTiCQNZrIiHFYI0Wnv1DYtv6KLKG26aQm7wOE1B8Q0jNWZUNL+fUE4ZbONUqUkA16kmgslG1uwHHQsoq2ACNSqYtFSK1ZKXnr+VpFw7olLtCF4mwi/Pq54/XuRY2JtlWU31lJ6yMYCGj9PKti7sGUWN8CVL1aNQBk53uQjvrpDxoSrUiZrZEtw0lTwFBUIKgDFRP85MXpGbqR+H4YPFj+/rUXbZxPOXdYza2Q79VZAn7vo2161m1ULw5pIYmAwJaTDnKsL0BGG7IXS2N7l4VPgER1PFROzLFwzUBbSGyxM0tkJU76hfFhnyulbCalwtE9+pj492mxK2YWY0empm3MK4j943/P4y00G2SUbgjcjM40/jKPvG9j+ULmhlOc7LMp3yEREasOenZ703F5bpFVquWCrHTmGP4FpqdAYODdxZ1FxTWAfxxKXx/WO96w61hNE/m7/DguUaRWkH4lS9lyTVR5CpcApBQMGthA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(366004)(376002)(396003)(346002)(39860400002)(186009)(1800799009)(451199024)(6506007)(2616005)(66556008)(478600001)(38100700002)(6486002)(66946007)(6666004)(66476007)(54906003)(53546011)(2906002)(6916009)(4326008)(6512007)(8936002)(8676002)(316002)(26005)(86362001)(5660300002)(31696002)(36756003)(83380400001)(41300700001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SEhOdnNTUkJKUTRXSTFLZUxqKzZnWUVSSERMRXhCZ29BWG03RTczc0g4SHZC?=
 =?utf-8?B?VE5CSkJxdWpFVUJNTXFubHMrOVovak5ISzgxM1EzekJFVm9hVVZOd2xVYlNl?=
 =?utf-8?B?ZnR3UnhXM0JycEFyTmo0THN1YXFLenRWaTA4a3VOQkpwUnVPL2hkQ1AwWTJh?=
 =?utf-8?B?Uk5DUDhyeERwbWV6a1BiU2IvUmp2YXpscDUyc3NEY2ZZbFpmUElyaENZTzZZ?=
 =?utf-8?B?NEp6N253aXpuYTRyTDhxMTUvSHhQT1ArQXJRL2RwdkR1SmhuSFVmcHVjZFhN?=
 =?utf-8?B?T3FrMjFXUFRmdHFVdGdvY1RnakJqSFhMUzJXMmpGN1E1WW51dkFncnpUd2VN?=
 =?utf-8?B?TTBtRnExUjhDc3BQQ3RWRlJNbDliZldxTjNZdVpPMmJra2E1T2lxWXJtQXRY?=
 =?utf-8?B?SHFCS1pBdUpIUXFrSlROYkl6c2hWK2w4QzF1ZzRRbnkvclhMeVBvc2M5c1lu?=
 =?utf-8?B?dHBLdWJEdnVjL1VWdWdGZnd1MGd5STQ1RlN3Yithek9kNUxyZUt5SHIrMmk4?=
 =?utf-8?B?NXJGcDdPMWp0R2xJemYrWnlua0pLbTRTMWdWZTdMQktGQzJCN21ORmJwNi9Z?=
 =?utf-8?B?R3cwTlQrNElhbjNjOWVCSE5RSCtxSitVSXJmQVB3c1VtbWcxUUVpbER0andT?=
 =?utf-8?B?b1Q0MlRxWXdxeXdubXdLK2JqSWNyK0RrTlUyZllvaEFxcVhOcVM0R2ZycEZZ?=
 =?utf-8?B?cnZjZFEyWlRHV2JvVUxTKzFndE5kS0w2ekY4Q0R1cUtseG9Ma0pQMjQzWXAx?=
 =?utf-8?B?L0o2WTVJZ0ZWeGNSUkhsNWRWc3pZVXEyUUh5Si9ZOVNpNmRsWUpMWkdkQVRx?=
 =?utf-8?B?Y3ZsUy9oMWxhdi94WTRtK0Rqakw5U3lZR3RLSHlVbW9QVXg5bk4yeGR1S0R3?=
 =?utf-8?B?dlNwSHFxY2hjMnVIVWNOVU9wS3FPRUlidXVXbFc1Mk9zQmY3ZnM0cTFVNW1W?=
 =?utf-8?B?b1hFcW0rRmIwaktzbHVMY1JtT3RUaG9ZOVhBYWU3VktHbUFMNjdiUXlXNnQ1?=
 =?utf-8?B?YnBGbmJRV1NiTXJhT2FPT0JZSnJsbloxaFExMkxmWkdtbnJLUytmdEhQRU5o?=
 =?utf-8?B?UUcxUlVhb0luTktuVVlHWVZMdC95NGVNdmhnTlRtT2xNMkJYcTV1L3VKVmI5?=
 =?utf-8?B?V3ByamJRNXZxOWtEUGZkVUVlOGVPREpGcHNJVWtGeDZma0h3dkpmQi84SUZX?=
 =?utf-8?B?UGRtdER6c09CTVlDMTFPcy8xRVpjTy9TZHU2emhFTEhsRDU0THd4ME9aYzMx?=
 =?utf-8?B?clZHRTd6enlKVm1YQUVhZkFJMDduUmtOaVRhcC9IZkpNQ242SFZsVXllN1gx?=
 =?utf-8?B?bEEzNXVka1llWHR2eVVNUzFMc285ZisrSEloY1N2VHFMK3BCTC9yeHFtSzJO?=
 =?utf-8?B?VVRHZGNBeHFueEx3VDY1ZkkzQ3RBWXhURm1ROEszaHM0SCs1ZUVNMDIybUYr?=
 =?utf-8?B?RkhtVGR1cXJnbHBCWVJ3d2FPVm50ODRZc21pNFozd2xRMDRMNzdOVlcxcUgw?=
 =?utf-8?B?YnpkTnUraUpkdjNYU0R5S2xQVWowWkM5TDI0a0FpM1JvMW9lTDZoNUpiVisz?=
 =?utf-8?B?RUYvQUQvZXkzekVDS2tkVXBmMDdJTk0wRmlkR2xWNEM0Q3JybytkUzBLRzNn?=
 =?utf-8?B?TGU5MVBnWTRQdldFT2k4SlYreHpOTjAveUVFNCt5M29FV3lqb01Zb3d5ZFlZ?=
 =?utf-8?B?VGh5cDFjc3RKSjkrZVBBVmxtTTRJT1AxRkwyaHkzMjVBbTNKdXQ3WWVGa2t5?=
 =?utf-8?B?NW5LbjRPdkw0dklZMTdNNldnVTdQcTIyU05sb3U2ZDV0dEdEZ3dDOGFSSWhu?=
 =?utf-8?B?VVB5M0xqTlR0dUlLSkxseWJoZHErK0tIeXJBemhNbFB1ZnBhVnZVNGkrTFJr?=
 =?utf-8?B?c21rOStqQVgxOG9zMmxLOEtGTGhnaTRZMTA2eHdHS0RlaVhiMGI0K3dGYlFB?=
 =?utf-8?B?d0hyZFdrdFQyVUpyTFhFOVJzNHdXeWhicXhPdTFsYWU5WUNqUG1uWXlPR1Bq?=
 =?utf-8?B?R2lISkFUUlVEUjVyTTNvRkY4Um1HN0RzM2Yrd3EwU05lQ053RFdKZzZxNmRj?=
 =?utf-8?B?SUh4WnUwYTQvenhKTXB3VVdURW5jT0gwTFdUVGlrY0xZWnE5UUhqaEJMbjlN?=
 =?utf-8?Q?Zq+OpMCR4Y0oAoZIO8/7pqnH9?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9bbfa008-6ecc-40a8-0d2b-08dbaeee77cd
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 15:32:23.9653
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Dzhx2+AVqTS7TCh5fLBl5pkB7UsZ37TQFhFt+gWpEtrhCfP7H0xn/1TK9ZtQga7MDC5+AIhrHcvTLl3iKjEh5A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7120

On 06.09.2023 16:45, Anthony PERARD wrote:
> On Wed, Sep 06, 2023 at 02:50:22PM +0200, Jan Beulich wrote:
>> On 06.09.2023 14:40, Anthony PERARD wrote:
>>> On Thu, Aug 31, 2023 at 08:15:13AM +0200, Jan Beulich wrote:
>>>> If the F: description is to be trusted, the two xen/arch/x86/hvm/
>>>> lines were fully redundant with the earlier wildcard ones. Arch header
>>>> files, otoh, were no longer covered by anything as of the move from
>>>> include/asm-*/ to arch/*/include/asm/. Further also generalize (by
>>>> folding) the x86- and Arm-specific mem_access.c entries.
>>>>
>>>> Finally, again assuming the F: description can be trusted, there's no
>>>> point listing arch/, common/, and include/ entries separately. Fold
>>>> them all.
>>>>
>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>> ---
>>>> -F:	xen/arch/*/monitor.c
>>>> -F:	xen/arch/*/vm_event.c
>>>> -F:	xen/arch/arm/mem_access.c
>>>> -F:	xen/arch/x86/include/asm/hvm/monitor.h
>>>> -F:	xen/arch/x86/include/asm/hvm/vm_event.h
>>>> -F:	xen/arch/x86/mm/mem_access.c
>>>> -F:	xen/arch/x86/hvm/monitor.c
>>>> -F:	xen/arch/x86/hvm/vm_event.c
>>>> -F:	xen/common/mem_access.c
>>>> -F:	xen/common/monitor.c
>>>> -F:	xen/common/vm_event.c
>>>> -F:	xen/include/*/mem_access.h
>>>> -F:	xen/include/*/monitor.h
>>>> -F:	xen/include/*/vm_event.h
>>>> +F:	xen/*/mem_access.[ch]
>>>> +F:	xen/*/monitor.[ch]
>>>> +F:	xen/*/vm_event.[ch]
>>>
>>>
>>> Hi,
>>>
>>> Did you mean to for example change the maintainer ship of
>>> "xen/arch/x86/mm/mem_access.c"? Before it was:
>>>     - VM EVENT, MEM ACCESS and MONITOR
>>>     - X86 MEMORY MANAGEMENT
>>>     - X86 ARCHITECTURE
>>> And now, it's just:
>>>     - X86 MEMORY MANAGEMENT
>>>     - X86 ARCHITECTURE
>>>
>>> (see ./scripts/get_maintainer.pl --sections -f xen/arch/x86/mm/mem_access.c)
>>>
>>> Also, now "xen/include/xen/monitor.h" is only "THE REST".
>>
>> No, no change of maintainership was intended. But there was an uncertainty,
>> which is why I said "assuming the F: description can be trusted". So ...
>>
>>> On the other hand, there's no change for "xen/common/monitor.c", so the
>>> pattern works for this particular file.
>>
>> ... together with this observation, I take it that
>>
>> 	   F:	*/net/*		all files in "any top level directory"/net
>>
>> is actually at best misleading / ambiguous - I read it as not just a single
>> level of directories, but it may well be that that's what is meant. At
> 
> I guess the ambiguity would lie in the word "files". Here, "files" is a
> single file and not a directory, unlike the shell globing which would
> include directories with a '*'.
> 
> The first '*' is described at "any top level directory", but it is also
> "only top level directory". This kind of tells me that there is only a
> single level of directories that is match by '*'.
> 
>> which point the question is how "any number of directories" could be
>> expressed. Would **/ or .../**/... work here? I'm afraid my Perl is far
>> from sufficient to actually spot where (and hence how) this is handled in
>> the script.
> 
> I think you could write a regexp with the "N:" type instead of "F:".
> This is described Linux's MAINTAINERS file, but not ours, yet our
> get_maintainer.pl script has the functionality. It might be nice to be
> able to write just '**' but until someone implement that, we could go
> for a regex, which is more complicated and more prone to mistake.
> 
> So I think in the short-term, you want:
> 
> N:	^xen/.*/mem_access\.[ch]$
> N:	^xen/.*/monitor\.[ch]$
> N:	^xen/.*/vm_event\.[ch]$

Except that as per Linux'es description F: and N: differ beyond how
file names are expressed / matched. I don't think I want to be the
one to introduce something which I've been complaining about on the
Linux side (people being Cc-ed just because at some point they ended
up touching a file).

I conclude that for the time being I ought to revert that change of
mine.

Jan

> As for adding "**", there's maybe something to do with
> "file_match_pattern()" in get_maintainer.pl, this function compare the
> number of '/' in both the pattern and the filepath to find out if a '*'
> only match one level of directory or more.
> 
> Cheers,
> 



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 15:38:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 15:38:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596690.930673 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdubL-0008OA-K5; Wed, 06 Sep 2023 15:37:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596690.930673; Wed, 06 Sep 2023 15:37:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdubL-0008O3-Gr; Wed, 06 Sep 2023 15:37:55 +0000
Received: by outflank-mailman (input) for mailman id 596690;
 Wed, 06 Sep 2023 15:37:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z0AC=EW=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qdubJ-0008Nx-KK
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 15:37:53 +0000
Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com
 [2a00:1450:4864:20::329])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 576613f7-4ccb-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 17:37:52 +0200 (CEST)
Received: by mail-wm1-x329.google.com with SMTP id
 5b1f17b1804b1-40078c4855fso37354465e9.3
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 08:37:52 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 l7-20020a7bc447000000b003fe1fe56202sm20188916wmi.33.2023.09.06.08.37.51
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 08:37:51 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 576613f7-4ccb-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694014672; x=1694619472; darn=lists.xenproject.org;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date:from:to
         :cc:subject:date:message-id:reply-to;
        bh=2FjIkkAy8Zh8ff2sYnmAJ7p+TkkrrblMmn/6YWfJ/Dw=;
        b=RWlJsx858Fl+51PdjlvfHgeLbuKVutJJJFNVLCD2dQwdfMa5VBHMt3pdU9U25CJ7GL
         TIEnjHdQVSFZoFo+BIziKLEbSTHgP4WPtFf4O7vwNH4ASQlJAQYKC7/sthkuZT06iASd
         ovlgF9h3xR1+CBSQtK0wpOyEG6ucQwh2iP3pY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694014672; x=1694619472;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=2FjIkkAy8Zh8ff2sYnmAJ7p+TkkrrblMmn/6YWfJ/Dw=;
        b=WIJvajG486oEEeRee1CYMKEumI2WRYWDQCne8VWo1gA1/Jo8QIAaLPdVqUUXJkC0yf
         T5LhTcT13AT5bnkv/FG7t8IXZrPeu0a92t9w7j4UY0P8DsOmiWYMJYDKK1NeO3MwzTL3
         PR1MU9dRb4pMUyTxeS4udxAKYrYtLBGYu2xWYDjeYtaJrzX7I5lfjKj4YYXKrEhyHi5X
         AB2hJ/t5AFRDEyrkQtG3xEMDW8JdqGM1XEx30gB+KD7aqhENCRMNNYHB1baxxE1tShKR
         e8lHXwuDaJKXSAduQ3229P80F1HnUwd1pYuswv7eLj4t1sgqRMdCQx2Iawi9C2ryyzu8
         nQfQ==
X-Gm-Message-State: AOJu0YwUL9VAu1P+Sv1YL8rzs3eN68AxKwxoOSmU1QFlYZTPllFyxL4i
	01OfCU1+dd5dq+IH+oMsmbBopA==
X-Google-Smtp-Source: AGHT+IERmqEwZ2sg25rG6T6WukPvIdAL/TPinw5G3bKeyqhcm+xA11nQ6ulDrVKqj4pFBwMxJZ5/Zw==
X-Received: by 2002:a7b:c4d1:0:b0:3fd:3006:410b with SMTP id g17-20020a7bc4d1000000b003fd3006410bmr2644172wmk.34.1694014671976;
        Wed, 06 Sep 2023 08:37:51 -0700 (PDT)
Date: Wed, 6 Sep 2023 16:37:51 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
Cc: Oleksii <oleksii.kurochko@gmail.com>,
	Xen-devel <xen-devel@lists.xenproject.org>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Bob Eshleman <bobbyeshleman@gmail.com>,
	Alistair Francis <alistair.francis@wdc.com>,
	Connor Davis <connojdavis@gmail.com>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
Message-ID: <1f31335f-3c1f-4998-bb6d-5e5e743758be@perard>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
 <3DCD5649-C172-4400-AA75-A28F5C0A106D@arm.com>
 <b90c2e4dc9ec84ef6487f1dd980d7858d7903e89.camel@gmail.com>
 <E2C450BC-F080-41DB-B025-9DD1949C835A@arm.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <E2C450BC-F080-41DB-B025-9DD1949C835A@arm.com>

On Wed, Sep 06, 2023 at 01:03:32PM +0000, Bertrand Marquis wrote:
> > On 6 Sep 2023, at 13:37, Oleksii <oleksii.kurochko@gmail.com> wrote:
> > On Mon, 2023-09-04 at 13:39 +0000, Bertrand Marquis wrote:
> >>> diff --git a/xen/scripts/Makefile.asm-generic
> >>> b/xen/scripts/Makefile.asm-generic
> >>> new file mode 100644
> >>> index 0000000000..0aac3f50b8
> >>> --- /dev/null
> >>> +++ b/xen/scripts/Makefile.asm-generic
> >>> +
> >>> +$(obj)/%.h:
> >>> + $(call cmd,wrap)
> >> 
> >> In fact i think your files are not generated in the srctree so this
> >> will break if you use out of tree compilation.
> > I checked that and in both cases it generated in correct place.
> > 
> > First case:
> > $ CONTAINER_NO_PULL=1 CONTAINER=riscv64
> > ./automation/scripts/containerize make XEN_TARGET_ARCH=riscv64 -C xen
> > build
> > 
> > $ ls -la xen/arch/riscv/include/generated/asm/vm_event.h 
> > -rw-r--r--. 1 ok ok 34 вер  6 14:32
> > xen/arch/riscv/include/generated/asm/vm_event.h
> > 
> > Second case: ( out-of-tree )
> > $ CONTAINER_NO_PULL=1 CONTAINER=riscv64
> > ./automation/scripts/containerize make O=xen_build
> > XEN_TARGET_ARCH=riscv64 -C xen build V=1
> > 
> > $ ls -la xen/xen_build/arch/riscv/include/generated/asm/vm_event.h 
> > -rw-r--r--. 1 ok ok 34 вер  6 14:34
> > xen/xen_build/arch/riscv/include/generated/asm/vm_event.h
> > 
> > Could you please clarify if there's somithing I might have overlooked?
> 
> No I do not think you did.
> 
> So obj is empty I would guess.
> Anyway you just need to make sure that CFLAGS is coherent with what you generate.
> So if you generate in $(obj) you need to make sure you use the same in CFLAGS i would say.
> 
> @anthony: any advice here ?

The use of $(obj) looks fine here. $(obj) is temporary and set for a
single subdirectory. $(obj) is set by whatever is calling
"Makefile.asm-generic", or "Rules.mk" is other cases.

In this patch, you can see $(obj) been set in "xen/Makefile":
    $(MAKE) -f $(srctree)/scripts/Makefile.asm-generic obj=arch/$(SRCARCH)/include/generated/asm

Another thing to know, `make` runs from the build directory, so in
Oleksii second case, `make` is running in "xen/xen_build", so $(obj) point
to a directory within the build directory.

For the CFLAGS, we can use $(objtree) (even if it is just "."), which
always point to the top directory of the build tree.

I hope that clarifies things.

Cheers,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 15:56:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 15:56:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596699.930687 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdutP-0003jc-3B; Wed, 06 Sep 2023 15:56:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596699.930687; Wed, 06 Sep 2023 15:56:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdutO-0003jV-Vn; Wed, 06 Sep 2023 15:56:34 +0000
Received: by outflank-mailman (input) for mailman id 596699;
 Wed, 06 Sep 2023 15:56:33 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdutN-0003jJ-JN; Wed, 06 Sep 2023 15:56:33 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdutN-00025v-Gt; Wed, 06 Sep 2023 15:56:33 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdutN-0001Wi-5H; Wed, 06 Sep 2023 15:56:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdutN-0008Ke-4p; Wed, 06 Sep 2023 15:56:33 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=yEGaY3I3y+1cl+oRxf1ejgRoIWpEI7m+8Ed7pv9Wqhc=; b=AzMt+5XuzeV9E6SsULoV90wZ80
	MGfcVgfMeSK9ha//FqL9/Z9feqCPzb+Y88UGHtXFyZeJabeTr5zoLiy2AvcZ7hbf24JgX7NN+vL0J
	5mHZsOYltR6UAREAxs60xEVbdHOmRQsOUNOKB3aVo01BPDIONSNnwwfvW59O1Ph7lcxg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182634-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.16-testing test] 182634: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-4.16-testing:test-armhf-armhf-xl-arndale:xen-boot:fail:heisenbug
    xen-4.16-testing:test-amd64-amd64-pygrub:guest-localmigrate/x10:fail:heisenbug
    xen-4.16-testing:test-amd64-i386-qemuu-rhel6hvm-amd:guest-start/redhat.repeat:fail:heisenbug
    xen-4.16-testing:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug
    xen-4.16-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=d720c2310a7ac8878c01fe9d9fdc13f43cb266b3
X-Osstest-Versions-That:
    xen=b9ad687bfd0a49f36e0dd9f038e73782595fb4af
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 15:56:33 +0000

flight 182634 xen-4.16-testing real [real]
flight 182673 xen-4.16-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182634/
http://logs.test-lab.xenproject.org/osstest/logs/182673/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-arndale   8 xen-boot            fail pass in 182673-retest
 test-amd64-amd64-pygrub   19 guest-localmigrate/x10 fail pass in 182673-retest
 test-amd64-i386-qemuu-rhel6hvm-amd 14 guest-start/redhat.repeat fail pass in 182673-retest
 test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat fail pass in 182673-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-arndale 15 migrate-support-check fail in 182673 never pass
 test-armhf-armhf-xl-arndale 16 saverestore-support-check fail in 182673 never pass
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182236
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182236
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182236
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182236
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182236
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182236
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182236
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182236
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182236
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182236
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182236
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182236
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 xen                  d720c2310a7ac8878c01fe9d9fdc13f43cb266b3
baseline version:
 xen                  b9ad687bfd0a49f36e0dd9f038e73782595fb4af

Last test of basis   182236  2023-08-08 17:08:09 Z   28 days
Testing same since   182634  2023-09-05 12:36:55 Z    1 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bertrand Marquis <bertrand.marquis@arm.com>
  Julien Grall <jgrall@amazon.com>
  Stefano Stabellini <stefano.stabellini@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           fail    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   b9ad687bfd..d720c2310a  d720c2310a7ac8878c01fe9d9fdc13f43cb266b3 -> stable-4.16


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 15:57:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 15:57:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596706.930699 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qduuK-0004Ka-Cq; Wed, 06 Sep 2023 15:57:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596706.930699; Wed, 06 Sep 2023 15:57:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qduuK-0004KT-9l; Wed, 06 Sep 2023 15:57:32 +0000
Received: by outflank-mailman (input) for mailman id 596706;
 Wed, 06 Sep 2023 15:57:31 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z0AC=EW=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qduuJ-000484-Cp
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 15:57:31 +0000
Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com
 [2a00:1450:4864:20::32f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1502e17f-4cce-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 17:57:29 +0200 (CEST)
Received: by mail-wm1-x32f.google.com with SMTP id
 5b1f17b1804b1-402c46c49f4so295425e9.1
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 08:57:29 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 z17-20020a7bc7d1000000b003fbdbd0a7desm23105003wmk.27.2023.09.06.08.57.28
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 08:57:28 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1502e17f-4cce-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694015849; x=1694620649; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=4dVXiwVZicyHglN317uBSG6mEMzddD/hGrTGZqODuXs=;
        b=XdU4kFTZ+KX30zmkPDI8i7KeeK8uV6hpSdTQxWjfrb1abs/Zh4/q9B5CYg9YVsOK/C
         RH6b64Odt+gtH/jHbLbhVziZzKa8bs/fj+UKtf7zc+K3VxTRtFOQwrA97xHQz7h9yEkN
         qVLPeLGtnZJ5n2+Gae8/EbxDY2WfZTNjntnZg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694015849; x=1694620649;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=4dVXiwVZicyHglN317uBSG6mEMzddD/hGrTGZqODuXs=;
        b=dh0bLoACSNtPZHF+NiW+Y9Edv+g7p6kg7RcNes1FFiGWhjEI21PQJchTGDkaqghJRr
         tOQ+X6aw2vh2qJcWpXpe+hP6Xkn/KGnwy9vZ0HB/9BfXt+/wgJcftjToCtqujkvuiqM1
         vIXNFe8xyK0pGWezCnkdAtoY8j/U0RGwDgpyF+ko/x5BY+vMPu8yvxbdmXWckoyhiq0r
         4vpYR9rKzhIccqjhLR31rMhSzF72JSS23GlKJ+IFVHmKCSOaga/6K1R5W9VVFIzljTmW
         5TgF6HLhOd7ZbLPJw4XkiCBhrV5KYiH0y9O6aebRj6cuTEo72eV+92ajI0f0VQ2Y5lU8
         Z0AQ==
X-Gm-Message-State: AOJu0Yw8K/bbH8cWTCzdIXTlptWT1Q1RSwv+0IGvbH7VaCVtrignOS/X
	dd37PQJInaGujyWS+285xtdP0g==
X-Google-Smtp-Source: AGHT+IG3JXq3DlAWqoOIz3tzS5B05Vnllm4LO5KMDwEhtfs62GOpKk/PEssztM7odsQkhDRX9zs7Eg==
X-Received: by 2002:a7b:c4ce:0:b0:401:23fc:1f92 with SMTP id g14-20020a7bc4ce000000b0040123fc1f92mr2629063wmk.25.1694015849068;
        Wed, 06 Sep 2023 08:57:29 -0700 (PDT)
Date: Wed, 6 Sep 2023 16:57:28 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Bob Eshleman <bobbyeshleman@gmail.com>,
	Alistair Francis <alistair.francis@wdc.com>,
	Connor Davis <connojdavis@gmail.com>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
Message-ID: <d6f68239-b918-4f6f-b287-b2a022aaf355@perard>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>

On Fri, Sep 01, 2023 at 07:02:14PM +0300, Oleksii Kurochko wrote:
> diff --git a/xen/Makefile b/xen/Makefile
> index f57e5a596c..698d6ddeb8 100644
> --- a/xen/Makefile
> +++ b/xen/Makefile
> @@ -667,6 +669,12 @@ endif # need-sub-make
>  PHONY += FORCE
>  FORCE:
>  
> +# Support for using generic headers in asm-generic
> +PHONY += asm-generic
> +asm-generic:
> +	$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.asm-generic \
> +	            obj=arch/$(SRCARCH)/include/generated/asm

Could you introduce a $(asm-generic) macro in Kbuild.include like we
already have for $(build) and $(clean)? As I think it would be nicer to
have
	$(Q)$(MAKE) $(asm-generic)=arch/$(SRCARCH)/include/generated/asm
in the main makefile.

Also, could you move the rule "asm-generic" within the "!config-build"
part of the Makefile? Somewhere around the rule for $(TARGET), maybe
just after the rule "_distclean".

Cheers,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 15:57:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 15:57:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596708.930710 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qduuL-0004bc-Pn; Wed, 06 Sep 2023 15:57:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596708.930710; Wed, 06 Sep 2023 15:57:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qduuL-0004bV-Mg; Wed, 06 Sep 2023 15:57:33 +0000
Received: by outflank-mailman (input) for mailman id 596708;
 Wed, 06 Sep 2023 15:57:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=T1xS=EW=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qduuL-0004Hn-1B
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 15:57:33 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 166d72b9-4cce-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 17:57:32 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 775FA4EE0737;
 Wed,  6 Sep 2023 17:57:31 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 166d72b9-4cce-11ee-8783-cb3800f73035
MIME-Version: 1.0
Date: Wed, 06 Sep 2023 17:57:31 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
In-Reply-To: <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 05/09/2023 10:33, Jan Beulich wrote:
> On 05.09.2023 10:20, Nicola Vetrini wrote:
>> On 05/09/2023 09:46, Jan Beulich wrote:
>>> On 05.09.2023 09:31, Nicola Vetrini wrote:
>>>> Given its use in the declaration
>>>> 'DECLARE_BITMAP(features, IOMMU_FEAT_count)' the argument
>>>> 'bits' has essential type 'enum iommu_feature', which is not
>>>> allowed by the Rule as an operand to the addition operator.
>>>> Given that its value can be represented by a signed integer,
>>>> the explicit cast resolves the violation.
>>> 
>>> Wait - why would this lead to a change to BITS_TO_LONGS()? And if 
>>> that
>>> was to be changed, why plain int? I don't think negative input makes
>>> sense there, and in principle I'd expect values beyond 4 billion to
>>> also be permissible (even if likely no such use will ever appear in a
>>> DECLARE_BITMAP(), but elsewhere it may make sense). Even going to
>>> "unsigned long" may be too limiting ...
>>> 
>> 
>> You have a point. I can think of doing it like this:
>> DECLARE_BITMAP(features, (int)IOMMU_FEAT_count)
>> on the grounds that the enum constant is representable in an int, and 
>> it
>> does not seem likely
>> to get much bigger.
>> Having an unsigned cast requires making the whole expression
>> essentially unsigned, otherwise Rule 10.4 is violated because
>> BITS_PER_LONG is
>> essentially signed. This can be done, but it depends on how
>> BITS_TO_LONGS will be/is used.
> 
> It'll need looking closely, yes, but I expect that actually wants to be 
> an
> unsigned constant. I wouldn't be surprised if some use of 
> DECLARE_BITMAP()
> appeared (or already existed) where the 2nd argument involves sizeof() 
> in
> some way.
> 

I think there's one with ARRAY_SIZE. In my opinion this can be resolved 
as follows:

#define BYTES_PER_LONG (1U << LONG_BYTEORDER) // the essential type gets 
from signed to unsigned

#define BITS_TO_LONGS(bits) \
         (((unsigned long long)(bits)+BITS_PER_LONG-1U)/BITS_PER_LONG) // 
same here

>>>> --- a/xen/include/xen/types.h
>>>> +++ b/xen/include/xen/types.h
>>>> @@ -23,7 +23,7 @@ typedef signed long ssize_t;
>>>>  typedef __PTRDIFF_TYPE__ ptrdiff_t;
>>>> 
>>>>  #define BITS_TO_LONGS(bits) \
>>>> -    (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>>>> +    (((int)(bits)+BITS_PER_LONG-1)/BITS_PER_LONG)
>>>>  #define DECLARE_BITMAP(name,bits) \
>>>>      unsigned long name[BITS_TO_LONGS(bits)]
>>>> 
>>> 
>>> Furthermore, as always - if this was to be touched, please take care
>>> of style violations (numerous missing blanks) at this occasion.
>> 
>> Then the whole file needs a cleanup.
> 
> Perhaps, but going as we touch things is generally deemed better than 
> doing
> a single cleanup-only patch. First and foremost to not unduly affect 
> the
> usefulness of "git blame" and alike.
> 

Ok

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 16:02:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 16:02:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596725.930720 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qduzO-0007bJ-Bm; Wed, 06 Sep 2023 16:02:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596725.930720; Wed, 06 Sep 2023 16:02:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qduzO-0007bC-96; Wed, 06 Sep 2023 16:02:46 +0000
Received: by outflank-mailman (input) for mailman id 596725;
 Wed, 06 Sep 2023 16:02:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=SxG1=EW=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qduzN-0007b6-Dp
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 16:02:45 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0623.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d079f5c3-4cce-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 18:02:44 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB7185.eurprd04.prod.outlook.com (2603:10a6:208:19d::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.32; Wed, 6 Sep
 2023 16:02:41 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 16:02:41 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d079f5c3-4cce-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iUurZB2cZ1YYvI+zD0typBMUNKbB7pVilajdsZaCcGEnNMmZWUtj8NOGOfBS5E9V1zdLZqXvvcQ2auHyw1ohxNaxjp8vIxn5+zfEZKMVJmQsnSTYVuhlyBGNxG41AJvb3JzTl/fWeTY+HDdZh3L+tSbXXYAaz2cjGkUYFEUFUPdQncwRvHWe9/LgYc7jOIi3EwGAW1D+eFrsDXxGR/4dek5q2PgT+nNcUfsyX/ZUjt+Lt/BHPoOzOt3o5U8w3pDoLjgcnHUQqynhRVW/6H+c2SGsvata4eNzjV/ds7nCu0lJZklN2e0Kj3jDSzpo8uXUO7HhZXKMWKv1gnpKeILGDA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=4kUAf5eefgN+wtm6KtzSqpbLfYJJM/3+zBWnQ6BscKg=;
 b=IswLhB+QVfO+wdTNY3TVT34iWPOT/FlaVUS/JT11wQZ9NTo2mJMARsLVgYr8Q8e6SmDPrRZ9iu4yyfpZSfPxKWLnzXOVulnF0yQ8x4xOsUpidcY0rs7dJvYNEFl/dpbqMoAJCOzJjbSJWDcIFu2+TjusOWbFYuYHgzk1y/hglAl0WN1k3BCi7+7NdZkrtCjK7NF8HmhcBM/y20BeYG74Xw45JIwmK6tGdGPV9yIvezkOuOCQEfURoMWUBtCdLQm4Y8rWUpMrGRuOEggyQqw6DYS4RnWC3RgE2xatlcOi72dLmyRee5GVetSOIiNnKX6RGVNGf+m+mZ3WC3VUv1n/CA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4kUAf5eefgN+wtm6KtzSqpbLfYJJM/3+zBWnQ6BscKg=;
 b=jLllryMrbtcS4yJk4SoAEVRVWY9t3lE/tV2CL9Gnd7E0uVcYpmUGjm33JlpEW4AjkQC5hZ4N67sK2SaICsr+kiFfAX4/3urfYJ0EhehyLVk9St2ywwwL8S+dWMAclT1PTZ9I67jKFTS7mC+B54kX6jee8FBM7R28r0fzQx6bRV0X3NJPETY2Lm9f0Sm7JmkZcSEboC+SnrskXP3zI47gtyH8V0QCVyRTn68A8XyLckLsSFsbJroH6S57FAM00DGuSVeST0pWbrbxzNC8lyAkZ60Gux/DXArbbHN3ebBBFrNSSoGXJwgtr+6fsXx0ydRmba/Ah7LIiFfau2FUMd1/5w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
Date: Wed, 6 Sep 2023 18:02:38 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0005.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a::15) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM0PR04MB7185:EE_
X-MS-Office365-Filtering-Correlation-Id: 88b4f1c6-f3ea-41ad-8f48-08dbaef2b31d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wVUXYxHs9kJk/QchOXazULDhHhgcLL5lGTWEcV1CkP1LaM0vEg7aAxpzuLH0shKzoL/E2AWwolLfUkbslAnABliqKKaCj0q+Tjj0kdvZA5y4mLXRxroOakFQ84PkZxNU6xB3CvlqR8WmzrmnFOOeGZgSYMF7+bq1/WtPUoAgZ65VGg9rbD1aBxaNUW+1y6WNFfRsfEdnWV7GNq117LPf6zO0GL3Y9wPDl4b7mpR2F/6nmwsY8fY0QjUg5xuWM6pODqHcDHbldEcB1R4FvjFe/zSjvte1DpX4Dtdzux4qUfuDbXMFHAvqGfbJbP2c+RwpPXoIQbu3GBhuULfXsVj5KhAnkVYQdDBIxRArl2uLr44+8JzRryfr3eLIOJe6vhR6wirWbQunRQsqupCn17CKHyKSqfIaH3MwyGGsm5T7dFRhsjf2Gnyjr866vd65j5B4/z9NHsKK85zzFIKbdBj3IVL82Iu9NFGB2Vcs9E1jHU8829xLFQkUYRMQ6daY4HnFAZbBe6VhqzxWyPg0yI6NpkAW7BQ+Jb6uS1M+xtmCW+Q17d6uGvvsJZmzWkvaTS9m22M66DFgixf6z0IWfc+lrPXXjlg4mgjduqmm3XAXXq+v4sI5msigvJONcgElPHaR5Ba71F+YopqMWJSRXZ4R2g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(396003)(376002)(346002)(136003)(186009)(451199024)(1800799009)(2616005)(478600001)(6666004)(66556008)(2906002)(8676002)(54906003)(66946007)(66476007)(6512007)(316002)(6506007)(26005)(6916009)(4326008)(8936002)(53546011)(6486002)(7416002)(41300700001)(31696002)(86362001)(38100700002)(36756003)(83380400001)(5660300002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?blZ5ZE1OWGdYZzhEZGt6T1daSDRpS0UxSGRkNkk1WWExSVduUDQ4K2wwRU9t?=
 =?utf-8?B?dmdBVXpNSFZjemo3MGpjZmhIUE9yMVlyODQzZlE2VEszZVhNS2gwVVJORCt0?=
 =?utf-8?B?RVdPVDE4ZzhHWHFEeHYvNVdsOU1EbmJ0TzR0WGVLek5PM3lyMFBwNld4cGRz?=
 =?utf-8?B?RFFEOEpkQlBXM2xwNHNhYWRkZ1BnTWoxZVd1QW9ScmpidjM1NVBCMHEyVVBX?=
 =?utf-8?B?TUJ3U0ZJMjZiSms3Y1VzK2xlQ3REa2dxVjdoWThQL3FBaFhxcktWT2NpVzBW?=
 =?utf-8?B?eVFOMFUybWpHQUNXZFBxV2NIY3JNV2lXU2NJQzVhVGs2bmIwWkhLb3pRRUc4?=
 =?utf-8?B?Y3ZFSGxUemtKU09obWpkb00xeFY0WWFLdFZxRXlqSnp2ZEZIS1VZVDQ5K0RB?=
 =?utf-8?B?UGNYZDAzTmpYb0FSLzNUWGpsRy9mdHAzTE1ldmMzSjBjS0hiMlcwMlhRdmEy?=
 =?utf-8?B?MjhGcGFHcDhHVEtaa01ha2VrNDNxWkpNbzFuSjFWTlRqSjJ4OENmSHNYWVZG?=
 =?utf-8?B?VkxNUkJ2YUtwKzhOL2VmQ3Q1eUU1SElEbjVMZGlyNTlTc1UzNGUzS2JrZGpx?=
 =?utf-8?B?WmNCK3c2SDVZay91TTFzYVVHTENPQnA1STJGTktxYkNlaS8rVk9vMnlJVkdv?=
 =?utf-8?B?UHB6aEpySUZWcDlBYXZUbGJURU84UGozak84REhCaDJac0YyY1JQK0EzRHgz?=
 =?utf-8?B?L0YzOFJoVnZGRGQxU0NEdDVxaXBNZlkwdTRhdVhTb0x0eTJRdUtJbGc5RzZs?=
 =?utf-8?B?OEpPRnM0dlR1REp6Ni9iTDZSeEVpT05ZRndqcjdCY0wzQzdLcjhhdGdERUVL?=
 =?utf-8?B?TS9mQ1dCRzZWa2h6U0srSHZ5cUdnd3puaFZxUE9zYTlTQ29rZ0hjTTNpcDVS?=
 =?utf-8?B?bmlEaURTTTU0cDRwdVFxOXZ4MUExbXMvYXZBZ05TdElWdXdaUEQxN0l4RzVm?=
 =?utf-8?B?aGRQdEJ5UnRTcGlBalZqaTNIcVFYNGNBbXFRS0ErZENyN1NOd0lLa0Y5dnd3?=
 =?utf-8?B?V1JoWnhTeE9Cd1dQeWNtYW5aR3cyelNFNVlYWTQwalM1ZnJYTktqSW80RG5o?=
 =?utf-8?B?UE1wdVI5dUZhaGhkUHdwbm9rOVpMYmpDYUU3VXAyaUhRbmpscHVDTnJrM2RR?=
 =?utf-8?B?MlhNTHkzNXZ1cXNTZU5jT2xBa1NoTEhRMnBpakZIZTBwbkJuRHdnNDJaejdp?=
 =?utf-8?B?LzE3Y3NtamR0Yk1PUHdmQUg4RDc5WkI2YkFNSTZjRFNBUTNyOE9ncW4xQllx?=
 =?utf-8?B?cTFKclpxNHl0cCtMUklzWDhTUTBncHg4eU9rWjJmVWlPSlJvczVrM0w4bEZW?=
 =?utf-8?B?VlZLYWFIcWczNDRLN2d1dVJiNFZKRzhIa0lNSFUzSXI0NFBGRmtzMlNUV0Vs?=
 =?utf-8?B?WlEwRTBVdGpOSUNUSTZ0eUgxYmdVZmhaNlJRNHYrZWx0V3U2ejJ2ZjV2eVdk?=
 =?utf-8?B?dXdVREFMY1ZsT2E3bTFlb1pqb0ZBTGg0QjN4S0p0Mks2ZkNwVUxJaDMxbkdk?=
 =?utf-8?B?MXhuRDhyTWVFR3RkdGc1RGY5Y3B2ZmZWT1ZaNkNFbEJkdGF2cWlDaVlUWkk2?=
 =?utf-8?B?SkpYd1Q4NXVIMWl5T1VXaHpwTzVzVFhLK1RLc1JsQUR6N243OHJNbmNERHAx?=
 =?utf-8?B?T05DNWwvRjlCNjBUTTFRWklqNDBpZWs4cHhmTnlNVEQxV1dzSTc0cXZMWHE0?=
 =?utf-8?B?UGZZelRXVkZRbjlLekhCMWlYbzFJT1V2UG5hOWowVmJwM2pRM0ZLdkQ1UE5q?=
 =?utf-8?B?YjFKa0R4NDh2eVF5eVBkRTNGcnZYOCtvTFBab2haaUNPcXU3ZU9QRGhtU1hl?=
 =?utf-8?B?WEYyaXdRcnpGdjZLUHorWGRxVjY4VmNjTXo5Sy9MRjVmQU5uVFdNc2RWN1Z2?=
 =?utf-8?B?QTRjVWduVkNOL1laTGpnT1BodlRwdFhxOVRHYzFzNVdEcmlOY29NOXJLenQ4?=
 =?utf-8?B?aDZlVWVMVVJzYXViL1Z4NzVlaUxUT2RwVDVFR0h1VlVnVFp1VXBNbGFqOWxs?=
 =?utf-8?B?d21Fd1h6MkVwNFVpNnhCVjBJcmpvU3h3M3RZOHJCeis5dXF0Vjhra2IvdkNi?=
 =?utf-8?B?TmRrbnRsZXo1SXVVMGtwWFJnMml4MHE2ZlJ5Y3pNSHBPVDlERHBJcUVLbzdo?=
 =?utf-8?Q?nB78w06AkP+dEk0upg+Wi8OQr?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 88b4f1c6-f3ea-41ad-8f48-08dbaef2b31d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 16:02:41.4504
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: F9bq3/EhTHrTjuRKoJT5XvCHHZah2TI3bREV8vUH0E1SiTIdyPDMEbpyJXd7QxBv8SiPQqfK7YrrQ82vuu5UWQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB7185

On 06.09.2023 17:57, Nicola Vetrini wrote:
> On 05/09/2023 10:33, Jan Beulich wrote:
>> On 05.09.2023 10:20, Nicola Vetrini wrote:
>>> On 05/09/2023 09:46, Jan Beulich wrote:
>>>> On 05.09.2023 09:31, Nicola Vetrini wrote:
>>>>> Given its use in the declaration
>>>>> 'DECLARE_BITMAP(features, IOMMU_FEAT_count)' the argument
>>>>> 'bits' has essential type 'enum iommu_feature', which is not
>>>>> allowed by the Rule as an operand to the addition operator.
>>>>> Given that its value can be represented by a signed integer,
>>>>> the explicit cast resolves the violation.
>>>>
>>>> Wait - why would this lead to a change to BITS_TO_LONGS()? And if 
>>>> that
>>>> was to be changed, why plain int? I don't think negative input makes
>>>> sense there, and in principle I'd expect values beyond 4 billion to
>>>> also be permissible (even if likely no such use will ever appear in a
>>>> DECLARE_BITMAP(), but elsewhere it may make sense). Even going to
>>>> "unsigned long" may be too limiting ...
>>>>
>>>
>>> You have a point. I can think of doing it like this:
>>> DECLARE_BITMAP(features, (int)IOMMU_FEAT_count)
>>> on the grounds that the enum constant is representable in an int, and 
>>> it
>>> does not seem likely
>>> to get much bigger.
>>> Having an unsigned cast requires making the whole expression
>>> essentially unsigned, otherwise Rule 10.4 is violated because
>>> BITS_PER_LONG is
>>> essentially signed. This can be done, but it depends on how
>>> BITS_TO_LONGS will be/is used.
>>
>> It'll need looking closely, yes, but I expect that actually wants to be 
>> an
>> unsigned constant. I wouldn't be surprised if some use of 
>> DECLARE_BITMAP()
>> appeared (or already existed) where the 2nd argument involves sizeof() 
>> in
>> some way.
>>
> 
> I think there's one with ARRAY_SIZE. In my opinion this can be resolved 
> as follows:
> 
> #define BYTES_PER_LONG (1U << LONG_BYTEORDER) // the essential type gets 
> from signed to unsigned
> 
> #define BITS_TO_LONGS(bits) \
>          (((unsigned long long)(bits)+BITS_PER_LONG-1U)/BITS_PER_LONG) // 
> same here

Except, as said before, I consider any kind of cast on "bits" latently
problematic.

Jan



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 16:41:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 16:41:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596739.930750 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdvb9-0006Qi-F5; Wed, 06 Sep 2023 16:41:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596739.930750; Wed, 06 Sep 2023 16:41:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdvb9-0006Qb-CU; Wed, 06 Sep 2023 16:41:47 +0000
Received: by outflank-mailman (input) for mailman id 596739;
 Wed, 06 Sep 2023 16:41:45 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdvb7-0006QR-Mq; Wed, 06 Sep 2023 16:41:45 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdvb7-0003hq-L4; Wed, 06 Sep 2023 16:41:45 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdvb7-0003VY-Ed; Wed, 06 Sep 2023 16:41:45 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdvb7-0005H6-E2; Wed, 06 Sep 2023 16:41:45 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=MW4pGcluimJr68VnBYEskm18eR4Q6GSgciOzoOQbjKw=; b=3wBiHy5jUxei/AySBPd4Lay3vm
	PNoXKpXm1xe8xCe33Z/NG7265q5jiNjEbtR0zy75uJxlwgr+jaYGbLDEgoj+sG77wInG8gfY4rFKt
	1+9EOT9+CwWORCqf/3mtraJk9Dz/94fhAS7YIAQLBviaJfgU7GraelMhA67xJkBoj7Ls=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182665-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182665: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=4d196352f35ac516b477e568265b4e537b0283d8
X-Osstest-Versions-That:
    ovmf=d1e4a16f868fb1ccfa8bed8eaba5f9617ec8382d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 16:41:45 +0000

flight 182665 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182665/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 4d196352f35ac516b477e568265b4e537b0283d8
baseline version:
 ovmf                 d1e4a16f868fb1ccfa8bed8eaba5f9617ec8382d

Last test of basis   182654  2023-09-06 08:12:34 Z    0 days
Testing same since   182665  2023-09-06 11:10:57 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Mike Beaton <mjsbeaton@gmail.com>
  Oliver Smith-Denny <osde@linux.microsoft.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   d1e4a16f86..4d196352f3  4d196352f35ac516b477e568265b4e537b0283d8 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 16:46:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 16:46:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596749.930764 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdvfQ-0007ID-1P; Wed, 06 Sep 2023 16:46:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596749.930764; Wed, 06 Sep 2023 16:46:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdvfP-0007I1-Ug; Wed, 06 Sep 2023 16:46:11 +0000
Received: by outflank-mailman (input) for mailman id 596749;
 Wed, 06 Sep 2023 16:46:10 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdvfO-0007Hr-K2; Wed, 06 Sep 2023 16:46:10 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdvfO-0003mt-IQ; Wed, 06 Sep 2023 16:46:10 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdvfO-0003eT-1Z; Wed, 06 Sep 2023 16:46:10 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdvfO-0006jE-19; Wed, 06 Sep 2023 16:46:10 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=cUdcZxSUxv9PZJgxcjvSe3ExxGw12WyBfbTRQH833Kg=; b=Xt+frmaiguKKZqtIPypstt+3Rp
	N8r9ypkNo4FH5EESZaSGJzLe+w7Ytb5WLIMBD6K+2rTi1TDMzOp0iRDWP2TN48xiAdTOMSCVlIuaJ
	C54zjlUaUaytURI9k+zxAWOooBdEviOlTqqpkDJ0NmM3C9XU03GnZvFdtjqiZSto5cjY=;
To: xen-devel@lists.xenproject.org
Subject: [xen-unstable-smoke bisection] complete build-amd64
Message-Id: <E1qdvfO-0006jE-19@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 16:46:10 +0000

branch xen-unstable-smoke
xenbranch xen-unstable-smoke
job build-amd64
testid xen-build

Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  61765a07e3d8a4dabbb8323b55f13ee75c80e54a
  Bug not present: aa7354beb1238e68126815e060f7d5ccda48fcb8
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182682/


  commit 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
  Author: Vikram Garhwal <vikram.garhwal@amd.com>
  Date:   Tue Sep 5 18:16:30 2023 -0700
  
      tools/xl: Add new xl command overlay for device tree overlay support
      
      Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
      Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/xen-unstable-smoke/build-amd64.xen-build.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/xen-unstable-smoke/build-amd64.xen-build --summary-out=tmp/182682.bisection-summary --basis-template=182635 --blessings=real,real-bisect,real-retry xen-unstable-smoke build-amd64 xen-build
Searching for failure / basis pass:
 182661 fail [host=himrod0] / 182635 [host=godello0] 182631 [host=himrod2] 182596 [host=himrod2] 182577 [host=himrod2] 182565 ok.
Failure / basis pass flights: 182661 / 182565
(tree with no url: minios)
(tree with no url: ovmf)
(tree with no url: seabios)
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.git
Tree: xen git://xenbits.xen.org/xen.git
Latest 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
Basis pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 e5522c71beaa83f2f5d2118724ace9f90c22e583
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://xenbits.xen.org/qemu-xen.git#0df9387c8983e1b1e72d8c574356f572342c03e6-0df9387c8983e1b1e72d8c574356f572342c03e6 git://xenbits.xen.org/xen.git#e5522c71beaa83f2f5d2118724ace9f90c22e583-61765a07e3d8a4dabbb8323b55f13ee75c80e54a
Loaded 5001 nodes in revision graph
Searching for test results:
 182565 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 e5522c71beaa83f2f5d2118724ace9f90c22e583
 182577 [host=himrod2]
 182596 [host=himrod2]
 182631 [host=himrod2]
 182635 [host=godello0]
 182641 [host=himrod2]
 182644 [host=himrod2]
 182645 [host=himrod2]
 182647 [host=himrod2]
 182648 [host=himrod2]
 182649 [host=himrod2]
 182651 [host=himrod2]
 182652 [host=himrod2]
 182653 [host=himrod2]
 182655 [host=himrod2]
 182646 fail 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
 182656 [host=himrod2]
 182657 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 e5522c71beaa83f2f5d2118724ace9f90c22e583
 182659 fail 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
 182662 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 427b6a571cd275015c201abd5b6a7843452d95a0
 182663 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 3b27fff436394762b9bc71fbddf075d276fcceb5
 182666 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 7e5c4a8b86f12942de0566b1d61f71d15774364b
 182668 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 f61243530e2a1e10f9414653d37d99df61fd88ad
 182670 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 aa7354beb1238e68126815e060f7d5ccda48fcb8
 182661 fail 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
 182672 fail 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
 182676 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 aa7354beb1238e68126815e060f7d5ccda48fcb8
 182678 fail 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
 182680 pass 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 aa7354beb1238e68126815e060f7d5ccda48fcb8
 182682 fail 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
Searching for interesting versions
 Result found: flight 182565 (pass), for basis pass
 For basis failure, parent search stopping at 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 aa7354beb1238e68126815e060f7d5ccda48fcb8, results HASH(0x55e77971b6f0) HASH(0x55e7797221b0) HASH(0x55e779781658) For basis failure, parent search stopping at 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 f61243530e2a1e10f9414653d37d99df61fd88ad, results HASH(0x55e7796fd478) For basis failure, parent search stopping at 3d273dd05e51e5a1\
 ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 7e5c4a8b86f12942de0566b1d61f71d15774364b, results HASH(0x55e7797184c0) For basis failure, parent search stopping at 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 3b27fff436394762b9bc71fbddf075d276fcceb5, results HASH(0x55e7797164b8) For basis failure, parent search stopping at 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 427b6a571cd275015c201abd5b6a7843452d95\
 a0, results HASH(0x55e779712000) For basis failure, parent search stopping at 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 e5522c71beaa83f2f5d2118724ace9f90c22e583, results HASH(0x55e7797090b8) HASH(0x55e7797124a8) Result found: flight 182646 (fail), for basis failure (at ancestor ~2059)
 Repro found: flight 182657 (pass), for basis pass
 Repro found: flight 182659 (fail), for basis failure
 0 revisions at 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 aa7354beb1238e68126815e060f7d5ccda48fcb8
No revisions left to test, checking graph state.
 Result found: flight 182670 (pass), for last pass
 Result found: flight 182672 (fail), for first failure
 Repro found: flight 182676 (pass), for last pass
 Repro found: flight 182678 (fail), for first failure
 Repro found: flight 182680 (pass), for last pass
 Repro found: flight 182682 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  61765a07e3d8a4dabbb8323b55f13ee75c80e54a
  Bug not present: aa7354beb1238e68126815e060f7d5ccda48fcb8
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182682/


  commit 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
  Author: Vikram Garhwal <vikram.garhwal@amd.com>
  Date:   Tue Sep 5 18:16:30 2023 -0700
  
      tools/xl: Add new xl command overlay for device tree overlay support
      
      Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
      Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>

Revision graph left in /home/logs/results/bisect/xen-unstable-smoke/build-amd64.xen-build.{dot,ps,png,html,svg}.
----------------------------------------
182682: tolerable ALL FAIL

flight 182682 xen-unstable-smoke real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/182682/

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 build-amd64                   6 xen-build               fail baseline untested


jobs:
 build-amd64                                                  fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 17:32:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 17:32:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596764.930789 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdwNc-0006X9-Iz; Wed, 06 Sep 2023 17:31:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596764.930789; Wed, 06 Sep 2023 17:31:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdwNc-0006X2-G6; Wed, 06 Sep 2023 17:31:52 +0000
Received: by outflank-mailman (input) for mailman id 596764;
 Wed, 06 Sep 2023 17:31:51 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdwNb-0006Ws-74; Wed, 06 Sep 2023 17:31:51 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdwNb-0004ix-4K; Wed, 06 Sep 2023 17:31:51 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdwNa-0004pu-S2; Wed, 06 Sep 2023 17:31:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdwNa-0007B8-Rd; Wed, 06 Sep 2023 17:31:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=YfWk3zDC59uaFxVbJxabhfShOoyXK9q4LoCBnhA8tNw=; b=oX/x+8c9ElXkjcObn0DAz3cePw
	qHF0X3/Jah4Y6ZD0O6UEfxfJbE04uekdiODe/OCGHjA2s/xnydq3q8qt+oGtx9O1RKRs0qZcdRk2y
	wWMOIgCMxb0YeKDqtSgPPlmk+Hxk7ORifA86LjkPF9NDNEJXtXrvW1N5lnKwizN4NF70=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182674-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182674: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=d8c3ff585b9fd10200b05aca77139de2789d0517
X-Osstest-Versions-That:
    xen=9a216e92de9f9011097e4f1fb55ff67ba0a21704
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 17:31:50 +0000

flight 182674 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182674/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  d8c3ff585b9fd10200b05aca77139de2789d0517
baseline version:
 xen                  9a216e92de9f9011097e4f1fb55ff67ba0a21704

Last test of basis   182635  2023-09-05 13:00:27 Z    1 days
Failing since        182641  2023-09-06 02:02:08 Z    0 days    4 attempts
Testing same since   182674  2023-09-06 14:00:33 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  David Gibson <david@gibson.dropbear.id.au>
  Henry Wang <Henry.Wang@arm.com>
  Julien Grall <jgrall@amazon.com>
  Juline Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@amd.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stewart Hildebrand <stewart.hildebrand@amd.com>
  Vikram Garhwal <fnu.vikram@xilinx.com>
  Vikram Garhwal <vikram.garhwal@amd.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   9a216e92de..d8c3ff585b  d8c3ff585b9fd10200b05aca77139de2789d0517 -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 18:21:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 18:21:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596777.930811 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdx9p-0004sW-Bz; Wed, 06 Sep 2023 18:21:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596777.930811; Wed, 06 Sep 2023 18:21:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdx9p-0004sP-9M; Wed, 06 Sep 2023 18:21:41 +0000
Received: by outflank-mailman (input) for mailman id 596777;
 Wed, 06 Sep 2023 18:21:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ftD0=EW=gmail.com=jandryuk@srs-se1.protection.inumbo.net>)
 id 1qdx9n-0004sJ-Hs
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 18:21:39 +0000
Received: from mail-qk1-x72e.google.com (mail-qk1-x72e.google.com
 [2607:f8b0:4864:20::72e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 370b9ea3-4ce2-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 20:21:37 +0200 (CEST)
Received: by mail-qk1-x72e.google.com with SMTP id
 af79cd13be357-76ef6d98d7eso9345985a.0
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 11:21:37 -0700 (PDT)
Received: from pm2-ws13.praxislan02.com
 (207-172-141-204.s8906.c3-0.slvr-cbr1.lnh-slvr.md.cable.rcncustomer.com.
 [207.172.141.204]) by smtp.gmail.com with ESMTPSA id
 f9-20020a05620a15a900b0076ee82f7726sm5090024qkk.132.2023.09.06.11.21.34
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 11:21:34 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 370b9ea3-4ce2-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694024496; x=1694629296; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=zklSHdsI2UWJPNn1ecr8Eo6vQMjVOJa/0zR4bl3TAqc=;
        b=aKu/OGszcXsXLXfev865o5AHWj930QG2IPNZyM2yVoXlCVgKosUZqtZ7lL2puZ8BtF
         d8e5l8hVLuQ9/VPvchceRUJQF91jlLTdVc7GLgle4aoKuxzjAWaV5NT/6o6TdO7YqC0J
         KgaMSWh53eb0jXUjT47t0D6Z+ep207dWiCrBeziOBbLCR4Yq30OgLAu/6HV9yICdKZxo
         EUKqNRGmqNFm9l1pQz97WgCQrPPI5pBp2ErDThAAIY/ZLnZ6PK9ViwAF6S474DtXl1iM
         6BdvFOzSS6MV3c4VvhX6NvTbG710q3pzyiFpfGS2WdcLdqzHP7AmA4EixbZSAhaQLwEi
         KmIQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694024496; x=1694629296;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=zklSHdsI2UWJPNn1ecr8Eo6vQMjVOJa/0zR4bl3TAqc=;
        b=DcBb5/TyIozkhsfZPjN16IsV8MjxU8PkKqevNpSNfN6gRgQtMZjDtiTx+AAacAzpyF
         Ntqqb5Hfb7Ybi8g5dm0TCzSIt2uJQ/D+9fkhuLCRinW6X6skbTEEq5ms9IGHB5+Djhhe
         I/J2seyIooAzt+6+CHdMjMezi3P1XeLWBk7EwEOqtsud/94nPUvk0Y0zkY6jRKyL2o3q
         ddNowhlWMcnEsGWdh129zSqMAxqgXeibhSmyI2s+ZPVUXlIYgnFBLyO/1QgFAgLHlebR
         JSlRctT5V+6dEvySUz34moyyLEri0L+ERZfPZfjHH5dvst/HJ67V921a8+kR+vKtIBvo
         qe0g==
X-Gm-Message-State: AOJu0YyOKOvUibew7NwZauVncD/dlVDqR4FKpYlrJkU0yA5kVkVEJT2o
	680KEI6tOmVUa5y2s5yplBg=
X-Google-Smtp-Source: AGHT+IGHLnABm96FdDRUcT50m1IX58j6HqwLhDE/W1lxdQtnCSL26QzqbxI+re/ZCl4UzGIAe5nrRQ==
X-Received: by 2002:a05:620a:248a:b0:76e:f5c5:1bac with SMTP id i10-20020a05620a248a00b0076ef5c51bacmr19230155qkn.48.1694024495823;
        Wed, 06 Sep 2023 11:21:35 -0700 (PDT)
From: Jason Andryuk <jandryuk@gmail.com>
To: Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Len Brown <lenb@kernel.org>
Cc: Roger Pau Monne <roger.pau@citrix.com>,
	stable@vger.kernel.org,
	Jason Andryuk <jandryuk@gmail.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>,
	Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	x86@kernel.org,
	"H. Peter Anvin" <hpa@zytor.com>,
	xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org,
	linux-acpi@vger.kernel.org
Subject: [PATCH v2] acpi/processor: sanitize _PDC buffer bits when running as Xen dom0
Date: Wed,  6 Sep 2023 14:21:23 -0400
Message-ID: <20230906182125.48642-1-jandryuk@gmail.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Roger Pau Monne <roger.pau@citrix.com>

The Processor _PDC buffer bits notify ACPI of the OS capabilities, and
so ACPI can adjust the return of other Processor methods taking the OS
capabilities into account.

When Linux is running as a Xen dom0, it's the hypervisor the entity
in charge of processor power management, and hence Xen needs to make
sure the capabilities reported in the _PDC buffer match the
capabilities of the driver in Xen.

Introduce a small helper to sanitize the buffer when running as Xen
dom0.

When Xen supports HWP, this serves as the equivalent of commit
a21211672c9a ("ACPI / processor: Request native thermal interrupt
handling via _OSC") to avoid SMM crashes.  Xen will set bit 12 in the
_PDC bits and the _PDC call will apply it.

[ jandryuk: Mention Xen HWP's need.  Move local variables ]
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Cc: stable@vger.kernel.org
Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
---
v2:
Move local variables in acpi_processor_eval_pdc() to reuse in both conditions.
---
 arch/x86/include/asm/xen/hypervisor.h |  6 ++++++
 arch/x86/xen/enlighten.c              | 19 +++++++++++++++++++
 drivers/acpi/processor_pdc.c          | 22 ++++++++++++++++------
 3 files changed, 41 insertions(+), 6 deletions(-)

diff --git a/arch/x86/include/asm/xen/hypervisor.h b/arch/x86/include/asm/xen/hypervisor.h
index 5fc35f889cd1..0f88a7e450d3 100644
--- a/arch/x86/include/asm/xen/hypervisor.h
+++ b/arch/x86/include/asm/xen/hypervisor.h
@@ -63,4 +63,10 @@ void __init xen_pvh_init(struct boot_params *boot_params);
 void __init mem_map_via_hcall(struct boot_params *boot_params_p);
 #endif
 
+#ifdef CONFIG_XEN_DOM0
+void xen_sanitize_pdc(uint32_t *buf);
+#else
+static inline void xen_sanitize_pdc(uint32_t *buf) { BUG(); }
+#endif
+
 #endif /* _ASM_X86_XEN_HYPERVISOR_H */
diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
index b8db2148c07d..9f7fc11330a3 100644
--- a/arch/x86/xen/enlighten.c
+++ b/arch/x86/xen/enlighten.c
@@ -346,3 +346,22 @@ void xen_arch_unregister_cpu(int num)
 }
 EXPORT_SYMBOL(xen_arch_unregister_cpu);
 #endif
+
+#ifdef CONFIG_XEN_DOM0
+void xen_sanitize_pdc(uint32_t *buf)
+{
+	struct xen_platform_op op = {
+		.cmd			= XENPF_set_processor_pminfo,
+		.interface_version	= XENPF_INTERFACE_VERSION,
+		.u.set_pminfo.id	= -1,
+		.u.set_pminfo.type	= XEN_PM_PDC,
+	};
+	int ret;
+
+	set_xen_guest_handle(op.u.set_pminfo.pdc, buf);
+	ret = HYPERVISOR_platform_op(&op);
+	if (ret)
+		pr_info("sanitize of _PDC buffer bits from Xen failed: %d\n",
+		        ret);
+}
+#endif
diff --git a/drivers/acpi/processor_pdc.c b/drivers/acpi/processor_pdc.c
index 18fb04523f93..9393dd4a3158 100644
--- a/drivers/acpi/processor_pdc.c
+++ b/drivers/acpi/processor_pdc.c
@@ -122,6 +122,11 @@ static acpi_status
 acpi_processor_eval_pdc(acpi_handle handle, struct acpi_object_list *pdc_in)
 {
 	acpi_status status = AE_OK;
+	union acpi_object *obj;
+	u32 *buffer = NULL;
+
+	obj = pdc_in->pointer;
+	buffer = (u32 *)(obj->buffer.pointer);
 
 	if (boot_option_idle_override == IDLE_NOMWAIT) {
 		/*
@@ -129,14 +134,19 @@ acpi_processor_eval_pdc(acpi_handle handle, struct acpi_object_list *pdc_in)
 		 * mode will be disabled in the parameter of _PDC object.
 		 * Of course C1_FFH access mode will also be disabled.
 		 */
-		union acpi_object *obj;
-		u32 *buffer = NULL;
-
-		obj = pdc_in->pointer;
-		buffer = (u32 *)(obj->buffer.pointer);
 		buffer[2] &= ~(ACPI_PDC_C_C2C3_FFH | ACPI_PDC_C_C1_FFH);
-
 	}
+
+	if (xen_initial_domain()) {
+		/*
+		 * When Linux is running as Xen dom0, the hypervisor is the
+		 * entity in charge of the processor power management, and so
+		 * Xen needs to check the OS capabilities reported in the _PDC
+		 * buffer matches what the hypervisor driver supports.
+		 */
+		xen_sanitize_pdc(buffer);
+	}
+
 	status = acpi_evaluate_object(handle, "_PDC", pdc_in, NULL);
 
 	if (ACPI_FAILURE(status))
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 18:44:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 18:44:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596785.930823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdxVU-0007ss-16; Wed, 06 Sep 2023 18:44:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596785.930823; Wed, 06 Sep 2023 18:44:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdxVT-0007sl-Ue; Wed, 06 Sep 2023 18:44:03 +0000
Received: by outflank-mailman (input) for mailman id 596785;
 Wed, 06 Sep 2023 18:44:02 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdxVS-0007sb-Pl; Wed, 06 Sep 2023 18:44:02 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdxVS-0006RL-MM; Wed, 06 Sep 2023 18:44:02 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qdxVS-0006dZ-AV; Wed, 06 Sep 2023 18:44:02 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qdxVS-0001fO-A0; Wed, 06 Sep 2023 18:44:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=TDxxS3e++HVBBnPazH4YpH6LmmVoVLyZL4Z4u/4XBuI=; b=C8KcUXrSo/nIhwwXHyXAqIDwkF
	FUGZT9ys4SSA43ezuZ7EF0u++D0+X5YI90qJzxzLEz6to8TG0Yg/YjoCGcw9ISOymKZCmszFchTck
	prAn1RzGC7ShqGIT7hYRIWIgjio041dMOSlwRMfOQMIU5zxkdzi701d2YO+iUv0S431w=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182637-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182637: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-armhf-armhf-libvirt-qcow2:host-ping-check-xen:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=3f86ed6ec0b390c033eae7f9c487a3fea268e027
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 06 Sep 2023 18:44:02 +0000

flight 182637 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182637/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt-qcow2 10 host-ping-check-xen      fail pass in 182628

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 182628 like 182531
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 182628 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                3f86ed6ec0b390c033eae7f9c487a3fea268e027
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z    9 days
Failing since        182544  2023-08-28 20:42:13 Z    8 days   16 attempts
Testing same since   182628  2023-09-05 03:23:31 Z    1 days    2 attempts

------------------------------------------------------------
2072 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               fail    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 239743 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 19:44:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 19:44:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596799.930848 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyRx-00077n-LV; Wed, 06 Sep 2023 19:44:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596799.930848; Wed, 06 Sep 2023 19:44:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyRx-00076B-Gq; Wed, 06 Sep 2023 19:44:29 +0000
Received: by outflank-mailman (input) for mailman id 596799;
 Wed, 06 Sep 2023 19:44:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UMkA=EW=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qdyRw-00073v-SK
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 19:44:28 +0000
Received: from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com
 [2a00:1450:4864:20::12b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c92f2313-4ced-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 21:44:26 +0200 (CEST)
Received: by mail-lf1-x12b.google.com with SMTP id
 2adb3069b0e04-500a398cda5so263204e87.0
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 12:44:26 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 x26-20020a19e01a000000b00500d1f67be9sm2895825lfg.43.2023.09.06.12.44.24
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 12:44:24 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c92f2313-4ced-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694029465; x=1694634265; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=nu8c+OXjObLS2FHHyrswi2cSK7EbSvooNIqpjeFoORY=;
        b=YEkVBpY3lFnOzmqGsfQcWizFFCc0cbGdTMloL8lPvGwR52DWMpwk8MJkOHlg67X01P
         HP/mlOt/aWSuz8AQyrhRizBo36QfcNKhb3/o1drd9x0Ktpigan4V0u45nsUHq5hGYvIW
         YhY5UQBIMRJ+D5NdLhDfJkhWpoZgJTUS8kMdc3lXjgksnr8tvP6L2qMSrzukJSRaKn6p
         lPumwfC8pB+WQDrmb78+tL9MfSV78koS1zpc1hkrNlF0tsFZUO56SMi1JCl5ghfYx+UJ
         7m4hp1JG5APEd4qaJMbNPnbWO9BUNdghNZkGgYJoBRm/wmlzlHpIhqMv3TIeH+A3ei8/
         iEJA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694029465; x=1694634265;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=nu8c+OXjObLS2FHHyrswi2cSK7EbSvooNIqpjeFoORY=;
        b=PawDJWI14T32cK1mbzB9k+NNbvLi9YyKzg2Wm/4d3Ws35JpQi/IFaSJm5FzPFuN6VK
         iGjiz0ppp26Qj3PK5gvXcvkAd4Hc58haU2h2+x79OC/jmNtt8k3XpycGt6HsoxWpV0Av
         /ZzPG7HIb7rwRA0n+MDHhpOnRt56CZW/TYjmQD6pzFcn7SkQ/D9j/uznFeN7Ljgmcyq0
         PC1PnNBXmlL6ifiLoPr+djcJ2TIE8FHuVcZiN0qURI0C9TvqbMRdsuEwV8sThim6kPm3
         Oh1Lv8Eb9qJMDJzwJnc9fc02+reZED/amPCEaVh4/zjqt1egU1KmzWCCGJ+LGL+CMnYO
         mDpw==
X-Gm-Message-State: AOJu0YybIHhTqlmav6nR8vSYPoljFs8LMDblqfzAAcQ7EtSixMoux+ys
	ijgVLe9WIJyBo6fjE1H+2RkBzA3HUWw=
X-Google-Smtp-Source: AGHT+IFneTb7KcpbzzF/8Fu+HVhD2IDpbc+8z5RSYFtpSWrhWuQUKF+/ro7DFp7mCg9SG3Le8Sm9/A==
X-Received: by 2002:a05:6512:2399:b0:501:bae0:36 with SMTP id c25-20020a056512239900b00501bae00036mr3666998lfv.16.1694029465069;
        Wed, 06 Sep 2023 12:44:25 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v5 0/2] introduce stub directory to storing empty/stub headers
Date: Wed,  6 Sep 2023 22:44:20 +0300
Message-ID: <cover.1694024884.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

A lot of empty/stub headers should be introduced during the early steps of adding
support of new architecture.

An example can be found here:
1. https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kurochko@gmail.com/
2. https://lore.kernel.org/xen-devel/a92f99e8f697da99d77bfde562a549dbef3760ce.1692816595.git.sanastasio@raptorengineering.com/

As part of the patch series, asm/vm_event.h was moved to the stubs directory because
It is the same for ARM, PPC, and RISC-V.

---
Changes in V5:
- Update SPDX license.
- Remove code related to UML in Makefile.asm-generic.
- Include $(src)/Makefile instead of $(kbuild-file).
- Update comment message in Makefile.asm-generic.
- Update .gitignore.
- Update path to generated headers in CFLAGS.
- Use the latest version of Linux's Makefile.asm-generic.
- Introduce asm-generic's vm_event.h.
- Switch ARM to use asm-generic/vm_event.h.
---
Changes in V4:
 - add asm-generic support
 - update path of vm_event.h from include/asm-generic/asm to include/asm-generic
---
Changes in V3:
 - add Acked-by: Stefano Stabellini <sstabellini@kernel.org> for "xen: move arm/include/asm/vm_event.h to asm-generic"
 - update SPDX tag.
 - move asm/vm_event.h to asm-generic.
 - rename stubs dir to asm-generic.

---
Changes in V2:
 - change public/domctl.h to public/vm_event.h.
 - update commit message of [PATCH v2 2/2] xen: move arm/include/asm/vm_event.h to stubs


Oleksii Kurochko (2):
  xen: asm-generic support
  xen: move arm/include/asm/vm_event.h to stubs

 .gitignore                          |  1 +
 xen/Makefile                        | 10 ++++-
 xen/arch/arm/include/asm/Makefile   |  2 +
 xen/arch/arm/include/asm/vm_event.h | 66 -----------------------------
 xen/include/asm-generic/vm_event.h  | 55 ++++++++++++++++++++++++
 xen/scripts/Makefile.asm-generic    | 53 +++++++++++++++++++++++
 6 files changed, 120 insertions(+), 67 deletions(-)
 create mode 100644 xen/arch/arm/include/asm/Makefile
 delete mode 100644 xen/arch/arm/include/asm/vm_event.h
 create mode 100644 xen/include/asm-generic/vm_event.h
 create mode 100644 xen/scripts/Makefile.asm-generic

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 19:44:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 19:44:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596798.930842 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyRx-000748-Bv; Wed, 06 Sep 2023 19:44:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596798.930842; Wed, 06 Sep 2023 19:44:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyRx-000741-9A; Wed, 06 Sep 2023 19:44:29 +0000
Received: by outflank-mailman (input) for mailman id 596798;
 Wed, 06 Sep 2023 19:44:28 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UMkA=EW=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qdyRw-00073p-04
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 19:44:28 +0000
Received: from mail-lj1-x22d.google.com (mail-lj1-x22d.google.com
 [2a00:1450:4864:20::22d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c96a7b75-4ced-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 21:44:26 +0200 (CEST)
Received: by mail-lj1-x22d.google.com with SMTP id
 38308e7fff4ca-2b9338e4695so4081461fa.2
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 12:44:26 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 x26-20020a19e01a000000b00500d1f67be9sm2895825lfg.43.2023.09.06.12.44.25
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 12:44:25 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c96a7b75-4ced-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694029466; x=1694634266; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=Ag/DXDi9KifLSP4rHOgHN27smY2BH4uwqsjc5RshQu8=;
        b=DTCANIPzBrdRsaspw5WQWEgsJFjDyWRtD4S5xVKvVHFEAbfYA+wes74iAlbc4Y3SxX
         Ry80UFoTT2BQxX4yzKPvqCMKUyNAVkburTWTNFubKct/IyxlFzXRGNQK2VDpaHd4Zktr
         t5w3iVm6D7IMAcFm3pJMUSndljcv0TXnBZn2CBnY1QX669MkOKVaDDt1SZ7Hwj3F8mfw
         gANZNeLtEzuhiES/nH60j+kaA3CStuC2LnBrCFbfRN38Bo0jRo9Z6O9TNtMJgBQp23Vs
         bQ4D2+ZgW3vlaIEHim+OLQEg+mvsfgGi85rysu7b+pfBdrxP5eMjzRkSZIVBUxewQHw9
         v2qA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694029466; x=1694634266;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=Ag/DXDi9KifLSP4rHOgHN27smY2BH4uwqsjc5RshQu8=;
        b=JSP81xAwAIuqpLZU1lApvt1+5pz5d0vwGw4idjybdMQZvFeJY1z9Jay+UsByWSX3SP
         Jif3C4P6Mgm3pLx4/Ud3A+t2A3yFLIkEs2h+abXkVD5Z9fT0QtvSLzRAlvBfEYrP+0CG
         hcqrzfPS9rhLrdYx/coEoaA9+wZ1aVdHSpdHQBHBFWvjDJ8Ep2/KRMJTnqEoPKEyO5Aw
         GAJF+8nt43CxpqhDY/mCLKeEeNJ80/TaglJ9SDoDjdZWSRFw+CHsrqbSRb2It7zK/PRK
         Cc6G/OOBaXT0swgMlnlPBnyRsL/R1wEmApDt9w6txV/JG8Zyn9sL+ZOsdqDLB4L/lZJ8
         p+WA==
X-Gm-Message-State: AOJu0Ywyzv+b/MtcfaJaw3BogZvkwfPRmS/U0lpBc45VrbKg9cBWIcKz
	3vBVjLkRG2ldJ0dZJsmxXah0Wzl9dL4=
X-Google-Smtp-Source: AGHT+IGRBht1lhtK1OMEEj50GvHmT1e0A5rPXLll/lZSMCg4cF0DLQelAHhqMmAgHD3dgz2EPb0iCA==
X-Received: by 2002:ac2:4ecc:0:b0:4f8:586a:8af6 with SMTP id p12-20020ac24ecc000000b004f8586a8af6mr2935163lfr.4.1694029465722;
        Wed, 06 Sep 2023 12:44:25 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v5 1/2] xen: asm-generic support
Date: Wed,  6 Sep 2023 22:44:21 +0300
Message-ID: <f5a959bf4a28f2c77e7330b4c441e2628acfa7d4.1694024884.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694024884.git.oleksii.kurochko@gmail.com>
References: <cover.1694024884.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Some headers are shared between individual architectures or are empty.
To avoid duplication of these headers, asm-generic is introduced.

With the following patch, an architecture uses generic headers
mentioned in the file arch/$(ARCH)/include/asm/Makefile

To use a generic header is needed to add to
arch/$(ARCH)/include/asm/Makefile :
        generic-y += <name-of-header-file.h>

For each mentioned header in arch/$(ARCH)/include/asm/Makefile,
the necessary wrapper in arch/$(ARCH)/include/generated/asm will be
generated.

As the base Makefile.asm-generic from Linux kernel was taken.
( 06c2afb862f9da8 "Linux 6.5-rc1" ).

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
Changes in V5:
 - Update the commit message
 - Update SPDX license in Makefile.
 - Remove code related to UML
 - Include $(src)/Makefile instead of $(kbuild-file) 
 - Update comment message in Makefile.asm-generic
 - Update .gitignore
 - Update path to generated headers in CFLAGS.
 - Use the latest version of Linux's Makefile.asm-generic
---
Changes in V4:
 - introduce asm-generic support
 - update commit message
---
Changes in V3:
 - Rename stubs dir to asm-generic
---
Changes in V2:
 - Nothing changed.
---
 .gitignore                       |  1 +
 xen/Makefile                     | 10 +++++-
 xen/scripts/Makefile.asm-generic | 53 ++++++++++++++++++++++++++++++++
 3 files changed, 63 insertions(+), 1 deletion(-)
 create mode 100644 xen/scripts/Makefile.asm-generic

diff --git a/.gitignore b/.gitignore
index 50273adb8d..287166f8fc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -267,6 +267,7 @@ xen/arch/*/efi/efi.h
 xen/arch/*/efi/pe.c
 xen/arch/*/efi/runtime.c
 xen/arch/*/include/asm/asm-offsets.h
+xen/arch/*/include/generated
 xen/build-dir-cppcheck/
 xen/common/config_data.S
 xen/common/config.gz
diff --git a/xen/Makefile b/xen/Makefile
index f57e5a596c..a86b64303d 100644
--- a/xen/Makefile
+++ b/xen/Makefile
@@ -438,6 +438,7 @@ ifdef building_out_of_srctree
 endif
 CFLAGS += -I$(srctree)/include
 CFLAGS += -I$(srctree)/arch/$(SRCARCH)/include
+CFLAGS += -I$(objtree)/arch/$(SRCARCH)/include/generated
 
 # Note that link order matters!
 ALL_OBJS-y                := common/built_in.o
@@ -580,6 +581,7 @@ _clean:
 	rm -f $(TARGET).efi $(TARGET).efi.map $(TARGET).efi.elf $(TARGET).efi.stripped
 	rm -f asm-offsets.s arch/*/include/asm/asm-offsets.h
 	rm -f .banner .allconfig.tmp include/xen/compile.h
+	rm -rf $(objtree)/arch/*/include/generated
 
 .PHONY: _distclean
 _distclean: clean
@@ -589,7 +591,7 @@ $(TARGET).gz: $(TARGET)
 	gzip -n -f -9 < $< > $@.new
 	mv $@.new $@
 
-$(TARGET): outputmakefile FORCE
+$(TARGET): outputmakefile asm-generic FORCE
 	$(Q)$(MAKE) $(build)=tools
 	$(Q)$(MAKE) $(build)=. include/xen/compile.h
 	$(Q)$(MAKE) $(build)=include all
@@ -667,6 +669,12 @@ endif # need-sub-make
 PHONY += FORCE
 FORCE:
 
+# Support for using generic headers in asm-generic
+PHONY += asm-generic
+asm-generic:
+	$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.asm-generic \
+	            obj=arch/$(SRCARCH)/include/generated/asm
+
 # Declare the contents of the PHONY variable as phony.  We keep that
 # information in a variable so we can use it in if_changed and friends.
 .PHONY: $(PHONY)
diff --git a/xen/scripts/Makefile.asm-generic b/xen/scripts/Makefile.asm-generic
new file mode 100644
index 0000000000..92a3a741c5
--- /dev/null
+++ b/xen/scripts/Makefile.asm-generic
@@ -0,0 +1,53 @@
+# SPDX-License-Identifier: GPL-2.0-only
+# include/asm-generic contains a lot of files that are used
+# verbatim by several architectures.
+#
+# This Makefile reads the file arch/$(SRCARCH)/include/asm/Makefile
+# and for each file listed in this file with generic-y creates
+# a small wrapper file in arch/$(SRCARCH)/include/generated/asm.
+
+PHONY := all
+all:
+
+src := $(subst /generated,,$(obj))
+
+include $(srctree)/scripts/Kbuild.include
+-include $(src)/Makefile
+
+redundant := $(filter $(mandatory-y) $(generated-y), $(generic-y))
+redundant += $(foreach f, $(generic-y), $(if $(wildcard $(srctree)/$(src)/$(f)),$(f)))
+redundant := $(sort $(redundant))
+$(if $(redundant),\
+	$(warning redundant generic-y found in $(src)/Kbuild: $(redundant)))
+
+# If arch does not implement mandatory headers, fallback to asm-generic ones.
+mandatory-y := $(filter-out $(generated-y), $(mandatory-y))
+generic-y   += $(foreach f, $(mandatory-y), $(if $(wildcard $(srctree)/$(src)/$(f)),,$(f)))
+
+generic-y   := $(addprefix $(obj)/, $(generic-y))
+generated-y := $(addprefix $(obj)/, $(generated-y))
+
+# Remove stale wrappers when the corresponding files are removed from generic-y
+old-headers := $(wildcard $(obj)/*.h)
+unwanted    := $(filter-out $(generic-y) $(generated-y),$(old-headers))
+
+quiet_cmd_wrap = WRAP    $@
+      cmd_wrap = echo "\#include <asm-generic/$*.h>" > $@
+
+quiet_cmd_remove = REMOVE  $(unwanted)
+      cmd_remove = rm -f $(unwanted)
+
+all: $(generic-y)
+	$(if $(unwanted),$(call cmd,remove))
+	@:
+
+$(obj)/%.h:
+	$(call cmd,wrap)
+
+# Create output directory. Skip it if at least one old header exists
+# since we know the output directory already exists.
+ifeq ($(old-headers),)
+$(shell mkdir -p $(obj))
+endif
+
+.PHONY: $(PHONY)
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 19:44:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 19:44:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596800.930863 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyRy-0007Xs-TI; Wed, 06 Sep 2023 19:44:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596800.930863; Wed, 06 Sep 2023 19:44:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyRy-0007Xl-P2; Wed, 06 Sep 2023 19:44:30 +0000
Received: by outflank-mailman (input) for mailman id 596800;
 Wed, 06 Sep 2023 19:44:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UMkA=EW=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qdyRx-00073v-HJ
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 19:44:29 +0000
Received: from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com
 [2a00:1450:4864:20::12b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c9ee1acc-4ced-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 21:44:27 +0200 (CEST)
Received: by mail-lf1-x12b.google.com with SMTP id
 2adb3069b0e04-5008d16cc36so227307e87.2
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 12:44:27 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 x26-20020a19e01a000000b00500d1f67be9sm2895825lfg.43.2023.09.06.12.44.25
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 12:44:26 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c9ee1acc-4ced-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694029467; x=1694634267; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=6RY7OtZagCYc1AZV4czHy5Fw88OzBUmzWwNM4JA2qmA=;
        b=LI49whOjcBfJAeyvOZHMkuzaJ0ZG4nkk8hPV07LA4LTh//MXz5MAA1sM79JNUmXSa8
         0AUu1svD0EdYAm0qkpbNUSPG+YRyqjNM9jyOjiMiSqyyxUwJEisYLGvXqjllVXFoBcty
         0zKVQZopsHvn1F2syejxuCd12oPNt68JRWLRpUMApumhRCNRsWy3A2u7H4L9IN89AtBR
         KW1bjBryLZkktNhmm665BIwK70B4xH19/G+APGMgubE71fxu+OAxvALn3rBGKWNJJX2n
         CIWMv3h3bVA416T1ImDKDB4VNfZVYJZqpYvn805Wvm8v6wphRdS37SB//2Lozwlq6sOj
         Awsw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694029467; x=1694634267;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=6RY7OtZagCYc1AZV4czHy5Fw88OzBUmzWwNM4JA2qmA=;
        b=IrmjqKqz2QsLSBTYENc7L1o/nQAbhqSZJg5JU7Pr7VYXKEEZT704+5kcS5GLeuiM4q
         0jkeqf/R/HCpUVHnpQZ6SAAnzaPuVJa/oGPyzDV8jySPHsOOjqtHfQ9g8hemBu5vD7WU
         /8poRTTun2iqZcDfVr0R594G7r38Ql8vl7gY4VON54CTVOmKncVpppjehmHJVtrXpdaQ
         UAzyeQx5GZFjS5jfHYCJr0WWh1Eue7Jxvtxty74iDwCq3ylHA7rG8p/qZi+oLkB7DQD8
         39cr7Yvn2HBm9U4WX0Kj+pbMpwV0bwvLLWEA8FjN728eKl7eO6SyYlbnGoVmxoUUs9qV
         jVWw==
X-Gm-Message-State: AOJu0Yxs/ZblD8KwngPwhHS8so8aUejouHuQsaZw9PTVDYhqnAM+zdSV
	GcwUjj2URbjR5XypcOIhWdK2voxJKXc=
X-Google-Smtp-Source: AGHT+IGZPcNLB5HfUF/MMbTWn0yhCJ/MUbMQLijvx07c7PkPj4GQKdwLaxishM2uqyE6oGuGev3iUw==
X-Received: by 2002:ac2:5b8f:0:b0:4ff:ae42:19e2 with SMTP id o15-20020ac25b8f000000b004ffae4219e2mr2661589lfn.58.1694029466697;
        Wed, 06 Sep 2023 12:44:26 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v5 2/2] xen: move arm/include/asm/vm_event.h to stubs
Date: Wed,  6 Sep 2023 22:44:22 +0300
Message-ID: <108a5bd46316993684bf6325d7843cdfb126a530.1694024884.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694024884.git.oleksii.kurochko@gmail.com>
References: <cover.1694024884.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

asm/vm_event.h is common for ARM and RISC-V so it will be moved to
stubs dir.

Original asm/vm_event.h from ARM was updated:
 * use SPDX-License-Identifier.
 * update comment messages of stubs.
 * update #ifdef
 * instead of "include <public/domctl.h>" -> "public/vm_event.h"

As vm_event.h was moved to asm-generic then it is needed to create
Makefile in arm/include/asm/ and add generated-y += vm_event.h to
it.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
Changes in V5:
 - Update the commit message
 - Remove Acked-by:...
 - Switch ARM to use asm-generic/vm_event.h
---
Changes in V4:
 - update path of vm_event.h from include/asm-generic/asm to include/asm-generic
---
Changes in V3:
 - add Acked-by: Stefano Stabellini <sstabellini@kernel.org> for "xen: move arm/include/asm/vm_event.h to asm-generic"
 - update SPDX tag.
 - move asm/vm_event.h to asm-generic.
---
Changes in V2:
 - change public/domctl.h to public/vm_event.h.
 - update commit message of [PATCH v2 2/2] xen: move arm/include/asm/vm_event.h to stubs
---
 xen/arch/arm/include/asm/Makefile   |  2 +
 xen/arch/arm/include/asm/vm_event.h | 66 -----------------------------
 xen/include/asm-generic/vm_event.h  | 55 ++++++++++++++++++++++++
 3 files changed, 57 insertions(+), 66 deletions(-)
 create mode 100644 xen/arch/arm/include/asm/Makefile
 delete mode 100644 xen/arch/arm/include/asm/vm_event.h
 create mode 100644 xen/include/asm-generic/vm_event.h

diff --git a/xen/arch/arm/include/asm/Makefile b/xen/arch/arm/include/asm/Makefile
new file mode 100644
index 0000000000..821addb0bf
--- /dev/null
+++ b/xen/arch/arm/include/asm/Makefile
@@ -0,0 +1,2 @@
+# SPDX-License-Identifier: GPL-2.0-only
+generic-y += vm_event.h
diff --git a/xen/arch/arm/include/asm/vm_event.h b/xen/arch/arm/include/asm/vm_event.h
deleted file mode 100644
index 4d861373b3..0000000000
--- a/xen/arch/arm/include/asm/vm_event.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * vm_event.h: architecture specific vm_event handling routines
- *
- * Copyright (c) 2015 Tamas K Lengyel (tamas@tklengyel.com)
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License along with
- * this program; If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef __ASM_ARM_VM_EVENT_H__
-#define __ASM_ARM_VM_EVENT_H__
-
-#include <xen/sched.h>
-#include <public/domctl.h>
-
-static inline int vm_event_init_domain(struct domain *d)
-{
-    /* Nothing to do. */
-    return 0;
-}
-
-static inline void vm_event_cleanup_domain(struct domain *d)
-{
-    memset(&d->monitor, 0, sizeof(d->monitor));
-}
-
-static inline void vm_event_toggle_singlestep(struct domain *d, struct vcpu *v,
-                                              vm_event_response_t *rsp)
-{
-    /* Not supported on ARM. */
-}
-
-static inline
-void vm_event_register_write_resume(struct vcpu *v, vm_event_response_t *rsp)
-{
-    /* Not supported on ARM. */
-}
-
-static inline
-void vm_event_emulate_check(struct vcpu *v, vm_event_response_t *rsp)
-{
-    /* Not supported on ARM. */
-}
-
-static inline
-void vm_event_sync_event(struct vcpu *v, bool value)
-{
-    /* Not supported on ARM. */
-}
-
-static inline
-void vm_event_reset_vmtrace(struct vcpu *v)
-{
-    /* Not supported on ARM. */
-}
-
-#endif /* __ASM_ARM_VM_EVENT_H__ */
diff --git a/xen/include/asm-generic/vm_event.h b/xen/include/asm-generic/vm_event.h
new file mode 100644
index 0000000000..29ab1b01b4
--- /dev/null
+++ b/xen/include/asm-generic/vm_event.h
@@ -0,0 +1,55 @@
+/* SPDX-License-Identifier:  GPL-2.0-only */
+/*
+ * vm_event.h: stubs for architecture specific vm_event handling routines
+ *
+ * Copyright (c) 2015 Tamas K Lengyel (tamas@tklengyel.com)
+ */
+
+#ifndef __ASM_STUB_VM_EVENT_H__
+#define __ASM_STUB_VM_EVENT_H__
+
+#include <xen/sched.h>
+#include <public/vm_event.h>
+
+static inline int vm_event_init_domain(struct domain *d)
+{
+    /* Nothing to do. */
+    return 0;
+}
+
+static inline void vm_event_cleanup_domain(struct domain *d)
+{
+    memset(&d->monitor, 0, sizeof(d->monitor));
+}
+
+static inline void vm_event_toggle_singlestep(struct domain *d, struct vcpu *v,
+                                              vm_event_response_t *rsp)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_register_write_resume(struct vcpu *v, vm_event_response_t *rsp)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_emulate_check(struct vcpu *v, vm_event_response_t *rsp)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_sync_event(struct vcpu *v, bool value)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_reset_vmtrace(struct vcpu *v)
+{
+    /* Nothing to do. */
+}
+
+#endif /* __ASM_STUB_VM_EVENT_H__ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 06 19:45:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 19:45:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596817.930872 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyTB-0000Bz-5c; Wed, 06 Sep 2023 19:45:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596817.930872; Wed, 06 Sep 2023 19:45:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyTB-0000Bs-35; Wed, 06 Sep 2023 19:45:45 +0000
Received: by outflank-mailman (input) for mailman id 596817;
 Wed, 06 Sep 2023 19:45:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kbfT=EW=amd.com=vikram.garhwal@srs-se1.protection.inumbo.net>)
 id 1qdyT9-0000Ac-27
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 19:45:43 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20600.outbound.protection.outlook.com
 [2a01:111:f400:fe59::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f55441ca-4ced-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 21:45:41 +0200 (CEST)
Received: from MW3PR12MB4409.namprd12.prod.outlook.com (2603:10b6:303:2d::23)
 by LV2PR12MB5893.namprd12.prod.outlook.com (2603:10b6:408:175::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 19:45:36 +0000
Received: from MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::8931:6349:9a02:48c1]) by MW3PR12MB4409.namprd12.prod.outlook.com
 ([fe80::8931:6349:9a02:48c1%4]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 19:45:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f55441ca-4ced-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cHPWVqRBJ0H07IFjWy7dzN1I6L4YK/32o/03bo1Qkbsie4ANwbxaQLdQydlw/sPuakQ752a90gTofCadwVVDYI/TmnvHcp2fremMzSU8qD17nGjrr97/TfRqZc+pwfDNZnTve6rn/kfrAfo+SET5UUKf97Adl4+pazg3eCygrN0zuDWqi9za7+LamTlWXlZJbJrVwbGoXSB/Y2Vr0nuLqkF7XZPugbk6BsdY9X5mU9Z2ZxgzSEKLySsNIAxE9/wz6rWOeQWrXlgY75p+D5BJYNH58S7Rq0W/nI07kKGMiq1gr7FQLAKnezeiQ8IN5A6Gbn193Nr81HSMMpvVtjg5Lg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=liQSn8oQZDNju6irM+DbgNgx5ZCZNQwHsDjmZWd08L4=;
 b=N43qqB+V5gZMrnVTqgs8fmajsx6ioTSxPIFX6QSoWSBgNxvZnNKwSi6G3yLjwSuyyqeRfcKnnzwiak1YCbO4nElASQsYll9fYMHqRaW74zg6jyfmDTN30dvI0RIjr21LqlWDOTAbzICTNp0oX0C2zLkmMqaXYOWOS8u9VZy5EZne7Zf8OfCfI3BZxnwgdWXcNXOIChNC7wdkxvvwER9SCJbiMoTG3VWuenG/a13BlVwSRVXlseSncFQ/okTgvcUSNNROEWUdwT8m7RNpHYMYHIV1mJ9tHUDfpBEqIx4RSjPmY1xzE3KlJ5LiiB2wubFpX2I7VI4A04AdyNNPHQE6Qw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=liQSn8oQZDNju6irM+DbgNgx5ZCZNQwHsDjmZWd08L4=;
 b=34dvJMrzYHXf7n0AeOQ+Jqbowmu8Aw/bGKn2XbytRBBGARoThWG5BCmCHJkTNtSjTvPKVc1SPLe1lzJCPTtKd7/qbEK4qe95Pz/bcj1AvLdA3FidvKQEJsu11L2f/2ZizSI5CCjPzHr3A9NUzZS3d00ezu0WVEdwfvuAcvTxifo=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Wed, 6 Sep 2023 15:45:32 -0400
From: Vikram Garhwal <vikram.garhwal@amd.com>
To: Michal Orzel <michal.orzel@amd.com>
Cc: xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>
Subject: Re: [PATCH] xen/arm: Fix printk specifiers and arguments in
 iomem_remove_cb()
Message-ID: <ZPjW3LT9S5af_1Im@amd.com>
References: <20230906103014.19574-1-michal.orzel@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20230906103014.19574-1-michal.orzel@amd.com>
X-ClientProxiedBy: SJ0PR03CA0389.namprd03.prod.outlook.com
 (2603:10b6:a03:3a1::34) To MW3PR12MB4409.namprd12.prod.outlook.com
 (2603:10b6:303:2d::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW3PR12MB4409:EE_|LV2PR12MB5893:EE_
X-MS-Office365-Filtering-Correlation-Id: 2fe97952-45dc-4a6a-7d16-08dbaf11d6f4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Euuz5Gexzah4MZGVWgqOW6PUoK7bOsnJc0GKr+P1+qxQosh4cZByKiLnQF6Ifoe42+tJM++4XHOo5n1H3nVHA8A39/bQeolp94per5Zgj0D1BTvkaF5flKJJhgbQ70JlL/XGYzLqqT6jte87sleAcNYRlIEUg2b4XTv853ZB/UCuxyzGvtdbNjML6luydEilG96Nn0ZHPnWWaozKflYFq67aQ93WLYWbZQlVXCDQSD+fTN4nPOgC+8mEVWaWrxAPKi5Ng5Z5tfCj+6rIXnKmQIgXa9WCB/KRvw0ktCId6Kro3hyTaGHhF2DbjJ5wdROITeRiuQfD940K3QBAeFldFlQBbvEhLlLvjXaKTkNtWJ8oUUnOcaCe6GmE/bzcOcuNW4waeb85Bkouv1L1+WptfcB5ab5VpwU2Gb9Toi/wvFmYU3bZgEQ+iBTvqSuIZjm/ZVcankxnpyhGlkWwxpWDDIxD3YXRDdTh5PS50sgN8P+bkHXDEHF6MYpeFRxhpjerpzpmf72WcL1+i5OtkMKvoNslfePwoXqBM3KHTN4BaWHpojZ1fn9/6QMVnN06y8rZ7VUoyz+nGZ/StYMXZfJjAlrsSULGSO0PNzyQh09Y5WU=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW3PR12MB4409.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(136003)(376002)(39860400002)(346002)(1800799009)(186009)(451199024)(41300700001)(478600001)(6666004)(86362001)(38100700002)(83380400001)(2616005)(966005)(6512007)(6506007)(6486002)(26005)(66556008)(66946007)(2906002)(316002)(37006003)(66476007)(36756003)(54906003)(8936002)(6636002)(5660300002)(8676002)(44832011)(4326008)(6862004)(25096002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R1h1cHhabEt1TnIyR1Vwa0c2amkvUTBXSHBpaVdCcGNjS3J5b0hhbVB2T3pa?=
 =?utf-8?B?ZS9tZFlwZ3R2Rm1LNkNXcWFIdHNwWFMvbWFhbjF2S3pUQUJTSTRiN1BxZEhk?=
 =?utf-8?B?VnhsWXR6bG9MUytJYXUvTEh4QWo0MkVENys4R0ljN1ZxYmJHTzF2V0JUZDNw?=
 =?utf-8?B?clFKbE1peVJHQUlFTWpka3FPM3AyV0l6ZG40c0YrUENiaUJuMHhBam9uL0NS?=
 =?utf-8?B?ODVoM2ltUUJuWUcyWGdlQ3R1MWJteW1UcDBPNjc5OTZvQUJiMVZiN2NBK2N1?=
 =?utf-8?B?UlNLdEFOMU1xL0Z2SVQxZFpQMXpobFdWMUY0a1N0VldVQ2dTN0pSc3FIN2gy?=
 =?utf-8?B?NGhLZk40aStmVGNKRjJHbCtyck1ubyt0L2c2RUxtUTA5TDZPdy8zQWlQU0lp?=
 =?utf-8?B?RERoTHcxMHZ4VGRYMUxPYVhUcXJDZy8ydTBVYnJNS2RnRUV5WFEzc3BtL3VR?=
 =?utf-8?B?bFYzY3laSFF6aFA4UjV1RHhoZXI5Q0x3UWpndG4zMGpyd0xURWw3MTBxK1Fs?=
 =?utf-8?B?QXpBcFpsMGdIN2VyVmVPM290SG1xYUZFdTV4eHJwdnh6QWlEZkVQdm5OZEZV?=
 =?utf-8?B?SXIzVHN4OUJsbUx4TFdVa0E2OEVqc2RDZDNUNlBUYXh3aVpxdEtnZFNRZ2E1?=
 =?utf-8?B?dlZ3T1Z3ajNnWVgrcFJZT0pUL2FYYnFKaWZBT2xMTkNnVHhPSWx6ZHhDdjhI?=
 =?utf-8?B?WE1jZk9oR0pHaDVSRlY4N0xUZlBxakZZZ2lJU09NU0NTTnhRaXdQTnpYdWpE?=
 =?utf-8?B?Zzd6L3BqN3F6cDFNcDRXNHozN1A3SDU5QjhvYXRZaFJVeTIyOG5QUlZQeGRU?=
 =?utf-8?B?QTNXTm01Ti9NSmdqVTNWM0NQcVZkM3BPL3ZiTXJqSzNDSnZEZWJnd1RieGRV?=
 =?utf-8?B?aTZ5OGI2NUtGcnJNTnFPRDdWbVRnTm1pdjM2TUVjOE5Nb1NVbFU2Q2JHZndC?=
 =?utf-8?B?NVMrOTc2TkVqS1FZS1BUV3hyaGF0RDhvTWNDUWVDbXU3eWhGaEdPaDQ2a2Fo?=
 =?utf-8?B?V21sRjNDUDBpL3l6RWVxL292ZVpUajRWS0ZPT0hFbGYwZ21UQ0o0clBkdWtB?=
 =?utf-8?B?UVpPQ0ZxNk5lQkd0QjhsbXd3bk05MUxQUnhMVDZMTFVLMnNiUEtIY1BkMWF3?=
 =?utf-8?B?YUgweW9veFlEMlEvSzBaL055UWdabUM2UHZwc2xiME1MVndHZ0lrZE5NclRp?=
 =?utf-8?B?SHJWLzdHcWpaN2pGR29KalB0MWdhbWlCU0w2Y2FJYjVRQjhUWmNraS9pZGFZ?=
 =?utf-8?B?MHZNNFFzS2xFTmZWbTI1eFNsK0kwL3k5clR1WnhTKzd3eFlWRytSUzl6QUF0?=
 =?utf-8?B?K1MxZTBXTGh0SFZQcmJwZ2hsQUlSdk16T3IzZXJHcWw0N1BZcHFFMC91T212?=
 =?utf-8?B?SDJHb0hGc2tUcEtLUStGZnVacXZucmJTcDNCQVlWVnhmTHJJVEg0T215RDhK?=
 =?utf-8?B?UFZ1YkVNcFdjLzVRSG9tVmRXR0lUUkVZWWIwL0pMZnF3QjNuNVphT2dXSWpR?=
 =?utf-8?B?OVVQcjI5Y05JVFpJZ3RGWUp6MnJqeW5aNG41Vy9LdmF6MER6OE1XV3dxQ2kz?=
 =?utf-8?B?MzZEbFRrTXZob2xVTWc4amNFN2xkSGZoanovQ1duZC9aVzltSkNIL3FTc3dT?=
 =?utf-8?B?NkphUEJJV0IzR1BiQmVZTGNjZWdBOVJCeVZ2YUdSVy9UOUxwNUp2dWFVU25G?=
 =?utf-8?B?Vm05OTFnbDR6b0FWeDJYODMwWXQwR0VFYWpJZEk4M2N0dWh5eEhDK2pPWWcw?=
 =?utf-8?B?WEJaNXZIMFR1RnBVUTduUnZib0lqUm9qT21mVFQ1SzFRdExsYTlKMEFOVTAz?=
 =?utf-8?B?Ry8vZG80UGxQU05YV2FQMENSdFI2c01lV3VaTjU0NTdobnFSL1RTa2s1NGRU?=
 =?utf-8?B?MkZxVVpYdVRHRFF2cmlJWWRSS2lDVER4Y1VxSFovOHU2SU8xV2FBM0FtMFAv?=
 =?utf-8?B?SkdXanMzcURsZm1zellsS2RpOS9Pc2NtcXdTWTJoaVFUY011MndkQWg0VWRE?=
 =?utf-8?B?cFNkUkFIMlNneEs5K1k2U04xWXg1UFdwT3RPdENVNGNVS0ZDN3ptNVYyTjNr?=
 =?utf-8?B?azB6N2ZtcnNBekxlYnd2M1MwNFZGWE9RdGx5Y3daNzhpTWhGSDB6b0phTGw2?=
 =?utf-8?Q?2T2i72juRj6WkZIJq01O0l94k?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2fe97952-45dc-4a6a-7d16-08dbaf11d6f4
X-MS-Exchange-CrossTenant-AuthSource: MW3PR12MB4409.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 19:45:36.1305
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 6l8VJzKabJcXAov18S/5VTfvhOVncg5Y1nZBJkTZNHLO6i/fPmMwaD4TsoixSOecurYE2H6Lrrfy4bOAIBAvlQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV2PR12MB5893

On Wed, Sep 06, 2023 at 12:30:14PM +0200, Michal Orzel wrote:
> When building Xen for arm32 with CONFIG_DTB_OVERLAY, the following
> error is printed:
> 
> common/dt-overlay.c: In function ‘iomem_remove_cb’:
> ././include/xen/config.h:55:24: error: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘long unsigned int’ [-Werror=format=]
> 
> Function parameters s and e (denoting MMIO region) are of type unsigned
> long and indicate frame numbers and not addresses. This also means that
> the arguments passed to printk() are incorrect (using PAGE_ALIGN() or
> PAGE_MASK ANDed with a frame number results in unwanted output). Fix it.
> 
> Take the opportunity to switch to %pd specifier to print domain id in
> a consolidated way.
> 
> Fixes: 7e5c4a8b86f1 ("xen/arm: Implement device tree node removal functionalities")
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
Reviewed-by: Vikram Garhwal <vikram.garhwal@amd.com>
> ---
> After this patch (and the one for xl), we are left with one issue breaking CI:
> https://gitlab.com/xen-project/patchew/xen/-/jobs/5026938514
> ---
>  xen/common/dt-overlay.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c
> index b07a6128dc99..5663a049e90a 100644
> --- a/xen/common/dt-overlay.c
> +++ b/xen/common/dt-overlay.c
> @@ -251,10 +251,8 @@ static int iomem_remove_cb(unsigned long s, unsigned long e, void *dom,
>      rc = iomem_deny_access(d, s, e);
>      if ( rc )
>      {
> -        printk(XENLOG_ERR "Unable to remove dom%d access to"
> -               " 0x%"PRIx64" - 0x%"PRIx64"\n",
> -               d->domain_id,
> -               s & PAGE_MASK, PAGE_ALIGN(e) - 1);
> +        printk(XENLOG_ERR "Unable to remove %pd access to %#lx - %#lx\n",
> +               d, s, e);
>      }
>      else
>          *c += e - s + 1;
> -- 
> 2.25.1
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 19:46:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 19:46:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596826.930883 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyTm-0000oN-L0; Wed, 06 Sep 2023 19:46:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596826.930883; Wed, 06 Sep 2023 19:46:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyTm-0000oF-I0; Wed, 06 Sep 2023 19:46:22 +0000
Received: by outflank-mailman (input) for mailman id 596826;
 Wed, 06 Sep 2023 19:46:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UMkA=EW=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qdyTl-0000Ac-MR
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 19:46:21 +0000
Received: from mail-lj1-x22e.google.com (mail-lj1-x22e.google.com
 [2a00:1450:4864:20::22e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0db58c88-4cee-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 21:46:21 +0200 (CEST)
Received: by mail-lj1-x22e.google.com with SMTP id
 38308e7fff4ca-2bd0d19a304so4286411fa.1
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 12:46:21 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 k16-20020a05651c10b000b002b9e6d7f72fsm3566424ljn.5.2023.09.06.12.46.19
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 12:46:20 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0db58c88-4cee-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694029581; x=1694634381; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=okPQIA6vAY130R+Qj2Ti+0EjJFm14wP2sGjTLckAyeQ=;
        b=IR/t6KBYJfenlUTg6Kwfe6jQERJPCJ8Pp5DPhJ0gs7SETBy1qKbSG+fmxRINMYDuQ9
         4MIQMXdZKXJo3CqupmEnE43COqqZ12z4zLrjhpBT2OyhGSg4D25BiDgs/vnCbDzYpJ3S
         s2XtS/ar3qltrddkJZS+VVQWqVNY3qd0fW8/dHjQID1BKdxXUMgy/Oi8wifAM4wOJ8pS
         DDwoN3+2Art9qqi6UL//jIbmmDzImtE4+wpfqDwhpKweNz5tm93FO4zo+MLUxCBbSa47
         vI36E+SNdwFM3pRKdS5cffyqyA0yzU5blLPJQFuen0OD8zL/2glHhoYk2y74oYh5UMn3
         VdCQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694029581; x=1694634381;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=okPQIA6vAY130R+Qj2Ti+0EjJFm14wP2sGjTLckAyeQ=;
        b=lm7bjUNsdnREmfM15a+eXbCn2adf9xCgnoIR/LkPqN94gcBXRpamWwmTsVrmzBLru6
         v2FH6D2kHq0T1PoivknOYWFp2WMSLj6KFmLqtndJW76b0EC4DGp3fNJnQupWwtU4F4wK
         bbfTckvxAu2SndV8huChEO33p1mJrn5ychDpn0nHOXVHPR4jV34+zyAs1OKGcbjNKYbb
         jbDeDrbnSRoSlrh9KU3/olqHmaB6N0oxXgDru3JlDqMAZBlYdWfc6Q8O52u8U5zykI1L
         K0NqL0WdvwoqyoMej/eyYYgzw2GcuhjCuDQZo3LYBv8caOCiX7bK57gzcjvYUO+VX2bM
         37FQ==
X-Gm-Message-State: AOJu0Yz3h4LVDj6i9+l6dhIhLoOgIQhRtDV40hW0cdhuL/lbxOaVCmoj
	qKw8PUVK2eJLqULX09qgfu0=
X-Google-Smtp-Source: AGHT+IGrox2vlT90cm/yaz/H6y6RXFOljrMigzpLF2sLMmSRxZf4JylhMlYqR6zGta6iOYqJfRKK6g==
X-Received: by 2002:a2e:7d19:0:b0:2bc:df55:eec7 with SMTP id y25-20020a2e7d19000000b002bcdf55eec7mr2970775ljc.40.1694029580612;
        Wed, 06 Sep 2023 12:46:20 -0700 (PDT)
Message-ID: <a526c0b285d94550e59a8968786b28d266afba58.camel@gmail.com>
Subject: Re: [PATCH v4 1/2] xen: asm-generic support
From: Oleksii <oleksii.kurochko@gmail.com>
To: Anthony PERARD <anthony.perard@citrix.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>, Andrew
 Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Bertrand Marquis
 <bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,  Bob Eshleman
 <bobbyeshleman@gmail.com>, Alistair Francis <alistair.francis@wdc.com>,
 Connor Davis <connojdavis@gmail.com>, Roger Pau =?ISO-8859-1?Q?Monn=E9?=
 <roger.pau@citrix.com>
Date: Wed, 06 Sep 2023 22:46:19 +0300
In-Reply-To: <d6f68239-b918-4f6f-b287-b2a022aaf355@perard>
References: <cover.1693583721.git.oleksii.kurochko@gmail.com>
	 <96b2a4ff48578b7b105581529d2aa6bebd8ad622.1693583721.git.oleksii.kurochko@gmail.com>
	 <d6f68239-b918-4f6f-b287-b2a022aaf355@perard>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Wed, 2023-09-06 at 16:57 +0100, Anthony PERARD wrote:
> On Fri, Sep 01, 2023 at 07:02:14PM +0300, Oleksii Kurochko wrote:
> > diff --git a/xen/Makefile b/xen/Makefile
> > index f57e5a596c..698d6ddeb8 100644
> > --- a/xen/Makefile
> > +++ b/xen/Makefile
> > @@ -667,6 +669,12 @@ endif # need-sub-make
> > =C2=A0PHONY +=3D FORCE
> > =C2=A0FORCE:
> > =C2=A0
> > +# Support for using generic headers in asm-generic
> > +PHONY +=3D asm-generic
> > +asm-generic:
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0$(Q)$(MAKE) -f $(srctree)/sc=
ripts/Makefile.asm-generic \
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 obj=3Darch/$(SRCARCH)/include/gener=
ated/asm
>=20
> Could you introduce a $(asm-generic) macro in Kbuild.include like we
> already have for $(build) and $(clean)? As I think it would be nicer
> to
> have
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0$(Q)$(MAKE) $(asm-
> generic)=3Darch/$(SRCARCH)/include/generated/asm
> in the main makefile.
>=20
> Also, could you move the rule "asm-generic" within the "!config-
> build"
> part of the Makefile? Somewhere around the rule for $(TARGET), maybe
> just after the rule "_distclean".
>=20
I pushed a new patch version tomorrow. I'll rework it based on your
comments here.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 19:50:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 19:50:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596838.930893 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyXN-0002AC-3r; Wed, 06 Sep 2023 19:50:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596838.930893; Wed, 06 Sep 2023 19:50:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyXN-00029k-0v; Wed, 06 Sep 2023 19:50:05 +0000
Received: by outflank-mailman (input) for mailman id 596838;
 Wed, 06 Sep 2023 19:50:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=UMkA=EW=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qdyXL-0001pQ-Ig
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 19:50:03 +0000
Received: from mail-lf1-x134.google.com (mail-lf1-x134.google.com
 [2a00:1450:4864:20::134])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 91c603c0-4cee-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 21:50:02 +0200 (CEST)
Received: by mail-lf1-x134.google.com with SMTP id
 2adb3069b0e04-50098cc8967so241109e87.1
 for <xen-devel@lists.xenproject.org>; Wed, 06 Sep 2023 12:50:02 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 n7-20020ac24907000000b004fe09e6d1e7sm2838655lfi.110.2023.09.06.12.50.01
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 06 Sep 2023 12:50:01 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 91c603c0-4cee-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694029802; x=1694634602; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=L7IYImw336YE/oOppUzmqhDhC/LiV2wEiYOf+uT5HtA=;
        b=YaY7cYfzQ3paNsTqZegdXkNwyOOlqqexB+q0WUgq/x0C1pBJGKSZQH5zyoiat04Y1a
         HtlizOapovGp77Eup654UCYYyZkICSZT220echzpi735IPWt2sxDUlDX6UuBfdo+188n
         4DYIqg7WGJ0/Pqpv9XQFgjkPr7OURa7pEIPbkDuykDWmDhCPX3SxcYQkDP4q4VcB5KTL
         I7L5i7TAzAelqaCn1LK0PPNiFEvJcAUGePKq6/TZPmCebygam/QQYLAPGKmZfkZzQB7X
         1jo6C5C+HhQffczbs1N2oF133xz/o1L+o/TYClGYRl9GXOQcjvh/BNH+6aQtis1y1/uW
         VKUw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694029802; x=1694634602;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=L7IYImw336YE/oOppUzmqhDhC/LiV2wEiYOf+uT5HtA=;
        b=UuTtZrCrVwMUEAdQydr6Z2K1h27g86+BMIDTgAsnH/yq5reCeRgfWFT2HeIwc7XPjO
         eSWVazFfyDMu5qzVlfNYGnmhZwjOzybl9iQadof0/vAKGhDCjOTgBIGvQlr7LGrSYGMw
         pdg49NdJd7nwXu1iGyXBy8zRb+5N54Szfmw+yNGXqMeYt5ryt2yHCfpb3KmuC9wwor1v
         bJqoB/B7C7BEoesoMbVp0UllwKnzI6tKARkdh+zDYp/nkfD+6i937x6l8YOZH8jgDMld
         OhkEBcMHaYifCMIWaMSjg7Gt9RCpzkakVXm/E+F2xxx/3fKRVU6XVrAGw7OgxQbg0NKq
         C5NA==
X-Gm-Message-State: AOJu0Yx+bdfCMRbcOIkJn+skRaTpLzDAJXF/kHTkcsN2Xclqqt4NLk3c
	QaWH9YsQSRxNcbrnCpDORDZNbNKmjAs=
X-Google-Smtp-Source: AGHT+IGwC8xiy6TrToRvE/XizsAwuSSdPsTJ/62dEGQq29uxLSx0iu5vPqaV8pUMdCk08j8b9OoUew==
X-Received: by 2002:ac2:58f3:0:b0:501:bd16:4d76 with SMTP id v19-20020ac258f3000000b00501bd164d76mr2694253lfo.16.1694029801789;
        Wed, 06 Sep 2023 12:50:01 -0700 (PDT)
Message-ID: <f6a7caf3057fd91d983f59b385f6a8c5a2eca501.camel@gmail.com>
Subject: Re: [PATCH v5 1/2] xen: asm-generic support
From: Oleksii <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	 <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Julien Grall
	 <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	 <wl@xen.org>
Date: Wed, 06 Sep 2023 22:50:00 +0300
In-Reply-To: <f5a959bf4a28f2c77e7330b4c441e2628acfa7d4.1694024884.git.oleksii.kurochko@gmail.com>
References: <cover.1694024884.git.oleksii.kurochko@gmail.com>
	 <f5a959bf4a28f2c77e7330b4c441e2628acfa7d4.1694024884.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

Hi all,

Missed the comment (https://lore.kernel.org/xen-
devel/a526c0b285d94550e59a8968786b28d266afba58.camel@gmail.com/T/#m99a4
dc8280439e84021c4e0546dc9ff539a60191 ) of Anthony so I'll sent a new
one patch series tomorrow.

Sorry for inconvenience.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 20:15:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 20:15:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596847.930911 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyvM-0006ba-VV; Wed, 06 Sep 2023 20:14:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596847.930911; Wed, 06 Sep 2023 20:14:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdyvM-0006bT-Sq; Wed, 06 Sep 2023 20:14:52 +0000
Received: by outflank-mailman (input) for mailman id 596847;
 Wed, 06 Sep 2023 20:14:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kt7f=EW=nureva.com=anthonychan@srs-se1.protection.inumbo.net>)
 id 1qdyvL-0006bN-RJ
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 20:14:52 +0000
Received: from NAM04-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam04on20701.outbound.protection.outlook.com
 [2a01:111:f400:7e8d::701])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 076b9855-4cf2-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 22:14:49 +0200 (CEST)
Received: from DM6PR20MB2779.namprd20.prod.outlook.com (2603:10b6:5:140::30)
 by DS0PR20MB6390.namprd20.prod.outlook.com (2603:10b6:8:122::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Wed, 6 Sep
 2023 20:14:44 +0000
Received: from DM6PR20MB2779.namprd20.prod.outlook.com
 ([fe80::c3:998a:f69:190e]) by DM6PR20MB2779.namprd20.prod.outlook.com
 ([fe80::c3:998a:f69:190e%7]) with mapi id 15.20.6745.034; Wed, 6 Sep 2023
 20:14:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 076b9855-4cf2-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fyjdXmUgHWeR6Qbb7b/kJ7lLWAXp466m6yN8MBlzRQAiWD8K8zvgPk2WYqb4i/BZf7yMR51FOpDCb5bGXxRXekDRJVm+2monR12iwqgrqYGVbVW3TZd4zHsT+c2AFV+IgE8JFtHXibTbvI9AbiVHBE5hgHUL2AECc6Vm1MPN2d0yIJPlrtEYSR9hV+VGeu+gCGt7f/gP+W7sqPV0vy+qIVzmVdogUHQ+PWF6GEATJQBGXfO/c6t3c808N4mQAmbKWk4HaQIq/cT4hFG2VFSKwnNpEir+PchHAC2Qzy+C9Fx78T00FPRbf7N6SFGSyWJLPaTZEevWO9xjA7sM1GtzBw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nRfLdYhf9fgNRWs2oEF8wB4XzJlc/xKi0AtlWAhoX/E=;
 b=B5bf8fU1WOXtbIRbpoiFqmJ5GRbW7DbBW/Hxs7ndJgswHLJZJo/vQP4RE03LWVkNxHJLji+neMhXlfHHdyDK5g30rKr/t0j1rBG3UYOqj+Ruaa3eCAEmkdmwaK/7HFwXQuZsAa7mLHsv6xDC0FGY3gdh7lDwpMatZ+LzQQkLbpsD3n2u91+Bh+QcViFtkVp33OAeLiaRexABLBySE+sfOMEhJe3nFVSYsVHuWY3lscdlpn6xYfFC2RbgM2KJ8HMhHa/uUyLQ8+FPl40lwL1FLzmesjJfnYJX1I2acN71QSX+5K/scTg2/W7Isa/HB9v6JdGVQ0xKiZI+ATEh1fwXSw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=nureva.com; dmarc=pass action=none header.from=nureva.com;
 dkim=pass header.d=nureva.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nureva.com;
 s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nRfLdYhf9fgNRWs2oEF8wB4XzJlc/xKi0AtlWAhoX/E=;
 b=M6npHwhs+pY7OycHqbAnUMgER2QHbZmEAbm8oIUICJXR3Lb5qOck3+C2jvQ8Lbg1UwSBG1667BkmipFvo5Lq4Oavd8mqRaQpVZnAWptkQN3ZbF7atfCzcm7uV92CgEZrFyPD8HHgm0X2YR/M/RoJ8Fqx66G7qgzc7kSqtlMa7q8=
From: Anthony Chan <anthonychan@nureva.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	"bertrand.marquis@arm.com" <bertrand.marquis@arm.com>, "julien@xen.org"
	<julien@xen.org>, "Volodymyr_Babchuk@epam.com" <Volodymyr_Babchuk@epam.com>,
	"michal.orzel@amd.com" <michal.orzel@amd.com>, Dan Waqar
	<danwaqar@nureva.com>
Subject: RE: [EXT] Re: xen arm64 low power sleep support
Thread-Topic: [EXT] Re: xen arm64 low power sleep support
Thread-Index:
 AdnanCj70Orzia5aQfSER7H0AUNnzgAKb5uAACL7QIAAFccGAAAoRLpQAQalgwAAJhokEA==
Date: Wed, 6 Sep 2023 20:14:43 +0000
Message-ID:
 <DM6PR20MB2779A22E8CA641F0B2BBF038C1EFA@DM6PR20MB2779.namprd20.prod.outlook.com>
References:
 <DM6PR20MB277971712E5415CB231AEB37C1E7A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2308291512271.6458@ubuntu-linux-20-04-desktop>
 <DM6PR20MB27795F4B6C327F7F031BABB0C1E6A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2308301814580.6458@ubuntu-linux-20-04-desktop>
 <DM6PR20MB2779E6DD63DC5CC9A1FE161AC1E5A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2309051848590.6458@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309051848590.6458@ubuntu-linux-20-04-desktop>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=nureva.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DM6PR20MB2779:EE_|DS0PR20MB6390:EE_
x-ms-office365-filtering-correlation-id: e09d8ab4-2eae-485e-b001-08dbaf15e8f1
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 EiF0phWxCV/yRBPZWp3pFdWmEZrzBNUPpG/Xpg2u6YcQI71XVIC0mLujd2IueOU5RX+wSjcMSzFCK+atpxKUc8gZEBeDWhJJcIDcVuSxOannSH+9YcLMCiwhuhZdw+FtaGr8TfYlnoU51S9fDxxpdHmwOE2bwgHPvYEWHFE+Ei0UsNf4gN4sFa4ykQDw0D0GKTxMOjSJP1Gjk+s/VvqKhSF1724jH4oSAj8arsO/LVD2mtcMRHcfh8VDR4p0OuqNXC+eCywiW5SjtbHeH8z+GMrrI5l+rWFhNJ2gFFOOalTK/kBjsPyIdEVhQPWCFYaTPSBlXI5tAhhOXpvy7J2J3GcNPmbtTvA3br7aMSe6/zyY6DYYFNK0BLZ6GL2TSL3Xw/GY90UK2yVIo5FRkeKQJUf4Ys0opYwGHayrmw4hUcGzesdw8Gp/QzDZpkZcGzyrWblaMY7BbGbb+DTsrFjc86yIhnb3ooEPZheKOu3WY11z8thzT8cV8e8crnE2kXren7d04PgF6nO5jGVIDVm9T5Uc9sL3eIPVajTjL2oQY+GYSqjuWFSvsGvKDR2r+7UvU4cipADIACSkYCqmdLcaApCnHINeiHqyZszUob/5BXvaeuahQk2Zrk5mYIOdH2o0
x-forefront-antispam-report:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR20MB2779.namprd20.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39850400004)(376002)(396003)(366004)(346002)(451199024)(1800799009)(186009)(52536014)(41300700001)(8936002)(4326008)(66476007)(54906003)(66556008)(64756008)(316002)(107886003)(8676002)(66946007)(66446008)(76116006)(6916009)(45080400002)(55016003)(122000001)(7696005)(9686003)(6506007)(966005)(478600001)(83380400001)(5660300002)(71200400001)(2906002)(86362001)(33656002)(38100700002)(38070700005);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?us-ascii?Q?DfQZoGDn5I3LlmeilURdVRTz+0SA73z08+Rb38C0FTxkJR2UdDM7TE1BuslJ?=
 =?us-ascii?Q?29ZkInH9Sz6FeQ9bjUgux2MdvdQWnw61fZZJl/NgnaUtbbWa4+WHnX1v2omG?=
 =?us-ascii?Q?hXzUEpQPwpC1p5Pr62JLjuQWKl7zMqp+sgbLJ5KY5W/Dw4COCPX3b1U5vSMt?=
 =?us-ascii?Q?i+a9zTcm9oeFrD4IvwTbZ/SLee+vju++VQr3d/ezybCFyoxu7LjGRmd9WUwB?=
 =?us-ascii?Q?AbvkRLRS/GzTHV+jfQcpoEoyQ3za92xGufhnmqK7i5i46mFhiqQo18FNn6PC?=
 =?us-ascii?Q?vwekBT8jwjX1Z7KWYEGOuzeevb6uz7vv2jj94UEyhKr0s+uefaH+e/0Zo6n5?=
 =?us-ascii?Q?72mERhUFjpPHKslWmCq2qrszD/PyBx4kiDzWLJjvmnXOd8I007xoDIKzqA0t?=
 =?us-ascii?Q?LaoihzMEdVEhB/tRsMFeQCGB6DBvcCW8wkD5klHGO8ZkfCDaRGRB7IAKZxM3?=
 =?us-ascii?Q?6buWPa0xUZbUxgq3GQzIspcKh1FvxWAGAd8A5K/hl6YHdpiyw2dgsok/zGRX?=
 =?us-ascii?Q?JhDg0kUwMZMCq5gU2dMd1dT33guce3hISpt1PBGYOcH6YWtuYfK8H6SF329H?=
 =?us-ascii?Q?6vcsi7siCRTuJMBCMrUkBAWO0pJk9++3kF9NR7oci0CZvIrWzZeuMAwhfmoC?=
 =?us-ascii?Q?IfTZSssinR2hqP9BSJhWOHFFRHR/NLHvNgC4Q5xwHBpgf83Unq9PZrOQKJJa?=
 =?us-ascii?Q?BdjQo/fY/cfk8K5swn5ijPDhWzJKfp7UFjfOKAYz+nMrzGPUmhD06Qt/Y9r3?=
 =?us-ascii?Q?tyoFXV17zWGrKojjq4VQiB9rXZdAMt30nBbqmjlfRV6jPS/NcRNm+yXqlUhr?=
 =?us-ascii?Q?vGYIROK5YfSHwp/kZ+yO5PlIEqNKVFfKOoIXLKvEWtRTy2jxkUsHGdN+5WC5?=
 =?us-ascii?Q?R5mKvfxKqEsyMIlepOmYAzyqadGcWObA84oD3rG+LLtieBGcVMgvbyft1Bns?=
 =?us-ascii?Q?rWl6Tdx3ij6mzlC/QxTArbpcn0fVbvywCUzXi4Hpr3Ic8wnkj5/yGy5XRJ3P?=
 =?us-ascii?Q?oTmOR0LJbgPMt4fFmsQNLYiZ9x2du25rHpA/gHXC9YSe27O7JBm/N3zWZVoa?=
 =?us-ascii?Q?Ck0/bREU0Ca1rZhSya2RB3vIAZzcvqmlaEenPsFPQvwVsgXzYbeZAblplu7n?=
 =?us-ascii?Q?etGo8v2RgKtuRroNX3rFxRHdNSjrPeYIShKLzJZf81oYQZyDGkLDYspQONpe?=
 =?us-ascii?Q?2yO6QjQoCWXM5Tv28EOLO/6/Pmlh7LkqlRavqsVPPtAAWcAhMdv53vl9Uo5j?=
 =?us-ascii?Q?7o0mNtes8BzKgdcekeR6jEkrDTP5Ah2LSvr2uMAHHxpsJMEZn3UgyyYe1PyX?=
 =?us-ascii?Q?JQXsO4mdKvA9SHcDSWmkIu6Adlr/3G9y8K00t2k/93kvYrItXfFyB4pn9qBN?=
 =?us-ascii?Q?HaovLjlp/nGU77udn5JNWwWckAgGqwZF/YHX9Mj1oZXECg4XVVlXuYkdCfIk?=
 =?us-ascii?Q?IKRhiFKmzsrKkyjNvVZ0ok2yeEvztuttoeiZ/BOHXWO8frHRXMAfOUFLUcDu?=
 =?us-ascii?Q?M/KwredmbqJWdK63cew1hkywjODTkdL0EMZUQC6R3oW2U4ehoTJPJjmW5gkQ?=
 =?us-ascii?Q?QYmzGsuEZUAqgeumSFMnaKLXnqO4tnwSDVCXroiSgOyA/YQtNr5FA08EscD4?=
 =?us-ascii?Q?RiaZsSi/0Vd0JfUp/OaDO2H1gEAnrQWOm5P++3aBuAz9?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: nureva.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DM6PR20MB2779.namprd20.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e09d8ab4-2eae-485e-b001-08dbaf15e8f1
X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Sep 2023 20:14:44.0070
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5aeb77fa-643b-473e-aee0-cb54a11ccba3
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: 1C/XXeEgS/oejcnu3eD9EHzcE+ADlGHoHMu7hBiItuuq5XBOPq10g6VsI+vnqtgqUcIft8sUtW9lUX5fqbj09A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR20MB6390

On Tue, 05 Sep 2023, Stefano Stabellini wrote:
> On Thu, 31 Aug 2023, Anthony Chan wrote:
> > On Thu, 30 Aug 2023, Stefano Stabellini wrote:
> > > On Wed, 30 Aug 2023, Anthony Chan wrote:
> > > > On Tue, 29 Aug 2023, Stefano Stabellini wrote:
> > > > > On Tue, 29 Aug 2023, Anthony Chan wrote:
> > > > > > Hi all,
> > > > > >
> > > > > > My name is Tony and I've been researching/developing using
> > > > > > Xen for potential upcoming uses in our embedded systems.  I
> > > > > > started with Xen using Xilinx tools about a year ago and
> > > > > > still have lots to learn about what it can to do in the
> > > > > > embedded space.  So far, I've managed to integrate Xen and
> > > > > > Linux into an existing product that exclusively runs
> > > > > > bare-metal code on a ZynqMP SoC and migrate some of the
> > > > > > functionality into custom Linux driver/userspace.
> > > > > >
> > > > > > I'm now looking at low power support, for now at least
> > > > > > between Xen
> > > > > > (4.16) and Linux (5.15) dom0.  I've tried a few different
> > > > > > Linux kernel configs around power management and each time I
> > > > > > try to suspend from linux dom0 (via sysfs or systemctl), Xen
> > > > > > will watchdog on dom0 guest.
> > > > > > AFAIK, Xen should trap on a 'WFI' from guests, but from what
> > > > > > I can tell debugging through the linux suspend process is
> > > > > > it's spinning in a 'suspend- to-idle' loop before it can get
> > > > > > to issuing a 'WFI' or using PSCI interface to notify Xen.
> > > > > > I'm beginning to suspect that 'low power' support for embedded
> > > > > > arm64 just isn't quite there yet, or am I missing something
> > > > > > in the configs?
> > > > > >
> > > > > > I realize this could very well be a Linux 'issue' but
> > > > > > checking here first.  I know Xen presents a flattened device
> > > > > > tree to Linux without CPU idle-state nodes and maybe this is
> > > > > > causing the linux guest to only do the suspend- to-idle
> > > > > > mode?  I should mention that I'm booting up using dom0less
> > > > > > feature if that matters.
> > > > >
> > > > >
> > > > > Hi Anthony,
> > > > >
> > > > > Assuming you are using the default Xen command line parameters
> > > > > for Xilinx boards: sched=3Dnull vwfi=3Dnative, then if the guest
> > > > > uses WFI, the CPU will execute WFI directly and go into low
> > > > > power mode.
> > > > Yes, using these command line params.
> > > >
> > > > > Given the issue you are describing, I am suspecting the guest
> > > > > is not issuing
> > > > > WFI: that is simple and known to work. Instead, I suspect that
> > > > > Linux might be trying to use PSCI_suspend in a way that is not
> > > > > supported or well- implemented by Xen.
> > > > >
> > > > > Can you check? You can add a printk in Linux
> > > > > drivers/firmware/psci/psci.c:__psci_cpu_suspend or in Xen
> > > > > xen/arch/arm/vpsci.c:do_psci_0_2_cpu_suspend
> > > > Instrumented both places it doesn't appear to reach there.  In
> > > > kernel/power/suspend.c, there's a call to s2idle_loop that it's
> > > > currently 'stuck' in and I think it doesn't get to the psci suspend=
 your
> > > > referring till afterwards, when suspend_ops->enter is called.
> > > > Unfortunately, without any idle-states nodes in the FDT, the
> > > > only suspend state Linux is defaults to is 'suspend to idle'.
> > >
> > > The fact that Linux uses "suspend to idle" is not a problem
> > > because as I mentioned WFI or PSCI_suspent are not different on
> > > Xen. That part is OK.
> > What if using "suspend to idle" is preventing a WFI/PSCI_suspend?
> > Which is what I believe I'm currently seeing in my setup.  In
> > kernel/power/suspend.c, suspend_devices_and_enter(), it gets into
> > the this s2idle_loop and upon resuming from idle, it jumps past the
> > point where I believe a WFI/PSCI_suspend can happen.
> > if (state =3D=3D PM_SUSPEND_TO_IDLE) {
> >                 s2idle_loop();
> >                 goto Platform_wake;
> > }
>
> If that is the case, then it looks like a Linux bug. Maybe something
> along these lines?
>
> https://can01.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Flore
> .k%2F&data=3D05%7C01%7Canthonychan%40nureva.com%7Ccf5e956c6a4d42b1460a08
> dbaf13e021%7C5aeb77fa643b473eaee0cb54a11ccba3%7C1%7C0%7C63829627212319
> 7144%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBT
> iI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=3DlDfILPgJQQQPJOL44%2BcU
> %2BN2RFOs8L6F4AE11kvOhOQE%3D&reserved=3D0
> ernel.org%2Flinux-arm-
> kernel%2F4665489.GXAFRqVoOG%40kreacher%2FT%2F%23m6edda92d0b5
> dc09f8e05e7d6db3807501b7249f4&data=3D05%7C01%7Canthonychan%40n
> ureva.com%7C144641906bef48b9180f08dbae7bc1d8%7C5aeb77fa643b47
> 3eaee0cb54a11ccba3%7C1%7C0%7C638295618800415028%7CUnknown
> %7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1ha
> WwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=3D%2Fv%2FHpI1ix3yhDJ
> 75oejWzDfUqB8SqOQzkU3clJzMOtw%3D&reserved=3D0

Thanks, I've tried patches that stemmed from that discussion but unfortunat=
ely,
doesn't resolve the issue.  In fact, the s2idle_loop branch might not be th=
e problem at all.  I experimented with Xen to allow the 'idle-states' into =
the FDT and prevented xen_guest_init on Linux from disabling the 'cpuidle' =
driver (arch/arm/xen/enlighten.c).  When I trigger a suspend, I can see now=
 another thread (believe it's the idle thread) call into drivers/firmware/p=
sci/psci.c:__psci_cpu_suspend and then the Xen counterpart at
xen/arch/arm/vpsci.c:do_psci_0_2_cpu_suspend.  The normal 'suspend' thread =
still goes
into the s2idle_loop.  Eventually, Xen still watchdogs on the dom0 VM.

sonatalinux:/home/petalinux# systemctl suspend
[ 4139.601780] PM: suspend entry (s2idle)
[ 4139.624705] Filesystems sync: 0.022 seconds
[ 4139.624779] Preparing system for sleep (s2idle)
[ 4139.634667] Freezing user space processes ... (elapsed 0.001 seconds) do=
ne.
[ 4139.637531] OOM killer disabled.
[ 4139.640797] Freezing remaining freezable tasks ... (elapsed 0.015 second=
s) done.
[ 4139.657880] Suspending system (s2idle)
[ 4139.668417] macb ff0e0000.ethernet: gem-ptp-timer ptp clock unregistered=
.
[ 4139.678642] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.15.0-xilinx-v202=
2.1 #1
[ 4139.678642] Hardware name: xlnx,zynqmp (DT)
[ 4139.678642] Call trace:
[ 4139.678642]  dump_backtrace+0x0/0x1a8
[ 4139.678642]  show_stack+0x18/0x30
[ 4139.678642]  dump_stack_lvl+0x7c/0xa0
[ 4139.678642]  dump_stack+0x18/0x34
[ 4139.678642]  psci_0_2_cpu_suspend+0x28/0x4c
[ 4139.678642]  psci_suspend_finisher+0x2c/0x38
[ 4139.678642]  cpu_suspend+0x4c/0xb4
[ 4139.678642]  psci_cpu_suspend_enter+0x5c/0x60
[ 4139.678642]  psci_enter_idle_state+0x60/0x74
[ 4139.678642]  cpuidle_enter_s2idle+0x78/0xec
[ 4139.678642]  do_idle+0x1f4/0x258
[ 4139.678642]  cpu_startup_entry+0x24/0x3c
[ 4139.678642]  rest_init+0xdc/0xec
[ 4139.678642]  arch_call_rest_init+0x10/0x1c
[ 4139.678642]  start_kernel+0x604/0x644
[ 4139.678642]  __primary_switched+0xa4/0xac
[ 4139.678642] __psci_cpu_suspend
(XEN) do_psci_0_2_cpu_suspend
(XEN) Watchdog timer fired for domain 0
(XEN) Hardware Dom0 shutdown: watchdog rebooting machine


CONFIDENTIALITY NOTICE: This e-mail, including any attachments, may contain=
 information that is confidential and privileged. Any unauthorized disclosu=
re, reproduction or use of this e-mail is prohibited. If you are not the in=
tended recipient, please notify the sender by reply e-mail or telephone and=
 permanently delete this e-mail and any reproductions immediately.


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 20:26:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 20:26:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596856.930924 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdz6N-0000ku-1n; Wed, 06 Sep 2023 20:26:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596856.930924; Wed, 06 Sep 2023 20:26:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdz6M-0000kn-VH; Wed, 06 Sep 2023 20:26:14 +0000
Received: by outflank-mailman (input) for mailman id 596856;
 Wed, 06 Sep 2023 20:26:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdz6L-0000kI-Ot
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 20:26:13 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9e1aca1c-4cf3-11ee-9b0d-b553b5be7939;
 Wed, 06 Sep 2023 22:26:11 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 767DAB81C22;
 Wed,  6 Sep 2023 20:26:10 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5706FC433C7;
 Wed,  6 Sep 2023 20:26:08 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9e1aca1c-4cf3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694031969;
	bh=iDL2glLCGqmIqCjYXgPASikdmyuk+pR1zspWlFJWfp4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=tQuSe2gDXyh6NzqG3QuPG0K1ox1y6rq7cIJHqbe8AqBNcYXUGTFItbioP0pkit6Mz
	 e5ykVZeYxqamoz2bF+nUV3EVj+oDOdF8sAVLIMTkxCQh1Bm21xirUAEjNMs/WMC7cW
	 0Csu/NNAUv/PAgdAbiEoUsTKEHH/he9O6n6DNomSnGRD8eYPWfaXqhWb2IATRXD/aX
	 czo/wCPSZlr5zrON7QHBJNZyw+LY/tsJObT5GI5qWh9BsJyxRP/3OBZWrsjot2g68j
	 N1lgPnVFrnVrZiPhoOuN+WLerSJ9Yx0ecuaDXAvky3wubycx7q+ucXla9dRnl63C9M
	 sOa34lVxkfuBg==
Date: Wed, 6 Sep 2023 13:26:06 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Vikram Garhwal <vikram.garhwal@amd.com>
cc: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>
Subject: Re: [PATCH] xen/arm: Fix printk specifiers and arguments in
 iomem_remove_cb()
In-Reply-To: <ZPjW3LT9S5af_1Im@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309061326000.6458@ubuntu-linux-20-04-desktop>
References: <20230906103014.19574-1-michal.orzel@amd.com> <ZPjW3LT9S5af_1Im@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-1370908706-1694031968=:6458"

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-1370908706-1694031968=:6458
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Wed, 6 Sep 2023, Vikram Garhwal wrote:
> On Wed, Sep 06, 2023 at 12:30:14PM +0200, Michal Orzel wrote:
> > When building Xen for arm32 with CONFIG_DTB_OVERLAY, the following
> > error is printed:
> > 
> > common/dt-overlay.c: In function ‘iomem_remove_cb’:
> > ././include/xen/config.h:55:24: error: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘long unsigned int’ [-Werror=format=]
> > 
> > Function parameters s and e (denoting MMIO region) are of type unsigned
> > long and indicate frame numbers and not addresses. This also means that
> > the arguments passed to printk() are incorrect (using PAGE_ALIGN() or
> > PAGE_MASK ANDed with a frame number results in unwanted output). Fix it.
> > 
> > Take the opportunity to switch to %pd specifier to print domain id in
> > a consolidated way.
> > 
> > Fixes: 7e5c4a8b86f1 ("xen/arm: Implement device tree node removal functionalities")
> > Signed-off-by: Michal Orzel <michal.orzel@amd.com>
> Reviewed-by: Vikram Garhwal <vikram.garhwal@amd.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> > ---
> > After this patch (and the one for xl), we are left with one issue breaking CI:
> > https://gitlab.com/xen-project/patchew/xen/-/jobs/5026938514
> > ---
> >  xen/common/dt-overlay.c | 6 ++----
> >  1 file changed, 2 insertions(+), 4 deletions(-)
> > 
> > diff --git a/xen/common/dt-overlay.c b/xen/common/dt-overlay.c
> > index b07a6128dc99..5663a049e90a 100644
> > --- a/xen/common/dt-overlay.c
> > +++ b/xen/common/dt-overlay.c
> > @@ -251,10 +251,8 @@ static int iomem_remove_cb(unsigned long s, unsigned long e, void *dom,
> >      rc = iomem_deny_access(d, s, e);
> >      if ( rc )
> >      {
> > -        printk(XENLOG_ERR "Unable to remove dom%d access to"
> > -               " 0x%"PRIx64" - 0x%"PRIx64"\n",
> > -               d->domain_id,
> > -               s & PAGE_MASK, PAGE_ALIGN(e) - 1);
> > +        printk(XENLOG_ERR "Unable to remove %pd access to %#lx - %#lx\n",
> > +               d, s, e);
> >      }
> >      else
> >          *c += e - s + 1;
> > -- 
> > 2.25.1
> > 
> 
--8323329-1370908706-1694031968=:6458--


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 20:37:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 20:37:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596865.930937 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdzGs-00031b-3P; Wed, 06 Sep 2023 20:37:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596865.930937; Wed, 06 Sep 2023 20:37:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdzGs-00031U-0p; Wed, 06 Sep 2023 20:37:06 +0000
Received: by outflank-mailman (input) for mailman id 596865;
 Wed, 06 Sep 2023 20:37:04 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdzGq-00031O-BR
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 20:37:04 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 22f053aa-4cf5-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 22:37:03 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id CA9F2B81C64;
 Wed,  6 Sep 2023 20:37:02 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8B8AFC433C8;
 Wed,  6 Sep 2023 20:37:00 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 22f053aa-4cf5-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694032621;
	bh=lFxGViauqWhm+2jjxoMvcY72XJzzXFQlCyVQR0IwWt4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=LGW3un12+1J5XvTxLVcFWBo5/YLN/hycSbdgSe2CEMlF6JZJZ/bS168AD47FQf3vy
	 bFlYPQUDM9QDdOGxX2i/Is1sLnYiKs4tJVXRB0br9vltlJYOeT6iIWkKIPGSNWfhUu
	 B4tfbJNgSSJSo+LntKRGGXXMOnPQGpHG9kvU7Ab1dYhNUQugb21DFqyn9T2csKRkQA
	 csxvc8mEJ0Sx9aCn0RRx8144mqUdZH/WpHpVBM+ZpS7l1nTSiGCTlAXvkA4RShS8Ly
	 LGVg7XCEjAw37Pe4oeCkiFAWqnC6dwApRObkSQSxDUeLjdWokIytcsrBVRNUpWNPqz
	 AJIeY4znCYzAQ==
Date: Wed, 6 Sep 2023 13:36:58 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Henry Wang <Henry.Wang@arm.com>
cc: Jan Beulich <jbeulich@suse.com>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
    Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, 
    Volodymyr Babchuk <volodymyr_babchuk@epam.com>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>
Subject: Re: [PATCH v2] Arm: constrain {,u}int64_aligned_t in public header
In-Reply-To: <DAF26DA2-3438-4B44-B783-2C7445618CF1@arm.com>
Message-ID: <alpine.DEB.2.22.394.2309061336532.6458@ubuntu-linux-20-04-desktop>
References: <6bea2061-e6df-2cea-4bff-858b0f44a0c2@suse.com> <DAF26DA2-3438-4B44-B783-2C7445618CF1@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 5 Sep 2023, Henry Wang wrote:
> Hi Jan,
> 
> > On Sep 5, 2023, at 16:26, Jan Beulich <jbeulich@suse.com> wrote:
> > 
> > For using a GNU extension, it may not be exposed in general, just like
> > is done on x86 (except that here we need to also work around not all of
> > the tool stack actually defining __XEN_TOOLS__). External consumers (not
> > using gcc or a compatible compiler) need to make this type available up
> > front (just like we expect {,u}int<N>_t to be supplied) - unlike on x86
> > the type is actually needed outside of tools-only interfaces, because
> > guest handle definitions use it.
> > 
> > While there also add underscores around "aligned".
> > 
> > Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> I used the same testing approach to redo the test for v2, and everything
> works fine this time.
> 
> Tested-by: Henry Wang <Henry.Wang@arm.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 20:49:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 20:49:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596872.930951 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdzSw-0005QB-6A; Wed, 06 Sep 2023 20:49:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596872.930951; Wed, 06 Sep 2023 20:49:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qdzSw-0005Q4-3O; Wed, 06 Sep 2023 20:49:34 +0000
Received: by outflank-mailman (input) for mailman id 596872;
 Wed, 06 Sep 2023 20:49:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DwRh=EW=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qdzSv-0005Py-Aw
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 20:49:33 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e06a072f-4cf6-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 22:49:31 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 10C4D611AD;
 Wed,  6 Sep 2023 20:49:30 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id BBBB7C433C7;
 Wed,  6 Sep 2023 20:49:28 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e06a072f-4cf6-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694033369;
	bh=V/7H0ut+dh0la5+N7uW+bsDKf7sRhEWP/lQ2qvhN+60=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=XPkHZS8CmFvlKG8YEBFORL+5/Lh+UHIclI2L5H1MGaEJRnY1EBk2utN44pseemosg
	 Owm8v/Ej9NtXVzDA24haR4ed1jgNzx00FeNoWgEfs8VTMfXROtLWH2elbV6C/d8l3D
	 N2q7VR3qzb229se9UHs42ICjAeHXcizJntJ1oHiLhXFPRcZ53eb4MfyXXA9LK0utz+
	 oVT/m4zOYIL42GcKzGXVAv/MnWNo35dVVT+nLulMXuoQCz1e4xAo/7jd4Dz0+HCmdv
	 W8GPL4Lo1WJ7UbxHP6OoA9jWOm9m8DwMNIfUQSssW+QPjnvVsuZfcP7/08W2XqnTuk
	 iDzjA/XRRu/rQ==
Date: Wed, 6 Sep 2023 13:49:26 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Simon Gaiser <simon@invisiblethingslab.com>, 
    "committers@xenproject.org" <committers@xenproject.org>, 
    =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, 
    xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
In-Reply-To: <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
Message-ID: <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com> <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 1 Sep 2023, Jan Beulich wrote:
> On 07.08.2023 11:38, Simon Gaiser wrote:
> > It seems some firmwares put dummy entries in the ACPI MADT table for non
> > existing processors. On my NUC11TNHi5 those have the invalid APIC ID
> > 0xff. Linux already has code to handle those cases both in
> > acpi_parse_lapic [1] as well as in acpi_parse_x2apic [2]. So add the
> > same check to Xen.
> > 
> > Note that on some older (2nd gen Core i) laptop of mine I also saw dummy
> > entries with a valid APIC ID. Linux would still ignore those because
> > they have !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE. But in Xen
> > this check is only active for madt_revision >= 5. But since this version
> > check seems to be intentionally I leave that alone.
> > 
> > Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f3bf1dbe64b62a2058dd1944c00990df203e8e7a # [1]
> > Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=10daf10ab154e31237a8c07242be3063fb6a9bf4 # [2]
> > Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
> 
> This patch was committed with unaddressed review comments. The normal action
> in such a case would be to revert, expecting a v2 to arrive. One alternative
> here would be a timely incremental patch submission. Another alternative,
> considering in particular Thomas's most recent reply, would be to properly
> downgrade CPU hotplug support in SUPPORT.md (with a corresponding entry in
> CHANGELOG.md).

I am in favor of downgrading physical CPU hotplug support in
SUPPORT.md.

I noticed that there is no entry for physical CPU hotplug support in
SUPPORT.md today. Should we assume that it is not supported already as
it is not listed as supported?

Specifically, would it be a good idea to add a sentence at the top of
the file saying that anything not explicitly listed is not supported?


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 21:38:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 21:38:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596882.930970 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe0E7-0005sL-Re; Wed, 06 Sep 2023 21:38:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596882.930970; Wed, 06 Sep 2023 21:38:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe0E7-0005sE-Oj; Wed, 06 Sep 2023 21:38:19 +0000
Received: by outflank-mailman (input) for mailman id 596882;
 Wed, 06 Sep 2023 21:38:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=TIJF=EW=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qe0E6-0005s8-Gk
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 21:38:18 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id af7c2668-4cfd-11ee-8783-cb3800f73035;
 Wed, 06 Sep 2023 23:38:16 +0200 (CEST)
Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7])
 by mailhost.m5p.com (8.17.1/8.15.2) with ESMTPS id 386Lc3YN011085
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Wed, 6 Sep 2023 17:38:08 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 386Lc1v5011084;
 Wed, 6 Sep 2023 14:38:01 -0700 (PDT) (envelope-from ehem)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: af7c2668-4cfd-11ee-8783-cb3800f73035
Date: Wed, 6 Sep 2023 14:38:01 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Development <D@dlsemc.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: Xens handling of MCE
Message-ID: <ZPjxOTRipQ6sEqF5@mattapan.m5p.com>
References: <521ab5aef01a4c64bef65435e7c284bd@dlsemc.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <521ab5aef01a4c64bef65435e7c284bd@dlsemc.com>
X-Spam-Status: No, score=2.4 required=10.0 tests=KHOP_HELO_FCRDNS,URI_DOTEDU
	autolearn=no autolearn_force=no version=3.4.6
X-Spam-Level: **
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mattapan.m5p.com

On Thu, Aug 31, 2023 at 07:52:05PM +0000, Development wrote:
> 
>     However, in 2009-02, "cegger" wrote MCA/MCE_in_Xen, a proposal for having xen start checking the information
>     Xen started accessing the EDAC information (now called "MCE") at some point after that, which blocks the linux kernel in dom0 from accessing it.
>     (I also found what appears to be related sides from a presentation from 2012 at: https://lkml.iu.edu/hypermail/linux/kernel/1206.3/01304/xen_vMCE_design_%28v0_2%29.pdf )
> 

I hadn't seen that before.  Clearly shows someone who had no idea what
they were doing designed it.  The author was thinking "virtualize 
everything!", whereas MCE is a perfect situation for paravirtualization.
Let Dom0 process MCE events (which allows use of Linux's more up to date
MCE drivers), then let Dom0 notify Xen if action is needed (a page was
corrupted, tell the effected domain).

There was a recent proposal to simply import Linux's rather more recent
MCE/EDAC source.  This hasn't happened yet.  For people using Xen this
has been a very concerning issue for some time.

This seems a combination of not enough people using Xen not yet having
gotten quite noisy enough (I think the threshold is being approached),
plus the people with the right development skills being out of touch.

Commit 767f4b620edadac579c9b8b6660761d4285fa6f9 to the Linux kernel yet
again shows someone *REALLY* out of touch!


-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \BS (    |         ehem+sigmsg@m5p.com  PGP 87145445         |    )   /
  \_CS\   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445




From xen-devel-bounces@lists.xenproject.org Wed Sep 06 23:10:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 23:10:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596902.931015 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe1fJ-0001c6-8g; Wed, 06 Sep 2023 23:10:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596902.931015; Wed, 06 Sep 2023 23:10:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe1fJ-0001bz-69; Wed, 06 Sep 2023 23:10:29 +0000
Received: by outflank-mailman (input) for mailman id 596902;
 Wed, 06 Sep 2023 23:10:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=r+8v=EW=intel.com=lkp@srs-se1.protection.inumbo.net>)
 id 1qe1fH-0001ZS-Hq
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 23:10:27 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.88])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8c65e70b-4d0a-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 01:10:21 +0200 (CEST)
Received: from fmsmga007.fm.intel.com ([10.253.24.52])
 by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 06 Sep 2023 16:10:13 -0700
Received: from lkp-server01.sh.intel.com (HELO 59b3c6e06877) ([10.239.97.150])
 by fmsmga007.fm.intel.com with ESMTP; 06 Sep 2023 16:10:09 -0700
Received: from kbuild by 59b3c6e06877 with local (Exim 4.96)
 (envelope-from <lkp@intel.com>) id 1qe1ew-0000gB-2m;
 Wed, 06 Sep 2023 23:10:06 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8c65e70b-4d0a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694041821; x=1725577821;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:in-reply-to;
  bh=fEw9pa/NdSdFIzoYPpsMEnIibMq4wIaQI1Ds5infKOM=;
  b=LuEXLknw/9cAovSwTeTUhE6AQr0f0/DCe6EDgOzOm/XINphnedE62KkZ
   UgdRP83HTP6/A0A18QGwzMZB3hhjZeqDTN5Ip2+qEV+i5hi6jofSV+0GU
   InQkLdiTgdKKYYXTHKcTf6tcwE6HfJB6PYPgQ1sQg/Xs1K0mo5/euYNNP
   Nnk7ZM/ypOi/bCgc4UIgKs8aTqfES4NqM+NaBkA8NN4qNnmRY4FLpH7EE
   XCsD5U+Qb9EmfsY2Nkeb8J0ALNzNlUgYXvvhKSvF/CoPApAKvmZ96cu2v
   jC8BareLHg8bJ0JSQiM6EyVamdnP2+tKa99yzI6Bmejs+mYzf9fPvhESd
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10825"; a="408215570"
X-IronPort-AV: E=Sophos;i="6.02,233,1688454000"; 
   d="scan'208";a="408215570"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10825"; a="744866586"
X-IronPort-AV: E=Sophos;i="6.02,233,1688454000"; 
   d="scan'208";a="744866586"
Date: Thu, 7 Sep 2023 07:09:16 +0800
From: kernel test robot <lkp@intel.com>
To: Jason Andryuk <jandryuk@gmail.com>, Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Len Brown <lenb@kernel.org>
Cc: oe-kbuild-all@lists.linux.dev, Roger Pau Monne <roger.pau@citrix.com>,
	stable@vger.kernel.org, Jason Andryuk <jandryuk@gmail.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>, x86@kernel.org,
	"H. Peter Anvin" <hpa@zytor.com>, xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org
Subject: Re: [PATCH v2] acpi/processor: sanitize _PDC buffer bits when
 running as Xen dom0
Message-ID: <202309070625.dJUDcGZg-lkp@intel.com>
References: <20230906182125.48642-1-jandryuk@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230906182125.48642-1-jandryuk@gmail.com>

Hi Jason,

kernel test robot noticed the following build errors:

[auto build test ERROR on tip/x86/core]
[also build test ERROR on v6.5]
[cannot apply to rafael-pm/linux-next linus/master next-20230906]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Jason-Andryuk/acpi-processor-sanitize-_PDC-buffer-bits-when-running-as-Xen-dom0/20230907-022235
base:   tip/x86/core
patch link:    https://lore.kernel.org/r/20230906182125.48642-1-jandryuk%40gmail.com
patch subject: [PATCH v2] acpi/processor: sanitize _PDC buffer bits when running as Xen dom0
config: x86_64-randconfig-r011-20230907 (https://download.01.org/0day-ci/archive/20230907/202309070625.dJUDcGZg-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20230907/202309070625.dJUDcGZg-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202309070625.dJUDcGZg-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/acpi/processor_pdc.c: In function 'acpi_processor_eval_pdc':
>> drivers/acpi/processor_pdc.c:147:17: error: implicit declaration of function 'xen_sanitize_pdc' [-Werror=implicit-function-declaration]
     147 |                 xen_sanitize_pdc(buffer);
         |                 ^~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +/xen_sanitize_pdc +147 drivers/acpi/processor_pdc.c

   116	
   117	/*
   118	 * _PDC is required for a BIOS-OS handshake for most of the newer
   119	 * ACPI processor features.
   120	 */
   121	static acpi_status
   122	acpi_processor_eval_pdc(acpi_handle handle, struct acpi_object_list *pdc_in)
   123	{
   124		acpi_status status = AE_OK;
   125		union acpi_object *obj;
   126		u32 *buffer = NULL;
   127	
   128		obj = pdc_in->pointer;
   129		buffer = (u32 *)(obj->buffer.pointer);
   130	
   131		if (boot_option_idle_override == IDLE_NOMWAIT) {
   132			/*
   133			 * If mwait is disabled for CPU C-states, the C2C3_FFH access
   134			 * mode will be disabled in the parameter of _PDC object.
   135			 * Of course C1_FFH access mode will also be disabled.
   136			 */
   137			buffer[2] &= ~(ACPI_PDC_C_C2C3_FFH | ACPI_PDC_C_C1_FFH);
   138		}
   139	
   140		if (xen_initial_domain()) {
   141			/*
   142			 * When Linux is running as Xen dom0, the hypervisor is the
   143			 * entity in charge of the processor power management, and so
   144			 * Xen needs to check the OS capabilities reported in the _PDC
   145			 * buffer matches what the hypervisor driver supports.
   146			 */
 > 147			xen_sanitize_pdc(buffer);
   148		}
   149	
   150		status = acpi_evaluate_object(handle, "_PDC", pdc_in, NULL);
   151	
   152		if (ACPI_FAILURE(status))
   153			acpi_handle_debug(handle,
   154			    "Could not evaluate _PDC, using legacy perf control\n");
   155	
   156		return status;
   157	}
   158	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


From xen-devel-bounces@lists.xenproject.org Wed Sep 06 23:45:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 06 Sep 2023 23:45:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596914.931041 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2Cq-0005fm-57; Wed, 06 Sep 2023 23:45:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596914.931041; Wed, 06 Sep 2023 23:45:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2Cq-0005ff-0C; Wed, 06 Sep 2023 23:45:08 +0000
Received: by outflank-mailman (input) for mailman id 596914;
 Wed, 06 Sep 2023 23:45:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hRy5=EW=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qe2Co-0005fZ-6I
 for xen-devel@lists.xenproject.org; Wed, 06 Sep 2023 23:45:06 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 654b9d67-4d0f-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 01:45:02 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id DECEA82857C4;
 Wed,  6 Sep 2023 18:45:00 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id Lp2Q7wrJlamB; Wed,  6 Sep 2023 18:45:00 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 0BB8782857C5;
 Wed,  6 Sep 2023 18:45:00 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id vbB6nI-4Z1oK; Wed,  6 Sep 2023 18:44:59 -0500 (CDT)
Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 92B0282857C4;
 Wed,  6 Sep 2023 18:44:59 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 654b9d67-4d0f-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 0BB8782857C5
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694043900; bh=O4CBTmnG/tOoCAk90JJoYmxdN7o69dDb0AnnPW/APpQ=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=qODHAZoenyRDF5F9EdBGaB6zYNGkkeulH1Zk32rUSScitYjahgTgUB7RJBKpshm/l
	 5Yi56TomSZSs7xakRDbPqIzBWthaOFnpkGz16bH72dUOLTKODD4ujMVh3KtTmy8Xbn
	 oMeB4oI+/nON0GHwYLPBGJVoxHyFDa/kC57qfY/w=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <8ca65bea-75a5-369f-8124-d598aa87e24f@raptorengineering.com>
Date: Wed, 6 Sep 2023 18:44:59 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH 2/2] xen/ppc: Drop support for pseries/OpenFirmware
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.1693949731.git.sanastasio@raptorengineering.com>
 <8c09322cff220d4d102d50b2fc45e9290106d109.1693949731.git.sanastasio@raptorengineering.com>
 <e5fc9fe7-83fa-98a0-02db-8d28fc2b0524@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <e5fc9fe7-83fa-98a0-02db-8d28fc2b0524@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/6/23 1:44 AM, Jan Beulich wrote:
> On 05.09.2023 23:46, Shawn Anastasio wrote:
>> Since QEMU's PowerNV support has matured to the point where it is
>> now suitable for development, drop support for booting on the
>> paravirtualized pseries machine type and its associated interfaces.
> 
> I think you want to mention that the pseries functionality was actually
> broken by the earlier change, both verbally and by means of a Fixes:
> tag. The breakage actually may also want mentioning in patch 1 as well
> as the cover letter.
>

Will do. I'll add mentions to the breakage in both patches and add a
Fixes: tag to this patch specifically.

>> --- a/xen/arch/ppc/setup.c
>> +++ b/xen/arch/ppc/setup.c
>> @@ -14,17 +14,12 @@ void __init noreturn start_xen(unsigned long r3, unsigned long r4,
>>  {
>>      if ( r5 )
>>      {
>> -        /* OpenFirmware boot protocol */
>> -        boot_of_init(r5);
>> +        /* Unsupported OpenFirmware boot protocol */
>> +        __builtin_trap();
>>      }
>>      else
>>      {
>> -        /*
>> -         * kexec boot protocol
>> -         *
>> -         * TODO: This currently assumes an OPAL/PowerNV system, but it's also
>> -         * possible to be kexec'd on an OF system.
>> -         */
>> +        /* kexec boot protocol */
>>          boot_opal_init((void *)r3);
> 
> At least part of the comment may want retaining, as the code only handles
> the OPAL case?
>

Since we're now explicitly only supporting Opal/PowerNV I don't think
there's any need to point out that this code path doesn't properly
handle the pseries+kexec case. boot_opal_init will gracefully
fail under that circumstance anyway when it tries to find an /ibm,opal
device tree node.

> Jan

Thanks,
Shawn



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 00:02:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 00:02:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596922.931057 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2TD-0000wC-Fl; Thu, 07 Sep 2023 00:02:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596922.931057; Thu, 07 Sep 2023 00:02:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2TD-0000uL-BZ; Thu, 07 Sep 2023 00:02:03 +0000
Received: by outflank-mailman (input) for mailman id 596922;
 Thu, 07 Sep 2023 00:02:02 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=myun=EX=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qe2TC-0000nY-5g
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 00:02:02 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c429057b-4d11-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 02:02:00 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 4435E82854B3;
 Wed,  6 Sep 2023 19:01:59 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id md8U0ps7x769; Wed,  6 Sep 2023 19:01:57 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id B6A9A82857F5;
 Wed,  6 Sep 2023 19:01:57 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id b8aXadSV1Hv9; Wed,  6 Sep 2023 19:01:57 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 1E0508285589;
 Wed,  6 Sep 2023 19:01:56 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c429057b-4d11-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com B6A9A82857F5
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694044917; bh=7sBp8XJ8KbdQFCiJLgArYXVYw6X5ajJplyaE4vmYOEQ=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=a8BZw41BRx2U9iLwXzb68v3xF88CVjhEM+njjcg/fmi8iT3f6HRtvfjmoQpuyXbzX
	 bWYLOtk+0bwOFUQiFMGsKAy/WdkThxBXPm2kaxl+6PUAMRwdMV/swnMiSalraDaIS1
	 lp38uXKzSNeGU3j4+gX2gvw/iyq9UOEVBpnM/HmY=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH v2 1/2] automation: Switch ppc64le tests to PowerNV machine type
Date: Wed,  6 Sep 2023 19:01:45 -0500
Message-Id: <85b53762ba04a349ba099cf5629e7ac24f496d69.1694044614.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694044614.git.sanastasio@raptorengineering.com>
References: <cover.1694044614.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Run ppc64le tests with the PowerNV machine type (bare metal) instead of
the paravirtualized pseries machine. This requires a more modern version
of QEMU than is present in debian bullseye's repository, so update the
dockerfile to build QEMU from source.

Support for booting on pseries was broken by 74b725a64d80 ('xen/ppc:
Implement initial Radix MMU support') which resulted in CI failures. In
preparation for removing pseries support entirely, switch the CI
infrastructure to the PowerNV machine type.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
 .../build/debian/bullseye-ppc64le.dockerfile  | 37 ++++++++++++++++++-
 automation/gitlab-ci/test.yaml                |  2 +-
 2 files changed, 36 insertions(+), 3 deletions(-)

diff --git a/automation/build/debian/bullseye-ppc64le.dockerfile b/automation/build/debian/bullseye-ppc64le.dockerfile
index 8fad26e903..15827bbcf4 100644
--- a/automation/build/debian/bullseye-ppc64le.dockerfile
+++ b/automation/build/debian/bullseye-ppc64le.dockerfile
@@ -1,4 +1,36 @@
+FROM debian:bullseye-slim AS builder
+
+ENV DEBIAN_FRONTEND=noninteractive
+ENV QEMU_TAG=stable-8.1
+ENV USER root
+
+# dependencies for qemu build
+RUN apt-get update && \
+    apt-get --quiet --yes install \
+        git \
+        build-essential \
+        python3-minimal \
+        python3-elementpath \
+        python3-pip \
+        ninja-build \
+        libglib2.0-dev \
+        libpixman-1-dev
+
+RUN mkdir /build
+WORKDIR /build
+
+# QEMU build from git
+RUN git clone --depth 1 --branch "${QEMU_TAG}" https://github.com/qemu/qemu && \
+    mkdir qemu/build && \
+    cd qemu/build && \
+    ../configure --target-list=ppc64-softmmu && \
+    ninja && \
+    ninja install
+
 FROM debian:bullseye-slim
+COPY --from=builder /usr/local/bin/qemu-system-ppc64 /usr/local/bin/qemu-system-ppc64
+COPY --from=builder /usr/local/share/qemu/skiboot.lid /usr/local/share/qemu/skiboot.lid
+
 LABEL maintainer.name="The Xen Project" \
       maintainer.email="xen-devel@lists.xenproject.org"
 
@@ -22,8 +54,9 @@ RUN apt-get update && \
         gcc-powerpc64le-linux-gnu \
         make \
         python3-minimal \
-        # for test phase
-        qemu-system-ppc \
+        # QEMU runtime dependencies
+        libglib2.0-0 \
+        libpixman-1-0 \
         && \
         apt-get autoremove -y && \
         apt-get clean && \
diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
index 9aa8deabea..9b26ccd907 100644
--- a/automation/gitlab-ci/test.yaml
+++ b/automation/gitlab-ci/test.yaml
@@ -457,6 +457,6 @@ qemu-smoke-riscv64-gcc:
 qemu-smoke-ppc64le-pseries-gcc:
   extends: .qemu-ppc64le
   script:
-    - ./automation/scripts/qemu-smoke-ppc64le.sh pseries-5.2 2>&1 | tee ${LOGFILE}
+    - ./automation/scripts/qemu-smoke-ppc64le.sh powernv9 2>&1 | tee ${LOGFILE}
   needs:
     - debian-bullseye-gcc-ppc64le-debug
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 00:02:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 00:02:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596921.931050 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2TD-0000nq-1L; Thu, 07 Sep 2023 00:02:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596921.931050; Thu, 07 Sep 2023 00:02:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2TC-0000nj-Up; Thu, 07 Sep 2023 00:02:02 +0000
Received: by outflank-mailman (input) for mailman id 596921;
 Thu, 07 Sep 2023 00:02:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=myun=EX=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qe2TB-0000nY-HE
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 00:02:01 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c3be75c9-4d11-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 02:01:59 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 698B58285370;
 Wed,  6 Sep 2023 19:01:58 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id fkxK2pqL2K1V; Wed,  6 Sep 2023 19:01:57 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 1884F82854B3;
 Wed,  6 Sep 2023 19:01:57 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id EzxwkdqI2b7N; Wed,  6 Sep 2023 19:01:56 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 8695C8285370;
 Wed,  6 Sep 2023 19:01:56 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c3be75c9-4d11-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 1884F82854B3
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694044917; bh=UnbMupveOP6kG7EVQIje5ftaCdc3hMXKtoOphoY0LfE=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=f0EmM/G+L/USnB7KWQDEFtibMxM6jzLXhs4vnGGJ4PzD2Re3cLApeRZ8GcmgcCzOf
	 9OnFoyp1lqUz5LP/5oCZ2/AtrrtVhDuMCJ3oJgLg8OPc+Vvk+2mhBs+hgzEL5WyzTy
	 K3Dq2NYPx3wn9rU1/5cScUNl2A2dmuRCBASWrgOc=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH v2 0/2] ppc: Drop support for QEMU pseries
Date: Wed,  6 Sep 2023 19:01:44 -0500
Message-Id: <cover.1694044614.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Hello all,

This small series drops support for the QEMU paravirtualized pseries
machine type in favor of the bare metal PowerNV platform. pseries
support was broken by 74b725a64d80 ('xen/ppc: Implement initial Radix
MMU support'), and instead of maintaining separate code paths to retain
support for the platform, I think it makes the most sense to drop it
entirely.

pseries was originally targeted for initial bringup since it has
historically been much better supported by QEMU, but PowerNV support in
QEMU has recently developed to the point where this is no longer a
concern.  Since I can think of very little practical use for running Xen
under pseries, and supporting it requires non-trivial duplication of
effort, drop support for it entirely.

This also requires a change to the ppc64le CI dockerfile to build a
newer version of QEMU than is available in the bullseye repository.

Thanks,
Shawn

--
v2: Add Fixes: tag to patch 2, add references to broken state of pseries

Shawn Anastasio (2):
  automation: Switch ppc64le tests to PowerNV machine type
  xen/ppc: Drop support for pseries/OpenFirmware

 .../build/debian/bullseye-ppc64le.dockerfile  |  37 +++++-
 automation/gitlab-ci/test.yaml                |   2 +-
 xen/arch/ppc/Makefile                         |   1 -
 xen/arch/ppc/boot-of.c                        | 113 ------------------
 xen/arch/ppc/include/asm/boot.h               |  19 ---
 xen/arch/ppc/ppc64/Makefile                   |   1 -
 xen/arch/ppc/ppc64/of-call.S                  |  83 -------------
 xen/arch/ppc/setup.c                          |  11 +-
 8 files changed, 39 insertions(+), 228 deletions(-)
 delete mode 100644 xen/arch/ppc/boot-of.c
 delete mode 100644 xen/arch/ppc/ppc64/of-call.S

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 00:02:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 00:02:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596923.931071 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2TE-0001I3-M9; Thu, 07 Sep 2023 00:02:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596923.931071; Thu, 07 Sep 2023 00:02:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2TE-0001Hw-JX; Thu, 07 Sep 2023 00:02:04 +0000
Received: by outflank-mailman (input) for mailman id 596923;
 Thu, 07 Sep 2023 00:02:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=myun=EX=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qe2TD-0000pJ-Db
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 00:02:03 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c45519f8-4d11-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 02:02:00 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 91EDA8285589;
 Wed,  6 Sep 2023 19:01:59 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id iEE5uLZXv6WY; Wed,  6 Sep 2023 19:01:58 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id E669682858A7;
 Wed,  6 Sep 2023 19:01:57 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 6DlWwavIiLPB; Wed,  6 Sep 2023 19:01:57 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 8EC8A8285370;
 Wed,  6 Sep 2023 19:01:57 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c45519f8-4d11-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com E669682858A7
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694044917; bh=ND04NUa2s2p1+dE4mN0DBIXUI5n5s0P8UgzoR2/BfMU=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=Tu/ZuYJhLXmnViVSAKdH6iAeZcVENFkKuxql3L+y1duk/L9CGa8QKexO+zpp1JoQm
	 d1HScQg90KAnpWlwrPavDd0XGZC5/D4CwsXDSfUISSFBuZA3TR9JCdXY4ccfqHzBhN
	 8Fn9IvS5XDHO1VC5o4mjGKKFxwoHs2EkXOt3DWvs=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v2 2/2] xen/ppc: Drop support for pseries/OpenFirmware
Date: Wed,  6 Sep 2023 19:01:46 -0500
Message-Id: <a13e0c54a18c4d87aae88134d9726657f9bdedc5.1694044614.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694044614.git.sanastasio@raptorengineering.com>
References: <cover.1694044614.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Since QEMU's PowerNV support has matured to the point where it is
now suitable for development, drop support for booting on the
paravirtualized pseries machine type and its associated interfaces.

Support for booting on pseries was broken by 74b725a64d80 ('xen/ppc:
Implement initial Radix MMU support'), and since there is little
practical value in continuing to support pseries as a target, just drop
support for it entirely.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Fixes: 74b725a64d80 ('xen/ppc: Implement initial Radix MMU support')
---
 xen/arch/ppc/Makefile           |   1 -
 xen/arch/ppc/boot-of.c          | 113 --------------------------------
 xen/arch/ppc/include/asm/boot.h |  19 ------
 xen/arch/ppc/ppc64/Makefile     |   1 -
 xen/arch/ppc/ppc64/of-call.S    |  83 -----------------------
 xen/arch/ppc/setup.c            |  11 +---
 6 files changed, 3 insertions(+), 225 deletions(-)
 delete mode 100644 xen/arch/ppc/boot-of.c
 delete mode 100644 xen/arch/ppc/ppc64/of-call.S

diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile
index a059ac4c0a..b3205b8f7a 100644
--- a/xen/arch/ppc/Makefile
+++ b/xen/arch/ppc/Makefile
@@ -1,6 +1,5 @@
 obj-$(CONFIG_PPC64) += ppc64/
 
-obj-y += boot-of.init.o
 obj-$(CONFIG_EARLY_PRINTK) += early_printk.init.o
 obj-y += mm-radix.o
 obj-y += opal.o
diff --git a/xen/arch/ppc/boot-of.c b/xen/arch/ppc/boot-of.c
deleted file mode 100644
index d6755ccc8e..0000000000
--- a/xen/arch/ppc/boot-of.c
+++ /dev/null
@@ -1,113 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-or-later */
-/*
- * This file was derived from Xen 3.2's xen/arch/powerpc/boot_of.c,
- * originally licensed under GPL version 2 or later.
- *
- * Copyright IBM Corp. 2005, 2006, 2007
- * Copyright Raptor Engineering, LLC
- *
- * Authors: Jimi Xenidis <jimix@watson.ibm.com>
- *          Hollis Blanchard <hollisb@us.ibm.com>
- *          Shawn Anastasio <sanastasio@raptorengineering.com>
- */
-
-#include <xen/init.h>
-#include <xen/macros.h>
-#include <xen/stdarg.h>
-#include <xen/types.h>
-#include <asm/boot.h>
-#include <asm/byteorder.h>
-#include <asm/early_printk.h>
-
-/*
- * The Open Firmware client interface is called in 32-bit mode with the MMU off,
- * so any addresses passed to it must be physical addresses under 4GB.
- *
- * Since the client interface is only used during early boot before the MMU is on
- * and Xen itself was loaded by Open Firmware (and therefore resides below 4GB),
- * we can achieve the desired result with a simple cast to uint32_t.
- */
-#define ADDR(x) ((uint32_t)(unsigned long)(x))
-
-/* OF entrypoint*/
-static unsigned long __initdata of_vec;
-
-static int __initdata of_out;
-
-static int __init of_call(const char *service, uint32_t nargs, uint32_t nrets,
-                          int32_t rets[], ...)
-{
-    int rc;
-    va_list args;
-    unsigned int i;
-    struct of_service s;
-
-    s.ofs_service = cpu_to_be32(ADDR(service));
-    s.ofs_nargs = cpu_to_be32(nargs);
-    s.ofs_nrets = cpu_to_be32(nrets);
-
-    /* Copy all the params into the args array */
-    va_start(args, rets);
-
-    for ( i = 0; i < nargs; i++ )
-        s.ofs_args[i] = cpu_to_be32(va_arg(args, uint32_t));
-
-    va_end(args);
-
-    rc = enter_of(&s, of_vec);
-
-    /* Copy all return values to the output rets array */
-    for ( i = 0; i < nrets; i++ )
-        rets[i] = be32_to_cpu(s.ofs_args[i + nargs]);
-
-    return rc;
-}
-
-static int __init of_finddevice(const char *devspec)
-{
-    int32_t rets[1] = { OF_FAILURE };
-
-    of_call("finddevice", 1, ARRAY_SIZE(rets), rets, ADDR(devspec));
-    return rets[0];
-}
-
-static int __init of_getprop(int ph, const char *name, void *buf, uint32_t buflen)
-{
-    int32_t rets[1] = { OF_FAILURE };
-
-    of_call("getprop", 4, ARRAY_SIZE(rets), rets, ph, ADDR(name), ADDR(buf),
-            buflen);
-    return rets[0];
-}
-
-int __init of_write(int ih, const char *addr, uint32_t len)
-{
-    int32_t rets[1] = { OF_FAILURE };
-
-    of_call("write", 3, ARRAY_SIZE(rets), rets, ih, ADDR(addr), len);
-    return rets[0];
-}
-
-static void __init of_putchar(char c)
-{
-    if ( c == '\n' )
-    {
-        char buf = '\r';
-        of_write(of_out, &buf, 1);
-    }
-    of_write(of_out, &c, 1);
-}
-
-void __init boot_of_init(unsigned long vec)
-{
-    int bof_chosen;
-
-    of_vec = vec;
-
-    /* Get a handle to the default console */
-    bof_chosen = of_finddevice("/chosen");
-    of_getprop(bof_chosen, "stdout", &of_out, sizeof(of_out));
-    of_out = be32_to_cpu(of_out);
-
-    early_printk_init(of_putchar);
-}
diff --git a/xen/arch/ppc/include/asm/boot.h b/xen/arch/ppc/include/asm/boot.h
index 296539cd9e..d62c3ff6e0 100644
--- a/xen/arch/ppc/include/asm/boot.h
+++ b/xen/arch/ppc/include/asm/boot.h
@@ -4,25 +4,6 @@
 
 #include <xen/types.h>
 
-/*
- * OpenFirmware boot interfaces
- */
-
-enum {
-    OF_FAILURE = -1,
-    OF_SUCCESS = 0,
-};
-
-struct of_service {
-    __be32 ofs_service;
-    __be32 ofs_nargs;
-    __be32 ofs_nrets;
-    __be32 ofs_args[10];
-};
-
-int enter_of(struct of_service *args, unsigned long entry);
-void boot_of_init(unsigned long vec);
-
 /*
  * OPAL boot interfaces
  */
diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile
index b9a91dc15f..5b88355bb2 100644
--- a/xen/arch/ppc/ppc64/Makefile
+++ b/xen/arch/ppc/ppc64/Makefile
@@ -1,3 +1,2 @@
 obj-y += head.o
-obj-y += of-call.o
 obj-y += opal-calls.o
diff --git a/xen/arch/ppc/ppc64/of-call.S b/xen/arch/ppc/ppc64/of-call.S
deleted file mode 100644
index 2a2e308f6b..0000000000
--- a/xen/arch/ppc/ppc64/of-call.S
+++ /dev/null
@@ -1,83 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-or-later */
-/*
- * Adapted from Linux's arch/powerpc/kernel/entry_64.S, with the
- * following copyright notice:
- *
- *  PowerPC version
- *    Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org)
- *  Rewritten by Cort Dougan (cort@cs.nmt.edu) for PReP
- *    Copyright (C) 1996 Cort Dougan <cort@cs.nmt.edu>
- *  Adapted for Power Macintosh by Paul Mackerras.
- *  Low-level exception handlers and MMU support
- *  rewritten by Paul Mackerras.
- *    Copyright (C) 1996 Paul Mackerras.
- *  MPC8xx modifications Copyright (C) 1997 Dan Malek (dmalek@jlc.net).
- */
-
-#include <asm/asm-offsets.h>
-#include <asm/asm-defns.h>
-#include <asm/msr.h>
-
-/* size of minimum stack frame that can hold an entire cpu_user_regs struct */
-#define STACK_SWITCH_FRAME_SIZE UREGS_sizeof
-
-    .section .init.text, "ax", @progbits
-
-ENTRY(enter_of)
-    mflr    %r0
-    std     %r0, 16(%r1)
-    stdu    %r1, -STACK_SWITCH_FRAME_SIZE(%r1) /* Save SP and create stack space */
-
-    /*
-     * Because PROM is running in 32b mode, it clobbers the high order half
-     * of all registers that it saves.  We therefore save those registers
-     * PROM might touch to the stack.  (%r0, %r3-%r13 are caller saved)
-     */
-    SAVE_GPR(2, %r1)
-    SAVE_GPR(13, %r1)
-    SAVE_NVGPRS(%r1)
-    mfcr    %r10
-    mfmsr   %r11
-    std     %r10, UREGS_cr(%r1)
-    std     %r11, UREGS_msr(%r1)
-
-    /* Put PROM address in SRR0 */
-    mtsrr0  %r4
-
-    /* Setup our trampoline return addr in LR */
-    bcl     20, 31, .+4
-0:  mflr    %r4
-    addi    %r4, %r4, 1f - 0b
-    mtlr    %r4
-
-    /* Prepare a 32-bit mode big endian MSR */
-    LOAD_IMM64(%r12, MSR_SF | MSR_LE)
-    andc    %r11, %r11, %r12
-    mtsrr1  %r11
-    rfid
-
-1:  /* Return from OF */
-    FIXUP_ENDIAN
-
-    /* Just make sure that %r1 top 32 bits didn't get corrupt by OF */
-    rldicl  %r1, %r1, 0, 32
-
-    /* Restore the MSR (back to 64 bits) */
-    ld      %r0, UREGS_msr(%r1)
-    mtmsrd  %r0
-    isync
-
-    /* Restore other registers */
-    REST_GPR(2, %r1)
-    REST_GPR(13, %r1)
-    REST_NVGPRS(%r1)
-    ld      %r4, UREGS_cr(%r1)
-    mtcr    %r4
-
-    addi    %r1, %r1, STACK_SWITCH_FRAME_SIZE
-    ld      %r0, 16(%r1)
-    mtlr    %r0
-    blr
-
-    .size enter_of, . - enter_of
-    .type enter_of, %function
diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c
index 0106e9c9da..3fc7705d9b 100644
--- a/xen/arch/ppc/setup.c
+++ b/xen/arch/ppc/setup.c
@@ -14,17 +14,12 @@ void __init noreturn start_xen(unsigned long r3, unsigned long r4,
 {
     if ( r5 )
     {
-        /* OpenFirmware boot protocol */
-        boot_of_init(r5);
+        /* Unsupported OpenFirmware boot protocol */
+        __builtin_trap();
     }
     else
     {
-        /*
-         * kexec boot protocol
-         *
-         * TODO: This currently assumes an OPAL/PowerNV system, but it's also
-         * possible to be kexec'd on an OF system.
-         */
+        /* kexec boot protocol */
         boot_opal_init((void *)r3);
     }
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 00:13:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 00:13:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596944.931083 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2eR-0003vK-N2; Thu, 07 Sep 2023 00:13:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596944.931083; Thu, 07 Sep 2023 00:13:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2eR-0003vD-K0; Thu, 07 Sep 2023 00:13:39 +0000
Received: by outflank-mailman (input) for mailman id 596944;
 Thu, 07 Sep 2023 00:13:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=lXo+=EX=intel.com=lkp@srs-se1.protection.inumbo.net>)
 id 1qe2eQ-0003v7-5k
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 00:13:38 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.93])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6194314e-4d13-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 02:13:34 +0200 (CEST)
Received: from fmsmga002.fm.intel.com ([10.253.24.26])
 by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 06 Sep 2023 17:13:26 -0700
Received: from lkp-server01.sh.intel.com (HELO 59b3c6e06877) ([10.239.97.150])
 by fmsmga002.fm.intel.com with ESMTP; 06 Sep 2023 17:13:22 -0700
Received: from kbuild by 59b3c6e06877 with local (Exim 4.96)
 (envelope-from <lkp@intel.com>) id 1qe2e8-0000j1-0U;
 Thu, 07 Sep 2023 00:13:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6194314e-4d13-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694045615; x=1725581615;
  h=date:from:to:cc:subject:message-id:references:
   mime-version:in-reply-to;
  bh=WlkbumebDoiqA7h5lGLoCyy+L33WG8FJ86yAFQBnwlo=;
  b=F0cwzkkhC8Mhzq7bA/w7jXKXMqNxRUZWZD33h2OmUmdg/1O9sOIoFmHy
   awIRDw8ucA8SrC7QClQBT7BySVHIa9W+8CZzTCkotYqF6bJMAphaa6Rg+
   r1h5mDK0SPw0tWMjZ12QMd0ryW8q7tz1n2xdJXs4Qdzx/IeiqX86EiTMk
   kVpjycmIecV9dA2ZIebQRZ2mn+VcduxJD3d/y+LYu4nAn7VzveptT76+Z
   3FiU7zcCIXIJIBSFHaC3m14OlJfANqV+Db6VbpyLVa4ehtX/ldtPPvvNU
   Jy5bbCmIxnA/Yzp7OIO6vXC9c6lR3rW4TJkvrUOOJeBhjBCEbOrutu9Ih
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10825"; a="374613200"
X-IronPort-AV: E=Sophos;i="6.02,233,1688454000"; 
   d="scan'208";a="374613200"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10825"; a="856680657"
X-IronPort-AV: E=Sophos;i="6.02,233,1688454000"; 
   d="scan'208";a="856680657"
Date: Thu, 7 Sep 2023 08:12:57 +0800
From: kernel test robot <lkp@intel.com>
To: Jason Andryuk <jandryuk@gmail.com>, Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Len Brown <lenb@kernel.org>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
	Roger Pau Monne <roger.pau@citrix.com>, stable@vger.kernel.org,
	Jason Andryuk <jandryuk@gmail.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>, x86@kernel.org,
	"H. Peter Anvin" <hpa@zytor.com>, xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org
Subject: Re: [PATCH v2] acpi/processor: sanitize _PDC buffer bits when
 running as Xen dom0
Message-ID: <202309070741.2n0k8FjN-lkp@intel.com>
References: <20230906182125.48642-1-jandryuk@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230906182125.48642-1-jandryuk@gmail.com>

Hi Jason,

kernel test robot noticed the following build errors:

[auto build test ERROR on tip/x86/core]
[also build test ERROR on v6.5]
[cannot apply to rafael-pm/linux-next linus/master next-20230906]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Jason-Andryuk/acpi-processor-sanitize-_PDC-buffer-bits-when-running-as-Xen-dom0/20230907-022235
base:   tip/x86/core
patch link:    https://lore.kernel.org/r/20230906182125.48642-1-jandryuk%40gmail.com
patch subject: [PATCH v2] acpi/processor: sanitize _PDC buffer bits when running as Xen dom0
config: i386-randconfig-003-20230907 (https://download.01.org/0day-ci/archive/20230907/202309070741.2n0k8FjN-lkp@intel.com/config)
compiler: clang version 16.0.4 (https://github.com/llvm/llvm-project.git ae42196bc493ffe877a7e3dff8be32035dea4d07)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20230907/202309070741.2n0k8FjN-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202309070741.2n0k8FjN-lkp@intel.com/

All errors (new ones prefixed by >>):

>> drivers/acpi/processor_pdc.c:147:3: error: call to undeclared function 'xen_sanitize_pdc'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
                   xen_sanitize_pdc(buffer);
                   ^
   1 error generated.


vim +/xen_sanitize_pdc +147 drivers/acpi/processor_pdc.c

   116	
   117	/*
   118	 * _PDC is required for a BIOS-OS handshake for most of the newer
   119	 * ACPI processor features.
   120	 */
   121	static acpi_status
   122	acpi_processor_eval_pdc(acpi_handle handle, struct acpi_object_list *pdc_in)
   123	{
   124		acpi_status status = AE_OK;
   125		union acpi_object *obj;
   126		u32 *buffer = NULL;
   127	
   128		obj = pdc_in->pointer;
   129		buffer = (u32 *)(obj->buffer.pointer);
   130	
   131		if (boot_option_idle_override == IDLE_NOMWAIT) {
   132			/*
   133			 * If mwait is disabled for CPU C-states, the C2C3_FFH access
   134			 * mode will be disabled in the parameter of _PDC object.
   135			 * Of course C1_FFH access mode will also be disabled.
   136			 */
   137			buffer[2] &= ~(ACPI_PDC_C_C2C3_FFH | ACPI_PDC_C_C1_FFH);
   138		}
   139	
   140		if (xen_initial_domain()) {
   141			/*
   142			 * When Linux is running as Xen dom0, the hypervisor is the
   143			 * entity in charge of the processor power management, and so
   144			 * Xen needs to check the OS capabilities reported in the _PDC
   145			 * buffer matches what the hypervisor driver supports.
   146			 */
 > 147			xen_sanitize_pdc(buffer);
   148		}
   149	
   150		status = acpi_evaluate_object(handle, "_PDC", pdc_in, NULL);
   151	
   152		if (ACPI_FAILURE(status))
   153			acpi_handle_debug(handle,
   154			    "Could not evaluate _PDC, using legacy perf control\n");
   155	
   156		return status;
   157	}
   158	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 00:16:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 00:16:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596951.931094 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2ha-0004fj-4d; Thu, 07 Sep 2023 00:16:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596951.931094; Thu, 07 Sep 2023 00:16:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2ha-0004fc-1O; Thu, 07 Sep 2023 00:16:54 +0000
Received: by outflank-mailman (input) for mailman id 596951;
 Thu, 07 Sep 2023 00:16:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qe2hY-0004fW-13
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 00:16:52 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d5dc81cc-4d13-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 02:16:50 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id C792ECE1882;
 Thu,  7 Sep 2023 00:16:44 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id E3856C433C8;
 Thu,  7 Sep 2023 00:16:41 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d5dc81cc-4d13-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694045803;
	bh=iLnw5mJcn1WfYAopavmCTmmE0hja1B3QlmUJi51U1Eg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=TINQ1J1iIc3A5JB9rMuf3GeMgZGcIs0RBYt1NJqtIyW6coyureKyn4A5hQ4op52OQ
	 jE2mTuYnRdHSiaxhnhG1o6bFLhuHt+jkFAlSat21m5yoJJji98Kyl7RUq/exoLdskw
	 775QOA6vLjxnh4fiAxmBD99QpdIhUJIpJigghBbfsQmGUy2ZWFPI03ozwi5ZDFzm9O
	 rsyH7gdlX4ZWgN6R7ts3UlOwcojaCuqK8Cg55199XfzH6IR+rNnofAptA+xLSQTJGA
	 ENE2fMQPcEYmnyn9x7ucXocX6NQVhpY46ryxjSr6akFFXsOaTxiEBHz8mM0Tpu4kUW
	 lefsib2o35pYA==
Date: Wed, 6 Sep 2023 17:16:40 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Anthony Chan <anthonychan@nureva.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
    "bertrand.marquis@arm.com" <bertrand.marquis@arm.com>, 
    "julien@xen.org" <julien@xen.org>, 
    "Volodymyr_Babchuk@epam.com" <Volodymyr_Babchuk@epam.com>, 
    "michal.orzel@amd.com" <michal.orzel@amd.com>, 
    Dan Waqar <danwaqar@nureva.com>
Subject: RE: [EXT] Re: xen arm64 low power sleep support
In-Reply-To: <DM6PR20MB2779A22E8CA641F0B2BBF038C1EFA@DM6PR20MB2779.namprd20.prod.outlook.com>
Message-ID: <alpine.DEB.2.22.394.2309061629460.6458@ubuntu-linux-20-04-desktop>
References: <DM6PR20MB277971712E5415CB231AEB37C1E7A@DM6PR20MB2779.namprd20.prod.outlook.com> <alpine.DEB.2.22.394.2308291512271.6458@ubuntu-linux-20-04-desktop> <DM6PR20MB27795F4B6C327F7F031BABB0C1E6A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2308301814580.6458@ubuntu-linux-20-04-desktop> <DM6PR20MB2779E6DD63DC5CC9A1FE161AC1E5A@DM6PR20MB2779.namprd20.prod.outlook.com> <alpine.DEB.2.22.394.2309051848590.6458@ubuntu-linux-20-04-desktop>
 <DM6PR20MB2779A22E8CA641F0B2BBF038C1EFA@DM6PR20MB2779.namprd20.prod.outlook.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-1637671299-1694045802=:6458"

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-1637671299-1694045802=:6458
Content-Type: text/plain; charset=US-ASCII

On Wed, 6 Sep 2023, Anthony Chan wrote:
> On Tue, 05 Sep 2023, Stefano Stabellini wrote:
> > On Thu, 31 Aug 2023, Anthony Chan wrote:
> > > On Thu, 30 Aug 2023, Stefano Stabellini wrote:
> > > > On Wed, 30 Aug 2023, Anthony Chan wrote:
> > > > > On Tue, 29 Aug 2023, Stefano Stabellini wrote:
> > > > > > On Tue, 29 Aug 2023, Anthony Chan wrote:
> > > > > > > Hi all,
> > > > > > >
> > > > > > > My name is Tony and I've been researching/developing using
> > > > > > > Xen for potential upcoming uses in our embedded systems.  I
> > > > > > > started with Xen using Xilinx tools about a year ago and
> > > > > > > still have lots to learn about what it can to do in the
> > > > > > > embedded space.  So far, I've managed to integrate Xen and
> > > > > > > Linux into an existing product that exclusively runs
> > > > > > > bare-metal code on a ZynqMP SoC and migrate some of the
> > > > > > > functionality into custom Linux driver/userspace.
> > > > > > >
> > > > > > > I'm now looking at low power support, for now at least
> > > > > > > between Xen
> > > > > > > (4.16) and Linux (5.15) dom0.  I've tried a few different
> > > > > > > Linux kernel configs around power management and each time I
> > > > > > > try to suspend from linux dom0 (via sysfs or systemctl), Xen
> > > > > > > will watchdog on dom0 guest.
> > > > > > > AFAIK, Xen should trap on a 'WFI' from guests, but from what
> > > > > > > I can tell debugging through the linux suspend process is
> > > > > > > it's spinning in a 'suspend- to-idle' loop before it can get
> > > > > > > to issuing a 'WFI' or using PSCI interface to notify Xen.
> > > > > > > I'm beginning to suspect that 'low power' support for embedded
> > > > > > > arm64 just isn't quite there yet, or am I missing something
> > > > > > > in the configs?
> > > > > > >
> > > > > > > I realize this could very well be a Linux 'issue' but
> > > > > > > checking here first.  I know Xen presents a flattened device
> > > > > > > tree to Linux without CPU idle-state nodes and maybe this is
> > > > > > > causing the linux guest to only do the suspend- to-idle
> > > > > > > mode?  I should mention that I'm booting up using dom0less
> > > > > > > feature if that matters.
> > > > > >
> > > > > >
> > > > > > Hi Anthony,
> > > > > >
> > > > > > Assuming you are using the default Xen command line parameters
> > > > > > for Xilinx boards: sched=null vwfi=native, then if the guest
> > > > > > uses WFI, the CPU will execute WFI directly and go into low
> > > > > > power mode.
> > > > > Yes, using these command line params.
> > > > >
> > > > > > Given the issue you are describing, I am suspecting the guest
> > > > > > is not issuing
> > > > > > WFI: that is simple and known to work. Instead, I suspect that
> > > > > > Linux might be trying to use PSCI_suspend in a way that is not
> > > > > > supported or well- implemented by Xen.
> > > > > >
> > > > > > Can you check? You can add a printk in Linux
> > > > > > drivers/firmware/psci/psci.c:__psci_cpu_suspend or in Xen
> > > > > > xen/arch/arm/vpsci.c:do_psci_0_2_cpu_suspend
> > > > > Instrumented both places it doesn't appear to reach there.  In
> > > > > kernel/power/suspend.c, there's a call to s2idle_loop that it's
> > > > > currently 'stuck' in and I think it doesn't get to the psci suspend your
> > > > > referring till afterwards, when suspend_ops->enter is called.
> > > > > Unfortunately, without any idle-states nodes in the FDT, the
> > > > > only suspend state Linux is defaults to is 'suspend to idle'.
> > > >
> > > > The fact that Linux uses "suspend to idle" is not a problem
> > > > because as I mentioned WFI or PSCI_suspent are not different on
> > > > Xen. That part is OK.
> > > What if using "suspend to idle" is preventing a WFI/PSCI_suspend?
> > > Which is what I believe I'm currently seeing in my setup.  In
> > > kernel/power/suspend.c, suspend_devices_and_enter(), it gets into
> > > the this s2idle_loop and upon resuming from idle, it jumps past the
> > > point where I believe a WFI/PSCI_suspend can happen.
> > > if (state == PM_SUSPEND_TO_IDLE) {
> > >                 s2idle_loop();
> > >                 goto Platform_wake;
> > > }
> >
> > If that is the case, then it looks like a Linux bug. Maybe something
> > along these lines?
> >
> > https://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flore
> > .k%2F&data=05%7C01%7Canthonychan%40nureva.com%7Ccf5e956c6a4d42b1460a08
> > dbaf13e021%7C5aeb77fa643b473eaee0cb54a11ccba3%7C1%7C0%7C63829627212319
> > 7144%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBT
> > iI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=lDfILPgJQQQPJOL44%2BcU
> > %2BN2RFOs8L6F4AE11kvOhOQE%3D&reserved=0
> > ernel.org%2Flinux-arm-
> > kernel%2F4665489.GXAFRqVoOG%40kreacher%2FT%2F%23m6edda92d0b5
> > dc09f8e05e7d6db3807501b7249f4&data=05%7C01%7Canthonychan%40n
> > ureva.com%7C144641906bef48b9180f08dbae7bc1d8%7C5aeb77fa643b47
> > 3eaee0cb54a11ccba3%7C1%7C0%7C638295618800415028%7CUnknown
> > %7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1ha
> > WwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=%2Fv%2FHpI1ix3yhDJ
> > 75oejWzDfUqB8SqOQzkU3clJzMOtw%3D&reserved=0
> 
> Thanks, I've tried patches that stemmed from that discussion but unfortunately,
> doesn't resolve the issue.  In fact, the s2idle_loop branch might not be the problem at all.  I experimented with Xen to allow the 'idle-states' into the FDT and prevented xen_guest_init on Linux from disabling the 'cpuidle' driver (arch/arm/xen/enlighten.c).  When I trigger a suspend, I can see now another thread (believe it's the idle thread) call into drivers/firmware/psci/psci.c:__psci_cpu_suspend and then the Xen counterpart at
> xen/arch/arm/vpsci.c:do_psci_0_2_cpu_suspend.

OK but remember that Xen is not implementing do_psci_0_2_cpu_suspend
correctly at the moment. Either we need to fix the Xen implementation,
or we need to configure Linux so that it calls WFI instead of
__psci_cpu_suspend.

As a test, can you try to apply the attached patch to Xen as a tenative
fix?  Or you could change
drivers/firmware/psci/psci.c:__psci_cpu_suspend to call WFI instead of
the PSCI operation (making sure to go to the entry_point instead of
returning).


> The normal 'suspend' thread still goes into the s2idle_loop. 

This is potentially a problem: if it is s2idle_loop causing the problem,
and one thread is still executing it, then we can still have a bug?


> Eventually, Xen still watchdogs on the dom0 VM.
--8323329-1637671299-1694045802=:6458
Content-Type: text/x-diff; name=pscisuspend.patch
Content-Transfer-Encoding: BASE64
Content-ID: <alpine.DEB.2.22.394.2309061716400.6458@ubuntu-linux-20-04-desktop>
Content-Description: 
Content-Disposition: attachment; filename=pscisuspend.patch

ZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS92cHNjaS5jIGIveGVuL2FyY2gv
YXJtL3Zwc2NpLmMNCmluZGV4IGQxNjE1YmU4YTYuLjRjYTFkN2M0OGYgMTAw
NjQ0DQotLS0gYS94ZW4vYXJjaC9hcm0vdnBzY2kuYw0KKysrIGIveGVuL2Fy
Y2gvYXJtL3Zwc2NpLmMNCkBAIC0xMjgsNiArMTI4LDggQEAgc3RhdGljIHJl
Z2lzdGVyX3QgZG9fcHNjaV8wXzJfY3B1X3N1c3BlbmQodWludDMyX3QgcG93
ZXJfc3RhdGUsDQogICAgICAqLw0KIA0KICAgICB2Y3B1X2Jsb2NrX3VubGVz
c19ldmVudF9wZW5kaW5nKHYpOw0KKyAgICB2LT5hcmNoLmNwdV9pbmZvLT5n
dWVzdF9jcHVfdXNlcl9yZWdzLnBjID0gKHU2NCkgZW50cnlfcG9pbnQ7DQor
ICAgIHYtPmFyY2guY3B1X2luZm8tPmd1ZXN0X2NwdV91c2VyX3JlZ3MueDAg
PSBjb250ZXh0X2lkOw0KICAgICByZXR1cm4gUFNDSV9TVUNDRVNTOw0KIH0N
CiANCg==

--8323329-1637671299-1694045802=:6458--


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 00:25:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 00:25:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596962.931107 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2pz-0006zh-3s; Thu, 07 Sep 2023 00:25:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596962.931107; Thu, 07 Sep 2023 00:25:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe2pz-0006za-1A; Thu, 07 Sep 2023 00:25:35 +0000
Received: by outflank-mailman (input) for mailman id 596962;
 Thu, 07 Sep 2023 00:25:34 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe2py-0006zQ-5Z; Thu, 07 Sep 2023 00:25:34 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe2py-0006AB-3G; Thu, 07 Sep 2023 00:25:34 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe2px-0007bj-S5; Thu, 07 Sep 2023 00:25:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qe2px-0007ES-RV; Thu, 07 Sep 2023 00:25:33 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=8cRpzcMTgmc6/5jfyo3ihVeutt/nCsKDAmjvuyESA+o=; b=geopI8aq0cQd0L/wAQl5xVOvAM
	4a+0OALOuCaxbE6huGFxC4HHajHJb4VGH8I9N6DjD67ZIHc9eXA28XPZSWXD0dzxIJmd3t3p+wbtZ
	O86gWkUIoQwMjgUtJGuDKdjDHZ0jTfy6kizjKmVRvIXheTxNisPvIwmHkeArHUMajHBg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182638-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182638: tolerable FAIL - PUSHED
X-Osstest-Failures:
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=2d8fbcb1eecd8d39171f457e583428758321d69d
X-Osstest-Versions-That:
    qemuu=17780edd81d27fcfdb7a802efc870a99788bd2fc
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 00:25:33 +0000

flight 182638 qemu-mainline real [real]
flight 182698 qemu-mainline real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182638/
http://logs.test-lab.xenproject.org/osstest/logs/182698/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemuu-win7-amd64 12 windows-install fail pass in 182698-retest

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop   fail in 182698 like 182606
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182588
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182606
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182606
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182606
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182606
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182606
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182606
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                2d8fbcb1eecd8d39171f457e583428758321d69d
baseline version:
 qemuu                17780edd81d27fcfdb7a802efc870a99788bd2fc

Last test of basis   182606  2023-09-01 17:09:21 Z    5 days
Testing same since   182638  2023-09-05 15:37:11 Z    1 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Graf <graf@amazon.com>
  David Hildenbrand <david@redhat.com>
  Igor Mammedov <imammedo@redhat.com>
  Ilya Leoshkevich <iii@linux.ibm.com>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Paolo Bonzini <pbonzini@redhat.com>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Stefan Hajnoczi <stefanha@redhat.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/qemu-xen.git
   17780edd81..2d8fbcb1ee  2d8fbcb1eecd8d39171f457e583428758321d69d -> upstream-tested


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 00:41:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 00:41:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596973.931120 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe35C-0001z5-FH; Thu, 07 Sep 2023 00:41:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596973.931120; Thu, 07 Sep 2023 00:41:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe35C-0001yy-Cd; Thu, 07 Sep 2023 00:41:18 +0000
Received: by outflank-mailman (input) for mailman id 596973;
 Thu, 07 Sep 2023 00:41:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qe35B-0001xM-10
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 00:41:17 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3f015223-4d17-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 02:41:14 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 4DB87CE188A;
 Thu,  7 Sep 2023 00:41:08 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 98D7FC433C8;
 Thu,  7 Sep 2023 00:41:05 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3f015223-4d17-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694047266;
	bh=Zu7Bgu0NwVdycqcEuFJ3hFovWshfpAIqPpkfO5JB4ss=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=DEHlPD6pr9rBys0vshmPQs0pjSdkWKCpOBHXGoHCPv+lIaZ+JoXLghpFJe9+8eh/S
	 7g1BnheTiiUzx9QlWAlQwXoxSkzn1Ak7CKQCZkEFokZa43UpZ3Zcbgm8jlMcui0P/1
	 wZjhSR9gnxS8C2kO0N64pQyZaLQyZBexJzVZT4adXSuCFMLiQHtEDa8dOyj8iKuB2+
	 pAZ350730OHdOyCrB5sm9N9eMNR0UqQiT7eXiCoZkRj6OknO/Ua50c73+rQT6tZgnz
	 gWs7l8OsFOiY84QWxYXNrcl2AQ3swgwzV9itZCPnLG4h2/FsLhbX0WYsSugzUOg5Py
	 Pns2AtZbaKx+w==
Date: Wed, 6 Sep 2023 17:41:03 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Shawn Anastasio <sanastasio@raptorengineering.com>
cc: xen-devel@lists.xenproject.org, 
    Timothy Pearson <tpearson@raptorengineering.com>, 
    Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH v2 1/2] automation: Switch ppc64le tests to PowerNV
 machine type
In-Reply-To: <85b53762ba04a349ba099cf5629e7ac24f496d69.1694044614.git.sanastasio@raptorengineering.com>
Message-ID: <alpine.DEB.2.22.394.2309061739490.6458@ubuntu-linux-20-04-desktop>
References: <cover.1694044614.git.sanastasio@raptorengineering.com> <85b53762ba04a349ba099cf5629e7ac24f496d69.1694044614.git.sanastasio@raptorengineering.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 6 Sep 2023, Shawn Anastasio wrote:
> Run ppc64le tests with the PowerNV machine type (bare metal) instead of
> the paravirtualized pseries machine. This requires a more modern version
> of QEMU than is present in debian bullseye's repository, so update the
> dockerfile to build QEMU from source.
> 
> Support for booting on pseries was broken by 74b725a64d80 ('xen/ppc:
> Implement initial Radix MMU support') which resulted in CI failures. In
> preparation for removing pseries support entirely, switch the CI
> infrastructure to the PowerNV machine type.
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> ---
>  .../build/debian/bullseye-ppc64le.dockerfile  | 37 ++++++++++++++++++-
>  automation/gitlab-ci/test.yaml                |  2 +-
>  2 files changed, 36 insertions(+), 3 deletions(-)
> 
> diff --git a/automation/build/debian/bullseye-ppc64le.dockerfile b/automation/build/debian/bullseye-ppc64le.dockerfile
> index 8fad26e903..15827bbcf4 100644
> --- a/automation/build/debian/bullseye-ppc64le.dockerfile
> +++ b/automation/build/debian/bullseye-ppc64le.dockerfile
> @@ -1,4 +1,36 @@
> +FROM debian:bullseye-slim AS builder
> +
> +ENV DEBIAN_FRONTEND=noninteractive
> +ENV QEMU_TAG=stable-8.1
> +ENV USER root
> +
> +# dependencies for qemu build
> +RUN apt-get update && \
> +    apt-get --quiet --yes install \
> +        git \
> +        build-essential \
> +        python3-minimal \
> +        python3-elementpath \
> +        python3-pip \
> +        ninja-build \
> +        libglib2.0-dev \
> +        libpixman-1-dev
> +
> +RUN mkdir /build
> +WORKDIR /build
> +
> +# QEMU build from git
> +RUN git clone --depth 1 --branch "${QEMU_TAG}" https://github.com/qemu/qemu && \
> +    mkdir qemu/build && \
> +    cd qemu/build && \
> +    ../configure --target-list=ppc64-softmmu && \
> +    ninja && \
> +    ninja install

It is totally find to build your QEMU but please use a test-artifact
instead, see automation/tests-artifacts/qemu-system-aarch64/ and
qemu-system-aarch64-6.0.0-arm64-export as an example.


>  FROM debian:bullseye-slim
> +COPY --from=builder /usr/local/bin/qemu-system-ppc64 /usr/local/bin/qemu-system-ppc64
> +COPY --from=builder /usr/local/share/qemu/skiboot.lid /usr/local/share/qemu/skiboot.lid
> +
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@lists.xenproject.org"
>  
> @@ -22,8 +54,9 @@ RUN apt-get update && \
>          gcc-powerpc64le-linux-gnu \
>          make \
>          python3-minimal \
> -        # for test phase
> -        qemu-system-ppc \
> +        # QEMU runtime dependencies
> +        libglib2.0-0 \
> +        libpixman-1-0 \
>          && \
>          apt-get autoremove -y && \
>          apt-get clean && \
> diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
> index 9aa8deabea..9b26ccd907 100644
> --- a/automation/gitlab-ci/test.yaml
> +++ b/automation/gitlab-ci/test.yaml
> @@ -457,6 +457,6 @@ qemu-smoke-riscv64-gcc:
>  qemu-smoke-ppc64le-pseries-gcc:
>    extends: .qemu-ppc64le
>    script:
> -    - ./automation/scripts/qemu-smoke-ppc64le.sh pseries-5.2 2>&1 | tee ${LOGFILE}
> +    - ./automation/scripts/qemu-smoke-ppc64le.sh powernv9 2>&1 | tee ${LOGFILE}
>    needs:
>      - debian-bullseye-gcc-ppc64le-debug
> -- 
> 2.30.2
> 


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 00:59:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 00:59:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596982.931133 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3MG-0004kN-Ts; Thu, 07 Sep 2023 00:58:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596982.931133; Thu, 07 Sep 2023 00:58:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3MG-0004kG-R3; Thu, 07 Sep 2023 00:58:56 +0000
Received: by outflank-mailman (input) for mailman id 596982;
 Thu, 07 Sep 2023 00:58:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qe3MF-0004kA-D2
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 00:58:55 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b5f4ace3-4d19-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 02:58:53 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id EDB9CCE1843;
 Thu,  7 Sep 2023 00:58:48 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 57754C433C8;
 Thu,  7 Sep 2023 00:58:45 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b5f4ace3-4d19-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694048327;
	bh=BGUNHJTXYbUmRxhAX4K3auDJHoBOgYqrC+2uDxN2qMk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=eNv9LC+lzZwECF3ZbhB+6AJfPSIIOY8df0Xa8IwbAfQ7PdrQ5Vrtcn+neYsiTZPvb
	 7YfXTM//2v64rxbbPet9dxJsUzEEZIE+aKrQeUt8Fb+84t3SwP7nvraVp1p8tKGv0V
	 Jx3mza/rvCnsPZMeKD7P/DlYJJxSZQtPxO9d8W0vzLnqcxXqI83Qnuv25BiQ/YmtEe
	 MFaeAUF6NkQz+qX9TklNQfH4qR8701z6+2iljk3uYa10CmH6DU+T5bwhMBQRomLaNb
	 KlO17nBNXnMJLpntt7Swn87beNtF/OmRnjzMmmiGyQXIp+jRPceaMQt7W8S9yHINll
	 oJr6QdLV2gzBQ==
Date: Wed, 6 Sep 2023 17:58:43 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: Jan Beulich <jbeulich@suse.com>, sstabellini@kernel.org, 
    michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH 1/2] xen: apply deviation for Rule 8.4 (asm-only
 definitions)
In-Reply-To: <babbc14aff87b0d8546f4c617eccac3b@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309061746190.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693585223.git.nicola.vetrini@bugseng.com> <a260399a471b84f3c37c15ac735dc7aec6bd33ea.1693585223.git.nicola.vetrini@bugseng.com> <efb3dfa7-0fd0-83a5-67dc-eafad0a2bb57@suse.com> <babbc14aff87b0d8546f4c617eccac3b@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 4 Sep 2023, Nicola Vetrini wrote:
> > Further in the cover letter you say "Deviating variables needs more care,
> > and
> > is therefore postponed to another patch", yet then here you annotate a
> > couple
> > of variables as well. Could you clarify what the criteria are for "needs
> > more
> > care"?
> > 
> 
> I see. I did not intend for those changes to end up in this patch, although
> those two are
> clearly only used by asm code and therefore are excepted.

I reviewed the patch checking that every function and variable is
actually only called/used from asm. Everything checks out, so:

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

However, I think we should drop the change below (could be done on
commit) because it doesn't make sense to add SAF-1-safe for l1_fixmap_x
but not for l1_fixmap.  l1_fixmap has a declaration in
xen/arch/x86/include/asm/page.h but it is not actually used.

diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 28fdf820ef3b..828786932021 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -143,6 +143,7 @@
 /* Mapping of the fixmap space needed early. */
 l1_pgentry_t __section(".bss.page_aligned") __aligned(PAGE_SIZE)
     l1_fixmap[L1_PAGETABLE_ENTRIES];
+/* SAF-1-safe */
 l1_pgentry_t __section(".bss.page_aligned") __aligned(PAGE_SIZE)
     l1_fixmap_x[L1_PAGETABLE_ENTRIES];



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 01:00:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 01:00:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.596989.931143 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3NO-0007QO-9O; Thu, 07 Sep 2023 01:00:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 596989.931143; Thu, 07 Sep 2023 01:00:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3NO-0007PW-4Q; Thu, 07 Sep 2023 01:00:06 +0000
Received: by outflank-mailman (input) for mailman id 596989;
 Thu, 07 Sep 2023 01:00:05 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qe3NN-0006mS-3Q
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 01:00:05 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org
 [2604:1380:40e1:4800::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id df0f1f91-4d19-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 03:00:02 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 1012BCE1843;
 Thu,  7 Sep 2023 01:00:00 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 15692C433C7;
 Thu,  7 Sep 2023 00:59:56 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: df0f1f91-4d19-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694048398;
	bh=OFsA55LpLmg+Z24VmkZpNSJ4scM8gq3ZvDaI4opJXd4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=m7m6/YWyS4Y5Zo6G3Ig5zvwMrDpEeucSsB73FtrROcN38usYK/AgKZcvvZGi3G+zH
	 mUq9EH0fqeVnua2AbQDA+UfoVSU8A4p7Og+8INeWkzVTdYes7t0HX37Jl8wZ6xfFnP
	 ewpknfLY6yl3Ljd2bgm75vy7RhAfABUM8KxLWJSbiUalf98zPIO+jRXT1zf23LCVis
	 wexnalVnZPSSw/TnQjM8Ds5bcKyiexLVNmRvs4D/4eXh2GKFEmt4wHTWVa7sky44aY
	 w0q1Gb1XLFuTs3utm9GnlshYhRwzizEs4NEeCe1QxJ5cdHTlGHqspjGiSqr/xN19HB
	 04GqZ+5NN1pYw==
Date: Wed, 6 Sep 2023 17:59:55 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, 
    michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>
Subject: Re: [XEN PATCH 2/2] automation: execute SAF translation before the
 analysis with ECLAIR
In-Reply-To: <b766ea02253f76d9aaacf06a1ffba8bab45ca0b8.1693585223.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309061759330.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693585223.git.nicola.vetrini@bugseng.com> <b766ea02253f76d9aaacf06a1ffba8bab45ca0b8.1693585223.git.nicola.vetrini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 1 Sep 2023, Nicola Vetrini wrote:
> This allows local MISRA deviation comments to be translated into
> the format recognized by ECLAIR.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>  automation/eclair_analysis/prepare.sh | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/automation/eclair_analysis/prepare.sh b/automation/eclair_analysis/prepare.sh
> index 275a1a3f517c..0cac5eba00ae 100755
> --- a/automation/eclair_analysis/prepare.sh
> +++ b/automation/eclair_analysis/prepare.sh
> @@ -38,5 +38,8 @@ fi
>      cd xen
>      cp "${CONFIG_FILE}" .config
>      make clean
> +    find . -type f -name "*.safparse" -print -delete
>      make -f ${script_dir}/Makefile.prepare prepare
> +    # Translate the /* SAF-n-safe */ comments into ECLAIR CBTs
> +    scripts/xen-analysis.py --run-eclair --no-build --no-clean
>  )
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 01:08:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 01:08:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597000.931152 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3VR-0001Pz-4Q; Thu, 07 Sep 2023 01:08:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597000.931152; Thu, 07 Sep 2023 01:08:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3VR-0001Ps-16; Thu, 07 Sep 2023 01:08:25 +0000
Received: by outflank-mailman (input) for mailman id 597000;
 Thu, 07 Sep 2023 01:08:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qe3VQ-0001Pj-Ks
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 01:08:24 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 09d52403-4d1b-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 03:08:22 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 4A9C4611E6;
 Thu,  7 Sep 2023 01:08:21 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9C631C433C7;
 Thu,  7 Sep 2023 01:08:18 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 09d52403-4d1b-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694048900;
	bh=EGANgWyYEAtjFef4U73CpyZ+cN7+xhBXoyGolrcR04w=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=G0B3kkKWNhAPCpFQALrWBtRZ1OOnLwU+/7reHyz/jGBQUXp+lBuqRdaUh6d7p0v71
	 GEpAZR3CVSENzalnTbHFIfiKC8FtKo8mKd4wrork1ps4ooumRaODZSoyv4hrwrWIz9
	 Wb+eeiiomP7Vk7s7049OmcZa8c3MeiIv9Pk3draajYGhZcHiN19cyH8DhLxlgs0Nix
	 rpfDUYgqs50vHVViCsdH/Z1frBLzWA7cXk76Aa3ciq0Ztfr04Mme5avhhCqcojFYkD
	 0+2WaR9+9oTKGAPg6bWmOf9lHdLhcweMb2ucxP3C+AFZV34xjj/PDQVq11ubED2DD6
	 sjKtKNb0zA7Vw==
Date: Wed, 6 Sep 2023 18:08:16 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, 
    michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Subject: Re: [XEN PATCH v2 1/2] xen: apply deviation for Rule 8.4 (asm-only
 definitions)
In-Reply-To: <ef301ab9843d810a389f175bd8a204f362b58e27.1693998375.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309061808050.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693998375.git.nicola.vetrini@bugseng.com> <ef301ab9843d810a389f175bd8a204f362b58e27.1693998375.git.nicola.vetrini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 6 Sep 2023, Nicola Vetrini wrote:
> As stated in 'docs/misra/rules.rst' the functions that are used only by
> asm modules do not need to conform to MISRA C:2012 Rule 8.4.
> The deviations are carried out with a SAF comment.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

This is better

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

> ---
> Changes in v2:
> - Removed deviations on variables
> ---
>  docs/misra/safe.json        | 8 ++++++++
>  xen/arch/arm/cpuerrata.c    | 1 +
>  xen/arch/arm/setup.c        | 1 +
>  xen/arch/arm/smpboot.c      | 1 +
>  xen/arch/arm/traps.c        | 7 +++++++
>  xen/arch/x86/boot/cmdline.c | 1 +
>  xen/arch/x86/boot/reloc.c   | 1 +
>  xen/arch/x86/extable.c      | 4 ++--
>  xen/arch/x86/setup.c        | 1 +
>  xen/arch/x86/traps.c        | 9 +++++++++
>  xen/common/efi/boot.c       | 5 +++--
>  11 files changed, 35 insertions(+), 4 deletions(-)
> 
> diff --git a/docs/misra/safe.json b/docs/misra/safe.json
> index e3c8a1d8eb36..39c5c056c7d4 100644
> --- a/docs/misra/safe.json
> +++ b/docs/misra/safe.json
> @@ -12,6 +12,14 @@
>          },
>          {
>              "id": "SAF-1-safe",
> +            "analyser": {
> +                "eclair": "MC3R1.R8.4"
> +            },
> +            "name": "Rule 8.4: asm-only definition",
> +            "text": "Functions and variables used only by asm modules do not need to have a visible declaration prior to their definition."
> +        },
> +        {
> +            "id": "SAF-2-safe",
>              "analyser": {},
>              "name": "Sentinel",
>              "text": "Next ID to be used"
> diff --git a/xen/arch/arm/cpuerrata.c b/xen/arch/arm/cpuerrata.c
> index fcf32892a7ef..9137958fb682 100644
> --- a/xen/arch/arm/cpuerrata.c
> +++ b/xen/arch/arm/cpuerrata.c
> @@ -370,6 +370,7 @@ custom_param("spec-ctrl", parse_spec_ctrl);
>  
>  /* Arm64 only for now as for Arm32 the workaround is currently handled in C. */
>  #ifdef CONFIG_ARM_64
> +/* SAF-1-safe */
>  void __init arm_enable_wa2_handling(const struct alt_instr *alt,
>                                      const uint32_t *origptr,
>                                      uint32_t *updptr, int nr_inst)
> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
> index 44ccea03ca14..db748839d383 100644
> --- a/xen/arch/arm/setup.c
> +++ b/xen/arch/arm/setup.c
> @@ -1077,6 +1077,7 @@ static bool __init is_dom0less_mode(void)
>  size_t __read_mostly dcache_line_bytes;
>  
>  /* C entry point for boot CPU */
> +/* SAF-1-safe */
>  void __init start_xen(unsigned long boot_phys_offset,
>                        unsigned long fdt_paddr)
>  {
> diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
> index e107b86b7b44..6efd17eb3500 100644
> --- a/xen/arch/arm/smpboot.c
> +++ b/xen/arch/arm/smpboot.c
> @@ -302,6 +302,7 @@ smp_prepare_cpus(void)
>  }
>  
>  /* Boot the current CPU */
> +/* SAF-1-safe */
>  void start_secondary(void)
>  {
>      unsigned int cpuid = init_data.cpuid;
> diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
> index 46c9a4031b30..ce89f16404d9 100644
> --- a/xen/arch/arm/traps.c
> +++ b/xen/arch/arm/traps.c
> @@ -161,6 +161,7 @@ void init_traps(void)
>      isb();
>  }
>  
> +/* SAF-1-safe */
>  void __div0(void)
>  {
>      printk("Division by zero in hypervisor.\n");
> @@ -1954,6 +1955,7 @@ static inline bool needs_ssbd_flip(struct vcpu *v)
>   * Actions that needs to be done after entering the hypervisor from the
>   * guest and before the interrupts are unmasked.
>   */
> +/* SAF-1-safe */
>  void enter_hypervisor_from_guest_preirq(void)
>  {
>      struct vcpu *v = current;
> @@ -1968,6 +1970,7 @@ void enter_hypervisor_from_guest_preirq(void)
>   * guest and before we handle any request. Depending on the exception trap,
>   * this may be called with interrupts unmasked.
>   */
> +/* SAF-1-safe */
>  void enter_hypervisor_from_guest(void)
>  {
>      struct vcpu *v = current;
> @@ -1996,6 +1999,7 @@ void enter_hypervisor_from_guest(void)
>      vgic_sync_from_lrs(v);
>  }
>  
> +/* SAF-1-safe */
>  void do_trap_guest_sync(struct cpu_user_regs *regs)
>  {
>      const union hsr hsr = { .bits = regs->hsr };
> @@ -2191,11 +2195,13 @@ void do_trap_guest_serror(struct cpu_user_regs *regs)
>      __do_trap_serror(regs, true);
>  }
>  
> +/* SAF-1-safe */
>  void do_trap_irq(struct cpu_user_regs *regs)
>  {
>      gic_interrupt(regs, 0);
>  }
>  
> +/* SAF-1-safe */
>  void do_trap_fiq(struct cpu_user_regs *regs)
>  {
>      gic_interrupt(regs, 1);
> @@ -2269,6 +2275,7 @@ static bool check_for_vcpu_work(void)
>   *
>   * The function will return with IRQ masked.
>   */
> +/* SAF-1-safe */
>  void leave_hypervisor_to_guest(void)
>  {
>      local_irq_disable();
> diff --git a/xen/arch/x86/boot/cmdline.c b/xen/arch/x86/boot/cmdline.c
> index 74997703b31e..f9eee756aaed 100644
> --- a/xen/arch/x86/boot/cmdline.c
> +++ b/xen/arch/x86/boot/cmdline.c
> @@ -340,6 +340,7 @@ static void vga_parse(const char *cmdline, early_boot_opts_t *ebo)
>  }
>  #endif
>  
> +/* SAF-1-safe */
>  void __stdcall cmdline_parse_early(const char *cmdline, early_boot_opts_t *ebo)
>  {
>      if ( !cmdline )
> diff --git a/xen/arch/x86/boot/reloc.c b/xen/arch/x86/boot/reloc.c
> index e22bb974bf20..609b02cb73dc 100644
> --- a/xen/arch/x86/boot/reloc.c
> +++ b/xen/arch/x86/boot/reloc.c
> @@ -347,6 +347,7 @@ static multiboot_info_t *mbi2_reloc(uint32_t mbi_in, uint32_t video_out)
>      return mbi_out;
>  }
>  
> +/* SAF-1-safe */
>  void *__stdcall reloc(uint32_t magic, uint32_t in, uint32_t trampoline,
>                        uint32_t video_info)
>  {
> diff --git a/xen/arch/x86/extable.c b/xen/arch/x86/extable.c
> index c3771c2e3937..74b14246e9d8 100644
> --- a/xen/arch/x86/extable.c
> +++ b/xen/arch/x86/extable.c
> @@ -194,8 +194,8 @@ static int __init cf_check stub_selftest(void)
>  __initcall(stub_selftest);
>  #endif
>  
> -unsigned long
> -search_pre_exception_table(struct cpu_user_regs *regs)
> +/* SAF-1-safe */
> +unsigned long search_pre_exception_table(struct cpu_user_regs *regs)
>  {
>      unsigned long addr = regs->rip;
>      unsigned long fixup = search_one_extable(
> diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
> index 3358d9a0ff63..08ba1f95d635 100644
> --- a/xen/arch/x86/setup.c
> +++ b/xen/arch/x86/setup.c
> @@ -968,6 +968,7 @@ static struct domain *__init create_dom0(const module_t *image,
>  /* How much of the directmap is prebuilt at compile time. */
>  #define PREBUILT_MAP_LIMIT (1 << L2_PAGETABLE_SHIFT)
>  
> +/* SAF-1-safe */
>  void __init noreturn __start_xen(unsigned long mbi_p)
>  {
>      const char *memmap_type = NULL;
> diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
> index a898e1f2d731..dead728ce329 100644
> --- a/xen/arch/x86/traps.c
> +++ b/xen/arch/x86/traps.c
> @@ -833,6 +833,7 @@ void fatal_trap(const struct cpu_user_regs *regs, bool show_remote)
>            (regs->eflags & X86_EFLAGS_IF) ? "" : " IN INTERRUPT CONTEXT");
>  }
>  
> +/* SAF-1-safe */
>  void do_unhandled_trap(struct cpu_user_regs *regs)
>  {
>      unsigned int trapnr = regs->entry_vector;
> @@ -920,6 +921,7 @@ static bool extable_fixup(struct cpu_user_regs *regs, bool print)
>      return true;
>  }
>  
> +/* SAF-1-safe */
>  void do_trap(struct cpu_user_regs *regs)
>  {
>      unsigned int trapnr = regs->entry_vector;
> @@ -1152,6 +1154,7 @@ void cpuid_hypervisor_leaves(const struct vcpu *v, uint32_t leaf,
>      }
>  }
>  
> +/* SAF-1-safe */
>  void do_invalid_op(struct cpu_user_regs *regs)
>  {
>      u8 bug_insn[2];
> @@ -1197,6 +1200,7 @@ void do_invalid_op(struct cpu_user_regs *regs)
>      panic("FATAL TRAP: vector = %d (invalid opcode)\n", X86_EXC_UD);
>  }
>  
> +/* SAF-1-safe */
>  void do_int3(struct cpu_user_regs *regs)
>  {
>      struct vcpu *curr = current;
> @@ -1564,6 +1568,7 @@ static int fixup_page_fault(unsigned long addr, struct cpu_user_regs *regs)
>      return 0;
>  }
>  
> +/* SAF-1-safe */
>  void do_page_fault(struct cpu_user_regs *regs)
>  {
>      unsigned long addr;
> @@ -1641,6 +1646,7 @@ void do_page_fault(struct cpu_user_regs *regs)
>   * during early boot (an issue was seen once, but was most likely a hardware
>   * problem).
>   */
> +/* SAF-1-safe */
>  void __init do_early_page_fault(struct cpu_user_regs *regs)
>  {
>      static unsigned int __initdata stuck;
> @@ -1841,6 +1847,7 @@ void trigger_nmi_continuation(void)
>      apic_wait_icr_idle();
>  }
>  
> +/* SAF-1-safe */
>  void do_device_not_available(struct cpu_user_regs *regs)
>  {
>  #ifdef CONFIG_PV
> @@ -1877,6 +1884,7 @@ void do_device_not_available(struct cpu_user_regs *regs)
>  #endif
>  }
>  
> +/* SAF-1-safe */
>  void do_debug(struct cpu_user_regs *regs)
>  {
>      unsigned long dr6;
> @@ -2002,6 +2010,7 @@ void do_debug(struct cpu_user_regs *regs)
>      pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
>  }
>  
> +/* SAF-1-safe */
>  void do_entry_CP(struct cpu_user_regs *regs)
>  {
>      static const char errors[][10] = {
> diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
> index 79a654af69b0..99cb033e2a6f 100644
> --- a/xen/common/efi/boot.c
> +++ b/xen/common/efi/boot.c
> @@ -1253,8 +1253,9 @@ static void __init efi_exit_boot(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *Syste
>      efi_fw_vendor = (void *)efi_fw_vendor + DIRECTMAP_VIRT_START;
>  }
>  
> -void EFIAPI __init noreturn
> -efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
> +/* SAF-1-safe */
> +void EFIAPI __init noreturn efi_start(EFI_HANDLE ImageHandle,
> +                                      EFI_SYSTEM_TABLE *SystemTable)
>  {
>      static EFI_GUID __initdata loaded_image_guid = LOADED_IMAGE_PROTOCOL;
>      static EFI_GUID __initdata shim_lock_guid = SHIM_LOCK_PROTOCOL_GUID;
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 01:08:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 01:08:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597002.931163 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3Vm-0001oW-Ca; Thu, 07 Sep 2023 01:08:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597002.931163; Thu, 07 Sep 2023 01:08:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3Vm-0001oP-8t; Thu, 07 Sep 2023 01:08:46 +0000
Received: by outflank-mailman (input) for mailman id 597002;
 Thu, 07 Sep 2023 01:08:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qe3Vl-0001j3-0h
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 01:08:45 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 14f47ce1-4d1b-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 03:08:43 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 7FD4DCE1843;
 Thu,  7 Sep 2023 01:08:39 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id ABB50C433C8;
 Thu,  7 Sep 2023 01:08:35 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 14f47ce1-4d1b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694048917;
	bh=RRl6GA06ApCW7aDGvJ8FmMiHINPRUfB9jHWxl5LVVSE=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=pcaUqBmKcxJ0MWe2Nnz33EhC6GW5vhsH3F7Z7+izE/dD6/D16r9Tq5Mzy5UT6tu9p
	 LKwkMOkOKZEJtLv+6FMJv90l0O+GTUuF3KM8IXkP03jX+xHqH9HUnb2rbcy7lxAOek
	 BgjyJEDN6E25CRxyBvWeO99qiMzTelHHKbsTpWK7btaTuJLIvkwuJbnskPWq9r9Ry2
	 zweb0EZ9uHGzAmGCEmn3I/o1AjOaDG1psFnL/87LuUfatkPzpdoq2L/Q3lb/I640AA
	 4ncvwb4TVMAq4Lwaz0Uu86ayaPKf0rkXMRIBXIqh4a0BDQh8dd9K2byCKX9XaZbWU6
	 dltkDa1PmL8tA==
Date: Wed, 6 Sep 2023 18:08:32 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, 
    michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>
Subject: Re: [XEN PATCH v2 2/2] automation: execute SAF translation before
 the analysis with ECLAIR
In-Reply-To: <8d4dba44bf70de642d3128cd11785ebdf1fce421.1693998375.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309061808270.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693998375.git.nicola.vetrini@bugseng.com> <8d4dba44bf70de642d3128cd11785ebdf1fce421.1693998375.git.nicola.vetrini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 6 Sep 2023, Nicola Vetrini wrote:
> This allows local MISRA deviation comments to be translated into
> the format recognized by ECLAIR.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>

> ---
>  automation/eclair_analysis/prepare.sh | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/automation/eclair_analysis/prepare.sh b/automation/eclair_analysis/prepare.sh
> index 275a1a3f517c..0cac5eba00ae 100755
> --- a/automation/eclair_analysis/prepare.sh
> +++ b/automation/eclair_analysis/prepare.sh
> @@ -38,5 +38,8 @@ fi
>      cd xen
>      cp "${CONFIG_FILE}" .config
>      make clean
> +    find . -type f -name "*.safparse" -print -delete
>      make -f ${script_dir}/Makefile.prepare prepare
> +    # Translate the /* SAF-n-safe */ comments into ECLAIR CBTs
> +    scripts/xen-analysis.py --run-eclair --no-build --no-clean
>  )
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 01:12:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 01:12:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597018.931172 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3Zk-0003rZ-RR; Thu, 07 Sep 2023 01:12:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597018.931172; Thu, 07 Sep 2023 01:12:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3Zk-0003rS-Ow; Thu, 07 Sep 2023 01:12:52 +0000
Received: by outflank-mailman (input) for mailman id 597018;
 Thu, 07 Sep 2023 01:12:52 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qe3Zk-0003rM-3F
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 01:12:52 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a8b7eca5-4d1b-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 03:12:49 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 357DD611DD;
 Thu,  7 Sep 2023 01:12:48 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 629FEC433C7;
 Thu,  7 Sep 2023 01:12:46 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a8b7eca5-4d1b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694049167;
	bh=2K53Z5Y+6DyFh/utfy84Kj+t45fugnBdXlCNLtdIcOY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=X9IJYpHJWwJLq0Tr+gn8ZxhZGl5TTWf3WGff1ITUlwNGN2Jgl9ZE0hpaHrRdol0Cm
	 qagMD7tZhbNyKlNH/qzC+06kLX/kAr0e8BsEcfIrqe5wP92sGtl0NKsnsNc41n5W5Y
	 bzxnbWzndkioAF6e9eOuzLQnfbjq8wtEEAyumB8Am21BgbjmMx3r3SL0t3p4qnZDxk
	 QIIJuKak0Q1Rdov0qL8+OH7P4A/hgliwKS0ga+2YsE/2SzdRCL8fb+3lPoS/r/JSSy
	 eMzSJl8jRkoOuO+Yoz0PKQvm7J++UYHsh3Tu4cvltGzPV6q78LdrWXOQEvBwuzEQ+G
	 2RcXKI0Pd4WKw==
Date: Wed, 6 Sep 2023 18:12:44 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    Simone Ballarin <simone.ballarin@bugseng.com>, 
    xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 12/13] xen: address violations of MISRA C:2012
 Directive 4.10
In-Reply-To: <096eec08-04e4-638f-d250-3a4785a3309d@suse.com>
Message-ID: <alpine.DEB.2.22.394.2309061810271.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693228255.git.simone.ballarin@bugseng.com> <6ef4634e273a89582299061f1d14346572bf1d47.1693228255.git.simone.ballarin@bugseng.com> <alpine.DEB.2.22.394.2308281548580.6458@ubuntu-linux-20-04-desktop> <35401207-544a-156c-85ee-20e33a78f3a7@bugseng.com>
 <alpine.DEB.2.22.394.2309051519270.6458@ubuntu-linux-20-04-desktop> <096eec08-04e4-638f-d250-3a4785a3309d@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 6 Sep 2023, Jan Beulich wrote:
> On 06.09.2023 00:27, Stefano Stabellini wrote:
> > On Thu, 31 Aug 2023, Simone Ballarin wrote:
> >> On 29/08/23 00:51, Stefano Stabellini wrote:
> >>> On Mon, 28 Aug 2023, Simone Ballarin wrote:
> >>>> Move or amended inclusion guards to address violations of
> >>>> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
> >>>> to prevent the contents of a header file being included more than
> >>>> once").
> >>>>
> >>>> Inclusion guards must appear at the beginning of the headers
> >>>> (comments are permitted anywhere) and the #if directive cannot
> >>>> be used for other checks.
> >>>>
> >>>> Mechanical change.
> >>>>
> >>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> >>>> ---
> >>>>   xen/include/xen/err.h       | 4 +++-
> >>>>   xen/include/xen/pci_ids.h   | 5 +++++
> >>>>   xen/include/xen/softirq.h   | 4 +++-
> >>>>   xen/include/xen/unaligned.h | 7 ++++---
> >>>>   xen/include/xen/vmap.h      | 4 +++-
> >>>>   5 files changed, 18 insertions(+), 6 deletions(-)
> >>>>
> >>>> diff --git a/xen/include/xen/err.h b/xen/include/xen/err.h
> >>>> index 2f29b57d28..a6323d82d7 100644
> >>>> --- a/xen/include/xen/err.h
> >>>> +++ b/xen/include/xen/err.h
> >>>> @@ -1,5 +1,6 @@
> >>>> -#if !defined(__XEN_ERR_H__) && !defined(__ASSEMBLY__)
> >>>> +#if !defined(__XEN_ERR_H__)
> >>>>   #define __XEN_ERR_H__
> >>>> +#if !defined(__ASSEMBLY__)
> >>>
> >>> The original pattern was also guarding the header file sufficiently,
> >>> protecting it from double-inclusion. In fact, it is posing stricter
> >>> restrictions than usual (not laxer). This change is unnecessary?
> >>
> >> The MISRA directive asks to use one of the two following forms:
> >>
> >> <start-of-file>
> >> #if !defined ( identifier )
> >> #define identifier
> >> /* Contents of file */
> >> #endif
> >> <end-of-file>
> >>
> >> <start-of-file>
> >> #ifndef identifier
> >> #define identifier
> >> /* Contents of file */
> >> #endif
> >> <end-of-file>
> >>
> >> I do not see any reason for deviating, but if you ask that, I can do it.
> > 
> > Let's follow MISRA's form.
> 
> This is what I strongly dislike: They could be less restrictive on the
> exact patterns permitted without impacting the goal intended to be
> reached. But it's all as simple as possible, not as flexible as possible.
> 
> In any event, if a transformation like what can still be seen in context
> is to be made, then please #ifdef / #ifndef instead of defined(...)
> whenever possible.

In all fairness I dislike this too. However the rule is clear that to
make it easier to implement MISRA C checkers MISRA only supports 2
specific patterns. And I can see they have a point there in making it
easier to automatically check for correctness.

So I would go ahead with the change.


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 01:15:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 01:15:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597026.931183 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3c6-0004dd-8q; Thu, 07 Sep 2023 01:15:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597026.931183; Thu, 07 Sep 2023 01:15:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3c6-0004dW-5F; Thu, 07 Sep 2023 01:15:18 +0000
Received: by outflank-mailman (input) for mailman id 597026;
 Thu, 07 Sep 2023 01:15:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qe3c5-0004d8-7D
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 01:15:17 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fc991681-4d1b-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 03:15:11 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id A4504CE1843;
 Thu,  7 Sep 2023 01:15:06 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id ACAC6C433C7;
 Thu,  7 Sep 2023 01:15:03 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fc991681-4d1b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694049305;
	bh=QhnRdU8xyqmAt/gR+tuX2ax1437Oobl0F0HJhnphkeo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Ww6HbxDVaR/b4aQw9ooslBm7BPnrwYOjW5nN8HXW/B/0wXbpS8IDJdEjCTKhb8lRK
	 o7OrG1RnSO258Dq/2BdxIXsE+HkzirNYHx8ki5qiO/KN8Y0kV9qi1xu1nnOwMBxXc9
	 cVzQC0WQCdnHOoZiKJMYsFbe/8J1QSqc+0mYJmS39cerCx9zo7IzVuyKst5KDD9bLS
	 tvx7nO2xr0429lN0y5bpNVoU5SjKDlHD6zR9Wrlhg83kwlWvTcQrVcD/kG9fMl3AJk
	 GzUYR5gHV5HpUXnoWb0y0wv6pFAjj5/hTZNkZ0wp+wJtOggP3zo0uSTaXvJXCP07r5
	 2BH/m6uTz6wNg==
Date: Wed, 6 Sep 2023 18:15:01 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, 
    michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN PATCH v2] xen/arm: ioreq: add header for 'handle_ioserv'
 and 'try_fwd_ioserv'
In-Reply-To: <7a58fd2e4361de53fc81475dd4aca52a57b770f1.1693581823.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309061814550.6458@ubuntu-linux-20-04-desktop>
References: <7a58fd2e4361de53fc81475dd4aca52a57b770f1.1693581823.git.nicola.vetrini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 4 Sep 2023, Nicola Vetrini wrote:
> The functions referenced by this patch should have had a compatible
> declaration visible prior to their definition. This is achieved by
> including the arch-specific header in 'xen/arch/arm/ioreq.c'
> 
> Fixes: cb9953d2f2bc ("arm/ioreq: Introduce arch specific bits for IOREQ/DM features")
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> Changes in v2:
> - Avoid including <asm/ioreq.h> in <xen/ioreq.h> to allow new architectures
>   (e.g. ppc and riscv) not to provide one more stub header,
>   as pointed out by Jan Beulich.
> ---
>  xen/arch/arm/ioreq.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/xen/arch/arm/ioreq.c b/xen/arch/arm/ioreq.c
> index 55854571898d..3bed0a14c050 100644
> --- a/xen/arch/arm/ioreq.c
> +++ b/xen/arch/arm/ioreq.c
> @@ -9,6 +9,7 @@
>  #include <xen/ioreq.h>
> 
>  #include <asm/traps.h>
> +#include <asm/ioreq.h>
> 
>  #include <public/hvm/ioreq.h>
> 
> --
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 01:21:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 01:21:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597036.931193 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3hx-0006zd-RX; Thu, 07 Sep 2023 01:21:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597036.931193; Thu, 07 Sep 2023 01:21:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3hx-0006zW-OG; Thu, 07 Sep 2023 01:21:21 +0000
Received: by outflank-mailman (input) for mailman id 597036;
 Thu, 07 Sep 2023 01:21:20 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qe3hw-0006y7-LF
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 01:21:20 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d94163e2-4d1c-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 03:21:19 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 00C22B81B8C;
 Thu,  7 Sep 2023 01:21:18 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 32763C433C8;
 Thu,  7 Sep 2023 01:21:16 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d94163e2-4d1c-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694049677;
	bh=nDmVEirevMI+p85XMYje0NKFHIS4I+PP3nbrImmfpew=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=oGcVhGrc/jb0Gqisbu7kVpn2tpbpbtIhe4q9yRA+cMACpNzXHeVHZDBPf1wo0y/B0
	 fpND5Jd6F0Zykrmj+iyXtv0lddhfU9/Rjrq1A0loimR7MvXIZjhWVrfVhXbVJLnth3
	 xb+Y980q1q24HBfnk4qZIWTrlSRltEljl/90yoyxjS8O4fKLg99g0EtueJLDBLn4Ia
	 CYCe906cFP5U9HO+CJQafN/kQz/xkX0MPQhFeBIWkg1Rtg+WNtf2DeYrkP5KFgh7EA
	 xaci91QLG6R0yqhCoIG80Cxj3iZi9ISruZNTGOP3hAnXAMjuT4O9ubdr78XEckOy5V
	 cKeM0HkSWTdWw==
Date: Wed, 6 Sep 2023 18:21:14 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, julien@xen.org, george.dunlap@citrix.com, 
    bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, 
    nicola.vetrini@bugseng.com, 
    Stefano Stabellini <stefano.stabellini@amd.com>, 
    xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2] docs/misra: add 14.3
In-Reply-To: <58f72b39-701f-6f7a-eba7-fa685d35b8cd@suse.com>
Message-ID: <alpine.DEB.2.22.394.2309061819150.6458@ubuntu-linux-20-04-desktop>
References: <20230831015316.531167-1-sstabellini@kernel.org> <58f72b39-701f-6f7a-eba7-fa685d35b8cd@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 31 Aug 2023, Jan Beulich wrote:
> On 31.08.2023 03:53, Stefano Stabellini wrote:
> > @@ -332,6 +333,17 @@ maintainers if you want to suggest a change.
> >       - A loop counter shall not have essentially floating type
> >       -
> >  
> > +   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_03.c>`_
> > +     - Required
> > +     - Controlling expressions shall not be invariant
> > +     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
> > +       checks, and other constructs that are detected as errors by MISRA
> > +       C scanners, managing the configuration of a MISRA C scanner for
> > +       this rule would be unmanageable. Thus, this rule is adopted with
> > +       a project-wide deviation on if and ?: statements.
> 
> As before - switch(sizeof(...)) and alike also wants deviating, imo.

I added the switch, but without the words "and alike" because it is not
clear in this context what it would allow.


> > +       while(0) and while(1) are allowed.
> 
> ... and alike ... (to also cover e.g. while(true)).

Here the words "and alike" are clearer so I added them


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 01:22:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 01:22:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597043.931203 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3im-0007qx-9r; Thu, 07 Sep 2023 01:22:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597043.931203; Thu, 07 Sep 2023 01:22:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3im-0007qq-6Y; Thu, 07 Sep 2023 01:22:12 +0000
Received: by outflank-mailman (input) for mailman id 597043;
 Thu, 07 Sep 2023 01:22:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qe3ik-0006y7-U5
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 01:22:10 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org
 [2604:1380:4601:e00::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f77a4df0-4d1c-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 03:22:10 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id C74D0B81D3A;
 Thu,  7 Sep 2023 01:22:09 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 12494C433C8;
 Thu,  7 Sep 2023 01:22:06 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f77a4df0-4d1c-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694049728;
	bh=bs/dcggUZ/Oiz4QqfXxtmXxh/V+hsKtSAq2RX6E0gkc=;
	h=From:To:Cc:Subject:Date:From;
	b=g8dlzYmsLraTat9mW1WUXCh6bzTCFByresDRLJ1rrHDMOs5gP1jKqGMeEFGXlZ+Wy
	 9/HK3mgbUWMqgwLooEDO/sKwxRSFVnP4Bd5h0eokhUE+BpIcSjRyVY0i4IxU6Q3CZD
	 N90Vt+UQVjlGaci+KMhp9fMv2vxJ+CBc12ynajrKnDrVFJMrZFlg3gFu6mS3MasD/F
	 wSQHNFpJv53VfFyqpZ6KTjGe43tNpXtXPBy8CAF6dYOdhkMQ6ockbxV2YAKJ08wY/m
	 wTrXkWz17UPnSF6RnT378YnqHx4UXajbspqKA8HfOuXoWyBIewV9kDNiJEkQG1As3R
	 zY0wTblZhx4+Q==
From: Stefano Stabellini <sstabellini@kernel.org>
To: xen-devel@lists.xenproject.org
Cc: jbeulich@suse.com,
	andrew.cooper3@citrix.com,
	roger.pau@citrix.com,
	julien@xen.org,
	sstabellini@kernel.org,
	george.dunlap@citrix.com,
	bertrand.marquis@arm.com,
	roberto.bagnara@bugseng.com,
	nicola.vetrini@bugseng.com,
	Stefano Stabellini <stefano.stabellini@amd.com>
Subject: [PATCH v2] docs/misra: add 14.3
Date: Wed,  6 Sep 2023 18:22:03 -0700
Message-Id: <20230907012203.1238090-1-sstabellini@kernel.org>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Stefano Stabellini <stefano.stabellini@amd.com>

Add 14.3, with project-wide deviations.

Also take the opportunity to clarify that parameters of function pointer
types are expected to have names (Rule 8.2).

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
---
Changes in v2:
- add switch to the Rule 14.3 exceptions
- add "and alike" for while(0) and while(1)
---
 docs/misra/rules.rst | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index 34916e266a..3d8d1633a4 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -234,7 +234,8 @@ maintainers if you want to suggest a change.
    * - `Rule 8.2 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_08_02.c>`_
      - Required
      - Function types shall be in prototype form with named parameters
-     -
+     - Clarification: both function and function pointers types shall
+       have named parameters.
 
    * - `Rule 8.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_08_03.c>`_
      - Required
@@ -385,6 +386,17 @@ maintainers if you want to suggest a change.
      - A loop counter shall not have essentially floating type
      -
 
+   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_03.c>`_
+     - Required
+     - Controlling expressions shall not be invariant
+     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
+       checks, and other constructs that are detected as errors by MISRA
+       C scanners, managing the configuration of a MISRA C scanner for
+       this rule would be unmanageable. Thus, this rule is adopted with
+       a project-wide deviation on if ?: and switch statements.
+
+       while(0) and while(1) and alike are allowed.
+
    * - `Rule 16.7 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_16_07.c>`_
      - Required
      - A switch-expression shall not have essentially Boolean type
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 01:33:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 01:33:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597054.931215 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3ta-0001nC-9b; Thu, 07 Sep 2023 01:33:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597054.931215; Thu, 07 Sep 2023 01:33:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe3ta-0001n5-6N; Thu, 07 Sep 2023 01:33:22 +0000
Received: by outflank-mailman (input) for mailman id 597054;
 Thu, 07 Sep 2023 01:33:21 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qe3tZ-0001mz-F3
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 01:33:21 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 85ef1192-4d1e-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 03:33:18 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 31AE2B81D3A;
 Thu,  7 Sep 2023 01:33:18 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3967AC433C8;
 Thu,  7 Sep 2023 01:33:15 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 85ef1192-4d1e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694050396;
	bh=vekrOVJM1reQA//pT7fHp9mWSTbAXkLJvPL0GiG3cMQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=SzTPpLO7b216HkHoWUqLivUu35tEXDlR83HS5NDBHYNSwG6zQsJJ0vZe1CUfG2HFd
	 +sMgaCIujslVKAoZI97joRMaFKoP6//JIP49syVV96xK3rBSYmZP9H1+RYm7L2rRL1
	 F90Jih1UVpdjFCfsA1/ijSE4fG2rfAGB+Ah+CFghmSkePZvMnH4Mjn/AqmqshHQrKC
	 ZQeI63Ug2HbA3omkyr3lIbaAo82jGZ8L3nEROEl+5MNkjfQRMqiNlAtZTB6rtm4Ofd
	 olF8GnYYofADRTohEDXbK+M4v4RDLnQIzicRzHS/eJlmOGzDmJxaFU7OrAJaHOAcDX
	 U+lHE+vd4R55w==
Date: Wed, 6 Sep 2023 18:33:13 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Nicola Vetrini <nicola.vetrini@bugseng.com>, sstabellini@kernel.org, 
    michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro
 BITS_TO_LONGS
In-Reply-To: <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
Message-ID: <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com> <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com> <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com> <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com> <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 6 Sep 2023, Jan Beulich wrote:
> On 06.09.2023 17:57, Nicola Vetrini wrote:
> > On 05/09/2023 10:33, Jan Beulich wrote:
> >> On 05.09.2023 10:20, Nicola Vetrini wrote:
> >>> On 05/09/2023 09:46, Jan Beulich wrote:
> >>>> On 05.09.2023 09:31, Nicola Vetrini wrote:
> >>>>> Given its use in the declaration
> >>>>> 'DECLARE_BITMAP(features, IOMMU_FEAT_count)' the argument
> >>>>> 'bits' has essential type 'enum iommu_feature', which is not
> >>>>> allowed by the Rule as an operand to the addition operator.
> >>>>> Given that its value can be represented by a signed integer,
> >>>>> the explicit cast resolves the violation.
> >>>>
> >>>> Wait - why would this lead to a change to BITS_TO_LONGS()? And if 
> >>>> that
> >>>> was to be changed, why plain int? I don't think negative input makes
> >>>> sense there, and in principle I'd expect values beyond 4 billion to
> >>>> also be permissible (even if likely no such use will ever appear in a
> >>>> DECLARE_BITMAP(), but elsewhere it may make sense). Even going to
> >>>> "unsigned long" may be too limiting ...
> >>>>
> >>>
> >>> You have a point. I can think of doing it like this:
> >>> DECLARE_BITMAP(features, (int)IOMMU_FEAT_count)

I think this is a good solution for this case (even more so if we can't
find a better implementation of BITS_TO_LONGS)


> >>> on the grounds that the enum constant is representable in an int, and 
> >>> it
> >>> does not seem likely
> >>> to get much bigger.
> >>> Having an unsigned cast requires making the whole expression
> >>> essentially unsigned, otherwise Rule 10.4 is violated because
> >>> BITS_PER_LONG is
> >>> essentially signed. This can be done, but it depends on how
> >>> BITS_TO_LONGS will be/is used.
> >>
> >> It'll need looking closely, yes, but I expect that actually wants to be 
> >> an
> >> unsigned constant. I wouldn't be surprised if some use of 
> >> DECLARE_BITMAP()
> >> appeared (or already existed) where the 2nd argument involves sizeof() 
> >> in
> >> some way.
> >>
> > 
> > I think there's one with ARRAY_SIZE. In my opinion this can be resolved 
> > as follows:
> > 
> > #define BYTES_PER_LONG (1U << LONG_BYTEORDER) // the essential type gets 
> > from signed to unsigned
> > 
> > #define BITS_TO_LONGS(bits) \
> >          (((unsigned long long)(bits)+BITS_PER_LONG-1U)/BITS_PER_LONG) // 
> > same here
> 
> Except, as said before, I consider any kind of cast on "bits" latently
> problematic.

Can't we just do this (same but without the cast):

#define BYTES_PER_LONG (1U << LONG_BYTEORDER)
#define BITS_TO_LONGS(bits) \
         (((bits)+BITS_PER_LONG-1U)/BITS_PER_LONG)

Then we just need to make sure to pass an unsigned to BITS_TO_LONGS. In
the case above we would do:

DECLARE_BITMAP(features, (unsigned int)IOMMU_FEAT_count)



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 02:31:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 02:31:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597066.931229 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe4nA-0006Ay-FF; Thu, 07 Sep 2023 02:30:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597066.931229; Thu, 07 Sep 2023 02:30:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe4nA-0006Ar-B0; Thu, 07 Sep 2023 02:30:48 +0000
Received: by outflank-mailman (input) for mailman id 597066;
 Thu, 07 Sep 2023 02:30:47 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe4n9-0006Ah-7V; Thu, 07 Sep 2023 02:30:47 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe4n9-0002zn-2j; Thu, 07 Sep 2023 02:30:47 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe4n8-0003Pq-Mh; Thu, 07 Sep 2023 02:30:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qe4n8-000317-MH; Thu, 07 Sep 2023 02:30:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=0/LiBoDa0+gRqMN0Mg1DCA/SrNMlsHVUwNrGQNtwsT8=; b=E9KJHO5LDPGwqM4kLK6TIA5ArF
	8fKzCYHHHGXGZSFlQY74TJ7kLiUJACjF3oilcMQvXIw0C/S3fnXBcj8AgFPnJpxF+fA7VRiwdXIfC
	638DHEja6lRxMbFiKIVi8rquIa7c64DIfnn+EGHuvdgjd3sSL5VT5WHPJj9woeOXcTr8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182642-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 182642: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=abecd6633e2b5c191080b6838c4c7658af3fddd8
X-Osstest-Versions-That:
    libvirt=e95b81c2fd62d700f697349964b8b2f63e44c64b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 02:30:46 +0000

flight 182642 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182642/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182629
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182629
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182629
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              abecd6633e2b5c191080b6838c4c7658af3fddd8
baseline version:
 libvirt              e95b81c2fd62d700f697349964b8b2f63e44c64b

Last test of basis   182629  2023-09-05 04:18:53 Z    1 days
Testing same since   182642  2023-09-06 04:20:16 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Dmitry Frolov <frolov@swemel.ru>
  Michal Privoznik <mprivozn@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   e95b81c2fd..abecd6633e  abecd6633e2b5c191080b6838c4c7658af3fddd8 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 04:02:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 04:02:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597084.931263 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe6Dw-0003IS-6W; Thu, 07 Sep 2023 04:02:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597084.931263; Thu, 07 Sep 2023 04:02:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe6Dw-0003IL-38; Thu, 07 Sep 2023 04:02:32 +0000
Received: by outflank-mailman (input) for mailman id 597084;
 Thu, 07 Sep 2023 04:02:31 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe6Dv-0003IB-54; Thu, 07 Sep 2023 04:02:31 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe6Dv-00056N-0q; Thu, 07 Sep 2023 04:02:31 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe6Du-0008BB-K2; Thu, 07 Sep 2023 04:02:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qe6Du-0006DR-JA; Thu, 07 Sep 2023 04:02:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=nlDHCWa7jh84DG4cUuow3/DRi+1bhkMM0tTO5h3F21U=; b=ga7QytA+bQf6+lEvZwiEv5iYbW
	TanAXh4KarU/M/hTVUuCRBxuqGGQC+Q5MjgUpYjTIxmDBe121cYpzleiMOZUip2MxfSb4l6O7w8U7
	uPdwbJ7Xps+XFdiEqBOS528FyddsrtlzRa0ZdmIx32k/2ZxKtDIYz/obLF3uE3aOB0BI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182658-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.15-testing test] 182658: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    xen-4.15-testing:test-amd64-i386-migrupgrade:xen-install/src_host:fail:heisenbug
    xen-4.15-testing:test-amd64-i386-migrupgrade:xen-install/dst_host:fail:heisenbug
    xen-4.15-testing:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.15-testing:test-amd64-amd64-xl-credit1:guest-localmigrate/x10:fail:heisenbug
    xen-4.15-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=0517763e771f2e2582bc492fafa42a86400ab957
X-Osstest-Versions-That:
    xen=da7f151a63108db5543ca53c1e902c34ae6ee825
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 04:02:30 +0000

flight 182658 xen-4.15-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182658/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-migrupgrade 10 xen-install/src_host fail in 182633 pass in 182658
 test-amd64-i386-migrupgrade 11 xen-install/dst_host fail in 182633 pass in 182658
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 182633 pass in 182658
 test-amd64-amd64-xl-credit1  20 guest-localmigrate/x10     fail pass in 182633

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 182633 never pass
 test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 182633 never pass
 test-arm64-arm64-xl         15 migrate-support-check fail in 182633 never pass
 test-arm64-arm64-xl     16 saverestore-support-check fail in 182633 never pass
 test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 182633 never pass
 test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 182633 never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 182633 never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 182633 never pass
 test-arm64-arm64-xl-xsm     15 migrate-support-check fail in 182633 never pass
 test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 182633 never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 182633 never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 182633 never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 182633 never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 182633 never pass
 test-arm64-arm64-xl-vhd     14 migrate-support-check fail in 182633 never pass
 test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 182633 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182235
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182235
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182235
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182235
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182235
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182235
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182235
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182235
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182235
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182235
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182235
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182235
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-xsm  3 hosts-allocate               starved  n/a
 test-arm64-arm64-libvirt-raw  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl           3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit1   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit2   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-vhd       3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-xsm       3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-thunderx  3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  0517763e771f2e2582bc492fafa42a86400ab957
baseline version:
 xen                  da7f151a63108db5543ca53c1e902c34ae6ee825

Last test of basis   182235  2023-08-08 17:08:09 Z   29 days
Testing same since   182633  2023-09-05 12:36:47 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bertrand Marquis <bertrand.marquis@arm.com>
  Julien Grall <jgrall@amazon.com>
  Stefano Stabellini <stefano.stabellini@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          starved 
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 starved 
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      starved 
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  starved 
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  starved 
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 starved 
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 starved 
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      starved 
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   da7f151a63..0517763e77  0517763e771f2e2582bc492fafa42a86400ab957 -> stable-4.15


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 05:18:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 05:18:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597097.931280 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe7P1-0003Mt-Ic; Thu, 07 Sep 2023 05:18:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597097.931280; Thu, 07 Sep 2023 05:18:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe7P1-0003Mm-FW; Thu, 07 Sep 2023 05:18:03 +0000
Received: by outflank-mailman (input) for mailman id 597097;
 Thu, 07 Sep 2023 05:18:02 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe7P0-0003Mc-UW; Thu, 07 Sep 2023 05:18:02 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe7P0-0007G0-Pi; Thu, 07 Sep 2023 05:18:02 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe7P0-0002X0-Es; Thu, 07 Sep 2023 05:18:02 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qe7P0-0004R7-EN; Thu, 07 Sep 2023 05:18:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=YeE0m2NihQtJPiHpWBZTdzXaULnBBWLYRueVvaa4/0g=; b=US2dYsci56XibPG2mSugL+bWbi
	0/dH0c/Sh91wtL/54TE2pyB/QS1LlvR9BoBv64WWtBmm+dawgplt/tSOcHunlM0rsin5MCMxBbjmy
	TiH1/aTnvRDm1Bwg5Efmuz47iWF4RIRzQjHE4EW53ztlFhT6chdBN9KftQ8X7Dk+cog8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182709-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182709: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b2dd946ece74e2b6e0601f28caef72f4f9950102
X-Osstest-Versions-That:
    xen=d8c3ff585b9fd10200b05aca77139de2789d0517
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 05:18:02 +0000

flight 182709 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182709/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  b2dd946ece74e2b6e0601f28caef72f4f9950102
baseline version:
 xen                  d8c3ff585b9fd10200b05aca77139de2789d0517

Last test of basis   182674  2023-09-06 14:00:33 Z    0 days
Testing same since   182709  2023-09-07 02:00:31 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jens Wiklander <jens.wiklander@linaro.org>
  Michal Orzel <michal.orzel@amd.com>
  Stefano Stabellini <sstabellini@kernel.org>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   d8c3ff585b..b2dd946ece  b2dd946ece74e2b6e0601f28caef72f4f9950102 -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 06:42:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 06:42:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597107.931289 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe8ik-0004P1-Gm; Thu, 07 Sep 2023 06:42:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597107.931289; Thu, 07 Sep 2023 06:42:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe8ik-0004Ou-Df; Thu, 07 Sep 2023 06:42:30 +0000
Received: by outflank-mailman (input) for mailman id 597107;
 Thu, 07 Sep 2023 06:42:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qe8ij-0004Oo-9a
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 06:42:29 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2060e.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::60e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b3922dcc-4d49-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 08:42:26 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8438.eurprd04.prod.outlook.com (2603:10a6:20b:411::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Thu, 7 Sep
 2023 06:42:21 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 06:42:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b3922dcc-4d49-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UO17tm5klP6aPxn2iKhXIVFysuju7a/QKBXPZih5OIcKWht969bhwRrVzT1f/6JfMehe5OAqOyjM0B6SZPhiVQvKN+4GQfGkNctPZr+FlrxhmGgJ6kG53HUKD294KyRFce0JgvELvDjBDI23MhksVEEwc2p7HKzdaREkvA77RCsTk9W4Jfd6ZFy1yhJoQ4+XP0bzUZaFzVs8UTEZEEH8Qw3aDmhMxpXspYkE2GBgdonT8WPD6HGT9t9fJ8RFXItUENd38EJ3Avds/LXUw7GsrOwiszdlJ2+AZHgTvDTY0su4TdVK7kR1pCJGorMNqILau6qAeQ4CYvhxzp8expP7GQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pYZKU87k2diPn8QGJhTIWvvXQxgix/khM6Vr0PYXo9w=;
 b=iMoX3U0Z90BXHaomecXEAsmKjnCnatfkg2pvRig2khS+JeNqWQ+TovPJfn8Tyis68WDrVEkG3BTzNAoLQgOvRYp3Ov5uZc1u0siVpQlCNtpo/76oW6AbpVpu/jhCKshA261QRXt+SYda8UcegcX8MVo9FSWAOswZutuawc6d5yQKmYE3fGrh0uQ1uUJoX99iHebbe4TuxNPiBwm1C6K4l+huA1g+AB9D733I1gAxX7mBheF1KUXAUd9r3LeQBwwLiB8/vdleNUskwJvwENn9aDZ5Sg/xeiyMqqEBrC1QCh1d9iP/jXxc2hOsp8omo3vaRhULbv6+jOdD+YPF1FZrpQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pYZKU87k2diPn8QGJhTIWvvXQxgix/khM6Vr0PYXo9w=;
 b=rTvd73RMP4QpdewlbeBRLOk4QGi+jqOhv/C4uSpYCiyiRkZyzLx0lSE0S+FX22Qvk50SYAYXQOMlL8xKulk205QkNb/UljWrRGXHs8zSF1TB1TQvW8NqwAzocloWgaB2dBsBMmIDXRpKoWhl3AShP/jXA2a5ba09w7xd5aX9sl+kKDnSCRRUYoUksSoRWpcfya6oI6dx2ihGWlDqBMNFs5xvndoYxTX4tvP7sUeQ5W6ulNxiUxNqgZceHkzuFeDw8hEWyNO67lxUZqFO8mDOboiBCXD3fKZ4oop6YHlnHn8Hqu763r9LSr0lZk43uGwsIcHpItmM+7Vyk0u/BBTPsw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <09287ad4-693f-4652-1d2a-a235c444b69d@suse.com>
Date: Thu, 7 Sep 2023 08:42:18 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Nicola Vetrini <nicola.vetrini@bugseng.com>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
 <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
 <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0172.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9f::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8438:EE_
X-MS-Office365-Filtering-Correlation-Id: e7c71339-bf1a-47ec-d096-08dbaf6d9669
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	P9VkGyJXbjiZZeZ9MOly4U6S4MP6VA1MASu+Rxu6MCmMCyXfQW1qlZrzdbMamQK/H/kVvJC9HQxHxnQJvO6YvuDYBs4E2G7RqMVARTtTQJ6vUNQx9JkFyUII556gNe+myjx30K1W1sSJ5eTjECJyNKOPtY/DQYqomh2BAAkvCKNBaYcQxLCWVY+lHIsrhNFVX2Txo+bJyiP+1LxRvJLR+ZfMi3xC+0+AleC3aKketnVx4d99UouYzWhe7ULiOXWrGMQI0V9zDqFZYOQCA2C0x/1ji1AYrXzkRJk9sKiB+1IDRFv/7hwFFKBE3HoxQCsdvJH6KErKvAQBdfeOIXP6ziYhQ2dQQfbuL15jvxb/f0Gn1m1W0H+Tb377adX+W32xkWNLgXFlVu9H41LE7sWb4gUnorE8Pwdb1WQ6eMEMQPFS7Bg5UIYCdH/uGDjSNHH06FuB0djtJMTz8iXEDw7kc+4LnxMVMtVpW1E5BjQru2t2r7Db+fekZlxI90WRQS4zmUfdhak/bC8I66fy8D+m3qmeQU/z8f0oSeJ5ItTmIfficupzYbQfD75XKJjxNFHjAJuWp8/z27g2ljLhaNlDf+qkH7FRyhSdRuVads/f3FlSj3SEAPnkDK/0JwW0ygB8kSGLukAALZSaOnTGYLr+nQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(39860400002)(376002)(136003)(396003)(1800799009)(186009)(451199024)(38100700002)(36756003)(86362001)(31696002)(478600001)(2906002)(6512007)(53546011)(6666004)(6506007)(4326008)(6486002)(8936002)(8676002)(5660300002)(31686004)(66946007)(6916009)(316002)(54906003)(66556008)(66476007)(41300700001)(7416002)(83380400001)(26005)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TmdCalNmNHFDY0ZVZnpkRWdGZ2JTZEJSelk5M2hyMnZGSmJKWFJSYkp4MnVN?=
 =?utf-8?B?T0FxOGROSllrMlN3TlQ0aEIyUUhkYzNiR2wwNTFFVkRZY1NEcDVzdFRjZlRT?=
 =?utf-8?B?TzFycHRwUDhEemY4SC9lUEJUb3lPSVBseEtHaXhOYVViOXhVNnFXWE9GVDhF?=
 =?utf-8?B?U2J0WlNENTBRY1RYOHQrOXM3R1pXUnVnWkxGc1JuWWF3aDJiZVFzelBWQk4z?=
 =?utf-8?B?aS80dVI5TlFFUSs5RS81MENiSmUvS0hiSnB2Z0lRWFB1UnptYmlkemdWbys4?=
 =?utf-8?B?dnM4akNibFM2MXNQamduQ0swd3h0UHVHZkxYSXlWZnVWdkkzYWtlTXFWd0FZ?=
 =?utf-8?B?U3A1QmlaZDl1QnVFUERSaklrbzk5NkR2elh1RGtNNGI1WkxES29jeDNwVENz?=
 =?utf-8?B?c0dsN0ZLTFljQ0kwNU5FUlEzbzZMMHo1bTZkZmJUaUhWeStkZkVOWHJEbGVH?=
 =?utf-8?B?MEx0OVc2RWVkUXRReEtlYUtibTF2TEVEc1V4YmFXVk5hcDVIM0xoTXVKZk5W?=
 =?utf-8?B?S01TVHNYeGVFU0tpbE5Kc1pBT3R4ajRzM3NyWmpqbGJ5Nzg3WkkzZ2FqMGFu?=
 =?utf-8?B?ZjNZcnBYeUFmVU1GWHVqdW5NSDFiM3puSmN6YVNzR0RKSjE0ZDF2bVN2dUI0?=
 =?utf-8?B?eU9NdXVmcndMMlFpUUF3SFR4SWtURFZ3S2hhVUNTL2NRY05IL3NJQWZGL2da?=
 =?utf-8?B?dXVHZDRvelYzVjJicXIyeWljVndoVGNXUjhUREVhQ2UwS0k3RnNNNkF6UGNF?=
 =?utf-8?B?bDV6WWVYUkpZUXNwZlVZVU5OUHd1RGZxR1RMQld4dGtnMDNnNGh0SllmbGhC?=
 =?utf-8?B?MytuVGxGTTFrWERMMWx5YkIrbWxMU3RSTk80Z0tsTmgwN0ZTRjRTTzlVaXBs?=
 =?utf-8?B?SEh2bko4WnU3ZFpFV2c4QTVEZEc5RjJRNC9yeDV6RFdSbFBKREl5WURSbk5X?=
 =?utf-8?B?WmFpMjJnWTcyTnlpTE1QOE45RC9EZlBvcFJlQjFqbFh3MFBGaTdzVW1kUTlk?=
 =?utf-8?B?RnFTUzZPbUdLWHY4V1JHT3l0T055TkhLUTJvQloyeFdHZEtSRU5pV3dUQWtR?=
 =?utf-8?B?cEdOQ3lEdlI3Tlp3UDE2WEpqVGhtWXF6TjBlUnJHTjNJcytmWnYwWEhONjlj?=
 =?utf-8?B?NWN4bnRidG5qTjE3cmUvd0IxVkFLZW9BYUQzN21ySWFVSVZXcXVIbFdGaUtt?=
 =?utf-8?B?amt3QnQva0xWSGFoclNPTlRMZFpyMERvRGp4T2hua3RBTmJqOGNiUzNFU1NE?=
 =?utf-8?B?d3pGVUJ2MmpYOFRKVDlpdXVCbk40VjNKV2ZLa0JBazVVZlFWTVdHMlRNNHlI?=
 =?utf-8?B?a1hITXlncU9kU2xQaE9MQmFqM0xGTmlhNEhZVjBpS3FPTnZLL1RVcWdkL1RD?=
 =?utf-8?B?bE1TNmVDdHNxRXFudjlIamFEUE1CTytRdFNSaUxFTmxwMFdlbnJVUkw4a2Rk?=
 =?utf-8?B?MGQrbkdXcXk2d1BFakNtRFhPaUNvb3p5UVg1M3BjV0VIajRGK1VjM1A3c3VH?=
 =?utf-8?B?YWh6V2RiYXhHejcvS3I3QlBPZHY5b3JPdUpiak9GWnVXczY2SHNhU3Z6WjVO?=
 =?utf-8?B?RTc4VWtJc2loQnRnMHF1L0kzWUZCcm1xY2l5OFZHeEg2UTBGVzR6WGRLaURu?=
 =?utf-8?B?SDlacEVKdnBqbVBBTGx3NmlWVllwRUNNeGY0QVN4MFB0TVBqeVorcjNjaHFM?=
 =?utf-8?B?T0VRbXRWTnFYOU9id3RZNHdCQnEwWlBSaTZlVytsL0R1UXB6bWVJL3QzbHEr?=
 =?utf-8?B?Q3Bidzl2amw4L2tFbUFNdlFGb2hGUFl6QkE5MlJQbjdsbjJ1RmNJMnM3cEpM?=
 =?utf-8?B?TmErQW9KQ0t5NlMwN2FpNDdmT0JIMWpVWFJyL0krZGhZcytaaVZZcll5YTlN?=
 =?utf-8?B?ai8xYlkwMXYyRzJpWFpWdXdTWEc2OUNPc1RBdXo1Rm1VVUVCN3phWmlaN2xP?=
 =?utf-8?B?eWM5OUw4ZUIzL3VNaHBEMWZ4dHpSbVV5RkR5eHloMVhqdnRENEdKT1dCK0x5?=
 =?utf-8?B?emJmWGJ3cTFDUzBsRERqZ3RjcTVkQkZkZjFKNkJuYXpmSjFOdzdtUmZqeUxZ?=
 =?utf-8?B?blJYajN2TEhydEY4WXR2Y0tjTjZubk9wcE1HeG9CelNDK1I2TUFxQnNoNDZ0?=
 =?utf-8?Q?FFNmnzNKRCBrHpelDoLHMV9Qi?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e7c71339-bf1a-47ec-d096-08dbaf6d9669
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 06:42:21.4153
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 21pKo7cT0DSznkNbD5t4HtgPcuMLDfCn94rviLfkXNdSsfbf+v5VO9iibrIBcQQTlxOLMKdoNBLNXXL5u+l5JQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8438

On 07.09.2023 03:33, Stefano Stabellini wrote:
> On Wed, 6 Sep 2023, Jan Beulich wrote:
>> On 06.09.2023 17:57, Nicola Vetrini wrote:
>>> On 05/09/2023 10:33, Jan Beulich wrote:
>>>> On 05.09.2023 10:20, Nicola Vetrini wrote:
>>>>> On 05/09/2023 09:46, Jan Beulich wrote:
>>>>>> On 05.09.2023 09:31, Nicola Vetrini wrote:
>>>>>>> Given its use in the declaration
>>>>>>> 'DECLARE_BITMAP(features, IOMMU_FEAT_count)' the argument
>>>>>>> 'bits' has essential type 'enum iommu_feature', which is not
>>>>>>> allowed by the Rule as an operand to the addition operator.
>>>>>>> Given that its value can be represented by a signed integer,
>>>>>>> the explicit cast resolves the violation.
>>>>>>
>>>>>> Wait - why would this lead to a change to BITS_TO_LONGS()? And if 
>>>>>> that
>>>>>> was to be changed, why plain int? I don't think negative input makes
>>>>>> sense there, and in principle I'd expect values beyond 4 billion to
>>>>>> also be permissible (even if likely no such use will ever appear in a
>>>>>> DECLARE_BITMAP(), but elsewhere it may make sense). Even going to
>>>>>> "unsigned long" may be too limiting ...
>>>>>>
>>>>>
>>>>> You have a point. I can think of doing it like this:
>>>>> DECLARE_BITMAP(features, (int)IOMMU_FEAT_count)
> 
> I think this is a good solution for this case (even more so if we can't
> find a better implementation of BITS_TO_LONGS)
> 
> 
>>>>> on the grounds that the enum constant is representable in an int, and 
>>>>> it
>>>>> does not seem likely
>>>>> to get much bigger.
>>>>> Having an unsigned cast requires making the whole expression
>>>>> essentially unsigned, otherwise Rule 10.4 is violated because
>>>>> BITS_PER_LONG is
>>>>> essentially signed. This can be done, but it depends on how
>>>>> BITS_TO_LONGS will be/is used.
>>>>
>>>> It'll need looking closely, yes, but I expect that actually wants to be 
>>>> an
>>>> unsigned constant. I wouldn't be surprised if some use of 
>>>> DECLARE_BITMAP()
>>>> appeared (or already existed) where the 2nd argument involves sizeof() 
>>>> in
>>>> some way.
>>>>
>>>
>>> I think there's one with ARRAY_SIZE. In my opinion this can be resolved 
>>> as follows:
>>>
>>> #define BYTES_PER_LONG (1U << LONG_BYTEORDER) // the essential type gets 
>>> from signed to unsigned
>>>
>>> #define BITS_TO_LONGS(bits) \
>>>          (((unsigned long long)(bits)+BITS_PER_LONG-1U)/BITS_PER_LONG) // 
>>> same here
>>
>> Except, as said before, I consider any kind of cast on "bits" latently
>> problematic.
> 
> Can't we just do this (same but without the cast):
> 
> #define BYTES_PER_LONG (1U << LONG_BYTEORDER)
> #define BITS_TO_LONGS(bits) \
>          (((bits)+BITS_PER_LONG-1U)/BITS_PER_LONG)

Right, that's what I was expecting we'd use (with blanks suitably added of
course).

Jan

> Then we just need to make sure to pass an unsigned to BITS_TO_LONGS. In
> the case above we would do:
> 
> DECLARE_BITMAP(features, (unsigned int)IOMMU_FEAT_count)
> 



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 06:45:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 06:45:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597114.931300 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe8lr-0004zP-Vn; Thu, 07 Sep 2023 06:45:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597114.931300; Thu, 07 Sep 2023 06:45:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe8lr-0004zI-Sj; Thu, 07 Sep 2023 06:45:43 +0000
Received: by outflank-mailman (input) for mailman id 597114;
 Thu, 07 Sep 2023 06:45:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qe8lq-0004zB-Pk
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 06:45:42 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062b.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2981037a-4d4a-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 08:45:42 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8438.eurprd04.prod.outlook.com (2603:10a6:20b:411::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Thu, 7 Sep
 2023 06:45:38 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 06:45:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2981037a-4d4a-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Hw7TYHLVzT0q11XKnZWhKFkV3mSMbXJ6kJ6Az3KqqJe2+i0cKeYDwufUCjIV0PGsB3hLltwqb5SVfwM3XQp28Rbu2peiy1srNe2BF58dc7/RVOb2WoBS6KTy7Ae23nkQvTJD3jpcmAuMotcC9+28jqy0EQPIEmX3V2soGvlbY54xO0HzK2NUO3Omn2k2kby43Xy6qZD60g8wZA1+1rAyx0nJDXPgEyM7gcPCKo5ZTcqagaFijx+tROAKQuk6T+YpiHmzwJjKjKexPsyQDJWxMgUvtJLIb2E9BaAsz5lTXr47HGJeX5RvDA4x/ZmhSaWxlp77sJ3E8FmY6+25XCzh7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hTEq8pADGz2EO+j7a4nuwMYO9LhYm+ZTH593a7lhEyU=;
 b=QxXlHiJOPMGWsgIIJEUEWgubg7YQFFZ4eQeJoYO7FvMdTFr98YEi6GEXivg/6/wjtnJyXlWWsjLG1Wmk+jb4S9oWdpB8tjWGQ16gFFrPXg93tANTqHtZqVU3YIgqxe/deWIncnQQ64EYF4tcbZMs/jB0s09UgUfRWDxT85SBDHoKfnyIX4d7k2kGLgHP3DhS6udzQnnkv4TZZjc7e1VRib0zRf8UWMZRSnZcTXPwskdFSEmVORnXdGghfOLpVQ7E74Mr5AjrI98DdEFWHogNePgW+q9rxFYTplD3m6w8Hf9XTupppSC9mG4CbDN1WpjAh2Lt/1B02riMXfRz5SnRDQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hTEq8pADGz2EO+j7a4nuwMYO9LhYm+ZTH593a7lhEyU=;
 b=TRrO8OMQALRsQ9bCV6VK2mh3aBF5YLw8s3gRbXOBAYhKKwMH6hodD5oUOvaItg8b4AQ1tW7UZIa7xLWmC7eRrCVf+CIPxaJ9gFqHHFryrElL3W2Z65A2yssU4vhUfV4xI5cwr9ijDVJPk4oFpV9/cx8ZeNGSJ8w7ORYYpvLe6vXiU8SzgshAM1jrofD6vgPZdmJzFxtBu9k2ogVvLEy1Ht5lXx2fRQshInXEDOQTbeGpLUERv7Eqt9cb61ObWaLZmap9YZwMlaVruSvBnBvcUUziBr3vPlmWGQtDmxdo883/qp4bIqJKmIFwPaYDmb+0qut4EOGqQUMPY91tEIEQgw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <86d27be3-a6bf-9b52-2d25-0e398f742942@suse.com>
Date: Thu, 7 Sep 2023 08:45:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v2] docs/misra: add 14.3
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com, julien@xen.org,
 george.dunlap@citrix.com, bertrand.marquis@arm.com,
 roberto.bagnara@bugseng.com, nicola.vetrini@bugseng.com,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 xen-devel@lists.xenproject.org
References: <20230831015316.531167-1-sstabellini@kernel.org>
 <58f72b39-701f-6f7a-eba7-fa685d35b8cd@suse.com>
 <alpine.DEB.2.22.394.2309061819150.6458@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309061819150.6458@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0108.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a3::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8438:EE_
X-MS-Office365-Filtering-Correlation-Id: 705fcaea-4e15-4f3e-7c05-08dbaf6e0bfd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oMRS4cZDr0jqrUmk0hhxy7VKPy0feNldiYwLP4VBSy1Jma3PqnOBo3alUCZGjIe9MMccjDtQ/MSO+214QIBcofHFXsCadtjFx5xiKErvfyockXUsmQEYFdA724B3+eIeYa5ZnYasL59d0wLCAvAjmIoJHBioL4G7myke3Vvf23Vz+TbRnkKkI0iDGiis5bb8QcL8v7cmGGykRSgWFfkYcOTOdvhYygD2o1S0K7yY3etEdbIOWyQPCtIqmFATF6lcxeMGTr/oe+0mWjaqWB0PGwKmdX58DNkNUgHg72leYTEMSTWJreTclrEk9ID7sKYhJjnQjkfpcA1bduxznmhwagsK8GFNVwg+vEjRtlW8TaFZ7dfnkFFIcbGZ3XQN4cMbWJxgC6fbSp97GVCEORMsSI8mGCm7Kk1uQnHuv86KsAJ2w17GelwvSU472P/e4CxWwzGZVQAjkpTKCQOG7+fpQyWYlScermm7uv0l74epMbuK+/UEC5y8iX0M2knHF9cLt95k5rgprepL40oR4V5yr/f8EPiGUmmbWxOfQhkdnsvTEFSmT0gQqzorw6pHL2EbVq3iQO8LwNLWqX97XSlJBtm78ulu6rORZ4UCsRLKawLz2+SycRQq+P+WxcmunizsI5HU4ijFQL/SweJlyOqcQA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(39860400002)(376002)(136003)(396003)(1800799009)(186009)(451199024)(38100700002)(36756003)(86362001)(31696002)(478600001)(2906002)(6512007)(53546011)(6666004)(6506007)(4326008)(6486002)(8936002)(8676002)(5660300002)(31686004)(66946007)(6916009)(316002)(66556008)(66476007)(41300700001)(7416002)(83380400001)(26005)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T3FnRGsyUlN5L2hENkRiWVN6MkcwcUJ1RXY5aUhzMXUwUVMva3RucC85ckJu?=
 =?utf-8?B?ZmdKOGlycGFBaWZZWU9pTTNqOCtMK09pVUZKTUh3MG56Qysxb0FLemc3V2Nt?=
 =?utf-8?B?V0NiYWRGZHdHZ2xBdE5sc2I2NndOYzhkRFluWmpuQWZ5RGc2MG1zRE5GNE1N?=
 =?utf-8?B?ME44RHRJakNjOGltcHpVb3plMTIyL0JqL3dLV0FBUUdlRkVuMTI5TDEvNWcr?=
 =?utf-8?B?L2JnVTQzNTZLWnhkMGZ1MFNoRXpJWEhSUDNqb3hrUDkwYnBQRWJNZFFERUV1?=
 =?utf-8?B?ZjF4L2czVmI3dUdPQmpGYSsrNkxjSHVDZGJCaHJYQzBoVk1BOXZoWTBycm9B?=
 =?utf-8?B?L3lKNW9zcE5vdjJtdU1CV3VoUTVqVHhwMWQ3N1kwcnpGV3ZpbzZ4djcvNkc2?=
 =?utf-8?B?V1hVViswWnV5aW5qSi9PWTV5cDNiR0s4R3ZyTjNVT0tmRHBMZklHYzVzTHNh?=
 =?utf-8?B?b0QrZEtxMmFNNUZHamx0VjR4UmxuMG9hbHp3QmVWOVZ1aGtueThxYW9JOTdw?=
 =?utf-8?B?bzlYTHNyR2wycGJaZ05nQjUzL1plTm02aDFMenZjQmpCNjFKYzZ5YmhlNjVO?=
 =?utf-8?B?Z04xNE42OVlXR2puVHZXTGxaLzFGL1BONkdDa2pSQ3RxeGQyV0pBWC8rQVdw?=
 =?utf-8?B?VDEzVDFTZFRJR2o0M042Rk4ydGkwWWc0WVk1TnUraW41cFhYWjNrS01yZ2dy?=
 =?utf-8?B?a3lZbzBhM01rQ3dJREJzQ3hobFh4VER1SFQ0d3FTUVE4c0Fua2lMQlNZR29z?=
 =?utf-8?B?KytVZjBxM28rdzJwMXFYY1JSMXBDUkptQ1hHQk1oTGJPaTc1cjJleGd0dEVL?=
 =?utf-8?B?NkRpdjJ3QmttMkNNN1M2YnFxd3Rick00VXRKZzRLRUZDMFRSK3NtcFdVa2Yv?=
 =?utf-8?B?aUxzcTcvcHhobGlSbmw1STNZVERkdTMvQ1lQWFBpYmljejU4S0tsSXFLL2Ja?=
 =?utf-8?B?L0lDb3Rka1hmelNZRXdxVW10WFBmQWtabHlTYk1CYnBIS3lLTkVZMHdGOUJQ?=
 =?utf-8?B?ZkQ1VjVnYVZJbGNVZC9vbEhubWhKTDAzTlAzdjBQa0ZUOFdxRFpvd0pKWnN1?=
 =?utf-8?B?dEc3T2pTL1B4dmNDUm1wRUJ1MjhYQ0FnUWwzdGxGNnZZRGhaMHZXMGozdTYz?=
 =?utf-8?B?MS9YMjNqd3RHSW93UWVPYzN6OStoL2luMlp4dU03b3UwRmYxM0FVWm43Qlly?=
 =?utf-8?B?SzNzY2psalpnNm84TUNmUy9BaytuR1JTcjkzMXhUUWNjMWVYNGwvMWhJRDAx?=
 =?utf-8?B?TnJuVFEvbWIwc2VuTmFhVUxaMkNPU1BORFJCVlBHUE15aXNMSUg2enVwWHdV?=
 =?utf-8?B?QmQ4b3JyUDJnSGxsVUdKRnhVVUhEN21LdzhLUzFaWFgxbFJVR295a2RRNVg1?=
 =?utf-8?B?UVk5aHBpR3phdE5panZ3LzRZZ2xZMzlWNGpjeC8wZkN3V29OVWoxVTV5N1JQ?=
 =?utf-8?B?c1RudU4vQzhvdWFXMEtoNEYxN1RyV3kxZ0ZUYWpPTzZlQWQ0Wit1bWI4cWtu?=
 =?utf-8?B?RHdVTVJ2M2paRXJOVzZwWWZNaGhZR2NqSDdBZ1czemd5OFN2SmIrR0theWFN?=
 =?utf-8?B?WTU5ck55aGZ1Rk5NQ2FxZDNTZjNQcktRdDBOQXh4bmY3UWNRTDZhSG1WRWMr?=
 =?utf-8?B?a3lXak9acWdLQzlSSnV1M2pzOThIMmtjWEUwUklvNkJMaG5HZzdPSnBzQmlw?=
 =?utf-8?B?SzNSZUVaUlI4T3FqM3VweUtxUkNWRlZSWGpFOVFmOW8rUlozRnZvcFRLM2ZN?=
 =?utf-8?B?OFovdGo2a2FrM0RXZXFYRHgxc2dCb2dVTS9VZldjS0p3UFdHYTVta21JeklD?=
 =?utf-8?B?eStuYUVpWHRaTWkySzBKZjRBM01KdnBlTWdsTjhJcHFtNmU1Z3U1Z0dkSFhW?=
 =?utf-8?B?bGJhQlFib3MyKysxK3lEVzh3NmxnWmVndS9NNHEzVE11SW1jZlVQY2o0M29p?=
 =?utf-8?B?YUtGUXU4Sy9xVDNGQjdFZ3lYTVk2Ukl2cENhakpUN0FxNzQ0N1ZEQllZN2la?=
 =?utf-8?B?cFU1Q0dUNFNpek1sLzQ2VEZVYWthclUybzQrY0JpRlZRUTNPdjBjN2VOVytQ?=
 =?utf-8?B?TjFEVWlvMnRzL3dteU8vQjk1SWlQQnZoSkx4ZVNOZ2ZUdFVLRHFxVUFVNHBz?=
 =?utf-8?Q?oA8D2Lc6IDs/fipcQh05dLn9R?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 705fcaea-4e15-4f3e-7c05-08dbaf6e0bfd
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 06:45:38.6726
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7omSlBSh8zjmAfjLXrF3F5Anv8G4Xc6dBbNNVYJhHNsTwLjB/u2lVne7N//Ss/o6rDcGFLg7Iro9ueXz7kbGeg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8438

On 07.09.2023 03:21, Stefano Stabellini wrote:
> On Thu, 31 Aug 2023, Jan Beulich wrote:
>> On 31.08.2023 03:53, Stefano Stabellini wrote:
>>> @@ -332,6 +333,17 @@ maintainers if you want to suggest a change.
>>>       - A loop counter shall not have essentially floating type
>>>       -
>>>  
>>> +   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_03.c>`_
>>> +     - Required
>>> +     - Controlling expressions shall not be invariant
>>> +     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
>>> +       checks, and other constructs that are detected as errors by MISRA
>>> +       C scanners, managing the configuration of a MISRA C scanner for
>>> +       this rule would be unmanageable. Thus, this rule is adopted with
>>> +       a project-wide deviation on if and ?: statements.
>>
>> As before - switch(sizeof(...)) and alike also wants deviating, imo.
> 
> I added the switch, but without the words "and alike" because it is not
> clear in this context what it would allow.

Well, what I mean here are expressions involving sizeof() (or e.g also
offsetof()).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 06:50:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 06:50:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597123.931309 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe8qp-0006gG-Hd; Thu, 07 Sep 2023 06:50:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597123.931309; Thu, 07 Sep 2023 06:50:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe8qp-0006g9-Er; Thu, 07 Sep 2023 06:50:51 +0000
Received: by outflank-mailman (input) for mailman id 597123;
 Thu, 07 Sep 2023 06:50:50 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qe8qo-0006g3-9k
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 06:50:50 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20631.outbound.protection.outlook.com
 [2a01:111:f400:7d00::631])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e00ed557-4d4a-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 08:50:48 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8789.eurprd04.prod.outlook.com (2603:10a6:10:2e0::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 06:50:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 06:50:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e00ed557-4d4a-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZEzRKWDcthaxQp64haRwcYKFL1iT6QiTx9X8NepP3fQZPryaaKD4wWpzmNfyafQLaMKrxUkcx1Pp1yVXtn58OI/29CdRC2gIu4D/IorxTWN/xpSAzK1UvkCVsWGpTmE93pNwbJ/jypX6Zn3LgOrnmnKqGWwgyFBOOf6o0/1MQHojvsxGICUowiqBHdq+r29BvaOT5qoYvAe2NdyS6uSb8j+TAmZ7RnAHq1pV4yFrQtFIMCvul8EKQ9KgV3J62KSSTHiMeDAyEoxHaVw6eipLii/BMlSmO3sbSjeUyHdfU56pBNKGQNFizlZOAQYCBKtOJEOF1a8/bzwQJWSbQzmvnw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cIhFXxpnD/TvIeWrOQVh/jma8ZYPOA4vhMj7fc9I4Dg=;
 b=gDJZWAZnx1ko5onBFLa5SGU1/KrPGvgqSuJI6TUI19DLG82zcsI0x2wnUC8iGNB69oWcuqsmtILyCxUyVaiZPP0obI3kB61PDmoSGvzXA+fzSqMgxJFMWd5kLoYUaZEFIdfci+genBKqVkv+NZdtkOT8HBeZgSB914l6JZrbpV3COEo3YYMWpDqLlFyJyKJf7m5SzkhxfdAcsvGA4gmOJsXKAeWY/BTwUBS5HcNjtRSum8QlgIXgezREPwjFYIUUKXl2ArF18b0VzMtY9IXXNq1CmH2Ani+T8i4BLmvzm5HHrTJFK3SSasr/tDMo3wLV6x9NF5RJN6BEh7czqWkc+Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cIhFXxpnD/TvIeWrOQVh/jma8ZYPOA4vhMj7fc9I4Dg=;
 b=BcLapTVRwL3Cd0l+fcvj27Oosjkknf9ej5gK6s9bHrb7qowsLsBOm/cknMpDxDM1ueNw7ESt2uvr/1io8zQ2e3r5AiWDGIuUeFrItO9ds7U/35vyOqexl1g+GsZjABehAAVzb+Iy2rBqvclPJrekEcrx77TFWlVs6ptwbALuB4EkulNbkn9G5EFl6CscpDI8y0Uchy04lIaNoZyfPPQvL6B9xwEzi7ehOPxPvjA1jyHpS3bIJLzWFFqVlJBU/day94nXAHdagsIeiK1sShCLO1GkwjGbjM7OczumuM85UaC707RtsEweB5g33XiEG/TNTLpNZVkS6yy/etqu4Y0pEg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <5364a4af-6447-519f-8a2c-bc1c441b374a@suse.com>
Date: Thu, 7 Sep 2023 08:50:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Simon Gaiser <simon@invisiblethingslab.com>,
 "committers@xenproject.org" <committers@xenproject.org>,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
 <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0074.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9a::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB8789:EE_
X-MS-Office365-Filtering-Correlation-Id: 06d70e9a-6ca3-4cc6-3de0-08dbaf6ec353
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0K322QKzBV1iijhWPiqwFjmEObbtbBkCol+n8zZ5rdIDiB4KhXypt7fMZZkYPWXlJ4px/mfxnKaisXG7zo3BTodo5PCmUd1Tq9U0BMLJu6eQ1gOPeozDpy9Xnl+3S1y7JDvIOxCLa4o+S/Pi4LJNdhKhjv8AoHLYwcB19HWeUYAsP2/PU3aXtOgDzxY+BrdVtQUvL+zOgCbPk/gJw+iw50qWoZhXjs+i52YvAHAMlOx5G0nv0i3Y7TfAHWqQ/TAR+urEdy0hfCr2BwVEOMVydf8nFTSn747z469xyLUyQFDwpXFPvFWVjudkFnxVihpUsoMtMeXViN+c1XnhwfEbmCJSlzO9SDtYmbqngb7C/5wy1QdDtgYM8N+VJDUdxyuheG5ivf7wlve/UUKRvLVgC+Sg2xi8GmSx4I5bGH5WfobaaUgt4r5pA3AQIF/c8Gx9+2G0iaFz2sKzhg9DuhwmdwEfOStZch8oIxBkVixW9b4gvdvtutGwep4PfL39XEgNcoOynbWyAajNyz0BWhhxb6yTrxxJ1aPrxbywwIW7Oq7zO1k7LjsalAdMTiGXsGESKAqmXwLQbRh6osAPr65mFOd13TP4zHrqr3kbtvhlzZ8BYUGHNtQQvsSVRG9WcuYiSu3i7K4CaM8JIP85lBxBiA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(366004)(396003)(346002)(136003)(186009)(451199024)(1800799009)(66476007)(316002)(83380400001)(26005)(2616005)(6916009)(41300700001)(5660300002)(66556008)(54906003)(8936002)(2906002)(8676002)(53546011)(6506007)(6486002)(6666004)(478600001)(966005)(6512007)(4326008)(66946007)(31696002)(36756003)(86362001)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VWtacERoNzI1dENDNHpuSVZTamo1aXRFSGRRcWpoSUZMSVlsZEFQNTFwb0wv?=
 =?utf-8?B?TUYrZE9mZGF4bGovd0p2YjRQOEV0WFRjU2hUb284VHNpeFZqUWRiTktmSFZW?=
 =?utf-8?B?dHdBYkxUajhVQzRjM05EeGNreFJRTWtZVzkrL3pya3ErVUVub3hVUHhFSVRi?=
 =?utf-8?B?eE5JcjBINW1QUVh6VjN5S3I1YWFndmJ0QTdHRVZhOUEwMmtJVG9Oc00wajRi?=
 =?utf-8?B?Q1FMay9mclNDa2VibHBTQWNOYjBRNkxha2NOUFdaTDlNVmxkMUtwT1R2aWJC?=
 =?utf-8?B?bm1sQTc2czJaNVVkTW54Y1lEUzNkUXdnUloyWWwzVVNHcVdjeHRMVVBuNmxm?=
 =?utf-8?B?NzVqMzVlazhXdDBTNnZmM3BHaFVxcTRRSllPbmU5LzJuNURaazlIcW9TNGNY?=
 =?utf-8?B?cG42TXkrWFhlTWFBZjIyODgyK2pJbjF4Wk9wclZHVFE2aklQNWdkZUc5eXdr?=
 =?utf-8?B?bUgxSVlhbUhMNnJSZFJJd2hTbTRaS1BmUGIyOWcrcUZWN2ZZTGxEWTdyQ3Qr?=
 =?utf-8?B?QXFsK3J3dFYyZGU2VHROU0RTOVlkL2hkT01UekNYdlJ2SXhhdm4wWGczdHFU?=
 =?utf-8?B?MmVCRmFOeFMwOURPL2xjR25NWkt4T2RNb1kwZlVCTU4vUEIvNFBGNnAvcmt6?=
 =?utf-8?B?VjhxQldtTGVxNVNqdVhmQUcxOENRdWExb05QbWlJa1RzcHlYRWtYY0NGUmtF?=
 =?utf-8?B?MDIvbGExSXNiZmFvQXdTZXFzT3NhWU14YUJHS25TNWFjNmY0QU5KemYvdXFX?=
 =?utf-8?B?MUhrUFBDZnVVdHZ1SGw2d3NZSmkyOW5MVDJNdk1RUFNPOFdFZzdmYXM2czZz?=
 =?utf-8?B?VjdTUXd0VUFoQ2o0amZHRmNEK01nZUdMTmFoc203dzk4RHgrWmYzZW9WdzZ2?=
 =?utf-8?B?SWhRQ0prRkVUampjMWFQejVNT1JiQmZJQkVOc3BDR00wcnIyZ3dUbW9pNU15?=
 =?utf-8?B?UmxjUG5tc3N2cTByZFVTRlJ5dm0wc3lxZmNFVXh0R2QrWmFZQ2xzWFVNQk8r?=
 =?utf-8?B?SlpOR2RqSFdTeWNzQjZYanQxd2FmTEJzZkVHQlRaazlTQzhFT01RellEbjlP?=
 =?utf-8?B?a2F6VzFjTkhsM2w1K3BkUytObnZvNStIZ2I5VGtCUHdnUklyekNqSXd0VXBk?=
 =?utf-8?B?YSsxd1E5bXNua0Z1eFVoVzBJN01KUUQ4Z1paeGRaOUFQNG02NlA3Y3hUdndk?=
 =?utf-8?B?dGNjTWtYSFZJSTJXTk5DRDh3TUhUL1pQWHlmUlJyeFVLS0RObGgzSjdjbGUr?=
 =?utf-8?B?MVFCT1RFRmtUYjVXK3k0T3lQWjVFZFhGSFZxSVUzSWZBL0MwVG9qZ0dIZ3Rv?=
 =?utf-8?B?cGM5NDhEck1lVVBuMmNmZ2UrMzNVaWptaElWRWc5NUpRbWxkKzVYSEdhdW9G?=
 =?utf-8?B?U3NQRnhUQldwWkp6ei9xNldNNzNHeDhkVEx6bW54WGE5VGYvcDVyUUkrN215?=
 =?utf-8?B?LzJLeDU0dG5wN1hSWFBPZTZJaDhESi9YMjdPeVZtVWhleXJDOVNaZStUdnQz?=
 =?utf-8?B?aXgzb0FyOXBndjZHQVhxNm8xOXhScmQ0c05BVlBtUlFOOUpkV0lzZ2hOSVp0?=
 =?utf-8?B?UEtweVROdmI0UDZxOXVtRzJCUWlOUkt1UEdkby9RbVR3aEYwUmpPZVpNcGk1?=
 =?utf-8?B?dFBDY0VnZjN4cmduaTBNdFVPN2Vzc05veEhLeDloMWNpRGVQMGZTOU5LYTN0?=
 =?utf-8?B?eHlsVEswWnhSSUJkQUxoK2J6cGFqbW9RcTVwNVVHZDMwbUVFWklCSnM0cU1n?=
 =?utf-8?B?eTVQODArQmlHWUs5aGFjUkk1ZkJaV0ZkL2xEa3hqWUxYRm8zbjFxYmtNV3lB?=
 =?utf-8?B?RWdhOWlLOTVtQ09tcitwWlRvajdqZFBaWnRrRmcxU29iY1RoOS9RMmE3TmVL?=
 =?utf-8?B?clZpcXJabVJyT0oySkxwQlZtYU11UEVpVzJiOXRCRUhhT0Zqc2tucUE2K2NF?=
 =?utf-8?B?NExTNnZDa1JxbHc0eTVWd01FOFMva2FRUEpFQjlISlZneEE1bmI2WG9uYUhq?=
 =?utf-8?B?WUgzSXFlUElqc0JvWXFQazVtR2U4MStwbTM1eU1OSnJHRy8yU2hONGZKT1Fj?=
 =?utf-8?B?Z0NiUVp2Vjd4SmhmbVczOS9iT0dDRE0vd28vbVA5WW9yMXowYjN5WGFZbFIx?=
 =?utf-8?Q?7n4oGlddE4Ituse/iyPkELzpf?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 06d70e9a-6ca3-4cc6-3de0-08dbaf6ec353
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 06:50:46.2344
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ZOikSMNyZtExJUJQ97YQ65L8smKJ0VuBCYybMzfoXtXsig3B48xVfFRsLCN00OcEDEQVwP/KbDcdK9UCiiD9lw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8789

On 06.09.2023 22:49, Stefano Stabellini wrote:
> On Fri, 1 Sep 2023, Jan Beulich wrote:
>> On 07.08.2023 11:38, Simon Gaiser wrote:
>>> It seems some firmwares put dummy entries in the ACPI MADT table for non
>>> existing processors. On my NUC11TNHi5 those have the invalid APIC ID
>>> 0xff. Linux already has code to handle those cases both in
>>> acpi_parse_lapic [1] as well as in acpi_parse_x2apic [2]. So add the
>>> same check to Xen.
>>>
>>> Note that on some older (2nd gen Core i) laptop of mine I also saw dummy
>>> entries with a valid APIC ID. Linux would still ignore those because
>>> they have !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE. But in Xen
>>> this check is only active for madt_revision >= 5. But since this version
>>> check seems to be intentionally I leave that alone.
>>>
>>> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f3bf1dbe64b62a2058dd1944c00990df203e8e7a # [1]
>>> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=10daf10ab154e31237a8c07242be3063fb6a9bf4 # [2]
>>> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
>>
>> This patch was committed with unaddressed review comments. The normal action
>> in such a case would be to revert, expecting a v2 to arrive. One alternative
>> here would be a timely incremental patch submission. Another alternative,
>> considering in particular Thomas's most recent reply, would be to properly
>> downgrade CPU hotplug support in SUPPORT.md (with a corresponding entry in
>> CHANGELOG.md).
> 
> I am in favor of downgrading physical CPU hotplug support in
> SUPPORT.md.
> 
> I noticed that there is no entry for physical CPU hotplug support in
> SUPPORT.md today. Should we assume that it is not supported already as
> it is not listed as supported?

Hmm, I see

## Host hardware support

### Physical CPU Hotplug

    Status, x86: Supported

pretty close to the top of the file.

> Specifically, would it be a good idea to add a sentence at the top of
> the file saying that anything not explicitly listed is not supported?

Iirc that was the plan to do for 4.18, but then we need to be sure that
things don't unintentionally become unsupported. I've no clear idea how
this plan was meant to be carried out, though.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 06:57:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 06:57:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597132.931320 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe8wm-0007Mq-8G; Thu, 07 Sep 2023 06:57:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597132.931320; Thu, 07 Sep 2023 06:57:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe8wm-0007Mj-5I; Thu, 07 Sep 2023 06:57:00 +0000
Received: by outflank-mailman (input) for mailman id 597132;
 Thu, 07 Sep 2023 06:56:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qe8wl-0007Md-EB
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 06:56:59 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2061e.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::61e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bbeea73a-4d4b-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 08:56:57 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8342.eurprd04.prod.outlook.com (2603:10a6:20b:3fe::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 06:56:54 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 06:56:54 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bbeea73a-4d4b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YOEPWhjQM1eNtT04SnnngasHPYjrS4uc4+T2Y+USZaTmWcqAXZUeMXC6tYoJ5aKxheyuoZzM99gIPAS5dc3LoI4+1J7ZqDG2Ir+3zAn1gnVIEwiyYqRb6SzddnnX3JByui7P/OELZIzH5exIUTRORUCB2vM4FnNwhec8TXn59DtSDW9Q9ENkp/VDKLPnxWzRDPBh8+10vVJwuLBHDNbUWnYNfOFHQ0EQfefTfCtcb3MZi1eEClCQL3tvXB/rT7YHzLOJNrEcFRqV3/r8kIifXugNs040BDDPyczDSw6bK5Ft2Hten4/x9OxcqNmbBA9zJQrHN+7BWiDTRZ3P9ntedQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qv6cSUSPZ9StgdZUCKrluD/eWwHhFeXh/iN8Dpq7HLk=;
 b=J/xMn5MqLm9/JwKU8Z++IXYZCNntTd5vThdDnWhxdgMPfUbBQsD9wAAnP2B2LD2IF2AcNhmGvWLPgsTQUQE7Xb4vU9mYNGFrn6XrhliV82LSBEwZPQsSG6o7dAWYo+uyak5BZCoKRHwI4XVTYHiGmJqwL/7otDY6gSbVmIol1EgHTHqak3iChvoHgJ8ihibZfiG4hNV9f2Afjq5cC9mJMIS+ssT5GgMShLHijAtmbqcs9D2jUNQrG9vGqbG5+Hx7MszaYxWFuB4gIGEVKQm+982DNO70sQWTaxW0x2qU3mDlgInQMBvl+vOpOc+ieXnf+9C+54aDs1t1L+qx0l+HgA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qv6cSUSPZ9StgdZUCKrluD/eWwHhFeXh/iN8Dpq7HLk=;
 b=QL55b/siInmmY2y058Xf5abjE/iw8xSjmeaDe4mtGJLLroOutw+nlElIVFuvVoi9vC+/a4JDVDZ5atK6spaXLlgVxQscre+zMY9w63AVI+iZb3HFkMEtWHtsrTeTSCvwQApJ+Rt3+QZKIXo0qJBpcurz9ayOv4xD0EvQrPfTuMZ3D5xSl6fBbZY1FoH1bHS7Q4lethDEaVZDi494N+t1MaSwmH0ple9IK2HtsopMtKIsGkTaTY22mSkKfI/+/Ls+qGtoFvZZcITTL5dl5UPYQF70+fc+6lily0DWzVAfsdJXlNDhI5X4aZgjfy8cdKJ7KkXmUIQTEK37xEA36PUSqQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d5c9ae9c-af78-05a7-52ca-7ae487c0d2bd@suse.com>
Date: Thu, 7 Sep 2023 08:56:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: Xens handling of MCE
Content-Language: en-US
To: Elliott Mitchell <ehem+xen@m5p.com>, Development <D@dlsemc.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <521ab5aef01a4c64bef65435e7c284bd@dlsemc.com>
 <ZPjxOTRipQ6sEqF5@mattapan.m5p.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZPjxOTRipQ6sEqF5@mattapan.m5p.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0074.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ce::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8342:EE_
X-MS-Office365-Filtering-Correlation-Id: eb88f725-0d13-4927-5b27-08dbaf6f9ecc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8fYKVZQQTbY4jaBq9W81nyQ8hqfisJRBOQ4Ip+TfHzSlKibS5OU/7Bb5ETdluE7xucA4vx2N9Zmz3LgKCv4yBL/RXcBJnHsN3tNm84K0IM9S64oErlgimsJkvEKIDwQZrRm4yuPcQ0xgL4E9pZ6sZiRQnAnYk1/d7T3QlswusmJsNQaDV1k1ZV/R8FtQ+nciW04+UgMMxUcB6Q7SYFDePl1ghfaSHBm025uK9+NkutxWJTA7EuC0PA18QQJmiBd7odVPZHn7088rly0TErjEpMFM3+4CO1QM3sKu6y+n1VQ5iFpFKkC8PlYnamoKayTka0xqnRpn++xPvKN8vkNjtGm7S+R0JQJu5ZbACpuAOnZJwdzOrf10gdopZOXGcgpO3yrRyNrmPylWWucymsdquc6A1YcycVNKWfuLVZPNHxbK1xJlGqW0EKex7VrP3kvDq2KHkWQUonnFpGDqIIHtXcC0HMfHbsvR+f+Eei3J2vb4aA1cm+TGr3sluLCjPsuJBlx7ePZd+pFJoiYV/qgwWbVGSBNWZBnKvD449PC1xmNFdxQps2+SXT0Nu+6W7ykIKRV1zy8MecHV9anR9XM8QRbVfRwX6IzgkAWXhnHiETY/0BxNJcy3g1oQ4KgT3JpLrxZ3vikIBOgXwXwmbRO+Z8V/s0SdrTe0BGKtQM88heM=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(136003)(366004)(396003)(346002)(1800799009)(186009)(451199024)(2906002)(66899024)(83380400001)(3480700007)(6506007)(6486002)(110136005)(316002)(66556008)(66946007)(53546011)(5660300002)(966005)(66476007)(26005)(478600001)(4326008)(6512007)(8676002)(6666004)(8936002)(41300700001)(2616005)(36756003)(31696002)(38100700002)(86362001)(31686004)(781001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZlRVVVQ2VVByUVI5cHBCalpMaTRRTHFjZjVZK09rQXZvVTFUSEM3L0V5VDJq?=
 =?utf-8?B?SkFRQWRHZmRtbURUT0Q2M2FzUnFpYmJXUk1KakZXYURLV0JoUlNFWjBHWTJ2?=
 =?utf-8?B?dHZiSG9JRHZBMXpzQXdpQVVNbXZyakRGZGhkd2dLT1U2dlBWMWQxdHVvVU9p?=
 =?utf-8?B?ZDdoUUtZTXo2OXdNSk1FaTlVK1o1K0NTbHZ0QXpRWUpobXZsaFVNUFBIQUhr?=
 =?utf-8?B?VWRqbXJyMUJ4d3g4eCszL1pMWVBGYzM2czdCMzRZMDJ4dUhIYW1WMmRwb0Jz?=
 =?utf-8?B?U2NhRmNGakxaNnMzRVhkWXFiMm5OZTJCTHpaSjQwcUx3amQ4c0JTYk9aL0Ez?=
 =?utf-8?B?U055R0wrRTArM3cyZHJGdUxuREJBN2ZBQTBMRGMxQkh5K3ZWaXQvL1pic3Ri?=
 =?utf-8?B?VksyUWFjcldydzJ3M0ZnRDVXOXhEWm00V3BGOTgrVno5RzJYL203d0Ixak14?=
 =?utf-8?B?NVdPbFBnNjdXbk80c2pwaTBaLzBydnZlWmViSU1wK0NPUXRGY01malVWTlY0?=
 =?utf-8?B?VUFTSlk2akFGVFA2TTNGRWFoZ1lhODk3dE5UWG1XSkRaZXp3WmZ1QUNhQ3ha?=
 =?utf-8?B?b3h6cURSeHc0U2ZIdmpkVmFOR2RXQmhrY0dRWlNoa01KZThRZmxuZUs1ZXpo?=
 =?utf-8?B?VkwvcG9qTFVBWjlXOTNyeG5sOXhpRURlSmhqNFpHN0JiY3I1WkZUMWswWmdo?=
 =?utf-8?B?ZzdUUDdIdmFOOWxFUWFBbURFaXFoZHM0anR2NFduekZsRnhER0UxcUNiT0VD?=
 =?utf-8?B?MFg1YkozK3lwTVlpb2RvMVB6dzR1cHNBNG1YdGNtLy9BY2tQSzdTd1ZBbmxa?=
 =?utf-8?B?ejlOSFlHVkdacXJkTjZqRGEzcFd6cS9BVjdhZzNrVFdaNHFGQUFDTFZIUWFY?=
 =?utf-8?B?UWZ5NGRpdEdBRWVvbWhpUWUwRCtMbU1zZ2Nudk5teGVCZzZoMkxjQ1B3cUpS?=
 =?utf-8?B?aHE1dWVuSnJJcUt5V00zK0NNcHBWN1lKMU9icURwd1FHbHp1TkdiRCttbDlQ?=
 =?utf-8?B?U08yVlRXaWljVUppOVRkUU95S2ZuZHlZaGUwaFl4VDhjRzRKLzlTOUNmMHZJ?=
 =?utf-8?B?SjU2bnRzWWNLVmU4NGJyQlRmZXdBQ1BFRk5sU3VybEI4ZGY2OWlTOWIwTEFw?=
 =?utf-8?B?WG03ZHZsY1dBdEtqWEQ1L2gzeGNrQ2puL0xjMzQ3cW50Zmo2SGtaeUdOQmNv?=
 =?utf-8?B?N3gwenFzK1FwNzY5bUg3bmJDT0doWFY3Y0RvcXJzay8vbCt6d2E4QURxRTIy?=
 =?utf-8?B?ZVgrcStWaytRclgvZjdqdXRpZEVjcmF4K1RMRkdLVXh1SkJvWlRIaGJxdG04?=
 =?utf-8?B?eEhqSmtzS0o0d3dBRjdYN25xaGY2dEVNUElSdTFIdmhkTERPY2lpUVA2V1pD?=
 =?utf-8?B?RDI4TE9YR1lvNnZremtKVzQ4MFNvU2NNUWFoZExjMGtpbml1bys4cjhHVEw2?=
 =?utf-8?B?c0ZiTEd5N09Vb01pNkUxWjM3NmpveVJGT1lMeG9UK0duUHlWQmMvZndmMzFn?=
 =?utf-8?B?TlN2Qks2ejU3MjU1Mi9rc2IwVW1hMm12eDd5enRZY2d2MlIvN0dNTyswcTBs?=
 =?utf-8?B?U09DSEZCZThnVTlPMFhSakNWM09XZU1OdmcxWU1Ebzg4SVhYK0FqQUt2WUMy?=
 =?utf-8?B?czNPamVFTlZucVBxVm8rM0Mra244QjYzZEJUdVVJMm9EcWlFUDBMWEhKdEdQ?=
 =?utf-8?B?OGZmK3VBVTFJRXlsM2JsT3E2R1BtbEpEV3ExM2FGVkpXME16STV3T1lqYkZ3?=
 =?utf-8?B?eWpLajA1TTV4Vjcvd3loMDZkdDkreElCamY1UXhyUTlNT2tocE5HeUpybERi?=
 =?utf-8?B?THJraXo5YVpaVGhpMVZlTDZwTUZGcXU3eEtJRFNhdXdnaHJNSURyZTM2VStN?=
 =?utf-8?B?bEJyNnFMK0NUSUo0bUprSk4rWDIzTm9IV3QzS0lGK0YzK2JtWi9uaUhPQTA3?=
 =?utf-8?B?UWRrWWt1SG1PaTBjN1E1bXRXQmhMSmdHY3N4cUJna2lQazN2dGRZeTJGQml2?=
 =?utf-8?B?dTBkbTAvQmFkN3NOU1dteGFlT0ltK3FMVmpvekNuYVJzRS9KMnFvR0JVNUZK?=
 =?utf-8?B?UUE0ckNnNzRGYXQ0MEsvQTJReVlCbzltUjdsYi9KUC9CNWc1dzh3R1c3dUFh?=
 =?utf-8?Q?qjJcwF1HwhlUgHJ4YUUpCMYQu?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: eb88f725-0d13-4927-5b27-08dbaf6f9ecc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 06:56:54.4558
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: T44FKi/0i3b2LdsI58cP0q9Zwax7zGJVyQHNmPxqORXugTnPV8gAULLRSsNJob1I29Kq3N4mrtSEITPcDPZ8vQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8342

On 06.09.2023 23:38, Elliott Mitchell wrote:
> On Thu, Aug 31, 2023 at 07:52:05PM +0000, Development wrote:
>>
>>     However, in 2009-02, "cegger" wrote MCA/MCE_in_Xen, a proposal for having xen start checking the information
>>     Xen started accessing the EDAC information (now called "MCE") at some point after that, which blocks the linux kernel in dom0 from accessing it.
>>     (I also found what appears to be related sides from a presentation from 2012 at: https://lkml.iu.edu/hypermail/linux/kernel/1206.3/01304/xen_vMCE_design_%28v0_2%29.pdf )
>>
> 
> I hadn't seen that before.  Clearly shows someone who had no idea what
> they were doing designed it.  The author was thinking "virtualize 
> everything!", whereas MCE is a perfect situation for paravirtualization.
> Let Dom0 process MCE events (which allows use of Linux's more up to date
> MCE drivers), then let Dom0 notify Xen if action is needed (a page was
> corrupted, tell the effected domain).
> 
> There was a recent proposal to simply import Linux's rather more recent
> MCE/EDAC source.  This hasn't happened yet.  For people using Xen this
> has been a very concerning issue for some time.

I'm unaware of such a proposal; do you have a reference? EDAC drivers
typically are vendor- or even chipset-specific aiui. At least the latter
wouldn't make them a good fit to import into Xen. Along of what you say
earlier, they instead want to become Xen-aware (to deal with address
translation as necessary). That'll also have better chances of things
staying up-to-date.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 07:12:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 07:12:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597140.931330 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe9Br-0002Cf-G6; Thu, 07 Sep 2023 07:12:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597140.931330; Thu, 07 Sep 2023 07:12:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe9Br-0002CY-DN; Thu, 07 Sep 2023 07:12:35 +0000
Received: by outflank-mailman (input) for mailman id 597140;
 Thu, 07 Sep 2023 07:12:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qe9Bp-0002CS-Rd
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 07:12:33 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2060e.outbound.protection.outlook.com
 [2a01:111:f400:7d00::60e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e89678af-4d4d-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 09:12:31 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBAPR04MB7287.eurprd04.prod.outlook.com (2603:10a6:10:1a4::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 07:12:29 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 07:12:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e89678af-4d4d-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KvwiKdGDHnIQGuT6y9NJ2MPFzhHUXUDC5gV/nsVvQaPXeijM8br7QLdHx9oEA1jYy0eeONHGyMEfr08vmfnGumY+bgJg3wjxBwsZNQ5+8xipG2HxXj67QJpbt3lAv9IyduRx51gYHxYpJt4gGf1uaFwRgax5/w9CAWqjnvJgs20gQM7AK/tX0XaVagtD/O4+/5FB2D+mW97XLOGUTKURirZfFaIGEuEgDxhMFen/zT76pY7pyGGPlDDnD2bdutUGbgry6wvLUPtllkI0XNPIciW6XSd5hNnFm1O//DA3r/MEgs1OJCjjXrhYM34Ogjqxpy6BxihhEmHPUkA1shKw3A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TfU8m8MkVilqCzECsUk6lwLNz06CE3YNEd/+ssdY99Y=;
 b=gYFCVAKHjdk7LaxUeyWPtNgOHTQ9XZotg0hbT1sjPoQsYcGFXb/5PNeOS/OEeaegpxwU3erAkB6A9R3ecqfNnMUDMLGrUcaIhZj5bP6sl3SU6QQZWzTyfZya4Cb58WS5AHgeso2BTQkSosLrKUNYjY7sT5MspTszylNhscvgL3c6b7c7oZSM/aPNi+Z4xoRXGv9kiYpcOY11hhfrhyLLXyNBmxSPX/PM5CBFCXGIbSoZSsEPV/cMReuv1oKNmJXvif7yOrdowSnjGDaxvgeksntUVlepPDS8RI1D1qsn3Rz39g1gIPd9Xnxy39Qku7ofqs9kuln+O394Ek7SJ27zew==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TfU8m8MkVilqCzECsUk6lwLNz06CE3YNEd/+ssdY99Y=;
 b=GlSuBnhhBjuEHEd6wrFF7+1qjfPgcLeJhGQIAfvwJIL8SZJtRYDuBrz2pRVQD5+w9/T7TLLDhJNoox1tm6GILq1KkLlnC/vWT9EuBWcNXpO0jZ2Z3RlW8VIHgSsjz3L5Mj2sVxS5hiYoLxuuYDwTtuvIHRLwTGhcoClYTkLfb5uhpiT0ME6zXsRl/0EwOZob/8tdbImXCdfzlhooQABXcW2Qfp5HaASwYxP4bPaigF0dvhmadnan7fRMny7UtEpRPy51b/4tx8j8w1Og81GXTbkTpBPHpengnhob0zihmHnLxDko5QUHX+NuSPs65Y/7qtzto9Ku161owFiRV+Pyxw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <36b888b2-e7e3-bf70-f599-d22ca34e2dfe@suse.com>
Date: Thu, 7 Sep 2023 09:12:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v2] docs/misra: add 14.3
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com, julien@xen.org,
 george.dunlap@citrix.com, bertrand.marquis@arm.com,
 roberto.bagnara@bugseng.com, nicola.vetrini@bugseng.com,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 xen-devel@lists.xenproject.org
References: <20230907012203.1238090-1-sstabellini@kernel.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230907012203.1238090-1-sstabellini@kernel.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0182.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ab::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBAPR04MB7287:EE_
X-MS-Office365-Filtering-Correlation-Id: 95861b1b-8815-4685-2dee-08dbaf71cbce
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	f5nD98i7HwV/qHk9jyxY1DfFmtVn0UI1ifP6iNDYH71bFII6d881MBuWuS45tiMDFc326G6/BeST/ZBEh0DU8Q83jdDJnmeXaaIWZ6eG9dHd+kWoOKkCu5fh+xvqwOS9dBVgKpEDGUlHwk5wrFiboMcX8AA7Yr9WBrDdZzEhn6fiYA4MnWw+dF6ZefqoT6ZxJ34+dc6Q8/c+XmLo7TFYMOZfNKKlzzHUgBUDcsDCxDj2maHMybkr2ODhzbHZVASKvHlDV5pHaxmk4lg3RO63NIUFdkQ2enr9DU0gHwCcLpUK6hIgrMiNUr03NlOKk2VsSaF5dgBrS8XWsv5hZObEXQibFM+naa2yE2BoZ1mtoPM1sVZwyeHxwDVB4Ow0ZLFALbqiGHqkz7YsGXl3jKeZBbvvw2HGCdBeAK2GiPMo4CvGpGBXJtHLLYxCwLpeEja80Ghtu8oNNNWXRAYFx8k2bbaK5x2ka1flJTv4SXLKMY8i1bkoLXk0UOFM57cqkcBCvGoBm93RGWwAMJQIRrNN3HUeKeK3uTGi8TcGkKzpRqTBVrhzVDXA4P2ph846LAAeXKwDmh6YmYd+FgNXyyJ7aFMGZLwO0Kd+2L4ppVI0ZflEOuxe4Nn78h5cc+IJj+xW41584hNkCHZgwDxibtVL0A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(136003)(396003)(376002)(39860400002)(451199024)(186009)(1800799009)(36756003)(31686004)(5660300002)(83380400001)(4326008)(31696002)(7416002)(86362001)(8936002)(8676002)(41300700001)(6666004)(6486002)(4744005)(53546011)(2616005)(26005)(6506007)(6512007)(2906002)(38100700002)(316002)(478600001)(66476007)(66556008)(6916009)(66946007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RUFzdEdUWlI0Z1k5NTBPeU93Tjlzb24zUkM5TVgwK1dUZG9tek5waU9paVJq?=
 =?utf-8?B?dzVaNGY1d2RveUlCQ3BscWZvSWw1VjZXYW5RNWJ5anFrY0J3MnVod3dwc2VV?=
 =?utf-8?B?Rmd0R1BFMDBDTlZ4N04vUXhRQkJXSVB5OXRuTHk1ak1BekY4aWlGQnh6UmRQ?=
 =?utf-8?B?MjlTQkRYWnA4Q0VxcTRHK1FYQjRZK2w0QU5aOFhoajFVUGtUM0JaSDZYenR0?=
 =?utf-8?B?KzUvT0JwSjJ6M0Y3OWIwdmZMTnBucHd2ZkZSZWdzdHhlMm5MQmVMa0dJcy9Q?=
 =?utf-8?B?dEN3YXB3UHRRbEIyWGovaVRjQlNEaTByenB6MldsVHplZ3ZKRzJaWlhhcGdi?=
 =?utf-8?B?c013VEhuSklkMVp3dWpwZi91SUJiWU15N3kvN3k4elM3U1ovU0tyOC9nM0JH?=
 =?utf-8?B?S3FCVUNNdVVVQ21ya09YQUk0UHNLc2pkWEo2OUVCYVZ3N3ZNUzBNYTROMUkr?=
 =?utf-8?B?b0dyNXVaWXo0S0pMYkJOeEI2U2ZtbTZCQzhhNlJEdCtibkFIcXpHaWtDM1hU?=
 =?utf-8?B?c1hBbVpBNFZnbXN0aldETDNrWWVrWHBTbFhpVHpvVGZuYllOeVhKSDA3aHJz?=
 =?utf-8?B?ZHQ3L0UrZ0JmYlo5YVB2MXRDV2xwYkg4TjRlYjRlWkV5eWlFay9JK3dObE8r?=
 =?utf-8?B?SUVjWTZHeEMxQVY1Rm1aVHJtU3hBWWd5WG9VRmFSMWNTTHk5S3ArZm1sQlhB?=
 =?utf-8?B?aFFiOC9CdnBQSTBVc3VvckNmRTB1SUFQTjJmV0NxT1Q2V1pkZ1I5U3hoSWF5?=
 =?utf-8?B?bHY4S3oyQk84dHAzdS95SjVnK0o4a0c4ekMreTJjc0w2OXRqcDcrQ0RBWkZC?=
 =?utf-8?B?UHBpZHhhU2VYSWVyRmxEczlwaDV0Rkw5R29QTXJyV05TRDhhdHd0MjEyTWZ2?=
 =?utf-8?B?ejltMm1TNklCTHhYeGEzcTBHdm1PTnJuUVNkeThYUXpEL0F3R3ViZDNUZVpC?=
 =?utf-8?B?RFJKNWlUWTFabmNNaktNcWpqZ1NMcDJ3bWVTOHVxanhjQW1pY0x0Q3FiN3dm?=
 =?utf-8?B?N2pOeGkrQVpwYmdRZ0U3THR5L0dRd0tRWWk4UXptZUozVmpIWmx4YzJiaVBS?=
 =?utf-8?B?cm1WcllHRUw0VlB2UUx3Z3ZKYUw1dml4WlZwUmxPT1IrSDVsamc3azBhRFBX?=
 =?utf-8?B?bWo1ZHkyamVOV3BaQVhQTXZoMFBaeHo4Q0V4U0RLOFQwakM0SFljSXN6aWlF?=
 =?utf-8?B?eVlCSThsK2ZVRmI1V2k2ZzRwUDVtQnZ6bnYwb21XQ2d4ZkNPR0ZLdEhEalFj?=
 =?utf-8?B?cnQ3VmpZOTVvZ3ZXc1RIdXEyeWVCV1pwb2VpOFFXRDNXd2RzTGdXVWZHRjZz?=
 =?utf-8?B?Nm9DVTlYeEMzVW5Cdll1NkJKVkdiL2ZyNTVTT250UmdkblY4TmRQN1J6eFBw?=
 =?utf-8?B?THFCd0wxKy81RTcrSHV2OUYyeFNuTkk5L2ZqZGxUVWd6SUp6MnB4UFMwaUUr?=
 =?utf-8?B?cHRObXZKRUZRU1A2dGdzUjlHY051cmtaS1h4TEp2V0NaWEN4dTRxTEJGcjgr?=
 =?utf-8?B?N1pjM1F4K2FXYkhkL0l3YmNMVWY2dHNYZmFVSmxYNmU5Y0RoaHdvdStBc0hv?=
 =?utf-8?B?YkNnVE9lM0RSRGh3YVd6elhzZ0JpTE5HUkVpKzQrRENvSW9XUURFZE83RU5S?=
 =?utf-8?B?OWNla0lsK3dZQzdlM0loWTFiMTZRMTg4ZTArSzlYOWNxdDVyam4vdHp4V0Q5?=
 =?utf-8?B?N3pmcnZGNmtFWVpyTmtGdERqRUdPMmdDQ1pOVHRmZFg3NzM2MzBBZXFlVTA0?=
 =?utf-8?B?WXFJZUdPSlBpUHpDU21zelpuT1lMWGUrcUNqWHNIQWtYa1JXVVIyU3FmbzYw?=
 =?utf-8?B?cWVZeWYxVkRjRGZqTGhwQUZseEJEbFcwNUpkbnZRL3JvRkVTaEFXM05PTFkr?=
 =?utf-8?B?ckVYcHFRaEJ3RkpnSnluQ1RjTm1uMVVNQmQxbGw5b2dHd3g5bm1UYXhOTWdG?=
 =?utf-8?B?a3ZweHZJZDl4N2N5YUFENnNVaDhDN1dWVmM2NVgwKzE5UUxaVDdLaWJQeWFX?=
 =?utf-8?B?WFBNc2thMXg1b2t0Z1owWlhLYXlsbFJqeWwxVnB1TVZ6UVh0a2RSTnVtZ2Rq?=
 =?utf-8?B?NS92Y3JHVlFGZU5UR3cwSDQ3NFVPek85Q0xGU283T3VZa3ptdjVXaVZ3WVNI?=
 =?utf-8?Q?dsKnKQ6K9UoB0VgQ5yWpCAdyU?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 95861b1b-8815-4685-2dee-08dbaf71cbce
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 07:12:28.9511
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: sOR6if999tcgwQOJ1xTpi3LZE000gens1+qJHQzawk5BiN0fmqcoQYp1UFee4+aQpmBXdpDeck3EErkaJH0blQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7287

On 07.09.2023 03:22, Stefano Stabellini wrote:
> @@ -385,6 +386,17 @@ maintainers if you want to suggest a change.
>       - A loop counter shall not have essentially floating type
>       -
>  
> +   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_03.c>`_
> +     - Required
> +     - Controlling expressions shall not be invariant
> +     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
> +       checks, and other constructs that are detected as errors by MISRA
> +       C scanners, managing the configuration of a MISRA C scanner for
> +       this rule would be unmanageable. Thus, this rule is adopted with
> +       a project-wide deviation on if ?: and switch statements.

Do we want to go as far as permitting this uniformly for all switch()? In
my earlier reply I had included sizeof() for a reason.

Also (nit) there's at least a comma missing after "if". To make clear it's
keywords that are meant, maybe better use if() / switch()?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 07:16:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 07:16:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597147.931341 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe9Fw-0002oe-2W; Thu, 07 Sep 2023 07:16:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597147.931341; Thu, 07 Sep 2023 07:16:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe9Fv-0002oX-UB; Thu, 07 Sep 2023 07:16:47 +0000
Received: by outflank-mailman (input) for mailman id 597147;
 Thu, 07 Sep 2023 07:16:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qe9Fu-0002oR-JI
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 07:16:46 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2062c.outbound.protection.outlook.com
 [2a01:111:f400:7d00::62c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 80538e57-4d4e-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 09:16:45 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7845.eurprd04.prod.outlook.com (2603:10a6:20b:2a7::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 07:16:43 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 07:16:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 80538e57-4d4e-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nhJoSvRejnNt7iJux86xp6H0QL3RruOuQ2zgeoPD5p4QmX7EpOUDgvPcwcmFN3TZcm7JfvEpOIdUlNZD64dGCE6aqaOtFDzHgpwsFjTciyJGMgo7XuSVvbQJJGDCie81OgpiKHGXvxgssDfNh9kvOMhcSrvRrp8ZcKZnA6V4AIS9gP4kDCeUaDkxCQJM5xozdKfEPIINnC7t9MgRw4YEoBvc+ZUUwqHuOJ+Q4lhRwnm/OpcKG+IxQtly0EIWM99vAQGMEDpcmWdm4muMASlUaC3B3z7LRz9rXmjHWizJ11iqHjgqYB4GASIg8HFvSqEdCdkQRp1F+Q54+8HrwW1/Zg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7DsZEZu+AZNitLWa6iSL/W7yS/DoCZcADpdvWGV5A6g=;
 b=GeIhqBDn9ESF/qMyVNAoH/grZW+5u0/Go5fGQN7DrTANfKD2ijz2Af6klpXk+sDzSasHzcuDXhR6v9p/5fQtufXmpomSD7mo2qZqetuUbR+J936RvrKBlsjX9l6MADgbFLuX5USK+kOm02H9Vr4wofD22wHou4tl4ngnPGxXkKDEXycPfEzoXE1zb85blPjtFMkMAtdKEue6V2KVsnZw2ZHV0yUz7VuR9j8V6UDHfGfgZaIQqn7xPAt5cR/m0punncLetxywCcFR86iKjYAkeKfoVMYiR+8uuAZyhNaLBx5inFu+sx6xnD+jwzYH2dltBO6psLlu5LSgM1ayKxfeAw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7DsZEZu+AZNitLWa6iSL/W7yS/DoCZcADpdvWGV5A6g=;
 b=ZLksdXqy47zRzyzO2upuy/lD8LDCqESlQMBiDVG2qiT7Cvfuhm8qdxlwoefEk1Kb+J/6QlYhEkWJTf0yyTj0QytXiNZG+S19d5Fa2DDxcmiQ9qfr68sh/YDsk1S0V+Tm6ge2TBnQQtQga0cwMug3cAcMPP8UUh7q/LJzyvC14rFGGAG+7iEtq9M5gySFKEOZE58W2K2UXs4zMwKzVj/Sryex5xUr1Vto0MOZTLvxfCOGwaYPBEoawHZ80jqKVCS9rmeh2cxwyooc6e/sWMtg5xjZhXdL93Y22PbibcdnCuRyxEnPrvcUglc9cZAZtxxtOOEOFh/lmxD0dW0l0+TYSw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e4b73e89-68af-92ee-c5c0-0ec756b3d28d@suse.com>
Date: Thu, 7 Sep 2023 09:16:40 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 1/2] xen: apply deviation for Rule 8.4 (asm-only
 definitions)
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: xen-devel@lists.xenproject.org, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <cover.1693998375.git.nicola.vetrini@bugseng.com>
 <ef301ab9843d810a389f175bd8a204f362b58e27.1693998375.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2309061808050.6458@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309061808050.6458@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0162.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b3::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB7845:EE_
X-MS-Office365-Filtering-Correlation-Id: 210e1d76-6322-42aa-1459-08dbaf726387
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	F8jH1DwEr8ZvA6CrHwAh/7sl8pFyBdrHz1emoIGa9p0TPJgCz7QHiPFSZJ/3GVIe4jjP1i93LQfNygIY5ua6vomKp/KCVqcoEIMx5i/nYZn2Cuz+qv6WmEDcMiVr5DDuyffBkslydqiMYz6ThvrfaUqFTaAPPHLJGw5nMbBwsDu8HsyLlpNsa+Iqxd0WmlV810SNtOj7fNTyQHT2YcLrbTQUdJU+dP/w6g/xx/++9YkBq7R9jdBT+wTUXXQISCKcePaOuqaKIK7DnTMPnlXukPRLJtdDLgnVhG+XtG+Rmu9jS69b4XX49gNgMIMBLgXZJMe+82yytKV7DIgTDnunG1p4Dxr5p6ySchUqCk5aQRP+RVl8eEVBZ7HG1qhMRJDlrrCFxFNQ7v+QpsQkmASX+/4czS0krPV8eT71JyhZdyCxfTWKO7iDmmiIW6rR/oW8fAKNM/ZuwHxCRJZKlWZW2LxHzIV6CzDTgmKJ0X8I4wMb2GgqCJmpvN7RZ9e7zZoyLrcYourxaaEPCcEs0uKXfW3yhwM58QNGi28N/sMxZgUBx6Xsyy1N2tfKhdRISKXy/7rEODrkkUv5Y7TsTcXOkQrpLxxSWZdahA2TpqXJFsEwcw7w9srUO8tZyFMXKNiealFaA8Ucxziv27mDqlCNiQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(396003)(136003)(366004)(346002)(1800799009)(186009)(451199024)(4744005)(2906002)(7416002)(6486002)(6506007)(53546011)(6916009)(66556008)(66946007)(66476007)(5660300002)(316002)(26005)(478600001)(8936002)(6512007)(2616005)(8676002)(4326008)(41300700001)(54906003)(36756003)(38100700002)(31696002)(86362001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NW9HRXZma3kvdGsvVit2bys4L2t4UmpyQU5uRUpVUUFteWNMYSsxUU5EU2ND?=
 =?utf-8?B?WSs2WHJzd1BvQXV0dncrSmlFVDVFWFBxYW9jUktPa2huSksvNWZrTDh5TWdB?=
 =?utf-8?B?U0tBNndEcjN6aUNJVy8zVW9pOE5pWXdmb0VqVUY0eGUwZlB5TE10bjJicXVO?=
 =?utf-8?B?QXBBc1I2elRDbThKSEVlZExibUlGYnUzU1VoV254VHpQbFNtdmkvWnBPY2Ev?=
 =?utf-8?B?T0FYaG1raGVabVVWZmtDVVQwYU8wYXJSQWNOWUt1MlZMLzRYdEJGeTJwK1g2?=
 =?utf-8?B?UGU2NWNHRVlOR2taSmMydE9rZ0lHVXlWVi9CNmllYW9jWEN5NUxHa2psWElY?=
 =?utf-8?B?VTNRVWRMMVZmajQwdGdVWUxWNU56eUFBTnZJMWhkTnBMeEhGd1JkbGJEMDdJ?=
 =?utf-8?B?c1NOMVhDRjhwa3RsN2V6bzg0dTZaL0JXbXVQRW1lblpra0RydEVmVDZ5WjNT?=
 =?utf-8?B?MGRSTDFpVm9lQUhEKzFvZEh4L0krc3pZLytyRXRJZjhvSjExT1RoNXJxMkFy?=
 =?utf-8?B?RjRlUkk1TnBjUzJmRWxFQzZCbmNZZlFpbE8zQ1lRVEYwMUp1bjRrL3lFRi9I?=
 =?utf-8?B?YVEyWGFCalFFa0tuaEJlZjk1RFJzQitrL0JOS0lYNHNDWGViMlViUHBkRWRS?=
 =?utf-8?B?WkljS1owOVkxbTMrS2FXTDhhK1FSb0FOdGZTOUl4QVNXaDFMQ0gwWjBseGI4?=
 =?utf-8?B?ekg0U293bUpCLzV6Y3kzL2IvZ1VudTJoeTFCS084czlsQ3A2RnBxUVc0Ukho?=
 =?utf-8?B?N3EwK3RsNktzRVZ4ZFMzdWwwdzFWdmhEemFXQm1zb0x5TUJrd3A1ZWlkN2N4?=
 =?utf-8?B?TGNNQzBDZm0ybUF3L1lBd0gzdzJacHNPWll4cllzSTAvUnlCS2xXUDhnSEdB?=
 =?utf-8?B?cERUM0xaSU5ZTFNVTEZoRjFmMHZqWm5nQ0dHSVZ4MW9PU1I3SnlTNE0xRlpV?=
 =?utf-8?B?WEkzdTNyUUlDbjk3S055SlJKWG0ybHMzUWI5WmlDWFd6SFNFdXFoNGhZaVFK?=
 =?utf-8?B?azVmR1hob0hLRGRmSDhhcUNSK2F0NlI2MGtNelY0Mk5wdThoQU9RU1h4VVF2?=
 =?utf-8?B?M0FlNWM1LzVPdU1hclJLMTVxbnBqYTZmN0N2UVRsblg5LzFtVlhYbm9IREhU?=
 =?utf-8?B?QTM3Qjg1Rm5XR1pTeENUc3Q2WUJ1amluc3dhR21IaGttZkJmVzdUV3pQcFly?=
 =?utf-8?B?K0hIMHNkY0s3RjRTbGk3K0xCdS9pWEk0K1E2dWRRRVhqWWt4Q3pqQ2xwNHpI?=
 =?utf-8?B?NU4yTlByWUYrVFJBVEsvM0RvNmcrWU1FajZXa0dtK3BnMlU4THJRc2dibTRz?=
 =?utf-8?B?QWNwKzlhZmJPcUhrT3c5SDloekF2WEphSlBRbzArS3hKdit5bkVpYTVUWkdY?=
 =?utf-8?B?Uy8veGlub3lNOFhGS3dsVG1CSlg1ZE5YVDhyWU8rNzBZazM4M0tSZEp3L3p6?=
 =?utf-8?B?OGFzWUlmWDZPY0VDTDVKUklkYUJxM28vbHo3YW1WMEN0S1hPZUNacmw1U0po?=
 =?utf-8?B?cU9VY0ZFcm13eG9BeFN0TVdZck8xeTBoTEtvSjgvVDE1VHNFQkpzQnR3aEtH?=
 =?utf-8?B?M1ZqY0I1Y2xVWjdFOXZ6R0d5U0xGRklTUy8xYXJVQnZIQ1pVWXBiZEdPMHZa?=
 =?utf-8?B?MFVPdklOZzdqTEVuNWFUcVlHd3RLM3B3eU85U2JKWDE2VlA5bU1ScEpUazVK?=
 =?utf-8?B?Zk1wekUvdGRjRmZvSGcvM09lUjRDZU9VS2tWYzNDcXk5aHFiaW80NWF5cGJP?=
 =?utf-8?B?cVF0aTRlazFKNXFoTEZPUk8xdnk4T1d1SDBvN05GWURyM3FXYldEakRaUytE?=
 =?utf-8?B?VFJDdlZQUi92TnZIWWNJRENGand3b2RGR2MwRnpXeTV6RDdGUHlldUJLamFh?=
 =?utf-8?B?SWlhVGF4U0drM3VLaGJSTnlGdndvWmE1ZitFeG9RYnV2elJ1SGF5V3JWQXdV?=
 =?utf-8?B?UHpsZFZCd245VTJ5MVl3NDBPVDZaN3EyaEE3QmIva2RJZ0taTjBpb3lvdVdE?=
 =?utf-8?B?akhxck1rQWRCUDA3QnZRV0RCVGI1ckFubVladC9sbXY1cElVM1ZhZ2ZmcEpw?=
 =?utf-8?B?enl0TTVFYzFHVEJLa1pMNHlSNXdrZGRCZ20zbHIrNDJEYmc2b2ZCWHJwakxC?=
 =?utf-8?Q?U7hUpY/F0zxTkLl/tVEvdYHc7?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 210e1d76-6322-42aa-1459-08dbaf726387
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 07:16:43.4994
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Wde6NC6ISq2hfMhn5gSGJXNlZ9I1W1r3v2eBm1fBDEIgTDkzjw0VhnaEioRXUjZgjFbOP2RmK1/4dGHMBjMqmw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7845

On 07.09.2023 03:08, Stefano Stabellini wrote:
> On Wed, 6 Sep 2023, Nicola Vetrini wrote:
>> As stated in 'docs/misra/rules.rst' the functions that are used only by
>> asm modules do not need to conform to MISRA C:2012 Rule 8.4.
>> The deviations are carried out with a SAF comment.
>>
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> 
> This is better
> 
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

Acked-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Thu Sep 07 07:46:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 07:46:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597155.931350 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe9iO-0007q2-1M; Thu, 07 Sep 2023 07:46:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597155.931350; Thu, 07 Sep 2023 07:46:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe9iN-0007pv-UC; Thu, 07 Sep 2023 07:46:11 +0000
Received: by outflank-mailman (input) for mailman id 597155;
 Thu, 07 Sep 2023 07:46:10 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qe9iM-0007pp-9U
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 07:46:10 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2061a.outbound.protection.outlook.com
 [2a01:111:f400:fe16::61a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 96784bd8-4d52-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 09:46:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7771.eurprd04.prod.outlook.com (2603:10a6:10:1e6::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 07:45:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 07:45:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 96784bd8-4d52-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=L/84Y2WlTLutQZERl69MR4hmDOBClwazQ7Y3nvU+Nqf6U778ApXpG2WKSnx6UZZXR7ePdya4JfDXuSVl4q2GkwhmGXHSI/yCM6JI4cJ3DvUi/0wyRIP0xDxcGeJ3pXzKrFkgb3MybzsinZsgoxBrIE0WfF/vWPTcfnbvt3EMKPojGS//WrrA11+o0G61+kO63mRJo1lUfNMtyjYZGJ4lYaTMHTIwhe2d2ZOQonyz0cFRuYr3DHMYCG6T+/No8KI6Uzi4Mg7xRTU7+If6XEDIuPqQb9f6OpqsRKFRGeCJ7PKQZMwLrMImR1sPL0RvpJSBYotj2qwW4b6sdTfVPym3tQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LA8h0yfEMbV6daKal0abZLk8Yk/KcqV4BLNGkjYcORM=;
 b=ofG6Xo2OaeEUEpyDwby//ZumOiy8mLc9vYQaY4HYKkulo1iaXxiSKkCBGR7teR0wmp8OBRHHkNyOmnPhg3hTZptkU90hqOyUQiqu4uEqmWITXGwPLyJiVb5zE8jDFnx35LQDqCY1HBZD9tdICoXANyNUHGWae4+nh2iVcRc7UFz1xcPgcv9qOd/Ekn6tr/08gKEOUT4oHH1uXQ8SZ/ImTp5H3Bmwck8/zx/o3ggyaMdvfDlBHE2PTloDkI2ZPWwtj4pWXEqBXGK3yyhsIJ/1YRDPcCMaDWouUSn63miLpQhlUkNqil5qvqDc7zQCjexYuXmXexD9Ma5c4O/8Kwz6zg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LA8h0yfEMbV6daKal0abZLk8Yk/KcqV4BLNGkjYcORM=;
 b=ZvNCmk6ZO+DlUF3Oixu16xMrrnhNSzQbrKJYwwgw50jzAgo0bpMUZJAl7rEoLkUrxPKFwPEC33O3ojJb001fpiGK7kAHuEXBBdXkBxWQsYo8tqmv+r27bXRHoZWR01/kOgWbI1BCyizKI5KPqjugM6kyWbVfQACo2lCTncFW624nW26YsB+YsxIDIELAI7wcnWZKdSwJGplTHMxyfgH89rL5yCdpPcyrUs44drnXHGX4+fjJPorR1OtIYb71NlR1wavETtHNEo/1UmMh7umdaVMNMAUoNF/ahd0lVJ7moCAvzAhZeOvj54yDohfHdtQIak8CLcFLtwUqtQurme4U/w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <bb6831bd-5846-5cfe-53fd-8274b24bdfb5@suse.com>
Date: Thu, 7 Sep 2023 09:45:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v3] MAINTAINERS: generalize vm-event/monitor entry
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Tamas K Lengyel <tamas@tklengyel.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Anthony Perard <anthony.perard@citrix.com>
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0171.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:99::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBBPR04MB7771:EE_
X-MS-Office365-Filtering-Correlation-Id: 72da8825-554a-46fd-df18-08dbaf767968
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	DpdfG+VzOt7ppSElrN8BhYtiXdQLycAXEgAWOtmDMsqYe9g4S2KyfAyic3hFrnlyFlr84PmZSl1DuNvns0FlrRHbZE7jPX/9GQlaWyR2ZX3nSnC+lJrAiAGFbKQPRQBcsS62h/UpVoyT8OevGaVqGCCGNvznyZV3Jp3ajkAx2k5BX3lO8gjjGnNN3JssbeEGWoDYICQ2qrKbT3xWFiqDmJI5V7f3XuTPa6BkTxM8NRR4rewOYXN540Uh1GXz2Ja8UqLzumHUUUuzkws7OB+F9FIXhOaZS+qWs6UR+J0f9pez+PTqbiW0qyB6B0kv1TkEoHNxA8H9GdLghiyrnqx17hcid/MBmbf+pEMrGmo38Ni/xNV32507CmiyGjbnp5sTSaZOxbyd2n3L4adUcBsrOqlDm/pAoVrEdqU1qeNHFmxVk+qD7F+Vx/XaoGLPDyMSbK8spTBjiV5z9M+C6doKy32kgdYnIf/lNNNIs45Dm0gp10FjOHMBiUJVDhrEcK0rVcHiCgexDR728hydG3GSq3uFDmJej4L7Ac5rZMg1Duu6tB2SgADArXchp0DjiAjuFfuKuGhJs8yEIe+mGBnk414JnD//CWWxV9YHZDrqojZ3RsbZ6RsisHxrR6j1c/SY0MblCnuWKOE8OVu5n9KVQg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39860400002)(346002)(396003)(136003)(376002)(186009)(1800799009)(451199024)(6486002)(6506007)(6666004)(6512007)(83380400001)(26005)(2616005)(54906003)(66946007)(38100700002)(6916009)(66556008)(66476007)(5660300002)(316002)(36756003)(41300700001)(86362001)(31696002)(8676002)(8936002)(4326008)(31686004)(2906002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TXJtem1GNytuUmVETkxjak80NlpYSTFqLzdFMVUyTjU5ejZlOUhmQ0hpeW1R?=
 =?utf-8?B?TWZhQzFGNHdXRXc3SGhaM2g0dkVuaGU5eXQrWm9xdnlBRDRDWk13My8ySTBT?=
 =?utf-8?B?Mys1SUo3QVRXd052MEtUaUNoODc0bjllZ2VBNFFEVEhMcEZZSVJtcEl3Tmc0?=
 =?utf-8?B?WXFyaWVJa0thTE9pTVp0R1hWTzlZdDYvWkYzMm92c3h2U09XZVRHcVVGSk1p?=
 =?utf-8?B?SUZmRDR4aFlVV3lUVHV6WUEzTVZ2OG5uQ3JDdVNPVEEzazNJMCtMRGtISTQr?=
 =?utf-8?B?dFJZd0twR2MrL1hxeDA1K3RNeFZxK3R1ek5ucU0rYVB4dkRlTkFsbVhrdXdp?=
 =?utf-8?B?SUMwZUJpRHY0SzRpbVNOVG5rRkdKcEJEejZYTkxMWnkyMUpZVEloT2trTkEr?=
 =?utf-8?B?UXhBMjQzWDVjdXZDQ0VCSDB5UXQ1NldKY2g5d0hVclNLWU5zQ3VoTmJTSTU1?=
 =?utf-8?B?OS9OS0IzQVBGbmpOWHY5N0Nkem13MDZwVXI1azNSbG5KbHpvNXdscmFOU2hF?=
 =?utf-8?B?RmQ1dnNlQStsby9maXVEZ2RsanlraWlyeUNUcmU4NHV5ZlJTV3kvY1pwZ3V0?=
 =?utf-8?B?NmlOQmI0UjVzVUJ3cnpXOWVFVjUrSXhvOEZ2eVdsa09vRGhIT0k3c3RPdnNN?=
 =?utf-8?B?cmllTDNlTW9tekk3cGI4RVp6dDN5QndZc1ZIQlNPeS9UdWJ1aUs4SDNYTTZT?=
 =?utf-8?B?RFBueENiS3FuUjc1SWR1YTJkeUhzWVZ5dUl1MDVxN0tBNUsvMlZpMFZWK1Nt?=
 =?utf-8?B?WHV0U3YwaDdOdm16Q0pmcWhpNlA0TVBDTytjSW9SakRybm5xbGZEUks2WXhD?=
 =?utf-8?B?VmVCbWpvR0FKeEN0cGoxUDZacWNTbmRvOUNUY3NhQUVMK1BNOHcxK2paeXdY?=
 =?utf-8?B?WCtVYTgxbjdTODR0c2Fud1pWSVkyODczanB5Q09YTm1FUW5xMWhqNW1keE1w?=
 =?utf-8?B?SmJQQ1REdVprZ0tYWVZwR3o1S0dKQkVrWklxaFNHSnNmTzRTVGtGTTIxN2ZE?=
 =?utf-8?B?WUQwWVlFaGVqbEJuenhnNzMzT3hQeGs2dzl4SWFLR2w4UXBJMVdWb2JBTnhZ?=
 =?utf-8?B?N3E1VWhDZm1HdVBJV0NGVjREWSs0aWw2cWJsU3lwOEtPbTA3aDdoK1dZNTBH?=
 =?utf-8?B?dHVnV2xqT3dGb1JlTGcrcWZieDlLVTRtMEx2MVhsaS9FV29BSGRiYjdiSGN5?=
 =?utf-8?B?dS91QU1qeUFjOGFPT0hxZTc5M05yOTh3bnRkZjgyVEtMcjB2TlBxZml2UjVD?=
 =?utf-8?B?TzEybkhER1pyM3ZkTXhMb2JqUXdjTHJpb04xcWh6K0pGZTVOT2s2cEd0SHlB?=
 =?utf-8?B?em1XNkNUMDNaN0NOVUdhUVpXdHlneGVHcFhiR0VuNjR1M2ZQQXlWL2NQN3ds?=
 =?utf-8?B?ajd0dktjNmlXUjJFMC84RTJjTjNkTm9WZHQweDlMbURBaEpoUnZkWXl1cVp1?=
 =?utf-8?B?M1kreTh4VDVMV0FvdUUyV3VRMFRoMk5aRmRqUFZlWXc5cXpkTE11VmFMdkI0?=
 =?utf-8?B?aThvekZaVGZheTUxVXRRcVlGRHRTVXhQMThyQU5MdEhwSHFpb0tMMzFvOG9M?=
 =?utf-8?B?SGlIcDVwajJmRnJUTTdVczlmdm5FY296RmxHVlhHN1BtcDlMdHlOak5uNGlR?=
 =?utf-8?B?OVpoeWR1TVkrQkppSmRuZmI2bzZITXMvc3BvWWxUZlprNk5DY1BjanNjOFF1?=
 =?utf-8?B?NjRqdFd1cnpwYkhEOHg3VFpnbHlUbHE0N2MrTUF2azhkd0d3Y2ZyUkhyanl4?=
 =?utf-8?B?bE5EUXFtRG5zckxLdFpTUFZrZVE2RW12RGFVQXliT2FIQytWSExxazJteVNi?=
 =?utf-8?B?bFpqZVJscE5FY3BnTkJWbUZRUkJoUURKTjFBQ1kxRE1idlVmc01HaGZYWlRz?=
 =?utf-8?B?aTNkTnJOTWdMWHkrQkRzVzFmcHVKTHAvRVhvcDE2SXdDU3FEQU56a1ViOElG?=
 =?utf-8?B?cEs4czhOWUR6WFlTV1dLVnhINTlZOFgwVzQzeUhJc0xlZ09zMlFiWWJqcUMw?=
 =?utf-8?B?VFFZNzYwTVJnN3ZvM3VzRFluMnpMaHQwV3RHNkRocE1LbDJxSUVKMU5aTG1H?=
 =?utf-8?B?UENKbFI5SlEyYUhCOWlKT3orSEFxenB4dkcrUzhMaU5wdHJzaVgyNFY5Vmcr?=
 =?utf-8?Q?5fVo97I2+bxoWGFms2yh7L6Fy?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 72da8825-554a-46fd-df18-08dbaf767968
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 07:45:58.1860
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: EU7qumYpuP7KKTH050EZ0hZXANM9fyv/rS+Y/nW46iZ5Afrq5MCz7BSpA1u08h3zk41bd0qMXBF/CFyt3wCuog==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7771

Replace Arm- and x86-specific lines with wildcard ones, thus covering
all architectures. Uniformly permit an extra sub-directory level to be
used, as is already the case for xen/include/.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: Unfold, for F: not being handled as originally expected.
v2: Further fold patterns.
---
Triggered by me looking at the entry in the context of Oleksii's RISC-V
preparatory patch.

--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -559,14 +559,18 @@ R:	Alexandru Isaila <aisaila@bitdefender
 R:	Petre Pircalabu <ppircalabu@bitdefender.com>
 S:	Supported
 F:	tools/misc/xen-access.c
+F:	xen/arch/*/*/mem_access.c
+F:	xen/arch/*/*/monitor.c
+F:	xen/arch/*/*/vm_event.c
+F:	xen/arch/*/include/asm/*/mem_access.h
+F:	xen/arch/*/include/asm/*/monitor.h
+F:	xen/arch/*/include/asm/*/vm_event.h
+F:	xen/arch/*/include/asm/mem_access.h
+F:	xen/arch/*/include/asm/monitor.h
+F:	xen/arch/*/include/asm/vm_event.h
+F:	xen/arch/*/mem_access.c
 F:	xen/arch/*/monitor.c
 F:	xen/arch/*/vm_event.c
-F:	xen/arch/arm/mem_access.c
-F:	xen/arch/x86/include/asm/hvm/monitor.h
-F:	xen/arch/x86/include/asm/hvm/vm_event.h
-F:	xen/arch/x86/mm/mem_access.c
-F:	xen/arch/x86/hvm/monitor.c
-F:	xen/arch/x86/hvm/vm_event.c
 F:	xen/common/mem_access.c
 F:	xen/common/monitor.c
 F:	xen/common/vm_event.c


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 07:50:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 07:50:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597163.931359 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe9mP-0000vk-H6; Thu, 07 Sep 2023 07:50:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597163.931359; Thu, 07 Sep 2023 07:50:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qe9mP-0000vd-EL; Thu, 07 Sep 2023 07:50:21 +0000
Received: by outflank-mailman (input) for mailman id 597163;
 Thu, 07 Sep 2023 07:50:19 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe9mN-0000uE-QR; Thu, 07 Sep 2023 07:50:19 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe9mN-0002B4-MZ; Thu, 07 Sep 2023 07:50:19 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qe9mN-0006Z9-7o; Thu, 07 Sep 2023 07:50:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qe9mN-0000Ya-7K; Thu, 07 Sep 2023 07:50:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=PxojxwO1XwgHqw2kb1FRkLQd4wGDhOL4kfiQlFRqZr0=; b=U94SHQjnuJJA2oVr6b+5xx8hby
	4XLUUo+EVkchbMZ4+QOcwvHoq+maT73VNwXwgnZnbcAI1R3VaCHBGEiqEmbOao0FmuH9mzVsaRPB8
	emljNg3522+Jn9+KUI7wNnKwliv/qi8RGE5iAN9aD7RDj9nfzXo5sP7knBEkOFF3DM6o=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182650-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182650: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-migrupgrade:xen-install/dst_host:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=9a216e92de9f9011097e4f1fb55ff67ba0a21704
X-Osstest-Versions-That:
    xen=74b725a64d800822e007e0f449317ff0a8249971
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 07:50:19 +0000

flight 182650 xen-unstable real [real]
flight 182716 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182650/
http://logs.test-lab.xenproject.org/osstest/logs/182716/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-migrupgrade 11 xen-install/dst_host fail pass in 182716-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 182632
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182632
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182632
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182632
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182632
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182632
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182632
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182632
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182632
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182632
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182632
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182632
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  9a216e92de9f9011097e4f1fb55ff67ba0a21704
baseline version:
 xen                  74b725a64d800822e007e0f449317ff0a8249971

Last test of basis   182632  2023-09-05 11:40:21 Z    1 days
Testing same since   182650  2023-09-06 06:53:04 Z    1 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bertrand Marquis <bertrand.marquis@arm.com>
  Julien Grall <jgrall@amazon.com>
  Stefano Stabellini <stefano.stabellini@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   74b725a64d..9a216e92de  9a216e92de9f9011097e4f1fb55ff67ba0a21704 -> master


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 08:45:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 08:45:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597180.931374 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeAdZ-0000yz-Nw; Thu, 07 Sep 2023 08:45:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597180.931374; Thu, 07 Sep 2023 08:45:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeAdZ-0000ys-Jr; Thu, 07 Sep 2023 08:45:17 +0000
Received: by outflank-mailman (input) for mailman id 597180;
 Thu, 07 Sep 2023 08:45:16 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeAdY-0000yi-2d; Thu, 07 Sep 2023 08:45:16 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeAdY-0003wg-1V; Thu, 07 Sep 2023 08:45:16 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeAdX-00089c-Nu; Thu, 07 Sep 2023 08:45:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeAdX-00077M-J1; Thu, 07 Sep 2023 08:45:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=D/2C3uRFHL5UdZEkXpZ0stYCVOUS2C6MCBZ6xGHZW54=; b=aV/LHQYI5lgUvi/hH/edwY1c+c
	EOjYpmm+izOBnII7iaQ0BttRRXsI/GmFc7el1gsArH85o5W/A62dDeXLKga6wRw2mEIc24ANpNf5q
	ZNB1WRSjqG5/uIFUNDgC7aGSN7AWqb/SUTapgKSwxc6gDie1pSiBziK9V8wFZ/z5Lt9U=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182715-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182715: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=bbf182229587958b17336c114e0a1525c4f90f3d
X-Osstest-Versions-That:
    ovmf=4d196352f35ac516b477e568265b4e537b0283d8
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 08:45:15 +0000

flight 182715 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182715/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 bbf182229587958b17336c114e0a1525c4f90f3d
baseline version:
 ovmf                 4d196352f35ac516b477e568265b4e537b0283d8

Last test of basis   182665  2023-09-06 11:10:57 Z    0 days
Testing same since   182715  2023-09-07 06:40:47 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Sheng Wei <w.sheng@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   4d196352f3..bbf1822295  bbf182229587958b17336c114e0a1525c4f90f3d -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 09:34:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 09:34:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597192.931398 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBPO-0007TZ-0s; Thu, 07 Sep 2023 09:34:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597192.931398; Thu, 07 Sep 2023 09:34:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBPN-0007R1-Pt; Thu, 07 Sep 2023 09:34:41 +0000
Received: by outflank-mailman (input) for mailman id 597192;
 Thu, 07 Sep 2023 09:34:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tY2=EX=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qeBPM-0007Hd-5h
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 09:34:40 +0000
Received: from mail-lj1-x235.google.com (mail-lj1-x235.google.com
 [2a00:1450:4864:20::235])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c40d9f3c-4d61-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 11:34:39 +0200 (CEST)
Received: by mail-lj1-x235.google.com with SMTP id
 38308e7fff4ca-2bcc846fed0so13195901fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 02:34:39 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 u19-20020a2e9b13000000b002ba586d27a2sm3797539lji.26.2023.09.07.02.34.37
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 02:34:38 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c40d9f3c-4d61-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694079279; x=1694684079; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=r0i1L5EVdzU0FCwpknTZBdJpHLn8zWZSeORY08bU9o8=;
        b=ExMwVhPusgSHIoIj7ULP7gVJxC90UbhCiDUROhlFJaK2lE6gQEKvyAZba0eYzNJG+d
         nNkL++Qp/wzY1saxeeNMyC1s0E9OMH7ZTUnhyxPyd05HNihNk00qR309CtkKmol2LKMt
         tkSeuRoekoFaKG5/Q5ANRe38qK+/W87Ps/5PCqLo8SLbWVclHsrZ1m76SFQ83pPUmIlT
         vj9QqW6GV8RwToSVhFzSaZc5ZsG1jqpLSR2adAKGDpfP01eba1MS/dzSdlh+HmuZI1jj
         fHFLWxTlWb3OhLxKo4qALQPL8rj8I/SETk7xrgyO2iIMkN02TyB1AOkGu9Y+KkOO4FIZ
         5d3g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694079279; x=1694684079;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=r0i1L5EVdzU0FCwpknTZBdJpHLn8zWZSeORY08bU9o8=;
        b=PHjqr4sPucni1JImTatyUXWiHIB+4n2VjsABWBBAR+V53Vj7LskfIh2MI9BLIFMuEL
         +iG3QzotkKu/B2qqD+Foy/ehedj91/4TeVIyFc0o6WTTIOBeZa9TfmbU+u4BXvTy2UCn
         sF0uTa5w7YbKoNTpRrLrlmDqFC8+0nLIkkijfCjn4Oycg/HajU8uEPKwreabFJuZcyXz
         +63gslnqiOsoSNiFdEyYpFsHr4A4rDkiTDquQTCGxOCar420wk6pn3BmrSIz5kF597LQ
         ygGBiV16zVe1Ti4nbGL5a0Cuq55gT0w+eecktwty7yj0pYGsIC7UZtBGORzvREht5M1s
         I0ZA==
X-Gm-Message-State: AOJu0YwA9rnMfzaevjqOao0UiU18p3FccFZHBnuH2kbeqQ/kcxVlEkbz
	FSTKrJCk9gh8dTnmyIlV/lVKq+3xQF0=
X-Google-Smtp-Source: AGHT+IHKzZZBJuwhDbCPo2KED9eJsJqIj4oG8WXxRjUcwudQM3ahmjzYvhuZ5av+UbGL5sSc0xlglA==
X-Received: by 2002:a2e:b16e:0:b0:2b6:e283:32cb with SMTP id a14-20020a2eb16e000000b002b6e28332cbmr3907930ljm.23.1694079278489;
        Thu, 07 Sep 2023 02:34:38 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Anthony PERARD <anthony.perard@citrix.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v6 2/2] xen: move arm/include/asm/vm_event.h to asm-generic
Date: Thu,  7 Sep 2023 12:32:57 +0300
Message-ID: <47e12756edfefdb5ff1112ae6b78ae95baadbbef.1694078544.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694078544.git.oleksii.kurochko@gmail.com>
References: <cover.1694078544.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

asm/vm_event.h is common for ARM and RISC-V so it will be moved to
asm-generic dir.

Original asm/vm_event.h from ARM was updated:
 * use SPDX-License-Identifier.
 * update comment messages of stubs.
 * update #ifdef
 * instead of "include <public/domctl.h>" -> "public/vm_event.h"

As vm_event.h was moved to asm-generic then it is needed to create
Makefile in arm/include/asm/ and add generated-y += vm_event.h to
it.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
Changes in V6:
 - update the commit message.
---
Changes in V5:
 - Update the commit message
 - Remove Acked-by:...
 - Switch ARM to use asm-generic/vm_event.h
---
Changes in V4:
 - update path of vm_event.h from include/asm-generic/asm to include/asm-generic
---
Changes in V3:
 - add Acked-by: Stefano Stabellini <sstabellini@kernel.org> for "xen: move arm/include/asm/vm_event.h to asm-generic"
 - update SPDX tag.
 - move asm/vm_event.h to asm-generic.
---
Changes in V2:
 - change public/domctl.h to public/vm_event.h.
 - update commit message of [PATCH v2 2/2] xen: move arm/include/asm/vm_event.h to stubs
---
 xen/arch/arm/include/asm/Makefile   |  2 +
 xen/arch/arm/include/asm/vm_event.h | 66 -----------------------------
 xen/include/asm-generic/vm_event.h  | 55 ++++++++++++++++++++++++
 3 files changed, 57 insertions(+), 66 deletions(-)
 create mode 100644 xen/arch/arm/include/asm/Makefile
 delete mode 100644 xen/arch/arm/include/asm/vm_event.h
 create mode 100644 xen/include/asm-generic/vm_event.h

diff --git a/xen/arch/arm/include/asm/Makefile b/xen/arch/arm/include/asm/Makefile
new file mode 100644
index 0000000000..821addb0bf
--- /dev/null
+++ b/xen/arch/arm/include/asm/Makefile
@@ -0,0 +1,2 @@
+# SPDX-License-Identifier: GPL-2.0-only
+generic-y += vm_event.h
diff --git a/xen/arch/arm/include/asm/vm_event.h b/xen/arch/arm/include/asm/vm_event.h
deleted file mode 100644
index 4d861373b3..0000000000
--- a/xen/arch/arm/include/asm/vm_event.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * vm_event.h: architecture specific vm_event handling routines
- *
- * Copyright (c) 2015 Tamas K Lengyel (tamas@tklengyel.com)
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License along with
- * this program; If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef __ASM_ARM_VM_EVENT_H__
-#define __ASM_ARM_VM_EVENT_H__
-
-#include <xen/sched.h>
-#include <public/domctl.h>
-
-static inline int vm_event_init_domain(struct domain *d)
-{
-    /* Nothing to do. */
-    return 0;
-}
-
-static inline void vm_event_cleanup_domain(struct domain *d)
-{
-    memset(&d->monitor, 0, sizeof(d->monitor));
-}
-
-static inline void vm_event_toggle_singlestep(struct domain *d, struct vcpu *v,
-                                              vm_event_response_t *rsp)
-{
-    /* Not supported on ARM. */
-}
-
-static inline
-void vm_event_register_write_resume(struct vcpu *v, vm_event_response_t *rsp)
-{
-    /* Not supported on ARM. */
-}
-
-static inline
-void vm_event_emulate_check(struct vcpu *v, vm_event_response_t *rsp)
-{
-    /* Not supported on ARM. */
-}
-
-static inline
-void vm_event_sync_event(struct vcpu *v, bool value)
-{
-    /* Not supported on ARM. */
-}
-
-static inline
-void vm_event_reset_vmtrace(struct vcpu *v)
-{
-    /* Not supported on ARM. */
-}
-
-#endif /* __ASM_ARM_VM_EVENT_H__ */
diff --git a/xen/include/asm-generic/vm_event.h b/xen/include/asm-generic/vm_event.h
new file mode 100644
index 0000000000..29ab1b01b4
--- /dev/null
+++ b/xen/include/asm-generic/vm_event.h
@@ -0,0 +1,55 @@
+/* SPDX-License-Identifier:  GPL-2.0-only */
+/*
+ * vm_event.h: stubs for architecture specific vm_event handling routines
+ *
+ * Copyright (c) 2015 Tamas K Lengyel (tamas@tklengyel.com)
+ */
+
+#ifndef __ASM_STUB_VM_EVENT_H__
+#define __ASM_STUB_VM_EVENT_H__
+
+#include <xen/sched.h>
+#include <public/vm_event.h>
+
+static inline int vm_event_init_domain(struct domain *d)
+{
+    /* Nothing to do. */
+    return 0;
+}
+
+static inline void vm_event_cleanup_domain(struct domain *d)
+{
+    memset(&d->monitor, 0, sizeof(d->monitor));
+}
+
+static inline void vm_event_toggle_singlestep(struct domain *d, struct vcpu *v,
+                                              vm_event_response_t *rsp)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_register_write_resume(struct vcpu *v, vm_event_response_t *rsp)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_emulate_check(struct vcpu *v, vm_event_response_t *rsp)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_sync_event(struct vcpu *v, bool value)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_reset_vmtrace(struct vcpu *v)
+{
+    /* Nothing to do. */
+}
+
+#endif /* __ASM_STUB_VM_EVENT_H__ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 09:34:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 09:34:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597191.931390 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBPN-0007LI-LJ; Thu, 07 Sep 2023 09:34:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597191.931390; Thu, 07 Sep 2023 09:34:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBPN-0007KG-Fc; Thu, 07 Sep 2023 09:34:41 +0000
Received: by outflank-mailman (input) for mailman id 597191;
 Thu, 07 Sep 2023 09:34:40 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tY2=EX=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qeBPL-0007He-UH
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 09:34:39 +0000
Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com
 [2a00:1450:4864:20::233])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c33d7eb3-4d61-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 11:34:37 +0200 (CEST)
Received: by mail-lj1-x233.google.com with SMTP id
 38308e7fff4ca-2bcc331f942so8693141fa.0
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 02:34:37 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 u19-20020a2e9b13000000b002ba586d27a2sm3797539lji.26.2023.09.07.02.34.36
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 02:34:36 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c33d7eb3-4d61-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694079277; x=1694684077; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=EbyA2D/GZCbk8wBzL+USNEjWy5BB6J46sDBfjFKHfug=;
        b=n8+oyIXILv0/eE++AJR39Xlw2z4cJBONDqnqq46qeMAswkRbFNbK1p9bcE59YCAyAq
         txMdziQcCwkSTb5ZQtRnSf1ojbEHICrYYIlNb8Gfqa2MNEo5mu/UbMhMI+OdGHH5kxs+
         5IsgM4bc6RbDn5V3Tbdmy55Mswht80kDTHDMKfVXRJAKv+mn9u8arddJpPYHiImAKAR2
         c8MPYJvmbq9VlhVk6NGZVk0FGhMFaIpdeivHxvfblEtZe4DyMepzB6ngzN2FPGbZGiIl
         DqPPeHAveHIReQUlWEWxQqfFXvioGdLkFBihsupqr9MJndP9q6J4Pf81fulLhdmcLIZM
         nWYA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694079277; x=1694684077;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=EbyA2D/GZCbk8wBzL+USNEjWy5BB6J46sDBfjFKHfug=;
        b=dbPWeg0zXQunOFbX94s9djf0m7PJpvc2wYCRCi+E/ACfexYnNdipNrtB8TCJOdQkDz
         MeYMBhfixwfxlrfBa6mNY0YmiWkXsc2D4sEEDzJ3sJexQqNcOVyles5mwlorwH0cHKHd
         tzO+5DCmgJDNknt/e8ZwsC7o93r7wc4RubT548YqFj7I1PAvy3GVG683YjAPphhCWej8
         DKtXPZuq3dE5g4l0bgeXRNMtLM4l5kP4X5K2E1/PPaS1g6sasf95piBD030uQ1qFD7aJ
         L2hx0TM7EuoXzvaEY8DDp1TdEnDZ57hy44r8ah9VAITxyZW4tGn9unnCvc4OGBear9ub
         RJLw==
X-Gm-Message-State: AOJu0Yw75cyroRi2nmxs/uvhC7KLxtDizrhHcMXEtmQjvc2OAqrBSNS0
	OvgUcHA2eZpbq+egr0n/sZDhB2m5LAs=
X-Google-Smtp-Source: AGHT+IHE2Gecn2NdhcJmgK0hOXTUJWBpm69OlukNpq28YdZka7ID1P4AeZlM2+6dCpMY0dhseUN6Iw==
X-Received: by 2002:a2e:b98d:0:b0:2bc:d3b1:d6c1 with SMTP id p13-20020a2eb98d000000b002bcd3b1d6c1mr743039ljp.9.1694079276788;
        Thu, 07 Sep 2023 02:34:36 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Anthony PERARD <anthony.perard@citrix.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v6 0/2] introduce stub directory to storing empty/stub headers
Date: Thu,  7 Sep 2023 12:32:55 +0300
Message-ID: <cover.1694078544.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

A lot of empty/stub headers should be introduced during the early steps of adding
support of new architecture.

An example can be found here:
1. https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kurochko@gmail.com/
2. https://lore.kernel.org/xen-devel/a92f99e8f697da99d77bfde562a549dbef3760ce.1692816595.git.sanastasio@raptorengineering.com/

As part of the patch series, asm/vm_event.h was moved to the stubs directory because
It is the same for ARM, PPC, and RISC-V.

---
Changes in V6:
 - introduce $(asm-generic) macro in Kbuild.include.
 - move "asm-generic" after the rule "__distclean".
 - update the commit message.
---
Changes in V5:
- Update SPDX license.
- Remove code related to UML in Makefile.asm-generic.
- Include $(src)/Makefile instead of $(kbuild-file).
- Update comment message in Makefile.asm-generic.
- Update .gitignore.
- Update path to generated headers in CFLAGS.
- Use the latest version of Linux's Makefile.asm-generic.
- Introduce asm-generic's vm_event.h.
- Switch ARM to use asm-generic/vm_event.h.
---
Changes in V4:
 - add asm-generic support
 - update path of vm_event.h from include/asm-generic/asm to include/asm-generic
---
Changes in V3:
 - add Acked-by: Stefano Stabellini <sstabellini@kernel.org> for "xen: move arm/include/asm/vm_event.h to asm-generic"
 - update SPDX tag.
 - move asm/vm_event.h to asm-generic.
 - rename stubs dir to asm-generic.

---
Changes in V2:
 - change public/domctl.h to public/vm_event.h.
 - update commit message of [PATCH v2 2/2] xen: move arm/include/asm/vm_event.h to stubs

Oleksii Kurochko (2):
  xen: asm-generic support
  xen: move arm/include/asm/vm_event.h to asm-generic

 .gitignore                          |  1 +
 xen/Makefile                        |  9 +++-
 xen/arch/arm/include/asm/Makefile   |  2 +
 xen/arch/arm/include/asm/vm_event.h | 66 -----------------------------
 xen/include/asm-generic/vm_event.h  | 55 ++++++++++++++++++++++++
 xen/scripts/Kbuild.include          |  6 +++
 xen/scripts/Makefile.asm-generic    | 53 +++++++++++++++++++++++
 7 files changed, 125 insertions(+), 67 deletions(-)
 create mode 100644 xen/arch/arm/include/asm/Makefile
 delete mode 100644 xen/arch/arm/include/asm/vm_event.h
 create mode 100644 xen/include/asm-generic/vm_event.h
 create mode 100644 xen/scripts/Makefile.asm-generic

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 09:34:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 09:34:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597190.931383 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBPN-0007I1-Bz; Thu, 07 Sep 2023 09:34:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597190.931383; Thu, 07 Sep 2023 09:34:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBPN-0007Hu-90; Thu, 07 Sep 2023 09:34:41 +0000
Received: by outflank-mailman (input) for mailman id 597190;
 Thu, 07 Sep 2023 09:34:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tY2=EX=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qeBPL-0007Hd-Tm
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 09:34:39 +0000
Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com
 [2a00:1450:4864:20::233])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c37af6bf-4d61-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 11:34:38 +0200 (CEST)
Received: by mail-lj1-x233.google.com with SMTP id
 38308e7fff4ca-2bc63e0d8cdso12453951fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 02:34:38 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 u19-20020a2e9b13000000b002ba586d27a2sm3797539lji.26.2023.09.07.02.34.36
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 02:34:37 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c37af6bf-4d61-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694079278; x=1694684078; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=1gQDS+2q9j6P1P0VGN498BuOasLAENJ8DpX2SBjl0NQ=;
        b=MmJarW4GZxAAXffFio8hZRbjxDwPYFwKvA7J2UFszlYNK05/R9c8SORF3YkllR9JyF
         ul40dFc77rZ75Ihx4eV86H3dP1gIXN4u0eKRuZeXv57me8xgKVTqH7Qv0pKmaat3548h
         VLEXjk988Xab8eFnvxFdkeENaVoJmR1q3eXcK/vdZRkUMkZ9knO9StXxV8LAbiYZ11G9
         sNIKINZsDTBR6xkgwxb8NZpKoAt+UUrntKh3rS0XiKcVX0YhJVw2pUgrzbkdi4UXaLW8
         MHni5tRUwGIRDfxYU6QCf81ayJ7Di1YHfJ2e/rbhTIIPswoyLoxPZpZSmS8k8hhFeY2p
         HHeg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694079278; x=1694684078;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=1gQDS+2q9j6P1P0VGN498BuOasLAENJ8DpX2SBjl0NQ=;
        b=dEHtJiyGViySR0qLOS8UrxuPxaIzeNV5ODqDlFm0cxm0X6PyM1MNEa2Lj7K+b2L/qe
         XNRErDc4FRm+dkjpjSullgBcDU8U5174UcrxbdBVGh4QzSIEtMXx7QXnt/sJgPdqJokT
         iCpsvG/AvSDIqK8PgXtr7M3VDbx3TH0ZdBVsdNb6NTmC8QfkAVisArOsR6dPGDfHZqz5
         M6MVj6WXGVjVBv9QffZiFVQj0DLGNojKXgWIiev6WGZn1PHgs8EwmMwb1i0oy8840kq8
         KkxaQSotWPrDL3sOfiGmiE9iwFJlxtS8XvLmaEDYE5GnyOxSag7SYHMq2aj1N5A+HOJZ
         mbBw==
X-Gm-Message-State: AOJu0YxaMZVNSU6fSwmG+Qyax+gS9DNO1rMpzIlaBnmea/O2mJ0m+P6o
	ZyWfh3M+kl4nyjnr/hVeDRtFwTM8l8s=
X-Google-Smtp-Source: AGHT+IE51XLN3ECMA0/v2VHMescjleO17Ms3znwQWPwiGOGZIb5UMsId6Q/sMuweHjPl6aNLw9biLg==
X-Received: by 2002:a2e:3e1a:0:b0:2bc:eb95:15c7 with SMTP id l26-20020a2e3e1a000000b002bceb9515c7mr3882138lja.49.1694079277492;
        Thu, 07 Sep 2023 02:34:37 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Anthony PERARD <anthony.perard@citrix.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v6 1/2] xen: asm-generic support
Date: Thu,  7 Sep 2023 12:32:56 +0300
Message-ID: <cf5f446915bd5c8980beda22718efff32678e16b.1694078544.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694078544.git.oleksii.kurochko@gmail.com>
References: <cover.1694078544.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Some headers are shared between individual architectures or are empty.
To avoid duplication of these headers, asm-generic is introduced.

With the following patch, an architecture uses generic headers
mentioned in the file arch/$(ARCH)/include/asm/Makefile

To use a generic header is needed to add to
arch/$(ARCH)/include/asm/Makefile :
        generic-y += <name-of-header-file.h>

For each mentioned header in arch/$(ARCH)/include/asm/Makefile,
the necessary wrapper in arch/$(ARCH)/include/generated/asm will be
generated.

As the base Makefile.asm-generic from Linux kernel was taken.
( 06c2afb862f9da8 "Linux 6.5-rc1" ).

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
Changes in V6:
 - introduce $(asm-generic) macro in Kbuild.include.
 - move "asm-generic" after the rule "__distclean".
---
Changes in V5:
 - Update the commit message
 - Update SPDX license in Makefile.
 - Remove code related to UML
 - Include $(src)/Makefile instead of $(kbuild-file) 
 - Update comment message in Makefile.asm-generic
 - Update .gitignore
 - Update path to generated headers in CFLAGS.
 - Use the latest version of Linux's Makefile.asm-generic
---
Changes in V4:
 - introduce asm-generic support
 - update commit message
---
Changes in V3:
 - Rename stubs dir to asm-generic
---
Changes in V2:
 - Nothing changed.
---
 .gitignore                       |  1 +
 xen/Makefile                     |  9 +++++-
 xen/scripts/Kbuild.include       |  6 ++++
 xen/scripts/Makefile.asm-generic | 53 ++++++++++++++++++++++++++++++++
 4 files changed, 68 insertions(+), 1 deletion(-)
 create mode 100644 xen/scripts/Makefile.asm-generic

diff --git a/.gitignore b/.gitignore
index 50273adb8d..287166f8fc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -267,6 +267,7 @@ xen/arch/*/efi/efi.h
 xen/arch/*/efi/pe.c
 xen/arch/*/efi/runtime.c
 xen/arch/*/include/asm/asm-offsets.h
+xen/arch/*/include/generated
 xen/build-dir-cppcheck/
 xen/common/config_data.S
 xen/common/config.gz
diff --git a/xen/Makefile b/xen/Makefile
index f57e5a596c..2dc5e3526d 100644
--- a/xen/Makefile
+++ b/xen/Makefile
@@ -438,6 +438,7 @@ ifdef building_out_of_srctree
 endif
 CFLAGS += -I$(srctree)/include
 CFLAGS += -I$(srctree)/arch/$(SRCARCH)/include
+CFLAGS += -I$(objtree)/arch/$(SRCARCH)/include/generated
 
 # Note that link order matters!
 ALL_OBJS-y                := common/built_in.o
@@ -580,16 +581,22 @@ _clean:
 	rm -f $(TARGET).efi $(TARGET).efi.map $(TARGET).efi.elf $(TARGET).efi.stripped
 	rm -f asm-offsets.s arch/*/include/asm/asm-offsets.h
 	rm -f .banner .allconfig.tmp include/xen/compile.h
+	rm -rf $(objtree)/arch/*/include/generated
 
 .PHONY: _distclean
 _distclean: clean
 	rm -f tags TAGS cscope.files cscope.in.out cscope.out cscope.po.out GTAGS GPATH GRTAGS GSYMS .config source
 
+# Support for using generic headers in asm-generic
+PHONY += asm-generic
+asm-generic:
+	$(Q)$(MAKE) $(asm-generic)=arch/$(SRCARCH)/include/generated/asm
+
 $(TARGET).gz: $(TARGET)
 	gzip -n -f -9 < $< > $@.new
 	mv $@.new $@
 
-$(TARGET): outputmakefile FORCE
+$(TARGET): outputmakefile asm-generic FORCE
 	$(Q)$(MAKE) $(build)=tools
 	$(Q)$(MAKE) $(build)=. include/xen/compile.h
 	$(Q)$(MAKE) $(build)=include all
diff --git a/xen/scripts/Kbuild.include b/xen/scripts/Kbuild.include
index 785a32c32e..c2bd8498e1 100644
--- a/xen/scripts/Kbuild.include
+++ b/xen/scripts/Kbuild.include
@@ -91,6 +91,12 @@ cc-ifversion = $(shell [ $(CONFIG_GCC_VERSION)0 $(1) $(2)000 ] && echo $(3) || e
 
 clang-ifversion = $(shell [ $(CONFIG_CLANG_VERSION)0 $(1) $(2)000 ] && echo $(3) || echo $(4))
 
+###
+# Shorthand for $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.asm-generic obj
+# Usage:
+# $(Q)$(MAKE) $(asm-generic)=dir
+asm-generic := -f $(srctree)/scripts/Makefile.asm-generic obj
+
 ###
 # Shorthand for $(Q)$(MAKE) -f scripts/Makefile.build obj=
 # Usage:
diff --git a/xen/scripts/Makefile.asm-generic b/xen/scripts/Makefile.asm-generic
new file mode 100644
index 0000000000..92a3a741c5
--- /dev/null
+++ b/xen/scripts/Makefile.asm-generic
@@ -0,0 +1,53 @@
+# SPDX-License-Identifier: GPL-2.0-only
+# include/asm-generic contains a lot of files that are used
+# verbatim by several architectures.
+#
+# This Makefile reads the file arch/$(SRCARCH)/include/asm/Makefile
+# and for each file listed in this file with generic-y creates
+# a small wrapper file in arch/$(SRCARCH)/include/generated/asm.
+
+PHONY := all
+all:
+
+src := $(subst /generated,,$(obj))
+
+include $(srctree)/scripts/Kbuild.include
+-include $(src)/Makefile
+
+redundant := $(filter $(mandatory-y) $(generated-y), $(generic-y))
+redundant += $(foreach f, $(generic-y), $(if $(wildcard $(srctree)/$(src)/$(f)),$(f)))
+redundant := $(sort $(redundant))
+$(if $(redundant),\
+	$(warning redundant generic-y found in $(src)/Kbuild: $(redundant)))
+
+# If arch does not implement mandatory headers, fallback to asm-generic ones.
+mandatory-y := $(filter-out $(generated-y), $(mandatory-y))
+generic-y   += $(foreach f, $(mandatory-y), $(if $(wildcard $(srctree)/$(src)/$(f)),,$(f)))
+
+generic-y   := $(addprefix $(obj)/, $(generic-y))
+generated-y := $(addprefix $(obj)/, $(generated-y))
+
+# Remove stale wrappers when the corresponding files are removed from generic-y
+old-headers := $(wildcard $(obj)/*.h)
+unwanted    := $(filter-out $(generic-y) $(generated-y),$(old-headers))
+
+quiet_cmd_wrap = WRAP    $@
+      cmd_wrap = echo "\#include <asm-generic/$*.h>" > $@
+
+quiet_cmd_remove = REMOVE  $(unwanted)
+      cmd_remove = rm -f $(unwanted)
+
+all: $(generic-y)
+	$(if $(unwanted),$(call cmd,remove))
+	@:
+
+$(obj)/%.h:
+	$(call cmd,wrap)
+
+# Create output directory. Skip it if at least one old header exists
+# since we know the output directory already exists.
+ifeq ($(old-headers),)
+$(shell mkdir -p $(obj))
+endif
+
+.PHONY: $(PHONY)
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 09:38:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 09:38:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597213.931414 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBTB-0000df-IG; Thu, 07 Sep 2023 09:38:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597213.931414; Thu, 07 Sep 2023 09:38:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBTB-0000dW-Fa; Thu, 07 Sep 2023 09:38:37 +0000
Received: by outflank-mailman (input) for mailman id 597213;
 Thu, 07 Sep 2023 09:38:35 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=M1vp=EX=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qeBT9-0000dM-NG
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 09:38:35 +0000
Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com
 [2a00:1450:4864:20::334])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 505be669-4d62-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 11:38:34 +0200 (CEST)
Received: by mail-wm1-x334.google.com with SMTP id
 5b1f17b1804b1-401b0d97850so8490895e9.2
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 02:38:34 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 n18-20020a5d4012000000b0031c79de4d8bsm22830825wrp.106.2023.09.07.02.38.33
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 02:38:33 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 505be669-4d62-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694079514; x=1694684314; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=boNO0qTU+/44eeBmVD3BuYCvtrQxofPQT82jLgHD/jk=;
        b=f+A6Vc+P75cB1Dp7vhhHaxrjsipz75kc1E7ea2DCw+V70qpC9jnIvJlrLWHznUX7IJ
         zA7xXaabs//zNcC2nsb3GG0hAL3clzrrRwa1fJViLkpPB3GA4z4/fqfhODC5/QHoweXo
         IfbW4z2OPYM6objGI+aO7FGDAW8iq8lmWf+iU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694079514; x=1694684314;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=boNO0qTU+/44eeBmVD3BuYCvtrQxofPQT82jLgHD/jk=;
        b=DBbMNqVh4paPPICVCV9DzHmF3D313uE+I/BrTWiHEJhNvATMc9KMZpmbyNrZ+p9AG8
         j3+93S33y1OGAGnn27vDaaiS/t7BaPZL37BiaVoj836l0hpdlgJNo6iVlUGrq5m54vmB
         8eVuTqoA0fjHgskwNtYZPt9uax+HWSgaU1rls0or5z8sG9E66rxX22VkAg/seH48OOOf
         Ez8rOn0IU7MfFlZyk2vCQadpGrrzeu5ZAkSqr48tfS0QN7gVRtv8WNlJxJLmRij+VUZw
         LC0UhkgrFz+wUYesbJtYtScHufxCUpZdU/jpMSJDnxtXsl/9JZe6PQh7ZCWTtc8l6tJX
         9HZQ==
X-Gm-Message-State: AOJu0YwdebKyvHp0k7hY8GztiGOKtQmiPlMNpoPPhBbbspfCKBvCE2Gq
	yqyLiRPG9nmPNLbOK6RKm7QIQw==
X-Google-Smtp-Source: AGHT+IGePNB+kl9uIhFW7x8bIYZfKOpVeI/2nEZ2OZTogH5y1eN7QDwYY+3fFxMSKhXbakeX3oLa8w==
X-Received: by 2002:adf:f30a:0:b0:31d:cf59:8d8 with SMTP id i10-20020adff30a000000b0031dcf5908d8mr4249546wro.14.1694079514150;
        Thu, 07 Sep 2023 02:38:34 -0700 (PDT)
Date: Thu, 7 Sep 2023 10:38:33 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v3] MAINTAINERS: generalize vm-event/monitor entry
Message-ID: <555f8369-f8a1-41de-978a-3c3e36cd247a@perard>
References: <bb6831bd-5846-5cfe-53fd-8274b24bdfb5@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <bb6831bd-5846-5cfe-53fd-8274b24bdfb5@suse.com>

On Thu, Sep 07, 2023 at 09:45:55AM +0200, Jan Beulich wrote:
> Replace Arm- and x86-specific lines with wildcard ones, thus covering
> all architectures. Uniformly permit an extra sub-directory level to be
> used, as is already the case for xen/include/.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v3: Unfold, for F: not being handled as originally expected.

Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 09:45:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 09:45:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597221.931424 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBZV-0002eB-5b; Thu, 07 Sep 2023 09:45:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597221.931424; Thu, 07 Sep 2023 09:45:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBZV-0002e4-2t; Thu, 07 Sep 2023 09:45:09 +0000
Received: by outflank-mailman (input) for mailman id 597221;
 Thu, 07 Sep 2023 09:45:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=luvz=EX=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qeBZS-0002dx-Te
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 09:45:07 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on20600.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 385b27be-4d63-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 11:45:04 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by BY5PR12MB5509.namprd12.prod.outlook.com (2603:10b6:a03:1d7::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 09:44:59 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::9a2:f8ec:7c75:fe95]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::9a2:f8ec:7c75:fe95%6]) with mapi id 15.20.6745.030; Thu, 7 Sep 2023
 09:44:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 385b27be-4d63-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RgpP+H4qPXZoAGn32eG83lgWpLlnQyTTP9mYfWlxNv2n9fciaF/g1WnqLt/ENEijIqAnpLf5BbElyjjLjXVovW70ndCZ3MJFqGNLMqk5azwH8eRMYT3nLUUCWPjft3OHAu7pOjk5dsL4nQ7fVDqo79RlrTNHLHVYXhV8QW7P0GNgF7UW+ZPZpIqrSgEzlIkvb8662tmjSgcaNm8mCGM+dxcRnPBusvEuX48eaa3kaHr9VTQnk75Xsl0xB+Q8cIIkGTOeEeAOqp0YWsZe8yPziCk34zhJk5wxlzKYR0W387RjAguol2ng8uC4mtTPUkwynGRWs8d5AZczg/qIyKCx0Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=tu50t3jLnEY7Y9H0YEJ2x1IetD+YDpbOU912fwBgPnM=;
 b=CfLSfo968kMzSboO7bHygdanikrvvWqqy7j77hunUrbmkG6SLBco/aIJSTVBSEGLBapc5L02IZKQvqrgdRFD3nnLy8/vMU8hPJRmyra84kWZMsb95BORT+lWzdluBdPkPqytZAvZewAWv//e4alRM+VDUciT02WbvV0cqt5/ziRqKIxAWddH8ObBS+3BfeN1Ocgc0J6v0L1mYlZAuGxdOoS2pjFknmX2tqTdgFHpSZcbMaQA90AAkdquCNayLsghWuStSCkxIhIdmxlDGTfqTSGqMkNMAH/Q9DqpWmQzSabbyGNQRhkMzlCLgWviEhAJLV7T7bUZp5ccsID+Xl4Zuw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=tu50t3jLnEY7Y9H0YEJ2x1IetD+YDpbOU912fwBgPnM=;
 b=HEPLiy8Vb/NuAuvJHEEi4Rkc9/Dgh1BTfSXrq1UD2UBKO2+1HxsE1mt++z6RXybUC0ir+oU3Vha71+PfueEckQmYmzfEoLNciSWz+lhjop7wf6LcQwpvoYaX4LPj/zAC0vyrXTztJ781ny2CkdXH3lwgCm3S90XGXc2NM6VaXrs=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <b86047a6-f394-8dc0-a4ee-87543d6f9204@amd.com>
Date: Thu, 7 Sep 2023 10:44:53 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.0
Subject: Re: [PATCH v6 01/13] xen/arm64: head.S: Introduce
 enable_{boot,secondary}_cpu_mm()
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Wei Chen <wei.chen@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Julien Grall <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Penny Zheng <penny.zheng@arm.com>, Julien Grall <jgrall@amazon.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-2-Henry.Wang@arm.com>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <20230828013224.669433-2-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0305.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:196::22) To SN6PR12MB2621.namprd12.prod.outlook.com
 (2603:10b6:805:73::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|BY5PR12MB5509:EE_
X-MS-Office365-Filtering-Correlation-Id: 94e56c03-38cf-4eff-071d-08dbaf871a00
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9L207Al3atjozZmKV2QkL3hUxCVv1G5hNvZAYF14lhBEBQhgOZpAuJrdcWpVs16d0zwB7f02TQHSMyqlOJdHv0zTLKLNm9/IKEArXAbJpXpIjRj8FDJOLTVQuuA4Kt7BV8D1CfPpPZnKN5ra6skJ9J+W1n3YzDXJv5OhIUbc81uzCnIF8i94VJtmk1KTWLUk/qt4vfU2rXxZU3bzIoGF7EZaSbzt+24VRTzc09ox49jkQEiz98n/+TenU/0jyceQVQgzYTxZlWNyiSv8OI0kzHGysX07z1Vt1P29mQ6MedDHdebUQeAD60TMX03H/2Vwf2l+80A4fy4zMsirkxDi4cGrhECg9DPGEJ8kdYHdrWwHKh3D2NToXgACR8kSChswHX2sqXO3dWOxeHtC4dE9HpmJeh5PfRncvcL7+pOca1LrUQ4KhWaGQOQb1ee+26xnWAfYO2EJviOQFQ3mOzH/7kVML183gLfhCTUCkyOKjvqSBkzl2xvIfJ+7KQwsaXtZr3kGM7vVrSRpu41bk9dqQ/ZbbE0oW5vcFxZcIaggLALQA5bG/3TR+xct6bA12uiIPd1OVDG+A1TtBhwFzyfv2TjC17YQ22SE5C9IS2DhNvcebo0FV9pC3Dj5xywnQAfWADqBwJjsWKr56OMMwC6IoA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(136003)(366004)(396003)(39860400002)(1800799009)(186009)(451199024)(83380400001)(8676002)(8936002)(4326008)(66476007)(66556008)(54906003)(66946007)(53546011)(2616005)(6512007)(26005)(6506007)(6486002)(6666004)(478600001)(41300700001)(2906002)(316002)(38100700002)(5660300002)(31696002)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OVR5OWZIdXlvcjdDZm9NYlVIVzJxd1FRSk5adW5hSjNRbXNWZEQvaFcvV0dT?=
 =?utf-8?B?SGFlbkx2NWo2V2pCNkd3dU1QS082THhYSXhoOWRCVUNweTBOY2VZd2dUNVNI?=
 =?utf-8?B?aXlYZUttMThYdG1xZFhVUHEzZ3QxdVM4YTBVNkFIdHFxRWRvbHpkdi8zVVQ5?=
 =?utf-8?B?Y2Zyajlnalo5NjgvLzhlQUtFbjd6QmRHemlPdXh5Y1lJSnBjWUczNitKeStI?=
 =?utf-8?B?QnFFS29BRElBeE8vV0Yxcml5VDJpanNGSWcrbnJYSXU2bVBjNjY0Z2tCQ3Bk?=
 =?utf-8?B?TkFVaDZwK1BDa1I4WUN5ZG0wdSttMUo5WmJnYWpPaUQ0L05pWnNHeHdTanVP?=
 =?utf-8?B?UGc4WmxwLy9sOE9YaHFIbUEzRmVEK1BzcGhjR0pYYUk3VS95R2s0WjlvSkNn?=
 =?utf-8?B?Y1kzQXdBMk5uUnNKU0loZzNkbHVYMTRGNVZ6V1BIU0daVVZyWlNKTDYxYWJa?=
 =?utf-8?B?bThOQlQvUzhycmNaSkxpS3F2UzVTQ1dmc2tMcGxSWHZFcFFSM0ZGOEIzR2xm?=
 =?utf-8?B?TTdWN3JiRmdnOG1xenJPNE56THJLZDJ1UzVkYXVyKzlDdnVMZ2xobC9XMHgy?=
 =?utf-8?B?Y1R6ODFJU1Bvb0ZUN1lJcHlhTVVENWplaXY4bFUvbEtma2ZYY3pFL0dlSEZv?=
 =?utf-8?B?dU9LWVlUNlhHRHJ0TjBnUk5MNFFaSlprbmxXLzFOWUhGclJmOStra09sNi9J?=
 =?utf-8?B?QVdOTzN0cnNPQ0RPd0hsS1dqQk1Qa081QTNScURPZ2FlTkdiMjEzVGhxZzFZ?=
 =?utf-8?B?WUR1dUx4RHNhZU1jZmJLbGJYeklkbDdqRGIrSnZwQVg1S24yVURXaHpyWVdl?=
 =?utf-8?B?NUd4SjhNY3lxQ0d5VGNtS3BzUTZLS3VaWkN2TUhSVFJTRW1OakVGY0RyUmxB?=
 =?utf-8?B?ZVRKNjdLek1qWEhQTnVzU0ZJZHpnVFk2NEI2cUs0bGtNMXlBWTZONlNMYVhU?=
 =?utf-8?B?bmRObWdIRFlEOWZSSGFBOGJ1b25QMmRhTmQ5ZW1sU3JXeHlIT2V4UnAvc3Fl?=
 =?utf-8?B?Nno1V0xTMFNMZTQ2UzNqRnlHbzN3NWlqSWN3dFV3R2lCdzFOYkkzSUtBcjNZ?=
 =?utf-8?B?MEZvWXh3T2lCRHNYWGNaWU0xVkF4RGJXdC9yVzAxeEJjeGZjc09hMHNoMFcw?=
 =?utf-8?B?VXkrNHpxcU11ekp2dlhwdFZWSkdqYUVJdmVocnFPSWtXeGEzb08wYWQ0d0o4?=
 =?utf-8?B?MWRqTUZObVA2TDZZVG9XQjhOUWZhY1pRQUZObkNuNmRpcDMrUzlYcmFGK0dy?=
 =?utf-8?B?b0dDK3BpTmNIdldObm9HRG1kWXlKdWJRTG1PSWhrc0pOVUE5RDdUR1k2L29G?=
 =?utf-8?B?R1NUaUtJaHNTbjFpR3hPWDlvYzljdGdBZGRXRXp5NGdPZDBqbDROVkx6cjlv?=
 =?utf-8?B?WmhyQ3MyZmtJdlZTcjI5bXpzUUZ1SllCbVB5bDRPZjFhanlQZitwVXFjSTlV?=
 =?utf-8?B?WnVPLzBNRTlGQ253NkxOMW5VeHkyUk5sTU5rWEoyY29Xam9mUVNPdk16anly?=
 =?utf-8?B?dlVKUXZqUHZJTnZLRTlxM3BqcHF2V0FJbEEzcElxRTJJc2k0NkJxRWRLNkQ5?=
 =?utf-8?B?cm4zVG1vUTFXMHllVkFhZklVVGpaTWdNMnkyY2plTUFzZnpYMG1HQ21zOFBr?=
 =?utf-8?B?UWNDWHFQU2tJOENkbFpIRVRTQ3hPaW9JUThNK3NlMWJzbnlQdkwxY0o3OFpW?=
 =?utf-8?B?SXNsR1pVdHF4VlZoN1FCNTFlM0Q0ZkRxZ3YzRE5yUk16RFQ0Z2laTWNLNSts?=
 =?utf-8?B?YThVbE5WU1U4VFZSTi9EcksyQ3ByYTJyK3J0cXJ5Z1l4ZnVrTnNKYVZzQStm?=
 =?utf-8?B?R2p3N1Q3R1BDVzViUnZtTlBEVnVYZUtSejZxN3NrQ3h2dVdGVlBGMWpHdGNQ?=
 =?utf-8?B?Rno0WjhJNW04Q3VJSTg4L0d6YWhtR2tWVk0ybkZ6czBoSGNVbmNqUXh0YlRQ?=
 =?utf-8?B?c3oweVkrVTRhbFd4SG5XdUhZVWgwSVg1aDNpY0hOSnZFY25PK2ZTUWFORGl0?=
 =?utf-8?B?bjJxKzRTeHVFTHJFdzZkSlBOT0hqTDUwdklHcndpcWUwQ0FaYnRvSFEzMHFL?=
 =?utf-8?B?RjNkMFVJd3V2VEV1OUEwVjVCMFF5Yzk0ZTlZUUZUK2VDMVY5QUJ4M0lXL3Z1?=
 =?utf-8?Q?ZSlAKgkLODaB5twCvY5PXHqhg?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 94e56c03-38cf-4eff-071d-08dbaf871a00
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 09:44:59.6041
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: gFIkKW+414j1w90xbSXfDp7StWhnRhqlUm9662Dvtx7uqXgIuWITaPRs+ukYzEM15XkVuxQrk4jewzwcTmJ/wQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR12MB5509

Hi Henry,

On 28/08/2023 02:32, Henry Wang wrote:
> CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email.
>
>
> From: Wei Chen <wei.chen@arm.com>
>
> At the moment, on MMU system, enable_mmu() will return to an
> address in the 1:1 mapping, then each path is responsible to
> switch to virtual runtime mapping. Then remove_identity_mapping()
> is called on the boot CPU to remove all 1:1 mapping.
>
> Since remove_identity_mapping() is not necessary on Non-MMU system,
> and we also avoid creating empty function for Non-MMU system, trying
> to keep only one codeflow in arm64/head.S, we move path switch and
> remove_identity_mapping() in enable_mmu() on MMU system.
>
> As the remove_identity_mapping should only be called for the boot
> CPU only, so we introduce enable_boot_cpu_mm() for boot CPU and
> enable_secondary_cpu_mm() for secondary CPUs in this patch.
>
> Signed-off-by: Wei Chen <wei.chen@arm.com>
> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> Reviewed-by: Julien Grall <jgrall@amazon.com>
> ---
> v6:
> - Add Julien's Reviewed-by tag.
> v5:
> - Add missing "()" in title.
> - Use more generic comment in enable_{boot,secondary}_cpu_mm() to
>    mention function will return to the vaddr requested by the caller.
> - Move 'mov lr, x5' closer to 'b remove_identity_mapping'.
> - Drop the 'b fail' for unreachable code in enable_boot_cpu_mm().
> v4:
> - Clarify remove_identity_mapping() is called on boot CPU and keep
>    the function/proc format consistent in commit msg.
> - Drop inaccurate (due to the refactor) in-code comment.
> - Rename enable_{boot,runtime}_mmu to enable_{boot,secondary}_cpu_mm.
> - Reword the in-code comment on top of enable_{boot,secondary}_cpu_mm.
> - Call "fail" for unreachable code.
> v3:
> - new patch
> ---
>   xen/arch/arm/arm64/head.S | 83 ++++++++++++++++++++++++++++++---------
>   1 file changed, 64 insertions(+), 19 deletions(-)
>
> diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S
> index 5029013a14..f25a41d36c 100644
> --- a/xen/arch/arm/arm64/head.S
> +++ b/xen/arch/arm/arm64/head.S
> @@ -325,21 +325,11 @@ real_start_efi:
>
>           bl    check_cpu_mode
>           bl    cpu_init
> -        bl    create_page_tables
> -        load_paddr x0, boot_pgtable
> -        bl    enable_mmu
>
> -        /* We are still in the 1:1 mapping. Jump to the runtime Virtual Address. */
> -        ldr   x0, =primary_switched
> -        br    x0
> +        ldr   lr, =primary_switched
> +        b     enable_boot_cpu_mm
> +
>   primary_switched:
> -        /*
> -         * The 1:1 map may clash with other parts of the Xen virtual memory
> -         * layout. As it is not used anymore, remove it completely to
> -         * avoid having to worry about replacing existing mapping
> -         * afterwards.
> -         */
> -        bl    remove_identity_mapping
>           bl    setup_fixmap
>   #ifdef CONFIG_EARLY_PRINTK
>           /* Use a virtual address to access the UART. */
> @@ -384,13 +374,10 @@ GLOBAL(init_secondary)
>   #endif
>           bl    check_cpu_mode
>           bl    cpu_init
> -        load_paddr x0, init_ttbr
> -        ldr   x0, [x0]
> -        bl    enable_mmu
>
> -        /* We are still in the 1:1 mapping. Jump to the runtime Virtual Address. */
> -        ldr   x0, =secondary_switched
> -        br    x0
> +        ldr   lr, =secondary_switched
> +        b     enable_secondary_cpu_mm
> +
>   secondary_switched:
>   #ifdef CONFIG_EARLY_PRINTK
>           /* Use a virtual address to access the UART. */
> @@ -748,6 +735,64 @@ enable_mmu:
>           ret
>   ENDPROC(enable_mmu)
>
> +/*
> + * Enable mm (turn on the data cache and the MMU) for secondary CPUs.
> + * The function will return to the virtual address provided in LR (e.g. the
> + * runtime mapping).
> + *
> + * Inputs:
> + *   lr : Virtual address to return to.
> + *
> + * Clobbers x0 - x5
> + */
> +enable_secondary_cpu_mm:
> +        mov   x5, lr
> +
> +        load_paddr x0, init_ttbr
> +        ldr   x0, [x0]
> +
> +        bl    enable_mmu
> +        mov   lr, x5
> +
> +        /* Return to the virtual address requested by the caller. */
> +        ret
> +ENDPROC(enable_secondary_cpu_mm)
> +
> +/*
> + * Enable mm (turn on the data cache and the MMU) for the boot CPU.
> + * The function will return to the virtual address provided in LR (e.g. the
> + * runtime mapping).
> + *
> + * Inputs:
> + *   lr : Virtual address to return to.
> + *
> + * Clobbers x0 - x5
> + */
> +enable_boot_cpu_mm:
> +        mov   x5, lr
> +
> +        bl    create_page_tables
> +        load_paddr x0, boot_pgtable
> +
> +        bl    enable_mmu
> +
> +        /*
> +         * The MMU is turned on and we are in the 1:1 mapping. Switch
> +         * to the runtime mapping.
> +         */
> +        ldr   x0, =1f
> +        br    x0
> +1:
> +        mov   lr, x5
> +        /*
> +         * The 1:1 map may clash with other parts of the Xen virtual memory
> +         * layout. As it is not used anymore, remove it completely to avoid
> +         * having to worry about replacing existing mapping afterwards.
> +         * Function will return to the virtual address requested by the caller.
> +         */
> +        b     remove_identity_mapping

                 ret

I guess you also need this ^^^ (Similar to enable_secondary_cpu_mm() ). 
Otherwise PC will not switch to the caller.

It will again invoke remove_identity_mapping() (which is redundant) and 
then jump to the caller.

- Ayan

> +ENDPROC(enable_boot_cpu_mm)
> +
>   /*
>    * Remove the 1:1 map from the page-tables. It is not easy to keep track
>    * where the 1:1 map was mapped, so we will look for the top-level entry
> --
> 2.25.1
>
>


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 10:00:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 10:00:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597229.931434 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBnp-0004pd-EZ; Thu, 07 Sep 2023 09:59:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597229.931434; Thu, 07 Sep 2023 09:59:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBnp-0004pW-B4; Thu, 07 Sep 2023 09:59:57 +0000
Received: by outflank-mailman (input) for mailman id 597229;
 Thu, 07 Sep 2023 09:59:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeBno-0004pQ-17
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 09:59:56 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20615.outbound.protection.outlook.com
 [2a01:111:f400:fe16::615])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4b5baeb4-4d65-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 11:59:55 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7643.eurprd04.prod.outlook.com (2603:10a6:10:203::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 09:59:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 09:59:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4b5baeb4-4d65-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JdNxLZaqspK+JqncFPfgTr3murO6B0zu73SdDZDLIQKUAqExQ/fXQLFrOA8+Fv/n5k4RdElWdh+BhdRgxeWwaUOQRUFqbVBZX1qwTynyJcgtIKPp0zJs8GLWhKO8eiVZzXTGvOYjtd7pKmIHVrBHQHsdLKX3aMhl++idCE9r65L0rouT5t5oFGumsxy9Zlet8R1WU5Levk7I9oz74pdTT1iIBPIdR+eyTT8II2qz3RpKJnff5MxAyEo8ZAhG9pKnANqlChm5obi6vMZHRJwfRbZnyBE2f1DYPGfb8KQxDU5U1dvmPPf5d086PJkAE6We9KRRA90QBa0FQixlZApqWA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gEO4ezKNwE08bJUzrct65q1P97fukneA+cDWmlvtXBc=;
 b=ORVyfMxe5nsBRqnJk47UxXuzt56it2/+ck/CeC0SESQsrio8Z7z5Yp64JZEab6rNGYaWJbC9FE+ZKul8AjDXTX/P52EF5xvJWEzRGlKjJP2Sxe4UCjZFSrj4QtTQVqLlbRNe4X4J9MB0o89wpJwOdaQbNbQ74Ql4flLLijPTRlf4adhAnJ16izF45hF7chUEfCFTB/wi20D/hfsO57P4VR8fxCwEeuKHGJ7b/yr7egPbAiONC8xmtzd4HUq29cyUuSIxzzu3bU6X4GuU2Hkbm8EoZHPMCjWXwX0woIc9cAuTULD6lUGmEy01bz1jKi73ojyI19SNt5ePF7G+X9XJjw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gEO4ezKNwE08bJUzrct65q1P97fukneA+cDWmlvtXBc=;
 b=JTJxoAy8ElDDE3hLxK1149aaUG27QvrCBdmF5LD3RMkPl2mbWroqhBp+cG0YHeh0+CozuIixSWbQHVmJZioFNNXUNiloEwHfDfkdwCltXMi9PYFqiYOi24GGBMO2UgkO6ak4VNXrGX9uGjkyAtEFdAqrhqqRiiW+CWD/LXhAm9RMxzgUsMuluUlpRvEMPF6o8EbcqosovxiBQqNZWdsKFqagBLjb621xqgx/PWn8eiGu72UGYqRHXeFpFOB7SExF1MXXdJ5kJ9aiLnyOCBToseCSZ8WP9UyLIoneHMFBeIj8EcoLtxT1EAM3U1F2aAq0sgZzEYYjzv8eHCdPuotbzw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <687a1039-5f8d-bee2-50ce-1fa80ef31f19@suse.com>
Date: Thu, 7 Sep 2023 11:59:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v6 2/2] xen: move arm/include/asm/vm_event.h to
 asm-generic
Content-Language: en-US
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Cc: Anthony PERARD <anthony.perard@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1694078544.git.oleksii.kurochko@gmail.com>
 <47e12756edfefdb5ff1112ae6b78ae95baadbbef.1694078544.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <47e12756edfefdb5ff1112ae6b78ae95baadbbef.1694078544.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0244.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:af::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBBPR04MB7643:EE_
X-MS-Office365-Filtering-Correlation-Id: a81d6aa3-307a-4de9-40be-08dbaf892db2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	63TjGjDxAr+KnVuC1eOVHYLIE+IAzq0Na5rQNPhrMtFduYRZUSHQkX1+eLSs9ahXYyY9AkqVy4dj066d0RawEPbqodugYB9gFkvQD2kjoQASLDIAJo9wqpBfMQKPvrs9BQ03NaIxc9VL8+5hrYx/gZwx8hVIy2qRnSVt3GlBIxtNKUvDOJGSLReBeGMikB/rvM0WbfgTKm/VD4UNKpg8B5G2RE7LVIiddA93I0UC61vvRYJn5CWjaqzhl3oYvVYeKr2Z4aLeRGb+8bOvwVqAtQRRvpEj5moWxlvLgsu6gCnUXwopieS0OHkpD7rw0UAAtFiHiooskr3jMYWcZSuAoPzyCtRrC3yscKFyAFeSaKNMVNUIEnB5BvlIJJkD7oLJ40+9ZwFfAdj4UxaDIimQkkQ/GDTuUSbpAzO+Tylpz97mneczPJl3Nsf+c+j4CnmDux3iL/VLP9jCRI/0h5JCsf3xjpce9sopsscw+o25tBLhPTtSuHuLzl1dao1s/eMWxjGRSU/ky+hXp+c2cRmLo7HMKMen1SXbcEU3e1nOuGNGUr9ECCHkjefcJCc1ip/kE7xnZ9cRjRKmVLqGJ5AOT5xpJjM2KHI0dKcsLlhLH2tYo68s3+m7Bax3YEiyGQQu9H6phxUPzVG/hjp/S9Zr+W+hZA1oOake+updtkipOmw=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(396003)(376002)(366004)(136003)(1800799009)(186009)(451199024)(4744005)(31686004)(36756003)(5660300002)(83380400001)(31696002)(41300700001)(7416002)(4326008)(86362001)(26005)(8676002)(53546011)(8936002)(6666004)(2616005)(6486002)(6506007)(6512007)(2906002)(478600001)(38100700002)(54906003)(6916009)(66946007)(66556008)(66476007)(316002)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WGRXUVJLY3FLWURGNXVJUDdmTzFkVXk2OFNBYkcwTFRtVXA1L1Y2UlNDeHN4?=
 =?utf-8?B?d3ZRQWN6NnNjZUVGTkZXYUczTFd0dCtHOXpPMXpQWkZSVThvVnZ3RVkxMzBU?=
 =?utf-8?B?akpveUkrMVVUUTZRb1Q2YURGTG1LZ2MrUUw0a1JDbHFBdXhNRlVKNEFCREpV?=
 =?utf-8?B?OWZtWTYwK0dJczVKNVpaNVhHQ1pGa0ZjS0t5MTI2NkVjRlJPdU9zTzFaMkMz?=
 =?utf-8?B?MS9Db3FtNllyWHQrZlBDdWtYR09UcHgxQ1QvWDQ3ME1JRXpjbXJLajVBTzY5?=
 =?utf-8?B?WjZFdmNSV3pQN3VSM2hXSmhsa2lVWnVLTkxJU1crZ1dwOXBsWkd1K0dKQld6?=
 =?utf-8?B?T2VBSEFrcWhoUUgrdjZ4RC8zNitNS2Evd1lUb2c5SnJFWHpjUXo1NHZmM24w?=
 =?utf-8?B?aTRWVnVoNE5YZjdYMTM0NFdoQ2R2VjBlc2xwVCsyQXJSb1dxVWlxbnZGQUxu?=
 =?utf-8?B?WUhSOXljcFU3YUNBWGhSNFZaN2JOaUFDVVlpUk85a2xKejhCakRYYmpqdWh6?=
 =?utf-8?B?bHRWMHJENjBIVEVXNkprdjY4V3BIbGowTGtiVXFKWlF3VXdkQ0pTK1hQUGwz?=
 =?utf-8?B?c1VHT1FDb1A5TDN1YndyTmxtQjNUUittUDQxTEMrajYxdlJhWHZJbFF6U0wr?=
 =?utf-8?B?VW94Z1lSTHluNmtsR0ZiQWIzODVvdytKaFBHNmFTTUJrcW5FbDFKcC9VUVV4?=
 =?utf-8?B?N1pTR2ZIcUNkYUYrUDZuMjNmUWlob25nc3YySVhVTXh3NWpodnFZbDZOZTV0?=
 =?utf-8?B?OS9lQmU2UlBNUEJiWUlGSytMOUJRN2hvb1g1Si8xMVVPeS80QW95NVlmYVBD?=
 =?utf-8?B?ajZkbUVVNzNhdlpNd1BMOGFvZ01vSXhPMnlZTnRPWXZsMW5aSWIvd1VrMXNJ?=
 =?utf-8?B?a0YwMWZRNFh1RHFwOTNtUlUvYlFhWFNyVlJaNmpMdnAvZFNVNjFxcy9PMG16?=
 =?utf-8?B?cGtIQ0lEanA5cVJSeHd0dDZ1V2NMalhTR2hSejZqVTFCU0JWNHd6MXVicm5J?=
 =?utf-8?B?dDV0b1ZTS0tjNHphRW1GZzdjOWlyWjZxQ1NQWVU3bStYQnQvemhQbUpwOGxQ?=
 =?utf-8?B?d3ZIdk5LTk9keEFQQUFOeGhFeVJyQllGanlBTmpFRW1IdXMydlVvN0Vxc1Z5?=
 =?utf-8?B?YkVrTnNLM2NNeUtQb3pBSnBWbEIybXZLeERDNTF1ekEzVlRDcm9OcFlmM3ZI?=
 =?utf-8?B?WExIRTBBU3RWSEFFSFcvQmRUZk9wQS9LSW92dnNTK29aZ0d3QXh3ODYvQWFy?=
 =?utf-8?B?NGRzS2ZlK1RrREoxa1Z5OThra2U2R0pwQmxSUFN4ODdqS25XRzFNRWVCenhn?=
 =?utf-8?B?bUZNQW9zWE0zU1l3YnFFOTJ1b044NUhJRDhmM0xUVHdlNXJVQXFUdzBNd3Jx?=
 =?utf-8?B?WDN3L0dUalZhbE9EV0VFNGlGRVFwR3h3WVBHYmMvbFpuVGE0SDFiS25VT1kr?=
 =?utf-8?B?SWJ0OFRuMGhTNlYwRGJ1NkVlcCtXV3VaSTlpendnOEs5SFpkVjlmVDhPN0pR?=
 =?utf-8?B?bzlsRUpteU92NU0ySDhkZTRLTEhwYmZaQVpEb0JEZkYzbGgzMEdIMFp5VDA3?=
 =?utf-8?B?SWhrTy9WajZaWjIwc1Zub2F0YjBrUEozaU4zV2dJMW9ycEV2cG1QMVFzbFdP?=
 =?utf-8?B?dlRhTnBIQmh3Y2NkOGpmVFdqekVDNStRS1NaMWIvZndjM3NOWUs2R0Z0THgv?=
 =?utf-8?B?Tk1vbjMyODRSd2VCVDcwelE2L1M3aFpERGJua1J4OExKQ0xDZ0FVUmpQTk1i?=
 =?utf-8?B?cEdYaHRTNm5LK0swMFhkQmdDVllnWE9NcVd3bmRqc3hQYm5iZWs0SU0xYzhE?=
 =?utf-8?B?ZWsrT1Q0cjM2Q0x4WWs3NFBjRVRYdEllcU4rbGxJVkJjQjZHa3czT0lCWmNR?=
 =?utf-8?B?anhHd0pYRFZNZEI2cnZsWmtmV0htdjJqRHdnOEhMUVovREtSbmlXemRBOUth?=
 =?utf-8?B?aXdPQWdpZWg2WUJ0ZWVmdnBDeGZleDhTRUdFSEwxeDBTcGtMUGpuVnB0a2xo?=
 =?utf-8?B?akQyS1ArOEpRZTRxb1pxbk9tWDJKcWhOMkpwaUZVZU9DNXhjWCtFSFBmOXF5?=
 =?utf-8?B?QkQwMUY0R0Erb2hVcDJNS0VIUFg1aWZEWmJqdkpWa2h5RHQyVnkwYWRSSWNS?=
 =?utf-8?Q?2WG7u/ufNNzSONsYTpPLkg/5A?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a81d6aa3-307a-4de9-40be-08dbaf892db2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 09:59:51.6052
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xdMi7g1PV1PnQ21G0VbpnIdPnEWv529QCa5iCE7Io5w8wS2rwzuuNfwwvZlKtX7Aj49MWvjGWO/Lf2TnC70uAw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7643

On 07.09.2023 11:32, Oleksii Kurochko wrote:
> --- /dev/null
> +++ b/xen/include/asm-generic/vm_event.h
> @@ -0,0 +1,55 @@
> +/* SPDX-License-Identifier:  GPL-2.0-only */
> +/*
> + * vm_event.h: stubs for architecture specific vm_event handling routines
> + *
> + * Copyright (c) 2015 Tamas K Lengyel (tamas@tklengyel.com)

Tamas is the maintainer of these files (no matter where they live), so
please make sure to Cc him in order to get his ack.

> + */
> +
> +#ifndef __ASM_STUB_VM_EVENT_H__
> +#define __ASM_STUB_VM_EVENT_H__

Nit: s/STUB/GENERIC/ ?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 10:08:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 10:08:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597237.931443 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBwJ-0007As-BT; Thu, 07 Sep 2023 10:08:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597237.931443; Thu, 07 Sep 2023 10:08:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeBwJ-0007Ak-8d; Thu, 07 Sep 2023 10:08:43 +0000
Received: by outflank-mailman (input) for mailman id 597237;
 Thu, 07 Sep 2023 10:08:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=M1vp=EX=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qeBwI-0007Ae-M0
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 10:08:42 +0000
Received: from mail-lj1-x22d.google.com (mail-lj1-x22d.google.com
 [2a00:1450:4864:20::22d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 85828378-4d66-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 12:08:41 +0200 (CEST)
Received: by mail-lj1-x22d.google.com with SMTP id
 38308e7fff4ca-2bcc846fed0so13718361fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 03:08:41 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 f12-20020adffccc000000b003143c9beeaesm22808246wrs.44.2023.09.07.03.08.40
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 03:08:40 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 85828378-4d66-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694081321; x=1694686121; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=SQ7cbfce1+uotZKX8z4AhwBcLc/vYiFWCQ+B7u0cbio=;
        b=rPPOp0cdB5SthnFaWwBpjiOFXIn0mkHUpOl5Tabq62Lvf7p3jtnbTR6aMY0OOVhC2u
         p+N87wEbGFU8Mo0z7N+FwfkJQkRAM/TcNzrGQdW+Cqtu75UYSwl6X1xmy4wmPFXqkQv2
         fns3Sk0BoZUry23nUvj4foxTqmrVic79U8Ia8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694081321; x=1694686121;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=SQ7cbfce1+uotZKX8z4AhwBcLc/vYiFWCQ+B7u0cbio=;
        b=Iy7JN3CzHpNJema50qhcoprDe2kJjuroOgecYIQ6SlhqQKwCRgJKV4Tov/MSa7a8x7
         LhaWtjSeqUcIs6qRo1bRrIe4XsAe7pwS68d9bCm60AmmY26o+AUnnX7FvLnX+9m1K9gD
         PIofwbzWG953eOFn9/T0rxjq3rT/JvVVX3kZ3SPOa49gZbpQzXGfLs4D1MHk31EG7+Y8
         5jzI/rnzTjogFeZj5CFfuX0ENwrhXZnx5YDeajJNiZLCOH45OAqaR9FDqf/ZnzvKUC7q
         Hcg3AvkqIy68yQFChYXuU41UZs7kuDKlTlw0swTcho3qx9Z/7Np+Q13PWxnGq8uUlOkh
         qePQ==
X-Gm-Message-State: AOJu0YyS5p8tFOLiiAQlLhVnEk6Xz1TT9zNhVe5LGaF/cvons0qBHIZG
	tG3BXKz2WuwINHTHoFYkKhMHIw==
X-Google-Smtp-Source: AGHT+IGgEmnu1qCHLP2MZ4XHiu/FcQAoIh9W7W8DXfoppHbzrlXCYdsUi6KIJNvOXBGpAfG7Bp+Whw==
X-Received: by 2002:a2e:9047:0:b0:2b6:df23:2117 with SMTP id n7-20020a2e9047000000b002b6df232117mr4443683ljg.43.1694081321155;
        Thu, 07 Sep 2023 03:08:41 -0700 (PDT)
Date: Thu, 7 Sep 2023 11:08:40 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Cc: xen-devel@lists.xenproject.org,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v6 1/2] xen: asm-generic support
Message-ID: <11cca5d8-5456-4908-b1be-1664f39fb134@perard>
References: <cover.1694078544.git.oleksii.kurochko@gmail.com>
 <cf5f446915bd5c8980beda22718efff32678e16b.1694078544.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <cf5f446915bd5c8980beda22718efff32678e16b.1694078544.git.oleksii.kurochko@gmail.com>

On Thu, Sep 07, 2023 at 12:32:56PM +0300, Oleksii Kurochko wrote:
> diff --git a/xen/scripts/Makefile.asm-generic b/xen/scripts/Makefile.asm-generic
> new file mode 100644
> index 0000000000..92a3a741c5
> --- /dev/null
> +++ b/xen/scripts/Makefile.asm-generic
> @@ -0,0 +1,53 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +# include/asm-generic contains a lot of files that are used
> +# verbatim by several architectures.
> +#
> +# This Makefile reads the file arch/$(SRCARCH)/include/asm/Makefile
> +# and for each file listed in this file with generic-y creates
> +# a small wrapper file in arch/$(SRCARCH)/include/generated/asm.
> +
> +PHONY := all
> +all:
> +
> +src := $(subst /generated,,$(obj))
> +
> +include $(srctree)/scripts/Kbuild.include
> +-include $(src)/Makefile
> +
> +redundant := $(filter $(mandatory-y) $(generated-y), $(generic-y))
> +redundant += $(foreach f, $(generic-y), $(if $(wildcard $(srctree)/$(src)/$(f)),$(f)))
> +redundant := $(sort $(redundant))
> +$(if $(redundant),\
> +	$(warning redundant generic-y found in $(src)/Kbuild: $(redundant)))

This warning would need to say "$(src)/Makefile" now instead of Kbuild.

Beside this, patch looks fine to me:
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 10:38:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 10:38:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597243.931454 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeCOv-0004NP-G8; Thu, 07 Sep 2023 10:38:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597243.931454; Thu, 07 Sep 2023 10:38:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeCOv-0004NI-DW; Thu, 07 Sep 2023 10:38:17 +0000
Received: by outflank-mailman (input) for mailman id 597243;
 Thu, 07 Sep 2023 10:38:15 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=M1vp=EX=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qeCOt-0004NC-RL
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 10:38:15 +0000
Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com
 [2a00:1450:4864:20::429])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a5a8cd88-4d6a-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 12:38:13 +0200 (CEST)
Received: by mail-wr1-x429.google.com with SMTP id
 ffacd0b85a97d-31c3df710bdso764587f8f.1
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 03:38:13 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 d1-20020adfa401000000b0031980294e9fsm19543608wra.116.2023.09.07.03.38.12
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 03:38:12 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a5a8cd88-4d6a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694083093; x=1694687893; darn=lists.xenproject.org;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date:from:to
         :cc:subject:date:message-id:reply-to;
        bh=RvLQQMgV3ZKSkuVR7fY6hQHnD6aREmASDFLvsEn+wk8=;
        b=o+icErqTcLnLf+8cQ0Yl0DBu/WBVmCBOFcncptFzQKFygaJuQUXjFuh4FNDxDtGWh2
         1BGtVMrYqV3Dtu5+ZErRRE5MUQXZtiBw1pR6U1rCC6EGZ1TuOt7s9IPRNYOgCy4Muq1q
         0RTBTzwinNRqVr+87d2totogLchv6tu5tw8lw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694083093; x=1694687893;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=RvLQQMgV3ZKSkuVR7fY6hQHnD6aREmASDFLvsEn+wk8=;
        b=RUExNflBAnkoO3TCKZMgf+hBRnIxbj2/Cwk5G8BiPYjr+pSMYZ06RZBTDEQSKZrFto
         vlSBGgG4gfG7qYQxQNHgPkq9ZN2RlwCg7sKUsK7oaFpoaMZK92OdmpoSNgn3u1Xd7Dwb
         700vPSqx/W7GrijDBOhEWUka4bDauQbpZPJb6nxNL0oW+qpsxpvOdcser84QIa9sz3GH
         yQic8PS8+sOhopLaMCAXDFZKxVk6r5g1V2li5U8yQu9wYfvPMVX2zPxsqzEyj+qEPAly
         JjdsF97y46DHnMwjdMeBa2owPbBr0XeFNJSyVb7dJNEeHDbnaVmUt4yqW0Dwyog+pWsG
         6wiQ==
X-Gm-Message-State: AOJu0YyutvtkUwKZlTbSVz12pG45dhKnxX5hgSNumHFYZEMHn2No8q2f
	s4xLXd9GvT9VDhmopTDyTKrpMw==
X-Google-Smtp-Source: AGHT+IHtL+gfAKVpFjUIeutxr7VpvhN5x/yvQYFZxbECiavU+rlI5/fJABri3/rx7my/rxcZstLpHA==
X-Received: by 2002:a5d:460a:0:b0:314:1fd7:188b with SMTP id t10-20020a5d460a000000b003141fd7188bmr4254696wrq.17.1694083093236;
        Thu, 07 Sep 2023 03:38:13 -0700 (PDT)
Date: Thu, 7 Sep 2023 11:38:12 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, andrew.cooper3@citrix.com,
	JBeulich@suse.com
Subject: Re: [PATCH v2] tests/vpci: install test
Message-ID: <8596151e-e30a-4df3-85eb-b4c64ede7993@perard>
References: <20230313121226.86557-1-roger.pau@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20230313121226.86557-1-roger.pau@citrix.com>

On Mon, Mar 13, 2023 at 01:12:26PM +0100, Roger Pau Monne wrote:
> diff --git a/tools/tests/vpci/Makefile b/tools/tests/vpci/Makefile
> index 5075bc2be2..11f1ee7126 100644
> --- a/tools/tests/vpci/Makefile
> +++ b/tools/tests/vpci/Makefile
> @@ -1,27 +1,37 @@
>  XEN_ROOT=$(CURDIR)/../../..
>  include $(XEN_ROOT)/tools/Rules.mk
>  
> -TARGET := test_vpci
> +TARGET := test-vpci
>  
>  .PHONY: all
>  all: $(TARGET)
>  
>  .PHONY: run
>  run: $(TARGET)
> +ifeq ($(CC),$(HOSTCC))
>  	./$(TARGET)
> +else
> +	$(warning HOSTCC != CC, cannot run test)
> +endif
>  
>  $(TARGET): vpci.c vpci.h list.h main.c emul.h
> -	$(HOSTCC) -g -o $@ vpci.c main.c
> +	$(CC) $(CFLAGS) -o $@ vpci.c main.c

This now needs $(CFLAGS_xeninclude) to build, so
"CFLAGS += $(CFLAGS_xeninclude)" somewhere in the file.


Also, there's another change needed as we've got this error:

vpci.c:344:29: error: ‘dom_xen’ undeclared (first use in this function)
  344 |         pdev = pci_get_pdev(dom_xen, sbdf);


Otherwise, patch looks fine to me.

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 10:48:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 10:48:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597250.931464 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeCYr-0006Ir-DY; Thu, 07 Sep 2023 10:48:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597250.931464; Thu, 07 Sep 2023 10:48:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeCYr-0006Ik-Aj; Thu, 07 Sep 2023 10:48:33 +0000
Received: by outflank-mailman (input) for mailman id 597250;
 Thu, 07 Sep 2023 10:48:32 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeCYq-0006Ie-1k
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 10:48:32 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062a.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 14b62bc9-4d6c-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 12:48:29 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB7162.eurprd04.prod.outlook.com (2603:10a6:10:12c::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 10:48:28 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 10:48:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 14b62bc9-4d6c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LPIAmrQkZ88QCJS6EmUdJoLWxBvKKpMVoQ9Zf0tIsCUmj8pAEBQgSZw4RKk6okY1UEC0s2B+NUnQpeCxznLWynbbtbWKdAz/55CU8qwr6ES9IWeZZILkUDvb4DPZiSeEL3j9kyl3McGzBBcXvklVVs8FoCDuUOQdSGaECJGgD0izDnS0nSpGQy4DwPZgw89RptBS61BHEcdnnH4luqA6UF5RLyIEXrKEpP2mKbmr3FiJqv9ekgja6jg+MDTKrnLRdwF9yXYsVmf66PdKyHOb+V3+JPT7z01XK67934X4wnC94/BdEltLix4WiE0wFFbo9X15r2HfcB0FH3xp5w3u/A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=j26Dccb4Gznq2tdMBzA/AAZgU2iq5DM14sZoKN40VOc=;
 b=mjUyx2T0rVLH09vPtpPQPuu2M6i9PrfTWznCDYCD6MFs9oPyyU1O6Vkk6g/oHoA3OcqtaDMRa29xan4tNOU4IlQ9gjc7x0a1IxjdFBAvaQFTl/9zpWR32xJ/Wp2Y/vK1JtDO3dHD11tluFISN3CRY9WhwsCX6ztjtEZR8XSYdvMdoHitNxXh+8qqasfxBqwn2NsAVOZhdw+AcURyszY5055ktckjyglHioG3s6bY5MhvMwZkqiUCLM09tl5ZMKM7vut8VG5J+pKvZxIwtqWvjtK9oPXwi+M+zE514DKtPR2BJgj5lgSDCAC9TTgLcUrChUxGD33LwQ6g8JG/dWwBHg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=j26Dccb4Gznq2tdMBzA/AAZgU2iq5DM14sZoKN40VOc=;
 b=b/LWL8wlVxo4wR5bamiPjMiIJXQ0djaWdVqRoYhigHE69DEEM83qbtdS9DZsr3ATr+e6ONLhKYG3pyBpSB70KhAku4RmoLaEhuWpRWz1ELQ5v6fcITLOcBeJs9BS4JXCoup6S3nsnwO1C3nasBq5IqyaOM3l8zSqHr1LQZMXYsIX5D8pAeQdxWhZlhcP1j1HJ0R04ikvGN+lL4a3kH6f9CS37Gv7syy+uRd1eQf1pAj3LiZB4j75mNX+Try+Y7QYRNtdTaqdRpahJTfvIZRjpzTUybhHnvklYg7+e/N6LaNZRqkES0L/ffs7VXIADwEsPaR5yuGRjq8lggkjotd6kw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <fbc5ea33-22c1-52a5-dc7d-97ba29e06e9d@suse.com>
Date: Thu, 7 Sep 2023 12:48:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v6 1/2] xen: asm-generic support
Content-Language: en-US
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Cc: Anthony PERARD <anthony.perard@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1694078544.git.oleksii.kurochko@gmail.com>
 <cf5f446915bd5c8980beda22718efff32678e16b.1694078544.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cf5f446915bd5c8980beda22718efff32678e16b.1694078544.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0130.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9e::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB8PR04MB7162:EE_
X-MS-Office365-Filtering-Correlation-Id: 9cf6dbf5-f7fc-454e-1056-08dbaf8ff80d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QBuA6L7yCZDfgVsfT/r5tpJDhJ5Lie+Qfuj2vuQ9aSXxoX/uAPTKa0Zc8FzMlsLpz4eTnci6KNUzeWeZWkV2ctUPQEcVMOptZwHLdhcYlz8gflmkuTN/QcyNP04qOCwLpg6PYuUI75UQcqrDrmQjKJUS1Guu04q/EoyXC80IZ2E06FHbCgkV1YcuoXNXAvSz7SbW7YWtPSQZ2rjyj9fcfvSAHTatT3zqtuAXGuXssueLMsv9ZjYoO8l+id25NYovwWI6B9mDVyxbO6j5qqbSFxOIcPdN3h3OHzjN6JF7Rs/7jJor5Uj06937rO1p+ND/vt0eGgLO8+qgl9ACCSw+6tGS+078qq4vW8Zpu3h012s2qBB7zR/IO6sg09bqJFApt5FuGjh5vXKYsWrUIXMBgQbU1i5H8S477T3HzZW6rFg/z1W5kig6h5ZkXVx/SRoOTq3acpB929w3zWkfNfj6KjJXOfShppyS4U8uY46Zg1E2UAocGkJnYY8GE2Cqe+7DWcMRLyDVRU/y6Ry/y9UJC4MnA2ZA0IYGcCyWdxEORhciJ3k4h0Rca1Q+9oRkOHtyi7eoGV+4GUQ0vHJERtuClKOvvMdYWzmwCHyTibr4Hg0Ib/T9gVBcGe4HtsH3/xfLMgJvM2AedQoU2pErCBfVyeWTLFx2z88zpqC/WD5OykU=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(366004)(396003)(39850400004)(346002)(1800799009)(186009)(451199024)(31686004)(6666004)(6512007)(6506007)(6486002)(8936002)(2616005)(86362001)(36756003)(31696002)(38100700002)(26005)(478600001)(4744005)(2906002)(53546011)(8676002)(316002)(66946007)(4326008)(5660300002)(54906003)(66476007)(41300700001)(66556008)(6916009)(41533002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UTVjMGdvTnNlNjBOcU1nY0FaR3pQTDYvOFVCUXFrQWJaUDdYSjBwaEVmVFg0?=
 =?utf-8?B?Lzh4ODhnb08xbTlzdld5N0NROC9wdzJqYURXZzgxbWlTa05PaTZhKzFzamFa?=
 =?utf-8?B?U1Y1cjFCNUZ0RVA1M0ovTDlYVldFMzBhYUQyOURvVWllcHFKUjI0SU8xOWo2?=
 =?utf-8?B?SnNBYjc0eGVJZ3hJRFJwRUhRRnlpY2FxRzl4c2l5UFBtNnhWVngzbkpFOWhj?=
 =?utf-8?B?R3pFbDR4NnhnZ1BGZ01iKzVPT01IK0xvMjdMTjhydFdtRDNsNXZLUkhKamww?=
 =?utf-8?B?MUp3amdoTnk4WmlHUUVzMVJTbzVLemhCOHdHM1hpdVIwc2cwSjhyL3RWeURL?=
 =?utf-8?B?QlhvUURoUDdINWsyZFY4UEdST2dPV0Q1dG9pZFFVOC9zbXJmS0llUlkvbzh4?=
 =?utf-8?B?SUxjYVFCOXRqdjhJVUgxc3Q3dGEwNEw4QmRCSE84eitxS2Q3bk9WakdpZ2R1?=
 =?utf-8?B?bDZHdjdTclVKODBYT0dvSnRvQWhMdVpIdFZVSUhDdFk4QnVPZDRvVTI2Ull2?=
 =?utf-8?B?U1YxQXM2U0NRZ1hWU1BCcElWU0FETWs5RGF0SnI5THV3WVloaTZRY3ZVUms4?=
 =?utf-8?B?Zmk3akNDalR5QlJ5cDNSQnA2c1JkYkFqbGJWNHo2a3dhTnNwZ0JIZ2RmQkVT?=
 =?utf-8?B?a3FQT0dGYmplK3R2OE9VSE1qVEJnbUxrcXRsLzRydjhOVUNoN2ExeTVoVUFX?=
 =?utf-8?B?YU13ak1keVpodW5DcklPS0psUXBGSHNXNkpSdjlBQktCTDVROUxoKzdXY1R2?=
 =?utf-8?B?aDR6c3NZdU1HTWk4ejRlUG81cjNaMUJUNzVRR0VCVWErRlhCMTB5ckliNlo3?=
 =?utf-8?B?VDhUYWh2a1RHK09LbWFIS0FmQWlsUFdyNWdMcDlRaGx2VWxlSWc3eU5HOHZF?=
 =?utf-8?B?ajdCSTdNNFQvdmVQR1lBditVYjlncEF4K3ZpQzZhd0JlL3NWR3krcXc2ZjA4?=
 =?utf-8?B?Y1RDMUZTU3VIZjRMbXhnaFJHaW1XTGQ4cCtCNUpENDdCaXFCRkIvZGxPdy9s?=
 =?utf-8?B?b0ovcks3dnNRaUp2Wlc2M0tiUVdRd1dacGt5ckgrRjRQdDZkWUlkUmpUWlJ1?=
 =?utf-8?B?TGFFeTAydG1OT0d1MVE5WEtpbWgyL2NYZjdHbmFQYVZYTmdmYjZraitQalFE?=
 =?utf-8?B?dkRlS2tiOTBYb3RHNkc5bFJiT0E2cFdxUGtIckZrVFNSbldud1FMU3RETTB6?=
 =?utf-8?B?YmxLZHBwcUU2OFlEMHBISzZRRnJ6a1ZFSmFuSnAzVWJDTU8rNnV5bi9EN3pB?=
 =?utf-8?B?YWV1N01oc0xNVzVsNFZnemhnN1dsa0M0cUZ3cWdrd2diSnhXUGREeUVQQXUr?=
 =?utf-8?B?Ry8xUU4wTkRaS1NCS0ZkWUphVUk2a05CVU9zdnpKWExCKytvb1VtY1B5Rmth?=
 =?utf-8?B?bGlLSVF5b1dBd3NmUmpTTGQ0RHpKNERtYk5OVEZURHUrSUd6ZE13a0ZDYnEx?=
 =?utf-8?B?THYxU2pzeWIvKzg5SXdrdjJ2MU1XWVpQUFdheFRTUmpnc3YrUERNVitYQksy?=
 =?utf-8?B?RitCb1grREVyaWk5S0NSdmd0Mml2RVgrbjZJUllwazZOeldXMmF2R0xHT0wv?=
 =?utf-8?B?ak1TUUJjNjF3QWppUkE5K29aZFRTam95TDhweC9uOGNySGUvSGJZeEhCLytx?=
 =?utf-8?B?aGJmSHZNaUlhSHo3QjV6NTBmUVp0bklVa2NMTE9kUWZ5NjhCZHVsVFNnVXhE?=
 =?utf-8?B?MXRXM1ZxR2hyc0diNVlDTUJ5SXJSdXkwSk1IMUg3ZWRabjd5UTJaL1B0ckw4?=
 =?utf-8?B?SjJidmFYaCs3djZzc0xWVXlmbFd0YVZPUW9xTlZxR2dYSy85ZmYxd0wzTGhR?=
 =?utf-8?B?M1U4dlRKR2ZjTzhSbmtKeXlkU29hSFFuZWJVQ3BmMUlFemo2THBPWVVxUk9l?=
 =?utf-8?B?dE1NUHNsZ2hPVU11dVBsMU9pOUJhU2tyY1I5OEw5OThZQTR3Sk9jQ1E2UWRE?=
 =?utf-8?B?R0hNNHVLb2NKT0RGT28rYzlUejhoMUY0K2l0RDRpNG1WU1ZVUVIzY0RhK0d5?=
 =?utf-8?B?eklxS3NsN3dwZzQwWGEzWWpXMTk1ZHBrYWFoVitmWXVUK1BML1p5WisxYU8z?=
 =?utf-8?B?NytjNWw5UW9IajV3WHRHV00xSTQ2RWRCRzJkeEkrMi9BRlBIbWROMFNMaHBT?=
 =?utf-8?Q?EZtk9BcusRox9XRiekzyEz0wy?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9cf6dbf5-f7fc-454e-1056-08dbaf8ff80d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 10:48:28.1032
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9eqJ7cXO/CJkuJmprj82YCscRlZzVFHcwuCoiG0AVwK5+ydSHroA5KlZG32fhCNPUHQKWJCH60wlRGvgzBMEdg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7162

On 07.09.2023 11:32, Oleksii Kurochko wrote:
> --- /dev/null
> +++ b/xen/scripts/Makefile.asm-generic
> @@ -0,0 +1,53 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +# include/asm-generic contains a lot of files that are used
> +# verbatim by several architectures.
> +#
> +# This Makefile reads the file arch/$(SRCARCH)/include/asm/Makefile
> +# and for each file listed in this file with generic-y creates
> +# a small wrapper file in arch/$(SRCARCH)/include/generated/asm.
> +
> +PHONY := all
> +all:
> +
> +src := $(subst /generated,,$(obj))
> +
> +include $(srctree)/scripts/Kbuild.include
> +-include $(src)/Makefile

With the definition of src above, is this correct for out-of-tree builds?
You want to reference the Makefile in the source tree, ...

> +redundant := $(filter $(mandatory-y) $(generated-y), $(generic-y))
> +redundant += $(foreach f, $(generic-y), $(if $(wildcard $(srctree)/$(src)/$(f)),$(f)))

... much like $(srctree) is used here (and similarly again further down).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 11:12:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 11:12:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597258.931473 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeCvW-0003NW-6j; Thu, 07 Sep 2023 11:11:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597258.931473; Thu, 07 Sep 2023 11:11:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeCvW-0003NP-42; Thu, 07 Sep 2023 11:11:58 +0000
Received: by outflank-mailman (input) for mailman id 597258;
 Thu, 07 Sep 2023 11:11:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wybS=EX=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qeCvU-0003Lz-57
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 11:11:56 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0620.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::620])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 59d30e38-4d6f-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 13:11:54 +0200 (CEST)
Received: from DB9PR06CA0010.eurprd06.prod.outlook.com (2603:10a6:10:1db::15)
 by PAVPR08MB9649.eurprd08.prod.outlook.com (2603:10a6:102:310::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 11:11:46 +0000
Received: from DBAEUR03FT052.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:1db:cafe::b) by DB9PR06CA0010.outlook.office365.com
 (2603:10a6:10:1db::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30 via Frontend
 Transport; Thu, 7 Sep 2023 11:11:46 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT052.mail.protection.outlook.com (100.127.142.144) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.28 via Frontend Transport; Thu, 7 Sep 2023 11:11:45 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Thu, 07 Sep 2023 11:11:45 +0000
Received: from 8e53678fc7ab.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 7DF6B0D4-8585-4483-8920-5F0E44D46339.1; 
 Thu, 07 Sep 2023 10:58:14 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 8e53678fc7ab.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 07 Sep 2023 10:58:14 +0000
Received: from AS9PR04CA0065.eurprd04.prod.outlook.com (2603:10a6:20b:48b::21)
 by AS8PR08MB9908.eurprd08.prod.outlook.com (2603:10a6:20b:562::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 10:58:12 +0000
Received: from AM7EUR03FT023.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:48b:cafe::48) by AS9PR04CA0065.outlook.office365.com
 (2603:10a6:20b:48b::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30 via Frontend
 Transport; Thu, 7 Sep 2023 10:58:11 +0000
Received: from nebula.arm.com (40.67.248.234) by
 AM7EUR03FT023.mail.protection.outlook.com (100.127.140.73) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.28 via Frontend Transport; Thu, 7 Sep 2023 10:58:11 +0000
Received: from AZ-NEU-EX04.Arm.com (10.251.24.32) by AZ-NEU-EX04.Arm.com
 (10.251.24.32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 7 Sep
 2023 10:58:11 +0000
Received: from [10.169.172.124] (10.169.172.124) by mail.arm.com
 (10.251.24.32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend
 Transport; Thu, 7 Sep 2023 10:58:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 59d30e38-4d6f-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=quVZIBdY3RnDPt7QOYWkqWL0LxCm33uagpqxmDEDA7M=;
 b=gb+RsD52UdpBZMrgbL4B37chfcL59zZqwB9rfeZcwU7iy+ozedj4+1i5sat3BXMziPhzfxaNbYLDJGN03/elD2WwYFD9qu9tcCjm/DKQ+vTOZk4Jg3aPzFHHqJRR2jw+upWFDVoezpv22rwz5zbJ+PD6MqQNxRzKAU97WX+BQJk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 78121f80669a019d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QjQ8w7Zu/2w/iZmusc7uuBz0zgw3GvmZu9T9IWh62VxxGS3kqfYjfJzuDipQ3C44z1fuKhVlX6NJARGSAUxM3bmry9gkkWd1COuboPyzdsSP7yX6lYs0A0WwWLZY+YvERiAetvPxOBkC+r2E/dSBW22AiNybmB/d9DPCbWyegd9FkEFuUAKaIl5zjJoUKbLXEuKGsK7ZEnjx1P8gkDAANHGcOjw6QlPkkJ5Ib7HJGalVR/f87Xj7LjlimOfEs+yFzWWR5bK1KT0Pj0hdT8DS0i7a9tJ7ZWJH/ZQc6hfxUcRPzGYRE0WO7PRbElmfRtK/uyd8E5PLIIP3s+TKlc2rvQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=quVZIBdY3RnDPt7QOYWkqWL0LxCm33uagpqxmDEDA7M=;
 b=lGo3UdCLD50194x6taZOjI4Qd259PlQVeWuWXXC+F6Ybrz0JKOtac6ZSOqzr27InVnA2gg24e4K+R/6H9ayXQPZyXkmXIIFikZFjtANMJWRlL31BIBA7hXeGiDIWzXarbt0SRdrVOHJ/akXTaBiBCE7q8ipJW5fwZV8qQXvcVDezMwRN574LyGa+Fa5a0dP8xkJM8WhLSh5HSimwPBF3b5GAol35H4JfAtkLnHANwKJAII9pFFWN2jyMOuHbhY2qx7xrmFWsxk4dLIAcX22YzH7BsTU0+OOO/QGV7Rm72PQN08d9iXPKi0ng67NM66AE29mDeLc/kLHYuGxWvTLiYg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 40.67.248.234) smtp.rcpttodomain=amd.com smtp.mailfrom=arm.com; dmarc=pass
 (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message
 not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=quVZIBdY3RnDPt7QOYWkqWL0LxCm33uagpqxmDEDA7M=;
 b=gb+RsD52UdpBZMrgbL4B37chfcL59zZqwB9rfeZcwU7iy+ozedj4+1i5sat3BXMziPhzfxaNbYLDJGN03/elD2WwYFD9qu9tcCjm/DKQ+vTOZk4Jg3aPzFHHqJRR2jw+upWFDVoezpv22rwz5zbJ+PD6MqQNxRzKAU97WX+BQJk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234)
 smtp.mailfrom=arm.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 40.67.248.234 as permitted sender) receiver=protection.outlook.com;
 client-ip=40.67.248.234; helo=nebula.arm.com; pr=C
Message-ID: <5767f02d-1236-dba1-12f4-6194cd0ed7ca@arm.com>
Date: Thu, 7 Sep 2023 18:58:05 +0800
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.14.0
Subject: Re: [PATCH v6 01/13] xen/arm64: head.S: Introduce
 enable_{boot,secondary}_cpu_mm()
To: Ayan Kumar Halder <ayankuma@amd.com>, Henry Wang <Henry.Wang@arm.com>,
	<xen-devel@lists.xenproject.org>
CC: Wei Chen <wei.chen@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Julien Grall
	<jgrall@amazon.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-2-Henry.Wang@arm.com>
 <b86047a6-f394-8dc0-a4ee-87543d6f9204@amd.com>
Content-Language: en-US
From: Penny Zheng <penny.zheng@arm.com>
In-Reply-To: <b86047a6-f394-8dc0-a4ee-87543d6f9204@amd.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 1
X-MS-TrafficTypeDiagnostic:
	AM7EUR03FT023:EE_|AS8PR08MB9908:EE_|DBAEUR03FT052:EE_|PAVPR08MB9649:EE_
X-MS-Office365-Filtering-Correlation-Id: 199d1be6-e216-4c12-b119-08dbaf933930
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 YGiGjSMJVd71xmTiYZIIFfKEjNgfT1aQxqvFKr+9SwrmDSWJEWgkG8ig/pbrNPAN/73hN9/JTlDorrDGmQaq8Cpz4z/5JnOps+4GsotgBD0TH+SHzPsuqkLldgz3weWPNb5gsUwEvkNhoJOCEByOmEfSoLgMfUZqQvokzJ07WoRAsjKH8BKLHo/Rrnd3tNZIB/7NVRqgtMf6nos3uxjhiZbnFUJ42ALqryUaPO2sjEpSWCp0rqVGfsG3pCV6EB6tLCgkcFqC7IOZa9k/RbfDrVVDorIBopqfKM6aTLsGxRVNhivksqxQNBy896LHqkxbOPLlbTqr0PA0ef9TxcfrMfVX/6h0FGd2MMYVJNpg8dRfhVMezOq9gC6H70RTN0BiJyF7VcOq0DBRpx9wG1cUFUCiaUIv7WHiN/oQIo6LBoRx3lIK3BvpJIuTAAU/vQD6tiqhQm71lnsq8ArlhnNblxh/YKhXhQIIpuGDf/rw+A0AbtXrJYDA927hd4GJX4lqceEXVDyE7HWKipREaF42H5KL/S9oOeX3f/6m4RP5OTrCq9iFoj1llvpe6rdWUewFWjXMzEPCeMHJ8P+Q+onPuLCd8svNebOj4MMzB8l9qlurcgtnY1ZEGfriVdOv2wtHw3WApGd+ZBFZHREwrDNu+qrY4w2+0oKcpX1Dpq2huFU/mfPz/uPrvQSj41TEG6yDPFTKxrhNTB+xNlauQMwKGEmSlvJVQuY4i4jGNAkEXzmRRMUroY4LUlBneWw3SrFzblhCSd/gHEc2LlyKzZpWwuxHEQcptQTJand5Gd99dmBXjMukRbDemyyDOewn9sCTwZliDVziJuymyIhXlyHYsw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(136003)(376002)(396003)(1800799009)(186009)(82310400011)(451199024)(40470700004)(36840700001)(46966006)(40460700003)(2906002)(31696002)(53546011)(2616005)(426003)(26005)(336012)(6666004)(478600001)(36756003)(36860700001)(86362001)(83380400001)(356005)(82740400003)(47076005)(40480700001)(81166007)(41300700001)(31686004)(5660300002)(8936002)(8676002)(70586007)(110136005)(16576012)(316002)(54906003)(70206006)(4326008)(44832011)(3940600001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9908
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT052.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	7e8a0d1c-91d1-4dee-1f99-08dbaf91541f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	J2yje4SBOht27fQBCi7LWk+KX0Nj9xFYuf1mG63v8BLeZPDJ47t9cejYbqs/RNaUM/bkCURXbtkqHT/0Y3eOFKkzfExpJntWWcTg7RA05kx4mr2WVnkAgpqdaWCc89ePyalzhUjhTiMw59zkswUl0pRvQF7kJCBI8ADk8Eig7bir6UIxsesKSb+P0kgJ6dUBrU578chLKCgF+rDz846y77IyHTMJJNBSIQvgnMmCu+yVrFrdIKqoidWYIBwlfJazN7al1YEJ9R7xVZ5CBkAc33uADVNePTmiWctJS+F3is5mrCxuAPvAnxN2ez2cCmtJ5jsxt2xtJI1wgPjrWrC0YAQvjKQRbb4mfsAg1m1lCb6ZOYfA23uZhIn8NviFZphnLYLpTzro63gz82dd/Aq3ozSzjDJwl9yrxDoEZld12ZBDqzhiKgKanJ0b+oxTGm7pdDm4pSyWjh2a8H3a7MJaB94yuR5zrA8A3+bedq1LuuL0rw+GzkdxG+Je8KhEjpCD/dKKfttXu7+L80UCTTAHw9rN0O9cdhX81TTUdwhbv2ZWXrj1W3jyDQdBAymhdyL7iUa1kEkZqZ12QIsRx6UpU9GDNF14FslhfBiBxNLGQpuGSPut0g2bMVW0F3e913YFqqSQ44SdtPQRMsX7RmWpHSIfohvYrydKTTsbTY61Ozk7d912snnLsN72lcBsHWnO5ODfnAteXYHnfjoXBH/EDwANZfuoe7wf0lHy2TgvY1mnU7ulJBC5g2VfxphobEpcJ0YasBYTGoztt4hRQKfJD28fLqK7YQrTko9RBesJEg7EeiDl6wVyhksDE0TYMmtG
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(346002)(39860400002)(396003)(1800799009)(82310400011)(451199024)(186009)(46966006)(36840700001)(40470700004)(81166007)(31686004)(53546011)(6666004)(82740400003)(40460700003)(86362001)(31696002)(36756003)(36860700001)(40480700001)(47076005)(2616005)(26005)(426003)(336012)(83380400001)(478600001)(107886003)(110136005)(70206006)(8676002)(8936002)(5660300002)(4326008)(44832011)(2906002)(16576012)(54906003)(316002)(41300700001)(70586007)(3940600001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 11:11:45.7602
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 199d1be6-e216-4c12-b119-08dbaf933930
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT052.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9649

Hi Ayan

On 2023/9/7 17:44, Ayan Kumar Halder wrote:
> Hi Henry,
> 
> On 28/08/2023 02:32, Henry Wang wrote:
>> CAUTION: This message has originated from an External Source. Please 
>> use proper judgment and caution when opening attachments, clicking 
>> links, or responding to this email.
>>
>>
>> From: Wei Chen <wei.chen@arm.com>
>>
>> At the moment, on MMU system, enable_mmu() will return to an
>> address in the 1:1 mapping, then each path is responsible to
>> switch to virtual runtime mapping. Then remove_identity_mapping()
>> is called on the boot CPU to remove all 1:1 mapping.
>>
>> Since remove_identity_mapping() is not necessary on Non-MMU system,
>> and we also avoid creating empty function for Non-MMU system, trying
>> to keep only one codeflow in arm64/head.S, we move path switch and
>> remove_identity_mapping() in enable_mmu() on MMU system.
>>
>> As the remove_identity_mapping should only be called for the boot
>> CPU only, so we introduce enable_boot_cpu_mm() for boot CPU and
>> enable_secondary_cpu_mm() for secondary CPUs in this patch.
>>
>> Signed-off-by: Wei Chen <wei.chen@arm.com>
>> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>> Reviewed-by: Julien Grall <jgrall@amazon.com>
>> ---
>> v6:
>> - Add Julien's Reviewed-by tag.
>> v5:
>> - Add missing "()" in title.
>> - Use more generic comment in enable_{boot,secondary}_cpu_mm() to
>>    mention function will return to the vaddr requested by the caller.
>> - Move 'mov lr, x5' closer to 'b remove_identity_mapping'.
>> - Drop the 'b fail' for unreachable code in enable_boot_cpu_mm().
>> v4:
>> - Clarify remove_identity_mapping() is called on boot CPU and keep
>>    the function/proc format consistent in commit msg.
>> - Drop inaccurate (due to the refactor) in-code comment.
>> - Rename enable_{boot,runtime}_mmu to enable_{boot,secondary}_cpu_mm.
>> - Reword the in-code comment on top of enable_{boot,secondary}_cpu_mm.
>> - Call "fail" for unreachable code.
>> v3:
>> - new patch
>> ---
>>   xen/arch/arm/arm64/head.S | 83 ++++++++++++++++++++++++++++++---------
>>   1 file changed, 64 insertions(+), 19 deletions(-)
>>
>> diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S
>> index 5029013a14..f25a41d36c 100644
>> --- a/xen/arch/arm/arm64/head.S
>> +++ b/xen/arch/arm/arm64/head.S
>> @@ -325,21 +325,11 @@ real_start_efi:
>>
>>           bl    check_cpu_mode
>>           bl    cpu_init
>> -        bl    create_page_tables
>> -        load_paddr x0, boot_pgtable
>> -        bl    enable_mmu
>>
>> -        /* We are still in the 1:1 mapping. Jump to the runtime 
>> Virtual Address. */
>> -        ldr   x0, =primary_switched
>> -        br    x0
>> +        ldr   lr, =primary_switched
>> +        b     enable_boot_cpu_mm
>> +
>>   primary_switched:
>> -        /*
>> -         * The 1:1 map may clash with other parts of the Xen virtual 
>> memory
>> -         * layout. As it is not used anymore, remove it completely to
>> -         * avoid having to worry about replacing existing mapping
>> -         * afterwards.
>> -         */
>> -        bl    remove_identity_mapping
>>           bl    setup_fixmap
>>   #ifdef CONFIG_EARLY_PRINTK
>>           /* Use a virtual address to access the UART. */
>> @@ -384,13 +374,10 @@ GLOBAL(init_secondary)
>>   #endif
>>           bl    check_cpu_mode
>>           bl    cpu_init
>> -        load_paddr x0, init_ttbr
>> -        ldr   x0, [x0]
>> -        bl    enable_mmu
>>
>> -        /* We are still in the 1:1 mapping. Jump to the runtime 
>> Virtual Address. */
>> -        ldr   x0, =secondary_switched
>> -        br    x0
>> +        ldr   lr, =secondary_switched
>> +        b     enable_secondary_cpu_mm
>> +
>>   secondary_switched:
>>   #ifdef CONFIG_EARLY_PRINTK
>>           /* Use a virtual address to access the UART. */
>> @@ -748,6 +735,64 @@ enable_mmu:
>>           ret
>>   ENDPROC(enable_mmu)
>>
>> +/*
>> + * Enable mm (turn on the data cache and the MMU) for secondary CPUs.
>> + * The function will return to the virtual address provided in LR 
>> (e.g. the
>> + * runtime mapping).
>> + *
>> + * Inputs:
>> + *   lr : Virtual address to return to.
>> + *
>> + * Clobbers x0 - x5
>> + */
>> +enable_secondary_cpu_mm:
>> +        mov   x5, lr
>> +
>> +        load_paddr x0, init_ttbr
>> +        ldr   x0, [x0]
>> +
>> +        bl    enable_mmu
>> +        mov   lr, x5
>> +
>> +        /* Return to the virtual address requested by the caller. */
>> +        ret
>> +ENDPROC(enable_secondary_cpu_mm)
>> +
>> +/*
>> + * Enable mm (turn on the data cache and the MMU) for the boot CPU.
>> + * The function will return to the virtual address provided in LR 
>> (e.g. the
>> + * runtime mapping).
>> + *
>> + * Inputs:
>> + *   lr : Virtual address to return to.
>> + *
>> + * Clobbers x0 - x5
>> + */
>> +enable_boot_cpu_mm:
>> +        mov   x5, lr
>> +
>> +        bl    create_page_tables
>> +        load_paddr x0, boot_pgtable
>> +
>> +        bl    enable_mmu
>> +
>> +        /*
>> +         * The MMU is turned on and we are in the 1:1 mapping. Switch
>> +         * to the runtime mapping.
>> +         */
>> +        ldr   x0, =1f
>> +        br    x0
>> +1:
>> +        mov   lr, x5
>> +        /*
>> +         * The 1:1 map may clash with other parts of the Xen virtual 
>> memory
>> +         * layout. As it is not used anymore, remove it completely to 
>> avoid
>> +         * having to worry about replacing existing mapping afterwards.
>> +         * Function will return to the virtual address requested by 
>> the caller.
>> +         */
>> +        b     remove_identity_mapping
> 
>                  ret
> 
> I guess you also need this ^^^ (Similar to enable_secondary_cpu_mm() ). 
> Otherwise PC will not switch to the caller.
> 

We have once talked about whether adding ret here in enable_boot_cpu_mm
in previous serie.

Since the "ret" in remove_identity_mapping will make user jump to the 
"lr" we defined before "b remove_identity_mapping", it is redundant to
add another "ret" here. We will never reach the "ret" here

> It will again invoke remove_identity_mapping() (which is redundant) and 
> then jump to the caller.
> 
> - Ayan
> 
>> +ENDPROC(enable_boot_cpu_mm)
>> +
>>   /*
>>    * Remove the 1:1 map from the page-tables. It is not easy to keep 
>> track
>>    * where the 1:1 map was mapped, so we will look for the top-level 
>> entry
>> -- 
>> 2.25.1
>>
>>


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 11:12:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 11:12:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597262.931484 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeCw3-0003xT-Jt; Thu, 07 Sep 2023 11:12:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597262.931484; Thu, 07 Sep 2023 11:12:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeCw3-0003xM-Gf; Thu, 07 Sep 2023 11:12:31 +0000
Received: by outflank-mailman (input) for mailman id 597262;
 Thu, 07 Sep 2023 11:12:30 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=pQtx=EX=tesarici.cz=petr@srs-se1.protection.inumbo.net>)
 id 1qeCw1-0003lU-J6
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 11:12:30 +0000
Received: from bee.tesarici.cz (bee.tesarici.cz [77.93.223.253])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6d85fa42-4d6f-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 13:12:27 +0200 (CEST)
Received: from meshulam.tesarici.cz
 (dynamic-2a00-1028-83b8-1e7a-4427-cc85-6706-c595.ipv6.o2.cz
 [IPv6:2a00:1028:83b8:1e7a:4427:cc85:6706:c595])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest
 SHA256) (No client certificate requested)
 by bee.tesarici.cz (Postfix) with ESMTPSA id EA87A18CBB2;
 Thu,  7 Sep 2023 13:12:24 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6d85fa42-4d6f-11ee-9b0d-b553b5be7939
Authentication-Results: mail.tesarici.cz; dmarc=fail (p=none dis=none) header.from=tesarici.cz
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tesarici.cz; s=mail;
	t=1694085145; bh=fbplRXoTU4SArEuqSCeWcBdBKDzKAfUk7UIh+zzJ294=;
	h=Date:From:To:Cc:Subject:In-Reply-To:References:From;
	b=UeWu1Ze8yhdkAQSYLwMwA5Evs8is8jd9+WRDve9QstEAJCVJk4EyPrZUvt2GlulJO
	 Acv8RNSZT4NRo56VbHVjN1Qces1eN30pA/Z8XXCRCYRiG42VIaxfqRB+JiaUWDiSNI
	 7vNLYKFtmaNGH7exnrZYJl77SUb4GDfp5VfGRbajxxQjYFEMgAhMtBIGZd04dwv9py
	 LsW5QNMFeGMU27vzeZa8jYcSznJj+rq7+myvFYGpQ5xn1ltALy9BQiZ0pdCtmt5J0/
	 dC6nWffmW3QcD4g/Ya4kxdbnZOi4vIJaCWhouPtZgmgytg1/Um76VBACnHThhWcUwa
	 sohl8kzvr6NyA==
Date: Thu, 7 Sep 2023 13:12:23 +0200
From: Petr =?UTF-8?B?VGVzYcWZw61r?= <petr@tesarici.cz>
To: Jonathan Corbet <corbet@lwn.net>
Cc: Petr Tesarik <petrtesarik@huaweicloud.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Russell King <linux@armlinux.org.uk>, Thomas
 Bogendoerfer <tsbogend@alpha.franken.de>, Thomas Gleixner
 <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, Borislav Petkov
 <bp@alien8.de>, Dave Hansen <dave.hansen@linux.intel.com>, "maintainer:X86
 ARCHITECTURE (32-BIT AND 64-BIT)" <x86@kernel.org>, "H. Peter Anvin"
 <hpa@zytor.com>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, "Rafael
 J. Wysocki" <rafael@kernel.org>, Juergen Gross <jgross@suse.com>, Oleksandr
 Tyshchenko <oleksandr_tyshchenko@epam.com>, Christoph Hellwig <hch@lst.de>,
 Marek Szyprowski <m.szyprowski@samsung.com>, Robin Murphy
 <robin.murphy@arm.com>, Christoph Lameter <cl@linux.com>, Pekka Enberg
 <penberg@kernel.org>, David Rientjes <rientjes@google.com>, Joonsoo Kim
 <iamjoonsoo.kim@lge.com>, Andrew Morton <akpm@linux-foundation.org>,
 Vlastimil Babka <vbabka@suse.cz>, Roman Gushchin
 <roman.gushchin@linux.dev>, Hyeonggon Yoo <42.hyeyoo@gmail.com>, Petr
 Tesarik <petr.tesarik.ext@huawei.com>, Andy Shevchenko
 <andriy.shevchenko@linux.intel.com>, Hans de Goede <hdegoede@redhat.com>,
 James Seo <james@equiv.tech>, James Clark <james.clark@arm.com>, Kees Cook
 <keescook@chromium.org>, "moderated list:XEN HYPERVISOR ARM"
 <xen-devel@lists.xenproject.org>, "moderated list:ARM PORT"
 <linux-arm-kernel@lists.infradead.org>, open list
 <linux-kernel@vger.kernel.org>, "open list:MIPS"
 <linux-mips@vger.kernel.org>, "open list:XEN SWIOTLB SUBSYSTEM"
 <iommu@lists.linux.dev>, "open list:SLAB ALLOCATOR" <linux-mm@kvack.org>,
 Roberto Sassu <roberto.sassu@huaweicloud.com>
Subject: Re: [PATCH v7 9/9] swiotlb: search the software IO TLB only if the
 device makes use of it
Message-ID: <20230907131223.587c1a88@meshulam.tesarici.cz>
In-Reply-To: <87il8wr348.fsf@meer.lwn.net>
References: <cover.1690871004.git.petr.tesarik.ext@huawei.com>
	<adea71bd1fa8660d4c3157a562431ad8127016d4.1690871004.git.petr.tesarik.ext@huawei.com>
	<87a5uz3ob8.fsf@meer.lwn.net>
	<87il8wr348.fsf@meer.lwn.net>
X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; x86_64-suse-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

Hi all,

sorry for my late reply; I've been away from my work setup for a
month...

On Wed, 30 Aug 2023 08:55:51 -0600
Jonathan Corbet <corbet@lwn.net> wrote:

> So it seems this code got merged without this question ever being
> answered.  Sorry if it's a dumb one, but I don't think this
> functionality works as advertised...

Yes, I believe the check was originally in is_swiotlb_buffer(), but it
got lost during one of the numerous rebases of this patch set. Let me
send a follow-up patch after making sure it actually works.

Petr T

> Thanks,
> 
> jon
> 
> Jonathan Corbet <corbet@lwn.net> writes:
> 
> > Petr Tesarik <petrtesarik@huaweicloud.com> writes:
> >  
> >> From: Petr Tesarik <petr.tesarik.ext@huawei.com>
> >>
> >> Skip searching the software IO TLB if a device has never used it,
> >> making sure these devices are not affected by the introduction of
> >> multiple IO TLB memory pools.
> >>
> >> Additional memory barrier is required to ensure that the new value
> >> of the flag is visible to other CPUs after mapping a new bounce
> >> buffer. For efficiency, the flag check should be inlined, and then
> >> the memory barrier must be moved to is_swiotlb_buffer(). However,
> >> it can replace the existing barrier in swiotlb_find_pool(),
> >> because all callers use is_swiotlb_buffer() first to verify that
> >> the buffer address belongs to the software IO TLB.
> >>
> >> Signed-off-by: Petr Tesarik <petr.tesarik.ext@huawei.com>
> >> ---  
> >
> > Excuse me if this is a silly question, but I'm not able to figure
> > it out on my own...
> >  
> >>  include/linux/device.h  |  2 ++
> >>  include/linux/swiotlb.h |  7 ++++++-
> >>  kernel/dma/swiotlb.c    | 14 ++++++--------
> >>  3 files changed, 14 insertions(+), 9 deletions(-)
> >>
> >> diff --git a/include/linux/device.h b/include/linux/device.h
> >> index 5fd89c9d005c..6fc808d22bfd 100644
> >> --- a/include/linux/device.h
> >> +++ b/include/linux/device.h
> >> @@ -628,6 +628,7 @@ struct device_physical_location {
> >>   * @dma_io_tlb_mem: Software IO TLB allocator.  Not for driver
> >> use.
> >>   * @dma_io_tlb_pools:	List of transient swiotlb memory
> >> pools.
> >>   * @dma_io_tlb_lock:	Protects changes to the list of
> >> active pools.
> >> + * @dma_uses_io_tlb: %true if device has used the software IO TLB.
> >>   * @archdata:	For arch-specific additions.
> >>   * @of_node:	Associated device tree node.
> >>   * @fwnode:	Associated device node supplied by platform
> >> firmware. @@ -737,6 +738,7 @@ struct device {
> >>  #ifdef CONFIG_SWIOTLB_DYNAMIC
> >>  	struct list_head dma_io_tlb_pools;
> >>  	spinlock_t dma_io_tlb_lock;
> >> +	bool dma_uses_io_tlb;  
> >
> > You add this new member here, fine...
> >  
> >>  #endif
> >>  	/* arch specific additions */
> >>  	struct dev_archdata	archdata;
> >> diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
> >> index 8371c92a0271..b4536626f8ff 100644
> >> --- a/include/linux/swiotlb.h
> >> +++ b/include/linux/swiotlb.h
> >> @@ -172,8 +172,13 @@ static inline bool is_swiotlb_buffer(struct
> >> device *dev, phys_addr_t paddr) if (!mem)
> >>  		return false;
> >>  
> >> -	if (IS_ENABLED(CONFIG_SWIOTLB_DYNAMIC))
> >> +	if (IS_ENABLED(CONFIG_SWIOTLB_DYNAMIC)) {
> >> +		/* Pairs with smp_wmb() in swiotlb_find_slots()
> >> and
> >> +		 * swiotlb_dyn_alloc(), which modify the RCU
> >> lists.
> >> +		 */
> >> +		smp_rmb();
> >>  		return swiotlb_find_pool(dev, paddr);
> >> +	}
> >>  	return paddr >= mem->defpool.start && paddr <
> >> mem->defpool.end; }
> >>  
> >> diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> >> index adf80dec42d7..d7eac84f975b 100644
> >> --- a/kernel/dma/swiotlb.c
> >> +++ b/kernel/dma/swiotlb.c
> >> @@ -730,7 +730,7 @@ static void swiotlb_dyn_alloc(struct
> >> work_struct *work) 
> >>  	add_mem_pool(mem, pool);
> >>  
> >> -	/* Pairs with smp_rmb() in swiotlb_find_pool(). */
> >> +	/* Pairs with smp_rmb() in is_swiotlb_buffer(). */
> >>  	smp_wmb();
> >>  }
> >>  
> >> @@ -764,11 +764,6 @@ struct io_tlb_pool *swiotlb_find_pool(struct
> >> device *dev, phys_addr_t paddr) struct io_tlb_mem *mem =
> >> dev->dma_io_tlb_mem; struct io_tlb_pool *pool;
> >>  
> >> -	/* Pairs with smp_wmb() in swiotlb_find_slots() and
> >> -	 * swiotlb_dyn_alloc(), which modify the RCU lists.
> >> -	 */
> >> -	smp_rmb();
> >> -
> >>  	rcu_read_lock();
> >>  	list_for_each_entry_rcu(pool, &mem->pools, node) {
> >>  		if (paddr >= pool->start && paddr < pool->end)
> >> @@ -813,6 +808,7 @@ void swiotlb_dev_init(struct device *dev)
> >>  #ifdef CONFIG_SWIOTLB_DYNAMIC
> >>  	INIT_LIST_HEAD(&dev->dma_io_tlb_pools);
> >>  	spin_lock_init(&dev->dma_io_tlb_lock);
> >> +	dev->dma_uses_io_tlb = false;  
> >
> > ...here you initialize it, fine...
> >  
> >>  #endif
> >>  }
> >>  
> >> @@ -1157,9 +1153,11 @@ static int swiotlb_find_slots(struct device
> >> *dev, phys_addr_t orig_addr, list_add_rcu(&pool->node,
> >> &dev->dma_io_tlb_pools);
> >> spin_unlock_irqrestore(&dev->dma_io_tlb_lock, flags); 
> >> -	/* Pairs with smp_rmb() in swiotlb_find_pool(). */
> >> -	smp_wmb();
> >>  found:
> >> +	dev->dma_uses_io_tlb = true;
> >> +	/* Pairs with smp_rmb() in is_swiotlb_buffer() */
> >> +	smp_wmb();
> >> +  
> >
> > ...and here you set it if swiotlb is used.
> >
> > But, as far as I can tell, you don't actually *use* this field
> > anywhere. What am I missing?
> >
> > Thanks,
> >
> > jon  



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 11:35:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 11:35:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597275.931494 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeDHv-0008Kl-CC; Thu, 07 Sep 2023 11:35:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597275.931494; Thu, 07 Sep 2023 11:35:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeDHv-0008Ke-9B; Thu, 07 Sep 2023 11:35:07 +0000
Received: by outflank-mailman (input) for mailman id 597275;
 Thu, 07 Sep 2023 11:35:05 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=luvz=EX=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qeDHt-0008KY-E8
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 11:35:05 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on2061d.outbound.protection.outlook.com
 [2a01:111:f400:7e83::61d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 94113e24-4d72-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 13:35:01 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by SJ0PR12MB7460.namprd12.prod.outlook.com (2603:10b6:a03:48d::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 11:34:56 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::9a2:f8ec:7c75:fe95]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::9a2:f8ec:7c75:fe95%6]) with mapi id 15.20.6745.030; Thu, 7 Sep 2023
 11:34:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 94113e24-4d72-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WyKICM1YvNuYlq351bbW7KBlhG7VDXuilZzNqnLjWryeAG118ib22QiCHzN9QXTsZRv0euM00jqf5WH3y9F5BuBxEQJiqqX49iP3I3jXghUi1vgnBOQDUesq4PkOYbfYRxBUIEueAyYHLpp54C4iXTD6LOjeGwsYcuoLQpEZW5t5duMqsZmWrPdARKsN3kNYvUQAiZYSLF/i3zMt9R+FnS45Ubu9MVBlr5syWPY1NQ/PErcbA3Xz2rgQf+PklMf32PhuruERgcvkobZGl/KKVw/07MqyGLPRVBDqqb2XdsXQN7e7iaxZ+KT/agfNC+iQoTh1frUmQYP9vw56PdNt0A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=I7MEhcBReUYfjT4shwjeXzko7Kg1VmpMdZu5fufU4CY=;
 b=a5xLNe+gq79lXR0eweRDdDQ+d5m9kDCLv4kten26tEOY0O/qPr64BOojfDz48D/4bEkGp3fy4ExLb9gcVqHVu29hpLMOI6uLg3d4nNad3jEG7Z1W33awrppb/XBmh9b1V3FbfTaggr4NHjlhahP11Dtf/+ei8NbQVl85EUb4LrNA1EP80lwJP5BG9BiC1RQ6YHlbygSVPpUN7RKCoGNOxb3G8muUqk+rP2FgeWhd3JdU8aepIPPD9LBhO8fQSnmCCZTJ62VBkIdtGytM6S+NToVsYBIxh1RD6Q1KRRW48cKgMf4tWThQjKyEtL2EMhW6Qst1Uc218+td4YCe7WWo+g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=I7MEhcBReUYfjT4shwjeXzko7Kg1VmpMdZu5fufU4CY=;
 b=ATpgXblLGuG69oathy2SHsd5ezNPZCJKsKULksvYqCtQWcCbziJ9gWk9ASlD2xE4XLe9Fxt9beqNnzdx7BMn7agk4f1ejd1HmfjfDnG906eOKqKp7psvsOn24Zzc12FMdfY+eebYX8cjrcQbVnHm//uFJ+u4hEj28vO+DqmwmcY=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <3e32512e-07d1-34c7-bc51-11dfe061f903@amd.com>
Date: Thu, 7 Sep 2023 12:34:42 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.0
Subject: Re: [PATCH v6 09/13] xen/arm: Extract MMU-specific MM code
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
 <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Wei Chen <wei.chen@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Penny Zheng <penny.zheng@arm.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-10-Henry.Wang@arm.com>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <20230828013224.669433-10-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P265CA0043.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2ac::22) To SN6PR12MB2621.namprd12.prod.outlook.com
 (2603:10b6:805:73::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|SJ0PR12MB7460:EE_
X-MS-Office365-Filtering-Correlation-Id: e22f58f6-51d4-4a98-736b-08dbaf9675ee
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	WLhR2BMDzsHvJYJZO8+qP+Mclz565lPUNWofG6U4OQ7HjXNzfBq1q5ykwJ3xVDs5Ipnk6XiGoQui0r57bO2Q7ihGFwgwh6CVk/OitFWL/UFmMRDL4hFMhoeOgGZoSr+KHJxVtXnEsqiKoVwiiDjH0Ch7QacoxyR3u4JTIpwnmwBL5scP9ECpNpla1tC9V4xEaHEotnl7K27uB3Xb7sR+p2lxM4nenN+ins+GaL9bbq2NuHbBfsl65u4pohLX8JmC3lSVUeFYn2y19X8H640UIN400/UJfw/GL/MD0VTB+zhLKiYIRTrNI3skqRmE1/MGkLYZbx/8l0dv0y2HKpPCbSVgrNVpQdrWwDYU879VuM3iFO7KIeYbg2ARKWvyNJarWQESkgEsH8rvbtDGwfvCdbPEnZ3zjt50F3ceEBGYmvIph0IrLAxkI1SUga19yNZ6aYhf6qp8zx4KD5G77+D+PTivZHme3zub972toJSqpm0vuqCbEOZ3o2TPcrzmj+YeXJvrlyVROHd48644Tf42dkQAVGIVK/OCdGxSfUfFXFtbAV7VsBiA8Sna/IyknThuLERRJ8DTkiwAw61rCcr93fRBdX5hsVUvRnWD9IpmyWSva0zgrDhs2WzK4nHn4grNOKGuVL1xAs8JZb/fhemJSQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39860400002)(346002)(396003)(376002)(136003)(1800799009)(186009)(451199024)(31686004)(53546011)(6486002)(6666004)(6506007)(31696002)(36756003)(38100700002)(2616005)(2906002)(30864003)(26005)(478600001)(6512007)(83380400001)(66476007)(8936002)(41300700001)(8676002)(4326008)(5660300002)(316002)(66556008)(66946007)(54906003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cEZBL3NHY1hqN2tyODl1VmVlaVlxVW16RDRVQ09hdEw3N0d5aEQwRlRuekxU?=
 =?utf-8?B?Ym84c296OWRxckhubzBOQ3NaMHRzZ216VE82K1ZUSnZsRDVIMDl6R3kwUUNo?=
 =?utf-8?B?aW9IWXRpYWdHWFpuZ2IwQW1CaHJIOUd2WDhQRnJZU25sSUNLY29wNkxrWGxT?=
 =?utf-8?B?cldDM2c2RFRERmFnMEFUbkhmdzdUVFVVQzhEbnprand6Rk5UT254UFVPdC9M?=
 =?utf-8?B?VWRmenBwZVc1RW1HdW9ha3JYdFFZaS9JYWdMN2NaZHNEUlBpYnY5VEwyRGta?=
 =?utf-8?B?S245R2Z4NnRYM2V4dy9EWXhSdWhCcHVzSERNNk9TS2duelM2RnhPdlZUdmxC?=
 =?utf-8?B?dkVWcWUyRUU1UktMSnVsS25Eakt3elpsU20yVUdhUlN6YllTSy9QU1FQM2pH?=
 =?utf-8?B?clVLclIxSFRseDlFUUNIMkU2RCtOdVZIMzVKRlI4Z3lMTVpyMThPQms0aUJQ?=
 =?utf-8?B?SGJmeG53a25BdDRxV083NG9Td3p4U0srQkx3Znl3bzRubjlkbDhHazQxdDNN?=
 =?utf-8?B?ZHBRWDhFcWRteXV0emo3MEZGS2FYNXRzSkRDT25iVng2eGd5dVhnWHV4T1Q4?=
 =?utf-8?B?U3dUN2dsaFd0MHBHRk1RSG5QQXZyV09aelJDcEpVSll6cEdkOWVSS3VkbmRQ?=
 =?utf-8?B?VlZZbGFnQ0RXWnU3dUlJZFRZWWIvUjUyRGlRTmEwbTNqcmVPM1locGViNmhv?=
 =?utf-8?B?Q092SUN3Q24yNG5ycDJCbkZneFZmSHVxbDVpeDhOVnBEb1QybVVHSTdyYVB3?=
 =?utf-8?B?WkZaMFFocmxUMEpGOTNhK3FqK0FLc1NBTUlyNVF0eDZ6QXh3dHRQY21adnhB?=
 =?utf-8?B?SlZRaDVTMXIyblFoTitrWWw4eENBUEZMbTR4QkZLdG9wRk1JSW4vSFVNTkVI?=
 =?utf-8?B?VDNvU0RRMHh6RHFVQ1VONmVjZ3BCb2hoNnkvdU85N2R1OUl2ejBvRXk2UUM1?=
 =?utf-8?B?WlJlakJnT2Y4OHRXQ3RtRFhEQTVqYnpBNkZ3ZytJbXdQOHdYaXdoc01OMUE3?=
 =?utf-8?B?S0JEN2MrQ0dqdDN2R3RkV0dDb2FscU1QamVXdm91VDdscU40MDc1MWRGOUYx?=
 =?utf-8?B?QUpuNmVLZUhsMVkrajQ3bjAyeVA5ZW43clJUTmpKeVUxUUdYRitJSXJjWTB4?=
 =?utf-8?B?bkZVa0dMNDZkQ2Q1UUM0ajVrUmM0TFJJRVloTzlWMnpIdjZXbkRwdGxwMURm?=
 =?utf-8?B?Yy9tOVZKc2ZhNkFtR29wTWVqNzVkVmY5TXoraGllaWtodHkyMzNFMHp6MlNQ?=
 =?utf-8?B?a0dFYlBzWTFoK3dFN0lCYVdPL05TQW5hRnBaOUFnZXlFTytvS3VPQ3lteFV2?=
 =?utf-8?B?TndZRHlzUUZQRUVaNWVYSktXeU5pd0NaSWlmT2I4RERJcUlBUnJ1ZUJjK2Rt?=
 =?utf-8?B?bDFJWGF2cGIzaUpsL2xJcHp3eDN0aUtOVFhtS3JVR3N3NUVOaG1CMm9SUjFz?=
 =?utf-8?B?eXNRN3pnZGRDYTk1YU1mRjJYYUd4Tkl0ZzgyTFhzdUZMcnNkS1hUNm11TzRB?=
 =?utf-8?B?QzFGOEpXcC9Qc2NlN1RpYWptTHYvcTd2UkQzR0hya2krS1VVZ3hVRjhQN21w?=
 =?utf-8?B?NEdiUFJ5OXBHdmJ3RXVZRDhDK2xCWjB4elJkQmVwa29FRFZaSDNKZ210am1h?=
 =?utf-8?B?SDFYMmdvSndJRnlaRTB5bzU5c3NPeGN0eThabyt0MHo2YWRHanJ6MGdDbTFE?=
 =?utf-8?B?V2JXVm1MT1BicTVHUHd1ZEZJSzlDc3RtcndQRDVYWjJkSlo0aWZWNDEwamls?=
 =?utf-8?B?c25JNExzWFdsU2YzR3AwL3dPaC8rSXp3djl3dmRURHdPSXBHV3RRd05maWZB?=
 =?utf-8?B?ODJWRmdDU3RsYjdvQTBtVnR0TVdjZkFzWnJlSE5TUHJUVWhYdFN1c3lKY1hr?=
 =?utf-8?B?V1RZZ0FhL01HbXB6QVZQcm5EbHdKL1VkZ1BpejU4SEhEWVhQcFg4SnMzZ0dy?=
 =?utf-8?B?VGY1WmJpK05mQjUzNnV5L3crU2tkWnducms2RkNmTDlORkZtN0dQSTJISzli?=
 =?utf-8?B?WExielBaUjBCbHBJNFc1VHUyU1hvTDd6L1V1UmtqbW5iLzdRaEppM0pNaVls?=
 =?utf-8?B?ZXozMTM1MFNCMEFpNDh5cU9IaHphbVB6QTJ2SjZBaCthd2FhV05UaFY2VDhu?=
 =?utf-8?Q?7VqUp/7tYOKt5X5QY0rk0QHBt?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e22f58f6-51d4-4a98-736b-08dbaf9675ee
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 11:34:56.4037
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: iTC2JX/mewcwsXJci+2clT9vhkICxx25Kzl3T0mJhXehD64d4KGVZbl1AQfYZ6OVegzhfYwaj07cvzb0NjMBvA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB7460

Hi Henry,

On 28/08/2023 02:32, Henry Wang wrote:
> CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email.
>
>
> Currently, most of the code is in arm/mm.{c,h} and arm/arm64/mm.c
> is MMU-specific. To make the MM code extendable, this commit extracts
> the MMU-specific MM code.
>
> Extract the boot CPU MM bringup code from arm/mm.c to mmu/setup.c.
> Move arm/arm64/mm.c to arm/arm64/mmu/mm.c. Since the function
> setup_directmap_mappings() has different implementations between
> arm32 and arm64, move their arch-specific implementation to
> arch-specific arm{32,64}/mmu/mm.c instead using #ifdef again.
>
> For header files, move MMU-related function declarations in
> asm/mm.h and the declaration of dump_pt_walk() in asm/page.h to
> asm/mmu/mm.h
>
> Also modify the build system (Makefiles in this case) to pick above
> mentioned code changes.
>
> Take the opportunity to fix the in-code comment coding styles when
> possible, and drop the unnecessary #include headers in the original
> arm/mm.c.
>
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
> ---
> v6:
> - Rework the original patch
>    "[v5,07/13] xen/arm: Extract MMU-specific code"
> ---
>   xen/arch/arm/arm32/Makefile       |   1 +
>   xen/arch/arm/arm32/mmu/Makefile   |   1 +
>   xen/arch/arm/arm32/mmu/mm.c       |  31 +++
>   xen/arch/arm/arm64/Makefile       |   1 -
>   xen/arch/arm/arm64/mmu/Makefile   |   1 +
>   xen/arch/arm/arm64/{ => mmu}/mm.c |  37 +++
>   xen/arch/arm/include/asm/mm.h     |  22 +-
>   xen/arch/arm/include/asm/mmu/mm.h |  47 ++++
>   xen/arch/arm/include/asm/page.h   |  15 --
>   xen/arch/arm/mm.c                 | 381 ------------------------------
>   xen/arch/arm/mmu/Makefile         |   1 +
>   xen/arch/arm/mmu/setup.c          | 345 +++++++++++++++++++++++++++
>   12 files changed, 470 insertions(+), 413 deletions(-)
>   create mode 100644 xen/arch/arm/arm32/mmu/Makefile
>   create mode 100644 xen/arch/arm/arm32/mmu/mm.c
>   rename xen/arch/arm/arm64/{ => mmu}/mm.c (75%)
>   create mode 100644 xen/arch/arm/include/asm/mmu/mm.h
>   create mode 100644 xen/arch/arm/mmu/setup.c
>
> diff --git a/xen/arch/arm/arm32/Makefile b/xen/arch/arm/arm32/Makefile
> index 520fb42054..40a2b4803f 100644
> --- a/xen/arch/arm/arm32/Makefile
> +++ b/xen/arch/arm/arm32/Makefile
> @@ -1,4 +1,5 @@
>   obj-y += lib/
> +obj-$(CONFIG_MMU) += mmu/
>
>   obj-$(CONFIG_EARLY_PRINTK) += debug.o
>   obj-y += domctl.o
> diff --git a/xen/arch/arm/arm32/mmu/Makefile b/xen/arch/arm/arm32/mmu/Makefile
> new file mode 100644
> index 0000000000..b18cec4836
> --- /dev/null
> +++ b/xen/arch/arm/arm32/mmu/Makefile
> @@ -0,0 +1 @@
> +obj-y += mm.o
> diff --git a/xen/arch/arm/arm32/mmu/mm.c b/xen/arch/arm/arm32/mmu/mm.c
> new file mode 100644
> index 0000000000..647baf4a81
> --- /dev/null
> +++ b/xen/arch/arm/arm32/mmu/mm.c
> @@ -0,0 +1,31 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +
> +#include <xen/init.h>
> +#include <asm/fixmap.h>
> +
> +/*
> + * Set up the direct-mapped xenheap:
> + * up to 1GB of contiguous, always-mapped memory.
> + */
> +void __init setup_directmap_mappings(unsigned long base_mfn,
> +                                     unsigned long nr_mfns)
> +{
> +    int rc;
> +
> +    rc = map_pages_to_xen(XENHEAP_VIRT_START, _mfn(base_mfn), nr_mfns,
> +                          PAGE_HYPERVISOR_RW | _PAGE_BLOCK);
> +    if ( rc )
> +        panic("Unable to setup the directmap mappings.\n");
> +
> +    /* Record where the directmap is, for translation routines. */
> +    directmap_virt_end = XENHEAP_VIRT_START + nr_mfns * PAGE_SIZE;
> +}
> +
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
> diff --git a/xen/arch/arm/arm64/Makefile b/xen/arch/arm/arm64/Makefile
> index f89d5fb4fb..72161ff22e 100644
> --- a/xen/arch/arm/arm64/Makefile
> +++ b/xen/arch/arm/arm64/Makefile
> @@ -11,7 +11,6 @@ obj-y += entry.o
>   obj-y += head.o
>   obj-y += insn.o
>   obj-$(CONFIG_LIVEPATCH) += livepatch.o
> -obj-y += mm.o
>   obj-y += smc.o
>   obj-y += smpboot.o
>   obj-$(CONFIG_ARM64_SVE) += sve.o sve-asm.o
> diff --git a/xen/arch/arm/arm64/mmu/Makefile b/xen/arch/arm/arm64/mmu/Makefile
> index 3340058c08..a8a750a3d0 100644
> --- a/xen/arch/arm/arm64/mmu/Makefile
> +++ b/xen/arch/arm/arm64/mmu/Makefile
> @@ -1 +1,2 @@
>   obj-y += head.o
> +obj-y += mm.o
> diff --git a/xen/arch/arm/arm64/mm.c b/xen/arch/arm/arm64/mmu/mm.c
> similarity index 75%
> rename from xen/arch/arm/arm64/mm.c
> rename to xen/arch/arm/arm64/mmu/mm.c
> index 78b7c7eb00..36073041ed 100644
> --- a/xen/arch/arm/arm64/mm.c
> +++ b/xen/arch/arm/arm64/mmu/mm.c
> @@ -151,6 +151,43 @@ void __init switch_ttbr(uint64_t ttbr)
>       update_identity_mapping(false);
>   }
>
> +/* Map the region in the directmap area. */
> +void __init setup_directmap_mappings(unsigned long base_mfn,
> +                                     unsigned long nr_mfns)
> +{
> +    int rc;
> +
> +    /* First call sets the directmap physical and virtual offset. */
> +    if ( mfn_eq(directmap_mfn_start, INVALID_MFN) )
> +    {
> +        unsigned long mfn_gb = base_mfn & ~((FIRST_SIZE >> PAGE_SHIFT) - 1);
> +
> +        directmap_mfn_start = _mfn(base_mfn);
> +        directmap_base_pdx = mfn_to_pdx(_mfn(base_mfn));
> +        /*
> +         * The base address may not be aligned to the first level
> +         * size (e.g. 1GB when using 4KB pages). This would prevent
> +         * superpage mappings for all the regions because the virtual
> +         * address and machine address should both be suitably aligned.
> +         *
> +         * Prevent that by offsetting the start of the directmap virtual
> +         * address.
> +         */
> +        directmap_virt_start = DIRECTMAP_VIRT_START +
> +            (base_mfn - mfn_gb) * PAGE_SIZE;
> +    }
> +
> +    if ( base_mfn < mfn_x(directmap_mfn_start) )
> +        panic("cannot add directmap mapping at %lx below heap start %lx\n",
> +              base_mfn, mfn_x(directmap_mfn_start));
> +
> +    rc = map_pages_to_xen((vaddr_t)__mfn_to_virt(base_mfn),
> +                          _mfn(base_mfn), nr_mfns,
> +                          PAGE_HYPERVISOR_RW | _PAGE_BLOCK);
> +    if ( rc )
> +        panic("Unable to setup the directmap mappings.\n");
> +}
> +
>   /*
>    * Local variables:
>    * mode: C
> diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h
> index a66aa219b1..ded6d076c5 100644
> --- a/xen/arch/arm/include/asm/mm.h
> +++ b/xen/arch/arm/include/asm/mm.h
> @@ -14,6 +14,12 @@
>   # error "unknown ARM variant"
>   #endif
>
> +#if defined(CONFIG_MMU)
> +# include <asm/mmu/mm.h>
> +#else
> +# error "Unknown memory management layout"
> +#endif
> +
>   /* Align Xen to a 2 MiB boundary. */
>   #define XEN_PADDR_ALIGN (1 << 21)
>
> @@ -170,13 +176,6 @@ extern uint64_t init_ttbr;
>
>   extern paddr_t phys_offset;
>
> -extern mfn_t directmap_mfn_start, directmap_mfn_end;
> -extern vaddr_t directmap_virt_end;
> -#ifdef CONFIG_ARM_64
> -extern vaddr_t directmap_virt_start;
> -extern unsigned long directmap_base_pdx;
> -#endif
> -
>   #ifdef CONFIG_ARM_32
>   #define is_xen_heap_page(page) is_xen_heap_mfn(page_to_mfn(page))
>   #define is_xen_heap_mfn(mfn) ({                                 \
> @@ -199,7 +198,6 @@ extern unsigned long directmap_base_pdx;
>
>   #define maddr_get_owner(ma)   (page_get_owner(maddr_to_page((ma))))
>
> -#define frame_table ((struct page_info *)FRAMETABLE_VIRT_START)
>   /* PDX of the first page in the frame table. */
>   extern unsigned long frametable_base_pdx;
>
> @@ -209,19 +207,11 @@ extern unsigned long frametable_base_pdx;
>   extern void setup_pagetables(unsigned long boot_phys_offset);
>   /* Map FDT in boot pagetable */
>   extern void *early_fdt_map(paddr_t fdt_paddr);
> -/* Switch to a new root page-tables */
> -extern void switch_ttbr(uint64_t ttbr);
>   /* Remove early mappings */
>   extern void remove_early_mappings(void);
>   /* Allocate and initialise pagetables for a secondary CPU. Sets init_ttbr to the
>    * new page table */
>   extern int init_secondary_pagetables(int cpu);
> -/*
> - * For Arm32, set up the direct-mapped xenheap: up to 1GB of contiguous,
> - * always-mapped memory. Base must be 32MB aligned and size a multiple of 32MB.
> - * For Arm64, map the region in the directmap area.
> - */
> -extern void setup_directmap_mappings(unsigned long base_mfn, unsigned long nr_mfns);
>   /* Map a frame table to cover physical addresses ps through pe */
>   extern void setup_frametable_mappings(paddr_t ps, paddr_t pe);
>   /* map a physical range in virtual memory */
> diff --git a/xen/arch/arm/include/asm/mmu/mm.h b/xen/arch/arm/include/asm/mmu/mm.h
> new file mode 100644
> index 0000000000..5e3b14519b
> --- /dev/null
> +++ b/xen/arch/arm/include/asm/mmu/mm.h
> @@ -0,0 +1,47 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +#ifndef __ARM_MMU_MM_H__
> +#define __ARM_MMU_MM_H__
> +
> +extern mfn_t directmap_mfn_start, directmap_mfn_end;

As you are declaring them for MMU specific , you also need this change :-

diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index 89ecb54be2..19b60c5d1b 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -670,7 +670,7 @@ void __init populate_boot_allocator(void)

              s = bootinfo.reserved_mem.bank[i].start;
              e = s + bootinfo.reserved_mem.bank[i].size;
-#ifdef CONFIG_ARM_32
+#if (CONFIG_ARM_32 && CONFIG_MMU)
              /* Avoid the xenheap, note that the xenheap cannot across 
a bank */
              if ( s <= mfn_to_maddr(directmap_mfn_start) &&
                   e >= mfn_to_maddr(directmap_mfn_end) )
@@ -708,7 +708,7 @@ void __init populate_boot_allocator(void)
              if ( e > bank_end )
                  e = bank_end;

-#ifdef CONFIG_ARM_32
+#if (CONFIG_ARM_32 && CONFIG_MMU)
              /* Avoid the xenheap */
              if ( s < mfn_to_maddr(directmap_mfn_end) &&
                   mfn_to_maddr(directmap_mfn_start) < e )

So that directmap_mfn_end and directmap_mfn_start is used only when MMU 
is enabled.

- Ayan

> +extern vaddr_t directmap_virt_end;
> +#ifdef CONFIG_ARM_64
> +extern vaddr_t directmap_virt_start;
> +extern unsigned long directmap_base_pdx;
> +#endif
> +
> +#define frame_table ((struct page_info *)FRAMETABLE_VIRT_START)
> +
> +/*
> + * Print a walk of a page table or p2m
> + *
> + * ttbr is the base address register (TTBR0_EL2 or VTTBR_EL2)
> + * addr is the PA or IPA to translate
> + * root_level is the starting level of the page table
> + *   (e.g. TCR_EL2.SL0 or VTCR_EL2.SL0 )
> + * nr_root_tables is the number of concatenated tables at the root.
> + *   this can only be != 1 for P2M walks starting at the first or
> + *   subsequent level.
> + */
> +void dump_pt_walk(paddr_t ttbr, paddr_t addr,
> +                  unsigned int root_level,
> +                  unsigned int nr_root_tables);
> +
> +/* Switch to a new root page-tables */
> +extern void switch_ttbr(uint64_t ttbr);
> +/*
> + * For Arm32, set up the direct-mapped xenheap: up to 1GB of contiguous,
> + * always-mapped memory. Base must be 32MB aligned and size a multiple of 32MB.
> + * For Arm64, map the region in the directmap area.
> + */
> +extern void setup_directmap_mappings(unsigned long base_mfn, unsigned long nr_mfns);
> +
> +#endif /* __ARM_MMU_MM_H__ */
> +
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
> diff --git a/xen/arch/arm/include/asm/page.h b/xen/arch/arm/include/asm/page.h
> index 657c4b33db..ac65f0277a 100644
> --- a/xen/arch/arm/include/asm/page.h
> +++ b/xen/arch/arm/include/asm/page.h
> @@ -257,21 +257,6 @@ static inline void write_pte(lpae_t *p, lpae_t pte)
>   /* Flush the dcache for an entire page. */
>   void flush_page_to_ram(unsigned long mfn, bool sync_icache);
>
> -/*
> - * Print a walk of a page table or p2m
> - *
> - * ttbr is the base address register (TTBR0_EL2 or VTTBR_EL2)
> - * addr is the PA or IPA to translate
> - * root_level is the starting level of the page table
> - *   (e.g. TCR_EL2.SL0 or VTCR_EL2.SL0 )
> - * nr_root_tables is the number of concatenated tables at the root.
> - *   this can only be != 1 for P2M walks starting at the first or
> - *   subsequent level.
> - */
> -void dump_pt_walk(paddr_t ttbr, paddr_t addr,
> -                  unsigned int root_level,
> -                  unsigned int nr_root_tables);
> -
>   /* Print a walk of the hypervisor's page tables for a virtual addr. */
>   extern void dump_hyp_walk(vaddr_t addr);
>   /* Print a walk of the p2m for a domain for a physical address. */
> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> index 3ee74542ba..eeb65ca6bb 100644
> --- a/xen/arch/arm/mm.c
> +++ b/xen/arch/arm/mm.c
> @@ -11,139 +11,19 @@
>   #include <xen/domain_page.h>
>   #include <xen/grant_table.h>
>   #include <xen/guest_access.h>
> -#include <xen/libfdt/libfdt.h>
>   #include <xen/mm.h>
> -#include <xen/sizes.h>
>
>   #include <xsm/xsm.h>
>
> -#include <asm/setup.h>
> -
>   #include <public/memory.h>
>
>   /* Override macros from asm/page.h to make them work with mfn_t */
>   #undef virt_to_mfn
>   #define virt_to_mfn(va) _mfn(__virt_to_mfn(va))
> -#undef mfn_to_virt
> -#define mfn_to_virt(mfn) __mfn_to_virt(mfn_x(mfn))
> -
> -/* Main runtime page tables */
> -
> -/*
> - * For arm32 xen_pgtable are per-PCPU and are allocated before
> - * bringing up each CPU. For arm64 xen_pgtable is common to all PCPUs.
> - *
> - * xen_second, xen_fixmap and xen_xenmap are always shared between all
> - * PCPUs.
> - */
> -
> -#ifdef CONFIG_ARM_64
> -DEFINE_PAGE_TABLE(xen_pgtable);
> -static DEFINE_PAGE_TABLE(xen_first);
> -#define THIS_CPU_PGTABLE xen_pgtable
> -#else
> -/* Per-CPU pagetable pages */
> -/* xen_pgtable == root of the trie (zeroeth level on 64-bit, first on 32-bit) */
> -DEFINE_PER_CPU(lpae_t *, xen_pgtable);
> -#define THIS_CPU_PGTABLE this_cpu(xen_pgtable)
> -/* Root of the trie for cpu0, other CPU's PTs are dynamically allocated */
> -DEFINE_PAGE_TABLE(cpu0_pgtable);
> -#endif
> -
> -/* Common pagetable leaves */
> -/* Second level page table used to cover Xen virtual address space */
> -static DEFINE_PAGE_TABLE(xen_second);
> -/* Third level page table used for fixmap */
> -DEFINE_BOOT_PAGE_TABLE(xen_fixmap);
> -/*
> - * Third level page table used to map Xen itself with the XN bit set
> - * as appropriate.
> - */
> -static DEFINE_PAGE_TABLES(xen_xenmap, XEN_NR_ENTRIES(2));
> -
> -/* Non-boot CPUs use this to find the correct pagetables. */
> -uint64_t init_ttbr;
> -
> -paddr_t phys_offset;
> -
> -/* Limits of the Xen heap */
> -mfn_t directmap_mfn_start __read_mostly = INVALID_MFN_INITIALIZER;
> -mfn_t directmap_mfn_end __read_mostly;
> -vaddr_t directmap_virt_end __read_mostly;
> -#ifdef CONFIG_ARM_64
> -vaddr_t directmap_virt_start __read_mostly;
> -unsigned long directmap_base_pdx __read_mostly;
> -#endif
>
>   unsigned long frametable_base_pdx __read_mostly;
>   unsigned long frametable_virt_end __read_mostly;
>
> -extern char __init_begin[], __init_end[];
> -
> -/* Checking VA memory layout alignment. */
> -static void __init __maybe_unused build_assertions(void)
> -{
> -    /* 2MB aligned regions */
> -    BUILD_BUG_ON(XEN_VIRT_START & ~SECOND_MASK);
> -    BUILD_BUG_ON(FIXMAP_ADDR(0) & ~SECOND_MASK);
> -    /* 1GB aligned regions */
> -#ifdef CONFIG_ARM_32
> -    BUILD_BUG_ON(XENHEAP_VIRT_START & ~FIRST_MASK);
> -#else
> -    BUILD_BUG_ON(DIRECTMAP_VIRT_START & ~FIRST_MASK);
> -#endif
> -    /* Page table structure constraints */
> -#ifdef CONFIG_ARM_64
> -    /*
> -     * The first few slots of the L0 table is reserved for the identity
> -     * mapping. Check that none of the other regions are overlapping
> -     * with it.
> -     */
> -#define CHECK_OVERLAP_WITH_IDMAP(virt) \
> -    BUILD_BUG_ON(zeroeth_table_offset(virt) < IDENTITY_MAPPING_AREA_NR_L0)
> -
> -    CHECK_OVERLAP_WITH_IDMAP(XEN_VIRT_START);
> -    CHECK_OVERLAP_WITH_IDMAP(VMAP_VIRT_START);
> -    CHECK_OVERLAP_WITH_IDMAP(FRAMETABLE_VIRT_START);
> -    CHECK_OVERLAP_WITH_IDMAP(DIRECTMAP_VIRT_START);
> -#undef CHECK_OVERLAP_WITH_IDMAP
> -#endif
> -    BUILD_BUG_ON(first_table_offset(XEN_VIRT_START));
> -#ifdef CONFIG_ARCH_MAP_DOMAIN_PAGE
> -    BUILD_BUG_ON(DOMHEAP_VIRT_START & ~FIRST_MASK);
> -#endif
> -    /*
> -     * The boot code expects the regions XEN_VIRT_START, FIXMAP_ADDR(0),
> -     * BOOT_FDT_VIRT_START to use the same 0th (arm64 only) and 1st
> -     * slot in the page tables.
> -     */
> -#define CHECK_SAME_SLOT(level, virt1, virt2) \
> -    BUILD_BUG_ON(level##_table_offset(virt1) != level##_table_offset(virt2))
> -
> -#define CHECK_DIFFERENT_SLOT(level, virt1, virt2) \
> -    BUILD_BUG_ON(level##_table_offset(virt1) == level##_table_offset(virt2))
> -
> -#ifdef CONFIG_ARM_64
> -    CHECK_SAME_SLOT(zeroeth, XEN_VIRT_START, FIXMAP_ADDR(0));
> -    CHECK_SAME_SLOT(zeroeth, XEN_VIRT_START, BOOT_FDT_VIRT_START);
> -#endif
> -    CHECK_SAME_SLOT(first, XEN_VIRT_START, FIXMAP_ADDR(0));
> -    CHECK_SAME_SLOT(first, XEN_VIRT_START, BOOT_FDT_VIRT_START);
> -
> -    /*
> -     * For arm32, the temporary mapping will re-use the domheap
> -     * first slot and the second slots will match.
> -     */
> -#ifdef CONFIG_ARM_32
> -    CHECK_SAME_SLOT(first, TEMPORARY_XEN_VIRT_START, DOMHEAP_VIRT_START);
> -    CHECK_DIFFERENT_SLOT(first, XEN_VIRT_START, TEMPORARY_XEN_VIRT_START);
> -    CHECK_SAME_SLOT(second, XEN_VIRT_START, TEMPORARY_XEN_VIRT_START);
> -#endif
> -
> -#undef CHECK_SAME_SLOT
> -#undef CHECK_DIFFERENT_SLOT
> -}
> -
>   void flush_page_to_ram(unsigned long mfn, bool sync_icache)
>   {
>       void *v = map_domain_page(_mfn(mfn));
> @@ -163,222 +43,6 @@ void flush_page_to_ram(unsigned long mfn, bool sync_icache)
>           invalidate_icache();
>   }
>
> -void * __init early_fdt_map(paddr_t fdt_paddr)
> -{
> -    /* We are using 2MB superpage for mapping the FDT */
> -    paddr_t base_paddr = fdt_paddr & SECOND_MASK;
> -    paddr_t offset;
> -    void *fdt_virt;
> -    uint32_t size;
> -    int rc;
> -
> -    /*
> -     * Check whether the physical FDT address is set and meets the minimum
> -     * alignment requirement. Since we are relying on MIN_FDT_ALIGN to be at
> -     * least 8 bytes so that we always access the magic and size fields
> -     * of the FDT header after mapping the first chunk, double check if
> -     * that is indeed the case.
> -     */
> -    BUILD_BUG_ON(MIN_FDT_ALIGN < 8);
> -    if ( !fdt_paddr || fdt_paddr % MIN_FDT_ALIGN )
> -        return NULL;
> -
> -    /* The FDT is mapped using 2MB superpage */
> -    BUILD_BUG_ON(BOOT_FDT_VIRT_START % SZ_2M);
> -
> -    rc = map_pages_to_xen(BOOT_FDT_VIRT_START, maddr_to_mfn(base_paddr),
> -                          SZ_2M >> PAGE_SHIFT,
> -                          PAGE_HYPERVISOR_RO | _PAGE_BLOCK);
> -    if ( rc )
> -        panic("Unable to map the device-tree.\n");
> -
> -
> -    offset = fdt_paddr % SECOND_SIZE;
> -    fdt_virt = (void *)BOOT_FDT_VIRT_START + offset;
> -
> -    if ( fdt_magic(fdt_virt) != FDT_MAGIC )
> -        return NULL;
> -
> -    size = fdt_totalsize(fdt_virt);
> -    if ( size > MAX_FDT_SIZE )
> -        return NULL;
> -
> -    if ( (offset + size) > SZ_2M )
> -    {
> -        rc = map_pages_to_xen(BOOT_FDT_VIRT_START + SZ_2M,
> -                              maddr_to_mfn(base_paddr + SZ_2M),
> -                              SZ_2M >> PAGE_SHIFT,
> -                              PAGE_HYPERVISOR_RO | _PAGE_BLOCK);
> -        if ( rc )
> -            panic("Unable to map the device-tree\n");
> -    }
> -
> -    return fdt_virt;
> -}
> -
> -void __init remove_early_mappings(void)
> -{
> -    int rc;
> -
> -    /* destroy the _PAGE_BLOCK mapping */
> -    rc = modify_xen_mappings(BOOT_FDT_VIRT_START,
> -                             BOOT_FDT_VIRT_START + BOOT_FDT_VIRT_SIZE,
> -                             _PAGE_BLOCK);
> -    BUG_ON(rc);
> -}
> -
> -/*
> - * After boot, Xen page-tables should not contain mapping that are both
> - * Writable and eXecutables.
> - *
> - * This should be called on each CPU to enforce the policy.
> - */
> -static void xen_pt_enforce_wnx(void)
> -{
> -    WRITE_SYSREG(READ_SYSREG(SCTLR_EL2) | SCTLR_Axx_ELx_WXN, SCTLR_EL2);
> -    /*
> -     * The TLBs may cache SCTLR_EL2.WXN. So ensure it is synchronized
> -     * before flushing the TLBs.
> -     */
> -    isb();
> -    flush_xen_tlb_local();
> -}
> -
> -/* Boot-time pagetable setup.
> - * Changes here may need matching changes in head.S */
> -void __init setup_pagetables(unsigned long boot_phys_offset)
> -{
> -    uint64_t ttbr;
> -    lpae_t pte, *p;
> -    int i;
> -
> -    phys_offset = boot_phys_offset;
> -
> -    arch_setup_page_tables();
> -
> -#ifdef CONFIG_ARM_64
> -    pte = pte_of_xenaddr((uintptr_t)xen_first);
> -    pte.pt.table = 1;
> -    pte.pt.xn = 0;
> -    xen_pgtable[zeroeth_table_offset(XEN_VIRT_START)] = pte;
> -
> -    p = (void *) xen_first;
> -#else
> -    p = (void *) cpu0_pgtable;
> -#endif
> -
> -    /* Map xen second level page-table */
> -    p[0] = pte_of_xenaddr((uintptr_t)(xen_second));
> -    p[0].pt.table = 1;
> -    p[0].pt.xn = 0;
> -
> -    /* Break up the Xen mapping into pages and protect them separately. */
> -    for ( i = 0; i < XEN_NR_ENTRIES(3); i++ )
> -    {
> -        vaddr_t va = XEN_VIRT_START + (i << PAGE_SHIFT);
> -
> -        if ( !is_kernel(va) )
> -            break;
> -        pte = pte_of_xenaddr(va);
> -        pte.pt.table = 1; /* third level mappings always have this bit set */
> -        if ( is_kernel_text(va) || is_kernel_inittext(va) )
> -        {
> -            pte.pt.xn = 0;
> -            pte.pt.ro = 1;
> -        }
> -        if ( is_kernel_rodata(va) )
> -            pte.pt.ro = 1;
> -        xen_xenmap[i] = pte;
> -    }
> -
> -    /* Initialise xen second level entries ... */
> -    /* ... Xen's text etc */
> -    for ( i = 0; i < XEN_NR_ENTRIES(2); i++ )
> -    {
> -        vaddr_t va = XEN_VIRT_START + (i << XEN_PT_LEVEL_SHIFT(2));
> -
> -        pte = pte_of_xenaddr((vaddr_t)(xen_xenmap + i * XEN_PT_LPAE_ENTRIES));
> -        pte.pt.table = 1;
> -        xen_second[second_table_offset(va)] = pte;
> -    }
> -
> -    /* ... Fixmap */
> -    pte = pte_of_xenaddr((vaddr_t)xen_fixmap);
> -    pte.pt.table = 1;
> -    xen_second[second_table_offset(FIXMAP_ADDR(0))] = pte;
> -
> -#ifdef CONFIG_ARM_64
> -    ttbr = (uintptr_t) xen_pgtable + phys_offset;
> -#else
> -    ttbr = (uintptr_t) cpu0_pgtable + phys_offset;
> -#endif
> -
> -    switch_ttbr(ttbr);
> -
> -    xen_pt_enforce_wnx();
> -
> -#ifdef CONFIG_ARM_32
> -    per_cpu(xen_pgtable, 0) = cpu0_pgtable;
> -#endif
> -}
> -
> -#ifdef CONFIG_ARM_32
> -/*
> - * Set up the direct-mapped xenheap:
> - * up to 1GB of contiguous, always-mapped memory.
> - */
> -void __init setup_directmap_mappings(unsigned long base_mfn,
> -                                     unsigned long nr_mfns)
> -{
> -    int rc;
> -
> -    rc = map_pages_to_xen(XENHEAP_VIRT_START, _mfn(base_mfn), nr_mfns,
> -                          PAGE_HYPERVISOR_RW | _PAGE_BLOCK);
> -    if ( rc )
> -        panic("Unable to setup the directmap mappings.\n");
> -
> -    /* Record where the directmap is, for translation routines. */
> -    directmap_virt_end = XENHEAP_VIRT_START + nr_mfns * PAGE_SIZE;
> -}
> -#else /* CONFIG_ARM_64 */
> -/* Map the region in the directmap area. */
> -void __init setup_directmap_mappings(unsigned long base_mfn,
> -                                     unsigned long nr_mfns)
> -{
> -    int rc;
> -
> -    /* First call sets the directmap physical and virtual offset. */
> -    if ( mfn_eq(directmap_mfn_start, INVALID_MFN) )
> -    {
> -        unsigned long mfn_gb = base_mfn & ~((FIRST_SIZE >> PAGE_SHIFT) - 1);
> -
> -        directmap_mfn_start = _mfn(base_mfn);
> -        directmap_base_pdx = mfn_to_pdx(_mfn(base_mfn));
> -        /*
> -         * The base address may not be aligned to the first level
> -         * size (e.g. 1GB when using 4KB pages). This would prevent
> -         * superpage mappings for all the regions because the virtual
> -         * address and machine address should both be suitably aligned.
> -         *
> -         * Prevent that by offsetting the start of the directmap virtual
> -         * address.
> -         */
> -        directmap_virt_start = DIRECTMAP_VIRT_START +
> -            (base_mfn - mfn_gb) * PAGE_SIZE;
> -    }
> -
> -    if ( base_mfn < mfn_x(directmap_mfn_start) )
> -        panic("cannot add directmap mapping at %lx below heap start %lx\n",
> -              base_mfn, mfn_x(directmap_mfn_start));
> -
> -    rc = map_pages_to_xen((vaddr_t)__mfn_to_virt(base_mfn),
> -                          _mfn(base_mfn), nr_mfns,
> -                          PAGE_HYPERVISOR_RW | _PAGE_BLOCK);
> -    if ( rc )
> -        panic("Unable to setup the directmap mappings.\n");
> -}
> -#endif
> -
>   /* Map a frame table to cover physical addresses ps through pe */
>   void __init setup_frametable_mappings(paddr_t ps, paddr_t pe)
>   {
> @@ -418,51 +82,6 @@ void __init setup_frametable_mappings(paddr_t ps, paddr_t pe)
>       frametable_virt_end = FRAMETABLE_VIRT_START + (nr_pdxs * sizeof(struct page_info));
>   }
>
> -void *__init arch_vmap_virt_end(void)
> -{
> -    return (void *)(VMAP_VIRT_START + VMAP_VIRT_SIZE);
> -}
> -
> -/* Release all __init and __initdata ranges to be reused */
> -void free_init_memory(void)
> -{
> -    paddr_t pa = virt_to_maddr(__init_begin);
> -    unsigned long len = __init_end - __init_begin;
> -    uint32_t insn;
> -    unsigned int i, nr = len / sizeof(insn);
> -    uint32_t *p;
> -    int rc;
> -
> -    rc = modify_xen_mappings((unsigned long)__init_begin,
> -                             (unsigned long)__init_end, PAGE_HYPERVISOR_RW);
> -    if ( rc )
> -        panic("Unable to map RW the init section (rc = %d)\n", rc);
> -
> -    /*
> -     * From now on, init will not be used for execution anymore,
> -     * so nuke the instruction cache to remove entries related to init.
> -     */
> -    invalidate_icache_local();
> -
> -#ifdef CONFIG_ARM_32
> -    /* udf instruction i.e (see A8.8.247 in ARM DDI 0406C.c) */
> -    insn = 0xe7f000f0;
> -#else
> -    insn = AARCH64_BREAK_FAULT;
> -#endif
> -    p = (uint32_t *)__init_begin;
> -    for ( i = 0; i < nr; i++ )
> -        *(p + i) = insn;
> -
> -    rc = destroy_xen_mappings((unsigned long)__init_begin,
> -                              (unsigned long)__init_end);
> -    if ( rc )
> -        panic("Unable to remove the init section (rc = %d)\n", rc);
> -
> -    init_domheap_pages(pa, pa + len);
> -    printk("Freed %ldkB init memory.\n", (long)(__init_end-__init_begin)>>10);
> -}
> -
>   int steal_page(
>       struct domain *d, struct page_info *page, unsigned int memflags)
>   {
> diff --git a/xen/arch/arm/mmu/Makefile b/xen/arch/arm/mmu/Makefile
> index 0e82015ee1..98aea965df 100644
> --- a/xen/arch/arm/mmu/Makefile
> +++ b/xen/arch/arm/mmu/Makefile
> @@ -1,2 +1,3 @@
>   obj-y += pt.o
> +obj-y += setup.o
>   obj-y += smpboot.o
> diff --git a/xen/arch/arm/mmu/setup.c b/xen/arch/arm/mmu/setup.c
> new file mode 100644
> index 0000000000..eb0dda00dc
> --- /dev/null
> +++ b/xen/arch/arm/mmu/setup.c
> @@ -0,0 +1,345 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +/*
> + * xen/arch/arm/mmu/setup.c
> + *
> + * MMU system boot CPU MM bringup code.
> + */
> +
> +#include <xen/init.h>
> +#include <xen/libfdt/libfdt.h>
> +#include <xen/sizes.h>
> +
> +#include <asm/fixmap.h>
> +
> +/* Override macros from asm/page.h to make them work with mfn_t */
> +#undef mfn_to_virt
> +#define mfn_to_virt(mfn) __mfn_to_virt(mfn_x(mfn))
> +
> +/* Main runtime page tables */
> +
> +/*
> + * For arm32 xen_pgtable are per-PCPU and are allocated before
> + * bringing up each CPU. For arm64 xen_pgtable is common to all PCPUs.
> + *
> + * xen_second, xen_fixmap and xen_xenmap are always shared between all
> + * PCPUs.
> + */
> +
> +#ifdef CONFIG_ARM_64
> +DEFINE_PAGE_TABLE(xen_pgtable);
> +static DEFINE_PAGE_TABLE(xen_first);
> +#define THIS_CPU_PGTABLE xen_pgtable
> +#else
> +/* Per-CPU pagetable pages */
> +/* xen_pgtable == root of the trie (zeroeth level on 64-bit, first on 32-bit) */
> +DEFINE_PER_CPU(lpae_t *, xen_pgtable);
> +#define THIS_CPU_PGTABLE this_cpu(xen_pgtable)
> +/* Root of the trie for cpu0, other CPU's PTs are dynamically allocated */
> +DEFINE_PAGE_TABLE(cpu0_pgtable);
> +#endif
> +
> +/* Common pagetable leaves */
> +/* Second level page table used to cover Xen virtual address space */
> +static DEFINE_PAGE_TABLE(xen_second);
> +/* Third level page table used for fixmap */
> +DEFINE_BOOT_PAGE_TABLE(xen_fixmap);
> +/*
> + * Third level page table used to map Xen itself with the XN bit set
> + * as appropriate.
> + */
> +static DEFINE_PAGE_TABLES(xen_xenmap, XEN_NR_ENTRIES(2));
> +
> +/* Non-boot CPUs use this to find the correct pagetables. */
> +uint64_t init_ttbr;
> +
> +paddr_t phys_offset;
> +
> +/* Limits of the Xen heap */
> +mfn_t directmap_mfn_start __read_mostly = INVALID_MFN_INITIALIZER;
> +mfn_t directmap_mfn_end __read_mostly;
> +vaddr_t directmap_virt_end __read_mostly;
> +#ifdef CONFIG_ARM_64
> +vaddr_t directmap_virt_start __read_mostly;
> +unsigned long directmap_base_pdx __read_mostly;
> +#endif
> +
> +extern char __init_begin[], __init_end[];
> +
> +/* Checking VA memory layout alignment. */
> +static void __init __maybe_unused build_assertions(void)
> +{
> +    /* 2MB aligned regions */
> +    BUILD_BUG_ON(XEN_VIRT_START & ~SECOND_MASK);
> +    BUILD_BUG_ON(FIXMAP_ADDR(0) & ~SECOND_MASK);
> +    /* 1GB aligned regions */
> +#ifdef CONFIG_ARM_32
> +    BUILD_BUG_ON(XENHEAP_VIRT_START & ~FIRST_MASK);
> +#else
> +    BUILD_BUG_ON(DIRECTMAP_VIRT_START & ~FIRST_MASK);
> +#endif
> +    /* Page table structure constraints */
> +#ifdef CONFIG_ARM_64
> +    /*
> +     * The first few slots of the L0 table is reserved for the identity
> +     * mapping. Check that none of the other regions are overlapping
> +     * with it.
> +     */
> +#define CHECK_OVERLAP_WITH_IDMAP(virt) \
> +    BUILD_BUG_ON(zeroeth_table_offset(virt) < IDENTITY_MAPPING_AREA_NR_L0)
> +
> +    CHECK_OVERLAP_WITH_IDMAP(XEN_VIRT_START);
> +    CHECK_OVERLAP_WITH_IDMAP(VMAP_VIRT_START);
> +    CHECK_OVERLAP_WITH_IDMAP(FRAMETABLE_VIRT_START);
> +    CHECK_OVERLAP_WITH_IDMAP(DIRECTMAP_VIRT_START);
> +#undef CHECK_OVERLAP_WITH_IDMAP
> +#endif
> +    BUILD_BUG_ON(first_table_offset(XEN_VIRT_START));
> +#ifdef CONFIG_ARCH_MAP_DOMAIN_PAGE
> +    BUILD_BUG_ON(DOMHEAP_VIRT_START & ~FIRST_MASK);
> +#endif
> +    /*
> +     * The boot code expects the regions XEN_VIRT_START, FIXMAP_ADDR(0),
> +     * BOOT_FDT_VIRT_START to use the same 0th (arm64 only) and 1st
> +     * slot in the page tables.
> +     */
> +#define CHECK_SAME_SLOT(level, virt1, virt2) \
> +    BUILD_BUG_ON(level##_table_offset(virt1) != level##_table_offset(virt2))
> +
> +#define CHECK_DIFFERENT_SLOT(level, virt1, virt2) \
> +    BUILD_BUG_ON(level##_table_offset(virt1) == level##_table_offset(virt2))
> +
> +#ifdef CONFIG_ARM_64
> +    CHECK_SAME_SLOT(zeroeth, XEN_VIRT_START, FIXMAP_ADDR(0));
> +    CHECK_SAME_SLOT(zeroeth, XEN_VIRT_START, BOOT_FDT_VIRT_START);
> +#endif
> +    CHECK_SAME_SLOT(first, XEN_VIRT_START, FIXMAP_ADDR(0));
> +    CHECK_SAME_SLOT(first, XEN_VIRT_START, BOOT_FDT_VIRT_START);
> +
> +    /*
> +     * For arm32, the temporary mapping will re-use the domheap
> +     * first slot and the second slots will match.
> +     */
> +#ifdef CONFIG_ARM_32
> +    CHECK_SAME_SLOT(first, TEMPORARY_XEN_VIRT_START, DOMHEAP_VIRT_START);
> +    CHECK_DIFFERENT_SLOT(first, XEN_VIRT_START, TEMPORARY_XEN_VIRT_START);
> +    CHECK_SAME_SLOT(second, XEN_VIRT_START, TEMPORARY_XEN_VIRT_START);
> +#endif
> +
> +#undef CHECK_SAME_SLOT
> +#undef CHECK_DIFFERENT_SLOT
> +}
> +
> +void * __init early_fdt_map(paddr_t fdt_paddr)
> +{
> +    /* We are using 2MB superpage for mapping the FDT */
> +    paddr_t base_paddr = fdt_paddr & SECOND_MASK;
> +    paddr_t offset;
> +    void *fdt_virt;
> +    uint32_t size;
> +    int rc;
> +
> +    /*
> +     * Check whether the physical FDT address is set and meets the minimum
> +     * alignment requirement. Since we are relying on MIN_FDT_ALIGN to be at
> +     * least 8 bytes so that we always access the magic and size fields
> +     * of the FDT header after mapping the first chunk, double check if
> +     * that is indeed the case.
> +     */
> +    BUILD_BUG_ON(MIN_FDT_ALIGN < 8);
> +    if ( !fdt_paddr || fdt_paddr % MIN_FDT_ALIGN )
> +        return NULL;
> +
> +    /* The FDT is mapped using 2MB superpage */
> +    BUILD_BUG_ON(BOOT_FDT_VIRT_START % SZ_2M);
> +
> +    rc = map_pages_to_xen(BOOT_FDT_VIRT_START, maddr_to_mfn(base_paddr),
> +                          SZ_2M >> PAGE_SHIFT,
> +                          PAGE_HYPERVISOR_RO | _PAGE_BLOCK);
> +    if ( rc )
> +        panic("Unable to map the device-tree.\n");
> +
> +
> +    offset = fdt_paddr % SECOND_SIZE;
> +    fdt_virt = (void *)BOOT_FDT_VIRT_START + offset;
> +
> +    if ( fdt_magic(fdt_virt) != FDT_MAGIC )
> +        return NULL;
> +
> +    size = fdt_totalsize(fdt_virt);
> +    if ( size > MAX_FDT_SIZE )
> +        return NULL;
> +
> +    if ( (offset + size) > SZ_2M )
> +    {
> +        rc = map_pages_to_xen(BOOT_FDT_VIRT_START + SZ_2M,
> +                              maddr_to_mfn(base_paddr + SZ_2M),
> +                              SZ_2M >> PAGE_SHIFT,
> +                              PAGE_HYPERVISOR_RO | _PAGE_BLOCK);
> +        if ( rc )
> +            panic("Unable to map the device-tree\n");
> +    }
> +
> +    return fdt_virt;
> +}
> +
> +void __init remove_early_mappings(void)
> +{
> +    int rc;
> +
> +    /* destroy the _PAGE_BLOCK mapping */
> +    rc = modify_xen_mappings(BOOT_FDT_VIRT_START,
> +                             BOOT_FDT_VIRT_START + BOOT_FDT_VIRT_SIZE,
> +                             _PAGE_BLOCK);
> +    BUG_ON(rc);
> +}
> +
> +/*
> + * After boot, Xen page-tables should not contain mapping that are both
> + * Writable and eXecutables.
> + *
> + * This should be called on each CPU to enforce the policy.
> + */
> +static void xen_pt_enforce_wnx(void)
> +{
> +    WRITE_SYSREG(READ_SYSREG(SCTLR_EL2) | SCTLR_Axx_ELx_WXN, SCTLR_EL2);
> +    /*
> +     * The TLBs may cache SCTLR_EL2.WXN. So ensure it is synchronized
> +     * before flushing the TLBs.
> +     */
> +    isb();
> +    flush_xen_tlb_local();
> +}
> +
> +/*
> + * Boot-time pagetable setup.
> + * Changes here may need matching changes in head.S
> + */
> +void __init setup_pagetables(unsigned long boot_phys_offset)
> +{
> +    uint64_t ttbr;
> +    lpae_t pte, *p;
> +    int i;
> +
> +    phys_offset = boot_phys_offset;
> +
> +    arch_setup_page_tables();
> +
> +#ifdef CONFIG_ARM_64
> +    pte = pte_of_xenaddr((uintptr_t)xen_first);
> +    pte.pt.table = 1;
> +    pte.pt.xn = 0;
> +    xen_pgtable[zeroeth_table_offset(XEN_VIRT_START)] = pte;
> +
> +    p = (void *) xen_first;
> +#else
> +    p = (void *) cpu0_pgtable;
> +#endif
> +
> +    /* Map xen second level page-table */
> +    p[0] = pte_of_xenaddr((uintptr_t)(xen_second));
> +    p[0].pt.table = 1;
> +    p[0].pt.xn = 0;
> +
> +    /* Break up the Xen mapping into pages and protect them separately. */
> +    for ( i = 0; i < XEN_NR_ENTRIES(3); i++ )
> +    {
> +        vaddr_t va = XEN_VIRT_START + (i << PAGE_SHIFT);
> +
> +        if ( !is_kernel(va) )
> +            break;
> +        pte = pte_of_xenaddr(va);
> +        pte.pt.table = 1; /* third level mappings always have this bit set */
> +        if ( is_kernel_text(va) || is_kernel_inittext(va) )
> +        {
> +            pte.pt.xn = 0;
> +            pte.pt.ro = 1;
> +        }
> +        if ( is_kernel_rodata(va) )
> +            pte.pt.ro = 1;
> +        xen_xenmap[i] = pte;
> +    }
> +
> +    /* Initialise xen second level entries ... */
> +    /* ... Xen's text etc */
> +    for ( i = 0; i < XEN_NR_ENTRIES(2); i++ )
> +    {
> +        vaddr_t va = XEN_VIRT_START + (i << XEN_PT_LEVEL_SHIFT(2));
> +
> +        pte = pte_of_xenaddr((vaddr_t)(xen_xenmap + i * XEN_PT_LPAE_ENTRIES));
> +        pte.pt.table = 1;
> +        xen_second[second_table_offset(va)] = pte;
> +    }
> +
> +    /* ... Fixmap */
> +    pte = pte_of_xenaddr((vaddr_t)xen_fixmap);
> +    pte.pt.table = 1;
> +    xen_second[second_table_offset(FIXMAP_ADDR(0))] = pte;
> +
> +#ifdef CONFIG_ARM_64
> +    ttbr = (uintptr_t) xen_pgtable + phys_offset;
> +#else
> +    ttbr = (uintptr_t) cpu0_pgtable + phys_offset;
> +#endif
> +
> +    switch_ttbr(ttbr);
> +
> +    xen_pt_enforce_wnx();
> +
> +#ifdef CONFIG_ARM_32
> +    per_cpu(xen_pgtable, 0) = cpu0_pgtable;
> +#endif
> +}
> +
> +void *__init arch_vmap_virt_end(void)
> +{
> +    return (void *)(VMAP_VIRT_START + VMAP_VIRT_SIZE);
> +}
> +
> +/* Release all __init and __initdata ranges to be reused */
> +void free_init_memory(void)
> +{
> +    paddr_t pa = virt_to_maddr(__init_begin);
> +    unsigned long len = __init_end - __init_begin;
> +    uint32_t insn;
> +    unsigned int i, nr = len / sizeof(insn);
> +    uint32_t *p;
> +    int rc;
> +
> +    rc = modify_xen_mappings((unsigned long)__init_begin,
> +                             (unsigned long)__init_end, PAGE_HYPERVISOR_RW);
> +    if ( rc )
> +        panic("Unable to map RW the init section (rc = %d)\n", rc);
> +
> +    /*
> +     * From now on, init will not be used for execution anymore,
> +     * so nuke the instruction cache to remove entries related to init.
> +     */
> +    invalidate_icache_local();
> +
> +#ifdef CONFIG_ARM_32
> +    /* udf instruction i.e (see A8.8.247 in ARM DDI 0406C.c) */
> +    insn = 0xe7f000f0;
> +#else
> +    insn = AARCH64_BREAK_FAULT;
> +#endif
> +    p = (uint32_t *)__init_begin;
> +    for ( i = 0; i < nr; i++ )
> +        *(p + i) = insn;
> +
> +    rc = destroy_xen_mappings((unsigned long)__init_begin,
> +                              (unsigned long)__init_end);
> +    if ( rc )
> +        panic("Unable to remove the init section (rc = %d)\n", rc);
> +
> +    init_domheap_pages(pa, pa + len);
> +    printk("Freed %ldkB init memory.\n", (long)(__init_end-__init_begin)>>10);
> +}
> +
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
> --
> 2.25.1
>
>


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 11:43:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 11:43:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597285.931504 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeDQ0-0002GY-AW; Thu, 07 Sep 2023 11:43:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597285.931504; Thu, 07 Sep 2023 11:43:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeDQ0-0002GR-7c; Thu, 07 Sep 2023 11:43:28 +0000
Received: by outflank-mailman (input) for mailman id 597285;
 Thu, 07 Sep 2023 11:43:27 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeDPz-0002GH-BI; Thu, 07 Sep 2023 11:43:27 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeDPz-0007x8-8h; Thu, 07 Sep 2023 11:43:27 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeDPy-0001Yx-R0; Thu, 07 Sep 2023 11:43:26 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeDPy-0001BA-QV; Thu, 07 Sep 2023 11:43:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=0suZmXAFORDyZLOaYiOXCYqAFVz27/ORFMrbaOyVoPY=; b=WNY8i8zI3sIIr0/7S7qOOLLcD+
	hVFeLtOlG3nbOWk7tYmo0GtSTP/kqi8QLfoFJscQGP592NfsCIA6nhzKtKtlObwgLUvcAtZ6dIwog
	IMDi6UeLbYKnh2gs+RF6Z+xswvB4BLT4krH/xEkf9DIe3/jyy9YBdBpxgpOXT6u/ZUhI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182689-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182689: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=744a759492b5c57ff24a6e8aabe47b17ad8ee964
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 11:43:26 +0000

flight 182689 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182689/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                744a759492b5c57ff24a6e8aabe47b17ad8ee964
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   10 days
Failing since        182544  2023-08-28 20:42:13 Z    9 days   17 attempts
Testing same since   182689  2023-09-06 18:48:01 Z    0 days    1 attempts

------------------------------------------------------------
2114 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 246137 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 11:57:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 11:57:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597295.931514 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeDdF-0004T9-Gm; Thu, 07 Sep 2023 11:57:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597295.931514; Thu, 07 Sep 2023 11:57:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeDdF-0004T2-DT; Thu, 07 Sep 2023 11:57:09 +0000
Received: by outflank-mailman (input) for mailman id 597295;
 Thu, 07 Sep 2023 11:57:08 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=luvz=EX=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qeDdE-0004Sw-H4
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 11:57:08 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20616.outbound.protection.outlook.com
 [2a01:111:f400:fe59::616])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a9eeaa37-4d75-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 13:57:06 +0200 (CEST)
Received: from DM6PR12MB2618.namprd12.prod.outlook.com (2603:10b6:5:49::24) by
 CY8PR12MB7196.namprd12.prod.outlook.com (2603:10b6:930:58::12) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.30; Thu, 7 Sep 2023 11:57:02 +0000
Received: from DM6PR12MB2618.namprd12.prod.outlook.com
 ([fe80::da03:9b49:1d90:e9d]) by DM6PR12MB2618.namprd12.prod.outlook.com
 ([fe80::da03:9b49:1d90:e9d%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 11:57:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a9eeaa37-4d75-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gNLzyTS7PJRPRlweo7+jW+d0mpJEiPHTmF1xnnXKn6OUnW0wRhmLYwAQlxrKUP/OuCgBRra7cNW5a6GtEz0D0BW+dh2Ykmz6YhCfbrDlI8JIy9RjOIEmeBd6EOsdn6w3AeExfSz9o8EQqGYA9gNJssL5Jb+9Fh5/24UHdOCIWCHqju4i1x7lmS4HOMFEaVqTSHraW9d9SV90wgvCJk0S2OyBzOjoWMpYglM4JlEwbVnUiZm3NKS5g57kj6z38IH43Se8CU+nAJ8Rr9zXHuGdULKKTwhmbanJlFx+EkwgaE90nNR9Pr6ekGZVFZoJIQQv1o5MPHLyvJzc6QxrH8bu8A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ma8U83hnYtF8upM7hyVBMfXe/YLUoHi09bxmUaAOQ5M=;
 b=Cr4/P0nYIKt5I4gw//wLlZpM4ey/EZdsKw7jG380IBZCrDBeAWx2ew4ke8dFY5gpqgl4GdyyGj8W5NsW60b8GioFiGr/gwoQ1gdk3rDjlMstK6iG9j6Qr+9w85jcDcKT+hkCZ/7CHFrvQxo45Ew3IN3payng9eMoOe2LzQ+qAYKX+wZllLLVpbHPQrZB331S0IYooFjCwgVNKp9Ndc0qZdLgVAjCZ3Iun3fL7sKWOgm/nmTgRvrPGo0F+/E6IJ1SGkYBxBNtSG3ZJSix1+nUSFnoOImA0yHS4pEUMtgcfVMTmxgMj2FORFych9wZzHyGA/okYCaoQ6zy26o/90mQbg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ma8U83hnYtF8upM7hyVBMfXe/YLUoHi09bxmUaAOQ5M=;
 b=sHS4s+8r0ZpMXTpjAyXh0ykifLBFhsWb2KkYUlheaD9+3kzmMAlZ6EOgnmj14+hCVDONU5Pv9ZlTWO2NiGIqZiyhXwIKM27FHaEMXFFLSw2ro2aBLt3Nk5r0BvfdGMonAEq+QJj/foN7KEx3yYRCcmCekWsHO932kQRQ+OH2rTw=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <30fc1a00-9b0f-9d1c-4457-f0cda48dd9ae@amd.com>
Date: Thu, 7 Sep 2023 12:56:55 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.0
Subject: Re: [PATCH v6 01/13] xen/arm64: head.S: Introduce
 enable_{boot,secondary}_cpu_mm()
To: Penny Zheng <penny.zheng@arm.com>, Henry Wang <Henry.Wang@arm.com>,
 xen-devel@lists.xenproject.org
Cc: Wei Chen <wei.chen@arm.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Julien Grall <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Julien Grall <jgrall@amazon.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-2-Henry.Wang@arm.com>
 <b86047a6-f394-8dc0-a4ee-87543d6f9204@amd.com>
 <5767f02d-1236-dba1-12f4-6194cd0ed7ca@arm.com>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <5767f02d-1236-dba1-12f4-6194cd0ed7ca@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LNXP265CA0080.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:76::20) To DM6PR12MB2618.namprd12.prod.outlook.com
 (2603:10b6:5:49::24)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DM6PR12MB2618:EE_|CY8PR12MB7196:EE_
X-MS-Office365-Filtering-Correlation-Id: e8a6dddc-735b-462a-0567-08dbaf998c2f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zN9rjcjzBVSTLma1Jw/MooWI2k2bpk6MUK9XyOdxVNro6MVPH6IYZ3SQnQcrqeMAmc66nny3rhpRrgpM3+A/cjnJiP6yGZiSWDHFY/AVDzxBT/qY+8CncHLe0xS2uabUioRoRsC+pIsb+HC+zIziBFOGXzhACZF0g5vENgXGk3XOb2Qj9DUkK/dD2gIBx2WvoVCnnPDDP/AaJO14+gfp5vWbUbT48fL6uk37KqvkKd928sfhayTY0gRJ/L05U+q0PvItZFlPo4iCg5uESHQvKcb71bo7Ybi3fthwdQzSnUasZ9cV0v9xgITnbALk/q0lAu6a7gPq7Is4xzeFh64z3hXSX3Pp/EzARfj1M3UDDV6x7I+YKDeQlOm20xyEJ/u9QQgl7PUr78k75Z/a8pa8/qUwikPHBRlXMpZcgkhoHLGnRCYVx06b6ix2WnM+0575N4sO17MuldDzmGdK+03r1TekbcySNibkSf64k6k368BIan9J3enOKN6KFmvNTwhmeUIyRMjndxXNf/a9nXEzSHW93cEAJ+oHfXw+FArAg5fgTJRmWP+d9Kph5Hfu4PnaqbicUm6W3C6VILiBEGSNl5xgyM5mANXKDWHk1zVhg7ThZeBHkK83Dddwy/KOXXg2ScFYPt3TD9VkH6lPq4bAlA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR12MB2618.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(376002)(346002)(39860400002)(136003)(186009)(451199024)(1800799009)(5660300002)(4326008)(8676002)(8936002)(6506007)(6486002)(316002)(66946007)(54906003)(66556008)(31686004)(66476007)(41300700001)(478600001)(110136005)(2906002)(6666004)(53546011)(6512007)(26005)(2616005)(83380400001)(38100700002)(31696002)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eGRWQ2twVFlGaUY4elFQaUkyZzVkQWFKazJUVlBHMXVMRG9EdUNtVWxENm56?=
 =?utf-8?B?THg3M3NXa0ZUVG5INFNMT0dyN0FJeEZoUmFvWmJhSDN0Q0VHMExRV0hua3FC?=
 =?utf-8?B?RUxlQ1g1ZXJJaUtTYTV1SVJtWUtHTnhndzZyT21Id3BIRWI5dDVES0k2ZTFC?=
 =?utf-8?B?eGZmbktvc2N3emJnWm1vVzVydHhPUU5TV3NmdW9zV0NUZ2V2Znc4Y1pGUTFk?=
 =?utf-8?B?enQvQUE3RWtLSWlPeG1XY3U1T2FGZVd4ZHVUVCtmdUkxamtJRGc2Y1hTQ0RP?=
 =?utf-8?B?Wkp2RXhVZndGSGVIUXNGbFBKUVBhcnBlUlJjUGtGa2N1NGRUUG94L1FwQ0dI?=
 =?utf-8?B?cjFRSmdsVDdjL2MwTGZRbERUNGg3RXUwYk9oa2hKaWtLc2xMRVRRcmFRcVhL?=
 =?utf-8?B?YUJxOEpuaklpWUhiR0hMSWJVa0xzSHdPbXdSZmFzT3ZzWGlySUwxeUpXUGJS?=
 =?utf-8?B?QlRuajQ0NktuRUdoakpjNnVkUXJLdC9IR3R1bVM3NWxiTStYWDRuR0toa2dI?=
 =?utf-8?B?eXJZdDlpYWlNWlU3Qkx5U3VMdDc2ZjVoeHhhckIzK0lKZkFJSERTalNRQlNj?=
 =?utf-8?B?ditFOThZTFR3aDIreHArOW84azJVa2ZzM1J0eUhMaEZYWVBmYTNTOGZTdlcr?=
 =?utf-8?B?S0wvSjBkclNkQ1FJbkkrS2luTGF4ZCtnS0hWd2tqbldMY3c5Ly9aNXh6ZWpn?=
 =?utf-8?B?MnF3TDFiTSttVk94N3d2TDRabkxZckljY0diQ2lWQTBlaXl1OGZUVlZSOUhm?=
 =?utf-8?B?TE5ybHNSQmZmem1YbDkzYXBmSTgzWURxclQ1QWpsZ3V0VEU3VGZFWC85VStM?=
 =?utf-8?B?aGJJSXV0NEs0WUIyMkdoVUE0a3gxNlVkNGRFUUxCSXBRNWNJN2xacGtrejdQ?=
 =?utf-8?B?OGZtR0k2R0VXWUxQb1VZUjRjWU9wRmdQb3dqalM4S0NBT01HMUlTQ2xJVlp4?=
 =?utf-8?B?T2F5OForRE1FUi96SkJYZnROWi9YZmNtajF6Q012YVFZSFVaSEVQeGRTYS9N?=
 =?utf-8?B?REcyME5leTFXQ0VaemtTd29Scm13UzluQXUxM3UrQVJJdHRnQk00UFk1WGdp?=
 =?utf-8?B?enhkbkt4cjBHREllZ2x4cTF3ZjdMOHF5T0hXYm1lWUt3aFRWajhKYm42SnNk?=
 =?utf-8?B?LytyL2djN1A0bjRPK3dRV0J0cmdSU2lVVHkxOXVEblh1UUZxTXJDL01rTEhJ?=
 =?utf-8?B?Rk9kTmVtZHZFUzRRS2lUZVQvZVp3TGVXWnZyelFJUm85YUlRZUNKcjNvMDAv?=
 =?utf-8?B?WUY0RDh1aWo2M0NRbDdHMmRETjlDNkcya0JERysvem4wOGR3OEJ4d3c0TjlY?=
 =?utf-8?B?RDFHMHlYTVMwaWxoRHloSk1Jbk1TeFRkYnpPZWlXdGRtbmh4ZXBJNk5GL01P?=
 =?utf-8?B?eVhtN3kzK0ZMTi81WDJMazd0MmZ6M3NPVDl6cS9QYWZFVEE3Q2NRdjR4Z2ZS?=
 =?utf-8?B?TkkyeUNLYldYZm9UbjgveEhUb1RRc2h5dStnV3FnSXhmMjdUNWNjSEhpM1RV?=
 =?utf-8?B?QlNaZkxTM0N0VFI1aFdoaURvZkpha0dIRWQ3MFZpZWNHSFExcWZzRjdQNWR1?=
 =?utf-8?B?b1U0UjRteWwzVzdCVTN3eUVJN0dLRmNDSFlLbTd2UE5LQnpxTTV4YTZLZVlv?=
 =?utf-8?B?TGZvNWlLeFJkOXNXRmNoOGVTOTRUb3NHdnpBSEZRQXNSWkZMTTdsZEMranJj?=
 =?utf-8?B?ZVVBcXdRcFJFYXFvMDhLOFpNanI4bFRSVThWQlZ6aERaNkJkZGRHUWR1UmtL?=
 =?utf-8?B?djhYZHMrQkdXVElxS1hWL2VQdUhUY2ZUS1pjSTlubTl5L1pmY3hYd2hiMlRk?=
 =?utf-8?B?ODVMcGh6RVFpSXNKNVdwME1WQUQ1K09XSnlTYVhtNEhtc0VLSTBXMlVMSFJT?=
 =?utf-8?B?SW9iTzBWcFVUR3RVSDNiaHNDVjU3eTN0RlJMYnZCUzVpL0ZqREEwWWV2NDky?=
 =?utf-8?B?Y1pSTnB3TmxSNk9qbnpjU2c3YWxicjdnSW1uWUdmSzRjNFl3dENyTk9DZnJv?=
 =?utf-8?B?cUVxVTJsTG9ubXRKYjBFdktCTFhyRkFGdzIxcEVJU054azZLMjdyc2RadW1p?=
 =?utf-8?B?M1BKWjFTaHFOVmwvUWp4VktaYmI3NnFRcXRqRnJxUENEZ0hKU293dnlxTzgx?=
 =?utf-8?Q?435dA9L6GjqfSaGzSOmPXn6f/?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e8a6dddc-735b-462a-0567-08dbaf998c2f
X-MS-Exchange-CrossTenant-AuthSource: DM6PR12MB2618.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 11:57:02.3776
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: dk1NRrlzX9xNe5CX/oB+x02nrf3pMDmHoCGW/rC16d8eJXSZR7Z4ukBKZc6nPwUg2t3UMDUECBat+dGWTHI87A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7196


On 07/09/2023 11:58, Penny Zheng wrote:
> Hi Ayan
Hi Penny,
>
> On 2023/9/7 17:44, Ayan Kumar Halder wrote:
>> Hi Henry,
>>
>> On 28/08/2023 02:32, Henry Wang wrote:
>>> CAUTION: This message has originated from an External Source. Please 
>>> use proper judgment and caution when opening attachments, clicking 
>>> links, or responding to this email.
>>>
>>>
>>> From: Wei Chen <wei.chen@arm.com>
>>>
>>> At the moment, on MMU system, enable_mmu() will return to an
>>> address in the 1:1 mapping, then each path is responsible to
>>> switch to virtual runtime mapping. Then remove_identity_mapping()
>>> is called on the boot CPU to remove all 1:1 mapping.
>>>
>>> Since remove_identity_mapping() is not necessary on Non-MMU system,
>>> and we also avoid creating empty function for Non-MMU system, trying
>>> to keep only one codeflow in arm64/head.S, we move path switch and
>>> remove_identity_mapping() in enable_mmu() on MMU system.
>>>
>>> As the remove_identity_mapping should only be called for the boot
>>> CPU only, so we introduce enable_boot_cpu_mm() for boot CPU and
>>> enable_secondary_cpu_mm() for secondary CPUs in this patch.
>>>
>>> Signed-off-by: Wei Chen <wei.chen@arm.com>
>>> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
>>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>>> Reviewed-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
>>> ---
>>> v6:
>>> - Add Julien's Reviewed-by tag.
>>> v5:
>>> - Add missing "()" in title.
>>> - Use more generic comment in enable_{boot,secondary}_cpu_mm() to
>>>    mention function will return to the vaddr requested by the caller.
>>> - Move 'mov lr, x5' closer to 'b remove_identity_mapping'.
>>> - Drop the 'b fail' for unreachable code in enable_boot_cpu_mm().
>>> v4:
>>> - Clarify remove_identity_mapping() is called on boot CPU and keep
>>>    the function/proc format consistent in commit msg.
>>> - Drop inaccurate (due to the refactor) in-code comment.
>>> - Rename enable_{boot,runtime}_mmu to enable_{boot,secondary}_cpu_mm.
>>> - Reword the in-code comment on top of enable_{boot,secondary}_cpu_mm.
>>> - Call "fail" for unreachable code.
>>> v3:
>>> - new patch
>>> ---
>>>   xen/arch/arm/arm64/head.S | 83 
>>> ++++++++++++++++++++++++++++++---------
>>>   1 file changed, 64 insertions(+), 19 deletions(-)
>>>
>>> diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S
>>> index 5029013a14..f25a41d36c 100644
>>> --- a/xen/arch/arm/arm64/head.S
>>> +++ b/xen/arch/arm/arm64/head.S
>>> @@ -325,21 +325,11 @@ real_start_efi:
>>>
>>>           bl    check_cpu_mode
>>>           bl    cpu_init
>>> -        bl    create_page_tables
>>> -        load_paddr x0, boot_pgtable
>>> -        bl    enable_mmu
>>>
>>> -        /* We are still in the 1:1 mapping. Jump to the runtime 
>>> Virtual Address. */
>>> -        ldr   x0, =primary_switched
>>> -        br    x0
>>> +        ldr   lr, =primary_switched
>>> +        b     enable_boot_cpu_mm
>>> +
>>>   primary_switched:
>>> -        /*
>>> -         * The 1:1 map may clash with other parts of the Xen 
>>> virtual memory
>>> -         * layout. As it is not used anymore, remove it completely to
>>> -         * avoid having to worry about replacing existing mapping
>>> -         * afterwards.
>>> -         */
>>> -        bl    remove_identity_mapping
>>>           bl    setup_fixmap
>>>   #ifdef CONFIG_EARLY_PRINTK
>>>           /* Use a virtual address to access the UART. */
>>> @@ -384,13 +374,10 @@ GLOBAL(init_secondary)
>>>   #endif
>>>           bl    check_cpu_mode
>>>           bl    cpu_init
>>> -        load_paddr x0, init_ttbr
>>> -        ldr   x0, [x0]
>>> -        bl    enable_mmu
>>>
>>> -        /* We are still in the 1:1 mapping. Jump to the runtime 
>>> Virtual Address. */
>>> -        ldr   x0, =secondary_switched
>>> -        br    x0
>>> +        ldr   lr, =secondary_switched
>>> +        b     enable_secondary_cpu_mm
>>> +
>>>   secondary_switched:
>>>   #ifdef CONFIG_EARLY_PRINTK
>>>           /* Use a virtual address to access the UART. */
>>> @@ -748,6 +735,64 @@ enable_mmu:
>>>           ret
>>>   ENDPROC(enable_mmu)
>>>
>>> +/*
>>> + * Enable mm (turn on the data cache and the MMU) for secondary CPUs.
>>> + * The function will return to the virtual address provided in LR 
>>> (e.g. the
>>> + * runtime mapping).
>>> + *
>>> + * Inputs:
>>> + *   lr : Virtual address to return to.
>>> + *
>>> + * Clobbers x0 - x5
>>> + */
>>> +enable_secondary_cpu_mm:
>>> +        mov   x5, lr
>>> +
>>> +        load_paddr x0, init_ttbr
>>> +        ldr   x0, [x0]
>>> +
>>> +        bl    enable_mmu
>>> +        mov   lr, x5
>>> +
>>> +        /* Return to the virtual address requested by the caller. */
>>> +        ret
>>> +ENDPROC(enable_secondary_cpu_mm)
>>> +
>>> +/*
>>> + * Enable mm (turn on the data cache and the MMU) for the boot CPU.
>>> + * The function will return to the virtual address provided in LR 
>>> (e.g. the
>>> + * runtime mapping).
>>> + *
>>> + * Inputs:
>>> + *   lr : Virtual address to return to.
>>> + *
>>> + * Clobbers x0 - x5
>>> + */
>>> +enable_boot_cpu_mm:
>>> +        mov   x5, lr
>>> +
>>> +        bl    create_page_tables
>>> +        load_paddr x0, boot_pgtable
>>> +
>>> +        bl    enable_mmu
>>> +
>>> +        /*
>>> +         * The MMU is turned on and we are in the 1:1 mapping. Switch
>>> +         * to the runtime mapping.
>>> +         */
>>> +        ldr   x0, =1f
>>> +        br    x0
>>> +1:
>>> +        mov   lr, x5
>>> +        /*
>>> +         * The 1:1 map may clash with other parts of the Xen 
>>> virtual memory
>>> +         * layout. As it is not used anymore, remove it completely 
>>> to avoid
>>> +         * having to worry about replacing existing mapping 
>>> afterwards.
>>> +         * Function will return to the virtual address requested by 
>>> the caller.
>>> +         */
>>> +        b     remove_identity_mapping
>>
>>                  ret
>>
>> I guess you also need this ^^^ (Similar to enable_secondary_cpu_mm() 
>> ). Otherwise PC will not switch to the caller.
>>
>
> We have once talked about whether adding ret here in enable_boot_cpu_mm
> in previous serie.
>
> Since the "ret" in remove_identity_mapping will make user jump to the 
> "lr" we defined before "b remove_identity_mapping", it is redundant to
> add another "ret" here. We will never reach the "ret" here

My bad, I see what you mean.

Unlike arm32/head.S enable_mmu(),

remove_identity_mapping() in not called inside enable_mmu() for arm64.

Sorry for the noise.

You can add my RB.

- Ayan

>
>> It will again invoke remove_identity_mapping() (which is redundant) 
>> and then jump to the caller.
>>
>> - Ayan
>>
>>> +ENDPROC(enable_boot_cpu_mm)
>>> +
>>>   /*
>>>    * Remove the 1:1 map from the page-tables. It is not easy to keep 
>>> track
>>>    * where the 1:1 map was mapped, so we will look for the top-level 
>>> entry
>>> -- 
>>> 2.25.1
>>>
>>>


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 11:59:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 11:59:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597305.931523 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeDfs-000581-13; Thu, 07 Sep 2023 11:59:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597305.931523; Thu, 07 Sep 2023 11:59:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeDfr-00057u-Uc; Thu, 07 Sep 2023 11:59:51 +0000
Received: by outflank-mailman (input) for mailman id 597305;
 Thu, 07 Sep 2023 11:59:50 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeDfq-00057g-K7; Thu, 07 Sep 2023 11:59:50 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeDfq-0008Cu-IH; Thu, 07 Sep 2023 11:59:50 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeDfq-0002O8-4c; Thu, 07 Sep 2023 11:59:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeDfq-0000pO-48; Thu, 07 Sep 2023 11:59:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=3Q30AEIH+rrkTMuUZAeI5RZQ+ZV01XuGaYSnOL1IaDQ=; b=RI6nKpOzxAMEUtTv306CQlau4m
	N/0R3GIBR86ua3LsAOH9ehP2hzFXM91w0a7vzjj0zSKqd2kx5mN6XjdjKveFQABj1n4vvh+GSRK0B
	1zHtdIQK+YfM6HEWt/2cIuDoNLdqrDT2VRwGiGqK4e6Jqc7gljjHhE7haErYdqndyZGU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182718-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182718: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=03f64b54a1d14893e7851a60ba4855fb75abf30a
X-Osstest-Versions-That:
    xen=b2dd946ece74e2b6e0601f28caef72f4f9950102
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 11:59:50 +0000

flight 182718 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182718/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  03f64b54a1d14893e7851a60ba4855fb75abf30a
baseline version:
 xen                  b2dd946ece74e2b6e0601f28caef72f4f9950102

Last test of basis   182709  2023-09-07 02:00:31 Z    0 days
Testing same since   182718  2023-09-07 08:00:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Henry Wang <Henry.Wang@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Nicola Vetrini <nicola.vetrini@bugseng.com>
  Stefano Stabellini <sstabellini@kernel.org>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   b2dd946ece..03f64b54a1  03f64b54a1d14893e7851a60ba4855fb75abf30a -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 13:00:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 13:00:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597318.931535 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeEcJ-0007gv-Hq; Thu, 07 Sep 2023 13:00:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597318.931535; Thu, 07 Sep 2023 13:00:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeEcJ-0007go-D7; Thu, 07 Sep 2023 13:00:15 +0000
Received: by outflank-mailman (input) for mailman id 597318;
 Thu, 07 Sep 2023 13:00:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tY2=EX=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qeEcH-0007gi-PZ
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 13:00:13 +0000
Received: from mail-lf1-x134.google.com (mail-lf1-x134.google.com
 [2a00:1450:4864:20::134])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7a6594d5-4d7e-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 15:00:11 +0200 (CEST)
Received: by mail-lf1-x134.google.com with SMTP id
 2adb3069b0e04-501b9f27eb2so2566291e87.0
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 06:00:11 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 x12-20020ac2488c000000b005007fc9ccccsm3179649lfc.122.2023.09.07.06.00.09
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 06:00:09 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7a6594d5-4d7e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694091610; x=1694696410; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=eFcv9xpSdPwUNvg0QQBKpn+GcMcLIIWWzQr0O8eqmlY=;
        b=MUz7uNeSq4tS20GjU/ZckyG7e3kytabf5AXW0+XxW8R1eKdDKCHrzK/9N3ZNYUEipg
         pMRzQJDa1uQdXBClVguWWWOzv8Hdfc2njczL0NHVFh3BibVWBTjQ9/NON2xn9YknUJGr
         9J6r9Fx7tYxHm/axrebAqQSdu9WqWVOkMTB7HaaDuf1CpwxDsJzjeFWI2ih3iUs+SWix
         kHLBrXxdlEmRfwWPOjfxs4tHWioVIH/fGYjMQ0jwsP33kjGSn9A5NFyuaaN3Xksxe1rR
         Ni/zp68fPGFMGqEu1FlbS/YPw25dNO1l/hVBmmOKiIOMkMpEYbHWTySA9Jz1ec4KCbZ/
         mcDQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694091610; x=1694696410;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=eFcv9xpSdPwUNvg0QQBKpn+GcMcLIIWWzQr0O8eqmlY=;
        b=LbhIJEs4NTwm5IfbssGI62wxE8jkvXE+A0NpXLbhT9XxdTYOqeBr+oTOA4p9fl2+N7
         YSDwvR+KeqcYJkdzB1ZZjDODM+79OiFGKFo97Y2HG7lfmcjGRuhVl3LVttjqgxoF8ezG
         zIml/drTTo1OOtC00ikUzc6XZtouaHAvLXA6p8u7K/P/S+iZ41iHm36LEzGuZrdNB3Kp
         xspiZxJPYpz+gbP4s21ETEJbykyMIpzhpGYo4zVIUNpBKQ8wHXSafHV1Y0Vk0j6l9J7Z
         g9ZaDTNv5GzFzDdk33lrlTVMAIcUWNVMSkEe+iJYCF4p63wEntpt7gkaxwkECw6CagTr
         5zIQ==
X-Gm-Message-State: AOJu0YyE/yY/zcLmUESBdM/f/PfmfT30nHU8yP5ERKeU+afmXsPrLYx1
	NBazYCkbSctiTYdVTLKfhuo=
X-Google-Smtp-Source: AGHT+IHcpxzrAF1V9BYMASzlSN3sUYfPicBTCxP0O0vAskoPKunhOPBoBTv9K+9i5FMjqJAGtyBKsw==
X-Received: by 2002:a05:6512:239b:b0:500:bf44:b2b3 with SMTP id c27-20020a056512239b00b00500bf44b2b3mr1043113lfv.21.1694091609866;
        Thu, 07 Sep 2023 06:00:09 -0700 (PDT)
Message-ID: <79dd759e64c5eb5447c7375cdc8e24f5589f1dad.camel@gmail.com>
Subject: Re: [PATCH v6 1/2] xen: asm-generic support
From: Oleksii <oleksii.kurochko@gmail.com>
To: Anthony PERARD <anthony.perard@citrix.com>
Cc: xen-devel@lists.xenproject.org, Andrew Cooper
 <andrew.cooper3@citrix.com>,  George Dunlap <george.dunlap@citrix.com>, Jan
 Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>,  Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Date: Thu, 07 Sep 2023 16:00:08 +0300
In-Reply-To: <11cca5d8-5456-4908-b1be-1664f39fb134@perard>
References: <cover.1694078544.git.oleksii.kurochko@gmail.com>
	 <cf5f446915bd5c8980beda22718efff32678e16b.1694078544.git.oleksii.kurochko@gmail.com>
	 <11cca5d8-5456-4908-b1be-1664f39fb134@perard>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Thu, 2023-09-07 at 11:08 +0100, Anthony PERARD wrote:
> On Thu, Sep 07, 2023 at 12:32:56PM +0300, Oleksii Kurochko wrote:
> > diff --git a/xen/scripts/Makefile.asm-generic
> > b/xen/scripts/Makefile.asm-generic
> > new file mode 100644
> > index 0000000000..92a3a741c5
> > --- /dev/null
> > +++ b/xen/scripts/Makefile.asm-generic
> > @@ -0,0 +1,53 @@
> > +# SPDX-License-Identifier: GPL-2.0-only
> > +# include/asm-generic contains a lot of files that are used
> > +# verbatim by several architectures.
> > +#
> > +# This Makefile reads the file
> > arch/$(SRCARCH)/include/asm/Makefile
> > +# and for each file listed in this file with generic-y creates
> > +# a small wrapper file in arch/$(SRCARCH)/include/generated/asm.
> > +
> > +PHONY :=3D all
> > +all:
> > +
> > +src :=3D $(subst /generated,,$(obj))
> > +
> > +include $(srctree)/scripts/Kbuild.include
> > +-include $(src)/Makefile
> > +
> > +redundant :=3D $(filter $(mandatory-y) $(generated-y), $(generic-y))
> > +redundant +=3D $(foreach f, $(generic-y), $(if $(wildcard
> > $(srctree)/$(src)/$(f)),$(f)))
> > +redundant :=3D $(sort $(redundant))
> > +$(if $(redundant),\
> > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0$(warning redundant generic-=
y found in $(src)/Kbuild:
> > $(redundant)))
>=20
> This warning would need to say "$(src)/Makefile" now instead of
> Kbuild.
Thanks. Missed that.

>=20
> Beside this, patch looks fine to me:
> Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
>=20
> Thanks,
>=20

~ Oleksii



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 13:13:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 13:13:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597326.931543 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeEoZ-0001Ta-Is; Thu, 07 Sep 2023 13:12:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597326.931543; Thu, 07 Sep 2023 13:12:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeEoZ-0001TT-GE; Thu, 07 Sep 2023 13:12:55 +0000
Received: by outflank-mailman (input) for mailman id 597326;
 Thu, 07 Sep 2023 13:12:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeEoY-0001TN-V0
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 13:12:55 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0608.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::608])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 40dd283f-4d80-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 15:12:53 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7734.eurprd04.prod.outlook.com (2603:10a6:20b:2a6::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Thu, 7 Sep
 2023 13:12:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 13:12:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 40dd283f-4d80-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=l8FSipE0OeNY7i0I8sLtzBrXvSC9OwUKX90y45hS7BzyVkPZazop+Iy/2mnqFDMxzzYmEzxAjJJsXLjF6h/aWZYCB1cRmc0PQNbMbF8kxIFW1U3ADCiVgEfgukEZ75KswQYnJZrfHpBBCYiIbR07bH37YNC+zebklKV20Fg+Naf7KJjpyyMmslq0ztTuRlq+iXi18L4vq9GSiIU4VhbEuBWOtD9ZcnTsyvVVKWVnQ6lcnw0y3+43Iv9iA3qpn4lP8iI5mDyFK3OLr0FL9ypRLNLDcP/Mm7Ai0XaekKH5GE4c4Pak0DmzStONy6lrs9WokY5zPC670fdA9P3m7GyUiA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EzY0BtiwbILLQZ4b4TJ6wOWk6JKxQEtwdjfMMMHJBZM=;
 b=VwkXLNUu4KM2OLgabj7EdTPrP3JCDie7pLyybmh+DUjajrjyrm9aeQJo41iPmkUQftEhwfSDyeBoz2TVOQzWGAFbIOXJL0dK9MDUTc6uGc2P7AvlBH7qqPw6r7ewZlCqcuAH7DzLbK0XLFexkW9IjDUDgTFG+94xp9G6Qx8Y74rjq5mpDYzJD2feRrb1CWpD8sJQkng54cQiaE52icPy0ydsSnNRciRF9rSP7DaxZ4W1ey6g8AizWAQRSGB2tzNUYCwQ6knIwzHaaufNo7+jazIvBhPF2EXNEvydE3qdlSpQVIqtliftrJ0Ja8hUXlXk+fgPT9CQvAgTVM13Cp+TMA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EzY0BtiwbILLQZ4b4TJ6wOWk6JKxQEtwdjfMMMHJBZM=;
 b=Gq54lh1K42m2i1I5v911x14pPOsQhgtYRs8muPUJ5YXZREIcTN1XgigjRpEjFgbv0ymsWyzykF36zW3B+5NdsjkFF5gpbN1nRNlMJKt71+aLGKVi3UDKAOaww3mlDBBCCYYNccgbHhTTX8D2EvVbZjyY4MfpAqtnzBQgsuI4CO/nKeBzQZSrgfoQDZmY/45HXp01KH21XtL3mMi56MG6kYWe2cKI61bT5+82q0b2kizNCk/ogZZPmsH7IYJJy1bvYX/VrgVOaRFmxSeFI+k+QIqa3hHMOrtQoBujgd96Xbx4QDCivvbIoTYi0KhMGLFAvT36j8p45tq8JBnh+qIzCw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0a0e3d8e-a7a8-abc4-6a34-739f37e90622@suse.com>
Date: Thu, 7 Sep 2023 15:12:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Content-Language: en-US
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2] x86/HVM: adjust hvm_interrupt_blocked()
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0042.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4a::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB7734:EE_
X-MS-Office365-Filtering-Correlation-Id: 0a3a9326-7171-4250-ced4-08dbafa423e8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8KvLJ/43KkrHwrp91gREoZPkFYHTdMY7JVBLlI+QjOo+rNBdrFtAjimu0lHtV0sAudWjo9/im90JMzHOCuSv/COa2EWlVt9SVnPHt/MgrdehGJvY2UX6leiDtbl+1IOmaP+f2P51efE2qiH7UzuRJ2Hgq8pb8QwfHtdCvJ9jPtQeeNm/lN8j5Kw5wJgFs9+IWxr7UP/rPBEVlvjZVrlhJw3AolZ22UwPGMSW6LrkGYL75coc7sLo0Pu4+GgATHamGJBSh6ATSiyjA3ZyemEiwdbZsXSgfAi3Gnp5P2lTKiATmDZaZxvgwnTnBirddYHZ3twpjL3ss8F2NUxn3/JVTcF3SOgM0THXmBbyCPiMafRFIA+iheWUJZ8ZeNc+qbrRHBPgdpS8qNlklF8IQp/AO/uOg2/+qDMlJ2mweT93/maWK1EY5bVMRdHsb1J9b6W1za3FjinfdDfwBgNSdMjVA7VNYdOwd6j9bJT3sXEzjnCiAJ4T+WogC6r4LIkdrJZTLbR8uUUos19z2qM+1rwiUZakYpHu7J8TeX5N0IwNgpNUv/HhStWyotDeb12+f9ndZniQK4i9pGfASwzvIcM1BVpv3d0E2yLlkzx0yr6LDDVBgnk0SPZ+l8UZvk346Klj3JwoOl99JgO8bwVKMGoUiQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(366004)(376002)(136003)(396003)(186009)(1800799009)(451199024)(6486002)(6506007)(6666004)(6512007)(478600001)(83380400001)(2616005)(26005)(2906002)(6916009)(41300700001)(54906003)(66946007)(316002)(66476007)(66556008)(5660300002)(8936002)(8676002)(4326008)(36756003)(31696002)(86362001)(38100700002)(31686004)(66899024)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WVVNNEZ4VVdtSE9uV3l2ZXVGaWt4dHNpY3BNWVdFczRWeFBUZFdVRWphWmRy?=
 =?utf-8?B?TE5zRGYvVUs5UFgwdHFaRXZYaDNCRjdLbjI2YUkzUTJoNHBXTnJwOGltWTd5?=
 =?utf-8?B?ajZyUndQUEROSHMyUGl6VkRUekhLQjEyUEJXWUNpbW9rY1ptZHltbEFVQWNy?=
 =?utf-8?B?VXFBQmZ6Q1JjSUFqM0hxd3ZBdWhhbFY0cDdMbnIzNURnQTNOcmd0ZTVpRjQz?=
 =?utf-8?B?b1kzMi95UEplOU11QzJIVVZhSGI3ZnNEbDZhZTVGRnJNZGNGT29HS1Y2c2lZ?=
 =?utf-8?B?VEJoOUdxUzFBa3pITDlJWFV4M0tmbFhNYlc0WXRjL2J1NGxYOFY0QmdNSGVP?=
 =?utf-8?B?ZktMY0V0S2dSQktpQnFXWDlxVWQ3RVFEdmlOVFd5RE1sV0h5K3kwK25lZmNl?=
 =?utf-8?B?ZEVabytaN2dVbDRsVjM1RlRMYVluUUk3eGp3YitIckkwbnlmZGtlcGEvaGhu?=
 =?utf-8?B?aitKR25kR0duY3UrWDU3YjlmVXo0YXI0U3hJOFM3SkJkc0hmWDQ0THBSYkpu?=
 =?utf-8?B?VWR5MGdJa2FiRjJibG0rK3pzVEltbFhNZlkxa1pFWkNjaDM2ZjhISWU4RVVE?=
 =?utf-8?B?YVdFcGxPMkVZKzk1TWllcG5oRWhMZFRJZ2pnYW9PQ29iV21YOXpFU0FIRm1I?=
 =?utf-8?B?dXVZRWIyK2RjNzZiR1JXdFI0VlBkR2pZTW1OeFdFWXFxY1ErWDZnc29Scktq?=
 =?utf-8?B?Nm1lYTNtVUVRU0w5b1BuT2xEUzNxT1lNZG9BcDlBbDlmbHpGOGNMTjd6UWZL?=
 =?utf-8?B?SXJiT2NMV0tvMVhRb2V1Y1BLOXg4VERiUmtzU0F0YnBGZkVWWWQySmQrVnQ2?=
 =?utf-8?B?bS8zVzlGbmU4QWdrYk9PdXZXbDdGWjBGbEtXVm5rVitFakx3V1FZTlU3ZlJD?=
 =?utf-8?B?RUJIQUF6RzV0eDFFNEdETGhqMWhYWkJQY2FLSjVLOVpPamN2Y3VtdHcxTk4z?=
 =?utf-8?B?SHZLTVhSWmV3YTdkT1d6SHZ4T0tZcmZSN0FVTGJtVitWcnlRK3p2SzZDMnNy?=
 =?utf-8?B?K3RiK0hPUlgwVTlrSDVsZEhHaXYvL0JmTEdBR3AzMy9qMXNUeWoralIzYjY1?=
 =?utf-8?B?V0JvN0VKSTI4eDVUS2FHYkhkZ1d1NjVzaWlFSDZraUM4WlUzajliMnVOSC91?=
 =?utf-8?B?NEcvYW9qaGpUUHg1Z0czdzJ2N0NuRjFkMktZTXpPQStWdzV1eVBYck11Mzl5?=
 =?utf-8?B?SE5qZDBJc0NUZUtXNW9jN3VNQllRVXlMZVk3L01QNTNpVnpQMkg0bHlSN3cz?=
 =?utf-8?B?cFZwaGJqN3FFKzFveURKekpTZTN2eFVvR3Q0NnZidUxxdWV2U2VtcE1jYXBk?=
 =?utf-8?B?ajF5ZzIrcTY2aTZRUHdNWFc2SGVHd1hkOWZBcWtVTmFvTzFVcEdnNEc4RjBQ?=
 =?utf-8?B?OFJ2a0pnV2tVMzJmenkyS1dDdkQrU3JZaWhTdXdBd1hTNmZ4YjU0YVByaTgr?=
 =?utf-8?B?MkdEZW5yWURPL2UzSVdVUU04cWZWbTFuVEhSOGw5cm54cmR1anlnQ1ZqbFBo?=
 =?utf-8?B?aThpamdOdVlYMDl2WEZ6RTdrbEI0NzB5aWJadEZkR3JSNWs2bnU1ZjF4NGZN?=
 =?utf-8?B?N05wM01nZnZFNDVIWUF2bXpnemJVZmQ4QVN1MkI5U3dkRjEwRytkcVFOeWEw?=
 =?utf-8?B?ZXBSSVdOQXora3J2Vng2b1RtSXprQktKMjFRcTh3V0w3V1pXY1NTRE9FckYw?=
 =?utf-8?B?dm9GWm9TWlJQNEVNS3M0R2hMcThSSkJJaER3WHY1dTM0NTk2emVobVlNRDdj?=
 =?utf-8?B?QjhRa1dlVzlsdmM1bEhaUHJqMjB3THowR1N1bVlqT3hieWFydUFHSmRkTDRu?=
 =?utf-8?B?Y2NyUitRc1ZFNmZUNFB1UDl2bzFOM0twSElUb0JVVTJWUVBGNFFzTTBsa0Fa?=
 =?utf-8?B?R0IxZGxTNmFkMVhMZTNEcDFJdjFYbjdpVUdibThuM1RWM3hmU0V1Vy91cUdo?=
 =?utf-8?B?d2J0WnNMcDhWeUl3blpybHIwSUJzVTkxSkREV3hGQXpZVEQxU3B4THE3Mk96?=
 =?utf-8?B?S1VYRFV5UVUvV0t1M1ZKdHVGS3NZT3NCVmNTYUczODh1eWJmNnRPVXlSRWxR?=
 =?utf-8?B?V2FSeHptZ1FJWlVGUTVkY3pRaTJ4K005NFE4THhSSmwxWXUva09YSFM0ZTNU?=
 =?utf-8?Q?7fAIaC4xDYmiHLwCtC+XrtGvN?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0a3a9326-7171-4250-ced4-08dbafa423e8
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 13:12:51.6128
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /Q6Tu9Xah/dWt1WbGT2EEYVF+aizvayGbZ47Km+0uQqx4GjgPximHhepKJ9cXzfFTut2Ps/MLC/sF/g1oxeE2g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7734

First of all, hvm_intsrc_mce was not considered here at all, yet nothing
blocks #MC (other than an already in-progress #MC, but dealing with this
is not the purpose of this patch).

While nominally STI-shadow only blocks maskable interrupts, but not NMI,
at least Intel offers more leeway: "Nonmaskable interrupts and system-
management interrupts may also be inhibited on the instruction boundary
following such an execution of STI." In case guest kernels might rely on
such behavior, keep the STI check together with the MOV-SS one.

Additionally EFLAGS.IF being clear affects neither #MC nor NMI.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
The EFLAGS.IF check may want moving yet further down, i.e. also past the
TPR check. Otoh it may also be okay to keep the original condition, just
after the added MCE conditional. Except for hvm_intblk_tpr, the specific
types returned here aren't really of interest to callers. The special
case in vmx_intr_assist() concering hvm_intblk_tpr looks to prefer to
have the check done last (i.e. all other blocking reasons to be
prefered). For the one in nvmx_intr_intercept() it's not as clear to me,
though.
---
v2: Keep STI and MOV-SS together.

--- a/xen/arch/x86/hvm/hvm.c
+++ b/xen/arch/x86/hvm/hvm.c
@@ -3904,9 +3904,8 @@ enum hvm_intblk hvm_interrupt_blocked(st
             return intr;
     }
 
-    if ( (intack.source != hvm_intsrc_nmi) &&
-         !(guest_cpu_user_regs()->eflags & X86_EFLAGS_IF) )
-        return hvm_intblk_rflags_ie;
+    if ( intack.source == hvm_intsrc_mce )
+        return hvm_intblk_none;
 
     intr_shadow = alternative_call(hvm_funcs.get_interrupt_shadow, v);
 
@@ -3917,6 +3916,9 @@ enum hvm_intblk hvm_interrupt_blocked(st
         return ((intr_shadow & HVM_INTR_SHADOW_NMI) ?
                 hvm_intblk_nmi_iret : hvm_intblk_none);
 
+    if ( !(guest_cpu_user_regs()->eflags & X86_EFLAGS_IF) )
+        return hvm_intblk_rflags_ie;
+
     if ( intack.source == hvm_intsrc_lapic )
     {
         uint32_t tpr = vlapic_get_reg(vcpu_vlapic(v), APIC_TASKPRI) & 0xF0;


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 13:23:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 13:23:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597337.931553 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeEyY-0003wA-G6; Thu, 07 Sep 2023 13:23:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597337.931553; Thu, 07 Sep 2023 13:23:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeEyY-0003w3-DW; Thu, 07 Sep 2023 13:23:14 +0000
Received: by outflank-mailman (input) for mailman id 597337;
 Thu, 07 Sep 2023 13:23:14 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeEyY-0003vx-1n
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 13:23:14 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0625.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::625])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b14f2e39-4d81-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 15:23:12 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8621.eurprd04.prod.outlook.com (2603:10a6:102:218::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 13:23:10 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 13:23:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b14f2e39-4d81-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=c2GjBLStZT1dV1alp7RYrti7UyMhaKegjwvFaxPmS07v2RovuKbXZAFomKBPIagDZ3fxIbtKf0RZPVKD4FASGytYAzQNfCJOlEYiv9fJNMorzu/aoWTUnkwRHxUJQ78V55smLCV2MyV+5A+PiBVkqgptmMmyi+VvcjqXjinLLpX4Nawv2joPk7rkBCaMTXnK97Fj5BtTd3QEBrXspn8JJNZtEiIhtdZHHyjGKc9VTbqIF0nMkeuMF3AC9WtM89VnJE6rLq9lizKHpVEyNxgef+cpoeObyId9M04nTkfUUOc0HTsb4aX58rJLl5Yo0xPSy7T70AmSDcIuAA674zVW0w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gic7Wce5x6fu7yqymIFAtJ6X/bMHWNnNnQzBp5MVsp0=;
 b=BBxtRfvfz4m+b7cbA0AaqH/7ybFFL9qDmz09hRNk7FSU4VNyJ06+ZHBAsE/495S4GZJS/rhq6yFT+H52wJbmyadyw96OzE0R+Z3wqGeV/qISVyxQ2AYCjg8siX2Mmb2SylQTw6BbRBGsZk6PA/rIGfnoww/wx/gIDvok2h6UazuIIDj5g4qt6rhWSC1AvfSFWOgKgWkaquhePuPVWPhyUHebd1Wpt8vuaSYoeDpd++LNAqzFoIkExcEfTkhb+vzO1s9hWfQDZ0KVNPohWJKGs53l/WC3e0TMi5IVHpzvm1N1t1NhpljReB4NdoT84rAFD1DdjvWgET4bEyz3S1Fpfg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gic7Wce5x6fu7yqymIFAtJ6X/bMHWNnNnQzBp5MVsp0=;
 b=PWj29g0QpMl9zBdmGz11eRyha6tz6Lx/5yAFBCl57m3ahzow0aRFRFIx3ErT0+BF9rJ0V9A77y3Ca7tU8aBKXiMmQ48/RU+fyxfOSa+jRRMtwHwLo7hO9/aTizZhpXdjzW9OrHQeu/pOQPUGQlB93yHADwizzTbKZRAQKoM+1nsgFnVGf5+q2v6MEWZW90so88qVbvz6lLZYoNbDGcEG2MaoQ3PyamF/NnNfBP+kylmD4KjWeXECI5A7ChCasjLF2gTx5dtEzMoEbFfJL8iH2jQAoy1FgtPf5k9yqm7rmXE9pRWDus/Zhv3fZJapYHbvOnyqaJXOHAfN0xfVt6AacQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c0a89bbe-0a78-5aba-bbf9-e9b568745ac2@suse.com>
Date: Thu, 7 Sep 2023 15:23:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v2 2/2] xen/ppc: Drop support for pseries/OpenFirmware
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.1694044614.git.sanastasio@raptorengineering.com>
 <a13e0c54a18c4d87aae88134d9726657f9bdedc5.1694044614.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <a13e0c54a18c4d87aae88134d9726657f9bdedc5.1694044614.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0177.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a0::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8621:EE_
X-MS-Office365-Filtering-Correlation-Id: 00ea21a1-8173-4ee6-4876-08dbafa59478
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ldWnF2wObqJ0m1dfydx8Ma8o7zDVxADkqez71nfeAnxEy+RkEbJXPmJlncawcWtOZmutuBut3QIqrn29fJ/inak6E3zX+2rBkhfaPbj2quWOScL32MYCc5+NYqRKggWUkc+AWn4Fy2IG7vAVaGtAWlYsR4ys37mBosql1PZHtUcj8UqlG/G5uJ1HnMqblBOux4JmKHu20hmTsDlYCIaZviWBnQvayF8DBc0CpibD6xUynvU68lxOGnN7ZQL9eazvObGQE8k82h9GBfbG2ksnW6ngvlWAjrtMUONodPhHEOvFMngalktqdZ6ONyvn13HBFvCrmb7xrh5vIBgFLJ90IW+YWcgTu39tYXffLavw1TgQ+JWgzxZOsgb8O5Ys1Qjd7/pgoCQcxBmdXVPCF7p8sJmNTeGsdR9/UEjyuRNHJ3uVPnqb9JvauYWKkySQ3kNiLTzPckKcd1LdEmA4gHIqbwbQ9Nufmxtpgil6DVmfxdfaF+HllMMNooYFQvJMZiKyZg8e2cY+/tXHKAZHBgXT8KqX4fswP6R5t87zdPzmBe/vlXgcGWBUuS/SzvLOQ3xfkbJDjQd51EBM5zu+0OZ3niGOxgX+W9g3ONZZyJLjNRmcX1Hm7u1tMxvfqyZDDVIAZhoEnPQ1C9UAudJHurT9/g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(376002)(366004)(39860400002)(136003)(1800799009)(186009)(451199024)(86362001)(6512007)(478600001)(31696002)(6506007)(6486002)(36756003)(26005)(2616005)(41300700001)(2906002)(4744005)(4326008)(8676002)(8936002)(31686004)(5660300002)(38100700002)(54906003)(66946007)(53546011)(66476007)(66556008)(6916009)(316002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NWsrZFVKMWltOEtHaWZKR3lSdWNRLzlhUG1aUUhXL2JkSEFXL0pYdlVCeTBL?=
 =?utf-8?B?VUd2cWJQbGNzQmttdEpocTdTQ0M5OXc3VnJVcnJlcWtDNXpGdFpjVk16aEhC?=
 =?utf-8?B?RlB4Z0g4U21RV25NdS8xQ3RqTEVUc2ZkZmNDdnZIT2dhRC9oSHNrdkRTVU9D?=
 =?utf-8?B?aExnYndYQ0lpYTJCV2UyVEl4Yk8wYjRQY25MVkpvbFNTR0xiU3JIeW1tTWFT?=
 =?utf-8?B?TnhtR2VLK2xwZ21ramxXMHNmSU5BSmdLWmV1bTJ4SVViQjFidkhxUHZUTHFV?=
 =?utf-8?B?QlgyZUhYZFo0ZDJReURqbWtHUytMdmRZMU9SaEVOblBHcFdDWEpOK2UzL01B?=
 =?utf-8?B?a0tpVnhyNXJOWlp1VDdsMXFPOG9heDJ3RzBTb291d2VseW1pd0RWdi9McE9S?=
 =?utf-8?B?WHE2OXE0ZDliSzlMb0NDV2E3Z3ZGWXg5S2tzODdUdjNmZFI1SXowYXpaVzQx?=
 =?utf-8?B?ZTVHcU9nZTY1aUQwRmVMaUI2NXNIMlhPOHpmYjQ4aXdrZE1VMEsyU1BqRUZY?=
 =?utf-8?B?MzY4V0pjZnMwYS91Nm12MEVTQVZoTVVSMUk3VXRQbTh6OEphcVlPUWlMTWZV?=
 =?utf-8?B?NSsxb0hhamk1YnJ6YTkxS3NBTXZFNU45YzlaeEJJaFZpeGZ5NEVzckZuTmNa?=
 =?utf-8?B?cmJueTJqSGZ5cU90V25BaFlwdjEvTG1LZDdXdVRMVVJqbHM5SkdwRi83WlI1?=
 =?utf-8?B?eld2QUxHaGgzY3Rvb3MxeGNsWVJRN0JlUU9qOHlqaWtsamJTM29jdlZlSFpp?=
 =?utf-8?B?N1JUZDRZUGNCOHJnODBFV2tnclk1dW5pK3lZcFRzWEJvL21JUU1XSE1XSkhl?=
 =?utf-8?B?eWQ5QXBrejgwM09oWmtONndVWUtxWXdtdkNNcGZTTFBFQnI0VCttTjNOQ0NS?=
 =?utf-8?B?M3BleUEyM3g2clpvbld2S3FCMno0Y0R3aG9sUnZ0czRSRk5rQUlpOTR3L1gv?=
 =?utf-8?B?b1hIOFJiSnRXRXpxNUJwU0J5STdOMW9WRVN2ZVZLak1oU25MK0ZPTndRczlj?=
 =?utf-8?B?VVNsVjdNRTU2NDFtZmswalBpQnRMVzFRVmxxRGdTbXhheUcwWHgvQ2Z5dldZ?=
 =?utf-8?B?dy83VGJtZjJUMnR2T3NRWTh1VHhGeWNiL1ZPTEx1TEtFeFE3RVNocTNjMTQw?=
 =?utf-8?B?bjB3T2YwUlg2WlpIZVJSNW03UWxFMkdaNnVSVmJjeG94Mm5UUnl3UUFITW1l?=
 =?utf-8?B?amY5NFFxdlpYNWVmc3N6YksxNTRJSVJZb3NadmpJenk5YlhkMXdUZ0E3dVc5?=
 =?utf-8?B?K25JR0ExcVc1UlFndnlVcDNPQnBpYXhUZG9SaGFGSytndjlUQzhEcm1QODB3?=
 =?utf-8?B?ZWg3WmIrd1lNTWNaYUlsbjBLYnpnWXJnZkw2TXVieW9sSm9ja1NqN3VsdzNF?=
 =?utf-8?B?T3dmRWFRVmFwencrMEZOSWJUbmlvemhTdHduVm0weFVQdm4rV3RxbEl4WGtS?=
 =?utf-8?B?L2Q0cEk3NUNtKzZ4RU8rTCtmTEhOMXFuUXBVaFFpTFBKUzVuTTRTQXluYURU?=
 =?utf-8?B?Z0V4SlA0aE9DSnVyc0hxRTl2RTNxTkhXWHBlTlMwZzl2UEhCSTNkSlB6VGl2?=
 =?utf-8?B?eGZDTDhicExOMFc4ODJjc3FBRVZHL3dyTG9lbG0ybnJNU2UyY2hJZFMvRU94?=
 =?utf-8?B?SW1TenF1R2ZUU21KOGowbFNrQVBwVWl1ZEhuTUtzV0h2QU1teHJNYzY4bTBv?=
 =?utf-8?B?NVNrbFRIdzlxTmtrWHplaUNHdjFlK1RJNDRMMkM5VXVVSE00SkI1TjhneW5q?=
 =?utf-8?B?TGJiSDZPVGoyWnVPNXhYM0o5NWJvclBlWHRudVBTejYrbDVlREdFa0JYOUow?=
 =?utf-8?B?cllWSXk5aVZmRzBJcEFRbDZqM2MybFhycjVoRy9zSi9iTVZmZ3JtNXpZWVNH?=
 =?utf-8?B?dVFRakkrcURVV29TMHlQTy9nQytXQ2VoelhibmF5blNOMlZFUnVTLy9QMnFk?=
 =?utf-8?B?cGNSTjBScXNGdGI3MVo5MW9sTnF5UmZ0aFArSjZjTXFCTk5SZTBwUWdTdHZF?=
 =?utf-8?B?Q0w3QXFEU2ZWVnB1ZmFOTGtGcFdKZWdGMXMrTDF2QnRYT1NUOXZMcndXb09F?=
 =?utf-8?B?bURZQUtjeDQyRDh5K01HUHNPdHZJbnJXSndGeXFnbUlOcXhlSEs1SlJoSVVr?=
 =?utf-8?Q?9ibd/2EfTbGDGT2dHZ2EBvLlY?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 00ea21a1-8173-4ee6-4876-08dbafa59478
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 13:23:09.9455
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: N7MSxUNGKTsueFIGg54FntZtnsZlL0dUC/1yWrUvgSxUzb5zpYxGqTBiX3gXHbqZuDgQKFIT13RjpgIvkQCbrQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8621

On 07.09.2023 02:01, Shawn Anastasio wrote:
> Since QEMU's PowerNV support has matured to the point where it is
> now suitable for development, drop support for booting on the
> paravirtualized pseries machine type and its associated interfaces.
> 
> Support for booting on pseries was broken by 74b725a64d80 ('xen/ppc:
> Implement initial Radix MMU support'), and since there is little
> practical value in continuing to support pseries as a target, just drop
> support for it entirely.
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> Fixes: 74b725a64d80 ('xen/ppc: Implement initial Radix MMU support')

(Nit: Fixes: tag first please.)

Acked-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Thu Sep 07 13:25:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 13:25:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597343.931564 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeF0H-0004UG-SC; Thu, 07 Sep 2023 13:25:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597343.931564; Thu, 07 Sep 2023 13:25:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeF0H-0004U9-PR; Thu, 07 Sep 2023 13:25:01 +0000
Received: by outflank-mailman (input) for mailman id 597343;
 Thu, 07 Sep 2023 13:25:00 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeF0G-0004Tu-Gg
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 13:25:00 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2040.outbound.protection.outlook.com [40.107.7.40])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f1c80691-4d81-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 15:24:59 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9430.eurprd04.prod.outlook.com (2603:10a6:20b:4da::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 13:24:31 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 13:24:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f1c80691-4d81-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TIWT5jOEv/cINFYM+9KqfdUKEOnjBt/lv9tgk+ZLXFlKwXUX6+FWQdelRt3a9S29I2iVEyG3Cq9tH0H6wKShF87z0hPgJ+Sh4N+U+fru+JyAkWvlbJl9OthnsfCNKtj5XIRKKSd3u8N+tRD7xg7Masr5C8IY/lJun/ATUcGmVhwzIRXEuhJDXZlfoMBwo86LO9JzMS8JlLTXpbAdYoGL1reOtwjpASvwmIXY+20Gy3B3WMgpwAuuGWr/Q/O/dWaYzWUcrUddbawnuCe5guwvZ7YquGiOBRXm9Ub9w+rg15lrozQw16mMYwQcafy5mJkoRJN70RbheNB9QCqgT9nLKg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7s9nDtvaECeQLljz8qD6/7IUuK/9RqmZadBVEtgrNak=;
 b=Wz8gZr1DZzGipqV9hRvUgalsXXLGGPpE3ofdVTj/sXdV6uj+cY/4pOi0DXbz3iefH7+PxPn+8Y2l1lIwZOMtGfOQZhkWE1+UrdeIyT1kmA6wGuSXnl9w2wSk+NHBUcjdUvVnuKfO0u+Tpr+E0AxsoWsxInyifZCMfj1xBZO/pUSWgxU6D5ycUk2UsO0DdIiSjaXEkwSu9uHfH3BRguXxrMwyPEDIceFF1Vazc+FtfJM4PQLgWrLhQX/amKSsqgQLPg2XXF93Ej6OtLGmmTT5oFyKQuZHviEw/PFuTAjF56Qqaoq1m6zUHXBlMiOFQiqIRWs5ghaKJrj8tXA74cAUNA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7s9nDtvaECeQLljz8qD6/7IUuK/9RqmZadBVEtgrNak=;
 b=nc6PMToLZmVMBJC/5nfwWVfwt460P91ALacxRVbbH8tLLEHaV900BETjdkT3QZjbYcj8pFVEJAkZMFTUP73kohz8IwlZkFaAmMjJmEOi9Sm2RI01PzCz9qH9dBdgZoN7+BRN5OPKxCBsE5Q5a06+2xh5DPq82r7fTNhEfeXzOHPYJZ6Tul+/Sbvader1tp5qY+oIUxEtdah2+LXc4KL+taCpfkqBMuXO3MIhBlqsoY2/N/rwDa5e0wsEjMyhiT3o0O3hAUutfq83YsDWxzd3ACaNU2pShzO71JGXff5BotTkEOjzxie2yfTQeaW26sUlQu+wRKitIlrWC29cokXWCg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d4dadf79-a05f-4fb5-193e-1acdb3470a49@suse.com>
Date: Thu, 7 Sep 2023 15:24:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH 1/4] x86/genapic: address a violation of MISRA C:2012
 Rule 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1693990010.git.federico.serafini@bugseng.com>
 <375af065f072488f74003256aecc325f166d532a.1693990010.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <375af065f072488f74003256aecc325f166d532a.1693990010.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0083.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS1PR04MB9430:EE_
X-MS-Office365-Filtering-Correlation-Id: d6de685f-366e-499d-d4c1-08dbafa5c4c4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oYhENMSHsVylIi9QhvBBoq/AkZZQ/t2GbRXE3O+ftlNp+J1ZcCHYXxqOpsYHsfvNIqk8jXZ6zgUNmr1gMoZncHY+F79UhG/2r1zReNlZ4s3tUr1yTgyn3LxvDB/+pwLFQt7bsPO6uA4TyltoVP2umStU1Djxt7Thj4BG2FuWGw59yBNa8/hZz21g3mXN4RIs8hh4w8806taY5Vq/V6v9tuJQZJwOeTNdA3q+ZJK+u91wZvdOyNyC1yg4VivJXVMqMA7ooXpz71svbwctv86oPxqMqlr0Euu5oC2hhN8RP6luH0gge0y3JO9nHG49tkmlNBgSWDxOSPl9M8B9oXXtPbRVCw0m9ZmVPux3E+C55LyKUeubrrJ7zGD2kU9QXdPrfEGTQvDAaBtLJK3AyRl2eRVmLzUUHrA4d/So3QwC3kYVD07nVV9EC0TQE3JhElbVlDkEre7SeoUh/ntDJM3++/zHl+A3OvufC/u6ei5E2wxKZQyUoZ5An6zTb8tWs2gkZr1taZOBwUrYztdPl6I6LkQ2PRfdLeK4wzASc902i5HUp2AX42KxdZm1a7g3BOo/5XYQor3RUa8QBReZs8iU3nziy7bVyk6ScdEVbhnMPDttTPINuaAGJzkhJgJ7o4Nmg3u4KP4o46uP8eokLZ02xg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(136003)(346002)(376002)(39860400002)(396003)(186009)(1800799009)(451199024)(6916009)(36756003)(2906002)(66476007)(54906003)(316002)(66946007)(66556008)(4326008)(8936002)(8676002)(5660300002)(31686004)(41300700001)(26005)(6486002)(6506007)(53546011)(6512007)(558084003)(6666004)(478600001)(38100700002)(2616005)(31696002)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SCtjcUozTEt6ODg1ZVV3MXg5WW5TajVPNHRERnExS0kwcUdVRGZWWlFhamk4?=
 =?utf-8?B?SmtMN3ZybXVyVmRXSVNzQTN2SllveW1rVnhUOTI3UVhlTERBWTlNbXRmcStw?=
 =?utf-8?B?WTVlb1l1RFBVMEZUem5NRTlsZ1ErSFAvaGgyOGZtcFlwOUFBZGhYZDIxL2R0?=
 =?utf-8?B?SXo1bkRlZnI5RDNSTDRzaDQ1eVcyS1ZWVy9OVmM1cFNLVFZNeHRCbTl6NW43?=
 =?utf-8?B?MWQxRVdGcWpBZDlVdDh4b0lpSzBscXNIZzVwR3NheGF1SWlma3RZVE13L3ZN?=
 =?utf-8?B?dUNlOEtEdUZmblZ3OFJJWVExWU9ZeVlZbnZ5UDZYYWczdTNEWDFzRnNCUW9S?=
 =?utf-8?B?ak9LdVJNMCtQL0NvcDFwSTc2cU1qQ2JGWUEvVXF6cGdFcHJYRE5od1dCV3Nt?=
 =?utf-8?B?aUJOSTJIaUpNVzFsR2FTTVE4K042MVY5ckM2Q0xOdzVZb1pKbWdCQ3E3dml1?=
 =?utf-8?B?bFJIM1hiNXYvOFFyRDVabFNoTFEvSk1vR21kbUh4cm4rVzNzVGVPVGp1dlJW?=
 =?utf-8?B?OFUvVFllc0VicVF5VXMvb1N0ZmR6UEQxeDh4NURucjlqdjFLaTNyYm5GNWxr?=
 =?utf-8?B?OXd0MkE1dy93N1RCM2VHRHA0RGRyMVExVDBWSGZsdngrVklxaElLazVHeFNN?=
 =?utf-8?B?ek9WUFlsVnNvcVJPYytFNFVzRVc5RTNlWmdMdlhaeDVzTWQrMlBER0x0UHR2?=
 =?utf-8?B?ZVNscGhOUWNoUityNlU2SVl2UE1EV2daZm9leUo4Mm52R0N6L01mZE5PUzhv?=
 =?utf-8?B?V2cyUXQzUWx3Ym1RVlo0TE5DUXZwS1EyZFJBZThuUCtuQldWYjF6Qm1SeGFT?=
 =?utf-8?B?OHBaVXlFbFBTbUxObU1zWCtQYytvSzZzcVdtclB0aWVzOUVicGliMGlhY1pP?=
 =?utf-8?B?Sm5Qb04xTmt3Zjcva1BNUHZJUzRGTzNvL09XOElvMS9iQTdqVHBXYlozVmNQ?=
 =?utf-8?B?M2pVZXV5dXJhQWlJcGRhR01hQW9rSFBXbzBPelZwUnZ6eS9VRWh1MmZGTGhT?=
 =?utf-8?B?ZFVkNDVpS21jS1gyNFpCNXM5cno2QWgweTEraW85SHJUcWplMjJVV2JCdmdC?=
 =?utf-8?B?NW91SENkWkNkOGhmK0w4WEJuM013Ny83R051a2hyTGI1YUgxc3VSUmtVMVk3?=
 =?utf-8?B?UXN0dVZaTzNmTkpJVTU4bDIzMWhBOURvbnZ1Zk9VYzE4M3Q2NXJnZWM0MlVR?=
 =?utf-8?B?THhmRWFxeS96VHNDd1BYYldQNUlvMzdTc05FZnQ5SGdpVlNyZk9hVHBtbDV2?=
 =?utf-8?B?UEF2a3Bxd0FQWmlKODg2ekhpNnFPVU9lclNBRkpwUTVid2JldktvYUxEOXQz?=
 =?utf-8?B?UzJzVjVlcUJkeFB0eCtFblJYR05UT0RTdDgwQ1FRVldLdGozZkJFbDZPblpX?=
 =?utf-8?B?WmdycitvTVRDZGZUckUxUUtWeVZHcU5XSjNnN0V1L1dzdzR5YW9FU1pXQ3BJ?=
 =?utf-8?B?YlFLeENzeEF2TWMxMFhObzI4bG9SMXlUcWhyM2dlNU9tL1JaTUx0bllFQ2tw?=
 =?utf-8?B?RTBsSWlBUGZwaGJmTlJiMEhucnA3dG1SVXVhQ1N6T1p3UDdLYVZ6VDRJRW5U?=
 =?utf-8?B?RjlidWJZT285Q0I0Um9zOVRpN3lhM1FpYWJqdlJvUWNrYkkzT0pyaVVIVVNZ?=
 =?utf-8?B?eHpxcXlzZmpmQWRhV3hoclE2Ui9PTUcwbUhza3VncHdibU1td2V0QWl3bVdN?=
 =?utf-8?B?cWxqODVuZ3BmQ0E4TFBxbXEyNWhTeEZINVlmb2YvaGlTU3lQU3g5akNXNXVT?=
 =?utf-8?B?b283T2Y1TU8wSXhqb2ZXcEhGWlYxelVRZmhGVXVmWmhsQ1RFQ2lWb0d2RVBq?=
 =?utf-8?B?Wm12dGhzT2lTY3orTThtMTNXYk5SZUpvMVFHRkJGVkVFYWYwNHM4MGZoUEx3?=
 =?utf-8?B?WWxuZ1BUakVkdXBJd0kwbjNBWWRSa3IxSFE3ZFh2WkpTL00zRjF2RmlEMFBs?=
 =?utf-8?B?ZTFESTFiaW9UdEVEK0g3OHEwS3Q5ZU5RWXR6czFrbFQwaEo5V2ZySkFQaUFi?=
 =?utf-8?B?TnVOd3MvZ0hJQ0kzRG84MmNqbnBPNWM3WFY3MWlpZVAwNitxYjZHSjhqSjA5?=
 =?utf-8?B?aGNrN1Iybll6eFNHUHg3UTdDdHIrU0xFZVJHa2lES2xteG83NWV2dEVkOUl3?=
 =?utf-8?Q?yTkMm/ptc1fznKeVBtDDOaJyS?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d6de685f-366e-499d-d4c1-08dbafa5c4c4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 13:24:31.0364
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ZqbEBDx9B5kGTrvj+ZGT/yDNDcVYSNHJlc/Qf/JSe2DeydMWq+Jzm/1RldjeROBLnaVYJlipJ7LREmkW3RFSVQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9430

On 06.09.2023 10:57, Federico Serafini wrote:
> Make function delcaration consistent with the corresponding definition.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Acked-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Thu Sep 07 13:25:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 13:25:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597349.931573 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeF1C-00055M-8t; Thu, 07 Sep 2023 13:25:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597349.931573; Thu, 07 Sep 2023 13:25:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeF1C-00055F-6H; Thu, 07 Sep 2023 13:25:58 +0000
Received: by outflank-mailman (input) for mailman id 597349;
 Thu, 07 Sep 2023 13:25:56 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeF1A-000557-Jb
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 13:25:56 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0613.outbound.protection.outlook.com
 [2a01:111:f400:fe02::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 121541ce-4d82-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 15:25:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9430.eurprd04.prod.outlook.com (2603:10a6:20b:4da::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 13:25:52 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 13:25:52 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 121541ce-4d82-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dmtc8UYGlzoXxVyanuhO9i0BPqusFzex+g4tQGmn2I55azU8k7SM5Cd2EW0QDtmCWJZTl2xhmR4yj7LsS4djwE5Nbd5zDN446vb7HRMfBxo26qkstE4LmEA7uV93nEkq+jOsVm4dF5mX6j+q/YItuKmuk3tXZk5VQOteb26QHQCpDiBYB0E2AN+FOIhZUZNSpqQFwWD27ngQc36UC7a7YNUXdvSf6Wa4J2+CWafFvaT4RX8/4gDxJvEW2xT1JL4oUmVDc2R/XbLwaqqS1lBJevRK4+/bubn6Qzrp3t0mFmQqj/a3G+Yjeb+p59ajuCw4RizZh6JY/El39PiLG3EKKw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6FZugB0mO1M7qBpTO0zBEAPcktqdQR1g9ql3+RnlO2Q=;
 b=kVtv6HPfsyZihrHUU4BMjwAQGcL4zGE1khSvRYMV/uw8AIntGi/FFpK6lbCO/e6LYKiNktSB6jrPle0u2tgJY3uPurvfbg09N+k877sXn/1a7PJgqaxzgxi8Erotxc0aHc75QHGsTnCbJv4y2fKd4DMXNyanzvz9AzRY2M0XEgwcvaDJnZicJnLkkMnAHUgj6ITaJIOjUJ9GpH6kZoTk9YYtkmQ7c3Yek7rmYngiVC1Q5NzregTTeMykbIpPm3tNV3PZRJniujjdYtcToGbQqQkfCdEn1kJuMOSTP+UU7Tm0hPanMuJI+MfAi/MLfogdKsyznP8J9IkUG+JPg/DVGA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6FZugB0mO1M7qBpTO0zBEAPcktqdQR1g9ql3+RnlO2Q=;
 b=rzZuDod2O/1Pc28a2GHKTRrwHixW9wgWULmycQUVN6PmD7oPY+Dse5+ip6SAUBfqYfz6Yn6smCzuZP7hKUDVX/+Pu4w0+HeMs3DLPFSisi9oRkK4SmOovWZIg6HUPzSr6PSH3fWLUo5Eof/WvwpWxm0bgXj+UQ2ijRuGQutTdJ4DKB30WC34LC67BCv/hzjLeQyegooRhdaNZOTzIO6RkdhbC8XWwEdG6mlYnrMDQeLtF/szXtKwdOEI0gYXoQny+hsDAgeiU+7DEGgPZ6sxJCk6uU+I4w5xeP1jIC1KfgPOHbZZqi2GwaiZ2Br79CwFtjGA9fvo6fHKl5Pj1vjsFg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9c78bd33-5bb3-667e-e654-31a0e4c9022a@suse.com>
Date: Thu, 7 Sep 2023 15:25:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH 2/4] x86/io: address violations of MISRA C:2012 Rule
 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1693990010.git.federico.serafini@bugseng.com>
 <f1be66565b6a1155ee25a840ed62474ca9bc08a4.1693990010.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f1be66565b6a1155ee25a840ed62474ca9bc08a4.1693990010.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0228.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b2::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS1PR04MB9430:EE_
X-MS-Office365-Filtering-Correlation-Id: 7765c5eb-e076-4f18-5a74-08dbafa5f530
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	653GFBK2kJrOUd7e/zoo0Q3vsonW1X9OTJngaRV3+pdwPYUsxqsT3+wKOnRz6O2sXHX50frPMKjliijS4hwMYVoPq57VHPbvtpd5BWjOpVkgbNYM/3kmFMMqB5UhY+JyD8ws6WkWEeYvMGGebw9pNQMdVl+DQREqDnv6qHndKNJ9GDCzC5UJpvNx/XZmOAEK1S+V2OLfUMubC3hLzBZgVKuUVAYVR7Mp8RLiv/03Y3EYbCzpFD7rjN3FNNmTjf0qvKuMTtv9TFlMV2d0ZxQ6GJG+cwfBx//NakhkYOmRF6MdxE6M+BnBBb/sTJRSu0lODtqZiG6vnMi2A7s9prY3lf2F0bx0445D4z/vWIw3TYZMXcg7tF+zBl4ZuQZ+72icyl0bETbnPa7pwKknT2hbexCAE7M37GSnH6XXcQ4NBtqR8WY50YvErCJxBdswXzJHIB7+FNozCCE6qcIKGy4mUh6zpI8RpHLx5q3auSMgQiEel8IrxBdp65fqJyImLQzBLRC3bh/y0Z16FoRk4fmshSMWc/D0FAETUQmn08yxJEAC9mBCbTKdMTlYQfnu3Iskwxfef4xkUXiqCBaSB6rng4aNwFg6ZfgAVK1GZgIl9dq0BK2lO+TDzSxURIi4nHltqFYoHaxjH4OfztcxDNkVNQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(136003)(346002)(376002)(39860400002)(396003)(186009)(1800799009)(451199024)(6916009)(36756003)(2906002)(66476007)(54906003)(316002)(66946007)(66556008)(4326008)(8936002)(8676002)(5660300002)(31686004)(41300700001)(26005)(6486002)(6506007)(53546011)(6512007)(558084003)(6666004)(478600001)(38100700002)(2616005)(31696002)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bGd5UmoydjcraUtYRlVBYUMwYndWQ2dOdTYyU0dWbDNoWmhrZ3lQdXZwNERh?=
 =?utf-8?B?c0lkSXhjbjBUZFp1M0EveWdaVTBDeGh1bG5vbHJYb2pKQnkvcTFxUGpzNXRC?=
 =?utf-8?B?ZGJzc3JaKy9Zenk3R3E4U1NXNGpFL2N5YUxkNjc5cW1tV1BhZjdtTzQwdVFQ?=
 =?utf-8?B?QUhyeFgrSVI1MU14bEQzMFFVcnlhbjVkT2JHdWJPMTg1QzBkMzZ5UWU4aS9x?=
 =?utf-8?B?OWlsOEtMVk4yTTdFakZPY3c0TlNmZWJIdmlPdnJSL2lCbEV0YmNzVjlkWXhC?=
 =?utf-8?B?bUp4Vmo2aWNJQ1RYSU04dGkxNTR6d0srTE44c2dzSFg1SGN3OFcxT2FZemk3?=
 =?utf-8?B?RXFXUTA4T2VlNVpoUnA3WW04Q294ZFlsRXBwSFhmOXpnc2NReFphWFhqL0w3?=
 =?utf-8?B?T2N1YXlYQVNETXZuRG41VkU4RWVkRjNmelhOUWtwSmRZd01vRWZEZVlyemJK?=
 =?utf-8?B?c2RpTGdJL2NaY3Z3Z0xHUkxkaGpLcXdncFRwU3ZIVTB6QXdYWGtIYzE0Z3lN?=
 =?utf-8?B?cHBTNEsxcldDYlVqQTh5dFh1NWtUWnN5cHhGOTJ6YVJIOTg1QzI5eGVwVmZv?=
 =?utf-8?B?RGVtWnh1TTFjZkk2bHJpSW5XVkFuU1RML3FRT3EwaThNYkF2MGtSR21Zem0y?=
 =?utf-8?B?bEJaU1I3NWxpOE1ZaU1SeGZZQjZnWGp0cHRlWDF0czZZVGZjSHRVZWNDZnpz?=
 =?utf-8?B?N2pJN09SeXBVZVBOb0RXZUhVMXdKUzZMMjdTTm9XOUhmWVZUWGI4bnBISFhv?=
 =?utf-8?B?YTZkb1c1b1FaSzYzeTFJMVcyOVBvM3FCN2RLemphV2YxTHBiV3JyaG05V1ZT?=
 =?utf-8?B?dVgxT2kzZVBvKzNkclVTRFdGM2xEM0RLMUZMYWl1c2NXc2trMUI4ejVIckdl?=
 =?utf-8?B?MjN3SHJOcDBveTAyTjM3UmI3MThKc2hQK1pXcWhCZEJOallVK0NiMHVXcGpQ?=
 =?utf-8?B?RmJiaDk0VE9KVHVoVmtiMi8vRWhJZDdwMWJMTVZ2aVMrMDl6K0diQ3E0UzlP?=
 =?utf-8?B?a3Vna2dvdEhweldnU1pQT3V0MGpTQ0pjcnBLMk5RRGp2VjdjVmp4Y1E3YXYr?=
 =?utf-8?B?Z0ora2RKdzRwQ29OQTVtU0o0ZHRGZEY2YVZJOFkxcThuZm5EcTVlMkNoZzYx?=
 =?utf-8?B?NUhBZWM1TDV4T0tycC8yZzVwS0JKN1JMWnV0bWtjSE95L2liZ2RtekptNnhP?=
 =?utf-8?B?cUZ4KzhsaTBYc285OFRVK0dqOW9mL0QyUGlUaXZVVkZqM0VJUlpqTHJWMTNC?=
 =?utf-8?B?ZGhqYUZEdUZGRWcvYlU2MmNjQWltZVFKYmNuUFVQZ0JpazlJaGdFdEJvTmIz?=
 =?utf-8?B?UXRQWWl3cEVZNnB5YVFPajVnSG44cUJmTTZtUUpwaTh3RGRlSWlkMXJ6VVJq?=
 =?utf-8?B?S2lOcTYxakN6elN6dTdQZE55TVV2Zk8vRzNJTW9jbFhud0RJTEIySVlBVjFH?=
 =?utf-8?B?WHBIZ2NIZDhEYWFFL3pvL0VxbGZUWFdJT2RiVzVPd2hvWWRYeVRoNENrM1Fs?=
 =?utf-8?B?ZTBJZ3hMUnpleG9tZ1hJK2dWYWdqRnhsamdGNEo4TjkvZWttYTYvVjl6UXpI?=
 =?utf-8?B?STIrOXNQcUE0RjJ1UUhHak1EeWg0WTlzanBBSkJnVlpxbWVJK21qT2R5dFR6?=
 =?utf-8?B?Wi9IWS9KZ2ozUUtuTi9KbncrU2NNMEhtSExZL2tJV0NweU5qNzM5UDVtRWYy?=
 =?utf-8?B?azB1ZFlDU3MrRVBHNXVXMjNCUHhhQ2tNNXVwWjUrWDRqU3VGWitUQXNXbFY3?=
 =?utf-8?B?Y2Y3NlJFMHRSelExRTFSZFhFQlFSRHVMNnV0eHFUdGsrR2s5aWhOTE5yeWNq?=
 =?utf-8?B?YmdFVmhvQW5CaHpRajZ5TlRpcllsajUveTQrTmFiMGVvSUJBeTZERUFRN3Fl?=
 =?utf-8?B?UE94MXRqVjNKaFY4ajY5MzU0MVUrMjdnWFAwNlpUOTRYd3k0bGtRZk5JcW1B?=
 =?utf-8?B?Sk9uSUttWWZMUjNXSmtDdG1VMVZxOE1RMUk3aExRUUtJUzduMGp0NEdnbDIv?=
 =?utf-8?B?TXdiaGh4VnkweDdwdW5ESVVKLzR4OTBqcVV1TXlUMHlUaUREcG5KUXJtYkJ0?=
 =?utf-8?B?QytLM3ZaV01zSE1jbnJZbGkwcnU4TlNJdUhRRTA2L05uWFN3MWdvYVJrNmdh?=
 =?utf-8?Q?RaxlHxC0jqKQqxghfslhbDcmA?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7765c5eb-e076-4f18-5a74-08dbafa5f530
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 13:25:52.2719
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: nGEgbI8iinH7C0to4g8K6h0r0T7xKradiXM/plTfoRXb7+iHMd8aC38/SPRZicnUJw5uXNxn/BAxW5El0Ihr0A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9430

On 06.09.2023 10:57, Federico Serafini wrote:
> Make declarations consistent, no functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Acked-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Thu Sep 07 13:27:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 13:27:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597357.931584 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeF2f-0005ft-Jm; Thu, 07 Sep 2023 13:27:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597357.931584; Thu, 07 Sep 2023 13:27:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeF2f-0005fm-Gi; Thu, 07 Sep 2023 13:27:29 +0000
Received: by outflank-mailman (input) for mailman id 597357;
 Thu, 07 Sep 2023 13:27:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeF2d-0005fe-KX
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 13:27:27 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0627.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::627])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 49271ef8-4d82-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 15:27:26 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAWPR04MB9718.eurprd04.prod.outlook.com (2603:10a6:102:381::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 13:27:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 13:27:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 49271ef8-4d82-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UhZEggBwCBaXVQ+TM8EuMqmKjaPI5smoeyxfGm0nOiRATrtpzFBciODIZPrifUFVhpl06AInMPyxK+WVs+zZbIt+lJNETkXoug0Z7iBGk7hxVlXx0rb/yjawDBHHXTVVKwDNgaamw5C417ndIXP+b/E2rDD92CXL0+u+Fx1qtKC0MoboUDrtvmWZB1KSljw2S47opFyE2npkukeoBSiVlYtQbUmUCeIVrui6WlWDj00eCxCyscdRB0ty8mPKthhN+CGh50G0t3QsbeWtuyd8HqSdnYCKVEkvqX4XZcOp/0dvCdXyoFoj4lIm9gk4iZgx1WHNOBBUS5c2wyJ0rLgVTw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=uewgV2MuD45Goh3bDiDmDbOARnhDF5f8qE/sYeMid9E=;
 b=HQ6g6wwCxoKn4SLQHA6p9rdeC02W1alirchV2Xp7xZkoco2l5qI9qyQw8YhZicn6LhREyVV0maGNULjOTy1jzu6+wSxmspeM8xPosW7scOm7aE6qpEOfPsZGSWge8v9aZZ8dF8kR/Y3Ti6y63qr49UKq5DQEn1QqF3VN8R1FDGrmXhTpiX75AOBeX7p/tq9f5Oz/BhiY0BHh/PAw6WQYX0r1mcXk5oUm83vwRdNjd1gglROaks60KNTaCtaIv277YWGghCW5rixBj7wlTxgbGhOmuDtW/uZWOOhDNUKs+lc8465hp7lWgrYctziFilr+Adkgd2+Q94luFBNyh4B7iw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uewgV2MuD45Goh3bDiDmDbOARnhDF5f8qE/sYeMid9E=;
 b=LMT8YV1UcqXbwRNDB0Ffxv+iL9HwLDj00yPLbQyUEsHlFsUSn3IpXgi4oYvgIPE7dqlE48/chvPfsDDdiRbbKfOL1qQFC4anLdg1wgAMY5fp2uDksZodkdPKPYfXczGLVIeQJ3CjfUN+4YF8ttjiy6+6ZvyBRqbxC/FWyWZQm5Cfi+ejKC/KGljH7au9ql5qfPqqeUZEz8RUg4y37ihUXbKzQHVB0zLhXRxFhKZdFP/vFr8y8ufuOptxeRB0wQUdmJn4Q3FTRBDBiVKJOwK6X/o5sq3cCwKQGTTyHxm+89ZL12Z+R+N1Q+MSElniN3YT6D9QwnX7Ngiyhdw498h2BQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <fc126b75-d048-03cf-6cf7-6185b774cce2@suse.com>
Date: Thu, 7 Sep 2023 15:27:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH 3/4] x86/io_apic: address violations of MISRA C:2012
 Rules 8.2 and 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1693990010.git.federico.serafini@bugseng.com>
 <56bfeae4c6a5c7f65a3f329003583aed6de13b19.1693990010.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <56bfeae4c6a5c7f65a3f329003583aed6de13b19.1693990010.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FRYP281CA0005.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::15)
 To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAWPR04MB9718:EE_
X-MS-Office365-Filtering-Correlation-Id: 8702a808-3f5d-40ef-f431-08dbafa62c54
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5n/sjlTuCUgYYB/rENEmf8zDz2aEn0rGp01cNy1hE0HOdj7apVRsfBWPVGH93cR75vLOQWmnrP+ymjwuNoqNteu+MhnVmJRURwaqlL9JC+yxbgBkWoc8oo/DzvUj1HSJoRyVAGNXtWI4u69paxlvb3e8Q+D6E3da0WBZOR5HBsWoZ9ImmdymhV8EUXMxsZG/9M+txVIW5zcNJFUipPdhijDpq93zWxYL8YQpV/B85cNdyQvLYKuvJ7YR3L+efZr3kLg0vy1boiK/9OFamA0X5lRLfmJ2kEiifmy2439YEpsS4vZzuc8LoGqA8/w4kTZBEXEkllDXkwzwk6iPgIQ/CKDR0G0+OfFyFfoaKW730i+c09MTNYC5PkCDOkccDk5jJ2dL9wEwAg67sZy64NY0ZpLwcdZ+lUv17xyM/sqE7EW8YLnxqenDARTL+LGJvc9txWxyIJusEVUSWlhIOCXJrUXuA/vpml0+ZjVr/UGV9PbRS24XuSwrgF5uy9/0kYyvIZxv4PhRUOntGcqLxkwDQeizUd3/3uJa4EcRTFs8I30diVllsL7qv6w0BEydn1SNyL9AaAmoiAt11Rv3sRUc0xpxQdJ+q8tbumGj7L8CA+r0fOpFN22LZxalQdiEpnOFDsnGLWrAyxIa+N6AIxDJEg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(366004)(396003)(346002)(136003)(451199024)(1800799009)(186009)(86362001)(31686004)(54906003)(2616005)(66476007)(66946007)(66556008)(316002)(6916009)(8936002)(8676002)(4326008)(6506007)(6486002)(53546011)(6512007)(41300700001)(26005)(5660300002)(478600001)(2906002)(31696002)(36756003)(558084003)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VnhDMG9rVWhCbkR5dEd6TjVlUWx2K1hjZ2NHdmlDQ0dkZ0pMb2tvdkoxQUlo?=
 =?utf-8?B?NjVnc1RkdVBDby9ZenFsWFBDSkM5ZUtwS0NrNmYxd1MxZ05tVWdvYzQ0dzJ1?=
 =?utf-8?B?Q25tSm5NOWluMk1JL1NTaG9SLy8yeHRicVFMcDlrSWVLZFJURWt1UENVZ3BM?=
 =?utf-8?B?V3duNm5Yc2Y1N2xIYW9ka0NGc3hEamQwUkZDdHBCRENmSW9lYlFsaGljV3U0?=
 =?utf-8?B?dzY0cmRHTDgyakYveFlIT1lCWXMyZFV3SGU5Zmovc0tHVHp1Nlh1S1MvMUcr?=
 =?utf-8?B?Z2RlemhwcHM1VVhva2ZjdUhtRzZHUE9CNEJjLy9wcThSdjQ2Ym1US1R2REN1?=
 =?utf-8?B?d2E2Y05Zc1pqWHArM0VpbVp4a0dZbURXVjI5anUwYUVkL3QwRnkyTXhSNHhw?=
 =?utf-8?B?dGxWbXJUL3V2ZXNXTDB6ZGg5NXpRNTNYbFljcU9sQ2MrdGtTTlcvalB5RXl5?=
 =?utf-8?B?SnVaT2ljeGNtaldSWGZwbHo4a0ttWHQxTllZS2tWNFQ2dVFjL0FEWXVIbllS?=
 =?utf-8?B?ZHFYdUxpK3EyN1MrV0JLNk9rdU9oR3JHekNudmtFOCsrb2k4eE1HTE5yQXBK?=
 =?utf-8?B?Z3hocS9SYmNPS3duMXhuTUkyaUpXbTRwZjBlRXc3Q1IxODhjWUZXNFg4c3RC?=
 =?utf-8?B?YjlvTktmQm51NnZHTGtzZXF6clRvcXdaZ25wMmRHaDF4cExQS3Q2SHI5T1lS?=
 =?utf-8?B?cnRTc1NSamJUaUVxYVBVaCtSaFlzQ3dxMEV4dEsvNXRsajh6NUVMZG8yV3lL?=
 =?utf-8?B?emdzNForczlGM0t5aTlUdE90cHRJT0YrbkhCSXAybkxVUWNtRWE3a1B4eTV2?=
 =?utf-8?B?OEpUc1lzWm5GbThObHFUSURSUWVkV29qK2JDWm04Z09xVnBNWHJ4dkQ1cjhY?=
 =?utf-8?B?WGpQdk5xUGRrZCs0a01qTXZDRUVRVFJoVGNPSU5RSUhDSUpiMExXcVg4QVMz?=
 =?utf-8?B?NUlSdVQyYjdLWFBxWjVGYS9sU2duenBTZGNCc3Z6ZW1QR3lkdFF1dGJCWUZk?=
 =?utf-8?B?N2JrL3lURUVGTytyc1NSaHU5TjZCRnJXOVVRMUhvM3hYUlVzT1gxeTVaSis2?=
 =?utf-8?B?QVBLalVLdzNtQ1ZHdnNPbGpPZ2Y2MFB6d0hvaUJteEFuU3VCSnhuYjFTMXlN?=
 =?utf-8?B?Ty9mVWZVZVk3MTI3c1E2ZE55WVZJQ3JVYWxpRkdrMmdzREg3TzZjU2c5dEhq?=
 =?utf-8?B?ZGc1cWdHVXU0cllKTk1qd0lJN3NKbU9LT0ZuOFI0aHBvVEd6MTFYdXBpbDd1?=
 =?utf-8?B?TjB5VlBCYkNxMlVxczlwamRlZERhWG5HWW1yamxNbzQ4ZUx3RHNQUWhWSVJx?=
 =?utf-8?B?aVA1YVltU0MzMEZpa055NWJKcElhWVI0WlR5ZHlVSFMwRE1tZFFVby9LQzBR?=
 =?utf-8?B?MVprS3lxaVN4UnFDSDlKS0I4dE9icStYNmxHRmxGa01CR3NLamg0dW1HNkpM?=
 =?utf-8?B?UzBmcTIwVEpIWlJNNWIxL3l4YTI2ZXczaUFoTTQyVkJqaEJwQ0NLQmYwRFFk?=
 =?utf-8?B?cnlyUTN2cEdsRjg1b213dWhobzRINU0vRG5yM1ZwaWVXT1VjSXNuakRWaGdH?=
 =?utf-8?B?enVBb1F1Ujd0VG9DZ3NWallIaWtGRm5ZMGRmTnR1U2FJTC9VblUvL1NpWjVh?=
 =?utf-8?B?cDg4WXZEbHE3YVdHdkhycTFNd3RpRVJEWnMxbjlUZ2MxTkQ0c1dGaDV2dmdI?=
 =?utf-8?B?QXl3d2htRHUvS1J6M3N6eW82eU45ZkQrcVZxb296ZGJYQWpPQkJXeERmeGky?=
 =?utf-8?B?dFNmNTdZcENTdGRlMTRGaW0vbURRRTRmS1d1ZXRrQzUwcGRySnc1b292Z3BU?=
 =?utf-8?B?dGl5ME5lNFVpYWhoYlJwelVpWFo2Si9DNnNHdlh0NHU0cUhVMmtUTVQyVVFw?=
 =?utf-8?B?aEpZanM0d05PZ3JYc1JMamczeHplYTJKeDVILzhKUXczVXFJMFNlby9xRXFT?=
 =?utf-8?B?RW5FbnZHSU54emhNNTUzbFl3czVESStHTkdsWkpkTFlhOTlTQ0dmQlFyZ0Qz?=
 =?utf-8?B?WjFTUW9keVNlbGFmZ0RjZ1dzanczT2h1YWppcWxaYnJnellHMnhKWjBpZ0dk?=
 =?utf-8?B?TnlONjNKeHJ4SVl5UERITWYxK3ByYlg3RS8vSE9LV2FiS3JxZDF2U3E3ZjI0?=
 =?utf-8?Q?4+S/0jvrKPIyEBekJ4qgOPcgB?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8702a808-3f5d-40ef-f431-08dbafa62c54
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 13:27:24.7907
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: LAidUZyYX4De0fFh/2JpE1Gd5XKlBhWAfC8d5gcy5xZ3VRBbfcgik/yZ6q917O0tWPVo2GaGPS+1CjKCi+RKkw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9718

On 06.09.2023 10:57, Federico Serafini wrote:
> Add missing parameter names and make function declarations and
> definitions consistent.
> 
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Acked-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Thu Sep 07 13:32:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 13:32:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597368.931594 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeF7K-0007Tc-5W; Thu, 07 Sep 2023 13:32:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597368.931594; Thu, 07 Sep 2023 13:32:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeF7K-0007TV-1J; Thu, 07 Sep 2023 13:32:18 +0000
Received: by outflank-mailman (input) for mailman id 597368;
 Thu, 07 Sep 2023 13:32:16 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeF7I-0007TP-9q
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 13:32:16 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on060f.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::60f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f532b272-4d82-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 15:32:15 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9059.eurprd04.prod.outlook.com (2603:10a6:102:220::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 13:32:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 13:32:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f532b272-4d82-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ELivh1qQZZ1iCrLon1c6PerbKNY7vqvzoPCFrgkcucDQErWzP71/5o/NwTY0wxG0GsKzO4HpJLHyaxtgetmNnnFpawKaQnGb4BBCQeI8+fAReKr0C4jHy45pxeGehUzypYD2o/ZhlaAIOtnAjLiVCxytwAo3YbtMsQKZne/Puu4kOIiTVw7x67OevV8sLKJ/BxSWOeTotk00ZcJPuWpHKgq8C7P0Yvy51nKC+MsX1akxUHuLRdJ5o7DJG/t0NdDtnnmN3+/Y7+ctboTO4l3P27vBovtepfrudaUgt6OFZfDTUMH2Pc3NUoKQHdUgPqbIVn/30TTduFmJKy7L/3aqnQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AV6hFc8kkfNLjI+EvQ52nGlucU71Gwfh6T5nrw61Ffs=;
 b=STig0WBGTrMjrdD8YJrjRasNdZtT1W0BX+tmAnu/40lTIX236OIcAggBCBr9MZ5RT3Vn8w44T16rpM/ZT9+RcqikJz5U/qhIwItCzNW1vwBnwR+T2G66yyqkjU7KydkgtS50rzgswDcWY+hhEgHQnvZos6n9DFkeJiklbNLZ0fAGHW6+uYDE31fmWTpwpqm1mSwbDx+euTGHaeRlqNbiFd7MZ7AtdbJHbmKvr4LUQ3XQX/31Xv9FpwlJEoLQZvmDAb08z2/JBdmyUhOWY19g1feMZptqN6JAXAw48bhVH4ZbQpr3d5cuF8eWHznsgeakY5zAVBbHQH8UB07utMVmOw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AV6hFc8kkfNLjI+EvQ52nGlucU71Gwfh6T5nrw61Ffs=;
 b=yJhYHMCsVGRARpqYknJKZbVmaPj7cseTmqFoWbT21QWyYghJo9IAENUz/8eyWrsM4uSReB9Jk4A0+gh2vfzwj8IkAX7x2ssjuS5uPNAF8DU/SS/9BpY/Zf70GiSKjc3IlaaIQ/o4qhkmkRvDJCSmx7k0azzbxE1SPmGjUNS/zw/OhwJsAThORpS3DfKYBu8POMO3gjqFp723kYvx84RlNEtyb8dBuj3y3WJtP+KejtmVhEaL7r4Le6sGn6Fd/AcnPnbgMv7Ep09ihIiHuiGoiHC/V7gZF3Z9uydDkhJ9mGhyOabXSec5z+h36IBJe6LYqJgvrwl1RwnFiHDZWMFBxQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4009ad33-2d37-47c8-6e37-c24d8aeb005d@suse.com>
Date: Thu, 7 Sep 2023 15:32:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH 4/4] xen/vpci: address a violation of MISRA C:2012
 Rule 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1693990010.git.federico.serafini@bugseng.com>
 <f5de24818596d88da1c27075c674a823670ee44c.1693990010.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f5de24818596d88da1c27075c674a823670ee44c.1693990010.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0240.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b2::15) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB9059:EE_
X-MS-Office365-Filtering-Correlation-Id: 22b83915-fcb2-4033-2486-08dbafa6d864
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1ni78HIC2w0A2qhBH1B522RadoJ5jCLYCGqEmhPXr4esrLbz2mRZ/MRxhCrKUlSAgFxaEiabp5f0J+pHID6rn8lyIPRS2qMjUxn6Y7P8oEU8KIiteqjg1/Rc3K+MdNI9D/2Cz+XwTKVZ5P3c5IlzC1i4/OEZNlfxMUgSoEajXCMzIfqUOD7M8cq+/asXIZKmz+KaAIobZfmSJZdAJxE8gawVI4x5Xb69xwu9MRlHSn5yCXlkhIgrdy/BZnS7sod7zDAdSNHP7UcZSyFYIBkYzww6uF3ayqliYzK5DBle8JhS4y4GY6RP7LmJdZcHGu6AQ2cLQ+9PtpYzOjUu3Ov0yPDqk3Kgoh1BoOiFaiBmZhZroacnztb+QqCktvxz4qOJ7FQ4PumCsxwnwVn90XqbxmW0cp+tAMLnEgSE9Q0mIRqhudJoc7gDnEtPO41cpPNcx9VusT9NmbG9ssWstNYzpICdnmqGlZKufHif4vCdlN2mV07qn9WenvNr7dqFvXnpFU0AWKBjgE1I0bRdv1gIYP0Ghysqsq3oCt8LIo1WrYKI2WHu6MOJU+rFxnSHsRq9whJbxVCd/0Ykg223oSC6xD+ld3eBZVLEZtC4buaLyXcOWuppv4xWQKY+hxtROg3Pb3h7poxUUwRuCd+Zd/xeFg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(376002)(346002)(39860400002)(366004)(396003)(451199024)(1800799009)(186009)(53546011)(6486002)(6506007)(6666004)(6512007)(478600001)(4744005)(2616005)(26005)(2906002)(316002)(6916009)(66556008)(54906003)(66946007)(8936002)(8676002)(41300700001)(66476007)(5660300002)(4326008)(31696002)(38100700002)(36756003)(86362001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ekY3eGpJMjlPSmEyY3BJTDMxM1NCMDBVeG9vS05NdlpJejlhNWFiSE1MTzhT?=
 =?utf-8?B?TFViQk5OOWNUN3NkSTZ4WTA2SnRXeFpyMit0Qm9nb2JMUnZINEZaWEliYXE0?=
 =?utf-8?B?eUFyVTNFNFlldnFHSnY5cGVYR081L0svQU55RnJreUpaTTFEZTJucFpGUGl4?=
 =?utf-8?B?dTlmNU9aaWZXSjAzUEI2SnhWL1RGcWwvWmhEb0I4UktZK0VEaWhSdnhWandL?=
 =?utf-8?B?VS9YQkNpTlFxa1FJS3B0UWV1WUxtbUxmZXNrTkNBaXI0QWQwMHB3MVIwVVZC?=
 =?utf-8?B?T0Nib1lrWUx0N2xRU0NnVEVJVllxL1MwaWFmYnhUZis0SHZlK2VwUjd6WTl3?=
 =?utf-8?B?WnNzRUN3NDZ4TWtZZzNNY1NvSUc0bVBPUlpUVlVOSk9kVE1QUlZQY3ZsM2h1?=
 =?utf-8?B?alRZZXFWVGk0NUR5c3JwdUEwSmV1QW9OMTA3R3dCd1FQelp4V3pjdDVUNFc0?=
 =?utf-8?B?Tlcyd0dyTlc5Q3YwMk5oYXdPcDI4dkJocE82bC9RR3FmZUo4NHNGblp5R1dz?=
 =?utf-8?B?RFRnMW14Y3dsQzRvVHNzaHFnNXI5V2tVMEdIUFB6R1lSeWM0dDh5enhTUDR6?=
 =?utf-8?B?YUd5aExkVTNLVnpqTGo0N2Y2NUh0Tmd5REhOcUxTNDNuOWFrOXBzdnRNSDZt?=
 =?utf-8?B?VVdJSjNqdElaOFEzcG0xb1VSbGlxU1pPcHpBalBhdnFybDkvQWFWTlhPaG5U?=
 =?utf-8?B?Ukc0WklCUjJvMlNlRTI2dHlXUmtWRzNKUzhBSVFNZ1REbmprQmQwcFY0YnNK?=
 =?utf-8?B?UW1GK1B2N1pJM1BkSXBwRzN0OExTelVoMDNmMUdPUXZJdDlIVys1em1WVEZx?=
 =?utf-8?B?ZzV5Ly9CV1BnV2s5SmxucEF1Si9hWGRPVXVxOXRKZXU1YXBvY0svUnExNmFO?=
 =?utf-8?B?SGdlczc1Z0lrRGJCYlZEaWVENmtld3pxbC80TGNXOTdEaEtmT1BzajJRRkY2?=
 =?utf-8?B?bGFHT2I0TlQyWER2NDVFTW9uWlRBVmg1a0ozb3VRYTFKMXpRVnZuVUJaRHMx?=
 =?utf-8?B?MTdaUXlHZmx3a2d0RnpKblgzczRyQjBaN295NkorUmg0dzN0SnpXbnRmUjhZ?=
 =?utf-8?B?R1FxZ2pMVHR0MnBVajNFSjNWekVOdHRQN1ZMN2ZDN2FlUlUxMWY3SjZDZmhw?=
 =?utf-8?B?UTJ2Nk1raVpMTWlPOEZHOU5SWmFWYTE5Y2NSQldtSklHY1RsMkIrL2NEditU?=
 =?utf-8?B?WVNUUEJwcy8vQUI2d1hrY3g4OHN0UDdDNjNMY3MrTFhGSGQ4MkJWWWpzRXAr?=
 =?utf-8?B?TXJ4cThsQURxa2JWYW5BalNyVy9iaG1hNnZ4THhGdytFM0lLRU5tTjM4S2pY?=
 =?utf-8?B?Y201Z0IzTFlBYThPTldteWVpT1ZFZXppV3NMSVoydk9qZ2VqRkVHMnBwSklI?=
 =?utf-8?B?ZFBBMWpXTytLQ0diL25ZVDI2bklSNzA2M0ZKWlN3QzVMK1l6WnV3UG55RGhR?=
 =?utf-8?B?ZlRpeHVCSW5pRHIwUjkyQXdmWWRVaGE3eHpXSEZiSkFwTGQyTFEyVFVtWk9G?=
 =?utf-8?B?aGZUbm5JdXVJOXA1UkxTNW54cEtNcjFGOXNNNGpPSGhIeEQ0VW4rRE1qekpK?=
 =?utf-8?B?cnN0ZDZmcThLVGFBWUNKK3dMNjY4ZncxYyttcWs1MllyWDZXSDVOQVJKSldM?=
 =?utf-8?B?azZVQ2lxdXpCUms0K09UbjZXSC9DOXNtM0k2QW1nMlo4UUo1czJqK2UrM1kv?=
 =?utf-8?B?ZzluZjF6Q1RRemRCcU5DOWRiWWxCQTdVaWRVdlB4ejBFZmU5bW1LcHZwdDNP?=
 =?utf-8?B?aHhkQ3VnK2JiNUV3UDBDTC9uZ3FpQytvcWFic1VqL0lkRmpwb2ZnNWtEMGVw?=
 =?utf-8?B?YmxHc25MdENHU1VManlBc25Fd2p2NlB5ajNuaUgyY0p0cG9OOCtnN250eEdD?=
 =?utf-8?B?TWNDcTVLbHhOdUgwUWtsdHo3MDVXUTh4Z2h6OGtJVUdWZU8xRjl2QzdBYlZ2?=
 =?utf-8?B?bWlsSGVsaG1wVG9xMmpYTEF4UVZramFmNGxsMDN4d2R3UXlHWERZbnZLN1pZ?=
 =?utf-8?B?c1I2SFR6Z1Iydm1BUTBpdVpWWWxBSm9QQjlzODlPOGlQTWtuRWRndEQzQWxv?=
 =?utf-8?B?QlU3Njl5L2k2ZTJjR1Q4V0lLckY2N09jZFBzZjlscS9XQ20wZ0s2RWhIWWd4?=
 =?utf-8?Q?2lZLruNVtizENbDjuj7UZ25Mz?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 22b83915-fcb2-4033-2486-08dbafa6d864
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 13:32:13.4502
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: p+hknhIQkXSWM7pirdIXihScJKmEEPPwQnl1/3C0AvwfmMNcQMCU7A7dMxUBPLHBFoTo8wbfi4DTz74/ZhcT6w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9059

On 06.09.2023 10:57, Federico Serafini wrote:
> --- a/xen/arch/x86/include/asm/hap.h
> +++ b/xen/arch/x86/include/asm/hap.h
> @@ -30,7 +30,7 @@ void  hap_vcpu_init(struct vcpu *v);
>  int   hap_track_dirty_vram(struct domain *d,
>                             unsigned long begin_pfn,
>                             unsigned int nr_frames,
> -                           XEN_GUEST_HANDLE(void) dirty_bitmap);
> +                           XEN_GUEST_HANDLE(void) guest_dirty_bitmap);
>  
>  extern const struct paging_mode *hap_paging_get_mode(struct vcpu *);
>  int hap_set_allocation(struct domain *d, unsigned int pages, bool *preempted);

How is this related to vPCI? Plus if you change the HAP function, please
adjust its shadow counterpart too.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 13:45:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 13:45:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597381.931603 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFJg-0002K5-9s; Thu, 07 Sep 2023 13:45:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597381.931603; Thu, 07 Sep 2023 13:45:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFJg-0002Jy-7K; Thu, 07 Sep 2023 13:45:04 +0000
Received: by outflank-mailman (input) for mailman id 597381;
 Thu, 07 Sep 2023 13:45:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tY2=EX=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qeFJf-0002Js-8T
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 13:45:03 +0000
Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com
 [2a00:1450:4864:20::12c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id be8db47e-4d84-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 15:45:02 +0200 (CEST)
Received: by mail-lf1-x12c.google.com with SMTP id
 2adb3069b0e04-501be2d45e0so1587972e87.3
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 06:45:02 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 m2-20020ac24282000000b004fe47879d93sm3172562lfh.106.2023.09.07.06.45.00
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 06:45:01 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: be8db47e-4d84-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694094302; x=1694699102; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=pE7VAydKmw8vGjxffAzjfk0Rhred4uM3KwN9wk9Ixfk=;
        b=C4KNG5omR42VgF+8I9hOe/BlR0bVk7lmUCrmwTu4PbQCKLmAFsFMlWWBnQl1WzrStA
         /iOtQ9Zq8X3gxCdhQI6DFScgOdaDqoOhuvlgJHNM7U6m6ooUSPPdh0s5Oxak8jucrxLm
         nMszAx7hj5ZX+8oZODeFlF9JKdML7cqZt3xz3c40NusX9pp7hJnvELAJDWq5SxhEugUv
         v4VkxoAsMlQtH9HkSJ5S59xiZ/ORBKGaB3+qE8iEhALpur1t7LcfqzLepMpqMBHo5pdl
         B9es0OZwHaA/Z4pYPFtPqTbuoNsemA9M3ScOzoccEuLLrDzD8O6j8izAoitzG2FS6Jvq
         SbTw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694094302; x=1694699102;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=pE7VAydKmw8vGjxffAzjfk0Rhred4uM3KwN9wk9Ixfk=;
        b=UIobuEsbscWGujii/w2yn0SAGOQ7UNgOpAvMKo5rwczNf3pWEwEOzoax/kcH9U/EcV
         0y3m4BTsSJVYcCi8m1IA7FT6pIU0ivi+JQvk8MYPhM4tgfH+uc5WxFXliJy1gSRme1ii
         oOadnBl+rkTcYWrFcPQOAYT4TSjRmnjCfBSrC9cZS4GCERRY4UNeT6vEEUrA/BnT0jsR
         Rqt2JqCi5q2pMO0njuFUj5r3ie/2FVU2+fPPKJrnAL71rZPGO3JYnWYGdhUXHLxpRzm6
         DpHOatIOnKhWrHCuMuCY6jJJ1FWeOsrNo3aLfDUmja6zdhBHxDMAuRA745SLgpiJEoIy
         TRog==
X-Gm-Message-State: AOJu0Yyy9nTOtnDt3ixRJgshCHq1USqp2XZoPue5j3fv/0h9urgx0sPv
	BGGbqo4CxgtBg3yt91VrZTBYGXo6D4Q=
X-Google-Smtp-Source: AGHT+IGEM9XHjFPDiLKSrkOLdtisTVKOb8h2rT48gayGh/Vnd9kTP9bFwCt6F6kfffIVzm03TtXuPA==
X-Received: by 2002:a05:6512:3702:b0:4fb:8bea:f5f6 with SMTP id z2-20020a056512370200b004fb8beaf5f6mr4398156lfr.34.1694094301491;
        Thu, 07 Sep 2023 06:45:01 -0700 (PDT)
Message-ID: <39d85cdb68d29cc83743da703539f9c536ce7ded.camel@gmail.com>
Subject: Re: [PATCH v6 1/2] xen: asm-generic support
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Anthony PERARD <anthony.perard@citrix.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, 
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,  xen-devel@lists.xenproject.org
Date: Thu, 07 Sep 2023 16:45:00 +0300
In-Reply-To: <fbc5ea33-22c1-52a5-dc7d-97ba29e06e9d@suse.com>
References: <cover.1694078544.git.oleksii.kurochko@gmail.com>
	 <cf5f446915bd5c8980beda22718efff32678e16b.1694078544.git.oleksii.kurochko@gmail.com>
	 <fbc5ea33-22c1-52a5-dc7d-97ba29e06e9d@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Thu, 2023-09-07 at 12:48 +0200, Jan Beulich wrote:
> On 07.09.2023 11:32, Oleksii Kurochko wrote:
> > --- /dev/null
> > +++ b/xen/scripts/Makefile.asm-generic
> > @@ -0,0 +1,53 @@
> > +# SPDX-License-Identifier: GPL-2.0-only
> > +# include/asm-generic contains a lot of files that are used
> > +# verbatim by several architectures.
> > +#
> > +# This Makefile reads the file
> > arch/$(SRCARCH)/include/asm/Makefile
> > +# and for each file listed in this file with generic-y creates
> > +# a small wrapper file in arch/$(SRCARCH)/include/generated/asm.
> > +
> > +PHONY :=3D all
> > +all:
> > +
> > +src :=3D $(subst /generated,,$(obj))
> > +
> > +include $(srctree)/scripts/Kbuild.include
> > +-include $(src)/Makefile
>=20
> With the definition of src above, is this correct for out-of-tree
> builds?
Logically you are right and I think it would be better to use
$(srctree)/$src but it works for out-of-tree builds too.

$ CONTAINER_NO_PULL=3D1 CONTAINER=3Driscv64
./automation/scripts/containerize make O=3Dxen-build V=3D2
XEN_TARGET_ARCH=3Driscv64 -C xen build

$ ls -la xen/xen-build/arch/riscv/include/generated/asm/vm_event.h
-rw-r--r--. 1 ok ok 34 =D0=B2=D0=B5=D1=80  7 16:27 xen/xen-
build/arch/riscv/include/generated/asm/vm_event.h

> You want to reference the Makefile in the source tree, ...
>=20
> > +redundant :=3D $(filter $(mandatory-y) $(generated-y), $(generic-y))
> > +redundant +=3D $(foreach f, $(generic-y), $(if $(wildcard
> > $(srctree)/$(src)/$(f)),$(f)))
>=20
> ... much like $(srctree) is used here (and similarly again further
> down).
>=20
~ Oleksii



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 13:46:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 13:46:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597386.931614 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFKn-0002qx-J5; Thu, 07 Sep 2023 13:46:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597386.931614; Thu, 07 Sep 2023 13:46:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFKn-0002qq-GX; Thu, 07 Sep 2023 13:46:13 +0000
Received: by outflank-mailman (input) for mailman id 597386;
 Thu, 07 Sep 2023 13:46:11 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tY2=EX=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qeFKl-0002qg-Tz
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 13:46:11 +0000
Received: from mail-lf1-x131.google.com (mail-lf1-x131.google.com
 [2a00:1450:4864:20::131])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e6e1aa14-4d84-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 15:46:10 +0200 (CEST)
Received: by mail-lf1-x131.google.com with SMTP id
 2adb3069b0e04-500a398cda5so1669988e87.0
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 06:46:10 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 w17-20020a19c511000000b004fe36b790a1sm3198213lfe.128.2023.09.07.06.46.08
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 06:46:09 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e6e1aa14-4d84-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694094369; x=1694699169; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=l5hosa7EStNjPh8xdEHZ8Pp/c/wz+HxPpBsoB1pGF+Q=;
        b=kiyMs5GmpIZuPvny5KLlxm8cp/wBplNeZ6s7FRcwr81WPMOX/ejronexfTdBOGqqN1
         SdrK9Yyva3BBSdcVN3B0hqrVtmkOp8TwM1Ywj2GGAh/AILR1os6DDJAJ1ixOfrPRDSM8
         YqAAFLNl7g/Fb3els/J2pSZ0J5ZX2L/rBL2M2/49JwHxpwtQBqtPe6IpDIpCuIZmpOyZ
         RtvSM6w+06yy0hGY1y78+JzquGpBYpMU8mZvP9/fXK34F+NlBKAT10GMbtHuMqfDsZw+
         GqQqEpfHMkuUGYvPj7iZT7tufdEk0jEbNdMRK+c4rycafCrMpxvlZi/xGpzeUm4uGbqR
         PCdQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694094369; x=1694699169;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=l5hosa7EStNjPh8xdEHZ8Pp/c/wz+HxPpBsoB1pGF+Q=;
        b=f0rSHqwPTDX85cwxUapXPzFeJaMBFCW40T6o0hPwFHtvx6yWj5CrY4s/ppwTE/Q1WQ
         zPnhhQUiBMK6faOqokaHkh8QZFDkq3Fjjoqc3yE04VoGT1o5hWwW/g9OWfewEtfRKMv2
         Vy7S8+/RqwiRsMycLM2JrGZ1oaPlau+Sg/Jklz3tNtpRzP8gWuOUIWQ+VRzlPb/c4isP
         Qpg4mvJQmslrjYp6/WgXckMMEkgkl+jxMI+gb92IYqoX8ybCXQjJAwW9Vf7snBiqhonx
         WMF6RORMN7GbB4/3OmkG+eacWveJJ6IART5JwCFk/Ongoe0hTULdkngvTKfp1iLZhes2
         coHA==
X-Gm-Message-State: AOJu0YwAeYwj8SYyg63vobSNWm1XxVh9OD5zGY41S8acXQi6wV8DHQEn
	bKtspf/j8zCy9TQCd4Ht9Qg=
X-Google-Smtp-Source: AGHT+IGmiPkQvFRf9uiHzw4KnnO4Tzk+k+o60J8UwYeIoPO6pqkQQPXo4OXp3GVe0XllBWSZHCqnFQ==
X-Received: by 2002:a19:6d11:0:b0:500:b5db:990c with SMTP id i17-20020a196d11000000b00500b5db990cmr3867847lfc.57.1694094369370;
        Thu, 07 Sep 2023 06:46:09 -0700 (PDT)
Message-ID: <dd922527db03b445d0a2de6113a92ccc1dbb60f1.camel@gmail.com>
Subject: Re: [PATCH v6 2/2] xen: move arm/include/asm/vm_event.h to
 asm-generic
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>, tamas@tklengyel.com
Cc: Anthony PERARD <anthony.perard@citrix.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
 <bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
  Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, 
 xen-devel@lists.xenproject.org
Date: Thu, 07 Sep 2023 16:46:08 +0300
In-Reply-To: <687a1039-5f8d-bee2-50ce-1fa80ef31f19@suse.com>
References: <cover.1694078544.git.oleksii.kurochko@gmail.com>
	 <47e12756edfefdb5ff1112ae6b78ae95baadbbef.1694078544.git.oleksii.kurochko@gmail.com>
	 <687a1039-5f8d-bee2-50ce-1fa80ef31f19@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Thu, 2023-09-07 at 11:59 +0200, Jan Beulich wrote:
> On 07.09.2023 11:32, Oleksii Kurochko wrote:
> > --- /dev/null
> > +++ b/xen/include/asm-generic/vm_event.h
> > @@ -0,0 +1,55 @@
> > +/* SPDX-License-Identifier:=C2=A0 GPL-2.0-only */
> > +/*
> > + * vm_event.h: stubs for architecture specific vm_event handling
> > routines
> > + *
> > + * Copyright (c) 2015 Tamas K Lengyel (tamas@tklengyel.com)
>=20
> Tamas is the maintainer of these files (no matter where they live),
> so
> please make sure to Cc him in order to get his ack.
Thanks. I'll add him to CC.
>=20
> > + */
> > +
> > +#ifndef __ASM_STUB_VM_EVENT_H__
> > +#define __ASM_STUB_VM_EVENT_H__
>=20
> Nit: s/STUB/GENERIC/ ?
Yeah, it should be generic. I'll update that. Thanks.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 13:54:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 13:54:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597335.931624 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFSX-00059D-Cl; Thu, 07 Sep 2023 13:54:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597335.931624; Thu, 07 Sep 2023 13:54:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFSX-000596-8m; Thu, 07 Sep 2023 13:54:13 +0000
Received: by outflank-mailman (input) for mailman id 597335;
 Thu, 07 Sep 2023 13:20:06 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=i15H=EX=intel.com=michal.wilczynski@srs-se1.protection.inumbo.net>)
 id 1qeEvW-0003HQ-CF
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 13:20:06 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.43])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 407f763f-4d81-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 15:20:04 +0200 (CEST)
Received: from orsmga005.jf.intel.com ([10.7.209.41])
 by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 07 Sep 2023 06:20:01 -0700
Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81])
 by orsmga005.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 07 Sep 2023 06:20:00 -0700
Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by
 fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Thu, 7 Sep 2023 06:19:59 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by
 fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Thu, 7 Sep 2023 06:19:59 -0700
Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by
 fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Thu, 7 Sep 2023 06:19:59 -0700
Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.173)
 by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.27; Thu, 7 Sep 2023 06:19:59 -0700
Received: from CO6PR11MB5603.namprd11.prod.outlook.com (2603:10b6:5:35c::12)
 by SJ0PR11MB5008.namprd11.prod.outlook.com (2603:10b6:a03:2d5::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 13:19:56 +0000
Received: from CO6PR11MB5603.namprd11.prod.outlook.com
 ([fe80::dbe4:218c:1bdd:510]) by CO6PR11MB5603.namprd11.prod.outlook.com
 ([fe80::dbe4:218c:1bdd:510%4]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 13:19:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 407f763f-4d81-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694092804; x=1725628804;
  h=message-id:date:subject:to:cc:references:from:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=vLvQ4zKn/oRHy7MXq96By2dVXlS0Z+CQliVfRpO+T9I=;
  b=TrCTUjVnsN2u84wtTaFAq7kiZdUhxcRKl7UEgxH9I0k8XgE5y/dPGVIJ
   L8KwhJK7daFjSj3oNEo2vLP9HbXCRIdZyjiqxAec+J+i56oXhMAlaJsJG
   PXjiL2WhnhPRgYXk7JjiQT19XxDGyphL3gZtZjFY5IAeVX2tZ4v30I1AE
   PPdfd0X62mACipdJG5ZJ6d+n3yFvswh7Gb0FIyXOSgnLsBdNXH749v5Zo
   2GhbknryR9Hu9f7Pqh6VFjemlPRD3f79O+Qk6IlVhGgKsoLKFEV7fYWEB
   6InxMEmEE4SaYS0uoSiZat9H+2/n5qfRiqslxh7elLK1ptFGd2Nq3qmUc
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10825"; a="463730737"
X-IronPort-AV: E=Sophos;i="6.02,235,1688454000"; 
   d="scan'208";a="463730737"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10825"; a="915734682"
X-IronPort-AV: E=Sophos;i="6.02,235,1688454000"; 
   d="scan'208";a="915734682"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AVFzaN7IfAR/+uvZBgxHZv9+9wJLAOGyRiRRJ1YHIFsvIZn87xuiUqhV1YbmeXPaX5avCYz5YyPt2xdshHS21Q+IoGuY4seJVrq8xk8e2/HSKnc2NmiIqiaNiUb3y+O8Xxkk8ao9olQZ5imk/VNZ/U2ETGFYnau8NzWgjrYVVp6BDLp8XEiIRzH83Lml3YrlPeDD4irshG/v1Jw8TEv3YDMJzGUkuWwE9NLIOeP7A258b9FanwtfGsnUgp1oAk5nbUD0NEwEeisDhz8N4iCIWK9QCrV0x98H051b4vJ2KvByLj5Nirf+T3/3DL+Fo4quoXKYtXLMa9Ze5c8SOrQUHQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ptDks/wodUORvy+EU0/HF65SkRwIz7z+/zZfjgAO3IM=;
 b=nRHmhEhky8qvnvIxj/9URae1HSZcgeJnsFeOUfTViJ+FPkjs8baADfKTxkjLNSHc9MOpwvixSSWdA2HqkSIwqO8z8H+1tzYQgnSsCzpigAedD+sDcfheHsdEULdqfeUjnzGm/gAWx6GNhiEM/iOe3r6/W0KrYVKxRk8SoMu0H8ycEghlonyeW8sRTDCHEYGmbNdpQO+fUoDGabtaJdQm4IiOO5LuEiokdeUYCtB6dP1vph6eHcAbubDOuyoC+WecZHomqRR/SkCuts4e4ihKmTLFWbQhCIGzrwUMr1gcL8gV4gXkQAiPMOfEAuDQ4/qGfwyQdR6mMytz4FYKrOjVyQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
Message-ID: <24a741a4-b305-c817-e8c3-34b213ad0ee5@intel.com>
Date: Thu, 7 Sep 2023 15:19:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v2] acpi/processor: sanitize _PDC buffer bits when running
 as Xen dom0
Content-Language: en-US
To: Jason Andryuk <jandryuk@gmail.com>, Juergen Gross <jgross@suse.com>, Boris
 Ostrovsky <boris.ostrovsky@oracle.com>, "Rafael J. Wysocki"
	<rafael@kernel.org>, Len Brown <lenb@kernel.org>
CC: Roger Pau Monne <roger.pau@citrix.com>, <stable@vger.kernel.org>, "Thomas
 Gleixner" <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, "Borislav
 Petkov" <bp@alien8.de>, Dave Hansen <dave.hansen@linux.intel.com>,
	<x86@kernel.org>, "H. Peter Anvin" <hpa@zytor.com>,
	<xen-devel@lists.xenproject.org>, <linux-kernel@vger.kernel.org>,
	<linux-acpi@vger.kernel.org>
References: <20230906182125.48642-1-jandryuk@gmail.com>
From: "Wilczynski, Michal" <michal.wilczynski@intel.com>
In-Reply-To: <20230906182125.48642-1-jandryuk@gmail.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: BE1P281CA0183.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:b10:8d::17) To CO6PR11MB5603.namprd11.prod.outlook.com
 (2603:10b6:5:35c::12)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO6PR11MB5603:EE_|SJ0PR11MB5008:EE_
X-MS-Office365-Filtering-Correlation-Id: b822507d-9976-4f29-9798-08dbafa520c5
X-LD-Processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: i1cp4Dw3gGOsxIF2jf051UpHTGbZSsb3DL4rtocYMNIylXPtcWyfaqipYoybXcJlOD4EBJGVbasFZlsLRPXpGczEneX23nnurQvNA8NpT35WhmPpW7Xo29zrqSK8ARu/dJ6qZyTpR/nORPiGzCkWQHYWlbo2JqRAokKJHWLzro+VvwUcKZtdIEqWZaJNFirutQsUhr7im5R948E7tbnppdv+dGY0CO9fgXCr8r14PzO7aNhwpPfzZtIBOPpcwcr6IJeOriz1BgJBWItmL0x4Y+eGyuQ9Pm8ee+QhiS0vWugBMD7HMLVmS6qVg+0FAtEdOPhP3euwsfYJiKays/sYeAWHmw7xVbHj6ygEa5bhkyD2WPsGlw1ZXZwZQzthzblMiAeUs30wnqUg+oeEx8ZP3F6dF0ee2EceHnSz+YuzLeeub59bA4JBYWcOZ1f8/SShX1K4pPRA6Ix8W4AedRhc2TFv/W08D93KfcbMeo9OHT7MfejvFVuLriEaH8GWB53TBjM9Wmv+mSvMlkjTc4SNhm5zNPr3T9Q5+sXIm+hC2vJArI2pVn3HXWGHCx3lf5zDeqCHv6HS7Sv4S0HgKbawb+MhrI99fbtxfLggV3PqNGIAEzAyx2ytc7/hfYwv63NYX9muu1ul6w/EU7KKoxk2Ig==
X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR11MB5603.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(396003)(376002)(136003)(366004)(451199024)(186009)(1800799009)(478600001)(31686004)(66476007)(66946007)(316002)(66556008)(110136005)(54906003)(83380400001)(8676002)(2906002)(41300700001)(4326008)(8936002)(7416002)(5660300002)(6666004)(6486002)(6506007)(53546011)(6512007)(2616005)(26005)(38100700002)(31696002)(36756003)(82960400001)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1102;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ellqUXZWRU1MbWtUK01PdkdnQTVYSlRpeXQzU3F4a0pXYmpteTdxdjFmZVl5?=
 =?utf-8?B?SmxTR3hCSXUzVEZMRnJETE4raXBERGN5ZkljbHd1N0syam1KNk9Qd2w4QmQv?=
 =?utf-8?B?OHEzcnBlQytYMkhUcEl3YkY0VDFmMVVOZlpmOGhkRFNXbmx3UzN6ZVMzeHk0?=
 =?utf-8?B?OFhJYlMzMUpyNmFicDdWb2RsVUVPU2ZBa08yaGZzTWt2OUo5QkV3aEVrNlZV?=
 =?utf-8?B?Q0o3VmpVNEdQcHBsNzZ1ZzVTSFE3cmJpMlg4Mlo5Yy95dEtueE9BaEJaMTdr?=
 =?utf-8?B?QmtwSXlXWU5hQklzTElqRWZmalAzS3RPa2RaR3d2djNPV2I0N1NMR2JNK0U3?=
 =?utf-8?B?cVNZUmNnendQb0NnWm41QUpCdG5jUFZzZDcrLzNzWkdtLzBKWDJFb0Q2bmMy?=
 =?utf-8?B?amJON0JHQnJQcGtjYUJqaDBnRXpBWHRlOU9iTlJRVXRtSnNWK1pNdkZNNXNW?=
 =?utf-8?B?QSs0NG5aSEpXMjBVMTFQYU9Db3ZkQVFvZk5VaE55cnNyTXloanV1VXMyWVJM?=
 =?utf-8?B?MTdudFYvNzN6L3JLRHRNejVqK2VRK2FUOWhPTXcvT0dUK2x2dThKNDZCdWk2?=
 =?utf-8?B?UnpSS2tETjd0dzFLNWFOeWlEamVGNVo2a1dZbkdlaVRyZDhMcEFEUmdxMitK?=
 =?utf-8?B?VVVkRXpUbUhWK3d6WDlUbWNiQVdMTHBwM1dJcFJLcTk2Q05ZcjU0Q3M0cFR0?=
 =?utf-8?B?UU91VlJIelBqVHVVR3VGc3hObEczZzlPdGJ6UVI4YkxQa2RkWDYvcjdDVkp3?=
 =?utf-8?B?VDl5ZWtMamN4MlpVNDF4eUlaVjdpOXhyVHBDM3JLOHcrRXZXa2dlRXZldW9z?=
 =?utf-8?B?bktraUZHNHVzZWRQWHNUOHd4OWIzQUtzZS9mRUxoSEQyMFF1R2R5K2pKaFp2?=
 =?utf-8?B?SDU1OUhOUzRVOW1rek42YVVkeEVtL3l2OGM0U3d0S0c3TjVaSFEwbEFqdWU5?=
 =?utf-8?B?c3FFVnJmYm1KQmE5UG1halZGQWxYUDNZdzNUVC9ieVRZTHpCNU15eFhXUjhi?=
 =?utf-8?B?OTVGd0llcHhyZFhwcDlQdFI5U3Y4SzM4WHJHcSt1UTF6b25BYXVVc3lTbXlY?=
 =?utf-8?B?TzdPOVBEdG9IdzNUUEFWTFM0VW1vanNiNnE3QnhKWWFWWkV6S3hNckQyMUhU?=
 =?utf-8?B?cHREUitLd1dmb2NqRVBtbmh5NlZ2cDlzcGQ2SHhVNXRjMkhZejNBL2trNkRp?=
 =?utf-8?B?bStocDIzeTB5RndxNGt0N3NWNU5HZldsZTk3U21Hc1IrSGFCT05JOUFoYnFQ?=
 =?utf-8?B?UmtsRDJLT01jbXdRaTRkUVVUNzJCZGw2QlBWZjZISFAwRzFqTWFOMk5BMnFy?=
 =?utf-8?B?dWUrY3NRT3J6L2ZLQi9UbEpaNTFrQnNCb2VTVVQyTFhHeU9iZ21jWGlmdG85?=
 =?utf-8?B?eHRLRGhOeG5SbHRvUnpOZWljbms1VHJUV1Mvbld3dzJReFBCcUNNSERXM01m?=
 =?utf-8?B?Zno1cy9lWk1kTUdUMkFMTG1OTUZhYjhRRXBleWNiN1owckppamxQYzZ6Vkk2?=
 =?utf-8?B?T3BxUFhHcFhuL1E0YnE5M0wyK2N6N3N6YnlzL3c4eldnQndtWDFnazJMTC9Z?=
 =?utf-8?B?TTRjeGVXOFRKMmFQTmVvdExBS2JXdXBkK2dCb1NIWXN4V3oyb3RSblJkQ2xt?=
 =?utf-8?B?ZVR2elAzVzRTdkVvR1c4aDVUNjJ5WlZZTG5GblRNRTd5bjB4SVRmOUpyN2tk?=
 =?utf-8?B?OHROZ2FaaVlEMGRZbkdoV011d2lBQVZYemxjSDRPWStiUlh0ZUROT2FYTVBC?=
 =?utf-8?B?bStoRFUydEdOYitybUV3dWNPeHluWGs1cWhabkk3ZXlvUW52R3hxR2oyQWF0?=
 =?utf-8?B?ZzNOVVVYZktxUklvQnFTOUFiWUtSMkcwdGZaUnk0REIxSVVnYURvc3gyRDZv?=
 =?utf-8?B?M28zanFQWDZMNG5LamNoRTFoTVRuYWRQVElxalpBRmRXVjl3aERFMTlRdnlY?=
 =?utf-8?B?UC9KT3BJRDNtNUJ3eFkwY3NWZUpHT2gvQVlzTnovaFZOYitRaUxpVnY4N0VN?=
 =?utf-8?B?TnpJeU5LUHJtaEVEdU5Wd0IrTE5PaklCZDJOamRjYzFTN25EOUZKUmhNMTZw?=
 =?utf-8?B?WlROL0V0R3lWdCt1TWhJdEwrMWNKbEtYcmZVZGVlVDZUVVByZHQvSGZaNGln?=
 =?utf-8?B?alRpZDQwc21vbnVIcWRMVFp1RDVwUGQ1OUFRTGRjbWp3enF0N0lmR3ZTZ3BR?=
 =?utf-8?B?OFE9PQ==?=
X-MS-Exchange-CrossTenant-Network-Message-Id: b822507d-9976-4f29-9798-08dbafa520c5
X-MS-Exchange-CrossTenant-AuthSource: CO6PR11MB5603.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 13:19:55.9932
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: TcUh7XMWXhjjN6uVMZfMo3OkPit/ekLz0TR31Yzg/6RovEg561dCaGKFjywraWE+tPWCFrRk8NBuWyZ6LL+APcHNEbCdmaZQdE/28HZKNsY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR11MB5008
X-OriginatorOrg: intel.com


Hi,

On 9/6/2023 8:21 PM, Jason Andryuk wrote:
> From: Roger Pau Monne <roger.pau@citrix.com>
>
> The Processor _PDC buffer bits notify ACPI of the OS capabilities, and
> so ACPI can adjust the return of other Processor methods taking the OS
> capabilities into account.

_PDC method is deprecated for this purpose, since 2018, and is dropped from
spec since 6.5

We made the switch in linux since 6.6:
95272641338a ("ACPI: processor: Use _OSC to convey OSPM processor support information")

>
> When Linux is running as a Xen dom0, it's the hypervisor the entity
> in charge of processor power management, and hence Xen needs to make
> sure the capabilities reported in the _PDC buffer match the
> capabilities of the driver in Xen.

So I guess you would need to sanitize buffer passed to _OSC method instead ?

>
> Introduce a small helper to sanitize the buffer when running as Xen
> dom0.
>
> When Xen supports HWP, this serves as the equivalent of commit
> a21211672c9a ("ACPI / processor: Request native thermal interrupt
> handling via _OSC") to avoid SMM crashes.  Xen will set bit 12 in the
> _PDC bits and the _PDC call will apply it.
>
> [ jandryuk: Mention Xen HWP's need.  Move local variables ]
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> Cc: stable@vger.kernel.org
> Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
> ---
> v2:
> Move local variables in acpi_processor_eval_pdc() to reuse in both conditions.
> ---
>  arch/x86/include/asm/xen/hypervisor.h |  6 ++++++
>  arch/x86/xen/enlighten.c              | 19 +++++++++++++++++++
>  drivers/acpi/processor_pdc.c          | 22 ++++++++++++++++------
>  3 files changed, 41 insertions(+), 6 deletions(-)
>
> diff --git a/arch/x86/include/asm/xen/hypervisor.h b/arch/x86/include/asm/xen/hypervisor.h
> index 5fc35f889cd1..0f88a7e450d3 100644
> --- a/arch/x86/include/asm/xen/hypervisor.h
> +++ b/arch/x86/include/asm/xen/hypervisor.h
> @@ -63,4 +63,10 @@ void __init xen_pvh_init(struct boot_params *boot_params);
>  void __init mem_map_via_hcall(struct boot_params *boot_params_p);
>  #endif
>  
> +#ifdef CONFIG_XEN_DOM0
> +void xen_sanitize_pdc(uint32_t *buf);
> +#else
> +static inline void xen_sanitize_pdc(uint32_t *buf) { BUG(); }
> +#endif
> +
>  #endif /* _ASM_X86_XEN_HYPERVISOR_H */
> diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
> index b8db2148c07d..9f7fc11330a3 100644
> --- a/arch/x86/xen/enlighten.c
> +++ b/arch/x86/xen/enlighten.c
> @@ -346,3 +346,22 @@ void xen_arch_unregister_cpu(int num)
>  }
>  EXPORT_SYMBOL(xen_arch_unregister_cpu);
>  #endif
> +
> +#ifdef CONFIG_XEN_DOM0
> +void xen_sanitize_pdc(uint32_t *buf)
> +{
> +	struct xen_platform_op op = {
> +		.cmd			= XENPF_set_processor_pminfo,
> +		.interface_version	= XENPF_INTERFACE_VERSION,
> +		.u.set_pminfo.id	= -1,
> +		.u.set_pminfo.type	= XEN_PM_PDC,
> +	};
> +	int ret;
> +
> +	set_xen_guest_handle(op.u.set_pminfo.pdc, buf);
> +	ret = HYPERVISOR_platform_op(&op);
> +	if (ret)
> +		pr_info("sanitize of _PDC buffer bits from Xen failed: %d\n",
> +		        ret);
> +}
> +#endif
> diff --git a/drivers/acpi/processor_pdc.c b/drivers/acpi/processor_pdc.c
> index 18fb04523f93..9393dd4a3158 100644
> --- a/drivers/acpi/processor_pdc.c
> +++ b/drivers/acpi/processor_pdc.c
> @@ -122,6 +122,11 @@ static acpi_status
>  acpi_processor_eval_pdc(acpi_handle handle, struct acpi_object_list *pdc_in)
>  {
>  	acpi_status status = AE_OK;
> +	union acpi_object *obj;
> +	u32 *buffer = NULL;
> +
> +	obj = pdc_in->pointer;
> +	buffer = (u32 *)(obj->buffer.pointer);
>  
>  	if (boot_option_idle_override == IDLE_NOMWAIT) {
>  		/*
> @@ -129,14 +134,19 @@ acpi_processor_eval_pdc(acpi_handle handle, struct acpi_object_list *pdc_in)
>  		 * mode will be disabled in the parameter of _PDC object.
>  		 * Of course C1_FFH access mode will also be disabled.
>  		 */
> -		union acpi_object *obj;
> -		u32 *buffer = NULL;
> -
> -		obj = pdc_in->pointer;
> -		buffer = (u32 *)(obj->buffer.pointer);
>  		buffer[2] &= ~(ACPI_PDC_C_C2C3_FFH | ACPI_PDC_C_C1_FFH);
> -
>  	}
> +
> +	if (xen_initial_domain()) {
> +		/*
> +		 * When Linux is running as Xen dom0, the hypervisor is the
> +		 * entity in charge of the processor power management, and so
> +		 * Xen needs to check the OS capabilities reported in the _PDC
> +		 * buffer matches what the hypervisor driver supports.
> +		 */
> +		xen_sanitize_pdc(buffer);
> +	}
> +
>  	status = acpi_evaluate_object(handle, "_PDC", pdc_in, NULL);
>  
>  	if (ACPI_FAILURE(status))



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 13:56:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 13:56:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597401.931634 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFV7-00068S-QO; Thu, 07 Sep 2023 13:56:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597401.931634; Thu, 07 Sep 2023 13:56:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFV7-00068L-NN; Thu, 07 Sep 2023 13:56:53 +0000
Received: by outflank-mailman (input) for mailman id 597401;
 Thu, 07 Sep 2023 13:56:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeFV5-00068D-Mu
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 13:56:51 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on060e.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::60e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 63e72665-4d86-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 15:56:49 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8366.eurprd04.prod.outlook.com (2603:10a6:102:1be::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 13:56:47 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 13:56:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 63e72665-4d86-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cqWLCa40NxF+Sjxaj6DI4nDgjSYvMSs7JPsSDtMyFo0kWs2O/f/bEJagzPPmcJW8ZSWBar4G/ciWqLlgLSgv/zhiMnw0UdutBAFwiBzk1CxNopC+Yn+UF+f4Ffsd968MJ+RiaJ73hJOGypkeP+SbqZuwsL6fW2II6dxtFwpp0Tb5wD91/qKvol9KM55gYAMyoOnLiZhDZQbQ9lNa2SkVmDppS33993HrvYkjaiPnNjH5ycyWN+WAK5diRbeTGxE0KpCGsNRx1Q9xpABTBS27L8PVaqtgoAiobj4iWFKrgL1rakg4ogEBP9i1kurRqp35+tvXP2cEFgdTykhE3aoiNA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Ng0HYZOhaSnuIsrP2KuWNHb1S8yZGKsiSfx1z9VpvR0=;
 b=XKs6uv0pMI2cQBCU2QGHTUJX3RYem/r5waQ4O6WxEobDZctomBvz7P4Cwv7W2wxK9P6Jt2jYpdA7y1dNWIE6AbXlNWqf4UHuOUt8qrSRB+6NDvR9Ckg9c1zRZbCkAtHpuFrt7yckW0yH1WlgpHhWAorHsEd3sdLWdm5beOz6Oa/QkiFKGObRn4FDM/HUbk2/29PwSdC2312zSu4/yV3PJiDasIUanLikC846jpb8oRq7QTT0Sd4h4bjcjIa6cCgLpMd1xiEACtauof9YdOdqJrLWCbagdvMx8Y6JCNF+40jJM1VDh/n2ESGea2rGdhs35/i+VGR4aJx69ZfvAEzz7A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Ng0HYZOhaSnuIsrP2KuWNHb1S8yZGKsiSfx1z9VpvR0=;
 b=KMsukIe18gNL9Ylklmy5DAabswDy4jgMD6sr7LTzhNJqkuxzbmrN4PVt3wmuMeNtrlHYllGeekpaOnrWSVyV+ZtNLvAwbWOGuKzxQLHBRuGz3y3pAZWmh1oRiZ0WlcWjzjjTm4y0i15sDkCxtVQlgmvZQJCIKyGG9r5Nw+G91aR81dYKDwFrfJDleKrVyadvKqXW+tvaQ4D0bZ6kedusvw04cnj9MV05Cpb5SXrRQejqwEIn89dkR7E1+TSs7MudItRKpZtX+BFz0+rMGHWK+couP+ksJLlI+hcQUc6lYj97cSzz8iZpFYoQY8JEUTAaS5yEBMndpimaDdIoIVDdeA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <151a04b2-57c8-20f7-0bbf-0bd1c7c73e97@suse.com>
Date: Thu, 7 Sep 2023 15:56:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v6 1/2] xen: asm-generic support
Content-Language: en-US
To: Oleksii <oleksii.kurochko@gmail.com>
Cc: Anthony PERARD <anthony.perard@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1694078544.git.oleksii.kurochko@gmail.com>
 <cf5f446915bd5c8980beda22718efff32678e16b.1694078544.git.oleksii.kurochko@gmail.com>
 <fbc5ea33-22c1-52a5-dc7d-97ba29e06e9d@suse.com>
 <39d85cdb68d29cc83743da703539f9c536ce7ded.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <39d85cdb68d29cc83743da703539f9c536ce7ded.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0082.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1f::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8366:EE_
X-MS-Office365-Filtering-Correlation-Id: b0d94087-61bb-439a-bb5b-08dbafaa46f6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MnoGA24EayKJpviSd8LNPAtMeWYVNRszfpx/Ek+3ZYpPPa4is8RwlQ+s3j+B2wbJOU+VTJJYAIpmyLnCrpT2XOAiPvdBDNVIjo1Endm2wMaidE26qaw3Nwppylh3o6DEUokU/0S+RGZ4FeSPd/yYwiF7eWZkQFaWIjYOUogClPyeqc9lR++J7jQ1gDCxqn0TRFSMFsI6+PPMCHUpQxBTXh5AqDVrdhUHq/2VqheVXSw/SzCc/9iEGUE1vgdQ/0iiC+eTMhr/Z4T1rzPq70M26Hw0atE49r3NBYCjpObIGvcs53NUGWw28KCYYYeV6/M5sLr9d+mH/JGivBkgxVj4mUbmytWE5+KkcdJlKwi3SOK6Da0fWjez6LwVBdbvOoiqw2Mj5hA2Wb0JIoAHQ/Vi1r9WW8MH6+1MEtid/ieRLHjdRXlCcjhCo/xATSv9i0f12sFfmBFx5zTggBET/rAh/L+cRyWuO1mUjVeyoaecBpMFhEr0Vs1pGz4VcFSG1jRv4PCc2YkcusCWTyF4Z7hedxNcjZX0Mctn/zvAzOIP/sl1Wt3fe3xwzic93VAk0LwNMl37JUA1+aWUgAIPw8Q/SvLi2TmElck3KHInVonmgYAzLNXxWclVHjJPmMI7/Hy8CMQlFeUzqq933iH+vOtTfLa/tI87ubsfKk21RFe6iwI=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(396003)(366004)(376002)(39860400002)(186009)(1800799009)(451199024)(2616005)(38100700002)(26005)(6486002)(6506007)(53546011)(6512007)(36756003)(31696002)(86362001)(5660300002)(41300700001)(66556008)(54906003)(6916009)(316002)(66946007)(66476007)(8676002)(4326008)(8936002)(31686004)(6666004)(2906002)(478600001)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RzI5c0lweGJ6ZVhkc2U0dVU4dm42d0RUNkZPZkEvdlliSU1HU0FSYVlKM1Vh?=
 =?utf-8?B?NUowVmZ4OFFkSDNzYVN6S2F6T3pLdllIMkZRb3pvK1l6T2srWHJTQlAvZnp0?=
 =?utf-8?B?TTF2cU1XWlRlZjltUFRlelk4TGpnOTZvdUxsN2pzMEZlUDh6ZURqN0RRMDRu?=
 =?utf-8?B?Sy9GVDhUZms3MDlsa0swTFl3dS8waWw0NlB2OTFWS21scGtNUmNXUmZrSG9z?=
 =?utf-8?B?d2xxOHNwc1J1WUs0Z3hGSXJEYVBqZ2U5QkV2RGMvWWtObFhpeTVyQ0Z2ZENP?=
 =?utf-8?B?Q0F2U1BYQkNjOGJVbnlJdkQ0V1NqZzkxSW53NUI1ZDlyQmg4YXNwZFBBUjZu?=
 =?utf-8?B?UVI1NVhvUUN1OFJhNkUzaThBN0RnSTRpTDhlMUxVemo0Nk1jbzgvdUM3bmhx?=
 =?utf-8?B?UmpBeFV1OENrSDgvNWFNWHl2cEJWWmFrc1lDRkpXVFpLeHlQaXZvTXpIc2FV?=
 =?utf-8?B?dzhXYnVZYXlwbXRxcS9UcHdIVCtudVR4QmFucmhjRzd4R2FCbC9lQTFmWjh2?=
 =?utf-8?B?R3lwUnAxODRWQnpkOG92Z2Y3c3RSQ0pZQ3NraDAzM1JTNHczTk84NzU0bnIw?=
 =?utf-8?B?OXB2TElJWHhDT2J2bFBrN1ozZFU2RzFPaVF0TUMxN2xqWDVEektadDhkVTJD?=
 =?utf-8?B?clZnZllFaHBKckp3cFZ2UzNpQmlMa1hNZmZSNnhHalZ0bkFmdG9ndzdENkZ1?=
 =?utf-8?B?dUxNcVIzckhPNnR3THp0aHNjNjkvd3FMOGRxZXVlRE5ISi9YNGdadzhUSFZu?=
 =?utf-8?B?eUc1SXZsVEVkZ1FMQ1VOejhXOUNaMERnS0syNXcvVGEzbWZqOVpIVXhGVmp1?=
 =?utf-8?B?czdLWVdwVXVHbDFya1VVTkthT2N1TnpnZ1ljV1VCSUQvbWtEbUVya2RLbyt0?=
 =?utf-8?B?Q3Nxakdnb2NHZTBzakZxbDE4T210VitwdXFUSmplZkpRMHFwQjJCZnFPYk9m?=
 =?utf-8?B?L3JQZlRTVjY5eTFzd2xNR1MvK3lwa2JhN1krNkpURHlBb0hIMWU0MVRNQWRx?=
 =?utf-8?B?dVVKeFA0Nis2Yll0emdxNWR4bmdvaGE2RHgySllBQVVXbmNYbzN0MnI5TmNJ?=
 =?utf-8?B?czFVREFsdlhBdlB5dDJyWEgzQ3NtcWRhV253S1hkRnIwUS9aaU02ZkdrdDVV?=
 =?utf-8?B?aTh6RlpPMHZIVDNnNjIzN3VCdlJ0WWlHK1RFbXhuWHVQUUJ1L1RnN2NWSkVr?=
 =?utf-8?B?YzlsWnBjZ0wrcUVoWjZDRm5WSTR1TGdpMXR5WWFuOXRERjhaNU5iejJ0R1A1?=
 =?utf-8?B?WENTNnF2NGs3WjY3VXZidHc0WnI5amRhNVB4U3VuM0FTKy83OHlSYU84c2tN?=
 =?utf-8?B?dm00ZGpGQ3RQN3hNQkl0K1BleXJJcW9ndU93TzdhWmtpc2IwMjdXU0x5dWl4?=
 =?utf-8?B?UUp3NDZObThxcysxd2pHVlBINGltUjIxdHVDSjNZTnhUVWtZV2FGdTFXeEZy?=
 =?utf-8?B?UERUeGtGY1ZUM0pnTU40UXV0cGM0MnBEV1h5MVExelFQZXlWL1crWEZKaFU4?=
 =?utf-8?B?K0t2a2pHRXR0M2RtYzFCVGFGaGlvblk1dW1IWkpCdUt6R0VoQXdSVDAwUXBI?=
 =?utf-8?B?emVnVkZjZExIMnRwWkExRGYxa0RDVm10UWNTSWhCU3R1L3lOUWpPYTF0ZUxq?=
 =?utf-8?B?bXFqcnhjZWs0dVpLa2EvTGpCUmEzVk5YaGQ2K1JBRlNNMjBhakZBeWZFZ3dU?=
 =?utf-8?B?K3RVeGZPRm9iSWhNM3lsZkNERDVqZnJQaERLd3BsbFRDSTBFSnFFeEFDUXdt?=
 =?utf-8?B?d3lEdTYxZmp3YkxEemw5dkdhQXhGSTNmUk4razRiUmYwb2s1aUZ1QkZoVXlJ?=
 =?utf-8?B?a3VpUExTc1V3eGsrUm04aEFPQWNER2JrQ1EraVBUMHAyUHpPWnBIbzRXcWln?=
 =?utf-8?B?b3M3Sy9QSGVrZU4veGt1YVN3Z05qTmRVWFhnTkhoSkxUd25aS3FMTkxUWVF0?=
 =?utf-8?B?TmV4OFdoUW96a3hLNFliRDRZZUxtdVZwS3FQS0RMdFFnUCtxR3ZMV0F4dEdL?=
 =?utf-8?B?dmxPSGFQS3RuOTJBMml0UXdJNTg5SUVaYkUzS0Q0NE9xZXdIYkxVWTNFdGpY?=
 =?utf-8?B?MCtHcmMrcEp4LzRDNmY1a0tCUFZaZjNaMlpiMk5YTkY1T1NocEZCTnkvK09r?=
 =?utf-8?Q?41AIQFsOJtOzV3Ki/CF10bkOJ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b0d94087-61bb-439a-bb5b-08dbafaa46f6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 13:56:47.3981
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: gKkwYVFdh4HDOswopXqacm6ikn7Uc4f9q1K25N2qnjgMf5urBDr9sSEv1zdGiOOWRxAIjiikrMjNxgpy32rqrg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8366

On 07.09.2023 15:45, Oleksii wrote:
> On Thu, 2023-09-07 at 12:48 +0200, Jan Beulich wrote:
>> On 07.09.2023 11:32, Oleksii Kurochko wrote:
>>> --- /dev/null
>>> +++ b/xen/scripts/Makefile.asm-generic
>>> @@ -0,0 +1,53 @@
>>> +# SPDX-License-Identifier: GPL-2.0-only
>>> +# include/asm-generic contains a lot of files that are used
>>> +# verbatim by several architectures.
>>> +#
>>> +# This Makefile reads the file
>>> arch/$(SRCARCH)/include/asm/Makefile
>>> +# and for each file listed in this file with generic-y creates
>>> +# a small wrapper file in arch/$(SRCARCH)/include/generated/asm.
>>> +
>>> +PHONY := all
>>> +all:
>>> +
>>> +src := $(subst /generated,,$(obj))
>>> +
>>> +include $(srctree)/scripts/Kbuild.include
>>> +-include $(src)/Makefile
>>
>> With the definition of src above, is this correct for out-of-tree
>> builds?
> Logically you are right and I think it would be better to use
> $(srctree)/$src but it works for out-of-tree builds too.
> 
> $ CONTAINER_NO_PULL=1 CONTAINER=riscv64
> ./automation/scripts/containerize make O=xen-build V=2
> XEN_TARGET_ARCH=riscv64 -C xen build
> 
> $ ls -la xen/xen-build/arch/riscv/include/generated/asm/vm_event.h
> -rw-r--r--. 1 ok ok 34 вер  7 16:27 xen/xen-
> build/arch/riscv/include/generated/asm/vm_event.h

Oh, right, aiui because of VPATH being set to $(srctree), and therefore
in the absence of a Makefile in $(objtree)/$(src)/ it'll go look for
one in $(srctree)/$(src)/. Never mind then:
Acked-by: Jan Beulich <jbeulich@suse.com>

Jan



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 14:09:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 14:09:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597414.931643 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFhA-0000RQ-1n; Thu, 07 Sep 2023 14:09:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597414.931643; Thu, 07 Sep 2023 14:09:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFh9-0000RJ-VI; Thu, 07 Sep 2023 14:09:19 +0000
Received: by outflank-mailman (input) for mailman id 597414;
 Thu, 07 Sep 2023 14:09:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeFh9-0000RD-AN
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 14:09:19 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0628.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::628])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2208e6c6-4d88-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 16:09:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8817.eurprd04.prod.outlook.com (2603:10a6:20b:42c::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Thu, 7 Sep
 2023 14:09:16 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 14:09:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2208e6c6-4d88-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OzKdnSrpTqBD32xP+eCwiIQT9u4yKzw1F6vhjKYOjnKTLk37sOP0DBLkrBfzm+kW8pZGGWJl1KWGNg4kiEyqirBT4FsEoMFdH9DriO2mBjpwh0guaYg9lL6NqjcJxzozyP2XXM+5FNmP62//9kMIl006MlMvhXOlInRIWmRV6RbGbn/Dx2Jy5ZA+pO0oTaLAL27xu2wiTKaeeDmCNp5HyLeIWlHR0eYWg+CGKhO+hDnOnfjufHsjzkj+of3F4w2cqpI51FPji0ODWn0q2lUu53qqqpTnoK/ZDyJdrjBE+UVy9nhdso/8Y/SLyEGbg8SanMbzUEEEV3EFQoybGFyXmQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7htKJpGcGNnLTBF3vdUYIfyiw8g7gJZgdvQf8W12rGU=;
 b=hgUes0fSk3QsJXT95FGK2LUj+Q/n9Ia4J2GG1vRDK6sY7PiAjV2O1JdwwiB6Yk3dXbZJ17eoJrnpvFSPNPDO0ZJYYKmZxRH5c6Nar+HTI/RPkYibH7J1LmQiwx/H7UNt7A8fSdKzljfToFHVjPagkbtSjaLLXvMUZhOQJIqHOjbCHtsXjCBGGg2F+h3DEYurMn1/coXAS4OtKqnhA2nTMrbuSF/+qu+p3/dUMQZJ5Ctgsf05OuFAhgBGkG8GPppqsS97HQxefxK3Icu264vX9SNqRWHBVHN/D3r1EJ/aaVGgz/dNb1M5sHP8Qsg8QCBoeC2kO6JR+e8W95H7YXdf0g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7htKJpGcGNnLTBF3vdUYIfyiw8g7gJZgdvQf8W12rGU=;
 b=3bSFBi6/VyUazNo+qejsYyU5SwnSlWScciY7MeYw5D18xxeth/Caux1Q/JCTECVYFsdz8k8CD1Y26RrAsuOn6ukJRDkYMiDekyE7MO9K0JJDwgfCA82AXLg94bXv+PtEvbU+bKo6R08dqS4IoL/1saWnEftE/991ULDq4W4rEoL7Y57z4s8lz5lVo9LHpK/s5jvYMzP71p9CRRxurzZAzREbcPnmJNdQcXqZywljXKZN0LiESG6rMTkoNZRzZ2rnX7FJ/Ul/o0byogx46XZ17VOx3cohaPJz0jeH9KJ0Y49QNcGq7jB1RH0NVb9ptYGtMPX53iLm0dZXsPR1NmGTkw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <bb92bc36-db32-322b-569c-a176f08a95a0@suse.com>
Date: Thu, 7 Sep 2023 16:09:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH 1/2] xen/x86: io_apic: Introduce a command line option to
 skip timer check
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <20230818134441.45586-1-julien@xen.org>
 <20230818134441.45586-2-julien@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230818134441.45586-2-julien@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0141.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9e::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8817:EE_
X-MS-Office365-Filtering-Correlation-Id: 773d66cf-f992-4b70-6d34-08dbafac0520
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	erkjYgL+hixZn3IL3qj0gFo2tHV1z/JtR15qGlJZcs/cGbyMgJmcQ56djHszrVH4vaA4hJM5OjwXWaGkxTN8h+mV8fvXcf5pdOP89UqGWH5xcMv4CfThRSotNprJoG/LU648Xw4ALpFp57P2K/9G4BRxBYRxlgy8XKbHF+T0ya6BoIISic4QbZ/TDf9Zf6XJu6OLyqX9y8XyLJoWn/s7jm/cpf55Awf5nxUmSHXFhOb5diSqFKpVUKiKTyTmUbVmXndJaUz18zObtvbSoPqxNFcUcX1nGCR8ovAp6vOP+3I7lfkWBTSrqja2KgZ98OU3aZ7vqycjE1jnQ4cmwx3z9cFfyjM3Mc7wYX48yO6zQ6M0HRb0EQen8SxHQdBf5gQg6C5Q25N5z7y8lLrdzefMg6QYpBd6GKM9MJ3x5jhCXP8arUIJYA5ROHsSztS3zox1lz509Fty7w4IwK+3q6Ghk7Z+db8/7t1CfHXnQ6H0nS2JBISZUQ/cKRmLxd1yZMGtGs+DdPnKknnn9yUuR5Q7lK+OxQMeUnzK1W7pWC/YjTLt/yfnJG+khb4Iq4QOQ8z+FM3Xlnt+OS4t7UN7xG8y0z8+0v+V1mBpgrpa88m65mNHLitr8kg/cRlDqsz6y3vpyv7PYxUv/lETTqK50dZiLQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(346002)(376002)(39860400002)(366004)(186009)(1800799009)(451199024)(31686004)(53546011)(6506007)(6486002)(86362001)(31696002)(36756003)(38100700002)(2616005)(4744005)(26005)(2906002)(6512007)(478600001)(4326008)(8936002)(8676002)(5660300002)(54906003)(66556008)(66476007)(6916009)(316002)(66946007)(41300700001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TjFPR0pTS2U4Vm5UbGpYbGdmdlZuNXdWTmdsYkwzZG8yQTNTQ2xDMm5hTXNT?=
 =?utf-8?B?Yk0zNnUrT2F2L0F0Y3VyU0xKbFc4NFZtMjdOSkhzRXNqa0duaFNZa01pdnhx?=
 =?utf-8?B?NXI4UnBXdkp4Rk1jcmFWbWtBWjZIUEZHWWt5ODBBWUMzSjlFbEJ6T00yeVAw?=
 =?utf-8?B?QnJCdCtMcGVaY2F2b3hNSjJVdmJmaHZPb0VnZDFwSDh0Wmt0aGdIbERDUXZ2?=
 =?utf-8?B?UFg1SitrSnUxZkZoWnlXSnhQck1IUy8xNU9BZDdOMGIzUmp1VVNZVE9pNVdR?=
 =?utf-8?B?QzZFVzdtWW82SXJmNHcvdXd3L1lEZHJVRTBrUUxabURwNGk0V0pVRForQXVt?=
 =?utf-8?B?STlrN0VYMFZwNVo0VUZDNTRUeDU1T1FYaEUvMmpzSExvOVEyK2R1SHgzWmI3?=
 =?utf-8?B?RkN5aHNrL2t5ZmNzTVVwK2Y2a3pHenBnUU1NWmZ3eS9jc0FaOUhoS1p3YTY1?=
 =?utf-8?B?dklOUWVDWHJhMW1qdXJZWmhBR24yYzBQMXg0YnVlNEpvQjU1eXgxbHYxRXpG?=
 =?utf-8?B?OUVNZjZVdWlLSXU5Q2tSS3FZVG5zUUhIYktJTGlLS1A0WDcxZlVtT3Fibyt6?=
 =?utf-8?B?ei9rWlRjV3FXQlBTSHI3RzZ6Mm9iTWtXdFMvTEk3NndMNXkrcVBtamhVd2ZZ?=
 =?utf-8?B?NnZLbUV3TVlMc2RMRk5rY1hTcWIwdkdvYVA3eE1pbHlhV0w3UkFYWkpibkRQ?=
 =?utf-8?B?NzFwakJyNnpoT2prbmx1ZS8vanFmN00zSUJJa2ZKRC92SGIvUXB4RXJXOTZw?=
 =?utf-8?B?V0pNUXJ3eU8xZ2ZLVkx2bVlCTXhJWVNJRlh5NXpyUjRqaUJSMnFiM1VVdWli?=
 =?utf-8?B?ZkM0LzNiOXd6eEQvZ3F0V1JMYk9SeENZUmdZcVNLQmhBMUNrS0c2SDlXVEZw?=
 =?utf-8?B?Y0dOR0ZJWFk1TlZVRzYwbjRsMm9vSUp1RjFvSlBYbGdnUDZXamRQbTJrV0Jr?=
 =?utf-8?B?OUthdmV1SHpiWXFHazRwMEYrTzN0NisrWXFQczN2aUwrb0xqSS90eUoxME55?=
 =?utf-8?B?ZVJzNWVLaXIrWHdoeDVTV2ZiaGNWSlBVV2V3VVphU3RIek1TVkc3bGxmYXM2?=
 =?utf-8?B?WFA1dW9CMklPeFdDYldWanNWdXJqWENEb3J6WVNRS1Z3eUw2QWdNWS9lczVN?=
 =?utf-8?B?bUpCVmpLYVFpY3MybTNmbHQ4NTdUWlplZ0V4Uk1tMlkyRm1BblNQSUIwU09F?=
 =?utf-8?B?dVc5SFlBU0lleWF3NUlzRWVkZnVjeVNoLy8vRlBvdS9QclVpNmNtY3FGWEhP?=
 =?utf-8?B?ZzlTby8wbTlndC84WmlxNms1YXFGczRKelBBdFIrWkU4UWVpbWFlZjJ4YStv?=
 =?utf-8?B?UkQ2Z3BYRWpxOUpRUDk1UTllRDZjRnA5RUp2aEdUZGl0a2t0dytXM3hESUh3?=
 =?utf-8?B?bnVRQmNsODArelUvbTdrS3J6SFhtcmVHWWV1QTVPOVZRZTkvOEFCYXZDNWhr?=
 =?utf-8?B?K29CaGlXZFBwdUtCUCs4MHBuMmxBN3FvYUFQWGlsMWJONkFVaVN4cTVsWTNR?=
 =?utf-8?B?ME9qTGQ0bDdrYk9iOVltVjVZdWxkazdYbFpMTXp1dmFCTHBFMjMyNnpqOXp5?=
 =?utf-8?B?LzdmUlVUUjBYRFFzd0lHcUFudVg5M0FLU2R3MVRjSkdEZnJtQTFHUmxoR3dM?=
 =?utf-8?B?TW9xNGtmSzVzZ1laekQzNzV1UFdaWTk4UlJnUTVDeEM5bWpwcHU1ekFVWStk?=
 =?utf-8?B?ZlRsYzlVZ3V2YmdsQmpWbFN6KzNIM1R2U1AyT0pXYm9wZThhUGo3OHFIMFIw?=
 =?utf-8?B?V2JNL0ZYcSsxK0RYUmJyQVlBTTgrWXNseW15WDZ6Z3o4OUhUNzNSMUFaUGZF?=
 =?utf-8?B?Smw4U2IxNFlzM0M2V0s4Nk53YmE3b1dLdkkydEEzSU1Sc2hXcnBOU2hNSUNG?=
 =?utf-8?B?bEkxcUh3dXE3YS9rangvaXhxTDdhcEtyMjRhQ2p1dDhRWjFPYlZ4ZDloWWdG?=
 =?utf-8?B?Ykp1L3NhN3l4SmlpbzVqblNicGJDOVdOc0hiVUUrM09Kdi9GN1lEemg1YkFY?=
 =?utf-8?B?VlI0OGE4bnk3UDNNMnVBREdvUFdydkFlMWR6MlNLSkE4OW9TNlVEaWdpSzcx?=
 =?utf-8?B?aTBGcTQ4SUptaXpxaWlIS0IwOEl1Sm1ncS8yWVF2UUNqM2J6UklTb25XZFlv?=
 =?utf-8?Q?gVfaX3CS5ro5oET1I3dHnQL1K?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 773d66cf-f992-4b70-6d34-08dbafac0520
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 14:09:15.9352
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: +kw2qFBuNNpA+4JhWWkI/GoLcLT3gITk78tn9HsxTC2WgQ4h+/MeA4RbVnPf12FGkWCNDry0UndmBK0syTw+qQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8817

On 18.08.2023 15:44, Julien Grall wrote:
> --- a/docs/misc/xen-command-line.pandoc
> +++ b/docs/misc/xen-command-line.pandoc
> @@ -1896,6 +1896,13 @@ This option is ignored in **pv-shim** mode.
>  ### nr_irqs (x86)
>  > `= <integer>`
>  
> +### no_timer_works (x86)
> +> `=<boolean>`
> +
> +> Default: `true`
> +
> +Disables the code which tests for broken timer IRQ sources.

In description and code it's "check", but here it's "works". Likely
just a typo. But I'd prefer if we didn't introduce any new "no*"
options which then can be negated to "no-no*". Make it "timer-check"
(also avoiding the underscore, no matter that Linux uses it), or
alternatively make it a truly positive option, e.g. "timer-irq-works".

I also think it wants emphasizing that if this option is used and then
something doesn't work, people are on their own.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 14:13:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 14:13:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597423.931654 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFlT-0002lT-IW; Thu, 07 Sep 2023 14:13:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597423.931654; Thu, 07 Sep 2023 14:13:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFlT-0002lM-Fc; Thu, 07 Sep 2023 14:13:47 +0000
Received: by outflank-mailman (input) for mailman id 597423;
 Thu, 07 Sep 2023 14:13:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tY2=EX=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qeFlS-0002jx-8Y
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 14:13:46 +0000
Received: from mail-lf1-x12a.google.com (mail-lf1-x12a.google.com
 [2a00:1450:4864:20::12a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c0de87da-4d88-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 16:13:44 +0200 (CEST)
Received: by mail-lf1-x12a.google.com with SMTP id
 2adb3069b0e04-50079d148aeso1655890e87.3
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 07:13:44 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 w28-20020ac2443c000000b005009d4a5e6fsm3186941lfl.22.2023.09.07.07.13.42
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 07:13:43 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c0de87da-4d88-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694096024; x=1694700824; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=y0qTqBIIicRfTU4ngP5GQ7/gnBqhUeRa96W5uqZP3KY=;
        b=KEjRvpA7cYe85gK57+0cYOQTG/52hMdzTHIvY4RS1dRXyV1PQnaONbVzbQ6GzejyFy
         po24zzQi2n+kqdpDSdh/iaM0PMSjQZk/MIrkKM2ZEhQtyP8YyL+LblQHBaYdSZ4UUeci
         anrchTTXEbM1xvh0Xm5HtshcrzEd2B1DKWjVEzsCFuqMYnNiZ3k3gtR1jDB+MElM/ZQ1
         wUpXvsM0lwGLNZzwikZWKhdVh0Jtqi3+jtK87PWuYusxQshhpIdETtAZYHEsyrU6iz3R
         99B4F0mj7gGjMTaztGPo3lP59G5r4CKfqPALn6jdtza4g43NfcQ6tXlmlgkowSPycRZr
         MDpA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694096024; x=1694700824;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=y0qTqBIIicRfTU4ngP5GQ7/gnBqhUeRa96W5uqZP3KY=;
        b=gbtiLhSYtClVh1shkh0+/8nRqQmCfYzblcbYfgHRgPJyglrtt2i2uBsUndFuw8oxYT
         HJaZOQ0vzaljQYM5s3eqHRZ0ESWoAXHng7H85H6/yIZg6bkCYYRiDbemg5VTOqOvjMXE
         Z0QOY/+dnqkoB4Z7PkUkkN3CxFoWDdaYiHkt6vPdKqkST0ayFVWAU8JkUpWyO/Iy0Aml
         ggegns8kf1cAO60MteD6pgG3bgbmHJ7Ig/2oGscK8FSFTaQUnKqGnf6kFUbRUPsb1/Wl
         Pas8UVq1cT3k08C+VUc0TsiSeJEeF/8oIlHn24TyQtlH+zHDYDuUh94GpFWIH479qzv2
         vIwA==
X-Gm-Message-State: AOJu0Yzrq9Eup3XhoA6YhjXi3RrJh4tTT0ujbP52yS0th6PB6iKmfedQ
	B6W/4TltJbxvalRSa8Ja3G0=
X-Google-Smtp-Source: AGHT+IEJY2y60K7joEp275lEJ9EKEkkI9DId1k2yYDKpGYr5Um6t5AGfYbID4qfAiLQMTWRFzXpw1g==
X-Received: by 2002:a19:9149:0:b0:500:9704:3c9 with SMTP id y9-20020a199149000000b00500970403c9mr4666984lfj.26.1694096023320;
        Thu, 07 Sep 2023 07:13:43 -0700 (PDT)
Message-ID: <7e34a9f9d3b60888cb006b3e2e2342a944084783.camel@gmail.com>
Subject: Re: [PATCH v6 1/2] xen: asm-generic support
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Anthony PERARD <anthony.perard@citrix.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, 
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>,  xen-devel@lists.xenproject.org
Date: Thu, 07 Sep 2023 17:13:42 +0300
In-Reply-To: <151a04b2-57c8-20f7-0bbf-0bd1c7c73e97@suse.com>
References: <cover.1694078544.git.oleksii.kurochko@gmail.com>
	 <cf5f446915bd5c8980beda22718efff32678e16b.1694078544.git.oleksii.kurochko@gmail.com>
	 <fbc5ea33-22c1-52a5-dc7d-97ba29e06e9d@suse.com>
	 <39d85cdb68d29cc83743da703539f9c536ce7ded.camel@gmail.com>
	 <151a04b2-57c8-20f7-0bbf-0bd1c7c73e97@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Thu, 2023-09-07 at 15:56 +0200, Jan Beulich wrote:
> On 07.09.2023 15:45, Oleksii wrote:
> > On Thu, 2023-09-07 at 12:48 +0200, Jan Beulich wrote:
> > > On 07.09.2023 11:32, Oleksii Kurochko wrote:
> > > > --- /dev/null
> > > > +++ b/xen/scripts/Makefile.asm-generic
> > > > @@ -0,0 +1,53 @@
> > > > +# SPDX-License-Identifier: GPL-2.0-only
> > > > +# include/asm-generic contains a lot of files that are used
> > > > +# verbatim by several architectures.
> > > > +#
> > > > +# This Makefile reads the file
> > > > arch/$(SRCARCH)/include/asm/Makefile
> > > > +# and for each file listed in this file with generic-y creates
> > > > +# a small wrapper file in
> > > > arch/$(SRCARCH)/include/generated/asm.
> > > > +
> > > > +PHONY :=3D all
> > > > +all:
> > > > +
> > > > +src :=3D $(subst /generated,,$(obj))
> > > > +
> > > > +include $(srctree)/scripts/Kbuild.include
> > > > +-include $(src)/Makefile
> > >=20
> > > With the definition of src above, is this correct for out-of-tree
> > > builds?
> > Logically you are right and I think it would be better to use
> > $(srctree)/$src but it works for out-of-tree builds too.
> >=20
> > $ CONTAINER_NO_PULL=3D1 CONTAINER=3Driscv64
> > ./automation/scripts/containerize make O=3Dxen-build V=3D2
> > XEN_TARGET_ARCH=3Driscv64 -C xen build
> >=20
> > $ ls -la xen/xen-build/arch/riscv/include/generated/asm/vm_event.h
> > -rw-r--r--. 1 ok ok 34 =D0=B2=D0=B5=D1=80=C2=A0 7 16:27 xen/xen-
> > build/arch/riscv/include/generated/asm/vm_event.h
>=20
> Oh, right, aiui because of VPATH being set to $(srctree), and
> therefore
> in the absence of a Makefile in $(objtree)/$(src)/ it'll go look for
> one in $(srctree)/$(src)/. Never mind then:
> Acked-by: Jan Beulich <jbeulich@suse.com>
>=20
Thanks for explanation.


~ Oleksii


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 14:17:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 14:17:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597433.931664 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFoj-0003np-19; Thu, 07 Sep 2023 14:17:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597433.931664; Thu, 07 Sep 2023 14:17:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeFoi-0003ni-UT; Thu, 07 Sep 2023 14:17:08 +0000
Received: by outflank-mailman (input) for mailman id 597433;
 Thu, 07 Sep 2023 14:17:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeFoh-0003nc-PZ
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 14:17:07 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062c.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 38d5b917-4d89-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 16:17:05 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8758.eurprd04.prod.outlook.com (2603:10a6:10:2e1::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 14:17:03 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 14:17:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 38d5b917-4d89-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U6scOsdTB8WSBFSmgAFrE9zOhXv/jnqnGjfgNUcmp/UBK/BBtcRbPi0xU3TddRjGUwTprIQ+9mJ8THLGHWp6ooBXSIzMyCsulsREgaal3QxsR6N/vJ8EEGcf7ZMh0TcwSxJ8AKIF9d2lU1Hu5QRFKCqR6PFcGm3cL/vf/qbgs+QtNr19qtAZtVDtPKEMJ8Tov7M1Z8a/wTWfJoDyi2mdlcf3LFrYwikyCG12vAF3ZT3OItU/gl30s2KhLBbmHE+dIw5UWv2M/omkwp2m5I08ywwqYTEqfMvfsz3oVOHLJbYt2NJf4II350HJQY4bw5SC9H7+FMBB3Sd+1W2v4Q+Bkg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=paYr+JUWr2FCvc53Ti1SIkmtPmBwbppM/wPFyDEYQxo=;
 b=NE0uxGumoAApqMZOul2EVhRWd+dH+9Zh0OLZ5xqqwcLwcgdJ1JvUzLtSMs1iDhQSjGIkJaai6TMbofRRKM/F1q5f48pgg6z1Xd256SUQsJhoq1wRXUMNKjxMEPc8mgqgH6HYCoDjbbw5dVXlFOYaRQ+QrD34DjZucjXxQl05zU4HB3KN7dRpg4l87UNTY7rYvPMePf/ZbSt1/3luvGGNyPxk7jO9lOJ3FotXzLSSjRcRyZ5WjN6Gd2/1Qf8IRZ6p9/rCsjPiGwzfNm22MfApbOcWafHT/H/SzUwEYOreBb1Lmz/TPJLENkYJNA+0d5GP4Jnu+Ojxzsk7fm1MxULLtQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=paYr+JUWr2FCvc53Ti1SIkmtPmBwbppM/wPFyDEYQxo=;
 b=i1QP6tWViNbctsVACZ9fIBLawEw02owWxJKJulajLv8uJrcAf4pimGx0NyH2iDeXJff0iVD5FvQ5uiQflB0Xd12P9+rQPyJq7aepOCfe+XGZHylcFzPZQvdv42HcARQRl6CRMJ6STrqsk0d+LiZ1SlN9bRm9IXAiT1gUYa7nwpwCKlGOMQlaYam3Vu8CWmdxOAaOk0LwzvIfeCtE4eqL3rIXxOC7EcWASgliKwsIcoCW/amLaDTDZ2pQDgsc55CvQSTWg27O/mim+Tst6r8QY3NS+AqD3Xod7xEbjZEyAXWUCXFOAIGpywjUUZ8m9VtgYMZp6tlk+1R1Idb9cfAx8Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <74aa0f95-e059-f6a4-b085-03c7e4b2fceb@suse.com>
Date: Thu, 7 Sep 2023 16:17:00 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Content-Language: en-US
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] cmdline: move irq-max-guests doc entry
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0261.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b5::15) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB8758:EE_
X-MS-Office365-Filtering-Correlation-Id: 328da598-fd20-408b-6541-08dbafad1bd9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rYi3UsyfrGp/n5eZtw1V4DU2kWBLqfyq9pImQUzwqFg+WW1kdupigE2pl+wksXxbrM3qMOImYhndvagi5ngk73+vluwp0c4jd4Klicpq2xW7ruL2Mvu4AzOVjhrC4WvkoDsIvwH8ka7SnFYbSlUpmLCyKT2bVmVx4nqgd6rPUgiU3c0wYcIof3jAiNkMs43GxPAsmZJ0JgQZZ1DyEeYzzzYtXk0X43dVjZjo1maY2V2Ku8Vbsnw42eoietU6TfSC7C3V8HCVSvvwEAifnMory3Z/XQnUfUzi6WVCosKmkKA0UuPKqkPWdL2qzBQLTF7XmKYY6jcEPvF5m3/EHW949PGcAdFDlEjNL+vKp8lsU1R6ezBxR60KmqXR5ENfg4BNHByP74ZK8lh9uMsK/g7YhCJ51c/COLVcyHC/gRbA6n+Ihpec3XpESKewIRvig1ZnhI3cf+lGLu903Cgd1YD6PJfliCGq0r87ry10xiqYqugKG5PzX+v8/uyi66D3Cbxz0Qbz8mGy36d97hefrSvrWBbdpffmUbgShMtn9eiQmjM/qZ7twHo6UeAdGnCv48wlw8gqjIz1u48xxxMXQpdGVvpRnKodYqv7HSLdqQXRDvBajJQS+y+5JQ1rYapfsAceKb9bl69vCoc7G2sUkZSzYw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(376002)(136003)(346002)(396003)(186009)(451199024)(1800799009)(31686004)(6506007)(6486002)(31696002)(38100700002)(86362001)(36756003)(26005)(2906002)(83380400001)(6512007)(2616005)(478600001)(66946007)(316002)(8936002)(8676002)(4326008)(5660300002)(66556008)(54906003)(41300700001)(66476007)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Sm1vZ3BrM2hObUJDS2hoL21WUk9zL0VNVXVvdjlGakVyK2hqVk5YcjNTV2w4?=
 =?utf-8?B?TjRHV3VJbE5Pd3YxcUxHMXZTOFRBS3RHbmpJTGpXaGkvbU9ZMUE4N0oyczZH?=
 =?utf-8?B?RElaQXMzejFzYjdJZWhZVExJaGpLZnVXOXhsaExKVllidmJpR2hwUFpocTBz?=
 =?utf-8?B?SFFnQldVWDBuemd6TUtIdUVPV1BLL1N4czJDVGdjVEloaWNKS2UvRVJYQXpQ?=
 =?utf-8?B?TTVkYmtXL0dScVF1VmxPTHpRUmh3b3h0T2g1bmpWQ3FOZkNNUjl4TC83K0pR?=
 =?utf-8?B?cGRrTmNqNXJxeUx4Vkl6QkNCWG5oaUVVT005OGZvSXVnelg5eG5LbkowTEdX?=
 =?utf-8?B?QTQzS25NWEdkUW5qemd0dTFCZTBTNXd3RHVickZrbTZoSE9hS3pGbjNWT2gy?=
 =?utf-8?B?VzB4Y1BvaTFSNEJhc3gwemptRGtwU21Kdnc1a3crMjJFTWxPcERUZzIxMUhJ?=
 =?utf-8?B?WDcwalJjanE3U1JRNnhva3A1bXF0TlN0d0UySUpsUUZWbjlRWDc4ZVRuemEv?=
 =?utf-8?B?cGZkZ3Nnem9vZDYzeVg2bWJCVU1XZ0ZjTHdoN0FqVTg0TDlJMk5PVlVVNkp2?=
 =?utf-8?B?ZkxkSVdPaTJEbVVrNThMMFQrV1pCaGFna0ltdDc3dkNNNUF1YldzbW9WYk1P?=
 =?utf-8?B?WENkTkJUSGp6SGVrMXZHRmkvbFE5d1NGa1F2K1pWSTdoWDhiY0o0YVVmU0Fq?=
 =?utf-8?B?bDRQdThKVEZURmx3SmV4RUpQaGV5VDR5VVlkR0JXN2MzZFBITGwyVEFYMkZm?=
 =?utf-8?B?eFhTaHlPS3pkN0UyekRXSG9SSGQrQndIdGt0a1l1Q0kyWE1pdGx2cnZqdThH?=
 =?utf-8?B?TmpUYWZjbkMyVThYU09sbkg3b0JPbDdOb3kvN091VDR0TDVoZnFMS3JMc3lC?=
 =?utf-8?B?TExqbTRpZ1VvTTFMRWtacHN5dUNMWUpPUXRqNG9MNHBEUUZYSFRGdVptdmZE?=
 =?utf-8?B?SWFEekdUT2phVGdiSWJZRHJ2bWlPb1FlTWZJTTBpL3FaVkxjclluNGRWMDBO?=
 =?utf-8?B?T1FSN2I5YzhZcTQzYUdWeDEwSkswN2dCTjNxaXQyY0RDNEorSEhaSnpJVWRY?=
 =?utf-8?B?L2ZnTWcwbmE1b2VtaGhoMTJxOVRzNkhNRjdIdWxkYUlWeVU4eVJiRmUrOTN4?=
 =?utf-8?B?Z21KSTlMZ0d3WUs4eXhxNHNQQWkwbGpERDFERWhXQkg3NDcxN3RnRnZWZEtP?=
 =?utf-8?B?YVg0V2QwWVQwQ0JteEJIZ0Y4TTJYa2RBS2p6NWdhYkx4VHdiTjZLSXMvQnc3?=
 =?utf-8?B?dlZjdVM5WW1Kb2NaREpDRFliQ3l0OGxWS3htUXRpNDhjZE96MHhqREZpb2l1?=
 =?utf-8?B?SG5janBzSXh3YVhic2dRU2ViUWZka28rZ1JYWEVpV2hGdkNyMnVIc1hjK0lB?=
 =?utf-8?B?UVFQdjcwc3NHa2VXUkcxL0RWR3c2YXp3c09HaEU2SWVjTG5JSXBBNng1Tm1F?=
 =?utf-8?B?MVJ4bFNmSUc3SVA5dWVYU1NXZzl0c2lLRVcvN0kxTmJIamtsNmFhby9CUTBL?=
 =?utf-8?B?dmt2OGNheWhEMGFqSEVqNlhqR3JSZkxFTm1wVDJjZS9jdDhra2VQRjZHaVNC?=
 =?utf-8?B?MzZXaDI2cEkxSElPUFBkOHhuZzlyZ0JCYVAwdENnS2xMSUFJNDhub0p1Ylcv?=
 =?utf-8?B?RXRMdm1Vc3p6NjhGVmxjY3pNaWU2QVdwQ24rcVJpaFFBYitOU1JXdExxN0Fo?=
 =?utf-8?B?YkUvRjB4ak1FcE5Zd0hSdnhQZmdTTXliamN6OHExckRSVHBBcEhETmhSTjdS?=
 =?utf-8?B?RWZiWjlVTCtoQTdLWWRpQ0hsVUJBT3Y4UndReGk0UjBsRUc0d1o3dVdvVUpQ?=
 =?utf-8?B?Nm9OQXhreVJIUU0wZGlqaitPWkJSMmtVNHhOVEVXc0Fjbm56L1JDV2oxU0p4?=
 =?utf-8?B?SmZHTy9hRWwvN1YzKyszRGR2aTNnbzBNK3NpcVJ2clJZMVRIL3EraGNQRUpF?=
 =?utf-8?B?dDZWUXRKdzUxWU9lUkZSVE5DTUdGb2R2dzhralVJcTZvQ0VDekI4Nkc0emw0?=
 =?utf-8?B?WVh4WDNaU0NBZ1NvaTJQMUdXTGRUTW5mcVBTODhPR0EzUEFhS3NUcWs4aTFC?=
 =?utf-8?B?YTRuUUZmSmIwbGQrOC8vMmg1Zmx3bFA4ZHhEbXZiUFNNVnpyYm5qeFNKRVM5?=
 =?utf-8?Q?ftdZslsR3Ry9BCCBvAfzxCS/2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 328da598-fd20-408b-6541-08dbafad1bd9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 14:17:03.5559
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: pi2/xfFoPz4VZnIty0oREKkN7Z14g1oD0zql5C1sDdLc9GcktZZROT6J2weN3bEYedgyhIG7A/qLa1UhLSIsuA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8758

... to adhere to intended sorting.

Fixes: e373bc1bdc59 ("x86/IRQ: make max number of guests for a shared IRQ configurable")
Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -1630,6 +1630,16 @@ wait descriptor timed out', try increasi
 **WARNING: This command line option is deprecated, and superseded by
 _dom0-iommu=map-inclusive_ - using both options in combination is undefined.**
 
+### irq-max-guests (x86)
+> `= <integer>`
+
+> Default: `32`
+
+Maximum number of guests any individual IRQ could be shared between,
+i.e. a limit on the number of guests it is possible to start each having
+assigned a device sharing a common interrupt line.  Accepts values between
+1 and 255.
+
 ### irq_ratelimit (x86)
 > `= <integer>`
 
@@ -1914,16 +1924,6 @@ This option is ignored in **pv-shim** mo
 ### nr_irqs (x86)
 > `= <integer>`
 
-### irq-max-guests (x86)
-> `= <integer>`
-
-> Default: `32`
-
-Maximum number of guests any individual IRQ could be shared between,
-i.e. a limit on the number of guests it is possible to start each having
-assigned a device sharing a common interrupt line.  Accepts values between
-1 and 255.
-
 ### numa (x86)
 > `= on | off | fake=<integer> | noacpi`
 


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 14:29:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 14:29:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597441.931674 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeG0A-0007Ds-2A; Thu, 07 Sep 2023 14:28:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597441.931674; Thu, 07 Sep 2023 14:28:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeG09-0007Dl-Vk; Thu, 07 Sep 2023 14:28:57 +0000
Received: by outflank-mailman (input) for mailman id 597441;
 Thu, 07 Sep 2023 14:28:56 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeG08-0007Df-7z
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 14:28:56 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2079.outbound.protection.outlook.com [40.107.13.79])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id df044cbf-4d8a-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 16:28:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8981.eurprd04.prod.outlook.com (2603:10a6:10:2e0::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep
 2023 14:28:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 14:28:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: df044cbf-4d8a-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=md5xo0ePuzsX2JAQh+N5hA+MpTxStftUfJbwdYJs5+NhpvFvNlEgTz0MMjKfWi7gfdzuNym3u8pm3r4TBtHLUAAPr8AehvU3Y2TEs5VM80vRv0JMTyiq1h1Biw0nclwxElCk6jVWfx7RVtigqNkWTdi7QUVrZ1hdMM1KKfvdeu75mr6g9GAXt4Mjdv3iM7yHtDvAmYnmJTrVDuGVvWg+Uh9Wc6po2QySmNTeDnPNtlf/e04mwjLf7cgUedwn/iOfXIjTxt+L2lhr6IZG8YRHd83NuBXQtrkpF4NNpDCn+ZyJKaPlkBzryWGngRvDeu8c3c3ZUaa26l4RSyXFMvseRg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TiCBhD+IhfAN28vO1QAQM86F+nxEnVn+3e3jFJX+R4s=;
 b=bmqYt2ja/p3gQ16U4fCyVz9zQ2zX/UZDdnohPNOGYQID/VzuXBrllCoiHGNwJmPBpFRlkgug2WfmDYXHHWyxMQnS7+soMQUuzvYSngSwX4hf216X2t040KOp0/MJpkzSf+whUQJEGSwDz0vNNkrP4rJCk8jcbtNZ9u4wg+oa4HXavOribzldVt6v9WpkZS048NRn2Lq2yjwcAXXwjgO+vhI2zzFDvegc7Wx9f3vqmIf2F/fxp4dE+BBy2HBiZIBumia1OGC6TF8KDmxMCeKkcaeOwu2XQTJL8mKjW8jNWwtZvEJwG5lH4x+cNTk36FjN3TbO1R3diqyBwpq3YIHKRA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TiCBhD+IhfAN28vO1QAQM86F+nxEnVn+3e3jFJX+R4s=;
 b=eY0qYn5jqXMQZ8VUOFcaZN4zmd0VUh/KpX8ifgYrZvKbVlXPbBeyWRRUiOijeHB0ErmMr85Xg17LihIdJJbHA6gWYLGqO3AlZsdZhkI8srOauIEZxIrqcxdHze9OU9mJ7XLDcNCRC1d4jGXl87lbrjJWzMsJLGjQPv5uEehivQqK1Cmuo2i7RVbJTY5Mzw+TOmvREA/ebf8tINxmPYk248MkBLoWYGxVxKUZQPu6jUDlvdY8+vM33Ht0PKh/tJ/hz3Zts9wTBwpjPBMNSIr0K7R/B3ngVOcp6e5R/pNjvQsPGgr5d/HLjPDTgVMsO/dPZrjHDCvaaFG//PzN0LPv6Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a198d472-4b1d-1da5-e336-232af98b87aa@suse.com>
Date: Thu, 7 Sep 2023 16:28:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH 2/2] xen/x86: ioapic: Bail out from timer_irq_works() as
 soon as possible
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20230818134441.45586-1-julien@xen.org>
 <20230818134441.45586-3-julien@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230818134441.45586-3-julien@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0106.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9c::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB8981:EE_
X-MS-Office365-Filtering-Correlation-Id: 085592ec-6b4d-4d4f-7644-08dbafaeb1b1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UK8WbvGngJJPu57uquy9b+9A/oXFQkYxp9J84eZyUSwy0o336jY4Exol9FMYmqO+PkO0KMCDDEI1yngd3DI6DLcEPXxwjLr2izhW6fnAtXvlXSgpON+CX8LcyDGQq4XghTBKZQzE0mH4LvV+k6nI7eaSuklj9yzDUe2haajASA94i1D+uTJUBHUqZdgUp5lDaPPuduAsIUuPl11gunIy1b84lc2f+A0L7WOBXoiuaFkH7tbqxV5G8Ov+lErZiTmGQ8DiJDMDFX3haagGUuAizo3eE+81NK1J/1LxgXqlkuYVfqmxEnN0/yihEeXTHzfOSxzRdSpkl+dCwxN7PjZgnooqRR28qPZR0973sccYDvTmqSxFwOURRJ87CWYs+8ZuuH8oRx44mA+QjklZjD/31TsVoMzhZQGGQ2YR35J7oD9Fo19KntIfmDmZHK70pyb5u8xe6ecvY3ao9lda0ErjwIV/jF0nN/SpqsPDC//2Kg7YczHn0jthzYltoKhpU+70z8o49oaqPumGGPWk+XbwoUNbnLdvH5cF4H0biICTqkGHWiqSQFruMm0r+xCoHYrHl4nG8rMFC79/PCgFDiv9KnqkERwsGbCObLeu4RFX0dPxDY6iUekJOqsi/3IJAtw3H0ZPd5mwgixbojzx3ZlehQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(396003)(39860400002)(376002)(366004)(451199024)(186009)(1800799009)(31686004)(6666004)(53546011)(6486002)(6506007)(38100700002)(86362001)(31696002)(36756003)(2616005)(26005)(6512007)(83380400001)(478600001)(4326008)(8936002)(8676002)(5660300002)(66556008)(66946007)(54906003)(2906002)(6916009)(316002)(66476007)(41300700001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YXJpeitjYzRwYy83dUx5dEZRQUQ4bnpYMk1ndXdJZjZlMFhUVTliSTNrdGNU?=
 =?utf-8?B?ZnNlRG1LQ1pQZ2dXR0xFRThUbzlnTmpTcWdHeUg1aU9hMnVqcU1aUWMzcDZR?=
 =?utf-8?B?NzFTR0llcFl6MXR0bnozZFV2QUZhL1NHbVorS2lHWWYyK1YvWE1qS1VwUmYw?=
 =?utf-8?B?Mkp0OHgrMXE0TXVMZG9PVStneTRKaDhlN2Z4VjNPNHN5NDcxc2VINURNdS9o?=
 =?utf-8?B?TlpGNytiekpzVmFEckN4S2c5OEYwZnNoZ3RiNHZyK25pZ0FORlh1L3VXS0Np?=
 =?utf-8?B?cFIyNVRBZmRPd1pNbzdXTHFuMUdXN0Vya0NVVk9VeEV1alJ4TXU1aTllaWEv?=
 =?utf-8?B?cThPTWlmd2tUcng1MjlaZTZTb2t1WnVTVk1Pa01jSHpwU283b0pROXcrK2c4?=
 =?utf-8?B?Y2RWZHhHMnVqbW1EbTNybDZWbXM5N3ZvRUo0REJCV28vWTR0ZTJ3NFlBZGJp?=
 =?utf-8?B?N2pIa1dqdlRYbk5aem9HcnRrdTRtYUVLVVRXK0xpQ0pzQndGelZMNXhmZEF6?=
 =?utf-8?B?Ykc1YlQ2U1VsaHFEdFpUTUkxNjY4ZjRtYUc2cC9XMy9HeS9RREZZQkpYa3cv?=
 =?utf-8?B?VzBMekZLd1RmT1ZreHJ1VkF5akVPZ2hGR2dPWnJBUlovQTMramJRb041ZmFY?=
 =?utf-8?B?bHNRRzhyb3lYbzRlNWJsSDZkMEdoUXAzZmtiaTJITGZOamNINE1BYkMvU3NG?=
 =?utf-8?B?bTYzRVFVZ1hhTlBUQnJ1dzlFUWw5aVVxdWVraFZvZUxaOTRjY3NNYXBxSUM4?=
 =?utf-8?B?bzY5RXpiU1ZxalRpY0pqSndydTIvSlhHUkdMbVluU2o2WnRxOUhNWllNT1Fh?=
 =?utf-8?B?ZWVxUnRUck1mYjhZR2dEaTBSazRSZDcwRFhlQ1ZLTlZrZFF6TmZXYXBiMmNk?=
 =?utf-8?B?ZVE4VG1RL2tidzZUZVE0cWFwOERNUy9PZk8rbnU0NTNZQTJMb09DZXFyTFNJ?=
 =?utf-8?B?bHp0UXNzbXE2NWZCN3ZsU3VzKy9pN2ZaeGZtVzByV01LekVXcWp3aDh3V09N?=
 =?utf-8?B?ckV5ZHc5OStsWk1kbms0UGsrS21TakRNYjVKeHhMT0k0VG8wbUpPZkJLVERz?=
 =?utf-8?B?ZThSRFNnQ3FjNkdLd01jNWNLY1pweE1HUEpKQ09RTlQrb01aZnBnN2thQjdn?=
 =?utf-8?B?ek9TOTZTNFZNODFzRkpZMm9zNG1nOURCTHBPakhzWWVFSS81VlUydjdENTRR?=
 =?utf-8?B?c0FxbWpiU25KaWx0VmlXaGZCTStETFBPMzRyTzJnTmh2UCtYNEhUc1ZUSzdP?=
 =?utf-8?B?ZVBZT0FpNUFKbS9KVmZJZjBwU1lCS2ExUGQwR3A2endzZkNHdmx2QjQwUnlJ?=
 =?utf-8?B?TGtha1dQcXVQZEIxcjFidHdDRXVhZWZzeU5uN3krK0xWT0Y4ZjJaV3J2Njda?=
 =?utf-8?B?UTMrYjBObDFXRExYL0FUVjV6MFhFcFhTOUFUS212R3M1ZEYvMEw5RE0zVmRt?=
 =?utf-8?B?YVdXTTh2WG5HaTQzYTNEMnFQaFg3R3B2RUw2UTZ4aGRKTWlDb2MrSy9WSzMy?=
 =?utf-8?B?ZWE5S2hqS1o4WGxMOG44TTZZb3lSTzBsSkZPcVhsdVlKOVppQkJVN3dEcVI2?=
 =?utf-8?B?aldPb3loMDFCTWpSbGFRWEhuK2xKeXZyb2hpd2U0ZWNOQWRTREJRUXJTbzhq?=
 =?utf-8?B?VVhUM1pHcUZsSGRaYVhpZzNuMDJOdWZpaDRzbmNVbnNGS2lyc3UvTDR3WDdw?=
 =?utf-8?B?OCtVUHBkak5DU3FVaGt3cWFuS3E4aW94QVRUQzV5UzFNU0VORGR5Nm92QkV1?=
 =?utf-8?B?ZCtzdUR1N21wT0RBMFByKzFYMFNERXZzVlU2bTZGT2o2enN1QXBNOGRRVGRa?=
 =?utf-8?B?eWtENmltUXB2VE9uekRGN1MzbTh3ZU1CdDZqOGMwbG5LNlJuQ0VOblUrRUUz?=
 =?utf-8?B?T3ZQbUhLOEJEU0NkZjYraTNoRzd3OGU4KzVRMGYzRDBENEIyU003bHBFREV6?=
 =?utf-8?B?MGF1SHMyMUNhby9HQ1hhTzhEYUR3NjdremZ5THc5RHMxai9QUGhZc0l3cGJ4?=
 =?utf-8?B?aStvdFhxYzlha2tGak1mcUJRQkJ3elFQSmdOTlVPMEoyU0FWVUFiZmlFRksz?=
 =?utf-8?B?SUVRVTlnREpvdHdEc3hMT2xQUTZMTk9zYnhpeEIraUd1Y1VCQ1M0VHRUOTh4?=
 =?utf-8?Q?od3t3Sn762d3jc142R2rm9277?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 085592ec-6b4d-4d4f-7644-08dbafaeb1b1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 14:28:24.4406
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: QUkBzjSC/oaFrcQko+TjWicXsRntISwVV73KpP8ytAVo4klYHrsPG4TGe3bPK20nlfqIQH3kN6fb1lfzztKX0g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8981

On 18.08.2023 15:44, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Currently timer_irq_works() will wait the full 100ms before checking
> that pit0_ticks has been incremented at least 4 times.
> 
> However, the bulk of the BIOS/platform should not have a buggy timer.
> So waiting for the full 100ms is a bit harsh.
> 
> Rework the logic to only wait until 100ms passed or we saw more than
> 4 ticks. So now, in the good case, this will reduce the wait time
> to ~50ms.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>

In principle this is all fine. There's a secondary aspect though which
may call for a slight rework of the patch.

> --- a/xen/arch/x86/io_apic.c
> +++ b/xen/arch/x86/io_apic.c
> @@ -1509,6 +1509,8 @@ static void __init setup_ioapic_ids_from_mpc(void)
>  static int __init timer_irq_works(void)
>  {
>      unsigned long t1, flags;
> +    /* Wait for maximum 10 ticks */
> +    unsigned long msec = (10 * 1000) / HZ;

(Minor remark: I don't think this needs to be unsigned long; unsigned
in will suffice.)

> @@ -1517,19 +1519,25 @@ static int __init timer_irq_works(void)
>  
>      local_save_flags(flags);
>      local_irq_enable();
> -    /* Let ten ticks pass... */
> -    mdelay((10 * 1000) / HZ);
> -    local_irq_restore(flags);
>  
> -    /*
> -     * Expect a few ticks at least, to be sure some possible
> -     * glue logic does not lock up after one or two first
> -     * ticks in a non-ExtINT mode.  Also the local APIC
> -     * might have cached one ExtINT interrupt.  Finally, at
> -     * least one tick may be lost due to delays.
> -     */
> -    if ( (ACCESS_ONCE(pit0_ticks) - t1) > 4 )
> +    while ( msec-- )
> +    {
> +        mdelay(1);
> +        /*
> +         * Expect a few ticks at least, to be sure some possible
> +         * glue logic does not lock up after one or two first
> +         * ticks in a non-ExtINT mode.  Also the local APIC
> +         * might have cached one ExtINT interrupt.  Finally, at
> +         * least one tick may be lost due to delays.
> +         */
> +        if ( (ACCESS_ONCE(pit0_ticks) - t1) <= 4 )
> +            continue;
> +
> +        local_irq_restore(flags);
>          return 1;
> +    }
> +
> +    local_irq_restore(flags);
>  
>      return 0;
>  }

While Andrew has a patch pending (not sure why it didn't go in yet)
to simplify local_irq_restore(), and while further it shouldn't really
need using here (local_irq_disable() ought to be fine), I can see that
you don't want to make such an adjustment here. But then I'd prefer if
we got away with just a single instance, adjusting the final return
statement accordingly (easiest would likely be to go from the value of
"msec").

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 14:42:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 14:42:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597452.931683 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeGDK-0003Kf-Ap; Thu, 07 Sep 2023 14:42:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597452.931683; Thu, 07 Sep 2023 14:42:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeGDK-0003KY-8I; Thu, 07 Sep 2023 14:42:34 +0000
Received: by outflank-mailman (input) for mailman id 597452;
 Thu, 07 Sep 2023 14:42:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=+6JM=EX=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeGDJ-0003J9-5T
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 14:42:33 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2070.outbound.protection.outlook.com [40.107.13.70])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c6adad36-4d8c-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 16:42:32 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8209.eurprd04.prod.outlook.com (2603:10a6:20b:3e4::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Thu, 7 Sep
 2023 14:42:02 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6745.034; Thu, 7 Sep 2023
 14:42:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c6adad36-4d8c-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZZrJS4J97EsvkkAQhE6+FKxMYS+7Z0+8IWto9wsir3aPNrDsg2SCJj8xCaaOLypo91MQmjaDIvOWWH2ziPvXx09f36eh4ypw7+6J5LUj9MAhFG+P8SHDXKTUmbeBRjzd8bhrMh+o9LQMHOaycxMa5uogvpthFgzYVCb44KRXNmI9ol4ZSV9AFiX3o0wBRlLJzB/bKO861ic9ecoKHKyOCov7j12bWrEEk6r2JPRnzJ6AqlVZBKqor7B7q43Iyi5rrZpGLfayHPLlbx8E4u9nD6t0cOHpfm4mBRA2if/YUGqA+3W7Hd0zo92aOmR0F2dO/WMzrjXGs/lPJ6HCw0lS3Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=K8MqWQShLtJZF65BGOTIhLMTvQRDxJAdNyLYZVK8wYM=;
 b=U10HBwkkxKKzM1it4BR931RLXKOaaImxpZICcI3l7lh3D5ptQQmqefQD7ma/PL5LURWyyC6FjxdTIHk4VDgqCzy8Hfof6uCFD5fqh9pWmt3CsU4AG+9hQbxKEFpUh20JJaukC04blJe4ZocFCqY4kFl8ibaO6yOpp06Ob36OEk8TGRZwbncS3EFSUAAtkSLQnk4eiPlhRNXZxuA85Akb1/wisVVoWMOn5yxVAcxlloYsw2ZilBSf5++0KXFK+9mTB6UxH2rH75jcTCS3NsdU+Jd0Tmb/qjp28pJzDclf9O9JLKfJEtc2PjzpWgp6hDqFPsvcmPazkt85zci+n3WHqg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=K8MqWQShLtJZF65BGOTIhLMTvQRDxJAdNyLYZVK8wYM=;
 b=pkSTp8Qys1y6hDRbc7qt9WuYDexJnEkUDQsqnbUXRzD3w6G6z4BkM2xuU40Pb4/oSG5mX8FvA9wIFWYdZxleaT+PYd58hF01fS4JF56mh8U64OHVvNmS8JBub1VUBDWUMmIH7smtOdcZShDIESufT4qey994M5JrYFf8HK8tOh9FqeKXPTk1rmQkoa06w2smEThu9sdWCt7tnUggI9FSnhKcdjgaeS6zkV1CwUcB7ehDrobKDYYdBQVaFUWaxZZ6gB0BIjJ7sBvoDrmg9X+VT1bNtHdR4+lvOcT61odxQM3wdWkKqPMnh97B2TflKFvgROrJVZXO3sou2ESOGMASmg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ce6e7abd-40ee-dd9e-b17c-10c39ca0e422@suse.com>
Date: Thu, 7 Sep 2023 16:41:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] coverage: update gcov info for newer versions of gcc
Content-Language: en-US
To: Javi Merino <javi.merino@cloud.com>, Henry Wang <Henry.Wang@arm.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
References: <20230902151351.10325-1-javi.merino@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230902151351.10325-1-javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0152.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a2::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8209:EE_
X-MS-Office365-Filtering-Correlation-Id: 1c96f934-4535-4dc1-e719-08dbafb0990c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YJ7BFMqjRz/jV4H656C4Js1adKzcpdrFC0DB+HOMN5O7S7E6l0oYxblF/63d8hgbNK2FiEeIdv4G2FDY/vq0ABC4WMjY2NaG2BJrBNO34k9VIK78y074aMOKVPrvYiSR8KHuzO43AZZWUSu50w19te/bgWoFGZqwn/sTBL+JauIVZrhmjyWrNzg0/aitw2yrE+M5EWW7T2h6zf5elC43iqUvCcB/VuGsbAvQeTcT+VGCn/d4jyuYQGfdGsH3B5Me8GjiFXTBdgP8Sc/M1hUOqs+fsipFCZjeLt3ArjjaLYcCoT57NrBH/AEtuDTzRt7sqpqJc9uVN8guUkI26ZFH/8hHNBIZ4/+1Zfd90UKx56CFGWKN3hhX8FVHPm5BD+Bpuo+a2irSIBSmMZUj+SsTIA7G08zi301Ov/DUg8c7AX+byoRIasJio08gvLQDkbw1l+X2OkFLQOjm00MtzpEs3/4byKrx05cEgKTtCSt2VBkjdhd25/X/aLYy1V3KGK0o//LR8hSbXru3wJtSg+MXb1+sKlwCpB0j3gDm64hvoxccdAdyOTnL4TZ6WhlDlqqvggnNPvOI7QxW+wT6J2tzO2hsrLbs8yq5qB+KwNU1jN+4vc23kEbctbEEaZ3mOhDhG2b+Xz7M7d7nSRyEmOVSwg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(136003)(396003)(346002)(376002)(39860400002)(451199024)(186009)(1800799009)(5660300002)(6486002)(4326008)(8676002)(8936002)(6506007)(66946007)(316002)(66556008)(54906003)(31686004)(66476007)(41300700001)(478600001)(110136005)(2906002)(6666004)(53546011)(6512007)(26005)(2616005)(83380400001)(38100700002)(31696002)(86362001)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WVd1akhBMDZsZlVCOE9OUG5GcXJUbjJvdlNIdzU2U0RXK0pON0Q5ZkFVSlRS?=
 =?utf-8?B?WklJY2R5NUJ2ckNKK2Fqekp5RHJuY1QzS2ZEK1JDWUZYaW8rS1JvUk1STi9M?=
 =?utf-8?B?ZkIyaVVtZTMraFJkOVZJOFNEQ2Urc0IwdmJJMGM2cDVWOExxc1RPQ2ZCWVIx?=
 =?utf-8?B?cjY0RHE1eXhRNnZ4emNhZDY5SnRBUVJobHpiQ3luRUtFQW83WlJaazBkTkkx?=
 =?utf-8?B?R0xxUnVIaWdLOFZSNE9abEczMWQrOFhCWE1ydmZVRWtKWnhlL1cxcFpMUldi?=
 =?utf-8?B?UDdnR3NiMEVPMjVLV05rL0RKMkZMMzdiRm11K3VkQXNrNU81c0w4MlBaZEMv?=
 =?utf-8?B?NVRqMmIvL3dTZG9DblEzQXpYcUx2N2d0ZFVCSXpXeG04ZnRrTEN1VzFCa096?=
 =?utf-8?B?Y1dDZEdqWWpBR1RQL0RBOEhSN1REbGdjOU9mUVZ2QzNXdkFoRFI1SlBMSHAy?=
 =?utf-8?B?TkZNZUNiaWUwcXQ1bC9tV3RWQzV0YVdIUGFTbWJnaGFHMXkzbklwb0ZyY2l0?=
 =?utf-8?B?eEhxVktGcnRmelhONmVUNWpEN2QyZVZwUVBvbGYwQU5OcExJWEh0UXkydm1P?=
 =?utf-8?B?dXhNNG5WWjZXU3pqSDU1VGlSN0tscStVanZJNzJnQXFJY2Z3YzNpd0JqUnFa?=
 =?utf-8?B?Lzg5NHRNb1pUY2xTd0U4R2hnZm5SdVEvL1N2cFRRd3gvbnJpNjJCOGl3eG5u?=
 =?utf-8?B?NmtCSWhheTFVVEo4RmFhMnJ6ZWNkZEdSQjdDWmlpdkh0MG12Zmc2Q0hlQ043?=
 =?utf-8?B?a1hDM21EaitjbGFldW1SUWMzWUdaVHh3dlZ5ajRjWnBmMUo1Tmp2eGxZclV1?=
 =?utf-8?B?cENWU1pKcU8wOVhva0F2aU9yMWRnQ2V0WTZ5YVhZZEM2QTZnV3gyY1k4eHRJ?=
 =?utf-8?B?cXVuZXNyd1JPb1lQb2t0YkFuK1VMQ3dzMHQ4MFI3c3NpdkJoZndvT2dEUlBw?=
 =?utf-8?B?b0o2Q1hadFUrZFBnMTlKZXFQR2Z2eWpOT2FVQ1laeGdxbmRZUTUvdkQ3c0J1?=
 =?utf-8?B?OExnZGtIQUhCQkpXWklyOXE3R1V5VWpra0x1UC9NQm1QczFpMUNJMVFzQlFU?=
 =?utf-8?B?TjJ1Q0NsQy9BNjFUcnMyUFgzT3RndDRJM2ZURWRIOWJvRDQ0VTJ5a3hRV05q?=
 =?utf-8?B?ZXMvSkNGMkRkcGdMTmh3azFkdFdmTU9hL2p5OG5KRnZZQVh1eFZEc3pJVzNl?=
 =?utf-8?B?K1dXa3JNc1ZBL1YyblNkVXlldjNtbUFTYW0yQ3hxQ05KS0NEbDhTUVc3UHMr?=
 =?utf-8?B?amN0SFRmRnBNNjR3S3E3cklPYnA5Wk1tZ1NjcW5xQWp0ZHVNc0sycGdGd2dF?=
 =?utf-8?B?Mmk0T3V1RU42RlNyenNUaE03T3JjRkVyeFA0OGZuNm1DT2tpSUZOUnI5Tmt3?=
 =?utf-8?B?bDZvUXpXY1FmMklBOS9LejBHNjJKNXcyYk9GcFZPenowYWtyWk1WbDlFY3BN?=
 =?utf-8?B?QStTN2Vaa25ZcndBZmdEa2M1OGFhdlo5YmZldGwzMFZuMUU2ZXpLL3JyTUlF?=
 =?utf-8?B?a0xRNVhkRURIMk9FV0pzZFBEODBNNDRmK2NqbU96TzAwS0xKcnVFOWxwcjVk?=
 =?utf-8?B?OXdwZjI0Yno2TXk5NWEwU21zdkFyZjlxRmJ6aXNhd3YxbG1CejZsV1FJa2d1?=
 =?utf-8?B?bzNPejBkcVJEa2dySHpYQ0VHajdEUm4yK2U2VXNKQWhhVUxqQWpuN1pUYTFy?=
 =?utf-8?B?d0pmeE14OS9vTWZEUnVtVnE2aHlCekJIWGpWc1YwK0s3dGMxeFFhZ3NacHZy?=
 =?utf-8?B?QzUra0NvRk13clhkZFJtdis3ZUljT1ZEUTljc0ovVml2SUhqMEo4bUc4aTds?=
 =?utf-8?B?bm1rTTg2dnE2U25ERlVYQmxNY0RvS29CMGQvZ2dvZmtpditQK0o4WEpzN3ND?=
 =?utf-8?B?Wmh6OTBtZWlnYlptbFJhdWNHRVpVZS93Z0RackRVb1dXN1NBVjQxVWFWQ0t0?=
 =?utf-8?B?VWI2c0ZHV0RsWGNIa1FpK21XUWxQSUZqU1UxYVZTTFRQMCtkTDZPNjg3VndL?=
 =?utf-8?B?dXRXSzhuSFAzdnE0c1A2Rlp5V1A1bXNUV0NjdEV1dzRGdkVXZ29qeDR4bk1o?=
 =?utf-8?B?MXBXUWZuSGVJVFE2bXBLY1V1SFNnNW5qbHlJY1ArMmp5U0FnYzVERVJMTFhV?=
 =?utf-8?Q?jkNfsIwPUPO6AtZAnK+Piqp+w?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1c96f934-4535-4dc1-e719-08dbafb0990c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 14:42:02.0894
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: LsB2IMf18pa7LdHvbI+nGgijddq9CUFRJJpTbgJ2TZFCjPmkMkp6f5zlE1nm56NmXy68Cfn/pSMO/AZsBNpMuw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8209

On 02.09.2023 17:11, Javi Merino wrote:
> --- a/xen/common/coverage/Makefile
> +++ b/xen/common/coverage/Makefile
> @@ -5,7 +5,9 @@ obj-y += $(call cc-ifversion,-lt,0407, \
>  		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
>  		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
>  		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
> -		gcc_5.o, gcc_7.o))))
> +		gcc_5.o, $(call cc-ifversion,-lt,1000, \
> +		gcc_7.o,  $(call cc-ifversion,-lt,1200, \
> +		gcc_10.o, gcc_12.o))))))

This is getting unwieldy, so I think we ought to try to limit the number
of different files we have. Already gcc_4_9.c and gcc_7.c specify the
same GCOV_COUNTERS and differ only in the version checks (which could be
combined). Therefore ...

> --- /dev/null
> +++ b/xen/common/coverage/gcc_10.c
> @@ -0,0 +1,31 @@
> +/*
> + *  This code provides functions to handle gcc's profiling data format
> + *  introduced with gcc 10.
> + *
> + *  For a better understanding, refer to gcc source:
> + *  gcc/gcov-io.h
> + *  libgcc/libgcov.c
> + *
> + *  Uses gcc-internal data definitions.
> + */
> +
> +#include "gcov.h"
> +
> +#if GCC_VERSION < 100000 || GCC_VERSION > 120000
> +#error "Wrong version of GCC used to compile gcov"
> +#endif
> +
> +#define GCOV_COUNTERS 8
> +#define GCOV_UNIT_SIZE 1
> +
> +#include "gcc_4_7.c"

... this could simply re-use gcc_4_7.c directly, with just the version
check there suitably tweaked.

> --- a/xen/common/coverage/gcc_4_7.c
> +++ b/xen/common/coverage/gcc_4_7.c
> @@ -27,6 +27,7 @@
>  #  error "Wrong version of GCC used to compile gcov"
>  # endif
>  #define GCOV_COUNTERS 8
> +#define GCOV_UNIT_SIZE 1
>  #endif

If further this became a separate #ifdef, ...

> --- a/xen/common/coverage/gcc_4_9.c
> +++ b/xen/common/coverage/gcc_4_9.c
> @@ -19,6 +19,7 @@
>  #endif
>  
>  #define GCOV_COUNTERS 9
> +#define GCOV_UNIT_SIZE 1
>  
>  #include "gcc_4_7.c"
>  
> --- a/xen/common/coverage/gcc_5.c
> +++ b/xen/common/coverage/gcc_5.c
> @@ -19,6 +19,7 @@
>  #endif
>  
>  #define GCOV_COUNTERS 10
> +#define GCOV_UNIT_SIZE 1
>  
>  #include "gcc_4_7.c"
>  

... touching these two files could be avoided altogether.

Henry - afaict this was submitted after the feature submission deadline,
so you may want to consider giving it an exception.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 15:03:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 15:03:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597460.931694 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeGXd-0007m5-Sc; Thu, 07 Sep 2023 15:03:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597460.931694; Thu, 07 Sep 2023 15:03:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeGXd-0007ly-PI; Thu, 07 Sep 2023 15:03:33 +0000
Received: by outflank-mailman (input) for mailman id 597460;
 Thu, 07 Sep 2023 15:03:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tY2=EX=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qeGXc-0007ls-VB
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 15:03:32 +0000
Received: from mail-lj1-x232.google.com (mail-lj1-x232.google.com
 [2a00:1450:4864:20::232])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b52febb6-4d8f-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 17:03:31 +0200 (CEST)
Received: by mail-lj1-x232.google.com with SMTP id
 38308e7fff4ca-2b703a0453fso18225831fa.3
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 08:03:31 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 x19-20020a05651c105300b002b9b55fefe0sm3879658ljm.131.2023.09.07.08.03.28
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 08:03:29 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b52febb6-4d8f-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694099010; x=1694703810; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=XLtI9Rlf4ItgEYKGf7SkFDtMh8PUunpWlsS4ryoRTws=;
        b=Bt1IgzoCk4I8Uhuw64A9AhzaKFEC+UctyDKe38Mb8g0ewNdZp+oyTELd+J6nvdWxJy
         ggtV27NexJNuVJ9DBsS3l3B2qOmtWqvZE+FRFevmGfT0mgh+4kFdG4SDzBOKndAgaZ7M
         654FslEE5ytz2nht5vCUr/nVeyB1awBAEqqnSjufzW6ErA3DL0tCOLJF9I3F542Pf/3J
         kzroShVLt+q4xkxR9FjNKDAPtwZ1CQZzmLqc+DCdPAfqHDxC/Lf4jNQqb7spID1uuuCz
         V5ZA4SjN7S4fYS3mNOj79o5x9wuDmhuNyb8Y64rvwtnjhSr2pooG7rS9wjJ0BuuSRHbb
         Y8cw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694099010; x=1694703810;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=XLtI9Rlf4ItgEYKGf7SkFDtMh8PUunpWlsS4ryoRTws=;
        b=SHNc/tKhUh2U/TSmLCX9T5D+eSCa+RWVc0WoR6VvBRSsgwFW/+JZdJEcceAo/S62Kv
         f8d85SDeBArSCwlLpDnz3YOb/DlZ7DG5U/lcw+Qf1Sv4pfPyXeYt9wGOs9m31YXwo+Sk
         krRP4Fymo1nqzKP9Jdpga1bP2ucrguwBoq7UWvrSK0vTqgiZk+CrCrIee82ui6vxROUK
         g8yt7M4TLG+kifUSM9yZyz2JJ821e+xhxj+T4F0j0Ph6w9xTaqts6oy3DDQuFWfCCQeK
         O4MkCTBfjEJSFB7t0MDx3j8+CTDKeGzEo7JIX84cZwOGe+JBIf/MR/gcEziB7Ztk/iOV
         24+Q==
X-Gm-Message-State: AOJu0Ywlvz8BPdl7WjgOdtE4G4meNi1tzA7nsJcMq2VLYsXd4MBmFKeH
	2mn023dVDZB1xNzVaw0nHGbn20Ffs7Q=
X-Google-Smtp-Source: AGHT+IFaIHJc8dpTkDRwDakfX9J8A4W/UrV5YBAxjxn0OYwNzP292Eh9NzHDRrM8+j/8lrxml4aSUA==
X-Received: by 2002:a2e:9bd9:0:b0:2b6:bb21:8d74 with SMTP id w25-20020a2e9bd9000000b002b6bb218d74mr5242554ljj.1.1694099010072;
        Thu, 07 Sep 2023 08:03:30 -0700 (PDT)
Message-ID: <4b407c9c1ac8b3e0c1952782c7c2fe72781732d2.camel@gmail.com>
Subject: Re: [PATCH v7 0/2] xen/riscv: introduce identity mapping
From: Oleksii <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org, Bob Eshleman <bobbyeshleman@gmail.com>, 
	Alistair Francis <alistair.francis@wdc.com>
Cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>,  Connor Davis <connojdavis@gmail.com>
Date: Thu, 07 Sep 2023 18:03:28 +0300
In-Reply-To: <cover.1691507564.git.oleksii.kurochko@gmail.com>
References: <cover.1691507564.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

Hello Bobby and Alistair,

Could you kindly take a moment to examine this series of patches?
Your input would be highly valued.

Thanks in advance.

~ Oleksii

On Tue, 2023-08-08 at 18:14 +0300, Oleksii Kurochko wrote:
> The patch series introduces things necessary to implement identity
> mapping:
> =C2=A0 1. Make identity mapping for the entire Xen.
> =C2=A0 2. Enable MMU.
> =C2=A0 3. Jump to the virtual address world
> =C2=A0 4. Remove identity mapping.
>=20
> Also current patch series introduces the calculation of physical
> offset before
> MMU is enabled as access to physical offset will be calculated wrong
> after
> MMU will be enabled because access to phys_off variable is PC-
> relative and
> in the case when linker address !=3D load address, it will cause MMU
> fault.
>=20
> The reason for this patch series can be found here:
> https://lore.kernel.org/xen-devel/4e336121-fc0c-b007-bf7b-430352563d55@ci=
trix.com/
>=20
> ---
> Changes in V7:
> =C2=A0- use srli instruction to be consistent with slli instruction in
> turn_on_mmu()
> ---
> Changes in V6:
> =C2=A0 - Update calc_phys_offset() after rebase.
> =C2=A0 - Refactor turn_on_mmu() and a way how an argument of turn_on_mmu(=
)
> is
> =C2=A0=C2=A0=C2=A0 calculated.
> ---
> Changes in V5:
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- update the algo of iden=
tity mapping removing.
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- introduce IDENT_AREA_SI=
ZE.
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- introduce turn_on_mmu()=
 function to enable and switch from
> 1:1 mapping.
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- fix typo in PGTBL_INITI=
AL_COUNT define.
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- update the comment abov=
e PGTBL_INITIAL_COUNT.
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- update prototype of cal=
c_phys_offset(). now it returns
> phys_offset.
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- declare phys_offset as =
static.
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- save returned value of =
calc_phys_offset to register s2.
> ---
> Changes in V4:
> =C2=A0 - drop patch=C2=A0=C2=A0[PATCH v3 1/3] xen/riscv: add SPDX tag to =
config.h as
> it was
> =C2=A0=C2=A0=C2=A0 merged to staging
> =C2=A0 - remove definition of ARRAY_SIZE and ROUNDUP as <xen/macors.h> wa=
s
> introduced where these macros are located now.
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- update definition of PG=
TBL_INITIAL_COUNT
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- update the commit messa=
ge for patch 'xen/riscv: introduce
> identity mapping'
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0- update the comments in =
head.S
> =C2=A0 - update the algo of identity mapping removing=20
> ---
> Changes in V3:
> =C2=A0- Update the patch series message.
> =C2=A0- The following patches were merged to staging so droped from the
> patch series:
> =C2=A0=C2=A0 * xen/riscv: add .sbss section to .bss
> =C2=A0=C2=A0 * xen/riscv: introduce reset_stack() function
> =C2=A0=C2=A0 * xen/riscv: move extern of cpu0_boot_stack to header
> =C2=A0=C2=A0 * xen/riscv: add SPDX tags
> =C2=A0- move save/restore of a0/a1 registers from patch 4 to patch 2 (
> numbers are
> =C2=A0=C2=A0 from the previous patch series version )
> =C2=A0- add SPDX tag in config.h
> =C2=A0- update definition of PGTBL_INITIAL_COUNT taking into account
> identity mapping.
> =C2=A0- refactor remove_identity_mapping() function.
> =C2=A0- add explanatory comments in xen.lds.S and mm.c.
> ---
> Changes in V2:
> =C2=A0- update the patch series message.
> =C2=A0- drop patches from the previous version of the patch series:
> =C2=A0=C2=A0 * xen/riscv: add __ASSEMBLY__ guards". ( merged )
> =C2=A0=C2=A0 * xen/riscv: make sure that identity mapping isn't bigger th=
en
> page size
> =C2=A0=C2=A0=C2=A0=C2=A0 ( entire Xen is 1:1 mapped so there is no need f=
or the checks
> from the patch )
> =C2=A0- add .sbss.* and put it befor .bss* .
> =C2=A0- move out reset_stack() to .text section.
> =C2=A0- add '__ro_after_init' for phys_offset variable.
> =C2=A0- add '__init' for calc_phys_offset().
> =C2=A0- declaring variable phys_off as non static as it will be used in
> head.S.
> =C2=A0- update definition of PGTBL_INITIAL_COUNT and the comment above.
> =C2=A0- code style fixes.
> =C2=A0- remove id_addrs array becase entire Xen is mapped.
> =C2=A0- reverse condition for cycle inside remove_identity_mapping().
> =C2=A0- fix page table walk in remove_identity_mapping().
> =C2=A0- save hart_id and dtb_addr before call MMU related C functions
> =C2=A0- use phys_offset variable instead of doing calcultations to get
> phys offset
> =C2=A0=C2=A0 in head.S file. ( it can be easily done as entire Xen is 1:1
> mapped now )
> =C2=A0- declare enable_muu() as __init.
> =C2=A0- Update SPDX tags.
> =C2=A0- Add Review-By/Suggested-By for some patches.
> =C2=A0- code style fixes.
>=20
> Oleksii Kurochko (2):
> =C2=A0 xen/riscv: introduce function for physical offset calculation
> =C2=A0 xen/riscv: introduce identity mapping
>=20
> =C2=A0xen/arch/riscv/include/asm/acpi.h=C2=A0=C2=A0 |=C2=A0=C2=A0 6 ++
> =C2=A0xen/arch/riscv/include/asm/config.h |=C2=A0=C2=A0 2 +
> =C2=A0xen/arch/riscv/include/asm/mm.h=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0=C2=
=A0 7 +-
> =C2=A0xen/arch/riscv/mm.c=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 | 109 +++++++++++++++++---=
------
> --
> =C2=A0xen/arch/riscv/riscv64/head.S=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |=
=C2=A0 44 +++++++++++
> =C2=A0xen/arch/riscv/setup.c=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0 14 +---
> =C2=A0xen/arch/riscv/xen.lds.S=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 |=C2=A0 11 +++
> =C2=A07 files changed, 136 insertions(+), 57 deletions(-)
> =C2=A0create mode 100644 xen/arch/riscv/include/asm/acpi.h
>=20



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 15:04:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 15:04:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597465.931703 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeGYX-0008Va-4a; Thu, 07 Sep 2023 15:04:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597465.931703; Thu, 07 Sep 2023 15:04:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeGYX-0008VT-1e; Thu, 07 Sep 2023 15:04:29 +0000
Received: by outflank-mailman (input) for mailman id 597465;
 Thu, 07 Sep 2023 15:04:28 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tY2=EX=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qeGYW-0008U0-2K
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 15:04:28 +0000
Received: from mail-lf1-x133.google.com (mail-lf1-x133.google.com
 [2a00:1450:4864:20::133])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d6b354ca-4d8f-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 17:04:27 +0200 (CEST)
Received: by mail-lf1-x133.google.com with SMTP id
 2adb3069b0e04-50098cc8967so1699183e87.1
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 08:04:27 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 y20-20020a197514000000b004fe4811d382sm3198696lfe.85.2023.09.07.08.04.25
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 08:04:26 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d6b354ca-4d8f-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694099067; x=1694703867; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=PsGeEBZD5fkpPxEuJMHrpoyUlRrVKLXJy2EDOlpQayQ=;
        b=aXpdvyncDxvQIOttBippaXtDbZ+lQbkezCZ0nAwgx68MuZDFJoaNPaenchdKnqlAnE
         Wp66K4hutZFF/ccbVVkYOQE8jd32sY4Y29DEZPXOPiRqArlH2iRgLMR3SGxC556htZx4
         ww8Qcpn1A+63Lgvdzl1M+Ybf/w+GK7agCs4rOakR+W7vuqbHH5fJsOzO+8SPYqISEK8V
         iHj3mPF1qsg9BcmwW/Q7qewVEA4nM/zBv21zfTvQruPOuiAFP9xZ06r+ba5IbYR5lzuG
         WoXua6qv5tc1dGccCH34lYJ5wbBYLn9Lw9P3E80t1U62d8gRRFAjT0NYiOv4BbZB9/mw
         G64w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694099067; x=1694703867;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=PsGeEBZD5fkpPxEuJMHrpoyUlRrVKLXJy2EDOlpQayQ=;
        b=Q/63yI8wQUKs4T2ASpvXwuDYcdK61bZ09DyavvsHzJ7jwHlXgtGl2+ZXBtgjPGI7BU
         0rdkCfIZ4J0+GhunaQmcGRNUrtcKMslyvce3oiQPwYQ5MpGTPSxxLP6lgA+l2q9ONFfD
         MLUv7INEZpHoBUJnW1PxhFA9HeXvbe8a+IYoo9UuETtpyHR6+LeMPyjsgBZJ4SikeZIF
         IOuOFBixLligyPk+IPZ2qufiq2sIaGKsACT1D/p6LPGYwVhlm4o/5vmcJsHVdVqFbezU
         TzCMWR2RV0MI35s/zxLXOlZftHMjM1TMfFHiEfP5vll3UiMHx0SozP32emeOke56bZNJ
         7IYQ==
X-Gm-Message-State: AOJu0Yy+QNciEnYUdln+ocIXiA6D7lnDmFUF5Nm/Rj8nfJM5XoaFsa4Z
	nNxLSo1N8A6YAiSU9o4zTIs=
X-Google-Smtp-Source: AGHT+IHNhzwfOxZxBcujRNIWUv5tnC/NYTOz4+OTzaxpf7cQnhWl6EtWoEcQacJuhQK/bC1cJvYjrg==
X-Received: by 2002:ac2:51ab:0:b0:4ff:8f1b:8ccf with SMTP id f11-20020ac251ab000000b004ff8f1b8ccfmr4401719lfk.21.1694099066676;
        Thu, 07 Sep 2023 08:04:26 -0700 (PDT)
Message-ID: <5ae173e2f1e99de589b9d8e3ff93439f03c3d933.camel@gmail.com>
Subject: Re: [PATCH v6 2/2] xen: move arm/include/asm/vm_event.h to
 asm-generic
From: Oleksii <oleksii.kurochko@gmail.com>
To: Tamas K Lengyel <tamas@tklengyel.com>
Cc: Jan Beulich <jbeulich@suse.com>, Anthony PERARD
 <anthony.perard@citrix.com>,  Stefano Stabellini <sstabellini@kernel.org>,
 Julien Grall <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
  Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Wei
 Liu <wl@xen.org>,  xen-devel@lists.xenproject.org
Date: Thu, 07 Sep 2023 18:04:25 +0300
In-Reply-To: <CABfawhk00MNJ4nyzfDyoJq9w=3TyHzwDXOosXrOD-n-nrZRnig@mail.gmail.com>
References: <cover.1694078544.git.oleksii.kurochko@gmail.com>
	 <47e12756edfefdb5ff1112ae6b78ae95baadbbef.1694078544.git.oleksii.kurochko@gmail.com>
	 <687a1039-5f8d-bee2-50ce-1fa80ef31f19@suse.com>
	 <dd922527db03b445d0a2de6113a92ccc1dbb60f1.camel@gmail.com>
	 <CABfawhk00MNJ4nyzfDyoJq9w=3TyHzwDXOosXrOD-n-nrZRnig@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Thu, 2023-09-07 at 10:53 -0400, Tamas K Lengyel wrote:
> On Thu, Sep 7, 2023 at 9:46=E2=80=AFAM Oleksii <oleksii.kurochko@gmail.co=
m>
> wrote:
> >=20
> > On Thu, 2023-09-07 at 11:59 +0200, Jan Beulich wrote:
> > > On 07.09.2023 11:32, Oleksii Kurochko wrote:
> > > > --- /dev/null
> > > > +++ b/xen/include/asm-generic/vm_event.h
> > > > @@ -0,0 +1,55 @@
> > > > +/* SPDX-License-Identifier:=C2=A0 GPL-2.0-only */
> > > > +/*
> > > > + * vm_event.h: stubs for architecture specific vm_event
> > > > handling
> > > > routines
> > > > + *
> > > > + * Copyright (c) 2015 Tamas K Lengyel (tamas@tklengyel.com)
> > >=20
> > > Tamas is the maintainer of these files (no matter where they
> > > live),
> > > so
> > > please make sure to Cc him in order to get his ack.
> > Thanks. I'll add him to CC.
>=20
> Sent ack on v5 of the patch.
Thank you.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 15:16:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 15:16:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597479.931734 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeGju-0003et-O5; Thu, 07 Sep 2023 15:16:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597479.931734; Thu, 07 Sep 2023 15:16:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeGju-0003em-LH; Thu, 07 Sep 2023 15:16:14 +0000
Received: by outflank-mailman (input) for mailman id 597479;
 Thu, 07 Sep 2023 15:16:14 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tY2=EX=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qeGju-0003AH-6Z
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 15:16:14 +0000
Received: from mail-lj1-x22f.google.com (mail-lj1-x22f.google.com
 [2a00:1450:4864:20::22f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 786b24cb-4d91-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 17:16:08 +0200 (CEST)
Received: by mail-lj1-x22f.google.com with SMTP id
 38308e7fff4ca-2be5e2a3c86so26308231fa.0
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 08:16:08 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 x2-20020a2e8802000000b002bbacc6c523sm3944055ljh.49.2023.09.07.08.16.02
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 08:16:06 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 786b24cb-4d91-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694099767; x=1694704567; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=yiHIyQ5Tr9cx6A1jdYsDd7Gaoqb8wHX3d7uubm9fFDQ=;
        b=KFeW2uYhkjApCMPi28MIqgJ80rw6iXCsTqBU0A+i2N8yHIIRPoaUFar8gGNErlVPoZ
         qwqdAzWYj2w7ufVUygHrEwHMbl+RTidIK1d7GBEaXNymuO8x3qPSezUrGaHkhmo1kDy4
         sGeIxyNeYiv3e5dvMq78s3pknty2FOpstDpOeXgLvl4nBxkqBtdUgNga9fh6L3q4Tua8
         WWX7Pb14zXBnhT6KVll2G34B8ZgTPtKIosBUqX1zDypMJgYZLkv9SdUrcexLY/y/e8X6
         wiiOenqwUfIEo9muqXnL3ZhIqp+oKNhf8Zvua2l3QX/a9p9SXicijRVl1DXff/cbbpm0
         uS5g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694099767; x=1694704567;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=yiHIyQ5Tr9cx6A1jdYsDd7Gaoqb8wHX3d7uubm9fFDQ=;
        b=IKO71ld/99dFdXW04ru6a3nZbIqZEqoGzROtm7Np4II0+uouCTJP6PDUIT3y3ZC/DE
         UOXPKvDgFzC0/NkOpnDMDykzsf18OIUbpTcJr44B12abWLMBvgzjuZN1jIQjiO7udCoa
         g9LsXMIoilaL8BZfMIttdpl6IrrWk2RlxLDeViCQfdUbe/oXlD5nvc9lBKDL0xDAK+13
         QR+S+nbHpVeO9xfjAROlfLgtos+uxbgE8V6rQfUTNqzjEsPqpO70A7Ll84nWAToasyn0
         6PFzeG6Pk5eRWMO6f4S17IYeaSPt+65um10xyK7mXrE8DMZRthnAkNUi3tMT75cIN9JE
         WqHg==
X-Gm-Message-State: AOJu0Yz0cs86mfRU0IYZRlMI1S9594+s8AfdF9rjB+3m2iFJI6/ZESMM
	vhljrPhaTXMU/nV5d85k+yryMCNswgM=
X-Google-Smtp-Source: AGHT+IEB1c/IgDOlFuASSTXfyMPbM7kDmoGNZk6jbUQJeDMm2P23+WP5DGc2hk0+xdVQM7uDHioA7A==
X-Received: by 2002:a2e:9d90:0:b0:2bc:e470:1401 with SMTP id c16-20020a2e9d90000000b002bce4701401mr1224763ljj.24.1694099767105;
        Thu, 07 Sep 2023 08:16:07 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Anthony PERARD <anthony.perard@citrix.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v7 0/2] introduce stub directory to storing empty/stub headers
Date: Thu,  7 Sep 2023 18:15:58 +0300
Message-ID: <cover.1694097564.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

A lot of empty/stub headers should be introduced during the early steps of adding
support of new architecture.

An example can be found here:
1. https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kurochko@gmail.com/
2. https://lore.kernel.org/xen-devel/a92f99e8f697da99d77bfde562a549dbef3760ce.1692816595.git.sanastasio@raptorengineering.com/

As part of the patch series, asm/vm_event.h was moved to the stubs directory because
It is the same for ARM, PPC, and RISC-V.
---
Changes in V7:
- update warning message in Makefile.asm-generic
- add Reviewed-by: Anthony PERARD <anthony.perard@citrix.com> for patch 1
- add Acked-by: Jan Beulich <jbeulich@suse.com> for patch 1
- update header guards in asm-generic/vm_event.h.
- add Acked-by: Tamas K Lengyel <tamas@tklengyel.com> for patch 2
---
Changes in V6:
 - introduce $(asm-generic) macro in Kbuild.include.
 - move "asm-generic" after the rule "__distclean".
 - update the commit message.
---
Changes in V5:
- Update SPDX license.
- Remove code related to UML in Makefile.asm-generic.
- Include $(src)/Makefile instead of $(kbuild-file).
- Update comment message in Makefile.asm-generic.
- Update .gitignore.
- Update path to generated headers in CFLAGS.
- Use the latest version of Linux's Makefile.asm-generic.
- Introduce asm-generic's vm_event.h.
- Switch ARM to use asm-generic/vm_event.h.
---
Changes in V4:
 - add asm-generic support
 - update path of vm_event.h from include/asm-generic/asm to include/asm-generic
---
Changes in V3:
 - add Acked-by: Stefano Stabellini <sstabellini@kernel.org> for "xen: move arm/include/asm/vm_event.h to asm-generic"
 - update SPDX tag.
 - move asm/vm_event.h to asm-generic.
 - rename stubs dir to asm-generic.

---
Changes in V2:
 - change public/domctl.h to public/vm_event.h.
 - update commit message of [PATCH v2 2/2] xen: move arm/include/asm/vm_event.h to stubs

Oleksii Kurochko (2):
  xen: asm-generic support
  xen: move arm/include/asm/vm_event.h to asm-generic

 .gitignore                          |  1 +
 xen/Makefile                        |  9 +++-
 xen/arch/arm/include/asm/Makefile   |  2 +
 xen/arch/arm/include/asm/vm_event.h | 66 -----------------------------
 xen/include/asm-generic/vm_event.h  | 55 ++++++++++++++++++++++++
 xen/scripts/Kbuild.include          |  6 +++
 xen/scripts/Makefile.asm-generic    | 53 +++++++++++++++++++++++
 7 files changed, 125 insertions(+), 67 deletions(-)
 create mode 100644 xen/arch/arm/include/asm/Makefile
 delete mode 100644 xen/arch/arm/include/asm/vm_event.h
 create mode 100644 xen/include/asm-generic/vm_event.h
 create mode 100644 xen/scripts/Makefile.asm-generic

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 15:16:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 15:16:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597477.931713 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeGjs-0003Aa-5S; Thu, 07 Sep 2023 15:16:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597477.931713; Thu, 07 Sep 2023 15:16:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeGjs-0003AT-2r; Thu, 07 Sep 2023 15:16:12 +0000
Received: by outflank-mailman (input) for mailman id 597477;
 Thu, 07 Sep 2023 15:16:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tY2=EX=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qeGjq-0003AI-8S
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 15:16:10 +0000
Received: from mail-lj1-x22a.google.com (mail-lj1-x22a.google.com
 [2a00:1450:4864:20::22a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7917e284-4d91-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 17:16:09 +0200 (CEST)
Received: by mail-lj1-x22a.google.com with SMTP id
 38308e7fff4ca-2bd0a5a5abbso19221871fa.0
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 08:16:09 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 x2-20020a2e8802000000b002bbacc6c523sm3944055ljh.49.2023.09.07.08.16.07
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 08:16:07 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7917e284-4d91-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694099768; x=1694704568; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=M3ZByGEDZdELqUya7GUTY9i8XXFs5HblR9GE9jzOH8U=;
        b=Ctg7cmtn95ahFmClhozFyA8QflGE7xQO4gPLDluo2emsZYkGqZ/JM03yByfKvOurOq
         tH3RxQ6bnigka5TrUzLQ/UE442XG5s0QndSdP0zaIBb/1XiLAIakjzaSHh92w1CBDZfw
         Ecs9Xnd5fyiCVi0CYVGxWW2VRvXVd7wkekiPtqmUSFlhk1eYVeOl1LBwn8MQPlt7MUEI
         zfG5n+9F19S51ms5abzOandN+B/fiUjxNIo8eRFDfIRaZbn+MfvHAJGw3yX5aYupdoeJ
         AHMkFF59V5MN5BJYRvxnjhvcWMI4U9UTjGjTYJoE+/4DQiAMBJ2E+rgCLb9KfJJR0stT
         8Iwg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694099768; x=1694704568;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=M3ZByGEDZdELqUya7GUTY9i8XXFs5HblR9GE9jzOH8U=;
        b=FJCaI/EM7KZIN+7qNmnLvOq8yRIbD86BcCev3yIMEhqI3RetMKMAzZVMXQ7J1p82TQ
         UH3umpKmoK8VaWA6mbQmoRSt7YVIHY+WMYIMx2fVqQlpKd3OX4EaJhhSfIPcyTL+mtfP
         HBZ/Md0m+d7dJO9R2Y6pHuqireqDnH4412ncm0ERV7HGhaw7yCCivd0Yug0uWnzRZJgA
         urqD2i4X9Mqdjtzf41uVges360kr0kWhUYP8cS+FKJob2jpoQh+fL9yqPUPa2l5KukOt
         ZmICbX+cq+Nq2xldRfWjZ9Ct/DcOUuOPBdyJC/p1CB9X2rp20mrP9PPb16DXBFFG2Bsb
         cJJg==
X-Gm-Message-State: AOJu0YxczxMMwZThlCMtbDFWXXeqZjlTO8HcHMvlwIBil2dSc+ABzPzi
	y1yAkUTFjqv7zCfnWetTNzp6hBi6XtM=
X-Google-Smtp-Source: AGHT+IH949d4Rp06C6NCIRxZt5PXbHL527ct0RML399iu/rDVldau5QZJCfeJVLYVH8Nkqg7Npn4oQ==
X-Received: by 2002:a2e:7a1a:0:b0:2bc:b0ae:a9e5 with SMTP id v26-20020a2e7a1a000000b002bcb0aea9e5mr5223726ljc.42.1694099768353;
        Thu, 07 Sep 2023 08:16:08 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Anthony PERARD <anthony.perard@citrix.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v7 1/2] xen: asm-generic support
Date: Thu,  7 Sep 2023 18:15:59 +0300
Message-ID: <d689a536cea546831fb7c73e783fc7f485f8d788.1694097564.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694097564.git.oleksii.kurochko@gmail.com>
References: <cover.1694097564.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Some headers are shared between individual architectures or are empty.
To avoid duplication of these headers, asm-generic is introduced.

With the following patch, an architecture uses generic headers
mentioned in the file arch/$(ARCH)/include/asm/Makefile

To use a generic header is needed to add to
arch/$(ARCH)/include/asm/Makefile :
	generic-y += <name-of-header-file.h>

For each mentioned header in arch/$(ARCH)/include/asm/Makefile,
the necessary wrapper in arch/$(ARCH)/include/generated/asm will be
generated.

As the base Makefile.asm-generic from Linux kernel was taken.
( 06c2afb862f9da8 "Linux 6.5-rc1" ).

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
Changes in V7:
 - update warning message in Makefile.asm-generic
 - add Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
 - add Acked-by: Jan Beulich <jbeulich@suse.com>
---
Changes in V6:
 - introduce $(asm-generic) macro in Kbuild.include.
 - move "asm-generic" after the rule "__distclean".
---
Changes in V5:
 - Update the commit message
 - Update SPDX license in Makefile.
 - Remove code related to UML
 - Include $(src)/Makefile instead of $(kbuild-file) 
 - Update comment message in Makefile.asm-generic
 - Update .gitignore
 - Update path to generated headers in CFLAGS.
 - Use the latest version of Linux's Makefile.asm-generic
---
Changes in V4:
 - introduce asm-generic support
 - update commit message
---
Changes in V3:
 - Rename stubs dir to asm-generic
---
Changes in V2:
 - Nothing changed.
---
 .gitignore                       |  1 +
 xen/Makefile                     |  9 +++++-
 xen/scripts/Kbuild.include       |  6 ++++
 xen/scripts/Makefile.asm-generic | 53 ++++++++++++++++++++++++++++++++
 4 files changed, 68 insertions(+), 1 deletion(-)
 create mode 100644 xen/scripts/Makefile.asm-generic

diff --git a/.gitignore b/.gitignore
index 50273adb8d..287166f8fc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -267,6 +267,7 @@ xen/arch/*/efi/efi.h
 xen/arch/*/efi/pe.c
 xen/arch/*/efi/runtime.c
 xen/arch/*/include/asm/asm-offsets.h
+xen/arch/*/include/generated
 xen/build-dir-cppcheck/
 xen/common/config_data.S
 xen/common/config.gz
diff --git a/xen/Makefile b/xen/Makefile
index f57e5a596c..2dc5e3526d 100644
--- a/xen/Makefile
+++ b/xen/Makefile
@@ -438,6 +438,7 @@ ifdef building_out_of_srctree
 endif
 CFLAGS += -I$(srctree)/include
 CFLAGS += -I$(srctree)/arch/$(SRCARCH)/include
+CFLAGS += -I$(objtree)/arch/$(SRCARCH)/include/generated
 
 # Note that link order matters!
 ALL_OBJS-y                := common/built_in.o
@@ -580,16 +581,22 @@ _clean:
 	rm -f $(TARGET).efi $(TARGET).efi.map $(TARGET).efi.elf $(TARGET).efi.stripped
 	rm -f asm-offsets.s arch/*/include/asm/asm-offsets.h
 	rm -f .banner .allconfig.tmp include/xen/compile.h
+	rm -rf $(objtree)/arch/*/include/generated
 
 .PHONY: _distclean
 _distclean: clean
 	rm -f tags TAGS cscope.files cscope.in.out cscope.out cscope.po.out GTAGS GPATH GRTAGS GSYMS .config source
 
+# Support for using generic headers in asm-generic
+PHONY += asm-generic
+asm-generic:
+	$(Q)$(MAKE) $(asm-generic)=arch/$(SRCARCH)/include/generated/asm
+
 $(TARGET).gz: $(TARGET)
 	gzip -n -f -9 < $< > $@.new
 	mv $@.new $@
 
-$(TARGET): outputmakefile FORCE
+$(TARGET): outputmakefile asm-generic FORCE
 	$(Q)$(MAKE) $(build)=tools
 	$(Q)$(MAKE) $(build)=. include/xen/compile.h
 	$(Q)$(MAKE) $(build)=include all
diff --git a/xen/scripts/Kbuild.include b/xen/scripts/Kbuild.include
index 785a32c32e..c2bd8498e1 100644
--- a/xen/scripts/Kbuild.include
+++ b/xen/scripts/Kbuild.include
@@ -91,6 +91,12 @@ cc-ifversion = $(shell [ $(CONFIG_GCC_VERSION)0 $(1) $(2)000 ] && echo $(3) || e
 
 clang-ifversion = $(shell [ $(CONFIG_CLANG_VERSION)0 $(1) $(2)000 ] && echo $(3) || echo $(4))
 
+###
+# Shorthand for $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.asm-generic obj
+# Usage:
+# $(Q)$(MAKE) $(asm-generic)=dir
+asm-generic := -f $(srctree)/scripts/Makefile.asm-generic obj
+
 ###
 # Shorthand for $(Q)$(MAKE) -f scripts/Makefile.build obj=
 # Usage:
diff --git a/xen/scripts/Makefile.asm-generic b/xen/scripts/Makefile.asm-generic
new file mode 100644
index 0000000000..b0d356bfa3
--- /dev/null
+++ b/xen/scripts/Makefile.asm-generic
@@ -0,0 +1,53 @@
+# SPDX-License-Identifier: GPL-2.0-only
+# include/asm-generic contains a lot of files that are used
+# verbatim by several architectures.
+#
+# This Makefile reads the file arch/$(SRCARCH)/include/asm/Makefile
+# and for each file listed in this file with generic-y creates
+# a small wrapper file in arch/$(SRCARCH)/include/generated/asm.
+
+PHONY := all
+all:
+
+src := $(subst /generated,,$(obj))
+
+include $(srctree)/scripts/Kbuild.include
+-include $(src)/Makefile
+
+redundant := $(filter $(mandatory-y) $(generated-y), $(generic-y))
+redundant += $(foreach f, $(generic-y), $(if $(wildcard $(srctree)/$(src)/$(f)),$(f)))
+redundant := $(sort $(redundant))
+$(if $(redundant),\
+	$(warning redundant generic-y found in $(src)/Makefile: $(redundant)))
+
+# If arch does not implement mandatory headers, fallback to asm-generic ones.
+mandatory-y := $(filter-out $(generated-y), $(mandatory-y))
+generic-y   += $(foreach f, $(mandatory-y), $(if $(wildcard $(srctree)/$(src)/$(f)),,$(f)))
+
+generic-y   := $(addprefix $(obj)/, $(generic-y))
+generated-y := $(addprefix $(obj)/, $(generated-y))
+
+# Remove stale wrappers when the corresponding files are removed from generic-y
+old-headers := $(wildcard $(obj)/*.h)
+unwanted    := $(filter-out $(generic-y) $(generated-y),$(old-headers))
+
+quiet_cmd_wrap = WRAP    $@
+      cmd_wrap = echo "\#include <asm-generic/$*.h>" > $@
+
+quiet_cmd_remove = REMOVE  $(unwanted)
+      cmd_remove = rm -f $(unwanted)
+
+all: $(generic-y)
+	$(if $(unwanted),$(call cmd,remove))
+	@:
+
+$(obj)/%.h:
+	$(call cmd,wrap)
+
+# Create output directory. Skip it if at least one old header exists
+# since we know the output directory already exists.
+ifeq ($(old-headers),)
+$(shell mkdir -p $(obj))
+endif
+
+.PHONY: $(PHONY)
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 15:16:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 15:16:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597478.931724 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeGjt-0003Pd-Gp; Thu, 07 Sep 2023 15:16:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597478.931724; Thu, 07 Sep 2023 15:16:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeGjt-0003PW-Ds; Thu, 07 Sep 2023 15:16:13 +0000
Received: by outflank-mailman (input) for mailman id 597478;
 Thu, 07 Sep 2023 15:16:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3tY2=EX=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qeGjr-0003AI-Dq
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 15:16:11 +0000
Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com
 [2a00:1450:4864:20::231])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 79c58c85-4d91-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 17:16:10 +0200 (CEST)
Received: by mail-lj1-x231.google.com with SMTP id
 38308e7fff4ca-2bccda76fb1so19336211fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 08:16:10 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 x2-20020a2e8802000000b002bbacc6c523sm3944055ljh.49.2023.09.07.08.16.08
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 08:16:08 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 79c58c85-4d91-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694099770; x=1694704570; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=FgYSo7DZzzYqnhzSFLB9XVyVN1T4yIUqP15YWWRhIHw=;
        b=JimElWEuHtwtmxWix7nhE9Gs2TZHF75bluJRUrHAJxE1i5Oss4SNi4hq3ObLruRSmE
         CJ91mY53Z+Hm2Xuux6IgmAGkw+zrqzt/KkksF2fsThig4c3Hs/3yQoBO9exsnaDeQgQA
         oilNJc6NbHBHh77My1Gbte1SevZ9jDvcGyENpWC3rgqdIqrfXq0zDa8tU+BQ0sLCx79+
         aLkWsG/Y0Q+V1pDNtOfwnDTB6guogvOw2AI1vKHndfhMd4bHkpiEMNfKc7cHz16f2L2Q
         cfHQBY96Tn7kMeGY0MVVbYBsU4HAFLak1kaUsufqVQ+ApRCQLn7ngnHBSZYLoyOn9rcV
         C2wQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694099770; x=1694704570;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=FgYSo7DZzzYqnhzSFLB9XVyVN1T4yIUqP15YWWRhIHw=;
        b=HjDVUwxvAwW8QcACB6O+5B7HGmAmI98MSXt93m4xNUOBPPRhuYYnQ3OvVkv/CzNAiG
         B9qkQpXNtnRCd7QaK93nDPkGLe3IghOlnDeJPKznmRkfwVH0r42wh41homi2tJ3WI72t
         fhQjJk+RFeUyxQBTLyb9miCa9PyiMn4VMPEoZ7j53sW9hPe3QKwslyPjTZR4mXmj93co
         lCs+EOeP7fAEbFk4XYbBpS1CbQR3LUUPFdjFZITdpmQZ/rWF1Bc+0+wqNyaFOE66kVPl
         BD5lC9Ltvk4wwkr0m9YDIGZPJwmiARRYYvq32D4XLvYQ/awti2U8eotHzJluxwkAPYgI
         faQA==
X-Gm-Message-State: AOJu0Yy9tXiW1/1KS8TRzuh72iP+qkj+4bKwkpbN11c8Rc4ZfRqky6Ql
	Uy8G9rGGMbsaENiDkzx2+iwKQT3wJxU=
X-Google-Smtp-Source: AGHT+IELS9ppTUSojnzqfwGXeBPnrBczNmjv4sIpk7AK2gNYRokiax/g9aSarzN+KASVnSpX23TTCQ==
X-Received: by 2002:a2e:9b04:0:b0:2b5:7f93:b3b0 with SMTP id u4-20020a2e9b04000000b002b57f93b3b0mr4765080lji.17.1694099769663;
        Thu, 07 Sep 2023 08:16:09 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Anthony PERARD <anthony.perard@citrix.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v7 2/2] xen: move arm/include/asm/vm_event.h to asm-generic
Date: Thu,  7 Sep 2023 18:16:00 +0300
Message-ID: <5ff2d32ddd56f98a9c4a28c600457d6df022f755.1694097564.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694097564.git.oleksii.kurochko@gmail.com>
References: <cover.1694097564.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

asm/vm_event.h is common for ARM and RISC-V so it will be moved to
asm-generic dir.

Original asm/vm_event.h from ARM was updated:
 * use SPDX-License-Identifier.
 * update comment messages of stubs.
 * update #ifdef
 * instead of "include <public/domctl.h>" -> "public/vm_event.h"

As vm_event.h was moved to asm-generic then it is needed to create
Makefile in arm/include/asm/ and add generated-y += vm_event.h to
it.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
---
Changes in V7:
 - update guards in asm-generic/vm_event.h.
 - add Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
---
Changes in V6:
 - update the commit message.
---
Changes in V5:
 - Update the commit message
 - Remove Acked-by:...
 - Switch ARM to use asm-generic/vm_event.h
---
Changes in V4:
 - update path of vm_event.h from include/asm-generic/asm to include/asm-generic
---
Changes in V3:
 - add Acked-by: Stefano Stabellini <sstabellini@kernel.org> for "xen: move arm/include/asm/vm_event.h to asm-generic"
 - update SPDX tag.
 - move asm/vm_event.h to asm-generic.
---
Changes in V2:
 - change public/domctl.h to public/vm_event.h.
 - update commit message of [PATCH v2 2/2] xen: move arm/include/asm/vm_event.h to stubs
---
 xen/arch/arm/include/asm/Makefile   |  2 +
 xen/arch/arm/include/asm/vm_event.h | 66 -----------------------------
 xen/include/asm-generic/vm_event.h  | 55 ++++++++++++++++++++++++
 3 files changed, 57 insertions(+), 66 deletions(-)
 create mode 100644 xen/arch/arm/include/asm/Makefile
 delete mode 100644 xen/arch/arm/include/asm/vm_event.h
 create mode 100644 xen/include/asm-generic/vm_event.h

diff --git a/xen/arch/arm/include/asm/Makefile b/xen/arch/arm/include/asm/Makefile
new file mode 100644
index 0000000000..821addb0bf
--- /dev/null
+++ b/xen/arch/arm/include/asm/Makefile
@@ -0,0 +1,2 @@
+# SPDX-License-Identifier: GPL-2.0-only
+generic-y += vm_event.h
diff --git a/xen/arch/arm/include/asm/vm_event.h b/xen/arch/arm/include/asm/vm_event.h
deleted file mode 100644
index 4d861373b3..0000000000
--- a/xen/arch/arm/include/asm/vm_event.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * vm_event.h: architecture specific vm_event handling routines
- *
- * Copyright (c) 2015 Tamas K Lengyel (tamas@tklengyel.com)
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License along with
- * this program; If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef __ASM_ARM_VM_EVENT_H__
-#define __ASM_ARM_VM_EVENT_H__
-
-#include <xen/sched.h>
-#include <public/domctl.h>
-
-static inline int vm_event_init_domain(struct domain *d)
-{
-    /* Nothing to do. */
-    return 0;
-}
-
-static inline void vm_event_cleanup_domain(struct domain *d)
-{
-    memset(&d->monitor, 0, sizeof(d->monitor));
-}
-
-static inline void vm_event_toggle_singlestep(struct domain *d, struct vcpu *v,
-                                              vm_event_response_t *rsp)
-{
-    /* Not supported on ARM. */
-}
-
-static inline
-void vm_event_register_write_resume(struct vcpu *v, vm_event_response_t *rsp)
-{
-    /* Not supported on ARM. */
-}
-
-static inline
-void vm_event_emulate_check(struct vcpu *v, vm_event_response_t *rsp)
-{
-    /* Not supported on ARM. */
-}
-
-static inline
-void vm_event_sync_event(struct vcpu *v, bool value)
-{
-    /* Not supported on ARM. */
-}
-
-static inline
-void vm_event_reset_vmtrace(struct vcpu *v)
-{
-    /* Not supported on ARM. */
-}
-
-#endif /* __ASM_ARM_VM_EVENT_H__ */
diff --git a/xen/include/asm-generic/vm_event.h b/xen/include/asm-generic/vm_event.h
new file mode 100644
index 0000000000..620c7b971c
--- /dev/null
+++ b/xen/include/asm-generic/vm_event.h
@@ -0,0 +1,55 @@
+/* SPDX-License-Identifier:  GPL-2.0-only */
+/*
+ * vm_event.h: stubs for architecture specific vm_event handling routines
+ *
+ * Copyright (c) 2015 Tamas K Lengyel (tamas@tklengyel.com)
+ */
+
+#ifndef __ASM_GENERIC_VM_EVENT_H__
+#define __ASM_GENERIC_VM_EVENT_H__
+
+#include <xen/sched.h>
+#include <public/vm_event.h>
+
+static inline int vm_event_init_domain(struct domain *d)
+{
+    /* Nothing to do. */
+    return 0;
+}
+
+static inline void vm_event_cleanup_domain(struct domain *d)
+{
+    memset(&d->monitor, 0, sizeof(d->monitor));
+}
+
+static inline void vm_event_toggle_singlestep(struct domain *d, struct vcpu *v,
+                                              vm_event_response_t *rsp)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_register_write_resume(struct vcpu *v, vm_event_response_t *rsp)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_emulate_check(struct vcpu *v, vm_event_response_t *rsp)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_sync_event(struct vcpu *v, bool value)
+{
+    /* Nothing to do. */
+}
+
+static inline
+void vm_event_reset_vmtrace(struct vcpu *v)
+{
+    /* Nothing to do. */
+}
+
+#endif /* __ASM_GENERIC_VM_EVENT_H__ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 15:48:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 15:48:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597506.931743 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeHEi-0003pN-6x; Thu, 07 Sep 2023 15:48:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597506.931743; Thu, 07 Sep 2023 15:48:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeHEi-0003pG-3W; Thu, 07 Sep 2023 15:48:04 +0000
Received: by outflank-mailman (input) for mailman id 597506;
 Thu, 07 Sep 2023 15:48:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=lI39=EX=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qeHEh-0003nu-C0
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 15:48:03 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id eb67b2a5-4d95-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 17:48:00 +0200 (CEST)
Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7])
 by mailhost.m5p.com (8.17.1/8.15.2) with ESMTPS id 387FljpI015003
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Thu, 7 Sep 2023 11:47:50 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 387FliFX015002;
 Thu, 7 Sep 2023 08:47:44 -0700 (PDT) (envelope-from ehem)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: eb67b2a5-4d95-11ee-9b0d-b553b5be7939
Date: Thu, 7 Sep 2023 08:47:44 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Development <D@dlsemc.com>,
        "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: Xens handling of MCE
Message-ID: <ZPnwoITV24yMXxzH@mattapan.m5p.com>
References: <521ab5aef01a4c64bef65435e7c284bd@dlsemc.com>
 <ZPjxOTRipQ6sEqF5@mattapan.m5p.com>
 <d5c9ae9c-af78-05a7-52ca-7ae487c0d2bd@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <d5c9ae9c-af78-05a7-52ca-7ae487c0d2bd@suse.com>
X-Spam-Status: No, score=2.4 required=10.0 tests=KHOP_HELO_FCRDNS,URI_DOTEDU
	autolearn=no autolearn_force=no version=3.4.6
X-Spam-Level: **
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mattapan.m5p.com

On Thu, Sep 07, 2023 at 08:56:51AM +0200, Jan Beulich wrote:
> On 06.09.2023 23:38, Elliott Mitchell wrote:
> > On Thu, Aug 31, 2023 at 07:52:05PM +0000, Development wrote:
> >>
> >>     However, in 2009-02, "cegger" wrote MCA/MCE_in_Xen, a proposal for having xen start checking the information
> >>     Xen started accessing the EDAC information (now called "MCE") at some point after that, which blocks the linux kernel in dom0 from accessing it.
> >>     (I also found what appears to be related sides from a presentation from 2012 at: https://lkml.iu.edu/hypermail/linux/kernel/1206.3/01304/xen_vMCE_design_%28v0_2%29.pdf )
> >>
> > 
> > I hadn't seen that before.  Clearly shows someone who had no idea what
> > they were doing designed it.  The author was thinking "virtualize 
> > everything!", whereas MCE is a perfect situation for paravirtualization.
> > Let Dom0 process MCE events (which allows use of Linux's more up to date
> > MCE drivers), then let Dom0 notify Xen if action is needed (a page was
> > corrupted, tell the effected domain).
> > 
> > There was a recent proposal to simply import Linux's rather more recent
> > MCE/EDAC source.  This hasn't happened yet.  For people using Xen this
> > has been a very concerning issue for some time.
> 
> I'm unaware of such a proposal; do you have a reference? EDAC drivers
> typically are vendor- or even chipset-specific aiui. At least the latter
> wouldn't make them a good fit to import into Xen. Along of what you say
> earlier, they instead want to become Xen-aware (to deal with address
> translation as necessary). That'll also have better chances of things
> staying up-to-date.

I don't recall who wrote the message, I think it was less than 6 months
ago though.  I read it as $person had been pondering the idea of simply
ripping out Xen's MCE implementation and replacing it with minimally
adjusted Linux MCE implementation.

What you describe matches my thinking.  Even though the EDAC hardware is
fully attached to processors now, it doesn't need virtualization similar
to page tables.  Instead EDAC should be handled similar to most hardware
devices and go through Domain 0.

The approach for Xen should also differ.  Instead of first telling the
OS, it might be better to immediately unmap the page and trigger a page
fault if it is accessed.  Then notify the OS a page has disappeared.
Mainly immitate how Linux handles MCE events for a userspace process,
rather than the usual paravirtualization.

I'm not on sufficiently intimate terms with the drivers or hardware to
try this right now.  Yet the number of complaints about this is rather
substantial (okay, I'm aware since this is no small concern for me too).


-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \BS (    |         ehem+sigmsg@m5p.com  PGP 87145445         |    )   /
  \_CS\   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445




From xen-devel-bounces@lists.xenproject.org Thu Sep 07 16:04:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 16:04:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597515.931754 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeHUF-00081U-Hs; Thu, 07 Sep 2023 16:04:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597515.931754; Thu, 07 Sep 2023 16:04:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeHUF-00081N-Di; Thu, 07 Sep 2023 16:04:07 +0000
Received: by outflank-mailman (input) for mailman id 597515;
 Thu, 07 Sep 2023 16:04:06 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeHUE-00081D-EE; Thu, 07 Sep 2023 16:04:06 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeHUE-0005oo-AS; Thu, 07 Sep 2023 16:04:06 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeHUD-0002Dk-TK; Thu, 07 Sep 2023 16:04:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeHUD-0002YI-Ss; Thu, 07 Sep 2023 16:04:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=4rGnvIv/6hkdY38elBeys/ReNzZBGI5sjFAbEe49K9g=; b=L3gXUbUie4OVlVfiAIM6Qs7Tcr
	iQl2vH/qbK3p5EznxU+dMHWKmV7MSOmfPugiSWmKWoUaTbkcCqmi+KpMQACfIaN08KPmluJmtXknT
	LQsQ1qv0BfcQ3BqDC+xwgSaBFSZolah8xzoE4xsDdB0BvqYD1O+Lmw3zENFD0vGgv3f0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182721-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182721: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=b81557a00c61cc80ab118828f16ed9ce79455880
X-Osstest-Versions-That:
    ovmf=bbf182229587958b17336c114e0a1525c4f90f3d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 16:04:05 +0000

flight 182721 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182721/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 b81557a00c61cc80ab118828f16ed9ce79455880
baseline version:
 ovmf                 bbf182229587958b17336c114e0a1525c4f90f3d

Last test of basis   182715  2023-09-07 06:40:47 Z    0 days
Testing same since   182721  2023-09-07 14:10:43 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Goncharov <chat@joursoir.net>
  Gerd Hoffmann <kraxel@redhat.com>
  Joursoir <chat@joursoir.net>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   bbf1822295..b81557a00c  b81557a00c61cc80ab118828f16ed9ce79455880 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 16:49:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 16:49:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597555.931781 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeIBo-00006T-Si; Thu, 07 Sep 2023 16:49:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597555.931781; Thu, 07 Sep 2023 16:49:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeIBo-00006M-PQ; Thu, 07 Sep 2023 16:49:08 +0000
Received: by outflank-mailman (input) for mailman id 597555;
 Thu, 07 Sep 2023 16:49:07 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeIBn-00006B-3H; Thu, 07 Sep 2023 16:49:07 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeIBn-0006qk-0h; Thu, 07 Sep 2023 16:49:07 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeIBm-0003Lo-Kt; Thu, 07 Sep 2023 16:49:06 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeIBm-0007JH-KW; Thu, 07 Sep 2023 16:49:06 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=FkgKgYPm42zb9WDw2f0RyIDOiyIPdV88j5dqQ0NLY6I=; b=m0rAcIwOW3t2fN86yR/MfFU5C0
	tc9HFFRJoEek2JvgG9Jga0jM4hzupoILy99p9pY3x7IZ67Aw6nNuVHeycnBQc90qrOLniajv4KfLF
	XksBbsqpSNdPIPwxmNut3rR6tQWFuSWtOtyNk0PDNGJXVv8sMucuzvhOyFGaqjkQZM9c=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182720-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182720: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
X-Osstest-Versions-That:
    xen=03f64b54a1d14893e7851a60ba4855fb75abf30a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 16:49:06 +0000

flight 182720 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182720/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
baseline version:
 xen                  03f64b54a1d14893e7851a60ba4855fb75abf30a

Last test of basis   182718  2023-09-07 08:00:25 Z    0 days
Testing same since   182720  2023-09-07 14:03:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   03f64b54a1..1f79fce10a  1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5 -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 17:10:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 17:10:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597566.931791 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeIWB-0004bN-N6; Thu, 07 Sep 2023 17:10:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597566.931791; Thu, 07 Sep 2023 17:10:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeIWB-0004bG-K1; Thu, 07 Sep 2023 17:10:11 +0000
Received: by outflank-mailman (input) for mailman id 597566;
 Thu, 07 Sep 2023 17:10:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LXLl=EX=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qeIW9-0004Yb-Gw
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 17:10:09 +0000
Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com
 [2a00:1450:4864:20::32a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 64d104ea-4da1-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 19:10:07 +0200 (CEST)
Received: by mail-wm1-x32a.google.com with SMTP id
 5b1f17b1804b1-401d6f6b2e0so15632775e9.1
 for <xen-devel@lists.xenproject.org>; Thu, 07 Sep 2023 10:10:07 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 i9-20020a05600011c900b0031c77c010e1sm23683813wrx.96.2023.09.07.10.10.04
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 07 Sep 2023 10:10:05 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 64d104ea-4da1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694106607; x=1694711407; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=hVtTxv5H7d5MLrMzRAGMDJIUJA7lHgoSYV/+RtqQn50=;
        b=Q4iHCwGflOFYTSkYkn+NWZDbBAfZT0rxjMs2+gouUE1wD70VuGN2dI3yOKMLmTHGrp
         cojLhXWLF67iVmnWlOs4pKT5SU7SB3jThDfBU1qvOF5Z4vUYvSwat6No1a5zi1tPp19i
         NavsiMDvJ1ouMoz1J8MSZpKse8dB4b+RUDrCY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1694106607; x=1694711407;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=hVtTxv5H7d5MLrMzRAGMDJIUJA7lHgoSYV/+RtqQn50=;
        b=ERKyPPY5xUkWqScsGVeTRYppDZgvMtXfcA8cc0uFAwHOlgaIqCJZSKdPMb7Xxg/Trj
         XtGIazPwzQURW3MF7SvdqQgDihH+kricnGZ8M8vbSyymL+Ia7CKqwTx1Zq8wybjLMbt4
         7DPcogrTctw5TP2npJ1Docfs3v8kVFZgOVCDNept6RrJco81cGCF/geUpQSCAmffuf9C
         WJfy0+Atq9NcmdFhq3qFdmcTECILpsUpyboxv/aCa8PtsrQC4c7xz1GzRcL8JY/BJK0j
         6NOhe227/PCTfI6SFSWx0Plpx1zU7SwwpJ0Qwj8dCnaveijB7tm3hEKYaNuz9rt5pLdg
         OJOA==
X-Gm-Message-State: AOJu0YzDKgHqGGMSi6tiToWjvceEfKIG2KaGW6gx4VGIwVXkmGErkDcE
	7mvR7rhfqQ1rzP6sHoDxUoGY1w==
X-Google-Smtp-Source: AGHT+IFXX/L+doy+jzJOJmLqKpos7ivS5VULH+vH+aRyqjC3wYHDmEpIa0lpj/tjYnn8vIRrdTQrJA==
X-Received: by 2002:a05:600c:2241:b0:3fe:1b5e:82 with SMTP id a1-20020a05600c224100b003fe1b5e0082mr17632wmm.20.1694106606736;
        Thu, 07 Sep 2023 10:10:06 -0700 (PDT)
Date: Thu, 7 Sep 2023 17:42:24 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Henry Wang <Henry.Wang@arm.com>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, 
	Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, 
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] coverage: update gcov info for newer versions of gcc
Message-ID: <5fyyfcgb4hhvtvogawodspk2bx5bmn6kgl3knj3iruonpng4xc@kdmacogvavhs>
References: <20230902151351.10325-1-javi.merino@cloud.com>
 <ce6e7abd-40ee-dd9e-b17c-10c39ca0e422@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <ce6e7abd-40ee-dd9e-b17c-10c39ca0e422@suse.com>

On Thu, Sep 07, 2023 at 04:41:59PM +0200, Jan Beulich wrote:
> On 02.09.2023 17:11, Javi Merino wrote:
> > --- a/xen/common/coverage/Makefile
> > +++ b/xen/common/coverage/Makefile
> > @@ -5,7 +5,9 @@ obj-y += $(call cc-ifversion,-lt,0407, \
> >  		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
> >  		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
> >  		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
> > -		gcc_5.o, gcc_7.o))))
> > +		gcc_5.o, $(call cc-ifversion,-lt,1000, \
> > +		gcc_7.o,  $(call cc-ifversion,-lt,1200, \
> > +		gcc_10.o, gcc_12.o))))))
> 
> This is getting unwieldy, so I think we ought to try to limit the number
> of different files we have. Already gcc_4_9.c and gcc_7.c specify the
> same GCOV_COUNTERS and differ only in the version checks (which could be
> combined). Therefore ...

Right!  I tried to keep the current structure but I agree: it is
simpler if they were all combined in gcc_4_7.c.  This is what linux
does.  I'll simplify it as you suggest and send a v2.

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 17:54:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 17:54:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597574.931801 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeJDD-0002nz-VQ; Thu, 07 Sep 2023 17:54:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597574.931801; Thu, 07 Sep 2023 17:54:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeJDD-0002ns-Qn; Thu, 07 Sep 2023 17:54:39 +0000
Received: by outflank-mailman (input) for mailman id 597574;
 Thu, 07 Sep 2023 17:54:39 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeJDC-0002ni-WA; Thu, 07 Sep 2023 17:54:39 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeJDC-0008F7-Rl; Thu, 07 Sep 2023 17:54:38 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeJDC-00056K-GV; Thu, 07 Sep 2023 17:54:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeJDC-00019P-Fv; Thu, 07 Sep 2023 17:54:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Y6nJ1HFDLpOt03i8WP/Aaj7zahWhVjcpK0d//2d5tU4=; b=ih8PT+pgNrMM//y6yBiEj7cEOV
	fEdo/ToAQzerWBgrMxr6lLuWVNGVVRBLtILsfm1zO3Oyu6bxQzks5pRAHFqqUhQoGjPmGKHd7kyqb
	6Pmr/R8q7ap8YypYQPKCkWzsPgrw6Wcinz1oMtCciBlHWyTvs4dSFg52PgW8YWz/03l4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182722-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182722: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=b29150aa3e9157908052c212d3afacbff8dbab1b
X-Osstest-Versions-That:
    ovmf=b81557a00c61cc80ab118828f16ed9ce79455880
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 17:54:38 +0000

flight 182722 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182722/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 b29150aa3e9157908052c212d3afacbff8dbab1b
baseline version:
 ovmf                 b81557a00c61cc80ab118828f16ed9ce79455880

Last test of basis   182721  2023-09-07 14:10:43 Z    0 days
Testing same since   182722  2023-09-07 16:10:41 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ard Biesheuvel <ardb@kernel.org>
  Gerd Hoffmann <kraxel@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   b81557a00c..b29150aa3e  b29150aa3e9157908052c212d3afacbff8dbab1b -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 18:15:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 18:15:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597584.931811 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeJX3-00060g-In; Thu, 07 Sep 2023 18:15:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597584.931811; Thu, 07 Sep 2023 18:15:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeJX3-00060Z-Fm; Thu, 07 Sep 2023 18:15:09 +0000
Received: by outflank-mailman (input) for mailman id 597584;
 Thu, 07 Sep 2023 18:15:08 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeJX2-00060P-Ad; Thu, 07 Sep 2023 18:15:08 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeJX2-0000O5-59; Thu, 07 Sep 2023 18:15:08 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeJX1-0005e2-N0; Thu, 07 Sep 2023 18:15:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeJX1-0007Rp-MP; Thu, 07 Sep 2023 18:15:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=VCa4iemBFFdPwv31hIFJrFkYDY+5OEiMzq6NEgIyrW0=; b=dd54/hcR5wKEmVP8tivnPZjR6G
	DFbn49nLIS2yemrnoQU2fWlw32WZuHvbno5ADZ6VdR/zlN81ivFpfBrHGrV6n/faE2EuNyoPhVmS0
	pCow79kXC0lvaycw1BQ6cb6RasfMSstQFNn4p42g84QAfCp0lpKpsDki//kT/IEECJb8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182707-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182707: tolerable FAIL - PUSHED
X-Osstest-Failures:
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
X-Osstest-Versions-That:
    qemuu=2d8fbcb1eecd8d39171f457e583428758321d69d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 18:15:07 +0000

flight 182707 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182707/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop       fail blocked in 182638
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182638
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182638
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182638
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182638
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182638
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182638
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182638
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae
baseline version:
 qemuu                2d8fbcb1eecd8d39171f457e583428758321d69d

Last test of basis   182638  2023-09-05 15:37:11 Z    2 days
Testing same since   182707  2023-09-07 00:28:57 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bilal Elmoussaoui <belmouss@redhat.com>
  Cédric Le Goater <clg@kaod.org>
  dengpengcheng <dengpc12@chinatelecom.cn>
  Dmitry Frolov <frolov@swemel.ru>
  Guoyi Tu <tugy@chinatelecom.cn>
  Hang Yu <francis_yuu@stu.pku.edu.cn>
  Helge Deller <deller@gmx.de>
  Ilya Leoshkevich <iii@linux.ibm.com>
  Joel Stanley <joel@jms.id.au>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <f4bug@amsat.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Stefan Hajnoczi <stefanha@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/qemu-xen.git
   2d8fbcb1ee..c152379422  c152379422a204109f34ca2b43ecc538c7d738ae -> upstream-tested


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 19:41:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 19:41:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597595.931825 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeKsI-0000ad-Tm; Thu, 07 Sep 2023 19:41:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597595.931825; Thu, 07 Sep 2023 19:41:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeKsI-0000ZD-PS; Thu, 07 Sep 2023 19:41:10 +0000
Received: by outflank-mailman (input) for mailman id 597595;
 Thu, 07 Sep 2023 19:41:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=myun=EX=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qeKsH-0000X5-4F
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 19:41:09 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 79efca6a-4db6-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 21:41:02 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id C4F9082859ED;
 Thu,  7 Sep 2023 14:41:01 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id QNGLP11fAkNX; Thu,  7 Sep 2023 14:41:00 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 6689382857F8;
 Thu,  7 Sep 2023 14:41:00 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id GFKUhbma4seh; Thu,  7 Sep 2023 14:41:00 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 14F4E828596F;
 Thu,  7 Sep 2023 14:41:00 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 79efca6a-4db6-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 6689382857F8
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694115660; bh=ZddRoCQy9wva99e7szlKRNGTsxCR4BnXNupCx5YetZI=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=SeJJOkQxrEkGPX5tTzmdi+g5dcXmbTkBM69tfp4SljfrS1CII2T1Lq6CEpxhpW8Yt
	 k1o0GNUz07zacDIf0TcvjwTJqH28RQZVOj83lH/pKJAwhJu1HpNVRvJrnC9MGC+VWo
	 dfounjEboE5lo4p9y7SoGx74whoZB7IM+hqWYI4E=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v3 2/2] xen/ppc: Drop support for pseries/OpenFirmware
Date: Thu,  7 Sep 2023 14:40:48 -0500
Message-Id: <c190537196f0d1143c7e9af710489201b500f9b9.1694114837.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694114837.git.sanastasio@raptorengineering.com>
References: <cover.1694114837.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Since QEMU's PowerNV support has matured to the point where it is
now suitable for development, drop support for booting on the
paravirtualized pseries machine type and its associated interfaces.

Support for booting on pseries was broken by 74b725a64d80 ('xen/ppc:
Implement initial Radix MMU support'), and since there is little
practical value in continuing to support pseries as a target, just drop
support for it entirely.

Fixes: 74b725a64d80 ('xen/ppc: Implement initial Radix MMU support')
Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
 xen/arch/ppc/Makefile           |   1 -
 xen/arch/ppc/boot-of.c          | 113 --------------------------------
 xen/arch/ppc/include/asm/boot.h |  19 ------
 xen/arch/ppc/ppc64/Makefile     |   1 -
 xen/arch/ppc/ppc64/of-call.S    |  83 -----------------------
 xen/arch/ppc/setup.c            |  11 +---
 6 files changed, 3 insertions(+), 225 deletions(-)
 delete mode 100644 xen/arch/ppc/boot-of.c
 delete mode 100644 xen/arch/ppc/ppc64/of-call.S

diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile
index a059ac4c0a..b3205b8f7a 100644
--- a/xen/arch/ppc/Makefile
+++ b/xen/arch/ppc/Makefile
@@ -1,6 +1,5 @@
 obj-$(CONFIG_PPC64) += ppc64/

-obj-y += boot-of.init.o
 obj-$(CONFIG_EARLY_PRINTK) += early_printk.init.o
 obj-y += mm-radix.o
 obj-y += opal.o
diff --git a/xen/arch/ppc/boot-of.c b/xen/arch/ppc/boot-of.c
deleted file mode 100644
index d6755ccc8e..0000000000
--- a/xen/arch/ppc/boot-of.c
+++ /dev/null
@@ -1,113 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-or-later */
-/*
- * This file was derived from Xen 3.2's xen/arch/powerpc/boot_of.c,
- * originally licensed under GPL version 2 or later.
- *
- * Copyright IBM Corp. 2005, 2006, 2007
- * Copyright Raptor Engineering, LLC
- *
- * Authors: Jimi Xenidis <jimix@watson.ibm.com>
- *          Hollis Blanchard <hollisb@us.ibm.com>
- *          Shawn Anastasio <sanastasio@raptorengineering.com>
- */
-
-#include <xen/init.h>
-#include <xen/macros.h>
-#include <xen/stdarg.h>
-#include <xen/types.h>
-#include <asm/boot.h>
-#include <asm/byteorder.h>
-#include <asm/early_printk.h>
-
-/*
- * The Open Firmware client interface is called in 32-bit mode with the MMU off,
- * so any addresses passed to it must be physical addresses under 4GB.
- *
- * Since the client interface is only used during early boot before the MMU is on
- * and Xen itself was loaded by Open Firmware (and therefore resides below 4GB),
- * we can achieve the desired result with a simple cast to uint32_t.
- */
-#define ADDR(x) ((uint32_t)(unsigned long)(x))
-
-/* OF entrypoint*/
-static unsigned long __initdata of_vec;
-
-static int __initdata of_out;
-
-static int __init of_call(const char *service, uint32_t nargs, uint32_t nrets,
-                          int32_t rets[], ...)
-{
-    int rc;
-    va_list args;
-    unsigned int i;
-    struct of_service s;
-
-    s.ofs_service = cpu_to_be32(ADDR(service));
-    s.ofs_nargs = cpu_to_be32(nargs);
-    s.ofs_nrets = cpu_to_be32(nrets);
-
-    /* Copy all the params into the args array */
-    va_start(args, rets);
-
-    for ( i = 0; i < nargs; i++ )
-        s.ofs_args[i] = cpu_to_be32(va_arg(args, uint32_t));
-
-    va_end(args);
-
-    rc = enter_of(&s, of_vec);
-
-    /* Copy all return values to the output rets array */
-    for ( i = 0; i < nrets; i++ )
-        rets[i] = be32_to_cpu(s.ofs_args[i + nargs]);
-
-    return rc;
-}
-
-static int __init of_finddevice(const char *devspec)
-{
-    int32_t rets[1] = { OF_FAILURE };
-
-    of_call("finddevice", 1, ARRAY_SIZE(rets), rets, ADDR(devspec));
-    return rets[0];
-}
-
-static int __init of_getprop(int ph, const char *name, void *buf, uint32_t buflen)
-{
-    int32_t rets[1] = { OF_FAILURE };
-
-    of_call("getprop", 4, ARRAY_SIZE(rets), rets, ph, ADDR(name), ADDR(buf),
-            buflen);
-    return rets[0];
-}
-
-int __init of_write(int ih, const char *addr, uint32_t len)
-{
-    int32_t rets[1] = { OF_FAILURE };
-
-    of_call("write", 3, ARRAY_SIZE(rets), rets, ih, ADDR(addr), len);
-    return rets[0];
-}
-
-static void __init of_putchar(char c)
-{
-    if ( c == '\n' )
-    {
-        char buf = '\r';
-        of_write(of_out, &buf, 1);
-    }
-    of_write(of_out, &c, 1);
-}
-
-void __init boot_of_init(unsigned long vec)
-{
-    int bof_chosen;
-
-    of_vec = vec;
-
-    /* Get a handle to the default console */
-    bof_chosen = of_finddevice("/chosen");
-    of_getprop(bof_chosen, "stdout", &of_out, sizeof(of_out));
-    of_out = be32_to_cpu(of_out);
-
-    early_printk_init(of_putchar);
-}
diff --git a/xen/arch/ppc/include/asm/boot.h b/xen/arch/ppc/include/asm/boot.h
index 296539cd9e..d62c3ff6e0 100644
--- a/xen/arch/ppc/include/asm/boot.h
+++ b/xen/arch/ppc/include/asm/boot.h
@@ -4,25 +4,6 @@

 #include <xen/types.h>

-/*
- * OpenFirmware boot interfaces
- */
-
-enum {
-    OF_FAILURE = -1,
-    OF_SUCCESS = 0,
-};
-
-struct of_service {
-    __be32 ofs_service;
-    __be32 ofs_nargs;
-    __be32 ofs_nrets;
-    __be32 ofs_args[10];
-};
-
-int enter_of(struct of_service *args, unsigned long entry);
-void boot_of_init(unsigned long vec);
-
 /*
  * OPAL boot interfaces
  */
diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile
index b9a91dc15f..5b88355bb2 100644
--- a/xen/arch/ppc/ppc64/Makefile
+++ b/xen/arch/ppc/ppc64/Makefile
@@ -1,3 +1,2 @@
 obj-y += head.o
-obj-y += of-call.o
 obj-y += opal-calls.o
diff --git a/xen/arch/ppc/ppc64/of-call.S b/xen/arch/ppc/ppc64/of-call.S
deleted file mode 100644
index 2a2e308f6b..0000000000
--- a/xen/arch/ppc/ppc64/of-call.S
+++ /dev/null
@@ -1,83 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-or-later */
-/*
- * Adapted from Linux's arch/powerpc/kernel/entry_64.S, with the
- * following copyright notice:
- *
- *  PowerPC version
- *    Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org)
- *  Rewritten by Cort Dougan (cort@cs.nmt.edu) for PReP
- *    Copyright (C) 1996 Cort Dougan <cort@cs.nmt.edu>
- *  Adapted for Power Macintosh by Paul Mackerras.
- *  Low-level exception handlers and MMU support
- *  rewritten by Paul Mackerras.
- *    Copyright (C) 1996 Paul Mackerras.
- *  MPC8xx modifications Copyright (C) 1997 Dan Malek (dmalek@jlc.net).
- */
-
-#include <asm/asm-offsets.h>
-#include <asm/asm-defns.h>
-#include <asm/msr.h>
-
-/* size of minimum stack frame that can hold an entire cpu_user_regs struct */
-#define STACK_SWITCH_FRAME_SIZE UREGS_sizeof
-
-    .section .init.text, "ax", @progbits
-
-ENTRY(enter_of)
-    mflr    %r0
-    std     %r0, 16(%r1)
-    stdu    %r1, -STACK_SWITCH_FRAME_SIZE(%r1) /* Save SP and create stack space */
-
-    /*
-     * Because PROM is running in 32b mode, it clobbers the high order half
-     * of all registers that it saves.  We therefore save those registers
-     * PROM might touch to the stack.  (%r0, %r3-%r13 are caller saved)
-     */
-    SAVE_GPR(2, %r1)
-    SAVE_GPR(13, %r1)
-    SAVE_NVGPRS(%r1)
-    mfcr    %r10
-    mfmsr   %r11
-    std     %r10, UREGS_cr(%r1)
-    std     %r11, UREGS_msr(%r1)
-
-    /* Put PROM address in SRR0 */
-    mtsrr0  %r4
-
-    /* Setup our trampoline return addr in LR */
-    bcl     20, 31, .+4
-0:  mflr    %r4
-    addi    %r4, %r4, 1f - 0b
-    mtlr    %r4
-
-    /* Prepare a 32-bit mode big endian MSR */
-    LOAD_IMM64(%r12, MSR_SF | MSR_LE)
-    andc    %r11, %r11, %r12
-    mtsrr1  %r11
-    rfid
-
-1:  /* Return from OF */
-    FIXUP_ENDIAN
-
-    /* Just make sure that %r1 top 32 bits didn't get corrupt by OF */
-    rldicl  %r1, %r1, 0, 32
-
-    /* Restore the MSR (back to 64 bits) */
-    ld      %r0, UREGS_msr(%r1)
-    mtmsrd  %r0
-    isync
-
-    /* Restore other registers */
-    REST_GPR(2, %r1)
-    REST_GPR(13, %r1)
-    REST_NVGPRS(%r1)
-    ld      %r4, UREGS_cr(%r1)
-    mtcr    %r4
-
-    addi    %r1, %r1, STACK_SWITCH_FRAME_SIZE
-    ld      %r0, 16(%r1)
-    mtlr    %r0
-    blr
-
-    .size enter_of, . - enter_of
-    .type enter_of, %function
diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c
index 0106e9c9da..3fc7705d9b 100644
--- a/xen/arch/ppc/setup.c
+++ b/xen/arch/ppc/setup.c
@@ -14,17 +14,12 @@ void __init noreturn start_xen(unsigned long r3, unsigned long r4,
 {
     if ( r5 )
     {
-        /* OpenFirmware boot protocol */
-        boot_of_init(r5);
+        /* Unsupported OpenFirmware boot protocol */
+        __builtin_trap();
     }
     else
     {
-        /*
-         * kexec boot protocol
-         *
-         * TODO: This currently assumes an OPAL/PowerNV system, but it's also
-         * possible to be kexec'd on an OF system.
-         */
+        /* kexec boot protocol */
         boot_opal_init((void *)r3);
     }

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 19:41:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 19:41:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597596.931834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeKsJ-0000mX-CC; Thu, 07 Sep 2023 19:41:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597596.931834; Thu, 07 Sep 2023 19:41:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeKsJ-0000jC-6t; Thu, 07 Sep 2023 19:41:11 +0000
Received: by outflank-mailman (input) for mailman id 597596;
 Thu, 07 Sep 2023 19:41:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=myun=EX=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qeKsH-0000X6-QO
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 19:41:09 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 79cb891d-4db6-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 21:41:03 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 7EDD982857DA;
 Thu,  7 Sep 2023 14:41:01 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id qgNY59Xnq-Qg; Thu,  7 Sep 2023 14:41:00 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 12933828574A;
 Thu,  7 Sep 2023 14:41:00 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id tGxJ1Orr3EZ4; Thu,  7 Sep 2023 14:40:59 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id AF40F82857F8;
 Thu,  7 Sep 2023 14:40:59 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 79cb891d-4db6-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 12933828574A
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694115660; bh=FpEWN5XzyDSaed6RXWHy2kOL1gO53wPDtA/kU7OLogE=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=jfPvwmQNm2R8I7BrXbHb5DhEe5qOdLrck0exjfxMKN0beH7T1pLLP5UdVAuhTKeB1
	 7c78G2NqxpwY78AiczfHBWtyMHLGuFROCkrjx7KZwZnLN2jXONG/ig+b8EAOjsYmAk
	 DB0tv/phczgHNJh2AKjgSPnZXxpzKA8kI2FFIegg=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH v3 1/2] automation: Switch ppc64le tests to PowerNV machine type
Date: Thu,  7 Sep 2023 14:40:47 -0500
Message-Id: <2cfc81f4538d83e822a9410f94fdacac2c1b0ed7.1694114837.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694114837.git.sanastasio@raptorengineering.com>
References: <cover.1694114837.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Run ppc64le tests with the PowerNV machine type (bare metal) instead of
the paravirtualized pseries machine. This requires a more modern version
of QEMU than is present in debian bullseye's repository, so update the
dockerfile to build QEMU from source.

Support for booting on pseries was broken by 74b725a64d80 ('xen/ppc:
Implement initial Radix MMU support') which resulted in CI failures. In
preparation for removing pseries support entirely, switch the CI
infrastructure to the PowerNV machine type.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
v3: Use test-artifact for custom QEMU build

 .../build/debian/bullseye-ppc64le.dockerfile  |  5 ++-
 automation/gitlab-ci/build.yaml               | 14 +++++++
 automation/gitlab-ci/test.yaml                |  5 ++-
 automation/scripts/qemu-smoke-ppc64le.sh      |  3 +-
 .../qemu-system-ppc64/8.1.0-ppc64.dockerfile  | 37 +++++++++++++++++++
 5 files changed, 59 insertions(+), 5 deletions(-)
 create mode 100644 automation/tests-artifacts/qemu-system-ppc64/8.1.0-ppc64.dockerfile

diff --git a/automation/build/debian/bullseye-ppc64le.dockerfile b/automation/build/debian/bullseye-ppc64le.dockerfile
index 8fad26e903..4de8458445 100644
--- a/automation/build/debian/bullseye-ppc64le.dockerfile
+++ b/automation/build/debian/bullseye-ppc64le.dockerfile
@@ -22,8 +22,9 @@ RUN apt-get update && \
         gcc-powerpc64le-linux-gnu \
         make \
         python3-minimal \
-        # for test phase
-        qemu-system-ppc \
+        # QEMU runtime dependencies for test phase
+        libglib2.0-0 \
+        libpixman-1-0 \
         && \
         apt-get autoremove -y && \
         apt-get clean && \
diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
index b633facff4..1619e9a558 100644
--- a/automation/gitlab-ci/build.yaml
+++ b/automation/gitlab-ci/build.yaml
@@ -306,6 +306,20 @@ qemu-system-aarch64-6.0.0-arm32-export:
   tags:
     - arm64

+# ppc64 test artifacts
+
+qemu-system-ppc64-8.1.0-ppc64-export:
+  extends: .test-jobs-artifact-common
+  image: registry.gitlab.com/xen-project/xen/tests-artifacts/qemu-system-ppc64:8.1.0-ppc64
+  script:
+    - mkdir binaries && cp /qemu-system-ppc64 /skiboot.lid binaries/
+  artifacts:
+    paths:
+      - binaries/qemu-system-ppc64
+      - binaries/skiboot.lid
+  tags:
+    - x86_64
+
 # x86_64 test artifacts

 alpine-3.18-rootfs-export:
diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
index 9aa8deabea..4b836bf047 100644
--- a/automation/gitlab-ci/test.yaml
+++ b/automation/gitlab-ci/test.yaml
@@ -454,9 +454,10 @@ qemu-smoke-riscv64-gcc:
   needs:
     - archlinux-current-gcc-riscv64-debug

-qemu-smoke-ppc64le-pseries-gcc:
+qemu-smoke-ppc64le-powernv9-gcc:
   extends: .qemu-ppc64le
   script:
-    - ./automation/scripts/qemu-smoke-ppc64le.sh pseries-5.2 2>&1 | tee ${LOGFILE}
+    - ./automation/scripts/qemu-smoke-ppc64le.sh powernv9 2>&1 | tee ${LOGFILE}
   needs:
+    - qemu-system-ppc64-8.1.0-ppc64-export
     - debian-bullseye-gcc-ppc64le-debug
diff --git a/automation/scripts/qemu-smoke-ppc64le.sh b/automation/scripts/qemu-smoke-ppc64le.sh
index eb55221221..2adbdac87e 100755
--- a/automation/scripts/qemu-smoke-ppc64le.sh
+++ b/automation/scripts/qemu-smoke-ppc64le.sh
@@ -12,7 +12,8 @@ set +e
 touch smoke.serial

 timeout -k 1 20 \
-qemu-system-ppc64 \
+binaries/qemu-system-ppc64 \
+    -bios binaries/skiboot.lid \
     -M $machine \
     -m 2g \
     -smp 1 \
diff --git a/automation/tests-artifacts/qemu-system-ppc64/8.1.0-ppc64.dockerfile b/automation/tests-artifacts/qemu-system-ppc64/8.1.0-ppc64.dockerfile
new file mode 100644
index 0000000000..7376ca46ff
--- /dev/null
+++ b/automation/tests-artifacts/qemu-system-ppc64/8.1.0-ppc64.dockerfile
@@ -0,0 +1,37 @@
+FROM debian:bullseye-slim
+LABEL maintainer.name="The Xen Project" \
+      maintainer.email="xen-devel@lists.xenproject.org"
+
+ENV DEBIAN_FRONTEND=noninteractive
+ENV QEMU_VERSION=8.1.0
+ENV USER root
+
+RUN mkdir /build
+WORKDIR /build
+
+# build depends
+RUN apt-get update && \
+    apt-get --quiet --yes install \
+        build-essential \
+        curl \
+        python3 \
+        python3-pip \
+        python3-elementpath \
+        ninja-build \
+        pkg-config \
+        libglib2.0-dev \
+        libpixman-1-dev \
+        && \
+    \
+    curl -fsSLO https://download.qemu.org/qemu-"$QEMU_VERSION".tar.xz && \
+    tar xvJf qemu-"$QEMU_VERSION".tar.xz && \
+    cd qemu-"$QEMU_VERSION" && \
+    ./configure --target-list=ppc64-softmmu && \
+    make -j$(nproc) && \
+    cp ./build/qemu-system-ppc64 / && \
+    cp ./build/qemu-bundle/usr/local/share/qemu/skiboot.lid / && \
+    cd /build && \
+    rm -rf qemu-"$QEMU_VERSION"* && \
+    apt-get autoremove -y && \
+    apt-get clean && \
+    rm -rf /var/lib/apt/lists* /tmp/* /var/tmp/*
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 19:41:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 19:41:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597594.931821 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeKsI-0000XT-LU; Thu, 07 Sep 2023 19:41:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597594.931821; Thu, 07 Sep 2023 19:41:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeKsI-0000XM-IY; Thu, 07 Sep 2023 19:41:10 +0000
Received: by outflank-mailman (input) for mailman id 597594;
 Thu, 07 Sep 2023 19:41:08 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=myun=EX=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qeKsG-0000X5-S0
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 19:41:08 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 79c49b3e-4db6-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 21:41:02 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 22AE7828596F;
 Thu,  7 Sep 2023 14:41:01 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 9sDjNDv_ydZ6; Thu,  7 Sep 2023 14:40:59 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id A77A682857DA;
 Thu,  7 Sep 2023 14:40:59 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id vyvxV_GowML7; Thu,  7 Sep 2023 14:40:59 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 2D6C0828574A;
 Thu,  7 Sep 2023 14:40:59 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 79c49b3e-4db6-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com A77A682857DA
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694115659; bh=1ljCQxuyGxzMiOsk2nIw7/n64VzZIvgNsPTsPQKMrOc=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=a4RFOg0HKTztE4uqyJvyMdis/ihbypa8Paw57HDBek//iGoWQCDcdFJbQstC0y2lz
	 exNN+6XlG/BMxqBZ3jGURlXs7K+q1t0sU/JWabPUeFU0aM/QH/9aji3i6M8T/zsZJQ
	 reIP1BcGAnlXdyOgLGvKMJN4ri7Bex+C+cMHAE1k=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH v3 0/2] ppc: Drop support for QEMU pseries
Date: Thu,  7 Sep 2023 14:40:46 -0500
Message-Id: <cover.1694114837.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Hello all,

This small series drops support for the QEMU paravirtualized pseries
machine type in favor of the bare metal PowerNV platform. pseries
support was broken by 74b725a64d80 ('xen/ppc: Implement initial Radix
MMU support'), and instead of maintaining separate code paths to retain
support for the platform, I think it makes the most sense to drop it
entirely.

pseries was originally targeted for initial bringup since it has
historically been much better supported by QEMU, but PowerNV support in
QEMU has recently developed to the point where this is no longer a
concern.  Since I can think of very little practical use for running Xen
under pseries, and supporting it requires non-trivial duplication of
effort, drop support for it entirely.

This also requires a change to the ppc64le CI dockerfile to build a
newer version of QEMU than is available in the bullseye repository.

Thanks,
Shawn

--
v3: Build QEMU as test-artifact
v2: Add Fixes: tag to patch 2, add references to broken state of pseries

Shawn Anastasio (2):
  automation: Switch ppc64le tests to PowerNV machine type
  xen/ppc: Drop support for pseries/OpenFirmware

 .../build/debian/bullseye-ppc64le.dockerfile  |   5 +-
 automation/gitlab-ci/build.yaml               |  14 +++
 automation/gitlab-ci/test.yaml                |   5 +-
 automation/scripts/qemu-smoke-ppc64le.sh      |   3 +-
 .../qemu-system-ppc64/8.1.0-ppc64.dockerfile  |  37 ++++++
 xen/arch/ppc/Makefile                         |   1 -
 xen/arch/ppc/boot-of.c                        | 113 ------------------
 xen/arch/ppc/include/asm/boot.h               |  19 ---
 xen/arch/ppc/ppc64/Makefile                   |   1 -
 xen/arch/ppc/ppc64/of-call.S                  |  83 -------------
 xen/arch/ppc/setup.c                          |  11 +-
 11 files changed, 62 insertions(+), 230 deletions(-)
 create mode 100644 automation/tests-artifacts/qemu-system-ppc64/8.1.0-ppc64.dockerfile
 delete mode 100644 xen/arch/ppc/boot-of.c
 delete mode 100644 xen/arch/ppc/ppc64/of-call.S

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 07 20:11:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 20:11:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597619.931851 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeLLC-0006Al-JQ; Thu, 07 Sep 2023 20:11:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597619.931851; Thu, 07 Sep 2023 20:11:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeLLC-0006Ae-Fv; Thu, 07 Sep 2023 20:11:02 +0000
Received: by outflank-mailman (input) for mailman id 597619;
 Thu, 07 Sep 2023 20:11:01 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=myun=EX=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qeLLB-0006AY-B5
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 20:11:01 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a8a9cfce-4dba-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 22:10:59 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id CF17082856D8;
 Thu,  7 Sep 2023 15:10:57 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 1L85qH1Ir2IZ; Thu,  7 Sep 2023 15:10:57 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 19ADB828641B;
 Thu,  7 Sep 2023 15:10:57 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 57n58737Hecc; Thu,  7 Sep 2023 15:10:56 -0500 (CDT)
Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id AA24B82856D8;
 Thu,  7 Sep 2023 15:10:56 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a8a9cfce-4dba-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 19ADB828641B
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694117457; bh=+RxX6yDDUTKACjmENTarCLYUpvBQ1bdM4UwM2lr0uO4=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=JiPpED9Pnlqahp7vMNcRrr7kKcUAEwexN3hYkuOPFSwYfaL9pPJcvLhy+27kRvqY1
	 15UZRqy54VNMcvfiQm3BRKY77DnDao11BcHIyezpDmAR0SHc12nqkHgiOAX4LgYHJt
	 wVCQVzqfRKiwrvn5sNgMoaUr/Jt6WcQeppbYhdCw=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <63d361c3-4b6a-1e12-db91-8723e3277252@raptorengineering.com>
Date: Thu, 7 Sep 2023 15:10:56 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v3 1/5] xen/ppc: Implement atomic.h
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693590982.git.sanastasio@raptorengineering.com>
 <917dc5517b69657b48e69c4100234383f5c70e0e.1693590982.git.sanastasio@raptorengineering.com>
 <692dae52-947b-5856-f1b8-5d9f03f78e6a@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <692dae52-947b-5856-f1b8-5d9f03f78e6a@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/5/23 9:58 AM, Jan Beulich wrote:
> On 01.09.2023 20:25, Shawn Anastasio wrote:
>> +static inline atomic_t atomic_compareandswap(atomic_t old, atomic_t new,
>> +                                             atomic_t *v)
>> +{
>> +    atomic_t rc;
>> +    rc.counter = __cmpxchg(&v->counter, old.counter, new.counter, sizeof(int));
> 
> I can't seem to be able to spot where __cmpxchg() is defined. (I really
> only wanted to check why it needs the 4th argument, which here rather
> would want to be e.g. sizeof(v->counter). If it can't be omitted.)
>

As you later saw, it's defined in system.h later in patch 3. This was an
error I made when splitting up the changes into this patchset. If you're
fine with it I'll just add a mention in the commit message that the
definitions in this commit are not yet fully usable.

Also I will change the size parameter to sizeof(v->counter) per your
suggestion.

>> +    return rc;
>> +}
>> +
>> +#define arch_cmpxchg(ptr, o, n)                                                \
>> +    ({                                                                         \
>> +        __typeof__(*(ptr)) o_ = (o);                                           \
>> +        __typeof__(*(ptr)) n_ = (n);                                           \
>> +        (__typeof__(*(ptr))) __cmpxchg((ptr), (unsigned long) o_,              \
>> +                                       (unsigned long) n_, sizeof(*(ptr)));    \
> 
> Nit: Stray blanks again after cast specifiers.
>

Will fix.

>> --- /dev/null
>> +++ b/xen/arch/ppc/include/asm/memory.h
>> @@ -0,0 +1,21 @@
>> +/* SPDX-License-Identifier: GPL-2.0-or-later */
>> +/*
>> + * Copyright (C) IBM Corp. 2005
>> + *
>> + * Authors: Jimi Xenidis <jimix@watson.ibm.com>
>> + */
>> +
>> +#ifndef _ASM_MEMORY_H_
>> +#define _ASM_MEMORY_H_
>> +
>> +#include <xen/config.h>
> 
> As mentioned before - no need for this explicit #include.
>

Will drop.

>> +#ifdef CONFIG_SMP
>> +#define PPC_ATOMIC_ENTRY_BARRIER "sync\n"
>> +#define PPC_ATOMIC_EXIT_BARRIER  "sync\n"
>> +#else
>> +#define PPC_ATOMIC_ENTRY_BARRIER
>> +#define PPC_ATOMIC_EXIT_BARRIER
>> +#endif
> 
> Is this correct, considering that we have no CONFIG_SMP and assume SMP
> in all cases?
> 
> I'm sorry for not paying attention earlier.
>

Good observation, and no problem. I will remove the ifdef and the !SMP
case.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 21:29:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 21:29:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597627.931861 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeMZK-000823-9B; Thu, 07 Sep 2023 21:29:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597627.931861; Thu, 07 Sep 2023 21:29:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeMZK-00081w-6T; Thu, 07 Sep 2023 21:29:42 +0000
Received: by outflank-mailman (input) for mailman id 597627;
 Thu, 07 Sep 2023 21:29:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6Z0z=EX=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qeMZI-00081q-Ju
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 21:29:40 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20620.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::620])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a558bfcd-4dc5-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 23:29:38 +0200 (CEST)
Received: from MW2PR16CA0024.namprd16.prod.outlook.com (2603:10b6:907::37) by
 DS0PR12MB7827.namprd12.prod.outlook.com (2603:10b6:8:146::9) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6745.34; Thu, 7 Sep 2023 21:29:34 +0000
Received: from CO1PEPF000042AB.namprd03.prod.outlook.com
 (2603:10b6:907:0:cafe::80) by MW2PR16CA0024.outlook.office365.com
 (2603:10b6:907::37) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30 via Frontend
 Transport; Thu, 7 Sep 2023 21:29:34 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CO1PEPF000042AB.mail.protection.outlook.com (10.167.243.40) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6768.25 via Frontend Transport; Thu, 7 Sep 2023 21:29:34 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 7 Sep
 2023 16:29:33 -0500
Received: from [192.168.139.126] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Thu, 7 Sep 2023 16:29:31 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a558bfcd-4dc5-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZummQYP4M3023etmkOZoipwjZNuY8ZTI2BDbf6SDNUzaLsxU6sNtHtRic8y80UODHvgX07NAkIl+XBVvnnFZ13XpDOLmBSXmqwHAeoOo+emjREEi01NvV3I/bJVkR7P0W5WVTcc95cq0PfgZgnFVxIjotWohG1wVcjth/axgaYLZN/hV/YPeRLIazB0nE2/tiFLkOZqFHag5AD1Tv0qt/yTnuaM2T6VEft26KT+EBC82QMeThL8guTG7/5b5f7w0WVHiH5FjeTkzohtvJ6LkNDE8NLJedSoLwcs3trOoqTcBQ3ghfKn3ufcz9Y1ok3uq8gr8Dial9cyQRvHtf74WXA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=v7pZLkaL/3fSJFdkzpJCUAbt7g1aaVqlOjGFX6Gd83c=;
 b=cbiVCSaCSOOeNeWmrXRh733nYhzyzZbQm1ghsbvBqHcNIM7rzfWMpo3wTsGB4nUDOPh7hZokzgp+06dnRoQjk4P5UwR79YwZqpulAjZf69/oGwYzaFLqql8mPTxmkoJ4s/yruhe4/RSqUDWZculfXd9KqUMI1RK3T03eqDNsgU+8W2FvElVqlXxJMFJ5A0vgw76u3K7hWjL//UxgpdVmymGeikC1mNwZysXB1WLCeW/xY8CCV9od+Ka7lTlqd1LpbjAepzYAWe4IPfjuDPi5XWAxK3KL5FMJhYrt4kAO/ys0PdDE1qHR1guul9cJqJwMjTfPsFXYf16NxqnnFKfiOw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=v7pZLkaL/3fSJFdkzpJCUAbt7g1aaVqlOjGFX6Gd83c=;
 b=H4wGjq0opVc9H3tlCWKCxpzgl646uzx2hzAYeAnZyCH0CyY4fFh/IuejTghKFYk+PWOpZ7NIDRQc9eRgsA3i5oGRvIjLzgs3atiUUWN4Zx+RkbcaK8X2M94pZ+KJHyxG5+Or5GjqDTNN5gunhzsEPZ76suW5WyeBfJQgGW2Tum8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <d8de036e-8774-ca96-3fa4-1c9bd087ea7d@amd.com>
Date: Thu, 7 Sep 2023 17:29:06 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v5 4/5] xen/vpci: header: status register handler
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Julien
 Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>, <xen-devel@lists.xenproject.org>
References: <20230901045742.235975-1-stewart.hildebrand@amd.com>
 <20230901045742.235975-5-stewart.hildebrand@amd.com>
 <3b816ecd-e7a6-c6a9-9b42-b9287deac111@suse.com>
Content-Language: en-US
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <3b816ecd-e7a6-c6a9-9b42-b9287deac111@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000042AB:EE_|DS0PR12MB7827:EE_
X-MS-Office365-Filtering-Correlation-Id: 09469560-629e-413e-389a-08dbafe987be
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wyuywkRv4HulabvbzsKgaJpHKKV5jYzDiW4HtOVWEKDARlwf/nXwbwPjFcWvYQT8vphW/ZeXJj0t7vvV+5Z0Vwjzl9F85B6c76h57dTpN923QbH1xwauJZcyRAqc8D61r9XMW/zqW8xSGUlwuZ2MYdgxtk1+BApwvPkRsP/sSWC+JmmO8ZnxTdF0G4DE0WuZAOrQlt7uMTWbSK50rB0ieLARLvp6hbmQZ+qBkmRFXmZZqpmkydoJI+df80IUloQ3lN9LPmorFhdaZpXLYprXpmJ+j31u4TpXOJ717oyeYkzeuZWbI6Ldt206yEXdDaYJLiIMsXvGXB/VGBh4pkXKfhdd5rwy8QGuxHfWZ6P4+lC1xcSzWPaxtbJk6DLa1KntSYGTw60W9T2yVLumX5KkDteBR6bRuLDl7ym/wjgJB8Hp6aKoQmBQOC6CDkxihrtZ+mU3icR6GnPggbgpzz60j08pp0MudywsSXleAh71kIlwQJ07thIeRY4sPoyhA3zMZ93y/SNwt55MBhlhluDjojIbuQPq0CyddKvNCa7TU6hxIYiAC8Ov0HT3CFrQv7zMyqS7kObA2oMvdYhnGEy0p6nnYQjC7VFsW3boq8ERrFIbiYhEY9uoHLMtVKrE+ApxCq9UyLNzUYFSuy+quwqe6itT+RMunLgQmHYhSf3QJ0bxkUSb6zWLOMLG6k8wpvuynfd7sltuqZXnwWlgUkyTBnjeEqLAgx6pF9gKRVyb3IWGME0FJIS2JjqPUKrqx69BnCPgQIEtDZ15LJVHVrNKQz0Ml1lfOTS02difdbzuZRhew9GzB5B/qPyzqlmLh1YD8n6XOzEW+afe7EEddqe0nA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(396003)(376002)(346002)(451199024)(1800799009)(82310400011)(186009)(46966006)(36840700001)(40470700004)(478600001)(6666004)(16576012)(316002)(31686004)(6916009)(8676002)(2616005)(5660300002)(44832011)(4326008)(41300700001)(26005)(336012)(426003)(83380400001)(2906002)(36860700001)(8936002)(47076005)(356005)(70206006)(82740400003)(81166007)(36756003)(54906003)(53546011)(86362001)(31696002)(70586007)(40460700003)(40480700001)(36900700001)(43740500002)(357404004);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 21:29:34.1125
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 09469560-629e-413e-389a-08dbafe987be
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000042AB.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7827

On 9/6/23 04:22, Jan Beulich wrote:
> On 01.09.2023 06:57, Stewart Hildebrand wrote:
>> Introduce a handler for the PCI status register, with ability to mask the
>> capabilities bit. The status register contains reserved bits, read-only bits,
>> and write-1-to-clear bits, so introduce bitmasks to handle these in vPCI. If a
>> bit in the bitmask is set, then the special meaning applies:
>>
>>   res_mask: read as zero, write ignore
>>   ro_mask: read normal, write ignore
>>   rw1c_mask: read normal, write 1 to clear
> 
> With the last one's name being descriptive of what the behavior is, would
> it make sense to name the first one "raz_mask"? (Also a question to Roger
> as the maintainer of this code.)

Another possible name is rsvdz_mask. See below.

>> --- a/xen/drivers/vpci/header.c
>> +++ b/xen/drivers/vpci/header.c
>> @@ -413,6 +413,18 @@ static void cf_check cmd_write(
>>          pci_conf_write16(pdev->sbdf, reg, cmd);
>>  }
>>
>> +static uint32_t cf_check status_read(const struct pci_dev *pdev,
>> +                                     unsigned int reg, void *data)
>> +{
>> +    struct vpci_header *header = data;
>> +    uint32_t status = pci_conf_read16(pdev->sbdf, reg);
>> +
>> +    if ( header->mask_cap_list )
>> +        status &= ~PCI_STATUS_CAP_LIST;
>> +
>> +    return status;
>> +}
> 
> Do you actually need this function? Can't you ...
> 
>> @@ -544,6 +556,12 @@ static int cf_check init_bars(struct pci_dev *pdev)
>>      if ( rc )
>>          return rc;
>>
>> +    rc = vpci_add_register_mask(pdev->vpci, status_read, vpci_hw_write16,
>> +                                PCI_STATUS, 2, header, PCI_STATUS_RESERVED_MASK,
>> +                                PCI_STATUS_RO_MASK, PCI_STATUS_RW1C_MASK);
> 
> ... conditionally OR in PCI_STATUS_CAP_LIST right here? Without
> capabilities the CAP_LIST bit becomes kind of reserved anyway.

Hm. The PCI_STATUS_CAP_LIST bit is a read-only bit according to spec. Given the rationale below, we would want to preserve the value of r/o bits during writes, so this would essentially want to become a RsvdP bit. I wasn't planning on adding support for RsvdP bits here since there aren't any proper RsvdP bits in the status register. If instead we are okay with treating the PCI_STATUS_CAP_LIST bit as RsvdZ, then we could do as you suggest, but I'll plan to keep it as is for now.

>> @@ -424,9 +450,13 @@ static void vpci_write_helper(const struct pci_dev *pdev,
>>          uint32_t val;
>>
>>          val = r->read(pdev, r->offset, r->private);
>> +        val &= ~r->res_mask;
>> +        val &= ~r->rw1c_mask;
> 
> Personally I'd fold these two lines into just one (and similarly below).

Will do.

>>          data = merge_result(val, data, size, offset);
>>      }
>>
>> +    data &= ~r->res_mask;
>> +    data &= ~r->ro_mask;
> 
> This seems risky to me. I'd rather see the same value being written back
> for r/o bits, just in case a device doesn't actually implement a bit as
> mandated. 

Regarding writes to read-only bits: okay, I'll assume that Xen should take care of preserving the r/o bits (discarding the guests write value for the r/o bits).

If, on the other hand, we would want to rely on the guest to preserve the r/o bits during a write, then the ro_mask would effectively not be doing anything, so may as well be removed.

In either case, for partial register writes, Xen will take care of preserving the r/o bits for the remaining bytes in the register.

I'll make this change for the next version of the series (assuming Xen will handle preserving the r/o bits).

> For reserved flags it's less clear what's best, because in
> principle they could also become rw1c once defined.

Well, it depends on what version of the spec we read.

PCI Local Bus 3.0 spec section 6.1 says: "On writes, software must ensure that the values of reserved bit positions are preserved." PCI Local Bus 3.0 spec section 6.2.3 also says that we can essentially treat the whole status register as rw1c. Huh, that's odd.

PCI Express Base 4.0 spec defines two reserved bit types:
RsvdP: Reserved and Preserved - Reserved for future RW implementations. Software must preserve the value read for writes to bits.
RsvdZ: Reserved and Zero - Reserved for future RW1C implementations. Software must use 0b for writes to bits.
Both RsvdP and RsvdZ are read as zero.

I'm favoring using the definitions in the newer PCI Express Base 4.0 spec since they are clearer.

Regarding writes to rsvdp bits: there are none of these in the status register according to the PCI Express Base 4.0 spec. The older PCI Local Bus 3.0 spec is in conflict with this definition, but at the same time the PCI Local Bus 3.0 spec also conflicts with itself by saying that the entire status register is essentially a rw1c register with reserved bits that should be preserved, which doesn't make sense. The newer PCI Express Base 4.0 spec is clearer, and appears to have resolved this inconsistency, so I'm favoring adhering to the newer PCI Express Base 4.0 spec.

Regarding writes to rsvdz bits: in this case Xen will write zero to the rsvdz bits (discarding the guests write value). This is how the patch already behaves with the res_mask, but I think renaming it to rsvdz_mask will make it more clear, so I'm inclined to rename it for the next revision of the series.

Regarding reads of rsvdp/rsvdz bits: I'm assuming that Xen should return zero to the guest for reads of reserved bits, regardless of what is actually read from the hardware. I think we already are already on the same page about this, I just wanted to explicitly state it for clarity.

>> --- a/xen/include/xen/pci_regs.h
>> +++ b/xen/include/xen/pci_regs.h
>> @@ -66,6 +66,14 @@
>>  #define  PCI_STATUS_REC_MASTER_ABORT 0x2000 /* Set on master abort */
>>  #define  PCI_STATUS_SIG_SYSTEM_ERROR 0x4000 /* Set when we drive SERR */
>>  #define  PCI_STATUS_DETECTED_PARITY  0x8000 /* Set on parity error */
>> +#define  PCI_STATUS_RESERVED_MASK    0x06
> 
> I'd recommend separating the "derived" constants by a blank line. I'd
> further like to ask that you add two more padding zeros above.

Okay, will do.

>> +#define  PCI_STATUS_RO_MASK (PCI_STATUS_IMM_READY | PCI_STATUS_INTERRUPT | \
>> +    PCI_STATUS_CAP_LIST | PCI_STATUS_CAP_LIST | PCI_STATUS_66MHZ | \
> 
> CAP_LIST twice?

Good catch, it obviously only needs to be there once. I will fix.


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 21:30:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 21:30:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597633.931870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeMaP-00018X-NL; Thu, 07 Sep 2023 21:30:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597633.931870; Thu, 07 Sep 2023 21:30:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeMaP-00018Q-Kp; Thu, 07 Sep 2023 21:30:49 +0000
Received: by outflank-mailman (input) for mailman id 597633;
 Thu, 07 Sep 2023 21:30:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qeMaP-000172-34
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 21:30:49 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cebc74a4-4dc5-11ee-8783-cb3800f73035;
 Thu, 07 Sep 2023 23:30:47 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 5F5E76125E;
 Thu,  7 Sep 2023 21:30:46 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id EC2E4C433C7;
 Thu,  7 Sep 2023 21:30:44 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cebc74a4-4dc5-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694122245;
	bh=SwYxNPn/Kw5sa+SDdClosy4NFn+p95oz2Z6d8Bky08w=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=TXQArCRXs2/BzqRjlHhpPQqZUjjbrcGejhK9uOaanZiS2mGGOXwjhO0WCUZuLb0H7
	 mOtpurgIDqo2j3Dwu+6C6ptTnvAj7usfvrO1I/rCOLmcfjeAlSTMpZO1RHVP4s5DS1
	 xy84pzn93blENWCVwXRPyBzUX7CNt2+8DV+1WhfpwC2XpgAlgXfI1o4rzWSmg1MZMi
	 MVgxQAl7elhyBLc4oBe/8nfbq0vOkEi6jVWdfdsEi0Q3XlNCiHshxZc42HAG9t/jkz
	 Iq4irs18D6mNoFz4Bpm91AA9WhoBATgHSX9o9P+JSJScwA28jkdNB5JrbiYju+PNBz
	 HSWVqQ+IFYZsA==
Date: Thu, 7 Sep 2023 14:30:43 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    Simon Gaiser <simon@invisiblethingslab.com>, 
    "committers@xenproject.org" <committers@xenproject.org>, 
    =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, 
    xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
In-Reply-To: <5364a4af-6447-519f-8a2c-bc1c441b374a@suse.com>
Message-ID: <alpine.DEB.2.22.394.2309071430350.6458@ubuntu-linux-20-04-desktop>
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com> <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com> <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
 <5364a4af-6447-519f-8a2c-bc1c441b374a@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 7 Sep 2023, Jan Beulich wrote:
> On 06.09.2023 22:49, Stefano Stabellini wrote:
> > On Fri, 1 Sep 2023, Jan Beulich wrote:
> >> On 07.08.2023 11:38, Simon Gaiser wrote:
> >>> It seems some firmwares put dummy entries in the ACPI MADT table for non
> >>> existing processors. On my NUC11TNHi5 those have the invalid APIC ID
> >>> 0xff. Linux already has code to handle those cases both in
> >>> acpi_parse_lapic [1] as well as in acpi_parse_x2apic [2]. So add the
> >>> same check to Xen.
> >>>
> >>> Note that on some older (2nd gen Core i) laptop of mine I also saw dummy
> >>> entries with a valid APIC ID. Linux would still ignore those because
> >>> they have !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE. But in Xen
> >>> this check is only active for madt_revision >= 5. But since this version
> >>> check seems to be intentionally I leave that alone.
> >>>
> >>> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f3bf1dbe64b62a2058dd1944c00990df203e8e7a # [1]
> >>> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=10daf10ab154e31237a8c07242be3063fb6a9bf4 # [2]
> >>> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
> >>
> >> This patch was committed with unaddressed review comments. The normal action
> >> in such a case would be to revert, expecting a v2 to arrive. One alternative
> >> here would be a timely incremental patch submission. Another alternative,
> >> considering in particular Thomas's most recent reply, would be to properly
> >> downgrade CPU hotplug support in SUPPORT.md (with a corresponding entry in
> >> CHANGELOG.md).
> > 
> > I am in favor of downgrading physical CPU hotplug support in
> > SUPPORT.md.
> > 
> > I noticed that there is no entry for physical CPU hotplug support in
> > SUPPORT.md today. Should we assume that it is not supported already as
> > it is not listed as supported?
> 
> Hmm, I see
> 
> ## Host hardware support
> 
> ### Physical CPU Hotplug
> 
>     Status, x86: Supported
> 
> pretty close to the top of the file.

Ops, it must have been the case-sensitive search that failed me


> > Specifically, would it be a good idea to add a sentence at the top of
> > the file saying that anything not explicitly listed is not supported?
> 
> Iirc that was the plan to do for 4.18, but then we need to be sure that
> things don't unintentionally become unsupported. I've no clear idea how
> this plan was meant to be carried out, though.

it would be interesting to discuss it again


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 21:45:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 21:45:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597642.931881 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeMor-0003O2-0O; Thu, 07 Sep 2023 21:45:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597642.931881; Thu, 07 Sep 2023 21:45:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeMoq-0003Nv-Tz; Thu, 07 Sep 2023 21:45:44 +0000
Received: by outflank-mailman (input) for mailman id 597642;
 Thu, 07 Sep 2023 21:45:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Shnx=EX=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qeMoq-0003Np-4Q
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 21:45:44 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e3b33809-4dc7-11ee-9b0d-b553b5be7939;
 Thu, 07 Sep 2023 23:45:41 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 3FC8C61387;
 Thu,  7 Sep 2023 21:45:40 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 44A11C433C8;
 Thu,  7 Sep 2023 21:45:38 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e3b33809-4dc7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694123139;
	bh=i5qV3ODWpssPlpo/XFzf12AWAWgnlD+O3LKHQu6YMNI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=P69AP3K0ieAo6nUqEzX5ctbBbWcsWJJcR6C080LPXD7Hueykmmvn2e1h0ubC/xwKr
	 0Fly2dt5Yf50uXpKt1EwZQKnv4B6R9Ubaaz40k5nYRJUO+KgQVY0Qk7TRP2frFlhNZ
	 zOt3ZqqxtRaMUVGx21vL8Nvd0n7NtHK0CT1a3mEs6YD6uFpdPhNxyz1ujZKFrqehaq
	 n39OFp6Qc2qADU1OArgTnzVebawQHBZrnVjrAJIlZ5c9DcIPDRPS7iyPuQOEricE4s
	 LU7x17IvM1//SJOFTo1eLOVGs9mk+21BpYnFcAJrCYn7fHMnT3FX4m1DoKPa2Z0mdn
	 w+HtpRa1wNq2w==
Date: Thu, 7 Sep 2023 14:45:36 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, julien@xen.org, george.dunlap@citrix.com, 
    bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, 
    nicola.vetrini@bugseng.com, 
    Stefano Stabellini <stefano.stabellini@amd.com>, 
    xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2] docs/misra: add 14.3
In-Reply-To: <36b888b2-e7e3-bf70-f599-d22ca34e2dfe@suse.com>
Message-ID: <alpine.DEB.2.22.394.2309071441400.6458@ubuntu-linux-20-04-desktop>
References: <20230907012203.1238090-1-sstabellini@kernel.org> <36b888b2-e7e3-bf70-f599-d22ca34e2dfe@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 7 Sep 2023, Jan Beulich wrote:
> On 07.09.2023 03:22, Stefano Stabellini wrote:
> > @@ -385,6 +386,17 @@ maintainers if you want to suggest a change.
> >       - A loop counter shall not have essentially floating type
> >       -
> >  
> > +   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_03.c>`_
> > +     - Required
> > +     - Controlling expressions shall not be invariant
> > +     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
> > +       checks, and other constructs that are detected as errors by MISRA
> > +       C scanners, managing the configuration of a MISRA C scanner for
> > +       this rule would be unmanageable. Thus, this rule is adopted with
> > +       a project-wide deviation on if ?: and switch statements.
> 
> Do we want to go as far as permitting this uniformly for all switch()? In
> my earlier reply I had included sizeof() for a reason.
 
I agree with you that it would be better to restrict it to only some
switch uses, rather than all of them.

But if we are going to restrict the deviation to switch(sizeof()), which
I think is a good idea and I am in favor, wouldn't it be better to
handle these cases as individual deviations? E.g. docs/misra/safe.json?
I am assuming there are only few cases like that and adding it here
makes the rule more complicated.

I am happy either way but I wanted to provide that as an option.


> Also (nit) there's at least a comma missing after "if". To make clear it's
> keywords that are meant, maybe better use if() / switch()?

OK I'll do that


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 22:24:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 22:24:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597652.931891 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeNPx-00018l-PC; Thu, 07 Sep 2023 22:24:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597652.931891; Thu, 07 Sep 2023 22:24:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeNPx-00018e-Lm; Thu, 07 Sep 2023 22:24:05 +0000
Received: by outflank-mailman (input) for mailman id 597652;
 Thu, 07 Sep 2023 22:24:04 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeNPw-00018U-Hn; Thu, 07 Sep 2023 22:24:04 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeNPw-0005pd-F4; Thu, 07 Sep 2023 22:24:04 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeNPv-0002rh-Sz; Thu, 07 Sep 2023 22:24:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeNPv-0006Lf-Se; Thu, 07 Sep 2023 22:24:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=gNEYGXQwUFyhlqNnMqZiVpjmDM/mncHZzWzEtqNdr/M=; b=r+Z5WAgqC3DpPh/8cTasENtM+I
	UtYFN1w/p1SHv0NWC1gqeW6imy3WMTh/X7xsOuF7Jwox4tPzn2d8NkukVub7OR6qd7SpNIX8eja3u
	chEcr54Ctp6NY895o5DkvJRR4h3mb//11Plj1Sh6OPtuQjYgpwxKDcC2K/oa5DkKbHVo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182714-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 182714: tolerable FAIL - PUSHED
X-Osstest-Failures:
    libvirt:test-arm64-arm64-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=bfe53e9145cd5996a791c5caff0686572b850f82
X-Osstest-Versions-That:
    libvirt=abecd6633e2b5c191080b6838c4c7658af3fddd8
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 07 Sep 2023 22:24:03 +0000

flight 182714 libvirt real [real]
flight 182724 libvirt real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182714/
http://logs.test-lab.xenproject.org/osstest/logs/182724/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-arm64-arm64-libvirt-qcow2 17 guest-start/debian.repeat fail pass in 182724-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182642
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182642
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182642
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              bfe53e9145cd5996a791c5caff0686572b850f82
baseline version:
 libvirt              abecd6633e2b5c191080b6838c4c7658af3fddd8

Last test of basis   182642  2023-09-06 04:20:16 Z    1 days
Testing same since   182714  2023-09-07 04:18:47 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrea Bolognani <abologna@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>
  Peter Krempa <pkrempa@redhat.com>
  Tim Wiederhake <twiederh@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   abecd6633e..bfe53e9145  bfe53e9145cd5996a791c5caff0686572b850f82 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Sep 07 23:12:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 07 Sep 2023 23:12:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597662.931901 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeOAx-0007lm-B0; Thu, 07 Sep 2023 23:12:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597662.931901; Thu, 07 Sep 2023 23:12:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeOAx-0007lf-8D; Thu, 07 Sep 2023 23:12:39 +0000
Received: by outflank-mailman (input) for mailman id 597662;
 Thu, 07 Sep 2023 23:12:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=myun=EX=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qeOAw-0007lZ-Kl
 for xen-devel@lists.xenproject.org; Thu, 07 Sep 2023 23:12:38 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 07fb3724-4dd4-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 01:12:36 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 2EF968285564;
 Thu,  7 Sep 2023 18:12:35 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id r5v2iUt8Xvrv; Thu,  7 Sep 2023 18:12:33 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 468DB8285A39;
 Thu,  7 Sep 2023 18:12:33 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 6jPOcKuFtz8I; Thu,  7 Sep 2023 18:12:33 -0500 (CDT)
Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id E63978285564;
 Thu,  7 Sep 2023 18:12:32 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 07fb3724-4dd4-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 468DB8285A39
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694128353; bh=XIuqWwrRxWUn6c/54htO2uK/ZIZSHA4Ps79G85L7VqA=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=iX7VP/7KGbYoamnjpS+ocoEgzghuhzLmJuN0QkUYTqkRQxWhh5zDoj7kUTjI854ED
	 TtPVTGc4/IJxZF+KkQXK/gFDGxY95ubkx99XhJHsCvJZZiH9o5GQHFbRPFMCHzq74c
	 MyanoUQ5sKBRIcZecTSyJIQCQUZYytir2orUP+D0=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <09e0f475-627c-1a8a-6175-b8d32f744053@raptorengineering.com>
Date: Thu, 7 Sep 2023 18:12:32 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v3 2/5] xen/ppc: Implement bitops.h
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693591462.git.sanastasio@raptorengineering.com>
 <63e66eed26da8f957315cb1db05693b1799ee7ad.1693591462.git.sanastasio@raptorengineering.com>
 <003690cf-e34b-2e61-1166-86bcfd9da3b7@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <003690cf-e34b-2e61-1166-86bcfd9da3b7@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/5/23 10:19 AM, Jan Beulich wrote:
> On 01.09.2023 20:25, Shawn Anastasio wrote:
>> Implement bitops.h, based on Linux's implementation as of commit
>> 5321d1b1afb9a17302c6cec79f0cbf823eb0d3fc. Though it is based off of
>> Linux's implementation, this code diverges significantly in a number of
>> ways:
>>   - Bitmap entries changed to 32-bit words to match X86 and Arm on Xen
>>   - PPC32-specific code paths dropped
>>   - Formatting completely re-done to more closely line up with Xen.
>>     Including 4 space indentation.
> 
> Isn't ...
> 
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>> ---
>> v3:
>>   - Fix style of inline asm blocks.
>>   - Fix underscore-prefixed macro parameters/variables
>>   - Use __builtin_popcount for hweight* implementation
> 
> ... this also a divergence worth calling out?
>

Sure, I could mention that. But the hweight implementation from the
earlier patch diverged from linux's implementation too, for what it's
worth.

>> --- a/xen/arch/ppc/include/asm/bitops.h
>> +++ b/xen/arch/ppc/include/asm/bitops.h
>> @@ -1,9 +1,333 @@
>> +/* SPDX-License-Identifier: GPL-2.0-or-later */
>> +/*
>> + * Adapted from Linux's arch/powerpc/include/asm/bitops.h.
>> + *
>> + * Merged version by David Gibson <david@gibson.dropbear.id.au>.
>> + * Based on ppc64 versions by: Dave Engebretsen, Todd Inglett, Don
>> + * Reed, Pat McCarthy, Peter Bergner, Anton Blanchard.  They
>> + * originally took it from the ppc32 code.
>> + */
>>  #ifndef _ASM_PPC_BITOPS_H
>>  #define _ASM_PPC_BITOPS_H
>>
>> +#include <asm/memory.h>
>> +
>> +#define __set_bit(n, p)         set_bit(n, p)
>> +#define __clear_bit(n, p)       clear_bit(n, p)
>> +
>> +#define BITOP_BITS_PER_WORD     32
>> +#define BITOP_MASK(nr)          (1UL << ((nr) % BITOP_BITS_PER_WORD))
> 
> With the switch to 32-bit operations, doesn't this want to be 1U?
>

Sure, I'll make that change.

>> +#define BITOP_WORD(nr)          ((nr) / BITOP_BITS_PER_WORD)
>> +#define BITS_PER_BYTE           8
>> +
>>  /* PPC bit number conversion */
>> -#define PPC_BITLSHIFT(be)	(BITS_PER_LONG - 1 - (be))
>> -#define PPC_BIT(bit)		(1UL << PPC_BITLSHIFT(bit))
>> -#define PPC_BITMASK(bs, be)	((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
>> +#define PPC_BITLSHIFT(be)    (BITS_PER_LONG - 1 - (be))
>> +#define PPC_BIT(bit)         (1UL << PPC_BITLSHIFT(bit))
>> +#define PPC_BITMASK(bs, be)  ((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
>> +
>> +/* Macro for generating the ***_bits() functions */
>> +#define DEFINE_BITOP(fn, op, prefix)                                           \
>> +static inline void fn(unsigned long mask,                                      \
>> +                      volatile unsigned int *p_)                               \
>> +{                                                                              \
>> +    unsigned long old;                                                         \
>> +    unsigned int *p = (unsigned int *)p_;                                      \
>> +    asm volatile ( prefix                                                      \
>> +                   "1: lwarx %0,0,%3,0\n"                                      \
>> +                   #op "%I2 %0,%0,%2\n"                                        \
>> +                   "stwcx. %0,0,%3\n"                                          \
>> +                   "bne- 1b\n"                                                 \
>> +                   : "=&r" (old), "+m" (*p)                                    \
>> +                   : "rK" (mask), "r" (p)                                      \
>> +                   : "cc", "memory" );                                         \
>> +}
>> +
>> +DEFINE_BITOP(set_bits, or, "")
>> +DEFINE_BITOP(change_bits, xor, "")
>> +
>> +#define DEFINE_CLROP(fn, prefix)                                               \
>> +static inline void fn(unsigned long mask, volatile unsigned int *_p)           \
> 
> Leftover leading underscore.
>

Good catch. Will fix.

>> +{                                                                              \
>> +    unsigned long old;                                                         \
>> +    unsigned int *p = (unsigned int *)_p;                                      \
>> +    asm volatile ( prefix                                                      \
>> +                   "1: lwarx %0,0,%3,0\n"                                      \
>> +                   "andc %0,%0,%2\n"                                           \
>> +                   "stwcx. %0,0,%3\n"                                          \
>> +                   "bne- 1b\n"                                                 \
>> +                   : "=&r" (old), "+m" (*p)                                    \
>> +                   : "r" (mask), "r" (p)                                       \
>> +                   : "cc", "memory" );                                         \
>> +}
>> +
>> +DEFINE_CLROP(clear_bits, "")
>> +
>> +static inline void set_bit(int nr, volatile void *addr)
>> +{
>> +    set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
>> +}
>> +static inline void clear_bit(int nr, volatile void *addr)
>> +{
>> +    clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
>> +}
>> +
>> +/**
>> + * test_bit - Determine whether a bit is set
>> + * @nr: bit number to test
>> + * @addr: Address to start counting from
>> + */
>> +static inline int test_bit(int nr, const volatile void *addr)
>> +{
>> +    const volatile unsigned long *p = (const volatile unsigned long *)addr;
>> +    return 1 & (p[BITOP_WORD(nr)] >> (nr & (BITOP_BITS_PER_WORD - 1)));
>> +}
>> +
>> +static inline unsigned long test_and_clear_bits(unsigned long mask, volatile void *_p)
> 
> Again. And there are more. Yet here (and below) ...
>

Will fix all occurrences in this file.

>> +{
>> +    unsigned long old, t;
>> +    unsigned int *p = (unsigned int *)_p;
>> +
>> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
>> +                   "1: lwarx %0,0,%3,0\n"
>> +                   "andc %1,%0,%2\n"
>> +                   "stwcx. %1,0,%3\n"
>> +                   "bne- 1b\n"
>> +                   PPC_ATOMIC_EXIT_BARRIER
>> +                   : "=&r" (old), "=&r" (t)
>> +                   : "r" (mask), "r" (p)
>> +                   : "cc", "memory" );
> 
> ... do you actually need the helper variable, when there's no "+m"
> constraint operand?
>

Good point, I'm not sure why the original Linux implementation had it
this way. This also would apply to the DEFINE_TESTOP macro below.

>> +    return (old & mask);
>> +}
>> +
>> +static inline int test_and_clear_bit(unsigned int nr,
>> +                                     volatile void *addr)
>> +{
>> +    return test_and_clear_bits(BITOP_MASK(nr), addr + BITOP_WORD(nr)) != 0;
>> +}
>> +
>> +#define DEFINE_TESTOP(fn, op, eh)                                              \
>> +static inline unsigned long fn(unsigned long mask, volatile unsigned int *_p)  \
>> +{                                                                              \
>> +    unsigned long old, t;                                                      \
>> +    unsigned int *p = (unsigned int *)_p;                                      \
>> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER                                    \
>> +                   "1: lwarx %0,0,%3,%4\n"                                     \
>> +                   #op "%I2 %1,%0,%2\n"                                        \
>> +                   "stwcx. %1,0,%3\n"                                          \
>> +                   "bne- 1b\n"                                                 \
>> +                   PPC_ATOMIC_EXIT_BARRIER                                     \
>> +                   : "=&r" (old), "=&r" (t)                                    \
>> +                   : "rK" (mask), "r" (p), "n" (eh)                            \
>> +                   : "cc", "memory" );                                         \
>> +    return (old & mask);                                                       \
>> +}
>> +
>> +DEFINE_TESTOP(test_and_set_bits, or, 0)
> 
> Why can't test_and_clear_bits() not use this macro-ization? And if it
> can't and hence there's only this single use, wouldn't it make sense
> to avoid going through a macro here, too?
>

I've just tried this, but unfortunately the "rK" constraint on the mask
operand only works when instructions have both a reg/reg/reg as well as
a reg/reg/imm16 form. This is the case for `or` but not `andc`. I guess
it would be better to keep the two separate implementations rather than
try to accomodate both cases in the macro somehow (e.g, by making the
constraint's type a macro parameter as well).

I can also change the macro template into a standard function for just
test_and_set_bits, given that it's the only user as you pointed out.

As for your previous observation about the superfluous `p` variable, it
would seem the same applies to the macro here. Other than casting away
the volatile qualifier on `p_` it doesn't seem to be doing much, so I'm
inclined to remove it.

>> +static inline int test_and_set_bit(unsigned long nr, volatile void *addr)
>> +{
>> +    return test_and_set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr +
>> +                                             BITOP_WORD(nr)) != 0;
> 
> This wants wrapping differently, e.g.
> 
> static inline int test_and_set_bit(unsigned long nr, volatile void *addr)
> {
>     return test_and_set_bits(BITOP_MASK(nr),
>                              (volatile unsigned int *)addr +
>                              BITOP_WORD(nr)) != 0;
> }
> 
> or
> 
> static inline int test_and_set_bit(unsigned long nr, volatile void *addr)
> {
>     return test_and_set_bits(
>                BITOP_MASK(nr),
>                (volatile unsigned int *)addr + BITOP_WORD(nr)) != 0;
> }
> 

Will fix to use the former style.

>> +#define flsl(x) generic_flsl(x)
>> +#define fls(x) generic_fls(x)
>> +#define ffs(x) ({ unsigned int t_ = (x); fls(t_ & - t_); })
>> +#define ffsl(x) ({ unsigned long t_ = (x); flsl(t_ & - t_); })
> 
> Nit: No blanks after unary operators, please.
>

Will fix.

>> +/* Based on linux/include/asm-generic/bitops/ffz.h */
>> +/*
>> + * ffz - find first zero in word.
>> + * @word: The word to search
>> + *
>> + * Undefined if no zero exists, so code should check against ~0UL first.
>> + */
>> +#define ffz(x)  __ffs(~(x))
> 
> Nit: Stray double padding blank?
>

Will fix.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 00:21:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 00:21:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597670.931911 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qePEz-0008Tn-DA; Fri, 08 Sep 2023 00:20:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597670.931911; Fri, 08 Sep 2023 00:20:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qePEz-0008Tg-9B; Fri, 08 Sep 2023 00:20:53 +0000
Received: by outflank-mailman (input) for mailman id 597670;
 Fri, 08 Sep 2023 00:20:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hmm/=EY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qePEx-0008TZ-FC
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 00:20:51 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8dfbb1aa-4ddd-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 02:20:47 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id BB284CE1AFD;
 Fri,  8 Sep 2023 00:20:44 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 88321C433C9;
 Fri,  8 Sep 2023 00:20:41 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8dfbb1aa-4ddd-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694132443;
	bh=mzeFucBnOl/LPbkdZc2Z2dr7TPSRTCHhQ+NI/ZgULVU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=YU0ALD3bytPHvsb230gsnXp/qPCCQMFCpVvasD1N0fg7bZPYBhIMmFXivro5hNt9u
	 4B1hTdX+Vyxe+kwJHial+fNZW/NA8YawK8s3HdZ6a5ycLrM6KnEyoZj/x+kRTrp5Wm
	 s2aQv3imZlsVWnVH7rlVPoaIN6F2qsCIEh4+NNuU3xdHiuqfhWz9+MZk7xmCOqwgdQ
	 glADMQ6L16d1KowLQTamelrkfM9tqj8aT6AHDN2mqjlL8P1NObd5KwCjO/e7VsgswZ
	 v2uZjWlHV/iDVuq1ors84WlpAiNK+elTEvLPUl89gbjp+5Q8a52zq2unne/86FUh50
	 2lsCYmdAXSVdw==
Date: Thu, 7 Sep 2023 17:20:40 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, 
    michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 1/3] docs/misra: add documentation skeleton for MISRA
 C:2012 Dir 4.1
In-Reply-To: <e74433904abe30e2e9e030f663a7a87813dabd24.1693558913.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309071659440.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com> <e74433904abe30e2e9e030f663a7a87813dabd24.1693558913.git.nicola.vetrini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 1 Sep 2023, Nicola Vetrini wrote:
> The aforementioned directive requires the project to supply documentation
> on the measures taken towards the minimization of run-time failures.
> 
> The actual content of the documentation is yet to be written.
> 
> The 'rules.rst' file is updated accordingly to mention the newly
> added documentation.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
>  docs/misra/C-runtime-failures.rst | 239 ++++++++++++++++++++++++++++++
>  docs/misra/rules.rst              |   7 +-
>  2 files changed, 245 insertions(+), 1 deletion(-)
>  create mode 100644 docs/misra/C-runtime-failures.rst
> 
> diff --git a/docs/misra/C-runtime-failures.rst b/docs/misra/C-runtime-failures.rst
> new file mode 100644
> index 000000000000..0d8d5adce231
> --- /dev/null
> +++ b/docs/misra/C-runtime-failures.rst
> @@ -0,0 +1,239 @@
> +===================================================================
> +Measures taken towards the minimization of Run-time failures in Xen
> +===================================================================
> +
> +This document specifies which procedures and techinques are used troughout the
> +Xen codebase to prevent or minimize the impact of certain classes of run-time
> +errors that can occurr in the execution of a C program, due to the very minimal
> +built-in checks that are present in the language.
> +
> +The presence of such documentation is requested by MISRA C:2012 Directive 4.1,
> +whose headline states: "Run-time failures shall be minimized".
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: overflow
> +________________________________________________
> +
> +To be written.
> +Example: Pervasive use of assertions and extensive test suite.

Can we just say:
Pervasive use of assertions and extensive test suite.

Without "Example:" and without "To be written". It is clear that more
information is needed but we don't need to repeat it every time.



> +Documentation for MISRA C:2012 Dir 4.1: unexpected wrapping
> +___________________________________________________________
> +
> +To be written.
> +Example: The only wrapping the is present in the code concerns
> +unsigned integers and they are all expected.

Same here, and also below (I won't repeat it every time)


> +Documentation for MISRA C:2012 Dir 4.1: invalid shift
> +_____________________________________________________
> +
> +To be written.
> +Example: Pervasive use of assertions and extensive test suite.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: division/remainder by zero
> +__________________________________________________________________
> +
> +To be written.
> +Example:
> +There division or remainder operations in the project code ensure that
> +their second argument is never zero.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: unsequenced side effects
> +________________________________________________________________
> +
> +To be written.
> +Example:
> +No function in this project is meant to be executed from interrupt handlers
> +or in multi-threading environments.

This would not be true. We have code that is executed in interrupt
handlers, but we take care to use spinlocks and/or disable interrupts at
the right locations to avoid unsequenced side effects



> +Documentation for MISRA C:2012 Dir 4.1: read from uninitialized automatic object
> +________________________________________________________________________________
> +
> +To be written.
> +Example:
> +Automatic variables are used to store temporary parameters and they
> +are always initialized to either a default value or a proper value
> +before usage.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: read from uninitialized allocated object
> +________________________________________________________________________________
> +
> +To be written.
> +Example:
> +The code does not use dynamically allocated storage.

We do use dynamically allocated storage with xzalloc but xzalloc
initializes the object to zero


> +Documentation for MISRA C:2012 Dir 4.1: write to string literal or const object
> +_______________________________________________________________________________
> +
> +To be written.
> +Example:
> +The toolchain puts every string literal and const object into a read-only
> +section of memory.  The hardware exception raised when a write is attempted
> +on such a memory section is correctly handled.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: non-volatile access to volatile object
> +______________________________________________________________________________
> +
> +To be written.
> +Example:
> +Volatile access is limited to registers that are always accessed
> +through macros or inline functions.

Or very specific limited code chucks that are only used to access a
register


> +Documentation for MISRA C:2012 Dir 4.1: access to dead allocated object
> +_______________________________________________________________________
> +
> +To be written.
> +Example:
> +The code does not use dynamically allocated storage.

We do use dynamically allocated storage, but in a safety configuration
is used only in very limited ways at runtime (it is "almost" only used
at boot time). We use Coverity regularly to scan the code which I
believe can detect non-freed allocated objects.


> +Documentation for MISRA C:2012 Dir 4.1: access to dead automatic object
> +_______________________________________________________________________
> +
> +To be written.
> +Example:
> +Pointers to automatic variables are never returned, nor stored in
> +wider-scoped objects.  No function does the same on any pointer
> +received as a parameter.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: access to dead thread object
> +____________________________________________________________________
> +
> +To be written.
> +Example:
> +The program does not use per-thread variables.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: access using null pointer
> +_________________________________________________________________
> +
> +To be written.
> +Example:
> +All possibly null pointers are checked before access.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: access using invalid pointer
> +____________________________________________________________________
> +
> +To be written.
> +Example:
> +Usage of pointers is limited.  Pointers passed as parameters are
> +always checked for validity.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: access using out-of-bounds pointer
> +__________________________________________________________________________
> +
> +To be written.
> +Example:
> +Pointers are never uses to access arrays: indices are always used
> +instead.

I am not certain this is true. I would say instead "Pointers are never
used to access arrays without checking for the array size first"


> +Documentation for MISRA C:2012 Dir 4.1: access using unaligned pointer
> +______________________________________________________________________
> +
> +To be written.
> +Example:
> +Pointer conversion that may result in unaligned pointers are never used.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: mistyped access to object
> +_________________________________________________________________
> +
> +To be written.
> +Example:
> +Pointer conversions that may result in mistyped accesses to objects
> +are never used.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: mistyped access to function
> +___________________________________________________________________
> +
> +To be written.
> +Example:
> +The code never uses function pointers.

We do use function pointers. What does it mean "mistyped access to
function"? Also wouldn't this class of type error be detected by
gcc/eclair/cppcheck/coverity?


> +Documentation for MISRA C:2012 Dir 4.1: invalid pointer arithmetic
> +__________________________________________________________________
> +
> +To be written.
> +Example:
> +Pointer arithmetic is never used.

I think it might be used sometimes. I would say: "Pointer arithmetic is
never used without checking object boundaries"


> +Documentation for MISRA C:2012 Dir 4.1: invalid pointer comparison
> +__________________________________________________________________
> +
> +To be written.
> +Example:
> +Arrays are always accessed using indices instead of pointers.  Pointers
> +are only compared to NULL.

I would say instead that pointers to different objects are never
compared (expect for pointers that are not really pointers but actually
linker symbols but they are deviated)


> +Documentation for MISRA C:2012 Dir 4.1: overlapping copy
> +________________________________________________________
> +
> +To be written.
> +Example:
> +The code never uses memcpy() and does not perform assignment of
> +overlapping objects (which is doable only via pointers).

We do use memcpy but we never use it to copy overlapping objects.


> +Documentation for MISRA C:2012 Dir 4.1: invalid arguments to function
> +_____________________________________________________________________
> +
> +To be written.
> +Example:
> +All parameters to functions are checked for validity.

this..

> +Documentation for MISRA C:2012 Dir 4.1: returned function error
> +_______________________________________________________________
> +
> +To be written.
> +Example:
> +All functions that may produce an error, do returns a suitable status code
> +that is checked at each call site.

.. and this are aspirational, in the sense that we wish they were true
in all cases but they are not today. Is that OK to write it anyway as an
explanation?


> +
> +Documentation for MISRA C:2012 Dir 4.1: tainted input
> +_____________________________________________________
> +
> +To be written.
> +Example:
> +All parameters of all functions in the API are checked before being used.

I would clarify saying "external ABI" instead of API


> +Documentation for MISRA C:2012 Dir 4.1: data race
> +_________________________________________________
> +
> +To be written.
> +Example:
> +No function in this code is meant to be executed from interrupt handlers or
> +in a multi-threading environment.

We do have multiple "threads" and code executed from interrupt handlers.
I would say instead that we protect data using spinlocks and other forms
of locks appropriately.


> +Documentation for MISRA C:2012 Dir 4.1: invariant violation
> +___________________________________________________________
> +
> +To be written.

What's an invariant violation?


> +Documentation for MISRA C:2012 Dir 4.1: communication error
> +___________________________________________________________
> +
> +To be written.
> +Example:
> +This project does not involve any external communication.
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 34916e266aa5..84bb57c8e908 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -47,7 +47,12 @@ maintainers if you want to suggest a change.
>     * - `Dir 2.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_02_01.c>`_
>       - Required
>       - All source files shall compile without any compilation errors
> -     -
> +
> +   * - `Dir 4.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_01.c>`_
> +     - Required
> +     - Run-time failures shall be minimized
> +     - The strategies adopted by Xen to prevent certain classes of runtime
> +       failures will be documented by `C-runtime-failures.rst <docs/misra/C-runtime-failures.rst>`_

I would say "is documented" because we don't want to go back and change
rules.rst if/when we update C-runtime-failures.rst

Also (nit) you can wrap around at 80 chars to make it easier to read as
it will still be displayed the same way by gitlab and other RST
renderers



>     * - `Dir 4.7 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_07.c>`_
>       - Required


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 00:23:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 00:23:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597676.931921 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qePHG-0000cg-P4; Fri, 08 Sep 2023 00:23:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597676.931921; Fri, 08 Sep 2023 00:23:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qePHG-0000cZ-Lf; Fri, 08 Sep 2023 00:23:14 +0000
Received: by outflank-mailman (input) for mailman id 597676;
 Fri, 08 Sep 2023 00:23:14 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hmm/=EY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qePHG-0000cT-6x
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 00:23:14 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e50d3bd5-4ddd-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 02:23:12 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id AF696B81F95;
 Fri,  8 Sep 2023 00:23:11 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8E5C2C433C8;
 Fri,  8 Sep 2023 00:23:08 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e50d3bd5-4ddd-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694132590;
	bh=wHvMk1qNkBOhlcF2JHLPUys28/Jn+/zQzN6CQPrO+fo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=S2X3x5LgQr5pcVGlFHvPjXU65m7LrTRtwizo5gFLbkjlK9KzUxrNh/dvm0rVu4xs8
	 MxBj2BglvyBc/Bzbl8qIAPO2Gb6vO0vs0x6CzH2etDO9iQHxVfv6V0ea1gpJFgsq2n
	 zeKlw9o72K72/hWcZ+QgLMPanQCFkA6cSRVCruZUegEQFp1LP637LynIMpw2Kz3YG5
	 33q8H/a6GFcSBLXyKC4acq5rsaKlzmolfNIr5RaGR3Qep383xIhTURFP581JapWXce
	 28C5XWXlTF7Qy4DlPpUsCiMXnB/T3KurHsC6GYqCQa/6rrEc2NpalzK1OjMPKONaqu
	 t4Lr9Rf+cvukg==
Date: Thu, 7 Sep 2023 17:23:07 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, 
    michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, Wei Liu <wl@xen.org>, 
    Anthony PERARD <anthony.perard@citrix.com>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>
Subject: Re: [XEN PATCH 2/3] docs: make the docs for MISRA C:2012 Dir 4.1
 visible to ECLAIR
In-Reply-To: <bf38efce3ac551fc95eaf1935ce7f574a7804df2.1693558913.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309071722000.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com> <bf38efce3ac551fc95eaf1935ce7f574a7804df2.1693558913.git.nicola.vetrini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 1 Sep 2023, Nicola Vetrini wrote:
> To be able to check for the existence of the necessary subsections in
> the documentation for MISRA C:2012 Dir 4.1, ECLAIR needs to have a source
> file that is built.
> 
> This file is generated from 'C-runtime-failures.rst' in docs/misra
> and the configuration is updated accordingly.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> Changes from RFC:
> - Dropped unused/useless code
> - Revised the sed command
> - Revised the clean target
> ---
>  docs/Makefile       |  7 ++++++-
>  docs/misra/Makefile | 17 +++++++++++++++++
>  2 files changed, 23 insertions(+), 1 deletion(-)
>  create mode 100644 docs/misra/Makefile
> 
> diff --git a/docs/Makefile b/docs/Makefile
> index 966a104490ac..ff991a0c3ca2 100644
> --- a/docs/Makefile
> +++ b/docs/Makefile
> @@ -43,7 +43,7 @@ DOC_PDF  := $(patsubst %.pandoc,pdf/%.pdf,$(PANDOCSRC-y)) \
>  all: build
>  
>  .PHONY: build
> -build: html txt pdf man-pages figs
> +build: html txt pdf man-pages figs misra
>  
>  .PHONY: sphinx-html
>  sphinx-html:
> @@ -66,9 +66,14 @@ endif
>  .PHONY: pdf
>  pdf: $(DOC_PDF)
>  
> +.PHONY: misra
> +misra:
> +	$(MAKE) -C misra
> +
>  .PHONY: clean
>  clean: clean-man-pages
>  	$(MAKE) -C figs clean
> +	$(MAKE) -C misra clean
>  	rm -rf .word_count *.aux *.dvi *.bbl *.blg *.glo *.idx *~
>  	rm -rf *.ilg *.log *.ind *.toc *.bak *.tmp core
>  	rm -rf html txt pdf sphinx/html
> diff --git a/docs/misra/Makefile b/docs/misra/Makefile
> new file mode 100644
> index 000000000000..8ea0505c8a20
> --- /dev/null
> +++ b/docs/misra/Makefile
> @@ -0,0 +1,17 @@
> +TARGETS := C-runtime-failures.o
> +
> +all: $(TARGETS)
> +
> +# sed is used in place of cat to prevent occurrences of '*/'
> +# in the .rst from breaking the compilation

Please expand this comment with what you are doing in this makefile and
specifically what kind of .c file you are generating and why.

Everything else looks good.


> +$(TARGETS:.o=.c): %.c: %.rst
> +	echo "/*\n" > $@.tmp
> +	sed -e 's|\*/|*//*|g' $< >> $@.tmp
> +	echo "\n*/" >> $@.tmp
> +	mv $@.tmp $@
> +
> +%.o: %.c
> +	$(CC) -c $< -o $@
> +
> +clean:
> +	rm -f C-runtime-failures.c *.o *.tmp
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 00:26:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 00:26:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597684.931931 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qePK0-0001E3-5a; Fri, 08 Sep 2023 00:26:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597684.931931; Fri, 08 Sep 2023 00:26:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qePK0-0001Dw-23; Fri, 08 Sep 2023 00:26:04 +0000
Received: by outflank-mailman (input) for mailman id 597684;
 Fri, 08 Sep 2023 00:26:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hmm/=EY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qePJz-0001Dq-47
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 00:26:03 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org
 [2604:1380:4601:e00::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 49628b90-4dde-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 02:26:00 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 216A0B81FDD;
 Fri,  8 Sep 2023 00:26:00 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 58CC5C433C7;
 Fri,  8 Sep 2023 00:25:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 49628b90-4dde-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694132758;
	bh=VDEv4mdKxdfNnslmCr8MwLQG5twiGXImznZZQUe5iGA=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=OR5j4YNJw5seoolJqh3nxsQ6RK7zWDxz+bpGuCVMOVAc22+0ogX14RYiLm+ZpKwFG
	 gyoONaKTml3R2nR0MHxoJkOtbhsG6+tNZBROth0ZuFzP7INpi0NL1DWncm2Br2Ia0b
	 c2BnX/CRbD8B1n5MwqiwKtoTUjpZAtFldoLiQyaqiM+Ov6o3c61hsKcn2LcgXIs4fK
	 5RJarmE0QDrI4E5ErZcqUDu9k4Kgi9izqtegqLOoTy9uKiyTDwzm8H0+Xu6Q4imXQe
	 C/T9BNUPAkznJzToWfBmLJzEvUedWIg3+q82BZKkZ+gjZdQwe/LeeVdhnSLWB1zdUA
	 5/A7TQnp6NNZw==
Date: Thu, 7 Sep 2023 17:25:55 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, 
    michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, Simone Ballarin <simone.ballarin@bugseng.com>, 
    Doug Goldstein <cardoe@cardoe.com>
Subject: Re: [XEN PATCH 3/3] automation/eclair: build docs/misra to address
 MISRA C:2012 Dir 4.1
In-Reply-To: <ade1b214fc0e3a59c007ae2cdff78dc33b614c64.1693558913.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309071723400.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com> <ade1b214fc0e3a59c007ae2cdff78dc33b614c64.1693558913.git.nicola.vetrini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 1 Sep 2023, Nicola Vetrini wrote:
> The documentation pertaining Directive 4.1 is contained in docs/misra.
> The build script driving the analysis is amended to allow ECLAIR to
> analyze such file.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
>  automation/eclair_analysis/build.sh   | 11 ++++++++---
>  automation/eclair_analysis/prepare.sh |  5 +++--
>  2 files changed, 11 insertions(+), 5 deletions(-)
> 
> diff --git a/automation/eclair_analysis/build.sh b/automation/eclair_analysis/build.sh
> index ec087dd822fa..556ed698bf8b 100755
> --- a/automation/eclair_analysis/build.sh
> +++ b/automation/eclair_analysis/build.sh
> @@ -34,11 +34,16 @@ else
>  fi
>  
>  (
> -  cd xen
> -
>    make "-j${PROCESSORS}" "-l${PROCESSORS}.0"    \
>         "CROSS_COMPILE=${CROSS_COMPILE}"         \
>         "CC=${CROSS_COMPILE}gcc-12"              \
>         "CXX=${CROSS_COMPILE}g++-12"             \
> -       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"
> +       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"     \
> +       -C docs misra

I don't think you need all these options to generate docs and misra.
Probably it would be sufficient just make -C docs misra

However given that they are not harmful:

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> +  make "-j${PROCESSORS}" "-l${PROCESSORS}.0"    \
> +       "CROSS_COMPILE=${CROSS_COMPILE}"         \
> +       "CC=${CROSS_COMPILE}gcc-12"              \
> +       "CXX=${CROSS_COMPILE}g++-12"             \
> +       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"     \
> +			 -C xen
>  )
> diff --git a/automation/eclair_analysis/prepare.sh b/automation/eclair_analysis/prepare.sh
> index 275a1a3f517c..452e309b658b 100755
> --- a/automation/eclair_analysis/prepare.sh
> +++ b/automation/eclair_analysis/prepare.sh
> @@ -35,8 +35,9 @@ else
>  fi
>  
>  (
> -    cd xen
> -    cp "${CONFIG_FILE}" .config
> +    ./configure
> +    cp "${CONFIG_FILE}" xen/.config
>      make clean
> +    cd xen
>      make -f ${script_dir}/Makefile.prepare prepare
>  )
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 00:27:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 00:27:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597690.931941 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qePL7-0001m0-EF; Fri, 08 Sep 2023 00:27:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597690.931941; Fri, 08 Sep 2023 00:27:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qePL7-0001lt-B8; Fri, 08 Sep 2023 00:27:13 +0000
Received: by outflank-mailman (input) for mailman id 597690;
 Fri, 08 Sep 2023 00:27:11 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qePL5-0001lh-Tz; Fri, 08 Sep 2023 00:27:11 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qePL5-0000de-PW; Fri, 08 Sep 2023 00:27:11 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qePL5-0005gv-9f; Fri, 08 Sep 2023 00:27:11 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qePL5-0004sE-99; Fri, 08 Sep 2023 00:27:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=25bD9/l8pKPQb4b/rXfGMBCcj4fHC8PS6gOpDQSPyWs=; b=0juFaL1CKYlpSGjxY/J4GN+7mp
	/3p5KNIQ8+bXUwf5Qm28R2t/0Pkl2ZBxXTV7GnTg83lgExQEXY0ccVVpqCzIxcA/ayz7OZGWPd4vt
	NezNxLWSqnSA2sUw2Iz3K52PieDG1+M7yuu4AAcD3pIE8Gwx6aImyqjOjuLwbTvRmq/Q=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182717-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182717: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-migrupgrade:xen-install/dst_host:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=b2dd946ece74e2b6e0601f28caef72f4f9950102
X-Osstest-Versions-That:
    xen=9a216e92de9f9011097e4f1fb55ff67ba0a21704
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 00:27:11 +0000

flight 182717 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182717/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-i386-migrupgrade  11 xen-install/dst_host         fail  like 182650
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182650
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182650
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182650
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182650
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182650
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182650
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182650
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182650
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182650
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182650
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182650
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182650
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd       3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  b2dd946ece74e2b6e0601f28caef72f4f9950102
baseline version:
 xen                  9a216e92de9f9011097e4f1fb55ff67ba0a21704

Last test of basis   182650  2023-09-06 06:53:04 Z    1 days
Testing same since   182717  2023-09-07 07:54:20 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  David Gibson <david@gibson.dropbear.id.au>
  Henry Wang <Henry.Wang@arm.com>
  Jens Wiklander <jens.wiklander@linaro.org>
  Julien Grall <jgrall@amazon.com>
  Juline Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@amd.com>
  Stefano Stabellini <sstabellini@kernel.org>
  Stewart Hildebrand <stewart.hildebrand@amd.com>
  Vikram Garhwal <fnu.vikram@xilinx.com>
  Vikram Garhwal <vikram.garhwal@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      starved 
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   9a216e92de..b2dd946ece  b2dd946ece74e2b6e0601f28caef72f4f9950102 -> master


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 01:20:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 01:20:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597733.932054 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeQAN-0004UD-Np; Fri, 08 Sep 2023 01:20:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597733.932054; Fri, 08 Sep 2023 01:20:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeQAN-0004U6-Kl; Fri, 08 Sep 2023 01:20:11 +0000
Received: by outflank-mailman (input) for mailman id 597733;
 Fri, 08 Sep 2023 01:20:10 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=01z4=EY=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qeQAM-0004TY-Gh
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 01:20:10 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20606.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::606])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d88540c9-4de5-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 03:20:07 +0200 (CEST)
Received: from DB8PR06CA0040.eurprd06.prod.outlook.com (2603:10a6:10:120::14)
 by AS8PR08MB8491.eurprd08.prod.outlook.com (2603:10a6:20b:566::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Fri, 8 Sep
 2023 01:20:05 +0000
Received: from DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:120:cafe::22) by DB8PR06CA0040.outlook.office365.com
 (2603:10a6:10:120::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34 via Frontend
 Transport; Fri, 8 Sep 2023 01:20:04 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT022.mail.protection.outlook.com (100.127.142.217) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.30 via Frontend Transport; Fri, 8 Sep 2023 01:20:04 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Fri, 08 Sep 2023 01:20:04 +0000
Received: from 3d825ecbea08.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 4CBBB849-A64E-4071-8620-B2339D06F258.1; 
 Fri, 08 Sep 2023 01:19:57 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3d825ecbea08.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 08 Sep 2023 01:19:57 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DU0PR08MB8280.eurprd08.prod.outlook.com (2603:10a6:10:40c::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Fri, 8 Sep
 2023 01:19:53 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6768.029; Fri, 8 Sep 2023
 01:19:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d88540c9-4de5-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4O4VxaFyW8EgXzrUK4x68EK2EC9Sli8p8ZptvkWN0Qw=;
 b=KanBPhGtKgmm/3QmlZ9gsNNH+h+tSg+f6w+RDROs5gUv25RAz3BSYK6WUTjzUOKX+fahgVpQz9i81iGHJpvLdXAf17UAQUmVdzshPOT9q7I1gPZKO4NMDkAbSa8dljU6rQbMEArH5v4RLOs53CzZt9t3oX11qbFkmfLXwtvxlIs=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: be180b0149a46a94
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lmHHM2GyYRLZ3uObGGWadqovPpJ8C4BBrtP4F5zi9YTpFE2JWi1tDa1P2VLRCxpOLUnCy8lEsA7vep0+GRBJH9Wjks7muKClMHARyme43B2ruPYzwL89Cc30KkebtXFVJoGt3Ax3bvMZ14LX1GzIgKRpahXUM4zBKMOixqxtYzKjLkMR8VCpDu9JVZ1M76AJdFUz/fxVOI47oWq10AZ9qwAKFfLVSXijV7aDAA6F+glagU3ATAtiQG56q0F6mX0lsqP7R1Bl5TXixV4AZcdxGkrLOHZOErovVJ6e4WfIqinny/aUUW3dscq4DNKvRFkAAZLxCLwhs2MjDluU3KilBA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=4O4VxaFyW8EgXzrUK4x68EK2EC9Sli8p8ZptvkWN0Qw=;
 b=MOSONNAEm9ay8Y3nT3RKB14krIOCSiq9AgOzeSQedUKRA9ZYEFySn4MMT5LiAj2Q+jrFCocjdAWqa33klShmhH3pmKWgd0GX3rnD28gmK9SogSNRSQ0+PsL8shU9mBnDw51sQ6IcpjgLGQBySOw0bN0+EqTvM/QtqRkhnj188sBv2BYINnUees8SBxLePNz9TLvbUfoXwdBFfkQrbieC4WLMpkHbVRlNqDHs+CnkJQnXith6Gn8pqhx6/4x8JoN1JgSm43PVaKyc8N9MMCC7O65qsysvr92X/Df1dyCCHn5rUhhXepqqcGBD9t0Qt/yjkTJ9+tN9uXASqA4OBEwdXg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4O4VxaFyW8EgXzrUK4x68EK2EC9Sli8p8ZptvkWN0Qw=;
 b=KanBPhGtKgmm/3QmlZ9gsNNH+h+tSg+f6w+RDROs5gUv25RAz3BSYK6WUTjzUOKX+fahgVpQz9i81iGHJpvLdXAf17UAQUmVdzshPOT9q7I1gPZKO4NMDkAbSa8dljU6rQbMEArH5v4RLOs53CzZt9t3oX11qbFkmfLXwtvxlIs=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Javi Merino <javi.merino@cloud.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Julien
 Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
	Xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH] coverage: update gcov info for newer versions of gcc
Thread-Topic: [PATCH] coverage: update gcov info for newer versions of gcc
Thread-Index: AQHZ3iNWSCffVdKvQ0utMDxU3A51YrAPdqKAgACyLQA=
Date: Fri, 8 Sep 2023 01:19:53 +0000
Message-ID: <F91BEB8E-7BB5-453F-8620-6E5F3B331D51@arm.com>
References: <20230902151351.10325-1-javi.merino@cloud.com>
 <ce6e7abd-40ee-dd9e-b17c-10c39ca0e422@suse.com>
In-Reply-To: <ce6e7abd-40ee-dd9e-b17c-10c39ca0e422@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DU0PR08MB8280:EE_|DBAEUR03FT022:EE_|AS8PR08MB8491:EE_
X-MS-Office365-Filtering-Correlation-Id: 2a20ae50-7b36-49df-c25c-08dbb009bb15
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 Mj/dDnMQa0jFZu4BVfPODKoRCl4JjcQJl6fSTXbUflkxaS2300g37dugpQwSVB4bCbPZ15rFmwU2OIIQBjLKCNmCUBWRCEjRM8o+a/dNpqRK8j+dw9LDnxIcciajiFlXfgHyGcvpOPt+eZ/9BYCHFf1ZyM5Z1nyOpGFs4oiVSeUy56PnDVGPZ0vy3m4T5Tt+O2iCWNiBsNpNL5U4sO52Z5cnZnA6Wf5DcSp5HN4Kz5YkMXJIPzAvPnAxTiOZRkxP5aGdCd5PfHvDr3fJ1yITaDnELTQ2bTJMdry3Hquh+Y/Mv3s8hgkxqbSnSc30sU3Q4JKkr0JmBAzekf9txnEiCr5Yg43NY36Qw2n0fzIX1YlFwvPAKovUSPUYKyIrpRLEXoHO0WyGirhEqH4dwmXjyX1rqhgFodQhgvwcJhPJDhlNOtTCMOJPnGz06o8zjE1uxLy+FPo3mmfHKpPuQ8JHQKLUaOnAgtkKNq2hzzS2hqv9qKQn1thgT67eMvA9dtTAJR06c4ec7MP3OhhSXs8kXxzGP5Tvd4jAvn2MoP0jY4OGhnfUqVaHpm4PoRuB3s6rEZGQ536d9x0kEAPbgJ1ucUQ+PsqrcNREaRjZMvK920aEZZFrNZL9iQZKDaJ6S3+RgcVOtgRJqCsvy5ayk1D1/g==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(366004)(39860400002)(346002)(376002)(451199024)(1800799009)(186009)(38070700005)(6506007)(6512007)(6486002)(2616005)(5660300002)(6916009)(86362001)(316002)(2906002)(26005)(122000001)(66476007)(64756008)(54906003)(66556008)(66446008)(66946007)(91956017)(76116006)(71200400001)(38100700002)(4326008)(41300700001)(8676002)(53546011)(8936002)(36756003)(558084003)(478600001)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <572195BA765CAD4E9B7E21D353A4181A@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8280
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	957e4d3f-3138-424b-93b5-08dbb009b48c
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RutztO4mMU4bZ/WC+xj1ZfhFlHrJvj5dNVK7UqA7nQ4hnuYfCboc4+ZrMpjfzvMsEp0VkFO/C2g0UrAgFihCKv2YiS/NNbbyTAb5m8576oOaQtqeRZfvj1DOTP1//EUXHgRUE57qX8hoYA+JCLkZ4KXa933KOAKuM29lYtm+t3W39OOLsNjvY20eBeEAGwtcykbvLQkCPGV4pcv+DBVnf3YbRsx1emhgRSB7pXrT0aO2TUptBdn/d08lHuvAPp8NqBZR/aL9PM1OmDCoBQbbnFMxw+xinZN8FnT3kyXvR84WNZIWsvTTT16d0rfGAKEEkVjFVxnxKEVj8NoZoNrSUuN5cvvMCrOVwpHVD3QCY4/FsMrxw8JTUZMJBbSHVrOjcs2ouub3dOShi4ZDELaHkSXk1qW1DHENIlzaEhVU2vZs86BF6A+grceV/RWUWXQxW/zsPgT/LUnPjPXEHamhabR9fYJVnQp5s2lywI0QReVrpco+ZbzoKwMyDu1MLmon4nXkpwPjAb6Ye0ou7dy8Q7QEQ7oBgDN9O7R5U4V8jXRxJtjIXUl8wjpnspjaSvSawPBR1TrtkzpXdJfOtBh7g87WA4Qs9BF8rBnXSGVVvJCTjPb9VtrmJtoS/jwEcqSAfBtW1x4gS6Me80gBACz+tjxOM8B1l//ibyAWYiJvfoR1goLkZIOxWjl6tU8AY7z6rjod9/GUTVkNp4bK+RxMFBKVCXgXm5z5kgVVq5vtcPfyWXbvGgBnrSMM3ldQBoQi
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(396003)(39860400002)(346002)(136003)(451199024)(82310400011)(1800799009)(186009)(36840700001)(40470700004)(46966006)(40480700001)(86362001)(6486002)(36756003)(47076005)(54906003)(70206006)(70586007)(316002)(8676002)(6862004)(4326008)(8936002)(36860700001)(41300700001)(478600001)(558084003)(5660300002)(33656002)(6512007)(336012)(82740400003)(2906002)(356005)(81166007)(2616005)(26005)(40460700003)(53546011)(6506007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Sep 2023 01:20:04.3016
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2a20ae50-7b36-49df-c25c-08dbb009bb15
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8491

Hi Jan,

> On Sep 7, 2023, at 22:41, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> Henry - afaict this was submitted after the feature submission deadline,
> so you may want to consider giving it an exception.

Yes I am ok to include this in 4.18.

Kind regards,
Henry

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 01:32:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 01:32:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597737.932065 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeQLh-0006eM-Pk; Fri, 08 Sep 2023 01:31:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597737.932065; Fri, 08 Sep 2023 01:31:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeQLh-0006eF-Lc; Fri, 08 Sep 2023 01:31:53 +0000
Received: by outflank-mailman (input) for mailman id 597737;
 Fri, 08 Sep 2023 01:31:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=01z4=EY=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qeQLg-0006e9-1e
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 01:31:52 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20612.outbound.protection.outlook.com
 [2a01:111:f400:7d00::612])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7aae5561-4de7-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 03:31:49 +0200 (CEST)
Received: from DU2PR04CA0224.eurprd04.prod.outlook.com (2603:10a6:10:2b1::19)
 by PAVPR08MB9673.eurprd08.prod.outlook.com (2603:10a6:102:31c::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Fri, 8 Sep
 2023 01:31:45 +0000
Received: from DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:2b1:cafe::10) by DU2PR04CA0224.outlook.office365.com
 (2603:10a6:10:2b1::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30 via Frontend
 Transport; Fri, 8 Sep 2023 01:31:45 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT023.mail.protection.outlook.com (100.127.142.253) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.30 via Frontend Transport; Fri, 8 Sep 2023 01:31:45 +0000
Received: ("Tessian outbound c99fbc01d472:v175");
 Fri, 08 Sep 2023 01:31:45 +0000
Received: from e2d7d4ec75cf.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 876DE4C8-3AF7-4A8B-A42A-2BA2431FBAAC.1; 
 Fri, 08 Sep 2023 01:31:38 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e2d7d4ec75cf.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 08 Sep 2023 01:31:38 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS1PR08MB7635.eurprd08.prod.outlook.com (2603:10a6:20b:477::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Fri, 8 Sep
 2023 01:31:36 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6768.029; Fri, 8 Sep 2023
 01:31:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7aae5561-4de7-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qDCzTR6VZpEex9RTkrfVlKNgQl7EGmki4x9mvdIiwMo=;
 b=CMMzD4VcZaME/qZfSHga9xTbBZGqdpWnWifkuZxUz36JTdV/AsiczFOnIlACYjz/Cdo+I7HEXHgS9cLy17PjCyPlR7HG2/IITMmy+xjCB2eRBpTBqSQuOwxFWWyjIUz583eccHEcnLX+IAA8vN2+T23I1a3TbbEFvGkbdGRp3zA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: ffea37babd4f76ed
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iuUeeGY3YwOxIBNgztISkLkRATbhT/Fe3xwvLvy6pyFQUotcz827fXIq0UFZam8hizIJjMHrQA/Dm/NGwW+CXinQTH0H1mG2Isa0DYFStVoDUN9zUc98oPC+usp7qCha370pmWLDNwbr8DopB4I0b3IOMOpuKma4HjOB/rMBTIXDplnPsuRM48PGN3m2MtQ7yDBrPhRVEqjS2kd+HLna4XOfBPTJYV8BMSQb5RbYPyRu4zHvEJi6C7ebGbg0thdE6MnNOeWC+/zb70tm48TdBdBG7SSTsJvsOfX9cLmCwdTMVNIKTjv2LHdrZ5C8SIIzl9BfDI/Isrt6vkwuNzO2XQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qDCzTR6VZpEex9RTkrfVlKNgQl7EGmki4x9mvdIiwMo=;
 b=YJXjefscVxgPW57TA3vKxOLqu1moDXRLToba06Xos3/seRpYcbJPPrRz45ghjQf2OI3MOfXl9xwK0xzklejp7vhnF79qVnxK/ZruklezBW3jlbbpNXww4J4RowZKwSvrJUf8TEzhczR4+ZwRhkM+OussgrIKB24WNUEVR0cxkn/qqsaHaidPnnk+s4INzdKPrHPy5h8LRafdn0+pEPCe1oW0F54Mt9Hf4E9S+RPv2RdSUbJeHq9FSbpflnandq031cAHgfEyLE2DZwBtRucYOxY+1c9+O4KS/f0Rq+e4TeJ4U/ZBe02xfRRxTWi2UYbr9YwQ1t2tz9yoOW4Ug18SBA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qDCzTR6VZpEex9RTkrfVlKNgQl7EGmki4x9mvdIiwMo=;
 b=CMMzD4VcZaME/qZfSHga9xTbBZGqdpWnWifkuZxUz36JTdV/AsiczFOnIlACYjz/Cdo+I7HEXHgS9cLy17PjCyPlR7HG2/IITMmy+xjCB2eRBpTBqSQuOwxFWWyjIUz583eccHEcnLX+IAA8vN2+T23I1a3TbbEFvGkbdGRp3zA=
From: Henry Wang <Henry.Wang@arm.com>
To: Ayan Kumar Halder <ayankuma@amd.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Wei Chen <Wei.Chen@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, Penny Zheng <Penny.Zheng@arm.com>
Subject: Re: [PATCH v6 09/13] xen/arm: Extract MMU-specific MM code
Thread-Topic: [PATCH v6 09/13] xen/arm: Extract MMU-specific MM code
Thread-Index: AQHZ2U+mi6GEY8HiTE22n7xoslprBrAPS/YAgADpx4A=
Date: Fri, 8 Sep 2023 01:31:36 +0000
Message-ID: <FC26F094-ED04-4E5F-904F-3B09E6605D31@arm.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-10-Henry.Wang@arm.com>
 <3e32512e-07d1-34c7-bc51-11dfe061f903@amd.com>
In-Reply-To: <3e32512e-07d1-34c7-bc51-11dfe061f903@amd.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS1PR08MB7635:EE_|DBAEUR03FT023:EE_|PAVPR08MB9673:EE_
X-MS-Office365-Filtering-Correlation-Id: 0fe67e4a-d9de-4a7b-44da-08dbb00b5cd6
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 GI9opyBTIdlnBaLNfT6sjk1lk/KzvDszASz/US4iywgv5MB6+whlZSlCKkDGEjuSpZfZeknvsBkJzuaK3ssDLkS1lLGKIeC5BQbciIIsrR4hi7izyYNJGmvEVq6Z0J8EdwigwsExYm7vQTchiiTP/SE/tNM1WeBh4C7CMC852OPgyvFIQoMg8prI3GKYiNPwxuSe3285bmR9IX4iT2eAe8I87uYQWHLcmBtlchLz8Yy3eCvufdz+Kc7HWniLQvtSi73XpD+NrXYZmIME3JyCxyhqzNkBJ6qk4uCCb8+DP6VojE9ee3K39njYaW1NebKjKGIRSwSW9jLpMU8umefpTMpWjD8NiiU8S3wYWVhisj8C2IY3JWBj32Cx56y0kS3vrJZLJvTopACjWdVcSfy+x5qlTu4zxTVisK6mTlVERg0ZNR1ZorBnrkjRLPEfWD7RDvRQJ62E1TYUxFPVEfxTUaF2q8wOweja5TFdqpoW/zgAfgbYHld/wBICcKfNV9zHkyMu/N850K1yf79ZPNORqD2cLvlzC469x3GfnjPEnVpYf1Ln+u41ulb1H3RM3Y4OCqVjCcLCr80R3XDdgEcwZn4/LUFZF2NMJ63B3+RgIFRJaQgNLu5mMJqih8W2z0ybjyI7pRUmtF7+86HdaefZ9Q==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(346002)(376002)(366004)(39860400002)(136003)(186009)(451199024)(1800799009)(33656002)(36756003)(38070700005)(38100700002)(86362001)(71200400001)(478600001)(5660300002)(26005)(53546011)(6506007)(66556008)(6486002)(54906003)(91956017)(64756008)(66946007)(76116006)(66476007)(66446008)(316002)(6916009)(8676002)(4326008)(8936002)(41300700001)(2616005)(6512007)(122000001)(83380400001)(2906002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <8527B3DFC40A6D49945255506F38E204@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7635
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	31166880-bff2-4432-51d3-08dbb00b5766
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Ib0zlYb9wC+IpNaYvZJXeKIzo60gr1l2KTliPRJFdpCH/+t+WKsJ7Q8xZH+7cJ5ATm6rsn6FG4HHNJLRhRahxQNaZzmnv0lVHrkcA1395ZLvxIARxID+ljaS0gasforvfVpSJppqjAfYS04364M7v7wKpdDTipyLfl2MxZJP1jIrcI2lJDUCcWvxr2jPZwfitVedpd0HSQRZmmdPsoYLdxzV6HbCBFDRClOk0H1KyR2KYAaDAZOh6glXQBiqRInhZ3tBKpMgYn2LwQq0FhvWzsnfShKyMaKHxmoKiPa+xPymUxpiIbh0oT19p0FVE5f1MLK9kViSsuJnvIqRpy5rV6OtJtxYhJiZK/L1K/ezgOauZ3AmxxIVHcMhfK7GLTSeJ9skCfqNMm+4oP3egmT8/HirGZZw7KQ2cwsiP7bVsDY2a6qrXXEwJuMudOeLFel7oAW70b9sAp2/91+VoNT0tSGdHBHb70p0xzL1ALZ7G9lY0ALTLOIKKff7I2/txV/R6bVR+/knL11yDDag1rvYgsL3WKQ8OSku6d4kqzBEOUwAWXgY1/I02lJGXuVRcGTd8EPe2w0Oa1hh5BcU7slWl8GvYBDTg5ufPqeC7eFTW/rZtF5W0Lo9a/aXXl3qhMgEl6k7TAsop4q9H5A7k4ig9o4DnUaCor8sctPc2PEL8zQT8lU0cqD3ZpEwd+IBUt7Jl1Wqelw+KwDPgbRov4n6DrhS89ZMtdOtj8t+WBbmtgSmek8AYKjXqEX/1puJbCex
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(39860400002)(376002)(136003)(1800799009)(186009)(451199024)(82310400011)(40470700004)(36840700001)(46966006)(33656002)(36756003)(86362001)(40480700001)(81166007)(478600001)(26005)(5660300002)(53546011)(6506007)(70206006)(316002)(54906003)(70586007)(6486002)(336012)(41300700001)(2616005)(4326008)(8936002)(6512007)(6862004)(8676002)(2906002)(40460700003)(47076005)(36860700001)(356005)(82740400003)(83380400001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Sep 2023 01:31:45.1575
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0fe67e4a-d9de-4a7b-44da-08dbb00b5cd6
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT023.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9673

SGkgQXlhbiwNCg0KPiBPbiBTZXAgNywgMjAyMywgYXQgMTk6MzQsIEF5YW4gS3VtYXIgSGFsZGVy
IDxheWFua3VtYUBhbWQuY29tPiB3cm90ZToNCj4gDQo+IEhpIEhlbnJ5LA0KPiANCj4+ICsNCj4+
ICtleHRlcm4gbWZuX3QgZGlyZWN0bWFwX21mbl9zdGFydCwgZGlyZWN0bWFwX21mbl9lbmQ7DQo+
IA0KPiBBcyB5b3UgYXJlIGRlY2xhcmluZyB0aGVtIGZvciBNTVUgc3BlY2lmaWMgLCB5b3UgYWxz
byBuZWVkIHRoaXMgY2hhbmdlIDotDQo+IA0KPiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL3Nl
dHVwLmMgYi94ZW4vYXJjaC9hcm0vc2V0dXAuYw0KPiBpbmRleCA4OWVjYjU0YmUyLi4xOWI2MGM1
ZDFiIDEwMDY0NA0KPiAtLS0gYS94ZW4vYXJjaC9hcm0vc2V0dXAuYw0KPiArKysgYi94ZW4vYXJj
aC9hcm0vc2V0dXAuYw0KPiBAQCAtNjcwLDcgKzY3MCw3IEBAIHZvaWQgX19pbml0IHBvcHVsYXRl
X2Jvb3RfYWxsb2NhdG9yKHZvaWQpDQo+IA0KPiAgICAgICAgICAgICAgcyA9IGJvb3RpbmZvLnJl
c2VydmVkX21lbS5iYW5rW2ldLnN0YXJ0Ow0KPiAgICAgICAgICAgICAgZSA9IHMgKyBib290aW5m
by5yZXNlcnZlZF9tZW0uYmFua1tpXS5zaXplOw0KPiAtI2lmZGVmIENPTkZJR19BUk1fMzINCj4g
KyNpZiAoQ09ORklHX0FSTV8zMiAmJiBDT05GSUdfTU1VKQ0KPiAgICAgICAgICAgICAgLyogQXZv
aWQgdGhlIHhlbmhlYXAsIG5vdGUgdGhhdCB0aGUgeGVuaGVhcCBjYW5ub3QgYWNyb3NzIGEgYmFu
ayAqLw0KPiAgICAgICAgICAgICAgaWYgKCBzIDw9IG1mbl90b19tYWRkcihkaXJlY3RtYXBfbWZu
X3N0YXJ0KSAmJg0KPiAgICAgICAgICAgICAgICAgICBlID49IG1mbl90b19tYWRkcihkaXJlY3Rt
YXBfbWZuX2VuZCkgKQ0KPiBAQCAtNzA4LDcgKzcwOCw3IEBAIHZvaWQgX19pbml0IHBvcHVsYXRl
X2Jvb3RfYWxsb2NhdG9yKHZvaWQpDQo+ICAgICAgICAgICAgICBpZiAoIGUgPiBiYW5rX2VuZCAp
DQo+ICAgICAgICAgICAgICAgICAgZSA9IGJhbmtfZW5kOw0KPiANCj4gLSNpZmRlZiBDT05GSUdf
QVJNXzMyDQo+ICsjaWYgKENPTkZJR19BUk1fMzIgJiYgQ09ORklHX01NVSkNCj4gICAgICAgICAg
ICAgIC8qIEF2b2lkIHRoZSB4ZW5oZWFwICovDQo+ICAgICAgICAgICAgICBpZiAoIHMgPCBtZm5f
dG9fbWFkZHIoZGlyZWN0bWFwX21mbl9lbmQpICYmDQo+ICAgICAgICAgICAgICAgICAgIG1mbl90
b19tYWRkcihkaXJlY3RtYXBfbWZuX3N0YXJ0KSA8IGUgKQ0KPiANCj4gU28gdGhhdCBkaXJlY3Rt
YXBfbWZuX2VuZCBhbmQgZGlyZWN0bWFwX21mbl9zdGFydCBpcyB1c2VkIG9ubHkgd2hlbiBNTVUg
aXMgZW5hYmxlZC4NCg0KSSBhbSBub3QgMTAwJSBzdXJlIG9uIHRoaXMsIGJlY2F1c2UgY3VycmVu
dGx5IHRoZXJlIGlzIG5vIE1QVSBjb2RlIGF0DQphbGwsIGluZGljYXRpbmcgYWxsIHNldHVwLmMg
aXMgTU1VIHNwZWNpZmljLiBJbiB0aGlzIGNhc2UgYWRkaW5nIOKAnCYmIENPTkZJR19NTVXigJ0N
CnNlZW1zIGEgbGl0dGxlIGJpdCByZWR1bmRhbnQgdG8gbWUuIEJ1dCBJIGFncmVlIHlvdSBtYWRl
IGEgcG9pbnQgYW5kIGl0IGlzIGNvcnJlY3QNCnRoYXQgd2hlbiB0aGUgTVBVIGNvZGUgaXMgaW4s
IHRoZXNlIOKAnGRpcmVjdG1hcOKAnSBwYXJ0IHNob3VsZCBiZSBnYXRlZCB3aXRoDQpDT05GSUdf
TU1VIChvciBtYXliZSBzcGxpdCB0aGUgY29kZSBiZXR3ZWVuIGFybTMyL2FybTY0IHRvIGRpZmZl
cmVudCBoZWxwZXJzDQp0byBhdm9pZCAjaWZkZWYpLiBIZW5jZSBJIHdvdWxkIHByZWZlciBkb2lu
ZyB0aGVzZSBjaGFuZ2Ugd2hlbiB0aGUgTVBVIGNvZGUgaXMgYWRkZWQuDQoNCkxldOKAmXMgc2Vl
IHdoYXQgbWFpbnRhaW5lcnMgd2lsbCBzYXkuIEkgYW0gaGFwcHkgdG8gZG8gdGhlIGNoYW5nZSBv
bmNlIHdlIGhhdmUNCmFuIGFncmVlbWVudC4NCg0KS2luZCByZWdhcmRzLA0KSGVucnkNCg0KPiAN
Cj4gLSBBeWFuDQoNCg==


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 03:09:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 03:09:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597744.932075 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeRrZ-0001ol-J7; Fri, 08 Sep 2023 03:08:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597744.932075; Fri, 08 Sep 2023 03:08:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeRrZ-0001od-EF; Fri, 08 Sep 2023 03:08:53 +0000
Received: by outflank-mailman (input) for mailman id 597744;
 Fri, 08 Sep 2023 03:08:51 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=VeSX=EY=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qeRrX-0001oW-LG
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 03:08:51 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 07316fbf-4df5-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 05:08:49 +0200 (CEST)
Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7])
 by mailhost.m5p.com (8.17.1/8.15.2) with ESMTPS id 388381l7002774
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Thu, 7 Sep 2023 23:08:07 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 388380oI002773;
 Thu, 7 Sep 2023 20:08:00 -0700 (PDT) (envelope-from ehem)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 07316fbf-4df5-11ee-8783-cb3800f73035
Date: Thu, 7 Sep 2023 20:08:00 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: smita.koralahallichannabasappa@amd.com
Cc: linux-edac@vger.kernel.org, linux-kernel@vger.kernel.org, x86@kernel.org,
        xen-devel@lists.xenproject.org, rric@kernel.org, james.morse@arm.com,
        tony.luck@intel.com, yazen.ghannam@amd.com
Subject: [PATCH] Revert "EDAC/mce_amd: Do not load edac_mce_amd module on
 guests"
Message-ID: <ZPqQEHXgmak1LMNh@mattapan.m5p.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20210628172740.245689-1-Smita.KoralahalliChannabasappa@amd.com>
X-Spam-Status: No, score=0.4 required=10.0 tests=KHOP_HELO_FCRDNS autolearn=no
	autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mattapan.m5p.com

This reverts commit 767f4b620edadac579c9b8b6660761d4285fa6f9.

There are at least 3 valid reasons why a VM may see MCE events/registers.

First, the hypervisor may have a bug.  Ideally this should be dealt with
by fixing the hypervisor.  Failing that, the hypervisor and versions
effected need to be identified so only they are flagged as buggy.

Second, the Linux kernel may be handling adminstrative duties/hardware
for a hypervisor.  In this case, the events need to be processed and
potentially passed back through the hypervisor.

Third, the hypervisor may do full virtualization of MCE events.  In such
case, they should be handled normally.

Any of these blanket disabling the functionality is bad.  The original
patch was wrong.
---
 drivers/edac/mce_amd.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/edac/mce_amd.c b/drivers/edac/mce_amd.c
index 9215c06783df..1b7fccfbb654 100644
--- a/drivers/edac/mce_amd.c
+++ b/drivers/edac/mce_amd.c
@@ -1361,9 +1361,6 @@ static int __init mce_amd_init(void)
 	    c->x86_vendor != X86_VENDOR_HYGON)
 		return -ENODEV;
 
-	if (cpu_feature_enabled(X86_FEATURE_HYPERVISOR))
-		return -ENODEV;
-
 	if (boot_cpu_has(X86_FEATURE_SMCA)) {
 		xec_mask = 0x3f;
 		goto out;
-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \BS (    |         ehem+sigmsg@m5p.com  PGP 87145445         |    )   /
  \_CS\   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445




From xen-devel-bounces@lists.xenproject.org Fri Sep 08 03:59:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 03:59:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597751.932085 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeSeF-0007cz-6Z; Fri, 08 Sep 2023 03:59:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597751.932085; Fri, 08 Sep 2023 03:59:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeSeF-0007cs-2f; Fri, 08 Sep 2023 03:59:11 +0000
Received: by outflank-mailman (input) for mailman id 597751;
 Fri, 08 Sep 2023 03:59:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=b+95=EY=alien8.de=bp@srs-se1.protection.inumbo.net>)
 id 1qeSeD-0007cm-EW
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 03:59:09 +0000
Received: from mail.skyhub.de (mail.skyhub.de [5.9.137.197])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0ec204cf-4dfc-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 05:59:07 +0200 (CEST)
Received: from nazgul.tnic (unknown [93.123.97.133])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mail.skyhub.de (SuperMail on ZX Spectrum 128k) with ESMTPSA id 33ECC1EC0645;
 Fri,  8 Sep 2023 05:59:06 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0ec204cf-4dfc-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alien8.de; s=dkim;
	t=1694145546;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:in-reply-to:in-reply-to:  references:references;
	bh=TguoLw/M+pg5pof3m7M+GZki4L6QFruFleEnIMG45oc=;
	b=bQ3kHLjkA3IUe4Dp1awZwI3rjciES9TcnBC66CMvRUmAImo+cb+2bNVZLI3dCEh0qZpvfz
	c7e0LeG0boRzRoKOsTo6egC0n9JGdug1i9KJisqtsEXFFQps2NGXfXye5GCLXWbpSB1tYD
	UnFMbkfLN3+hNmI2FUGR5XaKv0YHgjs=
Date: Fri, 8 Sep 2023 05:59:11 +0200
From: Borislav Petkov <bp@alien8.de>
To: Elliott Mitchell <ehem+xen@m5p.com>
Cc: smita.koralahallichannabasappa@amd.com, linux-edac@vger.kernel.org,
	linux-kernel@vger.kernel.org, x86@kernel.org,
	xen-devel@lists.xenproject.org, rric@kernel.org,
	james.morse@arm.com, tony.luck@intel.com, yazen.ghannam@amd.com
Subject: Re: [PATCH] Revert "EDAC/mce_amd: Do not load edac_mce_amd module on
 guests"
Message-ID: <20230908035911.GAZPqcD/EjfKZ0ISrZ@fat_crate.local>
References: <20210628172740.245689-1-Smita.KoralahalliChannabasappa@amd.com>
 <ZPqQEHXgmak1LMNh@mattapan.m5p.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <ZPqQEHXgmak1LMNh@mattapan.m5p.com>

On Thu, Sep 07, 2023 at 08:08:00PM -0700, Elliott Mitchell wrote:
> This reverts commit 767f4b620edadac579c9b8b6660761d4285fa6f9.
> 
> There are at least 3 valid reasons why a VM may see MCE events/registers.

Hmm, so they all read like a bunch of handwaving to me, with those
probable hypothetical "may" formulations.

How about we cut to the chase and you explain what exactly is the
concrete issue you're encountering and trying to solve?

Thx.

-- 
Regards/Gruss,
    Boris.

https://people.kernel.org/tglx/notes-about-netiquette


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 05:04:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 05:04:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597757.932094 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeTew-00089k-U9; Fri, 08 Sep 2023 05:03:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597757.932094; Fri, 08 Sep 2023 05:03:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeTew-00089d-RT; Fri, 08 Sep 2023 05:03:58 +0000
Received: by outflank-mailman (input) for mailman id 597757;
 Fri, 08 Sep 2023 05:03:57 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeTev-00089T-GZ; Fri, 08 Sep 2023 05:03:57 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeTev-0001J5-DD; Fri, 08 Sep 2023 05:03:57 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeTev-0002Og-0h; Fri, 08 Sep 2023 05:03:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeTev-0002Vm-09; Fri, 08 Sep 2023 05:03:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=kCcaYeqHOMUrBG0MWwoOyCEOv90s/D7muKfAp1+WUDk=; b=E+ozGJYUIIK3k0oEi4qYNaPR2u
	z4vp7RV0QAfo0Z/jYEhEEvqirDF7Lh/O5grC5YQg+1QZQoNj11xCoNKyLX2YcD721kG8n057SJjG2
	ouRm082PuhfhbCL23MyHf444Q9R9BQWY5ozAhb7Sp5ssA7z/nTBLDgMvbFitZ9w6yIv8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182719-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182719: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=7ba2090ca64ea1aa435744884124387db1fac70f
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 05:03:57 +0000

flight 182719 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182719/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                7ba2090ca64ea1aa435744884124387db1fac70f
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   11 days
Failing since        182544  2023-08-28 20:42:13 Z   10 days   18 attempts
Testing same since   182719  2023-09-07 11:48:01 Z    0 days    1 attempts

------------------------------------------------------------
2116 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 247393 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 05:26:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 05:26:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597765.932105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeU10-0002S2-N7; Fri, 08 Sep 2023 05:26:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597765.932105; Fri, 08 Sep 2023 05:26:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeU10-0002Rv-Jh; Fri, 08 Sep 2023 05:26:46 +0000
Received: by outflank-mailman (input) for mailman id 597765;
 Fri, 08 Sep 2023 05:26:45 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeU0z-0002Rl-Bz; Fri, 08 Sep 2023 05:26:45 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeU0z-0001nz-9O; Fri, 08 Sep 2023 05:26:45 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeU0y-0003By-U3; Fri, 08 Sep 2023 05:26:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeU0y-0005Ro-Td; Fri, 08 Sep 2023 05:26:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=nfDR83+tjVQSt/ui2AqqcZ6ffkhqAm2YE3pLzGwpFYI=; b=jqJE6nATv/8X28jAi3GbUokfXQ
	K/KnBMbhqk3uHqo52m+8XmWHRWAW52fR7g05TLmyQ+PJV9yLuAm2KlU6tdRuLoZKZcOXY8TReVAjy
	/+LIS2hMnl2Aardn8fz96Sl58cgdebu7nO4CNC6tUshj1cFUAQghUUbzn/QxuGV8dqnk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182726-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182726: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=cba6d44a13d5e25334d164e27cb1b1d7674aa05e
X-Osstest-Versions-That:
    xen=1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 05:26:44 +0000

flight 182726 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182726/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  cba6d44a13d5e25334d164e27cb1b1d7674aa05e
baseline version:
 xen                  1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5

Last test of basis   182720  2023-09-07 14:03:27 Z    0 days
Testing same since   182726  2023-09-08 02:00:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Nicola Vetrini <nicola.vetrini@bugseng.com>
  Olaf Hering <olaf@aepfle.de>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefano Stabellini <sstabellini@kernel.org>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   1f79fce10a..cba6d44a13  cba6d44a13d5e25334d164e27cb1b1d7674aa05e -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 06:13:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 06:13:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597773.932115 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeUjp-0008Jk-1C; Fri, 08 Sep 2023 06:13:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597773.932115; Fri, 08 Sep 2023 06:13:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeUjo-0008Jd-TW; Fri, 08 Sep 2023 06:13:04 +0000
Received: by outflank-mailman (input) for mailman id 597773;
 Fri, 08 Sep 2023 06:13:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=763w=EY=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeUjn-0008JX-JO
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 06:13:03 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20624.outbound.protection.outlook.com
 [2a01:111:f400:fe13::624])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c402fb30-4e0e-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 08:13:02 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7483.eurprd04.prod.outlook.com (2603:10a6:102:86::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Fri, 8 Sep
 2023 06:13:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Fri, 8 Sep 2023
 06:13:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c402fb30-4e0e-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HUks1Prq7zzZQNqtzgroJkd1fC2C7rqIqvGrcEiW8NSDOgPaz570NXZt48o7W8+E35127jKnEYvVVXFTDIX+VKZlja5JpcqE/QCAsTZ8rdmn5sW8FwxWL4omRV451mGfNT1OC5OyapYG9t9R0SjN4FPadOOdE41UTAzC77sD6cFk1+tmlrmNAjLRvaWFLcFF8M4F5tDgNL6W6C4VA/RLtaYBo4LBl9aTcGnxuOI4Dy0iLb11x+MNCVqAZ3Vild92cYkzP2bnNkPKhF3gYmw8PJLD3NmuGs8CcIJwijHW3aTUIxX4QpkI2eDtuOCMSiMK52uZ+zfAHhl14NUpAPrv6g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LfvkDfrchQ2tT4bjQb3qTeiSLZgpLCr4UssIjUqVRqM=;
 b=b8lsAgixdzySfDiwRAiwZWex4qo11mlOT8iCrL7PPPM24McBPMs+KaTuXqCwRQEt+WFgfCvY/rcveWQh8ikDLdLGH0ErztCHu7fAv5p99tXkqCwmsXjXhZXKCgeGmc7JUgu0uvYPUkmecF6GYIoD2pcyiha3BesQ8Y2Ycrv8NdtWYEP5tz3KaFimTMhQGPI4t+kO5hVlQZ7oofNhA0hxLwn6kWaUZZAGm1gq7dh0vmPEFOVKeNc/HH1H0NXOlaIjMEpPRFaYAY6+fo/xkLpr6JHsFsJlksTZ+PvaGYQUSdfIiSPUQ0N2jQjvwWQoEljwN4Dce0sHPXkGvNRJFCMH2A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LfvkDfrchQ2tT4bjQb3qTeiSLZgpLCr4UssIjUqVRqM=;
 b=WMzwcyKx8Y5GKEHEiVvZB/JwrZm2KL/w3vrD/ro/mUxuGHsxKL4IsqV+AOviadNeTu7PUQzZ9dK2lPXRq381xjxHKo21WdPwkKTvfX3h1svtq4Qx9Ka9gDxvjTq0XwGRdtcJzsqIAEIy/hx6Gth36Mir7qfDMD1Zi3pbndxEew0XPCk0vWFheARFoNWoYaiK/JREC96oZi710BXpvuJ1oz2J/ptd6FBaLMPmfe8uR69dIK/megrP6/yW5eBhXsNweVHI0owHv8wkuL4XFj6YNHh2KZ8glnC48SGzsnXz3FjFXANbLMlvNbBlk74hLvOUm2CbUyYNI7Obaa+hxP2QRQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6f865f65-9c3d-94c5-e3d4-86365feeeb65@suse.com>
Date: Fri, 8 Sep 2023 08:12:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v2] docs/misra: add 14.3
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com, julien@xen.org,
 george.dunlap@citrix.com, bertrand.marquis@arm.com,
 roberto.bagnara@bugseng.com, nicola.vetrini@bugseng.com,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 xen-devel@lists.xenproject.org
References: <20230907012203.1238090-1-sstabellini@kernel.org>
 <36b888b2-e7e3-bf70-f599-d22ca34e2dfe@suse.com>
 <alpine.DEB.2.22.394.2309071441400.6458@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309071441400.6458@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FRYP281CA0010.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::20)
 To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PR3PR04MB7483:EE_
X-MS-Office365-Filtering-Correlation-Id: d8ea35d8-a010-4121-e4fc-08dbb032a6df
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/cjFlDbWZsDuwsOaqL6z7EWRjqMJk7xlNKioFpqNzln0KPUFyvfXNSDkxIZn1PlS6gG4BS4d66ZIgRNOrHnSe6/GLRViVAo7OFhntQSfvuSDI7nGOy/rTqdsnThH7b7QjaB+IJ9GCTLjDf2BZG1swDj7RP2BfyqC+Z/PtITzg8Bx4KsItJTJcJ/YGWoDdQk/YbhOj6Wnd1ffcW+wieM7CIucy9YyBfkGpHt/PLMtjquxMDJ1PDCYEBuAkw7jK18D33GjVyT+FqIRRZxCtu1G56LZeCu6pQWEfV/e8qrY30riNAlSV49V2ZFjRGI0By1hM58K/y3M0SdbkLXbQxigYmE0aDqrAo7aB2z4J4iS7EuJUes1Nfwp/TOMKtwJRD5mfBmzcqDBbIEag9E8Y/iF4EkhJfUZFqeZeHTPkbP6kgJ8/dLxs7hWXdf4mwIwQcUTUlVTzwL91OjtovnfziZ9xuUaTNdi++V6U86F8CSWq5CVzi0OGaNzZhTIC4HjaNMs6YD21SDw3EJ/g/QcoAqJmUN2CPkX7F/k3XXVGCZk6UUFPEgcg8yDTxDRl5S3nnygJvmBPqdyAfbsmdHa6rOaLkqiR64Y73iSa0g8g9qUQhhIy4C2REEXocW34lqfpSpsm9yPVHolCAx22MQCCUhZ0g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(136003)(346002)(39860400002)(366004)(1800799009)(451199024)(186009)(31686004)(66899024)(53546011)(6666004)(6506007)(6486002)(31696002)(86362001)(36756003)(38100700002)(2616005)(26005)(6512007)(83380400001)(478600001)(41300700001)(8936002)(8676002)(4326008)(5660300002)(2906002)(7416002)(6916009)(316002)(66946007)(66556008)(66476007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SDB2QlpQaXBoUzR0ZlpYTXRmaW1XSXY2aWtqbFZ2WEsrbWpaeGRQQ3l0c3Z1?=
 =?utf-8?B?ejhBRGlKNU9KUEIyWU9wdFJzdzREcEVzQy9hYStMTUhwRmpTRm93SGJFc0FI?=
 =?utf-8?B?cWxadnpLdjBhellES08yUlVBU1pWd3FWTkppM0FqVVo4dWorSEVqUjdwcXF6?=
 =?utf-8?B?QXVQNStpMVVFYUNraHgvWXcvV1g4RVZnbE9xUzFlWHFlbzh4SlNna3lEQ1gy?=
 =?utf-8?B?amJNOGdJNkZXbGlXUlp1eW51ZWYzQmI1eDgzT3VjTHBhRG0zdjZWeEd5Mkhl?=
 =?utf-8?B?WmQyZExoc3FXN1o3dFVYd2E3VU9SNDRsQzQ0YndyaDRZVUNHWm9uaWVmam50?=
 =?utf-8?B?UTRzd1BDMHdiSnNyVnYwTlVncGR4UkhuWXdBaENwb094b0VZOXpNblhLVGUz?=
 =?utf-8?B?QVB2NjdOb3lNeG1hb3dWeXJqTzZTZ3hyL0VrV0FoSzVBRWg0QmFKVUJTQVpO?=
 =?utf-8?B?WkJjUFVIN2FkTjIra3czZTJXdTN1aW5VZk5YZGplbTlWbWQybjlTRUE0ay9N?=
 =?utf-8?B?VHI4aUN5NDNVNS9FWDJqY2F6eUZIZWFSekFtL1NLSXl4b0JyWkdSemw3dU1x?=
 =?utf-8?B?N25Hck9rcmV3cEdKVElKOE10S21hM0p0aFJTTkNNY2FXdWNaSFR0dlVmenc2?=
 =?utf-8?B?cHB6WEhZZ1lJZVVvemdJNDBJWXF4QndKN1lWbFVtN29UaDYyRHZ2VnJjYXA5?=
 =?utf-8?B?SXZlREhMN09YQmFLZy9uZWF1NWJ1OTdiVlk5RkFNKysyUE9RbllrdVBuQmIr?=
 =?utf-8?B?M3dVS0p6QlJOQnUyNUgvTkJQTzNZWVhzc0dWSWExMGg1VWpydGFyQnBOZE5T?=
 =?utf-8?B?Rk1aUGhsbExrcDludVRFUmxLT0xkckc3VldJdGJTTi9KWmZTQnNBU2dyVnQv?=
 =?utf-8?B?eE5PU2h5bFJBdENveXhkQVBtbWxPWTRlNVErREV2aDRnYU1yc0xkNU96VTRj?=
 =?utf-8?B?bUFDNEN6NXI2OERXZTVtcVkyaTJyUlhudnpGYVJ2WkRHZTZyUmVqQjljZE1t?=
 =?utf-8?B?RFlhY2Z0V2xQVVhwTWVuOEU0Y1R0L0FhbnpCajFjTzYwM3BLdGdaVm91WExJ?=
 =?utf-8?B?a2RMb0dtVlFGRXY5OVdodTJaaU9LWjlCK09GYmRwL0M2N2E2Y2IxbzVmR2tE?=
 =?utf-8?B?Qkl6TXpKaHJIZ3FielhWbW9CU21lTjZJVTJCN0svQm9scHhvQm1sWXNZeW41?=
 =?utf-8?B?NXptRmJBaXljdktTeGpYSFhSR0RrZzZSeGJLdU43VmRUY244VGQyUHc5eWNE?=
 =?utf-8?B?azNFZEF0V29jejZmcEVFaU5WTkRpZmx5NHorYjJxVmRZUlZoWFZaRHBCSEJl?=
 =?utf-8?B?UzBsYTFOU3FjRmxZK0EvdGZqSTFNSlFScjBIbmV0MzIxL0FlN3VXU0NsdERB?=
 =?utf-8?B?UzhpM2s2eXN4M1hZNXNacnoxNTJ0TDRxT21LOXljYjRXSHlwOGhCSzd4NW81?=
 =?utf-8?B?bkI5NCszc2tZSGJMQlZyMEFIaHJDQWhIeTUyTm9XcEVpU2xBNGgyUWpReHZp?=
 =?utf-8?B?Y3pVbDlWZnVPdVlGU0RqaXNlSVl2WWVISXN0MzFBUEVRK2ViL09UMW9GQndU?=
 =?utf-8?B?cnEydnJQYlh2RlpRNGU4ZkYvTnp6UVRVWWlMNi9DWlRTY1N2elJhOEFOcStz?=
 =?utf-8?B?dERQZm83TTBPUVB3cnMzeFgzcHlyUDMrREZicms1TTFrZjA0R0pFMDQ5a1pQ?=
 =?utf-8?B?OVphR1VsM1dRRmtGSXc0emRpUGtMekwxK2FhQ0M2c1FNVE5JRk9TamxDVDBC?=
 =?utf-8?B?Rk90ZC8xam9CNDZZbml2ZkgzZlJKSmVHNlpjWnRzeGlaSTZKSDh0NCtaTHhU?=
 =?utf-8?B?VlBYRGw3RDhFMmRNWWtScEF1aHQ3TVlYb0VoWjM1OWd2dFlxRjNVNWxoM3Q4?=
 =?utf-8?B?eENvd1dwdExWQ044bDZ1cXhlYjJkYzVzL2V4cDFaNzgvVExYbm0rQ0JHbzgz?=
 =?utf-8?B?MGw4S1J5SnF6dG1hR01vd2JBeTFyeFhyOGh5U0JuZGk3NC9iVnV2UTJxNmw3?=
 =?utf-8?B?TnVKOGtTam4zb0lpMTMzc25Ld1dKSmhZelhWVldNYkVpNEpvZ3hYN2I2V1FI?=
 =?utf-8?B?aXJmbmUveFFwQmczaENsUE0yNmlmak1WM0psMEdPSEQ2cTU3Y0g0ZGJZcUVG?=
 =?utf-8?Q?p2jJvKluxN4fAZy8d4BovNXOs?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d8ea35d8-a010-4121-e4fc-08dbb032a6df
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Sep 2023 06:13:00.2160
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: lcgcO/orl9maXzZvF28UlKH7xMh0gc6vEUXzSem016fZIJbf37iLX8PEyQOqWoT/a3KtlrFC20au/3wBEB6JTw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7483

On 07.09.2023 23:45, Stefano Stabellini wrote:
> On Thu, 7 Sep 2023, Jan Beulich wrote:
>> On 07.09.2023 03:22, Stefano Stabellini wrote:
>>> @@ -385,6 +386,17 @@ maintainers if you want to suggest a change.
>>>       - A loop counter shall not have essentially floating type
>>>       -
>>>  
>>> +   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_03.c>`_
>>> +     - Required
>>> +     - Controlling expressions shall not be invariant
>>> +     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
>>> +       checks, and other constructs that are detected as errors by MISRA
>>> +       C scanners, managing the configuration of a MISRA C scanner for
>>> +       this rule would be unmanageable. Thus, this rule is adopted with
>>> +       a project-wide deviation on if ?: and switch statements.
>>
>> Do we want to go as far as permitting this uniformly for all switch()? In
>> my earlier reply I had included sizeof() for a reason.
>  
> I agree with you that it would be better to restrict it to only some
> switch uses, rather than all of them.
> 
> But if we are going to restrict the deviation to switch(sizeof()), which
> I think is a good idea and I am in favor, wouldn't it be better to
> handle these cases as individual deviations? E.g. docs/misra/safe.json?
> I am assuming there are only few cases like that and adding it here
> makes the rule more complicated.

Personally I think it wants to be both anyway. For one, anything written
here still needs respective SAF annotations for scanners to be uniformly
aware (dealing with deviations in just the Eclair configuration is imo
dubious). And then my general view is that by stating patterns here we
make clear that we tolerate new instances of such constructs, whereas in
other cases we'd be aiming at no deviations in new code.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 06:14:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 06:14:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597779.932125 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeUlL-0000TX-F8; Fri, 08 Sep 2023 06:14:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597779.932125; Fri, 08 Sep 2023 06:14:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeUlL-0000TQ-BN; Fri, 08 Sep 2023 06:14:39 +0000
Received: by outflank-mailman (input) for mailman id 597779;
 Fri, 08 Sep 2023 06:14:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=763w=EY=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeUlJ-0000TH-EW
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 06:14:37 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2062f.outbound.protection.outlook.com
 [2a01:111:f400:fe13::62f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fc4a1ca5-4e0e-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 08:14:36 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7483.eurprd04.prod.outlook.com (2603:10a6:102:86::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Fri, 8 Sep
 2023 06:14:35 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Fri, 8 Sep 2023
 06:14:35 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fc4a1ca5-4e0e-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HntPE3XTOFuvqsmdBHN27kW39IUw6g+D7hi1x6m3eNEcb3/NtpKhxBjuQGF+yqZtRuj2uU3Lch07V0rB6sXATD6OXQy22/1RTERyCZkaVkasNn9nVRJ0KmEawrNTPeMMfvGsi9UBBQkG7doZ5gHwpkV1u3vM6Rp+E+R05tdlx3eaPwfptEX1nSs2nPiyR6DdjkLXEeCAIN6OJU1/VaXWl7IMM0yJxNaPZVbwbeIGX8AWHPd4wgDnFHWOtzPyYA3vKxL9ioXt/FRSaimiBLCDTqFKkX8MJSZuP+mcyQt2ApT4TyNBYAc6NVNEL88aUVR8od8WUKaKUB1HSwLjdeIZ8g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6IZjPNJsBIC0HAb1Ix/VriCMSpqI8pj/UJpDYUmsmhc=;
 b=PHomsOht025NUKeLFUyTJepkNg+JqHuIvUZrsChivSD63Qbo3av+XElB4dLp/PG+VBDqpHU5NTeZXiBQDjzoDtRZ+2Ms/MMmvecKJl6Rq8vCYQxx68p010NJ0y2n9XfAqWtPbsbvNdznQcxMDFazOEojowT6ZChDb82LgXGwRTEgWOQWMYtf80TF3rWGxjlugQmHopN4fDRlF6g9FteqfjTw6Ns8bPBjsOqLdvwl0xCnePCAyLpaTk5FA8Zcu2zOmOwrcDW614toDON1eUxeSYJKyJYkkV9Z47RnRGU5K0GGgwbpbZz5fJOdj/XCTz6avxvajY67hhB9tOjAjLt1Jw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6IZjPNJsBIC0HAb1Ix/VriCMSpqI8pj/UJpDYUmsmhc=;
 b=1iI2T9ajOoHdrurPuLM18+U4f3qXdyHvWWBCO7v2PdTb3IiXXwefTNoNKbVE9UXFU3FRouX6LBVJWhWYgNDRt1ryNddWtUQoV2pRym2QWT/D2nxCF2gaV86JOlID82B3Aij8bTlBz07MKAZn4rUR9SGcDWDXKm8wu1XvBoxLXZ0LYrlz173NSoKH1uRK/gLKIyT+04H/D9HlO0j3rG/irJctd2tD2xYqqd49d2nVj/VAu8/tedqGgCtTwewAmjAAz3qpUJciGP/eQvOjGS/Tcec9mCzbIqx36i50qKwoDai0LZk08V7nU3WPBVYq30JmVxExmLHhtXvI9i09LOb+Cg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4e434095-36e9-0cf4-349c-b104a9af2756@suse.com>
Date: Fri, 8 Sep 2023 08:14:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v3 1/5] xen/ppc: Implement atomic.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693590982.git.sanastasio@raptorengineering.com>
 <917dc5517b69657b48e69c4100234383f5c70e0e.1693590982.git.sanastasio@raptorengineering.com>
 <692dae52-947b-5856-f1b8-5d9f03f78e6a@suse.com>
 <63d361c3-4b6a-1e12-db91-8723e3277252@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <63d361c3-4b6a-1e12-db91-8723e3277252@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0194.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ab::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PR3PR04MB7483:EE_
X-MS-Office365-Filtering-Correlation-Id: e519525f-f17b-4c7b-211a-08dbb032dfb4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rHNyAXx4VkeVB2bLqlHgsMrNVMEXzPmxdIPTnjwq6ziTSc9xcZfrm/HzeNYQiTeFfPA2Dbv0EsNalX8O9jiwocla64C9HEShSbqXWFBrDYEkoi7IOpPaCuig3W+CgI3/Vg0YjT//Xrum/fQ/wmv6Hk8g1Z0g4PpZX4A3q81RlUUdE9jQcuJOf++v0PMjm2cX8f7TNqR1dHyVYGTifnOuMxHs/6QTpdSxeekPJw1ijq+kSxT00RdujFZO6gOclfTgx0a2M6x1ac52MYbnUGm5xhrKoyHoYBx7j6AHxUDYr+LByoH1Oo4k3FcXyt2HG4Ou9klvosTWQZ+9+dmxMsGMLylIo4GbdQQ18Qxd1y5Sgeanez/c6Dqk0cc7x/p2SGWCbnvrLIQDAUOgywnCeDMH+Rw+1ZAx3YE+5MaP6Z9/13t86oZ+WtKtHb0Yr0JEquUwpJlJOwwK07O4yBxx8Z3QHv5KfeKN1Gq1MzCXLUJxWAhmSlv0uFaSi0jfwjTbqsp9J4SSXuEiuY5TZx0A9ZufDnFscmcekTCJ2QUl9aAlGlAOxkbxv4TVqPSXw4NFj0LU+Pr0PKOawqrN56Trqh4n0e7bCBSHB3ac/E8tSQmun98l1I9VsFOMeut8Swjd4fkpwPZpLnREaOHV3F7OdN/Jqw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(136003)(346002)(39860400002)(366004)(1800799009)(451199024)(186009)(31686004)(53546011)(6506007)(6486002)(31696002)(86362001)(36756003)(38100700002)(2616005)(4744005)(26005)(6512007)(83380400001)(478600001)(41300700001)(8936002)(8676002)(4326008)(5660300002)(2906002)(6916009)(316002)(66946007)(66556008)(66476007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bEJSOEV2YVlPTkxYZ0twRUphcDA0aTl4MFN6cnMyVzNsMTA4bFV2WHVwaGxn?=
 =?utf-8?B?NHQ2bnE1NjM3RS94ZFJQbjdjTHBxTlFiK0hmQVBtK3AvUVB1MHBWd1VWZ0VQ?=
 =?utf-8?B?VG5OS1AxKzdyOTdYd25wb3p3aU4rOHFvbVVBR0h4QmJVQmU1YlQxT3FOa3RD?=
 =?utf-8?B?N1dlZUdDdWpTNExObmp1d3A0MzA1amYyQ1hpOHQ3MHZodjkyL04wZ3RoZlB2?=
 =?utf-8?B?ZXBTZ083eGgvMzQvb3prV2tvK05YL3hicnRYQkVrODJrZnk1aG5RQWhRVndu?=
 =?utf-8?B?ZmYyd2x0S3NxRHJHdkJxRVF3VERlUWJQSXZaRVVES1llU1hKZS91QUd5ajZL?=
 =?utf-8?B?V0pHZStTWEJFQnFDazhGUUhoU2cvV1pDMUhCQVNWc0hzQ3lJM2o3OE5lL0VE?=
 =?utf-8?B?dUVYUUs1Mjhhd3lvZ05pZ2FFZ0gyYldtWlQwbkphMUE5elZGVFZGdjR6NFdZ?=
 =?utf-8?B?WmFFK0dtOXBUTGgwc2tBSDI0ZUVEWWN4UThuRldiRjJ6ZkU3c0JwVEJxdmJW?=
 =?utf-8?B?ZFc3VERmRnJEQjI0RXdhQXZGTkZYMUFPOThNUkIrT0FMN3hOYTlUSUpHS1Ny?=
 =?utf-8?B?VXFQbDdCRFRVN29tcTR4UThHTzRXZmlLYmc3TThYYzhqRkhwUEpvVjk1QU5p?=
 =?utf-8?B?a0p3R3FQWlVtaHNlc2l0Y0ZVZVI2RXdKWGxEOFZlQUJ3dyswTTB2NGQxTlZN?=
 =?utf-8?B?Sk0rUllPQmdzMW9UUEl4RzFFR3NCaXRNc3VMRVFMZHp4dzVUb1VvQzdpOTNN?=
 =?utf-8?B?UlJyOUFiK1lJcStzVmFRd0Y2OVBBbjlSSVh5Q3E5dS80b3JKY01sL05sNk1Y?=
 =?utf-8?B?cHpZN2t5OFBCbDNKNnZsbUpoNGVRTWlUUFJ0MC9rMWtaaDhJSXVXZDBkNXdn?=
 =?utf-8?B?RWp1UnNkZVQzamFlSFJCcFZlTHc2bXZ2S3pzVXU1TWJyRHg4b1JsblA4VEZU?=
 =?utf-8?B?ditZbGtXdFV6Z3huNkV3eXBzTTRoRTdkWWdQYTBxajdxbG85L0pEZnpaWS9n?=
 =?utf-8?B?NEhSVDFobTBsak9UdW5WZlBHZ3Z1YzNUMkhTdi9CQk1GcCtuMVM2Q0pTcU9X?=
 =?utf-8?B?Yzl4Sys5dGZXYlNKMkRjK2hTRitFOFo4cG1zUDhDaGZEcnpDbjJvK0ErUEtn?=
 =?utf-8?B?U0I1RHRYNVRiZmJpeXdlR0MwY3NhRjgvMUE5d0Vyb1kzUzRHYm1HWUhvVHRl?=
 =?utf-8?B?WmdmcEVQSmEwem9kMG5Ma2l3cHlCcUlzMHJ4d25ERUtoZmtVUkhWd2p1TGhz?=
 =?utf-8?B?YlRnL2hINHZuMnZiTTR5Mjc5K202RDk5ekU5Y1gydjdqSGhETFpPYU5CTXZu?=
 =?utf-8?B?RTVzVHh1SFhVeExFTnV4MDBRa3JqSVFYQ2h1UUtsTjZ3a3BMdXpESEtLenp4?=
 =?utf-8?B?OVFLTnJHVFlCWGg3VWZCaWFUdjNiNXlnYUdDUkliVUlNQW1OQmxlRFdqUmdv?=
 =?utf-8?B?MDIyL2dRQURkaEd2MkJOODd3VFdUZGozcWhOVm9OUFV1RVRNMEtqOGgvMkFp?=
 =?utf-8?B?WlJHcWV0ZEoyL1NPZ1FnV01OK3JWaDBnOU5HMlRkVG9MU1VNOFVmU0t5N3BG?=
 =?utf-8?B?di9zVVQ2c3JvSlRJanNObzFJbUJEbzBZOUN1MFhrcE1LVTFYeSt0RUtMUVl0?=
 =?utf-8?B?NW1Qc2wxQmtUSnRUVjY5clBoLzlad0JMWXFBb0pndyt1Zmd4N2dDU3dEbXd5?=
 =?utf-8?B?dWxUS1p6eWpPMWVNQVowdXhIWDJpdEV3QXMxNUIrNCtxN2piMkwyTXlkY2s5?=
 =?utf-8?B?M2F2dFE4MElHQ0FFbE1WZ0JUVXNCd0RpSmhQZHFaTU9HT0ZrQVZlaUt2QzJW?=
 =?utf-8?B?UlFPQkx2bG1sdG9oK0R3SzRBdTJNM3JtcytlK1ROckhmcXdiUjlHdHU2MEhM?=
 =?utf-8?B?dVVOUGsxWGlOT1RJdjQyWlpLOHZsQUpnVDBKK0RDYnlVWWFhcnhjQlJOS1Ns?=
 =?utf-8?B?V0pDTHhiRTdtYlFmLyt5cVdiNUI0QmQ1b2oxWFhHNFVSem56V1R2d3VYUm93?=
 =?utf-8?B?TFRZMFp4bitzOGVhVi9oTXJnVkhtL3l4RmxxVFh2aFFxbyt4bnhFbGY0TVQy?=
 =?utf-8?B?dURYOTFuNUdrMGlMYVMyczhOMXZsWVBHazZMNElQVmVtY3lDQzR0YXVCeXd0?=
 =?utf-8?Q?NTrk6R+oMsD7OX/pzH/G+OEpU?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e519525f-f17b-4c7b-211a-08dbb032dfb4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Sep 2023 06:14:35.2111
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9nhYdfOnAwMWPhRo+2JQueWBHOwjKIDMsLP3AAaa9FIdOmtpO1yWEqIFyMdV4r7gG6Ly6o6gPaffGLszUdOZ8Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7483

On 07.09.2023 22:10, Shawn Anastasio wrote:
> On 9/5/23 9:58 AM, Jan Beulich wrote:
>> On 01.09.2023 20:25, Shawn Anastasio wrote:
>>> +static inline atomic_t atomic_compareandswap(atomic_t old, atomic_t new,
>>> +                                             atomic_t *v)
>>> +{
>>> +    atomic_t rc;
>>> +    rc.counter = __cmpxchg(&v->counter, old.counter, new.counter, sizeof(int));
>>
>> I can't seem to be able to spot where __cmpxchg() is defined. (I really
>> only wanted to check why it needs the 4th argument, which here rather
>> would want to be e.g. sizeof(v->counter). If it can't be omitted.)
>>
> 
> As you later saw, it's defined in system.h later in patch 3. This was an
> error I made when splitting up the changes into this patchset. If you're
> fine with it I'll just add a mention in the commit message that the
> definitions in this commit are not yet fully usable.

Sure, that's going to be okay.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 06:17:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 06:17:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597783.932135 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeUoV-00015h-St; Fri, 08 Sep 2023 06:17:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597783.932135; Fri, 08 Sep 2023 06:17:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeUoV-00015Z-Po; Fri, 08 Sep 2023 06:17:55 +0000
Received: by outflank-mailman (input) for mailman id 597783;
 Fri, 08 Sep 2023 06:17:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=763w=EY=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeUoT-00015T-O2
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 06:17:53 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on061e.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::61e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 710c0de9-4e0f-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 08:17:52 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8450.eurprd04.prod.outlook.com (2603:10a6:20b:346::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Fri, 8 Sep
 2023 06:17:50 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Fri, 8 Sep 2023
 06:17:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 710c0de9-4e0f-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=B+lL0dJDXPNOD1tjcPL0QtqOOstm4RodHXnVg8hlaMARoVLOCTQ0N3RNz+0Rvih5FfPZuCkYPOp4IX4sH5mvMwVCSIlunxmaWJ8RjtZcOvAFD9hr9QkUGzTEWD8ra4naXQpJwatqc2EEh7khchSFRb+itZftYfWkL4CK1fdqtZuj0qVSe6+3t3IlirzYCNSEck6Zo5Z+bvriZVMwFKJUG15hgN2+cRdqmxhqJJnk7YjVgOHENHUZ7JvEuJtJOE2ellb+HzA4XYPRsi3NX8anRNNTzU+wgfFMOzvlGxkjwEf6ijNuSrDo76/81knH/Xs8rOxx5br5vPZ/MHEkGzAGWg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=q1iV9rvlr/jPTJH0NXdUnoA3qf0pAnHfvDnppZSjljY=;
 b=k6Nzl3P9/8pU9hiWGYEBC/vFaK3AhH3fH+nZsbXgCe+aqIBNP70+84FwE30l2ec+eMYnYUaGT/oT1HM41gBh45/mQODU0ItsijLBbM5h1rxCM0Pz75ujSpNAOO50RARCMGndqUk+VYasL1SbF6A64Yu8B7IoL0RZrxE2HW59kxOl2DI6n+b6eGzINf/0u9pbG4E/kp9awkCk0gCtPst/MSftNLMRL9CjdM6FeggTeR/hsBYIBl/bd/sFJbbrBU7tSh7+mVJfykTUShRhwBaVg9O8WZfRC/NjiqCVtyfTeWo653VLtAgv9NSXRqMKy6Dj7Voh7G6VkQ1yuZasw3EawA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=q1iV9rvlr/jPTJH0NXdUnoA3qf0pAnHfvDnppZSjljY=;
 b=LzQcsICzJKgKnpha68Te0VKbJ0FphB9u9IiSeeZaoxlIiZedLC4WxxQ9IKte2bhrohExgclJxCYFBYxN/cP0XfUZpFQzWB+h62zQestLJJ0n0PoVLnuXNsSoQru9aZTxl70c5Kgb89SQp5xkFOUr5DUdrC1v/cQi/VHMPTuJqP+4vPEUQaHMH/vZ8FPhWNiCkF14ufW00zv3QoCgNBVb92tvKl+9agz5fH8V6eKCjsxl58ME+3yuVS0u/1Hzln6SBEcluJRxd4beIWNxGsQg0zmXVMqWWOCc7wZJdnKArgqT23u0vWAdUuL9idw3VZT5d3YH4uGrd+k9UNGrOMLCAQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <736fe655-f629-b97b-d8ab-b3552e6e62b5@suse.com>
Date: Fri, 8 Sep 2023 08:17:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v3 2/5] xen/ppc: Implement bitops.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693591462.git.sanastasio@raptorengineering.com>
 <63e66eed26da8f957315cb1db05693b1799ee7ad.1693591462.git.sanastasio@raptorengineering.com>
 <003690cf-e34b-2e61-1166-86bcfd9da3b7@suse.com>
 <09e0f475-627c-1a8a-6175-b8d32f744053@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <09e0f475-627c-1a8a-6175-b8d32f744053@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0076.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1e::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8450:EE_
X-MS-Office365-Filtering-Correlation-Id: 26ec4c3c-5182-47a1-6d98-08dbb0335414
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	2BJ17468VztzyyTzWARDKSHTIDUV7kUlBqBTg/oYxRmZKiHfxB375n1d0gB63Qw/BtX1+BAoyS7Y1mwFpr4+6dsvQgulLgdC9iaVzXfQto7VhWSpOQeZLPhJLXk37S5OeSwXXgr7H6TJva3akya25aIpiR9PrFc3h/RzHWa5S3cB5Byb9dJGz9voOKdrk89MDue1SPi0mhz2RKrFQwLwHKUtIzntf/z871d4GRngmmGYeuR5wuMJ8wUBdFuva0hVCCuCJGGiaX4fICjaTkbGG6u8GXlL6hqgq83l2cO5vk532PqdFPfg0eKFgBTLbUx/esFdmuiwMpWZHY+wTueB3puPZrwaTtGDo+fWMI52d30FhdkFZk113/TgaheuFVGTqlnNyGtuVVMgLr25g56SGPNl0gGXNQWTaowZXD7N/Nduo0Bhpqj90PXCv+41KqKmdXtab6Jy7f2qlr2HomIwsrkKhgqpMx4m2i7VVJAYf4PG2jdodx+wl5CFnW8Yl9hDwrne8rmEQS6YoPQLbKhCTMhjtPwTB1+zKKm+c9GjJEDDB/3cS37wwwTHLqQ4+yYNlF2PoAFP0CsGWWQocVbQ01smM23/+X1GEkKWa8QPcV6WKyT7Ux+v12irF3YD7g6+lFu7q7oNVVgeWGDEX7abRg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(376002)(136003)(396003)(39860400002)(451199024)(186009)(1800799009)(31686004)(53546011)(6486002)(6506007)(6512007)(36756003)(31696002)(86362001)(38100700002)(2616005)(26005)(2906002)(478600001)(8676002)(4326008)(8936002)(5660300002)(6916009)(66556008)(66946007)(66476007)(316002)(41300700001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aFh4UnNNY0tpcHlRZ2JFcnVENkYvQzZjL0VVK1YyT2IyUFpWdlBBWTdvWWsz?=
 =?utf-8?B?RDNtZFN0emFFdS9HbjlnTTJGRDBpSENOdzV6a1hLbHR1ajFmengyK0QrQmZ1?=
 =?utf-8?B?L2RJTHhwWHlzbjQ1d0dGcCtzbkpSYzdVU0lUOEN2ZGZOSnBUbjd3OGdRcGVo?=
 =?utf-8?B?MytBbEMwZWhZMU44c1ppRWMrdnNRMXJVMmNUcHFBcitXaHdwWVJUaW5xb1Nk?=
 =?utf-8?B?Z2Q0L013T3QzMnU1VTA4UHFWU2FkWFpSQlRqdUZEekJ5R0FZanNtVlZlWGhH?=
 =?utf-8?B?K2NLL0F1UGE0NkxwTDVjQm8yT3pMVS8vQVpNMnF6d0ZzY2gzaDdiVzJuak9x?=
 =?utf-8?B?NjB3TkVLT2JCNXZZQkFhbWcyZG1RNzFtYmcvRUY5VmVRdnlhTzQyeExpalBy?=
 =?utf-8?B?T2NYenN6bE5hZ0VXUmduU3h0MEJ1czJiUFFRWWFVZEc2WEhqUHRpU2pDOFk0?=
 =?utf-8?B?dmFJdUdBSG1sNFdlWlQ0QzMxQlp1RW9qRWljQmxuaFk4L29mSTBNNXEwZVZa?=
 =?utf-8?B?dXF2Zk5IWmExSGhzSWY2SU9mVnRzRFBXNFlvcVJkVHd0YnJPTHpWQzVhWWJy?=
 =?utf-8?B?ZElrenI1aE00bk9sL1QxYVl1SFRPZVNya1BMdHg0VUFQdVhEQlZKN2loRTMr?=
 =?utf-8?B?eERrM2lEb0hsaUdEM3N4S2lvWnppUFVTdkhYRmJia2h6SkRqRERZRWl1dSt5?=
 =?utf-8?B?VlR4TnpaYUIzajYvQ0liQUg0VGxJRSsweXBLdzh5dFVLeFBtV20xRmpTRVNK?=
 =?utf-8?B?MUhwSXpDS29wTDJQek8rVVZJdDQ1aXhBSnhuY1QyMnl5ZERmbG1mZ0E0Z0Nr?=
 =?utf-8?B?c2UrNnlISlhmWUNtSDRoYSttY1ZzblFMK3R0UmMyWUIybW5tdkg5aWNzdFhO?=
 =?utf-8?B?bk9lQWRuL1IzYnpuOUJPLzJnelIxeEp4cmJaQlVzVkdxdExrRkdubkNUNDJ5?=
 =?utf-8?B?M0IxNUt1MWV2bVFGclh6cUNrdUJlWEdtd1gzb0pXTkVKcStkdTJWa0hRNjVQ?=
 =?utf-8?B?ZUdWL1V1MXBadGlvamFUY1lCelpWZXl6K2NJK29ocG54NHo3cFB0andtSnNa?=
 =?utf-8?B?ckJ2TWtONGxZOVFDNlpHY0o1UnJDbkVWZTJCemhnWXZDZStISWEzK2N3VXFl?=
 =?utf-8?B?Ty9PcnV2ODJBMFdZNnNHTDdpNlh0ZTNpaVdJWjlvUnFpYTdhejg3ZG5JRlZI?=
 =?utf-8?B?OWx5OU1SUFpsQzNaa3hUaGtRZTFjSTc4dUlWTGM2TXF5bFlGWUZQSE1sRTNp?=
 =?utf-8?B?NEtZT0RJWFlwVm1vSFo4NHBBSTFzV1NraXJ5QTNBTFAra0t1eENDUnM1UDF6?=
 =?utf-8?B?ZVg4QnZHdmdzcmxIYlNPQTQ2WktYUnlVQ2JDTEVXU29VMGhrbnB0VWlocmw0?=
 =?utf-8?B?N1RtRE9zcnJpY1V0U1plSXJreFhKN0N0cFloUHF5TjJOdG42ck1uRHprbS9V?=
 =?utf-8?B?T24vTFhENHFIYW1TQTRLUmlGOER2VFUrbzYxRmJsY25TMTc0bzVvZ1c4Y0tF?=
 =?utf-8?B?eWU5UXBIbytKdkRlanNDTGUvcXJ0UWp6cDUyZWt6cENOMmp5aU83cEpETmtn?=
 =?utf-8?B?eU9haWc5RHYwdFA5UE5SRUg0ckY3b0Z5LzBjbW1tdU5qaXlFVWhsNk9HK3Vi?=
 =?utf-8?B?aGlSWVNHVHdNYmhBQktrVHRWVWlpdE9ZaE0zTS9uQWxKTzZZVjhoQThiL0JQ?=
 =?utf-8?B?bDBrbEVTVWFoZlgvTjdvSHVlR0JJSkFiOE5XNjFxQWpuclR1VjhYZFNMTWx0?=
 =?utf-8?B?OGl2VkdrU1ZLN0tjYkhxbEgyR3FYUGIxTmJIOGhCTFV3aGpQSnJ5K2xpTlNn?=
 =?utf-8?B?aG1SbUtVeG5sMkpmT0VlTXU5ZWNBZEdkVXFMTWRMT3oyQkhuc1p6L0sxdFE0?=
 =?utf-8?B?alV0ZkF6OE91S09HVFJnSm1MSXMrbGpnZ3NJVE5iMCthWCt5WjJZT2R4cmlQ?=
 =?utf-8?B?RFJoQ0EvdzNJaGJSY0tDc2h3MVBiK1c1QTZUV1FzMExoa0JIbXNVeGtXbkZS?=
 =?utf-8?B?OHJaWXJiOTlCeGVSMWJ1Z1VvTVo4MytwMm83UDNXMVZwZmlCM0xJUUo1VWpX?=
 =?utf-8?B?ZjFkYWk1SWV2VEMrOWRCWmJ5QTIxSkg3UnU1akdGL08vOUYvYXZESDhiNjlr?=
 =?utf-8?Q?g1RUMQTz70HZLPt6qtLGGfpze?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 26ec4c3c-5182-47a1-6d98-08dbb0335414
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Sep 2023 06:17:50.4906
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /ytrrstv8V8tlb0hFpcYReA1PEoAeO6TBZEwqSoKRrJJT3GsQ4tVNpBCXQHApQo6kXlARw9RQSCRa+gabAjN3A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8450

On 08.09.2023 01:12, Shawn Anastasio wrote:
> On 9/5/23 10:19 AM, Jan Beulich wrote:
>> On 01.09.2023 20:25, Shawn Anastasio wrote:
>>> +#define DEFINE_TESTOP(fn, op, eh)                                              \
>>> +static inline unsigned long fn(unsigned long mask, volatile unsigned int *_p)  \
>>> +{                                                                              \
>>> +    unsigned long old, t;                                                      \
>>> +    unsigned int *p = (unsigned int *)_p;                                      \
>>> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER                                    \
>>> +                   "1: lwarx %0,0,%3,%4\n"                                     \
>>> +                   #op "%I2 %1,%0,%2\n"                                        \
>>> +                   "stwcx. %1,0,%3\n"                                          \
>>> +                   "bne- 1b\n"                                                 \
>>> +                   PPC_ATOMIC_EXIT_BARRIER                                     \
>>> +                   : "=&r" (old), "=&r" (t)                                    \
>>> +                   : "rK" (mask), "r" (p), "n" (eh)                            \
>>> +                   : "cc", "memory" );                                         \
>>> +    return (old & mask);                                                       \
>>> +}
>>> +
>>> +DEFINE_TESTOP(test_and_set_bits, or, 0)
>>
>> Why can't test_and_clear_bits() not use this macro-ization? And if it
>> can't and hence there's only this single use, wouldn't it make sense
>> to avoid going through a macro here, too?
>>
> 
> I've just tried this, but unfortunately the "rK" constraint on the mask
> operand only works when instructions have both a reg/reg/reg as well as
> a reg/reg/imm16 form. This is the case for `or` but not `andc`. I guess
> it would be better to keep the two separate implementations rather than
> try to accomodate both cases in the macro somehow (e.g, by making the
> constraint's type a macro parameter as well).
> 
> I can also change the macro template into a standard function for just
> test_and_set_bits, given that it's the only user as you pointed out.
> 
> As for your previous observation about the superfluous `p` variable, it
> would seem the same applies to the macro here. Other than casting away
> the volatile qualifier on `p_` it doesn't seem to be doing much, so I'm
> inclined to remove it.

Right. Comments like this are generally intended to apply to the entire
patch or even entire series.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 06:19:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 06:19:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597788.932145 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeUpd-0001f0-79; Fri, 08 Sep 2023 06:19:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597788.932145; Fri, 08 Sep 2023 06:19:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeUpd-0001et-2w; Fri, 08 Sep 2023 06:19:05 +0000
Received: by outflank-mailman (input) for mailman id 597788;
 Fri, 08 Sep 2023 06:19:04 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeUpc-0001ej-C3; Fri, 08 Sep 2023 06:19:04 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeUpc-000344-9V; Fri, 08 Sep 2023 06:19:04 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeUpb-00052e-VX; Fri, 08 Sep 2023 06:19:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeUpb-0000y0-V2; Fri, 08 Sep 2023 06:19:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ju0fX1V9DY1mg5K4ETELj8iggYEJXKKEFYpQfaqJp5Q=; b=pnGUXbr812uy+hjIisyaps7mio
	pPYao08tf81PunQB+cYsGkcUO+nOsPaL3bUIhPwnqIk6034o9wPW1NUQQYFJ8/KU+VOc9cYmfRE76
	rAGJ4TkUsqyy7Izni6t0LPDR6DhXp8ra6GNBZyvq7z/C9OZIpnmBOeEcp8yM6n7O5Yr0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182727-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182727: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=634192665ea22eb610ad54f10bad8143ef77076d
X-Osstest-Versions-That:
    ovmf=b29150aa3e9157908052c212d3afacbff8dbab1b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 06:19:03 +0000

flight 182727 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182727/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 634192665ea22eb610ad54f10bad8143ef77076d
baseline version:
 ovmf                 b29150aa3e9157908052c212d3afacbff8dbab1b

Last test of basis   182722  2023-09-07 16:10:41 Z    0 days
Testing same since   182727  2023-09-08 03:42:30 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael Kubacki <michael.kubacki@microsoft.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   b29150aa3e..634192665e  634192665ea22eb610ad54f10bad8143ef77076d -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 06:24:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 06:24:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597796.932155 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeUug-0003Tf-Px; Fri, 08 Sep 2023 06:24:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597796.932155; Fri, 08 Sep 2023 06:24:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeUug-0003TY-M8; Fri, 08 Sep 2023 06:24:18 +0000
Received: by outflank-mailman (input) for mailman id 597796;
 Fri, 08 Sep 2023 06:24:16 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=763w=EY=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeUue-0003TS-O3
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 06:24:16 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20620.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::620])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5551de4f-4e10-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 08:24:15 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VE1PR04MB7406.eurprd04.prod.outlook.com (2603:10a6:800:1ae::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Fri, 8 Sep
 2023 06:24:11 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Fri, 8 Sep 2023
 06:24:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5551de4f-4e10-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BqZxpUnVD0/OidsJXyqguha9YVF4xNoU/XCVvtg+luabRS7XQnx/p8tHsfKUuksoBvg47bGhJNohH9O57GbqHLNDhEG2H/DbptJrVFX7e11C9CklBDTyyYsMOK/Nj1Hfz57wRrL5wB+ELUsOcOZk43cwLN9Vau3zTwUgGtWhF+7F+IOOeoKkh5cNz4fLTHbJdhkf+2Wkle89xjIml88srGezFC6Xe0CE6dAwYzftHsak1pqWz2sM+EVME4HbIqAzvsKgRRgxKZEyRxYi3gP68H70m5SZG0e/WMvk94a9piCbpYUBJaOw/TIGwK7zhNPWjO6IzqJp2AtJ2CPW+epdDg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yme6FN46mKlGHgHCpH6tMqbxJt/dWIZo3ChgSrg+J64=;
 b=LTr9YhinW2Sd8HVYX6VxhRUsXXjkRBhTC1m9OdRrfdsPvfqHxt/wtterFvA61MxrldFG/cVbD8n/HLBda1gX5UQ2CjMjSbfbNw5gPwyNsyAX1AM/dXgN/yYS3pFtq/b11GZcXd/nZonTrDmXnT9Vya5gKForNC714ENn5+gHw7vxT/pmtZvsYdFcWXig8YwiZCyksALFzlB7Otxv2idNl2Rbm/9TScTA8sWffnmbR2zg6Cxa2rOGoHQXOy4y7Ez3cm1yicJwUwyuBku/k3zc90Bu1Pq5nyS6PglDa+JmvW/ZccOc9VGlHIzCToHdwWqiTwQ0tJ/j15r4ga98QxdChA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yme6FN46mKlGHgHCpH6tMqbxJt/dWIZo3ChgSrg+J64=;
 b=eyVhZQkaMzZEL+juKA0RRSadKTcyOBs/Lxd4Ovkg+d8suwoXiDhZrHKaOW5Rn+WLCCQoSjbVHkSBvZMQ9tM8Rzx/lUsU5mX08Z5OEhE/l+Lbu7+XtS0XafCMeGrMsyqXPXiA27enkExmP1E8fJ+xxdVf4zduKgOYp8Q0Fc1CDBgtB7SJam2P3LZYAU5C1xM8lAiKv580rNyj5go5Qew9qj22hKABRm8UyemEJWNKyksoaAkWNm7FfbgFWI/8o1ptrBgEM6GmHT6ZbwSNyISzLYMhGgyCMBQqpTzK48Blj2pxuEbgZV5+4UqtVhC2JeIrqs5v2D9j848LHyVS50UmTg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ebf82139-08ed-b461-a49b-f89e9d8d5253@suse.com>
Date: Fri, 8 Sep 2023 08:24:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v5 4/5] xen/vpci: header: status register handler
Content-Language: en-US
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230901045742.235975-1-stewart.hildebrand@amd.com>
 <20230901045742.235975-5-stewart.hildebrand@amd.com>
 <3b816ecd-e7a6-c6a9-9b42-b9287deac111@suse.com>
 <d8de036e-8774-ca96-3fa4-1c9bd087ea7d@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d8de036e-8774-ca96-3fa4-1c9bd087ea7d@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0007.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1d::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VE1PR04MB7406:EE_
X-MS-Office365-Filtering-Correlation-Id: 4f3a7198-c187-4bdd-67e6-08dbb0343732
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9Gn3Fz5I9K0wWUZIIMhcnmD7i6x+dPFZpdWztYhsbDGJUWRgM/mlP6Xe+SaT6WaicUF7I4/7bYSM1Glp0bwHuu8NEgtfozobrLHeD1yOTQWom4AWUWJP051E2xUvOZGIb4nM6TABjrCx8WIxPoQD6f4tLs1+WwYsrprkDKb+OCiweNLDSzFylRV6wrbEb0nn+KmBrwdMcWnYiTHiRDfJprOJ4FMN1dDHe895tqY2GYeTdM9Bhgp++5iejQOgXCg/3P88aiCzQ6T6UXu41gxgwuk1l2dM45gwGNiStmB6GnZqQIUoDTEtrhY+p72EXOuTeDZ7UAqcW87rIUUzOsCFGITBn2BL2txay5DlWgUmHEvyNdL/iSSe/vqdbAsZEnisR9ECGtJLudgBKHdepGMZxVRUo5smxsrjQPllQy42HdiygjPrTdpW5gi231IjDh25uDyeF57zXIdS+U5gacgGQsgIVl/MIFQZnDYoEQB3/vN6vW7iJlZRLYJjFSwAQQ3Q03LsUPy7e9IAd6wJ1ZS1fTgWS8G6PCWtybFqmjQzf1Kw/gY9o64DLlgfaOVqbdbimJiXbEsvcxGGYXa40I5mb0KMqldye5B7c8eaZ8IrA54jHI9d8Au/niw/VC9C+2Gew8ZiNTrzjeJSDIn8iSMsCGYASLwilc2EchptrSOETOZgXyKnhuOCrCh2Vt1GDdbX
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(376002)(366004)(346002)(39860400002)(1800799009)(186009)(451199024)(38100700002)(36756003)(86362001)(31696002)(6916009)(54906003)(53546011)(6512007)(26005)(2616005)(316002)(5660300002)(66946007)(31686004)(66556008)(66476007)(6486002)(6506007)(478600001)(2906002)(8936002)(4326008)(8676002)(41300700001)(83380400001)(43740500002)(45980500001)(357404004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R0x5RitqQ0FrNWNDQXBqeis1ZG9tdkhmM1pHdGI0YWtwYWJ1QTg3REZ0bldW?=
 =?utf-8?B?RTRxTmNJTHU1RTNSa3oyTzZmbjl0K1hUaEFmV0s3dVF1QVpHS3VJZXhIY2E3?=
 =?utf-8?B?NTVyVXc3YUxSNVhJaXFjQlRiakpGVzRRSW5CUjBmMFZrdDQ4ZTNSUjAxc1Iz?=
 =?utf-8?B?aG4zaGV1N2l3eEY4QWx2bFQ4aHVJU2FTa3l4SnE5V2t2MXIwb2pNZk9HeFZG?=
 =?utf-8?B?b0hOSDRvR09HN2U0YUxxVnVRQjZ2b2NER04vN0VEOW9tRXk0Sk0wU2N6L1pJ?=
 =?utf-8?B?bHpJM2pqY09MWXlndGt4T3BReDlNMmt5YmU0ekFDSjZjY0QvM1U1YTYra3do?=
 =?utf-8?B?T3N4bnZMWG1RMkJVb1kyRXQvTm16SlNQVmRQVnU5VkpGeTNJUHJzczZtNkJP?=
 =?utf-8?B?NEQrOXM4S3Z0Z1J2dmFDQXp6clZpU0s5MUhxZnFQekNsK1lkcEpIaVpFcjBY?=
 =?utf-8?B?bGFjTUl0NVNjdUNrbTMza3drV040eTdUSDcvK0E5UHdRa3BpdUdDb3plQk1h?=
 =?utf-8?B?MFE4QjYwSkJWV0VCUkJHZU8yM2VldUhaSGp2bWY2dkRkaE85NGdZMmJYaGlj?=
 =?utf-8?B?anRqNE80ZkE2Sm5YcENUc0RBM09KYVRwTG10eGV1eEtQVjc2SXVyNnRiSnVT?=
 =?utf-8?B?UE9VeVkxbWlpRUZ1UDJFMWZuT09RWVpzdU5rZDcxN1hKcktHV2h2SHQzTmMx?=
 =?utf-8?B?UnJuWExCRTk3MUh2ZHk4cHFNUlVWUjNLYXZGOTJPU2U3dFdRRkJhSE9ieE5t?=
 =?utf-8?B?WE5RdjZJQUxESGI0VU03YjdQQ3NYVCtvR2kyTXlHNmZjNFpJTHE1RlRTcW9I?=
 =?utf-8?B?d05EUHRMbnBJdHRKaVp4U0FqVDRqZTlReExDc0NmZXd0TjJRemJOU1FjVDNL?=
 =?utf-8?B?UStmYm9JMFI4RzcvcVBIT01aM0NCY2hVR1VLazd4STFDeGdUUlBnTXFvc282?=
 =?utf-8?B?WFNYUTdMbXlwUzNLeWc2T1JSY3NUT2crQUVBZnVYY3hRNXpHQU1DNkdqU3Jn?=
 =?utf-8?B?YWY3dGRVYTRRaWl6bFBCUXVRa05WMWF3YUhqbjVCbU9GcVd3MGZCeXRrdTRq?=
 =?utf-8?B?VGcyMTlGNGFLb0FyRDl3dnRnazAzMFJqb0JpUDJoSHlCTzdTTFdETWw3Tjhl?=
 =?utf-8?B?U2dxRHgrS2Vnc002Mk9xRzJlWWNMSTF5RDAxMHM2U1ZGSkxOSkhjK1FFTDIz?=
 =?utf-8?B?SG5SUFk2Qkx4TVFsbFdLdTloTGo0bi84WktwcHpsMzFzOVhzV2xZN0FYYnF5?=
 =?utf-8?B?dUdTTWJ3bGdJbVMyTWZONWhtdklDQTZ6c0RkTE0yQmw2a3UyOE5hWWM2RHhx?=
 =?utf-8?B?Ui9OUlFPbU9NaEwzQ25YRlBsMEtValdabFFFcW4xaG4zMmd3L0NhVy94aWZ3?=
 =?utf-8?B?RnRTREFvR1phVm5zRlZkMG9oY1NLWEV1eEJtMDNJaWtaWFA2VU84MnUwR2hu?=
 =?utf-8?B?ZHJrQzRDWWI5ak9xRm1qd05OZzJqcWhwTXpvVzE2bk95Z2ZQQnQwQ1FGdllS?=
 =?utf-8?B?eW9xVTVwcmdqUWVyUFR3M0o3UnIyTkU2Tm1ENlRRL1I0VUdMM3RmRkJ3Nlly?=
 =?utf-8?B?emhUd25pQ2E3R0daOUhmWjdhNkFkUk1SdEk1dWdyaWJZQm1USndEYS9MV2Iv?=
 =?utf-8?B?eml0UFpmNjlXWUpvWWhUSHdBVGZvSm80bHd5TmZhaVFvQm4vSzh4TU1JNmZp?=
 =?utf-8?B?N3NIckZDaTgyT1NMTTdtcGpLQ2h3K2NKY0RITkZlZWZqc2ZzNmJwL0hGKytw?=
 =?utf-8?B?T0VkM2VwQTI0bFpmRW9mZkZ3bHQ5TzVUWGhJdzQ3YVFWM0k5RkxIeTJXTlk3?=
 =?utf-8?B?L3lyYzQ0c244QVRuUlVrQnRhRSs5U0RTa2dzUkpkWEdqNTk5a0c0aGFlcWVK?=
 =?utf-8?B?UXp3ZkNIQXFIcGlLcDlMcC93WEZva3laVFNRZXpwdEhHRlRLd0QwSXVwK3hQ?=
 =?utf-8?B?NlVSZGUvWTNycE1vV09TMjJ6d0xMemJwREVPZTl4QTJuWXNQNkdRVythRXlR?=
 =?utf-8?B?L1ZrdjFId0U5QVE2TkM5akVkZVZXejhSVXo1Y3phVjJ3ck9iUDhwdzVORTV3?=
 =?utf-8?B?MHBSaUJTWTZUOEtlellBbTRkNU5zSlp2aVF0UzRrVm9EMC9kS1l0eDFLTkhS?=
 =?utf-8?Q?UAmgRvXEG+Y7BHGCHimAUHL72?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4f3a7198-c187-4bdd-67e6-08dbb0343732
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Sep 2023 06:24:11.5304
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 1QUw6ydfIqm3Ysu9KTEjcvSZELkLqDBfBGF8d3R9EeaCDLgOY8VaTZ/mczLx2tcr7oAE5eeV0mTPOVtyFme0SQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7406

On 07.09.2023 23:29, Stewart Hildebrand wrote:
> On 9/6/23 04:22, Jan Beulich wrote:
>> On 01.09.2023 06:57, Stewart Hildebrand wrote:
>>> Introduce a handler for the PCI status register, with ability to mask the
>>> capabilities bit. The status register contains reserved bits, read-only bits,
>>> and write-1-to-clear bits, so introduce bitmasks to handle these in vPCI. If a
>>> bit in the bitmask is set, then the special meaning applies:
>>>
>>>   res_mask: read as zero, write ignore
>>>   ro_mask: read normal, write ignore
>>>   rw1c_mask: read normal, write 1 to clear
>>
>> With the last one's name being descriptive of what the behavior is, would
>> it make sense to name the first one "raz_mask"? (Also a question to Roger
>> as the maintainer of this code.)
> 
> Another possible name is rsvdz_mask. See below.

Ah, yes, that's better even if for now we won't need rsvdp support.

>>> --- a/xen/drivers/vpci/header.c
>>> +++ b/xen/drivers/vpci/header.c
>>> @@ -413,6 +413,18 @@ static void cf_check cmd_write(
>>>          pci_conf_write16(pdev->sbdf, reg, cmd);
>>>  }
>>>
>>> +static uint32_t cf_check status_read(const struct pci_dev *pdev,
>>> +                                     unsigned int reg, void *data)
>>> +{
>>> +    struct vpci_header *header = data;
>>> +    uint32_t status = pci_conf_read16(pdev->sbdf, reg);
>>> +
>>> +    if ( header->mask_cap_list )
>>> +        status &= ~PCI_STATUS_CAP_LIST;
>>> +
>>> +    return status;
>>> +}
>>
>> Do you actually need this function? Can't you ...
>>
>>> @@ -544,6 +556,12 @@ static int cf_check init_bars(struct pci_dev *pdev)
>>>      if ( rc )
>>>          return rc;
>>>
>>> +    rc = vpci_add_register_mask(pdev->vpci, status_read, vpci_hw_write16,
>>> +                                PCI_STATUS, 2, header, PCI_STATUS_RESERVED_MASK,
>>> +                                PCI_STATUS_RO_MASK, PCI_STATUS_RW1C_MASK);
>>
>> ... conditionally OR in PCI_STATUS_CAP_LIST right here? Without
>> capabilities the CAP_LIST bit becomes kind of reserved anyway.
> 
> Hm. The PCI_STATUS_CAP_LIST bit is a read-only bit according to spec. Given the rationale below, we would want to preserve the value of r/o bits during writes, so this would essentially want to become a RsvdP bit. I wasn't planning on adding support for RsvdP bits here since there aren't any proper RsvdP bits in the status register. If instead we are okay with treating the PCI_STATUS_CAP_LIST bit as RsvdZ, then we could do as you suggest, but I'll plan to keep it as is for now.

I'd say leverage rsvdz (with a comment) for the time being, but let's see
what Roger thinks.

>>> @@ -424,9 +450,13 @@ static void vpci_write_helper(const struct pci_dev *pdev,
>>>          uint32_t val;
>>>
>>>          val = r->read(pdev, r->offset, r->private);
>>> +        val &= ~r->res_mask;
>>> +        val &= ~r->rw1c_mask;
>>
>> Personally I'd fold these two lines into just one (and similarly below).
> 
> Will do.
> 
>>>          data = merge_result(val, data, size, offset);
>>>      }
>>>
>>> +    data &= ~r->res_mask;
>>> +    data &= ~r->ro_mask;
>>
>> This seems risky to me. I'd rather see the same value being written back
>> for r/o bits, just in case a device doesn't actually implement a bit as
>> mandated. 
> 
> Regarding writes to read-only bits: okay, I'll assume that Xen should take care of preserving the r/o bits (discarding the guests write value for the r/o bits).
> 
> If, on the other hand, we would want to rely on the guest to preserve the r/o bits during a write, then the ro_mask would effectively not be doing anything, so may as well be removed.

We may never rely on the guest doing anything the way we want it.

> In either case, for partial register writes, Xen will take care of preserving the r/o bits for the remaining bytes in the register.
> 
> I'll make this change for the next version of the series (assuming Xen will handle preserving the r/o bits).
> 
>> For reserved flags it's less clear what's best, because in
>> principle they could also become rw1c once defined.
> 
> Well, it depends on what version of the spec we read.
> 
> PCI Local Bus 3.0 spec section 6.1 says: "On writes, software must ensure that the values of reserved bit positions are preserved." PCI Local Bus 3.0 spec section 6.2.3 also says that we can essentially treat the whole status register as rw1c. Huh, that's odd.
> 
> PCI Express Base 4.0 spec defines two reserved bit types:
> RsvdP: Reserved and Preserved - Reserved for future RW implementations. Software must preserve the value read for writes to bits.
> RsvdZ: Reserved and Zero - Reserved for future RW1C implementations. Software must use 0b for writes to bits.
> Both RsvdP and RsvdZ are read as zero.
> 
> I'm favoring using the definitions in the newer PCI Express Base 4.0 spec since they are clearer.

+1

> Regarding writes to rsvdp bits: there are none of these in the status register according to the PCI Express Base 4.0 spec. The older PCI Local Bus 3.0 spec is in conflict with this definition, but at the same time the PCI Local Bus 3.0 spec also conflicts with itself by saying that the entire status register is essentially a rw1c register with reserved bits that should be preserved, which doesn't make sense. The newer PCI Express Base 4.0 spec is clearer, and appears to have resolved this inconsistency, so I'm favoring adhering to the newer PCI Express Base 4.0 spec.
> 
> Regarding writes to rsvdz bits: in this case Xen will write zero to the rsvdz bits (discarding the guests write value). This is how the patch already behaves with the res_mask, but I think renaming it to rsvdz_mask will make it more clear, so I'm inclined to rename it for the next revision of the series.
> 
> Regarding reads of rsvdp/rsvdz bits: I'm assuming that Xen should return zero to the guest for reads of reserved bits, regardless of what is actually read from the hardware. I think we already are already on the same page about this, I just wanted to explicitly state it for clarity.

Yes, we are.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 06:25:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 06:25:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597801.932165 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeUvM-00042q-5X; Fri, 08 Sep 2023 06:25:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597801.932165; Fri, 08 Sep 2023 06:25:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeUvM-00042j-2P; Fri, 08 Sep 2023 06:25:00 +0000
Received: by outflank-mailman (input) for mailman id 597801;
 Fri, 08 Sep 2023 06:24:58 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeUvK-00042W-SO; Fri, 08 Sep 2023 06:24:58 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeUvK-00039i-Pm; Fri, 08 Sep 2023 06:24:58 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeUvK-0005Nf-2a; Fri, 08 Sep 2023 06:24:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeUvK-0004jh-2A; Fri, 08 Sep 2023 06:24:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=U2FJYaCJJTHJp5Q0vJInDYjE8Sqb0FlW5jqA62oYPxc=; b=tzB4m+flIXrtWsdu2nVScdau8a
	SKmajh3kJ6AD698QIa/Pb6Rv35o/88hIjvsDlQtodhMyvdp6YyXRwurOJX/Lg4aheAwM4ZCrUpa2f
	REV3nMUhvNLrBnlPdm1/PmvKHFj12XbywV5j7W7zyDpFp/WwVm3Chxt9ByiYY0eHDFEA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182723-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182723: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-arm64-pvops:kernel-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=03a3a62fbd0aa5227e978eef3c67d3978aec9e5f
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 06:24:58 +0000

flight 182723 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182723/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-arm64-pvops             6 kernel-build             fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a

version targeted for testing:
 qemuu                03a3a62fbd0aa5227e978eef3c67d3978aec9e5f
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    1 days
Testing same since   182723  2023-09-07 18:19:05 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Denis V. Lunev <den@openvz.org>
  Gautam Menghani <gautam@linux.ibm.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            fail    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2162 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 06:33:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 06:33:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597811.932175 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeV3K-00063H-1P; Fri, 08 Sep 2023 06:33:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597811.932175; Fri, 08 Sep 2023 06:33:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeV3J-00063A-TY; Fri, 08 Sep 2023 06:33:13 +0000
Received: by outflank-mailman (input) for mailman id 597811;
 Fri, 08 Sep 2023 06:33:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=763w=EY=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeV3J-000634-18
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 06:33:13 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on061a.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::61a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 947cee30-4e11-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 08:33:11 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB7588.eurprd04.prod.outlook.com (2603:10a6:20b:2dd::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Fri, 8 Sep
 2023 06:33:09 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Fri, 8 Sep 2023
 06:33:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 947cee30-4e11-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Av6q5V+0oTi/zK/WQTHmL7tTP9Aix233H9SNPZAO7g4S2skWS0/e/WRNAJYxVy4VFXNAKF9NodSecvvAzEfH3poq8iLT5Bfj1d8IkLL4hnnopho/wzC4rkP9axZw7W8N7Yq8UbRDQz2Wy70GCGshO0dlakLxeBDQv6SRwVZ+CxRNZ37JFnYjmk5higMyGGkHaT64sf/VBkMB6UPHfsS4J4ppNvPQEMxErFxXVPzFymUmAowEYq2S4hvI4VHjqMNHep3wnwN/ZI3xia2QAZbzwPOqdnQxUpyjnrO/8gchYFFLR4QHxtV7xALz4ERRZLsOPNBdkQuRmFflFHEeuekbwA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rTGfpXSxe47/I7+edLm9a+hrYhWpuk2AW0eMYbStwbo=;
 b=BYRdarUtTgCXiRGjgVS1mYkkyciqCRX6LN9bY4yGoBvikaye/X2YZVUgN54PcxApBpSzSiVELGXP9P4OMprGVhV4p39sgeV9FsnOjDZwHlwme0K4tSc1745A4D9F8RBmMPF4mCbRCCcM04Aa2/T2mtJDhfspv9QiML89WVBHUvk55GvfgrZYjdc+tea0qvrSZMcYo1tEdJU6xeshEfr7HZxk2E0Eop6LlvlgaYG96XeJaLBOR8MGjkmY2b3I05Y6rZC/Jd+t6zleNhf/0cRMkIFRdrwg92CnbixAJDSurNBXapbSV/WjTzAQ/F2zT9SpIV4AvwkQVUT9X3a14Y7GkA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rTGfpXSxe47/I7+edLm9a+hrYhWpuk2AW0eMYbStwbo=;
 b=K2aJu45Ph7gm1/wq5l3nenLB6fBRFqV7JqWrQsdSd3uTSYWtK6KhEzTumTx5yxgpvVn9oWEqo2g5buJ3Akv+BXvvht3xefuuyhRBZqAExM9U774GNL5huq1kE8fEyvmRR8UxixDq/mX4L7RnIACHTwK2o+u/Qa0xTLUQUBwMUkw9tLxSBpCEKnBmDOhUjTtilmWk2eOlbMydXt2s+F8TcwzkaaTr20XrKDSBZAl6aVQiLTd7hmQ+VqKqNZYZlzomw9cx+iBjDQoJ0QX4l5DJsrjJAxA3WLt7seJvb8WRh0HAxVc7tEfuF85qocw+PgB0CKE5fBmnv5AyxSFHFXDoiw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f83504f2-c12c-c359-a1d5-8c20ce3de334@suse.com>
Date: Fri, 8 Sep 2023 08:33:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH 1/3] docs/misra: add documentation skeleton for MISRA
 C:2012 Dir 4.1
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: xen-devel@lists.xenproject.org, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com>
 <e74433904abe30e2e9e030f663a7a87813dabd24.1693558913.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2309071659440.6458@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309071659440.6458@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0029.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:14::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB7588:EE_
X-MS-Office365-Filtering-Correlation-Id: bbca38a3-5352-435e-a7c9-08dbb035777c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Mid/XGPgk39ZR6r+OW6hp8BaMZpwCOunA5LLQC8ssFXgOjylRVpC2i9s7ad7FR8jVg9JnXkVyYhDr5ps7vfbn+znozlzfNQAFOlRIEAEMCUSsOXI/OJPJ7JeAr5wWrx/IcHZXofpRqVh5g768FfToye/uUhzYz0Lg+N14pqWeqRWpPhxaXEn+298KIL80xcXc1KUJIES2heM/5jveBeQkMz2J6JZ+ZTOMrftgOLL1i3gG7Vo43cBCtlkaLHp5zDp5fybQ8B78Pw1NvKwj80RtEpocTEwG8Qs9ZG0WaKB+MXVdbladVLOO/lJ8KrPjz5Hey0SqeDx2B/ncoGw7XadXDYQQqB0i49SKI7O4IkPccbsI4XwCNpXApizEJwP4PDHBfzrmcpa/trDQhzJTnJhxLDt47ieK3wrHOSxWjmpz5PFw6BaREOYPsa57EsmS51cL6BSHeegwLHWpjWbTES9lUSdnTrx8Ei3T/p6zObcwh/qNfRmqUEQjutLgSYzkmTx9QXuF+pQ5cxNrOMMFy/scYRoVIrW+HnI6y1YSq1Ngr1YHT19IEYcqUNKzdetc/g89l/hNvxIQHSKxMuYVmemlnPtTn4UANqOIXEgmA66amGiU4BvtN53vUCye1F8GEfrrS+ZpnCvuuP+hZEGaOU7Xw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(396003)(39860400002)(346002)(366004)(1800799009)(451199024)(186009)(478600001)(31686004)(26005)(2616005)(53546011)(6486002)(6506007)(6666004)(6512007)(4744005)(4326008)(5660300002)(8676002)(8936002)(7416002)(54906003)(66556008)(66476007)(66946007)(316002)(110136005)(41300700001)(36756003)(2906002)(31696002)(38100700002)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NGdQM08yL3AwZWxMT292VWNCVWZoei9jaU9JU21XU1h4RXM2N2R0V2JGNWI3?=
 =?utf-8?B?RWRLbXpseGlqTlhmNG8wMFdnQ2t6MGtvcmdvWkNjd1FDbDVqRWFTU0ZXYksr?=
 =?utf-8?B?V1M3ZmFDSkRISkVudDVad1NXQnA5eXFJVy9RMldTTGtaOEhCMUl2MmFwMWpJ?=
 =?utf-8?B?aFg3N21ncVlHdnlvQjRJN3QvZDI4alBFRUwrR3RDeCtQdmlzYmpxQXpQZW9m?=
 =?utf-8?B?bU9Qa3NXRDFRd1ZqaGlTVFYxOVQ5dHY4UDE4Rlc5aTdkSUNWNHE1R0xqQXRI?=
 =?utf-8?B?SDQyOEhPWk04amthQ1pkWnNZQXpKdU9zZGFvSWR4YlkxOHpRTXJEaDZiY1Yw?=
 =?utf-8?B?M3d0N2ZSZXNyQ0Z2MUdCMEJlNHk0b05ia2J1N2Y5ZkNsOUZwaVk0QmZwcDMy?=
 =?utf-8?B?UHlrcTgxWnk3VlpDUEFORTF1Wi9pRXU5YUwvWGduZFJBYmNPckVMWXZGbDBC?=
 =?utf-8?B?Uy9FWUJEODhHa1JmaGdxVTlNeHNpRzdEZUlFV1JtaTJra2RKeS85YmhMOWs3?=
 =?utf-8?B?aFRYcXpWQUZPNVVrbld4TVBpOWpIY1pPa1J5Zi82UVZ2YVFGclQxWmtyRk9K?=
 =?utf-8?B?Y2x3eitvbkRlMTZvMldlbmFmcGpERkoxdmMybG5Tb3FRbmxUM1RrdEJWalBR?=
 =?utf-8?B?aGhsSlU2SEtVOEtua3hoQzNKQitFRUlFTnptdzVKd3lad0V6TkJsMGRtdllO?=
 =?utf-8?B?clhIb1Y2Mkk5RXdGOE5vUmJUbkxRNmJaZEV6VVRyT2x0RFlkMGcvK1NGQnZG?=
 =?utf-8?B?cjYxK2VYNHArM3hqVXhDTW9pTksybGZNS1lWenEzdGY2K1VFUXYxbHl5UUkv?=
 =?utf-8?B?Slc4QkxBT0V6ZzE1eHNNYUU1Sm1kZ0M2eFNSS3h5ZmpxNjAxcU9QRG4zdU5R?=
 =?utf-8?B?ekpzZTNKekMxUWJaaUpWdGkzd2gyNWRHME1CL25LVFJqcU5FVDNCdmRua3Nm?=
 =?utf-8?B?Um9NRURvOHhnaGdlSFdXSm92MXRmb3FPR1Z6OUlaRFFyYjZlVDhBaVYzWWZh?=
 =?utf-8?B?S3E4RnNoVTBrQWdGY3NSdi9aeEhwT1V5RW9hbmNSelIzRk04V1g1MHRKVzFI?=
 =?utf-8?B?WFQ0OTBzeWZ4Wlo0MzhNbkZQWDBQYi9YZFkyVVQwenB2SzBicnEvSGo0OHVx?=
 =?utf-8?B?UCtZM0xYWjFpckRFZ0liN1FUcFFJWEl1MTRoNDJxdk56aVZGK0dhNkFFWG9o?=
 =?utf-8?B?eTNtSGpJcCs2YUZBS1YyT0owem04N3RUYzNKZHZudkpIaXE0TkRVbkpMZWEr?=
 =?utf-8?B?K2hTNW9aL1BjT2l4K01KaFBtR29pdWFpVmpZWmpXL1JUcTVoenR3ZXQ4b1FD?=
 =?utf-8?B?QWVzdFlObWh2dml5OE1wbVFiaDBKb0ovQVlhUW5aT2ZyeXE2RjBTK0w4S2hw?=
 =?utf-8?B?OXpaOUJGeGN4TXkxaDQxZTdsbzhZK2lBMExBVFRUSkQxQ2NydGZPQVVpa3Zs?=
 =?utf-8?B?MVV1MTdWT0I3ZHBYUWFJc3VqcHZtb2lnWHFKMHhNQTFNc3ROU0hEWlc0U2Qv?=
 =?utf-8?B?RFJGNUV0dnRIUDdsUlhQZFVPT2Y5YXh3SG9qdkpkMHdudGxrWlgvZitJd1M0?=
 =?utf-8?B?M3dFcS9GWDRKbCtvaktiMGFuZ1pqbFdiekxlT1htM2E1aXRla1JVMGxVV3BX?=
 =?utf-8?B?TFhNTURRaHJJcVBsYXNQNG5pbXI5Si9mSStobDdtRm9NSmQ0eXJTNXRpSXBU?=
 =?utf-8?B?SWlFUzgwTGJzeVBVMXF1UGhkRGg1SEJMM3NvYzRTK3lJZnpya3FrMVczaG9S?=
 =?utf-8?B?OTl3dHBoNzQvNTZlQ2hGdTBsc3VVWmVWZGxBSi9oQjloWXFFV01FZmRyQ1VS?=
 =?utf-8?B?cCtCcjFwaXRiWUY4NTVtWVFPYnhBcGNkQ29wTGtybjVJTFZRWjQ1ZmgyU1F4?=
 =?utf-8?B?TnE4R0gzcE1MNnVmK21pbmJmNDljeCtPeXRoOEZSRTJNdXB0cVlNQXY1K2px?=
 =?utf-8?B?WEMyTzRKd0xTQXd5K1hSQ0k2bmVoSGg2ZnJLNENkc2JCN25JYlI0OEEvRlRS?=
 =?utf-8?B?RndCaUdhVWVTN3JXY2J1SUJWc2NIbThiRTRsK01JRDJxSnUvcHh0NWc3d2ly?=
 =?utf-8?B?eVhpU0hGdzlKZ2tCOXN3TjNHbU9GR245QTA3NlVOd2lVT3RaOUJ6azZKa3BM?=
 =?utf-8?Q?4JuaA3LaWoboqAG3HhGOG/vLc?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bbca38a3-5352-435e-a7c9-08dbb035777c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Sep 2023 06:33:08.9593
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: kKfxtAXYsP7RIvVBeQpg68CQXTDBTzvaxIHgCAKrWFoGxOP8+cHWU5nk/N5dhhT670+hpnBODvZ9qhUfxR7PQQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB7588

On 08.09.2023 02:20, Stefano Stabellini wrote:
> On Fri, 1 Sep 2023, Nicola Vetrini wrote:
>> +Documentation for MISRA C:2012 Dir 4.1: read from uninitialized allocated object
>> +________________________________________________________________________________
>> +
>> +To be written.
>> +Example:
>> +The code does not use dynamically allocated storage.
> 
> We do use dynamically allocated storage with xzalloc but xzalloc
> initializes the object to zero

Just at the example of this: I'm not sure in how far the examples given
were actually meant to (remotely) apply to our code base. As to your
reply - there's also xmalloc() which doesn't, and the page allocator,
and other more specialized ones.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 07:55:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 07:55:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597823.932194 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeWL1-000106-Us; Fri, 08 Sep 2023 07:55:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597823.932194; Fri, 08 Sep 2023 07:55:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeWL1-0000zz-RZ; Fri, 08 Sep 2023 07:55:35 +0000
Received: by outflank-mailman (input) for mailman id 597823;
 Fri, 08 Sep 2023 07:55:34 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeWL0-0000zo-C0; Fri, 08 Sep 2023 07:55:34 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeWL0-000550-56; Fri, 08 Sep 2023 07:55:34 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeWKz-00083c-PF; Fri, 08 Sep 2023 07:55:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeWKz-0000pt-Op; Fri, 08 Sep 2023 07:55:33 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=yp1lrZVZDuWHgBc6Tvl9uSensUmlJoL3dAeOhNPC9Bk=; b=o5QZAmhIynpDqKLx5oM4rUWU+I
	bLa3VQ9pzH+kik968bl/PsaNYup7Fg3WHiYTKbg2bRtCYGncSt05JjXVa4nE1A3OfkM2wmeKwu03X
	cnkR80+LFTRfU3YH1e/mRSLjU6sRrrZSlZdNviafU86TsS2C2kYWv7jxFHJzNclyAkwE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182725-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182725: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-migrupgrade:xen-install/src_host:fail:regression
    xen-unstable:build-arm64:xen-build:fail:regression
    xen-unstable:build-arm64-libvirt:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-examine:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    xen-unstable:test-amd64-i386-migrupgrade:xen-install/dst_host:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
X-Osstest-Versions-That:
    xen=b2dd946ece74e2b6e0601f28caef72f4f9950102
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 07:55:33 +0000

flight 182725 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182725/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-migrupgrade  10 xen-install/src_host     fail REGR. vs. 182717
 build-arm64                   6 xen-build                fail REGR. vs. 182717

Tests which did not succeed, but are not blocking:
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-arm64-arm64-examine      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-migrupgrade  11 xen-install/dst_host         fail  like 182717
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182717
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182717
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182717
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182717
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182717
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182717
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182717
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182717
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182717
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182717
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182717
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182717
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
baseline version:
 xen                  b2dd946ece74e2b6e0601f28caef72f4f9950102

Last test of basis   182717  2023-09-07 07:54:20 Z    0 days
Testing same since   182725  2023-09-08 00:38:36 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Federico Serafini <federico.serafini@bugseng.com>
  Henry Wang <Henry.Wang@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Nicola Vetrini <nicola.vetrini@bugseng.com>
  Stefano Stabellini <sstabellini@kernel.org>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  fail    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     blocked 
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
Author: Federico Serafini <federico.serafini@bugseng.com>
Date:   Thu Sep 7 15:46:24 2023 +0200

    x86/io_apic: address violations of MISRA C:2012 Rules 8.2 and 8.3
    
    Add missing parameter names and make function declarations and
    definitions consistent.
    
    No functional change.
    
    Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit 49caa971435de729c6a6457de736b7f448ba6edf
Author: Federico Serafini <federico.serafini@bugseng.com>
Date:   Thu Sep 7 15:46:10 2023 +0200

    x86/io: address violations of MISRA C:2012 Rule 8.3
    
    Make declarations consistent, no functional change.
    
    Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit 92c6c3cba1518e07a75188f4cabd3e81e1316a86
Author: Federico Serafini <federico.serafini@bugseng.com>
Date:   Thu Sep 7 15:45:51 2023 +0200

    x86/genapic: address a violation of MISRA C:2012 Rule 8.3
    
    Make function delcaration consistent with the corresponding definition.
    No functional change.
    
    Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit 03f64b54a1d14893e7851a60ba4855fb75abf30a
Author: Nicola Vetrini <nicola.vetrini@bugseng.com>
Date:   Thu Sep 7 09:24:41 2023 +0200

    automation: execute SAF translation before the analysis with ECLAIR
    
    This allows local MISRA deviation comments to be translated into
    the format recognized by ECLAIR.
    
    Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
    Acked-by: Stefano Stabellini <sstabellini@kernel.org>

commit 5a415ef2b24d578d29479e38abda3d5285b9afed
Author: Nicola Vetrini <nicola.vetrini@bugseng.com>
Date:   Thu Sep 7 09:23:50 2023 +0200

    xen: apply deviation for Rule 8.4 (asm-only definitions)
    
    As stated in 'docs/misra/rules.rst' the functions that are used only by
    asm modules do not need to conform to MISRA C:2012 Rule 8.4.
    The deviations are carried out with a SAF comment.
    
    Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
    Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit f4b8a520349c59e6def7d2aa3ef5b524abecec58
Author: Jan Beulich <jbeulich@suse.com>
Date:   Thu Sep 7 09:22:40 2023 +0200

    Arm: constrain {,u}int64_aligned_t in public header
    
    For using a GNU extension, it may not be exposed in general, just like
    is done on x86 (except that here we need to also work around not all of
    the tool stack actually defining __XEN_TOOLS__). External consumers (not
    using gcc or a compatible compiler) need to make this type available up
    front (just like we expect {,u}int<N>_t to be supplied) - unlike on x86
    the type is actually needed outside of tools-only interfaces, because
    guest handle definitions use it.
    
    While there also add underscores around "aligned".
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Tested-by: Henry Wang <Henry.Wang@arm.com>
    Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

commit e18ca23f5f7dcd5130dadbecf8567beccb824623
Author: Jan Beulich <jbeulich@suse.com>
Date:   Thu Sep 7 09:21:02 2023 +0200

    Revert "MAINTAINERS: consolidate vm-event/monitor entry"
    
    This reverts commit f805cf3e9b87584e16b03b5059b1163fd22bf5a0. It
    was based on wrong assumptions about get_maintainers.pl behavior.
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 08:00:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 08:00:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597833.932204 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeWPy-00037D-Vr; Fri, 08 Sep 2023 08:00:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597833.932204; Fri, 08 Sep 2023 08:00:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeWPy-000376-Rv; Fri, 08 Sep 2023 08:00:42 +0000
Received: by outflank-mailman (input) for mailman id 597833;
 Fri, 08 Sep 2023 08:00:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=VXpI=EY=lst.de=hch@srs-se1.protection.inumbo.net>)
 id 1qeWPw-00036z-Va
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 08:00:40 +0000
Received: from verein.lst.de (verein.lst.de [213.95.11.211])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cd320d1b-4e1d-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 10:00:40 +0200 (CEST)
Received: by verein.lst.de (Postfix, from userid 2407)
 id 131A86732D; Fri,  8 Sep 2023 10:00:32 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cd320d1b-4e1d-11ee-8783-cb3800f73035
Date: Fri, 8 Sep 2023 10:00:31 +0200
From: Christoph Hellwig <hch@lst.de>
To: Petr =?utf-8?B?VGVzYcWZw61r?= <petr@tesarici.cz>
Cc: Jonathan Corbet <corbet@lwn.net>,
	Petr Tesarik <petrtesarik@huaweicloud.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Russell King <linux@armlinux.org.uk>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" <x86@kernel.org>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Juergen Gross <jgross@suse.com>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	Christoph Hellwig <hch@lst.de>,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	Robin Murphy <robin.murphy@arm.com>,
	Christoph Lameter <cl@linux.com>, Pekka Enberg <penberg@kernel.org>,
	David Rientjes <rientjes@google.com>,
	Joonsoo Kim <iamjoonsoo.kim@lge.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Vlastimil Babka <vbabka@suse.cz>,
	Roman Gushchin <roman.gushchin@linux.dev>,
	Hyeonggon Yoo <42.hyeyoo@gmail.com>,
	Petr Tesarik <petr.tesarik.ext@huawei.com>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Hans de Goede <hdegoede@redhat.com>, James Seo <james@equiv.tech>,
	James Clark <james.clark@arm.com>,
	Kees Cook <keescook@chromium.org>,
	"moderated list:XEN HYPERVISOR ARM" <xen-devel@lists.xenproject.org>,
	"moderated list:ARM PORT" <linux-arm-kernel@lists.infradead.org>,
	open list <linux-kernel@vger.kernel.org>,
	"open list:MIPS" <linux-mips@vger.kernel.org>,
	"open list:XEN SWIOTLB SUBSYSTEM" <iommu@lists.linux.dev>,
	"open list:SLAB ALLOCATOR" <linux-mm@kvack.org>,
	Roberto Sassu <roberto.sassu@huaweicloud.com>
Subject: Re: [PATCH v7 9/9] swiotlb: search the software IO TLB only if the
 device makes use of it
Message-ID: <20230908080031.GA7848@lst.de>
References: <cover.1690871004.git.petr.tesarik.ext@huawei.com> <adea71bd1fa8660d4c3157a562431ad8127016d4.1690871004.git.petr.tesarik.ext@huawei.com> <87a5uz3ob8.fsf@meer.lwn.net> <87il8wr348.fsf@meer.lwn.net> <20230907131223.587c1a88@meshulam.tesarici.cz>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20230907131223.587c1a88@meshulam.tesarici.cz>
User-Agent: Mutt/1.5.17 (2007-11-01)

On Thu, Sep 07, 2023 at 01:12:23PM +0200, Petr Tesařík wrote:
> Hi all,
> 
> sorry for my late reply; I've been away from my work setup for a
> month...

Please take a look at:

https://lore.kernel.org/linux-iommu/20230905064441.127588-1-hch@lst.de/T/#u



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 08:04:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 08:04:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597838.932214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeWU2-0003ry-ER; Fri, 08 Sep 2023 08:04:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597838.932214; Fri, 08 Sep 2023 08:04:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeWU2-0003rr-Br; Fri, 08 Sep 2023 08:04:54 +0000
Received: by outflank-mailman (input) for mailman id 597838;
 Fri, 08 Sep 2023 08:04:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lCyG=EY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qeWU0-0003rl-73
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 08:04:52 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 62b0a753-4e1e-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 10:04:50 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 4CF784EE0738;
 Fri,  8 Sep 2023 10:04:50 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 62b0a753-4e1e-11ee-8783-cb3800f73035
MIME-Version: 1.0
Date: Fri, 08 Sep 2023 10:04:50 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>, Andrew
 Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Julien Grall
 <julien@xen.org>
Subject: Re: [XEN PATCH 2/3] docs: make the docs for MISRA C:2012 Dir 4.1
 visible to ECLAIR
In-Reply-To: <alpine.DEB.2.22.394.2309071722000.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com>
 <bf38efce3ac551fc95eaf1935ce7f574a7804df2.1693558913.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2309071722000.6458@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <0d429fbe7c6f0e6d9a5559b1ed3f6f4e@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 08/09/2023 02:23, Stefano Stabellini wrote:
> On Fri, 1 Sep 2023, Nicola Vetrini wrote:
>> To be able to check for the existence of the necessary subsections in
>> the documentation for MISRA C:2012 Dir 4.1, ECLAIR needs to have a 
>> source
>> file that is built.
>> 
>> This file is generated from 'C-runtime-failures.rst' in docs/misra
>> and the configuration is updated accordingly.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>> Changes from RFC:
>> - Dropped unused/useless code
>> - Revised the sed command
>> - Revised the clean target
>> ---
>>  docs/Makefile       |  7 ++++++-
>>  docs/misra/Makefile | 17 +++++++++++++++++
>>  2 files changed, 23 insertions(+), 1 deletion(-)
>>  create mode 100644 docs/misra/Makefile
>> 
>> diff --git a/docs/Makefile b/docs/Makefile
>> index 966a104490ac..ff991a0c3ca2 100644
>> --- a/docs/Makefile
>> +++ b/docs/Makefile
>> @@ -43,7 +43,7 @@ DOC_PDF  := $(patsubst 
>> %.pandoc,pdf/%.pdf,$(PANDOCSRC-y)) \
>>  all: build
>> 
>>  .PHONY: build
>> -build: html txt pdf man-pages figs
>> +build: html txt pdf man-pages figs misra
>> 
>>  .PHONY: sphinx-html
>>  sphinx-html:
>> @@ -66,9 +66,14 @@ endif
>>  .PHONY: pdf
>>  pdf: $(DOC_PDF)
>> 
>> +.PHONY: misra
>> +misra:
>> +	$(MAKE) -C misra
>> +
>>  .PHONY: clean
>>  clean: clean-man-pages
>>  	$(MAKE) -C figs clean
>> +	$(MAKE) -C misra clean
>>  	rm -rf .word_count *.aux *.dvi *.bbl *.blg *.glo *.idx *~
>>  	rm -rf *.ilg *.log *.ind *.toc *.bak *.tmp core
>>  	rm -rf html txt pdf sphinx/html
>> diff --git a/docs/misra/Makefile b/docs/misra/Makefile
>> new file mode 100644
>> index 000000000000..8ea0505c8a20
>> --- /dev/null
>> +++ b/docs/misra/Makefile
>> @@ -0,0 +1,17 @@
>> +TARGETS := C-runtime-failures.o
>> +
>> +all: $(TARGETS)
>> +
>> +# sed is used in place of cat to prevent occurrences of '*/'
>> +# in the .rst from breaking the compilation
> 
> Please expand this comment with what you are doing in this makefile and
> specifically what kind of .c file you are generating and why.
> 
> Everything else looks good.
> 

Ok

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 08:06:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 08:06:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597845.932224 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeWVW-0004TQ-Tx; Fri, 08 Sep 2023 08:06:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597845.932224; Fri, 08 Sep 2023 08:06:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeWVW-0004TJ-QS; Fri, 08 Sep 2023 08:06:26 +0000
Received: by outflank-mailman (input) for mailman id 597845;
 Fri, 08 Sep 2023 08:06:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lCyG=EY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qeWVW-0004TD-At
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 08:06:26 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9affeb70-4e1e-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 10:06:25 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id E84BD4EE0738;
 Fri,  8 Sep 2023 10:06:24 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9affeb70-4e1e-11ee-8783-cb3800f73035
MIME-Version: 1.0
Date: Fri, 08 Sep 2023 10:06:24 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Simone Ballarin <simone.ballarin@bugseng.com>, Doug Goldstein
 <cardoe@cardoe.com>
Subject: Re: [XEN PATCH 3/3] automation/eclair: build docs/misra to address
 MISRA C:2012 Dir 4.1
In-Reply-To: <alpine.DEB.2.22.394.2309071723400.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com>
 <ade1b214fc0e3a59c007ae2cdff78dc33b614c64.1693558913.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2309071723400.6458@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <c42938083003a14af371c3afdfbfe135@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 08/09/2023 02:25, Stefano Stabellini wrote:
> On Fri, 1 Sep 2023, Nicola Vetrini wrote:
>> The documentation pertaining Directive 4.1 is contained in docs/misra.
>> The build script driving the analysis is amended to allow ECLAIR to
>> analyze such file.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>>  automation/eclair_analysis/build.sh   | 11 ++++++++---
>>  automation/eclair_analysis/prepare.sh |  5 +++--
>>  2 files changed, 11 insertions(+), 5 deletions(-)
>> 
>> diff --git a/automation/eclair_analysis/build.sh 
>> b/automation/eclair_analysis/build.sh
>> index ec087dd822fa..556ed698bf8b 100755
>> --- a/automation/eclair_analysis/build.sh
>> +++ b/automation/eclair_analysis/build.sh
>> @@ -34,11 +34,16 @@ else
>>  fi
>> 
>>  (
>> -  cd xen
>> -
>>    make "-j${PROCESSORS}" "-l${PROCESSORS}.0"    \
>>         "CROSS_COMPILE=${CROSS_COMPILE}"         \
>>         "CC=${CROSS_COMPILE}gcc-12"              \
>>         "CXX=${CROSS_COMPILE}g++-12"             \
>> -       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"
>> +       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"     \
>> +       -C docs misra
> 
> I don't think you need all these options to generate docs and misra.
> Probably it would be sufficient just make -C docs misra
> 
> However given that they are not harmful:
> 
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> 
> 

Ok, I'll try it out for the next version, otherwise I'll revert to this 
invocation.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 08:10:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 08:10:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597851.932234 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeWZV-00063S-Cf; Fri, 08 Sep 2023 08:10:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597851.932234; Fri, 08 Sep 2023 08:10:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeWZV-00063L-9u; Fri, 08 Sep 2023 08:10:33 +0000
Received: by outflank-mailman (input) for mailman id 597851;
 Fri, 08 Sep 2023 08:10:32 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lCyG=EY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qeWZU-00063C-Jv
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 08:10:32 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2cd81037-4e1f-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 10:10:30 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id AB3B74EE0738;
 Fri,  8 Sep 2023 10:10:29 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2cd81037-4e1f-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Fri, 08 Sep 2023 10:10:29 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
 <wl@xen.org>
Subject: Re: [XEN PATCH 1/3] docs/misra: add documentation skeleton for MISRA
 C:2012 Dir 4.1
In-Reply-To: <f83504f2-c12c-c359-a1d5-8c20ce3de334@suse.com>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com>
 <e74433904abe30e2e9e030f663a7a87813dabd24.1693558913.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2309071659440.6458@ubuntu-linux-20-04-desktop>
 <f83504f2-c12c-c359-a1d5-8c20ce3de334@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <a3800b3fc779cdfb861b148ebf3c3c26@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 08/09/2023 08:33, Jan Beulich wrote:
> On 08.09.2023 02:20, Stefano Stabellini wrote:
>> On Fri, 1 Sep 2023, Nicola Vetrini wrote:
>>> +Documentation for MISRA C:2012 Dir 4.1: read from uninitialized 
>>> allocated object
>>> +________________________________________________________________________________
>>> +
>>> +To be written.
>>> +Example:
>>> +The code does not use dynamically allocated storage.
>> 
>> We do use dynamically allocated storage with xzalloc but xzalloc
>> initializes the object to zero
> 
> Just at the example of this: I'm not sure in how far the examples given
> were actually meant to (remotely) apply to our code base. As to your
> reply - there's also xmalloc() which doesn't, and the page allocator,
> and other more specialized ones.
> 

You're right in saying that these examples are not tied to Xen 
specifically, these categories
of runtime failures are just the default ones present in ECLAIR. Both 
the matched text and
the categories can be amended, if the community deems it valuable.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 08:12:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 08:12:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597856.932243 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeWbE-0006ic-OL; Fri, 08 Sep 2023 08:12:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597856.932243; Fri, 08 Sep 2023 08:12:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeWbE-0006iV-L9; Fri, 08 Sep 2023 08:12:20 +0000
Received: by outflank-mailman (input) for mailman id 597856;
 Fri, 08 Sep 2023 08:12:19 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lCyG=EY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qeWbD-0006iP-ON
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 08:12:19 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6d0288ae-4e1f-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 10:12:17 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 5C29C4EE0738;
 Fri,  8 Sep 2023 10:12:17 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6d0288ae-4e1f-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Fri, 08 Sep 2023 10:12:17 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Julien Grall
 <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 1/3] docs/misra: add documentation skeleton for MISRA
 C:2012 Dir 4.1
In-Reply-To: <alpine.DEB.2.22.394.2309071659440.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com>
 <e74433904abe30e2e9e030f663a7a87813dabd24.1693558913.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2309071659440.6458@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <24f8a00be959fdbc98a1ef3932d1345c@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit


>> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
>> index 34916e266aa5..84bb57c8e908 100644
>> --- a/docs/misra/rules.rst
>> +++ b/docs/misra/rules.rst
>> @@ -47,7 +47,12 @@ maintainers if you want to suggest a change.
>>     * - `Dir 2.1 
>> <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_02_01.c>`_
>>       - Required
>>       - All source files shall compile without any compilation errors
>> -     -
>> +
>> +   * - `Dir 4.1 
>> <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_01.c>`_
>> +     - Required
>> +     - Run-time failures shall be minimized
>> +     - The strategies adopted by Xen to prevent certain classes of 
>> runtime
>> +       failures will be documented by `C-runtime-failures.rst 
>> <docs/misra/C-runtime-failures.rst>`_
> 
> I would say "is documented" because we don't want to go back and change
> rules.rst if/when we update C-runtime-failures.rst
> 
> Also (nit) you can wrap around at 80 chars to make it easier to read as
> it will still be displayed the same way by gitlab and other RST
> renderers
> 
> 
> 
>>     * - `Dir 4.7 
>> <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_07.c>`_
>>       - Required

Ok

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 08:48:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 08:48:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597872.932266 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeXAM-0002O6-JS; Fri, 08 Sep 2023 08:48:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597872.932266; Fri, 08 Sep 2023 08:48:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeXAM-0002Nz-GF; Fri, 08 Sep 2023 08:48:38 +0000
Received: by outflank-mailman (input) for mailman id 597872;
 Fri, 08 Sep 2023 08:48:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lCyG=EY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qeXAL-0002Na-R4
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 08:48:37 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7fdb0e5e-4e24-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 10:48:36 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 342344EE0738;
 Fri,  8 Sep 2023 10:48:36 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7fdb0e5e-4e24-11ee-8783-cb3800f73035
MIME-Version: 1.0
Date: Fri, 08 Sep 2023 10:48:36 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Jan Beulich <jbeulich@suse.com>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
In-Reply-To: <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
 <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
 <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <6818e3ac47edca6ba107b8eeff95955a@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 07/09/2023 03:33, Stefano Stabellini wrote:
> On Wed, 6 Sep 2023, Jan Beulich wrote:
>> On 06.09.2023 17:57, Nicola Vetrini wrote:
>> > On 05/09/2023 10:33, Jan Beulich wrote:
>> >> On 05.09.2023 10:20, Nicola Vetrini wrote:
>> >>> On 05/09/2023 09:46, Jan Beulich wrote:
>> >>>> On 05.09.2023 09:31, Nicola Vetrini wrote:
>> >>>>> Given its use in the declaration
>> >>>>> 'DECLARE_BITMAP(features, IOMMU_FEAT_count)' the argument
>> >>>>> 'bits' has essential type 'enum iommu_feature', which is not
>> >>>>> allowed by the Rule as an operand to the addition operator.
>> >>>>> Given that its value can be represented by a signed integer,
>> >>>>> the explicit cast resolves the violation.
>> >>>>
>> >>>> Wait - why would this lead to a change to BITS_TO_LONGS()? And if
>> >>>> that
>> >>>> was to be changed, why plain int? I don't think negative input makes
>> >>>> sense there, and in principle I'd expect values beyond 4 billion to
>> >>>> also be permissible (even if likely no such use will ever appear in a
>> >>>> DECLARE_BITMAP(), but elsewhere it may make sense). Even going to
>> >>>> "unsigned long" may be too limiting ...
>> >>>>
>> >>>
>> >>> You have a point. I can think of doing it like this:
>> >>> DECLARE_BITMAP(features, (int)IOMMU_FEAT_count)
> 
> I think this is a good solution for this case (even more so if we can't
> find a better implementation of BITS_TO_LONGS)
> 
> 
>> >>> on the grounds that the enum constant is representable in an int, and
>> >>> it
>> >>> does not seem likely
>> >>> to get much bigger.
>> >>> Having an unsigned cast requires making the whole expression
>> >>> essentially unsigned, otherwise Rule 10.4 is violated because
>> >>> BITS_PER_LONG is
>> >>> essentially signed. This can be done, but it depends on how
>> >>> BITS_TO_LONGS will be/is used.
>> >>
>> >> It'll need looking closely, yes, but I expect that actually wants to be
>> >> an
>> >> unsigned constant. I wouldn't be surprised if some use of
>> >> DECLARE_BITMAP()
>> >> appeared (or already existed) where the 2nd argument involves sizeof()
>> >> in
>> >> some way.
>> >>
>> >
>> > I think there's one with ARRAY_SIZE. In my opinion this can be resolved
>> > as follows:
>> >
>> > #define BYTES_PER_LONG (1U << LONG_BYTEORDER) // the essential type gets
>> > from signed to unsigned
>> >
>> > #define BITS_TO_LONGS(bits) \
>> >          (((unsigned long long)(bits)+BITS_PER_LONG-1U)/BITS_PER_LONG) //
>> > same here
>> 
>> Except, as said before, I consider any kind of cast on "bits" latently
>> problematic.
> 
> Can't we just do this (same but without the cast):
> 
> #define BYTES_PER_LONG (1U << LONG_BYTEORDER)
> #define BITS_TO_LONGS(bits) \
>          (((bits)+BITS_PER_LONG-1U)/BITS_PER_LONG)
> 
> Then we just need to make sure to pass an unsigned to BITS_TO_LONGS. In
> the case above we would do:
> 
> DECLARE_BITMAP(features, (unsigned int)IOMMU_FEAT_count)

There is a build error due to -Werror because of a pointer comparison at 
line 469 of common/numa.c:
i = min(PADDR_BITS, BITS_PER_LONG - 1);
where
#define PADDR_BITS              52

I guess PADDR_BITS can become unsigned or gain a cast

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 09:02:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 09:02:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597879.932279 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeXNl-00053y-Pm; Fri, 08 Sep 2023 09:02:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597879.932279; Fri, 08 Sep 2023 09:02:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeXNl-00053r-Mx; Fri, 08 Sep 2023 09:02:29 +0000
Received: by outflank-mailman (input) for mailman id 597879;
 Fri, 08 Sep 2023 09:02:28 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lCyG=EY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qeXNk-00053l-H5
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 09:02:28 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6e76499a-4e26-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 11:02:26 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 035464EE0738;
 Fri,  8 Sep 2023 11:02:26 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6e76499a-4e26-11ee-8783-cb3800f73035
MIME-Version: 1.0
Date: Fri, 08 Sep 2023 11:02:26 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Jan Beulich <jbeulich@suse.com>, andrew.cooper3@citrix.com,
 roger.pau@citrix.com, julien@xen.org, george.dunlap@citrix.com,
 bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, Stefano Stabellini
 <stefano.stabellini@amd.com>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2] docs/misra: add 14.3
In-Reply-To: <alpine.DEB.2.22.394.2309071441400.6458@ubuntu-linux-20-04-desktop>
References: <20230907012203.1238090-1-sstabellini@kernel.org>
 <36b888b2-e7e3-bf70-f599-d22ca34e2dfe@suse.com>
 <alpine.DEB.2.22.394.2309071441400.6458@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <fd3a487fc4a24a16262bd510c6cd835d@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 07/09/2023 23:45, Stefano Stabellini wrote:
> On Thu, 7 Sep 2023, Jan Beulich wrote:
>> On 07.09.2023 03:22, Stefano Stabellini wrote:
>> > @@ -385,6 +386,17 @@ maintainers if you want to suggest a change.
>> >       - A loop counter shall not have essentially floating type
>> >       -
>> >
>> > +   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_03.c>`_
>> > +     - Required
>> > +     - Controlling expressions shall not be invariant
>> > +     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
>> > +       checks, and other constructs that are detected as errors by MISRA
>> > +       C scanners, managing the configuration of a MISRA C scanner for
>> > +       this rule would be unmanageable. Thus, this rule is adopted with
>> > +       a project-wide deviation on if ?: and switch statements.
>> 
>> Do we want to go as far as permitting this uniformly for all switch()? 
>> In
>> my earlier reply I had included sizeof() for a reason.
> 
> I agree with you that it would be better to restrict it to only some
> switch uses, rather than all of them.
> 
> But if we are going to restrict the deviation to switch(sizeof()), 
> which
> I think is a good idea and I am in favor, wouldn't it be better to
> handle these cases as individual deviations? E.g. docs/misra/safe.json?
> I am assuming there are only few cases like that and adding it here
> makes the rule more complicated.
> 
> I am happy either way but I wanted to provide that as an option.
> 
> 

It's also worth considering the magnitude of required SAF comments when 
making this choice.
In this case, from a cursory glance at the present violations, it seems 
that there are maybe a
handful of switches inside macros, so they shouldn't be problematic to 
deal with.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 09:10:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 09:10:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597887.932289 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeXVX-0006fl-J3; Fri, 08 Sep 2023 09:10:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597887.932289; Fri, 08 Sep 2023 09:10:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeXVX-0006fe-Fq; Fri, 08 Sep 2023 09:10:31 +0000
Received: by outflank-mailman (input) for mailman id 597887;
 Fri, 08 Sep 2023 09:10:30 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeXVW-0006fU-EI; Fri, 08 Sep 2023 09:10:30 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeXVW-0007CI-Ba; Fri, 08 Sep 2023 09:10:30 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeXVV-0001Z8-UH; Fri, 08 Sep 2023 09:10:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeXVV-00079D-Tl; Fri, 08 Sep 2023 09:10:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=/WgTd61lMkomF7zJufLAumvpDFs8/cirjsNxko7ChlA=; b=IcToD+XsL/95CGnCRtrsnjB7b0
	l/0qzeOOoN0pFcozl17L9LXvnlOcVFLbmfcU10LJjYef2sw+mKZD8DoKchKaidOqmioBr5VJeOXFF
	IKWdU3vchuMTS4KEKI5P6dedbDhtHiJ/9DA+0G207tnOC87HQ9gOwPSJCs+ZUVA1DwwM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182732-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182732: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=2ce5ae43c2166984d20341993c4b9dbb337aad79
X-Osstest-Versions-That:
    ovmf=634192665ea22eb610ad54f10bad8143ef77076d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 09:10:29 +0000

flight 182732 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182732/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 2ce5ae43c2166984d20341993c4b9dbb337aad79
baseline version:
 ovmf                 634192665ea22eb610ad54f10bad8143ef77076d

Last test of basis   182727  2023-09-08 03:42:30 Z    0 days
Testing same since   182732  2023-09-08 06:40:46 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Dun Tan <dun.tan@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   634192665e..2ce5ae43c2  2ce5ae43c2166984d20341993c4b9dbb337aad79 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 09:10:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 09:10:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597890.932298 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeXVe-0006wy-Pn; Fri, 08 Sep 2023 09:10:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597890.932298; Fri, 08 Sep 2023 09:10:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeXVe-0006wr-NC; Fri, 08 Sep 2023 09:10:38 +0000
Received: by outflank-mailman (input) for mailman id 597890;
 Fri, 08 Sep 2023 09:10:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qS4c=EY=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qeXVd-0006vo-18
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 09:10:37 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 92194897-4e27-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 11:10:35 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.160.105.86])
 by support.bugseng.com (Postfix) with ESMTPSA id B95484EE0738;
 Fri,  8 Sep 2023 11:10:33 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 92194897-4e27-11ee-8783-cb3800f73035
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH] x86: change parameter name in {hap,shadow}_track_dirty_vram()
Date: Fri,  8 Sep 2023 11:10:27 +0200
Message-Id: <d9bf20e655cc5940aad21bcf43c53fe2d2e0ca58.1694164086.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function declarations consistent with the corresponding
definitions to address violations of MISRA C:2012 Rule 8.3.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/hap.h    | 2 +-
 xen/arch/x86/include/asm/shadow.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/include/asm/hap.h b/xen/arch/x86/include/asm/hap.h
index 9d12327b12..05e124ad57 100644
--- a/xen/arch/x86/include/asm/hap.h
+++ b/xen/arch/x86/include/asm/hap.h
@@ -30,7 +30,7 @@ void  hap_vcpu_init(struct vcpu *v);
 int   hap_track_dirty_vram(struct domain *d,
                            unsigned long begin_pfn,
                            unsigned int nr_frames,
-                           XEN_GUEST_HANDLE(void) dirty_bitmap);
+                           XEN_GUEST_HANDLE(void) guest_dirty_bitmap);
 
 extern const struct paging_mode *hap_paging_get_mode(struct vcpu *);
 int hap_set_allocation(struct domain *d, unsigned int pages, bool *preempted);
diff --git a/xen/arch/x86/include/asm/shadow.h b/xen/arch/x86/include/asm/shadow.h
index ba2b0e170b..20df34d0a8 100644
--- a/xen/arch/x86/include/asm/shadow.h
+++ b/xen/arch/x86/include/asm/shadow.h
@@ -65,7 +65,7 @@ int shadow_enable(struct domain *d, u32 mode);
 int shadow_track_dirty_vram(struct domain *d,
                             unsigned long first_pfn,
                             unsigned int nr_frames,
-                            XEN_GUEST_HANDLE(void) dirty_bitmap);
+                            XEN_GUEST_HANDLE(void) guest_dirty_bitmap);
 
 /* Handler for shadow control ops: operations from user-space to enable
  * and disable ephemeral shadow modes (test mode and log-dirty mode) and
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 09:13:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 09:13:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597901.932309 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeXYf-0007th-Be; Fri, 08 Sep 2023 09:13:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597901.932309; Fri, 08 Sep 2023 09:13:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeXYf-0007ta-8j; Fri, 08 Sep 2023 09:13:45 +0000
Received: by outflank-mailman (input) for mailman id 597901;
 Fri, 08 Sep 2023 09:13:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qS4c=EY=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qeXYd-0007tU-Bl
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 09:13:43 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 008d8989-4e28-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 11:13:41 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.160.105.86])
 by support.bugseng.com (Postfix) with ESMTPSA id 4E1204EE0738;
 Fri,  8 Sep 2023 11:13:40 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 008d8989-4e28-11ee-9b0d-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [XEN PATCH] xen/vPCI: address violation of MISRA C:2012 Rule 8.3
Date: Fri,  8 Sep 2023 11:13:31 +0200
Message-Id: <c0a206c000f475f50d7ee52825567fcd111568ee.1694164323.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function declaration consistent with the corresponding definition.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/include/xen/vpci.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 0b8a2a3c74..d743d96a10 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -26,7 +26,7 @@ typedef int vpci_register_init_t(struct pci_dev *dev);
                __used_section(".data.vpci." p) = x
 
 /* Add vPCI handlers to device. */
-int __must_check vpci_add_handlers(struct pci_dev *dev);
+int __must_check vpci_add_handlers(struct pci_dev *pdev);
 
 /* Remove all handlers and free vpci related structures. */
 void vpci_remove_device(struct pci_dev *pdev);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 10:04:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 10:04:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597914.932324 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeYLl-0005Fa-TY; Fri, 08 Sep 2023 10:04:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597914.932324; Fri, 08 Sep 2023 10:04:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeYLl-0005FT-Qg; Fri, 08 Sep 2023 10:04:29 +0000
Received: by outflank-mailman (input) for mailman id 597914;
 Fri, 08 Sep 2023 10:04:28 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeYLk-0005FJ-Dr; Fri, 08 Sep 2023 10:04:28 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeYLk-0008Uv-6m; Fri, 08 Sep 2023 10:04:28 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qeYLj-0003xk-Sv; Fri, 08 Sep 2023 10:04:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qeYLj-0001Ss-SR; Fri, 08 Sep 2023 10:04:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=3COUtoszpy65a+9iST//FHLa8JwMqur+QnET96avyvw=; b=kBKVJooyRulp3NhL3XbB0teivE
	be8xuDS9gbpTsrbOTSMF8bUE+W9bbhHcL7Nor1epS/zvVHIxf3CyYQaeswvbkBDM8Le1GKZSkYAqW
	ww5kgL32GqU/I5242UPqEWlhnBE0kT/zMO5aNQj+BF/+vSRW4FmzXmdUJtsIXlthCIkA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182730-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182730: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=03a3a62fbd0aa5227e978eef3c67d3978aec9e5f
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 10:04:27 +0000

flight 182730 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182730/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a

version targeted for testing:
 qemuu                03a3a62fbd0aa5227e978eef3c67d3978aec9e5f
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    1 days
Testing same since   182723  2023-09-07 18:19:05 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Denis V. Lunev <den@openvz.org>
  Gautam Menghani <gautam@linux.ibm.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2162 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 11:04:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 11:04:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597931.932362 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeZHk-0003Yb-G4; Fri, 08 Sep 2023 11:04:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597931.932362; Fri, 08 Sep 2023 11:04:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeZHk-0003YU-D8; Fri, 08 Sep 2023 11:04:24 +0000
Received: by outflank-mailman (input) for mailman id 597931;
 Fri, 08 Sep 2023 11:04:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TFXC=EY=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qeZHj-0003YO-9b
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 11:04:23 +0000
Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com
 [2a00:1450:4864:20::32b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 764135e9-4e37-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 13:04:21 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-4013454fa93so22121955e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 08 Sep 2023 04:04:21 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 e6-20020a05600c218600b003fe1c332810sm4875288wme.33.2023.09.08.04.04.19
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 08 Sep 2023 04:04:20 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 764135e9-4e37-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694171060; x=1694775860; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=B/wXcYnp+eHDsRVTZPjJV93ubY5Ers8LA4A/H01yMis=;
        b=rQPc7tlWdqh3YbMh+UBalP/ndAxy86bscihm+mVg3LR/4cL/h41wfwIxHltEiocqjn
         pUcmqI+GN8CfnItVo+2vDkTmD7/VBFjmAy75kI1AvpRBOcf0CEWixtbtyDN98Hufz11u
         9rf4rZppGYasGO93O7rS99tfaviJgxCRMVcOw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694171060; x=1694775860;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=B/wXcYnp+eHDsRVTZPjJV93ubY5Ers8LA4A/H01yMis=;
        b=v6QaxZlEOITLyEwfYqKSrXPFg12TsnVipgwBUmrONDrQOpTK2c+RWAyV82Ep275t8g
         G5hUR4YyMGuad55vQO8I/i68a0EAokh6svjh1UH5ZbLKgIZQWy2z8XoI6EUrsPqk4RFi
         bG+NEDucQ4e9AMzcAEq1brGXVmfkGNj8OPscEpj1+mB9kTApCbYZnH+EZ0iokf7F/0g9
         o3Yov6UXO04LRniXT/e9THOokG/tEi6mZ/wqX5yvIGlf/ws6Iu2HYniPRDf0QFHjrQAX
         +kPwp+tPX/tPm9D3259ulSht7FpiaYaA2pvxFnbe8m6gDVq3XYPRszocU7fLrIJ7hzR5
         uHXA==
X-Gm-Message-State: AOJu0Yz8wUAldYkc5YzQT7aY7jz8mDxi+Ochgtc2UtCEr+QljmVoP3HO
	QFm6/c+ZEm1ngUx6UuopvYF2Rg==
X-Google-Smtp-Source: AGHT+IHcuHSAGRqXYFPuNCVF4EeHRk75XMmuDJRpvIXjrZQjNgfQGnYCTlWymJ/BbNQ0Lzd6K8w3SQ==
X-Received: by 2002:a5d:4390:0:b0:317:648c:3895 with SMTP id i16-20020a5d4390000000b00317648c3895mr1726881wrq.33.1694171060542;
        Fri, 08 Sep 2023 04:04:20 -0700 (PDT)
Date: Fri, 8 Sep 2023 12:04:19 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org,
	michal.orzel@amd.com, xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com, consulting@bugseng.com,
	Wei Liu <wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>
Subject: Re: [XEN PATCH 2/3] docs: make the docs for MISRA C:2012 Dir 4.1
 visible to ECLAIR
Message-ID: <30e0d1b7-6ac0-464e-b45f-36b56960d8f9@perard>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com>
 <bf38efce3ac551fc95eaf1935ce7f574a7804df2.1693558913.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <bf38efce3ac551fc95eaf1935ce7f574a7804df2.1693558913.git.nicola.vetrini@bugseng.com>

On Fri, Sep 01, 2023 at 11:06:39AM +0200, Nicola Vetrini wrote:
> diff --git a/docs/misra/Makefile b/docs/misra/Makefile
> new file mode 100644
> index 000000000000..8ea0505c8a20
> --- /dev/null
> +++ b/docs/misra/Makefile
> @@ -0,0 +1,17 @@
> +TARGETS := C-runtime-failures.o
> +
> +all: $(TARGETS)
> +
> +# sed is used in place of cat to prevent occurrences of '*/'
> +# in the .rst from breaking the compilation
> +$(TARGETS:.o=.c): %.c: %.rst
> +	echo "/*\n" > $@.tmp

This doesn't really works as you expect. Depending on the shell used or
the echo binary used, the "\n" would write a <new-line> or justs "\n".
Bash just write "\n" for example, while dash does write a <new-line>.
But, you can use `printf` instead:
    printf "/*\n\n" > $@.tmp

> +	sed -e 's|\*/|*//*|g' $< >> $@.tmp
> +	echo "\n*/" >> $@.tmp

Same here.


Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 11:58:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 11:58:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597940.932380 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qea7e-0001Ji-Bk; Fri, 08 Sep 2023 11:58:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597940.932380; Fri, 08 Sep 2023 11:58:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qea7e-0001Jb-8U; Fri, 08 Sep 2023 11:58:02 +0000
Received: by outflank-mailman (input) for mailman id 597940;
 Fri, 08 Sep 2023 11:58:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=763w=EY=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qea7d-0001JU-9y
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 11:58:01 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20623.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f4c0661c-4e3e-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 13:58:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7212.eurprd04.prod.outlook.com (2603:10a6:102:8c::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Fri, 8 Sep
 2023 11:57:57 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Fri, 8 Sep 2023
 11:57:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f4c0661c-4e3e-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oRo5+PN1R0ZFCU4bMgwuk4FrZXmMvNWsQgtMerjjmvRCbNucsI/j02GDVpccWgP73Ztuo1ZRLTtG05sxVCmWoaO83Pkt9pjmrNcxGWuO9ITKFe4iGUDzPXc5RRH8RUwpJXUKq7qFgq5Rc1S5fjPNcsikVVAZEciBAOFzintF5n3CTvq6//VdAIHiCKD0UOemTEo6Z6CUJPogXkF0RMMoLTm2l6EruCeod2f1NUg15P1T3EXdLLhQpEPZKPgcF6C3efaIVzlesk86mOopTqAR9McjaJxm9DfF3eKxR+ksM1999pED1YEkDgnXx2tnYbf1uuvZd4T11mqdNcSLLg307Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6twvm2oY/dT6zr1zeCutXruYQQ6EydshraWWzmgxxFM=;
 b=XZ0tON1iViYLW55L5XFUxeG5q84SdGvJ5g/hklNtQZ9XAZB1Yh/aHxj7O6FopHRceoDXW3vsFxCrgRlryw0mqe7oRE6tsi8ZO+c1zhTTNW1KZCeL8VHuKKhGXgHWzGkULjk/W4UUqLioT/lW7JAg0DbDS+ngMfGXkDfijKA20o00fQ2dNsctRTGlOEGks+ZKGYRbhwLpiS/QmJ1jlgBXtQfHAHm4yriScJqRwkrB0crn9igoxxa+e6qzO9LHAivJz6RdyL6FYw0wdxxpf0NjAbJdTwYnPRI+GW38MStdVMCE2yQZEWPY5SPM+SIc8hjVPDhmUMZPv/Q0v2AJAuJ6FQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6twvm2oY/dT6zr1zeCutXruYQQ6EydshraWWzmgxxFM=;
 b=VcrSIOncXh0HGpqALhbw3oicZtDMcyzpdERe8qyo9UW6UFqUZXBjPflm9PjXQlaziMy3Wc4aVeEIRBf4qYOxELT439HSCt4DLZWBuUBjsj7ZKue1SjxbpBOsVFCJQVaC/dk7tJQlU4pyDtE07HDVoKH3A599WYFvoIeLZsyLIbAeRFg4AFwnCHt0kRdYRIjsfMRleesWt1XKcPM6kQraZvHhS3v7fyIP45JTRxmHPXD02SfV9sCVXF2Yy93nksNmxSt1SZ25c/71I5usAUYUAmsBTRkXJNJwRsV2GLDsWj81UNJtqABVsq5lrw9alsy7Kf9ccSV6dejC7gdULDgo0Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a52733a0-ec5a-3b49-ccec-7a7e8e775c4c@suse.com>
Date: Fri, 8 Sep 2023 13:57:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
 <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
 <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
 <6818e3ac47edca6ba107b8eeff95955a@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6818e3ac47edca6ba107b8eeff95955a@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0269.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b5::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PR3PR04MB7212:EE_
X-MS-Office365-Filtering-Correlation-Id: 185d3947-410a-4bb3-6787-08dbb062d78f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Ma30HO3uy3vh6qCioVwli3cIHRy5WiStm+ajilMahXZOmrJ3WmIQobu/ccz9poOMAwtX0T50lDhblzXy3H5YBEpc5eV1RQGZ+pmgRWJu2OVJtDq8usGkcUBOLcSZB9ZB30EBHUjhrShue7EfXQSV3pmWghMGd/8OpokppmTxeasJuhm4r+0bKpoUUXmgiLJe0OCisxeD5JJy08RrgXHynU5WU8RsOTz6QUMgEv/LUiFpq1peWKhIv3ZlQ66jiOqw0Wg4uJDHisbdsIQwoEzm2i6UU2+2m8HJR7XEJ/LFSlc6E7xgtej0kS8MP4gGnvXXtnEwhr6todwa8EWLwEXpQosFaLjYRnU3flSMaF8wP77k7/6C8bkCxJumVZvdgOOEk8HeCNgDE2KCABCcqpHrQbzo74rbsUaGzu8CfVPZhp8+FcWbbw6lWpX8RhCV+7IyRUhBGhSS7lWOtEJ5k8djwoKpAlxWqiJvyW0AlFJ1ey/KVUxow7LChwnlvVs7GanA7gliUaGBwAVBzIu0IOnmCaBo/n5cAOiMNQ52Hl3UBH1q4XfKSQcogdhIt8TrwNUUAAoa5gLtesaY9eB403BXHTaZeZ6GGcExq5p4ia9ZYdn/+P+GgdfEezgFIfct68YovTx64DLlC5RmOQaLZ0KCOw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(396003)(376002)(366004)(136003)(186009)(1800799009)(451199024)(53546011)(7416002)(6506007)(6486002)(41300700001)(66899024)(316002)(36756003)(2906002)(478600001)(31696002)(86362001)(66556008)(66476007)(54906003)(6916009)(38100700002)(66946007)(5660300002)(2616005)(83380400001)(8936002)(8676002)(4326008)(26005)(31686004)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NGFKL2Zzc0hRS2trMjQrZFRaUThERVo1all4bmJVYm9vSXAxRnp4SWx3MXVX?=
 =?utf-8?B?b3QyS1dWN0g0NFN6TjJOUG9IR2FUTzlGdHJZOW5pNkM2aXNoRTV3WXBMaVlm?=
 =?utf-8?B?VXl1Njl4Y2twUE8zcUF6WUg2S3cxK2x1UjJLdGRBL0N5WVRreWJHUEpMbGVj?=
 =?utf-8?B?Z3d4ems2WXg5TVF1aERlR2liSWhCSUw4VyswU0tIZ0NkOEE5R3ZRUGMzTklS?=
 =?utf-8?B?bWMzaDYxUE9WQlJNWGVDNGF4d0xVaURWTHBEcHFvcjBnK1RaVnVLajFrblR1?=
 =?utf-8?B?THJNMUlIR0czK1pZQnplOXNpdlg1VU9LZmZiVWh0Y0R6Z1JpbGhwZXNiUFUx?=
 =?utf-8?B?d3FaRmVPMWpKYVgvcnhNd0lvU3g5OXdFeklNTEFwTzk5UUs2K3RneFVSNHFp?=
 =?utf-8?B?c3ZqNnFzVzZPanJtdEZSQ0Rkbng2aUhra2tyemQwNWgvS0JERTFBZGFoUW5J?=
 =?utf-8?B?WFdBcTNuQy9rMFJ6MmhIcWJyczd4Q0V0RjV6SlVubkNzaFl3Z0x2RXo4U1Bx?=
 =?utf-8?B?ZkhmN2V1OTlHc2U3c1h1VnZscWdoVzRxTWhzVVpjWFVwdXZnUm9GKzNKNUZ0?=
 =?utf-8?B?MXprS2RXYTdvRytsY3YrTHpZOFY2bFlaSmZVVHcwanVwbERlT0pFSWhrZVgr?=
 =?utf-8?B?UHk5OVhycXFCcXJyZ3QzL2c3OTBWZ1I3VmludWZIVGRRYmltMWtDbXJzWHNB?=
 =?utf-8?B?ZWp0TmttS0c5WWV4ZkRNU0NsKzI1RzF2L0RRbjQrZldSdSs2Uk5qdFRwOGs3?=
 =?utf-8?B?alZ0c0Q5cGxHQ2NmU1BuZlV4MkRBbEZWZUdMMzVlM3VyNDVaZDZVU0lrdEFO?=
 =?utf-8?B?a1VUYmxMWFJCMzNTZlh3NXBqTkxRWGNRTmIwRVBTVmVjRjllZzBPRUI3dXlD?=
 =?utf-8?B?VmNhVk96UG5HNG9NN2VoNmNpS3FHMDNHaEFiWGYvZkJveSthYVhkcGRETGow?=
 =?utf-8?B?MEwzTWl2bFhOVFYrVXd2YldlWG44QWhFd25xTFpYNCtTY1BGOUh1SUlIWjI5?=
 =?utf-8?B?OVNiUzB2NnArZTdBWEczMTd4VHBBcW1xdFVlODh3N25pVW1pVHJDT1lQYkNO?=
 =?utf-8?B?N0Z0QjVjdDVBQUVSbUZSL0NnUzZIMDBZckk0UE1EWTVWenFUdGpUWGFhMmJp?=
 =?utf-8?B?Z1NTZ3cwMVJodFFMa25zYVhBUDVFdjl1UjRjRVl3eG82SlRRZzgzekNUeFRM?=
 =?utf-8?B?allwaXdDM3hWTjZuTEs4aC9SeUR1M2RudnJhYTB0S2ZKSnFQdU9RSjg2cHpv?=
 =?utf-8?B?WVFtWktKaDVTbUZkbUtFM0lBVlRlcmJqVTJHbnhTN2FaZlhjN2V4SGp2RTBj?=
 =?utf-8?B?aFlZT2I5RlpQTzJQQzE3UlZTZXg3UXdTYnI5K21QMkQ1WCtXeEc0aGtYR2ZO?=
 =?utf-8?B?WlhxMmRnZ3RFaWtqVXRsbXFPTldISGc0Q2o0ZDFtUVRKdkRYSmRWbFFKZEdz?=
 =?utf-8?B?Sjk4NXp5cWpkS1VGeSt1QWI3ZkFMdEFqYTNhRVBsYWxZWWpaRHJWNXcrUGpr?=
 =?utf-8?B?WGQyK0RBR05wU2I5VDJDRlVvdUxHMnNHSDA3YjNsVlVBV0tLaXV1S1Voc3c5?=
 =?utf-8?B?S2FYQ2lsdnMzZUZjUHcvK1NrOE9lV0VCRU1SUU9sZ1FrN2NVLzlPNW45aEhv?=
 =?utf-8?B?M0F2UGNwY3IwSWdEWE8yd0FBOEdxbWszNStVSk42R3RsS0dUSVA4V1FpeU5M?=
 =?utf-8?B?VWVTMW10dWt0MjVqSXhhSGFVL1EzTjI2NFBSQ05HVWpIZ01USHZpOFhQYWha?=
 =?utf-8?B?d0RoRmM3cmJFaHZwQ01sSElGTXN2bFhhVEJPSzdra3k1eXMrRkYvcEUvNlpK?=
 =?utf-8?B?YTlYb3R0WnB2L2lXOHkxUU1vdnlLUTh3LzRqNi9ram1jUWwrWE92TnAzTU1a?=
 =?utf-8?B?NFo4ZDFSYlU0R0tRbzdNRVhidXN2QWFNZ0lFc0ZmWG15NlkrWUpVMCtEYmE0?=
 =?utf-8?B?NDAxT1hhQVhDMmg2YUhlQ2xCV3IvMHlIN3NWVFp6RFIwT0V5eHd1UTZOZC9K?=
 =?utf-8?B?MXJQV0lxNGJsYWJnZ3ZYTFNQQTFyWk9hb3pqRlFXd1BhMitkTjltN0dSbFhE?=
 =?utf-8?B?MVJ5Y3Q2V05zUFB1WDRQdmZzaHFKS1ZGOWczTFZYSzlzeTRHNTY5VXo4NlEy?=
 =?utf-8?Q?Nazz79wdyx9h5f1HIXdUs7CK2?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 185d3947-410a-4bb3-6787-08dbb062d78f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Sep 2023 11:57:57.4319
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: TcGA13gq3Fz16Er1ocCby5z8NpwlZvZIxas/X2ZPpFO4YLLpurydCDJIzwCjuLg4m0WuQZSpquhkBZKLlCj5tw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7212

On 08.09.2023 10:48, Nicola Vetrini wrote:
> On 07/09/2023 03:33, Stefano Stabellini wrote:
>> On Wed, 6 Sep 2023, Jan Beulich wrote:
>>> On 06.09.2023 17:57, Nicola Vetrini wrote:
>>>> On 05/09/2023 10:33, Jan Beulich wrote:
>>>>> On 05.09.2023 10:20, Nicola Vetrini wrote:
>>>>>> On 05/09/2023 09:46, Jan Beulich wrote:
>>>>>>> On 05.09.2023 09:31, Nicola Vetrini wrote:
>>>>>>>> Given its use in the declaration
>>>>>>>> 'DECLARE_BITMAP(features, IOMMU_FEAT_count)' the argument
>>>>>>>> 'bits' has essential type 'enum iommu_feature', which is not
>>>>>>>> allowed by the Rule as an operand to the addition operator.
>>>>>>>> Given that its value can be represented by a signed integer,
>>>>>>>> the explicit cast resolves the violation.
>>>>>>>
>>>>>>> Wait - why would this lead to a change to BITS_TO_LONGS()? And if
>>>>>>> that
>>>>>>> was to be changed, why plain int? I don't think negative input makes
>>>>>>> sense there, and in principle I'd expect values beyond 4 billion to
>>>>>>> also be permissible (even if likely no such use will ever appear in a
>>>>>>> DECLARE_BITMAP(), but elsewhere it may make sense). Even going to
>>>>>>> "unsigned long" may be too limiting ...
>>>>>>>
>>>>>>
>>>>>> You have a point. I can think of doing it like this:
>>>>>> DECLARE_BITMAP(features, (int)IOMMU_FEAT_count)
>>
>> I think this is a good solution for this case (even more so if we can't
>> find a better implementation of BITS_TO_LONGS)
>>
>>
>>>>>> on the grounds that the enum constant is representable in an int, and
>>>>>> it
>>>>>> does not seem likely
>>>>>> to get much bigger.
>>>>>> Having an unsigned cast requires making the whole expression
>>>>>> essentially unsigned, otherwise Rule 10.4 is violated because
>>>>>> BITS_PER_LONG is
>>>>>> essentially signed. This can be done, but it depends on how
>>>>>> BITS_TO_LONGS will be/is used.
>>>>>
>>>>> It'll need looking closely, yes, but I expect that actually wants to be
>>>>> an
>>>>> unsigned constant. I wouldn't be surprised if some use of
>>>>> DECLARE_BITMAP()
>>>>> appeared (or already existed) where the 2nd argument involves sizeof()
>>>>> in
>>>>> some way.
>>>>>
>>>>
>>>> I think there's one with ARRAY_SIZE. In my opinion this can be resolved
>>>> as follows:
>>>>
>>>> #define BYTES_PER_LONG (1U << LONG_BYTEORDER) // the essential type gets
>>>> from signed to unsigned
>>>>
>>>> #define BITS_TO_LONGS(bits) \
>>>>          (((unsigned long long)(bits)+BITS_PER_LONG-1U)/BITS_PER_LONG) //
>>>> same here
>>>
>>> Except, as said before, I consider any kind of cast on "bits" latently
>>> problematic.
>>
>> Can't we just do this (same but without the cast):
>>
>> #define BYTES_PER_LONG (1U << LONG_BYTEORDER)
>> #define BITS_TO_LONGS(bits) \
>>          (((bits)+BITS_PER_LONG-1U)/BITS_PER_LONG)
>>
>> Then we just need to make sure to pass an unsigned to BITS_TO_LONGS. In
>> the case above we would do:
>>
>> DECLARE_BITMAP(features, (unsigned int)IOMMU_FEAT_count)
> 
> There is a build error due to -Werror because of a pointer comparison at 
> line 469 of common/numa.c:
> i = min(PADDR_BITS, BITS_PER_LONG - 1);
> where
> #define PADDR_BITS              52
> 
> I guess PADDR_BITS can become unsigned or gain a cast

While generally converting constants to unsigned comes with a certain
risk, I think for this (and its siblings) this ought to be okay. As to
the alternative of a cast - before considering that, please consider
e.g. adding 0u (as we do elsewhere in the code base to deal with such
cases).

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 11:59:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 11:59:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597945.932390 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qea9K-0001qq-M4; Fri, 08 Sep 2023 11:59:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597945.932390; Fri, 08 Sep 2023 11:59:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qea9K-0001qj-JW; Fri, 08 Sep 2023 11:59:46 +0000
Received: by outflank-mailman (input) for mailman id 597945;
 Fri, 08 Sep 2023 11:59:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=763w=EY=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qea9I-0001qb-OV
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 11:59:44 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on062c.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::62c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 31c69946-4e3f-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 13:59:42 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7531.eurprd04.prod.outlook.com (2603:10a6:10:20c::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Fri, 8 Sep
 2023 11:59:40 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Fri, 8 Sep 2023
 11:59:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 31c69946-4e3f-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UrEcbNQ01rwpA9zBz1hsW5npB1Q+ELEc+wgS6/BzP4i8kVB7huEX2UYcVCK1qIX4/SolLt0vcTfokzKtlVBupVFsF6L400y5gVbxf5CHy+1SkKK+FtXO9k2Q2Lf9mlKTSijnDy41CnZYvDF02JaMwp7vRdEQPv5juzgGfuqRnaGY6CKJmqGEOncl2xpIijxienNqNq6a41oTaeanNvj6TJoV+2RK/s2PjVEDppWf8adj1y81bKdPyTdLQwO6prVH7Ve63yynq3NJugZ99lvV/yS9ZcjrWMU70FZEzSsqDSaR2d+QRv2gPc5NCWyurgkACci0iVue+94wnPzhcobk6A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=aTYsfaMjEWskN4vEb2EkYfNw05s+SB4EQKcMrJtcfyY=;
 b=QnSkfIJsUSbdY3exjhXfDEvVPU3zf+tn+/bQcfMzeWVFSRx8XGVatC/6E6I6LfQVKpiYpAyq75eQgBtxnPvlMbs8r5c6YGq51cmQrc2rs3Ful1mjnVw5skT+ZHhqFykOzixmKK2njJbTxgxJmeut9Rw9cCOpMQDBQblE2+C5d9cqMZn6zjp0dbcqOAqtXCSC5AHbox8wUCTWZAYmdoXum56UEvSClBDq8p4yjJIWvUuG9qZP74jANiH/NwFfrVRVjubKosJw5Ri9G6NykdC49xCXFcUmW2p5DF94WcSMpsFsUN55tHOOsN/eEo8cl9MHk48FPte7eCy5dLYQck9bqQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=aTYsfaMjEWskN4vEb2EkYfNw05s+SB4EQKcMrJtcfyY=;
 b=ezHCQ466m5yPT3UgKUPBFqaD2vAMeHZ+nJYM0ifx9HVLt4nIVv6iXbuQamprwBWMfsqd65wihZ/yGrt7e83Y+6nl7fMpAFIYffFjLrmAMGyuu1AVfjO3Td1Hq6MqoatLjfkJn5MqCK7wEc10trjbGLeF39h+R0PHgIvc8rXvHyRYfoUhUY34wmqRVq0nU/4Hz1xAVqFCrCgfzBIn3dycVPXV04cik2zK6FfgXVkyNRdyLTY/zBbQF/Mz6UU2u8x5k5dupKF/ZFEe3b28bc45bgsKZ6B3u5ssoehRQ52STRS/a6NGijpV2K+90fy/ukCUsySGXryx50Pw9eBYLjtGSQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7d07fc38-14e8-6cc7-2b0c-816bc68c7317@suse.com>
Date: Fri, 8 Sep 2023 13:59:38 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
 <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
 <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
 <6818e3ac47edca6ba107b8eeff95955a@bugseng.com>
 <a52733a0-ec5a-3b49-ccec-7a7e8e775c4c@suse.com>
In-Reply-To: <a52733a0-ec5a-3b49-ccec-7a7e8e775c4c@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0063.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4b::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBBPR04MB7531:EE_
X-MS-Office365-Filtering-Correlation-Id: c8c95e82-9e81-4550-9838-08dbb0631506
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	EzlrfswZKDMOip/YyaQijuSdPJ561zbiX3szjBn1oJNblDD4R3U40oZ2BDPr5I3FdGLBAYLRSQhudITixgGCn+drUJw3hYEmeKIBVXLBFMD68boIkYaNml++A3zOLJAfzQqiplCg6eF7CWegcTbYzV9DEfpWkqugnyh+tm6ikG4NihDNsnvrGrAWVosZ3jizQQTJqE8bWDaVjLBMk6tNB25ncKBDlH24Eskxz+1T8zc/4+/RIiOgdMblC+ZX7/Tcvkj7PfFd+j4R3D26dKfzI/+Y+Q45t/G+sDBfry+rDX7MfmOaGaLfuOSPaRlt90BW51mF62J9vqNN3zUrzME1NU5klNSS6t5rB+RyG2lUeADoHaqeIg/eR949WSZouasHj+rM9yfViZ4KsEVnf2E3mh93knMGBIvU2Yer8nF62UUp+zDQJIe6SzKaTmnrXDCzYkQn+dmCW9nrB8UC76hQWL9N0rQU6cpo0wd9Ac5igCDwLMkgR3edB4QuqvMOWFAiK5LprL/Fbd54nZizHalnTW4KsBsVp1Ga2Nmj7PN1vKZxK3w+Z/E9shZfvVbm7rL1OZnAl0kI7zf2GESh1fvvbPCeYqhE+IOy7JgKrNzIKPLNiBTi8pWbnvxsh9IXBDKNLRSyeVyH3GChvMZh7ZFZ8A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(366004)(346002)(39860400002)(396003)(451199024)(1800799009)(186009)(5660300002)(6486002)(8936002)(6506007)(8676002)(4326008)(54906003)(316002)(66556008)(66476007)(4744005)(6916009)(41300700001)(66946007)(31686004)(478600001)(2906002)(53546011)(6512007)(26005)(2616005)(7416002)(83380400001)(66899024)(38100700002)(31696002)(86362001)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Qy9LRGV1NE1TWEx6R3dUams4MFhQcU04cmlJK2xDRTlZV1hPZ2tFT1BEVzRZ?=
 =?utf-8?B?a2V5THI1bTRVR2hpakdKZ3Q5OUsrZFVZb2UybXdVWDlsamdpdDlmNXcvSU1n?=
 =?utf-8?B?NityS0FUZWJBUEdxWjhERTkwYTlmR2NsTGFHd0xscWxwQS9jMUFhK1BPaGF4?=
 =?utf-8?B?ZDRyL01nUXl1WDdObnV6bW9CWFY4bHF6Y1RTazJZMVFQaHgrV3VNWS9Fc2Yw?=
 =?utf-8?B?NGZ3RGpHa2lNSUlBNEpFUTdGSkQ1TUgrSDZNUnVTVEdRSHprNkhuRXBLcTNy?=
 =?utf-8?B?TnFQSGEzUFluakt0YmJwZlRlNGpkNmZwTCtnNThScDkvMmRIbEFCaWVBWmlx?=
 =?utf-8?B?K2NaWTM0NEZEWEV6d3dDcjljNGwwUkRNNUN5MFAxNEQ2eUlETDlGYVE5T1B2?=
 =?utf-8?B?cUtxWkh5YVBnRUFORzA1cVprTWJJanBrZy9ON3FMK2kxQXVhZXM0WjJzTjh0?=
 =?utf-8?B?U3pwdStnc2RpN0VXVUtKOHIyaldhcVdIMitLTkIyaFl1Y3hYS2pQaXVMNW5R?=
 =?utf-8?B?U1JwYlZweXRRdlN0Mm9GSm1aUG1EWXY1akxDbytqSkhUZjFROWdRQThzU0ox?=
 =?utf-8?B?L0dMTHdvS3RXbmdRYk9DVnNQSWNPd3kyQXMwSHVWSGNHOWFBUVJaR0VEWVFh?=
 =?utf-8?B?OHVqaWJQWnl6b1VrM01ZV3cyUlF0MHdxZFduaS9SVW1icDdSS3QzcW8yNDNm?=
 =?utf-8?B?cmNqSU9QZ1Vtd1BMMFBmT3hSMm1FVHR4UExkeDZHTFpLOGh0NjFUcGtQNngv?=
 =?utf-8?B?UzR3Qmc5K2dWcmkxZitIMm01ZG0za1Q2WE5McUZtMUZ2b0hMWW4raSthd0Jr?=
 =?utf-8?B?clZkVUpKeThMQk1Hb0t2a2ExdEVUaWYyZzhhOTQ5a1kzcm1LZjU1M0lWUkxn?=
 =?utf-8?B?RExleEdWdUZ5Tm84cUF1c1Iwb0lRREF1bWIxSmFXdlJZK0ZjWjdKSjJtbWU0?=
 =?utf-8?B?MVFFTjZoZSs0RVNxSnFiOW9RaTAyNkgwWjNWSmI1bGpBeHVHVWR6dUcrMzVV?=
 =?utf-8?B?bkxGemtmdGNUOElKZ3pNbXM5b254N1JiMWtVQ3EyMlV6TFU1OVdYVjZRZE0x?=
 =?utf-8?B?SzQ1czIxalRyM29URFVhbVlZTlF4VjVvSXJFMWFtS1RRRUFYbWt6bkxvcGFM?=
 =?utf-8?B?bTQzdWRQUm91dkpHall6b3ZERFBVSlRrcVdIU3E1UVdXMmMzd3RFS2RxUTdw?=
 =?utf-8?B?RVlmcWU2ekJrZlZRSThuMUhwV2R6WG9nK0RveTMxeGxIVW9DTVBzb2RRei9V?=
 =?utf-8?B?UXpOTlpoR1IwaC9lM0JjbndNUmFnTlN5YWRiL0dLeEl4dWFHaEZUanlRRHdH?=
 =?utf-8?B?QUtxMHNxMldrRml1VVhrWGN1eE1IZSs4MUhXa0graXNrdnFLOE5tWWpML1JG?=
 =?utf-8?B?MDlFcHNFN3ZBbUxIb2hhMTd2bDFrTExpYkVxVzZNbFpMdW9JREtzMlV2SHB0?=
 =?utf-8?B?dTdRa3FxNTN5MkEvM2VDYkRCNlZKSnhsNVN0RGJtay9ZWVpMWld6Qk81NXkx?=
 =?utf-8?B?dFM1TkVHeDhkRHNqTDZKcnlUZGdpTzlKUTdZRVc2YW0xeGErSExKL1hBWXAw?=
 =?utf-8?B?cS90aFdBK1hZaXBmRHdobkVTS1JTWDNTOEJPTDhNSFFKMnd3Y01TbnFGRTBC?=
 =?utf-8?B?TFlYajVSUGx4Ynhqamt2QUVHejBtcmV5ZjdveldTK3NjWU1MNm4yaGxreXoz?=
 =?utf-8?B?OGR5dy9hd3oyOXhNbmhzUVRYbHE5SVN1aXF0VjVMTlpxbzNOY211V1lNOWlk?=
 =?utf-8?B?dWdyMHpaMEZaUHF6bTlqVWRDL0x2ZjZ0bmY5VUpUaVZqd2paV3NnYitTVUVN?=
 =?utf-8?B?dmREYWxMMjhrcUNwbURIUXpxUTg0ZDdDNkd6Mm1YcHJESzY0RlZLSzBaM2pl?=
 =?utf-8?B?Umc4ekU4TU80Z3pPNnVwRG5zL0tNQytxK2tiRkkwUGRac25YT1pTQVpGeS9B?=
 =?utf-8?B?MWRmLzhDNURndW1aS0FKcnR2QnNBa2xNbW1DaUY0aFpVYTZRdVpXVExaZExX?=
 =?utf-8?B?eFJnUjU3TFhtdGJ5Q2dsY2d5dDRNQWlOeEpkSnh0YTN4bjBVSlcxVUNoMnZV?=
 =?utf-8?B?UEw5MjllZ3UzTERrdC81UmtFa0Z5N1ZrL0prTHQwai9TalJsQ3pYZU55c2tY?=
 =?utf-8?Q?qijdS64Lb7Qgqn0qROd0VnFal?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c8c95e82-9e81-4550-9838-08dbb0631506
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Sep 2023 11:59:40.5032
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: WAAcbCnzA4wXYIW2BZJQrTFw9DJUJ2Nk1JfaSNfKsNg3HFYLNdA4NHUyTbjgeR0MLJ6jZXgXWqUfjRTnPV6fNQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7531

On 08.09.2023 13:57, Jan Beulich wrote:
> On 08.09.2023 10:48, Nicola Vetrini wrote:
>> There is a build error due to -Werror because of a pointer comparison at 
>> line 469 of common/numa.c:
>> i = min(PADDR_BITS, BITS_PER_LONG - 1);
>> where
>> #define PADDR_BITS              52
>>
>> I guess PADDR_BITS can become unsigned or gain a cast
> 
> While generally converting constants to unsigned comes with a certain
> risk, I think for this (and its siblings) this ought to be okay. As to
> the alternative of a cast - before considering that, please consider
> e.g. adding 0u (as we do elsewhere in the code base to deal with such
> cases).

And just after sending I realized that this would still be disliked by
Misra's type system. (Much like then aiui the 1 above will need to
become 1u. Which is all pretty horrible.)

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 12:02:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 12:02:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597957.932401 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeaCC-0003ki-HD; Fri, 08 Sep 2023 12:02:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597957.932401; Fri, 08 Sep 2023 12:02:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeaCC-0003kb-D1; Fri, 08 Sep 2023 12:02:44 +0000
Received: by outflank-mailman (input) for mailman id 597957;
 Fri, 08 Sep 2023 12:02:42 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=763w=EY=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qeaCA-0003gr-UD
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 12:02:42 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2087.outbound.protection.outlook.com [40.107.13.87])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9c7adbde-4e3f-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 14:02:41 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7828.eurprd04.prod.outlook.com (2603:10a6:20b:24e::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Fri, 8 Sep
 2023 12:02:12 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Fri, 8 Sep 2023
 12:02:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9c7adbde-4e3f-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Q1bLOTBmUrD9ljq567J8fQplvuYd4dGsCB4sV0mTGYLxyeR/X7uLDSGHYL8BdOvNoj83MSkeMR4fnhCAzGLQvYsoBhccPil8z0B3yftGH60SV6HtpbFJ12q5XzvWbit4zw70UBPoxkLNVyAIhL3OxYGJyK2g9g2vVW0vWR6V0Mrsh7df5Fteu2WcKf5e3Erj6mujzVlAyTSDBMNBBMwhKLljnmPrG6VUD9idGGfcSx8aGG6hlZpqIC56kvM6rF/sqldGvI41bQJQBiEWNPxT2ynRW2kvongUwQ72XyAXlBmqcm+EjdmBdzjAFHHV1fFjxMxUFp5SdeFPov2kh9baqQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QW2v3lRq8nCz2X4VkCus7dvUGo2G6ucmCxIkfLM4lgo=;
 b=n4iiq2/C1cg26A9ceGX6hwoSLdyLPm3ar6wBdIkcndf+ZPgOmjoKJWHvUXETcX40UDLRXspray+i+suFsO8H/jZKrCsIBxByTd6+HC1jSsGfUNbPf8eTM9mNi/gkGmnlLalTrupNjNMuTp/x/z+LKK5TKCiM28Hz5qab88pkwhNFN3WkGIjoKD5TULHp6zxiarMh5GzpiwuVtfLAt8yVRbnZfKT5/lyqeT+CfQaxMyUwknBqnQMpVI0F0Sj7hzWhz9QeaoG6nG/D6g1Iod3opOsz3nneZJKbw7hklZCtGTMIP2J/pIQGzjsFdIl3E3MjSStioCl+5RPefVVLsDnJyQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QW2v3lRq8nCz2X4VkCus7dvUGo2G6ucmCxIkfLM4lgo=;
 b=TVGK2dEo03enQ1mMoyAVttloLBGqF6Pu9NY0gXJn7y6F+GTKudZ1DZXEhQpduCNfHRswWpxmYyzy7KkGUMxauAKS/fVJSTxRFiXsSKShRRBLxphCSdIC/xTgqm/tXY7RH81vGx0P6DIUiQZFW7v/R1gaVAX/iY0lvBRXI4LBjqv+9EgfTYGz7kXoU7XhKYmHvvqxkTZBVQEZyUupd53mqVo29/2yIp3OzdXZwEVFEXGaRjAydJ2rgjPGYvykatlNyW0bppKu/IcFXflWLREQyvZTOOkE7MtkEA9wYLMaxMXNgizaNToXSJi218/GkOMPEOxS1BLufAOx5gRlYEzWAA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <34c48cf9-79d3-7c19-a1ed-4107aad77ad2@suse.com>
Date: Fri, 8 Sep 2023 14:02:11 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] x86: change parameter name in
 {hap,shadow}_track_dirty_vram()
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <d9bf20e655cc5940aad21bcf43c53fe2d2e0ca58.1694164086.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d9bf20e655cc5940aad21bcf43c53fe2d2e0ca58.1694164086.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0149.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:95::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7828:EE_
X-MS-Office365-Filtering-Correlation-Id: d562dfb7-d946-42a1-6999-08dbb0636fcb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	DiUQ9KSSm3ZMeaQNew6+cX9TrRcyPRzoDRg4F/nccNV7GKEmKtVpFRUjvzuNwkYwVfOoh4Y6g+LM4ULtdatCctKEtAQFb0Q4dK2jL81nT3l150dmyi74eE2OjCVdL+VZwxQFBZii/mj7qgeCVnaaqdaeZC9fWpEHUg0bgBcI1GpiTLEVGPs7GB+QjlwXAGjD2wZC+Gzp15utWVRmJhEp31iavinD47PsSBFvGt6aax6orZougXRYk4F/yraD1/ejCP/8ljKbj0l1MrJJsSe3OE5n700hGwI8IxjdZL/mOYAzgebzrSUE2RRE4CKmA16ppZBxG/zzs/S+jFzODHp5jsHUOmY7/jBhAsgvc9JeOTjAevlIJgrZatPitKPDh57ui82K3Mi3ShkUZ79ahFddwQ4xKY+lsmf0G/AE5vemIkmUm9KlUS/KYmgV1v2B/IC83ASmFgQsF4e9qH6WnoL28SVoiPHUpe1vQrullZnDCRUfh2/uWNEvL+zZHrH8NRWoV62NMzqCrqXYACD40yiDnNLacyjGld2W522g+LcHOJl/B1Au3sAaxILbMqBr6Ku8WSDOn3k2HtHqu2MhjIRIHg32KtQFtn/VpX5/xlkisrii9In0IE7aYopRSHD7CX7TO9/z82dhYUGDLkhfhTJ6BYcGt943WJuS4WCL0/bvHtk=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(366004)(396003)(376002)(136003)(1800799009)(451199024)(186009)(6506007)(6486002)(53546011)(478600001)(6512007)(4744005)(26005)(6916009)(41300700001)(54906003)(66476007)(66946007)(5660300002)(66556008)(316002)(2906002)(8676002)(8936002)(4326008)(38100700002)(31696002)(86362001)(2616005)(36756003)(31686004)(14143004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eE1xemJJZUFua1Fnd29GRWJsTkVUMFp6a2R1NWVZT3kxNHdKMXdBVUIyZmhz?=
 =?utf-8?B?T3NiMy9MekFHOHBzTGx5Q2hZUUJDME4zZU8xVW1Td2RjUkVXR3k0ZEpoZHB3?=
 =?utf-8?B?YWhlR1BNRHlGa3JsNmJqVExQQkFEVzRqTGZWSVY4amc4cEVXcVdwMXBMR0Jr?=
 =?utf-8?B?c21UVkNNMERpM0lMT3VzVHpLRWRac1dTN1l6blRUdTZYUWw1Q1JTb3cxK1Mw?=
 =?utf-8?B?VlRKWEJtYkVsZzBjS0JmdGVlWmJHdEJyU2kxZk5qMmIyK2l5RS8zdE9lYkdm?=
 =?utf-8?B?ekFpL0RZenpmSkI5NE1zT0lVTG81a1A5MmVGT241MUFHcXJUSm1SSE1RcUdG?=
 =?utf-8?B?enc4VGZxdlpiYVU2ZlArR3ZEWTdYRHNxbWVsNUJpdlE5SjJoMmhCQTBRYWtM?=
 =?utf-8?B?YUdNS1cxTmQ5SU5uWFVhaWRJL0RVKzNIYmwyVGNzWVhBMlR5TEZLTmtlaDd0?=
 =?utf-8?B?UFZDVWpES0ozSmdBTFZheHpVa2w0dy9SSktXNWlEZGtmUEFLR0dySFFyWmFi?=
 =?utf-8?B?RjVTTDFRaCsvcUZUSTBVVkFCUVFtTDUxV1Zlc1VTeFFGSmVaYno5TFdpd2do?=
 =?utf-8?B?ZUU2NlAySVZhRzI3WEViS29LOGk2bjNiejBzUlBLdjFqcEc1QTBNSlZ6cnRQ?=
 =?utf-8?B?YVhJa1dDWWNhTm9yYmowQTByb2wrVUJqT3V2eWlXc3dUb1k5R2Z6NEJTeGN1?=
 =?utf-8?B?dHVMTUZGeEtTOVFpTkpBUkVrTjlkdWRSK1llcEZmMzUrMVNURmNFZ21YZTlR?=
 =?utf-8?B?UDNDenVDSmd6blRDZWg0S3h3N0dEVitzb3hxT2dEMHBkaGNQc1I5dmx2elhw?=
 =?utf-8?B?M2d0aXdxQXo0SFdwN2g4aXVEOXErTHVNb2IyU0JKRE95a1lGZTNqaDUvUG5B?=
 =?utf-8?B?WjJmb3NBRTRFRkRxUzVycVpZTFFYdlJsSXhtVExqMWZTaW1FeGZJbC9vdm5K?=
 =?utf-8?B?UmwwOVlLZVJJSExJYm0wamtIMlhxckxvR0xneXV2SmpMbk4wYlY0bFRNQmpw?=
 =?utf-8?B?NEFFWEd6VzlSeDRzWDIwRTlFajRFQy9DbHp6RFFkMC85OUl2b0xVd0N1cFVi?=
 =?utf-8?B?WUxVa0RUT2ZFZkU3ME1LdVUwYmFtNS9GSForUFNmMVEzTTlDdHdyZm5aMVlM?=
 =?utf-8?B?ekk1cE9sMkpBaVV2cDE4TVcvaExWc25jNGhpYXE1WHU4QWhuRUZ4S3JrVzZw?=
 =?utf-8?B?c1RTbnlUZXBGK2dKc3BNdTdmZjNNNzJ4Ri9aWmdlYS9oM3lhK2N4YVJ4REUw?=
 =?utf-8?B?WFRCOXFweDhFOHVQWG5vWlo4b0NkMGErUnhvYmVvS2pkMmlqSXROenQ0dFZ2?=
 =?utf-8?B?ODlUMm15RmJRbVIrcXYxSWtxaG9kSWlTNDVnUThnZVNKWmtmdEd4ek1hL2VJ?=
 =?utf-8?B?SVBET1l2R3pkZHYvU1JTdVpQcFIyUTU2UE1OVUpBeENJeFk1ZHErQkZqbUFS?=
 =?utf-8?B?dStQdVE4ems3NlNIc0JYYkpONmZTeXFQR2lzMDF0Wlh4ajI0NklOTFhCc2hC?=
 =?utf-8?B?U1AyTVViNklVZUhrVGpsdzZPdlpCU251UWdSTzF0KzBlOU1XS2JLOTV5bEw1?=
 =?utf-8?B?Qm1zUXB6aEY2TGc3Y3VNVG5DWFZsYzhHTjloTGNYUHlBdWdIYnE3eGdyUjdM?=
 =?utf-8?B?MzhreENrRGh2a3Q5T2V6c0hqbGlzcGlrSklYWHhEODlENjFzdUY2KzQzUzVz?=
 =?utf-8?B?d0YyOTFaUTRPeVFra1o2N1piL294V0NDNkRGRDZZVE94VUZ1VXg0bVJtNUZN?=
 =?utf-8?B?dkRXRWNrTXl5eVdMeEZHZWZlSVdaRVRUMVRlKzBpUXNGZ3pucFkxdVZHZm1j?=
 =?utf-8?B?N3NqYUhWUnJrYXFnYVhNRjBVY1YvcWVEZkxwNGNxWXBNQXhXTTRyc3ZiWmdm?=
 =?utf-8?B?VGRJRXBJVzBVY0VIWFhqVjJtM1hPNXBSU0ZKY2h2cU1VSUgwVlhyd0xLODZ2?=
 =?utf-8?B?Z1FEdkdWWmRCR0w0L0FuNDI4MnF1U2dJRHZXeC9OcUpXakVNVzhOeUNCWDAr?=
 =?utf-8?B?YkM1ekxnWXFkS0xCZXFiYTRLT2tZMEJCR0c4TEFvUEQ4NVV4SlRvRUx6TjJm?=
 =?utf-8?B?cDYvOWxkcUVMK2pQZXppbGFHZXRkK2dkWW1JYWdzdHhSVytQU0krbkxxN2xZ?=
 =?utf-8?Q?PR1+xDNNHgCmqLPA1Do0vM49U?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d562dfb7-d946-42a1-6999-08dbb0636fcb
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Sep 2023 12:02:12.8219
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Cco+SLq9UdE2r6gLHrsUNliLZPFBnK1+YX7N4XdeaEDabQ7SVs3QOBodYBEQtWpC2daqI1dmem/mnLtHiaU02g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7828

On 08.09.2023 11:10, Federico Serafini wrote:
> Make function declarations consistent with the corresponding
> definitions to address violations of MISRA C:2012 Rule 8.3.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Acked-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Fri Sep 08 13:18:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 13:18:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597977.932438 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qebMv-00053w-3E; Fri, 08 Sep 2023 13:17:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597977.932438; Fri, 08 Sep 2023 13:17:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qebMu-00053p-VB; Fri, 08 Sep 2023 13:17:52 +0000
Received: by outflank-mailman (input) for mailman id 597977;
 Fri, 08 Sep 2023 13:17:51 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qebMt-00053f-M4; Fri, 08 Sep 2023 13:17:51 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qebMt-0004Jl-HU; Fri, 08 Sep 2023 13:17:51 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qebMt-0006nF-8c; Fri, 08 Sep 2023 13:17:51 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qebMt-0000Ic-8F; Fri, 08 Sep 2023 13:17:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ChjxZdjk1wHCo0gV6QXHZMIEd9l7jwSxji3ZpN+yjRs=; b=QkmJ4iZuVvus6nljAKmj2iQu1q
	Lo9tTeIJmf/DjJ7AGAqESLIfr8J+4z3QfoGv5Sp2sqPifd3GuyYbnnXEok0tt+F/r9Gvo5v2KpReS
	ZnHkSneixvQR9arRWw8IsTo9YzZSx9O6LQINdDG/NboTnjsWkBs6yVeeg7eGabra7v4o=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182740-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182740: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=ff7ddc02b273f9159ef46fdb67d99062f8e598d9
X-Osstest-Versions-That:
    ovmf=2ce5ae43c2166984d20341993c4b9dbb337aad79
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 13:17:51 +0000

flight 182740 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182740/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 ff7ddc02b273f9159ef46fdb67d99062f8e598d9
baseline version:
 ovmf                 2ce5ae43c2166984d20341993c4b9dbb337aad79

Last test of basis   182732  2023-09-08 06:40:46 Z    0 days
Testing same since   182740  2023-09-08 10:15:07 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ard Biesheuvel <ardb@kernel.org>
  Jiewen Yao <Jiewen.yao@intel.com>
  Kun Qin <kun.qin@microsoft.com>
  Pierre Gondois <pierre.gondois@arm.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   2ce5ae43c2..ff7ddc02b2  ff7ddc02b273f9159ef46fdb67d99062f8e598d9 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 14:05:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 14:05:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.597991.932460 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qec6Q-0002pd-PX; Fri, 08 Sep 2023 14:04:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 597991.932460; Fri, 08 Sep 2023 14:04:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qec6Q-0002pW-LD; Fri, 08 Sep 2023 14:04:54 +0000
Received: by outflank-mailman (input) for mailman id 597991;
 Fri, 08 Sep 2023 14:04:54 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qec6Q-0002pM-5d; Fri, 08 Sep 2023 14:04:54 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qec6Q-0005MI-1t; Fri, 08 Sep 2023 14:04:54 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qec6P-0008WJ-ME; Fri, 08 Sep 2023 14:04:53 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qec6P-0001Nd-Lk; Fri, 08 Sep 2023 14:04:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=VRdAdaBJMb+yTHIKLF33Sy83WrqAVlwv6vDpt/MEmII=; b=chVpy1RS8GmHZLFhH3H68xpkHx
	gLW0raTezawVoy/WlHzFsQc8KiK4mjPop1LKbznun/XQ2OBhhwoXyJTaT6OlfqkbbKHb2kvGD3ooR
	VciU5gwewwIg+3saoJDbRix9ZkpjKoCKhLIYloBrJmmRgIol2RG7jastg1ErM3FePw4E=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182728-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 182728: tolerable FAIL - PUSHED
X-Osstest-Failures:
    libvirt:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=67c93cfae9312160de840d309bb3f5c36e5c9e9a
X-Osstest-Versions-That:
    libvirt=bfe53e9145cd5996a791c5caff0686572b850f82
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 14:04:53 +0000

flight 182728 libvirt real [real]
flight 182747 libvirt real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182728/
http://logs.test-lab.xenproject.org/osstest/logs/182747/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host fail pass in 182747-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182714
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182714
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182714
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              67c93cfae9312160de840d309bb3f5c36e5c9e9a
baseline version:
 libvirt              bfe53e9145cd5996a791c5caff0686572b850f82

Last test of basis   182714  2023-09-07 04:18:47 Z    1 days
Testing same since   182728  2023-09-08 04:18:48 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michal Privoznik <mprivozn@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   bfe53e9145..67c93cfae9  67c93cfae9312160de840d309bb3f5c36e5c9e9a -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 14:53:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 14:53:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598005.932484 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qecrA-0000Av-CT; Fri, 08 Sep 2023 14:53:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598005.932484; Fri, 08 Sep 2023 14:53:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qecrA-0000An-9h; Fri, 08 Sep 2023 14:53:12 +0000
Received: by outflank-mailman (input) for mailman id 598005;
 Fri, 08 Sep 2023 14:53:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lCyG=EY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qecr9-0000Ag-Fv
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 14:53:11 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6d6f1de4-4e57-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 16:53:10 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 952F84EE0738;
 Fri,  8 Sep 2023 16:53:09 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6d6f1de4-4e57-11ee-8783-cb3800f73035
MIME-Version: 1.0
Date: Fri, 08 Sep 2023 16:53:09 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org, Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
In-Reply-To: <7d07fc38-14e8-6cc7-2b0c-816bc68c7317@suse.com>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
 <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
 <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
 <6818e3ac47edca6ba107b8eeff95955a@bugseng.com>
 <a52733a0-ec5a-3b49-ccec-7a7e8e775c4c@suse.com>
 <7d07fc38-14e8-6cc7-2b0c-816bc68c7317@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <3d44b3b0b185418482ab60a693d930a9@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 08/09/2023 13:59, Jan Beulich wrote:
> On 08.09.2023 13:57, Jan Beulich wrote:
>> On 08.09.2023 10:48, Nicola Vetrini wrote:
>>> There is a build error due to -Werror because of a pointer comparison 
>>> at
>>> line 469 of common/numa.c:
>>> i = min(PADDR_BITS, BITS_PER_LONG - 1);
>>> where
>>> #define PADDR_BITS              52
>>> 
>>> I guess PADDR_BITS can become unsigned or gain a cast
>> 
>> While generally converting constants to unsigned comes with a certain
>> risk, I think for this (and its siblings) this ought to be okay. As to
>> the alternative of a cast - before considering that, please consider
>> e.g. adding 0u (as we do elsewhere in the code base to deal with such
>> cases).
> 
> And just after sending I realized that this would still be disliked by
> Misra's type system. (Much like then aiui the 1 above will need to
> become 1u. Which is all pretty horrible.)
> 
> Jan

I have a proposal: in our tests we enabled an ECLAIR configuration that 
allows to bypass the
constraint imposed by Rule 10.4 that warrants the 1U iff the value is 
constant and both types
can represent it correctly (in this case BITS_PER_LONG -1). This would 
allow using the proposed
solution and documenting why it's ok not to respect R10.4. What do you 
think?

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 15:09:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 15:09:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598030.932517 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qed76-0002dZ-3K; Fri, 08 Sep 2023 15:09:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598030.932517; Fri, 08 Sep 2023 15:09:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qed76-0002dS-0q; Fri, 08 Sep 2023 15:09:40 +0000
Received: by outflank-mailman (input) for mailman id 598030;
 Fri, 08 Sep 2023 15:09:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lCyG=EY=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qed74-0002dE-GU
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 15:09:38 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b9fddf6f-4e59-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 17:09:37 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 2B1484EE0738;
 Fri,  8 Sep 2023 17:09:37 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b9fddf6f-4e59-11ee-8783-cb3800f73035
MIME-Version: 1.0
Date: Fri, 08 Sep 2023 17:09:37 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org, Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
In-Reply-To: <3d44b3b0b185418482ab60a693d930a9@bugseng.com>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
 <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
 <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
 <6818e3ac47edca6ba107b8eeff95955a@bugseng.com>
 <a52733a0-ec5a-3b49-ccec-7a7e8e775c4c@suse.com>
 <7d07fc38-14e8-6cc7-2b0c-816bc68c7317@suse.com>
 <3d44b3b0b185418482ab60a693d930a9@bugseng.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <98406cf53192652013d35ee8856df5c0@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 08/09/2023 16:53, Nicola Vetrini wrote:
> On 08/09/2023 13:59, Jan Beulich wrote:
>> On 08.09.2023 13:57, Jan Beulich wrote:
>>> On 08.09.2023 10:48, Nicola Vetrini wrote:
>>>> There is a build error due to -Werror because of a pointer 
>>>> comparison at
>>>> line 469 of common/numa.c:
>>>> i = min(PADDR_BITS, BITS_PER_LONG - 1);
>>>> where
>>>> #define PADDR_BITS              52
>>>> 
>>>> I guess PADDR_BITS can become unsigned or gain a cast
>>> 
>>> While generally converting constants to unsigned comes with a certain
>>> risk, I think for this (and its siblings) this ought to be okay. As 
>>> to
>>> the alternative of a cast - before considering that, please consider
>>> e.g. adding 0u (as we do elsewhere in the code base to deal with such
>>> cases).
>> 
>> And just after sending I realized that this would still be disliked by
>> Misra's type system. (Much like then aiui the 1 above will need to
>> become 1u. Which is all pretty horrible.)
>> 
>> Jan
> 
> I have a proposal: in our tests we enabled an ECLAIR configuration
> that allows to bypass the
> constraint imposed by Rule 10.4 that warrants the 1U iff the value is
> constant and both types
> can represent it correctly (in this case BITS_PER_LONG -1). This would
> allow using the proposed
> solution and documenting why it's ok not to respect R10.4. What do you 
> think?

And perhaps also use min_t instead of min, so that the typecheck can be 
avoided.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 15:26:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 15:26:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598055.932534 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qedMu-0005sc-Iz; Fri, 08 Sep 2023 15:26:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598055.932534; Fri, 08 Sep 2023 15:26:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qedMu-0005sV-Fp; Fri, 08 Sep 2023 15:26:00 +0000
Received: by outflank-mailman (input) for mailman id 598055;
 Fri, 08 Sep 2023 15:25:59 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qedMt-0005sJ-D6; Fri, 08 Sep 2023 15:25:59 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qedMt-00078m-9q; Fri, 08 Sep 2023 15:25:59 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qedMt-0002NM-0u; Fri, 08 Sep 2023 15:25:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qedMt-0001Gw-0S; Fri, 08 Sep 2023 15:25:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=TV7lPfIIe+dBl0tycoqDYCEY96BWCJ6L/5ooXgjY7CQ=; b=TiiqYulpUIBHv1ls3O76UaNDss
	uqoNwcfO6FN4vPfl5VfLjKQhpco7u42d1ofTqBC0rAqQcWJFe+JT5JtAMBDjG4akIIq7VASmwQM9j
	iC4dor21mMSls2LML0KVDIGwlV3Ez8jjHI1d+NDXYTA5DhdUWU5/9DsspoCImST+0eZs=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182753-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182753: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430
X-Osstest-Versions-That:
    ovmf=ff7ddc02b273f9159ef46fdb67d99062f8e598d9
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 15:25:59 +0000

flight 182753 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182753/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430
baseline version:
 ovmf                 ff7ddc02b273f9159ef46fdb67d99062f8e598d9

Last test of basis   182740  2023-09-08 10:15:07 Z    0 days
Testing same since   182753  2023-09-08 13:43:09 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Kun Qin <kuqin@microsoft.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   ff7ddc02b2..b74f1f7ab5  b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 16:08:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 16:08:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598066.932549 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qee1Z-0003IR-P1; Fri, 08 Sep 2023 16:08:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598066.932549; Fri, 08 Sep 2023 16:08:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qee1Z-0003IK-Lu; Fri, 08 Sep 2023 16:08:01 +0000
Received: by outflank-mailman (input) for mailman id 598066;
 Fri, 08 Sep 2023 16:08:00 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qee1Y-0003IA-H8; Fri, 08 Sep 2023 16:08:00 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qee1Y-0008VX-Eg; Fri, 08 Sep 2023 16:08:00 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qee1Y-0003Ne-5s; Fri, 08 Sep 2023 16:08:00 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qee1Y-0006WB-5O; Fri, 08 Sep 2023 16:08:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=X5UvHk5VdHuKevHvb1JcGkJqMDeLQxcOR2giPpFd4Y0=; b=nyAq7U0Hlk7gYRk1Db5Z7uIbc4
	cTohyK1zo2w7mB8NT23siTUctfd2/Fsyl0KU+Oxehe1wp7hcyHX2lHOioHCwPhvC9UJ2SQ4B1Js7D
	FiDGn7iTOo7k12T+dVdVpdN4QBcYRATUxR/GwAEpj8/LqOLGE1NFD8wUaOHkuwZsWQBA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182729-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182729: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a48fa7efaf1161c1c898931fe4c7f0070964233a
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 16:08:00 +0000

flight 182729 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182729/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                a48fa7efaf1161c1c898931fe4c7f0070964233a
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   11 days
Failing since        182544  2023-08-28 20:42:13 Z   10 days   19 attempts
Testing same since   182729  2023-09-08 05:07:37 Z    0 days    1 attempts

------------------------------------------------------------
2195 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 261128 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 16:20:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 16:20:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598076.932569 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeeDu-0005wA-VZ; Fri, 08 Sep 2023 16:20:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598076.932569; Fri, 08 Sep 2023 16:20:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeeDu-0005w3-Sl; Fri, 08 Sep 2023 16:20:46 +0000
Received: by outflank-mailman (input) for mailman id 598076;
 Fri, 08 Sep 2023 16:20:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8cQz=EY=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qeeDt-0005vx-BE
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 16:20:45 +0000
Received: from mail-wr1-x435.google.com (mail-wr1-x435.google.com
 [2a00:1450:4864:20::435])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a85f6a69-4e63-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 18:20:43 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-31f7638be6eso1399709f8f.3
 for <xen-devel@lists.xenproject.org>; Fri, 08 Sep 2023 09:20:43 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 m24-20020a7bce18000000b003feee8d8011sm5574352wmc.41.2023.09.08.09.20.41
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 08 Sep 2023 09:20:41 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a85f6a69-4e63-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694190042; x=1694794842; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=NSaAuxFYnMB0rbyOtc0+GS4DWIDxQthSc6OdxGPGSsk=;
        b=OZu/Ub+BWmi/muVIorL5maeqpF0qsFdLd5IRGASOEtw8ve8Yw2py2sDoaWIw2zwqbY
         bkQhh0VuDl5De6rOauWIXhmvlbvvom2ToYXvWNCAibqMwVQk/todSON5sTQussdRsbZr
         8oPR43WzzZqHb/aG2mnpi5v570DHBhpfZruh8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694190042; x=1694794842;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=NSaAuxFYnMB0rbyOtc0+GS4DWIDxQthSc6OdxGPGSsk=;
        b=QnICtitWeYQEjklowpdizmfB+q7QjrPCYspVGVmR/eAR3h9pGZc6uEhaLQS6RAPqvY
         wj+n3mMCvbpdZtMzCO7FMQMOB6QBEUaszbOxcPrljywrdgX9SQCYCDj5DA7cR2XLDxH+
         ZWSzVqv+yjYAV5aEZu50M97tHrRvsSdufb/i7q6qlul+wiFVNp80JCOtPrzZfDAeKJvB
         BWvG2oN/geynBpnT3gwHxZeBb9tlglnKSyoIe2V7v7Tf7zEK71AVCDYyTy+zlMq1pLX5
         2DAvmnChPnOx2OfSEbU2D7PTVR307XuMRXIVaO1QBbq95iNAT270JfVis+C+1UHA3g1j
         SyTw==
X-Gm-Message-State: AOJu0Yxx+nW+C5R/uLdo7nVAuPrw5vssZ0Ln/lddj4PKR3WmnQMr5ffv
	h+WEt3YMusNlRYpitmEjZ2gNvL2XUEKR5T2DTdE=
X-Google-Smtp-Source: AGHT+IEs01Run1Xa87KRp4D6Kg7ko/wGEsOZ2roWqgxatRZ0kwYtZ/6HI23zSKc0/USwjTafDYX1NA==
X-Received: by 2002:adf:e546:0:b0:31a:dbd1:bf6 with SMTP id z6-20020adfe546000000b0031adbd10bf6mr2488114wrm.68.1694190042212;
        Fri, 08 Sep 2023 09:20:42 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Javi Merino <javi.merino@cloud.com>,
	Jan Beulich <jbeulich@suse.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [XEN PATCH v2 0/2] update gcov info for newer versions of gcc
Date: Fri,  8 Sep 2023 17:20:30 +0100
Message-ID: <cover.1694189143.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The gcov info changes with different versions of gcc.  This patch
series updates it so that we can capture coverage for xen built with
newer compilers.

This doesn't solve all the problems with coverage as Xen still crashes
when trying to reset/read coverage[0].  Still, it's a step forward.

[0] https://gitlab.com/xen-project/xen/-/issues/168

I have tested it with a workaround for the aforementioned bug
(commenting out freeing of the init sections) and the following gcc
versions:
  - gcc 4.8.5
  - gcc 4.9.4
  - gcc 6.5.0
  - gcc 7.5.0
  - gcc 8.5.0
  - gcc 9.5.0
  - gcc 10.5.0
  - gcc 11.4.0
  - gcc 12.3.0

Javi Merino (2):
  coverage: simplify the logic of choosing the number of gcov counters
    depending on the gcc version
  coverage: update gcov info for newer versions of gcc

 xen/common/coverage/Makefile  |  6 +-----
 xen/common/coverage/gcc_4_7.c | 39 ++++++++++++++++++++++++++---------
 xen/common/coverage/gcc_4_9.c | 33 -----------------------------
 xen/common/coverage/gcc_5.c   | 33 -----------------------------
 xen/common/coverage/gcc_7.c   | 30 ---------------------------
 5 files changed, 30 insertions(+), 111 deletions(-)
 delete mode 100644 xen/common/coverage/gcc_4_9.c
 delete mode 100644 xen/common/coverage/gcc_5.c
 delete mode 100644 xen/common/coverage/gcc_7.c

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 16:20:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 16:20:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598077.932579 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeeE2-0006Eu-Af; Fri, 08 Sep 2023 16:20:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598077.932579; Fri, 08 Sep 2023 16:20:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeeE2-0006El-7Q; Fri, 08 Sep 2023 16:20:54 +0000
Received: by outflank-mailman (input) for mailman id 598077;
 Fri, 08 Sep 2023 16:20:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8cQz=EY=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qeeE0-0006Dr-N1
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 16:20:52 +0000
Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com
 [2a00:1450:4864:20::330])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ad82f35e-4e63-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 18:20:51 +0200 (CEST)
Received: by mail-wm1-x330.google.com with SMTP id
 5b1f17b1804b1-401da71b85eso24135955e9.1
 for <xen-devel@lists.xenproject.org>; Fri, 08 Sep 2023 09:20:51 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 m24-20020a7bce18000000b003feee8d8011sm5574352wmc.41.2023.09.08.09.20.50
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 08 Sep 2023 09:20:50 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ad82f35e-4e63-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694190051; x=1694794851; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=MOfLOXf8yDOC8XjMaviIU41n1ePC1cU7Y3evBR4kK7U=;
        b=K8mdn5Q94CNNnx2T8A6ViyRSfG/oVqGYMbGdZPc+CEFx3gQo/2gf54EKOkvy14ol32
         pmp6dQwMDTCcIzb5L6Y7zglAiS9axfKTc5TXczo7Olwpha9q3bMAvzOwJrIVpO5KZupy
         d6BQRHEOQo7KjKlALJBVSV8hYo1LUHXagmoPw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694190051; x=1694794851;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=MOfLOXf8yDOC8XjMaviIU41n1ePC1cU7Y3evBR4kK7U=;
        b=IShzHfP3NLw9AVva6/TWmD0VqkccWpU6Li7MP1DG2zjat2czu4c/iQPhn+p/7wcNZU
         Tcsge+REsYiIKJLE2TSkXHLyTMprbKWh+mYK+MmDGeSG4J5p9eo72ZdhVPG+q3Ac7AmF
         /fzkqMEGPe9+aCWV35EH3YElATB+TA2he3Hehl3ZaZSNU+MLSkqb+lHjQQvHleUU/7l4
         u+yItmyf7CdNZA5S5+XPXNDX7C1Gj3aILSLCXPJC+VdR0po/SgQMqVq9KgzjNijWpqp2
         ziyCByva0uviHb14fU7zJGoZRgH00uOlKEq/TjBPh4W5FA8h26ZDoaB5oqEDgEDMs5u3
         70tw==
X-Gm-Message-State: AOJu0Yz/I3CwvDEopT3WXLPejNb6NBBzi24WQQcZWGsGgoCktmqjvF19
	zNJMsUoPTb7PBwR7JjO8/KTmclFaPvaBbFQ5seYp4g==
X-Google-Smtp-Source: AGHT+IFLGgaR3GaQNT/hO3YT4Jx265RaO4F39ZDC5SpvsBK3M3KAx7cJhbueYwfpjTdAt+JecgOvpA==
X-Received: by 2002:a05:600c:2249:b0:3fe:111a:d1d9 with SMTP id a9-20020a05600c224900b003fe111ad1d9mr2578357wmm.25.1694190050831;
        Fri, 08 Sep 2023 09:20:50 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Javi Merino <javi.merino@cloud.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v2 1/2] coverage: simplify the logic of choosing the number of gcov counters depending on the gcc version
Date: Fri,  8 Sep 2023 17:20:31 +0100
Message-ID: <f40f16bad7553f63d81574eac39e1fddaeec0be4.1694189143.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694189143.git.javi.merino@cloud.com>
References: <cover.1694189143.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The current structure of choosing the correct file based on the
compiler version makes us make 33 line files just to define a
constant.  The changes after gcc 4.7 are minimal, just the number of
counters.

Fold the changes in gcc_4_9.c, gcc_5.c and gcc_7.c into gcc_4_7.c to
remove a lot of the boilerplate and keep the logic of choosing the
GCOV_COUNTER in gcc_4_7.c.

Signed-off-by: Javi Merino <javi.merino@cloud.com>
---
 xen/common/coverage/Makefile  |  6 +-----
 xen/common/coverage/gcc_4_7.c | 17 +++++++++--------
 xen/common/coverage/gcc_4_9.c | 33 ---------------------------------
 xen/common/coverage/gcc_5.c   | 33 ---------------------------------
 xen/common/coverage/gcc_7.c   | 30 ------------------------------
 5 files changed, 10 insertions(+), 109 deletions(-)
 delete mode 100644 xen/common/coverage/gcc_4_9.c
 delete mode 100644 xen/common/coverage/gcc_5.c
 delete mode 100644 xen/common/coverage/gcc_7.c

diff --git a/xen/common/coverage/Makefile b/xen/common/coverage/Makefile
index 63f98c71d6..d729afc9c7 100644
--- a/xen/common/coverage/Makefile
+++ b/xen/common/coverage/Makefile
@@ -1,11 +1,7 @@
 obj-y += coverage.o
 ifneq ($(CONFIG_CC_IS_CLANG),y)
 obj-y += gcov_base.o gcov.o
-obj-y += $(call cc-ifversion,-lt,0407, \
-		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
-		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
-		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
-		gcc_5.o, gcc_7.o))))
+obj-y += $(call cc-ifversion,-lt,0407, gcc_3_4.o, gcc_4_7.o)
 else
 obj-y += llvm.o
 endif
diff --git a/xen/common/coverage/gcc_4_7.c b/xen/common/coverage/gcc_4_7.c
index 25b4a8bcdc..ddbc9f4bb0 100644
--- a/xen/common/coverage/gcc_4_7.c
+++ b/xen/common/coverage/gcc_4_7.c
@@ -18,15 +18,16 @@
 
 #include "gcov.h"
 
-/*
- * GCOV_COUNTERS will be defined if this file is included by other
- * source files.
- */
-#ifndef GCOV_COUNTERS
-# if !(GCC_VERSION >= 40700 && GCC_VERSION < 40900)
-#  error "Wrong version of GCC used to compile gcov"
-# endif
+#if (GCC_VERSION >= 40700 && GCC_VERSION < 40900)
 #define GCOV_COUNTERS 8
+#elif (GCC_VERSION >= 40900 && GCC_VERSION < 50000)
+#define GCOV_COUNTERS 9
+#elif GCC_VERSION >= 50000 && GCC_VERSION < 70000
+#define GCOV_COUNTERS 10
+#elif GCC_VERSION >= 70000
+#define GCOV_COUNTERS 9
+#else
+#error "Wrong version of GCC used to compile gcov"
 #endif
 
 #define GCOV_TAG_FUNCTION_LENGTH        3
diff --git a/xen/common/coverage/gcc_4_9.c b/xen/common/coverage/gcc_4_9.c
deleted file mode 100644
index dcea961936..0000000000
--- a/xen/common/coverage/gcc_4_9.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- *  This code provides functions to handle gcc's profiling data format
- *  introduced with gcc 4.7.
- *
- *  For a better understanding, refer to gcc source:
- *  gcc/gcov-io.h
- *  libgcc/libgcov.c
- *
- *  Uses gcc-internal data definitions.
- *
- *  Imported from Linux and modified for Xen by
- *    Wei Liu <wei.liu2@citrix.com>
- */
-
-#include "gcov.h"
-
-#if !(GCC_VERSION >= 40900 && GCC_VERSION < 50000)
-#error "Wrong version of GCC used to compile gcov"
-#endif
-
-#define GCOV_COUNTERS 9
-
-#include "gcc_4_7.c"
-
-/*
- * Local variables:
- * mode: C
- * c-file-style: "BSD"
- * c-basic-offset: 4
- * tab-width: 4
- * indent-tabs-mode: nil
- * End:
- */
diff --git a/xen/common/coverage/gcc_5.c b/xen/common/coverage/gcc_5.c
deleted file mode 100644
index 6e0d276f3b..0000000000
--- a/xen/common/coverage/gcc_5.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- *  This code provides functions to handle gcc's profiling data format
- *  introduced with gcc 5.
- *
- *  For a better understanding, refer to gcc source:
- *  gcc/gcov-io.h
- *  libgcc/libgcov.c
- *
- *  Uses gcc-internal data definitions.
- *
- *  Imported from Linux and modified for Xen by
- *    Wei Liu <wei.liu2@citrix.com>
- */
-
-#include "gcov.h"
-
-#if GCC_VERSION < 50000 || GCC_VERSION >= 70000
-#error "Wrong version of GCC used to compile gcov"
-#endif
-
-#define GCOV_COUNTERS 10
-
-#include "gcc_4_7.c"
-
-/*
- * Local variables:
- * mode: C
- * c-file-style: "BSD"
- * c-basic-offset: 4
- * tab-width: 4
- * indent-tabs-mode: nil
- * End:
- */
diff --git a/xen/common/coverage/gcc_7.c b/xen/common/coverage/gcc_7.c
deleted file mode 100644
index 3962eb4c76..0000000000
--- a/xen/common/coverage/gcc_7.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- *  This code provides functions to handle gcc's profiling data format
- *  introduced with gcc 7.
- *
- *  For a better understanding, refer to gcc source:
- *  gcc/gcov-io.h
- *  libgcc/libgcov.c
- *
- *  Uses gcc-internal data definitions.
- */
-
-#include "gcov.h"
-
-#if GCC_VERSION < 70000
-#error "Wrong version of GCC used to compile gcov"
-#endif
-
-#define GCOV_COUNTERS 9
-
-#include "gcc_4_7.c"
-
-/*
- * Local variables:
- * mode: C
- * c-file-style: "BSD"
- * c-basic-offset: 4
- * tab-width: 4
- * indent-tabs-mode: nil
- * End:
- */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 16:20:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 16:20:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598078.932589 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeeE5-0006W7-JE; Fri, 08 Sep 2023 16:20:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598078.932589; Fri, 08 Sep 2023 16:20:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeeE5-0006Vt-Ft; Fri, 08 Sep 2023 16:20:57 +0000
Received: by outflank-mailman (input) for mailman id 598078;
 Fri, 08 Sep 2023 16:20:56 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8cQz=EY=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qeeE4-0005vx-Az
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 16:20:56 +0000
Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com
 [2a00:1450:4864:20::336])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id af5fac43-4e63-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 18:20:54 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-3fef56f7248so23746055e9.3
 for <xen-devel@lists.xenproject.org>; Fri, 08 Sep 2023 09:20:54 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 m24-20020a7bce18000000b003feee8d8011sm5574352wmc.41.2023.09.08.09.20.53
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 08 Sep 2023 09:20:53 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: af5fac43-4e63-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694190054; x=1694794854; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=i6wE+Q6YPhjgRGDUDttaAAhWjDOLXM9ZsbpkHij4TSA=;
        b=jwk3vVjwzUxByXybHEWPNX/3lDDjDWBjQHyfjz2Ko591E4NpvYTNcskng4EJ3f8EML
         7dXEfCJ/iKtioFl7sICe8tK6JpBTqREwY/H+ztYOjrUuNPFCF1AUInv9mvPth2E+jUJ3
         IUATI6QltvbnlzQ/GZYdYdPhoZ7ZY23JM0OrU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694190054; x=1694794854;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=i6wE+Q6YPhjgRGDUDttaAAhWjDOLXM9ZsbpkHij4TSA=;
        b=ZLkbGo0zOp8aUf6AStWPxdmmCf3a0nW63ei2XJ/uxKyDgYQJTFAfUlhZ5RCr/ZQ4cr
         RozgQ1rxUwx93E0wpBmOP1tl7BobCv1LIBUyjsrbIQLDuDz8P3JwJjp+cj4vZpBhqudL
         euuNCe088I6/ger6m1T/iMYMFcIDT7JE4eYd8xRJp43juayk8gEJMF5InJgQuwt8gkN0
         1+Pi7YKV/Bi/juiX28UgqLhdIJKKbPkg7I/s79VavjKgL+jHQU18ueAOj+RIz6RCmZrP
         3YVebaDzQohtYL8w5tGU+a6hnImflI/Gazf+eZQ+MYCWb0Y8R+JnEJsIVza/juN1gE8p
         Z7jQ==
X-Gm-Message-State: AOJu0YymcUhgsVMPFTo4xukL0ZSH6guCFfbeL/72MdP2ASRYS3j2gchG
	GZWxhVkFBS4FlXt6diVGlyTdX8lKO/NFkGqgGfihkA==
X-Google-Smtp-Source: AGHT+IHpKLXmgdlDykh/Lnsr/L+EHgmoX4EoZJ5vI1LnOskXlwZ4GNncyfTrAy2rVtqS5OLbNIXq3g==
X-Received: by 2002:a7b:c8c4:0:b0:402:8c7e:3fc4 with SMTP id f4-20020a7bc8c4000000b004028c7e3fc4mr2417637wml.30.1694190054134;
        Fri, 08 Sep 2023 09:20:54 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Javi Merino <javi.merino@cloud.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v2 2/2] coverage: update gcov info for newer versions of gcc
Date: Fri,  8 Sep 2023 17:20:32 +0100
Message-ID: <f6495eb4c02f6539c5b95d2850d4a834f2ea94e8.1694189143.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694189143.git.javi.merino@cloud.com>
References: <cover.1694189143.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Shamelessly copy changes to gcov_info structures from linux so that we
can capture coverage for xen built with newer compilers.

Signed-off-by: Javi Merino <javi.merino@cloud.com>
---
 xen/common/coverage/gcc_4_7.c | 24 +++++++++++++++++++++---
 1 file changed, 21 insertions(+), 3 deletions(-)

diff --git a/xen/common/coverage/gcc_4_7.c b/xen/common/coverage/gcc_4_7.c
index ddbc9f4bb0..8f6e287474 100644
--- a/xen/common/coverage/gcc_4_7.c
+++ b/xen/common/coverage/gcc_4_7.c
@@ -24,14 +24,23 @@
 #define GCOV_COUNTERS 9
 #elif GCC_VERSION >= 50000 && GCC_VERSION < 70000
 #define GCOV_COUNTERS 10
-#elif GCC_VERSION >= 70000
+#elif GCC_VERSION >= 70000 && GCC_VERSION < 100000
 #define GCOV_COUNTERS 9
+#elif GCC_VERSION >= 100000
+#define GCOV_COUNTERS 8
 #else
 #error "Wrong version of GCC used to compile gcov"
 #endif
 
 #define GCOV_TAG_FUNCTION_LENGTH        3
 
+#if GCC_VERSION >= 120000
+/* Since GCC 12.1, sizes are in BYTES and not in WORDS (4B). */
+#define GCOV_UNIT_SIZE 4
+#else
+#define GCOV_UNIT_SIZE 1
+#endif
+
 static struct gcov_info *gcov_info_head;
 
 /**
@@ -89,6 +98,10 @@ struct gcov_info {
     unsigned int version;
     struct gcov_info *next;
     unsigned int stamp;
+#if (GCC_VERSION >= 120000)
+    /*  GCC 12.1 introduced a checksum field */
+    unsigned int checksum;
+#endif
     const char *filename;
     void (*merge[GCOV_COUNTERS])(gcov_type *, unsigned int);
     unsigned int n_functions;
@@ -161,13 +174,18 @@ size_t gcov_info_to_gcda(char *buffer, const struct gcov_info *info)
     pos += gcov_store_uint32(buffer, pos, info->version);
     pos += gcov_store_uint32(buffer, pos, info->stamp);
 
+#if (GCC_VERSION >= 120000)
+    /* Use zero as checksum of the compilation unit. */
+    pos += gcov_store_uint32(buffer, pos, 0);
+#endif
+
     for ( fi_idx = 0; fi_idx < info->n_functions; fi_idx++ )
     {
         fi_ptr = info->functions[fi_idx];
 
         /* Function record. */
         pos += gcov_store_uint32(buffer, pos, GCOV_TAG_FUNCTION);
-        pos += gcov_store_uint32(buffer, pos, GCOV_TAG_FUNCTION_LENGTH);
+        pos += gcov_store_uint32(buffer, pos, GCOV_TAG_FUNCTION_LENGTH * GCOV_UNIT_SIZE);
         pos += gcov_store_uint32(buffer, pos, fi_ptr->ident);
         pos += gcov_store_uint32(buffer, pos, fi_ptr->lineno_checksum);
         pos += gcov_store_uint32(buffer, pos, fi_ptr->cfg_checksum);
@@ -182,7 +200,7 @@ size_t gcov_info_to_gcda(char *buffer, const struct gcov_info *info)
             /* Counter record. */
             pos += gcov_store_uint32(buffer, pos,
                                      GCOV_TAG_FOR_COUNTER(ct_idx));
-            pos += gcov_store_uint32(buffer, pos, ci_ptr->num * 2);
+            pos += gcov_store_uint32(buffer, pos, ci_ptr->num * 2 * GCOV_UNIT_SIZE);
 
             for ( cv_idx = 0; cv_idx < ci_ptr->num; cv_idx++ )
                 pos += gcov_store_uint64(buffer, pos, ci_ptr->values[cv_idx]);
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 17:09:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 17:09:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598103.932620 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeeyT-000542-V3; Fri, 08 Sep 2023 17:08:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598103.932620; Fri, 08 Sep 2023 17:08:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeeyT-00053v-Ra; Fri, 08 Sep 2023 17:08:53 +0000
Received: by outflank-mailman (input) for mailman id 598103;
 Fri, 08 Sep 2023 17:08:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hmm/=EY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qeeyS-00053n-Gr
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 17:08:52 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 613ee459-4e6a-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 19:08:51 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 679A661529;
 Fri,  8 Sep 2023 17:08:49 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7F0DAC433CA;
 Fri,  8 Sep 2023 17:08:47 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 613ee459-4e6a-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694192928;
	bh=zFzcBbCOO3F6g5Lltzo0VkLOTuwvSbIUve2yL6SUFRw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=jf/BOXsNFcP+XFKaKJb5ynuzwM1jZZHhhGo8O/mEoiY7ZwXIb92jZkgOpEW+KlBa9
	 IZ8edgnNQn8HJ82EH07yey5MVTpms0KLKB752R77Lez8uVEFj4YMPkXRc4Mm/3ijKN
	 cLvlwYaon4XFiDS6DaiHhAptrKmNRgt5eeBemwkPb0hNxZjS3QWs7sxXXqt+HhXvoj
	 0jbbHVnhG146PDdQ0w1eGJyQtK/uza+nJ1/kx6jRmSw9VpODBxmRC1bxWFV4U9bPXo
	 fCUAae/pFil/YyJKOaPSnfbo7mUj75NtIbEWOP0WKT0LBVDt2rga9C6rg1uybAWIkR
	 7Ids65PajFd0g==
Date: Fri, 8 Sep 2023 10:08:45 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Henry Wang <Henry.Wang@arm.com>
cc: Ayan Kumar Halder <ayankuma@amd.com>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, Wei Chen <Wei.Chen@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    Penny Zheng <Penny.Zheng@arm.com>
Subject: Re: [PATCH v6 09/13] xen/arm: Extract MMU-specific MM code
In-Reply-To: <FC26F094-ED04-4E5F-904F-3B09E6605D31@arm.com>
Message-ID: <alpine.DEB.2.22.394.2309081008060.6458@ubuntu-linux-20-04-desktop>
References: <20230828013224.669433-1-Henry.Wang@arm.com> <20230828013224.669433-10-Henry.Wang@arm.com> <3e32512e-07d1-34c7-bc51-11dfe061f903@amd.com> <FC26F094-ED04-4E5F-904F-3B09E6605D31@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-1814931840-1694192928=:6458"

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-1814931840-1694192928=:6458
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Fri, 8 Sep 2023, Henry Wang wrote:
> Hi Ayan,
> 
> > On Sep 7, 2023, at 19:34, Ayan Kumar Halder <ayankuma@amd.com> wrote:
> > 
> > Hi Henry,
> > 
> >> +
> >> +extern mfn_t directmap_mfn_start, directmap_mfn_end;
> > 
> > As you are declaring them for MMU specific , you also need this change :-
> > 
> > diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
> > index 89ecb54be2..19b60c5d1b 100644
> > --- a/xen/arch/arm/setup.c
> > +++ b/xen/arch/arm/setup.c
> > @@ -670,7 +670,7 @@ void __init populate_boot_allocator(void)
> > 
> >              s = bootinfo.reserved_mem.bank[i].start;
> >              e = s + bootinfo.reserved_mem.bank[i].size;
> > -#ifdef CONFIG_ARM_32
> > +#if (CONFIG_ARM_32 && CONFIG_MMU)
> >              /* Avoid the xenheap, note that the xenheap cannot across a bank */
> >              if ( s <= mfn_to_maddr(directmap_mfn_start) &&
> >                   e >= mfn_to_maddr(directmap_mfn_end) )
> > @@ -708,7 +708,7 @@ void __init populate_boot_allocator(void)
> >              if ( e > bank_end )
> >                  e = bank_end;
> > 
> > -#ifdef CONFIG_ARM_32
> > +#if (CONFIG_ARM_32 && CONFIG_MMU)
> >              /* Avoid the xenheap */
> >              if ( s < mfn_to_maddr(directmap_mfn_end) &&
> >                   mfn_to_maddr(directmap_mfn_start) < e )
> > 
> > So that directmap_mfn_end and directmap_mfn_start is used only when MMU is enabled.
> 
> I am not 100% sure on this, because currently there is no MPU code at
> all, indicating all setup.c is MMU specific. In this case adding “&& CONFIG_MMU”
> seems a little bit redundant to me. But I agree you made a point and it is correct
> that when the MPU code is in, these “directmap” part should be gated with
> CONFIG_MMU (or maybe split the code between arm32/arm64 to different helpers
> to avoid #ifdef). Hence I would prefer doing these change when the MPU code is added.
> 
> Let’s see what maintainers will say. I am happy to do the change once we have
> an agreement.

It might be wiser to add && CONFIG_MMU when the MPU code is added in
case we decide to move it / shape it differently.
--8323329-1814931840-1694192928=:6458--


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 17:11:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 17:11:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598109.932630 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qef1D-0006dO-9K; Fri, 08 Sep 2023 17:11:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598109.932630; Fri, 08 Sep 2023 17:11:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qef1D-0006dH-6a; Fri, 08 Sep 2023 17:11:43 +0000
Received: by outflank-mailman (input) for mailman id 598109;
 Fri, 08 Sep 2023 17:11:41 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lHtp=EY=gmail.com=jandryuk@srs-se1.protection.inumbo.net>)
 id 1qef1B-0006d8-NN
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 17:11:41 +0000
Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com
 [2a00:1450:4864:20::52e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c6683943-4e6a-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 19:11:39 +0200 (CEST)
Received: by mail-ed1-x52e.google.com with SMTP id
 4fb4d7f45d1cf-522bd411679so3046729a12.0
 for <xen-devel@lists.xenproject.org>; Fri, 08 Sep 2023 10:11:39 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c6683943-4e6a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694193099; x=1694797899; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=ZRZZtDSDbQ7ziD6U8enIVKCW6fBD3XLhOHURnTZwm+I=;
        b=JcGDaA2YkvYBq+O+1ycHNk2BpTgiyYwFXfZ0RB8wKboROqAnYO1qeTfDNHCwo8jVJG
         MVjQ8ZP2bBp2/jtysrhS5WhE9bnsyk3X9udUiS/6u9iz2FwuAouw00+jrRiR2c7Uwl1r
         G4NwKCc6ARRxQKxUE+2zmFlI6xmuEYJzTvcCAdETzRCDi+O3d8nGkgg6RetwbkcAjRWf
         tVea/T0X2dObL/fUbiWc5PKGWzdPblcJJ5EfmzZ2xN6aENAqi3bWIEl0/zZ/H1ZMV5Wx
         qIYeDyFwzOimi+wmvr71ZJS5Xb0akVPww6sUygSHbL3a7lEE4qmD4bVGj4DSW9+M3uOj
         WQ+Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694193099; x=1694797899;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=ZRZZtDSDbQ7ziD6U8enIVKCW6fBD3XLhOHURnTZwm+I=;
        b=afKWI0pYZgYY4O4bcVZ9Q4JC1tmAdKwHrVwL2P1g0gaLQVSrTDC91J0DqX1GaOdaNB
         0XUeUiilYLHychLvq+uuN1zBRuKuhlKiG1smuk778I+2PqUsA8G3SHwXX5rO6uTM62O3
         85y27pHxdbrmg15u6Pnakmp9NDUmebVEqf4Db0tmgAKaJ1qTWYyK8LYn+F8ezHgsIBwT
         dJqo67u9JbiI83w3HcoaZuZgClrrG4J9iwzuwbWY2LTWy9wci2F/OCFjs9++1qFIFOPO
         Xc1cJVgbAey9gUqNFumJKuSikCHTVpdYEGf5scIOXRiFzdPe+XLCYzwR6hwbe64olaPs
         Kaaw==
X-Gm-Message-State: AOJu0Yx00O2+6GVovPGUAGN0cRlH89rzpbBGT7wm0r5xsm+qrYKTl+qT
	HQjX3aPMH+e4kNcomxJFSXLwoOJeqaCInyYSqAs=
X-Google-Smtp-Source: AGHT+IE81vOXgV+267Me6pgBsx7NyiALIoCgSFaF5/bhivgWOBvhVj01wJZJAyOS8B2FCfiqobx9r2YWGa9o39w+McA=
X-Received: by 2002:a05:6402:1219:b0:523:102f:3ce1 with SMTP id
 c25-20020a056402121900b00523102f3ce1mr2572978edw.10.1694193099037; Fri, 08
 Sep 2023 10:11:39 -0700 (PDT)
MIME-Version: 1.0
References: <20230906182125.48642-1-jandryuk@gmail.com> <24a741a4-b305-c817-e8c3-34b213ad0ee5@intel.com>
In-Reply-To: <24a741a4-b305-c817-e8c3-34b213ad0ee5@intel.com>
From: Jason Andryuk <jandryuk@gmail.com>
Date: Fri, 8 Sep 2023 13:11:27 -0400
Message-ID: <CAKf6xpvOG5kunrfQEoDBvrrY+UVUn3+9ovKmqXZo88nh05tt6Q@mail.gmail.com>
Subject: Re: [PATCH v2] acpi/processor: sanitize _PDC buffer bits when running
 as Xen dom0
To: "Wilczynski, Michal" <michal.wilczynski@intel.com>
Cc: Juergen Gross <jgross@suse.com>, Boris Ostrovsky <boris.ostrovsky@oracle.com>, 
	"Rafael J. Wysocki" <rafael@kernel.org>, Len Brown <lenb@kernel.org>, 
	Roger Pau Monne <roger.pau@citrix.com>, stable@vger.kernel.org, 
	Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>, 
	Dave Hansen <dave.hansen@linux.intel.com>, x86@kernel.org, 
	"H. Peter Anvin" <hpa@zytor.com>, xen-devel@lists.xenproject.org, 
	linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 7, 2023 at 9:20=E2=80=AFAM Wilczynski, Michal
<michal.wilczynski@intel.com> wrote:
>
>
> Hi,
>
> On 9/6/2023 8:21 PM, Jason Andryuk wrote:
> > From: Roger Pau Monne <roger.pau@citrix.com>
> >
> > The Processor _PDC buffer bits notify ACPI of the OS capabilities, and
> > so ACPI can adjust the return of other Processor methods taking the OS
> > capabilities into account.
>
> _PDC method is deprecated for this purpose, since 2018, and is dropped fr=
om
> spec since 6.5
>
> We made the switch in linux since 6.6:
> 95272641338a ("ACPI: processor: Use _OSC to convey OSPM processor support=
 information")

Thanks for the heads up, Michal.  The patch pre-dated 6.6 and I based
this one off of 6.5.

> >
> > When Linux is running as a Xen dom0, it's the hypervisor the entity
> > in charge of processor power management, and hence Xen needs to make
> > sure the capabilities reported in the _PDC buffer match the
> > capabilities of the driver in Xen.
>
> So I guess you would need to sanitize buffer passed to _OSC method instea=
d ?

I think I'll modify the capabilities in arch_acpi_set_proc_cap_bits()
and that will handle both _OSC and the _PDC fallback.

Regards,
Jason


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 17:15:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 17:15:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598115.932643 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qef4d-0007be-QZ; Fri, 08 Sep 2023 17:15:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598115.932643; Fri, 08 Sep 2023 17:15:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qef4d-0007bX-Nd; Fri, 08 Sep 2023 17:15:15 +0000
Received: by outflank-mailman (input) for mailman id 598115;
 Fri, 08 Sep 2023 17:15:14 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qef4c-0007bM-2d; Fri, 08 Sep 2023 17:15:14 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qef4c-0001gc-0w; Fri, 08 Sep 2023 17:15:14 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qef4b-0004wT-Hu; Fri, 08 Sep 2023 17:15:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qef4b-0006Wi-HR; Fri, 08 Sep 2023 17:15:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ZK/cvkj90hO+d9d+h7Kb1ua9RZLUYuy78LDklznAQZs=; b=zb2zAZ31WQE+TJVIrItVxwbl57
	8xwPIq2uVCsi7Y3ALeXerIod5oetBOKXDtNEgDqak9AwIvBeKEK2cV4BCwnRi4vsgD9xHAib0HOlc
	P/Qbvc2tK7ClB1O35/WcfEYKyrqCRiehcE5vgZ3fhFsUeTi29Fm7piN+AFzq4oT74o5k=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182739-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182739: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=03a3a62fbd0aa5227e978eef3c67d3978aec9e5f
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 17:15:13 +0000

flight 182739 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182739/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                03a3a62fbd0aa5227e978eef3c67d3978aec9e5f
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    1 days
Testing same since   182723  2023-09-07 18:19:05 Z    0 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Denis V. Lunev <den@openvz.org>
  Gautam Menghani <gautam@linux.ibm.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2162 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 17:22:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 17:22:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598123.932652 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qefBe-00017L-KB; Fri, 08 Sep 2023 17:22:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598123.932652; Fri, 08 Sep 2023 17:22:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qefBe-00017E-Ha; Fri, 08 Sep 2023 17:22:30 +0000
Received: by outflank-mailman (input) for mailman id 598123;
 Fri, 08 Sep 2023 17:22:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hmm/=EY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qefBd-000178-S6
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 17:22:29 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 48ba94df-4e6c-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 19:22:28 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 2C9ED6148B;
 Fri,  8 Sep 2023 17:22:27 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 137E5C433CA;
 Fri,  8 Sep 2023 17:22:24 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 48ba94df-4e6c-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694193746;
	bh=1HxiDNugrtoYFiAR/Dn2f5iRc1IMqiJhRm0moIwf6m0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ds9fcsw7MveILDtX17e1Tr8F0vSWuGFwKdIgoWSGjTX79YjkM8I/LreCLBQLCycwg
	 oKwdYYH7h/am3cTqNcxa55IPxvKXFp8a34PMumBwPPOIPgUS5PSS7Th7cYsWHe3hBM
	 cZbLCU+N+lEtbpye5KuNo4ZXHNtg9+6gGEh2LJMyLpzfNBEjjxSnlGEn9yVCLzngtU
	 Lp0E1YyrZC9CfdNoKTU9eMHksLqafb5fgpVveuO1AtxFa8tLXbuMw92ROOnVBDnm2H
	 Xzh+iW/ZVmArKg9rgi9TEKr5zOwd3PPRulvQE2gqkKPBdqbHgNhlqr4XwNSjiKRbVc
	 crFhAO3tIM+5A==
Date: Fri, 8 Sep 2023 10:22:23 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    xen-devel@lists.xenproject.org, michal.orzel@amd.com, 
    xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 1/3] docs/misra: add documentation skeleton for MISRA
 C:2012 Dir 4.1
In-Reply-To: <f83504f2-c12c-c359-a1d5-8c20ce3de334@suse.com>
Message-ID: <alpine.DEB.2.22.394.2309081012061.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com> <e74433904abe30e2e9e030f663a7a87813dabd24.1693558913.git.nicola.vetrini@bugseng.com> <alpine.DEB.2.22.394.2309071659440.6458@ubuntu-linux-20-04-desktop>
 <f83504f2-c12c-c359-a1d5-8c20ce3de334@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 8 Sep 2023, Jan Beulich wrote:
> On 08.09.2023 02:20, Stefano Stabellini wrote:
> > On Fri, 1 Sep 2023, Nicola Vetrini wrote:
> >> +Documentation for MISRA C:2012 Dir 4.1: read from uninitialized allocated object
> >> +________________________________________________________________________________
> >> +
> >> +To be written.
> >> +Example:
> >> +The code does not use dynamically allocated storage.
> > 
> > We do use dynamically allocated storage with xzalloc but xzalloc
> > initializes the object to zero
> 
> Just at the example of this: I'm not sure in how far the examples given
> were actually meant to (remotely) apply to our code base.

I thought they were generic examples as Nicola later confirmed. But
surprisingly many of them apply to our code base. I tried to highlight
the ones that are obviously wrong.


> As to your reply - there's also xmalloc() which doesn't, and the page
> allocator, and other more specialized ones.

Yes my reply was wrong in this case: I vastly underestimated the amount
of callers to xmalloc() that we have (and I grepped wrongly).

I think we should say instead:

The amount of dynamically allocated objects is limited at runtime in
static configurations. We make sure to initialize dynamically allocated
objects before reading them, and we utilize static analysis tools to
help check for that.


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 17:45:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 17:45:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598136.932674 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qefXf-0004xT-CM; Fri, 08 Sep 2023 17:45:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598136.932674; Fri, 08 Sep 2023 17:45:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qefXf-0004xM-9N; Fri, 08 Sep 2023 17:45:15 +0000
Received: by outflank-mailman (input) for mailman id 598136;
 Fri, 08 Sep 2023 17:45:13 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qefXd-0004xC-LP; Fri, 08 Sep 2023 17:45:13 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qefXd-0002Jx-KY; Fri, 08 Sep 2023 17:45:13 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qefXd-0005ib-Ea; Fri, 08 Sep 2023 17:45:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qefXd-0007i6-E7; Fri, 08 Sep 2023 17:45:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=5pkAzvPszo/d9Z4PMDfcN1gvIsMHwXasAqBmD+VB7ik=; b=ES/KUqrInNSKh9c6VKXfgCb28z
	vXXWDIcZdOmtIoUM8xfzIWV4Jq8T/4UT39pFgoUC16M4hvwg1QNHc9i8uRi/vx+M68pFPsyJCkGIP
	gCIXGnbvSd23bOhreLVShJpawKgGXrhdd2hWGBBW5ZWuwK8LLOBH0G90F4C/4ceyykBA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182760-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182760: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=493a375eef584be2beaaa3d418a8e7ff333c5468
X-Osstest-Versions-That:
    ovmf=b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 17:45:13 +0000

flight 182760 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182760/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 493a375eef584be2beaaa3d418a8e7ff333c5468
baseline version:
 ovmf                 b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430

Last test of basis   182753  2023-09-08 13:43:09 Z    0 days
Testing same since   182760  2023-09-08 15:40:41 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael Kubacki <michael.kubacki@microsoft.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   b74f1f7ab5..493a375eef  493a375eef584be2beaaa3d418a8e7ff333c5468 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 17:46:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 17:46:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598143.932685 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qefZD-0005Vf-Ne; Fri, 08 Sep 2023 17:46:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598143.932685; Fri, 08 Sep 2023 17:46:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qefZD-0005VY-Ku; Fri, 08 Sep 2023 17:46:51 +0000
Received: by outflank-mailman (input) for mailman id 598143;
 Fri, 08 Sep 2023 17:46:50 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6LDZ=EY=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qefZC-0005VP-9G
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 17:46:50 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ae2a8360-4e6f-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 19:46:47 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id EDA5B82857C6;
 Fri,  8 Sep 2023 12:46:45 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id gFoL5C0nl5xL; Fri,  8 Sep 2023 12:46:44 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id C01ED8285AC9;
 Fri,  8 Sep 2023 12:46:44 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id fr8VsiO2G7Sr; Fri,  8 Sep 2023 12:46:44 -0500 (CDT)
Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 5409E82857C6;
 Fri,  8 Sep 2023 12:46:44 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ae2a8360-4e6f-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com C01ED8285AC9
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694195204; bh=QqCbA/mQ1v3W7sfSlIFMiZVaYvM10vbuNyoZVovap4Y=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=Xa2yHXs4U475waSj0GttbIxNpsLk3DI+5DElVKqwL1MNAj5rlVtcF25nVRL0OUmoR
	 V8KSLmxhiLxzOzKw5CQOGVh+63TInZa+h/ZHPM+RvAFlJemWWY4mtUIw9QVT7quVi/
	 YH/KpbW5Q1oRSE1YU11QQd9FIkQpJXOva2cwm6ws=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <e30b9b9c-20ef-2382-b104-5369ca8499ef@raptorengineering.com>
Date: Fri, 8 Sep 2023 12:46:44 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v2 1/2] automation: Switch ppc64le tests to PowerNV
 machine type
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org,
 Timothy Pearson <tpearson@raptorengineering.com>,
 Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 Doug Goldstein <cardoe@cardoe.com>
References: <cover.1694044614.git.sanastasio@raptorengineering.com>
 <85b53762ba04a349ba099cf5629e7ac24f496d69.1694044614.git.sanastasio@raptorengineering.com>
 <alpine.DEB.2.22.394.2309061739490.6458@ubuntu-linux-20-04-desktop>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <alpine.DEB.2.22.394.2309061739490.6458@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/6/23 7:41 PM, Stefano Stabellini wrote:
> On Wed, 6 Sep 2023, Shawn Anastasio wrote:
>> Run ppc64le tests with the PowerNV machine type (bare metal) instead of
>> the paravirtualized pseries machine. This requires a more modern version
>> of QEMU than is present in debian bullseye's repository, so update the
>> dockerfile to build QEMU from source.
>>
>> Support for booting on pseries was broken by 74b725a64d80 ('xen/ppc:
>> Implement initial Radix MMU support') which resulted in CI failures. In
>> preparation for removing pseries support entirely, switch the CI
>> infrastructure to the PowerNV machine type.
>>
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>> ---
>>  .../build/debian/bullseye-ppc64le.dockerfile  | 37 ++++++++++++++++++-
>>  automation/gitlab-ci/test.yaml                |  2 +-
>>  2 files changed, 36 insertions(+), 3 deletions(-)
>>
>> diff --git a/automation/build/debian/bullseye-ppc64le.dockerfile b/automation/build/debian/bullseye-ppc64le.dockerfile
>> index 8fad26e903..15827bbcf4 100644
>> --- a/automation/build/debian/bullseye-ppc64le.dockerfile
>> +++ b/automation/build/debian/bullseye-ppc64le.dockerfile
>> @@ -1,4 +1,36 @@
>> +FROM debian:bullseye-slim AS builder
>> +
>> +ENV DEBIAN_FRONTEND=noninteractive
>> +ENV QEMU_TAG=stable-8.1
>> +ENV USER root
>> +
>> +# dependencies for qemu build
>> +RUN apt-get update && \
>> +    apt-get --quiet --yes install \
>> +        git \
>> +        build-essential \
>> +        python3-minimal \
>> +        python3-elementpath \
>> +        python3-pip \
>> +        ninja-build \
>> +        libglib2.0-dev \
>> +        libpixman-1-dev
>> +
>> +RUN mkdir /build
>> +WORKDIR /build
>> +
>> +# QEMU build from git
>> +RUN git clone --depth 1 --branch "${QEMU_TAG}" https://github.com/qemu/qemu && \
>> +    mkdir qemu/build && \
>> +    cd qemu/build && \
>> +    ../configure --target-list=ppc64-softmmu && \
>> +    ninja && \
>> +    ninja install
> 
> It is totally find to build your QEMU but please use a test-artifact
> instead, see automation/tests-artifacts/qemu-system-aarch64/ and
> qemu-system-aarch64-6.0.0-arm64-export as an example.

Thanks for letting me know -- I've submitted a v3 that uses this
technique to build the QEMU binary based on the aarch64 example you
provided.

Shawn


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 18:29:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 18:29:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598153.932700 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qegEc-0003wp-R7; Fri, 08 Sep 2023 18:29:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598153.932700; Fri, 08 Sep 2023 18:29:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qegEc-0003wi-OB; Fri, 08 Sep 2023 18:29:38 +0000
Received: by outflank-mailman (input) for mailman id 598153;
 Fri, 08 Sep 2023 18:29:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hmm/=EY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qegEb-0003wc-Gc
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 18:29:37 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org
 [2604:1380:4601:e00::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a85f1479-4e75-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 20:29:34 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id F18CCB8219E;
 Fri,  8 Sep 2023 18:29:32 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6BDD0C433BA;
 Fri,  8 Sep 2023 18:29:30 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a85f1479-4e75-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694197771;
	bh=pFArEIYtp7JXVOzbdKuO9HDXw0t155hOhNYh8yagBFQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=DcH7C5Sx67HMe6vOCiG066BZYSdi2neXtR3WYlqSDbBo4KtpqZXcwnZTMjwJktn65
	 +K/R5r04SZe0cw7TgQHmwI+1IMrfKg9iIX6k/0YyJHEaQiY6nxWiujVIU3Yq4HRAXT
	 S52ypLqFwC8hzndWuzjlxPqt4uTN8p+/3jQBO+fTP2qhGC8jHWpvFFB4uSxr6hFq4G
	 UeZmQ6DCRBuQ89TNl4Pa7QHnyN8GBBbiP7KYQDYJOFBM2ALYLb8E8uzCH83sRzhxDI
	 9Ulqy3zGbGuPnwX2po5MDNbiEcjtwvZs/EgLusB/O6Pmwvj0X4rFWCqKUI+u7JbZ8n
	 +/Oct9HSQYNiA==
Date: Fri, 8 Sep 2023 11:29:28 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Shawn Anastasio <sanastasio@raptorengineering.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, 
    Timothy Pearson <tpearson@raptorengineering.com>, 
    Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
    Doug Goldstein <cardoe@cardoe.com>
Subject: Re: [PATCH v2 1/2] automation: Switch ppc64le tests to PowerNV
 machine type
In-Reply-To: <e30b9b9c-20ef-2382-b104-5369ca8499ef@raptorengineering.com>
Message-ID: <alpine.DEB.2.22.394.2309081128560.6458@ubuntu-linux-20-04-desktop>
References: <cover.1694044614.git.sanastasio@raptorengineering.com> <85b53762ba04a349ba099cf5629e7ac24f496d69.1694044614.git.sanastasio@raptorengineering.com> <alpine.DEB.2.22.394.2309061739490.6458@ubuntu-linux-20-04-desktop>
 <e30b9b9c-20ef-2382-b104-5369ca8499ef@raptorengineering.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 8 Sep 2023, Shawn Anastasio wrote:
> On 9/6/23 7:41 PM, Stefano Stabellini wrote:
> > On Wed, 6 Sep 2023, Shawn Anastasio wrote:
> >> Run ppc64le tests with the PowerNV machine type (bare metal) instead of
> >> the paravirtualized pseries machine. This requires a more modern version
> >> of QEMU than is present in debian bullseye's repository, so update the
> >> dockerfile to build QEMU from source.
> >>
> >> Support for booting on pseries was broken by 74b725a64d80 ('xen/ppc:
> >> Implement initial Radix MMU support') which resulted in CI failures. In
> >> preparation for removing pseries support entirely, switch the CI
> >> infrastructure to the PowerNV machine type.
> >>
> >> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> >> ---
> >>  .../build/debian/bullseye-ppc64le.dockerfile  | 37 ++++++++++++++++++-
> >>  automation/gitlab-ci/test.yaml                |  2 +-
> >>  2 files changed, 36 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/automation/build/debian/bullseye-ppc64le.dockerfile b/automation/build/debian/bullseye-ppc64le.dockerfile
> >> index 8fad26e903..15827bbcf4 100644
> >> --- a/automation/build/debian/bullseye-ppc64le.dockerfile
> >> +++ b/automation/build/debian/bullseye-ppc64le.dockerfile
> >> @@ -1,4 +1,36 @@
> >> +FROM debian:bullseye-slim AS builder
> >> +
> >> +ENV DEBIAN_FRONTEND=noninteractive
> >> +ENV QEMU_TAG=stable-8.1
> >> +ENV USER root
> >> +
> >> +# dependencies for qemu build
> >> +RUN apt-get update && \
> >> +    apt-get --quiet --yes install \
> >> +        git \
> >> +        build-essential \
> >> +        python3-minimal \
> >> +        python3-elementpath \
> >> +        python3-pip \
> >> +        ninja-build \
> >> +        libglib2.0-dev \
> >> +        libpixman-1-dev
> >> +
> >> +RUN mkdir /build
> >> +WORKDIR /build
> >> +
> >> +# QEMU build from git
> >> +RUN git clone --depth 1 --branch "${QEMU_TAG}" https://github.com/qemu/qemu && \
> >> +    mkdir qemu/build && \
> >> +    cd qemu/build && \
> >> +    ../configure --target-list=ppc64-softmmu && \
> >> +    ninja && \
> >> +    ninja install
> > 
> > It is totally find to build your QEMU but please use a test-artifact
> > instead, see automation/tests-artifacts/qemu-system-aarch64/ and
> > qemu-system-aarch64-6.0.0-arm64-export as an example.
> 
> Thanks for letting me know -- I've submitted a v3 that uses this
> technique to build the QEMU binary based on the aarch64 example you
> provided.

I have already committed v3 :-)


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 19:38:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 19:38:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598168.932735 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qehIe-0005er-1s; Fri, 08 Sep 2023 19:37:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598168.932735; Fri, 08 Sep 2023 19:37:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qehId-0005ek-VR; Fri, 08 Sep 2023 19:37:51 +0000
Received: by outflank-mailman (input) for mailman id 598168;
 Fri, 08 Sep 2023 19:37:51 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hmm/=EY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qehId-0005ee-Be
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 19:37:51 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3102b96f-4e7f-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 21:37:49 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id DC5046155E;
 Fri,  8 Sep 2023 19:37:47 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id BDD3FC433CC;
 Fri,  8 Sep 2023 19:37:45 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3102b96f-4e7f-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694201867;
	bh=hwU94QLWm3VT/oIzW4/JAXvt0rAsPWiXDSXnC297hP8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=kd85WwKj74AN1ltrACmK6ja+j1iWqWxmn79ZItOyhZs8HwfCjDALhC/HGeW9XXknR
	 TTevSynyIRid+v80Sx3yVwJKS3O23vBGS71Urv2HzqFRHjiIqwk1LERFZkT6KHicmL
	 LnFHYCumXs1Mrz7MFAM85NKQZeDuDkxnWLuF2fk8Tllv0ES9JcfLdzJQili9BTPrcX
	 vZyYU3tMVk9zsLf+64YZvk2Cpsjc6PyExr7QoqohsNRdApjDgshq5kGdQX69L0aVPi
	 Xt/tOaE+ja6UHlTGNhQljaHdTQvFxrDYN6hFQr2shO8bNlGUCPm/rPXeIjekIeJ8uE
	 Earh/bcaMF08g==
Date: Fri, 8 Sep 2023 12:37:44 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: Jan Beulich <jbeulich@suse.com>, michal.orzel@amd.com, 
    xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org, 
    Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro
 BITS_TO_LONGS
In-Reply-To: <3d44b3b0b185418482ab60a693d930a9@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309081236360.6458@ubuntu-linux-20-04-desktop>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com> <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com> <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com> <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com> <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com> <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop> <6818e3ac47edca6ba107b8eeff95955a@bugseng.com> <a52733a0-ec5a-3b49-ccec-7a7e8e775c4c@suse.com>
 <7d07fc38-14e8-6cc7-2b0c-816bc68c7317@suse.com> <3d44b3b0b185418482ab60a693d930a9@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 8 Sep 2023, Nicola Vetrini wrote:
> On 08/09/2023 13:59, Jan Beulich wrote:
> > On 08.09.2023 13:57, Jan Beulich wrote:
> > > On 08.09.2023 10:48, Nicola Vetrini wrote:
> > > > There is a build error due to -Werror because of a pointer comparison at
> > > > line 469 of common/numa.c:
> > > > i = min(PADDR_BITS, BITS_PER_LONG - 1);
> > > > where
> > > > #define PADDR_BITS              52
> > > > 
> > > > I guess PADDR_BITS can become unsigned or gain a cast
> > > 
> > > While generally converting constants to unsigned comes with a certain
> > > risk, I think for this (and its siblings) this ought to be okay. As to
> > > the alternative of a cast - before considering that, please consider
> > > e.g. adding 0u (as we do elsewhere in the code base to deal with such
> > > cases).
> > 
> > And just after sending I realized that this would still be disliked by
> > Misra's type system. (Much like then aiui the 1 above will need to
> > become 1u. Which is all pretty horrible.)
> > 
> > Jan
> 
> I have a proposal: in our tests we enabled an ECLAIR configuration that allows
> to bypass the
> constraint imposed by Rule 10.4 that warrants the 1U iff the value is constant
> and both types
> can represent it correctly (in this case BITS_PER_LONG -1). This would allow
> using the proposed
> solution and documenting why it's ok not to respect R10.4. What do you think?

I think that would be OK. I think we would want to document this in
rules.rst. Please send a patch.


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 20:16:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 20:16:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598176.932751 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qehti-0002fR-VM; Fri, 08 Sep 2023 20:16:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598176.932751; Fri, 08 Sep 2023 20:16:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qehti-0002fK-Rx; Fri, 08 Sep 2023 20:16:10 +0000
Received: by outflank-mailman (input) for mailman id 598176;
 Fri, 08 Sep 2023 20:16:09 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qehth-0002fA-Mg; Fri, 08 Sep 2023 20:16:09 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qehth-0005hh-KS; Fri, 08 Sep 2023 20:16:09 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qehth-00015s-Ap; Fri, 08 Sep 2023 20:16:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qehth-0000ug-AF; Fri, 08 Sep 2023 20:16:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=fhNlOE5gn5AT7As7OQlGArXADkWPTZqvKeLrbED32dc=; b=z1T/uGFrSIzkRty6Oy18rRuP0+
	DXjNcqn4JomWFNhRijG1jyBmvxml7eFSm3n1+F87WYW/IfRX4utYJflNEg0I+94EstIMWtI71H3DG
	c34felSy8DQ5kW5LLXh+mRufayzPKjJx1bAfSISzvB5gzKvnCeiz5zGvL73o20EyUybo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182772-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182772: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=28a74d7ab22a33e3915eb747879d58797718f6f2
X-Osstest-Versions-That:
    ovmf=493a375eef584be2beaaa3d418a8e7ff333c5468
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 20:16:09 +0000

flight 182772 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182772/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 28a74d7ab22a33e3915eb747879d58797718f6f2
baseline version:
 ovmf                 493a375eef584be2beaaa3d418a8e7ff333c5468

Last test of basis   182760  2023-09-08 15:40:41 Z    0 days
Testing same since   182772  2023-09-08 18:19:00 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Corvin Köhne <corvink@FreeBSD.org>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   493a375eef..28a74d7ab2  28a74d7ab22a33e3915eb747879d58797718f6f2 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 20:27:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 20:27:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598185.932761 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qei4b-0004Pe-0z; Fri, 08 Sep 2023 20:27:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598185.932761; Fri, 08 Sep 2023 20:27:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qei4a-0004PX-UZ; Fri, 08 Sep 2023 20:27:24 +0000
Received: by outflank-mailman (input) for mailman id 598185;
 Fri, 08 Sep 2023 20:27:23 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hmm/=EY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qei4Z-0004PR-OX
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 20:27:23 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1d8266dc-4e86-11ee-8783-cb3800f73035;
 Fri, 08 Sep 2023 22:27:22 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id B61DDB821F8;
 Fri,  8 Sep 2023 20:27:21 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id BF043C433C8;
 Fri,  8 Sep 2023 20:27:18 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1d8266dc-4e86-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694204840;
	bh=9VwVCFOcBylmtUIRsKhm0+9fbtOzAiHNuqC0ln/9YBU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=erDTZ0tRRoH0m34JXdirC7oxEaWB6w5p892ZAUY6evUEfRgN0fhvnhYl+mnW2HyLN
	 6fNVE77MIwbBsDD8xkodcMa0jm8aL6vItF1uonBdTGfFphQJxkHpkvOGwWUC7jJ2lR
	 eyTw98kR5BDPuptPAtBx1NDSPNmkPUckkjS1BOy1mJ1EPNw6v+xGb8GxKQLugcjgQS
	 vRzr9bs8A25dYOKL2AozOZ1IwGOFis2M4krKoCD+mvPl0PX5J+m5hTYnx+U5bxZq9l
	 b/HbKL+H40uNs7tXY36dVWi8SpY23KVRNyxPk8j7V25B4P9dlyfqd2oUTCT3HaN7Am
	 Ab6AeZylWojHA==
Date: Fri, 8 Sep 2023 13:27:16 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    Jan Beulich <jbeulich@suse.com>, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, julien@xen.org, george.dunlap@citrix.com, 
    bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, 
    Stefano Stabellini <stefano.stabellini@amd.com>, 
    xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2] docs/misra: add 14.3
In-Reply-To: <fd3a487fc4a24a16262bd510c6cd835d@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309081321310.6458@ubuntu-linux-20-04-desktop>
References: <20230907012203.1238090-1-sstabellini@kernel.org> <36b888b2-e7e3-bf70-f599-d22ca34e2dfe@suse.com> <alpine.DEB.2.22.394.2309071441400.6458@ubuntu-linux-20-04-desktop> <fd3a487fc4a24a16262bd510c6cd835d@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 8 Sep 2023, Nicola Vetrini wrote:
> On 07/09/2023 23:45, Stefano Stabellini wrote:
> > On Thu, 7 Sep 2023, Jan Beulich wrote:
> > > On 07.09.2023 03:22, Stefano Stabellini wrote:
> > > > @@ -385,6 +386,17 @@ maintainers if you want to suggest a change.
> > > >       - A loop counter shall not have essentially floating type
> > > >       -
> > > >
> > > > +   * - `Rule 14.3
> > > <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_03.c>`_
> > > > +     - Required
> > > > +     - Controlling expressions shall not be invariant
> > > > +     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
> > > > +       checks, and other constructs that are detected as errors by
> > > MISRA
> > > > +       C scanners, managing the configuration of a MISRA C scanner for
> > > > +       this rule would be unmanageable. Thus, this rule is adopted with
> > > > +       a project-wide deviation on if ?: and switch statements.
> > > 
> > > Do we want to go as far as permitting this uniformly for all switch()? In
> > > my earlier reply I had included sizeof() for a reason.
> > 
> > I agree with you that it would be better to restrict it to only some
> > switch uses, rather than all of them.
> > 
> > But if we are going to restrict the deviation to switch(sizeof()), which
> > I think is a good idea and I am in favor, wouldn't it be better to
> > handle these cases as individual deviations? E.g. docs/misra/safe.json?
> > I am assuming there are only few cases like that and adding it here
> > makes the rule more complicated.
> > 
> > I am happy either way but I wanted to provide that as an option.
> > 
> > 
> 
> It's also worth considering the magnitude of required SAF comments when making
> this choice.
> In this case, from a cursory glance at the present violations, it seems that
> there are maybe a
> handful of switches inside macros, so they shouldn't be problematic to deal
> with.

That's what I thought as well and why I suggested to only deal with them
in safe.json. However, it doesn't cost us anything to be extra clear, so
I'll send an updated patch with extra clarity.


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 20:27:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 20:27:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598186.932772 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qei4j-0004hA-B1; Fri, 08 Sep 2023 20:27:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598186.932772; Fri, 08 Sep 2023 20:27:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qei4j-0004h3-5g; Fri, 08 Sep 2023 20:27:33 +0000
Received: by outflank-mailman (input) for mailman id 598186;
 Fri, 08 Sep 2023 20:27:32 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hmm/=EY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qei4i-0004gY-2R
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 20:27:32 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 216267b4-4e86-11ee-9b0d-b553b5be7939;
 Fri, 08 Sep 2023 22:27:29 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 1607D61558;
 Fri,  8 Sep 2023 20:27:28 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 12D8CC433C7;
 Fri,  8 Sep 2023 20:27:25 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 216267b4-4e86-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694204847;
	bh=DTMmO7AYIwNZ6W4Gaw2rbvq67TMngWT+5KjJwP+VMiQ=;
	h=From:To:Cc:Subject:Date:From;
	b=eGrqoq9lpy6SDILAs5ZehXVbtmzA12zFn1IcveJ6MWfYeMwYQ/DpdSd9L/QYBmCQe
	 el/NUlvCvHJr2hH4cARPTwrBmd5wd75EQf2RQUTLMuQfHvfq3eblg59rn5daGCovMm
	 knJYEGjv1+cQwzel7b6JJeLpvOZqF06ZOt+0e+wyYSMV7BLd1xosQQltI8gXuI2Ci/
	 DyEbbD7vFoqCbqKIOtsduEILHFS/bVBx5npa0mQd7dyshg/vUpUewmCurp8sO/Nq5B
	 HdvkKrveijYdwZysXQFySpB7+i+W7kYKjUBX7A00oKir9SECivrMJoUMpEi5ljlbvl
	 nna29tsmiKTfg==
From: Stefano Stabellini <sstabellini@kernel.org>
To: xen-devel@lists.xenproject.org
Cc: jbeulich@suse.com,
	andrew.cooper3@citrix.com,
	roger.pau@citrix.com,
	julien@xen.org,
	sstabellini@kernel.org,
	george.dunlap@citrix.com,
	bertrand.marquis@arm.com,
	roberto.bagnara@bugseng.com,
	nicola.vetrini@bugseng.com,
	Stefano Stabellini <stefano.stabellini@amd.com>
Subject: [PATCH v3] docs/misra: add 14.3
Date: Fri,  8 Sep 2023 13:27:23 -0700
Message-Id: <20230908202723.1641469-1-sstabellini@kernel.org>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Stefano Stabellini <stefano.stabellini@amd.com>

Add 14.3, with project-wide deviations.

Also take the opportunity to clarify that parameters of function pointer
types are expected to have names (Rule 8.2).

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
---
Changes in v3:
- add ,
- add switch(sizeof(...)) and switch(offsetof(...))
---
 docs/misra/rules.rst | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index 34916e266a..ac76e20a9c 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -234,7 +234,8 @@ maintainers if you want to suggest a change.
    * - `Rule 8.2 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_08_02.c>`_
      - Required
      - Function types shall be in prototype form with named parameters
-     -
+     - Clarification: both function and function pointers types shall
+       have named parameters.
 
    * - `Rule 8.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_08_03.c>`_
      - Required
@@ -385,6 +386,18 @@ maintainers if you want to suggest a change.
      - A loop counter shall not have essentially floating type
      -
 
+   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_03.c>`_
+     - Required
+     - Controlling expressions shall not be invariant
+     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
+       checks, and other constructs that are detected as errors by MISRA
+       C scanners, managing the configuration of a MISRA C scanner for
+       this rule would be unmanageable. Thus, this rule is adopted with
+       a project-wide deviation on if, ?:, switch(sizeof(...)), and
+       switch(offsetof(...)) statements.
+
+       while(0) and while(1) and alike are allowed.
+
    * - `Rule 16.7 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_16_07.c>`_
      - Required
      - A switch-expression shall not have essentially Boolean type
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 22:05:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 22:05:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598208.932810 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qejbQ-0000gl-Bv; Fri, 08 Sep 2023 22:05:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598208.932810; Fri, 08 Sep 2023 22:05:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qejbQ-0000ge-95; Fri, 08 Sep 2023 22:05:24 +0000
Received: by outflank-mailman (input) for mailman id 598208;
 Fri, 08 Sep 2023 22:05:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6LDZ=EY=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qejbP-0000gY-9I
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 22:05:23 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cb7e560a-4e93-11ee-9b0d-b553b5be7939;
 Sat, 09 Sep 2023 00:05:19 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 12FAC8285509;
 Fri,  8 Sep 2023 17:05:17 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id X_y4p5TNH9Q0; Fri,  8 Sep 2023 17:05:15 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id E82B082856EA;
 Fri,  8 Sep 2023 17:05:14 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id Hq681h5S0zQe; Fri,  8 Sep 2023 17:05:14 -0500 (CDT)
Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 6D50F828566C;
 Fri,  8 Sep 2023 17:05:14 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cb7e560a-4e93-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com E82B082856EA
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694210714; bh=jDv5IUYNivmcn06k2nJJjqK9AF24F3z/4po08eKK6wk=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=Grhc7EGcMdxpkNcsdc2WWCsGdtrIrh/PNSt1ccH6hWl4KlotITLEfRzLMF5hIclN7
	 PZ8Kq+4UTa1uAAq19Hmrf+gNDuEVtKeY1cox9uPopS7qMag6GSmNzJLEifQMeFu3/z
	 Xhvc1R0TvUD2vH0ScAGsCfW0FIixGqhBfDrIAVsw=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <7f6914e3-71e8-0bff-dc8f-c0f897ddcd2f@raptorengineering.com>
Date: Fri, 8 Sep 2023 17:05:13 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v3 3/5] xen/ppc: Define minimal stub headers required for
 full build
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693590982.git.sanastasio@raptorengineering.com>
 <dd3d9c5d9ec94f9e1747ccc0fbf82629a58bddcb.1693590982.git.sanastasio@raptorengineering.com>
 <16496c4c-4c92-7ed9-a612-72e75f86798f@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <16496c4c-4c92-7ed9-a612-72e75f86798f@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/5/23 10:52 AM, Jan Beulich wrote:
> On 01.09.2023 20:25, Shawn Anastasio wrote:
>> --- /dev/null
>> +++ b/xen/arch/ppc/include/asm/device.h
>> @@ -0,0 +1,53 @@
>> +/* SPDX-License-Identifier: GPL-2.0-only */
>> +#ifndef __ASM_PPC_DEVICE_H__
>> +#define __ASM_PPC_DEVICE_H__
>> +
>> +enum device_type
>> +{
>> +    DEV_DT,
>> +    DEV_PCI,
>> +};
>> +
>> +struct device {
>> +    enum device_type type;
>> +#ifdef CONFIG_HAS_DEVICE_TREE
>> +    struct dt_device_node *of_node; /* Used by drivers imported from Linux */
>> +#endif
>> +};
>> +
>> +enum device_class
>> +{
>> +    DEVICE_SERIAL,
>> +    DEVICE_IOMMU,
>> +    DEVICE_PCI_HOSTBRIDGE,
>> +    /* Use for error */
>> +    DEVICE_UNKNOWN,
>> +};
>> +
>> +struct device_desc {
>> +    /* Device name */
>> +    const char *name;
>> +    /* Device class */
>> +    enum device_class class;
>> +    /* List of devices supported by this driver */
>> +    const struct dt_device_match *dt_match;
>> +    /*
>> +     * Device initialization.
>> +     *
>> +     * -EAGAIN is used to indicate that device probing is deferred.
>> +     */
>> +    int (*init)(struct dt_device_node *dev, const void *data);
>> +};
>> +
>> +typedef struct device device_t;
>> +
>> +#define DT_DEVICE_START(_name, _namestr, _class)                    \
> 
> Nit: Underscore-prefixed macro parameter names again.
>

Will fix.

>> --- a/xen/arch/ppc/include/asm/mm.h
>> +++ b/xen/arch/ppc/include/asm/mm.h
>> @@ -1,10 +1,25 @@
>> +/* SPDX-License-Identifier: GPL-2.0-only */
>>  #ifndef _ASM_PPC_MM_H
>>  #define _ASM_PPC_MM_H
>>
>> +#include <public/xen.h>
>> +#include <xen/pdx.h>
>> +#include <xen/types.h>
>> +#include <asm/config.h>
>>  #include <asm/page-bits.h>
>> +#include <asm/page.h>
>> +
>> +void setup_initial_pagetables(void);
>>
>>  #define pfn_to_paddr(pfn) ((paddr_t)(pfn) << PAGE_SHIFT)
>>  #define paddr_to_pfn(pa)  ((unsigned long)((pa) >> PAGE_SHIFT))
>> +#define paddr_to_pdx(pa)    mfn_to_pdx(maddr_to_mfn(pa))
>> +#define gfn_to_gaddr(gfn)   pfn_to_paddr(gfn_x(gfn))
>> +#define gaddr_to_gfn(ga)    _gfn(paddr_to_pfn(ga))
>> +#define mfn_to_maddr(mfn)   pfn_to_paddr(mfn_x(mfn))
>> +#define maddr_to_mfn(ma)    _mfn(paddr_to_pfn(ma))
>> +#define vmap_to_mfn(va)     maddr_to_mfn(virt_to_maddr((vaddr_t)va))
>> +#define vmap_to_page(va)    mfn_to_page(vmap_to_mfn(va))
>>
>>  #define virt_to_maddr(va) ((paddr_t)((vaddr_t)(va) & PADDR_MASK))
>>  #define maddr_to_virt(pa) ((void *)((paddr_t)(pa) | XEN_VIRT_START))
> 
> Is it intentional that the additions don't align, padding-wise, with the
> surrounding #define-s?
>

No -- good catch. I'll adjust the padding to line up properly.

>> @@ -13,6 +28,237 @@
>>  #define __pa(x)             (virt_to_maddr(x))
>>  #define __va(x)             (maddr_to_virt(x))
>>
>> -void setup_initial_pagetables(void);
>> +/* Convert between Xen-heap virtual addresses and machine frame numbers. */
>> +#define __virt_to_mfn(va) (virt_to_maddr(va) >> PAGE_SHIFT)
>> +#define __mfn_to_virt(mfn) (maddr_to_virt((paddr_t)(mfn) << PAGE_SHIFT))
>> +
>> +/* Convert between Xen-heap virtual addresses and page-info structures. */
>> +static inline struct page_info *virt_to_page(const void *v)
>> +{
>> +    BUG_ON("unimplemented");
>> +    return NULL;
>> +}
>> +
>> +/*
>> + * We define non-underscored wrappers for above conversion functions.
>> + * These are overriden in various source files while underscored version
>> + * remain intact.
>> + */
>> +#define virt_to_mfn(va)     __virt_to_mfn(va)
>> +#define mfn_to_virt(mfn)    __mfn_to_virt(mfn)
> 
> Is the comment really applicable? The only non-arch-specific file still
> doing so is xenoprof.c, and I'm not sure you mean to support xenoprof
> on PPC. PPC-specific files would better be introduced in a type-safe way
> right from the beginning.
>

To be clear, you're suggesting that I define virt_to_mfn and mfn_to_virt
to operate on the type-safe mfn_t wrapper? When doing this,
xen/include/xen/domain_page.h:63 fails to build, since it seems to
assume that these macros do not use the type-safe mfn_t:

  static inline void *map_domain_page_global(mfn_t mfn)
  {
      return mfn_to_virt(mfn_x(mfn));
  }

If the comment is no longer accurate I can drop it, but there definitely
seems to be an assumption in the codebase that these macros operate on
raw unsigned longs rather than mfn_t.

>> +#define PG_shift(idx)   (BITS_PER_LONG - (idx))
>> +#define PG_mask(x, idx) (x ## UL << PG_shift(idx))
>> +
>> +#define PGT_none          PG_mask(0, 1)  /* no special uses of this page   */
>> +#define PGT_writable_page PG_mask(1, 1)  /* has writable mappings?         */
>> +#define PGT_type_mask     PG_mask(1, 1)  /* Bits 31 or 63.                 */
>> +
>> + /* 2-bit count of uses of this frame as its current type. */
>> +#define PGT_count_mask    PG_mask(3, 3)
>> +
>> +/* Cleared when the owning guest 'frees' this page. */
>> +#define _PGC_allocated    PG_shift(1)
>> +#define PGC_allocated     PG_mask(1, 1)
>> +/* Page is Xen heap? */
>> +#define _PGC_xen_heap     PG_shift(2)
>> +#define PGC_xen_heap      PG_mask(1, 2)
>> +/* Page is broken? */
>> +#define _PGC_broken       PG_shift(7)
>> +#define PGC_broken        PG_mask(1, 7)
>> + /* Mutually-exclusive page states: { inuse, offlining, offlined, free }. */
>> +#define PGC_state         PG_mask(3, 9)
>> +#define PGC_state_inuse   PG_mask(0, 9)
>> +#define PGC_state_offlining PG_mask(1, 9)
>> +#define PGC_state_offlined PG_mask(2, 9)
>> +#define PGC_state_free    PG_mask(3, 9)
>> +#define page_state_is(pg, st) (((pg)->count_info&PGC_state) == PGC_state_##st)
>> +/* Page is not reference counted */
>> +#define _PGC_extra        PG_shift(10)
>> +#define PGC_extra         PG_mask(1, 10)
>> +
>> +/* Count of references to this frame. */
>> +#define PGC_count_width   PG_shift(10)
>> +#define PGC_count_mask    ((1UL<<PGC_count_width)-1)
>> +
>> +/*
>> + * Page needs to be scrubbed. Since this bit can only be set on a page that is
>> + * free (i.e. in PGC_state_free) we can reuse PGC_allocated bit.
>> + */
>> +#define _PGC_need_scrub   _PGC_allocated
>> +#define PGC_need_scrub    PGC_allocated
>> +
>> +#define is_xen_heap_page(page) ((page)->count_info & PGC_xen_heap)
>> +#define is_xen_heap_mfn(mfn) \
>> +    (mfn_valid(mfn) && is_xen_heap_page(mfn_to_page(mfn)))
>> +
>> +#define is_xen_fixed_mfn(mfn)                                   \
>> +    ((mfn_to_maddr(mfn) >= virt_to_maddr(&_start)) &&           \
>> +     (mfn_to_maddr(mfn) <= virt_to_maddr((vaddr_t)_end - 1)))
> 
> Please use (or, preferred, do not use) & and cast consistently on _start
> and _end.
>

Will fix.

>> +#define page_get_owner(_p)    (_p)->v.inuse.domain
>> +#define page_set_owner(_p,_d) ((_p)->v.inuse.domain = (_d))
>> +
>> +/* TODO: implement */
>> +#define mfn_valid(mfn) ({ (void) (mfn); 0; })
>> +
>> +#define domain_set_alloc_bitsize(d) ((void)(d))
>> +#define domain_clamp_alloc_bitsize(d, b) (b)
>> +
>> +#define PFN_ORDER(pfn_) ((pfn_)->v.free.order)
>> +
>> +struct page_info
>> +{
>> +    /* Each frame can be threaded onto a doubly-linked list. */
>> +    struct page_list_entry list;
>> +
>> +    /* Reference count and various PGC_xxx flags and fields. */
>> +    unsigned long count_info;
>> +
>> +    /* Context-dependent fields follow... */
>> +    union {
>> +        /* Page is in use: ((count_info & PGC_count_mask) != 0). */
>> +        struct {
>> +            /* Type reference count and various PGT_xxx flags and fields. */
>> +            unsigned long type_info;
>> +        } inuse;
>> +        /* Page is on a free list: ((count_info & PGC_count_mask) == 0). */
>> +        union {
>> +            struct {
>> +                /*
>> +                 * Index of the first *possibly* unscrubbed page in the buddy.
>> +                 * One more bit than maximum possible order to accommodate
>> +                 * INVALID_DIRTY_IDX.
>> +                 */
>> +#define INVALID_DIRTY_IDX ((1UL << (MAX_ORDER + 1)) - 1)
>> +                unsigned long first_dirty:MAX_ORDER + 1;
>> +
>> +                /* Do TLBs need flushing for safety before next page use? */
>> +                bool need_tlbflush:1;
>> +
>> +#define BUDDY_NOT_SCRUBBING    0
>> +#define BUDDY_SCRUBBING        1
>> +#define BUDDY_SCRUB_ABORT      2
>> +                unsigned long scrub_state:2;
>> +            };
>> +
>> +            unsigned long val;
>> +        } free;
>> +
>> +    } u;
>> +
>> +    union {
>> +        /* Page is in use, but not as a shadow. */
>> +        struct {
>> +            /* Owner of this page (zero if page is anonymous). */
>> +            struct domain *domain;
> 
> Since this is a pointer, NULL (instead of zero) would seem more appropriate
> in the comment.
>

Will update comment.

>> +        } inuse;
>> +
>> +        /* Page is on a free list. */
>> +        struct {
>> +            /* Order-size of the free chunk this page is the head of. */
>> +            unsigned int order;
>> +        } free;
>> +
>> +    } v;
>> +
>> +    union {
>> +        /*
>> +         * Timestamp from 'TLB clock', used to avoid extra safety flushes.
>> +         * Only valid for: a) free pages, and b) pages with zero type count
>> +         */
>> +        u32 tlbflush_timestamp;
>> +    };
>> +    u64 pad;
> 
> uint<N>_t please (or unsigned int/long).
>

Will use uint<N>_t.

>> --- /dev/null
>> +++ b/xen/arch/ppc/include/asm/monitor.h
>> @@ -0,0 +1,43 @@
>> +/* SPDX-License-Identifier: GPL-2.0-only */
>> +/* Derived from xen/arch/arm/include/asm/monitor.h */
>> +#ifndef __ASM_PPC_MONITOR_H__
>> +#define __ASM_PPC_MONITOR_H__
>> +
>> +#include <public/domctl.h>
>> +#include <xen/errno.h>
>> +
>> +static inline
>> +void arch_monitor_allow_userspace(struct domain *d, bool allow_userspace)
>> +{
>> +}
>> +
>> +static inline
>> +int arch_monitor_domctl_op(struct domain *d, struct xen_domctl_monitor_op *mop)
>> +{
>> +    /* No arch-specific monitor ops on PPC. */
>> +    return -EOPNOTSUPP;
>> +}
>> +
>> +int arch_monitor_domctl_event(struct domain *d,
>> +                              struct xen_domctl_monitor_op *mop);
>> +
>> +static inline
>> +int arch_monitor_init_domain(struct domain *d)
>> +{
>> +    /* No arch-specific domain initialization on PPC. */
>> +    return 0;
>> +}
>> +
>> +static inline
>> +void arch_monitor_cleanup_domain(struct domain *d)
>> +{
>> +    /* No arch-specific domain cleanup on PPC. */
>> +}
>> +
>> +static inline uint32_t arch_monitor_get_capabilities(struct domain *d)
>> +{
>> +    BUG_ON("unimplemented");
>> +    return 0;
>> +}
>> +
>> +#endif /* __ASM_PPC_MONITOR_H__ */
> 
>>From a formal perspective you'll need Tamas's ack for this file, so you
> may want to Cc him. (Also for vm_event.h, unless the generic solution
> there doesn't land first.)
>

My apologies, meant to CC him but forgot. Will do for next version of
series.

>> --- /dev/null
>> +++ b/xen/arch/ppc/include/asm/p2m.h
>> @@ -0,0 +1,105 @@
>> +#ifndef __ASM_PPC_P2M_H__
>> +#define __ASM_PPC_P2M_H__
>> +
>> +#include <asm/page-bits.h>
>> +
>> +#define paddr_bits PADDR_BITS
>> +
>> +/*
>> + * List of possible type for each page in the p2m entry.
>> + * The number of available bit per page in the pte for this purpose is 4 bits.
>> + * So it's possible to only have 16 fields. If we run out of value in the
>> + * future, it's possible to use higher value for pseudo-type and don't store
>> + * them in the p2m entry.
>> + */
>> +typedef enum {
>> +    p2m_invalid = 0,    /* Nothing mapped here */
>> +    p2m_ram_rw,         /* Normal read/write guest RAM */
>> +    p2m_ram_ro,         /* Read-only; writes are silently dropped */
>> +    p2m_mmio_direct_dev,/* Read/write mapping of genuine Device MMIO area */
>> +    p2m_mmio_direct_nc, /* Read/write mapping of genuine MMIO area non-cacheable */
>> +    p2m_mmio_direct_c,  /* Read/write mapping of genuine MMIO area cacheable */
> 
> Didn't you agree to drop at least what's clear Arm-specific?
>

Yes -- that was an oversight. Will fix.

>> --- a/xen/arch/ppc/include/asm/system.h
>> +++ b/xen/arch/ppc/include/asm/system.h
>> @@ -1,6 +1,228 @@
>> +/* SPDX-License-Identifier: GPL-2.0-or-later */
>> +/*
>> + * Copyright (C) IBM Corp. 2005
>> + * Copyright (C) Raptor Engineering LLC
>> + *
>> + * Authors: Jimi Xenidis <jimix@watson.ibm.com>
>> + *          Shawn Anastasio <sanastasio@raptorengineering.com>
>> + */
>> +
>>  #ifndef _ASM_SYSTEM_H_
>>  #define _ASM_SYSTEM_H_
>>
>> -#define smp_wmb() __asm__ __volatile__ ( "lwsync" : : : "memory" )
>> +#include <xen/lib.h>
>> +#include <asm/memory.h>
>> +#include <asm/time.h>
>> +#include <asm/processor.h>
>> +#include <asm/msr.h>
>> +
>> +#define xchg(ptr,x) 							                               \
>> +({									                                           \
>> +	__typeof__(*(ptr)) _x_ = (x);					                           \
> 
> Hard tabs look to have slipped in here.
>

Good eye. Will fix.

>> +	(__typeof__(*(ptr))) __xchg((ptr), (unsigned long)_x_, sizeof(*(ptr)));    \
>> +})
>> +
>> +#define build_xchg(fn, type, ldinsn, stinsn) \
>> +static inline unsigned long fn(volatile type *m, unsigned long val)            \
>> +{                                                                              \
>> +    unsigned long dummy;                                                       \
>> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER                                    \
>> +                   "1: " ldinsn " %0,0,%3\n"                                   \
>> +                   stinsn " %2,0,%3\n"                                         \
>> +                   "2:  bne- 1b"                                               \
>> +                   PPC_ATOMIC_EXIT_BARRIER                                     \
>> +                   : "=&r" (dummy), "=m" (*m)                                  \
>> +                   : "r" (val), "r" (m)                                        \
>> +                   : "cc", "memory" );                                         \
>> +    return dummy;                                                              \
>> +}
>> +
>> +build_xchg(__xchg_u8, uint8_t, "lbarx", "stbcx.")
>> +build_xchg(__xchg_u16, uint16_t, "lharx", "sthcx.")
>> +build_xchg(__xchg_u32, uint32_t, "lwarx", "stwcx.")
>> +build_xchg(__xchg_u64, uint64_t, "ldarx", "stdcx.")
>> +
>> +#undef build_xchg
>> +
>> +/*
>> + * This function doesn't exist, so you'll get a linker error
>> + * if something tries to do an invalid xchg().
>> + */
>> +extern void __xchg_called_with_bad_pointer(void);
>> +
>> +static inline unsigned long __xchg(volatile void *ptr, unsigned long x,
>> +                                   int size)
>> +{
>> +    switch (size) {
> 
> Nit: Since the file looks like it wants to use Xen style:
> 
>     switch ( size )
>     {
> 
> please.
>

Will do.

>> +    case 1:
>> +        return __xchg_u8(ptr, x);
>> +    case 2:
>> +        return __xchg_u16(ptr, x);
>> +    case 4:
>> +        return __xchg_u32(ptr, x);
>> +    case 8:
>> +        return __xchg_u64(ptr, x);
>> +    }
>> +    __xchg_called_with_bad_pointer();
>> +    return x;
>> +}
>> +
>> +
>> +static inline unsigned long __cmpxchg_u32(volatile int *p, int old, int new)
>> +{
>> +    unsigned int prev;
>> +
>> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
>> +                   "1: lwarx   %0,0,%2\n"
>> +                   "cmpw    0,%0,%3\n"
>> +                   "bne-    2f\n "
>> +                   "stwcx.  %4,0,%2\n"
>> +                   "bne-    1b\n"
>> +                   PPC_ATOMIC_EXIT_BARRIER "\n"
>> +                   "2:"
>> +                   : "=&r" (prev), "=m" (*p)
>> +                   : "r" (p), "r" (old), "r" (new), "m" (*p)
>> +                   : "cc", "memory" );
>> +
>> +    return prev;
>> +}
>> +
>> +static inline unsigned long __cmpxchg_u64(volatile long *p, unsigned long old,
>> +                                          unsigned long new)
>> +{
>> +    unsigned long prev;
>> +
>> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
>> +                   "1: ldarx   %0,0,%2\n"
>> +                   "cmpd    0,%0,%3\n"
>> +                   "bne-    2f\n"
>> +                   "stdcx.  %4,0,%2\n"
>> +                   "bne-    1b"
>> +                   PPC_ATOMIC_EXIT_BARRIER "\n"
>> +                   "2:"
>> +                   : "=&r" (prev), "=m" (*p)
>> +                   : "r" (p), "r" (old), "r" (new), "m" (*p)
>> +                   : "cc", "memory" );
>> +
>> +    return prev;
>> +}
>> +
>> +/* This function doesn't exist, so you'll get a linker error
>> +   if something tries to do an invalid cmpxchg().  */
>> +extern void __cmpxchg_called_with_bad_pointer(void);
>> +
>> +static always_inline unsigned long __cmpxchg(
>> +    volatile void *ptr,
>> +    unsigned long old,
>> +    unsigned long new,
>> +    int size)
>> +{
>> +    switch (size) {
>> +    case 2:
>> +        BUG_ON("unimplemented"); return 0; /* XXX implement __cmpxchg_u16 ? */
>> +    case 4:
>> +        return __cmpxchg_u32(ptr, old, new);
>> +    case 8:
>> +        return __cmpxchg_u64(ptr, old, new);
>> +    }
>> +    __cmpxchg_called_with_bad_pointer();
>> +    return old;
>> +}
>> +
>> +#define cmpxchg_user(ptr,o,n) cmpxchg(ptr,o,n)
>> +
>> +#define cmpxchg(ptr,o,n)                         \
>> +  ({                                     \
>> +     __typeof__(*(ptr)) _o_ = (o);                   \
>> +     __typeof__(*(ptr)) _n_ = (n);                   \
>> +     (__typeof__(*(ptr))) __cmpxchg((ptr), (unsigned long)_o_,       \
>> +                    (unsigned long)_n_, sizeof(*(ptr))); \
> 
> Not: Style (multiple previously mentioned issues).
>

Will clean up.

>> +  })
>> +
>> +
>> +/*
>> + * Memory barrier.
>> + * The sync instruction guarantees that all memory accesses initiated
>> + * by this processor have been performed (with respect to all other
>> + * mechanisms that access memory).  The eieio instruction is a barrier
>> + * providing an ordering (separately) for (a) cacheable stores and (b)
>> + * loads and stores to non-cacheable memory (e.g. I/O devices).
>> + *
>> + * mb() prevents loads and stores being reordered across this point.
>> + * rmb() prevents loads being reordered across this point.
>> + * wmb() prevents stores being reordered across this point.
>> + * read_barrier_depends() prevents data-dependent loads being reordered
>> + *  across this point (nop on PPC).
>> + *
>> + * We have to use the sync instructions for mb(), since lwsync doesn't
>> + * order loads with respect to previous stores.  Lwsync is fine for
>> + * rmb(), though.
>> + * For wmb(), we use sync since wmb is used in drivers to order
>> + * stores to system memory with respect to writes to the device.
>> + * However, smp_wmb() can be a lighter-weight eieio barrier on
>> + * SMP since it is only used to order updates to system memory.
>> + */
>> +#define mb()   __asm__ __volatile__ ("sync" : : : "memory")
>> +#define rmb()  __asm__ __volatile__ ("lwsync" : : : "memory")
>> +#define wmb()  __asm__ __volatile__ ("sync" : : : "memory")
> 
> Nit: Missing blanks.
>

Will fix.

>> +#define read_barrier_depends()  do { } while(0)
>> +
>> +#define set_mb(var, value)  do { var = value; smp_mb(); } while (0)
>> +#define set_wmb(var, value) do { var = value; smp_wmb(); } while (0)
>> +
>> +#define smp_mb__before_atomic()    smp_mb()
>> +#define smp_mb__after_atomic()     smp_mb()
>> +
>> +#ifdef CONFIG_SMP
>> +#define smp_mb()    mb()
>> +#define smp_rmb()   rmb()
>> +#define smp_wmb()   __asm__ __volatile__ ("lwsync" : : : "memory")
>> +#define smp_read_barrier_depends()  read_barrier_depends()
>> +#else
>> +#define smp_mb()    __asm__ __volatile__("": : :"memory")
>> +#define smp_rmb()   __asm__ __volatile__("": : :"memory")
>> +#define smp_wmb()   __asm__ __volatile__("": : :"memory")
> 
> And more missing blanks (further below from here).
>

Will fix, along with removal of dead !CONFIG_SMP path.

>> +#define smp_read_barrier_depends()  do { } while(0)
>> +#endif /* CONFIG_SMP */
>> +
>> +#define local_save_flags(flags) ((flags) = mfmsr())
>> +#define local_irq_restore(flags) do { \
>> +        __asm__ __volatile__("": : :"memory"); \
>> +        mtmsrd((flags)); \
>> +} while(0)
>> +
>> +static inline void local_irq_disable(void)
>> +{
>> +    unsigned long msr;
>> +    msr = mfmsr();
>> +    mtmsrd(msr & ~MSR_EE);
>> +    asm volatile ( "" : : : "memory" );
> 
> That's simply barrier(), isn't it? Please avoid open-coding. (More
> further down.)
>

Good call. Will change all occurrences to barrier().

>> --- /dev/null
>> +++ b/xen/arch/ppc/include/asm/time.h
>> @@ -0,0 +1,21 @@
>> +/* SPDX-License-Identifier: GPL-2.0-only */
>> +#ifndef __ASM_PPC_TIME_H__
>> +#define __ASM_PPC_TIME_H__
>> +
>> +#include <xen/lib.h>
>> +#include <asm/processor.h>
>> +#include <asm/regs.h>
>> +
>> +struct vcpu;
>> +
>> +/* TODO: implement */
>> +static inline void force_update_vcpu_system_time(struct vcpu *v) { BUG_ON("unimplemented"); }
> 
> Nit: Too long line.
>

Will fix.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 22:16:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 22:16:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598216.932823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qejlX-0002RW-D1; Fri, 08 Sep 2023 22:15:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598216.932823; Fri, 08 Sep 2023 22:15:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qejlX-0002RP-AW; Fri, 08 Sep 2023 22:15:51 +0000
Received: by outflank-mailman (input) for mailman id 598216;
 Fri, 08 Sep 2023 22:15:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hmm/=EY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qejlV-0002RJ-Qc
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 22:15:49 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org
 [2604:1380:4601:e00::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 435873f3-4e95-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 00:15:48 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 8EBF4B82223;
 Fri,  8 Sep 2023 22:15:47 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2564BC433CA;
 Fri,  8 Sep 2023 22:15:45 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 435873f3-4e95-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694211346;
	bh=7VujQNNjwdsBhnaJLZekauTU/ZzItKifUATaJ/OH2Xs=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=eNLpeWP7z4UpHzsuWJL1Yy3FQmj7EpnkSzBpcZkMngdzlm9ZYxqn5IF2+NUZixtHF
	 7QsOP/KJlwKTEA3j7MWhsLLomR59jsqxYnaQmcX/lBjzy5sxBsPYR5qUNssYn9DBVk
	 lFT+LsfK+TXwMi5WP7yLBmLoP+LWxI6+ZiABnc1ZtWuHfEjkdc1lPQpjC5g0gITayT
	 NTBs9YXeyvhHy65QNWI5y6oSmIsF6SE0GwvfDWgJmNvJaNuQIS8g3Krtd0qqPpUOoX
	 kayuTChTCKwMWVW9J8/NaFZJ5FNHMIV43bHr4uWIAKUK2XbztP+FgeBsqNEx8tbVV9
	 jMY9EHTYqTzOg==
Date: Fri, 8 Sep 2023 15:15:43 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Henry Wang <Henry.Wang@arm.com>
cc: xen-devel@lists.xenproject.org, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, Wei Chen <wei.chen@arm.com>, 
    Penny Zheng <penny.zheng@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v6 00/13] xen/arm: Split MMU code as the prepration of
 MPU work
In-Reply-To: <20230828013224.669433-1-Henry.Wang@arm.com>
Message-ID: <alpine.DEB.2.22.394.2309081515340.6458@ubuntu-linux-20-04-desktop>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

I committed patches 1-5

On Mon, 28 Aug 2023, Henry Wang wrote:
> Based on the discussion in the Xen Summit [1], sending this series out after
> addressing the comments in v5 [2] as the preparation work to add MPU support.
> The series passed the GitLab CI check in [3].
> 
> Mostly code movement and function folding, with some of Kconfig and build
> system (mainly Makefiles) adjustment.
> 
> This series is based on:
> ec272d8d4c CI: Always move the bisect build log back
> 
> [1] https://lore.kernel.org/xen-devel/AS8PR08MB799122F8B0CB841DED64F4819226A@AS8PR08MB7991.eurprd08.prod.outlook.com/
> [2] https://lore.kernel.org/xen-devel/20230814042536.878720-1-Henry.Wang@arm.com/
> [3] https://gitlab.com/xen-project/people/henryw/xen/-/pipelines/982592897
> 
> Henry Wang (9):
>   xen/arm: Introduce CONFIG_MMU Kconfig option
>   xen/arm64: Split and move MMU-specific head.S to mmu/head.S
>   xen/arm64: Fold setup_fixmap() to create_page_tables()
>   xen/arm: Split page table related code to mmu/pt.c
>   xen/arm: Split MMU system SMP MM bringup code to mmu/smpboot.c
>   xen/arm: Fold mmu_init_secondary_cpu() to head.S
>   xen/arm: Extract MMU-specific MM code
>   xen/arm: Split MMU-specific setup_mm() and related code out
>   xen/arm: Fold pmap and fixmap into MMU system
> 
> Penny Zheng (2):
>   xen/arm: Rename init_secondary_pagetables() to prepare_secondary_mm()
>   xen/arm: mmu: move MMU specific P2M code to mmu/p2m.{c,h}
> 
> Wei Chen (2):
>   xen/arm64: head.S: Introduce enable_{boot,secondary}_cpu_mm()
>   xen/arm: Move MMU related definitions from config.h to mmu/layout.h
> 
>  xen/arch/arm/Kconfig                    |    5 +-
>  xen/arch/arm/Makefile                   |    1 +
>  xen/arch/arm/arm32/Makefile             |    1 +
>  xen/arch/arm/arm32/head.S               |   22 +-
>  xen/arch/arm/arm32/mmu/Makefile         |    1 +
>  xen/arch/arm/arm32/mmu/mm.c             |  301 ++++
>  xen/arch/arm/arm64/Makefile             |    2 +-
>  xen/arch/arm/arm64/head.S               |  460 +-----
>  xen/arch/arm/arm64/mmu/Makefile         |    2 +
>  xen/arch/arm/arm64/mmu/head.S           |  481 ++++++
>  xen/arch/arm/arm64/{ => mmu}/mm.c       |   84 ++
>  xen/arch/arm/include/asm/arm32/mm.h     |    1 +
>  xen/arch/arm/include/asm/arm64/macros.h |   36 +
>  xen/arch/arm/include/asm/config.h       |  132 +-
>  xen/arch/arm/include/asm/mm.h           |   28 +-
>  xen/arch/arm/include/asm/mmu/layout.h   |  146 ++
>  xen/arch/arm/include/asm/mmu/mm.h       |   41 +
>  xen/arch/arm/include/asm/mmu/p2m.h      |   18 +
>  xen/arch/arm/include/asm/p2m.h          |   26 +-
>  xen/arch/arm/include/asm/page.h         |   15 -
>  xen/arch/arm/include/asm/setup.h        |    5 +
>  xen/arch/arm/kernel.c                   |   28 -
>  xen/arch/arm/mm.c                       | 1212 ---------------
>  xen/arch/arm/mmu/Makefile               |    4 +
>  xen/arch/arm/mmu/p2m.c                  | 1736 +++++++++++++++++++++
>  xen/arch/arm/mmu/pt.c                   |  743 +++++++++
>  xen/arch/arm/mmu/setup.c                |  372 +++++
>  xen/arch/arm/mmu/smpboot.c              |  121 ++
>  xen/arch/arm/p2m.c                      | 1837 +----------------------
>  xen/arch/arm/setup.c                    |  324 +---
>  xen/arch/arm/smpboot.c                  |    4 +-
>  xen/arch/arm/xen.lds.S                  |    1 +
>  32 files changed, 4222 insertions(+), 3968 deletions(-)
>  create mode 100644 xen/arch/arm/arm32/mmu/Makefile
>  create mode 100644 xen/arch/arm/arm32/mmu/mm.c
>  create mode 100644 xen/arch/arm/arm64/mmu/Makefile
>  create mode 100644 xen/arch/arm/arm64/mmu/head.S
>  rename xen/arch/arm/arm64/{ => mmu}/mm.c (60%)
>  create mode 100644 xen/arch/arm/include/asm/mmu/layout.h
>  create mode 100644 xen/arch/arm/include/asm/mmu/mm.h
>  create mode 100644 xen/arch/arm/include/asm/mmu/p2m.h
>  create mode 100644 xen/arch/arm/mmu/Makefile
>  create mode 100644 xen/arch/arm/mmu/p2m.c
>  create mode 100644 xen/arch/arm/mmu/pt.c
>  create mode 100644 xen/arch/arm/mmu/setup.c
>  create mode 100644 xen/arch/arm/mmu/smpboot.c
> 
> -- 
> 2.25.1
> 


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 22:37:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 22:37:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598223.932837 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qek6U-0005Of-6C; Fri, 08 Sep 2023 22:37:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598223.932837; Fri, 08 Sep 2023 22:37:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qek6U-0005OY-2A; Fri, 08 Sep 2023 22:37:30 +0000
Received: by outflank-mailman (input) for mailman id 598223;
 Fri, 08 Sep 2023 22:37:29 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qek6T-0005ON-2Y; Fri, 08 Sep 2023 22:37:29 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qek6S-0000KY-Tq; Fri, 08 Sep 2023 22:37:28 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qek6S-0004dW-K3; Fri, 08 Sep 2023 22:37:28 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qek6S-0003hS-Jd; Fri, 08 Sep 2023 22:37:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=/mRAFYnSP8Yzlle9SGJg5drbXMpxeY1c6F1ApGUiASg=; b=X46ear1RWyq2l2xlUJxF3g1/n2
	3RnURL9ViydbW7qcP+2Yg+HDiv31H5cwFTVi0bcHdXAju7KGFyYDsB1YL2n9txYfmL+JybNPQtKTW
	pnd37DIcQoDnbVp/x9s2c9dtak3Ak97cAxDCoqNefHZ/zEcyfg66DME5cOPJ1WeNep9M=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182779-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182779: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=d4ae5df71190148c902942c3462245e97ed2fcc8
X-Osstest-Versions-That:
    ovmf=28a74d7ab22a33e3915eb747879d58797718f6f2
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 22:37:28 +0000

flight 182779 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182779/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 d4ae5df71190148c902942c3462245e97ed2fcc8
baseline version:
 ovmf                 28a74d7ab22a33e3915eb747879d58797718f6f2

Last test of basis   182772  2023-09-08 18:19:00 Z    0 days
Testing same since   182779  2023-09-08 20:44:14 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Avinash Bhargava <avinash.bhargava@intel.com>
  Michael D Kinney <michael.d.kinney@intel.com>
  Rebecca Cran <rebecca@bsdio.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   28a74d7ab2..d4ae5df711  d4ae5df71190148c902942c3462245e97ed2fcc8 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 08 22:50:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 22:50:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598235.932889 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekJK-0000hi-JB; Fri, 08 Sep 2023 22:50:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598235.932889; Fri, 08 Sep 2023 22:50:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekJK-0000hX-Fs; Fri, 08 Sep 2023 22:50:46 +0000
Received: by outflank-mailman (input) for mailman id 598235;
 Fri, 08 Sep 2023 22:50:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6LDZ=EY=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qekJI-000864-QI
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 22:50:44 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 222faf61-4e9a-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 00:50:40 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id D05988286A47;
 Fri,  8 Sep 2023 17:50:39 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 33xKeN1cNL1p; Fri,  8 Sep 2023 17:50:38 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 608D182866CF;
 Fri,  8 Sep 2023 17:50:38 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id jeVgxL9x-9cG; Fri,  8 Sep 2023 17:50:38 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id F1CA58286A47;
 Fri,  8 Sep 2023 17:50:37 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 222faf61-4e9a-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 608D182866CF
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694213438; bh=+pOxvbpau0ld00J1X81GVrATbLAt9UIwtH6FV5a/tJ8=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=qBzJ11CovegdEDSxSwIvAwGBEfSkNFCbITPY3J2/eVfsgrxNqv/zmhd60sf0l0MN1
	 mObpzy2N9Hie9d7hNJ745hI5BtHpz+2h4ef+aXT7M/iTmReGj2EMnn8y3g5eKBwoLA
	 mPzQzwbPAUIi/3SoqhUe62vlhOReo3Gygn8iACiM=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v4 4/5] xen/ppc: Add stub function and symbol definitions
Date: Fri,  8 Sep 2023 17:50:17 -0500
Message-Id: <fc4c93343acb17939439ba43ba1bbde63eee3a64.1694211900.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694211900.git.sanastasio@raptorengineering.com>
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Add stub function and symbol definitions required by common code. If the
file that the definition is supposed to be located in doesn't already
exist yet, temporarily place its definition in the new stubs.c

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
v4: No changes.

v3:
  - (stubs.c) Drop ack_none hook definition

v2:
  - Use BUG_ON("unimplemented") instead of BUG() for unimplemented functions
    to make searching easier.
  - (mm-radix.c) Drop total_pages definition
  - (mm-radix.c) Move __read_mostly from after variable name to before it in
    declaration of `frametable_base_pdx`
  - (setup.c) Fix include order
  - (stubs.c) Drop stub .end hw_irq_controller hook

 xen/arch/ppc/Makefile   |   1 +
 xen/arch/ppc/mm-radix.c |  42 +++++
 xen/arch/ppc/setup.c    |   8 +
 xen/arch/ppc/stubs.c    | 339 ++++++++++++++++++++++++++++++++++++++++
 4 files changed, 390 insertions(+)
 create mode 100644 xen/arch/ppc/stubs.c

diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile
index b3205b8f7a..6d5569ff64 100644
--- a/xen/arch/ppc/Makefile
+++ b/xen/arch/ppc/Makefile
@@ -4,6 +4,7 @@ obj-$(CONFIG_EARLY_PRINTK) += early_printk.init.o
 obj-y += mm-radix.o
 obj-y += opal.o
 obj-y += setup.o
+obj-y += stubs.o
 obj-y += tlb-radix.o

 $(TARGET): $(TARGET)-syms
diff --git a/xen/arch/ppc/mm-radix.c b/xen/arch/ppc/mm-radix.c
index 06129cef9c..11d0f27b60 100644
--- a/xen/arch/ppc/mm-radix.c
+++ b/xen/arch/ppc/mm-radix.c
@@ -265,3 +265,45 @@ void __init setup_initial_pagetables(void)
     /* Turn on the MMU */
     enable_mmu();
 }
+
+/*
+ * TODO: Implement the functions below
+ */
+unsigned long __read_mostly frametable_base_pdx;
+
+void put_page(struct page_info *p)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_dump_shared_mem_info(void)
+{
+    BUG_ON("unimplemented");
+}
+
+int xenmem_add_to_physmap_one(struct domain *d,
+                              unsigned int space,
+                              union add_to_physmap_extra extra,
+                              unsigned long idx,
+                              gfn_t gfn)
+{
+    BUG_ON("unimplemented");
+}
+
+int destroy_xen_mappings(unsigned long s, unsigned long e)
+{
+    BUG_ON("unimplemented");
+}
+
+int map_pages_to_xen(unsigned long virt,
+                     mfn_t mfn,
+                     unsigned long nr_mfns,
+                     unsigned int flags)
+{
+    BUG_ON("unimplemented");
+}
+
+int __init populate_pt_range(unsigned long virt, unsigned long nr_mfns)
+{
+    BUG_ON("unimplemented");
+}
diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c
index 3fc7705d9b..959c1454a0 100644
--- a/xen/arch/ppc/setup.c
+++ b/xen/arch/ppc/setup.c
@@ -1,5 +1,8 @@
 /* SPDX-License-Identifier: GPL-2.0-or-later */
 #include <xen/init.h>
+#include <xen/lib.h>
+#include <xen/mm.h>
+#include <public/version.h>
 #include <asm/boot.h>
 #include <asm/early_printk.h>
 #include <asm/mm.h>
@@ -33,3 +36,8 @@ void __init noreturn start_xen(unsigned long r3, unsigned long r4,

     unreachable();
 }
+
+void arch_get_xen_caps(xen_capabilities_info_t *info)
+{
+    BUG_ON("unimplemented");
+}
diff --git a/xen/arch/ppc/stubs.c b/xen/arch/ppc/stubs.c
new file mode 100644
index 0000000000..4c276b0e39
--- /dev/null
+++ b/xen/arch/ppc/stubs.c
@@ -0,0 +1,339 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#include <xen/cpumask.h>
+#include <xen/domain.h>
+#include <xen/irq.h>
+#include <xen/nodemask.h>
+#include <xen/time.h>
+#include <public/domctl.h>
+#include <public/vm_event.h>
+
+#include <asm/current.h>
+
+/* smpboot.c */
+
+cpumask_t cpu_online_map;
+cpumask_t cpu_present_map;
+cpumask_t cpu_possible_map;
+
+/* ID of the PCPU we're running on */
+DEFINE_PER_CPU(unsigned int, cpu_id);
+/* XXX these seem awfully x86ish... */
+/* representing HT siblings of each logical CPU */
+DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_sibling_mask);
+/* representing HT and core siblings of each logical CPU */
+DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_core_mask);
+
+nodemask_t __read_mostly node_online_map = { { [0] = 1UL } };
+
+/* time.c */
+
+s_time_t get_s_time(void)
+{
+    BUG_ON("unimplemented");
+}
+
+int reprogram_timer(s_time_t timeout)
+{
+    BUG_ON("unimplemented");
+}
+
+void send_timer_event(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+/* traps.c */
+
+void show_execution_state(const struct cpu_user_regs *regs)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_hypercall_tasklet_result(struct vcpu *v, long res)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_show_execution_state(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+/* shutdown.c */
+
+void machine_restart(unsigned int delay_millisecs)
+{
+    BUG_ON("unimplemented");
+}
+
+void machine_halt(void)
+{
+    BUG_ON("unimplemented");
+}
+
+/* vm_event.c */
+
+void vm_event_fill_regs(vm_event_request_t *req)
+{
+    BUG_ON("unimplemented");
+}
+
+void vm_event_set_registers(struct vcpu *v, vm_event_response_t *rsp)
+{
+    BUG_ON("unimplemented");
+}
+
+void vm_event_monitor_next_interrupt(struct vcpu *v)
+{
+    /* Not supported on PPC. */
+}
+
+/* domctl.c */
+void arch_get_domain_info(const struct domain *d,
+                          struct xen_domctl_getdomaininfo *info)
+{
+    BUG_ON("unimplemented");
+}
+
+/* monitor.c */
+
+int arch_monitor_domctl_event(struct domain *d,
+                              struct xen_domctl_monitor_op *mop)
+{
+    BUG_ON("unimplemented");
+}
+
+/* smp.c */
+
+void arch_flush_tlb_mask(const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+void smp_send_event_check_mask(const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+void smp_send_call_function_mask(const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+/* irq.c */
+
+struct pirq *alloc_pirq_struct(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+int pirq_guest_bind(struct vcpu *v, struct pirq *pirq, int will_share)
+{
+    BUG_ON("unimplemented");
+}
+
+void pirq_guest_unbind(struct domain *d, struct pirq *pirq)
+{
+    BUG_ON("unimplemented");
+}
+
+void pirq_set_affinity(struct domain *d, int pirq, const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+hw_irq_controller no_irq_type = {
+    .typename = "none",
+    .startup = irq_startup_none,
+    .shutdown = irq_shutdown_none,
+    .enable = irq_enable_none,
+    .disable = irq_disable_none,
+};
+
+int arch_init_one_irq_desc(struct irq_desc *desc)
+{
+    BUG_ON("unimplemented");
+}
+
+void smp_send_state_dump(unsigned int cpu)
+{
+    BUG_ON("unimplemented");
+}
+
+/* domain.c */
+
+DEFINE_PER_CPU(struct vcpu *, curr_vcpu);
+unsigned long __per_cpu_offset[NR_CPUS];
+
+void context_switch(struct vcpu *prev, struct vcpu *next)
+{
+    BUG_ON("unimplemented");
+}
+
+void continue_running(struct vcpu *same)
+{
+    BUG_ON("unimplemented");
+}
+
+void sync_local_execstate(void)
+{
+    BUG_ON("unimplemented");
+}
+
+void sync_vcpu_execstate(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void startup_cpu_idle_loop(void)
+{
+    BUG_ON("unimplemented");
+}
+
+void free_domain_struct(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void dump_pageframe_info(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void free_vcpu_struct(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_vcpu_create(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_vcpu_destroy(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_switch_to_aarch64_mode(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_domain_create(struct domain *d,
+                       struct xen_domctl_createdomain *config,
+                       unsigned int flags)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_domain_teardown(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_destroy(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_shutdown(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_pause(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_unpause(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_domain_soft_reset(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_creation_finished(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_set_info_guest(struct vcpu *v, vcpu_guest_context_u c)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_initialise_vcpu(struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_vcpu_reset(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+int domain_relinquish_resources(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_dump_domain_info(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_dump_vcpu_info(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_mark_events_pending(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_update_evtchn_irq(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_block_unless_event_pending(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_kick(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+struct domain *alloc_domain_struct(void)
+{
+    BUG_ON("unimplemented");
+}
+
+struct vcpu *alloc_vcpu_struct(const struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+unsigned long
+hypercall_create_continuation(unsigned int op, const char *format, ...)
+{
+    BUG_ON("unimplemented");
+}
+
+int __init parse_arch_dom0_param(const char *s, const char *e)
+{
+    BUG_ON("unimplemented");
+}
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 22:50:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 22:50:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598234.932875 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekJJ-0000Es-7z; Fri, 08 Sep 2023 22:50:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598234.932875; Fri, 08 Sep 2023 22:50:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekJJ-0000Dz-1F; Fri, 08 Sep 2023 22:50:45 +0000
Received: by outflank-mailman (input) for mailman id 598234;
 Fri, 08 Sep 2023 22:50:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6LDZ=EY=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qekJH-000864-QF
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 22:50:43 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 21bcfb2a-4e9a-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 00:50:39 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 16E2A82853EE;
 Fri,  8 Sep 2023 17:50:39 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id X5kNCrl-LKta; Fri,  8 Sep 2023 17:50:37 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 6E785828541B;
 Fri,  8 Sep 2023 17:50:37 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id IOlJolNIcmXG; Fri,  8 Sep 2023 17:50:37 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 2081E8286A2F;
 Fri,  8 Sep 2023 17:50:37 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 21bcfb2a-4e9a-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 6E785828541B
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694213437; bh=bUHO4IoACeFGDfz60+dzzV18CdcSW770+RnrYX+US4A=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=eX/iKpy8QTejBJE+iGQeXE0oviXZI3yIOO4bvDlc6Y4DiflthQQcVdUd5qyBrHrsH
	 OtDsH0NRIity2dhjjnEoo/ZuPVv8orTXgcmx+12nKvC06v2V5R6BkqgJK84FD85dPZ
	 KGiCrk17xeojVHzsUmgCXaoawXqkWhn7Do1QoqJw=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v4 2/5] xen/ppc: Implement bitops.h
Date: Fri,  8 Sep 2023 17:50:15 -0500
Message-Id: <31292b9b259a401045646d50a7237364640bc85b.1694211900.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694211900.git.sanastasio@raptorengineering.com>
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Implement bitops.h, based on Linux's implementation as of commit
5321d1b1afb9a17302c6cec79f0cbf823eb0d3fc. Though it is based off of
Linux's implementation, this code diverges significantly in a number of
ways:
  - Bitmap entries changed to 32-bit words to match X86 and Arm on Xen
  - PPC32-specific code paths dropped
  - Formatting completely re-done to more closely line up with Xen.
    Including 4 space indentation.
  - Use GCC's __builtin_popcount* for hweight* implementation

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
v4:
  - Mention __builtin_popcount impelmentation of hweight* in message
  - Change type of BITOP_MASK expression from unsigned long to unsigned
    int
  - Fix remaining underscore-prefixed macro params/vars
  - Fix line wrapping in test_and_clear_bit{,s}
  - Change type of test_and_clear_bits' pointer parameter from void *
    to unsigned int *. This was already done for other functions but
    missed here.
  - De-macroize test_and_set_bits.
  - Fix formatting of ffs{,l} macro's unary operators
  - Drop extra blank in ffz() macro definition

v3:
  - Fix style of inline asm blocks.
  - Fix underscore-prefixed macro parameters/variables
  - Use __builtin_popcount for hweight* implementation
  - Update C functions to use proper Xen coding style

v2:
  - Clarify changes from Linux implementation in commit message
  - Use PPC_ATOMIC_{ENTRY,EXIT}_BARRIER macros from <asm/memory.h> instead
    of hardcoded "sync" instructions in inline assembly blocks.
  - Fix macro line-continuing backslash spacing
  - Fix hard-tab usage in find_*_bit C functions.

 xen/arch/ppc/include/asm/bitops.h | 332 +++++++++++++++++++++++++++++-
 1 file changed, 329 insertions(+), 3 deletions(-)

diff --git a/xen/arch/ppc/include/asm/bitops.h b/xen/arch/ppc/include/asm/bitops.h
index 548e97b414..3e50778c4d 100644
--- a/xen/arch/ppc/include/asm/bitops.h
+++ b/xen/arch/ppc/include/asm/bitops.h
@@ -1,9 +1,335 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Adapted from Linux's arch/powerpc/include/asm/bitops.h.
+ *
+ * Merged version by David Gibson <david@gibson.dropbear.id.au>.
+ * Based on ppc64 versions by: Dave Engebretsen, Todd Inglett, Don
+ * Reed, Pat McCarthy, Peter Bergner, Anton Blanchard.  They
+ * originally took it from the ppc32 code.
+ */
 #ifndef _ASM_PPC_BITOPS_H
 #define _ASM_PPC_BITOPS_H

+#include <asm/memory.h>
+
+#define __set_bit(n, p)         set_bit(n, p)
+#define __clear_bit(n, p)       clear_bit(n, p)
+
+#define BITOP_BITS_PER_WORD     32
+#define BITOP_MASK(nr)          (1U << ((nr) % BITOP_BITS_PER_WORD))
+#define BITOP_WORD(nr)          ((nr) / BITOP_BITS_PER_WORD)
+#define BITS_PER_BYTE           8
+
 /* PPC bit number conversion */
-#define PPC_BITLSHIFT(be)	(BITS_PER_LONG - 1 - (be))
-#define PPC_BIT(bit)		(1UL << PPC_BITLSHIFT(bit))
-#define PPC_BITMASK(bs, be)	((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
+#define PPC_BITLSHIFT(be)    (BITS_PER_LONG - 1 - (be))
+#define PPC_BIT(bit)         (1UL << PPC_BITLSHIFT(bit))
+#define PPC_BITMASK(bs, be)  ((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
+
+/* Macro for generating the ***_bits() functions */
+#define DEFINE_BITOP(fn, op, prefix)                                           \
+static inline void fn(unsigned long mask,                                      \
+                      volatile unsigned int *p_)                               \
+{                                                                              \
+    unsigned long old;                                                         \
+    unsigned int *p = (unsigned int *)p_;                                      \
+    asm volatile ( prefix                                                      \
+                   "1: lwarx %0,0,%3,0\n"                                      \
+                   #op "%I2 %0,%0,%2\n"                                        \
+                   "stwcx. %0,0,%3\n"                                          \
+                   "bne- 1b\n"                                                 \
+                   : "=&r" (old), "+m" (*p)                                    \
+                   : "rK" (mask), "r" (p)                                      \
+                   : "cc", "memory" );                                         \
+}
+
+DEFINE_BITOP(set_bits, or, "")
+DEFINE_BITOP(change_bits, xor, "")
+
+#define DEFINE_CLROP(fn, prefix)                                               \
+static inline void fn(unsigned long mask, volatile unsigned int *p_)           \
+{                                                                              \
+    unsigned long old;                                                         \
+    unsigned int *p = (unsigned int *)p_;                                      \
+    asm volatile ( prefix                                                      \
+                   "1: lwarx %0,0,%3,0\n"                                      \
+                   "andc %0,%0,%2\n"                                           \
+                   "stwcx. %0,0,%3\n"                                          \
+                   "bne- 1b\n"                                                 \
+                   : "=&r" (old), "+m" (*p)                                    \
+                   : "r" (mask), "r" (p)                                       \
+                   : "cc", "memory" );                                         \
+}
+
+DEFINE_CLROP(clear_bits, "")
+
+static inline void set_bit(int nr, volatile void *addr)
+{
+    set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
+}
+static inline void clear_bit(int nr, volatile void *addr)
+{
+    clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
+}
+
+/**
+ * test_bit - Determine whether a bit is set
+ * @nr: bit number to test
+ * @addr: Address to start counting from
+ */
+static inline int test_bit(int nr, const volatile void *addr)
+{
+    const volatile unsigned long *p = (const volatile unsigned long *)addr;
+    return 1 & (p[BITOP_WORD(nr)] >> (nr & (BITOP_BITS_PER_WORD - 1)));
+}
+
+static inline unsigned long test_and_clear_bits(
+    unsigned long mask,
+    volatile unsigned int *p)
+{
+    unsigned long old, t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%3,0\n"
+                   "andc %1,%0,%2\n"
+                   "stwcx. %1,0,%3\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (old), "=&r" (t)
+                   : "r" (mask), "r" (p)
+                   : "cc", "memory" );
+
+    return (old & mask);
+}
+
+static inline int test_and_clear_bit(unsigned int nr,
+                                     volatile void *addr)
+{
+    return test_and_clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr +
+                               BITOP_WORD(nr)) != 0;
+}
+
+static inline unsigned long test_and_set_bits(
+    unsigned long mask,
+    volatile unsigned int *p)
+{
+    unsigned long old, t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%3,0\n"
+                   "or%I2 %1,%0,%2\n"
+                   "stwcx. %1,0,%3\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (old), "=&r" (t)
+                   : "rK" (mask), "r" (p)
+                   : "cc", "memory" );
+
+    return (old & mask);
+}
+
+static inline int test_and_set_bit(unsigned long nr, volatile void *addr)
+{
+    return test_and_set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr +
+                                             BITOP_WORD(nr)) != 0;
+}
+
+/**
+ * __test_and_set_bit - Set a bit and return its old value
+ * @nr: Bit to set
+ * @addr: Address to count from
+ *
+ * This operation is non-atomic and can be reordered.
+ * If two examples of this operation race, one can appear to succeed
+ * but actually fail.  You must protect multiple accesses with a lock.
+ */
+static inline int __test_and_set_bit(int nr, volatile void *addr)
+{
+    unsigned int mask = BITOP_MASK(nr);
+    volatile unsigned int *p = ((volatile unsigned int *)addr) + BITOP_WORD(nr);
+    unsigned int old = *p;
+
+    *p = old | mask;
+    return (old & mask) != 0;
+}
+
+/**
+ * __test_and_clear_bit - Clear a bit and return its old value
+ * @nr: Bit to clear
+ * @addr: Address to count from
+ *
+ * This operation is non-atomic and can be reordered.
+ * If two examples of this operation race, one can appear to succeed
+ * but actually fail.  You must protect multiple accesses with a lock.
+ */
+static inline int __test_and_clear_bit(int nr, volatile void *addr)
+{
+    unsigned int mask = BITOP_MASK(nr);
+    volatile unsigned int *p = ((volatile unsigned int *)addr) + BITOP_WORD(nr);
+    unsigned int old = *p;
+
+    *p = old & ~mask;
+    return (old & mask) != 0;
+}
+
+#define flsl(x) generic_flsl(x)
+#define fls(x) generic_fls(x)
+#define ffs(x) ({ unsigned int t_ = (x); fls(t_ & -t_); })
+#define ffsl(x) ({ unsigned long t_ = (x); flsl(t_ & -t_); })
+
+/* Based on linux/include/asm-generic/bitops/ffz.h */
+/*
+ * ffz - find first zero in word.
+ * @word: The word to search
+ *
+ * Undefined if no zero exists, so code should check against ~0UL first.
+ */
+#define ffz(x) __ffs(~(x))
+
+/**
+ * hweightN - returns the hamming weight of a N-bit word
+ * @x: the word to weigh
+ *
+ * The Hamming Weight of a number is the total number of bits set in it.
+ */
+#define hweight64(x) __builtin_popcountll(x)
+#define hweight32(x) __builtin_popcount(x)
+#define hweight16(x) __builtin_popcount((uint16_t)(x))
+#define hweight8(x)  __builtin_popcount((uint8_t)(x))
+
+/* Based on linux/include/asm-generic/bitops/builtin-__ffs.h */
+/**
+ * __ffs - find first bit in word.
+ * @word: The word to search
+ *
+ * Undefined if no bit exists, so code should check against 0 first.
+ */
+static always_inline unsigned long __ffs(unsigned long word)
+{
+    return __builtin_ctzl(word);
+}
+
+/**
+ * find_first_set_bit - find the first set bit in @word
+ * @word: the word to search
+ *
+ * Returns the bit-number of the first set bit (first bit being 0).
+ * The input must *not* be zero.
+ */
+#define find_first_set_bit(x) (ffsl(x) - 1)
+
+/*
+ * Find the first set bit in a memory region.
+ */
+static inline unsigned long find_first_bit(const unsigned long *addr,
+                                           unsigned long size)
+{
+    const unsigned long *p = addr;
+    unsigned long result = 0;
+    unsigned long tmp;
+
+    while ( size & ~(BITS_PER_LONG - 1) )
+    {
+        if ( (tmp = *(p++)) )
+            goto found;
+        result += BITS_PER_LONG;
+        size -= BITS_PER_LONG;
+    }
+    if ( !size )
+        return result;
+
+    tmp = (*p) & (~0UL >> (BITS_PER_LONG - size));
+    if ( tmp == 0UL )         /* Are any bits set? */
+        return result + size; /* Nope. */
+ found:
+    return result + __ffs(tmp);
+}
+
+static inline unsigned long find_next_bit(const unsigned long *addr,
+                                          unsigned long size,
+                                          unsigned long offset)
+{
+    const unsigned long *p = addr + BITOP_WORD(offset);
+    unsigned long result = offset & ~(BITS_PER_LONG - 1);
+    unsigned long tmp;
+
+    if ( offset >= size )
+        return size;
+    size -= result;
+    offset %= BITS_PER_LONG;
+    if ( offset )
+    {
+        tmp = *(p++);
+        tmp &= (~0UL << offset);
+        if ( size < BITS_PER_LONG )
+            goto found_first;
+        if ( tmp )
+            goto found_middle;
+        size -= BITS_PER_LONG;
+        result += BITS_PER_LONG;
+    }
+    while ( size & ~(BITS_PER_LONG - 1) )
+    {
+        if ( (tmp = *(p++)) )
+            goto found_middle;
+        result += BITS_PER_LONG;
+        size -= BITS_PER_LONG;
+    }
+    if ( !size )
+        return result;
+    tmp = *p;
+
+ found_first:
+    tmp &= (~0UL >> (BITS_PER_LONG - size));
+    if ( tmp == 0UL )         /* Are any bits set? */
+        return result + size; /* Nope. */
+ found_middle:
+    return result + __ffs(tmp);
+}
+
+/*
+ * This implementation of find_{first,next}_zero_bit was stolen from
+ * Linus' asm-alpha/bitops.h.
+ */
+static inline unsigned long find_next_zero_bit(const unsigned long *addr,
+                                               unsigned long size,
+                                               unsigned long offset)
+{
+    const unsigned long *p = addr + BITOP_WORD(offset);
+    unsigned long result = offset & ~(BITS_PER_LONG - 1);
+    unsigned long tmp;
+
+    if ( offset >= size )
+        return size;
+    size -= result;
+    offset %= BITS_PER_LONG;
+    if ( offset )
+    {
+        tmp = *(p++);
+        tmp |= ~0UL >> (BITS_PER_LONG - offset);
+        if ( size < BITS_PER_LONG )
+            goto found_first;
+        if ( ~tmp )
+            goto found_middle;
+        size -= BITS_PER_LONG;
+        result += BITS_PER_LONG;
+    }
+    while ( size & ~(BITS_PER_LONG - 1) )
+    {
+        if ( ~(tmp = *(p++)) )
+            goto found_middle;
+        result += BITS_PER_LONG;
+        size -= BITS_PER_LONG;
+    }
+    if ( !size )
+        return result;
+    tmp = *p;
+
+ found_first:
+    tmp |= ~0UL << size;
+    if ( tmp == ~0UL )        /* Are any bits zero? */
+        return result + size; /* Nope. */
+ found_middle:
+    return result + ffz(tmp);
+}

 #endif /* _ASM_PPC_BITOPS_H */
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 22:50:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 22:50:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598231.932849 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekJG-00086M-6N; Fri, 08 Sep 2023 22:50:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598231.932849; Fri, 08 Sep 2023 22:50:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekJG-00086F-3q; Fri, 08 Sep 2023 22:50:42 +0000
Received: by outflank-mailman (input) for mailman id 598231;
 Fri, 08 Sep 2023 22:50:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6LDZ=EY=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qekJF-000864-4k
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 22:50:41 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 218f091a-4e9a-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 00:50:39 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id C0DBD8286A44;
 Fri,  8 Sep 2023 17:50:38 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id Sk29uo0OWNf3; Fri,  8 Sep 2023 17:50:37 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 2DBB582853EE;
 Fri,  8 Sep 2023 17:50:37 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id bcA42MyN_NjI; Fri,  8 Sep 2023 17:50:37 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 9D481828541B;
 Fri,  8 Sep 2023 17:50:36 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 218f091a-4e9a-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 2DBB582853EE
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694213437; bh=JiQdYn3CvYO7m9kM2CTrrP7H6NwgtpFmLhDch+sjc2Q=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=KaLT3wLHewoBuZrJYOQO3rNtd1rqCx7DtFMMKrwlrnacnvrXso7KZ/nbFZeGBrFXG
	 l4IxHcM4igTSWn98t3RU3+iLcZQq+JahV7f8v0TSARM04t0C8G4rEu5iSgxBJ7CxOP
	 oB//f2rhscibiFORONIAHDRh94d9mM30dVqkfPKw=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v4 1/5] xen/ppc: Implement atomic.h
Date: Fri,  8 Sep 2023 17:50:14 -0500
Message-Id: <7ed453323033a759427da33cea7d18ddca247ae7.1694211900.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694211900.git.sanastasio@raptorengineering.com>
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Implement atomic.h for PPC, based off of the original Xen 3.2
implementation. This implementation depends on some functions that are
not yet defined (notably __cmpxchg), so it can't yet be used.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
v4:
  - Clarify dependency on __cmpxchg which doesn't get implemented until
    future patch
  - Drop !CONFIG_SMP case for PPC_ATOMIC_{ENTRY,EXIT}_BARRIER macro
    definitions
  - Add missing newlines to inline asm instructions preceeding
    PPC_ATOMIC_EXIT_BARRIER. This was only discovered by the change
    to drop the !CONFIG_SMP definitions of those macros.
  - Fix line wrapping in atomic_compareandswap
  - Fix formatting of arch_cmpxchg macro

v3:
  - Drop full copyright text headers
  - Drop unnecessary spaces after casts
  - const-ize write_atomic_size
  - Don't use GNU 0-length array extension in read_atomic
  - Use "+m" asm constraint instead of separate "=m" and "m"
  - Fix line-continuing backslash formatting in arch_cmpxchg

v2:
  - Fix style of asm block constraints to include required spaces
  - Fix macro local variable naming (use trailing underscore instead of
    leading)
  - Drop unnecessary parens in __atomic_add_unless

 xen/arch/ppc/include/asm/atomic.h | 385 ++++++++++++++++++++++++++++++
 xen/arch/ppc/include/asm/memory.h |  14 ++
 2 files changed, 399 insertions(+)
 create mode 100644 xen/arch/ppc/include/asm/atomic.h
 create mode 100644 xen/arch/ppc/include/asm/memory.h

diff --git a/xen/arch/ppc/include/asm/atomic.h b/xen/arch/ppc/include/asm/atomic.h
new file mode 100644
index 0000000000..64168aa3f1
--- /dev/null
+++ b/xen/arch/ppc/include/asm/atomic.h
@@ -0,0 +1,385 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * PowerPC64 atomic operations
+ *
+ * Copyright (C) 2001 Paul Mackerras <paulus@au.ibm.com>, IBM
+ * Copyright (C) 2001 Anton Blanchard <anton@au.ibm.com>, IBM
+ * Copyright Raptor Engineering LLC
+ */
+
+#ifndef _ASM_PPC64_ATOMIC_H_
+#define _ASM_PPC64_ATOMIC_H_
+
+#include <xen/atomic.h>
+
+#include <asm/memory.h>
+
+static inline int atomic_read(const atomic_t *v)
+{
+    return *(volatile int *)&v->counter;
+}
+
+static inline int _atomic_read(atomic_t v)
+{
+    return v.counter;
+}
+
+static inline void atomic_set(atomic_t *v, int i)
+{
+    v->counter = i;
+}
+
+static inline void _atomic_set(atomic_t *v, int i)
+{
+    v->counter = i;
+}
+
+void __bad_atomic_read(const volatile void *p, void *res);
+void __bad_atomic_size(void);
+
+#define build_atomic_read(name, insn, type)                                    \
+    static inline type name(const volatile type *addr)                         \
+    {                                                                          \
+        type ret;                                                              \
+        asm volatile ( insn "%U1%X1 %0,%1" : "=r" (ret) : "m<>" (*addr) );     \
+        return ret;                                                            \
+    }
+
+#define build_atomic_write(name, insn, type)                                   \
+    static inline void name(volatile type *addr, type val)                     \
+    {                                                                          \
+        asm volatile ( insn "%U0%X0 %1,%0" : "=m<>" (*addr) : "r" (val) );     \
+    }
+
+#define build_add_sized(name, ldinsn, stinsn, type)                            \
+    static inline void name(volatile type *addr, type val)                     \
+    {                                                                          \
+        type t;                                                                \
+        asm volatile ( "1: " ldinsn " %0,0,%3\n"                               \
+                       "add%I2 %0,%0,%2\n"                                     \
+                       stinsn " %0,0,%3 \n"                                    \
+                       "bne- 1b\n"                                             \
+                       : "=&r" (t), "+m" (*addr)                               \
+                       : "r" (val), "r" (addr)                                 \
+                       : "cc" );                                               \
+    }
+
+build_atomic_read(read_u8_atomic, "lbz", uint8_t)
+build_atomic_read(read_u16_atomic, "lhz", uint16_t)
+build_atomic_read(read_u32_atomic, "lwz", uint32_t)
+build_atomic_read(read_u64_atomic, "ldz", uint64_t)
+
+build_atomic_write(write_u8_atomic, "stb", uint8_t)
+build_atomic_write(write_u16_atomic, "sth", uint16_t)
+build_atomic_write(write_u32_atomic, "stw", uint32_t)
+build_atomic_write(write_u64_atomic, "std", uint64_t)
+
+build_add_sized(add_u8_sized, "lbarx", "stbcx.",uint8_t)
+build_add_sized(add_u16_sized, "lharx", "sthcx.", uint16_t)
+build_add_sized(add_u32_sized, "lwarx", "stwcx.", uint32_t)
+
+#undef build_atomic_read
+#undef build_atomic_write
+#undef build_add_sized
+
+static always_inline void read_atomic_size(const volatile void *p, void *res,
+                                           unsigned int size)
+{
+    ASSERT(IS_ALIGNED((vaddr_t)p, size));
+    switch ( size )
+    {
+    case 1:
+        *(uint8_t *)res = read_u8_atomic(p);
+        break;
+    case 2:
+        *(uint16_t *)res = read_u16_atomic(p);
+        break;
+    case 4:
+        *(uint32_t *)res = read_u32_atomic(p);
+        break;
+    case 8:
+        *(uint64_t *)res = read_u64_atomic(p);
+        break;
+    default:
+        __bad_atomic_read(p, res);
+        break;
+    }
+}
+
+static always_inline void write_atomic_size(volatile void *p, const void *val,
+                                            unsigned int size)
+{
+    ASSERT(IS_ALIGNED((vaddr_t)p, size));
+    switch ( size )
+    {
+    case 1:
+        write_u8_atomic(p, *(const uint8_t *)val);
+        break;
+    case 2:
+        write_u16_atomic(p, *(const uint16_t *)val);
+        break;
+    case 4:
+        write_u32_atomic(p, *(const uint32_t *)val);
+        break;
+    case 8:
+        write_u64_atomic(p, *(const uint64_t *)val);
+        break;
+    default:
+        __bad_atomic_size();
+        break;
+    }
+}
+
+#define read_atomic(p)                                                         \
+    ({                                                                         \
+        union {                                                                \
+            typeof(*(p)) val;                                                  \
+            char c[sizeof(*(p))];                                              \
+        } x_;                                                                  \
+        read_atomic_size(p, x_.c, sizeof(*(p)));                               \
+        x_.val;                                                                \
+    })
+
+#define write_atomic(p, x)                                                     \
+    do                                                                         \
+    {                                                                          \
+        typeof(*(p)) x_ = (x);                                                 \
+        write_atomic_size(p, &x_, sizeof(*(p)));                               \
+    } while ( 0 )
+
+#define add_sized(p, x)                                                        \
+    ({                                                                         \
+        typeof(*(p)) x_ = (x);                                                 \
+        switch ( sizeof(*(p)) )                                                \
+        {                                                                      \
+        case 1:                                                                \
+            add_u8_sized((uint8_t *)(p), x_);                                  \
+            break;                                                             \
+        case 2:                                                                \
+            add_u16_sized((uint16_t *)(p), x_);                                \
+            break;                                                             \
+        case 4:                                                                \
+            add_u32_sized((uint32_t *)(p), x_);                                \
+            break;                                                             \
+        default:                                                               \
+            __bad_atomic_size();                                               \
+            break;                                                             \
+        }                                                                      \
+    })
+
+static inline void atomic_add(int a, atomic_t *v)
+{
+    int t;
+
+    asm volatile ( "1: lwarx %0,0,%3\n"
+                   "add %0,%2,%0\n"
+                   "stwcx. %0,0,%3\n"
+                   "bne- 1b"
+                   : "=&r" (t), "+m" (v->counter)
+                   : "r" (a), "r" (&v->counter)
+                   : "cc" );
+}
+
+static inline int atomic_add_return(int a, atomic_t *v)
+{
+    int t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%2\n"
+                   "add %0,%1,%0\n"
+                   "stwcx. %0,0,%2\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (t)
+                   : "r" (a), "r" (&v->counter)
+                   : "cc", "memory" );
+
+    return t;
+}
+
+static inline void atomic_sub(int a, atomic_t *v)
+{
+    int t;
+
+    asm volatile ( "1: lwarx %0,0,%3\n"
+                   "subf %0,%2,%0\n"
+                   "stwcx. %0,0,%3\n"
+                   "bne- 1b"
+                   : "=&r" (t), "+m" (v->counter)
+                   : "r" (a), "r" (&v->counter)
+                   : "cc" );
+}
+
+static inline int atomic_sub_return(int a, atomic_t *v)
+{
+    int t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%2\n"
+                   "subf %0,%1,%0\n"
+                   "stwcx. %0,0,%2\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (t)
+                   : "r" (a), "r" (&v->counter)
+                   : "cc", "memory" );
+
+    return t;
+}
+
+static inline void atomic_inc(atomic_t *v)
+{
+    int t;
+
+    asm volatile ( "1: lwarx %0,0,%2\n"
+                   "addic %0,%0,1\n"
+                   "stwcx. %0,0,%2\n"
+                   "bne- 1b"
+                   : "=&r" (t), "+m" (v->counter)
+                   : "r" (&v->counter)
+                   : "cc" );
+}
+
+static inline int atomic_inc_return(atomic_t *v)
+{
+    int t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%1\n"
+                   "addic %0,%0,1\n"
+                   "stwcx. %0,0,%1\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (t)
+                   : "r" (&v->counter)
+                   : "cc", "memory" );
+
+    return t;
+}
+
+static inline void atomic_dec(atomic_t *v)
+{
+    int t;
+
+    asm volatile ( "1: lwarx %0,0,%2\n"
+                   "addic %0,%0,-1\n"
+                   "stwcx. %0,0,%2\n"
+                   "bne- 1b"
+                   : "=&r" (t), "+m" (v->counter)
+                   : "r" (&v->counter)
+                   : "cc" );
+}
+
+static inline int atomic_dec_return(atomic_t *v)
+{
+    int t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%1\n"
+                   "addic %0,%0,-1\n"
+                   "stwcx. %0,0,%1\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (t)
+                   : "r" (&v->counter)
+                   : "cc", "memory" );
+
+    return t;
+}
+
+/*
+ * Atomically test *v and decrement if it is greater than 0.
+ * The function returns the old value of *v minus 1.
+ */
+static inline int atomic_dec_if_positive(atomic_t *v)
+{
+    int t;
+
+    asm volatile( PPC_ATOMIC_ENTRY_BARRIER
+                  "1: lwarx %0,0,%1 # atomic_dec_if_positive\n"
+                  "addic. %0,%0,-1\n"
+                  "blt- 2f\n"
+                  "stwcx. %0,0,%1\n"
+                  "bne- 1b\n"
+                  PPC_ATOMIC_EXIT_BARRIER
+                  "2:"
+                  : "=&r" (t)
+                  : "r" (&v->counter)
+                  : "cc", "memory" );
+
+    return t;
+}
+
+static inline atomic_t atomic_compareandswap(atomic_t old, atomic_t new,
+                                             atomic_t *v)
+{
+    atomic_t rc;
+    rc.counter = __cmpxchg(&v->counter, old.counter, new.counter,
+                           sizeof(v->counter));
+    return rc;
+}
+
+#define arch_cmpxchg(ptr, o, n)                                                \
+    ({                                                                         \
+        __typeof__(*(ptr)) o_ = (o);                                           \
+        __typeof__(*(ptr)) n_ = (n);                                           \
+        (__typeof__(*(ptr))) __cmpxchg((ptr), (unsigned long)o_,               \
+                                       (unsigned long)n_, sizeof(*(ptr)));     \
+    })
+
+static inline int atomic_cmpxchg(atomic_t *v, int old, int new)
+{
+    return arch_cmpxchg(&v->counter, old, new);
+}
+
+#define ATOMIC_OP(op, insn, suffix, sign) \
+    static inline void atomic_##op(int a, atomic_t *v)                           \
+    {                                                                            \
+        int t;                                                                   \
+        asm volatile ( "1: lwarx %0,0,%3\n"                                      \
+                       insn "%I2" suffix " %0,%0,%2\n"                           \
+                       "stwcx. %0,0,%3 \n"                                       \
+                       "bne- 1b\n"                                               \
+                       : "=&r" (t), "+m" (v->counter)                            \
+                       : "r" #sign (a), "r" (&v->counter)                        \
+                       : "cc" );                                                 \
+    }
+
+ATOMIC_OP(and, "and", ".", K)
+
+static inline int atomic_sub_and_test(int i, atomic_t *v)
+{
+    return atomic_sub_return(i, v) == 0;
+}
+
+static inline int atomic_inc_and_test(atomic_t *v)
+{
+    return atomic_add_return(1, v) == 0;
+}
+
+static inline int atomic_dec_and_test(atomic_t *v)
+{
+    return atomic_sub_return(1, v) == 0;
+}
+
+static inline int atomic_add_negative(int i, atomic_t *v)
+{
+    return atomic_add_return(i, v) < 0;
+}
+
+static inline int __atomic_add_unless(atomic_t *v, int a, int u)
+{
+	int c, old;
+
+	c = atomic_read(v);
+	while (c != u && (old = atomic_cmpxchg(v, c, c + a)) != c)
+		c = old;
+	return c;
+}
+
+static inline int atomic_add_unless(atomic_t *v, int a, int u)
+{
+    return __atomic_add_unless(v, a, u);
+}
+
+#endif /* _ASM_PPC64_ATOMIC_H_ */
diff --git a/xen/arch/ppc/include/asm/memory.h b/xen/arch/ppc/include/asm/memory.h
new file mode 100644
index 0000000000..57310eb690
--- /dev/null
+++ b/xen/arch/ppc/include/asm/memory.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Copyright (C) IBM Corp. 2005
+ *
+ * Authors: Jimi Xenidis <jimix@watson.ibm.com>
+ */
+
+#ifndef _ASM_MEMORY_H_
+#define _ASM_MEMORY_H_
+
+#define PPC_ATOMIC_ENTRY_BARRIER "sync\n"
+#define PPC_ATOMIC_EXIT_BARRIER  "sync\n"
+
+#endif
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 22:50:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 22:50:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598232.932860 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekJH-0008LV-He; Fri, 08 Sep 2023 22:50:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598232.932860; Fri, 08 Sep 2023 22:50:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekJH-0008LO-Eu; Fri, 08 Sep 2023 22:50:43 +0000
Received: by outflank-mailman (input) for mailman id 598232;
 Fri, 08 Sep 2023 22:50:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6LDZ=EY=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qekJF-000864-QD
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 22:50:41 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 21683165-4e9a-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 00:50:39 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 3AD6C8286A2F;
 Fri,  8 Sep 2023 17:50:38 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id holSBQFDZs8i; Fri,  8 Sep 2023 17:50:37 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id C3F0782866CF;
 Fri,  8 Sep 2023 17:50:36 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id JnSddeLj0QCK; Fri,  8 Sep 2023 17:50:36 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 2FCAB82853EE;
 Fri,  8 Sep 2023 17:50:36 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 21683165-4e9a-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com C3F0782866CF
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694213436; bh=7bQ3Yn03kgP1Qr1VC+5tiDt9zH2qq4PqSG9zPnSiE+4=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=NtmZNxIiztJfZ9pB9DMVRVuwMPjZWDu+fp22TLtAfHpWa2NpHOGQfE32Z94qqeRAJ
	 6Vu8hXRTr1urDs2nZHNVg7p7OajkQkGt7CV+BZaTEp2IITJZz/JAEVPOVGAX/IXEv1
	 lccUenm+859Z5EXpseAEIXqx9j71USWUxdwcWTcI=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v4 0/5] ppc: Enable full Xen build
Date: Fri,  8 Sep 2023 17:50:13 -0500
Message-Id: <cover.1694211900.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Hello all,

This patch series performs all of the additions necessary to drop the
build overrides for PPC and enable the full Xen build. Except in cases
where compatibile implementations already exist (e.g. atomic.h and
bitops.h), the newly added definitions are simple, unimplemented stubs
that just call BUG_ON("unimplemented").

Thanks,
Shawn

--
v4: Address review comments from v3. Add missing CCs.

v3: Address review comments from v2.

v2: Address review comments from v1. Some changes are still pending until
the following patches are merged:
  - [PATCH] mem-sharing: move (x86) / drop (Arm) arch_dump_shared_mem_info()
  https://lists.xen.org/archives/html/xen-devel/2023-08/msg00887.html

  - [PATCH] move max_page and total_pages to common code
  https://lists.xen.org/archives/html/xen-devel/2023-08/msg00874.html

Shawn Anastasio (5):
  xen/ppc: Implement atomic.h
  xen/ppc: Implement bitops.h
  xen/ppc: Define minimal stub headers required for full build
  xen/ppc: Add stub function and symbol definitions
  xen/ppc: Enable full Xen build

 xen/arch/ppc/Kconfig                     |   1 +
 xen/arch/ppc/Makefile                    |  17 +-
 xen/arch/ppc/arch.mk                     |   3 -
 xen/arch/ppc/include/asm/altp2m.h        |  25 ++
 xen/arch/ppc/include/asm/atomic.h        | 385 +++++++++++++++++++++++
 xen/arch/ppc/include/asm/bitops.h        | 332 ++++++++++++++++++-
 xen/arch/ppc/include/asm/bug.h           |   9 +
 xen/arch/ppc/include/asm/cache.h         |   2 +
 xen/arch/ppc/include/asm/config.h        |  10 +
 xen/arch/ppc/include/asm/cpufeature.h    |  10 +
 xen/arch/ppc/include/asm/current.h       |  43 +++
 xen/arch/ppc/include/asm/delay.h         |  12 +
 xen/arch/ppc/include/asm/device.h        |  53 ++++
 xen/arch/ppc/include/asm/div64.h         |  14 +
 xen/arch/ppc/include/asm/domain.h        |  47 +++
 xen/arch/ppc/include/asm/event.h         |  36 +++
 xen/arch/ppc/include/asm/flushtlb.h      |  24 ++
 xen/arch/ppc/include/asm/grant_table.h   |   5 +
 xen/arch/ppc/include/asm/guest_access.h  |  68 ++++
 xen/arch/ppc/include/asm/guest_atomics.h |  23 ++
 xen/arch/ppc/include/asm/hardirq.h       |  19 ++
 xen/arch/ppc/include/asm/hypercall.h     |   5 +
 xen/arch/ppc/include/asm/io.h            |  16 +
 xen/arch/ppc/include/asm/iocap.h         |   8 +
 xen/arch/ppc/include/asm/iommu.h         |   8 +
 xen/arch/ppc/include/asm/irq.h           |  33 ++
 xen/arch/ppc/include/asm/mem_access.h    |   5 +
 xen/arch/ppc/include/asm/memory.h        |  14 +
 xen/arch/ppc/include/asm/mm.h            | 243 +++++++++++++-
 xen/arch/ppc/include/asm/monitor.h       |  43 +++
 xen/arch/ppc/include/asm/nospec.h        |  15 +
 xen/arch/ppc/include/asm/numa.h          |  26 ++
 xen/arch/ppc/include/asm/p2m.h           |  95 ++++++
 xen/arch/ppc/include/asm/page.h          |  18 ++
 xen/arch/ppc/include/asm/paging.h        |   7 +
 xen/arch/ppc/include/asm/pci.h           |   7 +
 xen/arch/ppc/include/asm/percpu.h        |  24 ++
 xen/arch/ppc/include/asm/processor.h     |  10 +
 xen/arch/ppc/include/asm/random.h        |   9 +
 xen/arch/ppc/include/asm/setup.h         |   6 +
 xen/arch/ppc/include/asm/smp.h           |  18 ++
 xen/arch/ppc/include/asm/softirq.h       |   8 +
 xen/arch/ppc/include/asm/spinlock.h      |  15 +
 xen/arch/ppc/include/asm/system.h        | 219 ++++++++++++-
 xen/arch/ppc/include/asm/time.h          |  23 ++
 xen/arch/ppc/include/asm/vm_event.h      |  49 +++
 xen/arch/ppc/include/asm/xenoprof.h      |   0
 xen/arch/ppc/mm-radix.c                  |  44 ++-
 xen/arch/ppc/setup.c                     |   8 +
 xen/arch/ppc/stubs.c                     | 339 ++++++++++++++++++++
 xen/arch/ppc/tlb-radix.c                 |   2 +-
 xen/include/public/hvm/save.h            |   2 +
 xen/include/public/pmu.h                 |   2 +
 xen/include/public/xen.h                 |   2 +
 54 files changed, 2450 insertions(+), 11 deletions(-)
 create mode 100644 xen/arch/ppc/include/asm/altp2m.h
 create mode 100644 xen/arch/ppc/include/asm/atomic.h
 create mode 100644 xen/arch/ppc/include/asm/cpufeature.h
 create mode 100644 xen/arch/ppc/include/asm/current.h
 create mode 100644 xen/arch/ppc/include/asm/delay.h
 create mode 100644 xen/arch/ppc/include/asm/device.h
 create mode 100644 xen/arch/ppc/include/asm/div64.h
 create mode 100644 xen/arch/ppc/include/asm/domain.h
 create mode 100644 xen/arch/ppc/include/asm/event.h
 create mode 100644 xen/arch/ppc/include/asm/flushtlb.h
 create mode 100644 xen/arch/ppc/include/asm/grant_table.h
 create mode 100644 xen/arch/ppc/include/asm/guest_access.h
 create mode 100644 xen/arch/ppc/include/asm/guest_atomics.h
 create mode 100644 xen/arch/ppc/include/asm/hardirq.h
 create mode 100644 xen/arch/ppc/include/asm/hypercall.h
 create mode 100644 xen/arch/ppc/include/asm/io.h
 create mode 100644 xen/arch/ppc/include/asm/iocap.h
 create mode 100644 xen/arch/ppc/include/asm/iommu.h
 create mode 100644 xen/arch/ppc/include/asm/irq.h
 create mode 100644 xen/arch/ppc/include/asm/mem_access.h
 create mode 100644 xen/arch/ppc/include/asm/memory.h
 create mode 100644 xen/arch/ppc/include/asm/monitor.h
 create mode 100644 xen/arch/ppc/include/asm/nospec.h
 create mode 100644 xen/arch/ppc/include/asm/numa.h
 create mode 100644 xen/arch/ppc/include/asm/p2m.h
 create mode 100644 xen/arch/ppc/include/asm/paging.h
 create mode 100644 xen/arch/ppc/include/asm/pci.h
 create mode 100644 xen/arch/ppc/include/asm/percpu.h
 create mode 100644 xen/arch/ppc/include/asm/random.h
 create mode 100644 xen/arch/ppc/include/asm/setup.h
 create mode 100644 xen/arch/ppc/include/asm/smp.h
 create mode 100644 xen/arch/ppc/include/asm/softirq.h
 create mode 100644 xen/arch/ppc/include/asm/spinlock.h
 create mode 100644 xen/arch/ppc/include/asm/time.h
 create mode 100644 xen/arch/ppc/include/asm/vm_event.h
 create mode 100644 xen/arch/ppc/include/asm/xenoprof.h
 create mode 100644 xen/arch/ppc/stubs.c

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 22:50:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 22:50:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598233.932870 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekJI-0000BC-SU; Fri, 08 Sep 2023 22:50:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598233.932870; Fri, 08 Sep 2023 22:50:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekJI-0000Ax-Nq; Fri, 08 Sep 2023 22:50:44 +0000
Received: by outflank-mailman (input) for mailman id 598233;
 Fri, 08 Sep 2023 22:50:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6LDZ=EY=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qekJG-000864-QE
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 22:50:42 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 21ee856a-4e9a-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 00:50:40 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 67A01828541B;
 Fri,  8 Sep 2023 17:50:39 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id NJ-C9KvB_LpH; Fri,  8 Sep 2023 17:50:38 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 8BB758286A4C;
 Fri,  8 Sep 2023 17:50:38 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 6eavcyRfERkQ; Fri,  8 Sep 2023 17:50:38 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 4012C8286A49;
 Fri,  8 Sep 2023 17:50:38 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 21ee856a-4e9a-11ee-8783-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 8BB758286A4C
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694213438; bh=cF5IvHr5u7imGadcwYNiu5y563SLZGH4suAc9S6xZk0=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=RRFo2aFeEiltrNGmq6pCWncxQGOOt5+ulJOM2AwDmT7f663dwsai+A6TdaiawaoVa
	 qtuA9zVe5Vx6HypjQlaDlIV3I9H1E9TZnocSpuzmDF2Pc2Jr9JiuE9mXmUUcGi3S+A
	 ySDtx9aAK4jwyjXjZyZeOvPb7uCn7H0f5IOsBCPI=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v4 5/5] xen/ppc: Enable full Xen build
Date: Fri,  8 Sep 2023 17:50:18 -0500
Message-Id: <e34a18058968ecb37de56e4543cc727516750742.1694211900.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694211900.git.sanastasio@raptorengineering.com>
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Bring ppc's Makefile and arch.mk in line with arm and x86 to disable the
build overrides and enable the full Xen build.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
 xen/arch/ppc/Makefile | 16 +++++++++++++++-
 xen/arch/ppc/arch.mk  |  3 ---
 2 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile
index 6d5569ff64..71feb5e2c4 100644
--- a/xen/arch/ppc/Makefile
+++ b/xen/arch/ppc/Makefile
@@ -11,10 +11,24 @@ $(TARGET): $(TARGET)-syms
 	cp -f $< $@
 
 $(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds
-	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) -o $@
+	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< \
+	    $(objtree)/common/symbols-dummy.o -o $(dot-target).0
+	$(NM) -pa --format=sysv $(dot-target).0 \
+		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
+		> $(dot-target).0.S
+	$(MAKE) $(build)=$(@D) $(dot-target).0.o
+	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< \
+	    $(dot-target).0.o -o $(dot-target).1
+	$(NM) -pa --format=sysv $(dot-target).1 \
+		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
+		> $(dot-target).1.S
+	$(MAKE) $(build)=$(@D) $(dot-target).1.o
+	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) \
+	    $(dot-target).1.o -o $@
 	$(NM) -pa --format=sysv $@ \
 		| $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \
 		> $@.map
+	rm -f $(@D)/.$(@F).[0-9]*
 
 $(obj)/xen.lds: $(src)/xen.lds.S FORCE
 	$(call if_changed_dep,cpp_lds_S)
diff --git a/xen/arch/ppc/arch.mk b/xen/arch/ppc/arch.mk
index d05cbf1df5..917ad0e6a8 100644
--- a/xen/arch/ppc/arch.mk
+++ b/xen/arch/ppc/arch.mk
@@ -7,6 +7,3 @@ CFLAGS += -m64 -mlittle-endian -mcpu=$(ppc-march-y)
 CFLAGS += -mstrict-align -mcmodel=medium -mabi=elfv2 -fPIC -mno-altivec -mno-vsx -msoft-float
 
 LDFLAGS += -m elf64lppc
-
-# TODO: Drop override when more of the build is working
-override ALL_OBJS-y = arch/$(SRCARCH)/built_in.o common/libfdt/built_in.o lib/built_in.o
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 22:50:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 22:50:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598236.932900 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekJO-00013u-T4; Fri, 08 Sep 2023 22:50:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598236.932900; Fri, 08 Sep 2023 22:50:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekJO-00013g-P5; Fri, 08 Sep 2023 22:50:50 +0000
Received: by outflank-mailman (input) for mailman id 598236;
 Fri, 08 Sep 2023 22:50:49 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6LDZ=EY=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qekJM-00010b-VZ
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 22:50:49 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 245d4dfe-4e9a-11ee-9b0d-b553b5be7939;
 Sat, 09 Sep 2023 00:50:44 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 735F982853EE;
 Fri,  8 Sep 2023 17:50:43 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id sGaOG7v8-nDR; Fri,  8 Sep 2023 17:50:38 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 3FDC48286A48;
 Fri,  8 Sep 2023 17:50:38 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id OfgXf3OP8hcz; Fri,  8 Sep 2023 17:50:37 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 6F3CE8286A44;
 Fri,  8 Sep 2023 17:50:37 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 245d4dfe-4e9a-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 3FDC48286A48
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694213438; bh=LVlF+uqRdUYzAWdwGQ3PIEQUbLsv5ftGOqU6gCROblI=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=OQksxsiU1nLk75bpUvPD5m97+1qAoS49YGse86IJ3F1QXu4fFr+by+/jma6tyVYBk
	 gU0fXDZIv+T/UbqdLfD5KnWLzjpt6ttMjIklYCp2lJQKIbiBfXuZPGppADiH3pWm+y
	 Ga+jFQJ4RR+zPlIHjOM5ZZxGEU24OYFeMbU0/fl8=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v4 3/5] xen/ppc: Define minimal stub headers required for full build
Date: Fri,  8 Sep 2023 17:50:16 -0500
Message-Id: <ec21e13fd3de4142d305924a6f5d55ad15745731.1694211900.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694211900.git.sanastasio@raptorengineering.com>
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Additionally, change inclusion of asm/ headers to corresponding xen/ ones
throughout arch/ppc now that they work.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
v4:
  - (device.h) Fix underscore prefixes in DT_DEVICE_START macro
  - (mm.h) Fix padding blanks in newly added *_to_* macros
  - (mm.h) Drop inaccurate comment for virt_to_mfn/mfn_to_virt. The
    implementation of these macros remains unchanged.
  - (mm.h) s/zero/NULL/g in comment of page_info::v::inuse::domain
  - (mm.h) Use uint<N>_t instead of u<N> types in struct page_info
  - (p2m.h) Drop ARM-specific p2m_type_t enumerations
  - (system.h) Fix hard tabs in xchg() macro
  - (system.h) Add missing '\n' in build_xchg inline assembly before
    PPC_ATOMIC_EXIT_BARRIER.
  - (system.h) Fix formatting of switch statements.
  - (system.h) Fix formatting of cmpxchg() macro.
  - (system.h) Fix formatting of mb/rmb/wmb macros
  - (system.h) Drop dead !CONFIG_SMP definition of smp memory barriers
  - (system.h) Replace hand-coded asm memory barriers w/ barrier()
  - (time.h) Fix overly-long definition of force_update_vcpu_system_time

v3:
  - Drop procarea.h
  - Add SPDX headers to all headers touched or added by this patch
  - (altp2m.h) Use ASSERT_UNREACHABLE for function that is meant to
    stay unimplemented
  - (current.h) Consistently use plain C types in struct cpu_info
  - (current.h) Fix formatting of inline asm in get_cpu_info()
  - (device.h) Drop unnecessary DEVICE_GIC enumeration inherited from
    ARM
  - (div64.h) Drop underscore-prefixed macro variables, fix formatting
  - (domain.h) Drop unnecessary space after cast in guest_mode()
  - (guest_access.h) Clean up line wrapping of functions w/ many
    parameters
  - (guest_atomics.h) Avoid overly-long stub macros
  - (grant_table.h) Add include guard + SPDX
  - (hypercall.h) Add include guard + SPDX
  - (mem_access.h) Add include guard + SPDX
  - (mm.h) BUG_ON("unimplemented") for mfn_to_gfn/set_gpfn_from_mfn
  - (mm.h) Define PDX_GROUP_SHIFT in terms of XEN_PT_SHIFT_LVL_3
  - (monitor.h) BUG_ON("unimplemented") for arch_monitor_get_capabilities
  - (system.h) Fix formatting of inline assembly + macros
  - (time.h) Fix too-deep indentation

v2:
  - Use BUG_ON("unimplemented") instead of BUG() for unimplemented functions
    to make searching easier.
  - (altp2m.h) Drop Intel license in favor of an SPDX header
  - (altp2m.h) Drop <xen/sched.h> include in favor of <xen/bug.h> and
    forward declarations of struct domain and struct vcpu.
  - (bug.h) Add TODO comments above BUG and BUG_FRAME implementations
  - (desc.h) Drop desc.h
  - (mm.h) Drop <asm/config.h> include
  - (mm.h) Drop PGC_static definition
  - (mm.h) Drop max_page definition
  - (mm.h/mm-radix.c) Drop total_pages definition
  - (monitor.h) Drop <xen/sched.h> and <public/domctl.h> includes in favor
    of just <xen/errno.h>
  - (page.h) Drop PAGE_ALIGN definition
  - (percpu.h) Drop <xen/types.h> include
  - (procarea.h) Drop license text in favor of SPDX header
  - (procarea.h) Drop unnecessary forward declarations and <xen/types.h>
    include
  - (processor.h) Fix macro parameter naming (drop leading underscore)
  - (processor.h) Add explanation comment to cpu_relax()
  - (regs.h) Drop stray hunk adding <xen/types.h> include
  - (system.h) Drop license text in favor of SPDX header
  - (system.h) Drop <xen/config.h> include
  - (opal.c) Drop stray hunk changing opal.c includes

 xen/arch/ppc/Kconfig                     |   1 +
 xen/arch/ppc/include/asm/altp2m.h        |  25 +++
 xen/arch/ppc/include/asm/bug.h           |   9 +
 xen/arch/ppc/include/asm/cache.h         |   2 +
 xen/arch/ppc/include/asm/config.h        |  10 +
 xen/arch/ppc/include/asm/cpufeature.h    |  10 +
 xen/arch/ppc/include/asm/current.h       |  43 ++++
 xen/arch/ppc/include/asm/delay.h         |  12 ++
 xen/arch/ppc/include/asm/device.h        |  53 +++++
 xen/arch/ppc/include/asm/div64.h         |  14 ++
 xen/arch/ppc/include/asm/domain.h        |  47 +++++
 xen/arch/ppc/include/asm/event.h         |  36 ++++
 xen/arch/ppc/include/asm/flushtlb.h      |  24 +++
 xen/arch/ppc/include/asm/grant_table.h   |   5 +
 xen/arch/ppc/include/asm/guest_access.h  |  68 +++++++
 xen/arch/ppc/include/asm/guest_atomics.h |  23 +++
 xen/arch/ppc/include/asm/hardirq.h       |  19 ++
 xen/arch/ppc/include/asm/hypercall.h     |   5 +
 xen/arch/ppc/include/asm/io.h            |  16 ++
 xen/arch/ppc/include/asm/iocap.h         |   8 +
 xen/arch/ppc/include/asm/iommu.h         |   8 +
 xen/arch/ppc/include/asm/irq.h           |  33 +++
 xen/arch/ppc/include/asm/mem_access.h    |   5 +
 xen/arch/ppc/include/asm/mm.h            | 243 ++++++++++++++++++++++-
 xen/arch/ppc/include/asm/monitor.h       |  43 ++++
 xen/arch/ppc/include/asm/nospec.h        |  15 ++
 xen/arch/ppc/include/asm/numa.h          |  26 +++
 xen/arch/ppc/include/asm/p2m.h           |  95 +++++++++
 xen/arch/ppc/include/asm/page.h          |  18 ++
 xen/arch/ppc/include/asm/paging.h        |   7 +
 xen/arch/ppc/include/asm/pci.h           |   7 +
 xen/arch/ppc/include/asm/percpu.h        |  24 +++
 xen/arch/ppc/include/asm/processor.h     |  10 +
 xen/arch/ppc/include/asm/random.h        |   9 +
 xen/arch/ppc/include/asm/setup.h         |   6 +
 xen/arch/ppc/include/asm/smp.h           |  18 ++
 xen/arch/ppc/include/asm/softirq.h       |   8 +
 xen/arch/ppc/include/asm/spinlock.h      |  15 ++
 xen/arch/ppc/include/asm/system.h        | 219 +++++++++++++++++++-
 xen/arch/ppc/include/asm/time.h          |  23 +++
 xen/arch/ppc/include/asm/vm_event.h      |  49 +++++
 xen/arch/ppc/include/asm/xenoprof.h      |   0
 xen/arch/ppc/mm-radix.c                  |   2 +-
 xen/arch/ppc/tlb-radix.c                 |   2 +-
 xen/include/public/hvm/save.h            |   2 +
 xen/include/public/pmu.h                 |   2 +
 xen/include/public/xen.h                 |   2 +
 47 files changed, 1317 insertions(+), 4 deletions(-)
 create mode 100644 xen/arch/ppc/include/asm/altp2m.h
 create mode 100644 xen/arch/ppc/include/asm/cpufeature.h
 create mode 100644 xen/arch/ppc/include/asm/current.h
 create mode 100644 xen/arch/ppc/include/asm/delay.h
 create mode 100644 xen/arch/ppc/include/asm/device.h
 create mode 100644 xen/arch/ppc/include/asm/div64.h
 create mode 100644 xen/arch/ppc/include/asm/domain.h
 create mode 100644 xen/arch/ppc/include/asm/event.h
 create mode 100644 xen/arch/ppc/include/asm/flushtlb.h
 create mode 100644 xen/arch/ppc/include/asm/grant_table.h
 create mode 100644 xen/arch/ppc/include/asm/guest_access.h
 create mode 100644 xen/arch/ppc/include/asm/guest_atomics.h
 create mode 100644 xen/arch/ppc/include/asm/hardirq.h
 create mode 100644 xen/arch/ppc/include/asm/hypercall.h
 create mode 100644 xen/arch/ppc/include/asm/io.h
 create mode 100644 xen/arch/ppc/include/asm/iocap.h
 create mode 100644 xen/arch/ppc/include/asm/iommu.h
 create mode 100644 xen/arch/ppc/include/asm/irq.h
 create mode 100644 xen/arch/ppc/include/asm/mem_access.h
 create mode 100644 xen/arch/ppc/include/asm/monitor.h
 create mode 100644 xen/arch/ppc/include/asm/nospec.h
 create mode 100644 xen/arch/ppc/include/asm/numa.h
 create mode 100644 xen/arch/ppc/include/asm/p2m.h
 create mode 100644 xen/arch/ppc/include/asm/paging.h
 create mode 100644 xen/arch/ppc/include/asm/pci.h
 create mode 100644 xen/arch/ppc/include/asm/percpu.h
 create mode 100644 xen/arch/ppc/include/asm/random.h
 create mode 100644 xen/arch/ppc/include/asm/setup.h
 create mode 100644 xen/arch/ppc/include/asm/smp.h
 create mode 100644 xen/arch/ppc/include/asm/softirq.h
 create mode 100644 xen/arch/ppc/include/asm/spinlock.h
 create mode 100644 xen/arch/ppc/include/asm/time.h
 create mode 100644 xen/arch/ppc/include/asm/vm_event.h
 create mode 100644 xen/arch/ppc/include/asm/xenoprof.h

diff --git a/xen/arch/ppc/Kconfig b/xen/arch/ppc/Kconfig
index ab116ffb2a..a6eae597af 100644
--- a/xen/arch/ppc/Kconfig
+++ b/xen/arch/ppc/Kconfig
@@ -1,6 +1,7 @@
 config PPC
 	def_bool y
 	select HAS_DEVICE_TREE
+	select HAS_PDX

 config PPC64
 	def_bool y
diff --git a/xen/arch/ppc/include/asm/altp2m.h b/xen/arch/ppc/include/asm/altp2m.h
new file mode 100644
index 0000000000..bd5c9aa415
--- /dev/null
+++ b/xen/arch/ppc/include/asm/altp2m.h
@@ -0,0 +1,25 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_ALTP2M_H__
+#define __ASM_PPC_ALTP2M_H__
+
+#include <xen/bug.h>
+
+struct domain;
+struct vcpu;
+
+/* Alternate p2m on/off per domain */
+static inline bool altp2m_active(const struct domain *d)
+{
+    /* Not implemented on PPC. */
+    return false;
+}
+
+/* Alternate p2m VCPU */
+static inline uint16_t altp2m_vcpu_idx(const struct vcpu *v)
+{
+    /* Not implemented on PPC, should not be reached. */
+    ASSERT_UNREACHABLE();
+    return 0;
+}
+
+#endif /* __ASM_PPC_ALTP2M_H__ */
diff --git a/xen/arch/ppc/include/asm/bug.h b/xen/arch/ppc/include/asm/bug.h
index e5e874b31c..35d4568402 100644
--- a/xen/arch/ppc/include/asm/bug.h
+++ b/xen/arch/ppc/include/asm/bug.h
@@ -4,6 +4,7 @@
 #define _ASM_PPC_BUG_H

 #include <xen/stringify.h>
+#include <asm/processor.h>

 /*
  * Power ISA guarantees that an instruction consisting of all zeroes is
@@ -15,4 +16,12 @@

 #define BUG_FN_REG r0

+/* TODO: implement this properly */
+#define BUG() do { \
+    die(); \
+} while (0)
+
+/* TODO: implement this properly */
+#define BUG_FRAME(type, line, ptr, second_frame, msg) do { } while (0)
+
 #endif /* _ASM_PPC_BUG_H */
diff --git a/xen/arch/ppc/include/asm/cache.h b/xen/arch/ppc/include/asm/cache.h
index 8a0a6b7b17..0d7323d789 100644
--- a/xen/arch/ppc/include/asm/cache.h
+++ b/xen/arch/ppc/include/asm/cache.h
@@ -3,4 +3,6 @@
 #ifndef _ASM_PPC_CACHE_H
 #define _ASM_PPC_CACHE_H

+#define __read_mostly __section(".data.read_mostly")
+
 #endif /* _ASM_PPC_CACHE_H */
diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm/config.h
index 30438d22d2..a11a09c570 100644
--- a/xen/arch/ppc/include/asm/config.h
+++ b/xen/arch/ppc/include/asm/config.h
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #ifndef __PPC_CONFIG_H__
 #define __PPC_CONFIG_H__

@@ -41,6 +42,15 @@

 #define XEN_VIRT_START _AC(0xc000000000000000, UL)

+#define VMAP_VIRT_START (XEN_VIRT_START + GB(1))
+#define VMAP_VIRT_SIZE  GB(1)
+
+#define FRAMETABLE_VIRT_START  (XEN_VIRT_START + GB(32))
+#define FRAMETABLE_SIZE        GB(32)
+#define FRAMETABLE_NR          (FRAMETABLE_SIZE / sizeof(*frame_table))
+
+#define HYPERVISOR_VIRT_START  XEN_VIRT_START
+
 #define SMP_CACHE_BYTES (1 << 6)

 #define STACK_ORDER 0
diff --git a/xen/arch/ppc/include/asm/cpufeature.h b/xen/arch/ppc/include/asm/cpufeature.h
new file mode 100644
index 0000000000..1c5946512b
--- /dev/null
+++ b/xen/arch/ppc/include/asm/cpufeature.h
@@ -0,0 +1,10 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_CPUFEATURE_H__
+#define __ASM_PPC_CPUFEATURE_H__
+
+static inline int cpu_nr_siblings(unsigned int cpu)
+{
+    return 1;
+}
+
+#endif /* __ASM_PPC_CPUFEATURE_H__ */
diff --git a/xen/arch/ppc/include/asm/current.h b/xen/arch/ppc/include/asm/current.h
new file mode 100644
index 0000000000..0ca06033f9
--- /dev/null
+++ b/xen/arch/ppc/include/asm/current.h
@@ -0,0 +1,43 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_CURRENT_H__
+#define __ASM_PPC_CURRENT_H__
+
+#include <xen/percpu.h>
+
+#ifndef __ASSEMBLY__
+
+struct vcpu;
+
+/* Which VCPU is "current" on this PCPU. */
+DECLARE_PER_CPU(struct vcpu *, curr_vcpu);
+
+#define current            (this_cpu(curr_vcpu))
+#define set_current(vcpu)  do { current = (vcpu); } while (0)
+#define get_cpu_current(cpu)  (per_cpu(curr_vcpu, cpu))
+
+/* Per-VCPU state that lives at the top of the stack */
+struct cpu_info {
+    struct cpu_user_regs guest_cpu_user_regs;
+    unsigned long elr;
+    unsigned int flags;
+};
+
+static inline struct cpu_info *get_cpu_info(void)
+{
+#ifdef __clang__
+    unsigned long sp;
+
+    asm ( "mr %0, 1" : "=r" (sp) );
+#else
+    register unsigned long sp asm ("r1");
+#endif
+
+    return (struct cpu_info *)((sp & ~(STACK_SIZE - 1)) +
+                               STACK_SIZE - sizeof(struct cpu_info));
+}
+
+#define guest_cpu_user_regs() (&get_cpu_info()->guest_cpu_user_regs)
+
+#endif /* __ASSEMBLY__ */
+
+#endif /* __ASM_PPC_CURRENT_H__ */
diff --git a/xen/arch/ppc/include/asm/delay.h b/xen/arch/ppc/include/asm/delay.h
new file mode 100644
index 0000000000..da6635888b
--- /dev/null
+++ b/xen/arch/ppc/include/asm/delay.h
@@ -0,0 +1,12 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DELAY_H__
+#define __ASM_PPC_DELAY_H__
+
+#include <xen/lib.h>
+
+static inline void udelay(unsigned long usecs)
+{
+    BUG_ON("unimplemented");
+}
+
+#endif /* __ASM_PPC_DELAY_H__ */
diff --git a/xen/arch/ppc/include/asm/device.h b/xen/arch/ppc/include/asm/device.h
new file mode 100644
index 0000000000..8253e61d51
--- /dev/null
+++ b/xen/arch/ppc/include/asm/device.h
@@ -0,0 +1,53 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DEVICE_H__
+#define __ASM_PPC_DEVICE_H__
+
+enum device_type
+{
+    DEV_DT,
+    DEV_PCI,
+};
+
+struct device {
+    enum device_type type;
+#ifdef CONFIG_HAS_DEVICE_TREE
+    struct dt_device_node *of_node; /* Used by drivers imported from Linux */
+#endif
+};
+
+enum device_class
+{
+    DEVICE_SERIAL,
+    DEVICE_IOMMU,
+    DEVICE_PCI_HOSTBRIDGE,
+    /* Use for error */
+    DEVICE_UNKNOWN,
+};
+
+struct device_desc {
+    /* Device name */
+    const char *name;
+    /* Device class */
+    enum device_class class;
+    /* List of devices supported by this driver */
+    const struct dt_device_match *dt_match;
+    /*
+     * Device initialization.
+     *
+     * -EAGAIN is used to indicate that device probing is deferred.
+     */
+    int (*init)(struct dt_device_node *dev, const void *data);
+};
+
+typedef struct device device_t;
+
+#define DT_DEVICE_START(name_, namestr_, class_)                    \
+static const struct device_desc __dev_desc_##name_ __used           \
+__section(".dev.info") = {                                          \
+    .name = namestr_,                                               \
+    .class = class_,                                                \
+
+#define DT_DEVICE_END                                               \
+};
+
+#endif /* __ASM_PPC_DEVICE_H__ */
diff --git a/xen/arch/ppc/include/asm/div64.h b/xen/arch/ppc/include/asm/div64.h
new file mode 100644
index 0000000000..d213e50585
--- /dev/null
+++ b/xen/arch/ppc/include/asm/div64.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DIV64_H__
+#define __ASM_PPC_DIV64_H__
+
+#include <xen/types.h>
+
+#define do_div(n, base) ({                       \
+    uint32_t base_ = (base);                     \
+    uint32_t rem_ = (uint64_t)(n) % base_;       \
+    (n) = (uint64_t)(n) / base_;                 \
+    rem_;                                        \
+})
+
+#endif /* __ASM_PPC_DIV64_H__ */
diff --git a/xen/arch/ppc/include/asm/domain.h b/xen/arch/ppc/include/asm/domain.h
new file mode 100644
index 0000000000..573276d0a8
--- /dev/null
+++ b/xen/arch/ppc/include/asm/domain.h
@@ -0,0 +1,47 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DOMAIN_H__
+#define __ASM_PPC_DOMAIN_H__
+
+#include <xen/xmalloc.h>
+#include <public/hvm/params.h>
+
+struct hvm_domain
+{
+    uint64_t              params[HVM_NR_PARAMS];
+};
+
+#define is_domain_direct_mapped(d) ((void)(d), 0)
+
+/* TODO: Implement */
+#define guest_mode(r) ({ (void)(r); BUG_ON("unimplemented"); 0; })
+
+struct arch_vcpu_io {
+};
+
+struct arch_vcpu {
+};
+
+struct arch_domain {
+    struct hvm_domain hvm;
+};
+
+#include <xen/sched.h>
+
+static inline struct vcpu_guest_context *alloc_vcpu_guest_context(void)
+{
+    return xmalloc(struct vcpu_guest_context);
+}
+
+static inline void free_vcpu_guest_context(struct vcpu_guest_context *vgc)
+{
+    xfree(vgc);
+}
+
+struct guest_memory_policy {};
+static inline void update_guest_memory_policy(struct vcpu *v,
+                                              struct guest_memory_policy *gmp)
+{}
+
+static inline void arch_vcpu_block(struct vcpu *v) {}
+
+#endif /* __ASM_PPC_DOMAIN_H__ */
diff --git a/xen/arch/ppc/include/asm/event.h b/xen/arch/ppc/include/asm/event.h
new file mode 100644
index 0000000000..1b95ee4f61
--- /dev/null
+++ b/xen/arch/ppc/include/asm/event.h
@@ -0,0 +1,36 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_EVENT_H__
+#define __ASM_PPC_EVENT_H__
+
+#include <xen/lib.h>
+
+/* TODO: implement */
+static inline void vcpu_kick(struct vcpu *v) { BUG_ON("unimplemented"); }
+static inline void vcpu_mark_events_pending(struct vcpu *v) { BUG_ON("unimplemented"); }
+static inline void vcpu_update_evtchn_irq(struct vcpu *v) { BUG_ON("unimplemented"); }
+static inline void vcpu_block_unless_event_pending(struct vcpu *v) { BUG_ON("unimplemented"); }
+
+static inline int vcpu_event_delivery_is_enabled(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+/* No arch specific virq definition now. Default to global. */
+static inline bool arch_virq_is_global(unsigned int virq)
+{
+    return true;
+}
+
+static inline int local_events_need_delivery(void)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+static inline void local_event_delivery_enable(void)
+{
+    BUG_ON("unimplemented");
+}
+
+#endif /* __ASM_PPC_EVENT_H__ */
diff --git a/xen/arch/ppc/include/asm/flushtlb.h b/xen/arch/ppc/include/asm/flushtlb.h
new file mode 100644
index 0000000000..afcb740783
--- /dev/null
+++ b/xen/arch/ppc/include/asm/flushtlb.h
@@ -0,0 +1,24 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_FLUSHTLB_H__
+#define __ASM_PPC_FLUSHTLB_H__
+
+#include <xen/cpumask.h>
+
+/*
+ * Filter the given set of CPUs, removing those that definitely flushed their
+ * TLB since @page_timestamp.
+ */
+/* XXX lazy implementation just doesn't clear anything.... */
+static inline void tlbflush_filter(cpumask_t *mask, uint32_t page_timestamp) {}
+
+#define tlbflush_current_time()                 (0)
+
+static inline void page_set_tlbflush_timestamp(struct page_info *page)
+{
+    page->tlbflush_timestamp = tlbflush_current_time();
+}
+
+/* Flush specified CPUs' TLBs */
+void arch_flush_tlb_mask(const cpumask_t *mask);
+
+#endif /* __ASM_PPC_FLUSHTLB_H__ */
diff --git a/xen/arch/ppc/include/asm/grant_table.h b/xen/arch/ppc/include/asm/grant_table.h
new file mode 100644
index 0000000000..d0ff58dd3d
--- /dev/null
+++ b/xen/arch/ppc/include/asm/grant_table.h
@@ -0,0 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_GRANT_TABLE_H__
+#define __ASM_PPC_GRANT_TABLE_H__
+
+#endif /* __ASM_PPC_GRANT_TABLE_H__ */
diff --git a/xen/arch/ppc/include/asm/guest_access.h b/xen/arch/ppc/include/asm/guest_access.h
new file mode 100644
index 0000000000..6546931911
--- /dev/null
+++ b/xen/arch/ppc/include/asm/guest_access.h
@@ -0,0 +1,68 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_GUEST_ACCESS_H__
+#define __ASM_PPC_GUEST_ACCESS_H__
+
+#include <xen/mm.h>
+
+/* TODO */
+
+static inline unsigned long raw_copy_to_guest(
+    void *to,
+    const void *from,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+static inline unsigned long raw_copy_to_guest_flush_dcache(
+    void *to,
+    const void *from,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+static inline unsigned long raw_copy_from_guest(
+    void *to,
+    const void *from,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+static inline unsigned long raw_clear_guest(void *to, unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+
+/* Copy data to guest physical address, then clean the region. */
+static inline unsigned long copy_to_guest_phys_flush_dcache(
+    struct domain *d,
+    paddr_t gpa,
+    void *buf,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+
+static inline int access_guest_memory_by_gpa(
+    struct domain *d,
+    paddr_t gpa,
+    void *buf,
+    uint32_t size,
+    bool is_write)
+{
+    BUG_ON("unimplemented");
+}
+
+
+#define __raw_copy_to_guest raw_copy_to_guest
+#define __raw_copy_from_guest raw_copy_from_guest
+#define __raw_clear_guest raw_clear_guest
+
+/*
+ * Pre-validate a guest handle.
+ * Allows use of faster __copy_* functions.
+ */
+/* All PPC guests are paging mode external and hence safe */
+#define guest_handle_okay(hnd, nr) (1)
+#define guest_handle_subrange_okay(hnd, first, last) (1)
+
+#endif /* __ASM_PPC_GUEST_ACCESS_H__ */
diff --git a/xen/arch/ppc/include/asm/guest_atomics.h b/xen/arch/ppc/include/asm/guest_atomics.h
new file mode 100644
index 0000000000..1190e10bbb
--- /dev/null
+++ b/xen/arch/ppc/include/asm/guest_atomics.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_GUEST_ATOMICS_H__
+#define __ASM_PPC_GUEST_ATOMICS_H__
+
+#include <xen/lib.h>
+
+/* TODO: implement */
+#define unimplemented_guest_bit_op(d, nr, p) ({                                \
+    (void)(d);                                                                 \
+    (void)(nr);                                                                \
+    (void)(p);                                                                 \
+    BUG_ON("unimplemented");                                                   \
+    false;                                                                     \
+})
+
+#define guest_test_bit(d, nr, p)            unimplemented_guest_bit_op(d, nr, p)
+#define guest_clear_bit(d, nr, p)           unimplemented_guest_bit_op(d, nr, p)
+#define guest_set_bit(d, nr, p)             unimplemented_guest_bit_op(d, nr, p)
+#define guest_test_and_set_bit(d, nr, p)    unimplemented_guest_bit_op(d, nr, p)
+#define guest_test_and_clear_bit(d, nr, p)  unimplemented_guest_bit_op(d, nr, p)
+#define guest_test_and_change_bit(d, nr, p) unimplemented_guest_bit_op(d, nr, p)
+
+#endif /* __ASM_PPC_GUEST_ATOMICS_H__ */
diff --git a/xen/arch/ppc/include/asm/hardirq.h b/xen/arch/ppc/include/asm/hardirq.h
new file mode 100644
index 0000000000..343efc7e69
--- /dev/null
+++ b/xen/arch/ppc/include/asm/hardirq.h
@@ -0,0 +1,19 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_HARDIRQ_H__
+#define __ASM_PPC_HARDIRQ_H__
+
+#include <xen/cache.h>
+
+typedef struct {
+        unsigned long __softirq_pending;
+        unsigned int __local_irq_count;
+} __cacheline_aligned irq_cpustat_t;
+
+#include <xen/irq_cpustat.h>    /* Standard mappings for irq_cpustat_t above */
+
+#define in_irq() (local_irq_count(smp_processor_id()) != 0)
+
+#define irq_enter()     (local_irq_count(smp_processor_id())++)
+#define irq_exit()      (local_irq_count(smp_processor_id())--)
+
+#endif /* __ASM_PPC_HARDIRQ_H__ */
diff --git a/xen/arch/ppc/include/asm/hypercall.h b/xen/arch/ppc/include/asm/hypercall.h
new file mode 100644
index 0000000000..1e8ca0ce9c
--- /dev/null
+++ b/xen/arch/ppc/include/asm/hypercall.h
@@ -0,0 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_HYPERCALL_H__
+#define __ASM_PPC_HYPERCALL_H__
+
+#endif /* __ASM_PPC_HYPERCALL_H__ */
diff --git a/xen/arch/ppc/include/asm/io.h b/xen/arch/ppc/include/asm/io.h
new file mode 100644
index 0000000000..85b5b27157
--- /dev/null
+++ b/xen/arch/ppc/include/asm/io.h
@@ -0,0 +1,16 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IO_H__
+#define __ASM_PPC_IO_H__
+
+#include <xen/lib.h>
+
+/* TODO */
+#define readb(c)        ({ (void)(c); BUG_ON("unimplemented"); 0; })
+#define readw(c)        ({ (void)(c); BUG_ON("unimplemented"); 0; })
+#define readl(c)        ({ (void)(c); BUG_ON("unimplemented"); 0; })
+
+#define writeb(v,c)     ({ (void)(v); (void)(c); BUG_ON("unimplemented"); })
+#define writew(v,c)     ({ (void)(v); (void)(c); BUG_ON("unimplemented"); })
+#define writel(v,c)     ({ (void)(v); (void)(c); BUG_ON("unimplemented"); })
+
+#endif /* __ASM_PPC_IO_H__ */
diff --git a/xen/arch/ppc/include/asm/iocap.h b/xen/arch/ppc/include/asm/iocap.h
new file mode 100644
index 0000000000..76bf13a70f
--- /dev/null
+++ b/xen/arch/ppc/include/asm/iocap.h
@@ -0,0 +1,8 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IOCAP_H__
+#define __ASM_PPC_IOCAP_H__
+
+#define cache_flush_permitted(d)                        \
+    (!rangeset_is_empty((d)->iomem_caps))
+
+#endif /* __ASM_PPC_IOCAP_H__ */
diff --git a/xen/arch/ppc/include/asm/iommu.h b/xen/arch/ppc/include/asm/iommu.h
new file mode 100644
index 0000000000..024ead3473
--- /dev/null
+++ b/xen/arch/ppc/include/asm/iommu.h
@@ -0,0 +1,8 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IOMMU_H__
+#define __ASM_PPC_IOMMU_H__
+
+struct arch_iommu {
+};
+
+#endif /* __ASM_PPC_IOMMU_H__ */
diff --git a/xen/arch/ppc/include/asm/irq.h b/xen/arch/ppc/include/asm/irq.h
new file mode 100644
index 0000000000..5c37d0cf25
--- /dev/null
+++ b/xen/arch/ppc/include/asm/irq.h
@@ -0,0 +1,33 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IRQ_H__
+#define __ASM_PPC_IRQ_H__
+
+#include <xen/lib.h>
+#include <xen/device_tree.h>
+#include <public/device_tree_defs.h>
+
+/* TODO */
+#define nr_irqs 0U
+#define nr_static_irqs 0
+#define arch_hwdom_irqs(domid) 0U
+
+#define domain_pirq_to_irq(d, pirq) (pirq)
+
+struct arch_pirq {
+};
+
+struct arch_irq_desc {
+    unsigned int type;
+};
+
+static inline void arch_move_irqs(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+static inline int platform_get_irq(const struct dt_device_node *device, int index)
+{
+    BUG_ON("unimplemented");
+}
+
+#endif /* __ASM_PPC_IRQ_H__ */
diff --git a/xen/arch/ppc/include/asm/mem_access.h b/xen/arch/ppc/include/asm/mem_access.h
new file mode 100644
index 0000000000..e7986dfdbd
--- /dev/null
+++ b/xen/arch/ppc/include/asm/mem_access.h
@@ -0,0 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_MEM_ACCESS_H__
+#define __ASM_PPC_MEM_ACCESS_H__
+
+#endif /* __ASM_PPC_MEM_ACCESS_H__ */
diff --git a/xen/arch/ppc/include/asm/mm.h b/xen/arch/ppc/include/asm/mm.h
index c85a7ed686..a433936076 100644
--- a/xen/arch/ppc/include/asm/mm.h
+++ b/xen/arch/ppc/include/asm/mm.h
@@ -1,10 +1,25 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #ifndef _ASM_PPC_MM_H
 #define _ASM_PPC_MM_H

+#include <public/xen.h>
+#include <xen/pdx.h>
+#include <xen/types.h>
+#include <asm/config.h>
 #include <asm/page-bits.h>
+#include <asm/page.h>
+
+void setup_initial_pagetables(void);

 #define pfn_to_paddr(pfn) ((paddr_t)(pfn) << PAGE_SHIFT)
 #define paddr_to_pfn(pa)  ((unsigned long)((pa) >> PAGE_SHIFT))
+#define paddr_to_pdx(pa)  mfn_to_pdx(maddr_to_mfn(pa))
+#define gfn_to_gaddr(gfn) pfn_to_paddr(gfn_x(gfn))
+#define gaddr_to_gfn(ga)  _gfn(paddr_to_pfn(ga))
+#define mfn_to_maddr(mfn) pfn_to_paddr(mfn_x(mfn))
+#define maddr_to_mfn(ma)  _mfn(paddr_to_pfn(ma))
+#define vmap_to_mfn(va)   maddr_to_mfn(virt_to_maddr((vaddr_t)va))
+#define vmap_to_page(va)  mfn_to_page(vmap_to_mfn(va))

 #define virt_to_maddr(va) ((paddr_t)((vaddr_t)(va) & PADDR_MASK))
 #define maddr_to_virt(pa) ((void *)((paddr_t)(pa) | XEN_VIRT_START))
@@ -13,6 +28,232 @@
 #define __pa(x)             (virt_to_maddr(x))
 #define __va(x)             (maddr_to_virt(x))

-void setup_initial_pagetables(void);
+/* Convert between Xen-heap virtual addresses and machine frame numbers. */
+#define __virt_to_mfn(va) (virt_to_maddr(va) >> PAGE_SHIFT)
+#define __mfn_to_virt(mfn) (maddr_to_virt((paddr_t)(mfn) << PAGE_SHIFT))
+
+/* Convert between Xen-heap virtual addresses and page-info structures. */
+static inline struct page_info *virt_to_page(const void *v)
+{
+    BUG_ON("unimplemented");
+    return NULL;
+}
+
+#define virt_to_mfn(va)     __virt_to_mfn(va)
+#define mfn_to_virt(mfn)    __mfn_to_virt(mfn)
+
+#define PG_shift(idx)   (BITS_PER_LONG - (idx))
+#define PG_mask(x, idx) (x ## UL << PG_shift(idx))
+
+#define PGT_none          PG_mask(0, 1)  /* no special uses of this page   */
+#define PGT_writable_page PG_mask(1, 1)  /* has writable mappings?         */
+#define PGT_type_mask     PG_mask(1, 1)  /* Bits 31 or 63.                 */
+
+ /* 2-bit count of uses of this frame as its current type. */
+#define PGT_count_mask    PG_mask(3, 3)
+
+/* Cleared when the owning guest 'frees' this page. */
+#define _PGC_allocated    PG_shift(1)
+#define PGC_allocated     PG_mask(1, 1)
+/* Page is Xen heap? */
+#define _PGC_xen_heap     PG_shift(2)
+#define PGC_xen_heap      PG_mask(1, 2)
+/* Page is broken? */
+#define _PGC_broken       PG_shift(7)
+#define PGC_broken        PG_mask(1, 7)
+ /* Mutually-exclusive page states: { inuse, offlining, offlined, free }. */
+#define PGC_state         PG_mask(3, 9)
+#define PGC_state_inuse   PG_mask(0, 9)
+#define PGC_state_offlining PG_mask(1, 9)
+#define PGC_state_offlined PG_mask(2, 9)
+#define PGC_state_free    PG_mask(3, 9)
+#define page_state_is(pg, st) (((pg)->count_info&PGC_state) == PGC_state_##st)
+/* Page is not reference counted */
+#define _PGC_extra        PG_shift(10)
+#define PGC_extra         PG_mask(1, 10)
+
+/* Count of references to this frame. */
+#define PGC_count_width   PG_shift(10)
+#define PGC_count_mask    ((1UL<<PGC_count_width)-1)
+
+/*
+ * Page needs to be scrubbed. Since this bit can only be set on a page that is
+ * free (i.e. in PGC_state_free) we can reuse PGC_allocated bit.
+ */
+#define _PGC_need_scrub   _PGC_allocated
+#define PGC_need_scrub    PGC_allocated
+
+#define is_xen_heap_page(page) ((page)->count_info & PGC_xen_heap)
+#define is_xen_heap_mfn(mfn) \
+    (mfn_valid(mfn) && is_xen_heap_page(mfn_to_page(mfn)))
+
+#define is_xen_fixed_mfn(mfn)                                   \
+    ((mfn_to_maddr(mfn) >= virt_to_maddr((vaddr_t)_start)) &&           \
+     (mfn_to_maddr(mfn) <= virt_to_maddr((vaddr_t)_end - 1)))
+
+#define page_get_owner(_p)    (_p)->v.inuse.domain
+#define page_set_owner(_p,_d) ((_p)->v.inuse.domain = (_d))
+
+/* TODO: implement */
+#define mfn_valid(mfn) ({ (void) (mfn); 0; })
+
+#define domain_set_alloc_bitsize(d) ((void)(d))
+#define domain_clamp_alloc_bitsize(d, b) (b)
+
+#define PFN_ORDER(pfn_) ((pfn_)->v.free.order)
+
+struct page_info
+{
+    /* Each frame can be threaded onto a doubly-linked list. */
+    struct page_list_entry list;
+
+    /* Reference count and various PGC_xxx flags and fields. */
+    unsigned long count_info;
+
+    /* Context-dependent fields follow... */
+    union {
+        /* Page is in use: ((count_info & PGC_count_mask) != 0). */
+        struct {
+            /* Type reference count and various PGT_xxx flags and fields. */
+            unsigned long type_info;
+        } inuse;
+        /* Page is on a free list: ((count_info & PGC_count_mask) == 0). */
+        union {
+            struct {
+                /*
+                 * Index of the first *possibly* unscrubbed page in the buddy.
+                 * One more bit than maximum possible order to accommodate
+                 * INVALID_DIRTY_IDX.
+                 */
+#define INVALID_DIRTY_IDX ((1UL << (MAX_ORDER + 1)) - 1)
+                unsigned long first_dirty:MAX_ORDER + 1;
+
+                /* Do TLBs need flushing for safety before next page use? */
+                bool need_tlbflush:1;
+
+#define BUDDY_NOT_SCRUBBING    0
+#define BUDDY_SCRUBBING        1
+#define BUDDY_SCRUB_ABORT      2
+                unsigned long scrub_state:2;
+            };
+
+            unsigned long val;
+        } free;
+
+    } u;
+
+    union {
+        /* Page is in use, but not as a shadow. */
+        struct {
+            /* Owner of this page (NULL if page is anonymous). */
+            struct domain *domain;
+        } inuse;
+
+        /* Page is on a free list. */
+        struct {
+            /* Order-size of the free chunk this page is the head of. */
+            unsigned int order;
+        } free;
+
+    } v;
+
+    union {
+        /*
+         * Timestamp from 'TLB clock', used to avoid extra safety flushes.
+         * Only valid for: a) free pages, and b) pages with zero type count
+         */
+        uint32_t tlbflush_timestamp;
+    };
+    uint64_t pad;
+};
+
+
+#define FRAMETABLE_VIRT_START  (XEN_VIRT_START + GB(32))
+#define frame_table ((struct page_info *)FRAMETABLE_VIRT_START)
+
+/* PDX of the first page in the frame table. */
+extern unsigned long frametable_base_pdx;
+
+/* Convert between machine frame numbers and page-info structures. */
+#define mfn_to_page(mfn)                                            \
+    (frame_table + (mfn_to_pdx(mfn) - frametable_base_pdx))
+#define page_to_mfn(pg)                                             \
+    pdx_to_mfn((unsigned long)((pg) - frame_table) + frametable_base_pdx)
+
+static inline void *page_to_virt(const struct page_info *pg)
+{
+    return mfn_to_virt(mfn_x(page_to_mfn(pg)));
+}
+
+/*
+ * Common code requires get_page_type and put_page_type.
+ * We don't care about typecounts so we just do the minimum to make it
+ * happy.
+ */
+static inline int get_page_type(struct page_info *page, unsigned long type)
+{
+    return 1;
+}
+
+static inline void put_page_type(struct page_info *page)
+{
+    return;
+}
+
+/* TODO */
+static inline bool get_page_nr(struct page_info *page, const struct domain *domain,
+                        unsigned long nr)
+{
+    BUG_ON("unimplemented");
+}
+static inline void put_page_nr(struct page_info *page, unsigned long nr)
+{
+    BUG_ON("unimplemented");
+}
+
+static inline void put_page_and_type(struct page_info *page)
+{
+    put_page_type(page);
+    put_page(page);
+}
+
+/*
+ * PPC does not have an M2P, but common code expects a handful of
+ * M2P-related defines and functions. Provide dummy versions of these.
+ */
+#define INVALID_M2P_ENTRY        (~0UL)
+#define SHARED_M2P_ENTRY         (~0UL - 1UL)
+#define SHARED_M2P(_e)           ((_e) == SHARED_M2P_ENTRY)
+
+#define set_gpfn_from_mfn(mfn, pfn) BUG_ON("unimplemented")
+#define mfn_to_gfn(d, mfn) ({ BUG_ON("unimplemented"); _gfn(0); })
+
+#define PDX_GROUP_SHIFT XEN_PT_SHIFT_LVL_3
+
+static inline unsigned long domain_get_maximum_gpfn(struct domain *d)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+static inline long arch_memory_op(int op, XEN_GUEST_HANDLE_PARAM(void) arg)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+static inline unsigned int arch_get_dma_bitsize(void)
+{
+    return 32; /* TODO */
+}
+
+/*
+ * On PPC, all the RAM is currently direct mapped in Xen.
+ * Hence return always true.
+ */
+static inline bool arch_mfns_in_directmap(unsigned long mfn, unsigned long nr)
+{
+    return true;
+}

 #endif /* _ASM_PPC_MM_H */
diff --git a/xen/arch/ppc/include/asm/monitor.h b/xen/arch/ppc/include/asm/monitor.h
new file mode 100644
index 0000000000..e5b0282bf1
--- /dev/null
+++ b/xen/arch/ppc/include/asm/monitor.h
@@ -0,0 +1,43 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/* Derived from xen/arch/arm/include/asm/monitor.h */
+#ifndef __ASM_PPC_MONITOR_H__
+#define __ASM_PPC_MONITOR_H__
+
+#include <public/domctl.h>
+#include <xen/errno.h>
+
+static inline
+void arch_monitor_allow_userspace(struct domain *d, bool allow_userspace)
+{
+}
+
+static inline
+int arch_monitor_domctl_op(struct domain *d, struct xen_domctl_monitor_op *mop)
+{
+    /* No arch-specific monitor ops on PPC. */
+    return -EOPNOTSUPP;
+}
+
+int arch_monitor_domctl_event(struct domain *d,
+                              struct xen_domctl_monitor_op *mop);
+
+static inline
+int arch_monitor_init_domain(struct domain *d)
+{
+    /* No arch-specific domain initialization on PPC. */
+    return 0;
+}
+
+static inline
+void arch_monitor_cleanup_domain(struct domain *d)
+{
+    /* No arch-specific domain cleanup on PPC. */
+}
+
+static inline uint32_t arch_monitor_get_capabilities(struct domain *d)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+#endif /* __ASM_PPC_MONITOR_H__ */
diff --git a/xen/arch/ppc/include/asm/nospec.h b/xen/arch/ppc/include/asm/nospec.h
new file mode 100644
index 0000000000..b97322e48d
--- /dev/null
+++ b/xen/arch/ppc/include/asm/nospec.h
@@ -0,0 +1,15 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/* From arch/arm/include/asm/nospec.h. */
+#ifndef __ASM_PPC_NOSPEC_H__
+#define __ASM_PPC_NOSPEC_H__
+
+static inline bool evaluate_nospec(bool condition)
+{
+    return condition;
+}
+
+static inline void block_speculation(void)
+{
+}
+
+#endif /* __ASM_PPC_NOSPEC_H__ */
diff --git a/xen/arch/ppc/include/asm/numa.h b/xen/arch/ppc/include/asm/numa.h
new file mode 100644
index 0000000000..d857bba2ba
--- /dev/null
+++ b/xen/arch/ppc/include/asm/numa.h
@@ -0,0 +1,26 @@
+#ifndef __ASM_PPC_NUMA_H__
+#define __ASM_PPC_NUMA_H__
+
+#include <xen/types.h>
+#include <xen/mm.h>
+
+typedef uint8_t nodeid_t;
+
+/* Fake one node for now. See also node_online_map. */
+#define cpu_to_node(cpu) 0
+#define node_to_cpumask(node)   (cpu_online_map)
+
+/*
+ * TODO: make first_valid_mfn static when NUMA is supported on Arm, this
+ * is required because the dummy helpers are using it.
+ */
+extern mfn_t first_valid_mfn;
+
+/* XXX: implement NUMA support */
+#define node_spanned_pages(nid) (max_page - mfn_x(first_valid_mfn))
+#define node_start_pfn(nid) (mfn_x(first_valid_mfn))
+#define __node_distance(a, b) (20)
+
+#define arch_want_default_dmazone() (false)
+
+#endif /* __ASM_PPC_NUMA_H__ */
diff --git a/xen/arch/ppc/include/asm/p2m.h b/xen/arch/ppc/include/asm/p2m.h
new file mode 100644
index 0000000000..25ba054668
--- /dev/null
+++ b/xen/arch/ppc/include/asm/p2m.h
@@ -0,0 +1,95 @@
+#ifndef __ASM_PPC_P2M_H__
+#define __ASM_PPC_P2M_H__
+
+#include <asm/page-bits.h>
+
+#define paddr_bits PADDR_BITS
+
+/*
+ * List of possible type for each page in the p2m entry.
+ * The number of available bit per page in the pte for this purpose is 4 bits.
+ * So it's possible to only have 16 fields. If we run out of value in the
+ * future, it's possible to use higher value for pseudo-type and don't store
+ * them in the p2m entry.
+ */
+typedef enum {
+    p2m_invalid = 0,    /* Nothing mapped here */
+    p2m_ram_rw,         /* Normal read/write guest RAM */
+    p2m_ram_ro,         /* Read-only; writes are silently dropped */
+    p2m_max_real_type,  /* Types after this won't be store in the p2m */
+} p2m_type_t;
+
+#include <xen/p2m-common.h>
+
+static inline int get_page_and_type(struct page_info *page,
+                                    struct domain *domain,
+                                    unsigned long type)
+{
+    BUG_ON("unimplemented");
+    return 1;
+}
+
+/* Look up a GFN and take a reference count on the backing page. */
+typedef unsigned int p2m_query_t;
+#define P2M_ALLOC    (1u<<0)   /* Populate PoD and paged-out entries */
+#define P2M_UNSHARE  (1u<<1)   /* Break CoW sharing */
+
+static inline struct page_info *get_page_from_gfn(
+    struct domain *d, unsigned long gfn, p2m_type_t *t, p2m_query_t q)
+{
+    BUG_ON("unimplemented");
+    return NULL;
+}
+
+static inline void memory_type_changed(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+
+static inline int guest_physmap_mark_populate_on_demand(struct domain *d, unsigned long gfn,
+                                                        unsigned int order)
+{
+    BUG_ON("unimplemented");
+    return 1;
+}
+
+static inline int guest_physmap_add_entry(struct domain *d,
+                            gfn_t gfn,
+                            mfn_t mfn,
+                            unsigned long page_order,
+                            p2m_type_t t)
+{
+    BUG_ON("unimplemented");
+    return 1;
+}
+
+/* Untyped version for RAM only, for compatibility */
+static inline int __must_check
+guest_physmap_add_page(struct domain *d, gfn_t gfn, mfn_t mfn,
+                       unsigned int page_order)
+{
+    return guest_physmap_add_entry(d, gfn, mfn, page_order, p2m_ram_rw);
+}
+
+static inline mfn_t gfn_to_mfn(struct domain *d, gfn_t gfn)
+{
+    BUG_ON("unimplemented");
+    return _mfn(0);
+}
+
+static inline bool arch_acquire_resource_check(struct domain *d)
+{
+    /*
+     * The reference counting of foreign entries in set_foreign_p2m_entry()
+     * is supported on PPC.
+     */
+    return true;
+}
+
+static inline void p2m_altp2m_check(struct vcpu *v, uint16_t idx)
+{
+    /* Not supported on PPC. */
+}
+
+#endif /* __ASM_PPC_P2M_H__ */
diff --git a/xen/arch/ppc/include/asm/page.h b/xen/arch/ppc/include/asm/page.h
index c5ee047df7..890e285051 100644
--- a/xen/arch/ppc/include/asm/page.h
+++ b/xen/arch/ppc/include/asm/page.h
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #ifndef _ASM_PPC_PAGE_H
 #define _ASM_PPC_PAGE_H

@@ -36,6 +37,9 @@
 #define PTE_XEN_RO   (PTE_XEN_BASE | PTE_EAA_READ)
 #define PTE_XEN_RX   (PTE_XEN_BASE | PTE_EAA_READ | PTE_EAA_EXECUTE)

+/* TODO */
+#define PAGE_HYPERVISOR 0
+
 /*
  * Radix Tree layout for 64KB pages:
  *
@@ -178,4 +182,18 @@ struct prtb_entry {

 void tlbie_all(void);

+static inline void invalidate_icache(void)
+{
+    BUG_ON("unimplemented");
+}
+
+#define clear_page(page) memset(page, 0, PAGE_SIZE)
+#define copy_page(dp, sp) memcpy(dp, sp, PAGE_SIZE)
+
+/* TODO: Flush the dcache for an entire page. */
+static inline void flush_page_to_ram(unsigned long mfn, bool sync_icache)
+{
+    BUG_ON("unimplemented");
+}
+
 #endif /* _ASM_PPC_PAGE_H */
diff --git a/xen/arch/ppc/include/asm/paging.h b/xen/arch/ppc/include/asm/paging.h
new file mode 100644
index 0000000000..eccacece29
--- /dev/null
+++ b/xen/arch/ppc/include/asm/paging.h
@@ -0,0 +1,7 @@
+#ifndef __ASM_PPC_PAGING_H__
+#define __ASM_PPC_PAGING_H__
+
+#define paging_mode_translate(d)              (1)
+#define paging_mode_external(d)               (1)
+
+#endif /* __ASM_PPC_PAGING_H__ */
diff --git a/xen/arch/ppc/include/asm/pci.h b/xen/arch/ppc/include/asm/pci.h
new file mode 100644
index 0000000000..e76c8e5475
--- /dev/null
+++ b/xen/arch/ppc/include/asm/pci.h
@@ -0,0 +1,7 @@
+#ifndef __ASM_PPC_PCI_H__
+#define __ASM_PPC_PCI_H__
+
+struct arch_pci_dev {
+};
+
+#endif /* __ASM_PPC_PCI_H__ */
diff --git a/xen/arch/ppc/include/asm/percpu.h b/xen/arch/ppc/include/asm/percpu.h
new file mode 100644
index 0000000000..e7c40c0f03
--- /dev/null
+++ b/xen/arch/ppc/include/asm/percpu.h
@@ -0,0 +1,24 @@
+#ifndef __PPC_PERCPU_H__
+#define __PPC_PERCPU_H__
+
+#ifndef __ASSEMBLY__
+
+extern char __per_cpu_start[], __per_cpu_data_end[];
+extern unsigned long __per_cpu_offset[NR_CPUS];
+void percpu_init_areas(void);
+
+#define smp_processor_id() 0 /* TODO: Fix this */
+
+#define per_cpu(var, cpu)  \
+    (*RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[cpu]))
+#define this_cpu(var) \
+    (*RELOC_HIDE(&per_cpu__##var, smp_processor_id()))
+
+#define per_cpu_ptr(var, cpu)  \
+    (*RELOC_HIDE(var, __per_cpu_offset[cpu]))
+#define this_cpu_ptr(var) \
+    (*RELOC_HIDE(var, smp_processor_id()))
+
+#endif
+
+#endif /* __PPC_PERCPU_H__ */
diff --git a/xen/arch/ppc/include/asm/processor.h b/xen/arch/ppc/include/asm/processor.h
index edb8a6088d..d3dd943c20 100644
--- a/xen/arch/ppc/include/asm/processor.h
+++ b/xen/arch/ppc/include/asm/processor.h
@@ -110,6 +110,10 @@
 /* Macro to adjust thread priority for hardware multithreading */
 #define HMT_very_low()  asm volatile ( "or %r31, %r31, %r31" )

+/* TODO: This isn't correct */
+#define cpu_to_core(cpu)   (0)
+#define cpu_to_socket(cpu) (0)
+
 /*
  * User-accessible registers: most of these need to be saved/restored
  * for every nested Xen invocation.
@@ -178,6 +182,12 @@ static inline void noreturn die(void)
         HMT_very_low();
 }

+/*
+ * Implemented on pre-POWER10 by setting HMT to low then to medium using
+ * the special OR forms. See HMT_very_low above.
+ */
+#define cpu_relax() asm volatile ( "or %r1, %r1, %r1; or %r2, %r2, %r2" )
+
 #endif /* __ASSEMBLY__ */

 #endif /* _ASM_PPC_PROCESSOR_H */
diff --git a/xen/arch/ppc/include/asm/random.h b/xen/arch/ppc/include/asm/random.h
new file mode 100644
index 0000000000..2f9e9bbae4
--- /dev/null
+++ b/xen/arch/ppc/include/asm/random.h
@@ -0,0 +1,9 @@
+#ifndef __ASM_PPC_RANDOM_H__
+#define __ASM_PPC_RANDOM_H__
+
+static inline unsigned int arch_get_random(void)
+{
+    return 0;
+}
+
+#endif /* __ASM_PPC_RANDOM_H__ */
diff --git a/xen/arch/ppc/include/asm/setup.h b/xen/arch/ppc/include/asm/setup.h
new file mode 100644
index 0000000000..e4f64879b6
--- /dev/null
+++ b/xen/arch/ppc/include/asm/setup.h
@@ -0,0 +1,6 @@
+#ifndef __ASM_PPC_SETUP_H__
+#define __ASM_PPC_SETUP_H__
+
+#define max_init_domid (0)
+
+#endif /* __ASM_PPC_SETUP_H__ */
diff --git a/xen/arch/ppc/include/asm/smp.h b/xen/arch/ppc/include/asm/smp.h
new file mode 100644
index 0000000000..eca43f0e6c
--- /dev/null
+++ b/xen/arch/ppc/include/asm/smp.h
@@ -0,0 +1,18 @@
+#ifndef __ASM_SMP_H
+#define __ASM_SMP_H
+
+#include <xen/cpumask.h>
+#include <xen/percpu.h>
+
+DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
+DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
+
+#define cpu_is_offline(cpu) unlikely(!cpu_online(cpu))
+
+/*
+ * Do we, for platform reasons, need to actually keep CPUs online when we
+ * would otherwise prefer them to be off?
+ */
+#define park_offline_cpus false
+
+#endif
diff --git a/xen/arch/ppc/include/asm/softirq.h b/xen/arch/ppc/include/asm/softirq.h
new file mode 100644
index 0000000000..a0b28a5e51
--- /dev/null
+++ b/xen/arch/ppc/include/asm/softirq.h
@@ -0,0 +1,8 @@
+#ifndef __ASM_PPC_SOFTIRQ_H__
+#define __ASM_PPC_SOFTIRQ_H__
+
+#define NR_ARCH_SOFTIRQS 0
+
+#define arch_skip_send_event_check(cpu) 0
+
+#endif /* __ASM_PPC_SOFTIRQ_H__ */
diff --git a/xen/arch/ppc/include/asm/spinlock.h b/xen/arch/ppc/include/asm/spinlock.h
new file mode 100644
index 0000000000..4bdb4b1e98
--- /dev/null
+++ b/xen/arch/ppc/include/asm/spinlock.h
@@ -0,0 +1,15 @@
+#ifndef __ASM_SPINLOCK_H
+#define __ASM_SPINLOCK_H
+
+#define arch_lock_acquire_barrier() smp_mb()
+#define arch_lock_release_barrier() smp_mb()
+
+#define arch_lock_relax() cpu_relax()
+#define arch_lock_signal()
+#define arch_lock_signal_wmb()      \
+({                                  \
+    smp_wmb();                      \
+    arch_lock_signal();             \
+})
+
+#endif /* __ASM_SPINLOCK_H */
diff --git a/xen/arch/ppc/include/asm/system.h b/xen/arch/ppc/include/asm/system.h
index 94091df644..a17072bafd 100644
--- a/xen/arch/ppc/include/asm/system.h
+++ b/xen/arch/ppc/include/asm/system.h
@@ -1,6 +1,223 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Copyright (C) IBM Corp. 2005
+ * Copyright (C) Raptor Engineering LLC
+ *
+ * Authors: Jimi Xenidis <jimix@watson.ibm.com>
+ *          Shawn Anastasio <sanastasio@raptorengineering.com>
+ */
+
 #ifndef _ASM_SYSTEM_H_
 #define _ASM_SYSTEM_H_

-#define smp_wmb() __asm__ __volatile__ ( "lwsync" : : : "memory" )
+#include <xen/lib.h>
+#include <asm/memory.h>
+#include <asm/time.h>
+#include <asm/processor.h>
+#include <asm/msr.h>
+
+#define xchg(ptr,x)                                                            \
+({                                                                             \
+    __typeof__(*(ptr)) _x_ = (x);                                              \
+    (__typeof__(*(ptr))) __xchg((ptr), (unsigned long)_x_, sizeof(*(ptr)));    \
+})
+
+#define build_xchg(fn, type, ldinsn, stinsn) \
+static inline unsigned long fn(volatile type *m, unsigned long val)            \
+{                                                                              \
+    unsigned long dummy;                                                       \
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER                                    \
+                   "1: " ldinsn " %0,0,%3\n"                                   \
+                   stinsn " %2,0,%3\n"                                         \
+                   "2:  bne- 1b\n"                                             \
+                   PPC_ATOMIC_EXIT_BARRIER                                     \
+                   : "=&r" (dummy), "=m" (*m)                                  \
+                   : "r" (val), "r" (m)                                        \
+                   : "cc", "memory" );                                         \
+    return dummy;                                                              \
+}
+
+build_xchg(__xchg_u8, uint8_t, "lbarx", "stbcx.")
+build_xchg(__xchg_u16, uint16_t, "lharx", "sthcx.")
+build_xchg(__xchg_u32, uint32_t, "lwarx", "stwcx.")
+build_xchg(__xchg_u64, uint64_t, "ldarx", "stdcx.")
+
+#undef build_xchg
+
+/*
+ * This function doesn't exist, so you'll get a linker error
+ * if something tries to do an invalid xchg().
+ */
+extern void __xchg_called_with_bad_pointer(void);
+
+static inline unsigned long __xchg(volatile void *ptr, unsigned long x,
+                                   int size)
+{
+    switch ( size )
+    {
+    case 1:
+        return __xchg_u8(ptr, x);
+    case 2:
+        return __xchg_u16(ptr, x);
+    case 4:
+        return __xchg_u32(ptr, x);
+    case 8:
+        return __xchg_u64(ptr, x);
+    }
+    __xchg_called_with_bad_pointer();
+    return x;
+}
+
+
+static inline unsigned long __cmpxchg_u32(volatile int *p, int old, int new)
+{
+    unsigned int prev;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx   %0,0,%2\n"
+                   "cmpw    0,%0,%3\n"
+                   "bne-    2f\n "
+                   "stwcx.  %4,0,%2\n"
+                   "bne-    1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER "\n"
+                   "2:"
+                   : "=&r" (prev), "=m" (*p)
+                   : "r" (p), "r" (old), "r" (new), "m" (*p)
+                   : "cc", "memory" );
+
+    return prev;
+}
+
+static inline unsigned long __cmpxchg_u64(volatile long *p, unsigned long old,
+                                          unsigned long new)
+{
+    unsigned long prev;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: ldarx   %0,0,%2\n"
+                   "cmpd    0,%0,%3\n"
+                   "bne-    2f\n"
+                   "stdcx.  %4,0,%2\n"
+                   "bne-    1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER "\n"
+                   "2:"
+                   : "=&r" (prev), "=m" (*p)
+                   : "r" (p), "r" (old), "r" (new), "m" (*p)
+                   : "cc", "memory" );
+
+    return prev;
+}
+
+/* This function doesn't exist, so you'll get a linker error
+   if something tries to do an invalid cmpxchg().  */
+extern void __cmpxchg_called_with_bad_pointer(void);
+
+static always_inline unsigned long __cmpxchg(
+    volatile void *ptr,
+    unsigned long old,
+    unsigned long new,
+    int size)
+{
+    switch ( size )
+    {
+    case 2:
+        BUG_ON("unimplemented"); return 0; /* XXX implement __cmpxchg_u16 ? */
+    case 4:
+        return __cmpxchg_u32(ptr, old, new);
+    case 8:
+        return __cmpxchg_u64(ptr, old, new);
+    }
+    __cmpxchg_called_with_bad_pointer();
+    return old;
+}
+
+#define cmpxchg_user(ptr,o,n) cmpxchg(ptr,o,n)
+
+#define cmpxchg(ptr,o,n)                                                       \
+  ({                                                                           \
+     __typeof__(*(ptr)) _o_ = (o);                                             \
+     __typeof__(*(ptr)) _n_ = (n);                                             \
+     (__typeof__(*(ptr)))__cmpxchg((ptr), (unsigned long)_o_,                  \
+                                   (unsigned long)_n_, sizeof(*(ptr)));        \
+  })
+
+
+/*
+ * Memory barrier.
+ * The sync instruction guarantees that all memory accesses initiated
+ * by this processor have been performed (with respect to all other
+ * mechanisms that access memory).  The eieio instruction is a barrier
+ * providing an ordering (separately) for (a) cacheable stores and (b)
+ * loads and stores to non-cacheable memory (e.g. I/O devices).
+ *
+ * mb() prevents loads and stores being reordered across this point.
+ * rmb() prevents loads being reordered across this point.
+ * wmb() prevents stores being reordered across this point.
+ * read_barrier_depends() prevents data-dependent loads being reordered
+ *  across this point (nop on PPC).
+ *
+ * We have to use the sync instructions for mb(), since lwsync doesn't
+ * order loads with respect to previous stores.  Lwsync is fine for
+ * rmb(), though.
+ * For wmb(), we use sync since wmb is used in drivers to order
+ * stores to system memory with respect to writes to the device.
+ * However, smp_wmb() can be a lighter-weight eieio barrier on
+ * SMP since it is only used to order updates to system memory.
+ */
+#define mb()   __asm__ __volatile__ ( "sync" : : : "memory" )
+#define rmb()  __asm__ __volatile__ ( "lwsync" : : : "memory" )
+#define wmb()  __asm__ __volatile__ ( "sync" : : : "memory" )
+#define read_barrier_depends()  do { } while(0)
+
+#define set_mb(var, value)  do { var = value; smp_mb(); } while (0)
+#define set_wmb(var, value) do { var = value; smp_wmb(); } while (0)
+
+#define smp_mb__before_atomic()    smp_mb()
+#define smp_mb__after_atomic()     smp_mb()
+
+#define smp_mb()    mb()
+#define smp_rmb()   rmb()
+#define smp_wmb()   __asm__ __volatile__ ("lwsync" : : : "memory")
+#define smp_read_barrier_depends()  read_barrier_depends()
+
+#define local_save_flags(flags) ((flags) = mfmsr())
+#define local_irq_restore(flags) do { \
+        __asm__ __volatile__("": : :"memory"); \
+        mtmsrd((flags)); \
+} while(0)
+
+static inline void local_irq_disable(void)
+{
+    unsigned long msr;
+    msr = mfmsr();
+    mtmsrd(msr & ~MSR_EE);
+    barrier();
+}
+
+static inline void local_irq_enable(void)
+{
+    unsigned long msr;
+    barrier();
+    msr = mfmsr();
+    mtmsrd(msr | MSR_EE);
+}
+
+static inline void __do_save_and_cli(unsigned long *flags)
+{
+    unsigned long msr;
+    msr = mfmsr();
+    *flags = msr;
+    mtmsrd(msr & ~MSR_EE);
+    barrier();
+}
+
+#define local_irq_save(flags) __do_save_and_cli(&flags)
+
+static inline int local_irq_is_enabled(void)
+{
+    return !!(mfmsr() & MSR_EE);
+}
+
+#define arch_fetch_and_add(x, v) __sync_fetch_and_add(x, v)

 #endif /* _ASM_SYSTEM_H */
diff --git a/xen/arch/ppc/include/asm/time.h b/xen/arch/ppc/include/asm/time.h
new file mode 100644
index 0000000000..aa9dda82a3
--- /dev/null
+++ b/xen/arch/ppc/include/asm/time.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_TIME_H__
+#define __ASM_PPC_TIME_H__
+
+#include <xen/lib.h>
+#include <asm/processor.h>
+#include <asm/regs.h>
+
+struct vcpu;
+
+/* TODO: implement */
+static inline void force_update_vcpu_system_time(struct vcpu *v) {
+    BUG_ON("unimplemented");
+}
+
+typedef unsigned long cycles_t;
+
+static inline cycles_t get_cycles(void)
+{
+    return mfspr(SPRN_TBRL);
+}
+
+#endif /* __ASM_PPC_TIME_H__ */
diff --git a/xen/arch/ppc/include/asm/vm_event.h b/xen/arch/ppc/include/asm/vm_event.h
new file mode 100644
index 0000000000..75eba6346d
--- /dev/null
+++ b/xen/arch/ppc/include/asm/vm_event.h
@@ -0,0 +1,49 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_VM_EVENT_H__
+#define __ASM_PPC_VM_EVENT_H__
+
+#include <xen/sched.h>
+#include <public/vm_event.h>
+
+static inline int vm_event_init_domain(struct domain *d)
+{
+    /* Nothing to do. */
+    return 0;
+}
+
+static inline void vm_event_cleanup_domain(struct domain *d)
+{
+    memset(&d->monitor, 0, sizeof(d->monitor));
+}
+
+static inline void vm_event_toggle_singlestep(struct domain *d, struct vcpu *v,
+                                              vm_event_response_t *rsp)
+{
+    /* Not supported on PPC. */
+}
+
+static inline
+void vm_event_register_write_resume(struct vcpu *v, vm_event_response_t *rsp)
+{
+    /* Not supported on PPC. */
+}
+
+static inline
+void vm_event_emulate_check(struct vcpu *v, vm_event_response_t *rsp)
+{
+    /* Not supported on PPC. */
+}
+
+static inline
+void vm_event_sync_event(struct vcpu *v, bool value)
+{
+    /* Not supported on PPC. */
+}
+
+static inline
+void vm_event_reset_vmtrace(struct vcpu *v)
+{
+    /* Not supported on PPC. */
+}
+
+#endif /* __ASM_PPC_VM_EVENT_H__ */
diff --git a/xen/arch/ppc/include/asm/xenoprof.h b/xen/arch/ppc/include/asm/xenoprof.h
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/xen/arch/ppc/mm-radix.c b/xen/arch/ppc/mm-radix.c
index 3feeb90ebc..06129cef9c 100644
--- a/xen/arch/ppc/mm-radix.c
+++ b/xen/arch/ppc/mm-radix.c
@@ -1,13 +1,13 @@
 /* SPDX-License-Identifier: GPL-2.0-or-later */
 #include <xen/init.h>
 #include <xen/kernel.h>
+#include <xen/mm.h>
 #include <xen/types.h>
 #include <xen/lib.h>

 #include <asm/bitops.h>
 #include <asm/byteorder.h>
 #include <asm/early_printk.h>
-#include <asm/mm.h>
 #include <asm/page.h>
 #include <asm/processor.h>
 #include <asm/regs.h>
diff --git a/xen/arch/ppc/tlb-radix.c b/xen/arch/ppc/tlb-radix.c
index 3dde102c62..74213113e0 100644
--- a/xen/arch/ppc/tlb-radix.c
+++ b/xen/arch/ppc/tlb-radix.c
@@ -5,9 +5,9 @@
  *
  * Copyright 2015-2016, Aneesh Kumar K.V, IBM Corporation.
  */
+#include <xen/bitops.h>
 #include <xen/stringify.h>

-#include <asm/bitops.h>
 #include <asm/msr.h>
 #include <asm/processor.h>

diff --git a/xen/include/public/hvm/save.h b/xen/include/public/hvm/save.h
index 464ebdb0da..2cf4238daa 100644
--- a/xen/include/public/hvm/save.h
+++ b/xen/include/public/hvm/save.h
@@ -89,6 +89,8 @@ DECLARE_HVM_SAVE_TYPE(END, 0, struct hvm_save_end);
 #include "../arch-x86/hvm/save.h"
 #elif defined(__arm__) || defined(__aarch64__)
 #include "../arch-arm/hvm/save.h"
+#elif defined(__powerpc64__)
+#include "../arch-ppc.h"
 #else
 #error "unsupported architecture"
 #endif
diff --git a/xen/include/public/pmu.h b/xen/include/public/pmu.h
index eb87a81e7b..5a176b6ac3 100644
--- a/xen/include/public/pmu.h
+++ b/xen/include/public/pmu.h
@@ -11,6 +11,8 @@
 #include "arch-x86/pmu.h"
 #elif defined (__arm__) || defined (__aarch64__)
 #include "arch-arm.h"
+#elif defined (__powerpc64__)
+#include "arch-ppc.h"
 #else
 #error "Unsupported architecture"
 #endif
diff --git a/xen/include/public/xen.h b/xen/include/public/xen.h
index 920567e006..b812a0a324 100644
--- a/xen/include/public/xen.h
+++ b/xen/include/public/xen.h
@@ -16,6 +16,8 @@
 #include "arch-x86/xen.h"
 #elif defined(__arm__) || defined (__aarch64__)
 #include "arch-arm.h"
+#elif defined(__powerpc64__)
+#include "arch-ppc.h"
 #else
 #error "Unsupported architecture"
 #endif
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 23:03:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 23:03:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598267.932918 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekVj-0004cT-8z; Fri, 08 Sep 2023 23:03:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598267.932918; Fri, 08 Sep 2023 23:03:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qekVj-0004cM-6T; Fri, 08 Sep 2023 23:03:35 +0000
Received: by outflank-mailman (input) for mailman id 598267;
 Fri, 08 Sep 2023 23:03:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=hmm/=EY=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qekVh-0004ax-P4
 for xen-devel@lists.xenproject.org; Fri, 08 Sep 2023 23:03:33 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ecd23825-4e9b-11ee-9b0d-b553b5be7939;
 Sat, 09 Sep 2023 01:03:31 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 9F51BCE1CE7;
 Fri,  8 Sep 2023 23:03:24 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 954D5C433C9;
 Fri,  8 Sep 2023 23:03:21 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ecd23825-4e9b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694214203;
	bh=lgwU7Z5792uj1BjLTLhQ5oE1XrVQV3QOd015unveqhA=;
	h=From:To:Cc:Subject:Date:From;
	b=F4GKMNqhKeHksxzsBxUtMc1FbMDT19L1KidBmufoXrxohcF9/YdVFvIYz6Kh6Rza4
	 bLqI8ynFY59mUWpdu1YnoaaD5s+mkwUFg389NiEIWbtx6QF5Zz8nFgbku4nLWbqfsV
	 +DcOfOw9dzw1DdkJbuoOn2gvRQHqtIbQMG1bfD11YGKgtamHdwI0ejQP25GgQMJ9AV
	 /A3FQyomM68LZaXjC5P+0aQG8LDBJgmjO00AD43U3mMa3QUUizCWqHJyqVsx2aZlwk
	 hEW8vntMjKP5hxUWoj3kMqf2XzZop4UvuTQsyqQ96qnvfYl2/F2eztCKaJqiBBNqz4
	 tukLuRkKO/rdw==
From: Stefano Stabellini <sstabellini@kernel.org>
To: xen-devel@lists.xenproject.org
Cc: jbeulich@suse.com,
	andrew.cooper3@citrix.com,
	roger.pau@citrix.com,
	julien@xen.org,
	sstabellini@kernel.org,
	george.dunlap@citrix.com,
	bertrand.marquis@arm.com,
	roberto.bagnara@bugseng.com,
	nicola.vetrini@bugseng.com,
	Stefano Stabellini <stefano.stabellini@amd.com>
Subject: [PATCH v3] docs/misra: add rule 2.1 exceptions
Date: Fri,  8 Sep 2023 16:03:18 -0700
Message-Id: <20230908230318.1719290-1-sstabellini@kernel.org>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Stefano Stabellini <stefano.stabellini@amd.com>

During the discussions that led to the acceptance of Rule 2.1, we
decided on a few exceptions that were not properly recorded in
rules.rst. Add them now.

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
Nicola, does this work with ECLAIR?

I am referring to the locations of the SAF-2-safe tag on top of
call_psci_system_off, BUG, etc.

Changes in v3:
- added SAF-2-safe to safe.json
- added a few SAF-2-safe examples
---
 docs/misra/rules.rst    | 13 ++++++++++++-
 docs/misra/safe.json    |  8 ++++++++
 xen/arch/arm/psci.c     |  1 +
 xen/arch/x86/shutdown.c |  1 +
 xen/include/xen/bug.h   |  2 ++
 5 files changed, 24 insertions(+), 1 deletion(-)

diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index 34916e266a..82de4c645d 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -107,7 +107,18 @@ maintainers if you want to suggest a change.
    * - `Rule 2.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_02_01_1.c>`_
      - Required
      - A project shall not contain unreachable code
-     -
+     - The following are allowed:
+         - Invariantly constant conditions, e.g. if(IS_ENABLED(CONFIG_HVM)) { S; }
+         - Switch with a controlling value statically determined not to
+           match one or more case statements
+         - Functions that are intended to be referenced only from
+           assembly code (e.g. 'do_trap_fiq')
+         - Deliberate unreachability caused by certain macros/functions,
+           e.g. BUG, assert_failed, panic, etc. See safe.json.
+         - asm-offsets.c, as they are not linked deliberately, because
+           they are used to generate definitions for asm modules
+         - Declarations without initializer are safe, as they are not
+           executed
 
    * - `Rule 2.6 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_02_06.c>`_
      - Advisory
diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index 39c5c056c7..fc96a99fd5 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -20,6 +20,14 @@
         },
         {
             "id": "SAF-2-safe",
+            "analyser": {
+                "eclair": "MC3R1.R2.1"
+            },
+            "name": "Rule 2.1: deliberate unreachability",
+            "text": "Macro or function designed to be unreachable."
+        },
+        {
+            "id": "SAF-3-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/arch/arm/psci.c b/xen/arch/arm/psci.c
index 695d2fa1f1..2a8527cacc 100644
--- a/xen/arch/arm/psci.c
+++ b/xen/arch/arm/psci.c
@@ -59,6 +59,7 @@ void call_psci_cpu_off(void)
     }
 }
 
+/* SAF-2-safe */
 void call_psci_system_off(void)
 {
     if ( psci_ver > PSCI_VERSION(0, 1) )
diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
index 7619544d14..47e0f59024 100644
--- a/xen/arch/x86/shutdown.c
+++ b/xen/arch/x86/shutdown.c
@@ -118,6 +118,7 @@ static inline void kb_wait(void)
             break;
 }
 
+/* SAF-2-safe */
 static void noreturn cf_check __machine_halt(void *unused)
 {
     local_irq_disable();
diff --git a/xen/include/xen/bug.h b/xen/include/xen/bug.h
index e8a4eea71a..d47c54f034 100644
--- a/xen/include/xen/bug.h
+++ b/xen/include/xen/bug.h
@@ -117,6 +117,7 @@ struct bug_frame {
 #endif
 
 #ifndef BUG
+/* SAF-2-safe */
 #define BUG() do {                                              \
     BUG_FRAME(BUGFRAME_bug,  __LINE__, __FILE__, 0, NULL);      \
     unreachable();                                              \
@@ -124,6 +125,7 @@ struct bug_frame {
 #endif
 
 #ifndef assert_failed
+/* SAF-2-safe */
 #define assert_failed(msg) do {                                 \
     BUG_FRAME(BUGFRAME_assert, __LINE__, __FILE__, 1, msg);     \
     unreachable();                                              \
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 08 23:58:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 08 Sep 2023 23:58:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598288.932956 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qelML-0005o7-8f; Fri, 08 Sep 2023 23:57:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598288.932956; Fri, 08 Sep 2023 23:57:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qelML-0005o0-5n; Fri, 08 Sep 2023 23:57:57 +0000
Received: by outflank-mailman (input) for mailman id 598288;
 Fri, 08 Sep 2023 23:57:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qelMK-0005nq-3B; Fri, 08 Sep 2023 23:57:56 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qelMJ-000295-Vx; Fri, 08 Sep 2023 23:57:56 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qelMJ-0007Vz-Je; Fri, 08 Sep 2023 23:57:55 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qelMJ-0007v2-J8; Fri, 08 Sep 2023 23:57:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=HOveL2/b74KQ6sEsH5THWmxMaHvEGagsWPNwGBNuotw=; b=pqkfwxJ/23ByDURyzO+L3CzOek
	RzSel+zkfi+Gwi5DImapKiIM9J+5RJ6e+cCTWOgmg7pnBmqyzRpugihqDyb2pk7L+ZuYx7aI+O0Wu
	+WDrYT1X9CM+/ZCBj1wep5sSbmQVUA/MlxZUESmZRzmyYwqBSQXunOVy6Q/3JUh/mW7I=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182770-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182770: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 08 Sep 2023 23:57:55 +0000

flight 182770 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182770/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    1 days
Failing since        182723  2023-09-07 18:19:05 Z    1 days    4 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 00:19:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 00:19:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598300.932975 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qelhE-0001hN-I6; Sat, 09 Sep 2023 00:19:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598300.932975; Sat, 09 Sep 2023 00:19:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qelhE-0001hG-DG; Sat, 09 Sep 2023 00:19:32 +0000
Received: by outflank-mailman (input) for mailman id 598300;
 Sat, 09 Sep 2023 00:19:31 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qelhD-0001h6-3v; Sat, 09 Sep 2023 00:19:31 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qelhC-0003J4-Uq; Sat, 09 Sep 2023 00:19:31 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qelhC-000871-JA; Sat, 09 Sep 2023 00:19:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qelhC-0004gf-Ij; Sat, 09 Sep 2023 00:19:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ULpivYx0YgZCQP8pH5Qi267AoBYY71ekn00e9Og/FD4=; b=dqFFvUJdhcQjdYGiIg8sOLDO2D
	Et08RnBwzQm+VLTQdaF1gJy6N2a2SnTMeZcDUmVc/yGpcoPK9NRWDmGC2ElIcOsUQUICXUDOFKcU2
	MIm8VBt0gxn9CJAAvUf3dSG9FLM08Z4+ukt9N1FZCphxChKQORPutnVFM5KEdMQ0TPXY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182735-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182735: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-migrupgrade:xen-install/src_host:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=cba6d44a13d5e25334d164e27cb1b1d7674aa05e
X-Osstest-Versions-That:
    xen=b2dd946ece74e2b6e0601f28caef72f4f9950102
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 00:19:30 +0000

flight 182735 xen-unstable real [real]
flight 182785 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182735/
http://logs.test-lab.xenproject.org/osstest/logs/182785/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-migrupgrade 10 xen-install/src_host fail pass in 182785-retest
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 182785-retest
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail pass in 182785-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop  fail in 182785 like 182717
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182717
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182717
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182717
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182717
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182717
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182717
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182717
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182717
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182717
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182717
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182717
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  cba6d44a13d5e25334d164e27cb1b1d7674aa05e
baseline version:
 xen                  b2dd946ece74e2b6e0601f28caef72f4f9950102

Last test of basis   182717  2023-09-07 07:54:20 Z    1 days
Failing since        182725  2023-09-08 00:38:36 Z    0 days    2 attempts
Testing same since   182735  2023-09-08 08:06:00 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Federico Serafini <federico.serafini@bugseng.com>
  Henry Wang <Henry.Wang@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Nicola Vetrini <nicola.vetrini@bugseng.com>
  Olaf Hering <olaf@aepfle.de>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefano Stabellini <sstabellini@kernel.org>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   b2dd946ece..cba6d44a13  cba6d44a13d5e25334d164e27cb1b1d7674aa05e -> master


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 01:01:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 01:01:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598322.933038 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qemLh-00072L-2S; Sat, 09 Sep 2023 01:01:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598322.933038; Sat, 09 Sep 2023 01:01:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qemLg-00071d-Vl; Sat, 09 Sep 2023 01:01:20 +0000
Received: by outflank-mailman (input) for mailman id 598322;
 Sat, 09 Sep 2023 01:01:20 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qemLg-0006fP-6P; Sat, 09 Sep 2023 01:01:20 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qemLg-0001RT-3y; Sat, 09 Sep 2023 01:01:20 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qemLf-0000hY-T3; Sat, 09 Sep 2023 01:01:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qemLf-00057M-Sa; Sat, 09 Sep 2023 01:01:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=4MH1PHkssf2oReLX4S+fZplWUZaKAm/1hHUrQz/4dJU=; b=52/bI0KE7VGy6IpghaQ4Vbm3wC
	DE9AyXLJTasFPTs9idFQ3BLBID29Y7QJMcpYIMcteS1oetZf4jX8nVL5ZEkV9R/+viEjK9S0aU2gO
	M7mNywRkFD1LCox4eFcmrK+VJ3AY/tmyI5DlRJcdR++99976R5xsa3rkQjkwpNjeIGW4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182786-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182786: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=b240eab03530f063ef5438497d70a731b19a201e
X-Osstest-Versions-That:
    ovmf=d4ae5df71190148c902942c3462245e97ed2fcc8
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 01:01:19 +0000

flight 182786 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182786/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 b240eab03530f063ef5438497d70a731b19a201e
baseline version:
 ovmf                 d4ae5df71190148c902942c3462245e97ed2fcc8

Last test of basis   182779  2023-09-08 20:44:14 Z    0 days
Testing same since   182786  2023-09-08 22:40:42 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrei Otcheretianski <andrei.otcheretianski@intel.com>
  Michael D Kinney <michael.d.kinney@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   d4ae5df711..b240eab035  b240eab03530f063ef5438497d70a731b19a201e -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 01:25:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 01:25:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598330.933048 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qemjD-0005B7-Uk; Sat, 09 Sep 2023 01:25:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598330.933048; Sat, 09 Sep 2023 01:25:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qemjD-0005B0-S6; Sat, 09 Sep 2023 01:25:39 +0000
Received: by outflank-mailman (input) for mailman id 598330;
 Sat, 09 Sep 2023 01:25:38 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qemjC-0005Aq-P7; Sat, 09 Sep 2023 01:25:38 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qemjC-0006o4-M8; Sat, 09 Sep 2023 01:25:38 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qemjC-0001IA-Dv; Sat, 09 Sep 2023 01:25:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qemjC-0002sq-DR; Sat, 09 Sep 2023 01:25:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=t3Mvhc6asHMDzuCEuH32tmH9Ycqzqa+4wkaGCi5xO3o=; b=LFB2jY1rV5IeQthoG1NCL8431Q
	W94h8TiuEXT0d/sDNc3CcENgc1vIKPdwS3MEKntbsjbvUrpJcJaHduYqgo9wCXYd2qs6BPjo281jl
	1/ge/a9n9s1xYOm1FlN172Zm9wwMY5UkPuypSYP4bym/NxmdwSG/+sex4gqY8KENfGt0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182789-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182789: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=49b2d6a529122f10e17a17f807d8d51154b5ba14
X-Osstest-Versions-That:
    xen=cba6d44a13d5e25334d164e27cb1b1d7674aa05e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 01:25:38 +0000

flight 182789 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182789/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  49b2d6a529122f10e17a17f807d8d51154b5ba14
baseline version:
 xen                  cba6d44a13d5e25334d164e27cb1b1d7674aa05e

Last test of basis   182726  2023-09-08 02:00:26 Z    0 days
Testing same since   182789  2023-09-08 23:00:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Henry Wang <Henry.Wang@arm.com>
  Julien Grall <jgrall@amazon.com>
  Penny Zheng <penny.zheng@arm.com>
  Wei Chen <wei.chen@arm.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   cba6d44a13..49b2d6a529  49b2d6a529122f10e17a17f807d8d51154b5ba14 -> smoke


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 02:18:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 02:18:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598341.933064 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qenXu-0002w2-VH; Sat, 09 Sep 2023 02:18:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598341.933064; Sat, 09 Sep 2023 02:18:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qenXu-0002vv-Q9; Sat, 09 Sep 2023 02:18:02 +0000
Received: by outflank-mailman (input) for mailman id 598341;
 Sat, 09 Sep 2023 02:18:02 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vbb/=EZ=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qenXt-0002vo-RG
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 02:18:02 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on2061b.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::61b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 182d66c0-4eb7-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 04:17:59 +0200 (CEST)
Received: from SA0PR11CA0010.namprd11.prod.outlook.com (2603:10b6:806:d3::15)
 by SJ2PR12MB8944.namprd12.prod.outlook.com (2603:10b6:a03:53e::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Sat, 9 Sep
 2023 02:17:54 +0000
Received: from SN1PEPF0002BA4F.namprd03.prod.outlook.com
 (2603:10b6:806:d3:cafe::5e) by SA0PR11CA0010.outlook.office365.com
 (2603:10b6:806:d3::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31 via Frontend
 Transport; Sat, 9 Sep 2023 02:17:54 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF0002BA4F.mail.protection.outlook.com (10.167.242.72) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.11 via Frontend Transport; Sat, 9 Sep 2023 02:17:53 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 8 Sep
 2023 21:17:51 -0500
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 8 Sep
 2023 21:17:07 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 8 Sep 2023 21:17:05 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 182d66c0-4eb7-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kfUZhPpqKshtU5uCMD03+Lf2Rjpc2iv+vka2WOMVqK5/phJyRjffb/ukI1e+LdeNdFRzkLtIPerwNdqyciYuKtaxXUUTWvmaY3b0B2EQyPsEWDuQRvj/cz6rGUgW2N/KdTYQpNMyumgiK+8noVaQ/VhE6KhcqkXnGQiIhxJ8BlUYvWNwDg2vukqVYhrzxy/z+PXD74kqVBpX4l207wvLie7i4YURDcQY0O7tDLBlkf5h13NcQejlS/3OEG3CjDekVhHrLeoHLG2MhrFppasS5aWTQB/hU+Qaa2omS9aysYReTsn2KEomy7F48w6zfw2p7N1d1QSQgTAbpUtdiIv86g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3+Q2vwNFkt9nN2RnNSQpAPJeDq3PF7nllByiHIMEpXc=;
 b=idQUZiKkGBWSsjRU6jrOoDpLhNmVd82TN3BKTpXHbuOpz4K2oNZyhgaWpXxsE6oTQQZZc60rTE4qzv0TzrGizH2Y8kLSSB76mPTgdUoWXt3Dtfn71NxvQtjxMc0iAJHLhhsxz0GdlSRKOw85cqN7jZJvHB47SnaujUMD+Nv1nqr9868wASYf8LpF79TTkcR3pQSJckpI27mUMC/5GQli+ArqpGXPlYdRxqdih1GXWBmS05OXxCtBIJ2DELy+IPmOJGT3k3OfoDL0reAWr6kQZjC5oS/QO0PwQSpHPPt3b/NCcPq58O8BnLP9q3IQ9C71D7+AByHcuuVVp9JTKIZKRw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3+Q2vwNFkt9nN2RnNSQpAPJeDq3PF7nllByiHIMEpXc=;
 b=yu7m/KBjblhOFUYz7BXmVRDQ07V165j7Y9ad9QRb3WLkPWnF6cvJ5WetByshBGhHNbxo3WkE4N4cvKpl1YSLwaA33L+GF52If5JP0GfpWAPg6IDJ8FRgoMlhAZTUxFYzNQ+mbcIyWDCGt0iiL5uYee+q2nM0NttrbZUClx+NfY8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, George Dunlap <george.dunlap@citrix.com>, Julien Grall
	<julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant
	<paul@xen.org>, Kevin Tian <kevin.tian@intel.com>
Subject: [PATCH v6 0/4] vPCI capabilities filtering
Date: Fri, 8 Sep 2023 22:16:24 -0400
Message-ID: <20230909021647.558115-1-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002BA4F:EE_|SJ2PR12MB8944:EE_
X-MS-Office365-Filtering-Correlation-Id: 2db006a1-9537-4e41-8516-08dbb0daf969
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	B6MdNbBEEpTsspuShIpKxM25dvi+yxdWLKfqHywvVc/B1iLr8v/9QR4/wjbE57wwmNqfBaHtCnV3iti8qWue3IzV18TArNs8mfX76NqvOPTKxIAg3ncnJB+UWmgAA0ep8xmXI1BujKo01X1U9hM4B+Dk5yr9px6W3apwe4svTwehqrsZ4G3IgLBqTG+HyXrBPpC6EFip04oWU7fwNe6H6VlJ/FJNR8gQx6ez2nDRUOn9YNr2x4LvcJMB+RDixqvj6rVfPNuDBaBmmrIdmldRL5RBbUuM6H+XwINzxmWwzvaXc/jR+sS0MapCi+nJk/N6x6/dmACDCYA/oMrs2DLC/SI0wNfGm7Uf04Xishne+dshiDLUkLXivZSSzjfK23hZj6pTJ+JbzzoC87v7z4PEKh14afVork6P6ELBqzbigE9LbLFlk5qCZiX3omjZ3sgkwH0UCARqN3hr0vtCXek7RMOiMleSkZLDRZAtbr9vfonFYoEmhRhbsrlc5d/iFrKhZCB6tEbTK+KlUzqn/WWyGY0hPja2ouGuW4/GmXsGWs6ebAy/Sw7Hwpu18ims/7I7Nir9sb2dqeKFXrVcIVNGUoCGuyO80K0/Kx2zS5h4dEULEtG7Yt/f1Vpr8sRL5Ulv0oft1roaVgphsde9Zz4iPsDOgpBNeEx+8LM5PdwicX2GwyR8UyY+JnpVH+OiEgKAvVomvQAuKe+hNu9kDBMH5TRh7aPQwu/xpZ/PCBzjSNG0JXNajc10jaBO2KWI9/xlDuTIE8PJ03A/iIRFjmnbjQ==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(136003)(346002)(39860400002)(376002)(451199024)(82310400011)(186009)(1800799009)(36840700001)(46966006)(40470700004)(5660300002)(70206006)(44832011)(8676002)(8936002)(41300700001)(70586007)(54906003)(6916009)(2906002)(478600001)(6666004)(316002)(966005)(4326008)(36860700001)(336012)(1076003)(26005)(426003)(2616005)(47076005)(7416002)(83380400001)(81166007)(82740400003)(356005)(66899024)(40460700003)(40480700001)(86362001)(36756003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Sep 2023 02:17:53.6233
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2db006a1-9537-4e41-8516-08dbb0daf969
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002BA4F.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8944

This small series enables vPCI to filter which PCI capabilities we expose to a
domU. This series adds vPCI register handlers within
xen/drivers/vpci/header.c:init_bars(), along with some supporting functions.

Note there are minor rebase conflicts with the in-progress vPCI series [1].
These conflicts fall into the category of functions and code being added
adjacent to one another, so are easily resolved. I did not identify any
dependency on the vPCI locking work, and the two series deal with different
aspects of emulating the PCI header.

Future work may involve adding handlers for more registers in the vPCI header,
such as VID/DID, etc. Future work may also involve exposing additional
capabilities to the guest for broader device/driver support.

v5->v6:
* drop ("xen/pci: update PCI_STATUS_* constants") as it has been committed

v4->v5:
* drop ("x86/msi: remove some unused-but-set-variables") as it has been
  committed
* add ("xen/pci: update PCI_STATUS_* constants")
* squash ro_mask patch

v3->v4:
* drop "xen/pci: address a violation of MISRA C:2012 Rule 8.3" as it has been
  committed
* re-order status register handler and capabilities filtering patches
* split an unrelated change from ("xen/pci: convert pci_find_*cap* to pci_sbdf_t")
  into its own patch
* add new patch ("x86/msi: rearrange read_pci_mem_bar slightly") based on
  feedback
* add new RFC patch ("xen/vpci: support ro mask")

v2->v3:
* drop RFC "xen/vpci: header: avoid cast for value passed to vpci_read_val"
* minor misra C violation fixup in preparatory patch
* switch to pci_sbdf_t in preparatory patch
* introduce status handler

v1->v2:
* squash helper functions into the patch where they are used to avoid transient
  dead code situation
* add new RFC patch, possibly throwaway, to get an idea of what it would look
  like to get rid of the (void *)(uintptr_t) cast by introducing a new memory
  allocation

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html

Stewart Hildebrand (4):
  xen/pci: convert pci_find_*cap* to pci_sbdf_t
  x86/msi: rearrange read_pci_mem_bar slightly
  xen/vpci: header: status register handler
  xen/vpci: header: filter PCI capabilities

 xen/arch/x86/msi.c                         | 62 ++++++---------
 xen/drivers/char/ehci-dbgp.c               |  3 +-
 xen/drivers/passthrough/amd/iommu_detect.c |  2 +-
 xen/drivers/passthrough/ats.c              |  4 +-
 xen/drivers/passthrough/ats.h              |  6 +-
 xen/drivers/passthrough/msi.c              |  6 +-
 xen/drivers/passthrough/pci.c              | 21 ++---
 xen/drivers/passthrough/vtd/quirks.c       | 10 +--
 xen/drivers/passthrough/vtd/x86/ats.c      |  3 +-
 xen/drivers/pci/pci.c                      | 52 ++++++++-----
 xen/drivers/vpci/header.c                  | 89 ++++++++++++++++++++++
 xen/drivers/vpci/msi.c                     |  4 +-
 xen/drivers/vpci/msix.c                    |  4 +-
 xen/drivers/vpci/vpci.c                    | 67 +++++++++++++---
 xen/include/xen/pci.h                      | 14 ++--
 xen/include/xen/pci_regs.h                 |  9 +++
 xen/include/xen/vpci.h                     | 13 ++++
 17 files changed, 252 insertions(+), 117 deletions(-)


base-commit: 49b2d6a529122f10e17a17f807d8d51154b5ba14
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 02:18:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 02:18:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598342.933074 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qenYE-0003EP-5N; Sat, 09 Sep 2023 02:18:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598342.933074; Sat, 09 Sep 2023 02:18:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qenYE-0003EI-2g; Sat, 09 Sep 2023 02:18:22 +0000
Received: by outflank-mailman (input) for mailman id 598342;
 Sat, 09 Sep 2023 02:18:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vbb/=EZ=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qenYD-0002vo-03
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 02:18:21 +0000
Received: from NAM04-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam04on20602.outbound.protection.outlook.com
 [2a01:111:f400:7e8c::602])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 248f71a8-4eb7-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 04:18:19 +0200 (CEST)
Received: from SA0PR13CA0005.namprd13.prod.outlook.com (2603:10b6:806:130::10)
 by DM4PR12MB6446.namprd12.prod.outlook.com (2603:10b6:8:be::7) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6745.34; Sat, 9 Sep 2023 02:18:13 +0000
Received: from SN1PEPF0002BA4D.namprd03.prod.outlook.com
 (2603:10b6:806:130:cafe::11) by SA0PR13CA0005.outlook.office365.com
 (2603:10b6:806:130::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.11 via Frontend
 Transport; Sat, 9 Sep 2023 02:18:13 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF0002BA4D.mail.protection.outlook.com (10.167.242.70) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.11 via Frontend Transport; Sat, 9 Sep 2023 02:18:12 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 8 Sep
 2023 21:18:11 -0500
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 8 Sep
 2023 21:18:11 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 8 Sep 2023 21:18:09 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 248f71a8-4eb7-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jr4mkQ3VphiVOmd2Ew90MY3z7xDt/B+zoZpt3NgRHvbglhlKjUOZIoXP3LXxztraQyISDnlL1Sm83L19UjCkQURrkvcKWX5OjjKi0Nv53XCSTMOI6fuelSUxr0xtotmVDd41Tb3bXpoPF6/sUTmQCsKWz1A3Ukluf2pkGmvKDigaAhn8wf/fzPPx0T3w2GxKjjYbvT/dSS5JO0J2wQaD+hxSE4QoKnwgRCzhpFBAZeWllqBn4XwSgX/i9N9jkhFpflYaW6a8A9Y17llH96ZJcONVOtKC9i8J523TA232XTi5rIF5Rt12iFTxCCvevz6KdDhTVc+IXdhQ4llTmFHxJg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=RjGm0180x9ZTq619vf/+c98/7pcXUYOoX80SRHhD/4c=;
 b=bDPr8pcuXpqnEc76NXZQgoOoY0O+lM0djg/6zQEij+IjwVtd+SGWI39ltKyaVT4/yL3KH4zblorKPdLCmUZ5DyqqnNkBoQjm9XFJHbGna0coeMNo2SzvK+4oG63yTsVv8TpgkgKAceRBJt3eiMeAFBVoZZX7x29wshOxgjBHNzCaUgG9CM28JJRtIGMSQhCgTXeD7xxxUnHwXTouADl1GNkQzcttakRAG6V8fdC/29CqsNvAN5yGcdbvMDEuxMoxcP4+pRwNJjQmTO0zZUKFCGyxD44lvhGTexW9iBcsKlb12AjgiXKTnyiwtarPgTvoNre/lOSPzHfjB8nGrj3G8g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RjGm0180x9ZTq619vf/+c98/7pcXUYOoX80SRHhD/4c=;
 b=yICR2VVVPamJX1ZbfUbpYuGvFs/mTF+ap1LRCxxpdcFwsjMKKv2RuRdOlRtsN3RhiomA1mstRqM2giytROSJNsgegkDDylzUCG8THv6zAJh4FjnuDg0S099G7/6ytMpq66hbth/vei1x+xMRoyiCQUdtdHfkXltW0ZUCMuMbaBg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, George Dunlap <george.dunlap@citrix.com>, Julien Grall
	<julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Paul Durrant
	<paul@xen.org>, Kevin Tian <kevin.tian@intel.com>
Subject: [PATCH v6 1/4] xen/pci: convert pci_find_*cap* to pci_sbdf_t
Date: Fri, 8 Sep 2023 22:16:25 -0400
Message-ID: <20230909021647.558115-2-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20230909021647.558115-1-stewart.hildebrand@amd.com>
References: <20230909021647.558115-1-stewart.hildebrand@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002BA4D:EE_|DM4PR12MB6446:EE_
X-MS-Office365-Filtering-Correlation-Id: d656cc31-9064-4a9f-71af-08dbb0db047c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZKGeNJnhabWqqMDnRMuFb4SLYb97RzRz29d3vdmxhMZACGjt3dQwgtwrX85+CQllogmTrB/VVVvEmLndKb1usOrI8ae5ZIsd0Qgx/owHgnnVFKS+H1KYduPaHGtJuTHn3TuAGowlQQrTCi8ja5n33xe91jBQaxpXC9jdACsrNoP00685EjBZYccsSNNJHIyfqoYF3aqeyQAycWuLOUC1jc7L2C7q/rXWi+HiNZh+67LcozpjHU4E2mnVlZjFRB+lj/MtB8jipLgx7WJ00sXSxyirO+3KJOsFnJ6jNYrwCFK9eiKbNuBm9LpcimNDRNCry7V1a1hZymMVovGGGg5qy9emJtvWAjpfEInrnpmEvmZ+EbCU9aem7lDFD6v1aCcAWWXSvGKh28U6Ib1uiYEb2l8JSJ9btqvoKKVWXj/41dYj31wSZmWXbZxW4H5RW8bM1xF2quZ7otVAvJY84Ukc1BH7ofZZWtJcFHSD5pCkBMPQhWK7d0LhFpVFPpuBykjBv3hfkOXhs8OkDmLPsI+xeofFDTT6q2TjEGndVWKqnMgL5WpUjhjviClxlGFXkXc7YlRra61IKmUfEbKr68N2JkB6K29U1sYhp2i3b4xjrI3QdPCtuhzr9ZP2GYdBaJFWrUAgGLjeIU9R7aI3fPhHuSpNEOOQs3MXcl38xU90FsHNge2xC8ipDO1yds9NVTGpKSagboLMkBfxJm+/odQEbihgQlYf+cpRkyG7kk0s7LeBA41ST4k5ad4aMztGNlD+U4RG0N6UcEt0AmDNxfzfiA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(39860400002)(396003)(346002)(136003)(1800799009)(186009)(451199024)(82310400011)(40470700004)(46966006)(36840700001)(70206006)(81166007)(356005)(4326008)(6666004)(41300700001)(86362001)(40460700003)(26005)(1076003)(36756003)(82740400003)(47076005)(40480700001)(36860700001)(2906002)(2616005)(426003)(6916009)(336012)(83380400001)(478600001)(8676002)(8936002)(30864003)(5660300002)(54906003)(7416002)(44832011)(70586007)(316002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Sep 2023 02:18:12.2022
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: d656cc31-9064-4a9f-71af-08dbb0db047c
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002BA4D.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6446

Convert pci_find_*cap* functions and call sites to pci_sbdf_t, and remove some
now unused local variables. Also change to more appropriate types on lines that
are already being modified as a result of the pci_sbdf_t conversion.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
I built with EXTRA_CFLAGS_XEN_CORE="-Wunused-but-set-variable" (and
unfortunately -Wno-error=unused-but-set-variable too) to identify locations of
unneeded local variables as a result of the change to pci_sbdf_t.

v5->v6:
* no change

v4->v5:
* add Jan's R-b

v3->v4:
* use more appropriate types on lines that are being modified anyway
* remove "no functional change" from commit description

v2->v3:
* new patch
---
 xen/arch/x86/msi.c                         | 40 ++++++----------------
 xen/drivers/char/ehci-dbgp.c               |  3 +-
 xen/drivers/passthrough/amd/iommu_detect.c |  2 +-
 xen/drivers/passthrough/ats.c              |  4 +--
 xen/drivers/passthrough/ats.h              |  6 ++--
 xen/drivers/passthrough/msi.c              |  6 ++--
 xen/drivers/passthrough/pci.c              | 21 +++++-------
 xen/drivers/passthrough/vtd/quirks.c       | 10 ++----
 xen/drivers/passthrough/vtd/x86/ats.c      |  3 +-
 xen/drivers/pci/pci.c                      | 32 +++++++++--------
 xen/drivers/vpci/msi.c                     |  4 +--
 xen/drivers/vpci/msix.c                    |  4 +--
 xen/include/xen/pci.h                      | 11 +++---
 13 files changed, 58 insertions(+), 88 deletions(-)

diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
index 41b82f3e87cb..8d4fd43b10a6 100644
--- a/xen/arch/x86/msi.c
+++ b/xen/arch/x86/msi.c
@@ -283,7 +283,7 @@ static void msi_set_enable(struct pci_dev *dev, int enable)
     u8 slot = PCI_SLOT(dev->devfn);
     u8 func = PCI_FUNC(dev->devfn);
 
-    pos = pci_find_cap_offset(seg, bus, slot, func, PCI_CAP_ID_MSI);
+    pos = pci_find_cap_offset(dev->sbdf, PCI_CAP_ID_MSI);
     if ( pos )
         __msi_set_enable(seg, bus, slot, func, pos, enable);
 }
@@ -291,12 +291,9 @@ static void msi_set_enable(struct pci_dev *dev, int enable)
 static void msix_set_enable(struct pci_dev *dev, int enable)
 {
     int pos;
-    u16 control, seg = dev->seg;
-    u8 bus = dev->bus;
-    u8 slot = PCI_SLOT(dev->devfn);
-    u8 func = PCI_FUNC(dev->devfn);
+    uint16_t control;
 
-    pos = pci_find_cap_offset(seg, bus, slot, func, PCI_CAP_ID_MSIX);
+    pos = pci_find_cap_offset(dev->sbdf, PCI_CAP_ID_MSIX);
     if ( pos )
     {
         control = pci_conf_read16(dev->sbdf, msix_control_reg(pos));
@@ -603,13 +600,10 @@ static int msi_capability_init(struct pci_dev *dev,
     struct msi_desc *entry;
     int pos;
     unsigned int i, mpos;
-    u16 control, seg = dev->seg;
-    u8 bus = dev->bus;
-    u8 slot = PCI_SLOT(dev->devfn);
-    u8 func = PCI_FUNC(dev->devfn);
+    uint16_t control;
 
     ASSERT(pcidevs_locked());
-    pos = pci_find_cap_offset(seg, bus, slot, func, PCI_CAP_ID_MSI);
+    pos = pci_find_cap_offset(dev->sbdf, PCI_CAP_ID_MSI);
     if ( !pos )
         return -ENODEV;
     control = pci_conf_read16(dev->sbdf, msi_control_reg(pos));
@@ -680,8 +674,8 @@ static u64 read_pci_mem_bar(u16 seg, u8 bus, u8 slot, u8 func, u8 bir, int vf)
     {
         struct pci_dev *pdev = pci_get_pdev(NULL,
                                             PCI_SBDF(seg, bus, slot, func));
-        unsigned int pos = pci_find_ext_capability(seg, bus,
-                                                   PCI_DEVFN(slot, func),
+        unsigned int pos = pci_find_ext_capability(PCI_SBDF(seg, bus, slot,
+                                                            func),
                                                    PCI_EXT_CAP_ID_SRIOV);
         uint16_t ctrl = pci_conf_read16(PCI_SBDF(seg, bus, slot, func),
                                         pos + PCI_SRIOV_CTRL);
@@ -772,8 +766,7 @@ static int msix_capability_init(struct pci_dev *dev,
     u8 slot = PCI_SLOT(dev->devfn);
     u8 func = PCI_FUNC(dev->devfn);
     bool maskall = msix->host_maskall, zap_on_error = false;
-    unsigned int pos = pci_find_cap_offset(seg, bus, slot, func,
-                                           PCI_CAP_ID_MSIX);
+    unsigned int pos = pci_find_cap_offset(dev->sbdf, PCI_CAP_ID_MSIX);
 
     if ( !pos )
         return -ENODEV;
@@ -1097,12 +1090,7 @@ static void _pci_cleanup_msix(struct arch_msix *msix)
 static void __pci_disable_msix(struct msi_desc *entry)
 {
     struct pci_dev *dev = entry->dev;
-    u16 seg = dev->seg;
-    u8 bus = dev->bus;
-    u8 slot = PCI_SLOT(dev->devfn);
-    u8 func = PCI_FUNC(dev->devfn);
-    unsigned int pos = pci_find_cap_offset(seg, bus, slot, func,
-                                           PCI_CAP_ID_MSIX);
+    unsigned int pos = pci_find_cap_offset(dev->sbdf, PCI_CAP_ID_MSIX);
     u16 control = pci_conf_read16(dev->sbdf,
                                   msix_control_reg(entry->msi_attrib.pos));
     bool maskall = dev->msix->host_maskall;
@@ -1206,8 +1194,7 @@ void pci_cleanup_msi(struct pci_dev *pdev)
 
 int pci_reset_msix_state(struct pci_dev *pdev)
 {
-    unsigned int pos = pci_find_cap_offset(pdev->seg, pdev->bus, pdev->sbdf.dev,
-                                           pdev->sbdf.fn, PCI_CAP_ID_MSIX);
+    unsigned int pos = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_MSIX);
 
     ASSERT(pos);
     /*
@@ -1229,10 +1216,6 @@ int pci_reset_msix_state(struct pci_dev *pdev)
 int pci_msi_conf_write_intercept(struct pci_dev *pdev, unsigned int reg,
                                  unsigned int size, uint32_t *data)
 {
-    u16 seg = pdev->seg;
-    u8 bus = pdev->bus;
-    u8 slot = PCI_SLOT(pdev->devfn);
-    u8 func = PCI_FUNC(pdev->devfn);
     struct msi_desc *entry;
     unsigned int pos;
 
@@ -1240,8 +1223,7 @@ int pci_msi_conf_write_intercept(struct pci_dev *pdev, unsigned int reg,
     {
         entry = find_msi_entry(pdev, -1, PCI_CAP_ID_MSIX);
         pos = entry ? entry->msi_attrib.pos
-                    : pci_find_cap_offset(seg, bus, slot, func,
-                                          PCI_CAP_ID_MSIX);
+                    : pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_MSIX);
         ASSERT(pos);
 
         if ( reg >= pos && reg < msix_pba_offset_reg(pos) + 4 )
diff --git a/xen/drivers/char/ehci-dbgp.c b/xen/drivers/char/ehci-dbgp.c
index 72be4d9cc970..00cbdd5454dd 100644
--- a/xen/drivers/char/ehci-dbgp.c
+++ b/xen/drivers/char/ehci-dbgp.c
@@ -687,7 +687,8 @@ static unsigned int __init __find_dbgp(u8 bus, u8 slot, u8 func)
     if ( (class >> 8) != PCI_CLASS_SERIAL_USB_EHCI )
         return 0;
 
-    return pci_find_cap_offset(0, bus, slot, func, PCI_CAP_ID_EHCI_DEBUG);
+    return pci_find_cap_offset(PCI_SBDF(0, bus, slot, func),
+                               PCI_CAP_ID_EHCI_DEBUG);
 }
 
 static unsigned int __init find_dbgp(struct ehci_dbgp *dbgp,
diff --git a/xen/drivers/passthrough/amd/iommu_detect.c b/xen/drivers/passthrough/amd/iommu_detect.c
index 2317fa6a7d8d..cede44e6518f 100644
--- a/xen/drivers/passthrough/amd/iommu_detect.c
+++ b/xen/drivers/passthrough/amd/iommu_detect.c
@@ -27,7 +27,7 @@ static int __init get_iommu_msi_capabilities(
 {
     int pos;
 
-    pos = pci_find_cap_offset(seg, bus, dev, func, PCI_CAP_ID_MSI);
+    pos = pci_find_cap_offset(PCI_SBDF(seg, bus, dev, func), PCI_CAP_ID_MSI);
 
     if ( !pos )
         return -ENODEV;
diff --git a/xen/drivers/passthrough/ats.c b/xen/drivers/passthrough/ats.c
index 253f5c2e1042..0da183d057c5 100644
--- a/xen/drivers/passthrough/ats.c
+++ b/xen/drivers/passthrough/ats.c
@@ -24,11 +24,9 @@ boolean_param("ats", ats_enabled);
 int enable_ats_device(struct pci_dev *pdev, struct list_head *ats_list)
 {
     u32 value;
-    u16 seg = pdev->seg;
-    u8 bus = pdev->bus, devfn = pdev->devfn;
     int pos;
 
-    pos = pci_find_ext_capability(seg, bus, devfn, PCI_EXT_CAP_ID_ATS);
+    pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_ATS);
     BUG_ON(!pos);
 
     if ( iommu_verbose )
diff --git a/xen/drivers/passthrough/ats.h b/xen/drivers/passthrough/ats.h
index baa5f6a6dc04..f5e1d254e0d3 100644
--- a/xen/drivers/passthrough/ats.h
+++ b/xen/drivers/passthrough/ats.h
@@ -32,7 +32,8 @@ static inline int pci_ats_enabled(int seg, int bus, int devfn)
     u32 value;
     int pos;
 
-    pos = pci_find_ext_capability(seg, bus, devfn, PCI_EXT_CAP_ID_ATS);
+    pos = pci_find_ext_capability(PCI_SBDF(seg, bus, devfn),
+                                  PCI_EXT_CAP_ID_ATS);
     BUG_ON(!pos);
 
     value = pci_conf_read16(PCI_SBDF(seg, bus, devfn), pos + ATS_REG_CTL);
@@ -45,7 +46,8 @@ static inline int pci_ats_device(int seg, int bus, int devfn)
     if ( !ats_enabled )
         return 0;
 
-    return pci_find_ext_capability(seg, bus, devfn, PCI_EXT_CAP_ID_ATS);
+    return pci_find_ext_capability(PCI_SBDF(seg, bus, devfn),
+                                   PCI_EXT_CAP_ID_ATS);
 }
 
 #endif /* _ATS_H_ */
diff --git a/xen/drivers/passthrough/msi.c b/xen/drivers/passthrough/msi.c
index fb78e2ebe8a4..13d904692ef8 100644
--- a/xen/drivers/passthrough/msi.c
+++ b/xen/drivers/passthrough/msi.c
@@ -24,8 +24,7 @@ int pdev_msi_init(struct pci_dev *pdev)
 
     INIT_LIST_HEAD(&pdev->msi_list);
 
-    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
-                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSI);
+    pos = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_MSI);
     if ( pos )
     {
         uint16_t ctrl = pci_conf_read16(pdev->sbdf, msi_control_reg(pos));
@@ -33,8 +32,7 @@ int pdev_msi_init(struct pci_dev *pdev)
         pdev->msi_maxvec = multi_msi_capable(ctrl);
     }
 
-    pos = pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
-                              PCI_FUNC(pdev->devfn), PCI_CAP_ID_MSIX);
+    pos = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_MSIX);
     if ( pos )
     {
         struct arch_msix *msix = xzalloc(struct arch_msix);
diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index ed1f689227fa..04d00c7c37df 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -361,8 +361,7 @@ static struct pci_dev *alloc_pdev(struct pci_seg *pseg, u8 bus, u8 devfn)
             break;
 
         case DEV_TYPE_PCIe_ENDPOINT:
-            pos = pci_find_cap_offset(pseg->nr, bus, PCI_SLOT(devfn),
-                                      PCI_FUNC(devfn), PCI_CAP_ID_EXP);
+            pos = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_EXP);
             BUG_ON(!pos);
             cap = pci_conf_read16(pdev->sbdf, pos + PCI_EXP_DEVCAP);
             if ( cap & PCI_EXP_DEVCAP_PHANTOM )
@@ -565,13 +564,12 @@ struct pci_dev *pci_get_pdev(const struct domain *d, pci_sbdf_t sbdf)
 static void pci_enable_acs(struct pci_dev *pdev)
 {
     int pos;
-    u16 cap, ctrl, seg = pdev->seg;
-    u8 bus = pdev->bus;
+    uint16_t cap, ctrl;
 
     if ( !is_iommu_enabled(pdev->domain) )
         return;
 
-    pos = pci_find_ext_capability(seg, bus, pdev->devfn, PCI_EXT_CAP_ID_ACS);
+    pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_ACS);
     if (!pos)
         return;
 
@@ -704,7 +702,7 @@ int pci_add_device(u16 seg, u8 bus, u8 devfn,
 
     if ( !pdev->info.is_virtfn && !pdev->vf_rlen[0] )
     {
-        unsigned int pos = pci_find_ext_capability(seg, bus, devfn,
+        unsigned int pos = pci_find_ext_capability(pdev->sbdf,
                                                    PCI_EXT_CAP_ID_SRIOV);
         uint16_t ctrl = pci_conf_read16(pdev->sbdf, pos + PCI_SRIOV_CTRL);
 
@@ -916,7 +914,8 @@ enum pdev_type pdev_type(u16 seg, u8 bus, u8 devfn)
 {
     u16 class_device, creg;
     u8 d = PCI_SLOT(devfn), f = PCI_FUNC(devfn);
-    int pos = pci_find_cap_offset(seg, bus, d, f, PCI_CAP_ID_EXP);
+    unsigned int pos = pci_find_cap_offset(PCI_SBDF(seg, bus, devfn),
+                                           PCI_CAP_ID_EXP);
 
     class_device = pci_conf_read16(PCI_SBDF(seg, bus, d, f), PCI_CLASS_DEVICE);
     switch ( class_device )
@@ -1184,10 +1183,7 @@ static int hest_match_pci(const struct acpi_hest_aer_common *p,
 static bool hest_match_type(const struct acpi_hest_header *hest_hdr,
                               const struct pci_dev *pdev)
 {
-    unsigned int pos = pci_find_cap_offset(pdev->seg, pdev->bus,
-                                           PCI_SLOT(pdev->devfn),
-                                           PCI_FUNC(pdev->devfn),
-                                           PCI_CAP_ID_EXP);
+    unsigned int pos = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_EXP);
     u8 pcie = MASK_EXTR(pci_conf_read16(pdev->sbdf, pos + PCI_EXP_FLAGS),
                         PCI_EXP_FLAGS_TYPE);
 
@@ -1258,8 +1254,7 @@ bool pcie_aer_get_firmware_first(const struct pci_dev *pdev)
 {
     struct aer_hest_parse_info info = { .pdev = pdev };
 
-    return pci_find_cap_offset(pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
-                               PCI_FUNC(pdev->devfn), PCI_CAP_ID_EXP) &&
+    return pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_EXP) &&
            apei_hest_parse(aer_hest_parse, &info) >= 0 &&
            info.firmware_first;
 }
diff --git a/xen/drivers/passthrough/vtd/quirks.c b/xen/drivers/passthrough/vtd/quirks.c
index 5d706a539788..5a56565ea883 100644
--- a/xen/drivers/passthrough/vtd/quirks.c
+++ b/xen/drivers/passthrough/vtd/quirks.c
@@ -495,8 +495,6 @@ int me_wifi_quirk(struct domain *domain, uint8_t bus, uint8_t devfn,
 
 void pci_vtd_quirk(const struct pci_dev *pdev)
 {
-    int seg = pdev->seg;
-    int bus = pdev->bus;
     int pos;
     bool ff;
     u32 val, val2;
@@ -532,12 +530,10 @@ void pci_vtd_quirk(const struct pci_dev *pdev)
     /* Sandybridge-EP (Romley) */
     case 0x3c00: /* host bridge */
     case 0x3c01 ... 0x3c0b: /* root ports */
-        pos = pci_find_ext_capability(seg, bus, pdev->devfn,
-                                      PCI_EXT_CAP_ID_ERR);
+        pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_ERR);
         if ( !pos )
         {
-            pos = pci_find_ext_capability(seg, bus, pdev->devfn,
-                                          PCI_EXT_CAP_ID_VNDR);
+            pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_VNDR);
             while ( pos )
             {
                 val = pci_conf_read32(pdev->sbdf, pos + PCI_VNDR_HEADER);
@@ -546,7 +542,7 @@ void pci_vtd_quirk(const struct pci_dev *pdev)
                     pos += PCI_VNDR_HEADER;
                     break;
                 }
-                pos = pci_find_next_ext_capability(seg, bus, pdev->devfn, pos,
+                pos = pci_find_next_ext_capability(pdev->sbdf, pos,
                                                    PCI_EXT_CAP_ID_VNDR);
             }
             ff = 0;
diff --git a/xen/drivers/passthrough/vtd/x86/ats.c b/xen/drivers/passthrough/vtd/x86/ats.c
index 9de419775f90..1f5913bed9d2 100644
--- a/xen/drivers/passthrough/vtd/x86/ats.c
+++ b/xen/drivers/passthrough/vtd/x86/ats.c
@@ -57,8 +57,7 @@ int ats_device(const struct pci_dev *pdev, const struct acpi_drhd_unit *drhd)
         return 0;
 
     ats_drhd = find_ats_dev_drhd(drhd->iommu);
-    pos = pci_find_ext_capability(pdev->seg, pdev->bus, pdev->devfn,
-                                  PCI_EXT_CAP_ID_ATS);
+    pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_ATS);
 
     if ( pos && (ats_drhd == NULL) )
     {
diff --git a/xen/drivers/pci/pci.c b/xen/drivers/pci/pci.c
index c73a8c4124af..3569ccb24e9e 100644
--- a/xen/drivers/pci/pci.c
+++ b/xen/drivers/pci/pci.c
@@ -8,25 +8,25 @@
 #include <xen/pci.h>
 #include <xen/pci_regs.h>
 
-int pci_find_cap_offset(u16 seg, u8 bus, u8 dev, u8 func, u8 cap)
+unsigned int pci_find_cap_offset(pci_sbdf_t sbdf, unsigned int cap)
 {
     u8 id;
     int max_cap = 48;
     u8 pos = PCI_CAPABILITY_LIST;
     u16 status;
 
-    status = pci_conf_read16(PCI_SBDF(seg, bus, dev, func), PCI_STATUS);
+    status = pci_conf_read16(sbdf, PCI_STATUS);
     if ( (status & PCI_STATUS_CAP_LIST) == 0 )
         return 0;
 
     while ( max_cap-- )
     {
-        pos = pci_conf_read8(PCI_SBDF(seg, bus, dev, func), pos);
+        pos = pci_conf_read8(sbdf, pos);
         if ( pos < 0x40 )
             break;
 
         pos &= ~3;
-        id = pci_conf_read8(PCI_SBDF(seg, bus, dev, func), pos + PCI_CAP_LIST_ID);
+        id = pci_conf_read8(sbdf, pos + PCI_CAP_LIST_ID);
 
         if ( id == 0xff )
             break;
@@ -39,19 +39,20 @@ int pci_find_cap_offset(u16 seg, u8 bus, u8 dev, u8 func, u8 cap)
     return 0;
 }
 
-int pci_find_next_cap(u16 seg, u8 bus, unsigned int devfn, u8 pos, int cap)
+unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
+                               unsigned int cap)
 {
     u8 id;
     int ttl = 48;
 
     while ( ttl-- )
     {
-        pos = pci_conf_read8(PCI_SBDF(seg, bus, devfn), pos);
+        pos = pci_conf_read8(sbdf, pos);
         if ( pos < 0x40 )
             break;
 
         pos &= ~3;
-        id = pci_conf_read8(PCI_SBDF(seg, bus, devfn), pos + PCI_CAP_LIST_ID);
+        id = pci_conf_read8(sbdf, pos + PCI_CAP_LIST_ID);
 
         if ( id == 0xff )
             break;
@@ -65,21 +66,21 @@ int pci_find_next_cap(u16 seg, u8 bus, unsigned int devfn, u8 pos, int cap)
 
 /**
  * pci_find_ext_capability - Find an extended capability
- * @seg/@bus/@devfn: PCI device to query
+ * @sbdf: PCI device to query
  * @cap: capability code
  *
  * Returns the address of the requested extended capability structure
  * within the device's PCI configuration space or 0 if the device does
  * not support it.
  */
-int pci_find_ext_capability(int seg, int bus, int devfn, int cap)
+unsigned int pci_find_ext_capability(pci_sbdf_t sbdf, unsigned int cap)
 {
-    return pci_find_next_ext_capability(seg, bus, devfn, 0, cap);
+    return pci_find_next_ext_capability(sbdf, 0, cap);
 }
 
 /**
  * pci_find_next_ext_capability - Find another extended capability
- * @seg/@bus/@devfn: PCI device to query
+ * @sbdf: PCI device to query
  * @start: starting position
  * @cap: capability code
  *
@@ -87,13 +88,14 @@ int pci_find_ext_capability(int seg, int bus, int devfn, int cap)
  * within the device's PCI configuration space or 0 if the device does
  * not support it.
  */
-int pci_find_next_ext_capability(int seg, int bus, int devfn, int start, int cap)
+unsigned int pci_find_next_ext_capability(pci_sbdf_t sbdf, unsigned int start,
+                                          unsigned int cap)
 {
     u32 header;
     int ttl = 480; /* 3840 bytes, minimum 8 bytes per capability */
-    int pos = max(start, 0x100);
+    unsigned int pos = max(start, 0x100U);
 
-    header = pci_conf_read32(PCI_SBDF(seg, bus, devfn), pos);
+    header = pci_conf_read32(sbdf, pos);
 
     /*
      * If we have no capabilities, this is indicated by cap ID,
@@ -109,7 +111,7 @@ int pci_find_next_ext_capability(int seg, int bus, int devfn, int start, int cap
         pos = PCI_EXT_CAP_NEXT(header);
         if ( pos < 0x100 )
             break;
-        header = pci_conf_read32(PCI_SBDF(seg, bus, devfn), pos);
+        header = pci_conf_read32(sbdf, pos);
     }
     return 0;
 }
diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c
index 2814b63d2be7..a253ccbd7db7 100644
--- a/xen/drivers/vpci/msi.c
+++ b/xen/drivers/vpci/msi.c
@@ -184,9 +184,7 @@ static void cf_check mask_write(
 
 static int cf_check init_msi(struct pci_dev *pdev)
 {
-    uint8_t slot = PCI_SLOT(pdev->devfn), func = PCI_FUNC(pdev->devfn);
-    unsigned int pos = pci_find_cap_offset(pdev->seg, pdev->bus, slot, func,
-                                           PCI_CAP_ID_MSI);
+    unsigned int pos = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_MSI);
     uint16_t control;
     int ret;
 
diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c
index 1be861343dba..d1126a417da9 100644
--- a/xen/drivers/vpci/msix.c
+++ b/xen/drivers/vpci/msix.c
@@ -659,14 +659,12 @@ int vpci_make_msix_hole(const struct pci_dev *pdev)
 static int cf_check init_msix(struct pci_dev *pdev)
 {
     struct domain *d = pdev->domain;
-    uint8_t slot = PCI_SLOT(pdev->devfn), func = PCI_FUNC(pdev->devfn);
     unsigned int msix_offset, i, max_entries;
     uint16_t control;
     struct vpci_msix *msix;
     int rc;
 
-    msix_offset = pci_find_cap_offset(pdev->seg, pdev->bus, slot, func,
-                                      PCI_CAP_ID_MSIX);
+    msix_offset = pci_find_cap_offset(pdev->sbdf, PCI_CAP_ID_MSIX);
     if ( !msix_offset )
         return 0;
 
diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h
index 7d8a7cd21301..ea6a4c9abf38 100644
--- a/xen/include/xen/pci.h
+++ b/xen/include/xen/pci.h
@@ -193,11 +193,12 @@ int pci_mmcfg_read(unsigned int seg, unsigned int bus,
                    unsigned int devfn, int reg, int len, u32 *value);
 int pci_mmcfg_write(unsigned int seg, unsigned int bus,
                     unsigned int devfn, int reg, int len, u32 value);
-int pci_find_cap_offset(u16 seg, u8 bus, u8 dev, u8 func, u8 cap);
-int pci_find_next_cap(u16 seg, u8 bus, unsigned int devfn, u8 pos, int cap);
-int pci_find_ext_capability(int seg, int bus, int devfn, int cap);
-int pci_find_next_ext_capability(int seg, int bus, int devfn, int start,
-                                 int cap);
+unsigned int pci_find_cap_offset(pci_sbdf_t sbdf, unsigned int cap);
+unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
+                               unsigned int cap);
+unsigned int pci_find_ext_capability(pci_sbdf_t sbdf, unsigned int cap);
+unsigned int pci_find_next_ext_capability(pci_sbdf_t sbdf, unsigned int start,
+                                          unsigned int cap);
 const char *parse_pci(const char *, unsigned int *seg, unsigned int *bus,
                       unsigned int *dev, unsigned int *func);
 const char *parse_pci_seg(const char *, unsigned int *seg, unsigned int *bus,
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 02:18:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 02:18:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598346.933083 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qenYX-0003eQ-IB; Sat, 09 Sep 2023 02:18:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598346.933083; Sat, 09 Sep 2023 02:18:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qenYX-0003eJ-F5; Sat, 09 Sep 2023 02:18:41 +0000
Received: by outflank-mailman (input) for mailman id 598346;
 Sat, 09 Sep 2023 02:18:40 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vbb/=EZ=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qenYW-0003dU-6I
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 02:18:40 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7e89::61b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2ed67621-4eb7-11ee-9b0d-b553b5be7939;
 Sat, 09 Sep 2023 04:18:38 +0200 (CEST)
Received: from CY5PR15CA0007.namprd15.prod.outlook.com (2603:10b6:930:14::13)
 by CH2PR12MB4890.namprd12.prod.outlook.com (2603:10b6:610:63::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Sat, 9 Sep
 2023 02:18:31 +0000
Received: from CY4PEPF0000E9D0.namprd03.prod.outlook.com
 (2603:10b6:930:14:cafe::46) by CY5PR15CA0007.outlook.office365.com
 (2603:10b6:930:14::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.39 via Frontend
 Transport; Sat, 9 Sep 2023 02:18:31 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9D0.mail.protection.outlook.com (10.167.241.143) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.11 via Frontend Transport; Sat, 9 Sep 2023 02:18:30 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 8 Sep
 2023 21:18:30 -0500
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 8 Sep
 2023 21:18:29 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 8 Sep 2023 21:18:28 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2ed67621-4eb7-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lFsKkighMrLYKs3awVxLXMjlziUJ+0nLECxdgQrA8LjK10IK1mkoAs5HxX7XL99OS40oPgAhWsQZIKpJhXMOODuj1lip9KQLVx4/gDzNF/fziHvvhE6xsMkN4zHENAhqtLRBni5FxmcJOmoyrAVwg4SwArjRvZl3GbRAgB0ufob8iZ/264NF7yvXPHA90khIo610v5nBOPIFDZcc8nmdTf9vDYQBdRA9uPA/bmaKnwEb9CQf3xg+1RNr+PVSHVXB263nrRlbR863lSO7AFHziTfO4SdxxqVc2RyMg/gr5Mqh89txjcyYarISzwDF7RTKR4jWgEv45QlHzjNfQvnFuw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Nr7OL8yPNaL5TrLID4oNgMxCjNkIO8tK0RAkzMUQ/ac=;
 b=HdVpMWvgodgABd/IPikqFDH+sP9EEKJuaP3xmCMgfTwEEPAz4xhLGggjEzv3mmnkWC2AMhcnAjnpej/W1kP8ZZb5hb2aVzXa96I8GsJzF/1SJjcPrYYnHYX1Jhoh/Y1ejmAr8HO3+miRuQBh6eOh62+DzdX5h6v4D8LP9016LTt3pyPRiXKaSqdrxCyHrlNrHa7zIj/lzgMSqUrkpr9Nq8HB8P1lCOXEihgbiz7OUtKK4y1rFyFa9B4jqr0CKyOnw/ojl5xRToi216V2/y1iXGMR7/Z5LeMpSxp8Oq/au9cNEHT80I/wFiBcTsxsFvh5b64d8JynROKGTt+rZzsOYg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Nr7OL8yPNaL5TrLID4oNgMxCjNkIO8tK0RAkzMUQ/ac=;
 b=bNNpnWxm+Fr2/aNSjM+g5GEyjcTa/WfI+/akQxPbDEXuzM3C8jspYc4x5IAo86FMVJWsSaxEY4M+5D8B98ZvN7LQrjcp9F8Cdm9hLMh9Tw4mLCrlByC+h2ej36z86T4D6Mn6swTwkySy3urMJUA8u+So3PcLIM5s6NNghFtpA5E=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>
Subject: [PATCH v6 2/4] x86/msi: rearrange read_pci_mem_bar slightly
Date: Fri, 8 Sep 2023 22:16:26 -0400
Message-ID: <20230909021647.558115-3-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20230909021647.558115-1-stewart.hildebrand@amd.com>
References: <20230909021647.558115-1-stewart.hildebrand@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D0:EE_|CH2PR12MB4890:EE_
X-MS-Office365-Filtering-Correlation-Id: c00409e2-2501-4d1f-87e8-08dbb0db0f7e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Hz30fb/QY26eYjOKPYE6QKUy641/gvXPkBKJ4W0YttMxCuB4xNkE00Ss3iTzvsTUuTFWfh/4L8v8wuZi+GdAUwBRE2f4Ny9VAoa5QrRVs0FwTE/WueIymmdAHc1TbdTqjnF1LdowEb6Ar2LljUiPUtGWEELmj6+pdh9ZbW3Fq5rsAZ9tbkIB0ud3fLUwIuwzI7x/RfccyGFovzMt3t8wVL7gtg83K/C8HDEJQlwOkkq+gLqAhgb3V6DknDHMOixGSqBrxC/bkKD7JTyxofmwnQl1DCxkpmX1rJsS2yVOCKASewixR+aRmDMtBS9RK4mGtwr5E4xbSMfTX3QAGLaHAgYowziBGNKzagFLAfrXQHpkMi48yQVtE1sVHQk4UQfeI5WwCAB2Z1+0M9BlsgT7LTjOu78UR38lI+9vSIRhFvZWOSQ22skEuqXZBH/oQyOC9jzHXl6xQo5vVOg8YSTINVkgxmcV/myye5uC1VSp0OdCXQxFZRJfliO7VDerm+HwzZQVsoc356qOa3tR3SaTGlsapBQz0gjNoWFY+cfs3uu6e+ln5HeCLMoyC/k07g+wjacncVa7K7/bXJDstqp4cV4Tut7lBXfmxNUQCPu4FFqHpAo6dG1SXNtNzxPSz/vC5NJ+SXFJXL8fWXrA9IMQH2RDXUx3z2lxabVpNwoKaJKPnDqYgCt98k1IdWxNMKvWwBOQzSLi7sn9nGre5efhiGh1KLKaIRntTBaZEg5pVab8nTere4ecbzy2eBkUj4fbiIq+gyB/Sm4s6bh4KYZVuw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(396003)(39860400002)(136003)(1800799009)(186009)(82310400011)(451199024)(36840700001)(46966006)(40470700004)(70206006)(44832011)(5660300002)(8936002)(8676002)(4326008)(41300700001)(316002)(70586007)(6916009)(54906003)(478600001)(2906002)(966005)(26005)(2616005)(426003)(336012)(1076003)(47076005)(36860700001)(83380400001)(81166007)(356005)(82740400003)(40460700003)(86362001)(36756003)(40480700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Sep 2023 02:18:30.6240
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c00409e2-2501-4d1f-87e8-08dbb0db0f7e
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000E9D0.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR12MB4890

Use pdev->sbdf instead of the PCI_SBDF macro in calls to pci_* functions
where appropriate. Move NULL check earlier.

Suggested-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
v5->v6:
* no change

v4->v5:
* add Jan's R-b

v3->v4:
* new patch

Suggested-by tag added based on conversation at [1]

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg01886.html
---
 xen/arch/x86/msi.c | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
index 8d4fd43b10a6..a78367d7cf5d 100644
--- a/xen/arch/x86/msi.c
+++ b/xen/arch/x86/msi.c
@@ -674,19 +674,19 @@ static u64 read_pci_mem_bar(u16 seg, u8 bus, u8 slot, u8 func, u8 bir, int vf)
     {
         struct pci_dev *pdev = pci_get_pdev(NULL,
                                             PCI_SBDF(seg, bus, slot, func));
-        unsigned int pos = pci_find_ext_capability(PCI_SBDF(seg, bus, slot,
-                                                            func),
-                                                   PCI_EXT_CAP_ID_SRIOV);
-        uint16_t ctrl = pci_conf_read16(PCI_SBDF(seg, bus, slot, func),
-                                        pos + PCI_SRIOV_CTRL);
-        uint16_t num_vf = pci_conf_read16(PCI_SBDF(seg, bus, slot, func),
-                                          pos + PCI_SRIOV_NUM_VF);
-        uint16_t offset = pci_conf_read16(PCI_SBDF(seg, bus, slot, func),
-                                          pos + PCI_SRIOV_VF_OFFSET);
-        uint16_t stride = pci_conf_read16(PCI_SBDF(seg, bus, slot, func),
-                                          pos + PCI_SRIOV_VF_STRIDE);
-
-        if ( !pdev || !pos ||
+        unsigned int pos;
+        uint16_t ctrl, num_vf, offset, stride;
+
+        if ( !pdev )
+            return 0;
+
+        pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_SRIOV);
+        ctrl = pci_conf_read16(pdev->sbdf, pos + PCI_SRIOV_CTRL);
+        num_vf = pci_conf_read16(pdev->sbdf, pos + PCI_SRIOV_NUM_VF);
+        offset = pci_conf_read16(pdev->sbdf, pos + PCI_SRIOV_VF_OFFSET);
+        stride = pci_conf_read16(pdev->sbdf, pos + PCI_SRIOV_VF_STRIDE);
+
+        if ( !pos ||
              !(ctrl & PCI_SRIOV_CTRL_VFE) ||
              !(ctrl & PCI_SRIOV_CTRL_MSE) ||
              !num_vf || !offset || (num_vf > 1 && !stride) ||
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 02:19:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 02:19:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598357.933094 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qenZC-0004X0-Sb; Sat, 09 Sep 2023 02:19:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598357.933094; Sat, 09 Sep 2023 02:19:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qenZC-0004Wt-O7; Sat, 09 Sep 2023 02:19:22 +0000
Received: by outflank-mailman (input) for mailman id 598357;
 Sat, 09 Sep 2023 02:19:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vbb/=EZ=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qenZC-0004WR-0j
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 02:19:22 +0000
Received: from NAM04-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam04on2061d.outbound.protection.outlook.com
 [2a01:111:f400:7e8c::61d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 483775d2-4eb7-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 04:19:20 +0200 (CEST)
Received: from SN6PR16CA0038.namprd16.prod.outlook.com (2603:10b6:805:ca::15)
 by PH7PR12MB5806.namprd12.prod.outlook.com (2603:10b6:510:1d2::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Sat, 9 Sep
 2023 02:19:16 +0000
Received: from SN1PEPF0002BA50.namprd03.prod.outlook.com
 (2603:10b6:805:ca:cafe::4f) by SN6PR16CA0038.outlook.office365.com
 (2603:10b6:805:ca::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31 via Frontend
 Transport; Sat, 9 Sep 2023 02:19:16 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF0002BA50.mail.protection.outlook.com (10.167.242.73) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.11 via Frontend Transport; Sat, 9 Sep 2023 02:19:15 +0000
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 8 Sep
 2023 21:19:15 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 8 Sep 2023 21:19:13 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 483775d2-4eb7-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QaU/lWH+gBe6XbortBLbrqmomZuDmki6FzuRrkai/JH397wBr2T8BEB+nmNBRn1hkmZLaFmlG/QijBWoQCuylOo3Dx4LU2AvUV4hECAgntnKc3MoN5IyG8fl7LHJCsc/uQPyY6N5BwFivfmAc/jJcGjfaH8cjBCFrs/oNSjfR07S48EyrXLBJ0FJhSHtkodBPwSTmrMvuz+/nWJMQZ7KXRK142wEgol7HXWX6BxEYYVDxL6cu26VQpo5ilh7vk8ULgJSwcQOjIdPsLt6UmqzTsPWhnwSTUa1KBBmlAIQh5a0rx/IBrUIddUQ6lX5GZ6QfnqSgNkrRd5unN6m5+/M+w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=sMCuF10qBS80uuE3Gw9n2rizrqn0mnEqVqquOunu4kU=;
 b=hlXJFaBv+CyATBWMUQbtE2cZHeTRKUZSsGg9LcMnTUp4+Fpcm2l7pPkLvRA57Vw03C5IhWD/FqgPE5mnfPTp/80/lG1m9UiGhtn3RdeRl0987fANc+FcJT02ES1KlIej4K/AekBEwK5nrMZsyPPtHTmD3UY+nmUByvXW2TB+b8nx/zWsGXkdWKD05N9HuetCH3ZEqf8zLp0r2Qdp4NcZkh+l+VxkeuNUmtlw+opWkIhgzS0w2NeBOriVOYooiUb63CBPdQZGXArsMZujRfk7XQMg6QjjGf58f3pfapZv8m1FuZJhnEtm72xBj1hHXvC9Pz3xm100cyy7UxwzdKxqvA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=sMCuF10qBS80uuE3Gw9n2rizrqn0mnEqVqquOunu4kU=;
 b=cku6f6+zlQYDO5KscNBpY0E2WJ9yQIRI9TxBJXm10CVuyve2IqPimGlacGXR5fFmyUlSTWRFMf8rUpTjR69JvbGfQEQRuCEmVPTgqmHjr8Ww0RaCXixFmqHaUOR9oXVw7p8z566A37L1BQCMu0cEzZBGX31h39xccJnrr/T5jWE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Julien Grall <julien@xen.org>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: [PATCH v6 3/4] xen/vpci: header: status register handler
Date: Fri, 8 Sep 2023 22:16:27 -0400
Message-ID: <20230909021647.558115-4-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20230909021647.558115-1-stewart.hildebrand@amd.com>
References: <20230909021647.558115-1-stewart.hildebrand@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002BA50:EE_|PH7PR12MB5806:EE_
X-MS-Office365-Filtering-Correlation-Id: 60fdb78b-cd0d-41f9-53a6-08dbb0db2a5d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	JT4aqjCbG2lJiE7LofRiBN9mMRB1S7hW/Z0/bR3GIN1Oa1rTe5JGFwuMzrHtCNVJP4Dmy39c6E3pXavhwrFnWscv68ptA/o5px9N7GoTNYW4/opcOJGe4dp6UG9FwRjBLVz6ISqVzueM3aHTY+VScN6EcbXITe5+y7d1cf6hw4fomt+906x77heLWoitS5UhSELG9n/47xN89096EzTs5L4GjhIBnZG4uGcs7bJH6o2MzoTfD6nZYjckgDTFbhwPqwlNPxL4Nl9ntSNgTaoOqFJ8UHx9l2zv23k3psRoo5CignGGFYfRUO/+n/vTG1ATY+jG+Hss9+o+1MBCwvwBL9zKUICCAKo1vwkIQ1+XL+MWhvIyHuwGqdLHlcXW/tbzKICwUhzh2CAgkwEWo/gZnNCm5XmgJ0Dvdf5tGvTEFPvovNOeAjbT87VhRItLN6nxHEtkS+UFUu+CzV7+VzPhB3yuNqNwffE6mpWKdS6UI1hvKjoYN8gAXiJ20YTXQACchMN+jkYfkxw9GMEynPRqA6Vd9J8HfiEf/2VtMD8XNBrE0wa/qY114Srrqcv+G0eiebTKaNLa4v6MKtwcaZsSdyFNQ1cc7X77kJMvuF6+USgtUx51WU1hrSrP+gmPHsyvIwrOg8BxBxPRoph1j6I/gjCFjhBevJ8q7Iq5LII3icKGira5VPLxqD9ha49UUxn3GVj9xls5Pit4K4kqN+Hmm4ZH0ZN5s2wiTXxtpFlWkM/6oqlOr0TBq1lZ+BS5TbitL2t/YTTQj2Xq7tSc9k1TTVYuinxLI2uQdUur4mqhOi0=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(346002)(376002)(396003)(82310400011)(451199024)(1800799009)(186009)(40470700004)(36840700001)(46966006)(6666004)(83380400001)(26005)(478600001)(2616005)(426003)(336012)(1076003)(2906002)(54906003)(6916009)(44832011)(316002)(70206006)(5660300002)(8936002)(4326008)(40460700003)(8676002)(70586007)(41300700001)(36756003)(86362001)(47076005)(40480700001)(36860700001)(82740400003)(81166007)(356005)(66899024)(36900700001)(357404004);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Sep 2023 02:19:15.7674
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 60fdb78b-cd0d-41f9-53a6-08dbb0db2a5d
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002BA50.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB5806

Introduce a handler for the PCI status register, with ability to mask the
capabilities bit. The status register contains RsvdZ bits, read-only bits, and
write-1-to-clear bits, so introduce bitmasks to handle these in vPCI. If a bit
in the bitmask is set, then the special meaning applies:

  rsvdz_mask: read as zero, guest write ignore (write zero to hardware)
  ro_mask: read normal, guest write ignore (preserve on write to hardware)
  rw1c_mask: read normal, write 1 to clear

The RsvdZ naming was borrowed from the PCI Express Base 4.0 specification.

Xen preserves the value of read-only bits on write to hardware, discarding the
guests write value.

The mask_cap_list flag will be set in a follow-on patch.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v5->v6:
* remove duplicate PCI_STATUS_CAP_LIST in constant definition
* style fixup in constant definitions
* s/res_mask/rsvdz_mask/
* combine a new masking operation into single line
* preserve r/o bits on write
* get rid of status_read. Instead, use rsvdz_mask for conditionally masking
  PCI_STATUS_CAP_LIST bit
* add comment about PCI_STATUS_CAP_LIST and rsvdp behavior
* add sanity checks in add_register
* move mask_cap_list from struct vpci_header to local variable

v4->v5:
* add support for res_mask
* add support for ro_mask (squash ro_mask patch)
* add constants for reserved, read-only, and rw1c masks

v3->v4:
* move mask_cap_list setting to the capabilities patch
* single pci_conf_read16 in status_read
* align mask_cap_list bitfield in struct vpci_header
* change to rw1c bit mask instead of treating whole register as rw1c
* drop subsystem prefix on renamed add_register function

v2->v3:
* new patch
---
 xen/drivers/vpci/header.c  | 13 +++++++++
 xen/drivers/vpci/vpci.c    | 55 +++++++++++++++++++++++++++++---------
 xen/include/xen/pci_regs.h |  9 +++++++
 xen/include/xen/vpci.h     |  8 ++++++
 4 files changed, 73 insertions(+), 12 deletions(-)

diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index 767c1ba718d7..99dcf57678a8 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -521,6 +521,7 @@ static int cf_check init_bars(struct pci_dev *pdev)
     struct vpci_header *header = &pdev->vpci->header;
     struct vpci_bar *bars = header->bars;
     int rc;
+    bool mask_cap_list = false;
 
     switch ( pci_conf_read8(pdev->sbdf, PCI_HEADER_TYPE) & 0x7f )
     {
@@ -544,6 +545,18 @@ static int cf_check init_bars(struct pci_dev *pdev)
     if ( rc )
         return rc;
 
+    /*
+     * If mask_cap_list is true, PCI_STATUS_CAP_LIST will be set in both
+     * rsvdz_mask and ro_mask, and thus will effectively behave as rsvdp
+     * (reserved/RAZ and preserved on write).
+     */
+    rc = vpci_add_register_mask(pdev->vpci, vpci_hw_read16, vpci_hw_write16,
+                                PCI_STATUS, 2, header, PCI_STATUS_RSVDZ_MASK |
+                                (mask_cap_list ? PCI_STATUS_CAP_LIST : 0),
+                                PCI_STATUS_RO_MASK, PCI_STATUS_RW1C_MASK);
+    if ( rc )
+        return rc;
+
     if ( pdev->ignore_bars )
         return 0;
 
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index 3bec9a4153da..586c6057365b 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -29,6 +29,9 @@ struct vpci_register {
     unsigned int offset;
     void *private;
     struct list_head node;
+    uint32_t rsvdz_mask;
+    uint32_t ro_mask;
+    uint32_t rw1c_mask;
 };
 
 #ifdef __XEN__
@@ -145,9 +148,16 @@ uint32_t cf_check vpci_hw_read32(
     return pci_conf_read32(pdev->sbdf, reg);
 }
 
-int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
-                      vpci_write_t *write_handler, unsigned int offset,
-                      unsigned int size, void *data)
+void cf_check vpci_hw_write16(
+    const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data)
+{
+    pci_conf_write16(pdev->sbdf, reg, val);
+}
+
+static int add_register(struct vpci *vpci, vpci_read_t *read_handler,
+                        vpci_write_t *write_handler, unsigned int offset,
+                        unsigned int size, void *data, uint32_t rsvdz_mask,
+                        uint32_t ro_mask, uint32_t rw1c_mask)
 {
     struct list_head *prev;
     struct vpci_register *r;
@@ -155,7 +165,8 @@ int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
     /* Some sanity checks. */
     if ( (size != 1 && size != 2 && size != 4) ||
          offset >= PCI_CFG_SPACE_EXP_SIZE || (offset & (size - 1)) ||
-         (!read_handler && !write_handler) )
+         (!read_handler && !write_handler) || (ro_mask & rw1c_mask) ||
+         (rsvdz_mask & rw1c_mask) )
         return -EINVAL;
 
     r = xmalloc(struct vpci_register);
@@ -167,6 +178,9 @@ int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
     r->size = size;
     r->offset = offset;
     r->private = data;
+    r->rsvdz_mask = rsvdz_mask & (0xffffffffU >> (32 - 8 * size));
+    r->ro_mask = ro_mask & (0xffffffffU >> (32 - 8 * size));
+    r->rw1c_mask = rw1c_mask & (0xffffffffU >> (32 - 8 * size));
 
     spin_lock(&vpci->lock);
 
@@ -193,6 +207,23 @@ int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
     return 0;
 }
 
+int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
+                      vpci_write_t *write_handler, unsigned int offset,
+                      unsigned int size, void *data)
+{
+    return add_register(vpci, read_handler, write_handler, offset, size, data,
+                        0, 0, 0);
+}
+
+int vpci_add_register_mask(struct vpci *vpci, vpci_read_t *read_handler,
+                           vpci_write_t *write_handler, unsigned int offset,
+                           unsigned int size, void *data, uint32_t rsvdz_mask,
+                           uint32_t ro_mask, uint32_t rw1c_mask)
+{
+    return add_register(vpci, read_handler, write_handler, offset, size, data,
+                        rsvdz_mask, ro_mask, rw1c_mask);
+}
+
 int vpci_remove_register(struct vpci *vpci, unsigned int offset,
                          unsigned int size)
 {
@@ -376,6 +407,7 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size)
         }
 
         val = r->read(pdev, r->offset, r->private);
+        val &= ~r->rsvdz_mask;
 
         /* Check if the read is in the middle of a register. */
         if ( r->offset < emu.offset )
@@ -407,26 +439,25 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size)
 
 /*
  * Perform a maybe partial write to a register.
- *
- * Note that this will only work for simple registers, if Xen needs to
- * trap accesses to rw1c registers (like the status PCI header register)
- * the logic in vpci_write will have to be expanded in order to correctly
- * deal with them.
  */
 static void vpci_write_helper(const struct pci_dev *pdev,
                               const struct vpci_register *r, unsigned int size,
                               unsigned int offset, uint32_t data)
 {
+    uint32_t val = 0;
+
     ASSERT(size <= r->size);
 
-    if ( size != r->size )
+    if ( (size != r->size) || r->ro_mask )
     {
-        uint32_t val;
-
         val = r->read(pdev, r->offset, r->private);
+        val &= ~r->rw1c_mask;
         data = merge_result(val, data, size, offset);
     }
 
+    data &= ~r->rsvdz_mask & ~r->ro_mask;
+    data |= val & r->ro_mask;
+
     r->write(pdev, r->offset, data & (0xffffffffU >> (32 - 8 * r->size)),
              r->private);
 }
diff --git a/xen/include/xen/pci_regs.h b/xen/include/xen/pci_regs.h
index 84b18736a85d..b72131729db6 100644
--- a/xen/include/xen/pci_regs.h
+++ b/xen/include/xen/pci_regs.h
@@ -66,6 +66,15 @@
 #define  PCI_STATUS_REC_MASTER_ABORT	0x2000 /* Set on master abort */
 #define  PCI_STATUS_SIG_SYSTEM_ERROR	0x4000 /* Set when we drive SERR */
 #define  PCI_STATUS_DETECTED_PARITY	0x8000 /* Set on parity error */
+#define  PCI_STATUS_RSVDZ_MASK		0x0006
+
+#define  PCI_STATUS_RO_MASK (PCI_STATUS_IMM_READY | PCI_STATUS_INTERRUPT | \
+    PCI_STATUS_CAP_LIST | PCI_STATUS_66MHZ | PCI_STATUS_UDF | \
+    PCI_STATUS_FAST_BACK | PCI_STATUS_DEVSEL_MASK)
+#define  PCI_STATUS_RW1C_MASK (PCI_STATUS_PARITY | \
+    PCI_STATUS_SIG_TARGET_ABORT | PCI_STATUS_REC_TARGET_ABORT | \
+    PCI_STATUS_REC_MASTER_ABORT | PCI_STATUS_SIG_SYSTEM_ERROR | \
+    PCI_STATUS_DETECTED_PARITY)
 
 #define PCI_CLASS_REVISION	0x08	/* High 24 bits are class, low 8 revision */
 #define PCI_REVISION_ID		0x08	/* Revision ID */
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 0b8a2a3c745b..7a5cca29e54c 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -37,6 +37,12 @@ int __must_check vpci_add_register(struct vpci *vpci,
                                    vpci_write_t *write_handler,
                                    unsigned int offset, unsigned int size,
                                    void *data);
+int __must_check vpci_add_register_mask(struct vpci *vpci,
+                                        vpci_read_t *read_handler,
+                                        vpci_write_t *write_handler,
+                                        unsigned int offset, unsigned int size,
+                                        void *data, uint32_t rsvdz_mask,
+                                        uint32_t ro_mask, uint32_t rw1c_mask);
 int __must_check vpci_remove_register(struct vpci *vpci, unsigned int offset,
                                       unsigned int size);
 
@@ -50,6 +56,8 @@ uint32_t cf_check vpci_hw_read16(
     const struct pci_dev *pdev, unsigned int reg, void *data);
 uint32_t cf_check vpci_hw_read32(
     const struct pci_dev *pdev, unsigned int reg, void *data);
+void cf_check vpci_hw_write16(
+    const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data);
 
 /*
  * Check for pending vPCI operations on this vcpu. Returns true if the vcpu
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 02:19:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 02:19:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598359.933104 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qenZZ-0004xY-4u; Sat, 09 Sep 2023 02:19:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598359.933104; Sat, 09 Sep 2023 02:19:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qenZZ-0004xR-15; Sat, 09 Sep 2023 02:19:45 +0000
Received: by outflank-mailman (input) for mailman id 598359;
 Sat, 09 Sep 2023 02:19:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vbb/=EZ=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qenZX-0003dU-Nm
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 02:19:43 +0000
Received: from NAM02-BN1-obe.outbound.protection.outlook.com
 (mail-bn1nam02on20611.outbound.protection.outlook.com
 [2a01:111:f400:7eb2::611])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 55653dd0-4eb7-11ee-9b0d-b553b5be7939;
 Sat, 09 Sep 2023 04:19:41 +0200 (CEST)
Received: from CY8PR10CA0038.namprd10.prod.outlook.com (2603:10b6:930:4b::22)
 by SN7PR12MB7154.namprd12.prod.outlook.com (2603:10b6:806:2a5::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Sat, 9 Sep
 2023 02:19:36 +0000
Received: from CY4PEPF0000E9D4.namprd03.prod.outlook.com
 (2603:10b6:930:4b:cafe::3e) by CY8PR10CA0038.outlook.office365.com
 (2603:10b6:930:4b::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31 via Frontend
 Transport; Sat, 9 Sep 2023 02:19:35 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9D4.mail.protection.outlook.com (10.167.241.147) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.11 via Frontend Transport; Sat, 9 Sep 2023 02:19:35 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 8 Sep
 2023 21:19:34 -0500
Received: from SATLEXMB04.amd.com (10.181.40.145) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 8 Sep
 2023 19:19:34 -0700
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 8 Sep 2023 21:19:32 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 55653dd0-4eb7-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nL4DFepLL3YE6S8Wk9tHfklVXFEh2uQVmsbkyTj5dzoWR4gz2zPlOTKsR+vlNe5xEo78SrZokWTNg5k8AXn7zNt1UJG3/TSLyNiOR3NxmJ4HkJaZwNUt/YDC3EAKVXrX1KgEI1JQeejiQKHkgRxIHVu2eRIMmj1Xw7t4D1tAo33uXSmuZ69622+Xp//yUJMwumCTAeqG9rZFxON7JBY4PwoqHrQ6O1zrojAqDKRhfBAJYqUtwPblpRZDDTQ7lHiBUlu35kTPzZExbM7tcXvjCD5UzB1a2kalUdFf8EvAJyhorVSRbDFDZtPK4ftL0uHDsklfCjRGojGnBOeE28+naQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=4zynH6bdtDF71r3QmVXE6saNFjB3y2Dk04pLrBIKZUo=;
 b=YphjmFHxkkbw/8JiIALcVSUBJnONs8Qvk/Q73xUrATUeb2hRTJ7cCzd/aJL7RnrOyWvSLZZI2vuUxsRSZWtdY+v4K1WC5SdrPukITgLzigpTAhjHtmXaVtLcf+TsoFEDdLS3lCAEjRV/ZtnSZy/K4KHycYv4JySOp9IPmEsCQn7OE0Iac1OMMoZlbEnqRFE7jtboKcsM4ytq22qVpFq+tXJxm/0QZD3zLSDW77mPM00P7ZispRRnSiSkLgoSEPeM2qG5RrhRTGAfhaA6FnarDpZFcTcGTzNhXHhJTmvteg0OLnH/56eJawRRKt6nYDqHmy5xQONpeXrMoUTnrdqUJg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4zynH6bdtDF71r3QmVXE6saNFjB3y2Dk04pLrBIKZUo=;
 b=bM59Z4c9KfTluoSEFF1C5Kshj69blI52M9PWFMia4qJ6R333Vw0R2OQSZc9KH28jzuQwguMq5k/Pe7AWHicT6RtMUD/BCkq07X7fNzSjbgv2rN0gj/EwcNXY0DQOrNlUCSYafAkIzSD9ymqiWEG6ZJnsUOg5zbyVCYI4RWaXRNE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Julien Grall <julien@xen.org>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [PATCH v6 4/4] xen/vpci: header: filter PCI capabilities
Date: Fri, 8 Sep 2023 22:16:28 -0400
Message-ID: <20230909021647.558115-5-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20230909021647.558115-1-stewart.hildebrand@amd.com>
References: <20230909021647.558115-1-stewart.hildebrand@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D4:EE_|SN7PR12MB7154:EE_
X-MS-Office365-Filtering-Correlation-Id: f662380b-b764-4ffb-750d-08dbb0db3623
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Fm6Q4N4vJEHipoxwyR9mDAqE7NklxyXjGWFPOUcXEUlKvVSEp+HAh+B4Neo5DmItDrBSZx/9sM4gNnr9ywLetQ85W9yyMvO2dXyY6Z0iTt9lWfI9vybuzZdyMxYrH0zO3TEGXtSeIVtRvDd1LnU7weVGajxGw3QpII8pMmuGFf++qIUBHRAASazWB1Q+lOXXEk/x/OI+qfAy4Gx8V7n71gtJ0R3w2vI0PSoiGdhGTofDorMp8zR0/OrZzDEj+ihM0Hn77CjIxb9bWeNiaWZLNw7YeIDARxL/UirNx1HeF/ek0ilDNK1sBe9iW5oHeOh2oTmVfLLkl0jXGM3HxD+auz7LVeCiecl73TageyOVZ+8AohG9H1wG0Nwn6gdthUPraVA/fsQS7cTCxSxAX3jm9tFhpOPUo0VUnpqFueje75Jgx3jmFS5y9lkqh/FFy8SSVEarrtMQl28sS7iJp/6whx08fVOOQcecvuUmiNAOXBqCLB7WG7xdONkbyyCQKuSmoK6tf1Y0NNJMph7JIYAZ/3ADVa944rww8QqcsDxrLyHu8Wbp81jVC1geoF4GAhgXL5G5nUv/ycD+L/OW2Rtp11XcVPUHZLBsl2n63XFiy1FRdPJ1K+U2SLwiSohiygMU3yBtwR6fQ3qocT2Gowiht8WpGHrf5ZysJQXFXC1hCwps7cJIoB5GowgftxvOvpofOZHCCEX2dkGmJ4jtihQVm6iX6ynayyS9Jwo/8GqJE5hWx0KKoHIuXAfxlk+ZD1jteVgiJMlXzp3JK7XPLTFFpw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(136003)(376002)(346002)(39860400002)(82310400011)(186009)(451199024)(1800799009)(46966006)(40470700004)(36840700001)(36756003)(40460700003)(2906002)(47076005)(426003)(83380400001)(336012)(1076003)(54906003)(316002)(2616005)(6916009)(70206006)(36860700001)(4326008)(70586007)(8936002)(478600001)(8676002)(44832011)(5660300002)(81166007)(82740400003)(6666004)(356005)(26005)(86362001)(40480700001)(41300700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Sep 2023 02:19:35.4583
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f662380b-b764-4ffb-750d-08dbb0db3623
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000E9D4.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7154

Currently, Xen vPCI only supports virtualizing the MSI and MSI-X capabilities.
Hide all other PCI capabilities (including extended capabilities) from domUs for
now, even though there may be certain devices/drivers that depend on being able
to discover certain capabilities.

We parse the physical PCI capabilities linked list and add vPCI register
handlers for the next elements, inserting our own next value, thus presenting a
modified linked list to the domU.

Introduce helper functions vpci_hw_read8 and vpci_read_val. The vpci_read_val
helper function returns a fixed value, which may be used for RAZ registers, or
registers whose value doesn't change.

Introduce pci_find_next_cap_ttl() helper while adapting the logic from
pci_find_next_cap() to suit our needs, and implement the existing
pci_find_next_cap() in terms of the new helper.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
v5->v6:
* add register handlers before status register handler in init_bars()
* s/header->mask_cap_list/mask_cap_list/

v4->v5:
* use more appropriate types, continued
* get rid of unnecessary hook function
* add Jan's R-b

v3->v4:
* move mask_cap_list setting to this patch
* leave pci_find_next_cap signature alone
* use more appropriate types

v2->v3:
* get rid of > 0 in loop condition
* implement pci_find_next_cap in terms of new pci_find_next_cap_ttl function so
  that hypothetical future callers wouldn't be required to pass &ttl.
* change NULL to (void *)0 for RAZ value passed to vpci_read_val
* change type of ttl to unsigned int
* remember to mask off the low 2 bits of next in the initial loop iteration
* change return type of pci_find_next_cap and pci_find_next_cap_ttl
* avoid wrapping the PCI_STATUS_CAP_LIST condition by using ! instead of == 0

v1->v2:
* change type of ttl to int
* use switch statement instead of if/else
* adapt existing pci_find_next_cap helper instead of rolling our own
* pass ttl as in/out
* "pass through" the lower 2 bits of the next pointer
* squash helper functions into this patch to avoid transient dead code situation
* extended capabilities RAZ/WI
---
 xen/drivers/pci/pci.c     | 26 +++++++++-----
 xen/drivers/vpci/header.c | 76 +++++++++++++++++++++++++++++++++++++++
 xen/drivers/vpci/vpci.c   | 12 +++++++
 xen/include/xen/pci.h     |  3 ++
 xen/include/xen/vpci.h    |  5 +++
 5 files changed, 113 insertions(+), 9 deletions(-)

diff --git a/xen/drivers/pci/pci.c b/xen/drivers/pci/pci.c
index 3569ccb24e9e..8799d60c2156 100644
--- a/xen/drivers/pci/pci.c
+++ b/xen/drivers/pci/pci.c
@@ -39,31 +39,39 @@ unsigned int pci_find_cap_offset(pci_sbdf_t sbdf, unsigned int cap)
     return 0;
 }
 
-unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
-                               unsigned int cap)
+unsigned int pci_find_next_cap_ttl(pci_sbdf_t sbdf, unsigned int pos,
+                                   bool (*is_match)(unsigned int),
+                                   unsigned int cap, unsigned int *ttl)
 {
-    u8 id;
-    int ttl = 48;
+    unsigned int id;
 
-    while ( ttl-- )
+    while ( (*ttl)-- )
     {
         pos = pci_conf_read8(sbdf, pos);
         if ( pos < 0x40 )
             break;
 
-        pos &= ~3;
-        id = pci_conf_read8(sbdf, pos + PCI_CAP_LIST_ID);
+        id = pci_conf_read8(sbdf, (pos & ~3) + PCI_CAP_LIST_ID);
 
         if ( id == 0xff )
             break;
-        if ( id == cap )
+        if ( (is_match && is_match(id)) || (!is_match && id == cap) )
             return pos;
 
-        pos += PCI_CAP_LIST_NEXT;
+        pos = (pos & ~3) + PCI_CAP_LIST_NEXT;
     }
+
     return 0;
 }
 
+unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
+                               unsigned int cap)
+{
+    unsigned int ttl = 48;
+
+    return pci_find_next_cap_ttl(sbdf, pos, NULL, cap, &ttl) & ~3;
+}
+
 /**
  * pci_find_ext_capability - Find an extended capability
  * @sbdf: PCI device to query
diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index 99dcf57678a8..118dd5d4535d 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -513,6 +513,18 @@ static void cf_check rom_write(
         rom->addr = val & PCI_ROM_ADDRESS_MASK;
 }
 
+static bool cf_check vpci_cap_supported(unsigned int id)
+{
+    switch ( id )
+    {
+    case PCI_CAP_ID_MSI:
+    case PCI_CAP_ID_MSIX:
+        return true;
+    default:
+        return false;
+    }
+}
+
 static int cf_check init_bars(struct pci_dev *pdev)
 {
     uint16_t cmd;
@@ -545,6 +557,70 @@ static int cf_check init_bars(struct pci_dev *pdev)
     if ( rc )
         return rc;
 
+    if ( !is_hardware_domain(pdev->domain) )
+    {
+        if ( !(pci_conf_read16(pdev->sbdf, PCI_STATUS) & PCI_STATUS_CAP_LIST) )
+        {
+            /* RAZ/WI */
+            rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL,
+                                   PCI_CAPABILITY_LIST, 1, (void *)0);
+            if ( rc )
+                return rc;
+        }
+        else
+        {
+            /* Only expose capabilities to the guest that vPCI can handle. */
+            unsigned int next, ttl = 48;
+
+            next = pci_find_next_cap_ttl(pdev->sbdf, PCI_CAPABILITY_LIST,
+                                         vpci_cap_supported, 0, &ttl);
+
+            rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL,
+                                   PCI_CAPABILITY_LIST, 1,
+                                   (void *)(uintptr_t)next);
+            if ( rc )
+                return rc;
+
+            next &= ~3;
+
+            if ( !next )
+                /*
+                 * If we don't have any supported capabilities to expose to the
+                 * guest, mask the PCI_STATUS_CAP_LIST bit in the status
+                 * register.
+                 */
+                mask_cap_list = true;
+
+            while ( next && ttl )
+            {
+                unsigned int pos = next;
+
+                next = pci_find_next_cap_ttl(pdev->sbdf,
+                                             pos + PCI_CAP_LIST_NEXT,
+                                             vpci_cap_supported, 0, &ttl);
+
+                rc = vpci_add_register(pdev->vpci, vpci_hw_read8, NULL,
+                                       pos + PCI_CAP_LIST_ID, 1, NULL);
+                if ( rc )
+                    return rc;
+
+                rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL,
+                                       pos + PCI_CAP_LIST_NEXT, 1,
+                                       (void *)(uintptr_t)next);
+                if ( rc )
+                    return rc;
+
+                next &= ~3;
+            }
+        }
+
+        /* Extended capabilities RAZ/WI */
+        rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL, 0x100, 4,
+                               (void *)0);
+        if ( rc )
+            return rc;
+    }
+
     /*
      * If mask_cap_list is true, PCI_STATUS_CAP_LIST will be set in both
      * rsvdz_mask and ro_mask, and thus will effectively behave as rsvdp
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index 586c6057365b..433b9b3ebbb1 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -136,6 +136,18 @@ static void cf_check vpci_ignored_write(
 {
 }
 
+uint32_t cf_check vpci_read_val(
+    const struct pci_dev *pdev, unsigned int reg, void *data)
+{
+    return (uintptr_t)data;
+}
+
+uint32_t cf_check vpci_hw_read8(
+    const struct pci_dev *pdev, unsigned int reg, void *data)
+{
+    return pci_conf_read8(pdev->sbdf, reg);
+}
+
 uint32_t cf_check vpci_hw_read16(
     const struct pci_dev *pdev, unsigned int reg, void *data)
 {
diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h
index ea6a4c9abf38..cceac8654f07 100644
--- a/xen/include/xen/pci.h
+++ b/xen/include/xen/pci.h
@@ -194,6 +194,9 @@ int pci_mmcfg_read(unsigned int seg, unsigned int bus,
 int pci_mmcfg_write(unsigned int seg, unsigned int bus,
                     unsigned int devfn, int reg, int len, u32 value);
 unsigned int pci_find_cap_offset(pci_sbdf_t sbdf, unsigned int cap);
+unsigned int pci_find_next_cap_ttl(pci_sbdf_t sbdf, unsigned int pos,
+                                   bool (*is_match)(unsigned int),
+                                   unsigned int cap, unsigned int *ttl);
 unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
                                unsigned int cap);
 unsigned int pci_find_ext_capability(pci_sbdf_t sbdf, unsigned int cap);
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 7a5cca29e54c..b79efc49bad6 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -51,7 +51,12 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size);
 void vpci_write(pci_sbdf_t sbdf, unsigned int reg, unsigned int size,
                 uint32_t data);
 
+uint32_t cf_check vpci_read_val(
+    const struct pci_dev *pdev, unsigned int reg, void *data);
+
 /* Passthrough handlers. */
+uint32_t cf_check vpci_hw_read8(
+    const struct pci_dev *pdev, unsigned int reg, void *data);
 uint32_t cf_check vpci_hw_read16(
     const struct pci_dev *pdev, unsigned int reg, void *data);
 uint32_t cf_check vpci_hw_read32(
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 04:10:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 04:10:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598375.933119 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qepID-0004OB-87; Sat, 09 Sep 2023 04:09:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598375.933119; Sat, 09 Sep 2023 04:09:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qepID-0004O4-59; Sat, 09 Sep 2023 04:09:57 +0000
Received: by outflank-mailman (input) for mailman id 598375;
 Sat, 09 Sep 2023 04:09:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qepIC-0004Nu-9q; Sat, 09 Sep 2023 04:09:56 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qepIC-0002PO-6d; Sat, 09 Sep 2023 04:09:56 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qepIB-0008Jm-Ul; Sat, 09 Sep 2023 04:09:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qepIB-0006KR-UJ; Sat, 09 Sep 2023 04:09:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Jdmk4bz6lLr5XpCdR99GRi2zaPTLnbNL94Vi4WfAHlA=; b=T7npsKb/yuhm/iiu83fDRlBJ/a
	eOQRGl29Cd0mCbVaETK0UPYmjF0IhWmTjJNaKAzCTcCBEHditI/8yguvQj45oamCb6zMejRjevD3W
	KVFWGMHAIpqwD7jq+D392b83JjwvGeIPu+psQcocm/m+Y8nORHcYhN20f3xlSswjME+w=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182796-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182796: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 04:09:55 +0000

flight 182796 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182796/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    2 days
Failing since        182723  2023-09-07 18:19:05 Z    1 days    5 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 04:15:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 04:15:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598382.933130 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qepNG-00063g-ST; Sat, 09 Sep 2023 04:15:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598382.933130; Sat, 09 Sep 2023 04:15:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qepNG-00063Z-PD; Sat, 09 Sep 2023 04:15:10 +0000
Received: by outflank-mailman (input) for mailman id 598382;
 Sat, 09 Sep 2023 04:15:09 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qepNF-00063P-L7; Sat, 09 Sep 2023 04:15:09 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qepNF-0002eM-I3; Sat, 09 Sep 2023 04:15:09 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qepNF-0000EF-91; Sat, 09 Sep 2023 04:15:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qepNF-00038U-8V; Sat, 09 Sep 2023 04:15:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=/zOE/bZO/INaAdPZUQZZhsp5EvCIJ4HJNRcSCvCXLqw=; b=DePRVOEySTx3heCXCGBtyM1oZS
	qJP5RLqTwzfbYZYQlTYHG38YWbJa1HDQHm6Z/aZmDbFvUpZwEYp+2owPjBZhLeypGEVvahW7PzV9R
	QStqvRmE8gbma+kXxjzxUzRxBjDhnrMJOqMwpeqc/vpWlWQnEizk8I942QRw7+IwJtA4=;
To: xen-devel@lists.xenproject.org
Subject: [qemu-mainline bisection] complete build-arm64-xsm
Message-Id: <E1qepNF-00038U-8V@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 04:15:09 +0000

branch xen-unstable
xenbranch xen-unstable
job build-arm64-xsm
testid xen-build

Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu https://gitlab.com/qemu-project/qemu.git
  Bug introduced:  ca056f4499c259c0de68ed7cefad7ee7b62bfa43
  Bug not present: a5e9fbf1dfd5b3f901f987755c89f1dc636c3747
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182800/


  commit ca056f4499c259c0de68ed7cefad7ee7b62bfa43
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   Wed May 3 12:48:02 2023 +0200
  
      Python: Drop support for Python 3.7
      
      Debian 10 is not anymore a supported distro, since Debian 12 was
      released on June 10, 2023.  Our supported build platforms as of today
      all support at least 3.8 (and all of them except for Ubuntu 20.04
      support 3.9):
      
      openSUSE Leap 15.5: 3.6.15 (3.11.2)
      CentOS Stream 8:    3.6.8  (3.8.13, 3.9.16, 3.11.4)
      CentOS Stream 9:    3.9.17 (3.11.4)
      Fedora 37:          3.11.4
      Fedora 38:          3.11.4
      Debian 11:          3.9.2
      Debian 12:          3.11.2
      Alpine 3.14, 3.15:  3.9.16
      Alpine 3.16, 3.17:  3.10.10
      Ubuntu 20.04 LTS:   3.8.10
      Ubuntu 22.04 LTS:   3.10.12
      NetBSD 9.3:         3.9.13*
      FreeBSD 12.4:       3.9.16
      FreeBSD 13.1:       3.9.18
      OpenBSD 7.2:        3.9.17
      
      Note: NetBSD does not appear to have a default meta-package, but offers
      several options, the lowest of which is 3.7.15. However, "python39"
      appears to be a pre-requisite to one of the other packages we request
      in tests/vm/netbsd.
      
      Since it is safe under our supported platform policy, bump our
      minimum supported version of Python to 3.8.  The two most interesting
      features to have by default include:
      
      - the importlib.metadata module, whose lack is responsible for over 100
        lines of code in mkvenv.py
      
      - improvements to asyncio, for example asyncio.CancelledError
        inherits from BaseException rather than Exception
      
      In addition, code can now use the assignment operator ':='
      
      Because mypy now learns about importlib.metadata, a small change to
      mkvenv.py is needed to pass type checking.
      
      Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/build-arm64-xsm.xen-build.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/build-arm64-xsm.xen-build --summary-out=tmp/182800.bisection-summary --basis-template=182707 --blessings=real,real-bisect,real-retry qemu-mainline build-arm64-xsm xen-build
Searching for failure / basis pass:
 182796 fail [host=rochester0] / 182707 [host=rochester1] 182638 [host=rochester1] 182606 [host=rochester1] 182588 ok.
Failure / basis pass flights: 182796 / 182588
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest d4ae5df71190148c902942c3462245e97ed2fcc8 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
Basis pass beafabdae49c873adecdb7511dbebe9d4ff5c8f0 17780edd81d27fcfdb7a802efc870a99788bd2fc 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 e5522c71beaa83f2f5d2118724ace9f90c22e583
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/osstest/ovmf.git#beafabdae49c873adecdb7511dbebe9d4ff5c8f0-d4ae5df71190148c902942c3462245e97ed2fcc8 https://gitlab.com/qemu-project/qemu.git#17780edd81d27fcfdb7a802efc870a99788bd2fc-c5ea91da443b458352c1b629b490ee6631775cb4 git://xenbits.xen.org/osstest/seabios.git#7a4003be25eae462f3c3d8aad96b57e34dc0c2b8-7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 git://xenbits.xen.org/xen.git#e5522c71beaa83f2f5d2118724ace9f90c22e583-b2dd946\
 ece74e2b6e0601f28caef72f4f9950102
Loaded 20167 nodes in revision graph
Searching for test results:
 182588 pass beafabdae49c873adecdb7511dbebe9d4ff5c8f0 17780edd81d27fcfdb7a802efc870a99788bd2fc 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 e5522c71beaa83f2f5d2118724ace9f90c22e583
 182606 [host=rochester1]
 182638 [host=rochester1]
 182707 [host=rochester1]
 182723 fail irrelevant
 182731 pass beafabdae49c873adecdb7511dbebe9d4ff5c8f0 17780edd81d27fcfdb7a802efc870a99788bd2fc 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 e5522c71beaa83f2f5d2118724ace9f90c22e583
 182733 fail irrelevant
 182730 fail 634192665ea22eb610ad54f10bad8143ef77076d 03a3a62fbd0aa5227e978eef3c67d3978aec9e5f 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182736 pass irrelevant
 182741 fail 634192665ea22eb610ad54f10bad8143ef77076d 03a3a62fbd0aa5227e978eef3c67d3978aec9e5f 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182742 pass b81557a00c61cc80ab118828f16ed9ce79455880 269e60635a72f8dec4cb210b5b99e9e7f8920f34 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182744 pass 4d196352f35ac516b477e568265b4e537b0283d8 bde438c3ecdb9813038b226c429dd982925d8205 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 d8c3ff585b9fd10200b05aca77139de2789d0517
 182750 pass b81557a00c61cc80ab118828f16ed9ce79455880 c97d45d55798b27410253df8fc724d2a02189aa8 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182756 pass 24da5c2f283eeb44b625af9bf86cae7db2f99ff4 9f89423537653de07ca40c18b5ff5b70b104cc93 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182762 pass 4d196352f35ac516b477e568265b4e537b0283d8 bb5c77c4f8a5ea9cb3f6bcf5ca33bab4d85d1d92 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 c0291d6b5c84de104b931111d1f81da323feb67f
 182765 fail bbf182229587958b17336c114e0a1525c4f90f3d ca056f4499c259c0de68ed7cefad7ee7b62bfa43 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182739 fail 2ce5ae43c2166984d20341993c4b9dbb337aad79 03a3a62fbd0aa5227e978eef3c67d3978aec9e5f 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182767 pass bbf182229587958b17336c114e0a1525c4f90f3d a24f15d26f8cf0c0533c3422bebc70305626fc14 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182769 pass bbf182229587958b17336c114e0a1525c4f90f3d bafe78ad3bc4cef3a4d22e477c8940a7c955f1ea 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182775 pass bbf182229587958b17336c114e0a1525c4f90f3d 73258b386489c410e4d449159a6c8420e3b7733f 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182776 pass bbf182229587958b17336c114e0a1525c4f90f3d 875be287cdba7b5a499711823314355fccc60913 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182781 pass bbf182229587958b17336c114e0a1525c4f90f3d a5e9fbf1dfd5b3f901f987755c89f1dc636c3747 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182788 fail bbf182229587958b17336c114e0a1525c4f90f3d ca056f4499c259c0de68ed7cefad7ee7b62bfa43 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182790 pass bbf182229587958b17336c114e0a1525c4f90f3d a5e9fbf1dfd5b3f901f987755c89f1dc636c3747 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182770 fail 493a375eef584be2beaaa3d418a8e7ff333c5468 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182793 fail bbf182229587958b17336c114e0a1525c4f90f3d ca056f4499c259c0de68ed7cefad7ee7b62bfa43 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182795 pass beafabdae49c873adecdb7511dbebe9d4ff5c8f0 17780edd81d27fcfdb7a802efc870a99788bd2fc 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 e5522c71beaa83f2f5d2118724ace9f90c22e583
 182797 fail 493a375eef584be2beaaa3d418a8e7ff333c5468 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182799 pass bbf182229587958b17336c114e0a1525c4f90f3d a5e9fbf1dfd5b3f901f987755c89f1dc636c3747 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182796 fail d4ae5df71190148c902942c3462245e97ed2fcc8 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182800 fail bbf182229587958b17336c114e0a1525c4f90f3d ca056f4499c259c0de68ed7cefad7ee7b62bfa43 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
Searching for interesting versions
 Result found: flight 182588 (pass), for basis pass
 Result found: flight 182770 (fail), for basis failure (at ancestor ~5)
 Repro found: flight 182795 (pass), for basis pass
 Repro found: flight 182796 (fail), for basis failure
 0 revisions at bbf182229587958b17336c114e0a1525c4f90f3d a5e9fbf1dfd5b3f901f987755c89f1dc636c3747 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
No revisions left to test, checking graph state.
 Result found: flight 182781 (pass), for last pass
 Result found: flight 182788 (fail), for first failure
 Repro found: flight 182790 (pass), for last pass
 Repro found: flight 182793 (fail), for first failure
 Repro found: flight 182799 (pass), for last pass
 Repro found: flight 182800 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu https://gitlab.com/qemu-project/qemu.git
  Bug introduced:  ca056f4499c259c0de68ed7cefad7ee7b62bfa43
  Bug not present: a5e9fbf1dfd5b3f901f987755c89f1dc636c3747
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182800/


  commit ca056f4499c259c0de68ed7cefad7ee7b62bfa43
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   Wed May 3 12:48:02 2023 +0200
  
      Python: Drop support for Python 3.7
      
      Debian 10 is not anymore a supported distro, since Debian 12 was
      released on June 10, 2023.  Our supported build platforms as of today
      all support at least 3.8 (and all of them except for Ubuntu 20.04
      support 3.9):
      
      openSUSE Leap 15.5: 3.6.15 (3.11.2)
      CentOS Stream 8:    3.6.8  (3.8.13, 3.9.16, 3.11.4)
      CentOS Stream 9:    3.9.17 (3.11.4)
      Fedora 37:          3.11.4
      Fedora 38:          3.11.4
      Debian 11:          3.9.2
      Debian 12:          3.11.2
      Alpine 3.14, 3.15:  3.9.16
      Alpine 3.16, 3.17:  3.10.10
      Ubuntu 20.04 LTS:   3.8.10
      Ubuntu 22.04 LTS:   3.10.12
      NetBSD 9.3:         3.9.13*
      FreeBSD 12.4:       3.9.16
      FreeBSD 13.1:       3.9.18
      OpenBSD 7.2:        3.9.17
      
      Note: NetBSD does not appear to have a default meta-package, but offers
      several options, the lowest of which is 3.7.15. However, "python39"
      appears to be a pre-requisite to one of the other packages we request
      in tests/vm/netbsd.
      
      Since it is safe under our supported platform policy, bump our
      minimum supported version of Python to 3.8.  The two most interesting
      features to have by default include:
      
      - the importlib.metadata module, whose lack is responsible for over 100
        lines of code in mkvenv.py
      
      - improvements to asyncio, for example asyncio.CancelledError
        inherits from BaseException rather than Exception
      
      In addition, code can now use the assignment operator ':='
      
      Because mypy now learns about importlib.metadata, a small change to
      mkvenv.py is needed to pass type checking.
      
      Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

Revision graph left in /home/logs/results/bisect/qemu-mainline/build-arm64-xsm.xen-build.{dot,ps,png,html,svg}.
----------------------------------------
182800: tolerable ALL FAIL

flight 182800 qemu-mainline real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/182800/

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 build-arm64-xsm               6 xen-build               fail baseline untested


jobs:
 build-arm64-xsm                                              fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 06:27:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 06:27:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598405.933179 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qerR6-0004OH-Bc; Sat, 09 Sep 2023 06:27:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598405.933179; Sat, 09 Sep 2023 06:27:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qerR6-0004OA-6S; Sat, 09 Sep 2023 06:27:16 +0000
Received: by outflank-mailman (input) for mailman id 598405;
 Sat, 09 Sep 2023 06:27:15 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qerR5-0004O0-Mc; Sat, 09 Sep 2023 06:27:15 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qerR5-00062L-JZ; Sat, 09 Sep 2023 06:27:15 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qerR5-0008Gn-9I; Sat, 09 Sep 2023 06:27:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qerR5-0002FO-8g; Sat, 09 Sep 2023 06:27:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=CKFKHG/gia3K8OJJ/LrP/03xvBWB9qP1y4YqSTlGfK0=; b=hAQ263trlsnbJGJB+RQD3d+tRy
	EKCe8KtLITGSEybqs1+Y+5jCANjbCPrSuOT5Dvt9bG48xNSQZfPcNoLyJkEyR09Q3nlPnWMxtm6ZM
	5EQIyMKPuj6rnZMz2tZU18FotD1WF//VwAi/PMi0wwN7r538sbMNEccj/dTfLMaiJfTA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182763-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182763: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-armhf-armhf-libvirt-qcow2:host-ping-check-xen:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a48fa7efaf1161c1c898931fe4c7f0070964233a
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 06:27:15 +0000

flight 182763 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182763/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt-qcow2 10 host-ping-check-xen      fail pass in 182729

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 182729 like 182531
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 182729 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                a48fa7efaf1161c1c898931fe4c7f0070964233a
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   12 days
Failing since        182544  2023-08-28 20:42:13 Z   11 days   20 attempts
Testing same since   182729  2023-09-08 05:07:37 Z    1 days    2 attempts

------------------------------------------------------------
2195 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               fail    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 261128 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 07:04:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 07:04:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598418.933203 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qes1G-0000Tw-At; Sat, 09 Sep 2023 07:04:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598418.933203; Sat, 09 Sep 2023 07:04:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qes1G-0000Tp-7p; Sat, 09 Sep 2023 07:04:38 +0000
Received: by outflank-mailman (input) for mailman id 598418;
 Sat, 09 Sep 2023 07:04:37 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qes1F-0000Tf-7L; Sat, 09 Sep 2023 07:04:37 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qes1F-0006qK-5f; Sat, 09 Sep 2023 07:04:37 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qes1E-0001Be-Uc; Sat, 09 Sep 2023 07:04:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qes1E-0006o8-U5; Sat, 09 Sep 2023 07:04:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=zB/54r59rPQB0pes9g+QbAPvzwnhHCkEc0ZhnQeYlUs=; b=b6hKRsJpwO4+bqOdMklWPj4+GB
	HuJkI1eom30My0ZhL5xKWDnvq+SoA4j4FqP5Z/786KJVYpBGxr65mR2HDyCwz9KQaXuSHCU934WzM
	jLQEKsdBIT1kCFN572/JriJ4q3Cn+0wqjmf8Pdiv/aoPll2I7g/4S2XZBTLanxw+xw6M=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182801-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182801: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 07:04:36 +0000

flight 182801 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182801/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    2 days
Failing since        182723  2023-09-07 18:19:05 Z    1 days    6 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    0 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 08:31:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 08:31:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598437.933246 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetNS-0002Pu-FJ; Sat, 09 Sep 2023 08:31:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598437.933246; Sat, 09 Sep 2023 08:31:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetNS-0002Pn-CB; Sat, 09 Sep 2023 08:31:38 +0000
Received: by outflank-mailman (input) for mailman id 598437;
 Sat, 09 Sep 2023 08:31:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rb1o=EZ=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qetNR-00025u-0k
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 08:31:37 +0000
Received: from mail-oa1-x34.google.com (mail-oa1-x34.google.com
 [2001:4860:4864:20::34])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 45b04cb2-4eeb-11ee-9b0d-b553b5be7939;
 Sat, 09 Sep 2023 10:31:30 +0200 (CEST)
Received: by mail-oa1-x34.google.com with SMTP id
 586e51a60fabf-1d598ba1b74so76542fac.0
 for <xen-devel@lists.xenproject.org>; Sat, 09 Sep 2023 01:31:29 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.29])
 by smtp.gmail.com with ESMTPSA id
 c14-20020a17090ab28e00b0026f3e396882sm4091663pjr.45.2023.09.09.01.31.25
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 09 Sep 2023 01:31:27 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 45b04cb2-4eeb-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694248288; x=1694853088; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=pdoIft6WhMRBddIcXSnUq6awo01WHLpnvgGSH2OnfBM=;
        b=L5NRcErwg4syklzHlbny5lpHssXgETr91GOkkhp58kmKmIiMXhWm2NyrpEV1Dr5+sY
         ynymJOYKO13AC8AF/dKS2dD9MTw8sjb2bTVwJ9I+jBTKlvf0FgPEyDVaR+MDS2a428+i
         v8MWBxAHK1n205EKloxEa1apuaguyF3PMa2gz+UbtB3r7D9P5b1cpALv6vAo/4h2BmBm
         KBLHcSwT2R5jD6uoPlq2tqFc1GloGvi2+aA5IFYSShMGGejso5bwbCiPMXVfiQeD5B4F
         lAVFiMCg06sCj13OtzrUglsHm83Mm/YUDlLKDWlB7szIEdaSjok2oax5Eh9a+tcB5+Tu
         Jkfw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694248288; x=1694853088;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=pdoIft6WhMRBddIcXSnUq6awo01WHLpnvgGSH2OnfBM=;
        b=WxWMKHg390geUYwRNTGVgpLI1T3+9w3YyhQn1fNS/Qo4m+zLQSq5uf5G4r1nEBP4gX
         aigIOYs2nWztuPV/mba8noAi/vcE0z4XMCIwqG3fDbZWYg1A4u4VH8rtJLfrGQ2Ai4SY
         f0BMEEGMxALsTbOsNUbMcxD3ohO4cyBtEfDjGLvzthjtosm+NV3tWCisYwK0ZyJ1vwZK
         +13dy/c6E3SMDKk743UM9SDyxPPxhsdQ6WDd9hkWZcNX9PUfaBAyOzOjv0RFIMRKJB5t
         Nv4ojfVfJuVjA79ZoX4p7gE7TTIaJ4+rt08ZIS7k439ofR0iqx/EfW02ki+vO37RsWt7
         hs1g==
X-Gm-Message-State: AOJu0Yz1mn3E6Nlyp5Zu/kSeH4DhTPwdKoblvRFLFf4AZGlBraEEjmiW
	S3Nw5oRaE4mKzu22NB5XLSADdQMHHI9WRb4IeCSVfh5s
X-Google-Smtp-Source: AGHT+IGYIBTIdWkDyNdoZbo9VepoQ+X2R1zeRxbQgd7PeXqscZCBTFB6lkzVyI6IRi0mXMNRSx47zQ==
X-Received: by 2002:a05:6870:b014:b0:1bb:83ae:1512 with SMTP id y20-20020a056870b01400b001bb83ae1512mr5875740oae.24.1694248288343;
        Sat, 09 Sep 2023 01:31:28 -0700 (PDT)
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>,
	Leo Yan <leo.yan@linaro.org>
Subject: [PATCH v2 0/2] xen/arm: Enlarge identity map space
Date: Sat,  9 Sep 2023 16:31:17 +0800
Message-Id: <20230909083119.870663-1-leo.yan@linaro.org>
X-Mailer: git-send-email 2.39.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The latest Xen fails to boot on ADLink AVA platform.  Alexey Klimov root
caused the issue is related with the commit 1c78d76b67 ("xen/arm64: mm:
Introduce helpers to prepare/enable/disable").

This is because on ADLink AVA platform, it loads Xen hypervisor to the
address above 2TB and hence causes Xen panic:

  (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
  (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
  (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
  (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel

To fix this issue, this series is to enlarge identity map space to
127 TiB and tested on Telechips Dolphin5 platform.

Changes from v1:
- Rebased on staging branch (Bertrand);
- Added Alexey Klimov tested tag for patch 01 (Alexey).
- Corrected the printing log with dynamically calculation ID map size.


Leo Yan (2):
  xen/arm: Add macro XEN_VM_MAPPING
  xen/arm: Enlarge identity map space to 127TiB

 xen/arch/arm/arm64/mm.c           | 12 ++++++++----
 xen/arch/arm/include/asm/config.h | 22 ++++++++++++----------
 xen/arch/arm/mm.c                 |  2 +-
 3 files changed, 21 insertions(+), 15 deletions(-)

-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 08:31:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 08:31:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598435.933225 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetNP-0001w6-Vw; Sat, 09 Sep 2023 08:31:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598435.933225; Sat, 09 Sep 2023 08:31:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetNP-0001vz-T9; Sat, 09 Sep 2023 08:31:35 +0000
Received: by outflank-mailman (input) for mailman id 598435;
 Sat, 09 Sep 2023 08:31:34 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rb1o=EZ=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qetNO-0001vr-Cy
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 08:31:34 +0000
Received: from mail-pj1-x1033.google.com (mail-pj1-x1033.google.com
 [2607:f8b0:4864:20::1033])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4792a51b-4eeb-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 10:31:33 +0200 (CEST)
Received: by mail-pj1-x1033.google.com with SMTP id
 98e67ed59e1d1-26b41112708so2184432a91.3
 for <xen-devel@lists.xenproject.org>; Sat, 09 Sep 2023 01:31:33 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.29])
 by smtp.gmail.com with ESMTPSA id
 c14-20020a17090ab28e00b0026f3e396882sm4091663pjr.45.2023.09.09.01.31.28
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 09 Sep 2023 01:31:30 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4792a51b-4eeb-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694248291; x=1694853091; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=IfO6gt1jg7JX4SuFiMGAMKpFfTvUV21HN5Stf3HGJ4k=;
        b=a/d04L++OkDjOrE7ed+YKImDTFi93g8cmUOxCUqitAJ+cZdUY0BOP6/KVx+sH3fH6u
         0dA/SnmLJ20H35GN2cG2viB9aV5VZe4FkCzJ0BO0f84vf7cbtz9mNktbfPTApG5WHfhU
         CEy4Xh2Pao2AEgV5w7hqn8rGAiPntiSuCU5fzxa/TD4KH0pszc2hsT9M0znYXQ86araB
         kNs4899Ss4guClTTY/0SZ7s1H07qTDCUV7nIAkVORnnkYuBYFhwqKS0foPns8f8XbChN
         RMqun3Sd4tY7jc6L7W4cvuL3YEuKWQHkb0LzHVTbplByLgkwSPtpqqQhlak/RTUN4s0C
         vuQA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694248291; x=1694853091;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=IfO6gt1jg7JX4SuFiMGAMKpFfTvUV21HN5Stf3HGJ4k=;
        b=GPVnospyB+BADzxO4IXcC8i/kyItRCt7YUNW5O8VSS8uLtokuWF4EriTMeVp3D4zor
         tYYkX7MxvdB2ZZFgmDFO5Z7UrAi2ZyISyiC5B4+NMoHD6qZWxQb8vfgwjhBzj04Q/gZW
         0v2JhsjuI2DH/B8THcaeQYwpCfhh9HKVbVGukgOrustq0ffSqHXiYV5FRlIVkfbLxkO4
         Y+c55SjaDiimP2z8tBzaUzDuluPunDZxEoV9vDF5NLlmZ5WSA5LckPD+p3zlPiocbetk
         5U9+JyJSyRt2Ry2zf2qJ+EjcUAdoB5vMrQ1E+Nbj8+zy6AzrDhd212r8HOMG9aFaDJkz
         rZJA==
X-Gm-Message-State: AOJu0YxVXgWQzhYrJWmVd/si5/+QR2gObuQOF1U+p5IjTI+OoU+tX+et
	26ZGRpDOSH43MUYPQm/cHFuy2nVK2c8+V4tncQCkViQ+
X-Google-Smtp-Source: AGHT+IEvgFk1Luv8Ju6PepwsBPv9dI5pRPc6N/Na1cfvwxLxRryN8erMYEmbjYIvRBwQ4UPHV1IRfQ==
X-Received: by 2002:a17:90b:3e81:b0:263:f630:228f with SMTP id rj1-20020a17090b3e8100b00263f630228fmr4852582pjb.23.1694248291339;
        Sat, 09 Sep 2023 01:31:31 -0700 (PDT)
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>,
	Leo Yan <leo.yan@linaro.org>
Subject: [PATCH v2 1/2] xen/arm: Add macro XEN_VM_MAPPING
Date: Sat,  9 Sep 2023 16:31:18 +0800
Message-Id: <20230909083119.870663-2-leo.yan@linaro.org>
X-Mailer: git-send-email 2.39.2
In-Reply-To: <20230909083119.870663-1-leo.yan@linaro.org>
References: <20230909083119.870663-1-leo.yan@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Xen maps the virtual memory space starting from L0 slot 4, so it's open
coded for macros with the offset '4'.

For more readable, add a new macro XEN_VM_MAPPING which defines the
start slot for Xen virtual memory mapping, and all virtual memory
regions are defined based on it.

Signed-off-by: Leo Yan <leo.yan@linaro.org>
---
 xen/arch/arm/include/asm/config.h | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h
index 83cbf6b0cb..21f4e68a40 100644
--- a/xen/arch/arm/include/asm/config.h
+++ b/xen/arch/arm/include/asm/config.h
@@ -117,11 +117,14 @@
 #define XEN_VIRT_START          _AT(vaddr_t, MB(2))
 #else
 
+#define IDENTITY_MAPPING_AREA_NR_L0	4
+#define XEN_VM_MAPPING			SLOT0(IDENTITY_MAPPING_AREA_NR_L0)
+
 #define SLOT0_ENTRY_BITS  39
 #define SLOT0(slot) (_AT(vaddr_t,slot) << SLOT0_ENTRY_BITS)
 #define SLOT0_ENTRY_SIZE  SLOT0(1)
 
-#define XEN_VIRT_START          (SLOT0(4) + _AT(vaddr_t, MB(2)))
+#define XEN_VIRT_START          (XEN_VM_MAPPING + _AT(vaddr_t, MB(2)))
 #endif
 
 /*
@@ -184,12 +187,10 @@
 
 #else /* ARM_64 */
 
-#define IDENTITY_MAPPING_AREA_NR_L0  4
-
-#define VMAP_VIRT_START  (SLOT0(4) + GB(1))
+#define VMAP_VIRT_START  (XEN_VM_MAPPING + GB(1))
 #define VMAP_VIRT_SIZE   GB(1)
 
-#define FRAMETABLE_VIRT_START  (SLOT0(4) + GB(32))
+#define FRAMETABLE_VIRT_START  (XEN_VM_MAPPING + GB(32))
 #define FRAMETABLE_SIZE        GB(32)
 #define FRAMETABLE_NR          (FRAMETABLE_SIZE / sizeof(*frame_table))
 
-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 08:31:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 08:31:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598436.933236 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetNR-0002B6-7m; Sat, 09 Sep 2023 08:31:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598436.933236; Sat, 09 Sep 2023 08:31:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetNR-0002Az-3R; Sat, 09 Sep 2023 08:31:37 +0000
Received: by outflank-mailman (input) for mailman id 598436;
 Sat, 09 Sep 2023 08:31:36 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rb1o=EZ=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qetNQ-0001vr-3e
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 08:31:36 +0000
Received: from mail-pj1-x1031.google.com (mail-pj1-x1031.google.com
 [2607:f8b0:4864:20::1031])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 491a5098-4eeb-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 10:31:35 +0200 (CEST)
Received: by mail-pj1-x1031.google.com with SMTP id
 98e67ed59e1d1-269304c135aso2172297a91.3
 for <xen-devel@lists.xenproject.org>; Sat, 09 Sep 2023 01:31:35 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.29])
 by smtp.gmail.com with ESMTPSA id
 c14-20020a17090ab28e00b0026f3e396882sm4091663pjr.45.2023.09.09.01.31.31
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 09 Sep 2023 01:31:33 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 491a5098-4eeb-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694248294; x=1694853094; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=NMjqniKvNz74jeLELNKkTBZ2YCjvVUjOwJ430ggknLM=;
        b=uy1NOFjjRvme9BOUszvmjA+e6CTiPbDqHVXRIHfWtWdpK+jIljznwKdlB9OW/xqgPQ
         Y1D8uZ250eBntwsSxaRwwCl23ESqCaFZeAjCRvuVIfJ0DF6UAcaf4UxAc5o1LiEveDFR
         jEGU/LeceCu7m76+NHpg4Nnzpwk3qWfcmV4yongGbWQ4NTShP/JtQYm+l/IaNDvXKuNy
         ZfIINWCSLieU3Yd9lOIaPGEQ0KRBgLOX1CLtiAwErHuAS7WXn4dEe29RF1bX0NAqZE8l
         e+UbbQgk4Vh5V7Ap8YxewHU18rxNnGzCsXRYTz3UiNKOGjfjD71iGa0zLdQdmqJFXSUX
         2hBw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694248294; x=1694853094;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=NMjqniKvNz74jeLELNKkTBZ2YCjvVUjOwJ430ggknLM=;
        b=Wm8X88PF6GAR56s7U3fTm51qM8ykZLZ0MOI03fGUsBR0ivu7eFgXdOPzEPnNvRSxwP
         u9FGgyw9qftEQf/SjonXYRxwDdg6IMEQ7fA++11S5sk/yY6yU/wQCLfJGenQjiOutZS3
         tRUoTJH8jmQHvP90yqP43QaKuxTV/GWUlwDjXCs8juYGQScT4ffhBqZULwEmmpVJT6sK
         cQIsZE/ZU8YtvtQx3yUTa3cpe75JQi6cfaeFlKqqmF2t7/B4JRq+4vWy5cGYd7jNF38/
         cieKIaHF3zoO4R2vyJOz5USEw3IKQntpFwvcuFAPY2MCpAja8bCkK4LeekO9l+AtfDkj
         fi4Q==
X-Gm-Message-State: AOJu0YyGi7hhUNtYMO02zxglJzhu5ONPjkrDYHfhHvzftxi6/seAkRz+
	4fQ/pcAKpk4zWL5bOFj+F0qMyqGkZDVsRGGOiQPnqrc9
X-Google-Smtp-Source: AGHT+IFJbs9Jzi8VlE8c7jrv3+EDAZjHGFFulkckYsCgSOuhJcpLUXDUMxlG1kZoSX9QRTXzjSUa9w==
X-Received: by 2002:a17:90b:1e49:b0:268:71e4:ec2a with SMTP id pi9-20020a17090b1e4900b0026871e4ec2amr4096911pjb.48.1694248294019;
        Sat, 09 Sep 2023 01:31:34 -0700 (PDT)
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>,
	Leo Yan <leo.yan@linaro.org>
Subject: [PATCH v2 2/2] xen/arm: Enlarge identity map space to 127TiB
Date: Sat,  9 Sep 2023 16:31:19 +0800
Message-Id: <20230909083119.870663-3-leo.yan@linaro.org>
X-Mailer: git-send-email 2.39.2
In-Reply-To: <20230909083119.870663-1-leo.yan@linaro.org>
References: <20230909083119.870663-1-leo.yan@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

On some platforms, the memory regions could be:

  (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
  (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
  (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
  (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel

In this case, the Xen binary is loaded above 2TiB.  2TiB is the maximum
identity map space supported by Xen, thus it fails to boot up due to the
out of the range.

This patch introduces several macros to present the zeroth page table's
slot numbers for easier readable.  Based on the defined macros, it
enlarges identity map space to 127TiB, which can support the memory
space [0x0 .. 0x00007eff_ffff_ffff] so has flexibility for various
platforms.

Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
Reported-by: Alexey Klimov <alexey.klimov@linaro.org>
Signed-off-by: Leo Yan <leo.yan@linaro.org>
---
 xen/arch/arm/arm64/mm.c           | 12 ++++++++----
 xen/arch/arm/include/asm/config.h | 15 ++++++++-------
 xen/arch/arm/mm.c                 |  2 +-
 3 files changed, 17 insertions(+), 12 deletions(-)

diff --git a/xen/arch/arm/arm64/mm.c b/xen/arch/arm/arm64/mm.c
index 78b7c7eb00..802170cf29 100644
--- a/xen/arch/arm/arm64/mm.c
+++ b/xen/arch/arm/arm64/mm.c
@@ -40,8 +40,10 @@ static void __init prepare_boot_identity_mapping(void)
     clear_page(boot_second_id);
     clear_page(boot_third_id);
 
-    if ( id_offsets[0] >= IDENTITY_MAPPING_AREA_NR_L0 )
-        panic("Cannot handle ID mapping above 2TB\n");
+    if ( id_offsets[0] >= XEN_IDENTITY_MAP_L0_END )
+        /* 1TiB occupies 2 slots in zeroeth table */
+        panic("Cannot handle ID mapping above %dTiB\n",
+              XEN_IDENTITY_MAP_L0_END>>1);
 
     /* Link first ID table */
     pte = mfn_to_xen_entry(virt_to_mfn(boot_first_id), MT_NORMAL);
@@ -73,8 +75,10 @@ static void __init prepare_runtime_identity_mapping(void)
     lpae_t pte;
     DECLARE_OFFSETS(id_offsets, id_addr);
 
-    if ( id_offsets[0] >= IDENTITY_MAPPING_AREA_NR_L0 )
-        panic("Cannot handle ID mapping above 2TB\n");
+    if ( id_offsets[0] >= XEN_IDENTITY_MAP_L0_END )
+        /* 1TiB occupies 2 slots in zeroeth table */
+        panic("Cannot handle ID mapping above %dTiB\n",
+              XEN_IDENTITY_MAP_L0_END>>1);
 
     /* Link first ID table */
     pte = pte_of_xenaddr((vaddr_t)xen_first_id);
diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h
index 21f4e68a40..b772f1574d 100644
--- a/xen/arch/arm/include/asm/config.h
+++ b/xen/arch/arm/include/asm/config.h
@@ -87,11 +87,11 @@
  *   2G -   4G   Domheap: on-demand-mapped
  *
  * ARM64 layout:
- * 0x0000000000000000 - 0x000001ffffffffff (2TB, L0 slots [0..3])
+ * 0x0000000000000000 - 0x00007effffffffff (127TB, L0 slots [0..253])
  *
  *  Reserved to identity map Xen
  *
- * 0x0000020000000000 - 0x0000027fffffffff (512GB, L0 slot [4])
+ * 0x000007f000000000 - 0x00007fffffffffff (1TB, L0 slot [254..255])
  *  (Relative offsets)
  *   0  -   2M   Unmapped
  *   2M -  10M   Xen text, data, bss
@@ -103,9 +103,6 @@
  *
  *  32G -  64G   Frametable: 56 bytes per page for 2TB of RAM
  *
- * 0x0000028000000000 - 0x00007fffffffffff (125TB, L0 slots [5..255])
- *  Unused
- *
  * 0x0000800000000000 - 0x000084ffffffffff (5TB, L0 slots [256..265])
  *  1:1 mapping of RAM
  *
@@ -117,8 +114,12 @@
 #define XEN_VIRT_START          _AT(vaddr_t, MB(2))
 #else
 
-#define IDENTITY_MAPPING_AREA_NR_L0	4
-#define XEN_VM_MAPPING			SLOT0(IDENTITY_MAPPING_AREA_NR_L0)
+#define XEN_IDENTITY_MAP_L0_START       0
+#define XEN_IDENTITY_MAP_L0_NUM         254
+#define XEN_IDENTITY_MAP_L0_END         (XEN_IDENTITY_MAP_L0_START + \
+                                         XEN_IDENTITY_MAP_L0_NUM)
+#define XEN_VM_MAP_L0_START             (XEN_IDENTITY_MAP_L0_END)
+#define XEN_VM_MAPPING                  SLOT0(XEN_VM_MAP_L0_START)
 
 #define SLOT0_ENTRY_BITS  39
 #define SLOT0(slot) (_AT(vaddr_t,slot) << SLOT0_ENTRY_BITS)
diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index c34cc94c90..218552783e 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -156,7 +156,7 @@ static void __init __maybe_unused build_assertions(void)
      * with it.
      */
 #define CHECK_OVERLAP_WITH_IDMAP(virt) \
-    BUILD_BUG_ON(zeroeth_table_offset(virt) < IDENTITY_MAPPING_AREA_NR_L0)
+    BUILD_BUG_ON(zeroeth_table_offset(virt) < XEN_IDENTITY_MAP_L0_END)
 
     CHECK_OVERLAP_WITH_IDMAP(XEN_VIRT_START);
     CHECK_OVERLAP_WITH_IDMAP(VMAP_VIRT_START);
-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 08:34:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 08:34:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598449.933256 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetQS-0003YM-Ty; Sat, 09 Sep 2023 08:34:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598449.933256; Sat, 09 Sep 2023 08:34:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetQS-0003YF-QP; Sat, 09 Sep 2023 08:34:44 +0000
Received: by outflank-mailman (input) for mailman id 598449;
 Sat, 09 Sep 2023 08:34:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rb1o=EZ=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qetQR-0003Y6-Le
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 08:34:43 +0000
Received: from mail-pg1-x531.google.com (mail-pg1-x531.google.com
 [2607:f8b0:4864:20::531])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b8c45409-4eeb-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 10:34:42 +0200 (CEST)
Received: by mail-pg1-x531.google.com with SMTP id
 41be03b00d2f7-56a9c951aaaso2089061a12.3
 for <xen-devel@lists.xenproject.org>; Sat, 09 Sep 2023 01:34:42 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.29])
 by smtp.gmail.com with ESMTPSA id
 17-20020a170902ee5100b001bde65894d5sm2781080plo.109.2023.09.09.01.34.38
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 09 Sep 2023 01:34:40 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b8c45409-4eeb-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694248481; x=1694853281; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=pdoIft6WhMRBddIcXSnUq6awo01WHLpnvgGSH2OnfBM=;
        b=SX4NYeDE0aEFh9zJp3yYBKVuGjUZbK2GimNfCaK65Tl6Zdcj0pwltPVqF6F4P43aK2
         Eyu3u+IQYSZescHa87vagmdEl6bNinOi0iEpADMUK4u1XvWFiM3+SKJRiKU+Gyzjv/PF
         i9hleYRWh5Me17aLbaq+Y43ESpC4TqlaF3p3a4HX2w4s5d/xhD0n5LFm0vkKZIKGC7J+
         yhU8/5FOT6cYQUxxakYUoIi0Jk/7HIxpBp5JDkf0TryPCIGsnx8R5slyUBjJG38+oAXC
         7n2lEu4ykH3/ydSKI+NnHJscFbdxazKTTZTI1i0DJjlrjqcDjS2tvFwhxQWX7Hb6P+MD
         E54Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694248481; x=1694853281;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=pdoIft6WhMRBddIcXSnUq6awo01WHLpnvgGSH2OnfBM=;
        b=kNC6n5Fda7dH9fbx0mdTgjygR3GoVPqpAngMN2Xil98Twh9XBv2CpPxhKoiGCDXFNP
         coeLwuh5v9b8OSNahDhyfML6MuvmL8iutshJw+RJr0eBwNq8tpQ3KczyoPnjlfccoxBA
         MnWJL1FZm7/fmcHxtYApUkO1RowePnPFv7QQ50RFOWxCQNPsC2XVGaOsk3t8OiOpUZhd
         HGqeDbcf79nS48YE5F9AQQ7J9v14x+foDdwCioTlKVO60hEShXR8hmnsbc4Aqg2RdCHj
         dktvKBiXWy6nWrUSmFAx0K8ANKYBsXX1maBF521R6GU/L9//EC5AcfiT4w741iDTg4kp
         gbvQ==
X-Gm-Message-State: AOJu0YzrhTzdQKVejPLGDt6UgcIQV63oip3Dy54JABe8LJp7ymUWZffY
	vX1f2iQHCBRQrCdpqsZSB1QXiqlUUjJdukOVn26J1Zzf
X-Google-Smtp-Source: AGHT+IHc+1cTqdgQPHxX/PtuyKpc+2c8REVmWMeEKCiodC8chytxWStvS+QLhyIWnu+DSkr7orKS8g==
X-Received: by 2002:a17:903:486:b0:1c0:c7ae:a8a2 with SMTP id jj6-20020a170903048600b001c0c7aea8a2mr3862414plb.35.1694248481327;
        Sat, 09 Sep 2023 01:34:41 -0700 (PDT)
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>,
	Leo Yan <leo.yan@linaro.org>
Subject: [PATCH RESEND v2 0/2] xen/arm: Enlarge identity map space
Date: Sat,  9 Sep 2023 16:34:08 +0800
Message-Id: <20230909083410.870726-1-leo.yan@linaro.org>
X-Mailer: git-send-email 2.39.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The latest Xen fails to boot on ADLink AVA platform.  Alexey Klimov root
caused the issue is related with the commit 1c78d76b67 ("xen/arm64: mm:
Introduce helpers to prepare/enable/disable").

This is because on ADLink AVA platform, it loads Xen hypervisor to the
address above 2TB and hence causes Xen panic:

  (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
  (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
  (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
  (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel

To fix this issue, this series is to enlarge identity map space to
127 TiB and tested on Telechips Dolphin5 platform.

Changes from v1:
- Rebased on staging branch (Bertrand);
- Added Alexey Klimov tested tag for patch 01 (Alexey).
- Corrected the printing log with dynamically calculation ID map size.


Leo Yan (2):
  xen/arm: Add macro XEN_VM_MAPPING
  xen/arm: Enlarge identity map space to 127TiB

 xen/arch/arm/arm64/mm.c           | 12 ++++++++----
 xen/arch/arm/include/asm/config.h | 22 ++++++++++++----------
 xen/arch/arm/mm.c                 |  2 +-
 3 files changed, 21 insertions(+), 15 deletions(-)

-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 08:34:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 08:34:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598450.933266 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetQV-0003o0-4a; Sat, 09 Sep 2023 08:34:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598450.933266; Sat, 09 Sep 2023 08:34:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetQV-0003nr-1Y; Sat, 09 Sep 2023 08:34:47 +0000
Received: by outflank-mailman (input) for mailman id 598450;
 Sat, 09 Sep 2023 08:34:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rb1o=EZ=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qetQU-0003Y6-6s
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 08:34:46 +0000
Received: from mail-pg1-x534.google.com (mail-pg1-x534.google.com
 [2607:f8b0:4864:20::534])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ba735d05-4eeb-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 10:34:45 +0200 (CEST)
Received: by mail-pg1-x534.google.com with SMTP id
 41be03b00d2f7-564b6276941so2087599a12.3
 for <xen-devel@lists.xenproject.org>; Sat, 09 Sep 2023 01:34:45 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.29])
 by smtp.gmail.com with ESMTPSA id
 17-20020a170902ee5100b001bde65894d5sm2781080plo.109.2023.09.09.01.34.41
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 09 Sep 2023 01:34:43 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ba735d05-4eeb-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694248484; x=1694853284; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=J6h+kQFNlJuKLKcUFrkwizN3qvwCXJUGePLvvNBk0jw=;
        b=AL2cQRMXOl3LgiyzE+pydbCAQmrDcma88cmTGDMwbQJgKhbKo971woTXvD0Hx+xlVe
         kMpSOuMl8Kw1clHlpqeHC9cw2pzbtAEargExtaCX7rnZlT7IVA5d7ZqBGYfo1Q54hYZ7
         pFrkhg9Zk/lm0GXmnj5EOU8O5gCmNhLsTfl9uoYmsIbaIdnY3Zlmb9aEL4tMffxidQWO
         fJS4KJwzYAJTD5Uz3F22yUheVdHqgFOd7vqCoiNtrrJVeyi2NSRYnE+obmy6GF0G+b3k
         N02h8mqXoC95XObKTdLCpNL1CGVy+MNHHkTS2j6jtRmSY3Y9WQvhOXoj1i4C1IJpuI6E
         Tfag==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694248484; x=1694853284;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=J6h+kQFNlJuKLKcUFrkwizN3qvwCXJUGePLvvNBk0jw=;
        b=WNUdTYZsc7fW94Kmr0Vj/8zha4b43pZnYe9kf6cioNGpD1uAxrQaD5N10xJ8GJppyY
         9J8KtySjbv4xTine0xKTuF5wuzS3zpw21O58+31x0dhTx47odZ80yG8aBb4nOdhGlORj
         P8j/YI5NSW3QfNW7Vmyudk0pqf8UYyiNhvdwZts0cNlDFAJ9UGP0AZRzMQMwdCPDx4i+
         o5nALb8a07J92qUyhwf4EBeFGOfpfu2scbxxN8Yqv5/R4+02qS53gDqyJ4QV9+Ljrui8
         jd+t7tTp8RirtQWEbrqaUZ/UJv+VZb3Om7qEycIgaDsbKr+l6sCb0UhV+NrGXJ3HO1U/
         JoUQ==
X-Gm-Message-State: AOJu0YyPpG0oCInvKLLfWi30l2+167gyLr/S3qtp1ZG3E8IgUGOMAhRN
	EfqFDvg/aPMQgpcFzmqlDf4Ke9/pBuX8u2sUJgNMlx25
X-Google-Smtp-Source: AGHT+IFRvTt3STy9ETwUk8VeK8KnAu1eRRfaQSnUAJIE0ud1V8L6R2sYM7J9R4YL6YksIJdry8eILg==
X-Received: by 2002:a17:903:11c6:b0:1c0:e630:5031 with SMTP id q6-20020a17090311c600b001c0e6305031mr5851416plh.28.1694248484193;
        Sat, 09 Sep 2023 01:34:44 -0700 (PDT)
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>,
	Leo Yan <leo.yan@linaro.org>
Subject: [PATCH RESEND v2 1/2] xen/arm: Add macro XEN_VM_MAPPING
Date: Sat,  9 Sep 2023 16:34:09 +0800
Message-Id: <20230909083410.870726-2-leo.yan@linaro.org>
X-Mailer: git-send-email 2.39.2
In-Reply-To: <20230909083410.870726-1-leo.yan@linaro.org>
References: <20230909083410.870726-1-leo.yan@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Xen maps the virtual memory space starting from L0 slot 4, so it's open
coded for macros with the offset '4'.

For more readable, add a new macro XEN_VM_MAPPING which defines the
start slot for Xen virtual memory mapping, and all virtual memory
regions are defined based on it.

Signed-off-by: Leo Yan <leo.yan@linaro.org>
Tested-by: Alexey Klimov <alexey.klimov@linaro.org>
---
 xen/arch/arm/include/asm/config.h | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h
index 83cbf6b0cb..21f4e68a40 100644
--- a/xen/arch/arm/include/asm/config.h
+++ b/xen/arch/arm/include/asm/config.h
@@ -117,11 +117,14 @@
 #define XEN_VIRT_START          _AT(vaddr_t, MB(2))
 #else
 
+#define IDENTITY_MAPPING_AREA_NR_L0	4
+#define XEN_VM_MAPPING			SLOT0(IDENTITY_MAPPING_AREA_NR_L0)
+
 #define SLOT0_ENTRY_BITS  39
 #define SLOT0(slot) (_AT(vaddr_t,slot) << SLOT0_ENTRY_BITS)
 #define SLOT0_ENTRY_SIZE  SLOT0(1)
 
-#define XEN_VIRT_START          (SLOT0(4) + _AT(vaddr_t, MB(2)))
+#define XEN_VIRT_START          (XEN_VM_MAPPING + _AT(vaddr_t, MB(2)))
 #endif
 
 /*
@@ -184,12 +187,10 @@
 
 #else /* ARM_64 */
 
-#define IDENTITY_MAPPING_AREA_NR_L0  4
-
-#define VMAP_VIRT_START  (SLOT0(4) + GB(1))
+#define VMAP_VIRT_START  (XEN_VM_MAPPING + GB(1))
 #define VMAP_VIRT_SIZE   GB(1)
 
-#define FRAMETABLE_VIRT_START  (SLOT0(4) + GB(32))
+#define FRAMETABLE_VIRT_START  (XEN_VM_MAPPING + GB(32))
 #define FRAMETABLE_SIZE        GB(32)
 #define FRAMETABLE_NR          (FRAMETABLE_SIZE / sizeof(*frame_table))
 
-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 08:34:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 08:34:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598451.933276 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetQY-00045l-LG; Sat, 09 Sep 2023 08:34:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598451.933276; Sat, 09 Sep 2023 08:34:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetQY-00045e-He; Sat, 09 Sep 2023 08:34:50 +0000
Received: by outflank-mailman (input) for mailman id 598451;
 Sat, 09 Sep 2023 08:34:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rb1o=EZ=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qetQW-0003Y6-Vs
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 08:34:48 +0000
Received: from mail-pf1-x432.google.com (mail-pf1-x432.google.com
 [2607:f8b0:4864:20::432])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bc17d2f7-4eeb-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 10:34:48 +0200 (CEST)
Received: by mail-pf1-x432.google.com with SMTP id
 d2e1a72fcca58-68a56401c12so2376239b3a.2
 for <xen-devel@lists.xenproject.org>; Sat, 09 Sep 2023 01:34:48 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.29])
 by smtp.gmail.com with ESMTPSA id
 17-20020a170902ee5100b001bde65894d5sm2781080plo.109.2023.09.09.01.34.44
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 09 Sep 2023 01:34:46 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bc17d2f7-4eeb-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694248487; x=1694853287; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=NMjqniKvNz74jeLELNKkTBZ2YCjvVUjOwJ430ggknLM=;
        b=UQu1ORJHIGamqn9162vLF8HaeYvCR+Y91ouLe3wIY1VTdcoeXfl7KC8CTjv249RxeA
         mSJSyU2TZHnjI4NvxpDydz9RnebI+12N7zQfMso9FpimIa1xfaPXqdIhsG2nB4fLvsbS
         gSOCxJejdpjfZsrGNTYqeKXc0/Gt11Qwbc0ZampOn1oqalJoqY4QX+vuY8MUsyzCmCuL
         8qPjZ76ef8n0PlFGD/75/+GGej+Or6pLrOo7/P0zdP/5M7TBN52qaPeI3zZVfxWrojZW
         0k1kSTLQvyTjxNmlhDwrEYkHqNftWtzU/qbCx+ia9JkKajC1m8Z4lsNnci9wENwkRRHX
         E3kw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694248487; x=1694853287;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=NMjqniKvNz74jeLELNKkTBZ2YCjvVUjOwJ430ggknLM=;
        b=ty/vQq7Tr1NBKkKpGMKJNSAwGFNSdgFfUQmJZsXGyZufGdNNbsBIJGRQxHhL1yE22M
         TeAoP0lo/bXT/zMvHVERUhvBGqh2vfER0hRAkj360YNQf5ltZlh1XwU8aliItCnhdrpu
         x6y/TklYG0EzTYc1qHRk38u+EWZNq/I0+lbxI8uw81hK69GzszWt2kcFHb2V9KMINaTY
         Kc6hluDLOm/P/MutBp5G9TZiaSaAyb41X3TadtILAb+rnPGRR059COme9sKLHwWpLGSI
         XPby6JMzaqtlo+i9Ntv/+yDf3qcvmZT/qyc/tgl1eTJ+0pUBttbbl0ycz+M5i//qBr8b
         eaFw==
X-Gm-Message-State: AOJu0YzFQFxICI9L2FgVgIIwJMi3AsdpJJphIuxMGjgbqDf0AiVSNFbd
	eCrkkyKdop36yeW20pxqCqRmt3v0VVomU5Z0ptuVrtM6
X-Google-Smtp-Source: AGHT+IH0V/EfRR6ioSjE3+vNsgGPDLitgsRYco5+6aMmrfsn0dvtZZVGpXUI31FH/P9maTFxFTF8ag==
X-Received: by 2002:a05:6a20:564c:b0:148:4c5:9714 with SMTP id is12-20020a056a20564c00b0014804c59714mr4624930pzc.13.1694248487010;
        Sat, 09 Sep 2023 01:34:47 -0700 (PDT)
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>,
	Leo Yan <leo.yan@linaro.org>
Subject: [PATCH RESEND v2 2/2] xen/arm: Enlarge identity map space to 127TiB
Date: Sat,  9 Sep 2023 16:34:10 +0800
Message-Id: <20230909083410.870726-3-leo.yan@linaro.org>
X-Mailer: git-send-email 2.39.2
In-Reply-To: <20230909083410.870726-1-leo.yan@linaro.org>
References: <20230909083410.870726-1-leo.yan@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

On some platforms, the memory regions could be:

  (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
  (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
  (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
  (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel

In this case, the Xen binary is loaded above 2TiB.  2TiB is the maximum
identity map space supported by Xen, thus it fails to boot up due to the
out of the range.

This patch introduces several macros to present the zeroth page table's
slot numbers for easier readable.  Based on the defined macros, it
enlarges identity map space to 127TiB, which can support the memory
space [0x0 .. 0x00007eff_ffff_ffff] so has flexibility for various
platforms.

Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
Reported-by: Alexey Klimov <alexey.klimov@linaro.org>
Signed-off-by: Leo Yan <leo.yan@linaro.org>
---
 xen/arch/arm/arm64/mm.c           | 12 ++++++++----
 xen/arch/arm/include/asm/config.h | 15 ++++++++-------
 xen/arch/arm/mm.c                 |  2 +-
 3 files changed, 17 insertions(+), 12 deletions(-)

diff --git a/xen/arch/arm/arm64/mm.c b/xen/arch/arm/arm64/mm.c
index 78b7c7eb00..802170cf29 100644
--- a/xen/arch/arm/arm64/mm.c
+++ b/xen/arch/arm/arm64/mm.c
@@ -40,8 +40,10 @@ static void __init prepare_boot_identity_mapping(void)
     clear_page(boot_second_id);
     clear_page(boot_third_id);
 
-    if ( id_offsets[0] >= IDENTITY_MAPPING_AREA_NR_L0 )
-        panic("Cannot handle ID mapping above 2TB\n");
+    if ( id_offsets[0] >= XEN_IDENTITY_MAP_L0_END )
+        /* 1TiB occupies 2 slots in zeroeth table */
+        panic("Cannot handle ID mapping above %dTiB\n",
+              XEN_IDENTITY_MAP_L0_END>>1);
 
     /* Link first ID table */
     pte = mfn_to_xen_entry(virt_to_mfn(boot_first_id), MT_NORMAL);
@@ -73,8 +75,10 @@ static void __init prepare_runtime_identity_mapping(void)
     lpae_t pte;
     DECLARE_OFFSETS(id_offsets, id_addr);
 
-    if ( id_offsets[0] >= IDENTITY_MAPPING_AREA_NR_L0 )
-        panic("Cannot handle ID mapping above 2TB\n");
+    if ( id_offsets[0] >= XEN_IDENTITY_MAP_L0_END )
+        /* 1TiB occupies 2 slots in zeroeth table */
+        panic("Cannot handle ID mapping above %dTiB\n",
+              XEN_IDENTITY_MAP_L0_END>>1);
 
     /* Link first ID table */
     pte = pte_of_xenaddr((vaddr_t)xen_first_id);
diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h
index 21f4e68a40..b772f1574d 100644
--- a/xen/arch/arm/include/asm/config.h
+++ b/xen/arch/arm/include/asm/config.h
@@ -87,11 +87,11 @@
  *   2G -   4G   Domheap: on-demand-mapped
  *
  * ARM64 layout:
- * 0x0000000000000000 - 0x000001ffffffffff (2TB, L0 slots [0..3])
+ * 0x0000000000000000 - 0x00007effffffffff (127TB, L0 slots [0..253])
  *
  *  Reserved to identity map Xen
  *
- * 0x0000020000000000 - 0x0000027fffffffff (512GB, L0 slot [4])
+ * 0x000007f000000000 - 0x00007fffffffffff (1TB, L0 slot [254..255])
  *  (Relative offsets)
  *   0  -   2M   Unmapped
  *   2M -  10M   Xen text, data, bss
@@ -103,9 +103,6 @@
  *
  *  32G -  64G   Frametable: 56 bytes per page for 2TB of RAM
  *
- * 0x0000028000000000 - 0x00007fffffffffff (125TB, L0 slots [5..255])
- *  Unused
- *
  * 0x0000800000000000 - 0x000084ffffffffff (5TB, L0 slots [256..265])
  *  1:1 mapping of RAM
  *
@@ -117,8 +114,12 @@
 #define XEN_VIRT_START          _AT(vaddr_t, MB(2))
 #else
 
-#define IDENTITY_MAPPING_AREA_NR_L0	4
-#define XEN_VM_MAPPING			SLOT0(IDENTITY_MAPPING_AREA_NR_L0)
+#define XEN_IDENTITY_MAP_L0_START       0
+#define XEN_IDENTITY_MAP_L0_NUM         254
+#define XEN_IDENTITY_MAP_L0_END         (XEN_IDENTITY_MAP_L0_START + \
+                                         XEN_IDENTITY_MAP_L0_NUM)
+#define XEN_VM_MAP_L0_START             (XEN_IDENTITY_MAP_L0_END)
+#define XEN_VM_MAPPING                  SLOT0(XEN_VM_MAP_L0_START)
 
 #define SLOT0_ENTRY_BITS  39
 #define SLOT0(slot) (_AT(vaddr_t,slot) << SLOT0_ENTRY_BITS)
diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index c34cc94c90..218552783e 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -156,7 +156,7 @@ static void __init __maybe_unused build_assertions(void)
      * with it.
      */
 #define CHECK_OVERLAP_WITH_IDMAP(virt) \
-    BUILD_BUG_ON(zeroeth_table_offset(virt) < IDENTITY_MAPPING_AREA_NR_L0)
+    BUILD_BUG_ON(zeroeth_table_offset(virt) < XEN_IDENTITY_MAP_L0_END)
 
     CHECK_OVERLAP_WITH_IDMAP(XEN_VIRT_START);
     CHECK_OVERLAP_WITH_IDMAP(VMAP_VIRT_START);
-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 08:47:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 08:47:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598466.933285 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetcB-0006os-KM; Sat, 09 Sep 2023 08:46:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598466.933285; Sat, 09 Sep 2023 08:46:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetcB-0006ol-HP; Sat, 09 Sep 2023 08:46:51 +0000
Received: by outflank-mailman (input) for mailman id 598466;
 Sat, 09 Sep 2023 08:46:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rb1o=EZ=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qetc9-0006oc-Qr
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 08:46:49 +0000
Received: from mail-oa1-x2f.google.com (mail-oa1-x2f.google.com
 [2001:4860:4864:20::2f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 692f1a89-4eed-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 10:46:48 +0200 (CEST)
Received: by mail-oa1-x2f.google.com with SMTP id
 586e51a60fabf-1c504386370so1968458fac.1
 for <xen-devel@lists.xenproject.org>; Sat, 09 Sep 2023 01:46:48 -0700 (PDT)
Received: from leoy-huanghe.lan ([98.98.49.29])
 by smtp.gmail.com with ESMTPSA id
 b1-20020a17090a800100b00263987a50fcsm4061062pjn.22.2023.09.09.01.46.44
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 09 Sep 2023 01:46:46 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 692f1a89-4eed-11ee-8783-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694249207; x=1694854007; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=WGAcv82Qzm33LHRf2WHxHuhiKlY4nF3DVLNuoygi7Bs=;
        b=IQ3VYiZMKJDxDuIYJ8Sh42+DRsMrl6gO+w8LBVbAzuUkHbpATOR83g75gQXTskM+y5
         JHDbPJC7C+8ccZXn1CVqC8v4PKnnatr4vk18dlth17cQKAZNmQh6R5o5DXAQFyMMUxl+
         WqYmMRZJj+FL4DwzqjRZ/wGzlsAG9LDiZ0Rc71ZiQCPeJPbh6PmkrmosAlPkk556Q+Lg
         XqrAybd6/L3KJysspqhB6zK5FTX5vs83vZkV8+0NHeMpMyZ1nRLXWT6++LmVs+6YLPUr
         7wIAdEMSG8h+6DcKD0GVtzF7xCDacPb8JDVF3DIjXBXJLtfRuJbDEPumsbWzcxD8A5iT
         09Hw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694249207; x=1694854007;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=WGAcv82Qzm33LHRf2WHxHuhiKlY4nF3DVLNuoygi7Bs=;
        b=s/HsVeXsg4jZhZG49NKhvPQca9kWz3GEaYyyHA71al9B1UaaoFLOtQ5b/P1jtVOJyE
         LQ1vCMGDmpLPyzmRm3FSwyNmp2zc56i4T3sY5llM8628Bq2zC62NcluBetM8NUX+8K4L
         /ZuUDUgAGDuGFx0HGxpkYcDksDrYx+T2IT0QO0VxWcoozRLaYTyPIUmccGK+HrT6YGqX
         H0giI9svnBgw18kNzVbZASwfywCU6DkcsWoS3vomM4CrH3LeLHTQkteNb7C1E2b/0Rq1
         HgD+0VjXyYPlhg6bzYjxFL72hADoaz+rOGeag9Uas2HjF5Ki7zwmYLPDrwzG5lpSHmGu
         KflA==
X-Gm-Message-State: AOJu0YyNzU+2Yr7CmkGE6UhycyRYREhU1M02iSKe+/ImuEKrbIvCEaWo
	TA6NMX2KfZcd8ktqY6TcBedXpNE39A09de1yEEOTZISz
X-Google-Smtp-Source: AGHT+IHtsOSar2wp79waDTqs/BWfhUn4dP1q8d3DpsWCW3PMOHsDSGTgwh87vwsjr74b6kQZEQ0dLg==
X-Received: by 2002:a05:6870:a1a4:b0:1bb:ac7:2e34 with SMTP id a36-20020a056870a1a400b001bb0ac72e34mr6024289oaf.40.1694249206823;
        Sat, 09 Sep 2023 01:46:46 -0700 (PDT)
Date: Sat, 9 Sep 2023 16:46:42 +0800
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>
Subject: Re: [PATCH RESEND v2 0/2] xen/arm: Enlarge identity map space
Message-ID: <20230909084642.GA49199@leoy-huanghe.lan>
References: <20230909083410.870726-1-leo.yan@linaro.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230909083410.870726-1-leo.yan@linaro.org>

On Sat, Sep 09, 2023 at 04:34:08PM +0800, Leo Yan wrote:
> The latest Xen fails to boot on ADLink AVA platform.  Alexey Klimov root
> caused the issue is related with the commit 1c78d76b67 ("xen/arm64: mm:
> Introduce helpers to prepare/enable/disable").
> 
> This is because on ADLink AVA platform, it loads Xen hypervisor to the
> address above 2TB and hence causes Xen panic:
> 
>   (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
>   (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
>   (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
>   (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel
> 
> To fix this issue, this series is to enlarge identity map space to
> 127 TiB and tested on Telechips Dolphin5 platform.

Ouch, after 'git pull' the latest Xen staging branch and see the
conflict.  I will send new one patch set.  Please ignore this one.

Thanks,
Leo


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 09:10:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 09:10:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598477.933302 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetyq-0002xU-IK; Sat, 09 Sep 2023 09:10:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598477.933302; Sat, 09 Sep 2023 09:10:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qetyq-0002xN-E1; Sat, 09 Sep 2023 09:10:16 +0000
Received: by outflank-mailman (input) for mailman id 598477;
 Sat, 09 Sep 2023 09:10:16 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JYTu=EZ=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qetyp-0002xH-Mj
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 09:10:15 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20621.outbound.protection.outlook.com
 [2a01:111:f400:7eab::621])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ae63df19-4ef0-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 11:10:13 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by BN9PR12MB5259.namprd12.prod.outlook.com (2603:10b6:408:100::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Sat, 9 Sep
 2023 09:10:08 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40%4]) with mapi id 15.20.6768.029; Sat, 9 Sep 2023
 09:10:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ae63df19-4ef0-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=l+o2tZaQligxMxZ/kCYQllEIm+IQCXWH6NiAD1nLksYzefyGi4N6JTZyWFrcGz6y8BEGRfA9vL29uLJmSPNUoYcWjvZSFOgMBvLepWyzPKoS+kbiqtcLCdX+1c8XzJGWRtVsCD72JFAyUxFhr1BjTRVDHWxcsoahNhV4JKlFp+xB0yWOTKqO5UGr3Q8ypNRUsF66gKFLpIsAJMWcbrrctdiwdwa5xftw+0zEBdDTWr9++/a44pgZUEwvZdTS3pBm1QsnE/6na1QTjuhw+g7PYP5eEvILL5ntRSp60+dJ2pzqFYpk9YdoWGVYu3SEiPIiZWL5ZJn+lHvvjE0Tsei+Gg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=SoJnY3slHDZZylwAYPJ6G2oJDZgOugqTzOmoA5lRjbY=;
 b=Jt+RBgtOHBv7peOn0ddLCTVF37LpbuYdmQbnFX/+5rIEhUAvkLGh45IXw1s00aUphHPu7HUoaM5mJAOLxUdfYQgerPK4Bi0mlKcD1CPkYF3178SrrSKKLayvA1DbMLXk/+tOZEIwMRXXv2OMEIQ6tR204gsjmaznu5jZVn4GaT5QqQQx+QmO0lfI6KFLXyGYPFDMMJY/uxomxMdazsno19LmXiFZkgYfZH4i7YO0jfQipkCXc0v9WVrQDdFX9G1czWhSrt86j7y/Ez3tPQ/5cqydUVbtrcn61ork8/Znvj49ZwErGXdALNkyBFCeA8BMDoXcNFjAaAQveZCZ/w6i1w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=SoJnY3slHDZZylwAYPJ6G2oJDZgOugqTzOmoA5lRjbY=;
 b=yi3DyupBFEku1EfwTlp5uGM5isomouWen8mDoNbxpnO5yakaD/tBhqFwlzmrixVmu3mOSD6VEopRXL0ZYzyNF00PHaVQ9euBJzTp8ZDjXjNinUxcMd/EEMuEZ68y2NhVgiGZU0GKV1QxgL2QyC6LWuP/5kzLaLmSoTZPc6tFxUo=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Sat, 9 Sep 2023 17:09:38 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
Message-ID: <ZPw2UjxogIULU722@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com>
X-ClientProxiedBy: SI1PR02CA0055.apcprd02.prod.outlook.com
 (2603:1096:4:1f5::16) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|BN9PR12MB5259:EE_
X-MS-Office365-Filtering-Correlation-Id: c3c78744-1c6e-40f5-8392-08dbb1148fbd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kWEz3uUyH8/P3hNr0di5JWc23qq3sSSMG7d9JDR1HP0wtpwHQ47ol/+EtYJn1vFoKnlf5/qz5u59f81MIubEUdSXHoIlDB3JAYa5ujvFXSRsWfe3fXgDPpHnGRZwYN792lOk+9wP3YOkIOVE44Kh5HwcwHiVQTeIyE5DHDXcjF20z+YREygvttHF6ZWdyojfnQhoYfvy9rjl7aQ5sRHfmZ+hOIV0ZlPyOww0dgQMi0aOixGx8mhetP2Q2KA7XkvcIpfhqzOOQJZfZIJI5No6tvPNs+QGSFrOX6+vltuwXIT33wa5uDRvWSdzIdQiYlTKet0Sr56LkwDONpWuwxFkZOg4+BTEUd6bZBVhpEHxENlAbMCw1F8q5SclI5hH+7YFyF7c5ZmM8/Im23/Fr9jNBy2HRTOC4sZnmUuYUm4uKCHDb5LO/T749JOcEUjWV+4YkXZSq7bHj4BFX3eFPWmSSL8Fvf1UzgsN4zVa07x/06hGtcl3FI9izQK2CPEcHzPhSZVBDf7wML0aFpkqyErYVFN1Y7aSqULZ5PjxUyrioFTgD43exOLwoSH8CzdNfhxQ
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(346002)(136003)(39860400002)(396003)(366004)(186009)(1800799009)(451199024)(6486002)(6506007)(53546011)(6512007)(6666004)(83380400001)(86362001)(38100700002)(36756003)(2616005)(26005)(316002)(6916009)(7416002)(41300700001)(2906002)(8676002)(4326008)(54906003)(66476007)(66556008)(8936002)(66946007)(478600001)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?JRODtyVj+gI6KTHh7lEo9G93ru9MrbyEQKd1QpmDRQmybtl1P9TALvq/k5FF?=
 =?us-ascii?Q?9ZngV1I89gac6OYUypmhT0+JbzxSO5eV4Eka0nJ+ZsQVq/qKeHIYbxSiz6sg?=
 =?us-ascii?Q?DP79Uf9SsY5U3/UxRiVeca14MkVgmYZeATIQBYQ9HdqIhb4+7oZ71qfelNWy?=
 =?us-ascii?Q?S+D9YOQa+ZxOof4oFxoAO/WfDiZ8KD9XQO7QXt5wtENys+buBa/7hBg9o8Tz?=
 =?us-ascii?Q?B9CHdiKQ0yHqs5YPoLeThXI9d+ccAHJWO3Qb7BylQbayq5sGVYNpMou/zBCn?=
 =?us-ascii?Q?2Npb7F+tUZ17iWQ7ZRW1Ik45yU1r6aEEcq2uyS76Rqf2eewAUGStOFMZ+ogy?=
 =?us-ascii?Q?oHFdrqu+eASjrbWSlKgwdxaF9CkAr0UBXPJU2lY6iy5m7YStBwzapEekVZu0?=
 =?us-ascii?Q?vBnpjrym8fEUh39R6oGQe6sIOxMM3M4aEHfFwtbkbaxTCaVV0uzmsYcqcpwY?=
 =?us-ascii?Q?PW6Aq1jVOP+cZZFbbsT1mWwlN43xEZBIsSDpdI7K10nHCsqlHGt0tAynq1qM?=
 =?us-ascii?Q?JGw5a1JzfVSS9OUYMlxsPuZWJ9BmpnB853E/xpA32hMvxzT5jv0dlT1zuRvl?=
 =?us-ascii?Q?BgVaDdGU8iFgSEP0wLnPCQymL+tyMsqkOR3Lc/v4BvCjod+a2fz78j8HIQXE?=
 =?us-ascii?Q?lN9EooipU3zGgzjpcbANVbvMrh0AT3qRhiDdO9TKzbTSJ2v9yjTbpDaqSMqd?=
 =?us-ascii?Q?ICwHhhxn9IzuHAqO/CZB3pSOFlzCTZE2L4s8hPW+sEaJDchNR9iq85l8NUvW?=
 =?us-ascii?Q?Ejh8UkJKlGgjjRGuTXdyrjce340Z1uuUdMjzf34w/TtgA3T7Y/amjY+zZU6X?=
 =?us-ascii?Q?T+V7eZypQSJN4CMc3mpCw+/DQIPyBs3NON5WCCI1uRUimURfxGzXm4pqNZ2f?=
 =?us-ascii?Q?J+PsKD50VARv70qDT0Vk9M9u9namzTZAYYcRSDh2Xj/Vi5YGX9IekR5qgOOC?=
 =?us-ascii?Q?Dbyp5jC0o2C17lKrulQjXe4eecfBHqY8fmf5PpuiVox6LXdD1deOuC8eGbMO?=
 =?us-ascii?Q?qC0G+I6qev1fsyEDrdjNBoUhGZjA3zmVaecXVt2Xu14SXZ/s8oY5TbqtKVio?=
 =?us-ascii?Q?JoGdLjo5aT0B3XCt2m2T70iyGTOoRsQPsXw0NQOOvYBkyFMmO+COm/4VzXEh?=
 =?us-ascii?Q?Jqmp17iKLKZg7nEeIjtGOSJTV7d+B13LNY1Q4MRSmcAffu1xdxJpsPqj+RWb?=
 =?us-ascii?Q?zH5unUHuf0g/1I5azLpQTNkAOeHnD4CQH2Gf0swaXWmkA0rpqs7TWe26OkrT?=
 =?us-ascii?Q?JDXaUio8ny/wQKb1E25o483vth+gc3FgOHLWt99yI4aY9OYnxyw3RwXdnYOT?=
 =?us-ascii?Q?a7/oQATMNjAeyQFLP3n8bCN2Uko7dUz0c/rxUK1fjDxCNKc+zlpEjWnpNJ6R?=
 =?us-ascii?Q?A6VYLqlmcqSCSFFclFimC48mEq98tjHZkRqsxxvw5gz2U/yGSrYAgDmx2HmN?=
 =?us-ascii?Q?6mNdzLgc2JRouoCBJ69cv2edtFcjVfCQ5hQgmcKsrHLB5dhcWmR8xxgDvt7l?=
 =?us-ascii?Q?/JuBqMSbLVibCb50FWuqfWI7eEEt+09emYzpe4lBopw+N8dj2dSHJqwDnBFV?=
 =?us-ascii?Q?DniK9TS4WqLXFq9CqymkLA7tD3y2lfpTVklEyEj1?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c3c78744-1c6e-40f5-8392-08dbb1148fbd
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Sep 2023 09:10:07.4806
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Loa2Z+Mtn7yjslZhONHb9JtqHKGBQ/X0/xnvIZRx6ae50+bF56LAK78LXk1y3TWi7e+L7NaDuSSE4DtDnxVBlQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5259

On Thu, Aug 31, 2023 at 06:36:57PM +0800, Akihiko Odaki wrote:
> On 2023/08/31 18:32, Huang Rui wrote:
> > From: Antonio Caggiano <antonio.caggiano@collabora.com>
> > 
> > Enable resource UUID feature and implement command resource assign UUID.
> > This is done by introducing a hash table to map resource IDs to their
> > UUIDs.
> 
> The hash table does not seem to be stored during migration.

May I know whether you point g->resource_uuids table data in VirtIOGPU
device should be stored in virtio_gpu_save() and resumed in
virtio_gpu_load() for virtio migration?

> 
> > 
> > Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> > 
> > v1->v2:
> >     - Separate declarations from code.
> > 
> >   hw/display/trace-events        |  1 +
> >   hw/display/virtio-gpu-base.c   |  2 ++
> >   hw/display/virtio-gpu-virgl.c  | 21 +++++++++++++++++
> >   hw/display/virtio-gpu.c        | 41 ++++++++++++++++++++++++++++++++++
> >   include/hw/virtio/virtio-gpu.h |  4 ++++
> >   5 files changed, 69 insertions(+)
> > 
> > diff --git a/hw/display/trace-events b/hw/display/trace-events
> > index 2336a0ca15..54d6894c59 100644
> > --- a/hw/display/trace-events
> > +++ b/hw/display/trace-events
> > @@ -41,6 +41,7 @@ virtio_gpu_cmd_res_create_blob(uint32_t res, uint64_t size) "res 0x%x, size %" P
> >   virtio_gpu_cmd_res_unref(uint32_t res) "res 0x%x"
> >   virtio_gpu_cmd_res_back_attach(uint32_t res) "res 0x%x"
> >   virtio_gpu_cmd_res_back_detach(uint32_t res) "res 0x%x"
> > +virtio_gpu_cmd_res_assign_uuid(uint32_t res) "res 0x%x"
> >   virtio_gpu_cmd_res_xfer_toh_2d(uint32_t res) "res 0x%x"
> >   virtio_gpu_cmd_res_xfer_toh_3d(uint32_t res) "res 0x%x"
> >   virtio_gpu_cmd_res_xfer_fromh_3d(uint32_t res) "res 0x%x"
> > diff --git a/hw/display/virtio-gpu-base.c b/hw/display/virtio-gpu-base.c
> > index 4f2b0ba1f3..f44388715c 100644
> > --- a/hw/display/virtio-gpu-base.c
> > +++ b/hw/display/virtio-gpu-base.c
> > @@ -236,6 +236,8 @@ virtio_gpu_base_get_features(VirtIODevice *vdev, uint64_t features,
> >           features |= (1 << VIRTIO_GPU_F_CONTEXT_INIT);
> >       }
> >   
> > +    features |= (1 << VIRTIO_GPU_F_RESOURCE_UUID);
> > +
> >       return features;
> >   }
> >   
> > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> > index 17b634d4ee..1a996a08fc 100644
> > --- a/hw/display/virtio-gpu-virgl.c
> > +++ b/hw/display/virtio-gpu-virgl.c
> > @@ -36,6 +36,7 @@ static void virgl_cmd_create_resource_2d(VirtIOGPU *g,
> >   {
> >       struct virtio_gpu_resource_create_2d c2d;
> >       struct virgl_renderer_resource_create_args args;
> > +    struct virtio_gpu_simple_resource *res;
> >   
> >       VIRTIO_GPU_FILL_CMD(c2d);
> >       trace_virtio_gpu_cmd_res_create_2d(c2d.resource_id, c2d.format,
> > @@ -53,6 +54,14 @@ static void virgl_cmd_create_resource_2d(VirtIOGPU *g,
> >       args.nr_samples = 0;
> >       args.flags = VIRTIO_GPU_RESOURCE_FLAG_Y_0_TOP;
> >       virgl_renderer_resource_create(&args, NULL, 0);
> > +
> > +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> > +    if (!res) {
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> > +        return;
> 
> virglrenderer thinks the resource is alive in such a situation.

Yes, so we can move the resource allocation in front of below virglrenderer
resource creation.

virgl_renderer_resource_create(&args, NULL, 0);

> 
> > +    }
> > +    res->resource_id = c2d.resource_id;
> > +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> >   }
> >   
> >   static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
> > @@ -60,6 +69,7 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
> >   {
> >       struct virtio_gpu_resource_create_3d c3d;
> >       struct virgl_renderer_resource_create_args args;
> > +    struct virtio_gpu_simple_resource *res;
> >   
> >       VIRTIO_GPU_FILL_CMD(c3d);
> >       trace_virtio_gpu_cmd_res_create_3d(c3d.resource_id, c3d.format,
> > @@ -77,6 +87,14 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
> >       args.nr_samples = c3d.nr_samples;
> >       args.flags = c3d.flags;
> >       virgl_renderer_resource_create(&args, NULL, 0);
> > +
> > +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> > +    if (!res) {
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> > +        return;
> > +    }
> > +    res->resource_id = c3d.resource_id;
> > +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> >   }
> >   
> >   static void virgl_resource_destroy(VirtIOGPU *g,
> > @@ -682,6 +700,9 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
> >           /* TODO add security */
> >           virgl_cmd_ctx_detach_resource(g, cmd);
> >           break;
> > +    case VIRTIO_GPU_CMD_RESOURCE_ASSIGN_UUID:
> > +        virtio_gpu_resource_assign_uuid(g, cmd);
> > +        break;
> >       case VIRTIO_GPU_CMD_GET_CAPSET_INFO:
> >           virgl_cmd_get_capset_info(g, cmd);
> >           break;
> > diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> > index cc4c1f81bb..770e4747e3 100644
> > --- a/hw/display/virtio-gpu.c
> > +++ b/hw/display/virtio-gpu.c
> > @@ -966,6 +966,37 @@ virtio_gpu_resource_detach_backing(VirtIOGPU *g,
> >       virtio_gpu_cleanup_mapping(g, res);
> >   }
> >   
> > +void virtio_gpu_resource_assign_uuid(VirtIOGPU *g,
> > +                                     struct virtio_gpu_ctrl_command *cmd)
> > +{
> > +    struct virtio_gpu_simple_resource *res;
> > +    struct virtio_gpu_resource_assign_uuid assign;
> > +    struct virtio_gpu_resp_resource_uuid resp;
> > +    QemuUUID *uuid = NULL;
> 
> This initialization is unnecessary.

Yes, will remove it.

> 
> > +
> > +    VIRTIO_GPU_FILL_CMD(assign);
> > +    virtio_gpu_bswap_32(&assign, sizeof(assign));
> > +    trace_virtio_gpu_cmd_res_assign_uuid(assign.resource_id);
> > +
> > +    res = virtio_gpu_find_check_resource(g, assign.resource_id, false, __func__, &cmd->error);
> > +    if (!res) {
> > +        return;
> > +    }
> > +
> > +    memset(&resp, 0, sizeof(resp));
> > +    resp.hdr.type = VIRTIO_GPU_RESP_OK_RESOURCE_UUID;
> > +
> > +    uuid = g_hash_table_lookup(g->resource_uuids, GUINT_TO_POINTER(assign.resource_id));
> > +    if (!uuid) {
> > +        uuid = g_new(QemuUUID, 1);
> > +        qemu_uuid_generate(uuid);
> > +        g_hash_table_insert(g->resource_uuids, GUINT_TO_POINTER(assign.resource_id), uuid);
> > +    }
> > +
> > +    memcpy(resp.uuid, uuid, sizeof(QemuUUID));
> > +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
> > +}
> > +
> >   void virtio_gpu_simple_process_cmd(VirtIOGPU *g,
> >                                      struct virtio_gpu_ctrl_command *cmd)
> >   {
> > @@ -1014,6 +1045,9 @@ void virtio_gpu_simple_process_cmd(VirtIOGPU *g,
> >       case VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING:
> >           virtio_gpu_resource_detach_backing(g, cmd);
> >           break;
> > +    case VIRTIO_GPU_CMD_RESOURCE_ASSIGN_UUID:
> > +        virtio_gpu_resource_assign_uuid(g, cmd);
> > +        break;
> >       default:
> >           cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> >           break;
> > @@ -1393,12 +1427,15 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp)
> >       QTAILQ_INIT(&g->reslist);
> >       QTAILQ_INIT(&g->cmdq);
> >       QTAILQ_INIT(&g->fenceq);
> > +
> > +    g->resource_uuids = g_hash_table_new_full(NULL, NULL, NULL, g_free);
> >   }
> >   
> >   static void virtio_gpu_device_unrealize(DeviceState *qdev)
> >   {
> >       VirtIOGPU *g = VIRTIO_GPU(qdev);
> >   
> > +    g_hash_table_destroy(g->resource_uuids);
> >       g_clear_pointer(&g->ctrl_bh, qemu_bh_delete);
> >       g_clear_pointer(&g->cursor_bh, qemu_bh_delete);
> >       g_clear_pointer(&g->reset_bh, qemu_bh_delete);
> > @@ -1452,6 +1489,10 @@ void virtio_gpu_reset(VirtIODevice *vdev)
> >           g_free(cmd);
> >       }
> >   
> > +    if (g->resource_uuids) {
> 
> Isn't g->resource_uuids always non-NULL?

Yes, right. The if check should be superfluous. Will remove it.

Thanks,
Ray

> 
> > +        g_hash_table_remove_all(g->resource_uuids);
> > +    }
> > +
> >       virtio_gpu_base_reset(VIRTIO_GPU_BASE(vdev));
> >   }
> >   
> > diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h
> > index b9adc28071..aa94b1b697 100644
> > --- a/include/hw/virtio/virtio-gpu.h
> > +++ b/include/hw/virtio/virtio-gpu.h
> > @@ -208,6 +208,8 @@ struct VirtIOGPU {
> >           QTAILQ_HEAD(, VGPUDMABuf) bufs;
> >           VGPUDMABuf *primary[VIRTIO_GPU_MAX_SCANOUTS];
> >       } dmabuf;
> > +
> > +    GHashTable *resource_uuids;
> >   };
> >   
> >   struct VirtIOGPUClass {
> > @@ -285,6 +287,8 @@ void virtio_gpu_cleanup_mapping_iov(VirtIOGPU *g,
> >                                       struct iovec *iov, uint32_t count);
> >   void virtio_gpu_cleanup_mapping(VirtIOGPU *g,
> >                                   struct virtio_gpu_simple_resource *res);
> > +void virtio_gpu_resource_assign_uuid(VirtIOGPU *g,
> > +                                     struct virtio_gpu_ctrl_command *cmd);
> >   void virtio_gpu_process_cmdq(VirtIOGPU *g);
> >   void virtio_gpu_device_realize(DeviceState *qdev, Error **errp);
> >   void virtio_gpu_reset(VirtIODevice *vdev);


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 09:30:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 09:30:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598484.933311 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeuIU-0006ji-8G; Sat, 09 Sep 2023 09:30:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598484.933311; Sat, 09 Sep 2023 09:30:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qeuIU-0006jb-5c; Sat, 09 Sep 2023 09:30:34 +0000
Received: by outflank-mailman (input) for mailman id 598484;
 Sat, 09 Sep 2023 09:30:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JYTu=EZ=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qeuIT-0006jV-02
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 09:30:33 +0000
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
 (mail-sn1nam02on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7ea9::61b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 84aeda14-4ef3-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 11:30:31 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by MW4PR12MB7166.namprd12.prod.outlook.com (2603:10b6:303:224::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Sat, 9 Sep
 2023 09:30:24 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40%4]) with mapi id 15.20.6768.029; Sat, 9 Sep 2023
 09:30:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 84aeda14-4ef3-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MArb8+60waLeq7ehgCGUYDN05pw6PDkRJbXlifj7EwHMgB9AyQZug9/28n/aNXOOilBjSvLIDFHRoKZJ7WXSiAgrEnqRKAEHGGH8WFzTGLGjUAixl6C1RcptlO6+n6My2d6+2fAPYCPGYPR3g/rPXuA1yqu+OB+ps7RTOnScDvChKvS5obm1MNXzCYvrA05cUVev30ryIFZCBpISgHauTDxIXQm+EDRdeS4+iQSfnVjxqdhfWPM7W5SbEIQnPhm7tNzrMObBjWcVM1TVPYuLehMya6wZeTFgB65J0Wj6wk72VxHZ2aol1GAzTkEeL37AYEILicqCuXkpmRLZdfD2XQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zf56A8xo2EV8tGG4DRZO1FfjzNPRkQQhtB+dN1WhCpU=;
 b=Stq2iCeGtfSOo3lOjx6RXzwkrHw0uyjPn/yUBuz40ffjnCzX2/grsvXnkwfliffcFnQ1+HsskJkkU+4ms4a3oWUGXnF238AOSASccguAayKPP+KeQliw6xuFQ0vrA34iLdQN2qU6H/LridhwmAgQNXwFwtWU/YhIWcMBg3SXWPwe6NVm74jlI0tkwVHi7gd50zdJM+kg10DNnpM4opa+xH0LbKPKZZCmTqs4nt7yuEgvAN6pH3gkk9wO0ixy77654NCCkyo1CQ50gpVHtGd/eSG8UA7JCuk4QA6LYa/5ZR64waodRYOG9+bixnjyyx1cSDlKOthrGSNMx9caGeZZ+Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zf56A8xo2EV8tGG4DRZO1FfjzNPRkQQhtB+dN1WhCpU=;
 b=jkYxPXuT7NIDrZ0OcZXnbLP7hei4GFB0zXRMEE6y2Yi92qqumGvKjB4T4oeCQhBNOjY/TT3VTahu41yjyAZ6qWpT6aUzkkKTvFG7fY0u4jgwbTmHhw4IovTrxjFSFdr9jE08f7hICcLbHVmJoaBmqOEErXx/rv4cuVxM++/+mis=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Sat, 9 Sep 2023 17:29:56 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
Subject: Re: [QEMU PATCH v4 11/13] virtio-gpu: Support Venus capset
Message-ID: <ZPw7FIMmykdYtVeM@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-12-ray.huang@amd.com>
 <fe36e4e1-1198-4da4-b6ee-a6a00a44298a@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <fe36e4e1-1198-4da4-b6ee-a6a00a44298a@daynix.com>
X-ClientProxiedBy: SI2PR02CA0047.apcprd02.prod.outlook.com
 (2603:1096:4:196::14) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|MW4PR12MB7166:EE_
X-MS-Office365-Filtering-Correlation-Id: a9ed9647-93cf-48ee-ff6a-08dbb11764ea
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KLzcOGZDYf3uhjOK2KKYQ2/VkWi1r2z1uO0ig2nTVNSWajPBKe78X3l2jg7OA5kUJzB2PiikkG7fRrCY4p5RIjJFDCkrVzGN2DNDibdovUf87HMuZMXkTsXeOV2TgeZWsj7+XGrLVOlKbUIyVR4M2lZAXHfT342mEroZTFh/VAJ4A5oN7RkROuQXFCaIlH/nDwf7j5C4MlYmBRAvjEl0QKLCufL/DVbYHM4a6ztp5mOiUtndKFVUxcpsw+cab966QfkqqGV3MUJDa3nFYz+3BdP1piHYHDzFc3wd/xMgAUi2TTt+F4xZE8b+JW8QcT1Gs7mHZ61Yj55PzW5YdYs3ET16y/YKyF4HSlQYZvw9BsKrAl5xKdu8Sh8Yv2/89nZW4QEEZQVzUjK2nJ9Mn4zxUlazcaO3WLn+gR4O6kQGwQxMe5VBY+DUhdAZ+PCDz7pZEUDuxh9+X6SEdy6cS70xSRBoe4thBZrO6LgdbcwtvN31L/mWwgpGGmRb4+7rJ2DyytG2szQo740LxKFE0mF5CsOx7/aUpj9so6upDCNzYSl+X4GD2wozNUWUhQxUzaXQ
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(39860400002)(366004)(346002)(396003)(186009)(451199024)(1800799009)(6486002)(6666004)(6512007)(6506007)(53546011)(478600001)(83380400001)(2616005)(26005)(2906002)(7416002)(316002)(54906003)(66476007)(66556008)(6916009)(66946007)(5660300002)(8936002)(8676002)(41300700001)(4326008)(38100700002)(36756003)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?FYjX9yOHciVW4zcgZeR/1W4GC4h7Qb9C2OpuZl8OVObb4kDbvfpuataHeHk0?=
 =?us-ascii?Q?LsqjutXDASqHNn6qOTMsxyZ2l2a+QrmBsNHVN5o9zUZkWzkEWFyPSOPvc8WT?=
 =?us-ascii?Q?u0B/deGNZ0wuklw9NLrw0b/6LerwuZHPKFVatGVqb8NaXd2ux+OfDlODVtZL?=
 =?us-ascii?Q?hkoAb4Rm/HEbCK7TbGYJGnO86LACGpIDv6Xhxy4IAKXUE0YJKFNOBiy7pJp9?=
 =?us-ascii?Q?5IvPiFi3jbmzJg2s7vOP+yXpEOOz8JvVsyCLKMwt+djloi8DpnQ6XzFcdzNH?=
 =?us-ascii?Q?T9jq03uqlr2HCEA4cOoWTLtGwVUFkA5Kgqwm1c5deuThgg000foXiBgYW5fL?=
 =?us-ascii?Q?JPgyklFLgxfvaCX/CEwe2kLcv0A7Ae420fMvax5rfZp/EegE8XUxlYnpYeY6?=
 =?us-ascii?Q?LNtwLEPk2igPAarp77UtFs0s6AU1msbDjG5PGOf3Gvc6oMd0bJ2GlaQnCE+i?=
 =?us-ascii?Q?tKAvbepBZzi8Vr2pBMHM+npva6us/3jQZljhbxnzhqZjrB+aApEV8jMo2V5d?=
 =?us-ascii?Q?mLqmdfoysrTcx0iioTmhKvk6JwUstT54BuZ0smHEYeH5jaLeAE6zWnoVWFB8?=
 =?us-ascii?Q?tqRCqXo+jqZK6yDMghhpDmVVeV4HOKzvRTiL5cc1cH0eKJ9PZu74qwy0wuqF?=
 =?us-ascii?Q?pLEI0V3pD4Ici5CneSvtJ3/CW1TbKIbhJVXg6TJP9HxL/FmfU5RIRTe+pRgy?=
 =?us-ascii?Q?0E1v+SEti0vGUWGIMsrHDbU6jVLDmDtYSLxkNOuuFoI2XV++eW3Yljux5FNB?=
 =?us-ascii?Q?f9lGpU40bCp55UsO7qzL3wMisr29FSZCAcSrgQbtfQeXorZhLAQD4s5k/BOF?=
 =?us-ascii?Q?9UvaXuGdcQqtltosKWEPsyDgJd7m3EH0babJfMF9nPTI3NYaUEoRFUs3zSy0?=
 =?us-ascii?Q?y1WfWRxNSMm86gqJ5r13jN0KEcahmNpX75iyjYRLnt6hA76WRCUN3XqVDsvd?=
 =?us-ascii?Q?vVPCVdzhnVwU/GqMSQv5jGindfiFwq0yeBwL62HeuL+awIAbAKv5Svpioq//?=
 =?us-ascii?Q?5jryWvV96GM6WSNLrINZsSr3ccalwg/rCxp/EpPtyOcfsAuQ/LXmL5gjYRPs?=
 =?us-ascii?Q?58u6xI7+ZEElErQqCnakSXO1duLFthXhTTsYZRaul0I9uQNylMKTP3D0ghph?=
 =?us-ascii?Q?gLx96jibjDR7IrzEOhE2d7HeuVhbBPrLlipALIkH9skEqmH7yXeqbJwY+2Ra?=
 =?us-ascii?Q?AqUnaD7UnxllA/+uv1MyGEJlnoboV9d3fFhrusMy8MnleFkxxBC+EU+1wegl?=
 =?us-ascii?Q?Mtb8GASKH72W1xpDlonR1ZdRVXA/4Z77njuYkKRGu+EHmTLbRDO59K6B0vAG?=
 =?us-ascii?Q?qicLrpeAXWnAJG7AbUXAg+RMhC3fzTvTr5uVKwTafn8tQxYEb8Grx32VWwi8?=
 =?us-ascii?Q?vQXc4b15jN2F0PeheEinWwU4nuVbnyAE4+wN6u84ja9cjiOT9p5Fita2ae0Y?=
 =?us-ascii?Q?R43qCWwBCmoSVdBeURffaO5ZZl3w0WceHZvgFUq107MinbX2kTjKS75TONtF?=
 =?us-ascii?Q?pOeYVQD2mya4cboxTDaW4s1VJTkZcRxSYNZbc3DZN4KVLkMoVCYrfNQNgxvW?=
 =?us-ascii?Q?20+1Hd7s+Zdwutuko/4EceM0e7O3QlXwbuc1GZnU?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a9ed9647-93cf-48ee-ff6a-08dbb11764ea
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Sep 2023 09:30:24.0142
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: D3fySWlZ2q1XG7uCIkYgG0aAdTMQDr8rYLjf4wI6C+T6GFFr5YZRR9IwNxJlhEkwpjalvhJDabwc55OavRRs+g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB7166

On Thu, Aug 31, 2023 at 06:43:17PM +0800, Akihiko Odaki wrote:
> On 2023/08/31 18:32, Huang Rui wrote:
> > From: Antonio Caggiano <antonio.caggiano@collabora.com>
> > 
> > Add support for the Venus capset, which enables Vulkan support through
> > the Venus Vulkan driver for virtio-gpu.
> > 
> > Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> >   hw/display/virtio-gpu-virgl.c               | 21 +++++++++++++++++----
> >   include/standard-headers/linux/virtio_gpu.h |  2 ++
> >   2 files changed, 19 insertions(+), 4 deletions(-)
> > 
> > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> > index 1a996a08fc..83cd8c8fd0 100644
> > --- a/hw/display/virtio-gpu-virgl.c
> > +++ b/hw/display/virtio-gpu-virgl.c
> > @@ -437,6 +437,11 @@ static void virgl_cmd_get_capset_info(VirtIOGPU *g,
> >           virgl_renderer_get_cap_set(resp.capset_id,
> >                                      &resp.capset_max_version,
> >                                      &resp.capset_max_size);
> > +    } else if (info.capset_index == 2) {
> > +        resp.capset_id = VIRTIO_GPU_CAPSET_VENUS;
> > +        virgl_renderer_get_cap_set(resp.capset_id,
> > +                                   &resp.capset_max_version,
> > +                                   &resp.capset_max_size);
> >       } else {
> >           resp.capset_max_version = 0;
> >           resp.capset_max_size = 0;
> > @@ -901,10 +906,18 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
> >   
> >   int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g)
> >   {
> > -    uint32_t capset2_max_ver, capset2_max_size;
> > +    uint32_t capset2_max_ver, capset2_max_size, num_capsets;
> > +    num_capsets = 1;
> > +
> >       virgl_renderer_get_cap_set(VIRTIO_GPU_CAPSET_VIRGL2,
> > -                              &capset2_max_ver,
> > -                              &capset2_max_size);
> > +                               &capset2_max_ver,
> > +                               &capset2_max_size);
> > +    num_capsets += capset2_max_ver ? 1 : 0;
> > +
> > +    virgl_renderer_get_cap_set(VIRTIO_GPU_CAPSET_VENUS,
> > +                               &capset2_max_ver,
> > +                               &capset2_max_size);
> > +    num_capsets += capset2_max_size ? 1 : 0;
> >   
> > -    return capset2_max_ver ? 2 : 1;
> > +    return num_capsets;
> >   }
> > diff --git a/include/standard-headers/linux/virtio_gpu.h b/include/standard-headers/linux/virtio_gpu.h
> > index 2da48d3d4c..2db643ed8f 100644
> > --- a/include/standard-headers/linux/virtio_gpu.h
> > +++ b/include/standard-headers/linux/virtio_gpu.h
> > @@ -309,6 +309,8 @@ struct virtio_gpu_cmd_submit {
> >   
> >   #define VIRTIO_GPU_CAPSET_VIRGL 1
> >   #define VIRTIO_GPU_CAPSET_VIRGL2 2
> > +/* 3 is reserved for gfxstream */
> > +#define VIRTIO_GPU_CAPSET_VENUS 4
> 
> This file is synced with scripts/update-linux-headers.sh and should not 
> be modified.

Should I add marco in kernel include/uapi/linux/virtio_gpu.h?

They are used at VIRGL_RENDERER_UNSTABLE_APIS in virglrender.

enum virgl_renderer_capset {
   VIRGL_RENDERER_CAPSET_VIRGL                   = 1,
   VIRGL_RENDERER_CAPSET_VIRGL2                  = 2,
   /* 3 is reserved for gfxstream */
   VIRGL_RENDERER_CAPSET_VENUS                   = 4,
   /* 5 is reserved for cross-domain */
   VIRGL_RENDERER_CAPSET_DRM                     = 6,
};

Thanks,
Ray

> 
> >   
> >   /* VIRTIO_GPU_CMD_GET_CAPSET_INFO */
> >   struct virtio_gpu_get_capset_info {


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 10:53:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 10:53:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598500.933351 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qevaN-0002Ul-3u; Sat, 09 Sep 2023 10:53:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598500.933351; Sat, 09 Sep 2023 10:53:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qevaN-0002Ue-0e; Sat, 09 Sep 2023 10:53:07 +0000
Received: by outflank-mailman (input) for mailman id 598500;
 Sat, 09 Sep 2023 10:53:06 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JYTu=EZ=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qevaL-0002UY-QB
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 10:53:05 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0c659c7d-4eff-11ee-8783-cb3800f73035;
 Sat, 09 Sep 2023 12:53:03 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by IA0PR12MB7776.namprd12.prod.outlook.com (2603:10b6:208:430::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Sat, 9 Sep
 2023 10:52:58 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40%4]) with mapi id 15.20.6768.029; Sat, 9 Sep 2023
 10:52:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0c659c7d-4eff-11ee-8783-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BjBwOdT5jO/+w0Q2dZ6xYkBfWL8J5peGrxmd1r7Sd6FvkFJztYQFF5m2Pp8o9Ha3vybNI8cNu8AP7O6gEQkmwslEdpHs/tZ/iyznFwe3s3ok4NtQb+kkZqgb2al9jWjOAN0iVKav3Erk7MklSv5oaaGB1XQn1eSBGCSnVJvJadITsrROH1GeLuKOHbF+zgMxwa9kJpzdr6veuDLLQClDVVwtRYkLMiRn/KMwwE7gSH+CYqnTZawI1HABk8HWJjWGvGWaYARGxkEEPTfnDArGECU1EDwdEfTeBpT4wOHL8aCHK35Kqik0IwqZPhyoEAbCnRG1WoUtXGDJEZp9ySmV6Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Wbvq17hlK8xWNP92Lytsx2HHCBc+CPpLZ1Qmhpxj/N4=;
 b=YQSmGfAtAvbUv5BIf3WSu/6IQZS+yuhWnRLq0Q6z1ZjNdrlLhaAOYdiHU0B6Kr9scJAtKlGTZtkTBQKrwCT32nO2xfVqzJk6jcZ9TW+RtspgixMrJT4LljN2PPbxz2LwcrIhHm0PNcnPjXw2XdO5k4wFUGInTSEXek7mOVDrdqrCR8N/tFhbh5lpohTkbPxLjvX2yudAy+xAObFjQjAocFE0csAaErDoUrjpvlVXOaMg5V0OYZDQA9dElLiQwm4Alf1MSQkbFT0lANjLSezEJiQZjDM3eZu8ywnG71D+FgIYhHIujADNbODC1edVFmpG5BEXJeModyZ9Qz8gntZ0TQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Wbvq17hlK8xWNP92Lytsx2HHCBc+CPpLZ1Qmhpxj/N4=;
 b=iylX7SXOAWZ+LG4HSXPtut0FG/pD5uOo0O+8/p93vdk+bDyyRntKw2Y6ak1XD2U6fVqBnL6zSH77bPTWd89l53+SI6nDxKrqZq8ra5emHo2mXiL9Mblu8+re920sFUu4cxvQCJRZ7ZE7GcDYYIdEDS4V7UypdDvJfkC//4ek0BU=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Sat, 9 Sep 2023 18:52:27 +0800
From: Huang Rui <ray.huang@amd.com>
To: Antonio Caggiano <quic_acaggian@quicinc.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Akihiko Odaki <akihiko.odaki@daynix.com>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
Subject: Re: [QEMU PATCH v4 12/13] virtio-gpu: Initialize Venus
Message-ID: <ZPxOazRKpcMXcUDw@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-13-ray.huang@amd.com>
 <ca8bcf9a-2886-aed0-5229-4787808bd39c@quicinc.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <ca8bcf9a-2886-aed0-5229-4787808bd39c@quicinc.com>
X-ClientProxiedBy: SI2PR01CA0005.apcprd01.prod.exchangelabs.com
 (2603:1096:4:191::23) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|IA0PR12MB7776:EE_
X-MS-Office365-Filtering-Correlation-Id: 6bb3e6ba-1e74-4e6a-7b12-08dbb122ed4f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	noAdySwIQTUvNKSPPYgvD/CBoLQHpmB9LAqFgan2rMtLskJJMPO8feXutk5Z6dV4U9MGmwaROamuxQx/hKLw8rCJ2S2PBeBj7HUHrpTJzJt7YsQzJNl78iFFHPqKaeq6EgI4c6YRE/qTdIx5yb9q+fVXQ6BDUmtUcDrgSy/bsyFIptmjTvwuqSLWSQb26kanVPRqLboOv5BmFFeIEztsBTFQ1QurAceWkMzl0VkC5H6VgIDRAtJexxDGjWXopQ4NpQl09QdJaYpbU5szoLNpHFR0+133jWk5SshDTaMg85t3YVRqEog3O60MH7che+uRYwNUZzrXBMSaiPUGO1b0/wA0FYNv6BcZYrec4225RBY45ZZFzUPyIzjuhrlNtGebxG2+UFjSkjBp1zkApOw5a1qQTvu9VX7oABGI0R5qZWQfoktafVu2c9aMubYLqbiLIAr1sxicyKim7NsnSJZ+OOcPtbOX7Zg4t3TUqR4fTsfg39IUWHH2GmMccyA7SEad64+12eC8km+x5FAA1qL4cRAKobunPyA2t08Y9JvXige9qYS4cMQIqdLtMgCV2DP7tw2ZxXEgQiPkbqAxdqCZOA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(376002)(366004)(346002)(39860400002)(1800799009)(186009)(451199024)(53546011)(6666004)(6486002)(6506007)(36756003)(86362001)(38100700002)(2616005)(2906002)(966005)(478600001)(6512007)(83380400001)(41300700001)(8936002)(8676002)(5660300002)(316002)(4326008)(26005)(66476007)(7416002)(6916009)(54906003)(66946007)(66556008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?l0TLh186v1eGHYo7x2vi4egipmwp+Pk+fSWsHrkcYk0cfx/aYUrY3CpLzj8a?=
 =?us-ascii?Q?COzV+WXDqJW+BK0fucVJcNOTzSveaGXnCJROoY9L4ZNeDIa1R/dJR3Go0rUW?=
 =?us-ascii?Q?JJ6S/msw0PoQTERX3YmIB0uOirn+0srds/RWYkHq/BuU5HiEqWwB1gnZdHNs?=
 =?us-ascii?Q?YZtFE6ff6tsJUiAhcXsSTszliaIxvyaAlGXkXegLNJVljWoezQxV8pDVBcGs?=
 =?us-ascii?Q?4047y9AKw4Tsq25vJ3ILzdFQocUl9o8A+tGNV1l68j2+MWZQdLazwyQtFi4T?=
 =?us-ascii?Q?pIBgWUSuMqf5iGZtTMmcopb1XwgcbfUHfklA8MFYFefwWoQCj9QLxkV+MWDB?=
 =?us-ascii?Q?SIzaceoeFKxwNWn/kLzqRdpdk7GTH3MtajskMKuYgVSnHTged6xvjUJwPImA?=
 =?us-ascii?Q?KBHaJpV5PkphsTwbo6C/Xr2PjBMxajLU6EZu586CxabJ7bhX/TdV48wh7r4b?=
 =?us-ascii?Q?gm8Be/ct2kH/rRUuADlnBxBq2rUODdoheaJgdcbSJ8sf5k7Ek1S9nJ75HVf8?=
 =?us-ascii?Q?fktH2qg8rTC/7wJkFqahyImyQIpA4gYf5O8XSZxrpjy0v28ueGPuf8QXx7+K?=
 =?us-ascii?Q?IseTblbAKebUB/ptLoUwg4RnMjUDzw+F2FPSiW+fquzSwsWpGIs2gHfbrmjk?=
 =?us-ascii?Q?rZ8Qi/JlMVHGQYDBSz+l0fnDEya53tsQOk5eUQ6GzX2t/Kfn6qwmVffRfbnb?=
 =?us-ascii?Q?LEE35iFCxo4OndJnDa2s9AhmGgpxW89o8sRyw+KihjZ72pSuTZkYvBPuovkp?=
 =?us-ascii?Q?1lgQbQNk6Ed5SP9G4wdYCjv/F1bQJOlZjiPs80btVuVesCReAOnbwiZ+rEA0?=
 =?us-ascii?Q?qpMxhiQ5vz/4AmfW9z0KGgfqzaqkxJp3cWaiPD8GEenaoJFeC2I9Gwx+W+0b?=
 =?us-ascii?Q?DQytUN97yYeFIyd1OjBBsHNLececwt8GJzm0B7F6+o9lTJ59e9FXyZjpxZF4?=
 =?us-ascii?Q?HtXDJ/HeevR7J4o86Bma9vzO9PtVJ1cZIFPnK8zffEd6CciXQrzm4hyWqBIe?=
 =?us-ascii?Q?euBn5pA5Qz7nMClimsKFGbaLkIEf3Jz+Utf+PRFcACEgTQzBnCxJfGxs7tJ6?=
 =?us-ascii?Q?ee/+3RVKnvhH0vyvsbNH3/YjfA9gvbfSXb9JAJnR5r0I8C93e16b0GgzjkeL?=
 =?us-ascii?Q?n/oQ7OFxATeVdTWfkea/sV6SkmPHZXPe02qky3hMYJIrArayAwm5iu9CAojG?=
 =?us-ascii?Q?PtNUTW0znfhGG9D8lbnwmSGrn1Hu1M2XBhhPEbA2U/Un6GbS8C7jTpoaipxR?=
 =?us-ascii?Q?w6WTDXskpWR6LZ8xXzoJbXAMxp2L+kyvUsdd7o1Sz1e+HFsxbZ18UrAZcj5R?=
 =?us-ascii?Q?szht34vqkFDuyIaTS41vbWyv4wB3bNz+I8r5HVB0DMWaZzBaMLiCQhiM4Dgl?=
 =?us-ascii?Q?ErImtxp6z1wgvLeJ1WcOBMZJf61oY7z0IGG1DDQBLVYuPqKea87szSvrxeyQ?=
 =?us-ascii?Q?oxZrBBnt+lHMEa9y0S1JLgbOmUl+6ff62aE9nNSD+SHf1aApp2VE2zJpFc25?=
 =?us-ascii?Q?+qppC2/9RO6Q7mlcAmflDGZKIhYN8rwxS2yx1uCakCr3nNcsBkPnfCZvDOSa?=
 =?us-ascii?Q?UvLvyJ22e9xxsvkSwLOrO0txHOwvYwtpTUN+6sLt?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6bb3e6ba-1e74-4e6a-7b12-08dbb122ed4f
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Sep 2023 10:52:57.4167
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7DsPlIb3U2L4TcfuaHDvm0nsrETfKs9rSM0sy6FSf3wZQsPqwdkhA3c5M3jgAJpJua3PKSqa6Ok5x+cOsFhCfA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB7776

On Thu, Aug 31, 2023 at 06:40:11PM +0800, Antonio Caggiano wrote:
> Hi Huang,
> 
> Thank you for pushing this forward!
> 

My pleasure! :-)

> On 31/08/2023 11:32, Huang Rui wrote:
> > From: Antonio Caggiano <antonio.caggiano@collabora.com>
> > 
> > Request Venus when initializing VirGL.
> > 
> > Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> > 
> > v1->v2:
> >      - Rebase to latest version
> > 
> >   hw/display/virtio-gpu-virgl.c | 2 ++
> >   1 file changed, 2 insertions(+)
> > 
> > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> > index 83cd8c8fd0..c5a62665bd 100644
> > --- a/hw/display/virtio-gpu-virgl.c
> > +++ b/hw/display/virtio-gpu-virgl.c
> > @@ -887,6 +887,8 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
> >       }
> >   #endif
> >   
> > +    flags |= VIRGL_RENDERER_VENUS;
> > +
> 
> VIRGL_RENDERER_VENUS is a symbol only available from virglrenderer 0.9.1 
> [0] and only if VIRGL_RENDERER_UNSTABLE_APIS is defined.
> 
> Luckily for us, VIRGL_RENDERER_UNSTABLE_APIS is defined unconditionally 
> from virglrenderer 0.9.0 [1], so we could check for that in qemu/meson.build
> 
> e.g.
> 
> 
>    if virgl.version().version_compare('>= 0.9.0')
>      message('Enabling virglrenderer unstable APIs')
>      virgl = declare_dependency(compile_args: 
> '-DVIRGL_RENDERER_UNSTABLE_APIS',
>                                 dependencies: virgl)
>    endif
> 
> 
> Also, while testing this with various versions of virglrenderer, I 
> realized there are no guarantees for Venus backend to be available in 
> the linked library. Virglrenderer should be built with 
> -Dvenus_experimental=true, and if that is not the case, the following 
> virgl_renderer_init would fail for previous versions of virglrenderer or 
> in case it has not been built with venus support.
> 
> I would suggest another approach for that which tries initializing Venus 
> only if VIRGL_RENDERER_VENUS is actually defined. Then, if it fails 
> cause virglrenderer has not been built with venus support, try again 
> falling back to virgl only.
> 
> e.g.
> 
> #ifdef VIRGL_RENDERER_VENUS
>      ret = virgl_renderer_init(g, VIRGL_RENDERER_VENUS, &virtio_gpu_3d_cbs);
>      if (ret != 0) {
>          warn_report("Failed to initialize virglrenderer with venus: 
> %d", ret);
>          warn_report("Falling back to virgl only");
>          ret = virgl_renderer_init(g, 0, &virtio_gpu_3d_cbs);
>      }
> #else
>      ret = virgl_renderer_init(g, 0, &virtio_gpu_3d_cbs);
> #endif
> 

Thanks a lot to explain so clearly. Yes, it's reasonable for me. I will
modify it in the next version. And agree, we should take care of different
virglrenderer versions.

Thanks,
Ray

> 
> >       ret = virgl_renderer_init(g, flags, &virtio_gpu_3d_cbs);
> >       if (ret != 0) {
> >           error_report("virgl could not be initialized: %d", ret);
> 
> [0] 
> https://gitlab.freedesktop.org/virgl/virglrenderer/-/commit/6c31f85330bb4c5aba8b82eba606971e598c6e25
> [1] 
> https://gitlab.freedesktop.org/virgl/virglrenderer/-/commit/491afdc42a49ec6a1b8d7cbc5c97360229002d41
> 
> Best regards,
> Antonio Caggiano


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 10:54:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 10:54:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598505.933362 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qevbX-00030G-FK; Sat, 09 Sep 2023 10:54:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598505.933362; Sat, 09 Sep 2023 10:54:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qevbX-000309-B0; Sat, 09 Sep 2023 10:54:19 +0000
Received: by outflank-mailman (input) for mailman id 598505;
 Sat, 09 Sep 2023 10:54:18 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JYTu=EZ=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qevbW-0002t1-FM
 for xen-devel@lists.xenproject.org; Sat, 09 Sep 2023 10:54:18 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3797d160-4eff-11ee-9b0d-b553b5be7939;
 Sat, 09 Sep 2023 12:54:16 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by IA0PR12MB7776.namprd12.prod.outlook.com (2603:10b6:208:430::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Sat, 9 Sep
 2023 10:54:12 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::da13:5f6:45:fa40%4]) with mapi id 15.20.6768.029; Sat, 9 Sep 2023
 10:54:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3797d160-4eff-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U/hXx/IohU4NSftnn0tosV+baR5fOQQA349NW+iE8Np3XO/DR5NL4A0qKZs83H+FST/tWl/93Hz+CZtC4Cneo02vEzoUjVFgB1OA6OeQindQLlMHQ1GUVkKTAlu0h9bYt7Ier16rkO+3c2LDqUjMh4hqX867B/luiQTyy4NsY8TtaFUwgVZ1JDRhCzRPWWLa2fdUFtVRAwqO/b3hSml4Ol98bnXl6gNtfl37lMUcLQk+BkIcHV0vfGHekBlJRDNEwWOt6Yp/b2joAvWK1O3RMGUpr5U6x7CElx7DHeQzWttSyfP0FcrlzCWmmJziLg/5wYZM6jGieNIdamDnkbDt3w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vP5VtGMwqKXDYMHajnAU1m4VDmRFinybtUjuat8b4fM=;
 b=Hz7u2EeRpVyzsR8Uwv1C3sqzA0yxHaaSEmWznyVP/pO7n1qv6TwF8EyRO0vA1Vo8+AHrJN/kDasaFrvCZLPbmkJEZiy55pPu5x8rSWRIwDYwzMG7PAoA/HEW7yCdRR4FOzJ2d7oqPU7ogTeiMVWJ9iVJf7sOexySoUHwgyFOYM6lek90hjK3hWJkN16tNXTH5Jby2lDnCB4Lu25rri0aBxCKjikNk60hXzOTdUxvBHmfmPqTNP0qJ4aWbVisL8aGqAquyvpiP1ysUqBJuoosGTilqWf8h9Y8qvNTeXhNHGm28f6cnKPOdJkOdwm7Zkj+APmcJrpcUrRbhAEWjOwDUQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vP5VtGMwqKXDYMHajnAU1m4VDmRFinybtUjuat8b4fM=;
 b=jTPHUL4SVQ6ojQzks79t90uLKhG2Voekp0VbSHucjl49Y2vIRSc07dFLLc1+2FgqdZD5lBrfbQtiBxXZHz1XlKaLqd1haSCB1T0Mmzi0bEkBHkhKjcNFzY/JsMHfxtWMXynNADC5S9ApG5Vn6UZ3bqrgf5HnYncnguEby3/PxHg=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Sat, 9 Sep 2023 18:53:44 +0800
From: Huang Rui <ray.huang@amd.com>
To: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Cc: Antonio Caggiano <quic_acaggian@quicinc.com>,
	Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Akihiko Odaki <akihiko.odaki@daynix.com>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
Subject: Re: [QEMU PATCH v4 12/13] virtio-gpu: Initialize Venus
Message-ID: <ZPxOuIryznYcGmLS@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-13-ray.huang@amd.com>
 <ca8bcf9a-2886-aed0-5229-4787808bd39c@quicinc.com>
 <5462a77f-c66d-af2d-fc07-df9f787558c2@collabora.com>
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <5462a77f-c66d-af2d-fc07-df9f787558c2@collabora.com>
X-ClientProxiedBy: SI2PR02CA0018.apcprd02.prod.outlook.com
 (2603:1096:4:194::18) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|IA0PR12MB7776:EE_
X-MS-Office365-Filtering-Correlation-Id: 3cfe5010-05ff-4ccf-0497-08dbb1231a0c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	l+umJcJZKAhucvHeiBlsbDqcJJWngS3GmwMY/NbUbPGvq5eigKekyLz80B1AIgLDRsnyiuXsJd0x8hwQSAnaG2CAEOmXMGlOWmG4UqwbLP85SLi/OT0VpO7f7ivs3t+TxFV9fMiN8K0WPg3cxKx+OIPp/5ut1ETAau1/x3WQ8iygVY+yjcrdcuNplVrlnHXHbdUV2TPWRbjm3Ro6dEWtsICFvcVsc6YP9tpb1YExE3U/lFLa3mnsJHPGiKLD2A5uZPQh+7ak/UHneDiOMWXagDg/uqVVzkAkesEyCNkcejUKd1Q4nNu15GPP3jJHf12el+0puich6kP1AWwAlpY8rPpYGpacv55FwpcLblvlgwROAA67GPohmQDpOoas1Wpikp0uTvdPNf1fbBpb7W/ecirVUbSp8MoceVqrD0LBBtPKcT5TQBxufqbiULVOydBldJ73UxY0zhh6ha3LwkLFHeUoLMN8rRo2T9fvFNXijQNAjd7i7MtT2dWL0Gn+w2rkIbovpBEOKaFHEpG9RkQXZMh/CtbQQ104W0iHUssPqAMOwUu+XRgtiXBIX8xNrgf3
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(376002)(366004)(346002)(39860400002)(1800799009)(186009)(451199024)(53546011)(6666004)(6486002)(6506007)(36756003)(86362001)(38100700002)(2616005)(2906002)(478600001)(6512007)(83380400001)(41300700001)(8936002)(8676002)(5660300002)(316002)(4326008)(26005)(66476007)(7416002)(6916009)(54906003)(66946007)(66556008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?iso-8859-1?Q?SOXqKdiyU56Eo3UHFGddWxk/moK8z/nHbMDskcBZSCe9PV318iTnKZqt0Q?=
 =?iso-8859-1?Q?3RYewE5InWBWLbuRRBm72DS1Wr7H3ex4Co/8qkIujdYMy0K+4s++aVz502?=
 =?iso-8859-1?Q?/3PF9iPg2HJ8qjZ81aEwqrBObDJp3qIfud2v8ORr1VqT0Jr4diIUkW4q2b?=
 =?iso-8859-1?Q?Njifv8pWaWN7boftMWZzED7gTDE15dAjtDqFZvFIfATrRrA0DaGKXDjwBD?=
 =?iso-8859-1?Q?RFTcMUQ4EI65r63OCpmg06qRBkho1DtaDGS/kdB1hrxttI+DV7LRmFtcCV?=
 =?iso-8859-1?Q?PbJZ1g/EjqPCnlB45x9jwj63aEznGhSUd3p+qB7n3MIUOuqammsxWcG0ZZ?=
 =?iso-8859-1?Q?8/Clpn0Giv24dSIOUVh80OReBGNMDQJiKaxSJ6D8ThzVwB7ekoosRtC9Tm?=
 =?iso-8859-1?Q?RB0095CnJKG+rQa9k4YFgifrpdehZmEBW6qB/gGLFJF6y4ZEfvsUBSa9Hl?=
 =?iso-8859-1?Q?XrMNsMZNSd9qc2VsVoUX6S11N3eNaHS+WSL+cejQd31qDp5JTI8U5BzLQz?=
 =?iso-8859-1?Q?Zo6r1668maE02ZkQbycB6IL6AWt3hgTMP8RkjxVRH5Am2ElnNSGythSGuq?=
 =?iso-8859-1?Q?QIltmJgv2p/pwNpZRQpl7dAtI1rIfrLuAFmJPMCNQzbfxpTLmmh+hRCC6U?=
 =?iso-8859-1?Q?nQTcS2WQUoXcbaJgeFS+gw/Z1RwmovZaRw4q8Vbsk3OvXD+G9p1q0Xw3Oi?=
 =?iso-8859-1?Q?zgIJJbAizWbpQrVYZomxtoyjl7sD2XNF9USofyGvsKxLt4SE1Ae9Bji0vu?=
 =?iso-8859-1?Q?MDytRDeh1kumzWuDRPs0vqkpc7TkrsTuAn0DyeAgQS1ye4c6DTDwcPxGds?=
 =?iso-8859-1?Q?bsmIm+Ov0A/3ooX4bb8dr7+n5adP4V0DcC9bhy3+q+Yc09+1Raw+IMj/gj?=
 =?iso-8859-1?Q?Lhbk0AOj7/QLC08jbjMlQ2hyy3wCEqLOWupEqhV/RyUbE+32fy3XgaRVaZ?=
 =?iso-8859-1?Q?PemyKaQz4dGl/pYVuS8Rb5o/fRtkWWT9zZcGPrXLvgGcJiYkWE6EXAywV5?=
 =?iso-8859-1?Q?rZ4vApEbqPSyjQAEMPjl1tkr0Umma8J6l52gOD6AjO1uTdTtGWZqCmCuuZ?=
 =?iso-8859-1?Q?65ZElLNKurKr5Q8iQy7YFaWe1L2OD3kC9WzRfRaY9PFmKFchNPkIPUR6bq?=
 =?iso-8859-1?Q?Kn0M+IhhK3MZgn9OHWuGntdCp6TYhAxvtrzoI8bSf6aYvalvUhRgHkKdGH?=
 =?iso-8859-1?Q?vmiTDAUnOz+rUqRlT3cjFHV87cgLaEIZaEmxUO8XrZL6BZbTldJr/WSkPA?=
 =?iso-8859-1?Q?WD+wY4GN4AtJ6WaP+Dv9da0VO2Zv+BsEwnHKkfjeKzp32OwD8yVbQ1tlna?=
 =?iso-8859-1?Q?uJNhK+/os9eFpv2+Bnpy6TdSisww53xr1Yr2sDsQ2WgJWEQUdWJ8q9qcrb?=
 =?iso-8859-1?Q?URCa/kkYbJlZNh1RQAfkFOL+qsqnukUljmDgvD9iir14gck2aT+HUM4UXE?=
 =?iso-8859-1?Q?1gkvyDK6aaAtnbkiJFi/p4TmemrlDfuAys1gHHrgLeCDsgAOzYL3pojM2k?=
 =?iso-8859-1?Q?pM5JYDiFXunBouMxSp+qzl+Th9alqknqUPV9uS8YqJRiUYn2Owtfz+Yvcm?=
 =?iso-8859-1?Q?p4stumLebWOr5JDgt/1iirq5J5DG+cYskJXwOmb3P1/jIho89V/XbwuLs5?=
 =?iso-8859-1?Q?9Xf+8xXfaGISYrCqYXvsLf+cTz/f97sXMz?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3cfe5010-05ff-4ccf-0497-08dbb1231a0c
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Sep 2023 10:54:12.3484
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7u9BzgK+Ni12sOxVpHQmkBAybcHRE5Qd9ni4WZMzhrGm1tlpPiIRv9JNCweGg9Fr2k4lclmmqBTGPPVNfB9Sbw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB7776

On Thu, Aug 31, 2023 at 11:51:50PM +0800, Dmitry Osipenko wrote:
> On 8/31/23 13:40, Antonio Caggiano wrote:
> > Hi Huang,
> > 
> > Thank you for pushing this forward!
> > 
> > On 31/08/2023 11:32, Huang Rui wrote:
> >> From: Antonio Caggiano <antonio.caggiano@collabora.com>
> >>
> >> Request Venus when initializing VirGL.
> >>
> >> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> >> Signed-off-by: Huang Rui <ray.huang@amd.com>
> >> ---
> >>
> >> v1->v2:
> >>  - Rebase to latest version
> >>
> >>  hw/display/virtio-gpu-virgl.c | 2 ++
> >>  1 file changed, 2 insertions(+)
> >>
> >> diff --git a/hw/display/virtio-gpu-virgl.c
> >> b/hw/display/virtio-gpu-virgl.c
> >> index 83cd8c8fd0..c5a62665bd 100644
> >> --- a/hw/display/virtio-gpu-virgl.c
> >> +++ b/hw/display/virtio-gpu-virgl.c
> >> @@ -887,6 +887,8 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
> >>  }
> >>  #endif
> >>  + flags |= VIRGL_RENDERER_VENUS;
> >> +
> > 
> > VIRGL_RENDERER_VENUS is a symbol only available from virglrenderer 0.9.1
> > [0] and only if VIRGL_RENDERER_UNSTABLE_APIS is defined.
> > 
> > Luckily for us, VIRGL_RENDERER_UNSTABLE_APIS is defined unconditionally
> > from virglrenderer 0.9.0 [1], so we could check for that in
> > qemu/meson.build
> > 
> > e.g.
> > 
> > 
> >  if virgl.version().version_compare('>= 0.9.0')
> >  message('Enabling virglrenderer unstable APIs')
> >  virgl = declare_dependency(compile_args:
> > '-DVIRGL_RENDERER_UNSTABLE_APIS',
> >  dependencies: virgl)
> >  endif
> > 
> > 
> > Also, while testing this with various versions of virglrenderer, I
> > realized there are no guarantees for Venus backend to be available in
> > the linked library. Virglrenderer should be built with
> > -Dvenus_experimental=true, and if that is not the case, the following
> > virgl_renderer_init would fail for previous versions of virglrenderer or
> > in case it has not been built with venus support.
> > 
> > I would suggest another approach for that which tries initializing Venus
> > only if VIRGL_RENDERER_VENUS is actually defined. Then, if it fails
> > cause virglrenderer has not been built with venus support, try again
> > falling back to virgl only.
> 
> All the APIs will be stabilized with the upcoming virglrender 1.0
> release that will happen soon. There is also a venus protocol bump, qemu
> will have to bump virglrenderer's version dependency to 1.0 for venus
> and other new features.
> 

Dmitry, do you know the timeline of virglrender 1.0?

Thanks,
Ray


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 12:43:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 12:43:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598539.933414 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qexJA-0000X6-Oy; Sat, 09 Sep 2023 12:43:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598539.933414; Sat, 09 Sep 2023 12:43:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qexJA-0000Wz-Kk; Sat, 09 Sep 2023 12:43:28 +0000
Received: by outflank-mailman (input) for mailman id 598539;
 Sat, 09 Sep 2023 12:43:27 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qexJ9-0000Wp-CI; Sat, 09 Sep 2023 12:43:27 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qexJ9-0006d5-7I; Sat, 09 Sep 2023 12:43:27 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qexJ8-0001hQ-U0; Sat, 09 Sep 2023 12:43:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qexJ8-0007WA-TV; Sat, 09 Sep 2023 12:43:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Fy0n2JM22JLhr5OWyWpzq8/HRsSJGzKg4D2NRF7Gy6w=; b=zsbQh7QwZHwkYbop5FSNKafd+e
	ZKc5f3rtTLJSzTnM+mG24IuBBls8OzxDVsPgR4wWz2ORGNhHhHDWTn6xnTLgMYS+Bd/qS9WqCKRAR
	Agu6i/UsuS9PTPxiBdE8DvL4pIkglg5XX8hbShM2ZmnZnc4CM+qpVYbol6puZSWsQjYs=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182798-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182798: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=49b2d6a529122f10e17a17f807d8d51154b5ba14
X-Osstest-Versions-That:
    xen=cba6d44a13d5e25334d164e27cb1b1d7674aa05e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 12:43:26 +0000

flight 182798 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182798/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 182735
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182735
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182735
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182735
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182735
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182735
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182735
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail like 182735
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182735
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182735
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182735
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182735
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182735
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  49b2d6a529122f10e17a17f807d8d51154b5ba14
baseline version:
 xen                  cba6d44a13d5e25334d164e27cb1b1d7674aa05e

Last test of basis   182735  2023-09-08 08:06:00 Z    1 days
Testing same since   182798  2023-09-09 01:39:16 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Henry Wang <Henry.Wang@arm.com>
  Julien Grall <jgrall@amazon.com>
  Penny Zheng <penny.zheng@arm.com>
  Wei Chen <wei.chen@arm.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   cba6d44a13..49b2d6a529  49b2d6a529122f10e17a17f807d8d51154b5ba14 -> master


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 13:33:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 13:33:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598556.933455 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qey5C-0006fK-Nb; Sat, 09 Sep 2023 13:33:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598556.933455; Sat, 09 Sep 2023 13:33:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qey5C-0006fD-Kh; Sat, 09 Sep 2023 13:33:06 +0000
Received: by outflank-mailman (input) for mailman id 598556;
 Sat, 09 Sep 2023 13:33:05 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qey5B-0006f2-Fk; Sat, 09 Sep 2023 13:33:05 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qey5B-0007b3-Ce; Sat, 09 Sep 2023 13:33:05 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qey5B-0002tr-3J; Sat, 09 Sep 2023 13:33:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qey5B-0006su-2v; Sat, 09 Sep 2023 13:33:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=CAXxl7NwOSDzmjPBvWHEeHyZoncYf/lrp9+TSjhee0g=; b=I9MZriBtj7lrFuYsrewe6BbEIZ
	Ky9usM/VhHoo/kRNkQgB7MB3n5kIB2UkxoheZOF4ruAH+nst7bEG9vH0DPpR3dnBgam9fUOnmSaEP
	gcvJaQV6v9t3MEfKoJdypJHEEI2QQ5L3HKiWL9zxAxCu4NwTKWylx+hr0CAOZ7D2/gTI=;
To: xen-devel@lists.xenproject.org
Subject: [qemu-mainline bisection] complete build-i386
Message-Id: <E1qey5B-0006su-2v@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 13:33:05 +0000

branch xen-unstable
xenbranch xen-unstable
job build-i386
testid xen-build

Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  61765a07e3d8a4dabbb8323b55f13ee75c80e54a
  Bug not present: aa7354beb1238e68126815e060f7d5ccda48fcb8
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182832/


  commit 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
  Author: Vikram Garhwal <vikram.garhwal@amd.com>
  Date:   Tue Sep 5 18:16:30 2023 -0700
  
      tools/xl: Add new xl command overlay for device tree overlay support
      
      Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
      Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/build-i386.xen-build.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/build-i386.xen-build --summary-out=tmp/182832.bisection-summary --basis-template=182707 --blessings=real,real-bisect,real-retry qemu-mainline build-i386 xen-build
Searching for failure / basis pass:
 182801 fail [host=nobling1] / 182707 [host=pinot1] 182638 [host=fiano0] 182606 [host=nobling0] 182588 [host=nobling0] 182584 [host=albana1] 182570 ok.
Failure / basis pass flights: 182801 / 182570
(tree with no url: minios)
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
Basis pass 0c4d0b6c8a05a6a62c0dca042f8e15e579e6f4af 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 156618d9ea67f2f2e31d9dedd97f2dcccbe6808c 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 8c01f267eff3d6c1ea04273e9885bf6d2fda1c44
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/osstest/ovmf.git#0c4d0b6c8a05a6a62c0dca042f8e15e579e6f4af-b240eab03530f063ef5438497d70a731b19a201e git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 https://gitlab.com/qemu-project/qemu.git#156618d9ea67f2f2e31d9dedd97f2dcccbe6808c-c5ea91da443b458352c1b629b490ee6631775cb4 git://xenbits.xen.org/osstest/seabios.git#7a4003be25eae462f3c3d8aad96b57e\
 34dc0c2b8-7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 git://xenbits.xen.org/xen.git#8c01f267eff3d6c1ea04273e9885bf6d2fda1c44-cba6d44a13d5e25334d164e27cb1b1d7674aa05e
Loaded 25167 nodes in revision graph
Searching for test results:
 182570 pass 0c4d0b6c8a05a6a62c0dca042f8e15e579e6f4af 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 156618d9ea67f2f2e31d9dedd97f2dcccbe6808c 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 8c01f267eff3d6c1ea04273e9885bf6d2fda1c44
 182584 [host=albana1]
 182588 [host=nobling0]
 182606 [host=nobling0]
 182638 [host=fiano0]
 182707 [host=pinot1]
 182723 [host=nobling0]
 182730 [host=nobling0]
 182739 fail irrelevant
 182770 [host=nobling0]
 182796 fail irrelevant
 182802 pass 0c4d0b6c8a05a6a62c0dca042f8e15e579e6f4af 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 156618d9ea67f2f2e31d9dedd97f2dcccbe6808c 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 8c01f267eff3d6c1ea04273e9885bf6d2fda1c44
 182804 fail irrelevant
 182805 pass irrelevant
 182806 pass 4d196352f35ac516b477e568265b4e537b0283d8 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bde438c3ecdb9813038b226c429dd982925d8205 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 d8c3ff585b9fd10200b05aca77139de2789d0517
 182807 pass irrelevant
 182808 pass irrelevant
 182809 pass f008890ae55929f7f17e7d2f8aff929255007d33 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bb5c77c4f8a5ea9cb3f6bcf5ca33bab4d85d1d92 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 3ec9528a8262dd461718881d251fba01d3e662fa
 182811 pass irrelevant
 182812 fail irrelevant
 182801 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182813 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182815 fail b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2f352bc2270fdc896beb2957b5171b03ba3e2d66 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182816 fail 5443c2dc310d2c8eb15fb8eefd5057342e78cd0d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 631c872614aca91eaf947c1748f0f27f99635d92 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182817 pass b81557a00c61cc80ab118828f16ed9ce79455880 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 269e60635a72f8dec4cb210b5b99e9e7f8920f34 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182818 pass 4d196352f35ac516b477e568265b4e537b0283d8 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 06fca745d5ba3be8b693985e6075d6ba2782f145 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 d8c3ff585b9fd10200b05aca77139de2789d0517
 182819 fail 4d196352f35ac516b477e568265b4e537b0283d8 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e38f4e976dd40c985bfe84230a627de9a108c9d3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
 182820 pass dfb941d32a2f38c9177729e39c6a6515abbbad48 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 6657e41cde73597e61c0165da7be7e76f116f342 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 f805cf3e9b87584e16b03b5059b1163fd22bf5a0
 182821 pass dfb941d32a2f38c9177729e39c6a6515abbbad48 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1663ffb9157e3dc17d14741f6cd6c48bfffde9d0 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 f805cf3e9b87584e16b03b5059b1163fd22bf5a0
 182822 pass f008890ae55929f7f17e7d2f8aff929255007d33 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e38f4e976dd40c985bfe84230a627de9a108c9d3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 427b6a571cd275015c201abd5b6a7843452d95a0
 182823 pass f008890ae55929f7f17e7d2f8aff929255007d33 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e38f4e976dd40c985bfe84230a627de9a108c9d3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b8de00ff7a4bbf7a9fd480d6d7db458db3020f6d
 182824 pass f008890ae55929f7f17e7d2f8aff929255007d33 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e38f4e976dd40c985bfe84230a627de9a108c9d3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 f61243530e2a1e10f9414653d37d99df61fd88ad
 182825 fail f008890ae55929f7f17e7d2f8aff929255007d33 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e38f4e976dd40c985bfe84230a627de9a108c9d3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
 182826 pass f008890ae55929f7f17e7d2f8aff929255007d33 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e38f4e976dd40c985bfe84230a627de9a108c9d3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 aa7354beb1238e68126815e060f7d5ccda48fcb8
 182827 fail f008890ae55929f7f17e7d2f8aff929255007d33 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e38f4e976dd40c985bfe84230a627de9a108c9d3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
 182828 pass f008890ae55929f7f17e7d2f8aff929255007d33 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e38f4e976dd40c985bfe84230a627de9a108c9d3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 aa7354beb1238e68126815e060f7d5ccda48fcb8
 182829 fail f008890ae55929f7f17e7d2f8aff929255007d33 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e38f4e976dd40c985bfe84230a627de9a108c9d3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
 182831 pass f008890ae55929f7f17e7d2f8aff929255007d33 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e38f4e976dd40c985bfe84230a627de9a108c9d3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 aa7354beb1238e68126815e060f7d5ccda48fcb8
 182832 fail f008890ae55929f7f17e7d2f8aff929255007d33 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e38f4e976dd40c985bfe84230a627de9a108c9d3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
Searching for interesting versions
 Result found: flight 182570 (pass), for basis pass
 Result found: flight 182801 (fail), for basis failure (at ancestor ~6)
 Repro found: flight 182802 (pass), for basis pass
 Repro found: flight 182813 (fail), for basis failure
 0 revisions at f008890ae55929f7f17e7d2f8aff929255007d33 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e38f4e976dd40c985bfe84230a627de9a108c9d3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 aa7354beb1238e68126815e060f7d5ccda48fcb8
No revisions left to test, checking graph state.
 Result found: flight 182826 (pass), for last pass
 Result found: flight 182827 (fail), for first failure
 Repro found: flight 182828 (pass), for last pass
 Repro found: flight 182829 (fail), for first failure
 Repro found: flight 182831 (pass), for last pass
 Repro found: flight 182832 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  61765a07e3d8a4dabbb8323b55f13ee75c80e54a
  Bug not present: aa7354beb1238e68126815e060f7d5ccda48fcb8
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182832/


  commit 61765a07e3d8a4dabbb8323b55f13ee75c80e54a
  Author: Vikram Garhwal <vikram.garhwal@amd.com>
  Date:   Tue Sep 5 18:16:30 2023 -0700
  
      tools/xl: Add new xl command overlay for device tree overlay support
      
      Signed-off-by: Vikram Garhwal <vikram.garhwal@amd.com>
      Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>

Revision graph left in /home/logs/results/bisect/qemu-mainline/build-i386.xen-build.{dot,ps,png,html,svg}.
----------------------------------------
182832: tolerable ALL FAIL

flight 182832 qemu-mainline real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/182832/

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 build-i386                    6 xen-build               fail baseline untested


jobs:
 build-i386                                                   fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary



From xen-devel-bounces@lists.xenproject.org Sat Sep 09 14:47:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 14:47:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598568.933475 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qezEa-000662-6N; Sat, 09 Sep 2023 14:46:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598568.933475; Sat, 09 Sep 2023 14:46:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qezEa-00065v-1x; Sat, 09 Sep 2023 14:46:52 +0000
Received: by outflank-mailman (input) for mailman id 598568;
 Sat, 09 Sep 2023 14:46:51 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qezEZ-00065l-3o; Sat, 09 Sep 2023 14:46:51 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qezEZ-0000uE-0W; Sat, 09 Sep 2023 14:46:51 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qezEY-0005Rv-OD; Sat, 09 Sep 2023 14:46:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qezEY-0007fL-Ni; Sat, 09 Sep 2023 14:46:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=eVN47QBYx0gHL4tn9lDnMz4lEf7BzCge5Z+7f06L1TA=; b=fsqaN1Xscty8EzW5dfmXCVAXPE
	HD3GddQ88oG5puQ9zfyHMSe3rRvgxXbw12MSSQTrDQRqcun5kJ3f8XDxl7vVSheotIGyrW+FETh2X
	TgSWUgVRGt+EkIpdknbJImQvxrVOwfgPqbSOMBhiE4t3aKjfkaaIDfJliyPvaHKE9A6Q=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182814-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182814: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 14:46:50 +0000

flight 182814 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182814/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    2 days
Failing since        182723  2023-09-07 18:19:05 Z    1 days    7 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    0 days    4 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 15:58:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 15:58:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598578.933490 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qf0Le-00056p-3Z; Sat, 09 Sep 2023 15:58:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598578.933490; Sat, 09 Sep 2023 15:58:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qf0Le-00056i-0I; Sat, 09 Sep 2023 15:58:14 +0000
Received: by outflank-mailman (input) for mailman id 598578;
 Sat, 09 Sep 2023 15:58:13 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qf0Ld-00056Y-Ie; Sat, 09 Sep 2023 15:58:13 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qf0Ld-0002Ma-Dt; Sat, 09 Sep 2023 15:58:13 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qf0Ld-0001M3-4u; Sat, 09 Sep 2023 15:58:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qf0Ld-0000bK-1Z; Sat, 09 Sep 2023 15:58:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=7gVCWcKTJbinpnVi91WwVBsVEBDAvUFR4BzXIclDmSw=; b=67oWB4apOPzfkkrESBo8UnhSBv
	VkB/zDebvm/9041iM/Wb4fzGjpWKDs+pQ/VC3FuREOOHaTz8SI6iTbCMp5JzGJcFhoBLzvQIkAbo0
	CWPTZJ8pl7rqzHHvOp1PxAXhc7I0YiN9p5hof5k1oByJ+dlBuWeL+EJeESD8G/tB+uo4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182803-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 182803: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=16ad37c119c66a8a0bb0dce57ccc7847b7050350
X-Osstest-Versions-That:
    libvirt=67c93cfae9312160de840d309bb3f5c36e5c9e9a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 15:58:13 +0000

flight 182803 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182803/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182728
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182728
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182728
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              16ad37c119c66a8a0bb0dce57ccc7847b7050350
baseline version:
 libvirt              67c93cfae9312160de840d309bb3f5c36e5c9e9a

Last test of basis   182728  2023-09-08 04:18:48 Z    1 days
Testing same since   182803  2023-09-09 04:18:51 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michal Privoznik <mprivozn@redhat.com>
  김인수 <simmon@nplob.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   67c93cfae9..16ad37c119  16ad37c119c66a8a0bb0dce57ccc7847b7050350 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 20:52:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 20:52:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598596.933525 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qf4wN-0001cU-4s; Sat, 09 Sep 2023 20:52:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598596.933525; Sat, 09 Sep 2023 20:52:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qf4wN-0001cN-2H; Sat, 09 Sep 2023 20:52:27 +0000
Received: by outflank-mailman (input) for mailman id 598596;
 Sat, 09 Sep 2023 20:52:26 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qf4wM-0001cD-8v; Sat, 09 Sep 2023 20:52:26 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qf4wM-0000xT-6E; Sat, 09 Sep 2023 20:52:26 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qf4wL-0003gG-QB; Sat, 09 Sep 2023 20:52:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qf4wL-0004MI-Pm; Sat, 09 Sep 2023 20:52:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=BwL0qVXeC2+2/knVI3tN1PZD/YK5UO/YvqM3pNAu8uc=; b=Xf0cb5+2V4gNb3X8A6/AqWPXXL
	dUJqL6vqwcYP+fnkDsFgCY3ZMFRXWL1YLhPSKwuIkGtBHvZvcorZzz4sd6I8VHftBTYfhqwqB0Idg
	dEGx5r0YA0SaYzY++syTZOjqoZwTvX57lRytPdFrYBm9WtzJ1Ptp3HtNbHO5+V5qYnVk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182810-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182810: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=6099776f9f268e61fe5ecd721f994a8cfce5306f
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 20:52:25 +0000

flight 182810 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182810/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                6099776f9f268e61fe5ecd721f994a8cfce5306f
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   12 days
Failing since        182544  2023-08-28 20:42:13 Z   12 days   21 attempts
Testing same since   182810  2023-09-09 06:33:00 Z    0 days    1 attempts

------------------------------------------------------------
2227 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 263219 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Sep 09 21:20:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 09 Sep 2023 21:20:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598609.933547 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qf5Ni-00056W-9z; Sat, 09 Sep 2023 21:20:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598609.933547; Sat, 09 Sep 2023 21:20:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qf5Ni-00056P-6x; Sat, 09 Sep 2023 21:20:42 +0000
Received: by outflank-mailman (input) for mailman id 598609;
 Sat, 09 Sep 2023 21:20:41 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qf5Ng-00056F-VK; Sat, 09 Sep 2023 21:20:40 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qf5Ng-0001bE-Tk; Sat, 09 Sep 2023 21:20:40 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qf5Ng-0004YM-L4; Sat, 09 Sep 2023 21:20:40 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qf5Ng-0003w1-Kf; Sat, 09 Sep 2023 21:20:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=hO+msaJ+xazU2nb2W8aEKX62wpu1iuXW6jFwTtcLQzY=; b=7G8eIAh4e++B/CyvSfPCSTIbai
	tR2XsS/Xp6D+GbIG3VuV4E8g4rfmP3QgiOyUGqnvqbFXhlh1Ey9DMTq8Cy0lpPpnrejb/GPwxIFeP
	yaGmw78OU4rvC/nT6Vgc2yKN9cO6Lv0GgPLmApKxCcqvKIcBMkUyhRrPr/VMP9aT5Uf0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182835-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182835: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 09 Sep 2023 21:20:40 +0000

flight 182835 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182835/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    2 days
Failing since        182723  2023-09-07 18:19:05 Z    2 days    8 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    1 days    5 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 10 02:57:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 02:57:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598627.933581 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfAd1-0006y2-J9; Sun, 10 Sep 2023 02:56:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598627.933581; Sun, 10 Sep 2023 02:56:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfAd1-0006xv-Ff; Sun, 10 Sep 2023 02:56:51 +0000
Received: by outflank-mailman (input) for mailman id 598627;
 Sun, 10 Sep 2023 02:56:50 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfAcz-0006xi-W3; Sun, 10 Sep 2023 02:56:50 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfAcz-0003Q1-Qn; Sun, 10 Sep 2023 02:56:49 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfAcz-00049W-GE; Sun, 10 Sep 2023 02:56:49 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfAcz-0003uK-Fj; Sun, 10 Sep 2023 02:56:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ZrOQmgy2FxrJVTT2Ojazv2XFaMLUzAUEOKOeH7vtVtw=; b=glj+CJCt/G4998fad82B5h1WCP
	fZSM0ffZNFDflXWkeyhKd95KO4sajNrq2XPpQkcwg6rp4aPorrj4uRwJZQGyXIeoIttUzCMqPsCPy
	NM2yEMJ4IbaOkKEmkkEjEXolrN3W2nzIuMSRThJuHvx7oclpG5t1go0FqLlfpuj6djQU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182830-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182830: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=49b2d6a529122f10e17a17f807d8d51154b5ba14
X-Osstest-Versions-That:
    xen=49b2d6a529122f10e17a17f807d8d51154b5ba14
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 02:56:49 +0000

flight 182830 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182830/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 182798 pass in 182830
 test-amd64-i386-libvirt       7 xen-install                fail pass in 182798
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install          fail pass in 182798

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt     15 migrate-support-check fail in 182798 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182798
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182798
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182798
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182798
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182798
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182798
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182798
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182798
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182798
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182798
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182798
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182798
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  49b2d6a529122f10e17a17f807d8d51154b5ba14
baseline version:
 xen                  49b2d6a529122f10e17a17f807d8d51154b5ba14

Last test of basis   182830  2023-09-09 12:45:50 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           fail    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      fail    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Sun Sep 10 04:22:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 04:22:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598644.933615 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfBxX-0007rs-NO; Sun, 10 Sep 2023 04:22:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598644.933615; Sun, 10 Sep 2023 04:22:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfBxX-0007rl-Js; Sun, 10 Sep 2023 04:22:07 +0000
Received: by outflank-mailman (input) for mailman id 598644;
 Sun, 10 Sep 2023 04:22:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uHF+=E2=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qfBxW-0007rP-7A
 for xen-devel@lists.xenproject.org; Sun, 10 Sep 2023 04:22:06 +0000
Received: from mail-pf1-x432.google.com (mail-pf1-x432.google.com
 [2607:f8b0:4864:20::432])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 973f8b27-4f91-11ee-9b0d-b553b5be7939;
 Sun, 10 Sep 2023 06:22:03 +0200 (CEST)
Received: by mail-pf1-x432.google.com with SMTP id
 d2e1a72fcca58-68c0d886ea0so2910158b3a.2
 for <xen-devel@lists.xenproject.org>; Sat, 09 Sep 2023 21:22:03 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 t5-20020a63b705000000b0056afdbd0a24sm142840pgf.9.2023.09.09.21.21.56
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 09 Sep 2023 21:22:01 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 973f8b27-4f91-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694319721; x=1694924521; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=y41O7m8lzKH6Z6I1rP686Lg5qOtZy5LXRHQ0fLJI1OY=;
        b=x/9S1fZOZ9U3zgZWe2CeXtvefhO1w2Io7ThIxTatVo5tCQacDE8+6A7vNCjttGG5xx
         1HEgmZf9WcDMRkTFWwtNuTBc9fAjWcBUlJhUu2WXyIYoYB9hSqrKXqdFMjmMCl4nkVuP
         DVMa7NlYEF/QV7KZ4Hd9dxM+OK1RfjwHMCtpRyJnrnM9lm6UZXmG1kQEoXYvKQBBopZ2
         A4VX+gmDPDhudvdxi8l9RaEF/5UAWYjCI1uXF3LXcFHBIUuPTOlXuV5CU0NyreSU6hXa
         8rqAo5FhI0um6B9mGaVMND8ySikVlrtDuUZPJ94XFfns5e+d4vfUYqyaCeLMmZzT9+c1
         qzFw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694319721; x=1694924521;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=y41O7m8lzKH6Z6I1rP686Lg5qOtZy5LXRHQ0fLJI1OY=;
        b=CHyfkko/m8n65yCaWeN4J0Ck7HAj2eZgCGwaqiSGQDMOFyM8lgTIalCT9ybRBqym0t
         WkHW3VHc2muNe5RTQgZSNpnd/H+eCDS1YURw6h7zuh+ZpaPo9JVdyIDRgt8ai7p9NJuP
         J/NoL5Xow0NI7mfuPh1s2MufGn8mtqEoJJg1QXX2T0+Detn684Z5hGEMuxCzID5CfuJY
         GQEBirtwQfJCgOAdQVABh9CYKHh7lT9CEkVJHz+ORiozZ0PVK2UQBtrjD23J+6wVrJLS
         nTHg9/hVT0q0T8Fxy0iYmpE64APtJ+qzVF64WPDaJpKF3lG0dC/iU60Aja2E80+A1Phl
         2Qgw==
X-Gm-Message-State: AOJu0Yxnte4tPo220+FCL7sgB5r3lRnUDPGOXtp8wFRmuaPeV+OxewXk
	Rf1mvxwzdy8MZd9QwOherFPt3g==
X-Google-Smtp-Source: AGHT+IG3w2NwKdjms/SuiPqAhtRTC9XzAYUKIfiyZjUtztV1ZlgLuJusPzzoM2Ll4o14KuOFM1cx2w==
X-Received: by 2002:a05:6a20:105a:b0:14d:16c:2d20 with SMTP id gt26-20020a056a20105a00b0014d016c2d20mr6996494pzc.44.1694319721488;
        Sat, 09 Sep 2023 21:22:01 -0700 (PDT)
Message-ID: <11c227e8-a464-41ce-a435-82c570746388@daynix.com>
Date: Sun, 10 Sep 2023 13:21:56 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin"
 <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 "ernunes@redhat.com" <ernunes@redhat.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <ZPw2UjxogIULU722@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/09 18:09, Huang Rui wrote:
> On Thu, Aug 31, 2023 at 06:36:57PM +0800, Akihiko Odaki wrote:
>> On 2023/08/31 18:32, Huang Rui wrote:
>>> From: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>
>>> Enable resource UUID feature and implement command resource assign UUID.
>>> This is done by introducing a hash table to map resource IDs to their
>>> UUIDs.
>>
>> The hash table does not seem to be stored during migration.
> 
> May I know whether you point g->resource_uuids table data in VirtIOGPU
> device should be stored in virtio_gpu_save() and resumed in
> virtio_gpu_load() for virtio migration?

Yes, that's what I meant.

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Sun Sep 10 04:24:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 04:24:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598649.933625 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfBzg-0008Qy-4W; Sun, 10 Sep 2023 04:24:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598649.933625; Sun, 10 Sep 2023 04:24:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfBzf-0008Qr-W6; Sun, 10 Sep 2023 04:24:19 +0000
Received: by outflank-mailman (input) for mailman id 598649;
 Sun, 10 Sep 2023 04:24:19 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfBzf-0008Qf-Bu; Sun, 10 Sep 2023 04:24:19 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfBzf-0005cL-8T; Sun, 10 Sep 2023 04:24:19 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfBze-0006nD-Vo; Sun, 10 Sep 2023 04:24:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfBze-0001T7-VG; Sun, 10 Sep 2023 04:24:18 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=pQdzsOhdEV67cs4UEaoc10vnQNmfbbb//+sYFzQ5WiY=; b=6Wid8RcPiMO325/i/OUqcDp6lb
	XJ7SnwwBUbrGIaGBdWWQQxlkuID3Jlba72ij60vpVU1jHIubHR2R2B1nKQfK3dF6K6UcZTFvUXRjn
	JCVoK//o2NWc2EDEBANteLgUrgAfUCeP6lEcaHM+E6ywApld6EOYnULgUPmfDtu4EpZU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182845-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182845: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 04:24:18 +0000

flight 182845 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182845/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    3 days
Failing since        182723  2023-09-07 18:19:05 Z    2 days    9 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    1 days    6 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 10 04:32:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 04:32:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598658.933635 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfC7I-0001h0-VN; Sun, 10 Sep 2023 04:32:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598658.933635; Sun, 10 Sep 2023 04:32:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfC7I-0001gt-Sf; Sun, 10 Sep 2023 04:32:12 +0000
Received: by outflank-mailman (input) for mailman id 598658;
 Sun, 10 Sep 2023 04:32:11 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uHF+=E2=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qfC7H-0001gn-TL
 for xen-devel@lists.xenproject.org; Sun, 10 Sep 2023 04:32:11 +0000
Received: from mail-qk1-x72d.google.com (mail-qk1-x72d.google.com
 [2607:f8b0:4864:20::72d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 00db1723-4f93-11ee-9b0d-b553b5be7939;
 Sun, 10 Sep 2023 06:32:09 +0200 (CEST)
Received: by mail-qk1-x72d.google.com with SMTP id
 af79cd13be357-76dc77fd01fso202892185a.3
 for <xen-devel@lists.xenproject.org>; Sat, 09 Sep 2023 21:32:09 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 e19-20020aa78c53000000b00679a4b56e41sm3387194pfd.43.2023.09.09.21.32.03
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 09 Sep 2023 21:32:07 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 00db1723-4f93-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694320328; x=1694925128; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=6mLDKK0spS0SXw0nxD2bYbl1ukTpmkTjYoJfRa7X6Jc=;
        b=JRPS06/UWZNhgNSZqlJI5IQ/7ghal06r1wtiIOWqM3w0Tc5P7YWrCdvc6csVSblmRQ
         B3foxgU58N8WZb6UICxkFPUOOMWfuhpeGGc8KDc5PIhtjcovmpenE/RMTkYaXLjLl8oK
         dUmkQVqBHD7CZffzTU6DdZMn1bKzgW4fIvPdMk82P6YX/pwGuFMe4f786ws52Tl3/YDa
         WbwyVwamQ2AV4LF18f3ooKNCY2PX90v25fdD6rSAzWFi0KvaJDt1s5DtsCHzD7+3+Ovk
         123DwId7tHHDP14q/dlCIbk4lBuzCmv88O/M30I3Gz+OamfRq8p44sb/p4kTp9s14tUR
         4c4w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694320328; x=1694925128;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=6mLDKK0spS0SXw0nxD2bYbl1ukTpmkTjYoJfRa7X6Jc=;
        b=G5v5/dgbhHngNhNE/4lXbGEUkw9HOv9R3lsW7FNTmQJAdDZwSsBDgx+kspOv8lgl5h
         kY2ig1lxqyQm+tmQmGaiRJ9OfKH1SZtPFUlZVQ1yXyqFuZ1RQXpjIoImBi0+T0wsIXey
         FjzYj+yrdnAuze2TulU3ChuP4CJ2Lv7MoRQHUp3idwHBa7C1K2L0oEDSjeNBGJ2wNDtZ
         KW6VZpQYUWTTnPOzkePUYAvlRlL62WH+pAPuyAjWvkyrNMRAjafjVwIfdpo/IKHRq7tB
         JXhTszMUBqk6Cxz9cYj8yETE3yeIXpNgVTd5yx08qLloni4UrpcQ48Sfe1W5oEyFvSyS
         QECg==
X-Gm-Message-State: AOJu0YzC9sVggHRLq+GG98VpFGPHbqMZYFZauf+2h2rSASCiE+9mo4Bk
	gBpGbYDEVqPdIWHx7k7ctBO33Q==
X-Google-Smtp-Source: AGHT+IH41CY1gp7ku8RIGtDEesEP1+sGE/g5r/DzrN13Mfai6YcjxHyadOjiT3yptF7xCb8j/jsORw==
X-Received: by 2002:a05:620a:2983:b0:76f:f0b:a1b8 with SMTP id r3-20020a05620a298300b0076f0f0ba1b8mr8942239qkp.25.1694320328329;
        Sat, 09 Sep 2023 21:32:08 -0700 (PDT)
Message-ID: <b82982aa-5b9e-481e-9491-b9313877bcaa@daynix.com>
Date: Sun, 10 Sep 2023 13:32:02 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v4 11/13] virtio-gpu: Support Venus capset
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin"
 <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 "ernunes@redhat.com" <ernunes@redhat.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-12-ray.huang@amd.com>
 <fe36e4e1-1198-4da4-b6ee-a6a00a44298a@daynix.com> <ZPw7FIMmykdYtVeM@amd.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <ZPw7FIMmykdYtVeM@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/09 18:29, Huang Rui wrote:
> On Thu, Aug 31, 2023 at 06:43:17PM +0800, Akihiko Odaki wrote:
>> On 2023/08/31 18:32, Huang Rui wrote:
>>> From: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>
>>> Add support for the Venus capset, which enables Vulkan support through
>>> the Venus Vulkan driver for virtio-gpu.
>>>
>>> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>> ---
>>>    hw/display/virtio-gpu-virgl.c               | 21 +++++++++++++++++----
>>>    include/standard-headers/linux/virtio_gpu.h |  2 ++
>>>    2 files changed, 19 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
>>> index 1a996a08fc..83cd8c8fd0 100644
>>> --- a/hw/display/virtio-gpu-virgl.c
>>> +++ b/hw/display/virtio-gpu-virgl.c
>>> @@ -437,6 +437,11 @@ static void virgl_cmd_get_capset_info(VirtIOGPU *g,
>>>            virgl_renderer_get_cap_set(resp.capset_id,
>>>                                       &resp.capset_max_version,
>>>                                       &resp.capset_max_size);
>>> +    } else if (info.capset_index == 2) {
>>> +        resp.capset_id = VIRTIO_GPU_CAPSET_VENUS;
>>> +        virgl_renderer_get_cap_set(resp.capset_id,
>>> +                                   &resp.capset_max_version,
>>> +                                   &resp.capset_max_size);
>>>        } else {
>>>            resp.capset_max_version = 0;
>>>            resp.capset_max_size = 0;
>>> @@ -901,10 +906,18 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
>>>    
>>>    int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g)
>>>    {
>>> -    uint32_t capset2_max_ver, capset2_max_size;
>>> +    uint32_t capset2_max_ver, capset2_max_size, num_capsets;
>>> +    num_capsets = 1;
>>> +
>>>        virgl_renderer_get_cap_set(VIRTIO_GPU_CAPSET_VIRGL2,
>>> -                              &capset2_max_ver,
>>> -                              &capset2_max_size);
>>> +                               &capset2_max_ver,
>>> +                               &capset2_max_size);
>>> +    num_capsets += capset2_max_ver ? 1 : 0;
>>> +
>>> +    virgl_renderer_get_cap_set(VIRTIO_GPU_CAPSET_VENUS,
>>> +                               &capset2_max_ver,
>>> +                               &capset2_max_size);
>>> +    num_capsets += capset2_max_size ? 1 : 0;
>>>    
>>> -    return capset2_max_ver ? 2 : 1;
>>> +    return num_capsets;
>>>    }
>>> diff --git a/include/standard-headers/linux/virtio_gpu.h b/include/standard-headers/linux/virtio_gpu.h
>>> index 2da48d3d4c..2db643ed8f 100644
>>> --- a/include/standard-headers/linux/virtio_gpu.h
>>> +++ b/include/standard-headers/linux/virtio_gpu.h
>>> @@ -309,6 +309,8 @@ struct virtio_gpu_cmd_submit {
>>>    
>>>    #define VIRTIO_GPU_CAPSET_VIRGL 1
>>>    #define VIRTIO_GPU_CAPSET_VIRGL2 2
>>> +/* 3 is reserved for gfxstream */
>>> +#define VIRTIO_GPU_CAPSET_VENUS 4
>>
>> This file is synced with scripts/update-linux-headers.sh and should not
>> be modified.
> 
> Should I add marco in kernel include/uapi/linux/virtio_gpu.h?

Yes, I think so.

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Sun Sep 10 09:23:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 09:23:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598676.933657 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfGer-0000Tr-IP; Sun, 10 Sep 2023 09:23:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598676.933657; Sun, 10 Sep 2023 09:23:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfGer-0000Tk-ED; Sun, 10 Sep 2023 09:23:09 +0000
Received: by outflank-mailman (input) for mailman id 598676;
 Sun, 10 Sep 2023 09:23:08 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfGep-0000Ta-V3; Sun, 10 Sep 2023 09:23:07 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfGep-0004Z0-RJ; Sun, 10 Sep 2023 09:23:07 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfGep-0003RO-JA; Sun, 10 Sep 2023 09:23:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfGep-0001Gg-Id; Sun, 10 Sep 2023 09:23:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=SzXiJN1WxNhvl8Rygjb5JUfYq+aYWPyPxA7o3ha2tC4=; b=0jQkSlGYRR1r1HufBtGuQil5zG
	GFyL/BUR75bq5WgAN6pLEI1vSFq/cn/qbEjOTTi3WJV/xzldiqe4Ij+4xEPJ5lSIGbKM+Mp1KhqJd
	292VhGOvrdP/oAOAjUYoROH8rPcQqelN66Nc+3YtCwZBDICdQLM1yW32kob+DeLFq5NE=;
To: xen-devel@lists.xenproject.org
Subject: [qemu-mainline bisection] complete build-arm64
Message-Id: <E1qfGep-0001Gg-Id@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 09:23:07 +0000

branch xen-unstable
xenbranch xen-unstable
job build-arm64
testid xen-build

Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu https://gitlab.com/qemu-project/qemu.git
  Bug introduced:  03a3a62fbd0aa5227e978eef3c67d3978aec9e5f
  Bug not present: 13d9f6dca08a38e9258b6328f3ad61bdb8e19619
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182856/


  (Revision log too long, omitted.)


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/build-arm64.xen-build.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/build-arm64.xen-build --summary-out=tmp/182856.bisection-summary --basis-template=182707 --blessings=real,real-bisect,real-retry qemu-mainline build-arm64 xen-build
Searching for failure / basis pass:
 182845 fail [host=rochester1] / 182707 ok.
Failure / basis pass flights: 182845 / 182707
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest b240eab03530f063ef5438497d70a731b19a201e c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
Basis pass 4d196352f35ac516b477e568265b4e537b0283d8 c152379422a204109f34ca2b43ecc538c7d738ae 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 74b725a64d800822e007e0f449317ff0a8249971
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/osstest/ovmf.git#4d196352f35ac516b477e568265b4e537b0283d8-b240eab03530f063ef5438497d70a731b19a201e https://gitlab.com/qemu-project/qemu.git#c152379422a204109f34ca2b43ecc538c7d738ae-c5ea91da443b458352c1b629b490ee6631775cb4 git://xenbits.xen.org/osstest/seabios.git#7a4003be25eae462f3c3d8aad96b57e34dc0c2b8-7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 git://xenbits.xen.org/xen.git#74b725a64d800822e007e0f449317ff0a8249971-49b2d6a\
 529122f10e17a17f807d8d51154b5ba14
Loaded 25071 nodes in revision graph
Searching for test results:
 182707 pass 4d196352f35ac516b477e568265b4e537b0283d8 c152379422a204109f34ca2b43ecc538c7d738ae 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 74b725a64d800822e007e0f449317ff0a8249971
 182723 [host=rochester0]
 182730 [host=rochester0]
 182739 [host=rochester0]
 182770 [host=rochester0]
 182796 [host=rochester0]
 182801 [host=rochester0]
 182833 [host=rochester0]
 182814 fail b240eab03530f063ef5438497d70a731b19a201e c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182834 [host=rochester0]
 182836 pass 4d196352f35ac516b477e568265b4e537b0283d8 c152379422a204109f34ca2b43ecc538c7d738ae 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 74b725a64d800822e007e0f449317ff0a8249971
 182837 fail b240eab03530f063ef5438497d70a731b19a201e c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182838 fail b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 2f352bc2270fdc896beb2957b5171b03ba3e2d66 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182839 fail 5443c2dc310d2c8eb15fb8eefd5057342e78cd0d 631c872614aca91eaf947c1748f0f27f99635d92 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182840 pass b81557a00c61cc80ab118828f16ed9ce79455880 9f89423537653de07ca40c18b5ff5b70b104cc93 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182841 pass bbf182229587958b17336c114e0a1525c4f90f3d c152379422a204109f34ca2b43ecc538c7d738ae 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182835 fail b240eab03530f063ef5438497d70a731b19a201e c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182843 fail b29150aa3e9157908052c212d3afacbff8dbab1b 631c872614aca91eaf947c1748f0f27f99635d92 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182844 fail b240eab03530f063ef5438497d70a731b19a201e c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182846 fail b81557a00c61cc80ab118828f16ed9ce79455880 03a3a62fbd0aa5227e978eef3c67d3978aec9e5f 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182847 pass b81557a00c61cc80ab118828f16ed9ce79455880 c152379422a204109f34ca2b43ecc538c7d738ae 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182848 pass b81557a00c61cc80ab118828f16ed9ce79455880 c97d45d55798b27410253df8fc724d2a02189aa8 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182850 pass b81557a00c61cc80ab118828f16ed9ce79455880 13d9f6dca08a38e9258b6328f3ad61bdb8e19619 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182851 fail b81557a00c61cc80ab118828f16ed9ce79455880 03a3a62fbd0aa5227e978eef3c67d3978aec9e5f 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182852 pass b81557a00c61cc80ab118828f16ed9ce79455880 13d9f6dca08a38e9258b6328f3ad61bdb8e19619 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182845 fail b240eab03530f063ef5438497d70a731b19a201e c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182853 fail b81557a00c61cc80ab118828f16ed9ce79455880 03a3a62fbd0aa5227e978eef3c67d3978aec9e5f 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182855 pass b81557a00c61cc80ab118828f16ed9ce79455880 13d9f6dca08a38e9258b6328f3ad61bdb8e19619 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182856 fail b81557a00c61cc80ab118828f16ed9ce79455880 03a3a62fbd0aa5227e978eef3c67d3978aec9e5f 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
Searching for interesting versions
 Result found: flight 182707 (pass), for basis pass
 Result found: flight 182814 (fail), for basis failure (at ancestor ~11)
 Repro found: flight 182836 (pass), for basis pass
 Repro found: flight 182844 (fail), for basis failure
 0 revisions at b81557a00c61cc80ab118828f16ed9ce79455880 13d9f6dca08a38e9258b6328f3ad61bdb8e19619 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
No revisions left to test, checking graph state.
 Result found: flight 182850 (pass), for last pass
 Result found: flight 182851 (fail), for first failure
 Repro found: flight 182852 (pass), for last pass
 Repro found: flight 182853 (fail), for first failure
 Repro found: flight 182855 (pass), for last pass
 Repro found: flight 182856 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu https://gitlab.com/qemu-project/qemu.git
  Bug introduced:  03a3a62fbd0aa5227e978eef3c67d3978aec9e5f
  Bug not present: 13d9f6dca08a38e9258b6328f3ad61bdb8e19619
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182856/


  (Revision log too long, omitted.)

Revision graph left in /home/logs/results/bisect/qemu-mainline/build-arm64.xen-build.{dot,ps,png,html,svg}.
----------------------------------------
182856: tolerable ALL FAIL

flight 182856 qemu-mainline real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/182856/

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 build-arm64                   6 xen-build               fail baseline untested


jobs:
 build-arm64                                                  fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary



From xen-devel-bounces@lists.xenproject.org Sun Sep 10 10:18:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 10:18:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598694.933688 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfHWj-0006HY-ML; Sun, 10 Sep 2023 10:18:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598694.933688; Sun, 10 Sep 2023 10:18:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfHWj-0006HR-Gp; Sun, 10 Sep 2023 10:18:49 +0000
Received: by outflank-mailman (input) for mailman id 598694;
 Sun, 10 Sep 2023 10:18:48 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfHWi-0006HH-LO; Sun, 10 Sep 2023 10:18:48 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfHWi-0005vf-IL; Sun, 10 Sep 2023 10:18:48 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfHWi-0004lo-6r; Sun, 10 Sep 2023 10:18:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfHWi-0007Qu-6S; Sun, 10 Sep 2023 10:18:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=/vq8+s36uP34Vvx71fybj7MWuU+hmD4ZKQ8EFY6GjjE=; b=xhghqrkdgKDlLOcdD1+7iscJlV
	Ti6hoIbp/wED1Qvfidq+NePaCrc1ZnZYbyKtVoVxf8JOLyfOhWrm1Eh3r3gKd7tGgYDtRiU7KZ1Za
	0Y1FSLiLVBj6Fr/iQif9fIMJvsDrhRhV1B4NIgxIBxlgp5CxxQonSt7JXIwhaUfiL3Fo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182842-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182842: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-armhf-armhf-libvirt-qcow2:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=2a5a4326e58339a26cd1510259e7310b8c0980ff
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 10:18:48 +0000

flight 182842 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182842/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-armhf-armhf-libvirt-qcow2 13 guest-start            fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                2a5a4326e58339a26cd1510259e7310b8c0980ff
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   13 days
Failing since        182544  2023-08-28 20:42:13 Z   12 days   22 attempts
Testing same since   182842  2023-09-09 21:10:12 Z    0 days    1 attempts

------------------------------------------------------------
2245 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               fail    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 264652 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 10 11:51:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 11:51:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598710.933716 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfIy1-0008Ht-GF; Sun, 10 Sep 2023 11:51:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598710.933716; Sun, 10 Sep 2023 11:51:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfIy1-0008Hm-CS; Sun, 10 Sep 2023 11:51:05 +0000
Received: by outflank-mailman (input) for mailman id 598710;
 Sun, 10 Sep 2023 11:51:04 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfIy0-0008Hc-1S; Sun, 10 Sep 2023 11:51:04 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfIxz-0007r9-Nr; Sun, 10 Sep 2023 11:51:03 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfIxz-0006q1-DI; Sun, 10 Sep 2023 11:51:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfIxz-0003ar-Ct; Sun, 10 Sep 2023 11:51:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=6ltAIXvoq9htFny4xsmkHRokyLQSOVmw83ka6O+empc=; b=y2fX4ci3U2Kjctx2ZbmrSmsGxl
	PR+N/pZTACeyIBvTS8jp/TvHyXkEUfMJeJQC75TGOku5ssKmYuzna+nsHcEfHRBJL8Gn3CwB5r+of
	mZfE5v/Y1JK9jnqVZ0EXJ2vjQVRqSp4BmLCIZC6t5W5BM/kbcyFTfHITfdwOP5VGa/28=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182854-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182854: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 11:51:03 +0000

flight 182854 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182854/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    3 days
Failing since        182723  2023-09-07 18:19:05 Z    2 days   10 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    1 days    7 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 10 15:24:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 15:24:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598736.933773 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfMHq-0004Tg-1v; Sun, 10 Sep 2023 15:23:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598736.933773; Sun, 10 Sep 2023 15:23:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfMHp-0004TZ-VX; Sun, 10 Sep 2023 15:23:45 +0000
Received: by outflank-mailman (input) for mailman id 598736;
 Sun, 10 Sep 2023 15:23:44 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfMHo-0004TP-7z; Sun, 10 Sep 2023 15:23:44 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfMHo-00045I-6H; Sun, 10 Sep 2023 15:23:44 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfMHn-0003jU-Ra; Sun, 10 Sep 2023 15:23:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfMHn-0003iW-R6; Sun, 10 Sep 2023 15:23:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=84rvMDNASBdb9xQpzUTqDOmZv+f40qR6FH+06ziGvHY=; b=Q0NH618Il5sCxFBwN3mFx4SB7c
	aB+Qii3yOVcvDZHbp/cRhrjL7BMvok6S8FdBijHuPWSuwY82iWwdfAvT38Ur3ZIhoSgIl4gnR8NGF
	WLl+KqMN8IhRE72hARGC/iXdxK4r1GUjrZfSWBqolRxYnfcA9DB3T1DH9IaZEFJeAvk0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182849-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182849: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-libvirt:xen-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=49b2d6a529122f10e17a17f807d8d51154b5ba14
X-Osstest-Versions-That:
    xen=49b2d6a529122f10e17a17f807d8d51154b5ba14
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 15:23:43 +0000

flight 182849 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182849/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt       7 xen-install                  fail  like 182830
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182830
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182830
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182830
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182830
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182830
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182830
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182830
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182830
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182830
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182830
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182830
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182830
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  49b2d6a529122f10e17a17f807d8d51154b5ba14
baseline version:
 xen                  49b2d6a529122f10e17a17f807d8d51154b5ba14

Last test of basis   182849  2023-09-10 02:59:13 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      fail    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Sun Sep 10 16:15:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 16:15:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598751.933801 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfN6F-00022f-3g; Sun, 10 Sep 2023 16:15:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598751.933801; Sun, 10 Sep 2023 16:15:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfN6F-00022Y-0s; Sun, 10 Sep 2023 16:15:51 +0000
Received: by outflank-mailman (input) for mailman id 598751;
 Sun, 10 Sep 2023 16:15:49 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfN6D-00022O-7P; Sun, 10 Sep 2023 16:15:49 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfN6D-0005kb-2A; Sun, 10 Sep 2023 16:15:49 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfN6C-0004vY-SS; Sun, 10 Sep 2023 16:15:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfN6C-0000qC-Rz; Sun, 10 Sep 2023 16:15:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=QEvNqluMiv64TuleluqDVIXD8pTHmDc1bYwf6oV0lEo=; b=EAMGvR9PpnygjucebZ4W1QZxI2
	pNiOJFVgtUW7KVs3KQts4CNtkUO/vfLpmSCXKKtkHriGemF12sE0nm6ZHDQ6jkxQSHkA3rBNCbq+2
	Vx9Sg/tNdcNz9y2zSLLOezERvFB1uRANZxLSWwxXE334e9oRe+ZExDxPN0dc7lAbrDuI=;
To: xen-devel@lists.xenproject.org
Subject: [qemu-mainline bisection] complete build-amd64-xsm
Message-Id: <E1qfN6C-0000qC-Rz@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 16:15:48 +0000

branch xen-unstable
xenbranch xen-unstable
job build-amd64-xsm
testid xen-build

Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu https://gitlab.com/qemu-project/qemu.git
  Bug introduced:  c5ea91da443b458352c1b629b490ee6631775cb4
  Bug not present: 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182876/


  (Revision log too long, omitted.)


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/build-amd64-xsm.xen-build.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/build-amd64-xsm.xen-build --summary-out=tmp/182876.bisection-summary --basis-template=182707 --blessings=real,real-bisect,real-retry qemu-mainline build-amd64-xsm xen-build
Searching for failure / basis pass:
 182854 fail [host=nobling0] / 182707 [host=pinot0] 182638 [host=himrod2] 182606 [host=nobling1] 182588 [host=nobling1] 182584 [host=nobling1] 182570 [host=himrod2] 182555 [host=nobling1] 182543 [host=himrod2] 182520 [host=himrod2] 182508 [host=himrod2] 182422 [host=himrod2] 182355 [host=himrod2] 182338 [host=himrod0] 182310 [host=himrod0] 182298 [host=himrod2] 182276 [host=himrod2] 182263 [host=himrod0] 182242 [host=himrod2] 182231 [host=himrod2] 182222 [host=himrod2] 182208 [host=himrod0] 1822\
 02 [host=himrod2] 182194 [host=himrod0] 182185 [host=nobling1] 182171 [host=himrod2] 182114 [host=himrod2] 182096 [host=himrod2] 182067 [host=himrod2] 182029 [host=himrod2] 182023 [host=himrod2] 182006 [host=himrod2] 181993 [host=himrod2] 181952 [host=godello0] 181918 [host=godello0] 181901 [host=huxelrebe0] 181212 [host=himrod2] 181201 [host=albana0] 181177 [host=albana0] 181168 [host=himrod2] 181159 [host=albana0] 181151 [host=himrod2] 181140 [host=godello0] 181131 [host=himrod2] 181119 [host=\
 huxelrebe0] 181103 [host=godello0] 181089 [host=himrod0] 181068 [host=godello0] 181057 [host=himrod2] 181041 [host=himrod2] 181021 [host=himrod2] 181013 [host=himrod2] 181006 [host=himrod0] 181003 [host=himrod2] 180996 [host=himrod0] 180990 [host=himrod0] 180987 [host=himrod2] 180983 [host=huxelrebe0] 180981 [host=himrod2] 180977 [host=himrod0] 180691 [host=himrod2] 180686 [host=himrod2] 180673 [host=nobling1] 180659 [host=nobling1] 180643 [host=godello0] 180637 [host=albana0] 180626 [host=himro\
 d2] 180621 [host=himrod2] 180610 [host=albana0] 180600 [host=himrod2] 180586 [host=himrod0] 180559 [host=himrod0] 180553 [host=himrod0] 180546 [host=himrod0] 180536 [host=elbling0] 180530 [host=nobling1] 180522 [host=himrod2] 180514 [host=himrod2] 180507 [host=himrod2] 180487 [host=himrod2] 180480 [host=himrod2] 180469 [host=himrod2] 180449 [host=himrod2] 180431 [host=himrod2] 180412 [host=debina0] 180398 [host=himrod2] 180394 [host=himrod2] 180389 [host=himrod2] 180386 [host=nobling1] 180382 [h\
 ost=himrod2] 180373 [host=himrod0] 180361 [host=himrod0] 180334 [host=himrod2] 180258 [host=himrod0] 180251 [host=himrod2] 180231 [host=nobling1] 180220 [host=himrod2] 180207 [host=himrod2] 180204 [host=himrod0] 180198 [host=himrod0] 180195 [host=himrod0] 180168 [host=himrod0] 180153 [host=himrod2] 180146 [host=himrod0] 180136 [host=himrod2] 180088 [host=himrod2] 180057 [host=himrod0] 180047 [host=himrod2] 180043 [host=himrod2] 179993 [host=godello0] 179971 [host=godello0] 179955 [host=himrod2] \
 179915 [host=himrod0] 179874 [host=himrod2] 179847 [host=himrod2] 179824 [host=himrod2] 179816 [host=godello0] 179802 [host=himrod0] 179795 [host=himrod2] 179776 [host=himrod2] 179756 [host=himrod2] 179733 [host=himrod2] 179708 [host=himrod0] 179682 [host=himrod0] 179657 [host=himrod2] 179644 [host=himrod2] 179628 [host=himrod2] 179609 [host=himrod2] 179596 [host=himrod2] 179588 [host=himrod2] 179574 [host=himrod2] 179561 [host=himrod2] 179548 [host=himrod2] 179534 [host=himrod2] 179526 [host=hi\
 mrod2] 179518 [host=himrod2] 179501 [host=pinot0] 179497 [host=godello0] 179449 [host=godello0] 176449 [host=pinot0] 176423 [host=sabro0] 176407 [host=himrod2] 176392 [host=godello0] 176367 [host=himrod2] 176352 [host=himrod2] 176342 [host=himrod2] 176096 [host=himrod2] 176080 [host=himrod2] 176069 [host=sabro0] 176022 [host=nobling1] 176008 [host=nobling1] 175998 [host=sabro0] 175991 [host=himrod0] 175977 [host=himrod2] 175962 [host=himrod0] 175743 [host=himrod0] 175735 [host=himrod2] 175637 [h\
 ost=himrod2] 175627 [host=himrod0] 175623 [host=himrod2] 175619 [host=himrod2] 175614 [host=himrod2] 175603 [host=himrod2] 175595 [host=himrod2] 175590 [host=himrod2] 175583 [host=himrod2] 175571 [host=huxelrebe0] 175457 [host=himrod2] 175443 [host=italia0] 175394 [host=sabro1] 175377 [host=himrod2] 175344 [host=himrod2] 175321 [host=himrod2] 175297 [host=himrod2] 175267 [host=nobling1] 175186 [host=himrod2] 175068 [host=elbling0] 175051 [host=himrod2] 175043 [host=nobling1] 174993 [host=godello\
 0] 174989 [host=himrod2] 174976 [host=sabro0] 174963 [host=sabro1] 174949 [host=himrod2] 174935 [host=himrod2] 174923 [host=sabro1] 174899 [host=himrod2] 174807 [host=himrod2] 174788 [host=himrod2] 174780 [host=sabro0] 174777 [host=himrod2] 174761 ok.
Failure / basis pass flights: 182854 / 174761
(tree with no url: minios)
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
Basis pass b9e702c3c9bfe7bfb6bbcff44603add64e1787bf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 46de2eec93bffa0706e6229c0da2919763c8eb04 17dfc79ce9fd6cf508ee84a7d0d972d6abe268c2
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/osstest/ovmf.git#b9e702c3c9bfe7bfb6bbcff44603add64e1787bf-b240eab03530f063ef5438497d70a731b19a201e git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 https://gitlab.com/qemu-project/qemu.git#305f6f62d9d250a32cdf090ddcb7e3a5b26a342e-c5ea91da443b458352c1b629b490ee6631775cb4 git://xenbits.xen.org/osstest/seabios.git#46de2eec93bffa0706e6229c0da2919\
 763c8eb04-7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 git://xenbits.xen.org/xen.git#17dfc79ce9fd6cf508ee84a7d0d972d6abe268c2-49b2d6a529122f10e17a17f807d8d51154b5ba14
adhoc-revtuple-generator: tree discontiguous: qemu
Loaded 12669 nodes in revision graph
Searching for test results:
 175590 [host=himrod2]
 175595 [host=himrod2]
 175603 [host=himrod2]
 175614 [host=himrod2]
 175619 [host=himrod2]
 175623 [host=himrod2]
 175627 [host=himrod0]
 175637 [host=himrod2]
 175643 [host=himrod0]
 175646 [host=himrod0]
 175648 [host=himrod0]
 175649 [host=himrod0]
 175650 [host=himrod0]
 175647 [host=himrod0]
 175654 [host=himrod2]
 175664 [host=himrod2]
 175672 [host=himrod2]
 175681 [host=himrod2]
 175691 [host=himrod0]
 175703 [host=himrod0]
 175709 [host=himrod0]
 175716 [host=himrod0]
 175719 [host=himrod2]
 175722 [host=himrod2]
 175725 [host=himrod2]
 175727 [host=himrod0]
 175729 [host=himrod0]
 175733 [host=himrod0]
 175735 [host=himrod2]
 175743 [host=himrod0]
 175750 [host=himrod2]
 175835 [host=himrod2]
 175838 [host=himrod2]
 175858 [host=himrod2]
 175911 [host=himrod2]
 175908 [host=himrod2]
 175952 [host=himrod2]
 175962 [host=himrod0]
 175977 [host=himrod2]
 175991 [host=himrod0]
 175998 [host=sabro0]
 176008 [host=nobling1]
 176022 [host=nobling1]
 176069 [host=sabro0]
 176080 [host=himrod2]
 176096 [host=himrod2]
 174743 [host=sabro0]
 174749 [host=sabro0]
 174752 [host=himrod0]
 174756 [host=himrod0]
 174761 pass b9e702c3c9bfe7bfb6bbcff44603add64e1787bf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 46de2eec93bffa0706e6229c0da2919763c8eb04 17dfc79ce9fd6cf508ee84a7d0d972d6abe268c2
 174777 [host=himrod2]
 174780 [host=sabro0]
 174788 [host=himrod2]
 174807 [host=himrod2]
 174899 [host=himrod2]
 174923 [host=sabro1]
 174935 [host=himrod2]
 174949 [host=himrod2]
 174963 [host=sabro1]
 174976 [host=sabro0]
 174989 [host=himrod2]
 174993 [host=godello0]
 175043 [host=nobling1]
 175051 [host=himrod2]
 175068 [host=elbling0]
 176342 [host=himrod2]
 176352 [host=himrod2]
 176367 [host=himrod2]
 175186 [host=himrod2]
 176392 [host=godello0]
 176407 [host=himrod2]
 176423 [host=sabro0]
 175267 [host=nobling1]
 176449 [host=pinot0]
 175297 [host=himrod2]
 175321 [host=himrod2]
 175344 [host=himrod2]
 175377 [host=himrod2]
 175394 [host=sabro1]
 175443 [host=italia0]
 175457 [host=himrod2]
 175571 [host=huxelrebe0]
 175583 [host=himrod2]
 179449 [host=godello0]
 179497 [host=godello0]
 179501 [host=pinot0]
 179518 [host=himrod2]
 179526 [host=himrod2]
 179533 [host=himrod2]
 179535 [host=himrod2]
 179534 [host=himrod2]
 179538 [host=debina0]
 179539 [host=debina0]
 179540 [host=debina0]
 179541 [host=debina0]
 179542 [host=debina0]
 179543 [host=debina0]
 179544 [host=himrod2]
 179547 [host=himrod2]
 179551 [host=himrod2]
 179553 [host=himrod2]
 179555 [host=godello0]
 179556 [host=himrod2]
 179557 [host=himrod2]
 179548 [host=himrod2]
 179559 [host=himrod2]
 179560 [host=himrod2]
 179562 [host=himrod2]
 179563 [host=himrod2]
 179564 [host=himrod2]
 179566 [host=himrod2]
 179569 [host=himrod0]
 179561 [host=himrod2]
 179572 [host=himrod2]
 179576 [host=himrod2]
 179578 [host=himrod2]
 179580 [host=himrod2]
 179581 [host=himrod2]
 179582 [host=himrod2]
 179584 [host=himrod2]
 179585 [host=himrod2]
 179586 [host=himrod2]
 179574 [host=himrod2]
 179589 [host=himrod2]
 179590 [host=himrod2]
 179592 [host=elbling0]
 179594 [host=himrod2]
 179588 [host=himrod2]
 179595 [host=himrod2]
 179599 [host=himrod2]
 179600 [host=himrod2]
 179602 [host=himrod2]
 179603 [host=himrod2]
 179605 [host=himrod0]
 179606 [host=himrod0]
 179596 [host=himrod2]
 179608 [host=himrod2]
 179611 [host=himrod2]
 179614 [host=himrod2]
 179615 [host=himrod2]
 179617 [host=himrod0]
 179618 [host=himrod0]
 179620 [host=himrod0]
 179622 [host=himrod2]
 179623 [host=himrod2]
 179609 [host=himrod2]
 179626 [host=himrod2]
 179630 [host=himrod2]
 179631 [host=himrod2]
 179632 [host=himrod2]
 179634 [host=himrod2]
 179635 [host=himrod0]
 179637 [host=himrod0]
 179638 [host=himrod0]
 179639 [host=himrod0]
 179642 [host=himrod0]
 179628 [host=himrod2]
 179645 [host=himrod2]
 179646 [host=himrod2]
 179648 [host=himrod2]
 179650 [host=nobling1]
 179652 [host=himrod2]
 179644 [host=himrod2]
 179659 [host=himrod2]
 179657 [host=himrod2]
 179682 [host=himrod0]
 179708 [host=himrod0]
 179733 [host=himrod2]
 179756 [host=himrod2]
 179776 [host=himrod2]
 179795 [host=himrod2]
 179802 [host=himrod0]
 179816 [host=godello0]
 179824 [host=himrod2]
 179847 [host=himrod2]
 179874 [host=himrod2]
 179915 [host=himrod0]
 179955 [host=himrod2]
 179971 [host=godello0]
 179993 [host=godello0]
 180043 [host=himrod2]
 180047 [host=himrod2]
 180057 [host=himrod0]
 180088 [host=himrod2]
 180136 [host=himrod2]
 180146 [host=himrod0]
 180168 [host=himrod0]
 180153 [host=himrod2]
 180195 [host=himrod0]
 180198 [host=himrod0]
 180204 [host=himrod0]
 180207 [host=himrod2]
 180220 [host=himrod2]
 180231 [host=nobling1]
 180251 [host=himrod2]
 180258 [host=himrod0]
 180334 [host=himrod2]
 180361 [host=himrod0]
 180373 [host=himrod0]
 180382 [host=himrod2]
 180394 [host=himrod2]
 180386 [host=nobling1]
 180389 [host=himrod2]
 180398 [host=himrod2]
 180412 [host=debina0]
 180431 [host=himrod2]
 180449 [host=himrod2]
 180469 [host=himrod2]
 180480 [host=himrod2]
 180487 [host=himrod2]
 180507 [host=himrod2]
 180514 [host=himrod2]
 180522 [host=himrod2]
 180530 [host=nobling1]
 180536 [host=elbling0]
 180546 [host=himrod0]
 180553 [host=himrod0]
 180559 [host=himrod0]
 180586 [host=himrod0]
 180600 [host=himrod2]
 180610 [host=albana0]
 180621 [host=himrod2]
 180626 [host=himrod2]
 180637 [host=albana0]
 180643 [host=godello0]
 180659 [host=nobling1]
 180673 [host=nobling1]
 180686 [host=himrod2]
 180702 [host=himrod0]
 180691 [host=himrod2]
 180705 [host=himrod0]
 180707 [host=himrod0]
 180708 [host=himrod0]
 180709 [host=himrod0]
 180710 [host=himrod0]
 180711 [host=himrod0]
 180712 [host=himrod0]
 180713 [host=himrod0]
 180715 [host=himrod0]
 180716 [host=himrod0]
 180717 [host=himrod0]
 180718 [host=himrod0]
 180704 [host=himrod0]
 180720 [host=himrod0]
 180722 [host=himrod0]
 180723 [host=himrod0]
 180724 [host=himrod0]
 180727 [host=himrod0]
 180728 [host=himrod0]
 180730 [host=himrod0]
 180731 [host=himrod0]
 180733 [host=himrod0]
 180736 [host=himrod0]
 180737 [host=himrod0]
 180721 [host=himrod2]
 180739 [host=himrod0]
 180741 [host=himrod2]
 180743 [host=himrod2]
 180744 [host=himrod2]
 180745 [host=himrod2]
 180747 [host=himrod2]
 180748 [host=himrod2]
 180749 [host=himrod2]
 180742 [host=himrod2]
 180750 [host=himrod2]
 180752 [host=himrod2]
 180754 [host=himrod2]
 180755 [host=himrod2]
 180757 [host=himrod2]
 180758 [host=himrod2]
 180753 [host=himrod2]
 180785 [host=himrod2]
 180807 [host=himrod2]
 180815 [host=himrod2]
 180825 [host=himrod2]
 180835 [host=himrod2]
 180843 [host=himrod2]
 180853 [host=himrod2]
 180860 [host=himrod2]
 180866 [host=himrod2]
 180873 [host=himrod2]
 180878 [host=himrod0]
 180881 [host=himrod2]
 180887 [host=himrod2]
 180894 [host=himrod2]
 180902 [host=himrod2]
 180906 [host=himrod2]
 180909 [host=himrod2]
 180912 [host=himrod0]
 180916 [host=himrod2]
 180927 [host=himrod0]
 180921 [host=himrod2]
 180933 [host=himrod0]
 180937 [host=himrod0]
 180942 [host=himrod2]
 180947 [host=himrod0]
 180949 [host=himrod0]
 180952 [host=himrod0]
 180954 [host=himrod0]
 180958 [host=himrod2]
 180962 [host=himrod2]
 180966 [host=himrod2]
 180968 [host=himrod2]
 180972 [host=himrod2]
 180975 [host=himrod2]
 180977 [host=himrod0]
 180981 [host=himrod2]
 180983 [host=huxelrebe0]
 180990 [host=himrod0]
 180987 [host=himrod2]
 181003 [host=himrod2]
 180996 [host=himrod0]
 181006 [host=himrod0]
 181013 [host=himrod2]
 181021 [host=himrod2]
 181041 [host=himrod2]
 181057 [host=himrod2]
 181068 [host=godello0]
 181089 [host=himrod0]
 181103 [host=godello0]
 181119 [host=huxelrebe0]
 181131 [host=himrod2]
 181140 [host=godello0]
 181151 [host=himrod2]
 181159 [host=albana0]
 181168 [host=himrod2]
 181177 [host=albana0]
 181200 [host=himrod2]
 181202 [host=albana0]
 181203 [host=godello0]
 181206 [host=himrod2]
 181207 [host=himrod2]
 181209 [host=himrod2]
 181201 [host=albana0]
 181211 [host=huxelrebe0]
 181215 [host=himrod0]
 181220 [host=himrod2]
 181223 [host=albana0]
 181227 [host=albana0]
 181212 [host=himrod2]
 181229 [host=himrod2]
 181232 [host=himrod2]
 181231 [host=huxelrebe0]
 181235 [host=huxelrebe0]
 181236 [host=huxelrebe0]
 181244 [host=huxelrebe0]
 181271 [host=huxelrebe0]
 181281 [host=huxelrebe0]
 181299 [host=huxelrebe0]
 181305 [host=huxelrebe1]
 181312 [host=huxelrebe1]
 181322 [host=huxelrebe1]
 181327 [host=huxelrebe1]
 181335 [host=huxelrebe1]
 181345 [host=huxelrebe1]
 181356 [host=huxelrebe0]
 181361 [host=huxelrebe1]
 181372 [host=huxelrebe0]
 181375 [host=huxelrebe1]
 181376 [host=huxelrebe1]
 181379 [host=huxelrebe1]
 181380 [host=huxelrebe1]
 181382 [host=huxelrebe1]
 181384 [host=huxelrebe1]
 181386 [host=huxelrebe1]
 181388 [host=huxelrebe1]
 181389 [host=huxelrebe1]
 181390 [host=huxelrebe1]
 181391 [host=huxelrebe1]
 181393 [host=huxelrebe1]
 181394 [host=huxelrebe1]
 181403 [host=huxelrebe0]
 181409 [host=huxelrebe0]
 181416 [host=huxelrebe1]
 181419 [host=huxelrebe0]
 181424 [host=huxelrebe1]
 181428 [host=huxelrebe1]
 181430 [host=huxelrebe1]
 181436 [host=huxelrebe0]
 181443 [host=huxelrebe0]
 181446 [host=huxelrebe1]
 181461 [host=huxelrebe0]
 181463 [host=huxelrebe0]
 181472 [host=huxelrebe1]
 181478 [host=huxelrebe0]
 181483 [host=huxelrebe0]
 181485 [host=huxelrebe0]
 181492 [host=huxelrebe1]
 181493 [host=huxelrebe1]
 181496 [host=huxelrebe0]
 181544 [host=huxelrebe0]
 181549 [host=huxelrebe1]
 181901 [host=huxelrebe0]
 181918 [host=godello0]
 181952 [host=godello0]
 181993 [host=himrod2]
 182006 [host=himrod2]
 182023 [host=himrod2]
 182029 [host=himrod2]
 182067 [host=himrod2]
 182096 [host=himrod2]
 182114 [host=himrod2]
 182171 [host=himrod2]
 182185 [host=nobling1]
 182194 [host=himrod0]
 182202 [host=himrod2]
 182208 [host=himrod0]
 182222 [host=himrod2]
 182231 [host=himrod2]
 182242 [host=himrod2]
 182263 [host=himrod0]
 182276 [host=himrod2]
 182298 [host=himrod2]
 182310 [host=himrod0]
 182338 [host=himrod0]
 182355 [host=himrod2]
 182422 [host=himrod2]
 182508 [host=himrod2]
 182520 [host=himrod2]
 182543 [host=himrod2]
 182555 [host=nobling1]
 182570 [host=himrod2]
 182584 [host=nobling1]
 182588 [host=nobling1]
 182606 [host=nobling1]
 182638 [host=himrod2]
 182707 [host=pinot0]
 182723 [host=nobling1]
 182730 [host=nobling1]
 182739 fail irrelevant
 182770 [host=nobling1]
 182796 fail irrelevant
 182801 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182814 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182835 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182845 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182857 pass b9e702c3c9bfe7bfb6bbcff44603add64e1787bf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 46de2eec93bffa0706e6229c0da2919763c8eb04 17dfc79ce9fd6cf508ee84a7d0d972d6abe268c2
 182858 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182859 pass 6ded9f50c3aa123fe581c42ff6c03789b9b593c1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e ea1b7a0733906b8425d948ae94fba63c32b1d425 5eb6bd7454e253f4907dbeb7aa982967b21698bc
 182860 pass f5c987fcac567b1f84a418826f30d8ef2b46860e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf aab4b38b5d77e3c65f44bacd56427a85b7392a11
 182862 pass 2d8c17a9b61ad298986daffe5373026c3b88c741 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf d3be806dae9c122fe94702cd9fa2e358a60828cd
 182863 pass 00b51e0d78a547dd78119ec44fcc74a01b6f79c8 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf db75dfdb11dc4e837585bf61cc25dc0c8f048288
 182854 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182864 pass beafabdae49c873adecdb7511dbebe9d4ff5c8f0 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 f805cf3e9b87584e16b03b5059b1163fd22bf5a0
 182866 pass bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182867 pass 48de494bb4befce3b1c466c4ec132540d504047f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182868 pass 5443c2dc310d2c8eb15fb8eefd5057342e78cd0d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182869 fail 60d0f5802bceab3482c6be6dfde73a2af8373f9f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182870 pass ff7ddc02b273f9159ef46fdb67d99062f8e598d9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182871 pass b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182872 fail b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182873 pass b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182874 fail b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182875 pass b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182876 fail b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
Searching for interesting versions
 Result found: flight 174761 (pass), for basis pass
 For basis failure, parent search stopping at b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e, results HASH(0x55566bff2f48) HASH(0x55566cc64220) HASH(0x55566cc6ab60) For basis failure, parent search stopping at ff7ddc02b273f9159ef46fdb67d99062f8e598d9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be2\
 5eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e, results HASH(0x55566cc5acb0) For basis failure, parent search stopping at 5443c2dc310d2c8eb15fb8eefd5057342e78cd0d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e, results HASH(0x55566bff3818) For basis failure, parent search stopping at 48de494bb4befce3b1c466c4ec132540d504047f 3d273dd05e51e5a1ffba3d98c7437ee\
 84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e, results HASH(0x55566cc27ef0) For basis failure, parent search stopping at bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102, results HASH(0x55566bff2eb8) For basis failure, parent search stopping at beafabdae49c\
 873adecdb7511dbebe9d4ff5c8f0 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 f805cf3e9b87584e16b03b5059b1163fd22bf5a0, results HASH(0x55566bff38d8) For basis failure, parent search stopping at 00b51e0d78a547dd78119ec44fcc74a01b6f79c8 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf db75dfdb11dc4e837585bf61cc25dc0c8f048288, results HASH(0x55566cc2a4f\
 8) For basis failure, parent search stopping at 2d8c17a9b61ad298986daffe5373026c3b88c741 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf d3be806dae9c122fe94702cd9fa2e358a60828cd, results HASH(0x55566bff2c48) For basis failure, parent search stopping at f5c987fcac567b1f84a418826f30d8ef2b46860e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf aab4b38b\
 5d77e3c65f44bacd56427a85b7392a11, results HASH(0x55566cc53f80) For basis failure, parent search stopping at 6ded9f50c3aa123fe581c42ff6c03789b9b593c1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e ea1b7a0733906b8425d948ae94fba63c32b1d425 5eb6bd7454e253f4907dbeb7aa982967b21698bc, results HASH(0x55566cc33a68) For basis failure, parent search stopping at b9e702c3c9bfe7bfb6bbcff44603add64e1787bf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3\
 a5b26a342e 46de2eec93bffa0706e6229c0da2919763c8eb04 17dfc79ce9fd6cf508ee84a7d0d972d6abe268c2, results HASH(0x55566bff37e8) HASH(0x55566cc4df68) Result found: flight 182801 (fail), for basis failure (at ancestor ~3092)
 Repro found: flight 182857 (pass), for basis pass
 Repro found: flight 182858 (fail), for basis failure
 0 revisions at b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
No revisions left to test, checking graph state.
 Result found: flight 182871 (pass), for last pass
 Result found: flight 182872 (fail), for first failure
 Repro found: flight 182873 (pass), for last pass
 Repro found: flight 182874 (fail), for first failure
 Repro found: flight 182875 (pass), for last pass
 Repro found: flight 182876 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu https://gitlab.com/qemu-project/qemu.git
  Bug introduced:  c5ea91da443b458352c1b629b490ee6631775cb4
  Bug not present: 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182876/


  (Revision log too long, omitted.)

neato: graph is too large for cairo-renderer bitmaps. Scaling by 0.234726 to fit
pnmtopng: 13 colors found
Revision graph left in /home/logs/results/bisect/qemu-mainline/build-amd64-xsm.xen-build.{dot,ps,png,html,svg}.
----------------------------------------
182876: tolerable ALL FAIL

flight 182876 qemu-mainline real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/182876/

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 build-amd64-xsm               6 xen-build               fail baseline untested


jobs:
 build-amd64-xsm                                              fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary



From xen-devel-bounces@lists.xenproject.org Sun Sep 10 16:32:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 16:32:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598761.933814 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfNMW-0004YD-Lv; Sun, 10 Sep 2023 16:32:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598761.933814; Sun, 10 Sep 2023 16:32:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfNMW-0004Y6-JF; Sun, 10 Sep 2023 16:32:40 +0000
Received: by outflank-mailman (input) for mailman id 598761;
 Sun, 10 Sep 2023 16:32:40 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfNMW-0004Xw-8o; Sun, 10 Sep 2023 16:32:40 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfNMW-00063j-4S; Sun, 10 Sep 2023 16:32:40 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfNMV-0005IQ-Pe; Sun, 10 Sep 2023 16:32:39 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfNMV-0005Je-P8; Sun, 10 Sep 2023 16:32:39 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=qLDaFVttzptGGFiy5Rc3IAuPUDU6TKKKCX0MngOP5wg=; b=Gk0WAhBDUROUd82yTyhq2XlXYD
	mxM6j/xrfzXmovf1QNCKHdUTWhksCNnFfDXIblsnUXbYm173pDkFRS6FDXApXsztte6Ov792h6l0c
	EdG8PdZ4tN9jzqHLAxL0/BxvUDknizjArvlzFoBnkXHaUKy5ElwAkoSM3ULdlPfWYztQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182865-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182865: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 16:32:39 +0000

flight 182865 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182865/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    3 days
Failing since        182723  2023-09-07 18:19:05 Z    2 days   11 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    1 days    8 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 10 17:52:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 17:52:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598779.933848 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfObP-0004SI-Fo; Sun, 10 Sep 2023 17:52:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598779.933848; Sun, 10 Sep 2023 17:52:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfObP-0004SB-D5; Sun, 10 Sep 2023 17:52:07 +0000
Received: by outflank-mailman (input) for mailman id 598779;
 Sun, 10 Sep 2023 17:52:06 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfObO-0004S1-M4; Sun, 10 Sep 2023 17:52:06 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfObO-0007rw-CJ; Sun, 10 Sep 2023 17:52:06 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfObN-00071i-KM; Sun, 10 Sep 2023 17:52:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfObN-0002g5-Jt; Sun, 10 Sep 2023 17:52:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=9+nYZbUl/ZxvQ/zUqul1OckazV74pR9oF9c0fJHbiA4=; b=jMcFPqj7AbeEuQj4xjPgO58mYU
	Xfll1fuiUshf7A18mji3vNm1wXE1rfKFkYhJzRqOMSCiIz65XSg5alpjOiiiRFlZFMGebJaPn1SfS
	m9dQ8HIPOq3EnaNghSJHHTAgYdQzDJP1rLKTreyq0fzUk54WReluawBpMBVUoTFUOkbo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182879-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182879: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 17:52:05 +0000

flight 182879 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182879/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    3 days
Failing since        182723  2023-09-07 18:19:05 Z    2 days   12 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    2 days    9 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 10 22:03:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 22:03:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598815.933937 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfSWA-0004Pw-0r; Sun, 10 Sep 2023 22:02:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598815.933937; Sun, 10 Sep 2023 22:02:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfSW9-0004Pp-Tj; Sun, 10 Sep 2023 22:02:57 +0000
Received: by outflank-mailman (input) for mailman id 598815;
 Sun, 10 Sep 2023 22:02:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfSW8-0004Pf-UO; Sun, 10 Sep 2023 22:02:56 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfSW8-0004zo-NO; Sun, 10 Sep 2023 22:02:56 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfSW8-0004NN-Fr; Sun, 10 Sep 2023 22:02:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfSW8-0006jG-FQ; Sun, 10 Sep 2023 22:02:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=tpXSysJQnBWGSQhuQWnBaJbRG41drMJ/s12rB1WtvkU=; b=DOXGDzdRZL/3JrbiYkm9ChP9/Q
	SoOHVOU+aXeQwYOV/bnPHZbiZjQS1gh5SgK7qMqtC8d5l+zPmIy7FyLKc1gJhtCfSOR8D6kBW4ySV
	r7FwwGgZE7gpsW4raKfoSe2LZJoVkc+HvHWoW2dH5SJQuFqq1hMx+/enHWrsKJwPWNmY=;
To: xen-devel@lists.xenproject.org
Subject: [qemu-mainline bisection] complete build-amd64
Message-Id: <E1qfSW8-0006jG-FQ@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 22:02:56 +0000

branch xen-unstable
xenbranch xen-unstable
job build-amd64
testid xen-build

Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu https://gitlab.com/qemu-project/qemu.git
  Bug introduced:  c5ea91da443b458352c1b629b490ee6631775cb4
  Bug not present: 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182896/


  (Revision log too long, omitted.)


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/build-amd64.xen-build.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/build-amd64.xen-build --summary-out=tmp/182896.bisection-summary --basis-template=182707 --blessings=real,real-bisect,real-retry qemu-mainline build-amd64 xen-build
Searching for failure / basis pass:
 182879 fail [host=nobling0] / 182707 [host=pinot0] 182638 [host=pinot0] 182606 [host=nobling1] 182588 [host=himrod2] 182584 [host=nobling1] 182570 [host=himrod2] 182555 [host=nobling1] 182543 [host=himrod0] 182520 [host=himrod2] 182508 [host=himrod2] 182422 [host=himrod2] 182355 [host=himrod2] 182338 [host=himrod0] 182310 [host=himrod0] 182298 [host=himrod2] 182276 [host=himrod2] 182263 [host=himrod0] 182242 [host=himrod2] 182231 [host=himrod2] 182222 [host=himrod2] 182208 [host=himrod0] 182202\
  [host=himrod2] 182194 [host=himrod0] 182185 [host=pinot0] 182171 [host=himrod2] 182114 [host=himrod2] 182096 [host=himrod2] 182067 [host=himrod2] 182029 [host=himrod2] 182023 [host=himrod2] 182006 [host=himrod2] 181993 [host=himrod2] 181952 [host=godello0] 181918 [host=godello0] 181901 [host=himrod0] 181212 [host=himrod2] 181201 [host=albana0] 181177 [host=albana0] 181168 [host=himrod2] 181159 [host=albana0] 181151 [host=himrod2] 181140 [host=godello0] 181131 [host=himrod2] 181119 [host=huxelre\
 be0] 181103 [host=himrod2] 181089 [host=himrod0] 181068 [host=godello0] 181057 [host=himrod2] 181041 [host=himrod2] 181021 [host=himrod2] 181013 [host=himrod2] 181006 [host=himrod0] 181003 [host=himrod2] 180996 [host=himrod0] 180990 [host=himrod0] 180987 [host=himrod2] 180983 [host=huxelrebe0] 180981 [host=himrod2] 180977 [host=himrod0] 180691 [host=himrod2] 180686 [host=himrod2] 180673 [host=nobling1] 180659 [host=nobling1] 180643 [host=godello0] 180637 [host=albana0] 180626 [host=himrod2] 1806\
 21 [host=himrod2] 180610 [host=albana0] 180600 [host=himrod2] 180586 [host=himrod0] 180559 [host=himrod0] 180553 [host=himrod0] 180546 [host=himrod0] 180536 [host=elbling0] 180530 [host=nobling1] 180522 [host=himrod2] 180514 [host=himrod2] 180507 [host=himrod2] 180487 [host=himrod2] 180480 [host=himrod2] 180469 [host=himrod2] 180449 [host=himrod2] 180431 [host=himrod2] 180412 [host=debina0] 180398 [host=himrod2] 180394 [host=himrod2] 180389 [host=himrod2] 180386 [host=nobling1] 180382 [host=himr\
 od2] 180373 [host=himrod0] 180361 [host=himrod0] 180334 [host=himrod2] 180258 [host=himrod0] 180251 [host=himrod2] 180231 [host=nobling1] 180220 [host=himrod2] 180207 [host=himrod2] 180204 [host=himrod0] 180198 [host=himrod0] 180195 [host=himrod0] 180168 [host=himrod0] 180153 [host=himrod2] 180146 [host=himrod0] 180136 [host=himrod2] 180088 [host=himrod2] 180057 [host=himrod0] 180047 [host=himrod2] 180043 [host=himrod2] 179993 [host=himrod0] 179971 [host=godello0] 179955 [host=himrod2] 179915 [h\
 ost=himrod0] 179874 [host=himrod2] 179847 [host=himrod2] 179824 [host=himrod2] 179816 [host=godello0] 179802 [host=himrod0] 179795 [host=himrod2] 179776 [host=himrod2] 179756 [host=himrod2] 179733 [host=himrod2] 179708 [host=himrod0] 179682 [host=himrod0] 179657 [host=himrod2] 179644 [host=himrod2] 179628 [host=himrod2] 179609 [host=himrod2] 179596 [host=himrod2] 179588 [host=himrod2] 179574 [host=himrod2] 179561 [host=himrod2] 179548 [host=himrod2] 179534 [host=himrod2] 179526 [host=himrod2] 17\
 9518 [host=himrod2] 179501 [host=himrod2] 179497 [host=godello0] 179449 [host=godello0] 176449 [host=pinot0] 176423 [host=sabro0] 176407 [host=nobling1] 176392 [host=godello0] 176367 [host=sabro0] 176352 [host=himrod2] 176342 [host=himrod2] 176096 [host=himrod2] 176080 [host=himrod2] 176069 [host=sabro0] 176022 [host=nobling1] 176008 [host=nobling1] 175998 [host=sabro0] 175991 [host=himrod0] 175977 [host=himrod2] 175962 [host=himrod0] 175743 [host=himrod0] 175735 [host=himrod2] 175637 [host=himr\
 od2] 175627 [host=himrod0] 175623 [host=himrod2] 175619 [host=himrod2] 175614 [host=himrod2] 175603 [host=himrod2] 175595 [host=himrod2] 175590 [host=himrod2] 175583 [host=himrod2] 175571 [host=himrod2] 175457 [host=himrod2] 175443 [host=himrod2] 175394 [host=sabro1] 175377 [host=himrod2] 175344 [host=himrod2] 175321 [host=himrod2] 175297 [host=himrod2] 175267 [host=nobling1] 175186 [host=himrod2] 175068 [host=huxelrebe0] 175051 [host=himrod2] 175043 [host=nobling1] 174993 [host=godello0] 174989\
  [host=himrod2] 174976 [host=sabro0] 174963 [host=sabro1] 174949 [host=himrod2] 174935 [host=himrod2] 174923 [host=sabro1] 174899 [host=himrod2] 174807 [host=himrod2] 174788 [host=himrod2] 174780 [host=sabro0] 174777 [host=himrod2] 174761 ok.
Failure / basis pass flights: 182879 / 174761
(tree with no url: minios)
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
Basis pass b9e702c3c9bfe7bfb6bbcff44603add64e1787bf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 46de2eec93bffa0706e6229c0da2919763c8eb04 17dfc79ce9fd6cf508ee84a7d0d972d6abe268c2
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/osstest/ovmf.git#b9e702c3c9bfe7bfb6bbcff44603add64e1787bf-b240eab03530f063ef5438497d70a731b19a201e git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 https://gitlab.com/qemu-project/qemu.git#305f6f62d9d250a32cdf090ddcb7e3a5b26a342e-c5ea91da443b458352c1b629b490ee6631775cb4 git://xenbits.xen.org/osstest/seabios.git#46de2eec93bffa0706e6229c0da2919\
 763c8eb04-7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 git://xenbits.xen.org/xen.git#17dfc79ce9fd6cf508ee84a7d0d972d6abe268c2-49b2d6a529122f10e17a17f807d8d51154b5ba14
adhoc-revtuple-generator: tree discontiguous: qemu
Loaded 12669 nodes in revision graph
Searching for test results:
 175590 [host=himrod2]
 175595 [host=himrod2]
 175603 [host=himrod2]
 175609 [host=himrod2]
 175611 [host=himrod2]
 175614 [host=himrod2]
 175618 [host=himrod2]
 175620 [host=himrod2]
 175619 [host=himrod2]
 175621 [host=himrod2]
 175623 [host=himrod2]
 175627 [host=himrod0]
 175631 [host=himrod2]
 175640 [host=himrod2]
 175637 [host=himrod2]
 175643 [host=himrod0]
 175647 [host=himrod0]
 175652 [host=himrod0]
 175656 [host=himrod0]
 175657 [host=himrod0]
 175654 [host=himrod0]
 175658 [host=himrod0]
 175659 [host=himrod0]
 175664 [host=himrod0]
 175672 [host=himrod2]
 175681 [host=himrod2]
 175691 [host=himrod0]
 175703 [host=himrod0]
 175709 [host=himrod0]
 175716 [host=himrod0]
 175719 [host=himrod2]
 175722 [host=himrod0]
 175725 [host=himrod0]
 175727 [host=himrod0]
 175729 [host=himrod0]
 175733 [host=himrod0]
 175735 [host=himrod2]
 175745 [host=himrod0]
 175743 [host=himrod0]
 175750 [host=himrod2]
 175832 [host=himrod2]
 175835 [host=himrod2]
 175837 [host=himrod2]
 175858 [host=himrod2]
 175911 [host=himrod2]
 175908 [host=himrod2]
 175952 [host=himrod2]
 175962 [host=himrod0]
 175977 [host=himrod2]
 175991 [host=himrod0]
 175998 [host=sabro0]
 176008 [host=nobling1]
 176022 [host=nobling1]
 176069 [host=sabro0]
 176079 [host=himrod2]
 176083 [host=himrod2]
 176080 [host=himrod2]
 176087 [host=nobling1]
 176096 [host=himrod2]
 174743 [host=sabro0]
 174749 [host=sabro0]
 174752 [host=himrod0]
 174756 [host=himrod0]
 174760 pass irrelevant
 174761 pass b9e702c3c9bfe7bfb6bbcff44603add64e1787bf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 46de2eec93bffa0706e6229c0da2919763c8eb04 17dfc79ce9fd6cf508ee84a7d0d972d6abe268c2
 174777 [host=himrod2]
 174780 [host=sabro0]
 174788 [host=himrod2]
 174807 [host=himrod2]
 174899 [host=himrod2]
 174923 [host=sabro1]
 174935 [host=himrod2]
 174949 [host=himrod2]
 174963 [host=sabro1]
 174976 [host=sabro0]
 174989 [host=himrod2]
 174993 [host=godello0]
 175043 [host=nobling1]
 175051 [host=himrod2]
 175068 [host=huxelrebe0]
 176342 [host=himrod2]
 176352 [host=himrod2]
 176368 [host=sabro0]
 176369 [host=himrod2]
 176372 [host=himrod2]
 176374 [host=godello0]
 176377 [host=godello0]
 176367 [host=sabro0]
 176379 [host=himrod2]
 175186 [host=himrod2]
 176380 [host=himrod2]
 176381 [host=himrod2]
 176383 [host=himrod2]
 176384 [host=himrod2]
 176389 [host=pinot0]
 176391 [host=godello0]
 176393 [host=pinot0]
 176394 [host=himrod0]
 176396 [host=sabro0]
 176397 [host=sabro0]
 176398 [host=sabro0]
 176399 [host=sabro0]
 176400 [host=sabro0]
 176401 [host=sabro0]
 176402 [host=sabro0]
 176392 [host=godello0]
 176404 [host=nobling1]
 176408 [host=himrod2]
 176410 [host=himrod2]
 176412 [host=sabro0]
 176415 [host=debina0]
 176416 [host=sabro0]
 176418 [host=sabro0]
 176419 [host=sabro0]
 176407 [host=nobling1]
 176420 [host=sabro0]
 176423 [host=sabro0]
 176387 [host=sabro0]
 176427 [host=himrod2]
 175267 [host=nobling1]
 176429 [host=godello0]
 176431 [host=godello0]
 176432 [host=godello0]
 176436 [host=godello0]
 176433 [host=godello0]
 176440 [host=himrod2]
 176444 [host=himrod2]
 176446 [host=himrod2]
 176450 [host=pinot0]
 176454 [host=godello0]
 176456 [host=himrod2]
 176449 [host=pinot0]
 175297 [host=himrod2]
 175321 [host=himrod2]
 175344 [host=himrod2]
 175377 [host=himrod2]
 175394 [host=sabro1]
 175443 [host=himrod2]
 175457 [host=himrod2]
 175571 [host=himrod2]
 175583 [host=himrod2]
 179449 [host=godello0]
 179497 [host=godello0]
 179501 [host=himrod2]
 179518 [host=himrod2]
 179526 [host=himrod2]
 179534 [host=himrod2]
 179548 [host=himrod2]
 179561 [host=himrod2]
 179574 [host=himrod2]
 179588 [host=himrod2]
 179596 [host=himrod2]
 179609 [host=himrod2]
 179628 [host=himrod2]
 179644 [host=himrod2]
 179666 [host=himrod2]
 179669 [host=himrod2]
 179671 [host=himrod2]
 179673 [host=himrod2]
 179676 [host=himrod2]
 179657 [host=himrod2]
 179679 [host=godello0]
 179683 [host=himrod0]
 179686 [host=himrod0]
 179689 [host=himrod0]
 179691 [host=himrod0]
 179692 [host=himrod0]
 179693 [host=himrod0]
 179695 [host=himrod0]
 179696 [host=himrod2]
 179699 [host=himrod2]
 179700 [host=himrod2]
 179701 [host=himrod2]
 179703 [host=himrod2]
 179704 [host=himrod2]
 179682 [host=himrod0]
 179707 [host=himrod0]
 179710 [host=himrod0]
 179712 [host=himrod0]
 179715 [host=himrod2]
 179718 [host=himrod2]
 179719 [host=godello0]
 179721 [host=himrod0]
 179723 [host=himrod0]
 179726 [host=himrod0]
 179729 [host=himrod0]
 179708 [host=himrod0]
 179732 [host=himrod2]
 179734 [host=himrod2]
 179736 [host=himrod0]
 179737 [host=himrod0]
 179739 [host=himrod0]
 179740 [host=himrod0]
 179743 [host=himrod0]
 179745 [host=himrod2]
 179748 [host=himrod2]
 179750 [host=himrod2]
 179751 [host=himrod2]
 179753 [host=himrod2]
 179754 [host=himrod0]
 179733 [host=himrod2]
 179755 [host=himrod2]
 179758 [host=himrod2]
 179759 [host=himrod2]
 179760 [host=himrod2]
 179761 [host=himrod2]
 179763 [host=himrod0]
 179764 [host=himrod0]
 179765 [host=himrod0]
 179766 [host=himrod0]
 179767 [host=himrod0]
 179768 [host=himrod0]
 179771 [host=himrod2]
 179772 [host=himrod2]
 179773 [host=himrod2]
 179756 [host=himrod2]
 179775 [host=himrod2]
 179777 [host=himrod0]
 179778 [host=himrod0]
 179784 [host=himrod0]
 179790 [host=himrod0]
 179776 [host=himrod2]
 179794 [host=himrod2]
 179795 [host=himrod2]
 179802 [host=himrod0]
 179816 [host=godello0]
 179828 [host=himrod2]
 179831 [host=himrod2]
 179844 [host=himrod2]
 179824 [host=himrod2]
 179850 [host=himrod2]
 179847 [host=himrod2]
 179875 [host=himrod2]
 179881 [host=elbling0]
 179884 [host=himrod2]
 179887 [host=himrod2]
 179874 [host=himrod2]
 179914 [host=himrod2]
 179916 [host=himrod2]
 179925 [host=himrod2]
 179933 [host=himrod2]
 179938 [host=himrod2]
 179943 [host=himrod2]
 179946 [host=himrod2]
 179948 [host=himrod2]
 179952 [host=himrod2]
 179915 [host=himrod0]
 179954 [host=himrod2]
 179957 [host=himrod2]
 179958 [host=himrod2]
 179959 [host=godello0]
 179961 [host=godello0]
 179963 [host=himrod2]
 179964 [host=himrod2]
 179965 [host=himrod2]
 179967 [host=himrod2]
 179968 [host=himrod2]
 179955 [host=himrod2]
 179970 [host=himrod0]
 179972 [host=godello0]
 179973 [host=himrod2]
 179974 [host=himrod2]
 179975 [host=himrod2]
 179977 [host=himrod2]
 179980 [host=himrod2]
 179982 [host=himrod0]
 179971 [host=godello0]
 179996 [host=huxelrebe0]
 180002 [host=godello0]
 180004 [host=himrod2]
 180005 [host=himrod2]
 180008 [host=himrod0]
 179993 [host=himrod0]
 180043 [host=himrod2]
 180047 [host=himrod2]
 180057 [host=himrod0]
 180088 [host=himrod2]
 180136 [host=himrod2]
 180146 [host=himrod0]
 180168 [host=himrod0]
 180153 [host=himrod2]
 180195 [host=himrod0]
 180198 [host=himrod0]
 180204 [host=himrod0]
 180207 [host=himrod2]
 180220 [host=himrod2]
 180231 [host=nobling1]
 180251 [host=himrod2]
 180258 [host=himrod0]
 180259 [host=himrod0]
 180260 [host=pinot0]
 180334 [host=himrod2]
 180361 [host=himrod0]
 180374 [host=himrod0]
 180375 [host=himrod0]
 180373 [host=himrod0]
 180382 [host=himrod2]
 180394 [host=himrod2]
 180386 [host=nobling1]
 180388 [host=himrod2]
 180392 [host=himrod2]
 180389 [host=himrod2]
 180398 [host=himrod2]
 180414 [host=debina0]
 180417 [host=godello0]
 180412 [host=debina0]
 180431 [host=himrod2]
 180449 [host=himrod2]
 180469 [host=himrod2]
 180480 [host=himrod2]
 180487 [host=himrod2]
 180507 [host=himrod2]
 180514 [host=himrod2]
 180522 [host=himrod2]
 180530 [host=nobling1]
 180536 [host=elbling0]
 180546 [host=himrod0]
 180553 [host=himrod0]
 180558 [host=himrod2]
 180560 [host=himrod2]
 180562 [host=himrod2]
 180559 [host=himrod0]
 180586 [host=himrod0]
 180600 [host=himrod2]
 180610 [host=albana0]
 180621 [host=himrod2]
 180626 [host=himrod2]
 180636 [host=albana0]
 180638 [host=nobling1]
 180637 [host=albana0]
 180643 [host=godello0]
 180659 [host=nobling1]
 180673 [host=nobling1]
 180686 [host=himrod2]
 180702 [host=himrod0]
 180691 [host=himrod2]
 180704 [host=himrod2]
 180721 [host=himrod2]
 180742 [host=himrod2]
 180759 [host=himrod2]
 180760 [host=himrod2]
 180761 [host=himrod2]
 180762 [host=himrod2]
 180764 [host=himrod2]
 180765 [host=himrod2]
 180767 [host=himrod2]
 180769 [host=himrod2]
 180770 [host=himrod2]
 180771 [host=himrod2]
 180772 [host=himrod2]
 180773 [host=himrod2]
 180774 [host=himrod2]
 180753 [host=himrod2]
 180785 [host=himrod2]
 180807 [host=himrod2]
 180815 [host=himrod2]
 180825 [host=himrod2]
 180835 [host=himrod2]
 180843 [host=himrod2]
 180853 [host=himrod2]
 180860 [host=himrod2]
 180866 [host=himrod2]
 180873 [host=himrod2]
 180878 [host=himrod2]
 180881 [host=himrod2]
 180887 [host=himrod2]
 180894 [host=himrod2]
 180902 [host=himrod2]
 180906 [host=himrod2]
 180909 [host=himrod2]
 180912 [host=himrod2]
 180916 [host=himrod2]
 180927 [host=himrod0]
 180921 [host=himrod2]
 180933 [host=himrod0]
 180937 [host=himrod0]
 180942 [host=himrod2]
 180947 [host=himrod0]
 180949 [host=himrod0]
 180952 [host=himrod0]
 180954 [host=himrod0]
 180958 [host=himrod2]
 180962 [host=himrod2]
 180966 [host=himrod2]
 180968 [host=himrod2]
 180972 [host=himrod2]
 180975 [host=himrod0]
 180977 [host=himrod0]
 180981 [host=himrod2]
 180983 [host=huxelrebe0]
 180990 [host=himrod0]
 180987 [host=himrod2]
 181003 [host=himrod2]
 180996 [host=himrod0]
 181006 [host=himrod0]
 181013 [host=himrod2]
 181021 [host=himrod2]
 181042 [host=himrod2]
 181051 [host=himrod2]
 181041 [host=himrod2]
 181055 [host=himrod2]
 181058 [host=himrod2]
 181060 [host=himrod2]
 181062 [host=himrod0]
 181064 [host=himrod2]
 181057 [host=himrod2]
 181065 [host=himrod2]
 181069 [host=godello0]
 181070 [host=himrod2]
 181073 [host=himrod2]
 181075 [host=himrod0]
 181080 [host=himrod0]
 181083 [host=himrod2]
 181085 [host=himrod2]
 181086 [host=himrod0]
 181068 [host=godello0]
 181088 [host=himrod0]
 181092 [host=himrod0]
 181094 [host=himrod0]
 181096 [host=himrod0]
 181097 [host=himrod0]
 181099 [host=himrod0]
 181089 [host=himrod0]
 181101 [host=godello0]
 181104 [host=himrod2]
 181105 [host=himrod2]
 181108 [host=himrod0]
 181110 [host=himrod2]
 181112 [host=himrod2]
 181114 [host=himrod2]
 181103 [host=himrod2]
 181116 [host=huxelrebe0]
 181120 [host=godello0]
 181121 [host=godello0]
 181123 [host=godello0]
 181124 [host=godello0]
 181119 [host=huxelrebe0]
 181135 [host=godello0]
 181131 [host=himrod2]
 181141 [host=godello0]
 181142 [host=godello0]
 181145 [host=godello0]
 181146 [host=godello0]
 181148 [host=himrod2]
 181149 [host=himrod2]
 181140 [host=godello0]
 181152 [host=himrod2]
 181151 [host=himrod2]
 181159 [host=albana0]
 181168 [host=himrod2]
 181174 [host=himrod2]
 181176 [host=albana0]
 181179 [host=albana0]
 181180 [host=himrod2]
 181181 [host=himrod2]
 181177 [host=albana0]
 181188 [host=himrod2]
 181200 [host=albana0]
 181203 [host=godello0]
 181201 [host=albana0]
 181215 [host=himrod0]
 181212 [host=himrod2]
 181232 [host=himrod2]
 181231 [host=himrod2]
 181236 [host=himrod0]
 181244 [host=himrod2]
 181271 [host=himrod2]
 181281 [host=himrod0]
 181299 [host=himrod0]
 181305 [host=himrod0]
 181312 [host=himrod0]
 181322 [host=himrod0]
 181327 [host=himrod2]
 181335 [host=himrod2]
 181345 [host=himrod2]
 181356 [host=himrod0]
 181361 [host=himrod2]
 181372 [host=himrod2]
 181375 [host=himrod0]
 181376 [host=himrod0]
 181379 [host=himrod0]
 181380 [host=himrod0]
 181382 [host=himrod0]
 181384 [host=himrod0]
 181386 [host=himrod0]
 181388 [host=himrod0]
 181389 [host=himrod0]
 181390 [host=himrod0]
 181391 [host=himrod0]
 181393 [host=himrod2]
 181394 [host=himrod2]
 181403 [host=himrod2]
 181409 [host=himrod2]
 181416 [host=himrod0]
 181419 [host=himrod0]
 181424 [host=himrod0]
 181428 [host=himrod2]
 181430 [host=himrod2]
 181436 [host=himrod0]
 181443 [host=himrod0]
 181446 [host=himrod2]
 181461 [host=himrod2]
 181463 [host=himrod2]
 181472 [host=himrod0]
 181478 [host=himrod0]
 181483 [host=himrod2]
 181485 [host=himrod0]
 181492 [host=himrod2]
 181493 [host=himrod2]
 181496 [host=himrod2]
 181544 [host=himrod2]
 181549 [host=himrod2]
 181901 [host=himrod0]
 181919 [host=godello0]
 181924 [host=himrod0]
 181928 [host=godello0]
 181918 [host=godello0]
 181952 [host=godello0]
 181993 [host=himrod2]
 182007 [host=himrod2]
 182006 [host=himrod2]
 182023 [host=himrod2]
 182029 [host=himrod2]
 182067 [host=himrod2]
 182096 [host=himrod2]
 182115 [host=himrod2]
 182116 [host=himrod2]
 182114 [host=himrod2]
 182171 [host=himrod2]
 182185 [host=pinot0]
 182194 [host=himrod0]
 182202 [host=himrod2]
 182208 [host=himrod0]
 182222 [host=himrod2]
 182231 [host=himrod2]
 182242 [host=himrod2]
 182263 [host=himrod0]
 182276 [host=himrod2]
 182298 [host=himrod2]
 182310 [host=himrod0]
 182338 [host=himrod0]
 182355 [host=himrod2]
 182422 [host=himrod2]
 182508 [host=himrod2]
 182520 [host=himrod2]
 182543 [host=himrod0]
 182555 [host=nobling1]
 182570 [host=himrod2]
 182584 [host=nobling1]
 182588 [host=himrod2]
 182606 [host=nobling1]
 182638 [host=pinot0]
 182707 [host=pinot0]
 182723 [host=nobling1]
 182730 [host=nobling1]
 182739 fail irrelevant
 182770 [host=nobling1]
 182796 fail irrelevant
 182801 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182814 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182835 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182845 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182854 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182865 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182877 pass b9e702c3c9bfe7bfb6bbcff44603add64e1787bf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 46de2eec93bffa0706e6229c0da2919763c8eb04 17dfc79ce9fd6cf508ee84a7d0d972d6abe268c2
 182878 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182880 pass 6ded9f50c3aa123fe581c42ff6c03789b9b593c1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e ea1b7a0733906b8425d948ae94fba63c32b1d425 5eb6bd7454e253f4907dbeb7aa982967b21698bc
 182881 pass f5c987fcac567b1f84a418826f30d8ef2b46860e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf aab4b38b5d77e3c65f44bacd56427a85b7392a11
 182879 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182882 pass 2d8c17a9b61ad298986daffe5373026c3b88c741 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf d3be806dae9c122fe94702cd9fa2e358a60828cd
 182883 pass 00b51e0d78a547dd78119ec44fcc74a01b6f79c8 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf db75dfdb11dc4e837585bf61cc25dc0c8f048288
 182885 pass beafabdae49c873adecdb7511dbebe9d4ff5c8f0 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 f805cf3e9b87584e16b03b5059b1163fd22bf5a0
 182886 pass bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102
 182887 pass 48de494bb4befce3b1c466c4ec132540d504047f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182888 pass 5443c2dc310d2c8eb15fb8eefd5057342e78cd0d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182889 fail 60d0f5802bceab3482c6be6dfde73a2af8373f9f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182890 pass ff7ddc02b273f9159ef46fdb67d99062f8e598d9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182891 pass b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182892 fail b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182893 pass b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182894 fail b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182895 pass b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182896 fail b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
Searching for interesting versions
 Result found: flight 174761 (pass), for basis pass
 For basis failure, parent search stopping at b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e, results HASH(0x5645aa41dc68) HASH(0x5645aa4265b0) HASH(0x5645aa41e868) For basis failure, parent search stopping at ff7ddc02b273f9159ef46fdb67d99062f8e598d9 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be2\
 5eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e, results HASH(0x5645aa419c30) For basis failure, parent search stopping at 5443c2dc310d2c8eb15fb8eefd5057342e78cd0d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e, results HASH(0x5645aa40f9f8) For basis failure, parent search stopping at 48de494bb4befce3b1c466c4ec132540d504047f 3d273dd05e51e5a1ffba3d98c7437ee\
 84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e, results HASH(0x5645aa4099b8) For basis failure, parent search stopping at bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 b2dd946ece74e2b6e0601f28caef72f4f9950102, results HASH(0x5645aa402d78) For basis failure, parent search stopping at beafabdae49c\
 873adecdb7511dbebe9d4ff5c8f0 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 f805cf3e9b87584e16b03b5059b1163fd22bf5a0, results HASH(0x5645a97aa110) For basis failure, parent search stopping at 00b51e0d78a547dd78119ec44fcc74a01b6f79c8 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf db75dfdb11dc4e837585bf61cc25dc0c8f048288, results HASH(0x5645aa4093b\
 8) For basis failure, parent search stopping at 2d8c17a9b61ad298986daffe5373026c3b88c741 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf d3be806dae9c122fe94702cd9fa2e358a60828cd, results HASH(0x5645aa3eaba8) For basis failure, parent search stopping at f5c987fcac567b1f84a418826f30d8ef2b46860e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf aab4b38b\
 5d77e3c65f44bacd56427a85b7392a11, results HASH(0x5645a97a1908) For basis failure, parent search stopping at 6ded9f50c3aa123fe581c42ff6c03789b9b593c1 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e ea1b7a0733906b8425d948ae94fba63c32b1d425 5eb6bd7454e253f4907dbeb7aa982967b21698bc, results HASH(0x5645a97a9ea0) For basis failure, parent search stopping at b9e702c3c9bfe7bfb6bbcff44603add64e1787bf 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3\
 a5b26a342e 46de2eec93bffa0706e6229c0da2919763c8eb04 17dfc79ce9fd6cf508ee84a7d0d972d6abe268c2, results HASH(0x5645a97c9080) HASH(0x5645a9844c38) Result found: flight 182801 (fail), for basis failure (at ancestor ~3092)
 Repro found: flight 182877 (pass), for basis pass
 Repro found: flight 182878 (fail), for basis failure
 0 revisions at b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
No revisions left to test, checking graph state.
 Result found: flight 182891 (pass), for last pass
 Result found: flight 182892 (fail), for first failure
 Repro found: flight 182893 (pass), for last pass
 Repro found: flight 182894 (fail), for first failure
 Repro found: flight 182895 (pass), for last pass
 Repro found: flight 182896 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu https://gitlab.com/qemu-project/qemu.git
  Bug introduced:  c5ea91da443b458352c1b629b490ee6631775cb4
  Bug not present: 305f6f62d9d250a32cdf090ddcb7e3a5b26a342e
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182896/


  (Revision log too long, omitted.)

neato: graph is too large for cairo-renderer bitmaps. Scaling by 0.234726 to fit
pnmtopng: 13 colors found
Revision graph left in /home/logs/results/bisect/qemu-mainline/build-amd64.xen-build.{dot,ps,png,html,svg}.
----------------------------------------
182896: tolerable ALL FAIL

flight 182896 qemu-mainline real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/182896/

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 build-amd64                   6 xen-build               fail baseline untested


jobs:
 build-amd64                                                  fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary



From xen-devel-bounces@lists.xenproject.org Sun Sep 10 22:09:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 22:09:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598825.933950 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfScg-00059Y-RH; Sun, 10 Sep 2023 22:09:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598825.933950; Sun, 10 Sep 2023 22:09:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfScg-00059R-OD; Sun, 10 Sep 2023 22:09:42 +0000
Received: by outflank-mailman (input) for mailman id 598825;
 Sun, 10 Sep 2023 22:09:42 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfScg-00059H-2K; Sun, 10 Sep 2023 22:09:42 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfScf-00057a-NT; Sun, 10 Sep 2023 22:09:41 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfScf-0004Xz-FL; Sun, 10 Sep 2023 22:09:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfScf-00072C-Ew; Sun, 10 Sep 2023 22:09:41 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=tSvrej2572BC008AQR+AYQHH8REsvKsBOiPcVvF1nk0=; b=zYmNAfvyPnu9GimPz6FVEwFGVJ
	6MwoKhMi6kNGt7JJ8NwVJUAtmNdhV+MVc36+9acRdmU1B73xj1YePGf2nSCJrvPJ/JC9ZaeaGNAVt
	rdRd7msx7MxLLCiyUcLhpzevp6VUFTUZqpm9CrcZ/BjVNNsNHOiP4tCmFMhRjBVjtYG0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182861-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182861: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=535a265d7f0dd50d8c3a4f8b4f3a452d56bd160f
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 22:09:41 +0000

flight 182861 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182861/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                535a265d7f0dd50d8c3a4f8b4f3a452d56bd160f
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   13 days
Failing since        182544  2023-08-28 20:42:13 Z   13 days   23 attempts
Testing same since   182861  2023-09-10 10:21:46 Z    0 days    1 attempts

------------------------------------------------------------
2269 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 274795 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 10 22:30:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 22:30:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598837.933965 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfSwV-00008d-Hi; Sun, 10 Sep 2023 22:30:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598837.933965; Sun, 10 Sep 2023 22:30:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfSwV-00008W-El; Sun, 10 Sep 2023 22:30:11 +0000
Received: by outflank-mailman (input) for mailman id 598837;
 Sun, 10 Sep 2023 22:30:11 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfSwV-00008L-1U; Sun, 10 Sep 2023 22:30:11 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfSwU-0005cf-L2; Sun, 10 Sep 2023 22:30:10 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfSwU-0004zR-9O; Sun, 10 Sep 2023 22:30:10 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfSwU-0006C5-8t; Sun, 10 Sep 2023 22:30:10 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=bdt0FRhgtamdnI26DXz0i9McOh2q1d+3GPQl7VlUyHU=; b=uos0UY4LMT7hbcBss93XJ03s8T
	eB63bF6rapqZ99/eI0HefZ/HFpJ8tlizvgXN9Wgq2HJuRYt8PVEwepjgHJC/yDYlOWu/m1M6HQfr3
	Oo5UHmj8Smql/XVbjtfR8+savAopwoMoPfgZc3QfumKUAmx7S2G++4EFzevkY4y7Rjeg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182884-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182884: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 22:30:10 +0000

flight 182884 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182884/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    3 days
Failing since        182723  2023-09-07 18:19:05 Z    3 days   13 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    2 days   10 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 10 23:47:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 10 Sep 2023 23:47:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598854.933999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfU8e-0007f2-94; Sun, 10 Sep 2023 23:46:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598854.933999; Sun, 10 Sep 2023 23:46:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfU8e-0007ev-6T; Sun, 10 Sep 2023 23:46:48 +0000
Received: by outflank-mailman (input) for mailman id 598854;
 Sun, 10 Sep 2023 23:46:47 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfU8c-0007el-UY; Sun, 10 Sep 2023 23:46:46 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfU8c-0007LS-Nd; Sun, 10 Sep 2023 23:46:46 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfU8c-0006eh-6z; Sun, 10 Sep 2023 23:46:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfU8c-0003MI-6V; Sun, 10 Sep 2023 23:46:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=uftRaj1BraRBuvaEF7YckuHHdqjvgA2sB/Zeg5HMuAA=; b=uPFJD2vLVHi/CYhf5AflSrryMF
	KMBGxgxf81rDtz4X65zMV5Wr4tWMOy0ldUB0TJNsgxiFUHi1bKtiq/90DXhvgsfN5pIkwzF4T48dw
	A6wYmMpwVbqJ8IzwOk/AhmwTeVAX1AnlxiSc1+FjRCnWQpHcZf2/ax2hWaHKRtrpeY4U=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182900-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182900: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-arm64-pvops:kernel-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 10 Sep 2023 23:46:46 +0000

flight 182900 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182900/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-arm64-pvops             6 kernel-build             fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    3 days
Failing since        182723  2023-09-07 18:19:05 Z    3 days   14 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    2 days   11 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            fail    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 01:08:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 01:08:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598873.934040 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfVPp-0001sE-68; Mon, 11 Sep 2023 01:08:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598873.934040; Mon, 11 Sep 2023 01:08:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfVPp-0001s7-1y; Mon, 11 Sep 2023 01:08:37 +0000
Received: by outflank-mailman (input) for mailman id 598873;
 Mon, 11 Sep 2023 01:08:36 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uN2d=E3=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qfVPn-0001s1-RT
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 01:08:36 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2060a.outbound.protection.outlook.com
 [2a01:111:f400:7d00::60a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b87a292a-503f-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 03:08:31 +0200 (CEST)
Received: from AM4PR05CA0004.eurprd05.prod.outlook.com (2603:10a6:205::17) by
 AS4PR08MB7480.eurprd08.prod.outlook.com (2603:10a6:20b:4e7::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Mon, 11 Sep
 2023 01:08:27 +0000
Received: from AM7EUR03FT046.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:205:0:cafe::cd) by AM4PR05CA0004.outlook.office365.com
 (2603:10a6:205::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34 via Frontend
 Transport; Mon, 11 Sep 2023 01:08:26 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT046.mail.protection.outlook.com (100.127.140.78) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.11 via Frontend Transport; Mon, 11 Sep 2023 01:08:25 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Mon, 11 Sep 2023 01:08:25 +0000
Received: from f3a178bde539.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 2344B7B5-6641-436A-81E0-A143EAECB86F.1; 
 Mon, 11 Sep 2023 01:08:15 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f3a178bde539.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 11 Sep 2023 01:08:15 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS8PR08MB8371.eurprd08.prod.outlook.com (2603:10a6:20b:56a::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Mon, 11 Sep
 2023 01:08:12 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 01:08:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b87a292a-503f-11ee-8784-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Mv3gctODV4hLLyY9fhyTdUrJT3OZJMCcvvS3z+oVtTY=;
 b=gXH6DDdTjkIHWf1M0o8LypfUSl0JjeN8JhKr6qUqoVPmBxmQXxDnHO8V/CnXU/ySaDwtN+OsoHGzaaV+iJgVakGgAEyb1qzMmvqUVK98euKLkuCgqjJ4txm54DhCtClcFwcV+nEMds+v68/eE1qNiDKEpv7EibW5Sbog9Altgus=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 2ed8532f611e024a
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QGWDytTtptzu55VFxiC8FjJCyLxcAWFEi//H4SVfWYm4aRL9sE3OsdyuhtKw48Zfu5bBPzdc32wYo5Ws9nNrW/yP/0HErSbzPAyFmooGkFOZs6KJgmxPEhvE5SbzY/khuxpYybJ5+iSbYhifd2o+/nA7geiLr46sjXaIeB932pHBSvkRJo5TAR1Xek4TtWAGabsvU9ApClQWP28TJrL3n3caOIuRH97sJUoL+NVJQjUyGVmu8I61nZ6RpNrD0DIP9FE1zd3Lay7C9B/tM0KFqqVABClRm64+XjRyVrhhO1smXW4Z+AP19SgyJqcsEhxVKRPrLgDv/7eWUr1cxHaYJA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Mv3gctODV4hLLyY9fhyTdUrJT3OZJMCcvvS3z+oVtTY=;
 b=MTBhuYO8nDcaBYKCzeQ4Si8bXzbvBIku9WGJ5Fp1tvq+H/+fAfg9o0fNxJNRO+c1Dijon5ulD2BA/Kd1AW7CvLsvxjYODE6R2FEL/8W4kr73T+MUKlbHlkVmrnNo1/UmVDO/6CfKBTguhThbiRLSgd5ue5dknEi9bf1yEkahgHFj5Mne9iSldgUD186pH0ha3M5VROn0mNXCWYIA3jtQ79I3HfJjKLHw2U1SdIP1b6skjcUsx3hXaCbD6jOn2s91u1zxxYIA9G7iHoZ0/LlqXfk8906BhVHSEkHiHp5srVGLNFhMWw6vUItrmrj1umi+AL82H7YWarsCuIpDSy3Z/A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Mv3gctODV4hLLyY9fhyTdUrJT3OZJMCcvvS3z+oVtTY=;
 b=gXH6DDdTjkIHWf1M0o8LypfUSl0JjeN8JhKr6qUqoVPmBxmQXxDnHO8V/CnXU/ySaDwtN+OsoHGzaaV+iJgVakGgAEyb1qzMmvqUVK98euKLkuCgqjJ4txm54DhCtClcFwcV+nEMds+v68/eE1qNiDKEpv7EibW5Sbog9Altgus=
From: Henry Wang <Henry.Wang@arm.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
	"sstabellini@kernel.org" <sstabellini@kernel.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Jan Beulich <jbeulich@suse.com>,
	"jgross@suse.com" <jgross@suse.com>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
	"community.manager@xenproject.org" <community.manager@xenproject.org>
Subject: Xen 4.18 release: Reminder about feature/code freeze
Thread-Topic: Xen 4.18 release: Reminder about feature/code freeze
Thread-Index: AQHZ5EwwAcMhmoMxmE+/YPpcDc9wAA==
Date: Mon, 11 Sep 2023 01:08:12 +0000
Message-ID:
 <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS8PR08MB8371:EE_|AM7EUR03FT046:EE_|AS4PR08MB7480:EE_
X-MS-Office365-Filtering-Correlation-Id: 941b8d80-19a3-4719-6148-08dbb26399ff
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 0oZvnJ9WDSds9TqAcD1ZDUJL+VXOhOJiOmIGVf1umx9nI+5EZoYp1k8SAH3b2e7zJvSJBs9Ww+vb6LSBCScFPH/V0RdpPAj1WTy+ZpubvlUoB5iGA3eoKl8MSmrWoqZJWwITZKF8fdTFwmqocEv95r4L5Jh7kApxdd2zuSb/gAFP3S+l3K5Z8YfH5o17VcENCDzpFlPDGLkGM1Fm2gfzMvf6bucknVZk7DlRaeoKDS7geSJHkAmWjCoqKoPY4SH00Ql9dn/3r2bO+wP2ojC7O4U8Im+rrZhq+J81nnzHEsU3V4LqD7nnHMnLw3TeVtSPi65TXlVSbng/0yg5XddR6+/OhTz3EMScEYQTaWdd+KuE7819kxr9ZHxv2ZmSlFBtWZHgetP6KdFpbkKQKS/5SeNy4ESQ3J6T7Ae+A7UvaHcABNga6chzVKxpODnpNn4ayubLBugXhjrHIWjj+e046kbwDy6Eo1QTrSxelIjaRgqvQCXoToWx03MkoDDCWBBivy1NFmdS/de5eIWVvpw5b+O3cPyUvVh+GdZabO3hVUarnEsSsWoDwu5eWSnRt+ye+xD9UWGj3KYd2N8mKBBW0u5dEqPUOKmgYUu683FjYwMcIQ/FaGJ2OzZrM44wZJ/tByr3V8xRHIEyl8RQ64SLIg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(396003)(366004)(136003)(346002)(186009)(1800799009)(451199024)(2906002)(166002)(86362001)(26005)(33656002)(966005)(71200400001)(478600001)(7696005)(6506007)(9686003)(122000001)(38070700005)(83380400001)(38100700002)(55016003)(5660300002)(41300700001)(52536014)(8936002)(8676002)(4326008)(6916009)(316002)(66446008)(64756008)(54906003)(66476007)(66946007)(76116006)(66556008);DIR:OUT;SFP:1101;
Content-Type: multipart/alternative;
	boundary="_000_AS8PR08MB79918D6EE559A2807DC6D56792F2AAS8PR08MB7991eurp_"
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8371
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT046.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	23f71c73-b6b0-4425-28f9-08dbb26391cb
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3ncCt3qXbgI7lhpGaQvAY0/u3kXfKRHjn+gogLwPeVaLYDA/oLEO7KsXCA/kSLpXy3kUq/1IjW3v5MPSb2wQBgAPbtCMZMi5lG5vUJyRBdMebH1Ytod5ojeP5qWnoBA2VM0PWbzgO7m60kLPEzdEURXeM7MVWfa3b923Ppt40pVfWaOfYdhA3XwjVWzYHYSsrjt/zzR1cRMp3IHBjnTPOZLHO8QhN+LDyn4yO6FwriS4LVbmTsS9nQidO3fnku22fT25ffrqHuyXpFb7JtHZ7jGon15ETBHCm48CbNW29yrCUNl3rnwvbVFTv8t0LB5YPIG67OfqkqIT57zbd8fZJpQHALxkFwGUJLwG3B5MuzlIDHWRlfQhMcvw9EqxE8BswVU1j7Ef2gjTvrPVNB5m5TjXs7yzLjwspR0kKlygzvub7q+AwSHozeTGHUVtDK7PjnEf+MCvnAf9DVTUsnSfXfQAEtPMaUsfa8yS6rYTXEBEIbgVGIUdNb/CeBGmKPG6nQHJ+p5C3LDtWzYcOQGkgJazAQXEr1MwcSkMp4qxlOja3HFhzJcUq5kCUog2hrqVZ10mBzVI9g/PXum+4E09RkMZ34YHDEgOhl5AoF6Y6fGwKQWIsMJrqkToof7FEX3noL29noKLRXjWTJVZfu6KGgGjcUV6RqwGDDYL4L+ri8kHtCwPV+WORyR53Q3rTlUdZLwOaO3iUHogXsXvIbSn733nW/TNNoAIDpkI+M5H92g=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(346002)(396003)(376002)(82310400011)(186009)(451199024)(1800799009)(36840700001)(46966006)(9686003)(7696005)(6506007)(478600001)(83380400001)(966005)(2906002)(336012)(54906003)(4326008)(6916009)(8936002)(316002)(5660300002)(70206006)(8676002)(41300700001)(70586007)(52536014)(82740400003)(26005)(36860700001)(166002)(47076005)(86362001)(55016003)(40480700001)(33656002)(356005)(81166007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 01:08:25.7433
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 941b8d80-19a3-4719-6148-08dbb26399ff
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT046.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7480

--_000_AS8PR08MB79918D6EE559A2807DC6D56792F2AAS8PR08MB7991eurp_
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hi everyone,

This is the reminder that we are currently in the feature freeze. I apologi=
se
for the delay.

I decided to make the code freeze date on Fri Sep 22, 2023, to give people =
more
time to react because of my late reminder about feature freeze. The hard co=
de
freeze date will remain unchanged, i.e. Fri Oct 6, 2023. So currently we ha=
ve 2
weeks before code freeze and another 4 weeks before hard code freeze. If
everything goes well, we can cut 4.18 rc1 at Fri Sep 29, 2023.

Also, below is the critical items on my list for 4.18 release:
1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
https://gitlab.com/xen-project/xen/-/issues/114

2. tools: Switch to non-truncating XENVER_* ops
https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3@cit=
rix.com/

3. dom0less vs xenstored setup race Was: xen | Failed pipeline for staging =
| 6a47ba2f
https://marc.info/?l=3Dxen-devel&m=3D168312468808977
https://marc.info/?l=3Dxen-devel&m=3D168312687610283

4. The proper eIBRS support for x86
https://lore.kernel.org/xen-devel/ec8e75da-743b-50dc-4665-854c446c974e@citr=
ix.com/

5. [PATCH 1/2] credit: Limit load balancing to once per millisecond
https://lore.kernel.org/xen-devel/20230630113756.672607-1-george.dunlap@clo=
ud.com/

6. [PATCH 0/2]  Revoke IOMEM/IO port/IRQ permissions on PCI detach for HVM =
guest
https://lore.kernel.org/xen-devel/20230809103305.30561-1-julien@xen.org/

7. [PATCH v2 0/8] Fixes to debugging facilities
https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gmai=
l.com/

Kind regards,
Henry

--_000_AS8PR08MB79918D6EE559A2807DC6D56792F2AAS8PR08MB7991eurp_
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<html xmlns:o=3D"urn:schemas-microsoft-com:office:office" xmlns:w=3D"urn:sc=
hemas-microsoft-com:office:word" xmlns:m=3D"http://schemas.microsoft.com/of=
fice/2004/12/omml" xmlns=3D"http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Diso-8859-=
1">
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:DengXian;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:"\@DengXian";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-ligatures:standardcontextual;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri",sans-serif;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style>
</head>
<body lang=3D"en-CN" link=3D"#0563C1" vlink=3D"#954F72" style=3D"word-wrap:=
break-word">
<div class=3D"WordSection1">
<p class=3D"MsoNormal">Hi everyone,<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">This is the reminder that we are currently in the fe=
ature freeze. I apologise<o:p></o:p></p>
<p class=3D"MsoNormal">for the delay.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">I decided to make the code freeze date on Fri Sep 22=
, 2023, to give people more<o:p></o:p></p>
<p class=3D"MsoNormal">time to react because of my late reminder about feat=
ure freeze. The hard code<o:p></o:p></p>
<p class=3D"MsoNormal">freeze date will remain unchanged, i.e. Fri Oct 6, 2=
023. So currently we have 2<o:p></o:p></p>
<p class=3D"MsoNormal">weeks before code freeze and another 4 weeks before =
hard code freeze. If<o:p></o:p></p>
<p class=3D"MsoNormal">everything goes well, we can cut 4.18 rc1 at Fri Sep=
 29, 2023.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Also, below is the critical items on my list for 4.1=
8 release:<o:p></o:p></p>
<p class=3D"MsoNormal">1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of=
 N)<o:p></o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://gitlab.com/xen-project/xen/-/issu=
es/114">https://gitlab.com/xen-project/xen/-/issues/114</a><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">2. tools: Switch to non-truncating XENVER_* ops<o:p>=
</o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://lore.kernel.org/xen-devel/2023011=
7135336.11662-1-andrew.cooper3@citrix.com/">https://lore.kernel.org/xen-dev=
el/20230117135336.11662-1-andrew.cooper3@citrix.com/</a><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">3. dom0less vs xenstored setup race Was: xen | Faile=
d pipeline for staging | 6a47ba2f<o:p></o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://marc.info/?l=3Dxen-devel&amp;m=3D=
168312468808977">https://marc.info/?l=3Dxen-devel&amp;m=3D168312468808977</=
a><o:p></o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://marc.info/?l=3Dxen-devel&amp;m=3D=
168312687610283">https://marc.info/?l=3Dxen-devel&amp;m=3D168312687610283</=
a><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">4. The proper eIBRS support for x86<o:p></o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://lore.kernel.org/xen-devel/ec8e75d=
a-743b-50dc-4665-854c446c974e@citrix.com/">https://lore.kernel.org/xen-deve=
l/ec8e75da-743b-50dc-4665-854c446c974e@citrix.com/</a><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">5. [PATCH 1/2] credit: Limit load balancing to once =
per millisecond<o:p></o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://lore.kernel.org/xen-devel/2023063=
0113756.672607-1-george.dunlap@cloud.com/">https://lore.kernel.org/xen-deve=
l/20230630113756.672607-1-george.dunlap@cloud.com/</a><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">6. [PATCH 0/2]&nbsp; Revoke IOMEM/IO port/IRQ permis=
sions on PCI detach for HVM guest<o:p></o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://lore.kernel.org/xen-devel/2023080=
9103305.30561-1-julien@xen.org/">https://lore.kernel.org/xen-devel/20230809=
103305.30561-1-julien@xen.org/</a><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">7. [PATCH v2 0/8] Fixes to debugging facilities<o:p>=
</o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://lore.kernel.org/xen-devel/21cc28b=
9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/">https://lore.kernel.org/xen-devel=
/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/</a><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Kind regards,<o:p></o:p></p>
<p class=3D"MsoNormal">Henry<o:p></o:p></p>
</div>
</body>
</html>

--_000_AS8PR08MB79918D6EE559A2807DC6D56792F2AAS8PR08MB7991eurp_--


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 02:55:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 02:55:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598883.934055 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfX4c-0005d6-Ai; Mon, 11 Sep 2023 02:54:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598883.934055; Mon, 11 Sep 2023 02:54:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfX4c-0005cz-88; Mon, 11 Sep 2023 02:54:50 +0000
Received: by outflank-mailman (input) for mailman id 598883;
 Mon, 11 Sep 2023 02:54:48 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfX4a-0005cp-Pz; Mon, 11 Sep 2023 02:54:48 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfX4Z-00067P-Q7; Mon, 11 Sep 2023 02:54:47 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfX4Z-0002jW-Dz; Mon, 11 Sep 2023 02:54:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfX4Z-0002J9-DQ; Mon, 11 Sep 2023 02:54:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=bP3+PwCheEeqlBsizOPOO7xz8Z87G5RbWWQhURj2dVc=; b=Coa4uxCONh3XhRcs72MAjNQ8x5
	RNnkJ859o6RKmmmZcRvuQGlW310Y/Vt8iUNKziNA9WsjYalk6HgZVFZ82cRSIFycRmcdpo7aucWfK
	UQcgWdXViF/sc8Ng8IIukEmTugdi4TnkH5QNZaZK98K+6U8ybK8giM2NOZvX0eJoPP2E=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182907-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182907: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 02:54:47 +0000

flight 182907 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182907/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    4 days
Failing since        182723  2023-09-07 18:19:05 Z    3 days   15 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    2 days   12 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 03:49:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 03:49:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598894.934072 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfXvA-0003GK-9O; Mon, 11 Sep 2023 03:49:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598894.934072; Mon, 11 Sep 2023 03:49:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfXvA-0003GD-5f; Mon, 11 Sep 2023 03:49:08 +0000
Received: by outflank-mailman (input) for mailman id 598894;
 Mon, 11 Sep 2023 03:49:06 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfXv8-0003G3-DH; Mon, 11 Sep 2023 03:49:06 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfXv8-0007oL-5V; Mon, 11 Sep 2023 03:49:06 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfXv7-00057P-TZ; Mon, 11 Sep 2023 03:49:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfXv7-0002br-T6; Mon, 11 Sep 2023 03:49:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=whiZgcvk+cxQCrkH9hP5abiys0ziXv3ZbR9c6oQqe18=; b=XKeMcqM0vzCnsB+uPyv6DNdK/o
	7fgE8WGtEr8UIcCj/opm0sdTXdfxDO1HX4dZkM+/m3AWA7dPmxx5KmuUIrtWP04LwmsBr+lsFzvVF
	AjLj0FII2n335CKKCzcS7ZjI2UNrB9upvteVJ48zKXCrdoHetawc34fRbxcQAaucjONw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182911-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182911: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=0bcc503595fdd8036701dab54eabe4f40ecbb768
X-Osstest-Versions-That:
    ovmf=b240eab03530f063ef5438497d70a731b19a201e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 03:49:05 +0000

flight 182911 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182911/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 0bcc503595fdd8036701dab54eabe4f40ecbb768
baseline version:
 ovmf                 b240eab03530f063ef5438497d70a731b19a201e

Last test of basis   182786  2023-09-08 22:40:42 Z    2 days
Testing same since   182911  2023-09-11 01:40:50 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Mike Beaton <mjsbeaton@gmail.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   b240eab035..0bcc503595  0bcc503595fdd8036701dab54eabe4f40ecbb768 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 04:05:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 04:05:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598906.934112 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYB1-0006bQ-Gb; Mon, 11 Sep 2023 04:05:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598906.934112; Mon, 11 Sep 2023 04:05:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYB1-0006bD-C1; Mon, 11 Sep 2023 04:05:31 +0000
Received: by outflank-mailman (input) for mailman id 598906;
 Mon, 11 Sep 2023 04:05:30 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfYB0-0005n2-CT
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 04:05:30 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 7124c7fa-5058-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 06:05:28 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id BEAFFD75;
 Sun, 10 Sep 2023 21:06:04 -0700 (PDT)
Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com
 [10.169.190.94])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id A21BE3F67D;
 Sun, 10 Sep 2023 21:05:24 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7124c7fa-5058-11ee-9b0d-b553b5be7939
From: Penny Zheng <Penny.Zheng@arm.com>
To: xen-devel@lists.xenproject.org
Cc: michal.orzel@amd.com,
	wei.chen@arm.com,
	Penny Zheng <Penny.Zheng@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>
Subject: [PATCH v4 03/10] xen/arm: introduce allocate_domheap_memory and guest_physmap_memory
Date: Mon, 11 Sep 2023 12:04:35 +0800
Message-Id: <20230911040442.2541398-4-Penny.Zheng@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911040442.2541398-1-Penny.Zheng@arm.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

We split the code of allocate_bank_memory into two parts,
allocate_domheap_memory and guest_physmap_memory.

One is about allocating guest RAM from heap, which could be re-used later for
allocating static shared memory from heap when host address is not provided.
The other is building up guest P2M mapping.

We also define a set of MACRO helpers to access common fields in data
structure of "meminfo" type, e.g. "struct meminfo" is one of them, and
later new "struct shm_meminfo" is also one of them.
This kind of structures must have the following characteristics:
- an array of "struct membank"
- a member called "nr_banks" indicating current array size
- a field indicating the maximum array size
When introducing a new data structure, according callbacks with function type
"retrieve_fn" shall be defined for using MACRO helpers.
This commit defines callback "retrieve_meminfo" for data structure
"struct meminfo".

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
---
v1 -> v2:
-  define a set of MACRO helpers to access common fields in data structure of
"meminfo" type. "struct meminfo" is one of them, and according callback
"retrieve_meminfo" is also introduced here.
- typo of changing 1ULL to 1UL
---
v2 -> v3
- rebase and no changes
---
v3 -> v4:
rebase and no change
---
 xen/arch/arm/domain_build.c      | 119 ++++++++++++++++++++++++-------
 xen/arch/arm/include/asm/setup.h |  33 +++++++++
 2 files changed, 127 insertions(+), 25 deletions(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 4901664682..d5945e421d 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -99,6 +99,26 @@ int __init parse_arch_dom0_param(const char *s, const char *e)
  */
 #define DOM0_FDT_EXTRA_SIZE (128 + sizeof(struct fdt_reserve_entry))
 
+static void __init retrieve_meminfo(void *mem, unsigned int *max_mem_banks,
+                                    struct membank **bank,
+                                    unsigned int **nr_banks)
+{
+    struct meminfo *meminfo = (struct meminfo *)mem;
+
+    if ( max_mem_banks )
+        *max_mem_banks = NR_MEM_BANKS;
+
+    if ( nr_banks )
+        *nr_banks = &(meminfo->nr_banks);
+
+    if ( bank )
+        *bank = meminfo->bank;
+}
+
+retrieve_fn __initdata retrievers[MAX_MEMINFO_TYPE] = {
+    [NORMAL_MEMINFO] = retrieve_meminfo,
+};
+
 unsigned int __init dom0_max_vcpus(void)
 {
     if ( opt_dom0_max_vcpus == 0 )
@@ -413,34 +433,20 @@ static void __init allocate_memory_11(struct domain *d,
     }
 }
 
-static bool __init allocate_bank_memory(struct domain *d,
-                                        struct kernel_info *kinfo,
-                                        gfn_t sgfn,
-                                        paddr_t tot_size)
+static bool __init allocate_domheap_memory(struct domain *d,
+                                           paddr_t tot_size,
+                                           void *mem, enum meminfo_type type)
 {
-    int res;
     struct page_info *pg;
-    struct membank *bank;
     unsigned int max_order = ~0;
-
-    /*
-     * allocate_bank_memory can be called with a tot_size of zero for
-     * the second memory bank. It is not an error and we can safely
-     * avoid creating a zero-size memory bank.
-     */
-    if ( tot_size == 0 )
-        return true;
-
-    bank = &kinfo->mem.bank[kinfo->mem.nr_banks];
-    bank->start = gfn_to_gaddr(sgfn);
-    bank->size = tot_size;
+    unsigned int *nr_banks = GET_NR_BANKS(mem, type);
 
     while ( tot_size > 0 )
     {
         unsigned int order = get_allocation_size(tot_size);
+        struct membank *membank;
 
         order = min(max_order, order);
-
         pg = alloc_domheap_pages(d, order, 0);
         if ( !pg )
         {
@@ -460,15 +466,78 @@ static bool __init allocate_bank_memory(struct domain *d,
             continue;
         }
 
-        res = guest_physmap_add_page(d, sgfn, page_to_mfn(pg), order);
-        if ( res )
-        {
-            dprintk(XENLOG_ERR, "Failed map pages to DOMU: %d", res);
+        if ( *nr_banks == MAX_MEM_BANKS(type) )
             return false;
-        }
+
+        membank = GET_MEMBANK(mem, type, *nr_banks);
+        membank->start = mfn_to_maddr(page_to_mfn(pg));
+        membank->size = 1ULL << (PAGE_SHIFT + order);
+        (*nr_banks)++;
+        tot_size -= membank->size;
+    }
+
+    return true;
+}
+
+static int __init guest_physmap_memory(struct domain *d,
+                                       void *mem, enum meminfo_type type,
+                                       gfn_t sgfn)
+{
+    unsigned int i;
+    int res;
+    unsigned int *nr_banks = GET_NR_BANKS(mem, type);
+
+    for ( i = 0; i < *nr_banks; i++ )
+    {
+        struct membank *membank = GET_MEMBANK(mem, type, i);
+        paddr_t start = membank->start;
+        paddr_t size = membank->size;
+        unsigned int order = get_order_from_bytes(size);
+
+        /* Size must be power of two */
+        BUG_ON(!size || (size & (size - 1)));
+        res = guest_physmap_add_page(d, sgfn, maddr_to_mfn(start), order);
+        if ( res )
+            return res;
 
         sgfn = gfn_add(sgfn, 1UL << order);
-        tot_size -= (1ULL << (PAGE_SHIFT + order));
+    }
+
+    return 0;
+}
+
+static bool __init allocate_bank_memory(struct domain *d,
+                                        struct kernel_info *kinfo,
+                                        gfn_t sgfn,
+                                        paddr_t total_size)
+{
+    struct membank *bank;
+    struct meminfo host = { 0 };
+
+    /*
+     * allocate_bank_memory can be called with a total_size of zero for
+     * the second memory bank. It is not an error and we can safely
+     * avoid creating a zero-size memory bank.
+     */
+    if ( total_size == 0 )
+        return true;
+
+    bank = &kinfo->mem.bank[kinfo->mem.nr_banks];
+    bank->start = gfn_to_gaddr(sgfn);
+    bank->size = total_size;
+
+    if ( !allocate_domheap_memory(d, total_size, (void *)&host, NORMAL_MEMINFO) )
+    {
+        printk(XENLOG_ERR "Failed to allocate (%"PRIpaddr"MB) pages to %pd\n",
+               total_size >> 20, d);
+        return false;
+    }
+
+    if ( guest_physmap_memory(d, (void *)&host, NORMAL_MEMINFO, sgfn) )
+    {
+        printk(XENLOG_ERR "Failed to map (%"PRIpaddr"MB) pages to %pd\n",
+               total_size >> 20, d);
+        return false;
     }
 
     kinfo->mem.nr_banks++;
diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index 3c5fc23eb1..ff543fc361 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -57,6 +57,39 @@ struct meminfo {
     struct membank bank[NR_MEM_BANKS];
 };
 
+enum meminfo_type {
+    NORMAL_MEMINFO,
+    MAX_MEMINFO_TYPE,
+};
+
+/*
+ * Define a set of MACRO helpers to access meminfo_type, like "struct meminfo"
+ * as type of NORMAL_MEMINFO, etc.
+ * This kind of structure must have a array of "struct membank",
+ * a member called nr_banks indicating the current array size, and also a field
+ * indicating the maximum array size.
+ */
+typedef void (*retrieve_fn)(void *, unsigned int *, struct membank **,
+                            unsigned int **);
+
+#define MAX_MEM_BANKS(type) ({                              \
+    unsigned int _max_mem_banks;                            \
+    retrievers[type](NULL, &_max_mem_banks, NULL, NULL);    \
+    _max_mem_banks;                                         \
+})
+
+#define GET_MEMBANK(mem, type, index) ({                    \
+    struct membank *_bank;                                  \
+    retrievers[type]((void *)(mem), NULL, &_bank, NULL);    \
+    &(_bank[index]);                                        \
+})
+
+#define GET_NR_BANKS(mem, type) ({                          \
+    unsigned int *_nr_banks;                                \
+    retrievers[type]((void *)mem, NULL, NULL, &_nr_banks);  \
+    _nr_banks;                                              \
+})
+
 /*
  * The domU flag is set for kernels and ramdisks of "xen,domain" nodes.
  * The purpose of the domU flag is to avoid getting confused in
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 04:05:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 04:05:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598903.934082 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYAs-0005nZ-JK; Mon, 11 Sep 2023 04:05:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598903.934082; Mon, 11 Sep 2023 04:05:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYAs-0005nS-Gi; Mon, 11 Sep 2023 04:05:22 +0000
Received: by outflank-mailman (input) for mailman id 598903;
 Mon, 11 Sep 2023 04:05:21 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfYAr-0005n2-Jx
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 04:05:21 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 6a8e3e66-5058-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 06:05:17 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A36EFD75;
 Sun, 10 Sep 2023 21:05:53 -0700 (PDT)
Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com
 [10.169.190.94])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id C7DDA3F67D;
 Sun, 10 Sep 2023 21:05:13 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6a8e3e66-5058-11ee-9b0d-b553b5be7939
From: Penny Zheng <Penny.Zheng@arm.com>
To: xen-devel@lists.xenproject.org
Cc: michal.orzel@amd.com,
	wei.chen@arm.com,
	Penny Zheng <Penny.Zheng@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v4 00/10] Follow-up static shared memory PART I
Date: Mon, 11 Sep 2023 12:04:32 +0800
Message-Id: <20230911040442.2541398-1-Penny.Zheng@arm.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

There are some unsolving issues on current 4.17 static shared memory
feature[1], including:
- In order to avoid keeping growing 'membank', having the shared memory
info in separate structures is preferred.
- Missing implementation on having the host address optional in
"xen,shared-mem" property
- Removing static shared memory from extended regions
- Missing reference release on foreign superpage
- Fix duplicated /reserved-memory node on Dom0
- Missing static shm node declaration on guest /memory node
- Missing "xen,offset" feature, which is introduced in Linux DOC[2]

All above objects have been divided into two parts to complete. And this
patch serie is PART I.

[1] https://lore.kernel.org/all/20220908135513.1800511-1-Penny.Zheng@arm.com/
[2] https://www.kernel.org/doc/Documentation/devicetree/bindings/reserved-memory/xen%2Cshared-memory.txt

Penny Zheng (10):
  xen/arm: remove stale addr_cells/size_cells in assign_shared_memory
  xen/arm: re-define a set of data structures for static shared memory
    region
  xen/arm: introduce allocate_domheap_memory and guest_physmap_memory
  xen/arm: use paddr_assigned to indicate whether host address is
    provided
  xen/arm: support static shared memory when host address not provided
  xen/arm: remove shm holes for extended regions
  xen/p2m: put reference for superpage
  xen/docs: refine docs about static shared memory
  xen/arm: fix duplicate /reserved-memory node in Dom0
  xen/arm: reate another /memory node for static shm

 docs/misc/arm/device-tree/booting.txt |  52 +-
 xen/arch/arm/bootfdt.c                | 125 ++++-
 xen/arch/arm/domain_build.c           | 780 ++++++++++++++++++++------
 xen/arch/arm/include/asm/kernel.h     |  11 +-
 xen/arch/arm/include/asm/setup.h      |  57 +-
 xen/arch/arm/p2m.c                    |  58 +-
 6 files changed, 856 insertions(+), 227 deletions(-)

-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 04:05:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 04:05:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598905.934101 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYAy-0006JT-5d; Mon, 11 Sep 2023 04:05:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598905.934101; Mon, 11 Sep 2023 04:05:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYAy-0006JK-2n; Mon, 11 Sep 2023 04:05:28 +0000
Received: by outflank-mailman (input) for mailman id 598905;
 Mon, 11 Sep 2023 04:05:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfYAx-0005n2-08
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 04:05:27 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 6ef891a7-5058-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 06:05:24 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 2C334D75;
 Sun, 10 Sep 2023 21:06:01 -0700 (PDT)
Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com
 [10.169.190.94])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id B67A33F67D;
 Sun, 10 Sep 2023 21:05:20 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6ef891a7-5058-11ee-9b0d-b553b5be7939
From: Penny Zheng <Penny.Zheng@arm.com>
To: xen-devel@lists.xenproject.org
Cc: michal.orzel@amd.com,
	wei.chen@arm.com,
	Penny Zheng <Penny.Zheng@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>
Subject: [PATCH v4 02/10] xen/arm: re-define a set of data structures for static shared memory region
Date: Mon, 11 Sep 2023 12:04:34 +0800
Message-Id: <20230911040442.2541398-3-Penny.Zheng@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911040442.2541398-1-Penny.Zheng@arm.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This commit introduces a set of separate data structures to deal with
static shared memory at different stages.

In boot-time host device tree parsing, we introduce a new structure
"struct shm_node" and a new field "shm_info" in bootinfo to describe and
store parsed shm info.
only SHMID and "nr_borrowers", which describes the number of borrower domain,
are considered here for per shm node.
We also introduce a new local global data "shm_data" in bootfdt.c, in which,
reserved memory bank is recorded together with shm node, to assist doing
shm node verification.

In order to apply above changes in acquire_nr_borrower_domain, we now use SHMID
to iterate "shminfo" to find requested shm node, then acquiring the information
of "nr_borrowers".

In the last, a new anonymized structure "shminfo", which is a array of
compound structure that contains SHMID and a "struct membank membank"
describing shared memory regions in guest address space, is created in "kinfo"
when dealing with domain information.

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
---
v1 -> v2:
- As the original "struct shm_membank" was making reserving memory more
complex and actually memory information could be still got from host Device\
Tree when dealing with domain construction, we introduce a new simple structure
"struct shm_node" in bootinfo to only store SHMID and "nr_borrowers"
- Further restrict the scope of the local variable
"struct meminfo *mem = &bootinfo.reserved_mem"
- Introduce a new local global data "shm_data" in bootfdt.c. In which, reserved
memory bank is recorded together with the shm node, to assist doing shm node
verification.
- Define a set of local variables that point to
"shm_data.shm_nodes[i].membank->start", etc, to make the code more readable.
- Use SHMID to iterate "shminfo" to find requested shm node, as we no
longer store host memory bank info in shm node.
- A new anonymized structure, which is a array of compound structure that
contains SHMID and a "struct membank membank", describing shared memory region
in guest, is introduced in "kinfo".
---
v2 -> v3:
- rebase and no changes
---
v3 -> v4:
rebase and no change
---
 xen/arch/arm/bootfdt.c            | 57 ++++++++++++++++++------
 xen/arch/arm/domain_build.c       | 74 +++++++++++++++----------------
 xen/arch/arm/include/asm/kernel.h |  9 +++-
 xen/arch/arm/include/asm/setup.h  | 21 +++++++--
 4 files changed, 104 insertions(+), 57 deletions(-)

diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
index 2673ad17a1..66ad3ab3db 100644
--- a/xen/arch/arm/bootfdt.c
+++ b/xen/arch/arm/bootfdt.c
@@ -16,6 +16,16 @@
 #include <xsm/xsm.h>
 #include <asm/setup.h>
 
+#ifdef CONFIG_STATIC_SHM
+static __initdata struct {
+    unsigned int nr_nodes;
+    struct {
+        const struct shm_node *node;
+        const struct membank *membank;
+    } shm_nodes[NR_MEM_BANKS];
+} shm_data;
+#endif
+
 static bool __init device_tree_node_matches(const void *fdt, int node,
                                             const char *match)
 {
@@ -409,7 +419,6 @@ static int __init process_shm_node(const void *fdt, int node,
     const struct fdt_property *prop, *prop_id, *prop_role;
     const __be32 *cell;
     paddr_t paddr, gaddr, size;
-    struct meminfo *mem = &bootinfo.reserved_mem;
     unsigned int i;
     int len;
     bool owner = false;
@@ -481,17 +490,21 @@ static int __init process_shm_node(const void *fdt, int node,
         return -EINVAL;
     }
 
-    for ( i = 0; i < mem->nr_banks; i++ )
+    for ( i = 0; i < shm_data.nr_nodes; i++ )
     {
+        paddr_t bank_start = shm_data.shm_nodes[i].membank->start;
+        paddr_t bank_size = shm_data.shm_nodes[i].membank->size;
+        const char *bank_id = shm_data.shm_nodes[i].node->shm_id;
+
         /*
          * Meet the following check:
          * 1) The shm ID matches and the region exactly match
          * 2) The shm ID doesn't match and the region doesn't overlap
          * with an existing one
          */
-        if ( paddr == mem->bank[i].start && size == mem->bank[i].size )
+        if ( paddr == bank_start && size == bank_size )
         {
-            if ( strncmp(shm_id, mem->bank[i].shm_id, MAX_SHM_ID_LENGTH) == 0 )
+            if ( strncmp(shm_id, bank_id, MAX_SHM_ID_LENGTH) == 0 )
                 break;
             else
             {
@@ -503,9 +516,9 @@ static int __init process_shm_node(const void *fdt, int node,
         else
         {
             paddr_t end = paddr + size;
-            paddr_t bank_end = mem->bank[i].start + mem->bank[i].size;
+            paddr_t bank_end = bank_start + bank_size;
 
-            if ( (end <= paddr) || (bank_end <= mem->bank[i].start) )
+            if ( (end <= paddr) || (bank_end <= bank_start) )
             {
                 printk("fdt: static shared memory region %s overflow\n", shm_id);
                 return -EINVAL;
@@ -515,7 +528,7 @@ static int __init process_shm_node(const void *fdt, int node,
                 return -EINVAL;
             else
             {
-                if ( strcmp(shm_id, mem->bank[i].shm_id) != 0 )
+                if ( strcmp(shm_id, bank_id) != 0 )
                     continue;
                 else
                 {
@@ -527,16 +540,32 @@ static int __init process_shm_node(const void *fdt, int node,
         }
     }
 
-    if ( i == mem->nr_banks )
+    if ( (i == shm_data.nr_nodes) && (i == bootinfo.shminfo.nr_nodes) )
     {
-        if ( i < NR_MEM_BANKS )
+        struct meminfo *mem = &bootinfo.reserved_mem;
+
+        if ( (i < NR_MEM_BANKS) && (mem->nr_banks < NR_MEM_BANKS) )
         {
             /* Static shared memory shall be reserved from any other use. */
-            safe_strcpy(mem->bank[mem->nr_banks].shm_id, shm_id);
-            mem->bank[mem->nr_banks].start = paddr;
-            mem->bank[mem->nr_banks].size = size;
-            mem->bank[mem->nr_banks].type = MEMBANK_STATIC_DOMAIN;
+            struct membank *membank = &mem->bank[mem->nr_banks];
+            struct shm_node *shm_node = &bootinfo.shminfo.node[i];
+
+            membank->start = paddr;
+            membank->size = size;
+            membank->type = MEMBANK_STATIC_DOMAIN;
             mem->nr_banks++;
+
+            /* Record static shared memory node info in bootinfo.shminfo */
+            safe_strcpy(shm_node->shm_id, shm_id);
+            bootinfo.shminfo.nr_nodes++;
+
+            /*
+             * Reserved memory bank is recorded together with shm
+             * node info in shm_data, to assist doing shm node verification.
+             */
+            shm_data.shm_nodes[i].node = shm_node;
+            shm_data.shm_nodes[i].membank = membank;
+            shm_data.nr_nodes++;
         }
         else
         {
@@ -549,7 +578,7 @@ static int __init process_shm_node(const void *fdt, int node,
      * to calculate the reference count.
      */
     if ( !owner )
-        mem->bank[i].nr_shm_borrowers++;
+        bootinfo.shminfo.node[i].nr_shm_borrowers++;
 
     return 0;
 }
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index c532fa882c..4901664682 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -774,28 +774,25 @@ static void __init assign_static_memory_11(struct domain *d,
 }
 
 #ifdef CONFIG_STATIC_SHM
-static int __init acquire_nr_borrower_domain(struct domain *d,
-                                             paddr_t pbase, paddr_t psize,
+static int __init acquire_nr_borrower_domain(const char *shm_id,
                                              unsigned long *nr_borrowers)
 {
-    unsigned int bank;
+    struct shm_node *shm_node;
+    unsigned int i;
 
-    /* Iterate reserved memory to find requested shm bank. */
-    for ( bank = 0 ; bank < bootinfo.reserved_mem.nr_banks; bank++ )
+    /* Iterate to find requested static shared memory node. */
+    for ( i = 0; i < bootinfo.shminfo.nr_nodes; i++ )
     {
-        paddr_t bank_start = bootinfo.reserved_mem.bank[bank].start;
-        paddr_t bank_size = bootinfo.reserved_mem.bank[bank].size;
+        shm_node = &bootinfo.shminfo.node[i];
 
-        if ( (pbase == bank_start) && (psize == bank_size) )
-            break;
+        if ( strcmp(shm_id, shm_node->shm_id) == 0 )
+        {
+            *nr_borrowers = shm_node->nr_shm_borrowers;
+            return 0;
+        }
     }
 
-    if ( bank == bootinfo.reserved_mem.nr_banks )
-        return -ENOENT;
-
-    *nr_borrowers = bootinfo.reserved_mem.bank[bank].nr_shm_borrowers;
-
-    return 0;
+    return -EINVAL;
 }
 
 /*
@@ -859,7 +856,7 @@ static mfn_t __init acquire_shared_memory_bank(struct domain *d,
 
 static int __init assign_shared_memory(struct domain *d,
                                        paddr_t pbase, paddr_t psize,
-                                       paddr_t gbase)
+                                       paddr_t gbase, const char *shm_id)
 {
     mfn_t smfn;
     int ret = 0;
@@ -893,7 +890,7 @@ static int __init assign_shared_memory(struct domain *d,
      * Get the right amount of references per page, which is the number of
      * borrower domains.
      */
-    ret = acquire_nr_borrower_domain(d, pbase, psize, &nr_borrowers);
+    ret = acquire_nr_borrower_domain(shm_id, &nr_borrowers);
     if ( ret )
         return ret;
 
@@ -929,13 +926,16 @@ static int __init append_shm_bank_to_domain(struct kernel_info *kinfo,
                                             paddr_t start, paddr_t size,
                                             const char *shm_id)
 {
-    if ( kinfo->shm_mem.nr_banks >= NR_MEM_BANKS )
+    unsigned int nr_banks = kinfo->shminfo.nr_banks;
+    struct membank *membank = &kinfo->shminfo.bank[nr_banks].membank;
+
+    if ( nr_banks >= NR_MEM_BANKS )
         return -ENOMEM;
 
-    kinfo->shm_mem.bank[kinfo->shm_mem.nr_banks].start = start;
-    kinfo->shm_mem.bank[kinfo->shm_mem.nr_banks].size = size;
-    safe_strcpy(kinfo->shm_mem.bank[kinfo->shm_mem.nr_banks].shm_id, shm_id);
-    kinfo->shm_mem.nr_banks++;
+    membank->start = start;
+    membank->size = size;
+    safe_strcpy(kinfo->shminfo.bank[nr_banks].shm_id, shm_id);
+    kinfo->shminfo.nr_banks++;
 
     return 0;
 }
@@ -1019,7 +1019,7 @@ static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
              * specified, so they should be assigned to dom_io.
              */
             ret = assign_shared_memory(owner_dom_io ? dom_io : d,
-                                       pbase, psize, gbase);
+                                       pbase, psize, gbase, shm_id);
             if ( ret )
                 return ret;
         }
@@ -1405,12 +1405,12 @@ static int __init make_memory_node(const struct domain *d,
 static int __init make_shm_memory_node(const struct domain *d,
                                        void *fdt,
                                        int addrcells, int sizecells,
-                                       const struct meminfo *mem)
+                                       const struct kernel_info *kinfo)
 {
     unsigned int i = 0;
     int res = 0;
 
-    if ( mem->nr_banks == 0 )
+    if ( kinfo->shminfo.nr_banks == 0 )
         return -ENOENT;
 
     /*
@@ -1420,17 +1420,17 @@ static int __init make_shm_memory_node(const struct domain *d,
      */
     dt_dprintk("Create xen-shmem node\n");
 
-    for ( ; i < mem->nr_banks; i++ )
+    for ( ; i < kinfo->shminfo.nr_banks; i++ )
     {
-        uint64_t start = mem->bank[i].start;
-        uint64_t size = mem->bank[i].size;
+        uint64_t start = kinfo->shminfo.bank[i].membank.start;
+        uint64_t size = kinfo->shminfo.bank[i].membank.size;
         const char compat[] = "xen,shared-memory-v1";
         /* Worst case addrcells + sizecells */
         __be32 reg[GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS];
         __be32 *cells;
         unsigned int len = (addrcells + sizecells) * sizeof(__be32);
 
-        res = domain_fdt_begin_node(fdt, "xen-shmem", mem->bank[i].start);
+        res = domain_fdt_begin_node(fdt, "xen-shmem", start);
         if ( res )
             return res;
 
@@ -1448,7 +1448,7 @@ static int __init make_shm_memory_node(const struct domain *d,
         dt_dprintk("Shared memory bank %u: %#"PRIx64"->%#"PRIx64"\n",
                    i, start, start + size);
 
-        res = fdt_property_string(fdt, "xen,id", mem->bank[i].shm_id);
+        res = fdt_property_string(fdt, "xen,id", kinfo->shminfo.bank[i].shm_id);
         if ( res )
             return res;
 
@@ -1473,7 +1473,7 @@ static int __init make_shm_memory_node(const struct domain *d,
 static int __init make_shm_memory_node(const struct domain *d,
                                        void *fdt,
                                        int addrcells, int sizecells,
-                                       const struct meminfo *mem)
+                                       const struct kernel_info *kinfo)
 {
     ASSERT_UNREACHABLE();
     return -EOPNOTSUPP;
@@ -1483,13 +1483,13 @@ static int __init make_shm_memory_node(const struct domain *d,
 static int __init make_resv_memory_node(const struct domain *d,
                                         void *fdt,
                                         int addrcells, int sizecells,
-                                        const struct meminfo *mem)
+                                        const struct kernel_info *kinfo)
 {
     int res = 0;
     /* Placeholder for reserved-memory\0 */
     const char resvbuf[16] = "reserved-memory";
 
-    if ( mem->nr_banks == 0 )
+    if ( kinfo->shminfo.nr_banks == 0 )
         /* No shared memory provided. */
         return 0;
 
@@ -1511,7 +1511,7 @@ static int __init make_resv_memory_node(const struct domain *d,
     if ( res )
         return res;
 
-    res = make_shm_memory_node(d, fdt, addrcells, sizecells, mem);
+    res = make_shm_memory_node(d, fdt, addrcells, sizecells, kinfo);
     if ( res )
         return res;
 
@@ -2470,8 +2470,7 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
                 return res;
         }
 
-        res = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells,
-                                    &kinfo->shm_mem);
+        res = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells, kinfo);
         if ( res )
             return res;
     }
@@ -3027,8 +3026,7 @@ static int __init prepare_dtb_domU(struct domain *d, struct kernel_info *kinfo)
     if ( ret )
         goto err;
 
-    ret = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells,
-                                &kinfo->shm_mem);
+    ret = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells, kinfo);
     if ( ret )
         goto err;
 
diff --git a/xen/arch/arm/include/asm/kernel.h b/xen/arch/arm/include/asm/kernel.h
index 4617cdc83b..590bc56f6c 100644
--- a/xen/arch/arm/include/asm/kernel.h
+++ b/xen/arch/arm/include/asm/kernel.h
@@ -38,7 +38,14 @@ struct kernel_info {
     void *fdt; /* flat device tree */
     paddr_t unassigned_mem; /* RAM not (yet) assigned to a bank */
     struct meminfo mem;
-    struct meminfo shm_mem;
+    /* Static shared memory banks */
+    struct {
+        unsigned int nr_banks;
+        struct {
+            char shm_id[MAX_SHM_ID_LENGTH];
+            struct membank membank;
+        } bank[NR_MEM_BANKS];
+    } shminfo;
 
     /* kernel entry point */
     paddr_t entry;
diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index b8866c20f4..3c5fc23eb1 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -50,10 +50,6 @@ struct membank {
     paddr_t start;
     paddr_t size;
     enum membank_type type;
-#ifdef CONFIG_STATIC_SHM
-    char shm_id[MAX_SHM_ID_LENGTH];
-    unsigned int nr_shm_borrowers;
-#endif
 };
 
 struct meminfo {
@@ -95,6 +91,17 @@ struct bootcmdlines {
     struct bootcmdline cmdline[MAX_MODULES];
 };
 
+#ifdef CONFIG_STATIC_SHM
+/*
+ * struct shm_node represents a static shared memory node shared between
+ * multiple domains, identified by the unique SHMID("xen,shm-id").
+ */
+struct shm_node {
+    char shm_id[MAX_SHM_ID_LENGTH];
+    unsigned int nr_shm_borrowers;
+};
+#endif
+
 struct bootinfo {
     struct meminfo mem;
     /* The reserved regions are only used when booting using Device-Tree */
@@ -105,6 +112,12 @@ struct bootinfo {
     struct meminfo acpi;
 #endif
     bool static_heap;
+#ifdef CONFIG_STATIC_SHM
+    struct {
+        unsigned int nr_nodes;
+        struct shm_node node[NR_MEM_BANKS];
+    } shminfo;
+#endif
 };
 
 struct map_range_data
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 04:05:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 04:05:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598904.934091 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYAu-00062n-TJ; Mon, 11 Sep 2023 04:05:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598904.934091; Mon, 11 Sep 2023 04:05:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYAu-00062g-Qp; Mon, 11 Sep 2023 04:05:24 +0000
Received: by outflank-mailman (input) for mailman id 598904;
 Mon, 11 Sep 2023 04:05:23 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfYAt-0005nR-6n
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 04:05:23 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 6cb10dc0-5058-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 06:05:21 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 40902D75;
 Sun, 10 Sep 2023 21:05:57 -0700 (PDT)
Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com
 [10.169.190.94])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 234553F67D;
 Sun, 10 Sep 2023 21:05:16 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6cb10dc0-5058-11ee-8784-cb3800f73035
From: Penny Zheng <Penny.Zheng@arm.com>
To: xen-devel@lists.xenproject.org
Cc: michal.orzel@amd.com,
	wei.chen@arm.com,
	Penny Zheng <Penny.Zheng@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>
Subject: [PATCH v4 01/10] xen/arm: remove stale addr_cells/size_cells in assign_shared_memory
Date: Mon, 11 Sep 2023 12:04:33 +0800
Message-Id: <20230911040442.2541398-2-Penny.Zheng@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911040442.2541398-1-Penny.Zheng@arm.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Function parameters {addr_cells,size_cells} are stale parameters in
assign_shared_memory, so we shall remove them.

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
---
v1 -> v2:
- new commit
---
v2 -> v3:
rebase and no change
---
v3 -> v4:
rebase and no change
---
 xen/arch/arm/domain_build.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 29dcbb8a2e..c532fa882c 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -858,7 +858,6 @@ static mfn_t __init acquire_shared_memory_bank(struct domain *d,
 }
 
 static int __init assign_shared_memory(struct domain *d,
-                                       uint32_t addr_cells, uint32_t size_cells,
                                        paddr_t pbase, paddr_t psize,
                                        paddr_t gbase)
 {
@@ -1020,7 +1019,6 @@ static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
              * specified, so they should be assigned to dom_io.
              */
             ret = assign_shared_memory(owner_dom_io ? dom_io : d,
-                                       addr_cells, size_cells,
                                        pbase, psize, gbase);
             if ( ret )
                 return ret;
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 04:05:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 04:05:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598907.934122 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYB4-0006vz-RI; Mon, 11 Sep 2023 04:05:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598907.934122; Mon, 11 Sep 2023 04:05:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYB4-0006vo-O3; Mon, 11 Sep 2023 04:05:34 +0000
Received: by outflank-mailman (input) for mailman id 598907;
 Mon, 11 Sep 2023 04:05:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfYB3-0005nR-Ev
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 04:05:33 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 738732a7-5058-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 06:05:32 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id AA3F5D75;
 Sun, 10 Sep 2023 21:06:08 -0700 (PDT)
Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com
 [10.169.190.94])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 408AC3F67D;
 Sun, 10 Sep 2023 21:05:27 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 738732a7-5058-11ee-8784-cb3800f73035
From: Penny Zheng <Penny.Zheng@arm.com>
To: xen-devel@lists.xenproject.org
Cc: michal.orzel@amd.com,
	wei.chen@arm.com,
	Penny Zheng <Penny.Zheng@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>
Subject: [PATCH v4 04/10] xen/arm: use paddr_assigned to indicate whether host address is provided
Date: Mon, 11 Sep 2023 12:04:36 +0800
Message-Id: <20230911040442.2541398-5-Penny.Zheng@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911040442.2541398-1-Penny.Zheng@arm.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

We use paddr_assigned to indicate whether host address is provided, by
checking the length of "xen,shared-mem" property.

The shm matching criteria shall also be adapt to cover the new scenario, by
adding when host address is not provided, if SHMID matches, the region size
must exactly match too.

During domain creation, right now, a static shared memory node could be
banked with a statically configured host memory bank, or a set of arbitrary
host memory banks allocated from heap. To cover both scenarios, we create
a new structure shm_meminfo. It is very alike meminfo, but with the maximum
array size being a smaller number NR_SHM_BANKS(16).
As "shm_meminfo" is also a new member of "enum meminfo_type", we shall implement
its own callback "retrieve_shm_meminfo" to have access to all MACRO
helpers, e.g. GET_MEMBANK(...).

Also, to make codes tidy and clear, we extract codes about parsing
"xen,shared-mem" property from function "process_shm" and move them into
a new helper "parse_shm_property".

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
---
v1 -> v2
- In order to get allocated banked host memory info during domain creation,
we create a new structure shm_meminfo. It is very alike meminfo, with
the maximum array size being NR_SHM_BANKS. As shm_meminfo is a new
member of type meminfo_type, we shall implement its own callback
retrieve_shm_meminfo to have access to all MACRO helpers, e.g.
GET_MEMBANK(...)
- rename "acquire_shm_memnode" to "find_shm_memnode"
---
v2 -> v3
- rebase and no changes
---
v3 -> v4:
rebase and no change
---
 xen/arch/arm/bootfdt.c           | 100 ++++++++++-----
 xen/arch/arm/domain_build.c      | 207 +++++++++++++++++++++++++------
 xen/arch/arm/include/asm/setup.h |   3 +
 3 files changed, 243 insertions(+), 67 deletions(-)

diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
index 66ad3ab3db..7d86dffd45 100644
--- a/xen/arch/arm/bootfdt.c
+++ b/xen/arch/arm/bootfdt.c
@@ -21,7 +21,15 @@ static __initdata struct {
     unsigned int nr_nodes;
     struct {
         const struct shm_node *node;
-        const struct membank *membank;
+        /*
+         * For a static shared memory node, it is either banked with a reserved
+         * host memory bank, or arbitrary host memory which shall
+         * be allocated by Xen with a specified total size(tot_size).
+         */
+        union {
+            const struct membank *membank;
+            paddr_t tot_size;
+        };
     } shm_nodes[NR_MEM_BANKS];
 } shm_data;
 #endif
@@ -421,7 +429,7 @@ static int __init process_shm_node(const void *fdt, int node,
     paddr_t paddr, gaddr, size;
     unsigned int i;
     int len;
-    bool owner = false;
+    bool owner = false, paddr_assigned = true;
     const char *shm_id;
 
     if ( address_cells < 1 || size_cells < 1 )
@@ -462,7 +470,7 @@ static int __init process_shm_node(const void *fdt, int node,
     }
 
     /*
-     * xen,shared-mem = <paddr, gaddr, size>;
+     * xen,shared-mem = <paddr, gaddr, size>, and paddr could be optional
      * Memory region starting from physical address #paddr of #size shall
      * be mapped to guest physical address #gaddr as static shared memory
      * region.
@@ -473,16 +481,24 @@ static int __init process_shm_node(const void *fdt, int node,
 
     if ( len != dt_cells_to_size(address_cells + size_cells + address_cells) )
     {
+        /* paddr is not provided in "xen,shared-mem" */
         if ( len == dt_cells_to_size(size_cells + address_cells) )
-            printk("fdt: host physical address must be chosen by users at the moment.\n");
-
-        printk("fdt: invalid `xen,shared-mem` property.\n");
-        return -EINVAL;
+            paddr_assigned = false;
+        else
+        {
+            printk("fdt: invalid `xen,shared-mem` property.\n");
+            return -EINVAL;
+        }
     }
 
     cell = (const __be32 *)prop->data;
-    device_tree_get_reg(&cell, address_cells, address_cells, &paddr, &gaddr);
-    size = dt_next_cell(size_cells, &cell);
+    if ( !paddr_assigned )
+        device_tree_get_reg(&cell, address_cells, size_cells, &gaddr, &size);
+    else
+    {
+        device_tree_get_reg(&cell, address_cells, address_cells, &paddr, &gaddr);
+        size = dt_next_cell(size_cells, &cell);
+    }
 
     if ( !size )
     {
@@ -495,23 +511,37 @@ static int __init process_shm_node(const void *fdt, int node,
         paddr_t bank_start = shm_data.shm_nodes[i].membank->start;
         paddr_t bank_size = shm_data.shm_nodes[i].membank->size;
         const char *bank_id = shm_data.shm_nodes[i].node->shm_id;
+        paddr_t tot_size = shm_data.shm_nodes[i].tot_size;
 
         /*
          * Meet the following check:
+         * when host address is provided:
          * 1) The shm ID matches and the region exactly match
          * 2) The shm ID doesn't match and the region doesn't overlap
          * with an existing one
+         * when host address is not provided:
+         * 1) The shm ID matches and the region size exactly match
          */
-        if ( paddr == bank_start && size == bank_size )
+        if ( !paddr_assigned || ((paddr == bank_start) && (size == bank_size)) )
         {
             if ( strncmp(shm_id, bank_id, MAX_SHM_ID_LENGTH) == 0 )
-                break;
-            else
+            {
+                if ( !paddr_assigned && (size != tot_size) )
+                {
+                    printk("fdt: when host address is not provided, if xen,shm-id matches, size must stay the same too(%"PRIpaddr" -> %"PRIpaddr")\n",
+                           size, tot_size);
+                    return -EINVAL;
+                }
+            }
+            else if ( paddr_assigned )
             {
                 printk("fdt: xen,shm-id %s does not match for all the nodes using the same region.\n",
                        shm_id);
                 return -EINVAL;
             }
+
+            /* host address is not provided, and with different SHMID. */
+            continue;
         }
         else
         {
@@ -542,37 +572,41 @@ static int __init process_shm_node(const void *fdt, int node,
 
     if ( (i == shm_data.nr_nodes) && (i == bootinfo.shminfo.nr_nodes) )
     {
-        struct meminfo *mem = &bootinfo.reserved_mem;
-
-        if ( (i < NR_MEM_BANKS) && (mem->nr_banks < NR_MEM_BANKS) )
+        if ( i < NR_MEM_BANKS )
         {
-            /* Static shared memory shall be reserved from any other use. */
-            struct membank *membank = &mem->bank[mem->nr_banks];
             struct shm_node *shm_node = &bootinfo.shminfo.node[i];
-
-            membank->start = paddr;
-            membank->size = size;
-            membank->type = MEMBANK_STATIC_DOMAIN;
-            mem->nr_banks++;
+            struct meminfo *mem = &bootinfo.reserved_mem;
 
             /* Record static shared memory node info in bootinfo.shminfo */
             safe_strcpy(shm_node->shm_id, shm_id);
             bootinfo.shminfo.nr_nodes++;
 
-            /*
-             * Reserved memory bank is recorded together with shm
-             * node info in shm_data, to assist doing shm node verification.
-             */
             shm_data.shm_nodes[i].node = shm_node;
-            shm_data.shm_nodes[i].membank = membank;
             shm_data.nr_nodes++;
+            if ( !paddr_assigned )
+                shm_data.shm_nodes[i].tot_size = size;
+            else if ( mem->nr_banks < NR_MEM_BANKS )
+            {
+                struct membank *membank = &mem->bank[mem->nr_banks];
+
+                membank->start = paddr;
+                membank->size = size;
+                membank->type = MEMBANK_STATIC_DOMAIN;
+                mem->nr_banks++;
+
+                /*
+                 * Reserved memory bank is recorded together with shm
+                 * node info in shm_data, to assist doing shm node verification.
+                 */
+                shm_data.shm_nodes[i].membank = membank;
+            }
+            else
+                goto fail;
         }
         else
-        {
-            printk("Warning: Max number of supported memory regions reached.\n");
-            return -ENOSPC;
-        }
+            goto fail;
     }
+
     /*
      * keep a count of the number of borrowers, which later may be used
      * to calculate the reference count.
@@ -581,6 +615,10 @@ static int __init process_shm_node(const void *fdt, int node,
         bootinfo.shminfo.node[i].nr_shm_borrowers++;
 
     return 0;
+
+ fail:
+    printk("Warning: Max number of supported memory regions reached\n");
+    return -ENOSPC;
 }
 #else
 static int __init process_shm_node(const void *fdt, int node,
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index d5945e421d..0116bacc2f 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -50,6 +50,51 @@ boolean_param("ext_regions", opt_ext_regions);
 static u64 __initdata dom0_mem;
 static bool __initdata dom0_mem_set;
 
+#ifdef CONFIG_STATIC_SHM
+#define NR_SHM_BANKS 16
+
+/*
+ * A static shared memory node could be banked with a statically
+ * configured host memory bank, or a set of arbitrary host memory
+ * banks allocated from heap.
+ */
+struct shm_meminfo {
+    unsigned int nr_banks;
+    struct membank bank[NR_SHM_BANKS];
+    paddr_t tot_size;
+};
+
+/*
+ * struct shm_memnode holds banked host memory info for a static
+ * shared memory node
+ */
+struct shm_memnode {
+    char shm_id[MAX_SHM_ID_LENGTH];
+    struct shm_meminfo meminfo;
+};
+
+static __initdata struct {
+    unsigned int nr_nodes;
+    struct shm_memnode node[NR_MEM_BANKS];
+} shm_memdata;
+
+static void __init retrieve_shm_meminfo(void *mem, unsigned int *max_mem_banks,
+                                        struct membank **bank,
+                                        unsigned int **nr_banks)
+{
+    struct shm_meminfo *meminfo = (struct shm_meminfo *)mem;
+
+    if ( max_mem_banks )
+        *max_mem_banks = NR_SHM_BANKS;
+
+    if ( nr_banks )
+        *nr_banks = &(meminfo->nr_banks);
+
+    if ( bank )
+        *bank = meminfo->bank;
+}
+#endif
+
 static int __init parse_dom0_mem(const char *s)
 {
     dom0_mem_set = true;
@@ -117,6 +162,9 @@ static void __init retrieve_meminfo(void *mem, unsigned int *max_mem_banks,
 
 retrieve_fn __initdata retrievers[MAX_MEMINFO_TYPE] = {
     [NORMAL_MEMINFO] = retrieve_meminfo,
+#ifdef CONFIG_STATIC_SHM
+    [SHM_MEMINFO] = retrieve_shm_meminfo,
+#endif
 };
 
 unsigned int __init dom0_max_vcpus(void)
@@ -864,6 +912,24 @@ static int __init acquire_nr_borrower_domain(const char *shm_id,
     return -EINVAL;
 }
 
+static struct shm_memnode * __init find_shm_memnode(const char *shm_id)
+{
+    unsigned int i;
+    struct shm_memnode *shm_memnode;
+
+    for ( i = 0 ; i < shm_memdata.nr_nodes; i++ )
+    {
+        shm_memnode = &shm_memdata.node[i];
+
+        if ( strcmp(shm_id, shm_memnode->shm_id) == 0 )
+            return shm_memnode;
+    }
+
+    shm_memnode = &shm_memdata.node[i];
+    safe_strcpy(shm_memnode->shm_id, shm_id);
+    return shm_memnode;
+}
+
 /*
  * This function checks whether the static shared memory region is
  * already allocated to dom_io.
@@ -1009,6 +1075,102 @@ static int __init append_shm_bank_to_domain(struct kernel_info *kinfo,
     return 0;
 }
 
+/* Parse "xen,shared-mem" property in static shared memory node */
+static struct shm_memnode * __init parse_shm_property(struct domain *d,
+                                    const struct dt_device_node *dt_node,
+                                    bool *paddr_assigned, paddr_t *gbase,
+                                    const char *shm_id)
+{
+    uint32_t addr_cells, size_cells;
+    const struct dt_property *prop;
+    const __be32 *cells;
+    uint32_t len;
+    unsigned int i;
+    paddr_t pbase, psize;
+    struct shm_memnode *shm_memnode;
+
+    /* xen,shared-mem = <pbase, gbase, size>; And pbase could be optional. */
+    prop = dt_find_property(dt_node, "xen,shared-mem", &len);
+    BUG_ON(!prop);
+    cells = (const __be32 *)prop->value;
+
+    addr_cells = dt_n_addr_cells(dt_node);
+    size_cells = dt_n_size_cells(dt_node);
+    if ( len != dt_cells_to_size(addr_cells + size_cells + addr_cells) )
+    {
+        /* pbase is not provided in "xen,shared-mem" */
+        if ( len == dt_cells_to_size(size_cells + addr_cells) )
+            *paddr_assigned = false;
+        else
+        {
+            printk("fdt: invalid `xen,shared-mem` property.\n");
+            return NULL;
+        }
+    }
+
+    /*
+     * If we firstly process the shared memory node with unique "xen,shm-id",
+     * we allocate a new member "shm_memnode" for it in shm_memdata.
+     */
+    shm_memnode = find_shm_memnode(shm_id);
+    BUG_ON(!shm_memnode);
+    if ( !(*paddr_assigned) )
+    {
+        device_tree_get_reg(&cells, addr_cells, size_cells, gbase, &psize);
+        if ( shm_memnode->meminfo.tot_size == 0 )
+            goto out_early1;
+        else
+            goto out_early2;
+    }
+    else
+    {
+        device_tree_get_reg(&cells, addr_cells, addr_cells, &pbase, gbase);
+        psize = dt_read_number(cells, size_cells);
+    }
+
+    /*
+     * The static shared memory node #dt_node is banked with a
+     * statically configured host memory bank.
+     */
+    shm_memnode->meminfo.bank[0].start = pbase;
+    shm_memnode->meminfo.bank[0].size = psize;
+    shm_memnode->meminfo.nr_banks = 1;
+
+    if ( !IS_ALIGNED(pbase, PAGE_SIZE) )
+    {
+        printk("%pd: physical address 0x%"PRIpaddr" is not suitably aligned.\n",
+               d, pbase);
+        return NULL;
+    }
+
+    for ( i = 0; i < PFN_DOWN(psize); i++ )
+        if ( !mfn_valid(mfn_add(maddr_to_mfn(pbase), i)) )
+        {
+            printk("%pd: invalid physical MFN 0x%"PRI_mfn"\n for static shared memory node\n",
+                   d, mfn_x(mfn_add(maddr_to_mfn(pbase), i)));
+            return NULL;
+        }
+
+ out_early1:
+    if ( !IS_ALIGNED(psize, PAGE_SIZE) )
+    {
+        printk("%pd: size 0x%"PRIpaddr" is not suitably aligned\n",
+               d, psize);
+        return NULL;
+    }
+    shm_memnode->meminfo.tot_size = psize;
+
+ out_early2:
+    if ( !IS_ALIGNED(*gbase, PAGE_SIZE) )
+    {
+        printk("%pd: guest address 0x%"PRIpaddr" is not suitably aligned.\n",
+               d, *gbase);
+        return NULL;
+    }
+
+    return shm_memnode;
+}
+
 static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
                               const struct dt_device_node *node)
 {
@@ -1016,51 +1178,17 @@ static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
 
     dt_for_each_child_node(node, shm_node)
     {
-        const struct dt_property *prop;
-        const __be32 *cells;
-        uint32_t addr_cells, size_cells;
         paddr_t gbase, pbase, psize;
         int ret = 0;
-        unsigned int i;
         const char *role_str;
         const char *shm_id;
         bool owner_dom_io = true;
+        bool paddr_assigned = true;
+        struct shm_memnode *shm_memnode;
 
         if ( !dt_device_is_compatible(shm_node, "xen,domain-shared-memory-v1") )
             continue;
 
-        /*
-         * xen,shared-mem = <pbase, gbase, size>;
-         * TODO: pbase is optional.
-         */
-        addr_cells = dt_n_addr_cells(shm_node);
-        size_cells = dt_n_size_cells(shm_node);
-        prop = dt_find_property(shm_node, "xen,shared-mem", NULL);
-        BUG_ON(!prop);
-        cells = (const __be32 *)prop->value;
-        device_tree_get_reg(&cells, addr_cells, addr_cells, &pbase, &gbase);
-        psize = dt_read_paddr(cells, size_cells);
-        if ( !IS_ALIGNED(pbase, PAGE_SIZE) || !IS_ALIGNED(gbase, PAGE_SIZE) )
-        {
-            printk("%pd: physical address 0x%"PRIpaddr", or guest address 0x%"PRIpaddr" is not suitably aligned.\n",
-                   d, pbase, gbase);
-            return -EINVAL;
-        }
-        if ( !IS_ALIGNED(psize, PAGE_SIZE) )
-        {
-            printk("%pd: size 0x%"PRIpaddr" is not suitably aligned\n",
-                   d, psize);
-            return -EINVAL;
-        }
-
-        for ( i = 0; i < PFN_DOWN(psize); i++ )
-            if ( !mfn_valid(mfn_add(maddr_to_mfn(pbase), i)) )
-            {
-                printk("%pd: invalid physical address 0x%"PRI_mfn"\n",
-                       d, mfn_x(mfn_add(maddr_to_mfn(pbase), i)));
-                return -EINVAL;
-            }
-
         /*
          * "role" property is optional and if it is defined explicitly,
          * then the owner domain is not the default "dom_io" domain.
@@ -1075,6 +1203,13 @@ static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
         }
         BUG_ON((strlen(shm_id) <= 0) || (strlen(shm_id) >= MAX_SHM_ID_LENGTH));
 
+        shm_memnode = parse_shm_property(d, shm_node, &paddr_assigned, &gbase,
+                                         shm_id);
+        if ( !shm_memnode )
+            return -EINVAL;
+        pbase = shm_memnode->meminfo.bank[0].start;
+        psize = shm_memnode->meminfo.bank[0].size;
+
         /*
          * DOMID_IO is a fake domain and is not described in the Device-Tree.
          * Therefore when the owner of the shared region is DOMID_IO, we will
diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index ff543fc361..732f18dce5 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -59,6 +59,9 @@ struct meminfo {
 
 enum meminfo_type {
     NORMAL_MEMINFO,
+#ifdef CONFIG_STATIC_SHM
+    SHM_MEMINFO,
+#endif
     MAX_MEMINFO_TYPE,
 };
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 04:05:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 04:05:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598909.934132 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYB8-0007J2-6U; Mon, 11 Sep 2023 04:05:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598909.934132; Mon, 11 Sep 2023 04:05:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYB8-0007I0-16; Mon, 11 Sep 2023 04:05:38 +0000
Received: by outflank-mailman (input) for mailman id 598909;
 Mon, 11 Sep 2023 04:05:36 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfYB6-0005nR-QU
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 04:05:36 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 759a6e87-5058-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 06:05:35 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 4B3E2D75;
 Sun, 10 Sep 2023 21:06:12 -0700 (PDT)
Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com
 [10.169.190.94])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 2E36D3F67D;
 Sun, 10 Sep 2023 21:05:31 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 759a6e87-5058-11ee-8784-cb3800f73035
From: Penny Zheng <Penny.Zheng@arm.com>
To: xen-devel@lists.xenproject.org
Cc: michal.orzel@amd.com,
	wei.chen@arm.com,
	Penny Zheng <Penny.Zheng@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>
Subject: [PATCH v4 05/10] xen/arm: support static shared memory when host address not provided
Date: Mon, 11 Sep 2023 12:04:37 +0800
Message-Id: <20230911040442.2541398-6-Penny.Zheng@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911040442.2541398-1-Penny.Zheng@arm.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

In order to support static shared memory when host address not provided,
we shall do the following modification:
- we shall let Xen allocate memory from heap for static shared memory
at first domain, no matter it is owner or borrower.
- In acquire_shared_memory_bank, as static shared memory has already
been allocated from heap, we shall assign them to the owner domain
using function "assign_pages".
- Function get_shm_pages_reference is created to add as many
additional reference as the number of borrowers.
- We implement a new helper "add_foreign_mapping_for_borrower" to set
up foreign memory mapping for borrower.

Instead of using multiple function parameters to deliver various shm-related
info, like host physical address, SHMID, etc, and with the introduction
of new struct "shm_memnode" to include banked host memory info, we switch to
use "shm_memnode" as function parameter to replace them all, to make codes more
clear and tidy.

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
---
v1 -> v2:
- combine commits 4 - 6 in Serie 1
- Adapt to changes of introducing "struct shm_memnode"
---
v2 -> v3
- fix infinite loop bug and bad indentation
- rebase
---
v3 -> v4:
rebase and no change
---
 xen/arch/arm/domain_build.c | 223 +++++++++++++++++++++++++-----------
 1 file changed, 155 insertions(+), 68 deletions(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 0116bacc2f..2eae50d78b 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -891,6 +891,11 @@ static void __init assign_static_memory_11(struct domain *d,
 }
 
 #ifdef CONFIG_STATIC_SHM
+static bool __init is_shm_allocated_from_heap(struct shm_memnode *node)
+{
+    return (node->meminfo.nr_banks != 0);
+}
+
 static int __init acquire_nr_borrower_domain(const char *shm_id,
                                              unsigned long *nr_borrowers)
 {
@@ -934,12 +939,12 @@ static struct shm_memnode * __init find_shm_memnode(const char *shm_id)
  * This function checks whether the static shared memory region is
  * already allocated to dom_io.
  */
-static bool __init is_shm_allocated_to_domio(paddr_t pbase)
+static bool __init is_shm_allocated_to_domio(struct shm_memnode *node)
 {
     struct page_info *page;
     struct domain *d;
 
-    page = maddr_to_page(pbase);
+    page = maddr_to_page(node->meminfo.bank[0].start);
     d = page_get_owner_and_reference(page);
     if ( d == NULL )
         return false;
@@ -957,67 +962,128 @@ static bool __init is_shm_allocated_to_domio(paddr_t pbase)
 }
 
 static mfn_t __init acquire_shared_memory_bank(struct domain *d,
-                                               paddr_t pbase, paddr_t psize)
+                                               struct shm_meminfo *meminfo,
+                                               bool paddr_assigned)
 {
-    mfn_t smfn;
-    unsigned long nr_pfns;
-    int res;
+    int res, i = 0;
 
-    /*
-     * Pages of statically shared memory shall be included
-     * into domain_tot_pages().
-     */
-    nr_pfns = PFN_DOWN(psize);
-    if ( (UINT_MAX - d->max_pages) < nr_pfns )
+    for ( ; i < meminfo->nr_banks; i++ )
     {
-        printk(XENLOG_ERR "%pd: Over-allocation for d->max_pages: %lu.\n",
-               d, nr_pfns);
-        return INVALID_MFN;
+        paddr_t pbase = meminfo->bank[i].start, psize = meminfo->bank[i].size;
+        unsigned long nr_pfns;
+
+        /*
+         * Pages of statically shared memory shall be included
+         * into domain_tot_pages().
+         */
+        nr_pfns = PFN_DOWN(psize);
+        if ( (UINT_MAX - d->max_pages) < nr_pfns )
+        {
+            printk(XENLOG_ERR "%pd: Over-allocation for d->max_pages: %lu.\n",
+                   d, nr_pfns);
+            return INVALID_MFN;
+        }
+        d->max_pages += nr_pfns;
+
+        if ( paddr_assigned )
+        {
+            res = acquire_domstatic_pages(d, maddr_to_mfn(pbase), nr_pfns, 0);
+            if ( res )
+            {
+                printk(XENLOG_ERR
+                       "%pd: failed to acquire static memory: %d.\n", d, res);
+                goto fail;
+            }
+        }
+        else
+            /*
+             * When host address is not provided, static shared memory is
+             * allocated from heap and shall be assigned to owner domain.
+             */
+            if ( assign_pages(maddr_to_page(pbase), nr_pfns, d, 0) )
+                goto fail;
     }
-    d->max_pages += nr_pfns;
 
-    smfn = maddr_to_mfn(pbase);
-    res = acquire_domstatic_pages(d, smfn, nr_pfns, 0);
-    if ( res )
+    return maddr_to_mfn(meminfo->bank[0].start);
+
+ fail:
+    while( --i >= 0 )
+        d->max_pages -= PFN_DOWN(meminfo->bank[i].size);
+    return INVALID_MFN;
+}
+
+static int __init get_shm_pages_reference(struct domain *d,
+                                          struct shm_meminfo *meminfo,
+                                          unsigned long count)
+{
+    struct page_info *page;
+    int i = 0, j;
+
+    for ( ; i < meminfo->nr_banks; i++ )
     {
-        printk(XENLOG_ERR
-               "%pd: failed to acquire static memory: %d.\n", d, res);
-        d->max_pages -= nr_pfns;
-        return INVALID_MFN;
+        paddr_t pbase = meminfo->bank[i].start, psize = meminfo->bank[i].size;
+        unsigned long nr_pages = PFN_DOWN(psize);
+
+        page = maddr_to_page(pbase);
+        for ( j = 0; j < nr_pages; j++ )
+        {
+            if ( !get_page_nr(page + j, d, count) )
+            {
+                printk(XENLOG_ERR
+                       "Failed to add %lu references to page %"PRI_mfn".\n",
+                       count, mfn_x(page_to_mfn(page + j)));
+                goto fail;
+            }
+        }
     }
 
-    return smfn;
+    return 0;
+
+ fail:
+    while ( --j >= 0 )
+        put_page_nr(page + j, count);
+    while ( --i >= 0 )
+    {
+        page = maddr_to_page(meminfo->bank[i].start);
+        j = PFN_DOWN(meminfo->bank[i].size);
+        while ( --j >= 0 )
+            put_page_nr(page + j, count);
+    }
+    return -EINVAL;
 }
 
 static int __init assign_shared_memory(struct domain *d,
-                                       paddr_t pbase, paddr_t psize,
-                                       paddr_t gbase, const char *shm_id)
+                                       struct shm_memnode *node, paddr_t gbase,
+                                       bool paddr_assigned)
 {
     mfn_t smfn;
-    int ret = 0;
-    unsigned long nr_pages, nr_borrowers, i;
-    struct page_info *page;
-
-    printk("%pd: allocate static shared memory BANK %#"PRIpaddr"-%#"PRIpaddr".\n",
-           d, pbase, pbase + psize);
+    int ret;
+    unsigned long nr_borrowers, i;
+    struct shm_meminfo *meminfo = &node->meminfo;
 
-    smfn = acquire_shared_memory_bank(d, pbase, psize);
+    smfn = acquire_shared_memory_bank(d, meminfo, paddr_assigned);
     if ( mfn_eq(smfn, INVALID_MFN) )
         return -EINVAL;
 
-    /*
-     * DOMID_IO is not auto-translated (i.e. it sees RAM 1:1). So we do not need
-     * to create mapping in the P2M.
-     */
-    nr_pages = PFN_DOWN(psize);
-    if ( d != dom_io )
+    for ( i = 0; i < meminfo->nr_banks; i++ )
     {
-        ret = guest_physmap_add_pages(d, gaddr_to_gfn(gbase), smfn,
-                                      PFN_DOWN(psize));
-        if ( ret )
+        paddr_t pbase = meminfo->bank[i].start, psize = meminfo->bank[i].size;
+
+        /*
+         * DOMID_IO is not auto-translated (i.e. it sees RAM 1:1). So we do
+         * not need to create mapping in the P2M.
+         */
+        if ( d != dom_io )
         {
-            printk(XENLOG_ERR "Failed to map shared memory to %pd.\n", d);
-            return ret;
+            ret = guest_physmap_add_pages(d, gaddr_to_gfn(gbase),
+                                          maddr_to_mfn(pbase),
+                                          PFN_DOWN(psize));
+            if ( ret )
+            {
+                printk(XENLOG_ERR "Failed to map shared memory to %pd.\n", d);
+                return ret;
+            }
+            gbase += psize;
         }
     }
 
@@ -1025,7 +1091,7 @@ static int __init assign_shared_memory(struct domain *d,
      * Get the right amount of references per page, which is the number of
      * borrower domains.
      */
-    ret = acquire_nr_borrower_domain(shm_id, &nr_borrowers);
+    ret = acquire_nr_borrower_domain(node->shm_id, &nr_borrowers);
     if ( ret )
         return ret;
 
@@ -1037,24 +1103,30 @@ static int __init assign_shared_memory(struct domain *d,
      * So if the borrower is created first, it will cause adding pages
      * in the P2M without reference.
      */
-    page = mfn_to_page(smfn);
-    for ( i = 0; i < nr_pages; i++ )
+    return get_shm_pages_reference(d, meminfo, nr_borrowers);
+}
+
+static int __init add_foreign_mapping_for_borrower(struct domain *d,
+                                                   struct shm_memnode *node,
+                                                   paddr_t gbase)
+{
+    unsigned int i = 0;
+    struct shm_meminfo *meminfo = &node->meminfo;
+
+    for ( ; i < meminfo->nr_banks; i++ )
     {
-        if ( !get_page_nr(page + i, d, nr_borrowers) )
-        {
-            printk(XENLOG_ERR
-                   "Failed to add %lu references to page %"PRI_mfn".\n",
-                   nr_borrowers, mfn_x(smfn) + i);
-            goto fail;
-        }
+        paddr_t pbase = meminfo->bank[i].start, psize = meminfo->bank[i].size;
+        int ret;
+
+        /* Set up P2M foreign mapping for borrower domain. */
+        ret = map_regions_p2mt(d, _gfn(PFN_UP(gbase)), PFN_DOWN(psize),
+                               _mfn(PFN_UP(pbase)), p2m_map_foreign_rw);
+        if ( ret )
+            return ret;
+        gbase += psize;
     }
 
     return 0;
-
- fail:
-    while ( --i >= 0 )
-        put_page_nr(page + i, nr_borrowers);
-    return ret;
 }
 
 static int __init append_shm_bank_to_domain(struct kernel_info *kinfo,
@@ -1178,7 +1250,7 @@ static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
 
     dt_for_each_child_node(node, shm_node)
     {
-        paddr_t gbase, pbase, psize;
+        paddr_t gbase;
         int ret = 0;
         const char *role_str;
         const char *shm_id;
@@ -1207,15 +1279,30 @@ static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
                                          shm_id);
         if ( !shm_memnode )
             return -EINVAL;
-        pbase = shm_memnode->meminfo.bank[0].start;
-        psize = shm_memnode->meminfo.bank[0].size;
+
+        /*
+         * When host address is not provided in "xen,shared-mem",
+         * we let Xen allocate memory from heap at first domain.
+         */
+        if ( !paddr_assigned && !is_shm_allocated_from_heap(shm_memnode) )
+        {
+            if ( !allocate_domheap_memory(NULL, shm_memnode->meminfo.tot_size,
+                                          (void *)&shm_memnode->meminfo,
+                                          SHM_MEMINFO) )
+            {
+                printk(XENLOG_ERR
+                       "Failed to allocate (%"PRIpaddr"MB) pages as static shared memory from heap\n",
+                       shm_memnode->meminfo.tot_size >> 20);
+                return -EINVAL;
+            }
+        }
 
         /*
          * DOMID_IO is a fake domain and is not described in the Device-Tree.
          * Therefore when the owner of the shared region is DOMID_IO, we will
          * only find the borrowers.
          */
-        if ( (owner_dom_io && !is_shm_allocated_to_domio(pbase)) ||
+        if ( (owner_dom_io && !is_shm_allocated_to_domio(shm_memnode)) ||
              (!owner_dom_io && strcmp(role_str, "owner") == 0) )
         {
             /*
@@ -1223,16 +1310,14 @@ static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
              * specified, so they should be assigned to dom_io.
              */
             ret = assign_shared_memory(owner_dom_io ? dom_io : d,
-                                       pbase, psize, gbase, shm_id);
+                                       shm_memnode, gbase, paddr_assigned);
             if ( ret )
                 return ret;
         }
 
         if ( owner_dom_io || (strcmp(role_str, "borrower") == 0) )
         {
-            /* Set up P2M foreign mapping for borrower domain. */
-            ret = map_regions_p2mt(d, _gfn(PFN_UP(gbase)), PFN_DOWN(psize),
-                                   _mfn(PFN_UP(pbase)), p2m_map_foreign_rw);
+            ret = add_foreign_mapping_for_borrower(d, shm_memnode, gbase);
             if ( ret )
                 return ret;
         }
@@ -1241,7 +1326,9 @@ static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
          * Record static shared memory region info for later setting
          * up shm-node in guest device tree.
          */
-        ret = append_shm_bank_to_domain(kinfo, gbase, psize, shm_id);
+        ret = append_shm_bank_to_domain(kinfo, gbase,
+                                        shm_memnode->meminfo.tot_size,
+                                        shm_memnode->shm_id);
         if ( ret )
             return ret;
     }
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 04:05:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 04:05:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598913.934142 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYBD-0007sE-Ll; Mon, 11 Sep 2023 04:05:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598913.934142; Mon, 11 Sep 2023 04:05:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYBD-0007rB-HT; Mon, 11 Sep 2023 04:05:43 +0000
Received: by outflank-mailman (input) for mailman id 598913;
 Mon, 11 Sep 2023 04:05:42 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfYBC-0005n2-Jz
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 04:05:42 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 77c85679-5058-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 06:05:39 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DD97BD75;
 Sun, 10 Sep 2023 21:06:15 -0700 (PDT)
Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com
 [10.169.190.94])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id C0CFE3F67D;
 Sun, 10 Sep 2023 21:05:35 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 77c85679-5058-11ee-9b0d-b553b5be7939
From: Penny Zheng <Penny.Zheng@arm.com>
To: xen-devel@lists.xenproject.org
Cc: michal.orzel@amd.com,
	wei.chen@arm.com,
	Penny Zheng <Penny.Zheng@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>
Subject: [PATCH v4 06/10] xen/arm: remove shm holes for extended regions
Date: Mon, 11 Sep 2023 12:04:38 +0800
Message-Id: <20230911040442.2541398-7-Penny.Zheng@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911040442.2541398-1-Penny.Zheng@arm.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Static shared memory acts as reserved memory in guest, so it shall be
excluded from extended regions.

Extended regions are taken care of under three different scenarios:
normal DomU, direct-map domain with iommu on, and direct-map domain
with iommu off.

For normal DomU, we create a new function "remove_shm_holes_for_domU", to
firstly transfer original outputs into the format of "struct rangeset",
then use "remove_shm_from_rangeset" to remove static shm from them.

For direct-map domain with iommu on, after we get guest shm info from "kinfo",
we use "remove_shm_from_rangeset" to remove static shm.

For direct-map domain with iommu off, as static shm has already been taken
care of through reserved memory banks, we do nothing.

Signed-off-by: Penny Zheng <penny.zheng@arm.com>

---
v1 -> v2:
- new commit
---
v2 -> v3:
- error out non-zero res before remove_shm_holes_for_domU
- rebase
---
v3 -> v4:
rebase and no change
---
 xen/arch/arm/domain_build.c | 97 ++++++++++++++++++++++++++++++++++++-
 1 file changed, 96 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 2eae50d78b..02d903be78 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -1974,6 +1974,32 @@ static int __init handle_pci_range(const struct dt_device_node *dev,
     return 0;
 }
 
+static int __init remove_shm_from_rangeset(const struct kernel_info *kinfo,
+                                           struct rangeset *rangeset)
+{
+    unsigned int i;
+
+    /* Remove static shared memory regions */
+    for ( i = 0; i < kinfo->shminfo.nr_banks; i++ )
+    {
+        struct membank membank = kinfo->shminfo.bank[i].membank;
+        paddr_t start, end;
+        int res;
+
+        start = membank.start;
+        end = membank.start + membank.size - 1;
+        res = rangeset_remove_range(rangeset, start, end);
+        if ( res )
+        {
+            printk(XENLOG_ERR "Failed to remove: %#"PRIpaddr"->%#"PRIpaddr"\n",
+                   start, end);
+            return -EINVAL;
+        }
+    }
+
+    return 0;
+}
+
 /*
  * Find the holes in the Host DT which can be exposed to Dom0 as extended
  * regions for the special memory mappings. In order to calculate regions
@@ -1982,6 +2008,8 @@ static int __init handle_pci_range(const struct dt_device_node *dev,
  * - MMIO
  * - Host RAM
  * - PCI aperture
+ * - Static shared memory regions, which are described by special property
+ *   "xen,static-shm"
  */
 static int __init find_memory_holes(const struct kernel_info *kinfo,
                                     struct meminfo *ext_regions)
@@ -2058,6 +2086,14 @@ static int __init find_memory_holes(const struct kernel_info *kinfo,
         }
     }
 
+    /* Remove static shared memory regions */
+    if ( kinfo->shminfo.nr_banks != 0 )
+    {
+        res = remove_shm_from_rangeset(kinfo, mem_holes);
+        if ( res )
+            goto out;
+    }
+
     start = 0;
     end = (1ULL << p2m_ipa_bits) - 1;
     res = rangeset_report_ranges(mem_holes, PFN_DOWN(start), PFN_DOWN(end),
@@ -2073,6 +2109,62 @@ out:
     return res;
 }
 
+static int __init remove_shm_holes_for_domU(const struct kernel_info *kinfo,
+                                            struct meminfo *orig_ext)
+{
+    struct rangeset *guest_holes;
+    unsigned int i = 0, tail;
+    int res;
+    paddr_t start, end;
+
+    /* No static shared memory region. */
+    if ( kinfo->shminfo.nr_banks == 0 )
+        return 0;
+
+    dt_dprintk("Remove static shared memory holes for extended regions of DomU\n");
+
+    guest_holes = rangeset_new(NULL, NULL, 0);
+    if ( !guest_holes )
+        return -ENOMEM;
+
+    for ( ; i < orig_ext->nr_banks; i++ )
+    {
+        start = orig_ext->bank[i].start;
+        end = start + orig_ext->bank[i].size - 1;
+
+        res = rangeset_add_range(guest_holes, start, end);
+        if ( res )
+        {
+            printk(XENLOG_ERR "Failed to add: %#"PRIpaddr"->%#"PRIpaddr"\n",
+                   start, end);
+            goto out;
+        }
+    }
+
+    /* Remove static shared memory regions */
+    res = remove_shm_from_rangeset(kinfo, guest_holes);
+    if ( res )
+        goto out;
+
+    tail = orig_ext->nr_banks - 1;
+    start = orig_ext->bank[0].start;
+    end = orig_ext->bank[tail].start + orig_ext->bank[tail].size - 1;
+
+    /* Reset original extended regions to hold new value */
+    orig_ext->nr_banks = 0;
+    res = rangeset_report_ranges(guest_holes, start, end,
+                                 add_ext_regions, orig_ext);
+    if ( res )
+        orig_ext->nr_banks = 0;
+    else if ( !orig_ext->nr_banks )
+        res = -ENOENT;
+
+out:
+    rangeset_destroy(guest_holes);
+
+    return res;
+}
+
 static int __init find_domU_holes(const struct kernel_info *kinfo,
                                   struct meminfo *ext_regions)
 {
@@ -2100,7 +2192,10 @@ static int __init find_domU_holes(const struct kernel_info *kinfo,
         res = 0;
     }
 
-    return res;
+    if ( res )
+        return res;
+
+    return remove_shm_holes_for_domU(kinfo, ext_regions);
 }
 
 static int __init make_hypervisor_node(struct domain *d,
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 04:05:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 04:05:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598917.934153 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYBF-0008F5-54; Mon, 11 Sep 2023 04:05:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598917.934153; Mon, 11 Sep 2023 04:05:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYBE-0008EY-Rx; Mon, 11 Sep 2023 04:05:44 +0000
Received: by outflank-mailman (input) for mailman id 598917;
 Mon, 11 Sep 2023 04:05:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfYBD-0005nR-T8
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 04:05:43 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 79e7b888-5058-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 06:05:43 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 7C378D75;
 Sun, 10 Sep 2023 21:06:19 -0700 (PDT)
Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com
 [10.169.190.94])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 5EF053F67D;
 Sun, 10 Sep 2023 21:05:39 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 79e7b888-5058-11ee-8784-cb3800f73035
From: Penny Zheng <Penny.Zheng@arm.com>
To: xen-devel@lists.xenproject.org
Cc: michal.orzel@amd.com,
	wei.chen@arm.com,
	Penny Zheng <Penny.Zheng@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>
Subject: [PATCH v4 07/10] xen/p2m: put reference for superpage
Date: Mon, 11 Sep 2023 12:04:39 +0800
Message-Id: <20230911040442.2541398-8-Penny.Zheng@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911040442.2541398-1-Penny.Zheng@arm.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

We are doing foreign memory mapping for static shared memory, and
there is a great possibility that it could be super mapped.
But today, p2m_put_l3_page could not handle superpages.

This commits implements a new function p2m_put_superpage to handle superpages,
specifically for helping put extra references for foreign superpages.

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
---
v1 -> v2:
- new commit
---
v2 -> v3:
- rebase and no change
---
v3 -> v4:
rebase and no change
---
 xen/arch/arm/p2m.c | 58 ++++++++++++++++++++++++++++++++++------------
 1 file changed, 43 insertions(+), 15 deletions(-)

diff --git a/xen/arch/arm/p2m.c b/xen/arch/arm/p2m.c
index de32a2d638..b7b3db005e 100644
--- a/xen/arch/arm/p2m.c
+++ b/xen/arch/arm/p2m.c
@@ -851,17 +851,9 @@ static int p2m_mem_access_radix_set(struct p2m_domain *p2m, gfn_t gfn,
     return rc;
 }
 
-/*
- * Put any references on the single 4K page referenced by pte.
- * TODO: Handle superpages, for now we only take special references for leaf
- * pages (specifically foreign ones, which can't be super mapped today).
- */
-static void p2m_put_l3_page(const lpae_t pte)
+/* Put any references on the single 4K page referenced by mfn. */
+static void p2m_put_l3_page(mfn_t mfn, unsigned type)
 {
-    mfn_t mfn = lpae_get_mfn(pte);
-
-    ASSERT(p2m_is_valid(pte));
-
     /*
      * TODO: Handle other p2m types
      *
@@ -869,16 +861,53 @@ static void p2m_put_l3_page(const lpae_t pte)
      * flush the TLBs if the page is reallocated before the end of
      * this loop.
      */
-    if ( p2m_is_foreign(pte.p2m.type) )
+    if ( p2m_is_foreign(type) )
     {
         ASSERT(mfn_valid(mfn));
         put_page(mfn_to_page(mfn));
     }
     /* Detect the xenheap page and mark the stored GFN as invalid. */
-    else if ( p2m_is_ram(pte.p2m.type) && is_xen_heap_mfn(mfn) )
+    else if ( p2m_is_ram(type) && is_xen_heap_mfn(mfn) )
         page_set_xenheap_gfn(mfn_to_page(mfn), INVALID_GFN);
 }
 
+/* Put any references on the superpage referenced by mfn. */
+static void p2m_put_superpage(mfn_t mfn, unsigned int next_level, unsigned type)
+{
+    unsigned int i;
+    unsigned int level_order = XEN_PT_LEVEL_ORDER(next_level);
+
+    for ( i = 0; i < XEN_PT_LPAE_ENTRIES; i++ )
+    {
+        if ( next_level == 3 )
+            p2m_put_l3_page(mfn, type);
+        else
+            p2m_put_superpage(mfn, next_level + 1, type);
+
+        mfn = mfn_add(mfn, 1 << level_order);
+    }
+}
+
+/* Put any references on the page referenced by pte. */
+static void p2m_put_page(const lpae_t pte, unsigned int level)
+{
+    mfn_t mfn = lpae_get_mfn(pte);
+
+    ASSERT(p2m_is_valid(pte));
+
+    /*
+     * We are either having a first level 1G superpage or a
+     * second level 2M superpage.
+     */
+    if ( p2m_is_superpage(pte, level) )
+        return p2m_put_superpage(mfn, level + 1, pte.p2m.type);
+    else
+    {
+        ASSERT(level == 3);
+        return p2m_put_l3_page(mfn, pte.p2m.type);
+    }
+}
+
 /* Free lpae sub-tree behind an entry */
 static void p2m_free_entry(struct p2m_domain *p2m,
                            lpae_t entry, unsigned int level)
@@ -907,9 +936,8 @@ static void p2m_free_entry(struct p2m_domain *p2m,
 #endif
 
         p2m->stats.mappings[level]--;
-        /* Nothing to do if the entry is a super-page. */
-        if ( level == 3 )
-            p2m_put_l3_page(entry);
+        p2m_put_page(entry, level);
+
         return;
     }
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 04:10:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 04:10:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598958.934172 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYFX-000390-RM; Mon, 11 Sep 2023 04:10:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598958.934172; Mon, 11 Sep 2023 04:10:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYFX-00038t-O9; Mon, 11 Sep 2023 04:10:11 +0000
Received: by outflank-mailman (input) for mailman id 598958;
 Mon, 11 Sep 2023 04:10:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfYBM-0005nR-DI
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 04:05:52 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 7e40da3d-5058-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 06:05:50 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id AD634D75;
 Sun, 10 Sep 2023 21:06:26 -0700 (PDT)
Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com
 [10.169.190.94])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 90BD33F67D;
 Sun, 10 Sep 2023 21:05:46 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7e40da3d-5058-11ee-8784-cb3800f73035
From: Penny Zheng <Penny.Zheng@arm.com>
To: xen-devel@lists.xenproject.org
Cc: michal.orzel@amd.com,
	wei.chen@arm.com,
	Penny Zheng <Penny.Zheng@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>
Subject: [PATCH v4 09/10] xen/arm: fix duplicate /reserved-memory node in Dom0
Date: Mon, 11 Sep 2023 12:04:41 +0800
Message-Id: <20230911040442.2541398-10-Penny.Zheng@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911040442.2541398-1-Penny.Zheng@arm.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

In case there is a /reserved-memory node already present in the host dtb,
current Xen codes would create yet another /reserved-memory node specially
for the static shm in Dom0 Device Tree.

Xen will use write_properties() to copy the reserved memory nodes from host dtb
to Dom0 FDT, so we want to insert the shm node along with the copying.
And avoiding duplication, we add a checking before make_resv_memory_node().

Signed-off-by: Penny Zheng <penny.zheng@arm.com>

---
v3 -> v4:
new commit
---
 xen/arch/arm/domain_build.c       | 31 ++++++++++++++++++++++++++++---
 xen/arch/arm/include/asm/kernel.h |  2 ++
 2 files changed, 30 insertions(+), 3 deletions(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 02d903be78..dad234e4b5 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -1401,6 +1401,10 @@ static int __init handle_linux_pci_domain(struct kernel_info *kinfo,
     return fdt_property_cell(kinfo->fdt, "linux,pci-domain", segment);
 }
 
+static int __init make_shm_memory_node(const struct domain *d,
+                                       void *fdt,
+                                       int addrcells, int sizecells,
+                                       const struct kernel_info *kinfo);
 static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
                                    const struct dt_device_node *node)
 {
@@ -1549,6 +1553,23 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
         }
     }
 
+    if ( dt_node_path_is_equal(node, "/reserved-memory") )
+    {
+        kinfo->resv_mem = true;
+
+        /* shared memory provided. */
+        if ( kinfo->shminfo.nr_banks != 0 )
+        {
+            uint32_t addrcells = dt_n_addr_cells(node),
+                     sizecells = dt_n_size_cells(node);
+
+            res = make_shm_memory_node(d, kinfo->fdt,
+                                       addrcells, sizecells, kinfo);
+            if ( res )
+                return res;
+        }
+    }
+
     return 0;
 }
 
@@ -2856,9 +2877,13 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
                 return res;
         }
 
-        res = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells, kinfo);
-        if ( res )
-            return res;
+        /* Avoid duplicate /reserved-memory nodes in Device Tree */
+        if ( !kinfo->resv_mem )
+        {
+            res = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells, kinfo);
+            if ( res )
+                return res;
+        }
     }
 
     res = fdt_end_node(kinfo->fdt);
diff --git a/xen/arch/arm/include/asm/kernel.h b/xen/arch/arm/include/asm/kernel.h
index 590bc56f6c..d20c8bc2a8 100644
--- a/xen/arch/arm/include/asm/kernel.h
+++ b/xen/arch/arm/include/asm/kernel.h
@@ -38,6 +38,8 @@ struct kernel_info {
     void *fdt; /* flat device tree */
     paddr_t unassigned_mem; /* RAM not (yet) assigned to a bank */
     struct meminfo mem;
+    /* Whether we have /reserved-memory node in host Device Tree */
+    bool resv_mem;
     /* Static shared memory banks */
     struct {
         unsigned int nr_banks;
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 04:10:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 04:10:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598945.934162 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYFW-0002tP-LA; Mon, 11 Sep 2023 04:10:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598945.934162; Mon, 11 Sep 2023 04:10:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYFW-0002tD-Hh; Mon, 11 Sep 2023 04:10:10 +0000
Received: by outflank-mailman (input) for mailman id 598945;
 Mon, 11 Sep 2023 04:10:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfYBP-0005n2-R9
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 04:05:55 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 8058e0d1-5058-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 06:05:53 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 4B327D75;
 Sun, 10 Sep 2023 21:06:30 -0700 (PDT)
Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com
 [10.169.190.94])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 2DD003F67D;
 Sun, 10 Sep 2023 21:05:49 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8058e0d1-5058-11ee-9b0d-b553b5be7939
From: Penny Zheng <Penny.Zheng@arm.com>
To: xen-devel@lists.xenproject.org
Cc: michal.orzel@amd.com,
	wei.chen@arm.com,
	Penny Zheng <Penny.Zheng@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>
Subject: [PATCH v4 10/10] xen/arm: create another /memory node for static shm
Date: Mon, 11 Sep 2023 12:04:42 +0800
Message-Id: <20230911040442.2541398-11-Penny.Zheng@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911040442.2541398-1-Penny.Zheng@arm.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Static shared memory region shall be described both under /memory and
/reserved-memory.

We introduce export_shm_memory_node() to create another /memory node to
contain the static shared memory ranges.

Signed-off-by: Penny Zheng <penny.zheng@arm.com>

---
v3 -> v4:
new commit
---
 xen/arch/arm/domain_build.c | 43 +++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index dad234e4b5..21e5c622a3 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -1714,6 +1714,25 @@ static int __init make_memory_node(const struct domain *d,
 }
 
 #ifdef CONFIG_STATIC_SHM
+static int __init export_shm_memory_node(const struct domain *d,
+                                         const struct kernel_info *kinfo,
+                                         int addrcells, int sizecells)
+{
+    unsigned int i = 0;
+    struct meminfo shm_meminfo;
+
+    /* Extract meminfo from kinfo.shminfo */
+    for ( ; i < kinfo->shminfo.nr_banks; i++ )
+    {
+        shm_meminfo.bank[i].start = kinfo->shminfo.bank[i].membank.start;
+        shm_meminfo.bank[i].size = kinfo->shminfo.bank[i].membank.size;
+        shm_meminfo.bank[i].type = MEMBANK_DEFAULT;
+    }
+    shm_meminfo.nr_banks = kinfo->shminfo.nr_banks;
+
+    return make_memory_node(d, kinfo->fdt, addrcells, sizecells, &shm_meminfo);
+}
+
 static int __init make_shm_memory_node(const struct domain *d,
                                        void *fdt,
                                        int addrcells, int sizecells,
@@ -1782,6 +1801,14 @@ static int __init make_shm_memory_node(const struct domain *d,
     return res;
 }
 #else
+static int __init export_shm_memory_node(const struct domain *d,
+                                         const struct kernel_info *kinfo,
+                                         int addrcells, int sizecells)
+{
+    ASSERT_UNREACHABLE();
+    return -EOPNOTSUPP;
+}
+
 static int __init make_shm_memory_node(const struct domain *d,
                                        void *fdt,
                                        int addrcells, int sizecells,
@@ -2877,6 +2904,14 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
                 return res;
         }
 
+        /* Create a memory node to store the static shared memory regions */
+        if ( kinfo->shminfo.nr_banks != 0 )
+        {
+            res = export_shm_memory_node(d, kinfo, addrcells, sizecells);
+            if ( res )
+                return res;
+        }
+
         /* Avoid duplicate /reserved-memory nodes in Device Tree */
         if ( !kinfo->resv_mem )
         {
@@ -3437,6 +3472,14 @@ static int __init prepare_dtb_domU(struct domain *d, struct kernel_info *kinfo)
     if ( ret )
         goto err;
 
+    /* Create a memory node to store the static shared memory regions */
+    if ( kinfo->shminfo.nr_banks != 0 )
+    {
+        ret = export_shm_memory_node(d, kinfo, addrcells, sizecells);
+        if ( ret )
+            goto err;
+    }
+
     ret = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells, kinfo);
     if ( ret )
         goto err;
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 04:10:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 04:10:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598965.934182 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYFa-0003R4-2Y; Mon, 11 Sep 2023 04:10:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598965.934182; Mon, 11 Sep 2023 04:10:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYFZ-0003Qs-Vt; Mon, 11 Sep 2023 04:10:13 +0000
Received: by outflank-mailman (input) for mailman id 598965;
 Mon, 11 Sep 2023 04:10:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfYBH-0005nR-EU
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 04:05:47 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 7c0a0fbe-5058-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 06:05:46 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1B09ED75;
 Sun, 10 Sep 2023 21:06:23 -0700 (PDT)
Received: from a011292.shanghai.arm.com (a011292.shanghai.arm.com
 [10.169.190.94])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id F20B53F67D;
 Sun, 10 Sep 2023 21:05:42 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7c0a0fbe-5058-11ee-8784-cb3800f73035
From: Penny Zheng <Penny.Zheng@arm.com>
To: xen-devel@lists.xenproject.org
Cc: michal.orzel@amd.com,
	wei.chen@arm.com,
	Penny Zheng <Penny.Zheng@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <penny.zheng@arm.com>
Subject: [PATCH v4 08/10] xen/docs: refine docs about static shared memory
Date: Mon, 11 Sep 2023 12:04:40 +0800
Message-Id: <20230911040442.2541398-9-Penny.Zheng@arm.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911040442.2541398-1-Penny.Zheng@arm.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This commit amends docs(docs/misc/arm/device-tree/booting.txt) to include the
new scenario where host address is not provided in "xen,shared-mem" property,
and we also add a new example to explain in detail.

We also fix some buggy info in the docs, like SHMID is "my-shared-mem-1",
not "0x1".

Signed-off-by: Penny Zheng <penny.zheng@arm.com>
---
v1 -> v2:
- no new changes
---
v2 -> v3
- rebase and no change
---
v3 -> v4:
rebase and no change
---
 docs/misc/arm/device-tree/booting.txt | 52 ++++++++++++++++++++-------
 1 file changed, 39 insertions(+), 13 deletions(-)

diff --git a/docs/misc/arm/device-tree/booting.txt b/docs/misc/arm/device-tree/booting.txt
index bbd955e9c2..ac4bad6fe5 100644
--- a/docs/misc/arm/device-tree/booting.txt
+++ b/docs/misc/arm/device-tree/booting.txt
@@ -590,7 +590,7 @@ communication.
     An array takes a physical address, which is the base address of the
     shared memory region in host physical address space, a size, and a guest
     physical address, as the target address of the mapping.
-    e.g. xen,shared-mem = < [host physical address] [guest address] [size] >
+    e.g. xen,shared-mem = < [host physical address] [guest address] [size] >;
 
     It shall also meet the following criteria:
     1) If the SHM ID matches with an existing region, the address range of the
@@ -601,8 +601,8 @@ communication.
     The number of cells for the host address (and size) is the same as the
     guest pseudo-physical address and they are inherited from the parent node.
 
-    Host physical address is optional, when missing Xen decides the location
-    (currently unimplemented).
+    Host physical address is optional, when missing Xen decides the location.
+    e.g. xen,shared-mem = < [guest address] [size] >;
 
 - role (Optional)
 
@@ -629,7 +629,7 @@ chosen {
         role = "owner";
         xen,shm-id = "my-shared-mem-0";
         xen,shared-mem = <0x10000000 0x10000000 0x10000000>;
-    }
+    };
 
     domU1 {
         compatible = "xen,domain";
@@ -640,25 +640,36 @@ chosen {
         vpl011;
 
         /*
-         * shared memory region identified as 0x0(xen,shm-id = <0x0>)
-         * is shared between Dom0 and DomU1.
+         * shared memory region "my-shared-mem-0" is shared
+         * between Dom0 and DomU1.
          */
         domU1-shared-mem@10000000 {
             compatible = "xen,domain-shared-memory-v1";
             role = "borrower";
             xen,shm-id = "my-shared-mem-0";
             xen,shared-mem = <0x10000000 0x50000000 0x10000000>;
-        }
+        };
 
         /*
-         * shared memory region identified as 0x1(xen,shm-id = <0x1>)
-         * is shared between DomU1 and DomU2.
+         * shared memory region "my-shared-mem-1" is shared between
+         * DomU1 and DomU2.
          */
         domU1-shared-mem@50000000 {
             compatible = "xen,domain-shared-memory-v1";
             xen,shm-id = "my-shared-mem-1";
             xen,shared-mem = <0x50000000 0x60000000 0x20000000>;
-        }
+        };
+
+        /*
+         * shared memory region "my-shared-mem-2" is shared between
+         * DomU1 and DomU2.
+         */
+        domU1-shared-mem-2 {
+            compatible = "xen,domain-shared-memory-v1";
+            xen,shm-id = "my-shared-mem-2";
+            role = "owner";
+            xen,shared-mem = <0x80000000 0x20000000>;
+        };
 
         ......
 
@@ -672,14 +683,21 @@ chosen {
         cpus = <1>;
 
         /*
-         * shared memory region identified as 0x1(xen,shm-id = <0x1>)
-         * is shared between domU1 and domU2.
+         * shared memory region "my-shared-mem-1" is shared between
+         * domU1 and domU2.
          */
         domU2-shared-mem@50000000 {
             compatible = "xen,domain-shared-memory-v1";
             xen,shm-id = "my-shared-mem-1";
             xen,shared-mem = <0x50000000 0x70000000 0x20000000>;
-        }
+        };
+
+        domU2-shared-mem-2 {
+            compatible = "xen,domain-shared-memory-v1";
+            xen,shm-id = "my-shared-mem-2";
+            role = "borrower";
+            xen,shared-mem = <0x90000000 0x20000000>;
+        };
 
         ......
     };
@@ -699,3 +717,11 @@ shared between DomU1 and DomU2. It will get mapped at 0x60000000 in DomU1 guest
 physical address space, and at 0x70000000 in DomU2 guest physical address space.
 DomU1 and DomU2 are both the borrower domain, the owner domain is the default
 owner domain DOMID_IO.
+
+For the static shared memory region "my-shared-mem-2", since host physical
+address is not provided by user, Xen will automatically allocate 512MB
+from heap as static shared memory to be shared between DomU1 and DomU2.
+The automatically allocated static shared memory will get mapped at
+0x80000000 in DomU1 guest physical address space, and at 0x90000000 in DomU2
+guest physical address space. DomU1 is explicitly defined as the owner domain,
+and DomU2 is the borrower domain.
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 04:18:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 04:18:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.598988.934191 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYNt-0004w4-0P; Mon, 11 Sep 2023 04:18:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 598988.934191; Mon, 11 Sep 2023 04:18:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfYNs-0004vx-U6; Mon, 11 Sep 2023 04:18:48 +0000
Received: by outflank-mailman (input) for mailman id 598988;
 Mon, 11 Sep 2023 04:18:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfYNr-0004vr-KL
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 04:18:47 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2042.outbound.protection.outlook.com [40.107.7.42])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4cb8d38f-505a-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 06:18:46 +0200 (CEST)
Received: from DB3PR06CA0024.eurprd06.prod.outlook.com (2603:10a6:8:1::37) by
 AS2PR08MB9428.eurprd08.prod.outlook.com (2603:10a6:20b:5e8::6) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6745.33; Mon, 11 Sep 2023 04:18:16 +0000
Received: from DBAEUR03FT050.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:8:1:cafe::e5) by DB3PR06CA0024.outlook.office365.com
 (2603:10a6:8:1::37) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30 via Frontend
 Transport; Mon, 11 Sep 2023 04:18:16 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT050.mail.protection.outlook.com (100.127.142.250) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.16 via Frontend Transport; Mon, 11 Sep 2023 04:18:16 +0000
Received: ("Tessian outbound b5a0f4347031:v175");
 Mon, 11 Sep 2023 04:18:15 +0000
Received: from 08ace606f104.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 92106C58-F443-4D9B-A41B-B1A2B9005D10.1; 
 Mon, 11 Sep 2023 04:15:00 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 08ace606f104.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 11 Sep 2023 04:15:00 +0000
Received: from DB8PR04CA0001.eurprd04.prod.outlook.com (2603:10a6:10:110::11)
 by DU0PR08MB7542.eurprd08.prod.outlook.com (2603:10a6:10:321::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Mon, 11 Sep
 2023 04:14:58 +0000
Received: from DBAEUR03FT043.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:110:cafe::71) by DB8PR04CA0001.outlook.office365.com
 (2603:10a6:10:110::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 04:14:58 +0000
Received: from nebula.arm.com (40.67.248.234) by
 DBAEUR03FT043.mail.protection.outlook.com (100.127.143.24) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.16 via Frontend Transport; Mon, 11 Sep 2023 04:14:58 +0000
Received: from AZ-NEU-EX02.Emea.Arm.com (10.251.26.5) by AZ-NEU-EX04.Arm.com
 (10.251.24.32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 04:14:57 +0000
Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX02.Emea.Arm.com
 (10.251.26.5) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 04:14:57 +0000
Received: from [10.169.172.145] (10.169.172.145) by mail.arm.com
 (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend
 Transport; Mon, 11 Sep 2023 04:14:54 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4cb8d38f-505a-11ee-8784-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=D1ZJui2Jmux++Nj0HJAVH9Qx/6TLBaErSeyJMq3z8DU=;
 b=38erBBqIiH5CrNABxqHl2BFNg3zCLnJm757DhpLGBSzm+VUn5NZK2WTLebMzzkOXsPt2AjtXQr+T9zGQYYoFtwqB5pg5r3DAjOPy2665PmSvu7uak6uSxcHYMCzez6ZAkD03UTsvOkAZb38Z0AArNy6T36wrxoj0MZOcxnN5AJo=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: b5a9e206c34cf8b7
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=k+DLEgDqn950mLUF4Kg5NRzRt8/4ArDrX1a11AIsdfqeT7YSGJ8d9TFd/LUZGGL08uYvgy+FDeuhkxN8QjD/fSHvz2hH51CqjkTq6doooQToDCiFijTF40RpSeQSDRNJdYOtnAnlRYkov+GkmEhA6VGPzacke7QiWfY4UzNAxoNFM0ExDmFkYCvjLbHCQvqDTEb0MaI7QtpGvM6nx8p261Tz3jyTwkGbVdBS4KoOYZ3S0KS7u8VNCSt8938nITzvDQQrzXpLBqA2NlbHZLvqfpZAzJdFdCSgDZnU0WhfoGuSpPieeB0aRjElxAoRLl2Aeha7vQUBjlcf3N2ipQKbQg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=D1ZJui2Jmux++Nj0HJAVH9Qx/6TLBaErSeyJMq3z8DU=;
 b=a5WFoAy/s26RXTIe7pXMY7B2XRjGwbbQ8a3hZ949+x/TtyBDyWXVGMHep65o71hQxfM8qqQ7cbJiUGJXZXdx0xvD6yPeiOQ6YcOEG/ep19Vr07xT7sKId2TC1AlkPVFUgvf3XR6a+8Y4IiRNrng7m+vNo5ZPNFrBwSvUDC8ODJsJivocuoCeIFgFve290hmJWuI8O+x1SS0IKTRWIvHGIqX+tptMc6bIGNbJY1E+wyMSY6SOXxok/fi5UeiSHxYj9XoHJgOoCpKYuRy5ZZlLXmFmEjz6ZIKsq+h5BL1bLKrIkKkaXsBDJJd4vxCT5N3NntCkXOi9/s51NPlApgtd/w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 40.67.248.234) smtp.rcpttodomain=amd.com smtp.mailfrom=arm.com; dmarc=pass
 (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message
 not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=D1ZJui2Jmux++Nj0HJAVH9Qx/6TLBaErSeyJMq3z8DU=;
 b=38erBBqIiH5CrNABxqHl2BFNg3zCLnJm757DhpLGBSzm+VUn5NZK2WTLebMzzkOXsPt2AjtXQr+T9zGQYYoFtwqB5pg5r3DAjOPy2665PmSvu7uak6uSxcHYMCzez6ZAkD03UTsvOkAZb38Z0AArNy6T36wrxoj0MZOcxnN5AJo=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234)
 smtp.mailfrom=arm.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 40.67.248.234 as permitted sender) receiver=protection.outlook.com;
 client-ip=40.67.248.234; helo=nebula.arm.com; pr=C
Message-ID: <561ca37f-0d6e-7dbf-9f62-75020d3865a4@arm.com>
Date: Mon, 11 Sep 2023 12:14:52 +0800
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.14.0
Subject: Re: [PATCH v3 0/8] Follow-up static shared memory PART I
Content-Language: en-US
To: Michal Orzel <michal.orzel@amd.com>, <xen-devel@lists.xenproject.org>
CC: <wei.chen@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, "Julien
 Grall" <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230821040046.2965665-1-Penny.Zheng@arm.com>
 <6fcbab6a-7126-21ee-e1bc-aa7ba2b07fc0@amd.com>
 <1fae4dde-f1b5-fa13-d021-3bdde7184fbe@arm.com>
 <c26aeffa-9d41-ad7d-b006-bd4ea8ab7f40@amd.com>
From: Penny Zheng <penny.zheng@arm.com>
In-Reply-To: <c26aeffa-9d41-ad7d-b006-bd4ea8ab7f40@amd.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 1
X-MS-TrafficTypeDiagnostic:
	DBAEUR03FT043:EE_|DU0PR08MB7542:EE_|DBAEUR03FT050:EE_|AS2PR08MB9428:EE_
X-MS-Office365-Filtering-Correlation-Id: b9b57825-9769-4764-635b-08dbb27e1f17
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 pfZN4+5g1/qsxReIOgKM1Z9rSEnccv0rIW7pcGXkbMCPgM9ZCu3Dh0cKKvtdaPkcnlDbLzR/OXAkRdqSi19YtZckpjLKxJ6jOezWYFwVc99b8CUJX7zq5OE09eWXx10NRFLD/CEfTU9AJ92pVDAe36KG2Mxt4QCmbwwTOgvwSUhcbYVSBYtjppFUwzlF8iFfPUWaijFWHnw73iDdG8sebUQ9ZaZliWAbm1PBy8ZJ3bIt3gnnXaFDOUvrDCejU4RZnkC3oW7GSWq2vg3fkUw+QoI1b7UstBl7Y9j8UEldIcx2WzeypuAQcKmGmdAwjmEasG6nc+TYNW2J5Xychq6XRf2WsMKQgz15uq7AI06Kw1bK91mzEbhQd+xo0rFpbBu9gisoCBO5BplW++IUikweg0DSizZvG1N8OJCX8J7e+0qJch2ZsKm4nCbI/FHAUWF7JF/wIGrvanJQDE2k6fy3k+x0ixEGTz8HgYQjtPFHXf6C5kOwj+xW4pGfBt2zBsQ97dZ9KgrrHubOUeCPEainHG2qty7rey6EAHusky2RMoYJi7GcwooPUHtEE5uJk0uzER4Ugf0JriQZ/1N1oAtk70+GSz/esuumxjEB74Mpb7mj6VEi5ETlAmsDqEDTdym0oIn+X4gGjQDEPHwXTr5zQFRW140FE+M0rhdco9qemgQlCM3TYnUZSku9chF+aBAbYVYfD5hdOt75mTypQ+/CMiFnfMTsec7jrMAt+cAa4JUZXg+n641957nS/q7sOO4z5U8+anGVJy3JN9TmYpiD7K/0GOVd4bMk8hBim/DwuuSb/YWsXYLtYb7SwHMfIGi6ri+gGH+Bwgu8/5N5qLyDcSwdI85XM1Wxkcg0JAG88Iw=
X-Forefront-Antispam-Report-Untrusted:
 CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(346002)(396003)(39860400002)(376002)(1800799009)(186009)(82310400011)(451199024)(36840700001)(40470700004)(46966006)(53546011)(83380400001)(478600001)(966005)(26005)(2616005)(16576012)(70206006)(4326008)(336012)(41300700001)(2906002)(426003)(54906003)(44832011)(316002)(110136005)(5660300002)(8936002)(8676002)(70586007)(31696002)(86362001)(40460700003)(82740400003)(47076005)(40480700001)(36860700001)(36756003)(81166007)(31686004)(356005)(3940600001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7542
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT050.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	fd33bb66-b624-4a33-7a59-08dbb27da959
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xyVqhtryX2kgZLI6drXCkPbOQ6sHqibBf/8iI3M5kqYuRwuhrOYp++H2+NSclpWRo/pj/IA6wZGZOtuAjCikuMwykQy7E4fwxWkqJaE2MTILhX9LXtQ02s9yn5VbL/Qxduh3ZNHd0uyn6OwrKwOI8zZ3jgcrqC6QAGZOzRsrfkCGKtvfwB1CN3vnNcCJW5VW8dsdgKkXewZ9NB2MX45l3nbSEOBn2//dhbsJ6/8ygGTF6J9TmGfVPxnG/IpQGYfFA50lW0UpJYXXZiiFrfe6mWVJy7LWW6EHKKkEYDIOPFZn3PyPhXnGh020cN/EsQQLX+Es6+0Qbg9PIv6VtE+AmIdZ5jSGa6zxujk1yRyr/utaE75hA8IypfxKcBheGK2m5n5QxEuclhaedt60pS+Lt48OmXkjfAYfvkuDv76D4oUdf/y9+Ps2s9qxr+fM8dQRfghTFFWyEreFyF+scNw6WBp5/OK8FyS5HVuzssam3vfYPgoDR6UvNn0lf7mafVp5qzA5uPnh2T+AcgvddQI0CSIH36MMqvtSpqf/v5AcfVJwxSHwFJTz7sFgxMGVRud0T3uSVbsooVbyFI8/jaaeJEiVcSO9LWztjtYnHZOIbEWICwjOcqqsg6BvCBlzXabhEGFvqBKLoE6UiC4nBn5lUFxEtprFUVrTbSXAxqPUTf5fP443E9Eqjorl/YeNEegIs2UdEWai8fyylh5iIQVehZiBKfVCWJheUYc9KMKPxjFd2WpMndRA27TKLeH6i9Cdw+d8yFmuDTf0JsLqDNm2Ld/ZiHbMs18lA4ysfhZiP8GbrRqlAeLlh5sMrZdwqPOatRxPjhtjABQbi0sfapo/aA==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(396003)(346002)(376002)(186009)(451199024)(1800799009)(82310400011)(40470700004)(46966006)(36840700001)(8936002)(70206006)(47076005)(966005)(478600001)(316002)(8676002)(83380400001)(40480700001)(41300700001)(4326008)(26005)(54906003)(70586007)(53546011)(16576012)(107886003)(336012)(110136005)(86362001)(40460700003)(44832011)(82740400003)(426003)(5660300002)(2906002)(81166007)(2616005)(31696002)(36860700001)(36756003)(31686004)(3940600001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 04:18:16.0307
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b9b57825-9769-4764-635b-08dbb27e1f17
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT050.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9428

Hi Michal

Sorry for the delayed response, caught up in internal release lately. :\

On 2023/8/22 16:57, Michal Orzel wrote:
> Hi Penny,
> 
> On 22/08/2023 07:32, Penny Zheng wrote:
>>
>>
>> Hi, michal
>>
>> On 2023/8/21 18:49, Michal Orzel wrote:
>>> Hi Penny,
>>>
>>> On 21/08/2023 06:00, Penny Zheng wrote:
>>>>
>>>>
>>>> There are some unsolving issues on current 4.17 static shared memory
>>>> feature[1], including:
>>>> - In order to avoid keeping growing 'membank', having the shared memory
>>>> info in separate structures is preferred.
>>>> - Missing implementation on having the host address optional in
>>>> "xen,shared-mem" property
>>>> - Removing static shared memory from extended regions
>>>> - Missing reference release on foreign superpage
>>>> - Missing "xen,offset" feature, which is introduced in Linux DOC[2]
>>>>
>>>> All above objects have been divided into two parts to complete. And this
>>>> patch serie is PART I.
>>>>
>>>> [1] https://lore.kernel.org/all/20220908135513.1800511-1-Penny.Zheng@arm.com/
>>>> [2] https://www.kernel.org/doc/Documentation/devicetree/bindings/reserved-memory/xen%2Cshared-memory.txt
>>>
>>> It looks like there is a problem with the changes introduced in this series.
>>> The gitlab static shared memory tests failed:
>>> https://gitlab.com/xen-project/patchew/xen/-/pipelines/973985190
>>> No Xen logs meaning the failure occurred before serial console initialization.
>>>
>>> Now, I would like to share some observations after playing around with the current static shared mem code today.
>>> 1) Static shared memory region is advertised to a domain by creating a child node under reserved-memory.
>>> /reserved-memory is nothing but a way to carve out a region from the normal memory specified in /memory node.
>>> For me, such regions should be described in domain's /memory node as well. This is not the case at the moment
>>> for static shm unlike to other sub-nodes of /reserved-memory (present in host dtb) for which Xen creates separate
>>> /memory nodes.
>>>
>>
>> Hmm, correct me if I'm wrong,
>> If we describe twice in domain's /memory node too, it will be treated as
>> normal memory, then any application could use it. The reason why we put
>> static shm under /reserved-memory is that we only hope special driver,
>> like static shm linux driver, could access it.
>>
>> If you track down in make_memory_node(), only memory range that is
>> reserved for device (or firmware) will be described twice as normal
>> memory in Dom0. Memory like static shm, will get passed.
> 
> Reserved memory is a region of RAM (not MMIO) carved out for a special purpose which can be used by a driver for e.g. shared dma pool.
> Therefore, such region shall be described both under /memory (used to present the total RAM and reserved memory is in RAM)
> and under /reserved-memory. The OS parses /memory and then parses /reserved-memory to exclude the regions from normal usage
> (there is also no-map property to tell OS not to create virtual mapping). So you do not need to worry about OS making use of something we marked as reserved.
> This is exactly what Xen does if there are regions described as reserved in the host dtb:
> 1. Xen parses host dtb, adds reserved regions into bootinfo.reserved_mem so that it will not be used e.g. for allocator
> 2. While copying nodes from host dtb, Xen copies reserved memory nodes to dom0 dtb and only maps the regions in p2m without permitting iomem access
> 3. Xen creates another /memory node to contain the reserved memory ranges
> 
> I guess static shm is not exception to this flow. It is part of RAM suited for memory sharing.
> 

Understood!!! thanks for the detailed explanation.
I've created a new commit "xen/arm: fix duplicate /reserved-memory node 
in Dom0" to fix this problem in v4[1], plz feel free to review.

>>
>>> 2) Domain dtb parsing issue with two /reserved-memory nodes present.
>>> In case there is a /reserved-memory node already present in the host dtb, Xen would create yet another /reserved-memory
>>> node for the static shm (to be observed in case of dom0). This is a bug as there can be only one /reserved-memory node.
>>> This leads to an error when dumping with dtc and leads to a shm node not being visible to a domain (guest OS relies on
>>> a presence of a single /reserved-memory node). The issue is because in make_resv_memory_node(), you are not checking if
>>> such node already exists.
>>
>> Yes, you're true.
>> In Dom0, we could see two /reserved-memory nodes. I think, if there is a
>> /reserved-memory node already present in the host dtb, we shall reserve
>> it in kinfo for make_resv_memory_node().
> This way you will only take the reference of a region but what about all the properties, node names, etc. that you need to copy?
> This is why Xen first copies the reserved memory nodes from host dtb and then adds ranges to /memory.
> In our shm case, we would need to insert the shm node into existing reserved memory node. This is a bit tricky as you can no longer
> make use of fdt_{begin,end}_node and instead use the helpers operating on offsets.
> 

I've also created a new commit "xen/arm: create another /memory node for 
static shm" to fix this problem in v4[1] too, plz feel free to review.

[1] 
https://lore.kernel.org/xen-devel/20230911040442.2541398-1-Penny.Zheng@arm.com/

> ~Michal
> 


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 06:12:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 06:12:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599015.934238 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfa9V-0001bd-9b; Mon, 11 Sep 2023 06:12:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599015.934238; Mon, 11 Sep 2023 06:12:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfa9V-0001bW-6G; Mon, 11 Sep 2023 06:12:05 +0000
Received: by outflank-mailman (input) for mailman id 599015;
 Mon, 11 Sep 2023 06:12:04 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfa9U-0001bM-7a; Mon, 11 Sep 2023 06:12:04 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfa9U-00039F-5o; Mon, 11 Sep 2023 06:12:04 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfa9T-00052L-T9; Mon, 11 Sep 2023 06:12:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfa9T-0000SP-Sh; Mon, 11 Sep 2023 06:12:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=FxswjfC7Thu/jDsKRWVVYqTxqow71eoUlVCwC28sr5Y=; b=1OOXrchfyGxj/9fHbgy5Oc4a9P
	lAS9Rslm+p/t517pTPBHmZGNJf2goC0G3eWFH6Fb9wCREe3PWk/7srEvZjzBga5fcPMLM3viahmXm
	rNpJhhbSuRLQkX1oANeB8R2PZpaPD/KxcRG1H79TfWLE9iijILhepCx6kGdOROY7ZP9A=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182901-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182901: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=1548b060d6f32a00a2f7e2c11328205fb66fc4fa
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 06:12:03 +0000

flight 182901 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182901/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                1548b060d6f32a00a2f7e2c11328205fb66fc4fa
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   14 days
Failing since        182544  2023-08-28 20:42:13 Z   13 days   24 attempts
Testing same since   182901  2023-09-10 22:40:17 Z    0 days    1 attempts

------------------------------------------------------------
2275 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 275097 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 06:27:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 06:27:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599027.934254 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfaNu-0003PU-OX; Mon, 11 Sep 2023 06:26:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599027.934254; Mon, 11 Sep 2023 06:26:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfaNu-0003PN-LW; Mon, 11 Sep 2023 06:26:58 +0000
Received: by outflank-mailman (input) for mailman id 599027;
 Mon, 11 Sep 2023 06:26:57 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfaNt-0003PE-Mp
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 06:26:57 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2048.outbound.protection.outlook.com [40.107.7.48])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 33c33297-506c-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 08:26:55 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by DB9PR04MB8156.eurprd04.prod.outlook.com (2603:10a6:10:246::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Mon, 11 Sep
 2023 06:26:25 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 06:26:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 33c33297-506c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=G+PgZIwTkgYFPPdVppha1PQdpBEga+ppZBOg0mrrQaFOhnVGJHRat+TO7yDIYsUN4oIt+yh4F0Fso9u5AEjxgep+5wVVnNYwXVv5yNOt3GQNDo5/URM4ci7yY7skHewdpwHajm5i2YSKJF+2vgvZYISvRH1jXvf6LeDTZmBaZO0HsJrTM4WTRiuC0vun38TZ2D2mzHLs1aBJN1PPeE69FAx5THkLD7rnBEv0znE0z5t1INEGiVnwe94Ft1wcn9/pZKRI4Q5yJZhV2VvEmWQ8W6TJEocMk7p7Pz+PLHkLP5DCmLR4h3NG/X2k1M+MoI7YlweHQ4Qd0XjTIEd2YRe3UA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rXoyWX9grCWk3DjTs5rM9ZydvgRbpa+79b36HefABhU=;
 b=C+pqqLLY7Un8AoQdvUMfLwl7U8CXYEZ/gGHDbdcEfB9OIzCZqSng9s+Dc3lHmMThX+uuFEaDb0Thof8/2t0khHjIKJBmPiG+ye8Dk4VQIY3aFAwVPQVmrlX3H4ZxiuNkGklfNPn/K4vrIoyy1BWrt0jug3MUaqyL6F+3AM0QIk8atJg31bbcqdUeVb6NwAJ8Ky+rLU/d5fH1PbpqHs7KPHroLJbzXL0vhDI2Fh4d9FxBpmiPOoAs4b3KoHACdYzTx1wzYjnitrmvW03glcayfe5ESz46aQYihwpJK2gfufwB8MchRXTg/k+VOLEsawCWQatahvuoWoforEofiY4Arg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rXoyWX9grCWk3DjTs5rM9ZydvgRbpa+79b36HefABhU=;
 b=tFqgCHDZFi9awKpJ7Ce4IxyOJp62brWZ8BwPJHIeFIdCRknBaqUeU787pWorhs3KPHhRpj48iB4EbqHxMrxF40i9n86nLupJzYaNb186xypYfiik8ehtUTs2wWB7J+sNHl00bYVt4t+KHJovtQaRYgkbTHU47T/eCvVF8tBwaKWfqgE5sJ9vS59GhPueLsBNK7cYBy3CN1WxGqycIdmFIOLemWXsYrzTg8XkZP/Y0sro/TD2p8646fM68fzz2xRmn2/nKaqlj2GVjw9R6k/n/CrNAXPO+bgGHg/9oTKGvy4W2XeReW1dSGAFaM+Fhi74gBX7aoX2ktxnHiZKYjGgcg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a390fbe2-6dc3-b96a-ba3c-b979e65ca2f6@suse.com>
Date: Mon, 11 Sep 2023 08:26:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v3 3/5] xen/ppc: Define minimal stub headers required for
 full build
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1693590982.git.sanastasio@raptorengineering.com>
 <dd3d9c5d9ec94f9e1747ccc0fbf82629a58bddcb.1693590982.git.sanastasio@raptorengineering.com>
 <16496c4c-4c92-7ed9-a612-72e75f86798f@suse.com>
 <7f6914e3-71e8-0bff-dc8f-c0f897ddcd2f@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7f6914e3-71e8-0bff-dc8f-c0f897ddcd2f@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0095.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::17) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|DB9PR04MB8156:EE_
X-MS-Office365-Filtering-Correlation-Id: 91baf02a-ab0d-43d1-22df-08dbb2900629
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7MAbkoWtTvyq4N/BzC7RjuaMIn3soAkQJwSuz1OUJkDvugIC1dBtuBur4aBVzuIhI8QSSdVm8MXW+nBlkUEQUD/o041FQu0WPlfKJfJYeakNaTTLph1lrp6kSTnnRaYwfpWHjhL2SbQdLYX335cqm6f8VX/spKBRGL0wl1wxYT0vGbxUXBWVsVy1tc0Ou8INQgncSSoZrbfEAirKGGeYAmgtkILi+mUi7W9AFhUwQJ8y4K26LUnAOkipbdhc+FE2TvtJs/EVyvu57LA+3WINSpkvoThsKc9Q88/DSEeLGNDVo09jYZqKcTJdbCndcY8CpAIeyHb0OY5Z1RMqS2CS2NlrMzeHLnG8OP8hj1Hyt/w1p2ZwzN8V321/bv7C8QqGH46RX1fRdoDi5bm2qlD5ZmFlsl9XugLTz6JUQZS4jrUrdvuvzPajgqdPnhYjULCffMA7gKaghvt+TpClWhRJ9w1f3eXjZVAIHvyIjQJMFLupi99M7JgpWpJekOT55NXC44H6h4rG2KWQX5lAVmS4msiiLyt4qWP7GeAZq5bB4mMp7dZZ9zJl9mDu0fB1+/6BeOpFsMrDX3GI9J6IWHizKpfgokP8ov9dptmf6FdDh2aTa+f8Orbg2+/U0vRT39ghi0y12b+MxOVvNfn8l13Rzg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39850400004)(136003)(376002)(396003)(346002)(366004)(186009)(1800799009)(451199024)(6506007)(53546011)(6486002)(6512007)(478600001)(2616005)(2906002)(26005)(66476007)(66556008)(66946007)(6916009)(316002)(5660300002)(4326008)(8936002)(8676002)(31696002)(86362001)(36756003)(38100700002)(31686004)(41300700001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RGpvcGRRdVYzRzVmMDdCRlFSWWkwdTcvbGVPOVdTT2UxTXBSVXhYdll2blVX?=
 =?utf-8?B?YXNoMFFoL2tSSW9UMXZITEplTmxvSCtNZ2JEZm4rVU1RSk5TV2tDb1VmSWVz?=
 =?utf-8?B?RGZNVllnZVZFVW9tRWRwUGZmR0MyOHVlaWc3V085RUZGRFJNOWJHZ3pZbFFt?=
 =?utf-8?B?THEwTW8wTXhtWFdHU1ZDZnBKU1NReTc3VTFkTVF4bm05UU1BSUcyRmxJWUF5?=
 =?utf-8?B?Q2lhU1o0emsvNXExSXJLYkM3a1lyNEx1enF6K3h3SFhXQzVHbnBnekhDMlh6?=
 =?utf-8?B?c1NEbG9CTFNtdjd5Skp6MTg0U0YrWW9lc0lQWm04OGtoeDgwWVJIOW1tVHBT?=
 =?utf-8?B?SnFjbFBxczBzK05wQS80K0xldjdsLzZKeGpuMmJERUlGTHZkTWNBUm1vbnRU?=
 =?utf-8?B?alJjOUdmZEFiNlY2R2c5M1Q1S2wybUoxSmo1SGx4VzVZeVQveTFxRE4rVEFP?=
 =?utf-8?B?WndQM0ZYcnFHVE85Z1lnRnJEUFFkVWM3ckNpSjV6NXlZMmVJN3VLVXNEVVo4?=
 =?utf-8?B?dXlqbTB6a28wRFp4dWtOZHc4MURHSnJKYTUvaElzTk13b2s1UHhxKzdQNXl0?=
 =?utf-8?B?NENhNTFkQVkvYm82Vkt1RUlNZG5vVmdsUk1QZUt5SGtVb3d1TmlURnVrR2xz?=
 =?utf-8?B?ZXVrUmJvWEsxbTRUVTFKZk1ST3lGOG1IUGUwcjl2UTg3dUFtd3dSc3ZQVXRQ?=
 =?utf-8?B?ckpOWUxVVVNxZGpPKzR1eUNsdzZtVy9uR2dDUEh0SElNUkJSKzBDNFVwTFdv?=
 =?utf-8?B?UHozcDUxZGlGR05qeTVJYm9FN0pnNE1rYTVEck9CRW16Y2ZJK1dXdnhZbE13?=
 =?utf-8?B?NFhSUUpYZmdJSFJEOW1LR25kZkE1Tktwb0lWejlnYitDcUR6UzN5bng2UUNp?=
 =?utf-8?B?OU12czRteWg5cDBER3RYUm81NUFQMFpqSE5rL2EzS0ZTdUtwcFRoYWRGRnBU?=
 =?utf-8?B?MU93Z1A1ci9pd2VqVS9WR2JxakRJVVZtWU96R2JZSjRlaTMwQnY5VmVHRjND?=
 =?utf-8?B?RW04cTRaTWRLdUFhdXg3UnhCeXl0NndBNjR0SHo5K3N0TDRabzJXVUlITmxz?=
 =?utf-8?B?U2ZIbjFmTVJlNDJLUm51QW0rNlZmY1NKWTFCbjdLNHBnSlVyM2JyVTBxVWVY?=
 =?utf-8?B?NUlKTDZwWjg0alZ6NzcrVkN1M1I4dlViTzY3S2tBSnAzRnlvbnhoWXZ3blJ2?=
 =?utf-8?B?QkNVQVlzQTJGL3djV0hvbTcwSkNoM2lCMGxaWlhWL2g0RGJSc04yVjRaMTlJ?=
 =?utf-8?B?ZThDQUxvVURvNEVad2FYdk1zWkdsRDdhSEFpcXdXVkoxbmxuMDBhRC9SNHJW?=
 =?utf-8?B?UDU3ZGJLampBNVU5a3RUTFBvbWREVE5hSS9yTkFQa2l1VkoxNFR4SmgxVjcy?=
 =?utf-8?B?T2NGSzFWQ1dNY2FWTU9GSTgzN3dyK2wyQkZJdTgyTGt2T1dwOHJRUitSazNu?=
 =?utf-8?B?ckNyTnAvQllnUVBjNzlZaTZSL29GTG81VXlaaW9vNDRwcWowQmF1RldiZGxp?=
 =?utf-8?B?dUJ0T0lIbXk5YzNXN0F0dlBUdWx6NTNuNC81Y0dlb0lyY0lzbW9jV2NFY3VG?=
 =?utf-8?B?UmxqbnFGMUpwdnlySVMzUEFQbVZNcmlLd2Q4VHRaVnBRZFkrdThuVWNZVnUy?=
 =?utf-8?B?dHEwbFlNbFpQR0FadmhoL09nenM1dFRlOEUrTGxaclBMQkczN3lqcWpWUjhy?=
 =?utf-8?B?SExzYy9xdWFVVVBESGdzSDFkQTdPMlF3d1p4RXRjY3JyU0NMUGVRSjVzNWNR?=
 =?utf-8?B?bjI1VysxeVY2MlZzREV1elJORWQ2a2N3cjQzcjZab1VmZUpzdkIzbzd4N1dS?=
 =?utf-8?B?eEQ3ZUU1WFFGdGRqdDhqVkVmTmhnZUw4Nng0Y3ZVY002Z2lUcVBVT2F0ZkpS?=
 =?utf-8?B?eTlCVmtRTTE5djhjTGtwbzB1REd3YkZSL29EcnpjOEJKeXVFZk8zRmpJelRL?=
 =?utf-8?B?d0kzUlB0eGowaVhMdms2ZnR1VG9BY3BrUjM5VnM5TTBFOUpRd29qeWpUSitM?=
 =?utf-8?B?Qm1YMnZkZTJXUHAxVml5MzlWSHJSUjludXVxQktHcmhMOGt2QTRJVldEOUIv?=
 =?utf-8?B?enI2M3FmL2V4dHE3bGo5RUtxRG9lblZhdWNDb2xkSUJJeTdFOVJmdkNZYThD?=
 =?utf-8?Q?UelwsZvHvJ0BxObTdEH4x+SJP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 91baf02a-ab0d-43d1-22df-08dbb2900629
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 06:26:25.2551
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 84zB2265AKemvGCXrNFUolAq4Uidq1ezFWZeLqh3HVeHlCAqdrVDzX8GOwMcCeLeshJmeHVOPaMEHmBbyYlmwQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8156

On 09.09.2023 00:05, Shawn Anastasio wrote:
> On 9/5/23 10:52 AM, Jan Beulich wrote:
>> On 01.09.2023 20:25, Shawn Anastasio wrote:
>>> @@ -13,6 +28,237 @@
>>>  #define __pa(x)             (virt_to_maddr(x))
>>>  #define __va(x)             (maddr_to_virt(x))
>>>
>>> -void setup_initial_pagetables(void);
>>> +/* Convert between Xen-heap virtual addresses and machine frame numbers. */
>>> +#define __virt_to_mfn(va) (virt_to_maddr(va) >> PAGE_SHIFT)
>>> +#define __mfn_to_virt(mfn) (maddr_to_virt((paddr_t)(mfn) << PAGE_SHIFT))
>>> +
>>> +/* Convert between Xen-heap virtual addresses and page-info structures. */
>>> +static inline struct page_info *virt_to_page(const void *v)
>>> +{
>>> +    BUG_ON("unimplemented");
>>> +    return NULL;
>>> +}
>>> +
>>> +/*
>>> + * We define non-underscored wrappers for above conversion functions.
>>> + * These are overriden in various source files while underscored version
>>> + * remain intact.
>>> + */
>>> +#define virt_to_mfn(va)     __virt_to_mfn(va)
>>> +#define mfn_to_virt(mfn)    __mfn_to_virt(mfn)
>>
>> Is the comment really applicable? The only non-arch-specific file still
>> doing so is xenoprof.c, and I'm not sure you mean to support xenoprof
>> on PPC. PPC-specific files would better be introduced in a type-safe way
>> right from the beginning.
>>
> 
> To be clear, you're suggesting that I define virt_to_mfn and mfn_to_virt
> to operate on the type-safe mfn_t wrapper? When doing this,
> xen/include/xen/domain_page.h:63 fails to build, since it seems to
> assume that these macros do not use the type-safe mfn_t:
> 
>   static inline void *map_domain_page_global(mfn_t mfn)
>   {
>       return mfn_to_virt(mfn_x(mfn));
>   }

Oh, I see. That's a result of (at least) 41c48004d1d8 ("xen/mm: Use
__virt_to_mfn in map_domain_page instead of virt_to_mfn") not going far
enough and f46b6197344f ("xen: Convert page_to_mfn and mfn_to_page to
use typesafe MFN") not properly doing the intended conversion. Let me
(try to) make a patch, once again ...

> If the comment is no longer accurate I can drop it, but there definitely
> seems to be an assumption in the codebase that these macros operate on
> raw unsigned longs rather than mfn_t.

Well, the comment is new (in PPC), so it cannot really be "no longer
accurate". It (sadly) still is accurate in Arm, but I was hoping we
would be able to do better in new ports.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 06:35:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 06:35:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599033.934264 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfaVr-00057N-IG; Mon, 11 Sep 2023 06:35:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599033.934264; Mon, 11 Sep 2023 06:35:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfaVr-00057G-ET; Mon, 11 Sep 2023 06:35:11 +0000
Received: by outflank-mailman (input) for mailman id 599033;
 Mon, 11 Sep 2023 06:35:10 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfaVq-000576-3P; Mon, 11 Sep 2023 06:35:10 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfaVp-0003XH-Uz; Mon, 11 Sep 2023 06:35:09 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfaVp-0006YA-Ms; Mon, 11 Sep 2023 06:35:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfaVp-0002YU-MQ; Mon, 11 Sep 2023 06:35:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=5ruaSz7oOJ7kbOmRj/gSCphucZL0gF1mOjYmimQ8zdo=; b=cTd/R4hv3X6C1gVBsIrqj8R37w
	ghK65pccmRfI2ykBdd7D0f+sdfjKu1yefFZi6htm6TpcTLVykUibV9xfZHF0b7aSs5b0baYKUWlnH
	Z16/jEoHnQCuHtEojZFRUzsLQm6em1+oTfshhKNhaZp2lzCbbKNHR7sx8w1P5hI9g72s=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182916-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182916: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=cc26a2cb3162845bf51d41ea8cd1c438ffa6c50a
X-Osstest-Versions-That:
    ovmf=0bcc503595fdd8036701dab54eabe4f40ecbb768
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 06:35:09 +0000

flight 182916 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182916/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 cc26a2cb3162845bf51d41ea8cd1c438ffa6c50a
baseline version:
 ovmf                 0bcc503595fdd8036701dab54eabe4f40ecbb768

Last test of basis   182911  2023-09-11 01:40:50 Z    0 days
Testing same since   182916  2023-09-11 03:51:19 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Mike Maslenkin <mike.maslenkin@gmail.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   0bcc503595..cc26a2cb31  cc26a2cb3162845bf51d41ea8cd1c438ffa6c50a -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 06:38:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 06:38:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599042.934274 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfaZA-0005iQ-13; Mon, 11 Sep 2023 06:38:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599042.934274; Mon, 11 Sep 2023 06:38:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfaZ9-0005iJ-U4; Mon, 11 Sep 2023 06:38:35 +0000
Received: by outflank-mailman (input) for mailman id 599042;
 Mon, 11 Sep 2023 06:38:35 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfaZ8-0005iD-Ul
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 06:38:34 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20615.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::615])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d41b2491-506d-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 08:38:34 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by DB9PR04MB9889.eurprd04.prod.outlook.com (2603:10a6:10:4ef::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Mon, 11 Sep
 2023 06:38:30 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 06:38:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d41b2491-506d-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Rej/j+ttGNxbennkffBqXtGngTHoKx8d7v01k0FNUlmM8AkP6UxbzRROVkOXiA37X2FHK/quVONilcz4TYIx1vwmnpO8Swv3PNHAcrXXycE+qESvxJd/FnjrwFVT7PUTkU7L0yrI99uPthqg3uali5noG0708qBcq9SoUhbX/B1I+CYhJFjLiFPxfAYxc9Tp3tmBc6AhNvZoFAKaiYe0xzAS1oXht54bvZh4iiZAkPDaomw5V8hCvUBE4LlkPOLVs+o2xGuLcvePibpNHum34wKtNO1q2KwSWB9pDn8Eyu5fUUP6QJdfaetpDoLc44CjCMKZIp5hlyoZeIJA3kQWWA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DFADsLsb1kDVyT8qTXZJEa8z+dCBZPheDsPwAKar0tI=;
 b=ZcBMW1LtTfdCK8YGwonELF/53/QJzmd2vrk/pGQ3KXvyrYIU/hXqVELeFD6Ojr1ZPaN5EkJouhOPxzGB6jO+OuomNz9MmVAyDsjWH0Lspbm13Gt90j8Y9+9rQblIxnxdbqeOg6MaSp/wgceqRdgho+EuktUqPNtTtXA9QOzAiaKcHmiTIpWF1GwJ4yCuUh7WZGAUIXMSRCiuMljLolwWyseGKvnaljgxO4EI10O+84kRCFXcwrp+EIHQ7w3ypeBXIY2F7U/ywIOZSsJWmrJ55Wwn87v8u5zDHnLkmE1682H2HHUtiPdfZidBAlBBf4tZkBpDJZCc4Kpy6yC5RxOUbg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DFADsLsb1kDVyT8qTXZJEa8z+dCBZPheDsPwAKar0tI=;
 b=tuT+C1gSa0Ag7JUMexKVurn55frHjK0hH/kA2AD/tOkSdjLn7vPUAZ9On8BACeTtx8F5NIVeBCRqjcb1RgLVrOWxkrYC0ydVP1npmBGMmTsDLKofAdb69e23cWXmNFgxNMhv0i0lbAOrJGQz8hSOo+SiloXV8d4Eu6nT85eDe1dG2kGSS/4CQPlipypXX+s+07H9REBt7BUvi0DcmjXaljhjTHxoYbtbJ4O3H5Bgb8mNSh4mtXyrjVSjMkPtlb80KWrMw/UoQvJkOLMqNel1+GRTi9uLf1hm4qagc2wku/GSPjwQuJ5d38IqMn+4wP6GIiGGGJcaFVWh99fH/z94dQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9b5d517b-fbc0-d9ce-d6be-d4b8e3c0cc35@suse.com>
Date: Mon, 11 Sep 2023 08:38:30 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Content-Language: en-US
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Shawn Anastasio <sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] include: make domain_page.h's stubs properly use type-unsafe
 MFN <-> virt helpers
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0076.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cd::20) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|DB9PR04MB9889:EE_
X-MS-Office365-Filtering-Correlation-Id: 2aa9abaf-9a02-4fd4-816c-08dbb291b66b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5g7b7RscvI30KbUT9JHX9Fjb6sDK6LYXOcxU8x+3G4Zh4mcE9S9QXxvuvMNjdoWKppup9hTxH6hCKd2sk7uDhag/UBt2npshsAR7W6lFsfYiDo903j7KT3k3nhnTyVN+GmaQ2AhXI2NcUz/xkK2njJrrSuYi4+VHdSXOpcEQEh0Ykf6+B1RDKSMAWiPUFvWJYJS7/Oi+jMCnRyJomXzbtWG2rzlyW+wR4PGeQRED+WIHBl6UjTX1Q0O4CVZj8LFobSwPFYityW954naXvIjZMzhxKTgI/AL4Zy21k5HyemGiRvzcgiOaQFQcIUatOy+Lr/1EiP641ab4pVwmxOnlyn7BAwtswdOqClCzrxZeKAwzuV7hvRFcRHijxHgGb9+6gkwvRHISjWD/Rbd3QAOiaeUv5euFO8/C1tAOBwUmlTHS8MRZBar4EanyLTDSgIeAlq8CYqLAzb3jIst3URnszH9eeM1D5heSdABm17R1GJ1guFI65klszeqysj6nAL+fONfJo6SOj8icQ78KSy4o7BtBbKqkKPYkLaSAxsQC/RuUwCDoV30mvC99lX8hKR1nVA3EuD/WkmwDYTm5mBj12qa7nNsSNpWKt06WAJrRZ6S3x366adKBimoaYg+RdXrEbp19ydPDNTtSelRgDeNWgA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(376002)(346002)(39850400004)(396003)(366004)(186009)(1800799009)(451199024)(31686004)(6486002)(6506007)(86362001)(36756003)(31696002)(38100700002)(2906002)(26005)(83380400001)(6512007)(478600001)(41300700001)(66476007)(8676002)(4326008)(8936002)(5660300002)(54906003)(316002)(6916009)(2616005)(66556008)(66946007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U1M2dXFSQVZlV2h6NmpwRXUyaWNvcjZMR050R3BoK082NWgveGpWYTZJQkNM?=
 =?utf-8?B?M3JBYjdDeWZpRWMxSmJJV2FXTUxjTXZTb1AyZGViSWh5dkxYdFFvMUVpbHJ0?=
 =?utf-8?B?MUdYb1hrUm9FbXNjYzU4dGZkS0ZtQUlvZHpyVFBWTkRwLzZVblQrb2xucmhT?=
 =?utf-8?B?NHRQVTE0TjNHcmRRdGwrNzFGUEwxNWFxaTV6TTNCTUo1YUxiaEhFUE9pMUNn?=
 =?utf-8?B?bFRBMzg2MGR6bm85N3VRU0tJVCs3MzJXTXoxbk9PTUxOZW5Ld2RITk4xWlhQ?=
 =?utf-8?B?QXU3aXdUd2NyQzViL1JTV1VjMHNlYURLVUxBQkx5U2RmeitDNDNQVWpRM0xy?=
 =?utf-8?B?RlZ3d2huOG9oTE5UVDhaOWFYVHo5VnFLWjVPNnQyWVdqWktINXVWd1NPcXVK?=
 =?utf-8?B?QS90ZEV3RkZyaVVHZzVTSFNOaE5rZWpKdWhua3Vya1N5N0J5Sk5qZjRBbDk2?=
 =?utf-8?B?SDNPalhGS0ZFOUgzd3dZc05GZEdxNlVUdXQ4MnRZenJNTXE4WndOWko0T0dj?=
 =?utf-8?B?ellDb05MQVhZUDZLYk4xWXl6OGJiV21FRTdPcVRTRVZkOTYwN2lVM2lSdzFW?=
 =?utf-8?B?SnpISVBKWm5YdUk5MDdFZnFOVjFnZmdQaStHMHFqWWRmcnNRNUdxYnZKVWZW?=
 =?utf-8?B?QmRrUU9HcXdvQXBocnBwalFQc01jRklXQ1ZHY2ZvdlVwWDJSeXgvQ09pc0RB?=
 =?utf-8?B?WWh2WldzR1ZSc2VLeWtyVHRqQmtFSmVOQmYvdEQ1aWU0N3pva1hIcjN2K1kw?=
 =?utf-8?B?SFgzZjkvd01JNk5iOGI2NVBwWms4cll2Mmxrd0d2OSt2L0IvMkF5WTlCMlJG?=
 =?utf-8?B?VDdFODlFM08yamduZ2l2bmJEY1YxREtSTGNBZlNJbDk0Zkh0dVpxRlYzK1Vv?=
 =?utf-8?B?QUJkdm1OZExGbVZEL0xQZ05CSlk0endZTENTU1Iwd0FaZHZTcUtXZmVxdGVp?=
 =?utf-8?B?TWUxUThsa0Z1bTF0VFYwS2kwSXZHd0hNQmFzdUtWMTZsd2RlTVVDbDlta0s4?=
 =?utf-8?B?aTVSNDVWdGJwd1BRTU9xbS92dEdWdXVKSjBQQThrR09BcjF4QUpLUHBGVHlX?=
 =?utf-8?B?a0VWSkk1OWI2RXJvOFVlaEZpd0QwWDZWRUVtQ0JxNHhtOVRTQ05kT1RUcVQw?=
 =?utf-8?B?MmFxKzIra1dVMlhEc1NDZXVFVDFCSjc5MnF3aHZTZzdaZjVic09OcnJjUHdu?=
 =?utf-8?B?dy9jV01Vb0twZi9SWFIzcUE5cHRzYkRmVDVObmJ3YUhaUHRsYkVVYVJXVlc3?=
 =?utf-8?B?UmViMHNqNGp3eGZyTmxiVTNtc1ZLdk9UYjdYTG1vOWFCWUV5QTFVbzg0YTRF?=
 =?utf-8?B?SHA3bFhvSnY0Zk1leWd3S2JETVJPZ1Baa0pmL1FYakNJanN4cTkzS2dDbm5S?=
 =?utf-8?B?cDU1cTFGRlNIYUhhSURXWS90MUl6REE3K1BSeENZWTdkK2E3emorUWhLek92?=
 =?utf-8?B?NWkwOFozbG4wSG5mcXcyYS9NQWpqNTVvd01pSkFHT2RVZXRGVlVtNFFsT01I?=
 =?utf-8?B?dUdvSkJWRWgyZ3hqM0N4RlNlNldRb21uNmdaUWh5ZS9kdytNWVBjMDJMVk1r?=
 =?utf-8?B?M1YwcEQxbEF5SzJSNjZQWDUwMTlsNW02WkMvNHJRV1grYnJjUmlFYWluS1du?=
 =?utf-8?B?WFFFYTRNb2h6TVhldzhlbjZWNlBsYmdPK2Vsc1FQWTRzUjdOTE9INFZuNDNr?=
 =?utf-8?B?aU1BRUs1cGQ4UXY3WXVLRFJSWXF1dTRaNi90ajJld2s5RDRtZFhkNWw4Qi84?=
 =?utf-8?B?R2dJYVpXdnR5Znc3WmxRMks1OHZGaEFHSFVCWE9KVSt3em5yTmlRa2JtUjhD?=
 =?utf-8?B?cUpTWEs2UDdmdVFnRWtyL0Y2Um9RazY1ZlljajNROVN1WjV4eGgrbXZ6eW5M?=
 =?utf-8?B?cGU5UTNyQ2Mza1J0Qi9yWDJsL0g4bTZWRGpja2xhc2VOM0lqMUkycjgrME1V?=
 =?utf-8?B?UEZCeEhKc1crYUljZ3RnZGFHdEZPSVpNT1gyaVZHbmd3aGw1V1Jzcy84UlBp?=
 =?utf-8?B?SUhhNENBQXVWQWoyL3liV2R4YnVuRWRUNnZHWHB4Sys1bnhXckIrd2tWbUN6?=
 =?utf-8?B?UkUraGdHWGRtRXB1S0kvUXV0ZCtzNG9xU0FnL3JIejFXS3RwalZLUGJvWWQ4?=
 =?utf-8?Q?HSRFczW6z9gRYv/tvELKlJGVH?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2aa9abaf-9a02-4fd4-816c-08dbb291b66b
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 06:38:30.4609
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9BkthNkDrEkVEdVeEEnP7G81iVFLiMuAnOV4tCHKIEN7ecH1sEbZvv8FJlT23UHo0A7clUv6D69O8uoXz50jcg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9889

The first of the commits referenced below didn't go far enough, and the
2nd of them, while trying to close (some of) the gap, wrongly kept using
the potentially type-safe variant. This is getting in the way of new
ports preferably not having any type-unsafe private code (and in
particular not having a need for any overrides in newly introduced
files).

Fixes: 41c48004d1d8 ("xen/mm: Use __virt_to_mfn in map_domain_page instead of virt_to_mfn")
Fixes: f46b6197344f ("xen: Convert page_to_mfn and mfn_to_page to use typesafe MFN")
Reported-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/include/xen/domain_page.h
+++ b/xen/include/xen/domain_page.h
@@ -56,11 +56,11 @@ static inline void *__map_domain_page_gl
 #define map_domain_page(mfn)                __mfn_to_virt(mfn_x(mfn))
 #define __map_domain_page(pg)               page_to_virt(pg)
 #define unmap_domain_page(va)               ((void)(va))
-#define domain_page_map_to_mfn(va)          _mfn(virt_to_mfn((unsigned long)(va)))
+#define domain_page_map_to_mfn(va)          _mfn(__virt_to_mfn((unsigned long)(va)))
 
 static inline void *map_domain_page_global(mfn_t mfn)
 {
-    return mfn_to_virt(mfn_x(mfn));
+    return __mfn_to_virt(mfn_x(mfn));
 }
 
 static inline void *__map_domain_page_global(const struct page_info *pg)


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 06:44:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 06:44:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599048.934283 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfaeO-0007Nh-Js; Mon, 11 Sep 2023 06:44:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599048.934283; Mon, 11 Sep 2023 06:44:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfaeO-0007Na-Gw; Mon, 11 Sep 2023 06:44:00 +0000
Received: by outflank-mailman (input) for mailman id 599048;
 Mon, 11 Sep 2023 06:43:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfaeN-0007NU-3v
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 06:43:59 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20607.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::607])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 94a6b95d-506e-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 08:43:56 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by DB9PR04MB9963.eurprd04.prod.outlook.com (2603:10a6:10:4ec::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Mon, 11 Sep
 2023 06:43:54 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 06:43:54 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 94a6b95d-506e-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aSBbobD8mE/XjEnOvY0wz902B2r4t0pWYzWDqWlP3IHmgEeiLLuq0qial78faoaY5YfH1HZwWpkP2963hhePK1RAMiGYXqQfr2e805dWBl7K3JiXkZWSKnUUhE7SXEBDHV70frdcTefbfiWNNiSK+rv25s9SPut7WxptBiq5JLs9ufDRxy0X6uS6DbyHc9uHPDUpnwc+/9hTmol2d5OsdEe3cwtb+wj8XvxrVCkWiikY/x5p6t0AGHm2YrFpsiSb6llh9dN6cB0hlRLCmJboLVfdt1f+1FTYQD34C6xzCsFa3A7MHJ3OS/f85bSBeBBwzQz04JqcpRBg412MiHlb3g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=eG7hUo5YGTwMY0DH1KhehTwmT+En0n3bTKDM1VfDERw=;
 b=iL6hJ213wNJ18D8AnZgTSHdxH879k+qoDJJMOmsO8TkDp/UcikZO7cPUfh1l1TULatFtk0cy7/CqFild0CAQYMozuOF2l/uJmYUKuCnrjqYr1hE+SEV96HAz50kdME0ZWjwQuyKsGF6ICErywag1UO6JHq6VUMj1qRjg8bDmV154k70UWDe28780eYYwFkJmLMRHytinmvpUaoU6a+PCHOmmpNG6X58w48mmk8QP2KQ8r5h4Sa1CorLitdFLWtuvKfqb/v94NgtFHvsgEilfWyWhSSakpkiZHW5lYujhP7U9BALLvteuL9xYHUoFOsGRbYEDKZlT4y+/AR1y7wzFfg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=eG7hUo5YGTwMY0DH1KhehTwmT+En0n3bTKDM1VfDERw=;
 b=ZoPQA+GbnpqW0OR7S6H5JBHRYlFbJPvxbvnYaUyjdx/BVo3bUDw0q5f68iatKqcyq9Fr7B/oPqGWxqdfjdH0fpZEY7ECMKs2QU3Wh7hMFfquh2eqSTWalIlrDd0kRN70p50exIIPuCZCZI0mriZaKAGJZbEnYJkqfu9eoSWh8OBPg/kZ18td1rf/ANLCyjb5IRshyPS57DiStXHDfktrSUFQiP6tgu3sFR91WyOrFNVuBIb35InBM/BEb+JsLtJl4Z0mWFNjexUCm3ETqwAfj+9aiiCimxBkM1p8D/puPVec44JhQXobn8hhL0ULT0ivx72tmsOs2WQwI+8puHZ5eA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <36543676-d926-89f8-eef4-27b97a3aab9c@suse.com>
Date: Mon, 11 Sep 2023 08:43:54 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
 <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
 <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
 <6818e3ac47edca6ba107b8eeff95955a@bugseng.com>
 <a52733a0-ec5a-3b49-ccec-7a7e8e775c4c@suse.com>
 <7d07fc38-14e8-6cc7-2b0c-816bc68c7317@suse.com>
 <3d44b3b0b185418482ab60a693d930a9@bugseng.com>
 <98406cf53192652013d35ee8856df5c0@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <98406cf53192652013d35ee8856df5c0@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0029.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:14::16) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|DB9PR04MB9963:EE_
X-MS-Office365-Filtering-Correlation-Id: 2aadd132-f41d-4be6-c2e1-08dbb292775a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	L/KiKekXhNKa88RS8ahLrDadR2CrNvgX6MMYTsV9lZTE2Jr/WKYKMqdryE8heCSB74lThQ7g5bIH+0j9F9krCluggz/BG6s552ZgJDQIBlsG/iiKhDJ7izhrsYm756m0fkGyuEwGYFefEIES1ZDRFL6r6vlu+ALjJzRv5dsB1luJFP+n63VgHBlMd8Tm/Y1HOAPmus7DER9ErzrNK54P7it0+6W9uP34d33oQePHH/mEbjQUI5LfSh666Xvv8qm3aBWKpFxjT4jB/kCXcykjk8/9Iv3oE+TES6+hMFI0p6gsdJmi970EZoyGoTVT430UIYy+kyA6F/4yz4xpOdpkFKDo5JvQigpOqlEanFcsmE1JPy1NrQ/O+T3oYLDdOjFdMarUAhducFvLgAs8zrRVDlV43cw/HmcGKEmhAEsIlOQiUl0VBXfG9lmSXN9Ch5nAJzg95HiL8IGO4YtGfE3Ma2rXpPTQICYBAvD6Q49JYlkDdRyPWypEuMINVHGAcl+zwTWNqljioJm/NnQy6BMjkyvnow0aHtf/o0zUEDDOGZZgaVG4Yv1JNDp5MFwEVNXClMwkuN1bxhmv1UYfZwMezTOVwvLNuhpaHHMqA6jpykkTyb0derm1oJAjC1S36aoq75Z2871WEoAoEX+9bheWZg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(366004)(136003)(346002)(39850400004)(451199024)(1800799009)(186009)(41300700001)(31686004)(66899024)(53546011)(6506007)(6486002)(36756003)(86362001)(31696002)(38100700002)(26005)(2616005)(2906002)(6512007)(83380400001)(478600001)(316002)(8676002)(8936002)(5660300002)(4326008)(7416002)(6916009)(54906003)(66556008)(66476007)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MU1ycUJwVlZKM1ZvRFNRNEJZZlZkNkdteVF3cnRyU0ZreFBxYVFyc0ZKU2Vp?=
 =?utf-8?B?aGtrQ1FsdHBFK0NsSE13SVcyaTBRYTduU3BqUWFVMUZkN0doc0JiQkJKa3lj?=
 =?utf-8?B?S00zYzRtOEpaZzNkb25sdDBFTmhZM21XNUNCMmVBazZyTERRUVlHT0E0TlJl?=
 =?utf-8?B?eEcwZDJtb1E2clBOY3VYaTBPTXFwVSt2c3ZqNmU3OEpiOEZwTHN5T2JwQ1By?=
 =?utf-8?B?TzdNV3F0blduNTFuTGZyZTNnS21CNFZaUktRT2NLWW1icTZ6eXhHZlFDV3JD?=
 =?utf-8?B?a0VoMXQwVVBjc1RlNVlxOGtRcTNqVlRlbXNGZWFkTTFnenpUSzRxRzRwcXZl?=
 =?utf-8?B?NE4wSERKcE5ONjFCSkVKRE1TSkpjR1FFWTNlQXlsOW5IMHJ5c2N3VFpwekFB?=
 =?utf-8?B?cGdaQmhidTNWd01EdllwcVRqeFV6eWs3MVUycHZPYk1KRlkwbFF3Myt6OUR3?=
 =?utf-8?B?VGNtaW5PczRDRU1Jd0dBMjJmSC9Mb0huWlAzYlBEZ0pDdi95b04zRHM1aGsx?=
 =?utf-8?B?YWlsWmRaU3BFZzU2MTFkZGF3WFhNOW9TaXdVaVJQVmwvTWUxdTZaTzlwMUVq?=
 =?utf-8?B?SVJ0SHJuSThZMTUxblJJRGhsNm5xNkhIaUpmYW5iMlhwNE5VYUh6eTc5cThv?=
 =?utf-8?B?azVnUXVKeVJYYjF3dVBLeTBaRzFIRW9WWThhZTlUMDhHbkZUY1Z3ZHFKL1pI?=
 =?utf-8?B?NDBTSDlSdHZxRVRaQTlMMDdUVmdPSDdEMjBsTXdyZy9PWis5ZlRia2FkRVlk?=
 =?utf-8?B?KzJGOVhvcWRPNXdnRnEzRzZJZE81ck11NFpGK2VpcnllNEZCWkM2UXB1cGw5?=
 =?utf-8?B?bjNUVkRwcFUwSFQ5eWkydk10cFc4VkZJWWhVUnpGVjFwNnRIRlF6bHNsdkxt?=
 =?utf-8?B?a0dZMnc0QXhqZ3I5U2JWVStpYmJvcFJPc01ma0tNOXdJengySHdmU1grWGJq?=
 =?utf-8?B?T0FzdWhiTEREU2t2Wmx4TVk0M1ZWbk9BZTlhczh0U09YWmh3K0NWdkljckxC?=
 =?utf-8?B?Ykk5UGRGYTZ1R2MxNVU0M04vNkhieGRNT0JqQmI5d2paV1Q4YnRQc0F0N09v?=
 =?utf-8?B?M3FBQ3pWZnl0Z01zMWhjcFhMTTR1Tk9CMmlDS1pFZ1R5aDZ4bkJ6YitIREYy?=
 =?utf-8?B?UkNNUWViZ3p4NmdRaERhdmNTSjdZMlN6dCs5Q2JLSmpHRllPek5tZ3RqV0hB?=
 =?utf-8?B?d0ZZa0NGSkdQcTdXRjBZMGJ4bEVIV2lIUEtNbVJEajRjUXB0R2hTTVdyM21k?=
 =?utf-8?B?KzVxSksyQUMvWUlqMHJKYTJyOUdaeXE1d0l0amNNV3NPSVRZdmtNY28xTFNr?=
 =?utf-8?B?U3VCRkZDcU5OeXU2TUtwNVg0SHIyckk0enllQ2NsY0NZNklFRTJPSmxFbGNt?=
 =?utf-8?B?NXBUSFd4ZWpiNmJNdDNOZGlxdjhQMEZkdmEyT0xDaHRPSmRkQnBkMW9RL2p5?=
 =?utf-8?B?VjI4NXZUb3lrK3dRWXN0a0NpQm4xalpwNUNqRVp3SDBqNHBVa0dIczVJZVRM?=
 =?utf-8?B?WFVKVUJEckFqTkc4MElTQ3FFa0gya29kU2taS1lZRDVMVmcwUUFkR2ZCbGxM?=
 =?utf-8?B?TkExcXNtUWhBZGIydm9pZlhYcUs1Rlc0cmw2OG51Nlk4Vnd3WlZrNHF4enVB?=
 =?utf-8?B?WFhDQ01wZkIzYkdXWUcwVzR6RTM3THRhYWcrS1k0Sy9TSThkLzZ5ekhrUVZy?=
 =?utf-8?B?UzN2R1VZTTdyS2dXNDVlUSt5L0xDMVR0R0NsdFNkaExkQnRUeTRQajJockIw?=
 =?utf-8?B?ckVEb0xuZk5IbWRkSTlIS3FmWVloblZMeVFFZ2pPYjhqZHJNZmhDSllrWTI4?=
 =?utf-8?B?c24zaERHYXVNOHozQ3VpR056Ym8rOGxpVGJWb0FpbmJ3a3FMTEc0eU55Q3Q5?=
 =?utf-8?B?ZnMxT1RoNFBvK1ZpNVdtcUFvMTQ0YjlRYVZTYW5rQjlhSlpEcnFOd2Z6MkxW?=
 =?utf-8?B?UThjaEMxUDRQTG8xQW8yR1pmZEJCZTR2YnoybTF6UHdLLzZWRG9EVHdldGp3?=
 =?utf-8?B?cVFBYytiMVp2QVZrcm53UXg0aTA4dzVlQ3l6Tm9GamxnNFVpTlJ3UEJCNUxx?=
 =?utf-8?B?L0ZjRHdsWHRhb2FuRzBwUEJtTHBYUzBJbHRyYWZaUzJMb0M5REZMMXppZlBi?=
 =?utf-8?Q?MRG8FYJ6mtxD7ASeawWd8JoyW?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2aadd132-f41d-4be6-c2e1-08dbb292775a
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 06:43:54.1733
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: zLG+M3/OyhyipWTSyVJf557iRphWGVqd224Efkr4Q5eR+el6y1W1djjlSGJAb1gxlTe/9jREJqdVcHuGq1dVCg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9963

On 08.09.2023 17:09, Nicola Vetrini wrote:
> On 08/09/2023 16:53, Nicola Vetrini wrote:
>> On 08/09/2023 13:59, Jan Beulich wrote:
>>> On 08.09.2023 13:57, Jan Beulich wrote:
>>>> On 08.09.2023 10:48, Nicola Vetrini wrote:
>>>>> There is a build error due to -Werror because of a pointer 
>>>>> comparison at
>>>>> line 469 of common/numa.c:
>>>>> i = min(PADDR_BITS, BITS_PER_LONG - 1);
>>>>> where
>>>>> #define PADDR_BITS              52
>>>>>
>>>>> I guess PADDR_BITS can become unsigned or gain a cast
>>>>
>>>> While generally converting constants to unsigned comes with a certain
>>>> risk, I think for this (and its siblings) this ought to be okay. As 
>>>> to
>>>> the alternative of a cast - before considering that, please consider
>>>> e.g. adding 0u (as we do elsewhere in the code base to deal with such
>>>> cases).
>>>
>>> And just after sending I realized that this would still be disliked by
>>> Misra's type system. (Much like then aiui the 1 above will need to
>>> become 1u. Which is all pretty horrible.)
>>
>> I have a proposal: in our tests we enabled an ECLAIR configuration
>> that allows to bypass the
>> constraint imposed by Rule 10.4 that warrants the 1U iff the value is
>> constant and both types
>> can represent it correctly (in this case BITS_PER_LONG -1). This would
>> allow using the proposed
>> solution and documenting why it's ok not to respect R10.4. What do you 
>> think?

I'd definitely prefer us using such a model, yes.

> And perhaps also use min_t instead of min, so that the typecheck can be 
> avoided.

Already the wording you use suggests a problem: min() is using a type check
for a reason (and that check is actually guaranteeing that some other of
the Misra rules isn't violated, aiui), so we would better not try to "avoid"
its use. There are certainly rare cases where using min() / max() would be
unwieldy, hence why we have min_t() / max_t(), but imo wherever reasonably
possible we ought to use the type-checking variants.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 07:10:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 07:10:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599062.934305 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfb41-00037E-Tk; Mon, 11 Sep 2023 07:10:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599062.934305; Mon, 11 Sep 2023 07:10:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfb41-000377-Qj; Mon, 11 Sep 2023 07:10:29 +0000
Received: by outflank-mailman (input) for mailman id 599062;
 Mon, 11 Sep 2023 07:10:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfb40-000371-5y
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 07:10:28 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062b.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 47cd5287-5072-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 09:10:26 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by AS5PR04MB9875.eurprd04.prod.outlook.com (2603:10a6:20b:652::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 07:10:23 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 07:10:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 47cd5287-5072-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=elOHkGjxS4jq+SZfKtMIfrdtYffnKrdsY+5qsv9OtQkrr5gt7RoUBQKZIEeFRG8l2RAH8FAeGbWQHCWvkoO9m+i8ztcO+I8lTWWwe7bpwH92m5kkalC7sdR/pvT0ITOsDI6PdmrXg8U8f7DdlDFpYV63VOkvrhoTqRpfef+1Aw5/Q+0l78LVLtHZwdVM92SHEEE4zuXMUZ1U69cw60Tiy1kvKgkH001AO/6WQDHAl4lCTbquuaUTzQOtTJJKE04D/jclFzMJR+pMkv9+rTnf+RKFS9uO3F4YT57ouL681XPUmNVOKF0tbm5Qq0TEtJNRLDBTG/Mj6uukPBRHwHpWVw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rpbNUNIGKVUOnUAO/I00pfeUU7z1oX2uAFj+OUCXMlQ=;
 b=LOzla7ojCtqnIe2BjRIlgWp46mWo61uE4CR/5HVSEQWoAKwj4zPFaHOIlsYttk/xt/4SWkl9IZwaZYPYLvNWQyw2oPWl8w9prgV61Ok484onMrCNQ/8AN0e9nbkpPLGJ3/jVB/WwHW/Kqo4LrDYSz/J5b0lnfhazVFUKucP36n8jEVOdBsftW/CKeNiy/O5CVLFQAyblWxpZfkt1i7DA/N4QUZ0OM8eawOwOxRBLTshg6XIDfvZjESsWx8Ni+hBw96XXMUM4HLeNppU7mcERIeH654rMggrFncj/TENd18pmKnOkqW7vC9gwfSG/Pk37k4NZvT/Xg0oKRzOUE0wa3w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rpbNUNIGKVUOnUAO/I00pfeUU7z1oX2uAFj+OUCXMlQ=;
 b=FUZz+LfHaxjqFZz6Qnri9YJQF99Jhm15D+3c8qE2gGI5rpXMky8kk6h3sY8ph0Bbq+ETbySBP9KlZu947Hfg3r4sjVZkcSUpdHjWtEz9SoFt2enFssu91L1B8vfoqia0D3osvjhDLqhWn6yc57R0cUOJlULamHro0e+J3BolThgZ8WmTlp/xjhRommqsWKk8LDMiFz8RBEkG0cAAzxBoEzLsPcGRBuAwUA8aGM93xDxCAYnY3qwBuNd7/xA0GrfvVIQqcRznY4ylYL97m5pbm6b1xa8FQqzp9hQBpsTpkpt7W+Usco6A528Nz8IdWoiCqYbqvToqrPioGws9uwteiw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <55e215f8-a759-906a-a5b4-c72fd155f6a0@suse.com>
Date: Mon, 11 Sep 2023 09:10:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: Xen 4.18 release: Reminder about feature/code freeze
Content-Language: en-US
To: Henry Wang <Henry.Wang@arm.com>
Cc: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 "jgross@suse.com" <jgross@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
 "community.manager@xenproject.org" <community.manager@xenproject.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0084.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::11) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AS5PR04MB9875:EE_
X-MS-Office365-Filtering-Correlation-Id: 1f5f1fd2-e082-4d68-2808-08dbb2962a3e
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BqnhhJU87VSSeSZQ1MdWJUVqCApHZl/WUnekKwyANmxjE6dSBclzJmhwTRqJHC5iv2lmPPiGbPE01IWd4TQcGa7sg+6DKDswmrFr2i1cHFfOBoOzIO4pqcY+9fHeX2OOqPtn4hRCjGSnQmDg240OTYdZq90YxEwmyXxUTU23f0Iv6LqwEhmSlalc7U2sXsTPIsh80ONkgVKhbTVf/8mAeA2fCC9AErAHSrBEtbfjY0UG+GEnVfzebCfB1ZMpRK8hm9ygXo06k4A0OfjdbQEYVhYxLxvQL4XoDAfrRuIsnGoWFR65nQO83KNdXnMZcwqDPc382uKbjQeK4rxBtgFPzJJf7t+ovDNczHJG0TQ/VDSbEe60/wAv4mCPgMhYX4u4SFHc2WAhkmEkzNg841SVWCmpDCCBEaD0NS/oq9Gl4pBAAascgltuksbPhekQXW/yc240EMeTIyF70P6tzGUgcDq7anhuMzlN9yBGTTmq3EFjkrSsyKtRdQ2Y6GDCHbnPqkggt9CFIjjdi5+w5q5Ge/OaVIbbnNSV8gL9WEv6Ef9/6YCiDLe6qn2aC/cew69B61hTRQ/GojiG5/sSZMYupi5QVpGKRzPInymPKVPN+4OVTwZ4NnhOnJKV2CuXPIiVPuWh35VzUqHS/Y8rH/nJYg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(136003)(366004)(376002)(346002)(1800799009)(186009)(451199024)(6486002)(6506007)(53546011)(6512007)(966005)(478600001)(83380400001)(26005)(2616005)(2906002)(66946007)(66476007)(66556008)(54906003)(6916009)(316002)(5660300002)(4326008)(8936002)(8676002)(36756003)(31696002)(86362001)(38100700002)(41300700001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZHdLcUJZblpXZ2pWUEdYdU16RHI3ZG5nWkwvTTZ5VnN1aDRkbjJiTHQzTllM?=
 =?utf-8?B?TU9IeHkyT1VraGhhb2dMZmsvazQxNzRDZ09YcXhMQjd4emorR2VHUUNVODJw?=
 =?utf-8?B?WU5sSE9tN0t4S2NOMGpEWFVmN2hibURzbVp6UWZKR1BuTlYxRjJodnZJQ0VR?=
 =?utf-8?B?RXdrazhLN1BEL0M5cGpUTTVDVVZWSWZ4V0haUDMyanVPeVR0ajZVeG5EYVN5?=
 =?utf-8?B?Z3l1WHVMTUdrNFU3clo5M2YrcGlyMzJPUm5uUWhNUVpESzMvUXE0NDd2YmxI?=
 =?utf-8?B?UHR2TFM5anYyT2FpL2pXWkJEYVA2ZEhXaldWM0dtWUY4STJJRVorUWhFbm43?=
 =?utf-8?B?UlpudzFJM3JibDZCNmE1enVqV2Zpb1Vyb0dyOHUvenFYL3NVMnAzd0NrcHdm?=
 =?utf-8?B?Ny9TU09yRDdlODBGMmxHVnJJZEVJQkVZWGh1K0NPTDBpbDBsaTBmRGdNR01p?=
 =?utf-8?B?TEpJR25tamZsMnNaZ1d0bU9EcjRKeGUvdGxSVDJRTDRPSXN0Z0lNTmppb1ls?=
 =?utf-8?B?U1NtY2dPbFNaSEFGbEpKcjdmMG0rbUlCUjNwc3ZCcGVHeUc2M0w0bjk3L1M5?=
 =?utf-8?B?QzdUblE3elcxVktYRWRtZG85ZDRZTjhaTXNQODdkRUtWcWZibS9Ec3ROWmNh?=
 =?utf-8?B?TGIzZzRVM1VHMFZId05hTm9zbWU0Z1laQURJZVQzbnZ3SzBRZGN2alA4dlpn?=
 =?utf-8?B?WWE4ZEZ1Znh4RWxOOFJmYXBCRXV2Uk5mZ1U2LzVBWElDdFJGOEE4RENIVzZK?=
 =?utf-8?B?RDdGakVnbi9sZGRSRTFQM0JQMk03VXJEb0hQZTJHYXlaY2JIQ2E0U0VNMXNa?=
 =?utf-8?B?QWdubVkvZmJtSmM0dkhkdnBoWmwwYUlKdjc1VzFNZlR2QzRiTVZIUWZUV3A5?=
 =?utf-8?B?WC9HNHlkaHRxeml4Sm5SZjh1SkkzcTVjT3BldGNvd1lOajllWjEveEc2dldE?=
 =?utf-8?B?VnB2K0hZYXBsT2ZWaWhOK0VXZVNzWVRrZkRET0hUYSt0UUJ2OW5XUGRQeHd1?=
 =?utf-8?B?WHFoRVVXY1J5bFgxWTJMQWNwL25mN3hUaFdvVEJjWS9ueGNDZFNxQ0pkSVha?=
 =?utf-8?B?c2JnM2l2bGZiSVREN2pXa1JnMFM0SFlzRzM0NEhLTXVsY01Xay9YeTEvQkk1?=
 =?utf-8?B?MWluTUgzbWlQdFIwTU12dHpESHhZblc4bUJzZzdybWVlRzJDRUd4SHVlVUs2?=
 =?utf-8?B?V294TTBRRkNkYjBGK2JyQzZ2VWtxWTlMd2QwV2d0dkEzZnVJdEg4d2RaempQ?=
 =?utf-8?B?QU1wcUNPc1dmQ0pKVXphSHozUytuaHN2NWZ6OXJZbHVZb3pzRUJMVXF0azVB?=
 =?utf-8?B?S3JjTmsvamNHTkVUSTBxaFpXZGg2UGVmaUZWeW0vMGNORnFzQUZKY3Mwb3la?=
 =?utf-8?B?Z0pqK3RZdDdqYWZQanJUWjl4VzR2QXVKNVFxOUZ4NWJjUkNNc1VINlpvWWha?=
 =?utf-8?B?V1ZOcjllOE15ZFlLaDRhZVFoRDdKQlBOaDRHYU5aanlmWHNKTDFsejhDWTdx?=
 =?utf-8?B?RkNoOFlFRUZxQWttY0RIYnNkakdjQ1BTMlkvbFc5U2o5bFY3ek5RV2NNc3V2?=
 =?utf-8?B?U2Fra0lZNVRmS09QSFgzR3I2M1BPTkVmTWptWm5rNk9mL0VVSEVkVFdrcFVt?=
 =?utf-8?B?MWVCcGJjakt1dkxFUmNlU2psRWE5bDV6aUpUV0RHNTNuSXZUeHdMOWdBckVp?=
 =?utf-8?B?RE03Y1RyR3BwR1BIbG8zelN1N1prNTA1TExadFE5SXg2MnNnRThxVHg2M1Br?=
 =?utf-8?B?cHFyN3h5RmJ2SmFWSDEyYXU0VDRrS3dQdFNVSEhSR2ZTSE1jOFVPNDluT1BJ?=
 =?utf-8?B?S2Z1NkFpT3Z3N2ptWjFlUGNaaThJNEZtQWdWRmY1TTdlblNMbGcyOEdYak5V?=
 =?utf-8?B?V2NYbVFZdGVvV1BSZ25Vc2VHTmFwUlRaa2U4dXJEcDFKSTlZNTk5VE9Ialdl?=
 =?utf-8?B?YVJFaWd2TmM0TE00OFhWdjJMUXlIeFFjWDlkOTdpNUllYTYyVE5SdlRFOW5H?=
 =?utf-8?B?Uk5jaHhaZXdHcXRQaElCVm42SytFK1hFdWNkL1R4d3l3Zlptd1pjRi9Jc2dF?=
 =?utf-8?B?cWplUS80dmlXazNCRHppUnU2ckw0a1FoelBUa1dNQmxFWDlobk8reG9NVHVk?=
 =?utf-8?Q?HTs0yuEF8EgyPdK+CY7YHohLv?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1f5f1fd2-e082-4d68-2808-08dbb2962a3e
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 07:10:22.7925
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0IL7Yhro53Fu62n1sLeM7MwyA5a/VUOx2uepJzoDY0VWC2WD+MVHDTnP784E5UrYybPJjBBEYjdWTNNRhlLbbQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB9875

On 11.09.2023 03:08, Henry Wang wrote:
> Also, below is the critical items on my list for 4.18 release:
> 1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
> https://gitlab.com/xen-project/xen/-/issues/114
> 
> 2. tools: Switch to non-truncating XENVER_* ops
> https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3@citrix.com/
> 
> 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for staging | 6a47ba2f
> https://marc.info/?l=xen-devel&m=168312468808977
> https://marc.info/?l=xen-devel&m=168312687610283
> 
> 4. The proper eIBRS support for x86
> https://lore.kernel.org/xen-devel/ec8e75da-743b-50dc-4665-854c446c974e@citrix.com/

In this same are of speculation control goes "x86/spec-ctrl: IBPB improvements"
(v4: https://lists.xen.org/archives/html/xen-devel/2023-02/msg00748.html).

> 5. [PATCH 1/2] credit: Limit load balancing to once per millisecond
> https://lore.kernel.org/xen-devel/20230630113756.672607-1-george.dunlap@cloud.com/
> 
> 6. [PATCH 0/2]  Revoke IOMEM/IO port/IRQ permissions on PCI detach for HVM guest
> https://lore.kernel.org/xen-devel/20230809103305.30561-1-julien@xen.org/
> 
> 7. [PATCH v2 0/8] Fixes to debugging facilities
> https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/

Other x86 items that among the x86 maintainers we've marked 4.18 material:

- x86: reduce cache flushing overhead
(v2: https://lists.xen.org/archives/html/xen-devel/2023-05/msg00242.html)

- DOITM (Andrew meaning to post an alternative to
https://lists.xen.org/archives/html/xen-devel/2022-09/msg01132.html, which
likely would derive from
https://github.com/xenserver/xen.pg/blob/XS-8.3.x/patches/x86-Activate-Data-Operand-Invariant-Timing-Mode-by-d.patch)

Plus, affecting all architectures:

- runstate/time area registration by (guest) physical address
(v3: https://lists.xen.org/archives/html/xen-devel/2023-05/msg00304.html)

- annotate entry points with type and size
(v4: https://lists.xen.org/archives/html/xen-devel/2023-08/msg00470.html)

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 07:17:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 07:17:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599069.934315 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfbAk-0003xO-MH; Mon, 11 Sep 2023 07:17:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599069.934315; Mon, 11 Sep 2023 07:17:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfbAk-0003xH-In; Mon, 11 Sep 2023 07:17:26 +0000
Received: by outflank-mailman (input) for mailman id 599069;
 Mon, 11 Sep 2023 07:17:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfbAj-0003xB-AL
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 07:17:25 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20605.outbound.protection.outlook.com
 [2a01:111:f400:fe13::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 412e0f5c-5073-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 09:17:24 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by PA4PR04MB9640.eurprd04.prod.outlook.com (2603:10a6:102:261::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Mon, 11 Sep
 2023 07:17:20 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 07:17:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 412e0f5c-5073-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WRehhgLpCOH5eCbhccVd0IF4SaIenU6D0Veqi+hT1rHxpe6ukffuXiv4EP0zmQpIRzRa+TvmIb7VeqWlHQb6pdbsBaPY3xBo5Z/6VhDuxc53zoGgCl3hITbT9aQ08O/ox4v0TbXsvh6mekydFWQMKN8yY6P8GkmCwVVGbFZAmHe/0G6qiZcbTQ9e+GtIHTg3+02ikZwT9qY6D4YCyUxOxXjjBZJCkOzFw/PxetsCnJ3RtP0zx/X48qCzzV/B1jhIL1dip95fj1RDZrHeZnu5AlFhF74obcz15CM/CWMLzAC4DrW9dJcdRqpAZ/8zQdBbkxW387H63RHwggqzNqfk1Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=tILWl3DKuD/GJaIYzaUKvdLRDDsfsIeahERO5i2AkL8=;
 b=iOR1rjSwU3wXiR+rqGIa6jOBQSTi3EgCxEGZYs9q6CtjDBwRMwGrxg0teIU8RlRsiYhC45r4EyasV4UFMmBB29lxsdEMyHxHdi76JNo18TRhllksWdSEVODTJ9RDsSPbDLB7ebFb2wIi0KiPQ43HPSDVBRieWAxvk1HyT0oDK/92NDhzzbLm7Ll4/SHwfBE+e3dHn60yo+vI1loJGGVIq8tQIHHOaGQxwDrbldIVLkMAKQnuiNYBGCkDy7PsFwkY90HEyIvBPNjtNCiSn7NfsccOjywh1/3TPNjWu1eekn9aHFcE0OH8ARoJHQo4lBSgTMyXosJrJzcVHHP6KsuaeQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=tILWl3DKuD/GJaIYzaUKvdLRDDsfsIeahERO5i2AkL8=;
 b=QA9KcM5JKb438QjjtXvhzqEzxq0bIvH3Jv0mfd4P+gmsO2wWeUAKT/RYFTTMZj8OoPVu0En8pPH4dq57fA1IteDQcWqG4PxBRSxBuZ0dgvKTQMi+P4d3x4QKR9r9GL+RKfOP17lrBrGi9/HV88kx7RpwoAlZGfW6cMa7xWfjb/ieIgeuQ5RYvJIfUq/cy30aoyD+MRElX5OpXUsWMO0c2q6mtN0uwDpGtoFtEm6HJOpyJm1zY1+CnidPW6fFlSaP+Dt0pSdK450GFX3KhgD2QdnXjC0j2CfNoQMBzXJEZ96u3XsKmOD6Em8S5JFOpnsIA4ZVIFPSq5Jct0553DeejQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ef37384f-c3e6-1425-f27a-1bd70f34dd6d@suse.com>
Date: Mon, 11 Sep 2023 09:17:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v3] docs/misra: add rule 2.1 exceptions
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com, julien@xen.org,
 george.dunlap@citrix.com, bertrand.marquis@arm.com,
 roberto.bagnara@bugseng.com, nicola.vetrini@bugseng.com,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 xen-devel@lists.xenproject.org
References: <20230908230318.1719290-1-sstabellini@kernel.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230908230318.1719290-1-sstabellini@kernel.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0101.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9c::7) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PA4PR04MB9640:EE_
X-MS-Office365-Filtering-Correlation-Id: e3eb8701-5af5-4e50-c956-08dbb2972342
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3oNs60J8/RcfwndJDCQP3haTyHPOak5izdtAZxfeGQFQ0BIPy1Am9uKFhSPceOHo5BOClqDhvI5DuFBVsWOGZmzMmsNDVl4AMDm/co/gr7tVEWr4Of3VNFQWPutNN6pElwGYmMxD3m7upw04xMKaRn5OXfxkSXd+S8Zw3lj6krr3pmdoIUf+s3IlQafDM6slERNBFuSRGHVURoDcjGm+bMNf3houjYuXNtkzD7VJzGgtOSBqAzKS2arMIA60iWy+TW1qG494c9KqDLs4uQSnx7vzhm4J3pnkvX4H9scOGg8ivtbUItbrbDLqdbC3XJOd7H3QstmXdNhU/JY8EvMRowsPgtSlQGFdVOomF7TNk94Nd4L5ShWVb0wkhrTKFaQ3jKfV8jZzQ+WMGZMnGDohgPGsksX+ql/MDmlxpWdaZ+JYA0bfJG8H5vu9rwYadUyMBGR12U8jHHL8zbGl7UX0JRGC5lJlOg6tG4SAbERWmAL59w43rfPHjmmfymjmcOLbG4HRA4D5U4VLspQF0gbiNs5XJCIjJeXaC+a1UHlMeBmmu42gsYXMsvK2SM6kTLdeyrEEvuj33h4zGnmDcI23PvzOJeHt2PAdgh68tOBT/QM+6GPPMcVezRe4rnPfaNtQ8cn/W0zR/toC6ZkjGtGqAw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(376002)(346002)(396003)(366004)(1800799009)(186009)(451199024)(478600001)(53546011)(2906002)(83380400001)(66556008)(7416002)(6486002)(6506007)(6916009)(66476007)(66946007)(5660300002)(26005)(8676002)(2616005)(8936002)(6512007)(4326008)(316002)(41300700001)(36756003)(38100700002)(86362001)(31696002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OEVlNVRpOVpNNjRTZGxJRG8xQURNU2R4eE45WXViTS9QTWhuSEFMZmdZV2dq?=
 =?utf-8?B?WUtyaW53K0dvR1RxU05ZcGhsSFdzTUx3cVlDU1ZVZHVpWkVvdlk1dkdwRFd1?=
 =?utf-8?B?cFdCc28zNG1OSjFSN1AyRDRuQUo2ZnlSK2pxNFpmUHJDT0FENlZjU1k5ODR3?=
 =?utf-8?B?Vm1xazA5YW1ZbTEwdWFldDZYTnBSZGhBb0JpUUdONkVWZExpbytFZUFZd1lW?=
 =?utf-8?B?RkJ4MGdTZjVwM3FkcktSc2hpbVpJbHV2N1o3Zms4dm55SFFIVERuUzNaNnBx?=
 =?utf-8?B?TU1lNjFibEQvODRPaE45Uk9vcW1vbkhoZjNQK3R1NXVhYnhERnFDUVNXS3VK?=
 =?utf-8?B?d1daaDI0eGN0ZnNWcmxiWnNMT3p5UExhSDZGWStxWVl1dmJGNlVVVGxhSjZa?=
 =?utf-8?B?QVFZT1d0RU9ITFdGS1dUN1VPOGU0bzRzRFFqYTVTSS9BWXJLalpmL29MMUZD?=
 =?utf-8?B?TXR1eGp4N1oyZnovM05NSEp0Y0JRVXV0cXVnY0hTUXY4RGp4UURtTnZmQWtT?=
 =?utf-8?B?WFFiRGp2ZGVDeXVwcVErZVg0Q3BHYUtBVWZ1ekJxZWU4WlZXZ1hqeHpha0F5?=
 =?utf-8?B?eUszSWFRNG45RWZKVFV3Q2hqdTd2R28vdzROb081Z1lwclkyejRWVGE1Yllp?=
 =?utf-8?B?dFNjZUxWeDdnWDNWRzZKaGVTc1g1SjlQZk1pZ2dkNWpxR2xNSVdDSnNoaTM3?=
 =?utf-8?B?QnQ1Y0h1cG5zemtrS0o3NkhxbHhEeHpxT2tjWGFjeTdIVTA5UkFPQys3MTIw?=
 =?utf-8?B?eE9ZSkZ6dGlEcTVsVk5ULzNFaXVhOTcvQVVNNG4rS2hIR0x6U2I5WGVtQ0F0?=
 =?utf-8?B?SmFSNFRtZU8rWCs3ejFQTHZMdXdNUWJNQ2VjU1pjQjVrc1RSSEtoNHNvSEdi?=
 =?utf-8?B?cFRFQVBPelFTelNXQlZaTSsyK2x2RjJSeE1yUlUraXJaUXo0cWFqSENaSW9C?=
 =?utf-8?B?UjdFSFVERXZPNjk1aGdERHdxVllWeEtiOC9ucEhCYS94bngwVU5jUjJlUzBs?=
 =?utf-8?B?UlZnck5aRTZGSVBTUTh2b3N3dXQ4bzl5QTkwSDNEMFpJVXNwaHhyZGJXcFlt?=
 =?utf-8?B?T2k5SHhJS0NHVzZEUHNMZXZEY25wT0JGa3NLKzRPdGo0d2pjdjNvZHE0Mk5q?=
 =?utf-8?B?ZzV0SDhEcFUrMTdZRkwrWFZMYzV4YUxnUG93MFZaTmxmV1o3TUJ0OE5XQzRr?=
 =?utf-8?B?VCtxa3lKeUZBNjVNQ29IUXdGUTUyTVBrQW5UYjVWWW1zbDJ0YlhHTFZtSGdt?=
 =?utf-8?B?N2RFQ052aDA0K0wvcWxNUGhKc3JxZEJwazRzK2pyTzdiTTU3cTRHUUFQZFVT?=
 =?utf-8?B?ZGYzQlJQaTRPY2QwYWk5bWdvdEFQTHh1RngvNWR3VW5FV252cEd0QTVKS0tP?=
 =?utf-8?B?STdPOGJLb3dqZFJGcG5jMFJsaGtONEZWaVRvc3JtUk5ScEkzWHBvRnVQQzdo?=
 =?utf-8?B?Tk9OU1MrUjdIOGdOOERYVmlGV0ZXTDNzRVcxU1ptUGMzTTJLRWczMmtpN0o3?=
 =?utf-8?B?dmlqaitLTWxlNW8vSnhUd3JXeUpzWW5YR2hEZ1hFRXBvSmlqdEhwaWVMd0ZG?=
 =?utf-8?B?VXFEczdEUHRQaE1mQ2NBYlh5akVCbzFxbENtaGI2RE1jbnBOR2RLL3lsOWRR?=
 =?utf-8?B?bzU0cjJ3WGJJdlBGTW1IYTh2MFQvMVRORThXWVl1Zm5SOG1ZQU9xbXJUeWJL?=
 =?utf-8?B?TGZwMTFDR25QaWNIU2VONFJvM1F3ZDh2SkRlQ3Y1a2tXRDRvR0NBdW1TdzYz?=
 =?utf-8?B?NUkrbi9HVWZ3RXlvWlA1VUM3STJLYTFTL0dIbDhYZWt0WWo2S2dXZ0N6amNl?=
 =?utf-8?B?NU1SeXJKZzNwQWtYTHFJTjRSTldoZjBoWXRKZDdqR2xrWjl1Y2tvRzNqaCsv?=
 =?utf-8?B?U0cxRjZyTmtPcHhyQ1dUYkNlWkFQb0ZoVU1WVUdmcUFQOVlNUEVaS0hlYzFN?=
 =?utf-8?B?V1NsNnRheGNYeG1jNCtpcVZPblh0alAwbEdCTVd3SzIxZmtzQXY4cVhGbTNT?=
 =?utf-8?B?VDlTTlcrL29UK2hyR21hd1hmZkxQOGVZRDkzNlBDazVaUk92cmRKS1pRRXpJ?=
 =?utf-8?B?UHFQSjN4ZG91V0Z3NDBUb1RzTmhGR3R4YllQNVVuQml2dUdPYmgyQ1YvSmZq?=
 =?utf-8?Q?H0pVGEPvIzBCt7Uoetnd5askE?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e3eb8701-5af5-4e50-c956-08dbb2972342
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 07:17:20.6046
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7eaLT1l0ZhVaSIpB0CbBpJfIEtpJe5Chr5wtojY9lyAsV90dc3RkYrDMnbhHoD06KO1X7rp2+5fOtJvIBQeAHw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9640

On 09.09.2023 01:03, Stefano Stabellini wrote:
> From: Stefano Stabellini <stefano.stabellini@amd.com>
> 
> During the discussions that led to the acceptance of Rule 2.1, we
> decided on a few exceptions that were not properly recorded in
> rules.rst. Add them now.
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> Acked-by: Jan Beulich <jbeulich@suse.com>
> ---
> Nicola, does this work with ECLAIR?
> 
> I am referring to the locations of the SAF-2-safe tag on top of
> call_psci_system_off, BUG, etc.
> 
> Changes in v3:
> - added SAF-2-safe to safe.json
> - added a few SAF-2-safe examples
> ---
>  docs/misra/rules.rst    | 13 ++++++++++++-
>  docs/misra/safe.json    |  8 ++++++++
>  xen/arch/arm/psci.c     |  1 +
>  xen/arch/x86/shutdown.c |  1 +
>  xen/include/xen/bug.h   |  2 ++
>  5 files changed, 24 insertions(+), 1 deletion(-)
> 
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 34916e266a..82de4c645d 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -107,7 +107,18 @@ maintainers if you want to suggest a change.
>     * - `Rule 2.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_02_01_1.c>`_
>       - Required
>       - A project shall not contain unreachable code
> -     -
> +     - The following are allowed:
> +         - Invariantly constant conditions, e.g. if(IS_ENABLED(CONFIG_HVM)) { S; }
> +         - Switch with a controlling value statically determined not to
> +           match one or more case statements

I (continue to) consider this as too lax. I don't think we want to permit
something like

void test(uint8_t val)
{
    switch ( val )
    {
    case 0x100:
        ...

Imo like in the earlier bullet point I think this wants limiting to
compile-time constant values, at least initially.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 07:32:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 07:32:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599080.934338 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfbOy-0007GA-04; Mon, 11 Sep 2023 07:32:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599080.934338; Mon, 11 Sep 2023 07:32:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfbOx-0007G3-T9; Mon, 11 Sep 2023 07:32:07 +0000
Received: by outflank-mailman (input) for mailman id 599080;
 Mon, 11 Sep 2023 07:32:06 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfbOw-0007Ft-Md; Mon, 11 Sep 2023 07:32:06 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfbOw-0004q2-Kv; Mon, 11 Sep 2023 07:32:06 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfbOw-0000FS-AS; Mon, 11 Sep 2023 07:32:06 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfbOw-0002iX-9z; Mon, 11 Sep 2023 07:32:06 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=CBHR4ExW9n+GFBxY0LJ1Vdd+tMgq5IaYwXiWT5TsV/w=; b=wKVvoSYFBBNtliDm3+WBxrxYPW
	Aci/hBFww8GMfbpMBTT7fEdzo9kz1VUOe0Mbaba+Qobu7NPw8A1U/DqVvOq13HYWwjTHCAKxMA37j
	dmihSNXE7FD4wXmj7ySzXEe4XajD1Gq2Qk6nwcPgzPhDU/Pk3zPiHjQVwwa4I8gx5spE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182914-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182914: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 07:32:06 +0000

flight 182914 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182914/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    4 days
Failing since        182723  2023-09-07 18:19:05 Z    3 days   16 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    2 days   13 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 07:55:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 07:55:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599090.934347 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfbl4-00027x-W2; Mon, 11 Sep 2023 07:54:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599090.934347; Mon, 11 Sep 2023 07:54:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfbl4-00027q-TV; Mon, 11 Sep 2023 07:54:58 +0000
Received: by outflank-mailman (input) for mailman id 599090;
 Mon, 11 Sep 2023 07:54:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfbl3-00027k-7E
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 07:54:57 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2060b.outbound.protection.outlook.com
 [2a01:111:f400:fe16::60b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7f362f44-5078-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 09:54:56 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by AM0PR04MB7170.eurprd04.prod.outlook.com (2603:10a6:208:191::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 07:54:53 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 07:54:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7f362f44-5078-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NG6FaREWGUQRi5mLxvuX4QzAbdXGLPC4d3yIboPwD3rqVN+WdSMVxW/7ZE82BqlGD36Fo2Z9v4wAtbuJnkPtR0L4R21l8NaaOgeK/k30kmZL2ldrSzMOfhGQDfoxWThPlhP/Qk9B7hFz4Pd3R8mNBpaPakiIvkyl0CwGP4S21ofR5AfYvPHBsCq+vtAy4ArRFIYiF+J8H7tggZ4kAW86LKEfvrrFbXilgS9w8zD269ArI4dbMHzq/7nv7HBh7VsMEn+byL5ecbGGM6ykqJAYeJ96DDcLqcgkVSgHFzw7JCoJAeAzp2QkwFXKnDKWH5zEGWvw18y/dXnWmOpIdXkbLQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8ZiSXLeVFAdtRK2ZaQzhK7Z8qpa2d+a926zKVRu/02s=;
 b=L1slzabOceTPWhhoZmRgU1mn1rXEXD/2nYGbYnW2UccMkkJ9AiNMf+OewJsUYiS3qUYXFLPqtonb8gvj3mXVQNkJqfey3TS+RikSfRB5Psye27uwvCWAsaYnpofik/JY57P7W87/L4sp7h2kv7Gdhg6yy6CigdxcF9GWYUiNecDJAP8M6T8kjvYSqLuvcnISaci28ya1IIHNC2NH3MFypqFDz+/U9FvU4h+lQ7RXy+tUyxcuaNST16Der3C0ozUV/ThxG6GOunkH+Gcfn8W+/pTM3H9uQNsZXMDvAgnQc5nQiQkyFVr3ENlQVDokYdyWYUquLImcBjjndLuJC5xY3w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8ZiSXLeVFAdtRK2ZaQzhK7Z8qpa2d+a926zKVRu/02s=;
 b=cvDT6UDE2Qm5SkProo1KvcrEAptAVFVFMv7c4coB6D52670p2PFkvI1xQzXoj7VehJNX3zXb6syiL/ybwvrlIibHm0ynwuWRqXlBBV/KMD/Xcy6+WUW6cexy1KIZEdHGFGWAxe5dglzAqloK0UtMR6tyDI8s9zN5irdycRYwDKUaPmWd41xfWytilBmdzDPQRevtFh0zjtXr/iImAD8CH80NTZCvCL/XWd1wXkLZlF6YGpSjwIdDlmqRmKhJxJpn74Bty4R+YCnOjEvMwTWp71mLw2HdmxX0BjsXFsveC3byppNrVgQnFSbdH/aP4NhjtIxcr6xeYPtFqkOREfBZtw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <93c7ff14-2aa8-09a6-f04d-9dbb3969f470@suse.com>
Date: Mon, 11 Sep 2023 09:54:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 1/2] coverage: simplify the logic of choosing the
 number of gcov counters depending on the gcc version
Content-Language: en-US
To: Javi Merino <javi.merino@cloud.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1694189143.git.javi.merino@cloud.com>
 <f40f16bad7553f63d81574eac39e1fddaeec0be4.1694189143.git.javi.merino@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f40f16bad7553f63d81574eac39e1fddaeec0be4.1694189143.git.javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0064.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ce::16) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AM0PR04MB7170:EE_
X-MS-Office365-Filtering-Correlation-Id: 05d833c9-2651-4aef-709a-08dbb29c61fb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dqwEPJjKCdfO3gW/3J3lf0g2ZWar1Qn76AKcxUHZWnIWWUr4s4100+PIrcE/nKmiOt4QUA2DPtrwVJea1PGUBr+WWWp54qfscBtnOt2zdWngpEY9EU+5ValKRpck3ckrROoSHfLCydkPLFqH+YFFnk4U4RhPPMS5WLJ5IFL/0QGGQx7cE9aNQw83uHBPBF5yyAvV1u/B6N8wi5zPlvnT/89ChxWU+jOgfGVD0NlGTwobSxt6x0aMEtmqribWyIl3uiq0a9xZr5VfWm7GVKKgWJfLJN9cfnnibSdya/Pq5N4JWnJGFpS4IPu47CkxHvIPMacMpiz84L7Rly1njMzabXHh3C4tzyVObx8MkT8hzMsws6CGMIMsb3uS1B/wxdW+2a2TvQj/5TI+NXdEq0RsjE2ywjO6hEF7pzCWeWhig8ale0+SZ/k2fqUeUzpRE63KtOjZ1T1iqh6L85l8g63OJN2oo8ndNRmYGdJNCTWJsh9BZe+AOh/gInMrKPVdKYGZOfFwlwftvWm5tRMOzEKX8/oBVLC4l78AtUV14mSdOV1Vu5GB67AkDaVhGz8FAhT/GTAOejN+3bmIkXKcPXBYvpUGeE8WYyMRBZTKdutnTux/YAWOE1G42a/vDsRbaQxOptA40RL/RSK8HiB3lsy7JA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(366004)(136003)(39860400002)(396003)(451199024)(1800799009)(186009)(31686004)(53546011)(6506007)(6486002)(41300700001)(36756003)(86362001)(31696002)(38100700002)(26005)(2616005)(2906002)(6512007)(83380400001)(478600001)(316002)(8936002)(8676002)(5660300002)(4326008)(6916009)(66946007)(66556008)(66476007)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TVZ3d1BhNW0xRmNDY2dIM2xKVHkvSnQ2MlZwSm9lNy8yWXJtRmtRY055cVZh?=
 =?utf-8?B?NHFBTFhWT3lxYmJiR25RaGNDT3R3Y0xIK24zNU9VVnB3NFRRRjFTT2FSeEY1?=
 =?utf-8?B?VUZKWC9Za0tKdnQ2WWw5ZTNiZnBZVU4yT0U5TllUTlcwenVOak51L0M5SUdL?=
 =?utf-8?B?Z2xyMXdZWEgybnh2S1Z0SWhhSU9ESnluTTAyeHExYmp3RmhPYmEwbEloQWlM?=
 =?utf-8?B?OTdPRHVhMEZYOVkxVjZTOE8rWXc0U0xQVlZmVXdhM1NEWUlhRXhOalBzd2Ns?=
 =?utf-8?B?YjJYNFBhdEVON3lzbHNySVBiaCtNejFjSzRHUzFNcGpYSkEzeEhSakxxaTVy?=
 =?utf-8?B?VU5SeFBaYnBhZElFMGpyeE9oNnUzR1hoWjZBOGovalJIc0xmY3NlQTIrNEFz?=
 =?utf-8?B?QnF3SWxSQ1d3TUkwcnBYSGN2Q29FZFVzSEJpMmZCOEFVRE1RQUduNENzcm1X?=
 =?utf-8?B?WHNsa1hjMVRtbFcycTI0SXFCcGk4Z3psODRPNG9GL1FXOGRLWmZNM05tMEw0?=
 =?utf-8?B?LzhrU1FFNXA3Q21rVDUrakZjWUJNNlg1K3BURzFWMmdJdUVGY3M2c25ldzJa?=
 =?utf-8?B?UTd3dytFYUVhU0lRNm9SWHUya2Z6UEZFbXVGcEc2ZDBUMG1VZzF6bTJsYjZm?=
 =?utf-8?B?U2psdURsQTlCd3hyZHVPZytqRFplY25pYnJJeG9DcEJSaEJJai83TkdaTGpK?=
 =?utf-8?B?VWUvemdLR1duNUZtaVIxU3FtZ05jei9DcmV1VEVHZU8yVlFoRzlBMTdUMmIy?=
 =?utf-8?B?NzZwMEJJWTg4Q1A4UzNtcUJjekJJSlQzdmExcXpUNWVFeFpZRnNTZmlGOUxV?=
 =?utf-8?B?OEhlRkVUMmtBL1lJYUUrVHNRNFhlUjYrYlMvT251T3dyMHZPTTRtTE92M0k4?=
 =?utf-8?B?WEJwVjBGdWl6dnUxNnFjK3dxajU2R0RvY2VIaHVQY0ozSjR3T3kzK2NvUUdl?=
 =?utf-8?B?WnJzdG9EM25za3ozYnVhWm1BMFVQL3Z3TzBUVkQ2VVlycVNKYjVkM0pBRTNU?=
 =?utf-8?B?N2FOVThYc01qUFE5bzhhQlQ5dFZmMnZjZE81SUVxa0U5N0pTam5COTBnR2pq?=
 =?utf-8?B?TDF4OVBJcGYxaGRmVUxpNFl3ay84TUJjTDMxclNqOU1Ib0pBeUtIWUVKamZw?=
 =?utf-8?B?RHl3VnVKb0Z6MWNnTG1xb1IxbEs1NkdmOG03b2lsQ3VXQlAydzB3OGZNUE9O?=
 =?utf-8?B?MGxEUUhoajIxMVhCUnovOEN1aXdRcWhzRTExYlNDZlNFYXd3c3hXQUs0eGdU?=
 =?utf-8?B?WjBCWktDZlFHakxEc2tqc0R4aWJYT0Z1cGRuVXR2UEhlQ292dkcvNHRNVFNE?=
 =?utf-8?B?MFlkMHJpVktmZlBiWVh4NFRnQ2drYURhVjFOMkFlQkljSUNtSjlvMUw3QW5h?=
 =?utf-8?B?dU5CT3N3TzducFRmODBDMGhnTnV1SHpGSW4wQVBqN0dINWpWLzRJNk1kdnBF?=
 =?utf-8?B?MEZTZ2hIakI5eTVSSGhHVmJaU2Q2TW9KaXh2UittMVFHd1hmdnZnYXFYbkNX?=
 =?utf-8?B?SnlEdHFwUnExSSsxMlljVjRzejVaNFVETnFPclFwV0hNZEVvOWR0c3BqMjFh?=
 =?utf-8?B?WXJBeDNHTFdqUHROL0o5ZGtQam5ScHlZS1o2clhVWml5QVY5dzRCcE1XREFC?=
 =?utf-8?B?ZFd6MEduVjJiVDZwdXRYSWZqdU9WY05LM2pHcHFKS1hzOGdGUzhSa3VCN2VN?=
 =?utf-8?B?K1A1VEpHTndON2NSWjNoKzNxWlVKUFpVNzlBdEVwY1dLeFI1SXhsZHFDQk85?=
 =?utf-8?B?YnhvV09SSHJkd0tGZlBaYnZ0NFlUMTV6cVRLZ0RUTlZlQU91QnBxMjAvZWJm?=
 =?utf-8?B?b1JuUWFxVHFvNnFXRzFhem9HTEdCSFlDdEJvcGxFWDdVWUdaUUxoZXp2YlV5?=
 =?utf-8?B?eTRDZE9IU0szWGxHd2tBWjBOcE8xVnNHWStDRlNVMDVBKzJ3ZTNpUk9Bb29W?=
 =?utf-8?B?c0Z0VEIyNmVFbzlqb2RQYXFnTmU5R0Yvb3phOVE1OWIwYlM2VEF2dzJxb09q?=
 =?utf-8?B?QVM5NzgzbE10U1JvNGRYcGZDZDBNYkNHV0VoRzhubHYyR1diUm9yZjNRSENZ?=
 =?utf-8?B?bEU0SWRuajRTYTlYZmxqelVrY0RZcjUxWSswTkEyeEtDVDA2TjR2WDlQSXNi?=
 =?utf-8?Q?u3a6jd24h4lNLkVVIaISd7KY7?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 05d833c9-2651-4aef-709a-08dbb29c61fb
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 07:54:53.3419
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 4hNt3pqWb8NvZDtlh7St0l/yVFf5pz09pSovb//8OHo9Sc+ADOdl+3o9LZToRTIlRKImiE6wNpctba9HtKc+uQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB7170

On 08.09.2023 18:20, Javi Merino wrote:
> The current structure of choosing the correct file based on the
> compiler version makes us make 33 line files just to define a
> constant.  The changes after gcc 4.7 are minimal, just the number of
> counters.
> 
> Fold the changes in gcc_4_9.c, gcc_5.c and gcc_7.c into gcc_4_7.c to
> remove a lot of the boilerplate and keep the logic of choosing the
> GCOV_COUNTER in gcc_4_7.c.
> 
> Signed-off-by: Javi Merino <javi.merino@cloud.com>
> ---
>  xen/common/coverage/Makefile  |  6 +-----
>  xen/common/coverage/gcc_4_7.c | 17 +++++++++--------
>  xen/common/coverage/gcc_4_9.c | 33 ---------------------------------
>  xen/common/coverage/gcc_5.c   | 33 ---------------------------------
>  xen/common/coverage/gcc_7.c   | 30 ------------------------------
>  5 files changed, 10 insertions(+), 109 deletions(-)
>  delete mode 100644 xen/common/coverage/gcc_4_9.c
>  delete mode 100644 xen/common/coverage/gcc_5.c
>  delete mode 100644 xen/common/coverage/gcc_7.c
> 
> diff --git a/xen/common/coverage/Makefile b/xen/common/coverage/Makefile
> index 63f98c71d6..d729afc9c7 100644
> --- a/xen/common/coverage/Makefile
> +++ b/xen/common/coverage/Makefile
> @@ -1,11 +1,7 @@
>  obj-y += coverage.o
>  ifneq ($(CONFIG_CC_IS_CLANG),y)
>  obj-y += gcov_base.o gcov.o
> -obj-y += $(call cc-ifversion,-lt,0407, \
> -		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
> -		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
> -		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
> -		gcc_5.o, gcc_7.o))))
> +obj-y += $(call cc-ifversion,-lt,0407, gcc_3_4.o, gcc_4_7.o)
>  else
>  obj-y += llvm.o
>  endif
> diff --git a/xen/common/coverage/gcc_4_7.c b/xen/common/coverage/gcc_4_7.c
> index 25b4a8bcdc..ddbc9f4bb0 100644
> --- a/xen/common/coverage/gcc_4_7.c
> +++ b/xen/common/coverage/gcc_4_7.c
> @@ -18,15 +18,16 @@
>  
>  #include "gcov.h"
>  
> -/*
> - * GCOV_COUNTERS will be defined if this file is included by other
> - * source files.
> - */
> -#ifndef GCOV_COUNTERS
> -# if !(GCC_VERSION >= 40700 && GCC_VERSION < 40900)
> -#  error "Wrong version of GCC used to compile gcov"
> -# endif
> +#if (GCC_VERSION >= 40700 && GCC_VERSION < 40900)
>  #define GCOV_COUNTERS 8
> +#elif (GCC_VERSION >= 40900 && GCC_VERSION < 50000)
> +#define GCOV_COUNTERS 9
> +#elif GCC_VERSION >= 50000 && GCC_VERSION < 70000
> +#define GCOV_COUNTERS 10
> +#elif GCC_VERSION >= 70000
> +#define GCOV_COUNTERS 9
> +#else
> +#error "Wrong version of GCC used to compile gcov"
>  #endif

How about inverse order:

#if GCC_VERSION >= 70000
#define GCOV_COUNTERS 9
#elif GCC_VERSION >= 50000
#define GCOV_COUNTERS 10
#elif GCC_VERSION >= 40900
#define GCOV_COUNTERS 9
#elif GCC_VERSION >= 40700
#define GCOV_COUNTERS 8
#else
#error "Wrong version of GCC used to compile gcov"
#endif

Otherwise a nit and a question: Parentheses would want using consistently.
And wouldn't it make sense to combine the two ranges resulting in 9 being
chosen? (Imo in the alternative layout that's less desirable.)

Since the adjustment would be easy to make, I'd be fine doing so while
committing, and then
Reviewed-by: Jan Beulich <jbeulich@suse.com>

As an unrelated remark: gcc_3_4.c is clearly outdated as well, simply by
its name. Imo it would have wanted to be gcc_4_1.c the latest as of commit
03f22f0070f3 ("README: adjust gcc version requirement"), i.e. for over 10
years.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 08:00:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 08:00:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599099.934358 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfbqH-00049I-Ut; Mon, 11 Sep 2023 08:00:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599099.934358; Mon, 11 Sep 2023 08:00:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfbqH-00049B-SB; Mon, 11 Sep 2023 08:00:21 +0000
Received: by outflank-mailman (input) for mailman id 599099;
 Mon, 11 Sep 2023 08:00:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfbqH-000495-3t
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 08:00:21 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2061f.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::61f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4075f027-5079-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 10:00:20 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by VI1PR04MB6990.eurprd04.prod.outlook.com (2603:10a6:803:138::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Mon, 11 Sep
 2023 08:00:14 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 08:00:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4075f027-5079-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=enV+fEx0TXQcBQrThKaCm8SFQ0Q0Gfw11r2HjITkxa7I3PrTk+IgQmhvB2JwzaIsxhCFPsX2p8nqOstI+pBpzgUnVAwX/WNOCWZYf1Vg36/fn4IlAAJYsUOKpVH5IkQlLXwjnpgOY5rdTdKwcWGvs6b9LIq2Gkt3Eby4T5XVswJIbQaispwEsFkdCZdODTwlWCXZAaSZaJyZ3+MAa+9qBa/Xtd5OMfqWSxRG8SqglLJjebEiR06Am5SRRNtuXXrFEHiBQRZh1wmz5vqhjW+ZoCCGW4uFfBVnQ48XqXbTpeFk/MfG5Erky4ZSNCX6YgbFS6oTm7X7lE+SznENcrCkig==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=75BNbPyAY1wdDn9ABHQ42HIRMsPtHGo3oyWMPHCkA8I=;
 b=BX5yBm9uMju7HHlxXz7zgv/yHWMbvbDJs5tVqqJJnmdQeybfTs3aySS+goKB25/u0WzcoEbEddDjj5c1gbU+S5FKxfhq4orJQsUHZITE5ACVaFOzM0MsIP93ijZMdAgbIONHYl1gkx3Neq+EGGuZSkeAw6B0y7M+HW8SayxneSZDMJEVYFsgdvpl+Jt1UVDHbRWIHC/Sn/InHd+/f9OEtap1m/OKdRYA9RCRrTpaTA7bHfmPL1ilZD34tysGBXf6uLKvpxs0y29P8W0OMQ0x82JY0kd2DZjD6jIhWs1TD+ujlr14RS2BMXjK+huIHhdPNYXWyAkpSXWqiFIua0p0DA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=75BNbPyAY1wdDn9ABHQ42HIRMsPtHGo3oyWMPHCkA8I=;
 b=gDW5tGlChvMqWcYmz5XgWFIFx+czEehxooat0bYjNuByqd2uvV4ImvbY+OXhyg3WQ2hpqYNKUq/m/D3LA/bTB1xCbmPYr6EPyLCUcmrHQUGZ9lThAzvAm8Qzv6i+cVX3mBfrKSNy8fil6VqZ32FeWGKxGn4A6GvPMYMFu34tuGleoWji+4kAlc8bOT7cnp3oeogUZQnk2tuU5/+GTuv7IuEgsSTtjxh4qF4LcMjAGY1Vcft/0ZzxwmrgbdjHFasqT26eG83vQghfo5V+miAhyHGO+8wdZrfU/IlKJ6LPgy3xpixFjmkC9qXSI7bzFX+MAPaINbW0vlGKOQdheyHVUw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <8890cb3e-4538-9b88-cb3c-ae302b7109af@suse.com>
Date: Mon, 11 Sep 2023 10:00:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 2/2] coverage: update gcov info for newer versions
 of gcc
Content-Language: en-US
To: Javi Merino <javi.merino@cloud.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1694189143.git.javi.merino@cloud.com>
 <f6495eb4c02f6539c5b95d2850d4a834f2ea94e8.1694189143.git.javi.merino@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f6495eb4c02f6539c5b95d2850d4a834f2ea94e8.1694189143.git.javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0054.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:93::8) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|VI1PR04MB6990:EE_
X-MS-Office365-Filtering-Correlation-Id: 23b7222b-756a-44c7-c7a7-08dbb29d2163
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Eg8uv936uqpvHiwnmweHYbS/AxWN/+Annoe+KEaIqDof/6BY35AN8vxQQDMbRghUMQO1nuvCI+PQKtO4CJsPvD6xmodey8gRTNtTZ/RROM1manxW6Pv5tp2Kv+mta8nkMj5MFJTzej1L+1DZUVrrljhoCBMmdS0zEDLCq3tKn2Uxs3yOQwiSzTS1nNBJf9vpAFilmDs4FOWPClyalSmzP6WqN+DWKgfJguez/3NJyJz1HLFmKcqi9gF2kIoURUqXfGM8uPWUxoqtStpO3OyodMBAi4gxnr8NV2oePSkZrK1DN7mtDwqF80edoa4Z6/azOCe3nHCpcKsxc9/C5WwFb1vVW7sDQDuZAMEL8Ehl5G2fdLGeIA35Ksa3RrLrmXdc/ZVE/CX+argGnLmWCK+WQhN9e25b0SY0mYKdKQJOCRZMT6Kk+JjWwo6cUDCFYL9WAkamajULJXCaWYRXwXgj7tTE7NkaRyQXbrKXaRJIspQaSoxKMe2q4ojZ+a73LQTkH3TJodFemhEBSQzDVcmubCWv1WKLhI1MDPqoKEpdschQCMHGvS3tzXwRPEo/03wTL+5USNSViwcFl3P+TCtzf1Kh2dTM9XJqE2a3VR3Zu9sxGJ2fPaAZlCWyzuaG3EMokrZyKbTZT6yb46qRGmOv4g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(366004)(346002)(136003)(396003)(39850400004)(451199024)(186009)(1800799009)(41300700001)(31686004)(53546011)(6486002)(6506007)(36756003)(31696002)(38100700002)(86362001)(26005)(2616005)(2906002)(6512007)(83380400001)(478600001)(316002)(8936002)(8676002)(5660300002)(4326008)(6916009)(54906003)(66556008)(66476007)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZmdvVFN0T0w2VGdjVkk5NVlRUnUxRCtwNzdIdVE5d09SdEFpWU1iYURiYTZy?=
 =?utf-8?B?Tk5VOXFZQmFZeEFDSW5XL3Y0T2twUzBBa25odW1QQ0FEUDE2eFpGbTA2dWlL?=
 =?utf-8?B?WnorMkhCaHhtMGFRTzBQSHVkbERmYW9jczdtSXIremx2QXhQcGhmbWYzQk9Z?=
 =?utf-8?B?bG0xODJnVlZ2S2licUc2d2Q5ZVBvVEptMnMrcW0zZmhMMDFVMG1CUmN4eVZa?=
 =?utf-8?B?VjdZNFo4UmZ5WXlyWEpPUUJxMjgxY2JhU1hJcmZpSkdsNGdGQmVuNU1aTWFY?=
 =?utf-8?B?SEtVS2FOS1IzN1ZFS1gxYWFQRnNacHhYTHJyRUlhSVVZTGFYOWVLQm1uTFZJ?=
 =?utf-8?B?QUMwNXgwazcra1pMSHZxTkdya25jMUg5UGMxNXB0eVd0OWozenN5L1k3cENE?=
 =?utf-8?B?czlJb0pyWjNHVkttSmJ1MDRVWXgxckVlY2FhcTBmcTEzbGMzWXBac2M4M1dW?=
 =?utf-8?B?VVVwRUt6bmpWcjNtaXRFdFhnQy9ac1FSODFxb3FnRzg5cW82bDZ4OTNXNlRY?=
 =?utf-8?B?bW4vMk84b0dJc285NXNJZDFrVTAyeTFobnRwc1o5RDhjeG1pMnl3d2FPWi9m?=
 =?utf-8?B?WnJ0SGZodzR1b0dtQjF4YnVvcE5qWjFYRHEybFJtMW9HcnhwZTlEb0hrTXV4?=
 =?utf-8?B?UGFCSldES2JEQkYwRE4yN0IyczJ4M3RvcGtwZUFVLzluZjFLdER6eDYySncv?=
 =?utf-8?B?NCt2VEFhamw5M1luc3hBUEovWDJJb01sdHdIbjJZWlJhR0JZclZBMTJvc3hi?=
 =?utf-8?B?SzF3bk9PblNRaDUxRnJMMklPTFU0Rys4VlliU2RYVE9MWjc0Ym1TSWtYMnRT?=
 =?utf-8?B?VE1JV3M0bUl6cjRZKzJXaUVtTmtFUnJUTzNIWWtwK05WejM0OXpiaFExNlcz?=
 =?utf-8?B?UGZFL3E0TFJIYnV5QzlsSVhWMjg5TTg1a3lJYzk3WGpxcjBCTFFVd00yTjVH?=
 =?utf-8?B?Y3hiMlB3QkFUVDJKTjcvTXdwUXZrZVJqUWZOYkFsOHVhVkNRcTRmNzY3RnI0?=
 =?utf-8?B?dmpjbCtFQS9CMCt3QmNnOEI1b0xFQnhEMUg5UVdkZFdTZ3Q5UmEyVDlsUC9o?=
 =?utf-8?B?b0piVHo2NktVVHJsYmdPeWdncGFCQkFHajVYNW1jeEQxZmhDUjkzN3F4VW5p?=
 =?utf-8?B?LzVCL2Q2VHUzMFFnYU5SWFRtR1lDbmJXT21GSmZUVVRDdGlwRzB5NWhHV2xB?=
 =?utf-8?B?Q09SZXhuTXoxcGVKbUlicGJHK0ZmOWs2bkxwSktwcE0wRjdRYnNtQnVXc1Nr?=
 =?utf-8?B?eDNlMEVQTU5GQ2t0T1hlaHJ2WDhnN1owS3pkOTNJTDE2YXpLOXNnZGdOdUp2?=
 =?utf-8?B?b25aOUFmZVRyNWtNaTdKU1Z1c1V2K0NTQ0dyZDc2UEdyeklFZFI4cS9UVlI0?=
 =?utf-8?B?QW5Demp6MVFLeGpNR3YyVTVZVWgwVndOcDV2L0JjL0VzUVVlR21SOTR4aExu?=
 =?utf-8?B?dVp0UnBIRlcvbmFENElTNkJpT1ZhREcxUUVYMVJVVm03Yzc0TXRxOEUwekZn?=
 =?utf-8?B?N3B0MlJlZ0hBbVNrc1RNMnVVSUhDYmJsZHdkcEpYTDh2MUwySkVHbFl6aXZU?=
 =?utf-8?B?Y0cxOGk2NEZFNURMM2FGUTJuWmRtNVFCVldKOFZURXVsNlp6VlJNeDFvVjY5?=
 =?utf-8?B?TGFWdFJnZkYzbmE4bkQrbGlZWkkzOUIrYzhJaURjUHI3WHB5SUFON0xHcU5k?=
 =?utf-8?B?djNBdGhvVlJuS3hTSThic2t3YlRvK2EzSlkxaGd6UkZLeHV2UzlhWE1qbHQz?=
 =?utf-8?B?OHRFOG1FY2VZcHpKMFlBdERHRUlOZG1vdFlGc09wNXhPQjR5Ykp5S3Vsay9E?=
 =?utf-8?B?ekhESXIwWG54OEgwbkU5VUp6dDFvWE1VMDV4ODcwTnhzTzFNdEswbnFMWnBS?=
 =?utf-8?B?MStac09ZZDY1Vi8zVitwMnEvZFpkM3VrZGI1MTBVaVU0TjhkNWYxMXFVbjV0?=
 =?utf-8?B?NHcxTHNXRTJzRHdPcEpieXFXeVFxVVh0amd5dFVYVkNkKzV5S21RUXQ4a2xx?=
 =?utf-8?B?bFBBMEtZdVBkU21BV1U1bERWVUNNRW5QQVlRTkdndW1uM3g5dllSOExzeUFl?=
 =?utf-8?B?VjBZdzRPS205Y0d0aXJaSDN3SlM5Vy9ZNFNuenducTZvSW5la0c1OWlrVXZx?=
 =?utf-8?Q?uSKFBBUZKlTgNp9RbN7VmFMG+?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 23b7222b-756a-44c7-c7a7-08dbb29d2163
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 08:00:14.4128
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 3saYPFFThU4o+VMCEVAxC7UL02z9Ff6UBpgQcN2q2RFKLdjmbCKcEl8CL8WuGFkntbYPbJLxyovy1OE+UEJdhA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB6990

On 08.09.2023 18:20, Javi Merino wrote:
> Shamelessly copy changes to gcov_info structures from linux so that we
> can capture coverage for xen built with newer compilers.
> 
> Signed-off-by: Javi Merino <javi.merino@cloud.com>
> ---
>  xen/common/coverage/gcc_4_7.c | 24 +++++++++++++++++++++---
>  1 file changed, 21 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/common/coverage/gcc_4_7.c b/xen/common/coverage/gcc_4_7.c
> index ddbc9f4bb0..8f6e287474 100644
> --- a/xen/common/coverage/gcc_4_7.c
> +++ b/xen/common/coverage/gcc_4_7.c
> @@ -24,14 +24,23 @@
>  #define GCOV_COUNTERS 9
>  #elif GCC_VERSION >= 50000 && GCC_VERSION < 70000
>  #define GCOV_COUNTERS 10
> -#elif GCC_VERSION >= 70000
> +#elif GCC_VERSION >= 70000 && GCC_VERSION < 100000
>  #define GCOV_COUNTERS 9
> +#elif GCC_VERSION >= 100000
> +#define GCOV_COUNTERS 8
>  #else
>  #error "Wrong version of GCC used to compile gcov"
>  #endif

This would need adjustment if patch 1 is adjusted as suggested, then ...

>  #define GCOV_TAG_FUNCTION_LENGTH        3
>  
> +#if GCC_VERSION >= 120000
> +/* Since GCC 12.1, sizes are in BYTES and not in WORDS (4B). */
> +#define GCOV_UNIT_SIZE 4
> +#else
> +#define GCOV_UNIT_SIZE 1
> +#endif

... making the earlier group also match this one (which already works
downwards in version number space).

As to the comments (here and below): Since the version check is for
12.0, may I suggest to simply say "gcc 12" everywhere?

> @@ -89,6 +98,10 @@ struct gcov_info {
>      unsigned int version;
>      struct gcov_info *next;
>      unsigned int stamp;
> +#if (GCC_VERSION >= 120000)

Nit: Here any below parentheses likely want omitting, to match there
being none further up. Preferably with the adjustments (which again
I'd be okay doing while committing, so long as you agree)
Acked-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 08:02:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 08:02:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599105.934368 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfbs3-0004zj-9Y; Mon, 11 Sep 2023 08:02:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599105.934368; Mon, 11 Sep 2023 08:02:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfbs3-0004zc-6p; Mon, 11 Sep 2023 08:02:11 +0000
Received: by outflank-mailman (input) for mailman id 599105;
 Mon, 11 Sep 2023 08:02:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S94K=E3=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qfbs1-0004zW-UG
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 08:02:10 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20625.outbound.protection.outlook.com
 [2a01:111:f400:fe59::625])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 80922f98-5079-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 10:02:08 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by SA3PR12MB7831.namprd12.prod.outlook.com (2603:10b6:806:311::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 08:02:04 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::9a2:f8ec:7c75:fe95]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::9a2:f8ec:7c75:fe95%6]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 08:02:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 80922f98-5079-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=csYRBZUwfCCGiur03VXX+aOc8HEpl3zMfX+RLHysL756C4F0GA48sQBv/xFyVxJiCn1A2aVt7q6BxqMHmYSHvbVKcnkqylv5TfrJsxl3MSJzk1jVdhTGVJG1Z9iDKTjPE1rAxhSgig9oVA5dx/1/UQZVIrKturBmHpOqIPsWuc5bTT5xaVUBF8XCtJA9SydeY74TvRv3trJTtOtp3tV98uOxCy3wWHRppiINPySrtJMH1zctWQWFaiF9BuF3xlyuOL6Xe85L4ig9+GonzgRx8j3j4D3+TGm9m5WkxgIo+pbB6IJ/q7RU4rkC+cQD9IbJSmCPUTpvyeJktdDmLTxEDg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xtKHm2qinFfsEuYofHDyysvKk6gtmsstZPJV13d+BOI=;
 b=GMiU/kdPDyjpmUsTWdbwXWJqNK+X83f7TIHf+olUAKpWyKd43Vo5wxNzScUdJwAyv5o5h9Q5dJ0vQfmWkwLzUBeV5k1cc6avZQM38MShAZ89VJGPjG9o32teFhpAxDSHE5PHRNJOcLBET6pL05piog0g9Yz8GRrGGFx4kVtUNwop6MleZgvzqqpbbsLI+XoPOiaXMgfOPqASQI7miUVCpsl4Z+3tUyqmrS/w420Jvxuy+6i19SncJiwjsyEbFbMsWzg1o8S4IHytCSR96Ia+hUrg7wzp523Z1NgBaR0WIXE0xdttFq7TLxPkKlmoU1PDhm+nDCSBRT2btaalhYFo0Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xtKHm2qinFfsEuYofHDyysvKk6gtmsstZPJV13d+BOI=;
 b=p1PuwkKrxLLy5W9dJ1COV6mLAp1LB+ewgPnOJR3GcEbKdE2y0GE52SxLemeErhfhggNgTlujLE1YevbWhPFvDdf+pcW7a/oGgESB32MRtbqWTs2sfsIbFyMHZzEOuA7ZY/TX5FSlo/9deHh91HP8NsPlEBzERmBXlcjM4NqcNXw=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <3dc0a9b2-d690-b9c7-321f-008ba1fbf084@amd.com>
Date: Mon, 11 Sep 2023 09:01:57 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.0
Subject: Re: Xen 4.18 release: Reminder about feature/code freeze
To: Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich
 <jbeulich@suse.com>, "jgross@suse.com" <jgross@suse.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Anthony PERARD <anthony.perard@citrix.com>,
 "community.manager@xenproject.org" <community.manager@xenproject.org>
References: <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0061.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:153::12) To SN6PR12MB2621.namprd12.prod.outlook.com
 (2603:10b6:805:73::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|SA3PR12MB7831:EE_
X-MS-Office365-Filtering-Correlation-Id: 4a51b572-76fd-45fc-7853-08dbb29d62e1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7cZ3QUAnMD3Qhexv/fiHMyEbFy+SKgaLyzEiDXSfPyFDUP0xmL5Cc9N2XPAFriDkRS98402N1JkXfMDiYZg1/G6HjpAx4cBd6FbUnizzn+PAlxCaJPEfSncwN0rQhHOC5XVgNexiwl12fwsAvuQlSSlpEcYTRm6scKF1nyzzhzB+jFreUKkvAxldOwEMP4sgofJEAsqRZGG7aMhmm9YYPR2pCJJhQ383GcAuEzCV+zT2dfNt8pIHo7peFEANFK6WJzfcQHBW/22E+dAM/aR6SKZI+3tl6GnYoaIRQuYUwZakXXHq4adbqGyPhBg+ZTmBBHoed11wmmXmpyq6Yry/XpDVeZyw/sm5En/P1lj2N9FT+RACDHn4IZZEbhNLLylfLeAxJK+nPhjXKNOUkSDUk+QC5adazpWSx9N7bS7mzP6wv4JRgwdPmbtrf6+nW+kQVTPps/Cmp3PFGv7QB86M6wLH/HxXsgXV1UJzfZDdHMT97ykIEHhH9K0bc6Eu/fCvbQTJfqy7Er9SXt4Kql65jo83VKrU9J9LY7X2T3UzMEpVtW4F9l5yXH5k4OGMjCYNxozg6up+zMQHdekiQH02UpDKsa5SsPg+H7nMC9vfzIU/Pn9ssfbG+INX5lTu/FGRuyYGtMYS1rcvRKPBChI54jlICDF2+zaXSD0zw+AKJ10=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(396003)(136003)(39860400002)(366004)(186009)(451199024)(1800799009)(6486002)(6506007)(53546011)(6512007)(6666004)(83380400001)(31696002)(38100700002)(36756003)(2616005)(26005)(31686004)(316002)(7416002)(41300700001)(8676002)(8936002)(54906003)(66476007)(2906002)(66556008)(4326008)(66946007)(110136005)(478600001)(966005)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?L0pVN2phTGRJcy8ybTBpaXBhM29vMTl2aCtuVGt2Z1I0NTJKb1VHMEFNL2My?=
 =?utf-8?B?ei9vZ2tVQ1IzYU1JUmdpUnM3TURQa0JtQmlKeUJoYkNhMnZHdzBHdElMdUN6?=
 =?utf-8?B?QkloeGNvaDdXZkluRUlyanVQRFoxRDRucnB6RGhua1VpdTJGZVZyZzY0ZDZ1?=
 =?utf-8?B?clA2WDZjZkJsTjFicXJWVVlySWw4d0Y5Y0RkckVVbmFsSWR6dXU1M3FOa0JQ?=
 =?utf-8?B?aTcwem42dVVLRStDdUwwamRQUXZaRExaR0lLMTU3bERDKzgweTBsTUZxc3Mv?=
 =?utf-8?B?OEozZUJxK3JXNG15dFJwclhwZ1FtOG04Y3UzbVFhcG4vaGIvZThlTnEvS0cr?=
 =?utf-8?B?Q2tCdlNsbXpNT0JTK0N3NllWNS9tUzlJc1pya3dreVBmeFA4MUFNSGJjcElL?=
 =?utf-8?B?WUN4cWJRN2ZKY0NaQW5CQk5TZGpKQStHU1E0eXpBUmJET2wxSGU3QU9aK085?=
 =?utf-8?B?VEg2VVFYcitqUENHYU84ekM2dnFNa1BYbEt1cnAwOHhaODMzdjBDdGFCbkZ1?=
 =?utf-8?B?WjBKMEYvRlY0TUIyUHRUVzluRkp6am1ldFpQdVY2WHY0TnBBRWtjREltc1A0?=
 =?utf-8?B?c3N6TXV3VHFjeTFNZXhJWld1dmt1Nlc1VDFvcERtSWpPY3BFbFlGL1FBcmlq?=
 =?utf-8?B?ajJpdFp6dXNUdi9vclM5eXEvQXd4c2x3dDBJU2p1N0lDN2tGV1BNdWFoQ05O?=
 =?utf-8?B?YU1IZ3F6UU9vclFHY0hCSE5lUGFJTXNSNW1mc3ZEMktsWHR5VURSVisxWENk?=
 =?utf-8?B?WG5yalRaOGx2aUlwSER3aW9RK3JpTVZ6RnNHYmxUNTZXcDJ1aHRhQS9KTTlJ?=
 =?utf-8?B?WS9TOWwyOUIrMmZ4Y3NkQnJXbjBSamFKMGllQXEzSlFWYlh0OU4zVVR3bjZP?=
 =?utf-8?B?enlwU2VTbDlDYzNEQWpXZzhTZGxsWjFhOUdGZ25OTS8zMEJBa0UzMGF5YS9o?=
 =?utf-8?B?Tmhsa2pOcVY3d0d2SzNnVGRyY0xzR0loZG0wdFVxMUMwOFlhS29RQmxqTDZp?=
 =?utf-8?B?NDBVL0VBMnJKeW4wRlAzVHBjRzdMZG1BRXAxTEJnY2ozSXQ2cUJXdFhJbk00?=
 =?utf-8?B?dE9rNVF4R3ZzMkk5aWQyck9BS0dJTnJMQ21ZakNzYVdsdWNBUGVKWDJnU091?=
 =?utf-8?B?cmNnZTZic29oYnJrQnZWV3pvczdrc2h5RFU1VUxUcnpTTmZVbWI2YU5YK1ZG?=
 =?utf-8?B?T3Y3OE41RXUrRGNlRzNwdnFlUjJjczBPY3luRjhDUWg3cE1EYXVrbjd2WktQ?=
 =?utf-8?B?L2VuN1drZ09HNTZSb0lFMUJzK2V6Z01ia2dPV21xczF4RURMR0pRajc4QW1z?=
 =?utf-8?B?dTZhSThyVE15RHMvUStyYlZFTTl6U3c2dmZiN0dpbStkZ0QwbkxweEFmeFd4?=
 =?utf-8?B?MmtpM3FHc3AyT3c4T0ZhbEY4V1VUUmp2WkJDdFYxZVJteVgwNWV2eGo1L29M?=
 =?utf-8?B?QVRtUERxSi9MNFUrMXFuUEVsbG56N1ZDVVdjeCtvM0t6a0crZGhQc3RTYVdC?=
 =?utf-8?B?VnNic2RqKzZKNFlaYmQ1d2ZhRDJTSENnTWxRWm9vRkVWdFQ4MDhwLzZxdC9D?=
 =?utf-8?B?MlI0anpQQ25ka0kzZUV4RDF4eXJ3dmtBdkVWVzRPYnQrT3dIdmpRWHhXWWY0?=
 =?utf-8?B?KzJDTU9XNE1WOUwzc2JCN0x5MTJUMjNIVy9RZ1pBTW92djc1MVZLR1AzL2Jw?=
 =?utf-8?B?Rm5WZ2lGbEdlUTFNb2xXMnJOWnBCMmtzTldFOW1SSlp2cCsxUmNtR2gwZHkr?=
 =?utf-8?B?dzdPT3dZdi9ad0NYbjlLN0lYVjE3WExhSWhIdEppTVZ1L1pwMjYyS0JoWDJM?=
 =?utf-8?B?TTY3N1hQaTNNd0FiUjdQV2VOQTh5b2pPUS94L2ZZckowYm1JRFRGTGtEWnph?=
 =?utf-8?B?THh0UVgzcXU5ckZqN2tqaFNIdmgyQ0tHRGpZbjBSRWhBd1p6YU1seCtkTzky?=
 =?utf-8?B?QVd2bHdmWnlxSEE2Tk5BYWZpNU5RdFM1MW4rU2JNaXpGNXg0NTZEV1ZjWXV5?=
 =?utf-8?B?Z1M5c3NINVRzWGpPcDJVN3BaaVl6MUVrUXNwZzFTMU9UdHF5OFJRdjQvMm5T?=
 =?utf-8?B?cTllTGhFcis4S0d1MjFmQ2trMUVDSEpjaWVuQytpdjFXYnF2TzRhR3o2ZHQ4?=
 =?utf-8?Q?SziSE3ckHcPIEKJLPF8RawuI6?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4a51b572-76fd-45fc-7853-08dbb29d62e1
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 08:02:04.3597
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: TtlvU353Hyxwsk8TGepeMKY4rdmfHGJjH2E/4GqEStedaIu+Sr5efWJXfDk2n5v+HRhkoK7clT/7FdPHyZBxFA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR12MB7831

Hi Henry,

On 11/09/2023 02:08, Henry Wang wrote:
> CAUTION: This message has originated from an External Source. Please 
> use proper judgment and caution when opening attachments, clicking 
> links, or responding to this email.
>
> Hi everyone,
>
> This is the reminder that we are currently in the feature freeze. I 
> apologise
>
> for the delay.
>
> I decided to make the code freeze date on Fri Sep 22, 2023, to give 
> people more
>
> time to react because of my late reminder about feature freeze. The 
> hard code
>
> freeze date will remain unchanged, i.e. Fri Oct 6, 2023. So currently 
> we have 2
>
> weeks before code freeze and another 4 weeks before hard code freeze. If
>
> everything goes well, we can cut 4.18 rc1 at Fri Sep 29, 2023.
>
> Also, below is the critical items on my list for 4.18 release:
>
> 1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
>
> https://gitlab.com/xen-project/xen/-/issues/114
>
> 2. tools: Switch to non-truncating XENVER_* ops
>
> https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3@citrix.com/
>
> 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for 
> staging | 6a47ba2f
>
> https://marc.info/?l=xen-devel&m=168312468808977 
> <https://marc.info/?l=xen-devel&m=168312468808977>
>
> https://marc.info/?l=xen-devel&m=168312687610283 
> <https://marc.info/?l=xen-devel&m=168312687610283>
>
> 4. The proper eIBRS support for x86
>
> https://lore.kernel.org/xen-devel/ec8e75da-743b-50dc-4665-854c446c974e@citrix.com/
>
> 5. [PATCH 1/2] credit: Limit load balancing to once per millisecond
>
> https://lore.kernel.org/xen-devel/20230630113756.672607-1-george.dunlap@cloud.com/
>
> 6. [PATCH 0/2]  Revoke IOMEM/IO port/IRQ permissions on PCI detach for 
> HVM guest
>
> https://lore.kernel.org/xen-devel/20230809103305.30561-1-julien@xen.org/
>
> 7. [PATCH v2 0/8] Fixes to debugging facilities
>
> https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/
>

Did you miss "[PATCH v6 00/13] xen/arm: Split MMU code as the prepration 
of MPU work" ?

It see that patches from [PATCH v6 06/13] xen/arm: Split page table 
related code to mmu/pt.c ... are yet to be reviewed and committed.

- Ayan

> Kind regards,
>
> Henry
>


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 08:09:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 08:09:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599112.934378 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfbz0-0000hm-Ui; Mon, 11 Sep 2023 08:09:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599112.934378; Mon, 11 Sep 2023 08:09:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfbz0-0000hZ-Pb; Mon, 11 Sep 2023 08:09:22 +0000
Received: by outflank-mailman (input) for mailman id 599112;
 Mon, 11 Sep 2023 08:09:21 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Gp74=E3=gmail.com=julien.grall.oss@srs-se1.protection.inumbo.net>)
 id 1qfbyy-0000g6-Uc
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 08:09:20 +0000
Received: from mail-lf1-x133.google.com (mail-lf1-x133.google.com
 [2a00:1450:4864:20::133])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 814b1504-507a-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 10:09:18 +0200 (CEST)
Received: by mail-lf1-x133.google.com with SMTP id
 2adb3069b0e04-500b66f8b27so7106217e87.3
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 01:09:18 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 814b1504-507a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694419757; x=1695024557; darn=lists.xenproject.org;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:from:to:cc:subject:date:message-id:reply-to;
        bh=RMObPANAVTF2OcBeGnJ2qRv65zU7kWJjvY0xrUK0r4A=;
        b=AZp8+wTjX9rIyJH79You+bGQYy0dtaPnjAAYBy3vD4YRQ7R9CteUTL0u8DYJalikoX
         YWsNh1H/QOT+HtUfI1XzZdH0FH/sRWr/CU4FwkmQEFpmaHei6bZEqyGgSeFfzUaFIobE
         9vgdirbF+0Nm7yUzRP4zmeSdrKkSclFG6cre6dFKCtcNHLIoxAS7gd9Zh5VOZvJfhxoy
         6Vdna/2Q/zvQY/WWzbbFaTv0VSArqpJ95KQ/LwD7rW3TzW8kynjtvsfw1p6Lea4SXr/b
         cd4+06OGZFSh2+3Q27jVd/jZFHLZSkWbat7jAKntJnw6i28f5RmVmmz6IW6z4PVM/z2f
         5WCA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694419757; x=1695024557;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=RMObPANAVTF2OcBeGnJ2qRv65zU7kWJjvY0xrUK0r4A=;
        b=aka7IWTrUm6ihvSfHXNtz2VxC4w4Tat+hFra2aNG/GFMHrGRyQjn9NKZDfqhvPup1q
         jlODZQq5jyjOAwNziPrNGqR/inP0SYlmtgNH1teiyX+QHTj/L3VpV+cgZgldvFVqQ6qi
         +44R+aAAaCy88wvgb2Y42P+fTwRnolXUFeP+9ZT2mtgNkhWAGyVNqJK0SP5QH8eYMEPf
         88V/VYBvvnmYsmo+libceKr/aJDCxy6XZUV96jxrF67m6s3eOVLJLZTp7VTbX8Eo7h2Q
         2r9MnYtReZkqPRkEDMnQ2VHxYE71AX/7hMXgNQn4Z9WkTiKx216Tm9+vzLw+NMn+0bz+
         FoXQ==
X-Gm-Message-State: AOJu0YxKWTbozd50Dk2h/HLIeTW40YPIGtYTT3nDQmIFvrhPpJjpxAg+
	GBYfZoMepjIDQycStL3w4JrysDgzA2UGuQZCjTE=
X-Google-Smtp-Source: AGHT+IG5ZXGo9589Vj6DKhOkVTIAwhZLP+gAXuBuUcVb/mgMGfjs6WdO39OOp0Li4izgIOXPUHb9QRxew4G2mK6DcR8=
X-Received: by 2002:ac2:5287:0:b0:4fe:8ba9:4c4 with SMTP id
 q7-20020ac25287000000b004fe8ba904c4mr5835179lfm.59.1694419757196; Mon, 11 Sep
 2023 01:09:17 -0700 (PDT)
MIME-Version: 1.0
References: <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <3dc0a9b2-d690-b9c7-321f-008ba1fbf084@amd.com>
In-Reply-To: <3dc0a9b2-d690-b9c7-321f-008ba1fbf084@amd.com>
From: Julien Grall <julien.grall.oss@gmail.com>
Date: Mon, 11 Sep 2023 04:09:03 -0400
Message-ID: <CAJ=z9a2LpUe_9160PEChMG=pSLYcwLwETdrTN2zDrk21QP2qpw@mail.gmail.com>
Subject: Re: Xen 4.18 release: Reminder about feature/code freeze
To: Ayan Kumar Halder <ayankuma@amd.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>, 
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Henry Wang <Henry.Wang@arm.com>, 
	Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	"community.manager@xenproject.org" <community.manager@xenproject.org>, "jgross@suse.com" <jgross@suse.com>, 
	"sstabellini@kernel.org" <sstabellini@kernel.org>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Content-Type: multipart/alternative; boundary="000000000000ba8f35060510d73a"

--000000000000ba8f35060510d73a
Content-Type: text/plain; charset="UTF-8"

On Mon, 11 Sep 2023 at 09:02, Ayan Kumar Halder <ayankuma@amd.com> wrote:

> Hi Henry,
>
> On 11/09/2023 02:08, Henry Wang wrote:
> > CAUTION: This message has originated from an External Source. Please
> > use proper judgment and caution when opening attachments, clicking
> > links, or responding to this email.
> >
> > Hi everyone,
> >
> > This is the reminder that we are currently in the feature freeze. I
> > apologise
> >
> > for the delay.
> >
> > I decided to make the code freeze date on Fri Sep 22, 2023, to give
> > people more
> >
> > time to react because of my late reminder about feature freeze. The
> > hard code
> >
> > freeze date will remain unchanged, i.e. Fri Oct 6, 2023. So currently
> > we have 2
> >
> > weeks before code freeze and another 4 weeks before hard code freeze. If
> >
> > everything goes well, we can cut 4.18 rc1 at Fri Sep 29, 2023.
> >
> > Also, below is the critical items on my list for 4.18 release:
> >
> > 1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
> >
> > https://gitlab.com/xen-project/xen/-/issues/114
> >
> > 2. tools: Switch to non-truncating XENVER_* ops
> >
> >
> https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3@citrix.com/
> >
> > 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for
> > staging | 6a47ba2f
> >
> > https://marc.info/?l=xen-devel&m=168312468808977
> > <https://marc.info/?l=xen-devel&m=168312468808977>
> >
> > https://marc.info/?l=xen-devel&m=168312687610283
> > <https://marc.info/?l=xen-devel&m=168312687610283>
> >
> > 4. The proper eIBRS support for x86
> >
> >
> https://lore.kernel.org/xen-devel/ec8e75da-743b-50dc-4665-854c446c974e@citrix.com/
> >
> > 5. [PATCH 1/2] credit: Limit load balancing to once per millisecond
> >
> >
> https://lore.kernel.org/xen-devel/20230630113756.672607-1-george.dunlap@cloud.com/
> >
> > 6. [PATCH 0/2]  Revoke IOMEM/IO port/IRQ permissions on PCI detach for
> > HVM guest
> >
> > https://lore.kernel.org/xen-devel/20230809103305.30561-1-julien@xen.org/
> >
> > 7. [PATCH v2 0/8] Fixes to debugging facilities
> >
> >
> https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/
> >
>
> Did you miss "[PATCH v6 00/13] xen/arm: Split MMU code as the prepration
> of MPU work" ?


AFAIU Henry listed all the critical series for 4.18. Can you explain why do
you think this is one?

Cheers,


>
> It see that patches from [PATCH v6 06/13] xen/arm: Split page table
> related code to mmu/pt.c ... are yet to be reviewed and committed.
>
> - Ayan
>
> > Kind regards,
> >
> > Henry
> >
>

--000000000000ba8f35060510d73a
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div><br></div><div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=
=3D"gmail_attr">On Mon, 11 Sep 2023 at 09:02, Ayan Kumar Halder &lt;<a href=
=3D"mailto:ayankuma@amd.com">ayankuma@amd.com</a>&gt; wrote:<br></div><bloc=
kquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #cc=
c solid;padding-left:1ex">Hi Henry,<br>
<br>
On 11/09/2023 02:08, Henry Wang wrote:<br>
&gt; CAUTION: This message has originated from an External Source. Please <=
br>
&gt; use proper judgment and caution when opening attachments, clicking <br=
>
&gt; links, or responding to this email.<br>
&gt;<br>
&gt; Hi everyone,<br>
&gt;<br>
&gt; This is the reminder that we are currently in the feature freeze. I <b=
r>
&gt; apologise<br>
&gt;<br>
&gt; for the delay.<br>
&gt;<br>
&gt; I decided to make the code freeze date on Fri Sep 22, 2023, to give <b=
r>
&gt; people more<br>
&gt;<br>
&gt; time to react because of my late reminder about feature freeze. The <b=
r>
&gt; hard code<br>
&gt;<br>
&gt; freeze date will remain unchanged, i.e. Fri Oct 6, 2023. So currently =
<br>
&gt; we have 2<br>
&gt;<br>
&gt; weeks before code freeze and another 4 weeks before hard code freeze. =
If<br>
&gt;<br>
&gt; everything goes well, we can cut 4.18 rc1 at Fri Sep 29, 2023.<br>
&gt;<br>
&gt; Also, below is the critical items on my list for 4.18 release:<br>
&gt;<br>
&gt; 1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)<br>
&gt;<br>
&gt; <a href=3D"https://gitlab.com/xen-project/xen/-/issues/114" rel=3D"nor=
eferrer" target=3D"_blank">https://gitlab.com/xen-project/xen/-/issues/114<=
/a><br>
&gt;<br>
&gt; 2. tools: Switch to non-truncating XENVER_* ops<br>
&gt;<br>
&gt; <a href=3D"https://lore.kernel.org/xen-devel/20230117135336.11662-1-an=
drew.cooper3@citrix.com/" rel=3D"noreferrer" target=3D"_blank">https://lore=
.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3@citrix.com/</a>=
<br>
&gt;<br>
&gt; 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for <br=
>
&gt; staging | 6a47ba2f<br>
&gt;<br>
&gt; <a href=3D"https://marc.info/?l=3Dxen-devel&amp;m=3D168312468808977" r=
el=3D"noreferrer" target=3D"_blank">https://marc.info/?l=3Dxen-devel&amp;m=
=3D168312468808977</a> <br>
&gt; &lt;<a href=3D"https://marc.info/?l=3Dxen-devel&amp;m=3D16831246880897=
7" rel=3D"noreferrer" target=3D"_blank">https://marc.info/?l=3Dxen-devel&am=
p;m=3D168312468808977</a>&gt;<br>
&gt;<br>
&gt; <a href=3D"https://marc.info/?l=3Dxen-devel&amp;m=3D168312687610283" r=
el=3D"noreferrer" target=3D"_blank">https://marc.info/?l=3Dxen-devel&amp;m=
=3D168312687610283</a> <br>
&gt; &lt;<a href=3D"https://marc.info/?l=3Dxen-devel&amp;m=3D16831268761028=
3" rel=3D"noreferrer" target=3D"_blank">https://marc.info/?l=3Dxen-devel&am=
p;m=3D168312687610283</a>&gt;<br>
&gt;<br>
&gt; 4. The proper eIBRS support for x86<br>
&gt;<br>
&gt; <a href=3D"https://lore.kernel.org/xen-devel/ec8e75da-743b-50dc-4665-8=
54c446c974e@citrix.com/" rel=3D"noreferrer" target=3D"_blank">https://lore.=
kernel.org/xen-devel/ec8e75da-743b-50dc-4665-854c446c974e@citrix.com/</a><b=
r>
&gt;<br>
&gt; 5. [PATCH 1/2] credit: Limit load balancing to once per millisecond<br=
>
&gt;<br>
&gt; <a href=3D"https://lore.kernel.org/xen-devel/20230630113756.672607-1-g=
eorge.dunlap@cloud.com/" rel=3D"noreferrer" target=3D"_blank">https://lore.=
kernel.org/xen-devel/20230630113756.672607-1-george.dunlap@cloud.com/</a><b=
r>
&gt;<br>
&gt; 6. [PATCH 0/2]=C2=A0 Revoke IOMEM/IO port/IRQ permissions on PCI detac=
h for <br>
&gt; HVM guest<br>
&gt;<br>
&gt; <a href=3D"https://lore.kernel.org/xen-devel/20230809103305.30561-1-ju=
lien@xen.org/" rel=3D"noreferrer" target=3D"_blank">https://lore.kernel.org=
/xen-devel/20230809103305.30561-1-julien@xen.org/</a><br>
&gt;<br>
&gt; 7. [PATCH v2 0/8] Fixes to debugging facilities<br>
&gt;<br>
&gt; <a href=3D"https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-0=
0c44f3ec08e@gmail.com/" rel=3D"noreferrer" target=3D"_blank">https://lore.k=
ernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/</a><br>
&gt;<br>
<br>
Did you miss &quot;[PATCH v6 00/13] xen/arm: Split MMU code as the preprati=
on <br>
of MPU work&quot; ?</blockquote><div dir=3D"auto"><br></div><div dir=3D"aut=
o">AFAIU Henry listed all the critical series for 4.18. Can you explain why=
 do you think this is one?</div><div dir=3D"auto"><br></div><div dir=3D"aut=
o">Cheers,</div><div dir=3D"auto"><br></div><blockquote class=3D"gmail_quot=
e" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" =
dir=3D"auto"><br>
<br>
It see that patches from [PATCH v6 06/13] xen/arm: Split page table <br>
related code to mmu/pt.c ... are yet to be reviewed and committed.<br>
<br>
- Ayan<br>
<br>
&gt; Kind regards,<br>
&gt;<br>
&gt; Henry<br>
&gt;<br>
</blockquote></div></div>

--000000000000ba8f35060510d73a--


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 08:15:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 08:15:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599120.934388 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfc5J-0002aK-HW; Mon, 11 Sep 2023 08:15:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599120.934388; Mon, 11 Sep 2023 08:15:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfc5J-0002aD-Eh; Mon, 11 Sep 2023 08:15:53 +0000
Received: by outflank-mailman (input) for mailman id 599120;
 Mon, 11 Sep 2023 08:15:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vgak=E3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qfc5I-0002a7-O7
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 08:15:52 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6bb45f02-507b-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 10:15:51 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-19-206-190.retail.telecomitalia.it [87.19.206.190])
 by support.bugseng.com (Postfix) with ESMTPSA id B6D2C4EE0741;
 Mon, 11 Sep 2023 10:15:50 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6bb45f02-507b-11ee-8784-cb3800f73035
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH] xen/PCI: address violations of MISRA C:2012 Rules 8.2 and 8.3
Date: Mon, 11 Sep 2023 10:15:35 +0200
Message-Id: <f6884bbff0a4117874618bfbece5066d98131aff.1694419992.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names and make function declarations and
definitions consistent. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/include/xen/pci.h | 23 ++++++++++++-----------
 1 file changed, 12 insertions(+), 11 deletions(-)

diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h
index 7d8a7cd213..3ed79d15cd 100644
--- a/xen/include/xen/pci.h
+++ b/xen/include/xen/pci.h
@@ -166,14 +166,14 @@ int scan_pci_devices(void);
 enum pdev_type pdev_type(u16 seg, u8 bus, u8 devfn);
 int find_upstream_bridge(u16 seg, u8 *bus, u8 *devfn, u8 *secbus);
 
-void setup_hwdom_pci_devices(struct domain *,
-                            int (*)(u8 devfn, struct pci_dev *));
+void setup_hwdom_pci_devices(struct domain *d,
+                            int (*handler)(u8 devfn, struct pci_dev *pdev));
 int pci_release_devices(struct domain *d);
 void pci_segments_init(void);
 int pci_add_segment(u16 seg);
 const unsigned long *pci_get_ro_map(u16 seg);
 int pci_add_device(u16 seg, u8 bus, u8 devfn,
-                   const struct pci_dev_info *, nodeid_t node);
+                   const struct pci_dev_info *info, nodeid_t node);
 int pci_remove_device(u16 seg, u8 bus, u8 devfn);
 int pci_ro_device(int seg, int bus, int devfn);
 int pci_hide_device(unsigned int seg, unsigned int bus, unsigned int devfn);
@@ -198,10 +198,11 @@ int pci_find_next_cap(u16 seg, u8 bus, unsigned int devfn, u8 pos, int cap);
 int pci_find_ext_capability(int seg, int bus, int devfn, int cap);
 int pci_find_next_ext_capability(int seg, int bus, int devfn, int start,
                                  int cap);
-const char *parse_pci(const char *, unsigned int *seg, unsigned int *bus,
-                      unsigned int *dev, unsigned int *func);
-const char *parse_pci_seg(const char *, unsigned int *seg, unsigned int *bus,
-                          unsigned int *dev, unsigned int *func, bool *def_seg);
+const char *parse_pci(const char *s, unsigned int *seg_p, unsigned int *bus_p,
+                      unsigned int *dev_p, unsigned int *func_p);
+const char *parse_pci_seg(const char *s, unsigned int *seg_p,
+                          unsigned int *bus_p, unsigned int *dev_p,
+                          unsigned int *func_p, bool *def_seg);
 
 #define PCI_BAR_VF      (1u << 0)
 #define PCI_BAR_LAST    (1u << 1)
@@ -210,12 +211,12 @@ unsigned int pci_size_mem_bar(pci_sbdf_t sbdf, unsigned int pos,
                               uint64_t *paddr, uint64_t *psize,
                               unsigned int flags);
 
-void pci_intx(const struct pci_dev *, bool enable);
-bool pcie_aer_get_firmware_first(const struct pci_dev *);
+void pci_intx(const struct pci_dev *pdev, bool enable);
+bool pcie_aer_get_firmware_first(const struct pci_dev *pdev);
 
 struct pirq;
-int msixtbl_pt_register(struct domain *, struct pirq *, uint64_t gtable);
-void msixtbl_pt_unregister(struct domain *, struct pirq *);
+int msixtbl_pt_register(struct domain *d, struct pirq *pirq, uint64_t gtable);
+void msixtbl_pt_unregister(struct domain *d, struct pirq *pirq);
 void msixtbl_pt_cleanup(struct domain *d);
 
 #ifdef CONFIG_HVM
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 08:23:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 08:23:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599131.934408 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfcCd-00052X-J5; Mon, 11 Sep 2023 08:23:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599131.934408; Mon, 11 Sep 2023 08:23:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfcCd-00052Q-GR; Mon, 11 Sep 2023 08:23:27 +0000
Received: by outflank-mailman (input) for mailman id 599131;
 Mon, 11 Sep 2023 08:23:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S94K=E3=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qfcCb-0004lv-NL
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 08:23:25 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on20601.outbound.protection.outlook.com
 [2a01:111:f400:7e83::601])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 78d1a4a3-507c-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 10:23:23 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by DS0PR12MB8296.namprd12.prod.outlook.com (2603:10b6:8:f7::6) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.35; Mon, 11 Sep 2023 08:23:20 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::9a2:f8ec:7c75:fe95]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::9a2:f8ec:7c75:fe95%6]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 08:23:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 78d1a4a3-507c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=I5ACrEpCBso9MrV8X90FDZjcl60K5oiVyYTWbdVzXrLTTbocC35AzeNBEUAeB2mH2M6EMDka4S8xcJ6eiiLwxJkH0t03jxOXzjKOxUCktguSPGV0C8uivySJ3bE5OEaTmsDZSSFYMS/PAo77c6lHlcTt1JN2xnumNPdvoTIk6cH+2TSBoEo1gtc3sh/XKFCjUWKXvSzs3s3S50DHsus48kKxDpp6ob82ijGtsrTUrnymtBmN8DjgM5D7/eSUH5TeiYVd0+UWn+YK97JFnk6rtvlC8TyjY4B+4wMea3rSMkMUYLwBM/HmrycB/jbz1ChYEyczLi3uhqPT3nMK+yja3A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1bR/q+DBiyp98CunEwsJlFJ3zkyuBS1WY8ICKRRxT8M=;
 b=nfbsC5Ii0oDaxGv8DUGspVxMp3v8RPDFF/nyWZY8IH0cLjOogFabiImKbFCj3PnWFpXgF/M5k4faWdyE7YfecaTkTMrjwmFJOdxzXIhY1OhyfWX19A/vkaoWOimmXU6BoUBUXWCtfeS1dQ+rdVrN4Rt9F81kH+IQOfihVfrLxanIwozaZzUctcsmo/sc6uIc+R2IAqsA4tBy2iCudCVZHX89iiAMt/HqJy7I4RxP/5Kinic5ogX8Yb8xXx/y8PVKIyj//dJFUsctYtsKr5JojcmrKC2T5O0BriS+SwsJMQUE2CAVa5PZ3JUKiSnffjZrapBDracz+eFWduYUbKvGQg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1bR/q+DBiyp98CunEwsJlFJ3zkyuBS1WY8ICKRRxT8M=;
 b=eP2wT7ZrZq27BBDU6+yXAH9qu9PYaESNhsRaRLTycAChGXBmTC10/3yXlhcxB9KqTrl4soZDaxGTDOMBvSJkjk2eyVVv5BRMmUXgBKezACTuwH7Kcy4MD14RcwOno+uwTm2LMtxOYoPAjrwREHMxX7kpU4ZrdfI+YEYk4+OQv1o=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <23604843-555f-4e34-fd6a-53bbe7f94d68@amd.com>
Date: Mon, 11 Sep 2023 09:23:13 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.0
Subject: Re: Xen 4.18 release: Reminder about feature/code freeze
To: Julien Grall <julien.grall.oss@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Henry Wang
 <Henry.Wang@arm.com>, Jan Beulich <jbeulich@suse.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "community.manager@xenproject.org" <community.manager@xenproject.org>,
 "jgross@suse.com" <jgross@suse.com>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <3dc0a9b2-d690-b9c7-321f-008ba1fbf084@amd.com>
 <CAJ=z9a2LpUe_9160PEChMG=pSLYcwLwETdrTN2zDrk21QP2qpw@mail.gmail.com>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <CAJ=z9a2LpUe_9160PEChMG=pSLYcwLwETdrTN2zDrk21QP2qpw@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P265CA0033.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2ae::6) To SN6PR12MB2621.namprd12.prod.outlook.com
 (2603:10b6:805:73::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|DS0PR12MB8296:EE_
X-MS-Office365-Filtering-Correlation-Id: 7a450984-4df1-44f6-df10-08dbb2a05b74
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wTd2ZEWHqQ048Ii1wS57tqsfgtxTRHDMaXPEtQaJlrfXambKKs/CKB2QRwbyHLd9n49+yuduslGXCj+o7pI1Vp2SXArrvrpuMS3kXl8P86ywnqb3diDNMeBu+dKkfidB/joyFXGgyvW6b4Z8fNCRFKMdPelTtCcYQZ1uXNyxP9E+aTRMZnSEtfhyjUXwneVw5r26ARMyzthUeW7eGfZB/e/mtQK9OamGXeVdhP647nWC2a+r6PRzFpRJxCHi03O8Tduvnk9SjcS998b08z3MPcBLEs/TDLUCogMCl/kQ0jvrXtn7JbLijcXe3KIAoDxpRIzU4UkocAAQEdN3EFP6LdtxssVAISMdiMaM3TIAwlxk19Tk6Jlqa95VG0ym7g8un0Bij+rVkVyU5K2oQkXs+50hm+UYEvFq5jqaveF3tbj3z4GF3WGBzhTh/C6WG4O6qhotO8d4Pkh0Df5uRwaAsH0N1aVoK5bDiNjJVaMrsemzi4b0G0KPHZ3SvYfoRbIt5POJYZzCyAWwy7PDleSGIC2KuO6iEcWdF/kSxrBVZElw+3M6ueKdxCkMM1dXcEwXR9K67IUpCl8L49iR0mbgAU6K44CXFmuHMKjMmebvDGLhYad1eqoLypkVFACPwpvPEpzsmFXGqzuRFYa7cGIGF3m+WbrOEa1YyGu8+9q2RrQ=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(346002)(366004)(396003)(136003)(39860400002)(451199024)(1800799009)(186009)(31686004)(6666004)(6512007)(6486002)(966005)(36756003)(31696002)(38100700002)(2616005)(83380400001)(2906002)(26005)(478600001)(53546011)(6506007)(41300700001)(66476007)(5660300002)(66946007)(6916009)(4326008)(8936002)(8676002)(7416002)(316002)(54906003)(66556008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aXZIVXVEZkozQXE1NHl6bHRjZEJmSFNoemp4NWxCbk9LYTdxWUNoY1dabHdN?=
 =?utf-8?B?d00wV1RBcldaL3lPYTVJZjJnVEd6dmIrNWRNK0F1T1V3ODA0M3kyT08vYys5?=
 =?utf-8?B?cjNTQ09xaG4wdmJneDQ4V3hFTGxvQWU5TWl4bUdrbGRPYXIvYzVXek81aFNQ?=
 =?utf-8?B?dzBKOVJsbWFJam9VTkh0Qk5QY1pTU3QyNUppQzJad2ZYNWxqNjl1cFIzd1A0?=
 =?utf-8?B?MkZGdGN3b24rbzFKVERZcjVqT3hlMmMvZHlCT1dwYkE3NldUNDYvMVMzUXA4?=
 =?utf-8?B?ekd6T0xXY0pYR1Q5cG5ZV082cjZmZXlMY1QxTmc5dCthd2w4cm1qUG5Ib0Jx?=
 =?utf-8?B?TldLcHRTcy9TZThWa3RyVXRVaHhWTjk2OXkxZ05LUEEzMTlzOThSQmsvc0I2?=
 =?utf-8?B?UENPckJiazJMMVVzU3dwamxDZEphTGlsNzMzaGVoR1BiZG1kZWllVklVOTI3?=
 =?utf-8?B?d2diL3VUTnQvZ0k3Y2ZIUW8zbFhKMXhsQ0ZBbnRvSmlJZHJHQzc3NkMrSVJr?=
 =?utf-8?B?V0EyNFVibTNxcnI3dUJ0OTBCSU41NTh0ZHhCL3Z4WFZhdnM2elVTSzZqNGw3?=
 =?utf-8?B?ZnNkcXo2ZmdTenhhbGVwRWNBSituSlhjK0FYc1NsRXdQV0JZTisvV2hzYzhX?=
 =?utf-8?B?TWdKVnIvZlhab1VPN3pQMGlUNEk0ZkU4Z2JUd1RyOVFzWjI3UHFITGdhZlEz?=
 =?utf-8?B?Q2lydFF2WVEzcmcxVVdhVFhIRHA1MFhaM1ZaZHZOdVNvTDBaMTdxSEhCWWN3?=
 =?utf-8?B?WFh5U2ZWdmlJck8vS29BTm9qamtFQUFnTEE3cmlPdDhPUHk4YlhmU003Q2dO?=
 =?utf-8?B?WVp5eTgxWVAzUFIyTTRRNU51VkhCU2Q0WEY2SWNxYmJDZnhycGJDdzljeWZn?=
 =?utf-8?B?SmRMUkErdm1XbVZKZy83Ym56d2wzOTZpMm5BaVkrdVAxRUg2R1JsWWpPc0FI?=
 =?utf-8?B?Zm5ENlAwQWN2Sll0TWxLaEZJdWJlVk84Vjh4aVhqbXF2RXhKbWx6TmFLUmpR?=
 =?utf-8?B?allCclYzelUzSWRvbWZJc21tUE90S0V2YXFjZVJSRStid0IyTTZLRnoxeW8r?=
 =?utf-8?B?bHFSQXlPc1lFb25kaTJ6YXA5YlE1L2NoaU1YRVJ4QXdobFN1Nm92c3ZGS2ho?=
 =?utf-8?B?MTRSU1h1VVFsVEpoV2xPbnBxV2lzc0hEazNmQWZPcXVqTFZIUFJkcnVKWnlr?=
 =?utf-8?B?NWk5bSs0MXc4aWRvYXZ5TFd5bjFFby94SXF6NGhGaktkNEdQYWRTdFd3WDYw?=
 =?utf-8?B?YWlFZHNJL21USGpzbzJoaGMyMmRLSUlHVW5jQUcxMm50aEJSOUQ1UFM3SFcy?=
 =?utf-8?B?RUZwYzY0allSc2l3bGwvdjJTOTl5R0k2MjBTdzhDa1lHakd5bzlGRzVjeC9w?=
 =?utf-8?B?bENpVGxZRFhWcEpCLzRLM2F6cnQ2MURWMXdaV2xIdC8zblRCQW51OXhFNmdC?=
 =?utf-8?B?UW9scDZsWDFhM3JaVEx5N3FoZWlSODZneXBQU0JNNXVzdDVMR1NTSGlkUEJK?=
 =?utf-8?B?a3VYdXFCdU5XbTJmU2UyeUFiU2hSYW0zZVJEdXRzTFhTWWQvOHYxTUdKZW0w?=
 =?utf-8?B?MUwwbStUZ3RRQUF2eDBoUElNMWFFOG9pc1NFUWMzQVJRR2tLVG45YkN6NWtB?=
 =?utf-8?B?RFFvcS94d013a0ViNEF3MFZFMHIrbjlVQlhqS3VTQ1JESGkvOHBZMXFCcXdz?=
 =?utf-8?B?NE9VNjE1SkRSZVk4T2VhWWpBMDN0OXd0d3ZubHJtdENKSHJBenBmendQR2I4?=
 =?utf-8?B?cDU2MDlkRWh6eURpMjVQZmRpcjg3akZHZnJuaVZiK1JESElJU3VXS0xmbzJt?=
 =?utf-8?B?ME1HZXBUcWtRbG9yMGlybG1oR1JZTVlhQWt3M0pHTGJyeGhCK1k0aUx5Nm1D?=
 =?utf-8?B?Z1JGb1h4WmM1M0RpZ1F0b0JDdG5hSHhYamkvenVGcEhVYmpEbWo0a0pRNzlm?=
 =?utf-8?B?MVJqNjVZelFvTzJMdC9EL1luLy96K1Y5NHJnd1dSZmlOSU00YjV2eGswQlRQ?=
 =?utf-8?B?N2xUTVc2R0FIcUZBbWpQeklFa2NoZGpZSmhPNlljOXgzaTRmSEtvcEZFcFFE?=
 =?utf-8?B?ek9Hdys0Y1RBMENCVklWckZ1dy9GS2twYkFpaUxTQkRMRmhSemxNOUx2a3JS?=
 =?utf-8?Q?013Z/ym5rcFtDnovpvS/Gq5O9?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7a450984-4df1-44f6-df10-08dbb2a05b74
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 08:23:20.3798
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0z65qxpMs/iaiZcmDNIGgsqGYR5XlNkvmaZn9muZ+yo1g6ZyuUxVNC0Mp/NyaE4kOGLbDPpZmGGz9VoYXrVHLw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB8296

Hi Julien,

On 11/09/2023 09:09, Julien Grall wrote:
>
>
> On Mon, 11 Sep 2023 at 09:02, Ayan Kumar Halder <ayankuma@amd.com> wrote:
>
>     Hi Henry,
>
>     On 11/09/2023 02:08, Henry Wang wrote:
>     > CAUTION: This message has originated from an External Source.
>     Please
>     > use proper judgment and caution when opening attachments, clicking
>     > links, or responding to this email.
>     >
>     > Hi everyone,
>     >
>     > This is the reminder that we are currently in the feature freeze. I
>     > apologise
>     >
>     > for the delay.
>     >
>     > I decided to make the code freeze date on Fri Sep 22, 2023, to give
>     > people more
>     >
>     > time to react because of my late reminder about feature freeze. The
>     > hard code
>     >
>     > freeze date will remain unchanged, i.e. Fri Oct 6, 2023. So
>     currently
>     > we have 2
>     >
>     > weeks before code freeze and another 4 weeks before hard code
>     freeze. If
>     >
>     > everything goes well, we can cut 4.18 rc1 at Fri Sep 29, 2023.
>     >
>     > Also, below is the critical items on my list for 4.18 release:
>     >
>     > 1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
>     >
>     > https://gitlab.com/xen-project/xen/-/issues/114
>     >
>     > 2. tools: Switch to non-truncating XENVER_* ops
>     >
>     >
>     https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3@citrix.com/
>     >
>     > 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for
>     > staging | 6a47ba2f
>     >
>     > https://marc.info/?l=xen-devel&m=168312468808977
>     <https://marc.info/?l=xen-devel&m=168312468808977>
>     > <https://marc.info/?l=xen-devel&m=168312468808977
>     <https://marc.info/?l=xen-devel&m=168312468808977>>
>     >
>     > https://marc.info/?l=xen-devel&m=168312687610283
>     <https://marc.info/?l=xen-devel&m=168312687610283>
>     > <https://marc.info/?l=xen-devel&m=168312687610283
>     <https://marc.info/?l=xen-devel&m=168312687610283>>
>     >
>     > 4. The proper eIBRS support for x86
>     >
>     >
>     https://lore.kernel.org/xen-devel/ec8e75da-743b-50dc-4665-854c446c974e@citrix.com/
>     >
>     > 5. [PATCH 1/2] credit: Limit load balancing to once per millisecond
>     >
>     >
>     https://lore.kernel.org/xen-devel/20230630113756.672607-1-george.dunlap@cloud.com/
>     >
>     > 6. [PATCH 0/2]  Revoke IOMEM/IO port/IRQ permissions on PCI
>     detach for
>     > HVM guest
>     >
>     >
>     https://lore.kernel.org/xen-devel/20230809103305.30561-1-julien@xen.org/
>     >
>     > 7. [PATCH v2 0/8] Fixes to debugging facilities
>     >
>     >
>     https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/
>     >
>
>     Did you miss "[PATCH v6 00/13] xen/arm: Split MMU code as the
>     prepration
>     of MPU work" ?
>
>
> AFAIU Henry listed all the critical series for 4.18. Can you explain 
> why do you think this is one?

Sorry, if I misunderstood something.

I assumed we were aiming for R82 MMU rework to be included in 4.18 release.

- Ayan

>
> Cheers,
>
>
>
>     It see that patches from [PATCH v6 06/13] xen/arm: Split page table
>     related code to mmu/pt.c ... are yet to be reviewed and committed.
>
>     - Ayan
>
>     > Kind regards,
>     >
>     > Henry
>     >
>


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 08:23:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 08:23:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599130.934398 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfcCY-0004mD-9g; Mon, 11 Sep 2023 08:23:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599130.934398; Mon, 11 Sep 2023 08:23:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfcCY-0004m6-5o; Mon, 11 Sep 2023 08:23:22 +0000
Received: by outflank-mailman (input) for mailman id 599130;
 Mon, 11 Sep 2023 08:23:21 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uN2d=E3=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qfcCW-0004lv-SN
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 08:23:21 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20619.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::619])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 76461c37-507c-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 10:23:18 +0200 (CEST)
Received: from AS9P194CA0006.EURP194.PROD.OUTLOOK.COM (2603:10a6:20b:46d::6)
 by DU0PR08MB7485.eurprd08.prod.outlook.com (2603:10a6:10:355::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Mon, 11 Sep
 2023 08:23:15 +0000
Received: from AM7EUR03FT011.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:46d:cafe::7e) by AS9P194CA0006.outlook.office365.com
 (2603:10a6:20b:46d::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31 via Frontend
 Transport; Mon, 11 Sep 2023 08:23:15 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT011.mail.protection.outlook.com (100.127.140.81) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.14 via Frontend Transport; Mon, 11 Sep 2023 08:23:14 +0000
Received: ("Tessian outbound d084e965c4eb:v175");
 Mon, 11 Sep 2023 08:23:14 +0000
Received: from c8cc6428193f.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 DF2A81DB-2802-449F-9E06-228C356ED7B7.1; 
 Mon, 11 Sep 2023 08:22:35 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c8cc6428193f.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 11 Sep 2023 08:22:35 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS2PR08MB8975.eurprd08.prod.outlook.com (2603:10a6:20b:5fb::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Mon, 11 Sep
 2023 08:22:33 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 08:22:33 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 76461c37-507c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DPKr6nNJUDDP/HAmZuVsptS9b2sNJEyG/3qCj7/fGTc=;
 b=ubyJ10to57UH8Gyqt/RCAWZ4kI8VRcge8W+nxz57Zdbx4hRHvhaTC8/uAmPInTh0vLODHIoJ5E5g+j2ADFV7v3YEFQDyI22Z041Ym5UXPEa2tKFrl6pjx/ZGzb3e045VKohZ6JPJoLsRlrqUZDn/5dDWMeU5uVwmfXaC2gAQ1Tc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 4f48857b73cc9d04
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aCfeahVeaaVYfSHenoTMz2fo/uvV6GVseD0CPks1aEnIdeXSZIpnaleEWE+75rRgg43l5D+N+8ZN0wmtIaZZkZ6q2mrfTr46suwUhNTDsuO051PMGSHekJaIL2BilJYKVLp+81N/4tWzEl4SrYl5vjvgkcM4uKhdDeOAPb5IwcaBkTFcxZXcZDLRiaFssUpdoAdXv5nwMtLWLjI/OVNrn+iqMr85ljyd6b0pEi39pM26MZTaEvAepcSrvhgekPP950ntfORyIH2PZHryGvu1l8cXI4JPbRMkg6Ik0JIqVEDxsqG3XoyomHQ02JMVAg27Y1h8aewaM4SIC2H3IttWjA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DPKr6nNJUDDP/HAmZuVsptS9b2sNJEyG/3qCj7/fGTc=;
 b=NsBFxmvhjbeVWt3nJsVboxANe4PWb+bmBIhv+Dn5yiOzL/LZJ9LHAKjYqhOcGvr7sSAZpXcpjsPTjXVlPMqcvzwWfbTp296RzSpe4RbDZTOfvEO67R1Ulqm/HYBcRg9zGtox/mP+F/51K7Wa9oqEzYI5HIWnqjeCvqQaQA7Sst2JrwPCVxYYMFrlDNJ6HKVORc6GKP6vpcR3ngcVAGjxJ6RVbC2DTAnDP9F8QntZzEcDFyhELcwNEPgiHJeHsJLUq3CzMSIsZbH7xPgaug6lMX5WG1+mVZtOcEx0RvfLIdYjVO/pdkhyupytpR5xJDR21v5aDhm4iBFip/1A10aGvw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DPKr6nNJUDDP/HAmZuVsptS9b2sNJEyG/3qCj7/fGTc=;
 b=ubyJ10to57UH8Gyqt/RCAWZ4kI8VRcge8W+nxz57Zdbx4hRHvhaTC8/uAmPInTh0vLODHIoJ5E5g+j2ADFV7v3YEFQDyI22Z041Ym5UXPEa2tKFrl6pjx/ZGzb3e045VKohZ6JPJoLsRlrqUZDn/5dDWMeU5uVwmfXaC2gAQ1Tc=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien.grall.oss@gmail.com>, Ayan Kumar Halder
	<ayankuma@amd.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Anthony PERARD
	<anthony.perard@citrix.com>, Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan
 Beulich <jbeulich@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, "community.manager@xenproject.org"
	<community.manager@xenproject.org>, "jgross@suse.com" <jgross@suse.com>,
	"sstabellini@kernel.org" <sstabellini@kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about feature/code freeze
Thread-Topic: Xen 4.18 release: Reminder about feature/code freeze
Thread-Index: AQHZ5EwwAcMhmoMxmE+/YPpcDc9wALAVQ9+AgAAB/ICAAAO2AA==
Date: Mon, 11 Sep 2023 08:22:33 +0000
Message-ID: <5CAF2167-1EFA-4CB8-88E6-62F54B701125@arm.com>
References:
 <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <3dc0a9b2-d690-b9c7-321f-008ba1fbf084@amd.com>
 <CAJ=z9a2LpUe_9160PEChMG=pSLYcwLwETdrTN2zDrk21QP2qpw@mail.gmail.com>
In-Reply-To:
 <CAJ=z9a2LpUe_9160PEChMG=pSLYcwLwETdrTN2zDrk21QP2qpw@mail.gmail.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS2PR08MB8975:EE_|AM7EUR03FT011:EE_|DU0PR08MB7485:EE_
X-MS-Office365-Filtering-Correlation-Id: 54ed363f-dc4c-46f3-f3e5-08dbb2a05856
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 DNGQV+LMCwGtp8aHhuRWP8rT2jNPOKKDzhO4+V2E4Sv40aML+U6EFF1yJZ8+Zbfv/EzdEXCj41Oj92ZhW+z3y2xHiMHfJnFa3XJX4NgVUp9W4RBx361ObpWybyIwU0beHTVCMNNbESvZzQnn7OxXAXTDCKjKbAFduBDjDlRWkk9mmiX3KS/WfKYWDZU95+ag/ObqXi9LyOiWCTsuYusyKUNnq6frtTPzv/0gn85rjDmh98Widn779wjTBYYSklQdFIBEjB9LUHyVUaXbHgyn9Y9gu7iqVJ6HK+HtuzWX8O1FTxYiWVBxPuqzvuWySu3ykqePFZmAuvenYxFG9X+/Dohh1qyfFe3vQL8uZkjLv0JRE+bXbaYOGvOyvGEZzEmk1motaqzU3kGljhak7tkjjQeOOgn0bkXc/ZbCijWe+zD2+d9uP4ItGf2DshJQiOzxn8i6zGf4y917DfBq4Ry5BqC9IbOo68J6SjXbzAC1G2TD/jmhYLB5p72eXSy8MBiBZdTYM3xEVTb6hAEIvOcL+yk/kPiSKqaIlEdUPfzvN7AbCiUkGY468wrE9xNxHbpwXYuivhrb/rxlD4X3hC4s8W1BfW+bC9p0C31RmQLJdwEbCIHgpMFhSOSr3HHUdwA1JNTvfaEcHEeXFg4/N8LXzg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(366004)(136003)(396003)(346002)(451199024)(186009)(1800799009)(76116006)(122000001)(53546011)(6506007)(6486002)(71200400001)(38070700005)(33656002)(36756003)(86362001)(38100700002)(6512007)(91956017)(26005)(2906002)(83380400001)(478600001)(66476007)(110136005)(4326008)(41300700001)(5660300002)(8936002)(8676002)(2616005)(66946007)(66446008)(7416002)(64756008)(316002)(54906003)(66556008)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <3BDE395AE94A8C4DB06ACECF957B1D57@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8975
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT011.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	8ec711ac-4b69-4943-bf7d-08dbb2a03f74
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Wm7/E6smlxAtO1LlW/4oA/LEBdGn4EiACqFe7ovv5K5pLzSkd2Eae5RQHChZUlmvJQjaJmqsUvbQqgyXjoyBQIym7RfxLM25gNHkFwPjxvjP/H8ZF2AgHD1vfivRZTpSOwbAYy3fM17MTiWIlFlkWm0cQZnaKgsUR1oX40Cr7bOyp5JnIFdy64lBHy2bOFdSf9iDoTzUSm5gHxJSkwJCGPS/hkwz1TAcvMnGsxFXzb3vX8b9fHOwlPvRAaALHlXAN5FGU6kZdyFmBrLvpSS2TTL4aZQlI7wfjzExBQe7kLXnhxKLM5T5nJEhi1nHl1FxPFxtFkkv1p0wokFoAssshECwIoZ5d0Ta+b6+ZMODckcComzsnPsZTDGuMi9qkLdElv+ADhbF15L+JYuhlw22nOZUh9GVXcmRDVrddRB7bg1+PbOWGuKD+8uePteT+G51L4AqZ0Li5NLNoJj7FqHoIIMxJw8QQcYYfdD+QkJB2MG739wlqQJ/LQFunLI2CazujEhpaILpaTZa+mA5BFgPWUNgMhUGDDfxRNLzItAATUbK9QfpZ9z/vWB333MP7QkFWsLBrc563NWK8CrYVWd9RVVmhRUSgxC5ULjxte3W47qMFYuzWCM+irehAjmmftBhcOJ83gpcysY0f9TrFOYI6UjpbRUswmON92VS131hlqmuz6eBR5X6RbCpOmYizkQSFv07YpuOgx67MiBFlwTsQ6mYrcVyvn0LN1FnaAoXg1jHYvqLODJqs8rCmwvgmjlm
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(136003)(396003)(376002)(39860400002)(1800799009)(186009)(82310400011)(451199024)(36840700001)(46966006)(40470700004)(53546011)(40480700001)(6512007)(6486002)(6506007)(40460700003)(2616005)(26005)(86362001)(33656002)(4326008)(5660300002)(8676002)(8936002)(2906002)(41300700001)(110136005)(70586007)(36756003)(70206006)(81166007)(54906003)(316002)(356005)(82740400003)(478600001)(83380400001)(36860700001)(47076005)(336012);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 08:23:14.9037
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 54ed363f-dc4c-46f3-f3e5-08dbb2a05856
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT011.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7485

SGkgSnVsaWVuIGFuZCBBeWFuLA0KDQpSZXBseWluZyB0byBib3RoIGluIHRoZSBzYW1lIGVtYWls
Lg0KDQo+IE9uIFNlcCAxMSwgMjAyMywgYXQgMTY6MDksIEp1bGllbiBHcmFsbCA8anVsaWVuLmdy
YWxsLm9zc0BnbWFpbC5jb20+IHdyb3RlOg0KPiANCj4gT24gTW9uLCAxMSBTZXAgMjAyMyBhdCAw
OTowMiwgQXlhbiBLdW1hciBIYWxkZXIgPGF5YW5rdW1hQGFtZC5jb20+IHdyb3RlOg0KPiBIaSBI
ZW5yeSwNCj4gDQo+IE9uIDExLzA5LzIwMjMgMDI6MDgsIEhlbnJ5IFdhbmcgd3JvdGU6DQo+IA0K
PiBEaWQgeW91IG1pc3MgIltQQVRDSCB2NiAwMC8xM10geGVuL2FybTogU3BsaXQgTU1VIGNvZGUg
YXMgdGhlIHByZXByYXRpb24gDQo+IG9mIE1QVSB3b3JrIiA/DQo+IA0KPiBBRkFJVSBIZW5yeSBs
aXN0ZWQgYWxsIHRoZSBjcml0aWNhbCBzZXJpZXMgZm9yIDQuMTguDQoNClllcyBKdWxpZW7igJlz
IHVuZGVyc3RhbmRpbmcgaXMgY29ycmVjdC4gSSBvbmx5IGxpc3RlZCBjcml0aWNhbC9ibG9ja2Vy
IGl0ZW1zLg0KDQo+IENhbiB5b3UgZXhwbGFpbiB3aHkgZG8geW91IHRoaW5rIHRoaXMgaXMgb25l
Pw0KPiANCj4gQ2hlZXJzLA0KPiANCj4gSXQgc2VlIHRoYXQgcGF0Y2hlcyBmcm9tIFtQQVRDSCB2
NiAwNi8xM10geGVuL2FybTogU3BsaXQgcGFnZSB0YWJsZSANCj4gcmVsYXRlZCBjb2RlIHRvIG1t
dS9wdC5jIC4uLiBhcmUgeWV0IHRvIGJlIHJldmlld2VkIGFuZCBjb21taXR0ZWQuDQoNCkFsdGhv
dWdoIEkgd291bGQgc2F5IHRoaXMgc2VyaWVzIGlzIGVsaWdpYmxlIHRvIGJlIGluY2x1ZGVkIGlu
IHRoZSA0LjE4IHJlbGVhc2UNCnNpbmNlIGl0IGlzIGp1c3QgZG9pbmcgc29tZSByZWZhY3Rvcmlu
ZyBpbnN0ZWFkIG9mIGludHJvZHVjaW5nIGEgbmV3IGZlYXR1cmUsIEkNCnRoaW5rIHRoZSBwcm9n
cmVzcyBvZiB0aGUgc2VyaWVzIHNob3VsZCBiZSBjb25zaWRlcmVkIGJhc2VkIG9uIHRoZSBiZXN0
IGVmZm9ydA0KYmFzaXMgb2YgdGhlIHJldmlld2Vycy9tYWludGFpbmVycy4gSSB3aWxsIHRyeSBt
eSBiZXN0IHRvIHJlc3BpbiB0aGUgc2VyaWVzDQp3aGVuZXZlciBwb3NzaWJsZSwgaG9wZWZ1bGx5
IHdlIGNhbiBjYXRjaCB0aGUgcmVsZWFzZS4NCg0KS2luZCByZWdhcmRzLA0KSGVucnkNCg0KPiAN
Cj4gLSBBeWFuDQo+IA0KPiA+IEtpbmQgcmVnYXJkcywNCj4gPg0KPiA+IEhlbnJ5DQo+ID4NCg0K
DQo=


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 08:31:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 08:31:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599143.934418 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfcJs-0007jN-Aa; Mon, 11 Sep 2023 08:30:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599143.934418; Mon, 11 Sep 2023 08:30:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfcJs-0007jG-7a; Mon, 11 Sep 2023 08:30:56 +0000
Received: by outflank-mailman (input) for mailman id 599143;
 Mon, 11 Sep 2023 08:30:54 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Gp74=E3=gmail.com=julien.grall.oss@srs-se1.protection.inumbo.net>)
 id 1qfcJq-0007iu-FY
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 08:30:54 +0000
Received: from mail-lf1-x129.google.com (mail-lf1-x129.google.com
 [2a00:1450:4864:20::129])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8487be80-507d-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 10:30:52 +0200 (CEST)
Received: by mail-lf1-x129.google.com with SMTP id
 2adb3069b0e04-502b0d23f28so2044863e87.2
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 01:30:52 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8487be80-507d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694421051; x=1695025851; darn=lists.xenproject.org;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:from:to:cc:subject:date:message-id:reply-to;
        bh=+pzeKfJgALmefiRyVtW2rISspxsjUq606l16rY5xsXY=;
        b=beyijVmsu/uVr88uFY9jNYuWc5lK/s32YrZ3ioMHwkRP/57UPt50Hi5Z6ZPXCsf2yQ
         oeGOwL2Fmd8Nki+Je4R6tMI1eTn9f1E6q9TteL5cPDTnDovkjQ8C38b3WFzoaGCgZv+5
         7GvfEu1ghtZSaamcJJu6ZIIOSCz31BgfZQ38xIKloOSL3zSZ9J4DBWEyvELMKpPFaCbl
         Re7U2VXuxQfPxYQOoN3aCsTtr3hv4QAhCcMex2rbiLntq6I8tzcYnGDqT7OQNTgSAARm
         52g6vYcNzLoPiSpQ6Y43hnNvYta0EooBoUN9D+SBSi90NVEV/aG69nsrQ8C8HVL/+tyW
         B9qw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694421051; x=1695025851;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=+pzeKfJgALmefiRyVtW2rISspxsjUq606l16rY5xsXY=;
        b=XjnL9k2I1vtolSRu888InkZJ4v26VyTPcAJPq2T7x2MzybVpAKB6JKvq0h08MHGYJz
         XrajbygEFkpb2hy0TPu+/187g83m5wMDDm939ZXk5/rRQwuQoC8h9H2JFNIDZSaYwGfJ
         Dseigia0JxkmbLyQSXWiifUynBQWbl/udLBvHvG7jm+J4zjMxL7MlxvMSUYswSY3LQvC
         kbE1+RroqVSuEv7knSk0aOhZrVphhtOCU0cPL/0fWbcx3raiRRE0idL27//urUCET5OX
         TPeosJmciItAkn4/WCXcGhSVnWGhqKDuJhDhfi3TQIcItC1JCuzS05efc3GT85ef0xrd
         IZ9g==
X-Gm-Message-State: AOJu0Yzipdfe5OImLs9HCL8vwOpkEuyKHd3MXuXhaUKKblnya2nHldUn
	veRLHD29M95aVde2Y9BkcCT0Iq2StNCZlsJJu10=
X-Google-Smtp-Source: AGHT+IEIssaOTYvPuRIjEZpvzDOC5NGkYC1dyTF4Xs4yJw546FJ2U6zYbu8qeJvSq6vPkzmyV/z37Jz8RbwPvl8Ku9I=
X-Received: by 2002:a05:6512:340d:b0:4fb:89e2:fc27 with SMTP id
 i13-20020a056512340d00b004fb89e2fc27mr7543308lfr.54.1694421051021; Mon, 11
 Sep 2023 01:30:51 -0700 (PDT)
MIME-Version: 1.0
References: <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <3dc0a9b2-d690-b9c7-321f-008ba1fbf084@amd.com> <CAJ=z9a2LpUe_9160PEChMG=pSLYcwLwETdrTN2zDrk21QP2qpw@mail.gmail.com>
 <23604843-555f-4e34-fd6a-53bbe7f94d68@amd.com>
In-Reply-To: <23604843-555f-4e34-fd6a-53bbe7f94d68@amd.com>
From: Julien Grall <julien.grall.oss@gmail.com>
Date: Mon, 11 Sep 2023 04:30:37 -0400
Message-ID: <CAJ=z9a0Z3RsEE+-xoKtMfveKCCk98OWmzgvXJMFo=QOaeO8OPQ@mail.gmail.com>
Subject: Re: Xen 4.18 release: Reminder about feature/code freeze
To: Ayan Kumar Halder <ayankuma@amd.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>, 
	Bertrand Marquis <Bertrand.Marquis@arm.com>, Henry Wang <Henry.Wang@arm.com>, 
	Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	"community.manager@xenproject.org" <community.manager@xenproject.org>, "jgross@suse.com" <jgross@suse.com>, 
	"sstabellini@kernel.org" <sstabellini@kernel.org>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Content-Type: multipart/alternative; boundary="000000000000d89f94060511246e"

--000000000000d89f94060511246e
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, 11 Sep 2023 at 09:23, Ayan Kumar Halder <ayankuma@amd.com> wrote:

> Hi Julien,
>
> On 11/09/2023 09:09, Julien Grall wrote:
> >
> >
> > On Mon, 11 Sep 2023 at 09:02, Ayan Kumar Halder <ayankuma@amd.com>
> wrote:
> >
> >     Hi Henry,
> >
> >     On 11/09/2023 02:08, Henry Wang wrote:
> >     > CAUTION: This message has originated from an External Source.
> >     Please
> >     > use proper judgment and caution when opening attachments, clickin=
g
> >     > links, or responding to this email.
> >     >
> >     > Hi everyone,
> >     >
> >     > This is the reminder that we are currently in the feature freeze.=
 I
> >     > apologise
> >     >
> >     > for the delay.
> >     >
> >     > I decided to make the code freeze date on Fri Sep 22, 2023, to gi=
ve
> >     > people more
> >     >
> >     > time to react because of my late reminder about feature freeze. T=
he
> >     > hard code
> >     >
> >     > freeze date will remain unchanged, i.e. Fri Oct 6, 2023. So
> >     currently
> >     > we have 2
> >     >
> >     > weeks before code freeze and another 4 weeks before hard code
> >     freeze. If
> >     >
> >     > everything goes well, we can cut 4.18 rc1 at Fri Sep 29, 2023.
> >     >
> >     > Also, below is the critical items on my list for 4.18 release:
> >     >
> >     > 1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
> >     >
> >     > https://gitlab.com/xen-project/xen/-/issues/114
> >     >
> >     > 2. tools: Switch to non-truncating XENVER_* ops
> >     >
> >     >
> >
> https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3@c=
itrix.com/
> >     >
> >     > 3. dom0less vs xenstored setup race Was: xen | Failed pipeline fo=
r
> >     > staging | 6a47ba2f
> >     >
> >     > https://marc.info/?l=3Dxen-devel&m=3D168312468808977
> >     <https://marc.info/?l=3Dxen-devel&m=3D168312468808977>
> >     > <https://marc.info/?l=3Dxen-devel&m=3D168312468808977
> >     <https://marc.info/?l=3Dxen-devel&m=3D168312468808977>>
> >     >
> >     > https://marc.info/?l=3Dxen-devel&m=3D168312687610283
> >     <https://marc.info/?l=3Dxen-devel&m=3D168312687610283>
> >     > <https://marc.info/?l=3Dxen-devel&m=3D168312687610283
> >     <https://marc.info/?l=3Dxen-devel&m=3D168312687610283>>
> >     >
> >     > 4. The proper eIBRS support for x86
> >     >
> >     >
> >
> https://lore.kernel.org/xen-devel/ec8e75da-743b-50dc-4665-854c446c974e@ci=
trix.com/
> >     >
> >     > 5. [PATCH 1/2] credit: Limit load balancing to once per milliseco=
nd
> >     >
> >     >
> >
> https://lore.kernel.org/xen-devel/20230630113756.672607-1-george.dunlap@c=
loud.com/
> >     >
> >     > 6. [PATCH 0/2]  Revoke IOMEM/IO port/IRQ permissions on PCI
> >     detach for
> >     > HVM guest
> >     >
> >     >
> >
> https://lore.kernel.org/xen-devel/20230809103305.30561-1-julien@xen.org/
> >     >
> >     > 7. [PATCH v2 0/8] Fixes to debugging facilities
> >     >
> >     >
> >
> https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gm=
ail.com/
> >     >
> >
> >     Did you miss "[PATCH v6 00/13] xen/arm: Split MMU code as the
> >     prepration
> >     of MPU work" ?
> >
> >
> > AFAIU Henry listed all the critical series for 4.18. Can you explain
> > why do you think this is one?
>
> Sorry, if I misunderstood something.
>
> I assumed we were aiming for R82 MMU rework to be included in 4.18 releas=
e.


That was the aim. But due to timing, it didn=E2=80=99t get reviewed before =
the
feature freeze.

Even if technically this is not a new feature, I am a bit cautious in
trying to refactor the code too late. They are large patches and therefore
not entirely risk free.

I am happy to continue to review them in order to merge them when the tree
re-open.

Cheers,


>
> - Ayan
>
> >
> > Cheers,
> >
> >
> >
> >     It see that patches from [PATCH v6 06/13] xen/arm: Split page table
> >     related code to mmu/pt.c ... are yet to be reviewed and committed.
> >
> >     - Ayan
> >
> >     > Kind regards,
> >     >
> >     > Henry
> >     >
> >
>

--000000000000d89f94060511246e
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div><br></div><div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=
=3D"gmail_attr">On Mon, 11 Sep 2023 at 09:23, Ayan Kumar Halder &lt;<a href=
=3D"mailto:ayankuma@amd.com">ayankuma@amd.com</a>&gt; wrote:<br></div><bloc=
kquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #cc=
c solid;padding-left:1ex">Hi Julien,<br>
<br>
On 11/09/2023 09:09, Julien Grall wrote:<br>
&gt;<br>
&gt;<br>
&gt; On Mon, 11 Sep 2023 at 09:02, Ayan Kumar Halder &lt;<a href=3D"mailto:=
ayankuma@amd.com" target=3D"_blank">ayankuma@amd.com</a>&gt; wrote:<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0Hi Henry,<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0On 11/09/2023 02:08, Henry Wang wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; CAUTION: This message has originated from an E=
xternal Source.<br>
&gt;=C2=A0 =C2=A0 =C2=A0Please<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; use proper judgment and caution when opening a=
ttachments, clicking<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; links, or responding to this email.<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; Hi everyone,<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; This is the reminder that we are currently in =
the feature freeze. I<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; apologise<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; for the delay.<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; I decided to make the code freeze date on Fri =
Sep 22, 2023, to give<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; people more<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; time to react because of my late reminder abou=
t feature freeze. The<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; hard code<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; freeze date will remain unchanged, i.e. Fri Oc=
t 6, 2023. So<br>
&gt;=C2=A0 =C2=A0 =C2=A0currently<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; we have 2<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; weeks before code freeze and another 4 weeks b=
efore hard code<br>
&gt;=C2=A0 =C2=A0 =C2=A0freeze. If<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; everything goes well, we can cut 4.18 rc1 at F=
ri Sep 29, 2023.<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; Also, below is the critical items on my list f=
or 4.18 release:<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; 1. [PATCH 0/7] tools: More Python 3 fixes (par=
t 1 of N)<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; <a href=3D"https://gitlab.com/xen-project/xen/=
-/issues/114" rel=3D"noreferrer" target=3D"_blank">https://gitlab.com/xen-p=
roject/xen/-/issues/114</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; 2. tools: Switch to non-truncating XENVER_* op=
s<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lore.kernel.org/xen-devel/202301=
17135336.11662-1-andrew.cooper3@citrix.com/" rel=3D"noreferrer" target=3D"_=
blank">https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.coop=
er3@citrix.com/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; 3. dom0less vs xenstored setup race Was: xen |=
 Failed pipeline for<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; staging | 6a47ba2f<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; <a href=3D"https://marc.info/?l=3Dxen-devel&am=
p;m=3D168312468808977" rel=3D"noreferrer" target=3D"_blank">https://marc.in=
fo/?l=3Dxen-devel&amp;m=3D168312468808977</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://marc.info/?l=3Dxen-devel&amp=
;m=3D168312468808977" rel=3D"noreferrer" target=3D"_blank">https://marc.inf=
o/?l=3Dxen-devel&amp;m=3D168312468808977</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; &lt;<a href=3D"https://marc.info/?l=3Dxen-deve=
l&amp;m=3D168312468808977" rel=3D"noreferrer" target=3D"_blank">https://mar=
c.info/?l=3Dxen-devel&amp;m=3D168312468808977</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://marc.info/?l=3Dxen-devel&amp=
;m=3D168312468808977" rel=3D"noreferrer" target=3D"_blank">https://marc.inf=
o/?l=3Dxen-devel&amp;m=3D168312468808977</a>&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; <a href=3D"https://marc.info/?l=3Dxen-devel&am=
p;m=3D168312687610283" rel=3D"noreferrer" target=3D"_blank">https://marc.in=
fo/?l=3Dxen-devel&amp;m=3D168312687610283</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://marc.info/?l=3Dxen-devel&amp=
;m=3D168312687610283" rel=3D"noreferrer" target=3D"_blank">https://marc.inf=
o/?l=3Dxen-devel&amp;m=3D168312687610283</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; &lt;<a href=3D"https://marc.info/?l=3Dxen-deve=
l&amp;m=3D168312687610283" rel=3D"noreferrer" target=3D"_blank">https://mar=
c.info/?l=3Dxen-devel&amp;m=3D168312687610283</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://marc.info/?l=3Dxen-devel&amp=
;m=3D168312687610283" rel=3D"noreferrer" target=3D"_blank">https://marc.inf=
o/?l=3Dxen-devel&amp;m=3D168312687610283</a>&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; 4. The proper eIBRS support for x86<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lore.kernel.org/xen-devel/ec8e75=
da-743b-50dc-4665-854c446c974e@citrix.com/" rel=3D"noreferrer" target=3D"_b=
lank">https://lore.kernel.org/xen-devel/ec8e75da-743b-50dc-4665-854c446c974=
e@citrix.com/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; 5. [PATCH 1/2] credit: Limit load balancing to=
 once per millisecond<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lore.kernel.org/xen-devel/202306=
30113756.672607-1-george.dunlap@cloud.com/" rel=3D"noreferrer" target=3D"_b=
lank">https://lore.kernel.org/xen-devel/20230630113756.672607-1-george.dunl=
ap@cloud.com/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; 6. [PATCH 0/2]=C2=A0 Revoke IOMEM/IO port/IRQ =
permissions on PCI<br>
&gt;=C2=A0 =C2=A0 =C2=A0detach for<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; HVM guest<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lore.kernel.org/xen-devel/202308=
09103305.30561-1-julien@xen.org/" rel=3D"noreferrer" target=3D"_blank">http=
s://lore.kernel.org/xen-devel/20230809103305.30561-1-julien@xen.org/</a><br=
>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; 7. [PATCH v2 0/8] Fixes to debugging facilitie=
s<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lore.kernel.org/xen-devel/21cc28=
b9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/" rel=3D"noreferrer" target=3D"_bl=
ank">https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e=
@gmail.com/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0Did you miss &quot;[PATCH v6 00/13] xen/arm: Split =
MMU code as the<br>
&gt;=C2=A0 =C2=A0 =C2=A0prepration<br>
&gt;=C2=A0 =C2=A0 =C2=A0of MPU work&quot; ?<br>
&gt;<br>
&gt;<br>
&gt; AFAIU Henry listed all the critical series for 4.18. Can you explain <=
br>
&gt; why do you think this is one?<br>
<br>
Sorry, if I misunderstood something.<br>
<br>
I assumed we were aiming for R82 MMU rework to be included in 4.18 release.=
</blockquote><div dir=3D"auto"><br></div><div dir=3D"auto">That was the aim=
. But due to timing, it didn=E2=80=99t get reviewed before the feature free=
ze.</div><div dir=3D"auto"><br></div><div dir=3D"auto">Even if technically =
this is not a new feature, I am a bit cautious in trying to refactor the co=
de too late. They are large patches and therefore not entirely risk free.</=
div><div dir=3D"auto"><br></div><div dir=3D"auto">I am happy to continue to=
 review them in order to merge them when the tree re-open.</div><div dir=3D=
"auto"><br></div><div dir=3D"auto">Cheers,</div><div dir=3D"auto"><br></div=
><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1=
px #ccc solid;padding-left:1ex" dir=3D"auto"><br>
<br>
- Ayan<br>
<br>
&gt;<br>
&gt; Cheers,<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0It see that patches from [PATCH v6 06/13] xen/arm: =
Split page table<br>
&gt;=C2=A0 =C2=A0 =C2=A0related code to mmu/pt.c ... are yet to be reviewed=
 and committed.<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0- Ayan<br>
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; Kind regards,<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt; Henry<br>
&gt;=C2=A0 =C2=A0 =C2=A0&gt;<br>
&gt;<br>
</blockquote></div></div>

--000000000000d89f94060511246e--


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 08:35:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 08:35:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599150.934428 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfcNt-0008OT-Tw; Mon, 11 Sep 2023 08:35:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599150.934428; Mon, 11 Sep 2023 08:35:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfcNt-0008OM-R6; Mon, 11 Sep 2023 08:35:05 +0000
Received: by outflank-mailman (input) for mailman id 599150;
 Mon, 11 Sep 2023 08:35:05 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfcNt-0008OG-7W
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 08:35:05 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1a1ee3a1-507e-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 10:35:03 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by PA4PR04MB9392.eurprd04.prod.outlook.com (2603:10a6:102:2ab::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Mon, 11 Sep
 2023 08:34:59 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 08:34:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1a1ee3a1-507e-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UazsRBfqTx8cr1eK99X+pTCIyoxEaU4IujXvPNtgUocieQNouixEUWboFoFmMK7xR44LNSyfx40xI6spYpSJB3360ctN4c0iJB85tLG2Px+xUeftvKUzCgssb7e0uI+wxN6IqD2PL4Zbo4q0odTJqAgQrfME+4CCnxHr/sfXK8rBaNVmb5dwBw2rkk+H72LbaTBWDZ/9TZi/4dgH9RdT4BQpb/ZumDUJfy6i7EyskJFsnc86QU6gcb3rHjRWwfzw1+MLf6prajdFKHNtWdqyLPaM1kHjiVP7n61pGC7zKCoIreVoORbE2aK0K5sfjJJ3aKO7BpZzMlWas2uRfZ1evw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=USJP1EGdkS7jLRZmFKRSVJ4N5PvGk7QFE6TLLArRbR8=;
 b=cVTemBeoxyPNBdQzvC4PenakFfJS6M2GPzcU2C2/CgLpNQtDt9pIPc7nRZBEPimGJ/chLEQMxlRK2X17IXgoisfZuppeZ93R2I22iimhUkmKQdBBjB5B80qrHE03Qk3AymxNwPzHpOLJzK5pSSOCTuTTUsp4K1ZU4uuE38v3LTmvXb3x9ZjfO+C8mctApEJN6HngtbzAp/fOxSHIFBScN/DfOCd5djJR7orTnVuJmzrMCziduoNXSrypoFybrf6vt1VCaOCiJN2ArIKReuzkTWPe1Ffdn4DrwJiCz8kxmIcRVE5w5FoFII7b0A+HKQP0FzphXjEM4ordwsghxmUWRg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=USJP1EGdkS7jLRZmFKRSVJ4N5PvGk7QFE6TLLArRbR8=;
 b=0V6vrQUm0+3e4xJ0FZqx5UHZNX4kLUF8iLoGgSOwzQ2gjIk/JWYHRlAcJtWDMAzCV8Mdnl/u+n/KjFqDPC6o0PkdRrIVQAhPvEJGvfYk2T4kWKPEQE2abqieiOh4o3cXn0ksLjW5/7HAIDsZPJ9+pQtVCHt1ZC79gn7r4y+nMiaklpBXbtwzBMLgf6LRdmOcMGgDiF0OU9OzER1+K14nASAM80HGw5TIifzsrTT0NSBRvMPntMR9R16+42bH4l7sHHBiSHB21qjCa66YMz8oQ1p1yaKf+AIjcK8SqBqHe511S99YXc3MIv2ByEW+7Xiu96+GzchwLn7dWn7N/Nu37g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ddcdc075-9d03-f510-8548-058afaffa6aa@suse.com>
Date: Mon, 11 Sep 2023 10:34:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: xen | Failed pipeline for staging | 35949b8c
Content-Language: en-US
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <64fed00079054_28a431c94791@gitlab-sidekiq-catchall-v2-85b644cb8c-qlhp6.mail>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <64fed00079054_28a431c94791@gitlab-sidekiq-catchall-v2-85b644cb8c-qlhp6.mail>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0067.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ce::18) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PA4PR04MB9392:EE_
X-MS-Office365-Filtering-Correlation-Id: 875e7b5f-2a2e-4be7-8921-08dbb2a1fc43
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Pdp7znnOaK/K/e7mgP4Y4KqN7JB1NaKEFeNrf+gTi8SS3hs/aUeMxbqxe9okhQtDwQ0pNZ9wEVC3P5U+MiDiIj/3OMjaJwSXMXW/BGBLGK3ezPty+nsCBC4S6kNecJpMxPc4dXGKpmXaIM5EvGQIQpenXZ4KwM8N2zV7zRVSKKVTqPQ9ScNJs582KAURsJkvGGMdyJJjeRxwFeoJmftB9tty2v0bNtfn45Eoo+QIrtPVhohkL6s3e8gSW7NxV4kGdBQ+GEbYKUTkhgaq/QImZG3b+0zp5dy1BQo2GUtlMz3u4f7rws3v535vvpkrZLOuahS802pgaUTJN2Rxt5oeGpkC15hg97kLbFMqN7Rexh1hbJ6noMFE4M84GGcuu/q++tEoioH9uGmfGIl7VorQAyv1cfr0R+2AvnjuCgKdaQqoxfgbDooqipgXFwv4IFEz+1DNBAHt4NcSDlVMb6aDYtghLemdXwXJVkHKziPbmNVXDED3xooZJs7D9rUfLp08i1hFYZYMqrNIpRNWPYEWV9aBsQMv3xoG/z4VPsbrC+ne4vbeqQ3jgvxA+zpmpfJVZm1oTsPUXDThcYWdZNmVu1FfEIDusvV5/hnDGyxAFzisWY2H7wviUdk4uuonfId1odorG57rML8r6Ze1Esk7pQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(376002)(366004)(39860400002)(136003)(451199024)(186009)(1800799009)(2906002)(26005)(6916009)(41300700001)(316002)(66556008)(66476007)(66946007)(478600001)(5660300002)(966005)(8676002)(8936002)(31686004)(53546011)(6486002)(6506007)(6512007)(36756003)(2616005)(83380400001)(38100700002)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M2gxMXBkUEs0UEFsL2hQZkNBNFVjanhEd3FEcXl2QlRadDVrZmV6S3ZoZ2Mx?=
 =?utf-8?B?VGlJOXBENXE0WnF2Vmg3YTRuTklRS1U4aWJoeW02aFBIVGY2YysvQnZPcmc4?=
 =?utf-8?B?azZBZERMNTRDVjZDazhweERpVmp4VmkwWWxUSkJRWVh6U3paM3JJZHF4TFZO?=
 =?utf-8?B?YnhZQlBLeHI5UjlNN0FlSDNXMGtjOGNGWFk2Q1FjTjg4SVhSclFyTTE3Zi9O?=
 =?utf-8?B?YWpMRWsrSDUyaDNTQ3hYU0ZnRnpXSDAxMmI3eUpPTVFnZmM2NytWWXhTdUM5?=
 =?utf-8?B?azlocGQrWURmZ1JKdS9ubEpXenVjVFZkdVRIK1JBbGJyL0MvcGllRllLODd4?=
 =?utf-8?B?STdkRGRrSXFyc1FienBNYUNTaFIxMGc1WTJhL3Z5eFBvVE5VRXkvNGM3UkJL?=
 =?utf-8?B?L3p6dDV0K3BYV1Y2bjlVUjJvVTBMMkdUQ3l5WnprVWgrUnBvV2ZrYStqdU5a?=
 =?utf-8?B?VlBzUGc2QlJBZXNXOEJReHhBcnRKbE04cU40cGU1NU01SHZya3NqUTJtUFM1?=
 =?utf-8?B?bnQ5SSt1WDhZaDZLTm1Qa0VHRi82TkRSNUErZ3RvK3Y1bVVWYjA5RDlQdGF2?=
 =?utf-8?B?ZHBYN2h5ZVQvUXR1NUsvUEtQZ3BvMFlrVUdBOUc1cHV4aUhhZ3ZNZXBBN2kz?=
 =?utf-8?B?YWhVd0pEdldkWExWZmcySlZqUnNQOFNQRWsrRFllME9uc2dzRHA2dGhWV0hz?=
 =?utf-8?B?R1NNc0UwODV1THA4cFpEc3B0ellGbWdYNWpBZG5BR3FsQnQ2TFp6WDN6NEFT?=
 =?utf-8?B?VGVvdno4TllpOHFlMnlGcENscEVLVWhPK1dySlQwMVN0K0JSUUZlSE5qRm1a?=
 =?utf-8?B?b0Z1OGJrMUlrN0E1dGlmNHRWZW1wa2t4aVY3OTk4MkJhcXFtR1R5TFQrUHZ3?=
 =?utf-8?B?cFhFbVB1SGt5R2FLQUZvVDhTdUkvSGxNOXp5aHc0RkljQ0JkMEttWkw5Sm1W?=
 =?utf-8?B?TndIZzRTdmVPUnYrWmVEZHh3ZGFMcm53R29NK1JlVmlrZ1pYVlZRbXhsREQ4?=
 =?utf-8?B?cDgxcW5XOXhrNE5WazQ2N1BkV2hWVEIzQVpwWFJjYkdqSzA1Wll5VUxKbHhN?=
 =?utf-8?B?OUNhMTROM3RlVnpnTmVJbzVDOVg3Qk93b2YvbzFmdzBtT01Ra1hNWGU4djd0?=
 =?utf-8?B?Q2owWFlaaUFrbGJSd2pvQlF5aE83b1kyVVBWMWNUSnZuaVFOTk1vNmFtN1pB?=
 =?utf-8?B?cVY3SlduWXVDU1gycTJxUnhiQVdGNFhzOGhXbEtFamRIZkZaVWFVK2JlOUps?=
 =?utf-8?B?MkczWDhQck96ZXNHVENHVDJBM016aVJiclhkSEhFQnFHdFF1emtKdDhDdEJt?=
 =?utf-8?B?NXE4cHZkd25rSG1yN0FMTGRFMDVQNkNqQktGaE5RazZLQWVqcHZHNGh6YmUr?=
 =?utf-8?B?UTJDUXdiMXNscE5Sc1VYdTFwM21acndDWFdkbHU4U2Rra21jVHpBd1RFREFK?=
 =?utf-8?B?YTlIRDB6YlBqUEIzK1pDRU4wTm9zMzZOd25IRXYyQnNhQlFsdnpjaTlPclc3?=
 =?utf-8?B?bTMvTC9GeEZuMFk5dUNTS1FLekt1cHBWRXZsa3JQaWoyNkI1UUpkVEsrZi9t?=
 =?utf-8?B?VzJ0S3hYQWRScnAwWkVDR0tNTFZvMWI0SDBmZ1RxWkFSY0xkdUtmY1BLdHMy?=
 =?utf-8?B?VmFKQmJFanVMY2RGeFo4MUlIZ01GS3ZOZ1JqOEJ4U0tiNTdhOWJHUStXbVVp?=
 =?utf-8?B?anAvTzBCYnRhdGwwRnpGaWJLUDRmQ0tSVi9TNTIxYUNpajBJZ1ZnaGpRVlpW?=
 =?utf-8?B?YmdieDNPb3dVeEJVVEJ0dHhSVkdiUTVtR0JPbCtETzdKb3F6djZxNE5aK1Zx?=
 =?utf-8?B?ckpCMWtxVkV4V0tmVU5vaVlJdXV5N3liczRxdHgyWW05c3luaWhBYmx5aFBW?=
 =?utf-8?B?S0J0cmVpWnF3aGVya0QxVWxnUlgwZWI4alQ4VjdCaUVDVVREaXFaMGZaSyt1?=
 =?utf-8?B?aEVEUktaSXNIMUR4SkpWSzkyK1k4cWZxQkZjTVFJVVVPcGNySUxscEoxVit2?=
 =?utf-8?B?OU1VbG5EOGxZeFlia29oT0Jyd1RoOEtuUHMxb0xnVzdPWGx0UXV0ZXNzWDBs?=
 =?utf-8?B?YVI2aEkybkIrYWU1dlFnQ285TEdRck5JalJBWU9PK28yS2pMTDNyOVkxSzAy?=
 =?utf-8?Q?NV+XcxNMptT3wU6TcrbkPLOCt?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 875e7b5f-2a2e-4be7-8921-08dbb2a1fc43
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 08:34:59.5995
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: DOsf6AM0z9TFc3a970qjy+pGqagtP8DWvZs2Gt8HB0MNUeZUi/XiJpb9gfZcJizGeuVgw49S9Jr+dxk+s78VUg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9392

On 11.09.2023 10:29, GitLab wrote:
> 
> 
> Pipeline #999254173 has failed!
> 
> Project: xen ( https://gitlab.com/xen-project/xen )
> Branch: staging ( https://gitlab.com/xen-project/xen/-/commits/staging )
> 
> Commit: 35949b8c ( https://gitlab.com/xen-project/xen/-/commit/35949b8c58cb6c835da1fdd8843ed51727e654c0 )
> Commit Message: x86: change parameter name in {hap,shadow}_trac...
> Commit Author: Federico Serafini
> Committed by: Jan Beulich ( https://gitlab.com/jbeulich )
> 
> 
> Pipeline #999254173 ( https://gitlab.com/xen-project/xen/-/pipelines/999254173 ) triggered by Ganis ( https://gitlab.com/ganis )
> had 7 failed jobs.
> 
> Job #5056039848 ( https://gitlab.com/xen-project/xen/-/jobs/5056039848/raw )
> 
> Stage: test
> Name: build-each-commit-gcc
> Job #5056039841 ( https://gitlab.com/xen-project/xen/-/jobs/5056039841/raw )
> 
> Stage: build
> Name: opensuse-tumbleweed-gcc
> Job #5056039844 ( https://gitlab.com/xen-project/xen/-/jobs/5056039844/raw )
> 
> Stage: build
> Name: opensuse-tumbleweed-gcc-debug
> Job #5056039915 ( https://gitlab.com/xen-project/xen/-/jobs/5056039915/raw )
> 
> Stage: test
> Name: qemu-smoke-x86-64-clang-pvh
> Job #5056039910 ( https://gitlab.com/xen-project/xen/-/jobs/5056039910/raw )
> 
> Stage: test
> Name: qemu-smoke-x86-64-gcc
> Job #5056039912 ( https://gitlab.com/xen-project/xen/-/jobs/5056039912/raw )
> 
> Stage: test
> Name: qemu-smoke-x86-64-clang
> Job #5056039913 ( https://gitlab.com/xen-project/xen/-/jobs/5056039913/raw )
> 
> Stage: test
> Name: qemu-smoke-x86-64-gcc-pvh

Network related errors as it seems, from peeking at some of the logs.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 08:43:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 08:43:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599158.934437 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfcVd-0002U7-M6; Mon, 11 Sep 2023 08:43:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599158.934437; Mon, 11 Sep 2023 08:43:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfcVd-0002U0-JX; Mon, 11 Sep 2023 08:43:05 +0000
Received: by outflank-mailman (input) for mailman id 599158;
 Mon, 11 Sep 2023 08:43:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfcVc-0002Tu-AH
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 08:43:04 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20613.outbound.protection.outlook.com
 [2a01:111:f400:7d00::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 379f18df-507f-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 10:43:02 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by DB8PR04MB7065.eurprd04.prod.outlook.com (2603:10a6:10:127::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Mon, 11 Sep
 2023 08:42:58 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 08:42:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 379f18df-507f-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XWFvE7ZFOpvIpSwQLeBbvQ5cnZUcW/RKAjbDf8U2/cXbCUQeF9wmRwmptWzd6XOkBVySVbOcV9+9arcZDb580rEjG65r/cSA1Zdb70EePwsJj8wwf0KqWmADxYsNZ/aCA1jFC78iApxO8DnDhVnn45jWtf2iF19v8CE8roLoQdjw0VcL78eoK+s4+jOq00TWDAQxVpjXStCpOF2XMOpYX2/vmGcvD+12TJcCRBM8UDRCUY6wEbkYVh9gFUiWbdPpSQj/Qrj4YMlKB7FaUv7gheTlJy/CFsFKknd9TuiJi7gjfyeuFWEr2XKUtd/gfXdjKgMhTfJV7Q2lNAy6tYfZlg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KQn4fUH3mAVzi0iGnDX44c+aMziGaB7QTno6XBJ60h0=;
 b=mD404E554wEGEPETXoFssxZrP8Z9mXxVSOkUKGTP1jtT9COPeD5GcSBj1ciypFyIxGF3voT2lm9Zo3JswqHgPm+K+dN0Nu8TWc1WiKPBqxd13Dy5fvlH+9uC8PHhwM4mAT2PhJF8eUVsGdFr1koBgmOZKnDTnN5lx8KVd/bN6OU9S1KCoeDO9cBYj2rNJsG1hGtkne5UJS2FlgEPc0CYgsg2sekZQJQrLSMZfGtCoJr2JZqWc8lAD7XyQUO7BcxRc1n1T5BGSc/BwmlqdQD+V0yjENlFIE55mOj2CcRPFUUsMZAtTQ0IA25xLuo+NKLLVC4BHepXyFyFpv3LK03maQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KQn4fUH3mAVzi0iGnDX44c+aMziGaB7QTno6XBJ60h0=;
 b=LgoWI7bAWb3Qm8r2SL3VQj8ymAjXHnLzgaChLRjXNCSTdmNDuXrd3dmOpENCAClexw7GSWkyXBKHqIqfLNCKRU7oin3sfPTFOW3xOjWodW59d+iPVP5Hn+/uMArZWcQnrAQW8eD4ZjQ2h5ch0f/OiQyQPCyN1L+XqZ9WppwGZW7wGTkPDHRytfyRdehdURsi8DjWm4m4agzJY1b8iCe1MDUFhzvrER5+yfpSta9hZ6aW1Ydcd3Fvo4U8oRoHOQ5nTAEsxc+hSQhz9EtGqBkWo4QwDLFbuUZOgrzV39XsYWjUiYdezxSiJjsDxvoQ1RmK3pqTBaTGucK+brrEmt1yhw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <16edda00-662a-1b37-327e-3ee3ab87fd3a@suse.com>
Date: Mon, 11 Sep 2023 10:42:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/PCI: address violations of MISRA C:2012 Rules 8.2
 and 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <f6884bbff0a4117874618bfbece5066d98131aff.1694419992.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f6884bbff0a4117874618bfbece5066d98131aff.1694419992.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0162.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:99::12) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|DB8PR04MB7065:EE_
X-MS-Office365-Filtering-Correlation-Id: e429fcf3-cc08-40da-97ec-08dbb2a319cf
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PrBt9BEilOMCOSN/htQC5QhCrsybYup+i4/C5O+N2JcIsxWryB/SZDSrUoeHGYHSBk4Le57ZsEsCECKbuGnR9xMi5ymJusMoANZF6pu9hH0IWc2u4kpTQe2zbRRtXaqYyny/Guqj+OZSbQm9F9K/vF+St2JcJMvtVqJagkumPL0lluunk8yvQc/WteVI92fyLLV2uXpOAMCZQ1iGGAZR/li9DDmeuOWy34NuSSt00FpTcYNuS1CuM8uK9tiYC2bZ1m4OIi/pi8RTslTKq06IAErx8oCkQJOoCPXdUNsyqGppIpNtpTW1aYW6D44YqP+c9W6mWBJehruUpFf8Wg7czMGed7EB/14/yDaEk82ngK5b6EZapzIsfvmXiiyc09tZz90sR0CNqR8o1Aj8WlKSlIpQ0q5WL+w5lp4OrPADdSdKtdwHGVnF1wcbiFMLCyJoVSTLiAugBVxQf9v6Xandx6kXt8mHPh402uhlel+mtHGEyfrxRm5Ule14BWl6vO9mX5u0vfn60UgMRd+9X+pLnK8VDY5CiGQSnnpjaBqz9RfNDThc/yBjlOZXRkyZuTpLtoKn8hpV7qMjKvgdfozwuRBibQNmN5krLTDgOJLKxVeUT3L5Jgs5VtGeV8XIsXjAi0zmz+L7NMwMQ1/9z/C7hg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(366004)(396003)(39860400002)(346002)(136003)(451199024)(186009)(1800799009)(41300700001)(31686004)(53546011)(6506007)(6486002)(36756003)(31696002)(86362001)(38100700002)(26005)(2616005)(2906002)(6512007)(478600001)(110136005)(316002)(8936002)(8676002)(4326008)(5660300002)(66946007)(66556008)(66476007)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cVlCOTlNQ2xpcnZIZGVZWTZDS2ZRMlR5YUM2dUt5cUIweUlVb1AwQmtIS2hB?=
 =?utf-8?B?SjJHUE5zNlNQamRVRzJHUjZQTjFoVElzQ1B0NDRwbDRLNFlsaVFvZzZwLzg3?=
 =?utf-8?B?RlprNnAwSnlTMjhHUFZlNnU3YW8yNmIyYkkrTTMzSTFIQ1FuOVQzbEtWY25R?=
 =?utf-8?B?VUh2OG8zcll4cWpyNFNpZ3RMcFo0bVpDbmJkSlFYK2gxcnhiTkZYRWJpWmlr?=
 =?utf-8?B?UGxLNUtobzluQzV5WmwzVEY3TjRaV25mdEM1NndPTyswdjdVZ1dPTjVhdnN6?=
 =?utf-8?B?QUsvY3FzdGlETzgvZ202MGE2SGdIUUtUWlZjT1Q1azB4VEdiUklOWUR0UFd0?=
 =?utf-8?B?czVLaTZUNzgvYXNOQjE4OVVKZ1BpM2ZOaTVHOGZMcnQ1eEhCdnNZZnEwWEdZ?=
 =?utf-8?B?Sm5XaisxR1ZWdHZaTS9DM05Hb3djb3JsZkh0eTlNSklEVDdBVElUWEdIUEdU?=
 =?utf-8?B?MjdBUjRoeFpZcUN6WXpLUVlHTmp1YTNhS1V1d1dBMzh6MWI2bFZNbFkyb2tl?=
 =?utf-8?B?MU1wN1FYYUtJY1l1QWxlbHFnOEZWcGdXWWZmRTN1MWJZejlRdUpYRjc4UEFh?=
 =?utf-8?B?enpYTjBDeXh2NjZoUTR1L3FGOW9WdHN4bG1lWlZqMGRxMnhJVXFockZObml0?=
 =?utf-8?B?M3NvalZTelJESU1MR2hJdVpUdjdXNS9QcVJ5MEhmSkJxZ05ZSHQzeGVSZXYz?=
 =?utf-8?B?TTlzT3ZXZ2hleUdISDFsd2UxekJUaUszNnVuWnFxcEpMaUJEWG55aGZGTDIy?=
 =?utf-8?B?TzFwcElLblhUeFRQRmlvL29td1lhd2VGb0paSGhwSUo3THdnS3ZFaW4xUGdK?=
 =?utf-8?B?K0tXV2MwUSsrN2RnN3A4eVNRZHRuUStVYitDYkFvWmNVRjhDNk1pMTNlSFd5?=
 =?utf-8?B?a3hleXU3UmNTbjlDazZZeWdxRi9wOWY1QjUwS2hpdlRrUkpZWkl6bXh3WDND?=
 =?utf-8?B?cEYzeUtYSk91dWNOUyszL2VTd3BMcnhhekZUSGxCd25kUUNLZGNNTUJRRVlQ?=
 =?utf-8?B?aktZN3NESWdVY3cyU2IvRStFV3AyaUprZVNoSTNCSWo1VlgzdVNEWnZXckw2?=
 =?utf-8?B?dmNXQzFYdlNyd1pQblBsbXpFR3VOQU04eTZKWmtGU3BET1JCUVRqeHFGMkhH?=
 =?utf-8?B?cHBiQ2VMMklwSjJXV1pJSjA3dGs2bTVUWW5pckF5Um4wcGpzRU9oRVppeURE?=
 =?utf-8?B?MHBCZFVtWkVNa2c1TFZBZGREYWN3UmgxSzNLc1d4YmhpTlJ3dEV5enJqZ1ZL?=
 =?utf-8?B?ejR6TmNwVlhrMUx1aStyU0lIckNhZ3VrZFJLY2tPYkw0SG04eGhDc1daejVy?=
 =?utf-8?B?WWdmMXYraW5lZmI3d3V6djE0Mm16OWxPUHJ4NnQrUXFZalJybEV4TUFXQ3dx?=
 =?utf-8?B?UlJzaDE1S1MzRzE1VUducGZYWTVydEdsUjUrd2p4bTF3SlpHenBBZURSaWhY?=
 =?utf-8?B?d2dSOUdQUk0wQzFZSTVlN0tvQzYyeVZ6WjY3TmlsQTZaZFZmR2pMTCtiNm1z?=
 =?utf-8?B?UW85T1d3azQyQSttUXluL296UFMzOW45WE1kcVYzTTlqZVJHVWIzZGg2Qy9C?=
 =?utf-8?B?a3IxUy84ZFo5dVJFUGNyOHJyRlFBMkZFK25BNmJ0TWFHdUNCdHk4dWFoRXZk?=
 =?utf-8?B?Z1V5K0R2cGgxb3Vmd04vTklJZWVFMDNlNnVPdi90ZGROTGp6UXBwcktXT2pG?=
 =?utf-8?B?a3ovbVBKTDM3dEx5TjZ1Wnowb1dOelhkRzVtbU9CVnJ1VFd1MG91MTZKVzBS?=
 =?utf-8?B?Y0R3QkRpZEM3MWNRWGM3L0JlSUZZUmE4K1pRTFMwZEpvaVVRSUN3b2lka29P?=
 =?utf-8?B?bFJjZFl5NCt3dDNNaEVBWUY4dWt5SWRwOUVlZHhsZGN4bmVyTFY1L3FudjJp?=
 =?utf-8?B?V3pUbTJMcVVwaFJ5Zi93WDRocWd6a3JQQUErWXZXNjJJSFpsZUFrZ2ZScXZZ?=
 =?utf-8?B?RUU4aXZ4TkZBOGZBK0FTUXRFZ0thb3NXK0pjNUhxQ2VTZmx3UVAxV3dpN2Rz?=
 =?utf-8?B?bEdRNndqaFFoKzRZeW42TGdhdTR6cFBsbkVSeXVrNXdwNlhVVGg1MG55VEUr?=
 =?utf-8?B?QkJBWVd4Y0loVGtpMitZVlhmV0tLTUQ3TzBpZU9Bd0ZDbENpdDkvWlBSY3Fz?=
 =?utf-8?Q?MKgku0o5N/JuNjD1fCY2tfRhR?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e429fcf3-cc08-40da-97ec-08dbb2a319cf
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 08:42:58.6516
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: oXqnr0azX52llMlc+1FDjuli3iUStGGq5zg3ueeiUvpDUZ5+OgYe5SyrqGE/36NxpYNlh67LlzxE8vVfNGWo9g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7065

On 11.09.2023 10:15, Federico Serafini wrote:
> Add missing parameter names and make function declarations and
> definitions consistent. No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Since formally correct:
Acked-by: Jan Beulich <jbeulich@suse.com>

Nevertheless, it is probably about time to mention that ...

> @@ -198,10 +198,11 @@ int pci_find_next_cap(u16 seg, u8 bus, unsigned int devfn, u8 pos, int cap);
>  int pci_find_ext_capability(int seg, int bus, int devfn, int cap);
>  int pci_find_next_ext_capability(int seg, int bus, int devfn, int start,
>                                   int cap);
> -const char *parse_pci(const char *, unsigned int *seg, unsigned int *bus,
> -                      unsigned int *dev, unsigned int *func);
> -const char *parse_pci_seg(const char *, unsigned int *seg, unsigned int *bus,
> -                          unsigned int *dev, unsigned int *func, bool *def_seg);
> +const char *parse_pci(const char *s, unsigned int *seg_p, unsigned int *bus_p,
> +                      unsigned int *dev_p, unsigned int *func_p);
> +const char *parse_pci_seg(const char *s, unsigned int *seg_p,
> +                          unsigned int *bus_p, unsigned int *dev_p,
> +                          unsigned int *func_p, bool *def_seg);

... parameter renaming like this, while fulfilling the word of Misra, is
actually hampering readability. To someone wanting to use the function
and hence looking at the declaration it is entirely uninteresting
whether the _p suffixes are there; there were similar changes earlier on.
The longer names merely make reading harder and - as is the case here -
also may require a single declaration to wrap across more lines. I view
such as going against the spirit of Misra (aiming to improve code
clarity).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 09:02:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 09:02:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599170.934454 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfco5-00077k-A8; Mon, 11 Sep 2023 09:02:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599170.934454; Mon, 11 Sep 2023 09:02:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfco5-00077d-6y; Mon, 11 Sep 2023 09:02:09 +0000
Received: by outflank-mailman (input) for mailman id 599170;
 Mon, 11 Sep 2023 09:02:08 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yA6l=E3=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qfco4-00077X-1B
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 09:02:08 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20603.outbound.protection.outlook.com
 [2a01:111:f400:7e89::603])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e120b880-5081-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 11:02:06 +0200 (CEST)
Received: from DM6PR06CA0099.namprd06.prod.outlook.com (2603:10b6:5:336::32)
 by DM4PR12MB7574.namprd12.prod.outlook.com (2603:10b6:8:10e::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Mon, 11 Sep
 2023 09:02:00 +0000
Received: from DS3PEPF000099DF.namprd04.prod.outlook.com
 (2603:10b6:5:336:cafe::d2) by DM6PR06CA0099.outlook.office365.com
 (2603:10b6:5:336::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 09:02:00 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 DS3PEPF000099DF.mail.protection.outlook.com (10.167.17.202) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.16 via Frontend Transport; Mon, 11 Sep 2023 09:02:00 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 04:01:58 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 04:01:42 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 11 Sep 2023 04:01:41 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e120b880-5081-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BC1xJDzDSPd7a6o38v0/VcWbdtmBqbgU3aV+wzZgT5+XISmz+vrf3yEgUk8s1cqXeQw6TflXBaRMuuTD0Yk+NuM3acH1EwK26banLiwqEnVP1OqLL5SilqfTPR0xRpc7lRViofw10tBcymArNuEgEOmTwmcBfRexUYrUVAkU0tOKtI0FFLf4OV69eMxEEFFlUsrYoI3AolmMwMt4SXl4ZMSrLuEqiJ90Cg16yAGlJmW+oPAp1OopALMFsWhH1lsNyXIjYXKLDapX4BLmJfXzQN554Z+s3II/BDdmxDdpzLdCDNIgIRKDpYiTGkErozFfLnYRDS8THd9DjF3cr5313g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=daV8A8BOhnpIeES+fYrDVNuxj31UiKKLnvTgEC074hw=;
 b=kLrhhN3GQmGuzShiPiupI0FJ69Efi5nk6ElfomSbRanKdT2H/HRRjCh1726hm7GdoAfQ/PdVPQrifTRVR06xfnHq/sN9IandmaOjciZPW7KPauTnW7e0uqTQoErvH8DUtg/5FmC2UvD9btm0EbcPyy2eJts/FP5NKsAmA5rM4J+HZDOu5FkZky9Co3PX+0omOz8UqG+6kgjI0rlrW86o0Kui2Hk+Ls65WMJe06y25yqkV2K9h1r/n64uscMT7UA3DCbGffGxwtMBp9VN54nathx4Y7ZVD3+CqjYyQNtSZYjkhZccDAmOkZVu4utzc49av4efC7fHWS7RYCf9ICslDg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=arm.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=daV8A8BOhnpIeES+fYrDVNuxj31UiKKLnvTgEC074hw=;
 b=Cfe+Pc36Z6yC8c6gK8R0IuGLK5D15vWyIpKhCF4TdxY9xV15rpFQlaucT3Pu49GIy/NeXUwiDZXVhNCkQG9VCd+FuVqWG9oeY5Hvh1ZATyZs+cSNVYhKHE8CCTwBegySEcxN2w39bJBFmUpNaZgVdVCot8iiFkBZKv1XrX2WYqI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <046aecc4-7270-0041-67dd-51614d2beee6@amd.com>
Date: Mon, 11 Sep 2023 11:01:35 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 00/10] Follow-up static shared memory PART I
To: Penny Zheng <Penny.Zheng@arm.com>, <xen-devel@lists.xenproject.org>
CC: <wei.chen@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, "Julien
 Grall" <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20230911040442.2541398-1-Penny.Zheng@arm.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099DF:EE_|DM4PR12MB7574:EE_
X-MS-Office365-Filtering-Correlation-Id: ef99725e-a790-40fc-4cca-08dbb2a5c2ac
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5RznSYXB0ZCp89o1VgzV61rB+zlEKmJ+VngXf4RpFmmukqINTI7LeSdXmkwZNwYsCqD8FwtmgkapmluHGZEHZbYChcEfBmeqgA4OhX5QlTsLYkNsRqGe+Mi8RLiwxKXcvAsaC+jkkpWKnlr2QYPj+3NGAneiy61Bq0Lcf9qYWUrPYzoHyiYYeO/zbfgImvYGHKYgejC4BRxVeNt68yiQmBmxr6C/dZTyBqoJEIMIJnccTNgTK++1DVK1O0rJvM+CrEiY4dzDh8C+mJIOaU7Um+4UneQnNNPd8bfVKpuhy+U+C2DA+mNEogp6NBHzrFM6g2PYehMGy1lQjm4JV793gXFWz5x/dwDQNlAhqoZtQa06ET7ZMbXuAX6SQBJ2q2e6LUBmbSuwJ5Ikkvvqy4vxjM+v+dDut4q+9J0HSQ/VTvPSxuF7HKlUkomJ8x2J5web6zFEqOZ67RM6nPW/0wIlfr70TXZMr04vEhDAODf30CViIvLTWwrQzjqPAaw7i4U+skRa5T2Ykbp/ZmbWdAjlUQaNqYO0A54Hk1CcoBXmq4qgVC0k+c4EdVl9g141WnUC6OGKKe6yNv+iSPey6dMWqjAOdKQj4BIz0v7ay0q4HEWEC0LceXQTiHWeVZSuHRRtWKKT1s5Pw0YMCj3MH8aWuCszbpnoMXNZGBBYKAdM4KcxOrwTcMV9kKvErqDsZnkr5itRQQx/Lzzgp28eF+mSlc4CJCCx2/ta4Ixm2Sh2awdAWOgXvGluulz1q6KtabWqiafVD5LFjevtGICU8ycXbOu4s0gPvF7WeybebFGl4Xs=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(136003)(376002)(396003)(39860400002)(82310400011)(1800799009)(186009)(451199024)(46966006)(36840700001)(40470700004)(6666004)(53546011)(966005)(478600001)(83380400001)(2616005)(426003)(336012)(2906002)(26005)(44832011)(16576012)(54906003)(70206006)(70586007)(316002)(110136005)(5660300002)(4326008)(8936002)(8676002)(40460700003)(36860700001)(356005)(47076005)(40480700001)(86362001)(31696002)(36756003)(82740400003)(41300700001)(81166007)(31686004)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 09:02:00.7695
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ef99725e-a790-40fc-4cca-08dbb2a5c2ac
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS3PEPF000099DF.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB7574

Hi Penny,

On 11/09/2023 06:04, Penny Zheng wrote:
> 
> 
> There are some unsolving issues on current 4.17 static shared memory
> feature[1], including:
> - In order to avoid keeping growing 'membank', having the shared memory
> info in separate structures is preferred.
> - Missing implementation on having the host address optional in
> "xen,shared-mem" property
> - Removing static shared memory from extended regions
> - Missing reference release on foreign superpage
> - Fix duplicated /reserved-memory node on Dom0
> - Missing static shm node declaration on guest /memory node
> - Missing "xen,offset" feature, which is introduced in Linux DOC[2]
> 
> All above objects have been divided into two parts to complete. And this
> patch serie is PART I.

Just like I pointed out in the previous revision, there is a gitlab CI failure on shared-memory jobs:
https://gitlab.com/xen-project/patchew/xen/-/pipelines/999098293
Did you change the interface that could lead to this (I cannot spot any change in the docs refinment) ?
No Xen logs meaning the early boot failure. Please check.

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 09:04:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 09:04:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599177.934465 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfcqU-0007ju-Qj; Mon, 11 Sep 2023 09:04:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599177.934465; Mon, 11 Sep 2023 09:04:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfcqU-0007jn-Lj; Mon, 11 Sep 2023 09:04:38 +0000
Received: by outflank-mailman (input) for mailman id 599177;
 Mon, 11 Sep 2023 09:04:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yA6l=E3=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qfcqT-0007jh-5D
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 09:04:37 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on2061b.outbound.protection.outlook.com
 [2a01:111:f400:fe59::61b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 39b16437-5082-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 11:04:35 +0200 (CEST)
Received: from DM6PR18CA0026.namprd18.prod.outlook.com (2603:10b6:5:15b::39)
 by CY8PR12MB7730.namprd12.prod.outlook.com (2603:10b6:930:85::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Mon, 11 Sep
 2023 09:04:30 +0000
Received: from DS3PEPF000099DE.namprd04.prod.outlook.com
 (2603:10b6:5:15b:cafe::5e) by DM6PR18CA0026.outlook.office365.com
 (2603:10b6:5:15b::39) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 09:04:30 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 DS3PEPF000099DE.mail.protection.outlook.com (10.167.17.200) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.11 via Frontend Transport; Mon, 11 Sep 2023 09:04:30 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 04:04:30 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 04:04:29 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 11 Sep 2023 04:04:28 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 39b16437-5082-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CtkOrKo/xTyGvBRwey5eIWYYZMmrtH2V3j8S4nkayOOMzOPgAvBOs9dAeJjA8Pe5tdS3xow4GJxCtD6smAQ599sJ2nyzNFrp+lEo7+p/o6VT8M+rbLklAVQUejrycUdwCTp2/kaY3jEMC2C3Fc3cV0zjXwZRBhvagfIP7EIyAM+cx4mDlruEflnd0DxRf0VX37FGcoimeCFexXmg58+u83VxOXIqHUdKcDmJq+TcZgquOhZKpO+zayYBjlnFU1GJYIYt67D+Da+gHJY/LWQF9kByF0CHurPs+omoSE62zFfMRFQ5gWPazb0jq7toAp8O1UnL5y9vvrYgIuZ01VBqgA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=RJgpPLNQEonIYiUt2PIDQYTvJpB+/ucMbEplRud3raE=;
 b=CDBgQ4JIlQs0Qx8TrUT0Pu7o0CweZNt6YiGrnIGvbtrLY62oGtxWGlRu2AZW2xizzBIYmpmQUMab7RrgFCBfYUWg0apiBpQ7xL5/57q+HPQT4oS/AzNB67xC8jLE7Q6XeCcznjktVgVBGkAN6/5iC2QsQVeB/c3Ux5Wu1vfLlStthh5h9kjMlc2iVjWo3DEUy/IQww4T/IjCuH9KYaptVCj/Hk9AJA4u3URMAZiO/1xKENWRBH9fvFJbn+B7LM5xzPdiEzDZqBhjYdkSAn4X218Op5LLSk7yX353ZsqF3/ftYP9s9IBXl6qQghkfrsm+irHKfDnjfohBiwB/EdaNLA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=arm.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RJgpPLNQEonIYiUt2PIDQYTvJpB+/ucMbEplRud3raE=;
 b=YnnZlW+ECvmIb5MwHj3Vkl+nLqlJ+jeMQDWCNlbyNtTlyNN0sZfpusgxyVUtFRJDlaUoX1lbRhNVYlYNDLNQ6xWPn/VZme3yF2USbu5MbXQ2OYM3OL+JuQ6yrpYHIxVKLE8rY2TWp6UdqQHVgP8A0MIzktATtMkZvkBFEOIBpA8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <f4d9a537-5a87-57b3-3db8-35c6dc564a9e@amd.com>
Date: Mon, 11 Sep 2023 11:04:27 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 01/10] xen/arm: remove stale addr_cells/size_cells in
 assign_shared_memory
Content-Language: en-US
To: Penny Zheng <Penny.Zheng@arm.com>, <xen-devel@lists.xenproject.org>
CC: <wei.chen@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, "Julien
 Grall" <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
 <20230911040442.2541398-2-Penny.Zheng@arm.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20230911040442.2541398-2-Penny.Zheng@arm.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099DE:EE_|CY8PR12MB7730:EE_
X-MS-Office365-Filtering-Correlation-Id: 6f187566-b75c-482d-262a-08dbb2a61be5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UuBFjY3F4ZtAddOanWsF/Qa4qo4FLtvqOrOAqkwXis1ugqUaF23+xFAns1tuVF8wYqn2XXh+kDp3gAiMY1v3+f25ps/e3yJ01oTI+QFMhSrvfTtvdLQD1iJjqtYNDcfhoIuwg3G6ybkeZ/xqzwmmHw3Megm184XKReiRpckDXW0wz2bXme35Saa+soAAXgXnjB0/w5MAToDpWDoDNisCH0tUWI+EmSmnLBCkMo0uXIQ0gUyWgxjyzaOSgMIbdufdfYkBLiJ9+uSMjhNVfo/gRBniJi54+nCPLrnfxoIN2JH/qkxx2Dy0a+WLSaG2le4wEh1NnBRB8ofxcFbbkeCBJTLVra7lAKEl8C/OPAnkajsqKjJKDRz8geGxP7P9PIfS10gqOGk8UVRMNxZAJZqs4diGqwHrglCzrgbDYAQ083MnAANzBXyiiAHhwExqo8+Qp6AAzNybt10JCH1Wuof5ygzjPdJYF8on7qqJ2Di7F5wmgT1KYdL80TpJI0C8JoVFlNaEk1PjDAV3M5qcSVOWaPNyHw0tPMojnbu+nMuIakaMzzm8tq66MdZIZLX/jPBXFeb2QPTPNNlfmXfP/knLNw6WMBBMjH5FSME8bKE3q3yQ02Z8m2doDm2TskkMNUZTSbnqZL8VPS33zelRe5Nv51B9KJfug3EGQ+GT9qZeW2m97xOh5GDT6h3lsItM0jQaqDHLc2Uwp/elTNYpGat0qWDlT05rLqpvhMoFqP6ipy5Ue6KP3q6P8+C7w9DU7n0j0cOGcKf3GxKf+PWkDUMQp40rO6qVovrKkktVePLaYHpSa3Yn8LzQXJ56kh2BF0zE
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(346002)(396003)(39860400002)(186009)(1800799009)(82310400011)(451199024)(40470700004)(46966006)(36840700001)(316002)(54906003)(16576012)(70206006)(70586007)(110136005)(336012)(426003)(26005)(2616005)(47076005)(36756003)(53546011)(81166007)(356005)(86362001)(31696002)(82740400003)(558084003)(36860700001)(40480700001)(478600001)(40460700003)(2906002)(8676002)(31686004)(5660300002)(41300700001)(4326008)(8936002)(44832011)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 09:04:30.4437
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6f187566-b75c-482d-262a-08dbb2a61be5
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS3PEPF000099DE.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7730

Hi Penny,

On 11/09/2023 06:04, Penny Zheng wrote:
> 
> 
> Function parameters {addr_cells,size_cells} are stale parameters in
> assign_shared_memory, so we shall remove them.
> 
> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

~Michal



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 09:13:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 09:13:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599183.934474 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfczE-0001uJ-Ke; Mon, 11 Sep 2023 09:13:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599183.934474; Mon, 11 Sep 2023 09:13:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfczE-0001uC-GW; Mon, 11 Sep 2023 09:13:40 +0000
Received: by outflank-mailman (input) for mailman id 599183;
 Mon, 11 Sep 2023 09:13:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zO6f=E3=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qfczD-0001u5-Ay
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 09:13:39 +0000
Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com
 [2a00:1450:4864:20::32b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7b94e9d6-5083-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 11:13:34 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-3ff7d73a6feso44107655e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 02:13:34 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 n14-20020a5d51ce000000b0031980783d78sm9492336wrv.54.2023.09.11.02.13.33
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 02:13:33 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7b94e9d6-5083-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694423613; x=1695028413; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=PoWc5JY1ED1cULTq0BwZnvQfAeckkndjITPjyIYf8Kw=;
        b=BPrXXQF6jY1RHedEvL/vs8eWVriVoU3HzXLDlwaSDkup/Vl0mRED2xFV4Rex+OwjMP
         yvqYCPApPdNveXr8477nY4LfBc1zu1Sx1Nwn6Ru9KTH2oqeWmyFUM12H28a3KDXE2j8M
         k/uo8vB2+/hUd9l8M57Ml2KoztbpXR2xFsdn8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694423613; x=1695028413;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=PoWc5JY1ED1cULTq0BwZnvQfAeckkndjITPjyIYf8Kw=;
        b=sA9cfprpcyCDL3MyIMS/hLuqUXIZOh7AP4bzm0PkYaaAvoiJ3OTEx8xZdIelV10PC5
         AzmWpO1e7rH7Md+5lG51jaFmlZE3AVcuMWsRvNoHyXsQyGtTEAfMy7YJTi+jXsAng11c
         34riK+yZ/9ZfH4eXJB+vXkboOqHFqG51aQDkaa/Kae3NXxO3JDRoTNoBTcpnRWXUWEr0
         Q0KPbzkyE5rxMVH6AKSS4OeKsVLqEWX+OuuD/6lZ+yPbWmv+U7KpYPgvidLGEeq1NXfv
         mjRK3ksAU+CcIlpJXNl9YDEsALPzXHi9+3g1LMiBlUNpRAczVNduy06TxkxlpAW8rFoV
         SwsQ==
X-Gm-Message-State: AOJu0YxWcglI6UiKFTONVRL56H2Fsqku62N7iWwBk8ZZNx83B92bG7k7
	IqYPVlbI0Lp3r8GgBRuUef5lXQ==
X-Google-Smtp-Source: AGHT+IFj61/zFXuPYIfoHyV7goji+RtrCFFpxXGLaZrdiJZuh63ulV7On1/n4Y2Nt+kgC16dwYqCFQ==
X-Received: by 2002:a05:600c:2249:b0:3fb:f0ef:4669 with SMTP id a9-20020a05600c224900b003fbf0ef4669mr7639296wmm.17.1694423613502;
        Mon, 11 Sep 2023 02:13:33 -0700 (PDT)
Date: Mon, 11 Sep 2023 10:13:32 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, 
	George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v2 1/2] coverage: simplify the logic of choosing the
 number of gcov counters depending on the gcc version
Message-ID: <iuf46ej5funjfyfpspq4vhckealynw6e5slxsrummyowfh4hsp@6d6wj6qk4chl>
References: <cover.1694189143.git.javi.merino@cloud.com>
 <f40f16bad7553f63d81574eac39e1fddaeec0be4.1694189143.git.javi.merino@cloud.com>
 <93c7ff14-2aa8-09a6-f04d-9dbb3969f470@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <93c7ff14-2aa8-09a6-f04d-9dbb3969f470@suse.com>

On Mon, Sep 11, 2023 at 09:54:53AM +0200, Jan Beulich wrote:
> On 08.09.2023 18:20, Javi Merino wrote:
> > The current structure of choosing the correct file based on the
> > compiler version makes us make 33 line files just to define a
> > constant.  The changes after gcc 4.7 are minimal, just the number of
> > counters.
> > 
> > Fold the changes in gcc_4_9.c, gcc_5.c and gcc_7.c into gcc_4_7.c to
> > remove a lot of the boilerplate and keep the logic of choosing the
> > GCOV_COUNTER in gcc_4_7.c.
> > 
> > Signed-off-by: Javi Merino <javi.merino@cloud.com>
> > ---
> >  xen/common/coverage/Makefile  |  6 +-----
> >  xen/common/coverage/gcc_4_7.c | 17 +++++++++--------
> >  xen/common/coverage/gcc_4_9.c | 33 ---------------------------------
> >  xen/common/coverage/gcc_5.c   | 33 ---------------------------------
> >  xen/common/coverage/gcc_7.c   | 30 ------------------------------
> >  5 files changed, 10 insertions(+), 109 deletions(-)
> >  delete mode 100644 xen/common/coverage/gcc_4_9.c
> >  delete mode 100644 xen/common/coverage/gcc_5.c
> >  delete mode 100644 xen/common/coverage/gcc_7.c
> > 
> > diff --git a/xen/common/coverage/Makefile b/xen/common/coverage/Makefile
> > index 63f98c71d6..d729afc9c7 100644
> > --- a/xen/common/coverage/Makefile
> > +++ b/xen/common/coverage/Makefile
> > @@ -1,11 +1,7 @@
> >  obj-y += coverage.o
> >  ifneq ($(CONFIG_CC_IS_CLANG),y)
> >  obj-y += gcov_base.o gcov.o
> > -obj-y += $(call cc-ifversion,-lt,0407, \
> > -		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
> > -		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
> > -		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
> > -		gcc_5.o, gcc_7.o))))
> > +obj-y += $(call cc-ifversion,-lt,0407, gcc_3_4.o, gcc_4_7.o)
> >  else
> >  obj-y += llvm.o
> >  endif
> > diff --git a/xen/common/coverage/gcc_4_7.c b/xen/common/coverage/gcc_4_7.c
> > index 25b4a8bcdc..ddbc9f4bb0 100644
> > --- a/xen/common/coverage/gcc_4_7.c
> > +++ b/xen/common/coverage/gcc_4_7.c
> > @@ -18,15 +18,16 @@
> >  
> >  #include "gcov.h"
> >  
> > -/*
> > - * GCOV_COUNTERS will be defined if this file is included by other
> > - * source files.
> > - */
> > -#ifndef GCOV_COUNTERS
> > -# if !(GCC_VERSION >= 40700 && GCC_VERSION < 40900)
> > -#  error "Wrong version of GCC used to compile gcov"
> > -# endif
> > +#if (GCC_VERSION >= 40700 && GCC_VERSION < 40900)
> >  #define GCOV_COUNTERS 8
> > +#elif (GCC_VERSION >= 40900 && GCC_VERSION < 50000)
> > +#define GCOV_COUNTERS 9
> > +#elif GCC_VERSION >= 50000 && GCC_VERSION < 70000
> > +#define GCOV_COUNTERS 10
> > +#elif GCC_VERSION >= 70000
> > +#define GCOV_COUNTERS 9
> > +#else
> > +#error "Wrong version of GCC used to compile gcov"
> >  #endif
> 
> How about inverse order:
> 
> #if GCC_VERSION >= 70000
> #define GCOV_COUNTERS 9
> #elif GCC_VERSION >= 50000
> #define GCOV_COUNTERS 10
> #elif GCC_VERSION >= 40900
> #define GCOV_COUNTERS 9
> #elif GCC_VERSION >= 40700
> #define GCOV_COUNTERS 8
> #else
> #error "Wrong version of GCC used to compile gcov"
> #endif
> 
> Otherwise a nit and a question: Parentheses would want using consistently.

True, the parenthesis are unnecessary and inconsistent in the patch.

> And wouldn't it make sense to combine the two ranges resulting in 9 being
> chosen? (Imo in the alternative layout that's less desirable.)
> 
> Since the adjustment would be easy to make, I'd be fine doing so while
> committing, and then
> Reviewed-by: Jan Beulich <jbeulich@suse.com>

Happy for you to do the changes.  Or I can do it and fix the next
patch as well.

Cheers,
Javi

> As an unrelated remark: gcc_3_4.c is clearly outdated as well, simply by
> its name. Imo it would have wanted to be gcc_4_1.c the latest as of commit
> 03f22f0070f3 ("README: adjust gcc version requirement"), i.e. for over 10
> years.
> 
> Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 09:19:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 09:19:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599189.934484 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfd4a-0002qA-6p; Mon, 11 Sep 2023 09:19:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599189.934484; Mon, 11 Sep 2023 09:19:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfd4a-0002q3-2e; Mon, 11 Sep 2023 09:19:12 +0000
Received: by outflank-mailman (input) for mailman id 599189;
 Mon, 11 Sep 2023 09:19:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zO6f=E3=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qfd4Y-0002on-Sf
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 09:19:10 +0000
Received: from mail-wr1-x433.google.com (mail-wr1-x433.google.com
 [2a00:1450:4864:20::433])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 43b33bea-5084-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 11:19:09 +0200 (CEST)
Received: by mail-wr1-x433.google.com with SMTP id
 ffacd0b85a97d-31dd10c2b8bso4115454f8f.3
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 02:19:09 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 d13-20020adff84d000000b00317909f9985sm9436831wrq.113.2023.09.11.02.19.08
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 02:19:08 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 43b33bea-5084-11ee-8784-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694423949; x=1695028749; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=MSbWryoPsGoSeDihA0ofIHYN0XidU/oLitp2f2e9FFs=;
        b=Jg6LjWcrw1/0YO1M1bhrQnlp6YXS/avyPnl5XrSEifoDU6WDPQ8Jw+Gs2UFZFZrc2e
         BcOJMJZ8JKqcfnM+nKtxvejgEKOS/VEahwpGI1Ui5BUUO3ACp4/I2BWt7o0+toCTfQ7G
         /q3xx94Ci/oZ+nj2Iwrs6JJsz32dQDc15TX+g=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694423949; x=1695028749;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=MSbWryoPsGoSeDihA0ofIHYN0XidU/oLitp2f2e9FFs=;
        b=kwTB1Fgy9EDbtHf0e8xL1jK6YjT2qdQ63D3bx3gLuVhK5f5OzMphsATaecHP+sGoP/
         e4rKNDuQygvFxpLCb9s1D/UnCvc5zJilRSxEa49sTX6QMthUo/NEisbgkkHJoyA4xThl
         l0KoHQooPg/Q4iOTZWFCyaTMf9HNpKs5ktAb6ekZecRFzCZcs94GmHD5vF52t0MhfH4c
         og28BFc60eCJvTJ9a/EzFfwju0SHCE4trHCoCoD9cNEjRwg0ywYVy78lnm7EWZjvX1EL
         A+pmfleEbDWX3E82ZA+UGVj9NCX+xmENKpcbrT5fgZWdHLbS6OpB+LpNfEFplb8otNQO
         XCvQ==
X-Gm-Message-State: AOJu0YxRf3LNC9W1keaDJrl4IhhtRpVPiq30dB1Dbk1U7m+ez0M1G/Zh
	eD+bXSNFQPzjIyPQfo2eB6uVGQ==
X-Google-Smtp-Source: AGHT+IEYUJQgmO043QA4C2Sn45rI9QzhUBds6WwFhbpqamMjAGibnKCf9+W3JkPrMe/ntV5hxVpZjA==
X-Received: by 2002:a05:6000:100c:b0:319:8b21:b050 with SMTP id a12-20020a056000100c00b003198b21b050mr6677290wrx.61.1694423949249;
        Mon, 11 Sep 2023 02:19:09 -0700 (PDT)
Date: Mon, 11 Sep 2023 10:19:08 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, 
	George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v2 2/2] coverage: update gcov info for newer versions
 of gcc
Message-ID: <v3jhpmsxeeav5a2bhrlfyguadk6pilrzj2psta7qgr3hpgcnai@lb5d4z27r25d>
References: <cover.1694189143.git.javi.merino@cloud.com>
 <f6495eb4c02f6539c5b95d2850d4a834f2ea94e8.1694189143.git.javi.merino@cloud.com>
 <8890cb3e-4538-9b88-cb3c-ae302b7109af@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <8890cb3e-4538-9b88-cb3c-ae302b7109af@suse.com>

On Mon, Sep 11, 2023 at 10:00:14AM +0200, Jan Beulich wrote:
> On 08.09.2023 18:20, Javi Merino wrote:
> > Shamelessly copy changes to gcov_info structures from linux so that we
> > can capture coverage for xen built with newer compilers.
> > 
> > Signed-off-by: Javi Merino <javi.merino@cloud.com>
> > ---
> >  xen/common/coverage/gcc_4_7.c | 24 +++++++++++++++++++++---
> >  1 file changed, 21 insertions(+), 3 deletions(-)
> > 
> > diff --git a/xen/common/coverage/gcc_4_7.c b/xen/common/coverage/gcc_4_7.c
> > index ddbc9f4bb0..8f6e287474 100644
> > --- a/xen/common/coverage/gcc_4_7.c
> > +++ b/xen/common/coverage/gcc_4_7.c
> > @@ -24,14 +24,23 @@
> >  #define GCOV_COUNTERS 9
> >  #elif GCC_VERSION >= 50000 && GCC_VERSION < 70000
> >  #define GCOV_COUNTERS 10
> > -#elif GCC_VERSION >= 70000
> > +#elif GCC_VERSION >= 70000 && GCC_VERSION < 100000
> >  #define GCOV_COUNTERS 9
> > +#elif GCC_VERSION >= 100000
> > +#define GCOV_COUNTERS 8
> >  #else
> >  #error "Wrong version of GCC used to compile gcov"
> >  #endif
> 
> This would need adjustment if patch 1 is adjusted as suggested, then ...
> 
> >  #define GCOV_TAG_FUNCTION_LENGTH        3
> >  
> > +#if GCC_VERSION >= 120000
> > +/* Since GCC 12.1, sizes are in BYTES and not in WORDS (4B). */
> > +#define GCOV_UNIT_SIZE 4
> > +#else
> > +#define GCOV_UNIT_SIZE 1
> > +#endif
> 
> ... making the earlier group also match this one (which already works
> downwards in version number space).

True

> As to the comments (here and below): Since the version check is for
> 12.0, may I suggest to simply say "gcc 12" everywhere?
> 
> > @@ -89,6 +98,10 @@ struct gcov_info {
> >      unsigned int version;
> >      struct gcov_info *next;
> >      unsigned int stamp;
> > +#if (GCC_VERSION >= 120000)
> 
> Nit: Here any below parentheses likely want omitting, to match there
> being none further up. Preferably with the adjustments (which again
> I'd be okay doing while committing, so long as you agree)
> Acked-by: Jan Beulich <jbeulich@suse.com>

I'm ok with those changes and I'm fine with you doing them.

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 09:40:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 09:40:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599196.934494 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdOy-0000nx-QT; Mon, 11 Sep 2023 09:40:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599196.934494; Mon, 11 Sep 2023 09:40:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdOy-0000nq-Nj; Mon, 11 Sep 2023 09:40:16 +0000
Received: by outflank-mailman (input) for mailman id 599196;
 Mon, 11 Sep 2023 09:40:15 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yA6l=E3=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qfdOx-0000nk-7k
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 09:40:15 +0000
Received: from NAM04-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam04on2062d.outbound.protection.outlook.com
 [2a01:111:f400:7e8d::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 34840eef-5087-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 11:40:13 +0200 (CEST)
Received: from SJ0P220CA0016.NAMP220.PROD.OUTLOOK.COM (2603:10b6:a03:41b::23)
 by SN7PR12MB6888.namprd12.prod.outlook.com (2603:10b6:806:260::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Mon, 11 Sep
 2023 09:40:09 +0000
Received: from MWH0EPF000989E8.namprd02.prod.outlook.com
 (2603:10b6:a03:41b:cafe::51) by SJ0P220CA0016.outlook.office365.com
 (2603:10b6:a03:41b::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 09:40:08 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 MWH0EPF000989E8.mail.protection.outlook.com (10.167.241.135) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.11 via Frontend Transport; Mon, 11 Sep 2023 09:40:08 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 04:40:07 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 04:40:07 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 11 Sep 2023 04:40:06 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 34840eef-5087-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MdhPA8zQdbtjciSq5vIW89bSFWkYiIoAbnCI22IMzRIAr5Kflc4nH+W2oTb0EQfHamZNkng6kSnMjwP0HbkimaroVC7s7YE4Isx9NuUP0bRITn8hHWh2rJ6Wt8mCfYYhxd2X8wJh9GAPJTehPTwR9ER90xywizTw/+bxv+8aHzmGgFnHBd4+26PivWLELmtyszV3fg2xaC5YFunh76jdQeJFB5et9J5tmqrnImA6rsngUosnkLPQ907tYHcOJJ0SHBy9daDeSn2TrglKMWdzCfBxSTsgAt6yy+t902wbaVF4Eo5rHmFODx1Z49EYQ/rYNV6P4nrwLROJZO1eV6n/NQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=SX3ysZbV1q5vdpQg49vT4IgHv3QMOZAiDn/lcfGB3Wc=;
 b=h2HXES8OsBX1SmUPLif2RBd8uP8OFXgoP4pMVKk4tSscZxIMZvbqKGq3E/tczKOAhReXPhX41j3zmKxj5DqQckQqoOmeSTEr/1uDjFlW85Ipn98dYFeUrwsEqDeEOLv/7Vbg6gAvI3n8ppjPLt+QLabswVLxXMPQB4ZRl5VkypHsB/gG5lsbT4mO8rTpJ7M0xN1fSQdf5mZXVCKFan9xsaDsagEv1K1ZXb7aFe6ng1+Ss5iurVDhLwPXWKr8vhx+i6Y2LByvNNwsLTNywT78YJQ6w1kfQC6Ksyl8i4YnIklaKXm4UH18Itthrps5+n3sK1tgHagVHorB+i1SMLiaZQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=arm.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=SX3ysZbV1q5vdpQg49vT4IgHv3QMOZAiDn/lcfGB3Wc=;
 b=voQIuSJr4CVNtTS4UqJQv+d7p62iqDF2GmmsqvbsR8nbuAqbsozHVDbzhC+7LA2znyTKAprvpfpj1SmU53sMQqxC6wZvcJvSTC++k47u6XwOGhbu+tbe7RaV3kMEgOjBzsNO6x8jxAcJ0Lye4WMFTAmH8j30Mt5fY+71Q9zNStw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <5212bdc4-9bce-fc5d-8a47-ae5e5fef37e3@amd.com>
Date: Mon, 11 Sep 2023 11:40:00 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 09/10] xen/arm: fix duplicate /reserved-memory node in
 Dom0
Content-Language: en-US
To: Penny Zheng <Penny.Zheng@arm.com>, <xen-devel@lists.xenproject.org>
CC: <wei.chen@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, "Julien
 Grall" <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
 <20230911040442.2541398-10-Penny.Zheng@arm.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20230911040442.2541398-10-Penny.Zheng@arm.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MWH0EPF000989E8:EE_|SN7PR12MB6888:EE_
X-MS-Office365-Filtering-Correlation-Id: c7274acb-148e-4708-1306-08dbb2ab165e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	LBOXWM0y/9i5G3+BUxa3oEi1VYXVYHa6SL+oe3sZr70hCbvWSirzOASATs5jTQJrUJszHNXp92eW85IsuVu2sBuH/xIl+czmVeumrO1A+mNq8j24dtr744U6cWFAVQagj4F/eSmcoseKVPg/jpkUy+CCafEKIAnQPGwhHLm3r613j7g6UFNe7QSk2CUdaHBfnhaERY8wYfVlwvFoBK6soqIekD+S2h3nw/zugpCYRXlqpMS5zH9gu0HhB9y/mX18/P2+h9hZRTXhgr1gi1K98V1NN35rpFdIzKPM8Qbxqf+Rd5SZOp3zYkAk3LsaMiJuXyXyH47y8PFRlT+c9d5C8EBgogCawbxggkwjYzJbvqvCKcVGqbdTSp02tnBQ8zI98M/NhkguuKMF+TgVem1bPG+xJiyJN98kUXwFAnMH62eiSh5FZWjYtnS+nRYjpya/iAwfB8fNyzU+JSw1QjZGApDkK1O/lzcS++aP8gT5HFvcOeQyAzjHDURoX+H0iGDfOvLN53G5Sha9v/mJjhMfmBu1tg5u/+GgUTaOrbuFD37UtulWn5G8mTy15VjTpUk52bI5XHiS86Bo/7/ec08EiEbUkm8PMelniSu1yxtF9Lg3HMHXQJrabVK+5Tz2NKqi7dyUgbM/8FQMd7WnDGn8ak3o60gJwu6cAqom0pG94TNnEcCcBgrmNJixWiMOkZPmACrb55txY9PVggx71TOZ/pa86DN/2O6VLU3fWwMNFItzzRkV+rnKtbubNHJN/up4IF/N8QgZPjKagwTfylPfkYyGuqT/cF6GZTQ29T2oplvUAs6UVrKWJq53NPKDyCS9
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(376002)(39860400002)(346002)(136003)(82310400011)(451199024)(186009)(1800799009)(46966006)(36840700001)(40470700004)(8676002)(31686004)(2906002)(4326008)(44832011)(8936002)(41300700001)(5660300002)(54906003)(16576012)(70586007)(70206006)(110136005)(316002)(40460700003)(478600001)(6666004)(53546011)(2616005)(47076005)(26005)(426003)(336012)(83380400001)(36756003)(36860700001)(40480700001)(81166007)(356005)(86362001)(82740400003)(31696002)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 09:40:08.6066
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c7274acb-148e-4708-1306-08dbb2ab165e
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	MWH0EPF000989E8.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB6888

Hi Penny,

On 11/09/2023 06:04, Penny Zheng wrote:
> 
> 
> In case there is a /reserved-memory node already present in the host dtb,
> current Xen codes would create yet another /reserved-memory node specially
s/codes/code/

> for the static shm in Dom0 Device Tree.
> 
> Xen will use write_properties() to copy the reserved memory nodes from host dtb
> to Dom0 FDT, so we want to insert the shm node along with the copying.
> And avoiding duplication, we add a checking before make_resv_memory_node().
> 
> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
> 
> ---
> v3 -> v4:
> new commit
> ---
>  xen/arch/arm/domain_build.c       | 31 ++++++++++++++++++++++++++++---
>  xen/arch/arm/include/asm/kernel.h |  2 ++
>  2 files changed, 30 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 02d903be78..dad234e4b5 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -1401,6 +1401,10 @@ static int __init handle_linux_pci_domain(struct kernel_info *kinfo,
>      return fdt_property_cell(kinfo->fdt, "linux,pci-domain", segment);
>  }
> 
> +static int __init make_shm_memory_node(const struct domain *d,
> +                                       void *fdt,
> +                                       int addrcells, int sizecells,
> +                                       const struct kernel_info *kinfo);
>  static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
>                                     const struct dt_device_node *node)
>  {
> @@ -1549,6 +1553,23 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
>          }
>      }
> 
> +    if ( dt_node_path_is_equal(node, "/reserved-memory") )
> +    {
> +        kinfo->resv_mem = true;
kinfo structure is used to store per-domain parameters and presence of reserved memory in host dtb
does not fit into this. Moreover, there is no need to introduce yet another flag for that given
that in other parts of the code in Xen we use bootinfo.reserved_mem.nr_banks to check if there are
reserved regions.

> +
> +        /* shared memory provided. */
> +        if ( kinfo->shminfo.nr_banks != 0 )
> +        {
> +            uint32_t addrcells = dt_n_addr_cells(node),
> +                     sizecells = dt_n_size_cells(node);
> +
> +            res = make_shm_memory_node(d, kinfo->fdt,
> +                                       addrcells, sizecells, kinfo);
I haven't yet looked at previous patches but does it make sense to request passing both kinfo->fdt and kinfo?
IMO, the latter would be sufficient. This would apply to other functions you modified.

> +            if ( res )
> +                return res;
> +        }
> +    }
> +
>      return 0;
>  }
> 
> @@ -2856,9 +2877,13 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
>                  return res;
>          }
> 
> -        res = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells, kinfo);
> -        if ( res )
> -            return res;
> +        /* Avoid duplicate /reserved-memory nodes in Device Tree */
> +        if ( !kinfo->resv_mem )
No need for a new flag as mentioned above. Just before this line of code there is a check:
if ( bootinfo.reserved_mem.nr_banks > 0 )
{
    res = make_memory_node(d, kinfo->fdt, addrcells, sizecells,
                            &bootinfo.reserved_mem);
    if ( res )
        return res;
}
so you can just append the following:
else
{
    res = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells, kinfo);
    if ( res )
        return res;
}
to achieve the same without a need for a new flag.

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 09:46:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 09:46:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599203.934503 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdUU-0001Vj-H1; Mon, 11 Sep 2023 09:45:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599203.934503; Mon, 11 Sep 2023 09:45:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdUU-0001Vc-ET; Mon, 11 Sep 2023 09:45:58 +0000
Received: by outflank-mailman (input) for mailman id 599203;
 Mon, 11 Sep 2023 09:45:57 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=BBsW=E3=bytedance.com=zhengqi.arch@srs-se1.protection.inumbo.net>)
 id 1qfdUS-0001VS-Uy
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 09:45:57 +0000
Received: from mail-pl1-x630.google.com (mail-pl1-x630.google.com
 [2607:f8b0:4864:20::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ffb8596c-5087-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 11:45:54 +0200 (CEST)
Received: by mail-pl1-x630.google.com with SMTP id
 d9443c01a7336-1c0efe0c4acso7083385ad.0
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 02:45:54 -0700 (PDT)
Received: from C02DW0BEMD6R.bytedance.net ([203.208.167.146])
 by smtp.gmail.com with ESMTPSA id
 az7-20020a170902a58700b001bdc2fdcf7esm5988188plb.129.2023.09.11.02.45.43
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 02:45:52 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ffb8596c-5087-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=bytedance.com; s=google; t=1694425553; x=1695030353; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=6FwhLiYYaF8GJm0hS886+94gWet3PBBx4VE+fsMZAKg=;
        b=M7TXfz6yDq27CXS11WyCQyzg/KY3gAPNxHbxkvOlo0yjy5QzcTWRMBYEOYnVuUJLmk
         mIiO4QtINXLM2rNN1P6A3xfueY+ecfI64jQVn2fLWRwLLJ35bJqGfxmHMGTWePDOoVRm
         Pg4gM0Eg//b4YW6px8+Jyqmw9ebYCNW57rRZoiNdjgkBOrHTLsEOJRA+ZGr8Ro088mKP
         vqtSL3utEypBJ+RKJasvflEiuB5jUQ6j1QGdKtzU2zlFXkL6vjqfUcH6NTgRhnSG56Fs
         zyFTuq/FAdGi2vVTUSUQb69VYjcoYpty2Pe0jn+fgCg16PyPmQFJ3e4AN8muQ6jvqTNd
         GvEg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694425553; x=1695030353;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=6FwhLiYYaF8GJm0hS886+94gWet3PBBx4VE+fsMZAKg=;
        b=pPcil+EBdUIHhTV3fnmYHob7S6CQaN6UWX4gT+CEknyKBka8A+U1d631J9vFLG+c+O
         El1PjbjyLgQG2nP2eZcBQdnhK/HzPatqo30N0mg/+oDg9DcoI+icXMGPsamTQWkw3Nyh
         Ei4i7mxp4Z8WLparqeWpBlBNyDN+xCab/Pk6BP99Pm3ReNPFyS6q47bocackO0iQ0Pks
         M+kGXJgvyd6yLTuG+nAFXN02A4V5ZcXaszR9Sc1cDCxj0ul6KxOE+e4NLlPCEDKBSK4U
         8uXmW5GLlALLF4fVgI8tgjenuc1nuqUoszHOSnY+oim5ePteZK30ZpE5VWligl8p7je+
         r4+Q==
X-Gm-Message-State: AOJu0YyeMrClrQ+rRWOsCoWzq4DKbYYczcMUkFa3M89hFru8SrmYaRbw
	aJEa2t876XI+/5EJR0MfvThljA==
X-Google-Smtp-Source: AGHT+IHJaWa+7S6PEpk0MEo5uFVZCUWjKmc0DPmv6mKvqIMnxGI/EF90IQq3u3ePRTZciiGyrN8JSg==
X-Received: by 2002:a17:903:41c8:b0:1c0:bf60:ba4f with SMTP id u8-20020a17090341c800b001c0bf60ba4fmr11505655ple.4.1694425553045;
        Mon, 11 Sep 2023 02:45:53 -0700 (PDT)
From: Qi Zheng <zhengqi.arch@bytedance.com>
To: akpm@linux-foundation.org,
	david@fromorbit.com,
	tkhai@ya.ru,
	vbabka@suse.cz,
	roman.gushchin@linux.dev,
	djwong@kernel.org,
	brauner@kernel.org,
	paulmck@kernel.org,
	tytso@mit.edu,
	steven.price@arm.com,
	cel@kernel.org,
	senozhatsky@chromium.org,
	yujie.liu@intel.com,
	gregkh@linuxfoundation.org,
	muchun.song@linux.dev
Cc: linux-kernel@vger.kernel.org,
	linux-mm@kvack.org,
	linux-fsdevel@vger.kernel.org,
	Qi Zheng <zhengqi.arch@bytedance.com>,
	Muchun Song <songmuchun@bytedance.com>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	xen-devel@lists.xenproject.org
Subject: [PATCH v6 05/45] xenbus/backend: dynamically allocate the xen-backend shrinker
Date: Mon, 11 Sep 2023 17:44:04 +0800
Message-Id: <20230911094444.68966-6-zhengqi.arch@bytedance.com>
X-Mailer: git-send-email 2.24.3 (Apple Git-128)
In-Reply-To: <20230911094444.68966-1-zhengqi.arch@bytedance.com>
References: <20230911094444.68966-1-zhengqi.arch@bytedance.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Use new APIs to dynamically allocate the xen-backend shrinker.

Signed-off-by: Qi Zheng <zhengqi.arch@bytedance.com>
Reviewed-by: Muchun Song <songmuchun@bytedance.com>
Acked-by: Juergen Gross <jgross@suse.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
CC: xen-devel@lists.xenproject.org
---
 drivers/xen/xenbus/xenbus_probe_backend.c | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/drivers/xen/xenbus/xenbus_probe_backend.c b/drivers/xen/xenbus/xenbus_probe_backend.c
index da96c260e26b..5ebb7233076f 100644
--- a/drivers/xen/xenbus/xenbus_probe_backend.c
+++ b/drivers/xen/xenbus/xenbus_probe_backend.c
@@ -284,13 +284,9 @@ static unsigned long backend_shrink_memory_count(struct shrinker *shrinker,
 	return 0;
 }
 
-static struct shrinker backend_memory_shrinker = {
-	.count_objects = backend_shrink_memory_count,
-	.seeks = DEFAULT_SEEKS,
-};
-
 static int __init xenbus_probe_backend_init(void)
 {
+	struct shrinker *backend_memory_shrinker;
 	static struct notifier_block xenstore_notifier = {
 		.notifier_call = backend_probe_and_watch
 	};
@@ -305,8 +301,15 @@ static int __init xenbus_probe_backend_init(void)
 
 	register_xenstore_notifier(&xenstore_notifier);
 
-	if (register_shrinker(&backend_memory_shrinker, "xen-backend"))
-		pr_warn("shrinker registration failed\n");
+	backend_memory_shrinker = shrinker_alloc(0, "xen-backend");
+	if (!backend_memory_shrinker) {
+		pr_warn("shrinker allocation failed\n");
+		return 0;
+	}
+
+	backend_memory_shrinker->count_objects = backend_shrink_memory_count;
+
+	shrinker_register(backend_memory_shrinker);
 
 	return 0;
 }
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 09:49:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 09:49:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599209.934515 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdXP-000359-2M; Mon, 11 Sep 2023 09:48:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599209.934515; Mon, 11 Sep 2023 09:48:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdXO-000352-TZ; Mon, 11 Sep 2023 09:48:58 +0000
Received: by outflank-mailman (input) for mailman id 599209;
 Mon, 11 Sep 2023 09:48:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=nwba=E3=citrix.com=prvs=6119d0f35=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qfdXN-00034w-Uj
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 09:48:58 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6b266496-5088-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 11:48:56 +0200 (CEST)
Received: from mail-dm6nam10lp2102.outbound.protection.outlook.com (HELO
 NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.102])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 11 Sep 2023 05:48:47 -0400
Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12)
 by MW5PR03MB6929.namprd03.prod.outlook.com (2603:10b6:303:1c6::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Mon, 11 Sep
 2023 09:48:42 +0000
Received: from BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912]) by BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 09:48:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6b266496-5088-11ee-8784-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694425736;
  h=message-id:date:from:subject:to:cc:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=kKhN96lExVErb2BpFiOgGjhJ2571Gd8roofWV8Rs25Y=;
  b=SSoJOeGwBjkBUhvMvWd7AKNuZEZVCrY4TTmmq4FcjTJDhsFuHeb/RnZM
   SSYI0h3YUkMWr4N5x/ZZMRO2ern1LXokXE9RBDXebRmky8eMJsWMVI8/v
   2Xnp7jUUv385D/B2T+6QkYVtKF/Ni6G84t1vL06oY6OXFO3E5B5aYW0qY
   U=;
X-CSE-ConnectionGUID: BUh22HNqRGGUddDEGsbflQ==
X-CSE-MsgGUID: EhQYV6B8S+WuAvSYHgCKBA==
X-IronPort-RemoteIP: 104.47.58.102
X-IronPort-MID: 122659801
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:0uOjD6wTLr676uUwoJl6t+faxyrEfRIJ4+MujC+fZmUNrF6WrkUEz
 GBJW2iGO63bNmP2fdB2PNu39RsBuMOBzdNnHgM+qyAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EkHUMja4mtC5QRvPKgT5zcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KUtz9
 aZCCBYUVD+suu667J+UUeNigv12eaEHPKtH0p1h5RfwKK9+BLzmHeDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjiVlVQruFTuGIO9ltiibMNZhEuH4
 EnB+Hz0GEoyP92D0zuVtHmrg4cjmAuiAthMSezorqcCbFu762wqOSNIfwuA4sako1CFavJQA
 G8+0397xUQ13AnxJjXnZDW6qnOZuh8XW/JLDvY3rgqKz8L84Q+HBy4BQyRAbtsOv8sxWDBs3
 ViM9/vrGDhuvbu9WX+bsLCOoluaIjMJJGUPYSsFSwot4NT5pow3yBXVQb5LD6qdntDzXzbqz
 FiivCU4wrkek8MP/6G65kzcxSKhoIDTSQw47RmRWXiqhj6Vf6agbo2srFTes/BJKd/BSkHb5
 SBe3c+D8OoJEJeB0jSXR/kAF62o4PDDNyDAhVloHN8q8DHFF2OfQL28KQpWfC9BWvvosxezO
 yc/ZSs5CEdvAUaX
IronPort-HdrOrdr: A9a23:Mfr54an+r4Ea3ZJgBXcUjg/mGZLpDfMxiWdD5ihNYBxZY6Wkfp
 +V8cjzhCWftN9OYhodcLC7V5Voj0msjKKdkrNhWotKOzOWxVdATbsSl7cKpgeNJ8SQzJ8/6U
 4NSdkaNDS0NykAsS+Y2njHLz9D+rm6GcmT7I+xrkuFDzsaE52Ihz0JdTpzeXcGIDWua6BJcq
 Z0qvA3xQZJLh8sH7iG7zQ+LqD+T5qhruOVXTc2QzocrCWehzKh77D3VzCewxclSjtKhZsy7G
 TflAT9x6O799W20AXV2WP/54lf3IKJ8KoOOOW8zuwubhn8gAehY4psH5WEoTAOuemqrHo6jd
 XWpB8kHsJrr1fcZHu8rxfB0xTplBwu93jh41mFhmaLm721eBsKT+56wa5JeBrQ7EQt+Pl6za
 Jwxmqc875aFwnJkijR78XBE0gCrDv/nVMS1cooy1BPW4oXb7Fc6aQZ4UNuCZ8FWAb38pouHu
 VCBNzVoNxWbVSZRXbEuXQH+q3mYl0DWjO9BmQSsM2c1DZb2Fh/0ksj3cQa2kwN8ZosIqM0kN
 jsA+BNrvVjX8UWZaVyCKMqWs2sEFHARhrKLSa7PUnnPLtvAQOMl7fHpJEOoM26cp0By5U/3L
 7bVklDiGI0c0XyTeWTwZxw9AzXSmnVZ0Wt9ihn3ek6hlTAfsuvDcXaI2pe1/dI4s9vTPEzYs
 zDe66/WJTYXCzT8YUg5XyLZ3AdEwhZbCQvgKdJZ7u/mLO7FmTUjJ2qTB/yHsuaLd92YBK3Pl
 IzGB7OGe5n0meHHlfFvTm5YQKZRqW4x+M+LJTn
X-Talos-CUID: =?us-ascii?q?9a23=3Am+6sNmjVtarw5zN7NnQ1+amqrDJuWEDdli3wBVa?=
 =?us-ascii?q?CJklURLG5ZHCL8q1gqp87?=
X-Talos-MUID: 9a23:DpTuCAphE697/IUTP1wezxxiDfZWvY7+MwMyjLwYgPikOgdTER7I2Q==
X-IronPort-AV: E=Sophos;i="6.02,243,1688443200"; 
   d="scan'208";a="122659801"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QQJtaOPTrYHJHip4uNSnSbWtmqoys624PqBoykKECkWV/ufX2O0RLX+2N/awjWA5lO3BCt99jdxzlhAJLc6zcP2ASQwvLx7dfqa19kj1yHEnGBZn+BiXb7fUii8mXblaadj6v1S/5zG7hRdLpxFYHlrfKIJ76JDEcHgbJWvYTdL0bXFx8uzFsna2K5urUza0FWXhmu2CWUvhk4VvOF1DvqZbZ0LcEFYWnBwJJwZbv2ORpOTE12HrHPpcOXr8kqhdUSTSqTtBdT/4huoq0yWdmDvNFfPiBrjvgQz14DayelY/PBRZ91NduBkcZKJjiGsyc0mEcQ188I2lSgPf3/BP4w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=k4z010ckneWoQ/A6gRHVXyG5/QDC6JofM0AtgN0BeO0=;
 b=FkvasmuDCf1Z/DOnyis6gdNVNDOTn3Bcm9wO+HPHRGIs3/HaN2+vnIKyRKETw8z66tflSkoIu5RFS420m7sTu9NWzPnZE0STVrA/r7NSIYtGzYSliCGYiLE2IYLmnhi9fiG8Lg0U3n1vYYmiRxOVUAdZBa8tibP8qkA1NQBQ6RyMHfYqF7h/w6KfIMB+ZWf2LAofQT7G5+VPK7cZefeni71ZDg9ANc/fI6cJsx0vmNrhMGT70OMitN/uJRZWP71jZJqAEtsyJmHmc1NANAzaeTt5/Lu+4aM9sH9fQE4CvlxpxIF7kZ8LG6h7QhDLrVjFgjVnl7mVVOwxznlxxfbi8Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=k4z010ckneWoQ/A6gRHVXyG5/QDC6JofM0AtgN0BeO0=;
 b=ZGiOXh9FuXiaDoKGgkF8dKeaXGP1C1qC9LyFJYgb9YZTwYQa8MmmELxvUEuTu5/YT4b8VNKHbOTGTMRFaPKVVAkd0prl73h/tByjIPifYHLIGKqF0UdQcj8ERS/4dCPVwhpanhhUSA8VHMwJNV3ZizPHR+U7VEepEkUJHVKjR18=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Message-ID: <4073db4a-0ccd-7047-4d34-25ad18100f12@citrix.com>
Date: Mon, 11 Sep 2023 10:48:34 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v2 1/2] coverage: simplify the logic of choosing the
 number of gcov counters depending on the gcc version
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>, Javi Merino <javi.merino@cloud.com>
Cc: George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1694189143.git.javi.merino@cloud.com>
 <f40f16bad7553f63d81574eac39e1fddaeec0be4.1694189143.git.javi.merino@cloud.com>
 <93c7ff14-2aa8-09a6-f04d-9dbb3969f470@suse.com>
In-Reply-To: <93c7ff14-2aa8-09a6-f04d-9dbb3969f470@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: LO4P123CA0485.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a8::22) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|MW5PR03MB6929:EE_
X-MS-Office365-Filtering-Correlation-Id: 9911a567-cfcf-4c4f-173a-08dbb2ac47b6
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xCXFQ6fONcjZ2SLLss4Xq2I8lTS4owKPlTIF2n8qAmVKglGqf299urU+zc5piI7ZWCFFQpj2IEOsnPvPaDylw+z6ZX54eHW2+dSrhdctto14fcwggV01QmDmzlDEutAOYZBqbDcc8sXH27N1JFHpq9yF+MFEPHjNpM2U59myKhmPJlw9D4Z3piyCKGDtd/ID+BvkjniMquXXJoSq1xVYNVu3/0CerkemtRUG4t9VQlByjXGRGuOHA6xg8h/i8DB1q5kMDyW62mC2D71A6TyUDIfjDKQ6OOEnL0nrV6OX2UlW43w6Mo4Gl7m2Nf1c43NKHXrhjRJYUE9ZYzXKU1xgHz9iqrQyARQRo1mqPAXbaa/CQs6E5Iu6J25oimkQO2kJMkoJ/GSpfOiKyNPsRpJJZTGq1WY2wi9Z6OuNzu+/CWfbLfufqjLLkCd/2ZfsnK2Y4ivgxZWFpnhg2KTjYa+XX1Ge6KRzMCCk4QIju+zlIfjJmMCA6gMwi89mlJR1Zv635zlEsyFmXC9E+RAd46efhQedyeZDS2SZwpeDtCqThqNZvwVRwmYswRZW9zBohgimDkYcMAvN5FUsT6WqG1Sqbdce8OXYx4Wk8yRhfHyH0mvQVmfHwKMJCyQ9hcCOE8t/H8amzpkKRrMKoeCY5T1/Gg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(346002)(136003)(366004)(39860400002)(186009)(1800799009)(451199024)(41300700001)(31686004)(6666004)(53546011)(6506007)(6486002)(86362001)(36756003)(31696002)(38100700002)(82960400001)(26005)(2616005)(2906002)(6512007)(83380400001)(478600001)(110136005)(316002)(8936002)(8676002)(5660300002)(4326008)(66946007)(66556008)(66476007)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dy9VRHVnOVNiS09LbHRmUzB6Zk5yN1lyeVBSa2pFL3kvR2tlU0tpU1NHMTll?=
 =?utf-8?B?QzVPZVM0OUY5NVdsK3N5WERhRW5BZlVIQ3NybGRxREl1bW1uZlZCNVVpTnZU?=
 =?utf-8?B?NUU2Um12UWJvdkVDdXFuV2EyKytrSDh3dUNCZU5ER2hHQmJzSHhiYzYwbUFq?=
 =?utf-8?B?RUttMzJzSHBjK2NKOTNZZ2hTYWRrRkZTSFljUlpDeERudERWWHFXMG14Y25k?=
 =?utf-8?B?SEhxT1NqN1o2NW1DUlZwZGVSY09XeitrMzAwMjU4V0EzZlEvUktnNWJuT0pP?=
 =?utf-8?B?UVlXcUJvYno2OWZVQUdSZEkzNFc3WGdkZDZxamNPVFlwOHlYSnNyQ1JvRlZ4?=
 =?utf-8?B?ZXcyVkswZnpGb2FjSEFWbml2eXdrTUFPRFVPNFFrM2dnbmJtZnVnZ2dpTENw?=
 =?utf-8?B?cGFwZ01jWkNrM28wZ3ZGczZZQnNjb2VKVTVLN3ptNkNQa0x5SDZZNllVampo?=
 =?utf-8?B?Z1lpcTY0Y2lFL0FLVGVRN1Rlb1AzOWZMTVRmc3MvSjdFTERJSml3N3pFMUk2?=
 =?utf-8?B?SHBrWStwTXpSYTZBamdxakJFYStBTU1jZ1g3T0pLdjJMVmR2YnNQMFB0QUUr?=
 =?utf-8?B?bEltbGNaM1VFWEVpT0h5QUJiRytkNG5PWWsxYm9oMGVkWFRTdDhqTm9mWDlV?=
 =?utf-8?B?L052cTZWa1lsRG52RG01bzMwY1AyRCtKRG54WTVvYnBubmNLZU5uZE5yK2w0?=
 =?utf-8?B?UmdKN29JZk5PYXdoMVJZVUJTdG9EdXVCOGwyamhPZmREOUdUbWszcWk1WVR0?=
 =?utf-8?B?VEJPOCtBTEZiZ21EUHlDU3ZRYmJ3WDZEM2prYkVSQWNIblZrYTJ0V2hIejdX?=
 =?utf-8?B?OWtwUWtEdFNTbVpWbXlwU1lXdEkva2JHSnpYZVYxWk1NdUk5cjhzZXovWTkr?=
 =?utf-8?B?L3pUOE5rM3JqRUNyckVzUy9QblptN25rOWhpMnFtbFB2YkU0UGhMM2JZbWZM?=
 =?utf-8?B?K09nOHNjblJGN3hiTTIwb3V6ZnlkeG1kYjJ1YWRRWk5uTVlrTnNBL1NmVU9K?=
 =?utf-8?B?cFUwbFFPNXRCZk9FWGluNEt3dkdxckRqS1hDdVN0c1c5M2g3cmlVOW00Smg0?=
 =?utf-8?B?ajBydExwM2xHZUVZVG90Yi9qZEVtWTd0d0hPdytyRE4vOTlib2NHMFZBYmhl?=
 =?utf-8?B?UnFBak5CK09XOFVZSXFHczg0NGdSUlYwbUNXZEYvZFFQa1hVc29yTzZrZUVm?=
 =?utf-8?B?YkhucE9MZ3FubGZEdXFQVWdOekNNQ0FiRytyY0ZVNVdSNEhjSTdGNjFMaDUx?=
 =?utf-8?B?WUVsVzNJYnM1RWMzZmpXRlg3U2NVa2w1WXYzNlM1QW0xd0tCM21jN2JTZlN1?=
 =?utf-8?B?djRhdkNhUUdFdEI5RW93V09WYmtjVU94T2RhOXZwanQrd2UvcS9HQVBxUXFF?=
 =?utf-8?B?Z0p4Y0FMaHFDaC81VTVOakJXa2hQRHFSbkVHK2lhd2xpU0RnUEdaYzc0eGxW?=
 =?utf-8?B?ODJ1NzUxVnJYdnJUQmk1dTc3MTQwaTBRU0lSMDFzV1ROOUFRaHBnckpTeUtG?=
 =?utf-8?B?Q1QvMm01ai9uT3J5UzJ6WTFUaTBPT2x5K2RvaXJLdFliVCsxRDBSZTJ2ZHhu?=
 =?utf-8?B?RE8wTmtPSUg1MzYvcHR4OHlYSlN3SzdkbklnMkdack9vMGlkQzZqY0pFWHlQ?=
 =?utf-8?B?RGg3amk3b2RvYmtTRk4zeEVQcXpoQ3BEdU12SU9XdkxFcUJjT2tFWkJ0cU8y?=
 =?utf-8?B?MHVOWjhyTXFoVkMzcDNUUjBQQ0hJSjQxdHViNk5lVFlCMittVk9paVF3Yk05?=
 =?utf-8?B?aFUwTUc1NlFDUEhtUk4wbFRmeEZ4RXcxYW4wV1pHb1UrOVl5Tm42a2pSQm1L?=
 =?utf-8?B?NDBGODFjb0ttWjJ6RG5wcmNYby9qMzF3K3hwc1hEZitUMWw5V0g5UGdXZUg3?=
 =?utf-8?B?dDRCQXB6Y3d4ZjhiU3JnckNnOHo3UHRRUDZiUzY3eGFSOUM0SStMejJ3Y1RL?=
 =?utf-8?B?TVdncmdFT3hSTTY1Yll4OEJkbkRDYm16ZjlrSWI5RWhNVVVORDBmRlpsVWJn?=
 =?utf-8?B?Rm91U1pWeUFGRUVNdis1cjY0MVpSVHVGQUlSZmhQNllTNTRhSTN3cnpqZ1Y1?=
 =?utf-8?B?c3VjWEFOcTU5UmYrSFZMMGNLWXR0d1BadUs1TDdoOGtNWGl4YStPRndjMHVN?=
 =?utf-8?B?akRlYzNkWERXdm9HdTQ2UFc0cklsVlJyazdnUkpSeHVSTUo5NXZnS1NETVVT?=
 =?utf-8?B?ZUE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	p2HORQsrvp4BByCs5Ssblp8j5ASwS/BxXJu7jXLi51QAP7qyQy6kqeMGBOzBZpjOILL+IqJyFDHeFlikS7N+xgBQnD+0EsXqy/PsHXLiVC2WhjV9VoywGmlSJ0qBpHIUMe+tgdJXQPmUUDZ56f/6G5Ewa99Vt4ERy5BkoSDJXj7IWxKr3gcg9rX8YnyRKLStjbjv+kog4Lu5UNFn8quYkNuBq7HHm9D1QdqGeg8USfeexZ+H0k2VgLrrXopLN0VaThJtzy2IiAi+IPrqj2R+pP8DCMRMHjF4uGBpmzVaQauwNU9C8ZJZAUcgi2TlijXbZYzF9QBiGs2LcdGJfTHYKxPfBJrqUiEwtXqBfaRBvg+uz8ZD/u/5W5o6d7gsw0jxse33Y4E6HRZo4JI/2lxWPtlp3kyU7COfsp+G4UnZPuHT1HlYYy/CbSkNMvmsVOUZ57GniMUrAJ7Au8PoS8qW5svbu2zqvdBut5MhODyYdbhU0DE6j/fSeP/PrH776r/M+Xy/hL0Ds5jL2SKDwVgXTvMAwidd7ZAVK5K+8Gyl9APzEuqu4bn9E4z7mJUQY+BYcX73x75On1G4NyvxW2H0CdarwEMW8DGFVei6KnEUs9c2Yv+8AxINaq3NFhPjFlD+U43/Lg984bQXE0qAnED/XS4xwkX2W+VM3N/1Qz1qEBVTE3BKJ5YH3ayCIdBmLhF0CVPEOckblWk8UJkjL7mbHhA/CDnsRQetTtNI4RIZwFAy0AqKkp6GSv6AeOiZS6mBny1PiGKrAxBJxgorpIjENIdfLU5KTWa2sB7v3C0c3xaamCuphyHj5ojjJWmUoHzQHkLPd5Dts9NPWpXnUvBBXFf7+yQAk4k8wbZKHHPXekn9UJ7yFXyZ64cRoSTK6cmf
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9911a567-cfcf-4c4f-173a-08dbb2ac47b6
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 09:48:41.6392
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: YC6DqNhSwOhYGbXB31mZ93QVvgUGYePUCY70jYXI6+P/ksJUMslU9lHGNYxRMRzSPw0hQYY4ANZCymD/4aNnTa3wkjGRVk3qoBYpbt9pIRU=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW5PR03MB6929

On 11/09/2023 8:54 am, Jan Beulich wrote:
> On 08.09.2023 18:20, Javi Merino wrote:
>> The current structure of choosing the correct file based on the
>> compiler version makes us make 33 line files just to define a
>> constant.  The changes after gcc 4.7 are minimal, just the number of
>> counters.
>>
>> Fold the changes in gcc_4_9.c, gcc_5.c and gcc_7.c into gcc_4_7.c to
>> remove a lot of the boilerplate and keep the logic of choosing the
>> GCOV_COUNTER in gcc_4_7.c.
>>
>> Signed-off-by: Javi Merino <javi.merino@cloud.com>
>> ---
>>  xen/common/coverage/Makefile  |  6 +-----
>>  xen/common/coverage/gcc_4_7.c | 17 +++++++++--------
>>  xen/common/coverage/gcc_4_9.c | 33 ---------------------------------
>>  xen/common/coverage/gcc_5.c   | 33 ---------------------------------
>>  xen/common/coverage/gcc_7.c   | 30 ------------------------------
>>  5 files changed, 10 insertions(+), 109 deletions(-)
>>  delete mode 100644 xen/common/coverage/gcc_4_9.c
>>  delete mode 100644 xen/common/coverage/gcc_5.c
>>  delete mode 100644 xen/common/coverage/gcc_7.c
>>
>> diff --git a/xen/common/coverage/Makefile b/xen/common/coverage/Makefile
>> index 63f98c71d6..d729afc9c7 100644
>> --- a/xen/common/coverage/Makefile
>> +++ b/xen/common/coverage/Makefile
>> @@ -1,11 +1,7 @@
>>  obj-y += coverage.o
>>  ifneq ($(CONFIG_CC_IS_CLANG),y)
>>  obj-y += gcov_base.o gcov.o
>> -obj-y += $(call cc-ifversion,-lt,0407, \
>> -		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
>> -		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
>> -		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
>> -		gcc_5.o, gcc_7.o))))
>> +obj-y += $(call cc-ifversion,-lt,0407, gcc_3_4.o, gcc_4_7.o)
>>  else
>>  obj-y += llvm.o
>>  endif
>> diff --git a/xen/common/coverage/gcc_4_7.c b/xen/common/coverage/gcc_4_7.c
>> index 25b4a8bcdc..ddbc9f4bb0 100644
>> --- a/xen/common/coverage/gcc_4_7.c
>> +++ b/xen/common/coverage/gcc_4_7.c
>> @@ -18,15 +18,16 @@
>>  
>>  #include "gcov.h"
>>  
>> -/*
>> - * GCOV_COUNTERS will be defined if this file is included by other
>> - * source files.
>> - */
>> -#ifndef GCOV_COUNTERS
>> -# if !(GCC_VERSION >= 40700 && GCC_VERSION < 40900)
>> -#  error "Wrong version of GCC used to compile gcov"
>> -# endif
>> +#if (GCC_VERSION >= 40700 && GCC_VERSION < 40900)
>>  #define GCOV_COUNTERS 8
>> +#elif (GCC_VERSION >= 40900 && GCC_VERSION < 50000)
>> +#define GCOV_COUNTERS 9
>> +#elif GCC_VERSION >= 50000 && GCC_VERSION < 70000
>> +#define GCOV_COUNTERS 10
>> +#elif GCC_VERSION >= 70000
>> +#define GCOV_COUNTERS 9
>> +#else
>> +#error "Wrong version of GCC used to compile gcov"
>>  #endif
> How about inverse order:
>
> #if GCC_VERSION >= 70000
> #define GCOV_COUNTERS 9
> #elif GCC_VERSION >= 50000
> #define GCOV_COUNTERS 10
> #elif GCC_VERSION >= 40900
> #define GCOV_COUNTERS 9
> #elif GCC_VERSION >= 40700
> #define GCOV_COUNTERS 8
> #else
> #error "Wrong version of GCC used to compile gcov"
> #endif

Forward order is the one that results in a smaller diff when inserting
new entries.

More importantly, it's the more natural way to structure such a list.

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 09:54:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 09:54:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599217.934530 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdcJ-0004Xl-LR; Mon, 11 Sep 2023 09:54:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599217.934530; Mon, 11 Sep 2023 09:54:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdcJ-0004Xe-HV; Mon, 11 Sep 2023 09:54:03 +0000
Received: by outflank-mailman (input) for mailman id 599217;
 Mon, 11 Sep 2023 09:54:01 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfdcH-0004XV-M0
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 09:54:01 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20601.outbound.protection.outlook.com
 [2a01:111:f400:fe13::601])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 211780e0-5089-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 11:53:59 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by DU2PR04MB8565.eurprd04.prod.outlook.com (2603:10a6:10:2d4::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 09:53:57 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 09:53:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 211780e0-5089-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PJqpCWnQDXInzmjPMD0a4DL9+cGBRDsxyiPcBnXowzpwh9+JYziSxEqJNm0GUAUnlhUAd46Q1gHIrvGXBuIX+2XfPTbUQJ+9YPLc5fFOGIcuhcxd2LyG3z8jnt52dt8lbVsmmIib4gxa0IL9ekTtXrxC+dWNWxZUMcHdyL8H6MB0O1C0DASU8h53TPwoiYQ3LahjO1Jpn9L6PqSaOzb5CfJGpzpCVGRmrwYWyUgNqspFaQwiaV5WgfFuohoDPYsZYfRQYUY8vI8+TrpZp2hMGXtXHtnBYrgK2AHFpiL3JhfUwXMw2VwT/NQulcXxsPRNMo4aDXIlK4XIkzYiSfJPNQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FnVdRsUsRMeaAXlmN0NZvXA9tc5nTlCc6Ywsc6ysgO4=;
 b=JW964EWTXS4RttgGtyAlK9qTz760of6AW2R05uYFikcaciJ4K87C8/MSYZia2KtdLd/SBfWXMs6WtC1lB74qIagsMOYAqtD8ZmsznUCnKcRFUsBaon2fxpt+xJ0Q0UpVA1TAFgwFn601pVc23Z2xNyQNX65pCnlV/uCymXKZr5MDLDYoMlQmen1KrsCBYYWJH6oqBHOI6h+3G7FVKCDnk+Xh37Cl8gjMoTuMLaYvGbbk6Jc4XgD2a3IHYoTi5qVyJYYF8KekwG8AckfB5N+/JIxZExToW5ylsjSIU9UvqxaCfgkB517veZ3V2jaxnrh+jDJmhkXKxcgZnxNIb/UT1w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FnVdRsUsRMeaAXlmN0NZvXA9tc5nTlCc6Ywsc6ysgO4=;
 b=rAYHEwfTLqh0vxGx9yD+PuDFEjKYpaGc30SzNsW+kpKCAKhBulU/ifdu8pm4zXAq/Ycmfq2EJ5V9ae/sTY28xLINOEHWgVQmFksKOo41P36w62kGsWOWCDU9Sj0GW6/IRORLzXcK96fxr2maSk4XQZhKlub7Su8vB2oysAm9TxDmpCwCdTGneT0u7L/3RGJ7DRFvRMtmNZykux4n57y5ZnRXhOauVFDhiK/tFzms2Jncefs+Kbb35iGDKW7Pzj72UjJomcVoqUMyrp1orZViqviBMzIyP2NDPoygMsTyaOrVhB1mAyGvHG+/kfqxiybqtG8PCr0ht448J4rHHkopFA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <37f70cdf-a25f-5315-c005-0811ca801e3a@suse.com>
Date: Mon, 11 Sep 2023 11:53:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 1/2] coverage: simplify the logic of choosing the
 number of gcov counters depending on the gcc version
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org, Javi Merino <javi.merino@cloud.com>
References: <cover.1694189143.git.javi.merino@cloud.com>
 <f40f16bad7553f63d81574eac39e1fddaeec0be4.1694189143.git.javi.merino@cloud.com>
 <93c7ff14-2aa8-09a6-f04d-9dbb3969f470@suse.com>
 <4073db4a-0ccd-7047-4d34-25ad18100f12@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4073db4a-0ccd-7047-4d34-25ad18100f12@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0166.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:99::13) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|DU2PR04MB8565:EE_
X-MS-Office365-Filtering-Correlation-Id: 65aa09c1-8e27-406f-b907-08dbb2ad0434
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	C9XS0LY6TSCiBMvowGGzwWoncAliHnEeyNsm1Uo2wG4yu39HcvwOdWFfE2659CTPQGpSAzDl7KvmqvgSmnTF8gAapPykcbgFXQ2m3wJ1xv60QFI3Y8BNUQ3uP0pkYpztQqW2BKnAzxIRPSCUgra/AkmEti3wY3J8qu3xl6tDZxwVQokxQ82m/f8gUHuy/g31yyozMvMR3MdKbF5anOtyaqWO534EaTFy7jLpHa1lwJegIyWs6HU3/URTCeZD00+8VQjAZV8a2Y5wMbpvGld4Wygj6RDTbAp+rF6KZy0ZI+oqRaKd3214I40ffpyvu/unUX9j1W3vgQ4lG7Culte+yW9l+vXMzic8Ae2mjeYdTyd60/QFnY91Zmqq+4GOy3c5mz904aT8jpNTu88QGbY/BACRY57opI/rrAhhtpjHMuGb6mpsJ4yGpB7Z4BCUDS8sDQofyI5NPMnnxR1RlnzOLyJT7GM2IWw3w75U4P3GgGRVR+jronK8W3b/Vr95KPEQDpRtmYIrIMnQ5VdUYUgqDlme3W+h9UfDHHGCzFOiMnT/CBRTOG62FmakSx1rni5wGqy7ofCD/P1EK7rtQxaZkT9WG0qqizVn491iYcKjPiv5kIBaByDq/RqdG281onC4wRuIGiGw4tJ43fTBQ7ivBw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39850400004)(346002)(366004)(376002)(396003)(136003)(186009)(1800799009)(451199024)(6506007)(53546011)(6486002)(6512007)(478600001)(83380400001)(2616005)(26005)(66476007)(54906003)(66556008)(66946007)(6916009)(4326008)(316002)(41300700001)(2906002)(5660300002)(8676002)(8936002)(31696002)(86362001)(36756003)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VTY3Y01pazU5dHBaSlNVb0IzcXNOYjY2WHBoZWZuaGtxZm8rb0ovQnA5WlpJ?=
 =?utf-8?B?R004bjRzMDM3eHJDd0JiVE1BOEwvQlY0c2hUQ1FpaGVuRjNRWmY3V05BNDBr?=
 =?utf-8?B?MzM1dUdEMUsrWlRZZTNkcTVNMFFwaXFta1dld1ZwdVRZZEdFNWZuSjJ5ZmZs?=
 =?utf-8?B?bHBWWDZPeEcwdG9GZi90ejZPSWxTc2FqTm93RGFITisyMTRYd0lLdlZQMW1M?=
 =?utf-8?B?NCtqR0llWjlGWEc0WWRzODNWK0t5SGt2Y1YzeWhnY3FGenlEa2pDb2s2eTNH?=
 =?utf-8?B?SEZBMzV6S3ppS3FOR2xQNTdvNEFyOWlSU0VyUll6eHQwZVc2OGxvOGZzME5v?=
 =?utf-8?B?SG0zWDViS0JROHZSRXVjYlBZN1hLWmxHZTdVcCsxV2wxOHBYQnFCNmdlNHdy?=
 =?utf-8?B?NS9nYnY3UWpSN0hUU05DYm9KR3VYWXlCdkxBcUpnSUJSSDhHSHFUbzRHWGZ5?=
 =?utf-8?B?d1Bmb3pDc1A3cGYrM2lCSWhQVlFNY09xUUkvZGtSRkVUcTRqUGphOEpiUytE?=
 =?utf-8?B?RXRoNW1ORHF3bHErTmlsRVc3RDJsSWViMHV0dHB3RzFYRml2TmFUR2FMWStV?=
 =?utf-8?B?UGZ6YmVsUk5qRDlPeWNWNVQ5dzR5RUVSUjhpbG5UOHpwdXMwWGM2TlFER1F1?=
 =?utf-8?B?Nng2V1pUY3NxbFdxVnJNTFhHTURWY0NtU05uSVJOK1cvQVRtWW5CNkQrdkhh?=
 =?utf-8?B?ck53QnQ3eXNYRlBhc1VlYjRPL1JnWnh0QlFEdTZOUDcxNmIwVFVjaEs4cE5L?=
 =?utf-8?B?UnlCNU1CdHFrUUtGTlEreEg0akxSRFpmQk0zRXVtWTFad2t5NXRHMmRBUlJ0?=
 =?utf-8?B?UVBaRUdmRVFjbUlTUTRORjZOUG9CQk5iUDlJalNYelg5YmhWSWFMM21SMzZ1?=
 =?utf-8?B?MXk5Nmd3cTVDWDhwWC9USm92cDBuOTgwQWxCQWF3ZUNEZ2U4eDh5RnpLTDh6?=
 =?utf-8?B?VGlIM052SktkTVlSZHljMjdHT2U4TE9pVmlpZmVrVElVQmNRVkxvS0w2QWxW?=
 =?utf-8?B?SEYrTTFXbDFFczlaMU5KR2ZVUmlBTGZWbVU4ODBlTmJOVWpCL3Q3OHdkUmlJ?=
 =?utf-8?B?ZVptU3IrSmhBWGFqNTBwWjhDMi90a0w2K2ozaFY1RkR0RWdsRlV6N2o4b0Rn?=
 =?utf-8?B?TkNjN2JPdFhWRUE3bmdGQ3Z4V1BUblBDT0F0NHF6YU1sMmhaaWJQZHJaR2Jk?=
 =?utf-8?B?Rkx6Ti9ZKzgwN0dlUUloYlQ3WUx5TzlWWUNyNlBsN1IrQlorTkpaT2tvVlNS?=
 =?utf-8?B?NHVmbGp2RnBIS2ZUSEdaYlc2OXoxQk5SZVdidGdoZ2oxVytmRHNDaXdvRXlD?=
 =?utf-8?B?bzRVbEt1bFBNRWRGS0o0dEVwdmNQakZ0Wm1NZ3BGUmhqSGxPclI5dW90dlF4?=
 =?utf-8?B?RmtIRE1lMmVuZHh2MWxOMEZNSWtEMERYOUdzSTNRWk4yS1hzYVhDM0ZFSHdq?=
 =?utf-8?B?dEpSYnJIQjJBTE9WcE1TOVhjYW5vZTlMeE5wbjZhT2Q4RTFCY05xcHp1NWE5?=
 =?utf-8?B?dnRaZU5oQmFYWW8zTXVKRnVFNTVZUkRZSkVXTHIrR2s5QTlKZmpYUmJKak5a?=
 =?utf-8?B?S1UvVHluRE5WVzYwNVNiV2lPRXVvM3p1QVVmSnh2emdud1hld1NjNldBM3Y5?=
 =?utf-8?B?WkJMYWJ3ZnpVeC9qRFd0aUNIUk9sUFRtMWljM1crKzV0SWR2eFgvVVZLOFFU?=
 =?utf-8?B?WUlvM3FiNTc4Zkk5QTN6THIzeUY2a0tQd2RWbUtzQi96OXA3NnYrTHNiSFhx?=
 =?utf-8?B?MmR3Y0lwUS9EWUhqMzlLZEQ1ZDZsVVh0Y2lmYUQ3bzFsTTlMUlJYR0g4VXMy?=
 =?utf-8?B?bFhEdEhtTk5xNlRJSDk3TWJ0MHB6Vk56eFZKU3J1R0lxemlhVzZQNlpXcFJw?=
 =?utf-8?B?bWVMUVhRVDh1cVEwdXJhZU8xQ3pWeU5pWFhKR1N0ajNFclJ5dUhCSkFBdGsz?=
 =?utf-8?B?VlNOT2p1cGdFWVV1VEo5dkxnRnpDWWJVRWY3THBWeWowMzc4eFIwRXdqYVRF?=
 =?utf-8?B?VCtyK0dVbEJ6VkZyN2tGNDN3MmFkMWc0WWQ5UlFyNGgvbllaQ0x1Y29seC9l?=
 =?utf-8?B?djJKN2p6SjVIWndzenhnVUV2NitTc3R1MEtIbFJyeXdhUEZOdVhjR2krQzhs?=
 =?utf-8?Q?TSkkjK175QGdJF3NgeQ3QL1MP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 65aa09c1-8e27-406f-b907-08dbb2ad0434
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 09:53:57.3848
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ufpoVAsZ+FlyZrcoBOhhsCCLzywR/4dFC5qw3F0HWY5whSuObiPxHZtgBWhPogmWp7YeFTfJuI4wES/etb6CqA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8565

On 11.09.2023 11:48, Andrew Cooper wrote:
> On 11/09/2023 8:54 am, Jan Beulich wrote:
>> On 08.09.2023 18:20, Javi Merino wrote:
>>> The current structure of choosing the correct file based on the
>>> compiler version makes us make 33 line files just to define a
>>> constant.  The changes after gcc 4.7 are minimal, just the number of
>>> counters.
>>>
>>> Fold the changes in gcc_4_9.c, gcc_5.c and gcc_7.c into gcc_4_7.c to
>>> remove a lot of the boilerplate and keep the logic of choosing the
>>> GCOV_COUNTER in gcc_4_7.c.
>>>
>>> Signed-off-by: Javi Merino <javi.merino@cloud.com>
>>> ---
>>>  xen/common/coverage/Makefile  |  6 +-----
>>>  xen/common/coverage/gcc_4_7.c | 17 +++++++++--------
>>>  xen/common/coverage/gcc_4_9.c | 33 ---------------------------------
>>>  xen/common/coverage/gcc_5.c   | 33 ---------------------------------
>>>  xen/common/coverage/gcc_7.c   | 30 ------------------------------
>>>  5 files changed, 10 insertions(+), 109 deletions(-)
>>>  delete mode 100644 xen/common/coverage/gcc_4_9.c
>>>  delete mode 100644 xen/common/coverage/gcc_5.c
>>>  delete mode 100644 xen/common/coverage/gcc_7.c
>>>
>>> diff --git a/xen/common/coverage/Makefile b/xen/common/coverage/Makefile
>>> index 63f98c71d6..d729afc9c7 100644
>>> --- a/xen/common/coverage/Makefile
>>> +++ b/xen/common/coverage/Makefile
>>> @@ -1,11 +1,7 @@
>>>  obj-y += coverage.o
>>>  ifneq ($(CONFIG_CC_IS_CLANG),y)
>>>  obj-y += gcov_base.o gcov.o
>>> -obj-y += $(call cc-ifversion,-lt,0407, \
>>> -		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
>>> -		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
>>> -		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
>>> -		gcc_5.o, gcc_7.o))))
>>> +obj-y += $(call cc-ifversion,-lt,0407, gcc_3_4.o, gcc_4_7.o)
>>>  else
>>>  obj-y += llvm.o
>>>  endif
>>> diff --git a/xen/common/coverage/gcc_4_7.c b/xen/common/coverage/gcc_4_7.c
>>> index 25b4a8bcdc..ddbc9f4bb0 100644
>>> --- a/xen/common/coverage/gcc_4_7.c
>>> +++ b/xen/common/coverage/gcc_4_7.c
>>> @@ -18,15 +18,16 @@
>>>  
>>>  #include "gcov.h"
>>>  
>>> -/*
>>> - * GCOV_COUNTERS will be defined if this file is included by other
>>> - * source files.
>>> - */
>>> -#ifndef GCOV_COUNTERS
>>> -# if !(GCC_VERSION >= 40700 && GCC_VERSION < 40900)
>>> -#  error "Wrong version of GCC used to compile gcov"
>>> -# endif
>>> +#if (GCC_VERSION >= 40700 && GCC_VERSION < 40900)
>>>  #define GCOV_COUNTERS 8
>>> +#elif (GCC_VERSION >= 40900 && GCC_VERSION < 50000)
>>> +#define GCOV_COUNTERS 9
>>> +#elif GCC_VERSION >= 50000 && GCC_VERSION < 70000
>>> +#define GCOV_COUNTERS 10
>>> +#elif GCC_VERSION >= 70000
>>> +#define GCOV_COUNTERS 9
>>> +#else
>>> +#error "Wrong version of GCC used to compile gcov"
>>>  #endif
>> How about inverse order:
>>
>> #if GCC_VERSION >= 70000
>> #define GCOV_COUNTERS 9
>> #elif GCC_VERSION >= 50000
>> #define GCOV_COUNTERS 10
>> #elif GCC_VERSION >= 40900
>> #define GCOV_COUNTERS 9
>> #elif GCC_VERSION >= 40700
>> #define GCOV_COUNTERS 8
>> #else
>> #error "Wrong version of GCC used to compile gcov"
>> #endif
> 
> Forward order is the one that results in a smaller diff when inserting
> new entries.

Hmm, even in forward order one prior #elif will need touching (to amend
the version check), so I'm afraid I don't see such a diff being smaller
(it's uniformly -1/+3 afaict).

> More importantly, it's the more natural way to structure such a list.

I would say multiple views are possible: Naming recent compiler versions
first may also be viewed as beneficial. In the end what counts is how
easy it is to follow the overall construct. And I'm pretty sure less
complex expressions help there.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 10:00:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 10:00:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599225.934540 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdi5-0006CN-Cf; Mon, 11 Sep 2023 10:00:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599225.934540; Mon, 11 Sep 2023 10:00:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdi5-0006CG-9K; Mon, 11 Sep 2023 10:00:01 +0000
Received: by outflank-mailman (input) for mailman id 599225;
 Mon, 11 Sep 2023 09:59:59 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=nwba=E3=citrix.com=prvs=6119d0f35=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qfdi3-0006Ao-E6
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 09:59:59 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f6312079-5089-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 11:59:58 +0200 (CEST)
Received: from mail-sn1nam02lp2046.outbound.protection.outlook.com (HELO
 NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.46])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 11 Sep 2023 05:59:55 -0400
Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12)
 by BN8PR03MB4994.namprd03.prod.outlook.com (2603:10b6:408:da::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 09:59:52 +0000
Received: from BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912]) by BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 09:59:52 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f6312079-5089-11ee-8784-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694426398;
  h=message-id:date:from:subject:to:cc:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=lrlhVIWm5y5heiCQhO7jKJlpyWr9NUgj95emm4edy0s=;
  b=YEEWvuwRXlego/A7f9fXB/9yWaath7j0GzZB3uvQOmiIvSRhfUkgqRPf
   A2CpKpyEJLKvbKk1sEEM3NLdo5bFbY6+AlKEmbPKUVePMLWh6g3VPnn8K
   HsV8+mbq3so7gAGGkbUQeuI0+fZt/xMpInSU8Y4MEAeCMor0Lp7PSU5C2
   c=;
X-CSE-ConnectionGUID: sdt6kkT3RJS0odtZSIg/ug==
X-CSE-MsgGUID: poki8Lx6RyKjUNRZ9o84jA==
X-IronPort-RemoteIP: 104.47.57.46
X-IronPort-MID: 122660808
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:tNERt6LESFYrCteZFE+RMpQlxSXFcZb7ZxGr2PjKsXjdYENS1GdRy
 mMcWW6OOPuMMDb0eYwgPoS08klVuZODy4QwQFFlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrZwP9TlK6q4mhA7wVmPasjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5sDX0Q9
 v8kcwovVUiEi/6E+5O0DfRj05FLwMnDZOvzu1lG5BSBV7MdZ8mGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dopTSNpOBy+OGF3N79U9qGX8hK2G2fo
 XrL5T/RCRAGLt2PjzGC9xpAg8eWx3mlBtpCTO3QGvhCmFqQxzw3GEMsRHi5nN+DuB+5C45dA
 hlBksYphe1onKCxdfH/VRClpH+PvjYHRsFdVeY97WmlyLfQ4gufLngJSHhGctNOnNQtWTUg2
 1uNntXoLT9iqruYTTSa7Lj8hSy2ETgYKykFfyBsZRsI5ZzvrZ8+ijrLT81/C+ilg9vtAzbyz
 juW6i8kiN07j8cV1uO+8ErGhTWErZzOUwJz7QLSNl9J9St8bY+hIpeusF7S6K4aKJ7DFgXf+
 n8Zh8KZ8eYCS4mXkzCAS/kMG7fv4OuZNDrbghhkGJxJGymRxkNPtLt4uFlWTHqF+O5dEdM1S
 Cc/YT9s2aI=
IronPort-HdrOrdr: A9a23:WFtD2aMgI2V4fsBcTjejsMiBIKoaSvp037BK7S1MoNJuEvBw9v
 re+sjzsCWftN9/Yh4dcLy7VpVoBEmsl6KdgrNhWotKPjOW21dARbsKheffKn/bakjDH4Zmvp
 uIGJIObOEYY2IasS77ijPIbOrJwrO8gd6VbTG19QYdceloAZsQnzuQEmygYzRLrJEtP+tFKH
 KbjPA33waISDAsQemQIGIKZOTHr82jruObXfZXbyRXkzVnlFmTmcTHLyQ=
X-Talos-CUID: 9a23:axCECmztiN2/Qc6yIGIXBgUPFtx7cX7hl03yGBe/BXpbc5yaDkKfrfY=
X-Talos-MUID: =?us-ascii?q?9a23=3ANcO/sw3Wh/uwID8BfT4KMsegAjUj+6OtCRApgcs?=
 =?us-ascii?q?8quqGCApKCWaa3Gi1a9py?=
X-IronPort-AV: E=Sophos;i="6.02,243,1688443200"; 
   d="scan'208";a="122660808"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Uc3bUoUKb2njMwA9wTBOTEzrKV8DTSoy275aR4cjapyWeTknQ5VF1ehtFJN9awbZgv9V3VkrBHddnjtqycKtfOHJSGopUoDWOnP+3UUJ8qc0Y2s7tZoAdtocZr+eZJieeoKVSP0MDiuersmxyarztuNOfq3wzh+UtQrGdxJkM0NzLeSZU6mXze6ipHgIWfG/cZFfzBwpuFniDf+eFUuX+E357B9WcRNMKcqxAVNzMM0h39A3XI+/CrszwhsJ5fuWK+H3kAdasaWrjpDcWJFD1mB5CL4xDLj/tQtbWyX4tBe7Oo4QmVlEz5zpt3hYFblQLwblkG4z0cQk/BOfLJMQfw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Ga+XuRzbufw66ZoM84Ke2eonqarSoIkRltvF+VB1wck=;
 b=muilFuK84OVQ7klE90jHf7RtvVv0XrXQ4bw8pt32nt/AIOhFAXg3VMk9Ka5k2dQDqXRpIcNBqriYvpcx63rLvk9a9WDIvg9ItUijKQjN8sl0F1NwMgiZhOd/kVfoHK0kPWPCt15Rhe9gZf/ltthPKzbUTyofslZQzOKbMAJh1ato7xgY83dMxxZfgaX+CnlIhskm4Dp47PXoLoe66ZLOLJe9kpBm9NXVi7BA4lY82f2FojlN66TuFMS5SyDIrsmxj2nx4enoiEuQKiQsAEf2P51xIaXO+IGZP3ro//rfgA+ZOMW7QNm4LpbY7yPoAY/zvyYXPehEEkjY5KNTAyK8Bg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Ga+XuRzbufw66ZoM84Ke2eonqarSoIkRltvF+VB1wck=;
 b=mlHktvJQn9G8B5TRR7Sh9SqXKKW4LiLkmbM1dTb+Sf2PMlpMECdjPEy17BQ59CiSzX35qZeBFA/968S1Igk1JskdBUpfuev2EaZ8k1hSd0Eo5DoK1JSuWjc42pf0l/eEUqlzFWe6IZEZxENqq176Ysts+4YykNxVVfKIO2pYymo=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Message-ID: <27b478c4-16a0-2e1e-b580-ebfcbd29d1c0@citrix.com>
Date: Mon, 11 Sep 2023 10:59:46 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v2 1/2] coverage: simplify the logic of choosing the
 number of gcov counters depending on the gcc version
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org, Javi Merino <javi.merino@cloud.com>
References: <cover.1694189143.git.javi.merino@cloud.com>
 <f40f16bad7553f63d81574eac39e1fddaeec0be4.1694189143.git.javi.merino@cloud.com>
 <93c7ff14-2aa8-09a6-f04d-9dbb3969f470@suse.com>
 <4073db4a-0ccd-7047-4d34-25ad18100f12@citrix.com>
 <37f70cdf-a25f-5315-c005-0811ca801e3a@suse.com>
In-Reply-To: <37f70cdf-a25f-5315-c005-0811ca801e3a@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0691.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:37b::19) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BN8PR03MB4994:EE_
X-MS-Office365-Filtering-Correlation-Id: b377de0e-7e6f-4d41-39b9-08dbb2add782
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kEBTSfC1BbtWYkdMzaMkXcI6d/3eysZvbCf5a7TQdKWu4neBJ+W62EBPoWho0TnzWedEq7DWc9+X+fEn6m2VaPAeUSyOpYwJaYp1A+U34vK2oz5La5rsQN85MN+n3i5jYyhzB7kDvM1V7aidBAF62HkRNnxJ27srOimDY1DgI+l+ojDIa3iUxkCD0xHk62QMjXm/8wMEwjtq9ztkKURkHpp2HDH81LwMPZVLJ6sdYGfiiP2kZblG0R8L8XoKvCA0WkTKcSUst6Q23IJmLrlZGYOpDRxqP5nxrfDI406fb7YdQ9oMJe1zKUIcFsWcuXPn0PCjEqA5m1px68sHRSkMUA+kWrZjJpbhvtBhrTo9NObOzmTKA8fTxByoXX1Wbl5yT/a42mVzmg6fh9OzU/xMzp8BSxAo0SFLBr7IUUUJRd8U6L7s96zh8/0XGtpsB5sJ9HfeEGzEQwJHGnLwYX98J+qth9jKjea+VamOe9HEdVfSF/C1TUGZ90Tb8x0q+9/I9M4Ny1SuNOuK94NSrTuVX60Amb+6mfTJ3QNF5DN2/oWnkqLBuxCFMdXHcMdzZPd+ouP2qNF292LbS+4/KoJ4Lb58ZKDglhjU4WHOJZDwcrws0uBPP/cV3//MJFrWj2fuGX1lnBZNx+RuvjiA2o5T+Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(396003)(366004)(346002)(376002)(186009)(451199024)(1800799009)(41300700001)(6916009)(316002)(26005)(31686004)(478600001)(2906002)(8676002)(8936002)(4326008)(66556008)(66476007)(66946007)(54906003)(5660300002)(6666004)(53546011)(6486002)(6506007)(6512007)(36756003)(2616005)(83380400001)(82960400001)(38100700002)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Sy9ZQ1VablBZbjBYS1p1UHE1RGtielAvd1ZvODRIdW1TVUhSRjVrWTE0K0Jr?=
 =?utf-8?B?amdkV1FYUlNqaVg3WWpTRFlhaG14QnJPK0V1V2Y0emVBM3d5OU1lRUM4ZnJk?=
 =?utf-8?B?U3c1SVpEQlVQQVJRcW9sWWpubkhBbWUraTZnQzVUMHI1dE56dmczdGFtdEho?=
 =?utf-8?B?bnV6YXFqM1dIUmRiaUg5NkMyYUQvK296U3JjOVlRMjNYeHlWdjA2VlE5VjBJ?=
 =?utf-8?B?a29PeDRpbFMyazZQcmlvMUhObEpTZW9obld1d0s3Z1VwanFRRVVsby80SGRL?=
 =?utf-8?B?WmlKejc0MTBvTE53c0VqMjBIK1Z2RkNLUnFMK3hFdkF3MWJEZHN1akV2RTla?=
 =?utf-8?B?dWViSWtGVmt5dlJqdUwyWjN4RFhuQlRraTg2Y3FYUG5VZ2EwWVpidnJNeXgy?=
 =?utf-8?B?L3hjN0Y5YjNFNlNmSnFQUUJYNW5nSkh5MXByRGhEaHRvd0xqL2JYOXVXK21I?=
 =?utf-8?B?UXZqYzNXQks5UzNnWmhVcExUY2tqek9MdnRiUWhZdkE1OEFEa1lrL0tkZTRQ?=
 =?utf-8?B?L1N0YWE4UTlGWGk1dnJFbXc0bTFGcUlzYStkSTR5T1Bqb2twVS8wVkExNDhI?=
 =?utf-8?B?THFtdkU0MEFSanpLZXplVnFvUURqdWJvcHh3RklFWllYaVg3THBsVjJJM2VT?=
 =?utf-8?B?Q3RMaHJVTDVsMEttL0hKSVgzUGtpVCtCQVN2bE5LUUFqd3Jzd0lWbitqV1dh?=
 =?utf-8?B?UkF6L2lkNU14dFZHWGorRnVPQTNMQzJBQVNmNHI1YVkvRnpkcGlBZUtOTEI0?=
 =?utf-8?B?Z2c1MjNvVnc5S3ZiS1dEb0ZobVlWY0ZLWFk0RlhPaFJCbUNEUFFFOFZZK0g4?=
 =?utf-8?B?TG1tbHNBVkllL0JoNjlrSjF1azdTU0RHNFhHTG45WngwTFBWblM4ZWdaS01F?=
 =?utf-8?B?MEorWVZoY0I0K2MxRnNqbXNER2Q1N0M0VG1jalZxc0xKdll2YjZNSGZIRDFa?=
 =?utf-8?B?aDM0M1Z0YlBNTWc3c1JWM253K0hzZTNYN3hPbDliSzlodWpBRERIYzBlNUlt?=
 =?utf-8?B?Z0M1Y3dLdEF0bkJvTHFocGErTktCVmEvYTVwV0llck5RSEV1ZW1vYmlCSjdB?=
 =?utf-8?B?QkJqblNISWVBcUxDT2RZNXlTTm0xMjF6MTlQOTFaK211SnpRT0VIS2drVjRS?=
 =?utf-8?B?SnpxdlJSNXF1cjRqR2tNcVczeGNycWFQZXB1RGRuclJZdmxyMHNjaUlMa29C?=
 =?utf-8?B?b0UyNmFKQlZqSW9NN3QwZFlBYVRoajY1OXoxSEdidjBlU2pEQWMwSVBuS1Q1?=
 =?utf-8?B?SmhpNll6VlZ4YlNPZVNMWVdhbS9rQmNuM0dJbjJNU3lEZGJPdHMwQ2FWVTNz?=
 =?utf-8?B?S0RrVFNzbjZENGE1T1JLd3BXZnFqOFZHQzdqaXFZSUgvaGZPZm1Fc3VvbmUv?=
 =?utf-8?B?MTJ1UG9mVEs0cVM4N2JiVy9jdTM4UzdRcnRER0xBYm5SQVVBekJMQ1VCNGZC?=
 =?utf-8?B?MnE4ZE9xMkNPUVc5dFBsS3JlWkxUVEZHOEZnVmo3WkkrSzZ6Q25aOEFUdTBN?=
 =?utf-8?B?bzFoSmptTi9pTWVOTjFvRVVpcDNmQU1wbUJQUjgzTUF0dUFsN0xtZDFENzBV?=
 =?utf-8?B?M2dKc0hQbDBJblkyTEkwMnRiNjdYSjNpbS90a1ZtWnczREx1TWI5MUo4cUNy?=
 =?utf-8?B?N1NqWDh4MTJIdldiVzcvbzFnVDNNcXhQNUtNcmhNYXpSOEVGaXN3SXRKb29h?=
 =?utf-8?B?UHhsWWY3WXZnWWhYR0poUHVtNHROVFREbWlGVDQ1U1Vab05XVmdUVXNqMXhz?=
 =?utf-8?B?WlgxREluUWxqckhnWVhDc1pSTjZFakZRa0dYaGNOSFR6ODdTMG5XeHhRSm5w?=
 =?utf-8?B?TW9PK1Q2YnVyWXVBUXJRMlNJV3QvSG9uV0ZKcGNaOUhlNk1PcHcwbzdDR2I3?=
 =?utf-8?B?Nk1Ja05STjFhT3FvWmIxY0VWdnZtN21hY3U3dkNFUDl1K0FiQTh2bU1rSVEz?=
 =?utf-8?B?WEVKcjF4cktuYytiQUYzKzc5MWF2Y2RXTXZvUlEzVFNLK3hnOVBLY3IyY2ZO?=
 =?utf-8?B?TlZpNzFqVkQvbG91OGRxKzV5NDRPOUdyZlREbW1JSVdhSnAwSEk5czVLbENz?=
 =?utf-8?B?MGxoTzhwWWlpL2t1M29zd082blpMZk1pTC8vZ0QzWlEwMUd0eDh0ZjhkUi9w?=
 =?utf-8?B?SHBCM1hoMW1kMEJMWTdNaWk1Zzg0cVdLQ0tBU2NoSm5yYmZyMXhuZnY0R0xC?=
 =?utf-8?B?cVE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	/ei1Td3ixD4aIW424trACiL89JDIfF/byr25+8M6Oki4KUH5cimlpsXk+Jj9x2wrLwgI0gAUo3WXSHlNnJbrXkVc6w5PTDLe1HUo9F+WQIWuB3IeLIByIHkfRb24ETUdu1f2al3hI2YnICzi62Oxv6MdpKqhKwAZbVQcakeGwD5Ra1hJyowcppFotac7HELtGp5vRSn+5y+8db/+/jMlP3DY4lbPOrWlVQZ8lWvryYYUY1jS4C5psRoLmtVABU4mNQxOfy2iV0EXYpHO2IqXJF79UPIhPkuhw4kTJ8PkXOAH9ypCbH9f210dmmmhL9rwz5vPXw8o/6XLZZDGz4Wrgkj5JvPMYnGhHOaidyFMQiAuHiwhH81y8/uuJsoiKkJ+OY7k5+IAJ4FtdVYV1NgL5QtJ2wKR2Fbb2IjqOyRCd+CHAO/bVltTiokwwzQ+/sLf3jiKVUC5ZU9JzQ9qc6t/p6qVJ1S1y5e04LwvCToL/rHog5W9zjT8oRJoNP6Q9iDIqaZqE8Qt+v76xDjRzkAK/QXC95DfnRYBnW0KrAAmzK23r2BYaT7NlFwLG1+UPvK42Np89IQqhWERBX8llWjHkYMBc8T9dUAK/fUgnLC0D6aPc0t/fy9rXKQ524MmXdGm9lAZYf0jt6HtRVOQ5D6TwyQAw0kc+V+v9Z103U614CX0u1goSNJi8gVEAdnpV6LsvaDV0Dw74icLzPFODga4NP4TQC6ab9oqVaE9n7oZBFLtLh56tL4YT8f7jL5Hqa1vM/XzBzUb549XIbxWDaV80iBAfrEKJyn+sVcKosuRn/CCMxw4+sq6FsQrFBl4Qh75bTSozz0+hg1Gheg/lPHy799A8cekXmUzsYwIR8GBXxe29tMqfoifvx1XqZHc8B/3
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b377de0e-7e6f-4d41-39b9-08dbb2add782
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 09:59:52.0119
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: CyCyrd5b0W+aHUoZr1mpRa2uAyr92QbLRrkvfLDkXM9mH5AhqLJ4nvBma4QkvyKOIEJcFe0so5fZf8IFFK9ciYeVFRQ3bFGIFawMJ3TF9cQ=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB4994

On 11/09/2023 10:53 am, Jan Beulich wrote:
> On 11.09.2023 11:48, Andrew Cooper wrote:
>> On 11/09/2023 8:54 am, Jan Beulich wrote:
>>> On 08.09.2023 18:20, Javi Merino wrote:
>>>> The current structure of choosing the correct file based on the
>>>> compiler version makes us make 33 line files just to define a
>>>> constant.  The changes after gcc 4.7 are minimal, just the number of
>>>> counters.
>>>>
>>>> Fold the changes in gcc_4_9.c, gcc_5.c and gcc_7.c into gcc_4_7.c to
>>>> remove a lot of the boilerplate and keep the logic of choosing the
>>>> GCOV_COUNTER in gcc_4_7.c.
>>>>
>>>> Signed-off-by: Javi Merino <javi.merino@cloud.com>
>>>> ---
>>>>  xen/common/coverage/Makefile  |  6 +-----
>>>>  xen/common/coverage/gcc_4_7.c | 17 +++++++++--------
>>>>  xen/common/coverage/gcc_4_9.c | 33 ---------------------------------
>>>>  xen/common/coverage/gcc_5.c   | 33 ---------------------------------
>>>>  xen/common/coverage/gcc_7.c   | 30 ------------------------------
>>>>  5 files changed, 10 insertions(+), 109 deletions(-)
>>>>  delete mode 100644 xen/common/coverage/gcc_4_9.c
>>>>  delete mode 100644 xen/common/coverage/gcc_5.c
>>>>  delete mode 100644 xen/common/coverage/gcc_7.c
>>>>
>>>> diff --git a/xen/common/coverage/Makefile b/xen/common/coverage/Makefile
>>>> index 63f98c71d6..d729afc9c7 100644
>>>> --- a/xen/common/coverage/Makefile
>>>> +++ b/xen/common/coverage/Makefile
>>>> @@ -1,11 +1,7 @@
>>>>  obj-y += coverage.o
>>>>  ifneq ($(CONFIG_CC_IS_CLANG),y)
>>>>  obj-y += gcov_base.o gcov.o
>>>> -obj-y += $(call cc-ifversion,-lt,0407, \
>>>> -		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
>>>> -		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
>>>> -		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
>>>> -		gcc_5.o, gcc_7.o))))
>>>> +obj-y += $(call cc-ifversion,-lt,0407, gcc_3_4.o, gcc_4_7.o)
>>>>  else
>>>>  obj-y += llvm.o
>>>>  endif
>>>> diff --git a/xen/common/coverage/gcc_4_7.c b/xen/common/coverage/gcc_4_7.c
>>>> index 25b4a8bcdc..ddbc9f4bb0 100644
>>>> --- a/xen/common/coverage/gcc_4_7.c
>>>> +++ b/xen/common/coverage/gcc_4_7.c
>>>> @@ -18,15 +18,16 @@
>>>>  
>>>>  #include "gcov.h"
>>>>  
>>>> -/*
>>>> - * GCOV_COUNTERS will be defined if this file is included by other
>>>> - * source files.
>>>> - */
>>>> -#ifndef GCOV_COUNTERS
>>>> -# if !(GCC_VERSION >= 40700 && GCC_VERSION < 40900)
>>>> -#  error "Wrong version of GCC used to compile gcov"
>>>> -# endif
>>>> +#if (GCC_VERSION >= 40700 && GCC_VERSION < 40900)
>>>>  #define GCOV_COUNTERS 8
>>>> +#elif (GCC_VERSION >= 40900 && GCC_VERSION < 50000)
>>>> +#define GCOV_COUNTERS 9
>>>> +#elif GCC_VERSION >= 50000 && GCC_VERSION < 70000
>>>> +#define GCOV_COUNTERS 10
>>>> +#elif GCC_VERSION >= 70000
>>>> +#define GCOV_COUNTERS 9
>>>> +#else
>>>> +#error "Wrong version of GCC used to compile gcov"
>>>>  #endif
>>> How about inverse order:
>>>
>>> #if GCC_VERSION >= 70000
>>> #define GCOV_COUNTERS 9
>>> #elif GCC_VERSION >= 50000
>>> #define GCOV_COUNTERS 10
>>> #elif GCC_VERSION >= 40900
>>> #define GCOV_COUNTERS 9
>>> #elif GCC_VERSION >= 40700
>>> #define GCOV_COUNTERS 8
>>> #else
>>> #error "Wrong version of GCC used to compile gcov"
>>> #endif
>> Forward order is the one that results in a smaller diff when inserting
>> new entries.
> Hmm, even in forward order one prior #elif will need touching

 #if GCC_VERSION < 40700
 #define GCOV_COUNTERS 8
 #elif GCC_VERSION < 40900
 #define GCOV_COUNTERS 9
 #elif GCC_VERSION < 50000
 #define GCOV_COUNTERS 10
 #elif GCC_VERSION < 70000
 #define GCOV_COUNTERS 9
+#elif GCC_VERSION < FOO
+#define GCOV_COUNTERS BAR
 #else
 #error "Wrong version of GCC used to compile gcov"
 #endif

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 10:16:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 10:16:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599234.934550 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdxj-0001mc-Nm; Mon, 11 Sep 2023 10:16:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599234.934550; Mon, 11 Sep 2023 10:16:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdxj-0001mV-L9; Mon, 11 Sep 2023 10:16:11 +0000
Received: by outflank-mailman (input) for mailman id 599234;
 Mon, 11 Sep 2023 10:16:10 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=AVcC=E3=invisiblethingslab.com=simon@srs-se1.protection.inumbo.net>)
 id 1qfdxi-0001mP-6r
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 10:16:10 +0000
Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com
 [66.111.4.26]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 340e78cc-508c-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 12:16:00 +0200 (CEST)
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id E9A7F5C0105;
 Mon, 11 Sep 2023 06:15:58 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute5.internal (MEProxy); Mon, 11 Sep 2023 06:15:58 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 11 Sep 2023 06:15:54 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 340e78cc-508c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-transfer-encoding
	:content-type:date:date:from:from:in-reply-to:message-id
	:mime-version:reply-to:sender:subject:subject:to:to; s=fm1; t=
	1694427358; x=1694513758; bh=aPzNQ+neXMm/yZ8qPUfmvxpeUP/0YW8350J
	wnOmxA2U=; b=2cwVvj//HfqSw1BDYvqOm8bLc9HeElkkJaqyQUKBO49US2sU9LF
	NEtEYBw9eVxpCC28K5RoNobou1hWE7Byvsu/xd/Uj61muJOTNJNg4CIC9Qufgta2
	VklRWmKdC8wcj1H/ZKhKjt25SuqiJb8XirSH0Q+6PvsaHDKUFddSATNjOQbOB0uL
	kcQwxcbhpaA+S9JIRqp579GCRn74TfUpNf64O4P1vJCPIKUC9cVpArvVI9vb5sPu
	dclYJ9RAcC0+i9r8kaBRxneHd2ZpNieSadzX6bvhPSOC+tafAEyS/Nllgy8Vt+ed
	AFYQMHi+pP23zx3UcMuF4NOwdYbkDF0vuCg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-transfer-encoding
	:content-type:date:date:feedback-id:feedback-id:from:from
	:in-reply-to:message-id:mime-version:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm1; t=1694427358; x=1694513758; bh=aPzNQ+neXMm/y
	Z8qPUfmvxpeUP/0YW8350JwnOmxA2U=; b=LVV0DzKq28a52Dy6mMn6bz7aPyrGo
	Vcb6Sha0hlGIBIAcAERoURHdDzVaP0igJHCBUaOhyTX2D1lFUdmXgNqFeBAhRnE1
	NLZaNoKuvW6w5PZJ3B+9Idfu2UAlw01+6EvRIduIZDpiKZpepmdARs1wF+Uw3kip
	C68CvvmII1UsheFfw3MGuT1HjedoH4DQM7fZbJotnA6euaM8GJ0aEHURopKqSfdl
	7NNsg401HMpq2/8JQmTXVzX2WFXKjFJPhjyOLmU3t7U6eZNnDD8lLN/6R2fuNS99
	B5mQKZnrrl25Z8zQz81e/1cwtjXFPZbwFBZuSR8L7z5wIrDScXT/GxM6A==
X-ME-Sender: <xms:3uj-ZBxkinvba8H-wlggmyA34L3-V5GAmkVKidRhpXR0Qp9yYAktaQ>
    <xme:3uj-ZBTko8lMSefSPV7zRb7THkd7Kz5szNigKn_NofvhsmznCPgH20dFk0RmlRQuS
    fzDfhz7BRkM4ss>
X-ME-Received: <xmr:3uj-ZLVsgqtMUabgCeM8WOioizKuMx74kHYKieZdoflh3rtB4AR8kimQfNKrNg>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudeigedgvdegucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhephffvvefufffkofgggfestdekredtredttdenucfhrhhomhepufhimhhonhcu
    ifgrihhsvghruceoshhimhhonhesihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtoh
    hmqeenucggtffrrghtthgvrhhnpefghfeikedtkeeuveelkefhvdevhfelleekfefhudet
    heefhfeikeeludetfeevueenucffohhmrghinhepuhgvfhhirdhorhhgpdhkvghrnhgvlh
    drohhrghenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhm
    pehsihhmohhnsehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:3uj-ZDhT8qUUXHb-ww2Ha2p4l0DY4SFe4XAZXP6UH3CQkeH9l-7IPg>
    <xmx:3uj-ZDCD1eLifgaoK4zM7gCeqwBOMILHaOrw0kzRnbbPvgxZcHOO2g>
    <xmx:3uj-ZMKX7Hmkr0o_6hGWuC-xEvDRC6pBcH9s_wCn0KvahN4EXUJ73w>
    <xmx:3uj-ZO9N5AMSYrT4WdR5lzIYMqPK2Od9hBxX-OLWw015yaVwkXBBfg>
Feedback-ID: idc5945a3:Fastmail
From: Simon Gaiser <simon@invisiblethingslab.com>
To: xen-devel@lists.xenproject.org
Cc: Simon Gaiser <simon@invisiblethingslab.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	=?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Subject: [XEN PATCH] x86/ACPI: Ignore entries marked as unusable when parsing MADT
Date: Mon, 11 Sep 2023 12:12:38 +0200
Message-Id: <20230911101238.18005-1-simon@invisiblethingslab.com>
X-Mailer: git-send-email 2.40.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Up to version 6.2 Errata B [2] the ACPI spec only defines
ACPI_MADT_ENABLE as:

    If zero, this processor is unusable, and the operating system
    support will not attempt to use it.

The bit that later will be ACPI_MADT_ONLINE_CAPABLE is reserved with
"Must be zero".

Version 6.3 [3] then adds ACPI_MADT_ONLINE_CAPABLE and changes the
meaning of ACPI_MADT_ENABLE:

    Enabled
        If this bit is set the processor is ready for use. If this bit
        is clear and the Online Capable bit is set, system hardware
        supports enabling this processor during OS runtime. If this bit
        is clear and the Online Capable bit is also clear, this
        processor is unusable, and OSPM shall ignore the contents of the
        Processor Local APIC Structure.

    Online Capbable
        The information conveyed by this bit depends on the value of the
        Enabled bit. If the Enabled bit is set, this bit is reserved and
        must be zero. Otherwise, if this this bit is set, system
        hardware supports enabling this processor during OS runtime.

So with conforming firmwares it should be safe to simply ignore the
entry if !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE

As a precaution against buggy firmwares this change, like Linux [4],
ignores ACPI_MADT_ONLINE_CAPABLE completely if MADT revision < 5. Note
that the MADT revision was already increased to 5 with spec version 6.2
Errata A [1], so before introducing the online capable flag. But it
wasn't changed for the new flag, so this is the best we can do here.

For previous discussion see thread [5].

Link: http://www.uefi.org/sites/default/files/resources/ACPI%206_2_A_Sept29.pdf # [1]
Link: https://uefi.org/sites/default/files/resources/ACPI_6_2_B_final_Jan30.pdf # [2]
Link: https://uefi.org/sites/default/files/resources/ACPI_6_3_May16.pdf # [3]
Link: https://git.kernel.org/torvalds/c/e2869bd7af608c343988429ceb1c2fe99644a01f # [4]
Link: https://lore.kernel.org/xen-devel/80bae614-052e-0f90-cf13-0e5e4ed1a5cd@invisiblethingslab.com/ # [5]
Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
---
 xen/arch/x86/acpi/boot.c | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/acpi/boot.c b/xen/arch/x86/acpi/boot.c
index 4a62822fa9..2d0b8a9afc 100644
--- a/xen/arch/x86/acpi/boot.c
+++ b/xen/arch/x86/acpi/boot.c
@@ -77,6 +77,17 @@ static int __init cf_check acpi_parse_madt(struct acpi_table_header *table)
 	return 0;
 }
 
+static bool __init acpi_is_processor_usable(uint32_t lapic_flags)
+{
+	if (lapic_flags & ACPI_MADT_ENABLED)
+		return true;
+
+	if (madt_revision >= 5 && (lapic_flags & ACPI_MADT_ONLINE_CAPABLE))
+		return true;
+
+	return false;
+}
+
 static int __init cf_check
 acpi_parse_x2apic(struct acpi_subtable_header *header, const unsigned long end)
 {
@@ -92,9 +103,7 @@ acpi_parse_x2apic(struct acpi_subtable_header *header, const unsigned long end)
 		return 0;
 
 	/* Don't register processors that cannot be onlined. */
-	if (madt_revision >= 5 &&
-	    !(processor->lapic_flags & ACPI_MADT_ENABLED) &&
-	    !(processor->lapic_flags & ACPI_MADT_ONLINE_CAPABLE))
+	if (!acpi_is_processor_usable(processor->lapic_flags))
 		return 0;
 
 	if ((processor->lapic_flags & ACPI_MADT_ENABLED) || opt_cpu_info) {
@@ -151,9 +160,7 @@ acpi_parse_lapic(struct acpi_subtable_header * header, const unsigned long end)
 		return 0;
 
 	/* Don't register processors that cannot be onlined. */
-	if (madt_revision >= 5 &&
-	    !(processor->lapic_flags & ACPI_MADT_ENABLED) &&
-	    !(processor->lapic_flags & ACPI_MADT_ONLINE_CAPABLE))
+	if (!acpi_is_processor_usable(processor->lapic_flags))
 		return 0;
 
 	if ((processor->lapic_flags & ACPI_MADT_ENABLED) || opt_cpu_info)
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 10:18:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 10:18:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599241.934560 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdzu-0002oS-44; Mon, 11 Sep 2023 10:18:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599241.934560; Mon, 11 Sep 2023 10:18:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfdzu-0002oL-1F; Mon, 11 Sep 2023 10:18:26 +0000
Received: by outflank-mailman (input) for mailman id 599241;
 Mon, 11 Sep 2023 10:18:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=AVcC=E3=invisiblethingslab.com=simon@srs-se1.protection.inumbo.net>)
 id 1qfdzt-0002oB-FJ
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 10:18:25 +0000
Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com
 [66.111.4.26]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8981bc44-508c-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 12:18:23 +0200 (CEST)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.46])
 by mailout.nyi.internal (Postfix) with ESMTP id 97BBB5C010C;
 Mon, 11 Sep 2023 06:18:22 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute2.internal (MEProxy); Mon, 11 Sep 2023 06:18:22 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 11 Sep 2023 06:18:19 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8981bc44-508c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm1; t=
	1694427502; x=1694513902; bh=ScrWZQKwX09Lm7cCEF/K+QNOvN5j9Emk7tI
	4RlnwZ5c=; b=pMqI5KrZkQ/SsOlVH7pURqGlQH2U8W5r90ZXuyxFLMpoqyFpMLH
	qW9Dw9mpTx0w91uIAIg7Qs4HTu8HQCUuNZZ9KhqVTfb2GF5k6gUHvR2ViSnHCQqM
	mdppOtquqzqs/XhYcovIHrOfWLhDzd+plFRQFj6YwU/JzF1oWb4deIFN3zpAdh3I
	S6AE46mQCq2zcjjoEkBPSE0avUlyhOrq/zB7oxNpEVJOlHpe72YWsJiGaBd5uFJv
	0YLi8LUzE8E2SZDDP1pjwzvU7yXkE1G9h2YUZiWixEc6G+NUYkPn+A0Aib4kpOCp
	kKxtU9Cd6fNH7Vlp1H+aAaLpyalxC19s2+g==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm1; t=1694427502; x=1694513902; bh=ScrWZQKwX09Lm
	7cCEF/K+QNOvN5j9Emk7tI4RlnwZ5c=; b=PgDJ0LKmMN3ROFV1GcI4kFYBfzuCE
	wx8ro7McPucHqRKFQEJ1lfp7zKzMh6X9VWQQ1ClNkanyOLrmCjF1tF0XBD39S6WT
	XpK/L2jIF+OEitFtKB4Gn5oxrfMlRimWYicHYdo7zerNCE+bNKslmPJJuY95DUUI
	39N2eZ+rYoWf9C35P5Ns2f2yvpE6Jb6G03YMri3uoECEiSicDhWyZCfoel3TRf9f
	mcjz9vNmcneOa+Nsolbb0iZ6m0oKJWpo9K8MzpGOmvCFuA5orDk0U7zHGaML7f9P
	I1qQMiJHb2e/V/LqF+hQm83U5mt/FhQ8N/8DCNfzeZ9XpVGGqbeIcEr/A==
X-ME-Sender: <xms:bun-ZHuvmc0x5MxT150HFgvPP-FYGnHqjLB7rJrAUjgXPUzAwFh_NA>
    <xme:bun-ZIdVclUJ7QXW_7WNepOrpIMli6YK-46P5drsPrwOgAhfh2tw1i6ygVkthglxD
    -qmUK4YkU-BH4o>
X-ME-Received: <xmr:bun-ZKwMWvxJdGHq84_rg_PVnsvR4zsUtVJ3wOtTZHzf-89mO2K1t__ccU9NCxm0>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudeigedgvdehucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhepkfffggfuvfevfhfhjggtsehgtderredttdejnecuhfhrohhmpefuihhmohhn
    ucfirghishgvrhcuoehsihhmohhnsehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtg
    homheqnecuggftrfgrthhtvghrnhepvdeukeevgeekgeetffdthffgheejjefgteektedt
    tdejgeekiedvleeuvedvgeeknecuffhomhgrihhnpehkvghrnhgvlhdrohhrghdpuhgvfh
    hirdhorhhgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhho
    mhepshhimhhonhesihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:bun-ZGNZLXX8okaTDfxL-_xrlvPKT-Rtn9vV1Lv1sfJmCF1YZWjJxA>
    <xmx:bun-ZH_FJSA9Qxn15JgUtBSLrc8hJLT4Jrr6M_VhQVz5uvuRe2uULw>
    <xmx:bun-ZGXNf1NaWr5mgF1v59EjO1bvHkw0DhH0JukDG-f6_FO1YCi9mQ>
    <xmx:bun-ZKaaTHQHRi5W5H-3CiecSQyR-nH59x4ihI7qBwhN-EibAAWlnA>
Feedback-ID: idc5945a3:Fastmail
Message-ID: <5a27c672-b176-0f77-3003-f3e3de0e32f7@invisiblethingslab.com>
Date: Mon, 11 Sep 2023 12:17:51 +0200
MIME-Version: 1.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
To: Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= <marmarek@invisiblethingslab.com>
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <d5a99971-059b-022f-1b17-ca22431fad4f@citrix.com>
 <80bae614-052e-0f90-cf13-0e5e4ed1a5cd@invisiblethingslab.com>
 <6f81176c-2df8-d3d3-b3a6-ac6349b97ef2@citrix.com>
Content-Language: en-US
From: Simon Gaiser <simon@invisiblethingslab.com>
In-Reply-To: <6f81176c-2df8-d3d3-b3a6-ac6349b97ef2@citrix.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------9NLtl5rYABqj561OCXqs6uaZ"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------9NLtl5rYABqj561OCXqs6uaZ
Content-Type: multipart/mixed; boundary="------------RHe5H2gi4sNvZU9jX1Muvv4V";
 protected-headers="v1"
From: Simon Gaiser <simon@invisiblethingslab.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= <marmarek@invisiblethingslab.com>
Message-ID: <5a27c672-b176-0f77-3003-f3e3de0e32f7@invisiblethingslab.com>
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <d5a99971-059b-022f-1b17-ca22431fad4f@citrix.com>
 <80bae614-052e-0f90-cf13-0e5e4ed1a5cd@invisiblethingslab.com>
 <6f81176c-2df8-d3d3-b3a6-ac6349b97ef2@citrix.com>
In-Reply-To: <6f81176c-2df8-d3d3-b3a6-ac6349b97ef2@citrix.com>

--------------RHe5H2gi4sNvZU9jX1Muvv4V
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Andrew Cooper:
> On 07/08/2023 3:45 pm, Simon Gaiser wrote:
>> Andrew Cooper:
>>> On 07/08/2023 10:38 am, Simon Gaiser wrote:
>>>> It seems some firmwares put dummy entries in the ACPI MADT table for=
 non
>>>> existing processors. On my NUC11TNHi5 those have the invalid APIC ID=

>>>> 0xff. Linux already has code to handle those cases both in
>>>> acpi_parse_lapic [1] as well as in acpi_parse_x2apic [2]. So add the=

>>>> same check to Xen.
>>>>
>>>> Note that on some older (2nd gen Core i) laptop of mine I also saw d=
ummy
>>>> entries with a valid APIC ID. Linux would still ignore those because=

>>>> they have !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE. But in Xe=
n
>>>> this check is only active for madt_revision >=3D 5. But since this v=
ersion
>>>> check seems to be intentionally I leave that alone.
>>> I recall there being a discussion over this, ultimately with the vers=
ion
>>> check being removed.  IIRC it was a defacto standard used for a long
>>> time prior to actually getting written into the ACPI spec, so does ex=
ist
>>> in practice in older MADTs.
>> So I noticed that the check in Linux is actually slightly different th=
an
>> I thought. Since [3] it always considers the CPU usable if
>> ACPI_MADT_ENABLED is set. Otherwise it consider it only usable if
>> MADT revision >=3D 5 and ACPI_MADT_ONLINE_CAPABLE is set.
>>
>> So I checked what the ACPI spec says:
>>
>> Up to 6.2 Errata B [6] it only defines ACPI_MADT_ENABLE as:
>>
>>     If zero, this processor is unusable, and the operating system
>>     support will not attempt to use it.
>>
>> And the bit that later will be ACPI_MADT_ONLINE_CAPABLE is reserved wi=
th
>> "Must be zero".
>>
>> 6.3 [7] Then adds ACPI_MADT_ONLINE_CAPABLE and changes the meaning of
>> ACPI_MADT_ENABLE:
>>
>>     Enabled
>>         If this bit is set the processor is ready for use. If this bit=

>>         is clear and the Online Capable bit is set, system hardware
>>         supports enabling this processor during OS runtime. If this bi=
t
>>         is clear and the Online Capable bit is also clear, this
>>         processor is unusable, and OSPM shall ignore the contents of t=
he
>>         Processor Local APIC Structure.
>>
>>     Online Capbable
>>         The information conveyed by this bit depends on the value of t=
he
>>         Enabled bit. If the Enabled bit is set, this bit is reserved a=
nd
>>         must be zero. Otherwise, if this this bit is set, system
>>         hardware supports enabling this processor during OS runtime.
>>
>> So with confirming firmwares it should be safe change the simply ignor=
e
>> the entry if !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE
>>
>> We can also do it like Linux and ignore ACPI_MADT_ONLINE_CAPABLE
>> completely if revision < 5.
>>
>> Note that the revision was already increased to 5 before 6.3.
>>
>> ACPI spec version    MADT revision
>>                  =20
>> 6.2 [4]              4
>> 6.2 Errata A [5]     45 (typo I guess)
>> 6.2 Errata B         5
>> 6.3                  5
>>
>> [3]: https://git.kernel.org/torvalds/c/e2869bd7af608c343988429ceb1c2fe=
99644a01f
>> [4]: http://www.uefi.org/sites/default/files/resources/ACPI_6_2.pdf
>> [5]: http://www.uefi.org/sites/default/files/resources/ACPI%206_2_A_Se=
pt29.pdf
>> [6]: https://uefi.org/sites/default/files/resources/ACPI_6_2_B_final_J=
an30.pdf
>> [7]: https://uefi.org/sites/default/files/resources/ACPI_6_3_May16.pdf=

>=20
> Honestly, the reserved must be zero means there's no need for a version=

> check at all.  That bit will not be set even in older MADT revisions.
>=20
> That said, it's likely easier to retain the version check than to set u=
p
> a quirks infrastructure for buggy older MADTs.

Yes, that's what I was thinking too. Send a patch:
https://lore.kernel.org/xen-devel/20230911101238.18005-1-simon@invisiblet=
hingslab.com/

Simon

--------------RHe5H2gi4sNvZU9jX1Muvv4V--

--------------9NLtl5rYABqj561OCXqs6uaZ
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEE3E8ezGzG3N1CTQ//kO9xfO/xly8FAmT+6VIACgkQkO9xfO/x
ly8g4g/+OFmAInumSqZBLJFA9RNo6wSaqAnGCD9ueWr2DpHbIK1nM/DQz30XHXp9
4NlfklK8ltCehxR+DcEh0mRYIFfgycqRsNSc0k5IwfX3ehM1aYnniT2wdfvoNHmr
F9v7DtAWxv3APCNozWRYQibNY43ly20e1mj9vMtiTW0IYJaswmP18yJRfKXAadW1
NPbRckNwC8objOSmoL60ThnD0KbD//mdkdSvMR4/+rdpWiFN91PNey3lGqDuu3yQ
u02ECeCAMOiPpZfBElafFqZMMWYkGG/XCv7mBloYqmFFowSAHEH6AhMw+662CBku
GdHFQ/Pr9Faul+6f+2KDyve7kADBo0uwhbewYCBjs7J47/0e91klS1KnlX8gm/ot
uNp33gVQ4oD9m2S2mv5WVNrJmPDRCudr9Iv1iDiivy0PXcm0SZ2JCdKfunGc4Eiv
wqODwfVgzFliC9YmQPxEt5/a686P7Cq9ocwXoVSDAy+9tlOO+UhkXoNXxeLLLuR2
Pyo7Fbn17xM/feSdA1tzqU8JWo/NeYfqbUyZARIwCGeYfLRTB4dYSzH3iObf4aeI
j6cjfjJogy9at9OPz73m8pHQyM0S7AARPNiHhPxtQ9h21BjdL8e9Ew8lvhQDa8rB
kJPWWcoKZkYSoxFAM7BOKVCYE0sklYUv0pVMqt5i5oGP39t8qyk=
=ze3I
-----END PGP SIGNATURE-----

--------------9NLtl5rYABqj561OCXqs6uaZ--


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 10:33:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 10:33:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599250.934569 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeEe-0006qX-Fc; Mon, 11 Sep 2023 10:33:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599250.934569; Mon, 11 Sep 2023 10:33:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeEe-0006qQ-Ct; Mon, 11 Sep 2023 10:33:40 +0000
Received: by outflank-mailman (input) for mailman id 599250;
 Mon, 11 Sep 2023 10:33:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfeEc-0006qK-TM
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 10:33:38 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2060d.outbound.protection.outlook.com
 [2a01:111:f400:fe16::60d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id aa8bd28f-508e-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 12:33:37 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by AS4PR04MB9340.eurprd04.prod.outlook.com (2603:10a6:20b:4e8::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Mon, 11 Sep
 2023 10:33:34 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 10:33:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: aa8bd28f-508e-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aNted1NekJJC5U1n5BrTqaM+xNJxU0c9Ae2gp1u4Dyw0TMnNDB8/VhgSB76YeC3Geo87uGJ6HlR+NdUnrj5QOBFVdX2WwoQrTNehNH1JRWX+saFAEI7r1O04sHSSEKUFsCudXXwKXt8un/PkOQSsec4fJ+8jEGZOgqWoNAoS7nyKdmweWsPzTJbxPSbqavqffNxpST7tqbTR9VtvW7ZEyFprmMqcpHvGUIKqwmOeM79kHj+XKAHkrruyVsENlDcUGv+jX73kGm6m7bVn6+w11gDAX0BM8T6ID2hDjU9N8Wmju5ZoU0rb7CGanHuhMXLZ1d6+zOkroaN+jaGDeIGAxg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=M1jBjkYGcUXmUOzSRiTBVmfG5X95K5u4lP9o8z8noAQ=;
 b=hXhCxoaDhzm/SSqpb0jSsfULnOWWg2XK22ZYnz03pbPUhEGaFlolMEKtq3kBV/7PVGsgna/NoxxqwgRIqtm3vCNb0xLea+8/DvDlfunedz9HnFJfLx+1IKdDoUkyC2gCJcIO+U3/1Q6DmMpuKRoRfDX6gkUPC6ijPtm7mclPKVvYdZdWotBC4uNpx1lCvssK7NrU327jF1gcM1Ccb2YYeQtw9DwyY/VN6x0EleT6RiWG7Zh9KpRgq7JkBrpF97/MJXGOpdA+Sf46al6FFVsk4DHS1fQgu20b61x9EhCbe28AKfWc2nBXl3HHOT9Q51lIbgwEg7I8zxDWGBbRg30LTA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=M1jBjkYGcUXmUOzSRiTBVmfG5X95K5u4lP9o8z8noAQ=;
 b=gD/P5pCS+C1XdltgVangLKxyrOsVk3/SJypWntJHUlFNgVREyVlB6wQdIqw/f7Yl5CfEvMF2pJuIKjC4oi/7Fiv+E4RkDiPWHdSMaNU13g8Qu2bRMVWLHV1fxvpH+z6qLes8bdd2QH1g4EO9L/U9y6Fm6FhpgcZjjDHeKxFkZ7gT35XUwIO4uLBP3P/z/v+gY0BIGT2+h/3cD/lwSthOTeUNdxaiaQHLBn3oqJ7yOV2nyjhTpK+KMpJtxYsTK+AoyEFd5TDvBSKJiVHGRpPRu0yMnlDw6EFq04z34csvKjKevLv95RRvE7gZMze6cBKEShDLOQTQPF3bWWzwiGQXbA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <64ef7f9a-8810-bdcc-a4c8-2336de79ad01@suse.com>
Date: Mon, 11 Sep 2023 12:33:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 1/2] coverage: simplify the logic of choosing the
 number of gcov counters depending on the gcc version
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org, Javi Merino <javi.merino@cloud.com>
References: <cover.1694189143.git.javi.merino@cloud.com>
 <f40f16bad7553f63d81574eac39e1fddaeec0be4.1694189143.git.javi.merino@cloud.com>
 <93c7ff14-2aa8-09a6-f04d-9dbb3969f470@suse.com>
 <4073db4a-0ccd-7047-4d34-25ad18100f12@citrix.com>
 <37f70cdf-a25f-5315-c005-0811ca801e3a@suse.com>
 <27b478c4-16a0-2e1e-b580-ebfcbd29d1c0@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <27b478c4-16a0-2e1e-b580-ebfcbd29d1c0@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0100.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a9::6) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AS4PR04MB9340:EE_
X-MS-Office365-Filtering-Correlation-Id: 97b3c5c9-2ed5-4652-04ac-08dbb2b28d30
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9XfFg+gdz7vzKs/d2RE8yu1N/rAuiuQk4RR79tC4cxdw6d0xjfkVRCmerzBuendG3WGb03etG2JWUp5TF5cfso7PQ5D+WwcglFXQ5NsseJxJh32wq2zxkyKNHa+egzZYFX2A53yg+pX5/6jdwaqw4W2A+8hPDRnL1BTT/glUgbcwdJbXyU/hU9UBa/IuIGdLvoQcbL6OAPrKze6/bJGcAWEtuWoqTjjAMenMeTYIbfHJg5vOKllyPN1EpAsPDzUJooiaYRKj1tGu7FrH0/kzMgrRqPXtvjGplYezswkElc9aIFCrKHCKW2b33Huxc/Qf8a81xY1joCIDbNBI4ayoAMyOASSERh2BjepOyfy0WVw9Av0AfdRLfa2cYzohEucyhnbDUJIN5p+wO8NbaO+RYjDOi5PYAoB8M6hFPAD6tr0lfGn/bnUCBVdlBduShtrDOJT5c/DxhOm3QginU4JXNBnbiQrqs48SLjLl7F+7OOEIMt0I1tvgbMUwafH8Z8W22ORVIVgRIAYefWLiCHxkWiJijp7J2FaYSg33fkEcWEC+3rAb+P7cX8tOFkF+vsLxGUCUkhIUpDiTDADt1db/2IQSm9k1FzS4lzLZypkgMdjo129tX4xVOnHM0SgBeuK4uwJPz1sSsZ+L86gg4uLMcA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(346002)(366004)(136003)(376002)(186009)(1800799009)(451199024)(53546011)(6486002)(6506007)(41300700001)(316002)(2906002)(36756003)(478600001)(86362001)(31696002)(66476007)(54906003)(66556008)(6916009)(38100700002)(66946007)(5660300002)(83380400001)(2616005)(8936002)(8676002)(4326008)(26005)(31686004)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cmZNSWtEdEZOeWlYUHZRSUYyR3A4YXN4b2ptSnhsMDhhb1QyYTVZTGJSZVNP?=
 =?utf-8?B?L0hyZ2Fzb3FJRU1BU2QrNXp5U1MwWXhHcmxmQThNNXdzV0hNUFE2cXFvOWZl?=
 =?utf-8?B?UDZYU29IUjFUL3duN1VKSHNOeklRaWV5UFVFdlVlN3ZGNmxDbEM4bHlzVlBM?=
 =?utf-8?B?VmpKSWpKaEhKT2d0cndaN3R3Qy9mUnhxVGNDSFhlSHRHdVV3Ym5sQXFFRVcy?=
 =?utf-8?B?emFhYU9LbFp5dDI1UDJCMHVvWXRwKzBVa203VUtPTWpMWW14M0hDUURwZVVy?=
 =?utf-8?B?VEpkc3Q4S05CQzI2RU1OQXpwdCtQeTJkaHhBMHhXaVUzY0pRY2drWFlZQjJQ?=
 =?utf-8?B?WUg2dEt3UUMydHR5WG82UXI2aGlhRGlDUkZjRUhEMHA0TGNLUFFDd1pNM2Vo?=
 =?utf-8?B?bThFeThXZjNjdGpuNFVrNGxpekoxVmhMTG1wVkpydExCTGJveWo5NlRMc29p?=
 =?utf-8?B?THNPalY0OGg5Z1hsT2JMYmFUdVZrYjc3TW1IajVkNXdnd0lRTXFoN0N3ZTVV?=
 =?utf-8?B?TXdIM2kvL1lxcFdyN0thM0toc3hkbmp1SUdUMjBuZGRUS25mbzVGL1B1dzho?=
 =?utf-8?B?bzhqaVRod0htZ0VKL3M0ODh4MjBRRnhaTTlSQkVvZDVrRjljbk44aS9GL1hZ?=
 =?utf-8?B?aUNxankxSmh6eWpaalVSeG5UcHYxbWFFSGlhbjNCdm83VFdMbWVyV1Axa25z?=
 =?utf-8?B?QXp6UUZ6VkxWditHazNTSnFZbm91UDZuUnRzVUhCTU1SbE5XdktJQTc3SzZx?=
 =?utf-8?B?NytvUkxyZGFOZGNENEhJaHdCSXBFc2FIdzh3RkFZRHY2Lzl1MS96N3FzdXB1?=
 =?utf-8?B?NU1yZktMQjFzOUp0cWlFU0RZaGVhNmtwTFU2WFZhTjFIZnZzWFpmRnpDc1N1?=
 =?utf-8?B?MjB5akpqVndUQU5vbyt6VnNmRUJlTytmdGg1aEtUWTBUVjk4Y2RrbTQ3SDRw?=
 =?utf-8?B?NXdsc2ZNNFRiMVhnY3FkTEkrZlFZQW45OGwwMmJJcTBacFl6VC9lTU4yMGtt?=
 =?utf-8?B?bnVod2JrQ1pwdWRsYVJobUIxcDlPV2dBWENxYjRqT09wYWNxVWRMdUpZQnpH?=
 =?utf-8?B?WnowK0RZNXo2N05FQVRoNlFjK1hDN1BMaUxzNzFUYmVRa0c0Y2JJRDFxazRl?=
 =?utf-8?B?VS94SXJlR2g2RXFvVW5MT0FYa1djWURVSzVyTXpCZG5ZWTE3dytGVVZhMGtp?=
 =?utf-8?B?Q0U5aWsvVUpSWkozMW5sMTJZYUYwcGhTa1BJZlJaa25RUEh0Um1RWUpJc1Zh?=
 =?utf-8?B?M1M3WUlWaEdJSEd2dTJCdVFxTGU3Ny9HRzJzSVdLV2RhamZ0RldmOGhLSGxk?=
 =?utf-8?B?cnlFRVNXMWQ2SDZYSG1LU0lnSkdwbG9kSVNEbXRVRW5BK3RqazZRY29CNEhH?=
 =?utf-8?B?aFlOR095bmFEeC9nNlpPRnNVTDgyZnhSd1hNRW9td3AwTTFHOVRINHBLMTMr?=
 =?utf-8?B?YjNRc1RBSi9Eb1g4UDJ3bzdQY2pmR2QvR3EzQ2ZGemZoNk9Ca2JJRWRoU0h4?=
 =?utf-8?B?dzRWVU0ydmNDMm5hR0ZNcmNxMHpkQ3VJbHVoby9QVno4aU1uR1gxZTVvRzNX?=
 =?utf-8?B?bm1FUmtrdlVNQnRHdTlaYUE5bmhodU5yQTRJNFo3Z21RalZGKzN0bWFpc3No?=
 =?utf-8?B?MFFGNWV6M1BndDhjL2ZNVEZkOENrM2pIZXVjS1orSENqK2ViMFp2eWhvL0wy?=
 =?utf-8?B?eW5Zam4rR2g4QUdZNzh2Wk5HUURPZ0J4ZE9mL2RZcUc2eTFiTXBESDVlNnBP?=
 =?utf-8?B?UjlNQ0FmYkloZm5VbGVCZVArRUlIdm9wbk5HUDlraXUyejd3Skg1bkNBREp5?=
 =?utf-8?B?RXNyUnNwZEZ2MXJPSzk1YjlOU0FNVVZSQWQvVmUxUkROM1FzYmlRa3RERFNS?=
 =?utf-8?B?R1greHpnekY1TTEzdHZUdXdqaWdJRkJ5MHFsZExCa25nVEZwcWs1RU1rTnVm?=
 =?utf-8?B?ZE5EOE1Cb1c4cnROVlRFMVBwNGhnblQ2b1kxQzUzQnVYdjZ3Y1hRMjhsc2Z1?=
 =?utf-8?B?S1dvVjRqcU41cUs1d2tRdWVXSGZZUXZHczFDamdEbEtvMXZtbUhsUE1OQnZw?=
 =?utf-8?B?SGp5bFNRTXhnUCt4VysrMUtqcGNwc0VjS2tNbkdGWGJqUXhIQ0JTQnpLVEtR?=
 =?utf-8?Q?O3cH97vTUgeIAYYqDph6mjM5L?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 97b3c5c9-2ed5-4652-04ac-08dbb2b28d30
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 10:33:34.7008
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: XZV/lPrLgfn8Smk4XSjy8QbPwgG7EKX6ySBnwVXwaPFNpAN6vtA4ZYKHPnJIwGjMxnd5eNWrVLoaGX3FGznsEQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9340

On 11.09.2023 11:59, Andrew Cooper wrote:
> On 11/09/2023 10:53 am, Jan Beulich wrote:
>> On 11.09.2023 11:48, Andrew Cooper wrote:
>>> On 11/09/2023 8:54 am, Jan Beulich wrote:
>>>> On 08.09.2023 18:20, Javi Merino wrote:
>>>>> The current structure of choosing the correct file based on the
>>>>> compiler version makes us make 33 line files just to define a
>>>>> constant.  The changes after gcc 4.7 are minimal, just the number of
>>>>> counters.
>>>>>
>>>>> Fold the changes in gcc_4_9.c, gcc_5.c and gcc_7.c into gcc_4_7.c to
>>>>> remove a lot of the boilerplate and keep the logic of choosing the
>>>>> GCOV_COUNTER in gcc_4_7.c.
>>>>>
>>>>> Signed-off-by: Javi Merino <javi.merino@cloud.com>
>>>>> ---
>>>>>  xen/common/coverage/Makefile  |  6 +-----
>>>>>  xen/common/coverage/gcc_4_7.c | 17 +++++++++--------
>>>>>  xen/common/coverage/gcc_4_9.c | 33 ---------------------------------
>>>>>  xen/common/coverage/gcc_5.c   | 33 ---------------------------------
>>>>>  xen/common/coverage/gcc_7.c   | 30 ------------------------------
>>>>>  5 files changed, 10 insertions(+), 109 deletions(-)
>>>>>  delete mode 100644 xen/common/coverage/gcc_4_9.c
>>>>>  delete mode 100644 xen/common/coverage/gcc_5.c
>>>>>  delete mode 100644 xen/common/coverage/gcc_7.c
>>>>>
>>>>> diff --git a/xen/common/coverage/Makefile b/xen/common/coverage/Makefile
>>>>> index 63f98c71d6..d729afc9c7 100644
>>>>> --- a/xen/common/coverage/Makefile
>>>>> +++ b/xen/common/coverage/Makefile
>>>>> @@ -1,11 +1,7 @@
>>>>>  obj-y += coverage.o
>>>>>  ifneq ($(CONFIG_CC_IS_CLANG),y)
>>>>>  obj-y += gcov_base.o gcov.o
>>>>> -obj-y += $(call cc-ifversion,-lt,0407, \
>>>>> -		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
>>>>> -		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
>>>>> -		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
>>>>> -		gcc_5.o, gcc_7.o))))
>>>>> +obj-y += $(call cc-ifversion,-lt,0407, gcc_3_4.o, gcc_4_7.o)
>>>>>  else
>>>>>  obj-y += llvm.o
>>>>>  endif
>>>>> diff --git a/xen/common/coverage/gcc_4_7.c b/xen/common/coverage/gcc_4_7.c
>>>>> index 25b4a8bcdc..ddbc9f4bb0 100644
>>>>> --- a/xen/common/coverage/gcc_4_7.c
>>>>> +++ b/xen/common/coverage/gcc_4_7.c
>>>>> @@ -18,15 +18,16 @@
>>>>>  
>>>>>  #include "gcov.h"
>>>>>  
>>>>> -/*
>>>>> - * GCOV_COUNTERS will be defined if this file is included by other
>>>>> - * source files.
>>>>> - */
>>>>> -#ifndef GCOV_COUNTERS
>>>>> -# if !(GCC_VERSION >= 40700 && GCC_VERSION < 40900)
>>>>> -#  error "Wrong version of GCC used to compile gcov"
>>>>> -# endif
>>>>> +#if (GCC_VERSION >= 40700 && GCC_VERSION < 40900)
>>>>>  #define GCOV_COUNTERS 8
>>>>> +#elif (GCC_VERSION >= 40900 && GCC_VERSION < 50000)
>>>>> +#define GCOV_COUNTERS 9
>>>>> +#elif GCC_VERSION >= 50000 && GCC_VERSION < 70000
>>>>> +#define GCOV_COUNTERS 10
>>>>> +#elif GCC_VERSION >= 70000
>>>>> +#define GCOV_COUNTERS 9
>>>>> +#else
>>>>> +#error "Wrong version of GCC used to compile gcov"
>>>>>  #endif
>>>> How about inverse order:
>>>>
>>>> #if GCC_VERSION >= 70000
>>>> #define GCOV_COUNTERS 9
>>>> #elif GCC_VERSION >= 50000
>>>> #define GCOV_COUNTERS 10
>>>> #elif GCC_VERSION >= 40900
>>>> #define GCOV_COUNTERS 9
>>>> #elif GCC_VERSION >= 40700
>>>> #define GCOV_COUNTERS 8
>>>> #else
>>>> #error "Wrong version of GCC used to compile gcov"
>>>> #endif
>>> Forward order is the one that results in a smaller diff when inserting
>>> new entries.
>> Hmm, even in forward order one prior #elif will need touching
> 
>  #if GCC_VERSION < 40700
>  #define GCOV_COUNTERS 8
>  #elif GCC_VERSION < 40900
>  #define GCOV_COUNTERS 9
>  #elif GCC_VERSION < 50000
>  #define GCOV_COUNTERS 10
>  #elif GCC_VERSION < 70000
>  #define GCOV_COUNTERS 9
> +#elif GCC_VERSION < FOO
> +#define GCOV_COUNTERS BAR
>  #else
>  #error "Wrong version of GCC used to compile gcov"
>  #endif

But that doesn't achieve the same as the other construct: No #error for
gcc earlier than 4.7, and your (presumed; i.e. taking just patch context
without the two added lines) construct would fail to build for gcc 7. We
want an open upper bound but a determined lower one.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 10:41:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 10:41:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599258.934579 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeLu-0000td-4N; Mon, 11 Sep 2023 10:41:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599258.934579; Mon, 11 Sep 2023 10:41:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeLu-0000tW-1s; Mon, 11 Sep 2023 10:41:10 +0000
Received: by outflank-mailman (input) for mailman id 599258;
 Mon, 11 Sep 2023 10:41:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Y5ji=E3=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qfeLr-0000tQ-VJ
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 10:41:08 +0000
Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com
 [2a00:1450:4864:20::336])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b3160497-508f-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 12:41:01 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-402cc6b8bedso48621995e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 03:41:01 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 w18-20020a5d6092000000b0031c52e81490sm9741307wrt.72.2023.09.11.03.41.00
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 03:41:00 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b3160497-508f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694428860; x=1695033660; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=8DLYROIXyNH9Ci2VtFeUczr8XQ4jCBnRu/iIoSoUgr0=;
        b=W2ok/HikzzvgSyHQI/Rt4WQAJqiQksSh19v0w2ps0bVpvHQB6hBabPTsYfyMhjsNMl
         ocNdhGeSv4nvpla8XoMcllXhIaQ1g88Py8VfS/qQc/4L4jL30f8CNpXUd/16DYGKDAJx
         uIfCajJbnTOLBjLHjf4FT8dEZehXLeURrGJvw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694428860; x=1695033660;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=8DLYROIXyNH9Ci2VtFeUczr8XQ4jCBnRu/iIoSoUgr0=;
        b=Lkas+gOAvmSxnNle1Cc4o0fzCsLgZYwAA7v+nGo9kq1ec33i0KEQsiNIRqpWnk/wgO
         EyHpiwC1TL4HlFWrBBW682gEZtzKCnNXD3NRisAKsrNK5j29uxL5+wnDBk76+7iiGPBq
         AG/cS6JGbDkRXvWCk7gXuYhyIVjm/y9yZny09zDhclO7xzNhmdqyxHolqNGpBYhCCNld
         JtJHjMMoUC3rMBhHbia0k7I4cbivefJS0qKI4rRi8uLEmiCsVDaQvZJ2fy8gLigDWtLp
         EvY9Gao1jJ9H+3UhB5jBQ/dvyDT01MlL0rWT2ozdRUeLTFJubABQ5UxPE2Cu3XNglk0F
         RuOg==
X-Gm-Message-State: AOJu0YybAdwp3SoyJfL8Zb5WcLzKEbG1UDcGmUQ1XHo4U4iMlP0KsRC2
	DIt6ABnSvoVIEowuwuIer0go7oQLwgr/tiNv9QE=
X-Google-Smtp-Source: AGHT+IFKDg7yUVa/fCWGxGM/sIW+2D8LvTmw4fuv4ZaAMlLxcUkbmHYI+JYJPmbWy/2xz4xCz9smJA==
X-Received: by 2002:a5d:5f07:0:b0:31f:af30:1bd9 with SMTP id cl7-20020a5d5f07000000b0031faf301bd9mr1043129wrb.44.1694428860597;
        Mon, 11 Sep 2023 03:41:00 -0700 (PDT)
Date: Mon, 11 Sep 2023 11:40:59 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Javi Merino <javi.merino@cloud.com>
Cc: xen-devel@lists.xenproject.org, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] tools/misc/xencov_split: Add python 3 compatibility
Message-ID: <4489a5ce-ecd0-49e2-9e47-e621b098c96e@perard>
References: <20230902162246.15672-1-javi.merino@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230902162246.15672-1-javi.merino@cloud.com>

On Sat, Sep 02, 2023 at 05:21:08PM +0100, Javi Merino wrote:
> diff --git a/tools/misc/xencov_split b/tools/misc/xencov_split
> index e4f68ebb6e..8f1271bfe7 100755
> --- a/tools/misc/xencov_split
> +++ b/tools/misc/xencov_split
> @@ -1,5 +1,7 @@
> -#!/usr/bin/env python
> +#!/usr/bin/env python3

Beside this shebang change, the patch looks good.
With the shebang change reverted: Acked-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 10:43:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 10:43:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599263.934590 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeO5-0001Tz-GH; Mon, 11 Sep 2023 10:43:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599263.934590; Mon, 11 Sep 2023 10:43:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeO5-0001Tp-Cg; Mon, 11 Sep 2023 10:43:25 +0000
Received: by outflank-mailman (input) for mailman id 599263;
 Mon, 11 Sep 2023 10:43:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=nwba=E3=citrix.com=prvs=6119d0f35=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qfeO4-0001Tj-3q
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 10:43:24 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 053f5e9b-5090-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 12:43:20 +0200 (CEST)
Received: from mail-dm6nam10lp2109.outbound.protection.outlook.com (HELO
 NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.109])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 11 Sep 2023 06:43:14 -0400
Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12)
 by BY5PR03MB5235.namprd03.prod.outlook.com (2603:10b6:a03:21b::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 10:43:09 +0000
Received: from BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912]) by BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 10:43:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 053f5e9b-5090-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694429000;
  h=message-id:date:from:subject:to:cc:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=pp8TW6h6gQWRbsMDcZIDc0oDznyscu4o8sVdZV3lvDo=;
  b=dvCDWE++4B6jp+6bSKyfoUEKMJcSpfw8hmSSNIFXhGRhint8uOvuaB3I
   TOy/Vrvw12+n1VA2kI4Q2+HINdRV/8vzXK2eBdPSL+Y5/h/xeh7a29ydp
   ZNL3ri7WaDaixKxT3Kpe2QvWLSrwOj6QUbzpwDfGfUScKJNMNZEXGnovf
   w=;
X-CSE-ConnectionGUID: Hudl4EFVQPihImSEPywTHA==
X-CSE-MsgGUID: oq4TacBLSLKCU+qO1yHHRA==
X-IronPort-RemoteIP: 104.47.58.109
X-IronPort-MID: 120907144
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:cE+aWq8BYhxeVNo6OLskDrUDXn+TJUtcMsCJ2f8bNWPcYEJGY0x3y
 TEbD2zSPa2ONGSkKdwjaouwpklVvJfWxtIwTAVupXg8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks11BjOkGlA5AdmNKkT5AS2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklu6
 PAcdB0jUCm7huKXxYmWcvhzuuQKeZyD0IM34hmMzBn/JNN/GdXvZvuP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWDilUpgdABM/KMEjCObexTklyVu
 STt+GPhDwtBHNee1SCE4jSngeqncSbTAdhKReXnr6I26LGV7msKVCEfXnGfmt2aoXP9QvUGO
 mw0wAN7+MDe82TuFLERRSaQoneav1gZVsBRFeoS4wWK16aS6AGcbkAUQzgEZNE4ucseQT0xy
 kTPj97vHSZosrCeVTSa7Lj8hTG4NDURLGQCTTQZVgZD6N7myKkxkxbOQ9BLAKOzyNrvFlnY2
 CuWpSIzg7ESi88j1Kih+13DxTW2qfD0ohUd4wzWWiep611/bYv8P4iwswGDvLBHMZqTSUSHs
 D4cgc+C4esSDJaL0iuQXOEKG7Lv7PGAWNHBvWNS81Aa32zF0xaekUp4uVmS+G8B3h44RALU
IronPort-HdrOrdr: A9a23:dfJdZKnXA6j5AsDVpFKu7XLPPwLpDfLo3DAbv31ZSRFFG/Fw9/
 rCoB17726QtN91YhsdcL+7V5VoLUmzyXcX2/hyAV7BZmnbUQKTRekP0WKL+Vbd8kbFh41gPM
 lbEpSXCLfLfCJHZcSR2njELz73quP3jJxBho3lvghQpRkBUdAF0+/gYDzranGfQmN9dP0EPa
 vZ3OVrjRy6d08aa8yqb0N1JNQq97Xw5fTbiQdtPW9f1DWz
X-Talos-CUID: =?us-ascii?q?9a23=3AvheeuWiWYRdO1ESVAP9PZj4FSzJuUmDRyCv9DXG?=
 =?us-ascii?q?BMWdpabiuZGeB559Eup87?=
X-Talos-MUID: 9a23:ic6v2gTmJyH8gE4kRXTrnW1ePcxCx5+KK2sw0owh4tikFRZZbmI=
X-IronPort-AV: E=Sophos;i="6.02,243,1688443200"; 
   d="scan'208";a="120907144"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RKhi8aqdg28Yd/Ilvf6zzZY9hhP4xhgBtICgu1Ih3aJSK5eEsRAzibKeUDcbIRvqveV3kju85rvXCPEUto4Iq9KisfYA6s1OWKOSGpmGTYq/YRH2pbjg/Q4TpFdnW3AaJnBg4I4lAMOBxDZR7MkyfkKN4+4ocdhWSWDTFsYbLkc2JZmBRNcu89bfA1oW88Gg/AuzOanqHDLh7IfFbpVJHyENLjyQk1BDn7kQta+9ZkEyKbeISbxvpDLPr38271GzQXRYM0Ko1T3bC3VjnM+AZW1iIVTmcqQy8puKVuJpqd+CtzGaqen+M7OUYrYAcmXa56j3NSAjKyvG9PnEObtKDQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pp8TW6h6gQWRbsMDcZIDc0oDznyscu4o8sVdZV3lvDo=;
 b=MqYW49840orPLS6UpfbNbPb3ry4Ht2iDf1OXwb2G1Gw49E8aEgN5OV+97+JG4gWNYPvnPKFJGOYg9GvW6zfzEFG29W8oaw3m6uyz4/RFbxAGh3fJM7TEjH59ouittwlsRHSIEaQkG9kH6sxlEN0NPToB+zR5Pu3lx6JQeRMfOu7mYE3fexxujQkpRNp15MHSkKmnFuFXxpybJnrTMBOs7pTYKb+FPDQKvnYGAO0xKySBHwcJSdhhdsA+pMxsnD8cfpQlgrYrlDbGkplebKMePrnfnnlxiMk+3pUpdJFkXLJhfuRSxmwBtBU9SUNor7HXCStnYPchO3B//IRf8ug7+g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pp8TW6h6gQWRbsMDcZIDc0oDznyscu4o8sVdZV3lvDo=;
 b=vtcnip5VJ7eEA5/O3QR3MY+1RM50EUtjiePVNAKj2ONddFKWlDgECZ1J/OpJa8PRbgD3blm1jxsntsbqdP1sTuaPrAbXDvyLcviDs4oNTnyTqeCL4HYtOZztmCu1h0DVbbj8dl/BnxiZpVEAQadPNfK9PFFc6qsc8XT0JPLqhFU=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Message-ID: <92cf8f8e-d48a-42bc-502c-9e6656c9b2d7@citrix.com>
Date: Mon, 11 Sep 2023 11:43:03 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2] tools/misc/xencov_split: Add python 3 compatibility
Content-Language: en-GB
To: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@citrix.com>, Jan Beulich
 <jbeulich@suse.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <20230905201653.98425-1-javi.merino@cloud.com>
In-Reply-To: <20230905201653.98425-1-javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: LO4P123CA0673.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:351::8) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BY5PR03MB5235:EE_
X-MS-Office365-Filtering-Correlation-Id: 0c5606c0-f6a9-4215-c1c5-08dbb2b3e35b
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	fJwjCpInIRtEVjLHsmn8GASjV7TsgyS0V4WJWKqJdvi883avtQXTOa8KvpVJnywBjR6USjOn4ECSrbRmpaTuSlMk+ubeviXPNiUU1/r0SrpygQmanSn+11tHJh7gS8azRa8X3zc9inRz41IVq55cpvNc+0V8hcm4P02xQSo0D9joTfNNZ6Q7olH6vrj0CI6wRMkylzYzi+ArJS3hYUW+qYfcRvP07oPNnwt8CJCna1FCRSjFyYjQDNT+pLtoPM083Z4T39DpBz526KRVSqUyCQi7PvPDYhQDX5RAEOcq6sOokIPQ3PPSjZ5fKZiyXTMedkQhwwIdBnylcXg9fzz2jFdKAJBfbI2xxdEFmvUL+l4ErllPIWRvooZqSrXxqHdb7ovcxNsqNL1is4ojZ4FWcAW0bMBeM0prLywYiOwyXO2rLuT4MSfz+EolOeSbw+4gNCJ1f7ZFxG26Tn6OXbJHpaK+cl18B+y4VpGytJYZ10ebyzgNMXoG+I6Ybz2BeydfBXZgYxUtQLocMUY8AYbYV+dJPV+XmABZXATxIgOzuX5otbjn87zqv6Y03UUTBpKOjdPUyn/qbbLbpIsh5cGMgcrEMJAgHcj6Hrok1mp9HQ3rXdgSdH+vjVbg+EI6l0rspKHQwcoBpDBMEZd9HlKIfg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(396003)(366004)(346002)(376002)(186009)(451199024)(1800799009)(86362001)(2906002)(26005)(83380400001)(6506007)(6666004)(53546011)(6486002)(2616005)(558084003)(6512007)(82960400001)(38100700002)(31696002)(478600001)(36756003)(5660300002)(4326008)(31686004)(8676002)(8936002)(316002)(66476007)(66556008)(66946007)(54906003)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Z2tYaWFEbldacmxiYmw3WnBuUmY0ZGhoWkxvcFBBUmxKclgyVWpMbVJTN2dY?=
 =?utf-8?B?cEk2TEk5QmJua0JwRjFBMWZkYlZWanpWSWQxTGI2RHdTM0FHUFI5MHN4V2o4?=
 =?utf-8?B?RUs5R014STVpenl5K1NUOEJFa0ZISXM0RzZxOUp0alI3NVdYU0Z2Q0ErMUJZ?=
 =?utf-8?B?QnllcjlvdHpIdE8xNkFrUHp5YkZJQnZOY0NwYno0Y0lrSXpDbnVWQ0FnSkpX?=
 =?utf-8?B?MmJYNXQvYTlVZk9GSmpBa2NRblhvTGZEOFA5NGh0VkI5b2pYTkpCeXdzQmwv?=
 =?utf-8?B?QnRxS2IwZDRYTDlaYnVjMHNQZkttaWgwWFNiM0wzK3dVeHdPK0tXZ2xMSGlU?=
 =?utf-8?B?RkhmeElRR2ZmSFZNSG5kV3NiczR3eTRsbHRrUUhpT2lmSzdKQlpSZHcrM1Q1?=
 =?utf-8?B?Tk1jTHk5MG1INkxMNzBVUE1mRk5aZm1HK1EvTWdZVG9sTmZOWS8vUmFwMEF5?=
 =?utf-8?B?Q3NtaDRSZlBzTlo5NmVNNkpKRXB3Nm9MMi9sRWsrUmJ5SlJORjhoOFh5b3pX?=
 =?utf-8?B?OEd5aFg1akp1cCtWNnkvY0F3a1ZYUm5zWDNNUmlSaFpPTm0zUGs5OGIvdGJq?=
 =?utf-8?B?MUdjbDQvVlh3TjF1TUxublRtTUdQdEhHR1lMejlJN2Z5L0l0N2tIeC81aFRk?=
 =?utf-8?B?RWdROEwzUUhTL21qT0UvdmMyQTd0OTdRL0ZUUUVsUzBDOGNoNHFQUit1ZWUv?=
 =?utf-8?B?WjFPSnZzLzdlWTBXUkwzYnFvTDJxUDZPWlBTTStaUWx1WG1JdjRES3VJUE5L?=
 =?utf-8?B?RktwMFQ5TE9LTUZFalR6UnNraUo0UnZuZnJvc0pXWXR3V0x0ZmY4RHVPN3la?=
 =?utf-8?B?RVBoZmZDK3RlZ2RydDErdTlHZDJsVkNhNFF4RXhza0JXSUdyaCtKZXZObGp4?=
 =?utf-8?B?dXoxRUlqMXZFZ2xBYWlRMWUyRFRhaS96WE5ITWwvekJjemRIU3d3UVZYQ1dF?=
 =?utf-8?B?cjVJd2VoN3ZiclhqL0NmODFqR2NxbVY5cktScFplOXcxQWVjUGM4V0JjNEFN?=
 =?utf-8?B?NmN5VGJVMHlmYnlmRGtDa0N6V3JuYnR3cUZOUDVTL1hwcWh2dVh5L0FEZTFw?=
 =?utf-8?B?ck1oMnBjcmhXK0wzd2RsSVpCVjJMVnVJa3FOMkpOTC85Tk83bzNkN3JsNjhv?=
 =?utf-8?B?OUhhWlQrV25CRzkwNXZTbnEyeHBZTUZkOTR4em1zalMzVTNPaXJKeDRRbWt5?=
 =?utf-8?B?S1YrODVnd2tibVlJV3VKQldoK29NMDZyZXZFSmpRLzRRSllGN0tVTmRhM1JG?=
 =?utf-8?B?UTEwVm1NUlYweW1oV1hNUHBHbGc5TmtqalhFU1NMT3Bzd2NlUStDTVFzZVZG?=
 =?utf-8?B?aDJremJFUkpuSEZ2ai9oSGt3NWkwSHFTSWx5NUpGdU1XRFIvSnRsSWNmNE43?=
 =?utf-8?B?ODE3RnFNeVYzR2xMV3JGTzk4MzFQU0ZuaStIQTIwcVNYNTFIV29Zc1FiN0hK?=
 =?utf-8?B?TjhiY0RMSmU5dUp0ZnhIOWd6eXdGNlg2S0MyQytramRlM3c5eC9jZjN1VGx0?=
 =?utf-8?B?YVlyUTJweWFIQTZvOHFsbFY3eDlXNVVoeW5nTFFJdlNKVUl3LzcwK1JjSzV0?=
 =?utf-8?B?WE9JaFdBTFhKdThydFpidUV2WW9jeHlXNlR1d0sxbStPeU9pQ24xdzVGeWhQ?=
 =?utf-8?B?YUtFYm43TEYxMVlwTFB6R2ZSTXRLK3NCM0ZodzVlVU14elpaaFlXRkhhamhy?=
 =?utf-8?B?Y2dlMGxnUHhSa1RBWm1CZjdwWDZLeUJ0R01xUmtocENBUGNjYkxCbEJYTlhJ?=
 =?utf-8?B?Ry9McHp0WTBmWjBDMUxCTTZnQzFzQ2duaFoyeXN3d2t2eDBHVDBaNWJveG1j?=
 =?utf-8?B?ejJMdXFxMzNVNFI5Z3UrSDljVkhQUytSZEFqUW1BU3ZkTmZHMDJIMU8xY1Vk?=
 =?utf-8?B?VFNHV1FKTlpCcVhNSGkwNDFCQ0FmZWwyQTRXdDIrZ2FES1I1clBRVVd2NDlh?=
 =?utf-8?B?L0FKRnZDUkdON3VLbjY2cDlURHhvSWxacFJvTk9NL2IydTBrdEZrODFZUzha?=
 =?utf-8?B?SUtkZkNaVm9qUG9DZDVUMExkbUhacFl1Y295TUtPQlpOSU5IK295d3UrM0tQ?=
 =?utf-8?B?YzAxZFdPL3lvSkpvODhlZUlhMEZxRVp6NnpKWkpoYTR5aE1CMGVvbzZBUVd2?=
 =?utf-8?B?d3N5OTVTZGkrN0R5UkxpdlAreXZJZC83cGd2dHJHOGc4a1NMQ3VhUktsdWZw?=
 =?utf-8?B?V2c9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	5zBTrR9FSxx/M3a3tqTM6E7irVxw8iXqXtOcyilbGKG/fGfgTyAykT7uXoZ1F0C0bcxfvdN8oNc8SqjABL1tHb5cFvOPFqSpLHB3sgPOjFZAZ0fTT+BmSXw7iS+dNR6lrwY9A2vJaVSXrNbBla/uuRW/wepGbSvcJlUZ15LkBwucqJRbFSg5UZX5TgWfdobH/d2RaRbLKYk2TeYrZOpwdpKt9TE0/uyiejBiNsbdYDL1qqMomdU6Q/EZO0NLFe8jkE8F9NCprdWRdUkrE+Elf/r7k6H0vnBWfrZMSJ2xkXKEbABi0t5CvDWPEfvnMPSbffFmsd4S6MGxmyUS7tG5pSfR98Mn4titzCh8lED1zjB0gegh4Z/EaxplAiT3h0L7H4HBAYNwWPH5eDVf0ulpXfDJ9mXDRiNPC03kqNjWHzFbQ+ikbRRfO8TrZtYXNataKjOTscBIe7iV/2aiz4EiEBEWVBjLmmiLwuaO9IW2E17+bQgyZx2iKPbFKe7Xb4gvKnBxHm6Y1nPwhJt8tZAP0irA9UMkkO4c40IlmKwL0srBiEUg3QKgLPQ5IVC3PwRGOxfAhoKYsnGxYOuFVR+8eeiJYnqYqutfk42U8knU3lSUcG6anqmtHfB1tvlZZCE9cJgC+dFjrRyhT1koAKqLYxKS6X9h2B5mQJVUoVpekkzHq9/UJZs92JDVIRO/1NkKvCQLWYQUo8it2JmyZC+Po6ayKQk3cq4DxHEZD90aHJxTgeI6HbnnunwgdB/leij8qnEYNa1BByDKtCypxCc8psiccN8+cCGTZ8feyDW92xbgJSIZBy8lqCyXJ2okStj//7xZKJ8Dm+zpc6nLMujjWE1rQV9XR3Su8EL5CL63Le8fxnWAkVe2NtKJF9i0WS+G
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0c5606c0-f6a9-4215-c1c5-08dbb2b3e35b
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 10:43:08.9600
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /94i1JZ6/tsCKVvkFt5kvdjd8OCTjOraJgCX+lM5PkXi1Tdb43wsD9Ga4X05FtE5deYAQsGAGtS6v6XIR0KGhDbDJTxU+7QpLPqRkt/0fVA=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5235

On 05/09/2023 9:15 pm, Javi Merino wrote:
> Closes #154

This wants to be:

Resolves: xen-project/xen#154

I'll fix on commit.

> Signed-off-by: Javi Merino <javi.merino@cloud.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 10:45:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 10:45:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599269.934599 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfePb-000269-Sw; Mon, 11 Sep 2023 10:44:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599269.934599; Mon, 11 Sep 2023 10:44:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfePb-000262-QR; Mon, 11 Sep 2023 10:44:59 +0000
Received: by outflank-mailman (input) for mailman id 599269;
 Mon, 11 Sep 2023 10:44:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Y5ji=E3=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qfePa-00025w-OL
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 10:44:58 +0000
Received: from mail-wr1-x435.google.com (mail-wr1-x435.google.com
 [2a00:1450:4864:20::435])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4008df10-5090-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 12:44:57 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-31c5cac3ae2so3917673f8f.3
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 03:44:57 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 b11-20020a5d4d8b000000b0031416362e23sm9780636wru.3.2023.09.11.03.44.56
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 03:44:57 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4008df10-5090-11ee-8784-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694429097; x=1695033897; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=XDlF5YI0/CppNpOQ1vN3K+1CKKPjKeo7ClgielEzmv4=;
        b=AjocFoSpFFvqC+LvQFcO9eCQxvAV6eaZFWEJi6eXlni3hiulLwIWHTr9Djfn19cfY0
         iC2yY58aSDvMY8mq4E8WxAMLMeFQOIPYUDgy3aJK6r/5PrDTMW77W3l0Qx+HPy5nB5Q+
         w0EDNNWkTSRR344j/AZ5d8z4VDDl5CEzE/5Gc=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694429097; x=1695033897;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=XDlF5YI0/CppNpOQ1vN3K+1CKKPjKeo7ClgielEzmv4=;
        b=qPBxSZV9YAF+/vatypw0LAMyRphHcBiJhe5GS0yQigXeFeSD9+R6HwMUpQE2BC3QcW
         +Eqv1zbR6+l+ycvyuTC2AjqpDvVN0kK15jYbHK4s7so1GuZdBdRE2cIDPTF5f0OyFHjx
         ZPpKHKx9E0uMuhrJFaxRniKl/Rv3DgK26L/paEr2dS7WI5Z1FQ/m/126zm/UdmaXOJzm
         NzyfkAKCQNEb2aZB2pZ0w6z7ow1/TweQ7+Jam8jFhFUYXWamWkH6TWcRW4YcUZqSV8x7
         lNP21wvoOSxcTSAAqV+s5sC6iveX+dJTmimPh4xsPWV1m18MJh/HnwtbjaWihxVvSpco
         pwjA==
X-Gm-Message-State: AOJu0YwKPmUhJ/GAOORwAFzE8WCKM08efrkNDeoDZgd9w9wBLgE+1CwF
	wXVhbCXn87zuZ6aRT8CQp/E7CQ==
X-Google-Smtp-Source: AGHT+IHWYE67ztxyZbze1YyOlCmW0CfRt9nvzhkVd5pPN5yhcvvIeIk5TBpM4vAVfrlPfFPG6ua9eA==
X-Received: by 2002:a5d:684a:0:b0:314:124f:12be with SMTP id o10-20020a5d684a000000b00314124f12bemr7099055wrw.3.1694429097334;
        Mon, 11 Sep 2023 03:44:57 -0700 (PDT)
Date: Mon, 11 Sep 2023 11:44:56 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, kwolf@redhat.com, hreitz@redhat.com,
	eblake@redhat.com, vsementsov@yandex-team.ru, jsnow@redhat.com,
	idryomov@gmail.com, pl@kamp.de, sw@weilnetz.de,
	sstabellini@kernel.org, paul@xen.org, pbonzini@redhat.com,
	marcandre.lureau@redhat.com, berrange@redhat.com, thuth@redhat.com,
	philmd@linaro.org, stefanha@redhat.com, fam@euphon.net,
	quintela@redhat.com, peterx@redhat.com, leobras@redhat.com,
	kraxel@redhat.com, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: Re: [PATCH 6/7] block: Clean up local variable shadowing
Message-ID: <97895eb8-a44f-4af6-99b1-0075dc68281a@perard>
References: <20230831132546.3525721-1-armbru@redhat.com>
 <20230831132546.3525721-7-armbru@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230831132546.3525721-7-armbru@redhat.com>

On Thu, Aug 31, 2023 at 03:25:45PM +0200, Markus Armbruster wrote:
> diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
> index 3906b9058b..a07cd7eb5d 100644
> --- a/hw/block/xen-block.c
> +++ b/hw/block/xen-block.c
> @@ -369,7 +369,7 @@ static void xen_block_get_vdev(Object *obj, Visitor *v, const char *name,
>      case XEN_BLOCK_VDEV_TYPE_XVD:
>      case XEN_BLOCK_VDEV_TYPE_HD:
>      case XEN_BLOCK_VDEV_TYPE_SD: {
> -        char *name = disk_to_vbd_name(vdev->disk);
> +        char *vbd_name = disk_to_vbd_name(vdev->disk);
>  
>          str = g_strdup_printf("%s%s%lu",
>                                (vdev->type == XEN_BLOCK_VDEV_TYPE_XVD) ?
> @@ -377,8 +377,8 @@ static void xen_block_get_vdev(Object *obj, Visitor *v, const char *name,
>                                (vdev->type == XEN_BLOCK_VDEV_TYPE_HD) ?
>                                "hd" :
>                                "sd",
> -                              name, vdev->partition);
> -        g_free(name);
> +                              vbd_name, vdev->partition);
> +        g_free(vbd_name);
>          break;
>      }
>      default:

Acked-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 10:48:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 10:48:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599275.934611 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeT4-0003cC-D5; Mon, 11 Sep 2023 10:48:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599275.934611; Mon, 11 Sep 2023 10:48:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeT4-0003c5-8R; Mon, 11 Sep 2023 10:48:34 +0000
Received: by outflank-mailman (input) for mailman id 599275;
 Mon, 11 Sep 2023 10:48:32 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfeT2-0003bx-Qy
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 10:48:32 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2060e.outbound.protection.outlook.com
 [2a01:111:f400:7d00::60e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bf76d921-5090-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 12:48:31 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by VI1PR04MB9905.eurprd04.prod.outlook.com (2603:10a6:800:1df::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Mon, 11 Sep
 2023 10:48:27 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 10:48:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bf76d921-5090-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jOhOWype7y3F1105NJS19bNhL7esp+ljOpo81WKx6yzaPan9MDsIpZ8d8ImSzG0Us+Qu2E0DcvxQagtmYqkhibzlxVXm1A+afTR2CByQtmVGZGeL+FR4+46dTu4D6QEGgy8zcSF30iMpkaKiBKNhHsiMftdvxtIt/JJZtezCLEy9Kxwj9udvikWt8IDtk62B128L4Vxvi3MsAjiVc7YKUezXI/Z2yE0lkcoHMfcBHTed6LjjmoRrjMk4Sx6+SzNUsNRoYKs/pIm3ZYqdH+yL66m9Gb/IWcK5ABQn3xgkwFEy4Tzbtn4JJJywuehYjgpWVAPpTbmrC1vhQ8no0poTUg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=M/w+leVuEfX5h8jMcwELkPfIDAzTIARjralDssZEDIY=;
 b=H/p9eZUHgLbXzYfDB8XmqDhZpN/wWTPKcMXre6WQW11sxkBwhLVbNPXBoBFfqbaBu5cd0DOHCd4Nx67nF84pBwNoaOL1xL3rhzuCoOhUyOz0FiipCsa578tT6JuG3W1/sU7d9mQ23N9TIkEVRtSm2l939C31j/5gKKRAecZgPR/1H313CUXekwi2vxI1kuJjqUCT0BIWSce2+zK/hZ16lDMVwadEhGVU5t5oxoWfVDql7tXtYbLIHvrukAp9mrfr6zmYGNZMZ8gP2ED2vCAPtD+VFTWVNh7lZEauHe8L0UUuGXuBRxFSZCmOnKfmtcSZXuKbHOqObD7NIeCnl671gA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=M/w+leVuEfX5h8jMcwELkPfIDAzTIARjralDssZEDIY=;
 b=wzs9oEQEc4W8FuL0OQa25pFpOuhxfTAU8mQQdTQPAjkwtKK6jDN4HGOoa2lQ9OrqyIHdz7rB6Cf0jAmoflVFrMGpxIR4We484M3MGRUgUI+9IFP/lW6tBMu/MtVdtCCpElZOUhLE9ytNwSnkOvSc2CaJXFge9UXlZBvzGa2oEcNlKExRu2V6YK636+erMZqPDp0YaI/q01X8V/we08B+kGbXNUFcllajox/ZwBMsZ/u2fNfwFC0KL/tZZkzAz3LUeM3w26xsWR8UbiTEd1P86SYaMiqoh4wc4w4Bzl86yoYKkSwfMYwVucAdZXoh7KEw4b1QJ26SbbiOcMYptpIhjg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2a19aef4-8bd6-ef8e-de4b-b85135dc7ea4@suse.com>
Date: Mon, 11 Sep 2023 12:48:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries marked as unusable when
 parsing MADT
Content-Language: en-US
To: Simon Gaiser <simon@invisiblethingslab.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
References: <20230911101238.18005-1-simon@invisiblethingslab.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230911101238.18005-1-simon@invisiblethingslab.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0228.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b2::12) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|VI1PR04MB9905:EE_
X-MS-Office365-Filtering-Correlation-Id: 6bff5d1d-eb4c-4cbb-3fb3-08dbb2b4a131
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	b5ATL+/FLi6femkyBzz46eBZZato05RQIBfibSWl/WV97g01pKf34n8XoDSBsoGhbwV7a+6cHRmZ7X9Pwsn7Wz3F+gKbfn9jt8xgxVgU6BLP65DRccQp4afirFJHDBFt6paASrkOlYH2VCTtLiE5bErEuzPTVGRr933+F/dmiIZU65YAykJOFcyJ3VCLa2XWoTtuXVQpVsWtCmvdHyIi6MFerfhRq2QcmOAQbu+OQtd0rhVxV+wmAlMMvuR+XHmjhJAkB6e1iwjK9HH6U9tqkNWB50rbXYglpi89qRQuYr/jZqULAqWsxKKzcThJj1p8iUARTQm/zOaWEv3Q6rzzAkeU/L9aFprLl6imyffkaF78xcoLzftK2pkAiosvytFY4Eyof3bxKEzZjKWm7j6JhMItBvWgAkfe8Clyo4VaLhICtXmXAcjp16OzqwUpieuqppzmn/S0aPpWIlz6G8rmHIJWXf5j0L0LFCW9p1rDFRno1S7/dnciNkhcTZY02Di8UjMKPGOscpwF67eGzrgE/6g/0W5j/jqLEB+EUZ9Ozlz/njw6iAz3MN8NyCC5+XtNLSxEFtwF9GJq139C/BRVjZMjKIHC9TWSU536TGFqAOMudhMACN05p9qHB4UXQFGRQGFoP6iSYZ2kftx98xyI7Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(346002)(376002)(39850400004)(136003)(366004)(451199024)(186009)(1800799009)(2616005)(6512007)(6486002)(53546011)(6506007)(26005)(86362001)(38100700002)(31696002)(4326008)(41300700001)(8676002)(8936002)(2906002)(36756003)(66946007)(66476007)(316002)(5660300002)(54906003)(6916009)(66556008)(478600001)(966005)(83380400001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MFJYcEZ0YWpqRjBrRVI0b1plKzBNRTNSV3FYOHNwWW1MK0YrWEJiLytvZk9a?=
 =?utf-8?B?Yi9QWmJzTTRVQVl5OGpJdDJSb282ZkoxNktxN2V0MEhENVFPUENCM3pwWUtH?=
 =?utf-8?B?emFKTGpBbEo4L0lsUW9Zd1hhcW5kbGJPVjNrRFRkTmFtWDJDcjF4Njh5LzFP?=
 =?utf-8?B?WFJHR1kvY3p0N0ROSWVPenFsQTRlZTFpd3ZnZ3VvYVIzQVhjWmtYM2F3Rjln?=
 =?utf-8?B?M0RIby9ScWNzWm9KaTl6djljYmZ5azV2T3ptZmNZaFNiZHFreUZNVStFUHkr?=
 =?utf-8?B?MlVMdzRCWXR3ZE5OQitUT3NVOVJ5MGNjUjIwOXlkaDVzQXB5VWtQYlJpMXhC?=
 =?utf-8?B?UElQMWRPQkhjbE9BMUQ0Um8zSHl3U1E3QituOHZBNlYwMlc4Q0dqMEIweDky?=
 =?utf-8?B?N1d6L3lwMFJmdGJJelIyRXNldHVBTnZHVWJodHI1TCtsalBjT1ZkcjFGVHBM?=
 =?utf-8?B?SGxwTGM0L0xPeGdlWjV1cjBrTTZIMUlXcmxwNWovN1o5WGYrV0VTZjNjQWl4?=
 =?utf-8?B?djJ4L3liMnprWE5tdEhhcGkwbjh3cUt2aGorbERFOGE4TGxObk1NMThDOGNt?=
 =?utf-8?B?TXErVHI0aDRVYXdMMnovRHMvcWtDQ1JRSGdtbGs5N1VUMUV2WXhjd1RPeVFu?=
 =?utf-8?B?dDZJMk5oVXlHTUszWU8zMktIQm9TakJ0U0o5cFFnRlNHMGd5V3E4cGVPYjhl?=
 =?utf-8?B?ZlpoZ3RjMDlpR09HM1FUM05zRzJqK2JDdEJvYzdhRXI4RHpiYzFINFRKTENl?=
 =?utf-8?B?dmxWaGlEQlJON01RRk52Mm0rMjkzS3dpUVB3U1RGVGVxMFcwQVQ1WUtGb0dG?=
 =?utf-8?B?V3l1SGQ0NVV5T1JQOUpYQ0laZ2QxTmZ3RGlySU9YT1ZBdlJBZmZxVklnQTdx?=
 =?utf-8?B?MGlVNXFJdEdyMllLODQzYXlDa3ljL1IwL1o3a25kbDUwQzVSRWpPeVlDN1pH?=
 =?utf-8?B?em5yY21YcG1FMzY2VEROWXNHM1ZPL3hwc0UrM29yTktsbEE1cUtoVG9FOHhK?=
 =?utf-8?B?dHgvU2gvK3FPa0FYQktETS9GNTA3aytZdWJ1ay8xbWpscTdGQkh2c2RMUVQw?=
 =?utf-8?B?KzNnSmxzRmlUYnZhMkJOdUc5YlZSOUV3dUY1VVhUYnZOZ3NqL2lucDY2am1B?=
 =?utf-8?B?bkNwVGZZTmNTalVMT1ZmTHF4ckoxRTVZY2dPbXRpYUxnM0NVazhLZUFrTkI5?=
 =?utf-8?B?NGxCbzl2a0diMHpsVzRVSk56a3JaajlRRXFxNlY1MjlMOWsxbUJNa295RUR6?=
 =?utf-8?B?aGxscExCamcyVHFMMStpb3J1K1hFM1AxNWhlUEswUUtNYkp4TmhtWnBjVEE1?=
 =?utf-8?B?dDU1UGhoN05EaUNyejNNM1J1Uk1FMTlWSm9KanFQVDFtZVVsOTRmRlJja0wz?=
 =?utf-8?B?NyttQjRkbUhCMU9HcVQyRXdJdXhmeEVPV1JvNzVFVHNsaEY5QmhSMFNwczE5?=
 =?utf-8?B?VUduOWlDekQydkllRmdNbjducW9QNXh4WU96Q3dJSlFNYUZ6L01JbzBUdGF6?=
 =?utf-8?B?dE1hbGRNalZHcXFoSlR4ZlRtZTJ2blJzeXZVMDQzRzZlTENwdGJGQU5DMTFS?=
 =?utf-8?B?MVBGb1Q2aW1sL2JueklFa245bDFRbEx4Z2NubTRTU3VJRzZjNEJ5V1ZBZVlK?=
 =?utf-8?B?UmVORzNVeTU5QWdKQjBVYXFnS3d5T2pvVXhHd2dPcERVQ2NSOW1WaDRHZTFX?=
 =?utf-8?B?WDlrZmpja2dwK3NzV1dSRnZuem9ZbTBSczJ6RFRTNS9PeVpHTmtja1NHeVla?=
 =?utf-8?B?ZzVGdzA0S2xEMzgzaHVLd1U2bzIrUC9CMWdEcjcwYXVFaG1CMlhpZmdDd0pl?=
 =?utf-8?B?WWJ6dUYyNUZMT3lnU3hWSXh3SW5kcTVJMHBJUGNiVmEyelRFWkF3SHBmUVdw?=
 =?utf-8?B?MU91Z2RJQmd2ak8wYmZPSTh5Wndza0t2SnhZZ05zZlVJanlQQWxKcWR1a2NG?=
 =?utf-8?B?OUUxbTdjM0g5UlBISjNwN1R0TjFWWk91dXF3Wk9FOGkyS0ZLYXlrK0k4Ry8w?=
 =?utf-8?B?QkM5QWVUY2VqbEMwTmVpdnZSN2ZLNTdnbCtYOWxib3cwcGt0Nm1WVStZdE01?=
 =?utf-8?B?SlJiME92RkUwbmplUy9qTkU3QzhyaWJRUVRJcm9xSmF4S2ovb0dTelc2V25q?=
 =?utf-8?Q?4mHfDVYen8OH0vW1l8JtTWyeP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6bff5d1d-eb4c-4cbb-3fb3-08dbb2b4a131
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 10:48:27.2803
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: FpQak93jaqNFPOh+KXFNGvXeXFFYKtohogXnzoBRYLwrfW3gFIJPlXx8IzsrYhZ+DrcOG5o4Cee1CNlqrQA0hg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB9905

On 11.09.2023 12:12, Simon Gaiser wrote:
> Up to version 6.2 Errata B [2] the ACPI spec only defines
> ACPI_MADT_ENABLE as:
> 
>     If zero, this processor is unusable, and the operating system
>     support will not attempt to use it.
> 
> The bit that later will be ACPI_MADT_ONLINE_CAPABLE is reserved with
> "Must be zero".
> 
> Version 6.3 [3] then adds ACPI_MADT_ONLINE_CAPABLE and changes the
> meaning of ACPI_MADT_ENABLE:
> 
>     Enabled
>         If this bit is set the processor is ready for use. If this bit
>         is clear and the Online Capable bit is set, system hardware
>         supports enabling this processor during OS runtime. If this bit
>         is clear and the Online Capable bit is also clear, this
>         processor is unusable, and OSPM shall ignore the contents of the
>         Processor Local APIC Structure.
> 
>     Online Capbable
>         The information conveyed by this bit depends on the value of the
>         Enabled bit. If the Enabled bit is set, this bit is reserved and
>         must be zero. Otherwise, if this this bit is set, system
>         hardware supports enabling this processor during OS runtime.
> 
> So with conforming firmwares it should be safe to simply ignore the
> entry if !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE
> 
> As a precaution against buggy firmwares this change, like Linux [4],
> ignores ACPI_MADT_ONLINE_CAPABLE completely if MADT revision < 5. Note
> that the MADT revision was already increased to 5 with spec version 6.2
> Errata A [1], so before introducing the online capable flag. But it
> wasn't changed for the new flag, so this is the best we can do here.
> 
> For previous discussion see thread [5].
> 
> Link: http://www.uefi.org/sites/default/files/resources/ACPI%206_2_A_Sept29.pdf # [1]
> Link: https://uefi.org/sites/default/files/resources/ACPI_6_2_B_final_Jan30.pdf # [2]
> Link: https://uefi.org/sites/default/files/resources/ACPI_6_3_May16.pdf # [3]
> Link: https://git.kernel.org/torvalds/c/e2869bd7af608c343988429ceb1c2fe99644a01f # [4]
> Link: https://lore.kernel.org/xen-devel/80bae614-052e-0f90-cf13-0e5e4ed1a5cd@invisiblethingslab.com/ # [5]
> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>

Just to avoid misunderstandings: This change addresses a comment from
Andrew. I does not attempt to address my feedback on the earlier change,
which - as indicated - I intend to revert (timeline extended until mid
of the week), unless by then my earlier comments are addressed or the
suggested possible alternative is carried out.

I think it goes without saying that this patch can't sensibly go in
until the earlier one was properly settled upon. In particular, in case
of reverting aiui this patch won't even apply anymore.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 10:53:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 10:53:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599282.934620 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeXM-0005Oe-SB; Mon, 11 Sep 2023 10:53:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599282.934620; Mon, 11 Sep 2023 10:53:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeXM-0005OX-PS; Mon, 11 Sep 2023 10:53:00 +0000
Received: by outflank-mailman (input) for mailman id 599282;
 Mon, 11 Sep 2023 10:52:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=nwba=E3=citrix.com=prvs=6119d0f35=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qfeXL-0005OR-61
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 10:52:59 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5d034074-5091-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 12:52:56 +0200 (CEST)
Received: from mail-dm6nam12lp2168.outbound.protection.outlook.com (HELO
 NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 11 Sep 2023 06:52:55 -0400
Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12)
 by DM4PR03MB5983.namprd03.prod.outlook.com (2603:10b6:5:38a::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 10:52:51 +0000
Received: from BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912]) by BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 10:52:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5d034074-5091-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694429576;
  h=message-id:date:subject:to:cc:references:from:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=hjZ1hmru5NkxkEm/Xo7rC/S+CmWd2NAbVZfbmjxWFg8=;
  b=evamnB0vM7ofp8hUoCBskrFvbtZxuJxKz9WgsQqrH2hiAjtOX5Wa5q8K
   /EAYIiyR0Uhf+nyb/vF+Be103eScO0ppx+Yo68vmgejbMhvVZgvK1SJIl
   E3EmnAW6U7rVkRyfu9gsDq7P4vuncTUsPiwZBM2BZjP7zfTd8f/yCrLRA
   c=;
X-CSE-ConnectionGUID: PWCrwTziTi6Xuccx3nnfBA==
X-CSE-MsgGUID: GsFYIFVlTEGEEHtLHA5ecQ==
X-IronPort-RemoteIP: 104.47.59.168
X-IronPort-MID: 120907919
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:HKugD6kNvRhyBvcYlauf4bTo5gyoJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xIcDzrUbP/cMGTyLt5waN7gp00Ev8fSzodrHlM5rH9jFSMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K6aVA8w5ARkPqga5QeGzBH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 cQnAyoSUgKCu+Po8K+wQfk3gMItBuC+aevzulk4pd3YJdAPZMmZBonvu5pf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkV03iea9WDbWUoXiqcF9t0CUv
 G/ZuU/+BQkXLoe3wjuZ6HO8wOTImEsXXapLTuXprqE72Qz7Kmo7JwY4ZHqVn/2Fp2GTdvJDD
 2w9pycllP1nnKCsZpynN/Gim1aGtwAdHd9dCew87ymGzq3J70CSAW1sZi5MbpkqudE7QRQu1
 0SVhJX5CDp3qrqXRHmBsLCOoluaJiw9PWIEIygeQmM4D8LLpYgyilfDS4hlGavs1NntQ2iuk
 3aNsTQ0gKgVgYgTzaKn8FvbgjWq4J/UUgoy4QaRVWWghu9kWLOYi0WTwQCzxZ59wEyxFDFtY
 FBsdxCi0d0z
IronPort-HdrOrdr: A9a23:mr70zKgIr9V7Iuo0+fcttIPTznBQX8d23DAbv31ZSRFFG/FwyP
 rCoB1L73XJYWgqM03I+eruBEBPewK7yXcH2/h0AV7EZniahILIFvAZ0WKG+VHd8kLFh41gPM
 tbAtBD4ZjLfCNHZKXBkXeF+rQboOVvmZrA7Ym+854ud3ASV0gJ1XYHNu/xKDwSeOApP+tfKH
 PR3Lskm9L2Ek5nEvhTS0N1F9Qq4Lbw5eDbSC9DIyRixBiFjDuu5rK/Ox+E3i0GWzcK7aY+/X
 PDmwnZ4Lzml/2g0BfT20La8pwTwbLau5d+Lf3JrvJQBiTniw6uaogkc7qevAotqOXqxEc2nM
 LKqxIAOd02z3/KZGm6rTbkxgGl+jcz7H3Jz0OenBLY0IHEbQN/L/AEqZNScxPf5UZllNZg0J
 hT12bck5ZMFxvPkAn0+tCNDnhR5wCJiEtntdRWo21UUIMYZrMUhYsD/HlNGJNFOC7h8ogoHM
 RnEcmZzvdLdlGxaWzfowBUsZeRd0V2Oi3DblkJu8ST3TQTtHdlz3EAzMhapXsE/IJVcegy28
 30doBT0J1eRM4faqxwQM0bR9GsN2DLSRXQdEqPPFXODsg8SjLwgq+yxI9wyPCheZQOwpd3so
 /GSklkuWk7fF+rIdGS3adM7gvGTAyGLHXQI/llltpEU4DHNf/W2XXpciFrryLgmYRQPiTjYY
 fxBHoMaMWTalcHGu5yrnnDstdpWD8jufYuy6UGsmK107P2w7LRx5zmmdboVczQ+GUfKyrCK0
 pGegTPD+N9yW3uckPEoXHqKgbQkwrEjN1NLJQ=
X-Talos-CUID: =?us-ascii?q?9a23=3ADqRwtWqKeJDDm0OrGxlMb7TmUfgaWWfC8GXRH07?=
 =?us-ascii?q?mOXtiQ63OT1me0ooxxg=3D=3D?=
X-Talos-MUID: 9a23:kyXKbAsCFbvXEtwlNM2nqypMBeZG3aCSJW8gvLUan+mtaCF7AmLI
X-IronPort-AV: E=Sophos;i="6.02,243,1688443200"; 
   d="scan'208";a="120907919"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZOtHYu5Sl4a6qv55gROCFo2zW/7yay7s8pE4P5M8WpASrMiKaoILtgEjYE7l4zYzluS0MVuVYCzEFamIJvg6Z3YyEmg3rdT4TL2xJKxz+jj+gCkszbI1FE3UcXhTWPyfOWlLFaU7CFiWjktxkG7+358tZyO3IH4u5jrdidPWm40x/uEtHy5AUUO9ng4U5rAG1cM9Xb9CxTbrwDaURAOj9Vxgl0/H26XSchvyIGfvIF9cUHQK1ZTMHRlzLAdnQ8HJJhm+yToyFA5nwHeGLfgbO5kzA1WQqFI39hmDEvv9gSFtiE5Mk1MuwuraL2vTkZ3sZ+xCXLodG8xpmtHb5Psgdw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xelWf9d6rI5cqVeQqpNe4QKfNCKLQbSwLeta34xxgx8=;
 b=GGLZTVsybYsLyw8VCvpJObhlq9Rzfgx8Zc34R86x3R2qB3zw0ClcEjljdFGagJzAF8r3C7zufGbprZE19pYs6gwmHrBb95wZhDouDb1Nbu/CnuCUy+nJY2VqSamqldJryK7JAPIYmPNYGLrdPxDcHE6YcfzuGcSrDxmtngKF4XYOWR0tAviVVJz13CJWIu+LEnk00wLXxsuNWrfBoA1oMBhPFPuvwK5Y4cPBlctcdAotL6beaHcygQzz5deIMr/LJEXB45OQ9mAaenhvfUSi1N4T7rAeDj/T3lJdE8gyzCxd/eE1ICgdP1KTVV9UP4WZaE4y+C0ERMdlJiBiHpQ7fA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xelWf9d6rI5cqVeQqpNe4QKfNCKLQbSwLeta34xxgx8=;
 b=MlUR1inOdxk2fKSjpXloSRYC1+S+zZCmNKiaLaOMJ8/dfEWEwoEHovK+EK5uh1ipyKHyRSKzkXKuL1f9oPxydbOYY/s4j1ZSwgKJ8Bl09cimdw5vdXRLSXwQSWeTrXjlLJTglruXCE6Zl5nEKZ0JCDI1TpGLX2zbxBVwG+Ik0Ys=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Message-ID: <eccd7f3e-abf6-2e6d-063f-477ccbdc6b5d@citrix.com>
Date: Mon, 11 Sep 2023 11:52:43 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v1] tools/xentrace/xentrace_format: Add python 3
 compatibility
Content-Language: en-GB
To: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>
References: <20230906131616.7681-1-javi.merino@cloud.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
In-Reply-To: <20230906131616.7681-1-javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0333.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18c::14) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|DM4PR03MB5983:EE_
X-MS-Office365-Filtering-Correlation-Id: 800c16af-7d08-471e-fd92-08dbb2b53d64
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hBjZ5wM02DPaagSBIkiCVOow9TkvqGXeXoMQ/jd2Q2S1rYkSeaiTmxPidvgm+pCWz/z0/Wys4+s2CxCytwR99FHOAozHmORsW3B+AK3Qg9w/6XIndSbd7RjgQrzlYh/nafnQyjC6mSeIEUj5ieAJDuTPThQdjKlICBN9Mdm7t5bekZRRrnD5xcntjrc1LiND3AsCKx65UakBpP5/o7XhV1jRycKfsMLefBCfd+3mheA0NzihaOndy3E1meoTuTl//sYE7QHvzYQDQ5ih2bPNjMuMyhvFiZJFIXUp1s01ZBrhw28I2oNnRc9d5r+d5htYBr3r5mWWKUj0qaSLki1MEN0BLsJY6L9T0AhxSJkXAT1aLtsdxMljbCPwcVQEoCpnsAdHi7yM35ZeTOmbY3Hfji3KKej57tZ+KL6uJZyP/n7JX0RqVkdn2H5X3R5hh1auEeXC9JxGllGLODXo2TmCT20LRxlLY7wPVWi/k1stfrOtY3bqf72oE586AskNxaASlQOKEwCaUh/cIatJxbYCIOl8WpfXrX8nw/8WOFapIyTrErgHTyva+77IfnlUuLYLjO+HmU5GgGHcXTalyN9S2qHbXiCOn//Jycn30vhWuF6rMKNCtlvm36sOHngfqc692/Ot9kGXiwPdd3giniQ4jw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(396003)(346002)(39860400002)(366004)(186009)(451199024)(1800799009)(31696002)(107886003)(26005)(86362001)(4744005)(2906002)(6506007)(2616005)(53546011)(6666004)(6486002)(82960400001)(6512007)(38100700002)(478600001)(36756003)(5660300002)(31686004)(8936002)(8676002)(4326008)(316002)(66556008)(66476007)(66946007)(54906003)(41300700001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZFlhN1IxQjBoU0RwQ0drUEg0b2ZlMXRnTFZpL2ZsREdPMEE0QURQMFlhSXdJ?=
 =?utf-8?B?WHo2SENWSWFRM09pa0VXSGlKUHJoR0lpUFRwdUhMTkdWYkdMWnc0cGdLeFQ0?=
 =?utf-8?B?NzBMalU5WGN2STBvaEovUGhnSVNVTTR3Q0g2djErL1ZpYlBOQldUR2MyOWpD?=
 =?utf-8?B?NGJTTW1melY3UFd4NWxoYTJqbWFNNmw2Y1pvYjc3UkUwY0RWVUVMemh2cmsz?=
 =?utf-8?B?YXJoN3NmVWhiWFRtb3lEblk0M2QrMEFNN3VGVU8yam5jTDlxUCt6RFZkaHZS?=
 =?utf-8?B?cldtQWh0WGdBSWRhZ24rVnN0Um1YT1FEUTlPc1hlZHp3dmR0MjdxUzdSOWJa?=
 =?utf-8?B?UUIzMFJuejd5WDZ4eFdOcFZncWJybU1IOFNHaUJpZWx4RWs2cWMwRS83QndN?=
 =?utf-8?B?enNoaVJ5ejZBRWVDY1lKNXdEZmVGamhnYzdKRm5ydGRzYU1FVHYxUzZaNVRB?=
 =?utf-8?B?clk4UGNkd2NBV3NONkREdGswL1I2Y2NHMnR5SG1yREFKL0FmZXhQWDJTVDFJ?=
 =?utf-8?B?MWZHTVMwNW5wR2RYZzY0amlzQ3UzQkpDS2EramJQdXJpVU5TNzJtVVdPVE02?=
 =?utf-8?B?b3oyc1BidUkvellRaUZrOWd0em5mVkp3S0hVRkhnRnB3bDZlaHlIZGJPd3Rs?=
 =?utf-8?B?eFk0REpwd1dLd2RiVlJRZ2xNaXdrV0pCaXFxUkNvSlVSQzJUWlc2b3VKZHc3?=
 =?utf-8?B?aFlYcFNIamFnL0N3RG00T0ptdTkzQWRZMW91K0RGZWlkaEgwZXRyODhIS0Zq?=
 =?utf-8?B?SVgzQ2UvVWwzREk1T1ZPenpNREE5SU5yTmRXSjFNcHJZbjhoc1ZBdUZEalZh?=
 =?utf-8?B?empwNks2MDhYRERueEYyUWF5akVRS0lsOGE1UU1qQWJyR09aMWdIYUYvcWZL?=
 =?utf-8?B?S1ZJRk95eCs1eDdRM0MvWENkZXJWSUQ4Zmd4WUVrWjdFWUNTRHlqaWQ1Q0da?=
 =?utf-8?B?azJVdkJjUFlGbTNFTkpRSUlqR1VEVExCTE01MmxpVnVlNzZoaHJmVmY3cWly?=
 =?utf-8?B?Ylc3WWYwV2p2UTJySkpyc2luK1lMaFRXcXpjMjRxZjNoSzlPeTIxZCtZOXBa?=
 =?utf-8?B?OVpLUzBiQTNZdUVEaXdGK2hVOTRKYnpwUHBBc2hzN3dIYytWd2w2aVVyWFYv?=
 =?utf-8?B?L25aSUR0NFlVNzZKek9SemN0bWpOL2hhUjE3dEoxWVVmZ0sycnpqZnJWSmJh?=
 =?utf-8?B?Mlk5L2RtZnRGcnh5UTlKS1BhNisvM1VsbEV1TjJRUHdkS2phbE5oQm1mRlds?=
 =?utf-8?B?TEZPZE9JWXkrejg2YkU3MUNCcFlaeldsZk4za0wyNlJkKzY5bEppYWZ2VEpm?=
 =?utf-8?B?QXVBMDhKZUhLeTd5cGp1dklPME5XT0R2K05XK2hYTU96TlBBbjlMWnVpN2hn?=
 =?utf-8?B?dEE4YktsL2xmeXdwQkJpbm14TTdUdEtDSERsY3B6SjlsM3JlaWJHcVJSMUZo?=
 =?utf-8?B?M3F3RTlneUlFLzdjZnZRS3B6TVovSnlVOURhYVdXeVJzbFI5TVYyUG16eVho?=
 =?utf-8?B?UUN2NUJRZnVsWm5WakcvZUVnOUV4VFpDSWhoNUZpUjhSSmZ3WWdMcmxNdTBP?=
 =?utf-8?B?N0VsSGpaTHBPRS8zbjd0MUxNdWFoWUpncm0wOVhROE5yREZRTXY2SDQ1TlNM?=
 =?utf-8?B?SndjQVA5Y0dwVmdQSWY5b01Fa3dVNWhsYXIxN3Q5YnJjV0p1amVITEd4ZkhT?=
 =?utf-8?B?NEttN1FxbEtHVGF2V3JWUHZPOWhPMkdmQUJ1T2RsZ253SGlxR1A1RFJzK3Bj?=
 =?utf-8?B?V1k4bW5BYy93NlJGamJGamk3Mnl4d0VFanFkaUVLNDBlMEJqWm5lbDRYZnRk?=
 =?utf-8?B?aVBrK2l0Z2Npd2Q1NUhZcmpvaHpzYm5CamVTTk96eDBFNklJTGdkcFlHU1Jo?=
 =?utf-8?B?QUk3dTBVRUJ3QmxFYXloVkt1SlhMcTdYb1hpa0Y4VzFSbzRxN0FyVFlNOElS?=
 =?utf-8?B?MTdvZUdCZi81LzBqQ3htR3AzZmMzbDU2QUFJbmdDSk1IZFhpcURHTFF2WGxn?=
 =?utf-8?B?dGs1UEQxamROUkxYTDB2V0UyZDdneTR5N2QvVkh2czFSVkxiY0gwV1dIN2o5?=
 =?utf-8?B?cjRUblZEQWZpVklUa0hiK3pUTzZWNnlBTVB4R2RTUGhZeUEreVpFVStVejFh?=
 =?utf-8?B?T1RFckFxcHBzU29DQTc3RytTdjJMVGppUS9VNUlQVlZqRHpRbEFxY1dTTkJ3?=
 =?utf-8?B?TXc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	dKaH+TroXK83qzuKDIcE4UinjpMOueMsGHaQIeAJP3ZBGkBTqGZycip0wo7cvc9kWxDW5IR7FHtttK7QMjoj+vJfwL4ZZbnshj2FzXuDkBdxDCG4SYZ4IKrhT3DNu3I5UQyYatpqgGH1TTZIYyr2FU5uRDHmuM9AvGMR2HDd9kFDidxVrSMq2i56SU8F3sS2+JtIQlC/OIBj+qA3s5/4wToQUUFmR1ZS0mxXGZg6lv1KBL8VJMAsnRwM355W9LlvVNNMn8aLmKlqwgYduaAqF7/oD69Po0GvRaPRFZ0oUuC+e/p8w4ime/gc+2rPtcNuwObakkX9ZnwxktmqvMmnPqszT6/f9JX8XdVmiB0V0it6x3I/naNyucAAEMcDMb8CroLmDvfLsdeGHGQ6m73S5ylIlnNqR03RR/2Uv3UGaAn7yXqYsvfy8d2TasPHJP8o4rmq52KrSrq6He43fRb8yWlZdtDJnMb7Eq8gV9ODZapHAYJ74C0/84OduRU0afXSMlxC4faT85/2EX85tIDrjBe2CFYARrOTQ31E5MipZZ8TZzvbSrtPRz1iFfA00eG5r05jB6mF3HR6kyhJSSPLuH35KiLtePWd4j22i6m6L7hssV33aQBdxMnQvUTX3SqIgTV0JVwoBRNiqDAjCAT4XpyUM5d2IOrnrbdVahVuktA6k73lOTP0K8wpC+9A01YkJbAyM7NC7ahYW/z1YLCkXl89UmVDMsvg+X2WhYl8/3nx4yQatd0qnw0bQ+LOYFIlRrm59kKMd8XJPRNUjZuJiAaGkU7dqo2WElOURuqYZY9gH+4TWpydMeyb8h5YCzek2HLauVFkBvf5deTsAAD9mA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 800c16af-7d08-471e-fd92-08dbb2b53d64
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 10:52:49.5621
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: MY7fjreUQOGlP6w5KRJmZdRcZeiLjg50VtROYK7/yNrWH4BGtAWDtmdinth79zQNOO/ksKD/AQ5np0OgTnCy0f4qctqek6LUHdubqA75KKQ=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB5983

On 06/09/2023 2:14 pm, Javi Merino wrote:
> diff --git a/tools/xentrace/xentrace_format b/tools/xentrace/xentrace_format
> index 5ff85ae2e8..166ebae325 100644
> --- a/tools/xentrace/xentrace_format
> +++ b/tools/xentrace/xentrace_format
> @@ -4,11 +4,15 @@
>  
>  # Program for reformatting trace buffer output according to user-supplied rules
>  
> +from __future__ import division
> +from __future__ import print_function
> +from __future__ import unicode_literals
> +from builtins import str
> +from past.utils import old_div

This adds a new dependency on a package we (upstream Xen) don't
currently use.  AFAICT, it's only for...

> @@ -223,7 +232,7 @@ while not interrupted:
>              last_tsc[cpu] = tsc
>  
>          if mhz:
> -            tsc = tsc / (mhz*1000000.0)
> +            tsc = old_div(tsc, (mhz*1000000.0))

... this, which is always int / float and doesn't fall into Py2's
int/int behaviour in the first place.

I'm pretty sure the code can just stay as it is, without needing to use
old_div().

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 10:59:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 10:59:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599290.934630 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfedJ-0007OY-Ip; Mon, 11 Sep 2023 10:59:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599290.934630; Mon, 11 Sep 2023 10:59:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfedJ-0007OR-GE; Mon, 11 Sep 2023 10:59:09 +0000
Received: by outflank-mailman (input) for mailman id 599290;
 Mon, 11 Sep 2023 10:59:07 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfedH-0007OG-Hd; Mon, 11 Sep 2023 10:59:07 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfedH-0004OW-Fe; Mon, 11 Sep 2023 10:59:07 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfedH-0005d6-9E; Mon, 11 Sep 2023 10:59:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfedH-0002kU-8o; Mon, 11 Sep 2023 10:59:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=DinlgydC1t5a4xzcd/cyd2At7viQ7dT1hVMxxs+EcA8=; b=5Ri3afkY+8n0+bMbTRz2JyL38K
	BtDEm0elnzz2BAiRWWRQABHUBVH/guMjMHe64T/qkH/f1qzXvpT794g/TCaZuXWGeQ86ac98ejhCA
	umxwKubW8BwzOHAhzsnhuwQJirDBSSRdbiVseTTuI67gORD2RFE1QqbHGWuL4pSk3E3k=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182930-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182930: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=35949b8c58cb6c835da1fdd8843ed51727e654c0
X-Osstest-Versions-That:
    xen=49b2d6a529122f10e17a17f807d8d51154b5ba14
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 10:59:07 +0000

flight 182930 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182930/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  35949b8c58cb6c835da1fdd8843ed51727e654c0
baseline version:
 xen                  49b2d6a529122f10e17a17f807d8d51154b5ba14

Last test of basis   182789  2023-09-08 23:00:26 Z    2 days
Testing same since   182930  2023-09-11 08:00:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Oleksii Kurochko <oleksii.kurochko@gmail.com>
  Tamas K Lengyel <tamas@tklengyel.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   49b2d6a529..35949b8c58  35949b8c58cb6c835da1fdd8843ed51727e654c0 -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 10:59:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 10:59:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599296.934639 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfedh-0007qF-Qq; Mon, 11 Sep 2023 10:59:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599296.934639; Mon, 11 Sep 2023 10:59:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfedh-0007q7-O9; Mon, 11 Sep 2023 10:59:33 +0000
Received: by outflank-mailman (input) for mailman id 599296;
 Mon, 11 Sep 2023 10:59:32 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfedg-0007mO-9M
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 10:59:32 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on062d.outbound.protection.outlook.com
 [2a01:111:f400:fe02::62d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 483af6d4-5092-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 12:59:30 +0200 (CEST)
Received: from DU6P191CA0019.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:540::23)
 by DB8PR08MB5514.eurprd08.prod.outlook.com (2603:10a6:10:fa::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 10:59:23 +0000
Received: from DBAEUR03FT025.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:540:cafe::b) by DU6P191CA0019.outlook.office365.com
 (2603:10a6:10:540::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 10:59:23 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT025.mail.protection.outlook.com (100.127.142.226) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.11 via Frontend Transport; Mon, 11 Sep 2023 10:59:22 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Mon, 11 Sep 2023 10:59:22 +0000
Received: from a251a66c4acf.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B5BF2CDD-9281-4521-8961-8158D1A58013.1; 
 Mon, 11 Sep 2023 10:39:35 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a251a66c4acf.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 11 Sep 2023 10:39:35 +0000
Received: from AM5PR0601CA0083.eurprd06.prod.outlook.com (2603:10a6:206::48)
 by PR3PR08MB5562.eurprd08.prod.outlook.com (2603:10a6:102:85::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Mon, 11 Sep
 2023 10:39:30 +0000
Received: from AM7EUR03FT028.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:0:cafe::55) by AM5PR0601CA0083.outlook.office365.com
 (2603:10a6:206::48) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 10:39:29 +0000
Received: from nebula.arm.com (40.67.248.234) by
 AM7EUR03FT028.mail.protection.outlook.com (100.127.140.192) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.11 via Frontend Transport; Mon, 11 Sep 2023 10:39:29 +0000
Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX03.Arm.com
 (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 10:39:23 +0000
Received: from [10.169.172.145] (10.169.172.145) by mail.arm.com
 (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend
 Transport; Mon, 11 Sep 2023 10:39:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 483af6d4-5092-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IJNu8O7FMsLnXn028+FCz/H6/lLmqhK1lHr+ye0OwDQ=;
 b=6z4lJY/rLTiSugX/RQQ8nMUsvgiesRc6+xvCuQNE4PMjlqzlxE7GUk8XWpWYrpE0pMi1cZ/Kr3Ds0fWWjMV8C3KCUpB2KSaclUnNHOuInV0dbzPRgQBo8vXwmKuE6CMNGu6l/twOl9GPQffWY2Q8QRHq83+1CTSJysAdNigW8LA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 358bc5f41c65dcef
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Mq1PBFcCgenWxfOKI/EUiE3aKIDUWtsidLCPPRcE2uzn29t8lBRe30mxnKne/+CDjzbjaSeKmPuy4NpkNnutwnh46XR4upwTE74yc4oeI+3/MxguDyTZp3Myt6+IpUSXzvQKTJF8axC2JVqa0kP2CAVlQGxZsjNySpPOXsHTHoRgV/7FzlpzuZ0uurbwzOrGSSpKVf+rNLK5fkac57Fdohbo4LYhBvVLq5EkHHOGJ3yf6oX3axKiyr8OLs0l2Cr+VJsJXFFhl55CNPOI5PHAFS5byRO5T9XvGQ5ZK17baaIWKaEvLKq0cEztOZ/Y9IvzLwJfb5ePuK+DBIhCLrKWRg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IJNu8O7FMsLnXn028+FCz/H6/lLmqhK1lHr+ye0OwDQ=;
 b=AxZIPGFvbc6u0rb8zNVgzT9Kx+0kodS+wZ1tBgO+KLtG+jJEcR1UiiI7lPnxRloPD5mIpoyHNAOVshxj40R+EgJU3NTkrhCo+ZyKKjzVucAHAKZA22lHG90kQJUMlkiVGUUUS3kTxP/59+bzQhXjWtS3Df+n9/VFhHugb2JX6jspO63Kt7blqiymxUfJad4TC6JUutVlpOtlal/UislDHqq75czMfYohgKwLnVy8P5/g9rUSoFrYA4I7hsPAfusJhYst+WcVBqbXwMN/7RqolGfrNZm6O1/Sny+C0XF0vxR5ekgDTK6EobnLEdn2m8JoIpoYASimlYEdvfPNmscAQw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 40.67.248.234) smtp.rcpttodomain=amd.com smtp.mailfrom=arm.com; dmarc=pass
 (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message
 not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IJNu8O7FMsLnXn028+FCz/H6/lLmqhK1lHr+ye0OwDQ=;
 b=6z4lJY/rLTiSugX/RQQ8nMUsvgiesRc6+xvCuQNE4PMjlqzlxE7GUk8XWpWYrpE0pMi1cZ/Kr3Ds0fWWjMV8C3KCUpB2KSaclUnNHOuInV0dbzPRgQBo8vXwmKuE6CMNGu6l/twOl9GPQffWY2Q8QRHq83+1CTSJysAdNigW8LA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234)
 smtp.mailfrom=arm.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 40.67.248.234 as permitted sender) receiver=protection.outlook.com;
 client-ip=40.67.248.234; helo=nebula.arm.com; pr=C
Message-ID: <61810692-e44d-7548-4734-b96c3b79b437@arm.com>
Date: Mon, 11 Sep 2023 18:39:18 +0800
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.14.0
Subject: Re: [PATCH v4 09/10] xen/arm: fix duplicate /reserved-memory node in
 Dom0
Content-Language: en-US
To: Michal Orzel <michal.orzel@amd.com>, <xen-devel@lists.xenproject.org>
CC: <wei.chen@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, "Julien
 Grall" <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
 <20230911040442.2541398-10-Penny.Zheng@arm.com>
 <5212bdc4-9bce-fc5d-8a47-ae5e5fef37e3@amd.com>
From: Penny Zheng <penny.zheng@arm.com>
In-Reply-To: <5212bdc4-9bce-fc5d-8a47-ae5e5fef37e3@amd.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 1
X-MS-TrafficTypeDiagnostic:
	AM7EUR03FT028:EE_|PR3PR08MB5562:EE_|DBAEUR03FT025:EE_|DB8PR08MB5514:EE_
X-MS-Office365-Filtering-Correlation-Id: 28521c90-53c4-488c-b8e8-08dbb2b627fa
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 FTqVds2lJHB9Rk9Du5YqYHWC1IuE1OK/a61510arBd7duZHtumjRnPNVwyABVVq7SeVawVxYsK70vEXZreLev8sbMfX+KwPsKWOEkyZKC78QoQ5CRQDkN2hO8BbbT6urcVmTgNmJFiDRF1YuWiIkIpZQYfokohncQM5q9FH4eC+/mU0tI2cvUms+zwNld9WTsCd7c/MyRb9N3gezGjblnEylz4mB2zdjP24mSEZBlRitBFHs6C8mQ3VIvPdqDdkRIb0bLVMXKrHwSoEv38PV80IqVYqAI7vM0W+Y8ctarjPUOqHiFafWJT/nybwttz6EMc/nK1nxHUOy+ECvFEHAo/nP4ZKkjfEjNwIt+ZOAltvKXLHmSAxuAMin0SE+0Oif3J1YNZwmigA1VmvnnB03xYI7Fh9UmfENgJyIge/9Vlz7lDuZuap2PI/VN0FlaccCGxqkRKYgvPoHyX2Em7SOXnYJgg+aQEddjwi/Uue48pepf1XJzHDwqvDciHQ7JdUyJ3OUWjqrS2vp5EJ1pLnotUqjXeka07FdS/KejAUcChc+o1UlWH8Rk+UHEIeZzHzXOYPC74Sn35SDj58JliwT04A3zyVTG/2FqA7Tdfpin7SFPocNp0ETGUZfYknWxmBJIqoYOZ+PuMMjS/Lf778fCcCA0Ec/O/BML84QPT4TFc89Rn1+vwbdUgiqZKW8PKXj/gYuNUA6AvlcxV/rhikYFuLgJ6y7SHRA9o1dX9LHSKOl9h+ochDb8iCcgRTTot+DeWrh7hPR75UvWhkxB0d05xPLqXBlScqD3sVADEmRaK9lOP+iKImlIUQDU7lpMUduUjFze2cH5wUTeLUPoLxJTw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(136003)(376002)(346002)(39850400004)(451199024)(186009)(82310400011)(1800799009)(36840700001)(46966006)(2906002)(44832011)(26005)(40480700001)(336012)(426003)(16576012)(41300700001)(316002)(54906003)(70206006)(70586007)(110136005)(478600001)(5660300002)(4326008)(8676002)(8936002)(31686004)(53546011)(36756003)(36860700001)(47076005)(2616005)(83380400001)(81166007)(31696002)(86362001)(82740400003)(356005)(3940600001)(21314003)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5562
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT025.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	c5d6b4d4-bf80-48b3-2de4-08dbb2b360fe
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mRMIX6alQbe6tb50OmHajwU57GhxE/ZhZZmULIUgv8RfdsGlHBh7l+AwCezE12ZjD8Pvot10nZJxR0lHEAMwXn2WRxfQ7YFjZXDsqFJMQdpFBOdo2nbzEojstWk/9+m2lIhfBKROc12xvDiCLkWHIa+dJRTGJ1emk2tTfzdfvRK7i7B5xYfkowTuJnTFw9GQwFK1JVzXGRZHD2hMtppg4LKcKiJIkQWIXMfVRoJqLRK4eqG/SiwFEjI1yEXDRUmC4JRT/zwAt5sv0HU0Qp7BdYiGhLLEF9PY2X/x9v30euwjaIz8AtT7vHaCYG7/QIBnMSzDxrI3qjJ/Us789dAlQzZOu0evLtPYTYMBY21OnkTdEvmGSBX4om1fzFDFyMudugaVm6zFTUJhOS8jXSUcDQwhqyb2JmffMs+aT1aJAwwXWAR1DbUWjvimcP/Ajh1cr4Ov/caAUcdvLoHYvMbQLk40KX7nOBPX8qIui/XM0Z9zvxzuGwyw/R6w+Ln0k20FkWrCtLfAeN1c9AyKB3Roz6BtCRFzY2sYuHyn3wZWHG6Sj8EydmaEGZk/XXe5SZ/OD1WzZd7OPRn+Pedk1kCpn0LVjxZSQuMAzBnUFDQhkbSuXi7gGzoW3nKo59Ep7DrYOB4Oh0/lfRpzGuARfRoASXxcz7w9m9iIL1ELS+ZioX/qwPGcV4xg9nTzBXX0Uvouy+ByFaeDVig965qQf++wBOTfZrcNNjkrJCbEkHpqjMu1SxZGJUd5O9al99ao+BKJF4Vfzuje4mYikFIznb2o3pXeYpLjmTwsPiuIXo/sGF8=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(39850400004)(376002)(396003)(346002)(82310400011)(186009)(1800799009)(451199024)(36840700001)(46966006)(8676002)(4326008)(8936002)(47076005)(83380400001)(36860700001)(478600001)(316002)(110136005)(54906003)(70206006)(70586007)(16576012)(40480700001)(107886003)(2616005)(336012)(426003)(26005)(41300700001)(53546011)(2906002)(82740400003)(5660300002)(81166007)(44832011)(31696002)(36756003)(86362001)(31686004)(21314003)(3940600001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 10:59:22.7123
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 28521c90-53c4-488c-b8e8-08dbb2b627fa
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT025.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB5514

Hi Michal

On 2023/9/11 17:40, Michal Orzel wrote:
> Hi Penny,
> 
> On 11/09/2023 06:04, Penny Zheng wrote:
>>
>>
>> In case there is a /reserved-memory node already present in the host dtb,
>> current Xen codes would create yet another /reserved-memory node specially
> s/codes/code/
> 
>> for the static shm in Dom0 Device Tree.
>>
>> Xen will use write_properties() to copy the reserved memory nodes from host dtb
>> to Dom0 FDT, so we want to insert the shm node along with the copying.
>> And avoiding duplication, we add a checking before make_resv_memory_node().
>>
>> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
>>
>> ---
>> v3 -> v4:
>> new commit
>> ---
>>   xen/arch/arm/domain_build.c       | 31 ++++++++++++++++++++++++++++---
>>   xen/arch/arm/include/asm/kernel.h |  2 ++
>>   2 files changed, 30 insertions(+), 3 deletions(-)
>>
>> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
>> index 02d903be78..dad234e4b5 100644
>> --- a/xen/arch/arm/domain_build.c
>> +++ b/xen/arch/arm/domain_build.c
>> @@ -1401,6 +1401,10 @@ static int __init handle_linux_pci_domain(struct kernel_info *kinfo,
>>       return fdt_property_cell(kinfo->fdt, "linux,pci-domain", segment);
>>   }
>>
>> +static int __init make_shm_memory_node(const struct domain *d,
>> +                                       void *fdt,
>> +                                       int addrcells, int sizecells,
>> +                                       const struct kernel_info *kinfo);
>>   static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
>>                                      const struct dt_device_node *node)
>>   {
>> @@ -1549,6 +1553,23 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
>>           }
>>       }
>>
>> +    if ( dt_node_path_is_equal(node, "/reserved-memory") )
>> +    {
>> +        kinfo->resv_mem = true;
> kinfo structure is used to store per-domain parameters and presence of reserved memory in host dtb
> does not fit into this. Moreover, there is no need to introduce yet another flag for that given
> that in other parts of the code in Xen we use bootinfo.reserved_mem.nr_banks to check if there are
> reserved regions.
> 
>> +
>> +        /* shared memory provided. */
>> +        if ( kinfo->shminfo.nr_banks != 0 )
>> +        {
>> +            uint32_t addrcells = dt_n_addr_cells(node),
>> +                     sizecells = dt_n_size_cells(node);
>> +
>> +            res = make_shm_memory_node(d, kinfo->fdt,
>> +                                       addrcells, sizecells, kinfo);
> I haven't yet looked at previous patches but does it make sense to request passing both kinfo->fdt and kinfo?
> IMO, the latter would be sufficient. This would apply to other functions you modified.
> 

yes, the latter would be sufficient. I'll fix it in next version.


>> +            if ( res )
>> +                return res;
>> +        }
>> +    }
>> +
>>       return 0;
>>   }
>>
>> @@ -2856,9 +2877,13 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
>>                   return res;
>>           }
>>
>> -        res = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells, kinfo);
>> -        if ( res )
>> -            return res;
>> +        /* Avoid duplicate /reserved-memory nodes in Device Tree */
>> +        if ( !kinfo->resv_mem )
> No need for a new flag as mentioned above. Just before this line of code there is a check:
> if ( bootinfo.reserved_mem.nr_banks > 0 )
> {
>      res = make_memory_node(d, kinfo->fdt, addrcells, sizecells,
>                              &bootinfo.reserved_mem);
>      if ( res )
>          return res;
> }
> so you can just append the following:
> else
> {
>      res = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells, kinfo);
>      if ( res )
>          return res;
> }
> to achieve the same without a need for a new flag.


Right now, bootinfo.reserved_mem is not only containing reserved regions 
described in host FDT /reserved-memory, but also the reserved ones for 
domain only, like in xen,static-mem = <xxx>.
So simply with non-zero bootinfo.reserved_mem.nr_banks, we couldn't tell
whether we had a /reserved-memory node in host FDT.

I agree that kinfo is not a good place to store whether host FDT has a
/reserved-memory node. Maybe bootinfo.has_resv_memory_node?

> 
> ~Michal


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 10:59:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 10:59:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599300.934649 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfee1-0008JK-3G; Mon, 11 Sep 2023 10:59:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599300.934649; Mon, 11 Sep 2023 10:59:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfee1-0008JD-08; Mon, 11 Sep 2023 10:59:53 +0000
Received: by outflank-mailman (input) for mailman id 599300;
 Mon, 11 Sep 2023 10:59:51 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfedz-00089S-MI
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 10:59:51 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2060a.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::60a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5375324e-5092-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 12:59:49 +0200 (CEST)
Received: from AS9PR06CA0214.eurprd06.prod.outlook.com (2603:10a6:20b:45e::19)
 by DU2PR08MB7357.eurprd08.prod.outlook.com (2603:10a6:10:2f0::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 10:59:42 +0000
Received: from AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:45e:cafe::50) by AS9PR06CA0214.outlook.office365.com
 (2603:10a6:20b:45e::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 10:59:42 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT043.mail.protection.outlook.com (100.127.140.160) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.11 via Frontend Transport; Mon, 11 Sep 2023 10:59:41 +0000
Received: ("Tessian outbound d084e965c4eb:v175");
 Mon, 11 Sep 2023 10:59:41 +0000
Received: from c7968acde1d3.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 7B599B3E-ABA5-4EBD-9B80-CFAEADDBFDCE.1; 
 Mon, 11 Sep 2023 10:09:06 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c7968acde1d3.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 11 Sep 2023 10:09:06 +0000
Received: from DUZPR01CA0016.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:46b::9) by DU0PR08MB8303.eurprd08.prod.outlook.com
 (2603:10a6:10:40d::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Mon, 11 Sep
 2023 10:09:03 +0000
Received: from DBAEUR03FT020.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:46b:cafe::5e) by DUZPR01CA0016.outlook.office365.com
 (2603:10a6:10:46b::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31 via Frontend
 Transport; Mon, 11 Sep 2023 10:09:03 +0000
Received: from nebula.arm.com (40.67.248.234) by
 DBAEUR03FT020.mail.protection.outlook.com (100.127.143.27) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.11 via Frontend Transport; Mon, 11 Sep 2023 10:09:03 +0000
Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX03.Arm.com
 (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 10:09:02 +0000
Received: from [10.169.172.145] (10.169.172.145) by mail.arm.com
 (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend
 Transport; Mon, 11 Sep 2023 10:08:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5375324e-5092-11ee-8784-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=c2CmqhtOA8h2szWsBWmMo7GS+OvKM87btyBRLjpI5Nw=;
 b=VCl0GiEBM5zFvKWafyavUqv03XbSKAaHVzRu6D5EXay6lscR8uprT0w/R8B7VBBwZnoYh2AS7RXM8z1k+gc5cqoA/JQyWo+i0dTvbwUq7Omy19rgtUxtRzC3oYkgMx5ppjeW+JloI2nax0cnHxn8UROaqrOuCcSJHk9YRBllQOw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 7020904d903089e8
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iMSzC53N8RU53zStsfprUMKx0gekRaPl9rU+nKFFl5TBaIQaKDcqOTOa5KzquxGeWVJdRf5yBeG2r+Za3K8XY7MlW33K5YoEpwa8K04pDp7DI6F1ixd7o9Jd6WGJdK+4nSI+X/xmE3gR4FbDkKliuRDArrRHXYke4MA9CO9hk5Lx3Y6D5Nd2EE6+Wav1M0RZcDwXm9npAfsvea68SiG6wgw9ceULZU8WlBQe4avFvV8BQAbNv0qmBYR1Sf4Ihi3il6wiHvCaXV170JMKGLIUPLnrZfTdSXE6X2O96xjudCUiQWsZqCGcK6vsZBf4ppdcRrcWcllKPYG2wGvJilpQ9g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=c2CmqhtOA8h2szWsBWmMo7GS+OvKM87btyBRLjpI5Nw=;
 b=fLqAps6qQDmY4zWFCeEvz65gyjDzdO+PIKE7xiAnGg0bNPBeFVDkq48AZE2QGdoUp7Bj8d49AacrsWuRaWyLibPU9BOZhD/w6fCNJoYF2wv8dsUEWzPBn5W4IoA4NnjbO7f+Ltaj4m7RclmFBwJqL/c/aLctHuc+lm/29lKpHNuHIOCWYM2Pc27IkoQjhMMONDnjJ4VKIF1PiCUtUH6yb+0ZI+gw50McTJ3UFmKNIvh75seGtrnf+Vw2CcSWj/2yoBrBJHJ/HHcuFFWqQ+4P5xpN684rmgwqAd993IHp08/6H0DZ2Fpro9b8C9CJHNJK3j3hEm8mtKG/z0gslW0aug==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 40.67.248.234) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=arm.com;
 dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=c2CmqhtOA8h2szWsBWmMo7GS+OvKM87btyBRLjpI5Nw=;
 b=VCl0GiEBM5zFvKWafyavUqv03XbSKAaHVzRu6D5EXay6lscR8uprT0w/R8B7VBBwZnoYh2AS7RXM8z1k+gc5cqoA/JQyWo+i0dTvbwUq7Omy19rgtUxtRzC3oYkgMx5ppjeW+JloI2nax0cnHxn8UROaqrOuCcSJHk9YRBllQOw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234)
 smtp.mailfrom=arm.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 40.67.248.234 as permitted sender) receiver=protection.outlook.com;
 client-ip=40.67.248.234; helo=nebula.arm.com; pr=C
Message-ID: <d869e708-c5df-6538-ee07-7ced8e025887@arm.com>
Date: Mon, 11 Sep 2023 18:08:55 +0800
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.14.0
Subject: Re: [PATCH v4 04/10] xen/arm: use paddr_assigned to indicate whether
 host address is provided
Content-Language: en-US
To: <xen-devel@lists.xenproject.org>
CC: <michal.orzel@amd.com>, <wei.chen@arm.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
 <20230911040442.2541398-5-Penny.Zheng@arm.com>
From: Penny Zheng <penny.zheng@arm.com>
In-Reply-To: <20230911040442.2541398-5-Penny.Zheng@arm.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 1
X-MS-TrafficTypeDiagnostic:
	DBAEUR03FT020:EE_|DU0PR08MB8303:EE_|AM7EUR03FT043:EE_|DU2PR08MB7357:EE_
X-MS-Office365-Filtering-Correlation-Id: 1ffbde4e-df89-4e83-41c6-08dbb2b6332d
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 ko88bD9nlI/8OaifsxkeYwKWcIUxqQ9iOMOkdztIMeXWrQvtMsqUstnk4OX9jDAgD7IMWaJmjprke4v3vQnqtALOt/h1FKShBWuu7aryTi3Rjce6TAJX2bphSj/9KBGqldbNmyzbBN6SSto0SAbSTiU/UADKSVR/NaMggPLmOCGBnysp8p4Tpgf4OAXZyYG0DD5DyB8Lx7TgkNJYCOZk8O+GCTt0MWX5xITV0KH1lxAtCk84ThYfKgU9xy2JPKIfNpnJoeZUDL8FBbV67OrM0/UST2BgpJEPO97pOg39rbnspipty1HgkxCTssWDSVC80NpwHXlg580P1urjjM3P5QYhgcK8mL12+eiet5Z1y0dP4OUeJqk+xCl+T+RJsfsUC9lKg+GkvPNfrBdk7afE4AiipUrtE8k/kHJqWYhmN1nJtmDarDWvJvAvCyQGjFVgg8V60KA9ttDeVQFZJ3ybs0tL7Mydi0qdhKVJHBNrlc7eJdSAODJfvW1KGxiDc6G+OSfC2OQc1iu1wSk0J+ZVKiSrKQE+z69BJEzmHk1TMF64iLWsO6nH1/M53OHsk8Evez5zA1LzdB/K/S/JYdb4jKD5hXFnxIw23TQSuamEh6ZawxBAZ0Ge4VWliSmkxU+YKIXWD+kxEpCwGKGxD2hGJRix+46zIx8XC5HQncbTicTF+4MQOyioL+oKbIKO8LncRDFUDFyCiIaDhYan6SbOlVEgyDJT9KFVC4fIa71kDOYs1tzo4PHIwq2UljLF1W2U1iPTLYnqkREaXsJob5Jj/3HenGh9jvnLTEt2i5aCXHoVAOYInYjloUdSMiXY99tnxHv9jTu62oIN4LcAupP0OEcNcfdAKsUnNKp5aeAY3Zw=
X-Forefront-Antispam-Report-Untrusted:
 CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(396003)(376002)(136003)(451199024)(1800799009)(82310400011)(186009)(46966006)(36840700001)(40470700004)(70206006)(8676002)(2616005)(44832011)(5660300002)(316002)(30864003)(478600001)(6666004)(70586007)(31686004)(16576012)(54906003)(6916009)(53546011)(26005)(8936002)(336012)(4326008)(426003)(83380400001)(41300700001)(2906002)(47076005)(36860700001)(36756003)(40460700003)(82740400003)(356005)(81166007)(31696002)(86362001)(40480700001)(334744004)(3940600001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8303
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	cf422041-efad-4ae8-50ee-08dbb2af2016
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	C3jthXqO7vrWhDP6OujpCVCyTPFprliNDeHI6u5dsJ8/P3blC1fNMhySTD8A+MAXyz4Md58GmW3Alf7yT6WvNhE6VGFvYs+dIjovzpdFzTkIMHuJo7vSsI73XpsBeRwucJOgUzEZg+Llh1YJSZoE4PmKp8VIYjNSqiRwAakLU7tUNzjEa9/EquZuycFTWpYKpRlqVvb1O5luVZ8xCz5xaHNrImibihlzDFOH0z3WzdUAl10ll8Z6SqtiHqe4GYqKl4a5iHLZtt8x3dTnpgasCSuqeQJsKxU4DDJ4hgrO0Yx2HCLr3YBhb4VFwqFUKUvTeNEwz8j+2N1ytBVUGOQLD0ySpsRJQj4LADDfLdH84ouoo7q403OSq1/t2bVVsFuJdIrH/gHHQkU1ZuYPCBYEPhGOiZs+oTmBBTk8sw2pRf1oOHlMVG9VdeukteU94STCHgaeOQtcstRaptLp9xEKa1QWjX0JkA25heiVFinwp9TTLxDINmeF4eDggumi9cIM5THa4Gnekuv24eB4jwK360K4T8+xfwhs9R3U2KWK3iuuRvgDqSqtTaSua9M9Eh3kxGSviYXvR4HtN+nw/1o20V85P060YdiZUj41npuIJeNtnTuFvYKN0GUW2zNjCmEQDYjEAAMROFa+dRZbU7lCsEkAjVlsq/G9TQ20BQvAMVh0OaA5HaG2WB0FSYw1UOPUoLykDAx31uswFZq8yN3pAH89dumxft/EkrrEtIPhTfEwSdoNiDPEN3+tNL2TYCnM+kp88IGkWaBDadDfrPgHEbG1Ya4Zx/NcEyMd4JcvzzBBTnr+JVML8D8dD2IRCvv52PWxBNIRt1fJYykx5DXovw==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39850400004)(136003)(376002)(396003)(346002)(1800799009)(186009)(82310400011)(451199024)(40470700004)(36840700001)(46966006)(53546011)(40460700003)(6666004)(83380400001)(82740400003)(81166007)(86362001)(31696002)(36860700001)(47076005)(36756003)(2616005)(107886003)(426003)(336012)(26005)(40480700001)(70586007)(70206006)(30864003)(54906003)(16576012)(6916009)(316002)(41300700001)(2906002)(44832011)(5660300002)(8676002)(4326008)(8936002)(31686004)(478600001)(334744004)(3940600001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 10:59:41.4515
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1ffbde4e-df89-4e83-41c6-08dbb2b6332d
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR08MB7357

Hi,

On 2023/9/11 12:04, Penny Zheng wrote:
> We use paddr_assigned to indicate whether host address is provided, by
> checking the length of "xen,shared-mem" property.
> 
> The shm matching criteria shall also be adapt to cover the new scenario, by
> adding when host address is not provided, if SHMID matches, the region size
> must exactly match too.
> 
> During domain creation, right now, a static shared memory node could be
> banked with a statically configured host memory bank, or a set of arbitrary
> host memory banks allocated from heap. To cover both scenarios, we create
> a new structure shm_meminfo. It is very alike meminfo, but with the maximum
> array size being a smaller number NR_SHM_BANKS(16).
> As "shm_meminfo" is also a new member of "enum meminfo_type", we shall implement
> its own callback "retrieve_shm_meminfo" to have access to all MACRO
> helpers, e.g. GET_MEMBANK(...).
> 
> Also, to make codes tidy and clear, we extract codes about parsing
> "xen,shared-mem" property from function "process_shm" and move them into
> a new helper "parse_shm_property".
> 
> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
> ---
> v1 -> v2
> - In order to get allocated banked host memory info during domain creation,
> we create a new structure shm_meminfo. It is very alike meminfo, with
> the maximum array size being NR_SHM_BANKS. As shm_meminfo is a new
> member of type meminfo_type, we shall implement its own callback
> retrieve_shm_meminfo to have access to all MACRO helpers, e.g.
> GET_MEMBANK(...)
> - rename "acquire_shm_memnode" to "find_shm_memnode"
> ---
> v2 -> v3
> - rebase and no changes
> ---
> v3 -> v4:
> rebase and no change
> ---
>   xen/arch/arm/bootfdt.c           | 100 ++++++++++-----
>   xen/arch/arm/domain_build.c      | 207 +++++++++++++++++++++++++------
>   xen/arch/arm/include/asm/setup.h |   3 +
>   3 files changed, 243 insertions(+), 67 deletions(-)
> 
> diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
> index 66ad3ab3db..7d86dffd45 100644
> --- a/xen/arch/arm/bootfdt.c
> +++ b/xen/arch/arm/bootfdt.c
> @@ -21,7 +21,15 @@ static __initdata struct {
>       unsigned int nr_nodes;
>       struct {
>           const struct shm_node *node;
> -        const struct membank *membank;
> +        /*
> +         * For a static shared memory node, it is either banked with a reserved
> +         * host memory bank, or arbitrary host memory which shall
> +         * be allocated by Xen with a specified total size(tot_size).
> +         */
> +        union {
> +            const struct membank *membank;
> +            paddr_t tot_size;
> +        };
>       } shm_nodes[NR_MEM_BANKS];
>   } shm_data;
>   #endif
> @@ -421,7 +429,7 @@ static int __init process_shm_node(const void *fdt, int node,
>       paddr_t paddr, gaddr, size;
>       unsigned int i;
>       int len;
> -    bool owner = false;
> +    bool owner = false, paddr_assigned = true;
>       const char *shm_id;
>   
>       if ( address_cells < 1 || size_cells < 1 )
> @@ -462,7 +470,7 @@ static int __init process_shm_node(const void *fdt, int node,
>       }
>   
>       /*
> -     * xen,shared-mem = <paddr, gaddr, size>;
> +     * xen,shared-mem = <paddr, gaddr, size>, and paddr could be optional
>        * Memory region starting from physical address #paddr of #size shall
>        * be mapped to guest physical address #gaddr as static shared memory
>        * region.
> @@ -473,16 +481,24 @@ static int __init process_shm_node(const void *fdt, int node,
>   
>       if ( len != dt_cells_to_size(address_cells + size_cells + address_cells) )
>       {
> +        /* paddr is not provided in "xen,shared-mem" */
>           if ( len == dt_cells_to_size(size_cells + address_cells) )
> -            printk("fdt: host physical address must be chosen by users at the moment.\n");
> -
> -        printk("fdt: invalid `xen,shared-mem` property.\n");
> -        return -EINVAL;
> +            paddr_assigned = false;
> +        else
> +        {
> +            printk("fdt: invalid `xen,shared-mem` property.\n");
> +            return -EINVAL;
> +        }
>       }
>   
>       cell = (const __be32 *)prop->data;
> -    device_tree_get_reg(&cell, address_cells, address_cells, &paddr, &gaddr);
> -    size = dt_next_cell(size_cells, &cell);
> +    if ( !paddr_assigned )
> +        device_tree_get_reg(&cell, address_cells, size_cells, &gaddr, &size);
> +    else
> +    {
> +        device_tree_get_reg(&cell, address_cells, address_cells, &paddr, &gaddr);
> +        size = dt_next_cell(size_cells, &cell);
> +    }
>   
>       if ( !size )
>       {
> @@ -495,23 +511,37 @@ static int __init process_shm_node(const void *fdt, int node,
>           paddr_t bank_start = shm_data.shm_nodes[i].membank->start;
>           paddr_t bank_size = shm_data.shm_nodes[i].membank->size;
>           const char *bank_id = shm_data.shm_nodes[i].node->shm_id;
> +        paddr_t tot_size = shm_data.shm_nodes[i].tot_size;
>   
>           /*
>            * Meet the following check:
> +         * when host address is provided:
>            * 1) The shm ID matches and the region exactly match
>            * 2) The shm ID doesn't match and the region doesn't overlap
>            * with an existing one
> +         * when host address is not provided:
> +         * 1) The shm ID matches and the region size exactly match
>            */
> -        if ( paddr == bank_start && size == bank_size )
> +        if ( !paddr_assigned || ((paddr == bank_start) && (size == bank_size)) )
>           {
>               if ( strncmp(shm_id, bank_id, MAX_SHM_ID_LENGTH) == 0 )
> -                break;
> -            else

There is a bug introduced here.
`break;` shall not be deleted, since it is responsible for jump out of 
the loop when meeting the check:
```
* when host address is provided:
* 1) The shm ID matches and the region exactly match
```

> +            {
> +                if ( !paddr_assigned && (size != tot_size) )
> +                {
> +                    printk("fdt: when host address is not provided, if xen,shm-id matches, size must stay the same too(%"PRIpaddr" -> %"PRIpaddr")\n",
> +                           size, tot_size);
> +                    return -EINVAL;
> +                }
> +            }
> +            else if ( paddr_assigned )
>               {
>                   printk("fdt: xen,shm-id %s does not match for all the nodes using the same region.\n",
>                          shm_id);
>                   return -EINVAL;
>               }
> +
> +            /* host address is not provided, and with different SHMID. */
> +            continue;
>           }
>           else
>           {
> @@ -542,37 +572,41 @@ static int __init process_shm_node(const void *fdt, int node,
>   
>       if ( (i == shm_data.nr_nodes) && (i == bootinfo.shminfo.nr_nodes) )
>       {
> -        struct meminfo *mem = &bootinfo.reserved_mem;
> -
> -        if ( (i < NR_MEM_BANKS) && (mem->nr_banks < NR_MEM_BANKS) )
> +        if ( i < NR_MEM_BANKS )
>           {
> -            /* Static shared memory shall be reserved from any other use. */
> -            struct membank *membank = &mem->bank[mem->nr_banks];
>               struct shm_node *shm_node = &bootinfo.shminfo.node[i];
> -
> -            membank->start = paddr;
> -            membank->size = size;
> -            membank->type = MEMBANK_STATIC_DOMAIN;
> -            mem->nr_banks++;
> +            struct meminfo *mem = &bootinfo.reserved_mem;
>   
>               /* Record static shared memory node info in bootinfo.shminfo */
>               safe_strcpy(shm_node->shm_id, shm_id);
>               bootinfo.shminfo.nr_nodes++;
>   
> -            /*
> -             * Reserved memory bank is recorded together with shm
> -             * node info in shm_data, to assist doing shm node verification.
> -             */
>               shm_data.shm_nodes[i].node = shm_node;
> -            shm_data.shm_nodes[i].membank = membank;
>               shm_data.nr_nodes++;
> +            if ( !paddr_assigned )
> +                shm_data.shm_nodes[i].tot_size = size;
> +            else if ( mem->nr_banks < NR_MEM_BANKS )
> +            {
> +                struct membank *membank = &mem->bank[mem->nr_banks];
> +
> +                membank->start = paddr;
> +                membank->size = size;
> +                membank->type = MEMBANK_STATIC_DOMAIN;
> +                mem->nr_banks++;
> +
> +                /*
> +                 * Reserved memory bank is recorded together with shm
> +                 * node info in shm_data, to assist doing shm node verification.
> +                 */
> +                shm_data.shm_nodes[i].membank = membank;
> +            }
> +            else
> +                goto fail;
>           }
>           else
> -        {
> -            printk("Warning: Max number of supported memory regions reached.\n");
> -            return -ENOSPC;
> -        }
> +            goto fail;
>       }
> +
>       /*
>        * keep a count of the number of borrowers, which later may be used
>        * to calculate the reference count.
> @@ -581,6 +615,10 @@ static int __init process_shm_node(const void *fdt, int node,
>           bootinfo.shminfo.node[i].nr_shm_borrowers++;
>   
>       return 0;
> +
> + fail:
> +    printk("Warning: Max number of supported memory regions reached\n");
> +    return -ENOSPC;
>   }
>   #else
>   static int __init process_shm_node(const void *fdt, int node,
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index d5945e421d..0116bacc2f 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -50,6 +50,51 @@ boolean_param("ext_regions", opt_ext_regions);
>   static u64 __initdata dom0_mem;
>   static bool __initdata dom0_mem_set;
>   
> +#ifdef CONFIG_STATIC_SHM
> +#define NR_SHM_BANKS 16
> +
> +/*
> + * A static shared memory node could be banked with a statically
> + * configured host memory bank, or a set of arbitrary host memory
> + * banks allocated from heap.
> + */
> +struct shm_meminfo {
> +    unsigned int nr_banks;
> +    struct membank bank[NR_SHM_BANKS];
> +    paddr_t tot_size;
> +};
> +
> +/*
> + * struct shm_memnode holds banked host memory info for a static
> + * shared memory node
> + */
> +struct shm_memnode {
> +    char shm_id[MAX_SHM_ID_LENGTH];
> +    struct shm_meminfo meminfo;
> +};
> +
> +static __initdata struct {
> +    unsigned int nr_nodes;
> +    struct shm_memnode node[NR_MEM_BANKS];
> +} shm_memdata;
> +
> +static void __init retrieve_shm_meminfo(void *mem, unsigned int *max_mem_banks,
> +                                        struct membank **bank,
> +                                        unsigned int **nr_banks)
> +{
> +    struct shm_meminfo *meminfo = (struct shm_meminfo *)mem;
> +
> +    if ( max_mem_banks )
> +        *max_mem_banks = NR_SHM_BANKS;
> +
> +    if ( nr_banks )
> +        *nr_banks = &(meminfo->nr_banks);
> +
> +    if ( bank )
> +        *bank = meminfo->bank;
> +}
> +#endif
> +
>   static int __init parse_dom0_mem(const char *s)
>   {
>       dom0_mem_set = true;
> @@ -117,6 +162,9 @@ static void __init retrieve_meminfo(void *mem, unsigned int *max_mem_banks,
>   
>   retrieve_fn __initdata retrievers[MAX_MEMINFO_TYPE] = {
>       [NORMAL_MEMINFO] = retrieve_meminfo,
> +#ifdef CONFIG_STATIC_SHM
> +    [SHM_MEMINFO] = retrieve_shm_meminfo,
> +#endif
>   };
>   
>   unsigned int __init dom0_max_vcpus(void)
> @@ -864,6 +912,24 @@ static int __init acquire_nr_borrower_domain(const char *shm_id,
>       return -EINVAL;
>   }
>   
> +static struct shm_memnode * __init find_shm_memnode(const char *shm_id)
> +{
> +    unsigned int i;
> +    struct shm_memnode *shm_memnode;
> +
> +    for ( i = 0 ; i < shm_memdata.nr_nodes; i++ )
> +    {
> +        shm_memnode = &shm_memdata.node[i];
> +
> +        if ( strcmp(shm_id, shm_memnode->shm_id) == 0 )
> +            return shm_memnode;
> +    }
> +
> +    shm_memnode = &shm_memdata.node[i];
> +    safe_strcpy(shm_memnode->shm_id, shm_id);
> +    return shm_memnode;
> +}
> +
>   /*
>    * This function checks whether the static shared memory region is
>    * already allocated to dom_io.
> @@ -1009,6 +1075,102 @@ static int __init append_shm_bank_to_domain(struct kernel_info *kinfo,
>       return 0;
>   }
>   
> +/* Parse "xen,shared-mem" property in static shared memory node */
> +static struct shm_memnode * __init parse_shm_property(struct domain *d,
> +                                    const struct dt_device_node *dt_node,
> +                                    bool *paddr_assigned, paddr_t *gbase,
> +                                    const char *shm_id)
> +{
> +    uint32_t addr_cells, size_cells;
> +    const struct dt_property *prop;
> +    const __be32 *cells;
> +    uint32_t len;
> +    unsigned int i;
> +    paddr_t pbase, psize;
> +    struct shm_memnode *shm_memnode;
> +
> +    /* xen,shared-mem = <pbase, gbase, size>; And pbase could be optional. */
> +    prop = dt_find_property(dt_node, "xen,shared-mem", &len);
> +    BUG_ON(!prop);
> +    cells = (const __be32 *)prop->value;
> +
> +    addr_cells = dt_n_addr_cells(dt_node);
> +    size_cells = dt_n_size_cells(dt_node);
> +    if ( len != dt_cells_to_size(addr_cells + size_cells + addr_cells) )
> +    {
> +        /* pbase is not provided in "xen,shared-mem" */
> +        if ( len == dt_cells_to_size(size_cells + addr_cells) )
> +            *paddr_assigned = false;
> +        else
> +        {
> +            printk("fdt: invalid `xen,shared-mem` property.\n");
> +            return NULL;
> +        }
> +    }
> +
> +    /*
> +     * If we firstly process the shared memory node with unique "xen,shm-id",
> +     * we allocate a new member "shm_memnode" for it in shm_memdata.
> +     */
> +    shm_memnode = find_shm_memnode(shm_id);
> +    BUG_ON(!shm_memnode);
> +    if ( !(*paddr_assigned) )
> +    {
> +        device_tree_get_reg(&cells, addr_cells, size_cells, gbase, &psize);
> +        if ( shm_memnode->meminfo.tot_size == 0 )
> +            goto out_early1;
> +        else
> +            goto out_early2;
> +    }
> +    else
> +    {
> +        device_tree_get_reg(&cells, addr_cells, addr_cells, &pbase, gbase);
> +        psize = dt_read_number(cells, size_cells);
> +    }
> +
> +    /*
> +     * The static shared memory node #dt_node is banked with a
> +     * statically configured host memory bank.
> +     */
> +    shm_memnode->meminfo.bank[0].start = pbase;
> +    shm_memnode->meminfo.bank[0].size = psize;
> +    shm_memnode->meminfo.nr_banks = 1;
> +
> +    if ( !IS_ALIGNED(pbase, PAGE_SIZE) )
> +    {
> +        printk("%pd: physical address 0x%"PRIpaddr" is not suitably aligned.\n",
> +               d, pbase);
> +        return NULL;
> +    }
> +
> +    for ( i = 0; i < PFN_DOWN(psize); i++ )
> +        if ( !mfn_valid(mfn_add(maddr_to_mfn(pbase), i)) )
> +        {
> +            printk("%pd: invalid physical MFN 0x%"PRI_mfn"\n for static shared memory node\n",
> +                   d, mfn_x(mfn_add(maddr_to_mfn(pbase), i)));
> +            return NULL;
> +        }
> +
> + out_early1:
> +    if ( !IS_ALIGNED(psize, PAGE_SIZE) )
> +    {
> +        printk("%pd: size 0x%"PRIpaddr" is not suitably aligned\n",
> +               d, psize);
> +        return NULL;
> +    }
> +    shm_memnode->meminfo.tot_size = psize;
> +
> + out_early2:
> +    if ( !IS_ALIGNED(*gbase, PAGE_SIZE) )
> +    {
> +        printk("%pd: guest address 0x%"PRIpaddr" is not suitably aligned.\n",
> +               d, *gbase);
> +        return NULL;
> +    }
> +
> +    return shm_memnode;
> +}
> +
>   static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
>                                 const struct dt_device_node *node)
>   {
> @@ -1016,51 +1178,17 @@ static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
>   
>       dt_for_each_child_node(node, shm_node)
>       {
> -        const struct dt_property *prop;
> -        const __be32 *cells;
> -        uint32_t addr_cells, size_cells;
>           paddr_t gbase, pbase, psize;
>           int ret = 0;
> -        unsigned int i;
>           const char *role_str;
>           const char *shm_id;
>           bool owner_dom_io = true;
> +        bool paddr_assigned = true;
> +        struct shm_memnode *shm_memnode;
>   
>           if ( !dt_device_is_compatible(shm_node, "xen,domain-shared-memory-v1") )
>               continue;
>   
> -        /*
> -         * xen,shared-mem = <pbase, gbase, size>;
> -         * TODO: pbase is optional.
> -         */
> -        addr_cells = dt_n_addr_cells(shm_node);
> -        size_cells = dt_n_size_cells(shm_node);
> -        prop = dt_find_property(shm_node, "xen,shared-mem", NULL);
> -        BUG_ON(!prop);
> -        cells = (const __be32 *)prop->value;
> -        device_tree_get_reg(&cells, addr_cells, addr_cells, &pbase, &gbase);
> -        psize = dt_read_paddr(cells, size_cells);
> -        if ( !IS_ALIGNED(pbase, PAGE_SIZE) || !IS_ALIGNED(gbase, PAGE_SIZE) )
> -        {
> -            printk("%pd: physical address 0x%"PRIpaddr", or guest address 0x%"PRIpaddr" is not suitably aligned.\n",
> -                   d, pbase, gbase);
> -            return -EINVAL;
> -        }
> -        if ( !IS_ALIGNED(psize, PAGE_SIZE) )
> -        {
> -            printk("%pd: size 0x%"PRIpaddr" is not suitably aligned\n",
> -                   d, psize);
> -            return -EINVAL;
> -        }
> -
> -        for ( i = 0; i < PFN_DOWN(psize); i++ )
> -            if ( !mfn_valid(mfn_add(maddr_to_mfn(pbase), i)) )
> -            {
> -                printk("%pd: invalid physical address 0x%"PRI_mfn"\n",
> -                       d, mfn_x(mfn_add(maddr_to_mfn(pbase), i)));
> -                return -EINVAL;
> -            }
> -
>           /*
>            * "role" property is optional and if it is defined explicitly,
>            * then the owner domain is not the default "dom_io" domain.
> @@ -1075,6 +1203,13 @@ static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
>           }
>           BUG_ON((strlen(shm_id) <= 0) || (strlen(shm_id) >= MAX_SHM_ID_LENGTH));
>   
> +        shm_memnode = parse_shm_property(d, shm_node, &paddr_assigned, &gbase,
> +                                         shm_id);
> +        if ( !shm_memnode )
> +            return -EINVAL;
> +        pbase = shm_memnode->meminfo.bank[0].start;
> +        psize = shm_memnode->meminfo.bank[0].size;
> +
>           /*
>            * DOMID_IO is a fake domain and is not described in the Device-Tree.
>            * Therefore when the owner of the shared region is DOMID_IO, we will
> diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
> index ff543fc361..732f18dce5 100644
> --- a/xen/arch/arm/include/asm/setup.h
> +++ b/xen/arch/arm/include/asm/setup.h
> @@ -59,6 +59,9 @@ struct meminfo {
>   
>   enum meminfo_type {
>       NORMAL_MEMINFO,
> +#ifdef CONFIG_STATIC_SHM
> +    SHM_MEMINFO,
> +#endif
>       MAX_MEMINFO_TYPE,
>   };
>   


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 11:00:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 11:00:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599305.934663 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeeG-0001EF-GR; Mon, 11 Sep 2023 11:00:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599305.934663; Mon, 11 Sep 2023 11:00:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeeG-0001E5-DU; Mon, 11 Sep 2023 11:00:08 +0000
Received: by outflank-mailman (input) for mailman id 599305;
 Mon, 11 Sep 2023 11:00:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ExPs=E3=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qfeeF-0007mO-1K
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 11:00:07 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20610.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::610])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5cb4cc22-5092-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 13:00:05 +0200 (CEST)
Received: from DU2PR04CA0028.eurprd04.prod.outlook.com (2603:10a6:10:3b::33)
 by GV2PR08MB9397.eurprd08.prod.outlook.com (2603:10a6:150:df::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Mon, 11 Sep
 2023 10:59:48 +0000
Received: from DBAEUR03FT044.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:3b:cafe::9e) by DU2PR04CA0028.outlook.office365.com
 (2603:10a6:10:3b::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34 via Frontend
 Transport; Mon, 11 Sep 2023 10:59:48 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT044.mail.protection.outlook.com (100.127.142.189) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.16 via Frontend Transport; Mon, 11 Sep 2023 10:59:48 +0000
Received: ("Tessian outbound 0b7d6027328f:v175");
 Mon, 11 Sep 2023 10:59:48 +0000
Received: from 47bf2553be39.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 CAE9B454-D595-4A23-BE33-3D22F4EA9DC0.1; 
 Mon, 11 Sep 2023 10:04:38 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 47bf2553be39.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 11 Sep 2023 10:04:38 +0000
Received: from AM6P191CA0078.EURP191.PROD.OUTLOOK.COM (2603:10a6:209:8a::19)
 by GV1PR08MB8132.eurprd08.prod.outlook.com (2603:10a6:150:90::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 10:04:35 +0000
Received: from AM7EUR03FT014.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:8a:cafe::b2) by AM6P191CA0078.outlook.office365.com
 (2603:10a6:209:8a::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34 via Frontend
 Transport; Mon, 11 Sep 2023 10:04:35 +0000
Received: from nebula.arm.com (40.67.248.234) by
 AM7EUR03FT014.mail.protection.outlook.com (100.127.140.163) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.14 via Frontend Transport; Mon, 11 Sep 2023 10:04:35 +0000
Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX04.Arm.com
 (10.251.24.32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 10:04:34 +0000
Received: from [10.169.172.145] (10.169.172.145) by mail.arm.com
 (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend
 Transport; Mon, 11 Sep 2023 10:04:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5cb4cc22-5092-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0NtjLYmq9vxIWtzkKY7mL+aVtr1lVfNHH2Olef4zjSE=;
 b=bKscj1ew2JZPysT8pHdF8Oxi3V7IzHE8vmFDP9cktS/kqTjYhpF9b0Xx96PNA9k2RV2mdokklD1g8TDMo0+YnSSmsNQ3L4IE/guB2qI7TnIdGC6+z86EKZ6abfa+UyFPsXUsfTxmoUJvW7v9UtsF09KtlwUA3p8iqp7IzXQYGLM=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 9e891ceb92fe0fa0
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cCdNMKes35wKHqd06aMSXnfpvYh/Xl+TXOJmHw3G3uNnY7qhPYLQM8jhu/Ern+I0UbRVpEVksftFQCJX6haOaDliEXCUxYg/5bthLGUaBZkzH3cB3XRtEC1CBmecB/4uGd9w9PdrgvMSfglyGW3zpVVonSOFIy+BCTBWP6m++RCNnhdJ9i3KC0KnUrT45zfY1z9Sc0sNYJVe8puOjfPz1PCzUmeFI4VM9nXYXeyiWWDQem2DZ9U4dP1c5tKc9cHGl7U2ApzdW5BxRc9Wxa3WmUg38+gZ5gx8UmzAgYBgtFFkJrZ+ibKxEexj4fPj4qenxkf/hPHGDBKmri6uWK4Ytw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0NtjLYmq9vxIWtzkKY7mL+aVtr1lVfNHH2Olef4zjSE=;
 b=i8trXC72MaA8yiV7yysNht9B/TTT+zCeWbUppdTKZv6UrKg3OaIIO6u2l7KtOVnpJ/0SrxpB8HzTza6fF7snvHm/ewf7oYWj102O+qQEvN/9DLsezdNRNZQ3Bjxtam088/LeEMFKmkvddSupKxeIW2CQ1f4ofTtXzr0Ug6mNTXNpN/Z4PKBDEsThfFWPTwoAcIagAhyPjS0RjGFOEeMxBjGGMRmVO+T+VA2Ij8X2gbV18HCfleMbQhsf+KHRW7M+vj2ra991oAuaJTLSWYiP4k8iNGrpFlu08R0tqWSoxZxsZdvtUxiA+oGvvD3irFLw6N0U84TXVbsPEnF/eO6YMA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 40.67.248.234) smtp.rcpttodomain=amd.com smtp.mailfrom=arm.com; dmarc=pass
 (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message
 not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0NtjLYmq9vxIWtzkKY7mL+aVtr1lVfNHH2Olef4zjSE=;
 b=bKscj1ew2JZPysT8pHdF8Oxi3V7IzHE8vmFDP9cktS/kqTjYhpF9b0Xx96PNA9k2RV2mdokklD1g8TDMo0+YnSSmsNQ3L4IE/guB2qI7TnIdGC6+z86EKZ6abfa+UyFPsXUsfTxmoUJvW7v9UtsF09KtlwUA3p8iqp7IzXQYGLM=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234)
 smtp.mailfrom=arm.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 40.67.248.234 as permitted sender) receiver=protection.outlook.com;
 client-ip=40.67.248.234; helo=nebula.arm.com; pr=C
Message-ID: <2124b9ea-4c74-780a-f97f-ca3b3d7c9b16@arm.com>
Date: Mon, 11 Sep 2023 18:04:29 +0800
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.14.0
Subject: Re: [PATCH v4 00/10] Follow-up static shared memory PART I
Content-Language: en-US
To: Michal Orzel <michal.orzel@amd.com>, <xen-devel@lists.xenproject.org>
CC: <wei.chen@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, "Julien
 Grall" <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
 <046aecc4-7270-0041-67dd-51614d2beee6@amd.com>
From: Penny Zheng <penny.zheng@arm.com>
In-Reply-To: <046aecc4-7270-0041-67dd-51614d2beee6@amd.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 1
X-MS-TrafficTypeDiagnostic:
	AM7EUR03FT014:EE_|GV1PR08MB8132:EE_|DBAEUR03FT044:EE_|GV2PR08MB9397:EE_
X-MS-Office365-Filtering-Correlation-Id: bafb3a2d-4288-496a-73df-08dbb2b63744
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 Lwc7nZcxytxKPJJPhZletp1bJieyumiu79d2E38dqPiOfiwQLVF8QaehTAzaUyTOoCq5FIXGG8jz6E/PTwqqlkr1RPAcN+w5XdJVKaJrTyKZg4n426FdKnADVltgpQV9dH5d9PR44kRSPJavKXL4VW/fqRMY7e0tQWA4xdB8JG1h/ZH/7Y/x+/7MJ2IHv5oNMHnEcGZNE5QPAaW4Z6MvRwY/kc6mT3Lve0054uJPNzbwN8as1xn2/+8SAGs9IfljBBEDQoSvyR2RGXjKc9ENzVNPrjKaMDUkSGEjd2IulSC/gCbsc64q/W7ApZtWcZo8Lc1bmd+AoJwuOpUEoG5+j7tT8t9B6E+sh6wRm4RIHtqgkJbKTooBHfpdW6uZGwOy34Q+MbsWRJMpQVfTHQ++Eapt1boCGJCqTZEytOEPiM9iMlcCnOvIzTTw23j5DglxyYT/GqC0o5eDHaLErrr9Jxoep/4z0Ol52NZTfB3raxV4QzjDcW9JOECi3WPfjfETASgLj1O87iVper6SpJj6HXBHRpmY/9H16k1FP1APPXiDj2TQ3HB3l0dBttQAzSf3MetnKmcB9xJBKfjiSInhn/XiqBwzPJw1onuh2lmBphTpnGkrMUUngoPZvJK0xSIXzALENzl6RKM9SWogfPrqgHGAYsaDUCK9aeJ4mXbzykcbyOhONX0UaMpVYUFvdkMfuix3zIHR6jc9Oj4bEA22CeaeoXvB6EUaV10LhaCg2MQQV28saIztIdd7IDP+2VOdjiorkJOY8Wz12fJIJtkTWjgmdg1y8TmQPayzDTp2+xFhRfN9Dm+gkygz0pbQ3+ZkJ8kRX6syTbwF58dfwmt0HCMlwEsFYR+md4MNDgjmdKxqx9QQUxs3AWIs3d24bPoA
X-Forefront-Antispam-Report-Untrusted:
 CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(39860400002)(136003)(376002)(186009)(82310400011)(451199024)(1800799009)(36840700001)(40470700004)(46966006)(70586007)(110136005)(86362001)(26005)(426003)(336012)(2906002)(83380400001)(53546011)(40480700001)(2616005)(31696002)(36860700001)(356005)(82740400003)(81166007)(47076005)(40460700003)(36756003)(478600001)(966005)(5660300002)(4326008)(31686004)(8676002)(8936002)(44832011)(316002)(16576012)(70206006)(54906003)(41300700001)(3940600001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8132
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT044.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	48663458-3576-4c13-e471-08dbb2ae806a
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	4bdzBPRT5NV8ICYBaTp/0XXf5NJO9dzceRt2mY8g4itipnNyaj4dxvhyOeCjzX9cJ4tRx/MqJLW9I0N5m5kDbHIyaL0zuFRl/zbIATbZ90vgD5ikUNcobEGdyowdpn1b3kAsLTG3oDR0s3hz4YA5iMg/Bdln2u47sGulzX9YfczMKZeS34iaKevMTdtztREkS2UAPRIdNcpybcBsFbzpWhbqsBlBkICAMKMCm44CeTczTFPBqOcmdPbGjJ9KStJfQEtaiijCFF2HaTa6syGO3eSvVmQWziahza0zRwwzYJqTbPwvuYVgZuad+BGSJbayuwYeE2LvM0rfpz/LF/KG0QNg2gT1wUDVacp2W94mhaYEw67P8z3X8qa1aKaXChD4bKTd6qWrNJtGgcqLkZ7NHCJS3ff7+R0dEwnijV1FIuK+xYkEcb1pQJx+Nx3KKeMLQ/7/u//rG5eBHq2Zb+hJcH7XL2lzhjRrXdDzWg3NYKfQdNX1hCcg2C5CWfEcjXsTZAO71kgdC/MudMIE52YANOnDXGbRcI3DanpFWIlHMkbQiXOg7I6PdzrutOlNYU+Znh8J8nuQF7TgAdP8pNNlNsiZaFcBu4zQlGd3CHnA5Fv8BJMaP0xYEFU9nnO4d6h9zjpL4dP0kr1JmnFmro9ZRI1xPhVchqLvX9kFGOf3XkP4JCYf0iUkIJOpxNjh4XzbyNRgQj+UojlZ2LTHZoX0sKtRlwsKjidbjZu0/7DjCEwpMwhMhzgAGx7MiMlZ0wky4GHacevzLRFQOekTTQ4n9Tj2Zum+2cpLJy+aUWYiHBk=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(396003)(39850400004)(346002)(82310400011)(451199024)(1800799009)(186009)(36840700001)(40470700004)(46966006)(31686004)(81166007)(53546011)(82740400003)(41300700001)(47076005)(86362001)(36756003)(40460700003)(40480700001)(36860700001)(107886003)(31696002)(426003)(966005)(336012)(26005)(110136005)(83380400001)(478600001)(8676002)(5660300002)(70586007)(70206006)(2906002)(8936002)(4326008)(16576012)(316002)(54906003)(44832011)(2616005)(3940600001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 10:59:48.3613
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: bafb3a2d-4288-496a-73df-08dbb2b63744
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT044.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB9397

Hi Michal

On 2023/9/11 17:01, Michal Orzel wrote:
> Hi Penny,
> 
> On 11/09/2023 06:04, Penny Zheng wrote:
>>
>>
>> There are some unsolving issues on current 4.17 static shared memory
>> feature[1], including:
>> - In order to avoid keeping growing 'membank', having the shared memory
>> info in separate structures is preferred.
>> - Missing implementation on having the host address optional in
>> "xen,shared-mem" property
>> - Removing static shared memory from extended regions
>> - Missing reference release on foreign superpage
>> - Fix duplicated /reserved-memory node on Dom0
>> - Missing static shm node declaration on guest /memory node
>> - Missing "xen,offset" feature, which is introduced in Linux DOC[2]
>>
>> All above objects have been divided into two parts to complete. And this
>> patch serie is PART I.
> 
> Just like I pointed out in the previous revision, there is a gitlab CI failure on shared-memory jobs:
> https://gitlab.com/xen-project/patchew/xen/-/pipelines/999098293
> Did you change the interface that could lead to this (I cannot spot any change in the docs refinment) ?
> No Xen logs meaning the early boot failure. Please check.
> 

Soooooo sorry. I miss-looked that comment. I found that bug exists in 
bootfdt.c.
```
diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
index 7d86dffd45..290dd27bf4 100644
--- a/xen/arch/arm/bootfdt.c
+++ b/xen/arch/arm/bootfdt.c
@@ -532,6 +532,8 @@ static int __init process_shm_node(const void *fdt, 
int node,
                             size, tot_size);
                      return -EINVAL;
                  }
+
+                break;
              }
              else if ( paddr_assigned )
              {
```
I accidentally delete a `break;` here, and I will also comment in the 
related commit and fix in next version!

> ~Michal


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 11:03:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 11:03:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599321.934675 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfehl-0002Bv-05; Mon, 11 Sep 2023 11:03:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599321.934675; Mon, 11 Sep 2023 11:03:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfehk-0002Bo-Tk; Mon, 11 Sep 2023 11:03:44 +0000
Received: by outflank-mailman (input) for mailman id 599321;
 Mon, 11 Sep 2023 11:03:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Y5ji=E3=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qfehk-0002Bi-2i
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 11:03:44 +0000
Received: from mail-wr1-x42d.google.com (mail-wr1-x42d.google.com
 [2a00:1450:4864:20::42d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id de3d3b2e-5092-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 13:03:42 +0200 (CEST)
Received: by mail-wr1-x42d.google.com with SMTP id
 ffacd0b85a97d-31f71b25a99so3969412f8f.2
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 04:03:42 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 x14-20020adff0ce000000b00319779ee691sm9619448wro.28.2023.09.11.04.03.40
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 04:03:40 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: de3d3b2e-5092-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694430221; x=1695035021; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=rMn/IgLrc17cG2QUCeRopnm72OVmY1SutD8xwx8P65Y=;
        b=rBJzLL6kXtwCyuTgtLXje5AJe09UQliQA0hzjXbcW8wdooIIlMShTJaOhL34mI/ZmK
         5aM3OPBC0wARyKsOKyxS+ED8+G9HuhK52CXwpPMf6J71TzGyyh4ZrqJzaBYz/WrD8W9M
         WmTqhO5oWMhUQI3GmNoarU1cGFqkbuwBj5bI4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694430221; x=1695035021;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=rMn/IgLrc17cG2QUCeRopnm72OVmY1SutD8xwx8P65Y=;
        b=L2jWi1FKsP8QI10dj7gU+cQhnwKasqCRmxN6KHjxDBH0DxrqgJRgrVvRbhT6L7eh8I
         bdn2cCan85VzWl9KXEx2o5MKoUWSUde15MhQnpUeNsq7sFSakXfcYzC4itUzkW8UGW5T
         e5mrZdc30ePbQlBkkoIpzqL4l6lNMrJSVS18opI17O2hQJflyIRK3ckM3qCTB5CpqXiT
         WkqZ13qtY1gmxjQWxUCY3X+7717w5s+qK9DyRXJ3lXVUzPebL8MHG5Qgn08US4CnfXNH
         M6GzinelehTSwn4dtqdBGLhoGuSe5p5FRm/xS/dgdouwFgWaKfhqPhXcK21J16iHssb9
         t7nw==
X-Gm-Message-State: AOJu0YzbrPhUbkXeDEWkVf8TXEtZdtsC45TvnbttYPuezKJQE1VF+9TC
	7oL+fq9/XeXhCMGU/Fn0ZzczlA==
X-Google-Smtp-Source: AGHT+IGFg6hrzJ06dyMv1s2ef7hOmWRrt4/kC9QOS+E0PSbNOdAWQiJylPXc+LmNqm79tVPDH0su9g==
X-Received: by 2002:a5d:42cb:0:b0:317:5eb8:b1c4 with SMTP id t11-20020a5d42cb000000b003175eb8b1c4mr7236305wrr.2.1694430221438;
        Mon, 11 Sep 2023 04:03:41 -0700 (PDT)
Date: Mon, 11 Sep 2023 12:03:40 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org, Julien Grall <jgrall@amazon.com>,
	Wei Liu <wl@xen.org>, Juergen Gross <jgross@suse.com>
Subject: Re: [PATCH 2/2] tools/light: Revoke permissions when a PCI detach
 for HVM domain
Message-ID: <83e32547-e861-45a0-b0c4-84fe4fd3ca05@perard>
References: <20230809103305.30561-1-julien@xen.org>
 <20230809103305.30561-3-julien@xen.org>
 <48113eee-e047-47ad-b7a7-29feb8464ce9@perard>
 <438b2e6d-004c-42d6-8238-1d8e77e274e6@xen.org>
 <656761cd-22ba-4edb-b7a1-bc08f672243a@perard>
 <f060a049-b01a-4dcc-a89a-48716e418671@xen.org>
 <bc936e81-f1fa-45cf-a097-53aebde1fd6e@perard>
 <9b849d85-c54b-4b6c-95ef-721c57dc39f5@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <9b849d85-c54b-4b6c-95ef-721c57dc39f5@xen.org>

On Thu, Aug 24, 2023 at 06:27:12PM +0100, Julien Grall wrote:
> On 24/08/2023 17:58, Anthony PERARD wrote:
> > On Thu, Aug 24, 2023 at 05:46:45PM +0100, Julien Grall wrote:
> > > On 24/08/2023 17:34, Anthony PERARD wrote:
> > > > On Thu, Aug 24, 2023 at 12:15:39PM +0100, Julien Grall wrote:
> > > > > On 18/08/2023 18:04, Anthony PERARD wrote:
> > > > > > So, this new pci_revoke_permissions() function been place before
> > > > > > do_pci_remove() will make it harder to follow what do_pci_remove() does.
> > > > > > Does it need to be a separate function? Can't you inline it in
> > > > > > pci_remove_detached() ?
> > > > > 
> > > > > I decided to go with an inline function to avoid increasing the size of
> > > > > pci_remove_detached() and also separate the logic from cleaning-up QMP an
> > > > > resetting the PCI device.
> > > > 
> > > > It's fine to have a long function, if there's that much to do. You can
> > > > add a comment if you want to separate a bit from the rest.
> > > > 
> > > > Having a new function would be ok if it was used from different places,
> > > > or if it was needed for a new callback in the chain of callbacks of a
> > > > long-running operation.
> > > 
> > > I don't agree with this definition on when to create a new function. Smaller
> > > functions help to logically split your code and also avoids to have to
> > > define 20 local variables right at the beginning of the function (this is
> > > what will happen with folding the function) among other advantages.
> > 
> > You can always create a new block {} in the function, if that help with
> > local variables.
> 
> I thought about it... But this is just a function in disguised with downside
> (the extra layer of indentation).
> 
> I was actually going to try the folding version. But given this suggestion,
> I am now struggling to understand why this is a problem to have a function
> only called once. This is fairly common in Xen Hypervisor and I can see at
> least one instance in libxl (see libxl_pci_assignable()). So what is the
> rationale behind this request?

It is to try to keep the code laid out in chronological order for this
async operation. See CODING_STYLE L153:
    https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=tools/libs/light/CODING_STYLE;h=b1a6a45c74df083cdd793e5cb6a67a76cb5c1174;hb=refs/heads/master#l153

(libxl_pci_assignable() isn't a good example, as it should be part of
the API ;-) )

Cheers,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 11:10:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 11:10:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599328.934686 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeoZ-00047x-Ko; Mon, 11 Sep 2023 11:10:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599328.934686; Mon, 11 Sep 2023 11:10:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfeoZ-00047q-Ha; Mon, 11 Sep 2023 11:10:47 +0000
Received: by outflank-mailman (input) for mailman id 599328;
 Mon, 11 Sep 2023 11:10:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfeoY-00047k-4s
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 11:10:46 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2062d.outbound.protection.outlook.com
 [2a01:111:f400:fe13::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id da3aa39a-5093-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 13:10:45 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by AS8PR04MB8102.eurprd04.prod.outlook.com (2603:10a6:20b:3f3::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 11:10:42 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 11:10:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: da3aa39a-5093-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mv75hjXd0fflfj2rE7P/4a4LibjFSJ4Q/I/XulFAkqysYx2+r3w6o/obp98dwWIg5nhryDRVxKOVMKnkT255WdyhqSSgdd8QD4UvTkqvafNdHVRhGKdhGS8wNgCwSD8Kk2oPzn/drIW3z/GTKgKxbbMdkG1060bROuDCdokSR/SfyI9sVw+kjaW8obyec0Rw3rif7zQpqiDqhOUEyEvDkJ1X3exNn+DCKh6yw8UQV1xhx9V3gQ6VaW4A10ta6RU7WZdb6EX4jx964jscgif6dKtR5m26uMT8svWcQpU4Wd5+hXMX6ESgCrkYah149cr3qg0PeazAJtcoOoLKiVkQ0A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PW4OEFenjSDfSeRq67zrxYXWqAuzxgaqeXKtRk/IPyU=;
 b=lv4YVJSRpkcJ9Q5a12ScSObB4GWRG9qVrihknJMUmWsySwLaDUCOUO31arzn2+kJKFWlwlhQu7jNF8kTc+sTefdOOxySMz2WDVhhc1wJvZZdz8OFcleAeKhJ1B8KDV2yKvS/EEGJpTFzZKSY0ZdQ2g75RYqZzzhwOpC//nJBIihvGsWBkh4uRia7wvapYhPUhzraqH3JFFEw9vCOZtV8PPgL7FIIwLxQQWjwmEvFt81vlAEUgo8UUdKtQ+QufRw54Ad4mEQw4AX4DzIvzRCVjIYPQBqVxy28TRm8t/gIuCwGwyXiQKNFSRhX76tw/7PUDPJIVDKPJRjuBJOzPkKm1g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=PW4OEFenjSDfSeRq67zrxYXWqAuzxgaqeXKtRk/IPyU=;
 b=kedT9Fek/3sGyIdiqlcqLnGNUY99TmPnFYtKs/H+ANXr5VTGz5Y6KwGtG02D33OfNEGaibZvlI9Qluhw4PjnaoIHBSLgwNfJxX7B9iKBGafQy6L7aCFdm3lpeISW6+D2xdkdJQp5ypGz8X1CfqKy6E+rZS5mHFndF4F//UCBO3rKhGQ1DWldPeyt+QD1+jrnDYFYsayjGzbgsh3CRymzW0FmrTRvQkLisuRGpLAcf2bLnSICW/CXVpcnYwW9Qn6PXL8MGz1ubbMKIoLvlJSP8Fjc6Zo15M+7HKsbf1uElc0+v5zU+NmkYmg/LiONwRoTmHBLEtydUwPYEhHj0VwyZQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3831c923-0344-7823-8373-ce4c1b48efde@suse.com>
Date: Mon, 11 Sep 2023 13:10:40 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v6 3/4] xen/vpci: header: status register handler
Content-Language: en-US
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230909021647.558115-1-stewart.hildebrand@amd.com>
 <20230909021647.558115-4-stewart.hildebrand@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230909021647.558115-4-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0158.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b3::16) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AS8PR04MB8102:EE_
X-MS-Office365-Filtering-Correlation-Id: 19e56dc6-abee-4c34-b187-08dbb2b7bcbd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iPBKvllzfTS1Khm60SM+/l9cmFGhEYslOO+HI+4CTOhxya7PT3fMrWHk3z+Nkprbc/mf3LU9OGySPHDEWzer+9QeZmEKY8f943WA1WB8sPaLeJmD544fviDTCg4M6wDfbzi8kqRsPa+l2a558WsPJfOw/btPKJsUJPCFNmkUXhWS3eoGrgqBg7BBARAb0XTDYzmDFYZWAavheqk5wARZ1M009aoWWBRz9LEtKV24qxwAIVmxYXdZF6dgQHpgaAhFBPjG64aYuCwJEYNIdU6qtoteEHWQ+GSqu8Wvd50vxEBFBMkbNingkRyl1ukv4Bqhp6+6B9ZThzgJXREAtFnx9Qz6yMXXscqbXCJr8Cj+gq/hLqqdj+/hcJFN+PEFGAgV/cUrIn3ezweH4pmQkhnUynd3Qg5rnxM0iMZeuW3eM5XJfl8uAstWX26KJYKlPmvB48OWe7sMkc3grSG9XFKofM5cxuujxzXBH4KgpNMEy/+ZCfQ42wIKHKsZbkwM66axbD+2pOydPTKrNY7Xo/FheqR3a71HfFas3q+mUh+p/4/+2uVayrfj2g08qAmsBekOR4L5Hr9KfPxn4QuI+KsQBwFhM9AImdt5LP6uSA53N6ORScoROqsIOUMnqKJf+ylI264dTlSrVnnHzIS/thHqWTiBEZ0SAXPCdhJiurWK4Px6gLn6Ks/DWuKfuHjwFqiB
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(376002)(366004)(39860400002)(136003)(451199024)(186009)(1800799009)(2906002)(26005)(316002)(41300700001)(6916009)(54906003)(66556008)(66946007)(66476007)(478600001)(4326008)(8676002)(8936002)(5660300002)(31686004)(66899024)(6506007)(53546011)(6486002)(6512007)(36756003)(2616005)(83380400001)(38100700002)(31696002)(86362001)(45980500001)(43740500002)(357404004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cm9zcGd6Zm15eUR3cm1ma25DYW9uUXBVcmQ2QlJ3M2JmV1ZRcDFRYTdMeFFm?=
 =?utf-8?B?eHdrT0hWN2pyUjl2NkJBem11U1ptMm1PYkd4aEFwWjN4bXN5YitoZEJnUzRZ?=
 =?utf-8?B?SXhKWVNFOUUrbHh4UnhUd25ITVMxald5aVM5WVVwb2tiNjVnK1BkNUpiZVJT?=
 =?utf-8?B?S2tNcGc5MW5UWGs2SjhZbFpNQWtZNjJrbGpwamR4b0NLZnhpdmFlWWRLbGJ2?=
 =?utf-8?B?MVBORURLdnFMZDd5ODZHZEt1eko1bVFzeG12eGF1VU5WMkFkeEFvb1JLSUs4?=
 =?utf-8?B?cVdjRmxVME9manV3cVdya3p2RlJaVW1DcFlOQ3cwRWVjS29XZWxtK0pjSlc1?=
 =?utf-8?B?SFBIOG5KS3MvbG5FOGdWMTdRSmtlOVFrYi9LTDhydHp2ODVWYnY2VFJ1d0JX?=
 =?utf-8?B?dkRML2VvREhGN0lNSlZHYmlWWHF0SjlVeWNucjJLMm9pZU1ha0hBRlpWaDFO?=
 =?utf-8?B?elg0YlF6VTZ2c3BNVTVjRmppRmhFN3N6Y2FuYm1LVThZVmhrQnZ5ZFZXcExL?=
 =?utf-8?B?VzMxeVVJNks0YUhNdE53dTExVW5YYmdJdGV4dDJqZWtnNUpSUG52UWFOMXdk?=
 =?utf-8?B?cEEzUTRyQjJOWFZMbTNLV2Vxc0JQWkZWR21OUG1ZWUJIa04vaVhhanVXQzFR?=
 =?utf-8?B?MTVVQ2hCdWhMWDVXV1BGN2dkY2hyRVdpckxBT05taEY3aDNEUjNkQ3BRd0dW?=
 =?utf-8?B?SnpoR1Bpdmx1VjV1bnlEMlcyMDRJMllJdXY3TGc5RmszWDFLdGJwNDhkNmp1?=
 =?utf-8?B?WGxkaDI5cE45VmJMeU9SRWsxQUlFNUwyamZuY2xUTFpiTU9UMU5mTUNKMXAw?=
 =?utf-8?B?ZkxhVitKU2VuZVp4V2huUzhRVngyMWh3Q0IyZjE4Nk1zWVNhQmduV0tKS0Mr?=
 =?utf-8?B?NzhFaFI5bzJyalNRMzdRMHR2b3B3UlEvbnNwNVl1cTAxaXMxY2kxcGRtc0tS?=
 =?utf-8?B?R281T1RsaTAxQ2hOeU1GOHU5d1E2R2lFcVFhaEJBTlNOT2JBWGZXSHVNbm5H?=
 =?utf-8?B?ZGIxS2FwbUJja2xob3Uvd2V0NmNGL2w2dmRjN1ZPRXgrNllsUllUL09FMGtp?=
 =?utf-8?B?dkQ0dmJ0RWFUamU5bDlpdU5icXUwVjM5Yyt3ZnY0YnpOU3hERDE0VUhheW5O?=
 =?utf-8?B?azhmOWluWXJ2ejBRQXdJOHE4SWd5ZFdlRzFnN1V3N0dNbitSS1poWC9IMVRm?=
 =?utf-8?B?cDRpRWk2YmY4Z0RUK0RWdlNpUTdNTVhkL2FnS1RnSjVxSXF6UDZkem9heTd6?=
 =?utf-8?B?TGROM2tZeGtTRFBQcDFwYVA1RzZJMnJUeEx1T0MwdVMvZzIyemVNK29lRUNq?=
 =?utf-8?B?bWpVNFpiTUx1YXg0aFVHaUVxK3NINkpzZTdtRWFmT0xIK2xwazU4VTVOMExL?=
 =?utf-8?B?WTdESW9OVGhkRTJBZEVBaWFPclB5dkNDN0FkdnNEQVBKaEdyOGJSdStQVXB4?=
 =?utf-8?B?RFJzVjZ6NnMrWmdKRHkxaEN6dllhd2RPZTloMHM5TE1kd1F2cml2d0FzdS9j?=
 =?utf-8?B?ME45M3lYUGlSRUQvdHdtNlFjdnhmckxHNk9EWU1ZS3hKZHdFa09zNGR4RVlW?=
 =?utf-8?B?bjFPQXNCem9IRVNxb2NtWGhmdVc4OW16ZTVPUHdCVXp6VWMyaTRIb3d4UU1s?=
 =?utf-8?B?YWFmRUNUVm0wd1JvaXY0SlNScGlTd0VrWW9mUkJtS2FKdjgyM3hYaEtaMEt4?=
 =?utf-8?B?TTZiOG50T2ZDeG5uY0JkYXl2T1M1ZEx5dHFIRDlkZFBzYURPUVFnb1l4b3o5?=
 =?utf-8?B?ZWdNYnpGRFZ4RXNrVHBJTjB4QkFZUlFtZDk5a01sb01tbkRiQlFXMHRzUkdQ?=
 =?utf-8?B?Y2VIZmFPMmlMVzhxWlJna0VlSW5KUTcydmRhT1V2S2tzTGRMZTZBVkNpVEUx?=
 =?utf-8?B?a0ErcTBqcmwzSG40WE1wN3dTcldiTlRVb0xGQ2lRTXpJanVYM09nWEFCN0kv?=
 =?utf-8?B?Yys1dGMrU0kwVnNSRDdmWkpKK1ZrVXpGUGNWdmNjTVFPaXprK0ZvdGVHTUcz?=
 =?utf-8?B?QTJScmd6cFF1K0U3Q0lQajB6ZWhGc1lYbURlSzRqNkIvRDFKRXJBbmxacmdJ?=
 =?utf-8?B?bUo0WmlmRjJxRmIyQ3hVb3lsYnZBdERCYnRuT1BMbE1hbWFJaVBCbTE2Umxz?=
 =?utf-8?Q?UkUPYgVpb9mOfaU2Yrhv8UwnL?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 19e56dc6-abee-4c34-b187-08dbb2b7bcbd
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 11:10:41.9705
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: iqaLLzhGdb7/u0iwRCQR7idqsPOi82vOpW2GV7YbZ/j6OJNgLfDmv24+fr4gZXKGMmnw3Y5KxuMr+DfFKwHSXw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8102

On 09.09.2023 04:16, Stewart Hildebrand wrote:
> @@ -544,6 +545,18 @@ static int cf_check init_bars(struct pci_dev *pdev)
>      if ( rc )
>          return rc;
>  
> +    /*
> +     * If mask_cap_list is true, PCI_STATUS_CAP_LIST will be set in both
> +     * rsvdz_mask and ro_mask, and thus will effectively behave as rsvdp
> +     * (reserved/RAZ and preserved on write).
> +     */
> +    rc = vpci_add_register_mask(pdev->vpci, vpci_hw_read16, vpci_hw_write16,
> +                                PCI_STATUS, 2, header, PCI_STATUS_RSVDZ_MASK |
> +                                (mask_cap_list ? PCI_STATUS_CAP_LIST : 0),
> +                                PCI_STATUS_RO_MASK, PCI_STATUS_RW1C_MASK);

While not formally disallowed by ./CODING_STYLE, I think this kind of argument
wrapping is bad practice. If an argument is too long for the current line, it
should start on a fresh one. Otherwise at the very least I think we'd want the
continuation to stand out, by parenthesizing the entire argument, thus leading
to one deeper indentation on the continuing line(s). (This may even be useful
to do when starting on a fresh line.)

> @@ -155,7 +165,8 @@ int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
>      /* Some sanity checks. */
>      if ( (size != 1 && size != 2 && size != 4) ||
>           offset >= PCI_CFG_SPACE_EXP_SIZE || (offset & (size - 1)) ||
> -         (!read_handler && !write_handler) )
> +         (!read_handler && !write_handler) || (ro_mask & rw1c_mask) ||
> +         (rsvdz_mask & rw1c_mask) )
>          return -EINVAL;

What about rsvdz_mask and ro_mask? They better wouldn't overlap either
(requiring an adjustment to the code you add to init_bars()).

> @@ -407,26 +439,25 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size)
>  
>  /*
>   * Perform a maybe partial write to a register.
> - *
> - * Note that this will only work for simple registers, if Xen needs to
> - * trap accesses to rw1c registers (like the status PCI header register)
> - * the logic in vpci_write will have to be expanded in order to correctly
> - * deal with them.
>   */
>  static void vpci_write_helper(const struct pci_dev *pdev,
>                                const struct vpci_register *r, unsigned int size,
>                                unsigned int offset, uint32_t data)
>  {
> +    uint32_t val = 0;
> +
>      ASSERT(size <= r->size);
>  
> -    if ( size != r->size )
> +    if ( (size != r->size) || r->ro_mask )
>      {
> -        uint32_t val;
> -
>          val = r->read(pdev, r->offset, r->private);
> +        val &= ~r->rw1c_mask;
>          data = merge_result(val, data, size, offset);
>      }
>  
> +    data &= ~r->rsvdz_mask & ~r->ro_mask;

~(r->rsvdz_mask | r->ro_mask) ? But maybe that's indeed just me ...

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 11:18:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 11:18:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599338.934701 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfevN-0006Su-H8; Mon, 11 Sep 2023 11:17:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599338.934701; Mon, 11 Sep 2023 11:17:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfevN-0006Sn-Eg; Mon, 11 Sep 2023 11:17:49 +0000
Received: by outflank-mailman (input) for mailman id 599338;
 Mon, 11 Sep 2023 11:17:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=mEGf=E3=gmail.com=idryomov@srs-se1.protection.inumbo.net>)
 id 1qfevL-0006Sf-8R
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 11:17:47 +0000
Received: from mail-oi1-x22e.google.com (mail-oi1-x22e.google.com
 [2607:f8b0:4864:20::22e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d4f222fb-5094-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 13:17:46 +0200 (CEST)
Received: by mail-oi1-x22e.google.com with SMTP id
 5614622812f47-3a81154c570so2646421b6e.1
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 04:17:46 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d4f222fb-5094-11ee-8784-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694431065; x=1695035865; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=uyyP35WORJPhc34DqoK4EFV7Hiz+wLXmgadyY6G0U4s=;
        b=H9bfd+ysDyW9BifXbZd+9KsQknNvY/5adba8CupSOgXXa1APZFnPMNd/oGfW33e87L
         ipAWx/39fR9fFX5iIQSJ+s+NTVd0chMcfyYswezMKT4IYfmsA8a6PLLMG44Wk7dIbs5x
         gdYPYvTPm5FOAEgbO4/KdBoXiLMk9a/9CdWFK/mWQ4BdyJER80iuEuVM4zyXZ/4lEN/3
         s/KG0tJnsZoM3qqgtVOV/mG46tuct1w/USuCMAz175UcHtSwMsM5Hgj1eN3mb3bSqAsC
         3tPCPJoaZWcbbepvgQDtFJvytP+meCtCBL7+NIH4YOGOwZpJOKv36z8d3JLD/Xea7ehN
         jLjg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694431065; x=1695035865;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=uyyP35WORJPhc34DqoK4EFV7Hiz+wLXmgadyY6G0U4s=;
        b=ve9xs8J5IdXHrLqELdmHlYBKIBQH9o9bSahf/Z5nkM3MSXm8NykOC0/Q5xSrI0vV1c
         /8lCTp5I7aJ0ckorIizKkXAZ/flpCELdXUCa+h3asUVvbjH677yB+iKPRRgUQjZuTCmD
         oNT3BIfNHAW04a5vEX++cQ3yZgop1bzW2I+hC6suBQvif0D8gCd2q5OHJ8d4te6IJ3T5
         aiLqdKdtarLOWTpgTK2v/HgkyuchqRvuUw3LwdnUuvGlDSEv0ynux7jp6wRIcNHxrX8F
         E7LX4mo8PKRwDCOoNeY7hgpGtxg5HAWOpMoVjSZKVDaus6Ea1+JPmztIz8sSsJ8Mp9y4
         Ys/g==
X-Gm-Message-State: AOJu0YzaMrbVJzW6xw5exMTWr4NY2ptHD3J2UeuoKKt6FuIPbLO48g/E
	mMweR9mGZf06I81Wh4rSow6iBee21SloshjEV/c=
X-Google-Smtp-Source: AGHT+IHfLSzLJ7DoisLGgPXbBMQuV2W9gGy4EzuCGlpOLGz+QL0UfCYEQ7BZEzqMDlOLutVjDy4yHBmGHDnDDidVnjU=
X-Received: by 2002:a05:6808:1795:b0:3a7:550c:635d with SMTP id
 bg21-20020a056808179500b003a7550c635dmr11058926oib.56.1694431064820; Mon, 11
 Sep 2023 04:17:44 -0700 (PDT)
MIME-Version: 1.0
References: <20230831132546.3525721-1-armbru@redhat.com> <20230831132546.3525721-7-armbru@redhat.com>
In-Reply-To: <20230831132546.3525721-7-armbru@redhat.com>
From: Ilya Dryomov <idryomov@gmail.com>
Date: Mon, 11 Sep 2023 13:17:32 +0200
Message-ID: <CAOi1vP8-o_5PT4ZpHVXcF+xRb-2Wpa1JaWZxTqyXLXMCzm54mA@mail.gmail.com>
Subject: Re: [PATCH 6/7] block: Clean up local variable shadowing
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, kwolf@redhat.com, hreitz@redhat.com, 
	eblake@redhat.com, vsementsov@yandex-team.ru, jsnow@redhat.com, pl@kamp.de, 
	sw@weilnetz.de, sstabellini@kernel.org, anthony.perard@citrix.com, 
	paul@xen.org, pbonzini@redhat.com, marcandre.lureau@redhat.com, 
	berrange@redhat.com, thuth@redhat.com, philmd@linaro.org, stefanha@redhat.com, 
	fam@euphon.net, quintela@redhat.com, peterx@redhat.com, leobras@redhat.com, 
	kraxel@redhat.com, qemu-block@nongnu.org, xen-devel@lists.xenproject.org, 
	alex.bennee@linaro.org, peter.maydell@linaro.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Aug 31, 2023 at 3:25=E2=80=AFPM Markus Armbruster <armbru@redhat.co=
m> wrote:
>
> Local variables shadowing other local variables or parameters make the
> code needlessly hard to understand.  Tracked down with -Wshadow=3Dlocal.
> Clean up: delete inner declarations when they are actually redundant,
> else rename variables.

For rbd

>  block/rbd.c          |  2 +-

Acked-by: Ilya Dryomov <idryomov@gmail.com>

Thanks,

                Ilya


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 11:33:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 11:33:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599346.934718 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qffAk-0002MW-Tx; Mon, 11 Sep 2023 11:33:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599346.934718; Mon, 11 Sep 2023 11:33:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qffAk-0002MP-Qm; Mon, 11 Sep 2023 11:33:42 +0000
Received: by outflank-mailman (input) for mailman id 599346;
 Mon, 11 Sep 2023 11:33:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qffAk-0002MJ-7k
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 11:33:42 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20628.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::628])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0e9f6d61-5097-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 13:33:41 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by DBBPR04MB7660.eurprd04.prod.outlook.com (2603:10a6:10:20f::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 11:33:38 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 11:33:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0e9f6d61-5097-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lw2UP0VXOy58jIVrd3bN77Q4LHAKG7sKNAstwS9ZI8bNiBdpKBjvcwfYrLmfaSp1Zbi1KeQ2j47NNaMFsGKL1jR0oODBSx0i0QEZdiWXvUNFEN9r/vZNEpuSsfTpKPWhcc2aH8B+4AsrrhL8TW5MV1+RsiFSmPLiDGbdJ/AmvCE0uwuBHh9oL1E1i8W5cd+NSboh3gqZM1EC8r9fpXqRiPLiFwRujLVK1obuAOMynjarc+iVL5xSbdhB1NdwqeSbWI+MeXV57Z/lJ2KWlIK6R8cGrqvr9UJofaJTKTxGPoAr79Cikqsh+UG7xl2+qnsbhUwIshxhfsfim6duImSb5Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=eV9VmPO7J7RbGIB1ovl8ONYr13bwZ0HfyL8oaBvtUrQ=;
 b=mWXg5vlqdliAa/2sIqnW/eOqrsv48m1xP26JqeamVeouLZQ2ivey2b0Jgxr/CsEMaV9pHePAQt1hrRT7H7jzDrelDUPzndbaH3WTKdtBp0PClnbQromGq+8K0byGtUaHBM1aE8W34Z1TAxh8Wq5+6yhMuswB5h0meAzb1H1rrN+HNGfHKHwqF2ccDh0TL7U8ePeqmG5zjCjMb3ih6inuC1CX9WWPCi7l/zDgzE3C4vzyyN6oFf0YWGZNbbYlOEMgzJe3kuLLrZbTXyXeHSkfvEpJ9Iy7yFB5oZ9KpMEgLLtsfF1NBARAX6jsxTuRDHCSybsGI0xCH0ewYAvTJY3tXg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=eV9VmPO7J7RbGIB1ovl8ONYr13bwZ0HfyL8oaBvtUrQ=;
 b=grZV95LPUuUZk4Biu9OaRnBG8ritrVVJIBDn1bbvnmrLXyJ+si/apJjjfBsQjxKCz7eAbDWVznuBAZgRp6zBStwaEoVavZlp1zsFtXAzcICl6ni4215h5hwBTvjDbV04QUXiuOuJsuNB7Zs8/Bvr3Ukbbw6SbSMmEOg0eh/on7ozAcCWR81+V5m05VVCiXJSdDJaDdI5Ac1MwjbdSiYbapjzWksaZTRg8Mz++qnf99aP83BuUhtIZiM9LVjL501gZ9twgKFaP6KS3up/LB4xeJyvaODYl1E9OxtqahDE9LvNs/XebM40VBEImYz7tY29DPltbL6IoQoXpC+6sVZxDQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <93f4a2f3-b98c-332d-64a6-9e34cc9dddf2@suse.com>
Date: Mon, 11 Sep 2023 13:33:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 1/5] xen/ppc: Implement atomic.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
 <7ed453323033a759427da33cea7d18ddca247ae7.1694211900.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7ed453323033a759427da33cea7d18ddca247ae7.1694211900.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0258.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b5::10) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|DBBPR04MB7660:EE_
X-MS-Office365-Filtering-Correlation-Id: 98addac7-a9ff-4226-4b04-08dbb2baf0ad
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZLhqlDR331WLvhkEdO8MVcKBRBI4MoygDXf5KhPAqer3PnuY5cFjwNupGviAaWyRbtLHnbXhAkbdWBiFGRuYB7TKZgsvmW8DaS1Szb6MAKcQuqHSjbFvU2YYBM9YwMW1LQG4eNw2hzH9rW0FvzF9v8ebv/B5Nx7KJ62C0aoz87B2VMuuwklmCmiCjzh9QS1DODIeBvwaX3PX9gJzcYN0vngDN8zXDkZLchG2iyWM9k6eEdEr0BdWAlQaiRYJEmTmZ1Lfi2WPv5yUTqiFQanyTugwKcBq4K2/bk2biAK23k57zYr+0oLu/13suvA0Tc4Djccqe0K9vYw3Tiqr/scTP2qSYfOT02W5ht3KH/Dx6emNfll14UHaSfFwtReO4IckHpPbi/ZyNude01hG0p/4IwbJgV435IXVH/aQtDR4p3xS57wr19eYebVClNZgV1jDgvY238trLcdvl45oSm51TGB9qmmFJQPr+eicGerRutA38bJqA9Pemy8cgrQTYAGa/swnTAIqJPrCOf4ebjDoTRaWlw3oC3Az7xKnca8x48gxr9Lt9atXzgj5LP/B+uEBntZXJ0iy9TX5ywFeHthI1123jnnVVTbXxN/FX9X2y0VQV0dnOU9DS2Yu+qj0M2ibzBgCBuGDhY0M3ADk+5cynQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(366004)(376002)(396003)(346002)(1800799009)(186009)(451199024)(53546011)(6486002)(6506007)(6512007)(86362001)(31696002)(38100700002)(36756003)(2616005)(26005)(66946007)(66476007)(66556008)(6916009)(316002)(41300700001)(2906002)(5660300002)(8936002)(8676002)(4326008)(31686004)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dnZEOXRVTGdxZVZ4K2RHLy8vZkpWRWpZUUd0NWJiTjJJaXo0b29PeXhRMzZa?=
 =?utf-8?B?QkFuaHFyRWFIT1lYZHJYQ01RcTJ4ZWJkUS9Ma0JxNWlXQVE2L0kzRFYxbzJZ?=
 =?utf-8?B?R01sc01FamlCSHV1RnFmZHNMUUs5eVZQbjVCY3FFbjBQc0lmQU00UXRPdDR6?=
 =?utf-8?B?TmNhWjdrRlZtZHUyMGR0U2dQcmhJUi9yejUvL2x6U1M3QUhtM3R5aTNsVXdM?=
 =?utf-8?B?cnFXQkgvN2JoSmZ6UUZiSFZBUzZ0VVhIUFZpbGJTUVRrMUhzSnJrKzBzUW5m?=
 =?utf-8?B?a3ExRHBNR3pxcXMrSE1XR05LYUlxdnd6ZVNnZ0RKcWY3YmpuL1QybGNkSmVG?=
 =?utf-8?B?aXk5TnE2dWthYm43VFFtZm1ENXhIUkVKb0RXQUhvYS9MdzJpS1JoRERnTTNK?=
 =?utf-8?B?RVBUb2xSNUdnNFJQbGw4SHJPeWgvZU5oNjQ4Zzc5cjVhSEFGWmhQblVTWjFR?=
 =?utf-8?B?NkRySEdHVkNiRjZGcGJiS3c5bE5qQ0tNZGdOaDFZYUtHUVYvbGVqSEV1UjJH?=
 =?utf-8?B?T3BQUURRa2hWRFUrQ1I5Tlo0aWs5anREZGZlYk1jZndCYjdQSVpGMzJXWVp6?=
 =?utf-8?B?MnVnSTZXSW9wQkhWMXJleDVIUmExRFZJVWIvN3JCTjVUZ3JHbHFBNkVCUEww?=
 =?utf-8?B?UjZTSE1Rdlk5YmJGWklEVXpVSVBJQTl3cFV6dmdqSCtwUDlnMzBBS3ZsWWk4?=
 =?utf-8?B?QXJkbU5TMVJvTDQxSnp2SDNuWlhSYjVsZkNOeW5NM2J1QnQ1eXAyNmdSZEMz?=
 =?utf-8?B?cENzdFNzaGpkbGMyaVdmVjR1S3BucWFBenRtZVE4TEdmalplSFpKWWxZWGN3?=
 =?utf-8?B?RUpHVm8wRUc5MXZQWjMxUzdERVUxZmFaQm8vOElIekRQUWtNejRrWkNBbzNJ?=
 =?utf-8?B?NFR6anc5N0gzK3RpSlV1V2IxZ0R0WVlTeEpsSmkxZ3UvMVA5OWtCeFpvNk5W?=
 =?utf-8?B?WDlodGtScXZxblA3RHlwMHFQWDdQNXhiUmZ5YUphait5b3EzTlFFT2h5K1pz?=
 =?utf-8?B?cEZIdG5FcW52cGJrY0FkYkxMeGt1bkZibTlLOGZDdDZiY0lWTWFVQ2lQMExO?=
 =?utf-8?B?ekNycWQ2TnRxelZ4QVo1VTBubTROQzVHMHU2Tm4zN3dVZEFTRmVvOXcvZk5N?=
 =?utf-8?B?cTJVdW10bk1JQk5uV1U0R0hyanhjdDJpT1VHNHA5b1Y3YTlXL2RlaG5WOG5u?=
 =?utf-8?B?NW93dWlWaDkwTUZEeitZYThNKzBIbnVrcjA0V0Myek8rQVdoa1ozeUtkcVBB?=
 =?utf-8?B?QVdYYVk3OEtQV25xaGxLQ3RqY1FVSzIzYndPNFcyOGFkdUNTcUN5SHgzMEsy?=
 =?utf-8?B?b2pFMi9sbVk1d0tvMnV2VTV3LzhqUlYxY0NJUDU1REtsMi9uNlVDQnpKajV4?=
 =?utf-8?B?M1Z5bUtxWWcrMW8zdkh1MSt4VVNxYkhKbXhiS1dqU0Z4Mnk1WWFFYWFVSnVB?=
 =?utf-8?B?UGZjb1RJcjNVR3hDY2FzMUlXMlBNWFNtQUU5MGFzT1lBOEhIc0tKWkp4MFV0?=
 =?utf-8?B?cnJ2UjVsUTF3amI3OVJxblN0dE9oR050SHZvMzNoOUhUVFc0U2x2ZGZtajRM?=
 =?utf-8?B?bHN6UE5jVnZ3QkVmK2ZORWpUYWpmVllVWDY1SEJZcmhCS3dJaTBLV0YxR29W?=
 =?utf-8?B?WmlJeXVLK1R5ai81Y0EzN2NUdnREcWhOQXdlOEpyNHgxendvNDNrSFk2TlVS?=
 =?utf-8?B?THUrb2hXMjFKeW4zZXFKWHBQd3k5SS8wTU1QcXFOWEZrUFJtR0doU05FL29V?=
 =?utf-8?B?YnVodFZsNHFCaVB0b05wNDVvMTd5QTZMZitDZ24wNVBkT2hzNHp2ekt2aVgw?=
 =?utf-8?B?VzRadjMzay9qMCtGWHN1cENicXd5bWRzdHVtTldLbkZwS1NtdkluWGtCYjg1?=
 =?utf-8?B?eW4wUkZmRjhZdFJmMk0yT29HeEhZVUgwRzAvR3dCMnovei9YcGF1ay93Q0hl?=
 =?utf-8?B?WVhKUlRCZk5WVjJKclFtZjFOcWtFQkV0alpUMVViVXdkdDBEbzJYQlVqdDdv?=
 =?utf-8?B?aXpvajdVcU93dGdEUVpmU21SdncxWnc2MnBsTmdoWW1aOXNjaVp5Tll1bjlS?=
 =?utf-8?B?UmVqWk5raldSUGVIY1dlam1JdnFqNUwrd0swOEJ1MEtublBMVGR0WVRSNnBo?=
 =?utf-8?Q?1I88YMIDE51pfL2hnaqDn9H6p?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 98addac7-a9ff-4226-4b04-08dbb2baf0ad
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 11:33:37.6316
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: FSdaq4mpGfjBmon7tPjKewJdYZisC69YGrDEmxK8/AqCun/D4KdFLI40rPxqY1khGWcgHQYj6A7WeKbw285MLw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7660

On 09.09.2023 00:50, Shawn Anastasio wrote:
> Implement atomic.h for PPC, based off of the original Xen 3.2
> implementation. This implementation depends on some functions that are
> not yet defined (notably __cmpxchg), so it can't yet be used.
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>

Acked-by: Jan Beulich <jbeulich@suse.com>

Just one remaining question:

> +static always_inline void read_atomic_size(const volatile void *p, void *res,
> +                                           unsigned int size)
> +{
> +    ASSERT(IS_ALIGNED((vaddr_t)p, size));
> +    switch ( size )
> +    {
> +    case 1:
> +        *(uint8_t *)res = read_u8_atomic(p);
> +        break;
> +    case 2:
> +        *(uint16_t *)res = read_u16_atomic(p);
> +        break;
> +    case 4:
> +        *(uint32_t *)res = read_u32_atomic(p);
> +        break;
> +    case 8:
> +        *(uint64_t *)res = read_u64_atomic(p);
> +        break;
> +    default:
> +        __bad_atomic_read(p, res);
> +        break;
> +    }
> +}
> +
> +static always_inline void write_atomic_size(volatile void *p, const void *val,
> +                                            unsigned int size)
> +{
> +    ASSERT(IS_ALIGNED((vaddr_t)p, size));
> +    switch ( size )
> +    {
> +    case 1:
> +        write_u8_atomic(p, *(const uint8_t *)val);
> +        break;
> +    case 2:
> +        write_u16_atomic(p, *(const uint16_t *)val);
> +        break;
> +    case 4:
> +        write_u32_atomic(p, *(const uint32_t *)val);
> +        break;
> +    case 8:
> +        write_u64_atomic(p, *(const uint64_t *)val);
> +        break;
> +    default:
> +        __bad_atomic_size();
> +        break;
> +    }
> +}

These two functions being as similar as is possible, ...

> +#define read_atomic(p)                                                         \
> +    ({                                                                         \
> +        union {                                                                \
> +            typeof(*(p)) val;                                                  \
> +            char c[sizeof(*(p))];                                              \
> +        } x_;                                                                  \
> +        read_atomic_size(p, x_.c, sizeof(*(p)));                               \
> +        x_.val;                                                                \
> +    })

... is there a reason you keep using a union here ...

> +#define write_atomic(p, x)                                                     \
> +    do                                                                         \
> +    {                                                                          \
> +        typeof(*(p)) x_ = (x);                                                 \
> +        write_atomic_size(p, &x_, sizeof(*(p)));                               \
> +    } while ( 0 )

... while you did away with its use here?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 12:02:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 12:02:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599361.934746 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qffcu-0002qO-Eq; Mon, 11 Sep 2023 12:02:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599361.934746; Mon, 11 Sep 2023 12:02:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qffcu-0002qH-CF; Mon, 11 Sep 2023 12:02:48 +0000
Received: by outflank-mailman (input) for mailman id 599361;
 Mon, 11 Sep 2023 12:02:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yA6l=E3=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qffcs-0002qB-9C
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 12:02:46 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on20619.outbound.protection.outlook.com
 [2a01:111:f400:7e83::619])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1d630b6e-509b-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 14:02:44 +0200 (CEST)
Received: from BYAPR05CA0043.namprd05.prod.outlook.com (2603:10b6:a03:74::20)
 by DM4PR12MB5939.namprd12.prod.outlook.com (2603:10b6:8:6a::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Mon, 11 Sep
 2023 12:02:39 +0000
Received: from CO1PEPF000044F2.namprd05.prod.outlook.com
 (2603:10b6:a03:74:cafe::e9) by BYAPR05CA0043.outlook.office365.com
 (2603:10b6:a03:74::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.16 via Frontend
 Transport; Mon, 11 Sep 2023 12:02:39 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CO1PEPF000044F2.mail.protection.outlook.com (10.167.241.72) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.17 via Frontend Transport; Mon, 11 Sep 2023 12:02:38 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 07:02:35 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 11 Sep 2023 07:02:34 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1d630b6e-509b-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NueESfxeMgG4XHkOWCyGVvQiTO859PnePXR0reR2HVDIvWHwTBTrdRZYSs0rDD2ZUR4x7LVyhZm9/AYlGZmu39J7I3O9ti+GdLOBSJUGXvDdyHqKHcDrxu6YHgqi8DgYXumqIHx9ffcsqAfqD4SYYlXvg7s2Di+CzMjxeHs/NWqg4ySApfDDOiVxDDb6b7mQ3QdFfQ/oQGeLCKiX7n+ZMi7GITkvSbHcrRpBjKiwrvzQupdEZwIQ4/CFQ1+xUDDah2kU4O+Z17NUJhlT0Uv0AivACaVHt6uOB1r40gPvSXsUTF+AwkTZET+4oVM6xv4IEI8dMRJtRyHALBE1ky9WEg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=oII/rPm1Gqy4qFZDCTDEaUsd7H27lVYybz811D1Db9o=;
 b=ivl9E8Dk6OoM+KFEHKBJ+BuSvxAbl9+BN2gEwlmKKliten+x/c5OMD3xi2WxjZavL+4Gv1db1wdKdSIdHbKD9AQ3OsT4aD5apzseWVXwLhFnYupkvfn7FAdk8NY87NwsbAB2T2ZLSr0XTeFn6GxETkAIlMyeH0W2Mt59BqQOwISdIHBMw2dIEsaaV9Tv3MYT0GyUUPg1fmlcirMQZF8YhnRjv0R/D+hmAfyqUFvwfI0j5uxckkJAc5NToQpos3cY2o11HYM821yAJQCDcyAbxUMcvxEpjdTMNl6A/thJLiynA6jcwLiv9r/dwM6PhtyDvozrDRK/cc9qu5SDtjILnw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=arm.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=oII/rPm1Gqy4qFZDCTDEaUsd7H27lVYybz811D1Db9o=;
 b=mIUFgR6FeUm5hl1Yv7aAcoO1Qi6s5CvlKC/Rzky8pUOaor0K5UTv8AyjcQMCe6s9S8c4TmVqgqpFpDR23v8XDyFzQFeq5gWr3WNqGNcMQfoJSr/l/vytsavgS+7jWx3g/6ITGvdUTzLV3ow/nMlQ8bi99BG4ohC6DkhioWZt1ts=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <762c7e90-d33c-9074-1c94-13a1c5db1ca6@amd.com>
Date: Mon, 11 Sep 2023 14:02:33 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 09/10] xen/arm: fix duplicate /reserved-memory node in
 Dom0
Content-Language: en-US
To: Penny Zheng <penny.zheng@arm.com>, <xen-devel@lists.xenproject.org>
CC: <wei.chen@arm.com>, Stefano Stabellini <sstabellini@kernel.org>, Julien
 Grall <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911040442.2541398-1-Penny.Zheng@arm.com>
 <20230911040442.2541398-10-Penny.Zheng@arm.com>
 <5212bdc4-9bce-fc5d-8a47-ae5e5fef37e3@amd.com>
 <61810692-e44d-7548-4734-b96c3b79b437@arm.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <61810692-e44d-7548-4734-b96c3b79b437@arm.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044F2:EE_|DM4PR12MB5939:EE_
X-MS-Office365-Filtering-Correlation-Id: 8b6df5e0-5548-4e5b-7cc2-08dbb2befe3a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	d+WzMuT3R6i9CiD5Hyi+pvIM5yz2C4IRE8tdziNQDK0NBjrZSNSrea3zTk3CGsUMvkpyGQxE2051Rn5COut4Ikzg5+fBFWjn+aEQ0GCR9K8gIXwl/FnFyAjmY78hcPAsOVEbxMMPOaa5sYRARg1A6rj6eZgUcyVUjL6ofMzfmJdQZSSc7vvNvTsQShmjxx44tvrlf5Yj1fjPwSE+XEy10QLAxwEAWfBTzRcGOejREPiQCwou1tC7YgCAa1ZOsCbNXir2r79O/J89Nd8RStQHIDKfl+VcsO9NGNZ95ki7pGwHixV2lq8FpZYZzwYBpaQpScsUzPFP2xpvUkRG279bok8u6Du1eItWnnSFnxnjeLUNHN4+BdIgQOqTqqg7Mg82pvqtAYSJIPozReBxlEC3vkqCSUrlzugO+FRbvmmm0ijIKfMN4l/6wgoZghd1jAw6Cs4QY/NXTbd1MQNRA4Nr2R2feuINqix3+GYQJ38JWAZNnv+Ceq63Oz/PTLmXGIBYJ8lJ4hMkMTJpSiP9Efpv0k6VIsTGlJUGoqRO/eIaVu1Qds/EJKsrhgotb9TF3HorMyZ4ZZziniIu+kmNkmDLfaEUVlYMQw8b2SFL2n+AO9RVS4xVCeD6BIlJnu3+LZfN7yQfHkM3zc8jNFKih8EKgjex1YIqbJHngQ/7tMTrk/DKKpxJFLMWZAHJ40jqhXjwu6sE2eUZTm1p4LQF4+IzPQt6TZNz3HcjKRPD4a37kzBSm2qmzdoi2PmYE+xA+pnx/9fpboH7i32bcsWsHJH2+v+qAmbORtgNLvbGIoo4EdIpS+bWDJ3y5MVUHxnEUeE8g+6eV//CfGepDTwyL2QKJw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(136003)(346002)(376002)(451199024)(1800799009)(186009)(82310400011)(40470700004)(36840700001)(46966006)(81166007)(356005)(82740400003)(36756003)(40480700001)(86362001)(40460700003)(31696002)(478600001)(41300700001)(53546011)(4326008)(8936002)(8676002)(2906002)(54906003)(44832011)(5660300002)(70586007)(16576012)(70206006)(110136005)(31686004)(316002)(36860700001)(47076005)(83380400001)(26005)(426003)(336012)(2616005)(21314003)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 12:02:38.0427
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8b6df5e0-5548-4e5b-7cc2-08dbb2befe3a
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000044F2.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5939

Hi Penny,

On 11/09/2023 12:39, Penny Zheng wrote:
> 
> 
> Hi Michal
> 
> On 2023/9/11 17:40, Michal Orzel wrote:
>> Hi Penny,
>>
>> On 11/09/2023 06:04, Penny Zheng wrote:
>>>
>>>
>>> In case there is a /reserved-memory node already present in the host dtb,
>>> current Xen codes would create yet another /reserved-memory node specially
>> s/codes/code/
>>
>>> for the static shm in Dom0 Device Tree.
>>>
>>> Xen will use write_properties() to copy the reserved memory nodes from host dtb
>>> to Dom0 FDT, so we want to insert the shm node along with the copying.
>>> And avoiding duplication, we add a checking before make_resv_memory_node().
>>>
>>> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
>>>
>>> ---
>>> v3 -> v4:
>>> new commit
>>> ---
>>>   xen/arch/arm/domain_build.c       | 31 ++++++++++++++++++++++++++++---
>>>   xen/arch/arm/include/asm/kernel.h |  2 ++
>>>   2 files changed, 30 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
>>> index 02d903be78..dad234e4b5 100644
>>> --- a/xen/arch/arm/domain_build.c
>>> +++ b/xen/arch/arm/domain_build.c
>>> @@ -1401,6 +1401,10 @@ static int __init handle_linux_pci_domain(struct kernel_info *kinfo,
>>>       return fdt_property_cell(kinfo->fdt, "linux,pci-domain", segment);
>>>   }
>>>
>>> +static int __init make_shm_memory_node(const struct domain *d,
>>> +                                       void *fdt,
>>> +                                       int addrcells, int sizecells,
>>> +                                       const struct kernel_info *kinfo);
>>>   static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
>>>                                      const struct dt_device_node *node)
>>>   {
>>> @@ -1549,6 +1553,23 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
>>>           }
>>>       }
>>>
>>> +    if ( dt_node_path_is_equal(node, "/reserved-memory") )
>>> +    {
>>> +        kinfo->resv_mem = true;
>> kinfo structure is used to store per-domain parameters and presence of reserved memory in host dtb
>> does not fit into this. Moreover, there is no need to introduce yet another flag for that given
>> that in other parts of the code in Xen we use bootinfo.reserved_mem.nr_banks to check if there are
>> reserved regions.
>>
>>> +
>>> +        /* shared memory provided. */
>>> +        if ( kinfo->shminfo.nr_banks != 0 )
>>> +        {
>>> +            uint32_t addrcells = dt_n_addr_cells(node),
>>> +                     sizecells = dt_n_size_cells(node);
>>> +
>>> +            res = make_shm_memory_node(d, kinfo->fdt,
>>> +                                       addrcells, sizecells, kinfo);
>> I haven't yet looked at previous patches but does it make sense to request passing both kinfo->fdt and kinfo?
>> IMO, the latter would be sufficient. This would apply to other functions you modified.
>>
> 
> yes, the latter would be sufficient. I'll fix it in next version.
> 
> 
>>> +            if ( res )
>>> +                return res;
>>> +        }
>>> +    }
>>> +
>>>       return 0;
>>>   }
>>>
>>> @@ -2856,9 +2877,13 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
>>>                   return res;
>>>           }
>>>
>>> -        res = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells, kinfo);
>>> -        if ( res )
>>> -            return res;
>>> +        /* Avoid duplicate /reserved-memory nodes in Device Tree */
>>> +        if ( !kinfo->resv_mem )
>> No need for a new flag as mentioned above. Just before this line of code there is a check:
>> if ( bootinfo.reserved_mem.nr_banks > 0 )
>> {
>>      res = make_memory_node(d, kinfo->fdt, addrcells, sizecells,
>>                              &bootinfo.reserved_mem);
>>      if ( res )
>>          return res;
>> }
>> so you can just append the following:
>> else
>> {
>>      res = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells, kinfo);
>>      if ( res )
>>          return res;
>> }
>> to achieve the same without a need for a new flag.
> 
> 
> Right now, bootinfo.reserved_mem is not only containing reserved regions
> described in host FDT /reserved-memory, but also the reserved ones for
> domain only, like in xen,static-mem = <xxx>.
> So simply with non-zero bootinfo.reserved_mem.nr_banks, we couldn't tell
> whether we had a /reserved-memory node in host FDT.
> 
> I agree that kinfo is not a good place to store whether host FDT has a
> /reserved-memory node. Maybe bootinfo.has_resv_memory_node?
Yes, I see. So we have 2 options:
1) Introduce flag under bootinfo (just like static_heap)
2) Inside make_resv_memory_node(), do a check e.g.:
for ( i = 0; i < bootinfo.reserved_mem.nr_banks && (bootinfo.reserved_mem.bank[i].type == MEMBANK_DEFAULT); i++ );
to see if there is a /reserved-memory node (i > 0).

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 12:09:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 12:09:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599368.934756 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qffj8-0004Ye-5g; Mon, 11 Sep 2023 12:09:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599368.934756; Mon, 11 Sep 2023 12:09:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qffj8-0004YX-0g; Mon, 11 Sep 2023 12:09:14 +0000
Received: by outflank-mailman (input) for mailman id 599368;
 Mon, 11 Sep 2023 12:09:13 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qffj7-0004YN-8J; Mon, 11 Sep 2023 12:09:13 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qffj7-00064n-4A; Mon, 11 Sep 2023 12:09:13 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qffj6-0007MJ-QY; Mon, 11 Sep 2023 12:09:12 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qffj6-0004BX-Q0; Mon, 11 Sep 2023 12:09:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=3FQXT+W8lIzUhTNZgbFERaB18o8TdtQ7toMNZWtFhac=; b=XEsP760Tdsg02o6UAOho2+/8zQ
	85kSbr1OOp1NyV+3JeMUZ9SrmvQniyy2ah9zYSJgafTgp/mdwFxcOjrmiNZ1pI1kCmLaO9sHbctkW
	pj0N7PvOf/Ru3K5btD8qMSWwwF5VFVwakq8JjQqBWzrlQQOYjC+u0QjOfiz5nv++dC/U=;
To: xen-devel@lists.xenproject.org
Subject: [qemu-mainline bisection] complete build-i386-xsm
Message-Id: <E1qffj6-0004BX-Q0@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 12:09:12 +0000

branch xen-unstable
xenbranch xen-unstable
job build-i386-xsm
testid xen-build

Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu https://gitlab.com/qemu-project/qemu.git
  Bug introduced:  ca056f4499c259c0de68ed7cefad7ee7b62bfa43
  Bug not present: a5e9fbf1dfd5b3f901f987755c89f1dc636c3747
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182938/


  commit ca056f4499c259c0de68ed7cefad7ee7b62bfa43
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   Wed May 3 12:48:02 2023 +0200
  
      Python: Drop support for Python 3.7
      
      Debian 10 is not anymore a supported distro, since Debian 12 was
      released on June 10, 2023.  Our supported build platforms as of today
      all support at least 3.8 (and all of them except for Ubuntu 20.04
      support 3.9):
      
      openSUSE Leap 15.5: 3.6.15 (3.11.2)
      CentOS Stream 8:    3.6.8  (3.8.13, 3.9.16, 3.11.4)
      CentOS Stream 9:    3.9.17 (3.11.4)
      Fedora 37:          3.11.4
      Fedora 38:          3.11.4
      Debian 11:          3.9.2
      Debian 12:          3.11.2
      Alpine 3.14, 3.15:  3.9.16
      Alpine 3.16, 3.17:  3.10.10
      Ubuntu 20.04 LTS:   3.8.10
      Ubuntu 22.04 LTS:   3.10.12
      NetBSD 9.3:         3.9.13*
      FreeBSD 12.4:       3.9.16
      FreeBSD 13.1:       3.9.18
      OpenBSD 7.2:        3.9.17
      
      Note: NetBSD does not appear to have a default meta-package, but offers
      several options, the lowest of which is 3.7.15. However, "python39"
      appears to be a pre-requisite to one of the other packages we request
      in tests/vm/netbsd.
      
      Since it is safe under our supported platform policy, bump our
      minimum supported version of Python to 3.8.  The two most interesting
      features to have by default include:
      
      - the importlib.metadata module, whose lack is responsible for over 100
        lines of code in mkvenv.py
      
      - improvements to asyncio, for example asyncio.CancelledError
        inherits from BaseException rather than Exception
      
      In addition, code can now use the assignment operator ':='
      
      Because mypy now learns about importlib.metadata, a small change to
      mkvenv.py is needed to pass type checking.
      
      Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/build-i386-xsm.xen-build.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/build-i386-xsm.xen-build --summary-out=tmp/182938.bisection-summary --basis-template=182707 --blessings=real,real-bisect,real-retry qemu-mainline build-i386-xsm xen-build
Searching for failure / basis pass:
 182914 fail [host=albana0] / 182707 [host=pinot1] 182638 [host=fiano0] 182606 [host=nobling0] 182588 [host=nobling0] 182584 [host=albana1] 182570 [host=nobling1] 182555 [host=nobling0] 182543 [host=albana1] 182520 [host=nobling1] 182508 [host=fiano1] 182422 [host=albana1] 182355 [host=nobling1] 182338 [host=nobling1] 182310 ok.
Failure / basis pass flights: 182914 / 182310
(tree with no url: minios)
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
Basis pass 991515a0583f65a64b3a6fa354409c64e670a762 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bb5f142cb320d45d3d8dee2c82dae003cad39da8 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf a9a3b432a87b27e4debd6f80f14e2cfc9f52218c
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/osstest/ovmf.git#991515a0583f65a64b3a6fa354409c64e670a762-b240eab03530f063ef5438497d70a731b19a201e git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 https://gitlab.com/qemu-project/qemu.git#bb5f142cb320d45d3d8dee2c82dae003cad39da8-c5ea91da443b458352c1b629b490ee6631775cb4 git://xenbits.xen.org/osstest/seabios.git#1281e340ad1d90c0cc8e8d902bb34f1\
 871eb48cf-7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 git://xenbits.xen.org/xen.git#a9a3b432a87b27e4debd6f80f14e2cfc9f52218c-49b2d6a529122f10e17a17f807d8d51154b5ba14
Loaded 30516 nodes in revision graph
Searching for test results:
 182298 [host=huxelrebe0]
 182310 pass 991515a0583f65a64b3a6fa354409c64e670a762 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bb5f142cb320d45d3d8dee2c82dae003cad39da8 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf a9a3b432a87b27e4debd6f80f14e2cfc9f52218c
 182338 [host=nobling1]
 182355 [host=nobling1]
 182422 [host=albana1]
 182508 [host=fiano1]
 182520 [host=nobling1]
 182543 [host=albana1]
 182555 [host=nobling0]
 182570 [host=nobling1]
 182584 [host=albana1]
 182588 [host=nobling0]
 182606 [host=nobling0]
 182638 [host=fiano0]
 182707 [host=pinot1]
 182723 [host=albana1]
 182730 [host=albana1]
 182739 fail irrelevant
 182770 [host=albana1]
 182796 fail irrelevant
 182801 [host=albana1]
 182814 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182835 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182845 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182854 [host=albana1]
 182865 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182879 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182897 pass 991515a0583f65a64b3a6fa354409c64e670a762 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bb5f142cb320d45d3d8dee2c82dae003cad39da8 1281e340ad1d90c0cc8e8d902bb34f1871eb48cf a9a3b432a87b27e4debd6f80f14e2cfc9f52218c
 182884 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182898 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182899 fail b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2f352bc2270fdc896beb2957b5171b03ba3e2d66 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182902 fail 5443c2dc310d2c8eb15fb8eefd5057342e78cd0d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 631c872614aca91eaf947c1748f0f27f99635d92 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182903 pass b81557a00c61cc80ab118828f16ed9ce79455880 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 269e60635a72f8dec4cb210b5b99e9e7f8920f34 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182900 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182904 pass 4d196352f35ac516b477e568265b4e537b0283d8 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bde438c3ecdb9813038b226c429dd982925d8205 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 d8c3ff585b9fd10200b05aca77139de2789d0517
 182905 pass dfb941d32a2f38c9177729e39c6a6515abbbad48 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 a9c17e9a21af9c4bf9c08dedf0f0df4a6566cf52 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 9a216e92de9f9011097e4f1fb55ff67ba0a21704
 182906 pass b81557a00c61cc80ab118828f16ed9ce79455880 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 9f89423537653de07ca40c18b5ff5b70b104cc93 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182908 fail b81557a00c61cc80ab118828f16ed9ce79455880 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 34e8182053c065e5e99017f798fb79259e26f583 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182909 pass c5753c3e38f3fde23eec9641cb3c433f443ff99e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 db1a88a5acc0df7d8a941aa772ef63c8941d1893 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 6621932264e3e86df3913db4249ecd3eb100b13f
 182910 pass c5753c3e38f3fde23eec9641cb3c433f443ff99e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 e73b8bb8a3e9a162f70e9ffbf922d4fafc96bbfb 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 6621932264e3e86df3913db4249ecd3eb100b13f
 182907 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182913 pass 0c4d0b6c8a05a6a62c0dca042f8e15e579e6f4af 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ef9d20c63b64989ce4941dc48531c50728ddcc21 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 e5522c71beaa83f2f5d2118724ace9f90c22e583
 182915 pass 0c4d0b6c8a05a6a62c0dca042f8e15e579e6f4af 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 87ec6f55af38e29be5b2b65a8acf84da73e06d06 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 e5522c71beaa83f2f5d2118724ace9f90c22e583
 182917 pass 14bf2cb411cae5306fd9efa8222264e8cf9ecc19 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 f5fe7c17ac4e309e47e78f0f9761aebc8d2f2c81 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 067f18c3a72d8f0acccab831083b8518f0832d81
 182918 pass 92006e5804a4adff05556a97a951fd7766a1d79f 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 eaf760ac0d92c60b81c47acd9c051228442f33c6 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 067f18c3a72d8f0acccab831083b8518f0832d81
 182919 pass 4c8144dd665619731b6c3c19f4f1ae664b69fa4b 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c4e5f9a29faadc50fed673d720199db5638fbdab 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 6621932264e3e86df3913db4249ecd3eb100b13f
 182920 pass 00b51e0d78a547dd78119ec44fcc74a01b6f79c8 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 92e1d39f989771f9fc190234111863c7376487c5 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 11d9f3ddf501d3a68b06fe8258795c44e1dc32d1
 182921 pass 00b51e0d78a547dd78119ec44fcc74a01b6f79c8 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 cd1e4db73646006039f25879af3bff55b2295ff3 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 11d9f3ddf501d3a68b06fe8258795c44e1dc32d1
 182922 pass 819cfc6b42a68790a23509e4fcc58ceb70e1965e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 50e7a40af372ee5931c99ef7390f5d3d6fbf6ec4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 ec272d8d4c5de1a143f3cec50e3f22d0f783f39b
 182924 pass beafabdae49c873adecdb7511dbebe9d4ff5c8f0 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bb5c77c4f8a5ea9cb3f6bcf5ca33bab4d85d1d92 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 f805cf3e9b87584e16b03b5059b1163fd22bf5a0
 182925 pass bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 bb5c77c4f8a5ea9cb3f6bcf5ca33bab4d85d1d92 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182926 fail bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ca056f4499c259c0de68ed7cefad7ee7b62bfa43 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182914 fail b240eab03530f063ef5438497d70a731b19a201e 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182927 pass bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 3c7ee49b81d2fc2930c09f9e0206227516d406e1 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182928 pass bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 2a5919ab642a3273698233ef46c83741eec327bf 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182931 pass bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 1f2146f7ca0f04afc62c4a170ec78bd030f3e72f 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182932 pass bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 875be287cdba7b5a499711823314355fccc60913 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182933 pass bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 a5e9fbf1dfd5b3f901f987755c89f1dc636c3747 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182934 fail bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ca056f4499c259c0de68ed7cefad7ee7b62bfa43 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182935 pass bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 a5e9fbf1dfd5b3f901f987755c89f1dc636c3747 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182936 fail bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ca056f4499c259c0de68ed7cefad7ee7b62bfa43 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182937 pass bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 a5e9fbf1dfd5b3f901f987755c89f1dc636c3747 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182938 fail bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 ca056f4499c259c0de68ed7cefad7ee7b62bfa43 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
Searching for interesting versions
 Result found: flight 182310 (pass), for basis pass
 Result found: flight 182814 (fail), for basis failure (at ancestor ~11)
 Repro found: flight 182897 (pass), for basis pass
 Repro found: flight 182898 (fail), for basis failure
 0 revisions at bbf182229587958b17336c114e0a1525c4f90f3d 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 a5e9fbf1dfd5b3f901f987755c89f1dc636c3747 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
No revisions left to test, checking graph state.
 Result found: flight 182933 (pass), for last pass
 Result found: flight 182934 (fail), for first failure
 Repro found: flight 182935 (pass), for last pass
 Repro found: flight 182936 (fail), for first failure
 Repro found: flight 182937 (pass), for last pass
 Repro found: flight 182938 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu https://gitlab.com/qemu-project/qemu.git
  Bug introduced:  ca056f4499c259c0de68ed7cefad7ee7b62bfa43
  Bug not present: a5e9fbf1dfd5b3f901f987755c89f1dc636c3747
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182938/


  commit ca056f4499c259c0de68ed7cefad7ee7b62bfa43
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   Wed May 3 12:48:02 2023 +0200
  
      Python: Drop support for Python 3.7
      
      Debian 10 is not anymore a supported distro, since Debian 12 was
      released on June 10, 2023.  Our supported build platforms as of today
      all support at least 3.8 (and all of them except for Ubuntu 20.04
      support 3.9):
      
      openSUSE Leap 15.5: 3.6.15 (3.11.2)
      CentOS Stream 8:    3.6.8  (3.8.13, 3.9.16, 3.11.4)
      CentOS Stream 9:    3.9.17 (3.11.4)
      Fedora 37:          3.11.4
      Fedora 38:          3.11.4
      Debian 11:          3.9.2
      Debian 12:          3.11.2
      Alpine 3.14, 3.15:  3.9.16
      Alpine 3.16, 3.17:  3.10.10
      Ubuntu 20.04 LTS:   3.8.10
      Ubuntu 22.04 LTS:   3.10.12
      NetBSD 9.3:         3.9.13*
      FreeBSD 12.4:       3.9.16
      FreeBSD 13.1:       3.9.18
      OpenBSD 7.2:        3.9.17
      
      Note: NetBSD does not appear to have a default meta-package, but offers
      several options, the lowest of which is 3.7.15. However, "python39"
      appears to be a pre-requisite to one of the other packages we request
      in tests/vm/netbsd.
      
      Since it is safe under our supported platform policy, bump our
      minimum supported version of Python to 3.8.  The two most interesting
      features to have by default include:
      
      - the importlib.metadata module, whose lack is responsible for over 100
        lines of code in mkvenv.py
      
      - improvements to asyncio, for example asyncio.CancelledError
        inherits from BaseException rather than Exception
      
      In addition, code can now use the assignment operator ':='
      
      Because mypy now learns about importlib.metadata, a small change to
      mkvenv.py is needed to pass type checking.
      
      Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

Revision graph left in /home/logs/results/bisect/qemu-mainline/build-i386-xsm.xen-build.{dot,ps,png,html,svg}.
----------------------------------------
182938: tolerable ALL FAIL

flight 182938 qemu-mainline real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/182938/

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 build-i386-xsm                6 xen-build               fail baseline untested


jobs:
 build-i386-xsm                                               fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 12:34:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 12:34:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599379.934769 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfg7Y-000233-5t; Mon, 11 Sep 2023 12:34:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599379.934769; Mon, 11 Sep 2023 12:34:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfg7Y-00022w-3M; Mon, 11 Sep 2023 12:34:28 +0000
Received: by outflank-mailman (input) for mailman id 599379;
 Mon, 11 Sep 2023 12:34:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yA6l=E3=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qfg7X-00022q-FQ
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 12:34:27 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on20608.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::608])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 895af655-509f-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 14:34:24 +0200 (CEST)
Received: from DS7PR03CA0177.namprd03.prod.outlook.com (2603:10b6:5:3b2::32)
 by CH3PR12MB9282.namprd12.prod.outlook.com (2603:10b6:610:1cb::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Mon, 11 Sep
 2023 12:34:20 +0000
Received: from DS1PEPF00017092.namprd03.prod.outlook.com
 (2603:10b6:5:3b2:cafe::6e) by DS7PR03CA0177.outlook.office365.com
 (2603:10b6:5:3b2::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 12:34:20 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 DS1PEPF00017092.mail.protection.outlook.com (10.167.17.135) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.17 via Frontend Transport; Mon, 11 Sep 2023 12:34:19 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 07:34:19 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 05:34:19 -0700
Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by
 SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27
 via Frontend Transport; Mon, 11 Sep 2023 07:34:17 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 895af655-509f-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eoV2gTOG+j6rHA/7Eq967wss8o6VnWyiAe1toV64z5uackFtlO6zrELjaVUG5S7ZXkMtvW1bq0+alTMJNSbEoS9KDdKTxvqcEVNiUkOV2ca05o08EDqAMHz+P56yUhiVF7Xq3a/YDuWx4buhXFgpzu8siPZS0pfnwgNmvZYW76Y/rjmp25WhxkfuVLvS7DxQd3SW+aSCFe1N7XZPc6WMce9ZfEkIdJC3nT7SHZpMF3p7LLPYUCJeGmuSIL43ubAyI8YJUnW0gK6cj8BGn6JL7C6OhKqBXtUCk5bcIG+GcBYRMzVqWdZmsVZNveLoKDwu65jBsuawu4hN8Qsch76OCw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/3rxnRxg4T/QWKz8RRRZwEXtnuZGA3bWlO0H/O1Bs6s=;
 b=obXmBrjOBa4hUh9pVJ9QwRFYUMqaQcig98qnGiyBYVUiuc4UfEJNjyusRcy+gQ30PkgEkTiHFxytWq3ntixhfn/B29G/HxqUyQAdO6nFku+QIVPzb8j/Wf6h7Hr18xSDKm28e24XUdwrdLarCzJyjxN71E97C2SFYZAdCBsBOsE0i3yPa8zKaifE6SCZQTKVG4nJb4ey3ienuSA1zjdclW0DebM8KZooW1CMiyvIuJfJ/t5NEBAGKA5bGPd01RczjviyFX3G+AqMvfnXZun44+Wsob05KpZVC/9QFkzoq3KmocKBekp/yof1V3kyoiuLlWaQPRS3c9s91k1hUcmf9Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/3rxnRxg4T/QWKz8RRRZwEXtnuZGA3bWlO0H/O1Bs6s=;
 b=J0jnJXl6v8pcuv9nmjxlKFhOj+RH2bj4objGB7U8aHwCwf8syZVB+wtxkJraCR0z74gTr1gzMcMQptbQV19LRFfEZxvgbWietqc19d+mEOXGxdAe5mmj0g8jCLrJ7MDMYDhBaWwXhM6orxqAfbVBIRJo3j9LRhE6ci2tdXn0+vQ=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Michal Orzel <michal.orzel@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Michal Orzel <michal.orzel@amd.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH] xen/arm: Skip Xen specific nodes/properties from hwdom /chosen node
Date: Mon, 11 Sep 2023 14:34:01 +0200
Message-ID: <20230911123401.27659-1-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017092:EE_|CH3PR12MB9282:EE_
X-MS-Office365-Filtering-Correlation-Id: c9248225-8f91-4780-eb0e-08dbb2c36bca
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	w0nXrEJlPtPnm59H14bf2Sazv5yg3dvsBf1jvlOlNlb7RdRK+tfwvdPC4ftXHtCnLS96IzEI6vWk4WfMPXvMog5bgfBDcfYsFm0OvnPr9W1j4HXX2pNFO6vyX6AOr/htB5K3ekj9hXr7AgNYC0YTw8oCS51Azg9PzbgpQEiglbBL35cpuIIclj+3kZYFeiFbXC5LMIuirOnO5NOrhqxl8GpQBAi9vvaZYRgbtsbXNY5BTwFkSq9NZQCizLvfVkaE6hIpqb5PYggCFtzBHXkefAgN5fnaSUzJahrerB+dkrEEo7fhpLwjAABjiJBOECMemJ31mcSIqNF6iISzLBjIq353wFmdHVDXGrY54KWNc0ytcp7/CuaZeEksc7kNZfWIROUW7atsjlitGFOlvJMh6qwSSJtT2rGL/TeUGSS2fSpMZKz5BhdDRGNwBUfx9GKWzAMQn1YtOPJC02wq7WtgJVf1GT2s8Ky14PY/VQrpwBIxLXfKVTLCARdgJEpenIa9fhLK3+ddZwnSbajqeMzdLr8EYN5C4dyki/jifRSwzlmgzI7hK+DfN7UAC9k24EBmv//1VuY96TlswDDlYgzFa6r3iJOCcyI1hmBrUzAHChYps2BNwXGkhMOva6oePGktWusKXBOYC7FLl18SMb+zfB2ZBDim2AsxeeWuFQZHakmdPvqDAwVhCSaYEh4kliitIrxBs6JZtqiSAzaBYelV2CmZ2jPV3TOhbniI6hICivGKobjHwNFRsgxVFd6aIeAaLsv8ZiCuq8lnS435C9CKsQ==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(346002)(376002)(136003)(451199024)(82310400011)(1800799009)(186009)(36840700001)(46966006)(40470700004)(6666004)(8936002)(82740400003)(86362001)(41300700001)(8676002)(356005)(81166007)(316002)(70206006)(6916009)(54906003)(44832011)(70586007)(4326008)(36860700001)(478600001)(2906002)(47076005)(426003)(336012)(40460700003)(40480700001)(26005)(1076003)(36756003)(5660300002)(83380400001)(2616005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 12:34:19.9103
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c9248225-8f91-4780-eb0e-08dbb2c36bca
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017092.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB9282

Host device tree nodes under /chosen with compatible string
"xen,evtchn-v1", "xen,domain-shared-memory-v1" are Xen specific and not
meant to be exposed to hardware domain. The same applies to
"xen,static-heap" property. Skip them from being included into hwdom
/chosen node.

Signed-off-by: Michal Orzel <michal.orzel@amd.com>
---
 xen/arch/arm/domain_build.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 29dcbb8a2ee6..413568c0e2fd 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -1149,7 +1149,7 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
          * * remember xen,dom0-bootargs if we don't already have
          *   bootargs (from module #1, above).
          * * remove bootargs,  xen,dom0-bootargs, xen,xen-bootargs,
-         *   linux,initrd-start and linux,initrd-end.
+         *   xen,static-heap, linux,initrd-start and linux,initrd-end.
          * * remove stdout-path.
          * * remove bootargs, linux,uefi-system-table,
          *   linux,uefi-mmap-start, linux,uefi-mmap-size,
@@ -1158,7 +1158,8 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
          */
         if ( dt_node_path_is_equal(node, "/chosen") )
         {
-            if ( dt_property_name_is_equal(prop, "xen,xen-bootargs") ||
+            if ( dt_property_name_is_equal(prop, "xen,static-heap") ||
+                 dt_property_name_is_equal(prop, "xen,xen-bootargs") ||
                  dt_property_name_is_equal(prop, "linux,initrd-start") ||
                  dt_property_name_is_equal(prop, "linux,initrd-end") ||
                  dt_property_name_is_equal(prop, "stdout-path") ||
@@ -2300,6 +2301,8 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
     static const struct dt_device_match skip_matches[] __initconst =
     {
         DT_MATCH_COMPATIBLE("xen,domain"),
+        DT_MATCH_COMPATIBLE("xen,domain-shared-memory-v1"),
+        DT_MATCH_COMPATIBLE("xen,evtchn-v1"),
         DT_MATCH_COMPATIBLE("xen,xen"),
         DT_MATCH_COMPATIBLE("xen,multiboot-module"),
         DT_MATCH_COMPATIBLE("multiboot,module"),
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 12:40:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 12:40:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599386.934779 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfgCv-0003ie-P4; Mon, 11 Sep 2023 12:40:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599386.934779; Mon, 11 Sep 2023 12:40:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfgCv-0003iA-Le; Mon, 11 Sep 2023 12:40:01 +0000
Received: by outflank-mailman (input) for mailman id 599386;
 Mon, 11 Sep 2023 12:40:01 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfgCv-0003ab-4G; Mon, 11 Sep 2023 12:40:01 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfgCv-0006iM-0u; Mon, 11 Sep 2023 12:40:01 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfgCu-00085F-KE; Mon, 11 Sep 2023 12:40:00 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfgCu-0004eE-Jh; Mon, 11 Sep 2023 12:40:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=zmfYz54I+mtTWVeU7UFTCn5Z66kLrGHAaDLPqbEwbBs=; b=yY4Gwtck2O+MZjkL6AK7UehJDC
	ItBksIIKGzcwTKGuAIYH1NXSyeBDB4eFjh4a2SlI9ONPB4fpRD2HF9DM02syTS+pLNV4BZrSBa0wP
	fn3h8U/E9nzz4ETWYeuxPsW6vZfeCYK/VVd9DETtBcGfOHaFq+rgKStdA1/qLRh/VBa0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182912-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182912: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=49b2d6a529122f10e17a17f807d8d51154b5ba14
X-Osstest-Versions-That:
    xen=49b2d6a529122f10e17a17f807d8d51154b5ba14
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 12:40:00 +0000

flight 182912 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182912/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182849
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182849
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182849
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182849
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182849
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182849
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182849
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182849
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182849
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182849
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182849
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182849
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  49b2d6a529122f10e17a17f807d8d51154b5ba14
baseline version:
 xen                  49b2d6a529122f10e17a17f807d8d51154b5ba14

Last test of basis   182912  2023-09-11 01:52:03 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 12:55:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 12:55:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599396.934788 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfgRp-0006st-5e; Mon, 11 Sep 2023 12:55:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599396.934788; Mon, 11 Sep 2023 12:55:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfgRp-0006sm-37; Mon, 11 Sep 2023 12:55:25 +0000
Received: by outflank-mailman (input) for mailman id 599396;
 Mon, 11 Sep 2023 12:55:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zO6f=E3=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qfgRo-0006sg-91
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 12:55:24 +0000
Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com
 [2a00:1450:4864:20::32c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 77db6d4c-50a2-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 14:55:22 +0200 (CEST)
Received: by mail-wm1-x32c.google.com with SMTP id
 5b1f17b1804b1-401b3ea0656so46540645e9.0
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 05:55:22 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 k20-20020a7bc414000000b003fd2e898aa3sm4614638wmi.0.2023.09.11.05.55.20
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 05:55:20 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 77db6d4c-50a2-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694436921; x=1695041721; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=MJDHOHn3p19312k3bvPqCqjvzBN1CUNqtX4tOn1Hge0=;
        b=B2uKbcGVUI2F/h0UjASZca/J3YlWW4bXFre7Ai3RZv98278GZ6N+pr0R0OFujzWn5k
         j6EKOA/i4vd+VCdU1zJXSoxJHbLhBqdsvdsH4N3zufQkG+CtDQe9cu0APL78VpoP/Qf2
         8DC0Zm+7cpPmE4ZcoEz4kNN0HWskTauh5+tUI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694436921; x=1695041721;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=MJDHOHn3p19312k3bvPqCqjvzBN1CUNqtX4tOn1Hge0=;
        b=WZlGNx18xGIE3KgdAw0EqC7g6lJXPmISXCUc2CIm0G/jQyXLtGQ/TyisIZHO5Nnb4d
         HQgvzpfOdCfTQcnxFqBVjmfElVuBC7ld1tXaRX9t8xW7VU5oDCKAn4Mb4WiDYRzCegSV
         WwYlLe2h6dgWdIWubFOlOMJqXlbhx8ZYXcJYa93MBkXCNoQTRZHI+ZJ2f+fS5rxPKiGc
         dCuk/x/5d+uAdiKoqstrvdlhEFTxrx8pWBwP5kWPkSIvhm8VzMvmNiqojEQkCPbMMCET
         +ZaWuAMmvsvCsHqTG+tQAXCPKlYN+mCKJXJXjVgv4q0EOZoMuIAImhYnytoOEHIx7/y+
         mUkA==
X-Gm-Message-State: AOJu0YwFLDjIXrlwcL/S4sBbdd4ScSaPCkXrMpD9eaq0YuJv2QFXRzRR
	IorRPV/ooINoG+S/K8exvKPkcA==
X-Google-Smtp-Source: AGHT+IGXF0kToSvTlvtlGhMXW/AxR4qkmH8wRxUNBQ3odqh+RdhaStB4BW5cKw75fvTiGI2/6520BA==
X-Received: by 2002:a05:600c:21ca:b0:3f7:f2d0:b904 with SMTP id x10-20020a05600c21ca00b003f7f2d0b904mr8284128wmj.8.1694436921704;
        Mon, 11 Sep 2023 05:55:21 -0700 (PDT)
Date: Mon, 11 Sep 2023 13:55:20 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Anthony PERARD <anthony.perard@citrix.com>
Cc: xen-devel@lists.xenproject.org, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] tools/misc/xencov_split: Add python 3 compatibility
Message-ID: <6kqxsmihukmyzqte5isatmcyisrhpxujwzca6o5zmgvmjkutfr@ynr7cj2dxxvc>
References: <20230902162246.15672-1-javi.merino@cloud.com>
 <4489a5ce-ecd0-49e2-9e47-e621b098c96e@perard>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <4489a5ce-ecd0-49e2-9e47-e621b098c96e@perard>

On Mon, Sep 11, 2023 at 11:40:59AM +0100, Anthony PERARD wrote:
> On Sat, Sep 02, 2023 at 05:21:08PM +0100, Javi Merino wrote:
> > diff --git a/tools/misc/xencov_split b/tools/misc/xencov_split
> > index e4f68ebb6e..8f1271bfe7 100755
> > --- a/tools/misc/xencov_split
> > +++ b/tools/misc/xencov_split
> > @@ -1,5 +1,7 @@
> > -#!/usr/bin/env python
> > +#!/usr/bin/env python3
> 
> Beside this shebang change, the patch looks good.
> With the shebang change reverted: Acked-by: Anthony PERARD <anthony.perard@citrix.com>

In v2 I did not change the shebang:
https://lore.kernel.org/xen-devel/20230905201653.98425-1-javi.merino@cloud.com/

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 13:14:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 13:14:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599401.934799 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfgk6-00023K-Ld; Mon, 11 Sep 2023 13:14:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599401.934799; Mon, 11 Sep 2023 13:14:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfgk6-00023D-J3; Mon, 11 Sep 2023 13:14:18 +0000
Received: by outflank-mailman (input) for mailman id 599401;
 Mon, 11 Sep 2023 13:14:17 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qfgk5-000237-0O
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 13:14:17 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfgk4-0007SM-KI; Mon, 11 Sep 2023 13:14:16 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfgk4-0004uH-Eq; Mon, 11 Sep 2023 13:14:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=wVlQNb4p+4Fgf6dTqeYFzYits+WM4vda9Q4/Bf5kGKo=; b=qWUAlOs6eUn+ZRRR9rhaO2XNmK
	oZ1ZZuQ+lti0EyXma8tFy9RNgNQ0zfJNhdbTDY5+8pham1ZUXLc5hhpUnxC2IXOUmr+xFKO6WWfvx
	TJ6/4DaEZ5yd3n5QuV2jB41qWpIQuF8OuhXe0l7C5niIxDVvkaTh9DBDLWTj1OXe3Jqw=;
Message-ID: <366e89e3-bc3d-4c54-b1ad-8147abbabdc7@xen.org>
Date: Mon, 11 Sep 2023 14:14:14 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
Content-Language: en-GB
To: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911123401.27659-1-michal.orzel@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230911123401.27659-1-michal.orzel@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 11/09/2023 13:34, Michal Orzel wrote:
> Host device tree nodes under /chosen with compatible string
> "xen,evtchn-v1", "xen,domain-shared-memory-v1" are Xen specific and not
> meant to be exposed to hardware domain.

So, how dom0 is meant to discover the static event channel, shared 
memory it can use?

> The same applies to
> "xen,static-heap" property. Skip them from being included into hwdom
> /chosen node.

I agree with hiding "xen,static-heap" property.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 13:44:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 13:44:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599409.934814 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhDH-0007yv-UD; Mon, 11 Sep 2023 13:44:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599409.934814; Mon, 11 Sep 2023 13:44:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhDH-0007yo-RS; Mon, 11 Sep 2023 13:44:27 +0000
Received: by outflank-mailman (input) for mailman id 599409;
 Mon, 11 Sep 2023 13:44:26 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zO6f=E3=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qfhDG-0007yg-3n
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 13:44:26 +0000
Received: from mail-wr1-x435.google.com (mail-wr1-x435.google.com
 [2a00:1450:4864:20::435])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 50c106ae-50a9-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 15:44:23 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-317c3ac7339so4131551f8f.0
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 06:44:23 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 g10-20020a5d540a000000b003176c6e87b1sm10032692wrv.81.2023.09.11.06.44.21
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 06:44:21 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 50c106ae-50a9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694439862; x=1695044662; darn=lists.xenproject.org;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date:from:to
         :cc:subject:date:message-id:reply-to;
        bh=XrStGrtAzgSFHmNSZ5z2lPvRKM/yzCRzDV66XvZ6a5g=;
        b=aKdCaxicgJCJZNk3EedPd7NEX0Gv93+2jRcGrOrjZgj9vsvIitaLgwDUTlAhI53fJi
         K1Q6ybwTxYjCmE9Yr7kHQEFudTnsOUL2YfuWRzqIGe3u7A9dyEdRZ9zXtY23J5pWixBo
         oUpOJBu3EgXw+G+lpNXh2/D8Tl1/R7wuWx9Hc=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694439862; x=1695044662;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=XrStGrtAzgSFHmNSZ5z2lPvRKM/yzCRzDV66XvZ6a5g=;
        b=qag+1WonUMTLvURyZqwDTyAIyR4Sh5+O/Qlp7BOyB7+wO01S8JDeRxzXvZZ/SoXY9K
         RYCuyDtkENtJnNcD8oLQf37IrIbBUsvfslbk4VzcEwFUpuYctmuAp9EROPgLGq8Qnamb
         PiGw6CsdHlZopSMvfIuuPIgzJCi3ab25V55cNRwUzSF9VY46kN6NFwheP/YjP87FUyuP
         HqCK/Rd0ZjVbTqZ9I/M+tN90QB/MUkWUhocxbtidOyYPZzi5WNKNEytl6pg9OVXWXWPj
         SVx66ubZSZ2OWGmxddi6teynworeU7aCxxkR8RoByjk9bNIm8f4j7wLp2kdbHgQMOz0n
         JbOw==
X-Gm-Message-State: AOJu0YyBJM7y/ABRdjKQJ/br4CzgIgITQgdDhqvESKRdjHnsRolfetSn
	dV3sWMk5evzFQRY5zB3G8EIMkA==
X-Google-Smtp-Source: AGHT+IGwt0vrw66z9RWcHXyKzGsvIcMYS0u5YkZ3AmHBytqfivielHM1tsdLljRKzmH+dMRFm4BH0w==
X-Received: by 2002:a5d:43d0:0:b0:31a:d871:7ae7 with SMTP id v16-20020a5d43d0000000b0031ad8717ae7mr8430527wrr.29.1694439862451;
        Mon, 11 Sep 2023 06:44:22 -0700 (PDT)
Date: Mon, 11 Sep 2023 14:44:21 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, 
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH v1] tools/xentrace/xentrace_format: Add python 3
 compatibility
Message-ID: <lt77rwliauydvvzzm2vgaox5nqdt5a2sectcjvcyvq7edpq3ul@im3spknk7qcg>
References: <20230906131616.7681-1-javi.merino@cloud.com>
 <eccd7f3e-abf6-2e6d-063f-477ccbdc6b5d@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <eccd7f3e-abf6-2e6d-063f-477ccbdc6b5d@citrix.com>

On Mon, Sep 11, 2023 at 11:52:43AM +0100, Andrew Cooper wrote:
> On 06/09/2023 2:14 pm, Javi Merino wrote:
> > diff --git a/tools/xentrace/xentrace_format b/tools/xentrace/xentrace_format
> > index 5ff85ae2e8..166ebae325 100644
> > --- a/tools/xentrace/xentrace_format
> > +++ b/tools/xentrace/xentrace_format
> > @@ -4,11 +4,15 @@
> >  
> >  # Program for reformatting trace buffer output according to user-supplied rules
> >  
> > +from __future__ import division
> > +from __future__ import print_function
> > +from __future__ import unicode_literals
> > +from builtins import str
> > +from past.utils import old_div
> 
> This adds a new dependency on a package we (upstream Xen) don't
> currently use.  AFAICT, it's only for...
>
> > @@ -223,7 +232,7 @@ while not interrupted:
> >              last_tsc[cpu] = tsc
> >  
> >          if mhz:
> > -            tsc = tsc / (mhz*1000000.0)
> > +            tsc = old_div(tsc, (mhz*1000000.0))
> 
> ... this, which is always int / float and doesn't fall into Py2's
> int/int behaviour in the first place.
> 
> I'm pretty sure the code can just stay as it is, without needing to use
> old_div().

Ok, I will the dependency on python3 future and the old_div() for v2.

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 13:46:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 13:46:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599414.934824 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhF4-0000nN-8d; Mon, 11 Sep 2023 13:46:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599414.934824; Mon, 11 Sep 2023 13:46:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhF4-0000nG-61; Mon, 11 Sep 2023 13:46:18 +0000
Received: by outflank-mailman (input) for mailman id 599414;
 Mon, 11 Sep 2023 13:46:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=nwba=E3=citrix.com=prvs=6119d0f35=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qfhF2-0000iA-Ps
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 13:46:16 +0000
Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com
 [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 91fe6183-50a9-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 15:46:14 +0200 (CEST)
Received: from mail-bn8nam11lp2169.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.169])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 11 Sep 2023 09:46:04 -0400
Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12)
 by PH0PR03MB6220.namprd03.prod.outlook.com (2603:10b6:510:ef::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 13:46:02 +0000
Received: from BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912]) by BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 13:46:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 91fe6183-50a9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694439973;
  h=message-id:date:from:subject:to:cc:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=S13IeH8BIsnUWs9a4X0eFDzpFzcgBHceO243phvM2n4=;
  b=H9jLDwL8QVkr9ja3sZ3exm7PcZjsAoN9UNNLEHnxv+bUoYjPMOuTKGLW
   JDc3sY2kP5uP/OJ2hd1A8yXm601nzNdlCf/FFLd3BPF/bnDSq2IIz7HwC
   vxb1iTgQ+3N2GXBtb7d/PE33sgCPqOt8VYAbCiS7ddmGgsXIhZI3tiS40
   8=;
X-CSE-ConnectionGUID: 1mu2UHPsThGu8+pFA4Q0Qw==
X-CSE-MsgGUID: U66NL5z6TMqlm7Mvx5AkVQ==
X-IronPort-RemoteIP: 104.47.58.169
X-IronPort-MID: 121530442
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:bWs1BKwC94sGx2+HvUV6t+cexyrEfRIJ4+MujC+fZmUNrF6WrkUPn
 GQWWW2Cb/jYYTOkf9olPt+w8BwAvsTXndNrSwA9rSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EkHUMja4mtC5QRvPKkT5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KThL6
 KYlCAgWUhCsmrL12JySFtA0v9t2eaEHPKtH0p1h5RfwKK9/BLrlE+DN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjiVlVIguFTuGIO9ltiibMNZhEuH4
 EnB+Hz0GEoyP92D0zuVtHmrg4cjmAuiAttPT+XkqqQCbFu7+zJNLjlLRwWHhOC9jxGbRcICA
 k8qw397xUQ13AnxJjXnZDW6qWCF+BsRQdtWFMUx7AaQxuzf5APxLngJSHtNZcIrsOcyRCc2z
 RmZktXxHzttvbaJD3WH+d+8sjeaKSUTa2gYakc5oRAt5tDipMQ5iELJR9M6Saqt1ISrSHf33
 iyAqzU4i/MLl8kX2q6n/FfBxTWxupzOSQ1z7QLSNo640j5EiEeeT9TAwTDmATxode51knHpU
 KA4pvWj
IronPort-HdrOrdr: A9a23:leidka1BQQ89zP1KqBzo5AqjBahyeYIsimQD101hICG9Kvbo8P
 xHnJwguiMc+wxhPk3I+OrwcZVoLkmslqKdjbN9AV7mZniDhILKFvAr0WKB+UyDJ8SWzIc0vs
 1dmupFebjN5DNB4/oSlTPZLz9W+ri6Gc6T6ds2hE0dND2CI5sQlzuQ0mugYzBLrNIqP+tHKH
 JHi/A32wZJdRksH76G7rppZZm0m/Tb0JbtaRELCxMj8U2ShT3tsdfBYmal9wZbVzlGzrsv/G
 3d1xHw6OH62svLuiP0xivW5ZxYlNftz8IGGcSDzpN9EESeti+4IIBqU7KPsD0xuaWz4Fhvyr
 D30mUdFtU273nYcW24rB71nxTp3nJygkWSvGOwkD/mq8T3SD42DtMEmIpWNkex0TtVgPhslK
 ZA122Uu5dTFFfclCry69WgbWAaqqObmwtUrQal5UYvKrcjVA==
X-Talos-CUID: 9a23:G5Kojm7TWZLTV5EzvdssrUsJQP0FSmbhzFjNcwygJ081ceWsVgrF
X-Talos-MUID: =?us-ascii?q?9a23=3AWllu6A6xeYfywQkYHDKiN7frxoxVvfqILB0fz6k?=
 =?us-ascii?q?jos2BagluK2q0jwqOF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.02,244,1688443200"; 
   d="scan'208";a="121530442"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GORQZO65CBf55NzcsXCvzDWaV8hrGneAsj2K1ko70gtZon9jqMPFCTCh5+fvbmWo/1fR70zsSQyJLsPV3WkC/t2GBfDv4WUBeVT/9kMpEtZmIxenqHfnTE3kUE0JKYOTASITYvtGCOsNRxH8GBJejOY6hsrSDYcvEm9g5MHU+JEgKr9opAGmy7IU/6e0Es1y+eSWnpAXQSHJRlyP1WEqGqu9xWOvdYVvtzDu5cS26j1d4YGWE7ex8diIn6GVFYezOGjIGycHEplst++XfcYJFpQDFxggetK1dPai506x9pfdc3bGX02rmhbYnbBanCE/BPOxsQZ1AaTzg0hShV6zYQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xiBAzcrfVe1ri4hEx1DSaJa3YaxZX0Fs1TA0n3S4yAc=;
 b=XIpEYGYggnq3VWFCM+ups6+iBhHOv5Abi+lvQX2NGkNqtxlduJB1TzqFneOalCJHGPi1UogBxhJAtq6kBDyTlYz8nHkzWHtENVAexenF+kRhYA11qdSbegSpaCrHTIzZEvg/H4nndnDbbavlPtZ+cZIavUr9U3tNziiwzQxUYkMo9We2pVJ9DOJ4AEiijWrwj90YOCDKmK8MMuA+fEiqzzS7dZDXViqNifmkB0cWUARPhXJnEWC/yyklQyl/ayL6hFnYsCXBSdp8q4VBrp1YpWsBDNnHq/ByK/vU1l7/TJB7rnoQTvvilPH7+1E0ujVlGmnKUCdFvedJGVMoevkxIw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xiBAzcrfVe1ri4hEx1DSaJa3YaxZX0Fs1TA0n3S4yAc=;
 b=NIgDgG6cX+3AuZkUN4z6BD2DcU+lWOaHKY9DIVuk8c4ecBNt7IvciaOOQR8k7fx+1uBnAcLvZj8tb1BWl+DrNLtZOVdkCfOkOVLb9I4M4Qs76ZFG6cdjBkUBqNdI3NpFCxbY54tyAQyQi0nFE5wWVShN3/FpVl9Gv2CkPji5TLQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Message-ID: <daf0ec20-71bf-26cf-5587-848d94bab972@citrix.com>
Date: Mon, 11 Sep 2023 14:45:56 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v1] tools/xentrace/xentrace_format: Add python 3
 compatibility
Content-Language: en-GB
To: Javi Merino <javi.merino@cloud.com>
Cc: xen-devel@lists.xenproject.org, George Dunlap <george.dunlap@citrix.com>,
 Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
References: <20230906131616.7681-1-javi.merino@cloud.com>
 <eccd7f3e-abf6-2e6d-063f-477ccbdc6b5d@citrix.com>
 <lt77rwliauydvvzzm2vgaox5nqdt5a2sectcjvcyvq7edpq3ul@im3spknk7qcg>
In-Reply-To: <lt77rwliauydvvzzm2vgaox5nqdt5a2sectcjvcyvq7edpq3ul@im3spknk7qcg>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO2P265CA0276.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a1::24) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|PH0PR03MB6220:EE_
X-MS-Office365-Filtering-Correlation-Id: bb07d7b0-71ce-46c7-c1bb-08dbb2cd6fd6
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Gx/tZe1xhu8ImRv1m+/VGeAH1Ao353O3q2rfIoiR2e9mi+X9I3THp7k1aV/m/FRh5weM9H++MgcS23lljvwG1wvlWm1cVQtmKoOpoJF1x2g9QJJebld82XPG/n0cCqIueNTeoF8xFVE1CnRAEA/2tJyHH2O923xAikHFEbCeboPz7G2E7RpkRbI9cop4lTAlC3Ue/YokkmfyQMK3taHn9X31iVPdwYNtIBS3E9UCORzxHHzw+GD7yxJHDP+UxQ/e8r4TbyaWEv+4NrXycc9GF+FB2IS2Rc/zuYVI/qa4BfjcmRNK1B+uBzQovHDVDeMjjDPnegnH17pmnYoIDOIrapQsaxppoSR7KjZc1kUbBOd5VF0AxiWSmLk0tQQ/0GwmldUJnGVD+KZwOjPOFLXRPOej4x36mcwj9qPSoLtlSOpvmNquobWuOL9w8SA3aupVUgM1MYwasZahYurlyRF1sIXIUZ6uDBThoYMyp+ZGL0Q2eDWAKZFBaQcHkvn8AatqJempS+UYokoAbZP1oMtxTSThIyR2/75IVio1a9ub1kusfrd2gLg/YtI1zbCHgJNwR61PjWEVTeiFB640qgIVSytIsal65BtSsXGcBDkLSkUXiTOqF3YYwhiL0M/wgMvYsE9sHF+0JLPs8l0lGzwc/A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(396003)(346002)(376002)(366004)(1800799009)(451199024)(186009)(2616005)(107886003)(82960400001)(36756003)(6512007)(38100700002)(66476007)(5660300002)(2906002)(66946007)(66556008)(86362001)(54906003)(31696002)(478600001)(4326008)(8676002)(8936002)(53546011)(6506007)(6486002)(6916009)(41300700001)(6666004)(316002)(26005)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NFM2cmpVTk5lME9lQklBSUhoTFZZc3ZObjFoWEUzaXBCSVYrcmlYdWhVRDFw?=
 =?utf-8?B?YUpKaWJ6NHFHY1UwKzFqU2dhWG81NDU5ZzUyc2puMmt2Wlk5S1l0c3RjM2pO?=
 =?utf-8?B?OElFc3J5dDdnVlZKNVpGZmZ2MTdkTjVDNEY4cmxEdzV4UUY5cC9IVWRJeGox?=
 =?utf-8?B?R3FPQkk2dDcwWHdNaWkzV2R5QmxUcjRxSjEvWnlja2Yydi9seHY4Z0x1ZDhD?=
 =?utf-8?B?NUZrNHoycG0zc2U1WHJ3Y2FFaExjUWg0dGMrT3lsWlRzRlRXZWRSUEN6M09M?=
 =?utf-8?B?RDBHbkNaZSt4aEpSQWU0dzhHS3FyM3BYamhkS2lhaXEzd1NyM3Fja2g0WVBC?=
 =?utf-8?B?SmNBODJCc3liSnFzQ0hVaUhsbjFxUFlyZllWYk1tOU8xcmV1TVFXNmd4V0c0?=
 =?utf-8?B?cFJveS94WStxMHVpQlprSGdmaTRvV3JvMzhIeTFITmxMd0JIOWRYc21YNldH?=
 =?utf-8?B?KzUvMHd3VE93WUpmV0FYbC9Idk16OGFpd3pIMTZwazBrNzlhVmk2RGF0Z3g3?=
 =?utf-8?B?ekVIazRKVDBkd21BQ2lJZE1iQVkzV3NHS2x2ZjY2MmtqM2NTd2xXZ1BnOTNU?=
 =?utf-8?B?RnhTVThkQmQ3KzRSZ2NlWDBUMnM1ZEF0U1QveXVtelRrQjJkSkc2R25VUDkz?=
 =?utf-8?B?R25EemNWamNyc2dDd3JQUzVheC9rR0p3U29SaXJSVGNXYmRQdlg4dW9ZWGhn?=
 =?utf-8?B?OG9EZngrUW9kUFlsMlFmUkJDcHMvWUV0UTBDTDhmbGFLTG5GWnNqVUcxaGlG?=
 =?utf-8?B?VXlOZUxreEpXeWJIRGpWVE9VZWd5TERqMXFoaXpRd1pnWmtneE5PdmsrbHRx?=
 =?utf-8?B?M2xld3dYVTdiSk5qbGVZZ2YyWjhJQ2prQzMxUW5rOUQzaWQ4b1AwbVNpd0dm?=
 =?utf-8?B?M3RnR0N1S3Y3cythT2dTeWdCQXFyRU0rK2J5bWIyWHJOREJxcUpRcW9RUnQv?=
 =?utf-8?B?YUZRa0FwMFZNSjdHcVY1RlBvSjhSeTFJRmVuakVaaDE1K2F1amppU1dLTmxT?=
 =?utf-8?B?MThpTzdqdEVNTk5tOG5lVC9jTWt3dDlnVzlKV09EWmQ1ZlJ1R3Vramd5eVdy?=
 =?utf-8?B?aUtkcDZlV3YrYWNlUm5zazFlYzZ0N1d2TlE1M0J0bzUvVGVxNnEyOFNlL1lW?=
 =?utf-8?B?TmpKZXl1R2tRZ3FCeWx6aEpoSEluUGJqbXFNRzJsSkVqZ3d5N21RTllvYUht?=
 =?utf-8?B?U1pZVkN2cVlydzFpQWhjWGdjdU1FR0c1VDRudzFscVBKSEZYaEJmck1Za3Nz?=
 =?utf-8?B?c1F0QWM3NG1vVURqblFqTWRKcUpSYmRmLzhKdU9iMllEZjFUSGpJb0V0UHpG?=
 =?utf-8?B?L0lrRXdGWWJnUHZGZ25EL1c5SEdMWUJHTVhOWkdLMGl3bVRic21lRGdVTnp4?=
 =?utf-8?B?aVVBNGtDQStDL0ZtV0kxTXdvM1YyOFdOWThxYXhJeTAyNldLOEJFTjR2U3BU?=
 =?utf-8?B?R28wbzUwQkh4NTBpRGRubEtLSHpLU29xMll1QkdJeTB2T0Z1cnhCQjlGZWVr?=
 =?utf-8?B?ekRkRzE2eUpjTGk4Y3NaTlhNUVZSdEJ5Y21ZN3dVSVVwRHB5ekdPdG1Pd3RC?=
 =?utf-8?B?QXBscC9kaW50S1ZFTEt1eE83aVIrczc3RGxtSUJTSDhXZFNXWENUb3dYc3Rv?=
 =?utf-8?B?c1NuWFNhOE0yWEhwVFY4SEVTQnJNYjloaVhUTE16UkJZQjZhVVIwdjVDYVVV?=
 =?utf-8?B?MDJKeGg2SzBHT0QrU0xSS0NmanJBNEI3RWVvVEFNb2pFbzVFMFV0ek9LVEIx?=
 =?utf-8?B?ZURqSytSQkxsRkMwL0orSHhPY0hHWWRBWnNmVWk0YWxhVG1LN3FOT0pic0ZL?=
 =?utf-8?B?a3FUajA1SnRZZThxZFoybDkwa2RiQU55VDkwWUg2azRYd1A2WXNBUHNFZ2tV?=
 =?utf-8?B?OXZCL1ovbHFxNkY2VytFY0RJYWRwWEQ0dTZCTWJEMVNpWDdhbmFzbXREZUN6?=
 =?utf-8?B?am4rZ2EveXljbythdzFzSGZWR0g5WmxreUE4NTluQWUvOFlYVlEzR2k0NjJH?=
 =?utf-8?B?cHJrL2xvZmZUS1Y5RkdmWkYwOU5HYjBOaUd3ZEFBWEt5RklYenhoaHJFNk1x?=
 =?utf-8?B?STBDcHlSKy9HSll6anRZdXlsakhyVzhiZzlLOXhOK0dkMXl6bTJDeWpmYjdE?=
 =?utf-8?B?Q05teEZYQ01JbG5YL1Arb3JNUjdrSk0yd2JrKzlNcGpBbUoxNVlNT0tQR2xt?=
 =?utf-8?B?dUE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	mJt6gFdlcX9soWobcWMFpHCMd7ID3fw3I8TawReSyUdO7htN5wLxTADwAicL1e6XfFvF/qEpNfNI106fF5CTQNShEbt3eLekeMMdoji37Ljpl24pPehvQWfA63aacVF5Z1q4p4Gq6GqP9qB6VxCHsuwx35AbQS9imRzHWXX+y9gAgHJQ/ehdhRzUqRGXxEOEMSVUXc2oIVzi7gyHpqyVtnETGUQ46qHGI5ego9MnknJ++YvyHRDwIaYSS/OPoFxg62w8uzWo8SfDEzxzUAvqdRG8hs9K1y8HvkAHDmv306/MwuEAjwJWBFAwvNfr5vW2LwRk6fSSgiqC0imGfu8lp2tN8Tq/14TQkW5BZ4l4DDkUjk7IaaBGgJ1lvU7iCRjeyT9a0t/5VI8/mtvgXksc1tU2duCaO+JyikAWafKvCSLKdAREFafSG96tLzvRprTE2Q7B3xXKFCe06uOTPQMX8/D9wNfJQIfi+VASDNNFeFS/meWZLjWBvqwQmiNHFZhfFemKvi/QxpOlhb2zSbgxy1MHgyy9AO0xnH2h9o2ramaM2R3026B/NkqqQdPgZkDIqeR3LCg7GgfDvOlsZN8ahKhR3GjFC1KfI1xchDFFRE8ybo0/ilIX9u7WM+fDZftitMkJvGIyrPnYDrbdfGijY0opJHS1GKOCQ91uzdGLMRsEKzj07hfif1CYgeJWGhol6z5Ft1Xm468usqvnLMKUic5b+vxpi1DZY7xv1KeUZ4jzehPhfJcsULxUXslCwC2ATg44ZIzB0E0rlhAOwBh5TuF1MheJkgZ4Zo5dn8XDybSjzu+VeywZljqWYBlq5u2kVdotW4P9Duuj3Bmjn5p4yA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bb07d7b0-71ce-46c7-c1bb-08dbb2cd6fd6
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 13:46:02.0328
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9x25PiGMMPw2uczNAOxz+3mOpKdkZL6a0U7jUwO/Qr+nTwiW3J7WZ0b7uTqmov5kt+OYMXfY4YQcnwIS5PL24YVAFHvMjjOBQSlCCElbYr8=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6220

On 11/09/2023 2:44 pm, Javi Merino wrote:
> On Mon, Sep 11, 2023 at 11:52:43AM +0100, Andrew Cooper wrote:
>> On 06/09/2023 2:14 pm, Javi Merino wrote:
>>> diff --git a/tools/xentrace/xentrace_format b/tools/xentrace/xentrace_format
>>> index 5ff85ae2e8..166ebae325 100644
>>> --- a/tools/xentrace/xentrace_format
>>> +++ b/tools/xentrace/xentrace_format
>>> @@ -4,11 +4,15 @@
>>>  
>>>  # Program for reformatting trace buffer output according to user-supplied rules
>>>  
>>> +from __future__ import division
>>> +from __future__ import print_function
>>> +from __future__ import unicode_literals
>>> +from builtins import str
>>> +from past.utils import old_div
>> This adds a new dependency on a package we (upstream Xen) don't
>> currently use.  AFAICT, it's only for...
>>
>>> @@ -223,7 +232,7 @@ while not interrupted:
>>>              last_tsc[cpu] = tsc
>>>  
>>>          if mhz:
>>> -            tsc = tsc / (mhz*1000000.0)
>>> +            tsc = old_div(tsc, (mhz*1000000.0))
>> ... this, which is always int / float and doesn't fall into Py2's
>> int/int behaviour in the first place.
>>
>> I'm pretty sure the code can just stay as it is, without needing to use
>> old_div().
> Ok, I will the dependency on python3 future and the old_div() for v2.

My point is that I don't think we need this dependency at all, and I
don't think you need to change this line at all.

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 13:53:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 13:53:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599420.934835 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhLw-0002KR-UA; Mon, 11 Sep 2023 13:53:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599420.934835; Mon, 11 Sep 2023 13:53:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhLw-0002KK-RA; Mon, 11 Sep 2023 13:53:24 +0000
Received: by outflank-mailman (input) for mailman id 599420;
 Mon, 11 Sep 2023 13:53:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfhLv-0002KE-UV
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 13:53:24 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20630.outbound.protection.outlook.com
 [2a01:111:f400:7d00::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9247fa56-50aa-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 15:53:22 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by AS8PR04MB7893.eurprd04.prod.outlook.com (2603:10a6:20b:2ab::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Mon, 11 Sep
 2023 13:53:19 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 13:53:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9247fa56-50aa-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EKmKFPeIaTJl60wurEILfY4lmnO7ddGGzVIVjhWdL3VEjsumCjYztggWVuoeN7wwJJPg80j/1l6R5cOvF5aPIvAJmT+p8rX2Lhxdr+IimbuYqUdFcSszoE7T8cTJKf9gHgMApyEqHiwT8NT6X4U+asD956GuPXwheQo9WXeZnBggH2jtECdmpP5ZQHDq0pbjLrY2HcTJDGjwRXuhCUbkTlyjyV0hM8jrpWHxPritHRsHYuO5EHIPbypbXEeRZgcSzDCQzqm8b+3YoOKsVHkxMUr4R7HL/ldDEkaz6TnVkUWkgvRET6Bap2MRDbVtcoTEW5PEWHqyY1xffFri19d4Jw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=E8Rh17gKCOLUHiviCF3CCMlVIWvKkzwrCbIqhxS6hl0=;
 b=Y4E/jhcXuX51um/dVPexdL/DrK7JZ17ygwF71CYG/1kdRSGnIppwFp9tomeVc4wiOECa3ImaY11irIjqGEtUJRaZVCR85gxvR0aZCI13p0/Y4u5p3Izr1A83aqfraIhm9KXrJtSeZjUUilyT/buxb6brlGO93Ga27UfI145YNwVaiNqotaxPF2eVk+TggKkHctMN5Xbw7f1fxeahJYSpDbInsb0FqY55ufdksJF5WkNfx8eYp3DFhVoCmJUpUmp85KGRLntZ3q04A2+588m/yE3Hxk5DrTEjDbxZMs6l7mH4fReqZ9jLfgz7y3ihlunukeqkKnaN0kIVqOEy8sx3Zg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=E8Rh17gKCOLUHiviCF3CCMlVIWvKkzwrCbIqhxS6hl0=;
 b=gG4kiaQxV2IMSeJo/xmcRDXgElRKVQWoNLXNxWetEgQ0MI4gkdkWGhQI8YpbmpiubIt5D2C/Xpwexys0a89SCSDmeV+vJna2U+KtJYVr3qYahxtodLAYclvMVDI48OwUpVV9Tm7JC1BIY44aP4uWAgZ8a9EIqqNSUyqBGM1NgeiDylLTSR3Ityq/WhFy0wiLsJZtYoggQdZ4H114lIiMajJq7UhzieBlM7d46vIeB/VY1Nqol/29pjM0waw7exPvwsWuyvv2ZY2srHIJ/M1HzBgcukFhdlzJtzfTcNqllCI8gQIkPzF1etS4HdTRiC+rvjF0+Pme6xHBhFGGA+zebg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <65b367b2-34b7-0887-6f29-8cb8e77ede7f@suse.com>
Date: Mon, 11 Sep 2023 15:53:18 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 2/5] xen/ppc: Implement bitops.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
 <31292b9b259a401045646d50a7237364640bc85b.1694211900.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <31292b9b259a401045646d50a7237364640bc85b.1694211900.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0067.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4b::14) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AS8PR04MB7893:EE_
X-MS-Office365-Filtering-Correlation-Id: 795c006b-65dc-4cf4-cb17-08dbb2ce74c8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0zxGBKnwpnd+NzEUDlVpkapswJ3qZAYY8E1ZZM4xIr+ibp555hOl7bzsRe9R3NbhuXqosay4i8NOeJvnJKUebXrnM4qdoxo9tXawDmVoeCDkJ0iOcuIEsSz4afh+x/yiZPzb075r2d2cnbFeDVY/KzSUVu4Vu7IWADjMYsWQGmeVZak+do2giyW5HLecDwVRw3sPioLwfOIWEnzjh7oW1e4mQPF6jfKZmhNESsA5Qc82UyMdsYIZ6hHf4uYI0K638F8lrqQhwt7KnU8YFCxiSTtO+0uBoq7L9y3ndQsqgRvfz2RsOhED1m6IpUtwweSrBqe6PZ5HKFY3Y5BAIzRlt800RTzS/ggWnceb/3tXaZ0uqCVo8VN9Q7pSD7QY61oRLUJAZ16YlxW4eNSl8V2lm1BNEXTDeWlx1KHmw5hbXRwk1YnP2OpgnwSSkR491GvjQ0Yn5np57gZ55pGNgQU+tWLWEowpMve3wMQGcER2Vd1nxg9Klwpcr/Ug5Stn+TNjxIeRQl0q4h5GED/oFSjUmb1PSGZzIuSbL/9JJUvROhCNZfU8o9OUCdSDK7y7nljSbC1wz+LkxBi4AhcnOT2uhc6AHGVfIPLIB06dNCA/iRIK29Bv1+OY/B32RsJa3yCOnedE4AFzLoyOh/Xk+AzQFw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(346002)(136003)(366004)(39860400002)(1800799009)(451199024)(186009)(5660300002)(31686004)(6512007)(6506007)(53546011)(6486002)(31696002)(86362001)(36756003)(38100700002)(2616005)(26005)(83380400001)(478600001)(66476007)(8936002)(4326008)(66946007)(8676002)(41300700001)(2906002)(316002)(6916009)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VFc3Q0ZkVkNoVkVGRlloaVNWMUFsb0xWcC9sblBEanFaL1JvOTh1alI2Yjkw?=
 =?utf-8?B?MkZLSFRJSldFVHJQUmV3Mm9mT1VUR2lSNllPNkh5WUlpcStjRmI0WEQ4bHZF?=
 =?utf-8?B?aVQ0M09QZ0prYnNLTzFvbkd5YmNtZ2s0RmpKSDcybkpyYlBxY1owei96TmdE?=
 =?utf-8?B?ZXMrSXVRTjlZdy93bVk3eWRKL1dhbHZYZ28wNTN0K0ZQaVBDRW9OUURuZ0pW?=
 =?utf-8?B?QW9LZkdUUHdZNlBNUUljdy9rWVAwVVFXSHZESlUrZmZMbi9CVlV3WFVpMnlo?=
 =?utf-8?B?TWN1a3R0dkZKZWV0dTN0RFN2c1pKUm9IK1QzdWVzNHZ2ZWczU29sTXB2eEdR?=
 =?utf-8?B?bnB0bmQ0OUdGa1k3WDl0bkdqZVNmaFk1VXIwRTdKOUIvd1lRZ25tUzFXQzdK?=
 =?utf-8?B?T01vK0ZrRDBURFRqVUtsSHEwYzRxcW92cjhCWFh1S2ZINERmc1VZczE1bU9r?=
 =?utf-8?B?TVNjNXdLcHovcmIvZWFienNubEo5bWplV1pkSU05K2NIM3FERjRhVjlCZnNL?=
 =?utf-8?B?M1pTZndqanJJMUdlZkt2STdmdURKcHBuTGp0RkJvVmd4eis3V1NBT21HVWRp?=
 =?utf-8?B?Uk9LckNKaGhNeWV2dXFPVlBpbUJuU1FKbDFLZm02aUpsMlFja1JVM1J0N1ZS?=
 =?utf-8?B?bFVSWGw3L2JBejU5SFFuNlRRbi9kelowbUtVZTBkUUNXMU5QMGkxTkUvN2Yr?=
 =?utf-8?B?Tm5JQnV0NGlLNFNLSFBGMjQ1R2NMT1dHVHU5cVU2UVFyTFhYSnBsd1ViUnVO?=
 =?utf-8?B?b2pvcFQ0TE1OSW1Sclk4eDlQMFRjZ0FPbnlGRzQvS3drTjF3b2t5SFFHTmUr?=
 =?utf-8?B?a3BTUWdFSGVJL3RFU09xZnl3UTdtbnpoVWhKVFF4VmE5Z280ZlZoTkpVRUtM?=
 =?utf-8?B?aHZpZWFoS0JVOENvOTloN3N2VTgrRmszTzhYY1BVWmNxa2padWVRQUduUVE3?=
 =?utf-8?B?bzZHSWJ5eERKVmNnWTJvZFlWOXF5UzMzTjR2MUk2aEk5dGxnZFhIcnJ1SWxi?=
 =?utf-8?B?bVFLblF6TE80NXIwU3k4aFBYbWs2bnpqTHBkZUUrbGNpVnZvSHliYzl5NFVE?=
 =?utf-8?B?aVpxek9PVTlTMjFzbTNHVXZyZWdMNXVSanNCMlM1V1ZOSzczNTl6MGpWU1R2?=
 =?utf-8?B?bTRYeHRURTZhQXY4VVdGNnFnVFRxR3V5Um5CU0I5U2YyVFJwSW5EcGhHaEwy?=
 =?utf-8?B?Y3J5V0doaVZCckVIOCtFY2MxTlM3U0JBaTJnWEFacTlTZllyQ2Zhd2NsZ1Fx?=
 =?utf-8?B?Y3djck8rZHVVRTdTTFNmM0lYZWY0bUVlTzFwRlJnQ0RFekV1cTRBNjkrVU9D?=
 =?utf-8?B?RldEOVc1V3ZPRWRFMWFTbWhjWDRiWFZmbVVZWnZ4aHkycTVjZGM5TEJTOWwy?=
 =?utf-8?B?dWRNSjlCeENOd1VjK1Q4NjJFbUdOMjR2VWdXWFVOcUwzN21icjYxNWhPMnhy?=
 =?utf-8?B?dTZEcXZOMTJhVDBrcENPWDJZWFhZelhybDQxREFGNXV6U1lZeFEvZFQvZGtB?=
 =?utf-8?B?Z09RNTNOeGtJb0poV24xbEptTE1UZjNFaGpzb21VNG04UDQyZTMwaFVuMlV6?=
 =?utf-8?B?ZlR6VHJUWDlTN1dUZDFZd0xPV1pyalovNWgyQjFWUFQ3ZjcxK2tTOThWcXdS?=
 =?utf-8?B?RVVXb21RbVpMa3ltQ0ZKSFRlTXYxNTVweWZrOUhzWjJydHpOSE1JU0kzY2JU?=
 =?utf-8?B?TzVJQXlWdnhOdVhCYnpESzcvOWNQK1dJNm9panlHVENQUW1kT0pHS2FCUmc5?=
 =?utf-8?B?dW82UVZqeGFLeWVMRlgzb3gvL3ZrNkZkRTBYQ203NGF4QVpEbHNxYU82Sm05?=
 =?utf-8?B?NjlMY3VNcXdvSFNjalpGbmFjcVpxZ2VCOVN2cXBpall6eDJ6WmdZd1Y3TmdJ?=
 =?utf-8?B?SERvRVRpTjJ1MmdWM2dCM2tPR0NFdnc2RWVJL09uL0xlYUx2ZHE3T2tKaDl4?=
 =?utf-8?B?VUJkazIzdHEvajVsZ08zNk1hR3Y3dWhXZlU0SW14Yy9jSDhFNHhOS0I1VHFF?=
 =?utf-8?B?RDJZSVBOY24rQU1VTFRsbjBnODZGS1FERXJiTStOaXVIQWs4K3JJaUhseUJL?=
 =?utf-8?B?bUovM3FMMlF2WjE2bnZpeGxnUStGN1E3RmpzY3FGY05HSVlrZ3JIc1g5QStm?=
 =?utf-8?Q?2i36n1yTB6o+N5bQWvXBFLhis?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 795c006b-65dc-4cf4-cb17-08dbb2ce74c8
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 13:53:19.6532
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: jk+XBzlRMcEPoM1sSolK4HUIJFIk7jTnapAxh1DQigci6YCTfBrhHTrobExtV/oZUYHPMbTZI7CcTDdaEBoL6A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7893

On 09.09.2023 00:50, Shawn Anastasio wrote:
> +/**
> + * test_bit - Determine whether a bit is set
> + * @nr: bit number to test
> + * @addr: Address to start counting from
> + */
> +static inline int test_bit(int nr, const volatile void *addr)
> +{
> +    const volatile unsigned long *p = (const volatile unsigned long *)addr;
> +    return 1 & (p[BITOP_WORD(nr)] >> (nr & (BITOP_BITS_PER_WORD - 1)));
> +}

Do you really mean unsigned long in here? (As an aside I'd also recommend
to drop the cast; I don't think it's needed for anything.)

> +static inline unsigned long test_and_clear_bits(
> +    unsigned long mask,

While apparently benign here, perhaps also better to use unsigned int.
(Looks like I even missed instances yet further up.)

> +    volatile unsigned int *p)
> +{
> +    unsigned long old, t;

I'm less certain here, because I don't know what exactly "r" permits on
ppc. (Having said that I notice that mask also is used with an "r"
constraint, so restrictions would then apply there as well. But if long
is really needed in various placed, then I would say that a comment is
warranted, perhaps next to the BITOP_* defines.)

> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
> +                   "1: lwarx %0,0,%3,0\n"
> +                   "andc %1,%0,%2\n"
> +                   "stwcx. %1,0,%3\n"
> +                   "bne- 1b\n"
> +                   PPC_ATOMIC_EXIT_BARRIER
> +                   : "=&r" (old), "=&r" (t)
> +                   : "r" (mask), "r" (p)
> +                   : "cc", "memory" );
> +
> +    return (old & mask);
> +}
> +
> +static inline int test_and_clear_bit(unsigned int nr,
> +                                     volatile void *addr)
> +{
> +    return test_and_clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr +
> +                               BITOP_WORD(nr)) != 0;

I think this is misleading wrapping of arguments. Even if not strictly
mandated, imo if an argument doesn't fit on the rest of a line it should
start on a fresh one.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 13:57:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 13:57:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599427.934844 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhPg-0003HY-Fb; Mon, 11 Sep 2023 13:57:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599427.934844; Mon, 11 Sep 2023 13:57:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhPg-0003HR-Cy; Mon, 11 Sep 2023 13:57:16 +0000
Received: by outflank-mailman (input) for mailman id 599427;
 Mon, 11 Sep 2023 13:57:15 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zO6f=E3=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qfhPf-0003HL-Pj
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 13:57:15 +0000
Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com
 [2a00:1450:4864:20::330])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1ca4740a-50ab-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 15:57:14 +0200 (CEST)
Received: by mail-wm1-x330.google.com with SMTP id
 5b1f17b1804b1-400a087b0bfso47806465e9.2
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 06:57:14 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 y18-20020a5d6152000000b0031f3780ce60sm10224349wrt.7.2023.09.11.06.57.13
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 06:57:13 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1ca4740a-50ab-11ee-8784-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694440634; x=1695045434; darn=lists.xenproject.org;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date:from:to
         :cc:subject:date:message-id:reply-to;
        bh=LtszPSjF0361o7mG9b3MT9vCwKyYLB+8SdTDz5xxw0Y=;
        b=icUvW7YFZCSbz7X9fvHVT5kpmujNDF7aW2I04s5yL7a1rF/Z8dbemQqqB5efBpPwBz
         kvdaluMGkGLBpA7nZvmq4rCATZsMLRy2NJkP6dIyKGKkJx5Vg3f5KLO0F3iINB8yejBU
         S/gA3iBGz1vPtQnC0i/eplt6RyOdUJeUNwpo0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694440634; x=1695045434;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=LtszPSjF0361o7mG9b3MT9vCwKyYLB+8SdTDz5xxw0Y=;
        b=RmP61CT4I3YAbku1ffFBBmRPrcGL1vCy52xrC5eCy+7dmqbeDzLt3b7vKu7nTXUttV
         l6leGjfAaVKe7d2yrHFexZk5BuxlRnCNNhhmEXOoBTcyRzBRqzD13vgKR9EflIXc8lbF
         wVu5sY1m176uLPEPdmP0kx72iBEvsTaQHWXJOQndGCCzojRzyZahcNEJTPja2ovBCJ7o
         DT2jMMcwJE4RXh7DbXnkqiIrmSiISDLsZeNbghg/8MGm/580g5klnEmqxztshBtXKNm6
         4zCnWCjUdNEZasVxqWq0dTVoW0KKjzlilv7k28VAXD5GV85o5aADo+q43GU1q8AvXwKu
         QmdQ==
X-Gm-Message-State: AOJu0YyjLnhuZsOvDDbeThF5cqRkCXrqn14K3Nhf+uWDXfyg3OtVsPA2
	u29TTcLKZqTs8f4uTH2AoBhX9A==
X-Google-Smtp-Source: AGHT+IHbcCpFQfcuOKECRQb/pzUWzVhKag0NkQYI+gCwH5zHAqqePd7kvby5e9SC4QjgfDoA+nQtbA==
X-Received: by 2002:a7b:c7c9:0:b0:3fe:22a9:910 with SMTP id z9-20020a7bc7c9000000b003fe22a90910mr9082356wmk.14.1694440633975;
        Mon, 11 Sep 2023 06:57:13 -0700 (PDT)
Date: Mon, 11 Sep 2023 14:57:13 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, 
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [PATCH v1] tools/xentrace/xentrace_format: Add python 3
 compatibility
Message-ID: <e5xo6kolwd7ujd2utbx54rg4t25p37d4kkvlisyqkgsdioj3si@4amodrdu45nq>
References: <20230906131616.7681-1-javi.merino@cloud.com>
 <eccd7f3e-abf6-2e6d-063f-477ccbdc6b5d@citrix.com>
 <lt77rwliauydvvzzm2vgaox5nqdt5a2sectcjvcyvq7edpq3ul@im3spknk7qcg>
 <daf0ec20-71bf-26cf-5587-848d94bab972@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <daf0ec20-71bf-26cf-5587-848d94bab972@citrix.com>

On Mon, Sep 11, 2023 at 02:45:56PM +0100, Andrew Cooper wrote:
> On 11/09/2023 2:44 pm, Javi Merino wrote:
> > On Mon, Sep 11, 2023 at 11:52:43AM +0100, Andrew Cooper wrote:
> >> On 06/09/2023 2:14 pm, Javi Merino wrote:
> >>> diff --git a/tools/xentrace/xentrace_format b/tools/xentrace/xentrace_format
> >>> index 5ff85ae2e8..166ebae325 100644
> >>> --- a/tools/xentrace/xentrace_format
> >>> +++ b/tools/xentrace/xentrace_format
> >>> @@ -4,11 +4,15 @@
> >>>  
> >>>  # Program for reformatting trace buffer output according to user-supplied rules
> >>>  
> >>> +from __future__ import division
> >>> +from __future__ import print_function
> >>> +from __future__ import unicode_literals
> >>> +from builtins import str
> >>> +from past.utils import old_div
> >> This adds a new dependency on a package we (upstream Xen) don't
> >> currently use.  AFAICT, it's only for...
> >>
> >>> @@ -223,7 +232,7 @@ while not interrupted:
> >>>              last_tsc[cpu] = tsc
> >>>  
> >>>          if mhz:
> >>> -            tsc = tsc / (mhz*1000000.0)
> >>> +            tsc = old_div(tsc, (mhz*1000000.0))
> >> ... this, which is always int / float and doesn't fall into Py2's
> >> int/int behaviour in the first place.
> >>
> >> I'm pretty sure the code can just stay as it is, without needing to use
> >> old_div().
> > Ok, I will the dependency on python3 future and the old_div() for v2.
> 
> My point is that I don't think we need this dependency at all, and I
> don't think you need to change this line at all.

Yes.  And I forgot to add "remove" and the sentence made no sense.
What I meant was:

Ok, I will remove the dependency on python3 future and the old_div() for v2.

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:00:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:00:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599433.934855 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhSe-0005NL-UP; Mon, 11 Sep 2023 14:00:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599433.934855; Mon, 11 Sep 2023 14:00:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhSe-0005NE-RN; Mon, 11 Sep 2023 14:00:20 +0000
Received: by outflank-mailman (input) for mailman id 599433;
 Mon, 11 Sep 2023 14:00:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S94K=E3=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qfhSd-0005N8-9z
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:00:19 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on2062a.outbound.protection.outlook.com
 [2a01:111:f400:7e88::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 882ca240-50ab-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 16:00:16 +0200 (CEST)
Received: from SN7P220CA0029.NAMP220.PROD.OUTLOOK.COM (2603:10b6:806:123::34)
 by MW3PR12MB4380.namprd12.prod.outlook.com (2603:10b6:303:5a::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 14:00:12 +0000
Received: from SN1PEPF0002529E.namprd05.prod.outlook.com
 (2603:10b6:806:123:cafe::a7) by SN7P220CA0029.outlook.office365.com
 (2603:10b6:806:123::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 14:00:12 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF0002529E.mail.protection.outlook.com (10.167.242.5) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.17 via Frontend Transport; Mon, 11 Sep 2023 14:00:12 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 08:59:56 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 08:59:56 -0500
Received: from xcbayankuma40.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via
 Frontend Transport; Mon, 11 Sep 2023 08:59:55 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 882ca240-50ab-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nFwE8wRgid+5U5CEuhAuZdqHDIHJ2/7NGmAh1Sa9KtnzZrNzglDaqr74DLtWvmmFL5Knp1+nFIw69Dq0uNNivvASR1fR+u6vVLzf00WDnO7FyTCpG2lF7yMawl9Vg82vbdvT0uuaUIa6zUxiT7yG9dJi8r+rJVRibEKYP3tuxWrzs/Vqr2ly+zbHGTJF8j4mb/cXfjKUlHUAHS1J2biA717Xpwf5BzY/02oUiiRFwGpdGlHSHBsn808xUOVqlYy/L5vjkVklC7n3jsMoLp7S2tAS9Ad1sBcdvz84YM6D0iLxkLm6UMhv9raILWjAfIVoG6YAHlQH+CxxEstXF8Xc9Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+QJNZ1fs5zGlW2Mef6vi6EnkUOoTASFTwNcCnlMh8WQ=;
 b=CO/1d2vgz2JHK4nb2Ry4ioaagmSBH1S+7vRhFikGOa9+GTduJlZts3U0MyifescEGpsM4aRU4FMPFUw7rqPn6xSUg6RxP+QFWwZvNERzvdBMUdVFx4CZoeCTZ6WaOObIVo6mm/ywEFmLv5Rs8ilIJ7gzj6ZSYbminHK5R/J1MQ4jVoqFBSpz5JHWY372qJtUQXhs4izjonz4mjguvASrheWdFXuriX3qcHBOtmc2cO2gGCDNYYqcppXAOuVzsB9pd3G44oHls32RTFgd26nZYEOn9c1dnUtSK1TF1a9hP8MxUG560l2Ehe1naW2MWbTjoQLIUfRbY/S6b72Eq10dVg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+QJNZ1fs5zGlW2Mef6vi6EnkUOoTASFTwNcCnlMh8WQ=;
 b=OzYvpZsxOtYxQx/tCcpg6/Rpit8r+DDdV5OUy1omKCtYlkjurNm4X0/aWwz004ot3vMbj74Qhwk8184x7sYkJmi/xg4MvdyS3PlOH61Q470+QX4tCVisqV4krjyfzDJCh/huPynNwAlKyEPJp87nEUGiE+XDBXDDYrFfGMaa+0U=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <stefano.stabellini@amd.com>, <julien@xen.org>,
	<Volodymyr_Babchuk@epam.com>, <bertrand.marquis@arm.com>, <wei.chen@arm.com>,
	<penny.zheng@arm.com>, <henry.wang@arm.com>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>
Subject: [XEN v1 0/4] xen/arm: Split MMU code as the prepration of MPU work form Arm32
Date: Mon, 11 Sep 2023 14:59:38 +0100
Message-ID: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002529E:EE_|MW3PR12MB4380:EE_
X-MS-Office365-Filtering-Correlation-Id: 37418180-d3aa-4d1b-ffb9-08dbb2cf6ac3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	am9dTSa4DK5pdr8ngr1GueaFz/5cbpdVGdhGihaux0tIG1DxKOWA15V1JrGlCMO6KQ25lEW9q2EjiV79NtsdXg05K9SHLd8Slw0LzaO5Kv9YNHqNEMKARcKloFC7+1/UUWPWYA0CVtmTgqWR2JMZfJjq1wQCFO5zOVTXoN2mOBjKREkSyWdmIR3Y9FXzTP4IDcoM6C7T8i4bz+xbUIwn0PEHH5ISrXUQcEpTbuf7KwqnKxOc14ff5C0wTU6txZvq8CXoDyEbdMrE3AoaS6YCYdzhKJRvGxy8hL6uroDHPNGBHJ8MFlvNh7I3WKVYAMiHzPIoGJlva3NINqezlLgA84rLjv+r8O/lFUOELTCyte8rZyi69XuBUGuGh2/RRQRPp/HhxOHH8Q0r6B+13nl5ghiyWfH3nRjqtYhwEaYtGxEgyf7Zp24ZZ8zuy9FUH+c+/JP3uk6t6Rklt/ASaDnjroDLQ0cU3bavi7vWy3qyYdRboP64f2tCYUom1al4VB6ZdiOgitmSfXjUL/SDWTH0D+azI/Gdjkm0/iRv7OfMIK1h8pBNxU+tLQzhnLejAewSaTlNXXNepAPOBF++2sMcM0WWKuEL0iV/Fug+wBB0dpsYfy+yPUj9Orn8n+mw1/VwRZmIPk1k/57WgpEsML4EgBMpmewFXRhGySqD7joZIFlQ2EvpKK6rUpN5sSzYhPldmfb6n1QBeVhtU/LOhEkEHwfPpXmsGXFkRFPzj7ejyduJ814tjqW5yNbwOExYM057gEE3+keD84Xw4aAhai6lUQ==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(396003)(39860400002)(346002)(1800799009)(82310400011)(451199024)(186009)(40470700004)(36840700001)(46966006)(5660300002)(54906003)(41300700001)(4326008)(8936002)(8676002)(6916009)(70206006)(316002)(70586007)(40460700003)(47076005)(81166007)(478600001)(36756003)(40480700001)(103116003)(2616005)(6666004)(2906002)(336012)(4744005)(86362001)(426003)(26005)(1076003)(83380400001)(82740400003)(356005)(36860700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 14:00:12.1636
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 37418180-d3aa-4d1b-ffb9-08dbb2cf6ac3
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002529E.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW3PR12MB4380

Hi,

These are the set of patches based on top of
"[PATCH v6 00/13] xen/arm: Split MMU code as the prepration of MPU work".
These patches aim to do similar MMU rework for Arm32.

Similar to the former series, this is the preparation work to add MPU
support for Arm32.

Ayan Kumar Halder (4):
  xen/arm: arm32: Move pt_enforce_wxn() so that it can be bundled with
    other MMU functionality
  xen/arm32: head.S: Introduce enable_{boot,secondary}_cpu_mm()
  xen/arm32: Split and move MMU-specific head.S to mmu/head.S
  xen/arm: traps.c: Enclose VMSA specific registers within CONFIG_MMU

 xen/arch/arm/arm32/head.S               | 567 +-----------------------
 xen/arch/arm/arm32/mmu/Makefile         |   1 +
 xen/arch/arm/arm32/mmu/head.S           | 556 +++++++++++++++++++++++
 xen/arch/arm/include/asm/arm32/macros.h |  62 +++
 xen/arch/arm/traps.c                    |  17 +-
 5 files changed, 639 insertions(+), 564 deletions(-)
 create mode 100644 xen/arch/arm/arm32/mmu/head.S

-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:00:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:00:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599435.934865 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhSy-0005gw-5k; Mon, 11 Sep 2023 14:00:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599435.934865; Mon, 11 Sep 2023 14:00:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhSy-0005gp-2x; Mon, 11 Sep 2023 14:00:40 +0000
Received: by outflank-mailman (input) for mailman id 599435;
 Mon, 11 Sep 2023 14:00:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S94K=E3=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qfhSw-0005N8-Na
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:00:38 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 957a18bc-50ab-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 16:00:38 +0200 (CEST)
Received: from CH2PR20CA0009.namprd20.prod.outlook.com (2603:10b6:610:58::19)
 by PH8PR12MB6842.namprd12.prod.outlook.com (2603:10b6:510:1c9::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 14:00:33 +0000
Received: from DS2PEPF00003444.namprd04.prod.outlook.com
 (2603:10b6:610:58:cafe::ab) by CH2PR20CA0009.outlook.office365.com
 (2603:10b6:610:58::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 14:00:33 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS2PEPF00003444.mail.protection.outlook.com (10.167.17.71) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.11 via Frontend Transport; Mon, 11 Sep 2023 14:00:32 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 09:00:30 -0500
Received: from xcbayankuma40.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via
 Frontend Transport; Mon, 11 Sep 2023 09:00:27 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 957a18bc-50ab-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hQATQon54Un8o115gnezS4f6Mh0PUs8zKbUxSeBVL1cHQjIHXyT9wKYbV6JpErgrEMux6N0z97OKgpeyWl1eUX51BLlqiuJeE9jOu+y6h9NMwdPrBm5ndZ7PUIsaXPcZc9bPa7oI3T/5FkkfHaKhSDVKlPMMdmKqw+9+9sNszVnUlFDJeg/pMaxS8k+ZKt7KmWQ33QfeuDfJe61x2xOHUOxoDtrCbhmqs0n68Ywh1uIXoL9rZUGpOyPkEQGHFXvuoY3amsmHn5l0oIUrqB+hqo3/w7YoB5XVtp6y07W9t6YGEt3RrNhUck3zFJ/uWnbAkeaN9AlNdVi09DN+tFTXyw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=RmqowAx24OOOJpsd+S0aluwjNaHIyEOrBq4/krDyslU=;
 b=lcHWLIcN7iLuDKg9TRU2YdtboHNwv9GI7VsNHyk/5H3JKQQ0bBQ0Vfvyv43pct6oBzJDT8cdhQvwdgn9ZUkPckI4VtHQ0S9SZY2t2DajAYYh6pgztuLO2tlmfIYeSeaNHP/rcXRS37OnD5kduTv7HRIggOM8tN+pbAs6+25kcJi/iw3A5g1/5yOZoa/w3V7vrqKDeuwOwEXD4O1/lh66iuR0kXN+7kqhsIOXv2hGRMdZtU0NumXwx5TuPKGCpoz08CnDrX7v/SGz786N+Rz4yoXol+PBgWC0Y6HcELQO+vnDcD/Z9OJMtt5elPa01czG9yE1lxSVir7euQ6my73CWA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RmqowAx24OOOJpsd+S0aluwjNaHIyEOrBq4/krDyslU=;
 b=SWBERPDTKhdYc2VxczkT/Hx5JLZmPLs8ikpyOdrNHptJxA4Nf0yUv+pqd3xwdD/WP4JXPU992qTAZG4wmENPIqSlPvqYGmM5PQ6RsK99iAbYJSAxRENXSazSta5If9ttxEU8onb4Q09YnzZcw0V9vUyaUy05E8A16nbGdyF5y/8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <stefano.stabellini@amd.com>, <julien@xen.org>,
	<Volodymyr_Babchuk@epam.com>, <bertrand.marquis@arm.com>, <wei.chen@arm.com>,
	<penny.zheng@arm.com>, <henry.wang@arm.com>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>
Subject: [XEN v1 1/4] xen/arm: arm32: Move pt_enforce_wxn() so that it can be bundled with other MMU functionality
Date: Mon, 11 Sep 2023 14:59:39 +0100
Message-ID: <20230911135942.791206-2-ayan.kumar.halder@amd.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
References: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF00003444:EE_|PH8PR12MB6842:EE_
X-MS-Office365-Filtering-Correlation-Id: ddf0bd6f-988c-4cd3-2564-08dbb2cf76f1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VIbAHOJkt6eWHotY3vePWYxqmDkyPs+5vOfEtmssDw/U2GHiwM+r7EBenZoe8AIwV01HXjbGedbEJIpBfZwQOtAiRGKO7zhSagCOifnMnzUmp9A+6jCaO5ioWg7ipfCVF3vaLPJlyrA0DuJUPDRdhM6sxBy+PHVD+Y1dn/mX67IcvW3NESjV7BJP0PolmLtiRlsGwuQimrxgqM4OKAjjtfJLiL7YBGIxlHVB4X1q8ULCGXQ8/ZsPbXbm6iAMFSZbElJdtZdU4uv/fc2AJPlZkUwAckXAmMsX6bx5n82bOHnuw6nGCgPZQgex8HzJtj20LQoGIqFQNPVDmlR/N3xdPD43bl/jj6xAG306Tezg47iOXqiZVYe5NVsDZ9PuHyo8a4KjcSORJW5jRx909dPvZKMlHT+sYwoxGp/kqeIvrDdG9wfe4PI8CEwqRWugea8hjiqPI+cjHDL1pqCQ2DNhuQFED4aHrMtHGZkUAcwQQn4yAdLhUV7zwyJj2GTyaStXnlnqNQ/o1vwAMb/YUHZ9b0xot8lnh0ytImgYbFFqRkl6PnJsaFbKPnCASScS0cfuZAKPkbZtD/gPaCkmUhfMDdskhjHnccwacSyaH2g8rZ750znNGuw1mSKY6lbdC8lesBD6inrRtksK93lpry+n0rtvOwBQLFcrxNr/AK6LQDHTEkkFoXo6k5CFsIa8BUOfcCy6ctvIiWRQl8uUD02spWe+Aul8N45r0IG+WW+zF/b58StWUkUJSZtnNiBcMBDnS0JKYwgRfqVn+fXEZCEumQ==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(376002)(396003)(39860400002)(346002)(186009)(451199024)(82310400011)(1800799009)(46966006)(40470700004)(36840700001)(70586007)(70206006)(40460700003)(336012)(83380400001)(1076003)(4744005)(86362001)(2906002)(26005)(426003)(2616005)(103116003)(40480700001)(6666004)(36860700001)(356005)(82740400003)(81166007)(47076005)(36756003)(478600001)(5660300002)(8676002)(8936002)(316002)(6916009)(54906003)(4326008)(41300700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 14:00:32.5765
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ddf0bd6f-988c-4cd3-2564-08dbb2cf76f1
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS2PEPF00003444.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB6842

pt_enforce_wxn() is moved up (as the previous instruction ie mov_w has
no effect on this). This way it is grouped with other MMU related
functions so that they can be moved together in the subsequent patch.

Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
---
This is based on my comment on
"[PATCH v6 08/13] xen/arm: Fold mmu_init_secondary_cpu() to head.S".
This patch can be ignored if the comment is addressed.

 xen/arch/arm/arm32/head.S | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
index c7b2efb8f0..057c44a5a2 100644
--- a/xen/arch/arm/arm32/head.S
+++ b/xen/arch/arm/arm32/head.S
@@ -268,12 +268,12 @@ secondary_switched:
         dsb
         isb
         flush_xen_tlb_local r0
+        pt_enforce_wxn r0
 
 #ifdef CONFIG_EARLY_PRINTK
         /* Use a virtual address to access the UART. */
         mov_w r11, EARLY_UART_VIRTUAL_ADDRESS
 #endif
-        pt_enforce_wxn r0
         PRINT("- Ready -\r\n")
         /* Jump to C world */
         mov_w r2, start_secondary
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:00:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:00:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599437.934874 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhTD-00065C-DG; Mon, 11 Sep 2023 14:00:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599437.934874; Mon, 11 Sep 2023 14:00:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhTD-000655-Ad; Mon, 11 Sep 2023 14:00:55 +0000
Received: by outflank-mailman (input) for mailman id 599437;
 Mon, 11 Sep 2023 14:00:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S94K=E3=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qfhTB-0005N8-PM
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:00:53 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9e810d98-50ab-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 16:00:53 +0200 (CEST)
Received: from CH2PR04CA0021.namprd04.prod.outlook.com (2603:10b6:610:52::31)
 by DS0PR12MB7745.namprd12.prod.outlook.com (2603:10b6:8:13c::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Mon, 11 Sep
 2023 14:00:49 +0000
Received: from DS2PEPF00003444.namprd04.prod.outlook.com
 (2603:10b6:610:52:cafe::af) by CH2PR04CA0021.outlook.office365.com
 (2603:10b6:610:52::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 14:00:49 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS2PEPF00003444.mail.protection.outlook.com (10.167.17.71) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.11 via Frontend Transport; Mon, 11 Sep 2023 14:00:49 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 09:00:48 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 07:00:48 -0700
Received: from xcbayankuma40.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via
 Frontend Transport; Mon, 11 Sep 2023 09:00:47 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9e810d98-50ab-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FMfuXEPV4FiAganS7x5zuheUqg6EA2clj2LBu76e/ej5WQR9Juz58pF56fcp4E+D2fUjWJLpzj7yV2+XsWr6z9lbl5Zw5pw1d7Xqi+BycUtL6Tu+xbLd7VkhayvqVbq7cvIgUXTZXDuCGrVH2rUgsPZ95BgRLLUgEHPk5+9z3040VBZnuuxiRBlJi83qZHrKXFqVBIhlPC/S00mJRTJR9nIUIDLb6+JKZuZ7XdHTVShiGZyvNt5xxjV/rzSw67IqlFVgTXrZORJDuwViWw3b+D4qfCiVzFCtbPOlELPdwcKCcm3uT0rcHcQ7DGztOq3Jfjx2teR3o5I5hhj6h9tCxw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kRY9UbEDG6nTXq04KFID+lWxWkzScTYfxvU19N9FVto=;
 b=HRoSBNQvoGlXTGY75a+RSVc1PLRUGIOg28cNtWsvdce4dKE73VGgtyyiKVS7j65yLvrMnPSKfHhw5FEp5kO5Eh96rlNjArCXuTISMCItp0F/Bfk+iDTRc+o07q9dMV/9zJO80n3jNcVbuSGw7NwlxdT9yNfSwvxl0tUWZF5QK3N3edyIxbVgYG7RTLs0udhuVeyaLK71RhiPb4+KpIp1O+f+8+jBQMXgOKKdkg6r2a6V7rugdypKj8Oiacz7Amko0AIzNwFfTIFzo4ZuXloP6J38x/5SQywAxMLGHIwl3gPgR374RMgs5SP+Rv2gndgczRZSTomhlGVKNMHS7kP1TA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kRY9UbEDG6nTXq04KFID+lWxWkzScTYfxvU19N9FVto=;
 b=UWlSq4iwy+JC67HXwbBoznQuAf4YB75MooFFdX7DgJ1zhb4woxQ/5fSyubcXi483opEFbGxiZH5Gbd7gQzrR787RMaMw1qT1kbBCmnuQDyPReQHzg2CgqRX87ICfhM14e8Ew0ZcnQp1xhlX3YP5i1aa2WQu7czv083xl8OW036M=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <stefano.stabellini@amd.com>, <julien@xen.org>,
	<Volodymyr_Babchuk@epam.com>, <bertrand.marquis@arm.com>, <wei.chen@arm.com>,
	<penny.zheng@arm.com>, <henry.wang@arm.com>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>
Subject: [XEN v1 2/4] xen/arm32: head.S: Introduce enable_{boot,secondary}_cpu_mm()
Date: Mon, 11 Sep 2023 14:59:40 +0100
Message-ID: <20230911135942.791206-3-ayan.kumar.halder@amd.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
References: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF00003444:EE_|DS0PR12MB7745:EE_
X-MS-Office365-Filtering-Correlation-Id: 5f51f141-1b18-4824-fcef-08dbb2cf810b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VJiYg1RMJ5R92LU8zGcShPIcgq280RaOoltvaUXww0Ak2Xu0BAENkw0vBovfBcR4qUdEKyy5h34qDKYMKqCc1BdsuNk2olHB+eDO91oG545Oz9EPAdMEkV9CCEfOTOmMOxp1A1e0U7452flLMYQYmMCn7EoJMUpZQk+LoeIN08XA49dy3dQY5bYiqLCagH4irr06zHXrntufPSHaLUuCbIFQMtVcYWsfiGbuRRti39SBmbvFOB/rMF7ye+FyzeghkdAXZDkQlYjVQypyvI9NjnVdmRN4WHcanf0N4bWGZIzjdXNzb6ESpt9b9GYpq3pirSqIZE8sYwShluqzume6qKxhBJ67d/CO54jciP9OYr5FBdXysMX1rvg9IjPODF9MlrzKx97MlQBeQOnnk7qnKUai1Bte1brC5MxYZ/XnpxOkpP4sJw2bVNhelCcn9U+V9XuiSAI4KiwgBvMksAVH6hq0dL93OqLN+jeKMEn4FSg0GaT4tVzW0e/CLyZePYHMlf/z7uCFzxRzMF8AT8c7c30RhjAA4ZwsqyCpRi0zUvdUS+JB7ToDELodpu8oin/FwM0oz+WCOZhIAPmoQW7t4nKN+0A4JO+rM60+qzacpNxAvJjyeG26/r3/FERisWOByg1MNq2PiBacO9H6SOdbLq7gPk4y594vX4ExZlZFKCjjDSbu34iPi042zhZDqa66H/DGsyNJfou1WN++e7DO7SnOEiluWyJ4UmCoTC0+ScdHY2pA0jeXXaDRHL6Ou2Tge6Ds0l7aot7PGyB0XrabZ0Sr7Z8i1zcsBVBeZlx/YJ8=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(376002)(396003)(346002)(186009)(1800799009)(451199024)(82310400011)(40470700004)(36840700001)(46966006)(5660300002)(316002)(6916009)(54906003)(70206006)(36756003)(70586007)(8936002)(4326008)(8676002)(41300700001)(40460700003)(36860700001)(2906002)(336012)(1076003)(47076005)(426003)(26005)(40480700001)(82740400003)(6666004)(356005)(81166007)(478600001)(103116003)(2616005)(86362001)(966005)(83380400001)(21314003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 14:00:49.5296
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5f51f141-1b18-4824-fcef-08dbb2cf810b
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS2PEPF00003444.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7745

This is based on:-
"[PATCH v6 01/13] xen/arm64: head.S: Introduce enable_{boot,secondary}_cpu_mm()"
https://www.mail-archive.com/xen-devel@lists.xenproject.org/msg151918.html

This is being done for Arm32 as MPU support will be added for Arm32 as well.

Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
---
 xen/arch/arm/arm32/head.S | 90 +++++++++++++++++++++++++++++----------
 1 file changed, 67 insertions(+), 23 deletions(-)

diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
index 057c44a5a2..c0c425eac6 100644
--- a/xen/arch/arm/arm32/head.S
+++ b/xen/arch/arm/arm32/head.S
@@ -201,13 +201,10 @@ past_zImage:
 
         bl    check_cpu_mode
         bl    cpu_init
-        bl    create_page_tables
+        ldr   lr, =primary_switched
+        b     enable_boot_cpu_mm
 
-        /* Address in the runtime mapping to jump to after the MMU is enabled */
-        mov_w lr, primary_switched
-        b     enable_mmu
 primary_switched:
-        bl    setup_fixmap
 #ifdef CONFIG_EARLY_PRINTK
         /* Use a virtual address to access the UART. */
         mov_w r11, EARLY_UART_VIRTUAL_ADDRESS
@@ -249,27 +246,11 @@ GLOBAL(init_secondary)
 #endif
         bl    check_cpu_mode
         bl    cpu_init
-        bl    create_page_tables
 
-        /* Address in the runtime mapping to jump to after the MMU is enabled */
         mov_w lr, secondary_switched
-        b     enable_mmu
-secondary_switched:
-        /*
-         * Non-boot CPUs need to move on to the proper pagetables, which were
-         * setup in prepare_secondary_mm.
-         *
-         * XXX: This is not compliant with the Arm Arm.
-         */
-        mov_w r4, init_ttbr          /* VA of HTTBR value stashed by CPU 0 */
-        ldrd  r4, r5, [r4]           /* Actual value */
-        dsb
-        mcrr  CP64(r4, r5, HTTBR)
-        dsb
-        isb
-        flush_xen_tlb_local r0
-        pt_enforce_wxn r0
+        b     enable_secondary_cpu_mm
 
+secondary_switched:
 #ifdef CONFIG_EARLY_PRINTK
         /* Use a virtual address to access the UART. */
         mov_w r11, EARLY_UART_VIRTUAL_ADDRESS
@@ -692,6 +673,69 @@ ready_to_switch:
         mov   pc, lr
 ENDPROC(switch_to_runtime_mapping)
 
+/*
+ * Enable mm (turn on the data cache and the MMU) for secondary CPUs.
+ * The function will return to the virtual address provided in LR (e.g. the
+ * runtime mapping).
+ *
+ * Inputs:
+ *   lr : Virtual address to return to.
+ *
+ * Clobbers r0 - r6
+ */
+enable_secondary_cpu_mm:
+        mov   r6, lr
+        bl    create_page_tables
+
+        mov_w lr, secondary_cpu_mmu_on
+        b     enable_mmu
+secondary_cpu_mmu_on:
+        /*
+         * Non-boot CPUs need to move on to the proper pagetables, which were
+         * setup in prepare_secondary_mm.
+         *
+         * XXX: This is not compliant with the Arm Arm.
+         */
+        mov_w r4, init_ttbr          /* VA of HTTBR value stashed by CPU 0 */
+        ldrd  r4, r5, [r4]           /* Actual value */
+        dsb
+        mcrr  CP64(r4, r5, HTTBR)
+        dsb
+        isb
+        flush_xen_tlb_local r0
+        pt_enforce_wxn r0
+        mov   lr, r6
+
+        /* Return to the virtual address requested by the caller. */
+        mov   pc, lr
+ENDPROC(enable_secondary_cpu_mm)
+
+/*
+ * Enable mm (turn on the data cache and the MMU) for the boot CPU.
+ * The function will return to the virtual address provided in LR (e.g. the
+ * runtime mapping).
+ *
+ * Inputs:
+ *   lr : Virtual address to return to.
+ *
+ * Clobbers r0 - r6
+ */
+enable_boot_cpu_mm:
+        mov   r6, lr
+        bl    create_page_tables
+
+        /* Address in the runtime mapping to jump to after the MMU is enabled */
+        mov_w lr, boot_cpu_mmu_on
+        b     enable_mmu
+boot_cpu_mmu_on:
+        bl    setup_fixmap
+
+        mov   lr, r6
+
+        /* Return to the virtual address requested by the caller. */
+        mov   pc, lr
+ENDPROC(enable_boot_cpu_mm)
+
 /*
  * Remove the 1:1 map from the page-tables. It is not easy to keep track
  * where the 1:1 map was mapped, so we will look for the top-level entry
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:01:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:01:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599440.934885 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhTJ-0006Sj-NN; Mon, 11 Sep 2023 14:01:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599440.934885; Mon, 11 Sep 2023 14:01:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhTJ-0006Sb-KD; Mon, 11 Sep 2023 14:01:01 +0000
Received: by outflank-mailman (input) for mailman id 599440;
 Mon, 11 Sep 2023 14:01:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S94K=E3=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qfhTI-0005N8-RO
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:01:01 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20604.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::604])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a1de3a97-50ab-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 16:00:59 +0200 (CEST)
Received: from SN7P220CA0009.NAMP220.PROD.OUTLOOK.COM (2603:10b6:806:123::14)
 by CH2PR12MB4088.namprd12.prod.outlook.com (2603:10b6:610:a5::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 14:00:53 +0000
Received: from SN1PEPF0002529E.namprd05.prod.outlook.com
 (2603:10b6:806:123:cafe::5a) by SN7P220CA0009.outlook.office365.com
 (2603:10b6:806:123::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 14:00:53 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF0002529E.mail.protection.outlook.com (10.167.242.5) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.17 via Frontend Transport; Mon, 11 Sep 2023 14:00:52 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 09:00:51 -0500
Received: from xcbayankuma40.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via
 Frontend Transport; Mon, 11 Sep 2023 09:00:50 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a1de3a97-50ab-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GZ1S9V19bzvj0fPw92FyD2CDJvTMtVMVM4hOwqbZhybte25yN0vGOt92rBBt8LwJMZ1ZnjiIAScy13wqa/zqm5EzQro3dwYSUiM7GTiBvnb6Q7RosDtpnZP6h4MbKdDRA+etGH9Z70VJ3TnJrhr5KzdL5s0WCLmG/J/xG6x1XtkN+qeXwNMG0jlct7Y8lnBNs2nE0+o+cT0br9KTXxz6vYtQHfKyFVt/3bctuF9wYpRWIf/bJHQw6nyMF2YzOYMSqZ9UZ9ApKlyd9d3nYNnG9JfaIXtFwplc7oz2/K5pD9XqlgkceC1A/dy92zlnQkvu+hLzHo2ToOBbTytRuZZ0lg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=XAH1WiIeVJj3IAVh1Dsv0pG9StcDrOe4Q2KhJNanpNo=;
 b=MTN2i9luCJ+ilMPM8zl7iAFwlJYpRJ9n8YRKpmZoz0vs3sDZR+KgSMvlXx3fnv0JlNpbqHCPKomNZ6hCojhTioFYyWAqCQ+FSC4UBqenzEW9Ky12TsXyQjhaw/nupJjf6oG8Tl9RB9RoOOa8/PVvA+I2dWMqNUcGY+5/SbZU8w8ILptF4mcGOyuX1PYGqh193lr3oJhJJ1ETvWm1B7O/ZXdXQSi+iwfzelcLZ97yhzEutkXvZiurGbobsWUBb5xXnXxs8y1riBBEZYgoxzVm+ap7ohU93kSwunLIMgZDqmJWinp6rjUXxsIg+PIQIA0gM2u6MQtLSY4MZ8F1iPGcYw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XAH1WiIeVJj3IAVh1Dsv0pG9StcDrOe4Q2KhJNanpNo=;
 b=I/m/fTiSDBWzxRjtf40IhPL6nKKvWyywqfxKqBeYbomBoxwVtNmsyqtOVtYiPj2V795eu/MzG+9/SpMBoQY87SoUkx8g4wQA40z3FW7UqeJSy96Muw6DXMKvjxEsSIxyhGccoXrmvCBIqdYhyqDrncThv2JPfOZ57lWxg2V4KQU=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <stefano.stabellini@amd.com>, <julien@xen.org>,
	<Volodymyr_Babchuk@epam.com>, <bertrand.marquis@arm.com>, <wei.chen@arm.com>,
	<penny.zheng@arm.com>, <henry.wang@arm.com>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>
Subject: [XEN v1 3/4] xen/arm32: Split and move MMU-specific head.S to mmu/head.S
Date: Mon, 11 Sep 2023 14:59:41 +0100
Message-ID: <20230911135942.791206-4-ayan.kumar.halder@amd.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
References: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002529E:EE_|CH2PR12MB4088:EE_
X-MS-Office365-Filtering-Correlation-Id: 5c89a23e-ef69-47fd-af73-08dbb2cf82c1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Crbt/7hd/h5N5lvHwAsaJb+evE1TelrcqNFsbfifa3Pl6fTBPyBH352OnGaSq35DE7bajK66IrtANIpJn3X2UD2kuE8da0uhoX+Y92P0wTVJdPeNUFL0Z8MRSQPxPI16EfEXRSZSQjoQ7mxYcY5iGrfGX0uZsDu07ZMP3TrNKH6vFBmLtjxdY98q6+1lFCQXDopOijjtA8PXn2rP/fKvzZK3NUOdRUiWCiilqAHDx3eD855AjC26DCyJY/HRk5d5IKjvHX5cFw0tgdnugIlSpzS0CBe4RBVLHrAg6urhBSiZ0YpB7ABRZuCnvvpk6ZaibckG0M3TiNArHEeVxJE/qW6x1wt9vp+VBz7uNInbP0gFGeKps9slIeu9GR3pvn52Uwsm+yWbSBEfpoft7sLDyfN7EVWAidB5VoGhjzofyt5Dsa6dDWCzuqui9OapRQXuDu6qCFK/fPa8nhhwi1RIKbQDrqJ2D3R/8Me0/Gu8gKxFhR0sWFtmngg390Qol/Yd5mqgXbm+GgJZmzUCpDxN1nriVpmDU+3irZp4CF0x7IIWu6mtAkZNf0HGt5Y9TIiC1gVHLdsZZF1b9HPGyq8jO0gDHmdo/QI4pINUmSOE58P2PcetZ3eDxhsmVwNeC/CpZ1WSs0BmHE176PG3Jc1KmdCHt/nN/DHxaMyWh3i6iSJk6tN8iHgQaYZFnGSEZyHDpnTt67cerbsk7nV+WGlV+cKO7tCKlz2ZyiShuPSyBJtLEop7iWJR62y6uoQ7EU7rvS/nh1hrClvveHT5pTEQJQ==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(346002)(376002)(396003)(186009)(451199024)(82310400011)(1800799009)(40470700004)(36840700001)(46966006)(5660300002)(70206006)(41300700001)(6916009)(4326008)(8676002)(8936002)(316002)(54906003)(70586007)(40460700003)(47076005)(81166007)(966005)(478600001)(36756003)(40480700001)(6666004)(103116003)(26005)(30864003)(1076003)(2906002)(336012)(426003)(83380400001)(2616005)(86362001)(82740400003)(356005)(36860700001)(21314003)(36900700001)(579004);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 14:00:52.3981
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5c89a23e-ef69-47fd-af73-08dbb2cf82c1
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002529E.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR12MB4088

This is based on
"[PATCH v6 03/13] xen/arm64: Split and move MMU-specific head.S to mmu/head.S"

https://www.mail-archive.com/xen-devel@lists.xenproject.org/msg151920.html

Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
---
 xen/arch/arm/arm32/head.S               | 603 +-----------------------
 xen/arch/arm/arm32/mmu/Makefile         |   1 +
 xen/arch/arm/arm32/mmu/head.S           | 556 ++++++++++++++++++++++
 xen/arch/arm/include/asm/arm32/macros.h |  62 +++
 4 files changed, 620 insertions(+), 602 deletions(-)
 create mode 100644 xen/arch/arm/arm32/mmu/head.S

diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
index c0c425eac6..77095152b9 100644
--- a/xen/arch/arm/arm32/head.S
+++ b/xen/arch/arm/arm32/head.S
@@ -22,86 +22,10 @@
 
 #define ZIMAGE_MAGIC_NUMBER 0x016f2818
 
-#define PT_PT     0xf7f /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=1 P=1 */
-#define PT_MEM    0xf7d /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=0 P=1 */
-#define PT_MEM_L3 0xf7f /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=1 P=1 */
-#define PT_DEV    0xe71 /* nG=1 AF=1 SH=10 AP=01 NS=1 ATTR=100 T=0 P=1 */
-#define PT_DEV_L3 0xe73 /* nG=1 AF=1 SH=10 AP=01 NS=1 ATTR=100 T=1 P=1 */
-
-#define PT_UPPER(x) (PT_##x & 0xf00)
-#define PT_LOWER(x) (PT_##x & 0x0ff)
-
-/* Convenience defines to get slot used by Xen mapping. */
-#define XEN_FIRST_SLOT      first_table_offset(XEN_VIRT_START)
-#define XEN_SECOND_SLOT     second_table_offset(XEN_VIRT_START)
-
-/* Offset between the early boot xen mapping and the runtime xen mapping */
-#define XEN_TEMPORARY_OFFSET      (TEMPORARY_XEN_VIRT_START - XEN_VIRT_START)
-
 #if defined(CONFIG_EARLY_PRINTK) && defined(CONFIG_EARLY_PRINTK_INC)
 #include CONFIG_EARLY_PRINTK_INC
 #endif
 
-/*
- * Move an immediate constant into a 32-bit register using movw/movt
- * instructions.
- */
-.macro mov_w reg, word
-        movw  \reg, #:lower16:\word
-        movt  \reg, #:upper16:\word
-.endm
-
-/*
- * Pseudo-op for PC relative adr <reg>, <symbol> where <symbol> is
- * within the range +/- 4GB of the PC.
- *
- * @dst: destination register
- * @sym: name of the symbol
- */
-.macro adr_l, dst, sym
-        mov_w \dst, \sym - .Lpc\@
-        .set  .Lpc\@, .+ 8          /* PC bias */
-        add   \dst, \dst, pc
-.endm
-
-.macro load_paddr rb, sym
-        mov_w \rb, \sym
-        add   \rb, \rb, r10
-.endm
-
-/*
- * Flush local TLBs
- *
- * @tmp: Scratch register
- *
- * See asm/arm32/flushtlb.h for the explanation of the sequence.
- */
-.macro flush_xen_tlb_local tmp
-        dsb   nshst
-        mcr   CP32(\tmp, TLBIALLH)
-        dsb   nsh
-        isb
-.endm
-
-/*
- * Enforce Xen page-tables do not contain mapping that are both
- * Writable and eXecutables.
- *
- * This should be called on each secondary CPU.
- */
-.macro pt_enforce_wxn tmp
-        mrc   CP32(\tmp, HSCTLR)
-        orr   \tmp, \tmp, #SCTLR_Axx_ELx_WXN
-        dsb
-        mcr   CP32(\tmp, HSCTLR)
-        /*
-         * The TLBs may cache SCTLR_EL2.WXN. So ensure it is synchronized
-         * before flushing the TLBs.
-         */
-        isb
-        flush_xen_tlb_local \tmp
-.endm
-
 /*
  * Common register usage in this file:
  *   r0  -
@@ -121,38 +45,6 @@
  *   r14 - LR
  *   r15 - PC
  */
-#ifdef CONFIG_EARLY_PRINTK
-/*
- * Macro to print a string to the UART, if there is one.
- *
- * Clobbers r0 - r3
- */
-#define PRINT(_s)           \
-        mov   r3, lr       ;\
-        adr_l r0, 98f      ;\
-        bl    puts         ;\
-        mov   lr, r3       ;\
-        RODATA_STR(98, _s)
-
-/*
- * Macro to print the value of register \rb
- *
- * Clobbers r0 - r4
- */
-.macro print_reg rb
-        mov   r0, \rb
-        mov   r4, lr
-        bl    putn
-        mov   lr, r4
-.endm
-
-#else /* CONFIG_EARLY_PRINTK */
-#define PRINT(s)
-
-.macro print_reg rb
-.endm
-
-#endif /* !CONFIG_EARLY_PRINTK */
 
         .section .text.header, "ax", %progbits
         .arm
@@ -354,467 +246,6 @@ cpu_init_done:
         mov   pc, r5                        /* Return address is in r5 */
 ENDPROC(cpu_init)
 
-/*
- * Macro to find the slot number at a given page-table level
- *
- * slot:     slot computed
- * virt:     virtual address
- * lvl:      page-table level
- *
- * Note that ubxf is unpredictable when the end bit is above 32-bit. So we
- * can't use it for first level offset.
- */
-.macro get_table_slot, slot, virt, lvl
-    .if \lvl == 1
-        lsr   \slot, \virt, #XEN_PT_LEVEL_SHIFT(\lvl)
-    .else
-        ubfx  \slot, \virt, #XEN_PT_LEVEL_SHIFT(\lvl), #XEN_PT_LPAE_SHIFT
-    .endif
-.endm
-
-/*
- * Macro to create a page table entry in \ptbl to \tbl (physical
- * address)
- *
- * ptbl:    table symbol where the entry will be created
- * tbl:     physical address of the table to point to
- * virt:    virtual address
- * lvl:     page-table level
- *
- * Preserves \virt
- * Clobbers \tbl, r1 - r3
- *
- * Note that \tbl and \virt should be in a register other than r1 - r3
- */
-.macro create_table_entry_from_paddr, ptbl, tbl, virt, lvl
-        get_table_slot r1, \virt, \lvl  /* r1 := slot in \tbl */
-        lsl   r1, r1, #3                /* r1 := slot offset in \tbl */
-
-        movw  r2, #PT_PT             /* r2:r3 := right for linear PT */
-        orr   r2, r2, \tbl           /*           + \tbl paddr */
-        mov   r3, #0
-
-        adr_l \tbl, \ptbl            /* \tbl := (v,p)addr of \ptbl */
-
-        strd  r2, r3, [\tbl, r1]
-.endm
-
-
-/*
- * Macro to create a page table entry in \ptbl to \tbl (symbol)
- *
- * ptbl:    table symbol where the entry will be created
- * tbl:     table symbol to point to
- * virt:    virtual address
- * lvl:     page-table level
- *
- * Preserves \virt
- * Clobbers r1 - r4
- *
- * Also use r10 for the phys offset.
- *
- * Note that \virt should be in a register other than r1 - r4
- */
-.macro create_table_entry, ptbl, tbl, virt, lvl
-        load_paddr r4, \tbl
-        create_table_entry_from_paddr \ptbl, r4, \virt, \lvl
- .endm
-
-/*
- * Macro to create a mapping entry in \tbl to \paddr. Only mapping in 3rd
- * level table (i.e page granularity) is supported.
- *
- * ptbl:     table symbol where the entry will be created
- * virt:    virtual address
- * phys:    physical address
- * type:    mapping type. If not specified it will be normal memory (PT_MEM_L3)
- *
- * Preserves \virt, \phys
- * Clobbers r1 - r4
- *
- * Note that \virt and \paddr should be in other registers than r1 - r4
- * and be distinct.
- */
-.macro create_mapping_entry, ptbl, virt, phys, type=PT_MEM_L3
-        mov_w r2, XEN_PT_LPAE_ENTRY_MASK
-        lsr   r1, \virt, #THIRD_SHIFT
-        and   r1, r1, r2             /* r1 := slot in \tlb */
-        lsl   r1, r1, #3             /* r1 := slot offset in \tlb */
-
-        lsr   r4, \phys, #THIRD_SHIFT
-        lsl   r4, r4, #THIRD_SHIFT   /* r4 := PAGE_ALIGNED(phys) */
-
-        movw  r2, #\type             /* r2:r3 := right for section PT */
-        orr   r2, r2, r4             /*          + PAGE_ALIGNED(phys) */
-        mov   r3, #0
-
-        adr_l r4, \ptbl
-
-        strd  r2, r3, [r4, r1]
-.endm
-
-/*
- * Rebuild the boot pagetable's first-level entries. The structure
- * is described in mm.c.
- *
- * After the CPU enables paging it will add the fixmap mapping
- * to these page tables, however this may clash with the 1:1
- * mapping. So each CPU must rebuild the page tables here with
- * the 1:1 in place.
- *
- * Inputs:
- *   r9 : paddr(start)
- *   r10: phys offset
- *
- * Output:
- *   r12: Was a temporary mapping created?
- *
- * Clobbers r0 - r5
- */
-create_page_tables:
-        /* Prepare the page-tables for mapping Xen */
-        mov_w r0, XEN_VIRT_START
-
-        /*
-         * We need to use a stash register because
-         * create_table_entry_paddr() will clobber the register storing
-         * the physical address of the table to point to.
-         */
-        load_paddr r5, boot_third
-        mov_w r4, XEN_VIRT_START
-.rept XEN_NR_ENTRIES(2)
-        mov   r0, r5                        /* r0 := paddr(l3 table) */
-        create_table_entry_from_paddr boot_second, r0, r4, 2
-        add   r4, r4, #XEN_PT_LEVEL_SIZE(2) /* r4 := Next vaddr */
-        add   r5, r5, #PAGE_SIZE            /* r5 := Next table */
-.endr
-
-        /*
-         * Find the size of Xen in pages and multiply by the size of a
-         * PTE. This will then be compared in the mapping loop below.
-         *
-         * Note the multiplication is just to avoid using an extra
-         * register/instruction per iteration.
-         */
-        mov_w r0, _start            /* r0 := vaddr(_start) */
-        mov_w r1, _end              /* r1 := vaddr(_end) */
-        sub   r0, r1, r0            /* r0 := effective size of Xen */
-        lsr   r0, r0, #PAGE_SHIFT   /* r0 := Number of pages for Xen */
-        lsl   r0, r0, #3            /* r0 := Number of pages * PTE size */
-
-        /* Setup boot_third: */
-        adr_l r4, boot_third
-
-        lsr   r2, r9, #THIRD_SHIFT  /* Base address for 4K mapping */
-        lsl   r2, r2, #THIRD_SHIFT
-        orr   r2, r2, #PT_UPPER(MEM_L3) /* r2:r3 := map */
-        orr   r2, r2, #PT_LOWER(MEM_L3)
-        mov   r3, #0x0
-
-        /* ... map of vaddr(start) in boot_third */
-        mov   r1, #0
-1:      strd  r2, r3, [r4, r1]       /* Map vaddr(start) */
-        add   r2, r2, #PAGE_SIZE     /* Next page */
-        add   r1, r1, #8             /* Next slot */
-        cmp   r1, r0                 /* Loop until we map all of Xen */
-        blo   1b
-
-        /*
-         * Setup the 1:1 mapping so we can turn the MMU on. Note that
-         * only the first page of Xen will be part of the 1:1 mapping.
-         */
-        create_table_entry boot_pgtable, boot_second_id, r9, 1
-        create_table_entry boot_second_id, boot_third_id, r9, 2
-        create_mapping_entry boot_third_id, r9, r9
-
-        /*
-         * Find the first slot used. If the slot is not the same
-         * as TEMPORARY_AREA_FIRST_SLOT, then we will want to switch
-         * to the temporary mapping before jumping to the runtime
-         * virtual mapping.
-         */
-        get_table_slot r1, r9, 1     /* r1 := first slot */
-        cmp   r1, #TEMPORARY_AREA_FIRST_SLOT
-        bne   use_temporary_mapping
-
-        mov_w r0, XEN_VIRT_START
-        create_table_entry boot_pgtable, boot_second, r0, 1
-        mov   r12, #0                /* r12 := temporary mapping not created */
-        mov   pc, lr
-
-use_temporary_mapping:
-        /*
-         * The identity mapping is not using the first slot
-         * TEMPORARY_AREA_FIRST_SLOT. Create a temporary mapping.
-         * See switch_to_runtime_mapping for more details.
-         */
-        PRINT("- Create temporary mapping -\r\n")
-
-        /* Map boot_second (cover Xen mappings) to the temporary 1st slot */
-        mov_w r0, TEMPORARY_XEN_VIRT_START
-        create_table_entry boot_pgtable, boot_second, r0, 1
-
-        mov   r12, #1                /* r12 := temporary mapping created */
-        mov   pc, lr
-ENDPROC(create_page_tables)
-
-/*
- * Turn on the Data Cache and the MMU. The function will return
- * to the virtual address provided in LR (e.g. the runtime mapping).
- *
- * Inputs:
- *   r9 : paddr(start)
- *  r12 : Was the temporary mapping created?
- *   lr : Virtual address to return to
- *
- * Clobbers r0 - r5
- */
-enable_mmu:
-        PRINT("- Turning on paging -\r\n")
-
-        /*
-         * The state of the TLBs is unknown before turning on the MMU.
-         * Flush them to avoid stale one.
-         */
-        flush_xen_tlb_local r0
-
-        /* Write Xen's PT's paddr into the HTTBR */
-        load_paddr r0, boot_pgtable
-        mov   r1, #0                 /* r0:r1 is paddr (boot_pagetable) */
-        mcrr  CP64(r0, r1, HTTBR)
-        isb
-
-        mrc   CP32(r0, HSCTLR)
-        /* Enable MMU and D-cache */
-        orr   r0, r0, #(SCTLR_Axx_ELx_M|SCTLR_Axx_ELx_C)
-        dsb                          /* Flush PTE writes and finish reads */
-        mcr   CP32(r0, HSCTLR)       /* now paging is enabled */
-        isb                          /* Now, flush the icache */
-
-        /*
-         * The MMU is turned on and we are in the 1:1 mapping. Switch
-         * to the runtime mapping.
-         */
-        mov   r5, lr                /* Save LR before overwritting it */
-        mov_w lr, 1f                /* Virtual address in the runtime mapping */
-        b     switch_to_runtime_mapping
-1:
-        mov   lr, r5                /* Restore LR */
-        /*
-         * At this point, either the 1:1 map or the temporary mapping
-         * will be present. The former may clash with other parts of the
-         * Xen virtual memory layout. As both of them are not used
-         * anymore, remove them completely to avoid having to worry
-         * about replacing existing mapping afterwards.
-         *
-         * On return this will jump to the virtual address requested by
-         * the caller.
-         */
-        teq   r12, #0
-        beq   remove_identity_mapping
-        b     remove_temporary_mapping
-ENDPROC(enable_mmu)
-
-/*
- * Switch to the runtime mapping. The logic depends on whether the
- * runtime virtual region is clashing with the physical address
- *
- *  - If it is not clashing, we can directly jump to the address in
- *    the runtime mapping.
- *  - If it is clashing, create_page_tables() would have mapped Xen to
- *    a temporary virtual address. We need to switch to the temporary
- *    mapping so we can remove the identity mapping and map Xen at the
- *    correct position.
- *
- * Inputs
- *    r9: paddr(start)
- *   r12: Was a temporary mapping created?
- *    lr: Address in the runtime mapping to jump to
- *
- * Clobbers r0 - r4
- */
-switch_to_runtime_mapping:
-        /*
-         * Jump to the runtime mapping if the virt and phys are not
-         * clashing
-         */
-        teq   r12, #0
-        beq   ready_to_switch
-
-        /* We are still in the 1:1 mapping. Jump to the temporary Virtual address. */
-        mov_w r0, 1f
-        add   r0, r0, #XEN_TEMPORARY_OFFSET /* r0 := address in temporary mapping */
-        mov   pc, r0
-
-1:
-        /* Remove boot_second_id */
-        mov   r2, #0
-        mov   r3, #0
-        adr_l r0, boot_pgtable
-        get_table_slot r1, r9, 1            /* r1 := first slot */
-        lsl   r1, r1, #3                    /* r1 := first slot offset */
-        strd  r2, r3, [r0, r1]
-
-        flush_xen_tlb_local r0
-
-        /* Map boot_second into boot_pgtable */
-        mov_w r0, XEN_VIRT_START
-        create_table_entry boot_pgtable, boot_second, r0, 1
-
-        /* Ensure any page table updates are visible before continuing */
-        dsb   nsh
-        /*
-         * The function will return on the runtime mapping. So we want
-         * to prevent instruction fetch before the dsb completes.
-         */
-        isb
-
-ready_to_switch:
-        mov   pc, lr
-ENDPROC(switch_to_runtime_mapping)
-
-/*
- * Enable mm (turn on the data cache and the MMU) for secondary CPUs.
- * The function will return to the virtual address provided in LR (e.g. the
- * runtime mapping).
- *
- * Inputs:
- *   lr : Virtual address to return to.
- *
- * Clobbers r0 - r6
- */
-enable_secondary_cpu_mm:
-        mov   r6, lr
-        bl    create_page_tables
-
-        mov_w lr, secondary_cpu_mmu_on
-        b     enable_mmu
-secondary_cpu_mmu_on:
-        /*
-         * Non-boot CPUs need to move on to the proper pagetables, which were
-         * setup in prepare_secondary_mm.
-         *
-         * XXX: This is not compliant with the Arm Arm.
-         */
-        mov_w r4, init_ttbr          /* VA of HTTBR value stashed by CPU 0 */
-        ldrd  r4, r5, [r4]           /* Actual value */
-        dsb
-        mcrr  CP64(r4, r5, HTTBR)
-        dsb
-        isb
-        flush_xen_tlb_local r0
-        pt_enforce_wxn r0
-        mov   lr, r6
-
-        /* Return to the virtual address requested by the caller. */
-        mov   pc, lr
-ENDPROC(enable_secondary_cpu_mm)
-
-/*
- * Enable mm (turn on the data cache and the MMU) for the boot CPU.
- * The function will return to the virtual address provided in LR (e.g. the
- * runtime mapping).
- *
- * Inputs:
- *   lr : Virtual address to return to.
- *
- * Clobbers r0 - r6
- */
-enable_boot_cpu_mm:
-        mov   r6, lr
-        bl    create_page_tables
-
-        /* Address in the runtime mapping to jump to after the MMU is enabled */
-        mov_w lr, boot_cpu_mmu_on
-        b     enable_mmu
-boot_cpu_mmu_on:
-        bl    setup_fixmap
-
-        mov   lr, r6
-
-        /* Return to the virtual address requested by the caller. */
-        mov   pc, lr
-ENDPROC(enable_boot_cpu_mm)
-
-/*
- * Remove the 1:1 map from the page-tables. It is not easy to keep track
- * where the 1:1 map was mapped, so we will look for the top-level entry
- * exclusive to the 1:1 map and remove it.
- *
- * Inputs:
- *   r9 : paddr(start)
- *
- * Clobbers r0 - r3
- */
-remove_identity_mapping:
-        /* r2:r3 := invalid page-table entry */
-        mov   r2, #0x0
-        mov   r3, #0x0
-
-        /* Find the first slot used and remove it */
-        get_table_slot r1, r9, 1     /* r1 := first slot */
-        mov_w r0, boot_pgtable       /* r0 := root table */
-        lsl   r1, r1, #3             /* r1 := Slot offset */
-        strd  r2, r3, [r0, r1]
-
-        flush_xen_tlb_local r0
-        mov   pc, lr
-ENDPROC(remove_identity_mapping)
-
-/*
- * Remove the temporary mapping of Xen starting at TEMPORARY_XEN_VIRT_START.
- *
- * Clobbers r0 - r3
- */
-remove_temporary_mapping:
-        /* r2:r3 := invalid page-table entry */
-        mov   r2, #0
-        mov   r3, #0
-
-        adr_l r0, boot_pgtable
-        mov_w r1, TEMPORARY_XEN_VIRT_START
-        get_table_slot r1, r1, 1     /* r1 := first slot */
-        lsl   r1, r1, #3             /* r1 := first slot offset */
-        strd  r2, r3, [r0, r1]
-
-        flush_xen_tlb_local r0
-
-        mov  pc, lr
-ENDPROC(remove_temporary_mapping)
-
-/*
- * Map the UART in the fixmap (when earlyprintk is used) and hook the
- * fixmap table in the page tables.
- *
- * The fixmap cannot be mapped in create_page_tables because it may
- * clash with the 1:1 mapping.
- *
- * Inputs:
- *   r10: Physical offset
- *   r11: Early UART base physical address
- *
- * Clobbers r0 - r4
- */
-setup_fixmap:
-#if defined(CONFIG_EARLY_PRINTK)
-        /* Add UART to the fixmap table */
-        mov_w r0, EARLY_UART_VIRTUAL_ADDRESS
-        create_mapping_entry xen_fixmap, r0, r11, type=PT_DEV_L3
-#endif
-        /* Map fixmap into boot_second */
-        mov_w r0, FIXMAP_ADDR(0)
-        create_table_entry boot_second, xen_fixmap, r0, 2
-        /* Ensure any page table updates made above have occurred. */
-        dsb   nshst
-        /*
-         * The fixmap area will be used soon after. So ensure no hardware
-         * translation happens before the dsb completes.
-         */
-        isb
-
-        mov   pc, lr
-ENDPROC(setup_fixmap)
-
 /*
  * Setup the initial stack and jump to the C world
  *
@@ -842,38 +273,6 @@ fail:   PRINT("- Boot failed -\r\n")
         b     1b
 ENDPROC(fail)
 
-/*
- * Switch TTBR
- * r1:r0       ttbr
- *
- * TODO: This code does not comply with break-before-make.
- */
-ENTRY(switch_ttbr)
-        dsb                            /* Ensure the flushes happen before
-                                        * continuing */
-        isb                            /* Ensure synchronization with previous
-                                        * changes to text */
-        mcr   CP32(r0, TLBIALLH)       /* Flush hypervisor TLB */
-        mcr   CP32(r0, ICIALLU)        /* Flush I-cache */
-        mcr   CP32(r0, BPIALL)         /* Flush branch predictor */
-        dsb                            /* Ensure completion of TLB+BP flush */
-        isb
-
-        mcrr  CP64(r0, r1, HTTBR)
-
-        dsb                            /* ensure memory accesses do not cross
-                                        * over the TTBR0 write */
-        isb                            /* Ensure synchronization with previous
-                                        * changes to text */
-        mcr   CP32(r0, TLBIALLH)       /* Flush hypervisor TLB */
-        mcr   CP32(r0, ICIALLU)        /* Flush I-cache */
-        mcr   CP32(r0, BPIALL)         /* Flush branch predictor */
-        dsb                            /* Ensure completion of TLB+BP flush */
-        isb
-
-        mov pc, lr
-ENDPROC(switch_ttbr)
-
 #ifdef CONFIG_EARLY_PRINTK
 /*
  * Initialize the UART. Should only be called on the boot CPU.
@@ -898,7 +297,7 @@ ENDPROC(init_uart)
  * r11: Early UART base address
  * Clobbers r0-r1
  */
-puts:
+ENTRY(puts)
         early_uart_ready r11, r1
         ldrb  r1, [r0], #1           /* Load next char */
         teq   r1, #0                 /* Exit on nul */
diff --git a/xen/arch/arm/arm32/mmu/Makefile b/xen/arch/arm/arm32/mmu/Makefile
index b18cec4836..336805c636 100644
--- a/xen/arch/arm/arm32/mmu/Makefile
+++ b/xen/arch/arm/arm32/mmu/Makefile
@@ -1 +1,2 @@
 obj-y += mm.o
+obj-y += head.o
diff --git a/xen/arch/arm/arm32/mmu/head.S b/xen/arch/arm/arm32/mmu/head.S
new file mode 100644
index 0000000000..3d2fa2932d
--- /dev/null
+++ b/xen/arch/arm/arm32/mmu/head.S
@@ -0,0 +1,556 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * xen/arch/arm/arm32/mmu/head.S
+ *
+ * Arm32 MMU specific start-of-day code.
+ */
+
+#include <asm/page.h>
+#include <asm/early_printk.h>
+
+#define PT_PT     0xf7f /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=1 P=1 */
+#define PT_MEM    0xf7d /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=0 P=1 */
+#define PT_MEM_L3 0xf7f /* nG=1 AF=1 SH=11 AP=01 NS=1 ATTR=111 T=1 P=1 */
+#define PT_DEV    0xe71 /* nG=1 AF=1 SH=10 AP=01 NS=1 ATTR=100 T=0 P=1 */
+#define PT_DEV_L3 0xe73 /* nG=1 AF=1 SH=10 AP=01 NS=1 ATTR=100 T=1 P=1 */
+
+#define PT_UPPER(x) (PT_##x & 0xf00)
+#define PT_LOWER(x) (PT_##x & 0x0ff)
+
+/* Convenience defines to get slot used by Xen mapping. */
+#define XEN_FIRST_SLOT      first_table_offset(XEN_VIRT_START)
+#define XEN_SECOND_SLOT     second_table_offset(XEN_VIRT_START)
+
+/*
+ * Flush local TLBs
+ *
+ * @tmp: Scratch register
+ *
+ * See asm/arm32/flushtlb.h for the explanation of the sequence.
+ */
+.macro flush_xen_tlb_local tmp
+        dsb   nshst
+        mcr   CP32(\tmp, TLBIALLH)
+        dsb   nsh
+        isb
+.endm
+
+/*
+ * Enforce Xen page-tables do not contain mapping that are both
+ * Writable and eXecutables.
+ *
+ * This should be called on each secondary CPU.
+ */
+.macro pt_enforce_wxn tmp
+        mrc   CP32(\tmp, HSCTLR)
+        orr   \tmp, \tmp, #SCTLR_Axx_ELx_WXN
+        dsb
+        mcr   CP32(\tmp, HSCTLR)
+        /*
+         * The TLBs may cache SCTLR_EL2.WXN. So ensure it is synchronized
+         * before flushing the TLBs.
+         */
+        isb
+        flush_xen_tlb_local \tmp
+.endm
+
+/*
+ * Macro to find the slot number at a given page-table level
+ *
+ * slot:     slot computed
+ * virt:     virtual address
+ * lvl:      page-table level
+ *
+ * Note that ubxf is unpredictable when the end bit is above 32-bit. So we
+ * can't use it for first level offset.
+ */
+.macro get_table_slot, slot, virt, lvl
+    .if \lvl == 1
+        lsr   \slot, \virt, #XEN_PT_LEVEL_SHIFT(\lvl)
+    .else
+        ubfx  \slot, \virt, #XEN_PT_LEVEL_SHIFT(\lvl), #XEN_PT_LPAE_SHIFT
+    .endif
+.endm
+
+/*
+ * Macro to create a page table entry in \ptbl to \tbl (physical
+ * address)
+ *
+ * ptbl:    table symbol where the entry will be created
+ * tbl:     physical address of the table to point to
+ * virt:    virtual address
+ * lvl:     page-table level
+ *
+ * Preserves \virt
+ * Clobbers \tbl, r1 - r3
+ *
+ * Note that \tbl and \virt should be in a register other than r1 - r3
+ */
+.macro create_table_entry_from_paddr, ptbl, tbl, virt, lvl
+        get_table_slot r1, \virt, \lvl  /* r1 := slot in \tbl */
+        lsl   r1, r1, #3                /* r1 := slot offset in \tbl */
+
+        movw  r2, #PT_PT             /* r2:r3 := right for linear PT */
+        orr   r2, r2, \tbl           /*           + \tbl paddr */
+        mov   r3, #0
+
+        adr_l \tbl, \ptbl            /* \tbl := (v,p)addr of \ptbl */
+
+        strd  r2, r3, [\tbl, r1]
+.endm
+
+
+/*
+ * Macro to create a page table entry in \ptbl to \tbl (symbol)
+ *
+ * ptbl:    table symbol where the entry will be created
+ * tbl:     table symbol to point to
+ * virt:    virtual address
+ * lvl:     page-table level
+ *
+ * Preserves \virt
+ * Clobbers r1 - r4
+ *
+ * Also use r10 for the phys offset.
+ *
+ * Note that \virt should be in a register other than r1 - r4
+ */
+.macro create_table_entry, ptbl, tbl, virt, lvl
+        load_paddr r4, \tbl
+        create_table_entry_from_paddr \ptbl, r4, \virt, \lvl
+ .endm
+
+/*
+ * Macro to create a mapping entry in \tbl to \paddr. Only mapping in 3rd
+ * level table (i.e page granularity) is supported.
+ *
+ * ptbl:     table symbol where the entry will be created
+ * virt:    virtual address
+ * phys:    physical address
+ * type:    mapping type. If not specified it will be normal memory (PT_MEM_L3)
+ *
+ * Preserves \virt, \phys
+ * Clobbers r1 - r4
+ *
+ * Note that \virt and \paddr should be in other registers than r1 - r4
+ * and be distinct.
+ */
+.macro create_mapping_entry, ptbl, virt, phys, type=PT_MEM_L3
+        mov_w r2, XEN_PT_LPAE_ENTRY_MASK
+        lsr   r1, \virt, #THIRD_SHIFT
+        and   r1, r1, r2             /* r1 := slot in \tlb */
+        lsl   r1, r1, #3             /* r1 := slot offset in \tlb */
+
+        lsr   r4, \phys, #THIRD_SHIFT
+        lsl   r4, r4, #THIRD_SHIFT   /* r4 := PAGE_ALIGNED(phys) */
+
+        movw  r2, #\type             /* r2:r3 := right for section PT */
+        orr   r2, r2, r4             /*          + PAGE_ALIGNED(phys) */
+        mov   r3, #0
+
+        adr_l r4, \ptbl
+
+        strd  r2, r3, [r4, r1]
+.endm
+
+.section .text.idmap, "ax", %progbits
+
+/*
+ * Rebuild the boot pagetable's first-level entries. The structure
+ * is described in mm.c.
+ *
+ * After the CPU enables paging it will add the fixmap mapping
+ * to these page tables, however this may clash with the 1:1
+ * mapping. So each CPU must rebuild the page tables here with
+ * the 1:1 in place.
+ *
+ * Inputs:
+ *   r9 : paddr(start)
+ *   r10: phys offset
+ *
+ * Output:
+ *   r12: Was a temporary mapping created?
+ *
+ * Clobbers r0 - r5
+ */
+create_page_tables:
+        /* Prepare the page-tables for mapping Xen */
+        mov_w r0, XEN_VIRT_START
+
+        /*
+         * We need to use a stash register because
+         * create_table_entry_paddr() will clobber the register storing
+         * the physical address of the table to point to.
+         */
+        load_paddr r5, boot_third
+        mov_w r4, XEN_VIRT_START
+.rept XEN_NR_ENTRIES(2)
+        mov   r0, r5                        /* r0 := paddr(l3 table) */
+        create_table_entry_from_paddr boot_second, r0, r4, 2
+        add   r4, r4, #XEN_PT_LEVEL_SIZE(2) /* r4 := Next vaddr */
+        add   r5, r5, #PAGE_SIZE            /* r5 := Next table */
+.endr
+
+        /*
+         * Find the size of Xen in pages and multiply by the size of a
+         * PTE. This will then be compared in the mapping loop below.
+         *
+         * Note the multiplication is just to avoid using an extra
+         * register/instruction per iteration.
+         */
+        mov_w r0, _start            /* r0 := vaddr(_start) */
+        mov_w r1, _end              /* r1 := vaddr(_end) */
+        sub   r0, r1, r0            /* r0 := effective size of Xen */
+        lsr   r0, r0, #PAGE_SHIFT   /* r0 := Number of pages for Xen */
+        lsl   r0, r0, #3            /* r0 := Number of pages * PTE size */
+
+        /* Setup boot_third: */
+        adr_l r4, boot_third
+
+        lsr   r2, r9, #THIRD_SHIFT  /* Base address for 4K mapping */
+        lsl   r2, r2, #THIRD_SHIFT
+        orr   r2, r2, #PT_UPPER(MEM_L3) /* r2:r3 := map */
+        orr   r2, r2, #PT_LOWER(MEM_L3)
+        mov   r3, #0x0
+
+        /* ... map of vaddr(start) in boot_third */
+        mov   r1, #0
+1:      strd  r2, r3, [r4, r1]       /* Map vaddr(start) */
+        add   r2, r2, #PAGE_SIZE     /* Next page */
+        add   r1, r1, #8             /* Next slot */
+        cmp   r1, r0                 /* Loop until we map all of Xen */
+        blo   1b
+
+        /*
+         * Setup the 1:1 mapping so we can turn the MMU on. Note that
+         * only the first page of Xen will be part of the 1:1 mapping.
+         */
+        create_table_entry boot_pgtable, boot_second_id, r9, 1
+        create_table_entry boot_second_id, boot_third_id, r9, 2
+        create_mapping_entry boot_third_id, r9, r9
+
+        /*
+         * Find the first slot used. If the slot is not the same
+         * as TEMPORARY_AREA_FIRST_SLOT, then we will want to switch
+         * to the temporary mapping before jumping to the runtime
+         * virtual mapping.
+         */
+        get_table_slot r1, r9, 1     /* r1 := first slot */
+        cmp   r1, #TEMPORARY_AREA_FIRST_SLOT
+        bne   use_temporary_mapping
+
+        mov_w r0, XEN_VIRT_START
+        create_table_entry boot_pgtable, boot_second, r0, 1
+        mov   r12, #0                /* r12 := temporary mapping not created */
+        mov   pc, lr
+
+use_temporary_mapping:
+        /*
+         * The identity mapping is not using the first slot
+         * TEMPORARY_AREA_FIRST_SLOT. Create a temporary mapping.
+         * See switch_to_runtime_mapping for more details.
+         */
+        PRINT("- Create temporary mapping -\r\n")
+
+        /* Map boot_second (cover Xen mappings) to the temporary 1st slot */
+        mov_w r0, TEMPORARY_XEN_VIRT_START
+        create_table_entry boot_pgtable, boot_second, r0, 1
+
+        mov   r12, #1                /* r12 := temporary mapping created */
+        mov   pc, lr
+ENDPROC(create_page_tables)
+
+/*
+ * Turn on the Data Cache and the MMU. The function will return
+ * to the virtual address provided in LR (e.g. the runtime mapping).
+ *
+ * Inputs:
+ *   r9 : paddr(start)
+ *  r12 : Was the temporary mapping created?
+ *   lr : Virtual address to return to
+ *
+ * Clobbers r0 - r5
+ */
+enable_mmu:
+        PRINT("- Turning on paging -\r\n")
+
+        /*
+         * The state of the TLBs is unknown before turning on the MMU.
+         * Flush them to avoid stale one.
+         */
+        flush_xen_tlb_local r0
+
+        /* Write Xen's PT's paddr into the HTTBR */
+        load_paddr r0, boot_pgtable
+        mov   r1, #0                 /* r0:r1 is paddr (boot_pagetable) */
+        mcrr  CP64(r0, r1, HTTBR)
+        isb
+
+        mrc   CP32(r0, HSCTLR)
+        /* Enable MMU and D-cache */
+        orr   r0, r0, #(SCTLR_Axx_ELx_M|SCTLR_Axx_ELx_C)
+        dsb                          /* Flush PTE writes and finish reads */
+        mcr   CP32(r0, HSCTLR)       /* now paging is enabled */
+        isb                          /* Now, flush the icache */
+
+        /*
+         * The MMU is turned on and we are in the 1:1 mapping. Switch
+         * to the runtime mapping.
+         */
+        mov   r5, lr                /* Save LR before overwritting it */
+        mov_w lr, 1f                /* Virtual address in the runtime mapping */
+        b     switch_to_runtime_mapping
+1:
+        mov   lr, r5                /* Restore LR */
+        /*
+         * At this point, either the 1:1 map or the temporary mapping
+         * will be present. The former may clash with other parts of the
+         * Xen virtual memory layout. As both of them are not used
+         * anymore, remove them completely to avoid having to worry
+         * about replacing existing mapping afterwards.
+         *
+         * On return this will jump to the virtual address requested by
+         * the caller.
+         */
+        teq   r12, #0
+        beq   remove_identity_mapping
+        b     remove_temporary_mapping
+ENDPROC(enable_mmu)
+
+/*
+ * Switch to the runtime mapping. The logic depends on whether the
+ * runtime virtual region is clashing with the physical address
+ *
+ *  - If it is not clashing, we can directly jump to the address in
+ *    the runtime mapping.
+ *  - If it is clashing, create_page_tables() would have mapped Xen to
+ *    a temporary virtual address. We need to switch to the temporary
+ *    mapping so we can remove the identity mapping and map Xen at the
+ *    correct position.
+ *
+ * Inputs
+ *    r9: paddr(start)
+ *   r12: Was a temporary mapping created?
+ *    lr: Address in the runtime mapping to jump to
+ *
+ * Clobbers r0 - r4
+ */
+switch_to_runtime_mapping:
+        /*
+         * Jump to the runtime mapping if the virt and phys are not
+         * clashing
+         */
+        teq   r12, #0
+        beq   ready_to_switch
+
+        /* We are still in the 1:1 mapping. Jump to the temporary Virtual address. */
+        mov_w r0, 1f
+        add   r0, r0, #XEN_TEMPORARY_OFFSET /* r0 := address in temporary mapping */
+        mov   pc, r0
+
+1:
+        /* Remove boot_second_id */
+        mov   r2, #0
+        mov   r3, #0
+        adr_l r0, boot_pgtable
+        get_table_slot r1, r9, 1            /* r1 := first slot */
+        lsl   r1, r1, #3                    /* r1 := first slot offset */
+        strd  r2, r3, [r0, r1]
+
+        flush_xen_tlb_local r0
+
+        /* Map boot_second into boot_pgtable */
+        mov_w r0, XEN_VIRT_START
+        create_table_entry boot_pgtable, boot_second, r0, 1
+
+        /* Ensure any page table updates are visible before continuing */
+        dsb   nsh
+        /*
+         * The function will return on the runtime mapping. So we want
+         * to prevent instruction fetch before the dsb completes.
+         */
+        isb
+
+ready_to_switch:
+        mov   pc, lr
+ENDPROC(switch_to_runtime_mapping)
+
+/*
+ * Enable mm (turn on the data cache and the MMU) for secondary CPUs.
+ * The function will return to the virtual address provided in LR (e.g. the
+ * runtime mapping).
+ *
+ * Inputs:
+ *   lr : Virtual address to return to.
+ *
+ * Clobbers r0 - r6
+ */
+ENTRY(enable_secondary_cpu_mm)
+        mov   r6, lr
+        bl    create_page_tables
+
+        mov_w lr, secondary_cpu_mmu_on
+        b     enable_mmu
+secondary_cpu_mmu_on:
+        /*
+         * Non-boot CPUs need to move on to the proper pagetables, which were
+         * setup in prepare_secondary_mm.
+         *
+         * XXX: This is not compliant with the Arm Arm.
+         */
+        mov_w r4, init_ttbr          /* VA of HTTBR value stashed by CPU 0 */
+        ldrd  r4, r5, [r4]           /* Actual value */
+        dsb
+        mcrr  CP64(r4, r5, HTTBR)
+        dsb
+        isb
+        flush_xen_tlb_local r0
+        pt_enforce_wxn r0
+        mov   lr, r6
+
+        /* Return to the virtual address requested by the caller. */
+        mov   pc, lr
+ENDPROC(enable_secondary_cpu_mm)
+
+/*
+ * Enable mm (turn on the data cache and the MMU) for the boot CPU.
+ * The function will return to the virtual address provided in LR (e.g. the
+ * runtime mapping).
+ *
+ * Inputs:
+ *   lr : Virtual address to return to.
+ *
+ * Clobbers r0 - r6
+ */
+ENTRY(enable_boot_cpu_mm)
+        mov   r6, lr
+        bl    create_page_tables
+
+        /* Address in the runtime mapping to jump to after the MMU is enabled */
+        mov_w lr, boot_cpu_mmu_on
+        b     enable_mmu
+boot_cpu_mmu_on:
+        bl    setup_fixmap
+
+        mov   lr, r6
+
+        /* Return to the virtual address requested by the caller. */
+        mov   pc, lr
+ENDPROC(enable_boot_cpu_mm)
+
+/*
+ * Remove the 1:1 map from the page-tables. It is not easy to keep track
+ * where the 1:1 map was mapped, so we will look for the top-level entry
+ * exclusive to the 1:1 map and remove it.
+ *
+ * Inputs:
+ *   r9 : paddr(start)
+ *
+ * Clobbers r0 - r3
+ */
+remove_identity_mapping:
+        /* r2:r3 := invalid page-table entry */
+        mov   r2, #0x0
+        mov   r3, #0x0
+
+        /* Find the first slot used and remove it */
+        get_table_slot r1, r9, 1     /* r1 := first slot */
+        mov_w r0, boot_pgtable       /* r0 := root table */
+        lsl   r1, r1, #3             /* r1 := Slot offset */
+        strd  r2, r3, [r0, r1]
+
+        flush_xen_tlb_local r0
+        mov   pc, lr
+ENDPROC(remove_identity_mapping)
+
+/*
+ * Remove the temporary mapping of Xen starting at TEMPORARY_XEN_VIRT_START.
+ *
+ * Clobbers r0 - r3
+ */
+remove_temporary_mapping:
+        /* r2:r3 := invalid page-table entry */
+        mov   r2, #0
+        mov   r3, #0
+
+        adr_l r0, boot_pgtable
+        mov_w r1, TEMPORARY_XEN_VIRT_START
+        get_table_slot r1, r1, 1     /* r1 := first slot */
+        lsl   r1, r1, #3             /* r1 := first slot offset */
+        strd  r2, r3, [r0, r1]
+
+        flush_xen_tlb_local r0
+
+        mov  pc, lr
+ENDPROC(remove_temporary_mapping)
+
+/*
+ * Map the UART in the fixmap (when earlyprintk is used) and hook the
+ * fixmap table in the page tables.
+ *
+ * The fixmap cannot be mapped in create_page_tables because it may
+ * clash with the 1:1 mapping.
+ *
+ * Inputs:
+ *   r10: Physical offset
+ *   r11: Early UART base physical address
+ *
+ * Clobbers r0 - r4
+ */
+setup_fixmap:
+#if defined(CONFIG_EARLY_PRINTK)
+        /* Add UART to the fixmap table */
+        mov_w r0, EARLY_UART_VIRTUAL_ADDRESS
+        create_mapping_entry xen_fixmap, r0, r11, type=PT_DEV_L3
+#endif
+        /* Map fixmap into boot_second */
+        mov_w r0, FIXMAP_ADDR(0)
+        create_table_entry boot_second, xen_fixmap, r0, 2
+        /* Ensure any page table updates made above have occurred. */
+        dsb   nshst
+        /*
+         * The fixmap area will be used soon after. So ensure no hardware
+         * translation happens before the dsb completes.
+         */
+        isb
+
+        mov   pc, lr
+ENDPROC(setup_fixmap)
+
+/* Fail-stop */
+fail:   PRINT("- Boot failed -\r\n")
+1:      wfe
+        b     1b
+ENDPROC(fail)
+
+/*
+ * Switch TTBR
+ * r1:r0       ttbr
+ *
+ * TODO: This code does not comply with break-before-make.
+ */
+ENTRY(switch_ttbr)
+        dsb                            /* Ensure the flushes happen before
+                                        * continuing */
+        isb                            /* Ensure synchronization with previous
+                                        * changes to text */
+        mcr   CP32(r0, TLBIALLH)       /* Flush hypervisor TLB */
+        mcr   CP32(r0, ICIALLU)        /* Flush I-cache */
+        mcr   CP32(r0, BPIALL)         /* Flush branch predictor */
+        dsb                            /* Ensure completion of TLB+BP flush */
+        isb
+
+        mcrr  CP64(r0, r1, HTTBR)
+
+        dsb                            /* ensure memory accesses do not cross
+                                        * over the TTBR0 write */
+        isb                            /* Ensure synchronization with previous
+                                        * changes to text */
+        mcr   CP32(r0, TLBIALLH)       /* Flush hypervisor TLB */
+        mcr   CP32(r0, ICIALLU)        /* Flush I-cache */
+        mcr   CP32(r0, BPIALL)         /* Flush branch predictor */
+        dsb                            /* Ensure completion of TLB+BP flush */
+        isb
+
+        mov pc, lr
+ENDPROC(switch_ttbr)
diff --git a/xen/arch/arm/include/asm/arm32/macros.h b/xen/arch/arm/include/asm/arm32/macros.h
index a4e20aa520..64fbe4876a 100644
--- a/xen/arch/arm/include/asm/arm32/macros.h
+++ b/xen/arch/arm/include/asm/arm32/macros.h
@@ -1,8 +1,70 @@
 #ifndef __ASM_ARM_ARM32_MACROS_H
 #define __ASM_ARM_ARM32_MACROS_H
 
+/* Offset between the early boot xen mapping and the runtime xen mapping */
+#define XEN_TEMPORARY_OFFSET      (TEMPORARY_XEN_VIRT_START - XEN_VIRT_START)
+
     .macro ret
         mov     pc, lr
     .endm
 
+/*
+ * Move an immediate constant into a 32-bit register using movw/movt
+ * instructions.
+ */
+.macro mov_w reg, word
+        movw  \reg, #:lower16:\word
+        movt  \reg, #:upper16:\word
+.endm
+
+/*
+ * Pseudo-op for PC relative adr <reg>, <symbol> where <symbol> is
+ * within the range +/- 4GB of the PC.
+ *
+ * @dst: destination register
+ * @sym: name of the symbol
+ */
+.macro adr_l, dst, sym
+        mov_w \dst, \sym - .Lpc\@
+        .set  .Lpc\@, .+ 8          /* PC bias */
+        add   \dst, \dst, pc
+.endm
+
+.macro load_paddr rb, sym
+        mov_w \rb, \sym
+        add   \rb, \rb, r10
+.endm
+
+#ifdef CONFIG_EARLY_PRINTK
+/*
+ * Macro to print a string to the UART, if there is one.
+ *
+ * Clobbers r0 - r3
+ */
+#define PRINT(_s)           \
+        mov   r3, lr       ;\
+        adr_l r0, 98f      ;\
+        bl    puts         ;\
+        mov   lr, r3       ;\
+        RODATA_STR(98, _s)
+
+/*
+ * Macro to print the value of register \rb
+ *
+ * Clobbers r0 - r4
+ */
+.macro print_reg rb
+        mov   r0, \rb
+        mov   r4, lr
+        bl    putn
+        mov   lr, r4
+.endm
+
+#else /* CONFIG_EARLY_PRINTK */
+#define PRINT(s)
+
+.macro print_reg rb
+.endm
+
+#endif /* !CONFIG_EARLY_PRINTK */
 #endif /* __ASM_ARM_ARM32_MACROS_H */
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:01:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:01:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599443.934895 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhTR-0006pT-5Y; Mon, 11 Sep 2023 14:01:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599443.934895; Mon, 11 Sep 2023 14:01:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhTR-0006pL-2G; Mon, 11 Sep 2023 14:01:09 +0000
Received: by outflank-mailman (input) for mailman id 599443;
 Mon, 11 Sep 2023 14:01:07 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S94K=E3=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qfhTP-0005N8-B6
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:01:07 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on2061c.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::61c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a666a1b7-50ab-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 16:01:06 +0200 (CEST)
Received: from CH2PR04CA0008.namprd04.prod.outlook.com (2603:10b6:610:52::18)
 by CH2PR12MB4328.namprd12.prod.outlook.com (2603:10b6:610:a6::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 14:01:00 +0000
Received: from DS2PEPF00003444.namprd04.prod.outlook.com
 (2603:10b6:610:52:cafe::ea) by CH2PR04CA0008.outlook.office365.com
 (2603:10b6:610:52::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 14:01:00 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS2PEPF00003444.mail.protection.outlook.com (10.167.17.71) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.11 via Frontend Transport; Mon, 11 Sep 2023 14:01:00 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 09:00:54 -0500
Received: from xcbayankuma40.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via
 Frontend Transport; Mon, 11 Sep 2023 09:00:53 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a666a1b7-50ab-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Dvb1ASgV803bOS/IKi1FVDCGSEXUMJiIzW+GOOck7TWQG1ntkbtYRPHIeya/kLuTz2ccACmHfOjOfdc2NSXnCHdY4aVN9uPCT3ytywBn96kiFHVp3ulA+/Nc6L3884Owg/MJ/S9Gml/DqhnrRxHf28Bq4zaLHVPXzPCl/cf9ti0V1/bHJ4VdSnK1vyC6KuXTXcRjgGITE8/uv190vUv6aO8Bsmekfhp93IZKdBmPfn1MQbbu0ByXmyrxeN7xtS32Ugx3HdlEFoxf/96DBC0gHn0EHuDyKE8M4fFs/bp1nYQ8AvDwCidhzzDAJHeIt3MnO8fzqpKZXGT7lPbL//eGgA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CZ03rabC0ifyCB6txpZL3Bm38Ko4qgK8bj669nLmS5M=;
 b=PjYPtyJWNc3Fj4h7u4GB6qVq9fP5nNbEGcjsFCV/idX+fbT58vQfElvxx6K+5aU83fBDODh2yBdWk1qiYpghzW9C3ugu6NjyzXcHl7YQpYf7axeahuPpERhP66W3pGGXl5xenp/CDenzvbQLVmiG/oE0YIOCyzSDDRvaY9r2e6fdmWeJGZtSVwiavlo0EDRxMuA5FPZW+85Id4sw5f2hDwKZNGw4HddUCsh/hVmon7SZbzVl3tyv9UTPnGk8/9eTFlEPDqZUkTC6EhblWlpAneD+8RNqpS3Q8GiE/fidMyFmBfiJ7/I5G/+KLgBV0pXljkD1rzOcDa2M2NftwGac6g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CZ03rabC0ifyCB6txpZL3Bm38Ko4qgK8bj669nLmS5M=;
 b=X8Mjjek0VrIGfA2Y9iYnpE5b/aN3a2KTI6tu3vUBc9zBSExM5rpHiZP+p1BkAKQKKZ2014rV61nZbFOdKurTKwJPaFJimTUXsEMBABgItMKpcIbBPuV5B1YNzHZeDQZ0AoAhoSpdZHLQmWjQsDxGvfOhc9pT4riXyQgAWCcnQ68=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <stefano.stabellini@amd.com>, <julien@xen.org>,
	<Volodymyr_Babchuk@epam.com>, <bertrand.marquis@arm.com>, <wei.chen@arm.com>,
	<penny.zheng@arm.com>, <henry.wang@arm.com>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>
Subject: [XEN v1 4/4] xen/arm: traps.c: Enclose VMSA specific registers within CONFIG_MMU
Date: Mon, 11 Sep 2023 14:59:42 +0100
Message-ID: <20230911135942.791206-5-ayan.kumar.halder@amd.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
References: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF00003444:EE_|CH2PR12MB4328:EE_
X-MS-Office365-Filtering-Correlation-Id: 8a7c3af5-8f2e-4ce6-4edd-08dbb2cf8774
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5jMevpm3KxWfY2402R2YnZOkislKOztc59g7u2ezdcagfiE8l4fezFotJT/nssRSwW4X5sfPHCAARJEQX6Eb7mE7B1EbCRAwCEPhHD7sAoWbDatwoi8mi6vIAXtpwsCepzG+1Sj6ENwxYbYAYRRcnYgy/vZZQaDfVMLgD+qJ3NiQCOlOr9uTTqDRO3LbDABIEIaKUu9uVm4BHbzXe3rOWMuVlDjBXDLrAdY93IqBZQmlwvm5O7BY3gJz9Ibweb0mMT75RlGJlbCv31IUhcgfUH/yKo358EAwJDtW3XO8VmqWyKbpBI1/Oo2Pkc0GmcgQZ9w/HLKleh0gk4axzpb53Heucgidv9VydB6HbPBwgHLu4emnpQDjAQkeNIxC9lYMlTy1L3zxuG8ZPafA6LAG79h/t5rIYz5kx76WHqThr6WNJng5TuRN+5IJKwZU1x+GwE0AhS+IzhvX+jd9TNZh2C7HKkJzYnddNOTDR700f+1Uh2oS07U1rCbVwe5TbZMi+NIx1sMmbsmBPRQvvD0KlIqhxQcp1TssHE+1KqFbXKuR2fc9+VgJgDL8INM1a2AQN48yttr5obTJYqTTdVVbnIbLqrcJLCux/zr9n1DmMBax41NgvnrxE2Opsaw48W1W9aAgQlnQBGzhRX66qlp1CpeXXojLFTRSjk/2fLohG6u8zYZWb0NHxaX9+URNc7eDdV2eSnYjn2AVtCH4lAgrB5AkmUtkYjqm9o/CbY7f1addM507pvgKMI8Rww4jdf0L0O5NEAbWKJO8FWCDCMH0QA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(39860400002)(136003)(376002)(1800799009)(82310400011)(186009)(451199024)(46966006)(36840700001)(40470700004)(70586007)(26005)(86362001)(1076003)(426003)(336012)(2906002)(83380400001)(103116003)(6666004)(40480700001)(2616005)(36860700001)(356005)(82740400003)(81166007)(47076005)(40460700003)(478600001)(36756003)(5660300002)(4326008)(8936002)(8676002)(316002)(54906003)(6916009)(70206006)(41300700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 14:01:00.2796
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8a7c3af5-8f2e-4ce6-4edd-08dbb2cf8774
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS2PEPF00003444.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR12MB4328

The VMSA specific registers (ie TCR, TTBR0, TTBR1, VTTBR, etc) are valid when
MMU is used, thus we can enclose them with CONFIG_MMU.

Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
---
 xen/arch/arm/traps.c | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
index 46c9a4031b..83522fcc5a 100644
--- a/xen/arch/arm/traps.c
+++ b/xen/arch/arm/traps.c
@@ -698,8 +698,10 @@ static void __do_trap_serror(struct cpu_user_regs *regs, bool guest)
 struct reg_ctxt {
     /* Guest-side state */
     register_t sctlr_el1;
+#ifdef CONFIG_MMU
     register_t tcr_el1;
     uint64_t ttbr0_el1, ttbr1_el1;
+#endif
 #ifdef CONFIG_ARM_32
     uint32_t dfsr, ifsr;
     uint32_t dfar, ifar;
@@ -801,9 +803,11 @@ static void show_registers_32(const struct cpu_user_regs *regs,
     if ( guest_mode_on )
     {
         printk("     SCTLR: %"PRIregister"\n", ctxt->sctlr_el1);
+#ifdef CONFIG_MMU
         printk("       TCR: %"PRIregister"\n", ctxt->tcr_el1);
         printk("     TTBR0: %016"PRIx64"\n", ctxt->ttbr0_el1);
         printk("     TTBR1: %016"PRIx64"\n", ctxt->ttbr1_el1);
+#endif
         printk("      IFAR: %08"PRIx32", IFSR: %08"PRIx32"\n"
                "      DFAR: %08"PRIx32", DFSR: %08"PRIx32"\n",
 #ifdef CONFIG_ARM_64
@@ -873,9 +877,11 @@ static void show_registers_64(const struct cpu_user_regs *regs,
         printk("   FAR_EL1: %016"PRIx64"\n", ctxt->far);
         printk("\n");
         printk(" SCTLR_EL1: %"PRIregister"\n", ctxt->sctlr_el1);
+#ifdef CONFIG_MMU
         printk("   TCR_EL1: %"PRIregister"\n", ctxt->tcr_el1);
         printk(" TTBR0_EL1: %016"PRIx64"\n", ctxt->ttbr0_el1);
         printk(" TTBR1_EL1: %016"PRIx64"\n", ctxt->ttbr1_el1);
+#endif
         printk("\n");
     }
 }
@@ -907,13 +913,15 @@ static void _show_registers(const struct cpu_user_regs *regs,
         show_registers_32(regs, ctxt, guest_mode_on, v);
 #endif
     }
+#ifdef CONFIG_MMU
     printk("  VTCR_EL2: %"PRIregister"\n", READ_SYSREG(VTCR_EL2));
     printk(" VTTBR_EL2: %016"PRIx64"\n", ctxt->vttbr_el2);
+    printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
     printk("\n");
+#endif
 
     printk(" SCTLR_EL2: %"PRIregister"\n", READ_SYSREG(SCTLR_EL2));
     printk("   HCR_EL2: %"PRIregister"\n", READ_SYSREG(HCR_EL2));
-    printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
     printk("\n");
     printk("   ESR_EL2: %"PRIregister"\n", regs->hsr);
     printk(" HPFAR_EL2: %"PRIregister"\n", READ_SYSREG(HPFAR_EL2));
@@ -931,9 +939,13 @@ void show_registers(const struct cpu_user_regs *regs)
 {
     struct reg_ctxt ctxt;
     ctxt.sctlr_el1 = READ_SYSREG(SCTLR_EL1);
+#ifdef CONFIG_MMU
     ctxt.tcr_el1 = READ_SYSREG(TCR_EL1);
     ctxt.ttbr0_el1 = READ_SYSREG64(TTBR0_EL1);
     ctxt.ttbr1_el1 = READ_SYSREG64(TTBR1_EL1);
+    ctxt.vttbr_el2 = READ_SYSREG64(VTTBR_EL2);
+#endif
+
 #ifdef CONFIG_ARM_32
     ctxt.dfar = READ_CP32(DFAR);
     ctxt.ifar = READ_CP32(IFAR);
@@ -945,7 +957,6 @@ void show_registers(const struct cpu_user_regs *regs)
     if ( guest_mode(regs) && is_32bit_domain(current->domain) )
         ctxt.ifsr32_el2 = READ_SYSREG(IFSR32_EL2);
 #endif
-    ctxt.vttbr_el2 = READ_SYSREG64(VTTBR_EL2);
 
     _show_registers(regs, &ctxt, guest_mode(regs), current);
 }
@@ -954,9 +965,11 @@ void vcpu_show_registers(const struct vcpu *v)
 {
     struct reg_ctxt ctxt;
     ctxt.sctlr_el1 = v->arch.sctlr;
+#ifdef CONFIG_MMU
     ctxt.tcr_el1 = v->arch.ttbcr;
     ctxt.ttbr0_el1 = v->arch.ttbr0;
     ctxt.ttbr1_el1 = v->arch.ttbr1;
+#endif
 #ifdef CONFIG_ARM_32
     ctxt.dfar = v->arch.dfar;
     ctxt.ifar = v->arch.ifar;
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:01:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:01:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599446.934905 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhTb-0007JA-EH; Mon, 11 Sep 2023 14:01:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599446.934905; Mon, 11 Sep 2023 14:01:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhTb-0007J3-Ao; Mon, 11 Sep 2023 14:01:19 +0000
Received: by outflank-mailman (input) for mailman id 599446;
 Mon, 11 Sep 2023 14:01:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yA6l=E3=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qfhTZ-0005N8-TT
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:01:17 +0000
Received: from NAM04-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam04on20609.outbound.protection.outlook.com
 [2a01:111:f400:7e8d::609])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ad46eb0b-50ab-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 16:01:17 +0200 (CEST)
Received: from SN6PR2101CA0015.namprd21.prod.outlook.com
 (2603:10b6:805:106::25) by SA1PR12MB8096.namprd12.prod.outlook.com
 (2603:10b6:806:326::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Mon, 11 Sep
 2023 14:01:13 +0000
Received: from SN1PEPF0002529F.namprd05.prod.outlook.com
 (2603:10b6:805:106:cafe::cf) by SN6PR2101CA0015.outlook.office365.com
 (2603:10b6:805:106::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.3 via Frontend
 Transport; Mon, 11 Sep 2023 14:01:12 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF0002529F.mail.protection.outlook.com (10.167.242.6) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.17 via Frontend Transport; Mon, 11 Sep 2023 14:01:12 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 09:01:12 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 07:01:11 -0700
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 11 Sep 2023 09:01:10 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ad46eb0b-50ab-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Kw36Ht/KL7ayI2K1z6lh7SHEwnWi5qnOucBxnn6QcApxFvBdZRyM7R8Z0NGfvwdqbQk9Lld4f99ZgMdQ3inq4fOrRLuEFGcm0OugyA1cropFGaKss0awcjOQiHy+AgQouZD/I0/zX4m2LUrrs7kUz90K7Us6WOkbvtmRSvXfOxr3PUE4HTsPqngjgpBib1e7uyCo6qRdZHV9f4qto0eK/xbx8R62gIsLlnTr4bRYmFoAyomdUy7fFP5LkK3+uf5L4QnypSGbNsYifAV0FV7VaPcVgeW5nT4/txGpXFYGs+t/DE/82/C5+fSQCl3Lw0vCBX5Pz/OhSboeGbP8Voyh3A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kjGYVLcBdnVTAOB4ZKotPMviIqusi914qXiDXN+m48Y=;
 b=KzWmMQFo/mGnS0qkWPIGLHbVQREIE3kJiZ6Ai1r7AuhUVlAknUsjvOcY7dJcDKttp4rH0/fMI1MnsGlYGhyEb2sKMZ/eMK9p/RJ52svCJhhgvMv2tzdUjQu0izw5yp8QhRKL9tdFgGJaIl5y87X7VjjjgoIbxda8dCjb7kK9EWhJl14DzraqvaniDEz5MrxsjliYEe8ZeXZ1GO4WiOq5bP0oBTBkvYO6OMp6bjmkTfb+cUCbAxW+gXtIN2tl/6bgDR8pZmwTaa/BmTGYeBDknPFityqUyy79j0ZVIP76QuvPDJBO3eek5UWU7ieeOoXZ3xEoponMxLJDP9a+/hxEOg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kjGYVLcBdnVTAOB4ZKotPMviIqusi914qXiDXN+m48Y=;
 b=ZzmlnlKBkj2I7NU43/XB+X/lyzJnR901TcVsi2yyPJnSTmh4iK/VNhY/ceDqsB/thJCoK4NzYeXAey3qjPo5UcFuSopl3ueXEuU3qAYplDm1gDVK+3jVhZlYQ62svbxEfkXKjqKYZQb/w05YbK/tFoGlLXYhkUFpIFl+At6MAeg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <042fae56-e8e2-c079-2686-d27c5469b7fc@amd.com>
Date: Mon, 11 Sep 2023 16:01:04 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
Content-Language: en-US
To: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911123401.27659-1-michal.orzel@amd.com>
 <366e89e3-bc3d-4c54-b1ad-8147abbabdc7@xen.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <366e89e3-bc3d-4c54-b1ad-8147abbabdc7@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002529F:EE_|SA1PR12MB8096:EE_
X-MS-Office365-Filtering-Correlation-Id: 3d605722-f2cd-4b78-8914-08dbb2cf8eac
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	NPjL8whGNcxVhMs+7BkOnTZivKspiGE0cxiIoSlucRBpgf/DvWOIN+SCGhDP8I+AK7eOObxMPgOGp5OuUYlTY1tIVrWKqpYvt56lJCNuCm1eFPHJeDZlh0GrpNmRji8PbBM8DvQ27EMNLAhJlTeHftMXFHVf7Jci9BRVYKf24cj3vvywH/k8nR9dMIQvEYiq8FXzTLbHJcbDhbySG1ax3urPfV1aKgxJVU5OyIN82uKbCd5ZLfdWUET2PLalk1X+uhr/MF3Hl2+wQ1zKZ/VOx2BJmh8E0g83vokoXUtToEAiOTKlsfLuElkd+pQ+4s+no77L44S98F3KaMOoeaGrwCgrLZ2/KnMiIpEcqMNF6np2ozlPsQi5vqjYKGv3U7B0nFrjF3BOCYkah69WPYtDPDg9wtT+UQbGviauq8PgWNeq2xSm5WsSzOvkaPJd3W96ZqO53jsjRpS0Smm1ixmui2oCMtmsmhqH+pzXz8c0foi4ENYkz4mCuOi8MvTQeJUSvpzBpq8008FOY7PsPPqnwYLMQrGQetcwoqbfPeqFAYPal75J/aFUuIBW5lYA4m4HS8WtV7gYVNQZPnAPv7cz9oWZrKKyg2P3VUW+S7AZ242/vr1WvdNeFDuU7yaQ2XVG6KU5gG1CPw+qAhvY7r4Xs5CHbCDd/oEnaub4ambQWIwl/YsxwFeOk7mhLiJ4TYpRCAWxLK2A2eqwaPWuJ2ksx7bVlCVTKP/dY9ykTgcVRQJ1+W2edzIND1uDoxsTZHVEyEQZ+D8LLTVsW8AFz3NzWlHQesjBSjaEomDF7OXZFhrEg/w7bVq8nd2uInGuFW54/2qqPsIOPbBHuTt3BKraDQ==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(376002)(136003)(396003)(82310400011)(1800799009)(186009)(451199024)(46966006)(40470700004)(36840700001)(6666004)(53546011)(966005)(478600001)(83380400001)(2616005)(426003)(336012)(2906002)(26005)(16576012)(44832011)(54906003)(316002)(70206006)(70586007)(110136005)(5660300002)(4326008)(8936002)(8676002)(40480700001)(36756003)(36860700001)(356005)(47076005)(40460700003)(31696002)(86362001)(82740400003)(81166007)(31686004)(41300700001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 14:01:12.4078
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 3d605722-f2cd-4b78-8914-08dbb2cf8eac
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002529F.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB8096

Hi Julien,

On 11/09/2023 15:14, Julien Grall wrote:
> 
> 
> Hi,
> 
> On 11/09/2023 13:34, Michal Orzel wrote:
>> Host device tree nodes under /chosen with compatible string
>> "xen,evtchn-v1", "xen,domain-shared-memory-v1" are Xen specific and not
>> meant to be exposed to hardware domain.
> 
> So, how dom0 is meant to discover the static event channel, shared
> memory it can use?

For static shared memory:
A node with this compatible is only meant for Xen since it contains information like host-guest mapping.
Xen creates a different node for guests under /reserved-memory.
Linux binding:
https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindings/reserved-memory/xen,shared-memory.txt
Xen node generation:
https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/domain_build.c;hb=HEAD#l1407

For static event channels:
This is a bit weird so let me put it in a different way.
1) Xen does not create any node for static evtchn for domU.
2) The booting.txt states:
There is no need to describe the static event channel info in the domU device
tree. Static event channels are only useful in fully static configurations,
and in those configurations, the domU device tree dynamically generated by Xen
is not needed.
3) The "xen,evtchn" property specifies the local port as well as phandle of domU node.
dom0 does not have access to domU nodes, therefore exposing a property with not existing phandle
makes me think that:
a) point 2) applies to dom0 as well and we should hide this node or
b) there is a missing property for both dom0 and domUs to tell them about static local port in a proper way

Exposing Xen specific evtchn node only to dom0 and not to domU with required information happen to be found as first value
in xen,evtchn is definitely not a proper solution. Also, there is no Linux binding for it.
All that makes me think that the author's idea was not to expose it.

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:03:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:03:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599465.934915 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhVu-0000RE-Sx; Mon, 11 Sep 2023 14:03:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599465.934915; Mon, 11 Sep 2023 14:03:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhVu-0000R7-P8; Mon, 11 Sep 2023 14:03:42 +0000
Received: by outflank-mailman (input) for mailman id 599465;
 Mon, 11 Sep 2023 14:03:41 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfhVt-0000Qt-36; Mon, 11 Sep 2023 14:03:41 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfhVs-00006J-VV; Mon, 11 Sep 2023 14:03:41 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfhVs-0001cU-LZ; Mon, 11 Sep 2023 14:03:40 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfhVs-0007zt-L7; Mon, 11 Sep 2023 14:03:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=xbZralnc+5G09sj4Vuut86yTVi9Ns7RTsZdZCf+ZymI=; b=ga+cXtgO4d08ML/OgQFYwXf13O
	z8MM4ZTYpFdialUSlwPzZ745vb2wU/xJIzZUZcXVNRNbDvcciN6bpyLVf7MOpKePm/H2JCJLrTRDn
	upkB6zdWat0/Ut4xVFteYTwuKFNg+0acaC3YGDvtpBvv/6vEkbQt1XbSWZtc8Wa6e7Ds=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182929-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182929: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 14:03:40 +0000

flight 182929 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182929/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    4 days
Failing since        182723  2023-09-07 18:19:05 Z    3 days   17 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    2 days   14 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:03:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:03:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599468.934925 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhVy-0000iD-AT; Mon, 11 Sep 2023 14:03:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599468.934925; Mon, 11 Sep 2023 14:03:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhVy-0000hx-7e; Mon, 11 Sep 2023 14:03:46 +0000
Received: by outflank-mailman (input) for mailman id 599468;
 Mon, 11 Sep 2023 14:03:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S94K=E3=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qfhVx-0000hH-Fo
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:03:45 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20631.outbound.protection.outlook.com
 [2a01:111:f400:7e89::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 042b49cc-50ac-11ee-8784-cb3800f73035;
 Mon, 11 Sep 2023 16:03:44 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by BN9PR12MB5274.namprd12.prod.outlook.com (2603:10b6:408:11f::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Mon, 11 Sep
 2023 14:03:40 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::9a2:f8ec:7c75:fe95]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::9a2:f8ec:7c75:fe95%6]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 14:03:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 042b49cc-50ac-11ee-8784-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XwTWktVUZPwsdhG/OueuOkBAJ/8vHE9VE9kjS5e8xCOiWPX3eXik99TYlARW6vOmxGbZqXFOVGPmhnvGmB1Ko7otk4dNLIZ7itYM3TURrDDgN3day/GzfQdzqG6onxdCwTuzmkhZ9QHWvHKMQLEjj6rm1+hnhDcJ2vsOyf0Zj3b9yAi/U/Vo0/q6Pqgs0XY4FRq77T7tSoegib4X578xQ1AzOWcOi8TwuKAjfsN5j8bJ9wQj1wHUj8DsyIod3HCktU6DYt1ujfpSSoj+SfDLqe9k07NE2+SZ47wzd6ZmZ8/+fKcjpnBNg3Jjsw/OcIfUb85tJaHTJChjdK2Hk7nROw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5Mefa9bnp9MDt++lQp3ggEEWTzalF96Ef1xjeopKNYk=;
 b=e4bwP7ptyWAWe0OL2VLOfvrpDs0x0OLAs/96h0i9AGk4S8JUPhPAvx9VVJTJpOWt+caWmZppswhVLksgb9bZTQRcgHsTR2n5AwK51eaBnEzOOuGpCbHo5m9OtyiGOLfi5FFqYZu9x+z+ItlfE2dD2087aXcCpu4+FS+inJAbKwlaQcvGZqbbsLMwnvhM1xATrXuqWYRSNxH8HW6WV6y81rN8MrpRsvCxlRdIKFCXPEuMf5EeVHfMKOPRFD7ir571+WgH2WP1pqV0PyuaHInW8Rl6QAOGpCESpidBOYTAtF62Qy3OzLgQds++K9qplCGUO1jN2cmAp0QSq8MhY/Qvng==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5Mefa9bnp9MDt++lQp3ggEEWTzalF96Ef1xjeopKNYk=;
 b=mCl9o0NvCRPQ5T8kr9zasYUoRMmUuv6a28fIHracHucBY3QhysWI9zYg2dyfUZaJcX67eJKZqpR06zsHN9/CFA9ZWCj7Crhc1Z/J87GxJDL6tILTGAaSvEeFQZ0jKs5nGzlTb0FX+oLh0MSdts4bphJfg/heIgxmqMYvy9foZQE=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <8da354d9-5b80-709d-8b0a-be1ba5694b37@amd.com>
Date: Mon, 11 Sep 2023 15:03:33 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.0
Subject: Re: [PATCH v6 00/13] xen/arm: Split MMU code as the prepration of MPU
 work
To: Stefano Stabellini <sstabellini@kernel.org>,
 Henry Wang <Henry.Wang@arm.com>
Cc: xen-devel@lists.xenproject.org, Julien Grall <julien@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Wei Chen <wei.chen@arm.com>,
 Penny Zheng <penny.zheng@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <alpine.DEB.2.22.394.2309081515340.6458@ubuntu-linux-20-04-desktop>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <alpine.DEB.2.22.394.2309081515340.6458@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: LO2P265CA0329.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a4::29) To SN6PR12MB2621.namprd12.prod.outlook.com
 (2603:10b6:805:73::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|BN9PR12MB5274:EE_
X-MS-Office365-Filtering-Correlation-Id: b0eaffe0-fed4-4c61-913d-08dbb2cfe6ac
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	NjEL/9PENmugN2/1SWPHfor6h+4+wgPPpU0rAYItXXsO/znpTDxzfWjP0glj+dthDUOX8bFRAcD/MNDxI1CXyBbFCatudDKuaW7MianMYKJcLyPguqYpDcuknzngVpBMu1IO8npEoBqdH6qbwKuIc8Q8Rqn2VhiX1+WNjvJhqdoVJvh9P1xRiK9vA1eUbvox68UzUBC3upU909wJDcz4Q1oVV/pXLbpB/GGfuo95NBXaLox4m8Z4pvlaU7YMJtdzbIjTc7LVWuQJDntM/qUmM1Hgn4d4YDhCBCZCMLA7qo/sAGrrC7otTVX2F9Vr2s5tAatc6cyTFLtp9ueOSZKDjyVuOynezqNVrwCvnC2CnSALWT76HQuMwtXb+ii/cwqalorE//z2asgv9+j3rXhLYtZTAavoS/S1Zz2GiYD5xrb2tFtf1YFFUXJm8pRQWl+UotXkZEb0Wt2ZGcOXjWJSDoeGhs5gXEwLWcnudx/myw1sU6BEpJqV9yX8X1mpbTgTyqkEOzNCScoMS/dAsC+d2LkfcJEyGU6M/+DLn7m9ISF4ws+gqayrGATaQVtCSwZqMZ871wFzvenR8AVR9zHkLl31/F9JZ6oFZK7ggeM8BPQ+4UFBB05ic/q0r5xqLTc6Lqy93xBD94/OOaaZob8weawBoiMSF+GG16Uzwf4fgBIeIwIrDwMug7Lr+20TiyME
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(366004)(136003)(39860400002)(396003)(186009)(1800799009)(451199024)(6486002)(6506007)(53546011)(6512007)(6666004)(83380400001)(31696002)(38100700002)(36756003)(2616005)(26005)(31686004)(316002)(41300700001)(66946007)(4326008)(8676002)(54906003)(966005)(66476007)(110136005)(2906002)(5660300002)(478600001)(66556008)(45080400002)(8936002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NEZxRnVtaVVMcnFUaEZhSXhiYTdoSi9TVFZnMlh2SS8vT3V4RExSNEx2NUtP?=
 =?utf-8?B?RjU4RGRNL09PeUpZdGdUdjBOOFdQY0ZZMU1rRnl6dHN6WVkzaUJHQ29iSE1w?=
 =?utf-8?B?cWUzVzhlamhoMHRQYlNyaUN1cG1DWU42bGluRE93K3RQREQ2OVFlSkhmZHFh?=
 =?utf-8?B?cjJQem91cDZxNmNqR3VGSW1NR1NPWHhONk04dytDOFh1QUVSaXZWQlJFbVhP?=
 =?utf-8?B?VVJONjBPdmMvZUFYY2NYYjkxZnVGSU92a0tWeFJBcCt4RktPYUdJejQwTXVG?=
 =?utf-8?B?elhHQ1FsV0diakcxRU96cEhhVHlBRXJEMUgrczR3bjI0aGNRT0tlNjhSQzN5?=
 =?utf-8?B?VGdWSGNKMHUxSHdKUkFCcGUzQzFwQkN1ZGljNElVVStaTHJlSVUvQ1lKa1My?=
 =?utf-8?B?UnBXUStyRSsrRmlrOTFmWGR2WGdnYm5WaXI2YnRlbU54akVkZEtaVUp4OGE5?=
 =?utf-8?B?eUZoYzBPMkEvaW5MYXNObmdzSVpDbGtyTW1sYUN4MEM2V3hsamVhRGlYUkpE?=
 =?utf-8?B?V2JMSEc5ZTZ2em95OVpRSktLMkdHcFcvempEcHQ5WkZSYkw5Z25JL0pCbDVN?=
 =?utf-8?B?aWNUMWhUS0c0eHMzbm1PYXVjVjVETE9JRnNCdCtEajZGZTlmT0NjTFV0b0xZ?=
 =?utf-8?B?Vm83elN0SFRNNncrM2tRamJBbTVFekM2Sk56M2dkVHcyREVEbDJZZmhhV0ZK?=
 =?utf-8?B?Wmg1bFF1SUx6aUFDWkhOVFFDdEdncjNQRjFWeHNtUDZPK3l4Y0JMNHFVbHJl?=
 =?utf-8?B?YzREQnFLbnBudW5Ed3o2N2FXWER0RlpWNUcxR2pOVGdmaG9XSHZMdE1Cc05r?=
 =?utf-8?B?TWhSOXNWSHJwdTBJRU9jMThiNFhDU0xsUHlWNTdqNEdkU1NkWjVMVTBMSTB0?=
 =?utf-8?B?Ylc3a0RFaDVza3loOWpYWEhYREo2b2F6STUxRXgwbzRDSVNieW1qWW1ha2Zp?=
 =?utf-8?B?eTZKL2JrdkFZV05USldZbjhnTlJZVVdldW1tUXVLeWVvaW9JdGluMUZENWJW?=
 =?utf-8?B?dk1SSjVqWUpKVFkyZmszL1AvL2hDWTFEZng3RDNrY3c3QmUzaWxSLzNuT09t?=
 =?utf-8?B?Vk8wQ21zcFlsSDFaZW10WmwyN1JrbE5McU5jOXIzR0lyYTZYOVcyOG84Y2lr?=
 =?utf-8?B?MkhSNzBnOW9pTkppdDN2R1ArQ3M2UjNYZlhZZHdKODNLR0hkblk1eWEwM0Zr?=
 =?utf-8?B?OGpnWkVzRTdVSzZZeE1xOElJa3AzOXd4ajFuSEtjQVdNZEg3eG05ZWxYRHYy?=
 =?utf-8?B?QzFET1hYYXNURG5kY2huUmdoSGMreXZkU1VUa1dQSlM2bWVIVFFwVUlIYXhn?=
 =?utf-8?B?RjRLTWV3b1RTMDlLYWVVaEV5b0hMenV0YStPaHBqaHNQaEdvQmxjNU82Q2R1?=
 =?utf-8?B?YjFMYWJ0eFpBRk1Xd3pHbEpTY1ZNS0xjaHo5WXpBZVh2aTlOajZQTkpyTEhX?=
 =?utf-8?B?RTZrbmg1ZEFKaGYzU2dnSG5JOWN5VHBLMWFrRndMYWZmdDV4a1hoYzV5UXdo?=
 =?utf-8?B?ZkZ5MXZ4Q2tUTGkreVRjYTFTbFZCdDgrUGFlU1NlQkZKYnBuRWEzSFJXdzIy?=
 =?utf-8?B?ajB4YXZ5QkpYbGZaUFA3eGNPTzlnS3k1N2NsbWw3QmNJTGlqSTYvQWZ2eVBI?=
 =?utf-8?B?VzZJMmI3SW5jNTFGbnRjUlVSM09YTVk1RVVEQlY0ZHUwaXdEdGlYTUNqa3pY?=
 =?utf-8?B?eE5HYWRVWkZjdG5YNDY4Q2dCVGZ3alYyK2EydU1tTmUxbGNRcWJjMWh5NWpR?=
 =?utf-8?B?V1U2d01MSUIweG4rN1MxM1gyckpUb3lTTDFMRUVxTzNKQjlSSmRDU1h3S0VZ?=
 =?utf-8?B?a1B4bjFoeVo2M0RpRUQrMXVPS2l6VlNZK0lKTjFoOXZJMWN5cEtKVXdxMDBB?=
 =?utf-8?B?VUtKVG80Q1M1bE5RcW1CSUx1OUFkOWVZQ3N0TGdXTFZEc2lJZC9SVWcyWWN2?=
 =?utf-8?B?R29YdlkrWFcyMER1Z1MyMy9XcHR4b25HMEUzQ1R3QXFYNjZLTFNRYmJ4ZTFR?=
 =?utf-8?B?MDR4aGxJa1B3SlBTNnIrbFg1RG9yREFvMkFNZURhcEJ0SHk1Mko3Qlh1Kzcz?=
 =?utf-8?B?b215YXNJdGpXZVF6Q2w0d1FsMnZ6ODExTEh6V3pMQno4Tk01cXVUWlBoZ2JW?=
 =?utf-8?Q?7sFFG+gCDyMozGsUKPA627Vrx?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b0eaffe0-fed4-4c61-913d-08dbb2cfe6ac
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 14:03:40.2700
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: nyIrVhQsz1Ld0MsbN/fFsnabYTTVbqdC7tBJvAee9R1vAIT1SN3l2oevznNoX3N6k1/YqRSHnlyCUHEmGw2Dcw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5274

Hi Henry,

On 08/09/2023 23:15, Stefano Stabellini wrote:
> CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email.
>
>
> I committed patches 1-5
>
> On Mon, 28 Aug 2023, Henry Wang wrote:
>> Based on the discussion in the Xen Summit [1], sending this series out after
>> addressing the comments in v5 [2] as the preparation work to add MPU support.
>> The series passed the GitLab CI check in [3].
>>
>> Mostly code movement and function folding, with some of Kconfig and build
>> system (mainly Makefiles) adjustment.
>>
>> This series is based on:
>> ec272d8d4c CI: Always move the bisect build log back
>>
>> [1] https://lore.kernel.org/xen-devel/AS8PR08MB799122F8B0CB841DED64F4819226A@AS8PR08MB7991.eurprd08.prod.outlook.com/
>> [2] https://lore.kernel.org/xen-devel/20230814042536.878720-1-Henry.Wang@arm.com/
>> [3] https://gitlab.com/xen-project/people/henryw/xen/-/pipelines/982592897
>>
>> Henry Wang (9):
>>    xen/arm: Introduce CONFIG_MMU Kconfig option
>>    xen/arm64: Split and move MMU-specific head.S to mmu/head.S
>>    xen/arm64: Fold setup_fixmap() to create_page_tables()
>>    xen/arm: Split page table related code to mmu/pt.c
>>    xen/arm: Split MMU system SMP MM bringup code to mmu/smpboot.c
>>    xen/arm: Fold mmu_init_secondary_cpu() to head.S
>>    xen/arm: Extract MMU-specific MM code
>>    xen/arm: Split MMU-specific setup_mm() and related code out
>>    xen/arm: Fold pmap and fixmap into MMU system
>>
>> Penny Zheng (2):
>>    xen/arm: Rename init_secondary_pagetables() to prepare_secondary_mm()
>>    xen/arm: mmu: move MMU specific P2M code to mmu/p2m.{c,h}
>>
>> Wei Chen (2):
>>    xen/arm64: head.S: Introduce enable_{boot,secondary}_cpu_mm()
>>    xen/arm: Move MMU related definitions from config.h to mmu/layout.h

Except for "[PATCH v6 08/13] xen/arm: Fold mmu_init_secondary_cpu() to 
head.S " where I have a small comment, I am happy with the current set.

I have made the corresponding changes for Arm32 MMU (See 
https://gitlab.com/xen-project/people/ayankuma/xen/-/commits/mmu_arm32_on_arm64?ref_type=heads 
),

and triggered the CI. It looks all good (qemu-smoke-ppc64le-pseries-gcc 
failure seems unrelated).

I have sent out the patches for review so that the maintainers/you can 
have a look and review them

("[XEN v1 0/4] xen/arm: Split MMU code as the prepration of MPU work 
form Arm32").

- Ayan

>>
>>   xen/arch/arm/Kconfig                    |    5 +-
>>   xen/arch/arm/Makefile                   |    1 +
>>   xen/arch/arm/arm32/Makefile             |    1 +
>>   xen/arch/arm/arm32/head.S               |   22 +-
>>   xen/arch/arm/arm32/mmu/Makefile         |    1 +
>>   xen/arch/arm/arm32/mmu/mm.c             |  301 ++++
>>   xen/arch/arm/arm64/Makefile             |    2 +-
>>   xen/arch/arm/arm64/head.S               |  460 +-----
>>   xen/arch/arm/arm64/mmu/Makefile         |    2 +
>>   xen/arch/arm/arm64/mmu/head.S           |  481 ++++++
>>   xen/arch/arm/arm64/{ => mmu}/mm.c       |   84 ++
>>   xen/arch/arm/include/asm/arm32/mm.h     |    1 +
>>   xen/arch/arm/include/asm/arm64/macros.h |   36 +
>>   xen/arch/arm/include/asm/config.h       |  132 +-
>>   xen/arch/arm/include/asm/mm.h           |   28 +-
>>   xen/arch/arm/include/asm/mmu/layout.h   |  146 ++
>>   xen/arch/arm/include/asm/mmu/mm.h       |   41 +
>>   xen/arch/arm/include/asm/mmu/p2m.h      |   18 +
>>   xen/arch/arm/include/asm/p2m.h          |   26 +-
>>   xen/arch/arm/include/asm/page.h         |   15 -
>>   xen/arch/arm/include/asm/setup.h        |    5 +
>>   xen/arch/arm/kernel.c                   |   28 -
>>   xen/arch/arm/mm.c                       | 1212 ---------------
>>   xen/arch/arm/mmu/Makefile               |    4 +
>>   xen/arch/arm/mmu/p2m.c                  | 1736 +++++++++++++++++++++
>>   xen/arch/arm/mmu/pt.c                   |  743 +++++++++
>>   xen/arch/arm/mmu/setup.c                |  372 +++++
>>   xen/arch/arm/mmu/smpboot.c              |  121 ++
>>   xen/arch/arm/p2m.c                      | 1837 +----------------------
>>   xen/arch/arm/setup.c                    |  324 +---
>>   xen/arch/arm/smpboot.c                  |    4 +-
>>   xen/arch/arm/xen.lds.S                  |    1 +
>>   32 files changed, 4222 insertions(+), 3968 deletions(-)
>>   create mode 100644 xen/arch/arm/arm32/mmu/Makefile
>>   create mode 100644 xen/arch/arm/arm32/mmu/mm.c
>>   create mode 100644 xen/arch/arm/arm64/mmu/Makefile
>>   create mode 100644 xen/arch/arm/arm64/mmu/head.S
>>   rename xen/arch/arm/arm64/{ => mmu}/mm.c (60%)
>>   create mode 100644 xen/arch/arm/include/asm/mmu/layout.h
>>   create mode 100644 xen/arch/arm/include/asm/mmu/mm.h
>>   create mode 100644 xen/arch/arm/include/asm/mmu/p2m.h
>>   create mode 100644 xen/arch/arm/mmu/Makefile
>>   create mode 100644 xen/arch/arm/mmu/p2m.c
>>   create mode 100644 xen/arch/arm/mmu/pt.c
>>   create mode 100644 xen/arch/arm/mmu/setup.c
>>   create mode 100644 xen/arch/arm/mmu/smpboot.c
>>
>> --
>> 2.25.1
>>


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:13:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:13:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599486.934935 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhez-0003ZE-6N; Mon, 11 Sep 2023 14:13:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599486.934935; Mon, 11 Sep 2023 14:13:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfhez-0003Z7-1o; Mon, 11 Sep 2023 14:13:05 +0000
Received: by outflank-mailman (input) for mailman id 599486;
 Mon, 11 Sep 2023 14:13:03 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfhex-0003Yx-Pf; Mon, 11 Sep 2023 14:13:03 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfhex-0000S9-Mw; Mon, 11 Sep 2023 14:13:03 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfhex-00024W-CN; Mon, 11 Sep 2023 14:13:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfhex-0006tt-Bw; Mon, 11 Sep 2023 14:13:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=0Xb2p/d3ChXEQFyqwvOR+NxQl5w/dNHcZrtDqdVNWsg=; b=tmz8X1D9o4CG1zFkVWjdWCy03l
	y4GT+MZpOp8EdQlxRZ+SVv7bsDMKACMp91AFBknEcNvQ9r1ahtAKQE7xJAyKcMyUG8nLfyfmy1pj1
	jMZ0Fh/8CSERSHa9lWBgOSi1xg5p2ToqtheGfn4MKkFnkLMSb3R5JbEiXXVaczE/RP7s=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182940-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182940: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=a5cbb5990593559eb9d93ebd1df1e8da0fa5d72b
X-Osstest-Versions-That:
    ovmf=cc26a2cb3162845bf51d41ea8cd1c438ffa6c50a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 14:13:03 +0000

flight 182940 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182940/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 a5cbb5990593559eb9d93ebd1df1e8da0fa5d72b
baseline version:
 ovmf                 cc26a2cb3162845bf51d41ea8cd1c438ffa6c50a

Last test of basis   182916  2023-09-11 03:51:19 Z    0 days
Testing same since   182940  2023-09-11 12:42:16 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Pierre Gondois <pierre.gondois@arm.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   cc26a2cb31..a5cbb59905  a5cbb5990593559eb9d93ebd1df1e8da0fa5d72b -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:35:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:35:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599503.934944 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfi0F-0000wP-Rk; Mon, 11 Sep 2023 14:35:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599503.934944; Mon, 11 Sep 2023 14:35:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfi0F-0000wI-PD; Mon, 11 Sep 2023 14:35:03 +0000
Received: by outflank-mailman (input) for mailman id 599503;
 Mon, 11 Sep 2023 14:35:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8zuN=E3=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qfi0F-0000wB-5i
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:35:03 +0000
Received: from mail-lj1-x22c.google.com (mail-lj1-x22c.google.com
 [2a00:1450:4864:20::22c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 639b69ad-50b0-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 16:35:01 +0200 (CEST)
Received: by mail-lj1-x22c.google.com with SMTP id
 38308e7fff4ca-2be5e2a3c86so67068921fa.0
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 07:35:01 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 639b69ad-50b0-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694442900; x=1695047700; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=Ku2KOBhqYkhO6B029bHAAgjP3gm0xf2OjLf1A/4aqqQ=;
        b=UIZw7mF/CHPl+JMtHtMuSLnqM8RAcesicKCLWAMRES/cX65DNcIEIixBmYEY8AR+cw
         NQvmHqwjmSkEOrtAktochDXb1LBXWp6Prw8AMmfkVd0V4tnwh4YuV7CyCL+7B9qPizsf
         O3sFqrFVWcbDwEcFZRAy+optuuQmsmm1tlN08=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694442900; x=1695047700;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=Ku2KOBhqYkhO6B029bHAAgjP3gm0xf2OjLf1A/4aqqQ=;
        b=dDnOGbCJIshWulGZvu4pfIcC1eGKpPtuQYitLFoh1KNjORUkVQHV75r7keIL0WKd2K
         ctOc2LM81ZVRrPrP+AxmtiNLNPDnzSVLDjXr5nBDKuG3/R+RdTC3FgHuzwQKQrvLXi+o
         XzkHDBGBSGGhyWV7LRDWoo7ODjLNnpezeG4ekgjKspRWAbSCOXYbrCTWQ5jTfp8JqWpH
         86dtbCj5GhDlpGgXUW1Ebl7grJgEcFG44qgQ8ITOoLMn6RE1G5XkwxZOChZHMfkuKU2Q
         qd9ybn9oVoqcBoTTbkufGFr953zrvdX2bWZncQVix6KF0ac9H9F/RwOarJuujD14d82d
         hIug==
X-Gm-Message-State: AOJu0YzVwRKQOLJhq94LMC+Rfa9JLtwT74uotAIuFWim8FCcZ7JiqDqX
	IfrfR+Hvc5mldVxt3mo36BaTwECAjw4KSS9HaR6FyaBSIhlok+skVws=
X-Google-Smtp-Source: AGHT+IHVVhVx9neiqXHCtF6TAGP05x4jWhu95fXrXM/yFopPDqtQ7FrnX1NyuBqUjjSFlzVglCPFaQq7XCHtNMnAY4A=
X-Received: by 2002:a2e:800f:0:b0:2b9:601d:2c0 with SMTP id
 j15-20020a2e800f000000b002b9601d02c0mr3108579ljg.25.1694442900627; Mon, 11
 Sep 2023 07:35:00 -0700 (PDT)
MIME-Version: 1.0
References: <74aa0f95-e059-f6a4-b085-03c7e4b2fceb@suse.com>
In-Reply-To: <74aa0f95-e059-f6a4-b085-03c7e4b2fceb@suse.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Mon, 11 Sep 2023 15:34:49 +0100
Message-ID: <CA+zSX=acfj1E2-mzPFVUJSkWKro71S-dcUj1b4LKz0Aj_icbbQ@mail.gmail.com>
Subject: Re: [PATCH] cmdline: move irq-max-guests doc entry
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>, 
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 7, 2023 at 3:17=E2=80=AFPM Jan Beulich <jbeulich@suse.com> wrot=
e:
>
> ... to adhere to intended sorting.
>
> Fixes: e373bc1bdc59 ("x86/IRQ: make max number of guests for a shared IRQ=
 configurable")

This seems a bit strong, but in any case...

> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: George Dunlap <george.dunlap@cloud.com>


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:36:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:36:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599509.934954 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfi1m-0001d4-69; Mon, 11 Sep 2023 14:36:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599509.934954; Mon, 11 Sep 2023 14:36:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfi1m-0001cx-3I; Mon, 11 Sep 2023 14:36:38 +0000
Received: by outflank-mailman (input) for mailman id 599509;
 Mon, 11 Sep 2023 14:36:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfi1k-0001bU-Uw
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:36:36 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0611.outbound.protection.outlook.com
 [2a01:111:f400:fe02::611])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9c0f8278-50b0-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 16:36:36 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by AM9PR04MB7586.eurprd04.prod.outlook.com (2603:10a6:20b:2d5::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Mon, 11 Sep
 2023 14:36:34 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 14:36:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9c0f8278-50b0-11ee-8785-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Vz4qw3Zsfh+FYGnm5TafrmoePw6kvmt7WfVozq9lcSiJcKNbqtCQqOhsMpUaUwP6xoenZk8zx6JicGToXThP6w7bbp33PO7q5rVdTY6Jmc8OiKJRA1/92OBetR1v5GlBJwRU5xXc5jkmSpxLLEiswNDBXda8pfwgu+0uuWujqKSbI+Cd5BibX3mlH2KAwOPKHI+Yo9x2+YUXuuJA4e7tSCgn+b4n+E0nbVuxAtPDYJucG8vhNiuWl09p81rrqfOahpWgErKA9eWseJYwpsIsO7P1PfpUzARHJYfUD9hX4loWEqIsUiQmtm9ypEVffVPMzY+E14GfLH8MB/CZtYVlUA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bqIdHcZyDR+MR0MB1grWK5WNX9bj/EiMBf/IG+XxCco=;
 b=YmJP4xsze5KCKDW6FhnEyur10MpIZnn47Pe2riGaK2dlcNoqqNsQfqZSeL/8sbZF57+YXPQ3msNreAux230v851sROTawyd49mBAiuwixPfQLbYlIqAzpDhs7Mq1v+SWakvnP5+HmXcPbxbqJdLv9PpkbTb1FAfXDH0phibAIA6Q1kDqoeYl9yrLwSy15AaqE63yn8pS6ocAeAWvOHl4P9lVd4Y/CQ14j0c1aJmnZZZcSuGOmMJlE4xL8JseQwffnXXrDuwv1hAjHeVH1iJdhjjDaxTmRWa2ehiczy25f6yaz5QGJLfU9BIWMa1yHdKv+1CuQYhPiUNzdzb0Gnnw4w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bqIdHcZyDR+MR0MB1grWK5WNX9bj/EiMBf/IG+XxCco=;
 b=nLnKStn0v9CJ9pcb/iNQMdfod4rSIT/PG56wXGVvNP5Cg6wvk9MiqokmxS8V+8aeO+BnrN23ARqAEnoah0qtag//wgl/aP0odQLnZJFI6pZTiydpl60ahSziWv4cqqskzBQYCW3pqHAOnxMBXwo8cEPkj9J8YfOZ3AyKTnTVe93Z7hVe4dzVlCMNVSVx5v/CNJTsIIDvlJHMduUSoavQ5O2EsBC7mLujuhJzM9EPBsTRs6krq14t5hhB+X8+WpLFbDZqoUR4pwnrHeW1GzuIfWGaf4Jctm9hYxa7g+ngMElcBAPx27+C57iKXkbnbzBGSVR9XMl/1Qe8MNYXATnGSw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4edeae5a-4bce-ff1c-199c-243311f3ecbf@suse.com>
Date: Mon, 11 Sep 2023 16:36:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] cmdline: move irq-max-guests doc entry
Content-Language: en-US
To: George Dunlap <george.dunlap@cloud.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <74aa0f95-e059-f6a4-b085-03c7e4b2fceb@suse.com>
 <CA+zSX=acfj1E2-mzPFVUJSkWKro71S-dcUj1b4LKz0Aj_icbbQ@mail.gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <CA+zSX=acfj1E2-mzPFVUJSkWKro71S-dcUj1b4LKz0Aj_icbbQ@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0216.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ac::20) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AM9PR04MB7586:EE_
X-MS-Office365-Filtering-Correlation-Id: 36fb6db9-b531-4ff3-0981-08dbb2d47f51
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qIRZZFCc2IkQ7s5nTnZz6m3j46PFaEq607esqgDjlQtel2FR39fQv/bVdEXzveOWU4LlBi6hs1K4G8H0pFZx+edncRAZGAZRB8QCSeri1pEMETJHsoHWvz3wpIESN2p0xkHoGgzFQHDi0cG6aXqXDFMHdWVVKRVAqfqRf88PrxXzpwSn3XAKN3qopRiGQ+3FZFccwyhgZgS+/HFWv5qGGR+l6oLly5hQ04BlYx0kNuHX8MyYKUD/sO12kAPEchkj+Qmx/eJPVfRa0MtsL+ewDQL6C6v0eq4c/8era2eGRZqEwJxikX97wQ9EUl9QItYbf8AhW3lhf3jOV1Od0MtsZKakL2vchUICvL5LlNBx9rCf3Sdydg2gRTuj4BqiKZhVxot1yCTnxlpnmheonfU0p7+onny1rj0VNSyeJ+VeuE/URhT6FOgdz6KMEfIAxmcSzPNgM3ADe1qjVTcmJwriycVwy2VTthHH3EDTUHki/j6Mbdua4e/179p0TRzn5qeBvVeMB01V2AKrexFYiGSB9WCn78thFuSxOOU+C7Ys4CKBBkHWst4Ptfk8yIzfWJVRLS/cX0oMElvma8QkJsEg8YMPin/BEgMcmxhLlySeZTqERmzNeUEZeWiCTgvP1Ir2kJ/nxx0V8DgZjsYWUqq+xA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(346002)(396003)(39860400002)(366004)(1800799009)(186009)(451199024)(53546011)(6486002)(6506007)(6512007)(86362001)(31696002)(38100700002)(36756003)(2616005)(26005)(66946007)(66476007)(4744005)(66556008)(54906003)(316002)(6916009)(41300700001)(2906002)(4326008)(8936002)(8676002)(31686004)(478600001)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U08rdklKdjJDTHA4R2tOZGpjdGFzK3FFTE1pM3A5M0RIZkFTSUkveGNDMGxE?=
 =?utf-8?B?NDdWbWFxaTAzRTRRalRRN0UxaDZEcm9pQXZjaEs5bmF0K3pZeFR1TWpPTWhD?=
 =?utf-8?B?RmRaUGlWOHEyL2J6dVVOM1VZL0I0MHFIcmZ5RUgzV3RYZlA2akF1TVQwVE1K?=
 =?utf-8?B?S2ovRVBpZVR6MU5SVGdSZnhkSnRiMHZnczcvNWsyc041QU5LNk1ia0JhZEkz?=
 =?utf-8?B?eURtODFKZU1uMmIyOHNrVW5LM1BVYjVMMzBRN1ZJekIxMkRvbEFUR3AvUTF5?=
 =?utf-8?B?RTJWVWczRHl0emUrM2xDQWh4aFAwT1Q0aE40VUozcDJPRFZhdWtxREhyajBm?=
 =?utf-8?B?TUozRkVGTEdCdUtPQ2ZOd0luWnhtWTRXaVRuV2FSbWhyTVk2cGNpaEZWL3BQ?=
 =?utf-8?B?S0FXTVFBbXJlRStVcjI2SmRCODdueFI2aWRRSXliM0xFOHJJWEJsWmlYTFAx?=
 =?utf-8?B?YXdqYTZBR1l1c1BKdFBRcVdPTkU0RlFLd0RCMXk2SDlmdC9sN1c5Wkl3amtv?=
 =?utf-8?B?S3lsMzluTW5hSWZiOFVkelA2b3pGVVZMTXpsdDE5ME51cW10M2lUS1YxRTRC?=
 =?utf-8?B?YXVrTkduTkhLRGpXWndheGpKaTdhYnlJT2RzK2x4a2RibGswdVRGNUhwVlUv?=
 =?utf-8?B?RUdyek9SWE84anZOcXRvZ3p2bGVzS3pxVzZMMmlFNE9KalFwZzdBYzU2Y0hv?=
 =?utf-8?B?TTVKRWtzTUVweGg4bnpnRHQ4Q1Fxam1FNWdZcGxrTEJjeERHY3paOG10bHpL?=
 =?utf-8?B?c3o3d1NTUTUybzJmM1ZGN1luV04vbmF6bDhpMjRiRUI3UDhYeEkyQm5ITFlr?=
 =?utf-8?B?cVVyUHN4VVU5MTgwSmlNcVE1TndOeVZabWVObU9GeTVpNHZ2anZtTGY0OGxk?=
 =?utf-8?B?UEdjdFhQNHZtNEJONVFOWWZQOVFPcCsvK2VMU3J5YTlGK0pzc3M3WXVGOHhP?=
 =?utf-8?B?Rk5laE5pTEVrajRJWDIxbXY2aTY5akFZY3AwMi9QcHhHckNnSk82alVEZjQw?=
 =?utf-8?B?R3Q4aDJWMHFFZ0U1aC80Q1Y5S0picFdJREJkSHp3UVFLNHkvVjVPZ1lFOUYv?=
 =?utf-8?B?NWM5U0NoNDdaS3Z3aVVmVU0weit1c1VTZG9PMzhHMzhHdHRWekJyLzdiSkRJ?=
 =?utf-8?B?YU5ldkxIM0NwTWJBS1h0U1hDTk9zWWVDWlBuQkl5aWZ4bitCclV4eEhjM0xO?=
 =?utf-8?B?SHlKWnB6M0l5OUgyTElreVpyTUp2SVZ0NHA5VllyUk1JMmJ2WjJxZ0JzTk02?=
 =?utf-8?B?eVU1OXZGSWRqYTNuRG1yK2NONERRcHBrK3J4VTFZQllXVkhSQXFua2s3UVdt?=
 =?utf-8?B?Rk9CYkR3aGZMd0JkR0NaNWhyQVJoS01vOElhcEN4MWlSTzFBYnpWbjlINUZk?=
 =?utf-8?B?dXpLL0tMS2ZLWEpPRDY4OTBSanV0ZE5RQlViM3NxRXpET29vNGJHNnNzWC9T?=
 =?utf-8?B?MGxyRTRDdVAwSmtwY1h4U2ZxazhEcVg4RHlzeFAxQWtWaUNsbnRxdmdUL2to?=
 =?utf-8?B?YjR2TWZBdUZPYzV5bVU2TmZtRHBNZ3Z6YWFiblBTNmgrc0gvS1dyMVFESDBq?=
 =?utf-8?B?cWtiWVQ3cWlydmpuM3BRbFMvditMemNnMEdJVHhvbm44U2VMRVZST2h5YXVC?=
 =?utf-8?B?c3ZTUTJPZW9kcDh1ZzBnTVRUMTA2RnNvMmVqaloxK013MC84aS9DWW9ZSWJh?=
 =?utf-8?B?bmJ3Wlo0Rk1EREE1Njc2cEsreTJ1eGk0UFNaVndPeVZ4bmErOUdqSGJEQzd3?=
 =?utf-8?B?aGIvM2M4RmgzZ3h2bFRyRWcwUHdnMVJNYjdOOWJHbmxETEczN1VMSHpIUkx2?=
 =?utf-8?B?ZmwvcFJvZWNtZ0E4TzBlbWJWeHZYNDNPSHQwWGZyV3dGK0d0K0kweCtWZ2tL?=
 =?utf-8?B?aUxCQmZBY1ZRRzg1WFBuU2JFeEFUcFF3SFZiY2JGbEZiT0hvOHNhT3RzUDJK?=
 =?utf-8?B?Sm93enNWMk5IY2pYUE5qYXZmU3laN2VRTHBXQ2Q3aXpNWk42UUhVT0JpbGdX?=
 =?utf-8?B?VEl0UUl1NG5jSFhoZ1I5ZGZhL3RtNWtva1hJazFrOTlyc09hbFhycU0xSW5C?=
 =?utf-8?B?VXQrWUNYTklMMXBBSzAwTmZmN2wxTUdOWlpnUG94czZDMTdYcFRzM3FrWnJT?=
 =?utf-8?Q?yDzvv8KfmJEDY3MsY6qZ8t4Su?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 36fb6db9-b531-4ff3-0981-08dbb2d47f51
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 14:36:34.3077
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: U2nJJox4YKZEQtoZUX6McuT7ZOKzM4pe+oHdXNJaGrZzYGhbcf5y8PjNVXo20BPD8SeX0tn/aC+ccF12/4w0sQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB7586

On 11.09.2023 16:34, George Dunlap wrote:
> On Thu, Sep 7, 2023 at 3:17 PM Jan Beulich <jbeulich@suse.com> wrote:
>>
>> ... to adhere to intended sorting.
>>
>> Fixes: e373bc1bdc59 ("x86/IRQ: make max number of guests for a shared IRQ configurable")
> 
> This seems a bit strong, but in any case...

I can drop it if you think that's better. I wasn't really sure either way,
to be honest.

>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Acked-by: George Dunlap <george.dunlap@cloud.com>

Thanks, Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:45:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:45:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599516.934965 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiAd-0004Jo-4l; Mon, 11 Sep 2023 14:45:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599516.934965; Mon, 11 Sep 2023 14:45:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiAd-0004Jh-1z; Mon, 11 Sep 2023 14:45:47 +0000
Received: by outflank-mailman (input) for mailman id 599516;
 Mon, 11 Sep 2023 14:45:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfiAb-0004Jb-Le
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:45:45 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on062b.outbound.protection.outlook.com
 [2a01:111:f400:fe02::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e1d5387e-50b1-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 16:45:42 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by VE1PR04MB7232.eurprd04.prod.outlook.com (2603:10a6:800:1af::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 14:45:39 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 14:45:39 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e1d5387e-50b1-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fHMLNF8PbJZhWXjOpewmT484gC2ldl1r+vk8bkebOTCZrjkKBGdUjm2SmsOXPCMaV7KOzHM2bOGTc+nteLgQGcN5Pm0xqQkP1PTO9lT03as06pg/epEeb30IUopRwDL/IA0JsndorLux6TVwOxcUchiPE+Du5oCX/adnlgpQpBGgGtH6XjMT68Gx4LI2PelEMqq3YiXqm5IoCpMm6T6xIG4EDeQChyKJsbxPgp8dJjjd0JTGZVaizBTUhAVp//SOHEacMOp2aGX8hwb5+asCehAw4+n0nlyPQWlmga0KVappCMU5GdQKhpolQUsCtiHVkk9lZaSAZDlqESLpc4fK/Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ewtLHnMnrNfimB7NMdSTg4yG96Ai1fQkN9bSyPxqjsk=;
 b=HJS88hxmCwWallt1WDYxbLGB/o/m0PzJMjsQSC/GCmbCLLwLJNn+00MQmIfVjO6ap2pzkwA1nO5ni3/lCq0LOzZslyShEmOrnu73MSg7kk8IYl4W8SVNkyACQjBVW+2kUw/rS0wKeqydIPk4DSoBesciXrfZi4nO623QO+a9XnmRWitu6frStXRa+KOUqX0dfyBsnM6hLZh5zpmODjupe9k5FERWR+sho+e5Cwfz/RZiJiOU2ffa0GJDl4fKQYL8fmw8BriVkMccjHeVP3eMlnAonBu20jay+BVj4RaVsmYHFIFOYoHv50fsL8goefo2rDimnuuaRdRzZRJXtjuvLw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ewtLHnMnrNfimB7NMdSTg4yG96Ai1fQkN9bSyPxqjsk=;
 b=lH2iCRVKz8Mgzc1aVMS4f9sO0bg9SNg6YgrYi6ENpvA99t4UE91nH6BYLGVieE6M/IzxnFDk0ABpEioQe4YJCtdA0H2a1Y1HClWP0ve79CCSlXJAlNVzyl1e98qq4tKb4lluZt5m8nMozEJmE0spT4nbpkzsAb2btVtlmt2QNI1dbpUu2ULuutlSg97aJHepqiodO7bBsvzGy3xKMqxequ/DuZbUEFbHjp9Z/I9o8BsZx2qNfwFxeOYlXRpN4qLXZyEocsPOI1JlWq0b904WHjtB3Tfc/VYDUN1lAF4bdGIv2/0wNTwxDD2U6neRnA07pszpIj3amrS/c8OH8V+AHA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1868edde-1b7e-84c6-6881-ac3b98934932@suse.com>
Date: Mon, 11 Sep 2023 16:45:37 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 3/5] xen/ppc: Define minimal stub headers required for
 full build
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
 <ec21e13fd3de4142d305924a6f5d55ad15745731.1694211900.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ec21e13fd3de4142d305924a6f5d55ad15745731.1694211900.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0046.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:92::20) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|VE1PR04MB7232:EE_
X-MS-Office365-Filtering-Correlation-Id: 92aed111-e2f8-4b44-eab8-08dbb2d5c40b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Z+rm9qhopWRiIOiFfsaZbEtEq60okDeZb00AS8dVmzGLjBG1eo/6tGWeLEXyNYQPUBH003CnFsbfO9YtNGyBSdz+0UNv2oJsglrL3WpqWgLhnwrBOQd0lLre4ICSmACImVi9/I/ij4dW8vshKQgCngQMIN5Y/xO6dkc0YvEOIGpEwheg7ziisIyIBGPqN+KwF2iJwyV+PlXDmhtKUbN/+p5zlyY6PofUY4ghXPpuaLkKPppf2h05BNXB6MSt8WGx1qTqro5gmNXuup8KE835wUu9ZK9a2it3JJhbsSV8m6X7XnRR254dyhGauWSUtdlZ1y+Ozdxsa7+S6mfE3fJSYpJQDer1MLWMafaNfVapUENTNx5++nw2fcCemk+A5JeeDLveHWDaO3FVDr/8l3k2vZ8PwaCJrQyUjHRwOkKT+SQoMTQabk5kS2gUDHtjhpz4f1Vdjh7/oTBmH+7FndszEtJHae/f0xwspc1ifoZcopRX9JvhXau74PLYpf+vaQBRlAZuV3/qBQN5yV6RvS+uBVp5sDoVFkJ2j1lZVLMLFfrmNRjMf8ziyRE4/lQInr6e8zkgD7IxyEXsd/62mKhDGBNrms5G9p6/Bpsn/iEzIaoh+dMD6rARUXJKaDX7FDYA+E3atlR1u6ZY9jVa6ERgkQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(136003)(346002)(376002)(39850400004)(451199024)(1800799009)(186009)(5660300002)(66946007)(6916009)(316002)(41300700001)(54906003)(8676002)(8936002)(31686004)(4326008)(66556008)(66476007)(478600001)(36756003)(38100700002)(6486002)(53546011)(2616005)(6506007)(86362001)(2906002)(31696002)(26005)(83380400001)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?K1RpbGQrRFNSYWZhdjJZT0VQWXF2SmxMaVdCWlhwRnFRd1V4VW0vSDJoUW9J?=
 =?utf-8?B?dkxPM1FTMElwc2ZlbktuZGd2T1pKcHpJYjlZV1JTMnc2aXBMR3pXc1pha25L?=
 =?utf-8?B?YW1RRnZEaklEWUxhS0ZhamxxWEsrTERjWE5uTm1NOTA2Wit6Tm1hdDVycTk1?=
 =?utf-8?B?d2lDUWF0dGpDT2hlZ250LzRYWmpDYTVRRVJSRXlWeW5wczIrd1pQdmRRMGts?=
 =?utf-8?B?b21OalJRbXhIRFhPSVVpVFhvcTBtT2NmRkZZVVdQNURVUDd4V0ZhRXp6eDJR?=
 =?utf-8?B?THRvUnl3MFhyUGFwdmUxWjM3QlFvR0dCNFk2Nm1zMjR5a3pYS0VGa29CcGZY?=
 =?utf-8?B?akMrUGpLV3ZvVE4yVXpybzY3WE9FZXQ2bkNEUTVveFdGbSt3TTNJWDNvMTdI?=
 =?utf-8?B?Q0hRRmx3UVl2Wk5veXI3dWMydnlhKzZZR1JjVTZYMXd1cWhXYjBuak0yeGVO?=
 =?utf-8?B?Yjc3a0RnMHcxWFRpRm9VQ2xOS0tVK2tGeXlDSHhQTzFyYW9vcHBKTkRGMW9U?=
 =?utf-8?B?RnMxM0VjSjZDdVpOTVRCVGRjVy8vQXE4V1FLMTJQZGxscHpweW85b1RFU1h4?=
 =?utf-8?B?ZUpjV3N3R3kwUlVVUVZGSFN6V3BQZUJkVFlNUWo1QU15bXFuNVlMZTNSYXBV?=
 =?utf-8?B?M1lQV25yd28rQnhiYlR5b2NoZGdMa214TkVPYXBvdFNMU3QxN3R4WHVrU0pP?=
 =?utf-8?B?MVBpTkNIN2hBQTRFZjZsS2wvQVVnMDk0R25rSnBrMGxqZ3lvdFBBdGlodWtl?=
 =?utf-8?B?aW9FbzA4MlZKN0JoZm40cVpzZ2JQeEVVTVFyZytZeWVkdEFiZHdxcXhXZzg0?=
 =?utf-8?B?ZmdQRWFoRTBKZFVLb1JEdWo3WklBMFg0N0E3ekZtQy9PNExmdUpXV1dSYVlD?=
 =?utf-8?B?N1MrYStTZ0lQWHc3aHMzRmI2NXhFU3JzRkRzRmRjR2VjZS9udWhrN05iN3BL?=
 =?utf-8?B?NzE0eEw3SVM3YWYzSGJXZk1DOGF1Q3NpeW00WGN1WlBYR095MVFSNFJpQUNV?=
 =?utf-8?B?Zk1BS0cyYnNJVS9IRmpMejh2c28xcG41S214WHZXQnRQQUdPRGQrZ2ZzcjZC?=
 =?utf-8?B?V1dOMjJPenpma2VYMmNkbnJsQ3VMdC9lZzFrY01UTDlZbFppTll0aHlBOTFG?=
 =?utf-8?B?VGZPeS96QlRMQkVDUVJSLy84OWtMdngzTGtwVXZXanpHR0ROSlRZcDljTTkr?=
 =?utf-8?B?OXU0b0JCbDQyRjMzbTYwU29SVlI0b01ZRVJaVGh5OEUvZC8wZ1JPN1ZOakpK?=
 =?utf-8?B?Y1hPbVBjL3dhMTVFR3dRQmZYQk5qUzdqZ1N0eTZ5VmxSUnBrN281TDBsYmV5?=
 =?utf-8?B?WGZmdEZNTXJVMi9CaEttSjlRRG9uSFFKOUJ3bVpZejVya0piU3hJcnJPZzdK?=
 =?utf-8?B?S3ZxUTFNWEFLRTRBR0Zac3lUQzNDZWFkV0VKVDBkM3FEVDdVc25FVFV2Ynpm?=
 =?utf-8?B?TmZacW5laVF1SVphYk9xRysyYkVwTXI0bGszSE1PUnhYWUVtVUVLbHZQRmZq?=
 =?utf-8?B?S2JiZTZUdnIzYzhTVnZNWWYvUHRlN3hFNWZGRkJWeEpldlMwQTdtNyswSVB2?=
 =?utf-8?B?RXhoVkwwV0JjRzRuMlFkTVJiNmorb1JTVVBtc0RSTEV3YmI4bEZJZlFzdGg0?=
 =?utf-8?B?amlTcFJmZmtTZnNLUnNaelZVeGVPRkRScFNaRzU0RG12Y0Q0dHdyRkpyTjcw?=
 =?utf-8?B?NDdsTUJDdFhLc2lqcVFra0hhMGVWa3c5NVZ4bTJJczQ5TTExQnBaUHlQbkRV?=
 =?utf-8?B?YXBNeGNrTFM2ME1BSTFocGRiOG5ZdjBGckxvNkpsWWR1UWhib3hnYlk4eXBq?=
 =?utf-8?B?UmpkbGhYYkl6RVBmcFpKUWFMWVVNRU8vNWhXaWlTeEFLc2VvNEJWU0M0MWE4?=
 =?utf-8?B?bWJUN3JLSy9xQ1pvWVA0TE9FbDV3VUxpNklUYlEwWEVQZG5vVjNPK2N6M3Bp?=
 =?utf-8?B?Unlra3MvUklaa3NyN1NWL1MwRGtlOFlSMnQ3MTFUQmg2WFd2dm5kQW5laFhM?=
 =?utf-8?B?d0RSZW9xVndqMlB5cDJ0U3NOdUIvWW16UEVNMTNaTHhlQnZVbHl0WkFwakdl?=
 =?utf-8?B?UXNEZHJmNVJ4UUw3YWpDQytOa045dldWdGZHVlp3RFdieCs4R1VQaG94a2lB?=
 =?utf-8?Q?J0NS2sgN0rmCsW1ZZsKEkdr1Y?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 92aed111-e2f8-4b44-eab8-08dbb2d5c40b
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 14:45:39.0876
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ZlSteG6/mgx37pQ7eYoTTD/Crvw2aQr3hxPUF6LXAowR3c5Iv7GKsRz5FabkXmxwHNSkL+eQfWnlsFfZ9yc+WA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7232

On 09.09.2023 00:50, Shawn Anastasio wrote:
> Additionally, change inclusion of asm/ headers to corresponding xen/ ones
> throughout arch/ppc now that they work.
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>

Acked-by: Jan Beulich <jbeulich@suse.com>
albeit ...

> 
>  xen/arch/ppc/Kconfig                     |   1 +
>  xen/arch/ppc/include/asm/altp2m.h        |  25 +++
>  xen/arch/ppc/include/asm/bug.h           |   9 +
>  xen/arch/ppc/include/asm/cache.h         |   2 +
>  xen/arch/ppc/include/asm/config.h        |  10 +
>  xen/arch/ppc/include/asm/cpufeature.h    |  10 +
>  xen/arch/ppc/include/asm/current.h       |  43 ++++
>  xen/arch/ppc/include/asm/delay.h         |  12 ++
>  xen/arch/ppc/include/asm/device.h        |  53 +++++
>  xen/arch/ppc/include/asm/div64.h         |  14 ++
>  xen/arch/ppc/include/asm/domain.h        |  47 +++++
>  xen/arch/ppc/include/asm/event.h         |  36 ++++
>  xen/arch/ppc/include/asm/flushtlb.h      |  24 +++
>  xen/arch/ppc/include/asm/grant_table.h   |   5 +
>  xen/arch/ppc/include/asm/guest_access.h  |  68 +++++++
>  xen/arch/ppc/include/asm/guest_atomics.h |  23 +++
>  xen/arch/ppc/include/asm/hardirq.h       |  19 ++
>  xen/arch/ppc/include/asm/hypercall.h     |   5 +
>  xen/arch/ppc/include/asm/io.h            |  16 ++
>  xen/arch/ppc/include/asm/iocap.h         |   8 +
>  xen/arch/ppc/include/asm/iommu.h         |   8 +
>  xen/arch/ppc/include/asm/irq.h           |  33 +++
>  xen/arch/ppc/include/asm/mem_access.h    |   5 +
>  xen/arch/ppc/include/asm/mm.h            | 243 ++++++++++++++++++++++-
>  xen/arch/ppc/include/asm/monitor.h       |  43 ++++
>  xen/arch/ppc/include/asm/nospec.h        |  15 ++
>  xen/arch/ppc/include/asm/numa.h          |  26 +++
>  xen/arch/ppc/include/asm/p2m.h           |  95 +++++++++
>  xen/arch/ppc/include/asm/page.h          |  18 ++
>  xen/arch/ppc/include/asm/paging.h        |   7 +
>  xen/arch/ppc/include/asm/pci.h           |   7 +
>  xen/arch/ppc/include/asm/percpu.h        |  24 +++
>  xen/arch/ppc/include/asm/processor.h     |  10 +
>  xen/arch/ppc/include/asm/random.h        |   9 +
>  xen/arch/ppc/include/asm/setup.h         |   6 +
>  xen/arch/ppc/include/asm/smp.h           |  18 ++
>  xen/arch/ppc/include/asm/softirq.h       |   8 +
>  xen/arch/ppc/include/asm/spinlock.h      |  15 ++
>  xen/arch/ppc/include/asm/system.h        | 219 +++++++++++++++++++-
>  xen/arch/ppc/include/asm/time.h          |  23 +++
>  xen/arch/ppc/include/asm/vm_event.h      |  49 +++++

... this file now wants dropping, and xen/arch/ppc/include/asm/Makefile
instead indicating to use the asm-generic variant.

Note further that xen/arch/ppc/include/asm/numa.h has a leftover Arm
reference that likely wasn't meant to be there.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:48:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:48:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599523.934975 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiDD-0005HE-Ig; Mon, 11 Sep 2023 14:48:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599523.934975; Mon, 11 Sep 2023 14:48:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiDD-0005H7-FS; Mon, 11 Sep 2023 14:48:27 +0000
Received: by outflank-mailman (input) for mailman id 599523;
 Mon, 11 Sep 2023 14:48:25 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qfiDB-0005Fp-PS
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:48:25 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfiDB-0001BE-G4; Mon, 11 Sep 2023 14:48:25 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfiDB-0001Bs-B2; Mon, 11 Sep 2023 14:48:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=CSbViKDu4HaFSAdWUxFex4CcIa31b/J+kRzCQER+1do=; b=7KVq4dxiU7/Rs7/DZ+SOcBRh3R
	LWNhobilXZEC81KWZbyb/zPbg3lVanj0tgQ9QdJH9ZjpkyQb3Gj6bMa1UXTUPtOZ5odfTpBQeBOL1
	BONPc5qUcuA3rgziAe2WH64in6/CYAr5es7pe7hPVpzPah6pD6twl4dVrhbC7Nocc22M=;
Message-ID: <e24a7d3a-ca18-474b-bce2-84b97512c58e@xen.org>
Date: Mon, 11 Sep 2023 15:48:23 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
Content-Language: en-GB
To: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911123401.27659-1-michal.orzel@amd.com>
 <366e89e3-bc3d-4c54-b1ad-8147abbabdc7@xen.org>
 <042fae56-e8e2-c079-2686-d27c5469b7fc@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <042fae56-e8e2-c079-2686-d27c5469b7fc@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 11/09/2023 15:01, Michal Orzel wrote:
> Hi Julien,
> 
> On 11/09/2023 15:14, Julien Grall wrote:
>>
>>
>> Hi,
>>
>> On 11/09/2023 13:34, Michal Orzel wrote:
>>> Host device tree nodes under /chosen with compatible string
>>> "xen,evtchn-v1", "xen,domain-shared-memory-v1" are Xen specific and not
>>> meant to be exposed to hardware domain.
>>
>> So, how dom0 is meant to discover the static event channel, shared
>> memory it can use?
> 
> For static shared memory:
> A node with this compatible is only meant for Xen since it contains information like host-guest mapping.
> Xen creates a different node for guests under /reserved-memory.
> Linux binding:
> https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindings/reserved-memory/xen,shared-memory.txt
> Xen node generation:
> https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/domain_build.c;hb=HEAD#l1407

Ah good point. I agree with this one.

> 
> For static event channels:
> This is a bit weird so let me put it in a different way.
> 1) Xen does not create any node for static evtchn for domU.
> 2) The booting.txt states:
> There is no need to describe the static event channel info in the domU device
> tree. Static event channels are only useful in fully static configurations,
> and in those configurations, the domU device tree dynamically generated by Xen
> is not needed.
> 3) The "xen,evtchn" property specifies the local port as well as phandle of domU node.
> dom0 does not have access to domU nodes, therefore exposing a property with not existing phandle
> makes me think that:

You have a point for the phandle. Yet, this is the only way dom0 can 
find the event channel today. As we exposed it, I don't think we can 
remove it until we have a proper replacement.

We might get away if the feature is not supported it at all. But there 
is no statement, so it is a little unclear whether the feature is meant 
to be in technical preview.

In any case, I think the commit message deserve a bit more explanation 
as hiding "xen,evtchn-v1"/"xen,domain-shared-memory-v1" is not 
uncontroversial.

> a) point 2) applies to dom0 as well and we should hide this node or > b) there is a missing property for both dom0 and domUs to tell them 
about static local port in a proper way
> 
> Exposing Xen specific evtchn node only to dom0 and not to domU with required information happen to be found as first value
> in xen,evtchn is definitely not a proper solution.

My concern here is we exposed such information to dom0. So as I said 
above, I don't think we can simply remove it as there is no other way to 
find such information today.

It doesn't matter that it wasn't exposed to domU.

> Also, there is no Linux binding for it.

AFAIK the static event channel support was not added in Linux until very 
recently. Also, I think the kernel doesn't directly use the static event 
channel. So it is possible, this is just an overlook.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:51:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:51:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599529.934985 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiFo-0006zw-UY; Mon, 11 Sep 2023 14:51:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599529.934985; Mon, 11 Sep 2023 14:51:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiFo-0006zp-RE; Mon, 11 Sep 2023 14:51:08 +0000
Received: by outflank-mailman (input) for mailman id 599529;
 Mon, 11 Sep 2023 14:51:07 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qfiFn-0006zh-NF
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:51:07 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfiFn-0001Eh-96; Mon, 11 Sep 2023 14:51:07 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfiFn-0001FK-3f; Mon, 11 Sep 2023 14:51:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=E/vGDCnyziZ9DN2/60mAFB/TvQ7v5NzwLeCXU/vy/c8=; b=m4LOUmIjw6jT0qHTGWNkIAu12v
	SF8LD/FRw52JU+gXARUuEjE4UzeZhMEETsZynxfZh7B7Yim5CciPAcDt8FiQ20J+UoriTBMhfjO5C
	MI3SxdR8kqmKNQH/AmoR/xVWTRsKL+GrK7LwHf1Id5eXXiDmd1dEQqaeu78W1WU2Nmv4=;
Message-ID: <ec41bd05-4a25-438b-84cb-ca86d7bf34d8@xen.org>
Date: Mon, 11 Sep 2023 15:51:05 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v6 08/13] xen/arm: Fold mmu_init_secondary_cpu() to head.S
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, Ayan Kumar Halder <ayankuma@amd.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Wei Chen <Wei.Chen@arm.com>,
 Penny Zheng <Penny.Zheng@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-9-Henry.Wang@arm.com>
 <19a8b434-3b2d-9e3d-fc05-fc2828d1abbd@amd.com>
 <CE8AF1AE-8F01-4DD8-86EE-12C4AD18E4A0@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <CE8AF1AE-8F01-4DD8-86EE-12C4AD18E4A0@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 31/08/2023 10:16, Henry Wang wrote:
>> On Aug 31, 2023, at 17:12, Ayan Kumar Halder <ayankuma@amd.com> wrote:
>>
>> Hi Henry,
>>
>> On 28/08/2023 02:32, Henry Wang wrote:
>>>
>>> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
>>> index 33b038e7e0..39218cf15f 100644
>>> --- a/xen/arch/arm/arm32/head.S
>>> +++ b/xen/arch/arm/arm32/head.S
>>> @@ -83,6 +83,25 @@
>>>           isb
>>>   .endm
>>>
>>> +/*
>>> + * Enforce Xen page-tables do not contain mapping that are both
>>> + * Writable and eXecutables.
>>> + *
>>> + * This should be called on each secondary CPU.
>>> + */
>>> +.macro pt_enforce_wxn tmp
>>> +        mrc   CP32(\tmp, HSCTLR)
>>> +        orr   \tmp, \tmp, #SCTLR_Axx_ELx_WXN
>>> +        dsb
>>> +        mcr   CP32(\tmp, HSCTLR)
>>> +        /*
>>> +         * The TLBs may cache SCTLR_EL2.WXN. So ensure it is synchronized
>>> +         * before flushing the TLBs.
>>> +         */
>>> +        isb
>>> +        flush_xen_tlb_local \tmp
>>> +.endm
>>> +
>>>   /*
>>>    * Common register usage in this file:
>>>    *   r0  -
>>> @@ -254,6 +273,7 @@ secondary_switched:
>>>           /* Use a virtual address to access the UART. */
>>>           mov_w r11, EARLY_UART_VIRTUAL_ADDRESS
>>>   #endif
>>> +        pt_enforce_wxn
>>>   
>>
>> Can you move ^^^ to before "#ifdef CONFIG_EARLY_PRINTK" so that the MMU related functionality are bundled together?
>>
>> Also AFAIU, mov_w has not effect on pt_enforce_wxn().
>>
>> So that I can create a function "enable_secondary_cpu_mm()" - similar to one you introduced for arm64
> 
> Sure, I am good with this if other maintainers do not have any objections.

I am objecting. It would be quite handy to print a message on the 
console to indicate that we are enforce WXN. So we want to update UART 
address (stored in r11) before hand.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 14:57:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 14:57:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599536.934994 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiLc-0000b3-Fd; Mon, 11 Sep 2023 14:57:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599536.934994; Mon, 11 Sep 2023 14:57:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiLc-0000aw-D1; Mon, 11 Sep 2023 14:57:08 +0000
Received: by outflank-mailman (input) for mailman id 599536;
 Mon, 11 Sep 2023 14:57:08 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qfiLb-0000aq-Vv
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 14:57:07 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfiLa-0001Kf-Ml; Mon, 11 Sep 2023 14:57:06 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfiLa-0001Uv-HR; Mon, 11 Sep 2023 14:57:06 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=ks3Cotsyg/iW2fH1VQDIsrdl3mxR0bp1duvTjvj2Pg0=; b=qietmcgAZSxzs9k50jPYGuUZsG
	RXRHLm1TcOqsyglLu4MZDqJoe2kdNkMciB12GUC+t1u9e8RD1Dchu9TA3IlN86fXWatu7bSNRnIod
	4glmzO+ARyQ5TkIqcaZUCEsfuYn3vxHrS11yqRjtlkxlfSvaimpWZZTNsR2v3UXUsY68=;
Message-ID: <1aac4c29-f1c6-44f0-81e1-efef505ed7e6@xen.org>
Date: Mon, 11 Sep 2023 15:57:05 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] include: make domain_page.h's stubs properly use
 type-unsafe MFN <-> virt helpers
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Shawn Anastasio <sanastasio@raptorengineering.com>
References: <9b5d517b-fbc0-d9ce-d6be-d4b8e3c0cc35@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <9b5d517b-fbc0-d9ce-d6be-d4b8e3c0cc35@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jan,

On 11/09/2023 07:38, Jan Beulich wrote:
> The first of the commits referenced below didn't go far enough, and the
> 2nd of them, while trying to close (some of) the gap, wrongly kept using
> the potentially type-safe variant. This is getting in the way of new
> ports preferably not having any type-unsafe private code (and in
> particular not having a need for any overrides in newly introduced
> files).
> 
> Fixes: 41c48004d1d8 ("xen/mm: Use __virt_to_mfn in map_domain_page instead of virt_to_mfn")
> Fixes: f46b6197344f ("xen: Convert page_to_mfn and mfn_to_page to use typesafe MFN")
> Reported-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 15:01:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 15:01:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599542.935005 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiPr-000369-1n; Mon, 11 Sep 2023 15:01:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599542.935005; Mon, 11 Sep 2023 15:01:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiPq-000362-U3; Mon, 11 Sep 2023 15:01:30 +0000
Received: by outflank-mailman (input) for mailman id 599542;
 Mon, 11 Sep 2023 15:01:30 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfiPq-00035w-7U
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 15:01:30 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0623.outbound.protection.outlook.com
 [2a01:111:f400:fe02::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 15a47b7f-50b4-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 17:01:29 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by VI1PR04MB6895.eurprd04.prod.outlook.com (2603:10a6:803:13b::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Mon, 11 Sep
 2023 15:01:24 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 15:01:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 15a47b7f-50b4-11ee-8785-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QtyZac2883dqnYA4sgSE4aaK2S4Gk+ZaksGC2ihZeJArpNaXjIKVrzdiR/5TmIrTu3NkiSJj6/I6F+9L2DWTjdBB7r+BuZ4aFc7ZjevfK4ly1onV76L3OMynF+iXByICitebFGbCbKFQngrxeDfiUbIkuMmNcHxfRktHT/0X6RELXnK3m9a/JO7uLNuFCL8ftmVWAXbJYSmnJyVuT1BIgmYNElrprStu7S2/+qGdSErwc4TmQYgdKdU4t1fVpAhIYewNYGxyao8ck2M92Fd7VhqTTDp87SasBD0BDOKQDLA5vqoqV3rHv//PVlusCWMc0Is/mikrh1OX5NvvGy154g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8wZzragR6dHZQaqQMxHMRGLaSjpZaxuGWKw5+kLPuGQ=;
 b=WeLF1ld7B6F0yQxnBoRGldrKAqE8Y/zuq7yunL1z58oWDaQwf14qe4pNczSkJQ3rI1ocOl7YYDUDU6gk6cgIa0MstUw7bUAUQvEcvzS63aru9ctlco89irS5Jb0Ttksb++6+/SUyUDzgq74hWBfTzrn3yaTHTMyyeg/uHVjOumg9+hbmj7xs9hF8FcdJAisflaatiszPkNikQ8AfqYy4PWqOzVEDnDDrRZJF4Qp+1Ndfh7JHuc5ZTHTlHWVau87tCAZGTP/GD/KWa184Mkm6xycwh9xWlHnLEtq4n/EO0pTAbGZZ+yY7u7EyOnm6J0tCMhvb3RGEknbkdnTB7e8mnA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8wZzragR6dHZQaqQMxHMRGLaSjpZaxuGWKw5+kLPuGQ=;
 b=jJ8oBLGlaScT/Ao+oTVFVVRaQQcgwYd9iSjLtrd8qMqIUj5HUaSxHoMELlL+ZUqjrHL3oWKSIZNEi3Nhup2pJB7VtpTNupaI6MGxwgN8Xue9hSm/sb+p5UV3ol1O2AMRKvljcxR0EHOSzyxTpp7Pdee+Cc4zjuX7c3YDyhIo4rPVfMkDLyo2w3aiHTpHZA1Sl6C5UJ7/m31tqEDHkDsERox5CkqgljX5ndp/svhQsUefdDyOElehYR2TQ4YjdJak9fF8K7hyo904wlsMsDagZ0rZs3xcs78A5Vt8iJPEZId69SREquyfVdRRLFfyHzKtTY/AycbGGAvgpsZPDRt7rQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
Date: Mon, 11 Sep 2023 17:01:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2 for-4.18?] x86: support data operand independent timing
 mode
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Henry Wang <Henry.Wang@arm.com>
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0011.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1d::17) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|VI1PR04MB6895:EE_
X-MS-Office365-Filtering-Correlation-Id: c920b283-087c-47d9-cc23-08dbb2d7f783
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mDuiHkHOmwE7+kcsMoJLPw8HSmax5T3PCtw6mNU040OvA+fPzQuoV/ihLRzCIkVYSDlPJjCn6ZYzyMShgHqfsxbp7Ijvvt7pD5sqnHnZLJ+zxfxxaluV39bCxwLwmklrSzIutWve5W0LI9aSUz0f8JV2cN6xTPrAeu/KsKNrxLv/96rJ11J+KyWVqNpwdZGZw/XgvZmxJiR14RagIRdbxNqz4Uh0VXIdiRXIESDyTHu8vd/DNnMv6tqAPNf/f3temPjXHGo4kHBByd6iFkVrPFSprAllO5RqvYQmNW2CzvjL2vtdD/wDgOJnEAZA0kVmUL4zq9CmHUHPUg4r5/9t9SvtQ1Qci4a72VWFusRY5GLcEUoKTF1SL6LWLMv4qek+UFd1zwknP9w3fGBHc8aT/G7uYdC2GhIsnCuOcabOd1r2Yq02RbnL/3PlVRWbSnhnSY5bTJRS7qBubOUuLj6FWCfDs+s6VgpYagF5r2HXtwjKnsoYXx49y+A5BIxZ3wLSAH4jLlJeiyMhnqDieBzeIYKP15SVbFxscELK6IWWQPtpUjYQ5e30SGlM2h6lQOTIgyX3OePBvhbhYAsTJTvzG8fh0UcTTasEJ8ciJpkiVfKDlTzTrAjgo9RJw/IhPeQQP5olUFiHmEFPqbgdItFgAQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39850400004)(136003)(346002)(366004)(376002)(396003)(186009)(1800799009)(451199024)(8676002)(8936002)(4326008)(83380400001)(478600001)(966005)(54906003)(6916009)(66556008)(66476007)(66946007)(2616005)(41300700001)(26005)(6506007)(6486002)(316002)(6512007)(2906002)(38100700002)(5660300002)(31696002)(36756003)(86362001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dEFWNTBEUDEzMFZad3NENjRVU3dDeDE1WFNHVnFvZEZEeTJMaXQrc2c2elBy?=
 =?utf-8?B?NEhUejZxbWg3QTh6Z2ZDdFlVcWJFVWJUNGxVaFdCd1paTCtLd2dBUlRMMXVO?=
 =?utf-8?B?RnpEeDBxU3ZCUTV5bW4zcG9wSnZtMURGZUJFOWdqWjlqZUtMSy9pL1dOODQw?=
 =?utf-8?B?MnNmWFdiUUUrRk9Nb2hyOVJCcDdTcXVuRUhmZHZzYkVDa1VzUE9Dak9zTVhO?=
 =?utf-8?B?cHFGancycTVKMCsyZkpvdWRtV0NsOVJKRjBYcDcrTEo3bjZtRzJCcFJKVFdj?=
 =?utf-8?B?Vm5laUNwckdpWlFiVFkvQmdBWStPWjlvUGlHTVBsb0tXNm9mU3ozSDFQOHNw?=
 =?utf-8?B?NU1pL3hXd2xOOXhRUi9SN0dYaUV4ZHNZb1VCQ0NtSElXNW83T1VUeTUvbXE4?=
 =?utf-8?B?aFMzcmVZbE9peDZtM1pGNUNoVFNvektST2t3eDBRSTVTZXQ5VEtWOE1nMmc4?=
 =?utf-8?B?S1JJckpyYURJTWpYRWFDL0VhUERhWW9lZ0hEZGd1N3Q2WEhHbjAycUdSc21P?=
 =?utf-8?B?NzYvd0lQakJBWmVVU0c2TGpPSk5tTlEyM2NzYXFGcVJ2akt5ZUwwaVZZWU15?=
 =?utf-8?B?WGxFLzVTdzA1RDdBYUN5TFJhdmFvTU9rcHVQSHFTTFJjd1pOK2VFSW5UdFlk?=
 =?utf-8?B?MTJPTldoeWpXYWRrRVZWWGk2MGxCYkxsVDI4NzMreUorakhoMThGWWhGWVRH?=
 =?utf-8?B?SUVVQmJtRGlZbUQ0MDZVY3RmSEV4allVVXRtU1BIenpiYVVBM0c2bkt5Zi8w?=
 =?utf-8?B?NXRDdG1pdHhUR3ZPdDE4amhCa0V0Z20ySkF3aFlzYkJXL0xyNCs5SU83VXJm?=
 =?utf-8?B?aGEwT2N1NEdidVpva3BpVU0waitibzc1WnNnTm40dllzRWp3ZEh2UVZiL1Z6?=
 =?utf-8?B?OHJZNk41ampvdGFQOWwvQlpPNUtjRk1uYkQreXBvQlY0ODY5Z1JOQ3pYUDZa?=
 =?utf-8?B?N25sN2xYRy9VTWZjN0h3UExNeXR5ck1XZ3VVdlk5VjBnTzBDK1NzN1FobUpH?=
 =?utf-8?B?bWN5UThPOFROQUduNUIzZ2RSek41VUdNWkJUeGFraGs2YWVCb0hNWGhERU4v?=
 =?utf-8?B?MzhiR0RhcGdYbXFWZm1yamdKRFE1aTZSMEQyVkJobkFuaW93c0N5YlJUWXgv?=
 =?utf-8?B?NnZCU0c5cUcwZEcwUXRJY1VoNnNmTXpJWDF3eXM3S3RFQzNlSVoyaEVjQVJm?=
 =?utf-8?B?K2lwQVhMUWZNRlVDSW9renl2UXJ4bmU3bndocEhWL2c0Wi9YQmpuTnZla1dZ?=
 =?utf-8?B?V0VNRE5XMHp2YXNnV0FXcUlUL05jUTFzRHVDb0diWjlQb1lXVU00M2tkWEY5?=
 =?utf-8?B?bGZIOE1jV0dSQU1jZ1hZeWpDaHFrQWliTkdFTWhvV2tjUmdzeDVqMVU1L3Ew?=
 =?utf-8?B?RlM5bzk1WlN2dlpZMU5kUmx4K0xFN0cxcHFocTBLTnU3TFRpdFhsdXp6RWMy?=
 =?utf-8?B?b0JEdWpCcjFjRFF0UHQvMC9EUEhqV2dhdERTT2JPZi9HaW9id01lanBlU3JN?=
 =?utf-8?B?OUxFR1NnbUMza3lpd2lVY0srV1dKbUhmZjBpd0tQT1ptckN4TWt0Y1QwRUdV?=
 =?utf-8?B?dExmSTFqbFdNYnZ2b1NFSjkvcVZsWi9LTnd4YkcxNVpXY0t0YXM1aHNXTlAz?=
 =?utf-8?B?eGRKYzhyclF3c29jZFh4OEUySG5MeEpBVWxOd3VvUmw3SG5Rb25MUDZIdlpZ?=
 =?utf-8?B?Y0RUOVdnTlJJUXhOb2ZNMWNEZXgyVGI0S3Axd21mRFhLRkdrQzhudWRkamNF?=
 =?utf-8?B?SkNLMHhwUjhVTEhKRllaLzk0SjdDbXRjYzcySnc1NGJoRnlWTnhjaUZEbWpT?=
 =?utf-8?B?S3U4RkJqL1ZOTld4VElQTGlGMmtNcURBZkVkZmJyVVVnQzBoY2d3NHliYW9p?=
 =?utf-8?B?cCt6SGZVbGV5T3RuVHljOHpYNEpINy9ROHJ5THlUMGFCblo5NVlNTVF4T01H?=
 =?utf-8?B?U01iTDEzRTA5RVZqQjd4eU4zb3JxNDN4RXh3ZEtqREtrcUdDT2pQZ29QRWhs?=
 =?utf-8?B?d0tyQTh0bnRxQWVHZGFHRGhhMUZUVk1sQVd4cXU3eWp2KzR3cC9PQU16cHY3?=
 =?utf-8?B?b2x4QjdvRUNBcEN6d1h1ZWhRcnBUbDJDaHNGaWY2dVZDVTB3Q3FQbEVKWjRW?=
 =?utf-8?Q?NidSj/jOQcB6u95jfOGSua35K?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c920b283-087c-47d9-cc23-08dbb2d7f783
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 15:01:24.4418
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 85b5pw6VMmZx+mgzhqxrT030KacAwDDNysloDlb5LzIr73Z7BK/marpE0ljsocdvUkF9yXUQUMTn6rxYRMY11g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB6895

[1] specifies a long list of instructions which are intended to exhibit
timing behavior independent of the data they operate on. On certain
hardware this independence is optional, controlled by a bit in a new
MSR. Provide a command line option to control the mode Xen and its
guests are to operate in, with a build time control over the default.
Longer term we may want to allow guests to control this.

Since Arm64 supposedly also has such a control, put command line option
and Kconfig control in common files.

[1] https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/best-practices/data-operand-independent-timing-isa-guidance.html

Requested-by: Demi Marie Obenour <demi@invisiblethingslab.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
This may be viewed as a new feature, and hence be too late for 4.18. It
may, however, also be viewed as security relevant, which is why I'd like
to propose to at least consider it.

Slightly RFC, in particular for whether the Kconfig option should
default to Y or N.

I would have wanted to invoke setup_doitm() from cpu_init(), but that
works only on the BSP. On APs cpu_init() runs before ucode loading.
Plus recheck_cpu_features() invoking identify_cpu() takes care of the
BSP during S3 resume.
---
v2: Introduce and use cpu_has_doitm. Add comment "borrowed" from the
    XenServer patch queue patch providing similar functionality.
    Re-base.

--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -788,6 +788,14 @@ Specify the size of the console debug tr
 additionally a trace buffer of the specified size is allocated per cpu.
 The debug trace feature is only enabled in debugging builds of Xen.
 
+### dit (x86)
+> `= <boolean>`
+
+> Default: `CONFIG_DIT_DEFAULT`
+
+Specify whether Xen and guests should operate in Data Independent Timing
+mode.
+
 ### dma_bits
 > `= <integer>`
 
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -15,6 +15,7 @@ config X86
 	select HAS_ALTERNATIVE
 	select HAS_COMPAT
 	select HAS_CPUFREQ
+	select HAS_DIT
 	select HAS_EHCI
 	select HAS_EX_TABLE
 	select HAS_FAST_MULTIPLY
--- a/xen/arch/x86/cpu/common.c
+++ b/xen/arch/x86/cpu/common.c
@@ -204,6 +204,28 @@ void ctxt_switch_levelling(const struct
 		alternative_vcall(ctxt_switch_masking, next);
 }
 
+static void setup_doitm(void)
+{
+    uint64_t msr;
+
+    if ( !cpu_has_doitm )
+        return;
+
+    /*
+     * We don't currently enumerate DOITM to guests.  As a conseqeuence, guest
+     * kernels will believe they're safe even when they are not.
+     *
+     * For now, set it unilaterally.  This prevents otherwise-correct crypto
+     * code from becoming vulnerable to timing sidechannels.
+     */
+
+    rdmsrl(MSR_UARCH_MISC_CTRL, msr);
+    msr |= UARCH_CTRL_DOITM;
+    if ( !opt_dit )
+        msr &= ~UARCH_CTRL_DOITM;
+    wrmsrl(MSR_UARCH_MISC_CTRL, msr);
+}
+
 bool opt_cpu_info;
 boolean_param("cpuinfo", opt_cpu_info);
 
@@ -589,6 +611,8 @@ void identify_cpu(struct cpuinfo_x86 *c)
 
 		mtrr_bp_init();
 	}
+
+	setup_doitm();
 }
 
 /* leaf 0xb SMT level */
--- a/xen/arch/x86/include/asm/cpufeature.h
+++ b/xen/arch/x86/include/asm/cpufeature.h
@@ -201,6 +201,7 @@ static inline bool boot_cpu_has(unsigned
 #define cpu_has_if_pschange_mc_no boot_cpu_has(X86_FEATURE_IF_PSCHANGE_MC_NO)
 #define cpu_has_tsx_ctrl        boot_cpu_has(X86_FEATURE_TSX_CTRL)
 #define cpu_has_taa_no          boot_cpu_has(X86_FEATURE_TAA_NO)
+#define cpu_has_doitm           boot_cpu_has(X86_FEATURE_DOITM)
 #define cpu_has_fb_clear        boot_cpu_has(X86_FEATURE_FB_CLEAR)
 #define cpu_has_rrsba           boot_cpu_has(X86_FEATURE_RRSBA)
 #define cpu_has_gds_ctrl        boot_cpu_has(X86_FEATURE_GDS_CTRL)
--- a/xen/common/Kconfig
+++ b/xen/common/Kconfig
@@ -41,6 +41,9 @@ config HAS_COMPAT
 config HAS_DEVICE_TREE
 	bool
 
+config HAS_DIT # Data Independent Timing
+	bool
+
 config HAS_EX_TABLE
 	bool
 
@@ -175,6 +178,18 @@ config SPECULATIVE_HARDEN_GUEST_ACCESS
 
 endmenu
 
+config DIT_DEFAULT
+	bool "Data Independent Timing default"
+	depends on HAS_DIT
+	help
+	  Hardware often surfaces instructions the timing of which is dependent
+	  on the data they process.  Some of these instructions may be used in
+	  timing sensitive environments, e.g. cryptography.  When such
+	  instructions exist, hardware may further surface a control allowing
+	  to make the behavior of such instructions independent of the data
+	  they act upon.  Choose the default here for when no "dit" command line
+	  option is present.
+
 config HYPFS
 	bool "Hypervisor file system support"
 	default y
--- a/xen/common/kernel.c
+++ b/xen/common/kernel.c
@@ -28,6 +28,11 @@ CHECK_feature_info;
 
 enum system_state system_state = SYS_STATE_early_boot;
 
+#ifdef CONFIG_HAS_DIT
+bool __ro_after_init opt_dit = IS_ENABLED(CONFIG_DIT_DEFAULT);
+boolean_param("dit", opt_dit);
+#endif
+
 static xen_commandline_t saved_cmdline;
 static const char __initconst opt_builtin_cmdline[] = CONFIG_CMDLINE;
 
--- a/xen/include/xen/param.h
+++ b/xen/include/xen/param.h
@@ -184,6 +184,8 @@ extern struct param_hypfs __paramhypfs_s
     string_param(_name, _var); \
     string_runtime_only_param(_name, _var)
 
+extern bool opt_dit;
+
 static inline void no_config_param(const char *cfg, const char *param,
                                    const char *s, const char *e)
 {


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 15:06:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 15:06:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599549.935014 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiUO-0003mL-L0; Mon, 11 Sep 2023 15:06:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599549.935014; Mon, 11 Sep 2023 15:06:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiUO-0003mE-IT; Mon, 11 Sep 2023 15:06:12 +0000
Received: by outflank-mailman (input) for mailman id 599549;
 Mon, 11 Sep 2023 15:06:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Y5ji=E3=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qfiUN-0003m8-C4
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 15:06:11 +0000
Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com
 [2a00:1450:4864:20::429])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bdba4fff-50b4-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 17:06:10 +0200 (CEST)
Received: by mail-wr1-x429.google.com with SMTP id
 ffacd0b85a97d-31f915c3c42so1978176f8f.0
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 08:06:10 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 s1-20020a5d69c1000000b0031aef72a021sm10260907wrw.86.2023.09.11.08.06.09
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 08:06:09 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bdba4fff-50b4-11ee-8785-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694444770; x=1695049570; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=I1wFqZ0vUhQ3Kw2y9Y4Xy6M8x6wwmZgiqaLjaUHvpUk=;
        b=DnbVFWMA7WWXQPR3AttzxTD1F5ffFe2X9JUFa/t74q4Zc+m41/IAGY8tXQni2tho2L
         euU/QQRMq0FdKD1wG7MxvKOYn+9gdlnp996t/bZA53Mjs6ECPmrSlJEc0DJAtFqf9tfX
         bS2QqjBMwckevVdETsNO3Ms6CN729b1fcCBBc=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694444770; x=1695049570;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=I1wFqZ0vUhQ3Kw2y9Y4Xy6M8x6wwmZgiqaLjaUHvpUk=;
        b=PnqaqSV3884ZNdJquWytTTWtQoW+6a1ktFRK+r5coaBu0ymFEAqvow1K3HHXqPaIXJ
         +WdRAIj5ofobT+TTehVO6/7AS16GKyGd3KwDT7HNfhFSmIxHsD7/YP4+4fvn2fCBA0UK
         SiAzeS7WsskwRloIJrBAoCM1K1tdS9bvGEINKCLpeGeJoB1pTZzCZ9qBXGUFyEykrh08
         DKsIJxhGji88f/0x1fgR/21UuDqMIjnMNDWbwhIfGSV/JR7emJIgKX87v1Mh4TuIqXH1
         F6WFHcgPnvGxX+BGm5CE/OQCsBbX81yBNuVbT9hav6nMiXk1VD3PbXDlVc2TT/L01heJ
         nH/Q==
X-Gm-Message-State: AOJu0YzsWU7frc+4WOBi1+n/OFqoREIAAJVm9Wi+ch6pG0yx92DQxII3
	rqhZxbbEQndxSMrMeVki6SpmlQ==
X-Google-Smtp-Source: AGHT+IEmgAXs2aL7elMYfw6W9wTLP6J07I0er+xVJTkxxHHVUCnEuFlA97JWfQV7runl7zQa8dBs6A==
X-Received: by 2002:a5d:63c3:0:b0:31a:d266:3d62 with SMTP id c3-20020a5d63c3000000b0031ad2663d62mr7614224wrw.54.1694444769716;
        Mon, 11 Sep 2023 08:06:09 -0700 (PDT)
Date: Mon, 11 Sep 2023 16:06:08 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Cc: devel@edk2.groups.io, Ard Biesheuvel <ardb+tianocore@kernel.org>,
	Jiewen Yao <jiewen.yao@intel.com>,
	Jordan Justen <jordan.l.justen@intel.com>,
	Gerd Hoffmann <kraxel@redhat.com>, Julien Grall <julien@xen.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] OvmfPkg/OvmfXen: Fix S3
Message-ID: <2811343a-555b-491a-8bcf-15b4bb218749@perard>
References: <c79e568e0d1c85bef9a2efc4c854de8f80ea1487.1689244868.git.xenia.ragiadakou@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <c79e568e0d1c85bef9a2efc4c854de8f80ea1487.1689244868.git.xenia.ragiadakou@amd.com>

Hi Xenia,

On Thu, Jul 13, 2023 at 01:47:12PM +0300, Xenia Ragiadakou wrote:
> Currently, resuming an S3 suspended guest results in the following
> assertion failure:
> ASSERT MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.c(41): MemoryLength > 0
> This happens because some parts of the S3 suspend and resume paths
> are missing in order for S3 to work. For instance, the variables
> mS3AcpiReservedMemoryBase and mS3AcpiReservedMemoryBase are not
> initialized, regions that are used on S3 resume are either missing
> or not marked as ACPI NVS memory and can be corrupted by the OS.
> This patch adds the missing parts based heavily on the existing S3
> implementation of other virtual platforms.
> 
> For S3 support, the provision of fw_cfg is required in order for
> suspend states to be retrieved.

Is it possible to have S3 work without fw_cfg? We normally disable
fw_cfg in QEMU when using it to start a Xen guest. We only enable fw_cfg
if we want to boot a kernel directly in HVM (like PV guest, called
Direct Kernel Boot in xl.cfg(5)).

But even trying the direct kernel boot method, I've got issue trying to
resume a suspended guest. I ran into:
    ASSERT /root/build/ovmf/UefiCpuPkg/Library/MpInitLib/MpLib.c(2093): (LibPcdGet64(9U) & (0x00000001 | 0x00000002)) == (0x00000001 | 0x00000002)

By the way, I'm using `xl` to boot a guest to test this patch.

So, I've got some question, which version of QEMU do you use, which work
with this patch?
What toolstack do you use to boot a guest?


Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 15:09:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 15:09:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599556.935025 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiXg-0004hm-4e; Mon, 11 Sep 2023 15:09:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599556.935025; Mon, 11 Sep 2023 15:09:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfiXg-0004hf-0a; Mon, 11 Sep 2023 15:09:36 +0000
Received: by outflank-mailman (input) for mailman id 599556;
 Mon, 11 Sep 2023 15:09:34 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yA6l=E3=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qfiXe-0004hZ-H5
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 15:09:34 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20603.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::603])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 353ed6fc-50b5-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 17:09:31 +0200 (CEST)
Received: from DM6PR04CA0002.namprd04.prod.outlook.com (2603:10b6:5:334::7) by
 SN7PR12MB7836.namprd12.prod.outlook.com (2603:10b6:806:34e::9) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.31; Mon, 11 Sep 2023 15:09:24 +0000
Received: from DS2PEPF00003441.namprd04.prod.outlook.com
 (2603:10b6:5:334:cafe::e5) by DM6PR04CA0002.outlook.office365.com
 (2603:10b6:5:334::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 15:09:24 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS2PEPF00003441.mail.protection.outlook.com (10.167.17.68) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.17 via Frontend Transport; Mon, 11 Sep 2023 15:09:24 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 10:09:23 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 11 Sep 2023 10:09:22 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 353ed6fc-50b5-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hW0dgST4+6w02ZPzogDzvpQBy+B+T3ya4e/PawkIQfHuxJqjK4HrCnxabuXMjgePigVX4VYBtoqMTlM3pBPIC7jW8IJcdpAWyPxe3yFc2ma93rqyzHSF9NPHxdsYkayqW0Z4NwCQt7FuhE6fhZOGct061i46I4sL3B3IVHNnAJl+jgTWyp0FNT1vcd3s5P9GFtgLavwkjqIqmPV2ZvU4CrTGLrfMA/hG4CMtAlYVUu4MzQAFCWQgYWvfUJJV5FuD7cQCkRk8eR/xsZqN4xV0AZosBV+gwyOZRfckveH5rptNBbrlkv6qtYFZgrSW0T8zeEU3QztCfp9X2FHLUDhI4Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Oob/dHXeE0V4XLQTxks9Be2TyQEvor5CFlGj2/oHXuA=;
 b=eW6WxlwZT2LRSVQt0mrOS3hKvJbhHM3RwnZIZcDPRftILPBdvZqDJ3P0OP5GOG3Bo499Rn8s7T/qjr3nKKgwjn03Yl9AJHc56LbGJ52tp1R4oum3HZS2UvoDP7F2/lK13bSEEEDeQ62wENbyL3KVt24TuVAjwds/lVJdpsJ2oQPIq9qXkgtt3E6cv7uo+Uc+vIHPcJ6sofNJZAuUpqlgttZ5AccdUHECpx/23igibfOb7XW0CS0lWL3Y5go/r9vmSPpCZCj9dVYAlhkNA6ezaMj5s9CYX0wgE1ttsRPIKWeXuTuYyzdsRLbuDjWv5A+CnFdSGh2PjqbrdtKZFF0OKA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Oob/dHXeE0V4XLQTxks9Be2TyQEvor5CFlGj2/oHXuA=;
 b=bz+oQ5iLNMnBV38IdVucdc5KsWXmwIjQYi3CLSRc//yTm7p4msWr0GyOEM+ANP0JeJI1/E/wY2Pm4yzJGnCMeIsDiU15ALMI+qs7J3ZSR8RQovl7L7wr1abp8vGh28Tqv3hmOjMGMpUZiXRXUJm9t5gIffAEIRYN/y7V5hDdroE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <faf253c3-2c99-9380-c120-a2dd3110b796@amd.com>
Date: Mon, 11 Sep 2023 17:09:22 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
Content-Language: en-US
To: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911123401.27659-1-michal.orzel@amd.com>
 <366e89e3-bc3d-4c54-b1ad-8147abbabdc7@xen.org>
 <042fae56-e8e2-c079-2686-d27c5469b7fc@amd.com>
 <e24a7d3a-ca18-474b-bce2-84b97512c58e@xen.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <e24a7d3a-ca18-474b-bce2-84b97512c58e@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF00003441:EE_|SN7PR12MB7836:EE_
X-MS-Office365-Filtering-Correlation-Id: e7e430a1-4f46-4192-f238-08dbb2d915c0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	LxTzfKCM6N7jxEh2pFwjZ9OZLbxMOVrtiYjLLg1nkCwIGeVfjmdnVHX2G/8L1E2W+jJr7cqLSnrJH92KBKde3PQkZImMONxdyJByB6lLaPb/THEM+7U3nUV/u8BShk6WIpU2b/IoMMxeABSYp+lKFAW9+5eylr0XuT0LYTIZg3jAm+QBA+YMZeOh6iyyy0j1aABpWBtxKjwxbF6e10xopu9dbHxDMKJb0YHqXU13B5Bb5gcnfavwqRNfEfWTirYFQOuLZ6ddyglm/MGqexE6bk3bEAqLfEkSy53uDGIwovYbhg+AWI+K33tFD14NiDHMSIGKfaJDjJnkzVuoajTN9zYSsPq4LgHFkk/r7kpR0zcnsbI08SoS01NO4wZDeJ6i3mD+RJl8zJ0wIVP5xBkTte1gWhkF/ZsT5D2Xw3FUfcR8zc6iK5D+TCbZ7UH9DUgQv5kqDBOHa8HDIfhtO9HfRtv5/V7M7lA+5oAZ2TdDAYHGh6nC6z3Oyv0v/vvzyOi+mb3wDreXhvNZvZ4lDwiqlOCWiHLJSQ9JnzXRfESNftsLc67GLLi9N4FwvL8I6jio+d5KihOPQFyDg1v10HklVTRCUrZfK2maoXBGKeZnteFkbdlyEIjNGLbMES/DDhWrqH2CUOakebg9aGD52V+aBIsxy2dgv1k6aJZtsnNfKbU4SiDVaGalHOpSWDDFeOHuVVMw5bVIGZNrDALYWO2Zo2WOZMTIMsOOkIzzQVl3z7PwFqSFbkK0hROqD9+XBVosRlTRZcfvtfOS2cWz9GX5lTMMVsqOjx8Bw7zM0oeyppHA60G25NqDxek+m9xpi7IYW+TH5rmeLt7ReZPVZ5+pDw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(39860400002)(396003)(136003)(82310400011)(186009)(1800799009)(451199024)(36840700001)(46966006)(40470700004)(40460700003)(53546011)(83380400001)(82740400003)(356005)(81166007)(31696002)(86362001)(36860700001)(47076005)(36756003)(2616005)(336012)(426003)(26005)(40480700001)(31686004)(316002)(16576012)(41300700001)(4326008)(70206006)(8676002)(54906003)(966005)(70586007)(110136005)(44832011)(2906002)(5660300002)(478600001)(8936002)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 15:09:24.4889
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e7e430a1-4f46-4192-f238-08dbb2d915c0
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS2PEPF00003441.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7836



On 11/09/2023 16:48, Julien Grall wrote:
> Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
> 
> 
> On 11/09/2023 15:01, Michal Orzel wrote:
>> Hi Julien,
>>
>> On 11/09/2023 15:14, Julien Grall wrote:
>>>
>>>
>>> Hi,
>>>
>>> On 11/09/2023 13:34, Michal Orzel wrote:
>>>> Host device tree nodes under /chosen with compatible string
>>>> "xen,evtchn-v1", "xen,domain-shared-memory-v1" are Xen specific and not
>>>> meant to be exposed to hardware domain.
>>>
>>> So, how dom0 is meant to discover the static event channel, shared
>>> memory it can use?
>>
>> For static shared memory:
>> A node with this compatible is only meant for Xen since it contains information like host-guest mapping.
>> Xen creates a different node for guests under /reserved-memory.
>> Linux binding:
>> https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindings/reserved-memory/xen,shared-memory.txt
>> Xen node generation:
>> https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/domain_build.c;hb=HEAD#l1407
> 
> Ah good point. I agree with this one.
> 
>>
>> For static event channels:
>> This is a bit weird so let me put it in a different way.
>> 1) Xen does not create any node for static evtchn for domU.
>> 2) The booting.txt states:
>> There is no need to describe the static event channel info in the domU device
>> tree. Static event channels are only useful in fully static configurations,
>> and in those configurations, the domU device tree dynamically generated by Xen
>> is not needed.
>> 3) The "xen,evtchn" property specifies the local port as well as phandle of domU node.
>> dom0 does not have access to domU nodes, therefore exposing a property with not existing phandle
>> makes me think that:
> 
> You have a point for the phandle. Yet, this is the only way dom0 can
> find the event channel today. As we exposed it, I don't think we can
> remove it until we have a proper replacement.
> 
> We might get away if the feature is not supported it at all. But there
> is no statement, so it is a little unclear whether the feature is meant
> to be in technical preview.
> 
> In any case, I think the commit message deserve a bit more explanation
> as hiding "xen,evtchn-v1"/"xen,domain-shared-memory-v1" is not
> uncontroversial.
> 
>> a) point 2) applies to dom0 as well and we should hide this node or > b) there is a missing property for both dom0 and domUs to tell them
> about static local port in a proper way
>>
>> Exposing Xen specific evtchn node only to dom0 and not to domU with required information happen to be found as first value
>> in xen,evtchn is definitely not a proper solution.
> 
> My concern here is we exposed such information to dom0. So as I said
> above, I don't think we can simply remove it as there is no other way to
> find such information today.
> 
> It doesn't matter that it wasn't exposed to domU.
> 
>> Also, there is no Linux binding for it.
> 
> AFAIK the static event channel support was not added in Linux until very
> recently. Also, I think the kernel doesn't directly use the static event
> channel. So it is possible, this is just an overlook.

I've found this thread in which Stefano, Rahul and Bertrand agrees on not exposing
any dt property and the rationale behind:
https://patchwork.kernel.org/project/xen-devel/patch/4836304496e6fbbea41348ed8cc9fcf6b0f3e893.1648049827.git.rahul.singh@arm.com/

I would not call exposing node to dom0 as something done deliberately given that it happens automatically by copying. So my understanding is
that we did not want to expose any node and dom0 case was overlooked (since done automatically).

Exposing half the interface (from system POV) in a way it should not be done (phandle) is not great IMO.
In any case, if you insist on keeping xen,evtchn, I can leave with it.

This feature is marked as tech preview with no Linux binding in place so I would not be worried.

~Michal


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 15:13:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 15:13:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599562.935035 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfibS-0006WY-Jf; Mon, 11 Sep 2023 15:13:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599562.935035; Mon, 11 Sep 2023 15:13:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfibS-0006WR-H1; Mon, 11 Sep 2023 15:13:30 +0000
Received: by outflank-mailman (input) for mailman id 599562;
 Mon, 11 Sep 2023 15:13:29 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qfibR-0006WL-SM
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 15:13:29 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfibR-0001n0-HU; Mon, 11 Sep 2023 15:13:29 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfibR-0002Je-Bl; Mon, 11 Sep 2023 15:13:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=1K4A3mQdOf873QVrb8d4E0WIeE4ATceIZQdq/E4iz/c=; b=oKS9y6wvkEobQm9qYnBFMgm4qQ
	zKLKR9B7hsXDjNPtItudYRSyymo9K7jewTddeXjppRmSQGXxdpsV+GXDW7C7zYAFiQ/xDHQNKMNrl
	o8acLZUCyC+tRUG/SnbBOv5gmlI9XCf/ucHIj6DVQV3KIYPkpw9eIT/ckeMD3TKIcjp4=;
Message-ID: <d526b697-ca64-473d-8a82-72b9052487fa@xen.org>
Date: Mon, 11 Sep 2023 16:13:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH RESEND v2 2/2] xen/arm: Enlarge identity map space to
 127TiB
Content-Language: en-GB
To: Leo Yan <leo.yan@linaro.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Alexey Klimov <alexey.klimov@linaro.org>
References: <20230909083410.870726-1-leo.yan@linaro.org>
 <20230909083410.870726-3-leo.yan@linaro.org>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230909083410.870726-3-leo.yan@linaro.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Leo,

I know you said you will respin the series. I'd like to leave some 
comments to avoid having another round afterwards.

On 09/09/2023 09:34, Leo Yan wrote:
> On some platforms, the memory regions could be:

Can you add some details in the commit message on which platform you saw 
the issue?

Also, in v1, the problem was also depending on the firmware version. Do 
you know if it fails booting on a new or old firmware?

> 
>    (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
>    (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
>    (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
>    (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel
> 
> In this case, the Xen binary is loaded above 2TiB.  2TiB is the maximum
> identity map space supported by Xen, thus it fails to boot up due to the
> out of the range.
> 
> This patch introduces several macros to present the zeroth page table's

Typo: s/zeroth/zeroeth/

> slot numbers for easier readable.  Based on the defined macros, it
> enlarges identity map space to 127TiB, which can support the memory
> space [0x0 .. 0x00007eff_ffff_ffff] so has flexibility for various
> platforms.

Reserving 127 TiB for just the identity mapping is quite a lot. How did 
you decide the limit? What limit do you need on your platform?

> 
> Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
> Reported-by: Alexey Klimov <alexey.klimov@linaro.org>
> Signed-off-by: Leo Yan <leo.yan@linaro.org>
> ---
>   xen/arch/arm/arm64/mm.c           | 12 ++++++++----
>   xen/arch/arm/include/asm/config.h | 15 ++++++++-------
>   xen/arch/arm/mm.c                 |  2 +-
>   3 files changed, 17 insertions(+), 12 deletions(-)
> 
> diff --git a/xen/arch/arm/arm64/mm.c b/xen/arch/arm/arm64/mm.c
> index 78b7c7eb00..802170cf29 100644
> --- a/xen/arch/arm/arm64/mm.c
> +++ b/xen/arch/arm/arm64/mm.c
> @@ -40,8 +40,10 @@ static void __init prepare_boot_identity_mapping(void)
>       clear_page(boot_second_id);
>       clear_page(boot_third_id);
>   
> -    if ( id_offsets[0] >= IDENTITY_MAPPING_AREA_NR_L0 )
> -        panic("Cannot handle ID mapping above 2TB\n");
> +    if ( id_offsets[0] >= XEN_IDENTITY_MAP_L0_END )

I don't see the value of renaming IDENTIY_MAPPING_AREA_NR_L0 to 
XEN_IDENTIY_MAP_L0_END. See more below.

> +        /* 1TiB occupies 2 slots in zeroeth table */

I don't understand how this comment is related to the message below.

> +        panic("Cannot handle ID mapping above %dTiB\n",

The value is unsigned, so this you should use "%u". Also we have been 
using "TB" in Xen rather than "TiB". I would rather prefer if we keep 
the same for consistency even if this is not totally accurate.

> +              XEN_IDENTITY_MAP_L0_END>>1);

Coding style: please add a space before and after >>.

>   
>       /* Link first ID table */
>       pte = mfn_to_xen_entry(virt_to_mfn(boot_first_id), MT_NORMAL);
> @@ -73,8 +75,10 @@ static void __init prepare_runtime_identity_mapping(void)
>       lpae_t pte;
>       DECLARE_OFFSETS(id_offsets, id_addr);
>   
> -    if ( id_offsets[0] >= IDENTITY_MAPPING_AREA_NR_L0 )
> -        panic("Cannot handle ID mapping above 2TB\n");
> +    if ( id_offsets[0] >= XEN_IDENTITY_MAP_L0_END )
> +        /* 1TiB occupies 2 slots in zeroeth table */
> +        panic("Cannot handle ID mapping above %dTiB\n",
> +              XEN_IDENTITY_MAP_L0_END>>1);

Similar remarks here.

>   
>       /* Link first ID table */
>       pte = pte_of_xenaddr((vaddr_t)xen_first_id);
> diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h
> index 21f4e68a40..b772f1574d 100644
> --- a/xen/arch/arm/include/asm/config.h
> +++ b/xen/arch/arm/include/asm/config.h
> @@ -87,11 +87,11 @@
>    *   2G -   4G   Domheap: on-demand-mapped
>    *
>    * ARM64 layout:
> - * 0x0000000000000000 - 0x000001ffffffffff (2TB, L0 slots [0..3])
> + * 0x0000000000000000 - 0x00007effffffffff (127TB, L0 slots [0..253])
>    *
>    *  Reserved to identity map Xen
>    *
> - * 0x0000020000000000 - 0x0000027fffffffff (512GB, L0 slot [4])
> + * 0x000007f000000000 - 0x00007fffffffffff (1TB, L0 slot [254..255])

I don't understand why this is changed.

>    *  (Relative offsets)
>    *   0  -   2M   Unmapped
>    *   2M -  10M   Xen text, data, bss
> @@ -103,9 +103,6 @@
>    *
>    *  32G -  64G   Frametable: 56 bytes per page for 2TB of RAM
>    *
> - * 0x0000028000000000 - 0x00007fffffffffff (125TB, L0 slots [5..255])
> - *  Unused
> - *
>    * 0x0000800000000000 - 0x000084ffffffffff (5TB, L0 slots [256..265])
>    *  1:1 mapping of RAM
>    *
> @@ -117,8 +114,12 @@
>   #define XEN_VIRT_START          _AT(vaddr_t, MB(2))
>   #else
>   
> -#define IDENTITY_MAPPING_AREA_NR_L0	4
> -#define XEN_VM_MAPPING			SLOT0(IDENTITY_MAPPING_AREA_NR_L0)
> +#define XEN_IDENTITY_MAP_L0_START       0

So what's the value of L0_START when you don't use it in the code? 
Overall, I think it will actually mislead the developper because none of 
the code in Xen can cope with the value been non-zero.

And FAOD, I don't think we should handle it in Xen. So I would rather 
prefer if the renaming is avoided.

> +#define XEN_IDENTITY_MAP_L0_NUM         254
> +#define XEN_IDENTITY_MAP_L0_END         (XEN_IDENTITY_MAP_L0_START + \
> +                                         XEN_IDENTITY_MAP_L0_NUM)
> +#define XEN_VM_MAP_L0_START             (XEN_IDENTITY_MAP_L0_END)
> +#define XEN_VM_MAPPING                  SLOT0(XEN_VM_MAP_L0_START)
>   
>   #define SLOT0_ENTRY_BITS  39
>   #define SLOT0(slot) (_AT(vaddr_t,slot) << SLOT0_ENTRY_BITS)
> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> index c34cc94c90..218552783e 100644
> --- a/xen/arch/arm/mm.c
> +++ b/xen/arch/arm/mm.c
> @@ -156,7 +156,7 @@ static void __init __maybe_unused build_assertions(void)
>        * with it.
>        */
>   #define CHECK_OVERLAP_WITH_IDMAP(virt) \
> -    BUILD_BUG_ON(zeroeth_table_offset(virt) < IDENTITY_MAPPING_AREA_NR_L0)
> +    BUILD_BUG_ON(zeroeth_table_offset(virt) < XEN_IDENTITY_MAP_L0_END)
>   
>       CHECK_OVERLAP_WITH_IDMAP(XEN_VIRT_START);
>       CHECK_OVERLAP_WITH_IDMAP(VMAP_VIRT_START);

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 15:13:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 15:13:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599563.935045 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfibm-0006ss-RW; Mon, 11 Sep 2023 15:13:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599563.935045; Mon, 11 Sep 2023 15:13:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfibm-0006sj-Oo; Mon, 11 Sep 2023 15:13:50 +0000
Received: by outflank-mailman (input) for mailman id 599563;
 Mon, 11 Sep 2023 15:13:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vgak=E3=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qfibl-0006qn-Bo
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 15:13:49 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ce7f6a10-50b5-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 17:13:48 +0200 (CEST)
Received: from [192.168.1.15] (host-87-19-206-190.retail.telecomitalia.it
 [87.19.206.190])
 by support.bugseng.com (Postfix) with ESMTPSA id 6A2834EE0742;
 Mon, 11 Sep 2023 17:13:47 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ce7f6a10-50b5-11ee-8785-cb3800f73035
Message-ID: <2e7f0482-7a39-daec-7d2d-92b6fc4bd9a7@bugseng.com>
Date: Mon, 11 Sep 2023 17:13:46 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/PCI: address violations of MISRA C:2012 Rules 8.2
 and 8.3
Content-Language: en-US, it
To: Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <f6884bbff0a4117874618bfbece5066d98131aff.1694419992.git.federico.serafini@bugseng.com>
 <16edda00-662a-1b37-327e-3ee3ab87fd3a@suse.com>
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <16edda00-662a-1b37-327e-3ee3ab87fd3a@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 11/09/23 10:42, Jan Beulich wrote:
> On 11.09.2023 10:15, Federico Serafini wrote:
>> Add missing parameter names and make function declarations and
>> definitions consistent. No functional change.
>>
>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> 
> Since formally correct:
> Acked-by: Jan Beulich <jbeulich@suse.com>
> 
> Nevertheless, it is probably about time to mention that ...
> 
>> @@ -198,10 +198,11 @@ int pci_find_next_cap(u16 seg, u8 bus, unsigned int devfn, u8 pos, int cap);
>>   int pci_find_ext_capability(int seg, int bus, int devfn, int cap);
>>   int pci_find_next_ext_capability(int seg, int bus, int devfn, int start,
>>                                    int cap);
>> -const char *parse_pci(const char *, unsigned int *seg, unsigned int *bus,
>> -                      unsigned int *dev, unsigned int *func);
>> -const char *parse_pci_seg(const char *, unsigned int *seg, unsigned int *bus,
>> -                          unsigned int *dev, unsigned int *func, bool *def_seg);
>> +const char *parse_pci(const char *s, unsigned int *seg_p, unsigned int *bus_p,
>> +                      unsigned int *dev_p, unsigned int *func_p);
>> +const char *parse_pci_seg(const char *s, unsigned int *seg_p,
>> +                          unsigned int *bus_p, unsigned int *dev_p,
>> +                          unsigned int *func_p, bool *def_seg);
> 
> ... parameter renaming like this, while fulfilling the word of Misra, is
> actually hampering readability. To someone wanting to use the function
> and hence looking at the declaration it is entirely uninteresting
> whether the _p suffixes are there; there were similar changes earlier on.
> The longer names merely make reading harder and - as is the case here -
> also may require a single declaration to wrap across more lines. I view
> such as going against the spirit of Misra (aiming to improve code
> clarity).
> 
> Jan
> 

I agree with you, but, the removal of _p would lead to
other (mechanical) changes to the function body.
In such cases, do you think that an improvement in readability
justifies the code churn?

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 15:22:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 15:22:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599579.935055 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfijd-000259-PP; Mon, 11 Sep 2023 15:21:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599579.935055; Mon, 11 Sep 2023 15:21:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfijd-000252-Lk; Mon, 11 Sep 2023 15:21:57 +0000
Received: by outflank-mailman (input) for mailman id 599579;
 Mon, 11 Sep 2023 15:21:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfijc-00024u-7R
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 15:21:56 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20631.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f0c49854-50b6-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 17:21:55 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by AS5PR04MB10057.eurprd04.prod.outlook.com (2603:10a6:20b:67d::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Mon, 11 Sep
 2023 15:21:53 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 15:21:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f0c49854-50b6-11ee-8785-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iZ6L/thjbm2kKkw8JDWy5tJmHW5O26QPmXvPumBih7t8XoPnKWTvrqpx+PANN7R063DZizAsZXeUyGyfoo2S5IcM1Ckgc1sPlZ8BGCBI3gHHkahX8bZPm595szS4gbEv3hLmQyLlQwjGtGKAY99wAGFtz+Qv87AJ/CLrWJSiqji5S2jc3PRwdFW1i/l7kfllQDdwXPKZroyqCdmuOElwN2r0SNCaNmEStYpv1myPMI6hqbEdQusrcYL8RN+nwlFLIp2B5V3A1Kr6ipAdLNDMqZdSbF20yS0R6QzZcp1Wc6joiYWUbF+0zp3LTvB/sI6DQ5Uox6jHt7Qar8Qz/xDgRw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=sm+fjSskQ3ewVSIp+iaOqiiJ7JXg/o9Jyz16SdfmkRE=;
 b=HK+Ds/9HJwTyY4PrF4fWpmfjOFU5rSMmHBfFSfLK/fmv9uBR8LG5EREwQaDPogFYUqyEbK9o9JznZKrw45wIuQwmSS6gakAtNDd06V8B19Wt3SnaXbZuc/yx6Vn7K+L2r1yYtVufAIaJ59Ifu4vOB/+m/IIN367XJAB0ZqkdbYAXSM/fONyNAv2y9XFSqK62S1foG76/V8yR5QSNMxKDYFoW5GtvGMlts9mTaR3Dlu2Wfr7BI99G0/dBGmxZJB36zjI4R6eXP+O+k1nV7Y+sJ2jGhthh4879cNFbsLP8BsaIlc36e8PyZSD5LJYDF/35/JAVs5F+lepXjkbWqtFs4Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=sm+fjSskQ3ewVSIp+iaOqiiJ7JXg/o9Jyz16SdfmkRE=;
 b=o8J+rKGMNHcGi77KNeMKMjaUZYHTXx0HaSq3i0gE2JfRemKANjGa7HJTk7XYjxtxsSP6ydwMXQ3d1Vk9bTJisnyT4zjb04YYlC5M1ao8O1IL8fzyMB8Pn34Kw+7b7nCAnJKlKcTdFoConSbhYT/J5UnTC0RRAKTIml8AFp/3p/VrgdykJkEuHR7YJFU8h8KaIn9lzGTKFHSGv+JHcPNHXVDe4uu72MflDWK1kl/mwXZWnODHsdIWHv3tB9VlFvKuLGfi3wJ5Yc2JOPvHsq617f/aos7iLpE5dgXBmYAwu3N3bk8XNQpzXlIR1r1DGWnR55BlzUBy4+4LwF+mCelScw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6fbb0390-a5fe-668e-06c1-c66ed14da707@suse.com>
Date: Mon, 11 Sep 2023 17:21:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/PCI: address violations of MISRA C:2012 Rules 8.2
 and 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <f6884bbff0a4117874618bfbece5066d98131aff.1694419992.git.federico.serafini@bugseng.com>
 <16edda00-662a-1b37-327e-3ee3ab87fd3a@suse.com>
 <2e7f0482-7a39-daec-7d2d-92b6fc4bd9a7@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <2e7f0482-7a39-daec-7d2d-92b6fc4bd9a7@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0177.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b4::16) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AS5PR04MB10057:EE_
X-MS-Office365-Filtering-Correlation-Id: 51510884-8d0d-49e9-8c23-08dbb2dad3f5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	bNmP0zALRgMqnW7AxlixsHTrG0ji5I2ivJpdUulT7MIPIzyjTac0ddw9J96GfbDwhNONhePErjDQD8PubOdlZCv6i2zAOHIZmC5A/vBDUEMx4uuk58811mg8InSnFo6fSAf2vkmYyyfo27EBASOEV7YtxJCojEGeQtGKVVBzsH9DwEG9tfd8ZFudhVowIgYiD6CJZU2xZPTra7Ezb3q+qRl4JW62d6c76iKNKzmZcU7hbjhhJ8yEW6CazLefGPdaW2yuX7a+O9TdhZ9uuDAOFAjgCTaEACETkkC7C+RIy4SxEeuA1YdqnOMVzWhonnR2+GgpynvvH2/31i3jXtnApEPcElMFY8k9jpx/u4JTitm/nvUjy09x8Dv/icW4oXyeFcZyU4gewVqPp1Yddvna4lap4Sx5SfkpOPDS2odTu7ZzHREp5E34r/JhE0q7luuaOS4nixpF5AALmxBCc3WuhvmlKUwitFoegfRfJsFGlEmf9Jw12gYN1nTcXwd8TuVedmC0ETWIekhOC1zudpPxaWy8+APPDPLS+fkwywgABfOOQw5bjZmYv4ySQJQpfxBZZx4cf7Nq64gOynqw8mScSB2ncGvYad7jZHNsB0d40jj5MylxTKRG4TlweFPhF02acWStvSIyIvB4yN6p3wcNTw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(136003)(376002)(346002)(39860400002)(451199024)(186009)(1800799009)(41300700001)(31686004)(53546011)(6486002)(6506007)(36756003)(31696002)(86362001)(38100700002)(2616005)(2906002)(6512007)(478600001)(110136005)(4326008)(316002)(8936002)(5660300002)(8676002)(54906003)(26005)(66946007)(66556008)(66476007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Ukl2V2xXOXNYR1lzZVE1V3VDOVYxd3NuUXFqSFFJeDhXYUxobVBmRFJXYkYy?=
 =?utf-8?B?V25qb1hUVmhZUWNlNWg5T1ZlNU9uamozTkpUN2ZKVk4yY0FZN3FSdXZ3MFJN?=
 =?utf-8?B?VGdGSHJseit3STlDRHQva1E2UUVwM1phdkh4MXN5YVBUMHYzS2JiY0pXMi9q?=
 =?utf-8?B?T0pjaXZ2blV3MG9PR1ZLWW9OeW9IMkZxRW1DMWtMdUFYRXQ5R0ZYenFNU2Fp?=
 =?utf-8?B?czdodkpFbU1peDVTYldNSVZPdVlrbzRWOHREWkpGMkZ1WTA4UGVuN3NqNnFB?=
 =?utf-8?B?TjV1SzZkcURWN0pXblBuakttS1FjMkNWa0tFYzhqZ0owVGRzVkkxYjBPWnBR?=
 =?utf-8?B?T2hwS0xQVkVsdjdDYk5QeG9yNGJoS0VmdFd1bktxYXVBcUh4WW12L01VYWpO?=
 =?utf-8?B?RTZtSytDVmVGYzZGTGk3M3BqZ2NwMmtvSE5aNnIwQS9LRCthd0hGWXowZjZp?=
 =?utf-8?B?b1J0cnlEcE9lQXA1WWlOZlY3Z2liS3MrU205TCtHQzRVU3RBcFQ5d1FteDJp?=
 =?utf-8?B?ZW9XTHdmZEpybk93aXU2TlVUSUFpa3NzZzc4eHRMQ1FmYzNSUkZsSVBYOXBT?=
 =?utf-8?B?WWRoYVhNOGV3bnRpeFBscS82UTZ2cGRmY2pVVXBMZ21Gdy8rUkNBbi9Ud1N3?=
 =?utf-8?B?MDBxZXphYzVNUjJjcUg1RHdlNWh0Zkd2R3J1aHRZbUVuYi9ONTM1dTRqRzl4?=
 =?utf-8?B?UzQwS2ZaSTZxYkdJMkNCamJISFY4NFAvaEYyZTFLYisxa3ZjTUhtYVJIdVFm?=
 =?utf-8?B?cER5YXNqVzZlZFZFTlhVeDlMd2tqMHhIdWwyUjVEVTVybm5DYzhpZVVBS1RZ?=
 =?utf-8?B?Z3craXJBeUszWFpjK0V4NVJlVzBLUlNLTmRNZTF6QXVoY1ZwRlJ6Rk4wR08z?=
 =?utf-8?B?dE5ReUo4SnJibWw5Ly9JTnFWeTNaVEhIM2ZBMnZvd2R2TDVFTmFNeTJlRWF2?=
 =?utf-8?B?U2FJSm9SMi9nQ0M2TlBxcGVQenNLQXY4MGxiWklIZzEzbW4xbXBmN3B6Yk9G?=
 =?utf-8?B?c1diOW5tdFZ2bU83am0yME1ERkt4V2Zsc1ZXMEhibFVkTVk3YTIxT09hYVZ3?=
 =?utf-8?B?Rkd3ZnozZE5HZ05kSHFyQVVLZ3dwcnh0SnQ3QnQ3VUtHNTdDcE15SkRLVHVQ?=
 =?utf-8?B?cjEvWGp5STZPYWRMSE5UQ3B3akpTdnFURTNRdUZWTWVPQk9WcnQ5R3h4OG1D?=
 =?utf-8?B?ZkhPRWs4WW9xNnNUMW5STXA0Yzg5VDB3Z0xSeUNhZ1pCR3FoVlhIOVZMQWta?=
 =?utf-8?B?NThaZG1MbXFiUUFLZ2QrdkY1YnN6RWlNNElpYXlLUWFmTG1SM0paSXo4cjlZ?=
 =?utf-8?B?QTA0YS9aOFhwZUVjcFd4c09sbXBTZERZNWVLUHpwTG9tMzdBZGtFYnFBdmw2?=
 =?utf-8?B?aVhqeDZJZ1NYa1NxMWw1YzVNSnliZE5WdWRSZy9kSllBdHlmYkJqTGNWYWFr?=
 =?utf-8?B?bVBRdDVQWUVhSGJTL21IN1UwVVpKUnFkQ3g3Mi9rSSthbXRIZW9oV2VhQWNj?=
 =?utf-8?B?U1NEc0NFTXVMWStzVDExM0hWVmxIYzBPaFpudHBnelN6b2w5VnVhWXZ4Rm5t?=
 =?utf-8?B?a3dBRHlmS0NJeXpyUUVtN0tZYnNibzhhUlpuYUFkQnN2bjBIY0JYd2xYSm1i?=
 =?utf-8?B?cnltYUJ5UWQ2RHh3c0xtY2MyV3Jvd1pVendPcEVlUHpYM2pRbHFmN1JCWjNT?=
 =?utf-8?B?cEp6dXczd0ovd3gzSjZNcWgzUmZCdWxYb0lhZTFjNUVWRDJGK3VnRXBvVWw1?=
 =?utf-8?B?Y0pMLzlmM05MMkZzcEVrRHZQN2htakZOamhSNGdxREYvd2NjcHpYcDNZSXF6?=
 =?utf-8?B?OTNsSXI3aWsvT25EcWFCSHpsTXRFWXBIbEVWeVVKdFRrMzkzcWxIblZ4cnFY?=
 =?utf-8?B?SEtkQ2M2ZkV1TXFVOWVNbCtjNTQ3eCtSODRVc2N0MUlYdm8ybU41RlRTTEtv?=
 =?utf-8?B?djQ0MTBaR00ydFAxWXpzaUxEV3pNYWo2QVR0ZjFtdVp6ZmN5NzQ5SndCUTQ2?=
 =?utf-8?B?emt6ajl5TEFXa3RrUEl4ZmxwKzJCSUd3NWwxZ3JQdVNqZHlnVkhpZjdQVUFH?=
 =?utf-8?B?MkE5WlgzMEh0aDFEZnlWdjlTZ3REZ00vWk1YbGo0c0hCN1VkQTdZKzdNTG1F?=
 =?utf-8?Q?oEKqB6sp77dTEBXW7ge5xu6Pw?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 51510884-8d0d-49e9-8c23-08dbb2dad3f5
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 15:21:53.2824
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /xvqoWNCk1jqTHpPGKD/rZI5cz1+oXwfkAOdlUZ99QddPeWVGlmXghbd8gBfXqs6YBUnMh3LsD0N4bEzIqyjSA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB10057

On 11.09.2023 17:13, Federico Serafini wrote:
> On 11/09/23 10:42, Jan Beulich wrote:
>> On 11.09.2023 10:15, Federico Serafini wrote:
>>> Add missing parameter names and make function declarations and
>>> definitions consistent. No functional change.
>>>
>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>
>> Since formally correct:
>> Acked-by: Jan Beulich <jbeulich@suse.com>
>>
>> Nevertheless, it is probably about time to mention that ...
>>
>>> @@ -198,10 +198,11 @@ int pci_find_next_cap(u16 seg, u8 bus, unsigned int devfn, u8 pos, int cap);
>>>   int pci_find_ext_capability(int seg, int bus, int devfn, int cap);
>>>   int pci_find_next_ext_capability(int seg, int bus, int devfn, int start,
>>>                                    int cap);
>>> -const char *parse_pci(const char *, unsigned int *seg, unsigned int *bus,
>>> -                      unsigned int *dev, unsigned int *func);
>>> -const char *parse_pci_seg(const char *, unsigned int *seg, unsigned int *bus,
>>> -                          unsigned int *dev, unsigned int *func, bool *def_seg);
>>> +const char *parse_pci(const char *s, unsigned int *seg_p, unsigned int *bus_p,
>>> +                      unsigned int *dev_p, unsigned int *func_p);
>>> +const char *parse_pci_seg(const char *s, unsigned int *seg_p,
>>> +                          unsigned int *bus_p, unsigned int *dev_p,
>>> +                          unsigned int *func_p, bool *def_seg);
>>
>> ... parameter renaming like this, while fulfilling the word of Misra, is
>> actually hampering readability. To someone wanting to use the function
>> and hence looking at the declaration it is entirely uninteresting
>> whether the _p suffixes are there; there were similar changes earlier on.
>> The longer names merely make reading harder and - as is the case here -
>> also may require a single declaration to wrap across more lines. I view
>> such as going against the spirit of Misra (aiming to improve code
>> clarity).
> 
> I agree with you, but, the removal of _p would lead to
> other (mechanical) changes to the function body.
> In such cases, do you think that an improvement in readability
> justifies the code churn?

I didn't suggest changing the definition. I suggested keeping declaration
and definition (slightly) out of sync.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 15:32:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 15:32:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599589.935065 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfitV-0005wn-LL; Mon, 11 Sep 2023 15:32:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599589.935065; Mon, 11 Sep 2023 15:32:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfitV-0005wg-IV; Mon, 11 Sep 2023 15:32:09 +0000
Received: by outflank-mailman (input) for mailman id 599589;
 Mon, 11 Sep 2023 15:32:08 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qfitU-0005wa-6W
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 15:32:08 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfitT-00026E-5Q; Mon, 11 Sep 2023 15:32:07 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfitS-0002o1-Vx; Mon, 11 Sep 2023 15:32:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=kwGpUryFMYGxz/FXbkKY3k8Xzbnyxko5a+b6qKzQ2Pc=; b=mmty9ARkZ0P0oJAKtEps7TqrNe
	MKngnbolcgWqBRExxcDqt5abma+87f8G4UW8K9ApcYzXWCPG7B2n3hG5xQmYtaZkt/mnQaXA3yZXs
	wFND718h4yornIQ2AOXQvUvKCXL+fpVG9Avu60j1b0bi9sTe81zU/lABW8XRAY5tTB+0=;
Message-ID: <91d5ea6d-bdfa-45bf-a54b-5acdf1784ec4@xen.org>
Date: Mon, 11 Sep 2023 16:32:05 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3] docs/misra: add rule 2.1 exceptions
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
Cc: jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com,
 george.dunlap@citrix.com, bertrand.marquis@arm.com,
 roberto.bagnara@bugseng.com, nicola.vetrini@bugseng.com,
 Stefano Stabellini <stefano.stabellini@amd.com>
References: <20230908230318.1719290-1-sstabellini@kernel.org>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230908230318.1719290-1-sstabellini@kernel.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 09/09/2023 00:03, Stefano Stabellini wrote:
> From: Stefano Stabellini <stefano.stabellini@amd.com>
> 
> During the discussions that led to the acceptance of Rule 2.1, we
> decided on a few exceptions that were not properly recorded in
> rules.rst. Add them now.
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> Acked-by: Jan Beulich <jbeulich@suse.com>
> ---
> Nicola, does this work with ECLAIR?
> 
> I am referring to the locations of the SAF-2-safe tag on top of
> call_psci_system_off, BUG, etc.
> 
> Changes in v3:
> - added SAF-2-safe to safe.json
> - added a few SAF-2-safe examples
> ---
>   docs/misra/rules.rst    | 13 ++++++++++++-
>   docs/misra/safe.json    |  8 ++++++++
>   xen/arch/arm/psci.c     |  1 +
>   xen/arch/x86/shutdown.c |  1 +
>   xen/include/xen/bug.h   |  2 ++
>   5 files changed, 24 insertions(+), 1 deletion(-)
> 
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 34916e266a..82de4c645d 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -107,7 +107,18 @@ maintainers if you want to suggest a change.
>      * - `Rule 2.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_02_01_1.c>`_
>        - Required
>        - A project shall not contain unreachable code
> -     -
> +     - The following are allowed:
> +         - Invariantly constant conditions, e.g. if(IS_ENABLED(CONFIG_HVM)) { S; }
> +         - Switch with a controlling value statically determined not to
> +           match one or more case statements
> +         - Functions that are intended to be referenced only from
> +           assembly code (e.g. 'do_trap_fiq')
> +         - Deliberate unreachability caused by certain macros/functions,
> +           e.g. BUG, assert_failed, panic, etc. See safe.json.
> +         - asm-offsets.c, as they are not linked deliberately, because
> +           they are used to generate definitions for asm modules
> +         - Declarations without initializer are safe, as they are not
> +           executed
>   
>      * - `Rule 2.6 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_02_06.c>`_
>        - Advisory
> diff --git a/docs/misra/safe.json b/docs/misra/safe.json
> index 39c5c056c7..fc96a99fd5 100644
> --- a/docs/misra/safe.json
> +++ b/docs/misra/safe.json
> @@ -20,6 +20,14 @@
>           },
>           {
>               "id": "SAF-2-safe",
> +            "analyser": {
> +                "eclair": "MC3R1.R2.1"
> +            },
> +            "name": "Rule 2.1: deliberate unreachability",
> +            "text": "Macro or function designed to be unreachable."
> +        },
> +        {
> +            "id": "SAF-3-safe",
>               "analyser": {},
>               "name": "Sentinel",
>               "text": "Next ID to be used"
> diff --git a/xen/arch/arm/psci.c b/xen/arch/arm/psci.c
> index 695d2fa1f1..2a8527cacc 100644
> --- a/xen/arch/arm/psci.c
> +++ b/xen/arch/arm/psci.c
> @@ -59,6 +59,7 @@ void call_psci_cpu_off(void)
>       }
>   }
>   
> +/* SAF-2-safe */

I think any use of SAF-2-safe should be accompanied with an attribute...

>   void call_psci_system_off(void)

... noreturn for function or ...

>   {
>       if ( psci_ver > PSCI_VERSION(0, 1) )
> diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
> index 7619544d14..47e0f59024 100644
> --- a/xen/arch/x86/shutdown.c
> +++ b/xen/arch/x86/shutdown.c
> @@ -118,6 +118,7 @@ static inline void kb_wait(void)
>               break;
>   }
>   
> +/* SAF-2-safe */
>   static void noreturn cf_check __machine_halt(void *unused)
>   {
>       local_irq_disable();
> diff --git a/xen/include/xen/bug.h b/xen/include/xen/bug.h
> index e8a4eea71a..d47c54f034 100644
> --- a/xen/include/xen/bug.h
> +++ b/xen/include/xen/bug.h
> @@ -117,6 +117,7 @@ struct bug_frame {
>   #endif
>   
>   #ifndef BUG
> +/* SAF-2-safe */
>   #define BUG() do {                                              \
>       BUG_FRAME(BUGFRAME_bug,  __LINE__, __FILE__, 0, NULL);      \
>       unreachable();                                              \

... unreachable for macros. But the /* SAF-2-safe */ feels a little bit 
redundant when a function is marked as 'noreturn'.

Is there any way to teach eclair about noreturn?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 15:44:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 15:44:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599595.935075 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfj5h-0000lY-MZ; Mon, 11 Sep 2023 15:44:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599595.935075; Mon, 11 Sep 2023 15:44:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfj5h-0000lR-Ia; Mon, 11 Sep 2023 15:44:45 +0000
Received: by outflank-mailman (input) for mailman id 599595;
 Mon, 11 Sep 2023 15:44:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfj5g-0000lL-2x
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 15:44:44 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2084.outbound.protection.outlook.com [40.107.7.84])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1f29cfae-50ba-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 17:44:42 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by AS1PR04MB9430.eurprd04.prod.outlook.com (2603:10a6:20b:4da::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Mon, 11 Sep
 2023 15:44:12 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 15:44:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1f29cfae-50ba-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nCNl+2nEiK/z72WT7/D6qRgAxrRn+i7mzVD4lWWx85TY6DY6999/RyDJI32Pez2bkFAXVATTTG5zlEYNYMRy9TvSVriITVTxccC6RhiDON0g5FW43S/swNED86wZuv4nmTk/um31CHFb7vCVsrVd8CVsNff3THX7adkuP1Ja5EXugB/3GD1MUgWfdVO+J1ZSIVziUWwdh8dTkL+Mnc0zub5H8rt1TGItY1BdQELVtXmCcsj0Le+HXi8hCB6i70BtJJrF9BIw0+lfSeP0UITRW2LFeZ+dsy+dWcZncdAOLEz0VOvmCIe0zlZMNOWQHyR1oj5wLdS5jEoxK4x7uRiMEQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IZr1sn12g7Btt4NaK9zM8LhHis5d1rFDYlAdBcRHDcU=;
 b=bV1qB69R+UQoWFJMFQwLpaC5Q/Xuu2gVy01j5cGbmhMcrpP/OIwLnxnkQNA+ohONvpp7g4yl5Br34FMYWXekwUqz0ccfmcJ3L7XO8GTf4hJxGoon1zHw5E8mRHtV1bTnmx/8s4ciipnb8sKj6mNVXP/Klfq7gPDGcXLDIiujOuT7/370RJV/O3i/8qnlbYEcn7I0rmtCzVliVSt4pv9hvdFdTuvgCDHFaAllQJU8ksM28Yccz3f6mmNxLRxgJom8AL0pjmgKo2VY7UhIqGTEkR+zoeueWGeD2aPdBzsFID4Tc0dwDkqiuVslvOVGikfYSjo6mGgbNiFmc4DoTm3vXw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IZr1sn12g7Btt4NaK9zM8LhHis5d1rFDYlAdBcRHDcU=;
 b=KlAQydAGTh5NB1RbONnXqQQPRC324ptCLtv6cov+lr7YT/zbi7GHqjB4P4EwsHVxYukEiaNrMKQYTXcVUlkmvYtMNGM3boRmYI835UyM70trQJPYWVE3QUuecell00HFNJmGoOsjBsl6bNJfIqvg/ex8FVnQyeRt3Kr34DNnFAt50AhwgxZATYJwAtOoAMS/HPqwXX0JvQL4Uz2atcClTrwTIinAe7DIiS9+TxDyUIPLeB18nokWEBrzuCKDcb8m1qGYgHDEZy99C3JKKnbq67uYF62Uh/21g8gxQPu30rbzFjNZ+WibYMftE3DvK0AFDN1MkdtJaE48OZk8BKgTTQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <507af8fc-fe95-8dc3-32a7-e7945258efef@suse.com>
Date: Mon, 11 Sep 2023 17:44:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Ping: [PATCH] build: restrict gcc11 workaround to versions earlier
 than 11.3.0
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <3a5913ad-c273-0ee6-11c8-9d18e9a4a84b@suse.com>
In-Reply-To: <3a5913ad-c273-0ee6-11c8-9d18e9a4a84b@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0239.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b2::10) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AS1PR04MB9430:EE_
X-MS-Office365-Filtering-Correlation-Id: af5576f4-4b30-4e4c-549c-08dbb2ddf20a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	f1NVOMU5aS/MKEtfeyYmO3Q4if7Bk/9o7DBZAw3rFejTRaApVDUHiaw55zFYq2XFGDfscYKp4ZQZ/I8rZloj4kwD6amHIH1Qf8PviLHrVVs+Aja6LvbO1WMKqo4J9JNqt9xo7XTu4cAGoe2cR5SJOxCC1FleCE+/HI2YAAdr8Gh5T2LSihLiMn5uRN534LHYbtMOZqXTRe0OP4nFYa3WImirqe2d7M4y2lr1xkBz1XkBZThR+0PU7ZQIcJdDZe1oO/KKhVMOmK+mxCK+ZpHdJIesBFdShatHN2JIHHYTuolvyq+NR+DEAi4KWrDgn+VUz3ZC7Czi7a15Zk80K5j2Ledot2Chgs5rcug6r+wbMbl7lzEZXxkjtA4GapiMbdv+ZmsPMTSdZ2yJOksor5IjJVSrQozSrlIZDZg/9AUKXUKZ+qgKlid2z8h2CBZaF866q7xAk6SGfuh9NMhkC0nioVi+NMufG7ADEDBDOK3XCs02BWJwdssauWNrISOx1fJxmqPaq86gKydBpQ1wg+u4Z+m0uyJzcLn1UWx8h/5Wfo/3QEw1c3MAJn0E2ONfWL2Lo2b/8khPxK/R6ojWLxhiEeaMbYpr7l0XT2oVNKyZFQyXwSRKUzGmpIshpUsh8K9axwhzkEYS2KZcnWJ9JjNtoA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(376002)(396003)(39860400002)(366004)(451199024)(1800799009)(186009)(478600001)(31686004)(8676002)(5660300002)(66946007)(66556008)(316002)(66476007)(4744005)(8936002)(2906002)(41300700001)(6666004)(4326008)(110136005)(6486002)(53546011)(6506007)(6512007)(2616005)(86362001)(26005)(36756003)(31696002)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SVFXOUp5QWNSSDcwMEtCMVF2SWZ2ZzlnS1IydkpyQnR1aFdER3VYOVFwZXMv?=
 =?utf-8?B?dXhCTFlzVUcvT0JjbWlkanVDZllwa0NkdVJGVlhNKzVXVFVoZURyVU1zekJ3?=
 =?utf-8?B?dGVjL3E0WHQ0cGptbzI5UXVYNHRETmpleHJrcy92YXhwTVF2WjNQUE9VNEtW?=
 =?utf-8?B?eGllSTg5dHNBT3pveTRHdlFDQ09lcm1ZNnJuTWs5V28wbmVSeUZ4Ry85WjZS?=
 =?utf-8?B?ZG1sM2pBYWE1eE0xbXhUQllyWHpXc3RSN2orbGxXMGM2T0VqYUcwNHpUTnlx?=
 =?utf-8?B?T1JSUE1YVzFtTVpSMHdXTzYvOHM4cS9NUGkydng0bkVVaFRXZGhuYzF5YjV0?=
 =?utf-8?B?V2wya0FIdjMvVTRYL08vVjk5eEY4Y3p0Vy9ad0pMdnFtYUpsdEVzSERDc2xv?=
 =?utf-8?B?NDVoTE10UTNqVkVjNzFBOXkwWFZTb3lGL2ZYamJFZUlxVWVoc3BINjRwc1p3?=
 =?utf-8?B?bVErQzl5cWgwTTJxU002amJSWUx5cVVYVDNEeFdvYUhsdFVQNE9TSndmU2tB?=
 =?utf-8?B?ZlpQOCtCdzRVZmN4NkRNVTR6QWJjSE8rZElKV0g0TDNZZ21SRDRTSXZFK0h0?=
 =?utf-8?B?eU5vMHVpVkhRTHZ4ZFladnR1ZVVkVjM2TUN4WWJaamYrQUFFczhGT2dHWG5r?=
 =?utf-8?B?TlFodmFuQkp6OWViM2FtUDJQblJaRW1HUEpYdDhnVlZaeXJDcDNWZG9MY0NK?=
 =?utf-8?B?NmZJVEsrTDEwOGlSa2F6amp2SnExMjFqU3hZclhHdE9SRGVGK1hUeEdtR1JG?=
 =?utf-8?B?VnpzOUJEVnp6QTV1S01TYllvNnVSZ2dJdThFaE9kMHZ3aFp0NjVrQWFiUGgr?=
 =?utf-8?B?UWhITjVUOXQxOXFiMmw3SGR4SjN0MjlOVCtjMlphSjltVE4zb3dCNWNxbEcv?=
 =?utf-8?B?OHcwbFUwSkhlc3docERxbWdtM0JqYWYzQ2thanRnUUhsdlpLckxtQmpNRTJV?=
 =?utf-8?B?NDhHVUVpL2hlV0lPZE1IeXlpaHZ2cXFsS2pxU2QxaHRVZ0ZsLzgzN1cwMjNt?=
 =?utf-8?B?UlcrMFFaVHNreTFQaTlHVTBsVS8xQTB6V1JVbmVpN2xlbGR2S1c0WTJtQWlB?=
 =?utf-8?B?ZXpoTkdqVFlhRU9PVVRrTUh0NTkxR0htR0FBWDZvWUpEMjFuT2JIU1l1MUho?=
 =?utf-8?B?Nm41dldXYWRRLzVETW5XaTVLRi92djhTQTR2RWZwbG1PYXhjQU5wMnZPeWFV?=
 =?utf-8?B?TXhZbDMrL2g2a0RUZzU1VmdFRCtlbmQrM0R6MUZHLzhkQ2VzeGx2Z0pTaW51?=
 =?utf-8?B?YjlMRzJoNWFuVzl6UTBCTG8wUC8vNTFabWRQeFVyeHdEeFg1bDZuUGtTbGxN?=
 =?utf-8?B?VEN0eENRYUEvRmdGV1RNVzA4V1dWZTVnRUJ3SC9CUDdtclBPUWRHbzVqa05t?=
 =?utf-8?B?STZGejJabWprZjExdWMwNG5tLzc1Y0c4Vm4rVVZ1TC9NQk91dGdaRnRBdith?=
 =?utf-8?B?REtDYTRNN0NoVEx4eUliblNaSUpZS3VBdy9RMXV1aDcvMjB6dHFlY0Job3JH?=
 =?utf-8?B?OW1QdlhwVUxNMXhEQ2c0NEwyMFVHRnpvZ1ZOcXludVFDbGZKOThMai9iWllo?=
 =?utf-8?B?TlkxTlFmbU1mOEtydk0waElpeXBqbUljNUEvemFyRGlUS2FBczRTWGRmK3Bh?=
 =?utf-8?B?cUQ5Zm9ya2FuZjMvUk02TWVkaFVvZVhWT1BzdlRQUVN5amlZN0wzL2xHdnZD?=
 =?utf-8?B?TTg1U0V0MlBORVo2SUVUYXNiUytQRWNTeTAwVjkyNjhZN1Rwc1hmQnNrWHpH?=
 =?utf-8?B?bC9QQnBGR2xpN1RKSXY2NkExa09RTk1KSVVTU3hxQ2F4YkZLbk1hZC9GdmxJ?=
 =?utf-8?B?TDJuME9GM2thd0UvUWxITldDdmZxd2QxMWlJcnVPK3UvNUU4SmdjWTkrS2lC?=
 =?utf-8?B?UDZrcDJiOHpJS082ZkY1NEc1VEk4Z3pZQzRKaUFlUXZZYzNFdSs5QS9pdnVE?=
 =?utf-8?B?c1llMDRMb2dOWTlpdHVDN2llTVNtemdJdHdoODBsZkhrcnpmSVJ6REI3UkVD?=
 =?utf-8?B?K1pyMG5yWHlqc2REbnhRZCtHenRqb0FhaTgwYUxYaGswa0VWNjc4amtCRkgx?=
 =?utf-8?B?OFNQNmxqbzcvQTJKY3p6SWwvWkloVjlvR3dSTzJSMUpYYTJ6ZklJaTdsRkRn?=
 =?utf-8?Q?f0cpuvvpfRlyCRznZuh3K5SBh?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: af5576f4-4b30-4e4c-549c-08dbb2ddf20a
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 15:44:12.3245
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5n6Kvtn1pHzfd8iDwFzSiYVmqjueiL65fgxQAD7EnrfG7YahZMcu1W/ge6XipYnfsI1nj1oD497+HXKxE3etWQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9430

On 22.08.2023 16:40, Jan Beulich wrote:
> The fix for this issue was backported to 11.3, so let's not unduly
> engage the workaround.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Anyone? Please?

Thanks, Jan

> --- a/xen/include/xen/compiler.h
> +++ b/xen/include/xen/compiler.h
> @@ -146,7 +146,8 @@
>      __asm__ ("" : "=r"(__ptr) : "0"(ptr));      \
>      (typeof(ptr)) (__ptr + (off)); })
>  
> -#if CONFIG_GCC_VERSION >= 110000 /* See gcc bug 100680. */
> +/* See gcc bug 100680. */
> +#if CONFIG_GCC_VERSION >= 110000 && CONFIG_GCC_VERSION < 110300
>  # define gcc11_wrap(x) RELOC_HIDE(x, 0)
>  #else
>  # define gcc11_wrap(x) (x)
> 



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 15:52:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 15:52:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599602.935085 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfjDG-0003ai-FF; Mon, 11 Sep 2023 15:52:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599602.935085; Mon, 11 Sep 2023 15:52:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfjDG-0003ab-Bb; Mon, 11 Sep 2023 15:52:34 +0000
Received: by outflank-mailman (input) for mailman id 599602;
 Mon, 11 Sep 2023 15:52:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0Yi3=E3=linaro.org=alex.bennee@srs-se1.protection.inumbo.net>)
 id 1qfjDF-0003ZB-7c
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 15:52:33 +0000
Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com
 [2a00:1450:4864:20::334])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 37273e7c-50bb-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 17:52:31 +0200 (CEST)
Received: by mail-wm1-x334.google.com with SMTP id
 5b1f17b1804b1-3ff7d73a6feso48977625e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 08:52:31 -0700 (PDT)
Received: from zen.linaroharston ([85.9.250.243])
 by smtp.gmail.com with ESMTPSA id
 v11-20020a1cf70b000000b00401d8810c8bsm13620840wmh.15.2023.09.11.08.52.30
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 08:52:30 -0700 (PDT)
Received: from zen (localhost [127.0.0.1])
 by zen.linaroharston (Postfix) with ESMTP id A24441FFBB;
 Mon, 11 Sep 2023 16:52:29 +0100 (BST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 37273e7c-50bb-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694447550; x=1695052350; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:in-reply-to:date
         :subject:cc:to:from:user-agent:references:from:to:cc:subject:date
         :message-id:reply-to;
        bh=zb1+wi30CnuBBhAaP6rYq/qdnkDNBGUjT1rxgMg7Os4=;
        b=F9yz8QXD6hXM8j6DlRhN25sNRT2BpXGWa0edgfO011TT8Y2TRb2Qqi/H5a4zBP3FoR
         zBBAUSn354d4TCvW0TgpEFkFyxquw1YulTv9YCGqEKU6PKFJGEftPzGkUDIEFf7QMqiN
         8lJE2iE+yfyrr5XSTawhCltTu6ZkGzdokicSSbLFSFdqjjAA6sOnzVvt2CI8w3kNLRwG
         trDkd5VxnJerEOvd9AybrJ81kxjRksIDhTSmLNYnuLF602YooRBbkTZkBqj4pqPTMX/7
         mSKbMh9978QiI1D/zwhfULAjGwzhraLiZ+JTOS1+XqAd0QmVTBrGcf2/KNC9NLVbw/f/
         NFrA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694447550; x=1695052350;
        h=content-transfer-encoding:mime-version:message-id:in-reply-to:date
         :subject:cc:to:from:user-agent:references:x-gm-message-state:from:to
         :cc:subject:date:message-id:reply-to;
        bh=zb1+wi30CnuBBhAaP6rYq/qdnkDNBGUjT1rxgMg7Os4=;
        b=PqjZZw8TX8dAVG6tuof6WY6nQ+j9SIrxEV4u5PrivmRVytZ0j+cH07p0o6N5ZStwiM
         uWwpZgCKabFM4TXBASinQc60G7eB3OHMbVXmVPjR3EN1ZvuJCTn1HovFf33b/LXL4JVT
         FukWxIuV2GUmeYoPGeMCOqyJlzvSZ/ok1PLHTTN4PZ8Qzv7fGH4gOLDd/4iyGlLtCOMF
         2NFEvejbPd7GJ+oUP1AkWH5L8/etPhPvKgGy+xR2LDD8HFj5Mto4pfY5u95aE1+g4Ggw
         0H1mp1cdMZQuC62WP+lHJAeGgHO/i3OxriBX0bBBeAKBZwnbnN7YxvqQbDdJsgKqELbJ
         5gYQ==
X-Gm-Message-State: AOJu0YzFdBHsTfWcCT1mFoXghk/alcbe9HXB3fkzW7Ei4jLjgyw9pA0Q
	MhMAn9ZE3d4xkH6c7MOFLq1+rQ==
X-Google-Smtp-Source: AGHT+IFwVy2Io7j/R9zTW3T811BVaUE+NHklEDhN5YUZ5MT+CJRW5HJcyon+UDrFG1J42TWENVYkZg==
X-Received: by 2002:a05:600c:2483:b0:401:d2cb:e6f3 with SMTP id 3-20020a05600c248300b00401d2cbe6f3mr9640429wms.1.1694447550469;
        Mon, 11 Sep 2023 08:52:30 -0700 (PDT)
References: <20230902151351.10325-1-javi.merino@cloud.com>
 <ce6e7abd-40ee-dd9e-b17c-10c39ca0e422@suse.com>
User-agent: mu4e 1.11.17; emacs 29.1.50
From: Alex =?utf-8?Q?Benn=C3=A9e?= <alex.bennee@linaro.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: Javi Merino <javi.merino@cloud.com>, Henry Wang <Henry.Wang@arm.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH] coverage: update gcov info for newer versions of gcc
Date: Mon, 11 Sep 2023 16:26:01 +0100
In-reply-to: <ce6e7abd-40ee-dd9e-b17c-10c39ca0e422@suse.com>
Message-ID: <87y1hcogg2.fsf@linaro.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


Jan Beulich <jbeulich@suse.com> writes:

> On 02.09.2023 17:11, Javi Merino wrote:
>> --- a/xen/common/coverage/Makefile
>> +++ b/xen/common/coverage/Makefile
>> @@ -5,7 +5,9 @@ obj-y +=3D $(call cc-ifversion,-lt,0407, \
>>  		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \

This isn't even supported, see below:

>>  		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
>>  		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
>> -		gcc_5.o, gcc_7.o))))
>> +		gcc_5.o, $(call cc-ifversion,-lt,1000, \
>> +		gcc_7.o,  $(call cc-ifversion,-lt,1200, \
>> +		gcc_10.o, gcc_12.o))))))
>
> This is getting unwieldy, so I think we ought to try to limit the number
> of different files we have. Already gcc_4_9.c and gcc_7.c specify the
> same GCOV_COUNTERS and differ only in the version checks (which could be
> combined). Therefore ...

You may want to consider your policy on supported GCC versions. I see
you still support:

    * C compiler and linker:
      - For x86:
        - GCC 4.1.2_20070115 or later
        - GNU Binutils 2.16.91.0.5 or later
        or
        - Clang/LLVM 3.5 or later
      - For ARM 32-bit:
        - GCC 4.9 or later
        - GNU Binutils 2.24 or later
      - For ARM 64-bit:
        - GCC 5.1 or later
        - GNU Binutils 2.24 or later

While also having some commented out warnings because the base GCC is so ol=
d:

  CFLAGS   +=3D -Wmissing-prototypes
  # (gcc 4.3x and later)   -Wconversion -Wno-sign-conversion

For reference QEMU's minimum GCC is 7.4

  if compiler.get_id() =3D=3D 'gcc' and compiler.version().version_compare(=
'>=3D7.4')

and while our support cycle is based off distro LTS releases I have to
wonder do you actually need to support users building the
latest/greatest version of the hypervisor on ancient user-spaces with
old compilers?

I think the oldest distro you have in your CI is jessie (still hanging
on with extended LTS support) and that uses GCC 4.9.

I see there are various scripts to gather support status into the
documentation but I couldn't find a general statement on the projects
overall approach to supported versions of components.

>
>> --- /dev/null
>> +++ b/xen/common/coverage/gcc_10.c
>> @@ -0,0 +1,31 @@
>> +/*
>> + *  This code provides functions to handle gcc's profiling data format
>> + *  introduced with gcc 10.
>> + *
>> + *  For a better understanding, refer to gcc source:
>> + *  gcc/gcov-io.h
>> + *  libgcc/libgcov.c
>> + *
>> + *  Uses gcc-internal data definitions.
>> + */
>> +
>> +#include "gcov.h"
>> +
>> +#if GCC_VERSION < 100000 || GCC_VERSION > 120000
>> +#error "Wrong version of GCC used to compile gcov"
>> +#endif
>> +
>> +#define GCOV_COUNTERS 8
>> +#define GCOV_UNIT_SIZE 1
>> +
>> +#include "gcc_4_7.c"
>
> ... this could simply re-use gcc_4_7.c directly, with just the version
> check there suitably tweaked.
>
>> --- a/xen/common/coverage/gcc_4_7.c
>> +++ b/xen/common/coverage/gcc_4_7.c
>> @@ -27,6 +27,7 @@
>>  #  error "Wrong version of GCC used to compile gcov"
>>  # endif
>>  #define GCOV_COUNTERS 8
>> +#define GCOV_UNIT_SIZE 1
>>  #endif
>
> If further this became a separate #ifdef, ...
>
>> --- a/xen/common/coverage/gcc_4_9.c
>> +++ b/xen/common/coverage/gcc_4_9.c
>> @@ -19,6 +19,7 @@
>>  #endif
>>=20=20
>>  #define GCOV_COUNTERS 9
>> +#define GCOV_UNIT_SIZE 1
>>=20=20
>>  #include "gcc_4_7.c"
>>=20=20
>> --- a/xen/common/coverage/gcc_5.c
>> +++ b/xen/common/coverage/gcc_5.c
>> @@ -19,6 +19,7 @@
>>  #endif
>>=20=20
>>  #define GCOV_COUNTERS 10
>> +#define GCOV_UNIT_SIZE 1
>>=20=20
>>  #include "gcc_4_7.c"
>>=20=20
>
> ... touching these two files could be avoided altogether.
>
> Henry - afaict this was submitted after the feature submission deadline,
> so you may want to consider giving it an exception.
>
> Jan


--=20
Alex Benn=C3=A9e
Virtualisation Tech Lead @ Linaro


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 15:56:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 15:56:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599609.935096 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfjHM-0004zA-2u; Mon, 11 Sep 2023 15:56:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599609.935096; Mon, 11 Sep 2023 15:56:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfjHL-0004z3-UV; Mon, 11 Sep 2023 15:56:47 +0000
Received: by outflank-mailman (input) for mailman id 599609;
 Mon, 11 Sep 2023 15:56:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=erTg=E3=nureva.com=anthonychan@srs-se1.protection.inumbo.net>)
 id 1qfjHK-0004yv-Cb
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 15:56:46 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on2070a.outbound.protection.outlook.com
 [2a01:111:f400:fe59::70a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ce0ec9d9-50bb-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 17:56:45 +0200 (CEST)
Received: from DM6PR20MB2779.namprd20.prod.outlook.com (2603:10b6:5:140::30)
 by PH0PR20MB4517.namprd20.prod.outlook.com (2603:10b6:510:147::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Mon, 11 Sep
 2023 15:56:39 +0000
Received: from DM6PR20MB2779.namprd20.prod.outlook.com
 ([fe80::c3:998a:f69:190e]) by DM6PR20MB2779.namprd20.prod.outlook.com
 ([fe80::c3:998a:f69:190e%7]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 15:56:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ce0ec9d9-50bb-11ee-8785-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EIPlyATCJ9JthHZuzXUW2GKPblf8OdliJssjNwjetvNF4Y0Uh9ji9ki2eUTiA12FGTqanZygM+btVtgvxgxcFZ/sld3h7zAdJ5DCxf+A/8ZvB7DDPwIr8gB8OwWhgrClWgo4VL1usdKt49CRd2TbrxOlSBYWnykOqK7n6OIr5MbovLYIFKEt+nTfFVIrQ6bQ6VJXKDBgGhJHzVlOqryDg5sY6lCxSDBnVTr4V1d0/J1C0K5ApDrFgaCxinoU8EwxOFvTgm0nXeN0yxpA2RGw/JGA3eQYEG3vBMN0CIc43H9Mbv4P3T/gCPwkoPsbMWCNZSbAh8Aoa5WqX6PU0k2xQA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0ZYzElY3T5DAD2dcgUGFseEmujyc7gzex3NjNjoczEU=;
 b=bl7Zb/of9sxP9jqx5hlvlBJt63sPkzsb/RrbWn1iKRs/K0iFdXYzQtNb+09iWDTJdQQ2FsuLj0ck6y5LJJ1uXY/af6xDsufHUDE+NHlLk1fPjLRgwgWC1hYwm/iJV9pF5HCYKJzSy7H4o6ZQceEqs4LO60R18OI0rGQOKi1ZV7KXOCdz459QIziLE70cRODSKJkmirqfoShM7mVAlfpI0dOIQb9DfqdaWkQATCeewb2ZgvMw+aeYhd/8u0zKhTox7z488HunpBKM/4UJ1X9h9lttFs4CMLiWGkqYmJHMuWaHU++gIq5nLvt9o/oZCLUA1LAEhVANpUuAkB8UMUkp6w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=nureva.com; dmarc=pass action=none header.from=nureva.com;
 dkim=pass header.d=nureva.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nureva.com;
 s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0ZYzElY3T5DAD2dcgUGFseEmujyc7gzex3NjNjoczEU=;
 b=HPp4/yLFnJvvwHOgD4w8qP65/8PDNWjAtYVj/gQHtQn+QWijkGgRcSnR9ZtIAQaJZWmj2rduFO/pQFAk2hef9a22cxOeCSiEl1YVOqJR6nZimbdLLuagnd6KzhAPJpQIAu4CN2a2LksFfkBBcv/8pjRj+kRy/gpUu2kaebeWRSE=
From: Anthony Chan <anthonychan@nureva.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	"bertrand.marquis@arm.com" <bertrand.marquis@arm.com>, "julien@xen.org"
	<julien@xen.org>, "Volodymyr_Babchuk@epam.com" <Volodymyr_Babchuk@epam.com>,
	"michal.orzel@amd.com" <michal.orzel@amd.com>, Dan Waqar
	<danwaqar@nureva.com>
Subject: RE: [EXT] Re: xen arm64 low power sleep support
Thread-Topic: [EXT] Re: xen arm64 low power sleep support
Thread-Index:
 AdnanCj70Orzia5aQfSER7H0AUNnzgAKb5uAACL7QIAAFccGAAAoRLpQAQalgwAAJhokEAAI5CkAACis4mA=
Date: Mon, 11 Sep 2023 15:56:38 +0000
Message-ID:
 <DM6PR20MB2779BA8D352E566A350844FCC1F2A@DM6PR20MB2779.namprd20.prod.outlook.com>
References:
 <DM6PR20MB277971712E5415CB231AEB37C1E7A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2308291512271.6458@ubuntu-linux-20-04-desktop>
 <DM6PR20MB27795F4B6C327F7F031BABB0C1E6A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2308301814580.6458@ubuntu-linux-20-04-desktop>
 <DM6PR20MB2779E6DD63DC5CC9A1FE161AC1E5A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2309051848590.6458@ubuntu-linux-20-04-desktop>
 <DM6PR20MB2779A22E8CA641F0B2BBF038C1EFA@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2309061629460.6458@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309061629460.6458@ubuntu-linux-20-04-desktop>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=nureva.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DM6PR20MB2779:EE_|PH0PR20MB4517:EE_
x-ms-office365-filtering-correlation-id: 023f4e8d-1007-4876-0446-08dbb2dfaf1a
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 TMm4YbGUh7HIXkp9Rne/eJiEBrbwlKB3eiRRsTEXCtsSAO/QRUKb1qbG+8RQUsvcFCqPi6UX1zUOke2TWSpyam3TgSybFsd7VmtY1VVTAU90djKMx37igdCwyyUbSgm0tYmjHWS29jo9/TzJbwrmAT4MxKEPOku+ExaerLHHvvspSWVcfmUQaxHI/3PoC/7qCiSCeebAQjEZ70ZIxgmFQbCG6kQlT1k/kmQd4Dit3nBXpxH14KyMCgEC5CMczYpy+GUREeopMHsxxWYnjYCiwU1iRPAuz4yUHXt6fC6iueGnLPLAIP3qd4G0gA14Kp6EdXDjBkOeqi5hxQYKS7H8qfdbvAdF57r4RmDliS7kS0j5POXK9RN+embg6NRf1P0g1HpAKPn7lx1Qe34An0VbWDLDExlpNCMu6Mbb9X5QMDPYZIljN9+9i9C5z0oPkl1RSiVNlhIpaKb611bA+GymNvY5pwWpF6ISUJUzKqsx9dPC8l120fKtluD4yZKx+i7GS8fIrrkZSGJlbRAlZ0uNA2uLvL3WJKWROt2fe5EciTtL7lzQDg4iTJRCkm89QZCRMETSZuV7xn4C11+siQQGX76L+fkwQbX01cN8K3dFLcKcKNHhdtN4jtOeAO9/+7aV
x-forefront-antispam-report:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR20MB2779.namprd20.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39840400004)(396003)(376002)(346002)(366004)(186009)(1800799009)(451199024)(83380400001)(9686003)(52536014)(71200400001)(5660300002)(4326008)(33656002)(6916009)(8676002)(54906003)(8936002)(76116006)(66946007)(64756008)(41300700001)(66476007)(2906002)(66556008)(66446008)(316002)(7696005)(6506007)(55016003)(38100700002)(86362001)(122000001)(38070700005)(478600001)(107886003);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?us-ascii?Q?zzWYQJu8HARaVQ9102KKYBzPF5jqQJ0NCDY9/fIQzd3cFXFL4p2ig35mBrXw?=
 =?us-ascii?Q?T4ID3TmHP2dQratsk/Jj8Lk2Y0LgsgGOk3lumSDGtxIth1Ap9mL8m/qq4Ak2?=
 =?us-ascii?Q?xIXPgHQUsyVfbqLBoXLTAML0S2wLToGo8ZOlqagvq4Rc+jCHAKI7Z7NuhH/V?=
 =?us-ascii?Q?Uplfy0MyEAC/01BjUuy30LKsuR5BM2vtyJEWI713U1bWsaH/gU8X2gGrz98h?=
 =?us-ascii?Q?pJZdJ1yvzJXlNDVthNJ6Y2R8KSlySyw0ozQzVoDINUdvjoYOUrIA1mD+fvlO?=
 =?us-ascii?Q?HyVpGJtEuIKMQkWyE9xmE+2rcdNwmhiC/q1II5CJ3wKFAUtGkfjrRiMNxn7N?=
 =?us-ascii?Q?H+qUh6/sLRA/f37HTRmUXnXO0S+G0WDIcFfU7a076G+ywtSvC+CuueonHlij?=
 =?us-ascii?Q?0rnvxUbnIYPe2//WVTFzmJMj2oOr3+3keM3kVf2V4I27tIR28OG9slR1RDBp?=
 =?us-ascii?Q?xHq4VQQOGTNlEZll5O+vRD2SJKkbyMaoqhz6cP0FIsRfePwm6uNrjaDXyz6z?=
 =?us-ascii?Q?Qb5lryBsz9SimfmL/JEV6jVvnZhre3nWJ+/S/lLmbLTsF9Im6n0zM1AoYyFD?=
 =?us-ascii?Q?juUNgrpm51NZVWWnZw0ltwD5ggUOaHfkjzf7RznRa6F9jEgfGzp3X1G2Bo7I?=
 =?us-ascii?Q?5pVI9mMSZAVCP3Wo1Q9E7jR1YSlV9y5OTzGId9OC8QYGFL/27fl5DKMTkJjH?=
 =?us-ascii?Q?N5DE9sHjLGfVJauHW8OfTm0R4hIqj3YqYX/K/uMvBLTYktUSZMLcPJ6al2Ai?=
 =?us-ascii?Q?t8BlYLTbIG6yuhgtVHMmvoBVSr9RHWtWP/yZx+7raaBqFCjHaFUK/RyzOykJ?=
 =?us-ascii?Q?zUTcqnC6pcZ5Ho/x+Mq6/V1wIQ6N/xVNw/ZNsj4O51mz3km0sYFfa+Wn075n?=
 =?us-ascii?Q?y0ENAHcEmaiaWCE0eeSGjUsgiuuud2RY0Z4jjrheZBjNjAkl3JlQlOnPcg9X?=
 =?us-ascii?Q?7iuHdJUjjSwnM88HmH+/kZeRLQv3RjZDV0vcZHx2puZ0bpc/04PVCjw0dt7s?=
 =?us-ascii?Q?qdrCDuPD+70Lfy/QBESVj6F1JwHQErzHrBtXCEFgvIXKYP4wj2EFhklpPMRo?=
 =?us-ascii?Q?hFXVOCVnFMQ4B2YNvDAzQOngdn3KpdcZRxGC7aLBS2WTjPepkVCY90EmMqyv?=
 =?us-ascii?Q?RXelLbS746KzeyKTxAmByKlt4/F/Zv39eaJghuI5VYU1ExjtgHcZq6UBIa4p?=
 =?us-ascii?Q?L6fcVwoJY/kzds3/4cK6qk6vF0whkAZ8mWMP5pexDIci5zqQixoj1uKHyinf?=
 =?us-ascii?Q?lXuqb74T5/QX9uhTuPd3caj5sZ7Tqw9pUMml9J0ppu3zjNy1si2z3+VsSRhF?=
 =?us-ascii?Q?rR/qy6hRD5kwzhN+2aaBQFzb6yEegNcttckY6+z4o0PMJMTyRLHaQ8ny1M3v?=
 =?us-ascii?Q?f9pwY7j9kdLpy/kDfkWwGt4l1SRWbLtZP2j6dR8IqrGjUDpML5rMKiHODGlH?=
 =?us-ascii?Q?1ClZT/MGBB/BI9YKcqvhhL8StY3G4h4BtrWRjVxEdmOwwSAnQxcf2gNmFXPl?=
 =?us-ascii?Q?5HcGLE6dhJWTEN6wPII+TuzYBfsMsA8VX/PAE8fW0CPXgj/NUA5/QNmTNNZB?=
 =?us-ascii?Q?yYPRGV/JqlHo3mFvZUR0zGNcGjxqTVxExiVitDafFOdMYfDaoXsonA9txgpp?=
 =?us-ascii?Q?Vl9XU3Y30DiQi0+hlisQl211ZAOvKd6VKNMgM1HL03H5?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: nureva.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DM6PR20MB2779.namprd20.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 023f4e8d-1007-4876-0446-08dbb2dfaf1a
X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Sep 2023 15:56:38.7903
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5aeb77fa-643b-473e-aee0-cb54a11ccba3
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: VvQEaQwoPcCIRlGx6wPbuutIFazwFR/lv1tFHolKNUBTf+9aiA3iYu8m/A0eRxE+43eg0XfHjxM813NRKDdQYA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR20MB4517

On Wed, 6 Sep 2023, Stefano Stabellini wrote:
> On Wed, 6 Sep 2023, Anthony Chan wrote:
> > Thanks, I've tried patches that stemmed from that discussion but
> > unfortunately, doesn't resolve the issue.  In fact, the s2idle_loop
> > branch might not be the problem at all.  I experimented with Xen to all=
ow the
> > 'idle-states' into the FDT and prevented xen_guest_init on Linux from d=
isabling
> > the 'cpuidle' driver (arch/arm/xen/enlighten.c).  When I trigger a susp=
end, I
> > can see now another thread (believe it's the idle thread) call into
> > drivers/firmware/psci/psci.c:__psci_cpu_suspend and then the Xen
> > counterpart at xen/arch/arm/vpsci.c:do_psci_0_2_cpu_suspend.
>
> OK but remember that Xen is not implementing do_psci_0_2_cpu_suspend
> correctly at the moment. Either we need to fix the Xen implementation, or=
 we
> need to configure Linux so that it calls WFI instead of __psci_cpu_suspen=
d.
>
> As a test, can you try to apply the attached patch to Xen as a tenative f=
ix?  Or
> you could change drivers/firmware/psci/psci.c:__psci_cpu_suspend to call
> WFI instead of the PSCI operation (making sure to go to the entry_point
> instead of returning).

Tried the patch and substituting a WFI for a PSCI op, but Xen still watchdo=
gs on the VMs in both cases.  I noticed the other Linux generic arm 'cpu-id=
le' driver which used to do issue a WFI/cpu_do_idle isn't useable anymore e=
ither.  I'm not sure if Xen may have used to rely on this generic driver to=
 get the WFI.

CONFIDENTIALITY NOTICE: This e-mail, including any attachments, may contain=
 information that is confidential and privileged. Any unauthorized disclosu=
re, reproduction or use of this e-mail is prohibited. If you are not the in=
tended recipient, please notify the sender by reply e-mail or telephone and=
 permanently delete this e-mail and any reproductions immediately.


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 16:05:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 16:05:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599615.935105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfjPY-0008MR-Pv; Mon, 11 Sep 2023 16:05:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599615.935105; Mon, 11 Sep 2023 16:05:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfjPY-0008MK-N2; Mon, 11 Sep 2023 16:05:16 +0000
Received: by outflank-mailman (input) for mailman id 599615;
 Mon, 11 Sep 2023 16:05:15 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xbw8=E3=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfjPX-0008MC-04
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 16:05:15 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20622.outbound.protection.outlook.com
 [2a01:111:f400:7d00::622])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fd325d71-50bc-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 18:05:13 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by AS8PR04MB7541.eurprd04.prod.outlook.com (2603:10a6:20b:29a::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Mon, 11 Sep
 2023 16:05:10 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::9d93:f481:7a9b:345d%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 16:05:10 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fd325d71-50bc-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Dzuh+4+bmN/+bhTACMuQK0AC43Nm3k6MErb3JBCgifXW6dfVV6sbv3xe8uAgdYrnwyVSyPZMbSis4HfTR32kosvjsubqdhOukRatZHiKtSFpERJV3I42pXB1LlAJ+AItrZ4B6iT1NwpYEeUkKj3KlUYbniJaPZlSswCZnLps7GCQF1VEMOCTsONaS7ExmW442cZErK5/0qTjGrJtCj8zUzLOvwxEhklQVVPO4bzgUm7hxbg/jB+2sdLTnOYsMWDxet8xA67ChTjVmbvyU9dmK2jBiofn4p1Pi42d5zEfdg2e1/HXRT4wqLFoZKO3u/k+5H4u+mWKUg1PprMlHtuRRQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=w9wOiOFi3vZgH5u4noA2ptE8EfHKbzucFXRyhHawdrk=;
 b=eIV0yq9p2kroYiSzCnEkWB0JjrMVG/Vcdl/7suT+hUIJ8GUS3cYP8tyg/5N47sx/NhUMOfeYyQGT6KWw8Yy/+3Y3hzR9E+qNb1i5eGQpR0j0Hfb/wn3DR4wnik5En64EjLg8cPh5YiX9lpEl2X80BXJbIPrlzN6to6AzroG6Rit7sKwFkLB2DMZBuigjRHnTxOC6mlH2KowQrv/FclGmYN7nt30kou5cCIjIQ9q382vegi46OJ2aqN3/BwjrOwUdIPGL3ng0Y8scq0mRj6i24WpXpWdYwvQblf0ZXthuCxFgntEbgiWJp508EZ68es7xTz8mEVJRGu+mLLN/tyWbJg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=w9wOiOFi3vZgH5u4noA2ptE8EfHKbzucFXRyhHawdrk=;
 b=vJKzULJiyKWBSyfzQ8wVsiEnkwGHTtB7QFv/NAEPkL7TYwA0JaLSRAgHPH+1MAbstz0dIGYCAP+dHiWKpZo6HER93xa8Ew8FrBXUmZT0MvcBFowK1M+9q6XS1V5eOD4bHaO40Lihm0oiiYqXRfqpikUelHbtLuqHo8sUKOD86Hv8HWcVNld6XXuEV5rkeVbqqaVgfMhyY5fUWWduQT1GE7VGs3vPInwabw1dXVW8xFJC+dIu4fCZK72c1ixu6KRGi4OZpU+bWHZSbnC+WuPwC0/G4zIInMYbpxoDJMXrJg82aD5CuKtBPOEbM0/mKbH9AHODo4RfcxslS8pLDgtb4w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7975f360-9608-3495-67ed-1dbfec330668@suse.com>
Date: Mon, 11 Sep 2023 18:05:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] coverage: update gcov info for newer versions of gcc
Content-Language: en-US
To: =?UTF-8?Q?Alex_Benn=c3=a9e?= <alex.bennee@linaro.org>
Cc: Javi Merino <javi.merino@cloud.com>, Henry Wang <Henry.Wang@arm.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
References: <20230902151351.10325-1-javi.merino@cloud.com>
 <ce6e7abd-40ee-dd9e-b17c-10c39ca0e422@suse.com> <87y1hcogg2.fsf@linaro.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <87y1hcogg2.fsf@linaro.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0126.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b9::7) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AS8PR04MB7541:EE_
X-MS-Office365-Filtering-Correlation-Id: abd88fd7-b835-4a77-fe2a-08dbb2e0e025
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ehbusvSJxan89KyasuI5aTzuLAuS3gzt+KXBFv9V0U8KgUhpx55oYpZHsMcHNwfT2Ir3sWwDOGKZS7ODbrNpVbMvJEn+lXtL3TWC8/EAfGMG+aG7/dp2oXKDZwyzbyCZ5Z7Gz0v3alp9HB3jJNKVwR277xXZnkeqVbUy9Y629U8OnuxiQnz9YtRCCbM3yswM+QhUwXok97IObB6jDDdt6+l7r8L/3LfZLfOk7udaB+JMIcLjT8l9zii42M9b2dPcfmwe49jb71s6rBaBfAKNUr8+dwd8R50rueqoh30bZubfSp9/ABcLE1ovhy4j5EOD+dfjrVIzX/ztBv9foS3N9QlZ5Nz1V2FXqbPkRXODtUEzfU7nz/LDJzQleTQr1ol0fPGWnVJEG0YesM2d9gZpQXjkyg3Rm8ZILEGno27+uRo4YOSj4vs1HUX4qPmvcXlj/PJ3U+SGZRozRhqqDIKW2Svb7MpX/WkhQ4jYEP7J8hSb6E0itX6GudRymJ5k//RBQdr6T80m3n253YVO6gv8N85x+ocfOfkK0vQ7OHN7GaF7FUOFbtVtHcbOe9BrAoDXawbc3YLi/DI88qENxHn+UsulJG1x0sDtWxr+tZs1a/ZetAYE9YFUlHhHGKlMyEir9m9pVS+oFcJabz46Rn8UJg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(396003)(136003)(39860400002)(376002)(1800799009)(186009)(451199024)(6506007)(6486002)(6512007)(83380400001)(31696002)(86362001)(38100700002)(66574015)(53546011)(36756003)(2616005)(26005)(66946007)(66476007)(66556008)(54906003)(6916009)(316002)(41300700001)(2906002)(4326008)(8936002)(8676002)(31686004)(5660300002)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bzJQMjExbG9IVkQ5NEhTdkZaekxEaGpnOHdhUzZmbXIxTUxBbjJtNmpyTmxi?=
 =?utf-8?B?MWNqNVBjVE5vTGplbTBVOE1zc3ByYVpzSG5WWWVRZDJkTWRsWkpFaDE1SVdU?=
 =?utf-8?B?SzdVbXNRYTJ2MmlxV0NOWk54RTgwMU9nOTFzQUxKWWVQcnNXcGlSaWI1SVVx?=
 =?utf-8?B?MWtnUjNzWkNsZi9NY2dyL0tEMU9tZmRjci91bEhUN3NlUFVtL01tTWwxeVFa?=
 =?utf-8?B?Y29XWXFHcjVoR1ZwcnN6Y0N3YjlWQjFMTUJmc2gvckJKWlBIT29IS0NrRksr?=
 =?utf-8?B?K1RJMWFoejR0M0FDcHlzRVRSQmVyUzVYVFpOcDh3aE5sVC9PZXM1ZUFWc1RM?=
 =?utf-8?B?WlFKQmhwNFljekJjY09pOXRtQWUwMDBTMzBmQkZtOHpuT0JKSE9kUWxFTnFw?=
 =?utf-8?B?aktFY2ZCUzc5S0trbTZuYW0wVlN2KzdYdlRtTGttZGh2cTkxeDlBVzkzUDQr?=
 =?utf-8?B?a21aQWZOWEZUckJERHFBY2l1OXYwNHErWjJWNnRVdE9UM0Z3c282K21yVWlp?=
 =?utf-8?B?cTdkUWgxMFgzbWVUUVpTc1l2M2p3eGRpSFJGTDd4MkFVcjBmL1FwSHMzMWpJ?=
 =?utf-8?B?cGVGWmJ4MXdBK2RXNmNjb3haOUwyZTVMY0pkcVQ5WGlINithQTFkTWhlLzNO?=
 =?utf-8?B?NGVuZGxqdytaR1NJSWhLWlJsTmNlKy9WUyt5UE8vK0JyRkNrRGhSejB6OTBT?=
 =?utf-8?B?VmoyOWpPMEVycUFOVFZkRldINFBTNmVycGh3QjRSaWprSUN2ZFhpd1dQdE5B?=
 =?utf-8?B?K2hzdS9nNWt4QWVWL3B4T0ZRL3dNT3VUVXBvUGRMVUJUYjU4NXJMTzJKclJB?=
 =?utf-8?B?bGtYWjZ0NTZlL3owVkgydUMyV0YvWVpDTndvcFlXU2pPQlBGQUFCRFVlTSs3?=
 =?utf-8?B?elpLNThBcmhHajRyRHNaQlp4MGZMYkhUcGNzQ1N6MzI2YnN0ejROQ0FGY2o3?=
 =?utf-8?B?MFZMSXNTNUN4S2V6eDQzY3NmTmpVTit3a0RnK296a2RWTkpzT1lGa2ZZY0VH?=
 =?utf-8?B?a1NVVnpzdXNXbkJLUmE4dmNkUUF6RmxGbEcrSEYrYXBWNlc1VmVPOUxkNzg3?=
 =?utf-8?B?dW50SlFDaUxzdjcrNzNOWndsaE5qWER5aEZaY2s3Q3NBNmp1S1NRRlJVaGZQ?=
 =?utf-8?B?MElkRmxrN3pickRvd3FkMjNQNm4wVURjU2pyM3RKU25FOTA1aWorRWRXNnV5?=
 =?utf-8?B?RFJZUElvZ3ZPeVF6VzBsbk5ZenRJZFBhZ0xrRWhUaC83OXc5K1dFcnJmcVRC?=
 =?utf-8?B?TzFXUEp4THlGd0xJY1hyczVIbU55QnR0Q3Q2QkhDUkNQbzlRb1YwR2JjMHEy?=
 =?utf-8?B?V2U0U1NyRzRNeUdOUjBGdDhlVTNiZC9lYTBGWDZmNUdNdjJEck1JMFY3RG5Y?=
 =?utf-8?B?OWoraC9qVHdCY29oSjFLenRGN05FeUpBaG1PRXVIb2YyemdTb0dkblZvNk9L?=
 =?utf-8?B?RkVsRUg1U1pnaWJBUE92OXRIV1hQR09mVjN5Q2tkTzV6MGpoVENEVjhkV3A2?=
 =?utf-8?B?UjlReW9Rd24vMXpXd2Z6Qzg4b2s5bUo0NzFIRVpWNEJ0WG1LYTNCNzF4anVM?=
 =?utf-8?B?NDB6S2RQaHF4K1NVOWc4SFJTRnNXVDNuRVEzU2tIOEMzdXl4Y3VkWnNrNCtR?=
 =?utf-8?B?N0hlZUs2a2ppejRmbFhidmJlZHBWcDZhTmRRTC9STUswdUFKZ3V3eWhjNWRG?=
 =?utf-8?B?OE9hT0pCalI5bzhKZlRjWDh1YVZWSGEvN3VGbFJsa0ZPWXRUcHJHMkp1RjZV?=
 =?utf-8?B?T01oZHNsZkE5aU9icmJLT3lZVG1vYkNoN0RVTUhPUjNPcGpwMnJaa2NQd3h0?=
 =?utf-8?B?N0RZUTA5eXIrNC9meDhIZ1hOcGNLbWthMkJkaGxRTVIyaWN1R1RjVm5tZjR1?=
 =?utf-8?B?d0ZIYUhsOWtJSDNjNE9DUi9mZDlGNlNMRGY2Y2dPNm9rMEtzWEZBdDIwYTdk?=
 =?utf-8?B?M0x4SE9qKzhVWllwYStUclI0cTl0UUdySW5DV291d2t4Z0kyUElsaVIraTI3?=
 =?utf-8?B?RXFzRVAxRmZYbmVNc1pjNkJ2cHRQMTRWdnpwSFJLRXpUcVZXSnhNUVViRFBN?=
 =?utf-8?B?V0VuREVmczY4dDF3Sm1UUzVVRDlKS0Izc0I0MGtOZGNSd1NkRkxsYTdLNmtj?=
 =?utf-8?Q?KA8rXrWQagMR4hpYrdOZfYSmY?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: abd88fd7-b835-4a77-fe2a-08dbb2e0e025
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 16:05:10.7493
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: EI1fwPDonHgXUtG08kA4z4z6SpIsr+Hx9Tl0s9El3LN9H4YP8DecoPgPrk9Fr2RfjNSG8SdJYVDgLNhUQ79N8w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7541

On 11.09.2023 17:26, Alex Bennée wrote:
> Jan Beulich <jbeulich@suse.com> writes:
>> On 02.09.2023 17:11, Javi Merino wrote:
>>> --- a/xen/common/coverage/Makefile
>>> +++ b/xen/common/coverage/Makefile
>>> @@ -5,7 +5,9 @@ obj-y += $(call cc-ifversion,-lt,0407, \
>>>  		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
> 
> This isn't even supported, see below:
> 
>>>  		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
>>>  		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
>>> -		gcc_5.o, gcc_7.o))))
>>> +		gcc_5.o, $(call cc-ifversion,-lt,1000, \
>>> +		gcc_7.o,  $(call cc-ifversion,-lt,1200, \
>>> +		gcc_10.o, gcc_12.o))))))
>>
>> This is getting unwieldy, so I think we ought to try to limit the number
>> of different files we have. Already gcc_4_9.c and gcc_7.c specify the
>> same GCOV_COUNTERS and differ only in the version checks (which could be
>> combined). Therefore ...
> 
> You may want to consider your policy on supported GCC versions. I see
> you still support:
> 
>     * C compiler and linker:
>       - For x86:
>         - GCC 4.1.2_20070115 or later
>         - GNU Binutils 2.16.91.0.5 or later
>         or
>         - Clang/LLVM 3.5 or later
>       - For ARM 32-bit:
>         - GCC 4.9 or later
>         - GNU Binutils 2.24 or later
>       - For ARM 64-bit:
>         - GCC 5.1 or later
>         - GNU Binutils 2.24 or later
> 
> While also having some commented out warnings because the base GCC is so old:
> 
>   CFLAGS   += -Wmissing-prototypes
>   # (gcc 4.3x and later)   -Wconversion -Wno-sign-conversion
> 
> For reference QEMU's minimum GCC is 7.4
> 
>   if compiler.get_id() == 'gcc' and compiler.version().version_compare('>=7.4')
> 
> and while our support cycle is based off distro LTS releases I have to
> wonder do you actually need to support users building the
> latest/greatest version of the hypervisor on ancient user-spaces with
> old compilers?
> 
> I think the oldest distro you have in your CI is jessie (still hanging
> on with extended LTS support) and that uses GCC 4.9.
> 
> I see there are various scripts to gather support status into the
> documentation but I couldn't find a general statement on the projects
> overall approach to supported versions of components.

That's the problem - we've been intending to raise the baseline for quite
some time, but figuring at least a rule of thumb by which to go both now
and in the future turns out problematic.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 16:08:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 16:08:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599621.935114 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfjSe-0001E6-7I; Mon, 11 Sep 2023 16:08:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599621.935114; Mon, 11 Sep 2023 16:08:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfjSe-0001Dz-4e; Mon, 11 Sep 2023 16:08:28 +0000
Received: by outflank-mailman (input) for mailman id 599621;
 Mon, 11 Sep 2023 16:08:26 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zO6f=E3=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qfjSc-0001Dt-Cq
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 16:08:26 +0000
Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com
 [2a00:1450:4864:20::334])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6f213ba0-50bd-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 18:08:24 +0200 (CEST)
Received: by mail-wm1-x334.google.com with SMTP id
 5b1f17b1804b1-4018af103bcso29382735e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 09:08:24 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 p11-20020a1c740b000000b003ff013a4fd9sm10499212wmc.7.2023.09.11.09.08.22
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 09:08:22 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6f213ba0-50bd-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694448503; x=1695053303; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=LsdVyIxXkOCViINSF5QWJqkeUffYmbEMfEE5UQFCeYA=;
        b=K4k1TXRxU7W9qsZ8Q0lbsnBUINxRWjBRGe28TC8cIK0XKPkfPhXDz1wsFDVBNChEnc
         CHRFBJrKfpmRBdT2uXTo20ilWIaot9MqgR36bue3ekiadu8M2yfH/D8lYghtszHFfS8V
         o5bEJVjHudg7Vc800dKZrkVr9w4HGbnYo/nbE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694448503; x=1695053303;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=LsdVyIxXkOCViINSF5QWJqkeUffYmbEMfEE5UQFCeYA=;
        b=MsrL7Eghx7/mQ764bn1mMeb9XBp2n4v5xGoKAQpQf8heMFqKKa8QsaBu6X1FvXU345
         0QHYsW90aZ/nVxUgGPpToT7hU/uYlrzgFwjDGmzlYl+gIa2hxcIRRe1gnLYdkrlG3vXC
         PWqEUrgmarnAc4Ui09XIyIoWaEWwRrxtpM5U3AuP3lale72nYF8A4t2TFbTcpA6quIqx
         1xA796PkNY+HsSI5NXHoL/07BAmtbnZjd3qIVNWwhFNzdW+qs6jZStT9d1x748o4pmWR
         1JRdFaXatKM5pABwC6FDELZy5RihaSndABrXxKUD1tI7gGjdCQIOEdbnKQiPxPsjp3Gc
         Qapw==
X-Gm-Message-State: AOJu0Yz6hdtLKISy9SbwjB24jnzT0F9neMPlbOqFatVWfXOX3a25PJDU
	CB+O1x5fgqf7nRLtl8DBcnhVjofg1Y50ChJaBT0=
X-Google-Smtp-Source: AGHT+IGIZXl0Se4q24i9mTW7FWKcWgHkztjomo+neuR4b1WolI1w7D5/CgasEQ1fC/shYE6rh7R0aA==
X-Received: by 2002:a05:600c:245:b0:401:c1e2:f74f with SMTP id 5-20020a05600c024500b00401c1e2f74fmr55409wmj.15.1694448503166;
        Mon, 11 Sep 2023 09:08:23 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: Javi Merino <javi.merino@cloud.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [XEN PATCH v2] tools/xentrace/xentrace_format: Add python 3 compatibility
Date: Mon, 11 Sep 2023 17:07:02 +0100
Message-ID: <20230911160701.249853-2-javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Resolves: xen-project/xen#155

Signed-off-by: Javi Merino <javi.merino@cloud.com>
---
Changes since v1:
   - Remove unneeded import from past.utils to avoid depending on python3's future module.

Tested using the format file in tools/xentrace/formats.  With this patch, both python 2.7.18.6 and python 3.10.12 produce the same output.

 tools/xentrace/xentrace_format | 60 +++++++++++++++++++---------------
 1 file changed, 34 insertions(+), 26 deletions(-)

diff --git a/tools/xentrace/xentrace_format b/tools/xentrace/xentrace_format
index 5ff85ae2e8..83a1b04d0c 100644
--- a/tools/xentrace/xentrace_format
+++ b/tools/xentrace/xentrace_format
@@ -4,11 +4,14 @@
 
 # Program for reformatting trace buffer output according to user-supplied rules
 
+from __future__ import division
+from __future__ import print_function
+from __future__ import unicode_literals
+from builtins import str
 import re, sys, string, signal, struct, os, getopt
 
 def usage():
-    print >> sys.stderr, \
-          "Usage: " + sys.argv[0] + """ defs-file
+    print("Usage: " + sys.argv[0] + """ defs-file
           Parses trace data in binary format, as output by Xentrace and
           reformats it according to the rules in a file of definitions.  The
           rules in this file should have the format ({ and } show grouping
@@ -29,7 +32,7 @@ def usage():
           this script may not be able to keep up with the output of xentrace
           if it is piped directly.  In these circumstances you should have
           xentrace output to a file for processing off-line.
-          """
+          """, file=sys.stderr)
     sys.exit(1)
 
 def read_defs(defs_file):
@@ -49,7 +52,7 @@ def read_defs(defs_file):
 
         m = reg.match(line)
 
-        if not m: print >> sys.stderr, "Bad format file" ; sys.exit(1)
+        if not m: print("Bad format file", file=sys.stderr) ; sys.exit(1)
 
         defs[str(eval(m.group(1)))] = m.group(2)
 
@@ -83,8 +86,8 @@ interrupted = 0
 
 try:
     defs = read_defs(arg[0])
-except IOError, exn:
-    print exn
+except IOError as exn:
+    print(exn)
     sys.exit(1)
 
 # structure of trace record (as output by xentrace):
@@ -117,12 +120,17 @@ TRC_PV_HYPERCALL_SUBCALL = 0x20100e
 NR_VECTORS = 256
 irq_measure = [{'count':0, 'tot_cycles':0, 'max_cycles':0}] * NR_VECTORS
 
+if sys.version_info >= (3, 0):
+    stdin_bytes = sys.stdin.buffer
+else:
+    stdin_bytes = sys.stdin
+
 i=0
 
 while not interrupted:
     try:
         i=i+1
-        line = sys.stdin.read(struct.calcsize(HDRREC))
+        line = stdin_bytes.read(struct.calcsize(HDRREC))
         if not line:
             break
         event = struct.unpack(HDRREC, line)[0]
@@ -140,43 +148,43 @@ while not interrupted:
         tsc = 0
 
         if tsc_in == 1:
-            line = sys.stdin.read(struct.calcsize(TSCREC))
+            line = stdin_bytes.read(struct.calcsize(TSCREC))
             if not line:
                 break
             tsc = struct.unpack(TSCREC, line)[0]
 
         if n_data == 1:
-            line = sys.stdin.read(struct.calcsize(D1REC))
+            line = stdin_bytes.read(struct.calcsize(D1REC))
             if not line:
                 break
             d1 = struct.unpack(D1REC, line)[0]
         if n_data == 2:
-            line = sys.stdin.read(struct.calcsize(D2REC))
+            line = stdin_bytes.read(struct.calcsize(D2REC))
             if not line:
                 break
             (d1, d2) = struct.unpack(D2REC, line)
         if n_data == 3:
-            line = sys.stdin.read(struct.calcsize(D3REC))
+            line = stdin_bytes.read(struct.calcsize(D3REC))
             if not line:
                 break
             (d1, d2, d3) = struct.unpack(D3REC, line)
         if n_data == 4:
-            line = sys.stdin.read(struct.calcsize(D4REC))
+            line = stdin_bytes.read(struct.calcsize(D4REC))
             if not line:
                 break
             (d1, d2, d3, d4) = struct.unpack(D4REC, line)
         if n_data == 5:
-            line = sys.stdin.read(struct.calcsize(D5REC))
+            line = stdin_bytes.read(struct.calcsize(D5REC))
             if not line:
                 break
             (d1, d2, d3, d4, d5) = struct.unpack(D5REC, line)
         if n_data == 6:
-            line = sys.stdin.read(struct.calcsize(D6REC))
+            line = stdin_bytes.read(struct.calcsize(D6REC))
             if not line:
                 break
             (d1, d2, d3, d4, d5, d6) = struct.unpack(D6REC, line)
         if n_data == 7:
-            line = sys.stdin.read(struct.calcsize(D7REC))
+            line = stdin_bytes.read(struct.calcsize(D7REC))
             if not line:
                 break
             (d1, d2, d3, d4, d5, d6, d7) = struct.unpack(D7REC, line)
@@ -211,7 +219,7 @@ while not interrupted:
         if cpu >= len(last_tsc):
             last_tsc += [0] * (cpu - len(last_tsc) + 1)
         elif tsc < last_tsc[cpu] and tsc_in == 1:
-            print "TSC stepped backward cpu %d !  %d %d" % (cpu,tsc,last_tsc[cpu])
+            print("TSC stepped backward cpu %d !  %d %d" % (cpu,tsc,last_tsc[cpu]))
 
         # provide relative TSC
         if last_tsc[cpu] > 0 and tsc_in == 1:
@@ -239,18 +247,18 @@ while not interrupted:
 
         try:
 
-            if defs.has_key(str(event)): 
-                print defs[str(event)] % args
+            if str(event) in defs: 
+                print(defs[str(event)] % args)
             else:
-                if defs.has_key(str(0)): print defs[str(0)] % args
+                if str(0) in defs: print(defs[str(0)] % args)
         except TypeError:
-            if defs.has_key(str(event)):
-                print defs[str(event)]
-                print args
+            if str(event) in defs:
+                print(defs[str(event)])
+                print(args)
             else:
-                if defs.has_key(str(0)):
-                    print defs[str(0)]
-                    print args
+                if str(0) in defs:
+                    print(defs[str(0)])
+                    print(args)
 
 
-    except IOError, struct.error: sys.exit()
+    except (IOError, struct.error): sys.exit()
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 16:15:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 16:15:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599630.935124 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfjZG-0003j6-0s; Mon, 11 Sep 2023 16:15:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599630.935124; Mon, 11 Sep 2023 16:15:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfjZF-0003iz-UP; Mon, 11 Sep 2023 16:15:17 +0000
Received: by outflank-mailman (input) for mailman id 599630;
 Mon, 11 Sep 2023 16:15:16 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qfjZE-0003it-Kj
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 16:15:16 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfjZD-0003f4-VC; Mon, 11 Sep 2023 16:15:15 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qfjZD-0004uj-Pp; Mon, 11 Sep 2023 16:15:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=YLiHtCXtYYGwmkaJ5h0pWjNxa7iEg+5Vud9FCw8H5T4=; b=TSX0IrV4H4ruKwB+EuWpOHpsR3
	d/sjTQmtIGcK1kHXca4M/m82eTzT/Ay4MnsfOd4udvQxBwHCGM6LiFBqdtLIxt4InLBHNGTdKd2FF
	jP+R+LFFwdHtd6RBRxs2nonaw8hHZjjuz6c1Z5Ntl+MhwjW/g6QheB9UgXCE/9vzsa+4=;
Message-ID: <b1c3c30d-a535-445f-8159-fc5e28fadd7f@xen.org>
Date: Mon, 11 Sep 2023 17:15:14 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] build: restrict gcc11 workaround to versions earlier than
 11.3.0
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <3a5913ad-c273-0ee6-11c8-9d18e9a4a84b@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <3a5913ad-c273-0ee6-11c8-9d18e9a4a84b@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jan,

On 22/08/2023 15:40, Jan Beulich wrote:
> The fix for this issue was backported to 11.3, so let's not unduly
> engage the workaround.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 16:30:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 16:30:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599637.935135 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfjoE-0000RL-8O; Mon, 11 Sep 2023 16:30:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599637.935135; Mon, 11 Sep 2023 16:30:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfjoE-0000RE-5P; Mon, 11 Sep 2023 16:30:46 +0000
Received: by outflank-mailman (input) for mailman id 599637;
 Mon, 11 Sep 2023 16:30:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S94K=E3=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qfjoD-0000R8-9U
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 16:30:45 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20623.outbound.protection.outlook.com
 [2a01:111:f400:7e89::623])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8c6414a4-50c0-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 18:30:42 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by DS7PR12MB6335.namprd12.prod.outlook.com (2603:10b6:8:94::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Mon, 11 Sep
 2023 16:30:38 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::9a2:f8ec:7c75:fe95]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::9a2:f8ec:7c75:fe95%6]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 16:30:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8c6414a4-50c0-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dKlZCgSYFPNfErTkM8A/JaVmQsZD7429ZtUYgiDhY6Z+VlQ1vI+sactBsdGgr3rHkP0pODJPV2UzUj0ha4c5Gp+pf+pm8wb4rtqhXUxrTYpPB6ePe+8HJ8ggDchvbZnIyCb/tVdOjDEN/BAv3uGbmgsmI415i7RfLci9lhuH3bcSNxnUOBm/F8jz5yIEGQJH3mkHEfiJ5nIXXGQgk/PPsmJrlL71JAre80FE/Pre6o7ZNzsRZzmO98IDq0A/pe9XS98765ASwY1fopzW7fEWSYfRwwyWwUxAaSL7EmYBtdbz6/Kz1oMjdSVMdyJwqcUKLEARrWQ8+hJaGH+qJJ07Jw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9DL81iP3XqN17ao8y+idnBJa20HNdvb/ZbwonSzEyR8=;
 b=hCse1ZGlkf5oQd6TSmydeklVUcLZAorKwQNIWo6D7qFhsb9bmPEysOgSSQAIcoSnxoVplZmDiu6R5/np5Jk9YaV4A2LiIgxQ3crnPK8gvAtaLtaQl98wdsDG0+SIN/V2NJgLiQO+sohQC75NyoCF4HZGd9gb78fEm+0WXj/bQOkFMLxZUCqjbZ8qa5uMZ1vPRExnAHOKgz+S4oor+a+QmMrUWrHKcEVy5OKQKo7R0Zc2JYWi/u4VX+F7h2SanOwxyqjwOaDkJBquEOBTWqaIRaEMZt6lpJtxJJaAd6Rgs9PwW7N+abb5eUw8t0fXZprWTerEROtSQ/jWmXXr3EhetA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9DL81iP3XqN17ao8y+idnBJa20HNdvb/ZbwonSzEyR8=;
 b=daOWOm1V/fLLnhOHeLhjkzHp9+Pk5AYyRa4Jbs5rVCgNcSlloWchzIfpQxK8qLkmUyz4xJq9036dwMmrC4SD15JmPTGSpgAXUOqFPNu5+Cixg8k3KzCUz9jit0zd4KG7an3hKJHrlrYqTJwYDb/MDZp523brxWqTG7DaOuk/YHo=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <8382476f-7f74-7239-1599-f42a5f3c3c72@amd.com>
Date: Mon, 11 Sep 2023 17:30:32 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.0
Subject: Re: [PATCH v6 08/13] xen/arm: Fold mmu_init_secondary_cpu() to head.S
To: Julien Grall <julien@xen.org>, Henry Wang <Henry.Wang@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Wei Chen <Wei.Chen@arm.com>,
 Penny Zheng <Penny.Zheng@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-9-Henry.Wang@arm.com>
 <19a8b434-3b2d-9e3d-fc05-fc2828d1abbd@amd.com>
 <CE8AF1AE-8F01-4DD8-86EE-12C4AD18E4A0@arm.com>
 <ec41bd05-4a25-438b-84cb-ca86d7bf34d8@xen.org>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <ec41bd05-4a25-438b-84cb-ca86d7bf34d8@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LNXP265CA0092.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:76::32) To SN6PR12MB2621.namprd12.prod.outlook.com
 (2603:10b6:805:73::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|DS7PR12MB6335:EE_
X-MS-Office365-Filtering-Correlation-Id: 029daa4f-2f11-4830-9211-08dbb2e46e84
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5hdibuDlQlrmvNd8+MFcDylawzwqhAYcYQ9UTqqZny5jQsIX/DQKqAZfubmqJz6kcrueeMZ7BtjIXKyeGsiheXj97Be60flt2oyia3YGiEzJZuXC+KbU+qwfxvl4dtkCHByULWviKnMTMLKgyO/MKF7+nh9wf0ybyr9U4raHjBRcf2tx0khTBq8Jqf4U3Vq2dw+E+OZI+K2tUfLHeH7wQN3ZsSS5eN1kwwJ9ogvULLccJ6f4adBWJmB7NzwniS78Ca7qzJ3hfbGdYS7jpRyIeBS1E7NU51ddlD1Gguzv8Y3XzrLKqxY/6C4kaRYP+OKVRvStdo9X4pzV4pq692nbvhuNlwpy+jJVRjcxY3Fct704zVvOwktDI1RByzrMpa96/Zo9w7nOOIFFPEaXTy9wLwlJTZcwLBV/pzb3GLzkws3VOEoReHmjfAsJbwdkO5hBGPmfd5fBRU4UYGoFm+xzZeGSDTU0poa/EujagovYtw5pe1NisBg6jgSmtt7wWNKZJCSLM7qHiAMpgv6dmLyYgCSznUirKk6KrLUhrReLFsUH2ktf3s9+ivgwwvkL5eUzrjGo6yHwDhnYYPRcBfWXiRiwN7KfzLWo5KFcCxOV08KbA+8CPlrRtZzfngweRrkjyP5o40iCb1tudt35XZDKTQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(346002)(136003)(366004)(396003)(186009)(1800799009)(451199024)(110136005)(31696002)(26005)(2906002)(83380400001)(53546011)(6486002)(6506007)(6666004)(2616005)(6512007)(478600001)(38100700002)(36756003)(5660300002)(8936002)(8676002)(31686004)(54906003)(66476007)(66556008)(4326008)(316002)(66946007)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NVBZMUxCWHpUTkJKYzN1OVBWRkNuNHRNem1QNG1PUVc0aVRBSmlIUWQ1TlJx?=
 =?utf-8?B?WmprMXV4Z2ZRbHpER3FmeXl0bGFLL1ByR2M2NENkRmUrZVhsV0pwSWh2ZzJE?=
 =?utf-8?B?NmNqNDczUnRESit6c0poM053eU1zYzVBb05acnNqZno1eUxtUERkUEJXLzJB?=
 =?utf-8?B?Q1F5ZVA5YUNlL0c0cEFIb3hSYTZ1azZqOEFJMEgzbTJVKzFzbXBQeGo2SWs4?=
 =?utf-8?B?Tnh0YXp6Wk95Nkl0dUN1Y0k5NFdqK1p1MXdUZkNJai81U21KbE9lZDBldTNU?=
 =?utf-8?B?b3BQVEZ5Q2lMN3l3Z2VjVHlQcmpVTldPZS90S0NuY0JRaS96SjVjSzhnQ0tw?=
 =?utf-8?B?Z1hTT25kb2pSelVqZmI0dlhMZ3FsTUFac0gwZUdjYkR1V3NoRHZXSEI5d1pp?=
 =?utf-8?B?OG45WHppQ0pDWWVPLzJQRGJNUzc5clFsMS9FWlBGbUVJVVVNazZUZTNaTmZK?=
 =?utf-8?B?K1NpOGJ6WUlqVkpWamtOSkJsYjV6SEJKZXR1b2FBNjI5ZU9XTHErcm5GRThK?=
 =?utf-8?B?OE9ZODdKZHhTY2dkeG5OT2pmS2VCanVxK3FrWXVnQXU1SVQ0a3NUa1pWVXdv?=
 =?utf-8?B?WHZ0OXdwTi8wNCs3TFhTL0lPTlZYd0g0S25OeDhCaFJrN29JYmh4ZjNXaVRR?=
 =?utf-8?B?NXJXc0VnNytqSXRaeExmSUk4RTJ5WWEzaTF0eVo2dVBjZmRJMlNVeVlNbUly?=
 =?utf-8?B?eERWYTFsNDc1dVdmajJTL1lCUnMwQzBjWEFtcFFqNm5zUTJrd0RISHcrNE1u?=
 =?utf-8?B?NTZOTWdrajFFUklGTGMyVGtXS1ZPTFJwMEl4WmlSckQ5cXJZYmVVVzM4SHpr?=
 =?utf-8?B?KzVQa3k2TVpER1hpNjE1NzJrcVJJNFNUNGhUbHFZODFUSXNObHY5cHpnd00r?=
 =?utf-8?B?emdlUjdFTVZXaXpsYU9JNEEvamdXUFkzMHRtRkRIUDRlcDVRNERUeHpXekNw?=
 =?utf-8?B?aGM5bzNEcDVYZVkvZHRlZmFTd2U3NmRUZlFpK2hHV3ZzVFdsTXlRS0pITWt0?=
 =?utf-8?B?R21zSXpPRmJEM2dOOStTcWxmYzFHQUJRMnZNVFkwOFJ0RmJZYXlpbEZqQzN1?=
 =?utf-8?B?bGUxV1ZyTnRlQ0NNbjI1VUVQR25naFRURFRTRDM1T3ptSkYvTnloeVhpYXlC?=
 =?utf-8?B?NVNpZ1ZUZFcxRE9ycVlRdFYyckxZc1N3aGFqUHJVZm1BT2MzT3k2MUd1MUVH?=
 =?utf-8?B?cTh0bWJVZUtBN0tKa2ZtWUw5cUhqM2lHVVRjeW94VWRBUnBocDJhSXVIR0pr?=
 =?utf-8?B?MUZGdWlqSVc2UW5jTjdrQVRnaVpDQnROV2FhN2t1QU51RTFTL2lyR0IzMG1h?=
 =?utf-8?B?cGM4WXNkSkluenhYTkM4aW5GbVljbHl3SlNFUjRPdXo4ck1iU0J2WFk1RWVR?=
 =?utf-8?B?cDB2aU9kdno1Y0V3aGxpUlRnWnNScW5KMjNFSEpCT1Ezc3JaeHJ0UnZKdjda?=
 =?utf-8?B?ajZCNnM1SWVJTjBiOWR0azlvYndHL0YraytFdTE5V1hHTHFaSkc4SzdyejZ0?=
 =?utf-8?B?YzYxanViSGd0UU1EdWwyencyMEtUY1VVSjlBcnhGL1NWMldJVzdUN0Eram9h?=
 =?utf-8?B?aHVvM3IwT3p6OEVyOFhiejVWU0xhYmVzenM1UHlmSEdTSlpqYTFUMjREM1Ey?=
 =?utf-8?B?blBkdDZwMG1jd0E2MGRkRXQ0NGNHdnB6MEc2bGkyc3k4by8yOEFiZnpvRTBY?=
 =?utf-8?B?aU1BNFBnM1BPdzdNZ3RERU5Cam42SEhPSUlRMWJPS1JCbkdyQnJURUhmdk9Z?=
 =?utf-8?B?UUpTUWlVd21TUFBqcmtXSElqRHU2OHZzbXJEa0R5R2NvY2pLYkVPWmZEZzJC?=
 =?utf-8?B?VVBhaTJiK20wL3h4OWhiNkNBa1E3cWtWRzNJZkhQMk9hZkd1S1dBZkU2dWp5?=
 =?utf-8?B?dXF0cWF0ekZTZGIwd1dWNitxdUUrbStYYzRrck9NMjUvWFhUYWZxRXdPcktx?=
 =?utf-8?B?K2tNeGo5Z01kOGptOTQzcjltKzhPZkNacHRqa3c5VTl3T3lZTDlLbXRXcVJv?=
 =?utf-8?B?dHA0VzNsaHhZSlM0Tkk3cHM4SlVHOWRSODdyTG5uVEo5c0lRa0VNRzdidzdV?=
 =?utf-8?B?a1JhYW0zU2RUejFBdUd5Ynlac0FpQnlaNlo4WFBZc2NzYjlJck1lN3VuSWdi?=
 =?utf-8?Q?a3FkYqtDYPPp5C1fYO9BHljKH?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 029daa4f-2f11-4830-9211-08dbb2e46e84
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 16:30:38.2190
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: VprdSQj6i+VGrkcPRNtKthrZCdpEFWh0FchLnWeurLGcJQvVbPkD52gQxLHY2nDQJCEP6Ihw7sH+goIkO26PfQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB6335

Hi Julien,

On 11/09/2023 15:51, Julien Grall wrote:
>
>
> On 31/08/2023 10:16, Henry Wang wrote:
>>> On Aug 31, 2023, at 17:12, Ayan Kumar Halder <ayankuma@amd.com> wrote:
>>>
>>> Hi Henry,
>>>
>>> On 28/08/2023 02:32, Henry Wang wrote:
>>>>
>>>> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
>>>> index 33b038e7e0..39218cf15f 100644
>>>> --- a/xen/arch/arm/arm32/head.S
>>>> +++ b/xen/arch/arm/arm32/head.S
>>>> @@ -83,6 +83,25 @@
>>>>           isb
>>>>   .endm
>>>>
>>>> +/*
>>>> + * Enforce Xen page-tables do not contain mapping that are both
>>>> + * Writable and eXecutables.
>>>> + *
>>>> + * This should be called on each secondary CPU.
>>>> + */
>>>> +.macro pt_enforce_wxn tmp
>>>> +        mrc   CP32(\tmp, HSCTLR)
>>>> +        orr   \tmp, \tmp, #SCTLR_Axx_ELx_WXN
>>>> +        dsb
>>>> +        mcr   CP32(\tmp, HSCTLR)
>>>> +        /*
>>>> +         * The TLBs may cache SCTLR_EL2.WXN. So ensure it is 
>>>> synchronized
>>>> +         * before flushing the TLBs.
>>>> +         */
>>>> +        isb
>>>> +        flush_xen_tlb_local \tmp
>>>> +.endm
>>>> +
>>>>   /*
>>>>    * Common register usage in this file:
>>>>    *   r0  -
>>>> @@ -254,6 +273,7 @@ secondary_switched:
>>>>           /* Use a virtual address to access the UART. */
>>>>           mov_w r11, EARLY_UART_VIRTUAL_ADDRESS
>>>>   #endif
>>>> +        pt_enforce_wxn
>>>
>>> Can you move ^^^ to before "#ifdef CONFIG_EARLY_PRINTK" so that the 
>>> MMU related functionality are bundled together?
>>>
>>> Also AFAIU, mov_w has not effect on pt_enforce_wxn().
>>>
>>> So that I can create a function "enable_secondary_cpu_mm()" - 
>>> similar to one you introduced for arm64
>>
>> Sure, I am good with this if other maintainers do not have any 
>> objections.
>
> I am objecting. It would be quite handy to print a message on the 
> console to indicate that we are enforce WXN. So we want to update UART 
> address (stored in r11) before hand.

You mean you want to add this snippet in the current patch

diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
index 39218cf15f..282b89a96e 100644
--- a/xen/arch/arm/arm32/head.S
+++ b/xen/arch/arm/arm32/head.S
@@ -273,6 +273,7 @@ secondary_switched:
          /* Use a virtual address to access the UART. */
          mov_w r11, EARLY_UART_VIRTUAL_ADDRESS
  #endif
+        PRINT("- Enforce WXN -\r\n")
          pt_enforce_wxn r0
          PRINT("- Ready -\r\n")
          /* Jump to C world */

- Ayan

>
> Cheers,
>


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 16:52:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 16:52:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599648.935152 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfk8t-0005gD-Ur; Mon, 11 Sep 2023 16:52:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599648.935152; Mon, 11 Sep 2023 16:52:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfk8t-0005g6-QY; Mon, 11 Sep 2023 16:52:07 +0000
Received: by outflank-mailman (input) for mailman id 599648;
 Mon, 11 Sep 2023 16:52:06 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zO6f=E3=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qfk8s-0005g0-EC
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 16:52:06 +0000
Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com
 [2a00:1450:4864:20::32d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 895a8164-50c3-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 18:52:05 +0200 (CEST)
Received: by mail-wm1-x32d.google.com with SMTP id
 5b1f17b1804b1-4018af103bcso29738545e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 09:52:05 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 b13-20020a05600c11cd00b003fefcbe7fa8sm10578124wmi.28.2023.09.11.09.52.03
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 09:52:03 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 895a8164-50c3-11ee-8785-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694451124; x=1695055924; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=n2oThcUQEm2o0fOsAVZ8LsEhKrwQN2d2RddYXBJjXfc=;
        b=fIhBB9Fn8FM7KytDi1yaqj9nVbmyOc2I0HAC8EJ6GE3hnVUtGd8j7IYeseZ2vbXOOh
         gmiUEhGhQD75KVQ+941UGfxJd2+fowIWyNKylDgOmIojjSDHHnx/EYEbXhtMe6W88MNU
         6dAmvaygXEdEK6VQrhtmBXcGvjms3ewXmhvC8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694451124; x=1695055924;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=n2oThcUQEm2o0fOsAVZ8LsEhKrwQN2d2RddYXBJjXfc=;
        b=N2euSHu89L+MbdtHljnstdhix1nU/hL8wlxElBoWQ9emomukR/fqDK0VHdi9CCLVn/
         +xlaeurF00Ww09cuRPRZq7pn2Gx+/RB7D8fBwkKooPwTksFmcjZQjjOaf4jBquOHNN7R
         GHp6AUzgnSZSQZZvMLs22jgDtivaFyxvix9YHHIa0vFnelWTwCKtl9oEL4h7w0w4jS8X
         jS50FjTA0k/lRwhJA87ds/Ko0bVQwreVeUKiawlUb0G0bGAi3vcIpWGZV2Ii+wBmCDPW
         /vK1DDcSyqSknzB+lVVWPvsMStCBwEc4K+S9cADAvmB62GAbhZ3OgU8goVQWxg8s5Ul7
         fz2Q==
X-Gm-Message-State: AOJu0YyS73FXUO9Of2m5GrErQhG4Wg1LyhTTUi326LG6QbsnGqUdbtG3
	4gpYuCG63fJVvQJuM7hD2Ix1nl/azAPmkFCSOgg=
X-Google-Smtp-Source: AGHT+IHLw5vhaa/ES9r21e9rQvKRVqeFoXM8XxogClRoKWsS7l9ZDPEZ+dC7y1iKBU04kXNAHMB8+A==
X-Received: by 2002:a05:600c:4449:b0:401:b92f:eec5 with SMTP id v9-20020a05600c444900b00401b92feec5mr131871wmn.9.1694451123998;
        Mon, 11 Sep 2023 09:52:03 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Jan Beulich <jbeulich@suse.com>,
	George Dunlap <george.dunlap@cloud.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Javi Merino <javi.merino@cloud.com>
Subject: [XEN PATCH v2 0/5] python: Use setuptools instead of the deprecated distutils
Date: Mon, 11 Sep 2023 17:50:59 +0100
Message-ID: <cover.1694450145.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This series picks up Marek's v1 from
https://lore.kernel.org/xen-devel/20230316171634.320626-1-marmarek@invisiblethingslab.com/
Changes since v1:
  - Update all containers to have setuptools, as python 3.12 depecrates distutils in favour of setuptools
  - Keep python2's support by falling back to distutils if setuptools is not installed
  - Drop the commit about raising the baseline requirement for python, as we keep supporting python2

Javi Merino (2):
  automation: add python3's setuptools to containers
  README: update to remove old note about the build system's python
    expectation

Marek Marczykowski-Górecki (3):
  tools: convert setup.py to use setuptools
  tools: don't use distutils in configure nor Makefile
  tools: regenerate configure

 README                                        |    7 -
 automation/build/alpine/3.18.dockerfile       |    1 +
 automation/build/archlinux/current.dockerfile |    1 +
 automation/build/centos/7.dockerfile          |    3 +-
 automation/build/debian/bookworm.dockerfile   |    1 +
 automation/build/debian/stretch.dockerfile    |   11 +-
 .../build/suse/opensuse-leap.dockerfile       |    1 +
 automation/build/ubuntu/bionic.dockerfile     |    1 +
 automation/build/ubuntu/focal.dockerfile      |    1 +
 automation/build/ubuntu/trusty.dockerfile     |    1 +
 automation/build/ubuntu/xenial.dockerfile     |    1 +
 m4/python_devel.m4                            |   28 +-
 tools/configure                               | 6551 +++++++++--------
 tools/libs/stat/Makefile                      |    4 +-
 tools/pygrub/setup.py                         |    8 +-
 tools/python/setup.py                         |    8 +-
 16 files changed, 3678 insertions(+), 2950 deletions(-)

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 16:52:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 16:52:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599649.935161 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfk94-0005xH-5p; Mon, 11 Sep 2023 16:52:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599649.935161; Mon, 11 Sep 2023 16:52:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfk94-0005x8-14; Mon, 11 Sep 2023 16:52:18 +0000
Received: by outflank-mailman (input) for mailman id 599649;
 Mon, 11 Sep 2023 16:52:16 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zO6f=E3=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qfk92-0005g0-Dm
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 16:52:16 +0000
Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com
 [2a00:1450:4864:20::32a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8fccec2d-50c3-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 18:52:15 +0200 (CEST)
Received: by mail-wm1-x32a.google.com with SMTP id
 5b1f17b1804b1-403004a96a4so26106895e9.3
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 09:52:15 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 b13-20020a05600c11cd00b003fefcbe7fa8sm10578124wmi.28.2023.09.11.09.52.14
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 09:52:14 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8fccec2d-50c3-11ee-8785-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694451135; x=1695055935; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=DuvtUcntTTNou/RWe1jYCTA4tsoauev6PPJ3eOrOD8c=;
        b=Qc3jxJr91UQX5/ONOoA8OsK90rGQLLHJ8JVckiTSXDYfeD21Nuiwg8PSpsIDw51twt
         WSKw+1vaRyLu51oN/I8Fr3fxPfxy6MCdF+MknAAc0E7PIaagt5d4lNaGmeqr8pTE52WD
         JwUSkeGqQPqxVs8ByssdGQNzgIc1tGLZzq6L8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694451135; x=1695055935;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=DuvtUcntTTNou/RWe1jYCTA4tsoauev6PPJ3eOrOD8c=;
        b=IM/Y4SxepMCF3+zvYgDE/KYdRUWQbUm/1x5QTmF0o2ktS73XrB3ebvHX6CnF5WOUby
         F2Pqi22t/W7KL+bCSh3aqG0DtHM91Bl3WTC1iXHGazawzDtEE1ynTi38iZjzLZXxekgE
         keiAw4ohv7RifGzgfOtZh6ccwozY+5qAvk9nM6r/9AGjpmC/mNqcX6fhoKCYvNqDAWB/
         IqeelE4PXFjIw7oxn7JoL+DkcocdG/6Ohv64k53nxyBxtbbmxUlhP3XWd27hMepX4V+g
         r7G2J3nluyfXntaWTnT4ghBKpIbwnF933sE8s80bTm/0dFRyNH8sFgKSE4Mze1Dizkh1
         9YQg==
X-Gm-Message-State: AOJu0Yy5sGhDQwX685VJ3LFcaGxeEUjWdTZTobt6NG5MVwV68LHr2fHY
	cC7jWiKqWimyD6VssLyoCaaYNerSKi9sB5AhR2k=
X-Google-Smtp-Source: AGHT+IH3VUlWpvWhKwFfVjAunfmbfPAjFMwQRqfEV8Zt1XdCfIfN4XxL421AivE9o3up8hNxGQPJyw==
X-Received: by 2002:a1c:7719:0:b0:401:bf87:989c with SMTP id t25-20020a1c7719000000b00401bf87989cmr9080614wmi.34.1694451134981;
        Mon, 11 Sep 2023 09:52:14 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Jan Beulich <jbeulich@suse.com>,
	George Dunlap <george.dunlap@cloud.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Javi Merino <javi.merino@cloud.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [XEN PATCH v2 1/5] automation: add python3's setuptools to containers
Date: Mon, 11 Sep 2023 17:51:00 +0100
Message-ID: <4f14ea4aeb44c234d9930578614a35234769fa41.1694450145.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694450145.git.javi.merino@cloud.com>
References: <cover.1694450145.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

In preparation of dropping python distutils and moving to setuptools,
add the python3 setuptools module to the containers that need it.

The centos7 container was building using python2.  Change it to build
python scripts using python3.

Debian Stretch is no longer debian oldstable, so move to the archive
repositories.

Signed-off-by: Javi Merino <javi.merino@cloud.com>
---
 automation/build/alpine/3.18.dockerfile        |  1 +
 automation/build/archlinux/current.dockerfile  |  1 +
 automation/build/centos/7.dockerfile           |  3 ++-
 automation/build/debian/bookworm.dockerfile    |  1 +
 automation/build/debian/stretch.dockerfile     | 11 ++++++++++-
 automation/build/suse/opensuse-leap.dockerfile |  1 +
 automation/build/ubuntu/bionic.dockerfile      |  1 +
 automation/build/ubuntu/focal.dockerfile       |  1 +
 automation/build/ubuntu/trusty.dockerfile      |  1 +
 automation/build/ubuntu/xenial.dockerfile      |  1 +
 10 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/automation/build/alpine/3.18.dockerfile b/automation/build/alpine/3.18.dockerfile
index ca5756955e..5d2a69a060 100644
--- a/automation/build/alpine/3.18.dockerfile
+++ b/automation/build/alpine/3.18.dockerfile
@@ -34,6 +34,7 @@ RUN apk --no-cache add \
   ocaml-findlib \
   patch  \
   python3-dev \
+  py3-setuptools \
   texinfo \
   util-linux-dev \
   xz-dev \
diff --git a/automation/build/archlinux/current.dockerfile b/automation/build/archlinux/current.dockerfile
index 13fb472d9e..47e79637a4 100644
--- a/automation/build/archlinux/current.dockerfile
+++ b/automation/build/archlinux/current.dockerfile
@@ -34,6 +34,7 @@ RUN pacman -S --refresh --sysupgrade --noconfirm --noprogressbar --needed \
         pixman \
         pkgconfig \
         python \
+        python-setuptools \
         sdl \
         sdl2 \
         spice \
diff --git a/automation/build/centos/7.dockerfile b/automation/build/centos/7.dockerfile
index 69dcefb2f0..f14f70014a 100644
--- a/automation/build/centos/7.dockerfile
+++ b/automation/build/centos/7.dockerfile
@@ -22,7 +22,8 @@ RUN yum -y update \
         ncurses-devel \
         zlib-devel \
         openssl-devel \
-        python-devel \
+        python3-devel \
+        python3-setuptools \
         libuuid-devel \
         pkgconfig \
         flex \
diff --git a/automation/build/debian/bookworm.dockerfile b/automation/build/debian/bookworm.dockerfile
index f8415425e6..ae008c8d46 100644
--- a/automation/build/debian/bookworm.dockerfile
+++ b/automation/build/debian/bookworm.dockerfile
@@ -16,6 +16,7 @@ RUN apt-get update && \
         libncurses5-dev \
         libssl-dev \
         python3-dev \
+        python3-setuptools \
         xorg-dev \
         uuid-dev \
         libyajl-dev \
diff --git a/automation/build/debian/stretch.dockerfile b/automation/build/debian/stretch.dockerfile
index 1af6c691f8..9f4b91a9e3 100644
--- a/automation/build/debian/stretch.dockerfile
+++ b/automation/build/debian/stretch.dockerfile
@@ -1,4 +1,4 @@
-FROM debian:stretch
+FROM debian/eol:stretch
 LABEL maintainer.name="The Xen Project" \
       maintainer.email="xen-devel@lists.xenproject.org"
 
@@ -8,6 +8,14 @@ ENV USER root
 RUN mkdir /build
 WORKDIR /build
 
+# Debian stretch is now archived.  Fetch packages from
+# archive.debian.org and skip the stretch-updates repository, as it is
+# not longer valid.
+RUN sed -i \
+    -e 's/deb.debian.org/archive.debian.org/' \
+    -e '/stretch-updates/d' \
+    /etc/apt/sources.list
+
 # build depends
 RUN apt-get update && \
     apt-get --quiet --yes install \
@@ -17,6 +25,7 @@ RUN apt-get update && \
         libssl-dev \
         python-dev \
         python3-dev \
+        python3-setuptools \
         xorg-dev \
         uuid-dev \
         libyajl-dev \
diff --git a/automation/build/suse/opensuse-leap.dockerfile b/automation/build/suse/opensuse-leap.dockerfile
index 98ee42970d..7010b71aca 100644
--- a/automation/build/suse/opensuse-leap.dockerfile
+++ b/automation/build/suse/opensuse-leap.dockerfile
@@ -60,6 +60,7 @@ RUN zypper install -y --no-recommends \
         'pkgconfig(sdl)' \
         'pkgconfig(sdl2)' \
         python3-devel \
+        python3-setuptools \
         systemd-devel \
         tar \
         transfig \
diff --git a/automation/build/ubuntu/bionic.dockerfile b/automation/build/ubuntu/bionic.dockerfile
index e15f54431e..9cceb11ef9 100644
--- a/automation/build/ubuntu/bionic.dockerfile
+++ b/automation/build/ubuntu/bionic.dockerfile
@@ -17,6 +17,7 @@ RUN apt-get update && \
         libssl-dev \
         python-dev \
         python3-dev \
+        python3-setuptools \
         xorg-dev \
         uuid-dev \
         libyajl-dev \
diff --git a/automation/build/ubuntu/focal.dockerfile b/automation/build/ubuntu/focal.dockerfile
index 9c851c0620..e3d11194ee 100644
--- a/automation/build/ubuntu/focal.dockerfile
+++ b/automation/build/ubuntu/focal.dockerfile
@@ -16,6 +16,7 @@ RUN apt-get update && \
         libncurses5-dev \
         libssl-dev \
         python3-dev \
+        python3-setuptools \
         xorg-dev \
         uuid-dev \
         libyajl-dev \
diff --git a/automation/build/ubuntu/trusty.dockerfile b/automation/build/ubuntu/trusty.dockerfile
index 22e294c20c..7e819c8e4e 100644
--- a/automation/build/ubuntu/trusty.dockerfile
+++ b/automation/build/ubuntu/trusty.dockerfile
@@ -17,6 +17,7 @@ RUN apt-get update && \
         libssl-dev \
         python-dev \
         python3-dev \
+        python3-setuptools \
         xorg-dev \
         uuid-dev \
         libyajl-dev \
diff --git a/automation/build/ubuntu/xenial.dockerfile b/automation/build/ubuntu/xenial.dockerfile
index 2d2ba3e31f..19464eead8 100644
--- a/automation/build/ubuntu/xenial.dockerfile
+++ b/automation/build/ubuntu/xenial.dockerfile
@@ -17,6 +17,7 @@ RUN apt-get update && \
         libssl-dev \
         python-dev \
         python3-dev \
+        python3-setuptools \
         xorg-dev \
         uuid-dev \
         libyajl-dev \
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 16:52:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 16:52:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599652.935171 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfk9I-0006Pt-Hz; Mon, 11 Sep 2023 16:52:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599652.935171; Mon, 11 Sep 2023 16:52:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfk9I-0006Pm-DH; Mon, 11 Sep 2023 16:52:32 +0000
Received: by outflank-mailman (input) for mailman id 599652;
 Mon, 11 Sep 2023 16:52:31 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zO6f=E3=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qfk9H-0006IO-Im
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 16:52:31 +0000
Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com
 [2a00:1450:4864:20::32a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9829e386-50c3-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 18:52:29 +0200 (CEST)
Received: by mail-wm1-x32a.google.com with SMTP id
 5b1f17b1804b1-401d80f4ef8so50431035e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 09:52:29 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 b13-20020a05600c11cd00b003fefcbe7fa8sm10578124wmi.28.2023.09.11.09.52.28
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 09:52:28 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9829e386-50c3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694451149; x=1695055949; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=NPUcGvGyoZtUdDG2Nxa8yoBsHfZ5dRgf57gwUnI5hXg=;
        b=OxXvUGee6XZyf3z33ttMhQ1oYU8QNHmOxJ3rite7IR8Lur8pl1Anj9D1/2jGZa+wpJ
         8y9Sr0ZsvqAnSyNFX+k2joaJIX7bhenF/l0pHL2DJ4gcBGm06SeWU3+MVOnByCX5wNhO
         9jUNu32+z735aEgk+kyzuure9AbgS9mQKonc0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694451149; x=1695055949;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=NPUcGvGyoZtUdDG2Nxa8yoBsHfZ5dRgf57gwUnI5hXg=;
        b=biD1nki3UAV9Mvee/HZviB7fz6zAcHCzy6Qo0R+vuOKWbK5/kDA81vU9P6Nm1CEyS9
         lELOdOexwtjc2ZBSsmWIfYVN1QFdOebZk4ujDjTyVCoiFHP6fIdb3c3rjVLCCqkmKIv9
         UJyBjCqQcZnxgerCWRXczZXVGaqKMbcsYeElkGQh96T8FCw2lXZPbpN+pDnPKkHC/4sA
         hfpy/eceChhwPYTex86sW8k6BbClsl3UuUroSzDHOmvzOkM0MM7WMYi/JcL8C4BSvyCf
         r7xEyKZHO6G9EmxWbEGSgfNKKEChFjvVDHzqr+40ePsjE6OmimuqxdoUlEQMRvhRhdHF
         6lWQ==
X-Gm-Message-State: AOJu0Yx8GqcV+aUs5nPlLSziW93OgFwTG4zsI1I7txwnCh6HNgcIOTLa
	9L7SfdEwbkGiRg9Nq9tOBxRdqrCB10cjAA8YOLA=
X-Google-Smtp-Source: AGHT+IHN/ovhaR6mjY3qL7uU8D/wrB7TP/wwMhxYq9QMHykbkMHUUDv0lt3Jsem2HVW0/ZkkpQYncw==
X-Received: by 2002:a05:600c:1e14:b0:401:d1a3:d7f7 with SMTP id ay20-20020a05600c1e1400b00401d1a3d7f7mr8340896wmb.30.1694451149168;
        Mon, 11 Sep 2023 09:52:29 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Jan Beulich <jbeulich@suse.com>,
	George Dunlap <george.dunlap@cloud.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [XEN PATCH v2 2/5] tools: convert setup.py to use setuptools
Date: Mon, 11 Sep 2023 17:51:01 +0100
Message-ID: <9bbf71efc710dc869baf0c5ba926630e81181620.1694450145.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694450145.git.javi.merino@cloud.com>
References: <cover.1694450145.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>

Python distutils is deprecated and is going to be removed in Python
3.12. Migrate to setuptools.
Setuptools in Python 3.11 complains:
SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
Keep using setup.py anyway to build C extension.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
 tools/pygrub/setup.py | 8 ++++++--
 tools/python/setup.py | 8 ++++++--
 2 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/tools/pygrub/setup.py b/tools/pygrub/setup.py
index 502aa4df2d..f9e8feb2e6 100644
--- a/tools/pygrub/setup.py
+++ b/tools/pygrub/setup.py
@@ -1,5 +1,9 @@
-from distutils.core import setup, Extension
-from distutils.ccompiler import new_compiler
+try:
+    from setuptools import setup, Extension
+except ImportError:
+    # distutils was removed in Python 3.12.  If this import fails,
+    # install setuptools.
+    from distutils.core import setup, Extension
 import os
 import sys
 
diff --git a/tools/python/setup.py b/tools/python/setup.py
index 721a3141d7..e8111bd098 100644
--- a/tools/python/setup.py
+++ b/tools/python/setup.py
@@ -1,5 +1,9 @@
-
-from distutils.core import setup, Extension
+try:
+    from setuptools import setup, Extension
+except ImportError:
+    # distutils was removed in Python 3.12.  If this import fails,
+    # install setuptools.
+    from distutils.core import setup, Extension
 import os, sys
 
 XEN_ROOT = "../.."
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 16:52:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 16:52:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599656.935180 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfk9N-0006pZ-OT; Mon, 11 Sep 2023 16:52:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599656.935180; Mon, 11 Sep 2023 16:52:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfk9N-0006pN-Lf; Mon, 11 Sep 2023 16:52:37 +0000
Received: by outflank-mailman (input) for mailman id 599656;
 Mon, 11 Sep 2023 16:52:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zO6f=E3=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qfk9M-0005g0-WE
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 16:52:37 +0000
Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com
 [2a00:1450:4864:20::32e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9c20fdec-50c3-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 18:52:36 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-40061928e5aso53549715e9.3
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 09:52:36 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 b13-20020a05600c11cd00b003fefcbe7fa8sm10578124wmi.28.2023.09.11.09.52.35
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 09:52:35 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9c20fdec-50c3-11ee-8785-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694451156; x=1695055956; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=uWR3yQmcKWDwWpf/I8JOHNwbnGjcKvY7WPldaM6ij1o=;
        b=UnDFuBzVwIiL0zjptQVPXdQM75uq/gQ7nO34vRXYwU/AzYYCGvJxstL2dkE7X0hUlD
         UwbYYe6l9IbQkFG87v8PsNrq8+Dld4XRug3Q8y9UNVLJiYPT7IXBPn8WoRtc1ccQZZMO
         hS/1jgXyhRU2xs7nltCdCZi0I1HG3ZbX5TH3g=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694451156; x=1695055956;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=uWR3yQmcKWDwWpf/I8JOHNwbnGjcKvY7WPldaM6ij1o=;
        b=B9YOwVBAkwCSSmAdWWiL9hVZnQ5sgnJaw8XtqP6Q0hA9NEnP+aoLNodP7At2VSp1yd
         GmRFF1K1Y3NfOxgdek64FpswSw2A+T0cQeCvOMie+afa1O9YMvGfRavtIpAKmaY3mSV/
         lrqH9mkvqBhhzwoeIcmJ8xYtmfutlw5JnfI39Ha58ZsRWnebqzwftxML8Fm2AMD8/xno
         J/x8dSWGXLkKVtEAYgCrD01YgjlJgLPNc5YPrnBSNnLxxaQW4CcuXRQgwHMtV0tImIsN
         MP6mVoXk8ka0qvezQ7kmpFFVc18WhgBNvszTIX21Nl896tADMh4fNoFJ7hRQuimX6MRy
         SmBA==
X-Gm-Message-State: AOJu0Yx/uLnuFwlcbEodpiHYxvbiraSNT+1RoRykb18b88oJrDV+m6t+
	cxHkf30tQOQCkg0QVZXl5b+AC7EYSM0/iZ8JQ20=
X-Google-Smtp-Source: AGHT+IGynlsdxSx0n9nKQMoLGfszC3U0usQq/40SvyrYxDrncH8NI7OwUIA4E8qeWqIKxlIdJ/SBJA==
X-Received: by 2002:a1c:ed08:0:b0:3fe:2a98:a24c with SMTP id l8-20020a1ced08000000b003fe2a98a24cmr7875975wmh.26.1694451155696;
        Mon, 11 Sep 2023 09:52:35 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Jan Beulich <jbeulich@suse.com>,
	George Dunlap <george.dunlap@cloud.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Juergen Gross <jgross@suse.com>
Subject: [XEN PATCH v2 3/5] tools: don't use distutils in configure nor Makefile
Date: Mon, 11 Sep 2023 17:51:02 +0100
Message-ID: <7b3ecf211f60e0d6f7a4d146b62f9c28eff003f5.1694450145.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694450145.git.javi.merino@cloud.com>
References: <cover.1694450145.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>

Python distutils is deprecated and is going to be removed in Python
3.12. The distutils.sysconfig is available as sysconfig module in
stdlib since Python 3.2, so use that directly.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
 m4/python_devel.m4       | 28 ++++++++++++++--------------
 tools/libs/stat/Makefile |  4 ++--
 2 files changed, 16 insertions(+), 16 deletions(-)

diff --git a/m4/python_devel.m4 b/m4/python_devel.m4
index bbf1e0354b..bb60857b03 100644
--- a/m4/python_devel.m4
+++ b/m4/python_devel.m4
@@ -5,21 +5,21 @@ ac_previous_libs=$LIBS
 AC_PATH_PROG([pyconfig], [$PYTHON-config], [no])
 AS_IF([test x"$pyconfig" = x"no"], [
     dnl For those that don't have python-config
-    CPPFLAGS="$CFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print("-I" + distutils.sysconfig.get_config_var("INCLUDEPY"))'`"
-    CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("CFLAGS"))'`"
-    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print("-L" + distutils.sysconfig.get_python_lib(plat_specific=1,\
+    CPPFLAGS="$CFLAGS `$PYTHON -c 'import sysconfig; \
+        print("-I" + sysconfig.get_config_var("INCLUDEPY"))'`"
+    CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("CFLAGS"))'`"
+    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
+        print("-L" + sysconfig.get_python_lib(plat_specific=1,\
         standard_lib=1) + "/config")'`"
-    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("LINKFORSHARED"))'`"
-    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("LDFLAGS"))'`"
-    LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("LIBS"))'`"
-    LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("SYSLIBS"))'`"
+    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("LINKFORSHARED"))'`"
+    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("LDFLAGS"))'`"
+    LIBS="$LIBS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("LIBS"))'`"
+    LIBS="$LIBS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("SYSLIBS"))'`"
 ], [
     dnl If python-config is found use it
     CPPFLAGS="$CFLAGS `$PYTHON-config --cflags`"
diff --git a/tools/libs/stat/Makefile b/tools/libs/stat/Makefile
index ee5c42bf7b..a968eaff48 100644
--- a/tools/libs/stat/Makefile
+++ b/tools/libs/stat/Makefile
@@ -73,8 +73,8 @@ $(PYLIB): $(PYSRC)
 python-bindings: $(PYLIB) $(PYMOD)
 
 pythonlibdir = $(shell $(PYTHON) -c \
-	       'import distutils.sysconfig as cfg; \
-	        print(cfg.get_python_lib(False, False, prefix="$(prefix)"))')
+	       'import sysconfig; \
+	        print(sysconfig.get_python_lib("platlib", vars={"platbase": "$(prefix)"}))')
 
 .PHONY: install-python-bindings
 install-python-bindings: $(PYLIB) $(PYMOD)
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 16:52:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 16:52:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599662.935191 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfk9Y-0007Lc-1G; Mon, 11 Sep 2023 16:52:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599662.935191; Mon, 11 Sep 2023 16:52:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfk9X-0007LR-Uh; Mon, 11 Sep 2023 16:52:47 +0000
Received: by outflank-mailman (input) for mailman id 599662;
 Mon, 11 Sep 2023 16:52:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zO6f=E3=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qfk9W-0005g0-Be
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 16:52:46 +0000
Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com
 [2a00:1450:4864:20::430])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a1855e22-50c3-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 18:52:45 +0200 (CEST)
Received: by mail-wr1-x430.google.com with SMTP id
 ffacd0b85a97d-31f6ddb3047so4536273f8f.1
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 09:52:45 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 b13-20020a05600c11cd00b003fefcbe7fa8sm10578124wmi.28.2023.09.11.09.52.43
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 09:52:44 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a1855e22-50c3-11ee-8785-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694451165; x=1695055965; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=TkRR/xJIMJPUUYAon5vdXYf6WC9lWsytp6TbHgmeAz8=;
        b=IyoCH9s8YEfQUzAGz8wS9Qz/nWObiViatHfdSjlAHrmytbpA1R/X4sxo9pptJOb0cL
         qB/kRaZbZoFZ7kmsvpD6hihcWmvQLHz4bUOK4MThpLL86VARIg2a3VtjeJ56c5yEUJBe
         JicXqFFGCeBkX/DrkVluOXmV+FSYCynK/eVR8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694451165; x=1695055965;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=TkRR/xJIMJPUUYAon5vdXYf6WC9lWsytp6TbHgmeAz8=;
        b=QqtiRlvU0TqYcRslUju5zSyo9gwmwANdme6y5nUc4rz0EpAc3E0Z2KiD68gMvNmZqS
         /3Bq7ZeNvaopi3QUOCdYvVOZkjBUzMus1KHk/Tc8hCAtnRDYZwvEuOEfUmBb31FrISKh
         yu9KsUXWzdyP1ddr0wkRvovWGKySQ/aZozNtyhamuyC/Cm/lfVYMsg/M1W+owPVhEOqy
         1ih9SoKXi035qmVHRcVbmaVhAInXSXIAntQMIvFVIxbaUxGWO1aWArNZg5+ruDwrVnXp
         f9zcyp2dNJh0hqRSuze+UuadfHkW926kPoz9qmXbYc/H9utLdBg7KYp4BeOYzMdHGYu9
         QrwA==
X-Gm-Message-State: AOJu0YwJW/sTpymG4uWFso4OjlPnWhObV/CS0e6h8xmXUj2xRi9JkQmB
	T59FuzAisoncWDkxEtmtuAu7w7s7MnOPKaXIH98=
X-Google-Smtp-Source: AGHT+IF3jSa2/clS/+JfUHL/kl4y4efKdPkk1TJ7WgT8zAfnE7tpWz1wECAW/EuY0dd4wt60f3e8BA==
X-Received: by 2002:adf:fe8c:0:b0:317:c2a9:9b0c with SMTP id l12-20020adffe8c000000b00317c2a99b0cmr8688278wrr.50.1694451164673;
        Mon, 11 Sep 2023 09:52:44 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Jan Beulich <jbeulich@suse.com>,
	George Dunlap <george.dunlap@cloud.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Javi Merino <javi.merino@cloud.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v2 5/5] README: update to remove old note about the build system's python expectation
Date: Mon, 11 Sep 2023 17:51:04 +0100
Message-ID: <2b98d4409f0220c5b24517c5b230344228717eb8.1694450145.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694450145.git.javi.merino@cloud.com>
References: <cover.1694450145.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The configure script tests for the availability of python3, python and
python2 in that order and sets PYTHON to the first one found in path.
You don't need to have a symlink to python.

Signed-off-by: Javi Merino <javi.merino@cloud.com>
---
 README | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/README b/README
index f8cc426f78..6212a3a9c5 100644
--- a/README
+++ b/README
@@ -184,13 +184,6 @@ Various tools, such as pygrub, have the following runtime dependencies:
           URL:    https://www.python.org/
           Debian: python
 
-Note that the build system expects `python` to be available. If your system
-only has `python2` or `python3` but not `python` (as in Linux From Scratch),
-you will need to create a symlink for it, or specify PYTHON= when invoking
-make, like (note the position of PYTHON= matters):
-
-    # make PYTHON=/usr/bin/python3
-
 Intel(R) Trusted Execution Technology Support
 =============================================
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 16:52:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 16:52:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599663.935201 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfk9c-0007i6-CX; Mon, 11 Sep 2023 16:52:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599663.935201; Mon, 11 Sep 2023 16:52:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfk9c-0007hv-7b; Mon, 11 Sep 2023 16:52:52 +0000
Received: by outflank-mailman (input) for mailman id 599663;
 Mon, 11 Sep 2023 16:52:50 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zO6f=E3=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qfk9Y-0005g0-Hn
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 16:52:50 +0000
Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com
 [2a00:1450:4864:20::331])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a1a3b48c-50c3-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 18:52:45 +0200 (CEST)
Received: by mail-wm1-x331.google.com with SMTP id
 5b1f17b1804b1-401d6f6b2e0so36383065e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 09:52:45 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 b13-20020a05600c11cd00b003fefcbe7fa8sm10578124wmi.28.2023.09.11.09.52.36
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 09:52:42 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a1a3b48c-50c3-11ee-8785-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694451165; x=1695055965; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=VqR2qbmQ9k+HZkZvv6dyUk3+Bp3evqANLfMMhBHwF8o=;
        b=CXQ4ln9y4Lf27oAwnoV+CjaXigrbRNMc0VckIxGUOwTFDmkE9jiWVug5oYTxJDRjfm
         keTCDODRfX20wAPfrTonXwZsJcIYMXgxmq3GsVpvOxl0uxUsnKQnkq9Nrdqmnrd77XyT
         uOsVECn2M6XRGAP1vdcUm/+FvdU1CaWhV3mHo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694451165; x=1695055965;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=VqR2qbmQ9k+HZkZvv6dyUk3+Bp3evqANLfMMhBHwF8o=;
        b=ayB0t6g06qEwAtLmC8wUySDE+dhQxPXO943heCXv+2Tjnn5xqFBW9hb8txALKhTMIF
         Q4Fm0i6FDRpMaGx/2m3wGtMTp1wJCeGlLfB2JgygGkoxhkLM89Ynvnk21L6mWUhP7gGR
         JX3UzMVJFGHaHjbn69ctWxzmFaLblfJx7Ad5Hk08lXvxVVmaTqcpCyHNCDZGvDa/eghv
         auVjQYESHbxYw6tfkLsYHgNbIuSobCuEMxlhjrV6kjpwniOTp+wvDbkvLb5mKYSNjAmL
         dN+xqBNj/wuMf4ZBF+wxeYKZl7WR12Q8lYblKw1uOXRFWVuoYl3cRrE2V6nL9olyM5NZ
         s/PA==
X-Gm-Message-State: AOJu0Yyn1/F1McbtCL0aw7OVWE6wIVADZ6fOyPalV5wD1IN/h8/ZA6CJ
	sEQzE5Rr8aUBRcj8nje26MhooZ2dDBDcy6lEStQ=
X-Google-Smtp-Source: AGHT+IEXPxBETIZSmKQNy+XEol7afqBvoTWqZAGBzzRJOi099Gh1JePoV6Ny42ENpVpZJpHP0QBs9Q==
X-Received: by 2002:a05:600c:510a:b0:402:ebe1:7960 with SMTP id o10-20020a05600c510a00b00402ebe17960mr155995wms.2.1694451163280;
        Mon, 11 Sep 2023 09:52:43 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Jan Beulich <jbeulich@suse.com>,
	George Dunlap <george.dunlap@cloud.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [XEN PATCH v2 4/5] tools: regenerate configure
Date: Mon, 11 Sep 2023 17:51:03 +0100
Message-ID: <12addc0ab29d8f840ffec5ccd3919a65ca8e88d0.1694450145.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694450145.git.javi.merino@cloud.com>
References: <cover.1694450145.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>

Regenerate after m4/python_devel.m4 change.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
---
 tools/configure | 6551 ++++++++++++++++++++++++++---------------------
 1 file changed, 3630 insertions(+), 2921 deletions(-)

diff --git a/tools/configure b/tools/configure
index 96218cadc4..59beda37b8 100755
--- a/tools/configure
+++ b/tools/configure
@@ -1,11 +1,12 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for Xen Hypervisor Tools 4.18.
+# Generated by GNU Autoconf 2.71 for Xen Hypervisor Tools 4.18.
 #
 # Report bugs to <xen-devel@lists.xen.org>.
 #
 #
-# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation,
+# Inc.
 #
 #
 # This configure script is free software; the Free Software Foundation
@@ -16,14 +17,16 @@
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+as_nop=:
+if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
-else
+else $as_nop
   case `(set -o) 2>/dev/null` in #(
   *posix*) :
     set -o posix ;; #(
@@ -33,46 +36,46 @@ esac
 fi
 
 
+
+# Reset variables that may have inherited troublesome values from
+# the environment.
+
+# IFS needs to be set, to space, tab, and newline, in precisely that order.
+# (If _AS_PATH_WALK were called with IFS unset, it would have the
+# side effect of setting IFS to empty, thus disabling word splitting.)
+# Quoting is to prevent editors from complaining about space-tab.
 as_nl='
 '
 export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in #(
-      *"$as_nl"*)
-	expr "X$arg" : "X\\(.*\\)$as_nl";
-	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
+IFS=" ""	$as_nl"
+
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# Ensure predictable behavior from utilities with locale-dependent output.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# We cannot yet rely on "unset" to work, but we need these variables
+# to be unset--not just set to an empty or harmless value--now, to
+# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh).  This construct
+# also avoids known problems related to "unset" and subshell syntax
+# in other old shells (e.g. bash 2.01 and pdksh 5.2.14).
+for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH
+do eval test \${$as_var+y} \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
+
+# Ensure that fds 0, 1, and 2 are open.
+if (exec 3>&0) 2>/dev/null; then :; else exec 0</dev/null; fi
+if (exec 3>&1) 2>/dev/null; then :; else exec 1>/dev/null; fi
+if (exec 3>&2)            ; then :; else exec 2>/dev/null; fi
 
 # The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
+if ${PATH_SEPARATOR+false} :; then
   PATH_SEPARATOR=:
   (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
     (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
@@ -81,13 +84,6 @@ if test "${PATH_SEPARATOR+set}" != set; then
 fi
 
 
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""	$as_nl"
-
 # Find who we are.  Look in the path if we contain no directory separator.
 as_myself=
 case $0 in #((
@@ -96,8 +92,12 @@ case $0 in #((
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    test -r "$as_dir$0" && as_myself=$as_dir$0 && break
   done
 IFS=$as_save_IFS
 
@@ -109,30 +109,10 @@ if test "x$as_myself" = x; then
   as_myself=$0
 fi
 if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+  printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
   exit 1
 fi
 
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
 # Use a proper internal environment variable to ensure we don't fall
   # into an infinite loop, continuously re-executing ourselves.
@@ -154,20 +134,22 @@ esac
 exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
 # Admittedly, this is quite paranoid, since all the known shells bail
 # out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-as_fn_exit 255
+printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
   fi
   # We don't want this to propagate to other subprocesses.
           { _as_can_reexec=; unset _as_can_reexec;}
 if test "x$CONFIG_SHELL" = x; then
-  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+  as_bourne_compatible="as_nop=:
+if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '\${1+\"\$@\"}'='\"\$@\"'
   setopt NO_GLOB_SUBST
-else
+else \$as_nop
   case \`(set -o) 2>/dev/null\` in #(
   *posix*) :
     set -o posix ;; #(
@@ -187,42 +169,52 @@ as_fn_success || { exitcode=1; echo as_fn_success failed.; }
 as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
 as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
 as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+if ( set x; as_fn_ret_success y && test x = \"\$1\" )
+then :
 
-else
+else \$as_nop
   exitcode=1; echo positional parameters were not saved.
 fi
 test x\$exitcode = x0 || exit 1
+blah=\$(echo \$(echo blah))
+test x\"\$blah\" = xblah || exit 1
 test -x / || exit 1"
   as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
   as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
   eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
-  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
-test \$(( 1 + 1 )) = 2 || exit 1"
-  if (eval "$as_required") 2>/dev/null; then :
+  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1"
+  if (eval "$as_required") 2>/dev/null
+then :
   as_have_required=yes
-else
+else $as_nop
   as_have_required=no
 fi
-  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
+  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null
+then :
 
-else
+else $as_nop
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 as_found=false
 for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
   as_found=:
   case $as_dir in #(
 	 /*)
 	   for as_base in sh bash ksh sh5; do
 	     # Try only shells that exist, to save several forks.
-	     as_shell=$as_dir/$as_base
+	     as_shell=$as_dir$as_base
 	     if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-		    { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+		    as_run=a "$as_shell" -c "$as_bourne_compatible""$as_required" 2>/dev/null
+then :
   CONFIG_SHELL=$as_shell as_have_required=yes
-		   if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+		   if as_run=a "$as_shell" -c "$as_bourne_compatible""$as_suggested" 2>/dev/null
+then :
   break 2
 fi
 fi
@@ -230,14 +222,21 @@ fi
        esac
   as_found=false
 done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
-	      { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
-  CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
 IFS=$as_save_IFS
+if $as_found
+then :
+
+else $as_nop
+  if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
+	      as_run=a "$SHELL" -c "$as_bourne_compatible""$as_required" 2>/dev/null
+then :
+  CONFIG_SHELL=$SHELL as_have_required=yes
+fi
+fi
 
 
-      if test "x$CONFIG_SHELL" != x; then :
+      if test "x$CONFIG_SHELL" != x
+then :
   export CONFIG_SHELL
              # We cannot yet assume a decent shell, so we have to provide a
 # neutralization value for shells without unset; and this also
@@ -255,18 +254,19 @@ esac
 exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
 # Admittedly, this is quite paranoid, since all the known shells bail
 # out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2
 exit 255
 fi
 
-    if test x$as_have_required = xno; then :
-  $as_echo "$0: This script requires a shell more modern than all"
-  $as_echo "$0: the shells that I found on your system."
-  if test x${ZSH_VERSION+set} = xset ; then
-    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
-    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
+    if test x$as_have_required = xno
+then :
+  printf "%s\n" "$0: This script requires a shell more modern than all"
+  printf "%s\n" "$0: the shells that I found on your system."
+  if test ${ZSH_VERSION+y} ; then
+    printf "%s\n" "$0: In particular, zsh $ZSH_VERSION has bugs and should"
+    printf "%s\n" "$0: be upgraded to zsh 4.3.4 or later."
   else
-    $as_echo "$0: Please tell bug-autoconf@gnu.org and
+    printf "%s\n" "$0: Please tell bug-autoconf@gnu.org and
 $0: xen-devel@lists.xen.org about your system, including
 $0: any error possibly output before this message. Then
 $0: install a modern shell, or manually run the script
@@ -294,6 +294,7 @@ as_fn_unset ()
 }
 as_unset=as_fn_unset
 
+
 # as_fn_set_status STATUS
 # -----------------------
 # Set $? to STATUS, without forking.
@@ -311,6 +312,14 @@ as_fn_exit ()
   as_fn_set_status $1
   exit $1
 } # as_fn_exit
+# as_fn_nop
+# ---------
+# Do nothing but, unlike ":", preserve the value of $?.
+as_fn_nop ()
+{
+  return $?
+}
+as_nop=as_fn_nop
 
 # as_fn_mkdir_p
 # -------------
@@ -325,7 +334,7 @@ as_fn_mkdir_p ()
     as_dirs=
     while :; do
       case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+      *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
       *) as_qdir=$as_dir;;
       esac
       as_dirs="'$as_qdir' $as_dirs"
@@ -334,7 +343,7 @@ $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 	 X"$as_dir" : 'X\(//\)[^/]' \| \
 	 X"$as_dir" : 'X\(//\)$' \| \
 	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
+printf "%s\n" X"$as_dir" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -373,12 +382,13 @@ as_fn_executable_p ()
 # advantage of any shell optimizations that allow amortized linear growth over
 # repeated appends, instead of the typical quadratic growth present in naive
 # implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null
+then :
   eval 'as_fn_append ()
   {
     eval $1+=\$2
   }'
-else
+else $as_nop
   as_fn_append ()
   {
     eval $1=\$$1\$2
@@ -390,18 +400,27 @@ fi # as_fn_append
 # Perform arithmetic evaluation on the ARGs, and store the result in the
 # global $as_val. Take advantage of shells that can avoid forks. The arguments
 # must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null
+then :
   eval 'as_fn_arith ()
   {
     as_val=$(( $* ))
   }'
-else
+else $as_nop
   as_fn_arith ()
   {
     as_val=`expr "$@" || test $? -eq 1`
   }
 fi # as_fn_arith
 
+# as_fn_nop
+# ---------
+# Do nothing but, unlike ":", preserve the value of $?.
+as_fn_nop ()
+{
+  return $?
+}
+as_nop=as_fn_nop
 
 # as_fn_error STATUS ERROR [LINENO LOG_FD]
 # ----------------------------------------
@@ -413,9 +432,9 @@ as_fn_error ()
   as_status=$1; test $as_status -eq 0 && as_status=1
   if test "$4"; then
     as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
   fi
-  $as_echo "$as_me: error: $2" >&2
+  printf "%s\n" "$as_me: error: $2" >&2
   as_fn_exit $as_status
 } # as_fn_error
 
@@ -442,7 +461,7 @@ as_me=`$as_basename -- "$0" ||
 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
 	 X"$0" : 'X\(//\)$' \| \
 	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
+printf "%s\n" X/"$0" |
     sed '/^.*\/\([^/][^/]*\)\/*$/{
 	    s//\1/
 	    q
@@ -486,7 +505,7 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
       s/-\n.*//
     ' >$as_me.lineno &&
   chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
+    { printf "%s\n" "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 
   # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
   # already done that, so ensure we don't try to do so again and fall
@@ -500,6 +519,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
   exit
 }
 
+
+# Determine whether it's possible to make 'echo' print without a newline.
+# These variables are no longer used directly by Autoconf, but are AC_SUBSTed
+# for compatibility with existing Makefiles.
 ECHO_C= ECHO_N= ECHO_T=
 case `echo -n x` in #(((((
 -n*)
@@ -513,6 +536,13 @@ case `echo -n x` in #(((((
   ECHO_N='-n';;
 esac
 
+# For backward compatibility with old third-party macros, we provide
+# the shell variables $as_echo and $as_echo_n.  New code should use
+# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively.
+as_echo='printf %s\n'
+as_echo_n='printf %s'
+
+
 rm -f conf$$ conf$$.exe conf$$.file
 if test -d conf$$.dir; then
   rm -f conf$$.dir/conf$$.file
@@ -588,40 +618,36 @@ PACKAGE_URL='https://www.xen.org/'
 ac_unique_file="libs/light/libxl.c"
 # Factoring default headers for most tests.
 ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
+#include <stddef.h>
+#ifdef HAVE_STDIO_H
+# include <stdio.h>
 #endif
-#ifdef STDC_HEADERS
+#ifdef HAVE_STDLIB_H
 # include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-# endif
 #endif
 #ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-#  include <memory.h>
-# endif
 # include <string.h>
 #endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
 #ifdef HAVE_INTTYPES_H
 # include <inttypes.h>
 #endif
 #ifdef HAVE_STDINT_H
 # include <stdint.h>
 #endif
+#ifdef HAVE_STRINGS_H
+# include <strings.h>
+#endif
+#ifdef HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
 #ifdef HAVE_UNISTD_H
 # include <unistd.h>
 #endif"
 
+ac_header_c_list=
 ac_subst_vars='LTLIBOBJS
 LIBOBJS
 pvshim
@@ -658,9 +684,6 @@ PKG_CONFIG
 TINFO_LIBS
 CURSES_LIBS
 PY_NOOPT_CFLAGS
-EGREP
-GREP
-CPP
 pyconfig
 PYTHONPATH
 BASH
@@ -853,7 +876,6 @@ LD86
 BCC
 IASL
 AWK
-CPP
 PKG_CONFIG
 PKG_CONFIG_PATH
 PKG_CONFIG_LIBDIR
@@ -935,8 +957,6 @@ do
   *)    ac_optarg=yes ;;
   esac
 
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
   case $ac_dashdash$ac_option in
   --)
     ac_dashdash=yes ;;
@@ -977,9 +997,9 @@ do
     ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
+      as_fn_error $? "invalid feature name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "enable_$ac_useropt"
@@ -1003,9 +1023,9 @@ do
     ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
+      as_fn_error $? "invalid feature name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "enable_$ac_useropt"
@@ -1216,9 +1236,9 @@ do
     ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
+      as_fn_error $? "invalid package name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "with_$ac_useropt"
@@ -1232,9 +1252,9 @@ do
     ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
+      as_fn_error $? "invalid package name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "with_$ac_useropt"
@@ -1278,9 +1298,9 @@ Try \`$0 --help' for more information"
 
   *)
     # FIXME: should be removed in autoconf 3.0.
-    $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+    printf "%s\n" "$as_me: WARNING: you should use --build, --host, --target" >&2
     expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+      printf "%s\n" "$as_me: WARNING: invalid host type: $ac_option" >&2
     : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
     ;;
 
@@ -1296,7 +1316,7 @@ if test -n "$ac_unrecognized_opts"; then
   case $enable_option_checking in
     no) ;;
     fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
-    *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
+    *)     printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
   esac
 fi
 
@@ -1360,7 +1380,7 @@ $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 	 X"$as_myself" : 'X\(//\)[^/]' \| \
 	 X"$as_myself" : 'X\(//\)$' \| \
 	 X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
+printf "%s\n" X"$as_myself" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -1603,7 +1623,6 @@ Some influential environment variables:
   BCC         Path to bcc tool
   IASL        Path to iasl tool
   AWK         Path to awk tool
-  CPP         C preprocessor
   PKG_CONFIG  path to pkg-config utility
   PKG_CONFIG_PATH
               directories to add to pkg-config's search path
@@ -1646,9 +1665,9 @@ if test "$ac_init_help" = "recursive"; then
 case "$ac_dir" in
 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 *)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+  ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`
   # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+  ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
   case $ac_top_builddir_sub in
   "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
   *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -1676,7 +1695,8 @@ esac
 ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
 
     cd "$ac_dir" || { ac_status=$?; continue; }
-    # Check for guested configure.
+    # Check for configure.gnu first; this name is used for a wrapper for
+    # Metaconfig's "Configure" on case-insensitive file systems.
     if test -f "$ac_srcdir/configure.gnu"; then
       echo &&
       $SHELL "$ac_srcdir/configure.gnu" --help=recursive
@@ -1684,7 +1704,7 @@ ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
       echo &&
       $SHELL "$ac_srcdir/configure" --help=recursive
     else
-      $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+      printf "%s\n" "$as_me: WARNING: no configuration information is in $ac_dir" >&2
     fi || ac_status=$?
     cd "$ac_pwd" || { ac_status=$?; break; }
   done
@@ -1694,9 +1714,9 @@ test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
 Xen Hypervisor Tools configure 4.18
-generated by GNU Autoconf 2.69
+generated by GNU Autoconf 2.71
 
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2021 Free Software Foundation, Inc.
 This configure script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it.
 _ACEOF
@@ -1713,14 +1733,14 @@ fi
 ac_fn_c_try_compile ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext
+  rm -f conftest.$ac_objext conftest.beam
   if { { ac_try="$ac_compile"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compile") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -1728,14 +1748,15 @@ $as_echo "$ac_try_echo"; } >&5
     cat conftest.er1 >&5
     mv -f conftest.er1 conftest.err
   fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && {
 	 test -z "$ac_c_werror_flag" ||
 	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then :
+       } && test -s conftest.$ac_objext
+then :
   ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
 	ac_retval=1
@@ -1751,14 +1772,14 @@ fi
 ac_fn_c_try_link ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext conftest$ac_exeext
+  rm -f conftest.$ac_objext conftest.beam conftest$ac_exeext
   if { { ac_try="$ac_link"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -1766,17 +1787,18 @@ $as_echo "$ac_try_echo"; } >&5
     cat conftest.er1 >&5
     mv -f conftest.er1 conftest.err
   fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && {
 	 test -z "$ac_c_werror_flag" ||
 	 test ! -s conftest.err
        } && test -s conftest$ac_exeext && {
 	 test "$cross_compiling" = yes ||
 	 test -x conftest$ac_exeext
-       }; then :
+       }
+then :
   ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
 	ac_retval=1
@@ -1791,176 +1813,6 @@ fi
 
 } # ac_fn_c_try_link
 
-# ac_fn_c_try_cpp LINENO
-# ----------------------
-# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
-  ac_status=$?
-  if test -s conftest.err; then
-    grep -v '^ *+' conftest.err >conftest.er1
-    cat conftest.er1 >&5
-    mv -f conftest.er1 conftest.err
-  fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } > conftest.i && {
-	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-    ac_retval=1
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_cpp
-
-# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists, giving a warning if it cannot be compiled using
-# the include files in INCLUDES and setting the cache variable VAR
-# accordingly.
-ac_fn_c_check_header_mongrel ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if eval \${$3+:} false; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_header_compiler=yes
-else
-  ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  ac_header_preproc=yes
-else
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
-  yes:no: )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-    ;;
-  no:yes:* )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( $as_echo "## -------------------------------------- ##
-## Report this to xen-devel@lists.xen.org ##
-## -------------------------------------- ##"
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
-esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_mongrel
-
-# ac_fn_c_try_run LINENO
-# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-       $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=$ac_status
-fi
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_run
-
 # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
 # -------------------------------------------------------
 # Tests whether HEADER exists and can be compiled using the include files in
@@ -1968,26 +1820,28 @@ fi
 ac_fn_c_check_header_compile ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 #include <$2>
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   eval "$3=yes"
-else
+else $as_nop
   eval "$3=no"
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_check_header_compile
@@ -1998,11 +1852,12 @@ $as_echo "$ac_res" >&6; }
 ac_fn_c_check_func ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 /* Define $2 to an innocuous variant, in case <limits.h> declares $2.
@@ -2010,16 +1865,9 @@ else
 #define $2 innocuous_$2
 
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $2 (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
+   which can conflict with char $2 (); below.  */
 
+#include <limits.h>
 #undef $2
 
 /* Override any GCC internal prototype to avoid an error.
@@ -2037,47 +1885,51 @@ choke me
 #endif
 
 int
-main ()
+main (void)
 {
 return $2 ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   eval "$3=yes"
-else
+else $as_nop
   eval "$3=no"
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 fi
 eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_check_func
 
-# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
-# ---------------------------------------------
+# ac_fn_check_decl LINENO SYMBOL VAR INCLUDES EXTRA-OPTIONS FLAG-VAR
+# ------------------------------------------------------------------
 # Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
-# accordingly.
-ac_fn_c_check_decl ()
+# accordingly. Pass EXTRA-OPTIONS to the compiler, using FLAG-VAR.
+ac_fn_check_decl ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
   as_decl_name=`echo $2|sed 's/ *(.*//'`
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
+printf %s "checking whether $as_decl_name is declared... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
-$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  eval ac_save_FLAGS=\$$6
+  as_fn_append $6 " $5"
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 int
-main ()
+main (void)
 {
 #ifndef $as_decl_name
 #ifdef __cplusplus
@@ -2091,27 +1943,50 @@ main ()
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   eval "$3=yes"
-else
+else $as_nop
   eval "$3=no"
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+  eval $6=\$ac_save_FLAGS
+
 fi
 eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
-} # ac_fn_c_check_decl
+} # ac_fn_check_decl
+ac_configure_args_raw=
+for ac_arg
+do
+  case $ac_arg in
+  *\'*)
+    ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+  esac
+  as_fn_append ac_configure_args_raw " '$ac_arg'"
+done
+
+case $ac_configure_args_raw in
+  *$as_nl*)
+    ac_safe_unquote= ;;
+  *)
+    ac_unsafe_z='|&;<>()$`\\"*?[ ''	' # This string ends in space, tab.
+    ac_unsafe_a="$ac_unsafe_z#~"
+    ac_safe_unquote="s/ '\\([^$ac_unsafe_a][^$ac_unsafe_z]*\\)'/ \\1/g"
+    ac_configure_args_raw=`      printf "%s\n" "$ac_configure_args_raw" | sed "$ac_safe_unquote"`;;
+esac
+
 cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
 It was created by Xen Hypervisor Tools $as_me 4.18, which was
-generated by GNU Autoconf 2.69.  Invocation command line was
+generated by GNU Autoconf 2.71.  Invocation command line was
 
-  $ $0 $@
+  $ $0$ac_configure_args_raw
 
 _ACEOF
 exec 5>>config.log
@@ -2144,8 +2019,12 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    $as_echo "PATH: $as_dir"
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    printf "%s\n" "PATH: $as_dir"
   done
 IFS=$as_save_IFS
 
@@ -2180,7 +2059,7 @@ do
     | -silent | --silent | --silen | --sile | --sil)
       continue ;;
     *\'*)
-      ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+      ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
     esac
     case $ac_pass in
     1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
@@ -2215,11 +2094,13 @@ done
 # WARNING: Use '\'' to represent an apostrophe within the trap.
 # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
 trap 'exit_status=$?
+  # Sanitize IFS.
+  IFS=" ""	$as_nl"
   # Save into config.log some information that might help in debugging.
   {
     echo
 
-    $as_echo "## ---------------- ##
+    printf "%s\n" "## ---------------- ##
 ## Cache variables. ##
 ## ---------------- ##"
     echo
@@ -2230,8 +2111,8 @@ trap 'exit_status=$?
     case $ac_val in #(
     *${as_nl}*)
       case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+      *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       esac
       case $ac_var in #(
       _ | IFS | as_nl) ;; #(
@@ -2255,7 +2136,7 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
 )
     echo
 
-    $as_echo "## ----------------- ##
+    printf "%s\n" "## ----------------- ##
 ## Output variables. ##
 ## ----------------- ##"
     echo
@@ -2263,14 +2144,14 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
     do
       eval ac_val=\$$ac_var
       case $ac_val in
-      *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+      *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
       esac
-      $as_echo "$ac_var='\''$ac_val'\''"
+      printf "%s\n" "$ac_var='\''$ac_val'\''"
     done | sort
     echo
 
     if test -n "$ac_subst_files"; then
-      $as_echo "## ------------------- ##
+      printf "%s\n" "## ------------------- ##
 ## File substitutions. ##
 ## ------------------- ##"
       echo
@@ -2278,15 +2159,15 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       do
 	eval ac_val=\$$ac_var
 	case $ac_val in
-	*\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+	*\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
 	esac
-	$as_echo "$ac_var='\''$ac_val'\''"
+	printf "%s\n" "$ac_var='\''$ac_val'\''"
       done | sort
       echo
     fi
 
     if test -s confdefs.h; then
-      $as_echo "## ----------- ##
+      printf "%s\n" "## ----------- ##
 ## confdefs.h. ##
 ## ----------- ##"
       echo
@@ -2294,8 +2175,8 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       echo
     fi
     test "$ac_signal" != 0 &&
-      $as_echo "$as_me: caught signal $ac_signal"
-    $as_echo "$as_me: exit $exit_status"
+      printf "%s\n" "$as_me: caught signal $ac_signal"
+    printf "%s\n" "$as_me: exit $exit_status"
   } >&5
   rm -f core *.core core.conftest.* &&
     rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
@@ -2309,63 +2190,48 @@ ac_signal=0
 # confdefs.h avoids OS command line length limits that DEFS can exceed.
 rm -f -r conftest* confdefs.h
 
-$as_echo "/* confdefs.h */" > confdefs.h
+printf "%s\n" "/* confdefs.h */" > confdefs.h
 
 # Predefined preprocessor variables.
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
+printf "%s\n" "#define PACKAGE_NAME \"$PACKAGE_NAME\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
+printf "%s\n" "#define PACKAGE_TARNAME \"$PACKAGE_TARNAME\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
+printf "%s\n" "#define PACKAGE_VERSION \"$PACKAGE_VERSION\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
+printf "%s\n" "#define PACKAGE_STRING \"$PACKAGE_STRING\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
+printf "%s\n" "#define PACKAGE_BUGREPORT \"$PACKAGE_BUGREPORT\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
+printf "%s\n" "#define PACKAGE_URL \"$PACKAGE_URL\"" >>confdefs.h
 
 
 # Let the site file select an alternate cache file if it wants to.
 # Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
 if test -n "$CONFIG_SITE"; then
-  # We do not want a PATH search for config.site.
-  case $CONFIG_SITE in #((
-    -*)  ac_site_file1=./$CONFIG_SITE;;
-    */*) ac_site_file1=$CONFIG_SITE;;
-    *)   ac_site_file1=./$CONFIG_SITE;;
-  esac
+  ac_site_files="$CONFIG_SITE"
 elif test "x$prefix" != xNONE; then
-  ac_site_file1=$prefix/share/config.site
-  ac_site_file2=$prefix/etc/config.site
+  ac_site_files="$prefix/share/config.site $prefix/etc/config.site"
 else
-  ac_site_file1=$ac_default_prefix/share/config.site
-  ac_site_file2=$ac_default_prefix/etc/config.site
+  ac_site_files="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
 fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
+
+for ac_site_file in $ac_site_files
 do
-  test "x$ac_site_file" = xNONE && continue
-  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
+  case $ac_site_file in #(
+  */*) :
+     ;; #(
+  *) :
+    ac_site_file=./$ac_site_file ;;
+esac
+  if test -f "$ac_site_file" && test -r "$ac_site_file"; then
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
+printf "%s\n" "$as_me: loading site script $ac_site_file" >&6;}
     sed 's/^/| /' "$ac_site_file" >&5
     . "$ac_site_file" \
-      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+      || { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "failed to load site script $ac_site_file
 See \`config.log' for more details" "$LINENO" 5; }
   fi
@@ -2375,155 +2241,548 @@ if test -r "$cache_file"; then
   # Some versions of bash will fail to source /dev/null (special files
   # actually), so we avoid doing that.  DJGPP emulates it as a regular file.
   if test /dev/null != "$cache_file" && test -f "$cache_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
+printf "%s\n" "$as_me: loading cache $cache_file" >&6;}
     case $cache_file in
       [\\/]* | ?:[\\/]* ) . "$cache_file";;
       *)                      . "./$cache_file";;
     esac
   fi
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
+printf "%s\n" "$as_me: creating cache $cache_file" >&6;}
   >$cache_file
 fi
 
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
-  eval ac_old_set=\$ac_cv_env_${ac_var}_set
-  eval ac_new_set=\$ac_env_${ac_var}_set
-  eval ac_old_val=\$ac_cv_env_${ac_var}_value
-  eval ac_new_val=\$ac_env_${ac_var}_value
-  case $ac_old_set,$ac_new_set in
-    set,)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,set)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
-      ac_cache_corrupted=: ;;
-    ,);;
-    *)
-      if test "x$ac_old_val" != "x$ac_new_val"; then
-	# differences in whitespace do not lead to failure.
-	ac_old_val_w=`echo x $ac_old_val`
-	ac_new_val_w=`echo x $ac_new_val`
-	if test "$ac_old_val_w" != "$ac_new_val_w"; then
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-	  ac_cache_corrupted=:
-	else
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
-	  eval $ac_var=\$ac_old_val
-	fi
-	{ $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
-$as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}
-	{ $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
-$as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
-      fi;;
-  esac
-  # Pass precious variables to config.status.
-  if test "$ac_new_set" = set; then
-    case $ac_new_val in
-    *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
-    *) ac_arg=$ac_var=$ac_new_val ;;
-    esac
-    case " $ac_configure_args " in
-      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
-      *) as_fn_append ac_configure_args " '$ac_arg'" ;;
-    esac
-  fi
-done
-if $ac_cache_corrupted; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
-fi
-## -------------------- ##
-## Main body of script. ##
-## -------------------- ##
+# Test code for whether the C compiler supports C89 (global declarations)
+ac_c_conftest_c89_globals='
+/* Does the compiler advertise C89 conformance?
+   Do not test the value of __STDC__, because some compilers set it to 0
+   while being otherwise adequately conformant. */
+#if !defined __STDC__
+# error "Compiler does not advertise C89 conformance"
+#endif
 
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
+#include <stddef.h>
+#include <stdarg.h>
+struct stat;
+/* Most of the following tests are stolen from RCS 5.7 src/conf.sh.  */
+struct buf { int x; };
+struct buf * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+     char **p;
+     int i;
+{
+  return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+  char *s;
+  va_list v;
+  va_start (v,p);
+  s = g (p, va_arg (v,int));
+  va_end (v);
+  return s;
+}
 
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
+   function prototypes and stuff, but not \xHH hex character constants.
+   These do not provoke an error unfortunately, instead are silently treated
+   as an "x".  The following induces an error, until -std is added to get
+   proper ANSI mode.  Curiously \x00 != x always comes out true, for an
+   array size at least.  It is necessary to write \x00 == 0 to get something
+   that is true only with -std.  */
+int osf4_cc_array ['\''\x00'\'' == 0 ? 1 : -1];
 
+/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
+   inside strings and character constants.  */
+#define FOO(x) '\''x'\''
+int xlc6_cc_array[FOO(a) == '\''x'\'' ? 1 : -1];
 
-ac_config_files="$ac_config_files ../config/Tools.mk hotplug/common/hotplugpath.sh hotplug/FreeBSD/rc.d/xencommons hotplug/FreeBSD/rc.d/xendriverdomain hotplug/Linux/init.d/sysconfig.xencommons hotplug/Linux/init.d/sysconfig.xendomains hotplug/Linux/init.d/xen-watchdog hotplug/Linux/init.d/xencommons hotplug/Linux/init.d/xendomains hotplug/Linux/init.d/xendriverdomain hotplug/Linux/launch-xenstore hotplug/Linux/vif-setup hotplug/Linux/xen-hotplug-common.sh hotplug/Linux/xendomains hotplug/NetBSD/rc.d/xencommons hotplug/NetBSD/rc.d/xendriverdomain ocaml/libs/xs/paths.ml ocaml/xenstored/paths.ml ocaml/xenstored/oxenstored.conf"
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
+               int, int);'
 
-ac_config_headers="$ac_config_headers config.h"
+# Test code for whether the C compiler supports C89 (body of main).
+ac_c_conftest_c89_main='
+ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
+'
 
-ac_aux_dir=
-for ac_dir in ../ "$srcdir"/../; do
-  if test -f "$ac_dir/install-sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f "$ac_dir/install.sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  elif test -f "$ac_dir/shtool"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/shtool install -c"
+# Test code for whether the C compiler supports C99 (global declarations)
+ac_c_conftest_c99_globals='
+// Does the compiler advertise C99 conformance?
+#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
+# error "Compiler does not advertise C99 conformance"
+#endif
+
+#include <stdbool.h>
+extern int puts (const char *);
+extern int printf (const char *, ...);
+extern int dprintf (int, const char *, ...);
+extern void *malloc (size_t);
+
+// Check varargs macros.  These examples are taken from C99 6.10.3.5.
+// dprintf is used instead of fprintf to avoid needing to declare
+// FILE and stderr.
+#define debug(...) dprintf (2, __VA_ARGS__)
+#define showlist(...) puts (#__VA_ARGS__)
+#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
+static void
+test_varargs_macros (void)
+{
+  int x = 1234;
+  int y = 5678;
+  debug ("Flag");
+  debug ("X = %d\n", x);
+  showlist (The first, second, and third items.);
+  report (x>y, "x is %d but y is %d", x, y);
+}
+
+// Check long long types.
+#define BIG64 18446744073709551615ull
+#define BIG32 4294967295ul
+#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
+#if !BIG_OK
+  #error "your preprocessor is broken"
+#endif
+#if BIG_OK
+#else
+  #error "your preprocessor is broken"
+#endif
+static long long int bignum = -9223372036854775807LL;
+static unsigned long long int ubignum = BIG64;
+
+struct incomplete_array
+{
+  int datasize;
+  double data[];
+};
+
+struct named_init {
+  int number;
+  const wchar_t *name;
+  double average;
+};
+
+typedef const char *ccp;
+
+static inline int
+test_restrict (ccp restrict text)
+{
+  // See if C++-style comments work.
+  // Iterate through items via the restricted pointer.
+  // Also check for declarations in for loops.
+  for (unsigned int i = 0; *(text+i) != '\''\0'\''; ++i)
+    continue;
+  return 0;
+}
+
+// Check varargs and va_copy.
+static bool
+test_varargs (const char *format, ...)
+{
+  va_list args;
+  va_start (args, format);
+  va_list args_copy;
+  va_copy (args_copy, args);
+
+  const char *str = "";
+  int number = 0;
+  float fnumber = 0;
+
+  while (*format)
+    {
+      switch (*format++)
+	{
+	case '\''s'\'': // string
+	  str = va_arg (args_copy, const char *);
+	  break;
+	case '\''d'\'': // int
+	  number = va_arg (args_copy, int);
+	  break;
+	case '\''f'\'': // float
+	  fnumber = va_arg (args_copy, double);
+	  break;
+	default:
+	  break;
+	}
+    }
+  va_end (args_copy);
+  va_end (args);
+
+  return *str && number && fnumber;
+}
+'
+
+# Test code for whether the C compiler supports C99 (body of main).
+ac_c_conftest_c99_main='
+  // Check bool.
+  _Bool success = false;
+  success |= (argc != 0);
+
+  // Check restrict.
+  if (test_restrict ("String literal") == 0)
+    success = true;
+  char *restrict newvar = "Another string";
+
+  // Check varargs.
+  success &= test_varargs ("s, d'\'' f .", "string", 65, 34.234);
+  test_varargs_macros ();
+
+  // Check flexible array members.
+  struct incomplete_array *ia =
+    malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
+  ia->datasize = 10;
+  for (int i = 0; i < ia->datasize; ++i)
+    ia->data[i] = i * 1.234;
+
+  // Check named initializers.
+  struct named_init ni = {
+    .number = 34,
+    .name = L"Test wide string",
+    .average = 543.34343,
+  };
+
+  ni.number = 58;
+
+  int dynamic_array[ni.number];
+  dynamic_array[0] = argv[0][0];
+  dynamic_array[ni.number - 1] = 543;
+
+  // work around unused variable warnings
+  ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == '\''x'\''
+	 || dynamic_array[ni.number - 1] != 543);
+'
+
+# Test code for whether the C compiler supports C11 (global declarations)
+ac_c_conftest_c11_globals='
+// Does the compiler advertise C11 conformance?
+#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L
+# error "Compiler does not advertise C11 conformance"
+#endif
+
+// Check _Alignas.
+char _Alignas (double) aligned_as_double;
+char _Alignas (0) no_special_alignment;
+extern char aligned_as_int;
+char _Alignas (0) _Alignas (int) aligned_as_int;
+
+// Check _Alignof.
+enum
+{
+  int_alignment = _Alignof (int),
+  int_array_alignment = _Alignof (int[100]),
+  char_alignment = _Alignof (char)
+};
+_Static_assert (0 < -_Alignof (int), "_Alignof is signed");
+
+// Check _Noreturn.
+int _Noreturn does_not_return (void) { for (;;) continue; }
+
+// Check _Static_assert.
+struct test_static_assert
+{
+  int x;
+  _Static_assert (sizeof (int) <= sizeof (long int),
+                  "_Static_assert does not work in struct");
+  long int y;
+};
+
+// Check UTF-8 literals.
+#define u8 syntax error!
+char const utf8_literal[] = u8"happens to be ASCII" "another string";
+
+// Check duplicate typedefs.
+typedef long *long_ptr;
+typedef long int *long_ptr;
+typedef long_ptr long_ptr;
+
+// Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1.
+struct anonymous
+{
+  union {
+    struct { int i; int j; };
+    struct { int k; long int l; } w;
+  };
+  int m;
+} v1;
+'
+
+# Test code for whether the C compiler supports C11 (body of main).
+ac_c_conftest_c11_main='
+  _Static_assert ((offsetof (struct anonymous, i)
+		   == offsetof (struct anonymous, w.k)),
+		  "Anonymous union alignment botch");
+  v1.i = 2;
+  v1.w.k = 5;
+  ok |= v1.i != 5;
+'
+
+# Test code for whether the C compiler supports C11 (complete).
+ac_c_conftest_c11_program="${ac_c_conftest_c89_globals}
+${ac_c_conftest_c99_globals}
+${ac_c_conftest_c11_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_c_conftest_c89_main}
+  ${ac_c_conftest_c99_main}
+  ${ac_c_conftest_c11_main}
+  return ok;
+}
+"
+
+# Test code for whether the C compiler supports C99 (complete).
+ac_c_conftest_c99_program="${ac_c_conftest_c89_globals}
+${ac_c_conftest_c99_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_c_conftest_c89_main}
+  ${ac_c_conftest_c99_main}
+  return ok;
+}
+"
+
+# Test code for whether the C compiler supports C89 (complete).
+ac_c_conftest_c89_program="${ac_c_conftest_c89_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_c_conftest_c89_main}
+  return ok;
+}
+"
+
+as_fn_append ac_header_c_list " stdio.h stdio_h HAVE_STDIO_H"
+as_fn_append ac_header_c_list " stdlib.h stdlib_h HAVE_STDLIB_H"
+as_fn_append ac_header_c_list " string.h string_h HAVE_STRING_H"
+as_fn_append ac_header_c_list " inttypes.h inttypes_h HAVE_INTTYPES_H"
+as_fn_append ac_header_c_list " stdint.h stdint_h HAVE_STDINT_H"
+as_fn_append ac_header_c_list " strings.h strings_h HAVE_STRINGS_H"
+as_fn_append ac_header_c_list " sys/stat.h sys_stat_h HAVE_SYS_STAT_H"
+as_fn_append ac_header_c_list " sys/types.h sys_types_h HAVE_SYS_TYPES_H"
+as_fn_append ac_header_c_list " unistd.h unistd_h HAVE_UNISTD_H"
+
+# Auxiliary files required by this configure script.
+ac_aux_files="install-sh config.guess config.sub"
+
+# Locations in which to look for auxiliary files.
+ac_aux_dir_candidates="${srcdir}/../"
+
+# Search for a directory containing all of the required auxiliary files,
+# $ac_aux_files, from the $PATH-style list $ac_aux_dir_candidates.
+# If we don't find one directory that contains all the files we need,
+# we report the set of missing files from the *first* directory in
+# $ac_aux_dir_candidates and give up.
+ac_missing_aux_files=""
+ac_first_candidate=:
+printf "%s\n" "$as_me:${as_lineno-$LINENO}: looking for aux files: $ac_aux_files" >&5
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_found=false
+for as_dir in $ac_aux_dir_candidates
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+  as_found=:
+
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}:  trying $as_dir" >&5
+  ac_aux_dir_found=yes
+  ac_install_sh=
+  for ac_aux in $ac_aux_files
+  do
+    # As a special case, if "install-sh" is required, that requirement
+    # can be satisfied by any of "install-sh", "install.sh", or "shtool",
+    # and $ac_install_sh is set appropriately for whichever one is found.
+    if test x"$ac_aux" = x"install-sh"
+    then
+      if test -f "${as_dir}install-sh"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}install-sh found" >&5
+        ac_install_sh="${as_dir}install-sh -c"
+      elif test -f "${as_dir}install.sh"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}install.sh found" >&5
+        ac_install_sh="${as_dir}install.sh -c"
+      elif test -f "${as_dir}shtool"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}shtool found" >&5
+        ac_install_sh="${as_dir}shtool install -c"
+      else
+        ac_aux_dir_found=no
+        if $ac_first_candidate; then
+          ac_missing_aux_files="${ac_missing_aux_files} install-sh"
+        else
+          break
+        fi
+      fi
+    else
+      if test -f "${as_dir}${ac_aux}"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}${ac_aux} found" >&5
+      else
+        ac_aux_dir_found=no
+        if $ac_first_candidate; then
+          ac_missing_aux_files="${ac_missing_aux_files} ${ac_aux}"
+        else
+          break
+        fi
+      fi
+    fi
+  done
+  if test "$ac_aux_dir_found" = yes; then
+    ac_aux_dir="$as_dir"
     break
   fi
+  ac_first_candidate=false
+
+  as_found=false
 done
-if test -z "$ac_aux_dir"; then
-  as_fn_error $? "cannot find install-sh, install.sh, or shtool in ../ \"$srcdir\"/../" "$LINENO" 5
+IFS=$as_save_IFS
+if $as_found
+then :
+
+else $as_nop
+  as_fn_error $? "cannot find required auxiliary files:$ac_missing_aux_files" "$LINENO" 5
 fi
 
+
 # These three variables are undocumented and unsupported,
 # and are intended to be withdrawn in a future Autoconf release.
 # They can cause serious problems if a builder's source tree is in a directory
 # whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
+if test -f "${ac_aux_dir}config.guess"; then
+  ac_config_guess="$SHELL ${ac_aux_dir}config.guess"
+fi
+if test -f "${ac_aux_dir}config.sub"; then
+  ac_config_sub="$SHELL ${ac_aux_dir}config.sub"
+fi
+if test -f "$ac_aux_dir/configure"; then
+  ac_configure="$SHELL ${ac_aux_dir}configure"
+fi
+
+# Check that the precious variables saved in the cache have kept the same
+# value.
+ac_cache_corrupted=false
+for ac_var in $ac_precious_vars; do
+  eval ac_old_set=\$ac_cv_env_${ac_var}_set
+  eval ac_new_set=\$ac_env_${ac_var}_set
+  eval ac_old_val=\$ac_cv_env_${ac_var}_value
+  eval ac_new_val=\$ac_env_${ac_var}_value
+  case $ac_old_set,$ac_new_set in
+    set,)
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+      ac_cache_corrupted=: ;;
+    ,set)
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+      ac_cache_corrupted=: ;;
+    ,);;
+    *)
+      if test "x$ac_old_val" != "x$ac_new_val"; then
+	# differences in whitespace do not lead to failure.
+	ac_old_val_w=`echo x $ac_old_val`
+	ac_new_val_w=`echo x $ac_new_val`
+	if test "$ac_old_val_w" != "$ac_new_val_w"; then
+	  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+	  ac_cache_corrupted=:
+	else
+	  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+printf "%s\n" "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
+	  eval $ac_var=\$ac_old_val
+	fi
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
+printf "%s\n" "$as_me:   former value:  \`$ac_old_val'" >&2;}
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
+printf "%s\n" "$as_me:   current value: \`$ac_new_val'" >&2;}
+      fi;;
+  esac
+  # Pass precious variables to config.status.
+  if test "$ac_new_set" = set; then
+    case $ac_new_val in
+    *\'*) ac_arg=$ac_var=`printf "%s\n" "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *) ac_arg=$ac_var=$ac_new_val ;;
+    esac
+    case " $ac_configure_args " in
+      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
+      *) as_fn_append ac_configure_args " '$ac_arg'" ;;
+    esac
+  fi
+done
+if $ac_cache_corrupted; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
+printf "%s\n" "$as_me: error: changes in the environment can compromise the build" >&2;}
+  as_fn_error $? "run \`${MAKE-make} distclean' and/or \`rm $cache_file'
+	    and start over" "$LINENO" 5
+fi
+## -------------------- ##
+## Main body of script. ##
+## -------------------- ##
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+
+ac_config_files="$ac_config_files ../config/Tools.mk hotplug/common/hotplugpath.sh hotplug/FreeBSD/rc.d/xencommons hotplug/FreeBSD/rc.d/xendriverdomain hotplug/Linux/init.d/sysconfig.xencommons hotplug/Linux/init.d/sysconfig.xendomains hotplug/Linux/init.d/xen-watchdog hotplug/Linux/init.d/xencommons hotplug/Linux/init.d/xendomains hotplug/Linux/init.d/xendriverdomain hotplug/Linux/launch-xenstore hotplug/Linux/vif-setup hotplug/Linux/xen-hotplug-common.sh hotplug/Linux/xendomains hotplug/NetBSD/rc.d/xencommons hotplug/NetBSD/rc.d/xendriverdomain ocaml/libs/xs/paths.ml ocaml/xenstored/paths.ml ocaml/xenstored/oxenstored.conf"
+
+ac_config_headers="$ac_config_headers config.h"
 
 
 
 # Check if CFLAGS, LDFLAGS, LIBS, CPPFLAGS or CPP is set and print a warning
 
-if test -n "$CC$CFLAGS$LDFLAGS$LIBS$CPPFLAGS$CPP"; then :
+if test -n "$CC$CFLAGS$LDFLAGS$LIBS$CPPFLAGS$CPP"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Setting CC, CFLAGS, LDFLAGS, LIBS, CPPFLAGS or CPP is not \
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Setting CC, CFLAGS, LDFLAGS, LIBS, CPPFLAGS or CPP is not \
 recommended, use PREPEND_INCLUDES, PREPEND_LIB, \
 APPEND_INCLUDES and APPEND_LIB instead when possible." >&5
-$as_echo "$as_me: WARNING: Setting CC, CFLAGS, LDFLAGS, LIBS, CPPFLAGS or CPP is not \
+printf "%s\n" "$as_me: WARNING: Setting CC, CFLAGS, LDFLAGS, LIBS, CPPFLAGS or CPP is not \
 recommended, use PREPEND_INCLUDES, PREPEND_LIB, \
 APPEND_INCLUDES and APPEND_LIB instead when possible." >&2;}
 
 fi
 
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
-  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+
+
+  # Make sure we can run config.sub.
+$SHELL "${ac_aux_dir}config.sub" sun4 >/dev/null 2>&1 ||
+  as_fn_error $? "cannot run $SHELL ${ac_aux_dir}config.sub" "$LINENO" 5
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
+printf %s "checking build system type... " >&6; }
+if test ${ac_cv_build+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_build_alias=$build_alias
 test "x$ac_build_alias" = x &&
-  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
+  ac_build_alias=`$SHELL "${ac_aux_dir}config.guess"`
 test "x$ac_build_alias" = x &&
   as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
-  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
+ac_cv_build=`$SHELL "${ac_aux_dir}config.sub" $ac_build_alias` ||
+  as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $ac_build_alias failed" "$LINENO" 5
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
+printf "%s\n" "$ac_cv_build" >&6; }
 case $ac_cv_build in
 *-*-*) ;;
 *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
@@ -2542,21 +2801,22 @@ IFS=$ac_save_IFS
 case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
+printf %s "checking host system type... " >&6; }
+if test ${ac_cv_host+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test "x$host_alias" = x; then
   ac_cv_host=$ac_cv_build
 else
-  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
-    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
+  ac_cv_host=`$SHELL "${ac_aux_dir}config.sub" $host_alias` ||
+    as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $host_alias failed" "$LINENO" 5
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
+printf "%s\n" "$ac_cv_host" >&6; }
 case $ac_cv_host in
 *-*-*) ;;
 *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
@@ -2582,6 +2842,15 @@ rumpxen|rumprun) CONFIG_RUMP=y; rump=true ;;
 esac
 
 
+
+
+
+
+
+
+
+
+
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -2590,11 +2859,12 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -2602,11 +2872,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -2617,11 +2891,11 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -2630,11 +2904,12 @@ if test -z "$ac_cv_prog_CC"; then
   ac_ct_CC=$CC
   # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_CC"; then
   ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
 else
@@ -2642,11 +2917,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -2657,11 +2936,11 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_CC" = x; then
@@ -2669,8 +2948,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     CC=$ac_ct_CC
@@ -2683,11 +2962,12 @@ if test -z "$CC"; then
           if test -n "$ac_tool_prefix"; then
     # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -2695,11 +2975,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -2710,11 +2994,11 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -2723,11 +3007,12 @@ fi
 if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -2736,15 +3021,19 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
        ac_prog_rejected=yes
        continue
      fi
     ac_cv_prog_CC="cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -2760,18 +3049,18 @@ if test $ac_prog_rejected = yes; then
     # However, it has the same basename, so the bogon will be chosen
     # first if we set CC to just the basename; use the full file name.
     shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+    ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@"
   fi
 fi
 fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -2782,11 +3071,12 @@ if test -z "$CC"; then
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -2794,11 +3084,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -2809,11 +3103,11 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -2826,11 +3120,12 @@ if test -z "$CC"; then
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_CC"; then
   ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
 else
@@ -2838,11 +3133,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -2853,11 +3152,11 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -2869,8 +3168,8 @@ done
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     CC=$ac_ct_CC
@@ -2878,25 +3177,129 @@ esac
 fi
 
 fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args.
+set dummy ${ac_tool_prefix}clang; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="${ac_tool_prefix}clang"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "clang", so it can be a program name with args.
+set dummy clang; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="clang"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
 
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
 
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+  if test "x$ac_ct_CC" = x; then
+    CC=""
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    CC=$ac_ct_CC
+  fi
+else
+  CC="$ac_cv_prog_CC"
+fi
+
+fi
+
+
+test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "no acceptable C compiler found in \$PATH
 See \`config.log' for more details" "$LINENO" 5; }
 
 # Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
+printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
 set X $ac_compile
 ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
+for ac_option in --version -v -V -qversion -version; do
   { { ac_try="$ac_compiler $ac_option >&5"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compiler $ac_option >&5") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -2906,7 +3309,7 @@ $as_echo "$ac_try_echo"; } >&5
     cat conftest.er1 >&5
   fi
   rm -f conftest.er1 conftest.err
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
 done
 
@@ -2914,7 +3317,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
@@ -2926,9 +3329,9 @@ ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
 # Try to create an executable without -o first, disregard a.out.
 # It will help us diagnose broken compilers, and finding out an intuition
 # of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
+printf %s "checking whether the C compiler works... " >&6; }
+ac_link_default=`printf "%s\n" "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
 
 # The possible output files:
 ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
@@ -2949,11 +3352,12 @@ case "(($ac_try" in
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link_default") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+then :
   # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
 # So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
 # in a Makefile.  We should not override ac_cv_exeext if it was cached,
@@ -2970,7 +3374,7 @@ do
 	# certainly right.
 	break;;
     *.* )
-	if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+	if test ${ac_cv_exeext+y} && test "$ac_cv_exeext" != no;
 	then :; else
 	   ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
 	fi
@@ -2986,44 +3390,46 @@ do
 done
 test "$ac_cv_exeext" = no && ac_cv_exeext=
 
-else
+else $as_nop
   ac_file=''
 fi
-if test -z "$ac_file"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
+if test -z "$ac_file"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error 77 "C compiler cannot create executables
 See \`config.log' for more details" "$LINENO" 5; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
+printf %s "checking for C compiler default output file name... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
+printf "%s\n" "$ac_file" >&6; }
 ac_exeext=$ac_cv_exeext
 
 rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
 ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
+printf %s "checking for suffix of executables... " >&6; }
 if { { ac_try="$ac_link"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+then :
   # If both `conftest.exe' and `conftest' are `present' (well, observable)
 # catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
 # work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -3037,15 +3443,15 @@ for ac_file in conftest.exe conftest conftest.*; do
     * ) break;;
   esac
 done
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+else $as_nop
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot compute suffix of executables: cannot compile and link
 See \`config.log' for more details" "$LINENO" 5; }
 fi
 rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
+printf "%s\n" "$ac_cv_exeext" >&6; }
 
 rm -f conftest.$ac_ext
 EXEEXT=$ac_cv_exeext
@@ -3054,7 +3460,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdio.h>
 int
-main ()
+main (void)
 {
 FILE *f = fopen ("conftest.out", "w");
  return ferror (f) || fclose (f) != 0;
@@ -3066,8 +3472,8 @@ _ACEOF
 ac_clean_files="$ac_clean_files conftest.out"
 # Check that the compiler produces executables we can run.  If not, either
 # the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
+printf %s "checking whether we are cross compiling... " >&6; }
 if test "$cross_compiling" != yes; then
   { { ac_try="$ac_link"
 case "(($ac_try" in
@@ -3075,10 +3481,10 @@ case "(($ac_try" in
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
   if { ac_try='./conftest$ac_cv_exeext'
   { { case "(($ac_try" in
@@ -3086,39 +3492,40 @@ $as_echo "$ac_try_echo"; } >&5
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_try") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; }; then
     cross_compiling=no
   else
     if test "$cross_compiling" = maybe; then
 	cross_compiling=yes
     else
-	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
+	{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot run C compiled programs.
 If you meant to cross compile, use \`--host'.
 See \`config.log' for more details" "$LINENO" 5; }
     fi
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
+printf "%s\n" "$cross_compiling" >&6; }
 
 rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
 ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
+printf %s "checking for suffix of object files... " >&6; }
+if test ${ac_cv_objext+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
@@ -3132,11 +3539,12 @@ case "(($ac_try" in
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compile") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+then :
   for ac_file in conftest.o conftest.obj conftest.*; do
   test -f "$ac_file" || continue;
   case $ac_file in
@@ -3145,31 +3553,32 @@ $as_echo "$ac_try_echo"; } >&5
        break;;
   esac
 done
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot compute suffix of object files: cannot compile
 See \`config.log' for more details" "$LINENO" 5; }
 fi
 rm -f conftest.$ac_cv_objext conftest.$ac_ext
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
+printf "%s\n" "$ac_cv_objext" >&6; }
 OBJEXT=$ac_cv_objext
 ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5
+printf %s "checking whether the compiler supports GNU C... " >&6; }
+if test ${ac_cv_c_compiler_gnu+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 #ifndef __GNUC__
        choke me
@@ -3179,29 +3588,33 @@ main ()
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_compiler_gnu=yes
-else
+else $as_nop
   ac_compiler_gnu=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 ac_cv_c_compiler_gnu=$ac_compiler_gnu
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
+printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; }
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
 if test $ac_compiler_gnu = yes; then
   GCC=yes
 else
   GCC=
 fi
-ac_test_CFLAGS=${CFLAGS+set}
+ac_test_CFLAGS=${CFLAGS+y}
 ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
+printf %s "checking whether $CC accepts -g... " >&6; }
+if test ${ac_cv_prog_cc_g+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_save_c_werror_flag=$ac_c_werror_flag
    ac_c_werror_flag=yes
    ac_cv_prog_cc_g=no
@@ -3210,57 +3623,60 @@ else
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_g=yes
-else
+else $as_nop
   CFLAGS=""
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-else
+else $as_nop
   ac_c_werror_flag=$ac_save_c_werror_flag
 	 CFLAGS="-g"
 	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_g=yes
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
    ac_c_werror_flag=$ac_save_c_werror_flag
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
+printf "%s\n" "$ac_cv_prog_cc_g" >&6; }
+if test $ac_test_CFLAGS; then
   CFLAGS=$ac_save_CFLAGS
 elif test $ac_cv_prog_cc_g = yes; then
   if test "$GCC" = yes; then
@@ -3275,94 +3691,144 @@ else
     CFLAGS=
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_cv_prog_cc_c89=no
+ac_prog_cc_stdc=no
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5
+printf %s "checking for $CC option to enable C11 features... " >&6; }
+if test ${ac_cv_prog_cc_c11+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c11=no
 ac_save_CC=$CC
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-struct stat;
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+$ac_c_conftest_c11_program
+_ACEOF
+for ac_arg in '' -std=gnu11
+do
+  CC="$ac_save_CC $ac_arg"
+  if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_cv_prog_cc_c11=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+  test "x$ac_cv_prog_cc_c11" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+fi
 
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
-   inside strings and character constants.  */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
+if test "x$ac_cv_prog_cc_c11" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c11" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5
+printf "%s\n" "$ac_cv_prog_cc_c11" >&6; }
+     CC="$CC $ac_cv_prog_cc_c11"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11
+  ac_prog_cc_stdc=c11
+fi
+fi
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5
+printf %s "checking for $CC option to enable C99 features... " >&6; }
+if test ${ac_cv_prog_cc_c99+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c99=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_c_conftest_c99_program
+_ACEOF
+for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99=
+do
+  CC="$ac_save_CC $ac_arg"
+  if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_cv_prog_cc_c99=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+  test "x$ac_cv_prog_cc_c99" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+fi
 
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-  ;
-  return 0;
-}
+if test "x$ac_cv_prog_cc_c99" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c99" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5
+printf "%s\n" "$ac_cv_prog_cc_c99" >&6; }
+     CC="$CC $ac_cv_prog_cc_c99"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99
+  ac_prog_cc_stdc=c99
+fi
+fi
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5
+printf %s "checking for $CC option to enable C89 features... " >&6; }
+if test ${ac_cv_prog_cc_c89+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c89=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_c_conftest_c89_program
 _ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-	-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
 do
   CC="$ac_save_CC $ac_arg"
-  if ac_fn_c_try_compile "$LINENO"; then :
+  if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_c89=$ac_arg
 fi
-rm -f core conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext conftest.beam
   test "x$ac_cv_prog_cc_c89" != "xno" && break
 done
 rm -f conftest.$ac_ext
 CC=$ac_save_CC
-
 fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
-  x)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
-  xno)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
-  *)
-    CC="$CC $ac_cv_prog_cc_c89"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
 
+if test "x$ac_cv_prog_cc_c89" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c89" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
+printf "%s\n" "$ac_cv_prog_cc_c89" >&6; }
+     CC="$CC $ac_cv_prog_cc_c89"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89
+  ac_prog_cc_stdc=c89
+fi
 fi
 
 ac_ext=c
@@ -3373,17 +3839,19 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
 # Check whether --enable-largefile was given.
-if test "${enable_largefile+set}" = set; then :
+if test ${enable_largefile+y}
+then :
   enableval=$enable_largefile;
 fi
 
 if test "$enable_largefile" != no; then
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
-$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
-if ${ac_cv_sys_largefile_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
+printf %s "checking for special C compiler options needed for large files... " >&6; }
+if test ${ac_cv_sys_largefile_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_cv_sys_largefile_CC=no
      if test "$GCC" != yes; then
        ac_save_CC=$CC
@@ -3397,44 +3865,47 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-	 if ac_fn_c_try_compile "$LINENO"; then :
+	 if ac_fn_c_try_compile "$LINENO"
+then :
   break
 fi
-rm -f core conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext conftest.beam
 	 CC="$CC -n32"
-	 if ac_fn_c_try_compile "$LINENO"; then :
+	 if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_largefile_CC=' -n32'; break
 fi
-rm -f core conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext conftest.beam
 	 break
        done
        CC=$ac_save_CC
        rm -f conftest.$ac_ext
     fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
-$as_echo "$ac_cv_sys_largefile_CC" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
+printf "%s\n" "$ac_cv_sys_largefile_CC" >&6; }
   if test "$ac_cv_sys_largefile_CC" != no; then
     CC=$CC$ac_cv_sys_largefile_CC
   fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
-if ${ac_cv_sys_file_offset_bits+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+printf %s "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
+if test ${ac_cv_sys_file_offset_bits+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   while :; do
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -3443,22 +3914,23 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_file_offset_bits=no; break
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #define _FILE_OFFSET_BITS 64
@@ -3467,43 +3939,43 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_file_offset_bits=64; break
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   ac_cv_sys_file_offset_bits=unknown
   break
 done
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
-$as_echo "$ac_cv_sys_file_offset_bits" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
+printf "%s\n" "$ac_cv_sys_file_offset_bits" >&6; }
 case $ac_cv_sys_file_offset_bits in #(
   no | unknown) ;;
   *)
-cat >>confdefs.h <<_ACEOF
-#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
-_ACEOF
+printf "%s\n" "#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits" >>confdefs.h
 ;;
 esac
 rm -rf conftest*
   if test $ac_cv_sys_file_offset_bits = unknown; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
-$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
-if ${ac_cv_sys_large_files+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
+printf %s "checking for _LARGE_FILES value needed for large files... " >&6; }
+if test ${ac_cv_sys_large_files+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   while :; do
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -3512,22 +3984,23 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_large_files=no; break
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #define _LARGE_FILES 1
@@ -3536,40 +4009,37 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_large_files=1; break
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   ac_cv_sys_large_files=unknown
   break
 done
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
-$as_echo "$ac_cv_sys_large_files" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
+printf "%s\n" "$ac_cv_sys_large_files" >&6; }
 case $ac_cv_sys_large_files in #(
   no | unknown) ;;
   *)
-cat >>confdefs.h <<_ACEOF
-#define _LARGE_FILES $ac_cv_sys_large_files
-_ACEOF
+printf "%s\n" "#define _LARGE_FILES $ac_cv_sys_large_files" >>confdefs.h
 ;;
 esac
 rm -rf conftest*
   fi
-
-
 fi
 
 
@@ -3929,16 +4399,15 @@ CONFIG_DIR=$sysconfdir
 XEN_CONFIG_DIR=$CONFIG_DIR/xen
 
 
-cat >>confdefs.h <<_ACEOF
-#define XEN_CONFIG_DIR "$XEN_CONFIG_DIR"
-_ACEOF
+printf "%s\n" "#define XEN_CONFIG_DIR \"$XEN_CONFIG_DIR\"" >>confdefs.h
 
 
 
 # Check whether --with-initddir was given.
-if test "${with_initddir+set}" = set; then :
+if test ${with_initddir+y}
+then :
   withval=$with_initddir; initddir_path=$withval
-else
+else $as_nop
   case "$host_os" in
          *linux*)
          if test -d $sysconfdir/rc.d/init.d ; then
@@ -3956,9 +4425,10 @@ fi
 
 
 # Check whether --with-sysconfig-leaf-dir was given.
-if test "${with_sysconfig_leaf_dir+set}" = set; then :
+if test ${with_sysconfig_leaf_dir+y}
+then :
   withval=$with_sysconfig_leaf_dir; config_leaf_dir=$withval
-else
+else $as_nop
   config_leaf_dir=sysconfig
     if test ! -d /etc/sysconfig ; then config_leaf_dir=default ; fi
 fi
@@ -3968,52 +4438,55 @@ CONFIG_LEAF_DIR=$config_leaf_dir
 
 
 # Check whether --with-libexec-leaf-dir was given.
-if test "${with_libexec_leaf_dir+set}" = set; then :
+if test ${with_libexec_leaf_dir+y}
+then :
   withval=$with_libexec_leaf_dir; libexec_subdir=$withval
-else
+else $as_nop
   libexec_subdir=$PACKAGE_TARNAME
 fi
 
 
 
 # Check whether --with-xen-scriptdir was given.
-if test "${with_xen_scriptdir+set}" = set; then :
+if test ${with_xen_scriptdir+y}
+then :
   withval=$with_xen_scriptdir; xen_scriptdir_path=$withval
-else
+else $as_nop
   xen_scriptdir_path=$XEN_CONFIG_DIR/scripts
 fi
 
 XEN_SCRIPT_DIR=$xen_scriptdir_path
 
 
-cat >>confdefs.h <<_ACEOF
-#define XEN_SCRIPT_DIR "$XEN_SCRIPT_DIR"
-_ACEOF
+printf "%s\n" "#define XEN_SCRIPT_DIR \"$XEN_SCRIPT_DIR\"" >>confdefs.h
 
 
 
 # Check whether --with-xen-dumpdir was given.
-if test "${with_xen_dumpdir+set}" = set; then :
+if test ${with_xen_dumpdir+y}
+then :
   withval=$with_xen_dumpdir; xen_dumpdir_path=$withval
-else
+else $as_nop
   xen_dumpdir_path=$localstatedir/lib/xen/dump
 fi
 
 
 
 # Check whether --with-rundir was given.
-if test "${with_rundir+set}" = set; then :
+if test ${with_rundir+y}
+then :
   withval=$with_rundir; rundir_path=$withval
-else
+else $as_nop
   rundir_path=$localstatedir/run
 fi
 
 
 
 # Check whether --with-debugdir was given.
-if test "${with_debugdir+set}" = set; then :
+if test ${with_debugdir+y}
+then :
   withval=$with_debugdir; debugdir_path=$withval
-else
+else $as_nop
   debugdir_path=$prefix/lib/debug
 fi
 
@@ -4032,9 +4505,7 @@ LIBEXEC=`eval echo $libexecdir/$libexec_subdir`
 LIBEXEC_BIN=${LIBEXEC}/bin
 
 
-cat >>confdefs.h <<_ACEOF
-#define LIBEXEC_BIN "$LIBEXEC_BIN"
-_ACEOF
+printf "%s\n" "#define LIBEXEC_BIN \"$LIBEXEC_BIN\"" >>confdefs.h
 
 LIBEXEC_LIB=${LIBEXEC}/lib
 
@@ -4043,41 +4514,31 @@ LIBEXEC_INC=${LIBEXEC}/include
 XENFIRMWAREDIR=${LIBEXEC}/boot
 
 
-cat >>confdefs.h <<_ACEOF
-#define XENFIRMWAREDIR "$XENFIRMWAREDIR"
-_ACEOF
+printf "%s\n" "#define XENFIRMWAREDIR \"$XENFIRMWAREDIR\"" >>confdefs.h
 
 
 XEN_RUN_DIR=$rundir_path/xen
 
 
-cat >>confdefs.h <<_ACEOF
-#define XEN_RUN_DIR "$XEN_RUN_DIR"
-_ACEOF
+printf "%s\n" "#define XEN_RUN_DIR \"$XEN_RUN_DIR\"" >>confdefs.h
 
 
 XEN_LOG_DIR=$localstatedir/log/xen
 
 
-cat >>confdefs.h <<_ACEOF
-#define XEN_LOG_DIR "$XEN_LOG_DIR"
-_ACEOF
+printf "%s\n" "#define XEN_LOG_DIR \"$XEN_LOG_DIR\"" >>confdefs.h
 
 
 XEN_RUN_STORED=$rundir_path/xenstored
 
 
-cat >>confdefs.h <<_ACEOF
-#define XEN_RUN_STORED "$XEN_RUN_STORED"
-_ACEOF
+printf "%s\n" "#define XEN_RUN_STORED \"$XEN_RUN_STORED\"" >>confdefs.h
 
 
 XEN_LIB_DIR=$localstatedir/lib/xen
 
 
-cat >>confdefs.h <<_ACEOF
-#define XEN_LIB_DIR "$XEN_LIB_DIR"
-_ACEOF
+printf "%s\n" "#define XEN_LIB_DIR \"$XEN_LIB_DIR\"" >>confdefs.h
 
 
 SHAREDIR=$prefix/share
@@ -4093,9 +4554,7 @@ case "$host_os" in
 esac
 
 
-cat >>confdefs.h <<_ACEOF
-#define XEN_LOCK_DIR "$XEN_LOCK_DIR"
-_ACEOF
+printf "%s\n" "#define XEN_LOCK_DIR \"$XEN_LOCK_DIR\"" >>confdefs.h
 
 
 XEN_PAGING_DIR=$localstatedir/lib/xen/xenpaging
@@ -4104,9 +4563,7 @@ XEN_PAGING_DIR=$localstatedir/lib/xen/xenpaging
 XEN_DUMP_DIR=$xen_dumpdir_path
 
 
-cat >>confdefs.h <<_ACEOF
-#define XEN_DUMP_DIR "$XEN_DUMP_DIR"
-_ACEOF
+printf "%s\n" "#define XEN_DUMP_DIR \"$XEN_DUMP_DIR\"" >>confdefs.h
 
 
 DEBUG_DIR=$debugdir_path
@@ -4116,20 +4573,24 @@ DEBUG_DIR=$debugdir_path
 # Enable/disable options
 
 # Check whether --enable-werror was given.
-if test "${enable_werror+set}" = set; then :
+if test ${enable_werror+y}
+then :
   enableval=$enable_werror;
 fi
 
 
-if test "x$enable_werror" = "xno"; then :
+if test "x$enable_werror" = "xno"
+then :
 
     ax_cv_werror="n"
 
-elif test "x$enable_werror" = "xyes"; then :
+elif test "x$enable_werror" = "xyes"
+then :
 
     ax_cv_werror="y"
 
-elif test -z $ax_cv_werror; then :
+elif test -z $ax_cv_werror
+then :
 
     ax_cv_werror="y"
 
@@ -4139,20 +4600,24 @@ werror=$ax_cv_werror
 
 
 # Check whether --enable-rpath was given.
-if test "${enable_rpath+set}" = set; then :
+if test ${enable_rpath+y}
+then :
   enableval=$enable_rpath;
 fi
 
 
-if test "x$enable_rpath" = "xno"; then :
+if test "x$enable_rpath" = "xno"
+then :
 
     ax_cv_rpath="n"
 
-elif test "x$enable_rpath" = "xyes"; then :
+elif test "x$enable_rpath" = "xyes"
+then :
 
     ax_cv_rpath="y"
 
-elif test -z $ax_cv_rpath; then :
+elif test -z $ax_cv_rpath
+then :
 
     ax_cv_rpath="n"
 
@@ -4162,20 +4627,24 @@ rpath=$ax_cv_rpath
 
 
 # Check whether --enable-monitors was given.
-if test "${enable_monitors+set}" = set; then :
+if test ${enable_monitors+y}
+then :
   enableval=$enable_monitors;
 fi
 
 
-if test "x$enable_monitors" = "xno"; then :
+if test "x$enable_monitors" = "xno"
+then :
 
     ax_cv_monitors="n"
 
-elif test "x$enable_monitors" = "xyes"; then :
+elif test "x$enable_monitors" = "xyes"
+then :
 
     ax_cv_monitors="y"
 
-elif test -z $ax_cv_monitors; then :
+elif test -z $ax_cv_monitors
+then :
 
     ax_cv_monitors="y"
 
@@ -4185,20 +4654,24 @@ monitors=$ax_cv_monitors
 
 
 # Check whether --enable-ocamltools was given.
-if test "${enable_ocamltools+set}" = set; then :
+if test ${enable_ocamltools+y}
+then :
   enableval=$enable_ocamltools;
 fi
 
 
-if test "x$enable_ocamltools" = "xno"; then :
+if test "x$enable_ocamltools" = "xno"
+then :
 
     ax_cv_ocamltools="n"
 
-elif test "x$enable_ocamltools" = "xyes"; then :
+elif test "x$enable_ocamltools" = "xyes"
+then :
 
     ax_cv_ocamltools="y"
 
-elif test -z $ax_cv_ocamltools; then :
+elif test -z $ax_cv_ocamltools
+then :
 
     ax_cv_ocamltools="y"
 
@@ -4208,20 +4681,24 @@ ocamltools=$ax_cv_ocamltools
 
 
 # Check whether --enable-xsmpolicy was given.
-if test "${enable_xsmpolicy+set}" = set; then :
+if test ${enable_xsmpolicy+y}
+then :
   enableval=$enable_xsmpolicy;
 fi
 
 
-if test "x$enable_xsmpolicy" = "xno"; then :
+if test "x$enable_xsmpolicy" = "xno"
+then :
 
     ax_cv_xsmpolicy="n"
 
-elif test "x$enable_xsmpolicy" = "xyes"; then :
+elif test "x$enable_xsmpolicy" = "xyes"
+then :
 
     ax_cv_xsmpolicy="y"
 
-elif test -z $ax_cv_xsmpolicy; then :
+elif test -z $ax_cv_xsmpolicy
+then :
 
     ax_cv_xsmpolicy="y"
 
@@ -4231,20 +4708,24 @@ xsmpolicy=$ax_cv_xsmpolicy
 
 
 # Check whether --enable-ovmf was given.
-if test "${enable_ovmf+set}" = set; then :
+if test ${enable_ovmf+y}
+then :
   enableval=$enable_ovmf;
 fi
 
 
-if test "x$enable_ovmf" = "xno"; then :
+if test "x$enable_ovmf" = "xno"
+then :
 
     ax_cv_ovmf="n"
 
-elif test "x$enable_ovmf" = "xyes"; then :
+elif test "x$enable_ovmf" = "xyes"
+then :
 
     ax_cv_ovmf="y"
 
-elif test -z $ax_cv_ovmf; then :
+elif test -z $ax_cv_ovmf
+then :
 
     ax_cv_ovmf="n"
 
@@ -4254,20 +4735,24 @@ ovmf=$ax_cv_ovmf
 
 
 # Check whether --enable-seabios was given.
-if test "${enable_seabios+set}" = set; then :
+if test ${enable_seabios+y}
+then :
   enableval=$enable_seabios;
 fi
 
 
-if test "x$enable_seabios" = "xno"; then :
+if test "x$enable_seabios" = "xno"
+then :
 
     ax_cv_seabios="n"
 
-elif test "x$enable_seabios" = "xyes"; then :
+elif test "x$enable_seabios" = "xyes"
+then :
 
     ax_cv_seabios="y"
 
-elif test -z $ax_cv_seabios; then :
+elif test -z $ax_cv_seabios
+then :
 
     ax_cv_seabios="y"
 
@@ -4277,20 +4762,24 @@ seabios=$ax_cv_seabios
 
 
 # Check whether --enable-golang was given.
-if test "${enable_golang+set}" = set; then :
+if test ${enable_golang+y}
+then :
   enableval=$enable_golang;
 fi
 
 
-if test "x$enable_golang" = "xno"; then :
+if test "x$enable_golang" = "xno"
+then :
 
     ax_cv_golang="n"
 
-elif test "x$enable_golang" = "xyes"; then :
+elif test "x$enable_golang" = "xyes"
+then :
 
     ax_cv_golang="y"
 
-elif test -z $ax_cv_golang; then :
+elif test -z $ax_cv_golang
+then :
 
     ax_cv_golang="y"
 
@@ -4300,20 +4789,24 @@ golang=$ax_cv_golang
 
 
 # Check whether --enable-pygrub was given.
-if test "${enable_pygrub+set}" = set; then :
+if test ${enable_pygrub+y}
+then :
   enableval=$enable_pygrub;
 fi
 
 
-if test "x$enable_pygrub" = "xno"; then :
+if test "x$enable_pygrub" = "xno"
+then :
 
     ax_cv_pygrub="n"
 
-elif test "x$enable_pygrub" = "xyes"; then :
+elif test "x$enable_pygrub" = "xyes"
+then :
 
     ax_cv_pygrub="y"
 
-elif test -z $ax_cv_pygrub; then :
+elif test -z $ax_cv_pygrub
+then :
 
     ax_cv_pygrub="y"
 
@@ -4324,9 +4817,10 @@ pygrub=$ax_cv_pygrub
 
 
 # Check whether --with-linux-backend-modules was given.
-if test "${with_linux_backend_modules+set}" = set; then :
+if test ${with_linux_backend_modules+y}
+then :
   withval=$with_linux_backend_modules; LINUX_BACKEND_MODULES="$withval"
-else
+else $as_nop
   case "$host_os" in
 *linux*)
 LINUX_BACKEND_MODULES="
@@ -4356,17 +4850,19 @@ LINUX_BACKEND_MODULES="`eval echo $LINUX_BACKEND_MODULES`"
 
 
 # Check whether --enable-qemu-traditional was given.
-if test "${enable_qemu_traditional+set}" = set; then :
+if test ${enable_qemu_traditional+y}
+then :
   enableval=$enable_qemu_traditional;
 fi
 
-if test "x$enable_qemu_traditional" = "xyes"; then :
+if test "x$enable_qemu_traditional" = "xyes"
+then :
 
 
-$as_echo "#define HAVE_QEMU_TRADITIONAL 1" >>confdefs.h
+printf "%s\n" "#define HAVE_QEMU_TRADITIONAL 1" >>confdefs.h
 
     qemu_traditional=y
-else
+else $as_nop
 
     qemu_traditional=n
 
@@ -4374,15 +4870,17 @@ fi
 
 
 # Check whether --enable-ipxe was given.
-if test "${enable_ipxe+set}" = set; then :
+if test ${enable_ipxe+y}
+then :
   enableval=$enable_ipxe;
-else
+else $as_nop
 
-    if test "x$enable_qemu_traditional" = "xyes"; then :
+    if test "x$enable_qemu_traditional" = "xyes"
+then :
 
         enable_ipxe="yes"
 
-else
+else $as_nop
 
         enable_ipxe="no"
 
@@ -4390,14 +4888,16 @@ fi
 
 fi
 
-if test "x$enable_ipxe" = "xno"; then :
+if test "x$enable_ipxe" = "xno"
+then :
   ipxe=n
-else
+else $as_nop
   ipxe=y
 fi
 
 # Check whether --with-system-ipxe was given.
-if test "${with_system_ipxe+set}" = set; then :
+if test ${with_system_ipxe+y}
+then :
   withval=$with_system_ipxe;
     case $withval in
         no) as_fn_error $? "--without-system-ipxe has no effect" "$LINENO" 5 ;;
@@ -4407,27 +4907,28 @@ if test "${with_system_ipxe+set}" = set; then :
 
 fi
 
-if test "x$ipxe" = "xy" -o -n "$ipxe_path" ; then :
+if test "x$ipxe" = "xy" -o -n "$ipxe_path"
+then :
 
 
-cat >>confdefs.h <<_ACEOF
-#define IPXE_PATH "${ipxe_path:-$XENFIRMWAREDIR/ipxe.bin}"
-_ACEOF
+printf "%s\n" "#define IPXE_PATH \"${ipxe_path:-$XENFIRMWAREDIR/ipxe.bin}\"" >>confdefs.h
 
 
 fi
 
 
 # Check whether --enable-rombios was given.
-if test "${enable_rombios+set}" = set; then :
+if test ${enable_rombios+y}
+then :
   enableval=$enable_rombios;
-else
+else $as_nop
 
-    if test "x$enable_qemu_traditional" = "xyes" -o "x$enable_ipxe" = "xyes"; then :
+    if test "x$enable_qemu_traditional" = "xyes" -o "x$enable_ipxe" = "xyes"
+then :
 
         enable_rombios="yes"
 
-else
+else $as_nop
 
         enable_rombios="no"
 
@@ -4435,15 +4936,17 @@ fi
 
 fi
 
-if test "x$enable_rombios" = "xyes"; then :
+if test "x$enable_rombios" = "xyes"
+then :
 
                 # Extract the first word of "as86", so it can be a program name with args.
 set dummy as86; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_AS86+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_AS86+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $AS86 in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_AS86="$AS86" # Let the user override the test with a path.
@@ -4453,11 +4956,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_AS86="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_AS86="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4470,11 +4977,11 @@ esac
 fi
 AS86=$ac_cv_path_AS86
 if test -n "$AS86"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS86" >&5
-$as_echo "$AS86" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AS86" >&5
+printf "%s\n" "$AS86" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4484,11 +4991,12 @@ then
 fi
     # Extract the first word of "ld86", so it can be a program name with args.
 set dummy ld86; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_LD86+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_LD86+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $LD86 in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_LD86="$LD86" # Let the user override the test with a path.
@@ -4498,11 +5006,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_LD86="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_LD86="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4515,11 +5027,11 @@ esac
 fi
 LD86=$ac_cv_path_LD86
 if test -n "$LD86"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD86" >&5
-$as_echo "$LD86" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD86" >&5
+printf "%s\n" "$LD86" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4529,11 +5041,12 @@ then
 fi
     # Extract the first word of "bcc", so it can be a program name with args.
 set dummy bcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_BCC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_BCC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $BCC in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_BCC="$BCC" # Let the user override the test with a path.
@@ -4543,11 +5056,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_BCC="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_BCC="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4560,11 +5077,11 @@ esac
 fi
 BCC=$ac_cv_path_BCC
 if test -n "$BCC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $BCC" >&5
-$as_echo "$BCC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $BCC" >&5
+printf "%s\n" "$BCC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4572,11 +5089,12 @@ if test x"${BCC}" = x"no"
 then
     as_fn_error $? "Unable to find bcc, please install bcc" "$LINENO" 5
 fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lzma_version_number in -llzma" >&5
-$as_echo_n "checking for lzma_version_number in -llzma... " >&6; }
-if ${ac_cv_lib_lzma_lzma_version_number+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for lzma_version_number in -llzma" >&5
+printf %s "checking for lzma_version_number in -llzma... " >&6; }
+if test ${ac_cv_lib_lzma_lzma_version_number+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-llzma  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -4585,69 +5103,69 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char lzma_version_number ();
 int
-main ()
+main (void)
 {
 return lzma_version_number ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_lzma_lzma_version_number=yes
-else
+else $as_nop
   ac_cv_lib_lzma_lzma_version_number=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lzma_lzma_version_number" >&5
-$as_echo "$ac_cv_lib_lzma_lzma_version_number" >&6; }
-if test "x$ac_cv_lib_lzma_lzma_version_number" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBLZMA 1
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lzma_lzma_version_number" >&5
+printf "%s\n" "$ac_cv_lib_lzma_lzma_version_number" >&6; }
+if test "x$ac_cv_lib_lzma_lzma_version_number" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBLZMA 1" >>confdefs.h
 
   LIBS="-llzma $LIBS"
 
-else
+else $as_nop
   as_fn_error $? "Could not find lzma, needed to build rombios" "$LINENO" 5
 fi
 
 
-$as_echo "#define HAVE_ROMBIOS 1" >>confdefs.h
+printf "%s\n" "#define HAVE_ROMBIOS 1" >>confdefs.h
 
     rombios=y
-else
+else $as_nop
 
     rombios=n
 
 fi
 
 
-if test "x$pygrub" = "xy"; then :
+if test "x$pygrub" = "xy"
+then :
 
 
-$as_echo "#define HAVE_PYGRUB 1" >>confdefs.h
+printf "%s\n" "#define HAVE_PYGRUB 1" >>confdefs.h
 
 
 fi
 
 # Check whether --enable-libfsimage was given.
-if test "${enable_libfsimage+set}" = set; then :
+if test ${enable_libfsimage+y}
+then :
   enableval=$enable_libfsimage;
-else
+else $as_nop
 
-    if test "x$pygrub" = "xn"; then :
+    if test "x$pygrub" = "xn"
+then :
 
         enable_libfsimage="no"
 
-else
+else $as_nop
 
         enable_libfsimage="yes"
 
@@ -4655,17 +5173,19 @@ fi
 
 fi
 
-if test "x$enable_libfsimage" = "xyes"; then :
+if test "x$enable_libfsimage" = "xyes"
+then :
 
     libfsimage=y
 
-else
+else $as_nop
 
-    if test "x$pygrub" = "xy"; then :
+    if test "x$pygrub" = "xy"
+then :
 
         as_fn_error $? "pygrub needs libfsimage" "$LINENO" 5
 
-else
+else $as_nop
 
         libfsimage=n
 
@@ -4676,7 +5196,8 @@ fi
 
 
 # Check whether --with-system-qemu was given.
-if test "${with_system_qemu+set}" = set; then :
+if test ${with_system_qemu+y}
+then :
   withval=$with_system_qemu;
     case $withval in
         yes)
@@ -4689,7 +5210,7 @@ if test "${with_system_qemu+set}" = set; then :
             qemu_xen_systemd="$qemu_xen_path" ;;
     esac
 
-else
+else $as_nop
 
     case "$host_cpu" in
         i[3456]86|x86_64)
@@ -4701,16 +5222,15 @@ else
 
 fi
 
-if test "x$qemu_xen" = "xy"; then :
+if test "x$qemu_xen" = "xy"
+then :
 
     qemu_xen_path="$LIBEXEC_BIN/qemu-system-i386"
     qemu_xen_systemd="$qemu_xen_path"
 
 fi
 
-cat >>confdefs.h <<_ACEOF
-#define QEMU_XEN_PATH "$qemu_xen_path"
-_ACEOF
+printf "%s\n" "#define QEMU_XEN_PATH \"$qemu_xen_path\"" >>confdefs.h
 
 
 
@@ -4718,25 +5238,25 @@ _ACEOF
 
 
 # Check whether --with-stubdom-qmp-proxy was given.
-if test "${with_stubdom_qmp_proxy+set}" = set; then :
+if test ${with_stubdom_qmp_proxy+y}
+then :
   withval=$with_stubdom_qmp_proxy;
     stubdom_qmp_proxy="$withval"
 
-else
+else $as_nop
 
     stubdom_qmp_proxy="$bindir/vchan-socket-proxy"
 
 fi
 
 
-cat >>confdefs.h <<_ACEOF
-#define STUBDOM_QMP_PROXY_PATH "$stubdom_qmp_proxy"
-_ACEOF
+printf "%s\n" "#define STUBDOM_QMP_PROXY_PATH \"$stubdom_qmp_proxy\"" >>confdefs.h
 
 
 
 # Check whether --with-system-seabios was given.
-if test "${with_system_seabios+set}" = set; then :
+if test ${with_system_seabios+y}
+then :
   withval=$with_system_seabios;
     # Disable compilation of SeaBIOS.
     seabios=n
@@ -4748,19 +5268,19 @@ if test "${with_system_seabios+set}" = set; then :
 
 fi
 
-if test "x$seabios" = "xy" -o -n "$seabios_path" ; then :
+if test "x$seabios" = "xy" -o -n "$seabios_path"
+then :
 
 
-cat >>confdefs.h <<_ACEOF
-#define SEABIOS_PATH "${seabios_path:-$XENFIRMWAREDIR/seabios.bin}"
-_ACEOF
+printf "%s\n" "#define SEABIOS_PATH \"${seabios_path:-$XENFIRMWAREDIR/seabios.bin}\"" >>confdefs.h
 
 
 fi
 
 
 # Check whether --with-system-ovmf was given.
-if test "${with_system_ovmf+set}" = set; then :
+if test ${with_system_ovmf+y}
+then :
   withval=$with_system_ovmf;
     # Disable compilation of OVMF.
     ovmf=n
@@ -4772,19 +5292,19 @@ if test "${with_system_ovmf+set}" = set; then :
 
 fi
 
-if test "x$ovmf" = "xy" -o -n "$ovmf_path" ; then :
+if test "x$ovmf" = "xy" -o -n "$ovmf_path"
+then :
 
 
-cat >>confdefs.h <<_ACEOF
-#define OVMF_PATH "${ovmf_path:-$XENFIRMWAREDIR/ovmf.bin}"
-_ACEOF
+printf "%s\n" "#define OVMF_PATH \"${ovmf_path:-$XENFIRMWAREDIR/ovmf.bin}\"" >>confdefs.h
 
 
 fi
 
 
 # Check whether --with-extra-qemuu-configure-args was given.
-if test "${with_extra_qemuu_configure_args+set}" = set; then :
+if test ${with_extra_qemuu_configure_args+y}
+then :
   withval=$with_extra_qemuu_configure_args;
     case $withval in
         no) EXTRA_QEMUU_CONFIGURE_ARGS= ;;
@@ -4842,11 +5362,12 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -4854,11 +5375,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4869,11 +5394,11 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4882,11 +5407,12 @@ if test -z "$ac_cv_prog_CC"; then
   ac_ct_CC=$CC
   # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_CC"; then
   ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
 else
@@ -4894,11 +5420,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4909,11 +5439,11 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_CC" = x; then
@@ -4921,8 +5451,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     CC=$ac_ct_CC
@@ -4935,11 +5465,12 @@ if test -z "$CC"; then
           if test -n "$ac_tool_prefix"; then
     # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -4947,11 +5478,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4962,11 +5497,11 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4975,11 +5510,12 @@ fi
 if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -4988,15 +5524,19 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
        ac_prog_rejected=yes
        continue
      fi
     ac_cv_prog_CC="cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5012,18 +5552,18 @@ if test $ac_prog_rejected = yes; then
     # However, it has the same basename, so the bogon will be chosen
     # first if we set CC to just the basename; use the full file name.
     shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+    ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@"
   fi
 fi
 fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5034,11 +5574,12 @@ if test -z "$CC"; then
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -5046,11 +5587,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5061,11 +5606,11 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5078,11 +5623,12 @@ if test -z "$CC"; then
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_CC"; then
   ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
 else
@@ -5090,11 +5636,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5105,11 +5655,11 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5121,34 +5671,138 @@ done
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    CC=$ac_ct_CC
+  fi
+fi
+
+fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args.
+set dummy ${ac_tool_prefix}clang; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="${ac_tool_prefix}clang"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "clang", so it can be a program name with args.
+set dummy clang; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="clang"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+  if test "x$ac_ct_CC" = x; then
+    CC=""
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     CC=$ac_ct_CC
   fi
+else
+  CC="$ac_cv_prog_CC"
 fi
 
 fi
 
 
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "no acceptable C compiler found in \$PATH
 See \`config.log' for more details" "$LINENO" 5; }
 
 # Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
+printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
 set X $ac_compile
 ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
+for ac_option in --version -v -V -qversion -version; do
   { { ac_try="$ac_compiler $ac_option >&5"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compiler $ac_option >&5") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -5158,20 +5812,21 @@ $as_echo "$ac_try_echo"; } >&5
     cat conftest.er1 >&5
   fi
   rm -f conftest.er1 conftest.err
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
 done
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5
+printf %s "checking whether the compiler supports GNU C... " >&6; }
+if test ${ac_cv_c_compiler_gnu+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 #ifndef __GNUC__
        choke me
@@ -5181,29 +5836,33 @@ main ()
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_compiler_gnu=yes
-else
+else $as_nop
   ac_compiler_gnu=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 ac_cv_c_compiler_gnu=$ac_compiler_gnu
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
+printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; }
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
 if test $ac_compiler_gnu = yes; then
   GCC=yes
 else
   GCC=
 fi
-ac_test_CFLAGS=${CFLAGS+set}
+ac_test_CFLAGS=${CFLAGS+y}
 ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
+printf %s "checking whether $CC accepts -g... " >&6; }
+if test ${ac_cv_prog_cc_g+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_save_c_werror_flag=$ac_c_werror_flag
    ac_c_werror_flag=yes
    ac_cv_prog_cc_g=no
@@ -5212,57 +5871,60 @@ else
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_g=yes
-else
+else $as_nop
   CFLAGS=""
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-else
+else $as_nop
   ac_c_werror_flag=$ac_save_c_werror_flag
 	 CFLAGS="-g"
 	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
-main ()
+main (void)
 {
 
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_g=yes
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
    ac_c_werror_flag=$ac_save_c_werror_flag
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
+printf "%s\n" "$ac_cv_prog_cc_g" >&6; }
+if test $ac_test_CFLAGS; then
   CFLAGS=$ac_save_CFLAGS
 elif test $ac_cv_prog_cc_g = yes; then
   if test "$GCC" = yes; then
@@ -5277,94 +5939,144 @@ else
     CFLAGS=
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+ac_prog_cc_stdc=no
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5
+printf %s "checking for $CC option to enable C11 features... " >&6; }
+if test ${ac_cv_prog_cc_c11+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c11=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_c_conftest_c11_program
+_ACEOF
+for ac_arg in '' -std=gnu11
+do
+  CC="$ac_save_CC $ac_arg"
+  if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_cv_prog_cc_c11=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+  test "x$ac_cv_prog_cc_c11" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+fi
+
+if test "x$ac_cv_prog_cc_c11" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c11" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5
+printf "%s\n" "$ac_cv_prog_cc_c11" >&6; }
+     CC="$CC $ac_cv_prog_cc_c11"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11
+  ac_prog_cc_stdc=c11
+fi
+fi
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5
+printf %s "checking for $CC option to enable C99 features... " >&6; }
+if test ${ac_cv_prog_cc_c99+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c99=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_c_conftest_c99_program
+_ACEOF
+for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99=
+do
+  CC="$ac_save_CC $ac_arg"
+  if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_cv_prog_cc_c99=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+  test "x$ac_cv_prog_cc_c99" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+fi
+
+if test "x$ac_cv_prog_cc_c99" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c99" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5
+printf "%s\n" "$ac_cv_prog_cc_c99" >&6; }
+     CC="$CC $ac_cv_prog_cc_c99"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99
+  ac_prog_cc_stdc=c99
+fi
+fi
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5
+printf %s "checking for $CC option to enable C89 features... " >&6; }
+if test ${ac_cv_prog_cc_c89+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_cv_prog_cc_c89=no
 ac_save_CC=$CC
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-struct stat;
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
-   inside strings and character constants.  */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-  ;
-  return 0;
-}
+$ac_c_conftest_c89_program
 _ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-	-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
 do
   CC="$ac_save_CC $ac_arg"
-  if ac_fn_c_try_compile "$LINENO"; then :
+  if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_c89=$ac_arg
 fi
-rm -f core conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext conftest.beam
   test "x$ac_cv_prog_cc_c89" != "xno" && break
 done
 rm -f conftest.$ac_ext
 CC=$ac_save_CC
-
 fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
-  x)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
-  xno)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
-  *)
-    CC="$CC $ac_cv_prog_cc_c89"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
 
+if test "x$ac_cv_prog_cc_c89" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c89" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
+printf "%s\n" "$ac_cv_prog_cc_c89" >&6; }
+     CC="$CC $ac_cv_prog_cc_c89"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89
+  ac_prog_cc_stdc=c89
+fi
 fi
 
 ac_ext=c
@@ -5373,13 +6085,14 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+printf %s "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
 set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+ac_make=`printf "%s\n" "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if eval test \${ac_cv_prog_make_${ac_make}_set+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat >conftest.make <<\_ACEOF
 SHELL = /bin/sh
 all:
@@ -5395,16 +6108,17 @@ esac
 rm -f conftest.make
 fi
 if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
   SET_MAKE=
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   SET_MAKE="MAKE=${MAKE-make}"
 fi
 
-# Find a good install program.  We prefer a C program (faster),
+
+  # Find a good install program.  We prefer a C program (faster),
 # so one script is as good as another.  But avoid the broken or
 # incompatible versions:
 # SysV /etc/install, /usr/sbin/install
@@ -5418,20 +6132,25 @@ fi
 # OS/2's system install, which has a completely different semantic
 # ./install, which can be erroneously created by make from ./install.sh.
 # Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
+printf %s "checking for a BSD-compatible install... " >&6; }
 if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+if test ${ac_cv_path_install+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in #((
-  ./ | .// | /[cC]/* | \
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    # Account for fact that we put trailing slashes in our PATH walk.
+case $as_dir in #((
+  ./ | /[cC]/* | \
   /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
   ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
   /usr/ucb/* ) ;;
@@ -5441,13 +6160,13 @@ case $as_dir/ in #((
     # by default.
     for ac_prog in ginstall scoinst install; do
       for ac_exec_ext in '' $ac_executable_extensions; do
-	if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+	if as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext"; then
 	  if test $ac_prog = install &&
-	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+	    grep dspmsg "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
 	    # AIX install.  It has an incompatible calling convention.
 	    :
 	  elif test $ac_prog = install &&
-	    grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+	    grep pwplus "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
 	    # program-specific install script used by HP pwplus--don't use.
 	    :
 	  else
@@ -5455,12 +6174,12 @@ case $as_dir/ in #((
 	    echo one > conftest.one
 	    echo two > conftest.two
 	    mkdir conftest.dir
-	    if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
+	    if "$as_dir$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir/" &&
 	      test -s conftest.one && test -s conftest.two &&
 	      test -s conftest.dir/conftest.one &&
 	      test -s conftest.dir/conftest.two
 	    then
-	      ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+	      ac_cv_path_install="$as_dir$ac_prog$ac_exec_ext -c"
 	      break 3
 	    fi
 	  fi
@@ -5476,7 +6195,7 @@ IFS=$as_save_IFS
 rm -rf conftest.one conftest.two conftest.dir
 
 fi
-  if test "${ac_cv_path_install+set}" = set; then
+  if test ${ac_cv_path_install+y}; then
     INSTALL=$ac_cv_path_install
   else
     # As a last resort, use the slow shell script.  Don't cache a
@@ -5486,8 +6205,8 @@ fi
     INSTALL=$ac_install_sh
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
+printf "%s\n" "$INSTALL" >&6; }
 
 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
 # It thinks the first close brace ends the variable substitution.
@@ -5499,11 +6218,12 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
 # Extract the first word of "flex", so it can be a program name with args.
 set dummy flex; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_FLEX+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_FLEX+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $FLEX in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_FLEX="$FLEX" # Let the user override the test with a path.
@@ -5513,11 +6233,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_FLEX="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_FLEX="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5529,21 +6253,22 @@ esac
 fi
 FLEX=$ac_cv_path_FLEX
 if test -n "$FLEX"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FLEX" >&5
-$as_echo "$FLEX" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $FLEX" >&5
+printf "%s\n" "$FLEX" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
 # Extract the first word of "abi-dumper", so it can be a program name with args.
 set dummy abi-dumper; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ABI_DUMPER+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ABI_DUMPER+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ABI_DUMPER in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ABI_DUMPER="$ABI_DUMPER" # Let the user override the test with a path.
@@ -5553,11 +6278,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ABI_DUMPER="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ABI_DUMPER="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5569,21 +6298,22 @@ esac
 fi
 ABI_DUMPER=$ac_cv_path_ABI_DUMPER
 if test -n "$ABI_DUMPER"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ABI_DUMPER" >&5
-$as_echo "$ABI_DUMPER" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ABI_DUMPER" >&5
+printf "%s\n" "$ABI_DUMPER" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
 # Extract the first word of "perl", so it can be a program name with args.
 set dummy perl; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PERL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PERL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PERL in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PERL="$PERL" # Let the user override the test with a path.
@@ -5593,11 +6323,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PERL="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5610,11 +6344,11 @@ esac
 fi
 PERL=$ac_cv_path_PERL
 if test -n "$PERL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5
-$as_echo "$PERL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5
+printf "%s\n" "$PERL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5624,11 +6358,12 @@ then
 fi
 # Extract the first word of "awk", so it can be a program name with args.
 set dummy awk; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_AWK+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_AWK+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $AWK in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_AWK="$AWK" # Let the user override the test with a path.
@@ -5638,11 +6373,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_AWK="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_AWK="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5655,11 +6394,11 @@ esac
 fi
 AWK=$ac_cv_path_AWK
 if test -n "$AWK"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
+printf "%s\n" "$AWK" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5672,11 +6411,12 @@ fi
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ocamlc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ocamlc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OCAMLC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OCAMLC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OCAMLC"; then
   ac_cv_prog_OCAMLC="$OCAMLC" # Let the user override the test.
 else
@@ -5684,11 +6424,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OCAMLC="${ac_tool_prefix}ocamlc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5699,11 +6443,11 @@ fi
 fi
 OCAMLC=$ac_cv_prog_OCAMLC
 if test -n "$OCAMLC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLC" >&5
-$as_echo "$OCAMLC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OCAMLC" >&5
+printf "%s\n" "$OCAMLC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5712,11 +6456,12 @@ if test -z "$ac_cv_prog_OCAMLC"; then
   ac_ct_OCAMLC=$OCAMLC
   # Extract the first word of "ocamlc", so it can be a program name with args.
 set dummy ocamlc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OCAMLC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OCAMLC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OCAMLC"; then
   ac_cv_prog_ac_ct_OCAMLC="$ac_ct_OCAMLC" # Let the user override the test.
 else
@@ -5724,11 +6469,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OCAMLC="ocamlc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5739,11 +6488,11 @@ fi
 fi
 ac_ct_OCAMLC=$ac_cv_prog_ac_ct_OCAMLC
 if test -n "$ac_ct_OCAMLC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLC" >&5
-$as_echo "$ac_ct_OCAMLC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLC" >&5
+printf "%s\n" "$ac_ct_OCAMLC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OCAMLC" = x; then
@@ -5751,8 +6500,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OCAMLC=$ac_ct_OCAMLC
@@ -5764,17 +6513,17 @@ fi
 
   if test "$OCAMLC" != "no"; then
      OCAMLVERSION=`$OCAMLC -v | sed -n -e 's|.*version* *\(.*\)$|\1|p'`
-     { $as_echo "$as_me:${as_lineno-$LINENO}: result: OCaml version is $OCAMLVERSION" >&5
-$as_echo "OCaml version is $OCAMLVERSION" >&6; }
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: OCaml version is $OCAMLVERSION" >&5
+printf "%s\n" "OCaml version is $OCAMLVERSION" >&6; }
      # If OCAMLLIB is set, use it
      if test "$OCAMLLIB" = ""; then
         OCAMLLIB=`$OCAMLC -where 2>/dev/null || $OCAMLC -v|tail -1|cut -d ' ' -f 4`
      else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: OCAMLLIB previously set; preserving it." >&5
-$as_echo "OCAMLLIB previously set; preserving it." >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: OCAMLLIB previously set; preserving it." >&5
+printf "%s\n" "OCAMLLIB previously set; preserving it." >&6; }
      fi
-     { $as_echo "$as_me:${as_lineno-$LINENO}: result: OCaml library path is $OCAMLLIB" >&5
-$as_echo "OCaml library path is $OCAMLLIB" >&6; }
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: OCaml library path is $OCAMLLIB" >&5
+printf "%s\n" "OCaml library path is $OCAMLLIB" >&6; }
 
 
 
@@ -5783,11 +6532,12 @@ $as_echo "OCaml library path is $OCAMLLIB" >&6; }
      if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ocamlopt", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ocamlopt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OCAMLOPT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OCAMLOPT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OCAMLOPT"; then
   ac_cv_prog_OCAMLOPT="$OCAMLOPT" # Let the user override the test.
 else
@@ -5795,11 +6545,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OCAMLOPT="${ac_tool_prefix}ocamlopt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5810,11 +6564,11 @@ fi
 fi
 OCAMLOPT=$ac_cv_prog_OCAMLOPT
 if test -n "$OCAMLOPT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLOPT" >&5
-$as_echo "$OCAMLOPT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OCAMLOPT" >&5
+printf "%s\n" "$OCAMLOPT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5823,11 +6577,12 @@ if test -z "$ac_cv_prog_OCAMLOPT"; then
   ac_ct_OCAMLOPT=$OCAMLOPT
   # Extract the first word of "ocamlopt", so it can be a program name with args.
 set dummy ocamlopt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OCAMLOPT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OCAMLOPT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OCAMLOPT"; then
   ac_cv_prog_ac_ct_OCAMLOPT="$ac_ct_OCAMLOPT" # Let the user override the test.
 else
@@ -5835,11 +6590,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OCAMLOPT="ocamlopt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5850,11 +6609,11 @@ fi
 fi
 ac_ct_OCAMLOPT=$ac_cv_prog_ac_ct_OCAMLOPT
 if test -n "$ac_ct_OCAMLOPT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLOPT" >&5
-$as_echo "$ac_ct_OCAMLOPT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLOPT" >&5
+printf "%s\n" "$ac_ct_OCAMLOPT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OCAMLOPT" = x; then
@@ -5862,8 +6621,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OCAMLOPT=$ac_ct_OCAMLOPT
@@ -5874,13 +6633,13 @@ fi
 
      OCAMLBEST=byte
      if test "$OCAMLOPT" = "no"; then
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find ocamlopt; bytecode compilation only." >&5
-$as_echo "$as_me: WARNING: Cannot find ocamlopt; bytecode compilation only." >&2;}
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find ocamlopt; bytecode compilation only." >&5
+printf "%s\n" "$as_me: WARNING: Cannot find ocamlopt; bytecode compilation only." >&2;}
      else
 	TMPVERSION=`$OCAMLOPT -v | sed -n -e 's|.*version* *\(.*\)$|\1|p' `
 	if test "$TMPVERSION" != "$OCAMLVERSION" ; then
-	    { $as_echo "$as_me:${as_lineno-$LINENO}: result: versions differs from ocamlc; ocamlopt discarded." >&5
-$as_echo "versions differs from ocamlc; ocamlopt discarded." >&6; }
+	    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: versions differs from ocamlc; ocamlopt discarded." >&5
+printf "%s\n" "versions differs from ocamlc; ocamlopt discarded." >&6; }
 	    OCAMLOPT=no
 	else
 	    OCAMLBEST=opt
@@ -5893,11 +6652,12 @@ $as_echo "versions differs from ocamlc; ocamlopt discarded." >&6; }
      if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ocamlc.opt", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ocamlc.opt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OCAMLCDOTOPT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OCAMLCDOTOPT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OCAMLCDOTOPT"; then
   ac_cv_prog_OCAMLCDOTOPT="$OCAMLCDOTOPT" # Let the user override the test.
 else
@@ -5905,11 +6665,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OCAMLCDOTOPT="${ac_tool_prefix}ocamlc.opt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5920,11 +6684,11 @@ fi
 fi
 OCAMLCDOTOPT=$ac_cv_prog_OCAMLCDOTOPT
 if test -n "$OCAMLCDOTOPT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLCDOTOPT" >&5
-$as_echo "$OCAMLCDOTOPT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OCAMLCDOTOPT" >&5
+printf "%s\n" "$OCAMLCDOTOPT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5933,11 +6697,12 @@ if test -z "$ac_cv_prog_OCAMLCDOTOPT"; then
   ac_ct_OCAMLCDOTOPT=$OCAMLCDOTOPT
   # Extract the first word of "ocamlc.opt", so it can be a program name with args.
 set dummy ocamlc.opt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OCAMLCDOTOPT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OCAMLCDOTOPT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OCAMLCDOTOPT"; then
   ac_cv_prog_ac_ct_OCAMLCDOTOPT="$ac_ct_OCAMLCDOTOPT" # Let the user override the test.
 else
@@ -5945,11 +6710,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OCAMLCDOTOPT="ocamlc.opt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5960,11 +6729,11 @@ fi
 fi
 ac_ct_OCAMLCDOTOPT=$ac_cv_prog_ac_ct_OCAMLCDOTOPT
 if test -n "$ac_ct_OCAMLCDOTOPT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLCDOTOPT" >&5
-$as_echo "$ac_ct_OCAMLCDOTOPT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLCDOTOPT" >&5
+printf "%s\n" "$ac_ct_OCAMLCDOTOPT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OCAMLCDOTOPT" = x; then
@@ -5972,8 +6741,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OCAMLCDOTOPT=$ac_ct_OCAMLCDOTOPT
@@ -5985,8 +6754,8 @@ fi
      if test "$OCAMLCDOTOPT" != "no"; then
 	TMPVERSION=`$OCAMLCDOTOPT -v | sed -n -e 's|.*version* *\(.*\)$|\1|p' `
 	if test "$TMPVERSION" != "$OCAMLVERSION" ; then
-	    { $as_echo "$as_me:${as_lineno-$LINENO}: result: versions differs from ocamlc; ocamlc.opt discarded." >&5
-$as_echo "versions differs from ocamlc; ocamlc.opt discarded." >&6; }
+	    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: versions differs from ocamlc; ocamlc.opt discarded." >&5
+printf "%s\n" "versions differs from ocamlc; ocamlc.opt discarded." >&6; }
 	else
 	    OCAMLC=$OCAMLCDOTOPT
 	fi
@@ -5997,11 +6766,12 @@ $as_echo "versions differs from ocamlc; ocamlc.opt discarded." >&6; }
 	if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ocamlopt.opt", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ocamlopt.opt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OCAMLOPTDOTOPT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OCAMLOPTDOTOPT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OCAMLOPTDOTOPT"; then
   ac_cv_prog_OCAMLOPTDOTOPT="$OCAMLOPTDOTOPT" # Let the user override the test.
 else
@@ -6009,11 +6779,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OCAMLOPTDOTOPT="${ac_tool_prefix}ocamlopt.opt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6024,11 +6798,11 @@ fi
 fi
 OCAMLOPTDOTOPT=$ac_cv_prog_OCAMLOPTDOTOPT
 if test -n "$OCAMLOPTDOTOPT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLOPTDOTOPT" >&5
-$as_echo "$OCAMLOPTDOTOPT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OCAMLOPTDOTOPT" >&5
+printf "%s\n" "$OCAMLOPTDOTOPT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6037,11 +6811,12 @@ if test -z "$ac_cv_prog_OCAMLOPTDOTOPT"; then
   ac_ct_OCAMLOPTDOTOPT=$OCAMLOPTDOTOPT
   # Extract the first word of "ocamlopt.opt", so it can be a program name with args.
 set dummy ocamlopt.opt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OCAMLOPTDOTOPT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OCAMLOPTDOTOPT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OCAMLOPTDOTOPT"; then
   ac_cv_prog_ac_ct_OCAMLOPTDOTOPT="$ac_ct_OCAMLOPTDOTOPT" # Let the user override the test.
 else
@@ -6049,11 +6824,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OCAMLOPTDOTOPT="ocamlopt.opt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6064,11 +6843,11 @@ fi
 fi
 ac_ct_OCAMLOPTDOTOPT=$ac_cv_prog_ac_ct_OCAMLOPTDOTOPT
 if test -n "$ac_ct_OCAMLOPTDOTOPT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLOPTDOTOPT" >&5
-$as_echo "$ac_ct_OCAMLOPTDOTOPT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLOPTDOTOPT" >&5
+printf "%s\n" "$ac_ct_OCAMLOPTDOTOPT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OCAMLOPTDOTOPT" = x; then
@@ -6076,8 +6855,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OCAMLOPTDOTOPT=$ac_ct_OCAMLOPTDOTOPT
@@ -6089,8 +6868,8 @@ fi
 	if test "$OCAMLOPTDOTOPT" != "no"; then
 	   TMPVERSION=`$OCAMLOPTDOTOPT -v | sed -n -e 's|.*version* *\(.*\)$|\1|p' `
 	   if test "$TMPVERSION" != "$OCAMLVERSION" ; then
-	      { $as_echo "$as_me:${as_lineno-$LINENO}: result: version differs from ocamlc; ocamlopt.opt discarded." >&5
-$as_echo "version differs from ocamlc; ocamlopt.opt discarded." >&6; }
+	      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: version differs from ocamlc; ocamlopt.opt discarded." >&5
+printf "%s\n" "version differs from ocamlc; ocamlopt.opt discarded." >&6; }
 	   else
 	      OCAMLOPT=$OCAMLOPTDOTOPT
 	   fi
@@ -6106,11 +6885,12 @@ $as_echo "version differs from ocamlc; ocamlopt.opt discarded." >&6; }
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ocaml", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ocaml; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OCAML+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OCAML+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OCAML"; then
   ac_cv_prog_OCAML="$OCAML" # Let the user override the test.
 else
@@ -6118,11 +6898,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OCAML="${ac_tool_prefix}ocaml"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6133,11 +6917,11 @@ fi
 fi
 OCAML=$ac_cv_prog_OCAML
 if test -n "$OCAML"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAML" >&5
-$as_echo "$OCAML" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OCAML" >&5
+printf "%s\n" "$OCAML" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6146,11 +6930,12 @@ if test -z "$ac_cv_prog_OCAML"; then
   ac_ct_OCAML=$OCAML
   # Extract the first word of "ocaml", so it can be a program name with args.
 set dummy ocaml; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OCAML+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OCAML+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OCAML"; then
   ac_cv_prog_ac_ct_OCAML="$ac_ct_OCAML" # Let the user override the test.
 else
@@ -6158,11 +6943,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OCAML="ocaml"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6173,11 +6962,11 @@ fi
 fi
 ac_ct_OCAML=$ac_cv_prog_ac_ct_OCAML
 if test -n "$ac_ct_OCAML"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAML" >&5
-$as_echo "$ac_ct_OCAML" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAML" >&5
+printf "%s\n" "$ac_ct_OCAML" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OCAML" = x; then
@@ -6185,8 +6974,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OCAML=$ac_ct_OCAML
@@ -6200,11 +6989,12 @@ fi
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ocamldep", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ocamldep; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OCAMLDEP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OCAMLDEP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OCAMLDEP"; then
   ac_cv_prog_OCAMLDEP="$OCAMLDEP" # Let the user override the test.
 else
@@ -6212,11 +7002,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OCAMLDEP="${ac_tool_prefix}ocamldep"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6227,11 +7021,11 @@ fi
 fi
 OCAMLDEP=$ac_cv_prog_OCAMLDEP
 if test -n "$OCAMLDEP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLDEP" >&5
-$as_echo "$OCAMLDEP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OCAMLDEP" >&5
+printf "%s\n" "$OCAMLDEP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6240,11 +7034,12 @@ if test -z "$ac_cv_prog_OCAMLDEP"; then
   ac_ct_OCAMLDEP=$OCAMLDEP
   # Extract the first word of "ocamldep", so it can be a program name with args.
 set dummy ocamldep; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OCAMLDEP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OCAMLDEP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OCAMLDEP"; then
   ac_cv_prog_ac_ct_OCAMLDEP="$ac_ct_OCAMLDEP" # Let the user override the test.
 else
@@ -6252,11 +7047,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OCAMLDEP="ocamldep"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6267,11 +7066,11 @@ fi
 fi
 ac_ct_OCAMLDEP=$ac_cv_prog_ac_ct_OCAMLDEP
 if test -n "$ac_ct_OCAMLDEP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLDEP" >&5
-$as_echo "$ac_ct_OCAMLDEP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLDEP" >&5
+printf "%s\n" "$ac_ct_OCAMLDEP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OCAMLDEP" = x; then
@@ -6279,8 +7078,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OCAMLDEP=$ac_ct_OCAMLDEP
@@ -6294,11 +7093,12 @@ fi
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ocamlmktop", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ocamlmktop; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OCAMLMKTOP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OCAMLMKTOP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OCAMLMKTOP"; then
   ac_cv_prog_OCAMLMKTOP="$OCAMLMKTOP" # Let the user override the test.
 else
@@ -6306,11 +7106,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OCAMLMKTOP="${ac_tool_prefix}ocamlmktop"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6321,11 +7125,11 @@ fi
 fi
 OCAMLMKTOP=$ac_cv_prog_OCAMLMKTOP
 if test -n "$OCAMLMKTOP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLMKTOP" >&5
-$as_echo "$OCAMLMKTOP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OCAMLMKTOP" >&5
+printf "%s\n" "$OCAMLMKTOP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6334,11 +7138,12 @@ if test -z "$ac_cv_prog_OCAMLMKTOP"; then
   ac_ct_OCAMLMKTOP=$OCAMLMKTOP
   # Extract the first word of "ocamlmktop", so it can be a program name with args.
 set dummy ocamlmktop; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OCAMLMKTOP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OCAMLMKTOP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OCAMLMKTOP"; then
   ac_cv_prog_ac_ct_OCAMLMKTOP="$ac_ct_OCAMLMKTOP" # Let the user override the test.
 else
@@ -6346,11 +7151,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OCAMLMKTOP="ocamlmktop"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6361,11 +7170,11 @@ fi
 fi
 ac_ct_OCAMLMKTOP=$ac_cv_prog_ac_ct_OCAMLMKTOP
 if test -n "$ac_ct_OCAMLMKTOP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLMKTOP" >&5
-$as_echo "$ac_ct_OCAMLMKTOP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLMKTOP" >&5
+printf "%s\n" "$ac_ct_OCAMLMKTOP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OCAMLMKTOP" = x; then
@@ -6373,8 +7182,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OCAMLMKTOP=$ac_ct_OCAMLMKTOP
@@ -6388,11 +7197,12 @@ fi
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ocamlmklib", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ocamlmklib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OCAMLMKLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OCAMLMKLIB+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OCAMLMKLIB"; then
   ac_cv_prog_OCAMLMKLIB="$OCAMLMKLIB" # Let the user override the test.
 else
@@ -6400,11 +7210,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OCAMLMKLIB="${ac_tool_prefix}ocamlmklib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6415,11 +7229,11 @@ fi
 fi
 OCAMLMKLIB=$ac_cv_prog_OCAMLMKLIB
 if test -n "$OCAMLMKLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLMKLIB" >&5
-$as_echo "$OCAMLMKLIB" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OCAMLMKLIB" >&5
+printf "%s\n" "$OCAMLMKLIB" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6428,11 +7242,12 @@ if test -z "$ac_cv_prog_OCAMLMKLIB"; then
   ac_ct_OCAMLMKLIB=$OCAMLMKLIB
   # Extract the first word of "ocamlmklib", so it can be a program name with args.
 set dummy ocamlmklib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OCAMLMKLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OCAMLMKLIB+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OCAMLMKLIB"; then
   ac_cv_prog_ac_ct_OCAMLMKLIB="$ac_ct_OCAMLMKLIB" # Let the user override the test.
 else
@@ -6440,11 +7255,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OCAMLMKLIB="ocamlmklib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6455,11 +7274,11 @@ fi
 fi
 ac_ct_OCAMLMKLIB=$ac_cv_prog_ac_ct_OCAMLMKLIB
 if test -n "$ac_ct_OCAMLMKLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLMKLIB" >&5
-$as_echo "$ac_ct_OCAMLMKLIB" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLMKLIB" >&5
+printf "%s\n" "$ac_ct_OCAMLMKLIB" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OCAMLMKLIB" = x; then
@@ -6467,8 +7286,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OCAMLMKLIB=$ac_ct_OCAMLMKLIB
@@ -6482,11 +7301,12 @@ fi
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ocamldoc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ocamldoc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OCAMLDOC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OCAMLDOC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OCAMLDOC"; then
   ac_cv_prog_OCAMLDOC="$OCAMLDOC" # Let the user override the test.
 else
@@ -6494,11 +7314,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OCAMLDOC="${ac_tool_prefix}ocamldoc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6509,11 +7333,11 @@ fi
 fi
 OCAMLDOC=$ac_cv_prog_OCAMLDOC
 if test -n "$OCAMLDOC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLDOC" >&5
-$as_echo "$OCAMLDOC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OCAMLDOC" >&5
+printf "%s\n" "$OCAMLDOC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6522,11 +7346,12 @@ if test -z "$ac_cv_prog_OCAMLDOC"; then
   ac_ct_OCAMLDOC=$OCAMLDOC
   # Extract the first word of "ocamldoc", so it can be a program name with args.
 set dummy ocamldoc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OCAMLDOC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OCAMLDOC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OCAMLDOC"; then
   ac_cv_prog_ac_ct_OCAMLDOC="$ac_ct_OCAMLDOC" # Let the user override the test.
 else
@@ -6534,11 +7359,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OCAMLDOC="ocamldoc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6549,11 +7378,11 @@ fi
 fi
 ac_ct_OCAMLDOC=$ac_cv_prog_ac_ct_OCAMLDOC
 if test -n "$ac_ct_OCAMLDOC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLDOC" >&5
-$as_echo "$ac_ct_OCAMLDOC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLDOC" >&5
+printf "%s\n" "$ac_ct_OCAMLDOC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OCAMLDOC" = x; then
@@ -6561,8 +7390,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OCAMLDOC=$ac_ct_OCAMLDOC
@@ -6576,11 +7405,12 @@ fi
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ocamlbuild", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ocamlbuild; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OCAMLBUILD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OCAMLBUILD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OCAMLBUILD"; then
   ac_cv_prog_OCAMLBUILD="$OCAMLBUILD" # Let the user override the test.
 else
@@ -6588,11 +7418,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OCAMLBUILD="${ac_tool_prefix}ocamlbuild"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6603,11 +7437,11 @@ fi
 fi
 OCAMLBUILD=$ac_cv_prog_OCAMLBUILD
 if test -n "$OCAMLBUILD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLBUILD" >&5
-$as_echo "$OCAMLBUILD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OCAMLBUILD" >&5
+printf "%s\n" "$OCAMLBUILD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6616,11 +7450,12 @@ if test -z "$ac_cv_prog_OCAMLBUILD"; then
   ac_ct_OCAMLBUILD=$OCAMLBUILD
   # Extract the first word of "ocamlbuild", so it can be a program name with args.
 set dummy ocamlbuild; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OCAMLBUILD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OCAMLBUILD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OCAMLBUILD"; then
   ac_cv_prog_ac_ct_OCAMLBUILD="$ac_ct_OCAMLBUILD" # Let the user override the test.
 else
@@ -6628,11 +7463,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OCAMLBUILD="ocamlbuild"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6643,11 +7482,11 @@ fi
 fi
 ac_ct_OCAMLBUILD=$ac_cv_prog_ac_ct_OCAMLBUILD
 if test -n "$ac_ct_OCAMLBUILD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLBUILD" >&5
-$as_echo "$ac_ct_OCAMLBUILD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLBUILD" >&5
+printf "%s\n" "$ac_ct_OCAMLBUILD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OCAMLBUILD" = x; then
@@ -6655,8 +7494,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OCAMLBUILD=$ac_ct_OCAMLBUILD
@@ -6671,11 +7510,12 @@ fi
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ocamlfind", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ocamlfind; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OCAMLFIND+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OCAMLFIND+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OCAMLFIND"; then
   ac_cv_prog_OCAMLFIND="$OCAMLFIND" # Let the user override the test.
 else
@@ -6683,11 +7523,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OCAMLFIND="${ac_tool_prefix}ocamlfind"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6698,11 +7542,11 @@ fi
 fi
 OCAMLFIND=$ac_cv_prog_OCAMLFIND
 if test -n "$OCAMLFIND"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCAMLFIND" >&5
-$as_echo "$OCAMLFIND" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OCAMLFIND" >&5
+printf "%s\n" "$OCAMLFIND" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6711,11 +7555,12 @@ if test -z "$ac_cv_prog_OCAMLFIND"; then
   ac_ct_OCAMLFIND=$OCAMLFIND
   # Extract the first word of "ocamlfind", so it can be a program name with args.
 set dummy ocamlfind; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OCAMLFIND+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OCAMLFIND+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OCAMLFIND"; then
   ac_cv_prog_ac_ct_OCAMLFIND="$ac_ct_OCAMLFIND" # Let the user override the test.
 else
@@ -6723,11 +7568,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OCAMLFIND="ocamlfind"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6738,11 +7587,11 @@ fi
 fi
 ac_ct_OCAMLFIND=$ac_cv_prog_ac_ct_OCAMLFIND
 if test -n "$ac_ct_OCAMLFIND"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLFIND" >&5
-$as_echo "$ac_ct_OCAMLFIND" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OCAMLFIND" >&5
+printf "%s\n" "$ac_ct_OCAMLFIND" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OCAMLFIND" = x; then
@@ -6750,8 +7599,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OCAMLFIND=$ac_ct_OCAMLFIND
@@ -6767,11 +7616,12 @@ for ac_prog in gawk mawk nawk awk
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AWK+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AWK+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$AWK"; then
   ac_cv_prog_AWK="$AWK" # Let the user override the test.
 else
@@ -6779,11 +7629,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_AWK="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6794,28 +7648,31 @@ fi
 fi
 AWK=$ac_cv_prog_AWK
 if test -n "$AWK"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
+printf "%s\n" "$AWK" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
   test -n "$AWK" && break
 done
 
-if test "x$ocamltools" = "xy"; then :
+if test "x$ocamltools" = "xy"
+then :
 
-    if test "x$OCAMLOPT" = "xno" || test "x$OCAMLFIND" = "xno"; then :
+    if test "x$OCAMLOPT" = "xno" || test "x$OCAMLFIND" = "xno"
+then :
 
-        if test "x$enable_ocamltools" = "xyes"; then :
+        if test "x$enable_ocamltools" = "xyes"
+then :
 
             as_fn_error $? "Ocaml tools enabled, but missing ocamlopt or ocamlfind" "$LINENO" 5
 fi
         ocamltools="n"
 
-else
+else $as_nop
 
 
 
@@ -6850,7 +7707,8 @@ x$ax_compare_version_B" | sed 's/^ *//' | sort -r | sed "s/x${ax_compare_version
 
     if test "$ax_compare_version" = "true" ; then
 
-            if test "x$enable_ocamltools" = "xyes"; then :
+            if test "x$enable_ocamltools" = "xyes"
+then :
 
                 as_fn_error $? "Your version of OCaml: $OCAMLVERSION is not supported" "$LINENO" 5
 fi
@@ -6863,17 +7721,19 @@ fi
 
 fi
 
-if test "x$golang" = "xy"; then :
+if test "x$golang" = "xy"
+then :
 
 
         if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}go", so it can be a program name with args.
 set dummy ${ac_tool_prefix}go; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_GO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_GO+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$GO"; then
   ac_cv_prog_GO="$GO" # Let the user override the test.
 else
@@ -6881,11 +7741,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_GO="${ac_tool_prefix}go"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6896,11 +7760,11 @@ fi
 fi
 GO=$ac_cv_prog_GO
 if test -n "$GO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GO" >&5
-$as_echo "$GO" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GO" >&5
+printf "%s\n" "$GO" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -6909,11 +7773,12 @@ if test -z "$ac_cv_prog_GO"; then
   ac_ct_GO=$GO
   # Extract the first word of "go", so it can be a program name with args.
 set dummy go; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_GO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_GO+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_GO"; then
   ac_cv_prog_ac_ct_GO="$ac_ct_GO" # Let the user override the test.
 else
@@ -6921,11 +7786,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_GO="go"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -6936,11 +7805,11 @@ fi
 fi
 ac_ct_GO=$ac_cv_prog_ac_ct_GO
 if test -n "$ac_ct_GO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_GO" >&5
-$as_echo "$ac_ct_GO" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_GO" >&5
+printf "%s\n" "$ac_ct_GO" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_GO" = x; then
@@ -6948,8 +7817,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     GO=$ac_ct_GO
@@ -6963,16 +7832,18 @@ fi
         GOVERSION=`$GO version | cut -d " " -f 3 | sed "s/go//"`
     fi
 
-    if test "x$GO" = "xno"; then :
+    if test "x$GO" = "xno"
+then :
 
-        if test "x$enable_golang" =  "xyes"; then :
+        if test "x$enable_golang" =  "xyes"
+then :
 
             as_fn_error $? "Go tools enabled, but missing go compiler" "$LINENO" 5
 
 fi
         golang="n"
 
-else
+else $as_nop
 
 
 
@@ -7007,7 +7878,8 @@ x$ax_compare_version_B" | sed 's/^ *//' | sort -r | sed "s/x${ax_compare_version
 
     if test "$ax_compare_version" = "true" ; then
 
-            if test "x$enable_golang" = "xyes"; then :
+            if test "x$enable_golang" = "xyes"
+then :
 
                 as_fn_error $? "\"Your version of go: $GOVERSION is not supported\"" "$LINENO" 5
 
@@ -7030,24 +7902,29 @@ fi
 
 
 
-if test "x$XENSTORE" = "x"; then :
+if test "x$XENSTORE" = "x"
+then :
 
 
 # Check whether --with-xenstored was given.
-if test "${with_xenstored+set}" = set; then :
+if test ${with_xenstored+y}
+then :
   withval=$with_xenstored;
-		if test "x$withval" = "xxenstored"; then :
+		if test "x$withval" = "xxenstored"
+then :
 
 			xenstore=$withval
 			xenstored=$sbindir/xenstored
 
 fi
-		if test "x$withval" = "xoxenstored"; then :
+		if test "x$withval" = "xoxenstored"
+then :
 
 			xenstore=$withval
 			xenstored=$sbindir/oxenstored
 
-	if test "$ocamltools" = "n"; then :
+	if test "$ocamltools" = "n"
+then :
 
 		as_fn_error $? "Missing ocaml dependencies for oxenstored, try installing ocaml ocaml-compiler-libs ocaml-runtime ocaml-findlib" "$LINENO" 5
 
@@ -7055,18 +7932,20 @@ fi
 
 
 fi
-		if test "x$withval" != "xoxenstored" && test "x$withval" != "xxenstored"; then :
+		if test "x$withval" != "xoxenstored" && test "x$withval" != "xxenstored"
+then :
 
 			as_fn_error $? "Unsupported xenstored specified, supported types: oxenstored xenstored" "$LINENO" 5
 
 fi
 
-else
+else $as_nop
 
 
 	xenstore="oxenstored"
 	xenstored=$sbindir/oxenstored
-	if test "$ocamltools" = "n"; then :
+	if test "$ocamltools" = "n"
+then :
 
 		xenstore="xenstored"
 		xenstored=$sbindir/xenstored
@@ -7082,7 +7961,8 @@ fi
 
 	XENSTORE=$xenstore
 
-	if test "x$XENSTORED" = "x"; then :
+	if test "x$XENSTORED" = "x"
+then :
 
 		XENSTORED=$xenstored
 
@@ -7090,17 +7970,19 @@ fi
 
 
 
-if test "x$xsmpolicy" = "xy"; then :
+if test "x$xsmpolicy" = "xy"
+then :
 
       # check for a checkpolicy binary with support for -t xen
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}checkpolicy", so it can be a program name with args.
 set dummy ${ac_tool_prefix}checkpolicy; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CHECKPOLICY+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CHECKPOLICY+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CHECKPOLICY"; then
   ac_cv_prog_CHECKPOLICY="$CHECKPOLICY" # Let the user override the test.
 else
@@ -7108,11 +7990,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CHECKPOLICY="${ac_tool_prefix}checkpolicy"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7123,11 +8009,11 @@ fi
 fi
 CHECKPOLICY=$ac_cv_prog_CHECKPOLICY
 if test -n "$CHECKPOLICY"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CHECKPOLICY" >&5
-$as_echo "$CHECKPOLICY" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CHECKPOLICY" >&5
+printf "%s\n" "$CHECKPOLICY" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7136,11 +8022,12 @@ if test -z "$ac_cv_prog_CHECKPOLICY"; then
   ac_ct_CHECKPOLICY=$CHECKPOLICY
   # Extract the first word of "checkpolicy", so it can be a program name with args.
 set dummy checkpolicy; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CHECKPOLICY+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CHECKPOLICY+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_CHECKPOLICY"; then
   ac_cv_prog_ac_ct_CHECKPOLICY="$ac_ct_CHECKPOLICY" # Let the user override the test.
 else
@@ -7148,11 +8035,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CHECKPOLICY="checkpolicy"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7163,11 +8054,11 @@ fi
 fi
 ac_ct_CHECKPOLICY=$ac_cv_prog_ac_ct_CHECKPOLICY
 if test -n "$ac_ct_CHECKPOLICY"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CHECKPOLICY" >&5
-$as_echo "$ac_ct_CHECKPOLICY" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CHECKPOLICY" >&5
+printf "%s\n" "$ac_ct_CHECKPOLICY" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_CHECKPOLICY" = x; then
@@ -7175,8 +8066,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     CHECKPOLICY=$ac_ct_CHECKPOLICY
@@ -7193,9 +8084,11 @@ fi
      fi
   fi
 
-    if test "x$CHECKPOLICY" = "xno"; then :
+    if test "x$CHECKPOLICY" = "xno"
+then :
 
-        if test "x$enable_xsmpolicy" = "xyes"; then :
+        if test "x$enable_xsmpolicy" = "xyes"
+then :
 
             as_fn_error $? "XSM policy compilation enabled, but unable to find checkpolicy" "$LINENO" 5
 fi
@@ -7208,11 +8101,12 @@ case "$host_os" in
   freebsd*) ;;
   *) # Extract the first word of "bash", so it can be a program name with args.
 set dummy bash; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_BASH+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_BASH+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $BASH in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_BASH="$BASH" # Let the user override the test with a path.
@@ -7222,11 +8116,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_BASH="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_BASH="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7239,11 +8137,11 @@ esac
 fi
 BASH=$ac_cv_path_BASH
 if test -n "$BASH"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $BASH" >&5
-$as_echo "$BASH" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $BASH" >&5
+printf "%s\n" "$BASH" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7252,16 +8150,18 @@ then
     as_fn_error $? "Unable to find bash, please install bash" "$LINENO" 5
 fi;;
 esac
-if test -z "$PYTHON"; then :
+if test -z "$PYTHON"
+then :
   for ac_prog in python3 python python2
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_PYTHON+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_PYTHON+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$PYTHON"; then
   ac_cv_prog_PYTHON="$PYTHON" # Let the user override the test.
 else
@@ -7269,11 +8169,15 @@ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_PYTHON="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7284,11 +8188,11 @@ fi
 fi
 PYTHON=$ac_cv_prog_PYTHON
 if test -n "$PYTHON"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
-$as_echo "$PYTHON" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
+printf "%s\n" "$PYTHON" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7297,19 +8201,22 @@ done
 test -n "$PYTHON" || PYTHON="err"
 
 fi
-if test "$PYTHON" = "err"; then :
+if test "$PYTHON" = "err"
+then :
   as_fn_error $? "No python interpreter found" "$LINENO" 5
 fi
-if echo "$PYTHON" | grep -q "^/"; then :
+if echo "$PYTHON" | grep -q "^/"
+then :
 
-else
+else $as_nop
   # Extract the first word of "$PYTHON", so it can be a program name with args.
 set dummy $PYTHON; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PYTHON+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PYTHON+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PYTHON in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
@@ -7319,11 +8226,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PYTHON="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7335,11 +8246,11 @@ esac
 fi
 PYTHON=$ac_cv_path_PYTHON
 if test -n "$PYTHON"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
-$as_echo "$PYTHON" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
+printf "%s\n" "$PYTHON" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7349,11 +8260,12 @@ PYTHON=`basename $PYTHONPATH`
 
 # Extract the first word of "$PYTHON", so it can be a program name with args.
 set dummy $PYTHON; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PYTHONPATH+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PYTHONPATH+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PYTHONPATH in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PYTHONPATH="$PYTHONPATH" # Let the user override the test with a path.
@@ -7363,11 +8275,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PYTHONPATH="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PYTHONPATH="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7380,11 +8296,11 @@ esac
 fi
 PYTHONPATH=$ac_cv_path_PYTHONPATH
 if test -n "$PYTHONPATH"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHONPATH" >&5
-$as_echo "$PYTHONPATH" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PYTHONPATH" >&5
+printf "%s\n" "$PYTHONPATH" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7392,418 +8308,51 @@ if test x"${PYTHONPATH}" = x"no"
 then
     as_fn_error $? "Unable to find $PYTHON, please install $PYTHON" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for python version >= 2.6 " >&5
-$as_echo_n "checking for python version >= 2.6 ... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for python version >= 2.6 " >&5
+printf %s "checking for python version >= 2.6 ... " >&6; }
 `$PYTHON -c 'import sys; sys.exit(eval("sys.version_info < (2, 6)"))'`
 if test "$?" != "0"
 then
     python_version=`$PYTHON -V 2>&1`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     as_fn_error $? "$python_version is too old, minimum required version is 2.6" "$LINENO" 5
 else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
-  CPP=
-fi
-if test -z "$CPP"; then
-  if ${ac_cv_prog_CPP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-		     Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-  break
-fi
-
-    done
-    ac_cv_prog_CPP=$CPP
-
-fi
-  CPP=$ac_cv_prog_CPP
-else
-  ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-		     Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
-  # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  # Broken: success on invalid input.
-continue
-else
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -z "$GREP"; then
-  ac_path_GREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in grep ggrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-      as_fn_executable_p "$ac_path_GREP" || continue
-# Check for GNU ac_path_GREP and select it if it is found.
-  # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'GREP' >> "conftest.nl"
-    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_GREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_GREP="$ac_path_GREP"
-      ac_path_GREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_GREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_GREP"; then
-    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_GREP=$GREP
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
-   then ac_cv_path_EGREP="$GREP -E"
-   else
-     if test -z "$EGREP"; then
-  ac_path_EGREP_found=false
-  # Loop through the user's path and test for each of PROGNAME-LIST
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in egrep; do
-    for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-      as_fn_executable_p "$ac_path_EGREP" || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
-  # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
-  ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
-  ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
-  while :
-  do
-    cat "conftest.in" "conftest.in" >"conftest.tmp"
-    mv "conftest.tmp" "conftest.in"
-    cp "conftest.in" "conftest.nl"
-    $as_echo 'EGREP' >> "conftest.nl"
-    "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
-    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
-    as_fn_arith $ac_count + 1 && ac_count=$as_val
-    if test $ac_count -gt ${ac_path_EGREP_max-0}; then
-      # Best one so far, save it but keep looking for a better one
-      ac_cv_path_EGREP="$ac_path_EGREP"
-      ac_path_EGREP_max=$ac_count
-    fi
-    # 10*(2^10) chars as input seems more than enough
-    test $ac_count -gt 10 && break
-  done
-  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
-      $ac_path_EGREP_found && break 3
-    done
-  done
-  done
-IFS=$as_save_IFS
-  if test -z "$ac_cv_path_EGREP"; then
-    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
-  fi
-else
-  ac_cv_path_EGREP=$EGREP
-fi
-
-   fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 fi
-rm -f conftest*
 
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
+ac_header= ac_cache=
+for ac_item in $ac_header_c_list
+do
+  if test $ac_cache; then
+    ac_fn_c_check_header_compile "$LINENO" $ac_header ac_cv_header_$ac_cache "$ac_includes_default"
+    if eval test \"x\$ac_cv_header_$ac_cache\" = xyes; then
+      printf "%s\n" "#define $ac_item 1" >> confdefs.h
+    fi
+    ac_header= ac_cache=
+  elif test $ac_header; then
+    ac_cache=$ac_item
+  else
+    ac_header=$ac_item
+  fi
+done
 
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
 
-fi
 
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-		   (('a' <= (c) && (c) <= 'i') \
-		     || ('j' <= (c) && (c) <= 'r') \
-		     || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
 
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-	|| toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
 
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
 
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
 
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
 
-fi
+if test $ac_cv_header_stdlib_h = yes && test $ac_cv_header_string_h = yes
+then :
 
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-		  inttypes.h stdint.h unistd.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h
 
 fi
-
-done
-
-
-if test "$cross_compiling" != yes; then :
+if test "$cross_compiling" != yes
+then :
 
 
 ac_previous_cppflags=$CPPFLAGS
@@ -7811,11 +8360,12 @@ ac_previous_ldflags=$LDFLAGS
 ac_previous_libs=$LIBS
 # Extract the first word of "$PYTHON-config", so it can be a program name with args.
 set dummy $PYTHON-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_pyconfig+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_pyconfig+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $pyconfig in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_pyconfig="$pyconfig" # Let the user override the test with a path.
@@ -7825,11 +8375,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_pyconfig="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_pyconfig="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7842,33 +8396,34 @@ esac
 fi
 pyconfig=$ac_cv_path_pyconfig
 if test -n "$pyconfig"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $pyconfig" >&5
-$as_echo "$pyconfig" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $pyconfig" >&5
+printf "%s\n" "$pyconfig" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
-if test x"$pyconfig" = x"no"; then :
+if test x"$pyconfig" = x"no"
+then :
 
-        CPPFLAGS="$CFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print("-I" + distutils.sysconfig.get_config_var("INCLUDEPY"))'`"
-    CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("CFLAGS"))'`"
-    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print("-L" + distutils.sysconfig.get_python_lib(plat_specific=1,\
+        CPPFLAGS="$CFLAGS `$PYTHON -c 'import sysconfig; \
+        print("-I" + sysconfig.get_config_var("INCLUDEPY"))'`"
+    CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("CFLAGS"))'`"
+    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
+        print("-L" + sysconfig.get_python_lib(plat_specific=1,\
         standard_lib=1) + "/config")'`"
-    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("LINKFORSHARED"))'`"
-    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("LDFLAGS"))'`"
-    LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("LIBS"))'`"
-    LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("SYSLIBS"))'`"
+    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("LINKFORSHARED"))'`"
+    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("LDFLAGS"))'`"
+    LIBS="$LIBS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("LIBS"))'`"
+    LIBS="$LIBS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("SYSLIBS"))'`"
 
-else
+else $as_nop
 
         CPPFLAGS="$CFLAGS `$PYTHON-config --cflags`"
             python_devel_embed=""
@@ -7881,18 +8436,19 @@ else
 
 fi
 
-ac_fn_c_check_header_mongrel "$LINENO" "Python.h" "ac_cv_header_Python_h" "$ac_includes_default"
-if test "x$ac_cv_header_Python_h" = xyes; then :
+ac_fn_c_check_header_compile "$LINENO" "Python.h" "ac_cv_header_Python_h" "$ac_includes_default"
+if test "x$ac_cv_header_Python_h" = xyes
+then :
 
-else
+else $as_nop
   as_fn_error $? "Unable to find Python development headers" "$LINENO" 5
 fi
 
-
 ac_fn_c_check_func "$LINENO" "PyArg_ParseTuple" "ac_cv_func_PyArg_ParseTuple"
-if test "x$ac_cv_func_PyArg_ParseTuple" = xyes; then :
+if test "x$ac_cv_func_PyArg_ParseTuple" = xyes
+then :
 
-else
+else $as_nop
   as_fn_error $? "Unable to find a suitable python development library" "$LINENO" 5
 fi
 
@@ -7902,11 +8458,12 @@ LDFLAGS=$ac_previous_ldflags
 LIBS=$ac_previous_libs
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Python setup.py brokenly enables -D_FORTIFY_SOURCE" >&5
-$as_echo_n "checking whether Python setup.py brokenly enables -D_FORTIFY_SOURCE... " >&6; }
-if ${ax_cv_python_fortify+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether Python setup.py brokenly enables -D_FORTIFY_SOURCE" >&5
+printf %s "checking whether Python setup.py brokenly enables -D_FORTIFY_SOURCE... " >&6; }
+if test ${ax_cv_python_fortify+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
         ax_cv_python_fortify=no
         for arg in $($PYTHON-config --cflags); do
@@ -7920,14 +8477,15 @@ else
         done
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_python_fortify" >&5
-$as_echo "$ax_cv_python_fortify" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_python_fortify" >&5
+printf "%s\n" "$ax_cv_python_fortify" >&6; }
 
-    if test x$ax_cv_python_fortify = xyes; then :
+    if test x$ax_cv_python_fortify = xyes
+then :
 
         PY_NOOPT_CFLAGS=-O1
 
-else
+else $as_nop
 
         PY_NOOPT_CFLAGS=''
 
@@ -7944,11 +8502,12 @@ case "$host_cpu" in
 i[3456]86|x86_64|aarch64)
     # Extract the first word of "iasl", so it can be a program name with args.
 set dummy iasl; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_IASL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_IASL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $IASL in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_IASL="$IASL" # Let the user override the test with a path.
@@ -7958,11 +8517,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_IASL="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_IASL="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7975,11 +8538,11 @@ esac
 fi
 IASL=$ac_cv_path_IASL
 if test -n "$IASL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $IASL" >&5
-$as_echo "$IASL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $IASL" >&5
+printf "%s\n" "$IASL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7990,14 +8553,16 @@ fi
     ;;
 esac
 
-ac_fn_c_check_header_mongrel "$LINENO" "uuid/uuid.h" "ac_cv_header_uuid_uuid_h" "$ac_includes_default"
-if test "x$ac_cv_header_uuid_uuid_h" = xyes; then :
+ac_fn_c_check_header_compile "$LINENO" "uuid/uuid.h" "ac_cv_header_uuid_uuid_h" "$ac_includes_default"
+if test "x$ac_cv_header_uuid_uuid_h" = xyes
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for uuid_clear in -luuid" >&5
-$as_echo_n "checking for uuid_clear in -luuid... " >&6; }
-if ${ac_cv_lib_uuid_uuid_clear+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for uuid_clear in -luuid" >&5
+printf %s "checking for uuid_clear in -luuid... " >&6; }
+if test ${ac_cv_lib_uuid_uuid_clear+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-luuid  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8006,58 +8571,59 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char uuid_clear ();
 int
-main ()
+main (void)
 {
 return uuid_clear ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_uuid_uuid_clear=yes
-else
+else $as_nop
   ac_cv_lib_uuid_uuid_clear=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_uuid_uuid_clear" >&5
-$as_echo "$ac_cv_lib_uuid_uuid_clear" >&6; }
-if test "x$ac_cv_lib_uuid_uuid_clear" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_uuid_uuid_clear" >&5
+printf "%s\n" "$ac_cv_lib_uuid_uuid_clear" >&6; }
+if test "x$ac_cv_lib_uuid_uuid_clear" = xyes
+then :
   libuuid="y"
 fi
 
 
 fi
 
-
-ac_fn_c_check_header_mongrel "$LINENO" "uuid.h" "ac_cv_header_uuid_h" "$ac_includes_default"
-if test "x$ac_cv_header_uuid_h" = xyes; then :
+ac_fn_c_check_header_compile "$LINENO" "uuid.h" "ac_cv_header_uuid_h" "$ac_includes_default"
+if test "x$ac_cv_header_uuid_h" = xyes
+then :
   libuuid="y"
 fi
 
-
-if test "$libuuid" != "y"; then :
+if test "$libuuid" != "y"
+then :
 
     as_fn_error $? "cannot find a valid uuid library" "$LINENO" 5
 
 fi
 
 
-ac_fn_c_check_header_mongrel "$LINENO" "curses.h" "ac_cv_header_curses_h" "$ac_includes_default"
-if test "x$ac_cv_header_curses_h" = xyes; then :
+ac_fn_c_check_header_compile "$LINENO" "curses.h" "ac_cv_header_curses_h" "$ac_includes_default"
+if test "x$ac_cv_header_curses_h" = xyes
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for clear in -lcurses" >&5
-$as_echo_n "checking for clear in -lcurses... " >&6; }
-if ${ac_cv_lib_curses_clear+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for clear in -lcurses" >&5
+printf %s "checking for clear in -lcurses... " >&6; }
+if test ${ac_cv_lib_curses_clear+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lcurses  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8066,49 +8632,49 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char clear ();
 int
-main ()
+main (void)
 {
 return clear ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_curses_clear=yes
-else
+else $as_nop
   ac_cv_lib_curses_clear=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_curses_clear" >&5
-$as_echo "$ac_cv_lib_curses_clear" >&6; }
-if test "x$ac_cv_lib_curses_clear" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_curses_clear" >&5
+printf "%s\n" "$ac_cv_lib_curses_clear" >&6; }
+if test "x$ac_cv_lib_curses_clear" = xyes
+then :
   curses="y"
-else
+else $as_nop
   curses="n"
 fi
 
 
-else
+else $as_nop
   curses="n"
 fi
 
+ac_fn_c_check_header_compile "$LINENO" "ncurses.h" "ac_cv_header_ncurses_h" "$ac_includes_default"
+if test "x$ac_cv_header_ncurses_h" = xyes
+then :
 
-ac_fn_c_check_header_mongrel "$LINENO" "ncurses.h" "ac_cv_header_ncurses_h" "$ac_includes_default"
-if test "x$ac_cv_header_ncurses_h" = xyes; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for clear in -lncurses" >&5
-$as_echo_n "checking for clear in -lncurses... " >&6; }
-if ${ac_cv_lib_ncurses_clear+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for clear in -lncurses" >&5
+printf %s "checking for clear in -lncurses... " >&6; }
+if test ${ac_cv_lib_ncurses_clear+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lncurses  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8117,71 +8683,73 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char clear ();
 int
-main ()
+main (void)
 {
 return clear ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_ncurses_clear=yes
-else
+else $as_nop
   ac_cv_lib_ncurses_clear=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ncurses_clear" >&5
-$as_echo "$ac_cv_lib_ncurses_clear" >&6; }
-if test "x$ac_cv_lib_ncurses_clear" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ncurses_clear" >&5
+printf "%s\n" "$ac_cv_lib_ncurses_clear" >&6; }
+if test "x$ac_cv_lib_ncurses_clear" = xyes
+then :
   ncurses="y"
-else
+else $as_nop
   ncurses="n"
 fi
 
 
-else
+else $as_nop
   ncurses="n"
 fi
 
-
-if test "$curses" = "n" && test "$ncurses" = "n"; then :
+if test "$curses" = "n" && test "$ncurses" = "n"
+then :
 
     as_fn_error $? "Unable to find a suitable curses library" "$LINENO" 5
 
 fi
 # Prefer ncurses over curses if both are present
-if test "$ncurses" = "y"; then :
+if test "$ncurses" = "y"
+then :
 
     CURSES_LIBS="-lncurses"
 
-$as_echo "#define INCLUDE_CURSES_H <ncurses.h>" >>confdefs.h
+printf "%s\n" "#define INCLUDE_CURSES_H <ncurses.h>" >>confdefs.h
 
 
-else
+else $as_nop
 
     CURSES_LIBS="-lcurses"
 
-$as_echo "#define INCLUDE_CURSES_H <curses.h>" >>confdefs.h
+printf "%s\n" "#define INCLUDE_CURSES_H <curses.h>" >>confdefs.h
 
 
 fi
 
 
-if test "$ncurses" = "y"; then :
+if test "$ncurses" = "y"
+then :
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for define_key in -ltinfo" >&5
-$as_echo_n "checking for define_key in -ltinfo... " >&6; }
-if ${ac_cv_lib_tinfo_define_key+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for define_key in -ltinfo" >&5
+printf %s "checking for define_key in -ltinfo... " >&6; }
+if test ${ac_cv_lib_tinfo_define_key+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ltinfo  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8190,30 +8758,29 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char define_key ();
 int
-main ()
+main (void)
 {
 return define_key ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_tinfo_define_key=yes
-else
+else $as_nop
   ac_cv_lib_tinfo_define_key=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_tinfo_define_key" >&5
-$as_echo "$ac_cv_lib_tinfo_define_key" >&6; }
-if test "x$ac_cv_lib_tinfo_define_key" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_tinfo_define_key" >&5
+printf "%s\n" "$ac_cv_lib_tinfo_define_key" >&6; }
+if test "x$ac_cv_lib_tinfo_define_key" = xyes
+then :
   TINFO_LIBS=-ltinfo
 fi
 
@@ -8232,11 +8799,12 @@ if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
 	if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKG_CONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKG_CONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKG_CONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
@@ -8246,11 +8814,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8262,11 +8834,11 @@ esac
 fi
 PKG_CONFIG=$ac_cv_path_PKG_CONFIG
 if test -n "$PKG_CONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
-$as_echo "$PKG_CONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
+printf "%s\n" "$PKG_CONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8275,11 +8847,12 @@ if test -z "$ac_cv_path_PKG_CONFIG"; then
   ac_pt_PKG_CONFIG=$PKG_CONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKG_CONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKG_CONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
@@ -8289,11 +8862,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8305,11 +8882,11 @@ esac
 fi
 ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
 if test -n "$ac_pt_PKG_CONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
-$as_echo "$ac_pt_PKG_CONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
+printf "%s\n" "$ac_pt_PKG_CONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKG_CONFIG" = x; then
@@ -8317,8 +8894,8 @@ fi
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKG_CONFIG=$ac_pt_PKG_CONFIG
@@ -8330,32 +8907,33 @@ fi
 fi
 if test -n "$PKG_CONFIG"; then
 	_pkg_min_version=0.9.0
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5
-$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; }
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5
+printf %s "checking pkg-config is at least version $_pkg_min_version... " >&6; }
 	if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
-		{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+		{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 	else
-		{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+		{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 		PKG_CONFIG=""
 	fi
 fi
-if test "x$qemu_xen" = "xy"; then :
+if test "x$qemu_xen" = "xy"
+then :
 
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for glib" >&5
-$as_echo_n "checking for glib... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for glib" >&5
+printf %s "checking for glib... " >&6; }
 
 if test -n "$glib_CFLAGS"; then
     pkg_cv_glib_CFLAGS="$glib_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.12\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.12\""; } >&5
   ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.12") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_glib_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.12" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -8369,10 +8947,10 @@ if test -n "$glib_LIBS"; then
     pkg_cv_glib_LIBS="$glib_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.12\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.12\""; } >&5
   ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.12") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_glib_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.12" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -8386,8 +8964,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -8413,10 +8991,10 @@ Alternatively, you may set the environment variables glib_CFLAGS
 and glib_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+	{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
@@ -8430,23 +9008,23 @@ See \`config.log' for more details" "$LINENO" 5; }
 else
 	glib_CFLAGS=$pkg_cv_glib_CFLAGS
 	glib_LIBS=$pkg_cv_glib_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pixman" >&5
-$as_echo_n "checking for pixman... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for pixman" >&5
+printf %s "checking for pixman... " >&6; }
 
 if test -n "$pixman_CFLAGS"; then
     pkg_cv_pixman_CFLAGS="$pixman_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pixman-1 >= 0.21.8\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pixman-1 >= 0.21.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "pixman-1 >= 0.21.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_pixman_CFLAGS=`$PKG_CONFIG --cflags "pixman-1 >= 0.21.8" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -8460,10 +9038,10 @@ if test -n "$pixman_LIBS"; then
     pkg_cv_pixman_LIBS="$pixman_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pixman-1 >= 0.21.8\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pixman-1 >= 0.21.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "pixman-1 >= 0.21.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_pixman_LIBS=`$PKG_CONFIG --libs "pixman-1 >= 0.21.8" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -8477,8 +9055,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -8504,10 +9082,10 @@ Alternatively, you may set the environment variables pixman_CFLAGS
 and pixman_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+	{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
@@ -8521,8 +9099,8 @@ See \`config.log' for more details" "$LINENO" 5; }
 else
 	pixman_CFLAGS=$pkg_cv_pixman_CFLAGS
 	pixman_LIBS=$pkg_cv_pixman_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
@@ -8530,11 +9108,12 @@ fi
 
 # Extract the first word of "wget", so it can be a program name with args.
 set dummy wget; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_WGET+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_WGET+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $WGET in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_WGET="$WGET" # Let the user override the test with a path.
@@ -8544,11 +9123,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_WGET="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_WGET="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8561,21 +9144,22 @@ esac
 fi
 WGET=$ac_cv_path_WGET
 if test -n "$WGET"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $WGET" >&5
-$as_echo "$WGET" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $WGET" >&5
+printf "%s\n" "$WGET" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
 # Extract the first word of "false", so it can be a program name with args.
 set dummy false; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_FALSE+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_FALSE+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $FALSE in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_FALSE="$FALSE" # Let the user override the test with a path.
@@ -8585,11 +9169,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_FALSE="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_FALSE="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8602,27 +9190,29 @@ esac
 fi
 FALSE=$ac_cv_path_FALSE
 if test -n "$FALSE"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FALSE" >&5
-$as_echo "$FALSE" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $FALSE" >&5
+printf "%s\n" "$FALSE" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
-if test x"$WGET" != x"no"; then :
+if test x"$WGET" != x"no"
+then :
 
     FETCHER="$WGET -c -O"
 
-else
+else $as_nop
 
     # Extract the first word of "ftp", so it can be a program name with args.
 set dummy ftp; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_FTP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_FTP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $FTP in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_FTP="$FTP" # Let the user override the test with a path.
@@ -8632,11 +9222,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_FTP="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_FTP="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8649,23 +9243,24 @@ esac
 fi
 FTP=$ac_cv_path_FTP
 if test -n "$FTP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FTP" >&5
-$as_echo "$FTP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $FTP" >&5
+printf "%s\n" "$FTP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
-    if test x"$FTP" != x"no"; then :
+    if test x"$FTP" != x"no"
+then :
 
         FETCHER="$FTP -o"
 
-else
+else $as_nop
 
         FETCHER="$FALSE"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot find wget or ftp" >&5
-$as_echo "$as_me: WARNING: cannot find wget or ftp" >&2;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cannot find wget or ftp" >&5
+printf "%s\n" "$as_me: WARNING: cannot find wget or ftp" >&2;}
 
 fi
 
@@ -8674,14 +9269,16 @@ fi
 
 
 # Checks for libraries.
-ac_fn_c_check_header_mongrel "$LINENO" "bzlib.h" "ac_cv_header_bzlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_bzlib_h" = xyes; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BZ2_bzDecompressInit in -lbz2" >&5
-$as_echo_n "checking for BZ2_bzDecompressInit in -lbz2... " >&6; }
-if ${ac_cv_lib_bz2_BZ2_bzDecompressInit+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+ac_fn_c_check_header_compile "$LINENO" "bzlib.h" "ac_cv_header_bzlib_h" "$ac_includes_default"
+if test "x$ac_cv_header_bzlib_h" = xyes
+then :
+
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BZ2_bzDecompressInit in -lbz2" >&5
+printf %s "checking for BZ2_bzDecompressInit in -lbz2... " >&6; }
+if test ${ac_cv_lib_bz2_BZ2_bzDecompressInit+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lbz2  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8690,30 +9287,29 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char BZ2_bzDecompressInit ();
 int
-main ()
+main (void)
 {
 return BZ2_bzDecompressInit ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_bz2_BZ2_bzDecompressInit=yes
-else
+else $as_nop
   ac_cv_lib_bz2_BZ2_bzDecompressInit=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bz2_BZ2_bzDecompressInit" >&5
-$as_echo "$ac_cv_lib_bz2_BZ2_bzDecompressInit" >&6; }
-if test "x$ac_cv_lib_bz2_BZ2_bzDecompressInit" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bz2_BZ2_bzDecompressInit" >&5
+printf "%s\n" "$ac_cv_lib_bz2_BZ2_bzDecompressInit" >&6; }
+if test "x$ac_cv_lib_bz2_BZ2_bzDecompressInit" = xyes
+then :
   ZLIB_CFLAGS="$ZLIB_CFLAGS -DHAVE_BZLIB"
          ZLIB_LIBS="$ZLIB_LIBS -lbz2"
 fi
@@ -8721,15 +9317,16 @@ fi
 
 fi
 
+ac_fn_c_check_header_compile "$LINENO" "lzma.h" "ac_cv_header_lzma_h" "$ac_includes_default"
+if test "x$ac_cv_header_lzma_h" = xyes
+then :
 
-ac_fn_c_check_header_mongrel "$LINENO" "lzma.h" "ac_cv_header_lzma_h" "$ac_includes_default"
-if test "x$ac_cv_header_lzma_h" = xyes; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lzma_stream_decoder in -llzma" >&5
-$as_echo_n "checking for lzma_stream_decoder in -llzma... " >&6; }
-if ${ac_cv_lib_lzma_lzma_stream_decoder+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for lzma_stream_decoder in -llzma" >&5
+printf %s "checking for lzma_stream_decoder in -llzma... " >&6; }
+if test ${ac_cv_lib_lzma_lzma_stream_decoder+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-llzma  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8738,30 +9335,29 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char lzma_stream_decoder ();
 int
-main ()
+main (void)
 {
 return lzma_stream_decoder ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_lzma_lzma_stream_decoder=yes
-else
+else $as_nop
   ac_cv_lib_lzma_lzma_stream_decoder=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lzma_lzma_stream_decoder" >&5
-$as_echo "$ac_cv_lib_lzma_lzma_stream_decoder" >&6; }
-if test "x$ac_cv_lib_lzma_lzma_stream_decoder" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lzma_lzma_stream_decoder" >&5
+printf "%s\n" "$ac_cv_lib_lzma_lzma_stream_decoder" >&6; }
+if test "x$ac_cv_lib_lzma_lzma_stream_decoder" = xyes
+then :
   ZLIB_CFLAGS="$ZLIB_CFLAGS -DHAVE_LZMA"
          ZLIB_LIBS="$ZLIB_LIBS -llzma"
 fi
@@ -8769,15 +9365,16 @@ fi
 
 fi
 
+ac_fn_c_check_header_compile "$LINENO" "lzo/lzo1x.h" "ac_cv_header_lzo_lzo1x_h" "$ac_includes_default"
+if test "x$ac_cv_header_lzo_lzo1x_h" = xyes
+then :
 
-ac_fn_c_check_header_mongrel "$LINENO" "lzo/lzo1x.h" "ac_cv_header_lzo_lzo1x_h" "$ac_includes_default"
-if test "x$ac_cv_header_lzo_lzo1x_h" = xyes; then :
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lzo1x_decompress in -llzo2" >&5
-$as_echo_n "checking for lzo1x_decompress in -llzo2... " >&6; }
-if ${ac_cv_lib_lzo2_lzo1x_decompress+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for lzo1x_decompress in -llzo2" >&5
+printf %s "checking for lzo1x_decompress in -llzo2... " >&6; }
+if test ${ac_cv_lib_lzo2_lzo1x_decompress+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-llzo2  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8786,30 +9383,29 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char lzo1x_decompress ();
 int
-main ()
+main (void)
 {
 return lzo1x_decompress ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_lzo2_lzo1x_decompress=yes
-else
+else $as_nop
   ac_cv_lib_lzo2_lzo1x_decompress=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lzo2_lzo1x_decompress" >&5
-$as_echo "$ac_cv_lib_lzo2_lzo1x_decompress" >&6; }
-if test "x$ac_cv_lib_lzo2_lzo1x_decompress" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lzo2_lzo1x_decompress" >&5
+printf "%s\n" "$ac_cv_lib_lzo2_lzo1x_decompress" >&6; }
+if test "x$ac_cv_lib_lzo2_lzo1x_decompress" = xyes
+then :
   ZLIB_CFLAGS="$ZLIB_CFLAGS -DHAVE_LZO1X"
          ZLIB_LIBS="$ZLIB_LIBS -llzo2"
 fi
@@ -8818,19 +9414,18 @@ fi
 fi
 
 
-
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libzstd" >&5
-$as_echo_n "checking for libzstd... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libzstd" >&5
+printf %s "checking for libzstd... " >&6; }
 
 if test -n "$libzstd_CFLAGS"; then
     pkg_cv_libzstd_CFLAGS="$libzstd_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libzstd\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libzstd\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libzstd") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_libzstd_CFLAGS=`$PKG_CONFIG --cflags "libzstd" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -8844,10 +9439,10 @@ if test -n "$libzstd_LIBS"; then
     pkg_cv_libzstd_LIBS="$libzstd_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libzstd\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libzstd\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libzstd") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_libzstd_LIBS=`$PKG_CONFIG --libs "libzstd" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -8861,8 +9456,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -8879,28 +9474,30 @@ fi
 
 	true
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 	true
 else
 	libzstd_CFLAGS=$pkg_cv_libzstd_CFLAGS
 	libzstd_LIBS=$pkg_cv_libzstd_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 	ZLIB_CFLAGS="$ZLIB_CFLAGS -DHAVE_ZSTD $libzstd_CFLAGS"
      ZLIB_LIBS="$ZLIB_LIBS $libzstd_LIBS"
 fi
 
 
 
-ac_fn_c_check_header_mongrel "$LINENO" "ext2fs/ext2fs.h" "ac_cv_header_ext2fs_ext2fs_h" "$ac_includes_default"
-if test "x$ac_cv_header_ext2fs_ext2fs_h" = xyes; then :
+ac_fn_c_check_header_compile "$LINENO" "ext2fs/ext2fs.h" "ac_cv_header_ext2fs_ext2fs_h" "$ac_includes_default"
+if test "x$ac_cv_header_ext2fs_ext2fs_h" = xyes
+then :
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ext2fs_open2 in -lext2fs" >&5
-$as_echo_n "checking for ext2fs_open2 in -lext2fs... " >&6; }
-if ${ac_cv_lib_ext2fs_ext2fs_open2+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ext2fs_open2 in -lext2fs" >&5
+printf %s "checking for ext2fs_open2 in -lext2fs... " >&6; }
+if test ${ac_cv_lib_ext2fs_ext2fs_open2+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lext2fs  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8909,33 +9506,32 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char ext2fs_open2 ();
 int
-main ()
+main (void)
 {
 return ext2fs_open2 ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_ext2fs_ext2fs_open2=yes
-else
+else $as_nop
   ac_cv_lib_ext2fs_ext2fs_open2=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ext2fs_ext2fs_open2" >&5
-$as_echo "$ac_cv_lib_ext2fs_ext2fs_open2" >&6; }
-if test "x$ac_cv_lib_ext2fs_ext2fs_open2" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ext2fs_ext2fs_open2" >&5
+printf "%s\n" "$ac_cv_lib_ext2fs_ext2fs_open2" >&6; }
+if test "x$ac_cv_lib_ext2fs_ext2fs_open2" = xyes
+then :
 
 
-$as_echo "#define INCLUDE_EXTFS_H <ext2fs/ext2fs.h>" >>confdefs.h
+printf "%s\n" "#define INCLUDE_EXTFS_H <ext2fs/ext2fs.h>" >>confdefs.h
 
     EXTFS_LIBS="-lext2fs"
 
@@ -8944,15 +9540,16 @@ fi
 
 fi
 
+ac_fn_c_check_header_compile "$LINENO" "ext4fs/ext2fs.h" "ac_cv_header_ext4fs_ext2fs_h" "$ac_includes_default"
+if test "x$ac_cv_header_ext4fs_ext2fs_h" = xyes
+then :
 
-ac_fn_c_check_header_mongrel "$LINENO" "ext4fs/ext2fs.h" "ac_cv_header_ext4fs_ext2fs_h" "$ac_includes_default"
-if test "x$ac_cv_header_ext4fs_ext2fs_h" = xyes; then :
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ext2fs_open2 in -lext4fs" >&5
-$as_echo_n "checking for ext2fs_open2 in -lext4fs... " >&6; }
-if ${ac_cv_lib_ext4fs_ext2fs_open2+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ext2fs_open2 in -lext4fs" >&5
+printf %s "checking for ext2fs_open2 in -lext4fs... " >&6; }
+if test ${ac_cv_lib_ext4fs_ext2fs_open2+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lext4fs  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8961,33 +9558,32 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char ext2fs_open2 ();
 int
-main ()
+main (void)
 {
 return ext2fs_open2 ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_ext4fs_ext2fs_open2=yes
-else
+else $as_nop
   ac_cv_lib_ext4fs_ext2fs_open2=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ext4fs_ext2fs_open2" >&5
-$as_echo "$ac_cv_lib_ext4fs_ext2fs_open2" >&6; }
-if test "x$ac_cv_lib_ext4fs_ext2fs_open2" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ext4fs_ext2fs_open2" >&5
+printf "%s\n" "$ac_cv_lib_ext4fs_ext2fs_open2" >&6; }
+if test "x$ac_cv_lib_ext4fs_ext2fs_open2" = xyes
+then :
 
 
-$as_echo "#define INCLUDE_EXTFS_H <ext4fs/ext2fs.h>" >>confdefs.h
+printf "%s\n" "#define INCLUDE_EXTFS_H <ext4fs/ext2fs.h>" >>confdefs.h
 
     EXTFS_LIBS="-lext4fs"
 
@@ -8999,12 +9595,12 @@ fi
 
 
 
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread flag" >&5
-$as_echo_n "checking for pthread flag... " >&6; }
-if ${ax_cv_pthread_flags+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for pthread flag" >&5
+printf %s "checking for pthread flag... " >&6; }
+if test ${ax_cv_pthread_flags+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
         ax_cv_pthread_flags=-pthread
 
@@ -9036,12 +9632,13 @@ int main(void) {
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-else
+else $as_nop
   ax_cv_pthread_flags=failed
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 
     CFLAGS="$saved_CFLAGS"
@@ -9052,8 +9649,8 @@ rm -f core conftest.err conftest.$ac_objext \
 
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_pthread_flags" >&5
-$as_echo "$ax_cv_pthread_flags" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_pthread_flags" >&5
+printf "%s\n" "$ax_cv_pthread_flags" >&6; }
     if test "x$ax_cv_pthread_flags" = xfailed; then
         as_fn_error $? "-pthread does not work" "$LINENO" 5
     fi
@@ -9064,11 +9661,12 @@ $as_echo "$ax_cv_pthread_flags" >&6; }
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for yajl_alloc in -lyajl" >&5
-$as_echo_n "checking for yajl_alloc in -lyajl... " >&6; }
-if ${ac_cv_lib_yajl_yajl_alloc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for yajl_alloc in -lyajl" >&5
+printf %s "checking for yajl_alloc in -lyajl... " >&6; }
+if test ${ac_cv_lib_yajl_yajl_alloc+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lyajl  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -9077,45 +9675,43 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char yajl_alloc ();
 int
-main ()
+main (void)
 {
 return yajl_alloc ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_yajl_yajl_alloc=yes
-else
+else $as_nop
   ac_cv_lib_yajl_yajl_alloc=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_yajl_yajl_alloc" >&5
-$as_echo "$ac_cv_lib_yajl_yajl_alloc" >&6; }
-if test "x$ac_cv_lib_yajl_yajl_alloc" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBYAJL 1
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_yajl_yajl_alloc" >&5
+printf "%s\n" "$ac_cv_lib_yajl_yajl_alloc" >&6; }
+if test "x$ac_cv_lib_yajl_yajl_alloc" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBYAJL 1" >>confdefs.h
 
   LIBS="-lyajl $LIBS"
 
-else
+else $as_nop
   as_fn_error $? "Could not find yajl" "$LINENO" 5
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for deflateCopy in -lz" >&5
-$as_echo_n "checking for deflateCopy in -lz... " >&6; }
-if ${ac_cv_lib_z_deflateCopy+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for deflateCopy in -lz" >&5
+printf %s "checking for deflateCopy in -lz... " >&6; }
+if test ${ac_cv_lib_z_deflateCopy+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lz  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -9124,45 +9720,43 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char deflateCopy ();
 int
-main ()
+main (void)
 {
 return deflateCopy ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_z_deflateCopy=yes
-else
+else $as_nop
   ac_cv_lib_z_deflateCopy=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_deflateCopy" >&5
-$as_echo "$ac_cv_lib_z_deflateCopy" >&6; }
-if test "x$ac_cv_lib_z_deflateCopy" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBZ 1
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_deflateCopy" >&5
+printf "%s\n" "$ac_cv_lib_z_deflateCopy" >&6; }
+if test "x$ac_cv_lib_z_deflateCopy" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBZ 1" >>confdefs.h
 
   LIBS="-lz $LIBS"
 
-else
+else $as_nop
   as_fn_error $? "Could not find zlib" "$LINENO" 5
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libiconv_open in -liconv" >&5
-$as_echo_n "checking for libiconv_open in -liconv... " >&6; }
-if ${ac_cv_lib_iconv_libiconv_open+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libiconv_open in -liconv" >&5
+printf %s "checking for libiconv_open in -liconv... " >&6; }
+if test ${ac_cv_lib_iconv_libiconv_open+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-liconv  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -9171,44 +9765,45 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char libiconv_open ();
 int
-main ()
+main (void)
 {
 return libiconv_open ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_iconv_libiconv_open=yes
-else
+else $as_nop
   ac_cv_lib_iconv_libiconv_open=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_iconv_libiconv_open" >&5
-$as_echo "$ac_cv_lib_iconv_libiconv_open" >&6; }
-if test "x$ac_cv_lib_iconv_libiconv_open" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_iconv_libiconv_open" >&5
+printf "%s\n" "$ac_cv_lib_iconv_libiconv_open" >&6; }
+if test "x$ac_cv_lib_iconv_libiconv_open" = xyes
+then :
   libiconv="y"
-else
+else $as_nop
   libiconv="n"
 fi
 
 
-ac_fn_c_check_header_mongrel "$LINENO" "argp.h" "ac_cv_header_argp_h" "$ac_includes_default"
-if test "x$ac_cv_header_argp_h" = xyes; then :
+ac_fn_c_check_header_compile "$LINENO" "argp.h" "ac_cv_header_argp_h" "$ac_includes_default"
+if test "x$ac_cv_header_argp_h" = xyes
+then :
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for argp_usage in -largp" >&5
-$as_echo_n "checking for argp_usage in -largp... " >&6; }
-if ${ac_cv_lib_argp_argp_usage+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for argp_usage in -largp" >&5
+printf %s "checking for argp_usage in -largp... " >&6; }
+if test ${ac_cv_lib_argp_argp_usage+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-largp  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -9217,49 +9812,48 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char argp_usage ();
 int
-main ()
+main (void)
 {
 return argp_usage ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_argp_argp_usage=yes
-else
+else $as_nop
   ac_cv_lib_argp_argp_usage=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_argp_argp_usage" >&5
-$as_echo "$ac_cv_lib_argp_argp_usage" >&6; }
-if test "x$ac_cv_lib_argp_argp_usage" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_argp_argp_usage" >&5
+printf "%s\n" "$ac_cv_lib_argp_argp_usage" >&6; }
+if test "x$ac_cv_lib_argp_argp_usage" = xyes
+then :
   argp_ldflags="-largp"
 fi
 
 
-else
+else $as_nop
   as_fn_error $? "Could not find argp" "$LINENO" 5
 fi
 
 
 
-
 # FDT is needed only on ARM
 case "$host_cpu" in
 arm*|aarch64)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fdt_create in -lfdt" >&5
-$as_echo_n "checking for fdt_create in -lfdt... " >&6; }
-if ${ac_cv_lib_fdt_fdt_create+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fdt_create in -lfdt" >&5
+printf %s "checking for fdt_create in -lfdt... " >&6; }
+if test ${ac_cv_lib_fdt_fdt_create+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lfdt  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -9268,37 +9862,34 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* Override any GCC internal prototype to avoid an error.
    Use char because int might match the return type of a GCC
    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
 char fdt_create ();
 int
-main ()
+main (void)
 {
 return fdt_create ();
   ;
   return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_fdt_fdt_create=yes
-else
+else $as_nop
   ac_cv_lib_fdt_fdt_create=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_fdt_fdt_create" >&5
-$as_echo "$ac_cv_lib_fdt_fdt_create" >&6; }
-if test "x$ac_cv_lib_fdt_fdt_create" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBFDT 1
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_fdt_fdt_create" >&5
+printf "%s\n" "$ac_cv_lib_fdt_fdt_create" >&6; }
+if test "x$ac_cv_lib_fdt_fdt_create" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBFDT 1" >>confdefs.h
 
   LIBS="-lfdt $LIBS"
 
-else
+else $as_nop
   as_fn_error $? "Could not find libfdt" "$LINENO" 5
 fi
 
@@ -9308,108 +9899,197 @@ fi
 # function present in new version.
 # Use fdt_first_property_offset which has been correctly exported since v1.4.0
 ac_fn_c_check_func "$LINENO" "fdt_first_property_offset" "ac_cv_func_fdt_first_property_offset"
-if test "x$ac_cv_func_fdt_first_property_offset" = xyes; then :
+if test "x$ac_cv_func_fdt_first_property_offset" = xyes
+then :
   partial_dt="y"
-else
+else $as_nop
   partial_dt="n"
 fi
 
 
-if test "x$partial_dt" = "xy" ; then :
+if test "x$partial_dt" = "xy"
+then :
 
-$as_echo "#define ENABLE_PARTIAL_DEVICE_TREE 1" >>confdefs.h
+printf "%s\n" "#define ENABLE_PARTIAL_DEVICE_TREE 1" >>confdefs.h
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Disabling support for partial device tree in libxl.
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Disabling support for partial device tree in libxl.
        Please install libfdt library - version 1.4.0 or higher" >&5
-$as_echo "$as_me: WARNING: Disabling support for partial device tree in libxl.
+printf "%s\n" "$as_me: WARNING: Disabling support for partial device tree in libxl.
        Please install libfdt library - version 1.4.0 or higher" >&2;}
 fi
 
 # The functions fdt_{first,next}_subnode may not be available because:
 #   * It has been introduced in 2013 => Doesn't work on Wheezy
 #   * The prototype exists but the functions are not exposed. Don't ask why...
-for ac_func in fdt_first_subnode fdt_next_subnode
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+ac_fn_c_check_func "$LINENO" "fdt_first_subnode" "ac_cv_func_fdt_first_subnode"
+if test "x$ac_cv_func_fdt_first_subnode" = xyes
+then :
+  printf "%s\n" "#define HAVE_FDT_FIRST_SUBNODE 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "fdt_next_subnode" "ac_cv_func_fdt_next_subnode"
+if test "x$ac_cv_func_fdt_next_subnode" = xyes
+then :
+  printf "%s\n" "#define HAVE_FDT_NEXT_SUBNODE 1" >>confdefs.h
+
+fi
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
+printf %s "checking for $CC options needed to detect all undeclared functions... " >&6; }
+if test ${ac_cv_c_undeclared_builtin_options+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_save_CFLAGS=$CFLAGS
+   ac_cv_c_undeclared_builtin_options='cannot detect'
+   for ac_arg in '' -fno-builtin; do
+     CFLAGS="$ac_save_CFLAGS $ac_arg"
+     # This test program should *not* compile successfully.
+     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main (void)
+{
+(void) strchr;
+  ;
+  return 0;
+}
 _ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+
+else $as_nop
+  # This test program should compile successfully.
+        # No library function is consistently available on
+        # freestanding implementations, so test against a dummy
+        # declaration.  Include always-available headers on the
+        # off chance that they somehow elicit warnings.
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <float.h>
+#include <limits.h>
+#include <stdarg.h>
+#include <stddef.h>
+extern void ac_decl (int, char *);
+
+int
+main (void)
+{
+(void) ac_decl (0, (char *) 0);
+  (void) ac_decl;
 
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+  if test x"$ac_arg" = x
+then :
+  ac_cv_c_undeclared_builtin_options='none needed'
+else $as_nop
+  ac_cv_c_undeclared_builtin_options=$ac_arg
 fi
-done
+          break
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+    done
+    CFLAGS=$ac_save_CFLAGS
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_undeclared_builtin_options" >&5
+printf "%s\n" "$ac_cv_c_undeclared_builtin_options" >&6; }
+  case $ac_cv_c_undeclared_builtin_options in #(
+  'cannot detect') :
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot make $CC report undeclared builtins
+See \`config.log' for more details" "$LINENO" 5; } ;; #(
+  'none needed') :
+    ac_c_undeclared_builtin_options='' ;; #(
+  *) :
+    ac_c_undeclared_builtin_options=$ac_cv_c_undeclared_builtin_options ;;
+esac
 
-ac_fn_c_check_decl "$LINENO" "fdt_first_subnode" "ac_cv_have_decl_fdt_first_subnode" "#include <libfdt.h>
-"
-if test "x$ac_cv_have_decl_fdt_first_subnode" = xyes; then :
+ac_fn_check_decl "$LINENO" "fdt_first_subnode" "ac_cv_have_decl_fdt_first_subnode" "#include <libfdt.h>
+" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl_fdt_first_subnode" = xyes
+then :
   ac_have_decl=1
-else
+else $as_nop
   ac_have_decl=0
 fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_FDT_FIRST_SUBNODE $ac_have_decl
-_ACEOF
-ac_fn_c_check_decl "$LINENO" "fdt_next_subnode" "ac_cv_have_decl_fdt_next_subnode" "#include <libfdt.h>
-"
-if test "x$ac_cv_have_decl_fdt_next_subnode" = xyes; then :
+printf "%s\n" "#define HAVE_DECL_FDT_FIRST_SUBNODE $ac_have_decl" >>confdefs.h
+ac_fn_check_decl "$LINENO" "fdt_next_subnode" "ac_cv_have_decl_fdt_next_subnode" "#include <libfdt.h>
+" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl_fdt_next_subnode" = xyes
+then :
   ac_have_decl=1
-else
+else $as_nop
   ac_have_decl=0
 fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_FDT_NEXT_SUBNODE $ac_have_decl
-_ACEOF
+printf "%s\n" "#define HAVE_DECL_FDT_NEXT_SUBNODE $ac_have_decl" >>confdefs.h
 
 
 # The helper fdt_property_u32 is only present in libfdt >= 1.4.0
 # It's an inline function, so only check if the declaration is present
-ac_fn_c_check_decl "$LINENO" "fdt_property_u32" "ac_cv_have_decl_fdt_property_u32" "#include <libfdt.h>
-"
-if test "x$ac_cv_have_decl_fdt_property_u32" = xyes; then :
+ac_fn_check_decl "$LINENO" "fdt_property_u32" "ac_cv_have_decl_fdt_property_u32" "#include <libfdt.h>
+" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl_fdt_property_u32" = xyes
+then :
   ac_have_decl=1
-else
+else $as_nop
   ac_have_decl=0
 fi
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_FDT_PROPERTY_U32 $ac_have_decl
-_ACEOF
+printf "%s\n" "#define HAVE_DECL_FDT_PROPERTY_U32 $ac_have_decl" >>confdefs.h
 
 esac
 
 # Checks for header files.
-for ac_header in yajl/yajl_version.h sys/eventfd.h valgrind/memcheck.h utmp.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+ac_fn_c_check_header_compile "$LINENO" "yajl/yajl_version.h" "ac_cv_header_yajl_yajl_version_h" "$ac_includes_default"
+if test "x$ac_cv_header_yajl_yajl_version_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_YAJL_YAJL_VERSION_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "sys/eventfd.h" "ac_cv_header_sys_eventfd_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_eventfd_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_EVENTFD_H 1" >>confdefs.h
 
-done
+fi
+ac_fn_c_check_header_compile "$LINENO" "valgrind/memcheck.h" "ac_cv_header_valgrind_memcheck_h" "$ac_includes_default"
+if test "x$ac_cv_header_valgrind_memcheck_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_VALGRIND_MEMCHECK_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "utmp.h" "ac_cv_header_utmp_h" "$ac_includes_default"
+if test "x$ac_cv_header_utmp_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_UTMP_H 1" >>confdefs.h
+
+fi
 
 
 # Check for libnl3 >=3.2.8. If present enable remus network buffering.
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBNL3" >&5
-$as_echo_n "checking for LIBNL3... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for LIBNL3" >&5
+printf %s "checking for LIBNL3... " >&6; }
 
 if test -n "$LIBNL3_CFLAGS"; then
     pkg_cv_LIBNL3_CFLAGS="$LIBNL3_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libnl-3.0 >= 3.2.8 libnl-route-3.0 >= 3.2.8\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libnl-3.0 >= 3.2.8 libnl-route-3.0 >= 3.2.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libnl-3.0 >= 3.2.8 libnl-route-3.0 >= 3.2.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_LIBNL3_CFLAGS=`$PKG_CONFIG --cflags "libnl-3.0 >= 3.2.8 libnl-route-3.0 >= 3.2.8" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9423,10 +10103,10 @@ if test -n "$LIBNL3_LIBS"; then
     pkg_cv_LIBNL3_LIBS="$LIBNL3_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libnl-3.0 >= 3.2.8 libnl-route-3.0 >= 3.2.8\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libnl-3.0 >= 3.2.8 libnl-route-3.0 >= 3.2.8\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libnl-3.0 >= 3.2.8 libnl-route-3.0 >= 3.2.8") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_LIBNL3_LIBS=`$PKG_CONFIG --libs "libnl-3.0 >= 3.2.8 libnl-route-3.0 >= 3.2.8" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9440,8 +10120,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -9458,29 +10138,30 @@ fi
 
 	libnl3_lib="n"
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 	libnl3_lib="n"
 else
 	LIBNL3_CFLAGS=$pkg_cv_LIBNL3_CFLAGS
 	LIBNL3_LIBS=$pkg_cv_LIBNL3_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 	libnl3_lib="y"
 fi
 
-if test "x$libnl3_lib" = "xn" ; then :
+if test "x$libnl3_lib" = "xn"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Disabling support for Remus network buffering and COLO.
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Disabling support for Remus network buffering and COLO.
     Please install libnl3 libraries (including libnl3-route), command line tools and devel
     headers - version 3.2.8 or higher" >&5
-$as_echo "$as_me: WARNING: Disabling support for Remus network buffering and COLO.
+printf "%s\n" "$as_me: WARNING: Disabling support for Remus network buffering and COLO.
     Please install libnl3 libraries (including libnl3-route), command line tools and devel
     headers - version 3.2.8 or higher" >&2;}
     libnl=n
 
 
-else
+else $as_nop
 
     libnl=y
 
@@ -9496,20 +10177,24 @@ fi # ! $rump
 
 
 # Check whether --enable-systemd was given.
-if test "${enable_systemd+set}" = set; then :
+if test ${enable_systemd+y}
+then :
   enableval=$enable_systemd;
 fi
 
 
-if test "x$enable_systemd" = "xno"; then :
+if test "x$enable_systemd" = "xno"
+then :
 
     ax_cv_systemd="n"
 
-elif test "x$enable_systemd" = "xyes"; then :
+elif test "x$enable_systemd" = "xyes"
+then :
 
     ax_cv_systemd="y"
 
-elif test -z $ax_cv_systemd; then :
+elif test -z $ax_cv_systemd
+then :
 
     ax_cv_systemd="n"
 
@@ -9520,9 +10205,10 @@ systemd=$ax_cv_systemd
 
 
 # Check whether --with-systemd was given.
-if test "${with_systemd+set}" = set; then :
+if test ${with_systemd+y}
+then :
   withval=$with_systemd; SYSTEMD_DIR="$withval"
-else
+else $as_nop
   SYSTEMD_DIR=""
 fi
 
@@ -9530,9 +10216,10 @@ fi
 
 
 # Check whether --with-systemd-modules-load was given.
-if test "${with_systemd_modules_load+set}" = set; then :
+if test ${with_systemd_modules_load+y}
+then :
   withval=$with_systemd_modules_load; SYSTEMD_MODULES_LOAD="$withval"
-else
+else $as_nop
   SYSTEMD_MODULES_LOAD=""
 fi
 
@@ -9542,17 +10229,17 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
-$as_echo_n "checking for SYSTEMD... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
+printf %s "checking for SYSTEMD... " >&6; }
 
 if test -n "$SYSTEMD_CFLAGS"; then
     pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd-daemon") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags "libsystemd-daemon" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9566,10 +10253,10 @@ if test -n "$SYSTEMD_LIBS"; then
     pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd-daemon") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs "libsystemd-daemon" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9583,8 +10270,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -9602,17 +10289,17 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
-$as_echo_n "checking for SYSTEMD... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
+printf %s "checking for SYSTEMD... " >&6; }
 
 if test -n "$SYSTEMD_CFLAGS"; then
     pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd >= 209") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags "libsystemd >= 209" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9626,10 +10313,10 @@ if test -n "$SYSTEMD_LIBS"; then
     pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd >= 209") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs "libsystemd >= 209" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9643,8 +10330,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -9661,34 +10348,34 @@ fi
 
 	systemd="n"
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 	systemd="n"
 else
 	SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS
 	SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 	systemd="y"
 fi
 
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
-$as_echo_n "checking for SYSTEMD... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
+printf %s "checking for SYSTEMD... " >&6; }
 
 if test -n "$SYSTEMD_CFLAGS"; then
     pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd >= 209") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags "libsystemd >= 209" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9702,10 +10389,10 @@ if test -n "$SYSTEMD_LIBS"; then
     pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd >= 209") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs "libsystemd >= 209" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9719,8 +10406,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -9737,48 +10424,50 @@ fi
 
 	systemd="n"
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 	systemd="n"
 else
 	SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS
 	SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 	systemd="y"
 fi
 
 else
 	SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS
 	SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 	systemd="y"
 fi
 
 
-		if test "x$enable_systemd" != "xno"; then :
+		if test "x$enable_systemd" != "xno"
+then :
 
-	     if test "x$systemd" = "xy" ; then :
+	     if test "x$systemd" = "xy"
+then :
 
 
-$as_echo "#define HAVE_SYSTEMD 1" >>confdefs.h
+printf "%s\n" "#define HAVE_SYSTEMD 1" >>confdefs.h
 
 			systemd=y
 
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
-$as_echo_n "checking for SYSTEMD... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
+printf %s "checking for SYSTEMD... " >&6; }
 
 if test -n "$SYSTEMD_CFLAGS"; then
     pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd-daemon") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags "libsystemd-daemon" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9792,10 +10481,10 @@ if test -n "$SYSTEMD_LIBS"; then
     pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd-daemon") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs "libsystemd-daemon" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9809,8 +10498,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -9827,17 +10516,17 @@ fi
 
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
-$as_echo_n "checking for SYSTEMD... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
+printf %s "checking for SYSTEMD... " >&6; }
 
 if test -n "$SYSTEMD_CFLAGS"; then
     pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd >= 209") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags "libsystemd >= 209" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9851,10 +10540,10 @@ if test -n "$SYSTEMD_LIBS"; then
     pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd >= 209") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs "libsystemd >= 209" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9868,8 +10557,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -9895,10 +10584,10 @@ Alternatively, you may set the environment variables SYSTEMD_CFLAGS
 and SYSTEMD_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+	{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
@@ -9912,27 +10601,27 @@ See \`config.log' for more details" "$LINENO" 5; }
 else
 	SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS
 	SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
-$as_echo_n "checking for SYSTEMD... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5
+printf %s "checking for SYSTEMD... " >&6; }
 
 if test -n "$SYSTEMD_CFLAGS"; then
     pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd >= 209") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags "libsystemd >= 209" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9946,10 +10635,10 @@ if test -n "$SYSTEMD_LIBS"; then
     pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd >= 209\""; } >&5
   ($PKG_CONFIG --exists --print-errors "libsystemd >= 209") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs "libsystemd >= 209" 2>/dev/null`
 		      test "x$?" != "x0" && pkg_failed=yes
@@ -9963,8 +10652,8 @@ fi
 
 
 if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
         _pkg_short_errors_supported=yes
@@ -9990,10 +10679,10 @@ Alternatively, you may set the environment variables SYSTEMD_CFLAGS
 and SYSTEMD_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+     	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+	{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
@@ -10007,63 +10696,69 @@ See \`config.log' for more details" "$LINENO" 5; }
 else
 	SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS
 	SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 else
 	SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS
 	SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
 
-	if test "x$SYSTEMD_DIR" = x; then :
+	if test "x$SYSTEMD_DIR" = x
+then :
 
 	    	    	    	    	    	    	    	    	    	    	    	    	    SYSTEMD_DIR="\$(prefix)/lib/systemd/system/"
 
 fi
 
-	if test "x$SYSTEMD_DIR" = x; then :
+	if test "x$SYSTEMD_DIR" = x
+then :
 
 	    as_fn_error $? "SYSTEMD_DIR is unset" "$LINENO" 5
 
 fi
 
-		if test "x$SYSTEMD_MODULES_LOAD" = x; then :
+		if test "x$SYSTEMD_MODULES_LOAD" = x
+then :
 
 	    SYSTEMD_MODULES_LOAD="\$(prefix)/lib/modules-load.d/"
 
 fi
 
-	if test "x$SYSTEMD_MODULES_LOAD" = x; then :
+	if test "x$SYSTEMD_MODULES_LOAD" = x
+then :
 
 	    as_fn_error $? "SYSTEMD_MODULES_LOAD is unset" "$LINENO" 5
 
 fi
 
 
-else
+else $as_nop
 
-		if test "x$enable_systemd" = "xyes"; then :
+		if test "x$enable_systemd" = "xyes"
+then :
   as_fn_error $? "Unable to find systemd development library" "$LINENO" 5
-else
+else $as_nop
   systemd=n
 fi
 
 fi
 
-else
+else $as_nop
   systemd=n
 fi
 
 
 
-if test "x$systemd" = "xy"; then :
+if test "x$systemd" = "xy"
+then :
 
     ac_config_files="$ac_config_files hotplug/Linux/systemd/proc-xen.mount hotplug/Linux/systemd/xen-init-dom0.service hotplug/Linux/systemd/xen-qemu-dom0-disk-backend.service hotplug/Linux/systemd/xen-watchdog.service hotplug/Linux/systemd/xenconsoled.service hotplug/Linux/systemd/xendomains.service hotplug/Linux/systemd/xendriverdomain.service hotplug/Linux/systemd/xenstored.service"
 
@@ -10071,10 +10766,12 @@ if test "x$systemd" = "xy"; then :
 fi
 
 # Check whether --enable-9pfs was given.
-if test "${enable_9pfs+set}" = set; then :
-  enableval=$enable_9pfs; if test "x$enable_9pfs" = "xyes"; then :
+if test ${enable_9pfs+y}
+then :
+  enableval=$enable_9pfs; if test "x$enable_9pfs" = "xyes"
+then :
   ninepfs=y
-else
+else $as_nop
   ninepfs=n
 fi
 fi
@@ -10083,13 +10780,15 @@ fi
 
 
 # Check whether --enable-pvshim was given.
-if test "${enable_pvshim+set}" = set; then :
-  enableval=$enable_pvshim; if test "x$enable_pvshim" = "xno"; then :
+if test ${enable_pvshim+y}
+then :
+  enableval=$enable_pvshim; if test "x$enable_pvshim" = "xno"
+then :
   pvshim=n
-else
+else $as_nop
   pvshim=y
 fi
-else
+else $as_nop
 
     cpu=`test -z "$target_cpu" && echo "$host_cpu" || echo "$target_cpu"`
     case "${XEN_COMPILE_ARCH-${XEN_TARGET_ARCH-$cpu}}" in
@@ -10101,15 +10800,17 @@ else
 fi
 
 
-if test "x$pvshim" = "xy"; then :
+if test "x$pvshim" = "xy"
+then :
 
     # Extract the first word of "bison", so it can be a program name with args.
 set dummy bison; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_BISON+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_BISON+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $BISON in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_BISON="$BISON" # Let the user override the test with a path.
@@ -10119,11 +10820,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_BISON="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_BISON="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10136,11 +10841,11 @@ esac
 fi
 BISON=$ac_cv_path_BISON
 if test -n "$BISON"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $BISON" >&5
-$as_echo "$BISON" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $BISON" >&5
+printf "%s\n" "$BISON" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -10149,15 +10854,16 @@ then
     as_fn_error $? "Unable to find bison, please install bison" "$LINENO" 5
 fi
 
-else
+else $as_nop
 
     # Extract the first word of "bison", so it can be a program name with args.
 set dummy bison; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_BISON+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_BISON+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $BISON in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_BISON="$BISON" # Let the user override the test with a path.
@@ -10167,11 +10873,15 @@ else
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_BISON="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_BISON="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10183,11 +10893,11 @@ esac
 fi
 BISON=$ac_cv_path_BISON
 if test -n "$BISON"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $BISON" >&5
-$as_echo "$BISON" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $BISON" >&5
+printf "%s\n" "$BISON" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -10197,37 +10907,40 @@ fi
 
 ax_found=0
 
-    if test "$ax_found" = "0"; then :
+    if test "$ax_found" = "0"
+then :
 
-        ac_fn_c_check_header_mongrel "$LINENO" "endian.h" "ac_cv_header_endian_h" "$ac_includes_default"
-if test "x$ac_cv_header_endian_h" = xyes; then :
+        ac_fn_c_check_header_compile "$LINENO" "endian.h" "ac_cv_header_endian_h" "$ac_includes_default"
+if test "x$ac_cv_header_endian_h" = xyes
+then :
 
 
-$as_echo "#define INCLUDE_ENDIAN_H <endian.h>" >>confdefs.h
+printf "%s\n" "#define INCLUDE_ENDIAN_H <endian.h>" >>confdefs.h
 
             ax_found=1
 fi
 
 
-
 fi
 
-    if test "$ax_found" = "0"; then :
+    if test "$ax_found" = "0"
+then :
 
-        ac_fn_c_check_header_mongrel "$LINENO" "sys/endian.h" "ac_cv_header_sys_endian_h" "$ac_includes_default"
-if test "x$ac_cv_header_sys_endian_h" = xyes; then :
+        ac_fn_c_check_header_compile "$LINENO" "sys/endian.h" "ac_cv_header_sys_endian_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_endian_h" = xyes
+then :
 
 
-$as_echo "#define INCLUDE_ENDIAN_H <sys/endian.h>" >>confdefs.h
+printf "%s\n" "#define INCLUDE_ENDIAN_H <sys/endian.h>" >>confdefs.h
 
             ax_found=1
 fi
 
 
-
 fi
 
-if test "$ax_found" = "0"; then :
+if test "$ax_found" = "0"
+then :
 
     as_fn_error $? "No header found from list endian.h sys/endian.h" "$LINENO" 5
 
@@ -10261,8 +10974,8 @@ _ACEOF
     case $ac_val in #(
     *${as_nl}*)
       case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+      *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       esac
       case $ac_var in #(
       _ | IFS | as_nl) ;; #(
@@ -10292,15 +11005,15 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
      /^ac_cv_env_/b end
      t clear
      :clear
-     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+     s/^\([^=]*\)=\(.*[{}].*\)$/test ${\1+y} || &/
      t end
      s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
      :end' >>confcache
 if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
   if test -w "$cache_file"; then
     if test "x$cache_file" != "x/dev/null"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
+printf "%s\n" "$as_me: updating cache $cache_file" >&6;}
       if test ! -f "$cache_file" || test -h "$cache_file"; then
 	cat confcache >"$cache_file"
       else
@@ -10314,8 +11027,8 @@ $as_echo "$as_me: updating cache $cache_file" >&6;}
       fi
     fi
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
+printf "%s\n" "$as_me: not updating unwritable cache $cache_file" >&6;}
   fi
 fi
 rm -f confcache
@@ -10332,7 +11045,7 @@ U=
 for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
   # 1. Remove the extension, and $U if already installed.
   ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
-  ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
+  ac_i=`printf "%s\n" "$ac_i" | sed "$ac_script"`
   # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
   #    will be set to the directory where LIBOBJS objects are built.
   as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
@@ -10348,8 +11061,8 @@ LTLIBOBJS=$ac_ltlibobjs
 ac_write_fail=0
 ac_clean_files_save=$ac_clean_files
 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
+printf "%s\n" "$as_me: creating $CONFIG_STATUS" >&6;}
 as_write_fail=0
 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
 #! $SHELL
@@ -10372,14 +11085,16 @@ cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+as_nop=:
+if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
-else
+else $as_nop
   case `(set -o) 2>/dev/null` in #(
   *posix*) :
     set -o posix ;; #(
@@ -10389,46 +11104,46 @@ esac
 fi
 
 
+
+# Reset variables that may have inherited troublesome values from
+# the environment.
+
+# IFS needs to be set, to space, tab, and newline, in precisely that order.
+# (If _AS_PATH_WALK were called with IFS unset, it would have the
+# side effect of setting IFS to empty, thus disabling word splitting.)
+# Quoting is to prevent editors from complaining about space-tab.
 as_nl='
 '
 export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in #(
-      *"$as_nl"*)
-	expr "X$arg" : "X\\(.*\\)$as_nl";
-	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
+IFS=" ""	$as_nl"
+
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# Ensure predictable behavior from utilities with locale-dependent output.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# We cannot yet rely on "unset" to work, but we need these variables
+# to be unset--not just set to an empty or harmless value--now, to
+# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh).  This construct
+# also avoids known problems related to "unset" and subshell syntax
+# in other old shells (e.g. bash 2.01 and pdksh 5.2.14).
+for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH
+do eval test \${$as_var+y} \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
+
+# Ensure that fds 0, 1, and 2 are open.
+if (exec 3>&0) 2>/dev/null; then :; else exec 0</dev/null; fi
+if (exec 3>&1) 2>/dev/null; then :; else exec 1>/dev/null; fi
+if (exec 3>&2)            ; then :; else exec 2>/dev/null; fi
 
 # The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
+if ${PATH_SEPARATOR+false} :; then
   PATH_SEPARATOR=:
   (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
     (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
@@ -10437,13 +11152,6 @@ if test "${PATH_SEPARATOR+set}" != set; then
 fi
 
 
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" ""	$as_nl"
-
 # Find who we are.  Look in the path if we contain no directory separator.
 as_myself=
 case $0 in #((
@@ -10452,8 +11160,12 @@ case $0 in #((
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    test -r "$as_dir$0" && as_myself=$as_dir$0 && break
   done
 IFS=$as_save_IFS
 
@@ -10465,30 +11177,10 @@ if test "x$as_myself" = x; then
   as_myself=$0
 fi
 if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+  printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
   exit 1
 fi
 
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
 
 # as_fn_error STATUS ERROR [LINENO LOG_FD]
@@ -10501,13 +11193,14 @@ as_fn_error ()
   as_status=$1; test $as_status -eq 0 && as_status=1
   if test "$4"; then
     as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
   fi
-  $as_echo "$as_me: error: $2" >&2
+  printf "%s\n" "$as_me: error: $2" >&2
   as_fn_exit $as_status
 } # as_fn_error
 
 
+
 # as_fn_set_status STATUS
 # -----------------------
 # Set $? to STATUS, without forking.
@@ -10534,18 +11227,20 @@ as_fn_unset ()
   { eval $1=; unset $1;}
 }
 as_unset=as_fn_unset
+
 # as_fn_append VAR VALUE
 # ----------------------
 # Append the text in VALUE to the end of the definition contained in VAR. Take
 # advantage of any shell optimizations that allow amortized linear growth over
 # repeated appends, instead of the typical quadratic growth present in naive
 # implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null
+then :
   eval 'as_fn_append ()
   {
     eval $1+=\$2
   }'
-else
+else $as_nop
   as_fn_append ()
   {
     eval $1=\$$1\$2
@@ -10557,12 +11252,13 @@ fi # as_fn_append
 # Perform arithmetic evaluation on the ARGs, and store the result in the
 # global $as_val. Take advantage of shells that can avoid forks. The arguments
 # must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null
+then :
   eval 'as_fn_arith ()
   {
     as_val=$(( $* ))
   }'
-else
+else $as_nop
   as_fn_arith ()
   {
     as_val=`expr "$@" || test $? -eq 1`
@@ -10593,7 +11289,7 @@ as_me=`$as_basename -- "$0" ||
 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
 	 X"$0" : 'X\(//\)$' \| \
 	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
+printf "%s\n" X/"$0" |
     sed '/^.*\/\([^/][^/]*\)\/*$/{
 	    s//\1/
 	    q
@@ -10615,6 +11311,10 @@ as_cr_Letters=$as_cr_letters$as_cr_LETTERS
 as_cr_digits='0123456789'
 as_cr_alnum=$as_cr_Letters$as_cr_digits
 
+
+# Determine whether it's possible to make 'echo' print without a newline.
+# These variables are no longer used directly by Autoconf, but are AC_SUBSTed
+# for compatibility with existing Makefiles.
 ECHO_C= ECHO_N= ECHO_T=
 case `echo -n x` in #(((((
 -n*)
@@ -10628,6 +11328,12 @@ case `echo -n x` in #(((((
   ECHO_N='-n';;
 esac
 
+# For backward compatibility with old third-party macros, we provide
+# the shell variables $as_echo and $as_echo_n.  New code should use
+# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively.
+as_echo='printf %s\n'
+as_echo_n='printf %s'
+
 rm -f conf$$ conf$$.exe conf$$.file
 if test -d conf$$.dir; then
   rm -f conf$$.dir/conf$$.file
@@ -10669,7 +11375,7 @@ as_fn_mkdir_p ()
     as_dirs=
     while :; do
       case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+      *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
       *) as_qdir=$as_dir;;
       esac
       as_dirs="'$as_qdir' $as_dirs"
@@ -10678,7 +11384,7 @@ $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 	 X"$as_dir" : 'X\(//\)[^/]' \| \
 	 X"$as_dir" : 'X\(//\)$' \| \
 	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
+printf "%s\n" X"$as_dir" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -10741,7 +11447,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # values after options handling.
 ac_log="
 This file was extended by Xen Hypervisor Tools $as_me 4.18, which was
-generated by GNU Autoconf 2.69.  Invocation command line was
+generated by GNU Autoconf 2.71.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
   CONFIG_HEADERS  = $CONFIG_HEADERS
@@ -10800,14 +11506,16 @@ Report bugs to <xen-devel@lists.xen.org>.
 Xen Hypervisor Tools home page: <https://www.xen.org/>."
 
 _ACEOF
+ac_cs_config=`printf "%s\n" "$ac_configure_args" | sed "$ac_safe_unquote"`
+ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\''/g"`
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
+ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
 Xen Hypervisor Tools config.status 4.18
-configured by $0, generated by GNU Autoconf 2.69,
+configured by $0, generated by GNU Autoconf 2.71,
   with options \\"\$ac_cs_config\\"
 
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2021 Free Software Foundation, Inc.
 This config.status script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it."
 
@@ -10846,15 +11554,15 @@ do
   -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
     ac_cs_recheck=: ;;
   --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
-    $as_echo "$ac_cs_version"; exit ;;
+    printf "%s\n" "$ac_cs_version"; exit ;;
   --config | --confi | --conf | --con | --co | --c )
-    $as_echo "$ac_cs_config"; exit ;;
+    printf "%s\n" "$ac_cs_config"; exit ;;
   --debug | --debu | --deb | --de | --d | -d )
     debug=: ;;
   --file | --fil | --fi | --f )
     $ac_shift
     case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
     '') as_fn_error $? "missing file argument" ;;
     esac
     as_fn_append CONFIG_FILES " '$ac_optarg'"
@@ -10862,7 +11570,7 @@ do
   --header | --heade | --head | --hea )
     $ac_shift
     case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
     esac
     as_fn_append CONFIG_HEADERS " '$ac_optarg'"
     ac_need_defaults=false;;
@@ -10871,7 +11579,7 @@ do
     as_fn_error $? "ambiguous option: \`$1'
 Try \`$0 --help' for more information.";;
   --help | --hel | -h )
-    $as_echo "$ac_cs_usage"; exit ;;
+    printf "%s\n" "$ac_cs_usage"; exit ;;
   -q | -quiet | --quiet | --quie | --qui | --qu | --q \
   | -silent | --silent | --silen | --sile | --sil | --si | --s)
     ac_cs_silent=: ;;
@@ -10899,7 +11607,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 if \$ac_cs_recheck; then
   set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
   shift
-  \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
+  \printf "%s\n" "running CONFIG_SHELL=$SHELL \$*" >&6
   CONFIG_SHELL='$SHELL'
   export CONFIG_SHELL
   exec "\$@"
@@ -10913,7 +11621,7 @@ exec 5>>config.log
   sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
 ## Running $as_me. ##
 _ASBOX
-  $as_echo "$ac_log"
+  printf "%s\n" "$ac_log"
 } >&5
 
 _ACEOF
@@ -10965,8 +11673,8 @@ done
 # We use the long form for the default assignment because of an extremely
 # bizarre bug on SunOS 4.1.3.
 if $ac_need_defaults; then
-  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
+  test ${CONFIG_FILES+y} || CONFIG_FILES=$config_files
+  test ${CONFIG_HEADERS+y} || CONFIG_HEADERS=$config_headers
 fi
 
 # Have a temporary directory for convenience.  Make it in the build tree
@@ -11302,7 +12010,7 @@ do
 	   esac ||
 	   as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
       esac
-      case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
+      case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
       as_fn_append ac_file_inputs " '$ac_f'"
     done
 
@@ -11310,17 +12018,17 @@ do
     # use $as_me), people would be surprised to read:
     #    /* config.h.  Generated by config.status.  */
     configure_input='Generated from '`
-	  $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
+	  printf "%s\n" "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
 	`' by configure.'
     if test x"$ac_file" != x-; then
       configure_input="$ac_file.  $configure_input"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
+printf "%s\n" "$as_me: creating $ac_file" >&6;}
     fi
     # Neutralize special characters interpreted by sed in replacement strings.
     case $configure_input in #(
     *\&* | *\|* | *\\* )
-       ac_sed_conf_input=`$as_echo "$configure_input" |
+       ac_sed_conf_input=`printf "%s\n" "$configure_input" |
        sed 's/[\\\\&|]/\\\\&/g'`;; #(
     *) ac_sed_conf_input=$configure_input;;
     esac
@@ -11337,7 +12045,7 @@ $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 	 X"$ac_file" : 'X\(//\)[^/]' \| \
 	 X"$ac_file" : 'X\(//\)$' \| \
 	 X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
+printf "%s\n" X"$ac_file" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -11361,9 +12069,9 @@ $as_echo X"$ac_file" |
 case "$ac_dir" in
 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 *)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+  ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`
   # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+  ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
   case $ac_top_builddir_sub in
   "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
   *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -11420,8 +12128,8 @@ ac_sed_dataroot='
 case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
 *datarootdir*) ac_datarootdir_seen=yes;;
 *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+printf "%s\n" "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
   ac_datarootdir_hack='
@@ -11464,9 +12172,9 @@ test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
   { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
   { ac_out=`sed -n '/^[	 ]*datarootdir[	 ]*:*=/p' \
       "$ac_tmp/out"`; test -z "$ac_out"; } &&
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 which seems to be undefined.  Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 which seems to be undefined.  Please make sure it is defined" >&2;}
 
   rm -f "$ac_tmp/stdin"
@@ -11482,20 +12190,20 @@ which seems to be undefined.  Please make sure it is defined" >&2;}
   #
   if test x"$ac_file" != x-; then
     {
-      $as_echo "/* $configure_input  */" \
+      printf "%s\n" "/* $configure_input  */" >&1 \
       && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
     } >"$ac_tmp/config.h" \
       || as_fn_error $? "could not create $ac_file" "$LINENO" 5
     if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$as_me: $ac_file is unchanged" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
+printf "%s\n" "$as_me: $ac_file is unchanged" >&6;}
     else
       rm -f "$ac_file"
       mv "$ac_tmp/config.h" "$ac_file" \
 	|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
     fi
   else
-    $as_echo "/* $configure_input  */" \
+    printf "%s\n" "/* $configure_input  */" >&1 \
       && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
       || as_fn_error $? "could not create -" "$LINENO" 5
   fi
@@ -11536,7 +12244,8 @@ if test "$no_create" != yes; then
   $ac_cs_success || as_fn_exit 1
 fi
 if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
 fi
 
+
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 17:31:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 17:31:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599686.935211 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfkks-00022t-Hm; Mon, 11 Sep 2023 17:31:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599686.935211; Mon, 11 Sep 2023 17:31:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfkks-00022m-Ec; Mon, 11 Sep 2023 17:31:22 +0000
Received: by outflank-mailman (input) for mailman id 599686;
 Mon, 11 Sep 2023 17:31:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=nwba=E3=citrix.com=prvs=6119d0f35=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qfkkr-00022g-EG
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 17:31:21 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 03c983a0-50c9-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 19:31:19 +0200 (CEST)
Received: from mail-dm6nam12lp2172.outbound.protection.outlook.com (HELO
 NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.172])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 11 Sep 2023 13:31:16 -0400
Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12)
 by BLAPR03MB5412.namprd03.prod.outlook.com (2603:10b6:208:291::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.32; Mon, 11 Sep
 2023 17:31:14 +0000
Received: from BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912]) by BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 17:31:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 03c983a0-50c9-11ee-8785-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694453479;
  h=message-id:date:from:subject:to:cc:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=XlDx9xJyO2+2E9wQM609HvLG1Z+0ew/N6ZhKWtEKqEQ=;
  b=OZmehEBNaITXld+hHzPxO1x6kXTmX+5Cn4B3nNYdtb2Gcq7N29cmW7Bv
   FFE8rvnTmYJtRMBSvlFwugA7oOtiqkd77UnZraSWOtvh1fPP427tYkcLj
   xWo5hvGmlG0RTk6CGnztS8ASzxaPrmbp2K+DCI9FY7h4GKZS3/4rtjHqo
   k=;
X-CSE-ConnectionGUID: M2zF8RJgTu6dfTumQeTs5A==
X-CSE-MsgGUID: 2n8S4VlWRr29wWuMJglKeA==
X-IronPort-RemoteIP: 104.47.59.172
X-IronPort-MID: 122304557
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:GcM+OqviZ8CzCxYsMYxVYQURXefnVH9fMUV32f8akzHdYApBsoF/q
 tZmKTqPbqzbZmb8KY1yaYWy8RxU6JDQy9M2TQc+rX0xRHka+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4lv0gnRkPaoQ5A6HziFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwDWofQEC5pe2K3ey3RNVxg/0uENK2FdZK0p1g5Wmx4fcOZ7nmGv+PyfoGmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgf60b4C9lt+iHK25mm6xo
 G7c8nu/KRYdLNGFkhKO8262h/+JliT+MG4XPOTirKUy3ADOmQT/DjVMUwuA/ce9tXSkAYNAF
 FEx2CUqjqUboRnDot7VGkfQTGS/lhwVRdsWFuAg6QeK4qHQ5BuVQGMDS1ZpeNEg8cM7WzEu/
 luIhM/yQyxitqWPTnCQ/avSqim9UQAKKUcSaClCShEKi+QPu6k2hxPLC9pmTqi8i4SvHSmqm
 m/Q6i8jm78UkMgHkb2h+kzKiC6toZ6PSRMp4gLQXSSu6QYRiJOZWrFEIGPztZ5oRLt1hHHY1
 JTYs6ByNNwzMKw=
IronPort-HdrOrdr: A9a23:XIhmdKsPWoOm+2UkOKCsLl777skDXdV00zEX/kB9WHVpm62j5q
 WTdZEgv3LJYVkqNE3I9eruBED4ewKkyXcX2/hyAV7BZmnbUQKTRelfBO3ZrQEIcBeOldK1u5
 0AT0FIMqyVMbErt63HCdGDYq0dKQO8gcaVbDrlvhBQpN1RGtldBtlCe3ymLnE=
X-Talos-CUID: =?us-ascii?q?9a23=3A0FbBhGt+nmxAhuEK7lUzvC536IsAKG/znE3yLHO?=
 =?us-ascii?q?lV2pndKCQcFKs4/5Nxp8=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3AY6IRKw3w+6LElrc/13i2noQzQTUjuaL+Mxwzlao?=
 =?us-ascii?q?8oZPVKhNtHhWSiBe6a9py?=
X-IronPort-AV: E=Sophos;i="6.02,244,1688443200"; 
   d="scan'208";a="122304557"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OrRfGYlS+zyZrphmQZzCqJJFY8MUS+kO9W9/tJ2QLX6HeyceOISU0hBrdrsaJ759KwpVOVi4GsxVgyQ+EctikDlXR5/1NiBg7xU3VIfXC9PgEMzkt9H6ln7gHKq18666qKnJnCKnok1DJgWv37NKLc9+hFcoRaaalrbwJJQyj5oViuAECohfJn+PAZQ4LN1YUQF0INFxY/II8zrugu+Ms/yA8L3c7669SG5GmL7ZkBRqtbLNvGYAxIsDh6QwWZATAwtUl5QerCKyDbXUoQnmQTOmYzspB3Vz/ElDW+JENu1jTp7SFMPXUmj0E+5bZn1oQQqVtv8lZDH67CttNnWRsQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=XlDx9xJyO2+2E9wQM609HvLG1Z+0ew/N6ZhKWtEKqEQ=;
 b=F+2WE/V2wLf+gW/6iOyQeJUHpdIVPoMKq73WivA+6w025Bxbw9dJ/QxM7aJ+aTTOl4draeRrETtFwk+S35Sw8/Vl2W10z9xa2RNaGqwn7VLUFwAUAXguWrVPbGR93ZvBOiP6hjVQKePyxVqHMB+1e2yhyuQ6OquygtcCoGFDcJ1I/t3927EszsSQPvZBEGCp+HbUh8LmUV/qTubK1Im/SiUwnIsi5lbGoPcP+tvd9HSiXxpHeEzZI2VEMrTJdgjKDkLXJRqSmiW+BmO2AjrsVjLCrnLkMIdJnsuvVokOTPadXBBkI1g0Ozd1J4f9cDUTDDn6ypftQqVVirAWh+vwVg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XlDx9xJyO2+2E9wQM609HvLG1Z+0ew/N6ZhKWtEKqEQ=;
 b=uRafvnP76rZFVzT+7S6ml/aBxMFLT+oz15x17SwGLGHeAdvu6Ye0RlcH/EdegK4AydJ1yA5i4MEGcXubUpx05S5tGwB8lATPEwuV/PiCbLFa14Gf6iU9T8MDVBld+HPF746mOaFe+80kudYUXappWuycjrfdXLkyBsrB6uCp3/U=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Message-ID: <7e5acbd0-ae1c-8d7e-9f2f-9444f992417f@citrix.com>
Date: Mon, 11 Sep 2023 18:31:08 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v2] tools/xentrace/xentrace_format: Add python 3
 compatibility
Content-Language: en-GB
To: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>
References: <20230911160701.249853-2-javi.merino@cloud.com>
In-Reply-To: <20230911160701.249853-2-javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: LO4P123CA0496.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1ab::15) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BLAPR03MB5412:EE_
X-MS-Office365-Filtering-Correlation-Id: 27715008-ebd9-42ed-651e-08dbb2ece57f
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oSZ9yHquqtRQvOd0ypoeuEn7+JMEB/n9CbNga5zP5udObOlxBpPVIf9Bb8Ktsr/ovLEUNHGxBVx2xt8WcoXelbzSwCUm2wFyLVhYuzlTg/x0P8dVRjMgCI8ht/STYfQJLFc3rfQfvD9oAetjl3rdIQa22XloyS4/yFYvb+irmjE8KXDuypRUA2W5R/HAOWrPaN1Pq9ksCEmW0GreU/SJawzUM8KbBYV+8r0R8y5WQGvYSvRrPnHfL0GU+DDFqFDM2vhdsk+Jery2xSV7tOjtSQq4al0hbd/dKjYKAVQV/ngy3/PhuaJDOTSAtBwdJ3IlHASO/lKHfdbmzGcEip7FK5wDlEq7W9X0r1wwPfzeYyeVobMpwFJ0P+agrfT4Lm8YMB3u+YYq4w43vyl4LmSclNgNH9KrESK4XjTzEoi8ORXqfFd9nespjTYbRXEJoewmPsMGTYnNDKfgygWM/i0emMWq/iFqeW2ahfajqQcH8RkFrejlcJmPjp91h+z5Ma/pYzN/9twV1ecnjzbmdvbfMoIq1aNRjk884hoGfen5OO5I27Ox/iXf5Vi2DfK9QSV7kvMNGzvpww1Xo6jDaAsDL+UK7evqnWZC70WeCnAVEOh/oTmBufSDRBAeVACKxZq9/NhXoY5jGC7wfNMsFR3lxQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(39860400002)(376002)(346002)(366004)(1800799009)(186009)(451199024)(6666004)(6486002)(6506007)(53546011)(6512007)(478600001)(107886003)(2616005)(2906002)(26005)(54906003)(66476007)(66556008)(66946007)(5660300002)(4326008)(8936002)(8676002)(316002)(36756003)(86362001)(82960400001)(558084003)(31696002)(38100700002)(31686004)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Z0IyN2lpTXVOMmlCTVo4UkE3cDFxcm9sTGI4dG4yWWc2Y2RDQVlud3lhbllp?=
 =?utf-8?B?ZnZrRm9KR0JIYzBQRkgrd0hVM0Jzc25jcTBEd3dkVit5TFF3Rnk3N3dvZWZs?=
 =?utf-8?B?enNlSktLOTJKcy9uVkZPd0hNV2ErSjVkMmpRbS9OQmw2TmVNZFJSeDE3aUxw?=
 =?utf-8?B?N042WngwQ21ORDkwV2h0S282TUlnT0Fad3hSTUZEWllZTUxqekkyQnV6dWFs?=
 =?utf-8?B?SWVKTHk2Q3hkdzFYTGgzRnJWUzN6a1Q0QTM3VFN2N3hXRFF0ZUwvdGV2NVJ4?=
 =?utf-8?B?Z1BkUDF2SWkrUU0zRlJJRmpNQXd4aEJhdy8rRXRMQ083bGZNMXZleG93eG40?=
 =?utf-8?B?WTJHc2tXUytJWENIcUQ3RVBGWTBSb09zT0N1VGdPSkRRSVlhNzZlNjFDNXpn?=
 =?utf-8?B?d0tGcnBqSUpDcHBwK1VtVk4rOE91aWM4OXJLZFhMTVM4RldVaHI5SG90UXVz?=
 =?utf-8?B?WmxVRjNJaFF2RDUyNFdOOE40QUM2NnNhZ2VxaDBqeXh5RXk2Y2dVTXF3Tkk1?=
 =?utf-8?B?VzExenQxdTRBTlZIT25UVDUxSC9BeTVIQzlRbHo2SEF0U3RXOVVoK0pDZUdh?=
 =?utf-8?B?eUs0WUNQa0dudWZJSG12NWF1Nys1UHZmRmlEUWFVYjliSjV6TGRyampTdFhM?=
 =?utf-8?B?L2lPNUUvS2RpbFAwcVBaaWhzWmhvWUt4UlpVak9MUTFrVWpmNUxHQTYwUHJv?=
 =?utf-8?B?M1lzRHYxSVlVMklMYWNJaDFBZVVLNGphZ0FGaUhaeU56TUJjcVdLT0o4cFIy?=
 =?utf-8?B?dlVOYmEwaCtSVEZHamQzVGNvcVh1WHhtR2ZLNllnaXQxQUp1TC9VVTN2WG81?=
 =?utf-8?B?Ty9jNFBqcGtTZ3RtWnNBeDFndlRwenhuZWdLWTNFYnhtdHhwT3RINFp0YUZh?=
 =?utf-8?B?QUw0MXpNZThJOU1meGEzNWVmU0t0cWZZQmJ3RVEwQ3QwMHBjc09pOG9OS3E2?=
 =?utf-8?B?OVROanJtVitraVh0NXdqVEtBM1VKZmx4VFp6SDd4ZlBnekI1MUsxZkZSMjM3?=
 =?utf-8?B?eDNieDdsVDVJMGhPV283a3RHYzNwempySXdJelBRZ3RYTGVOaE9BM1RnZFk3?=
 =?utf-8?B?bnZnRWtIaGU2aHozN00rd3hvWmRjM25YMFRTREo1L25GeUgzTm1CdlJGTDRV?=
 =?utf-8?B?N0RONlJjMTlONzJSQVp5YW9jSjltL29idnpiRGtKclh1QnhLSGs3dy9VT2k3?=
 =?utf-8?B?Z3ZtWEsyL0luQmhWYmFxcWloek04K2dZTHBuRkVueGVHTTc1bWVyMFRiSGp1?=
 =?utf-8?B?NWt2V1ZSWEpvV1NUNnZQT2ptV2FBdW5xcHNYVWxDNVNSV3ozZDFMWGxtblVw?=
 =?utf-8?B?M1JXM1V3UTdIa093ZytTZzE5V0pFc1EvS1JabEpXY3dFekU5VklGRDhieG5I?=
 =?utf-8?B?eXVJUHRYODVqdHMwL3RWN3l0NU9VZmIyVDZrTzZVTVJPYjZnb2tUMXVWZ01j?=
 =?utf-8?B?a2JOZlRyUUduNkhLaFhwUG4wbkNXV3BnQVdUVURlS2J2SzcxRFpObERJekR4?=
 =?utf-8?B?VURSVHlxTXNadDZTeXc0UDFkNWVkZkpEUHNBanRod0RPRGMxWGRBZm5vb0M0?=
 =?utf-8?B?NDlPVnRCU0RMaWk5RHZkcDhsNFY4UWRpSDYzS3czTzZOYkRqRVZmZXhhSEJ6?=
 =?utf-8?B?eEpwZFd6L0dEdGpHdVkvUXhoOXpldmlSUE1Oa3MvNW9HcFZUNSt2ZWJPd3FU?=
 =?utf-8?B?L3lWN0lCeFM0VDdXNDRzL1NSb1ZDMUZHZGJWOUlVK2ZramJPbFBYemU0dmNB?=
 =?utf-8?B?MmpXbjZ6ekdJRzBhamhkWDdQbmdyL3RmQkJOTUF4UzNxT0RoQ0NKdlIyYkxC?=
 =?utf-8?B?U0MwTmh3SmdrbzVsZ1QwMnQwQXFyZUxEVHJ5TVFSTDJMdDI4YUJPcmlmVjk4?=
 =?utf-8?B?NDlNT0RRQzJ0dTJOaFNLcHBRT256RWVmajhKMGtwelhCMzNVeHpiVU1XN01x?=
 =?utf-8?B?bTU2VllaSXo2NC9UMjFnQ0xFRzhMd05MRDE5TVRoSzJDL2lPNHB6UUc4ME81?=
 =?utf-8?B?a0l4ODRmbjduVG4rSTc3QnBKVUpIamhycW1YMGhIaWttaFFmMDJxQ1ZscERi?=
 =?utf-8?B?cFNHMkJGWGUyU29nbkpCc0F3RTNhS0JzTDNnWjdnN0labTlMbGp5S0dMK241?=
 =?utf-8?B?cmk0Yk12RnBBNnBGVStsLys4aEtkVXlqcHRyWE5TWEJ3SzBQdkZCSXNjSXVK?=
 =?utf-8?B?S0E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	58SbBMNde09H/xVA0h9LI0q/IeNgQ6V0Vfrrq4TKMqmJe9wlIslqNW1g61YW5YvE6SQKw8mHq1yWvtL3n3zmnf9WxQGSvUdI8Oy1ZCa5sKK2w3bMKUa4QK+U/zMja0CeKYH3RsTvufw69zRj6Pz/bdaiGasZ7cmCakZB5/DI1dvYOxuWQI3bb/9leYRc1oEDUbUmbBBTR4ZwIZJDkbZdu5M6crf6k8eIZJ5WTHLKJprORB2lF26vPlUmiOPpdlaWsy25QcOg6tylPsIezijvydHvRr4CpKA6L4O4KNkRFZg20HQoPA8ekavJv7cbcJbaw7gliO607R49Jw1X4pQAsuDte7X8pnmPRfS5L9tTeUfblh/EcVQmwIB54rCsMFpJ/fYjUjSdo4YPlRMptaPhpGCoNapQ+PTWAGhRc8F6hW5HBjZtHuTqyfN/ODH9x1IredjXHnfpI3ou/7e/I5RFGxwWpf7rnsjKpvBdBb9cqM4ZTUyksZw/449CoGbwTjCzXspaUZxVvjBf9nHMB0G+YZ8KEo1rjGHvbzBer8Kx8mqAjoRjpoQV67u0itJ4KR8qXYLH6UXKXKCAnB3xdhyJVBAw5zX6XGHrpeSNlWk6quWshK6NM1CCXniCsx8ioEknZehPvT0wsT4THwaz7SsTGcZff5lv4Oi29Qm55hMy8EEs3F9L9fivl3jJ6KUiLARIEynk4MBvD91HHqQmmqcoeMVvTc4RxT6+rdaM58ujd+Gf63ostdQ8udtgAW2kdD45OycLwHQCONwFZZ1MOFpDT/Yb2vqUldNdmcd7gat6AVbYKyAxdnePrwHMALacQh83Aw+SqF5WsCrvIhYJphx0qw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 27715008-ebd9-42ed-651e-08dbb2ece57f
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 17:31:13.9107
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: y4jA5ovoQmLU7i/WB2TFy6EfM9ZZ02QAPGXylavz21SjSxu+fPt3r61i1X7fRni5RM3A25SLj4Ild9lTT4XKIRPscui+bbg11kYN1iSZzUw=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR03MB5412

On 11/09/2023 5:07 pm, Javi Merino wrote:
> Resolves: xen-project/xen#155
>
> Signed-off-by: Javi Merino <javi.merino@cloud.com>

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 17:50:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 17:50:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599692.935222 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfl2z-0006qn-2z; Mon, 11 Sep 2023 17:50:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599692.935222; Mon, 11 Sep 2023 17:50:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfl2y-0006q4-TW; Mon, 11 Sep 2023 17:50:04 +0000
Received: by outflank-mailman (input) for mailman id 599692;
 Mon, 11 Sep 2023 17:50:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0Yi3=E3=linaro.org=alex.bennee@srs-se1.protection.inumbo.net>)
 id 1qfl2x-0006T5-6p
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 17:50:03 +0000
Received: from mail-wr1-x433.google.com (mail-wr1-x433.google.com
 [2a00:1450:4864:20::433])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a11fb0a1-50cb-11ee-9b0d-b553b5be7939;
 Mon, 11 Sep 2023 19:50:00 +0200 (CEST)
Received: by mail-wr1-x433.google.com with SMTP id
 ffacd0b85a97d-31c4d5bd69cso4888553f8f.3
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 10:50:00 -0700 (PDT)
Received: from zen.linaroharston ([85.9.250.243])
 by smtp.gmail.com with ESMTPSA id
 f8-20020adff588000000b0030ae53550f5sm10748962wro.51.2023.09.11.10.49.59
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 10:49:59 -0700 (PDT)
Received: from zen (localhost [127.0.0.1])
 by zen.linaroharston (Postfix) with ESMTP id 484921FFBB;
 Mon, 11 Sep 2023 18:49:59 +0100 (BST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a11fb0a1-50cb-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694454600; x=1695059400; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:in-reply-to:date
         :subject:cc:to:from:user-agent:references:from:to:cc:subject:date
         :message-id:reply-to;
        bh=rmmhkTlkET3a5MfSU++LiQw+rki5ezPn5mesYA13vjQ=;
        b=s+srD6v7LxCck/1GRXm+33lkYX2WlxB/R4NMJofXn9EjLkP2kZVtxq9hbz5R9axJXl
         ZJX8e2w4XOLxbXDE4MXwytqmyELxfn+gR4QaCZfSBv1d9O1JCbUgNU8UUsbLYVr3+UHL
         glAc0CrtyNr9eeY/C9DkiaGDjoUo4u6tlNM/GzYl1j9zS+aJVM2vuqNZ/NKzf4e0rXSE
         69fFzjf0XYyeABE4IXPVMEPj4QPI3N2ZkxpF3T5n7UJKxr1gvINQn6Mzo8x2Ma7szMik
         UWqjuaKVzwe0CsuPLDTZUwHWQ50Spx92yJ1MQrWDCcj6oEhgFIMUydjZxB/O/oFqEInh
         kZkQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694454600; x=1695059400;
        h=content-transfer-encoding:mime-version:message-id:in-reply-to:date
         :subject:cc:to:from:user-agent:references:x-gm-message-state:from:to
         :cc:subject:date:message-id:reply-to;
        bh=rmmhkTlkET3a5MfSU++LiQw+rki5ezPn5mesYA13vjQ=;
        b=UBNDs7yqbl1zAB04OPIR1KWp/EfNfDqmGbo8UwLsLTOqbPYo773ZjqK+7cXkojwMnI
         ZZ97hi8dkxFyqb2/0cLfS5qlLtLQ28VUzutmzq52jq3cuU9ANfJWJ7k1jb4wuQz5rWJn
         tq+anMpBSmtsGoS8ENREtUbFaxyWco+wEACXsrMWWeW9lZU/fuprS8hPfGLoUitg2eAW
         2LCG7Mgfh4Ji7ydvSJ2vJnI2x3O9d0/TWvxSuz7HpIrO7uKw3PInNcw+X3X0erESzhcK
         k4bew6iSGCUaGRW5OpfpcwyftsVgU8K1onWyp8rUZiOT5KfRU4vsgUptQ1J02XKqhMk+
         +MHg==
X-Gm-Message-State: AOJu0YwA2/z7c/ZMH1FZPuh5kLWHp4Gk2yXDSOgJjc6GC9AGP9ehBnNp
	sa9JrD8mWiHi3pZjtFczC6Zz4w==
X-Google-Smtp-Source: AGHT+IHBY6i/8qE64TgCqFlQcDGg1T8I3lT/xERbUXTwlHyoZAAzpTqxzlpsllGn+zZjfcOG6v/d0g==
X-Received: by 2002:adf:fec3:0:b0:317:6b0d:1b1 with SMTP id q3-20020adffec3000000b003176b0d01b1mr8113916wrs.4.1694454600100;
        Mon, 11 Sep 2023 10:50:00 -0700 (PDT)
References: <20230902151351.10325-1-javi.merino@cloud.com>
 <ce6e7abd-40ee-dd9e-b17c-10c39ca0e422@suse.com>
 <87y1hcogg2.fsf@linaro.org>
 <7975f360-9608-3495-67ed-1dbfec330668@suse.com>
User-agent: mu4e 1.11.17; emacs 29.1.50
From: Alex =?utf-8?Q?Benn=C3=A9e?= <alex.bennee@linaro.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: Javi Merino <javi.merino@cloud.com>, Henry Wang <Henry.Wang@arm.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH] coverage: update gcov info for newer versions of gcc
Date: Mon, 11 Sep 2023 18:43:16 +0100
In-reply-to: <7975f360-9608-3495-67ed-1dbfec330668@suse.com>
Message-ID: <87pm2oob08.fsf@linaro.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


Jan Beulich <jbeulich@suse.com> writes:

> On 11.09.2023 17:26, Alex Benn=C3=A9e wrote:
>> Jan Beulich <jbeulich@suse.com> writes:
>>> On 02.09.2023 17:11, Javi Merino wrote:
>>>> --- a/xen/common/coverage/Makefile
>>>> +++ b/xen/common/coverage/Makefile
>>>> @@ -5,7 +5,9 @@ obj-y +=3D $(call cc-ifversion,-lt,0407, \
>>>>  		gcc_3_4.o, $(call cc-ifversion,-lt,0409, \
>>=20
>> This isn't even supported, see below:
>>=20
>>>>  		gcc_4_7.o, $(call cc-ifversion,-lt,0500, \
>>>>  		gcc_4_9.o, $(call cc-ifversion,-lt,0700, \
>>>> -		gcc_5.o, gcc_7.o))))
>>>> +		gcc_5.o, $(call cc-ifversion,-lt,1000, \
>>>> +		gcc_7.o,  $(call cc-ifversion,-lt,1200, \
>>>> +		gcc_10.o, gcc_12.o))))))
>>>
>>> This is getting unwieldy, so I think we ought to try to limit the number
>>> of different files we have. Already gcc_4_9.c and gcc_7.c specify the
>>> same GCOV_COUNTERS and differ only in the version checks (which could be
>>> combined). Therefore ...
>>=20
>> You may want to consider your policy on supported GCC versions. I see
>> you still support:
>>=20
>>     * C compiler and linker:
>>       - For x86:
>>         - GCC 4.1.2_20070115 or later
>>         - GNU Binutils 2.16.91.0.5 or later
>>         or
>>         - Clang/LLVM 3.5 or later
>>       - For ARM 32-bit:
>>         - GCC 4.9 or later
>>         - GNU Binutils 2.24 or later
>>       - For ARM 64-bit:
>>         - GCC 5.1 or later
>>         - GNU Binutils 2.24 or later
>>=20
>> While also having some commented out warnings because the base GCC is so=
 old:
>>=20
>>   CFLAGS   +=3D -Wmissing-prototypes
>>   # (gcc 4.3x and later)   -Wconversion -Wno-sign-conversion
>>=20
>> For reference QEMU's minimum GCC is 7.4
>>=20
>>   if compiler.get_id() =3D=3D 'gcc' and compiler.version().version_compa=
re('>=3D7.4')
>>=20
>> and while our support cycle is based off distro LTS releases I have to
>> wonder do you actually need to support users building the
>> latest/greatest version of the hypervisor on ancient user-spaces with
>> old compilers?
>>=20
>> I think the oldest distro you have in your CI is jessie (still hanging
>> on with extended LTS support) and that uses GCC 4.9.
>>=20
>> I see there are various scripts to gather support status into the
>> documentation but I couldn't find a general statement on the projects
>> overall approach to supported versions of components.
>
> That's the problem - we've been intending to raise the baseline for quite
> some time, but figuring at least a rule of thumb by which to go both now
> and in the future turns out problematic.

FWIW QEMU states:

  The project aims to support the most recent major version at all times
  for up to five years after its initial release. Support for the
  previous major version will be dropped 2 years after the new major
  version is released or when the vendor itself drops support, whichever
  comes first. In this context, third-party efforts to extend the
  lifetime of a distro are not considered, even when they are endorsed
  by the vendor (eg. Debian LTS); the same is true of repositories that
  contain packages backported from later releases (e.g. Debian
  backports). Within each major release, only the most recent minor
  release is considered.

  For the purposes of identifying supported software versions available
  on Linux, the project will look at CentOS, Debian, Fedora, openSUSE,
  RHEL, SLES and Ubuntu LTS. Other distros will be assumed to ship
  similar software versions.

We also make some specific statements about python runtimes and optional
dependencies. Again this is perhaps easier for us as a user-space
program but it's worthwhile writing something up as a policy even if you
find you need to tweak it later. We also document our feature
deprecation policy and what has been removed.

If you want to crib anything from QEMU as an initial stab at it please
see:

  https://qemu.readthedocs.io/en/master/about/index.html

(this is docs/about/ in our source tree).

>
> Jan


--=20
Alex Benn=C3=A9e
Virtualisation Tech Lead @ Linaro


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 17:52:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 17:52:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599698.935231 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfl4v-0007YM-BP; Mon, 11 Sep 2023 17:52:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599698.935231; Mon, 11 Sep 2023 17:52:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfl4v-0007YF-8m; Mon, 11 Sep 2023 17:52:05 +0000
Received: by outflank-mailman (input) for mailman id 599698;
 Mon, 11 Sep 2023 17:52:04 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=AVcC=E3=invisiblethingslab.com=simon@srs-se1.protection.inumbo.net>)
 id 1qfl4t-0007Y9-Tp
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 17:52:04 +0000
Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com
 [66.111.4.25]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e73effa5-50cb-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 19:52:01 +0200 (CEST)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.46])
 by mailout.nyi.internal (Postfix) with ESMTP id DA6475C00C2;
 Mon, 11 Sep 2023 13:51:57 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute2.internal (MEProxy); Mon, 11 Sep 2023 13:51:57 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 11 Sep 2023 13:51:54 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e73effa5-50cb-11ee-8785-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm1; t=
	1694454717; x=1694541117; bh=xJM8rof2GKKmeP61VX43KTn7lIDQhIomEcC
	pgtCeu6g=; b=SmP0A7SVC5+ocEaPbowt6TmHjZB5GhLl69aZB+b/m4dumWBiab+
	273gH85H5+9brBXnyeCqPqAy31tQ39gFeHkfZLzJrYOs8NpFi7emzWO8BggZ+Exw
	lcxOrJC1Bsve84fxvZp8k0TJmuqIu70ErO8CeTG1FWxFNU3N+X08Pyefs94JQSy5
	Vscyd7rdzBU6cPZtoKo6BUWFnZXL1kfJFzJFxJXR9618p7qq13hobm5nD1EQDYGP
	rt6itmNc/fjasLB5a9Ij32z6SI7CI7jdlo+p/zd8prMNi5UokgAs3IwHKZsDu2Dx
	oEz+vSq1nKcaof5MsMXgQWS4jiVavYKm/WA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm1; t=1694454717; x=1694541117; bh=xJM8rof2GKKme
	P61VX43KTn7lIDQhIomEcCpgtCeu6g=; b=q093vNvjfwAfQsMgB9LVu5+r6D0PG
	anlmLnHhm8iYt3fmc55pOXf4GgfVHKyTmX6FaIZoNpnxP26E85TRlyPvE6/7Tzz+
	IoAi9aSRi7lbQbVIJgDN0aGm9jV3Yue7q04Ho9zYZB8+PQJSf98cAg8p3k3KtoVn
	aqIWay5UyP99JtSWAfFHtDvoaLvT9x2nIkGAlz3KoiO8dmYD/nwTwjhh0XPxOXXp
	Z/aZYUba6THkv2uOrd9z4RBLnvwwUv2gtGaMzPLIlQYpL0xhnIYps4MBg7m5VU/C
	gQiYRfX3fNKXShHCuBeeBGtT6406GlmjJPX0S+nOCaQtHpMIRi+lFjudw==
X-ME-Sender: <xms:vVP_ZEnnqYblgTvAGlSTZDqsHJiTjx82qABvjn8KT364El-OPWP3eA>
    <xme:vVP_ZD0sZcnwSo2jZsLB8RlZznl5_O3WrVYjr_ekxVpT42zsHSQioF_rQDQ2GF5zd
    bf039MR6dLmzss>
X-ME-Received: <xmr:vVP_ZCr8bkvH7uwMHliTs1YugRL-8zndES47JYfZyO2F_vo1w44FnAljheG_E9j_>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudeigedgudduiecutefuodetggdotefrod
    ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
    necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
    enucfjughrpefkffgguffvvehfhfgjtgesghdtreertddtjeenucfhrhhomhepufhimhho
    nhcuifgrihhsvghruceoshhimhhonhesihhnvhhishhisghlvghthhhinhhgshhlrggsrd
    gtohhmqeenucggtffrrghtthgvrhhnpeegfeetjedvuefghedtleevgedvtddvffektefg
    vdejhfdvffehtefgvedujeejfeenucffohhmrghinhepuhgvfhhirdhorhhgpdhkvghrnh
    gvlhdrohhrghenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhr
    ohhmpehsihhmohhnsehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:vVP_ZAmGavw6k8w-KZzQYtsu2PMfHujOgrGdly6yhrdqYdPe16qPyg>
    <xmx:vVP_ZC3sVsgZAZAcawgnZ_HEDFcpRjOS-pOXNaok8fVthr-QENb0iA>
    <xmx:vVP_ZHuZlaUKCrm36BXFMVYERh01-1wcmIQSZLEyHZpuhllsDAVmvQ>
    <xmx:vVP_ZHyTC7ybj9Whb6cs-b0HYzinyb6kDPLhXjNIoKOGjsUDcOJOkw>
Feedback-ID: idc5945a3:Fastmail
Message-ID: <46959668-24b2-bf7e-7535-9fc47fcfc5e0@invisiblethingslab.com>
Date: Mon, 11 Sep 2023 19:51:24 +0200
MIME-Version: 1.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries marked as unusable when
 parsing MADT
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
References: <20230911101238.18005-1-simon@invisiblethingslab.com>
 <2a19aef4-8bd6-ef8e-de4b-b85135dc7ea4@suse.com>
Content-Language: en-US
From: Simon Gaiser <simon@invisiblethingslab.com>
In-Reply-To: <2a19aef4-8bd6-ef8e-de4b-b85135dc7ea4@suse.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------fuPJqSqlgMgfFxJdfAjmvk3x"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------fuPJqSqlgMgfFxJdfAjmvk3x
Content-Type: multipart/mixed; boundary="------------WWBAFW3CNVMXS9nRhqLY2vxl";
 protected-headers="v1"
From: Simon Gaiser <simon@invisiblethingslab.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
Message-ID: <46959668-24b2-bf7e-7535-9fc47fcfc5e0@invisiblethingslab.com>
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries marked as unusable when
 parsing MADT
References: <20230911101238.18005-1-simon@invisiblethingslab.com>
 <2a19aef4-8bd6-ef8e-de4b-b85135dc7ea4@suse.com>
In-Reply-To: <2a19aef4-8bd6-ef8e-de4b-b85135dc7ea4@suse.com>

--------------WWBAFW3CNVMXS9nRhqLY2vxl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Jan Beulich:
> On 11.09.2023 12:12, Simon Gaiser wrote:
>> Up to version 6.2 Errata B [2] the ACPI spec only defines
>> ACPI_MADT_ENABLE as:
>>
>>     If zero, this processor is unusable, and the operating system
>>     support will not attempt to use it.
>>
>> The bit that later will be ACPI_MADT_ONLINE_CAPABLE is reserved with
>> "Must be zero".
>>
>> Version 6.3 [3] then adds ACPI_MADT_ONLINE_CAPABLE and changes the
>> meaning of ACPI_MADT_ENABLE:
>>
>>     Enabled
>>         If this bit is set the processor is ready for use. If this bit=

>>         is clear and the Online Capable bit is set, system hardware
>>         supports enabling this processor during OS runtime. If this bi=
t
>>         is clear and the Online Capable bit is also clear, this
>>         processor is unusable, and OSPM shall ignore the contents of t=
he
>>         Processor Local APIC Structure.
>>
>>     Online Capbable
>>         The information conveyed by this bit depends on the value of t=
he
>>         Enabled bit. If the Enabled bit is set, this bit is reserved a=
nd
>>         must be zero. Otherwise, if this this bit is set, system
>>         hardware supports enabling this processor during OS runtime.
>>
>> So with conforming firmwares it should be safe to simply ignore the
>> entry if !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE
>>
>> As a precaution against buggy firmwares this change, like Linux [4],
>> ignores ACPI_MADT_ONLINE_CAPABLE completely if MADT revision < 5. Note=

>> that the MADT revision was already increased to 5 with spec version 6.=
2
>> Errata A [1], so before introducing the online capable flag. But it
>> wasn't changed for the new flag, so this is the best we can do here.
>>
>> For previous discussion see thread [5].
>>
>> Link: http://www.uefi.org/sites/default/files/resources/ACPI%206_2_A_S=
ept29.pdf # [1]
>> Link: https://uefi.org/sites/default/files/resources/ACPI_6_2_B_final_=
Jan30.pdf # [2]
>> Link: https://uefi.org/sites/default/files/resources/ACPI_6_3_May16.pd=
f # [3]
>> Link: https://git.kernel.org/torvalds/c/e2869bd7af608c343988429ceb1c2f=
e99644a01f # [4]
>> Link: https://lore.kernel.org/xen-devel/80bae614-052e-0f90-cf13-0e5e4e=
d1a5cd@invisiblethingslab.com/ # [5]
>> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
>=20
> Just to avoid misunderstandings: This change addresses a comment from
> Andrew. I does not attempt to address my feedback on the earlier change=
,
> which - as indicated - I intend to revert (timeline extended until mid
> of the week), unless by then my earlier comments are addressed or the
> suggested possible alternative is carried out.
>=20
> I think it goes without saying that this patch can't sensibly go in
> until the earlier one was properly settled upon. In particular, in case=

> of reverting aiui this patch won't even apply anymore.

It textually conflicts with the other patch [6], and obviously was
triggered by that discussion, but addresses a slightly different aspect.
The textual conflict is trivial to resolve. I wasn't sure if it also
conflicts with the concern you raised there, see below.

The other patch is about ignoring entries with invalid APIC IDs. As the
discussion there showed the spec isn't very clear on that and there are
different opinions how they should be handled. Regarding the flags the
spec is much more concrete although given the response above I assume
you also interpret "is unusable" of the old version of the
ACPI_MADT_ENABLE flag as such that Xen should still allocate resources
for those processors?

If I understood your main concern with the other patch correctly you
have seen firmwares that later update those invalid APIC IDs with valid
ones. Do those firmwares make use of the online capable flag? (Given
above response probably not)

If not, then it indeed doesn't address your concern, and I see no way,
at least by parsing MADT, how to distinguish those cases from firmwares
that have dummy entries (the motivation for these patches).

Simon

[6]: https://lore.kernel.org/xen-devel/7f158a54548456daba9f2e105d099d2e5e=
2c2f38.1691399031.git.simon@invisiblethingslab.com/

--------------WWBAFW3CNVMXS9nRhqLY2vxl--

--------------fuPJqSqlgMgfFxJdfAjmvk3x
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEE3E8ezGzG3N1CTQ//kO9xfO/xly8FAmT/U58ACgkQkO9xfO/x
ly/Buw/9H/hszRxHiFdp82YE4gyS0Nn5q4IF2AHgdpJ8B3J1E8dbFWWcUf8A26Za
Wfi33knuCZ6ofI6Q0w3sDyqbV+rVFrDfPvolird3g9hNstdrJy9OLGJFa7negbnj
p7NHVLxYUapMJr/08WrFFFI8XzhGJMF7yPx0YqN5hekgVBdM+2ENYoXJQBYyfm2p
D+2koQ/9tbE2JewVAS0Ea+WUnPKMPorvDL5AtCbUdyeKFdVGJVtNxxL78uOrpx9s
tICclxDMbaF5PZsDGDqzVU1MboSmBQF1wzugHlp3tvnAUGmwTFw73JbxWVxC3seG
g6EIFBKWv3vkmhKO37kAmnD2NjeabkRXtMXu7dv7FIo3LoLFWpJaywOo9iyGUZDb
hQEnh5YnqP5i1EHqM3RCr9+Px5a/2NYuFE3R7bsTRofwyToxCZeNXmMkmuedvHl7
DQEJVmXHqSQowusI7z2Y6Yn8tx4Eaz6rxzLKId2r3BSkm6XJmwaPm1kEACiG2FBe
NCnBbNNV0g4M8tFHzn8cU0w3gJ1P/w+alxS93EKwG4ZwY2qRwQynFly5vzEBhwQI
Vd+uZDSQrvGpBo020d7AUTr6SrKs3ylAlV7D+Vx4Rv4J6EFEYBfpPfIQZ5ju0+WO
qQ8Go5YR682+8YAUZ3hrRvtNZn9dDivvg5hgFhtxobTmr7RgYrc=
=PA3q
-----END PGP SIGNATURE-----

--------------fuPJqSqlgMgfFxJdfAjmvk3x--


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 18:06:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 18:06:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599707.935240 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qflIU-00022Y-JF; Mon, 11 Sep 2023 18:06:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599707.935240; Mon, 11 Sep 2023 18:06:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qflIU-00022R-Gc; Mon, 11 Sep 2023 18:06:06 +0000
Received: by outflank-mailman (input) for mailman id 599707;
 Mon, 11 Sep 2023 18:06:05 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=AVcC=E3=invisiblethingslab.com=simon@srs-se1.protection.inumbo.net>)
 id 1qflIT-00022L-Jk
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 18:06:05 +0000
Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com
 [66.111.4.25]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id def65325-50cd-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 20:06:04 +0200 (CEST)
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id 103A05C0115;
 Mon, 11 Sep 2023 14:06:03 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute4.internal (MEProxy); Mon, 11 Sep 2023 14:06:03 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 11 Sep 2023 14:06:00 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: def65325-50cd-11ee-8785-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm1; t=
	1694455563; x=1694541963; bh=9SwcQiQAtnT2HbkkN+DibVreMXqZZH9zV7u
	lTaEttQA=; b=0rBYwAhOkc+zzhKCF7guEU1DTqAV49LyQqe9u7QvdawOKP0fdaI
	4b07bkuETRm1UTXFmNVmZntuU6Dt7sGbqcYwNmojx6sHxb/E0ua5AD1h9DZywVxC
	D8IEapZgqW/ajMQrI/C3KXcxssEEmmGG7U+zUa1JzOBhlYJty3ZJrG8WyBYIEe34
	S1XthHMR3x+kdbIKm0nxxj58mazC7M2t/KR0SZ29JQgqaGgo53IkqoHL8HlmlwRS
	KfXMt16qWm7TFHrEvWbzOO/wMrde9XFxrL3fEQz1peQ+z995IJyQ4oNxbJ6dVR1B
	vTWhq1bfpgFSfR75kh2Lagrq6TDJK+/3jvg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm1; t=1694455563; x=1694541963; bh=9SwcQiQAtnT2H
	bkkN+DibVreMXqZZH9zV7ulTaEttQA=; b=QHIfxT5Qrai1iaLl1wn2wKN14TOEs
	B7ZzK/ijcHK4gsLumn7D2UfKeWpthR6gPnQzoeioZ8YI/oNDrOHvu7arqGBmdX7u
	7yDuPdmb59QI+kocRxWMa195ECZyfFRmXa8Byft0yaIAMUiZqBBfSEXdBkSuGNm6
	AvvVU2Vqkp8OfKLFENEqYPiHk8rYIBdqNclbnQdw+giQWXA5O2CxWgR17RQiB68z
	yfvqDevwWchPME9heeFJg3v8OFqIc5Zt1uuoy9WwMyBPyY7BVYtqYlHNocLFgt2e
	W2FhMwTpB1JtYgwHOel9qABIlYtkasl7OwcB8R/PhEQq3QW9P8hnght4g==
X-ME-Sender: <xms:Clf_ZI9dVtILN--eDUGooX4Vpa6j0tu31RX9cf4j0iYOAgbiSwE7wQ>
    <xme:Clf_ZAtsnrDJxEtywoWK6QCLCmnsfpo0X13b8SX9P7zKPahZkTmqJ2qNFVRzaC9A4
    4kufE06Tcucf-M>
X-ME-Received: <xmr:Clf_ZOA6CqTnPOFc9G3s7A9s6RLSApNOY_nZIZVnjzASD4LqIlJKkTb1SdWW-qQK>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudeigedguddulecutefuodetggdotefrod
    ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
    necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
    enucfjughrpefkffgguffvvehfhfgjtgesghdtreertddtjeenucfhrhhomhepufhimhho
    nhcuifgrihhsvghruceoshhimhhonhesihhnvhhishhisghlvghthhhinhhgshhlrggsrd
    gtohhmqeenucggtffrrghtthgvrhhnpeeftdefudeltdevhfehkeefhfeutdfhffdugeet
    ffdvgfehfeekhfetgedvuefggfenucffohhmrghinhepkhgvrhhnvghlrdhorhhgnecuve
    hluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepshhimhhonhes
    ihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:Clf_ZIe9o9RNj8OIFv7gvzrS4LVk-QEjilzAn1FQ3kSGxZePUBTTGw>
    <xmx:Clf_ZNPAtqwiDxqtLIjetIKqBRMOmrEp67lcuQg1LQC7Bv72SoJ2lg>
    <xmx:Clf_ZClIePjxKtSpxpUfN_dvqykO1uoQGt8qxFvlWE0au7I7XVbe8A>
    <xmx:C1f_ZL1SrHSDl0OMKTc6s8Mn0XnSCCNCEW6oSYWBiIudl18k1_FZCQ>
Feedback-ID: idc5945a3:Fastmail
Message-ID: <89f112fd-70c6-c191-ea52-e2caa6495ac6@invisiblethingslab.com>
Date: Mon, 11 Sep 2023 20:05:32 +0200
MIME-Version: 1.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>,
 "committers@xenproject.org" <committers@xenproject.org>
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
From: Simon Gaiser <simon@invisiblethingslab.com>
In-Reply-To: <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------prctvZUwLxPDk8XzFkNtb0wu"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------prctvZUwLxPDk8XzFkNtb0wu
Content-Type: multipart/mixed; boundary="------------p4po0NkY25BskihlcQGncZQi";
 protected-headers="v1"
From: Simon Gaiser <simon@invisiblethingslab.com>
To: Jan Beulich <jbeulich@suse.com>,
 "committers@xenproject.org" <committers@xenproject.org>
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
Message-ID: <89f112fd-70c6-c191-ea52-e2caa6495ac6@invisiblethingslab.com>
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
In-Reply-To: <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>

--------------p4po0NkY25BskihlcQGncZQi
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Jan Beulich:
> On 07.08.2023 11:38, Simon Gaiser wrote:
>> It seems some firmwares put dummy entries in the ACPI MADT table for n=
on
>> existing processors. On my NUC11TNHi5 those have the invalid APIC ID
>> 0xff. Linux already has code to handle those cases both in
>> acpi_parse_lapic [1] as well as in acpi_parse_x2apic [2]. So add the
>> same check to Xen.
>>
>> Note that on some older (2nd gen Core i) laptop of mine I also saw dum=
my
>> entries with a valid APIC ID. Linux would still ignore those because
>> they have !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE. But in Xen
>> this check is only active for madt_revision >=3D 5. But since this ver=
sion
>> check seems to be intentionally I leave that alone.
>>
>> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.g=
it/commit/?id=3Df3bf1dbe64b62a2058dd1944c00990df203e8e7a # [1]
>> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.g=
it/commit/?id=3D10daf10ab154e31237a8c07242be3063fb6a9bf4 # [2]
>> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
>=20
> This patch was committed with unaddressed review comments. The normal a=
ction
> in such a case would be to revert, expecting a v2 to arrive. One altern=
ative
> here would be a timely incremental patch submission. Another alternativ=
e,
> considering in particular Thomas's most recent reply, would be to prope=
rly
> downgrade CPU hotplug support in SUPPORT.md (with a corresponding entry=
 in
> CHANGELOG.md).
>=20
> I'll give it until the end of next week for either of the alternatives =
to be
> carried out. If nothing appears by then, I'll assume I may rightfully r=
evert.
> (This timeline also allows putting this topic on the Community Call age=
nda,
> should anyone think this is necessary.)

To avoid misunderstandings, since you mentioned the above in your
response to the related patch I submitted today [3]:

My understanding is that your main concern is that those entries with
invalid APIC IDs shouldn't be ignored, since some firmwares later update
them with valid IDs (on hotplug). This fully conflicts with the
intention of the patch. Resolving the disagreement that followed is
outside of my control, as being only the submitter of the patch.

You also commented about not logging the ignored entries. Until it's
clear if the change in general is accepted in the end, I considered it
pointless to address that detail. If you disagree and want a follow up
for that, just let me know.

Simon

[3]: https://lore.kernel.org/xen-devel/20230911101238.18005-1-simon@invis=
iblethingslab.com/

--------------p4po0NkY25BskihlcQGncZQi--

--------------prctvZUwLxPDk8XzFkNtb0wu
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEE3E8ezGzG3N1CTQ//kO9xfO/xly8FAmT/Vu8ACgkQkO9xfO/x
ly+HzxAAuQWx4QZaI6nJt6ZwnqzkC9HrUMLxW0YEA5bVrRD19EmcKvoVH4Kwfz9B
r5Fx7kpya+3nqd+P9Ur4pH8I2/E78F/kLrqr3iCXZGs+hcGNydmOgf2xOPGvo/Hz
gC02W7yqFuWDoRHeQUHxaok8wIhxccnoQTcieQo9TRFp4XK4zmdZKT/avgWmcQOq
VJlmGk7uk4SK6tIPS53+QaNhRzvel8BLcP68YM1VAswVuJYcaGHRzWyzbqUy33Io
kv/6ldSki20uGc5GIe/KgRbEZklygUjiv8jgGc0AV5u2N3yTSIQIna4R9gwNpdhq
0skwlv/T28sBC2x+ChwoqOwtVIbXhd/HRl5SmTlxtqmn1U0gjLeKHdAvyrQEOl67
aYE63ywgp0+vtAUm87t40mDDDSpkhb/2/jo6qx6P7NlDT5SDm5rHCJ8rvFKqmq9M
UTFBPYDliefRNqc9TNhrQF8z4QLazz0FINnPJAbZcLiUJMgcaC6Gwnx3pO9uAxqp
QcHXFVmV+z9GkXe9EOnjBEVartoztd90fj+k66cLDO2aX78zMsaWbFg3Ju50647J
P4s6S6xPqLQG2GNMcSmBEO8SGnuqfo3ex40UeZjPNMdCJAmzRXEdDUuwiVnsTq/q
kKcQJG4PugvERUGEGCYC88t+iRlPmDkM+Z/jOeaO9/IkmzLDAzk=
=lXbk
-----END PGP SIGNATURE-----

--------------prctvZUwLxPDk8XzFkNtb0wu--


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 18:16:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 18:16:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599715.935251 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qflSR-0004dX-HW; Mon, 11 Sep 2023 18:16:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599715.935251; Mon, 11 Sep 2023 18:16:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qflSR-0004dQ-DK; Mon, 11 Sep 2023 18:16:23 +0000
Received: by outflank-mailman (input) for mailman id 599715;
 Mon, 11 Sep 2023 18:16:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Gqz1=E3=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qflSP-0004c5-TO
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 18:16:22 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20601.outbound.protection.outlook.com
 [2a01:111:f400:7eae::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4e001f69-50cf-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 20:16:20 +0200 (CEST)
Received: from CY5PR17CA0029.namprd17.prod.outlook.com (2603:10b6:930:17::31)
 by MW4PR12MB6753.namprd12.prod.outlook.com (2603:10b6:303:1ec::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Mon, 11 Sep
 2023 18:16:16 +0000
Received: from CY4PEPF0000E9CF.namprd03.prod.outlook.com
 (2603:10b6:930:17:cafe::25) by CY5PR17CA0029.outlook.office365.com
 (2603:10b6:930:17::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Mon, 11 Sep 2023 18:16:16 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000E9CF.mail.protection.outlook.com (10.167.241.142) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.17 via Frontend Transport; Mon, 11 Sep 2023 18:16:15 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 11 Sep
 2023 13:16:14 -0500
Received: from [192.168.139.126] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 11 Sep 2023 13:16:13 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4e001f69-50cf-11ee-8785-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Q5TVnxbq20FeYxQVLPVvgZO9UnRkr9/EQcVOh99n626p8QOdhF0XYEjfGgHVi4S4jwbSGOR0gBuD/d/8UfwQherq5KVncY7W2Oz6PaBhE17YcyU5+UbXC+bATomQKx7DQIxQnzdm31eY+86t6GnvCkClpKPm/wIee6G2nlcT4Xpe0rSLKwsY61FNBJGe6A12oGAMUbtYu0PBGD4VQZ+6giSQFbTma3EjfU5Vmphc3aLoLLeb6qZj3PrWPpVO6BW9vyE/Ghqfc7apIY2bRG5HcvvUt3itqnpGylMWcdalHU0tN/fdwrVJbVLCWz8iRslK5VwwBkXt9YCWocZ+01waMQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=X7QQsQC8PI4iYV5qcLG2boDW5rT4GlLbXvyRbJx528U=;
 b=Grnk6oCzJpD1a3MrQy+YvOOOk6JKFUxbjydAsRUd+FakAq5nD9RG+AgbCSxU080INnKqGXxyO44KVFC43f5UvgdfhlI31AHK0vxqxXzqEBYTso9WMq7pmX/KjgWDyFBFQKN8kABdGNBtC/Rj6j473o4QeJo9sprsu/yMiZmsLp/2RfyIibwB0QA6+fSaf6SQ3TFffco4M/VGvoQpf/mifS1GWtjPErrEb6q4Tro67aiWLv+l0R5tLD7Zv7RkN8FRRQ1+9EZsWNR06m55vhv6ZvZLQrrHr5KOZqd1Ex0FLvoaiL50uyK+MmQ8x1eGz8/l++SxnfLkARTSrvXY2fNHOg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=X7QQsQC8PI4iYV5qcLG2boDW5rT4GlLbXvyRbJx528U=;
 b=m6Va8fSmgu0UV5QoB5IpGSZJLw0kfc/x+xjewC4rzd+oVOhBos1kEv0oxP0/9VstAJ8dY4Kffe3BOxmHfFDQqlIsX9hKmSbcWt19akC1P5BFw3yQsYbYtxsKInmS++U/vrOhatUAILlNz2T5Y5K3X8iEjgN21XNuIoQs5XKPHqE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <92f59b7d-cdbb-762c-daf6-ab781ec3c453@amd.com>
Date: Mon, 11 Sep 2023 14:16:13 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v6 3/4] xen/vpci: header: status register handler
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
CC: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Julien
 Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>, <xen-devel@lists.xenproject.org>
References: <20230909021647.558115-1-stewart.hildebrand@amd.com>
 <20230909021647.558115-4-stewart.hildebrand@amd.com>
 <3831c923-0344-7823-8373-ce4c1b48efde@suse.com>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <3831c923-0344-7823-8373-ce4c1b48efde@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9CF:EE_|MW4PR12MB6753:EE_
X-MS-Office365-Filtering-Correlation-Id: a3f36a97-da11-4932-6744-08dbb2f33046
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	B5V96QB1dHmzxJCw8ITMtWL2UKVeYq5FoSmK+LbwIG4Il/CVe5p5CwnHQIBnAcMwcxZPOoSoO/8pigcYadOgadXZpPu25lQFrpMGp3uUeLgM7KJlpMYUfx01gwBcyHPMjM6p/4bHAgFao4YOCMVeqVZIvkm9TvBJ7YFG+kcH+kVE3ZTVRaZoxnvTmQehiTR+HSMmhI2+tRc4dJ2BHxHahJksgMH8kJyE0Pq6KcVWfLyt8Lf8ZSKgp4eXfSDBUeGEae5DOoBFLh3vfAWtosQjLq5xnBy1pVZp6+nrNTSHLrhjCjVi6yOo+Qimu9v6vX74wm4hquZvHcvGXtk+xm5Go/GQ07mIpTflS4hxpGWk1kTvCguAufLT9ieypQmOEMoVnpZvqQ5Tr1Oi17+cq9ZcQ0ONdglTTrU416hCPtA+7IsSkgzJx0CfMtJrVjfrfYttSPGZFHZrIB6uvSqNA/Mj6KGK9InUZGRzEKn2hhfdvjW1wxafM5HunxuGqv7U6WqDqtYyGSo2w09p4dSk1IlemS3LDJ6bzVZLHtmVYhXGXGzKQgCWhLhuF8ED5IQIjYlCwv052PQP39QXuf72yFeh3yg8LV885aHGVxyc70uaBvb5ZRqwidOXBNIgInyEFeAM3tyibOu60lK/LLDrN+63hChAXXXkOVWop21m2IevO7qTSp0SuRKL/WB4vsDw//d6/Qrhr3YPlBUgPCATlmtJb2OidE6HBBxE8ThMBrEIA/vU8S1zEsNSBmO/Aj7cWEv8Oi8CL09fr5K5bereHY9dCJvXuEcD8WXvX5btbgDOFwtrIgXI8jgXf73kuxFHGELm0+3jTHjQzHHV1juQdzbw3A==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(346002)(376002)(396003)(451199024)(82310400011)(186009)(1800799009)(36840700001)(40470700004)(46966006)(82740400003)(53546011)(5660300002)(70206006)(426003)(2906002)(26005)(336012)(83380400001)(44832011)(41300700001)(6916009)(4326008)(16576012)(316002)(70586007)(2616005)(8676002)(8936002)(478600001)(54906003)(36756003)(40460700003)(40480700001)(86362001)(47076005)(31696002)(36860700001)(31686004)(81166007)(66899024)(356005)(43740500002)(36900700001)(357404004);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 18:16:15.8055
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a3f36a97-da11-4932-6744-08dbb2f33046
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000E9CF.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB6753

On 9/11/23 07:10, Jan Beulich wrote:
> On 09.09.2023 04:16, Stewart Hildebrand wrote:
>> @@ -544,6 +545,18 @@ static int cf_check init_bars(struct pci_dev *pdev)
>>      if ( rc )
>>          return rc;
>>
>> +    /*
>> +     * If mask_cap_list is true, PCI_STATUS_CAP_LIST will be set in both
>> +     * rsvdz_mask and ro_mask, and thus will effectively behave as rsvdp
>> +     * (reserved/RAZ and preserved on write).
>> +     */
>> +    rc = vpci_add_register_mask(pdev->vpci, vpci_hw_read16, vpci_hw_write16,
>> +                                PCI_STATUS, 2, header, PCI_STATUS_RSVDZ_MASK |
>> +                                (mask_cap_list ? PCI_STATUS_CAP_LIST : 0),
>> +                                PCI_STATUS_RO_MASK, PCI_STATUS_RW1C_MASK);
> 
> While not formally disallowed by ./CODING_STYLE, I think this kind of argument
> wrapping is bad practice. If an argument is too long for the current line, it
> should start on a fresh one. Otherwise at the very least I think we'd want the
> continuation to stand out, by parenthesizing the entire argument, thus leading
> to one deeper indentation on the continuing line(s). (This may even be useful
> to do when starting on a fresh line.)

I will change it to this:
    /*
     * Utilize rsvdz_mask to hide PCI_STATUS_CAP_LIST from the guest for now. If
     * support for rsvdp (reserved & preserved) is added in the future, the
     * rsvdp mask should be used instead.
     */
    rc = vpci_add_register_mask(pdev->vpci, vpci_hw_read16, vpci_hw_write16,
                                PCI_STATUS, 2, NULL,
                                PCI_STATUS_RSVDZ_MASK |
                                    (mask_cap_list ? PCI_STATUS_CAP_LIST : 0),
                                PCI_STATUS_RO_MASK &
                                    ~(mask_cap_list ? PCI_STATUS_CAP_LIST : 0),
                                PCI_STATUS_RW1C_MASK);

>> @@ -155,7 +165,8 @@ int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
>>      /* Some sanity checks. */
>>      if ( (size != 1 && size != 2 && size != 4) ||
>>           offset >= PCI_CFG_SPACE_EXP_SIZE || (offset & (size - 1)) ||
>> -         (!read_handler && !write_handler) )
>> +         (!read_handler && !write_handler) || (ro_mask & rw1c_mask) ||
>> +         (rsvdz_mask & rw1c_mask) )
>>          return -EINVAL;
> 
> What about rsvdz_mask and ro_mask? They better wouldn't overlap either
> (requiring an adjustment to the code you add to init_bars()).

I will add a case for (rsvdz_mask & ro_mask). See above for adjustment in init_bars().

>> @@ -407,26 +439,25 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size)
>>
>>  /*
>>   * Perform a maybe partial write to a register.
>> - *
>> - * Note that this will only work for simple registers, if Xen needs to
>> - * trap accesses to rw1c registers (like the status PCI header register)
>> - * the logic in vpci_write will have to be expanded in order to correctly
>> - * deal with them.
>>   */
>>  static void vpci_write_helper(const struct pci_dev *pdev,
>>                                const struct vpci_register *r, unsigned int size,
>>                                unsigned int offset, uint32_t data)
>>  {
>> +    uint32_t val = 0;
>> +
>>      ASSERT(size <= r->size);
>>
>> -    if ( size != r->size )
>> +    if ( (size != r->size) || r->ro_mask )
>>      {
>> -        uint32_t val;
>> -
>>          val = r->read(pdev, r->offset, r->private);
>> +        val &= ~r->rw1c_mask;
>>          data = merge_result(val, data, size, offset);
>>      }
>>
>> +    data &= ~r->rsvdz_mask & ~r->ro_mask;
> 
> ~(r->rsvdz_mask | r->ro_mask) ? But maybe that's indeed just me ...

I will make this change.


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 18:24:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 18:24:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599722.935261 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qflaT-0006pY-9N; Mon, 11 Sep 2023 18:24:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599722.935261; Mon, 11 Sep 2023 18:24:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qflaT-0006pR-6W; Mon, 11 Sep 2023 18:24:41 +0000
Received: by outflank-mailman (input) for mailman id 599722;
 Mon, 11 Sep 2023 18:24:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=nwba=E3=citrix.com=prvs=6119d0f35=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qflaS-0006pJ-25
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 18:24:40 +0000
Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com
 [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 76fc347f-50d0-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 20:24:38 +0200 (CEST)
Received: from mail-dm6nam12lp2172.outbound.protection.outlook.com (HELO
 NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.172])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 11 Sep 2023 14:24:12 -0400
Received: from BYAPR03MB3623.namprd03.prod.outlook.com (2603:10b6:a02:aa::12)
 by BN8PR03MB5089.namprd03.prod.outlook.com (2603:10b6:408:7d::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Mon, 11 Sep
 2023 18:24:11 +0000
Received: from BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912]) by BYAPR03MB3623.namprd03.prod.outlook.com
 ([fe80::afa:50df:158a:a912%5]) with mapi id 15.20.6768.029; Mon, 11 Sep 2023
 18:24:10 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 76fc347f-50d0-11ee-8785-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694456678;
  h=message-id:date:subject:to:cc:references:from:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=Ba0jAnX04BnhsMflxVKDpQ60VTZObeZi4l5/fmwXIN4=;
  b=PcWcQbcIxs2xXiePth2+gpiRz4F6rYtfCFBuGfXL8kMtvEEtl3PWq1q1
   FkeSSkKR08T+f490fjBapUYLHN4wiwKx3Mzv5h8uibBYUC+poCAk/1C7C
   YOSjYPRjB1W9z5Eq0tddNgoZ2184JSh7gZYTLxXOE+EwU8R9WMzZGmYyV
   4=;
X-CSE-ConnectionGUID: vtP5KIh/TLO7wj4nTWT9Mw==
X-CSE-MsgGUID: 67SuR4/ESM+vrc2P2+rNuQ==
X-IronPort-RemoteIP: 104.47.59.172
X-IronPort-MID: 121561698
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:cDkzxKhrhQ1BEAK1rwiGPPPBX161xxEKZh0ujC45NGQN5FlHY01je
 htvDTyGbquJMDehL9snO4/loENS6JTTmtRjSVdv/3xhFS8b9cadCdqndUqhZCn6wu8v7q5Ex
 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOhTraCYmYoHVMMpB4J0XpLg/Q+jpNjne+3CgaMv
 cKai8DEMRqu1iUc3lg8sspvkzsx+qyo0N8klgZmP6sT7QaHzyB94K83fsldEVOpGuG4IcbiL
 wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ
 OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+
 tQGNAhQTTGDwN6S5+2kSLVquvsffez0adZ3VnFIlVk1DN4AaLWaGeDmwIEd2z09wMdTAfzZe
 swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEgluGyarI5efTTLSlRtm+eq
 njL4CLSBRYCOcbE4TGE7mitlqnEmiaTtIc6Tefhq6Az3gzDroAVIENJbkaB/b6UsWv9RchUc
 XROuTAIsJFnoSRHSfG4BXVUukWspQUAUtBdF+k77gClyafO5QudQG8eQVZpatYrqcs3TjwCz
 UKSkpXiAjkHmKaUTHWb3raSszKpOCIRIHMCZCkLVg8M6Z/op4RbphnIS9NiDLK4lMbdCTz22
 yqNriU1m/MUl8Fj/6Cy51XOmT+vjpnPUA8u5w/TU36l7wV2f4qsbcqj7l2zxeZNKsOVQ0eMu
 FAAmtOC96YeAJeVjiuPTe4RWraz6J6tLDLYkXZrHp886y6q/X+zO4xdiAySP29sO8cAPDPsP
 knavFoL4IcJZSTwK6hqf4i2FsImi7D6EsjoXezVadwIZYVtcAiA/2dlYkv4M33RrXXAWJoXY
 f+zGftAx15BYUi75FJan9sg7II=
IronPort-HdrOrdr: A9a23:m4Po/Kq/Ce6chS2GYin90HwaV5tNLNV00zEX/kB9WHVpm5Oj+v
 xGzc5w6farsl0ssREb9uxo9pPwJ080hqQFhbX5Wo3SITUO2VHYVr2KiLGP/9SOIVycygcw79
 YZT0E6MqyKMbEYt7eF3ODbKbYdKbC8mcjH5Ns2jU0dND2CA5sQkDuRYTzrd3GeKjM2YqbRWK
 DshPau8FGbCAgqh4mAdzA4dtmGg+eOuIPtYBYACRJiwA6SjQmw4Lq/PwmE0gwYWzZvx65n1W
 TeiQT26oiqrvn+k3bnpiLuxqUTvOGk5spIBcSKhMRQAjLwijywbIAkd6yesCszqOSP7k9vtN
 XXuR8vM+l69nuUVGCophnG3RXmzV8VmjXf4G7dpUGmjd3yRTo8BcYErYVFciHB405lmN1nyq
 pE00+QqpISVHr77W/AzumNcysvulu/oHIkn+JWp3tDUbEGYLsUiYAE5ktaHLoJASq/woE6F+
 tFCt3a+Z9tABunRkGcmlMq7M2nX3w1EBvDak8euvaN2zwTp3x9x1tw/r1qol4wsLYGD7VU7e
 XNNapl0JtUSNUNUK57DOAdBeOqF23kW3v3QSOvCGWiMJtCF2PGqpbx7rlwzvqtYoY0wJw7n4
 mEeE9EtFQ1Z1nlBaS1rdN2Gyj2MSaAtAnWu4NjD8ATgMy4eFOrC1zNdLkWqbrhnx1FaferH8
 paO/ptcorexCXVaMF0NjbFKupvwEklIbwoU+kAKiKzS+LwW/rXX7/gAYDuDYuoNwoYcUXCJV
 ZGdATPBax7nzKWsznD8VTsZ08=
X-Talos-CUID: 9a23:+/XNpmMiMU29ou5DRjVfqW01GocZVlqC03WMJXOHNTdMV+jA
X-Talos-MUID: =?us-ascii?q?9a23=3Arfatww8xESDJ95Vu0FxUV2uQf5k32LmUVAcgqrB?=
 =?us-ascii?q?FpdOPbxQqeC27kQ3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,244,1688443200"; 
   d="scan'208";a="121561698"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XRT2+A02ayKE+ChELhr70ge80CK497cr+QiXDxoR/1iAuxXneJCCgClFdyOEnIlaVwYL2N6m0ibdmt+LMGYhI0rkSALsHuumHZErOmahk9Xcj0XYvIqjfHqY3nUHIeT/0bKgZ/bCUZK6QNyRkXGcoTo8Pseio4MMfRbhkBF/hR6HO7NeJDLupZ09VwPl+qND/VOIhyXB6QoDom9EGTOO7NzpRsXw47NFs4DBmMMmVnWaPjfIm44ZfG33hxfdlU5xAQRYaxL18sflaTWml+4aG9vzqeEo2SB362Y49Q+RTC4DiBBlrnE8UTtPKnKhDFJd/PEoW2LamIdJq0TScqP5Cg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EkMyWrDKQ7Ucj4+TT2XkwLPwIWkV9G6AU7PoQlAAdA8=;
 b=DQ/CKldEEFFFeEmdnRe002fuJqIQa04OB2phAKNMNuwen0ohv7m0b4fgdUx0cwdyglOgrgM2L16sGzXtd3RpTQ2/KapktsHWl5YWqeegFaNjYrbDi4hC878rUxy1WnFA0tc9gwMw2fd3l9RHpQNPXS8WF40hA04cHJKe1wNZ0axGXJ6nj0qEnNgnKm85ZAPOr4Yrj/k25fCe4rxW1eAHrTmUjbuX6Z9RTVxnkcTAXNLr2Ei3SlA2z9po2y3G6rtoGd4Ciy+hITtBmL9FaUiyIz48tbWl3mQfyGwC3HIqysZhP5gRjvgbIKJmnGxXQxLWxE7b3CgWh19XlPyt1QIOMQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EkMyWrDKQ7Ucj4+TT2XkwLPwIWkV9G6AU7PoQlAAdA8=;
 b=hrKLkDUuxBliahWW9aSqzv5SYOpSI/+ARFjOuqfEiwQlatMB2D5YdeJjGH2+J1IieKFiyDFCoJDy7vI6o9QoCNx86MT7rF43wuJwJnfT2jnJvais11agZJm5K0rELn0RxFf2k/hOkESVj13dBIGj5R+hnaNYTh0bAhk+6rCkXOc=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Message-ID: <27ae69b6-bc57-dee3-2528-8311a38decda@citrix.com>
Date: Mon, 11 Sep 2023 19:24:04 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 Jan Beulich <jbeulich@suse.com>
Cc: Simon Gaiser <simon@invisiblethingslab.com>,
 "committers@xenproject.org" <committers@xenproject.org>,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org,
 Thomas Gleixner <tglx@linutronix.de>
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
 <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
From: Andrew Cooper <andrew.cooper3@citrix.com>
In-Reply-To: <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0461.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1aa::16) To BYAPR03MB3623.namprd03.prod.outlook.com
 (2603:10b6:a02:aa::12)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BYAPR03MB3623:EE_|BN8PR03MB5089:EE_
X-MS-Office365-Filtering-Correlation-Id: ddce24b2-a0df-4aca-116e-08dbb2f44b11
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	NvQRTIXyT0YNg6UiufHuFE+TT28tjWnF0ATvCkNeWUV6uCpOejfBVDnK+xt1Ph12kC3nvhTXTMWsu3hlfuR8GuVwAhdC8rWWw8uklKw3txSux5TYxMHJ+iL0YHeJMTMhgPfXzxoYalIortlue1OFS7lcNDSvlYTCv2RuWk8HR/iyz82NbijxabtjYgclXLo2/rhSoeAFc9XC/dcvWPwTKPSJMQIMUeoUenfKRnQIFqD9IcT1ubas0eTHeAKcn7/LfN8bkTsPQz5BwbCCYhHcqxQ6aAUMQ7SUwsgQdsCF2Uhx5xdiFnB+8kQkm9wMCbZ006s6n5mJxC0wOD0FE9vplgjh9GQS331X0PEfYXFR4Jbs/It6P8xwFeVMlW1Uwe72yrx4cnYPPe2xJmv91VekNRkv35cLUWeYltVHcf6VaCmUZMlPSs3kjvRwm4wF8lfEQslmhOrG/kCvd6mZYsITaaDEuY050HZzVFOJejSlvwkZr3nIURdywvwD0AZv2/ZiTe4z+HUDqTKIPaPwXuSZxGBM4cp5f2XeHowYHSJDq9aa8nRB1/h2kMAiHfi5GC69CkrKIq3rimUNmG32ZfV0xQ+hKpDdZ34SyijmyxgAQ/7ZO16Sge5J6AG3Qb9zdBC7A6PuHJOACGKQHwM33lbX/w==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR03MB3623.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(366004)(136003)(376002)(346002)(186009)(451199024)(1800799009)(41300700001)(2906002)(316002)(26005)(31686004)(66556008)(110136005)(478600001)(8936002)(66946007)(66476007)(8676002)(4326008)(54906003)(966005)(5660300002)(6666004)(53546011)(6486002)(6506007)(6512007)(36756003)(2616005)(83380400001)(82960400001)(38100700002)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZkdoZmMzcW5scG5QVDhrV1UydHV6UTZmNEJLdkF5dk1LN3d1bi8yZTRLQ015?=
 =?utf-8?B?aTBWZnl6RkI4Y1YxQUY2NmUvc2dCZk4zTjRqN2srN3h6T3lya05jM1NMeE5O?=
 =?utf-8?B?NGV3Qk5oUStFdFZEWGIvRzRMMUg0Z2VGRFVpR2JrZWNTMXc5ZmZ5OW1PSHNY?=
 =?utf-8?B?S2d5RUJZdllGYVFKeGo2Z1VDSERSRGc3ck8wU1k1SlVRbU1iRmJ5ZUxmclo1?=
 =?utf-8?B?L2J6MCtjdFBxRWRubTBrLzZROFBXWUpoK1RvYnlxRDBjaVhYRzBoTTEvb0tB?=
 =?utf-8?B?MnZqWHpRd2hCOC9MYnBpMy9LWFZUSkNyaGw1Qk9iM3dMSUx0UVQvOVg1R0ZI?=
 =?utf-8?B?SHBqQ1pjYm1HdGFlY05kMDF0NGdtUUhjR0pNS1gwejVlOTNvdThzdTlJOFBZ?=
 =?utf-8?B?bVF4cGdvKys0eUhHNXZCS2tEcWN1RWFHaXNreHdCZUU4SGtIaWZEUkhGaG8z?=
 =?utf-8?B?YmpINVVOT01GSFJyL1k0Nm92a0trWit1QVRxQ2xRaGdXeDJwT2VxdEJSVHA4?=
 =?utf-8?B?ZUR6U29nYlliN0VUNHpFOHdDVy96ZWZwSHcwenhmSWt4UFVYQ0drckg0ck5H?=
 =?utf-8?B?alVZMlQydFZtZXdBZGNKVE9uUWU1Z2JuQXJ5c3J2cnZxbWtKaTdnL3VGRTgv?=
 =?utf-8?B?WnE2SkhQQXpiWlpWeUhmWndCQ251aS9ZNHVkdGxVUEhEUFBTajhDR1F6QXpN?=
 =?utf-8?B?MW40dkh5NW9nMzRyZjdlT3JLZ05qWHhOdGVpNnFSK2kxYlluSEhJNGJDcEpz?=
 =?utf-8?B?bnVhKzlodm5mcXRwVmJqVHNUU2ZYVTVKZnlnNmw0YnowNzVvQUpIYzU4cnQ5?=
 =?utf-8?B?dTJ1czlxaUNFWmJOcVFEcG9ZUDMva2N3cmc1WjFrZVJUeTAwcFFyUGtNTXZF?=
 =?utf-8?B?TDhIendvMzBYc0hnRTlzRS9jbWdBc21ianFsQ1VoK0VRd3ZkV1BtdnZ3YURs?=
 =?utf-8?B?MnVQWmw1bnhhbjlPbk5mUGNFWXpQcnpoTmdkcjMwS1lEdEZCbERtMGxleDgw?=
 =?utf-8?B?RzdqczdYbGs3TzZQelhPWkJXaUNTNk5iZTYwTHpVQkZ0UTNPVHFVYWIycUZ6?=
 =?utf-8?B?TWNFNTVaVmsxQkE3K2dtOUtGTWZYcUJxTkh5NXowRmc5dGRhd3crbU5IWU8w?=
 =?utf-8?B?bDhHUnREdGhNaWRFLzJkdkJLSWhRRXNPYnR1ZTYrSFNkNUhVZEYycEU1L0d6?=
 =?utf-8?B?NDZSWmwxb3FYWjRhenFMSnZTeWFMSXIyNzNCcUJyZzB6b2ViVzNtNk92UWtr?=
 =?utf-8?B?aENEWlpUTXpobFJqSEdCblNZMDB0OVB2WlhGY1ZGZTQyaGJBTmtuRTh3OWc4?=
 =?utf-8?B?Y0pScnI3SUR6aSsxOUgyVitISVlwSzlISk1WaVdBMFVJeFgyTW83MzFoWXdp?=
 =?utf-8?B?Z0ZNVHVFNUttald2UFJCZUYyRWpzcU1BcDVKU01RTW9acFVCcGNMeVJEL1FF?=
 =?utf-8?B?UzRZQmFxT2NRQTlnS3BMRTFoUWVzbDczY2JiTGNEUGMxeTBHclhTdmhZTlJX?=
 =?utf-8?B?bmdtVjNyemVTQWd3MGZ5VVJlMVFJODVlcVh0QkZ3OW5yVzVLMnQ3VE90Y3M2?=
 =?utf-8?B?RE5jUzRsQzhqNWhlSjB2aHRLeHp6eVFvTU9RTDJSd25HYUtQMzMybEtIdUhT?=
 =?utf-8?B?andHbC83bUswUThrbzhrYnNKdmx2WjNMbkxJN0VHUUdDTWs2Q0pzcHlNdGF1?=
 =?utf-8?B?TjlEaW5kOHQ2ckZhVXdCVVJPSFppSldEbWNibzJVK0MvcW9KSG92TTFKcDBV?=
 =?utf-8?B?bDd2T0JQdStEMEJMUmEzSmJhcGhVTUJ2cWV2aFBMU0gzV0treGwyMi9YVFZ2?=
 =?utf-8?B?NEdEdTdaWk9adzU0WUxCRGxydUFPQmlkbndsc2szQ1dTUWxCVzB2U3hLV0FK?=
 =?utf-8?B?QzB6dGlqaUt5SG43ZG8wT2tKOFR2Z3NENmhNUlpva0NUcWo2V2Faa2k3UEtk?=
 =?utf-8?B?VWlUUTk0cHI1U2FQZmJaTWdHQ0g1U0ZiNms3b2xzRFUyNlUrUVc2eWVPVG5n?=
 =?utf-8?B?QW5MZ0RnZ2tvSVJIVG9qVTJIWEt3K3RSTStmMmV1YmxNaG5BSzJIU3FYaThR?=
 =?utf-8?B?TDFEOFM3N2NjZFU1T2cxUmQ1Wk9iRjA5bE5FMTU4eFRXQXlJNXE1U09zMUQz?=
 =?utf-8?B?em93NUt3OUMvZnA3Q3lDN0I0V2tWYnVsL3QwZTVpZmV6ZTF3ZUhGRlpxVzlJ?=
 =?utf-8?B?VWc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?eEJCM29uSG5NdFBiRHFNRlpxUlVYN3pCVW16WG9WOHR3dDF0L2tjYjNMTldO?=
 =?utf-8?B?WVZsWE9FTWU3bUZ5YzV2ZEtBNWkvb3VQNTdhV1FJZ1dRTlVmZDZ5bEFOT1JV?=
 =?utf-8?B?V3dGem1kdUlhTDRZZmcvQ29BbGhKNUlNKzI2UlRLRE03NU9qSXBoNFFIUE8w?=
 =?utf-8?B?RTQ4eVBPalo3a0YxbEpQZWFoZWNxNHJhUFprQXo3NXoxYmdhMGNxS1pwUkFB?=
 =?utf-8?B?TWxTNWwveHZKTFJndGh1MVQ5WldwZ3d6bEl2ZERFMk9kMVVCNmI3QXNVYWxM?=
 =?utf-8?B?eHI3V0hNTUo4MDVMUlFNTFVhTVJkVVpBVS9jNk04Uzl1QTU1WUI5TnE5TENu?=
 =?utf-8?B?cUxrOUxkTkZpS21BQThsZW5EOXgzWVJibCtYQllFc1NRQ2ZFc3Q5MitwS1pp?=
 =?utf-8?B?Q0hHT1R0UXVISHllRGFUMllYZmlFa1EyUDVxNlJOOE9mQ2NWSzA4b1d5WTZ6?=
 =?utf-8?B?VVpsa0NBdlNoQ2xGcmY4c281SG5zOXJKbm1BL3BCVTFHcm1neDJVZXl2dXFt?=
 =?utf-8?B?U2djeEFqM2lySVU4Tm9lWEJ2cUtkSHNjS1pjSlZvQzIxbDJJb2QzbE91Tmc1?=
 =?utf-8?B?WGJ2dDZMeDJ6OXRIUG1HTUc3b1ZMa0o2R3MrNUtvcUc4RHJ1dzBPNGNqdTRM?=
 =?utf-8?B?ZHNhaWh2QlhCQkZnVXZzaExBZzY4b3FjSmtFM253cWNaY3pob1FjUHlIYU9H?=
 =?utf-8?B?MGUvMUcwa2RzSmowck9DaTczNGpiWm5vaW1mcEp0YzBUQkFEUGZ2UUw0eDVs?=
 =?utf-8?B?KzNxVisvQlErNFBZakg1RUFiUmZVRk9qMmJhazB1cDVyU2VPN3lVUTluM0Rk?=
 =?utf-8?B?T0V2Yyt4Yy9LRzV3dkhCTk9qY3lEN2lEYmw2S2ZqS1BRK3ZselN6Yit2amZp?=
 =?utf-8?B?bVZEekU5SjdGaXk2VGVXR2w2ampQY2xIczFBU1I3eDRlNllVZ1czWE00OWtx?=
 =?utf-8?B?RnBoUFV3RHZPMDIvYzNSREZlK0UrSVpSWDZqWDIvZk9SVlBWN3BoTUpvOHlH?=
 =?utf-8?B?dCtsVnpOQllLcmVsbEpOZjZPNmE1TUNUaEN0NDdGaDdSb2VrUTBLT2RBZ25R?=
 =?utf-8?B?WmJ0MWRZdVlXM2dzN045anZpaWQ2VkZWblppQkFodndlYWoxVG1YTndsbSs1?=
 =?utf-8?B?TmdkUHZrQ1ZLRlF6QjdnSlZTNG9VMkJpSmZ0Ukg2R3B5ZDl1bUFvVTczanVx?=
 =?utf-8?B?YVBVRzRPWUZ5R3ZscU1PaHVKK2UwRE5FWmtpQ1Z3bFpmOHBLaUdPZ3Z3WE82?=
 =?utf-8?B?ZnlQdjIxcHk3YWJwM2x3akRrSml4TXcwcW02YWdMY001SE9wZz09?=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ddce24b2-a0df-4aca-116e-08dbb2f44b11
X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB3623.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2023 18:24:10.7325
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: uDV91D2V7QDlKG7BjAWOHyF/wxw4+tdDiR8WZ6CLLFOs7Bu29LgvQB55KXnQzYvY9h9OqMOW23yDOc7wMutrPnziHc4FL+UxbBdy43NvSQI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB5089

On 06/09/2023 9:49 pm, Stefano Stabellini wrote:
> On Fri, 1 Sep 2023, Jan Beulich wrote:
>> On 07.08.2023 11:38, Simon Gaiser wrote:
>>> It seems some firmwares put dummy entries in the ACPI MADT table for non
>>> existing processors. On my NUC11TNHi5 those have the invalid APIC ID
>>> 0xff. Linux already has code to handle those cases both in
>>> acpi_parse_lapic [1] as well as in acpi_parse_x2apic [2]. So add the
>>> same check to Xen.
>>>
>>> Note that on some older (2nd gen Core i) laptop of mine I also saw dummy
>>> entries with a valid APIC ID. Linux would still ignore those because
>>> they have !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE. But in Xen
>>> this check is only active for madt_revision >= 5. But since this version
>>> check seems to be intentionally I leave that alone.
>>>
>>> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f3bf1dbe64b62a2058dd1944c00990df203e8e7a # [1]
>>> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=10daf10ab154e31237a8c07242be3063fb6a9bf4 # [2]
>>> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
>> This patch was committed with unaddressed review comments.

Count the number of x86 maintainer tags on the patch, and see that they
were given after discussion, not before.

You're outvoted 2:1 by Xen x86 maintainers alone, and more than 2:1 if
you include the x86 maintainers from other projects who participated in
the discussion.


I'm not willing to let Xen keep on malfunctioning on millions of systems
just because you think an unfinished spec is more correct that practical
reality which invalidates it.

>>  The normal action
>> in such a case would be to revert, expecting a v2 to arrive. One alternative
>> here would be a timely incremental patch submission. Another alternative,
>> considering in particular Thomas's most recent reply, would be to properly
>> downgrade CPU hotplug support in SUPPORT.md (with a corresponding entry in
>> CHANGELOG.md).
> I am in favor of downgrading physical CPU hotplug support in
> SUPPORT.md.

SUPPORT.md does look bogus and wants correcting, but it is laughable to
claim that this ever worked, let alone that it's supported.

Intel got half way through specifying ACPI CPU Hotplug, and abandoned it
as a technology because they couldn't get it to work.  Hence the feature
has never been tested.

Furthermore, cursory testing that Thomas did for the Linux topology work
demonstrates that it is broken anyway for reasons unrelated to ACPI parsing.

Even furthermore, it's an area of the Xen / dom0 boundary which is
fundamentally broken for non-PV cases, and undocumented for the PV case,
hence why it's broken in Linux.


Physical CPU Hotplug does not pass the bar for being anything more than
experimental.  It's absolutely not tech-preview level because the only
demo it has had in an environment (admittedly virtual) which does
implement the spec in a usable way demonstrates that it doesn't function.

The fact no-one has noticed until now shows that the feature isn't used,
which comes back around full circle to the fact that Intel never made it
work and never shipped it.

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 18:54:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 18:54:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599733.935277 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfm2m-0004Ie-HK; Mon, 11 Sep 2023 18:53:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599733.935277; Mon, 11 Sep 2023 18:53:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfm2m-0004IX-Eh; Mon, 11 Sep 2023 18:53:56 +0000
Received: by outflank-mailman (input) for mailman id 599733;
 Mon, 11 Sep 2023 18:53:55 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfm2l-0004IN-Ap; Mon, 11 Sep 2023 18:53:55 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfm2l-00076O-7e; Mon, 11 Sep 2023 18:53:55 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfm2k-0001N2-Tf; Mon, 11 Sep 2023 18:53:54 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfm2k-00057l-Su; Mon, 11 Sep 2023 18:53:54 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=FJVklXZLgVwMazfvu3+grBxMDC31AhTjFDqk3uw1UsU=; b=X+F9JEhb8sna2LAYgRtFhtvNq6
	cecUGD8oFQyPFv+VfWwn7H9fh2cxuCxIeh/+aqbDkBfdXjeaub9HC8SZKpEtf3hO5nGVfQ8XqNFQ1
	cj7HQf1ckCTvzt0LoP66WlboyKaDNwT1luEaiyM/ZkoEJ1NWLR3wnyybPPl39hB4BBrg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182945-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182945: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=ab4f3e3897ab777f94d44d0450f9b0e844fad830
X-Osstest-Versions-That:
    xen=35949b8c58cb6c835da1fdd8843ed51727e654c0
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 18:53:54 +0000

flight 182945 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182945/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  ab4f3e3897ab777f94d44d0450f9b0e844fad830
baseline version:
 xen                  35949b8c58cb6c835da1fdd8843ed51727e654c0

Last test of basis   182930  2023-09-11 08:00:26 Z    0 days
Testing same since   182945  2023-09-11 16:00:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Federico Serafini <federico.serafini@bugseng.com>
  George Dunlap <george.dunlap@cloud.com>
  Jan Beulich <jbeulich@suse.com>
  Javi Merino <javi.merino@cloud.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   35949b8c58..ab4f3e3897  ab4f3e3897ab777f94d44d0450f9b0e844fad830 -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 18:57:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 18:57:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599741.935287 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfm5y-0005NB-08; Mon, 11 Sep 2023 18:57:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599741.935287; Mon, 11 Sep 2023 18:57:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfm5x-0005N4-TA; Mon, 11 Sep 2023 18:57:13 +0000
Received: by outflank-mailman (input) for mailman id 599741;
 Mon, 11 Sep 2023 18:57:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ipyp=E3=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qfm5w-0005My-S8
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 18:57:12 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0244c921-50d5-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 20:57:10 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 76BA68285C34;
 Mon, 11 Sep 2023 13:57:07 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id IHGt4cUxl5RQ; Mon, 11 Sep 2023 13:57:06 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id AEF4582867CA;
 Mon, 11 Sep 2023 13:57:06 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id mdhhp1JbGqHU; Mon, 11 Sep 2023 13:57:06 -0500 (CDT)
Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 3600B8285C34;
 Mon, 11 Sep 2023 13:57:06 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0244c921-50d5-11ee-8785-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com AEF4582867CA
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694458626; bh=2v28jM0yeuH98iMYgzMtNN7A1RCdAp1K5rrZcy9bLwI=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=txg9ICt0BOqRJdFCWtHcieY94nmUwKzg2NMw0FwdoxysXA7kUNouhHWhv5JfEg57c
	 qCVHsvp9/FpBa/vzVNdU5k0ViLpeY74zJH5nj12S5RFcoScaCjpfVpeB2fkgpKGm78
	 rjkuQNOCYZ0i+u95fGemw0G1SUnpo+0ONuoqcay0=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <61a7f9ac-d57f-e64e-5796-b611515daf30@raptorengineering.com>
Date: Mon, 11 Sep 2023 13:57:06 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH] include: make domain_page.h's stubs properly use
 type-unsafe MFN <-> virt helpers
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <9b5d517b-fbc0-d9ce-d6be-d4b8e3c0cc35@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <9b5d517b-fbc0-d9ce-d6be-d4b8e3c0cc35@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/11/23 1:38 AM, Jan Beulich wrote:
> The first of the commits referenced below didn't go far enough, and the
> 2nd of them, while trying to close (some of) the gap, wrongly kept using
> the potentially type-safe variant. This is getting in the way of new
> ports preferably not having any type-unsafe private code (and in
> particular not having a need for any overrides in newly introduced
> files).
> 
> Fixes: 41c48004d1d8 ("xen/mm: Use __virt_to_mfn in map_domain_page instead of virt_to_mfn")
> Fixes: f46b6197344f ("xen: Convert page_to_mfn and mfn_to_page to use typesafe MFN")
> Reported-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> --- a/xen/include/xen/domain_page.h
> +++ b/xen/include/xen/domain_page.h
> @@ -56,11 +56,11 @@ static inline void *__map_domain_page_gl
>  #define map_domain_page(mfn)                __mfn_to_virt(mfn_x(mfn))
>  #define __map_domain_page(pg)               page_to_virt(pg)
>  #define unmap_domain_page(va)               ((void)(va))
> -#define domain_page_map_to_mfn(va)          _mfn(virt_to_mfn((unsigned long)(va)))
> +#define domain_page_map_to_mfn(va)          _mfn(__virt_to_mfn((unsigned long)(va)))
>  
>  static inline void *map_domain_page_global(mfn_t mfn)
>  {
> -    return mfn_to_virt(mfn_x(mfn));
> +    return __mfn_to_virt(mfn_x(mfn));
>  }
>  
>  static inline void *__map_domain_page_global(const struct page_info *pg)

Reviewed-by: Shawn Anastasio <sanastasio@raptorengineering.com>

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 18:59:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 18:59:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599748.935296 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfm8J-000679-Cr; Mon, 11 Sep 2023 18:59:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599748.935296; Mon, 11 Sep 2023 18:59:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfm8J-000672-9b; Mon, 11 Sep 2023 18:59:39 +0000
Received: by outflank-mailman (input) for mailman id 599748;
 Mon, 11 Sep 2023 18:59:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7n0b=E3=flex--justinstitt.bounces.google.com=3l2P_ZAsKCYox867w167w77u22uzs.q20Bs1-rs9szzw676.Bs1352xsq7.25u@srs-se1.protection.inumbo.net>)
 id 1qfm8H-00066U-Ni
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 18:59:37 +0000
Received: from mail-oa1-x49.google.com (mail-oa1-x49.google.com
 [2001:4860:4864:20::49])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 59f46c23-50d5-11ee-8785-cb3800f73035;
 Mon, 11 Sep 2023 20:59:37 +0200 (CEST)
Received: by mail-oa1-x49.google.com with SMTP id
 586e51a60fabf-1d5aa672aa4so2105635fac.2
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 11:59:37 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 59f46c23-50d5-11ee-8785-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=google.com; s=20230601; t=1694458776; x=1695063576; darn=lists.xenproject.org;
        h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject
         :date:message-id:reply-to;
        bh=FyAfsddzgMfH7Rve3tTC+ObTn5S/B+6cd6RfEH0mPVQ=;
        b=oAvtgxZjTzfWygSULBgUZz2swB7w5r+IKiFwMgIT63IsOX4g7F1GM8xuiqQqUZVQ/N
         H3uapaZAl2VargTD4W0MezWR8ibwN4XLL8rp81hSqXBQITJD3Wq7NWLH7/npB4bF7m+H
         Xh4Wtxognl2kjbXYkXw6wX3eF3S7p26ZAyXkkAVGp/GGUqp3j5xzyR3MethRh1GS+6My
         Nf3k+sAaDiAWS/EWweVU/J+vUlDJ/QEIu+X8c8QIU3T4ESGLhpcrSlItHAyBBv8etnar
         f2Ymm1EfEQbkrn7340PgmaYka/g1JcczdF+5nSTdC7D1Zm/6dorKfAv79+lcLunHTVo4
         9DTg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694458776; x=1695063576;
        h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=FyAfsddzgMfH7Rve3tTC+ObTn5S/B+6cd6RfEH0mPVQ=;
        b=NWNME4o1vROEs+IFtLUy/FVfvb9PR/5219W9p4Mr1qRVzheKf5fsG2Vu5urGIFViQT
         v8qzMHcodF6o8iCgZ8wZyMq4LtZ4ChwvUil3wW0uFy3x5csMcqCXp1gmMmG7pWNdTf2T
         0rojtizAfbrjBb1yIH1TJBHuLhvCqY0I/Hr9B2LhLtDrAZ9gnbhdzZ67oeoYPjrvhWCg
         qpgK1gSH0IfyUs4ekuLVf8IU3WuTmy+He+RzNF0+lzDrN79zijcDP+iT3yP4/h051XT1
         7XaKtx1NVwBHZDqvo1nLrqf/X0OGMwfF8sHF2SBOhtDE0o9mhLxGG7Spg+PUDvITpL8e
         wa8Q==
X-Gm-Message-State: AOJu0Ywf0xZGaJAzu/TJrfaVcl3Yv6soRXMAHbiIFOuRCDQmT+Lpi5jh
	KbwXni+0BHHCV0+6qV99hajocuJBM26WahQ0BA==
X-Google-Smtp-Source: AGHT+IG59wr8uLni3C2V55r07TIhyuDid4iDz2o8Yv9hT/IRZPvGxl55SBxndfL1I8UCe+ixrBA6mOeCDnFrXvY09g==
X-Received: from jstitt-linux1.c.googlers.com ([fda3:e722:ac3:cc00:2b:ff92:c0a8:23b5])
 (user=justinstitt job=sendgmr) by 2002:a05:6870:9e86:b0:1d5:95fc:2a65 with
 SMTP id pu6-20020a0568709e8600b001d595fc2a65mr148856oab.0.1694458775855; Mon,
 11 Sep 2023 11:59:35 -0700 (PDT)
Date: Mon, 11 Sep 2023 18:59:31 +0000
Mime-Version: 1.0
X-B4-Tracking: v=1; b=H4sIAJJj/2QC/x3MPQqAMAxA4atIZgO2/tariEOpUbNUSUUqxbtbH
 L83vASBhCnAWCQQujnw4TNUWYDbrd8IeckGXem6MkphuMS780Erbsc4dBjJI62MDlWjjV5b2xs iyINTco//fJrf9wMst+a9bAAAAA==
X-Developer-Key: i=justinstitt@google.com; a=ed25519; pk=tC3hNkJQTpNX/gLKxTNQKDmiQl6QjBNCGKJINqAdJsE=
X-Developer-Signature: v=1; a=ed25519-sha256; t=1694458775; l=1828;
 i=justinstitt@google.com; s=20230717; h=from:subject:message-id;
 bh=DBdVSubynrF3pAFkkMi1f9BTT60ciWDcbq2SU5EuRBg=; b=CYAmwiK7CDP7Z4adgOTjVKLEq7h3INeqRHS6jvpRLX93AfrV+Q2Ca6uptviT7Eq/HPolQcYba
 0Nfvn1OstRHDSyzQLfFZDyLtDKOqlDinW0kE1WVe67cXgmYQQVy+vkC
X-Mailer: b4 0.12.3
Message-ID: <20230911-strncpy-arch-x86-xen-efi-c-v1-1-96ab2bba2feb@google.com>
Subject: [PATCH] xen/efi: refactor deprecated strncpy
From: Justin Stitt <justinstitt@google.com>
To: Juergen Gross <jgross@suse.com>, Boris Ostrovsky <boris.ostrovsky@oracle.com>, 
	Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>, 
	Dave Hansen <dave.hansen@linux.intel.com>, x86@kernel.org, 
	"H. Peter Anvin" <hpa@zytor.com>
Cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org, 
	linux-hardening@vger.kernel.org, Kees Cook <keescook@chromium.org>, 
	Justin Stitt <justinstitt@google.com>
Content-Type: text/plain; charset="utf-8"

`strncpy` is deprecated for use on NUL-terminated destination strings [1].

`efi_loader_signature` has space for 4 bytes. We are copying "Xen" (3 bytes)
plus a NUL-byte which makes 4 total bytes. With that being said, there is
currently not a bug with the current `strncpy()` implementation in terms of
buffer overreads but we should favor a more robust string interface
either way.

A suitable replacement is `strscpy` [2] due to the fact that it guarantees
NUL-termination on the destination buffer while being functionally the
same in this case.

Link: www.kernel.org/doc/html/latest/process/deprecated.html#strncpy-on-nul-terminated-strings[1]
Link: https://manpages.debian.org/testing/linux-manual-4.8/strscpy.9.en.html [2]
Link: https://github.com/KSPP/linux/issues/90
Cc: linux-hardening@vger.kernel.org
Cc: Kees Cook <keescook@chromium.org>
Signed-off-by: Justin Stitt <justinstitt@google.com>
---
Note: build-tested
---
 arch/x86/xen/efi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/xen/efi.c b/arch/x86/xen/efi.c
index 863d0d6b3edc..7250d0e0e1a9 100644
--- a/arch/x86/xen/efi.c
+++ b/arch/x86/xen/efi.c
@@ -138,7 +138,7 @@ void __init xen_efi_init(struct boot_params *boot_params)
 	if (efi_systab_xen == NULL)
 		return;
 
-	strncpy((char *)&boot_params->efi_info.efi_loader_signature, "Xen",
+	strscpy((char *)&boot_params->efi_info.efi_loader_signature, "Xen",
 			sizeof(boot_params->efi_info.efi_loader_signature));
 	boot_params->efi_info.efi_systab = (__u32)__pa(efi_systab_xen);
 	boot_params->efi_info.efi_systab_hi = (__u32)(__pa(efi_systab_xen) >> 32);

---
base-commit: 2dde18cd1d8fac735875f2e4987f11817cc0bc2c
change-id: 20230911-strncpy-arch-x86-xen-efi-c-14292f5a79ee

Best regards,
--
Justin Stitt <justinstitt@google.com>



From xen-devel-bounces@lists.xenproject.org Mon Sep 11 19:01:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 19:01:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599754.935307 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfmA6-0007XW-O6; Mon, 11 Sep 2023 19:01:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599754.935307; Mon, 11 Sep 2023 19:01:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfmA6-0007XP-Kx; Mon, 11 Sep 2023 19:01:30 +0000
Received: by outflank-mailman (input) for mailman id 599754;
 Mon, 11 Sep 2023 19:01:29 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfmA5-0007XD-0A; Mon, 11 Sep 2023 19:01:29 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfmA4-0007HX-RV; Mon, 11 Sep 2023 19:01:28 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfmA4-0001tX-DF; Mon, 11 Sep 2023 19:01:28 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfmA4-0000MZ-Cp; Mon, 11 Sep 2023 19:01:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=GcZu5YpvMSr2znTSt+IQEN/CngeDd0wVXxmk/5xOkbQ=; b=RpqjTPDChJlbclk//zURQYon5J
	tAozD+5rgjTPn4k1SknzP5ucyKFI/C2sm2XfMspWUqHTkLtDccHeqrzObo9RUqkgxH3b/a1pTNeVj
	726F9VbLZTHOIBxISYUCvoCf3D3XoqOyolTQPP/JZZF6Zt2h/DgUvUIWDqlXGjLWE7Rs=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182923-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182923: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=0bb80ecc33a8fb5a682236443c1e740d5c917d1d
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 19:01:28 +0000

flight 182923 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182923/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                0bb80ecc33a8fb5a682236443c1e740d5c917d1d
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   14 days
Failing since        182544  2023-08-28 20:42:13 Z   13 days   25 attempts
Testing same since   182923  2023-09-11 06:13:05 Z    0 days    1 attempts

------------------------------------------------------------
2275 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 275103 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 21:05:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 21:05:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599767.935316 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfo67-0000Ec-9S; Mon, 11 Sep 2023 21:05:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599767.935316; Mon, 11 Sep 2023 21:05:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfo67-0000EV-6N; Mon, 11 Sep 2023 21:05:31 +0000
Received: by outflank-mailman (input) for mailman id 599767;
 Mon, 11 Sep 2023 21:05:29 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfo65-0000EL-Jq; Mon, 11 Sep 2023 21:05:29 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfo65-0001ed-ID; Mon, 11 Sep 2023 21:05:29 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfo65-0006AV-6x; Mon, 11 Sep 2023 21:05:29 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfo65-0007WW-6S; Mon, 11 Sep 2023 21:05:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=huEv4kRzHHewEKHxiEBXmWYexVtmKJvTZHcUus81SfY=; b=2cwMZjlMuhpPrdhtCeY3PzR8G6
	wQFLIQCiufSboho4ptmV5verX3QnCvI/BFwgKMbrRkbonMldwUMLM2Lmf+olhYFI9hHOddK5V+ql6
	CBZU9l+4FlUeHvLXsqXzBwTL2gw14vbBiL0kyLXeCOL9WusX7q2QKzqX1kutVjQYAHZQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182944-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [seabios test] 182944: tolerable FAIL - PUSHED
X-Osstest-Failures:
    seabios:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    seabios:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    seabios:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    seabios:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    seabios:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    seabios:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    seabios:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    seabios=1e1da7a963007d03a4e0e9a9e0ff17990bb1608d
X-Osstest-Versions-That:
    seabios=7a4003be25eae462f3c3d8aad96b57e34dc0c2b8
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 21:05:29 +0000

flight 182944 seabios real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182944/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182507
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182507
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182507
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182507
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182507
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass

version targeted for testing:
 seabios              1e1da7a963007d03a4e0e9a9e0ff17990bb1608d
baseline version:
 seabios              7a4003be25eae462f3c3d8aad96b57e34dc0c2b8

Last test of basis   182507  2023-08-24 13:12:45 Z   18 days
Testing same since   182944  2023-09-11 15:14:00 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Gerd Hoffmann <kraxel@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/seabios.git
   7a4003b..1e1da7a  1e1da7a963007d03a4e0e9a9e0ff17990bb1608d -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 21:32:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 21:32:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599778.935333 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfoWQ-0004Le-5D; Mon, 11 Sep 2023 21:32:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599778.935333; Mon, 11 Sep 2023 21:32:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfoWQ-0004LX-1m; Mon, 11 Sep 2023 21:32:42 +0000
Received: by outflank-mailman (input) for mailman id 599778;
 Mon, 11 Sep 2023 21:32:41 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfoWP-0004LN-11; Mon, 11 Sep 2023 21:32:41 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfoWO-0002Ds-V0; Mon, 11 Sep 2023 21:32:40 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfoWO-0006sx-Jx; Mon, 11 Sep 2023 21:32:40 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfoWO-00081Q-JD; Mon, 11 Sep 2023 21:32:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=7vgRpTrZqD/Ne+AL97ZmJRwOC/aO9bQ6EJ7PEbhts58=; b=3Rj17Icm/Q1ATv1BkubpIrDnd9
	F0izkqeCxqEdojzutPSJrKTVZzTjW+aN4P01+EE1kXbdUroF3IKF0udT7r9sW4NH+M3P08FevPBUZ
	DVMTfa3CVYmzJmGXaQNkEvxrp/RwFeWrxiCnfgo3/z/w6PjKYdSnmNXoW2s9rINXounI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182948-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182948: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=f1546c98e06fec6c2d1e15ff8e80547d10365bc3
X-Osstest-Versions-That:
    xen=ab4f3e3897ab777f94d44d0450f9b0e844fad830
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 21:32:40 +0000

flight 182948 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182948/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  f1546c98e06fec6c2d1e15ff8e80547d10365bc3
baseline version:
 xen                  ab4f3e3897ab777f94d44d0450f9b0e844fad830

Last test of basis   182945  2023-09-11 16:00:27 Z    0 days
Testing same since   182948  2023-09-11 19:03:12 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Javi Merino <javi.merino@cloud.com>
  Jinoh Kang <jinoh.kang.kr@gmail.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   ab4f3e3897..f1546c98e0  f1546c98e06fec6c2d1e15ff8e80547d10365bc3 -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 21:40:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 21:40:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599786.935343 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfoe4-00060U-V3; Mon, 11 Sep 2023 21:40:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599786.935343; Mon, 11 Sep 2023 21:40:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfoe4-00060N-RQ; Mon, 11 Sep 2023 21:40:36 +0000
Received: by outflank-mailman (input) for mailman id 599786;
 Mon, 11 Sep 2023 21:40:36 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfoe3-000605-Ut; Mon, 11 Sep 2023 21:40:35 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfoe3-0002Vq-Sb; Mon, 11 Sep 2023 21:40:35 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfoe3-000746-Id; Mon, 11 Sep 2023 21:40:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfoe3-0001jL-I4; Mon, 11 Sep 2023 21:40:35 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=6KXBid7VzZ/6kNrFIUrHgdY+We2fZaqkTlC6QJzU7y4=; b=dREaTgX1idXtn0RVIhb0w9v6zh
	6V4/07cRUQQCQxr3oLuA5WjIxbxsf5374BQTVffhU6pmssnGfGr032pUAxJMgEL7Zd/LRMxbqhwfY
	PJaqIp00NTyykow3IPX3lna8uHjyffLDq+anGoYU25tjVUXQZddhmtpCtEACyaq1Coqc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182943-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [qemu-mainline test] 182943: regressions - FAIL
X-Osstest-Failures:
    qemu-mainline:build-arm64-xsm:xen-build:fail:regression
    qemu-mainline:build-i386:xen-build:fail:regression
    qemu-mainline:build-arm64:xen-build:fail:regression
    qemu-mainline:build-amd64-xsm:xen-build:fail:regression
    qemu-mainline:build-amd64:xen-build:fail:regression
    qemu-mainline:build-i386-xsm:xen-build:fail:regression
    qemu-mainline:build-armhf:xen-build:fail:regression
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-arndale:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-i386:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-freebsd10-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-coresched-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:build-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-rtds:build-check(1):blocked:nonblocking
    qemu-mainline:build-arm64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ws16-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-win7-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:build-armhf-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:build-check(1):blocked:nonblocking
    qemu-mainline:build-i386-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-dom0pvh-xl-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-qcow2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-vhd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-libvirt-xsm:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pair:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-pygrub:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd11-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-freebsd12-amd64:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-pvhv2-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-amd:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-qemuu-nested-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-multivcpu:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-amd64-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit1:build-check(1):blocked:nonblocking
    qemu-mainline:test-armhf-armhf-xl-credit2:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-qemuu-rhel6hvm-intel:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-pvshim:build-check(1):blocked:nonblocking
    qemu-mainline:test-amd64-i386-xl-qemuu-debianhvm-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    qemuu=c5ea91da443b458352c1b629b490ee6631775cb4
X-Osstest-Versions-That:
    qemuu=c152379422a204109f34ca2b43ecc538c7d738ae
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 11 Sep 2023 21:40:35 +0000

flight 182943 qemu-mainline real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182943/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-xsm               6 xen-build                fail REGR. vs. 182707
 build-i386                    6 xen-build                fail REGR. vs. 182707
 build-arm64                   6 xen-build                fail REGR. vs. 182707
 build-amd64-xsm               6 xen-build                fail REGR. vs. 182707
 build-amd64                   6 xen-build                fail REGR. vs. 182707
 build-i386-xsm                6 xen-build                fail REGR. vs. 182707
 build-armhf                   6 xen-build                fail REGR. vs. 182707

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1)  blocked n/a
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)      blocked n/a
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-win7-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-qemuu-ws16-amd64  1 build-check(1)              blocked n/a
 test-amd64-i386-xl-shadow     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-vhd        1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-xsm        1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt      1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-qcow2  1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt-raw  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl           1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-arndale   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-rtds      1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-vhd       1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 build-check(1)               blocked n/a
 test-amd64-i386-pair          1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-i386  1 build-check(1)               blocked  n/a
 test-amd64-i386-freebsd10-amd64  1 build-check(1)               blocked  n/a
 test-amd64-coresched-i386-xl  1 build-check(1)               blocked  n/a
 test-amd64-coresched-amd64-xl  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-xsm       1 build-check(1)               blocked  n/a
 build-amd64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-shadow    1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-rtds      1 build-check(1)               blocked  n/a
 build-arm64-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-ws16-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 build-check(1)             blocked n/a
 test-amd64-amd64-xl-qemuu-ovmf-amd64  1 build-check(1)             blocked n/a
 build-armhf-libvirt           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 1 build-check(1) blocked n/a
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  1 build-check(1)     blocked n/a
 test-amd64-amd64-dom0pvh-xl-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow  1 build-check(1) blocked n/a
 test-amd64-amd64-dom0pvh-xl-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  1 build-check(1)        blocked n/a
 test-amd64-amd64-libvirt      1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-amd64-xl-qcow2     1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-vhd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvshim    1 build-check(1)               blocked  n/a
 test-amd64-amd64-pair         1 build-check(1)               blocked  n/a
 test-amd64-amd64-pygrub       1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-pvhv2-intel  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-freebsd11-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-qemuu-freebsd12-amd64  1 build-check(1)           blocked n/a
 test-amd64-amd64-xl-pvhv2-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-amd  1 build-check(1)               blocked  n/a
 test-amd64-amd64-qemuu-nested-intel  1 build-check(1)              blocked n/a
 test-amd64-amd64-xl-multivcpu  1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl           1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit1   1 build-check(1)               blocked  n/a
 test-amd64-amd64-xl-credit2   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit1   1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2   1 build-check(1)               blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 build-check(1)             blocked n/a
 test-amd64-i386-xl            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-pvshim     1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-debianhvm-amd64  1 build-check(1)         blocked n/a

version targeted for testing:
 qemuu                c5ea91da443b458352c1b629b490ee6631775cb4
baseline version:
 qemuu                c152379422a204109f34ca2b43ecc538c7d738ae

Last test of basis   182707  2023-09-07 00:28:57 Z    4 days
Failing since        182723  2023-09-07 18:19:05 Z    4 days   18 attempts
Testing same since   182770  2023-09-08 17:46:07 Z    3 days   15 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexander Ivanov <alexander.ivanov@virtuozzo.com>
  Alistair Francis <alistair.francis@wdc.com>
  Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
  Cédric Le Goater <clg@kaod.org>
  Daniel Henrique Barboza <danielhb413@gmail.com>
  Daniel P. Berrangé <berrange@redhat.com>
  David Woodhouse <dwmw@amazon.co.uk>
  Denis V. Lunev <den@openvz.org>
  Eric Blake <eblake@redhat.com>
  Fabiano Rosas <farosas@suse.de>
  Gautam Menghani <gautam@linux.ibm.com>
  Jeuk Kim <jeuk20.kim@samsung.com>
  jianchunfu <chunfu.jian@shingroup.cn>
  Joel Stanley <joel@jms.id.au>
  John Snow <jsnow@redhat.com>
  Maksim Kostin <maksim.kostin@ispras.ru>
  Marc-André Lureau <marcandre.lureau@redhat.com>
  Markus Armbruster <armbru@redhat.com>
  Michael Tokarev <mjt@tls.msk.ru>
  Nicholas Piggin <npiggin@gmail.com>
  Niklas Cassel <niklas.cassel@wdc.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
  Peter Maydell <peter.maydell@linaro.org>
  Philippe Mathieu-Daudé <philmd@linaro.org>
  Philippe Mathieu-Daudé <philmd@redhat.com>
  Richard Henderson <richard.henderson@linaro.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefan Hajnoczi <stefanha@redhat.com>
  Tao Su <tao1.su@linux.intel.com>
  Thomas Huth <thuth@redhat.com>

jobs:
 build-amd64-xsm                                              fail    
 build-arm64-xsm                                              fail    
 build-i386-xsm                                               fail    
 build-amd64                                                  fail    
 build-arm64                                                  fail    
 build-armhf                                                  fail    
 build-i386                                                   fail    
 build-amd64-libvirt                                          blocked 
 build-arm64-libvirt                                          blocked 
 build-armhf-libvirt                                          blocked 
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-coresched-amd64-xl                                blocked 
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-amd64-coresched-i386-xl                                 blocked 
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           blocked 
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 blocked 
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  blocked 
 test-amd64-amd64-libvirt-xsm                                 blocked 
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-xl-xsm                                      blocked 
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       blocked 
 test-amd64-amd64-qemuu-nested-amd                            blocked 
 test-amd64-amd64-xl-pvhv2-amd                                blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-dom0pvh-xl-amd                              blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     blocked 
 test-amd64-i386-freebsd10-amd64                              blocked 
 test-amd64-amd64-qemuu-freebsd11-amd64                       blocked 
 test-amd64-amd64-qemuu-freebsd12-amd64                       blocked 
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-i386-xl-qemuu-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-ws16-amd64                         blocked 
 test-amd64-i386-xl-qemuu-ws16-amd64                          blocked 
 test-armhf-armhf-xl-arndale                                  blocked 
 test-amd64-amd64-xl-credit1                                  blocked 
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  blocked 
 test-amd64-amd64-xl-credit2                                  blocked 
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  blocked 
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        blocked 
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         blocked 
 test-amd64-i386-freebsd10-i386                               blocked 
 test-amd64-amd64-qemuu-nested-intel                          blocked 
 test-amd64-amd64-xl-pvhv2-intel                              blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-amd64-dom0pvh-xl-intel                            blocked 
 test-amd64-amd64-libvirt                                     blocked 
 test-armhf-armhf-libvirt                                     blocked 
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-xl-multivcpu                                blocked 
 test-armhf-armhf-xl-multivcpu                                blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-libvirt-pair                                blocked 
 test-amd64-i386-libvirt-pair                                 blocked 
 test-amd64-amd64-xl-pvshim                                   blocked 
 test-amd64-i386-xl-pvshim                                    blocked 
 test-amd64-amd64-pygrub                                      blocked 
 test-armhf-armhf-libvirt-qcow2                               blocked 
 test-amd64-amd64-xl-qcow2                                    blocked 
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 blocked 
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-xl-rtds                                     blocked 
 test-armhf-armhf-xl-rtds                                     blocked 
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             blocked 
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              blocked 
 test-amd64-amd64-xl-shadow                                   blocked 
 test-amd64-i386-xl-shadow                                    blocked 
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-libvirt-vhd                                 blocked 
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      blocked 
 test-amd64-i386-xl-vhd                                       blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 2960 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 22:38:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 22:38:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599799.935359 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfpXv-0004DB-7P; Mon, 11 Sep 2023 22:38:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599799.935359; Mon, 11 Sep 2023 22:38:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfpXv-0004D4-4U; Mon, 11 Sep 2023 22:38:19 +0000
Received: by outflank-mailman (input) for mailman id 599799;
 Mon, 11 Sep 2023 22:38:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=01Lo=E3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qfpXt-0004Cy-Fc
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 22:38:17 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e479c7af-50f3-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 00:38:15 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 1C27CCE178C;
 Mon, 11 Sep 2023 22:38:10 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6D5E4C116AF;
 Mon, 11 Sep 2023 22:38:07 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e479c7af-50f3-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694471888;
	bh=wFZEt8xGyC/ds1ONEy7QyDUnyXveKEKpVQO0SZ3ZNPo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=i4kBJ/oZqPlFPpBezTA6pc2bK7T8zrZunNT2YkbyT+3FJoIKx6yQFCHbzniGNWic9
	 pAYl80njHsr6uZEG5mupha0hB1yX9sjZfOKjfiWVIIz/qF8FR0t70zauMnFULDXFDE
	 p1zLJcCY+Mq+hlZhpSKRDcaV/LUYH0djEYD226voUB7vuGLEIeqr7LDZMPZmzJy5Ct
	 OzMkeWELlm/RT/w15pMnDEojAw07nGZieIro0Up2mNyQR5E0caiIAwfxZ+vQyGojAM
	 uC86pjDIWvJUK7y3xGteTVIdrGOzeTRiwOFtt2zlTvyg+bm9+880hh8NgjL3Tzy4OE
	 /0EQtItCJqlqg==
Date: Mon, 11 Sep 2023 15:38:05 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Andrew Cooper <andrew.cooper3@citrix.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    Jan Beulich <jbeulich@suse.com>, 
    Simon Gaiser <simon@invisiblethingslab.com>, 
    "committers@xenproject.org" <committers@xenproject.org>, 
    =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, 
    xen-devel@lists.xenproject.org, Thomas Gleixner <tglx@linutronix.de>
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
In-Reply-To: <27ae69b6-bc57-dee3-2528-8311a38decda@citrix.com>
Message-ID: <alpine.DEB.2.22.394.2309111534030.1847660@ubuntu-linux-20-04-desktop>
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com> <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com> <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
 <27ae69b6-bc57-dee3-2528-8311a38decda@citrix.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-1063447677-1694471887=:1847660"

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-1063447677-1694471887=:1847660
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Mon, 11 Sep 2023, Andrew Cooper wrote:
> Physical CPU Hotplug does not pass the bar for being anything more than
> experimental.  It's absolutely not tech-preview level because the only
> demo it has had in an environment (admittedly virtual) which does
> implement the spec in a usable way demonstrates that it doesn't function.
> 
> The fact no-one has noticed until now shows that the feature isn't used,
> which comes back around full circle to the fact that Intel never made it
> work and never shipped it.

So we actually have agreement on how to move forward

---
SUPPORT: downgrade Physical CPU Hotplug to Experimental

The feature is not commonly used, and we don't have hardware to test it,
not in OSSTest, not in Gitlab, and not even ad-hoc manually by community
members.

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

diff --git a/SUPPORT.md b/SUPPORT.md
index 3461f5cf2f..02e2f6eaa8 100644
--- a/SUPPORT.md
+++ b/SUPPORT.md
@@ -48,7 +48,7 @@ For the Cortex A77 r0p0 - r1p0, see Errata 1508412.
 
 ### Physical CPU Hotplug
 
-    Status, x86: Supported
+    Status, x86: Experimental
 
 ### Physical Memory
 
--8323329-1063447677-1694471887=:1847660--


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 23:17:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 23:17:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599806.935369 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfq9M-0001Bn-5U; Mon, 11 Sep 2023 23:17:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599806.935369; Mon, 11 Sep 2023 23:17:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfq9M-0001Bg-2Q; Mon, 11 Sep 2023 23:17:00 +0000
Received: by outflank-mailman (input) for mailman id 599806;
 Mon, 11 Sep 2023 23:16:59 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=01Lo=E3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qfq9L-0001Ba-86
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 23:16:59 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4da56427-50f9-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 01:16:57 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 331AFB81A26;
 Mon, 11 Sep 2023 23:16:57 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 06B40C116A8;
 Mon, 11 Sep 2023 23:16:55 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4da56427-50f9-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694474216;
	bh=1+TTipkoBWSKQ3vcyl+J0adqJbSIUKmzOQ0J3kSLWl8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=kcPwWUGbKEYl+mjGJ0vnXTxN9ZCqf8BqZ2RZU8kS3UOBa+TC3dQmtubpUfDb6q+k8
	 S1APHe582NdAbWLHI1GKFnQYW1VzROppG7L7HsULjPOD5YtFU8NnUSwBwFzwvYVirj
	 lQ/xILDZ57FFF23l2/YDiKkO/LUBJiU29EP0wl4dTww/CkoGtZlOuh9zYZfy/Uy3/H
	 xnqgVoKTdZddqICg5Is5VIQKw3dD8Hf+9W/wIEEnm9U+8Y9106MXxJmkj7rHfIR1nj
	 lyt2TZbiYDuBKXhdxwmfcmTXUudkRnzFrWMexIIpgOZl9/Fw1Gv+YZBMo54WJlnpDy
	 /EgbVvVMTryow==
Date: Mon, 11 Sep 2023 16:16:53 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
In-Reply-To: <366e89e3-bc3d-4c54-b1ad-8147abbabdc7@xen.org>
Message-ID: <alpine.DEB.2.22.394.2309111610410.1847660@ubuntu-linux-20-04-desktop>
References: <20230911123401.27659-1-michal.orzel@amd.com> <366e89e3-bc3d-4c54-b1ad-8147abbabdc7@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 11 Sep 2023, Julien Grall wrote:
> On 11/09/2023 13:34, Michal Orzel wrote:
> > Host device tree nodes under /chosen with compatible string
> > "xen,evtchn-v1", "xen,domain-shared-memory-v1" are Xen specific and not
> > meant to be exposed to hardware domain.
> 
> So, how dom0 is meant to discover the static event channel, shared memory it
> can use?

As they are static, they don't necessarily need to be discovered: they
could be hard-coded. I realize we didn't commit the design doc for the
static event channel feature, but it had:
https://marc.info/?l=xen-devel&m=165245272905876

---
+There is no need to describe the static event channel info in the domU device
+tree. Static event channels are only useful in fully static configurations,
+and in those configurations the domU device tree dynamically generated by Xen
+is not needed.
---

But in any case, even if we wanted to generated/expose the static event
channels via Device Tree, the information on the host device tree is in
the "wrong" format. That's meant for Xen and has all the static event
channels, including the ones not relevant for Dom0. So I think that in
any case we should filter them out here (and regenerate as necessary).


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 23:22:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 23:22:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599812.935378 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfqEL-0002dd-NB; Mon, 11 Sep 2023 23:22:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599812.935378; Mon, 11 Sep 2023 23:22:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfqEL-0002dW-KQ; Mon, 11 Sep 2023 23:22:09 +0000
Received: by outflank-mailman (input) for mailman id 599812;
 Mon, 11 Sep 2023 23:22:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=01Lo=E3=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qfqEK-0002dQ-IB
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 23:22:08 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 047afd94-50fa-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 01:22:05 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 1D05FCE193C;
 Mon, 11 Sep 2023 23:22:00 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 86E92C116B1;
 Mon, 11 Sep 2023 23:21:57 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 047afd94-50fa-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694474518;
	bh=zzGf8tHMDHuYE2TeR+xtgUAO5GkyPcllDXwff9HW96o=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Q9NhUWnYtjGoFiDZv/duAR8mg3fgdOPGo1NYEh6SUKgaiyALrjh/+/k/8UAELYg+b
	 nGypBrauc33AKJSBWwtwP7blHejzNbEDEHllkU4+sD7CEWQ7VGdqehdxpocTGdH7te
	 j4WZm93GOr17lTTMToTM/GR1yHoTV7H5Kxtdkh+FknXykq2d58s5eilH38vGnVuT8c
	 AkNuebRTvxQ1J2lIpkz3HlgqoI1T13eJQXuz7uC02OYbreaUoxhsJASYxRz0MW8lKc
	 i0FyakCxoqVzFarH5OA9JRsoW2qNmLg+j1VjJmT1/XoM6rj5SWtB1fxFnnE/yGfDMz
	 MJs8I57cEYe0Q==
Date: Mon, 11 Sep 2023 16:21:55 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Michal Orzel <michal.orzel@amd.com>
cc: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
In-Reply-To: <faf253c3-2c99-9380-c120-a2dd3110b796@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309111620130.1847660@ubuntu-linux-20-04-desktop>
References: <20230911123401.27659-1-michal.orzel@amd.com> <366e89e3-bc3d-4c54-b1ad-8147abbabdc7@xen.org> <042fae56-e8e2-c079-2686-d27c5469b7fc@amd.com> <e24a7d3a-ca18-474b-bce2-84b97512c58e@xen.org> <faf253c3-2c99-9380-c120-a2dd3110b796@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 11 Sep 2023, Michal Orzel wrote:
> On 11/09/2023 16:48, Julien Grall wrote:
> > On 11/09/2023 15:01, Michal Orzel wrote:
> >> Hi Julien,
> >>
> >> On 11/09/2023 15:14, Julien Grall wrote:
> >>>
> >>>
> >>> Hi,
> >>>
> >>> On 11/09/2023 13:34, Michal Orzel wrote:
> >>>> Host device tree nodes under /chosen with compatible string
> >>>> "xen,evtchn-v1", "xen,domain-shared-memory-v1" are Xen specific and not
> >>>> meant to be exposed to hardware domain.
> >>>
> >>> So, how dom0 is meant to discover the static event channel, shared
> >>> memory it can use?
> >>
> >> For static shared memory:
> >> A node with this compatible is only meant for Xen since it contains information like host-guest mapping.
> >> Xen creates a different node for guests under /reserved-memory.
> >> Linux binding:
> >> https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindings/reserved-memory/xen,shared-memory.txt
> >> Xen node generation:
> >> https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/domain_build.c;hb=HEAD#l1407
> > 
> > Ah good point. I agree with this one.
> > 
> >>
> >> For static event channels:
> >> This is a bit weird so let me put it in a different way.
> >> 1) Xen does not create any node for static evtchn for domU.
> >> 2) The booting.txt states:
> >> There is no need to describe the static event channel info in the domU device
> >> tree. Static event channels are only useful in fully static configurations,
> >> and in those configurations, the domU device tree dynamically generated by Xen
> >> is not needed.
> >> 3) The "xen,evtchn" property specifies the local port as well as phandle of domU node.
> >> dom0 does not have access to domU nodes, therefore exposing a property with not existing phandle
> >> makes me think that:
> > 
> > You have a point for the phandle. Yet, this is the only way dom0 can
> > find the event channel today. As we exposed it, I don't think we can
> > remove it until we have a proper replacement.
> > 
> > We might get away if the feature is not supported it at all. But there
> > is no statement, so it is a little unclear whether the feature is meant
> > to be in technical preview.
> > 
> > In any case, I think the commit message deserve a bit more explanation
> > as hiding "xen,evtchn-v1"/"xen,domain-shared-memory-v1" is not
> > uncontroversial.
> > 
> >> a) point 2) applies to dom0 as well and we should hide this node or > b) there is a missing property for both dom0 and domUs to tell them
> > about static local port in a proper way
> >>
> >> Exposing Xen specific evtchn node only to dom0 and not to domU with required information happen to be found as first value
> >> in xen,evtchn is definitely not a proper solution.
> > 
> > My concern here is we exposed such information to dom0. So as I said
> > above, I don't think we can simply remove it as there is no other way to
> > find such information today.
> > 
> > It doesn't matter that it wasn't exposed to domU.
> > 
> >> Also, there is no Linux binding for it.
> > 
> > AFAIK the static event channel support was not added in Linux until very
> > recently. Also, I think the kernel doesn't directly use the static event
> > channel. So it is possible, this is just an overlook.
> 
> I've found this thread in which Stefano, Rahul and Bertrand agrees on not exposing
> any dt property and the rationale behind:
> https://patchwork.kernel.org/project/xen-devel/patch/4836304496e6fbbea41348ed8cc9fcf6b0f3e893.1648049827.git.rahul.singh@arm.com/

yes it was done on purpose


> I would not call exposing node to dom0 as something done deliberately given that it happens automatically by copying. So my understanding is
> that we did not want to expose any node and dom0 case was overlooked (since done automatically).
> 
> Exposing half the interface (from system POV) in a way it should not be done (phandle) is not great IMO.
> In any case, if you insist on keeping xen,evtchn, I can leave with it.
> 
> This feature is marked as tech preview with no Linux binding in place so I would not be worried.

Yes I agree. I don't think we risk breaking anything. I would remove
that info from Dom0. Even if we wanted to expose it to Dom0, this is not
the right way to do it...


From xen-devel-bounces@lists.xenproject.org Mon Sep 11 23:57:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 11 Sep 2023 23:57:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599819.935389 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfqlw-0007fI-47; Mon, 11 Sep 2023 23:56:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599819.935389; Mon, 11 Sep 2023 23:56:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfqlw-0007fB-0i; Mon, 11 Sep 2023 23:56:52 +0000
Received: by outflank-mailman (input) for mailman id 599819;
 Mon, 11 Sep 2023 23:56:51 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ipyp=E3=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qfqlv-0007f4-E9
 for xen-devel@lists.xenproject.org; Mon, 11 Sep 2023 23:56:51 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id dee3753c-50fe-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 01:56:49 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id E06AA8285544;
 Mon, 11 Sep 2023 18:56:47 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id ERcn-qdieOB7; Mon, 11 Sep 2023 18:56:47 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 3B769828573E;
 Mon, 11 Sep 2023 18:56:47 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id CIc6uPVVeNTf; Mon, 11 Sep 2023 18:56:47 -0500 (CDT)
Received: from [10.11.0.2] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id C81048285544;
 Mon, 11 Sep 2023 18:56:46 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dee3753c-50fe-11ee-8786-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 3B769828573E
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694476607; bh=UW40c96QVHsCWqUdK/2i+1XHEV7FgUG9wP7O0ATnoos=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=t8zlfo0I/wGD0PSWy0NzZIDW16tPAbmW5g5hY4oc+NQQ+F5tqruSMK5yNZNTfcdJ4
	 3ecTz1tAMXDjDQ8DLAY/wn4pWvVmLkWHjNLcoNI0kPKkWwY2RZWG1NCrTjgxNWKf9p
	 +qHYRVws9k7fiute1eRLl6TEZxEpq1p5eMeHWo78=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <7d3029fc-1188-3c55-0a54-bb9899fb91e8@raptorengineering.com>
Date: Mon, 11 Sep 2023 18:56:46 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v4 1/5] xen/ppc: Implement atomic.h
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
 <7ed453323033a759427da33cea7d18ddca247ae7.1694211900.git.sanastasio@raptorengineering.com>
 <93f4a2f3-b98c-332d-64a6-9e34cc9dddf2@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <93f4a2f3-b98c-332d-64a6-9e34cc9dddf2@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/11/23 6:33 AM, Jan Beulich wrote:
> On 09.09.2023 00:50, Shawn Anastasio wrote:
>> Implement atomic.h for PPC, based off of the original Xen 3.2
>> implementation. This implementation depends on some functions that are
>> not yet defined (notably __cmpxchg), so it can't yet be used.
>>
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> 
> Acked-by: Jan Beulich <jbeulich@suse.com>
>

Thanks.

> Just one remaining question:
> 
>> +static always_inline void read_atomic_size(const volatile void *p, void *res,
>> +                                           unsigned int size)
>> +{
>> +    ASSERT(IS_ALIGNED((vaddr_t)p, size));
>> +    switch ( size )
>> +    {
>> +    case 1:
>> +        *(uint8_t *)res = read_u8_atomic(p);
>> +        break;
>> +    case 2:
>> +        *(uint16_t *)res = read_u16_atomic(p);
>> +        break;
>> +    case 4:
>> +        *(uint32_t *)res = read_u32_atomic(p);
>> +        break;
>> +    case 8:
>> +        *(uint64_t *)res = read_u64_atomic(p);
>> +        break;
>> +    default:
>> +        __bad_atomic_read(p, res);
>> +        break;
>> +    }
>> +}
>> +
>> +static always_inline void write_atomic_size(volatile void *p, const void *val,
>> +                                            unsigned int size)
>> +{
>> +    ASSERT(IS_ALIGNED((vaddr_t)p, size));
>> +    switch ( size )
>> +    {
>> +    case 1:
>> +        write_u8_atomic(p, *(const uint8_t *)val);
>> +        break;
>> +    case 2:
>> +        write_u16_atomic(p, *(const uint16_t *)val);
>> +        break;
>> +    case 4:
>> +        write_u32_atomic(p, *(const uint32_t *)val);
>> +        break;
>> +    case 8:
>> +        write_u64_atomic(p, *(const uint64_t *)val);
>> +        break;
>> +    default:
>> +        __bad_atomic_size();
>> +        break;
>> +    }
>> +}
> 
> These two functions being as similar as is possible, ...
> 
>> +#define read_atomic(p)                                                         \
>> +    ({                                                                         \
>> +        union {                                                                \
>> +            typeof(*(p)) val;                                                  \
>> +            char c[sizeof(*(p))];                                              \
>> +        } x_;                                                                  \
>> +        read_atomic_size(p, x_.c, sizeof(*(p)));                               \
>> +        x_.val;                                                                \
>> +    })
> 
> ... is there a reason you keep using a union here ...
> 
>> +#define write_atomic(p, x)                                                     \
>> +    do                                                                         \
>> +    {                                                                          \
>> +        typeof(*(p)) x_ = (x);                                                 \
>> +        write_atomic_size(p, &x_, sizeof(*(p)));                               \
>> +    } while ( 0 )
> 
> ... while you did away with its use here?
>

Yes. In the case of read_atomic the caller is allowed (expected, even)
to pass in const pointers for `p`, which wouldn't work if a simple
typeof(*(p)) declaration was used since it would inherit the constness
and thus wouldn't be passable to read_atomic_size.

In the case of write_atomic though, there is no need to support const
`p`, so no union is necessary.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 00:40:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 00:40:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599826.935398 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfrRv-0006iL-TW; Tue, 12 Sep 2023 00:40:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599826.935398; Tue, 12 Sep 2023 00:40:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfrRv-0006iE-QI; Tue, 12 Sep 2023 00:40:15 +0000
Received: by outflank-mailman (input) for mailman id 599826;
 Tue, 12 Sep 2023 00:40:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2+51=E4=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qfrRt-0006hg-OZ
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 00:40:13 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ec6f0378-5104-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 02:40:10 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 4F7D0CE16F5;
 Tue, 12 Sep 2023 00:40:04 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 309D6C116A3;
 Tue, 12 Sep 2023 00:40:01 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ec6f0378-5104-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694479202;
	bh=Dxmm2rLn/WJ21SRhnu/nMYLAH7UCGT8LC9nHanY707A=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=CrfSXoK7S4g0ty0OkouoWgz/0GuULQvMK/PuO6qJ7pE2pi2v+Rd+DSUwN8SCYEUzJ
	 GNvKhiz/nYO0mlBs8layGWkdGbUaHkDlgkOa3uXxaNB4PnHzWhIj/eh/QZvN69yC9C
	 XB64i/I4ltifFItYVPEuqRxJukS2lzhg6vEbc40rgIcjQsZlhUI41xszl/F8Sh/NHi
	 nFxpSGjoor1+guqCzefPN2aD8WzHf2cPZovWbAQ7uWy8m0RXycKAkfNBC71mCc6YCA
	 zyxkD7z6UP6BXqE7XHfCwt09xlwj4x9ABAXECAb2zB9Rv7PjIgrqNVZYC5rvfqwRzA
	 iav2pvOl5j5Zw==
Date: Mon, 11 Sep 2023 17:39:59 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, julien@xen.org, george.dunlap@citrix.com, 
    bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, 
    nicola.vetrini@bugseng.com, 
    Stefano Stabellini <stefano.stabellini@amd.com>, 
    xen-devel@lists.xenproject.org
Subject: Re: [PATCH v3] docs/misra: add rule 2.1 exceptions
In-Reply-To: <ef37384f-c3e6-1425-f27a-1bd70f34dd6d@suse.com>
Message-ID: <alpine.DEB.2.22.394.2309111739510.1847660@ubuntu-linux-20-04-desktop>
References: <20230908230318.1719290-1-sstabellini@kernel.org> <ef37384f-c3e6-1425-f27a-1bd70f34dd6d@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 11 Sep 2023, Jan Beulich wrote:
> On 09.09.2023 01:03, Stefano Stabellini wrote:
> > From: Stefano Stabellini <stefano.stabellini@amd.com>
> > 
> > During the discussions that led to the acceptance of Rule 2.1, we
> > decided on a few exceptions that were not properly recorded in
> > rules.rst. Add them now.
> > 
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> > Acked-by: Jan Beulich <jbeulich@suse.com>
> > ---
> > Nicola, does this work with ECLAIR?
> > 
> > I am referring to the locations of the SAF-2-safe tag on top of
> > call_psci_system_off, BUG, etc.
> > 
> > Changes in v3:
> > - added SAF-2-safe to safe.json
> > - added a few SAF-2-safe examples
> > ---
> >  docs/misra/rules.rst    | 13 ++++++++++++-
> >  docs/misra/safe.json    |  8 ++++++++
> >  xen/arch/arm/psci.c     |  1 +
> >  xen/arch/x86/shutdown.c |  1 +
> >  xen/include/xen/bug.h   |  2 ++
> >  5 files changed, 24 insertions(+), 1 deletion(-)
> > 
> > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> > index 34916e266a..82de4c645d 100644
> > --- a/docs/misra/rules.rst
> > +++ b/docs/misra/rules.rst
> > @@ -107,7 +107,18 @@ maintainers if you want to suggest a change.
> >     * - `Rule 2.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_02_01_1.c>`_
> >       - Required
> >       - A project shall not contain unreachable code
> > -     -
> > +     - The following are allowed:
> > +         - Invariantly constant conditions, e.g. if(IS_ENABLED(CONFIG_HVM)) { S; }
> > +         - Switch with a controlling value statically determined not to
> > +           match one or more case statements
> 
> I (continue to) consider this as too lax. I don't think we want to permit
> something like
> 
> void test(uint8_t val)
> {
>     switch ( val )
>     {
>     case 0x100:
>         ...
> 
> Imo like in the earlier bullet point I think this wants limiting to
> compile-time constant values, at least initially.

Yes good point


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 00:42:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 00:42:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599832.935409 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfrTv-0007IG-8F; Tue, 12 Sep 2023 00:42:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599832.935409; Tue, 12 Sep 2023 00:42:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfrTv-0007I9-5H; Tue, 12 Sep 2023 00:42:19 +0000
Received: by outflank-mailman (input) for mailman id 599832;
 Tue, 12 Sep 2023 00:42:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2+51=E4=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qfrTu-0007I3-C4
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 00:42:18 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org
 [2604:1380:4601:e00::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 392009a8-5105-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 02:42:17 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 5AC65B81639;
 Tue, 12 Sep 2023 00:42:16 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 99158C116A3;
 Tue, 12 Sep 2023 00:42:13 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 392009a8-5105-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694479335;
	bh=t73kD1q/yvqJbqZ+PaZx835057nLC1L7h3e08Qd3rqk=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=LKqiwsS9vuIFKqj5/Eu/6ETKz2WjKuzdWCxsb8/5RfDTBudZ7DJgzb/lkBGQbRZpb
	 oeDmakMu3g3/TQ1Qxeoq309NlW5b3Zc5iU8MmtXDP2Z80oXhDneQsrP0EuE/weJlAl
	 hXrbTZRnnXI0Ry5VPId5X5Kk/kkMwG81LY88LX7zKZEfLmnUwOqbphxnJvxASp+E25
	 BLUNCbXn8lyusZrIwOyZJSYD/Ks49qDROTYR6/YtxLEHeHsJQivIuGlUPz2PuS/28h
	 HICOqBYf+bVy8HjDfT7amZc3gwnaKPHOP7n+2+yuA6Gm2CkaAMqNpvEmI7/OAXGBva
	 2KNT+ju3AVyOw==
Date: Mon, 11 Sep 2023 17:42:09 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: nicola.vetrini@bugseng.com
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, jbeulich@suse.com, 
    andrew.cooper3@citrix.com, roger.pau@citrix.com, george.dunlap@citrix.com, 
    bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, julien@xen.org, 
    Stefano Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] docs/misra: add rule 2.1 exceptions
In-Reply-To: <91d5ea6d-bdfa-45bf-a54b-5acdf1784ec4@xen.org>
Message-ID: <alpine.DEB.2.22.394.2309111740160.1847660@ubuntu-linux-20-04-desktop>
References: <20230908230318.1719290-1-sstabellini@kernel.org> <91d5ea6d-bdfa-45bf-a54b-5acdf1784ec4@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 11 Sep 2023, Julien Grall wrote:
> Hi Stefano,
> 
> On 09/09/2023 00:03, Stefano Stabellini wrote:
> > From: Stefano Stabellini <stefano.stabellini@amd.com>
> > 
> > During the discussions that led to the acceptance of Rule 2.1, we
> > decided on a few exceptions that were not properly recorded in
> > rules.rst. Add them now.
> > 
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> > Acked-by: Jan Beulich <jbeulich@suse.com>
> > ---
> > Nicola, does this work with ECLAIR?
> > 
> > I am referring to the locations of the SAF-2-safe tag on top of
> > call_psci_system_off, BUG, etc.
> > 
> > Changes in v3:
> > - added SAF-2-safe to safe.json
> > - added a few SAF-2-safe examples
> > ---
> >   docs/misra/rules.rst    | 13 ++++++++++++-
> >   docs/misra/safe.json    |  8 ++++++++
> >   xen/arch/arm/psci.c     |  1 +
> >   xen/arch/x86/shutdown.c |  1 +
> >   xen/include/xen/bug.h   |  2 ++
> >   5 files changed, 24 insertions(+), 1 deletion(-)
> > 
> > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> > index 34916e266a..82de4c645d 100644
> > --- a/docs/misra/rules.rst
> > +++ b/docs/misra/rules.rst
> > @@ -107,7 +107,18 @@ maintainers if you want to suggest a change.
> >      * - `Rule 2.1
> > <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_02_01_1.c>`_
> >        - Required
> >        - A project shall not contain unreachable code
> > -     -
> > +     - The following are allowed:
> > +         - Invariantly constant conditions, e.g. if(IS_ENABLED(CONFIG_HVM))
> > { S; }
> > +         - Switch with a controlling value statically determined not to
> > +           match one or more case statements
> > +         - Functions that are intended to be referenced only from
> > +           assembly code (e.g. 'do_trap_fiq')
> > +         - Deliberate unreachability caused by certain macros/functions,
> > +           e.g. BUG, assert_failed, panic, etc. See safe.json.
> > +         - asm-offsets.c, as they are not linked deliberately, because
> > +           they are used to generate definitions for asm modules
> > +         - Declarations without initializer are safe, as they are not
> > +           executed
> >        * - `Rule 2.6
> > <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_02_06.c>`_
> >        - Advisory
> > diff --git a/docs/misra/safe.json b/docs/misra/safe.json
> > index 39c5c056c7..fc96a99fd5 100644
> > --- a/docs/misra/safe.json
> > +++ b/docs/misra/safe.json
> > @@ -20,6 +20,14 @@
> >           },
> >           {
> >               "id": "SAF-2-safe",
> > +            "analyser": {
> > +                "eclair": "MC3R1.R2.1"
> > +            },
> > +            "name": "Rule 2.1: deliberate unreachability",
> > +            "text": "Macro or function designed to be unreachable."
> > +        },
> > +        {
> > +            "id": "SAF-3-safe",
> >               "analyser": {},
> >               "name": "Sentinel",
> >               "text": "Next ID to be used"
> > diff --git a/xen/arch/arm/psci.c b/xen/arch/arm/psci.c
> > index 695d2fa1f1..2a8527cacc 100644
> > --- a/xen/arch/arm/psci.c
> > +++ b/xen/arch/arm/psci.c
> > @@ -59,6 +59,7 @@ void call_psci_cpu_off(void)
> >       }
> >   }
> >   +/* SAF-2-safe */
> 
> I think any use of SAF-2-safe should be accompanied with an attribute...
> 
> >   void call_psci_system_off(void)
> 
> ... noreturn for function or ...
> 
> >   {
> >       if ( psci_ver > PSCI_VERSION(0, 1) )
> > diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
> > index 7619544d14..47e0f59024 100644
> > --- a/xen/arch/x86/shutdown.c
> > +++ b/xen/arch/x86/shutdown.c
> > @@ -118,6 +118,7 @@ static inline void kb_wait(void)
> >               break;
> >   }
> >   +/* SAF-2-safe */
> >   static void noreturn cf_check __machine_halt(void *unused)
> >   {
> >       local_irq_disable();
> > diff --git a/xen/include/xen/bug.h b/xen/include/xen/bug.h
> > index e8a4eea71a..d47c54f034 100644
> > --- a/xen/include/xen/bug.h
> > +++ b/xen/include/xen/bug.h
> > @@ -117,6 +117,7 @@ struct bug_frame {
> >   #endif
> >     #ifndef BUG
> > +/* SAF-2-safe */
> >   #define BUG() do {                                              \
> >       BUG_FRAME(BUGFRAME_bug,  __LINE__, __FILE__, 0, NULL);      \
> >       unreachable();                                              \
> 
> ... unreachable for macros. But the /* SAF-2-safe */ feels a little bit
> redundant when a function is marked as 'noreturn'.
> 
> Is there any way to teach eclair about noreturn?

Actually I had the same thought while writing this patch. If we can
adopt unreachable and noreturn consistently maybe we don't need
SAF-2-safe. If the checker can support it.

Nicola, what do you think?


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 00:44:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 00:44:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599839.935419 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfrVc-0007tg-O2; Tue, 12 Sep 2023 00:44:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599839.935419; Tue, 12 Sep 2023 00:44:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfrVc-0007tZ-Kp; Tue, 12 Sep 2023 00:44:04 +0000
Received: by outflank-mailman (input) for mailman id 599839;
 Tue, 12 Sep 2023 00:44:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O/bM=E4=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qfrVb-0007tN-Cg
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 00:44:03 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0601.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7770e1f1-5105-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 02:44:01 +0200 (CEST)
Received: from AS9PR06CA0179.eurprd06.prod.outlook.com (2603:10a6:20b:45c::9)
 by AS2PR08MB9200.eurprd08.prod.outlook.com (2603:10a6:20b:59f::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Tue, 12 Sep
 2023 00:43:57 +0000
Received: from AM7EUR03FT056.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:45c:cafe::21) by AS9PR06CA0179.outlook.office365.com
 (2603:10a6:20b:45c::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Tue, 12 Sep 2023 00:43:57 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT056.mail.protection.outlook.com (100.127.140.107) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.16 via Frontend Transport; Tue, 12 Sep 2023 00:43:57 +0000
Received: ("Tessian outbound 0b7d6027328f:v175");
 Tue, 12 Sep 2023 00:43:57 +0000
Received: from 9c137dc5a0c0.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 5AFA3396-8FA9-4B8C-BA74-7943F3CAB411.1; 
 Tue, 12 Sep 2023 00:43:50 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9c137dc5a0c0.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 12 Sep 2023 00:43:50 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB4PR08MB9381.eurprd08.prod.outlook.com (2603:10a6:10:3f3::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Tue, 12 Sep
 2023 00:43:48 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 00:43:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7770e1f1-5105-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LnOd2v9u8uxlV4pBGlodF00l3Gey+fcGZxtTRdArrKI=;
 b=ClqzD+Wwnx6w0rTstgF7gpqEy2b0j6/QsJBxP/Xj5uHK6pLkHJ5FEst7Zh3EoolEI/zOqaExmRwWTMClpRJN3xicK6wFpPBqraHVdBGuN0fDJkyWuPF7FVHz9754Ey7oiLcXb6DcRY8kp7a0OJG+zvtb4Cs896FUH8Wf/vFIBgI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 7802d9f1c62564ff
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZVbJEFyIbeoRcsOAXg6ndqBhtdbDivpx/xe2QoJz7Y2NIyczYMMfg3+2uWUskxoFEWphu+6oxJZjvZ3WUV/iE9V1kVxxb3gtyfDVN4c1DSPev5mX3NP4NBPMY7ZmaT3canWRShco39j1ZKlZcH79RntXY5Kdg9H2hHxbdEH69tnWorY6ASXFUzTOmocjb4lEEC5l2edVt/R2rehI7K0+m08L4OE587kMcRWaUQyRD4viqyv/D0J35d6FXtZysDbmKhaHz/jK126qSv97z0IIc8kPJuCREUgCUiadyE/EXL+NqPH6t482VmHgiXM73N962HyK9J5x7SFdk6P3IGVXgg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LnOd2v9u8uxlV4pBGlodF00l3Gey+fcGZxtTRdArrKI=;
 b=KG4IZBos88RL0UYTv9xkbK8jEeX3AdJeecu5eUDnjSRuVQ4qoCnss9wlxtdbKgNt2sAR+CzpZ83jETJE/JWgZJG+SX/uMJfFElymFTpbR1OIFuD0UiTG1/X2tVycQElRXj4Rp7S6zMNKOT9COyhahIGDJoRltZ/G/89/gKb/LFdS0vxhSi21ZkXlnLNwup8omg/akJfcIMTNR8bcmdGw7IPaOvSqjQqdBhCKehTLVHplUI9swiN24mMRIXNAWG1J4l3heIkhPDxqYDo0J1mA+weV5kwGiL6k28NcX5Ly9XUwPFDscYNHk35Py2otRaflWuasRvLp8+qvBY/IUpUyBQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LnOd2v9u8uxlV4pBGlodF00l3Gey+fcGZxtTRdArrKI=;
 b=ClqzD+Wwnx6w0rTstgF7gpqEy2b0j6/QsJBxP/Xj5uHK6pLkHJ5FEst7Zh3EoolEI/zOqaExmRwWTMClpRJN3xicK6wFpPBqraHVdBGuN0fDJkyWuPF7FVHz9754Ey7oiLcXb6DcRY8kp7a0OJG+zvtb4Cs896FUH8Wf/vFIBgI=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Ayan Kumar Halder <ayankuma@amd.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>, Wei
 Chen <Wei.Chen@arm.com>, Penny Zheng <Penny.Zheng@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v6 08/13] xen/arm: Fold mmu_init_secondary_cpu() to head.S
Thread-Topic: [PATCH v6 08/13] xen/arm: Fold mmu_init_secondary_cpu() to
 head.S
Thread-Index: AQHZ2U+hoB0xrFr/oU+WCBP7wHF2i7AEJAQAgAAA3gCAEadGgIAApY8A
Date: Tue, 12 Sep 2023 00:43:48 +0000
Message-ID: <B37C194E-F73F-4E79-A62F-41991364C511@arm.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-9-Henry.Wang@arm.com>
 <19a8b434-3b2d-9e3d-fc05-fc2828d1abbd@amd.com>
 <CE8AF1AE-8F01-4DD8-86EE-12C4AD18E4A0@arm.com>
 <ec41bd05-4a25-438b-84cb-ca86d7bf34d8@xen.org>
In-Reply-To: <ec41bd05-4a25-438b-84cb-ca86d7bf34d8@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DB4PR08MB9381:EE_|AM7EUR03FT056:EE_|AS2PR08MB9200:EE_
X-MS-Office365-Filtering-Correlation-Id: 9f84557a-f72b-46fa-d839-08dbb329595e
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 JsuyaejrwiKyrXsxVXul5D8eF0+Sfs73GlDVCW9G34bQDMT6A3lFjQ2VograG8N0fYoHo0x1teOT9HaNUI6HvRhKseLfDaKtY0kW2pmIr0Z/ajHpLuLSzr4OAdrvCuBSuhKYl+williylFhUUVK22OFSd6LuaxNbFCCX4VQahAe3RoqMAPCakUqtGzw9SHiOnUY82QEyZABMLt7Zn1CTsoHvWPVBZjsSb/QD2xaYRkU8S/XnY+CORgVePmonDILOvCfxewBNzBHhqP57/0KKfCcBbcfYB8LcLf6ohZm9e0mvWyfT10qulI1SZnycysvnsHx2xGkmakp0SL1+iXts8QCGK0YF8tRacDn5Q9FG6wPE7PtGOV89sAPjT2W6TKse5AFiG39l2LL5aGB/ATteQm0DBZlXLL6nTKfQ8hqAI8qhiivom2RH3dMbz1MoAPpS4yKK23lshEQ0g8ctMubyV64jEhcrV9Lf/7CZM4rikaHPTZq22W/lEBo7iNVEdIm4bfwJkUTvZZ9zVz4Q7PXMkBtvTiNeMNV1MaGpBd1GnTd0vHvBJOtgy7YXIhz9t+j/111jLCxrFVaQ28mVEK+0/S0XJAw4pNsL4dzV0ghJvi94Z90RG1hpycPqoF/VRHH/+J+HB2Bi5Fx9IjTdiPI5CQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(136003)(376002)(396003)(366004)(186009)(1800799009)(451199024)(71200400001)(53546011)(6506007)(6486002)(6512007)(83380400001)(2616005)(478600001)(2906002)(76116006)(66556008)(66476007)(66946007)(64756008)(66446008)(54906003)(6916009)(26005)(4326008)(8676002)(91956017)(5660300002)(8936002)(316002)(36756003)(33656002)(86362001)(38100700002)(38070700005)(41300700001)(122000001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <FA91719642174F429348E56711A12F43@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR08MB9381
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT056.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	b2905a36-7d4c-4e3a-26cc-08dbb32953e2
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pLCd+8hbejAzCt8jDfp2sbQfR1FPeI1Yct7cp2UW+4bzx1aOEIjU4inXPjdhopCQSY55L3IfxsyYCT/yf5lypTBmPo9+lGiA+4xwfu+Ch3BWZd7RmwIzGG+mTb/XUi+QH+Dov6I5mKlxTEzepJlxGIVx/jYtSRg8IQCXPKTE7GqW/fIKIVt34Wr7jjY0JQQaH0vjYYuf8XKj0QYFOO9k9lnY6gj4W4bboGUOgpGRUZO9IvMu2fVdiY9diDo3jv5D6ab9R/PHODgM2kLSyhLj0IwsbkFVkXNqeUGbd6HeizsHCF+tk5GJkojGZJCJ2jAGt2+Q3E1dGWQIycUPNKan9aDj0WqUi4hwnidfkzkHRjq3x7fFyXDqRs1Exh/riM/YS7B9/1DyFtAGaqNK4KBngErAEZVdjziQIdtXss1zsWGcwgyhvm8Yom++C77KbVYILJWrK77vkQWtPfcpMmQQIoEZDuXQfY/FJx12s0rTA30IWLgE+HvV6VcMxr0xP8irpC7HQu5Ozbbs73SinkfuiOstj/JfO0RjIQsCdiPQ0T76Jvxo1zgJgvLjEQgQyhAFxN15xoG0WSeRxlXDQgnSELXr550y+gyyZaGDmbVN+q6AI4/xhOt4NBOx/x5rhVP2+oeaRrWNbALTrjn+03O7OhZmiffo5M7MSNEPVByrk59SUFtXye62Pzm9/fku80WgBpuyLOJSR1/qOLPCS/qaFpvXnCTnCCxJBymIG9MGDqZBxY8QcD0HCYs5dOpq1ABk
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(346002)(396003)(39860400002)(186009)(451199024)(1800799009)(82310400011)(46966006)(40470700004)(36840700001)(81166007)(356005)(70206006)(53546011)(6486002)(6506007)(40460700003)(36756003)(33656002)(40480700001)(86362001)(82740400003)(36860700001)(47076005)(336012)(6512007)(8676002)(26005)(2906002)(478600001)(83380400001)(4326008)(6862004)(5660300002)(8936002)(2616005)(107886003)(41300700001)(316002)(54906003)(70586007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 00:43:57.6851
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9f84557a-f72b-46fa-d839-08dbb329595e
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT056.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9200

Hi Julien,

> On Sep 11, 2023, at 22:51, Julien Grall <julien@xen.org> wrote:
> On 31/08/2023 10:16, Henry Wang wrote:
>>> On Aug 31, 2023, at 17:12, Ayan Kumar Halder <ayankuma@amd.com> wrote:
>>>=20
>>> Hi Henry,
>>>=20
>>> On 28/08/2023 02:32, Henry Wang wrote:
>>>>=20
>>>> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
>>>> index 33b038e7e0..39218cf15f 100644
>>>> --- a/xen/arch/arm/arm32/head.S
>>>> +++ b/xen/arch/arm/arm32/head.S
>>>> @@ -83,6 +83,25 @@
>>>>          isb
>>>>  .endm
>>>>=20
>>>> +/*
>>>> + * Enforce Xen page-tables do not contain mapping that are both
>>>> + * Writable and eXecutables.
>>>> + *
>>>> + * This should be called on each secondary CPU.
>>>> + */
>>>> +.macro pt_enforce_wxn tmp
>>>> +        mrc   CP32(\tmp, HSCTLR)
>>>> +        orr   \tmp, \tmp, #SCTLR_Axx_ELx_WXN
>>>> +        dsb
>>>> +        mcr   CP32(\tmp, HSCTLR)
>>>> +        /*
>>>> +         * The TLBs may cache SCTLR_EL2.WXN. So ensure it is synchron=
ized
>>>> +         * before flushing the TLBs.
>>>> +         */
>>>> +        isb
>>>> +        flush_xen_tlb_local \tmp
>>>> +.endm
>>>> +
>>>>  /*
>>>>   * Common register usage in this file:
>>>>   *   r0  -
>>>> @@ -254,6 +273,7 @@ secondary_switched:
>>>>          /* Use a virtual address to access the UART. */
>>>>          mov_w r11, EARLY_UART_VIRTUAL_ADDRESS
>>>>  #endif
>>>> +        pt_enforce_wxn
>>>> =20
>>>=20
>>> Can you move ^^^ to before "#ifdef CONFIG_EARLY_PRINTK" so that the MMU=
 related functionality are bundled together?
>>>=20
>>> Also AFAIU, mov_w has not effect on pt_enforce_wxn().
>>>=20
>>> So that I can create a function "enable_secondary_cpu_mm()" - similar t=
o one you introduced for arm64
>> Sure, I am good with this if other maintainers do not have any objection=
s.
>=20
> I am objecting. It would be quite handy to print a message on the console=
 to indicate that we are enforce WXN. So we want to update UART address (st=
ored in r11) before hand.

Good idea about the printing, I am happy to add a printed message on top of=
 the macro saying that we are enforcing WXN from here if you agree.

Kind regards,
Henry

>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 00:48:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 00:48:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599846.935429 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfraF-0000n0-9z; Tue, 12 Sep 2023 00:48:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599846.935429; Tue, 12 Sep 2023 00:48:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfraF-0000mt-6v; Tue, 12 Sep 2023 00:48:51 +0000
Received: by outflank-mailman (input) for mailman id 599846;
 Tue, 12 Sep 2023 00:48:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O/bM=E4=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qfraD-0000mn-IT
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 00:48:49 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20625.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::625])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2281083e-5106-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 02:48:48 +0200 (CEST)
Received: from DB8PR04CA0025.eurprd04.prod.outlook.com (2603:10a6:10:110::35)
 by AS8PR08MB7917.eurprd08.prod.outlook.com (2603:10a6:20b:538::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Tue, 12 Sep
 2023 00:48:44 +0000
Received: from DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:110:cafe::fe) by DB8PR04CA0025.outlook.office365.com
 (2603:10a6:10:110::35) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Tue, 12 Sep 2023 00:48:44 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT026.mail.protection.outlook.com (100.127.142.242) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.11 via Frontend Transport; Tue, 12 Sep 2023 00:48:43 +0000
Received: ("Tessian outbound d084e965c4eb:v175");
 Tue, 12 Sep 2023 00:48:43 +0000
Received: from fc1eb1060015.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 52934736-CE9C-4C85-89FE-D0364896A288.1; 
 Tue, 12 Sep 2023 00:48:36 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id fc1eb1060015.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 12 Sep 2023 00:48:36 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB4PR08MB9381.eurprd08.prod.outlook.com (2603:10a6:10:3f3::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Tue, 12 Sep
 2023 00:48:34 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 00:48:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2281083e-5106-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hHpZ/syfh4Ns3ZjteQlBPWifu7e4GBdbj8lhGAmfTfI=;
 b=EA0kPTC23UvYddOQ8YepWopC7/ll7CEybhFox78VK38Km0UR0yOC0wggJ8yFgZvXOp/ZXe5N7oektcYzI9Kt4syp2kpUmqdIpqqmN4KNQg+C/i58xVhTB1qCsBq6RMb5DbWFQl7Fsjfee4FxVHiIacLW3zB16hSGaqWQm8sIjF8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: b5241ac7ffd08afe
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GMbq8UiJF9NJAWo3zMgvqs3WPpJt/pbLVZEZaejf5zzutnWQ+lf9eRleLH6vF2z+RGYRwmOovyvsbenXmO2N+XZVa5n9Sdul6bfMgD1Brhd7LZj+dYXjmeTJPOe+LWIJ8Ta4uo1eR73DB9SFAk97zE9I5N0OkRa67uZf4QjCEOoFhBxwyceJaZp3Im/7Rml2BtN1FpeoMlkZtluLoBigtuKunc4/pRGvAGC12IRjHfHLFFqibkCeQjzr049hudMW/0eEHhs7xJ8pBAyby1CjbUefxN5c1DsFjDdAM5uWLPUA6vF11/s16JeEIyxdmu6yURtTGkWzR7iDwJpLEZHTUw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hHpZ/syfh4Ns3ZjteQlBPWifu7e4GBdbj8lhGAmfTfI=;
 b=Che0J+ZKEo6t5gLHB1TEOpWppVFvYR6kjYTQu8fBzPeerCONcOKkWdjQf5XBC/569fHwRshrM/0IBeVzoiOpcoXGO6JO6VCibWEFJ7qwVcldTPYlYOKNZueRLsro5a7h1EetAUlV9YtdGwxJzRJHDp+SWVrohzUUBHIkeeaixEWCDKCdIa2wm3pGHTGhTYAIohYGcuNI72hLpfoEtge0AMPh4RcY0fIDRK/fLRLXZZQZP1jGg+FsZN68Z3fg28GifScHSCHOapXK67mycbF7V4ZGeWV2Zg8OSgOke4icLDlRSQybEOke/Yf0J3+OgQke+voulVzk6zfaQKMhxy8zEQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hHpZ/syfh4Ns3ZjteQlBPWifu7e4GBdbj8lhGAmfTfI=;
 b=EA0kPTC23UvYddOQ8YepWopC7/ll7CEybhFox78VK38Km0UR0yOC0wggJ8yFgZvXOp/ZXe5N7oektcYzI9Kt4syp2kpUmqdIpqqmN4KNQg+C/i58xVhTB1qCsBq6RMb5DbWFQl7Fsjfee4FxVHiIacLW3zB16hSGaqWQm8sIjF8=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Andrew
 Cooper <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>, Demi Marie Obenour <demi@invisiblethingslab.com>
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent timing
 mode
Thread-Topic: [PATCH v2 for-4.18?] x86: support data operand independent
 timing mode
Thread-Index: AQHZ5MDnZ00SVLfzmUmuQZLkdMd2orAWXCkA
Date: Tue, 12 Sep 2023 00:48:34 +0000
Message-ID: <29A9BF11-7ECF-4C3E-9D5E-9D44E63A297A@arm.com>
References: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
In-Reply-To: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DB4PR08MB9381:EE_|DBAEUR03FT026:EE_|AS8PR08MB7917:EE_
X-MS-Office365-Filtering-Correlation-Id: 2641641b-ec5a-495a-f482-08dbb32a03b7
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 Biq+Hmd1G71kWQzY71ARnv0qnK5EO0ZSLOjKq6d8TzcMLWknpZ3JBCDRb032A/BGCEiriXVHMXBbefg1nGfO7X7FlbGlSg3ShgqavTmXiPj69Axq87znFVqNM+4/lP1rbzsytG/s10ACps4mWlwjWZfyDReTd/dsPk4tIQCVt5tX6OfYY/30g8wwyIz7exGB+LmAB8gRLd35DoqmW1r0KHg38W5yalWVbwLxYw/crW5HGDdGoGs1IwVaLeOayoundTnHGrOybG8BBe7s5HrmBKwD5rgWhR5dIj61lu7bUrcRoI8XYz8R+9LgkJry2oyLuYImTxZsF6TDAbSSfB4l9fO0mAUwjNk/8EdENo51pqEiGRekeI78OciP+3uGBNDjlkBp91Sz811VciuVfssm6l5qflE0L9gdui6dPiED0yQyC905bq0FikBUEMvTVr3KNmJXPWC3zIPgLiuZ9C2oMZ8lSM2+ktwVGWktmOSWxe0G/RrumTULG21ubO8z4hStKJkNfmi2xwzegAZmmPBBpfhQkGHBC70PyLIKi4lXXtgaZ5PDZ8Hckdo086VHbiPuAsF5x7iUChdqM6oHXf88OMYcTZKBe/3eEm4esOMkSiR6JGBPabfOxJWNdQHPF0D4NjesJciKpQRMofZo35TROw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(136003)(376002)(396003)(366004)(186009)(1800799009)(451199024)(71200400001)(53546011)(6506007)(6486002)(966005)(6512007)(83380400001)(2616005)(478600001)(2906002)(76116006)(66556008)(66476007)(66946007)(64756008)(66446008)(54906003)(6916009)(26005)(4326008)(8676002)(91956017)(5660300002)(8936002)(316002)(36756003)(33656002)(86362001)(38100700002)(38070700005)(41300700001)(122000001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <429383D608DF804AAD0B24F781851E08@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR08MB9381
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	878d1243-431c-42ed-2f0e-08dbb329fe65
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xQsFnr1HLPiL+Y47jSXLDV4y4+uK98Qx2OBgHLbLdF1obOVYMBs+lDXYXE6+PLewtCn9tej/+VyHui8omtoYrw/BE+66GNoA+hVoKtcASvq4qw3j+hg2lv0JO822bVbz4CnTOHffVjpwk2zyo74GaYYPAF08iLe2+EB5twloyUPwB6oIUM91iT1Vdh8f1OFJoA5spDSZ5j4UN3d6Y+0eCmIzljNe6H9GfQQVk4hgZX/UqAmaqugdGhym3jU6iCmOwv5WxOz3iP1ic5+JeNxdyhI15koQzUwt2lB73XvyVYRWeeNeLXZVsLg7pS4C+CK+cIO96brPV+f2eFlPXpRHqVvjjv0zQe8+CbjaGpBSyAQMxPwgs4jScH5JIpgb38dylIlv/wFpcTMeUzYKAAmPAJTBGFtAAtAioW0I6e+3k96z68ntdr8eEeXY23wxsw+NvtJfuSxJF0A3Tiv77vqfGQbBE84lwiL1DwCPv2/S/B0JS8JgfWGMyLqV7KOFGdRflIZizcM/zJ62EhQGSF+UsOXk+7+lhykUhSCisYGtvdiUeqbbza2IEX7mgoZ/LFmKvbfPIWN59PCglH9tVVf1gSeG7WGPAa+H2AlBnka7VfRxahYV+gq576OID5XyJvVj2P8htTs+qD8UQGy6M4YDb0O7uCmfFwIbS4EjyffJOF3R0FPajxZhmx0xdsl1mZcoPJR1HiIiuXDiIMWjHx4+5MgrgnF55ii0Vn9ckKN3IVw=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(376002)(346002)(136003)(39860400002)(82310400011)(451199024)(186009)(1800799009)(46966006)(36840700001)(40470700004)(86362001)(6486002)(53546011)(6506007)(6512007)(966005)(478600001)(83380400001)(2906002)(6862004)(336012)(26005)(2616005)(316002)(54906003)(70206006)(41300700001)(70586007)(8936002)(8676002)(5660300002)(4326008)(107886003)(36756003)(47076005)(40480700001)(33656002)(36860700001)(40460700003)(82740400003)(356005)(81166007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 00:48:43.5442
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2641641b-ec5a-495a-f482-08dbb32a03b7
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB7917

Hi Jan,

> On Sep 11, 2023, at 23:01, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> [1] specifies a long list of instructions which are intended to exhibit
> timing behavior independent of the data they operate on. On certain
> hardware this independence is optional, controlled by a bit in a new
> MSR. Provide a command line option to control the mode Xen and its
> guests are to operate in, with a build time control over the default.
> Longer term we may want to allow guests to control this.
>=20
> Since Arm64 supposedly also has such a control, put command line option
> and Kconfig control in common files.
>=20
> [1] https://www.intel.com/content/www/us/en/developer/articles/technical/=
software-security-guidance/best-practices/data-operand-independent-timing-i=
sa-guidance.html
>=20
> Requested-by: Demi Marie Obenour <demi@invisiblethingslab.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> This may be viewed as a new feature, and hence be too late for 4.18. It
> may, however, also be viewed as security relevant, which is why I'd like
> to propose to at least consider it.

Fine with me if this patch can be properly reviewed on time, because of
the security relevance.=20

>=20
> Slightly RFC, in particular for whether the Kconfig option should
> default to Y or N.
>=20
> I would have wanted to invoke setup_doitm() from cpu_init(), but that
> works only on the BSP. On APs cpu_init() runs before ucode loading.
> Plus recheck_cpu_features() invoking identify_cpu() takes care of the
> BSP during S3 resume.
> ---
> v2: Introduce and use cpu_has_doitm. Add comment "borrowed" from the
>    XenServer patch queue patch providing similar functionality.
>    Re-base.
>=20
> --- a/docs/misc/xen-command-line.pandoc
> +++ b/docs/misc/xen-command-line.pandoc
> @@ -788,6 +788,14 @@ Specify the size of the console debug tr
> additionally a trace buffer of the specified size is allocated per cpu.
> The debug trace feature is only enabled in debugging builds of Xen.
>=20
> +### dit (x86)
> +> `=3D <boolean>`
> +
> +> Default: `CONFIG_DIT_DEFAULT`
> +
> +Specify whether Xen and guests should operate in Data Independent Timing
> +mode.
> +

Since a new cmdline interface is added, I am wondering would such
addtion deserves a CHANGELOG entry?

Kind regards,
Henry



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 00:52:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 00:52:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599852.935438 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfrda-0002ES-P6; Tue, 12 Sep 2023 00:52:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599852.935438; Tue, 12 Sep 2023 00:52:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfrda-0002EL-MN; Tue, 12 Sep 2023 00:52:18 +0000
Received: by outflank-mailman (input) for mailman id 599852;
 Tue, 12 Sep 2023 00:52:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O/bM=E4=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qfrdZ-0002EF-CA
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 00:52:17 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20619.outbound.protection.outlook.com
 [2a01:111:f400:7d00::619])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9e4d9516-5106-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 02:52:16 +0200 (CEST)
Received: from AM6P195CA0019.EURP195.PROD.OUTLOOK.COM (2603:10a6:209:81::32)
 by AS2PR08MB8951.eurprd08.prod.outlook.com (2603:10a6:20b:5fa::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Tue, 12 Sep
 2023 00:52:12 +0000
Received: from AM7EUR03FT062.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:81:cafe::c0) by AM6P195CA0019.outlook.office365.com
 (2603:10a6:209:81::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Tue, 12 Sep 2023 00:52:12 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT062.mail.protection.outlook.com (100.127.140.99) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.11 via Frontend Transport; Tue, 12 Sep 2023 00:52:11 +0000
Received: ("Tessian outbound b5a0f4347031:v175");
 Tue, 12 Sep 2023 00:52:11 +0000
Received: from 2b96ab36140d.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 234F5C94-3AE2-4959-B636-26E91545BAF2.1; 
 Tue, 12 Sep 2023 00:52:00 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2b96ab36140d.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 12 Sep 2023 00:52:00 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DU0PR08MB7518.eurprd08.prod.outlook.com (2603:10a6:10:312::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Tue, 12 Sep
 2023 00:51:56 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 00:51:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9e4d9516-5106-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=G66WJsm9YoL7h5KPdifZjeRlsNp5KT6hzQIL9HF7ogk=;
 b=ZUr4xzGyiM0mg17orU+8FhvnMzrniuDyvzAmfchgsm5h0hbZ3a3ufaV9U8/SSZhIjppl1ciRvf2zcFqZQuiSR5+D2ZM4JQcfX3fvvmd/d91ElKoYnse1+sOo//qbMMr6l21kdjJ/oH3N7tV14xclns9W03BWu45Ey4l1/2so45g=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 31c9191d2fb1a738
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=I9/wUvsLgRzU0nP8LTPelxb8+0BHRcxxYFLSNjXAXB9jcFbls03PhGuqRXMsJp4c56gBpn3/zLz/EEXTXjScnWsLhMGvTELvOm6HqhE0zCoN+MBGgt3AcS6meCjfycnZxaoWaI3Tq5qpSkSikrSKiKG4ERVmN1yW30NSaIg4dd1JHOWiFH3RCDAjNm2FJRfODtFtDjEua0eRP8E1PhcI41ZYz7kNOFlnYGEtnzfO6NMrPxaZ459riZXj6kQ1cXc36rqzdb6cxRYoe8o8MNXOnk5dT98iPGq4MDivrb7TNIkkrUMxJQKxb5eDYvnGdkXQxzFGttoKFoPJ1oWiqXcTPg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=G66WJsm9YoL7h5KPdifZjeRlsNp5KT6hzQIL9HF7ogk=;
 b=V+6uBkfNjlup925wdbr7jJYkKtqDQSB/IRU1Ae50IfbvhTxWkb6n8XoWk0nbYNGjBg9WlL709HmI1FZR23YbwuW/y1uHNff8wN0NevuXVTg3IHLAw3dQ4QHw5SIs3omZQDo8vdCsyVTvks7hrXdep0ibC8jvJepYkpQFINY2aGCeVbNajfvrU/6F0A5ueDA77xlN1LpJHCC18C1LdMujiFuSmxQ6xpLPAnRT0QHpc2PvXOZ3+jykEtyEGXAvx35aKw6y4afZhj38wXbK/LZ596So5SNGPWCvV5woce5X/2Vecei1IDcjIRVoDR4izabg4U6AQADCu+ec3JenDYC+iw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=G66WJsm9YoL7h5KPdifZjeRlsNp5KT6hzQIL9HF7ogk=;
 b=ZUr4xzGyiM0mg17orU+8FhvnMzrniuDyvzAmfchgsm5h0hbZ3a3ufaV9U8/SSZhIjppl1ciRvf2zcFqZQuiSR5+D2ZM4JQcfX3fvvmd/d91ElKoYnse1+sOo//qbMMr6l21kdjJ/oH3N7tV14xclns9W03BWu45Ey4l1/2so45g=
From: Henry Wang <Henry.Wang@arm.com>
To: Ayan Kumar Halder <ayankuma@amd.com>, Penny Zheng <Penny.Zheng@arm.com>
CC: Stefano Stabellini <sstabellini@kernel.org>, Xen-devel
	<xen-devel@lists.xenproject.org>, Julien Grall <julien@xen.org>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>, Wei Chen <Wei.Chen@arm.com>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v6 00/13] xen/arm: Split MMU code as the prepration of MPU
 work
Thread-Topic: [PATCH v6 00/13] xen/arm: Split MMU code as the prepration of
 MPU work
Thread-Index: AQHZ2U+MSWp0FTqbTEGC9gDQVfV1eLARkWSAgAQtfICAALUbgA==
Date: Tue, 12 Sep 2023 00:51:56 +0000
Message-ID: <F05F6158-7D79-4EC3-B591-93DE4018EB33@arm.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <alpine.DEB.2.22.394.2309081515340.6458@ubuntu-linux-20-04-desktop>
 <8da354d9-5b80-709d-8b0a-be1ba5694b37@amd.com>
In-Reply-To: <8da354d9-5b80-709d-8b0a-be1ba5694b37@amd.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DU0PR08MB7518:EE_|AM7EUR03FT062:EE_|AS2PR08MB8951:EE_
X-MS-Office365-Filtering-Correlation-Id: 67fd1e72-27e0-48da-9b2e-08dbb32a7feb
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 C1eRvodfAvTUWlbxYvNdFzHfMRHLPjEcVhfaeEEqco0JCOEGlImNikVjhtzbRmnJCD4VGjSa9vY07qGu586KKZqBvACD8BrqJcbltxDYlk2Tyx0gl70oka+asGV6hdcEr2uj+yBKG2Q9O95AEOQnVnanrB0cYSraep9RSN9SzMc/GoRmfND7zpKbn7sz8O/atQ+WKuI9+Vv57KISzTBO1jGrsbYeNUlnAmqri7QY3uNHNNUff0Vo4/agCokNpLwa1i7TIRxE9xfQ12o6adAes9zVUYZXMrJ7s878DDfbeprw61BQt3m0qwXXRStxJGGqGoSpXQdUCfSmOGgPhWVLxEpmRcV5xNBssPRET5LgoKtSd0WgwIubyZDEmQ9x0JFn36inixxJiYhyOsyt0eOg6b/gIv9VcAEuTz2cS6z9I5+aq5qH+Sgo3obbnpO00aLsgy1zIQO5UFnsitlwdLIqTo83SAKgupsEdsxzNFRxlvu3Oj3YbifEp1CApT0ibFpHln8WXoLiBSCiTawwFt8S2z7D9cy9lUzbFmLxP1tJxd5q9yRd7IO1NfO18ftgwvvBT2HxvnZmYUISQMNfX3+TRa2PBMYKPInUzPjw+JrVvK4Zg1mCs02VQD7NSULzH4dA
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(396003)(346002)(136003)(376002)(1800799009)(451199024)(186009)(71200400001)(6506007)(53546011)(6486002)(41300700001)(83380400001)(26005)(478600001)(2616005)(966005)(2906002)(54906003)(66446008)(6636002)(66476007)(76116006)(66946007)(66556008)(316002)(64756008)(91956017)(8676002)(4326008)(8936002)(86362001)(36756003)(6512007)(38070700005)(33656002)(38100700002)(5660300002)(110136005)(122000001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <C478792308C9854AB10A2FEC3AEF11F1@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7518
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT062.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	eddd081f-2d31-414f-34b6-08dbb32a76a7
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kixE6eUky9cj9ff1r1jTGBL4BVhohlH8/p2asS+cpw1X6/e6MPwu3wxQwMxpdeLxEwiyDkbkyg/zax+EFQIOuQf8LF/QnQu5UEsVP335CO1GtXyhtX1c/T6BX1uIQkHPGODt90qJodc6EDCHB4sym+04XGCOz2WdNWTHnZB8ocr0GScnj0twuoRsQiW09g9a4EAVyX6TeIr1QldxUB9Gy9MMHW5fAYCwfF/QcgHnuTqpzUqwvs4csWDiQmNp0njRtzza/9KgGnk1tkMjULA/7KF2vOG8VRYCQeH3zoxckGgFN5uc1biJTvZL+p2+tPPslmLXCtf2wg4VlvoG+AW/3WZIxVWZzsSvC0ddNJ+QC4fyS42/dytV67uP9WoVc0QNt36noVM58thJsCwBGA/inrBaWUjapfNi8DVKANo7MrOKoCMwJZG8fHd17idr01TK/oE1XGLDH9+BlSpeLDNZNP1IyNEKXysT7nfq98e58kGQyG66dWKFbgXcPmXovT3UUH09j6ovSZDX/7QRaTi2w39vkP8/sgsmm9ILtyC3er7fCHr4J7vwB/Bx9TBU1fzhsZkVfZbFsp8a5C3KfSgYPyDe/Bu5F+Ynst96lntfAujw4Vwg1JMEIYVcpvzgMeGDZvsgQ438abB+sbMuKQePGYyIXlzUEKQMqPKMOo0UBbrj9SBfCbXWjbZEYxsycu8fadGe6Ll58nco2MrVsDdbGuwOIZUqOPZBiMgly5JM2F8=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(396003)(376002)(346002)(136003)(186009)(451199024)(82310400011)(1800799009)(40470700004)(36840700001)(46966006)(81166007)(33656002)(36756003)(86362001)(40480700001)(2616005)(6512007)(5660300002)(966005)(478600001)(54906003)(53546011)(110136005)(6636002)(70586007)(6506007)(70206006)(316002)(6486002)(41300700001)(26005)(336012)(8936002)(8676002)(4326008)(47076005)(107886003)(356005)(82740400003)(40460700003)(83380400001)(36860700001)(2906002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 00:52:11.8577
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 67fd1e72-27e0-48da-9b2e-08dbb32a7feb
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT062.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8951

Hi Ayan,

> On Sep 11, 2023, at 22:03, Ayan Kumar Halder <ayankuma@amd.com> wrote:
>=20
> Hi Henry,
>=20
> On 08/09/2023 23:15, Stefano Stabellini wrote:
>>=20
>> I committed patches 1-5
>>=20
>> On Mon, 28 Aug 2023, Henry Wang wrote:
>>>=20
>>> Henry Wang (9):
>>>   xen/arm: Introduce CONFIG_MMU Kconfig option
>>>   xen/arm64: Split and move MMU-specific head.S to mmu/head.S
>>>   xen/arm64: Fold setup_fixmap() to create_page_tables()
>>>   xen/arm: Split page table related code to mmu/pt.c
>>>   xen/arm: Split MMU system SMP MM bringup code to mmu/smpboot.c
>>>   xen/arm: Fold mmu_init_secondary_cpu() to head.S
>>>   xen/arm: Extract MMU-specific MM code
>>>   xen/arm: Split MMU-specific setup_mm() and related code out
>>>   xen/arm: Fold pmap and fixmap into MMU system
>>>=20
>>> Penny Zheng (2):
>>>   xen/arm: Rename init_secondary_pagetables() to prepare_secondary_mm()
>>>   xen/arm: mmu: move MMU specific P2M code to mmu/p2m.{c,h}
>>>=20
>>> Wei Chen (2):
>>>   xen/arm64: head.S: Introduce enable_{boot,secondary}_cpu_mm()
>>>   xen/arm: Move MMU related definitions from config.h to mmu/layout.h
>=20
> Except for "[PATCH v6 08/13] xen/arm: Fold mmu_init_secondary_cpu() to he=
ad.S " where I have a small comment, I am happy with the current set.

Thanks!

>=20
> I have made the corresponding changes for Arm32 MMU (See https://gitlab.c=
om/xen-project/people/ayankuma/xen/-/commits/mmu_arm32_on_arm64?ref_type=3D=
heads ),
>=20
> and triggered the CI. It looks all good (qemu-smoke-ppc64le-pseries-gcc f=
ailure seems unrelated).
>=20
> I have sent out the patches for review so that the maintainers/you can ha=
ve a look and review them

Sure, me and Penny will have a look.

Kind regards,
Henry

>=20
> ("[XEN v1 0/4] xen/arm: Split MMU code as the prepration of MPU work form=
 Arm32").
>=20
> - Ayan



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 01:15:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 01:15:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599865.935455 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfrzq-0004iw-OS; Tue, 12 Sep 2023 01:15:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599865.935455; Tue, 12 Sep 2023 01:15:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfrzq-0004ip-KX; Tue, 12 Sep 2023 01:15:18 +0000
Received: by outflank-mailman (input) for mailman id 599865;
 Tue, 12 Sep 2023 01:15:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2+51=E4=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qfrzq-0004ij-82
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 01:15:18 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org
 [2604:1380:40e1:4800::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d30fe0d2-5109-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 03:15:16 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id F18BECE19B7;
 Tue, 12 Sep 2023 01:15:08 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 236F8C3279B;
 Tue, 12 Sep 2023 01:15:06 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d30fe0d2-5109-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694481307;
	bh=kc79cE19D2SgPw/0+3mzwupSU4EsEpOLwtqGmPwaQXI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=R4HRNu/n74kg+NrNVX6SxwrT9kaN1liG7/PW9eAspstIqyL2ONTGFwSyszXhqDJTd
	 0x0DPu8p/d17sZ6f+SyaLfMsRn/19LkLC3t+pVvDsBny7Q6iIeJB5LNwcbpZmx5QJC
	 9xunTWqEDN1c8dgawhQYyuLVxkLD20M4omY33JABiPLxaXqWnoeEFk7os3iFs4a/Z0
	 6t743+PR4AfJFtLMcx58Dwb540w7yR420nuSjVKkV8edp3KE9r1isI4K5lTHuLEYZB
	 8xBPPWFv8BV8RC2DMMFYIvjgz8W/HnZKS1nX4M8uydtWybauZML4dmaLFbDoIqn+KE
	 Znd3oJZQ/T6Lw==
Date: Mon, 11 Sep 2023 18:15:03 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Javi Merino <javi.merino@cloud.com>
cc: xen-devel@lists.xenproject.org, 
    =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, 
    Jan Beulich <jbeulich@suse.com>, George Dunlap <george.dunlap@cloud.com>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, Bertrand.Marquis@arm.com
Subject: Re: [XEN PATCH v2 1/5] automation: add python3's setuptools to
 containers
In-Reply-To: <4f14ea4aeb44c234d9930578614a35234769fa41.1694450145.git.javi.merino@cloud.com>
Message-ID: <alpine.DEB.2.22.394.2309111805530.1847660@ubuntu-linux-20-04-desktop>
References: <cover.1694450145.git.javi.merino@cloud.com> <4f14ea4aeb44c234d9930578614a35234769fa41.1694450145.git.javi.merino@cloud.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 11 Sep 2023, Javi Merino wrote:
> In preparation of dropping python distutils and moving to setuptools,
> add the python3 setuptools module to the containers that need it.
> 
> The centos7 container was building using python2.  Change it to build
> python scripts using python3.
> 
> Debian Stretch is no longer debian oldstable, so move to the archive
> repositories.
> 
> Signed-off-by: Javi Merino <javi.merino@cloud.com>
> ---
>  automation/build/alpine/3.18.dockerfile        |  1 +
>  automation/build/archlinux/current.dockerfile  |  1 +
>  automation/build/centos/7.dockerfile           |  3 ++-
>  automation/build/debian/bookworm.dockerfile    |  1 +
>  automation/build/debian/stretch.dockerfile     | 11 ++++++++++-
>  automation/build/suse/opensuse-leap.dockerfile |  1 +
>  automation/build/ubuntu/bionic.dockerfile      |  1 +
>  automation/build/ubuntu/focal.dockerfile       |  1 +
>  automation/build/ubuntu/trusty.dockerfile      |  1 +
>  automation/build/ubuntu/xenial.dockerfile      |  1 +

We are missing:
automation/build/alpine/3.18-arm64v8.dockerfile
automation/build/suse/opensuse-tumbleweed.dockerfile
automation/build/suse/opensuse-leap.dockerfile
automation/build/debian/jessie-i386.dockerfile
automation/build/debian/bookworm-i386.dockerfile
automation/build/debian/stretch-i386.dockerfile
automation/build/debian/jessie.dockerfile
automation/build/debian/bookworm-arm64v8.dockerfile
automation/build/fedora/29.dockerfile

+Bertrand because I am not sure if we need any changes to the Yocto
containers




>  10 files changed, 20 insertions(+), 2 deletions(-)
> 
> diff --git a/automation/build/alpine/3.18.dockerfile b/automation/build/alpine/3.18.dockerfile
> index ca5756955e..5d2a69a060 100644
> --- a/automation/build/alpine/3.18.dockerfile
> +++ b/automation/build/alpine/3.18.dockerfile
> @@ -34,6 +34,7 @@ RUN apk --no-cache add \
>    ocaml-findlib \
>    patch  \
>    python3-dev \
> +  py3-setuptools \
>    texinfo \
>    util-linux-dev \
>    xz-dev \
> diff --git a/automation/build/archlinux/current.dockerfile b/automation/build/archlinux/current.dockerfile
> index 13fb472d9e..47e79637a4 100644
> --- a/automation/build/archlinux/current.dockerfile
> +++ b/automation/build/archlinux/current.dockerfile
> @@ -34,6 +34,7 @@ RUN pacman -S --refresh --sysupgrade --noconfirm --noprogressbar --needed \
>          pixman \
>          pkgconfig \
>          python \
> +        python-setuptools \
>          sdl \
>          sdl2 \
>          spice \
> diff --git a/automation/build/centos/7.dockerfile b/automation/build/centos/7.dockerfile
> index 69dcefb2f0..f14f70014a 100644
> --- a/automation/build/centos/7.dockerfile
> +++ b/automation/build/centos/7.dockerfile
> @@ -22,7 +22,8 @@ RUN yum -y update \
>          ncurses-devel \
>          zlib-devel \
>          openssl-devel \
> -        python-devel \
> +        python3-devel \
> +        python3-setuptools \
>          libuuid-devel \
>          pkgconfig \
>          flex \
> diff --git a/automation/build/debian/bookworm.dockerfile b/automation/build/debian/bookworm.dockerfile
> index f8415425e6..ae008c8d46 100644
> --- a/automation/build/debian/bookworm.dockerfile
> +++ b/automation/build/debian/bookworm.dockerfile
> @@ -16,6 +16,7 @@ RUN apt-get update && \
>          libncurses5-dev \
>          libssl-dev \
>          python3-dev \
> +        python3-setuptools \
>          xorg-dev \
>          uuid-dev \
>          libyajl-dev \
> diff --git a/automation/build/debian/stretch.dockerfile b/automation/build/debian/stretch.dockerfile
> index 1af6c691f8..9f4b91a9e3 100644
> --- a/automation/build/debian/stretch.dockerfile
> +++ b/automation/build/debian/stretch.dockerfile
> @@ -1,4 +1,4 @@
> -FROM debian:stretch
> +FROM debian/eol:stretch
>  LABEL maintainer.name="The Xen Project" \
>        maintainer.email="xen-devel@lists.xenproject.org"
>  
> @@ -8,6 +8,14 @@ ENV USER root
>  RUN mkdir /build
>  WORKDIR /build
>  
> +# Debian stretch is now archived.  Fetch packages from
> +# archive.debian.org and skip the stretch-updates repository, as it is
> +# not longer valid.
> +RUN sed -i \
> +    -e 's/deb.debian.org/archive.debian.org/' \
> +    -e '/stretch-updates/d' \
> +    /etc/apt/sources.list

For the records I would prefer to get rid of Stretch altogether, but I
don't want to scope-creep this patch series, so this is OK for now.




>  # build depends
>  RUN apt-get update && \
>      apt-get --quiet --yes install \
> @@ -17,6 +25,7 @@ RUN apt-get update && \
>          libssl-dev \
>          python-dev \
>          python3-dev \
> +        python3-setuptools \
>          xorg-dev \
>          uuid-dev \
>          libyajl-dev \
> diff --git a/automation/build/suse/opensuse-leap.dockerfile b/automation/build/suse/opensuse-leap.dockerfile
> index 98ee42970d..7010b71aca 100644
> --- a/automation/build/suse/opensuse-leap.dockerfile
> +++ b/automation/build/suse/opensuse-leap.dockerfile
> @@ -60,6 +60,7 @@ RUN zypper install -y --no-recommends \
>          'pkgconfig(sdl)' \
>          'pkgconfig(sdl2)' \
>          python3-devel \
> +        python3-setuptools \
>          systemd-devel \
>          tar \
>          transfig \
> diff --git a/automation/build/ubuntu/bionic.dockerfile b/automation/build/ubuntu/bionic.dockerfile
> index e15f54431e..9cceb11ef9 100644
> --- a/automation/build/ubuntu/bionic.dockerfile
> +++ b/automation/build/ubuntu/bionic.dockerfile
> @@ -17,6 +17,7 @@ RUN apt-get update && \
>          libssl-dev \
>          python-dev \
>          python3-dev \
> +        python3-setuptools \
>          xorg-dev \
>          uuid-dev \
>          libyajl-dev \
> diff --git a/automation/build/ubuntu/focal.dockerfile b/automation/build/ubuntu/focal.dockerfile
> index 9c851c0620..e3d11194ee 100644
> --- a/automation/build/ubuntu/focal.dockerfile
> +++ b/automation/build/ubuntu/focal.dockerfile
> @@ -16,6 +16,7 @@ RUN apt-get update && \
>          libncurses5-dev \
>          libssl-dev \
>          python3-dev \
> +        python3-setuptools \
>          xorg-dev \
>          uuid-dev \
>          libyajl-dev \
> diff --git a/automation/build/ubuntu/trusty.dockerfile b/automation/build/ubuntu/trusty.dockerfile
> index 22e294c20c..7e819c8e4e 100644
> --- a/automation/build/ubuntu/trusty.dockerfile
> +++ b/automation/build/ubuntu/trusty.dockerfile
> @@ -17,6 +17,7 @@ RUN apt-get update && \
>          libssl-dev \
>          python-dev \
>          python3-dev \
> +        python3-setuptools \
>          xorg-dev \
>          uuid-dev \
>          libyajl-dev \
> diff --git a/automation/build/ubuntu/xenial.dockerfile b/automation/build/ubuntu/xenial.dockerfile
> index 2d2ba3e31f..19464eead8 100644
> --- a/automation/build/ubuntu/xenial.dockerfile
> +++ b/automation/build/ubuntu/xenial.dockerfile
> @@ -17,6 +17,7 @@ RUN apt-get update && \
>          libssl-dev \
>          python-dev \
>          python3-dev \
> +        python3-setuptools \
>          xorg-dev \
>          uuid-dev \
>          libyajl-dev \
> -- 
> 2.41.0
> 


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 01:25:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 01:25:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599871.935466 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfs9m-00070Z-Ng; Tue, 12 Sep 2023 01:25:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599871.935466; Tue, 12 Sep 2023 01:25:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfs9m-00070S-J4; Tue, 12 Sep 2023 01:25:34 +0000
Received: by outflank-mailman (input) for mailman id 599871;
 Tue, 12 Sep 2023 01:25:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2+51=E4=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qfs9l-00070M-Nk
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 01:25:33 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 42e11d22-510b-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 03:25:31 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 11C236148F;
 Tue, 12 Sep 2023 01:25:30 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6845BC116AE;
 Tue, 12 Sep 2023 01:25:28 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 42e11d22-510b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694481929;
	bh=UC6+C4rmbYHyh4OW18kdXEp+2FY1SLUSc9sd7zNUNoU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=KjZozD3mWO/5Y2JI8b9zK6UzC1OTltsdAukVx3+26tIE0Co5WDUCscvy2qnOQsZHr
	 T1iN/ON2FcsXVPWVc9NjAAAGvz0GKH1TA1Dp8U1rQ8n6svVTbQgYZgFk1qS6ZICZV4
	 qAcBDPcf9P21EdmkidD/LK63lLbEBShxFKZsQz8y0uLSFUCTdDzzWZCrs1QLdXvGmO
	 Cc1KNfNRjoh3GIQfBo8DE2sEDh44zm+Ma29kbUZ3S59A6i3bTSdL0G753H9KRvT4j6
	 CokpgMbtMsLZeU5pgevFJHCtIghnhzpCrnk1cDnhiskTeLC/Sg6QQZ3j9fCmZ1/YtD
	 uhYi/H8D5W2Bw==
Date: Mon, 11 Sep 2023 18:25:26 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Anthony Chan <anthonychan@nureva.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
    "bertrand.marquis@arm.com" <bertrand.marquis@arm.com>, 
    "julien@xen.org" <julien@xen.org>, 
    "Volodymyr_Babchuk@epam.com" <Volodymyr_Babchuk@epam.com>, 
    "michal.orzel@amd.com" <michal.orzel@amd.com>, 
    Dan Waqar <danwaqar@nureva.com>
Subject: RE: [EXT] Re: xen arm64 low power sleep support
In-Reply-To: <DM6PR20MB2779BA8D352E566A350844FCC1F2A@DM6PR20MB2779.namprd20.prod.outlook.com>
Message-ID: <alpine.DEB.2.22.394.2309111822330.1847660@ubuntu-linux-20-04-desktop>
References: <DM6PR20MB277971712E5415CB231AEB37C1E7A@DM6PR20MB2779.namprd20.prod.outlook.com> <alpine.DEB.2.22.394.2308291512271.6458@ubuntu-linux-20-04-desktop> <DM6PR20MB27795F4B6C327F7F031BABB0C1E6A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2308301814580.6458@ubuntu-linux-20-04-desktop> <DM6PR20MB2779E6DD63DC5CC9A1FE161AC1E5A@DM6PR20MB2779.namprd20.prod.outlook.com> <alpine.DEB.2.22.394.2309051848590.6458@ubuntu-linux-20-04-desktop>
 <DM6PR20MB2779A22E8CA641F0B2BBF038C1EFA@DM6PR20MB2779.namprd20.prod.outlook.com> <alpine.DEB.2.22.394.2309061629460.6458@ubuntu-linux-20-04-desktop> <DM6PR20MB2779BA8D352E566A350844FCC1F2A@DM6PR20MB2779.namprd20.prod.outlook.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 11 Sep 2023, Anthony Chan wrote:
> On Wed, 6 Sep 2023, Stefano Stabellini wrote:
> > On Wed, 6 Sep 2023, Anthony Chan wrote:
> > > Thanks, I've tried patches that stemmed from that discussion but
> > > unfortunately, doesn't resolve the issue.  In fact, the s2idle_loop
> > > branch might not be the problem at all.  I experimented with Xen to allow the
> > > 'idle-states' into the FDT and prevented xen_guest_init on Linux from disabling
> > > the 'cpuidle' driver (arch/arm/xen/enlighten.c).  When I trigger a suspend, I
> > > can see now another thread (believe it's the idle thread) call into
> > > drivers/firmware/psci/psci.c:__psci_cpu_suspend and then the Xen
> > > counterpart at xen/arch/arm/vpsci.c:do_psci_0_2_cpu_suspend.
> >
> > OK but remember that Xen is not implementing do_psci_0_2_cpu_suspend
> > correctly at the moment. Either we need to fix the Xen implementation, or we
> > need to configure Linux so that it calls WFI instead of __psci_cpu_suspend.
> >
> > As a test, can you try to apply the attached patch to Xen as a tenative fix?  Or
> > you could change drivers/firmware/psci/psci.c:__psci_cpu_suspend to call
> > WFI instead of the PSCI operation (making sure to go to the entry_point
> > instead of returning).
> 
> Tried the patch and substituting a WFI for a PSCI op, but Xen still watchdogs on the VMs in both cases.  I noticed the other Linux generic arm 'cpu-idle' driver which used to do issue a WFI/cpu_do_idle isn't useable anymore either.  I'm not sure if Xen may have used to rely on this generic driver to get the WFI.

I was running out of ideas so I went back to look at the watchdog
console log:

(XEN) do_psci_0_2_cpu_suspend
(XEN) Watchdog timer fired for domain 0
(XEN) Hardware Dom0 shutdown: watchdog rebooting machine

Checking the code, it seems that the Xen watchdog is set by
xen/common/sched/core.c:SCHEDOP_watchdog, which is called by
tools/libs/ctrl/xc_domain.c:xc_watchdog.

xc_watchdog is called by tools/misc/xenwatchdogd.c. Is it possible that
this problem is entirely caused by the daemon xenwatchdogd running in
the background? What happens if you kill xenwatchdogd and try again
without it (even better not start it at all)?


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 02:41:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 02:41:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599881.935478 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qftLP-0004I5-Ss; Tue, 12 Sep 2023 02:41:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599881.935478; Tue, 12 Sep 2023 02:41:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qftLP-0004Hy-P4; Tue, 12 Sep 2023 02:41:39 +0000
Received: by outflank-mailman (input) for mailman id 599881;
 Tue, 12 Sep 2023 02:41:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DQab=E4=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qftLO-0004Hs-ID
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 02:41:38 +0000
Received: from mail-pl1-x62f.google.com (mail-pl1-x62f.google.com
 [2607:f8b0:4864:20::62f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e4492f7c-5115-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 04:41:37 +0200 (CEST)
Received: by mail-pl1-x62f.google.com with SMTP id
 d9443c01a7336-1c0d5b16aacso41909495ad.1
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 19:41:36 -0700 (PDT)
Received: from leoy-huanghe (n058152048165.netvigator.com. [58.152.48.165])
 by smtp.gmail.com with ESMTPSA id
 ix13-20020a170902f80d00b001bb97e51ab4sm7218245plb.98.2023.09.11.19.41.30
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 19:41:34 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e4492f7c-5115-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694486495; x=1695091295; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=t71AL8sVzM156fkXKGFCtmQWNUCZh0sAusIxjHA5t2o=;
        b=vjR5RKkk7W77wVszRWhhdqM0TYleGZmgq0sQbB4PqH3BcbE82yn63/8n/mBnIPDiwG
         Ulvt5tGkyxlsTd9CPINMwShTLM2Wm7ESdbNTqQNxQRcWAgjb1eqiUENmZchwZ3Z+He3Z
         tw5glL15BCiZ/uSDyFX5JuUsPdlMvyCNzRdZ0Isg9G0J7jZusjDxviblWECJskR2FOdm
         zD0W9DjK45rBesFNvrTs9m6Fwm3N4dWUW62jVegN69SuSMQYnUfi4ivrzZshDA8egTGp
         h5+xa63ROAeOV+d1CcKMClfkLcDHlr1+qAbUghKp+1oO6ireaftf7f4Ava/F9bKkRXpx
         VFVg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694486495; x=1695091295;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=t71AL8sVzM156fkXKGFCtmQWNUCZh0sAusIxjHA5t2o=;
        b=uP20AcBSqgw2n5PKe6+SAFdNYb3i1X081n3OAwU18PQfcqFTCyL5oZyyx+umo3L0Ey
         WrlJw4qWuBIO/cjo/NsQBWUcZPwC+Tb93HqQO3smEpBveGzDgOI6dWXt40RjcfEbP0Rn
         8Gyf6NxF681XcO4qve21evvuRNCToZvazCx1MABlAyIRTlQuqPZrMkBR6yHq9n6eCCc1
         eNuUXloY/GTj9McAI2P6ebEOah1se4Jwti4AUmk7C+wAv1tOjXaZwDRVCEgizQFEfpjw
         6A6dpKHa7OGnGlfK+lemZXMkTVxpnOu86eymAwGpEfV+VqPsJ1IBLUtSp8Nty/lu1wjV
         14Wg==
X-Gm-Message-State: AOJu0YyZOBAYZKgCR3yAAWDM7Ui8l5g55KGl5DmKHU6Z2r4VKNHe/FMc
	cjWO5CwSYCGZPVlgts1lk9qmw8NUpU/9xcT2W16awn70djw=
X-Google-Smtp-Source: AGHT+IHcLwjeFSzUS37LvJ1e5XJzNH1L3Ar8FvIrdUuYm4GBbngGAEJ40g8eTSDAlvbUfSzRqhQ+lA==
X-Received: by 2002:a17:903:1106:b0:1b8:b3f9:58e5 with SMTP id n6-20020a170903110600b001b8b3f958e5mr12069338plh.38.1694486495373;
        Mon, 11 Sep 2023 19:41:35 -0700 (PDT)
Date: Tue, 12 Sep 2023 10:41:27 +0800
From: Leo Yan <leo.yan@linaro.org>
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>
Subject: Re: [PATCH RESEND v2 2/2] xen/arm: Enlarge identity map space to
 127TiB
Message-ID: <20230912024127.GB122656@leoy-huanghe>
References: <20230909083410.870726-1-leo.yan@linaro.org>
 <20230909083410.870726-3-leo.yan@linaro.org>
 <d526b697-ca64-473d-8a82-72b9052487fa@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <d526b697-ca64-473d-8a82-72b9052487fa@xen.org>

Hi Julien,

On Mon, Sep 11, 2023 at 04:13:27PM +0100, Julien Grall wrote:
> Hi Leo,
> 
> I know you said you will respin the series. I'd like to leave some comments
> to avoid having another round afterwards.

Thanks!

> On 09/09/2023 09:34, Leo Yan wrote:
> > On some platforms, the memory regions could be:
> 
> Can you add some details in the commit message on which platform you saw the
> issue?

Sure, I will add it.  The issue happens on the ADLink AVA platform.

> Also, in v1, the problem was also depending on the firmware version. Do you
> know if it fails booting on a new or old firmware?

My colleague Alexey (CCed) and I both tested Xen hypervisor on own AVA
machine, Alexey produced this issue on his machine with the old
firmware, I upgraded to the new firmware so I cannot see the issue
anymore.

> >    (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
> >    (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
> >    (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
> >    (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel
> > 
> > In this case, the Xen binary is loaded above 2TiB.  2TiB is the maximum
> > identity map space supported by Xen, thus it fails to boot up due to the
> > out of the range.
> > 
> > This patch introduces several macros to present the zeroth page table's
> 
> Typo: s/zeroth/zeroeth/

Will fix.

> > slot numbers for easier readable.  Based on the defined macros, it
> > enlarges identity map space to 127TiB, which can support the memory
> > space [0x0 .. 0x00007eff_ffff_ffff] so has flexibility for various
> > platforms.
> 
> Reserving 127 TiB for just the identity mapping is quite a lot. How did you
> decide the limit?

When I reviewed the existed code, I found it reserves 125TiB:

  0x0000028000000000 - 0x00007fffffffffff (125TB, L0 slots [5..255])
    Unused

Seems to me, we can map this area.  Ideally, if we only map for the
first level's page table, we can just fill the zeroeth page and don't
need to allocate extra page tables.

> What limit do you need on your platform?

On AVA platform, we can see the memory layout is:

    DRAM memory regions:
      Node[0] Region[0]: 0x000080000000 - 0x0000ffffffff
      Node[0] Region[1]: 0x080000000000 - 0x08007fffffff
      Node[0] Region[2]: 0x080100000000 - 0x0807ffffffff

So the phycial memory address is splitted into the low address and the
high address.  The high memory address is above 8TiB.

> > Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
> > Reported-by: Alexey Klimov <alexey.klimov@linaro.org>
> > Signed-off-by: Leo Yan <leo.yan@linaro.org>
> > ---
> >   xen/arch/arm/arm64/mm.c           | 12 ++++++++----
> >   xen/arch/arm/include/asm/config.h | 15 ++++++++-------
> >   xen/arch/arm/mm.c                 |  2 +-
> >   3 files changed, 17 insertions(+), 12 deletions(-)
> > 
> > diff --git a/xen/arch/arm/arm64/mm.c b/xen/arch/arm/arm64/mm.c
> > index 78b7c7eb00..802170cf29 100644
> > --- a/xen/arch/arm/arm64/mm.c
> > +++ b/xen/arch/arm/arm64/mm.c
> > @@ -40,8 +40,10 @@ static void __init prepare_boot_identity_mapping(void)
> >       clear_page(boot_second_id);
> >       clear_page(boot_third_id);
> > -    if ( id_offsets[0] >= IDENTITY_MAPPING_AREA_NR_L0 )
> > -        panic("Cannot handle ID mapping above 2TB\n");
> > +    if ( id_offsets[0] >= XEN_IDENTITY_MAP_L0_END )
> 
> I don't see the value of renaming IDENTIY_MAPPING_AREA_NR_L0 to
> XEN_IDENTIY_MAP_L0_END. See more below.

Okay.  It's fine for me to keep the naming.

> > +        /* 1TiB occupies 2 slots in zeroeth table */
> 
> I don't understand how this comment is related to the message below.
> 
> > +        panic("Cannot handle ID mapping above %dTiB\n",
> 
> The value is unsigned, so this you should use "%u". Also we have been using
> "TB" in Xen rather than "TiB". I would rather prefer if we keep the same for
> consistency even if this is not totally accurate.

Sure, will fix it.

> > +              XEN_IDENTITY_MAP_L0_END>>1);
> 
> Coding style: please add a space before and after >>.

Will fix.

> >       /* Link first ID table */
> >       pte = mfn_to_xen_entry(virt_to_mfn(boot_first_id), MT_NORMAL);
> > @@ -73,8 +75,10 @@ static void __init prepare_runtime_identity_mapping(void)
> >       lpae_t pte;
> >       DECLARE_OFFSETS(id_offsets, id_addr);
> > -    if ( id_offsets[0] >= IDENTITY_MAPPING_AREA_NR_L0 )
> > -        panic("Cannot handle ID mapping above 2TB\n");
> > +    if ( id_offsets[0] >= XEN_IDENTITY_MAP_L0_END )
> > +        /* 1TiB occupies 2 slots in zeroeth table */
> > +        panic("Cannot handle ID mapping above %dTiB\n",
> > +              XEN_IDENTITY_MAP_L0_END>>1);
> 
> Similar remarks here.

Will do.

> >       /* Link first ID table */
> >       pte = pte_of_xenaddr((vaddr_t)xen_first_id);
> > diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h
> > index 21f4e68a40..b772f1574d 100644
> > --- a/xen/arch/arm/include/asm/config.h
> > +++ b/xen/arch/arm/include/asm/config.h
> > @@ -87,11 +87,11 @@
> >    *   2G -   4G   Domheap: on-demand-mapped
> >    *
> >    * ARM64 layout:
> > - * 0x0000000000000000 - 0x000001ffffffffff (2TB, L0 slots [0..3])
> > + * 0x0000000000000000 - 0x00007effffffffff (127TB, L0 slots [0..253])
> >    *
> >    *  Reserved to identity map Xen
> >    *
> > - * 0x0000020000000000 - 0x0000027fffffffff (512GB, L0 slot [4])
> > + * 0x000007f000000000 - 0x00007fffffffffff (1TB, L0 slot [254..255])
> 
> I don't understand why this is changed.

I will keep this region size as 512GB.

A side topic is about extending the frame table, I conclude we don't
need to extend the frame table from support 2TiB to 127TiB.  The reason
is the frame table is page management structure, it doesn't
need to cover the hole in the memory layout, pfn_pdx_hole_setup() is
used to calculate the biggest hole in the memory layout and in the end
the frame table doesn't manage the hole region.

> >    *  (Relative offsets)
> >    *   0  -   2M   Unmapped
> >    *   2M -  10M   Xen text, data, bss
> > @@ -103,9 +103,6 @@
> >    *
> >    *  32G -  64G   Frametable: 56 bytes per page for 2TB of RAM
> >    *
> > - * 0x0000028000000000 - 0x00007fffffffffff (125TB, L0 slots [5..255])
> > - *  Unused
> > - *
> >    * 0x0000800000000000 - 0x000084ffffffffff (5TB, L0 slots [256..265])
> >    *  1:1 mapping of RAM
> >    *
> > @@ -117,8 +114,12 @@
> >   #define XEN_VIRT_START          _AT(vaddr_t, MB(2))
> >   #else
> > -#define IDENTITY_MAPPING_AREA_NR_L0	4
> > -#define XEN_VM_MAPPING			SLOT0(IDENTITY_MAPPING_AREA_NR_L0)
> > +#define XEN_IDENTITY_MAP_L0_START       0
> 
> So what's the value of L0_START when you don't use it in the code? Overall,
> I think it will actually mislead the developper because none of the code in
> Xen can cope with the value been non-zero.

Just clarify, I think none of the code in Xen can cope with the value
been *zero*, right?

> And FAOD, I don't think we should handle it in Xen. So I would rather prefer
> if the renaming is avoided.

Okay, in the next spin I will keep IDENTITY_MAPPING_AREA_NR_L0.

You could see I tried to use the macro XEN_VM_MAPPING to replace the open
coded 'SLOT0(4)', do you mind for this change or not?

Thank you,
Leo

> > +#define XEN_IDENTITY_MAP_L0_NUM         254
> > +#define XEN_IDENTITY_MAP_L0_END         (XEN_IDENTITY_MAP_L0_START + \
> > +                                         XEN_IDENTITY_MAP_L0_NUM)
> > +#define XEN_VM_MAP_L0_START             (XEN_IDENTITY_MAP_L0_END)
> > +#define XEN_VM_MAPPING                  SLOT0(XEN_VM_MAP_L0_START)
> >   #define SLOT0_ENTRY_BITS  39
> >   #define SLOT0(slot) (_AT(vaddr_t,slot) << SLOT0_ENTRY_BITS)
> > diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> > index c34cc94c90..218552783e 100644
> > --- a/xen/arch/arm/mm.c
> > +++ b/xen/arch/arm/mm.c
> > @@ -156,7 +156,7 @@ static void __init __maybe_unused build_assertions(void)
> >        * with it.
> >        */
> >   #define CHECK_OVERLAP_WITH_IDMAP(virt) \
> > -    BUILD_BUG_ON(zeroeth_table_offset(virt) < IDENTITY_MAPPING_AREA_NR_L0)
> > +    BUILD_BUG_ON(zeroeth_table_offset(virt) < XEN_IDENTITY_MAP_L0_END)
> >       CHECK_OVERLAP_WITH_IDMAP(XEN_VIRT_START);
> >       CHECK_OVERLAP_WITH_IDMAP(VMAP_VIRT_START);
> 
> Cheers,
> 
> -- 
> Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 02:43:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 02:43:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599887.935488 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qftNB-0004rH-6M; Tue, 12 Sep 2023 02:43:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599887.935488; Tue, 12 Sep 2023 02:43:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qftNB-0004rA-3W; Tue, 12 Sep 2023 02:43:29 +0000
Received: by outflank-mailman (input) for mailman id 599887;
 Tue, 12 Sep 2023 02:43:27 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qftN9-0004r0-1F; Tue, 12 Sep 2023 02:43:27 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qftN8-0008MB-VJ; Tue, 12 Sep 2023 02:43:27 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qftN8-00005S-GL; Tue, 12 Sep 2023 02:43:26 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qftN8-0007eV-Fv; Tue, 12 Sep 2023 02:43:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=q3eW3KBsnZoJU+vony0tTkp1KheAwIESTD/8KTe5fBI=; b=0CnVwfP2IKINlrROV/SsUXK2pf
	gzCgnh428dStlbQeEQxQYWKM1CUuEgW0oeGPfwuMAv7C+boMppbylk4+XSSXBQkAwnK79dI+inHdJ
	hIY2qzPmfwJsIGhxu/vfrZScJl7YECAyrt9A1WZB2wyQh+mZDUGNSaQe2FRolffT6R7M=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182941-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182941: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:regression
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=35949b8c58cb6c835da1fdd8843ed51727e654c0
X-Osstest-Versions-That:
    xen=49b2d6a529122f10e17a17f807d8d51154b5ba14
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 12 Sep 2023 02:43:26 +0000

flight 182941 xen-unstable real [real]
flight 182952 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182941/
http://logs.test-lab.xenproject.org/osstest/logs/182952/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install  fail REGR. vs. 182912

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182912
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182912
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182912
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182912
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182912
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182912
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182912
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182912
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182912
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182912
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182912
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  35949b8c58cb6c835da1fdd8843ed51727e654c0
baseline version:
 xen                  49b2d6a529122f10e17a17f807d8d51154b5ba14

Last test of basis   182912  2023-09-11 01:52:03 Z    1 days
Testing same since   182941  2023-09-11 13:07:03 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Oleksii Kurochko <oleksii.kurochko@gmail.com>
  Tamas K Lengyel <tamas@tklengyel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit 35949b8c58cb6c835da1fdd8843ed51727e654c0
Author: Federico Serafini <federico.serafini@bugseng.com>
Date:   Mon Sep 11 09:39:57 2023 +0200

    x86: change parameter name in {hap,shadow}_track_dirty_vram()
    
    Make function declarations consistent with the corresponding
    definitions to address violations of MISRA C:2012 Rule 8.3.
    No functional change.
    
    Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit 4aca8559d614e7bc4be5ed0932214527787f4e87
Author: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Date:   Mon Sep 11 09:39:05 2023 +0200

    xen: move arm/include/asm/vm_event.h to asm-generic
    
    asm/vm_event.h is common for ARM and RISC-V so it will be moved to
    asm-generic dir.
    
    Original asm/vm_event.h from ARM was updated:
     * use SPDX-License-Identifier.
     * update comment messages of stubs.
     * update #ifdef
     * instead of "include <public/domctl.h>" -> "public/vm_event.h"
    
    As vm_event.h was moved to asm-generic then it is needed to create
    Makefile in arm/include/asm/ and add generated-y += vm_event.h to
    it.
    
    Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
    Acked-by: Tamas K Lengyel <tamas@tklengyel.com>

commit 56a9e44e7d1469af7ec552a4e4fb7bba9856519f
Author: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Date:   Mon Sep 11 09:37:33 2023 +0200

    xen: asm-generic support
    
    Some headers are shared between individual architectures or are empty.
    To avoid duplication of these headers, asm-generic is introduced.
    
    With the following patch, an architecture uses generic headers
    mentioned in the file arch/$(ARCH)/include/asm/Makefile
    
    To use a generic header is needed to add to
    arch/$(ARCH)/include/asm/Makefile :
            generic-y += <name-of-header-file.h>
    
    For each mentioned header in arch/$(ARCH)/include/asm/Makefile,
    the necessary wrapper in arch/$(ARCH)/include/generated/asm will be
    generated.
    
    As the base Makefile.asm-generic from Linux kernel was taken.
    ( 06c2afb862f9da8 "Linux 6.5-rc1" ).
    
    Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
    Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit bd31678c843785323d74d82fde55047a03e53e38
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Sep 11 09:34:12 2023 +0200

    MAINTAINERS: generalize vm-event/monitor entry
    
    Replace Arm- and x86-specific lines with wildcard ones, thus covering
    all architectures. Uniformly permit an extra sub-directory level to be
    used, as is already the case for xen/include/.
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
    Acked-by: Tamas K Lengyel <tamas@tklengyel.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 03:01:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 03:01:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599898.935498 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qftet-0008SY-MD; Tue, 12 Sep 2023 03:01:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599898.935498; Tue, 12 Sep 2023 03:01:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qftet-0008SR-JQ; Tue, 12 Sep 2023 03:01:47 +0000
Received: by outflank-mailman (input) for mailman id 599898;
 Tue, 12 Sep 2023 03:01:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O/bM=E4=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qftes-0008SL-1j
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 03:01:46 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0616.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::616])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b39cecb4-5118-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 05:01:43 +0200 (CEST)
Received: from DUZPR01CA0161.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4bd::18) by PAVPR08MB9062.eurprd08.prod.outlook.com
 (2603:10a6:102:32d::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Tue, 12 Sep
 2023 03:01:39 +0000
Received: from DBAEUR03FT044.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4bd:cafe::2a) by DUZPR01CA0161.outlook.office365.com
 (2603:10a6:10:4bd::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37 via Frontend
 Transport; Tue, 12 Sep 2023 03:01:39 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT044.mail.protection.outlook.com (100.127.142.189) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.16 via Frontend Transport; Tue, 12 Sep 2023 03:01:38 +0000
Received: ("Tessian outbound 0b7d6027328f:v175");
 Tue, 12 Sep 2023 03:01:38 +0000
Received: from cd698a7cb0fd.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 040F313E-6A3F-4493-9ECD-560CD012E511.1; 
 Tue, 12 Sep 2023 03:01:32 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id cd698a7cb0fd.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 12 Sep 2023 03:01:32 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DU0PR08MB9629.eurprd08.prod.outlook.com (2603:10a6:10:44a::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Tue, 12 Sep
 2023 03:01:30 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 03:01:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b39cecb4-5118-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1yWf/DeJXYOwyb25YTdJc0lWKI6qEcL2BvDlQYPfOJY=;
 b=dKhVo7jerYY+UCoRG51BtItZ3XkrCj1r7e/L1ckHbmtng1voefmzz2E3tSJ+sPth9J5VX5Xy3lekoVXx3HYLN9Ds9q0PYPBNoFcN/fQy5xw7lRSu050t+vOb72fxZJm2UOBikKgzT7D4eivLUWApQXQkDqexmcwfkTpI43Q40Yc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: e210b37e78009628
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UuP8Y33zdaqVLecOX9Cdt4S9R8eV+kLMnYKzN2DanHpy/00NaL64RcHAuaPnBLKjtGu9izLNkx01ekD4kKoEnEJOChL3nbLgZodNsU9kBDzr5CNTclM4u8a4OtUDvixsG14XaJpYhuMOuMFyjs0E2ngTX7NC1LQBHiRHeUQWcOiGScz2k70zpu7efy/bgz0eY6LzXz+HhVL9ez5pN1xmWKY5byHsk879DYKrFqTjWT2KHZDircrwBh1WWlO/iDCj43o3xLOthjEasX49YjGmVQOMmP4sja3BJCMJGrX4OHWaVS1CfIBfz5UHLqFfnwo91i9wyByySeTWkmxwGlaGrg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1yWf/DeJXYOwyb25YTdJc0lWKI6qEcL2BvDlQYPfOJY=;
 b=TTbeZNS7SDj/PsLNrAnOQe0FUCdpP2QcXVoHQuePrfr/pWE4lxCiv5RqNGWaIyiPcuDAJ/HQ4QTZzp49uGiyDFGs43k6vUM2PrsLSz/moMiAhqC3tcV0xutu4OEce/tlE4+KsrE6Au6uu0RHmPbDnwCuNzQVEAa+v+U1vaUlGueRbP2+TdQcwzM0seG00LFjHCGJaLCaa/9fO5XeaMteC4uVOWO329JT108cZm8FiXyUpwcKgYK8YSb8lHL8EhMnjZx5Ai2kB9Qq6Z8h/OjF/mvXn/lHy+tmINyPSwvnBm4vDzZa8dzg0da9LdTuVwpOu+xZ8REbSRYztbjm0EFGcA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1yWf/DeJXYOwyb25YTdJc0lWKI6qEcL2BvDlQYPfOJY=;
 b=dKhVo7jerYY+UCoRG51BtItZ3XkrCj1r7e/L1ckHbmtng1voefmzz2E3tSJ+sPth9J5VX5Xy3lekoVXx3HYLN9Ds9q0PYPBNoFcN/fQy5xw7lRSu050t+vOb72fxZJm2UOBikKgzT7D4eivLUWApQXQkDqexmcwfkTpI43Q40Yc=
From: Henry Wang <Henry.Wang@arm.com>
To: "leo.yan@linaro.org" <leo.yan@linaro.org>
CC: Julien Grall <julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>
Subject: Re: [PATCH RESEND v2 2/2] xen/arm: Enlarge identity map space to
 127TiB
Thread-Topic: [PATCH RESEND v2 2/2] xen/arm: Enlarge identity map space to
 127TiB
Thread-Index: AQHZ4viMksvJdCvkpU23UX9vdzYb/rAVvxaAgADAOoCAAAWLAA==
Date: Tue, 12 Sep 2023 03:01:30 +0000
Message-ID: <A51D9BC5-B464-4979-860B-8365E478844F@arm.com>
References: <20230909083410.870726-1-leo.yan@linaro.org>
 <20230909083410.870726-3-leo.yan@linaro.org>
 <d526b697-ca64-473d-8a82-72b9052487fa@xen.org>
 <20230912024127.GB122656@leoy-huanghe>
In-Reply-To: <20230912024127.GB122656@leoy-huanghe>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DU0PR08MB9629:EE_|DBAEUR03FT044:EE_|PAVPR08MB9062:EE_
X-MS-Office365-Filtering-Correlation-Id: f017dc33-690a-444d-830b-08dbb33c9574
x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 a8zxqsHvStc3LUN7Y6nJYvO/kxep+14N09Fd/OEks9ykACntBYakLoVr18BmKRATmIXKg8MFQXAWoMP2Seq8jtInlB14oOCSQHmkh9Fg+086qFjd0ccAniIz8rfbP7BpxNggrqU9lksH9DW594DJI6M/bEDZIxJiApUL6ku6zXC4AP7oGeqdQs+HKosdY+LCnOVG5RvwGDsVE15wU0ynGlAKrLN5S6wzgzmZwKTKw9nzRcgJ0xkF9NPRpvbekama1ywBZSbAtowOatIodH/BT7XXDBVIuJaoxSmWdnkq2JDImxpJKxOfcTzd0bPyqaxqXfpNgzrKdMtSPXvaHTVMMhYtKiW4BjUjRJUWJIwYKbI6lGcsk2tk+spLkJadpQFKRRrcYMKDRdsvY48240UV0/phYc0PaJJezE0Auf9Z/aDlNrYDjid5Cz8pdIVDc5XdEXH9Wvp04gqIMq5gQ/LRULNLNktMVSqJVWBR0twPgJswJ5zEE3bUHSyJq+dZHq6SCt95EOWnzF3cFKRDASptfDR0E47pCS9xsdtT59ZF3ppsoxjsstSKI7yFsXmV6bj3jAhazmWURGkXDUYsbkIOd6QnS1kB1DwRqeclKX5MIqWhTvMrHKW5Lqz0uStaRqxUETqdEypGCRJgpHF+YHS6DU5i0ME2cEgQVrrkXLSryNvN6Rzn+rXWNH+EO5sKJCs3
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(39860400002)(396003)(136003)(346002)(186009)(451199024)(1800799009)(122000001)(6486002)(6506007)(71200400001)(53546011)(33656002)(36756003)(38070700005)(38100700002)(86362001)(2616005)(26005)(966005)(6512007)(83380400001)(478600001)(2906002)(91956017)(5660300002)(4326008)(41300700001)(316002)(76116006)(8936002)(8676002)(64756008)(6916009)(66946007)(66556008)(66446008)(66476007)(54906003)(10126625003)(147533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <0BF144597B23A547A1B65A22541CDA16@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9629
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT044.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	3673cc3f-89cb-44bb-5a4f-08dbb33c9052
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	tPW/vGiPmflhb5VFjupaaVven2v3VEOFJySl9wTs6XhLd26hUgrMxqP2LQoNn6NO1WkDfoczy+5Kr6i62+cbENHuqxD1zXsRSz9bULJbni4c0HkbvNNw7TUgiyq7z8YJfPd/N7bChTI5wixCxF/gR+Alcz6S13Zsh7/Bi52XrLLo+zhj6LBwyeheEm1+eTIslXhv/Q7ygbpj5HoqYZckYBAkJU8Ubut+eS4ia+QV2hSV1cIZWI/MtqWL7HW/YuxFtmd+ubYCVBSxEHFqnC8J+7havhORMN7TcjGJmBykvXkivrheSUnSHgrYSaDakr5qd7r7AywtNHdWIq6BmfF96fdDkOT85Zg8bo3BXz109Fya9lkZiHBpH5yV2fGYr7uir16lb9PxCO0fJZoVw1buvVihx5e4gXV66D2/QJRbYQMJnwdbOqlg2xKSuBvPkFo4mxb/6EkpZr4Afu/EM2ikDr0kBWr3UE55o9oUim1adgfwiBKTyGJuR6j9tXMqkcxrf8hA71WDhtZNpceEZ7Wxgg4ZUlk+v7wkMmTefewbAUFvy9QVVJhCbM4ZYTUsK2jhrja6QJVOIbmJwhCB/HzBTqxgdYt88tS0hxeRcl9MkVjudEsq1xKiyrkFi5BnCHhTRDzoX6T2jqpV17XXnYdJtujI5CoRteTL48s5CB74g88FRROrgTtXhbEky6DthrLfwxRyjdIIC2hgEZX/9J+eM0dasaPRbJYaQiLleIDv4DTyuJKlm1ZZfrna3l0yKZw3RGblf0CE2iaiJtPy+p3LPKZ9HKSb+wOE76rig44hGl46i3M+3ifgWW3H5InlLqln0ndYFXv18x+2LumcrU+EMg==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(396003)(39860400002)(376002)(346002)(186009)(82310400011)(1800799009)(451199024)(46966006)(40470700004)(36840700001)(81166007)(82740400003)(40460700003)(356005)(36756003)(33656002)(40480700001)(86362001)(478600001)(966005)(6512007)(53546011)(70206006)(8936002)(6506007)(2906002)(6862004)(6486002)(8676002)(4326008)(5660300002)(41300700001)(316002)(54906003)(70586007)(83380400001)(47076005)(36860700001)(26005)(107886003)(2616005)(336012)(10126625003)(147533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 03:01:38.9907
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f017dc33-690a-444d-830b-08dbb33c9574
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT044.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9062

Hi Leo,

> On Sep 12, 2023, at 10:41, Leo Yan <leo.yan@linaro.org> wrote:
>=20
> Hi Julien,
>=20
> On Mon, Sep 11, 2023 at 04:13:27PM +0100, Julien Grall wrote:
>> Hi Leo,
>>=20
>> I know you said you will respin the series. I'd like to leave some comme=
nts
>> to avoid having another round afterwards.
>=20
> Thanks!
>=20
>> On 09/09/2023 09:34, Leo Yan wrote:
>>> On some platforms, the memory regions could be:
>>=20
>> Can you add some details in the commit message on which platform you saw=
 the
>> issue?
>=20
> Sure, I will add it.  The issue happens on the ADLink AVA platform.

At Arm we also test Xen on AVA in our CI, but our setup is based on Yocto
meta-adlink-ampere layer [1].

>=20
>> Also, in v1, the problem was also depending on the firmware version. Do =
you
>> know if it fails booting on a new or old firmware?
>=20
> My colleague Alexey (CCed) and I both tested Xen hypervisor on own AVA
> machine, Alexey produced this issue on his machine with the old
> firmware, I upgraded to the new firmware so I cannot see the issue
> anymore.
>=20
>>>   (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
>>>   (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
>>>   (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
>>>   (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel

I tried to dig a bit more about Xen log printed by our AVA setup, and [2] i=
s our
RAM and MODULES setup, just FYI and hopefully it helps.

[1] https://github.com/ADLINK/meta-adlink-ampere
[2] https://pastebin.com/raw/0DQpmJP1

Kind regards,
Henry




From xen-devel-bounces@lists.xenproject.org Tue Sep 12 05:08:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 05:08:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599908.935513 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfvdZ-0008KH-Fi; Tue, 12 Sep 2023 05:08:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599908.935513; Tue, 12 Sep 2023 05:08:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfvdZ-0008KA-DC; Tue, 12 Sep 2023 05:08:33 +0000
Received: by outflank-mailman (input) for mailman id 599908;
 Tue, 12 Sep 2023 05:08:32 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DQab=E4=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qfvdX-0008K4-49
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 05:08:32 +0000
Received: from mail-pf1-x433.google.com (mail-pf1-x433.google.com
 [2607:f8b0:4864:20::433])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6807e664-512a-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 07:08:28 +0200 (CEST)
Received: by mail-pf1-x433.google.com with SMTP id
 d2e1a72fcca58-68faf930054so2104695b3a.0
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 22:08:27 -0700 (PDT)
Received: from leoy-huanghe ([64.227.105.120])
 by smtp.gmail.com with ESMTPSA id
 b11-20020aa7810b000000b00687a4b70d1esm6417586pfi.218.2023.09.11.22.08.21
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 11 Sep 2023 22:08:25 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6807e664-512a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694495306; x=1695100106; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=5s8Q6I375tNey0kH0Jy6D0hvEH0hxpEeww2Q8hsdJcs=;
        b=t+6NFpeI7B509k9Ior+lzREcoriBgNie9tGo+3yORRWYXqP6FZ4/HFRzBJMYLOG4o9
         GZEFnkkOpgcHIkg+EHlE7Zg1RjIXJTbUxjmWviMzHk1+MAO87Mi/kFKcd/9qeqOGdgLd
         Mbt10eosvtXkiV8GAc0TWS8sMhbwk+A3yy6OtA7oK4Wu2XFM7V/emKTl5yQHYILPr8r8
         rsVZbSyYjuTdU6l2yb6v79ap0siVDRRmRznERNN1OwKeK+rYlrLO50G9Xi8iq2NQQq7S
         Z40UomHSINYOrM4tLpIpi8WqUIE+AcALinBKGcWrPj1RWurU13gQyqvD2vxsHXoyEUvG
         o0rA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694495306; x=1695100106;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=5s8Q6I375tNey0kH0Jy6D0hvEH0hxpEeww2Q8hsdJcs=;
        b=gCvyWiEImKKtByc70cZWFHypU4pm1TXhnxyT24uY/dXfdI2ohkYAllrRau/isFYY01
         l3ESc5Dyet80PMvgOosGcawIvH2wQVc8Mu6Uf96hkqHbI9lY59JlM7HTtARxu0v4tgS7
         VHBuQwas95aZf4fYzcxsfjM74MsLS+RgpR+XrcfTB2Esp3iL7MJw9Ew7yJJFzqxPjmdR
         iD7oQGo8gUyP13GkVXuLVYucBL9ynAhJGtI9sRQMe5EVbQ0mBGDN/pbdMlWe6lW0t4AB
         B6OSYlA7ff6t+i3LtSVjOyQp/1/waVxzVdeO+1o+ojiwOYaN9mnEN1SgkCc0nKiNtDSA
         CS3w==
X-Gm-Message-State: AOJu0YzXQeBaHrLplrq9E94rhNE1wNAAfdK8G4Wksl4oDGP4XeLFxGub
	FF3I1Pw6gDEEnfRhG+WAwhJSig==
X-Google-Smtp-Source: AGHT+IFbCN7zibmDkGyreCae36wh5XZ5t9aVZS+sJyBjiK1ZdIhtUDbf2BEYaHi5LailC08pI4XYGQ==
X-Received: by 2002:a05:6a00:1c99:b0:68f:b731:b6de with SMTP id y25-20020a056a001c9900b0068fb731b6demr6902580pfw.7.1694495306321;
        Mon, 11 Sep 2023 22:08:26 -0700 (PDT)
Date: Tue, 12 Sep 2023 13:08:18 +0800
From: Leo Yan <leo.yan@linaro.org>
To: Henry Wang <Henry.Wang@arm.com>
Cc: Julien Grall <julien@xen.org>,
	Xen-devel <xen-devel@lists.xenproject.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>
Subject: Re: [PATCH RESEND v2 2/2] xen/arm: Enlarge identity map space to
 127TiB
Message-ID: <20230912050818.GC122656@leoy-huanghe>
References: <20230909083410.870726-1-leo.yan@linaro.org>
 <20230909083410.870726-3-leo.yan@linaro.org>
 <d526b697-ca64-473d-8a82-72b9052487fa@xen.org>
 <20230912024127.GB122656@leoy-huanghe>
 <A51D9BC5-B464-4979-860B-8365E478844F@arm.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <A51D9BC5-B464-4979-860B-8365E478844F@arm.com>

Hi Henry,

On Tue, Sep 12, 2023 at 03:01:30AM +0000, Henry Wang wrote:

[...]

> At Arm we also test Xen on AVA in our CI, but our setup is based on Yocto
> meta-adlink-ampere layer [1].

Thanks for sharing the info.  Yes, we (Linaro) also work with Yocto
based on EWAOL [1] or TRS [2].

> >> Also, in v1, the problem was also depending on the firmware version. Do you
> >> know if it fails booting on a new or old firmware?
> > 
> > My colleague Alexey (CCed) and I both tested Xen hypervisor on own AVA
> > machine, Alexey produced this issue on his machine with the old
> > firmware, I upgraded to the new firmware so I cannot see the issue
> > anymore.
> > 
> >>>   (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
> >>>   (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
> >>>   (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
> >>>   (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel
> 
> I tried to dig a bit more about Xen log printed by our AVA setup, and [2] is our
> RAM and MODULES setup, just FYI and hopefully it helps.

Yeah, the log shows the high address space is above 8TB:

  (XEN) RAM: 0000080000000000 - 000008007fffffff
  (XEN) RAM: 0000080100000000 - 000008039bffffff
  (XEN) RAM: 000008039c000000 - 00000803ffffffff

Appreciate for the log and it's helpful!

Leo

> [1] https://github.com/ADLINK/meta-adlink-ampere
> [2] https://pastebin.com/raw/0DQpmJP1
> 
> Kind regards,
> Henry
> 
> 


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 05:26:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 05:26:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599915.935525 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfvuU-0002hK-04; Tue, 12 Sep 2023 05:26:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599915.935525; Tue, 12 Sep 2023 05:26:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfvuT-0002hD-R9; Tue, 12 Sep 2023 05:26:01 +0000
Received: by outflank-mailman (input) for mailman id 599915;
 Tue, 12 Sep 2023 05:26:00 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfvuS-0002gn-Jh; Tue, 12 Sep 2023 05:26:00 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfvuS-0003rQ-Gl; Tue, 12 Sep 2023 05:26:00 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfvuS-0006Ap-2a; Tue, 12 Sep 2023 05:26:00 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfvuS-00088U-24; Tue, 12 Sep 2023 05:26:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=5tj1TI9549c/jBGlyi2O7ClSMP7qvENFTfnlxDCCeoo=; b=08t6SBIdEh5NVwQa71SS1dyr+/
	Sp+V0aMM4ofoUAbtLfQ5Lc9QZS7nOvAb5EnvTH7ABMr5ATfVrtNF/VbGr2lxEUL1q2uiulYYXEVMc
	8e5iqsVJxFoZUAbYXcP9nnSSZYiTji4NwNnnUW6BYjri66LPGkOl22g1GBouCdm3KVas=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182949-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182949: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=0bb80ecc33a8fb5a682236443c1e740d5c917d1d
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 12 Sep 2023 05:26:00 +0000

flight 182949 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182949/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                0bb80ecc33a8fb5a682236443c1e740d5c917d1d
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   15 days
Failing since        182544  2023-08-28 20:42:13 Z   14 days   26 attempts
Testing same since   182923  2023-09-11 06:13:05 Z    0 days    2 attempts

------------------------------------------------------------
2275 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 275103 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 06:21:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 06:21:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599926.935534 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfwmM-0002AN-4d; Tue, 12 Sep 2023 06:21:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599926.935534; Tue, 12 Sep 2023 06:21:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfwmM-0002AG-12; Tue, 12 Sep 2023 06:21:42 +0000
Received: by outflank-mailman (input) for mailman id 599926;
 Tue, 12 Sep 2023 06:21:41 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lhkB=E4=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qfwmL-0002AA-3D
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 06:21:41 +0000
Received: from mail-wr1-x435.google.com (mail-wr1-x435.google.com
 [2a00:1450:4864:20::435])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a1369e76-5134-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 08:21:38 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-31c65820134so4830233f8f.1
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 23:21:38 -0700 (PDT)
Received: from [10.5.2.12] ([15.248.2.224]) by smtp.gmail.com with ESMTPSA id
 e14-20020adfa44e000000b0031c5d74ecd8sm5173965wra.84.2023.09.11.23.21.36
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 11 Sep 2023 23:21:36 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a1369e76-5134-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694499697; x=1695104497; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:organization:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:from:to:cc:subject:date:message-id:reply-to;
        bh=Pmc1im2jRUUJY70q+gaCtMdNgClASrd4LE2h9eP6ZpI=;
        b=szdlKhLK78sufsAMbJlsTm6QAOeopr+IHnyyTXHFN1Gog5Jt5FEGPiiLqd2RscuXrB
         ITGmWJ1segE2GQMpx9qHtoNbXaFsPegv2x1jqtWYufGHhFRgk/b+bU7NMronoDGBb7Dd
         nK0tctRtZ6tj7uB5MHDTYGZP9cgR6WWiz6QhgAk4b6TcrqvIZGxbyNBKLGP7VL3M9v9q
         iGBEe0aNZYgGYDQIYcAwfhVf+HQi9AwUTrZMtRovT74MPWMyWC87JlqFBSTV5LY2WJcD
         c2+t1kSnyqJpybxL84ApEvY/wDENiy7J6N0RnlkKDv3ab6wdCV/lCcLxS6li0AMOMU9r
         C9dA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694499697; x=1695104497;
        h=content-transfer-encoding:in-reply-to:organization:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=Pmc1im2jRUUJY70q+gaCtMdNgClASrd4LE2h9eP6ZpI=;
        b=Yc2MlviHXwu4Ep6KjTf0svmQueDRq8OHJWbrM5V3E4Fl+gUzq3E73dVdyzRGw7BFyS
         Ba16Iq7ZQV+qi9LSvUxA6vkzMC+OZuLkfpHhc0pb6Q055NCnAIycdcyHlSh62+T+HH9P
         Evam2QaGQkIEg0Y25zIPj2a8l+A42lx0xlrg8Jr9oNlhHS5H3LiRO6bBneumC7KjO1H+
         v891ZJTeCuaudu4IN36X8ZLihINTvLYykmDCLzTEscIVJjn5DbFwGM8W+bJlXV4u7DlE
         gV/+yVzxM+c7CoIQiwrd+gohz8CBqHMRJeNEPkoiILr4kyRUen7HjrGAeO+ZlE11VV98
         1HZg==
X-Gm-Message-State: AOJu0YwdhCcPMpmuVemkn270vJ0EQEAvEAL9DcxkxgMKI0b7x2INZxat
	pWZUs28R4AbFfVJe6dV/Gqs=
X-Google-Smtp-Source: AGHT+IGXC2G3F3EJNOB0gm9/RMy7O7032wa51U6ZuXNZU8RGJ7haiIqqUbaLjzGywTyetiQx7ccQMw==
X-Received: by 2002:adf:e48c:0:b0:319:6e5b:c7d7 with SMTP id i12-20020adfe48c000000b003196e5bc7d7mr9791751wrm.30.1694499697219;
        Mon, 11 Sep 2023 23:21:37 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <22cf127f-9348-d449-cc6c-7f87c4d01de4@xen.org>
Date: Tue, 12 Sep 2023 08:21:34 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Reply-To: paul@xen.org
Subject: Re: [XEN PATCH v5 3/4] x86/viridian: address violations of MISRA
 C:2012 Rule 7.2
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Gianluca Luparini <gianluca.luparini@bugseng.com>, Wei Liu <wl@xen.org>,
 Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <cover.1693219887.git.simone.ballarin@bugseng.com>
 <4581fc2e3292f761336639a1881e05775e681874.1693219887.git.simone.ballarin@bugseng.com>
Organization: Xen Project
In-Reply-To: <4581fc2e3292f761336639a1881e05775e681874.1693219887.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 28/08/2023 12:03, Simone Ballarin wrote:
> From: Gianluca Luparini <gianluca.luparini@bugseng.com>
> 
> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
> headline states:
> "A 'u' or 'U' suffix shall be applied to all integer constants
> that are represented in an unsigned type".
> 
> Add the 'U' suffix to integers literals with unsigned type and also to other
> literals used in the same contexts or near violations, when their positive
> nature is immediately clear. The latter changes are done for the sake of
> uniformity.
> 
> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
> ---
> Changes in v4:
> - change commit headline
> - add Reviewed-by
> 
> Changes in v3:
> - create this commit for 'viridian.c' and 'hyperv-tlfs.h'
> ---
>   xen/arch/x86/hvm/viridian/viridian.c         |  2 +-
>   xen/arch/x86/include/asm/guest/hyperv-tlfs.h | 28 ++++++++++----------
>   2 files changed, 15 insertions(+), 15 deletions(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 06:21:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 06:21:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599927.935544 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfwmQ-0002PW-Aw; Tue, 12 Sep 2023 06:21:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599927.935544; Tue, 12 Sep 2023 06:21:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfwmQ-0002PP-83; Tue, 12 Sep 2023 06:21:46 +0000
Received: by outflank-mailman (input) for mailman id 599927;
 Tue, 12 Sep 2023 06:21:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfwmP-0002P5-4m
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 06:21:45 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20628.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::628])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a4e343ac-5134-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 08:21:44 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBAPR04MB7478.eurprd04.prod.outlook.com (2603:10a6:10:1b3::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Tue, 12 Sep
 2023 06:21:42 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 06:21:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a4e343ac-5134-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kk3FVni5ifJJowh8I/zRT97nhJQLrNaG+HwLTyv2TrjXQmcTlWiCgvpgx/Mezo0UqXW5VCFB6ONfeOuvtYBjdrToUI58maZvdG6a+9Y5Fs6GryU0IWVV1d+teDUoT4KKiE75mv3rT0vNG1iYgcXd1v4FBy9O+OQJgy/Hsnw+W0SbMqsqg+F+OkG3JvRRrsK77QFGu2Cf5vZQXgjMusD8GMSErkS0DtwJTiBVsTvaLA/8eD6wflFQC73X/omNrrehh3RZD+kF8kKK4MLDQWk6r4W8gsbtHMbCz3JmROnokXQT2qOa+/T7zbu3zecI8EeOpHQkZKI6c7qzNVKw2r82Tg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=H3SFTE221xjv1D1TwK+mR9sF/EsW1NJXRqOKIVnDpto=;
 b=EdfeB3+GaCE98je45a4iiN7xxYNZqRZlcw5Xru359WtKd6805GRSs1lpbCj/3BhamADK+Z6QyA9yWTzfqYmSRh4UYvORhI1Gr5XQkuMm5hGcVT19zvNgMKK4VAIwi+Uz6bUuMS7uS19gUQRTSJ+YR/l499krZGDEpAH7/WT8Oog8bXu14OAdOhvQ5+JXTACSyc/ZdE6PLylbD/XZjUfHPxwVrgLzPCcmNfc0noQ3HbFLKqs49jxKHziymlUjjpoYbUsqYE8tTqzLIi8dP+BVt1Dqi+hwQ7fjQHKl89StGuEAGwj8j0J/4Ukpl0FrdokP/RC5/1HfOuYEaVAFhkZsEQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=H3SFTE221xjv1D1TwK+mR9sF/EsW1NJXRqOKIVnDpto=;
 b=RQhgQV8monbNuBkaG5F0sO+XcDyeOFv7YwWMTxOU54N2SYo33+bluOcIsLcln8z9jNDXsqupsfGn0C+fObqP8DVVezgGd6fvpJ36GLhwB1J6bUiCVxVV7spQ4y5/b7XDM9OWK0KkejlT4DrJXSvrANuo/EFkTSFD+HqpcPUK9rWjn9WazMRTXiU07eAh9zkTnxep+dVT+6e+klTiJ3G1Q4SivNE7/iHgmmrgU3S98tjGjC6EMEQfwh0Jp9T2OvpXSS+4c8psRFN4E5csCthDhaCIwIsJtGsC9MF358Xh9iDO+pb3V7d/Nn5SM/wXQQTBhk7LnjiEO9rODdditvA/gg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <497c7d09-e5ef-96dc-5740-9163a94a79bf@suse.com>
Date: Tue, 12 Sep 2023 08:21:39 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent timing
 mode
Content-Language: en-US
To: Henry Wang <Henry.Wang@arm.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>
References: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
 <29A9BF11-7ECF-4C3E-9D5E-9D44E63A297A@arm.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <29A9BF11-7ECF-4C3E-9D5E-9D44E63A297A@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0071.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9a::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBAPR04MB7478:EE_
X-MS-Office365-Filtering-Correlation-Id: f58cccec-51d6-45e8-87de-08dbb35887c4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0sBw6g8UvbyD83HiumeQQjmCu6Oa/d+4zjI5RzZSyZDg0QgOSTZsMjFOHKyfOew9Nj9Uodl7H0FxfSlHbydnTgwwtYww+D5ckaiAOdJrQ/gYxRqZuJCqvEJd/vjeXgkkr5yFCTUHNtLgmb89LhI9a2l8Xnm4Poz0BfZHr7egH1JTl/MXC0F4qVOIRxrsx0825z6X/pyUUFstE81IyM2m/zHRYpPyguBd0iC3E91rqldu91vVRRi+9wLl8CcFKHw2AF4yFA+a1eYXOa7Brr7fjCdkiA9mgOIDbSeT2eYM57iuXe6yIS8HA/0wB9mzVS81OdvlwmpsAqqWxrScu45EQLVdmgb85AqCnbwwWE2fHf4PKMxlZM6EuPIvigtrOXWe7JB0a8HJZjxH6XgggjaYg9JtGG9K431Jhiz8JvxzF12Qec3wLUzChHAfP/WiOPMx19vmK/Cl/tOFpjCMDfRElWO0s8lHm1zuUE77QOaBEJybEm0TwxmkJx8kZxzuYmvjSYeAYpUjnbBrpmOiRX7Qrn7hT+xvOE6djCi+44hy6936n1Cq0K3CzoPjUhHL0bc8pZBS3HJBLKzB+e2m6AhB0Gd1GypN7EHVSyvoJe2Q53H5cFVQpd2T1gKZT1IzE6+U0Azn/fB/+2U5S/+tVCtwLg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(39860400002)(376002)(396003)(136003)(451199024)(1800799009)(186009)(2906002)(26005)(41300700001)(66946007)(316002)(6916009)(54906003)(8676002)(66556008)(4744005)(66476007)(478600001)(4326008)(5660300002)(8936002)(31686004)(6666004)(6512007)(6506007)(53546011)(6486002)(36756003)(2616005)(38100700002)(86362001)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R1BGTlBQbVgyTFFWNVQxaTFoVlNrR1pCUFNINVp5N3pPN0J4a2VQeUZieDBp?=
 =?utf-8?B?MWZ2VVRNaVh4R2llbVNJSTh2UWRCSFlaRkVUNkY5dG5RY3FLSlRPdFZKWXFo?=
 =?utf-8?B?b3NmNXd3bXJzdzBmcU4zdXBrZ2pPamtiZjlsT3hKWjgzakxNdHJhcjkxQzVx?=
 =?utf-8?B?VG1EUE5jSDNSTCtmMlhCVWF3M0YzcXNaMStUMVVnNzNxOTNtUHJVWUI3WXBY?=
 =?utf-8?B?RmM4UldPL1hQRUF6U2JoektvR3hmcE9lMXVBZHVTT1krQUVZeEF5K0s0aWZw?=
 =?utf-8?B?eDFGZUhreXZuZXVSTWlqSk9FUmwwOFo3Mkh5RCszcTZsajYrcnF5NDdsL1NI?=
 =?utf-8?B?WDZGS2JMbjZzVThNUDZvNHVNNTRid2d4SG5hVTB1Zm51VzZCWjk1REs2Ujh4?=
 =?utf-8?B?anB3QUltRUVYTGlFdDJwdjhJZ0lWZWU0WWU0S1hYSDFFbUFUKy9NSXYvMGh6?=
 =?utf-8?B?eENKbk1Yd2pZRmVodzQyaFp3dDRmZ3NjeXVYUlZNUGltUVZnWEpGK3dDZXA1?=
 =?utf-8?B?SnpEN1I4Y285d1JUbGsxNTVhSW5CaDNGUm5NeXBIVFdteTNGcE05Ti9xcVlP?=
 =?utf-8?B?SnZUM2duNEs3eUFsd0krMDVCN1hSaDJGOXZKY2JXQmhrZjQ5YjJGZjNIME16?=
 =?utf-8?B?cjRkMVhvMWM2aFY4cDZQbWUzWnlJMlB5dzhubmpEbDBzbHJmNCs2Mk9WYnha?=
 =?utf-8?B?NHlETHdyc3dNeGpVempidmNnUGtWZXR1TGVabldXbFdkVTJSWDQxNXJNbTIx?=
 =?utf-8?B?R01XSlRrVTBNcTN0b012bWxHNSt1d3lTeVhVc1F5cld3QThBbnY2VjgxVm1O?=
 =?utf-8?B?czlOTUdaWVRMTUlLZUhoZ0VON3ZUelhVeGVEM2laK2JnakJUalB6VSt3RWc2?=
 =?utf-8?B?b1dDdHM1czVIVWlkNkVaQm1IRzhVOFUxRnE1Y3lXWVJNNFFQRFJBa0t2UWd4?=
 =?utf-8?B?MlNKL0lGeXArN25hbmVlTzVocnpMSFZ0ZEg2VVp2VWI3NkhiQStwSkVYUjdV?=
 =?utf-8?B?RjgrLzVYVkNLazJ1YjNmNEZmUFNIcWdrRUZrK3NzbFRSb01ZbEovTkpsMjFE?=
 =?utf-8?B?V0V5UElJV1dBTjRFRzJTaDRFOC93c3FCUk9yRVZEbnNuQ0gyTXUyMjhIZlM5?=
 =?utf-8?B?ejgwbEtXbkdwTStkZWkrV1JQdy9xUFhaL21lZHJOZGtocWV1ZzZyL2NWQkl1?=
 =?utf-8?B?anR2bmdGTkNvS3lSR0lvWjBzTzlLU2lYVTVaZVJjN1ovR1FwbWV4NTZtZHlS?=
 =?utf-8?B?d3RlemRmdU9mRUsxZCtLYjZNMTdSdWlEY3IyR0V0eHF5TkhuSlpWbGwzWWtp?=
 =?utf-8?B?U3k5bGhEMXBCaE9JTUhZWitpQU5ZS2tyT25qRm1zVzNDeVE0ODJVVDd2Sk9l?=
 =?utf-8?B?YjduVW5ucUdWZXc0YlNPREZUdEVGZVBxak5TZDFWUHMySzVKSW9MYWo4ZlR4?=
 =?utf-8?B?Q0RBZXpsL1VZaEpVU1VmanE0aWxMUmdZOXVvbmFIYURIU3Y1VkNKUTlhT2lm?=
 =?utf-8?B?RXB5SlFhVWJWemQzTFM5S3dFa0VkSC9PSENpeENScGFuWnZSSzZHVGloSGtn?=
 =?utf-8?B?RGhCNit6cjI3cEZ0b0NRUElOK0tKMGZxY2NvOHdKMG4yU2ZCUHZxYVViK2pX?=
 =?utf-8?B?OXVxZUNrTmtySmlsejRKcHVjU2s0UTFLbURHZWhMMVVtUVhQK2dQYnE3VjlB?=
 =?utf-8?B?YVl2RUpnUTg3U1JmVnlmaVFZNk5FUXV2em9MZ2toMU1WVnh0UUhLNWxLUE1Z?=
 =?utf-8?B?eG5RYUxkZUNoMlRPcTlrS1lrZU92aU1DVy9KYTVZTnQ2dThuRjZVcmd3bXVG?=
 =?utf-8?B?MFlOV28zc3hPeFZxK3cwZW9LalJBK1RFRDhSN2RhaGthTXlPMmtsQ1AvU2cy?=
 =?utf-8?B?eTNRSEJrUWdmVFdwYVVCdnN5NW51UVIvTkNmeEFNeGpkWjViNVJDb1o2RFM0?=
 =?utf-8?B?T1NNVVBaWGlVVFNwMlZHMCtPVXZwUGNFQkcvQ21jRmdDUytNeHNUZG9DdFNh?=
 =?utf-8?B?WnFKMFFiVjZjUHY4b0VmNDdDVWlOYkpZbWJxalp6dWY0Z1NqNUY3Zng4ZExD?=
 =?utf-8?B?Qldrd2Mrb1dnSk8xWkpGMjNob3VjbzZjcVJ3SHRwangxYnpRbnBNTkljS1Rp?=
 =?utf-8?Q?53CvCZsZNBhIamN7lZ7bxLJQX?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f58cccec-51d6-45e8-87de-08dbb35887c4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 06:21:42.1079
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: onW9dSwroe8AZGVMb7w8mSqSq0Amsj/5wItWoNYUTC7p+b/ywUCdkZBZfUPgJiEFx0A32yeUGGnMdK3VTC6lFA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7478

On 12.09.2023 02:48, Henry Wang wrote:
>> On Sep 11, 2023, at 23:01, Jan Beulich <jbeulich@suse.com> wrote:
>> --- a/docs/misc/xen-command-line.pandoc
>> +++ b/docs/misc/xen-command-line.pandoc
>> @@ -788,6 +788,14 @@ Specify the size of the console debug tr
>> additionally a trace buffer of the specified size is allocated per cpu.
>> The debug trace feature is only enabled in debugging builds of Xen.
>>
>> +### dit (x86)
>> +> `= <boolean>`
>> +
>> +> Default: `CONFIG_DIT_DEFAULT`
>> +
>> +Specify whether Xen and guests should operate in Data Independent Timing
>> +mode.
>> +
> 
> Since a new cmdline interface is added, I am wondering would such
> addtion deserves a CHANGELOG entry?

I'm open to opinions, albeit not so much because of the added command line
option.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 06:23:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 06:23:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599937.935554 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfwo9-0003Gx-MQ; Tue, 12 Sep 2023 06:23:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599937.935554; Tue, 12 Sep 2023 06:23:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfwo9-0003Gq-JW; Tue, 12 Sep 2023 06:23:33 +0000
Received: by outflank-mailman (input) for mailman id 599937;
 Tue, 12 Sep 2023 06:23:31 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lhkB=E4=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qfwo7-0003Gg-Hp
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 06:23:31 +0000
Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com
 [2a00:1450:4864:20::336])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e3b47fe3-5134-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 08:23:29 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-401d6f6b2e0so39381815e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 11 Sep 2023 23:23:29 -0700 (PDT)
Received: from [10.5.2.12] ([15.248.2.224]) by smtp.gmail.com with ESMTPSA id
 bs11-20020a056000070b00b0031fbbe347ebsm602603wrb.22.2023.09.11.23.23.27
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 11 Sep 2023 23:23:28 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e3b47fe3-5134-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694499809; x=1695104609; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:organization:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:from:to:cc:subject:date:message-id:reply-to;
        bh=VrBLkgo2WY6KpVXj/Wo7T0oMCvgXinsixbl861VxIIk=;
        b=qOBJsLpSTovVdl2VMbKf0knNGZuZFGTzn/8HbtXDhFBT9voi+FvCDSWVMbTJXSgoXE
         U2XTdEzfrt8MMNGOgjWwzN7sWpKpf5b/5mTL3dxdgoln5DW0rh7Kb5+ev91rdq5D4H1T
         095MaTw/dkvV2VtSGzgtPr5DxFeykGVYHbDmdJ0WKySRmUrKmKVycY11egJDST9vP3lP
         Arb+lqWlPCbUoWeP7jFINDk1n2pUFnI+zfPG175o/u2KmKzXbwfgtBA1t4yhEx5VeppN
         r9nNXj4W3AKXNeqy2HKU2mqCnspbKmhMVoE/31XyH5DDavXwPw73FnfFrV4lat4mfUwH
         QJGA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694499809; x=1695104609;
        h=content-transfer-encoding:in-reply-to:organization:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=VrBLkgo2WY6KpVXj/Wo7T0oMCvgXinsixbl861VxIIk=;
        b=hPygH7FW5YCwGtv2aZpYBtFNx6F1piiJIRhRLSu9NfNrtgmwM+zQwGBfiR4HWb4bJI
         GAgwofFK3GPVpuov08m/WQKzswwQ3PeJ0kaggO794yjcsKO5ENOn0lOPMEsk6vyR9vED
         y1jVzG8q7m/V4D5JI6e+clpip/o79YQkBgCBOWaFIOYKRXEzHu/uq+b+oH7Aexybkq5R
         cbpX0cCh6UIKeXFVaH2pc3OitOpgpQQ1Iy7yQk06aDswlBK5moXWZYKCnN0mdAExNWcI
         wNParB6BRJSBtr50k4Tr9kdmnZZN6SGNZEXlHhakklY2oHksJ+RKX75ssHBoGt0uB5nu
         5NcA==
X-Gm-Message-State: AOJu0Yz3ZK3M0peLq9jOpckLE2Tx0fpBCWctKcAKe76oV0x1qez+MTss
	m6Egm9XR3wP5ysdvmVUwAM0=
X-Google-Smtp-Source: AGHT+IFsxggATDO3/WXN4NlkqQ+XGwbCfK3FYInd9FMii5Gwa2SHQvLjRYF77W4QFvgD++0bB0mi1g==
X-Received: by 2002:a05:600c:205a:b0:3fe:1fd9:bedf with SMTP id p26-20020a05600c205a00b003fe1fd9bedfmr1074271wmg.11.1694499808912;
        Mon, 11 Sep 2023 23:23:28 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <e260dddb-8479-e011-d679-a985979cb3a6@xen.org>
Date: Tue, 12 Sep 2023 08:23:27 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Reply-To: paul@xen.org
Subject: Re: [XEN PATCH 10/13] x86/viridian: address violations of MISRA
 C:2012 Rule 7.3
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Gianluca Luparini
 <gianluca.luparini@bugseng.com>, Wei Liu <wl@xen.org>,
 Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <cover.1691053438.git.simone.ballarin@bugseng.com>
 <63f0d6385f302517244604af5536ffebd74ba589.1691053438.git.simone.ballarin@bugseng.com>
Organization: Xen Project
In-Reply-To: <63f0d6385f302517244604af5536ffebd74ba589.1691053438.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 03/08/2023 11:22, Simone Ballarin wrote:
> From: Gianluca Luparini <gianluca.luparini@bugseng.com>
> 
> The xen sources contain violations of MISRA C:2012 Rule 7.3 whose headline
> states:
> "The lowercase character 'l' shall not be used in a literal suffix".
> 
> Use the "L" suffix instead of the "l" suffix, to avoid potential ambiguity.
> If the "u" suffix is used near "L", use the "U" suffix instead, for consistency.
> 
> The changes in this patch are mechanical.
> 
> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> ---
>   xen/arch/x86/hvm/viridian/synic.c |  2 +-
>   xen/arch/x86/hvm/viridian/time.c  | 10 +++++-----
>   2 files changed, 6 insertions(+), 6 deletions(-)
> 

Reviewed-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 06:48:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 06:48:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599945.935563 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfxC3-0007J4-Jj; Tue, 12 Sep 2023 06:48:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599945.935563; Tue, 12 Sep 2023 06:48:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfxC3-0007Ix-Gi; Tue, 12 Sep 2023 06:48:15 +0000
Received: by outflank-mailman (input) for mailman id 599945;
 Tue, 12 Sep 2023 06:48:14 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfxC2-0007Ir-JV
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 06:48:14 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on2060d.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::60d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 57d9a103-5138-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 08:48:13 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8642.eurprd04.prod.outlook.com (2603:10a6:20b:429::24)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Tue, 12 Sep
 2023 06:48:09 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 06:48:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 57d9a103-5138-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=A5RPWnCrLAR17Ch50I+QZPPyURQG7EBegU/TkNDgliO+s98t5nAngs85GiWGIRKvvS7jZhRb4pMST5PNC2Cz41D4CMT2Tp74f3SFZoRI5cFAtHX30JksI7kNiH6o7dTrYPeRbfw5f0wagbiH7FnQkGmQb6wBScshujhCh+Yezq7NgiJT4iIHFqGWSX2Wlmd+FPe478ECIAiKaYijzhH0emnQ4s/lyNDRghE429i92ue81wZmBtA5/8XnmeczRC+qjuFH2+XQ1HvceRkyfRzhm2XjNAGFJg/9VFUGLidIlF+1MqP/IBymQ6Yn1YKx0ITc2tmuiPxZVbCMJRnHDaNWyg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ziIlcc1oiZPK6j/k834YE6oO6Sk9Q7wyTUsUy5JeGb4=;
 b=YuGfSGqfCSqm8iN1fOBTI+osqsgvo0RbfbZqXDTd1Q0d3jGt8ZCek4BXZTJM6aEKey0lpkL/cdhdDZ+0HXDePxMN/0GRLpVSASGKhSJTC7/riUH1HJ1PXeLNoquZFrenWrA9BqOqRoZuATYGo5ScKIqiYnZVL92sbsCs8jk+MAk99W92HteSTv/QYdBBzChPk4ZHazdtgiAI3iWISFqpjR6xw97aNW9FERpTK0Ev6rvFomN9hawh+mN1ML8EHTbuycfGwUIegNSik1UZVwkB0l4UPHKTZrv/dyXDXfBjxl3Zhe2OfiEZXXCdxl+x+7atq1vjtyTRcK4kcJqKrsgB0A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ziIlcc1oiZPK6j/k834YE6oO6Sk9Q7wyTUsUy5JeGb4=;
 b=B0nH7M/3ZQtuwDAnULTckHAg+KjToOzO8BO+zezMS8OV22Ll+n85MBjdlwQOOJo+KQNGJVf8Rdig9au96oZeqeGb+tJ2JkGgAb4urF/V9mb1XURf6eEURU1lEX8aqVcV0WgTBQgG3Va0WKgFG+gimRCwRgI6ulcXQBog2tNbAcOwY/qKwQec2+wMHIqsiHPYhuewmXSV3ExQBJbfu3upt5cY4ONSe8zc06+vsRCLDQHQ+pUR3KuOyY4DT86bzjo4UOIA7gDwOlnQAvOXtgXSLEn5uK0aTGTCzo2ncd5z2F3FfHwbGaOHEucmKlxmk0Hfcrx8PIibwe6wTxIOl4QeFg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <07f75b80-1579-25ec-ab64-cbc1f2ff15e1@suse.com>
Date: Tue, 12 Sep 2023 08:48:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 1/5] xen/ppc: Implement atomic.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
 <7ed453323033a759427da33cea7d18ddca247ae7.1694211900.git.sanastasio@raptorengineering.com>
 <93f4a2f3-b98c-332d-64a6-9e34cc9dddf2@suse.com>
 <7d3029fc-1188-3c55-0a54-bb9899fb91e8@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7d3029fc-1188-3c55-0a54-bb9899fb91e8@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0009.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c8::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8642:EE_
X-MS-Office365-Filtering-Correlation-Id: c322df04-e715-44f8-6d77-08dbb35c3a12
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TthwUWDA9d/RwEN2Ddyd6rnSjMWqAZ4EBMPdokSTk+i8OSPOMsbd8haT0wiu3sbAmKjIXf+55gDxi7kP1V76cO6bITP9PmwjDTCCo3eAZ6ewXjLxgA2W2lNWBjEwDKESLrtysqRhLtkF/+5hALlht9t3of+aRtI06o9uQss2NHPRS9mle1fWUyFZAyMmqlcr+5WfFn2Jnd/ASw43JGPKnfIFovhFrbGHG4jypfF8/b9H4N5w6kwZ2iAwdAiQlrzOEHv1rxPoKOcq4p7VRj2PHYagXc4+GE4VcB2TBSpAtEFMCyqQJlcI6Nu7H4pn3q4ZGSs8lMVe/yi93JryUKw58xkv0KYZtQ5W0ymHhYGnUgZUbKo+uxBS8JmBW2stEoi5IjUMjdrGT9iirCHLrb3EhL9C3HqK8VqudYpR6bi5kt71IF/6SfWwo8vVUKo2jyRuYaJVdCAzlPSxwLyGapNtthG4x7vR1SL6g2KDRqdvv1KqNH1zQGEW0WyMT1Femn2VgB8oO8o+7qxn8JEEirSyLGKydJdb2R5KyEeaaMOLGL02/6z+ye1wpzdYWz+aWBsSv8K7DlJyXNZf58TmbKBSfmyvVezcj9cfd52klLHPj5+f7SbRkPCgacZJeEuEvwJX7tBq896rc4U/wBz77peffw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(376002)(396003)(136003)(346002)(1800799009)(451199024)(186009)(2616005)(6512007)(31696002)(316002)(66476007)(2906002)(66946007)(38100700002)(5660300002)(66556008)(86362001)(478600001)(4326008)(8676002)(8936002)(6506007)(53546011)(41300700001)(6486002)(6916009)(26005)(36756003)(31686004)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eU1qdms0RVo4TEFOcVJPZkF3MVFycnVNZjQxWGo4eDM4UHdzb1NoZWxBN0cw?=
 =?utf-8?B?UDJqTDA0ZnF2bTROeHBVaDgyWTFjRXNFeVZtaUdQb3BMU1JvYUc1RCtmbWJX?=
 =?utf-8?B?WkNkREhiZktDV01RZEJQTXhVS0VRVzJpUW9Jd2tCLzZkSEJHZWdMSFhJM1lZ?=
 =?utf-8?B?NDV3Misza1NiSWFTbmdCS2FDWWZ5QjZjZk9DYUZZcm1XM2dqRERYektqa0dx?=
 =?utf-8?B?eGhzQktCQisrNzhUNlFCN2xyMVRLaUNGcXJQbDB3R1BQR0gvQnprQURWS3BM?=
 =?utf-8?B?SjNQeEdtNlJaTHRmZHpQV1BLZ1pINkt2OEEvKzhOTVY4a3ZLVS8xaTg1OW9v?=
 =?utf-8?B?TmZ3cWZPS1B5TEErK3JYNDRpM1E3czNkUVZrUFMzcWJhaUFNTTEvek5ubDdM?=
 =?utf-8?B?YTZDdjdoWG5EYndXaStKQ1VYMjgrU0tkOVY4VmNZT2xjK1h6bmg4eTluT29j?=
 =?utf-8?B?Y2R6V1ZpRmoxVW45cjIrYUhJWUg1VDcwNU5FKzdoS2ZWTW53cGxTb2hrOURS?=
 =?utf-8?B?dDhEeHkxZnBBNTdYVm05RmZ1dERseHZSbGVFK0dqRkxScWJER2hwQzNmZXpL?=
 =?utf-8?B?RDl5aHJrZEdQS0FqMVNhMG1QT09qOHFWaFZLdDdMMzZGMzNkZy9HWE1Dd3Rw?=
 =?utf-8?B?ZXRyVTZHY2JaY3V3M0NEdWhoR0Y1blhWaVNNYm1RdnRIU2xFaTJhanJBYzFL?=
 =?utf-8?B?U3pvb1B0THhLRVdZampsN2kwUFpUUVArUklBQ3JnNkZwMlQvZjBHRTdMcDk5?=
 =?utf-8?B?cXlnVzAwWW9HYXFoV1hyVHAraXBoWVd5dGVkVFZxNnllbHdERG12KzlSUEx4?=
 =?utf-8?B?a1l2b3VqZnBBektVRWtiZm1SYVh5LzQ1TUE0S0NaeEE2VzJnbS8yZE9GN2Jo?=
 =?utf-8?B?NzVNbHhUWHpySDJtbStHTWUrYjBocUhucStkZG5Ec3E5QTh5Tm1tTXpYN2dr?=
 =?utf-8?B?dHZiSllRS3ovZ2FFUXV1QkJUcnl0SXlRSm1XSXpmL3lNanIxdVBuWEdwU1Az?=
 =?utf-8?B?eVhBdUFHOUU1dEFuMnRIN25ya0hsVWpmTUt1aTdQdnIxbWNjaXBDdlA2d3ov?=
 =?utf-8?B?SmFoRXFxajhkUVhzWjAwNGxsSHYyNEQwMk5sZDFWWGhXRWdoSXJDQy9CSmx6?=
 =?utf-8?B?dkp6MXZRZVFIeFI4aG9rQzlsekVEKzlzbTFMMEdSd3cvQzh5UDZyTFROZDFn?=
 =?utf-8?B?ZHVsUmhBWG9ENDFWcGhYdWZqeVRuak1lTjFKMWJZS3JSN0xuQVNrSjh1TzBM?=
 =?utf-8?B?MDk2djRrVjlkbG5zRHcxL2JDdmFIMGpzdDRQa1Rza1NVbzh3SkF1Tkc4Z2pl?=
 =?utf-8?B?bXVQMHFvMVFCMnIrdXEwTWtWUmY0RS80dDIxWnJqeGxwVXIrcUhuRGpMOVEv?=
 =?utf-8?B?Tmt4UUt2QjNMa1BxVXdYMmE3Q04wODVWWnJaTE1ZOFFicVk5cW5aMjEvRXBX?=
 =?utf-8?B?QzJoR3VGZGF1RU1GdXY4cmFIeUZRS1YybDArbll1NGUrV2FEQWNqYXJTcjl1?=
 =?utf-8?B?THdzQlcvakhlTzBReHIxRnFQbE81NitQVEl6ZVAvbFc2OVNscVJuTXdTK2hi?=
 =?utf-8?B?d0JnNHlTZE9RL3pMK3VxTksvZm1ycmtSdTF5TDZKVENDNUs1WmVwS01LaDBP?=
 =?utf-8?B?K3VGQkg5djdRSEkwZHNNV0Z5UTd1M0QzWU51Und3blFweHM5SG0wMGN5cnBy?=
 =?utf-8?B?QitXWkZDcjhlSDF2dWV6SUFwUzdxRFhlMTFaZzJXNno2by9FUEE2R3ArM3NU?=
 =?utf-8?B?Tkt1L0hZVENzdlk5TktwNVlGczZ6VHB4T3JMNXpwWHhnN2RMY2k0cnlmM2pW?=
 =?utf-8?B?R281ZU50V0N4TUpucWdmMnVaZ2poWW9tRkhWZ0tUUTJXYnJIV01rWXE1UGFa?=
 =?utf-8?B?ZG1tN0hMd2puTmxDVFdlbzJETExScG85NU1yZDl6QUFRTUt5WkJESmJLbTNm?=
 =?utf-8?B?LzFEWStGc3JkOG1FRmNFRU1rWUFGTEZIcVp1VEdORi96dlZyVy9Tb05XQ2FT?=
 =?utf-8?B?eUQrdXVqUzUyeVZIaWt3aW5hZ2I1cnNVQnVjTGx6UFZzaGNkbHdTbGFDOHlK?=
 =?utf-8?B?cE92UkF1MmJpejR0eFNVYXYyN2NLR1BEaVZYOHJJUGU0QkNLU3lnUHNKeDZy?=
 =?utf-8?Q?puVWJgGiAQ/ht6fyR9sl5m9tf?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c322df04-e715-44f8-6d77-08dbb35c3a12
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 06:48:09.7749
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: UBQlg439ylzYRFSM953ipehNK369hYAawOUnMtTwtQFli9XjHK4RyHLHB52qHRa6iy7axMmZSYRR9H67hKA4yw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8642

On 12.09.2023 01:56, Shawn Anastasio wrote:
> On 9/11/23 6:33 AM, Jan Beulich wrote:
>> On 09.09.2023 00:50, Shawn Anastasio wrote:
>>> +static always_inline void read_atomic_size(const volatile void *p, void *res,
>>> +                                           unsigned int size)
>>> +{
>>> +    ASSERT(IS_ALIGNED((vaddr_t)p, size));
>>> +    switch ( size )
>>> +    {
>>> +    case 1:
>>> +        *(uint8_t *)res = read_u8_atomic(p);
>>> +        break;
>>> +    case 2:
>>> +        *(uint16_t *)res = read_u16_atomic(p);
>>> +        break;
>>> +    case 4:
>>> +        *(uint32_t *)res = read_u32_atomic(p);
>>> +        break;
>>> +    case 8:
>>> +        *(uint64_t *)res = read_u64_atomic(p);
>>> +        break;
>>> +    default:
>>> +        __bad_atomic_read(p, res);
>>> +        break;
>>> +    }
>>> +}
>>> +
>>> +static always_inline void write_atomic_size(volatile void *p, const void *val,
>>> +                                            unsigned int size)
>>> +{
>>> +    ASSERT(IS_ALIGNED((vaddr_t)p, size));
>>> +    switch ( size )
>>> +    {
>>> +    case 1:
>>> +        write_u8_atomic(p, *(const uint8_t *)val);
>>> +        break;
>>> +    case 2:
>>> +        write_u16_atomic(p, *(const uint16_t *)val);
>>> +        break;
>>> +    case 4:
>>> +        write_u32_atomic(p, *(const uint32_t *)val);
>>> +        break;
>>> +    case 8:
>>> +        write_u64_atomic(p, *(const uint64_t *)val);
>>> +        break;
>>> +    default:
>>> +        __bad_atomic_size();
>>> +        break;
>>> +    }
>>> +}
>>
>> These two functions being as similar as is possible, ...
>>
>>> +#define read_atomic(p)                                                         \
>>> +    ({                                                                         \
>>> +        union {                                                                \
>>> +            typeof(*(p)) val;                                                  \
>>> +            char c[sizeof(*(p))];                                              \
>>> +        } x_;                                                                  \
>>> +        read_atomic_size(p, x_.c, sizeof(*(p)));                               \
>>> +        x_.val;                                                                \
>>> +    })
>>
>> ... is there a reason you keep using a union here ...
>>
>>> +#define write_atomic(p, x)                                                     \
>>> +    do                                                                         \
>>> +    {                                                                          \
>>> +        typeof(*(p)) x_ = (x);                                                 \
>>> +        write_atomic_size(p, &x_, sizeof(*(p)));                               \
>>> +    } while ( 0 )
>>
>> ... while you did away with its use here?
>>
> 
> Yes. In the case of read_atomic the caller is allowed (expected, even)
> to pass in const pointers for `p`, which wouldn't work if a simple
> typeof(*(p)) declaration was used since it would inherit the constness
> and thus wouldn't be passable to read_atomic_size.

But the helper function's first parameter is const volatile void *, and
while you can't assign to a const variable, such a variable can of course
have an initializer (like you have it in the write case).

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 07:18:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 07:18:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.599996.935604 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfxf9-0004UH-5y; Tue, 12 Sep 2023 07:18:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 599996.935604; Tue, 12 Sep 2023 07:18:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfxf9-0004UA-39; Tue, 12 Sep 2023 07:18:19 +0000
Received: by outflank-mailman (input) for mailman id 599996;
 Tue, 12 Sep 2023 07:18:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=t/Nr=E4=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qfxf6-0004U2-UD
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 07:18:17 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20602.outbound.protection.outlook.com
 [2a01:111:f400:7e88::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 88c4ad0a-513c-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 09:18:14 +0200 (CEST)
Received: from SN7PR04CA0003.namprd04.prod.outlook.com (2603:10b6:806:f2::8)
 by PH7PR12MB6660.namprd12.prod.outlook.com (2603:10b6:510:212::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Tue, 12 Sep
 2023 07:18:10 +0000
Received: from SN1PEPF000252A0.namprd05.prod.outlook.com
 (2603:10b6:806:f2:cafe::ab) by SN7PR04CA0003.outlook.office365.com
 (2603:10b6:806:f2::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35 via Frontend
 Transport; Tue, 12 Sep 2023 07:18:10 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF000252A0.mail.protection.outlook.com (10.167.242.7) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.17 via Frontend Transport; Tue, 12 Sep 2023 07:18:09 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 12 Sep
 2023 02:18:09 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 12 Sep
 2023 02:18:09 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 12 Sep 2023 02:18:08 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 88c4ad0a-513c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DTeHciFi+RQlYxrb3gv3S1JerOTd0qGnO7lxQvJICh8+o/EH778CoxDola8DcVSxfcgc40VQT9YBsk0ff6sgxstvrTE/4EEcHh7JczSgkEfVHwNYlozwVtKwCHySQJoHvKzAUEBXq1thmvu3chcT7+6WbZrc6lB+u9M1eDVWz5Z23XDWdU+KQ1a7QPDqv3/b1kUUxzWLCoZUvIr/RjPVn2aGjPXznqKe9U+row8blVMnEDmQbqt6rZoxVtNdLAo9H6eH7ivJb/nyYIRl8/X5uR23Q6dFcq20MOW+8Je8pj+nlsaV26ZgdrtS1d9IE/TegdZW1nEAMrXo6dKDhRq5Cg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qTI3z+saNJaVJL2qSdIaPUg3YylWbHJV/ZNidfwunVA=;
 b=OrQzywIrwHL0UuIOkfcSDQ4E2ka8FoeS4DuvDNVE+fHhFN19NBG3/vyYNm5HvO2/eit36NhKIS0wCkR2xtS0gYUV6DXF3qml7IRn+3LpBVAJAe/gwX/GXw/BFPmUQWIU4Lt4uKkUJftlDqOVAeAAKrYA0sAHhXrDImPje9fo4eJE6ktAYigNVbQ7V5GFKU46j3tk+EJ2r8foTJnky7a5odCazMIhvYXTudvMJUjRfMzWmzag/u0qd0bSj5GFgV0tQLR1ty6gE/eDsSwaHZAAV4B3WHRvfaFpFWinsbd5ENRm5sxqzY6PQbZ78c6cyZZAAb420EwnTt4/6ncZancB/w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qTI3z+saNJaVJL2qSdIaPUg3YylWbHJV/ZNidfwunVA=;
 b=Sj7xNWBACdqijiTbvm9OpjIsGKXRP1fTgzMk50Ruj8Jynx483RqbQs8zU9ZZYdfrFfIut74b9bGuKQK3twWuhBhTnBycIqJk6M0RTGxTn3boD76xca1LfpYBq3NAC1G40PnHOT5hoUVNsOdCD+hsry8QnmNpm4RKWtmytGXtDjY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <a649d56c-0bdd-2383-6073-477a8202f049@amd.com>
Date: Tue, 12 Sep 2023 09:18:07 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>, "Bertrand
 Marquis" <bertrand.marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
References: <20230911123401.27659-1-michal.orzel@amd.com>
 <366e89e3-bc3d-4c54-b1ad-8147abbabdc7@xen.org>
 <042fae56-e8e2-c079-2686-d27c5469b7fc@amd.com>
 <e24a7d3a-ca18-474b-bce2-84b97512c58e@xen.org>
 <faf253c3-2c99-9380-c120-a2dd3110b796@amd.com>
 <alpine.DEB.2.22.394.2309111620130.1847660@ubuntu-linux-20-04-desktop>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <alpine.DEB.2.22.394.2309111620130.1847660@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF000252A0:EE_|PH7PR12MB6660:EE_
X-MS-Office365-Filtering-Correlation-Id: 22bbbc75-a1fe-47c6-de7b-08dbb3606b2d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QvnIzV2RYW6JcMB6+BIoZ+iobXkarpm+F7Lf4CcUp5eLLAQJZZkU5HdnI3o4qYXxEPeuX6vNYyPP2GSeP/qUkRvff+Fl+WuRY04CtgkVDXz8utmVX8HGzK2SOEuV4HxVVeLszrLjU9R15S8NP7tUWdiysvJsyzNWALuAyuSW8L7gqmmqlhoD29gn0RHwnJgAO9StqA9+CKzHlryfAWPWGxWm8NCdkaKRoAUm2f0veITY9z70o+8IeO1oOmMrQB2q6K8XOstxFwLmLA4Aq2TkbjNx5SH4JSK+IpPodTtXCqxQyxJai8xVzPkwOS7vUi/Ztwjnc9NgHbNA7u10zd6//eggg+w+ZpHJUvrqvKqD8ucNCpZm8LkBcAi11YZvn8cGCBTDNf9vUAYb13qylrVdkvIRlHe5yKipICKaK7fwmhkb+B2ltKs8Rpen2d1a0UxHaxVlV7fbsAWstOXvzeuNCfOHPxZotHdKEq6Pll+gPImHeRJxJUg+iU8eIix9igVSMPxjJuQbz0xZjRdDudjJrO0Sh7/vNTOcEvul1gPe2uoabjPHwbZ56YTEK8TYHaJkM31uVBQk1k09nUZ11dEWuT50Iujfhtj/mjd1qoTnWAqWIfxHR3YgbC/n7LUr4QU1zl7QRXyo3GraPJw6sbftSQLiFmhkhw2a8O0btZhK3uLicJU9AXgurNI1mGMcLgrFdYZcWJJSzwqv7kgt4F0SVwsrmdEB84z+ycXz0mHvoLldNoBB/YYC3fky0s6LmZtoZKQ1oxUbj7s5YdfB3Y4UoW7OgkY2C3nicznej7/bHwxpZU/TCRbmtF8O7PSQQ7PlkEkQ5VmVkhpJPkFOIXX/GQ==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(376002)(39860400002)(346002)(396003)(82310400011)(1800799009)(186009)(451199024)(46966006)(36840700001)(40470700004)(53546011)(36756003)(40460700003)(83380400001)(356005)(82740400003)(81166007)(31696002)(86362001)(36860700001)(47076005)(2616005)(70206006)(426003)(336012)(26005)(40480700001)(16576012)(54906003)(316002)(41300700001)(6916009)(70586007)(2906002)(44832011)(8676002)(8936002)(31686004)(966005)(478600001)(5660300002)(4326008)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 07:18:09.8832
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 22bbbc75-a1fe-47c6-de7b-08dbb3606b2d
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF000252A0.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6660

Hi Stefano,

On 12/09/2023 01:21, Stefano Stabellini wrote:
> Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
> 
> 
> On Mon, 11 Sep 2023, Michal Orzel wrote:
>> On 11/09/2023 16:48, Julien Grall wrote:
>>> On 11/09/2023 15:01, Michal Orzel wrote:
>>>> Hi Julien,
>>>>
>>>> On 11/09/2023 15:14, Julien Grall wrote:
>>>>>
>>>>>
>>>>> Hi,
>>>>>
>>>>> On 11/09/2023 13:34, Michal Orzel wrote:
>>>>>> Host device tree nodes under /chosen with compatible string
>>>>>> "xen,evtchn-v1", "xen,domain-shared-memory-v1" are Xen specific and not
>>>>>> meant to be exposed to hardware domain.
>>>>>
>>>>> So, how dom0 is meant to discover the static event channel, shared
>>>>> memory it can use?
>>>>
>>>> For static shared memory:
>>>> A node with this compatible is only meant for Xen since it contains information like host-guest mapping.
>>>> Xen creates a different node for guests under /reserved-memory.
>>>> Linux binding:
>>>> https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindings/reserved-memory/xen,shared-memory.txt
>>>> Xen node generation:
>>>> https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/domain_build.c;hb=HEAD#l1407
>>>
>>> Ah good point. I agree with this one.
>>>
>>>>
>>>> For static event channels:
>>>> This is a bit weird so let me put it in a different way.
>>>> 1) Xen does not create any node for static evtchn for domU.
>>>> 2) The booting.txt states:
>>>> There is no need to describe the static event channel info in the domU device
>>>> tree. Static event channels are only useful in fully static configurations,
>>>> and in those configurations, the domU device tree dynamically generated by Xen
>>>> is not needed.
>>>> 3) The "xen,evtchn" property specifies the local port as well as phandle of domU node.
>>>> dom0 does not have access to domU nodes, therefore exposing a property with not existing phandle
>>>> makes me think that:
>>>
>>> You have a point for the phandle. Yet, this is the only way dom0 can
>>> find the event channel today. As we exposed it, I don't think we can
>>> remove it until we have a proper replacement.
>>>
>>> We might get away if the feature is not supported it at all. But there
>>> is no statement, so it is a little unclear whether the feature is meant
>>> to be in technical preview.
>>>
>>> In any case, I think the commit message deserve a bit more explanation
>>> as hiding "xen,evtchn-v1"/"xen,domain-shared-memory-v1" is not
>>> uncontroversial.
>>>
>>>> a) point 2) applies to dom0 as well and we should hide this node or > b) there is a missing property for both dom0 and domUs to tell them
>>> about static local port in a proper way
>>>>
>>>> Exposing Xen specific evtchn node only to dom0 and not to domU with required information happen to be found as first value
>>>> in xen,evtchn is definitely not a proper solution.
>>>
>>> My concern here is we exposed such information to dom0. So as I said
>>> above, I don't think we can simply remove it as there is no other way to
>>> find such information today.
>>>
>>> It doesn't matter that it wasn't exposed to domU.
>>>
>>>> Also, there is no Linux binding for it.
>>>
>>> AFAIK the static event channel support was not added in Linux until very
>>> recently. Also, I think the kernel doesn't directly use the static event
>>> channel. So it is possible, this is just an overlook.
>>
>> I've found this thread in which Stefano, Rahul and Bertrand agrees on not exposing
>> any dt property and the rationale behind:
>> https://patchwork.kernel.org/project/xen-devel/patch/4836304496e6fbbea41348ed8cc9fcf6b0f3e893.1648049827.git.rahul.singh@arm.com/
> 
> yes it was done on purpose
> 
> 
>> I would not call exposing node to dom0 as something done deliberately given that it happens automatically by copying. So my understanding is
>> that we did not want to expose any node and dom0 case was overlooked (since done automatically).
>>
>> Exposing half the interface (from system POV) in a way it should not be done (phandle) is not great IMO.
>> In any case, if you insist on keeping xen,evtchn, I can leave with it.
>>
>> This feature is marked as tech preview with no Linux binding in place so I would not be worried.
> 
> Yes I agree. I don't think we risk breaking anything. I would remove
> that info from Dom0. Even if we wanted to expose it to Dom0, this is not
> the right way to do it...

Ok, so my understanding was correct and the code itself need no change. Following Julien advice to add more
information to commit msg, my proposal for it is as follows:

Skip the following Xen specific host device tree nodes/properties
from being included into hardware domain /chosen node:
 - xen,static-heap: this property informs Xen about memory regions
   reserved exclusively as static heap,
 - xen,domain-shared-memory-v1: node with this compatible informs Xen
   about static shared memory region for a domain. Xen exposes a different
   node (under /reserved-memory with compatible "xen,shared-memory-v1") to
   let domain know about the shared region,
 - xen,evtchn-v1: node with this compatible informs Xen about static
   event channel configuration for a domain. Xen does not expose information
   about static event channels to domUs and dom0 case was overlooked (by
   default nodes from host dt are copied to dom0 fdt unless explicitly marked
   to be skipped), since the author's idea was not to expose it (refer
   docs/misc/arm/device-tree/booting.txt, "Static Event Channel"). Even if we
   wanted to expose the static event channel information, the current node
   is in the wrong format (i.e. contains phandle to domU node not visible by
   dom0). Lastly, this feature is marked as tech-preview and there is no
   Linux binding in place.

~Michal


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 07:36:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 07:36:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600035.935630 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfxwh-00080D-RU; Tue, 12 Sep 2023 07:36:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600035.935630; Tue, 12 Sep 2023 07:36:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfxwh-000806-Nv; Tue, 12 Sep 2023 07:36:27 +0000
Received: by outflank-mailman (input) for mailman id 600035;
 Tue, 12 Sep 2023 07:36:27 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfxwh-0007zw-4F; Tue, 12 Sep 2023 07:36:27 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfxwg-0007CD-Tp; Tue, 12 Sep 2023 07:36:26 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qfxwg-0004uo-Iq; Tue, 12 Sep 2023 07:36:26 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qfxwg-00014n-IG; Tue, 12 Sep 2023 07:36:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=6xRE7MreRSDVVcBU5lM5NYYYHnnc0pOeT7xHQrAydjw=; b=s5WSDRZeBWhfqUKRPiV8k6ri8j
	iaMjypBPDCPhnqBrMBbl0mPu7wDUT1Sp1ucfjn4X7lgvPuRUtVHklSpZJ+PjlaNty6aFUKP+Fciie
	lzsMwjgCzfU0mP2Ch4XCMuW69ta8Al/AftmRGGdM3sPtVSsOEhfVcfHdxm6KKmaNd/u8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182956-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182956: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=e880c307c5808a9a972e5bf3b859396610edd67b
X-Osstest-Versions-That:
    ovmf=a5cbb5990593559eb9d93ebd1df1e8da0fa5d72b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 12 Sep 2023 07:36:26 +0000

flight 182956 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182956/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 e880c307c5808a9a972e5bf3b859396610edd67b
baseline version:
 ovmf                 a5cbb5990593559eb9d93ebd1df1e8da0fa5d72b

Last test of basis   182940  2023-09-11 12:42:16 Z    0 days
Testing same since   182956  2023-09-12 03:10:46 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michael Kubacki <michael.kubacki@microsoft.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   a5cbb59905..e880c307c5  e880c307c5808a9a972e5bf3b859396610edd67b -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 07:49:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 07:49:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600065.935651 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfy91-0002JP-3l; Tue, 12 Sep 2023 07:49:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600065.935651; Tue, 12 Sep 2023 07:49:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfy91-0002JI-1D; Tue, 12 Sep 2023 07:49:11 +0000
Received: by outflank-mailman (input) for mailman id 600065;
 Tue, 12 Sep 2023 07:49:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Mt1s=E4=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qfy90-0002JC-Fb
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 07:49:10 +0000
Received: from mail-ed1-x529.google.com (mail-ed1-x529.google.com
 [2a00:1450:4864:20::529])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id db03b980-5140-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 09:49:09 +0200 (CEST)
Received: by mail-ed1-x529.google.com with SMTP id
 4fb4d7f45d1cf-52a39a1c4d5so6888394a12.3
 for <xen-devel@lists.xenproject.org>; Tue, 12 Sep 2023 00:49:09 -0700 (PDT)
Received: from ?IPV6:2a00:23ee:2268:14f6:b091:f7c8:1de5:3557?
 ([2a00:23ee:2268:14f6:b091:f7c8:1de5:3557])
 by smtp.gmail.com with ESMTPSA id
 u7-20020aa7d887000000b00528922bb53bsm5591251edq.76.2023.09.12.00.49.06
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 12 Sep 2023 00:49:08 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: db03b980-5140-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694504948; x=1695109748; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=LFoeJyuDNYmsVzyLgPqxuj538kgGRR1ep+RzZPtdOZc=;
        b=BJrSobhfgwvsDMiW9dz53izGIJrfde4OzV3RpGGeW0JnKUi28L5x2cPP+7+VrkS+BC
         tA1QPRhqeApJunixAyUxpOJDIUCHW60TVJhBCCce7qZx4CQh61b3oF4YVD7wTFjNq/lm
         k1HLAjf0IuJ9ATfU0T5gQy4qa6CqIEmYzYe4k=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694504948; x=1695109748;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=LFoeJyuDNYmsVzyLgPqxuj538kgGRR1ep+RzZPtdOZc=;
        b=Wyxomq+PStHKpzqL0vUrbwfFgI2TYWIuqHizWPsUWmJndfQ+tdWQgIE3hbVis1b5VY
         rVlUws+Y66w1Zm8p4+amyURZpVsyhmb0hkKzIK2I5eAJhondlSjP8WUANG4MMTfcsQsh
         bjaNVVfpHj5tqm8U0CgwEQZWyeegqVTtQnG6Dtj7vSOWjQzSNMhIojWj/vCr+xiixBWq
         OLjIf4FXxmu3EGzFfblzMlBY3A9/R9Uk+TBJ0PWZiztPHhpqUBAk9gY6qGuYCDaq99wE
         TtcP+CuMl+ZXWZrtjiGbr7pHjlToNcWkokjBiwoJehcW7Xm2OF4y4uajUOSq/AwqpKYR
         j5Sw==
X-Gm-Message-State: AOJu0YyqjxI5mWkbBASBtvwp1RiJfCg34CLkzuuPvOSgjo10h4LaH3Rg
	xVx1aOx5HFrBwXDR60fx6Vdcag==
X-Google-Smtp-Source: AGHT+IFonrDgS41pAD2weVB12F9LENbDq+Btlhv5PCU5tIlJodAgOyRbG8ssS33YUahXaopGDwOCVQ==
X-Received: by 2002:aa7:d14e:0:b0:523:33d7:e324 with SMTP id r14-20020aa7d14e000000b0052333d7e324mr10239030edo.38.1694504948462;
        Tue, 12 Sep 2023 00:49:08 -0700 (PDT)
Message-ID: <06fbfb18-cc1e-4f73-bdf7-8b2be1f92de5@citrix.com>
Date: Tue, 12 Sep 2023 08:49:04 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v2 0/5] python: Use setuptools instead of the
 deprecated distutils
Content-Language: en-GB
To: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, Jan Beulich <jbeulich@suse.com>,
 George Dunlap <george.dunlap@cloud.com>
References: <cover.1694450145.git.javi.merino@cloud.com>
In-Reply-To: <cover.1694450145.git.javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/09/2023 5:50 pm, Javi Merino wrote:
> This series picks up Marek's v1 from
> https://lore.kernel.org/xen-devel/20230316171634.320626-1-marmarek@invisiblethingslab.com/
> Changes since v1:
>   - Update all containers to have setuptools, as python 3.12 depecrates distutils in favour of setuptools
>   - Keep python2's support by falling back to distutils if setuptools is not installed
>   - Drop the commit about raising the baseline requirement for python, as we keep supporting python2
>
> Javi Merino (2):
>   automation: add python3's setuptools to containers
>   README: update to remove old note about the build system's python
>     expectation
>
> Marek Marczykowski-Górecki (3):
>   tools: convert setup.py to use setuptools
>   tools: don't use distutils in configure nor Makefile
>   tools: regenerate configure

Two general notes.

First, because you've (re)arranged and posted this series, you need to
add your own Signed-off-by line to all patches, even unmodified ones
Marek's that you've included.  SoB needs to be from everyone involved in
handling the patch.

Second, patch 4 should be dropped, and a note put in patch 2 to the
committer, who will use autoconf 2.69 and have a far far smaller delta
to include.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 07:57:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 07:57:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600073.935662 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfyGW-000487-Tt; Tue, 12 Sep 2023 07:56:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600073.935662; Tue, 12 Sep 2023 07:56:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfyGW-000480-Q2; Tue, 12 Sep 2023 07:56:56 +0000
Received: by outflank-mailman (input) for mailman id 600073;
 Tue, 12 Sep 2023 07:56:56 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ujIf=E4=linutronix.de=tglx@srs-se1.protection.inumbo.net>)
 id 1qfyGV-00047u-Nv
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 07:56:55 +0000
Received: from galois.linutronix.de (galois.linutronix.de [193.142.43.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id efc37ed2-5141-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 09:56:53 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: efc37ed2-5141-11ee-9b0d-b553b5be7939
From: Thomas Gleixner <tglx@linutronix.de>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020; t=1694505411;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=6ZzsYmunWoWHA/NB9KeL0vau4Ff6jwKnSaJSTsEsMFI=;
	b=S7QWiDE9Krb1twjTFimpubo5KJV71t+/H/lLh9a9//CJv1Pk5E2zPAzOSNwCExA+jO4Ze/
	FksO8K2WD7EcQKmu/+vaiTiZzuZoGugNZdpoB8ltocPzt4Iabf/qrpijTdLibt6+h4EPkH
	eQieygqQSrV4JURUoRBr2DYAw/L5xKBTR5ZjthDgWdABOg0kXW52Neg2y2uQL2VbDV4bvF
	JVrqB5gbGmwbMeLbBOHwlNRaSYqo61vkt39fABbshk0i+WnrgOE/byavgrWdtp48wz2dG7
	mMm9hYHGp+/OPtikzCuxVVzK0RJm5tLb0U5XF6PKmOm4+65J7IyMOqPkhD2xBQ==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020e; t=1694505411;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=6ZzsYmunWoWHA/NB9KeL0vau4Ff6jwKnSaJSTsEsMFI=;
	b=sHcLMxiNyH2zbR2CciNb39UpzU7j/5dbeWCZwKx1Rz6VPmaS6eD6WCjFnFH61uPt3BLHXJ
	O/6KOwEm0XOF7iBg==
To: Andrew Cooper <andrew.cooper3@citrix.com>, Stefano Stabellini
 <sstabellini@kernel.org>, Jan Beulich <jbeulich@suse.com>
Cc: Simon Gaiser <simon@invisiblethingslab.com>, "committers@xenproject.org"
 <committers@xenproject.org>, Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
In-Reply-To: <27ae69b6-bc57-dee3-2528-8311a38decda@citrix.com>
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
 <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
 <27ae69b6-bc57-dee3-2528-8311a38decda@citrix.com>
Date: Tue, 12 Sep 2023 09:56:51 +0200
Message-ID: <874jjz3juk.ffs@tglx>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

On Mon, Sep 11 2023 at 19:24, Andrew Cooper wrote:
> Furthermore, cursory testing that Thomas did for the Linux topology work
> demonstrates that it is broken anyway for reasons unrelated to ACPI parsi=
ng.
>
> Even furthermore, it's an area of the Xen / dom0 boundary which is
> fundamentally broken for non-PV cases, and undocumented for the PV case,
> hence why it's broken in Linux.
>
> Physical CPU Hotplug does not pass the bar for being anything more than
> experimental.=C2=A0 It's absolutely not tech-preview level because the on=
ly
> demo it has had in an environment (admittedly virtual) which does
> implement the spec in a usable way demonstrates that it doesn't function.
>
> The fact no-one has noticed until now shows that the feature isn't used,
> which comes back around full circle to the fact that Intel never made it
> work and never shipped it.

OTOH it _is_ used in virtualization. KVM supports it and it just
works. That's how I found out that XEN explodes in colourful ways :)

Thanks,

        tglx



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 08:20:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 08:20:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600085.935672 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfycv-0000vk-1D; Tue, 12 Sep 2023 08:20:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600085.935672; Tue, 12 Sep 2023 08:20:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfycu-0000uy-Sn; Tue, 12 Sep 2023 08:20:04 +0000
Received: by outflank-mailman (input) for mailman id 600085;
 Tue, 12 Sep 2023 08:20:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfyct-0000X7-5e
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 08:20:03 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2060d.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::60d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 29a96f00-5145-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 10:19:59 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9478.eurprd04.prod.outlook.com (2603:10a6:20b:4d8::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Tue, 12 Sep
 2023 08:19:57 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 08:19:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 29a96f00-5145-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RDHbBKV5mjXSFw1sCvEyEBJHvS8/h5h9WRkcBp1oy/6n1e3z1b2scql9tlzJyWB/pc30ReJT5BPt0A9LnOnoFy6R/uqBxhiqraPErRSq6WVSmavwUlPQHGH0BuQRKoODsRe9xYJIXMP+wC//+kefwmjF/IlQLu20quKHh+rJeO3fg/0m2Q+gv0Fwwk58DIRSktfI/5cwup0YRPDAIYqi7S7TH3f5VuF24dHO4hsQOeo2zSQMG7NSs71JJaxNpDZOQXfZiv8lQVDeeiyPa1GtLp1MyiQcLnRDlWEIlV11vnfgjmD3Fk9NZ44Qm6Mz/ssuNNT8g5aR34skSyvk0c5vag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nnsui2lZ9kWhvpHteJ/3NBXRxa3x4/pRhx+2A8ZmrOA=;
 b=cUKcEly5fc7/+qNtcV+gRCDN3cFXxeIjZ0NEvdZ5iG8OFPmtAkUn5O7pU5/wMsjfOdlaQa9umI53MRi/erxT+HXBVoRxysHmvuQTX4dAeU12k+pZSygE39KJmg/z+Diy46h5Mi2d/ev/Lm+m/aWMBJt2Is9vWmRlzciSqjqpm+y00X31JzfSu/LzpjaNw5Jz0Qo3xjGw/k3usLdL/I1bKxzuigG+nXnUjT84hwc7j6MXyL0Cum3SPsqU3VIyvEvsfOrRFJSLfN6DqPwE4m/eTU+2Tv0UlSAfqVoyBJ9c5rZcDtT+WC/L4maBcC5tfsGyom58mcADw/0g6uj51Kb72A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nnsui2lZ9kWhvpHteJ/3NBXRxa3x4/pRhx+2A8ZmrOA=;
 b=266jRnepEjWhuvXv217XKT5Z5uis0EOvsO6edRdL5LxYAV1XOWjuSlSemlGrelz/Ln1IaRBluGKT0xAjCZAfa0VLyTzJ+3GtU9HdH/C1vGWWA0lhrySMpS7EM3Qum5TDTiKBFIMbyASCiRmCacapqYDrKdYeQnvqCnaY7YZuvYkk1K3b/gBKPXu/xChnlaVWDFK1wTfwE+gs5LXSH5xeAN3I5GsuUXGUm40lTfPxNyx0piPZ4ariddyWNgsnNWqKHC7oLkhmGWSYMHeXOBLQi8ygKL0GV3l9p8vxqyz3yVYOHyuxLehIfJga4yoM4G/c6lZeWW3VFib//UbGcLnRNw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4e591aa9-96dc-2d92-1a8b-c82ee73ea27b@suse.com>
Date: Tue, 12 Sep 2023 10:19:54 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries marked as unusable when
 parsing MADT
Content-Language: en-US
To: Simon Gaiser <simon@invisiblethingslab.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
References: <20230911101238.18005-1-simon@invisiblethingslab.com>
 <2a19aef4-8bd6-ef8e-de4b-b85135dc7ea4@suse.com>
 <46959668-24b2-bf7e-7535-9fc47fcfc5e0@invisiblethingslab.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <46959668-24b2-bf7e-7535-9fc47fcfc5e0@invisiblethingslab.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0078.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cd::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS1PR04MB9478:EE_
X-MS-Office365-Filtering-Correlation-Id: 5e71134b-653d-4882-3378-08dbb3690c96
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	T3agvz+1+IqTTKhRxbJFqYshI8+mZw8+ogIpa4i9Fvzvb0u1FPQnjPOgxoUyAljCgpZkxge3U+m1BY5HG0ofxYmdBArqerMMlgQbf90KoqkJ5qAwBh45PNOfsRSkL5mJIJXmJ7kYakmUgu/xKbn3ufHquW+Zs3B5o1jCZSMrg+Q4614LIasVUKZGL1D4KTSQXIBhrVX7iNGJxKnW9IMZmfCzsIf5H+c8oTMqF1Ly1qJTVMDhO9D5gRdu/45zSU5Re7lLdFLFGy4AGD002eAs5z7bPyOLG9Zb1AnZmOnnEu3lLXCw6ansOBdNOUB3YagQsTO8/533uO24EyE7NbGCHgACGDT1XxAgjsQ6mZdUlZYwHJiAuDbTiz2gH/tiSBQ/cjq1V2za2oxOhAVSjZ7i2TZEQJS0BOHg7qRaRYFSB+Fbhj6NqiPNrcL8QpENMHdRHxZRpyAP+8gRucgzRR16QHQlKR+tPOrui3cWiCLmxlY9bmjiXFrMRtYtnr8FHDh55xfPW2eEYCaMNq58SW3w3wgNh2gb2Hwvzg/pvKrHRJc4l1LkYiDtRsdsmIsxtFA3kZFkMMqLVq5a1SpuP9ts/dpjfSzAEPOOCuIiA0c1eROiGcjnHLJN9uQ8edjecLySaaj1rlIzVBvi1PhkSmC87g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(396003)(366004)(136003)(39860400002)(451199024)(186009)(1800799009)(6486002)(6512007)(53546011)(86362001)(26005)(6506007)(38100700002)(4326008)(5660300002)(8676002)(2906002)(2616005)(31696002)(66946007)(41300700001)(36756003)(316002)(8936002)(54906003)(66556008)(6916009)(66476007)(478600001)(966005)(83380400001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cVUvcDQyV3RVd05ndk82NllkTno2SmhXTG14My8zWlU0dlpyQ05UeklLaWl5?=
 =?utf-8?B?aEw2ZkNBaktRSXp5TGxTYTdnRk9TRXJSeTRtT3k2b1VHejhFU0doVGQ4dnhr?=
 =?utf-8?B?SDZlK01CWnQ5MEdlQ0YzR0Q4ckQ5cUs0dVJLVmxreUV2WXpKKzBmZENEUmdt?=
 =?utf-8?B?MStxMGtZUkZIcS9xYmFJMEtRVDZSMUg4eUtDc0RQTHU5bjB4SHhZbXArTWUr?=
 =?utf-8?B?dzAyazVMMExxbmU2R3N3MGxzOFVpYjdDaERTc0x5VGE2TFY4K2ZTakdkNWZL?=
 =?utf-8?B?Z2MvaUNhRHN0dnpNNlMxVElSSUJqSTAvTGlrNkdTbVlQcTZJcDducXJvQTF1?=
 =?utf-8?B?NVdUK0dtZmxLTnhDeUNnMFVFVHJXVHVLUjluNCs5K3BDOTU1Z0xXYnBDWERM?=
 =?utf-8?B?T09NNkNkV05wWW94WjhiSWg3QUhmZCthTFJIU1hiMHpFNmxYSmc0czFHSHBT?=
 =?utf-8?B?cE94bGJ6MitLT2FabVZpT0dIRVljVVAwOHRVMGY1dlJ1REZSTndnZkJ5UUZV?=
 =?utf-8?B?MWJyRXU1b0NpQ0dUOW9wQy9PVEVDSWJmVWZmL3VTMFg0T0xyU3pBQTZVVDVY?=
 =?utf-8?B?c2Y4Wit6Y3ZoU2huNHpJZEZSbmVCeURvQW1YYzlJQTlOUGhCbGtnd0tTZ0xz?=
 =?utf-8?B?M0hURVdkVWFmeHZCRjRyT255dnZEcndPSkF1L09HeVZDWEt0SFFmWjUvL1A5?=
 =?utf-8?B?Z1RFUzRKcjM2RTY3WVdUcyswQzcvSVRibEdDL1B0ZkJ4Q0dmQW1jdEJDdXY4?=
 =?utf-8?B?N3VJS0tqZDZxVFkySXB0YVYxTEpFVkU2RU9sbitYRE13QXdtVFZGQmw2VGRl?=
 =?utf-8?B?MlM5WVo3eFBwNXhwLzVyN0NSOGpFSUUrWmFHd2VrZEFQeUVLeDJYV3hveTV3?=
 =?utf-8?B?aDQ4bzFsTk92Tkp6MkR4L0FYNWpnSyt3Z01kOVZXRlFvbk00Q0QvWHVnU0pR?=
 =?utf-8?B?eEF4cjI4RlUxeUxhckxDK01YS3VtUk9yWEtlTFByK1U0MUxaMmU0b0NicVZU?=
 =?utf-8?B?L1prMUNPNmpVR1h2bW1GVUhkZlc2T1l4ekRuQVVHczdPdlUxSldoMTRmSzdn?=
 =?utf-8?B?Rk1MWkc4RG1hYlhMUzI5NEhnaW5SbDQ3WjZTUEVQTTlhT3NoTGpRY0xzY211?=
 =?utf-8?B?Q3JpSnNOOTY5WkowL0dLVENDZzhxUnJvZjFYdkN1MTBtMUUxeDIzNWJrY1VO?=
 =?utf-8?B?OE1wdHlOYjMyZGl3LzEyeEFJc0ZoS3dFRXRoODRrREVBN2NOajQrcHVnbDRC?=
 =?utf-8?B?a3BOSUNRTE1xblBLZ1h3UUxRaW9JM1FiOHh6ckRLTWpnUnBKa3ZVcXRWWGVL?=
 =?utf-8?B?d1N6L1d4ZElhTit6ZEIxRWdIVDlFTUxTcU9yOUhDSjNZZHI3Y0p3bm5zVFhY?=
 =?utf-8?B?ZnhmQkREd2U0NFpyNnJxai9EcHFobnZmalZxTnFQejY5cVVVd3dxbHhCU2dy?=
 =?utf-8?B?TkxWVzlPVGdyK2JZNS9TVGtCaWxNL3ptS2NFQm4wb1UzSTMyWC93OGtNcTVt?=
 =?utf-8?B?RzJYKy96RGFLWXdkcVNUWEhGYWwzblgwSjk3Q0YrZVViMW01SjRTbHFCV3FH?=
 =?utf-8?B?ZGM2Q1BpdDNHTWdCcFBjN25qVCtBVWhEL0NkMlp1U1dzNjZzcHZSZDVzNlBj?=
 =?utf-8?B?d3V2SzRiTTk4aC8zeHZrRVFneXZoSkVjbFpGemVrQzMrWFBLYzczdThPQU1X?=
 =?utf-8?B?Y3VpS3EzOG1PcDVyMmhqUXlwTXdBK21CUVJaU2c2OTNKakJMQUNLbWRSVVNH?=
 =?utf-8?B?eUdkb2dqeUJHejlDdW5Zb3RINnk0eUw2VXg4UmMwNzhYNThObVpFamUwYUpE?=
 =?utf-8?B?dzdBMzM2SCs2amFKcU9kaTdtb1htVWIwdzc0L3RZdkRyT1hqQ1I4SjVVenFJ?=
 =?utf-8?B?OTdkdlFmVm8rTlMrSTFWZ0pjWEZnUXl2M0YvS1ZDK2VkSEZaSEdKakdnakVP?=
 =?utf-8?B?eWlOdUFJcFl5S0RGMkp5WTdkbUREa29lc0NubjNlUnBBcDQyT2Y2STRLazJN?=
 =?utf-8?B?MjB2b3JVMmk4aFUzTE5JWWk2UmVWSTZ0anQzbUdFNXJGd0hsZitVQ0RudFBS?=
 =?utf-8?B?dy9UN1Z1clMrUUNLaHVMcWNTdE1MdVA3NEhZMy9aZ3J6eFdRNkhicWFYRmpC?=
 =?utf-8?Q?JLDxZss2FxKbU+9lTcLkLqa3q?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5e71134b-653d-4882-3378-08dbb3690c96
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 08:19:56.8766
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 2vlO/D68H2K1scjdmG0Ck+TlTancYqUgQQoVNOwYi6hE+0t6wbvrb/RIYIkiizyOjPqwxhrOFrSCTB4jEkm0TA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9478

On 11.09.2023 19:51, Simon Gaiser wrote:
> Jan Beulich:
>> On 11.09.2023 12:12, Simon Gaiser wrote:
>>> Up to version 6.2 Errata B [2] the ACPI spec only defines
>>> ACPI_MADT_ENABLE as:
>>>
>>>     If zero, this processor is unusable, and the operating system
>>>     support will not attempt to use it.
>>>
>>> The bit that later will be ACPI_MADT_ONLINE_CAPABLE is reserved with
>>> "Must be zero".
>>>
>>> Version 6.3 [3] then adds ACPI_MADT_ONLINE_CAPABLE and changes the
>>> meaning of ACPI_MADT_ENABLE:
>>>
>>>     Enabled
>>>         If this bit is set the processor is ready for use. If this bit
>>>         is clear and the Online Capable bit is set, system hardware
>>>         supports enabling this processor during OS runtime. If this bit
>>>         is clear and the Online Capable bit is also clear, this
>>>         processor is unusable, and OSPM shall ignore the contents of the
>>>         Processor Local APIC Structure.
>>>
>>>     Online Capbable
>>>         The information conveyed by this bit depends on the value of the
>>>         Enabled bit. If the Enabled bit is set, this bit is reserved and
>>>         must be zero. Otherwise, if this this bit is set, system
>>>         hardware supports enabling this processor during OS runtime.
>>>
>>> So with conforming firmwares it should be safe to simply ignore the
>>> entry if !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE
>>>
>>> As a precaution against buggy firmwares this change, like Linux [4],
>>> ignores ACPI_MADT_ONLINE_CAPABLE completely if MADT revision < 5. Note
>>> that the MADT revision was already increased to 5 with spec version 6.2
>>> Errata A [1], so before introducing the online capable flag. But it
>>> wasn't changed for the new flag, so this is the best we can do here.
>>>
>>> For previous discussion see thread [5].
>>>
>>> Link: http://www.uefi.org/sites/default/files/resources/ACPI%206_2_A_Sept29.pdf # [1]
>>> Link: https://uefi.org/sites/default/files/resources/ACPI_6_2_B_final_Jan30.pdf # [2]
>>> Link: https://uefi.org/sites/default/files/resources/ACPI_6_3_May16.pdf # [3]
>>> Link: https://git.kernel.org/torvalds/c/e2869bd7af608c343988429ceb1c2fe99644a01f # [4]
>>> Link: https://lore.kernel.org/xen-devel/80bae614-052e-0f90-cf13-0e5e4ed1a5cd@invisiblethingslab.com/ # [5]
>>> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
>>
>> Just to avoid misunderstandings: This change addresses a comment from
>> Andrew. I does not attempt to address my feedback on the earlier change,
>> which - as indicated - I intend to revert (timeline extended until mid
>> of the week), unless by then my earlier comments are addressed or the
>> suggested possible alternative is carried out.
>>
>> I think it goes without saying that this patch can't sensibly go in
>> until the earlier one was properly settled upon. In particular, in case
>> of reverting aiui this patch won't even apply anymore.
> 
> It textually conflicts with the other patch [6], and obviously was
> triggered by that discussion, but addresses a slightly different aspect.
> The textual conflict is trivial to resolve. I wasn't sure if it also
> conflicts with the concern you raised there, see below.
> 
> The other patch is about ignoring entries with invalid APIC IDs. As the
> discussion there showed the spec isn't very clear on that and there are
> different opinions how they should be handled. Regarding the flags the
> spec is much more concrete although given the response above I assume
> you also interpret "is unusable" of the old version of the
> ACPI_MADT_ENABLE flag as such that Xen should still allocate resources
> for those processors?
> 
> If I understood your main concern with the other patch correctly you
> have seen firmwares that later update those invalid APIC IDs with valid
> ones. Do those firmwares make use of the online capable flag? (Given
> above response probably not)

Being an older ACPI version, they don't.

> If not, then it indeed doesn't address your concern, and I see no way,
> at least by parsing MADT, how to distinguish those cases from firmwares
> that have dummy entries (the motivation for these patches).

Right. And while this _may_ be kind of acceptable when accompanied by a
downgrade of CPU hotplug support status, I haven't seen any patch to this
effect up to now. Without such a downgrade, my review comments would need
addressing, to avoid a perceived regression. Same goes for the tightening
done in the patch here: It _may_ be kind of acceptable, but only under
that same condition.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 08:33:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 08:33:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600100.935685 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfyq6-0003RO-AE; Tue, 12 Sep 2023 08:33:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600100.935685; Tue, 12 Sep 2023 08:33:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfyq6-0003RH-7d; Tue, 12 Sep 2023 08:33:42 +0000
Received: by outflank-mailman (input) for mailman id 600100;
 Tue, 12 Sep 2023 08:33:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfyq4-0003RB-U9
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 08:33:40 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20609.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::609])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 12a607e7-5147-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 10:33:39 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8627.eurprd04.prod.outlook.com (2603:10a6:20b:42a::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Tue, 12 Sep
 2023 08:33:36 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 08:33:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 12a607e7-5147-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lz0QsBbjoVBqGpZql5gpbeNJCKh4dynBAFa3OiQ4XJhGc97xUdrxIfK3jKU/NZ26JGaZm5++5iET8nQ6S6qzfH6idPmxaSL5K4g4SBY97u1wH/AbjKObbMlN5Dr5hwn3Yv9W7crutSYoVUcrLhVGs2dpp3/132wcVvVjaW9/52ts3Kb5aEcNZDpy+IoBo9AE0WRy1KhmCD4ZN5kq1kGYUIaHLwhFkVtAQy5d1AvHiQeV0C8/0YeglicDO7YomOctTHePhtnG3GSvIA3I8jIKeIGjwv0N0nPLIj24wGENmrzJZCptMcb20AxgGV38mDOxN9kndQ5CE6Xj+6IbxME4Pw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UokJTPFJDF8NF2pA7Gm5c1cWeSkZTZ607iT3LpOYlMw=;
 b=NmNABSgyuLC5RpvBMOISRs15+kGyk9KECGGdHJwmSjXY2KHPyNoBGS68/MC1Sw0zNOyTBlI6QeiKpTVRXpB1FIPsLzsBMrcgqzixaL4EVV+UPV84o5oi7HnX0rReceYGAQ9q2g9sRGLP2KZfLINvLbuocMF6r7pc/uY85wm7bargedz+EP1PYT37WwSUzVwxtFjA/bQujx1w99ciEM5LIZ/VaQtVxKUWUyeuUiIiBE+WhZOkyxJsULiOO9+7MSQ2VJIHg7BSg0R69jF1uTZuFxOKK8tLELeRBnGNIRFOH7QLv5cLfPPcUAXyV2biavOSrNgEftL1jr6R0JTBvFsUSg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UokJTPFJDF8NF2pA7Gm5c1cWeSkZTZ607iT3LpOYlMw=;
 b=49oK+RszwcLfu0FcsPvm6ocvGCeOms73DJV+luqD6xlMfuB3vyQZsxUimsjoVBhW6M8w6Z3P8V5jLv6Y/U1MC48qvb+o14PImGw29naNa8Qa66iwna/A0aEGNCy9Bsfc2NUSe44C/FptEwKKkqV7jU+3FE/kPnRDO9PhshIVULBic9IYcuB/RBUZmzvOmNevNVc72NqMR2oiqykW1GLXubCo2qXfs0u+KvSImOGP1G+TrgvcSQn5MjGzKPUe1q1JvI5qyVq3iluWI7Sikxm8AJ+FpHPX/Bg9FCGrXliRIM25TYQUAxD7/kXnu5QwH4begK5WIp/bWB2ESTXDiUJHng==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b08b8f05-afa5-4999-139f-dd7837db12ab@suse.com>
Date: Tue, 12 Sep 2023 10:33:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Simon Gaiser <simon@invisiblethingslab.com>,
 "committers@xenproject.org" <committers@xenproject.org>,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org,
 Thomas Gleixner <tglx@linutronix.de>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
 <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
 <27ae69b6-bc57-dee3-2528-8311a38decda@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <27ae69b6-bc57-dee3-2528-8311a38decda@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0092.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a1::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8627:EE_
X-MS-Office365-Filtering-Correlation-Id: 25ea3dd8-0cad-4b53-2426-08dbb36af4fa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	bs0KT5/Dg+vCEcdI1Y0v4UJcQIZ29ORMAC2pYAMQo7AMCB5HNvzy21j4bwKYQhwxmGxxp9jxk/7FRaB4BcjFO8z6305Z9fTVt3dILMRD0b8/Mu/CznwnGL6dRVV3NnZS0/eh/+BCTaP87pp1222dp1mHjpiW+i4LMPUF8QFzmE58VInsP6cvUHjzFPkz4Jv5hKO52emU75jBDOjbPiKllBjCuf34a1nBCkM0+zvPXTw5tsnYy2X6d5wbjwZS3tWYBCx8Byyi1k0rUyTht6s1A2hgAzP3+Ef94ygbBlcZ6Fe7WUy1BatnGELHeV2xF0Tnt3aROCXw+voE6540bBsUNhmp6yjDmNtySaz22lXGaT3xTtjoT5c+bH0yD+QlAmCwJSHYu6at7JXOVpyKmvGpnc150g1JhUbjQKpl85gVHVbveKQfFjlfBFUgyhT/aj8iEYZDsb4Qh05bn+lmq9aL5lpNk/VKDn0bF8WI31rhFIg5I28rmhG+NSDiPvYoyz/+uDoxODM1m+v6IGfWPFttIPASdjqo1PyGCqcuWm7Fa+M/+gzueowsLDFDw60j6JS3ixXBRxkduzaGNdt+9MfPoTwIx1tUhvyASlgk5DdMHXaVNgr2q8HcfvLzs0JiCVsM3h+7ufWlt1RbkdA0EA0hnw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(396003)(376002)(346002)(366004)(451199024)(186009)(1800799009)(31696002)(66899024)(86362001)(5660300002)(8936002)(8676002)(2906002)(4326008)(36756003)(26005)(53546011)(6512007)(6486002)(6506007)(6666004)(2616005)(478600001)(38100700002)(966005)(31686004)(83380400001)(66556008)(41300700001)(66946007)(66476007)(316002)(6916009)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?czVIMTRQbE1nZHZHMDBBZW1CMFU3MW1xcEJYNXRnRGtKYkZXK05wYk03eVZo?=
 =?utf-8?B?b05zYUZtUmZxbFhpUXZ1c3MzL1ZwSVppWjVTYkNPamRiZ0YxYWpqZkdtbkN3?=
 =?utf-8?B?dCtmd1UrbUVyVUVISTBQQUt6R2t0eGpQOUp5emtxVFoybmMrNmZScm4yYWJ5?=
 =?utf-8?B?WGppcU42dVpTRWNQWlhNYUJ6WEVhcEZ6YWt4OXZtV2lYVGFtLzBxNmY3bHAy?=
 =?utf-8?B?L0FhbUcyYmtsclNjNWR3UmxxNW12cmp5aE0rOU81YUMwdWsxclg4Y3h5NW9j?=
 =?utf-8?B?YnJLeGgvL0t6NDcwbDlYQmRGTS9HTlNQY0FDcy81c3pMdHRtcURUdHc3b0h6?=
 =?utf-8?B?OUNkSHlocW00N1d0ZVlNZldsR2dTQVduSG5xdEkvSEpxUTh0QnhKeTBPdUpV?=
 =?utf-8?B?NmhzNVQzV09sMnlrb2sreCt5SWhJSjlKMmRMZFVtRDU5TnVHSi9pbkI1czM2?=
 =?utf-8?B?d1lKL0pJTXdBVU9qdm1jeGxYbUV1dzB2UjllR3h4NHBtcXMza0RjMDNqYmtY?=
 =?utf-8?B?dzgvTWRIYjlVNkxWODNQU0hndFp5OGRSUjZKNEh1K2hTOUQ4WFUwakIrcnZZ?=
 =?utf-8?B?bkdvZGZmZ1pHdEdEV2RobG5BWkJMc1VhQWZSQU5YUFFUdDRPall4TThVa2NS?=
 =?utf-8?B?M216c3dvQjN4enJIR3YyeGhURit6VTZnZDlNYmRGY1dvZXFQRWMwVERBSGds?=
 =?utf-8?B?OEFxV0QwczNLZ3RON3hQU2pKNUprTWVMMkx1QXdzaGd6YWVqT0x6VStOUU9a?=
 =?utf-8?B?UVJzU2dtRmhGZGw4eXljN2xNTjl5dmNtWkgyaWZuZjRFUEVZanZQQS91WmFW?=
 =?utf-8?B?a2lhY1R6LzJ1aFR5S3FCNG8xTWZjc0Y5VVlvNmlpZ0RzdUdBVTMrOVRrbmUr?=
 =?utf-8?B?K00ybTVHZUVHUjR5ZmtSb2VEUTZ5c01GY3dETXNzbTRFRGpTYTJVWjNLUFAw?=
 =?utf-8?B?QWNzUTYvM0hhOUtQRE9CRU5mR2xKMWduTUlxTXl0Y2dJNEIyV1RhNTBMeHQx?=
 =?utf-8?B?QTNSeE9peitpR3R2NkdvY1I2N0JsOThuRktPc2xzcHpFR1pKSzNHd0V0R3Bk?=
 =?utf-8?B?eFpTU0lndS9SSk4wOXhIYWVvSVZ1aUo5azJDT0ltbUE3a1BONHFUUld1SWln?=
 =?utf-8?B?bVhkeFVMZGd4eEdGS3FteUFBZEZKaHEzZERLaFRJeXhORkRhZ0E4czRveThj?=
 =?utf-8?B?WmVYQlFnNDJlMmdub1FTREliRGxoOE5QMmtSby9aNGFJL3NmblpZNUgrTDFx?=
 =?utf-8?B?RWF4UTNSVGdpeDZ1cW9mRWJjSG9tRnZrdENaaXRlMU9paHNCZUZIdHFoZVlx?=
 =?utf-8?B?V29sbnBBWFRqMC9CZnhMeGdmWVE2dWwzY0lSNWdjRTdPN1RMVDVSWmlsd2dk?=
 =?utf-8?B?ZFVYd1lQTVN4WnR0d3lJbGJuVlJmNE9NaHRhQnh4aEZvVW5oNmJYM1NTcmpo?=
 =?utf-8?B?Z0JaaFdFQ2hndkNHYThBTS9Hem51M2JQTjl0ci92cDJZZUc2VnBBeGYvV1Fz?=
 =?utf-8?B?MXhOZitkZHVIYlRNZlcxTGZQZ1lkYndraGt6YVhQNmRaMW1qellpVjZObHpo?=
 =?utf-8?B?dzVqTUVFZlVBOG1wYlpEdURISkRTNEkxUjZ2TWFKY255Z3B2ZEEwQkJQVmNJ?=
 =?utf-8?B?ZndOeFExL1owNzR1SUJwTVFCM2kwL3Y5SUJ3Mm1kWS9pdUlGMmFOb0Fycm5Z?=
 =?utf-8?B?dHgxQlR3QnIxOUJ6Y0JSU2JMbzFmWnI3ajZHOGhpd0pQQTBiVncvZXcrUWlT?=
 =?utf-8?B?M1lQVlhsZHdrczRydlliV2xYSXpMbko5QmNESnJnMTQ0SFBBL3M1OXQyZHB2?=
 =?utf-8?B?MCtUa3JJdWNtbjJ4NURMRVlzVFp1QmxwTm9hMzN5TXEveTRhcERhMnoxdXgv?=
 =?utf-8?B?Yy9wYlBxb0dTNW1xTmdkNDRyeTdUZU9oa2FsSTZTQ2tmOE1kM01YWFhUc3M3?=
 =?utf-8?B?eUdDRzlnc0FKbEx3VkJxS3dPam9TVStOc2FZbU5wSzVhQzFWbHdvVU5mb0dx?=
 =?utf-8?B?bEJpbWhSUEk3VzhUK1Z2UDNMUHl2ZzM4MlEvZEtETjNEUDlITWVyZnNIMFp5?=
 =?utf-8?B?d3Nka1o4OUUycGp6VGJQaGlrZktxRlR2cDgvZVo2ZkN5bFB5a3ZwaUhJV1h1?=
 =?utf-8?Q?6GTUhPU2dnI3ine3AyKsFzuzi?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 25ea3dd8-0cad-4b53-2426-08dbb36af4fa
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 08:33:36.2330
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9vMoqFcikwJ+Dlclus9pjP8Qzj4vVqOeUjW6zGW0uWJw12lRTfoaAgUOLZRmx5vMukJ0fCf8FpgVFIVZNJtYHQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8627

On 11.09.2023 20:24, Andrew Cooper wrote:
> On 06/09/2023 9:49 pm, Stefano Stabellini wrote:
>> On Fri, 1 Sep 2023, Jan Beulich wrote:
>>> On 07.08.2023 11:38, Simon Gaiser wrote:
>>>> It seems some firmwares put dummy entries in the ACPI MADT table for non
>>>> existing processors. On my NUC11TNHi5 those have the invalid APIC ID
>>>> 0xff. Linux already has code to handle those cases both in
>>>> acpi_parse_lapic [1] as well as in acpi_parse_x2apic [2]. So add the
>>>> same check to Xen.
>>>>
>>>> Note that on some older (2nd gen Core i) laptop of mine I also saw dummy
>>>> entries with a valid APIC ID. Linux would still ignore those because
>>>> they have !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE. But in Xen
>>>> this check is only active for madt_revision >= 5. But since this version
>>>> check seems to be intentionally I leave that alone.
>>>>
>>>> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f3bf1dbe64b62a2058dd1944c00990df203e8e7a # [1]
>>>> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=10daf10ab154e31237a8c07242be3063fb6a9bf4 # [2]
>>>> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
>>> This patch was committed with unaddressed review comments.
> 
> Count the number of x86 maintainer tags on the patch, and see that they
> were given after discussion, not before.
> 
> You're outvoted 2:1 by Xen x86 maintainers alone, and more than 2:1 if
> you include the x86 maintainers from other projects who participated in
> the discussion.

I wasn't aware that ./MAINTAINERS having

4. There must be no "open" objections.

was possible to overrule by any number of acks.

>>>  The normal action
>>> in such a case would be to revert, expecting a v2 to arrive. One alternative
>>> here would be a timely incremental patch submission. Another alternative,
>>> considering in particular Thomas's most recent reply, would be to properly
>>> downgrade CPU hotplug support in SUPPORT.md (with a corresponding entry in
>>> CHANGELOG.md).
>> I am in favor of downgrading physical CPU hotplug support in
>> SUPPORT.md.
> 
> SUPPORT.md does look bogus and wants correcting, but it is laughable to
> claim that this ever worked, let alone that it's supported.
> 
> Intel got half way through specifying ACPI CPU Hotplug, and abandoned it
> as a technology because they couldn't get it to work.  Hence the feature
> has never been tested.
> 
> Furthermore, cursory testing that Thomas did for the Linux topology work
> demonstrates that it is broken anyway for reasons unrelated to ACPI parsing.
> 
> Even furthermore, it's an area of the Xen / dom0 boundary which is
> fundamentally broken for non-PV cases, and undocumented for the PV case,
> hence why it's broken in Linux.
> 
> 
> Physical CPU Hotplug does not pass the bar for being anything more than
> experimental.  It's absolutely not tech-preview level because the only
> demo it has had in an environment (admittedly virtual) which does
> implement the spec in a usable way demonstrates that it doesn't function.
> 
> The fact no-one has noticed until now shows that the feature isn't used,
> which comes back around full circle to the fact that Intel never made it
> work and never shipped it.

And note how I offered a compromise by someone (Simon, you, Roger, or yet
someone else) sending a patch against SUPPORT.md. Yet that hasn't happened.
I therefore continue to be of the opinion that I can rightfully revert the
patch, based on process not having been followed and alternative actions
not having been taken.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 08:36:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 08:36:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600106.935696 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfysc-00043f-NN; Tue, 12 Sep 2023 08:36:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600106.935696; Tue, 12 Sep 2023 08:36:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfysc-00043Y-Kc; Tue, 12 Sep 2023 08:36:18 +0000
Received: by outflank-mailman (input) for mailman id 600106;
 Tue, 12 Sep 2023 08:36:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfysb-00043S-3u
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 08:36:17 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20630.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6fef9c3e-5147-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 10:36:16 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7433.eurprd04.prod.outlook.com (2603:10a6:102:86::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Tue, 12 Sep
 2023 08:36:14 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 08:36:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6fef9c3e-5147-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=b+ZTpXZuQBzvdyxfg4Z4rqsWDzUzgtrqV95A/PLsGyGXSpNm4KGNWhKR9MogN0ojqiOCMY9WK8ZXxYry2WZnTGsYBZannpop/bPhfhCEFdNGecwhGe579vJozBRZZcaniEbFGt5oIFOGyYND/pSeqr7nGYwbpv3crWklVT2+zFpiO7mplE9qsPW1T96KEoiiSk/bUv/Fv4G2kbvoKi8ouMsJKdR32cpk77TKaz/X70a2TZphS6Av53/cbN7tA/CJhdzxdTWDDdn7mg0eBYef4LLVBcimlVrgeIYpFzPiZu1GhK4YNtVlkRteOESGiKJcdX3U/163YxlDd9UtkfDwfA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kmL7Jeg5F6aabbSSkb+chV53w/nKTUTcGVIeaubMQbg=;
 b=NRLQTdUVSui13gF7fBASXsJ1stgEApjxTx96jbND2h9tC42BH6J/gUxBLtunbuCP4lDnOQRk7h6IOUVqPIxk9OxNBWWUElsErGqBzOxiiJ5XB5NAOGYki+H534//5TaZuYb1G6H12o3KABf4Bqh6XgR+GkRnn+PEPlztisl1Yu3UvGiZgVSYEka9l+5OlsxDRusUEIDgD8khuiZPpu+bWX6EiL7JlzhUxNfxFdHMMO9R8FjzoL5V6VI1Soxh77kVcoxJvac4SpTGlikgdsUZqIYtb3t2BxqS9ijVcdJA0WQXbbn+1QCBQk9ZsvSk4ymFw5DW0gkcPTfP+jWgZiDoQQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kmL7Jeg5F6aabbSSkb+chV53w/nKTUTcGVIeaubMQbg=;
 b=xmHfodXZO+lWbiygQuXibeogD7zcGRsdPUnCyValesLWXuHxTgrzF+VWPCDfC7BaKYTx4rnk1CZKZyqSLKL0DqoXQsyIwX1/1AoH7oXdzru7zf7IhY/zRmL5Uwp+ugspJIzgU/+lhuYa1TsNX3iIBXHgDKf1etR8I1SiIZ4n75bDYt3BWNZyNuHpZEm0eOv352ILjnyAJkvbRbg3I36VhZuIbnTHmQdbsJO/28VVm+KYsyGV58uunJc70mirOah7yhN3YkY3ayU/CVIKcgP7N+TZPN8Ob7+s2+wc//KGZjez6pJfm7J8XgjU4FoyBXSItOyM9uBhu/CIkofPFmQq3g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <199d3996-81ee-12b9-91a1-c0152e911b94@suse.com>
Date: Tue, 12 Sep 2023 10:36:12 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Simon Gaiser <simon@invisiblethingslab.com>,
 "committers@xenproject.org" <committers@xenproject.org>,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org,
 Thomas Gleixner <tglx@linutronix.de>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
 <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
 <27ae69b6-bc57-dee3-2528-8311a38decda@citrix.com>
 <b08b8f05-afa5-4999-139f-dd7837db12ab@suse.com>
In-Reply-To: <b08b8f05-afa5-4999-139f-dd7837db12ab@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FRYP281CA0004.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::14)
 To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PR3PR04MB7433:EE_
X-MS-Office365-Filtering-Correlation-Id: d65d59db-d48f-4b3e-25bd-08dbb36b52fa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	p9MJQ2uQ5MuYvKatdkFQy2NrStj+NHvN1s4Ek2vGFDaAdh4e3CEdZWeyn/6nOmn3HXLZbnjtGB+T11H6DLpnpr0BDgK9JE9ryTwszi0DSV92FHZTLYCJfs8DqT1TVcjsS5TcTkQ48ShSg6L11paSb7CMkICdeBtviQigd2uP2jOeCN7lwO3Sz56kiPivy2nc9VgEiLKnZYhZu2O+TH2C6DlRny7chVb+lwuBznkHQtbkhvSsrjmTmT5JiY4z3dLsLTAS3YNaYpO3RiIogYkJEimKnNAwtFcFeGVKhO+Giq3DreZOdpXS9fyIY2HvQW6EVOgFp8ow/Piz0Gdp/SiLJNtaI+Sf6up9CnNvzxXO9WTK9gJntzeegmjtjrrpCrLu1q8iBkbF1sPQZDKQHuUdH5FInvKJ6KlhgyJqzzX3oK24QKC4ocxRDpRLJ74nT9yzyQmNfkq1vHYz5V8e3R/rjDhsZHS44H5q1TMMdVB3v+sFev0h57IP0VnoO8wQ3TSUtd/0v5fIV6GvhL5ZiA9qPtlKPhD6JRVvr4v3PbdgPHin28cyjPzgU2B14il2Gzj1tvbQI0pkCLohjjwGSvTYrA35PRGRvzVPfrNXVOBz0cyEdNyYG1QJXlqJC0DgvLlEzl4XFzszfsFwUf+t5EQv0A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(376002)(396003)(346002)(136003)(451199024)(1800799009)(186009)(66899024)(31686004)(6486002)(53546011)(6506007)(86362001)(36756003)(31696002)(38100700002)(26005)(2616005)(2906002)(4744005)(6512007)(478600001)(5660300002)(4326008)(316002)(8936002)(41300700001)(8676002)(6916009)(66556008)(66946007)(66476007)(54906003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TGMyaDBmUUZHRVdkcVZsSHo0d1g2dmdMdDFLRHNJc3ZVengxRC92b2ducGZU?=
 =?utf-8?B?N2xWcUtQRSs2cC9hV1h4UHIzazNTbVlybG16U3F6Q1hudFBUelNKWFpXck9k?=
 =?utf-8?B?blNJQ0FkR3hYZ3NPWHZESndKajFEUXhuZC85ci9hdnZxaGt1OHFzK29TSG9Z?=
 =?utf-8?B?dHBqcGNIYlUxUXlERlBXdW5RR2NJR1JaNGxGMCtoZ2RIQzVKTnc2U2YzdGdl?=
 =?utf-8?B?WmFmeW1SL2ZMbkNXMWZrb281MTcrcWRTdUcwa2EvdVhMeHFZUzg0V2FoL204?=
 =?utf-8?B?L1pYOFJ3SDYzRlcxN2pJenhTb3pHOGx3YU4ybUN1YUV3ZEtDUER4b0kyQzc2?=
 =?utf-8?B?WGpoRXM1UFB3Ly9yR0hvVEY2cTdXaUpEQ0pxL0lXamxQSEZpUlVMSUVob0ZR?=
 =?utf-8?B?WnBrdTZISEpCeWpCOHRNRThNZGtzRVpnS2pIbkQxT0ZjZVlNV1orNnJQUGRU?=
 =?utf-8?B?TnNzYlFPWUJ1WmJRSjUzRWNQUWZnclFsaFlrWHJMV1U3bzNEdGd4eXJCNHRy?=
 =?utf-8?B?V1NuMm1PaERzS0JvSlMybGJMRkVwODhVWlovSkcvTU9jWnlsam9ZVC9LTFJt?=
 =?utf-8?B?Z3o0dldhOCt2SGFDUjM3UjdzSFYvRWhJem10Y2ZSRzltNldDZFhpZjdmV2l6?=
 =?utf-8?B?T3VmRGZSTDdueDIzY2RtcXVRMGMxRXVGemxid1JrWEJVYmkyYlhxSXQvaVRC?=
 =?utf-8?B?akhaNVdlWkFodUJDSGR0ZUxSdGxEQWxKaC9yWE81WTI1MlBONFk3Z2w3LzNX?=
 =?utf-8?B?cXloRmJmU1JoajR0NVk4dFg3b3ZFL0l0UVV5ZmxqWTFNOWp4Y0N0aHdSV0Rh?=
 =?utf-8?B?WS9oQmJFcW1EM0c0WE9QWUpxRHhuTlJxUFZYSzVqRHA3R1hEOEFLY2g5R01r?=
 =?utf-8?B?ZTFGOFNiSHdSYkVKQUNpZlBIeHRselNmWWZYTW9TU1l1OTlSWmN0a2t3aFNk?=
 =?utf-8?B?MVdyTExxTlZ3NWJUTUMwYWtSQWJNdllCUnF1K0ZDUkFYTFRKZkczS2xvTUln?=
 =?utf-8?B?N3dzRndPdEQyNDMwenV6eVM4bkQydytCcUhYWTlVUkN1ZFVBMTh4aXBJUGUw?=
 =?utf-8?B?ZjFCQVNocjloWkdlWGJjQWdwQWpJaFB4TmRqZnhzblYvLzNIQk8ram5kbnVX?=
 =?utf-8?B?THNDV1diVUU2bXFPOXVGLzBKK3FzM0RlSHR3M0RJendRV0tBeW1NUUlxdzF4?=
 =?utf-8?B?YUthSDhVR09RcHpHbmxrajdCZHovU3hVUHVLK1k0MmtYUTJTTGpUK2ZqQ0ll?=
 =?utf-8?B?TCtFM2V6ekc1cDQ1L24ycG9ldEhKT2VrYS9kc2JGK2hSRGlCQ1NnRkFvaGtL?=
 =?utf-8?B?Y2R3azB4YnFrU0ROc0hZdzdtSHF0U2QvallISW8rTkIxNTdUS2dVcy95TFJB?=
 =?utf-8?B?eUtuc0Y2b1I3VFFrVmRzRGUzV1MxbUI2M3gxYytKVWZrRHJsTmJVTGVYZnBS?=
 =?utf-8?B?LzUzQTVLUG5aaUJCT0c5OUh1bU0xcmt3dDhxd0Jsc1Awc3ZwZWZ3NVdiZzhT?=
 =?utf-8?B?c3RlU0lvQmhTVEN2L0JXWHFNT1dUcW1XWDJzVnRSQUIzaFlHd1ZNNjZpeTJS?=
 =?utf-8?B?TTNvbFROMEtmQUV6aHkxc3FOQkhyd1BXMGJ1Sit5RUZ3U1pWWkZlSWx2d1Nx?=
 =?utf-8?B?QkhqWk9sNUlQK2JFRGJtR0FVMjR4d0hqYXY4MFY2b3FGYm9nd0tTbXVaYWN0?=
 =?utf-8?B?OXVSMjYxc2h0ckg5TWFueEttK0l6WHRadWY2eDd3c2FtQlBRbERMcmtueWQ1?=
 =?utf-8?B?SndNRkJBbWJXUEJaRGJlTXdabnJzSytRajhVR2xWWElIb1RuR2RWTWhpRkJu?=
 =?utf-8?B?L2dmeWtUdGFJZFVxeUg2M0Q4WTNIcXVSc3BqV1VwelpYSTdpOW94bzZIQ1d5?=
 =?utf-8?B?ZG1pTDlscWNJQTl3NmtWU3pIUG5LTVdLZFZoQXR4RVRydHRiOHZxL3FRUUdC?=
 =?utf-8?B?bFdlNG0rdHd5TWcvQjQ4RDBnV1BCMGVMYytiQkFXblZsRzdTSFJUUW52T21O?=
 =?utf-8?B?UUVYU2g5WlBVRi85dTVEVGFsYzlPeXcvRzIwVitkbTMxOTZVZDlMSG43OHEx?=
 =?utf-8?B?OTNPUnNsc0pWUEQ5ZG1GZXdTYk5qcDluMmV6MnNSL0Nhb2Y5Wnd4SzZkMUZK?=
 =?utf-8?Q?eP9KVS7q66QR0uSn9KxLRRIkw?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d65d59db-d48f-4b3e-25bd-08dbb36b52fa
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 08:36:14.0615
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: it/aJBCXsK++2y09CoaJSyW8jbmN1yGSd6FXWARps1NL8BWN5Vp1Xyw6p/R9fqICtyoUvqOazr1SoJIUP3UsJg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7433

On 12.09.2023 10:33, Jan Beulich wrote:
> And note how I offered a compromise by someone (Simon, you, Roger, or yet
> someone else) sending a patch against SUPPORT.md. Yet that hasn't happened.
> I therefore continue to be of the opinion that I can rightfully revert the
> patch, based on process not having been followed and alternative actions
> not having been taken.

Hmm, I now see that Stefano has actually sent such a patch, just not on a
fresh thread. With that acked and committed, the primary reason to revert
will disappear. I'll mention the other aspect in a reply to Simon.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 08:42:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 08:42:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600111.935706 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfyxs-0006Bv-6U; Tue, 12 Sep 2023 08:41:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600111.935706; Tue, 12 Sep 2023 08:41:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfyxs-0006Bo-3G; Tue, 12 Sep 2023 08:41:44 +0000
Received: by outflank-mailman (input) for mailman id 600111;
 Tue, 12 Sep 2023 08:41:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfyxq-0006Bi-KY
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 08:41:42 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2060c.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::60c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 31aa445e-5148-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 10:41:41 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB7055.eurprd04.prod.outlook.com (2603:10a6:800:123::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Tue, 12 Sep
 2023 08:41:39 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 08:41:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 31aa445e-5148-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CY16JQ2XzAj0JaYoK4gB8MCqJthwRsePW1NrOcRTFaHGRHKJM7dY/K3OqGVnlIJ+wUhp3GmTXZe2zNyRybSC3GDedmLaL4Cw1hnw+SzYiVyTdjwkI8Snvxce9DNATOdx4w2ns0eyseid+6iu0Bllbvs9PH00bKIYOp2/+fvHUki2Ekg6/TUe/orXQGvSsOhZnKph0dSCm2nQAjQe3+VAm6KnsaN3Wm4rHORJfmf3d9RjhpDhwjAzke524DXUOTiLzAFrpH2dfq05dF/1guBmb9xZAbC2GC0nrsXx7InMDdN/jCgsaqgL7e9d0Yd4F2bc6GArP72OEUL1JDtkKUHC8A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LBA2HB3LErKFfGJU+4/38H/W44ymcmlhqexfCYDooFY=;
 b=oJ49hmkMcH9wXkarfIZoXYCHaFXAvxtfuI3L65DltbOsmRdZBZ68Zpa1zGRbJjYV6YFaC1QKU8JSlsHrxS8fRCdDHRcDWwoeqKD2K86CfbZPqDLRsZ+XyfvK2mvFh67LuRGqDsvBelYEURf0/iXI+SknlmuiHokLyjaGEVtel8KcB//esVC2D3a7YCZHDblBND0Q0PGVXcaCtWNZGgcOwko0j1DR4pojV9eAajxTc0s3kBTgRErtVcih5BPSv011rWgvkZQtbJGB4A6FNa0HpRdUiVIhqy6+ptX61EMb5Fga6Ivjn0xiusRKk0bXkXkN4fYhhOWqFjiIjiVCOQutAQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LBA2HB3LErKFfGJU+4/38H/W44ymcmlhqexfCYDooFY=;
 b=v4FkiPAtf95BR6OEAH+CSHN/UM5LkaPmLuCnBDKBYwCPlPMzHBhMPeKk51PAFhpkVqGJV339WvkNDmrpbfSAr+th+ve280yd/GHVL9AmCm2YhLhXClgFUb01WwEV6RZbybl2d/S/fzjrJmrC7pgDQ9hZr+0hROlACfhUEhtQ6/dieFg5TPnX6DutM3MpLYGZkAFYH2aKHkVEWPz5o/lRZ328gNmLn12Qqqa7oXzqk/5Oau+DEVOlkwuITE01P3Y/92YDJXB2inyEZDmxpWiKYOZNEIBb9oqleeWClWvMTtF8AWtferpsPu+JmWc3UsigLjUks/GCUdZz2WrjW7MaRw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f780d40e-c828-c57a-b19c-16ee15c1454a@suse.com>
Date: Tue, 12 Sep 2023 10:41:37 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
Content-Language: en-US
To: Simon Gaiser <simon@invisiblethingslab.com>,
 "committers@xenproject.org" <committers@xenproject.org>
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
 <89f112fd-70c6-c191-ea52-e2caa6495ac6@invisiblethingslab.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <89f112fd-70c6-c191-ea52-e2caa6495ac6@invisiblethingslab.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0012.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c8::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB7055:EE_
X-MS-Office365-Filtering-Correlation-Id: 816594ba-44db-470c-e021-08dbb36c14a5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	n2OD5VjnLpyN3YLQ+sfFyS0rr3WhbeDJCD159+X9q0NWmhVNAEwFB2klmf6yFk3Vn/VaPgxG/IrdvgxrQqF/PnWfiqPthwXjkGsSYpPXgBFFKfdvEofXVf3aN83o41CYvCct8SDpjN/lMiP6xMGvoork5Wf9VJe+43lXEUOykrxIm4tuls5pjyv5CfOBdhaw2bHacPxpotNPYUYSZMeJ52ryQ3iO2lTFg21WEbxzkjhbVuBHeBpE7J09JgQNwgal43gKPBZYCVDY1yj3rqfvcDX18OW029B/cqoQL/16Fd9+SnP0/oibpaT4sSPfDDewvQJDyt6G+iuKxnui6w/37CxO0X19WYfouqmWdeTipM+zNtQdJ1iBlJP9F5JccMh4lwQt/cgRAT5w95GxFXyui1/FiXNSHqtZqs5eiZxr+9H2hoslKlDFxl+1sMJlnIANmNSpPHS70g1SCDqYw6RqmcPNqJf4HKealoSo+UyvBPM6y/rnDpqjOllWJyUU0vj2xDFOeJug1rgS0zGDZyuGYbl+LZiPQf4EkWNRl8d9LhYvuBZwUP5dpSsoZKEjjplHqM9461Uq9N1jg8jVBiQVeGd3wwVoJnqyvpnf0W/LJKwd8cuElo3zpod1YmEpozhshpb4e4f8IG4UqqRNa3fTEA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(346002)(376002)(39860400002)(366004)(186009)(451199024)(1800799009)(31686004)(53546011)(6486002)(6506007)(86362001)(38100700002)(31696002)(36756003)(2616005)(2906002)(966005)(6512007)(26005)(478600001)(83380400001)(4326008)(5660300002)(110136005)(316002)(8676002)(8936002)(41300700001)(66476007)(66946007)(66556008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WGJkNU01S1NFcm9MN0pEeFJOZ1V5cjd1R3B2UEwrSko0dVQxeG1FWG9YTDM2?=
 =?utf-8?B?VXlFb2VabFFXV0Q5enVKU0xjWG1oOGhxby94Y1BoZUVWUmFtcEswQVBjVi81?=
 =?utf-8?B?cEh2amx0MERpR2drNnBoWU1vYWRpWHBVKzhydnRBa3hkbU1vNkpxZFVkZ3gr?=
 =?utf-8?B?MisvZjFtay9lZzFraTlIWkVnQk1MWXdod09kUVpueFhsNmZtUGRicnhDWDJT?=
 =?utf-8?B?eW1kY2dhK0x2WnVJSEFYYXM2Vy9XYzJDSzdwTytYdW5EYlcrWUpYcStlbFRk?=
 =?utf-8?B?KzZsSEpIS1Y1aUsyR2RlM1FjRERsOWV3cTcxWHZ1MlBMRWlmNm5NRTdGWW9p?=
 =?utf-8?B?NFA0eWRhbndGMitVcnE5T1dUKzhFNDd1NmVDd2dTS0V5SG5TUEk0cC9ka3hE?=
 =?utf-8?B?Vk54ejc1UCtIZ2VxeWlsbS9TVm0yTm9FWXBzdjVtazNLeTNYZ056YW50UXVZ?=
 =?utf-8?B?SU1QTVBvcHgzS3VEMnhBN0JZUGpUTnlER0dMZWROUHdsYXBlRlh6OWNFaU5E?=
 =?utf-8?B?dkd6ejBnbHoxNFBRR0k3Q3JsWHZvMS8yYVR4cnAyREg5enMvWER1d3FBU25k?=
 =?utf-8?B?VVV5SFpjN01ZSyswSmVIeW5JcmVhWWlUVnVsRUJCWFp0bUZ6UDhuWU5UQzYw?=
 =?utf-8?B?NVA2NWpCNXdiMVFPQlZUYjQrVmtKcFdhODJ5QUlaNlg5YzA3Zm1VRDROTFNr?=
 =?utf-8?B?NDl6RldmS2JYc1d3clU5ZmE0anZZR1lZK2p1NmY0ZUlrQlpITVhWc0Z6RUNV?=
 =?utf-8?B?Mld2M1Z0dW5yUS9BS0FlWFlXWURMYURVUUI5UWhJQnFKV3FScFpqK0FIb0pN?=
 =?utf-8?B?em13MFJPQVF6WmVWNjBSU3FOTnhRSmVMZ0dLSnduT0pGTXVZM3V2eXYxdEp6?=
 =?utf-8?B?ZTVSMGZZelJhM25PWldTbkFmdDdGM1UySzdSdkwwa0JuU0J0eHVJZVl2dlR3?=
 =?utf-8?B?QjRkd0xRZjBZcmJFZC9pMENYbVQzblUrcVcxVVhNWE9vb2FnOEwzckxWNWNz?=
 =?utf-8?B?T0FUMHQ4Qk5mUXJ3c3FmWW1JVGg4WkhiTlpoRzdxVTNpamszdy9qLytGVEoy?=
 =?utf-8?B?cFg3RSswRW5mM1BLWmQ2Qmt6d1JjdnlMSDhpbjFrb1ZlUERrMTRGenFScjlK?=
 =?utf-8?B?dUREcW5POHFKQ2tZK21kSXFZRXlzQjQ4ZUJIUFdnR0hreENvdE1mNi9HdHRq?=
 =?utf-8?B?SVY2R0xnQkhObSs0ZVBRMnl4VzkyWEJvZmFYL1JyMVJLYVRLSG5jb3ZOb0NI?=
 =?utf-8?B?c3ZRSVBzUmxZN2Q0VS92U2d1RDl6ZTJjaTVTdGt3c2tjdGZUNjFsUjF1WFhS?=
 =?utf-8?B?REFHS1hJVC9LSTlnZlFUdHk5cXVrTVpvVHNmRjhGNC96WTl0TG5lK0ViMVho?=
 =?utf-8?B?ZXEwRm14a0tGUU1RdXNqRlB3NlUzc0p0SkxILzhoc0laaXNYYnY4L1VSVis5?=
 =?utf-8?B?TCs5VndYbTViNWZuMWkwOTZOb0pMWENZUnRwS0ZBdlJYa3R4d2xnN1o2bEx3?=
 =?utf-8?B?NTdjUElDeEtKR0pteTlSWWlsVkhlclFxamtOT1BZOHpieTY1aDg4MXBUUWh0?=
 =?utf-8?B?SFBPTStKNlZoSGttSFl6TVcwZmdma2JtL0M1bW1Sblpmdk5tRUlKSzNHTk9U?=
 =?utf-8?B?cUE1SVYxeThkUHQ0N0pRSEtLMnV1MlordU9uZ2IxcFg2MWswcWVTZXp2eTVM?=
 =?utf-8?B?N0hKZjJNeXFrVnFTODJVVGtNMjUzam5aejA4M3hrajRYOUtEaTVQREU4bHgz?=
 =?utf-8?B?NzRrVVFVOTh6eTNkT2Q1ZGRSVEs4NGgrZU5WTVFiSnZXYUcrRjlDQ0hJZlI0?=
 =?utf-8?B?MEI4MHhHOThhbitUY0JWbEFEcjh6TDdFWFptQ1ArRWhMNUJxbEZQWDhLTkF2?=
 =?utf-8?B?NlI1NlNvTU1PSjB4dFdZVk5ia2JGNXdkdzNPLzRhTEU3SmVlV00yemR2c01k?=
 =?utf-8?B?MUx0djA3bEZXa1dOMWxLNUF6cjNWQ3QvbmpTS1J6UWk2OUxZc09rTHhtNmFO?=
 =?utf-8?B?RlN4SXIvb2dDQS9QVXAwMk9zSFBsZGhGalpzMW92MXJGZ3hVa09EOERKUFR5?=
 =?utf-8?B?QW01NFB4cUxrcnRoYlI2K0ZZekR2ZnZIMEZtWmNnRW9zeHA3c0dEYTl0ZG1l?=
 =?utf-8?Q?D+9p3D6wnTWdXn7ZfJpnWc5de?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 816594ba-44db-470c-e021-08dbb36c14a5
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 08:41:38.8764
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: zEfvHSztAh998YCd9sYdWN3E/UH58wHN7ciMSwHYLLYFqrDAjBTtAO7KYw44O/f5Ste+YYAT6HEol3E3tGV1ag==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7055

On 11.09.2023 20:05, Simon Gaiser wrote:
> Jan Beulich:
>> On 07.08.2023 11:38, Simon Gaiser wrote:
>>> It seems some firmwares put dummy entries in the ACPI MADT table for non
>>> existing processors. On my NUC11TNHi5 those have the invalid APIC ID
>>> 0xff. Linux already has code to handle those cases both in
>>> acpi_parse_lapic [1] as well as in acpi_parse_x2apic [2]. So add the
>>> same check to Xen.
>>>
>>> Note that on some older (2nd gen Core i) laptop of mine I also saw dummy
>>> entries with a valid APIC ID. Linux would still ignore those because
>>> they have !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE. But in Xen
>>> this check is only active for madt_revision >= 5. But since this version
>>> check seems to be intentionally I leave that alone.
>>>
>>> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f3bf1dbe64b62a2058dd1944c00990df203e8e7a # [1]
>>> Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=10daf10ab154e31237a8c07242be3063fb6a9bf4 # [2]
>>> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
>>
>> This patch was committed with unaddressed review comments. The normal action
>> in such a case would be to revert, expecting a v2 to arrive. One alternative
>> here would be a timely incremental patch submission. Another alternative,
>> considering in particular Thomas's most recent reply, would be to properly
>> downgrade CPU hotplug support in SUPPORT.md (with a corresponding entry in
>> CHANGELOG.md).
>>
>> I'll give it until the end of next week for either of the alternatives to be
>> carried out. If nothing appears by then, I'll assume I may rightfully revert.
>> (This timeline also allows putting this topic on the Community Call agenda,
>> should anyone think this is necessary.)
> 
> To avoid misunderstandings, since you mentioned the above in your
> response to the related patch I submitted today [3]:
> 
> My understanding is that your main concern is that those entries with
> invalid APIC IDs shouldn't be ignored, since some firmwares later update
> them with valid IDs (on hotplug). This fully conflicts with the
> intention of the patch. Resolving the disagreement that followed is
> outside of my control, as being only the submitter of the patch.

Why would that be outside of your control? Your change broke a feature
officially stated as supported. Now that there is a patch to downgrade
support, that aspect will be resolved as soon as that patch gets ack-ed
and committed.

> You also commented about not logging the ignored entries. Until it's
> clear if the change in general is accepted in the end, I considered it
> pointless to address that detail. If you disagree and want a follow up
> for that, just let me know.

I take a different perspective here: The patch shouldn't have been
committed without this aspect addressed, either verbally or by sending
a v2. I continue to think that an incremental change is warranted to
make sure logging of entries, at least with "cpuinfo" in use, remains
consistent with what we had before. Otherwise debugging of possible
issues becomes yet more difficult.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 08:45:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 08:45:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600119.935717 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfz1r-0006rd-NE; Tue, 12 Sep 2023 08:45:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600119.935717; Tue, 12 Sep 2023 08:45:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfz1r-0006rW-IZ; Tue, 12 Sep 2023 08:45:51 +0000
Received: by outflank-mailman (input) for mailman id 600119;
 Tue, 12 Sep 2023 08:45:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfz1p-0006rQ-Tb
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 08:45:49 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20625.outbound.protection.outlook.com
 [2a01:111:f400:7d00::625])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c55e8e71-5148-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 10:45:48 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBAPR04MB7349.eurprd04.prod.outlook.com (2603:10a6:10:1ab::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Tue, 12 Sep
 2023 08:45:47 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 08:45:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c55e8e71-5148-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Vc39y5ZxBtY0qrgDJIWL2cwN59KSlUo2fR56mg0CXFIQB4jwimtU8ribwcNYZUUSIj1gfbLQGqzVhEJbebY72PZj/GNVyKeW0qcN7F3ak/TroBYpRpw9X5uKAVxzsq8G+2HthQAxjj8G3kCWBD8tr2d+ZC66SxVDm/RdvaIhHmkwcnsUoMKqG99DjDoluw+ekDHR3Id05K2Vf3FQL7Ij/uk5KpqibQxlJr7isETaIR16GKxmm2+WKKiaP/+v8Oeq8ZjShTlLO6ACDPEsnyp8r8upTIsmquhC5HAHSuYMq/CjmjGhCeKvMo6tTSwGL0OPErrGAcNOA9M16wJkXUOZ6A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vWkRdfk+IPrLOBxE49LOH31J+dIxCYNC+1KTgN3kBS0=;
 b=c5kyEiZalSO6mKKpjkOBPJgSjJRkHOzvKSg96KY+N88arDYtxeHOo8zSFUzkLHM1lKUY+4U/SrE5ikTNWymbuvnJdGreH/F1L9plF9UVXh4tlydYApRRMKuV/KMux6NuaUTmYWD0Y70fkWv1SW2GMcoCWrCRsVoTTPxpap5sbcArfTIoJfvPl+P0N9bo6kUb5e4NaoPK/ld0Kly97AKgpIR35wlO7SmqAZwHR6d15VCw0QV5g0IoqvWwWLF0tJmWOlHas93ffRP770mfgVgKgkVC3Kr7zuDRnAHngcPMpDA/msnPPA8lezZMEg3jpLphtjrM0i1PKlAqw1Sp4SSKSw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vWkRdfk+IPrLOBxE49LOH31J+dIxCYNC+1KTgN3kBS0=;
 b=pMPAvG63XArmVO5CAsOaJIjSPdc/DuKbdO/VBGqOnR50owxc+wqb5ve9M7bTEBcb85ZVDqwcng8IZu+6RpPl9EeHIwEhKthcHSn1zvsePzTUk1RxuJcCBdIz9Et/SFmcNzEtTT2Q4zAHmX9sDv6jk7xRucnWeuPQ6WxRxuXtty4eweqmC1hkwNjZlnbXomYJNSUWgNaa47qvCs2WHZ8WyAVebVC0bKsOLZxdUZysQUu8kHrtxvedLPwnkE1lCUPy7mZcsOVBCUS3qajpngU3/h39OTcQsPlruV5+HUs8d0/3MLRpXhOZMilKhDyIRpXcjK2NA3eiWu9Bocyn5OC1ow==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ab57c2c3-f527-fa55-0443-270d784a50e2@suse.com>
Date: Tue, 12 Sep 2023 10:45:45 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: Simon Gaiser <simon@invisiblethingslab.com>
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org,
 "committers@xenproject.org" <committers@xenproject.org>
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
 <89f112fd-70c6-c191-ea52-e2caa6495ac6@invisiblethingslab.com>
 <f780d40e-c828-c57a-b19c-16ee15c1454a@suse.com>
In-Reply-To: <f780d40e-c828-c57a-b19c-16ee15c1454a@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0156.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a2::17) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBAPR04MB7349:EE_
X-MS-Office365-Filtering-Correlation-Id: c2d41a65-d2dc-45e7-3524-08dbb36ca892
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qNnsMJRR8KI8lAjDTnjN2AQDIqkbLA3YUTcz7TGSJbHHRi3bSTW54Qcx4Pgoiaq0AbfG26t46AlyHJfJM3aezs2aLDY0zHCtG7ol1Tvt4TRmMWHPGXsdl+14faP2meTn0CD/kiJMH6s07oyqAYMgtuswTOOxGsmJ4qCx8vemRlzOinCFFGdeFpR5G6vsBTk1amEV2YoTAdp+B0T44BclFriLlUz3bx0fm2ScQZBINO6e3Z6r3ulWfuC0KUSSewv/4br3uhcRQnSe87bGFOrRTqV0ve4+4oYU6bKxW9JdJCjxKJYYePoY7zAg7HpZDZ6bnpEbjcB6uZxUrBd2Zl2zSko0sOVYnKHENN7IcXVP5ciDUjA5zOp3FgQJ/qWL4Nb4A5rMTRXpBKyAP1b9hCaANoU9uXpnX3QiBDHTpaccWdF2nhHxjWsFxa2E0SMMi8XCnuKZw33CzQH10OwA8oXBQrXrrrqI5jfgkDGl1nmgdRxyhsTCtVnsSoN2l6CIC3IGbUBPw1gs8Xx/OYr2Sd3M7iSaKMYYjSwGt4OVDt+bBvjMRwoPxqrBlCZ5+yTncEjZTImUntOiOpT2VY04CEW+KdKSuZh8k2AY45M6BhUcQ8pFjJ8hJ49wLDfT277rOLUgDuf+BNylWWH2ZBsavYxrWA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(136003)(39860400002)(346002)(366004)(186009)(1800799009)(451199024)(53546011)(6506007)(6486002)(6512007)(83380400001)(2906002)(478600001)(66946007)(54906003)(66476007)(6916009)(66556008)(316002)(8676002)(4326008)(41300700001)(5660300002)(2616005)(8936002)(26005)(31696002)(86362001)(36756003)(38100700002)(84970400001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cDFac0dtR3BLWUhVcS9GcEpHR3NKUHJuUUZoMURvdTdGTEVBUmZ3aUx2VlBM?=
 =?utf-8?B?SlA3anJZZUtvWXVYbkl2Q1dIMFBsemthb3UvVEF0VnJHYzBhd3VHU3ltOW1Q?=
 =?utf-8?B?bmxzb1o1SC9RYzZxTFBWR255MHg4Y2k3dmk5QnNWU2U3TWw0MGZ2ZlpZNVpM?=
 =?utf-8?B?R2VmNnJpNjBOeC84OVdnWGFVejhDcFUyK05hL3NZSWdialFVYllxbXBKY0d0?=
 =?utf-8?B?RGptZHlxQXpncmxoQ2g4aEVGdjcxd3A1NCs3anIzSk43cWRlN1REVUhCZGRi?=
 =?utf-8?B?T2QwNWVhQjhhcHNJMFNvMzhSa2JJelpHRVdFT2liR3FaN0I5NmdadjJRZmhD?=
 =?utf-8?B?Tmtub2JNNVR2Q1BETlpFeTVjM2dSTXBsekczQ1pIMktlRmFkSjJ5NVE4UjRK?=
 =?utf-8?B?RENZQUdvUGhEQm13eDAvSWd1SHl4UU9tTGgxNWFBT2dYUlFTRDJLSnVSU3du?=
 =?utf-8?B?TXFlb1Nyck5rM3JNZ1lRanU3TDgxcW1ZdjJCZGN6ZFpjK3ROZEtXNFhPNmJj?=
 =?utf-8?B?MS9ab011WWtCTG4vRk5nK3kwMEFCblA5aTRHcWNFYVl2N2xqRWdGNlBVUTM4?=
 =?utf-8?B?d1QybXJvUDJKLzBlTENMdDBqbGFzL0RvN2h6RWhrblFPK0R0WnNBQzdrRWkr?=
 =?utf-8?B?TDdZM1pWQm9rZUI5eHc0VExyOVpLT21TOWROSkNKY1p3WWlUU1BwdWFLSEhz?=
 =?utf-8?B?SDZDQUlzN1FVcnhiLzdmNGI2YnNockFkWDJUOGVwd2x4U2FOWkw0QzZ2M0xn?=
 =?utf-8?B?T0QzdVZVaC8vK1NnWHFKMnVIdFhpcC95cDNadnJ6eWdlTTZYcXUxN0p2RVNR?=
 =?utf-8?B?YlE1RnVqVWpUQmxWWW1oQWFHTTd6QXBoQjBrS25Na3Nndm5XVEdFMEtkekhN?=
 =?utf-8?B?dXBWcXV1MWlRVE1qZzd0alcrczhJY1NBUU5EUW1rN055a0JoTlBWRDA5UFli?=
 =?utf-8?B?SWNtSUpTbmFwM05ZOCtzeHZrMVBad0FieTI3L3g4MzN5TDdKK2YrMGVJQjR6?=
 =?utf-8?B?THN4cVEzeDhOdlkwUVF6cWNHSFREWnZuZ3JHd2VsVURqcEg1MzhTV0lPM1l2?=
 =?utf-8?B?TEFBdVJPWFdvMjRJTWVORG9XLzNpamc1cjlDR3NkVXRWaDd1cTdWSnJZSUFx?=
 =?utf-8?B?NlkvVmQyZUZIMHBuMW5sZkJEUkxXbndHSFlYY0hWWHBKM1pmS3phd2Y0L1NK?=
 =?utf-8?B?L1VPZnRhdHdaVmFxelMzam9kRUZ4SlhLNU50VE55MTZ6R1FSQlhMTDAzaDFu?=
 =?utf-8?B?dVB6MUI4OWZpQytVaEZzMXgxMWFGRHVOY0YvWkNoZGRxMXZFVzFDUXZaTFVa?=
 =?utf-8?B?cTljZ3VVZHZkNGpqTCtlLzFCME1nL0ZZZWw2ZHpuS2IxTTkvTUVKUTRiY01m?=
 =?utf-8?B?czVtcFFqTlVzcWxaN2FNWHNqWU5NdEFQZmp6K2lsNDJFK3RSMmRteGlQUytC?=
 =?utf-8?B?dFA0dUdGNll1V010ck1UUXVNYXNhTklUMVpsZFYreUNqd0Q3SnJldlJkRjQr?=
 =?utf-8?B?c29zK1ExTnRIc1RtdVlxWTlKZWIyMFZuSGtXTnNURGVPd1ZYQmRZeFVobkVN?=
 =?utf-8?B?RTRMUmlsc0M4N1JkbUpZSW9EMTRNZ2M3bitLT1VmN2VyTnZIdDdsWTFmSThE?=
 =?utf-8?B?NW5QempxSVJJWldXUlBGNGZNYXY0RlhHUkd2b1VGQitUSkJUdmxsajhvNkl3?=
 =?utf-8?B?ZGhDeTZubmZhdGYyaTIvWXN3cXVtU0ZVYm53SmpoWHQ2Y2tXOWMrNm1aLzVn?=
 =?utf-8?B?UlBoVEdTcmxoT0QvRlJ4NEZMMVdDZ1ZIckthelRWUjJUMXFtZHkzbFg1T3Zo?=
 =?utf-8?B?SHJ0dXk4OHBrRHQ5VUZZS1NSQlNYWkdqNzFQcDNHbWs3ZnRKSEpsMkkvZkRk?=
 =?utf-8?B?WFI1cU5EM2M5WXJpREtOWUtURmltTCsxdm9yb1dhb253SmhQek9OYnRPUGJ4?=
 =?utf-8?B?VjB3Nll6Y1pORllUWlNTNitYQU1mZnJFMXpyVkxmRXJOaW11bHRmNVN0WEM0?=
 =?utf-8?B?WVBWcVJ4MEtsbjJlUEg0UmFtLzVtRS9HLzhjUnFUWXdlcm83NmRiRTR5Q2dC?=
 =?utf-8?B?RytPS3BDYmROMEsvKytsdGN0K0NEQzFFTkxVY2Y1T3FncVQ3K1NTN01HWjZ0?=
 =?utf-8?Q?8yyDhFaEetueaZoZNOmhqqAt4?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c2d41a65-d2dc-45e7-3524-08dbb36ca892
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 08:45:47.0464
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tmxeT2Gvybz6+pDIWlcqNj/n8v6Pms9gLQGKf4H7SLBnusqxSWWwuToUIasgEhSdtTwDZVxuuV6AbQv9JkQCDQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7349

On 12.09.2023 10:41, Jan Beulich wrote:
> On 11.09.2023 20:05, Simon Gaiser wrote:
>> You also commented about not logging the ignored entries. Until it's
>> clear if the change in general is accepted in the end, I considered it
>> pointless to address that detail. If you disagree and want a follow up
>> for that, just let me know.
> 
> I take a different perspective here: The patch shouldn't have been
> committed without this aspect addressed, either verbally or by sending
> a v2. I continue to think that an incremental change is warranted to
> make sure logging of entries, at least with "cpuinfo" in use, remains
> consistent with what we had before. Otherwise debugging of possible
> issues becomes yet more difficult.

Oh, and just to add to this: Because of excess verbosity resulting from
such ambiguous MADT entries, for many years I have been carrying a
private patch (reproduced below, just fyi). But since those entries are
still in line with the spec, it didn't seem appropriate to me to
propose this change for upstream inclusion.

Jan

--- unstable.orig/xen/arch/x86/mpparse.c
+++ unstable/xen/arch/x86/mpparse.c
@@ -809,8 +809,13 @@ int mp_register_lapic(u32 id, bool enabl
 	};
 	
 	if (MAX_APICS <= id) {
-		printk(KERN_WARNING "Processor #%d invalid (max %d)\n",
-			id, MAX_APICS);
+		static uint32_t max_warn = -1;
+
+		if (id <= max_warn) {
+			printk(KERN_WARNING "Processor #%d invalid (max %d)\n",
+			       id, MAX_APICS);
+			max_warn = id - 1;
+		}
 		return -EINVAL;
 	}
 




From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:37:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:37:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600130.935732 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzq0-0008Jx-HO; Tue, 12 Sep 2023 09:37:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600130.935732; Tue, 12 Sep 2023 09:37:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzq0-0008Jq-EY; Tue, 12 Sep 2023 09:37:40 +0000
Received: by outflank-mailman (input) for mailman id 600130;
 Tue, 12 Sep 2023 09:37:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfzpz-0008Jk-PU
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:37:39 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2062f.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 01e141d3-5150-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 11:37:36 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9841.eurprd04.prod.outlook.com (2603:10a6:10:4ec::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Tue, 12 Sep
 2023 09:37:34 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 09:37:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 01e141d3-5150-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=R6MLdxT3+izsy+6JNxbjyulRBoRW7mJSFycLI9w9FHxR2ZQE74jVkLgSww2jWpwLz5cxr2hX7KXaXT0BV2P2fczAWazlnXOa7W24b9YyTV9QnxVvJswEF/PgSaEZUUyp1HWIjivvbP4nNlOZgPvVbkwL+GSf2Kbk5AMNfSXxoK/xeCPdI3TRANatEkJDaO3W44KHKXCQ8UpQBHhPE5mLkcUeq9OrP8x9SwJwxBXXyIheElEfa826SQNqrpkXxUxTDRESjLslkyAUE21dzh58gTfrst9fomFfz3sMwd+ZlFaWmxSFE1fa+1r/V2hYsyE4CeBEPLmJtgm8JVPuTsan9Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vSI3v53eU1/YqOJpOLURXahaxJrjt5HtgzTGd1ZERvI=;
 b=b9L1vfnrayVbBeziZncslkHkxqNRirVxt7itMBFth/Q894Q8xT/savwVp4prb/yh+ri3hK+Bm9iL+kuFjI8den7AeRRQZ77PmyJ23J0VypmOotgPfZBL8T5zpuZoY7fA4oswbnWZNB2WSfdP6fWQ2oiRQnhPJ5WHv3qNmQ/Sh3xrYgFUv/ryB4Wl2HyAbro1LKJh9xuleh4pWvxhssFXMRc301I7XiwOgyfhpOaOWUuYhW/nQ8zbAiTrmzEAyUJQOMaxMscqX+FcKSxxQOlSrkfqsr67k0OMj8tK+/1LcEVDYa2DmvtRUW8Lzct1P4Rr3jUJ7nnhteNgKHCrRAKVbQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vSI3v53eU1/YqOJpOLURXahaxJrjt5HtgzTGd1ZERvI=;
 b=3yAxYtu8YTHjL1svI1pN/t3mMoDRIIggVpn1t+pWMcipT4LENmHlKWWrv+EBc9FZ9zh5FTu5Py9N8B2EMAmj7JHUYV2Ep+WmQ3hVzwrVieMN+Fvlb1B5uSzDltZZCZYHDl+pLdm1HlJAC0oynZcyk9xJiesn3eg9IniDjQCZ4JFdddLiv7eEvGp0XbG5JpJ4XCNVkAJWfRqYRxPr+zu+xfOKdq6DcDa7/H8MLPiMOja0no0f0wOdZImU4LXqbBePSX9RJ+XpLWUKQeQb+/Ndt9WpjBMkVUfvWhd+CBUQev78Aamk6ri16XUTR1je08UiFqM+cWSY7HZ1J6vt5xYrJg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <77e2dbc0-c224-4c1e-72a0-5b19aa76ba0b@suse.com>
Date: Tue, 12 Sep 2023 11:37:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v9 04/16] vpci: add hooks for PCI device assign/de-assign
Content-Language: en-US
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-5-volodymyr_babchuk@epam.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230829231912.4091958-5-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0104.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cb::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB9841:EE_
X-MS-Office365-Filtering-Correlation-Id: af6e9681-8dee-44ab-7453-08dbb373e454
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	sonPpDQnpq6YRL/kTNpXvQGlimKIvIGj1a4yP/MAfsIVQCMZAy/n8hq7TW8jQ0TelJ3tb/lxo0le3XRGUPkpv2DvFPdjQ7Kdx/iEyW6pDl7ZzpTirHED3GyHjInMuoZoiMOnbQvAL9H4FYjq/0o5LR9cHcKSKxi6AHYD7PHOF4zoTbF8/aysYX4/lp5gUW4WiVcU6otJUFVTcgdV+m0MYYRLxuHQFo7QBjZFS2Q/9vpkf65CtrYUFjanmCYZBjxa1LQqJ9j5pACuemXaBzifutgFOsw/GZtLFJk5ov5CKxe+BtuSH2RZTwyMImQgPP82CgzNxPB57wTUYROC4lYTfyTewdgpDTxhuP+egldJ8MAvYOJzciQxV/96UA4cqOmbV30Efb2CwmT22Y9WXev2xrj2xmax4fN0R5C/ZZQiFI1oDA+lJvMDFtFl5DnVWvCaoLG8B2cGtG+xYAUZnPKL2XSTX2nYMpRRelTDOSM4cqB26Fr+XjLqBAlImq2+elTgtjCCy8H+v0Hf24M3B10aek+wF+Cp+lQ/Iba38todEWJh04D9QBl3iOKCNDTzRxdLomC2wawZkUB7bpic/pKNxHT/EDB7VijP+6Uh+rpZ/PIlpHG1VCWJOcYBqL3aE8iC4obNkYzsZT/lIeoZXUND5g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(376002)(396003)(366004)(346002)(186009)(451199024)(1800799009)(316002)(6916009)(66556008)(66476007)(54906003)(41300700001)(66946007)(478600001)(38100700002)(7416002)(4744005)(86362001)(36756003)(31696002)(2906002)(5660300002)(4326008)(8676002)(8936002)(31686004)(26005)(2616005)(83380400001)(6486002)(6506007)(53546011)(6512007)(6666004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?V0l1L1VkNnBoc2hFNjBjdDR3RzZCclRFaGIva1d6b3JVaHpkU3ovZjVDbjE4?=
 =?utf-8?B?S2dXdFZqQnZrblpIQlUxUktpRHdxMUY2ZXFOYSs0YzhaaDU3RmdJeWRjUEpk?=
 =?utf-8?B?REF1U3Uzd0R6aWs1ZHRYcXhPWUkzREkvVWJxT3gxSXB5T3dYOTJKUFluNUdn?=
 =?utf-8?B?akdrMmNRU1VhamtKNTRtUUVVT281VEd1dDBmRzJoRlYwdVlXbElBajNrbjhI?=
 =?utf-8?B?LzB5Wmc3MUErb1NsYnpxdiszT1JnWUQxVGd2TzJsY2x6SUtnOE16MUlTcGQ3?=
 =?utf-8?B?dzRjYWN5eEFGeXAvVk94dnFyZHNyUVFQWjgzWk01NXgreWpMN3lTMEdSODJj?=
 =?utf-8?B?eEl1aEtHWGFLN2dFQk1XMDlvdEFzZkpMVzJqMVpBZklSWWVmNGNZN3czRGZa?=
 =?utf-8?B?V3hFZVVuMXJ6UHdNSjAreU4vY3I1RldJU2hTbjkwOHh5Vyt0RGpCRGFPM2I3?=
 =?utf-8?B?STV5QWZPQ2xiUlhjWGh2eHhJanZMZDFZM3hPZnEvNFM4cFg4Z2VDa3RGcUhl?=
 =?utf-8?B?R0ZWazNzM0pvOUxOYlRqNUgwRmtKMGVmdW54aGRDeW90eldjWmNSbFFvUVBh?=
 =?utf-8?B?cEErcEZleSttbGl6NDd6ZVJ6M25uWGFBZSs1VmFtZ1ZvUE5wTnJ5QWlaNDY1?=
 =?utf-8?B?azluLzNoaWEzeXQrUHM5Z0Q3dGlxbkNOWitNVmg3WWtnYzFOb3JGQW50aU85?=
 =?utf-8?B?MVppSEt4d3BzMVhhV09JS3NCbllHTzBpQnhhbys2cU42UGNmZFhac1k5aUox?=
 =?utf-8?B?S0F4VEFoREZMSHdmMzVNeWVzaDVvM3ZySjRnSjhReXhnQzQyQkxDdzMzTVFy?=
 =?utf-8?B?YVVIZm1XY0JBcWxnWmlSTGUzQ3c0MmN4VXBpaGlaTG02aEdwR0NFbmlOUzhK?=
 =?utf-8?B?bmRwMWZ4UUplaWMrdzZBd2s1RWJMb1JNVlFPWGZUTXR4Q2dnMzY0eUhTdzA2?=
 =?utf-8?B?b3lFQnBzbTZVZ1dMcG1rM0xLNDdsQmpGTkRvQjF0bndFcFlTR2JaQWFQR2Iw?=
 =?utf-8?B?bGQvQjVaY1FsSUVLNnRqSGUzbWVzM1c1K3NDT0pBTGxqOVFva3JXUG9sY3JT?=
 =?utf-8?B?bWlySWQ2RlN3cTU3Rmp0UTZQSkMzeUh1YVExY2l4MGh2VFE2dThWdituQWl1?=
 =?utf-8?B?WHdiNTVGbHI2Uk9QdElEME9mcHg0ZS9kekZIOVVKUU1CLzd0VDNGeUZia1c4?=
 =?utf-8?B?VS9YMXJ6SHBDQTY0ZlBhVlNEdUFYd2luMG01UHJiNDhSbGFSQkRLYVdFNUV3?=
 =?utf-8?B?ZGNEbEFzQTVaNSt2alh6dnFxcERhV3hWR3Q4SVU3NFg5MDh0S3pNbFpZMnQw?=
 =?utf-8?B?RmpsaHBmSDk5TXQ5Z3grQmdXQnNmZEk2MExEM1FwczBwNkZESmpxczN6ancz?=
 =?utf-8?B?bUUyZkVKYVJzUnhrdVdMM3cxclhJaWlkQTFuZklTVDFab1MvWEZNTEJpb3lq?=
 =?utf-8?B?NjJOSytQME1BaXluWERST1N4MG1LTE5vOWYrUC9KaWtFMzVjcVh1QTdoSDF6?=
 =?utf-8?B?L2ZiK25lVTNFOHJpbzR5eXl1SWZRRGFWcHRVWGFQblFpQWk4VEEwUGh4YUxK?=
 =?utf-8?B?ZGJxY0cySGhULzBsSklBaG5XZ1d3Y1NWR1dYcEhRRTBoN1dKdHpjdnNoQzF0?=
 =?utf-8?B?bWVOdS9SOEhnVEFVUUVnbk95em56U1g5WmNHRGFWR3hobnByZExpWFJCQW1C?=
 =?utf-8?B?MzRybWRhaGtWV3FObHR3MHp3U051R1JrckhaNjJ5SllTYXE5R1NxaFNxTWh3?=
 =?utf-8?B?bkdXaHVvbTFhb1ZoRUk0cVA0cnhEcUxRNGhualJvQmdIb1EzSCtSczRiY1pE?=
 =?utf-8?B?VnZ2d0l3L20rMGhFRDZNWTVGZEFWeDd2enFycGtmNnFxUUwvRVVWeW9SSnZP?=
 =?utf-8?B?bWhURzFvL0JzYjFUOHlTYmpFUWpJeGJaTGJHbm1Ib2ZCM3NyajM1QjRJbG1q?=
 =?utf-8?B?cEN3MTVJSnRaNDlRNzQxd3h6bEIvRVh6d2plcHJxUlVidXk0bEsyS1R1MGlM?=
 =?utf-8?B?MFo0UzAvRjRVY1g2RVFZbmVhZ0xCV3BzeTNIWFhvU25JSzJtNjdGaHR0NTlo?=
 =?utf-8?B?Mkt4ODc3Q3NzYnYreFIxYzNsQVFyN3hNUUdSWHU2OFNmUnRGM2lUcGxjN1dG?=
 =?utf-8?Q?d0MKantvdq52uon7NxJDc+jlz?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: af6e9681-8dee-44ab-7453-08dbb373e454
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 09:37:33.8124
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: QLVTOSkwcxhT507lR7abEMUiFQ5NXNMFtCvnLT/8n0GyqEouyJLrkUfpudvfSuvTw3kNhSN+h19acQ2jwZpdFg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9841

On 30.08.2023 01:19, Volodymyr Babchuk wrote:
> @@ -1481,6 +1488,13 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
>      if ( pdev->broken && d != hardware_domain && d != dom_io )
>          goto done;
>  
> +    if ( IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) )
> +    {
> +        write_lock(&pdev->domain->pci_lock);
> +        vpci_deassign_device(pdev);
> +        write_unlock(&pdev->domain->pci_lock);
> +    }

Why is the DomIO special case ...

> @@ -1506,6 +1520,15 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
>          rc = iommu_call(hd->platform_ops, assign_device, d, devfn,
>                          pci_to_dev(pdev), flag);
>      }
> +    if ( rc )
> +        goto done;
> +
> +    if ( IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) && d != dom_io)
> +    {
> +        write_lock(&d->pci_lock);
> +        rc = vpci_assign_device(pdev);
> +        write_unlock(&d->pci_lock);
> +    }

... relevant only here?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:38:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:38:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600134.935741 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzqb-0000S8-PM; Tue, 12 Sep 2023 09:38:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600134.935741; Tue, 12 Sep 2023 09:38:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzqb-0000S1-Mk; Tue, 12 Sep 2023 09:38:17 +0000
Received: by outflank-mailman (input) for mailman id 600134;
 Tue, 12 Sep 2023 09:38:16 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qfzqa-0008Jk-He
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:38:16 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 188c1259-5150-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 11:38:14 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 82A4F4EE0743;
 Tue, 12 Sep 2023 11:38:13 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 188c1259-5150-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive 4.10
Date: Tue, 12 Sep 2023 11:36:46 +0200
Message-Id: <cover.1694510856.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add or move inclusion guards to address violations of
MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
to prevent the contents of a header file being included more than
once").

Inclusion guards must appear at the beginning of the headers
(comments are permitted anywhere) and the #if directive cannot
be used for other checks.

Simone Ballarin (10):
  misra: add deviation for headers that explicitly avoid guards
  misra: modify deviations for empty and generated headers
  misra: add deviations for direct inclusion guards
  xen/arm: address violations of MISRA C:2012 Directive 4.10
  xen/x86: address violations of MISRA C:2012 Directive 4.10
  x86/EFI: address violations of MISRA C:2012 Directive 4.10
  xen/common: address violations of MISRA C:2012 Directive 4.10
  xen/efi: address violations of MISRA C:2012 Directive 4.10
  xen: address violations of MISRA C:2012 Directive 4.10
  x86/asm: address violations of MISRA C:2012 Directive 4.10

 .../eclair_analysis/ECLAIR/deviations.ecl     |  7 ----
 docs/misra/safe.json                          | 32 +++++++++++++++++++
 xen/arch/arm/efi/efi-boot.h                   |  6 ++++
 xen/arch/arm/efi/runtime.h                    |  1 +
 xen/arch/arm/include/asm/hypercall.h          |  1 +
 xen/arch/x86/Makefile                         |  8 ++---
 xen/arch/x86/cpu/cpu.h                        |  5 +++
 xen/arch/x86/efi/runtime.h                    |  5 +++
 xen/arch/x86/include/asm/compat.h             |  5 +++
 xen/arch/x86/include/asm/cpufeatures.h        |  5 +--
 xen/arch/x86/include/asm/efibind.h            |  5 +++
 xen/arch/x86/include/asm/hypercall.h          |  1 +
 xen/arch/x86/x86_64/mmconfig.h                |  5 +++
 xen/arch/x86/x86_emulate/private.h            |  5 +++
 xen/common/decompress.h                       |  5 +++
 xen/common/efi/efi.h                          |  5 +++
 xen/common/event_channel.h                    |  5 +++
 xen/include/Makefile                          | 10 ++++--
 xen/include/public/arch-x86/cpufeatureset.h   |  1 +
 xen/include/public/errno.h                    |  1 +
 xen/include/xen/err.h                         |  4 ++-
 xen/include/xen/pci_ids.h                     |  5 +++
 xen/include/xen/softirq.h                     |  4 ++-
 xen/include/xen/unaligned.h                   |  1 +
 xen/include/xen/vmap.h                        |  4 ++-
 25 files changed, 115 insertions(+), 21 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:38:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:38:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600135.935752 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzql-0000mQ-0F; Tue, 12 Sep 2023 09:38:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600135.935752; Tue, 12 Sep 2023 09:38:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzqk-0000mJ-TS; Tue, 12 Sep 2023 09:38:26 +0000
Received: by outflank-mailman (input) for mailman id 600135;
 Tue, 12 Sep 2023 09:38:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qfzqk-0000lh-4f
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:38:26 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1e561451-5150-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 11:38:24 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id CB11A4EE0745;
 Tue, 12 Sep 2023 11:38:23 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1e561451-5150-11ee-8786-cb3800f73035
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [XEN PATCH v2 01/10] misra: add deviation for headers that explicitly avoid guards
Date: Tue, 12 Sep 2023 11:36:47 +0200
Message-Id: <e78d0868a635fe9fba851bb8c2cfc80ba6d73491.1694510856.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694510856.git.simone.ballarin@bugseng.com>
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Some headers, under specific circumstances (documented in a comment at
the beginning of the file), explicitly avoid inclusion guards: the caller
is responsible for including them correctly.

These files are not supposed to comply with Directive 4.10:
"Precautions shall be taken in order to prevent the contents of a header
file being included more than once"

This patch adds deviation cooments for headers that avoid guards.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

---
Changes in v2:
- use the format introduced with doc/misra/safe.json instead of
  a generic text-based deviation
---
 docs/misra/safe.json                        | 8 ++++++++
 xen/include/public/arch-x86/cpufeatureset.h | 1 +
 xen/include/public/errno.h                  | 1 +
 3 files changed, 10 insertions(+)

diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index 39c5c056c7..db438c9770 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -20,6 +20,14 @@
         },
         {
             "id": "SAF-2-safe",
+            "analyser": {
+                "eclair": "MC3R1.D4.10"
+            },
+            "name": "Dir 4.10: headers that leave it up to the caller to include them correctly",
+            "text": "Headers that deliberatively avoid inclusion guards explicitly leaving responsibility to the caller are allowed."
+        },
+        {
+            "id": "SAF-3-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
index 6b6ce2745c..eac1ae4b2a 100644
--- a/xen/include/public/arch-x86/cpufeatureset.h
+++ b/xen/include/public/arch-x86/cpufeatureset.h
@@ -23,6 +23,7 @@
  * their XEN_CPUFEATURE() being appropriate in the included context.
  */
 
+/* SAF-1-safe header that leaves it up to the caller to include them correctly */
 #ifndef XEN_CPUFEATURE
 
 /*
diff --git a/xen/include/public/errno.h b/xen/include/public/errno.h
index 5a78a7607c..8b60ac74ae 100644
--- a/xen/include/public/errno.h
+++ b/xen/include/public/errno.h
@@ -17,6 +17,7 @@
  * will unilaterally #undef XEN_ERRNO().
  */
 
+/* SAF-1-safe header that leaves it up to the caller to include them correctly */
 #ifndef XEN_ERRNO
 
 /*
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:38:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:38:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600143.935762 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzqx-0001J8-Cu; Tue, 12 Sep 2023 09:38:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600143.935762; Tue, 12 Sep 2023 09:38:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzqx-0001J1-8w; Tue, 12 Sep 2023 09:38:39 +0000
Received: by outflank-mailman (input) for mailman id 600143;
 Tue, 12 Sep 2023 09:38:38 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qfzqw-0008Jk-3J
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:38:38 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 24d5358b-5150-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 11:38:35 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id A41494EE0743;
 Tue, 12 Sep 2023 11:38:34 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 24d5358b-5150-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN PATCH v2 02/10] misra: modify deviations for empty and generated headers
Date: Tue, 12 Sep 2023 11:36:48 +0200
Message-Id: <6da900e1692ac1c1fff554da53dfbbeb1e42ad07.1694510856.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694510856.git.simone.ballarin@bugseng.com>
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This patch modifies deviations for Directive 4.10:
"Precautions shall be taken in order to prevent the contents of
a header file being included more than once"

This patch avoids the file-based deviation for empty headers, and
replaces it with a comment-based one using the format specified in
docs/misra/safe.json.

Generated headers are not generally safe against multi-inclusions,
whether a header is safe depends on the nature of the generated code
in the header. For that reason, this patch drops the deviation for
generated headers.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

---
Changes in v2:
- use the format introduced with doc/misra/safe.json instead of
  a file-based deviation for empty headers
- remove deviation for generated headers
---
 automation/eclair_analysis/ECLAIR/deviations.ecl | 7 -------
 docs/misra/safe.json                             | 8 ++++++++
 xen/arch/arm/efi/runtime.h                       | 1 +
 xen/include/Makefile                             | 2 +-
 4 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
index d8170106b4..9313027af1 100644
--- a/automation/eclair_analysis/ECLAIR/deviations.ecl
+++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
@@ -78,13 +78,6 @@ inline functions."
 -config=MC3R1.D4.9,macros+={deliberate, "loc(file(api:public))"}
 -doc_end
 
--doc_begin="This header file is autogenerated or empty, therefore it poses no
-risk if included more than once."
--file_tag+={empty_header, "^xen/arch/arm/efi/runtime\\.h$"}
--file_tag+={autogen_headers, "^xen/include/xen/compile\\.h$||^xen/include/generated/autoconf.h$||^xen/include/xen/hypercall-defs.h$"}
--config=MC3R1.D4.10,reports+={safe, "all_area(all_loc(file(empty_header||autogen_headers)))"}
--doc_end
-
 -doc_begin="Files that are intended to be included more than once do not need to
 conform to the directive."
 -config=MC3R1.D4.10,reports+={safe, "first_area(text(^/\\* This file is legitimately included multiple times\\. \\*/$, begin-4))"}
diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index db438c9770..e8e200cb0a 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -28,6 +28,14 @@
         },
         {
             "id": "SAF-3-safe",
+            "analyser": {
+                "eclair": "MC3R1.D4.10"
+            },
+            "name": "Dir 4.10: empty headers",
+            "text": "Empty headers pose no risk if included more than once."
+        },
+        {
+            "id": "SAF-4-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/arch/arm/efi/runtime.h b/xen/arch/arm/efi/runtime.h
index 25afcebed1..5e35184ff4 100644
--- a/xen/arch/arm/efi/runtime.h
+++ b/xen/arch/arm/efi/runtime.h
@@ -1 +1,2 @@
+/* SAF-2-safe empty header */
 /* Placeholder for ARM-specific runtime include/declarations */
diff --git a/xen/include/Makefile b/xen/include/Makefile
index 2e61b50139..31782fb177 100644
--- a/xen/include/Makefile
+++ b/xen/include/Makefile
@@ -53,7 +53,7 @@ cmd_compat_h = \
     mv -f $@.new $@
 
 quiet_cmd_stub_h = GEN     $@
-cmd_stub_h = echo '/* empty */' >$@
+cmd_stub_h = echo '/* SAF-2-safe empty header */' >$@
 
 quiet_cmd_compat_i = CPP     $@
 cmd_compat_i = $(CPP) $(filter-out -Wa$(comma)% -include %/include/xen/config.h,$(XEN_CFLAGS)) $(cppflags-y) -o $@ $<
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:38:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:38:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600148.935772 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzrA-0001vj-Ke; Tue, 12 Sep 2023 09:38:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600148.935772; Tue, 12 Sep 2023 09:38:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzrA-0001vY-H7; Tue, 12 Sep 2023 09:38:52 +0000
Received: by outflank-mailman (input) for mailman id 600148;
 Tue, 12 Sep 2023 09:38:51 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qfzr9-0000lh-TL
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:38:51 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2e69508d-5150-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 11:38:51 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id D4F9B4EE0746;
 Tue, 12 Sep 2023 11:38:50 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2e69508d-5150-11ee-8786-cb3800f73035
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v2 06/10] x86/EFI: address violations of MISRA C:2012 Directive 4.10
Date: Tue, 12 Sep 2023 11:36:52 +0200
Message-Id: <eced0ebcd8f96d87ccab0e4008e0f752121273de.1694510856.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694510856.git.simone.ballarin@bugseng.com>
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add inclusion guard to address violations of
MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
to prevent the contents of a header file being included more than
once").

Mechanical change.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

---
Changes in v2:
- remove changes in "xen/arch/x86/efi/efi-boot.h"

Note:
Changes in efi-boot.h have been removed since the file is
intenteded to be included by common/efi/boot.c only. This motivation
is not enough to raise a deviation record, so the violation is
still present.
---
 xen/arch/x86/efi/runtime.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/xen/arch/x86/efi/runtime.h b/xen/arch/x86/efi/runtime.h
index 77866c5f21..10b36bcb89 100644
--- a/xen/arch/x86/efi/runtime.h
+++ b/xen/arch/x86/efi/runtime.h
@@ -1,3 +1,6 @@
+#ifndef __X86_EFI_RUNTIME_H__
+#define __X86_EFI_RUNTIME_H__
+
 #include <xen/domain_page.h>
 #include <xen/mm.h>
 #include <asm/atomic.h>
@@ -17,3 +20,5 @@ void efi_update_l4_pgtable(unsigned int l4idx, l4_pgentry_t l4e)
     }
 }
 #endif
+
+#endif /* __X86_EFI_RUNTIME_H__ */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:38:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:38:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600151.935782 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzrD-0002IJ-Sh; Tue, 12 Sep 2023 09:38:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600151.935782; Tue, 12 Sep 2023 09:38:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzrD-0002IC-Ou; Tue, 12 Sep 2023 09:38:55 +0000
Received: by outflank-mailman (input) for mailman id 600151;
 Tue, 12 Sep 2023 09:38:54 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qfzrC-0000lh-Nm
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:38:54 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3017714e-5150-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 11:38:54 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id A13AF4EE0743;
 Tue, 12 Sep 2023 11:38:53 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3017714e-5150-11ee-8786-cb3800f73035
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v2 07/10] xen/common: address violations of MISRA C:2012 Directive 4.10
Date: Tue, 12 Sep 2023 11:36:53 +0200
Message-Id: <580f202ce2b07a91b496f34dc4b300d8fb23dbc8.1694510856.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694510856.git.simone.ballarin@bugseng.com>
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add inclusion guards to address violations of
MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
to prevent the contents of a header file being included more than
once").

Mechanical change.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

---
Changes in v2:
- drop changes in C files
---
 xen/common/decompress.h    | 5 +++++
 xen/common/event_channel.h | 5 +++++
 2 files changed, 10 insertions(+)

diff --git a/xen/common/decompress.h b/xen/common/decompress.h
index e8195b353a..da3c3abb6a 100644
--- a/xen/common/decompress.h
+++ b/xen/common/decompress.h
@@ -1,3 +1,6 @@
+#ifndef __COMMON_DECOMPRESS_H__
+#define __COMMON_DECOMPRESS_H__
+
 #ifdef __XEN__
 
 #include <xen/cache.h>
@@ -23,3 +26,5 @@
 #define large_free free
 
 #endif
+
+#endif /* __COMMON_DECOMPRESS_H__ */
diff --git a/xen/common/event_channel.h b/xen/common/event_channel.h
index 45219ca67c..040bad77f9 100644
--- a/xen/common/event_channel.h
+++ b/xen/common/event_channel.h
@@ -1,5 +1,8 @@
 /* Event channel handling private header. */
 
+#ifndef __COMMON_EVENT_CHANNEL_H__
+#define __COMMON_EVENT_CHANNEL_H__
+
 #include <xen/event.h>
 
 static inline unsigned int max_evtchns(const struct domain *d)
@@ -52,6 +55,8 @@ int evtchn_fifo_init_control(struct evtchn_init_control *init_control);
 int evtchn_fifo_expand_array(const struct evtchn_expand_array *expand_array);
 void evtchn_fifo_destroy(struct domain *d);
 
+#endif /* __COMMON_EVENT_CHANNEL_H__ */
+
 /*
  * Local variables:
  * mode: C
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:39:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:39:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600161.935791 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzrX-000383-3D; Tue, 12 Sep 2023 09:39:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600161.935791; Tue, 12 Sep 2023 09:39:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzrX-00037w-0Y; Tue, 12 Sep 2023 09:39:15 +0000
Received: by outflank-mailman (input) for mailman id 600161;
 Tue, 12 Sep 2023 09:39:14 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qfzrW-0000lh-56
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:39:14 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3413f20a-5150-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 11:39:01 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 786624EE0743;
 Tue, 12 Sep 2023 11:39:00 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3413f20a-5150-11ee-8786-cb3800f73035
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>
Subject: [XEN PATCH v2 08/10] xen/efi: address violations of MISRA C:2012 Directive 4.10
Date: Tue, 12 Sep 2023 11:36:54 +0200
Message-Id: <5585708f62883ada3e7900c45a2c97dbcf927294.1694510856.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694510856.git.simone.ballarin@bugseng.com>
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add inclusion guards to address violations of
MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
to prevent the contents of a header file being included more than
once").

Mechanical change.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

---
Changes in v2:
- drop changes in C files
---
 xen/common/efi/efi.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/xen/common/efi/efi.h b/xen/common/efi/efi.h
index c02fbb7b69..cef9381d30 100644
--- a/xen/common/efi/efi.h
+++ b/xen/common/efi/efi.h
@@ -1,3 +1,6 @@
+#ifndef __COMMON_EFI_EFI_H__
+#define __COMMON_EFI_EFI_H__
+
 #include <asm/efibind.h>
 #include <efi/efidef.h>
 #include <efi/efierr.h>
@@ -51,3 +54,5 @@ void free_ebmalloc_unused_mem(void);
 
 const void *pe_find_section(const void *image, const UINTN image_size,
                             const CHAR16 *section_name, UINTN *size_out);
+
+#endif /* __COMMON_EFI_EFI_H__ */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:46:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:46:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600169.935801 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzyK-0004w0-Qb; Tue, 12 Sep 2023 09:46:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600169.935801; Tue, 12 Sep 2023 09:46:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzyK-0004vt-O5; Tue, 12 Sep 2023 09:46:16 +0000
Received: by outflank-mailman (input) for mailman id 600169;
 Tue, 12 Sep 2023 09:46:15 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qfzr9-0008Jk-An
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:38:51 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2bf45b43-5150-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 11:38:47 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id C44A24EE0743;
 Tue, 12 Sep 2023 11:38:46 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2bf45b43-5150-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [XEN PATCH v2 04/10] xen/arm: address violations of MISRA C:2012 Directive 4.10
Date: Tue, 12 Sep 2023 11:36:50 +0200
Message-Id: <e58d82c2a2c77c7451ae9bc70b093f2c5575d83f.1694510856.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694510856.git.simone.ballarin@bugseng.com>
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add inclusion guard to address violations of
MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
to prevent the contents of a header file being included more than
once").

Mechanical change.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

---
Changes in v2:
- drop changes in xen/arch/arm/include/asm/hypercall.h
- drop changes in xen/arch/arm/include/asm/iocap.h since they are
  not related with the directive
---
 xen/arch/arm/efi/efi-boot.h | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/xen/arch/arm/efi/efi-boot.h b/xen/arch/arm/efi/efi-boot.h
index 1c3640bb65..aaa468f186 100644
--- a/xen/arch/arm/efi/efi-boot.h
+++ b/xen/arch/arm/efi/efi-boot.h
@@ -3,6 +3,10 @@
  * is intended to be included by common/efi/boot.c _only_, and
  * therefore can define arch specific global variables.
  */
+
+#ifndef __ARM_EFI_EFI_BOOT_H__
+#define __ARM_EFI_EFI_BOOT_H__
+
 #include <xen/device_tree.h>
 #include <xen/libfdt/libfdt.h>
 #include <asm/setup.h>
@@ -1003,6 +1007,8 @@ static void __init efi_arch_flush_dcache_area(const void *vaddr, UINTN size)
     __flush_dcache_area(vaddr, size);
 }
 
+#endif /* __ARM_EFI_EFI_BOOT_H__ */
+
 /*
  * Local variables:
  * mode: C
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:46:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:46:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600171.935811 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzyT-0005Gn-3D; Tue, 12 Sep 2023 09:46:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600171.935811; Tue, 12 Sep 2023 09:46:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzyT-0005Ge-0S; Tue, 12 Sep 2023 09:46:25 +0000
Received: by outflank-mailman (input) for mailman id 600171;
 Tue, 12 Sep 2023 09:46:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qfzrm-0008Jk-3v
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:39:30 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 42c29484-5150-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 11:39:25 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id EA7B24EE0745;
 Tue, 12 Sep 2023 11:39:24 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 42c29484-5150-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [XEN PATCH v2 10/10] x86/asm: address violations of MISRA C:2012 Directive 4.10
Date: Tue, 12 Sep 2023 11:36:56 +0200
Message-Id: <1bab3ee9632be879244a405ee248f03392c58731.1694510856.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694510856.git.simone.ballarin@bugseng.com>
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Amend generation script, add inclusion guards to address violations
of MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
to prevent the contents of a header file being included more than
once").

This patch amends the Makefile adding the required inclusion guards
for xlat.h.

Add deviation comment for files intended for multiple inclusion.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

---
Changes in v2:
- merge patches 7/13 and 13/13 of v1 as they had the same
  commit message
- amend the Makefile to produce the required inclusion guard
- use the format introduced with doc/misra/safe.json instead of
  a generic text-based deviation
---
 docs/misra/safe.json                   | 8 ++++++++
 xen/arch/x86/include/asm/compat.h      | 5 +++++
 xen/arch/x86/include/asm/cpufeatures.h | 5 +----
 xen/arch/x86/include/asm/efibind.h     | 5 +++++
 xen/include/Makefile                   | 8 ++++++--
 5 files changed, 25 insertions(+), 6 deletions(-)

diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index 0ec594f6bf..82c636ee94 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -44,6 +44,14 @@
         },
         {
             "id": "SAF-5-safe",
+            "analyser": {
+                "eclair": "MC3R1.D4.10"
+            },
+            "name": "Dir 4.10: file intended for multiple inclusion",
+            "text": "Files intended for multiple inclusion are not supposed to comply with D4.10."
+        },
+        {
+            "id": "SAF-6-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/arch/x86/include/asm/compat.h b/xen/arch/x86/include/asm/compat.h
index 818cad87db..3d3891d061 100644
--- a/xen/arch/x86/include/asm/compat.h
+++ b/xen/arch/x86/include/asm/compat.h
@@ -2,6 +2,9 @@
  * compat.h
  */
 
+#ifndef __ASM_X86_COMPAT_H__
+#define __ASM_X86_COMPAT_H__
+
 #ifdef CONFIG_COMPAT
 
 #define COMPAT_BITS_PER_LONG 32
@@ -18,3 +21,5 @@ int switch_compat(struct domain *);
 #include <xen/errno.h>
 static inline int switch_compat(struct domain *d) { return -EOPNOTSUPP; }
 #endif
+
+#endif /* __ASM_X86_COMPAT_H__ */
diff --git a/xen/arch/x86/include/asm/cpufeatures.h b/xen/arch/x86/include/asm/cpufeatures.h
index da0593de85..39b15e463a 100644
--- a/xen/arch/x86/include/asm/cpufeatures.h
+++ b/xen/arch/x86/include/asm/cpufeatures.h
@@ -1,7 +1,4 @@
-/*
- * Explicitly intended for multiple inclusion.
- */
-
+/* SAF-4-safe file intended for multiple inclusion */
 #include <xen/lib/x86/cpuid-autogen.h>
 
 /* Number of capability words covered by the featureset words. */
diff --git a/xen/arch/x86/include/asm/efibind.h b/xen/arch/x86/include/asm/efibind.h
index bce02f3707..f2eb8b5496 100644
--- a/xen/arch/x86/include/asm/efibind.h
+++ b/xen/arch/x86/include/asm/efibind.h
@@ -1,2 +1,7 @@
+#ifndef __ASM_X86_EFIBIND_H__
+#define __ASM_X86_EFIBIND_H__
+
 #include <xen/types.h>
 #include <asm/x86_64/efibind.h>
+
+#endif /* __ASM_X86_EFIBIND_H__ */
diff --git a/xen/include/Makefile b/xen/include/Makefile
index 31782fb177..b2f9576362 100644
--- a/xen/include/Makefile
+++ b/xen/include/Makefile
@@ -105,9 +105,13 @@ xlat-y := $(shell sed -ne 's,@arch@,$(compat-arch-y),g' -re 's,^[?!][[:blank:]]+
 xlat-y := $(filter $(patsubst compat/%,%,$(headers-y)),$(xlat-y))
 
 quiet_cmd_xlat_h = GEN     $@
-cmd_xlat_h = \
-	cat $(filter %.h,$^) >$@.new; \
+define cmd_xlat_h
+	echo "#ifndef _COMPAT_XLAT_H" > $@.new; \
+	echo "#define _COMPAT_XLAT_H" >> $@.new; \
+	cat $(filter %.h,$^) >> $@.new; \
+	echo "#endif /* _COMPAT_XLAT_H */" >> $@.new; \
 	mv -f $@.new $@
+endef
 
 $(obj)/compat/xlat.h: $(addprefix $(obj)/compat/.xlat/,$(xlat-y)) FORCE
 	$(call if_changed,xlat_h)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:46:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:46:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600174.935821 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzye-0005m8-Cz; Tue, 12 Sep 2023 09:46:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600174.935821; Tue, 12 Sep 2023 09:46:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzye-0005kO-8o; Tue, 12 Sep 2023 09:46:36 +0000
Received: by outflank-mailman (input) for mailman id 600174;
 Tue, 12 Sep 2023 09:46:35 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qfzyd-0005WW-8h
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:46:35 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20630.outbound.protection.outlook.com
 [2a01:111:f400:fe16::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 422f74f9-5151-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 11:46:34 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB9738.eurprd04.prod.outlook.com (2603:10a6:800:1dc::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Tue, 12 Sep
 2023 09:46:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 09:46:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 422f74f9-5151-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WHQdQfkqFylBEkhl/UtkibYGtxm/4hOwuwfMSB1iTSlJCwOxU7J+WhHUF2t0RS7iqP+MuxdoilLuDaeQPW+kGfoWUmHLidqg8OlYOdvasakSiChTJhbRr3eAJUMblIHqpxTK4VLqI+X7tjSgmEV7NbiqmLtzPcueKl9HQtm7buvC8Z8zqn8qWrMAf+dP/uyZqWvTVRQkP4xSSyEWlRK7gBoqxR3TAah0LmVxpVEwuF5avnS/GzwdePveeLYLyI1GdmSTDfYNSqpLWIkHBxJ7qdGbcIAQLETlYb4+4cMzKA5DqAp21SQDiM+fvABLj6MI6KrD2t3KChi6YNjjeCtHKg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OPu/qrkMBDpL2V5NyfEyr9/O8yPPYmrKt6TezA4M4OM=;
 b=l7DAejJTpSCmWfjwDx0Nx7diEqyZP7rctloowjtqLygXPytXKUtu02lWMVQtKl8H/6i9DLcUD6lQovit8BZqH1p8PdOCfzXgR0HxLA/tcHxAcI023/e5bZt9f0Svekt1UE1mx9SZJRUnvHHHMuC6KEZCI/aMq5Nph099yNPzWjPuKVJo8ORLIYR2mthNZApUdLvJfJJze06KdSbaTbnF4Z7W+0LUIqE+U8p8FF3PJrUL2RS5zli7yp91HT+U/4PvsdtXBCg493SIjSdTmrwCCY/EAKsPRDNn2XKF+I/K5awTGmLAfx1QYGJ8af8tf0F2TyT1AL4MQOiCrWGLU0pLKw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OPu/qrkMBDpL2V5NyfEyr9/O8yPPYmrKt6TezA4M4OM=;
 b=moFL+68a1H9+ObmivKurHfZ4NunKt5c8tvDUpp6jU3+Guumi0jR3/uks+ddPm41/rJGLf+weSIvwsWc73W3Z1bLQ7yJvh+rDtbHfCxeOBQItJ6N3PRJ4a9L1woudqmsqZSP92cmWf79TaH6HKBilbQMU4aZFp1oAeXj8CsYgqPrshWWQOrrQdky/AcO9QDo5nkluOAXMzAUDlAk5hyKZtmNaZJ5neZH7DssmP01a+/iG+zAOW13k4qIrr3l4oLrDkWO4X4ZhwVTNtfZ8M2EKnILz44YlPmj0BGGj264JRhiSaTEw2fRB36YaJAGnQKOgJjPyFOACCLbz6dP64z1CBQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <fb421d34-64d0-f9c1-e44d-d3622ac8c3b7@suse.com>
Date: Tue, 12 Sep 2023 11:46:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 01/10] misra: add deviation for headers that
 explicitly avoid guards
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <e78d0868a635fe9fba851bb8c2cfc80ba6d73491.1694510856.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <e78d0868a635fe9fba851bb8c2cfc80ba6d73491.1694510856.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0115.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::17) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB9738:EE_
X-MS-Office365-Filtering-Correlation-Id: 4986abf2-4d09-415f-832c-08dbb3752460
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	B1u4OT7DRRYHNEtTTmS3DNhIPbaWrFLYUUhKl4z/AmdvWuZAlgSJHC3wAKPo89aD0FcJOp1PQl5jz7foEnhzkC+oXIWJmqVP3v84+Yx5zZlx33ZPBZJrHKT+zFqqyRhVXVOX6p6QIrTJ+DRelaoxnqUIu8Dqa8JnmpFC2rTUbA2UHwWSmvi1Ts3HGRtcWeRBgGtZrcinyWpCvJTJGPmnSQeOrmWCG12unu440cl5o6U+XDLd8YWp0LCtbkDPQQmTvCk/6NdzDH6vNQS63boMJ0SjOGkk5FYAjuKs7QB036yrdqkAZuzoKYnOOQk9FijjZwUEr0RKpFZxRGJHeE6+AUXDJ9XYDsDORmvwcurSXmAHuCYCkUQRv3/e6HjFCKmPAHZw2lmK5sov934zuLsNOMdM9wTHHJzx0V2coSSgAI1yPHEDWOByadsTVEW9+8PVfW/HVQIwdFg7/oeYeSwKA7fOEb+mKUu2w5hoNZjab4mZmJXimaI5yzsgZW+ZbdpcjPpEAsezFG7xvOpmsMew7ZKkb/vQEthsXetuwkrPwSoBFL1UiwUkdP5DEJxCwza4sWI2P2FiJv38DIsd6DIswqVnJHKXORk/uQ8PBTSEuQUz3GEM3up3HMU/YJQ4BCR2UxIzhQo89imepV+JzLC5zQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(136003)(396003)(376002)(39860400002)(186009)(451199024)(1800799009)(4326008)(6512007)(31686004)(83380400001)(6506007)(6486002)(86362001)(36756003)(53546011)(26005)(2616005)(66476007)(31696002)(478600001)(66946007)(6916009)(8936002)(2906002)(8676002)(41300700001)(316002)(38100700002)(54906003)(66556008)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TWRHeks0a0FHc2hMOXBRTVRhQlBDWU4yUlVkcHRlY3h2SFpzOFFIcTB1VDEw?=
 =?utf-8?B?WkVZdEFDcDkvTGNXakdNbENRZlhydHZDNHVqSEROYk0zdlhnbFdac1VnSTVU?=
 =?utf-8?B?UFRuODlZTFJIVnVkYXZSWG9aS2t3ZmpWRXdvYnozdXk4YjU0WURoaXVHSXE2?=
 =?utf-8?B?Q1lvZGVsamc5WVB0R1prYit5WXhPUVFoWHhkc3U1bzM5TkFWQldCOEFsbzZq?=
 =?utf-8?B?SllqU2JOMndpZHFTTUR4V3BDeHdFQURNZTMvUmVhTnpaV2d5YlAxZWNQMW1M?=
 =?utf-8?B?Y3o2cDc0OXo0NDZ4NnF5SHh2TmRxRDQyQU5RVTdJeE1OYVcyRnMrRk9rOXNG?=
 =?utf-8?B?emZ1S1BwaGV1YkdNQ2xJbXAyK2l3QVNRQXdFUHBpemR0N3Mvc24xYVNkZG1y?=
 =?utf-8?B?dW5CTFBFRDNidFdZSDd6NDNFSG14TXdWWC8vZy9sbmlzVEtKdVlDMzJody95?=
 =?utf-8?B?MVhXWmpzTmlyU28rbVhraDVEaHp3ZWJoZnVlNGljbXZpTFlOL2loOUdSNHVu?=
 =?utf-8?B?K20wemFoUmNPRVE5UjRsZmNtazA5TTJydUYyRHF4ZER5M3BjV3dRTzYxS3dk?=
 =?utf-8?B?THBEWEJHRlprc2lBVVFWQW5CeFVrUkwyT1ZjOFUyZFJMdXZDVTdWa2UwT2dt?=
 =?utf-8?B?eHdmZjhmTXVrcXpkUW1IL0xOdWlVK2hlMys0dkF1cjR6NGNSNmpRUFhNVm95?=
 =?utf-8?B?aFBZcnBiWSt0cmo5eThleE03VVh6TEJQcXBKTVZnRXNxL3ZMN01GNms3VHN1?=
 =?utf-8?B?NVArdDIzUUw2dGQxcGxSdnE3OWdOejFPVVpIVWUwbVdOWkpMYXBZK2doVG12?=
 =?utf-8?B?YXU4Tk5VKzFlaUFBY3lkNG9TbUE0VHJUUGRvYTAwZ1FONlRFdDNWOHA1TUxy?=
 =?utf-8?B?OTByUTh0VVNWK091Z25iaUF6cWtCNDh6MXozUUxsTW4yWVlVNTdXZzNiY0FD?=
 =?utf-8?B?RjVSN1FPMjFjeE0zSmVqbUtqeFp5TG9wb0hzUThtL2NHTStVWUFqZDBTOEhR?=
 =?utf-8?B?T01wcWJCU01IM05IK284ajg5eFRIOE1ra0dkejM1ckU2RnM0azYrMDBBRFRV?=
 =?utf-8?B?WGxRZXR6SDcxOUwvbGV1MlcwM3RWRlppNXlrRE9YZmltK21tZ1ZWQldGYmJy?=
 =?utf-8?B?RWRBMllYOXJXZmZQOW9JdU90ME5QaXcyVkJqNXZhYlBzSExxZ1FXZ2dLeUZX?=
 =?utf-8?B?cStzcTQ0dVFLeTZJeVkzbGg0RlZFR05HNUdmcUpOcmVxWHE0Z2wrdnZJcXZz?=
 =?utf-8?B?cjIyZDdpSFA3WUZ0T3ltOEJxVHZJanBDdVJmSEZ3YzY2L2VVbFE3UXVXekNC?=
 =?utf-8?B?SlNuTWoyNlFDcVBSaG11Y2FSUldjMGx4RmxpdTFZNk1Kei9qS2pMdUZ4azF6?=
 =?utf-8?B?OVZBcjRWL1l5RnZwVFhQTE9OOHJTL2tIcUlLSk9reG5PdlVKQkdRK1Z0NHB1?=
 =?utf-8?B?a214QXQvcmQvTHEwMjArS3JoOEN6Sm11R0RSUUk4dGt3OEFlSVdzOTlyL285?=
 =?utf-8?B?VU1GWTd3eFkxYkJRclRmOWkwei9ORVJ5akRmNzA3YlZXV2pKSzJmNGRwT1pq?=
 =?utf-8?B?U0krUGNkYnBZeVlQcjZLRDJmSS91ME9oYmsvd0k2cFM1d2RSbmRPVldLQ1la?=
 =?utf-8?B?SWJCdHV5RHFJN3hkSmg2N0dLdHB4V1pxamNsbzhCTFcyWkhidGRPcEZObzlo?=
 =?utf-8?B?cmErOTVmeWZBQTc1aXVnMVUyZnNJd29zcEN2QW8xSVJkbHJISFQ3aTFGU0dI?=
 =?utf-8?B?S0VLNmJFUE9XWS90U0xrZUtlM2E3UkNqbDRZTzF0dmZRRi9HRDhlUTUrSU5E?=
 =?utf-8?B?VzF2dC8rOGVXdVhwOXZUWXRaTnc3WjJDL3ZHVjZuRThiVm10TjFVb2IvekYx?=
 =?utf-8?B?cWVlSjdKNEtSbjZEZis4bkZNdS85SmxDWHFMajM5WVdTVWRacm4rWUFSeHRm?=
 =?utf-8?B?L1h0N01iY0ZtMFpLb0QrOW9LSTJ5eGFnVlBsNmFZRDhrM0FTdXBtZDBHSjgw?=
 =?utf-8?B?MW1XVGNGVXRabVpBV2dYcGtId3dCREhpd1J4ZkYzWU5CY3dpWnVDdFgwVWQ2?=
 =?utf-8?B?L0hEUDk2c2VweGhOZ0NkcWtZNGtzNm0rZnNKVmk4dUhJbWdrL09XdDIwYm1o?=
 =?utf-8?Q?VSXFVk10q6mkHpLfiegkkLiyx?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4986abf2-4d09-415f-832c-08dbb3752460
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 09:46:30.7161
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: o+tdW4gux5RtqqcaCfcs6l8cCxEQQq1+xOlPZQV9yi2+blQfyDnA8yUy5i5x62WlY1u6rodxCbdw0OGKtGnpmw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB9738

On 12.09.2023 11:36, Simone Ballarin wrote:
> Some headers, under specific circumstances (documented in a comment at
> the beginning of the file), explicitly avoid inclusion guards: the caller
> is responsible for including them correctly.
> 
> These files are not supposed to comply with Directive 4.10:
> "Precautions shall be taken in order to prevent the contents of a header
> file being included more than once"
> 
> This patch adds deviation cooments for headers that avoid guards.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> 
> ---
> Changes in v2:
> - use the format introduced with doc/misra/safe.json instead of
>   a generic text-based deviation
> ---
>  docs/misra/safe.json                        | 8 ++++++++
>  xen/include/public/arch-x86/cpufeatureset.h | 1 +
>  xen/include/public/errno.h                  | 1 +
>  3 files changed, 10 insertions(+)
> 
> diff --git a/docs/misra/safe.json b/docs/misra/safe.json
> index 39c5c056c7..db438c9770 100644
> --- a/docs/misra/safe.json
> +++ b/docs/misra/safe.json
> @@ -20,6 +20,14 @@
>          },
>          {
>              "id": "SAF-2-safe",
> +            "analyser": {
> +                "eclair": "MC3R1.D4.10"
> +            },
> +            "name": "Dir 4.10: headers that leave it up to the caller to include them correctly",
> +            "text": "Headers that deliberatively avoid inclusion guards explicitly leaving responsibility to the caller are allowed."
> +        },

With this ...

> +        {
> +            "id": "SAF-3-safe",
>              "analyser": {},
>              "name": "Sentinel",
>              "text": "Next ID to be used"
> diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
> index 6b6ce2745c..eac1ae4b2a 100644
> --- a/xen/include/public/arch-x86/cpufeatureset.h
> +++ b/xen/include/public/arch-x86/cpufeatureset.h
> @@ -23,6 +23,7 @@
>   * their XEN_CPUFEATURE() being appropriate in the included context.
>   */
>  
> +/* SAF-1-safe header that leaves it up to the caller to include them correctly */
>  #ifndef XEN_CPUFEATURE
>  
>  /*
> diff --git a/xen/include/public/errno.h b/xen/include/public/errno.h
> index 5a78a7607c..8b60ac74ae 100644
> --- a/xen/include/public/errno.h
> +++ b/xen/include/public/errno.h
> @@ -17,6 +17,7 @@
>   * will unilaterally #undef XEN_ERRNO().
>   */
>  
> +/* SAF-1-safe header that leaves it up to the caller to include them correctly */
>  #ifndef XEN_ERRNO
>  
>  /*

... you mean SAF-2-safe in both code comments. I did point out the problem
with the sequential numbering (and resulting rebasing mistakes) when the
scheme was introduced.

I also think the comments are too verbose. I don't mind them having an
indication what specific issue they are about, but it shouldn't be more
than a couple of words. Here maybe "omitted inclusion guard".

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:46:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:46:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600184.935832 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzyq-0006Oj-P6; Tue, 12 Sep 2023 09:46:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600184.935832; Tue, 12 Sep 2023 09:46:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzyq-0006OZ-MP; Tue, 12 Sep 2023 09:46:48 +0000
Received: by outflank-mailman (input) for mailman id 600184;
 Tue, 12 Sep 2023 09:46:47 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qfzrA-0008Jk-Aw
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:38:52 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2d2f9255-5150-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 11:38:49 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id CA0A24EE0745;
 Tue, 12 Sep 2023 11:38:48 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2d2f9255-5150-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v2 05/10] xen/x86: address violations of MISRA C:2012 Directive 4.10
Date: Tue, 12 Sep 2023 11:36:51 +0200
Message-Id: <d8b3bd5c2b1c5042c705c2f8ec89b26c417b2bda.1694510856.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694510856.git.simone.ballarin@bugseng.com>
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add or move inclusion guards to address violations of
MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
to prevent the contents of a header file being included more than
once").

Inclusion guards must appear at the beginning of the headers
(comments are permitted anywhere).

Mechanical change.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

---
Changes in v2:
- remove extra blanks
- drop changes in C files

Note:
Changes in Makefile were not strictly necessary in v1 and a maintainer
asked to removing them since there was a deviation for generated headers.
Now, in v2, they are required since the deviation has been removed by
another patch of this series.
---
 xen/arch/x86/Makefile              | 8 ++++----
 xen/arch/x86/cpu/cpu.h             | 5 +++++
 xen/arch/x86/x86_64/mmconfig.h     | 5 +++++
 xen/arch/x86/x86_emulate/private.h | 5 +++++
 4 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/Makefile b/xen/arch/x86/Makefile
index f3abdf9cd1..40d0cb76af 100644
--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -260,17 +260,17 @@ $(objtree)/arch/x86/include/asm/asm-macros.h: $(obj)/asm-macros.i $(src)/Makefil
 	$(call filechk,asm-macros.h)
 
 define filechk_asm-macros.h
+    echo '#ifndef __ASM_MACROS_H__'; \
+    echo '#define __ASM_MACROS_H__'; \
     echo '#if 0'; \
     echo '.if 0'; \
     echo '#endif'; \
-    echo '#ifndef __ASM_MACROS_H__'; \
-    echo '#define __ASM_MACROS_H__'; \
     echo 'asm ( ".include \"$@\"" );'; \
-    echo '#endif /* __ASM_MACROS_H__ */'; \
     echo '#if 0'; \
     echo '.endif'; \
     cat $<; \
-    echo '#endif'
+    echo '#endif'; \
+    echo '#endif /* __ASM_MACROS_H__ */'
 endef
 
 $(obj)/efi.lds: AFLAGS-y += -DEFI
diff --git a/xen/arch/x86/cpu/cpu.h b/xen/arch/x86/cpu/cpu.h
index e3d06278b3..95939c7fb6 100644
--- a/xen/arch/x86/cpu/cpu.h
+++ b/xen/arch/x86/cpu/cpu.h
@@ -1,3 +1,6 @@
+#ifndef __X86_CPU_CPU_H__
+#define __X86_CPU_CPU_H__
+
 /* attempt to consolidate cpu attributes */
 struct cpu_dev {
 	void		(*c_early_init)(struct cpuinfo_x86 *c);
@@ -24,3 +27,5 @@ void amd_init_lfence(struct cpuinfo_x86 *c);
 void amd_init_ssbd(const struct cpuinfo_x86 *c);
 void amd_init_spectral_chicken(void);
 void detect_zen2_null_seg_behaviour(void);
+
+#endif /* __X86_CPU_CPU_H__ */
diff --git a/xen/arch/x86/x86_64/mmconfig.h b/xen/arch/x86/x86_64/mmconfig.h
index 2d49fc79a0..c562879c76 100644
--- a/xen/arch/x86/x86_64/mmconfig.h
+++ b/xen/arch/x86/x86_64/mmconfig.h
@@ -5,6 +5,9 @@
  * Author: Allen Kay <allen.m.kay@intel.com> - adapted from linux
  */
 
+#ifndef __X86_X86_64_MMCONFIG_H__
+#define __X86_X86_64_MMCONFIG_H__
+
 #define PCI_DEVICE_ID_INTEL_E7520_MCH    0x3590
 #define PCI_DEVICE_ID_INTEL_82945G_HB    0x2770
 
@@ -72,3 +75,5 @@ int pci_mmcfg_reserved(uint64_t address, unsigned int segment,
 int pci_mmcfg_arch_init(void);
 int pci_mmcfg_arch_enable(unsigned int);
 void pci_mmcfg_arch_disable(unsigned int);
+
+#endif /* __X86_X86_64_MMCONFIG_H__ */
diff --git a/xen/arch/x86/x86_emulate/private.h b/xen/arch/x86/x86_emulate/private.h
index 719dad59cd..ffa134f297 100644
--- a/xen/arch/x86/x86_emulate/private.h
+++ b/xen/arch/x86/x86_emulate/private.h
@@ -6,6 +6,9 @@
  * Copyright (c) 2005-2007 XenSource Inc.
  */
 
+#ifndef __X86_X86_EMULATE_PRIVATE_H__
+#define __X86_X86_EMULATE_PRIVATE_H__
+
 #ifdef __XEN__
 
 # include <xen/kernel.h>
@@ -831,3 +834,5 @@ static inline int read_ulong(enum x86_segment seg,
     *val = 0;
     return ops->read(seg, offset, val, bytes, ctxt);
 }
+
+#endif /* __X86_X86_EMULATE_PRIVATE_H__ */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:46:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:46:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600192.935842 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzyx-0006rE-2M; Tue, 12 Sep 2023 09:46:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600192.935842; Tue, 12 Sep 2023 09:46:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qfzyw-0006r5-VL; Tue, 12 Sep 2023 09:46:54 +0000
Received: by outflank-mailman (input) for mailman id 600192;
 Tue, 12 Sep 2023 09:46:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qfzr0-0008Jk-Av
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:38:42 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 280b60d6-5150-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 11:38:40 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 0EDA54EE0743;
 Tue, 12 Sep 2023 11:38:40 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 280b60d6-5150-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [XEN PATCH v2 03/10] misra: add deviations for direct inclusion guards
Date: Tue, 12 Sep 2023 11:36:49 +0200
Message-Id: <0c1fb82b539d939e7c6655a9a8f3d7fe8b213cef.1694510856.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694510856.git.simone.ballarin@bugseng.com>
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add deviation comments to address violations of
MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
to prevent the contents of a header file being included more than
once").

Inclusion guards must appear at the beginning of the headers
(comments are permitted anywhere).

This patch adds deviation comments using the format specified
in docs/misra/safe.json for headers with just the direct
inclusion guard before the inclusion guard since they are
safe and not supposed to comply with the directive.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

---
The patch has been introduced in v2.
---
 docs/misra/safe.json                 | 8 ++++++++
 xen/arch/arm/include/asm/hypercall.h | 1 +
 xen/arch/x86/include/asm/hypercall.h | 1 +
 xen/include/xen/unaligned.h          | 1 +
 4 files changed, 11 insertions(+)

diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index e8e200cb0a..0ec594f6bf 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -36,6 +36,14 @@
         },
         {
             "id": "SAF-4-safe",
+            "analyser": {
+                "eclair": "MC3R1.D4.10"
+            },
+            "name": "Dir 4.10: direct inclusion guard before",
+            "text": "Headers with just the direct inclusion guard before the inclusion guard are safe."
+        },
+        {
+            "id": "SAF-5-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/arch/arm/include/asm/hypercall.h b/xen/arch/arm/include/asm/hypercall.h
index ccd26c5184..24f8c61a73 100644
--- a/xen/arch/arm/include/asm/hypercall.h
+++ b/xen/arch/arm/include/asm/hypercall.h
@@ -1,3 +1,4 @@
+/* SAF-3-safe direct inclusion guard before */
 #ifndef __XEN_HYPERCALL_H__
 #error "asm/hypercall.h should not be included directly - include xen/hypercall.h instead"
 #endif
diff --git a/xen/arch/x86/include/asm/hypercall.h b/xen/arch/x86/include/asm/hypercall.h
index ec2edc771e..dfdfe80021 100644
--- a/xen/arch/x86/include/asm/hypercall.h
+++ b/xen/arch/x86/include/asm/hypercall.h
@@ -2,6 +2,7 @@
  * asm-x86/hypercall.h
  */
 
+/* SAF-3-safe direct inclusion guard before */
 #ifndef __XEN_HYPERCALL_H__
 #error "asm/hypercall.h should not be included directly - include xen/hypercall.h instead"
 #endif
diff --git a/xen/include/xen/unaligned.h b/xen/include/xen/unaligned.h
index 0a2b16d05d..190ada7800 100644
--- a/xen/include/xen/unaligned.h
+++ b/xen/include/xen/unaligned.h
@@ -3,6 +3,7 @@
  * without faulting, and at least reasonably efficiently.  Other architectures
  * will need to have a custom asm/unaligned.h.
  */
+/* SAF-3-safe direct inclusion guard before */
 #ifndef __ASM_UNALIGNED_H__
 #error "xen/unaligned.h should not be included directly - include asm/unaligned.h instead"
 #endif
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:48:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:48:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600215.935857 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg00A-0008Km-Ki; Tue, 12 Sep 2023 09:48:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600215.935857; Tue, 12 Sep 2023 09:48:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg00A-0008Ie-GJ; Tue, 12 Sep 2023 09:48:10 +0000
Received: by outflank-mailman (input) for mailman id 600215;
 Tue, 12 Sep 2023 09:48:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LIu2=E4=citrix.com=prvs=6128f91ed=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qfzrH-0008Jk-Ed
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:38:59 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 302d05b1-5150-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 11:38:56 +0200 (CEST)
Received: from mail-dm6nam12lp2170.outbound.protection.outlook.com (HELO
 NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.170])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 12 Sep 2023 05:38:52 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6962.namprd03.prod.outlook.com (2603:10b6:a03:430::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Tue, 12 Sep
 2023 09:38:50 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 09:38:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 302d05b1-5150-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694511536;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=sVgNWibj/xft+ODTKXvmfQPRsftM27mryFZiMF1Khig=;
  b=PLGxSQ5fiWwCPLMdHlntXzHI2TLKFNA4piKOWZlL/BUB/FoTTOhkCLej
   IoyNTTLS9RLbME2TsUY1y+rlsOiDfayx3+7ShlddaCXmBEdR6jCt0uvYV
   ZYQhlulrrctMPQ3/pKyWHr077/SDZlbXaOiDTFxLtwYegghjl8LDwaMgN
   Q=;
X-CSE-ConnectionGUID: vT+3jjhoTdCU2Hv6OV3yYg==
X-CSE-MsgGUID: RXNMYJXaS7edDmarXS4R7w==
X-IronPort-RemoteIP: 104.47.59.170
X-IronPort-MID: 122379131
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:CZQdVa80svhHVVUOZqU3DrUDGH+TJUtcMsCJ2f8bNWPcYEJGY0x3n
 GYdUGCGPK6MNzPyfYwgbY2+8xxVvJeBy9RjQFdorCs8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks11BjOkGlA5AdmNKkR5AS2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklQy
 b9DKjINaSyPrN/s4Kzlbdc3l/UseZyD0IM34hmMzBn/JNN/G9XvZvuP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWCilUuiNABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVx3ikCdtJTdVU8NZQsHu2904jASZJWFeXpPCjunXiYY1Af
 hl8Fi0G6PJaGFaQZsLmQxSyrXqAvxgdc9ldCes37EeK0KW8ywSTC3UATzVBQMc7r8JwTjsvv
 neSntbuAxRutqOUUnOX8rqIrTK0NjMRJGVEbigBJSMO5NzmoZ0vgwjUZsZuFravid/4Ei22x
 CqFxAA7jq8WhNQG1I26+07GmDOmopXVTg8z6R7TV2jj5QR8DKa1aort5VXF4PJoKIeCUkLHr
 HUCg9KZ7u0FEdeKjiPlaPkCGKGB4/eDLSHGhlhuD98t+lyQF2WLeIlR5HRyIRlvO8NdIzvxO
 haM4UVW+YNZO2asYelveYWtBs82zK/mU9P4SvTTadkIaZ90HOOawBxTiYer9ziFuCARfWsXY
 v93re7E4a4mNJla
IronPort-HdrOrdr: A9a23:l2WIR6jGaSTijNS5gCh/NjFl3nBQXtQji2hC6mlwRA09TyX4ra
 yTdZEgviMc5wx/ZJhNo7690cu7IU80hKQV3WB5B97LNmTbUQCTXeJfBOXZsljdMhy72ulB1b
 pxN4hSYeeAaWSSVPyKgjWFLw==
X-Talos-CUID: 9a23:Y1HJW2PhQuE4MO5DRhUkr0wWGscZflbgllfOfWiGUndYR+jA
X-Talos-MUID: 9a23:4JXm8AVM9ssLXX3q/AXcohRTFvdh2PujBGwImI82gJW+ajMlbg==
X-IronPort-AV: E=Sophos;i="6.02,139,1688443200"; 
   d="scan'208";a="122379131"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ftmjGGzhs71EI5kxWe+6nBNgYGkN4fBPlyMvU/3OC+q+1uUZLg+HlqaXqIr+2SqWXbErEfp5TpTx7OP5lKzfuQpwkRA5r3hfOkwlzt64istkCnBd5o+ZdLrHy2UhxEzolHVC9sZK3T1lx1yFVwIg/ht/Itc+N/ZPLO1Pbd7us+3oySG0MJ94LUbnxetDhgFUwcslr+nYTKdkPV92B7Eus/pStiNJXh28HgmyKeI72vk+KT4SAmbFglRw7xHLK/1kubsjGIN6Xk31MWot43PAyGN4Rt/jtB09cztzP2xd4g66i2GawKy1rX/Y/jnJNENfAnPOy9iCwg9GtU7ZGJfU5w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xKGehjcDFxDvafGb/YS+UFYDTsyd+QPlvnD0N4zYXmA=;
 b=h51KoXCyUjNepGuckNrS9ZVQJFqUUIe9R3WOQZAd8hkaJJ8cTpUiKasNW27LsAinA3GBR8pLXVcZJVeJzU1zmVKeEqxzgVWMHRkM/5QhWrK+7cyIOBOkhB8BPH0lnPZIV+HtgHlCwR3rTuz4Nn/w6qZk430fFv1r1Sn2ZnyvlYPMHdGvkOj/bSmU/sHNZKIIg3DQdSNZS4u6QL6S981WFK9pG4jWcLg1WVTUG/Gyj5t6zBudZpQshqil1yjSxyDtSoDDlXBm2wYQgDFd4twyUZXqsf3p7rHHr3lBtZcBRh0VoeYT8lAloJQNrOA0VVxH5xn/2h2DvjpA0Y9Z1/TPQQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xKGehjcDFxDvafGb/YS+UFYDTsyd+QPlvnD0N4zYXmA=;
 b=uIKvor1I+NEJ+pG6DNvZI9WmYlEvWBqhjhze6byDhgVkJHxE5TYwlK4pMDeUiggCo7ZWtugd5HtWhZiee2EE2+v4jB+UwWzTx9Pm7qGjriUqMToWukfaSRyyBHa9CiZ7+2gMEGxNRGViTKVsMbJepWbt5DQU/+I2FwHPNkrq7wI=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 12 Sep 2023 11:38:45 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Simon Gaiser <simon@invisiblethingslab.com>,
	"committers@xenproject.org" <committers@xenproject.org>,
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	xen-devel@lists.xenproject.org,
	Thomas Gleixner <tglx@linutronix.de>
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
Message-ID: <ZQAxLuMqLwiBWhKy@MacBook-MacBook-Pro-de-Roger.local>
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com>
 <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
 <27ae69b6-bc57-dee3-2528-8311a38decda@citrix.com>
 <alpine.DEB.2.22.394.2309111534030.1847660@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <alpine.DEB.2.22.394.2309111534030.1847660@ubuntu-linux-20-04-desktop>
X-ClientProxiedBy: LO2P265CA0140.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:9f::32) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6962:EE_
X-MS-Office365-Filtering-Correlation-Id: 01c2d10d-e269-45a1-f90a-08dbb3741203
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	foszqKCGuN/iDLEzj+Z32nW853029vDXuDbsSvw98dr7f60mpPtdaenfMimKsKFmRb1nLefEY49k363sfzuUkSmrydKbBARuesHRHF5ej56QJjsgSX/bGP7lBGH00q1oJbT5Sj762VhTPuMwCWCZnRz9SqhQs97eXLOLkbY4H1JnzkUULHJNIibKTWlVqrRgK4fB/u5iIUMJq70ghMztE02IDgTA7c9y8QBgGkZorKFyVpq7pX7gXSFEHKWBMgG3rbFVAXRNoPyAhwod4tX+G6dcsTaCQc3zsxrnd4NgLmgPkUpFQ1Qe/zPvVj+B/DPDVuEz13FNfkb+dvPu8pjKsqQmNjERe9/PBZGU0rL+fmDD5bwsTmszT1+FTZQCC8vDf+YZfchFjln0Umsfk3xMvyhePWabJS2j36pnWjM4XrOx7D7LGsNEMDP7eMiJ7i2k4VP8MyPtKNWneLFxPsTraexmpeXRJgMuMPuZPvdeC2JkoRnYNzBqYv9rsg7TiGkD3/7KKGBmZGjP5BSWRXOapAXabx1i+CfLCsg3k58T72qtWhFi4z4181zn+CSimIPa
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(136003)(346002)(39860400002)(396003)(376002)(186009)(451199024)(1800799009)(83380400001)(82960400001)(6512007)(9686003)(5660300002)(66476007)(8936002)(6916009)(85182001)(8676002)(54906003)(2906002)(66556008)(41300700001)(316002)(86362001)(4326008)(66946007)(478600001)(6506007)(6486002)(6666004)(38100700002)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?N2dQVU5PdHV5cVNrUzBOT1E0bTFHdHM2c3NRU00wUkp4ZzE1eFpwQmk0d1hP?=
 =?utf-8?B?UG82NVFpRWdBRXVuOGZrSmZXYUFnYjU2SWtvZnJ4SE1aKytxcU5rVVFTWjVI?=
 =?utf-8?B?S1ZReDVGV2ZtN3BMS0JPNkRPdGhmWnE0ekxXeU9QdGx4STBTOTVzUE9pUGFX?=
 =?utf-8?B?MWN1M3FLc0NGVVJySllNSGU2SklLYTR5U1FlNWdhd3dWWjgzcTkrTjJWMXVs?=
 =?utf-8?B?Z3pPc1hkd1F0TWJOTzd1VFBsYmw3QWlTZTc1YklkZ2w5eENtOGkyYWhGSUNn?=
 =?utf-8?B?eExxbTVZZXE1UThMaks0WjZYSDRaemNYZTdOb296RGNtNlR0YVlnR3pPREdK?=
 =?utf-8?B?TngvZnFzUDBhNU52bGZnd3NCMjdWRUdoZnM4aXJFb2JCRWhldDFoZnlCaldF?=
 =?utf-8?B?eFN6U0U4b01iUml1WFY0YTc3RzVWaytmWFQzK0xETHFsZW9BdWlzeXIzWUFu?=
 =?utf-8?B?NEx4N3RSNU1rcGFORGNTekVTUXJIcmlYNDBPaFp6azc4aUcwWm5MVzBOcHN4?=
 =?utf-8?B?RDhhc0drTW01S053QjJDQ0VHamhYdFg1eEZobmhoVWdvZnFBL2FxczNYTnd3?=
 =?utf-8?B?Q3RCbkR0KzVHZ0hCcG9jZE0rWXRmRFlVVERFZUJ3aU5KeUhKZ1NUZHc2Z1pj?=
 =?utf-8?B?cW13L0NjdndjeEJVL1ZrNmR6TmgrZWdCZ3lpbEJla2MvZDRIbnQxYkVla090?=
 =?utf-8?B?TTRtU1kyalNoVnRwaUp2Z1VxK2VVZlBPaUt3cExmdHk4K1d0WDF5aEE1Z1Zo?=
 =?utf-8?B?d0t6UFRSRFFnQ25IOHVmb1A0dkk5RVRreGVURkVaL0hQSDJYOCtRYjRxRXFV?=
 =?utf-8?B?UlQ0RjlxSFdZMHJna0JUcUp2UUJqL2d6QlB2N25NdjZVRWVaVHdmeVVZV1Yy?=
 =?utf-8?B?RnFBejBnNy9lR1QrSGVBUmhtM2I4aE50QkZ4c3doeVZtRjhlNkJHWml0eWZG?=
 =?utf-8?B?bWtYZ1BrZTl2ZEp6ZkhVakswVFdWZjdGbm11bEFIamtNRWdkZ3U4MmV1K0Zn?=
 =?utf-8?B?TXdwSGZXSTNGVEtXQTZhL0syME9lRlRrWDhzclE0aFBUanFEVjdldThHMmtv?=
 =?utf-8?B?YkkzSVBxdHBPd05leTNrQzBhanZjSjhZc0JWdVAyaUFFak8yb1l3UituUC9X?=
 =?utf-8?B?WUpuWjBFVDlRSDdQZlU2b1JzVkdiUTAxbWwyTUp0amROYTFEcFVYd21lZFJY?=
 =?utf-8?B?WkVNRmZFVUZWdWFlUFkxcFBDaDNYTDZsVzR0QmpZUFF0UTBjUjZMVGMrNkdn?=
 =?utf-8?B?Y0MydmFURnZzVC9yYzd5TXRWeVgzZGs1d3dJRE1UUjJ2L2RPZjBPNzFDKzFt?=
 =?utf-8?B?N3M5S2FnY3dQQWJqcUM2aisyeUIwL3F4L0FZL1lIbk05cFNYdG5neVFkRWZt?=
 =?utf-8?B?dmVvTlp4STRDY1BndFBRMjMvRUg2QkNCZnpCM0dJejRJZWxNbWdOUGFzZ1BS?=
 =?utf-8?B?L0s2VEJCNjNKM0x5cFJESFE4aVBMM3dJQk5zRFBHRDExdmd5bSthbWJjUStW?=
 =?utf-8?B?MHRkZ1gvR0FOZ3BsMkR2blJPbXdZd21nOWhRWm5GN21pbWRJbnpFTnQ4clNh?=
 =?utf-8?B?OUZTekUrNmd3aEVESnNPYWdaV29IR0dDcWVNQkFMWUhRNTJPbzg5WGF3M2JX?=
 =?utf-8?B?eGhBWXJ3ZFgrOHBJbUNuQVVkZWU1dWJnRUJha2xRVVBsOEo3MC94bm5Oekxj?=
 =?utf-8?B?OTMxajlTajc4Wi9teGZLQzZHbm11enEwQ1RNQk1udnk4WHFTMmZCRFhzMU91?=
 =?utf-8?B?SllPcjZOQlU3ZDVTRWhNQ250N0lqKzB0c2J3a0RyOWFneGpsWVdsazgzZXEv?=
 =?utf-8?B?dTk1RHBONEpVRnFNRHh1dlJBN2dSdk9zdDR4R1lQaVR4dkVrVnFxbTBnc0Vm?=
 =?utf-8?B?a1UwajlmcUE4MGRrSEhpZmVlMk85MU9adEJUQ2UvajdmQkNCbm95a1EwV2JG?=
 =?utf-8?B?eTdKZm5ySU51Vm5mWDZyTlBmbkR0ZzBCU0NMaTExWXZ3amZXTXhxUjVneW5H?=
 =?utf-8?B?RG1Yck1nckFKeFp1L1ppNFc0ZkNock5jTWkwMjJaV0l0YzRjSk9JaEdSMjVl?=
 =?utf-8?B?TVRkQWNPUjhVYzhuMHltQjlwbVIxbU1FY2xadjJIUUlKQW5MYXBXN0dJVnAv?=
 =?utf-8?B?UmVscTZqaTJqZ0JZb1ZkL3I5cHAzYnNhdkZCakhmWDg5bGkyd2VUNVhTc3o3?=
 =?utf-8?B?L0E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?SWZHWmhsN0hPQkdRb3NIWkcxR052OWpUTU5DV2w2a0lJNXQ2Yy93SXY4OWtv?=
 =?utf-8?B?MEY1Nzc4YUtTSWNyTUZLYXN2TmN1d0dpenozeFhrNDIvV0VNOFU5K2JHZFBO?=
 =?utf-8?B?RXlielB0clJFN3gvMmZ1d0s1R0R0NHQzM29hSnU1Z1BSOG5pd0tMUUNUNndV?=
 =?utf-8?B?L1lrckpyenFkNWxWeTVjSGtZMGVURWxIWkpRTk9GTGxZZng5OWRWTnpYdi80?=
 =?utf-8?B?amREMmNWcU1BUmwyK2l0ek1saWtUTThudmdFbGF0MVNXRXUvRHVRdXVpeW5Q?=
 =?utf-8?B?WGsxTTB4S3lwaE4wVlNqdnZyamZrM3h6Y3BoRUNnYTFHMTFqYXJETEpKc1JJ?=
 =?utf-8?B?R2FPU2tQSUJPTHI4TlAwL1dPODR2V05nUW0zWjZyTGkvV0k1YkY0M1F4UVk4?=
 =?utf-8?B?UWpJZVB0b0tYTXEvRVArRnFuTEh4NUdMbHlsbCtlMlV5UWtyRyt5aUdmazFo?=
 =?utf-8?B?bG9MUE1oRVV6OVZlZU5XRFBvR1NmTVZPZUxha1cvVTQybnhCOTRGZE5sb1dL?=
 =?utf-8?B?TzBaaVRvRklhQkIzREN4Q1dtbkszVFllR25odU5kVWlmVjJQKzJsdUpVdXUy?=
 =?utf-8?B?eTNVejFvYmNualZIY210aEVBOHJ0UXFCbXYxR3JoaklUdElRVkFjc3NiRkU4?=
 =?utf-8?B?L0pUR05aMVp3SEF2SE55TmZiVHNoL0w3RGQxMGgyTnFPbnJBQ3VVNXgxMWpY?=
 =?utf-8?B?cUpSMGpML2E4OFpxY3F2eXFzckZPZG9SRFp5cEhqWGVMRUpqY3NHa2w5bUd4?=
 =?utf-8?B?RkxFVEFGcVhiY0pSamFXbnN4dGxrbXYrOG5DRFVseElNOG4rMVJGQkxSRXIv?=
 =?utf-8?B?MHF3U1BCNTJ4bFBPSFY3UlVFTUZUeldvYjlabjU0c3BLKzFTVFhqWEFOUWVC?=
 =?utf-8?B?Z1FNRlRSZlZRc1VYMHRrWGZOeHdOOUZackttOGowTWtQcWpYSHN3RWpNQkkv?=
 =?utf-8?B?OFBrSExoSGdZa2RlZE5IKzV1YVY0YzNDVjVjWVR3SVNsRlZCeE9FanVnTlZk?=
 =?utf-8?B?YndZSWxZNnhFMURRR0doNVlqNzR4cE5XcFk1UkZpd0VQd3JzSkdZT1lGNG95?=
 =?utf-8?B?Z1QxNC9DVk5ZU2QwVjU5R0VYeGRBTFFrZ3BaQkxvamhuYzZ3NzBjQVN1T1hF?=
 =?utf-8?B?NlVuOS9ZOWdvbFpTVTJUWUlmSEkzS3NGR3VnbktsenpneFgrZndZU2o2M2ww?=
 =?utf-8?B?MjFNNEl0QUFjQXRVNjNMbytsR3lMQ2ZGY2c5QVo1Q21kdVFYa1Y1cWZ6RzY4?=
 =?utf-8?B?TC9Xd05mNGxOOEgvOGJYYnErN2hvUlZtZkhpQUV4ZzAxQTlsdz09?=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 01c2d10d-e269-45a1-f90a-08dbb3741203
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 09:38:50.6289
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: WPTGBSbME1gGzjMIoU5cKtzJLN0Eca7kH56xIxyTIF7DAO/Z4MNO8qW4qfh5rkatpYNf0NSRRc4gzR4nJIV66g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6962

On Mon, Sep 11, 2023 at 03:38:05PM -0700, Stefano Stabellini wrote:
> On Mon, 11 Sep 2023, Andrew Cooper wrote:
> > Physical CPU Hotplug does not pass the bar for being anything more than
> > experimental.  It's absolutely not tech-preview level because the only
> > demo it has had in an environment (admittedly virtual) which does
> > implement the spec in a usable way demonstrates that it doesn't function.
> > 
> > The fact no-one has noticed until now shows that the feature isn't used,
> > which comes back around full circle to the fact that Intel never made it
> > work and never shipped it.
> 
> So we actually have agreement on how to move forward
> 
> ---
> SUPPORT: downgrade Physical CPU Hotplug to Experimental
> 
> The feature is not commonly used, and we don't have hardware to test it,
> not in OSSTest, not in Gitlab, and not even ad-hoc manually by community
> members.

We could use QEMU to test, so it's not impossible to test, just that
AFAICT there aren't (that m)any users of it.

> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> 
> diff --git a/SUPPORT.md b/SUPPORT.md
> index 3461f5cf2f..02e2f6eaa8 100644
> --- a/SUPPORT.md
> +++ b/SUPPORT.md
> @@ -48,7 +48,7 @@ For the Cortex A77 r0p0 - r1p0, see Errata 1508412.
>  
>  ### Physical CPU Hotplug

I think it would be clearer to rename this to "ACPI CPU Hotplug", as
to not be confused with the late CPU bringup done by the pvshim.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:48:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:48:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600214.935852 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg00A-0008GW-CJ; Tue, 12 Sep 2023 09:48:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600214.935852; Tue, 12 Sep 2023 09:48:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg00A-0008GP-99; Tue, 12 Sep 2023 09:48:10 +0000
Received: by outflank-mailman (input) for mailman id 600214;
 Tue, 12 Sep 2023 09:48:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qfzri-0008Jk-3S
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:39:26 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4124ea73-5150-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 11:39:22 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 458EA4EE0743;
 Tue, 12 Sep 2023 11:39:22 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4124ea73-5150-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v2 09/10] xen: address violations of MISRA C:2012 Directive 4.10
Date: Tue, 12 Sep 2023 11:36:55 +0200
Message-Id: <d1e081345c8dd35bc3e5baf91e95db830b5c68e4.1694510856.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694510856.git.simone.ballarin@bugseng.com>
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Amended inclusion guards to address violations of
MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
to prevent the contents of a header file being included more than
once").

Inclusion guards must appear at the beginning of the headers
(comments are permitted anywhere) and the #if directive cannot
be used for other checks.

Mechanical change.

---
Changes in v2:
- drop changes in xen/include/xen/unaligned.h since this second
  series adds a comment-based deviation in a separate patch
- use #ifndef instead of #if !defined()
---
 xen/include/xen/err.h     | 4 +++-
 xen/include/xen/pci_ids.h | 5 +++++
 xen/include/xen/softirq.h | 4 +++-
 xen/include/xen/vmap.h    | 4 +++-
 4 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/xen/include/xen/err.h b/xen/include/xen/err.h
index 2f29b57d28..646c20ab4a 100644
--- a/xen/include/xen/err.h
+++ b/xen/include/xen/err.h
@@ -1,5 +1,6 @@
-#if !defined(__XEN_ERR_H__) && !defined(__ASSEMBLY__)
+#ifndef __XEN_ERR_H__
 #define __XEN_ERR_H__
+#ifndef __ASSEMBLY__
 
 #include <xen/compiler.h>
 #include <xen/errno.h>
@@ -54,4 +55,5 @@ static inline int __must_check PTR_RET(const void *ptr)
 	return IS_ERR(ptr) ? PTR_ERR(ptr) : 0;
 }
 
+#endif /* __ASSEMBLY__ */
 #endif /* __XEN_ERR_H__ */
diff --git a/xen/include/xen/pci_ids.h b/xen/include/xen/pci_ids.h
index e798477a7e..1a739d4c92 100644
--- a/xen/include/xen/pci_ids.h
+++ b/xen/include/xen/pci_ids.h
@@ -1,3 +1,6 @@
+#ifndef __XEN_PCI_IDS_H__
+#define __XEN_PCI_IDS_H__
+
 #define PCI_VENDOR_ID_AMD                0x1022
 
 #define PCI_VENDOR_ID_NVIDIA             0x10de
@@ -11,3 +14,5 @@
 #define PCI_VENDOR_ID_BROADCOM           0x14e4
 
 #define PCI_VENDOR_ID_INTEL              0x8086
+
+#endif /* __XEN_PCI_IDS_H__ */
diff --git a/xen/include/xen/softirq.h b/xen/include/xen/softirq.h
index 33d6f2ecd2..4c7655188a 100644
--- a/xen/include/xen/softirq.h
+++ b/xen/include/xen/softirq.h
@@ -1,5 +1,6 @@
-#if !defined(__XEN_SOFTIRQ_H__) && !defined(__ASSEMBLY__)
+#ifndef __XEN_SOFTIRQ_H__
 #define __XEN_SOFTIRQ_H__
+#ifndef __ASSEMBLY__
 
 /* Low-latency softirqs come first in the following list. */
 enum {
@@ -40,4 +41,5 @@ void cpu_raise_softirq_batch_finish(void);
  */
 void process_pending_softirqs(void);
 
+#endif /* __ASSEMBLY__ */
 #endif /* __XEN_SOFTIRQ_H__ */
diff --git a/xen/include/xen/vmap.h b/xen/include/xen/vmap.h
index b0f7632e89..03868b0b1a 100644
--- a/xen/include/xen/vmap.h
+++ b/xen/include/xen/vmap.h
@@ -1,5 +1,6 @@
-#if !defined(__XEN_VMAP_H__) && defined(VMAP_VIRT_START)
+#ifndef __XEN_VMAP_H__
 #define __XEN_VMAP_H__
+#ifdef VMAP_VIRT_START
 
 #include <xen/mm-frame.h>
 #include <xen/page-size.h>
@@ -38,4 +39,5 @@ static inline void vm_init(void)
     vm_init_type(VMAP_DEFAULT, (void *)VMAP_VIRT_START, arch_vmap_virt_end());
 }
 
+#endif /* VMAP_VIRT_START */
 #endif /* __XEN_VMAP_H__ */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:49:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:49:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600231.935872 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg01J-00016C-2x; Tue, 12 Sep 2023 09:49:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600231.935872; Tue, 12 Sep 2023 09:49:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg01J-000165-07; Tue, 12 Sep 2023 09:49:21 +0000
Received: by outflank-mailman (input) for mailman id 600231;
 Tue, 12 Sep 2023 09:49:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qg01H-00015x-EB
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:49:19 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20617.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::617])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a408625a-5151-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 11:49:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7906.eurprd04.prod.outlook.com (2603:10a6:20b:24e::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Tue, 12 Sep
 2023 09:49:16 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 09:49:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a408625a-5151-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Tp18ZnJZoxb35tUj2PuLlBppdcd9OlV8RA3ckHqGV3UsnA0GWGy63ORtvvPOEfGW8kcF7HwWPxZlWckQnOkWQvuJqE9dMh1PSQGgtGQghw//qkd5i34bWzrBmB+oJJ6rPfp7yv/zyJ3MxwPyYrco9CFrwKTb6BPLbN7VSWfsD6QWlHiamwWXuckSggWJVcIU+r4n0PGeOGCLIj0A5ZAuw2zqLcwbB4wh0WwhYaAKPRzwuGrqYqg5PqpTZJ43tLoPGUWXjvIGI4SyL6xmCCS7OgfYEC+leaORlH+rC3Y+j1k+Wxe7waljB9kv0+zcBIpbWQtbxXxIQRrVkSJcCMDydw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Du8d1hhfOBMOkMiYhC8V8eRXVi7QybGpn33qI8OSCpI=;
 b=Cnlh078d02isuVCY471LCAXeqCVN9Mv+sOdlgIuUcq0yCX0+a2vAl9WAUS76rqg/gWKHbr7gHgc9uTo/RX2T7DOH8K6b3KN/zoX99IWkBtZgl5zEh4vo1s0TSaRco0m93Hq+MbdUF/ZP4q+Wfg+EmsqWgNimAv6vUpEynA79RUFzVnECtrCpbXi0EBRdimOd5sVQeBHy1L3oqfX0g5/NMReYD1HYABIuiuNrb+I4JukYhA9o7odhv7pwLmz9lKDDskCFfwML1W8Iob5AoAENbLnwHmo7GXMJAMIofYnh7VgmL20WJym9ciFCGFvHcoy+9VgpRyObQBbFgYk01jLmrA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Du8d1hhfOBMOkMiYhC8V8eRXVi7QybGpn33qI8OSCpI=;
 b=l7QRKpcpgWbw0M4FqOpSUWeABeBmTneGZdascIwbFE+CiCuJ4u0yHK7SEVt9Pk8Cyqh5oZuM2Ci/MrAW9eIdPmRwioUW378OCvkQkK3L5why2OtAFo2/AhimK1VVke4nsTjifoB20zPiezXEQYxd6JWlztZ3MMxRl+nBp6EldjOPj3tvBe0twt7w+XNMdf3SU2b3L+xyGQ1MpZe9dQhf8rEJb34msSUMNZIS1B7rWI5cghx4TcDkKNtIPfL99jHLjPgNSwB9UmXGUL4n7Bl5ejcSTBEBHHZjQMI1+PF8gX/xCjqtHhxPetK96X0RJR3icQg9J+OQ09gx1m2CYr6jCA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <68504895-ee95-105b-eae9-01efe648a3b8@suse.com>
Date: Tue, 12 Sep 2023 11:49:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 02/10] misra: modify deviations for empty and
 generated headers
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Doug Goldstein <cardoe@cardoe.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <6da900e1692ac1c1fff554da53dfbbeb1e42ad07.1694510856.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6da900e1692ac1c1fff554da53dfbbeb1e42ad07.1694510856.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0172.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a0::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7906:EE_
X-MS-Office365-Filtering-Correlation-Id: 1f9ed164-9550-46d6-0532-08dbb3758725
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/GnBoBQbHuXJS96GsfiKcRhQT/YRGll8Qv+jM68gEFrOjJsi/tx9UV+Grydty9Nu663DXDS4ouxLGz1065dZY/f/isb0c79iWOGlPVlHvDWs92JUNoOgtsU9w34uZ8WD2WFi40GZmhndJjCqgiKhTwrIEU/DXNmiLuKJFLrBZtR0UhbgEwayjVxSvhPzHHiMdp0jqKoCX2YEmLTeEqM1GkNBabbsbTia5/I1iopqqj3wE0tOd3RVEf9DWSSxIG7QIGuGToG3b1gLevhweRoSD2fj/sUC6JfzTza1uWQazWTg9npQN+uWwn6PvdE+Nwp0faCCenEBJtzOX9Ba+NYDWqoc0V+dwe2HNF21xkma2INln4gzEDa1/HM/ciW3VH5gfie64FlB1suprUL+DvuduvrtlWaUhwpEts0VRiSjg4Mk+EFVP4pM/n3NB7GpH1nkS+4kPKi/oCbCok2nQoIf2CIihfFQrU6nRjekJIhb9+z7ns8PcK7Hn1dfprMAmMkNmXOkOCFGbbJ2RNi3PENer5neyH4tNrGXd/IaH3Gge53020BVzLDWA1lck7gX7tYXaVd13EZ6tVYSjbi+Hv9FNJ0tRVyoBy7OLlHYMpHG1YLBzvumuPVQ29/T0f8AqKMfR5nUscQ7iggO+d+lwYx36Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39860400002)(396003)(136003)(376002)(346002)(451199024)(1800799009)(186009)(2906002)(26005)(316002)(41300700001)(66946007)(6916009)(54906003)(66556008)(7416002)(66476007)(478600001)(5660300002)(8676002)(8936002)(4326008)(31686004)(6512007)(6486002)(6506007)(53546011)(2616005)(83380400001)(36756003)(86362001)(31696002)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M2dQSjdURVRzQUQxT1VPUFhiV3RieDdCMUtTbnI0STVweU1LWDl6NlRxVWpw?=
 =?utf-8?B?Tk50REIrWFV1bU1DcFJhR0ZPU2dwOHBnMm5icFZsSnFLMnFiQ3Y1ZDRHaGZO?=
 =?utf-8?B?ZmErZGdURWd3VUdoQzg1eFpGU0ZaNFFHNnozZitrR0tVSmUyZU42d1pzdkZ6?=
 =?utf-8?B?YlB6dUdhMllyOXFBN3Z3aEhlVUErT2IzNkgweW90SlNPQ2dqVjIyYTYxSXJW?=
 =?utf-8?B?THBvdUtkclRWMVBnWUdqcUFjZnBCUTl3djJBS21MQ3dHSmc2QWo3b3BWbjlt?=
 =?utf-8?B?VTltZjNwVkpTV2tGWE1XZmd5emUyZVpVSUtpbGtxb2FZVTVSUm56QithVTg1?=
 =?utf-8?B?MWFYRldaOGtjS3NPMzJhOCtMYlNMeE5WVEJSZ3BGNFJ5WjRWNy9qSDhBZFNW?=
 =?utf-8?B?bDFDMEV2RWxvWkFzWTFJeElBdk1qdDBXM3NkM1hBSnp3bm9oSTFTbWJORHJF?=
 =?utf-8?B?RXRqdk8rbHNuQm9DVll1V2FrYUZRNkpjYlJxR2lWR0JGSlRkUk9RdWZQMHFV?=
 =?utf-8?B?YXRqNkZSeU1LaTR4dE00OThvaWdZNkE2R0NvR0ljZ2FSZ3hGaHloejU1ZmRo?=
 =?utf-8?B?clZpOHg1NTlxNVJJZkxqYnU2QXRLVTdjaC9IQnAvQXBuS1RSVDdhekxaMnQ1?=
 =?utf-8?B?OVlwR2x4NnQrNnFzVlpSeW5mY2pWaGpyNmIzNHB0b2dCcE1tWk5MaktFMHBX?=
 =?utf-8?B?WXIxb21pRnpXNWVOUGpDN3pnQzgrQm9MSkk3WUhXbTY5ZnVERkNWTUptVXY3?=
 =?utf-8?B?ZHBrMndMcXNURXpBdzgyUmxKL1dmZSt6T3U0R1hSb1Z5SmxtWS9Cb2p4YlFB?=
 =?utf-8?B?M2ZzeUFDdGk4VVFPRmdPSjJCWEJBRjZnUHlMbDZxT3dSNVRzK3Y3YTRyRWZm?=
 =?utf-8?B?MHlnREJKU2IvUEJ0YmhGWkFsN0RiT0xJTkttYzYvbGY3N1Y0Wm52b2tNdUt5?=
 =?utf-8?B?eGdYTWlpZnlWOTBoY0RYbG9Za0VXNnpQaXpHdzQ5dXBtbFREdUsvaVcrVTgr?=
 =?utf-8?B?WGdWcTcvM2FrTzB5c2lWZnE5bWk1blhXN0tiTnZZTEMwQnk0Q0tyUlNFMlR0?=
 =?utf-8?B?Mkl0WUJNQUdmMUpWTjBYS1UxRHNaL3JyRCtqS0JUR0ZJZHZhZ2U1UVdyV3p2?=
 =?utf-8?B?amwrbE5CTDdJY2lEQXdPRzcwakVIazh1YmRQaTVBY0d2c1VvTW9qeE53aFRX?=
 =?utf-8?B?dDYrV1RKa093T215cGJzYk4vaVFIZHBTNVJZNnRrazkzMUJNNGFXRlN2b0Ix?=
 =?utf-8?B?anJnTk1iMzExbVJiZm90NDJBY0RISFZEYXA3UmNKdGVKaUw1WmI0eHU4aUZr?=
 =?utf-8?B?eTIyUXRpTHo2dTBxd0VDMnpCY3dwRkdNS2M3VWtTd3pmZmozUjB0RzVxQkxF?=
 =?utf-8?B?N0NIT2RJQlh5amw5ZS94VTVuY0t6V2hCQUd2Wk4vVTBqemRyVGM1VHhyRFpJ?=
 =?utf-8?B?MzFSZVVBaFU3TC9pakdzcSt5YTZncE1lQUMzWGVPbUpENEJQYUlpNGRTVjZX?=
 =?utf-8?B?Qi9GYmtWajkzeEwxNGh5UjZDU1o2a20vZXZ0SE1LYW1OWDFrUW5xR0NiTFpl?=
 =?utf-8?B?YUZvN3BadWNaYlo1bUwrMktNVno5YS91VDV0TDNwSHJ2NHBWdDVhN0JSSEYx?=
 =?utf-8?B?Z0ZkaFZiK1dPWEZpOUc5Yk1HeXVVSEcwaVY3TWtpbDIvRThFdTFSUGplVlNR?=
 =?utf-8?B?bW84QjVFRWRJK0ZVekxWQjg0MDFOVmVkSTE1ZXFaYUxhWFFLelFVbEsrQW82?=
 =?utf-8?B?bDNZTHg5aUp0SHVBWnN1aUJZcUtuY3lqUlNWVk56Sy90LzJZY2FJSlZ2WkUv?=
 =?utf-8?B?SzZqTHdFaEk5KzFncXBOSjlROWZibC9jVEprQTdVZ0p6cmhYUlB2REpWYjFt?=
 =?utf-8?B?QTJrQnhXdi96eFBOQTNaRmJYTnk1ME9BYnNXRWFZYk45YmYxN1o0OWNaZ0xn?=
 =?utf-8?B?NjRpbkVXaE9YTXdrWTRFMVZNY3p2cHRVNjVaY1FkWTFadUtSUldDQ2pFcERC?=
 =?utf-8?B?dmpzc2p3N2lhTnl1Q3ZvVGVNOFYvWHl6UXhHUS8rTHY2S3RHRi9QU3J2Q29i?=
 =?utf-8?B?dGlSK05OZHFaOWdaUUZjTUptSWt1VFBWaW92S0JpcmpOZGhFZ0VvN3BhZk5W?=
 =?utf-8?Q?2FB3d413LOeIz6gDcwM/08r3S?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1f9ed164-9550-46d6-0532-08dbb3758725
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 09:49:16.4326
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: vQX/aVmqiy2EflReX6RFiVLE/tcePnh0dJz0sc2cXvljaGOGmHkokwRfhYuc3ywKaWRGIfSOfJ95U+urE1Im0g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7906

On 12.09.2023 11:36, Simone Ballarin wrote:
> This patch modifies deviations for Directive 4.10:
> "Precautions shall be taken in order to prevent the contents of
> a header file being included more than once"
> 
> This patch avoids the file-based deviation for empty headers, and
> replaces it with a comment-based one using the format specified in
> docs/misra/safe.json.
> 
> Generated headers are not generally safe against multi-inclusions,
> whether a header is safe depends on the nature of the generated code
> in the header. For that reason, this patch drops the deviation for
> generated headers.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> 
> ---
> Changes in v2:
> - use the format introduced with doc/misra/safe.json instead of
>   a file-based deviation for empty headers
> - remove deviation for generated headers
> ---
>  automation/eclair_analysis/ECLAIR/deviations.ecl | 7 -------
>  docs/misra/safe.json                             | 8 ++++++++
>  xen/arch/arm/efi/runtime.h                       | 1 +
>  xen/include/Makefile                             | 2 +-
>  4 files changed, 10 insertions(+), 8 deletions(-)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/eclair_analysis/ECLAIR/deviations.ecl
> index d8170106b4..9313027af1 100644
> --- a/automation/eclair_analysis/ECLAIR/deviations.ecl
> +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl
> @@ -78,13 +78,6 @@ inline functions."
>  -config=MC3R1.D4.9,macros+={deliberate, "loc(file(api:public))"}
>  -doc_end
>  
> --doc_begin="This header file is autogenerated or empty, therefore it poses no
> -risk if included more than once."
> --file_tag+={empty_header, "^xen/arch/arm/efi/runtime\\.h$"}
> --file_tag+={autogen_headers, "^xen/include/xen/compile\\.h$||^xen/include/generated/autoconf.h$||^xen/include/xen/hypercall-defs.h$"}
> --config=MC3R1.D4.10,reports+={safe, "all_area(all_loc(file(empty_header||autogen_headers)))"}
> --doc_end
> -
>  -doc_begin="Files that are intended to be included more than once do not need to
>  conform to the directive."
>  -config=MC3R1.D4.10,reports+={safe, "first_area(text(^/\\* This file is legitimately included multiple times\\. \\*/$, begin-4))"}
> diff --git a/docs/misra/safe.json b/docs/misra/safe.json
> index db438c9770..e8e200cb0a 100644
> --- a/docs/misra/safe.json
> +++ b/docs/misra/safe.json
> @@ -28,6 +28,14 @@
>          },
>          {
>              "id": "SAF-3-safe",

Noting this, ...

> +            "analyser": {
> +                "eclair": "MC3R1.D4.10"
> +            },
> +            "name": "Dir 4.10: empty headers",
> +            "text": "Empty headers pose no risk if included more than once."
> +        },
> +        {
> +            "id": "SAF-4-safe",
>              "analyser": {},
>              "name": "Sentinel",
>              "text": "Next ID to be used"
> --- a/xen/arch/arm/efi/runtime.h
> +++ b/xen/arch/arm/efi/runtime.h
> @@ -1 +1,2 @@
> +/* SAF-2-safe empty header */
>  /* Placeholder for ARM-specific runtime include/declarations */
> --- a/xen/include/Makefile
> +++ b/xen/include/Makefile
> @@ -53,7 +53,7 @@ cmd_compat_h = \
>      mv -f $@.new $@
>  
>  quiet_cmd_stub_h = GEN     $@
> -cmd_stub_h = echo '/* empty */' >$@
> +cmd_stub_h = echo '/* SAF-2-safe empty header */' >$@

... there's the same off-by-1 here as there was in patch 1.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:49:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:49:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600232.935881 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg01R-0001P2-AM; Tue, 12 Sep 2023 09:49:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600232.935881; Tue, 12 Sep 2023 09:49:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg01R-0001Ou-7j; Tue, 12 Sep 2023 09:49:29 +0000
Received: by outflank-mailman (input) for mailman id 600232;
 Tue, 12 Sep 2023 09:49:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg01P-00015x-GJ
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:49:27 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a910de04-5151-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 11:49:26 +0200 (CEST)
Received: from [192.168.1.9] (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id EA7324EE0744;
 Tue, 12 Sep 2023 11:49:25 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a910de04-5151-11ee-8786-cb3800f73035
Message-ID: <baad5453-00b3-3a91-0921-df108b3c6d86@bugseng.com>
Date: Tue, 12 Sep 2023 11:49:25 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 01/10] misra: add deviation for headers that
 explicitly avoid guards
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <e78d0868a635fe9fba851bb8c2cfc80ba6d73491.1694510856.git.simone.ballarin@bugseng.com>
 <fb421d34-64d0-f9c1-e44d-d3622ac8c3b7@suse.com>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <fb421d34-64d0-f9c1-e44d-d3622ac8c3b7@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 12/09/23 11:46, Jan Beulich wrote:
> On 12.09.2023 11:36, Simone Ballarin wrote:
>> Some headers, under specific circumstances (documented in a comment at
>> the beginning of the file), explicitly avoid inclusion guards: the caller
>> is responsible for including them correctly.
>>
>> These files are not supposed to comply with Directive 4.10:
>> "Precautions shall be taken in order to prevent the contents of a header
>> file being included more than once"
>>
>> This patch adds deviation cooments for headers that avoid guards.
>>
>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>
>> ---
>> Changes in v2:
>> - use the format introduced with doc/misra/safe.json instead of
>>    a generic text-based deviation
>> ---
>>   docs/misra/safe.json                        | 8 ++++++++
>>   xen/include/public/arch-x86/cpufeatureset.h | 1 +
>>   xen/include/public/errno.h                  | 1 +
>>   3 files changed, 10 insertions(+)
>>
>> diff --git a/docs/misra/safe.json b/docs/misra/safe.json
>> index 39c5c056c7..db438c9770 100644
>> --- a/docs/misra/safe.json
>> +++ b/docs/misra/safe.json
>> @@ -20,6 +20,14 @@
>>           },
>>           {
>>               "id": "SAF-2-safe",
>> +            "analyser": {
>> +                "eclair": "MC3R1.D4.10"
>> +            },
>> +            "name": "Dir 4.10: headers that leave it up to the caller to include them correctly",
>> +            "text": "Headers that deliberatively avoid inclusion guards explicitly leaving responsibility to the caller are allowed."
>> +        },
> 
> With this ...
> 
>> +        {
>> +            "id": "SAF-3-safe",
>>               "analyser": {},
>>               "name": "Sentinel",
>>               "text": "Next ID to be used"
>> diff --git a/xen/include/public/arch-x86/cpufeatureset.h b/xen/include/public/arch-x86/cpufeatureset.h
>> index 6b6ce2745c..eac1ae4b2a 100644
>> --- a/xen/include/public/arch-x86/cpufeatureset.h
>> +++ b/xen/include/public/arch-x86/cpufeatureset.h
>> @@ -23,6 +23,7 @@
>>    * their XEN_CPUFEATURE() being appropriate in the included context.
>>    */
>>   
>> +/* SAF-1-safe header that leaves it up to the caller to include them correctly */
>>   #ifndef XEN_CPUFEATURE
>>   
>>   /*
>> diff --git a/xen/include/public/errno.h b/xen/include/public/errno.h
>> index 5a78a7607c..8b60ac74ae 100644
>> --- a/xen/include/public/errno.h
>> +++ b/xen/include/public/errno.h
>> @@ -17,6 +17,7 @@
>>    * will unilaterally #undef XEN_ERRNO().
>>    */
>>   
>> +/* SAF-1-safe header that leaves it up to the caller to include them correctly */
>>   #ifndef XEN_ERRNO
>>   
>>   /*
> 
> ... you mean SAF-2-safe in both code comments. I did point out the problem
> with the sequential numbering (and resulting rebasing mistakes) when the
> scheme was introduced.
> 
> I also think the comments are too verbose. I don't mind them having an
> indication what specific issue they are about, but it shouldn't be more
> than a couple of words. Here maybe "omitted inclusion guard".
> 
> Jan

Yes, you are right: I've made a mistake when rebasing against 
origin/staging.

I will wait more comments on the series, then I will submit v3
with the correct IDs.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:49:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:49:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600233.935892 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg01T-0001g6-K4; Tue, 12 Sep 2023 09:49:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600233.935892; Tue, 12 Sep 2023 09:49:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg01T-0001fy-Fs; Tue, 12 Sep 2023 09:49:31 +0000
Received: by outflank-mailman (input) for mailman id 600233;
 Tue, 12 Sep 2023 09:49:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6uSu=E4=cloud.com=kelly.choi@srs-se1.protection.inumbo.net>)
 id 1qg01R-00015x-M7
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:49:29 +0000
Received: from mail-ed1-x532.google.com (mail-ed1-x532.google.com
 [2a00:1450:4864:20::532])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id aa82e7c5-5151-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 11:49:29 +0200 (CEST)
Received: by mail-ed1-x532.google.com with SMTP id
 4fb4d7f45d1cf-52a1ce52ef4so6910627a12.2
 for <xen-devel@lists.xenproject.org>; Tue, 12 Sep 2023 02:49:29 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: aa82e7c5-5151-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694512168; x=1695116968; darn=lists.xenproject.org;
        h=to:subject:message-id:date:from:in-reply-to:references:mime-version
         :from:to:cc:subject:date:message-id:reply-to;
        bh=OSkpXD60mkMKp1LVoMvHl+kL8s8XTU2xlXGHwshSDAM=;
        b=APnStUGlZVHBA6WwjLIRmBRf1TYsKZ+J1CCRcNJtNa/oNFBU5eOIBT3pIqDAJevURv
         B5Th2kmlz4us8t6BJN1a1yGCqv6sqiZkKdHaFzAT3FCkIde1whAwsxB5NROOwgrBzVSX
         oVzz9GFvINBqDfODFEv1BgBS8DNmKp9/fJgnk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694512168; x=1695116968;
        h=to:subject:message-id:date:from:in-reply-to:references:mime-version
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=OSkpXD60mkMKp1LVoMvHl+kL8s8XTU2xlXGHwshSDAM=;
        b=DsDMc6k7uCayXbDTqbqhbLonJMJfCkpXANVlo1Q3e2LaQgDcvAnKzDZGPv7NQGwgYd
         uR9FXM72tf5vw+B4Ok07Phn9l0/eNGKGD2M/kWCFht+oQYo8nx9nfZWUlxKHqpYa09Yu
         GPAkI2EZp66/Nu9FVTctX0jFTnLERNSzOh3hxuWOIkjtpYYK8Q+QTzcZ3CgZUKiDU8Zv
         JGkC5CLkWShLKHpsT0o4cKRHk/OlernYt6XDIiYg2V7yO9XzURpWTZ8F+825wZ9a9o/D
         UUX1gK/amtf+esj4yxpvs6EDWgFK1iMSCPDGDhqJ7Bj2RP387v9fRxjt61WK0xcfeg5t
         tkfQ==
X-Gm-Message-State: AOJu0Yz97Nv3PYpsG7fq8YS8apqlp8lQix9ImL7SsjFQ0vLll4V9Ue9r
	bvDNUfDsC8rGam9POkIJXsrRffurvyY6Sj+cuY1J6g==
X-Google-Smtp-Source: AGHT+IF7XzCl2BgjK+0G9+wV4YYA8f6eAw6Q6zFHHNK+tmRPx6gwzLEuyxSlAIxeFIoJLbom4aA3ZWD62c9/cFEPITI=
X-Received: by 2002:aa7:d806:0:b0:522:3849:48db with SMTP id
 v6-20020aa7d806000000b00522384948dbmr9618039edq.3.1694512168579; Tue, 12 Sep
 2023 02:49:28 -0700 (PDT)
MIME-Version: 1.0
References: <CAO-mL=zvA8WYjPoKM2t961dEC3unb_eHW=GNLhkX3Gra3Hoi4A@mail.gmail.com>
In-Reply-To: <CAO-mL=zvA8WYjPoKM2t961dEC3unb_eHW=GNLhkX3Gra3Hoi4A@mail.gmail.com>
From: Kelly Choi <kelly.choi@cloud.com>
Date: Tue, 12 Sep 2023 10:48:53 +0100
Message-ID: <CAO-mL=z7nx5KQ7Y3XejYNW+f+NSYFCmOrYxAsS4_rbo-pBhPtQ@mail.gmail.com>
Subject: Re: Documentation survey
To: xen-announce@lists.xenproject.org, xen-users@lists.xenproject.org, 
	xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="000000000000e045de0605265b50"

--000000000000e045de0605265b50
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Good morning all!

This is a reminder you have until *Friday 15th September* to fill out the
documentation survey below, if you haven't done so already!

Many thanks,
Kelly Choi

Open Source Community Manager, XenServer
Cloud Software Group


On Mon, Sep 4, 2023 at 1:48=E2=80=AFPM Kelly Choi <kelly.choi@cloud.com> wr=
ote:

> Hey everyone,
>
> Hope you've all had a good weekend!
>
> I know that documentation is an important part of The Xen Project, and I
> have received feedback from a number of users on this topic. Currently,
> there are some barriers to entry and improvements that can be made.
>
> In order to understand further, please could you answer the following
> survey (~5-10 mins) on your thoughts around the existing documentation.
> This feedback will help achieve a plan of action.
>
> *All responses will be anonymous. *
>
>
> *https://cryptpad.fr/form/#/2/form/view/aIaNqMdkkV85YkQSzM0+ddwMY36XSTf+V=
l3k2APoP-U/ *
>
> <https://cryptpad.fr/form/#/2/form/view/aIaNqMdkkV85YkQSzM0+ddwMY36XSTf+V=
l3k2APoP-U/>
>
> Many thanks,
> Kelly Choi
>
> Open Source Community Manager, XenServer
> Cloud Software Group
>

--000000000000e045de0605265b50
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr">Good morning all!=C2=A0<div><br></div><di=
v>This is a reminder you have until <b><u>Friday 15th September</u></b> to =
fill out the documentation survey below, if you haven&#39;t done so already=
!<br><br clear=3D"all"><div><div dir=3D"ltr" class=3D"gmail_signature"><div=
 dir=3D"ltr"><div>Many thanks,</div><div>Kelly Choi</div><div><br></div><di=
v><div style=3D"color:rgb(136,136,136)">Open Source Community Manager, XenS=
erver</div><div style=3D"color:rgb(136,136,136)">Cloud Software Group</div>=
</div></div></div></div><br></div></div><br><div class=3D"gmail_quote"><div=
 dir=3D"ltr" class=3D"gmail_attr">On Mon, Sep 4, 2023 at 1:48=E2=80=AFPM Ke=
lly Choi &lt;<a href=3D"mailto:kelly.choi@cloud.com">kelly.choi@cloud.com</=
a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0p=
x 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><d=
iv dir=3D"ltr">Hey everyone,=C2=A0<div><br></div><div>Hope you&#39;ve all h=
ad a good weekend!</div><div><br></div><div>I know that documentation=C2=A0=
is an important part of The Xen Project, and I have received feedback from =
a number of users on this topic. Currently, there are some barriers to entr=
y and improvements that can be made.=C2=A0</div><div><br></div><div>In orde=
r to understand further, please could you answer the following survey (~5-1=
0 mins) on your thoughts around the existing documentation. This feedback w=
ill help achieve a plan of action.</div><div><br></div><div><b>All response=
s will be anonymous.=C2=A0</b></div><div><b><br></b></div><div><a href=3D"h=
ttps://cryptpad.fr/form/#/2/form/view/aIaNqMdkkV85YkQSzM0+ddwMY36XSTf+Vl3k2=
APoP-U/" target=3D"_blank"><b>https://cryptpad.fr/form/#/2/form/view/aIaNqM=
dkkV85YkQSzM0+ddwMY36XSTf+Vl3k2APoP-U/=C2=A0</b><br></a></div><div><br clea=
r=3D"all"><div><div dir=3D"ltr" class=3D"gmail_signature"><div dir=3D"ltr">=
<div>Many thanks,</div><div>Kelly Choi</div><div><br></div><div><div style=
=3D"color:rgb(136,136,136)">Open Source Community Manager, XenServer</div><=
div style=3D"color:rgb(136,136,136)">Cloud Software Group</div></div></div>=
</div></div></div></div>
</blockquote></div></div>

--000000000000e045de0605265b50--


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 09:52:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 09:52:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600269.935919 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg04R-0004bI-Hl; Tue, 12 Sep 2023 09:52:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600269.935919; Tue, 12 Sep 2023 09:52:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg04R-0004bB-Et; Tue, 12 Sep 2023 09:52:35 +0000
Received: by outflank-mailman (input) for mailman id 600269;
 Tue, 12 Sep 2023 09:52:34 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qg04Q-0004b1-12
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 09:52:34 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on2061e.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::61e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 181fb98d-5152-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 11:52:33 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB9094.eurprd04.prod.outlook.com (2603:10a6:20b:445::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Tue, 12 Sep
 2023 09:52:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 09:52:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 181fb98d-5152-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=X+9L5H8I3KC7+3OB23SKtwDLH4VDyTZYILYZrsF3srIrN10q6w8WOjrgaArmNAIIGsDy4p7n6oXXWaCyEuE+X2kvgS7EKkl2SP4cJum2pmRqgBfpb8GP+LP08+EZJmuGeKGOJPmbdiZapFqDc/bn5kLf+xwm6TdZZMr9/+bNQ2dR6U3uoZgtx865y0NjtN/E3fcLFb2Mp8vIZeLffKoONzardzioiYMRSc7LNdSOb9e4NWcHcOfV7AloQu7pETwNqaiYO+zkq3yMO9CsN8ukxsxNDeMLCq3pYDnNY3qC3Wmjfoz1Ssvdv/cp7UZ55U9W+2ffXA7CLN0GPWTmK5SGHA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kyfZFT+ww7j8a9XO3nrVepzJpy8ee/cFHlrJUwfkBpI=;
 b=Fz+dfeI5MH5yxcJ9+eXulBYNeXQrD4vyqF4Sv6ryiamRJeZu4X7P2z4+epKzYd8uclZ+CnSHTASSiV5ZBOZsxxg3GMraE6uc1m5D2UsHdIpWOg6VTUnEsVYoPcLw9A6ppx5RkTFYbddCDjXqHISniSHGjfQRi/ZcD6AbkNwu+O6fIRpE+R5i5glBRYjUvzFHF8fSLLEJtz6aKSbtEZMfi2weQGxJNxNwhrjZZefzvvuBqWrWb6Z1eNHSYo2J+iWOG/G8fG8ovDLLFir5DyqWTcZhUFCmyxyewvufRVbAFxM0x7LqOg2PKtkwNQyt96QjyxwhPSqGuZ1eSWeR4kQ+MQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kyfZFT+ww7j8a9XO3nrVepzJpy8ee/cFHlrJUwfkBpI=;
 b=Y75B/njBJy8ULiGw8uxZs7qLq8m3sy4YChjiYbedGvPvEnVUp6oyw+vnPjmHIvJ7f1tRC6NcSouTEy7jDMHYW2bwTi5AlR0JM7slauJGfn3Pr6CKHlDn5p+KGDysZYBYvN6Ia4KS0owppEQcoTwITKJCOCmuSfEWuClsZkXkXiunFrCMT/7l4B0krfOtaxw6scWbzcdmkj1wcJyYhvwc4LOo3Aucsh/pou5Ye0YVqH5hnnFsXxCABPzstURZqaCpgVlcuXHJSWouVJee+oZMMrppI2AtXONx5Nio2+MvM0ycnye7kczWIDe7JyQZ94M1oURd6ekLioGgMan7P5GJOw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <50e33371-8dc5-d4cb-a606-72d1ab005c21@suse.com>
Date: Tue, 12 Sep 2023 11:52:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 03/10] misra: add deviations for direct inclusion
 guards
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <0c1fb82b539d939e7c6655a9a8f3d7fe8b213cef.1694510856.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0c1fb82b539d939e7c6655a9a8f3d7fe8b213cef.1694510856.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0092.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB9094:EE_
X-MS-Office365-Filtering-Correlation-Id: e3466589-5579-4e7f-dc71-08dbb375fb06
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	J9NjiaNSX12OPAF4zj0A5TtpYYIPrhSdyzcB8gpsYGtNV2IYtZH8a8L1Invvj9/MLtbyUOa1SXb1rYxD4pQjo9hbAy0U8WvEbwLE6qBWTZguJNGYn0xvuYsvXGtDndT6jKedD7qHyoep8SgI8POyMHxIftMY7djgZMgJuA52fWm8eSFMA9QF9k3s12DhnrYURlfGX1zUy/A07RiF4tc1FzXCtb22mLzn4G+7POXPPPU5u5dnikKdCHskdMNRHMTIW97/S0KrhJRA0tbVbtKOdRWroHMshKfxx4LKWqzCdGUOMIAAVmuxAGTTWOhm5QYMZkskSCMca2B7FdhXupdDZM5KM22W/IXEapWEvtqDPugHTyhuUexHjGJOkmJKPth1Xw/pFOjelYM2CmWs+/Kvb/CXM1vgao3HqZAyR2HDHIsNbN9RJKAZqkjcdq/oCPqa5K6LmpEkgd8tOhuPifBVbFrONmzehnIxj7fGA2Os5DcJQqxjOzfwxL9ak17s773vOQP2hNQpmIgxHP+SDWX4z+WZdz3+z/Oh/S/LNv2erk1KtFN6L8y1f8NuJgrlUHZbVAl2a987Ypy2zprRxNdpmraMmhM7KV8EFlUp0Tk3ARvZDSEixXZokaYceusskgWVjWx3ZYZOq+WRCcvCRaw7bQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(136003)(396003)(366004)(39860400002)(1800799009)(186009)(451199024)(6506007)(2616005)(26005)(36756003)(6512007)(38100700002)(53546011)(6486002)(31686004)(478600001)(41300700001)(66556008)(66946007)(54906003)(6916009)(316002)(8936002)(5660300002)(66476007)(4326008)(8676002)(7416002)(2906002)(86362001)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YWNYVXpnaFR5R1VKdG5Od2l3dm5kYklnQkFSQk5mTFhDeUcrM3U4Um9FSFJv?=
 =?utf-8?B?VlZhM3M4TG9TZ0J2SW5PY20rbjRINjdRbmcxb09DME84UGc4SHo4cUdXbjN1?=
 =?utf-8?B?OGFpemZrTGpBQ2RWa0Q1aFlHODVQL0dKdlc2K1lLaVhzUytXL25iRDU3NzQ1?=
 =?utf-8?B?bWZrRjJ0TU5sV2toaXZqOGhUeWlPZi9pcC9hV1pPbHdyOWtVMkViRGFtaDVp?=
 =?utf-8?B?RTVSbTAzeUNxR2Q2aEN5VkJtbEJmNGEreWhLb0lzWDZuMmR2akN4YTAvVVVw?=
 =?utf-8?B?dm5jYXMzYXpHVTFlYWZibTZsMTV4MmhxOFBPK3lzY0Y0UWNsNWF3eHFjSlJs?=
 =?utf-8?B?R21VQWFEay9mcXl5aC9mU1FTeE1MdytFc0NaelE1SWJmU01VVGhYM1BXUFNJ?=
 =?utf-8?B?SlBUSFUreDBVelVzUzhxQVVNd01oZjI4VVQvUVBGWHhjZHFBOUJhZWdoU1Bi?=
 =?utf-8?B?dnR3VXVUUHJMck4wc2wzTC8vYzZkcXlid1pENUl6dHgrcTRqNFZBMHZwSWUz?=
 =?utf-8?B?WmE2V1VIMXRXczNVV2dCVUNHRkFMaldoL3Fpb3BKL0lGNzJXanp2SjM0YVVh?=
 =?utf-8?B?bS82c0dLZ0ZPQTRObm1qTVhHa0pEdFNJcU1ua2dCd2NKN05xdllBYjBTMWI3?=
 =?utf-8?B?RnhERGpjck1LMHZha3M5RDkySGNLVWZSSHV1NUQwRHo0MlZoU1A5eENXWGps?=
 =?utf-8?B?WjNuaE9GN1l4c0crN3dpTlIrTlRUbjJRVURkMnBnZUFyZktDcFJFemJSU3R1?=
 =?utf-8?B?VjFxM2t3cDBNb01MSE9oR3hWelZiVE42bnhtMHM2ZjdZVTcwa20yalJUanMx?=
 =?utf-8?B?Ui9BWDhiMC80QU1sN25tSzF5bEs4QzAyR2ZDcXNidmw1SUVwNUViRU5rNHkw?=
 =?utf-8?B?VUFOM0tjVGlwUW1hUlFTMHIvd0RVYUFLM01TbHM0YXBaZjJ1YTBWQmlnemdK?=
 =?utf-8?B?eHdiM2hHa3d0Wm8wQytkK25pT3BmcTdwbkIwaGNVQldCTGZ4Q2p6ckpkcjZr?=
 =?utf-8?B?UEYzMkEvMkpRT2ZrVjJXRGFhWXQvNVJEa0l2bHhpOWQ0UzV5MnJJRmJMMXYz?=
 =?utf-8?B?OWYvV04xUGU5TWVtK1ZraHkyR3JjRU5oeGFwbE9ULytiUTYvV0xpUG96NHRx?=
 =?utf-8?B?MHlWR1ZVUWRJOVNhMWJ4Si9qNDFuM00zVDV4ajByZVVjdlRvcFBxYXdCM1Aw?=
 =?utf-8?B?dmNVUENxckI3NjVsRUh4VlRnTkNOQWZKN0hYYlJxY0hnWWM5cXVOczNHT2dv?=
 =?utf-8?B?UFBMTjVmUFBrL0N6ZTQxUUg3QjhmRWc5MEpKbmphNVcrc1AvUDVWbTJ4WHFk?=
 =?utf-8?B?TG5ISyt2blFkbTV3WjdGUDk5TGtmTmZjVlFGRXRlSHljZG9qb1JZeWtvWHZy?=
 =?utf-8?B?NWlXaDlnUVcrSmxCQ0NFcUFwZk5DV0Q4UlVFNlBDc2xQckR2ZWZWY1p4dmtr?=
 =?utf-8?B?UUZZM1Rtcml3TW5naEliSEtMWGJxUXd2R1ZoaStkNjcxWXZxc2RGUDU5ZlJm?=
 =?utf-8?B?TnIxZmtqdVl0NkV3cHBvMlRsVmxqb2dhcmdxd25Dc2N1dWRPeE9nL0owVGVP?=
 =?utf-8?B?WGVpVU9XVDViMkdwcHczbHRaVDMzaHRpQUhySHMwek1QcFVZcTU0dmw5b0V5?=
 =?utf-8?B?SDhGY3I3Z2pMYmhVZHd1YmZTZHNYSkRVR1Q2bVFCc3hjR2Y4ME1ha3JmSzNM?=
 =?utf-8?B?SmR0NXk1ekU1Y2FRM0h1OEYxNTBkTHliQ1dPdkdaS2ZRQk5PNEtacDJ3NldB?=
 =?utf-8?B?R1BUeFRjOGV4UkVqRnJXMUhlckFRL1RqVlFKV0tsNzN4YlV5MEdyQWNrOWlq?=
 =?utf-8?B?dDNLOFJ6MUZBYjh6R1NBTEpvbXVaNExRNHhYMVNwVzJ2TXEzSDRsRE5qdVA3?=
 =?utf-8?B?OE9jMzRWbVRacUQ1YUxicnNCSVJRS2dvUnNmUjhnb1V5aStBKzZlajZsV3F3?=
 =?utf-8?B?bHNmVi9UZHBwMUs1RDF3WGFkVElCT2RkZnhvQm1OYktjbE4yNE1nL014ZUtR?=
 =?utf-8?B?dzVGMW50VExmU01GcHZuYkFKdG5KNzNLMmpMYk9JTFUzSHY2RnRCSGI0aHBP?=
 =?utf-8?B?bXFtODgrWjZFZjFaZjI1NjI3VjBIRUxSVG1MeTdCbE1tNEpSMnpVM2xDeGtw?=
 =?utf-8?Q?CYirALSaAooWbDH1TGBRnESL8?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e3466589-5579-4e7f-dc71-08dbb375fb06
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 09:52:30.8495
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tpEFua1vUF/gJFMLZN1VCgqtev00Co6x3ZBPDVXJdjxKxIuwOLxtbLGLVfK56PA3o1Sd4Meo1JAacaiFqRuwRg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9094

On 12.09.2023 11:36, Simone Ballarin wrote:
> --- a/docs/misra/safe.json
> +++ b/docs/misra/safe.json
> @@ -36,6 +36,14 @@
>          },
>          {
>              "id": "SAF-4-safe",
> +            "analyser": {
> +                "eclair": "MC3R1.D4.10"
> +            },
> +            "name": "Dir 4.10: direct inclusion guard before",
> +            "text": "Headers with just the direct inclusion guard before the inclusion guard are safe."
> +        },
> +        {
> +            "id": "SAF-5-safe",
>              "analyser": {},
>              "name": "Sentinel",
>              "text": "Next ID to be used"
> diff --git a/xen/arch/arm/include/asm/hypercall.h b/xen/arch/arm/include/asm/hypercall.h
> index ccd26c5184..24f8c61a73 100644
> --- a/xen/arch/arm/include/asm/hypercall.h
> +++ b/xen/arch/arm/include/asm/hypercall.h
> @@ -1,3 +1,4 @@
> +/* SAF-3-safe direct inclusion guard before */
>  #ifndef __XEN_HYPERCALL_H__
>  #error "asm/hypercall.h should not be included directly - include xen/hypercall.h instead"
>  #endif
> diff --git a/xen/arch/x86/include/asm/hypercall.h b/xen/arch/x86/include/asm/hypercall.h
> index ec2edc771e..dfdfe80021 100644
> --- a/xen/arch/x86/include/asm/hypercall.h
> +++ b/xen/arch/x86/include/asm/hypercall.h
> @@ -2,6 +2,7 @@
>   * asm-x86/hypercall.h
>   */
>  
> +/* SAF-3-safe direct inclusion guard before */
>  #ifndef __XEN_HYPERCALL_H__
>  #error "asm/hypercall.h should not be included directly - include xen/hypercall.h instead"
>  #endif
> diff --git a/xen/include/xen/unaligned.h b/xen/include/xen/unaligned.h
> index 0a2b16d05d..190ada7800 100644
> --- a/xen/include/xen/unaligned.h
> +++ b/xen/include/xen/unaligned.h
> @@ -3,6 +3,7 @@
>   * without faulting, and at least reasonably efficiently.  Other architectures
>   * will need to have a custom asm/unaligned.h.
>   */
> +/* SAF-3-safe direct inclusion guard before */
>  #ifndef __ASM_UNALIGNED_H__
>  #error "xen/unaligned.h should not be included directly - include asm/unaligned.h instead"
>  #endif

Apart from the recurring off-by-1, will this have the intended effect of
Eclair still choking if there's then no inclusion guard following these
early constructs?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 10:00:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 10:00:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600299.935928 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0Bq-0007cu-E0; Tue, 12 Sep 2023 10:00:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600299.935928; Tue, 12 Sep 2023 10:00:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0Bq-0007cn-BO; Tue, 12 Sep 2023 10:00:14 +0000
Received: by outflank-mailman (input) for mailman id 600299;
 Tue, 12 Sep 2023 10:00:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qg0Bo-0007ch-Jm
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 10:00:12 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20606.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::606])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 28c7b381-5153-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 12:00:10 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7409.eurprd04.prod.outlook.com (2603:10a6:20b:1c5::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Tue, 12 Sep
 2023 10:00:08 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 10:00:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 28c7b381-5153-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Xy0K/KOyn8aam4xs9AQW0X8Oo6v8wVRZBxgZmzS5nkgM1tdbqSWC3Gkz/73wH2z4lvoErkBSccPLHXH0bkkxcR1zwN+w57zagAir+RCCOeBurTUNmPY5KRfc0YhHX23nvwKYmFPLcJGLrtt1nPSbSsOmomlrbjV2cQKxLZZOI05BnEfu2VFamvK8Wy0qwXn3LT2LXEz5JttWVXCuIt5yqGHqOMPmepeMaoOwdfKan8r8a6daWgQaG3nGZkC/PuhzOpbvol7FrV6a26YZv7o9Pp+/a09I0BPym3F+1rQM/c7+weHBn7slaEK2TQWeQShelte7p1vwW/bA2m1w6M0qew==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Dfq6+z7cHpZGHCVA9Ojrv0NxQHhu1cDK4S/z3KgFqFI=;
 b=aA7aBH1KIOlr2vX33E7+G5kZo/97Z9kNpc1hnX3s0QyrATvJSj92Uvresucg3tKxFi35/xUgroYvjni9je+eg1meQJ09py6RFM+NOCDj0tBPvIjDLHvvQa0HbHaL9lpQzKwZ1kKHFPuTefINvDip6UgzSKlSiwZu2tD2qDNPz/IatYdQCsEHPe2m9ky+QyYZbetwgr5iQU29MwT0DzeESVAPXk6ym3U9T7za0WmWsceN3/Eq4UbhEozooAtxw7VP94ZfyaV1YQY4Li98kykEll5alaBQkrnBKoXPaAQhWppkXKbwOpZef9jHnmZ0/+ssVBpVrC7JZMOUe7n7r60o8g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Dfq6+z7cHpZGHCVA9Ojrv0NxQHhu1cDK4S/z3KgFqFI=;
 b=FBIkO3f9+COJT6tf/9cDJzkh9/Oh4ZkRamV4SiGxlmBDS4nME5sb+7eGX+LKUG0fWF0ZU8H3zKEpHWBx32BI+AhvPzVC0OA0gfQumtAT/D4jUrvHQIjDGC9olRKZgPqtwQXWX9LT1jmpOd7vyS7cVSAK3tQYItHVffOsMfmQcAgtEcGVjRCGtDZ9nfV34+mn2iDrHqZkZuZsTV4cbrOcdhIIxsNvxFWlTo9Dt/+mIvEKAo5Z3tGGjKfj1Wwa4dgfIT6SACd1vvhsl0/5GVweqmhlM4VDG66uy3GczD9I8O1BQKEOQVkC12L2KFwNm9mWjKk3YNYPCZR1KTReTZxJKg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c1c3bfcf-42dc-809b-4763-d689ff23d15f@suse.com>
Date: Tue, 12 Sep 2023 12:00:05 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 06/10] x86/EFI: address violations of MISRA C:2012
 Directive 4.10
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <eced0ebcd8f96d87ccab0e4008e0f752121273de.1694510856.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <eced0ebcd8f96d87ccab0e4008e0f752121273de.1694510856.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0078.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cd::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7409:EE_
X-MS-Office365-Filtering-Correlation-Id: d27f5e7a-2274-4be0-971e-08dbb3770bcc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	aM/XPd1I+39xfjD0+ScC7iyzBf4nfWR1IalAyjIEu6HQCELL5rcdWVQnAtzFHUo+6LJoP8vA9QGYGLbMeQu/htrglFFV8qxJ99aV0jrvBQBYOjT3X0zm3Z95vi/dl4QOxNdk1bNjyjr6tZ2qZChSMS4Rzr0i+6GfL9Xaoq75jxySy9/15WpbOOd0c3Jy9aoHAmWIn2xGzzq8ucvtR6vLxDKLnibBIfruQKro6w6LvQPJNvIRhZoZw4KH3m6DODG1MhIGlBUP32Qa3KCc+bpKMdw/yolgk9e9NeRk+jM0L7IXadCHyZMzr9lWUAIhuSlR4bLFIoj5L799xj+umncMRqoHRmeItxr60mGOu+/QtrcBQQu3TsK1q+QzPbLdeesCrqrfBFJwltL0WHwPXqVo2icbgBld1v66xyGgBOqPA/3dozVDxlqAcjPvsvC+7P69IZSxCQYT/nYt22mhYTB2AovFMz09rW6mzt6a7xlY+LfqHIOlU1m8RsY6DRCbh3rtNjqSGMvH7fiCfrBsZ86KD6j72waFEnaJzcSOaq2lTpgrl1fJYyIPbFbuerRHUtXh8MeEerRUwqL/AqexnE9WtOe9DOMiU1DoSdtHXZFyO1n1TKQx9mxdRZNw5U1Z4/XHfTgRDwS4DijZO5se7PjhtA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(366004)(396003)(346002)(376002)(186009)(451199024)(1800799009)(6916009)(41300700001)(316002)(26005)(31686004)(2906002)(8676002)(66556008)(66476007)(54906003)(4326008)(66946007)(8936002)(5660300002)(478600001)(6666004)(6486002)(53546011)(6506007)(6512007)(36756003)(2616005)(83380400001)(38100700002)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ckxnQXYwdjJOZzhuWVhpMVQvdnBBNWpKdlhNUk5TS1Z0UXJwdHZmTVQwOGVC?=
 =?utf-8?B?aHlFOFJ0VzhnQ3dWTk9vREMrekQ4N3JnR1ZLUHRsT2lVWlVMQlVEaUVQblky?=
 =?utf-8?B?WkltaEhTdTlMbUFJNEszRFBSK3VnazMzNzVWclpiTWMwOXdtTWFEMGs1ZHB5?=
 =?utf-8?B?a29FanZrcUxQamh5YjNJb3VzY3RGN2k5ZUhxQXRYeExsVTR6RWtYNFJwd0FS?=
 =?utf-8?B?L2JDY2NQSzhFL1Yvc3pkbTJGb1pOdmxjVktUNkdMcHRmdGRpUS9xbFNoYzI3?=
 =?utf-8?B?Nm1nbEhiSTFwM2t4T1o2RFdJTHZTNzBaQ1NBVnF3TnBPQ2RRSzgwRWlTOWw2?=
 =?utf-8?B?VXJIaVgrTmN3MUhNanRMTURlOVhyRmRCR1pwdjlzUXBSM0dsY0hTa1ZMRFZO?=
 =?utf-8?B?L3BMalJUenRiUnB1WGQveGpxZzdqY3FCc1RsT2NPYmF4Tks3TzVGWjV1c2xj?=
 =?utf-8?B?dWUwc1R5bFBBQjE2TkxKVEZjVEpCaE9WUGhEVGFENGlSUk9hZ28yR2ExQ0ti?=
 =?utf-8?B?ZldyUkdYenZJUUM1WlRxbjVmTm96dGk1bVBiZzRGQlFOWmhyaTJMa3NEczRp?=
 =?utf-8?B?NGpsbWViSkhERGl2WFpvSVBydlhpRTFNRGxtc2djems1TkoyZG9GSTRkbk80?=
 =?utf-8?B?TDRTd0tReWkyck9qeTJpY0pPZ0cwMTJtcFZXMzVPRkRjWm1pT2hoUWpPRmpp?=
 =?utf-8?B?V2hFZXlubnIyVmMrM0xLaURtY0hlNWxGU0lUaThnZSsvUW43a09pNGZEV3B2?=
 =?utf-8?B?Qk4xL05zcWlmZUk1TTJUSERwL2N5bksvc0RlQzR1RnV2L2U3azZyVERRSVNC?=
 =?utf-8?B?NCt6b2dWVmZiSi93VkdJRTVUWTNuTEprbENRSUswKzVQY0QzcXUzNjE4L09q?=
 =?utf-8?B?OUxDaldMWURJejh5cjFiSko2YTlBUXZMZGtDYlNWRlRqdTRNaEFNWForQzh3?=
 =?utf-8?B?RlhTYzFVOWVwbGdqNTlzdFBoMVpWZmx1a2dwZVBwdE00WkNGYnZaNU5BdnFy?=
 =?utf-8?B?OEJlcTY2MlVZdFFJK3JSZ1F1YnU4Z3BPUXVRVGROdUJCdEdsaXd3TE4wM0Vs?=
 =?utf-8?B?Slk5Nmk0T1U5RlMvUzZaUERCaDR2RHlPYmRTSVhjSmN3bndaSUtDZTVRdXh2?=
 =?utf-8?B?czRiTGpzQXgzck04UkhHSnNmbzQ5cVk4SnNobTNvVDJiUFNOQTR3MmRNSi9Y?=
 =?utf-8?B?c21UdGVjclRKRlpXSC9yNnlMdkVwSElobjlHOWI5SDJ2ZXFrSDlRQ0dnTmVs?=
 =?utf-8?B?Mm16WmN3YlUrdUVoY1hxZGdBMEhOaHpXMlkyaXArUmRlUzlJVmZiTHlucisw?=
 =?utf-8?B?b08wc2twb0Q1S043U2VrY3BOeThHMTkxYkpGN3U4ZmJzVnBDN0hzM0pIeVRa?=
 =?utf-8?B?RjZmR3lOcFRsZkRoMld1WE5UZy8zY0d1cnF0TUQrM1ZLTXdPazg2T3Z1cEdr?=
 =?utf-8?B?SjUvTTczS09NN0VoM2tkZGxDRG4yY0VoSFZ2Y0V4SkpqRnRXclAxLzlTZ29a?=
 =?utf-8?B?WVNKRk9yN2dhWEZ6QTNtMUFiMktBMjE1U1JzcngvbkROYTBFeGhwcjRJakk0?=
 =?utf-8?B?bW44ZS9iNFRJV1VSTHhBN1dKUFNyZWp2RFFVNnpMMTViL0R5ZkRTUzlpbW55?=
 =?utf-8?B?dVlsR2xHUnU3UEsxdjdRN3dFay9zVnJFMHo2aG1yQk1kSXJqYjBTWFU1VmRY?=
 =?utf-8?B?dUtESEI2R0NFbjlvTjRaRURIalduWElVdGZCRTJaZEptdWZrenRKdEZVQmxs?=
 =?utf-8?B?azdMcnZwRmJudEhKSHRYZ1NZRHUyczk0SEtFNTFoOURCVXFObENZcy95ejhB?=
 =?utf-8?B?bjQvNVdteVlvVUtlRWxmcEkyODhQMGZJN0NvelRxTElqOVlSN05HV09Lb2hY?=
 =?utf-8?B?dXpPZVlCV0xVMGZKVlhYNFhCaWpWUjI3cFNmRDRKNWoxTjdkcDhpRCt6TEdY?=
 =?utf-8?B?aUdpdjk0MnVlTENmdlc3SzZYUG9lclNwdDhRV1hUR3pPVmhyRlhuakpvRDlx?=
 =?utf-8?B?ckJ4Q1ViMktXc1gxOVNwY1lvNTVqMDdVYS9KZHFlUEI4MUtiQmdFUzZoT2VI?=
 =?utf-8?B?ZmNOZmxhRCtqMFdhTmlGaG5YNDRZdFdPUDdYTktMSy9Ddy8zcGRtZHEzNUE4?=
 =?utf-8?Q?M3IGX1a6q78Gv+p0bih9WQPmp?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d27f5e7a-2274-4be0-971e-08dbb3770bcc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 10:00:08.4670
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: oOR+pr7AyWlNQ4HAFd9j98y7d5o5Ezra4cTtzlEs61wErCfSC+uua4jQaOgczPCTigA9VSfpioOrenQCSF0rng==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7409

On 12.09.2023 11:36, Simone Ballarin wrote:
> --- a/xen/arch/x86/efi/runtime.h
> +++ b/xen/arch/x86/efi/runtime.h
> @@ -1,3 +1,6 @@
> +#ifndef __X86_EFI_RUNTIME_H__
> +#define __X86_EFI_RUNTIME_H__
> +
>  #include <xen/domain_page.h>
>  #include <xen/mm.h>
>  #include <asm/atomic.h>
> @@ -17,3 +20,5 @@ void efi_update_l4_pgtable(unsigned int l4idx, l4_pgentry_t l4e)
>      }
>  }
>  #endif
> +
> +#endif /* __X86_EFI_RUNTIME_H__ */

Leaving aside that I remain unconvinced of the usefulness of these in
(at least some) private headers, I think there's a naming issue to be
solved first: How do we distinguish guards of headers in xen/include/
and xen/arch/*/include/ from ones living elsewhere? If we don't set
forth a rule, the guard above might be re-used in a hypothetical
xen/arch/x86/include/asm/efi/runtime.h, with potentially interesting
effects. At a first glance it might work to simply omit "component"
identifiers, i.e. just use __RUNTIME_H__ here. Provided suitable
prefixes are used in all non-private headers. But I may of course be
overlooking pitfalls ...

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 10:03:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 10:03:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600305.935939 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0Ek-0008Dw-SU; Tue, 12 Sep 2023 10:03:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600305.935939; Tue, 12 Sep 2023 10:03:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0Ek-0008Dp-PO; Tue, 12 Sep 2023 10:03:14 +0000
Received: by outflank-mailman (input) for mailman id 600305;
 Tue, 12 Sep 2023 10:03:13 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qg0Ej-0008Dh-Jv
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 10:03:13 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qg0Ej-0002e5-9F; Tue, 12 Sep 2023 10:03:13 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qg0Ej-00030I-1x; Tue, 12 Sep 2023 10:03:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=u9xEYcPGxDMscrMJEr54KeD+W25FcsVlxHma95xRNHw=; b=EmrKei/opY2QVm6ntITxT2gCzd
	c+1vE9aZmpEiLeXVFSkfwrXvwK5LgeuXHgMBCb3UWjkuO1+3xHrc9hPnyXuS6qvPXwaZjxzICs6dK
	IfcQeQ64FGbY8FejXZYxFiL6fK2MUzoelY+pObiAXsn2Nh73+rB9/PFYFh+Yuf3qiks4=;
Message-ID: <6ca62546-8626-46ab-85bb-8e96e466251d@xen.org>
Date: Tue, 12 Sep 2023 11:03:11 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
Content-Language: en-GB
To: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911123401.27659-1-michal.orzel@amd.com>
 <366e89e3-bc3d-4c54-b1ad-8147abbabdc7@xen.org>
 <042fae56-e8e2-c079-2686-d27c5469b7fc@amd.com>
 <e24a7d3a-ca18-474b-bce2-84b97512c58e@xen.org>
 <faf253c3-2c99-9380-c120-a2dd3110b796@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <faf253c3-2c99-9380-c120-a2dd3110b796@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 11/09/2023 16:09, Michal Orzel wrote:
> 
> 
> On 11/09/2023 16:48, Julien Grall wrote:
>> Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
>>
>>
>> On 11/09/2023 15:01, Michal Orzel wrote:
>>> Hi Julien,
>>>
>>> On 11/09/2023 15:14, Julien Grall wrote:
>>>>
>>>>
>>>> Hi,
>>>>
>>>> On 11/09/2023 13:34, Michal Orzel wrote:
>>>>> Host device tree nodes under /chosen with compatible string
>>>>> "xen,evtchn-v1", "xen,domain-shared-memory-v1" are Xen specific and not
>>>>> meant to be exposed to hardware domain.
>>>>
>>>> So, how dom0 is meant to discover the static event channel, shared
>>>> memory it can use?
>>>
>>> For static shared memory:
>>> A node with this compatible is only meant for Xen since it contains information like host-guest mapping.
>>> Xen creates a different node for guests under /reserved-memory.
>>> Linux binding:
>>> https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindings/reserved-memory/xen,shared-memory.txt
>>> Xen node generation:
>>> https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/domain_build.c;hb=HEAD#l1407
>>
>> Ah good point. I agree with this one.
>>
>>>
>>> For static event channels:
>>> This is a bit weird so let me put it in a different way.
>>> 1) Xen does not create any node for static evtchn for domU.
>>> 2) The booting.txt states:
>>> There is no need to describe the static event channel info in the domU device
>>> tree. Static event channels are only useful in fully static configurations,
>>> and in those configurations, the domU device tree dynamically generated by Xen
>>> is not needed.
>>> 3) The "xen,evtchn" property specifies the local port as well as phandle of domU node.
>>> dom0 does not have access to domU nodes, therefore exposing a property with not existing phandle
>>> makes me think that:
>>
>> You have a point for the phandle. Yet, this is the only way dom0 can
>> find the event channel today. As we exposed it, I don't think we can
>> remove it until we have a proper replacement.
>>
>> We might get away if the feature is not supported it at all. But there
>> is no statement, so it is a little unclear whether the feature is meant
>> to be in technical preview.
>>
>> In any case, I think the commit message deserve a bit more explanation
>> as hiding "xen,evtchn-v1"/"xen,domain-shared-memory-v1" is not
>> uncontroversial.
>>
>>> a) point 2) applies to dom0 as well and we should hide this node or > b) there is a missing property for both dom0 and domUs to tell them
>> about static local port in a proper way
>>>
>>> Exposing Xen specific evtchn node only to dom0 and not to domU with required information happen to be found as first value
>>> in xen,evtchn is definitely not a proper solution.
>>
>> My concern here is we exposed such information to dom0. So as I said
>> above, I don't think we can simply remove it as there is no other way to
>> find such information today.
>>
>> It doesn't matter that it wasn't exposed to domU.
>>
>>> Also, there is no Linux binding for it.
>>
>> AFAIK the static event channel support was not added in Linux until very
>> recently. Also, I think the kernel doesn't directly use the static event
>> channel. So it is possible, this is just an overlook.
> 
> I've found this thread in which Stefano, Rahul and Bertrand agrees on not exposing
> any dt property and the rationale behind:
> https://patchwork.kernel.org/project/xen-devel/patch/4836304496e6fbbea41348ed8cc9fcf6b0f3e893.1648049827.git.rahul.singh@arm.com/

Ok. So the expectation is that each end will have hardcoded event 
channel number. I feel this is going to lead to issue when someone will 
try to re-number event channel but forgot to update one of the 
component. Anyway...

> 
> I would not call exposing node to dom0 as something done deliberately given that it happens automatically by copying.
> So my understanding is
> that we did not want to expose any node and dom0 case was overlooked (since done automatically).
> 
> Exposing half the interface (from system POV) in a way it should not be done (phandle) is not great IMO.
> In any case, if you insist on keeping xen,evtchn, I can leave with it.
> 
> This feature is marked as tech preview with no Linux binding in place so I would not be worried.

... I overlooked it was a tech preview. So I am having less concern 
about remove the property. But I still think we need to find a way to 
describe it in the device-tree for future usage (see why above).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 10:05:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 10:05:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600313.935948 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0HD-0000Mw-8W; Tue, 12 Sep 2023 10:05:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600313.935948; Tue, 12 Sep 2023 10:05:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0HD-0000Mp-5s; Tue, 12 Sep 2023 10:05:47 +0000
Received: by outflank-mailman (input) for mailman id 600313;
 Tue, 12 Sep 2023 10:05:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg0HC-0000Mj-FW
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 10:05:46 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id efbf4ae7-5153-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 12:05:44 +0200 (CEST)
Received: from [192.168.1.9] (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 313A94EE0749;
 Tue, 12 Sep 2023 12:05:43 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: efbf4ae7-5153-11ee-9b0d-b553b5be7939
Message-ID: <ce839d89-931a-3595-584e-eab3f665cea3@bugseng.com>
Date: Tue, 12 Sep 2023 12:05:42 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 03/10] misra: add deviations for direct inclusion
 guards
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <0c1fb82b539d939e7c6655a9a8f3d7fe8b213cef.1694510856.git.simone.ballarin@bugseng.com>
 <50e33371-8dc5-d4cb-a606-72d1ab005c21@suse.com>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <50e33371-8dc5-d4cb-a606-72d1ab005c21@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 12/09/23 11:52, Jan Beulich wrote:
> On 12.09.2023 11:36, Simone Ballarin wrote:
>> --- a/docs/misra/safe.json
>> +++ b/docs/misra/safe.json
>> @@ -36,6 +36,14 @@
>>           },
>>           {
>>               "id": "SAF-4-safe",
>> +            "analyser": {
>> +                "eclair": "MC3R1.D4.10"
>> +            },
>> +            "name": "Dir 4.10: direct inclusion guard before",
>> +            "text": "Headers with just the direct inclusion guard before the inclusion guard are safe."
>> +        },
>> +        {
>> +            "id": "SAF-5-safe",
>>               "analyser": {},
>>               "name": "Sentinel",
>>               "text": "Next ID to be used"
>> diff --git a/xen/arch/arm/include/asm/hypercall.h b/xen/arch/arm/include/asm/hypercall.h
>> index ccd26c5184..24f8c61a73 100644
>> --- a/xen/arch/arm/include/asm/hypercall.h
>> +++ b/xen/arch/arm/include/asm/hypercall.h
>> @@ -1,3 +1,4 @@
>> +/* SAF-3-safe direct inclusion guard before */
>>   #ifndef __XEN_HYPERCALL_H__
>>   #error "asm/hypercall.h should not be included directly - include xen/hypercall.h instead"
>>   #endif
>> diff --git a/xen/arch/x86/include/asm/hypercall.h b/xen/arch/x86/include/asm/hypercall.h
>> index ec2edc771e..dfdfe80021 100644
>> --- a/xen/arch/x86/include/asm/hypercall.h
>> +++ b/xen/arch/x86/include/asm/hypercall.h
>> @@ -2,6 +2,7 @@
>>    * asm-x86/hypercall.h
>>    */
>>   
>> +/* SAF-3-safe direct inclusion guard before */
>>   #ifndef __XEN_HYPERCALL_H__
>>   #error "asm/hypercall.h should not be included directly - include xen/hypercall.h instead"
>>   #endif
>> diff --git a/xen/include/xen/unaligned.h b/xen/include/xen/unaligned.h
>> index 0a2b16d05d..190ada7800 100644
>> --- a/xen/include/xen/unaligned.h
>> +++ b/xen/include/xen/unaligned.h
>> @@ -3,6 +3,7 @@
>>    * without faulting, and at least reasonably efficiently.  Other architectures
>>    * will need to have a custom asm/unaligned.h.
>>    */
>> +/* SAF-3-safe direct inclusion guard before */
>>   #ifndef __ASM_UNALIGNED_H__
>>   #error "xen/unaligned.h should not be included directly - include asm/unaligned.h instead"
>>   #endif
> 
> Apart from the recurring off-by-1, will this have the intended effect of
> Eclair still choking if there's then no inclusion guard following these
> early constructs?
> 
> Jan
> 

No, if you put something between the direct inclusion guard and the 
inclusion guard, no violation will be generated.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 10:19:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 10:19:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600327.935960 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0UK-0004L1-Ec; Tue, 12 Sep 2023 10:19:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600327.935960; Tue, 12 Sep 2023 10:19:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0UK-0004Ku-AJ; Tue, 12 Sep 2023 10:19:20 +0000
Received: by outflank-mailman (input) for mailman id 600327;
 Tue, 12 Sep 2023 10:19:19 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Mt1s=E4=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qg0UJ-0004Jb-2d
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 10:19:19 +0000
Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com
 [2a00:1450:4864:20::335])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d4319b25-5155-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 12:19:17 +0200 (CEST)
Received: by mail-wm1-x335.google.com with SMTP id
 5b1f17b1804b1-401b0d97850so59871215e9.2
 for <xen-devel@lists.xenproject.org>; Tue, 12 Sep 2023 03:19:17 -0700 (PDT)
Received: from [192.168.20.115] (ip-185-104-136-29.ptr.icomera.net.
 [185.104.136.29]) by smtp.gmail.com with ESMTPSA id
 r18-20020a5d6952000000b003141a3c4353sm12592111wrw.30.2023.09.12.03.19.14
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 12 Sep 2023 03:19:16 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d4319b25-5155-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694513956; x=1695118756; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=27aNj847z6WP7Aj8LQYB9kh7/yLtTyxrvmLSUeUuS2k=;
        b=husyTaohEUSOtj+v29P9gAcPA6BZXkGLoSI2BzJbQt8QoYoAyZIRob6/bd3rVM4tXY
         MtPp0ZmY/yVqc57HkGSIAVubc8luk/jUjboepfqIG/FmYgoNq3QH+8EJjbveyjq4FRDw
         T/aIP+bBYUaqm+5Q4+MTnkophk9lnAdXS2OCc=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694513956; x=1695118756;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=27aNj847z6WP7Aj8LQYB9kh7/yLtTyxrvmLSUeUuS2k=;
        b=fLKX7sYRk/Yjdl0TXHlKkwH83XJ8JHKLOvzaInynTDBZ1HLa/0UOUR+NML1CQWQf9M
         IPihtX/0Ga3Dhhha51QVTXTNyaT4VCfys12OqgaiGTdZ5rH5BWY1tZs0+6VeMrEi6+5V
         FWb4k8Gi8Bl0fxEGRL6tWob8I19CtTB+8zZW1RlXafqvWghi9VuOpuCUDSOwYP6Hyewm
         /0SV8qUbyAYiIlgLe6gx9Y9Nq2JaTnx2l5O5vEY3GEn6fKPSp50LMZ4LL85PPLGTNjAe
         2c3guR//75K8InlvjVzSS9bTrm+M5CTJvXLFwgPw9/EeVblJ6r5omUYt4aJYgJllgJ/o
         Ndiw==
X-Gm-Message-State: AOJu0Yzo5na/e/NvhWB/GB3y2ifVjrYznLvHa3t7zfZjmJzC2KPJAXkZ
	cL613AQ5dCv00uesyercXYkMxA==
X-Google-Smtp-Source: AGHT+IEVV+ACr1rzlrFXz/xU7M9EDTs+jbmI0NZOOLdRAYYH67/9/VowHlGH5bpHkBD8qzpSH5738A==
X-Received: by 2002:a7b:c042:0:b0:401:aa8f:7573 with SMTP id u2-20020a7bc042000000b00401aa8f7573mr10929389wmc.6.1694513956566;
        Tue, 12 Sep 2023 03:19:16 -0700 (PDT)
Message-ID: <4a98d2d7-457a-020b-c936-d19b772b626e@citrix.com>
Date: Tue, 12 Sep 2023 11:18:42 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v2 1/5] automation: add python3's setuptools to
 containers
Content-Language: en-GB
To: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, Jan Beulich <jbeulich@suse.com>,
 George Dunlap <george.dunlap@cloud.com>, Doug Goldstein <cardoe@cardoe.com>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <cover.1694450145.git.javi.merino@cloud.com>
 <4f14ea4aeb44c234d9930578614a35234769fa41.1694450145.git.javi.merino@cloud.com>
In-Reply-To: <4f14ea4aeb44c234d9930578614a35234769fa41.1694450145.git.javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/09/2023 5:51 pm, Javi Merino wrote:
> In preparation of dropping python distutils and moving to setuptools,
> add the python3 setuptools module to the containers that need it.
>
> The centos7 container was building using python2.  Change it to build
> python scripts using python3.
>
> Debian Stretch is no longer debian oldstable, so move to the archive
> repositories.
>
> Signed-off-by: Javi Merino <javi.merino@cloud.com>

We are not dropping distutils.  We're moving to support both distutils
and setuptools, because setuptools doesn't support the minimum version
of python that Xen supports.

Therefore, it's important to keep some of the containers on distutils
rather than switching all to setuptools.

CenOS can stay as is, as can Stretch and probably Bionic/Focal.

Any containers with Py3.10 or later definitely need to move, seeing as
distuils is formally deprecated there

It's sadly a little too early to make a Py3.12 container, which will
lack distutils, but we can come back to that in 4.19.

As Stefano points out, you should refresh at least some of the arm64
containers too.  RISC-V and PPC aren't set up for tools builds set, so
they're fine to leave.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 10:19:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 10:19:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600332.935969 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0Ux-0004yM-LD; Tue, 12 Sep 2023 10:19:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600332.935969; Tue, 12 Sep 2023 10:19:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0Ux-0004yF-IP; Tue, 12 Sep 2023 10:19:59 +0000
Received: by outflank-mailman (input) for mailman id 600332;
 Tue, 12 Sep 2023 10:19:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qg0Uw-0004uM-An
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 10:19:58 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on062e.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::62e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ec1b6c08-5155-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 12:19:57 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB8034.eurprd04.prod.outlook.com (2603:10a6:20b:249::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Tue, 12 Sep
 2023 10:19:54 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 10:19:54 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ec1b6c08-5155-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RyFBtmVtjQMwrrgWi3w+Y3bQtE7iNVVVSAeGCwPO7L7/K6+P+68n7ZFl77077C3XHRkC0Ml6zqqHA2qlRlXXRvC2V7lB6M4ayQb/IvNKMDCNLVEr8T9kEqyF4FQZ2ojg/G1iMCqxuV/7r8dV2N7cISYq5vjH8wwidNf5Cy8/V+RleO+md2ujrU9NyyyzIId2COIHEUEw0F/gjodz38vtf4jRzJGHvHjhkaDqTk3KLSAwvP6Zn0YOPaZTyY7dXwebP2ripohBTw/fybShnsS/H81jAeqg/MjgFkBUEU+TUDGPH+kvDndUvfiRRcXrHFdWN7amDQUxfYCW12t2+rd0kw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=09dB5faftl3SSAg1DoXq8/IR+xSBU/JD0NbErUFqJz8=;
 b=KiFpj4KAexiuJ2/LM69UDyz+PxcWWCTd/CGYyLWB6oUdcP+1a9VkMFi0vwNtCCZFiUfYaIZEJ2iN7EA3Dbz0iGS8cpHlRTfC4EnWhjAzovGzDwkv5mo79FxNUZ5ssRjUwvvvqe1L2KFRDFiZeioZwckQs5tltArhzlGDQiCaTnEvVIcBaKHC7FPlrmqTRVUC24u6odOiTRxWDDb54AB1mL7oon4aYxnjDhmYgFxnvoTRzp2Z1lynbILlJKFxEUsbk9TdJBd5tIXzz1JyyGKZclWivZAvwAZns5RgH1e0QNlE87e82xeUklS732lmfQTGYzfmQGiVeihjpGhU/Ttotw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=09dB5faftl3SSAg1DoXq8/IR+xSBU/JD0NbErUFqJz8=;
 b=RCuG4NjvkpABZMOfJqocDCvdJIUDfxND/TEcB3X7uwjzEt06xqgHW1dTCGXRGs3bCNT9pAL5f3mCdnmFnTbloYD/Xg2CyF5NnuuxgfL0cjLv4Tqj6Nr90PG6CTmLWV+GEWq987PthoqPmwPV4i99ZEQ1kRoWh31GDU3ISW+kWikWSbr8AAEt5vB5B6WbPt36Gem4DuWMSyML8WMhm3uknw9ocVMY42A4nHmA+I4VKlXxaZ6Btta8u3e02iEF8A+DcEokkvli34sOajbKyCG823aWqyKO90PcW5aeztsPjTRhK3rZQ4Wf2QYrW3aT/GtW6xAuuTtJ8J3jqiixRPHtHw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <19082bc8-6c5f-a207-0c69-33eb412fec01@suse.com>
Date: Tue, 12 Sep 2023 12:19:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 03/10] misra: add deviations for direct inclusion
 guards
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <0c1fb82b539d939e7c6655a9a8f3d7fe8b213cef.1694510856.git.simone.ballarin@bugseng.com>
 <50e33371-8dc5-d4cb-a606-72d1ab005c21@suse.com>
 <ce839d89-931a-3595-584e-eab3f665cea3@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ce839d89-931a-3595-584e-eab3f665cea3@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0072.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:49::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB8034:EE_
X-MS-Office365-Filtering-Correlation-Id: 33e7439e-e3a9-407b-f768-08dbb379ce6e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UTzpp8z3OXe/7R4uEcjbPZolZnwqutb0AgdGV/tFTL8i5TtZzAJhCS3PKdHWDNpB0a6BvuNUmBOYBfX7HdMGRO3XhyUppp9I4QE0HpXWrVACWl/iuSR06mMGgSnptE7uNHMN3SIXMrpuAmgICvvOJ9B+ByeM0ZvnWSKczebez9c4BJDWzHVMliUn8Gyph7FsLDfDKo3orJ8srJ6KeO1pBKNCJFeZjzlmhiHMdDKnlTY9KhYQE2x9fvq669O1ufl0cCYO9vl/U6wSjrNGOUEpj93A4Vt98Mv69cW2rHvbVoGcgcrwbXaA3DlyXDN5YWiyLwL7s4VFlv11d5vkRBmSydR37UvDCNWIW6/E6YKHJCToJ6nm49DI0VHsj1qwPba0Dwzb5f/VgcPN0KThZxPp5+6hy+VEKLGlxteStNyTOl2iwfxzsTB7dBfOXfzz3CNVSin4/LVIIN0oWhdrOTnthlZr5kTimEumydFGhZDgzre6K2Lprba9PG4xjHfc8HVQ1VlCo4CsAXaAwWbNwo7I6/tLpK0cCvCiLRiZYw/ZgDSlIIbdmd+UUAISxyo1e2qpBJ8gMJZygO/uENOmRyogaAZxndIQsyyfy4q2NKNapqLIkTWSGivaBK6FdkHXzGYPSq56/KCDJ5cVsfpx+0QC3Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(366004)(39860400002)(136003)(396003)(451199024)(186009)(1800799009)(66946007)(316002)(6916009)(66476007)(66556008)(54906003)(41300700001)(478600001)(38100700002)(7416002)(2906002)(86362001)(36756003)(31696002)(5660300002)(4326008)(8676002)(8936002)(26005)(2616005)(31686004)(6506007)(6486002)(53546011)(6512007)(6666004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bHJiSlV0THJkMDFGQTFUT25QTWswMjVFbmlpTW5TYUtHczU2aXQ0Q0xwb3k5?=
 =?utf-8?B?YXJzTWcyY0p3WHpCOXVOMkhpNEJuczFKVWZ4WGR2V3NWR0w4bWFWMk8zcjF6?=
 =?utf-8?B?TmcyanBYWHlHODlsRExBdnNhUC80LzViVEJ2YXgyRm5uZXA1bXpJOWJ5bU9v?=
 =?utf-8?B?UmZDVC9hTDN0eDNqZGJER1pFbkROblhPZUllc3NwZ25RbGpMU3UvTFBiVmVq?=
 =?utf-8?B?LzNKajJkMjVGWkl1Zmp3Q2tDTDk2NERYaE9xeTVzMkU5TUJhWG9mK2JteHhM?=
 =?utf-8?B?L011SWNIUVBWM0c5QWNlT3ZsSHpuVEd4UDdXL3Y3c3A3aXdHMWpjYjhCZm1L?=
 =?utf-8?B?eWZWR1Y0Q0JPR1pCRG9zRnZvZjZLQnpTNmVxK1JwZDFBem1Bc1pJTnJGQUVY?=
 =?utf-8?B?UDlpc1Y0aEtIQld6cTVYcnM1Rk1DWE9qdHdSUFJDVWNpNEhONHpManIzb3RV?=
 =?utf-8?B?N2djdGgvVFRDeFZibFdCK2Yxd3VneFdudnR6WXFPdnRJSWtzQk9wMDFJcTR4?=
 =?utf-8?B?WmF6Y1FibWFSTURGV2hEWEx5a0EvWjZBVS9lZndNcUJPWlVTbGJndFhTVVhG?=
 =?utf-8?B?cWNFdzJtSytnMXppMkNGZy82TTllN2UyUnVZcE91TEV2L3ZmMklHTnZFdlFO?=
 =?utf-8?B?K2MrdGNSWmIzN3lOKzcwRFJVVmxzTlZ6UnZXUFVFU25JNERsVUYzU25yQWRD?=
 =?utf-8?B?M25LZzZuQUpZWkVzOXROK2NWVGZVQkl6ZEc4NlJPbndwM3dnczJPTHRNcWV5?=
 =?utf-8?B?T3ZPOGI3dEk2cVV4aTB2cFBIOGE5aDRhb3RLNVpVdTh5cUpSOWRhOVp1RUpV?=
 =?utf-8?B?U3ArSG02a3ZkZDBJanFzYjR0YWcwVUFILzJneEtuZEs5U3ZrK2lxS2ZmamlL?=
 =?utf-8?B?NFEwLy9KWGpJQ2hwbnFTYlQrTDRGV3lFdk14WFR4dkpLV2tQUnR1VFRQdlVk?=
 =?utf-8?B?OHpuOEs2dG1jcWltK0VHTzYvcWtPdUQyaUJINDNKdmFrRFptOHpWYnQya2Zh?=
 =?utf-8?B?ZUxyQzN1cTU2cHZvVDhBQzdhSkFwUkRpUWlvR0hBMTNqMVROMjhGUmVCWFh1?=
 =?utf-8?B?R2N5TmhKcFpNK21UeEtpeUlaSzJZZURWTXU2TVF6Y2ZtaTR5SkdRNmJkUzRu?=
 =?utf-8?B?REFoOCsyV21KSk9UbmluTXVjNVVpSEZmZElOWFlMUm5EMWlZdEJFbHo1dEhU?=
 =?utf-8?B?dm03RlR4dE0velBMZ1lHTUZjZVpkYjkrUm9xblpsdC9YTll4ZmVZU3preDR0?=
 =?utf-8?B?S3NYMUwrK1lhb1I4TjRBTGw4aW4yTGRMbDdsVEljV2ErTW1KNmlxdEliRG54?=
 =?utf-8?B?UithcDZaWFBWVWpRcERQUFgwL3FyRFFNaGRyUk1kSTk5bWxEV1YxT201aVIw?=
 =?utf-8?B?NzhTNm5QZGc1anNIYlVWN0t4aG1JbEpFUDJSTU9XcVI0dkVHb0c1NWhZTklE?=
 =?utf-8?B?ejhEQnZ1Ly9sbjFXSXgrUWVvVk9VUFJwV0NSb2EwTUtmbXVVVGZaM2FYaU1t?=
 =?utf-8?B?OVFLRzg0MUtteVl1c1p0eHdWR0l4OEFpcER1TmJQa1AwWjNTNGJxTjVSM0dH?=
 =?utf-8?B?cVg3TVhmRTBNL3BENzJGMWVySnhYUFFQYi9IQ05ndUFHNk1FamlSTlYvMDhC?=
 =?utf-8?B?UUJTbDhGU1RUcDdaVG5uV29PNXdpS3VaeldWYURQeENDdHp4ZHhHSVZoSmw0?=
 =?utf-8?B?clViS3J6c3N6MXJwd0tDcTRrMmU3M2RxQjlWY3dWVy9FWmF2YjZaYkk3SkRF?=
 =?utf-8?B?eWdFdk13TmtFcGI4RFNRSmZISWF6V3QvU25RZlEyV2xCdGJUbDZkUlpzOVV3?=
 =?utf-8?B?SmpNNTdoM014b25QcFZRUy9QMGFiVU9nd29pQTBNZWxTdGg3MzluN2pIY3JI?=
 =?utf-8?B?K21yQkNWUTJMQkw0SEl3SXQ0L1h2TjBGUnVwQkFkTTV1MjlkWTY1YWdhK0tF?=
 =?utf-8?B?K3JWQkdOVnlKUTJWT2crVy9ob2prNGtlQWFYRXlvUnlVQ0FDMmMvcm92VkxK?=
 =?utf-8?B?SlhRU2lIRSt4cTB4YmljOUJSa00vRUFONm9KR2RoeTdDclBoWjRaMnFTNE9Q?=
 =?utf-8?B?RSs4T0RIdFFKYUN5eUtpcjdjakFEeVZDVEsydi9mM203Slp4ZEY5NysrNEdG?=
 =?utf-8?Q?TP55tTm/5bnPiVIP+Q4yFY+Kx?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 33e7439e-e3a9-407b-f768-08dbb379ce6e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 10:19:54.0247
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /CCLCjiXARUVopcAnHcWGMLuR8gPo9P0CA+WqPKf/iN0iJmwtiEb2yubnPakEpxhdFkGLxDOLz4O7id8Envatg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB8034

On 12.09.2023 12:05, Simone Ballarin wrote:
> On 12/09/23 11:52, Jan Beulich wrote:
>> On 12.09.2023 11:36, Simone Ballarin wrote:
>>> --- a/docs/misra/safe.json
>>> +++ b/docs/misra/safe.json
>>> @@ -36,6 +36,14 @@
>>>           },
>>>           {
>>>               "id": "SAF-4-safe",
>>> +            "analyser": {
>>> +                "eclair": "MC3R1.D4.10"
>>> +            },
>>> +            "name": "Dir 4.10: direct inclusion guard before",
>>> +            "text": "Headers with just the direct inclusion guard before the inclusion guard are safe."
>>> +        },
>>> +        {
>>> +            "id": "SAF-5-safe",
>>>               "analyser": {},
>>>               "name": "Sentinel",
>>>               "text": "Next ID to be used"
>>> diff --git a/xen/arch/arm/include/asm/hypercall.h b/xen/arch/arm/include/asm/hypercall.h
>>> index ccd26c5184..24f8c61a73 100644
>>> --- a/xen/arch/arm/include/asm/hypercall.h
>>> +++ b/xen/arch/arm/include/asm/hypercall.h
>>> @@ -1,3 +1,4 @@
>>> +/* SAF-3-safe direct inclusion guard before */
>>>   #ifndef __XEN_HYPERCALL_H__
>>>   #error "asm/hypercall.h should not be included directly - include xen/hypercall.h instead"
>>>   #endif
>>> diff --git a/xen/arch/x86/include/asm/hypercall.h b/xen/arch/x86/include/asm/hypercall.h
>>> index ec2edc771e..dfdfe80021 100644
>>> --- a/xen/arch/x86/include/asm/hypercall.h
>>> +++ b/xen/arch/x86/include/asm/hypercall.h
>>> @@ -2,6 +2,7 @@
>>>    * asm-x86/hypercall.h
>>>    */
>>>   
>>> +/* SAF-3-safe direct inclusion guard before */
>>>   #ifndef __XEN_HYPERCALL_H__
>>>   #error "asm/hypercall.h should not be included directly - include xen/hypercall.h instead"
>>>   #endif
>>> diff --git a/xen/include/xen/unaligned.h b/xen/include/xen/unaligned.h
>>> index 0a2b16d05d..190ada7800 100644
>>> --- a/xen/include/xen/unaligned.h
>>> +++ b/xen/include/xen/unaligned.h
>>> @@ -3,6 +3,7 @@
>>>    * without faulting, and at least reasonably efficiently.  Other architectures
>>>    * will need to have a custom asm/unaligned.h.
>>>    */
>>> +/* SAF-3-safe direct inclusion guard before */
>>>   #ifndef __ASM_UNALIGNED_H__
>>>   #error "xen/unaligned.h should not be included directly - include asm/unaligned.h instead"
>>>   #endif
>>
>> Apart from the recurring off-by-1, will this have the intended effect of
>> Eclair still choking if there's then no inclusion guard following these
>> early constructs?
> 
> No, if you put something between the direct inclusion guard and the 
> inclusion guard, no violation will be generated.

Hmm, that's not good. But the question was also the other way around: Will
there be a violation reported if the ordinary inclusion guard is missing
altogether? I.e. will the tool continue looking for the guard it expects
despite the SAF-<n>-safe comment?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 10:23:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 10:23:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600341.935978 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0YL-0006oT-8F; Tue, 12 Sep 2023 10:23:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600341.935978; Tue, 12 Sep 2023 10:23:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0YL-0006oM-5H; Tue, 12 Sep 2023 10:23:29 +0000
Received: by outflank-mailman (input) for mailman id 600341;
 Tue, 12 Sep 2023 10:23:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Mt1s=E4=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qg0YJ-0006oG-H4
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 10:23:27 +0000
Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com
 [2a00:1450:4864:20::32f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 68579100-5156-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 12:23:25 +0200 (CEST)
Received: by mail-wm1-x32f.google.com with SMTP id
 5b1f17b1804b1-401187f8071so34639685e9.0
 for <xen-devel@lists.xenproject.org>; Tue, 12 Sep 2023 03:23:25 -0700 (PDT)
Received: from [192.168.20.115] (ip-185-104-136-29.ptr.icomera.net.
 [185.104.136.29]) by smtp.gmail.com with ESMTPSA id
 12-20020a05600c240c00b003fc06169ab3sm15692097wmp.20.2023.09.12.03.23.24
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 12 Sep 2023 03:23:24 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 68579100-5156-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694514205; x=1695119005; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=t+8HU+NL6DlbJnsNcM8HxWHnHN2D1aXtqxenntpuI9M=;
        b=vofgekeZ1ttV80PGS4khfJoYK0RwBLaWRpaHM5+jNoo/pKFGV2r5gsfteli1xYQlRW
         P4wBBb0RkCO5Wlgw0wCh7/pMEfAkwz7v1tmF8yvbjOm9ZETpXXo7X8s/rKNeTlAZPFPv
         Q0ZpMUvo0DcNVYJKHf+jdaH64FT6JXX4MnquM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694514205; x=1695119005;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=t+8HU+NL6DlbJnsNcM8HxWHnHN2D1aXtqxenntpuI9M=;
        b=OT2kGzbAtntaGh4WAy5teJ2RUHjEkJ/drr9HT6oTtnT4TiUJLrvuOIVXyGtpCBtvL8
         pvrgRyAjKwzNI9FIq+SoZMIb9b4qou0XhuUVqg5a5b/i3810nxzkFtA3lHZXNspUrksB
         Ql3+XqAFMPnKwDK4ayAMyhhqQGZ4LHhR3yFoMvTzA3nv7iHI4wUyJjOiEC5StUT+MsQB
         kH6RSWxr+xLMtKSjBGznyGcgnN1DPDgdgJ9yqjRr9lfLGLiOGMqyT8ldW7zKyijX4f1C
         14+UJomVRS+KZ7Y6epl+wgwGdrm0meukL/MTmVygHJ/RxHHCYHUEWvcxJl+TRX+/IDaa
         /fRQ==
X-Gm-Message-State: AOJu0YwUHFi53fPr3BySdYmfgrPkheP/ysHb9e36EVPQV7QZuzqBXgtV
	Wjf0T22zVHMkuNTwAvT5/1MIq727HflV9lxLLmo=
X-Google-Smtp-Source: AGHT+IHyjAUXiFaYFAeUxN7Zap8cFKAbLW61UUoZFuzm7ZAMXCmX+uPXSNgHYwFe8SgM5uNs49KrMw==
X-Received: by 2002:a05:600c:1e1d:b0:401:431e:2d03 with SMTP id ay29-20020a05600c1e1d00b00401431e2d03mr1528536wmb.14.1694514205115;
        Tue, 12 Sep 2023 03:23:25 -0700 (PDT)
Message-ID: <93ef8146-c8f5-586f-b754-b28b2b733222@citrix.com>
Date: Tue, 12 Sep 2023 11:22:56 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v2 2/5] tools: convert setup.py to use setuptools
Content-Language: en-GB
To: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, Jan Beulich <jbeulich@suse.com>,
 George Dunlap <george.dunlap@cloud.com>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>
References: <cover.1694450145.git.javi.merino@cloud.com>
 <9bbf71efc710dc869baf0c5ba926630e81181620.1694450145.git.javi.merino@cloud.com>
In-Reply-To: <9bbf71efc710dc869baf0c5ba926630e81181620.1694450145.git.javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/09/2023 5:51 pm, Javi Merino wrote:
> From: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
>
> Python distutils is deprecated and is going to be removed in Python
> 3.12. Migrate to setuptools.
> Setuptools in Python 3.11 complains:
> SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
> Keep using setup.py anyway to build C extension.
>
> Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>

Throughout the commit message, s/use/support/ seeing as we're not
removing distutils.

Next, this needs a SoB from you because you've changed the patch from
what Marek originally wrote.


> diff --git a/tools/pygrub/setup.py b/tools/pygrub/setup.py
> index 502aa4df2d..f9e8feb2e6 100644
> --- a/tools/pygrub/setup.py
> +++ b/tools/pygrub/setup.py
> @@ -1,5 +1,9 @@
> -from distutils.core import setup, Extension
> -from distutils.ccompiler import new_compiler
> +try:
> +    from setuptools import setup, Extension
> +except ImportError:
> +    # distutils was removed in Python 3.12.  If this import fails,
> +    # install setuptools.
> +    from distutils.core import setup, Extension

Finally, this feels a little unnecessary.  How about just:

# Prefer setuptools, fall back to distutils
try:
    from setuptools import setup, Extension
except ImportError:
    from distutils.core import setup, Extension

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 10:36:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 10:36:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600371.936002 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0kf-0001iA-HQ; Tue, 12 Sep 2023 10:36:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600371.936002; Tue, 12 Sep 2023 10:36:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0kf-0001i3-Ec; Tue, 12 Sep 2023 10:36:13 +0000
Received: by outflank-mailman (input) for mailman id 600371;
 Tue, 12 Sep 2023 10:36:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=t/Nr=E4=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qg0ke-0001bX-Fq
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 10:36:12 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on2060a.outbound.protection.outlook.com
 [2a01:111:f400:fe59::60a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 30b7d095-5158-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 12:36:11 +0200 (CEST)
Received: from MW4PR03CA0137.namprd03.prod.outlook.com (2603:10b6:303:8c::22)
 by IA1PR12MB6435.namprd12.prod.outlook.com (2603:10b6:208:3ad::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Tue, 12 Sep
 2023 10:36:07 +0000
Received: from CO1PEPF000044FB.namprd21.prod.outlook.com
 (2603:10b6:303:8c:cafe::13) by MW4PR03CA0137.outlook.office365.com
 (2603:10b6:303:8c::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37 via Frontend
 Transport; Tue, 12 Sep 2023 10:36:07 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CO1PEPF000044FB.mail.protection.outlook.com (10.167.241.201) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.1 via Frontend Transport; Tue, 12 Sep 2023 10:36:05 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 12 Sep
 2023 05:36:04 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 12 Sep
 2023 03:36:04 -0700
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 12 Sep 2023 05:36:03 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 30b7d095-5158-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fuVdkE1NFv7ocVhbiYlB/vY6sfI7S6UYGQyGHBPHV44zwzSwBFXxPMrleWiJ9qhDJjF6FRTmalb5erOMqiiPtnNe841Sy7/1o4VERDSq8hhGW65IjFBvaGW5MHAuGAkbANf4pa4te27eEKSLRYiBmTd9sg1aMK4pgPzi/k9S54FnHpUWjfE4OrskVsj8f0Wh/dNnMduxQh1yeFkLkLs7wGXpkQQXuUl2tNfOyeroMBMEZAO9dwLFF23wMTgMbHMTMeFXIkRvRCLekkEKrE1QM+8AL7qyf1BG9VFUUD4m43hRYhY689z+VbBNgsw1lGAzRiROIEKWr8vZE3uWku1Cpg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Uh+8UHCRZ6nA/zynXeMz8Bt5yAUbXoT8RgT9VPpQFFU=;
 b=GhyjEOd5I+rWFqIbhFyTPYLtBmqyZ0YPrQHJhsuwWSENH/4xRnQ2qgT37W13CsoJLdV6MVFtW9zbOgzkTbNWZDesAp3bRGry0Ezf3jBQ5YTz+O5clRZRUshImxy5AQXTfsZekkPdpS0QfmoB6nOR9qOUkOVvXavyZAlS9HsmQM7SqhVyezNUJmq6jmfQfRHSFZH+oaThUchNPHqxTFuuWjbnoShi2wSZlGSGTbL6VLSDHbOVK1VA4KPS6FLDyTI281c0Z34dijWOSipf5NLrBlA5fBi3HYKN8q2cOWqvz7u9V9LVNqHwMP0G/aKV8hYkPBmbiqcjf4/7PZ7E34np5g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Uh+8UHCRZ6nA/zynXeMz8Bt5yAUbXoT8RgT9VPpQFFU=;
 b=H/+cTHxuLG/uwwJ50I7SUZlQaqJdcpsVpzcy6pTSc5/sYws9Qb8K7Pykys5zZW6V3sgeIG8BczQqFiSz0aCCqKeOjIkqpVEt6HWzIzIzfoOJRb0Jd+fGDf4K0T0ZNc/kYNswTPjCSAowbdHAkVRiPsmMmspEi+WseUh8JWZKujw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <e44841c9-29ab-5954-41f2-d4bd3439211f@amd.com>
Date: Tue, 12 Sep 2023 12:36:03 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
Content-Language: en-US
To: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911123401.27659-1-michal.orzel@amd.com>
 <366e89e3-bc3d-4c54-b1ad-8147abbabdc7@xen.org>
 <042fae56-e8e2-c079-2686-d27c5469b7fc@amd.com>
 <e24a7d3a-ca18-474b-bce2-84b97512c58e@xen.org>
 <faf253c3-2c99-9380-c120-a2dd3110b796@amd.com>
 <6ca62546-8626-46ab-85bb-8e96e466251d@xen.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <6ca62546-8626-46ab-85bb-8e96e466251d@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044FB:EE_|IA1PR12MB6435:EE_
X-MS-Office365-Filtering-Correlation-Id: 2ac535c5-bfe8-4d93-e0a0-08dbb37c11f2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RfCSm79nYuQd0CDbLzGbLBuHb+qyBuBFUfISTwSCImfToKIXWY5uJPF+tT67OxN5BJHpRywpcl863ON7NjOU/xG2yper2MqTvCQtrH5PJgRXWoQwrhaMdyz0QwYiTAcjUrncTFmEhpn83gzFa4eUQMq0Wg9larHKUOeYErKxodt3RiJCIGRkznHIRxxXmllsShck+XBCc+FMx7FxLhC6bfSPjLPZ/VOrqrnN4l2YIwpQufzR2YFzvrI00TqcmFHvrb81vgPhyB6LkpXQR4EtIfUy2Fd8PMt8fk3tDLzZUHhzq8bNZ5O9e1k9JQRepcKmLDc5WCZG3SdpqZZDyfkt0fV7JunYUai0/TcB7tWrsdl2G7c91lcwkUnDdmBF/3utAiub8NUuqf3cawK2BVo75Po2RbinXD74uA0L/oZ6qY14+Ul5+PhdMLSofrJhlnVk/EHHb9+/YsBhu4uhrNl7+55Piq42WIV6alt/gXymKt5MR294KOAAmbm3vzufdS3xLWN03qoA0D7MrJxIz4ZFcPwyM6vDmapdiNPa8ax9VGXn41+3f5/HM0o3rgtaThWhNhktRkK1rueeik/clhY7RkFNbK1SFPo/31ct9+3SmHf2MesRg3lPcT70+yyOGCV4Rj1w68c3qogauhpGg/lW4rNM6vOUA3a3NSPuggCfqg8OKenWF1wCYAMg2btVvLA/dYOsbl7loHvBiK8pFLNgCIDYQGU6iFL63FTtBd2mLXfOGU25GD8TQa4hBIKOInDIcqt+3UXU/pzuD4uZt8gRW7zjHiI4CqVAQJQ2/TBaNEaiFacLJSE/jWc3HfjtNogjnCqN6f+sD2D6vfrUvN0Idw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(136003)(376002)(346002)(39860400002)(82310400011)(451199024)(186009)(1800799009)(40470700004)(46966006)(36840700001)(8676002)(8936002)(31696002)(86362001)(4326008)(40480700001)(44832011)(5660300002)(2906002)(40460700003)(36756003)(83380400001)(966005)(82740400003)(2616005)(356005)(53546011)(336012)(478600001)(426003)(26005)(81166007)(16576012)(316002)(47076005)(54906003)(110136005)(70586007)(70206006)(41300700001)(36860700001)(31686004)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 10:36:05.9316
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2ac535c5-bfe8-4d93-e0a0-08dbb37c11f2
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000044FB.namprd21.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6435

Hi Julien,

On 12/09/2023 12:03, Julien Grall wrote:
> 
> 
> On 11/09/2023 16:09, Michal Orzel wrote:
>>
>>
>> On 11/09/2023 16:48, Julien Grall wrote:
>>> Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
>>>
>>>
>>> On 11/09/2023 15:01, Michal Orzel wrote:
>>>> Hi Julien,
>>>>
>>>> On 11/09/2023 15:14, Julien Grall wrote:
>>>>>
>>>>>
>>>>> Hi,
>>>>>
>>>>> On 11/09/2023 13:34, Michal Orzel wrote:
>>>>>> Host device tree nodes under /chosen with compatible string
>>>>>> "xen,evtchn-v1", "xen,domain-shared-memory-v1" are Xen specific and not
>>>>>> meant to be exposed to hardware domain.
>>>>>
>>>>> So, how dom0 is meant to discover the static event channel, shared
>>>>> memory it can use?
>>>>
>>>> For static shared memory:
>>>> A node with this compatible is only meant for Xen since it contains information like host-guest mapping.
>>>> Xen creates a different node for guests under /reserved-memory.
>>>> Linux binding:
>>>> https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindings/reserved-memory/xen,shared-memory.txt
>>>> Xen node generation:
>>>> https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/domain_build.c;hb=HEAD#l1407
>>>
>>> Ah good point. I agree with this one.
>>>
>>>>
>>>> For static event channels:
>>>> This is a bit weird so let me put it in a different way.
>>>> 1) Xen does not create any node for static evtchn for domU.
>>>> 2) The booting.txt states:
>>>> There is no need to describe the static event channel info in the domU device
>>>> tree. Static event channels are only useful in fully static configurations,
>>>> and in those configurations, the domU device tree dynamically generated by Xen
>>>> is not needed.
>>>> 3) The "xen,evtchn" property specifies the local port as well as phandle of domU node.
>>>> dom0 does not have access to domU nodes, therefore exposing a property with not existing phandle
>>>> makes me think that:
>>>
>>> You have a point for the phandle. Yet, this is the only way dom0 can
>>> find the event channel today. As we exposed it, I don't think we can
>>> remove it until we have a proper replacement.
>>>
>>> We might get away if the feature is not supported it at all. But there
>>> is no statement, so it is a little unclear whether the feature is meant
>>> to be in technical preview.
>>>
>>> In any case, I think the commit message deserve a bit more explanation
>>> as hiding "xen,evtchn-v1"/"xen,domain-shared-memory-v1" is not
>>> uncontroversial.
>>>
>>>> a) point 2) applies to dom0 as well and we should hide this node or > b) there is a missing property for both dom0 and domUs to tell them
>>> about static local port in a proper way
>>>>
>>>> Exposing Xen specific evtchn node only to dom0 and not to domU with required information happen to be found as first value
>>>> in xen,evtchn is definitely not a proper solution.
>>>
>>> My concern here is we exposed such information to dom0. So as I said
>>> above, I don't think we can simply remove it as there is no other way to
>>> find such information today.
>>>
>>> It doesn't matter that it wasn't exposed to domU.
>>>
>>>> Also, there is no Linux binding for it.
>>>
>>> AFAIK the static event channel support was not added in Linux until very
>>> recently. Also, I think the kernel doesn't directly use the static event
>>> channel. So it is possible, this is just an overlook.
>>
>> I've found this thread in which Stefano, Rahul and Bertrand agrees on not exposing
>> any dt property and the rationale behind:
>> https://patchwork.kernel.org/project/xen-devel/patch/4836304496e6fbbea41348ed8cc9fcf6b0f3e893.1648049827.git.rahul.singh@arm.com/
> 
> Ok. So the expectation is that each end will have hardcoded event
> channel number. I feel this is going to lead to issue when someone will
> try to re-number event channel but forgot to update one of the
> component. Anyway...
> 
>>
>> I would not call exposing node to dom0 as something done deliberately given that it happens automatically by copying.
>> So my understanding is
>> that we did not want to expose any node and dom0 case was overlooked (since done automatically).
>>
>> Exposing half the interface (from system POV) in a way it should not be done (phandle) is not great IMO.
>> In any case, if you insist on keeping xen,evtchn, I can leave with it.
>>
>> This feature is marked as tech preview with no Linux binding in place so I would not be worried.
> 
> ... I overlooked it was a tech preview. So I am having less concern
> about remove the property. But I still think we need to find a way to
> describe it in the device-tree for future usage (see why above).

I fully agree that we shall have a property for both dom0 and domUs to make OS life easier
instead of hardcoding the values. This is something we need to keep in mind to do after the release.
That said, I hope you agree on removing this node right now from being exposed to dom0 which is what this patch aims for.
Please see Stefano reply and my proposal for a better commit msg.

~Michal


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 10:38:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 10:38:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600378.936012 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0mx-0002zr-Ua; Tue, 12 Sep 2023 10:38:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600378.936012; Tue, 12 Sep 2023 10:38:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0mx-0002zk-Qk; Tue, 12 Sep 2023 10:38:35 +0000
Received: by outflank-mailman (input) for mailman id 600378;
 Tue, 12 Sep 2023 10:38:34 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Mt1s=E4=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qg0mw-0002zc-9N
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 10:38:34 +0000
Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com
 [2a00:1450:4864:20::32c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8560d773-5158-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 12:38:33 +0200 (CEST)
Received: by mail-wm1-x32c.google.com with SMTP id
 5b1f17b1804b1-402cc6b8bedso61780935e9.1
 for <xen-devel@lists.xenproject.org>; Tue, 12 Sep 2023 03:38:33 -0700 (PDT)
Received: from [192.168.20.115] (ip-185-104-136-29.ptr.icomera.net.
 [185.104.136.29]) by smtp.gmail.com with ESMTPSA id
 y23-20020a7bcd97000000b003fee6f027c7sm15790746wmj.19.2023.09.12.03.38.31
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 12 Sep 2023 03:38:32 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8560d773-5158-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694515113; x=1695119913; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=F3EtqXrry0ueazV4mCBYkQeluUr85c2GdrizbaULfGY=;
        b=EFDSoz1NPKV+n47gnDKOlWXruhDFyJqFaXyVBCqrHB/ZRSs0VObrpc4FulQi6M4lbA
         tg6zxcQSIVcNEdt5WFZjSol2gAaFYPU7GxKOn0kQtqMw5iQ44EaHW790MK8LZaIfmD4b
         HfnXdsiK/638PaUvLGVLy3IasLDm+KhTtc/CQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694515113; x=1695119913;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=F3EtqXrry0ueazV4mCBYkQeluUr85c2GdrizbaULfGY=;
        b=px4/vQh7BZ6g86/uJE2xftteWUy9Vo/ozSjF+XkBYC16qZG3bHVBoDg65a5Er7f+tH
         UpY6n4GTa5hRMgiIiiUVSTx6L9fe9Zo0dxy0JEG3ByWdww/hQoJ+J0N8P5sV9pVxRiwP
         ttdBr671j3Kw9zJ81xw47HjnBvjON7KBDYvdJpr4JyOwK4vxKYN/CloP1WSDKjh1fZYZ
         wOfvPhh3UJTsKtQzTRvBKiKOT6wRWCNf6tPPh6HMa2yi3xiJUnC066AIqD5cu+Y7Hga0
         JdOeB6o/10FKkHEYBaZGgP3z+lxQE2riCjZD7A4+Te6NnK1Kxrkbom6WxiFzBFP5hINH
         +6eg==
X-Gm-Message-State: AOJu0YxKgyxeYTcieJyOP85MQe9fMIctdRSp3lrcESdt87YhOq35GBSq
	wxb3YERlNSbG3XaNjZNhEPV1UA==
X-Google-Smtp-Source: AGHT+IGWhwmIKkO3gbEzAKdxw3be8Mk0JKlzbKfELNl3bSq7PNSrPi29AZ5bT/0D+QTnvpxlIIsUGQ==
X-Received: by 2002:a7b:c84b:0:b0:401:d2cb:e6f2 with SMTP id c11-20020a7bc84b000000b00401d2cbe6f2mr9887916wml.32.1694515112752;
        Tue, 12 Sep 2023 03:38:32 -0700 (PDT)
Message-ID: <fdf87d82-aa3c-fd2e-6271-848f1a806fb2@citrix.com>
Date: Tue, 12 Sep 2023 11:38:04 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v2 3/5] tools: don't use distutils in configure nor
 Makefile
Content-Language: en-GB
To: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, Jan Beulich <jbeulich@suse.com>,
 George Dunlap <george.dunlap@cloud.com>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, Juergen Gross <jgross@suse.com>
References: <cover.1694450145.git.javi.merino@cloud.com>
 <7b3ecf211f60e0d6f7a4d146b62f9c28eff003f5.1694450145.git.javi.merino@cloud.com>
In-Reply-To: <7b3ecf211f60e0d6f7a4d146b62f9c28eff003f5.1694450145.git.javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/09/2023 5:51 pm, Javi Merino wrote:
> From: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
>
> Python distutils is deprecated and is going to be removed in Python
> 3.12. The distutils.sysconfig is available as sysconfig module in
> stdlib since Python 3.2, so use that directly.
>
> Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>

This breaks Py2, doesn't it?

> ---
>  m4/python_devel.m4       | 28 ++++++++++++++--------------
>  tools/libs/stat/Makefile |  4 ++--
>  2 files changed, 16 insertions(+), 16 deletions(-)
>
> diff --git a/m4/python_devel.m4 b/m4/python_devel.m4
> index bbf1e0354b..bb60857b03 100644
> --- a/m4/python_devel.m4
> +++ b/m4/python_devel.m4
> @@ -5,21 +5,21 @@ ac_previous_libs=$LIBS
>  AC_PATH_PROG([pyconfig], [$PYTHON-config], [no])
>  AS_IF([test x"$pyconfig" = x"no"], [
>      dnl For those that don't have python-config
> -    CPPFLAGS="$CFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> -        print("-I" + distutils.sysconfig.get_config_var("INCLUDEPY"))'`"
> -    CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> -        print(distutils.sysconfig.get_config_var("CFLAGS"))'`"
> -    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> -        print("-L" + distutils.sysconfig.get_python_lib(plat_specific=1,\
> +    CPPFLAGS="$CFLAGS `$PYTHON -c 'import sysconfig; \
> +        print("-I" + sysconfig.get_config_var("INCLUDEPY"))'`"
> +    CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import sysconfig; \
> +        print(sysconfig.get_config_var("CFLAGS"))'`"
> +    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
> +        print("-L" + sysconfig.get_python_lib(plat_specific=1,\
>          standard_lib=1) + "/config")'`"
> -    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> -        print(distutils.sysconfig.get_config_var("LINKFORSHARED"))'`"
> -    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> -        print(distutils.sysconfig.get_config_var("LDFLAGS"))'`"
> -    LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \
> -        print(distutils.sysconfig.get_config_var("LIBS"))'`"
> -    LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \
> -        print(distutils.sysconfig.get_config_var("SYSLIBS"))'`"
> +    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
> +        print(sysconfig.get_config_var("LINKFORSHARED"))'`"
> +    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
> +        print(sysconfig.get_config_var("LDFLAGS"))'`"
> +    LIBS="$LIBS `$PYTHON -c 'import sysconfig; \
> +        print(sysconfig.get_config_var("LIBS"))'`"
> +    LIBS="$LIBS `$PYTHON -c 'import sysconfig; \
> +        print(sysconfig.get_config_var("SYSLIBS"))'`"

I know the code was terrible to start with, but it's absurd to fork
multiple processes just to append different fields into the same variable.

Why not have a config.py in this directory which takes
CPPFLAGS/LDFLAGS/LIBS as an input prints everything it needs.  Then you
can repeat the import trick to prefer sysconfig and fall back to
distutils if sysconfig isn't available.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 10:41:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 10:41:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600384.936022 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0pg-0005AQ-DT; Tue, 12 Sep 2023 10:41:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600384.936022; Tue, 12 Sep 2023 10:41:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg0pg-0005AJ-99; Tue, 12 Sep 2023 10:41:24 +0000
Received: by outflank-mailman (input) for mailman id 600384;
 Tue, 12 Sep 2023 10:41:22 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qg0pe-0005AD-9s
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 10:41:22 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qg0pd-0003cr-1h; Tue, 12 Sep 2023 10:41:21 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qg0pc-0004ad-Sr; Tue, 12 Sep 2023 10:41:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=3nN1KHFUgWgtcGvhFLEIFZyesX3nsDZA47EtBRD/ydQ=; b=oaaI7Uk+tXBubqXFGkL6tzMOMo
	ambdnG834KryOuZVP0QEM5XdipwLOdZu+9InVOUi/RnyyPe8Ye/y5bXpsXuuWxEqPGlwIIDOSWc1L
	/pEuTBoq9M/hckRV2BIuoRPDT6JCs/mtoN5UeejJVvvmduWrp36QVtklXU6zZJYi9YNY=;
Message-ID: <37efc33e-fe20-4527-9ab5-0069c0f9c10f@xen.org>
Date: Tue, 12 Sep 2023 11:41:19 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
Content-Language: en-GB
To: Michal Orzel <michal.orzel@amd.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230911123401.27659-1-michal.orzel@amd.com>
 <366e89e3-bc3d-4c54-b1ad-8147abbabdc7@xen.org>
 <042fae56-e8e2-c079-2686-d27c5469b7fc@amd.com>
 <e24a7d3a-ca18-474b-bce2-84b97512c58e@xen.org>
 <faf253c3-2c99-9380-c120-a2dd3110b796@amd.com>
 <alpine.DEB.2.22.394.2309111620130.1847660@ubuntu-linux-20-04-desktop>
 <a649d56c-0bdd-2383-6073-477a8202f049@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <a649d56c-0bdd-2383-6073-477a8202f049@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 12/09/2023 08:18, Michal Orzel wrote:
> Hi Stefano,
> 
> On 12/09/2023 01:21, Stefano Stabellini wrote:
>> Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
>>
>>
>> On Mon, 11 Sep 2023, Michal Orzel wrote:
>>> On 11/09/2023 16:48, Julien Grall wrote:
>>>> On 11/09/2023 15:01, Michal Orzel wrote:
>>>>> Hi Julien,
>>>>>
>>>>> On 11/09/2023 15:14, Julien Grall wrote:
>>>>>>
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> On 11/09/2023 13:34, Michal Orzel wrote:
>>>>>>> Host device tree nodes under /chosen with compatible string
>>>>>>> "xen,evtchn-v1", "xen,domain-shared-memory-v1" are Xen specific and not
>>>>>>> meant to be exposed to hardware domain.
>>>>>>
>>>>>> So, how dom0 is meant to discover the static event channel, shared
>>>>>> memory it can use?
>>>>>
>>>>> For static shared memory:
>>>>> A node with this compatible is only meant for Xen since it contains information like host-guest mapping.
>>>>> Xen creates a different node for guests under /reserved-memory.
>>>>> Linux binding:
>>>>> https://elixir.bootlin.com/linux/latest/source/Documentation/devicetree/bindings/reserved-memory/xen,shared-memory.txt
>>>>> Xen node generation:
>>>>> https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/domain_build.c;hb=HEAD#l1407
>>>>
>>>> Ah good point. I agree with this one.
>>>>
>>>>>
>>>>> For static event channels:
>>>>> This is a bit weird so let me put it in a different way.
>>>>> 1) Xen does not create any node for static evtchn for domU.
>>>>> 2) The booting.txt states:
>>>>> There is no need to describe the static event channel info in the domU device
>>>>> tree. Static event channels are only useful in fully static configurations,
>>>>> and in those configurations, the domU device tree dynamically generated by Xen
>>>>> is not needed.
>>>>> 3) The "xen,evtchn" property specifies the local port as well as phandle of domU node.
>>>>> dom0 does not have access to domU nodes, therefore exposing a property with not existing phandle
>>>>> makes me think that:
>>>>
>>>> You have a point for the phandle. Yet, this is the only way dom0 can
>>>> find the event channel today. As we exposed it, I don't think we can
>>>> remove it until we have a proper replacement.
>>>>
>>>> We might get away if the feature is not supported it at all. But there
>>>> is no statement, so it is a little unclear whether the feature is meant
>>>> to be in technical preview.
>>>>
>>>> In any case, I think the commit message deserve a bit more explanation
>>>> as hiding "xen,evtchn-v1"/"xen,domain-shared-memory-v1" is not
>>>> uncontroversial.
>>>>
>>>>> a) point 2) applies to dom0 as well and we should hide this node or > b) there is a missing property for both dom0 and domUs to tell them
>>>> about static local port in a proper way
>>>>>
>>>>> Exposing Xen specific evtchn node only to dom0 and not to domU with required information happen to be found as first value
>>>>> in xen,evtchn is definitely not a proper solution.
>>>>
>>>> My concern here is we exposed such information to dom0. So as I said
>>>> above, I don't think we can simply remove it as there is no other way to
>>>> find such information today.
>>>>
>>>> It doesn't matter that it wasn't exposed to domU.
>>>>
>>>>> Also, there is no Linux binding for it.
>>>>
>>>> AFAIK the static event channel support was not added in Linux until very
>>>> recently. Also, I think the kernel doesn't directly use the static event
>>>> channel. So it is possible, this is just an overlook.
>>>
>>> I've found this thread in which Stefano, Rahul and Bertrand agrees on not exposing
>>> any dt property and the rationale behind:
>>> https://patchwork.kernel.org/project/xen-devel/patch/4836304496e6fbbea41348ed8cc9fcf6b0f3e893.1648049827.git.rahul.singh@arm.com/
>>
>> yes it was done on purpose
>>
>>
>>> I would not call exposing node to dom0 as something done deliberately given that it happens automatically by copying. So my understanding is
>>> that we did not want to expose any node and dom0 case was overlooked (since done automatically).
>>>
>>> Exposing half the interface (from system POV) in a way it should not be done (phandle) is not great IMO.
>>> In any case, if you insist on keeping xen,evtchn, I can leave with it.
>>>
>>> This feature is marked as tech preview with no Linux binding in place so I would not be worried.
>>
>> Yes I agree. I don't think we risk breaking anything. I would remove
>> that info from Dom0. Even if we wanted to expose it to Dom0, this is not
>> the right way to do it...
> 
> Ok, so my understanding was correct and the code itself need no change. Following Julien advice to add more
> information to commit msg, my proposal for it is as follows:
> 
> Skip the following Xen specific host device tree nodes/properties
> from being included into hardware domain /chosen node:
>   - xen,static-heap: this property informs Xen about memory regions
>     reserved exclusively as static heap,
>   - xen,domain-shared-memory-v1: node with this compatible informs Xen
>     about static shared memory region for a domain. Xen exposes a different
>     node (under /reserved-memory with compatible "xen,shared-memory-v1") to
>     let domain know about the shared region,
>   - xen,evtchn-v1: node with this compatible informs Xen about static
>     event channel configuration for a domain. Xen does not expose information
>     about static event channels to domUs and dom0 case was overlooked (by
>     default nodes from host dt are copied to dom0 fdt unless explicitly marked
>     to be skipped), since the author's idea was not to expose it (refer
>     docs/misc/arm/device-tree/booting.txt, "Static Event Channel"). Even if we
>     wanted to expose the static event channel information, the current node
>     is in the wrong format (i.e. contains phandle to domU node not visible by
>     dom0). Lastly, this feature is marked as tech-preview and there is no
>     Linux binding in place.

The new commit message LGTM.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 10:54:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 10:54:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600394.936032 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg11r-0000vl-IT; Tue, 12 Sep 2023 10:53:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600394.936032; Tue, 12 Sep 2023 10:53:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg11r-0000ve-Fm; Tue, 12 Sep 2023 10:53:59 +0000
Received: by outflank-mailman (input) for mailman id 600394;
 Tue, 12 Sep 2023 10:53:58 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=t/Nr=E4=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qg11q-0000vY-Hh
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 10:53:58 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on2060a.outbound.protection.outlook.com
 [2a01:111:f400:7eab::60a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id aa61ceda-515a-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 12:53:55 +0200 (CEST)
Received: from BL0PR01CA0010.prod.exchangelabs.com (2603:10b6:208:71::23) by
 SN7PR12MB6692.namprd12.prod.outlook.com (2603:10b6:806:270::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Tue, 12 Sep
 2023 10:53:51 +0000
Received: from BL02EPF0001A0FA.namprd03.prod.outlook.com
 (2603:10b6:208:71:cafe::ad) by BL0PR01CA0010.outlook.office365.com
 (2603:10b6:208:71::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37 via Frontend
 Transport; Tue, 12 Sep 2023 10:53:51 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A0FA.mail.protection.outlook.com (10.167.242.101) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Tue, 12 Sep 2023 10:53:50 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 12 Sep
 2023 05:53:48 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 12 Sep
 2023 03:53:48 -0700
Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by
 SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27
 via Frontend Transport; Tue, 12 Sep 2023 05:53:46 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: aa61ceda-515a-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ET9MhERgFccO5sDfNnWU+br0IqItKWWYqJSmMNdt8iX3bHWI2tbVCEEHz85VV0KRqaaKdaROIuXx2AaQaY4DZXq+X1rUFJ66bSg5A54GFjbFbEnBBnuk3WEF3Ii6OGA+hA8FcWkKJgEDxGTv9hZna2Ay7YvgT66VVSYTuOVAVSyE9uoZAlaUT2GEbHt4fdu/sSgM6+HODr9LIuxKQnf90VvZ7tu4+PRcdEy95Oh6KdNX7cwavEiNtUvdvBaGT47e/vF6K6GQIlCqG5GP5G4OKvUo8hS7SwTTri6PeqKdQbsyHmELP62I3jjfG6PzQKj4hk0C+tLwNgb8Qyjh8OnNoA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GjwFMUMLCNhNx+/NB72iRgMX4Ayb2lm/rQT3Lm14wZ4=;
 b=NaesUIE8SN0oslcIUaLzgJZtIh5I+tZJEXgAgAROfbAjyb6AyLarwalDX28bqYCtBwJ44pvtgeJiXV7uMtDLxixJC9Fd3MQ41bip9XfulS8TaVNii865CSDZ2uJdKYkAnjEOoIAZ1rbBxYA5Y/J5/sNY3mbD6Z6sxksjWqFMH1TcVPkiPYuOzhUS6gN1gN2Ln7ZJ+BXVyYICgO/fgYN3vcbwhDu56kKnWl9pkIswawXoBvHoj5XhYjd5YbeNYZClfQrioGl79A3z5wPbnWjLrvSKd/N1+JCottPCqO0ERBMOBS6PX//OBhgrixY9nmsD3ZH8XLTrrr2ZmPI/9Jx1bg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GjwFMUMLCNhNx+/NB72iRgMX4Ayb2lm/rQT3Lm14wZ4=;
 b=CtIKSklEMz+DSfp2F2WioEwI21MxFU5gHF44AHWuRG6JtlkbCYshlMtHYOtr9lwR1Wuz7YyhPPfjSWPO0XYLlO+zQneMnh7ei7UZeKgnRLuy/ZPb185TINxVDGUW4CwLzt2qOgw0Vdue3CHBNTw1f6v5+YNZ/tzOnGRoBtheATU=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Michal Orzel <michal.orzel@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Michal Orzel <michal.orzel@amd.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v2] xen/arm: Skip Xen specific nodes/properties from hwdom /chosen node
Date: Tue, 12 Sep 2023 12:53:41 +0200
Message-ID: <20230912105341.16687-1-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A0FA:EE_|SN7PR12MB6692:EE_
X-MS-Office365-Filtering-Correlation-Id: 347bd3f2-5eb9-466c-1275-08dbb37e8c93
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8QAxI3wGLOptz+jReXvvN/mquIDAVsxdg3YXD83esZP+M9kJpTy79L096JzvQ5uRBCHpSVk82TPn5/vCpMZMfFrq8OPObGSDCTz1EQMxOhs9LbswwpVPOT21fk+ICVL/wzPMprWaEtpx8XRDSaJ7iNI3EjAYUnhxj2slFr8pqUbBT7q1g4sTJok30FpLn5Q6dzYfl2/lsWOIKf5ZIEUkeedqMXZH3qdZYW6WfVKoIwDbx8eit9dX0tMo37He6ny/W1GgNu1No2YVgrbV+upf8AWNevfmgtSOUsxDeusZNtDH/ng7eluVKGSyRdetRMDMB0oNFtpXNFx3r93Hb/spFJmcnqQE13EYgcKGj1FpBF84aJCrxB/E0dic9R38pJ+9I1r24LV1OjAyWQQqTDnVuZAjP9H6X6Wv/L+xr9Sj9aTU3urFEgLmdvddUoNapX1WRiDYqXZEYwuhYoY1qBuJTFeth9wtNfvHaJygaXBxsUfNMKBAs7LIpIZZYFgPfY0XV0uaOvhXKR7zVDgsdG5EKOt+idZHgIkBK58GY4TkwTn98U1ty2ZBhs1p8YdrkDlRPhDNldba3ZvlDCOSCBvBm9x1+jwj7v6DE9MepWKjUs6j5TV4CsVM5oJqGGD3sGrLjDVLj8GpQxKA2IjUVlO7LvfWT2BRbRfjlD2SpJ/7m7exuDhq+lJrjohRV2yv3tq1dwCJhzeWdxY92hxFnfC7GKXY9Q8REG5ACoQ81pOjKD41H3/f3DEB7bW92BCngnWCMyeE+jLhSjkvtrV+EZLemw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(136003)(376002)(396003)(39860400002)(1800799009)(451199024)(186009)(82310400011)(40470700004)(46966006)(36840700001)(70586007)(356005)(82740400003)(36756003)(86362001)(81166007)(40460700003)(40480700001)(478600001)(8936002)(2906002)(6666004)(8676002)(4326008)(5660300002)(44832011)(41300700001)(426003)(83380400001)(36860700001)(336012)(54906003)(2616005)(6916009)(26005)(70206006)(316002)(1076003)(47076005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 10:53:50.8288
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 347bd3f2-5eb9-466c-1275-08dbb37e8c93
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A0FA.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB6692

Skip the following Xen specific host device tree nodes/properties
from being included into hardware domain /chosen node:
 - xen,static-heap: this property informs Xen about memory regions
   reserved exclusively as static heap,
 - xen,domain-shared-memory-v1: node with this compatible informs Xen
   about static shared memory region for a domain. Xen exposes a different
   node (under /reserved-memory with compatible "xen,shared-memory-v1") to
   let domain know about the shared region,
 - xen,evtchn-v1: node with this compatible informs Xen about static
   event channel configuration for a domain. Xen does not expose
   information about static event channels to domUs and dom0 case was
   overlooked (by default nodes from host dt are copied to dom0 fdt unless
   explicitly marked to be skipped), since the author's idea was not to
   expose it (refer docs/misc/arm/device-tree/booting.txt, "Static Event
   Channel"). Even if we wanted to expose the static event channel
   information, the current node is in the wrong format (i.e. contains
   phandle to domU node not visible by dom0). Lastly, this feature is
   marked as tech-preview and there is no Linux dt binding in place.

Signed-off-by: Michal Orzel <michal.orzel@amd.com>
---
Changes in v2:
 - update commit msg with better reasoning
---
 xen/arch/arm/domain_build.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 29dcbb8a2ee6..413568c0e2fd 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -1149,7 +1149,7 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
          * * remember xen,dom0-bootargs if we don't already have
          *   bootargs (from module #1, above).
          * * remove bootargs,  xen,dom0-bootargs, xen,xen-bootargs,
-         *   linux,initrd-start and linux,initrd-end.
+         *   xen,static-heap, linux,initrd-start and linux,initrd-end.
          * * remove stdout-path.
          * * remove bootargs, linux,uefi-system-table,
          *   linux,uefi-mmap-start, linux,uefi-mmap-size,
@@ -1158,7 +1158,8 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
          */
         if ( dt_node_path_is_equal(node, "/chosen") )
         {
-            if ( dt_property_name_is_equal(prop, "xen,xen-bootargs") ||
+            if ( dt_property_name_is_equal(prop, "xen,static-heap") ||
+                 dt_property_name_is_equal(prop, "xen,xen-bootargs") ||
                  dt_property_name_is_equal(prop, "linux,initrd-start") ||
                  dt_property_name_is_equal(prop, "linux,initrd-end") ||
                  dt_property_name_is_equal(prop, "stdout-path") ||
@@ -2300,6 +2301,8 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
     static const struct dt_device_match skip_matches[] __initconst =
     {
         DT_MATCH_COMPATIBLE("xen,domain"),
+        DT_MATCH_COMPATIBLE("xen,domain-shared-memory-v1"),
+        DT_MATCH_COMPATIBLE("xen,evtchn-v1"),
         DT_MATCH_COMPATIBLE("xen,xen"),
         DT_MATCH_COMPATIBLE("xen,multiboot-module"),
         DT_MATCH_COMPATIBLE("multiboot,module"),
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 11:06:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 11:06:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600403.936041 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg1DY-0004Gj-Im; Tue, 12 Sep 2023 11:06:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600403.936041; Tue, 12 Sep 2023 11:06:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg1DY-0004Gc-G4; Tue, 12 Sep 2023 11:06:04 +0000
Received: by outflank-mailman (input) for mailman id 600403;
 Tue, 12 Sep 2023 11:06:03 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg1DX-0004GS-Hb; Tue, 12 Sep 2023 11:06:03 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg1DX-00043a-7x; Tue, 12 Sep 2023 11:06:03 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg1DW-0005FY-SX; Tue, 12 Sep 2023 11:06:02 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qg1DW-00088o-S3; Tue, 12 Sep 2023 11:06:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=A/dcy7qsnFkO9sMqSMUmRNvDzjH2EcmgrehrRs1KUNI=; b=3LAT7IBnfSD3nR/5ku5ri4pYrr
	3XtSCCR0q60PpA8HQj/UGzSaW9rKzY2BtGrceOihFqQw32tn19SysSP95j0Qjtl9aY10OC8Ka96i9
	jNl05CSQ4JWb7arhgZdW+sQRetRGcNqy6dKtQT8msj9bFtvougcZs4quIfaCTIXo6L6c=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182961-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182961: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=b7a48bed16dd75ce6a864540ab7dc38d8f1f657b
X-Osstest-Versions-That:
    ovmf=e880c307c5808a9a972e5bf3b859396610edd67b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 12 Sep 2023 11:06:02 +0000

flight 182961 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182961/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 b7a48bed16dd75ce6a864540ab7dc38d8f1f657b
baseline version:
 ovmf                 e880c307c5808a9a972e5bf3b859396610edd67b

Last test of basis   182956  2023-09-12 03:10:46 Z    0 days
Testing same since   182961  2023-09-12 07:44:09 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Laszlo Ersek <lersek@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   e880c307c5..b7a48bed16  b7a48bed16dd75ce6a864540ab7dc38d8f1f657b -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 11:51:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 11:51:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600413.936052 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg1v4-000865-Kt; Tue, 12 Sep 2023 11:51:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600413.936052; Tue, 12 Sep 2023 11:51:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg1v4-00085y-I7; Tue, 12 Sep 2023 11:51:02 +0000
Received: by outflank-mailman (input) for mailman id 600413;
 Tue, 12 Sep 2023 11:51:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=n0tO=E4=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qg1v2-00084Z-Kw
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 11:51:01 +0000
Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com
 [66.111.4.25]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a2ecb9c2-5162-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 13:50:58 +0200 (CEST)
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id 6053B5C0179;
 Tue, 12 Sep 2023 07:50:57 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute4.internal (MEProxy); Tue, 12 Sep 2023 07:50:57 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue,
 12 Sep 2023 07:50:55 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a2ecb9c2-5162-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm1; t=
	1694519457; x=1694605857; bh=pGBUjopvGIqsMF05ub/bUR9JHr+RXhuj7Ug
	1J2Vh15s=; b=nJA3l2cVVQ60E3JOMSpFx6WJgFpI5RqjyW/ozC75DG03HvjnBk3
	pv1gRo0pPHPsXUILDQzjGZgNE0GJjrvlfKbrwPNymSrj5ViMtS85x+G68ffmFxht
	0YuIgtEfIWY5xA+DNqHaWYWKQLN5cdXymbHI1qHgnIM2nSFxImRU7yuruujD5tV1
	V9Y5sab2xrEl8MMVkxD+In0PzWdPAmJUwaZJgPrCbmXSuHJbze6oVYHnnJP9noW4
	EIhg++KCndmNGH0M12hc8MQAy6nthfbjK2L6MZqO62xCx+G8Rpoor9oRuL0cxZhd
	MxucrYmqa/k81MdTOHINpQDEAH6P4xIrFwA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm1; t=1694519457; x=1694605857; bh=pGBUjopvGIqsM
	F05ub/bUR9JHr+RXhuj7Ug1J2Vh15s=; b=CFjEEkfg7TZWNfuBidOlZmPosZPGw
	xbNgcvKdbCOlvDbfxrwCoPKVZtaFDD7uHrWwWC2JqVKvkkzXbWPF4EQxVVpQ0Xrb
	vlR79IzX9n2eNDI80IcZkalJbBAdTRCkL+5JsWzVb6yMygxePDVxglD/sjgCoJ4k
	XQdm9nBrLW8LLQgfCIJF92N11ojSpROeTEOw8B5qGGOIPDtGDsB1Ue1ppASHl3r5
	GmZzUZhfsMp7/kgEj2lhNMa4NX3cqUfNafdTt26XvDJeGWzoWKDh3AHiiwgVog5x
	2k33zgbRs59E/KtXycNLGyJ92DVNfDuriTTyVHhykln1lkscFk0uKWZcw==
X-ME-Sender: <xms:oFAAZbHf-bIS4jSV1yOb113P3GkgBaitsuF7HvqVw1vWZWVu18ZYow>
    <xme:oFAAZYVgf7B4GJGefBorul4AhetLWTG5fYrb7SZVnpG_cZr-QIAsITIMS9MRRKqij
    3JsGN8xGNh1Sg>
X-ME-Received: <xmr:oFAAZdLu796zTOj5xIENacIdnaEDUKaLUXYdilm5PuoS7Wo2ZkJsbcMw_S6Fsa4YfbHtOWHFfreEPMx92RlsJB8-fmDKR1nlB3A>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudeiiedggeehucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtjeenucfhrhhomhepofgrrhgv
    khcuofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinh
    hvihhsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepgfdu
    leetfeevhfefheeiteeliefhjefhleduveetteekveettddvgeeuteefjedunecuvehluh
    hsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghk
    sehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:oVAAZZHHNAd7xdKCT2XAtA-5vHX_c_-NigEb3wqujejCL6xh6jQgxg>
    <xmx:oVAAZRUDtXBDhuwMRDkvQAMejMWeVK-LXCH4uZVZpNDRnQklwBVa0w>
    <xmx:oVAAZUPKGSwFNfQ77hhf7yqA2BdEEUzL_qGkbLwVa9AFM3bIjlEGkQ>
    <xmx:oVAAZfdzj5zMXH6bitgpp8e8vVhpUd91qC7-j8bN10FM8VV9Cy8kvw>
Feedback-ID: i1568416f:Fastmail
Date: Tue, 12 Sep 2023 13:50:52 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org,
	Jan Beulich <jbeulich@suse.com>,
	George Dunlap <george.dunlap@cloud.com>, Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Juergen Gross <jgross@suse.com>
Subject: Re: [XEN PATCH v2 3/5] tools: don't use distutils in configure nor
 Makefile
Message-ID: <ZQBQnGOU/voT6QcV@mail-itl>
References: <cover.1694450145.git.javi.merino@cloud.com>
 <7b3ecf211f60e0d6f7a4d146b62f9c28eff003f5.1694450145.git.javi.merino@cloud.com>
 <fdf87d82-aa3c-fd2e-6271-848f1a806fb2@citrix.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="iUjA78LAEWtaJC1k"
Content-Disposition: inline
In-Reply-To: <fdf87d82-aa3c-fd2e-6271-848f1a806fb2@citrix.com>


--iUjA78LAEWtaJC1k
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Tue, 12 Sep 2023 13:50:52 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org,
	Jan Beulich <jbeulich@suse.com>,
	George Dunlap <george.dunlap@cloud.com>, Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Juergen Gross <jgross@suse.com>
Subject: Re: [XEN PATCH v2 3/5] tools: don't use distutils in configure nor
 Makefile

On Tue, Sep 12, 2023 at 11:38:04AM +0100, Andrew Cooper wrote:
> On 11/09/2023 5:51 pm, Javi Merino wrote:
> > From: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblethingslab.com>
> >
> > Python distutils is deprecated and is going to be removed in Python
> > 3.12. The distutils.sysconfig is available as sysconfig module in
> > stdlib since Python 3.2, so use that directly.
> >
> > Signed-off-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblething=
slab.com>
>=20
> This breaks Py2, doesn't it?

I was thinking that too, but "sysconfig" module seems to be in Python
2.7 too.

> > ---
> >  m4/python_devel.m4       | 28 ++++++++++++++--------------
> >  tools/libs/stat/Makefile |  4 ++--
> >  2 files changed, 16 insertions(+), 16 deletions(-)
> >
> > diff --git a/m4/python_devel.m4 b/m4/python_devel.m4
> > index bbf1e0354b..bb60857b03 100644
> > --- a/m4/python_devel.m4
> > +++ b/m4/python_devel.m4
> > @@ -5,21 +5,21 @@ ac_previous_libs=3D$LIBS
> >  AC_PATH_PROG([pyconfig], [$PYTHON-config], [no])
> >  AS_IF([test x"$pyconfig" =3D x"no"], [
> >      dnl For those that don't have python-config
> > -    CPPFLAGS=3D"$CFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> > -        print("-I" + distutils.sysconfig.get_config_var("INCLUDEPY"))'=
`"
> > -    CPPFLAGS=3D"$CPPFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> > -        print(distutils.sysconfig.get_config_var("CFLAGS"))'`"
> > -    LDFLAGS=3D"$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> > -        print("-L" + distutils.sysconfig.get_python_lib(plat_specific=
=3D1,\
> > +    CPPFLAGS=3D"$CFLAGS `$PYTHON -c 'import sysconfig; \
> > +        print("-I" + sysconfig.get_config_var("INCLUDEPY"))'`"
> > +    CPPFLAGS=3D"$CPPFLAGS `$PYTHON -c 'import sysconfig; \
> > +        print(sysconfig.get_config_var("CFLAGS"))'`"
> > +    LDFLAGS=3D"$LDFLAGS `$PYTHON -c 'import sysconfig; \
> > +        print("-L" + sysconfig.get_python_lib(plat_specific=3D1,\
> >          standard_lib=3D1) + "/config")'`"
> > -    LDFLAGS=3D"$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> > -        print(distutils.sysconfig.get_config_var("LINKFORSHARED"))'`"
> > -    LDFLAGS=3D"$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> > -        print(distutils.sysconfig.get_config_var("LDFLAGS"))'`"
> > -    LIBS=3D"$LIBS `$PYTHON -c 'import distutils.sysconfig; \
> > -        print(distutils.sysconfig.get_config_var("LIBS"))'`"
> > -    LIBS=3D"$LIBS `$PYTHON -c 'import distutils.sysconfig; \
> > -        print(distutils.sysconfig.get_config_var("SYSLIBS"))'`"
> > +    LDFLAGS=3D"$LDFLAGS `$PYTHON -c 'import sysconfig; \
> > +        print(sysconfig.get_config_var("LINKFORSHARED"))'`"
> > +    LDFLAGS=3D"$LDFLAGS `$PYTHON -c 'import sysconfig; \
> > +        print(sysconfig.get_config_var("LDFLAGS"))'`"
> > +    LIBS=3D"$LIBS `$PYTHON -c 'import sysconfig; \
> > +        print(sysconfig.get_config_var("LIBS"))'`"
> > +    LIBS=3D"$LIBS `$PYTHON -c 'import sysconfig; \
> > +        print(sysconfig.get_config_var("SYSLIBS"))'`"
>=20
> I know the code was terrible to start with, but it's absurd to fork
> multiple processes just to append different fields into the same variable.
>=20
> Why not have a config.py in this directory which takes
> CPPFLAGS/LDFLAGS/LIBS as an input prints everything it needs.=C2=A0 Then =
you
> can repeat the import trick to prefer sysconfig and fall back to
> distutils if sysconfig isn't available.
>=20
> ~Andrew

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--iUjA78LAEWtaJC1k
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmUAUJwACgkQ24/THMrX
1yzc9AgAkDt3fMmS4w0CS3b+7KS7z6rh3EsGvrTR0Sw0Z7sXRJHKiz0VYk1iFEpj
FC37Ct0fvnOw+rtGabLl2BaJmW6Kg9aUxyHxOUZOMq88XA9S+kJrsIU/J0IfW/fR
iJw2jRWrSYNY1fOzID7oIKKdbjT/sH2lbB5vVJgJGp/vh7NteM8YB8kT6P7Vbc2c
fMpWgUzAWusOdkQAtLjuAir0nfZK6sdzOhfKcGODgUw9zDOXpzpYR9p+5j+N69EP
Opzr66olyY+V72kHV+nR2f/V97yzyt/oTQ1iYZWOmGki2fx0/v9fMlkPLOcy7Dup
3dyewzYNNFP+EXvrgrvBw17bXcx6qw==
=2C75
-----END PGP SIGNATURE-----

--iUjA78LAEWtaJC1k--


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 12:17:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 12:17:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600443.936061 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg2Kd-0005Br-1b; Tue, 12 Sep 2023 12:17:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600443.936061; Tue, 12 Sep 2023 12:17:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg2Kc-0005Bk-V6; Tue, 12 Sep 2023 12:17:26 +0000
Received: by outflank-mailman (input) for mailman id 600443;
 Tue, 12 Sep 2023 12:17:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Mt1s=E4=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qg2Kb-0005AK-Lg
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 12:17:25 +0000
Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com
 [2a00:1450:4864:20::32b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 53e38d34-5166-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 14:17:23 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-401bdff4cb4so59410345e9.3
 for <xen-devel@lists.xenproject.org>; Tue, 12 Sep 2023 05:17:23 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 d21-20020a1c7315000000b00400268671c6sm12635375wmb.13.2023.09.12.05.17.22
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 12 Sep 2023 05:17:22 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 53e38d34-5166-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694521042; x=1695125842; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=TfQbF+10Yr9U5rXDmXrTOP0lHxoo5t96uTGA5j+vw2Q=;
        b=ScUcrTNsxnFtK7TAjYdWcK+cdfOLAcAPtHpJuQg70Tgpl7lRGhaHoKmd2RmYQcOeaX
         JFX54/o4a1ooq73U5YxUxYaGdDsAcQcBsUs94qJ75Xm4SYPGnqqb2gjZSeTKp887s1n6
         HW9Dor2aWBDnWxJlJl+VL6fHNAAHXZqNSe8iY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694521042; x=1695125842;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=TfQbF+10Yr9U5rXDmXrTOP0lHxoo5t96uTGA5j+vw2Q=;
        b=OsPVtQtjheV1hwHvyAG3lpOv8UheDlHC79qRd6IeYf7N1oEyFsPJU8YfJk5fGMGrND
         RNbdHno2VMpX1Wjj4oqZHR/+3ys6XEx4EajhrJdy6J+WibZG+dW4Jn2eqZ8S8+b0dEFU
         8wd9Hp9oNTlkVPLKPOPDjT/4LgbZTNv+p6VBE9SMg38GmUQ/iz1hvjUENCq5m18zb0GK
         ePEjpKqyepuohboDBX/b3Du69my1QT47gyDiCoGoRiI/kkSWaAjkm9Wz4u7oTnXcLYoi
         5LjCxUrgAabo8J87kHgUayO6yEcOy96bxqFX0DlTZXjpOcaWNKiS/aKjNvaq6cXrSn6X
         zCQw==
X-Gm-Message-State: AOJu0YzfKeoKvmxnLVKBl79Q1ww1TYQzqnyg1Cj3GgRQKRAd3fvM4Y2p
	/u+7g86YE72j/Q8Gy/h+8iXu8w==
X-Google-Smtp-Source: AGHT+IH6a393JEKGrtIfvJeW1ErFbsQjYIxBrgOu5sdPjQDky/qknCXphHWFhTETqF6742nOSz/COw==
X-Received: by 2002:adf:f302:0:b0:31a:e6bf:9032 with SMTP id i2-20020adff302000000b0031ae6bf9032mr10024177wro.4.1694521042573;
        Tue, 12 Sep 2023 05:17:22 -0700 (PDT)
Message-ID: <ac894d3f-c0f2-3928-c8f8-15f87573211f@citrix.com>
Date: Tue, 12 Sep 2023 13:17:21 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v2 3/5] tools: don't use distutils in configure nor
 Makefile
Content-Language: en-GB
To: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>
Cc: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org,
 Jan Beulich <jbeulich@suse.com>, George Dunlap <george.dunlap@cloud.com>,
 Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>,
 Juergen Gross <jgross@suse.com>
References: <cover.1694450145.git.javi.merino@cloud.com>
 <7b3ecf211f60e0d6f7a4d146b62f9c28eff003f5.1694450145.git.javi.merino@cloud.com>
 <fdf87d82-aa3c-fd2e-6271-848f1a806fb2@citrix.com> <ZQBQnGOU/voT6QcV@mail-itl>
In-Reply-To: <ZQBQnGOU/voT6QcV@mail-itl>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 12/09/2023 12:50 pm, Marek Marczykowski-Górecki wrote:
> On Tue, Sep 12, 2023 at 11:38:04AM +0100, Andrew Cooper wrote:
>> On 11/09/2023 5:51 pm, Javi Merino wrote:
>>> From: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
>>>
>>> Python distutils is deprecated and is going to be removed in Python
>>> 3.12. The distutils.sysconfig is available as sysconfig module in
>>> stdlib since Python 3.2, so use that directly.
>>>
>>> Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
>> This breaks Py2, doesn't it?
> I was thinking that too, but "sysconfig" module seems to be in Python
> 2.7 too.

Oh, so it is.  Lovely that the documentation says this...

It seems to have appeared in Py2.7 and 3.2 together. 
https://docs.python.org/2.7/library/sysconfig.html

I notice that README currently says Py2.6.  We can definitely bump that
to 2.7, and take this patch as-is.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 12:25:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 12:25:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600449.936072 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg2S6-0007Ab-Pn; Tue, 12 Sep 2023 12:25:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600449.936072; Tue, 12 Sep 2023 12:25:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg2S6-0007AU-Ms; Tue, 12 Sep 2023 12:25:10 +0000
Received: by outflank-mailman (input) for mailman id 600449;
 Tue, 12 Sep 2023 12:25:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Mt1s=E4=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qg2S5-0007AO-46
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 12:25:09 +0000
Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com
 [2a00:1450:4864:20::330])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6872f6c6-5167-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 14:25:07 +0200 (CEST)
Received: by mail-wm1-x330.google.com with SMTP id
 5b1f17b1804b1-3ff7d73a6feso58646915e9.1
 for <xen-devel@lists.xenproject.org>; Tue, 12 Sep 2023 05:25:07 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 o7-20020a05600c378700b003fe4548188bsm15958689wmr.48.2023.09.12.05.25.06
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 12 Sep 2023 05:25:06 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6872f6c6-5167-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694521507; x=1695126307; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=xJNrf6Zxy/uko3JYPqMu/axYZtuBEtpz+ynXNMvatDc=;
        b=syrY/uHFzYhuHHlKKMMZWY+piYXpMqOB4RWPXvf9m97cr8cwjalRKEMLUj7IvVUDdm
         FnbLcyaFvE3pkSg7loTdJUNFsJ+B2UynZ8VNVCSHlxRLM4F4UiFgm9BCCNNSNPSKkIz1
         PFWsr81RP3xHVDQqpUSUtjXwnYYkzutpqIu0o=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694521507; x=1695126307;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=xJNrf6Zxy/uko3JYPqMu/axYZtuBEtpz+ynXNMvatDc=;
        b=nnS7T0GrryMTWWnXY9n/5nNrzVzphljtgWkWBkGCkwxeVhQbyPgdfCa1wzrRTE3u3i
         6ieTDle3DeIA9z9u3mOwtKwa+XyNd0ZYpWAElzlP3X4wvI1o97SyQ48zWNGqVbjO6O4u
         laRpdozsByOc3wlmvCMtO5mBzCoqRPPGpa2oPojqGISOijRgxklIA5clWinomE2Glvk+
         ljKe7nXeUN4H2k/vxdiVI9VK882PCKi4zLGtd0xnk3L0Ahj7CUk+bq0akBXcediUHhxQ
         rVoCA4NaQH4jtIHNpwKcjIo22oud+NmMKUUGGrVQ2dQkHI6d3cJF/3/ArflMuroOwf6B
         CF8g==
X-Gm-Message-State: AOJu0Yxq8UekweoV9angZdIbvP/YUUkt8zAnu3Y9IUKEBd/FTFwfjAt1
	eP9/gLgk3dPuWHsDrWSVQ3eGVA==
X-Google-Smtp-Source: AGHT+IFKfAJ1TxXIuNMILZs8KM7B/ex+DzqO+Mfengk6xC8R3x38C5sYNUkzSa5dnPzQETmvGHJb8Q==
X-Received: by 2002:a7b:c8c3:0:b0:401:b3a5:ebf8 with SMTP id f3-20020a7bc8c3000000b00401b3a5ebf8mr11200382wml.16.1694521506752;
        Tue, 12 Sep 2023 05:25:06 -0700 (PDT)
Message-ID: <3bf11a57-d3f0-7dcc-b31e-8ecb598346bc@citrix.com>
Date: Tue, 12 Sep 2023 13:25:06 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v2 5/5] README: update to remove old note about the
 build system's python expectation
Content-Language: en-GB
To: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, Jan Beulich <jbeulich@suse.com>,
 George Dunlap <george.dunlap@cloud.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <cover.1694450145.git.javi.merino@cloud.com>
 <2b98d4409f0220c5b24517c5b230344228717eb8.1694450145.git.javi.merino@cloud.com>
In-Reply-To: <2b98d4409f0220c5b24517c5b230344228717eb8.1694450145.git.javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 11/09/2023 5:51 pm, Javi Merino wrote:
> The configure script tests for the availability of python3, python and
> python2 in that order and sets PYTHON to the first one found in path.
> You don't need to have a symlink to python.

I think this was fixed by 5852ca48526316918cd82fba1033a6a5379fbc4c
"build: fix tools/configure in case only python3 exists"

> Signed-off-by: Javi Merino <javi.merino@cloud.com>

Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>

I'm happy to fix the commit message on commit.


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 12:43:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 12:43:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600454.936081 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg2jy-00034i-A8; Tue, 12 Sep 2023 12:43:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600454.936081; Tue, 12 Sep 2023 12:43:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg2jy-00034b-7T; Tue, 12 Sep 2023 12:43:38 +0000
Received: by outflank-mailman (input) for mailman id 600454;
 Tue, 12 Sep 2023 12:43:36 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LIu2=E4=citrix.com=prvs=6128f91ed=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qg2jw-00034V-76
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 12:43:36 +0000
Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com
 [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fabab64d-5169-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 14:43:33 +0200 (CEST)
Received: from mail-sn1nam02lp2045.outbound.protection.outlook.com (HELO
 NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.45])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 12 Sep 2023 08:43:27 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MN2PR03MB5375.namprd03.prod.outlook.com (2603:10b6:208:1ee::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Tue, 12 Sep
 2023 12:43:22 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 12:43:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fabab64d-5169-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694522613;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=0kYb5+Qn0qoz7b/CzaIPgKbYizgsNIZc8LMMvIlSzuw=;
  b=J8DaZcBV/ZIFFdFVy8N8dDja/whtQC1lTXAtBiqYCoTu98lKZRGwK5sx
   djqq9s2M6WXUYLGJGlh1QVrojiTmMDBTpQag/9Levd3nNAf5l80kexlJD
   fdXexvnOaqgks2JX+mT4PyaHkvToOp2gZXu+Fm79K6vK2G7d6Jfhj/41B
   o=;
X-CSE-ConnectionGUID: e0CCQHTxTeacDUhgn0rYSg==
X-CSE-MsgGUID: 2Oh3lnb2SyuSzV+r/CFX8w==
X-IronPort-RemoteIP: 104.47.57.45
X-IronPort-MID: 122246842
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:DGkIYKPyJo/onhDvrR1ClsFynXyQoLVcMsEvi/4bfWQNrUp30mYDz
 jEYUT2FaPjbYGLwLtBzbd619RwCsMDVmtJnTQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/jrRC9H5qyo42tJ5wZmOZingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0usvKkp31
 cAIFD0EZTy+h+2wmKiKceY506zPLOGzVG8ekldJ6GmDSM0AGNXESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PVxvzW7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqCj22rGfwXmTtIQ6Tpq4rfpsigeo13EoGiNVTxyQj8nplRvrMz5YA
 wlOksY0loAp9UmsSPH8WQO5u3+OuhMAW9tWHPY+4QvLwa3Riy6JC25BQjNfZdgOsM4tWSdsx
 lKPh8nuBzFkrPuSU3313rWeoC62OCMVBXQffiJCRgwAi/H8pKkjgxSJScxseIawh8fwECv9w
 BiLqjY/nLQZicMX16S98kvDijjqrZ/MJjPZ/S3SV2Ohqxh/PYisYtTy7UCBtaodaoGEUlOGo
 X4I3dCE6/wDBo2MkyrLR/gRGLau5LCONzi0bUNTIqTNPg+FoxaLFb28KhkndC+F7u5slefVX
 XLu
IronPort-HdrOrdr: A9a23:cvqJ1KPQy3XUnsBcT6D255DYdb4zR+YMi2TDiHoddfUFSKalfp
 6V98jztSWatN/eYgBEpTmlAtj5fZq8z+8N3WB1B9uftWbd2FdAQLsSjrcKhgeQYBEWldQtqZ
 uIEZIOb+EYZGIS5aia3OD7KadH/DDuytHUuQ609QYIcegFUdAD0+8vYTzraHGeCTM2c6bQU/
 Gnl7p6jgvlXU5SQtWwB3EDUeSGj9rXlKj+aRpDKw875BKIhTaI7qe/NxSDxB8RXx5G3L9nqA
 H+4kbEz5Tml8v+5g7X1mfV4ZgTsNz9yuFbDMjJptkJJi7qggOIYp0kf7GZpjg6rMym9V5vut
 jRpBULOdh19hrqDyqIiCqo/zOl/Ccl6nfkx1PdqXz/ofbhTDZ/L8Zan4pWfjbQ9kJl5bhHoe
 p29lPck6ASIQLLnSz76dSNfxZ2lnCsqX5nteIIlXRQXaYXdbcUh40C+0F+FosGAUvBmckaOd
 grKPuZyOddcFucYXyclm5zwOa0VnB2JRuCSlhqgL3h7xFm2FRCi2cIzs0WmXkNsLgnTYNf2u
 jCOqN00JlTU84/d8tGdak8aPryLlaIbQPHMWqUL1iiProAIWjxp5n+56hwzP22eaYP0IA5lP
 36IRxlXFYJCgLT4PC1rd52GkinehT+Yd2t8LAT23FBgMy8eFKxWhfzDWzHkKOb0oci64PgKr
 KO0altco7exFvVaPl0NjLFKudvwFklIbkoU4UAKiWzi/OODLHWncrmV9uWDIbRMF8fKxDC6z
 04LXXOGPk=
X-Talos-CUID: =?us-ascii?q?9a23=3AW4NbMWm0iDd0y/4/BM+geDmLURzXOXCF51zpA3O?=
 =?us-ascii?q?oNWtgQ5GoSVCWoLlVqMU7zg=3D=3D?=
X-Talos-MUID: 9a23:3FPxjgbq1gXURuBT7Rjs3zVkPp1T8rmVGn5Oi9ItlfnUKnkl
X-IronPort-AV: E=Sophos;i="6.02,139,1688443200"; 
   d="scan'208";a="122246842"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=H74tgK52N2ZXa+ApGsxhMhc38EsxmQDGlT8ZcqupePK/ocRCQeONNkxTf7bN5wRAJSvoYe+8YC1J1hXrcFmlxBKUbwsTZsNLR9BIvI5OgREa6J3R+5B9eTo7m/ZxFwqTC29vdfEKJsS7UDTdGKyIoJtHkVICxdTQ0UUeOLDWVb7KDHSQ57lKUtRlJFIFPRAyoNEaPZua6ld1Ih8EUO2eC0y3zvhUVHoFUnuy0Ekiw75+7CTogtVOdu5E3+0dy9SX1LOch+bMIjxnq6hg4BZJaESQMwmKmSq4/jyhXTYTdjQjBxv7Akve5rIJIQBDh7D715A49xC7QYCuT8B2hc0i/A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dRBvMra1lmS64FReeDF5pza9jmMIBQ3Lan0L+hv2AGA=;
 b=Jy1ZbovHoBmkVYpfkcGwcd1xUGlYsfeDWqLmuNZgPcT+k2SF0hicbv8jfe6miof8QeimlJ9iOH7PyK2Cq4vzm3m6q6Fi20YVpMsHc8iB3C3bEEI6VHF1Mf/7dlFUia7Gh7OELL8hdJSCjaLXxTRK3kBm5uv8Qh8A0Dx56lRx0fCC5ZW/WX+TzLjuVgPIEu764A6Pg9wj2yCHcyRfTbyfp+OVPO+bmvF16GjC9BUTzUXdEwn9XEZfO+YElaAdeREihhXelBcISuGhCv7MOTd0az1khQnJP5OZCWvQTgnvggspxJJK6i4AxPDHrauMDeQt7MyFW9CiLc726Q0Q3iGPCQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dRBvMra1lmS64FReeDF5pza9jmMIBQ3Lan0L+hv2AGA=;
 b=txJ7wLu/2oSzk+z/RFQXHWBuTyE5nfABLUYGHBMnTxWi2C/HTYxr6EWH6mQvJlyjDacKD9lyq6OWiXqp+3qP4wLNS9XSx6gwZ7XGD+ydBdjpGUi38PoW9e1n/Psk3coInbP/Msp9XDGnWlUVz0/B4aDBu9tZ0R+sH//eYoPsQts=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 12 Sep 2023 14:43:14 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Simon Gaiser <simon@invisiblethingslab.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries marked as unusable when
 parsing MADT
Message-ID: <ZQBc4qccWlRJoDqQ@MacBook-MacBook-Pro-de-Roger.local>
References: <20230911101238.18005-1-simon@invisiblethingslab.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20230911101238.18005-1-simon@invisiblethingslab.com>
X-ClientProxiedBy: MR1P264CA0125.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:50::23) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|MN2PR03MB5375:EE_
X-MS-Office365-Filtering-Correlation-Id: 2da544d5-be60-4865-1321-08dbb38dd90e
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qmMHJJzwCTRAzyysLNcUdDac9FMA2IuQyZ26lUj4FpauC4GJsHzs0QN/83tvyNtp1QddU2s9mlEt4Ef6owl5gMpxM1YWHowk8k46OMhuPA2d5l8zqud4GTqxQXZhVt1gC6vj1vUo9StpHVceii99xyWpVEjBmhRRC3zEqKMRxbnlmZZMGeyNDE0al+1jRqfl4TQ/qhj0umEH7C1QFyKE3HVCKjffz7Uw7tbNvdWXF5Fc92vXbBW5HMfceejN7a6eCGgR2PgYvEPLwEbYyVynwBcAqz15+M5S3IjLdLKIOL5jYYHggchVKrBGPl6IgynQz04P1vxLgNMNXGQ7YJS4tnCQtzuUdaHzEhRh2KjtmXt3yJfNFZLUx1u6IE52HOdp/k7GFwba+/yvTLjEAG0aVEi5zTgSKWJUWdY/R3qt33rbQr2osa3SwliOvw5ccHMKCrB2BFpjnA87T0K6/+8944AtBVeXm2ndkdRBHiH2Xe8fubD912tq1UYfGBVGCYZT/N48gYNO+QqzNSsteirnmvM1pYz1TPr4rn2Ql4MZeTY=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(396003)(346002)(136003)(39860400002)(451199024)(1800799009)(186009)(85182001)(26005)(5660300002)(83380400001)(86362001)(41300700001)(8936002)(4326008)(8676002)(6506007)(6666004)(6486002)(6512007)(9686003)(66946007)(478600001)(2906002)(38100700002)(82960400001)(966005)(6916009)(54906003)(66476007)(66556008)(316002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bnRiUGdHMzVvVWVJV1ZQQ2tQWW5qaHNoZTJsM2hHamRJbXVQMVJjbVBaZDZm?=
 =?utf-8?B?MHNHVFU1SmhlZkR3THN6K3c5UWZHclVXR0NEblN4RHl3aW1JbnUxa2xHeTRM?=
 =?utf-8?B?SHFiRXU4dWgvdjJpa1ZiVHNlU3h5Y0UraUhjTHZkcmMrQW81MVhMVW1GSkEv?=
 =?utf-8?B?T1dHU3pZUytUUXArbHdtUmFrTExPdk0zcXFEVUY2WWtNVDNZTjQrU2lrNzB1?=
 =?utf-8?B?SDJSOWxuZXVKSzM2N1NkMkRVN0gzclIxWC9RbFJYdUxld2tucjBweGdzNlgz?=
 =?utf-8?B?WE1LeldMb3hzUllPU3FPM2FiSnNaSUlLOXcxL1lWMWdMN01XK3pMcDEvaDcr?=
 =?utf-8?B?djVsamFQY0hDa2UzTFdXQ1ZOV2FLbzdzM3dkT3djOHNNcGVOQ3VxdFZ2bE1z?=
 =?utf-8?B?cXUwSDBOUmtkOVdDQjJDOW53SVZJRWpnVndTQ0I2azFBVFAzU2kyL0xHcjd3?=
 =?utf-8?B?YVhpRnFMZ3VTT0NscmNJUlJGQlZYR2RTSFJIN0J0bS80a2Jjdmg0ay9KTlFW?=
 =?utf-8?B?cEJWZWVlcURreUhGUlc2dmtqc0ErYXdLWVVuY2RXdWw5cHpkMTV3ZDlwdFFt?=
 =?utf-8?B?M1pPa3huSVV0clV0U0ZXcjZyOS96OEtTTWdiV09pNGRGN0ZPY1dCVExNR0ha?=
 =?utf-8?B?Mkl3SEJSOHhVdlZtS0pwMHhRcUlMN2ZJYUVZS1hKSHV2eGtXVmFHWHJhVjB4?=
 =?utf-8?B?ZGk1dm1jNnZSaVFGNTJzQ3VienB4WldYQWFONVp1dUJmbW5UUStsMHgvT3Y1?=
 =?utf-8?B?NUZENnBsZjJ2MFVWcTlrOERRWmN6SDRqV1R1R2FDTWJNVFI4U3NhbVZvbmFo?=
 =?utf-8?B?d1YwY0RsTy9lR0crcmtFTERiQ3FmdldIdnc1WWhhbmRtYnpVS3daaUhnMmNH?=
 =?utf-8?B?bXVRZS8ycndiNDBxYXgwcFBtQ1VnSmdrU1VydVZZajdoUk03K2dScllXWDBl?=
 =?utf-8?B?QlROUVRxZndwcHg0RzNKbjU4VlpzdjBBbUVZYzdkWnBTVU5KcUlHL0dBUTQz?=
 =?utf-8?B?K1E4eUo5VVB5djhOL2Y5KzNCajB5VUtrRjJsTHZJR1dXOXNoZW0wSzNKOFVO?=
 =?utf-8?B?ck5mMVYwOUFYOUhZaER1OXZ0bnNYTEg3R1dCUDB6SkRCR2luYi9Za20ySGpQ?=
 =?utf-8?B?SC9MWElvVmg3R0dvcGc5KzhITWNWUzh3djJ3MkovcWkvb2R5bUpsVlE5ZHkz?=
 =?utf-8?B?Sko3VkJkMHJRbEFjRXBreVFVSG4wMzg1N2RjRW13MGZ5dkhQbDQvSWJjZE02?=
 =?utf-8?B?bU82SGR0UTE3M0h4WVRxUnYybFhmVnNFdTRSd2pxaTlGdmRNcEJrR0JkbVhM?=
 =?utf-8?B?ek9mYzUvajkyems5SUEvLzlhcURQMk9nbEtNbmRiQVRuSFMraFpaY1pKWThO?=
 =?utf-8?B?OWttQUoyN1J5aE15MDdQNjUrM2tRbnBjOENIME41L1dmZnJVS3NWOXU2Vmkv?=
 =?utf-8?B?aGxlQnlPMm01UnVhVXRLVGt2b09wT0UxWWkrUnR4K1RPNitwbHJITEUwUHVR?=
 =?utf-8?B?WGdKbVJLRGhwN1pIZytZWGtzeVQ5MnZOL2JGUU85ODNXS2xLaHdSTWI3WXhG?=
 =?utf-8?B?aUYvWVJtTisyK2lNY2tQVWJNRHZka2tkTWRTcnh3YzRCWDFSd3Y2T0hGbU56?=
 =?utf-8?B?WWRWZklLNEtKQzNXdnFpOGlYSXRFU1FYZzlEaWMxZnNjOVhjQXlKcFhHL2RX?=
 =?utf-8?B?ZWJWYndPMEU3VVM2cXRMYUVtYklLVXZ1VzEyTysvZTNkY3Qzd0VyZG9CUmJT?=
 =?utf-8?B?ajErNG55dTdXRnNEMkVzNk9VbVk1dUkwNThEU3o4Yy82V3lnSFZ2RTU5S1dC?=
 =?utf-8?B?TWhNcndOWE5VcEkxY3p3TGRyM1JhK0JlbzFrQTdnSU5wclpLbzc1cjFxTllH?=
 =?utf-8?B?WW4reTFqNUFQWlpIMXRXYUZlNVNrWlA0Q29pMW9NWEZCRGF5ZnBiMzJTRVZx?=
 =?utf-8?B?K2xkQkxFQXE5YkUyQ0FuejVUTThRdVF3RXJBRkJ3MHJqcm51b01mem9YVGZD?=
 =?utf-8?B?cUhNMjkzcDhubThKbWFPV3psY0hUME52RXFQQWNoeENzajJnS3BZVEt3MjQx?=
 =?utf-8?B?enhyMFJ5VTVsZGI0aUlqNURDaVVFeVloM0dtQzh3ekFMZ2FnUTNsUDdSZHZj?=
 =?utf-8?B?QzNFRGRPdHN5N1dER3dZbkgrSWY0ZXBNc3dSRDJMUnJFNlAwbldMaEEwbjlG?=
 =?utf-8?B?SUE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	cF2+E1wJHKv2zXuVy3BTPCp5+TbEmWhQOyhuX0s+rrP+zrUtQ7MNtvK8h51JXasAY673b+IN7MqhRQ44BZy9acwTvi2DkuBBC2gQS7ygJcEgIU7vZm5yQQ5W8SbsVzNdTXZikJvZ1/8ExJl66uZaauRN59mtllfA1dmrixT+Xek81bQJy3cTZFrRAJ8POmDAvJv8PhLGpIRgXGpXac/pmw+MebTr5nlHzWKvA9+LSRuizUAhE3Vm8CzIeby5aa7T/heZyG2WiRrCwGzFVhWZYL4uI4E4zXxrmopLcVR8LBDbnqVl1E0LPdoiZyRclPATZVsd+QaK6UDzy7FZZTmJmRmbHMQPSBTu9ma34qjQafibOPlB61+efNugyCqYYmqCxuNo5gnN3dG1946F0P0savudrmrYAdpOggjNiEekF7jbWQ047RiSbFLGuH9ScKEc6Kgh6lILgNFKmwG7JW/e5SewfDex/rh8npo77Ut88uVHpbqtGTOAxQrhVcMKRS4g/Ceta1i1GY6tcT3FqHtrD5+qYfhhFskokVCuDC2IMeQWdBLuX/Lu93ICUX073zbsTBaBO32xl6NJKp6ep7b9YCghOsC8Y7TqG5qzoN/kacTMo3DToj+E0Lr88H8ebKRhvcK0EskTMrCy/uDszoHCU7Dakq9sLoETMYBfkpHa1KkHoLDGFjCyCQ5261G2z7gEI5/SXdfplxOYvKuCyxhQOUx7A7/7Ia88c1vfmjjv+7hlANOlHDCzx3p/+GD2+0QK6WNcKn0sUuj1oZz84MEwqceQbw+ZuE2fQbrVMS8zizizHDHRuqVptioFECLH7OF12ap9CzrRHuMLk2zQ6NQkCErA4nMrEtHfMjKt+jGcSTBKZdQgkQiaTlEyOtFwM3m3
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2da544d5-be60-4865-1321-08dbb38dd90e
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 12:43:21.9634
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: J/JatG2pqX0pGQUgrr+y8et+Fpt8pu+vTQEFxjOihcXAUg/MffURuARkJ66RSXC8iDCi6disChVjaN+xilNjpQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR03MB5375

On Mon, Sep 11, 2023 at 12:12:38PM +0200, Simon Gaiser wrote:
> Up to version 6.2 Errata B [2] the ACPI spec only defines
> ACPI_MADT_ENABLE as:
> 
>     If zero, this processor is unusable, and the operating system
>     support will not attempt to use it.
> 
> The bit that later will be ACPI_MADT_ONLINE_CAPABLE is reserved with
> "Must be zero".
> 
> Version 6.3 [3] then adds ACPI_MADT_ONLINE_CAPABLE and changes the
> meaning of ACPI_MADT_ENABLE:
> 
>     Enabled
>         If this bit is set the processor is ready for use. If this bit
>         is clear and the Online Capable bit is set, system hardware
>         supports enabling this processor during OS runtime. If this bit
>         is clear and the Online Capable bit is also clear, this
>         processor is unusable, and OSPM shall ignore the contents of the
>         Processor Local APIC Structure.
> 
>     Online Capbable
>         The information conveyed by this bit depends on the value of the
>         Enabled bit. If the Enabled bit is set, this bit is reserved and
>         must be zero. Otherwise, if this this bit is set, system
>         hardware supports enabling this processor during OS runtime.
> 
> So with conforming firmwares it should be safe to simply ignore the
> entry if !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE
> 
> As a precaution against buggy firmwares this change, like Linux [4],
> ignores ACPI_MADT_ONLINE_CAPABLE completely if MADT revision < 5. Note
> that the MADT revision was already increased to 5 with spec version 6.2
> Errata A [1], so before introducing the online capable flag. But it
> wasn't changed for the new flag, so this is the best we can do here.
> 
> For previous discussion see thread [5].
> 
> Link: http://www.uefi.org/sites/default/files/resources/ACPI%206_2_A_Sept29.pdf # [1]
> Link: https://uefi.org/sites/default/files/resources/ACPI_6_2_B_final_Jan30.pdf # [2]
> Link: https://uefi.org/sites/default/files/resources/ACPI_6_3_May16.pdf # [3]
> Link: https://git.kernel.org/torvalds/c/e2869bd7af608c343988429ceb1c2fe99644a01f # [4]
> Link: https://lore.kernel.org/xen-devel/80bae614-052e-0f90-cf13-0e5e4ed1a5cd@invisiblethingslab.com/ # [5]
> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
> ---
>  xen/arch/x86/acpi/boot.c | 19 +++++++++++++------
>  1 file changed, 13 insertions(+), 6 deletions(-)
> 
> diff --git a/xen/arch/x86/acpi/boot.c b/xen/arch/x86/acpi/boot.c
> index 4a62822fa9..2d0b8a9afc 100644
> --- a/xen/arch/x86/acpi/boot.c
> +++ b/xen/arch/x86/acpi/boot.c
> @@ -77,6 +77,17 @@ static int __init cf_check acpi_parse_madt(struct acpi_table_header *table)
>  	return 0;
>  }
>  
> +static bool __init acpi_is_processor_usable(uint32_t lapic_flags)
> +{
> +	if (lapic_flags & ACPI_MADT_ENABLED)
> +		return true;
> +
> +	if (madt_revision >= 5 && (lapic_flags & ACPI_MADT_ONLINE_CAPABLE))
> +		return true;
> +
> +	return false;

So this means that Xen would only support ACPI CPU Hotplug with
versions of the MADT >= 5?  Because with the proposed code non enabled
entries on MADT versions < 5 will be reported as unusable.

Will this work with QEMU?  (ie: does QEMU expose a MADT table with
version >= 5)  Otherwise we will loose all possible ways of testing
ACPI CPU Hotplug.

Regards, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 12:59:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 12:59:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600460.936092 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg2zK-0006PB-LA; Tue, 12 Sep 2023 12:59:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600460.936092; Tue, 12 Sep 2023 12:59:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg2zK-0006P4-IA; Tue, 12 Sep 2023 12:59:30 +0000
Received: by outflank-mailman (input) for mailman id 600460;
 Tue, 12 Sep 2023 12:59:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=E4bD=E4=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qg2zJ-0006Oy-Pi
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 12:59:29 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 344ab5d9-516c-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 14:59:27 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-19-206-190.retail.telecomitalia.it [87.19.206.190])
 by support.bugseng.com (Postfix) with ESMTPSA id 8DF2C4EE0749;
 Tue, 12 Sep 2023 14:59:26 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 344ab5d9-516c-11ee-9b0d-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>
Subject: [XEN PATCH] xen/IOMMU: address violations of MISRA C:2012 Rules 8.2 and 8.3
Date: Tue, 12 Sep 2023 14:59:19 +0200
Message-Id: <fa7f0000b77ed4930d3d1e5b97d6fd53a26b7390.1694427795.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names and make function declarations and
definitions consistent. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/drivers/passthrough/amd/iommu.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/drivers/passthrough/amd/iommu.h b/xen/drivers/passthrough/amd/iommu.h
index acbaad30d5..02111d23df 100644
--- a/xen/drivers/passthrough/amd/iommu.h
+++ b/xen/drivers/passthrough/amd/iommu.h
@@ -248,7 +248,7 @@ int __must_check cf_check amd_iommu_unmap_page(
     struct domain *d, dfn_t dfn, unsigned int order,
     unsigned int *flush_flags);
 int __must_check amd_iommu_alloc_root(struct domain *d);
-int amd_iommu_reserve_domain_unity_map(struct domain *domain,
+int amd_iommu_reserve_domain_unity_map(struct domain *d,
                                        const struct ivrs_unity_map *map,
                                        unsigned int flag);
 int amd_iommu_reserve_domain_unity_unmap(struct domain *d,
@@ -282,7 +282,7 @@ void amd_iommu_flush_all_pages(struct domain *d);
 void amd_iommu_flush_pages(struct domain *d, unsigned long dfn,
                            unsigned int order);
 void amd_iommu_flush_iotlb(u8 devfn, const struct pci_dev *pdev,
-                           uint64_t gaddr, unsigned int order);
+                           daddr_t daddr, unsigned int order);
 void amd_iommu_flush_device(struct amd_iommu *iommu, uint16_t bdf);
 void amd_iommu_flush_intremap(struct amd_iommu *iommu, uint16_t bdf);
 void amd_iommu_flush_all_caches(struct amd_iommu *iommu);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 13:01:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 13:01:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600468.936101 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg30n-00084r-3g; Tue, 12 Sep 2023 13:01:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600468.936101; Tue, 12 Sep 2023 13:01:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg30n-00084k-18; Tue, 12 Sep 2023 13:01:01 +0000
Received: by outflank-mailman (input) for mailman id 600468;
 Tue, 12 Sep 2023 13:00:59 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg30l-00084W-Ch; Tue, 12 Sep 2023 13:00:59 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg30l-0006ZW-9x; Tue, 12 Sep 2023 13:00:59 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg30k-0008BX-T4; Tue, 12 Sep 2023 13:00:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qg30k-0006Xg-Sa; Tue, 12 Sep 2023 13:00:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=WhbC2ZZ8qH/X7yOwYrTFN9qUMuLMrhMQrSDfo4xM1dk=; b=iwEx0/aidAgeOY32HXsYx6kNKi
	wpxmTfJeyDOPCqXGI2bX8hEF8ekVaVApbW6DHT/KY5nf/mONiIkdkrYVBZkte8DaBlUG9F13iiLkB
	mAneSJ+DKLUj4COpcDKm2m+o2oh7A+ru6nU03NlZC6wdXnUcIu/GuwqVMNU9CbfeKxtU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182963-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182963: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5e8df433db791ba7e63ac1253e4e2a06ccd353d7
X-Osstest-Versions-That:
    xen=f1546c98e06fec6c2d1e15ff8e80547d10365bc3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 12 Sep 2023 13:00:58 +0000

flight 182963 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182963/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  5e8df433db791ba7e63ac1253e4e2a06ccd353d7
baseline version:
 xen                  f1546c98e06fec6c2d1e15ff8e80547d10365bc3

Last test of basis   182948  2023-09-11 19:03:12 Z    0 days
Testing same since   182963  2023-09-12 10:00:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Gianluca Luparini <gianluca.luparini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Simone Ballarin <simone.ballarin@bugseng.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   f1546c98e0..5e8df433db  5e8df433db791ba7e63ac1253e4e2a06ccd353d7 -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 13:04:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 13:04:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600477.936112 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg33y-0000HE-Kv; Tue, 12 Sep 2023 13:04:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600477.936112; Tue, 12 Sep 2023 13:04:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg33y-0000H6-HN; Tue, 12 Sep 2023 13:04:18 +0000
Received: by outflank-mailman (input) for mailman id 600477;
 Tue, 12 Sep 2023 13:04:17 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg33x-0000Gw-Cg; Tue, 12 Sep 2023 13:04:17 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg33x-0006c2-By; Tue, 12 Sep 2023 13:04:17 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg33x-0008MW-1D; Tue, 12 Sep 2023 13:04:17 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qg33x-0007BW-0j; Tue, 12 Sep 2023 13:04:17 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=5lENZY3I4NKR9q/ZwDUX5X/7YLT1ZW+08ILKuzGKAuA=; b=jbFkb5p1ZV06VtgAyrCQShylbB
	jUiWPZAhQqpHTMXaz/rhiCOXy2pj5fIx4zDq8v9rhwYUKJuN4yT9UWD9OXHeVycH4vWU0qFC2fPjb
	achSk6VDRsfaLmRf/czleO61hFIBUcuaYeSAPhew/iMYqXknU6V1Tnb9OGPxFLWMESP0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182964-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182964: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=4f4a2c3b0768cd389c8f27ec77871887ba89e6f5
X-Osstest-Versions-That:
    ovmf=b7a48bed16dd75ce6a864540ab7dc38d8f1f657b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 12 Sep 2023 13:04:17 +0000

flight 182964 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182964/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 4f4a2c3b0768cd389c8f27ec77871887ba89e6f5
baseline version:
 ovmf                 b7a48bed16dd75ce6a864540ab7dc38d8f1f657b

Last test of basis   182961  2023-09-12 07:44:09 Z    0 days
Testing same since   182964  2023-09-12 11:12:21 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ard Biesheuvel <ardb@kernel.org>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   b7a48bed16..4f4a2c3b07  4f4a2c3b0768cd389c8f27ec77871887ba89e6f5 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 13:30:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 13:30:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600488.936122 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg3TT-0006Fe-Df; Tue, 12 Sep 2023 13:30:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600488.936122; Tue, 12 Sep 2023 13:30:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg3TT-0006FX-A3; Tue, 12 Sep 2023 13:30:39 +0000
Received: by outflank-mailman (input) for mailman id 600488;
 Tue, 12 Sep 2023 13:30:38 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qg3TR-0006FR-Tg
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 13:30:37 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qg3TR-0007Ch-H8; Tue, 12 Sep 2023 13:30:37 +0000
Received: from [15.248.2.157] (helo=[10.24.67.41])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qg3TR-0002pJ-6G; Tue, 12 Sep 2023 13:30:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	References:Cc:To:From:Subject:MIME-Version:Date:Message-ID;
	bh=a9+nKxRSXlAEPaXUbLk1YgfCNIi/4jTo5QHszyY/w0U=; b=GSE088YGKfffZQAk4UAAHG9B8Q
	ouZW+ZWbHRV9JoErGN3NDqVh0e6f4lY39Ld73CEsIucWOy4xriBNxHN928V843BOB6EYRWcvsm9Dk
	J7x9v54eq1djin2MDgl1F5KtOPfxXvjOj6rTz+OZnxl5GLM6XqdNnV1TsGN3X7MPOtFA=;
Message-ID: <e63b1aac-5401-414d-9d51-2b67b3759f3a@xen.org>
Date: Tue, 12 Sep 2023 14:30:35 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Handle empty grant table region in
 find_unallocated_memory()
Content-Language: en-GB
From: Julien Grall <julien@xen.org>
To: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230824090640.25338-1-michal.orzel@amd.com>
 <7d216ef6-398c-4086-8a7a-33e80dcacda7@xen.org>
 <d029d806-33a2-6774-4aa2-ae8f1303288b@amd.com>
 <832d6508-50d8-4f78-ae58-2203100a67f2@xen.org>
In-Reply-To: <832d6508-50d8-4f78-ae58-2203100a67f2@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 24/08/2023 11:04, Julien Grall wrote:
> 
> 
> On 24/08/2023 10:17, Michal Orzel wrote:
>> On 24/08/2023 11:10, Julien Grall wrote:
>>> On 24/08/2023 10:06, Michal Orzel wrote:
>>>> When creating dom0 with grant table support disabled in Xen and no 
>>>> IOMMU,
>>>> the following assert is triggered (debug build):
>>>> "Assertion 's <= e' failed at common/rangeset.c:189"
>>>
>>> A partial stack trace would have been handy. This help the reader to
>>> understand how you came to the conclusion that the issue was in
>>> find_unallocated_memory().
>> Here you go:
>> (XEN) Xen call trace:
>> (XEN)    [<0000020000218568>] rangeset_remove_range+0xbc/0x2cc (PC)
>> (XEN)    [<00000200002c76bc>] 
>> domain_build.c#make_hypervisor_node+0x294/0x7c4 (LR)
>> (XEN)    [<00000200002ca240>] domain_build.c#handle_node+0x7ec/0x924
>> (XEN)    [<00000200002ca7ac>] domain_build.c#construct_dom0+0x434/0x4d8
>>
>> Can you append this to the commit msg while committing or do you want 
>> a respin?
> 
> Thanks. It can be done on commit.

I have now committed the patch. Sorry for the delay.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 13:45:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 13:45:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600496.936138 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg3hG-0000Cf-Gb; Tue, 12 Sep 2023 13:44:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600496.936138; Tue, 12 Sep 2023 13:44:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg3hG-0000CY-DC; Tue, 12 Sep 2023 13:44:54 +0000
Received: by outflank-mailman (input) for mailman id 600496;
 Tue, 12 Sep 2023 13:44:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=f83G=E4=collabora.com=dmitry.osipenko@srs-se1.protection.inumbo.net>)
 id 1qg3hF-0000CS-0J
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 13:44:53 +0000
Received: from madras.collabora.co.uk (madras.collabora.co.uk [46.235.227.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8b1fd9ee-5172-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 15:44:50 +0200 (CEST)
Received: from [192.168.2.112] (109-252-153-31.dynamic.spd-mgts.ru
 [109.252.153.31])
 (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
 (No client certificate requested)
 (Authenticated sender: dmitry.osipenko)
 by madras.collabora.co.uk (Postfix) with ESMTPSA id BE0926607327;
 Tue, 12 Sep 2023 14:44:47 +0100 (BST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8b1fd9ee-5172-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com;
	s=mail; t=1694526289;
	bh=EHkKfcqe57CDCX9ziDQSu/VbRqDXV7EcPgLHzQgJnxE=;
	h=Date:Subject:To:Cc:References:From:In-Reply-To:From;
	b=jRPAe+nhtgNxyMDTkHqXS+GRXWnK6XcdxqC+YvLEr+CRpkQThU97p3s/e0f0F6+xm
	 eL7XdGPLQoxmVnWgpBJDe1dxYX2lVwP9QPCRMCM5MYB4H7NBRDX28+dtmAQ//GlAdG
	 2eY8+qUcgBJrriFIUQxyJpCfPm9b8V2g+Ip3fc/LsHL+H8V9iIuUZ0OckI0yh7Nr7j
	 DI7d0CaKWZriF9NKfh5XD+RkDP4ZY+I/SsiYelZr9Np+b3zOvLU/6nd43UJOPqyVdv
	 IQNFPUBxQ/k5lotYBHy5DEzObPy83RfV7lP4/omn3VEO/uT1F4He0d9U+DMggx3bhg
	 9vfDPoMqf6fDg==
Message-ID: <d907fa61-6524-e673-6885-5abae21471e1@collabora.com>
Date: Tue, 12 Sep 2023 16:44:45 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [QEMU PATCH v4 12/13] virtio-gpu: Initialize Venus
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>
Cc: Antonio Caggiano <quic_acaggian@quicinc.com>,
 Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 =?UTF-8?Q?Alex_Benn=c3=a9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 "ernunes@redhat.com" <ernunes@redhat.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= <philmd@linaro.org>,
 Akihiko Odaki <akihiko.odaki@daynix.com>, Alyssa Ross <hi@alyssa.is>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-13-ray.huang@amd.com>
 <ca8bcf9a-2886-aed0-5229-4787808bd39c@quicinc.com>
 <5462a77f-c66d-af2d-fc07-df9f787558c2@collabora.com>
 <ZPxOuIryznYcGmLS@amd.com>
From: Dmitry Osipenko <dmitry.osipenko@collabora.com>
In-Reply-To: <ZPxOuIryznYcGmLS@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 9/9/23 13:53, Huang Rui wrote:
> On Thu, Aug 31, 2023 at 11:51:50PM +0800, Dmitry Osipenko wrote:
>> On 8/31/23 13:40, Antonio Caggiano wrote:
>>> Hi Huang,
>>>
>>> Thank you for pushing this forward!
>>>
>>> On 31/08/2023 11:32, Huang Rui wrote:
>>>> From: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>>
>>>> Request Venus when initializing VirGL.
>>>>
>>>> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>>> ---
>>>>
>>>> v1->v2:
>>>>      - Rebase to latest version
>>>>
>>>>   hw/display/virtio-gpu-virgl.c | 2 ++
>>>>   1 file changed, 2 insertions(+)
>>>>
>>>> diff --git a/hw/display/virtio-gpu-virgl.c
>>>> b/hw/display/virtio-gpu-virgl.c
>>>> index 83cd8c8fd0..c5a62665bd 100644
>>>> --- a/hw/display/virtio-gpu-virgl.c
>>>> +++ b/hw/display/virtio-gpu-virgl.c
>>>> @@ -887,6 +887,8 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
>>>>       }
>>>>   #endif
>>>>   +    flags |= VIRGL_RENDERER_VENUS;
>>>> +
>>>
>>> VIRGL_RENDERER_VENUS is a symbol only available from virglrenderer 0.9.1
>>> [0] and only if VIRGL_RENDERER_UNSTABLE_APIS is defined.
>>>
>>> Luckily for us, VIRGL_RENDERER_UNSTABLE_APIS is defined unconditionally
>>> from virglrenderer 0.9.0 [1], so we could check for that in
>>> qemu/meson.build
>>>
>>> e.g.
>>>
>>>
>>>   if virgl.version().version_compare('>= 0.9.0')
>>>     message('Enabling virglrenderer unstable APIs')
>>>     virgl = declare_dependency(compile_args:
>>> '-DVIRGL_RENDERER_UNSTABLE_APIS',
>>>                                dependencies: virgl)
>>>   endif
>>>
>>>
>>> Also, while testing this with various versions of virglrenderer, I
>>> realized there are no guarantees for Venus backend to be available in
>>> the linked library. Virglrenderer should be built with
>>> -Dvenus_experimental=true, and if that is not the case, the following
>>> virgl_renderer_init would fail for previous versions of virglrenderer or
>>> in case it has not been built with venus support.
>>>
>>> I would suggest another approach for that which tries initializing Venus
>>> only if VIRGL_RENDERER_VENUS is actually defined. Then, if it fails
>>> cause virglrenderer has not been built with venus support, try again
>>> falling back to virgl only.
>>
>> All the APIs will be stabilized with the upcoming virglrender 1.0
>> release that will happen soon. There is also a venus protocol bump, qemu
>> will have to bump virglrenderer's version dependency to 1.0 for venus
>> and other new features.
>>
> 
> Dmitry, do you know the timeline of virglrender 1.0?

Should be end of this week or next week

-- 
Best regards,
Dmitry



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 13:50:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 13:50:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600503.936148 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg3mE-0001pW-15; Tue, 12 Sep 2023 13:50:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600503.936148; Tue, 12 Sep 2023 13:50:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg3mD-0001oy-Ue; Tue, 12 Sep 2023 13:50:01 +0000
Received: by outflank-mailman (input) for mailman id 600503;
 Tue, 12 Sep 2023 13:50:00 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qg3mC-0001kP-P9
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 13:50:00 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0631.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4373161b-5173-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 15:49:59 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8779.eurprd04.prod.outlook.com (2603:10a6:20b:40a::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Tue, 12 Sep
 2023 13:49:56 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 13:49:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4373161b-5173-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dMcqjPGyyVeFB7qiKPtmhiZ9xAgm8rYNEb4HIfLPIIG7NLDC1SRHnEKhg/IGDMRCBXrDJ3vu+DECxIIrbOoYBGxboNCVSOogQKPoBDtXMmti0Ci07o2DuQGO8xTeLfAUyjyks4op1GrdF0a8sZTCmo+uJnKSS3GIxS62l2JeI7aNW5wnG3SKAJ76As2phKpcF3+jPQ7w/HBLlaNzdzeZNyfVQNhIg4Uk/NU4fbA9tHlHkzkCLXspzI2jxNGx3WqDLQHWqtvymdFBMc/9VV24f7NgfOtel4E9erDMsWXgc8Fozm94P2N0ry1sbUEFsLbbfpLf6o7pL3S8KO1aWUTi7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fb0dC5oju91ycHO9jKJuPxTBHa5OMv7WvdPcn10STjg=;
 b=VfWeDZuLd2qN2xyjUKhrJM0xXhznggtTRZv/9PZEu6HULcgXjR459p6fUleFOMSkyiHsFLIshyQFypVgsFP06KEfRleZxaXv1xjioZe6+nVUhX3ycbd9dpkvmxAY4hhHqnsQ59Axq/YSe322HQrI9MpVAqZ/HCOE/y7PBKmqFLoR2XX7jdbOqwb3/JRObfcE1/FTKFijvkWulELyTTwtCH0uSvTCwTdFAQh8sz2CtPSsXJ3+NzjjfJnYWkQOEy7sN9pbzwoK3g1LrzCV5oD3AKt4pcH6nL8ihEP3wqZT0zOhIt+IIZKvTIYP9T7ZeZdhyYIVZ6MTRxYcBzRILHgmvA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fb0dC5oju91ycHO9jKJuPxTBHa5OMv7WvdPcn10STjg=;
 b=aVVU+V2H0Jn9xTxLiPEJbuSL667fURGNRuXtnRPWrtdZae+PjlqbtMhweUJfj0zEthTC9/uOKr/9W89IyggPx2WMfP5DZSRB5/WL3Y0+5LK9/EIS1d0U8e8OaQYyPqsPeX5RYvzBu7GuZg2cqRcBmzOapk1N2y4BUql6d9zxUQzxSvZ81HTTfmIWbuWlCjfSYoY/mQeGpS39f3IFxD2TywzKf49wHg4F97Caj45KbvgZvhhegUiNSLmcSYgl2Tryl2QJUXDDzjMR7zMWDQAoTOxAX19EhQiJ18Nb8ZeLWIw+viFKQIRKOs/7cVjCHnzg2hZN4C/4FLmuiT7j9JDEPA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <efaa720e-0119-47da-3e1f-87fd1413f232@suse.com>
Date: Tue, 12 Sep 2023 15:49:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/IOMMU: address violations of MISRA C:2012 Rules
 8.2 and 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 xen-devel@lists.xenproject.org
References: <fa7f0000b77ed4930d3d1e5b97d6fd53a26b7390.1694427795.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <fa7f0000b77ed4930d3d1e5b97d6fd53a26b7390.1694427795.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0125.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8779:EE_
X-MS-Office365-Filtering-Correlation-Id: 7d3fefa6-77e7-4d3e-5e0f-08dbb3972612
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZJcunkCUG7F4bFxilgv7wzlyMgm1laLAFp+Mq2oIeaEVizqWe5IgBNEYvqd7yte2UVFnxSaR/HzlfIsvZqj4otvGPG1Xs9BXC4FWSAeOWerDc+DhTCdxqvYhBmpOWSqY26N341nvOwQzqH9aA6iftjVkdh04caXt6ZRp0lVPJfoQDBX76uSxao7EK3Z6gx8sKlS4nbiFq+lvGjCDg2vbH7yEwD9YxKxTtRkUscjiTc3edNr0dlhzWCfnUxh4UTpd/PGcHqrkCuh+Em9xB6RhPr6VdxNSf1jCl0n6Id2W8eTfMgAOnweKxrS8b5PvaIIfL9QEGHFMaUrxvR2JnDwF8nnIMDbOhLdMA+ESGtQ+X0Y1XwI2eHiZoZ8ukllmL8vZ3C47vmIqD1N0dBydLJPy/4bXPAMAw4DXcaCQA1p6s3p3Bvhhqcn6gDIIzuoM4z9V7noTlJZ+ji2OST4Aw35qw+YAlCDULvPUb5ziFXy1aH0ysrOPj1K7L6sE8xn8CSD9o5XzuavA8I2wp83qjDJXezdeVOCU45PdGSVmMlOe9WzOCzOHhfeMEJo+2z8WBPYBbbNp886G+8smJJSad2ijx+wwRyxL0nMdDx6149xGiEYRDBqNKSHYZuss2xiabqC1TxE0UFs1xzdg9iP2PmtAhA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(366004)(136003)(376002)(346002)(451199024)(1800799009)(186009)(2906002)(26005)(41300700001)(66946007)(316002)(6916009)(8676002)(66556008)(66476007)(478600001)(4326008)(5660300002)(8936002)(31686004)(6666004)(6512007)(6506007)(6486002)(53546011)(36756003)(2616005)(38100700002)(86362001)(31696002)(558084003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dDZFeStIenZMWVBlSHQrdkdwdVRLZDE3Y3QwU2ZKRlVObVR6M2Joc1R4bStz?=
 =?utf-8?B?ZlJqc1Q3cWpUU1ZpNXl6Unc1QlNxVXEvL0d3aEdvcFZxZldQd0c5dStMa0pp?=
 =?utf-8?B?d0FjQnNZUnJaMms4dytGSHZmdzFXVEVvNEl5ZGxaWW9yemt4dlJhQWVKVFpC?=
 =?utf-8?B?Q3VIYmdCQkdjV3FhanJVeHRjdmJTYlo4WWdldDFUc0NuWDhvRlZkU3M0YlA2?=
 =?utf-8?B?R2xWcVlwNGp4bkpxanJ5Q0RlTi9GZFNseXNuMHhWWUY2Y1lVdkwxSHZDVnJv?=
 =?utf-8?B?d1AzdGlLSG5jemNjVnE5eXZPMENHOGxpSWZySHpVQ0xhcHlIMm5henN3R0dX?=
 =?utf-8?B?VXo1WWFqejNBMGQwaWFXaDZUSUx5dlZJUGhmOWFRWXJudFUyNTlVTFdIZHp6?=
 =?utf-8?B?Zk9zenVkbXErQVo5SFBBdnAvWitKL0gzZVFhb3FNcHdWQnVaRlloazcvcXZT?=
 =?utf-8?B?eHBJZlQya1dIVDBWcnl4YStnVjFON01RWmNad28waGpwYWhtNUJ3SVFZQlFn?=
 =?utf-8?B?REpBcGhxQS8zYjNOSDdWL1VCcUtZWkhnbkxtR0xDL0ZxK0puWEp4SW1OWllt?=
 =?utf-8?B?MU5zM0dOWURESDdsUDcreVdpZ3kzd2ZTdDRDMFdRVlE2Z1BHZnFnSEF4eGNj?=
 =?utf-8?B?Y3duNitYUmozZ3VRdnk3ZkFsQVBRQzZFdG5IKzBHbTVqSGlRUUhCY3AxWWdL?=
 =?utf-8?B?RVQxQ1VIUDVLdGZsKytpYTRPVi9HQ0Y0NmNvbEp1SGV4MmJxMXQvMm1QUHlk?=
 =?utf-8?B?Q093YW1QZW5CdTk3ajVRR2I3S2ZaNVpiZlhDL3hWTCszbHE3Y3VNd3c4ejk2?=
 =?utf-8?B?aDZlVjE4Q2JjVk1vWkd5eUZTVEx2VnZudTUvdDVoNkFpcW1oWlFJeGpSam1J?=
 =?utf-8?B?c1k2OHMvOFZMRzBsdENwRkhuM2grb3ExaU1zb2h1QnI1Y3Z1Z1QzZkJDenJn?=
 =?utf-8?B?cmxEaGhYcWFqek10cUUwK1M5MDg5cFhMcXBGNU1heVY1TGdjY0tqSHU4Zjho?=
 =?utf-8?B?dXRXc3IxOTUvUjFMUDk5SXVMdkN2bEJ2NG01NFlyeUplTDJvTkFNWUVjVTEz?=
 =?utf-8?B?V05qdzlpOFBEU25Pcyt0TW82VlRNV09lQVhpR21yZVJESXJ6UU1wOFBxb2E1?=
 =?utf-8?B?ZmsxbmtoRHdUZGNTbVFMRFZXU0ovVGJVMWhZY1A1MjNOc3hMenRwNmJ4Ujh0?=
 =?utf-8?B?NmVLVUY3RE1wbTBtQkIzQ1RQcW4yTFJIbjJLZ3NLTWhXckM1dFFKY1N3T0JG?=
 =?utf-8?B?UVpJa3B3Ly9TdjhWYlEwbnR5S0E3b3Q3dUZhZFZlNm15WU05WlMzOUNUY0NE?=
 =?utf-8?B?QzRGRVlkcW1UdlFsc0dWcWJ0NTBOenJxSW9TZ3BxWlpsVGdEVlpFbEdxQS8z?=
 =?utf-8?B?Y0FVVjI4NG1ET0g4ODhpcXJBRjZsRVBxYmVhenV6bDBNaWRlN2VHVXlQaGtx?=
 =?utf-8?B?b3hvVVJNeFF4SkVQaFFVZUtZT0NncU9ZQ2ZGRUdPT0RWNWZmR1oxR29OcmFW?=
 =?utf-8?B?QnZmajJubG8vVlo0QU9uckt4bGtCTHg1N0Z4MzhqeHBUQldGbDRhZUZmdnFk?=
 =?utf-8?B?NFlwam9JT084clRCVFdzeElvajBYMDhibG1YZ2ZIQm9HYXI5d3JRSnYxbjFu?=
 =?utf-8?B?WGZKbEw0VEd1WU9ZMkMrelBoejlTb0w2N3hkTW5pUGlyMEg3TFcxUGNDUVB4?=
 =?utf-8?B?ZGFGeWdMTFBScjEyWGZIbHJsUC85Y2lHL1BhWVVKa0tkZ3RJQUZ3NGZtSjhr?=
 =?utf-8?B?Nkt1TWpkV0NaMkppR2JIUnNoUVh0L3AxWDBBbW1rSzNHSmk4RjFtRFZtblJ0?=
 =?utf-8?B?SHI3eFo3amFMNUh1QVBRT2Zlc3lSRERYRUNHSXgyRkJsZGlWNE15RVBvcG02?=
 =?utf-8?B?YUZrV3hYMkM4OWthUGpGNzFkaEFjaUZkZGxlcm1ZYklyNFNMUElHMTdHZXJ5?=
 =?utf-8?B?YWFYRXBZd28wbzYzWWgrRDdaRDFISmtVUTR1RE40bUYzVzVrNE1TNlB5MkZW?=
 =?utf-8?B?VzFxbGVHWjBKZGIwWFQvUHpFY1R2QmZNd0RaSHZPWE9jdzUrazZNOVlHa2NU?=
 =?utf-8?B?ZVg5MFY0Z1hvMkN0YUtLZmh6eFVEYW1lWWU4Zis0ZkwxSlU2K0g0ZkJTOGpX?=
 =?utf-8?Q?OmmKEiPOobqB2HtnQjEXifxgO?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7d3fefa6-77e7-4d3e-5e0f-08dbb3972612
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 13:49:56.4971
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Z467hGT+YBnFKTicPKIZ894jrZ2VM3UwZZavfXc3RD3u/vTx41EEMTJ8S4RsHh9WtJtqGnaY2EbsG8QUKeU4vw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8779

On 12.09.2023 14:59, Federico Serafini wrote:
> Add missing parameter names and make function declarations and
> definitions consistent. No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Acked-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Tue Sep 12 14:00:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 14:00:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600523.936214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg3w6-0005g0-JR; Tue, 12 Sep 2023 14:00:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600523.936214; Tue, 12 Sep 2023 14:00:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg3w6-0005ft-Ep; Tue, 12 Sep 2023 14:00:14 +0000
Received: by outflank-mailman (input) for mailman id 600523;
 Tue, 12 Sep 2023 14:00:13 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg3w5-0005fQ-FT; Tue, 12 Sep 2023 14:00:13 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg3w5-0007wa-Ac; Tue, 12 Sep 2023 14:00:13 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg3w5-0001kM-1G; Tue, 12 Sep 2023 14:00:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qg3w5-0008FM-0m; Tue, 12 Sep 2023 14:00:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=95alEktdR0skE+huBUlNXNMzXrdqkCSucAgsw9hXEak=; b=ZGeB4yWtu9cMXKzUvZcY1QW1AT
	OvwKsZGEx5NMM22QwbSJM1mlrAI2UlK1tDke1/WSAICz/MX9wxIXF4WgNniwrrQu/BKt6jk5Jrhnk
	ZyEuuBnHtQc1KKKMPG6xh0UXrOwTIaIr7+qnrB8jGnyzxKga+ak2ByuDFPM66pefzez4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182955-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182955: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=f1546c98e06fec6c2d1e15ff8e80547d10365bc3
X-Osstest-Versions-That:
    xen=49b2d6a529122f10e17a17f807d8d51154b5ba14
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 12 Sep 2023 14:00:13 +0000

flight 182955 xen-unstable real [real]
flight 182965 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182955/
http://logs.test-lab.xenproject.org/osstest/logs/182965/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail pass in 182965-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop  fail in 182965 like 182912
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182912
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182912
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182912
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182912
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182912
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182912
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182912
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182912
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182912
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182912
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182912
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  f1546c98e06fec6c2d1e15ff8e80547d10365bc3
baseline version:
 xen                  49b2d6a529122f10e17a17f807d8d51154b5ba14

Last test of basis   182912  2023-09-11 01:52:03 Z    1 days
Failing since        182941  2023-09-11 13:07:03 Z    1 days    2 attempts
Testing same since   182955  2023-09-12 02:45:51 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Anthony PERARD <anthony.perard@citrix.com>
  Federico Serafini <federico.serafini@bugseng.com>
  George Dunlap <george.dunlap@cloud.com>
  Jan Beulich <jbeulich@suse.com>
  Javi Merino <javi.merino@cloud.com>
  Jinoh Kang <jinoh.kang.kr@gmail.com>
  Oleksii Kurochko <oleksii.kurochko@gmail.com>
  Tamas K Lengyel <tamas@tklengyel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   49b2d6a529..f1546c98e0  f1546c98e06fec6c2d1e15ff8e80547d10365bc3 -> master


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 14:01:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 14:01:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600532.936224 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg3xI-0006Gq-W5; Tue, 12 Sep 2023 14:01:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600532.936224; Tue, 12 Sep 2023 14:01:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg3xI-0006Gj-T2; Tue, 12 Sep 2023 14:01:28 +0000
Received: by outflank-mailman (input) for mailman id 600532;
 Tue, 12 Sep 2023 14:01:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LIu2=E4=citrix.com=prvs=6128f91ed=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qg3xI-0006GZ-4O
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 14:01:28 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id db7a5b79-5174-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 16:01:25 +0200 (CEST)
Received: from mail-bn8nam12lp2176.outbound.protection.outlook.com (HELO
 NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.176])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 12 Sep 2023 10:01:15 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MN2PR03MB5310.namprd03.prod.outlook.com (2603:10b6:208:1f1::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.38; Tue, 12 Sep
 2023 14:01:12 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 14:01:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: db7a5b79-5174-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694527285;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Iaui4fk2Ejcui4H7NOLJGxRcLIbblx4qI7z/JeGp6Vw=;
  b=M7Rtv2OS3nabg50m6nMCCdwxpXiVBh4SUnCbOjSF4uw2jOvFzui+paPI
   zZ466tTHxn2+6rz0g+HRvNT87gbjtqYrs9vMYR8YQR/RFpCIuC1N35xLI
   XF9Ee1uOS/ZxBESzW61lrfR/jfrZKrKHpboNTTc/UlU1Pg4y3t+lUlkq1
   k=;
X-CSE-ConnectionGUID: NVLSHNkFTLOHgUEFXdvG7A==
X-CSE-MsgGUID: MDmdkac3RsCsCRa1kHqSlg==
X-IronPort-RemoteIP: 104.47.55.176
X-IronPort-MID: 121051456
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:BYFbFKMLNdU7ekfvrR0rlsFynXyQoLVcMsEvi/4bfWQNrUokhjIEy
 2MbXTiEPPiPM2GjL9ElPYq+oRgDusOHn9JgGgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/jrRC9H5qyo42tJ5wZmOZingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0sBJJVpu0
 /82FBQqTh++qsyGzKyUFcA506zPLOGzVG8ekldJ6GiDSNwAEdXESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PdxujeNpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyj13rKWwX6lMG4UPJiU8/JpiVbI/Hc4EzYsXAK4geCCjkHrDrqzL
 GRRoELCt5Ma71CmUdDnQ1u4oXqIsxQGUtxcO+Q/5EeGza+8yxaUAC0IQyBMbPQitdQqXno62
 1mRhdTrCDdz9rqPRhq19L2ZsDezMig9NnIZaGkPSg5ty8bniJE+iFTIVNkLOKyoitz4Hxngz
 jbMqzIx750IltIC3ai/+VHBghqvq4LPQwpz4R/YNkq95x59TJ6oYcqv81ezxfVNMoefCEWAt
 X4sms6C4eRIBpaI/BFhW80IFbCtovyDYDvVhAc1G4F7rmvzvXm+YYpX/TdyYl9zNdoJciPoZ
 0mVvh5N4JhUPz2haqofj5+NNvnGBJPITbzNPs04pPIUCnStXGdrJB1TWHM=
IronPort-HdrOrdr: A9a23:17WXua1H7J7G6nnOcG+QRwqjBNEkLtp133Aq2lEZdPU1SKylfq
 WV98jzuiWYtN98YhsdcLO7WZVoP0myyXcd2+B4AV7IZmXbUQWTQr1f0Q==
X-Talos-CUID: 9a23:lRRDpGNYWkOEY+5DfhdDz24yGe4ZVlr9w0r9DX+0F0k2YejA
X-Talos-MUID: =?us-ascii?q?9a23=3AO5nvEAzRHwU7FQbl5WCSd9wwXDKaqIGCDUwOmJ5?=
 =?us-ascii?q?dgdKvLgdKMm6erC2MRoByfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,139,1688443200"; 
   d="scan'208";a="121051456"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PrsrjaZ+y1l9xst60OMDqcst0aIFzf6V32v0JFgyp5zEbdUSnrtabw8v9DeVNs+Y1TA+2Rj7MXGK4XvBk1K89qDDAU1twIGRgHe+Q5vxZBea+7Vfao/g/xktaghB+D3b3vsdeyiEY3p+mw81KHXzjAS5cBO7yiGpp3jEyWRQeQlSaW/+abq9hDDMbiS+Tb9IkZnk/7lkKOVPafwsyxi+IyHbGBV7wteoU52ftu0rboaa6XgIUIJFjQOzIJkWhtetF9b1uApadYvPa+UO8yuXYGDh5r/xzb9j1NGb0J4JbAGjDv9nKKVnULYaXvVRig1YfC1wYi9D1TvFSqvK8Hth+Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=aaSg8tdNbIqV1aTK86BUT9SyJcLCxwIRDVMiNv4JQI8=;
 b=iQ1KgSr+ytyhjYYlyzN79hoMc5r/27D7yBsZLGgDUUo6Ivh9q+nDrzgl3EZ+X+kWKivQTtIXinais9THIUHJGk9//1daUuhZ+6z71HPx4MI5v9I4fg2s7Vfcj0m54Lkl4IP/Tmj54K2q/APNLAf5k8fXNtLHTfNeafN6uXk2N3Htj8d4aAnkH7WsjtttgjR6x7wUUMykAWjgMoXA2VsaWj0LO2ifMY/gdKWGNO13aOzOu2t91vikWRiW8R8aSc3QierRPNaNHSwqEZwGqP4/OBBuDpl6R3Sm9ACFG5979B6Ympyf8mF6LipPwPB4GFPajCoOLmQpwBJr3y4p1I3DEg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=aaSg8tdNbIqV1aTK86BUT9SyJcLCxwIRDVMiNv4JQI8=;
 b=YYAfQTY6cJfIO1o6IrKZUSJF/RuhkP0LrzgIJaDaYf6P0EBcOd9vOIT4Bi4r5q46Cg6ijUSDwHk+d53poakAFbs/qbWwbhe9h6WEd5ZVnBW1caFoc49Y5xISfvlLs6VTr4avE7Qy0H+dhrGzW085PiWXl/GEYScdPsP1KNrkYio=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 12 Sep 2023 16:01:06 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Paul Durrant <paul@xen.org>, Kevin Tian <kevin.tian@intel.com>
Subject: Re: [PATCH v6 1/4] xen/pci: convert pci_find_*cap* to pci_sbdf_t
Message-ID: <ZQBvItPn63Eu61KD@MacBook-MacBook-Pro-de-Roger.local>
References: <20230909021647.558115-1-stewart.hildebrand@amd.com>
 <20230909021647.558115-2-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20230909021647.558115-2-stewart.hildebrand@amd.com>
X-ClientProxiedBy: PR1P264CA0040.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:102:2cb::19) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|MN2PR03MB5310:EE_
X-MS-Office365-Filtering-Correlation-Id: e3901f1f-be6a-4fa0-2bdd-08dbb398b8e3
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	U5qV9pwk2KBfNZ76Y5ScC6E7ve2ErnrkonxbzJrEU1Ef51OmgH9JiT94degw6HhHds0NkLn739+TO0O3gcZzegA0JUKJ5PsWtjXK6OU92plRsxhFmc1jWk8jgMKSlb/DnNSBSVA7UWGsMgNZg7M44s02B6zbeleshTuDqYoKDwakdion7ZAz/ATF2TUbkK3iK0cgFRnafyjiOp4a5HPc2gZMM1LJA3ilybIFKzLC6H+AVx5adMmBPrfyyD2zZHs8pDRxdnrkdBB6eY2K7LiRXG6ly0AWQnrptO+ls9LoJlfi/pk+tL3LUnr5bAeYrcI6bnwaEieEOYm836qSx+iZ+mil+ScyIjcg25hqn2tS0Axo3gWztEoqsVKCM8jpact1lY8gKn+z4Vk2sUmrvfWxw1YppIe5G80o/Ey55C+mNg6osxPTbTSjMocld2FRD1ucFvnrVRce2OHgtYs9urw0pAlxogoUfTGpgdFuIHcWT5AE7sOThN2FXZMQaq+GDPDtUavL7E9PdlBK9WmjMWWcaiuE7QW4R1L+OenXGP65M5fmaWLTyA75Kjk71F1qy18a
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(39860400002)(366004)(376002)(136003)(451199024)(1800799009)(186009)(66476007)(54906003)(66556008)(6916009)(316002)(66946007)(478600001)(82960400001)(2906002)(38100700002)(4744005)(7416002)(86362001)(8676002)(4326008)(8936002)(41300700001)(5660300002)(9686003)(6512007)(6666004)(6486002)(6506007)(26005)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Tmt2b2JpTUpzZUpLMDNxN1dBbEtZMHJrVUtOVzdpSXhQY2ljK3hrd1RxOEdt?=
 =?utf-8?B?cWhOVlV6bzNmbEFOVkJ0NlBzeXFyWEVhSnBUNWxZRXBVN1piaTlUUW52ekFJ?=
 =?utf-8?B?bjloYXJMNmkyWDdjT2hvQTNyZGl4TWZQVm1wU2NPclNFc0pqOUlWNzBPdDJU?=
 =?utf-8?B?dFlvbHpCYkI3RXFlczg0YXAvL1dHYWhwdEpqbGliR1oxT1JlMGhjS0IzME5X?=
 =?utf-8?B?TnM4UHV2RnN3cTRoeDZXZEdiRUsrcW1FNEFSN3RBaDFCT2ZCWTR3WE9mRVJj?=
 =?utf-8?B?aGFjSHR5aWdMSnFtUngwZ2lNbDBJdG9iRWw4cnNwbk1oOVVtU0ZlV0U1UHkw?=
 =?utf-8?B?Mzlxd25vaXg0VThjRVlCc1RJTjR4amxlMVcrRkZQRVdiOWNSeFhhNGl5VDlI?=
 =?utf-8?B?OVNFNWs1ZFNnMWdCVjBOajZwN0FMK1lnR2VkeXJFWTg3dUNvQW5wNEdMMEcv?=
 =?utf-8?B?cFVzSlN5dFRvOFQrNERraU95OUcyejIyb1F6VEhyNk5MTzN3a0hYNzd3cFdU?=
 =?utf-8?B?dVI3ZENNM1VHbWFYb3EvUVFhQXpPNDlTYVhzakhtZDJHWTBQUTlKMEMzRVRX?=
 =?utf-8?B?NDdBWWJWZHFRZnFOdlZQSUxmbEVTRlM5Vk4wYkwxdGZjYjVVSzZpVVJvUFhx?=
 =?utf-8?B?bnpyNGxPZlVvZWwwTjI5Tkt4VC9tcG5HSWxsTmRKbkhFUjNLR0RkQ216SkJH?=
 =?utf-8?B?SXprM0RLUmhQZ2ZCS2dpVlJwUFl6eW9ZdGlYemE1WE80bkdFRktYc0tNK2ti?=
 =?utf-8?B?NU9qSmRTWkJvMVR4NjM0T0lBVzl0c3kzVXIyZHI5Z2ZOYlFZOFM4N2RENjlR?=
 =?utf-8?B?SGJaanJqQWVOSzNNNXhFWThKRDVodkphVTNyWjVIL3AxS3h4WTZNdjZzQlpx?=
 =?utf-8?B?TTBWangvU01nQXlvWTJNS2ZpOS9waGRYa2l4TkRqVUp2R0F4SzdWMGltMGww?=
 =?utf-8?B?Sm9qV0gxZ0h6L21pSXllY1RsN0JXazBRYythSS9aaUIrMktSbGdnakVUQnlT?=
 =?utf-8?B?SFhDUkFqYjlMdlJwTGFPZmw2NWxYQ1dxSHo3aENuRWc5cVA2MXFHaklCRFlE?=
 =?utf-8?B?TDBLZTkzREdDeWFYU3dSYmpRVmY1TEIxMnJpc3c4Vld4YlFIem5FVmhLbXo4?=
 =?utf-8?B?U0ltZG5Iay9nanVvNnNvZVpRaFZmd2RBNTUvZElzWlpBczBZQlpkMXQ1L3Rt?=
 =?utf-8?B?bC9NY0VJYmtjRTlKRDdKSGFCNkppVWhjWWtZNi9wbVphKzVlL2N6bmtmSjlo?=
 =?utf-8?B?OEJsd0kvb25mSXZVeWZySU5iTFE2eWMrZ0JlcElhYnEyaTNSMzZFc0hiYnZr?=
 =?utf-8?B?dDYzK1JMSklxMTBNZW1NRTU1MzRmMmcxVnRCZXA5NEdaWHZFNWk0SGg4RTB2?=
 =?utf-8?B?V1UzVitFOGYzWjRmcmZkVFFyOHRnaG1CRWh3RlFGVFpZSDNnRmFMcnVndzNy?=
 =?utf-8?B?dWNFV0RKaDFUQXoyVDlIMWs2d3ZSd2sxbmw0TnFxdmVsMHlBWTF5VW1nMm5G?=
 =?utf-8?B?RjllNVluc09aVlowRjJqTHdVekJRQnFVZUlnRkJVK3lIQzNNcjFyYWwzd2xy?=
 =?utf-8?B?R2JlSzlWVmZMN3JwTVAyRlVXbGw3bTV3bi90cUhoQ3orSFlOWUN0M2xmOU1t?=
 =?utf-8?B?VDJMSURMa3UxMXM5bjN3RVgxOTlmZm1ueGtWR0V6ZUZwRUZjNjNNYmpaVlhE?=
 =?utf-8?B?RUllQmNHMUFqRFpZOU51NVJyMExWNGJ0K3JPWWlXbVc2c1FNRXg4cmRWbThZ?=
 =?utf-8?B?OG5RTFdpTld0T0lNcUdQOW0zQUZYSXoxTUxIWTV4QmRpQktQa3RQMXcrWUJE?=
 =?utf-8?B?QzQ2NzRreEM4NHNrZ1RjSWNjbUw3QllzVERsZkhoUHZWbU1zd0RMQUEzQTNa?=
 =?utf-8?B?aTlSWHYvSWNyZ09ONU5lN0pSYUtzSEZmd1hWdUdBb2N5U1k2eWxoMG4ra1dC?=
 =?utf-8?B?ZFRhKzJyN0xvdzhEMHJ3SE9peDg1MW9BcG1xOXlDSWNhdVZZMXBEQ3ZHa09Y?=
 =?utf-8?B?Nm80Um42YVN6UExsRzFvbFNTNkNPaTJ5NWRkTWRPTUZPdVRMeGMxdUdyQ2FC?=
 =?utf-8?B?Z1VNdDRtNXF1RDVQd3lZN2U3TzdQUURDRzNRMzB6ejJqcllOSmhQU25DL1Q2?=
 =?utf-8?B?ZEdZNnFxUG5mU2JaZDdEZUFMcUtyL2dqaFJab2txMzduY1pOY0tYUGtvN0Vn?=
 =?utf-8?B?REE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	Twf5XPOQkN/pRGVKwENj1FE8RdFGtha8ct3i6BA4nbpnFuFQQqFcrQw9OInmwKcUy2KjmuBTFKJF1sYe8gz0sdjgJAqBFl+ZCUyNT7XWsn6cOtmheOHf1Iw/j6FKr/o9HmyWd2u6YxO09JBPXNOu0JTZ/hP02ktvYHxCyQS9ck8iAx9oZ+HD5fIeI7bYtFa46MmeV/+Ns8ikfjrR11n5fpQs+R/S46H4olEoKA7W5A4rGIgTz5/0OGKCOcky6Ty/7BWjtu7MAxHdeelltdE4Wmd2ODV4LCH5zVnCbgNgzds2LzgvmAgX7G3zleWtWWMjpQAAao7qFv7YIFYVyvOA+2CDFqQQBnjyp7wZhgBF9ybhBDSkvdU7I+1+YaOgu/1eHzGUkbYQyBC4q803SqP3YOrGa+dBOeTOUPROLySZEpZz/ihlinwkQME3Xq/Y3qgVcdwgozXs2THd0PU67XcO1WP4EkNz+jto4dpN0G0lZUo7+u3bpVPtkqPtTUJRr79UmQDzwlJnlDko38aemL9pxKvrxUl/rXNqPfRyLBTk8FSzEl73y+w9/1F/6s65/fJLxfxSm/NGETJA+0rrtQkh9pX7r8Y/+3cbe79MMitCSjY48JYHX093NLrGCnz+khwTnoEzqXx4WRgfdyIDfLi7jSo1UUp8gQvvvo6NXBYhCXE7J6KmN/aIxEdMETi95VjxTEz2ibOjCWxdz6lT7yRfq32gzcNP+zt7EtqJTdlNROMSOFkyOkS6sY3OXrE7f01QorQYOYHZyu9Lqh38akK0J2w5qyHpcCIRr6rGPGCCfYOzE6A70Lqn8t5lkmP5F0KE9+oOo1gFUrPTSRSbjc18/xKpnQ15hDV+WqtG7yT/QtNPQahuuf3ArseyKOJFEgU59TpqzfUGd8EV0YRDBOvjaA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e3901f1f-be6a-4fa0-2bdd-08dbb398b8e3
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 14:01:12.3488
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Uoyw9GkAnCPrDSoWdZaHy9ENKWRo1JvXbsw+4VUPFoo1BVlfkpJXDTh2MeopReIO4o306iln/dJNNXOZtgKecA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR03MB5310

On Fri, Sep 08, 2023 at 10:16:25PM -0400, Stewart Hildebrand wrote:
> Convert pci_find_*cap* functions and call sites to pci_sbdf_t, and remove some
> now unused local variables. Also change to more appropriate types on lines that
> are already being modified as a result of the pci_sbdf_t conversion.
> 
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> Reviewed-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 15:40:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 15:40:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600548.936255 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Um-00079q-KY; Tue, 12 Sep 2023 15:40:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600548.936255; Tue, 12 Sep 2023 15:40:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Um-000791-HV; Tue, 12 Sep 2023 15:40:08 +0000
Received: by outflank-mailman (input) for mailman id 600548;
 Tue, 12 Sep 2023 15:40:07 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg5Ul-00073d-T7
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 15:40:07 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a5dba450-5182-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 17:40:06 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 170364EE074C;
 Tue, 12 Sep 2023 17:40:06 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a5dba450-5182-11ee-8786-cb3800f73035
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Gianluca Luparini <gianluca.luparini@bugseng.com>
Subject: [XEN PATCH v6 2/7] x86/hvm: address violations of MISRA C:2012 Rule 7.2
Date: Tue, 12 Sep 2023 17:38:59 +0200
Message-Id: <1231f5eeebf6f2e30b91780e92dc4d6015cefdb7.1694532795.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694532795.git.simone.ballarin@bugseng.com>
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
headline states:
"A 'u' or 'U' suffix shall be applied to all integer constants
that are represented in an unsigned type".

Add the 'U' suffix to integers literals with unsigned type.

For the sake of uniformity, the following change is made:
- add 'U' suffixes to 'mask16' in 'stdvga.c'

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
---
Changes in v6:
- new patch obtained by splitting HVM related changes from
"xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
- fix inadvertent changes to "sr_mask"
---
 xen/arch/x86/hvm/hypercall.c           |  2 +-
 xen/arch/x86/hvm/pmtimer.c             |  4 ++--
 xen/arch/x86/hvm/stdvga.c              | 32 +++++++++++++-------------
 xen/arch/x86/hvm/vlapic.c              |  6 ++---
 xen/arch/x86/include/asm/hvm/trace.h   |  4 ++--
 xen/arch/x86/include/asm/hvm/vioapic.h |  2 +-
 6 files changed, 25 insertions(+), 25 deletions(-)

diff --git a/xen/arch/x86/hvm/hypercall.c b/xen/arch/x86/hvm/hypercall.c
index 20d266ffd5..eeb73e1aa5 100644
--- a/xen/arch/x86/hvm/hypercall.c
+++ b/xen/arch/x86/hvm/hypercall.c
@@ -129,7 +129,7 @@ int hvm_hypercall(struct cpu_user_regs *regs)
         break;
     }
 
-    if ( (eax & 0x80000000) && is_viridian_domain(currd) )
+    if ( (eax & 0x80000000U) && is_viridian_domain(currd) )
     {
         int ret;
 
diff --git a/xen/arch/x86/hvm/pmtimer.c b/xen/arch/x86/hvm/pmtimer.c
index 2145c531b6..eb4a455763 100644
--- a/xen/arch/x86/hvm/pmtimer.c
+++ b/xen/arch/x86/hvm/pmtimer.c
@@ -40,8 +40,8 @@
 #define SCI_IRQ 9
 
 /* We provide a 32-bit counter (must match the TMR_VAL_EXT bit in the FADT) */
-#define TMR_VAL_MASK  (0xffffffff)
-#define TMR_VAL_MSB   (0x80000000)
+#define TMR_VAL_MASK  (0xffffffffU)
+#define TMR_VAL_MSB   (0x80000000U)
 
 /* Dispatch SCIs based on the PM1a_STS and PM1a_EN registers */
 static void pmt_update_sci(PMTState *s)
diff --git a/xen/arch/x86/hvm/stdvga.c b/xen/arch/x86/hvm/stdvga.c
index 2586891863..8da07ff8a2 100644
--- a/xen/arch/x86/hvm/stdvga.c
+++ b/xen/arch/x86/hvm/stdvga.c
@@ -39,22 +39,22 @@
 
 #define PAT(x) (x)
 static const uint32_t mask16[16] = {
-    PAT(0x00000000),
-    PAT(0x000000ff),
-    PAT(0x0000ff00),
-    PAT(0x0000ffff),
-    PAT(0x00ff0000),
-    PAT(0x00ff00ff),
-    PAT(0x00ffff00),
-    PAT(0x00ffffff),
-    PAT(0xff000000),
-    PAT(0xff0000ff),
-    PAT(0xff00ff00),
-    PAT(0xff00ffff),
-    PAT(0xffff0000),
-    PAT(0xffff00ff),
-    PAT(0xffffff00),
-    PAT(0xffffffff),
+    PAT(0x00000000U),
+    PAT(0x000000ffU),
+    PAT(0x0000ff00U),
+    PAT(0x0000ffffU),
+    PAT(0x00ff0000U),
+    PAT(0x00ff00ffU),
+    PAT(0x00ffff00U),
+    PAT(0x00ffffffU),
+    PAT(0xff000000U),
+    PAT(0xff0000ffU),
+    PAT(0xff00ff00U),
+    PAT(0xff00ffffU),
+    PAT(0xffff0000U),
+    PAT(0xffff00ffU),
+    PAT(0xffffff00U),
+    PAT(0xffffffffU),
 };
 
 /* force some bits to zero */
diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c
index c7ce82d064..a8e87c4446 100644
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -237,7 +237,7 @@ bool_t vlapic_match_dest(
     case APIC_DEST_NOSHORT:
         if ( dest_mode )
             return vlapic_match_logical_addr(target, dest);
-        return (dest == _VLAPIC_ID(target, 0xffffffff)) ||
+        return (dest == _VLAPIC_ID(target, 0xffffffffU)) ||
                (dest == VLAPIC_ID(target));
 
     case APIC_DEST_SELF:
@@ -467,7 +467,7 @@ static bool_t is_multicast_dest(struct vlapic *vlapic, unsigned int short_hand,
         return short_hand != APIC_DEST_SELF;
 
     if ( vlapic_x2apic_mode(vlapic) )
-        return dest_mode ? hweight16(dest) > 1 : dest == 0xffffffff;
+        return dest_mode ? hweight16(dest) > 1 : dest == 0xffffffffU;
 
     if ( dest_mode )
         return hweight8(dest &
@@ -831,7 +831,7 @@ void vlapic_reg_write(struct vcpu *v, unsigned int reg, uint32_t val)
         break;
 
     case APIC_ICR2:
-        vlapic_set_reg(vlapic, APIC_ICR2, val & 0xff000000);
+        vlapic_set_reg(vlapic, APIC_ICR2, val & 0xff000000U);
         break;
 
     case APIC_LVTT:         /* LVT Timer Reg */
diff --git a/xen/arch/x86/include/asm/hvm/trace.h b/xen/arch/x86/include/asm/hvm/trace.h
index 696e42eb94..22eadbdd47 100644
--- a/xen/arch/x86/include/asm/hvm/trace.h
+++ b/xen/arch/x86/include/asm/hvm/trace.h
@@ -58,7 +58,7 @@
 #define DO_TRC_HVM_VLAPIC           DEFAULT_HVM_MISC
 
 
-#define TRC_PAR_LONG(par) ((par)&0xFFFFFFFF),((par)>>32)
+#define TRC_PAR_LONG(par) ((uint32_t)(par)), ((par) >> 32)
 
 #define TRACE_2_LONG_2D(_e, d1, d2, ...) \
     TRACE_4D(_e, d1, d2)
@@ -93,7 +93,7 @@
     HVMTRACE_ND(evt, 0, 0)
 
 #define HVMTRACE_LONG_1D(evt, d1)                  \
-                   HVMTRACE_2D(evt ## 64, (d1) & 0xFFFFFFFF, (d1) >> 32)
+                   HVMTRACE_2D(evt ## 64, (uint32_t)(d1), (d1) >> 32)
 #define HVMTRACE_LONG_2D(evt, d1, d2, ...)              \
                    HVMTRACE_3D(evt ## 64, d1, d2)
 #define HVMTRACE_LONG_3D(evt, d1, d2, d3, ...)      \
diff --git a/xen/arch/x86/include/asm/hvm/vioapic.h b/xen/arch/x86/include/asm/hvm/vioapic.h
index 2944ec20dd..68af6dce79 100644
--- a/xen/arch/x86/include/asm/hvm/vioapic.h
+++ b/xen/arch/x86/include/asm/hvm/vioapic.h
@@ -32,7 +32,7 @@
 #define VIOAPIC_EDGE_TRIG  0
 #define VIOAPIC_LEVEL_TRIG 1
 
-#define VIOAPIC_DEFAULT_BASE_ADDRESS  0xfec00000
+#define VIOAPIC_DEFAULT_BASE_ADDRESS  0xfec00000U
 #define VIOAPIC_MEM_LENGTH            0x100
 
 /* Direct registers. */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 15:40:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 15:40:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600547.936250 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Um-00073u-8o; Tue, 12 Sep 2023 15:40:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600547.936250; Tue, 12 Sep 2023 15:40:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Um-00073n-5a; Tue, 12 Sep 2023 15:40:08 +0000
Received: by outflank-mailman (input) for mailman id 600547;
 Tue, 12 Sep 2023 15:40:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg5Uk-0005yG-7C
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 15:40:06 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a47abdb7-5182-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 17:40:04 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id A96534EE074A;
 Tue, 12 Sep 2023 17:40:03 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a47abdb7-5182-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Gianluca Luparini <gianluca.luparini@bugseng.com>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Simone Ballarin <simone.ballarin@bugseng.com>
Subject: [XEN PATCH v6 1/7] x86/vmx: address violations of MISRA C:2012 Rule 7.2
Date: Tue, 12 Sep 2023 17:38:58 +0200
Message-Id: <e71b07d1d0d75af7a53b3e49c42ecdd21497952a.1694532795.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694532795.git.simone.ballarin@bugseng.com>
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Gianluca Luparini <gianluca.luparini@bugseng.com>

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
headline states:
"A 'u' or 'U' suffix shall be applied to all integer constants
that are represented in an unsigned type".

Add the 'U' suffix to integers literals with unsigned type.

For the sake of uniformity, the following changes are made:
- add the 'U' suffix to macros near
  'CPU_BASED_ACTIVATE_SECONDARY_CONTROLS' and
  'SECONDARY_EXEC_NOTIFY_VM_EXITING' macros in 'vmcs.h'
- add the 'U' suffix to macros near 'INTR_INFO_VALID_MASK'
  macro in 'vmx.h'

Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
No changes in v5 and v6.

Changes in v4:
- change commit headline

Changes in v3:
- change 'Signed-off-by' ordering
- change commit message
- remove unnecessary changes in 'vvmx.c'
- add 'uint32_t' casts in 'vvmx.c'
- add missing 'U' in 'vmcs.h' macros
- change macro to '(1u << 31)' in 'vmx.h'
- remove unnecessary changes to 'vmx.h'

Changes in v2:
- minor change to commit title
- change commit message
- remove unnecessary changes in 'vpmu_intel.c' and 'vmx.h'
- add 'ULL' suffix in 'vpmu_intel.c'
- add zero-padding to constants in 'vmx.h'
- add missing 'U' in 'vmx.h'
---
 xen/arch/x86/cpu/vpmu_intel.c           |  2 +-
 xen/arch/x86/hvm/vmx/vmcs.c             |  6 +-
 xen/arch/x86/hvm/vmx/vvmx.c             |  8 +--
 xen/arch/x86/include/asm/hvm/vmx/vmcs.h | 84 ++++++++++++-------------
 xen/arch/x86/include/asm/hvm/vmx/vmx.h  | 16 ++---
 5 files changed, 58 insertions(+), 58 deletions(-)

diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c
index fa5b40c65c..6330c89b47 100644
--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -945,7 +945,7 @@ const struct arch_vpmu_ops *__init core2_vpmu_init(void)
     fixed_counters_mask = ~((1ull << core2_get_bitwidth_fix_count()) - 1);
     global_ctrl_mask = ~((((1ULL << fixed_pmc_cnt) - 1) << 32) |
                          ((1ULL << arch_pmc_cnt) - 1));
-    global_ovf_ctrl_mask = ~(0xC000000000000000 |
+    global_ovf_ctrl_mask = ~(0xC000000000000000ULL |
                              (((1ULL << fixed_pmc_cnt) - 1) << 32) |
                              ((1ULL << arch_pmc_cnt) - 1));
     if ( version > 2 )
diff --git a/xen/arch/x86/hvm/vmx/vmcs.c b/xen/arch/x86/hvm/vmx/vmcs.c
index 13719cc923..6cefb88aec 100644
--- a/xen/arch/x86/hvm/vmx/vmcs.c
+++ b/xen/arch/x86/hvm/vmx/vmcs.c
@@ -911,7 +911,7 @@ void vmx_clear_msr_intercept(struct vcpu *v, unsigned int msr,
         if ( type & VMX_MSR_W )
             clear_bit(msr, msr_bitmap->write_low);
     }
-    else if ( (msr >= 0xc0000000) && (msr <= 0xc0001fff) )
+    else if ( (msr >= 0xc0000000U) && (msr <= 0xc0001fffU) )
     {
         msr &= 0x1fff;
         if ( type & VMX_MSR_R )
@@ -939,7 +939,7 @@ void vmx_set_msr_intercept(struct vcpu *v, unsigned int msr,
         if ( type & VMX_MSR_W )
             set_bit(msr, msr_bitmap->write_low);
     }
-    else if ( (msr >= 0xc0000000) && (msr <= 0xc0001fff) )
+    else if ( (msr >= 0xc0000000U) && (msr <= 0xc0001fffU) )
     {
         msr &= 0x1fff;
         if ( type & VMX_MSR_R )
@@ -957,7 +957,7 @@ bool vmx_msr_is_intercepted(struct vmx_msr_bitmap *msr_bitmap,
     if ( msr <= 0x1fff )
         return test_bit(msr, is_write ? msr_bitmap->write_low
                                       : msr_bitmap->read_low);
-    else if ( (msr >= 0xc0000000) && (msr <= 0xc0001fff) )
+    else if ( (msr >= 0xc0000000U) && (msr <= 0xc0001fffU) )
         return test_bit(msr & 0x1fff, is_write ? msr_bitmap->write_high
                                                : msr_bitmap->read_high);
     else
diff --git a/xen/arch/x86/hvm/vmx/vvmx.c b/xen/arch/x86/hvm/vmx/vvmx.c
index 16b0ef82b6..b7be424afb 100644
--- a/xen/arch/x86/hvm/vmx/vvmx.c
+++ b/xen/arch/x86/hvm/vmx/vvmx.c
@@ -263,7 +263,7 @@ uint64_t get_vvmcs_virtual(void *vvmcs, uint32_t vmcs_encoding)
             res >>= 32;
         break;
     case VVMCS_WIDTH_32:
-        res &= 0xffffffff;
+        res = (uint32_t)res;
         break;
     case VVMCS_WIDTH_NATURAL:
     default:
@@ -315,14 +315,14 @@ void set_vvmcs_virtual(void *vvmcs, uint32_t vmcs_encoding, uint64_t val)
     case VVMCS_WIDTH_64:
         if ( enc.access_type )
         {
-            res &= 0xffffffff;
+            res = (uint32_t)res;
             res |= val << 32;
         }
         else
             res = val;
         break;
     case VVMCS_WIDTH_32:
-        res = val & 0xffffffff;
+        res = (uint32_t)val;
         break;
     case VVMCS_WIDTH_NATURAL:
     default:
@@ -2306,7 +2306,7 @@ int nvmx_msr_read_intercept(unsigned int msr, u64 *msr_content)
         break;
     case MSR_IA32_VMX_CR0_FIXED1:
         /* allow 0-settings for all bits */
-        data = 0xffffffff;
+        data = 0xffffffffU;
         break;
     case MSR_IA32_VMX_CR4_FIXED0:
         /* VMXE bit must be 1 in VMX operation */
diff --git a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h
index d07fcb2bc9..e056643993 100644
--- a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h
+++ b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h
@@ -187,27 +187,27 @@ bool_t __must_check vmx_vmcs_try_enter(struct vcpu *v);
 void vmx_vmcs_exit(struct vcpu *v);
 void vmx_vmcs_reload(struct vcpu *v);
 
-#define CPU_BASED_VIRTUAL_INTR_PENDING        0x00000004
-#define CPU_BASED_USE_TSC_OFFSETING           0x00000008
-#define CPU_BASED_HLT_EXITING                 0x00000080
-#define CPU_BASED_INVLPG_EXITING              0x00000200
-#define CPU_BASED_MWAIT_EXITING               0x00000400
-#define CPU_BASED_RDPMC_EXITING               0x00000800
-#define CPU_BASED_RDTSC_EXITING               0x00001000
-#define CPU_BASED_CR3_LOAD_EXITING            0x00008000
-#define CPU_BASED_CR3_STORE_EXITING           0x00010000
-#define CPU_BASED_CR8_LOAD_EXITING            0x00080000
-#define CPU_BASED_CR8_STORE_EXITING           0x00100000
-#define CPU_BASED_TPR_SHADOW                  0x00200000
-#define CPU_BASED_VIRTUAL_NMI_PENDING         0x00400000
-#define CPU_BASED_MOV_DR_EXITING              0x00800000
-#define CPU_BASED_UNCOND_IO_EXITING           0x01000000
-#define CPU_BASED_ACTIVATE_IO_BITMAP          0x02000000
-#define CPU_BASED_MONITOR_TRAP_FLAG           0x08000000
-#define CPU_BASED_ACTIVATE_MSR_BITMAP         0x10000000
-#define CPU_BASED_MONITOR_EXITING             0x20000000
-#define CPU_BASED_PAUSE_EXITING               0x40000000
-#define CPU_BASED_ACTIVATE_SECONDARY_CONTROLS 0x80000000
+#define CPU_BASED_VIRTUAL_INTR_PENDING        0x00000004U
+#define CPU_BASED_USE_TSC_OFFSETING           0x00000008U
+#define CPU_BASED_HLT_EXITING                 0x00000080U
+#define CPU_BASED_INVLPG_EXITING              0x00000200U
+#define CPU_BASED_MWAIT_EXITING               0x00000400U
+#define CPU_BASED_RDPMC_EXITING               0x00000800U
+#define CPU_BASED_RDTSC_EXITING               0x00001000U
+#define CPU_BASED_CR3_LOAD_EXITING            0x00008000U
+#define CPU_BASED_CR3_STORE_EXITING           0x00010000U
+#define CPU_BASED_CR8_LOAD_EXITING            0x00080000U
+#define CPU_BASED_CR8_STORE_EXITING           0x00100000U
+#define CPU_BASED_TPR_SHADOW                  0x00200000U
+#define CPU_BASED_VIRTUAL_NMI_PENDING         0x00400000U
+#define CPU_BASED_MOV_DR_EXITING              0x00800000U
+#define CPU_BASED_UNCOND_IO_EXITING           0x01000000U
+#define CPU_BASED_ACTIVATE_IO_BITMAP          0x02000000U
+#define CPU_BASED_MONITOR_TRAP_FLAG           0x08000000U
+#define CPU_BASED_ACTIVATE_MSR_BITMAP         0x10000000U
+#define CPU_BASED_MONITOR_EXITING             0x20000000U
+#define CPU_BASED_PAUSE_EXITING               0x40000000U
+#define CPU_BASED_ACTIVATE_SECONDARY_CONTROLS 0x80000000U
 extern u32 vmx_cpu_based_exec_control;
 
 #define PIN_BASED_EXT_INTR_MASK         0x00000001
@@ -238,26 +238,26 @@ extern u32 vmx_vmexit_control;
 #define VM_ENTRY_LOAD_BNDCFGS           0x00010000
 extern u32 vmx_vmentry_control;
 
-#define SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES 0x00000001
-#define SECONDARY_EXEC_ENABLE_EPT               0x00000002
-#define SECONDARY_EXEC_DESCRIPTOR_TABLE_EXITING 0x00000004
-#define SECONDARY_EXEC_ENABLE_RDTSCP            0x00000008
-#define SECONDARY_EXEC_VIRTUALIZE_X2APIC_MODE   0x00000010
-#define SECONDARY_EXEC_ENABLE_VPID              0x00000020
-#define SECONDARY_EXEC_WBINVD_EXITING           0x00000040
-#define SECONDARY_EXEC_UNRESTRICTED_GUEST       0x00000080
-#define SECONDARY_EXEC_APIC_REGISTER_VIRT       0x00000100
-#define SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY    0x00000200
-#define SECONDARY_EXEC_PAUSE_LOOP_EXITING       0x00000400
-#define SECONDARY_EXEC_ENABLE_INVPCID           0x00001000
-#define SECONDARY_EXEC_ENABLE_VM_FUNCTIONS      0x00002000
-#define SECONDARY_EXEC_ENABLE_VMCS_SHADOWING    0x00004000
-#define SECONDARY_EXEC_ENABLE_PML               0x00020000
-#define SECONDARY_EXEC_ENABLE_VIRT_EXCEPTIONS   0x00040000
-#define SECONDARY_EXEC_XSAVES                   0x00100000
-#define SECONDARY_EXEC_TSC_SCALING              0x02000000
-#define SECONDARY_EXEC_BUS_LOCK_DETECTION       0x40000000
-#define SECONDARY_EXEC_NOTIFY_VM_EXITING        0x80000000
+#define SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES 0x00000001U
+#define SECONDARY_EXEC_ENABLE_EPT               0x00000002U
+#define SECONDARY_EXEC_DESCRIPTOR_TABLE_EXITING 0x00000004U
+#define SECONDARY_EXEC_ENABLE_RDTSCP            0x00000008U
+#define SECONDARY_EXEC_VIRTUALIZE_X2APIC_MODE   0x00000010U
+#define SECONDARY_EXEC_ENABLE_VPID              0x00000020U
+#define SECONDARY_EXEC_WBINVD_EXITING           0x00000040U
+#define SECONDARY_EXEC_UNRESTRICTED_GUEST       0x00000080U
+#define SECONDARY_EXEC_APIC_REGISTER_VIRT       0x00000100U
+#define SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY    0x00000200U
+#define SECONDARY_EXEC_PAUSE_LOOP_EXITING       0x00000400U
+#define SECONDARY_EXEC_ENABLE_INVPCID           0x00001000U
+#define SECONDARY_EXEC_ENABLE_VM_FUNCTIONS      0x00002000U
+#define SECONDARY_EXEC_ENABLE_VMCS_SHADOWING    0x00004000U
+#define SECONDARY_EXEC_ENABLE_PML               0x00020000U
+#define SECONDARY_EXEC_ENABLE_VIRT_EXCEPTIONS   0x00040000U
+#define SECONDARY_EXEC_XSAVES                   0x00100000U
+#define SECONDARY_EXEC_TSC_SCALING              0x02000000U
+#define SECONDARY_EXEC_BUS_LOCK_DETECTION       0x40000000U
+#define SECONDARY_EXEC_NOTIFY_VM_EXITING        0x80000000U
 extern u32 vmx_secondary_exec_control;
 
 #define VMX_EPT_EXEC_ONLY_SUPPORTED                         0x00000001
@@ -346,7 +346,7 @@ extern u64 vmx_ept_vpid_cap;
 #define cpu_has_vmx_notify_vm_exiting \
     (vmx_secondary_exec_control & SECONDARY_EXEC_NOTIFY_VM_EXITING)
 
-#define VMCS_RID_TYPE_MASK              0x80000000
+#define VMCS_RID_TYPE_MASK              0x80000000U
 
 /* GUEST_INTERRUPTIBILITY_INFO flags. */
 #define VMX_INTR_SHADOW_STI             0x00000001
diff --git a/xen/arch/x86/include/asm/hvm/vmx/vmx.h b/xen/arch/x86/include/asm/hvm/vmx/vmx.h
index c84acc221d..d4b335a2bc 100644
--- a/xen/arch/x86/include/asm/hvm/vmx/vmx.h
+++ b/xen/arch/x86/include/asm/hvm/vmx/vmx.h
@@ -137,7 +137,7 @@ static inline void pi_clear_sn(struct pi_desc *pi_desc)
 /*
  * Exit Reasons
  */
-#define VMX_EXIT_REASONS_FAILED_VMENTRY 0x80000000
+#define VMX_EXIT_REASONS_FAILED_VMENTRY (1u << 31)
 #define VMX_EXIT_REASONS_BUS_LOCK       (1u << 26)
 
 #define EXIT_REASON_EXCEPTION_NMI       0
@@ -209,12 +209,12 @@ static inline void pi_clear_sn(struct pi_desc *pi_desc)
  * Note INTR_INFO_NMI_UNBLOCKED_BY_IRET is also used with Exit Qualification
  * field for EPT violations, PML full and SPP-related event vmexits.
  */
-#define INTR_INFO_VECTOR_MASK           0xff            /* 7:0 */
-#define INTR_INFO_INTR_TYPE_MASK        0x700           /* 10:8 */
-#define INTR_INFO_DELIVER_CODE_MASK     0x800           /* 11 */
-#define INTR_INFO_NMI_UNBLOCKED_BY_IRET 0x1000          /* 12 */
-#define INTR_INFO_VALID_MASK            0x80000000      /* 31 */
-#define INTR_INFO_RESVD_BITS_MASK       0x7ffff000
+#define INTR_INFO_VECTOR_MASK           0x000000ffU     /* 7:0 */
+#define INTR_INFO_INTR_TYPE_MASK        0x00000700U     /* 10:8 */
+#define INTR_INFO_DELIVER_CODE_MASK     0x00000800U     /* 11 */
+#define INTR_INFO_NMI_UNBLOCKED_BY_IRET 0x00001000U     /* 12 */
+#define INTR_INFO_VALID_MASK            0x80000000U     /* 31 */
+#define INTR_INFO_RESVD_BITS_MASK       0x7ffff000U
 
 /*
  * Exit Qualifications for NOTIFY VM EXIT
@@ -607,7 +607,7 @@ static inline void vmx_pi_hooks_assign(struct domain *d) {}
 static inline void vmx_pi_hooks_deassign(struct domain *d) {}
 #endif
 
-#define APIC_INVALID_DEST           0xffffffff
+#define APIC_INVALID_DEST           0xffffffffU
 
 /* EPT violation qualifications definitions */
 typedef union ept_qual {
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 15:40:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 15:40:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600549.936269 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Uo-0007Zv-SI; Tue, 12 Sep 2023 15:40:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600549.936269; Tue, 12 Sep 2023 15:40:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Uo-0007Zk-PK; Tue, 12 Sep 2023 15:40:10 +0000
Received: by outflank-mailman (input) for mailman id 600549;
 Tue, 12 Sep 2023 15:40:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg5Un-00073d-7s
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 15:40:09 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a6ccce1e-5182-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 17:40:08 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id A4AD54EE074D;
 Tue, 12 Sep 2023 17:40:07 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a6ccce1e-5182-11ee-8786-cb3800f73035
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Gianluca Luparini <gianluca.luparini@bugseng.com>
Subject: [XEN PATCH v6 3/7] x86/asm: address violations of MISRA C:2012 Rule 7.2
Date: Tue, 12 Sep 2023 17:39:00 +0200
Message-Id: <65bb6eb5167e1ae499073007679726555db4c4a9.1694532795.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694532795.git.simone.ballarin@bugseng.com>
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
headline states:
"A 'u' or 'U' suffix shall be applied to all integer constants
that are represented in an unsigned type".

Add the 'U' suffix to integers literals with unsigned type.
Use _AC() for macro costants that are used also in assembly files.

For the sake of uniformity, the following changes are made:
- add the 'U' suffix to macros in 'pci.h'
- use _AC() for macros near 'X86_CR0_PG'

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
---
Changes in v6:
- new patch obtained by splitting ASM related changes from
"xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
- use UL suffix for X86_CR0_* macros
---
 xen/arch/x86/include/asm/apicdef.h   |   2 +-
 xen/arch/x86/include/asm/config.h    |   2 +-
 xen/arch/x86/include/asm/hpet.h      |   2 +-
 xen/arch/x86/include/asm/msi.h       |   2 +-
 xen/arch/x86/include/asm/msr-index.h | 182 +++++++++++++--------------
 xen/arch/x86/include/asm/pci.h       |   8 +-
 xen/arch/x86/include/asm/x86-defns.h |  22 ++--
 7 files changed, 110 insertions(+), 110 deletions(-)

diff --git a/xen/arch/x86/include/asm/apicdef.h b/xen/arch/x86/include/asm/apicdef.h
index a261436993..8d1b0087d4 100644
--- a/xen/arch/x86/include/asm/apicdef.h
+++ b/xen/arch/x86/include/asm/apicdef.h
@@ -8,7 +8,7 @@
  * Ingo Molnar <mingo@redhat.com>, 1999, 2000
  */
 
-#define		APIC_DEFAULT_PHYS_BASE	0xfee00000
+#define		APIC_DEFAULT_PHYS_BASE	0xfee00000U
  
 #define		APIC_ID		0x20
 #define			APIC_ID_MASK		(0xFFu<<24)
diff --git a/xen/arch/x86/include/asm/config.h b/xen/arch/x86/include/asm/config.h
index fbc4bb3416..bbced338be 100644
--- a/xen/arch/x86/include/asm/config.h
+++ b/xen/arch/x86/include/asm/config.h
@@ -257,7 +257,7 @@ extern unsigned char boot_edid_info[128];
 #endif /* CONFIG_PV32 */
 
 #define MACH2PHYS_COMPAT_VIRT_START    HYPERVISOR_COMPAT_VIRT_START
-#define MACH2PHYS_COMPAT_VIRT_END      0xFFE00000
+#define MACH2PHYS_COMPAT_VIRT_END      0xFFE00000U
 #define MACH2PHYS_COMPAT_NR_ENTRIES(d) \
     ((MACH2PHYS_COMPAT_VIRT_END-MACH2PHYS_COMPAT_VIRT_START(d))>>2)
 
diff --git a/xen/arch/x86/include/asm/hpet.h b/xen/arch/x86/include/asm/hpet.h
index 9919f74730..c5e8e9c8db 100644
--- a/xen/arch/x86/include/asm/hpet.h
+++ b/xen/arch/x86/include/asm/hpet.h
@@ -41,7 +41,7 @@
 #define HPET_TN_ROUTE		0x3e00
 #define HPET_TN_FSB		0x4000
 #define HPET_TN_FSB_CAP		0x8000
-#define HPET_TN_RESERVED	0xffff0081
+#define HPET_TN_RESERVED	0xffff0081U
 #define HPET_TN_INT_ROUTE_CAP	(0xffffffffULL << 32)
 
 
diff --git a/xen/arch/x86/include/asm/msi.h b/xen/arch/x86/include/asm/msi.h
index a53ade95c9..d89723d009 100644
--- a/xen/arch/x86/include/asm/msi.h
+++ b/xen/arch/x86/include/asm/msi.h
@@ -37,7 +37,7 @@
  */
 
 #define MSI_ADDR_BASE_HI            0
-#define MSI_ADDR_BASE_LO            0xfee00000
+#define MSI_ADDR_BASE_LO            0xfee00000U
 #define MSI_ADDR_BASE_MASK          (~0xfffff)
 #define MSI_ADDR_HEADER             MSI_ADDR_BASE_LO
 
diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
index 11ffed543a..718f8f860d 100644
--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -22,7 +22,7 @@
 #define  APIC_BASE_BSP                      (_AC(1, ULL) <<  8)
 #define  APIC_BASE_EXTD                     (_AC(1, ULL) << 10)
 #define  APIC_BASE_ENABLE                   (_AC(1, ULL) << 11)
-#define  APIC_BASE_ADDR_MASK                0x000ffffffffff000ULL
+#define  APIC_BASE_ADDR_MASK                _AC(0x000ffffffffff000, ULL)
 
 #define MSR_TEST_CTRL                       0x00000033
 #define  TEST_CTRL_SPLITLOCK_DETECT         (_AC(1, ULL) << 29)
@@ -30,7 +30,7 @@
 
 #define MSR_INTEL_CORE_THREAD_COUNT         0x00000035
 #define  MSR_CTC_THREAD_MASK                0x0000ffff
-#define  MSR_CTC_CORE_MASK                  0xffff0000
+#define  MSR_CTC_CORE_MASK                  _AC(0xffff0000, U)
 
 #define MSR_SPEC_CTRL                       0x00000048
 #define  SPEC_CTRL_IBRS                     (_AC(1, ULL) <<  0)
@@ -186,7 +186,7 @@
 #define MSR_UARCH_MISC_CTRL                 0x00001b01
 #define  UARCH_CTRL_DOITM                   (_AC(1, ULL) <<  0)
 
-#define MSR_EFER                            0xc0000080 /* Extended Feature Enable Register */
+#define MSR_EFER                            _AC(0xc0000080, U) /* Extended Feature Enable Register */
 #define  EFER_SCE                           (_AC(1, ULL) <<  0) /* SYSCALL Enable */
 #define  EFER_LME                           (_AC(1, ULL) <<  8) /* Long Mode Enable */
 #define  EFER_LMA                           (_AC(1, ULL) << 10) /* Long Mode Active */
@@ -199,35 +199,35 @@
     (EFER_SCE | EFER_LME | EFER_LMA | EFER_NXE | EFER_SVME | EFER_FFXSE | \
      EFER_AIBRSE)
 
-#define MSR_STAR                            0xc0000081 /* legacy mode SYSCALL target */
-#define MSR_LSTAR                           0xc0000082 /* long mode SYSCALL target */
-#define MSR_CSTAR                           0xc0000083 /* compat mode SYSCALL target */
-#define MSR_SYSCALL_MASK                    0xc0000084 /* EFLAGS mask for syscall */
-#define MSR_FS_BASE                         0xc0000100 /* 64bit FS base */
-#define MSR_GS_BASE                         0xc0000101 /* 64bit GS base */
-#define MSR_SHADOW_GS_BASE                  0xc0000102 /* SwapGS GS shadow */
-#define MSR_TSC_AUX                         0xc0000103 /* Auxiliary TSC */
+#define MSR_STAR                            _AC(0xc0000081, U) /* legacy mode SYSCALL target */
+#define MSR_LSTAR                           _AC(0xc0000082, U) /* long mode SYSCALL target */
+#define MSR_CSTAR                           _AC(0xc0000083, U) /* compat mode SYSCALL target */
+#define MSR_SYSCALL_MASK                    _AC(0xc0000084, U) /* EFLAGS mask for syscall */
+#define MSR_FS_BASE                         _AC(0xc0000100, U) /* 64bit FS base */
+#define MSR_GS_BASE                         _AC(0xc0000101, U) /* 64bit GS base */
+#define MSR_SHADOW_GS_BASE                  _AC(0xc0000102, U) /* SwapGS GS shadow */
+#define MSR_TSC_AUX                         _AC(0xc0000103, U) /* Auxiliary TSC */
 
-#define MSR_K8_SYSCFG                       0xc0010010
+#define MSR_K8_SYSCFG                       _AC(0xc0010010, U)
 #define  SYSCFG_MTRR_FIX_DRAM_EN            (_AC(1, ULL) << 18)
 #define  SYSCFG_MTRR_FIX_DRAM_MOD_EN        (_AC(1, ULL) << 19)
 #define  SYSCFG_MTRR_VAR_DRAM_EN            (_AC(1, ULL) << 20)
 #define  SYSCFG_MTRR_TOM2_EN                (_AC(1, ULL) << 21)
 #define  SYSCFG_TOM2_FORCE_WB               (_AC(1, ULL) << 22)
 
-#define MSR_K8_IORR_BASE0                   0xc0010016
-#define MSR_K8_IORR_MASK0                   0xc0010017
-#define MSR_K8_IORR_BASE1                   0xc0010018
-#define MSR_K8_IORR_MASK1                   0xc0010019
+#define MSR_K8_IORR_BASE0                   _AC(0xc0010016, U)
+#define MSR_K8_IORR_MASK0                   _AC(0xc0010017, U)
+#define MSR_K8_IORR_BASE1                   _AC(0xc0010018, U)
+#define MSR_K8_IORR_MASK1                   _AC(0xc0010019, U)
 
-#define MSR_K8_TSEG_BASE                    0xc0010112 /* AMD doc: SMMAddr */
-#define MSR_K8_TSEG_MASK                    0xc0010113 /* AMD doc: SMMMask */
+#define MSR_K8_TSEG_BASE                    _AC(0xc0010112, U) /* AMD doc: SMMAddr */
+#define MSR_K8_TSEG_MASK                    _AC(0xc0010113, U) /* AMD doc: SMMMask */
 
-#define MSR_K8_VM_CR                        0xc0010114
+#define MSR_K8_VM_CR                        _AC(0xc0010114, U)
 #define  VM_CR_INIT_REDIRECTION             (_AC(1, ULL) <<  1)
 #define  VM_CR_SVM_DISABLE                  (_AC(1, ULL) <<  4)
 
-#define MSR_VIRT_SPEC_CTRL                  0xc001011f /* Layout matches MSR_SPEC_CTRL */
+#define MSR_VIRT_SPEC_CTRL                  _AC(0xc001011f, U) /* Layout matches MSR_SPEC_CTRL */
 
 #define MSR_AMD_CSTATE_CFG                  0xc0010296
 
@@ -313,7 +313,7 @@
 #define CMCI_EN 			(1UL<<30)
 #define CMCI_THRESHOLD_MASK		0x7FFF
 
-#define MSR_AMD64_MC0_MASK		0xc0010044
+#define MSR_AMD64_MC0_MASK		0xc0010044U
 
 #define MSR_IA32_MCx_CTL(x)		(MSR_IA32_MC0_CTL + 4*(x))
 #define MSR_IA32_MCx_STATUS(x)		(MSR_IA32_MC0_STATUS + 4*(x))
@@ -345,82 +345,82 @@
 
 /* K7/K8 MSRs. Not complete. See the architecture manual for a more
    complete list. */
-#define MSR_K7_EVNTSEL0			0xc0010000
-#define MSR_K7_PERFCTR0			0xc0010004
-#define MSR_K7_EVNTSEL1			0xc0010001
-#define MSR_K7_PERFCTR1			0xc0010005
-#define MSR_K7_EVNTSEL2			0xc0010002
-#define MSR_K7_PERFCTR2			0xc0010006
-#define MSR_K7_EVNTSEL3			0xc0010003
-#define MSR_K7_PERFCTR3			0xc0010007
-#define MSR_K8_TOP_MEM1			0xc001001a
-#define MSR_K8_TOP_MEM2			0xc001001d
-
-#define MSR_K8_HWCR			0xc0010015
+#define MSR_K7_EVNTSEL0			0xc0010000U
+#define MSR_K7_PERFCTR0			0xc0010004U
+#define MSR_K7_EVNTSEL1			0xc0010001U
+#define MSR_K7_PERFCTR1			0xc0010005U
+#define MSR_K7_EVNTSEL2			0xc0010002U
+#define MSR_K7_PERFCTR2			0xc0010006U
+#define MSR_K7_EVNTSEL3			0xc0010003U
+#define MSR_K7_PERFCTR3			0xc0010007U
+#define MSR_K8_TOP_MEM1			0xc001001aU
+#define MSR_K8_TOP_MEM2			0xc001001dU
+
+#define MSR_K8_HWCR			0xc0010015U
 #define K8_HWCR_TSC_FREQ_SEL		(1ULL << 24)
 #define K8_HWCR_CPUID_USER_DIS		(1ULL << 35)
 
-#define MSR_K7_FID_VID_CTL		0xc0010041
-#define MSR_K7_FID_VID_STATUS		0xc0010042
-#define MSR_K8_PSTATE_LIMIT		0xc0010061
-#define MSR_K8_PSTATE_CTRL		0xc0010062
-#define MSR_K8_PSTATE_STATUS		0xc0010063
-#define MSR_K8_PSTATE0			0xc0010064
-#define MSR_K8_PSTATE1			0xc0010065
-#define MSR_K8_PSTATE2			0xc0010066
-#define MSR_K8_PSTATE3			0xc0010067
-#define MSR_K8_PSTATE4			0xc0010068
-#define MSR_K8_PSTATE5			0xc0010069
-#define MSR_K8_PSTATE6			0xc001006A
-#define MSR_K8_PSTATE7			0xc001006B
-#define MSR_K8_ENABLE_C1E		0xc0010055
-#define MSR_K8_VM_HSAVE_PA		0xc0010117
-
-#define MSR_AMD_FAM15H_EVNTSEL0		0xc0010200
-#define MSR_AMD_FAM15H_PERFCTR0		0xc0010201
-#define MSR_AMD_FAM15H_EVNTSEL1		0xc0010202
-#define MSR_AMD_FAM15H_PERFCTR1		0xc0010203
-#define MSR_AMD_FAM15H_EVNTSEL2		0xc0010204
-#define MSR_AMD_FAM15H_PERFCTR2		0xc0010205
-#define MSR_AMD_FAM15H_EVNTSEL3		0xc0010206
-#define MSR_AMD_FAM15H_PERFCTR3		0xc0010207
-#define MSR_AMD_FAM15H_EVNTSEL4		0xc0010208
-#define MSR_AMD_FAM15H_PERFCTR4		0xc0010209
-#define MSR_AMD_FAM15H_EVNTSEL5		0xc001020a
-#define MSR_AMD_FAM15H_PERFCTR5		0xc001020b
-
-#define MSR_AMD_L7S0_FEATURE_MASK	0xc0011002
-#define MSR_AMD_THRM_FEATURE_MASK	0xc0011003
-#define MSR_K8_FEATURE_MASK		0xc0011004
-#define MSR_K8_EXT_FEATURE_MASK		0xc0011005
+#define MSR_K7_FID_VID_CTL		0xc0010041U
+#define MSR_K7_FID_VID_STATUS		0xc0010042U
+#define MSR_K8_PSTATE_LIMIT		0xc0010061U
+#define MSR_K8_PSTATE_CTRL		0xc0010062U
+#define MSR_K8_PSTATE_STATUS		0xc0010063U
+#define MSR_K8_PSTATE0			0xc0010064U
+#define MSR_K8_PSTATE1			0xc0010065U
+#define MSR_K8_PSTATE2			0xc0010066U
+#define MSR_K8_PSTATE3			0xc0010067U
+#define MSR_K8_PSTATE4			0xc0010068U
+#define MSR_K8_PSTATE5			0xc0010069U
+#define MSR_K8_PSTATE6			0xc001006AU
+#define MSR_K8_PSTATE7			0xc001006BU
+#define MSR_K8_ENABLE_C1E		0xc0010055U
+#define MSR_K8_VM_HSAVE_PA		0xc0010117U
+
+#define MSR_AMD_FAM15H_EVNTSEL0		0xc0010200U
+#define MSR_AMD_FAM15H_PERFCTR0		0xc0010201U
+#define MSR_AMD_FAM15H_EVNTSEL1		0xc0010202U
+#define MSR_AMD_FAM15H_PERFCTR1		0xc0010203U
+#define MSR_AMD_FAM15H_EVNTSEL2		0xc0010204U
+#define MSR_AMD_FAM15H_PERFCTR2		0xc0010205U
+#define MSR_AMD_FAM15H_EVNTSEL3		0xc0010206U
+#define MSR_AMD_FAM15H_PERFCTR3		0xc0010207U
+#define MSR_AMD_FAM15H_EVNTSEL4		0xc0010208U
+#define MSR_AMD_FAM15H_PERFCTR4		0xc0010209U
+#define MSR_AMD_FAM15H_EVNTSEL5		0xc001020aU
+#define MSR_AMD_FAM15H_PERFCTR5		0xc001020bU
+
+#define MSR_AMD_L7S0_FEATURE_MASK	0xc0011002U
+#define MSR_AMD_THRM_FEATURE_MASK	0xc0011003U
+#define MSR_K8_FEATURE_MASK			0xc0011004U
+#define MSR_K8_EXT_FEATURE_MASK		0xc0011005U
 
 /* AMD64 MSRs */
-#define MSR_AMD64_NB_CFG		0xc001001f
+#define MSR_AMD64_NB_CFG		0xc001001fU
 #define AMD64_NB_CFG_CF8_EXT_ENABLE_BIT	46
-#define MSR_AMD64_LS_CFG		0xc0011020
-#define MSR_AMD64_IC_CFG		0xc0011021
-#define MSR_AMD64_DC_CFG		0xc0011022
-#define MSR_AMD64_DE_CFG		0xc0011029
+#define MSR_AMD64_LS_CFG		0xc0011020U
+#define MSR_AMD64_IC_CFG		0xc0011021U
+#define MSR_AMD64_DC_CFG		0xc0011022U
+#define MSR_AMD64_DE_CFG		0xc0011029U
 #define AMD64_DE_CFG_LFENCE_SERIALISE	(_AC(1, ULL) << 1)
-#define MSR_AMD64_EX_CFG		0xc001102c
-#define MSR_AMD64_DE_CFG2		0xc00110e3
+#define MSR_AMD64_EX_CFG		0xc001102cU
+#define MSR_AMD64_DE_CFG2		0xc00110e3U
 
-#define MSR_AMD64_DR0_ADDRESS_MASK	0xc0011027
-#define MSR_AMD64_DR1_ADDRESS_MASK	0xc0011019
-#define MSR_AMD64_DR2_ADDRESS_MASK	0xc001101a
-#define MSR_AMD64_DR3_ADDRESS_MASK	0xc001101b
+#define MSR_AMD64_DR0_ADDRESS_MASK	0xc0011027U
+#define MSR_AMD64_DR1_ADDRESS_MASK	0xc0011019U
+#define MSR_AMD64_DR2_ADDRESS_MASK	0xc001101aU
+#define MSR_AMD64_DR3_ADDRESS_MASK	0xc001101bU
 
 /* AMD Family10h machine check MSRs */
-#define MSR_F10_MC4_MISC1		0xc0000408
-#define MSR_F10_MC4_MISC2		0xc0000409
-#define MSR_F10_MC4_MISC3		0xc000040A
+#define MSR_F10_MC4_MISC1		0xc0000408U
+#define MSR_F10_MC4_MISC2		0xc0000409U
+#define MSR_F10_MC4_MISC3		0xc000040AU
 
 /* AMD Family10h Bus Unit MSRs */
-#define MSR_F10_BU_CFG 		0xc0011023
-#define MSR_F10_BU_CFG2		0xc001102a
+#define MSR_F10_BU_CFG 		0xc0011023U
+#define MSR_F10_BU_CFG2		0xc001102aU
 
 /* Other AMD Fam10h MSRs */
-#define MSR_FAM10H_MMIO_CONF_BASE	0xc0010058
+#define MSR_FAM10H_MMIO_CONF_BASE	0xc0010058U
 #define FAM10H_MMIO_CONF_ENABLE         (1<<0)
 #define FAM10H_MMIO_CONF_BUSRANGE_MASK	0xf
 #define FAM10H_MMIO_CONF_BUSRANGE_SHIFT 2
@@ -429,22 +429,22 @@
 
 /* AMD Microcode MSRs */
 #define MSR_AMD_PATCHLEVEL		0x0000008b
-#define MSR_AMD_PATCHLOADER		0xc0010020
+#define MSR_AMD_PATCHLOADER		0xc0010020U
 
 /* AMD TSC RATE MSR */
-#define MSR_AMD64_TSC_RATIO		0xc0000104
+#define MSR_AMD64_TSC_RATIO		0xc0000104U
 
 /* AMD Lightweight Profiling MSRs */
-#define MSR_AMD64_LWP_CFG		0xc0000105
-#define MSR_AMD64_LWP_CBADDR		0xc0000106
+#define MSR_AMD64_LWP_CFG		0xc0000105U
+#define MSR_AMD64_LWP_CBADDR		0xc0000106U
 
 /* AMD OS Visible Workaround MSRs */
-#define MSR_AMD_OSVW_ID_LENGTH          0xc0010140
-#define MSR_AMD_OSVW_STATUS             0xc0010141
+#define MSR_AMD_OSVW_ID_LENGTH          0xc0010140U
+#define MSR_AMD_OSVW_STATUS             0xc0010141U
 
 /* AMD Protected Processor Inventory Number */
-#define MSR_AMD_PPIN_CTL                0xc00102f0
-#define MSR_AMD_PPIN                    0xc00102f1
+#define MSR_AMD_PPIN_CTL                0xc00102f0U
+#define MSR_AMD_PPIN                    0xc00102f1U
 
 /* VIA Cyrix defined MSRs*/
 #define MSR_VIA_FCR			0x00001107
diff --git a/xen/arch/x86/include/asm/pci.h b/xen/arch/x86/include/asm/pci.h
index f4a58c8acf..e1dd12eb19 100644
--- a/xen/arch/x86/include/asm/pci.h
+++ b/xen/arch/x86/include/asm/pci.h
@@ -3,10 +3,10 @@
 
 #include <xen/mm.h>
 
-#define CF8_BDF(cf8)     (  ((cf8) & 0x00ffff00) >> 8)
-#define CF8_ADDR_LO(cf8) (   (cf8) & 0x000000fc)
-#define CF8_ADDR_HI(cf8) (  ((cf8) & 0x0f000000) >> 16)
-#define CF8_ENABLED(cf8) (!!((cf8) & 0x80000000))
+#define CF8_BDF(cf8)     (  ((cf8) & 0x00ffff00U) >> 8)
+#define CF8_ADDR_LO(cf8) (   (cf8) & 0x000000fcU)
+#define CF8_ADDR_HI(cf8) (  ((cf8) & 0x0f000000U) >> 16)
+#define CF8_ENABLED(cf8) (!!((cf8) & 0x80000000U))
 
 #define IS_SNB_GFX(id) (id == 0x01068086 || id == 0x01168086 \
                         || id == 0x01268086 || id == 0x01028086 \
diff --git a/xen/arch/x86/include/asm/x86-defns.h b/xen/arch/x86/include/asm/x86-defns.h
index 5838631ef6..48d7a3b7af 100644
--- a/xen/arch/x86/include/asm/x86-defns.h
+++ b/xen/arch/x86/include/asm/x86-defns.h
@@ -30,17 +30,17 @@
 /*
  * Intel CPU flags in CR0
  */
-#define X86_CR0_PE              0x00000001 /* Enable Protected Mode    (RW) */
-#define X86_CR0_MP              0x00000002 /* Monitor Coprocessor      (RW) */
-#define X86_CR0_EM              0x00000004 /* Require FPU Emulation    (RO) */
-#define X86_CR0_TS              0x00000008 /* Task Switched            (RW) */
-#define X86_CR0_ET              0x00000010 /* Extension type           (RO) */
-#define X86_CR0_NE              0x00000020 /* Numeric Error Reporting  (RW) */
-#define X86_CR0_WP              0x00010000 /* Supervisor Write Protect (RW) */
-#define X86_CR0_AM              0x00040000 /* Alignment Checking       (RW) */
-#define X86_CR0_NW              0x20000000 /* Not Write-Through        (RW) */
-#define X86_CR0_CD              0x40000000 /* Cache Disable            (RW) */
-#define X86_CR0_PG              0x80000000 /* Paging                   (RW) */
+#define X86_CR0_PE              _AC(0x00000001, UL) /* Enable Protected Mode    (RW) */
+#define X86_CR0_MP              _AC(0x00000002, UL) /* Monitor Coprocessor      (RW) */
+#define X86_CR0_EM              _AC(0x00000004, UL) /* Require FPU Emulation    (RO) */
+#define X86_CR0_TS              _AC(0x00000008, UL) /* Task Switched            (RW) */
+#define X86_CR0_ET              _AC(0x00000010, UL) /* Extension type           (RO) */
+#define X86_CR0_NE              _AC(0x00000020, UL) /* Numeric Error Reporting  (RW) */
+#define X86_CR0_WP              _AC(0x00010000, UL) /* Supervisor Write Protect (RW) */
+#define X86_CR0_AM              _AC(0x00040000, UL) /* Alignment Checking       (RW) */
+#define X86_CR0_NW              _AC(0x20000000, UL) /* Not Write-Through        (RW) */
+#define X86_CR0_CD              _AC(0x40000000, UL) /* Cache Disable            (RW) */
+#define X86_CR0_PG              _AC(0x80000000, UL) /* Paging                   (RW) */
 
 /*
  * Intel CPU flags in CR3
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 15:40:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 15:40:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600546.936240 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Ue-0005yT-1V; Tue, 12 Sep 2023 15:40:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600546.936240; Tue, 12 Sep 2023 15:40:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Ud-0005yM-Ug; Tue, 12 Sep 2023 15:39:59 +0000
Received: by outflank-mailman (input) for mailman id 600546;
 Tue, 12 Sep 2023 15:39:58 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg5Uc-0005yG-7n
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 15:39:58 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9f50888a-5182-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 17:39:55 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id E3F5D4EE0749;
 Tue, 12 Sep 2023 17:39:54 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9f50888a-5182-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v6 0/7] xen/x86: address violations of MISRA C:2012 Rule 7.2
Date: Tue, 12 Sep 2023 17:38:57 +0200
Message-Id: <cover.1694532795.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline
states:
"A 'u' or 'U' suffix shall be applied to all integer constants that are
represented in an unsigned type".

These violations are caused by the missing "u" or "U" suffix in unsigned
integer constants, such as:

xen/arch/x86/hvm/hypercall.c:132.17-132.26
if ( (eax & 0x80000000) && is_viridian_domain(currd) )

If a rule is not met, changes are needed in order to achieve compliance.
The patches in this series achieve compliance for MISRA C:2012 Rule 7.2 by
adding the 'U' suffix to integers literals with unsigned type and also to
other
literals used in the same contexts or near violations, when their positive
nature is immediately clear. The latter changes are done for the sake of
uniformity.

This series splits "xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
in several patches, and fixes some issues in v5.

Gianluca Luparini (1):
  x86/vmx: address violations of MISRA C:2012 Rule 7.2

Simone Ballarin (6):
  x86/hvm: address violations of MISRA C:2012 Rule 7.2
  x86/asm: address violations of MISRA C:2012 Rule 7.2
  xen/lib: address violations of MISRA C:2012 Rule 7.2
  xen/x86: address violations of MISRA C:2012 Rule 7.2
  xen/mcheck: address violations of MISRA C:2012 Rule 7.2
  x86/efi: address violations of MISRA C:2012 Rule 7.2

 xen/arch/x86/apic.c                     |   2 +-
 xen/arch/x86/cpu-policy.c               |  18 +--
 xen/arch/x86/cpu/mcheck/mce-apei.c      |   4 +-
 xen/arch/x86/cpu/vpmu_intel.c           |   2 +-
 xen/arch/x86/cpuid.c                    |   8 +-
 xen/arch/x86/efi/efi-boot.h             |   6 +-
 xen/arch/x86/extable.c                  |   2 +-
 xen/arch/x86/hvm/hypercall.c            |   2 +-
 xen/arch/x86/hvm/pmtimer.c              |   4 +-
 xen/arch/x86/hvm/stdvga.c               |  32 ++---
 xen/arch/x86/hvm/vlapic.c               |   6 +-
 xen/arch/x86/hvm/vmx/vmcs.c             |   6 +-
 xen/arch/x86/hvm/vmx/vvmx.c             |   8 +-
 xen/arch/x86/include/asm/apicdef.h      |   2 +-
 xen/arch/x86/include/asm/config.h       |   2 +-
 xen/arch/x86/include/asm/hpet.h         |   2 +-
 xen/arch/x86/include/asm/hvm/trace.h    |   4 +-
 xen/arch/x86/include/asm/hvm/vioapic.h  |   2 +-
 xen/arch/x86/include/asm/hvm/vmx/vmcs.h |  84 +++++------
 xen/arch/x86/include/asm/hvm/vmx/vmx.h  |  16 +--
 xen/arch/x86/include/asm/msi.h          |   2 +-
 xen/arch/x86/include/asm/msr-index.h    | 182 ++++++++++++------------
 xen/arch/x86/include/asm/pci.h          |   8 +-
 xen/arch/x86/include/asm/x86-defns.h    |  22 +--
 xen/arch/x86/percpu.c                   |   2 +-
 xen/arch/x86/psr.c                      |   2 +-
 xen/arch/x86/spec_ctrl.c                |  12 +-
 xen/lib/x86/cpuid.c                     |   8 +-
 xen/lib/x86/policy.c                    |   2 +-
 29 files changed, 226 insertions(+), 226 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 15:40:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 15:40:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600550.936280 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Us-0007tD-5C; Tue, 12 Sep 2023 15:40:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600550.936280; Tue, 12 Sep 2023 15:40:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Us-0007sz-1t; Tue, 12 Sep 2023 15:40:14 +0000
Received: by outflank-mailman (input) for mailman id 600550;
 Tue, 12 Sep 2023 15:40:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg5Uq-0005yG-Di
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 15:40:12 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a85f01ac-5182-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 17:40:10 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 4A4244EE074F;
 Tue, 12 Sep 2023 17:40:10 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a85f01ac-5182-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Gianluca Luparini <gianluca.luparini@bugseng.com>
Subject: [XEN PATCH v6 4/7] xen/lib: address violations of MISRA C:2012 Rule 7.2
Date: Tue, 12 Sep 2023 17:39:01 +0200
Message-Id: <f92e8ae0d980779bd7dd4b21b70ad779f2e2488b.1694532795.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694532795.git.simone.ballarin@bugseng.com>
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
headline states:
"A 'u' or 'U' suffix shall be applied to all integer constants
that are represented in an unsigned type".

Add the 'U' suffix to integers literals with unsigned type.

For the sake of uniformity, the following change is made:
- add the 'U' suffix to switch cases in 'cpuid.c'

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>

---
Changes in v6:
- new patch obtained by splitting LIB related changes from
"xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
---
 xen/lib/x86/cpuid.c  | 8 ++++----
 xen/lib/x86/policy.c | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/xen/lib/x86/cpuid.c b/xen/lib/x86/cpuid.c
index 2006cbaa1c..eb7698dc73 100644
--- a/xen/lib/x86/cpuid.c
+++ b/xen/lib/x86/cpuid.c
@@ -217,10 +217,10 @@ void x86_cpu_policy_fill_native(struct cpu_policy *p)
     }
 
     /* Extended leaves. */
-    cpuid_leaf(0x80000000, &p->extd.raw[0]);
+    cpuid_leaf(0x80000000U, &p->extd.raw[0]);
     for ( i = 1; i <= MIN(p->extd.max_leaf & 0xffffU,
                           ARRAY_SIZE(p->extd.raw) - 1); ++i )
-        cpuid_leaf(0x80000000 + i, &p->extd.raw[i]);
+        cpuid_leaf(0x80000000U + i, &p->extd.raw[i]);
 
     /* Don't report leaves from possible lower level hypervisor, for now. */
     p->hv_limit = 0;
@@ -421,7 +421,7 @@ int x86_cpuid_copy_to_buffer(const struct cpu_policy *p,
     /* Extended leaves. */
     for ( leaf = 0; leaf <= MIN(p->extd.max_leaf & 0xffffUL,
                                 ARRAY_SIZE(p->extd.raw) - 1); ++leaf )
-        COPY_LEAF(0x80000000 | leaf, XEN_CPUID_NO_SUBLEAF, &p->extd.raw[leaf]);
+        COPY_LEAF(0x80000000U | leaf, XEN_CPUID_NO_SUBLEAF, &p->extd.raw[leaf]);
 
 #undef COPY_LEAF
 
@@ -521,7 +521,7 @@ int x86_cpuid_copy_from_buffer(struct cpu_policy *p,
             p->hv2_limit = l.a;
             break;
 
-        case 0x80000000 ... 0x80000000 + ARRAY_SIZE(p->extd.raw) - 1:
+        case 0x80000000U ... 0x80000000U + ARRAY_SIZE(p->extd.raw) - 1:
             if ( data.subleaf != XEN_CPUID_NO_SUBLEAF )
                 goto out_of_range;
 
diff --git a/xen/lib/x86/policy.c b/xen/lib/x86/policy.c
index a9c60000af..f033d22785 100644
--- a/xen/lib/x86/policy.c
+++ b/xen/lib/x86/policy.c
@@ -22,7 +22,7 @@ int x86_cpu_policies_are_compatible(const struct cpu_policy *host,
         FAIL_CPUID(7, 0);
 
     if ( guest->extd.max_leaf > host->extd.max_leaf )
-        FAIL_CPUID(0x80000000, NA);
+        FAIL_CPUID(0x80000000U, NA);
 
     /* TODO: Audit more CPUID data. */
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 15:40:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 15:40:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600551.936285 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Us-0007x0-HZ; Tue, 12 Sep 2023 15:40:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600551.936285; Tue, 12 Sep 2023 15:40:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Us-0007vY-AE; Tue, 12 Sep 2023 15:40:14 +0000
Received: by outflank-mailman (input) for mailman id 600551;
 Tue, 12 Sep 2023 15:40:13 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg5Ur-00073d-3S
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 15:40:13 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a93a1088-5182-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 17:40:12 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id C00A44EE074C;
 Tue, 12 Sep 2023 17:40:11 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a93a1088-5182-11ee-8786-cb3800f73035
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v6 5/7] xen/x86: address violations of MISRA C:2012 Rule 7.2
Date: Tue, 12 Sep 2023 17:39:02 +0200
Message-Id: <33185adc43014dff090ea6832a5a88e15caf5f38.1694532795.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694532795.git.simone.ballarin@bugseng.com>
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
headline states:
"A 'u' or 'U' suffix shall be applied to all integer constants
that are represented in an unsigned type".

Add the 'U' suffix to integers literals with unsigned type.

For the sake of uniformity, the following change is made:
- add the 'U' suffix to switch cases in 'cpuid.c'

---
Changes in v6:
- new patch obtained by splitting X86 related changes from
"xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
---
 xen/arch/x86/apic.c       |  2 +-
 xen/arch/x86/cpu-policy.c | 18 +++++++++---------
 xen/arch/x86/cpuid.c      |  8 ++++----
 xen/arch/x86/extable.c    |  2 +-
 xen/arch/x86/percpu.c     |  2 +-
 xen/arch/x86/psr.c        |  2 +-
 xen/arch/x86/spec_ctrl.c  | 12 ++++++------
 7 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/xen/arch/x86/apic.c b/xen/arch/x86/apic.c
index 41879230ec..1109c0d9cf 100644
--- a/xen/arch/x86/apic.c
+++ b/xen/arch/x86/apic.c
@@ -1211,7 +1211,7 @@ static void __init calibrate_APIC_clock(void)
      * Setup the APIC counter to maximum. There is no way the lapic
      * can underflow in the 100ms detection time frame.
      */
-    __setup_APIC_LVTT(0xffffffff);
+    __setup_APIC_LVTT(0xffffffffU);
 
     bus_freq = calibrate_apic_timer();
     if ( !bus_freq )
diff --git a/xen/arch/x86/cpu-policy.c b/xen/arch/x86/cpu-policy.c
index 81e574390f..423932bc13 100644
--- a/xen/arch/x86/cpu-policy.c
+++ b/xen/arch/x86/cpu-policy.c
@@ -321,7 +321,7 @@ static void recalculate_misc(struct cpu_policy *p)
         p->extd.vendor_edx = p->basic.vendor_edx;
 
         p->extd.raw_fms = p->basic.raw_fms;
-        p->extd.raw[0x1].b &= 0xff00ffff;
+        p->extd.raw[0x1].b &= 0xff00ffffU;
         p->extd.e1d |= p->basic._1d & CPUID_COMMON_1D_FEATURES;
 
         p->extd.raw[0x8].a &= 0x0000ffff; /* GuestMaxPhysAddr hidden. */
@@ -378,10 +378,10 @@ static void __init calculate_host_policy(void)
      * this information.
      */
     if ( cpu_has_lfence_dispatch )
-        max_extd_leaf = max(max_extd_leaf, 0x80000021);
+        max_extd_leaf = max(max_extd_leaf, 0x80000021U);
 
-    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, max_extd_leaf & 0xffff,
-                                          ARRAY_SIZE(p->extd.raw) - 1);
+    p->extd.max_leaf = 0x80000000U | min_t(uint32_t, max_extd_leaf & 0xffff,
+                                           ARRAY_SIZE(p->extd.raw) - 1);
 
     x86_cpu_featureset_to_policy(boot_cpu_data.x86_capability, p);
     recalculate_xstate(p);
@@ -793,11 +793,11 @@ void recalculate_cpuid_policy(struct domain *d)
 
     p->basic.max_leaf   = min(p->basic.max_leaf,   max->basic.max_leaf);
     p->feat.max_subleaf = min(p->feat.max_subleaf, max->feat.max_subleaf);
-    p->extd.max_leaf    = 0x80000000 | min(p->extd.max_leaf & 0xffff,
-                                           ((p->x86_vendor & (X86_VENDOR_AMD |
-                                                              X86_VENDOR_HYGON))
-                                            ? CPUID_GUEST_NR_EXTD_AMD
-                                            : CPUID_GUEST_NR_EXTD_INTEL) - 1);
+    p->extd.max_leaf    = 0x80000000U | min(p->extd.max_leaf & 0xffff,
+                                            ((p->x86_vendor & (X86_VENDOR_AMD |
+                                                               X86_VENDOR_HYGON))
+                                             ? CPUID_GUEST_NR_EXTD_AMD
+                                             : CPUID_GUEST_NR_EXTD_INTEL) - 1);
 
     x86_cpu_policy_to_featureset(p, fs);
     x86_cpu_policy_to_featureset(max, max_fs);
diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
index 455a09b2dd..7290a979c6 100644
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -93,7 +93,7 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
         }
         break;
 
-    case 0x40000000 ... 0x400000ff:
+    case 0x40000000U ... 0x400000ffU:
         if ( is_viridian_domain(d) )
             return cpuid_viridian_leaves(v, leaf, subleaf, res);
 
@@ -103,10 +103,10 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
          * Intel reserve up until 0x4fffffff for hypervisor use.  AMD reserve
          * only until 0x400000ff, but we already use double that.
          */
-    case 0x40000100 ... 0x400001ff:
+    case 0x40000100U ... 0x400001ffU:
         return cpuid_hypervisor_leaves(v, leaf, subleaf, res);
 
-    case 0x80000000 ... 0x80000000 + CPUID_GUEST_NR_EXTD - 1:
+    case 0x80000000U ... 0x80000000U + CPUID_GUEST_NR_EXTD - 1:
         ASSERT((p->extd.max_leaf & 0xffff) < ARRAY_SIZE(p->extd.raw));
         if ( (leaf & 0xffff) > min_t(uint32_t, p->extd.max_leaf & 0xffff,
                                      ARRAY_SIZE(p->extd.raw) - 1) )
@@ -352,7 +352,7 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
         }
         break;
 
-    case 0x80000001:
+    case 0x80000001U:
         /* SYSCALL is hidden outside of long mode on Intel. */
         if ( p->x86_vendor == X86_VENDOR_INTEL &&
              is_hvm_domain(d) && !hvm_long_mode_active(v) )
diff --git a/xen/arch/x86/extable.c b/xen/arch/x86/extable.c
index 74b14246e9..652010f413 100644
--- a/xen/arch/x86/extable.c
+++ b/xen/arch/x86/extable.c
@@ -141,7 +141,7 @@ static int __init cf_check stub_selftest(void)
           .rax = 0x0123456789abcdef,
           .res.fields.trapnr = X86_EXC_GP },
         { .opc = { endbr64, 0x02, 0x04, 0x04, 0xc3 }, /* add (%rsp,%rax),%al */
-          .rax = 0xfedcba9876543210,
+          .rax = 0xfedcba9876543210UL,
           .res.fields.trapnr = X86_EXC_SS },
         { .opc = { endbr64, 0xcc, 0xc3, 0xc3, 0xc3 }, /* int3 */
           .res.fields.trapnr = X86_EXC_BP },
diff --git a/xen/arch/x86/percpu.c b/xen/arch/x86/percpu.c
index 288050cdba..1ebeb65ad6 100644
--- a/xen/arch/x86/percpu.c
+++ b/xen/arch/x86/percpu.c
@@ -12,7 +12,7 @@ unsigned long __per_cpu_offset[NR_CPUS];
  * possible #PF at (NULL + a little) which has security implications in the
  * context of PV guests.
  */
-#define INVALID_PERCPU_AREA (0x8000000000000000L - (long)__per_cpu_start)
+#define INVALID_PERCPU_AREA (0x8000000000000000UL - (long)__per_cpu_start)
 #define PERCPU_ORDER get_order_from_bytes(__per_cpu_data_end - __per_cpu_start)
 
 void __init percpu_init_areas(void)
diff --git a/xen/arch/x86/psr.c b/xen/arch/x86/psr.c
index 4c01813c4b..0b9631ac44 100644
--- a/xen/arch/x86/psr.c
+++ b/xen/arch/x86/psr.c
@@ -191,7 +191,7 @@ static struct feat_node *feat_l2_cat;
 static struct feat_node *feat_mba;
 
 /* Common functions */
-#define cat_default_val(len) (0xffffffff >> (32 - (len)))
+#define cat_default_val(len) (0xffffffffU >> (32 - (len)))
 
 /*
  * get_cdp_data - get DATA COS register value from input COS ID.
diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c
index 9b8fdb5303..a3dec42f22 100644
--- a/xen/arch/x86/spec_ctrl.c
+++ b/xen/arch/x86/spec_ctrl.c
@@ -402,10 +402,10 @@ static void __init print_details(enum ind_thunk thunk)
         cpuid_count(7, 0, &max, &tmp, &tmp, &_7d0);
     if ( max >= 2 )
         cpuid_count(7, 2, &tmp, &tmp, &tmp, &_7d2);
-    if ( boot_cpu_data.extended_cpuid_level >= 0x80000008 )
-        cpuid(0x80000008, &tmp, &e8b, &tmp, &tmp);
-    if ( boot_cpu_data.extended_cpuid_level >= 0x80000021 )
-        cpuid(0x80000021, &e21a, &tmp, &tmp, &tmp);
+    if ( boot_cpu_data.extended_cpuid_level >= 0x80000008U )
+        cpuid(0x80000008U, &tmp, &e8b, &tmp, &tmp);
+    if ( boot_cpu_data.extended_cpuid_level >= 0x80000021U )
+        cpuid(0x80000021U, &e21a, &tmp, &tmp, &tmp);
     if ( cpu_has_arch_caps )
         rdmsrl(MSR_ARCH_CAPABILITIES, caps);
 
@@ -1568,8 +1568,8 @@ void __init init_speculation_mitigations(void)
          * TODO: Adjust cpu_has_svm_spec_ctrl to be usable earlier on boot.
          */
         if ( opt_msr_sc_hvm &&
-             (boot_cpu_data.extended_cpuid_level >= 0x8000000a) &&
-             (cpuid_edx(0x8000000a) & (1u << SVM_FEATURE_SPEC_CTRL)) )
+             (boot_cpu_data.extended_cpuid_level >= 0x8000000aU) &&
+             (cpuid_edx(0x8000000aU) & (1u << SVM_FEATURE_SPEC_CTRL)) )
             setup_force_cpu_cap(X86_FEATURE_SC_MSR_HVM);
     }
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 15:40:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 15:40:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600552.936300 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Uu-0008Q0-19; Tue, 12 Sep 2023 15:40:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600552.936300; Tue, 12 Sep 2023 15:40:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Ut-0008Pd-UD; Tue, 12 Sep 2023 15:40:15 +0000
Received: by outflank-mailman (input) for mailman id 600552;
 Tue, 12 Sep 2023 15:40:14 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg5Us-00073d-FS
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 15:40:14 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id aa2691c6-5182-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 17:40:13 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 4565D4EE0749;
 Tue, 12 Sep 2023 17:40:13 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: aa2691c6-5182-11ee-8786-cb3800f73035
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Gianluca Luparini <gianluca.luparini@bugseng.com>
Subject: [XEN PATCH v6 6/7] xen/mcheck: address violations of MISRA C:2012 Rule 7.2
Date: Tue, 12 Sep 2023 17:39:03 +0200
Message-Id: <3a9bd4547d64902998bceba58acd611e09779f57.1694532795.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694532795.git.simone.ballarin@bugseng.com>
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
headline states:
"A 'u' or 'U' suffix shall be applied to all integer constants
that are represented in an unsigned type".

Add the 'U' suffix to integers literals with unsigned type.

For the sake of uniformity, the following change is made:
- add the 'U' suffix to all first macro's arguments

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>

---
Changes in v6:
- new patch obtained by splitting mcheck related changes from
"xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
---
 xen/arch/x86/cpu/mcheck/mce-apei.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/cpu/mcheck/mce-apei.c b/xen/arch/x86/cpu/mcheck/mce-apei.c
index 53b6735896..b895020882 100644
--- a/xen/arch/x86/cpu/mcheck/mce-apei.c
+++ b/xen/arch/x86/cpu/mcheck/mce-apei.c
@@ -37,10 +37,10 @@
 #include "mce.h"
 
 #define CPER_CREATOR_MCE						\
-	UUID_LE(0x75a574e3, 0x5052, 0x4b29, 0x8a, 0x8e, 0xbe, 0x2c,	\
+	UUID_LE(0x75a574e3U, 0x5052, 0x4b29, 0x8a, 0x8e, 0xbe, 0x2c,	\
 		0x64, 0x90, 0xb8, 0x9d)
 #define CPER_SECTION_TYPE_MCE						\
-	UUID_LE(0xfe08ffbe, 0x95e4, 0x4be7, 0xbc, 0x73, 0x40, 0x96,	\
+	UUID_LE(0xfe08ffbeU, 0x95e4, 0x4be7, 0xbc, 0x73, 0x40, 0x96,	\
 		0x04, 0x4a, 0x38, 0xfc)
 
 /*
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 15:40:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 15:40:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600553.936310 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Uw-0000MW-BT; Tue, 12 Sep 2023 15:40:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600553.936310; Tue, 12 Sep 2023 15:40:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5Uw-0000MD-7O; Tue, 12 Sep 2023 15:40:18 +0000
Received: by outflank-mailman (input) for mailman id 600553;
 Tue, 12 Sep 2023 15:40:16 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg5Uu-0005yG-UF
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 15:40:16 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ab1114c4-5182-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 17:40:15 +0200 (CEST)
Received: from beta.station (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id C95B24EE074A;
 Tue, 12 Sep 2023 17:40:14 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ab1114c4-5182-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Gianluca Luparini <gianluca.luparini@bugseng.com>
Subject: [XEN PATCH v6 7/7] x86/efi: address violations of MISRA C:2012 Rule 7.2
Date: Tue, 12 Sep 2023 17:39:04 +0200
Message-Id: <176532a92dd159f9b6d189139e738e1cc8aebcbc.1694532795.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1694532795.git.simone.ballarin@bugseng.com>
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
headline states:
"A 'u' or 'U' suffix shall be applied to all integer constants
that are represented in an unsigned type".

Addi the 'U' suffix to integers literals with unsigned type.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>

---
Changes in v6:
- new patch obtained by splitting EFI related changes from
"xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
---
 xen/arch/x86/efi/efi-boot.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/efi/efi-boot.h b/xen/arch/x86/efi/efi-boot.h
index 92f4cfe8bd..eebc54180b 100644
--- a/xen/arch/x86/efi/efi-boot.h
+++ b/xen/arch/x86/efi/efi-boot.h
@@ -740,16 +740,16 @@ static void __init efi_arch_handle_module(const struct file *file,
 
 static void __init efi_arch_cpu(void)
 {
-    uint32_t eax = cpuid_eax(0x80000000);
+    uint32_t eax = cpuid_eax(0x80000000U);
     uint32_t *caps = boot_cpu_data.x86_capability;
 
     boot_tsc_stamp = rdtsc();
 
     caps[FEATURESET_1c] = cpuid_ecx(1);
 
-    if ( (eax >> 16) == 0x8000 && eax > 0x80000000 )
+    if ( (eax >> 16) == 0x8000 && eax > 0x80000000U )
     {
-        caps[FEATURESET_e1d] = cpuid_edx(0x80000001);
+        caps[FEATURESET_e1d] = cpuid_edx(0x80000001U);
 
         /*
          * This check purposefully doesn't use cpu_has_nx because
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 15:58:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 15:58:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600609.936319 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5mK-0004Xo-SL; Tue, 12 Sep 2023 15:58:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600609.936319; Tue, 12 Sep 2023 15:58:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5mK-0004Xh-Pd; Tue, 12 Sep 2023 15:58:16 +0000
Received: by outflank-mailman (input) for mailman id 600609;
 Tue, 12 Sep 2023 15:58:14 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg5mI-0004Sm-Jd
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 15:58:14 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2ded76a0-5185-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 17:58:14 +0200 (CEST)
Received: from [192.168.1.9] (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 1761C4EE0749;
 Tue, 12 Sep 2023 17:58:13 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2ded76a0-5185-11ee-8786-cb3800f73035
Message-ID: <f6b2c0a1-44be-3cc7-0235-1d7e7ba54e26@bugseng.com>
Date: Tue, 12 Sep 2023 17:58:12 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 03/10] misra: add deviations for direct inclusion
 guards
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <0c1fb82b539d939e7c6655a9a8f3d7fe8b213cef.1694510856.git.simone.ballarin@bugseng.com>
 <50e33371-8dc5-d4cb-a606-72d1ab005c21@suse.com>
 <ce839d89-931a-3595-584e-eab3f665cea3@bugseng.com>
 <19082bc8-6c5f-a207-0c69-33eb412fec01@suse.com>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <19082bc8-6c5f-a207-0c69-33eb412fec01@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 12/09/23 12:19, Jan Beulich wrote:
> On 12.09.2023 12:05, Simone Ballarin wrote:
>> On 12/09/23 11:52, Jan Beulich wrote:
>>> On 12.09.2023 11:36, Simone Ballarin wrote:
>>>> --- a/docs/misra/safe.json
>>>> +++ b/docs/misra/safe.json
>>>> @@ -36,6 +36,14 @@
>>>>            },
>>>>            {
>>>>                "id": "SAF-4-safe",
>>>> +            "analyser": {
>>>> +                "eclair": "MC3R1.D4.10"
>>>> +            },
>>>> +            "name": "Dir 4.10: direct inclusion guard before",
>>>> +            "text": "Headers with just the direct inclusion guard before the inclusion guard are safe."
>>>> +        },
>>>> +        {
>>>> +            "id": "SAF-5-safe",
>>>>                "analyser": {},
>>>>                "name": "Sentinel",
>>>>                "text": "Next ID to be used"
>>>> diff --git a/xen/arch/arm/include/asm/hypercall.h b/xen/arch/arm/include/asm/hypercall.h
>>>> index ccd26c5184..24f8c61a73 100644
>>>> --- a/xen/arch/arm/include/asm/hypercall.h
>>>> +++ b/xen/arch/arm/include/asm/hypercall.h
>>>> @@ -1,3 +1,4 @@
>>>> +/* SAF-3-safe direct inclusion guard before */
>>>>    #ifndef __XEN_HYPERCALL_H__
>>>>    #error "asm/hypercall.h should not be included directly - include xen/hypercall.h instead"
>>>>    #endif
>>>> diff --git a/xen/arch/x86/include/asm/hypercall.h b/xen/arch/x86/include/asm/hypercall.h
>>>> index ec2edc771e..dfdfe80021 100644
>>>> --- a/xen/arch/x86/include/asm/hypercall.h
>>>> +++ b/xen/arch/x86/include/asm/hypercall.h
>>>> @@ -2,6 +2,7 @@
>>>>     * asm-x86/hypercall.h
>>>>     */
>>>>    
>>>> +/* SAF-3-safe direct inclusion guard before */
>>>>    #ifndef __XEN_HYPERCALL_H__
>>>>    #error "asm/hypercall.h should not be included directly - include xen/hypercall.h instead"
>>>>    #endif
>>>> diff --git a/xen/include/xen/unaligned.h b/xen/include/xen/unaligned.h
>>>> index 0a2b16d05d..190ada7800 100644
>>>> --- a/xen/include/xen/unaligned.h
>>>> +++ b/xen/include/xen/unaligned.h
>>>> @@ -3,6 +3,7 @@
>>>>     * without faulting, and at least reasonably efficiently.  Other architectures
>>>>     * will need to have a custom asm/unaligned.h.
>>>>     */
>>>> +/* SAF-3-safe direct inclusion guard before */
>>>>    #ifndef __ASM_UNALIGNED_H__
>>>>    #error "xen/unaligned.h should not be included directly - include asm/unaligned.h instead"
>>>>    #endif
>>>
>>> Apart from the recurring off-by-1, will this have the intended effect of
>>> Eclair still choking if there's then no inclusion guard following these
>>> early constructs?
>>
>> No, if you put something between the direct inclusion guard and the
>> inclusion guard, no violation will be generated.
> 
> Hmm, that's not good. But the question was also the other way around: Will
> there be a violation reported if the ordinary inclusion guard is missing
> altogether? I.e. will the tool continue looking for the guard it expects
> despite the SAF-<n>-safe comment?
> 
> Jan
> 

The comment-based deviations currently work as follows:
each report (of the specified service) that has its location in the same 
line or in the line following the comment is deviated.

In this case, the location is the first token of the file: the "#ifndef" 
of the direct inclusion guard.

Every change made after the direct inclusion guard will not change the
location of the violation, so the deviation still applies.

The only change that will cause a violation would be adding something
(that is not a compliant inclusion guard) before the comment.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 16:07:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 16:07:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600619.936330 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5us-00078C-Na; Tue, 12 Sep 2023 16:07:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600619.936330; Tue, 12 Sep 2023 16:07:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5us-000785-Kq; Tue, 12 Sep 2023 16:07:06 +0000
Received: by outflank-mailman (input) for mailman id 600619;
 Tue, 12 Sep 2023 16:07:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qg5ur-00077z-SP
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 16:07:05 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062d.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6876ee70-5186-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 18:07:03 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8949.eurprd04.prod.outlook.com (2603:10a6:10:2e0::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Tue, 12 Sep
 2023 16:06:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 16:06:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6876ee70-5186-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ikW33EovcYN9rniHL1msJUpgdVTbO+eHDoHfytGxoQUcG2D7NELHblDhV9t24ysZCQh+K+halALKuSZOG5TEwjs9iJlO1T9Qn2Gbw/RfjUlW4UUWV4NedsSK8mmNd5pH6lz4YLigTWkT8OyFwXFvpLrbcmjGFASlmwpAQqXCS+VRVqh2QZ7exeZew6UScX82BKc7Q6TTIToRGCWbeHHbwGimz70kx+nu99uTF66rfAih+9KoIGFQme+eveMfst1jKBptoqS9HRbnttyQWY7Tf47Z5XyDkDS9WHzZ713AzJ4tkG2LHTUe729QzgLSt8OCe+hZNZzULFMDhEm4Spxz9w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wzsXcFSWEdlXijQubwCYl9U1coWHfULL3RUYSmsvHs0=;
 b=NUTNsDctPn2nq5PkmM0Wi5GHeXnSrQRYpbQfY2I3R46ABuZHkID5EKWfOQpe60dh2mK6vpP5ZEbxyDQMLAx9yi3HLDxwXKDsksWXpDlpW5XvBfR+soABz8yNopG4TpfLpnoqQTn1AaE+A6MQ4Ubo/QcRn03imgD1dr+tpV/37D7aNYiE4NA6TApsmL1DFL7oYdIFWPzRCHaNraXqH80g8nuv2wkQt8ynVycs2DMxEx7Gq1Wap+kdahhPnHjLn+u287plTC9rgF5M/VmoPm6hoIa2geSx3L/zOy5yeAZOqwk4DbFUCJkDBSHrmHQfIsxQf2SThPGxNJflCyR3YcrdUQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=wzsXcFSWEdlXijQubwCYl9U1coWHfULL3RUYSmsvHs0=;
 b=uJlkijlhiSl/MHz262tVVODBMF+rml0rjFPtFVa3dCtBX+JESk2PI6T8EhTKQsBzdG3mZwB9M1hZA74lGDok9S4A5YVxIj9K/9jbFyWaW4od39E1LYGWkyJ4C4Of5CqoFO30Y0ZYeeHP1ERTQ2rJUoEnIConhN9pgZsC9YaSStC/UvvlBBTnCst3gbIlXG6Y+0RckzZ/4FJ+w/rfVii7yoROgzSw8QvwpzrCQk9/7FrULHJUGi8fYTOpYLu8wFHeEW3haKQzZKBwbUKxFX/ulNNXQwPtjmioQGhXhOAXeDbjEkC8ZvJ++BoXIMdk1rFFA2Zcb57LrS3h/Pec2iWCPw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b450e258-7000-a6f5-ef18-11e9a198cbe5@suse.com>
Date: Tue, 12 Sep 2023 18:06:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v6 6/7] xen/mcheck: address violations of MISRA C:2012
 Rule 7.2
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
 <3a9bd4547d64902998bceba58acd611e09779f57.1694532795.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <3a9bd4547d64902998bceba58acd611e09779f57.1694532795.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0111.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a3::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB8949:EE_
X-MS-Office365-Filtering-Correlation-Id: d5995bc1-9da4-47a2-56f3-08dbb3aa4aa9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ltalsvddvkmPUa78ez1ezNy5dEVSYWjk4Bch62QMj6k0wIvppmDvE6a8sDVHCJIQQI7haKjnkmNZ7fK+I9dDiUiwDOC7PxEHGFrNvV/9A9WEGpshOEqQLDvRYRW3+jbLPoVzqS5qYkX/5hesji1NjQnzp3j/m5fQw71VyAt0DRf4lFYGxq+a9DwcrOiIdz2a+TqaWhH3nF4EA4girYbeul87H6Zsmif5qk9XPvuMj48UDEaGBoy6SnxexjufCPZTMoPZR+v1cSQIN+oAawkTp3xcw+IkFiB+o8xj3xLs7+/Ic70RZ3LOmMe4rpQYos3pX5p0gRxuc0bfxYZbd0M85rTbkmr7qXuLrxhp+cbK2ywt+3gm2J+Zcze7FIWBm8Ze2uvFSmvlMCYyWYPCCmT1NG5nWe5QBv3mvvzKsbKoKH9zMgJlmqpLzo2CMX9R6Od8d2NwqgOkZ2PMqEka1hdm7ppUc8bVif/ri3uzm8680EKd+jo7+3DBfC7Jl7bQSfsI/Q1zE/eEwpTcTWC302x/OB2OuMN/Au5FQflFZEYW8rH7v/1fp+J9bH9moslXeDwb9l/2kHD+v3KZJT2fIrk/GvMvHIqJQTvZzLJgVfacTlT14kvRKmFzs/loNpZeYJqof8QGi2CVYgif5ih/eS36gA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(396003)(376002)(346002)(366004)(186009)(451199024)(1800799009)(6916009)(41300700001)(316002)(26005)(31686004)(66556008)(2906002)(54906003)(8676002)(66476007)(4326008)(66946007)(8936002)(5660300002)(4744005)(478600001)(6666004)(6486002)(53546011)(6506007)(6512007)(36756003)(2616005)(38100700002)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TTU0eGRvVFhSS2IveGZ5QjlYdkwwbXE0YlZCV2VKUThLbG1EUmZraWJQZ25M?=
 =?utf-8?B?Y0NzWHlZbzE5WUZQUkJXc2Z1L1UyVDFaV05sU3BERXZyVkFxUWJqd3ZGTTll?=
 =?utf-8?B?Z3pvVXNqcDZjMC81SkZuNVh0c1MyQjNsN3JhNElOdE1uS2RlYVE0bmJMbnJD?=
 =?utf-8?B?WFBydHRqYStVRDg1ZU1TRWJYQkM1QURGUlhPVVV1QUxNb2d0YUR3ODFiZGVy?=
 =?utf-8?B?eWIwVlBZYjIzUGtPN1VXaUY2TGNMdGF5SFlRd1ZiNkpGOGJmODV4N3RWVjND?=
 =?utf-8?B?MjRSWFhaZElTVC9XVWgvSmFrSGJ5dFlCSTJHcTV5N3NSblgyUmQxeHF2dnh6?=
 =?utf-8?B?L1VpbEN4SmJDWCswNHJrTnhieVpDRDFwd2tLNkhCeW14azErbDhXWlBYeEVQ?=
 =?utf-8?B?SFR0OTMxSzNYN1p2OWhGUzJ6KzRPK3E3b1hJSWNZR3FXWXVlOUxIUDkxVkcr?=
 =?utf-8?B?UDFnSXBnU3lnYlF3cFl1SjZVTFFaTk4yMkxtcG5JRVhKUG9nUFUrY0p0NEZk?=
 =?utf-8?B?ajBPQTM3QjlKK3diT24xM1FzaWVRV1dsSFJIeTVwRmRIV0F2Q2dXbktGMEp5?=
 =?utf-8?B?cWQzVjlyVC9aendYSkJFR2lWMnhYSm1kMU56VzFsY0RIbVpoRTB6c3Jab2pt?=
 =?utf-8?B?REM1TmVkOTdtdXJ0UTFrWXNpK0dpMTJ4WWhFK2Z6eFlIK2JoTWdZaEFsN0h1?=
 =?utf-8?B?M0tLV1VmUXo0QndCczlLRDBmbnhzZ3U2U1VqUE0wcGhmZkZNVHg5WlVNUmRp?=
 =?utf-8?B?US9kWGpYdlpvNWg2VEl6MDdML2hGUzNVamhUa1BlK1R1OVphQWRCK2NIREpi?=
 =?utf-8?B?VTdWbmErbHM0dTYvb0N5NWR1SGZXMEsyYlFPaWliaTJRWnRvWlFpS2YyQXFP?=
 =?utf-8?B?QnlyQzhPVE03Y1R4djZrTzA2aUV3Y0VVMG5kRXk1VzNabktzbmd5dUVVT0RW?=
 =?utf-8?B?eDhFaUJpb0lvSUFLeC9maVI4WUdoVHl0M20rUGtjdHJ1bFVJeVZ6MHlzeExX?=
 =?utf-8?B?QjYvNXo5ZTYwdDNWeEluekdQU0RXZG9zVWhwTWdHS2d2WGxsRVRVK214OXlx?=
 =?utf-8?B?bS9aK3Y3S0dBaTRlNEN2WUh4b1h1cXhxWUsxdy9pcVpyZkI1SWc1Nk5RUlVx?=
 =?utf-8?B?ak9WOHNlT0hlUEg3em9OWjBJbWozZ0xQSWJyL0p0QktLUXdpT1N5NEJQSUlj?=
 =?utf-8?B?dy80UndBMGFEdlVJRlk0L1BhWGk4NUlKaXpLQUNwWnBsZS9Pbk11cFdEdG5W?=
 =?utf-8?B?ZytHUjB5T1luN0swTnlmMjA2dmNOWVlabFRIRVlXQzdWRnJ3TjgzZVUzbWE1?=
 =?utf-8?B?Zk1XMGM3OHJZRjZ0UWNNK1FPOGN2RmNvZlRRMjNVTFdDN1IxMzd2RkwxTzB1?=
 =?utf-8?B?RlFjQWxxNlo4WVIvZmwzVEV6T2VLR1F3M1UwNzRkNk9PZGZmOWZDRW1OVUda?=
 =?utf-8?B?WGRKeG10V2FHU0N5VHErV24ydWplMGlnWWwwb2lhRkFVZXUrcW5hWXd4RHI5?=
 =?utf-8?B?d3NGVS8ycUI3cGlvMG1MbXBkcGJhMDVqWFVER2h4WDg3N3NmeWJPY1h1ckgr?=
 =?utf-8?B?REpBb3ZjaWlNTmVkVmlUZ1B2YzhTK3VFQWpVVGdKaDFrR00rMFhOQVRuQ3cv?=
 =?utf-8?B?SDRyOVhaOExpL05sNDk1UGVZWW5UODZTMVF1N2JyN3p5WkR5YkRQMFF4V2NX?=
 =?utf-8?B?dlMwTllaQy94UWZiMkhmamlwckFzVTQ5QmtEWTUxT2ZxWlVGL2VlNmZOUktT?=
 =?utf-8?B?TlRsZjNtYUNKZjZ3ZWo2cUR2TTV4NXlDUWtPQzFkYi9GWjhLYTBJMTFTdmI2?=
 =?utf-8?B?SGoxRnVLTHBWMFVNSHFWWXlhQXk5YzdhTHM2YmxuUUR6WGlhcE55NTg3Y1RE?=
 =?utf-8?B?QnFRazBzdzMzbzd1UUVoQ3RCTzhqSm5LSmU1V2s2SVZvdGswU2NKRW0yNFhH?=
 =?utf-8?B?SVc0MDQrMStHL1ZWcmhrWmpNNUZ1cnVLcWcrSSszQldhQXhSWUFjcm5aajNR?=
 =?utf-8?B?c1JkSk9zRCtZNVRTbGFES0FHbjluWWNQZlRmVW5FRG1VeEVRaEJ5QThkRUtK?=
 =?utf-8?B?eTREWnFwTWt0cDk4dGdESnpLRFBIUUp2V1VTZEx6UVRqVnhGK2xETUhWMTdZ?=
 =?utf-8?Q?MolijRy4xsU2c+8ntOjuTmk4O?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d5995bc1-9da4-47a2-56f3-08dbb3aa4aa9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 16:06:58.2609
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: jllssQsVXdDGYo3qZZYggFTALEJqGa8GBrUVpkM6QDE2fYU4vxKNqjy71LKo6geNpdMTVr1O6uob/j/MfIpgRA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8949

On 12.09.2023 17:39, Simone Ballarin wrote:
> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
> headline states:
> "A 'u' or 'U' suffix shall be applied to all integer constants
> that are represented in an unsigned type".
> 
> Add the 'U' suffix to integers literals with unsigned type.
> 
> For the sake of uniformity, the following change is made:
> - add the 'U' suffix to all first macro's arguments
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>

Acked-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Tue Sep 12 16:07:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 16:07:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600624.936340 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5vR-0007Xq-3t; Tue, 12 Sep 2023 16:07:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600624.936340; Tue, 12 Sep 2023 16:07:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5vR-0007Xh-17; Tue, 12 Sep 2023 16:07:41 +0000
Received: by outflank-mailman (input) for mailman id 600624;
 Tue, 12 Sep 2023 16:07:39 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qg5vP-0007Pr-Fq
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 16:07:39 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20607.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::607])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7e9dff0d-5186-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 18:07:39 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8949.eurprd04.prod.outlook.com (2603:10a6:10:2e0::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Tue, 12 Sep
 2023 16:07:37 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 16:07:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7e9dff0d-5186-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=n019QKSE+TLI1ILiH7EJu1dcxBwPnRb3RRVy44fGoEmo44/EADua1pVhcIc0ydkN4IAy1G4uXvkrBhmXR7HNTokFifMfJO+6xX/3af5itqp59KP54poswkCQnsumfdhwrBmqtPRJbUisAs7IUwuz9/krjjVA8IEsVBaGMtesKstXfPZTF1+6DTWQ0m6HRVyR16pKvpKlLhFV/SbpgBvbL3632CbOQuwExvcXvFgdZA1AisGkqL3joN0N9eoZxR7i6uq8Dtwo9bXokd81UcgJJeMtOEfbAACr1U4kfrNnebjxP+1BoAJ+Vl8/Z+IWLbFtdDyAh8Ve35Ar68PcnD2vBA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=NCU06Ja0kH7t2lhMxq/LOq79Old3jT8gHSkpaX/i3aU=;
 b=aQmV1qzbehxpWxZfXxpxU6TuSa21f1QmZunERP4PJDoZx+Y8zzdZu9KWDl8AyE3m3BGcl5w9m8GIG2cMQGPnz5xTAFOPXRfvXxhrGdJyHJwcSNnZtJv9UZ068UW69cQm/6jzTnWDnHQXnnHuA55dTFLUpAQ9xxNQuXDzykxEaEZxgDJLpgWDHKe0IzgVsqvOcyddrce74B5efbKw4rDIe2T4j9YW4RX3KbDt7ud/jiNtEyhWdCs3IAiT9tSG2KWZwrIaR8mQuvgAdJM1axKbI5gZVrAqQ4xk6ZJL6wFRoHphI8jbqvIX8Dqmu7+Y03c0Dw0nJsCrEPQ4uLImtGvMQg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=NCU06Ja0kH7t2lhMxq/LOq79Old3jT8gHSkpaX/i3aU=;
 b=pFZLWlqv2Ew+qR0XWglBjE+t6mSF8nDk+D5PhWUprPPYdVJAh6J47N8I/Y7inyHXAOknjzXLSiJbgAk0WfniyE0pVrGe5bYwPi5KpBrYcyL/lrC4HWkyju7pNSBWtctQb7LLt1vF1oSG6svaa09DQpYVvlSaDAOJXaltY41iVeoh6kv5D9fT8VwFMmBcyJzzYzYsfODv3CQuhVyYB9G6OBTOxu85ph3BF7EGptVpQRevPWynL7pfllnI4qeCukAmeh/Kmpl5wEfHbFQg0W7SBmUirv9vQtUJDLfM3s25TpH/kGHc4+nv3XP8YTujW5AymUpq+yJx7qhR6GVh+OKttQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ac42edef-844c-3593-0b10-db0c030ebd56@suse.com>
Date: Tue, 12 Sep 2023 18:07:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v6 4/7] xen/lib: address violations of MISRA C:2012
 Rule 7.2
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
 <f92e8ae0d980779bd7dd4b21b70ad779f2e2488b.1694532795.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f92e8ae0d980779bd7dd4b21b70ad779f2e2488b.1694532795.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0106.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a3::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB8949:EE_
X-MS-Office365-Filtering-Correlation-Id: 4ef39598-0f16-4622-a870-08dbb3aa61dd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	fqLEfFwSM47DuqHiqYqLWxGv3xE6CY/VmAf2A/EGHn/orU/ozCz9KOn46+gLGdGCyulliTh9PQZZvZKcep7bJSTyG1i3mQoAg82NYu+ezEqKAGVI28IMlUqZqXcQ7s+2S6W661Z9/X12OnbhPeTxBHWZ0hAUlw03WbWqrr14XBxyqGC2miGpd7BaBz4X3mrlXn/Hq2RGlG4yJ91GZD1ysIbVcDU/z9gReMW2hmuMEeCTlNa/Bn1UgQG0+iZRNLsG9wBfFhw7r8DK+3EpnpT/1S5VPalofZkKUqYRVADZa6mxBOWge4r7opRA+RNndJuc04H7/7dFTRgyNW+jwYSg4Tld3KItju5oyQ5vwTevhUIfjOFNNc3/lSwfm+nm/Ws5pZ77mD3z6vXnDzSaxCKXJ24tPYl5KoZgYadunm/IrChf7UIp8iLS9yeIErGEjH0dwlB3zpvdZjaFN9ucVt3eJaePRUahpdkVf4Qtn6ZRv1HqC9SZovzaYjPfAXBBPwRM+tWaT55tgBZnasiwrGtT/GaVuulwnq9Pki366FEqIhGQenuWGIfRgtCg4CapJICbixluPJNAUQY98ZI9Iy3Gh+PWWsqhDkMkLZ512NXC0Io+GYwQzpNr+S8faXh047BCEF0fomBoLO1tZek/i9Xckw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(396003)(376002)(346002)(366004)(186009)(451199024)(1800799009)(6916009)(41300700001)(316002)(26005)(31686004)(66556008)(2906002)(54906003)(8676002)(66476007)(4326008)(66946007)(8936002)(5660300002)(4744005)(478600001)(6486002)(53546011)(6506007)(6512007)(36756003)(2616005)(38100700002)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VitCblhqamFqUFo4OE5LMktyOTRzaHNCcnZLMS9qRzgvd2VHMHFVdzRMS0Vz?=
 =?utf-8?B?M1NRbXNxRWZiS3pkRGt0MUhxVmJoY0JRNG1TZFNNNFFLVU9PcDJCbFlBMDVu?=
 =?utf-8?B?OVR4eWRQVkcrWmtHMmp3WEdGaDlrOFU5MlRhRFM4UTJUaEs0dEo3TlUva1pQ?=
 =?utf-8?B?K3RURTBGc0h4ZlNaWC9WemxzeDhNYmtDbDkxL2FFM3RTandVakE5aUliN0VV?=
 =?utf-8?B?TW96ZkFjWkJYa2R3bGlqWU5PT2xuUmowZU03dGVaaVRlVFB6c1JLRW9DZW9E?=
 =?utf-8?B?OXdaQkhsSFJXVTYwdHpyWmpaOGJyWVdUTGJIN3hmOW9hMzNHN2pqQ2VvUVFF?=
 =?utf-8?B?S3YvbEJDUjlJeG4zSElwNytaSWd5WmNpWDd6dWs3c0wrSTZaMTBxamJFQmd4?=
 =?utf-8?B?RTQ2MDZTNTNzaVpVcnVISjRaUlYxakI2MGNnT3J0VndqQ1pPcm1uOVFubHVW?=
 =?utf-8?B?TEdQbzVBYWFreit4aW84SmZVNTRKancyZ1owM3JhdVJIUTBuNmNGZEVCOFVh?=
 =?utf-8?B?QXJzR3VTNnhWTjRQMDUxK0Jza0JuMTE5Smp5Zk5CRVg5TlRRTDNGNUtnb3JC?=
 =?utf-8?B?aDlzSTlBbGlMRmN3V3JoYU1oYmY0NFphVkw4bDFOTFRPM3RKbVhVaVk2UnBn?=
 =?utf-8?B?MlE4eTNlK1luRmpKNmdzL2RNUXZuKzRxVmNtVG1uUTUyTWkrNldqbkZ3NTFx?=
 =?utf-8?B?a1dmelQzTUY0Y1N3MnM0SWFOWWxRZDRiTnN1R3VhbFNaNUlpZmNoZTRyRVMv?=
 =?utf-8?B?bzhFUy8vWitCcWVtVlovbm4rTTVnT29zUnV1eWVDNzZJUFFpbTA3WGtQWEtH?=
 =?utf-8?B?NVdHMlFZN3BtVGZNSzhmV0RUQUxQdHIySUdkclNTUXZ3VGh1QThpZzl2VzVS?=
 =?utf-8?B?b1dXTDlBREw1Qm5xbjVPRWhDNlNteGdNKzdvQ2Flc3pYeDlhZEF3c1NGS0p2?=
 =?utf-8?B?dVNMQ3pSV1c5T2NEMTVtZk9iK0JrZmw4Zm9GYkZGaE1sK1Y1dVFoV29uRjNE?=
 =?utf-8?B?NWppWUZwaUxMRjRka0krZGdZZ28wdFYvSDNNR2RGcWNUak45ZkdGTHdqemFX?=
 =?utf-8?B?OU9Cc2xEZUtBSkgyV2dCZkN0L01qNXFXT1ZHZzNPWWpkUW4wZTczY1YrN3JS?=
 =?utf-8?B?RXNPSnhkUDdIb3RPQXIrYkRZRVd2T2NxaVU5WmFNalVSbTM0cE54T1N5RmhF?=
 =?utf-8?B?b1JaVStzQ3lTMXk2V1hNdk4yYjd2amcycC9xcjNnRlkrV1BocGRoT0Nmd0h5?=
 =?utf-8?B?ZldvdGVmcGkzckFGa3JhY08rQW1CTGRpVVp6eFYvN2tCK1hSQUpCdENTZ29S?=
 =?utf-8?B?N09VK0JHQnZZbnoxTWRCb3p4TmNUeDNPRHQ4NXR4LzYzLzVDM0pLQS9JeDFY?=
 =?utf-8?B?SXR0WFhvZUJtWmJkL0wyUlN6cUVuSmttWFRZRW5BZzNIRnB3TWM3TlVFczNz?=
 =?utf-8?B?MXN6TUpZVVdWcUxCT21Lb3Rua2p4N1lnaVV0K01wL0Z6NjZKOVBZQmJFcmtT?=
 =?utf-8?B?NzIxZmFCVVdMRG05UUhkQ3V0T2lVTEh6T2ZVQzFNbG0zVEtXUktjUGNhUlJy?=
 =?utf-8?B?VjIwR1NoZjM0bFlVZHR3UHJ4eWtFUTMzUXpnNFN0Sk9zcy9pd045M3AzdzdC?=
 =?utf-8?B?c0lycnkxc2d2QjV3enFvc09La1EwQWtZakFLMlMxWk9WVHJaaVB6QnYxZENV?=
 =?utf-8?B?RmlpTGt6N0ZCd0wzZkJYYWRMdXRURzhDYnBsK3R6RmlXQUJoWkl6NyszWURm?=
 =?utf-8?B?RHJIU0QzMGZRS0VaR0dONmFWNTc5dWs3UUV3T1ZRb3hXRGRMM2lDcUNNQS9H?=
 =?utf-8?B?RUo3NE5ORUp0SzgzWnR4QlJCbUp4L3Bha2JYZ2xLSGY1ajBML2ZGajkwWk1Z?=
 =?utf-8?B?L1Zzbm91RG5VdFhWUStJVHFQazJGZkxQVWp2eVF1R3kya21mMGNUaG9XSWZ3?=
 =?utf-8?B?b1JzZUN4MFNXTE9oRTdJYXdUQzc4V0YrMWFTUC9VOWhYaUpjc0l6cVhEVS9N?=
 =?utf-8?B?b2x5Tkh5ODc1OGpYRWRCdjlZdE5KU3l5QWY0ZXI3ODRLbzVzYlZpOXFxNktw?=
 =?utf-8?B?Q0NGajAxWXpSaWcxRzZxb0VVV0VkRVAwRzBvOVBvVnYyeDZtVWdlZlVDWUhq?=
 =?utf-8?Q?VawlLaY3UgeCFX0UafYNk7Q9G?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4ef39598-0f16-4622-a870-08dbb3aa61dd
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 16:07:37.1813
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: u0UTSjsr128m54v713vjXxhorBzJeJRdiGiCDppur501enq6/JjvLxk2Hd74X9e5tsBpLZAbX7eU+vtCEpvfpw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8949

On 12.09.2023 17:39, Simone Ballarin wrote:
> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
> headline states:
> "A 'u' or 'U' suffix shall be applied to all integer constants
> that are represented in an unsigned type".
> 
> Add the 'U' suffix to integers literals with unsigned type.
> 
> For the sake of uniformity, the following change is made:
> - add the 'U' suffix to switch cases in 'cpuid.c'
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>

Acked-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Tue Sep 12 16:09:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 16:09:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600630.936350 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5wh-0008G3-Ew; Tue, 12 Sep 2023 16:08:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600630.936350; Tue, 12 Sep 2023 16:08:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg5wh-0008Fw-C9; Tue, 12 Sep 2023 16:08:59 +0000
Received: by outflank-mailman (input) for mailman id 600630;
 Tue, 12 Sep 2023 16:08:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Z1UZ=E4=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qg5wf-0008Fj-TY
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 16:08:57 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2045.outbound.protection.outlook.com [40.107.7.45])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ace98cff-5186-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 18:08:56 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8396.eurprd04.prod.outlook.com (2603:10a6:10:24a::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Tue, 12 Sep
 2023 16:08:26 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 16:08:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ace98cff-5186-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZDx2VZJNNdAoOjaELPRc5mO14RqTq5pJeBH0cZGliC01Hxi9peShhKy77WjLKe1msPl2wElPlAod/PqcLOfxqL7m0sGWSuTQBVb87HKKJmib/BY/liDSJMHLXMrMm+88ZxB5csEhyt6998M/EvWSJWBH0SEHXu2/6OdNNAPqUGDxL5/AFhIEAniRMxlEp/rfj9ecPH+A9ubfdhRp1yFvqz8Wh4To6PzgPUJofuk/uB+cvOFpsWiH3PcXsT+wMpMEDBYWRqneGgBUrpVoat50XkjhAPMS0+tPIYQZuy8DQ2qT1XyDlXtjpFNETjp41XOuXyQ7o3Q1PeV+C2XqEGwIaw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3BtOKa/wYHyWODKAu1fzKVLhgekzmC21fWU2hag2CYE=;
 b=nPd3AgFT5sN2zIRVUVhandO9tfomRKpwqRPPUMcG69sfZvu8VIBEzbsEvvOYVhmrkG/JK+XEixUtwLT0qvguTvkILMzuq+CgC3Nhm0CE2lWTW3XzbPgcUSB09s95oyDN0r0FJsDve0Y7px2JnlpFqmvkLKdYKA55aiOKAk2Wb1tFUx/47gmpapOMdnINca+LscXa0bhKpYQnNdiI4lQgS6yX4bOqgrqS/snRMuMwslMJ5xg6jhaZdhkoW1MmmnD52M2jTHw5rKWjC7HtNZzxjy10/LrQ+BCS5liyMahu5ApD1A4bQEgFq+BlOwLMPQr0PvQHdM4jrB2eOO8+vkJcmA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3BtOKa/wYHyWODKAu1fzKVLhgekzmC21fWU2hag2CYE=;
 b=20geHaVo2xfzPjxvQ1UnA6JMRYs+n1kUQ3kyNklJhCkXYrO1Zi1F3XOt+IOW+4rsaFEPSR8zubUZJYqe+wwa0T81ws6YYeqUM/UUpJ9nJykc9VBoO941zNqDXGCbKFgD6OWgjG0YQAevDS+bIso7xkH7T3QYq7OX5+KCXygyfnDEzuPfcMy82c/VGJnvMHSQfiCVNVCsQic/dmDKucs3RR7FWE/PLN7G3FYn9KJYdBWSSDDhxnmB2xtLB75QWSk36bWhTKFvLJ+M/IGpsfiJHIErKQkJ1N6hIimws0DsJP/hY3/nm/mgcp24bgPXnUft3Rb9JK516mDgVr/fOIRqsQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1455139c-f1b3-453e-5f04-7e8adef1c0a1@suse.com>
Date: Tue, 12 Sep 2023 18:08:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v6 7/7] x86/efi: address violations of MISRA C:2012
 Rule 7.2
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
 <176532a92dd159f9b6d189139e738e1cc8aebcbc.1694532795.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <176532a92dd159f9b6d189139e738e1cc8aebcbc.1694532795.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0104.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a1::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB8396:EE_
X-MS-Office365-Filtering-Correlation-Id: a369331b-56c4-4066-2f40-08dbb3aa7f24
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jEMXaMnz8AWEY2rm6CrASxd4qP2OE/StVbZheceJ/Ezq3hkBxrGV+kFFD+GtF02cSuuf/niT8OZVf6hvPDAX+AWuOW9MDtfrU3VClFhdacVntn2AvASatb7ignXDIYDVPiqOB28AAjsx/SUmT1sGey6JuKXAz8FEAxaghkJGszUoL3KhfF84TvrkLqZ1jsaR//ms0WIMsCKENWnNopEup/IyTimJf8GNSo5Epa7J+68XJslAwVDe77hN+Rht837XPuphZD+c+Lp2xXtdqkQB6Vz+ZD4Bat/c4PNvyEABHs/AfXB2gH+yU3d6g6NSc2yIkNkCmsnODL/NDWgTlWJflDqjAHVQHd7OvtMQBWf7wirMYJwVV3yg6jmHfmDZDVqJhVWxZHftw4Xw8EcxUSxk53xpqQfN1OGSZ7bU3m819/3GaI+ZLiNWnh7YrhBoz5vELCQ4Ijo60iaYzFwvmsqDr6xvt9lGY3Z9mjZRz0100mxIzviXDIeAIm8UiepRTXnNxy5UDdf+ajr4OcS8oUcXkVV2ooYgZlQZGP5QuGFmDqE/A8KB6wTJOJOiGbHOqDFIRYB9IfbmAWIedzyKZ7Y6Bmf5gjsBazojRxg8QscxGYHo/Eb+qnKRrZKD50EbHEaAOBoDnumBCzd80w2CW8Upow==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39860400002)(136003)(376002)(396003)(346002)(451199024)(186009)(1800799009)(6512007)(6486002)(26005)(6506007)(53546011)(2616005)(66556008)(41300700001)(66946007)(54906003)(316002)(6916009)(5660300002)(4326008)(38100700002)(478600001)(8936002)(8676002)(66476007)(31686004)(36756003)(86362001)(4744005)(31696002)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T0d3OTkrSkF0dWZDdUtJd0Z2RFlBb3R3VmRmT2V3WndscWFTVGp0cUU5cVBB?=
 =?utf-8?B?VTl5MzJwMVlXYllhRjRRRkxwRkNXL3B5MnpNcnhWRWNOL3FBdmZ5SnkwZEh0?=
 =?utf-8?B?UXArYTFHcnlJQ0UwTVVuVGRKOS9GRUpSZFAyekRqaityK1A2c3lMcDZOYzBy?=
 =?utf-8?B?REJtOGtWWE12eFgwTXpZZmw0eUtwQ2hOaVVtK0ZtemFRQmxUUVViWE0zQ3VY?=
 =?utf-8?B?VmtqMWhjbUkwQTRTMGpVVWdiR3YydjZmb1J4Yi9PMTRuSFNJSUdZSElCQzF3?=
 =?utf-8?B?TllIUE5CNVhkMzZuaXFjTmFrVERGbWE1RHNBTFZDNGJGSzdoZ3dYeDBxZlhU?=
 =?utf-8?B?Y3RtTS9JT1hodC9jc0pUNTZNcUY1eE55a2ZwazB0clZyYVpPOUlrOTdlSnNj?=
 =?utf-8?B?aFVMRTRxNlFUYXNualRuWit5VDF5RmxsL2t5OUlmSElJZkFUYzNOazZqQ0ZW?=
 =?utf-8?B?aFZmK0J1OHgvdkpPZERhUnZpaW9neWFnSlZSNWRFcDk5aXdRWmI4ZDBmOWUv?=
 =?utf-8?B?TUpwWkcxRVUwamQ0Vi9qVm42RTNUSWlWbW1wc2x1TXBkVy8wTm5kTXNnWkFh?=
 =?utf-8?B?cFhOWENaK2ZDd2R2UE0yREZXNXVkQWdqTnBOaXIwbGIyZ01GNVhTUnQ5alFi?=
 =?utf-8?B?dVJud3l5a0lMRjYySDVPYW1qUWhzY0VoWGIwVHBGaGw5dlZGZFR3ZXdkTDQ5?=
 =?utf-8?B?aDE4a0dqKys1VHJtZk1TRFRBa2QwNm95YjFCU0tHNGcyNzIyK0JtaWdWMWxD?=
 =?utf-8?B?a3RuaVNUSmQySkJXYnFLTWdrWmZ2UFF1V2Q0WmNFcEVEOEUya2kxQlVVWCtN?=
 =?utf-8?B?QmszYjltd1RTOENNNWJEZnIvS3Q4YTByTDZxRE13c1p4aitlKytpWThsUmd6?=
 =?utf-8?B?MXoxUytTZGp0dEMyUUloRk1TczZmK2szTis0M3BLNGdtWlRrZmFoOWlNaFNW?=
 =?utf-8?B?ODNMUlgwcVZnL3djWDBycWswUlE0Snl4SFhEckl3UEZneW5pbzFQQjdWY2ZL?=
 =?utf-8?B?WFlnOXFrZVhzT0h3bnhueVJzamxkZTVPQmp0aExsL25vUUc3OGpSekQ0ajQv?=
 =?utf-8?B?UHJ6TWRiQjE4QkpyK21ZQVhIcU5YR21tc0ZYYmo5KzVXWk1tSXhGc293QUV0?=
 =?utf-8?B?cFR3RCs5bjdEUmRQMm8zdlE0ODh5MWlCNnExd1NoM3NBUnFYUHlvV0xWWG9M?=
 =?utf-8?B?WlpXVDU3djdsdjcxNWNuMnZURTdsaW9zNFkwZ05DTmp6WXJIRHZBdCswSDlD?=
 =?utf-8?B?Mlh3OHRMVG4wU3NMM3JGUkVXdjNUbitrQ0wwdHVpdVBIY1ZCejNUd2FUdXUy?=
 =?utf-8?B?RGgyeW9Ya1NrUGk5SUwzc1JYcEJ3SjhUbEpzdnV6UVNWNnNnajRRWnlUQkdH?=
 =?utf-8?B?MXgrWjMvSDUxSE1FbTd5OGxtNURHQUlPUDJKNHhJbngvUU1scmZtdGp6L21N?=
 =?utf-8?B?R2ZkdkVNK0lmdGhETkVtbW9QVGgyRWE4RU0vTlA5MkQ3ZUFSWmUreEJQNEYz?=
 =?utf-8?B?V2VpY1lyUWNBcUpJME1vS3o3YWdvaGt4UlBvd0p2cU45djZkdXhGNGhwZlRy?=
 =?utf-8?B?VnB4N3NubHRnbVRkaC9QdlQ1aENqRkpVdlk2eGtmbmdNcXczdUpsNkhyZXdn?=
 =?utf-8?B?UE01SW1GajRzY2p4M2M0clJqOC9zc3Zaa0d1eXJBN0pEZE9pYzhDR1owZE45?=
 =?utf-8?B?c1VkY3VQVitxYzM1YmtnQmxsZFRQc2xZNE9UOVhLMXc0VjNVN1FNdWx2WU9R?=
 =?utf-8?B?ekNyTC9WUGIvcjNjTjNMS2VOMlI5aHJiNTdhZGFsZ2ovUFVMSHpUTGREemx0?=
 =?utf-8?B?d2QyYUg1ZVdVMmNwOUQxcCsxamtFdEswQStZOGkxQ21PeWhUUGw2SXBHYkRy?=
 =?utf-8?B?bUNtOW0rcjQ3OTZ0cW5pRWJ6dU5Zbk14TEI3SlJEV0MxQmIzTXFjbGhydVdQ?=
 =?utf-8?B?U3N2di9UMnJhWWxJM3JxSU8xeDFwSXcxWjBKMUlhcUora282cTdhL3VseUx6?=
 =?utf-8?B?Y01Ba0VTS3JWdHJSNy8xc3Qzc3JqZ3R5WG15NzRwV1lyVTdPUDFsS2tFY0JC?=
 =?utf-8?B?TFptMXdtSTdMU2ZtVy80TmR5QWFyQVJwT1kyVCtNSmlaL0pTd21QTG94cEQ0?=
 =?utf-8?Q?PyRnodswDrIYIJoXvf9Zw5/Qm?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a369331b-56c4-4066-2f40-08dbb3aa7f24
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 16:08:26.3065
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: enHbef4JpsOWkAxFEIV10fAJ9s9hhUk3d7499VwlNZKkpPyQPqsssWULEp7tlQwiMiGz8ul3X0YTxhV+DmXExA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8396

On 12.09.2023 17:39, Simone Ballarin wrote:
> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
> headline states:
> "A 'u' or 'U' suffix shall be applied to all integer constants
> that are represented in an unsigned type".
> 
> Addi the 'U' suffix to integers literals with unsigned type.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>

Acked-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Tue Sep 12 16:18:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 16:18:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600643.936360 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg663-0001vy-Cm; Tue, 12 Sep 2023 16:18:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600643.936360; Tue, 12 Sep 2023 16:18:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg663-0001vr-A6; Tue, 12 Sep 2023 16:18:39 +0000
Received: by outflank-mailman (input) for mailman id 600643;
 Tue, 12 Sep 2023 16:18:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg661-0001vk-6Q
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 16:18:37 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 05b11f97-5188-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 18:18:34 +0200 (CEST)
Received: from [192.168.1.9] (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 38D6D4EE0749;
 Tue, 12 Sep 2023 18:18:34 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 05b11f97-5188-11ee-9b0d-b553b5be7939
Message-ID: <2b2495cf-cd83-c870-d9a9-62917477de0f@bugseng.com>
Date: Tue, 12 Sep 2023 18:18:33 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH 08/13] xen/hvm: address violations of MISRA C:2012
 Rule 7.3
Content-Language: en-US
To: xen-devel@lists.xenproject.org, Paul Durrant <paul@xen.org>
Cc: consulting@bugseng.com, Gianluca Luparini
 <gianluca.luparini@bugseng.com>, Jan Beulich <jbeulich@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1691053438.git.simone.ballarin@bugseng.com>
 <d1be6a0bad7e5cd6277a7b258a1fa70e58a68140.1691053438.git.simone.ballarin@bugseng.com>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <d1be6a0bad7e5cd6277a7b258a1fa70e58a68140.1691053438.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 03/08/23 12:22, Simone Ballarin wrote:
> From: Gianluca Luparini <gianluca.luparini@bugseng.com>
> 
> The xen sources contain violations of MISRA C:2012 Rule 7.3 whose headline
> states:
> "The lowercase character 'l' shall not be used in a literal suffix".
> 
> Use the "L" suffix instead of the "l" suffix, to avoid potential ambiguity.
> If the "u" suffix is used near "L", use the "U" suffix instead, for consistency.
> 
> The changes in this patch are mechanical.
> 
> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> ---
>   xen/arch/x86/hvm/emulate.c | 2 +-
>   xen/arch/x86/hvm/io.c      | 2 +-
>   2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/xen/arch/x86/hvm/emulate.c b/xen/arch/x86/hvm/emulate.c
> index 75ee98a73b..053c6b495d 100644
> --- a/xen/arch/x86/hvm/emulate.c
> +++ b/xen/arch/x86/hvm/emulate.c
> @@ -74,7 +74,7 @@ static int cf_check null_read(
>       const struct hvm_io_handler *io_handler, uint64_t addr, uint32_t size,
>       uint64_t *data)
>   {
> -    *data = ~0ul;
> +    *data = ~0UL;
>       return X86EMUL_OKAY;
>   }
>   
> diff --git a/xen/arch/x86/hvm/io.c b/xen/arch/x86/hvm/io.c
> index 53de1a967d..d75af83ad0 100644
> --- a/xen/arch/x86/hvm/io.c
> +++ b/xen/arch/x86/hvm/io.c
> @@ -400,7 +400,7 @@ static int cf_check vpci_mmcfg_read(
>       unsigned int reg;
>       pci_sbdf_t sbdf;
>   
> -    *data = ~0ul;
> +    *data = ~0UL;
>   
>       read_lock(&d->arch.hvm.mmcfg_lock);
>       mmcfg = vpci_mmcfg_find(d, addr);

This patch still applies cleanly on staging, any change of getting an Ack?

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 16:19:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 16:19:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600650.936370 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg672-0002Tb-MU; Tue, 12 Sep 2023 16:19:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600650.936370; Tue, 12 Sep 2023 16:19:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg672-0002TU-Iq; Tue, 12 Sep 2023 16:19:40 +0000
Received: by outflank-mailman (input) for mailman id 600650;
 Tue, 12 Sep 2023 16:19:39 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V3Pz=E4=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qg671-0002SQ-7u
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 16:19:39 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2ba09445-5188-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 18:19:38 +0200 (CEST)
Received: from [192.168.1.9] (net-93-66-137-131.cust.vodafonedsl.it
 [93.66.137.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 171D44EE0749;
 Tue, 12 Sep 2023 18:19:38 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2ba09445-5188-11ee-8786-cb3800f73035
Message-ID: <a99fce88-8f4c-1883-1b4e-73145b989ca8@bugseng.com>
Date: Tue, 12 Sep 2023 18:19:37 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH 05/13] xen/ioreq: address violations of MISRA C:2012
 Rule 7.3
Content-Language: en-US
To: xen-devel@lists.xenproject.org, Paul Durrant <paul@xen.org>
Cc: consulting@bugseng.com, Gianluca Luparini <gianluca.luparini@bugseng.com>
References: <cover.1691053438.git.simone.ballarin@bugseng.com>
 <771362e703548e55d4ccc420fa880585a5748c4f.1691053438.git.simone.ballarin@bugseng.com>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <771362e703548e55d4ccc420fa880585a5748c4f.1691053438.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 03/08/23 12:22, Simone Ballarin wrote:
> From: Gianluca Luparini <gianluca.luparini@bugseng.com>
> 
> The xen sources contain violations of MISRA C:2012 Rule 7.3 whose headline
> states:
> "The lowercase character 'l' shall not be used in a literal suffix".
> 
> Use the "L" suffix instead of the "l" suffix, to avoid potential ambiguity.
> If the "u" suffix is used near "L", use the "U" suffix instead, for consistency.
> 
> The changes in this patch are mechanical.
> 
> Signed-off-by: Gianluca	Luparini <gianluca.luparini@bugseng.com>
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> ---
>   xen/common/ioreq.c      | 2 +-
>   xen/include/xen/ioreq.h | 2 +-
>   2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/xen/common/ioreq.c b/xen/common/ioreq.c
> index 7cb717f7a2..62b907f4c4 100644
> --- a/xen/common/ioreq.c
> +++ b/xen/common/ioreq.c
> @@ -1182,7 +1182,7 @@ static int ioreq_send_buffered(struct ioreq_server *s, ioreq_t *p)
>        *  - the count field is usually used with data_is_ptr and since we don't
>        *    support data_is_ptr we do not waste space for the count field either
>        */
> -    if ( (p->addr > 0xffffful) || p->data_is_ptr || (p->count != 1) )
> +    if ( (p->addr > 0xfffffUL) || p->data_is_ptr || (p->count != 1) )
>           return 0;
>   
>       switch ( p->size )
> diff --git a/xen/include/xen/ioreq.h b/xen/include/xen/ioreq.h
> index a26614d331..cd399adf17 100644
> --- a/xen/include/xen/ioreq.h
> +++ b/xen/include/xen/ioreq.h
> @@ -60,7 +60,7 @@ struct ioreq_server {
>   static inline paddr_t ioreq_mmio_first_byte(const ioreq_t *p)
>   {
>       return unlikely(p->df) ?
> -           p->addr - (p->count - 1ul) * p->size :
> +           p->addr - (p->count - 1UL) * p->size :
>              p->addr;
>   }
>   

This patch still applies cleanly on staging, any change of getting an Ack?

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 16:23:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 16:23:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600659.936380 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg6Ae-0003x9-4f; Tue, 12 Sep 2023 16:23:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600659.936380; Tue, 12 Sep 2023 16:23:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg6Ae-0003x2-20; Tue, 12 Sep 2023 16:23:24 +0000
Received: by outflank-mailman (input) for mailman id 600659;
 Tue, 12 Sep 2023 16:23:22 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LIu2=E4=citrix.com=prvs=6128f91ed=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qg6Ac-0003ww-8y
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 16:23:22 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ae3f6b3e-5188-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 18:23:19 +0200 (CEST)
Received: from mail-dm6nam10lp2100.outbound.protection.outlook.com (HELO
 NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.100])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 12 Sep 2023 12:23:14 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CH2PR03MB5334.namprd03.prod.outlook.com (2603:10b6:610:92::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Tue, 12 Sep
 2023 16:23:13 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783%6]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 16:23:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ae3f6b3e-5188-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694535799;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=YCa3ncEOXYI+eakEP6UK5hkV84JSrjle5EGZWEQ2xo4=;
  b=bvDgtQcq6QkBRmpbV0kC8g5QNE16ohxTXiTsCiA2lo+SctL1daYmJeyb
   kpFG+R/1gJL7hO1ST1VCMu1nv57v4FyKC3J0KofTBzRVFS1y1SwS3FfwT
   LutATVnmRMjEVezMQWB4/qd8aA94rRzZ2XqxcYIu4gq0Pd1wJFrMlmPgk
   s=;
X-CSE-ConnectionGUID: VZlXSnWyTe+rP16Yh2qicg==
X-CSE-MsgGUID: yp6eicw7SCen5wqHwoAJCA==
X-IronPort-RemoteIP: 104.47.58.100
X-IronPort-MID: 121071964
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:SMoxoatGCQAf5j5m3fPuTdQTCufnVHBfMUV32f8akzHdYApBsoF/q
 tZmKWnQPfnbajahf99xOYSw8E1VuZbVx4dqT1dtqntjE3lE+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4lv0gnRkPaoQ5A6HzSFJZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwFgIJXiuFuPOKzfGhcrAyt8R5NcjgM9ZK0p1g5Wmx4fcOZ7nmGv2PyfoGmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgP60aIK9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAttKS+TpqKICbFu713RNBRwdSgSAivS/11Gne81YA
 m4/0397xUQ13AnxJjXnZDWorXjBshMCVt54F+wh9BrL2qfS+xyeBGUPUnhGctNOnM08SCEu1
 1SJt8j0HjEpu7qQIVqC8p+EoDX0PjIaRVLufgcBRAoBptXm/oc6i0uXSs45SfbtyNroBTv33
 jaG6jAkgKkehtIK0KP9+k3bhzWrpd7CSQtdChjrY19JJzhRPOaND7FEI3CBhRqcBO51lmW8g
 UU=
IronPort-HdrOrdr: A9a23:Pw5H/KqM6KhoWtxRq5jaeA4aV5rseYIsimQD101hICG8cqSj5q
 aTdZUgtSMc7Qx7ZJhOo7G90cW7MBbhHP1OkPAs1NWZLXHbUQKTRekMg7cKqweQYBEWndQtsZ
 uIHZIOb+HYPBxWt+u/xi+SeuxN/DCAysqVrNab9VtWCStNTI5BwTtDIju6NGozfiV6bKBJd6
 a0145Jpz+tY3QFYt7TPBQ4duLevcDMkJ78QTNuPW9E1DWz
X-Talos-CUID: 9a23:0yfcQW+qWNh00ajXl7yVv3AmHvAedELM8HqTOXfhV1dpEqSUQlDFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3AZhZquQ2sODAorWDkOoBziXPpezUj8rzwBUEGjso?=
 =?us-ascii?q?9kMSCaDNpGyiapRaca9py?=
X-IronPort-AV: E=Sophos;i="6.02,139,1688443200"; 
   d="scan'208";a="121071964"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YH93UOs5REbwneQb+uclG/qoDDk7aVspwbLbrzSxsCpfrEhHmov0NenKvGr/FkuG9xmddh9I4c7hYrsaJ0pqvXVlM9YWss4jBSo+dUJrY8H5Dm+/ifUbXz6td5k3fCRiJnBYgf+Oz36y1+l0MOwJNpNEIEDJTcgLFbx9lU4TcHQIbzt3CjAPsWJmo306GvcVzDedRHVuV4Y0VSqlLrUv4Mi9YBUsgho9fLeTyL9/G7v540dpJ38vWymlA6z05kxVrLSsk3T68BlG5NGUF/utEMiKQIG+uldxJgoHH8zw+KQSH2+QklfSz9vdH0bdUOC9Dr1UkpJznJQr3AbmwZ7EDA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jUpOKr6vyLC9qpX+lF7k9otlROwoxEYvztY+ih7pXy0=;
 b=GtsbwNV0ydzRwFon4lgdWtZr6TLHhopiHN9VId17p0euB1A8DzllNV2v8e2rIQ1W+24aVpl9vW9UmUfRXHC0Z215e+uigp4MSjD3OnU9NSL3QCcUj5RbQqcgLWEXenRzeZN+Wo4t6arcfljWB7tKbIEnKOyfw350cdXdzX23r3WOiehAHTUqgbntoblecjzEQ5LrE9tAMZN8rMVzhvYjv+m0Kiyc2b/xDMlN6hHDbIYCrszNc3Cp/HqRHHUOhWCrXTHPhGM2ykX715HosvFPAiK3kurS6hwb2HzEiosxP6f5ytfSZF6vHKLTWvqXFcPmR9nBsr/+58aLk4g1xT6iMA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jUpOKr6vyLC9qpX+lF7k9otlROwoxEYvztY+ih7pXy0=;
 b=snOs22ZoPgEkt3QLNaVJUdNFPtP4t+DSnoZ6a8/RPNAQHlkSAcoMmBwGKp+1ZC2hip/ljA7Q+o/+G8uNBQK6ix7B7YjuIA7Nze4Ro6+eQ8WyyN7784zycyNguUtPvQPuDcSc7Auuv0FJ1QKWnqPo+C02v7MFewuevSVuZR9EhqU=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
From: Roger Pau Monne <roger.pau@citrix.com>
To: xen-devel@lists.xenproject.org
Cc: Roger Pau Monne <roger.pau@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Date: Tue, 12 Sep 2023 18:23:05 +0200
Message-ID: <20230912162305.34339-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO2P265CA0030.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:61::18) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|CH2PR03MB5334:EE_
X-MS-Office365-Filtering-Correlation-Id: 223d4bf5-ba68-44e4-26fb-08dbb3ac8f4e
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KG8bk11i0wHBQ+ErNfgknw3Pzy+339bkiCfFbgEbkFRvtdA9dLQ0h9kV24BRgQohIvIaaza3ei/kkEdf4b/JM9RriCNMiP5b+lGu6P9//2OH7aHfYrFjPfP2qUG/pUzP/SiBr3Z6NVjgeljgjNUgsZN88z7ay+osneoSyD4LDZwoBgGgC7vI4jk724rF0c88UgY9a47XdZhYGSrpFN45oT17H5ZmpM9HejcP/cTdUnOpP7RjuWlKtJ8gZmR3UakDLbYe4QgJd7BLHsJjkK0WbXZdOrMFnPj2N41ZI0sd55QTe3HGV7GBW8HGcj1wYCbm9MieB8zYvS8XXG1PtGocdwMTUzG+S8Kk9j/MfYK20GBodR5VdT3JxmjuZ4sh816wq0abivz+SAlWg5TZfhGSZrD8BC/qyD6UTPx38izVo0izN9sDmBrFigTkdbi/Y7qHpeKW/kgolo42LUP/ydtee+iUi/m7IaQQj7Ng93UoXBVqADvQPcsPR5tGblcSdFyYOheukyRPp9DQKhjjll0RE2eiTwuPq2PiwPu3bnTGHPlZEgkVBD/Lxpt6mHwGkrgDmTxCW0fAJKDXCPytpB29tSl6ERrfjbTHyY91cE34SFY=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(366004)(346002)(376002)(39860400002)(451199024)(1800799009)(186009)(8676002)(8936002)(86362001)(4326008)(5660300002)(2906002)(36756003)(6666004)(38100700002)(83380400001)(82960400001)(6506007)(6486002)(6512007)(26005)(1076003)(6916009)(478600001)(2616005)(316002)(54906003)(66556008)(66476007)(66946007)(41300700001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SW1MVTVKMlpXMUkrSFJMVUk2Y3FRQ0tMYUI1SEJLTCtLdFRDSHMxVWQ1YlpS?=
 =?utf-8?B?WEUvdnNrRHQySDhON1IyeHlwbUlFK0I5QUR6cDF4U29wa0VyUGo4VVhoS2xt?=
 =?utf-8?B?S05tUnl0VkRuaU9FS2JpcUFrNmtMUFptcCtjSFlGbzlCT0YzYU1zSTFKVkhJ?=
 =?utf-8?B?V1pNVGM5NWhHZnZBbWd0TGdrYWxXbGZvcndiR0VCdmhRQ0pRVWw2Z1FwWlk1?=
 =?utf-8?B?WlZaOU5JY3FGemd2TUNUcjBOKzJNcktudzdkN3dUN2dzZzNad3RFcmgrZk45?=
 =?utf-8?B?Z2ZmYWVTUThLSmJLL2RCRldNYXZWWm5qVW1zQkloa3ZmbXVkTEY2VHVMMXFa?=
 =?utf-8?B?VEhZSDFDVDdFSTRhbU5teHordFptcTJ6RDZ4Yms4dGJDMXF4MEs4aVhYeUJD?=
 =?utf-8?B?Zy91T1hQU0dJb2hmbisydXZsQlo1T01NMG1KSkZBTk1QaUxwM1Z0TjExcitn?=
 =?utf-8?B?bXhPbUpSZzZsRjlpa3pkOWFvUk1DcVJuTm96QVZWSVVVTFUzYlVUWW1TMStz?=
 =?utf-8?B?MW9CTWxxa0NsOWxDQzJDRk54N0dYTm8xdGdCQ2hwU3FycXJOYkxWSzhaTnVV?=
 =?utf-8?B?ZGViYkFlYUx2ZFVCSitZa3B3YlFoQ3ZWTDdha1VXQ3pXYmlMVnVoN3F5cVV2?=
 =?utf-8?B?VWNlbVdwcDNQN25NZmJsQ01ERDBZZmxMazZ2aElUWjZVb1BWR1paMDd1dEZL?=
 =?utf-8?B?QUlwOWhhWHhFR3hINFdXbmFvNzhzNUNUWGJnTDdLTWNqR2tObTJWRjBuK3FJ?=
 =?utf-8?B?RWNSQkpCeFFrWXh6ak04T3ZvY1NrN21PVkRCMllvVk5rSlBVVjlxemFGR01I?=
 =?utf-8?B?cDFyNHMyaVdDWlJGTjBoSGwwRTR5cjhMV2w0ZS90dWh4TjdTRVVBOUpuRi9t?=
 =?utf-8?B?L0hSa2k4L1FhU0hZZjg3V3RFc0lFY3cwdXlqOG5NVGZGRWJ0bEJXZjdwOVVr?=
 =?utf-8?B?MTFrbWhCRWJWamZ0bWdNNXFSMlYzM0NaRkFZTFBKRmNrd2w1KzZMYkF5NTll?=
 =?utf-8?B?bnpLVW5CTTBtUEFZUGNaUUZUeVNDUE9lMTdySTV3NDcyZ1FEOWsyUERnZFh3?=
 =?utf-8?B?TkNlUFh3K2lxZUUzb3RWS1IrS0RNV3BxOGVFcDA5RHJlWUhnZk4xZElyc1Rs?=
 =?utf-8?B?YmFvM0gwYkxWa1I0OEgvZTFRNWkvVXo3bDFKbUgvcUt4cXp2V0svSENNemJE?=
 =?utf-8?B?MENGcVZpVUdlb1VOYXpPNVkzOW9nUUhPTjVKRThBYVZTS1FuQ2lIZVgwa1Nh?=
 =?utf-8?B?VWJub1pzZlpLaG0rdjVmbkN1ajBKY1BLdSs5VFNIUGc1Q1B1NXhNNnpIbGg2?=
 =?utf-8?B?K1VqYUM0MUVQSEhMRVc4YXFrWGtwTVdVMHc2Z0lWZG8vMmpEUDZHL2tlTjR0?=
 =?utf-8?B?RkdXRUZiNEIzZ0pnL3U4Z0R5VU5aeWlJNWxoUElOTG5Nbk5VUWNMSS80ZzNr?=
 =?utf-8?B?ZFNMNEp5R3MweE9yVUFDbzBXS2V0K3ZYSnJmVGNMS0pWRzZEVDdVcDE2VG9r?=
 =?utf-8?B?b1lzM0JRRFZ5MTVpMzJWaU9YRTd2VmNES0R4UXRuWEFUZllnQ1IzN3Uva2Rl?=
 =?utf-8?B?MEtaaXVTZTRRbURzellJMG1vWjlONkN4WWhlem83VW1XVEY3bGdOV1hMSnp2?=
 =?utf-8?B?aUJLTlVIdTYvYzY1RGIvK01pdUNRd0w1TFNtc2Z3U2tTcXJQemYwWE9UWUph?=
 =?utf-8?B?R2tzZnFXY09sMmNvZElGRXNSSCs5aWpDSnhuNnc0MU1uWW9VTjhUTVFvalZH?=
 =?utf-8?B?T1BWUkZPMzMxV1h5dkd6M2dOR2VtbFljRGpickZkVU92L0hNbUlmMkQrUjlK?=
 =?utf-8?B?V0ZNdkdoNWl3cEhRdDhjR1hndXB0OE5mV3BKOVY2c1pUdWhXYmFIRGZDazVH?=
 =?utf-8?B?bWk4NnFSUWxMQ0NwSDliWnVhcXhjWVQ5SnJWSGZjdzR0eSs3YjN4c1drMUlN?=
 =?utf-8?B?c1d5N3F5MzJHeHB3VE1jQVI2MzdsK0ZYNlZxVnlTVm9ZdXJjNUZtT0dNQUtt?=
 =?utf-8?B?cEJmL2N5c2E0RVlNc3FKa21XRFcva25XUjVHME9xUEphT2VmYXNqejU3dmM5?=
 =?utf-8?B?NkQyWDJMbXRuVWVnbEVGWk16aUVkVUUxWFBkNlB3YXN2TWpxK1gxc2YzeVVF?=
 =?utf-8?Q?n/6yYiCECYPI5JgG+sV3eyc0g?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	7JwmohV8m0Ppx0lwW7+d4yWrqo8Qh4s/3apC1aOcaIUlVYQb3YcDRb3jUhVWj+1LdTqEIuDnlIU/mqaQ6bN0YznSLqxlyBvDjBkN+baqF9tx5UwpNqpq+4erDlQLdoI473b7xGlIjmvIujtc7tg1BkCT8piB6XD4N+xhIaa/Jqz+tOK1lmqIRErZ0CC2yM8tdV4ijZC0ji15845qEAL7/OD0m1xzYH1YRt43mjPMeeJ/wyBZa6o1/Y0iJYju6hvcohisd5sFSupvgo49nqA/sOHfm0SxPtwnJKoGm3yi/HpdS/hxsl+YnDxmZgVQuA+sMnvWFaxv3D3Af3vDGH1xs8m3DjfPzZtWdK8OtGo0vpDZGVKOL3LDkPmaL1CNcX5OTMv9g4FbN+56a6egAqXS2oTrOZP3n0RUl9qJbvog5tJ1exKJghDZrJQosdCn+rY7Vwp9QXjMkGkAJPP8Cu1nAwzEk17wR6v1Rpkr695UA11c+TEY4AED51xzcHsJz86oaqOc/r9fp+0+eb15++obLRL4fJs5CCCMcAQ7U1TvMmvVT8wpnSB3U2+6Klq1pH87JwCJWlrq4Prp5KLpE4FSQ59pDZNt4KC+26ZKDy4vW6lsURCoOgfBLg6NGZ5BlmYGxrQ3XOHOU4G7700dLxixps3VmA+6FF7bb087K+btyJIK1VT+xiE95WupZwdHSnCZbalB02cAguLRWlGoamXEQu4Icp/qZeG+FnQKMmW4NlnPzQs9P5uxEFvQLlxAaSBfzDOxr76U4Tgjmocqamne8GnL+HuVvWilAuk5N47xxVL5yIFyiVUw60rB7aeqePjd
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 223d4bf5-ba68-44e4-26fb-08dbb3ac8f4e
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 16:23:12.6250
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: S8hW/QfgQdeMqO73gQ9+Az3SamR3Msp4RH9IycWAzMqb2qepFkiwtB2/nkboxTdjKRSazSxCeoW7trdqR4t3WA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR03MB5334

OpenBSD will attempt to unconditionally access PSTATE0 if HWCR.TscFreqSel is
set, and will also attempt to unconditionally access HWCR if the TSC is
reported as Invariant.

The reasoning for exposing HWCR.TscFreqSel was to avoid Linux from printing a
(bogus) warning message, but doing so at the cost of OpenBSD not booting is not
a suitable solution.

In order to fix expose an empty HWCR.

Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Not sure whether we want to expose something when is_cpufreq_controller() is
true, seeing as there's a special wrmsr handler for the same MSR in that case.
Likely should be done for PV only, but also likely quite bogus.

Missing reported by as the issue came from the QubesOS tracker.
---
 xen/arch/x86/msr.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
index 3f0450259cdf..964d500ff8a1 100644
--- a/xen/arch/x86/msr.c
+++ b/xen/arch/x86/msr.c
@@ -240,8 +240,12 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
     case MSR_K8_HWCR:
         if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
             goto gp_fault;
-        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
-               ? K8_HWCR_TSC_FREQ_SEL : 0;
+        /*
+         * OpenBSD 7.3 accesses HWCR unconditionally if the TSC is reported as
+         * Invariant.  Do not set TSC_FREQ_SEL as that would trigger OpenBSD to
+         * also poke at PSTATE0.
+         */
+        *val = 0;
         break;
 
     case MSR_VIRT_SPEC_CTRL:
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 16:35:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 16:35:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600670.936395 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg6MB-0006AG-8C; Tue, 12 Sep 2023 16:35:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600670.936395; Tue, 12 Sep 2023 16:35:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg6MB-0006A9-5b; Tue, 12 Sep 2023 16:35:19 +0000
Received: by outflank-mailman (input) for mailman id 600670;
 Tue, 12 Sep 2023 16:35:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Mt1s=E4=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qg6MA-0006A3-7o
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 16:35:18 +0000
Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com
 [2a00:1450:4864:20::32d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5afcdd6b-518a-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 18:35:17 +0200 (CEST)
Received: by mail-wm1-x32d.google.com with SMTP id
 5b1f17b1804b1-401da71b85eso63967225e9.1
 for <xen-devel@lists.xenproject.org>; Tue, 12 Sep 2023 09:35:17 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 n17-20020a1c7211000000b003fe1630a8f0sm16435390wmc.24.2023.09.12.09.35.16
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 12 Sep 2023 09:35:16 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5afcdd6b-518a-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694536516; x=1695141316; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=WuEmxMleklPw86um4iVPywee7TiPX6THf/XHkQqxfvM=;
        b=PCcXQWdFUoYWLcon3qeZciA78tno/Zm9eRIxvwJW7w9R1aYWDcXaIKIcNIeXyQoo57
         cx5Znx6bDaNmmoaQ94Ylpn73ihk99/RtR11m1P1cLSUAv1gNNkH4r5OT8f/VvZw3Gm8a
         Q1PscHz3VA6pS/LIi6XQ3GVn2llkEy3plD5iM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694536516; x=1695141316;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=WuEmxMleklPw86um4iVPywee7TiPX6THf/XHkQqxfvM=;
        b=mO7ljRkPwmkLiweFPjNGlQNbDqC8A850q55OiH0UUjjbjI/WKQ+dvwSzCF5UFNqDwG
         iXJfHMfNorv81ZE+9UxK5uBwNDRa87L6FiRPv0kyVfTcYk81t719yxbSfU0V1nn/EXPr
         2QLDfB/cAFd+O//CKKER794oTSJ7EWWY7fce9DArtP+hl/k+NoVH1BQt4BMLhweR9DBm
         6BJBGs343acVtt6Ad972IXbNTweTWvkPm2srbnL/Z7MiK335yNcN20XxZDa0SSswjaQg
         DGd9lcKpt+BSBshc95xnCFoPphDvTBsojLQ+2kkNadTsUGIxqjwNlkp7lIN/5EBG54aH
         /+EQ==
X-Gm-Message-State: AOJu0YyHmnwAgN9C/MLcEjicCg8PIg4yIMQicnxPEX1x+BA7tNe7Kc3n
	UREeBkqrA4eyKAEn96IRYu4g9w==
X-Google-Smtp-Source: AGHT+IHFhrfSx9bYQvWs2H1ziekUE4RXPvwPYB65/2peoFXrK20EBpyyLvuzNV0YeEGwq3pPvvGnyw==
X-Received: by 2002:a05:600c:1d19:b0:403:bb04:2908 with SMTP id l25-20020a05600c1d1900b00403bb042908mr2239058wms.23.1694536516460;
        Tue, 12 Sep 2023 09:35:16 -0700 (PDT)
Message-ID: <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
Date: Tue, 12 Sep 2023 17:35:15 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>,
 solene@openbsd.org,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>
References: <20230912162305.34339-1-roger.pau@citrix.com>
In-Reply-To: <20230912162305.34339-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 12/09/2023 5:23 pm, Roger Pau Monne wrote:
> OpenBSD will attempt to unconditionally access PSTATE0 if HWCR.TscFreqSel is
> set, and will also attempt to unconditionally access HWCR if the TSC is
> reported as Invariant.
>
> The reasoning for exposing HWCR.TscFreqSel was to avoid Linux from printing a
> (bogus) warning message, but doing so at the cost of OpenBSD not booting is not
> a suitable solution.
>
> In order to fix expose an empty HWCR.

At first I was thinking a straight up revert, but AMD's CPUID Faulting
is an architectural bit in here so it's worth keeping the register around.

>
> Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> ---
> Not sure whether we want to expose something when is_cpufreq_controller() is
> true, seeing as there's a special wrmsr handler for the same MSR in that case.
> Likely should be done for PV only, but also likely quite bogus.
>
> Missing reported by as the issue came from the QubesOS tracker.

Well - we can at least have a:

Link: https://github.com/QubesOS/qubes-issues/issues/8502

in the commit message, and it's probably worth asking Solène / Marek
(both CC'd) if they want a Reported-by tag.

> ---
>  xen/arch/x86/msr.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
> index 3f0450259cdf..964d500ff8a1 100644
> --- a/xen/arch/x86/msr.c
> +++ b/xen/arch/x86/msr.c
> @@ -240,8 +240,12 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
>      case MSR_K8_HWCR:
>          if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>              goto gp_fault;
> -        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
> -               ? K8_HWCR_TSC_FREQ_SEL : 0;
> +        /*
> +         * OpenBSD 7.3 accesses HWCR unconditionally if the TSC is reported as
> +         * Invariant.  Do not set TSC_FREQ_SEL as that would trigger OpenBSD to
> +         * also poke at PSTATE0.
> +         */

While this is true, the justification for removing this is because
TSC_FREQ_SEL is a model specific bit, not an architectural bit in HWCR.

Also because it's addition without writing into the migration stream was
bogus irrespective of the specifics of the bit.

I'm still of the opinion that it's buggy for OpenBSD to be looking at
model specific bits when virtualised, but given my latest reading of the
AMD manuals, I think OpenBSD *is* well behaved looking at PSTATE0 if it
can see TSC_FREQ_SEL.

In some theoretical future where the toolstack better understands MSRs
and (non)migratable VMs (which is the QubesOS usecase), then it would in
principle be fine to construct a VM which can see the host TSC_FREQ_SEL
and PSTATE* values.

Preferably with an adjusted comment, Reviewed-by: Andrew Cooper
<andrew.cooper3@citrix.com>

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 16:36:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 16:36:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600675.936406 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg6Nm-00074G-J2; Tue, 12 Sep 2023 16:36:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600675.936406; Tue, 12 Sep 2023 16:36:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg6Nm-000749-GC; Tue, 12 Sep 2023 16:36:58 +0000
Received: by outflank-mailman (input) for mailman id 600675;
 Tue, 12 Sep 2023 16:36:56 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Mt1s=E4=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qg6Nk-00073x-Pg
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 16:36:56 +0000
Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com
 [2a00:1450:4864:20::333])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 951cf9a3-518a-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 18:36:54 +0200 (CEST)
Received: by mail-wm1-x333.google.com with SMTP id
 5b1f17b1804b1-401187f8071so159845e9.0
 for <xen-devel@lists.xenproject.org>; Tue, 12 Sep 2023 09:36:54 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 s1-20020a5d69c1000000b0031aef72a021sm13205812wrw.86.2023.09.12.09.36.53
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 12 Sep 2023 09:36:53 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 951cf9a3-518a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694536614; x=1695141414; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to:from
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=pRePid9ddAaDLRNWMEYEsshp8tenmvsrTpXkCoB1bkE=;
        b=Bv4zVIIDGmhjxY7bJTE/nrt2MLTDJJ1jNQ064XGf5HRV3GgBzIB1W3KEcL7v4XEBNL
         BdHibYU19MTLcEOjXYvKHiNzwPtS2iLxQXPyLMwW/WHvgh4UmqsMPXgqLmXpVLHLz/Lq
         cRVQwd0fxq9cfeVvVy2TlISm2SGwBl8+8Q3EE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694536614; x=1695141414;
        h=content-transfer-encoding:in-reply-to:references:cc:to:from
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=pRePid9ddAaDLRNWMEYEsshp8tenmvsrTpXkCoB1bkE=;
        b=MWpzXn3XhPhF+DKW4GGfLUXfRftnmpEep7ME4L/D4antIteV6A+Csbnhf1mSxHeH7Q
         g20wAQ1S1HhF1N00Rt3isIa5s2VtR4DTHNciNF2k+UDopU72XHqJ3PUI03Vtx1gnqfCA
         VTL3F2BFFxfdF2JE17oF57KxYXhmJqx3N0OJ2T4Wh2KiMDuW2CFzmsMnop0kiMUvhmq7
         RfX1YjtaqXh1xKO+xRXkYz4CHbNG9KeoaFTmY2dYPwPG6KNzMDGLfQ18gUsJ5/rSwhIC
         U0eWFygadw6mNVL53vhr0Gp3Q6niKyE2eywRvN8VFJvhOnnWyh75FRIf+Ywjj178HyLq
         nbEA==
X-Gm-Message-State: AOJu0Yy1o9Od5nmTOEHcE/yNk+VpAnXiSTT81KZw7GSmlsfCxlh9JdcG
	O3mR630FTz6v/ikkJNxYovywXw==
X-Google-Smtp-Source: AGHT+IGwS53HtXWfcMiAwnZ6hjq/jjbXI4cuUr4QqiI8ggbWeNolJT1CpkL2JoNNn3fQYQPjrw81FQ==
X-Received: by 2002:a05:600c:3b04:b0:3fe:d67d:5040 with SMTP id m4-20020a05600c3b0400b003fed67d5040mr2743493wms.5.1694536613965;
        Tue, 12 Sep 2023 09:36:53 -0700 (PDT)
Message-ID: <989ebefa-42f1-cac7-e2d3-f4bcd1e4b662@citrix.com>
Date: Tue, 12 Sep 2023 17:36:53 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-GB
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>,
 solene@openbsd.org,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
In-Reply-To: <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 12/09/2023 5:35 pm, Andrew Cooper wrote:
> On 12/09/2023 5:23 pm, Roger Pau Monne wrote:
>> OpenBSD will attempt to unconditionally access PSTATE0 if HWCR.TscFreqSel is
>> set, and will also attempt to unconditionally access HWCR if the TSC is
>> reported as Invariant.
>>
>> The reasoning for exposing HWCR.TscFreqSel was to avoid Linux from printing a
>> (bogus) warning message, but doing so at the cost of OpenBSD not booting is not
>> a suitable solution.
>>
>> In order to fix expose an empty HWCR.
> At first I was thinking a straight up revert, but AMD's CPUID Faulting
> is an architectural bit in here so it's worth keeping the register around.
>
>> Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>> ---
>> Not sure whether we want to expose something when is_cpufreq_controller() is
>> true, seeing as there's a special wrmsr handler for the same MSR in that case.
>> Likely should be done for PV only, but also likely quite bogus.
>>
>> Missing reported by as the issue came from the QubesOS tracker.
> Well - we can at least have a:
>
> Link: https://github.com/QubesOS/qubes-issues/issues/8502
>
> in the commit message, and it's probably worth asking Solène / Marek
> (both CC'd) if they want a Reported-by tag.
>
>> ---
>>  xen/arch/x86/msr.c | 8 ++++++--
>>  1 file changed, 6 insertions(+), 2 deletions(-)
>>
>> diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
>> index 3f0450259cdf..964d500ff8a1 100644
>> --- a/xen/arch/x86/msr.c
>> +++ b/xen/arch/x86/msr.c
>> @@ -240,8 +240,12 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
>>      case MSR_K8_HWCR:
>>          if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>>              goto gp_fault;
>> -        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
>> -               ? K8_HWCR_TSC_FREQ_SEL : 0;
>> +        /*
>> +         * OpenBSD 7.3 accesses HWCR unconditionally if the TSC is reported as
>> +         * Invariant.  Do not set TSC_FREQ_SEL as that would trigger OpenBSD to
>> +         * also poke at PSTATE0.
>> +         */
> While this is true, the justification for removing this is because
> TSC_FREQ_SEL is a model specific bit, not an architectural bit in HWCR.
>
> Also because it's addition without writing into the migration stream was
> bogus irrespective of the specifics of the bit.
>
> I'm still of the opinion that it's buggy for OpenBSD to be looking at
> model specific bits when virtualised, but given my latest reading of the
> AMD manuals, I think OpenBSD *is* well behaved looking at PSTATE0 if it
> can see TSC_FREQ_SEL.
>
> In some theoretical future where the toolstack better understands MSRs
> and (non)migratable VMs (which is the QubesOS usecase), then it would in
> principle be fine to construct a VM which can see the host TSC_FREQ_SEL
> and PSTATE* values.
>
> Preferably with an adjusted comment, Reviewed-by: Andrew Cooper
> <andrew.cooper3@citrix.com>

Sorry - I meant to be clearer here.  I'd suggest just deleting the
comment and leaving an unconditional return of 0 (which will become
conditional when we wire up CPUID Faulting).

MSR_HWCR *is* an architectural MSR on any 64bit AMD system, so shouldn't
fault.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 17:04:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 17:04:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600684.936422 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg6nt-0003wX-NY; Tue, 12 Sep 2023 17:03:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600684.936422; Tue, 12 Sep 2023 17:03:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg6nt-0003wQ-JD; Tue, 12 Sep 2023 17:03:57 +0000
Received: by outflank-mailman (input) for mailman id 600684;
 Tue, 12 Sep 2023 17:03:57 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg6nt-0003wG-8g; Tue, 12 Sep 2023 17:03:57 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg6nt-00042E-80; Tue, 12 Sep 2023 17:03:57 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg6nt-0001Ie-0H; Tue, 12 Sep 2023 17:03:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qg6ns-0000Hd-W1; Tue, 12 Sep 2023 17:03:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=tIMYZx8sV+oOzwcOF758XNt1laxppGUxCOQRA+HG/bU=; b=cN0jiaTg7DjrdCG6fEcecj0Lqf
	E/A9Siwn5rnTmg7HJQFsZJpBvbzS0o51dhfmnPsaGusXBEfMG0NajOblaO1E/e+FesS3jn2q5aH9g
	WyJjae/mRftf5fqSmr5XIhB4nsUhLThCqU3TeEsbBhILIjp1iWsF77hOfKP2copV/7JA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182968-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182968: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=21ec0c42267be169be6019e5a09b61cbf16d10ce
X-Osstest-Versions-That:
    xen=5e8df433db791ba7e63ac1253e4e2a06ccd353d7
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 12 Sep 2023 17:03:56 +0000

flight 182968 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182968/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  21ec0c42267be169be6019e5a09b61cbf16d10ce
baseline version:
 xen                  5e8df433db791ba7e63ac1253e4e2a06ccd353d7

Last test of basis   182963  2023-09-12 10:00:26 Z    0 days
Testing same since   182968  2023-09-12 14:03:40 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michal Orzel <michal.orzel@amd.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   5e8df433db..21ec0c4226  21ec0c42267be169be6019e5a09b61cbf16d10ce -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 17:46:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 17:46:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600695.936438 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg7Sx-0002an-UA; Tue, 12 Sep 2023 17:46:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600695.936438; Tue, 12 Sep 2023 17:46:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg7Sx-0002ag-RU; Tue, 12 Sep 2023 17:46:23 +0000
Received: by outflank-mailman (input) for mailman id 600695;
 Tue, 12 Sep 2023 17:46:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2+51=E4=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qg7Sx-0002ZH-3J
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 17:46:23 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 47182a2a-5194-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 19:46:19 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id BD05761656;
 Tue, 12 Sep 2023 17:46:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 37E46C433C7;
 Tue, 12 Sep 2023 17:46:16 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 47182a2a-5194-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694540777;
	bh=FAnN0umrHiaTSlldOzix2uRE+u+92RhQY5zq2hjJ3tY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=gnxs/csWJDEoLu22OxMOOxOiHHzlqp3b6fEXdd/4iIvMGUKpdBPP69soV+2nrXZZy
	 9C1dM87dxwvPt4KkcylK4FvknD/9OC9DVMiDqY5RBfUkdmv8GJ211k79sNIOvvGka4
	 jXnjRhS96Pc/bz0ehzjbUt1woqCLDbjivY+FsbtMxyFWFeI1mkWu9Zt7PC9QnWkGb2
	 8G4AuoyROAL+kT0Qe5REjPfclAld4UKs7b2cAlSLP1Ddhgoy68u/mfkSbPmHB874hD
	 qY9E8sJHz1gTripI5Uiaz22uJ8f/spAdy3UphXG/l8bvUu7n+uuwIrGKS/gUz/cJYd
	 evGCzMUhUXLjw==
Date: Tue, 12 Sep 2023 10:46:02 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Michal Orzel <michal.orzel@amd.com>
cc: xen-devel@lists.xenproject.org, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Henry.Wang@arm.com
Subject: Re: [PATCH v2] xen/arm: Skip Xen specific nodes/properties from
 hwdom /chosen node
In-Reply-To: <20230912105341.16687-1-michal.orzel@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309121045570.2080229@ubuntu-linux-20-04-desktop>
References: <20230912105341.16687-1-michal.orzel@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 12 Sep 2023, Michal Orzel wrote:
> Skip the following Xen specific host device tree nodes/properties
> from being included into hardware domain /chosen node:
>  - xen,static-heap: this property informs Xen about memory regions
>    reserved exclusively as static heap,
>  - xen,domain-shared-memory-v1: node with this compatible informs Xen
>    about static shared memory region for a domain. Xen exposes a different
>    node (under /reserved-memory with compatible "xen,shared-memory-v1") to
>    let domain know about the shared region,
>  - xen,evtchn-v1: node with this compatible informs Xen about static
>    event channel configuration for a domain. Xen does not expose
>    information about static event channels to domUs and dom0 case was
>    overlooked (by default nodes from host dt are copied to dom0 fdt unless
>    explicitly marked to be skipped), since the author's idea was not to
>    expose it (refer docs/misc/arm/device-tree/booting.txt, "Static Event
>    Channel"). Even if we wanted to expose the static event channel
>    information, the current node is in the wrong format (i.e. contains
>    phandle to domU node not visible by dom0). Lastly, this feature is
>    marked as tech-preview and there is no Linux dt binding in place.
> 
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

Do we need Henry's explicit approval on bug fixes at this point?


> ---
> Changes in v2:
>  - update commit msg with better reasoning
> ---
>  xen/arch/arm/domain_build.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index 29dcbb8a2ee6..413568c0e2fd 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -1149,7 +1149,7 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
>           * * remember xen,dom0-bootargs if we don't already have
>           *   bootargs (from module #1, above).
>           * * remove bootargs,  xen,dom0-bootargs, xen,xen-bootargs,
> -         *   linux,initrd-start and linux,initrd-end.
> +         *   xen,static-heap, linux,initrd-start and linux,initrd-end.
>           * * remove stdout-path.
>           * * remove bootargs, linux,uefi-system-table,
>           *   linux,uefi-mmap-start, linux,uefi-mmap-size,
> @@ -1158,7 +1158,8 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
>           */
>          if ( dt_node_path_is_equal(node, "/chosen") )
>          {
> -            if ( dt_property_name_is_equal(prop, "xen,xen-bootargs") ||
> +            if ( dt_property_name_is_equal(prop, "xen,static-heap") ||
> +                 dt_property_name_is_equal(prop, "xen,xen-bootargs") ||
>                   dt_property_name_is_equal(prop, "linux,initrd-start") ||
>                   dt_property_name_is_equal(prop, "linux,initrd-end") ||
>                   dt_property_name_is_equal(prop, "stdout-path") ||
> @@ -2300,6 +2301,8 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
>      static const struct dt_device_match skip_matches[] __initconst =
>      {
>          DT_MATCH_COMPATIBLE("xen,domain"),
> +        DT_MATCH_COMPATIBLE("xen,domain-shared-memory-v1"),
> +        DT_MATCH_COMPATIBLE("xen,evtchn-v1"),
>          DT_MATCH_COMPATIBLE("xen,xen"),
>          DT_MATCH_COMPATIBLE("xen,multiboot-module"),
>          DT_MATCH_COMPATIBLE("multiboot,module"),
> -- 
> 2.25.1
> 


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 18:08:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 18:08:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600703.936448 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg7oH-0006Cz-GU; Tue, 12 Sep 2023 18:08:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600703.936448; Tue, 12 Sep 2023 18:08:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg7oH-0006Cp-Cc; Tue, 12 Sep 2023 18:08:25 +0000
Received: by outflank-mailman (input) for mailman id 600703;
 Tue, 12 Sep 2023 18:08:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=YY/q=E4=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qg7oG-0006Cj-Ck
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 18:08:24 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5af8a122-5197-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 20:08:21 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 32D9782856E8;
 Tue, 12 Sep 2023 13:08:19 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 5d10FWiM5tGv; Tue, 12 Sep 2023 13:08:18 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 436F08285713;
 Tue, 12 Sep 2023 13:08:18 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id YW7w8svlRWLo; Tue, 12 Sep 2023 13:08:18 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id BCA0E82856E8;
 Tue, 12 Sep 2023 13:08:17 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5af8a122-5197-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 436F08285713
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694542098; bh=xYCNi9uY9zXPATSSt/FI4NbEkh5aL2fadK98ItLA1Gc=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=ovIH8QMwyShvWHlQpivfMDe6ae5ioA/tshMsah3sezQeE4/3dSaB3w6hPK2HZ3JpC
	 6mlofPbJW5vHPWRjEGACSJL/1nTM7Pc+rmkrVlBHccpeZC5EdNfHi9kmq1KQKwd2kM
	 aW7XPZ8Vl2Uo/0wzb1eAVAV3+G1EuUk0NyP4RIFg=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <b92b75f9-67b0-33ef-00d6-4ccf516a4cc9@raptorengineering.com>
Date: Tue, 12 Sep 2023 13:08:17 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v4 2/5] xen/ppc: Implement bitops.h
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
 <31292b9b259a401045646d50a7237364640bc85b.1694211900.git.sanastasio@raptorengineering.com>
 <65b367b2-34b7-0887-6f29-8cb8e77ede7f@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <65b367b2-34b7-0887-6f29-8cb8e77ede7f@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/11/23 8:53 AM, Jan Beulich wrote:
> On 09.09.2023 00:50, Shawn Anastasio wrote:
>> +/**
>> + * test_bit - Determine whether a bit is set
>> + * @nr: bit number to test
>> + * @addr: Address to start counting from
>> + */
>> +static inline int test_bit(int nr, const volatile void *addr)
>> +{
>> +    const volatile unsigned long *p = (const volatile unsigned long *)addr;
>> +    return 1 & (p[BITOP_WORD(nr)] >> (nr & (BITOP_BITS_PER_WORD - 1)));
>> +}
> 
> Do you really mean unsigned long in here? (As an aside I'd also recommend
> to drop the cast; I don't think it's needed for anything.)
>

Good point -- this should definitely be int.

>> +static inline unsigned long test_and_clear_bits(
>> +    unsigned long mask,
> 
> While apparently benign here, perhaps also better to use unsigned int.
> (Looks like I even missed instances yet further up.)
> 
>> +    volatile unsigned int *p)
>> +{
>> +    unsigned long old, t;
> 
> I'm less certain here, because I don't know what exactly "r" permits on
> ppc. (Having said that I notice that mask also is used with an "r"
> constraint, so restrictions would then apply there as well. But if long
> is really needed in various placed, then I would say that a comment is
> warranted, perhaps next to the BITOP_* defines.)
>

I've tested it and it seems "r" works as expected with 32-bit operands,
so there should be no problem changing these longs to ints.

>> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
>> +                   "1: lwarx %0,0,%3,0\n"
>> +                   "andc %1,%0,%2\n"
>> +                   "stwcx. %1,0,%3\n"
>> +                   "bne- 1b\n"
>> +                   PPC_ATOMIC_EXIT_BARRIER
>> +                   : "=&r" (old), "=&r" (t)
>> +                   : "r" (mask), "r" (p)
>> +                   : "cc", "memory" );
>> +
>> +    return (old & mask);
>> +}
>> +
>> +static inline int test_and_clear_bit(unsigned int nr,
>> +                                     volatile void *addr)
>> +{
>> +    return test_and_clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr +
>> +                               BITOP_WORD(nr)) != 0;
> 
> I think this is misleading wrapping of arguments. Even if not strictly
> mandated, imo if an argument doesn't fit on the rest of a line it should
> start on a fresh one.
>

Will fix.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 18:11:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 18:11:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600712.936464 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg7ql-0007x6-1P; Tue, 12 Sep 2023 18:10:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600712.936464; Tue, 12 Sep 2023 18:10:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg7qk-0007wz-V2; Tue, 12 Sep 2023 18:10:58 +0000
Received: by outflank-mailman (input) for mailman id 600712;
 Tue, 12 Sep 2023 18:10:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=YY/q=E4=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qg7qj-0007uU-HW
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 18:10:57 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b71897fc-5197-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 20:10:55 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id CC5AE828531A;
 Tue, 12 Sep 2023 13:10:54 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id rmGY4a38DDE0; Tue, 12 Sep 2023 13:10:53 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id B24558285323;
 Tue, 12 Sep 2023 13:10:53 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id aXEqo3Sw_cXS; Tue, 12 Sep 2023 13:10:53 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 38C9D828531A;
 Tue, 12 Sep 2023 13:10:53 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b71897fc-5197-11ee-8786-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com B24558285323
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694542253; bh=IwVpiQvpPMd7R6HsV1KEOYY8MLWOjuJG+eqWfG1AZHY=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=AHx1E3OtxEYVS8GNLJSuYHicSMMxJT7UKUZjtFjuaAZnONXXfZ9vsQoTm4zTggidk
	 ouYh2tjeaQQiBVegGcqCaPYzZ39IYAKILcK/gEc7kRkKCn9LSZnVTnc9yzbZCnq3IY
	 k4hksh6FpeVg3NSUsU7r4a05ji7UIPAu8MijNRjY=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <c155907a-c5b5-a3fa-f9f8-f68ec51a3c87@raptorengineering.com>
Date: Tue, 12 Sep 2023 13:10:52 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v4 1/5] xen/ppc: Implement atomic.h
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
 <7ed453323033a759427da33cea7d18ddca247ae7.1694211900.git.sanastasio@raptorengineering.com>
 <93f4a2f3-b98c-332d-64a6-9e34cc9dddf2@suse.com>
 <7d3029fc-1188-3c55-0a54-bb9899fb91e8@raptorengineering.com>
 <07f75b80-1579-25ec-ab64-cbc1f2ff15e1@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <07f75b80-1579-25ec-ab64-cbc1f2ff15e1@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/12/23 1:48 AM, Jan Beulich wrote:
> On 12.09.2023 01:56, Shawn Anastasio wrote:
>> On 9/11/23 6:33 AM, Jan Beulich wrote:
>>> On 09.09.2023 00:50, Shawn Anastasio wrote:
>>>> +static always_inline void read_atomic_size(const volatile void *p, void *res,
>>>> +                                           unsigned int size)
>>>> +{
>>>> +    ASSERT(IS_ALIGNED((vaddr_t)p, size));
>>>> +    switch ( size )
>>>> +    {
>>>> +    case 1:
>>>> +        *(uint8_t *)res = read_u8_atomic(p);
>>>> +        break;
>>>> +    case 2:
>>>> +        *(uint16_t *)res = read_u16_atomic(p);
>>>> +        break;
>>>> +    case 4:
>>>> +        *(uint32_t *)res = read_u32_atomic(p);
>>>> +        break;
>>>> +    case 8:
>>>> +        *(uint64_t *)res = read_u64_atomic(p);
>>>> +        break;
>>>> +    default:
>>>> +        __bad_atomic_read(p, res);
>>>> +        break;
>>>> +    }
>>>> +}
>>>> +
>>>> +static always_inline void write_atomic_size(volatile void *p, const void *val,
>>>> +                                            unsigned int size)
>>>> +{
>>>> +    ASSERT(IS_ALIGNED((vaddr_t)p, size));
>>>> +    switch ( size )
>>>> +    {
>>>> +    case 1:
>>>> +        write_u8_atomic(p, *(const uint8_t *)val);
>>>> +        break;
>>>> +    case 2:
>>>> +        write_u16_atomic(p, *(const uint16_t *)val);
>>>> +        break;
>>>> +    case 4:
>>>> +        write_u32_atomic(p, *(const uint32_t *)val);
>>>> +        break;
>>>> +    case 8:
>>>> +        write_u64_atomic(p, *(const uint64_t *)val);
>>>> +        break;
>>>> +    default:
>>>> +        __bad_atomic_size();
>>>> +        break;
>>>> +    }
>>>> +}
>>>
>>> These two functions being as similar as is possible, ...
>>>
>>>> +#define read_atomic(p)                                                         \
>>>> +    ({                                                                         \
>>>> +        union {                                                                \
>>>> +            typeof(*(p)) val;                                                  \
>>>> +            char c[sizeof(*(p))];                                              \
>>>> +        } x_;                                                                  \
>>>> +        read_atomic_size(p, x_.c, sizeof(*(p)));                               \
>>>> +        x_.val;                                                                \
>>>> +    })
>>>
>>> ... is there a reason you keep using a union here ...
>>>
>>>> +#define write_atomic(p, x)                                                     \
>>>> +    do                                                                         \
>>>> +    {                                                                          \
>>>> +        typeof(*(p)) x_ = (x);                                                 \
>>>> +        write_atomic_size(p, &x_, sizeof(*(p)));                               \
>>>> +    } while ( 0 )
>>>
>>> ... while you did away with its use here?
>>>
>>
>> Yes. In the case of read_atomic the caller is allowed (expected, even)
>> to pass in const pointers for `p`, which wouldn't work if a simple
>> typeof(*(p)) declaration was used since it would inherit the constness
>> and thus wouldn't be passable to read_atomic_size.
> 
> But the helper function's first parameter is const volatile void *, and
> while you can't assign to a const variable, such a variable can of course
> have an initializer (like you have it in the write case).
>

Yes, however the second parameter to read_atomic_size is a void *. If
read_atomic macro's local `x_` was declared with a simple typeof(*(p))
then it would inherit the const and thus couldn't be passed as the
second parameter to read_atomic_size.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 18:17:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 18:17:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600719.936474 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg7wy-0000ag-N4; Tue, 12 Sep 2023 18:17:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600719.936474; Tue, 12 Sep 2023 18:17:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg7wy-0000aZ-K0; Tue, 12 Sep 2023 18:17:24 +0000
Received: by outflank-mailman (input) for mailman id 600719;
 Tue, 12 Sep 2023 18:17:23 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg7wx-0000aP-7m; Tue, 12 Sep 2023 18:17:23 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg7wx-0005l6-2D; Tue, 12 Sep 2023 18:17:23 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg7ww-0005Rd-Nu; Tue, 12 Sep 2023 18:17:22 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qg7ww-000344-NT; Tue, 12 Sep 2023 18:17:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=OOARfpTitkC5PMVl5D3JYfNbuxO2qODZmc1nz0Bdp4I=; b=HxxMtS0y0V7fyVuDVzGWPNwE/M
	wiQT+IQMaYRkwKRfRtUu9M69L6QAOJ+MwViiQsn1APGImrP+uQmeK+fiMkAq1W5OLk5TfRkgVH2cB
	n/t/iCdIQ+DGuNP7z5oWB5MVh9ocA4Bdjl5NksdFRj23if/+swbubBAbhnwPni3RWTVM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182958-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 182958: tolerable FAIL - PUSHED
X-Osstest-Failures:
    libvirt:test-amd64-i386-libvirt-xsm:xen-install:fail:heisenbug
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=ca40725a2101c597c03661771a4e546001f629cc
X-Osstest-Versions-That:
    libvirt=16ad37c119c66a8a0bb0dce57ccc7847b7050350
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 12 Sep 2023 18:17:22 +0000

flight 182958 libvirt real [real]
flight 182975 libvirt real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182958/
http://logs.test-lab.xenproject.org/osstest/logs/182975/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-libvirt-xsm   7 xen-install         fail pass in 182975-retest

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail in 182975 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182803
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182803
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182803
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              ca40725a2101c597c03661771a4e546001f629cc
baseline version:
 libvirt              16ad37c119c66a8a0bb0dce57ccc7847b7050350

Last test of basis   182803  2023-09-09 04:18:51 Z    3 days
Testing same since   182958  2023-09-12 04:18:50 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michal Privoznik <mprivozn@redhat.com>
  Peter Krempa <pkrempa@redhat.com>
  Praveen K Paladugu <prapal@linux.microsoft.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  fail    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   16ad37c119..ca40725a21  ca40725a2101c597c03661771a4e546001f629cc -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 18:20:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 18:20:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600728.936484 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg7zw-0002BA-5Z; Tue, 12 Sep 2023 18:20:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600728.936484; Tue, 12 Sep 2023 18:20:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg7zw-0002B3-2C; Tue, 12 Sep 2023 18:20:28 +0000
Received: by outflank-mailman (input) for mailman id 600728;
 Tue, 12 Sep 2023 18:20:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=YY/q=E4=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qg7zv-0002Ax-7f
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 18:20:27 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0a7b7bf2-5199-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 20:20:24 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id C886C82856CC;
 Tue, 12 Sep 2023 13:20:23 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id Dp82U-wf0SvM; Tue, 12 Sep 2023 13:20:22 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id A035E8285713;
 Tue, 12 Sep 2023 13:20:22 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 4Lm59cH7zDgk; Tue, 12 Sep 2023 13:20:22 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id E0FF282856CC;
 Tue, 12 Sep 2023 13:20:21 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0a7b7bf2-5199-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com A035E8285713
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694542822; bh=1eb6yy1hZOI9yF5r5wsKynxD4GExCLXigy00kGmpq7Y=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=MefAfXsSlt/aCLHXQNECnSDlPLZ1Ndw65ri4Y/5tLX1MfCRcJNzUutwig5VVTnCSt
	 Rpch8A31XG1vZ4DwNbzSMlVLiOEyce3nkVeDtY/rH7517ITFew8coNc+fIvwGmJOL+
	 r7X5juNF/HonqYcupvx7DtdL3zG00u6eHcRkcJTY=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <0b6ea450-e60b-de6b-6bd8-e78fd2f2b2db@raptorengineering.com>
Date: Tue, 12 Sep 2023 13:20:21 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v4 3/5] xen/ppc: Define minimal stub headers required for
 full build
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
 <ec21e13fd3de4142d305924a6f5d55ad15745731.1694211900.git.sanastasio@raptorengineering.com>
 <1868edde-1b7e-84c6-6881-ac3b98934932@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <1868edde-1b7e-84c6-6881-ac3b98934932@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/11/23 9:45 AM, Jan Beulich wrote:
> On 09.09.2023 00:50, Shawn Anastasio wrote:
>> Additionally, change inclusion of asm/ headers to corresponding xen/ ones
>> throughout arch/ppc now that they work.
>>
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> 
> Acked-by: Jan Beulich <jbeulich@suse.com>
> albeit ...
> 
>>
>>  xen/arch/ppc/Kconfig                     |   1 +
>>  xen/arch/ppc/include/asm/altp2m.h        |  25 +++
>>  xen/arch/ppc/include/asm/bug.h           |   9 +
>>  xen/arch/ppc/include/asm/cache.h         |   2 +
>>  xen/arch/ppc/include/asm/config.h        |  10 +
>>  xen/arch/ppc/include/asm/cpufeature.h    |  10 +
>>  xen/arch/ppc/include/asm/current.h       |  43 ++++
>>  xen/arch/ppc/include/asm/delay.h         |  12 ++
>>  xen/arch/ppc/include/asm/device.h        |  53 +++++
>>  xen/arch/ppc/include/asm/div64.h         |  14 ++
>>  xen/arch/ppc/include/asm/domain.h        |  47 +++++
>>  xen/arch/ppc/include/asm/event.h         |  36 ++++
>>  xen/arch/ppc/include/asm/flushtlb.h      |  24 +++
>>  xen/arch/ppc/include/asm/grant_table.h   |   5 +
>>  xen/arch/ppc/include/asm/guest_access.h  |  68 +++++++
>>  xen/arch/ppc/include/asm/guest_atomics.h |  23 +++
>>  xen/arch/ppc/include/asm/hardirq.h       |  19 ++
>>  xen/arch/ppc/include/asm/hypercall.h     |   5 +
>>  xen/arch/ppc/include/asm/io.h            |  16 ++
>>  xen/arch/ppc/include/asm/iocap.h         |   8 +
>>  xen/arch/ppc/include/asm/iommu.h         |   8 +
>>  xen/arch/ppc/include/asm/irq.h           |  33 +++
>>  xen/arch/ppc/include/asm/mem_access.h    |   5 +
>>  xen/arch/ppc/include/asm/mm.h            | 243 ++++++++++++++++++++++-
>>  xen/arch/ppc/include/asm/monitor.h       |  43 ++++
>>  xen/arch/ppc/include/asm/nospec.h        |  15 ++
>>  xen/arch/ppc/include/asm/numa.h          |  26 +++
>>  xen/arch/ppc/include/asm/p2m.h           |  95 +++++++++
>>  xen/arch/ppc/include/asm/page.h          |  18 ++
>>  xen/arch/ppc/include/asm/paging.h        |   7 +
>>  xen/arch/ppc/include/asm/pci.h           |   7 +
>>  xen/arch/ppc/include/asm/percpu.h        |  24 +++
>>  xen/arch/ppc/include/asm/processor.h     |  10 +
>>  xen/arch/ppc/include/asm/random.h        |   9 +
>>  xen/arch/ppc/include/asm/setup.h         |   6 +
>>  xen/arch/ppc/include/asm/smp.h           |  18 ++
>>  xen/arch/ppc/include/asm/softirq.h       |   8 +
>>  xen/arch/ppc/include/asm/spinlock.h      |  15 ++
>>  xen/arch/ppc/include/asm/system.h        | 219 +++++++++++++++++++-
>>  xen/arch/ppc/include/asm/time.h          |  23 +++
>>  xen/arch/ppc/include/asm/vm_event.h      |  49 +++++
> 
> ... this file now wants dropping, and xen/arch/ppc/include/asm/Makefile
> instead indicating to use the asm-generic variant.
>

Got it -- I'll drop it and use asm-generic.

> Note further that xen/arch/ppc/include/asm/numa.h has a leftover Arm
> reference that likely wasn't meant to be there.
>

Good catch, will fix.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 18:36:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 18:36:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600735.936494 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg8F5-0004O5-GT; Tue, 12 Sep 2023 18:36:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600735.936494; Tue, 12 Sep 2023 18:36:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg8F5-0004Ny-DJ; Tue, 12 Sep 2023 18:36:07 +0000
Received: by outflank-mailman (input) for mailman id 600735;
 Tue, 12 Sep 2023 18:36:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=YY/q=E4=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qg8F4-0004Nn-9M
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 18:36:06 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3a25b1da-519b-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 20:36:03 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id BEE5D82869BC;
 Tue, 12 Sep 2023 13:36:02 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id GDklFJAO7xyW; Tue, 12 Sep 2023 13:36:01 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 31EF28285806;
 Tue, 12 Sep 2023 13:36:01 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id c4ciP5Lb7hBL; Tue, 12 Sep 2023 13:36:01 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id C6B978285940;
 Tue, 12 Sep 2023 13:36:00 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3a25b1da-519b-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 31EF28285806
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694543761; bh=OMNtHSpQqn89e74CYNhsjMflaiQYP4Sf+eSGFc6n1/U=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=YXqsiTDFFOv+trEt+vp8Kdr10QxIxGE9qsC34/undmjI3u/QhGkfcW9AS5LBtSMgI
	 BjAewnbFUKcLb2kFIti1eWtAG5pjAhOPiCLELCQd31D31vHrpJ5pTw1LryxuhyfPuB
	 ZTPM7ENLOt/vCMBtS9PSVehjRDXeXgr7rxEGdNBc=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v5 1/5] xen/ppc: Implement atomic.h
Date: Tue, 12 Sep 2023 13:35:50 -0500
Message-Id: <bfc40a7499b39d9ff8c9c287ebf1525d99c0cc70.1694543103.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694543103.git.sanastasio@raptorengineering.com>
References: <cover.1694543103.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Implement atomic.h for PPC, based off of the original Xen 3.2
implementation. This implementation depends on some functions that are
not yet defined (notably __cmpxchg), so it can't yet be used.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
v5: No changes.

v4:
  - Clarify dependency on __cmpxchg which doesn't get implemented until
    future patch
  - Drop !CONFIG_SMP case for PPC_ATOMIC_{ENTRY,EXIT}_BARRIER macro
    definitions
  - Add missing newlines to inline asm instructions preceeding
    PPC_ATOMIC_EXIT_BARRIER. This was only discovered by the change
    to drop the !CONFIG_SMP definitions of those macros.
  - Fix line wrapping in atomic_compareandswap
  - Fix formatting of arch_cmpxchg macro

v3:
  - Drop full copyright text headers
  - Drop unnecessary spaces after casts
  - const-ize write_atomic_size
  - Don't use GNU 0-length array extension in read_atomic
  - Use "+m" asm constraint instead of separate "=m" and "m"
  - Fix line-continuing backslash formatting in arch_cmpxchg

v2:
  - Fix style of asm block constraints to include required spaces
  - Fix macro local variable naming (use trailing underscore instead of
    leading)
  - Drop unnecessary parens in __atomic_add_unless

 xen/arch/ppc/include/asm/atomic.h | 385 ++++++++++++++++++++++++++++++
 xen/arch/ppc/include/asm/memory.h |  14 ++
 2 files changed, 399 insertions(+)
 create mode 100644 xen/arch/ppc/include/asm/atomic.h
 create mode 100644 xen/arch/ppc/include/asm/memory.h

diff --git a/xen/arch/ppc/include/asm/atomic.h b/xen/arch/ppc/include/asm/atomic.h
new file mode 100644
index 0000000000..64168aa3f1
--- /dev/null
+++ b/xen/arch/ppc/include/asm/atomic.h
@@ -0,0 +1,385 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * PowerPC64 atomic operations
+ *
+ * Copyright (C) 2001 Paul Mackerras <paulus@au.ibm.com>, IBM
+ * Copyright (C) 2001 Anton Blanchard <anton@au.ibm.com>, IBM
+ * Copyright Raptor Engineering LLC
+ */
+
+#ifndef _ASM_PPC64_ATOMIC_H_
+#define _ASM_PPC64_ATOMIC_H_
+
+#include <xen/atomic.h>
+
+#include <asm/memory.h>
+
+static inline int atomic_read(const atomic_t *v)
+{
+    return *(volatile int *)&v->counter;
+}
+
+static inline int _atomic_read(atomic_t v)
+{
+    return v.counter;
+}
+
+static inline void atomic_set(atomic_t *v, int i)
+{
+    v->counter = i;
+}
+
+static inline void _atomic_set(atomic_t *v, int i)
+{
+    v->counter = i;
+}
+
+void __bad_atomic_read(const volatile void *p, void *res);
+void __bad_atomic_size(void);
+
+#define build_atomic_read(name, insn, type)                                    \
+    static inline type name(const volatile type *addr)                         \
+    {                                                                          \
+        type ret;                                                              \
+        asm volatile ( insn "%U1%X1 %0,%1" : "=r" (ret) : "m<>" (*addr) );     \
+        return ret;                                                            \
+    }
+
+#define build_atomic_write(name, insn, type)                                   \
+    static inline void name(volatile type *addr, type val)                     \
+    {                                                                          \
+        asm volatile ( insn "%U0%X0 %1,%0" : "=m<>" (*addr) : "r" (val) );     \
+    }
+
+#define build_add_sized(name, ldinsn, stinsn, type)                            \
+    static inline void name(volatile type *addr, type val)                     \
+    {                                                                          \
+        type t;                                                                \
+        asm volatile ( "1: " ldinsn " %0,0,%3\n"                               \
+                       "add%I2 %0,%0,%2\n"                                     \
+                       stinsn " %0,0,%3 \n"                                    \
+                       "bne- 1b\n"                                             \
+                       : "=&r" (t), "+m" (*addr)                               \
+                       : "r" (val), "r" (addr)                                 \
+                       : "cc" );                                               \
+    }
+
+build_atomic_read(read_u8_atomic, "lbz", uint8_t)
+build_atomic_read(read_u16_atomic, "lhz", uint16_t)
+build_atomic_read(read_u32_atomic, "lwz", uint32_t)
+build_atomic_read(read_u64_atomic, "ldz", uint64_t)
+
+build_atomic_write(write_u8_atomic, "stb", uint8_t)
+build_atomic_write(write_u16_atomic, "sth", uint16_t)
+build_atomic_write(write_u32_atomic, "stw", uint32_t)
+build_atomic_write(write_u64_atomic, "std", uint64_t)
+
+build_add_sized(add_u8_sized, "lbarx", "stbcx.",uint8_t)
+build_add_sized(add_u16_sized, "lharx", "sthcx.", uint16_t)
+build_add_sized(add_u32_sized, "lwarx", "stwcx.", uint32_t)
+
+#undef build_atomic_read
+#undef build_atomic_write
+#undef build_add_sized
+
+static always_inline void read_atomic_size(const volatile void *p, void *res,
+                                           unsigned int size)
+{
+    ASSERT(IS_ALIGNED((vaddr_t)p, size));
+    switch ( size )
+    {
+    case 1:
+        *(uint8_t *)res = read_u8_atomic(p);
+        break;
+    case 2:
+        *(uint16_t *)res = read_u16_atomic(p);
+        break;
+    case 4:
+        *(uint32_t *)res = read_u32_atomic(p);
+        break;
+    case 8:
+        *(uint64_t *)res = read_u64_atomic(p);
+        break;
+    default:
+        __bad_atomic_read(p, res);
+        break;
+    }
+}
+
+static always_inline void write_atomic_size(volatile void *p, const void *val,
+                                            unsigned int size)
+{
+    ASSERT(IS_ALIGNED((vaddr_t)p, size));
+    switch ( size )
+    {
+    case 1:
+        write_u8_atomic(p, *(const uint8_t *)val);
+        break;
+    case 2:
+        write_u16_atomic(p, *(const uint16_t *)val);
+        break;
+    case 4:
+        write_u32_atomic(p, *(const uint32_t *)val);
+        break;
+    case 8:
+        write_u64_atomic(p, *(const uint64_t *)val);
+        break;
+    default:
+        __bad_atomic_size();
+        break;
+    }
+}
+
+#define read_atomic(p)                                                         \
+    ({                                                                         \
+        union {                                                                \
+            typeof(*(p)) val;                                                  \
+            char c[sizeof(*(p))];                                              \
+        } x_;                                                                  \
+        read_atomic_size(p, x_.c, sizeof(*(p)));                               \
+        x_.val;                                                                \
+    })
+
+#define write_atomic(p, x)                                                     \
+    do                                                                         \
+    {                                                                          \
+        typeof(*(p)) x_ = (x);                                                 \
+        write_atomic_size(p, &x_, sizeof(*(p)));                               \
+    } while ( 0 )
+
+#define add_sized(p, x)                                                        \
+    ({                                                                         \
+        typeof(*(p)) x_ = (x);                                                 \
+        switch ( sizeof(*(p)) )                                                \
+        {                                                                      \
+        case 1:                                                                \
+            add_u8_sized((uint8_t *)(p), x_);                                  \
+            break;                                                             \
+        case 2:                                                                \
+            add_u16_sized((uint16_t *)(p), x_);                                \
+            break;                                                             \
+        case 4:                                                                \
+            add_u32_sized((uint32_t *)(p), x_);                                \
+            break;                                                             \
+        default:                                                               \
+            __bad_atomic_size();                                               \
+            break;                                                             \
+        }                                                                      \
+    })
+
+static inline void atomic_add(int a, atomic_t *v)
+{
+    int t;
+
+    asm volatile ( "1: lwarx %0,0,%3\n"
+                   "add %0,%2,%0\n"
+                   "stwcx. %0,0,%3\n"
+                   "bne- 1b"
+                   : "=&r" (t), "+m" (v->counter)
+                   : "r" (a), "r" (&v->counter)
+                   : "cc" );
+}
+
+static inline int atomic_add_return(int a, atomic_t *v)
+{
+    int t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%2\n"
+                   "add %0,%1,%0\n"
+                   "stwcx. %0,0,%2\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (t)
+                   : "r" (a), "r" (&v->counter)
+                   : "cc", "memory" );
+
+    return t;
+}
+
+static inline void atomic_sub(int a, atomic_t *v)
+{
+    int t;
+
+    asm volatile ( "1: lwarx %0,0,%3\n"
+                   "subf %0,%2,%0\n"
+                   "stwcx. %0,0,%3\n"
+                   "bne- 1b"
+                   : "=&r" (t), "+m" (v->counter)
+                   : "r" (a), "r" (&v->counter)
+                   : "cc" );
+}
+
+static inline int atomic_sub_return(int a, atomic_t *v)
+{
+    int t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%2\n"
+                   "subf %0,%1,%0\n"
+                   "stwcx. %0,0,%2\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (t)
+                   : "r" (a), "r" (&v->counter)
+                   : "cc", "memory" );
+
+    return t;
+}
+
+static inline void atomic_inc(atomic_t *v)
+{
+    int t;
+
+    asm volatile ( "1: lwarx %0,0,%2\n"
+                   "addic %0,%0,1\n"
+                   "stwcx. %0,0,%2\n"
+                   "bne- 1b"
+                   : "=&r" (t), "+m" (v->counter)
+                   : "r" (&v->counter)
+                   : "cc" );
+}
+
+static inline int atomic_inc_return(atomic_t *v)
+{
+    int t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%1\n"
+                   "addic %0,%0,1\n"
+                   "stwcx. %0,0,%1\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (t)
+                   : "r" (&v->counter)
+                   : "cc", "memory" );
+
+    return t;
+}
+
+static inline void atomic_dec(atomic_t *v)
+{
+    int t;
+
+    asm volatile ( "1: lwarx %0,0,%2\n"
+                   "addic %0,%0,-1\n"
+                   "stwcx. %0,0,%2\n"
+                   "bne- 1b"
+                   : "=&r" (t), "+m" (v->counter)
+                   : "r" (&v->counter)
+                   : "cc" );
+}
+
+static inline int atomic_dec_return(atomic_t *v)
+{
+    int t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%1\n"
+                   "addic %0,%0,-1\n"
+                   "stwcx. %0,0,%1\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (t)
+                   : "r" (&v->counter)
+                   : "cc", "memory" );
+
+    return t;
+}
+
+/*
+ * Atomically test *v and decrement if it is greater than 0.
+ * The function returns the old value of *v minus 1.
+ */
+static inline int atomic_dec_if_positive(atomic_t *v)
+{
+    int t;
+
+    asm volatile( PPC_ATOMIC_ENTRY_BARRIER
+                  "1: lwarx %0,0,%1 # atomic_dec_if_positive\n"
+                  "addic. %0,%0,-1\n"
+                  "blt- 2f\n"
+                  "stwcx. %0,0,%1\n"
+                  "bne- 1b\n"
+                  PPC_ATOMIC_EXIT_BARRIER
+                  "2:"
+                  : "=&r" (t)
+                  : "r" (&v->counter)
+                  : "cc", "memory" );
+
+    return t;
+}
+
+static inline atomic_t atomic_compareandswap(atomic_t old, atomic_t new,
+                                             atomic_t *v)
+{
+    atomic_t rc;
+    rc.counter = __cmpxchg(&v->counter, old.counter, new.counter,
+                           sizeof(v->counter));
+    return rc;
+}
+
+#define arch_cmpxchg(ptr, o, n)                                                \
+    ({                                                                         \
+        __typeof__(*(ptr)) o_ = (o);                                           \
+        __typeof__(*(ptr)) n_ = (n);                                           \
+        (__typeof__(*(ptr))) __cmpxchg((ptr), (unsigned long)o_,               \
+                                       (unsigned long)n_, sizeof(*(ptr)));     \
+    })
+
+static inline int atomic_cmpxchg(atomic_t *v, int old, int new)
+{
+    return arch_cmpxchg(&v->counter, old, new);
+}
+
+#define ATOMIC_OP(op, insn, suffix, sign) \
+    static inline void atomic_##op(int a, atomic_t *v)                           \
+    {                                                                            \
+        int t;                                                                   \
+        asm volatile ( "1: lwarx %0,0,%3\n"                                      \
+                       insn "%I2" suffix " %0,%0,%2\n"                           \
+                       "stwcx. %0,0,%3 \n"                                       \
+                       "bne- 1b\n"                                               \
+                       : "=&r" (t), "+m" (v->counter)                            \
+                       : "r" #sign (a), "r" (&v->counter)                        \
+                       : "cc" );                                                 \
+    }
+
+ATOMIC_OP(and, "and", ".", K)
+
+static inline int atomic_sub_and_test(int i, atomic_t *v)
+{
+    return atomic_sub_return(i, v) == 0;
+}
+
+static inline int atomic_inc_and_test(atomic_t *v)
+{
+    return atomic_add_return(1, v) == 0;
+}
+
+static inline int atomic_dec_and_test(atomic_t *v)
+{
+    return atomic_sub_return(1, v) == 0;
+}
+
+static inline int atomic_add_negative(int i, atomic_t *v)
+{
+    return atomic_add_return(i, v) < 0;
+}
+
+static inline int __atomic_add_unless(atomic_t *v, int a, int u)
+{
+	int c, old;
+
+	c = atomic_read(v);
+	while (c != u && (old = atomic_cmpxchg(v, c, c + a)) != c)
+		c = old;
+	return c;
+}
+
+static inline int atomic_add_unless(atomic_t *v, int a, int u)
+{
+    return __atomic_add_unless(v, a, u);
+}
+
+#endif /* _ASM_PPC64_ATOMIC_H_ */
diff --git a/xen/arch/ppc/include/asm/memory.h b/xen/arch/ppc/include/asm/memory.h
new file mode 100644
index 0000000000..57310eb690
--- /dev/null
+++ b/xen/arch/ppc/include/asm/memory.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Copyright (C) IBM Corp. 2005
+ *
+ * Authors: Jimi Xenidis <jimix@watson.ibm.com>
+ */
+
+#ifndef _ASM_MEMORY_H_
+#define _ASM_MEMORY_H_
+
+#define PPC_ATOMIC_ENTRY_BARRIER "sync\n"
+#define PPC_ATOMIC_EXIT_BARRIER  "sync\n"
+
+#endif
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 18:36:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 18:36:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600736.936504 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg8F6-0004eV-Sr; Tue, 12 Sep 2023 18:36:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600736.936504; Tue, 12 Sep 2023 18:36:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg8F6-0004eO-PE; Tue, 12 Sep 2023 18:36:08 +0000
Received: by outflank-mailman (input) for mailman id 600736;
 Tue, 12 Sep 2023 18:36:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=YY/q=E4=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qg8F4-0004Nn-U5
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 18:36:06 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3a1b561c-519b-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 20:36:03 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 80C37828697F;
 Tue, 12 Sep 2023 13:36:02 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id T0X8Xem0JTh0; Tue, 12 Sep 2023 13:36:01 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 07B55828588C;
 Tue, 12 Sep 2023 13:36:01 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id ZTvoJhhH5VJj; Tue, 12 Sep 2023 13:36:00 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 076D78285806;
 Tue, 12 Sep 2023 13:36:00 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3a1b561c-519b-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 07B55828588C
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694543761; bh=2o7EmQggelACz3Tjq1xm4clN9hmNJf8xEaJhD960+0I=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=BXkjtmhcaaD/0sjlTtkKprdqZd280Pmk7nbHcNwl24rWIBQudyhZnJzw8QlamPnjk
	 Ll3uAl7Zl//WP4md2GjVywo+wAYBu+nVfR/r21bqwOx34U8Jtg75Eh7+EBeXa8O8z2
	 Lm4INlxtUMtE9/56X1YuknwkJ0GpCqYfF/2a/GRM=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>
Subject: [PATCH v5 0/5] ppc: Enable full Xen build
Date: Tue, 12 Sep 2023 13:35:49 -0500
Message-Id: <cover.1694543103.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Hello all,

This patch series performs all of the additions necessary to drop the
build overrides for PPC and enable the full Xen build. Except in cases
where compatibile implementations already exist (e.g. atomic.h and
bitops.h), the newly added definitions are simple, unimplemented stubs
that just call BUG_ON("unimplemented").

Thanks,
Shawn

Shawn Anastasio (5):
  xen/ppc: Implement atomic.h
  xen/ppc: Implement bitops.h
  xen/ppc: Define minimal stub headers required for full build
  xen/ppc: Add stub function and symbol definitions
  xen/ppc: Enable full Xen build

 xen/arch/ppc/Kconfig                     |   1 +
 xen/arch/ppc/Makefile                    |  17 +-
 xen/arch/ppc/arch.mk                     |   3 -
 xen/arch/ppc/include/asm/Makefile        |   2 +
 xen/arch/ppc/include/asm/altp2m.h        |  25 ++
 xen/arch/ppc/include/asm/atomic.h        | 385 +++++++++++++++++++++++
 xen/arch/ppc/include/asm/bitops.h        | 332 ++++++++++++++++++-
 xen/arch/ppc/include/asm/bug.h           |   9 +
 xen/arch/ppc/include/asm/cache.h         |   2 +
 xen/arch/ppc/include/asm/config.h        |  10 +
 xen/arch/ppc/include/asm/cpufeature.h    |  10 +
 xen/arch/ppc/include/asm/current.h       |  43 +++
 xen/arch/ppc/include/asm/delay.h         |  12 +
 xen/arch/ppc/include/asm/device.h        |  53 ++++
 xen/arch/ppc/include/asm/div64.h         |  14 +
 xen/arch/ppc/include/asm/domain.h        |  47 +++
 xen/arch/ppc/include/asm/event.h         |  36 +++
 xen/arch/ppc/include/asm/flushtlb.h      |  24 ++
 xen/arch/ppc/include/asm/grant_table.h   |   5 +
 xen/arch/ppc/include/asm/guest_access.h  |  68 ++++
 xen/arch/ppc/include/asm/guest_atomics.h |  23 ++
 xen/arch/ppc/include/asm/hardirq.h       |  19 ++
 xen/arch/ppc/include/asm/hypercall.h     |   5 +
 xen/arch/ppc/include/asm/io.h            |  16 +
 xen/arch/ppc/include/asm/iocap.h         |   8 +
 xen/arch/ppc/include/asm/iommu.h         |   8 +
 xen/arch/ppc/include/asm/irq.h           |  33 ++
 xen/arch/ppc/include/asm/mem_access.h    |   5 +
 xen/arch/ppc/include/asm/memory.h        |  14 +
 xen/arch/ppc/include/asm/mm.h            | 243 +++++++++++++-
 xen/arch/ppc/include/asm/monitor.h       |  43 +++
 xen/arch/ppc/include/asm/nospec.h        |  15 +
 xen/arch/ppc/include/asm/numa.h          |  26 ++
 xen/arch/ppc/include/asm/p2m.h           |  95 ++++++
 xen/arch/ppc/include/asm/page.h          |  18 ++
 xen/arch/ppc/include/asm/paging.h        |   7 +
 xen/arch/ppc/include/asm/pci.h           |   7 +
 xen/arch/ppc/include/asm/percpu.h        |  24 ++
 xen/arch/ppc/include/asm/processor.h     |  10 +
 xen/arch/ppc/include/asm/random.h        |   9 +
 xen/arch/ppc/include/asm/setup.h         |   6 +
 xen/arch/ppc/include/asm/smp.h           |  18 ++
 xen/arch/ppc/include/asm/softirq.h       |   8 +
 xen/arch/ppc/include/asm/spinlock.h      |  15 +
 xen/arch/ppc/include/asm/system.h        | 219 ++++++++++++-
 xen/arch/ppc/include/asm/time.h          |  23 ++
 xen/arch/ppc/include/asm/xenoprof.h      |   0
 xen/arch/ppc/mm-radix.c                  |  44 ++-
 xen/arch/ppc/setup.c                     |   8 +
 xen/arch/ppc/stubs.c                     | 339 ++++++++++++++++++++
 xen/arch/ppc/tlb-radix.c                 |   2 +-
 xen/include/public/hvm/save.h            |   2 +
 xen/include/public/pmu.h                 |   2 +
 xen/include/public/xen.h                 |   2 +
 54 files changed, 2403 insertions(+), 11 deletions(-)
 create mode 100644 xen/arch/ppc/include/asm/Makefile
 create mode 100644 xen/arch/ppc/include/asm/altp2m.h
 create mode 100644 xen/arch/ppc/include/asm/atomic.h
 create mode 100644 xen/arch/ppc/include/asm/cpufeature.h
 create mode 100644 xen/arch/ppc/include/asm/current.h
 create mode 100644 xen/arch/ppc/include/asm/delay.h
 create mode 100644 xen/arch/ppc/include/asm/device.h
 create mode 100644 xen/arch/ppc/include/asm/div64.h
 create mode 100644 xen/arch/ppc/include/asm/domain.h
 create mode 100644 xen/arch/ppc/include/asm/event.h
 create mode 100644 xen/arch/ppc/include/asm/flushtlb.h
 create mode 100644 xen/arch/ppc/include/asm/grant_table.h
 create mode 100644 xen/arch/ppc/include/asm/guest_access.h
 create mode 100644 xen/arch/ppc/include/asm/guest_atomics.h
 create mode 100644 xen/arch/ppc/include/asm/hardirq.h
 create mode 100644 xen/arch/ppc/include/asm/hypercall.h
 create mode 100644 xen/arch/ppc/include/asm/io.h
 create mode 100644 xen/arch/ppc/include/asm/iocap.h
 create mode 100644 xen/arch/ppc/include/asm/iommu.h
 create mode 100644 xen/arch/ppc/include/asm/irq.h
 create mode 100644 xen/arch/ppc/include/asm/mem_access.h
 create mode 100644 xen/arch/ppc/include/asm/memory.h
 create mode 100644 xen/arch/ppc/include/asm/monitor.h
 create mode 100644 xen/arch/ppc/include/asm/nospec.h
 create mode 100644 xen/arch/ppc/include/asm/numa.h
 create mode 100644 xen/arch/ppc/include/asm/p2m.h
 create mode 100644 xen/arch/ppc/include/asm/paging.h
 create mode 100644 xen/arch/ppc/include/asm/pci.h
 create mode 100644 xen/arch/ppc/include/asm/percpu.h
 create mode 100644 xen/arch/ppc/include/asm/random.h
 create mode 100644 xen/arch/ppc/include/asm/setup.h
 create mode 100644 xen/arch/ppc/include/asm/smp.h
 create mode 100644 xen/arch/ppc/include/asm/softirq.h
 create mode 100644 xen/arch/ppc/include/asm/spinlock.h
 create mode 100644 xen/arch/ppc/include/asm/time.h
 create mode 100644 xen/arch/ppc/include/asm/xenoprof.h
 create mode 100644 xen/arch/ppc/stubs.c

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 18:36:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 18:36:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600739.936529 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg8F8-0005E4-P5; Tue, 12 Sep 2023 18:36:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600739.936529; Tue, 12 Sep 2023 18:36:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg8F8-0005DL-KA; Tue, 12 Sep 2023 18:36:10 +0000
Received: by outflank-mailman (input) for mailman id 600739;
 Tue, 12 Sep 2023 18:36:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=YY/q=E4=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qg8F7-0004gy-Es
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 18:36:09 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3aef5145-519b-11ee-8786-cb3800f73035;
 Tue, 12 Sep 2023 20:36:05 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 56062828588C;
 Tue, 12 Sep 2023 13:36:04 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id UyJ4rMT5KA0S; Tue, 12 Sep 2023 13:36:02 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 675458286999;
 Tue, 12 Sep 2023 13:36:02 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 28PoQVfEyAXc; Tue, 12 Sep 2023 13:36:02 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 1207C82869A9;
 Tue, 12 Sep 2023 13:36:02 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3aef5145-519b-11ee-8786-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 675458286999
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694543762; bh=6LM95rrDoqCiSn6LemOLiswbsaDeEh5eaAd90MA8xic=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=I8kABtDzdiCGYaKXRW+75tPCf/60BW7gNz2jXOBceZiShezZv0TPCEk7lYeLff1Pg
	 mXAGyspx8qBci3qd9Bpm4tvybIX0a2xmirIoHO2FGAJd2tPci31MkhlhlB99wYbKN/
	 aQGgLMmqqV3ai6pqWq+7BxIdpLiYH6RDXAq8nOhc=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v5 4/5] xen/ppc: Add stub function and symbol definitions
Date: Tue, 12 Sep 2023 13:35:53 -0500
Message-Id: <26d561b1878082a1666935fd8c9d477de423e8ed.1694543103.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694543103.git.sanastasio@raptorengineering.com>
References: <cover.1694543103.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Add stub function and symbol definitions required by common code. If the
file that the definition is supposed to be located in doesn't already
exist yet, temporarily place its definition in the new stubs.c

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
v5: No changes.

v4: No changes.

v3:
  - (stubs.c) Drop ack_none hook definition

v2:
  - Use BUG_ON("unimplemented") instead of BUG() for unimplemented functions
    to make searching easier.
  - (mm-radix.c) Drop total_pages definition
  - (mm-radix.c) Move __read_mostly from after variable name to before it in
    declaration of `frametable_base_pdx`
  - (setup.c) Fix include order
  - (stubs.c) Drop stub .end hw_irq_controller hook

 xen/arch/ppc/Makefile   |   1 +
 xen/arch/ppc/mm-radix.c |  42 +++++
 xen/arch/ppc/setup.c    |   8 +
 xen/arch/ppc/stubs.c    | 339 ++++++++++++++++++++++++++++++++++++++++
 4 files changed, 390 insertions(+)
 create mode 100644 xen/arch/ppc/stubs.c

diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile
index b3205b8f7a..6d5569ff64 100644
--- a/xen/arch/ppc/Makefile
+++ b/xen/arch/ppc/Makefile
@@ -4,6 +4,7 @@ obj-$(CONFIG_EARLY_PRINTK) += early_printk.init.o
 obj-y += mm-radix.o
 obj-y += opal.o
 obj-y += setup.o
+obj-y += stubs.o
 obj-y += tlb-radix.o

 $(TARGET): $(TARGET)-syms
diff --git a/xen/arch/ppc/mm-radix.c b/xen/arch/ppc/mm-radix.c
index 06129cef9c..11d0f27b60 100644
--- a/xen/arch/ppc/mm-radix.c
+++ b/xen/arch/ppc/mm-radix.c
@@ -265,3 +265,45 @@ void __init setup_initial_pagetables(void)
     /* Turn on the MMU */
     enable_mmu();
 }
+
+/*
+ * TODO: Implement the functions below
+ */
+unsigned long __read_mostly frametable_base_pdx;
+
+void put_page(struct page_info *p)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_dump_shared_mem_info(void)
+{
+    BUG_ON("unimplemented");
+}
+
+int xenmem_add_to_physmap_one(struct domain *d,
+                              unsigned int space,
+                              union add_to_physmap_extra extra,
+                              unsigned long idx,
+                              gfn_t gfn)
+{
+    BUG_ON("unimplemented");
+}
+
+int destroy_xen_mappings(unsigned long s, unsigned long e)
+{
+    BUG_ON("unimplemented");
+}
+
+int map_pages_to_xen(unsigned long virt,
+                     mfn_t mfn,
+                     unsigned long nr_mfns,
+                     unsigned int flags)
+{
+    BUG_ON("unimplemented");
+}
+
+int __init populate_pt_range(unsigned long virt, unsigned long nr_mfns)
+{
+    BUG_ON("unimplemented");
+}
diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c
index 3fc7705d9b..959c1454a0 100644
--- a/xen/arch/ppc/setup.c
+++ b/xen/arch/ppc/setup.c
@@ -1,5 +1,8 @@
 /* SPDX-License-Identifier: GPL-2.0-or-later */
 #include <xen/init.h>
+#include <xen/lib.h>
+#include <xen/mm.h>
+#include <public/version.h>
 #include <asm/boot.h>
 #include <asm/early_printk.h>
 #include <asm/mm.h>
@@ -33,3 +36,8 @@ void __init noreturn start_xen(unsigned long r3, unsigned long r4,

     unreachable();
 }
+
+void arch_get_xen_caps(xen_capabilities_info_t *info)
+{
+    BUG_ON("unimplemented");
+}
diff --git a/xen/arch/ppc/stubs.c b/xen/arch/ppc/stubs.c
new file mode 100644
index 0000000000..4c276b0e39
--- /dev/null
+++ b/xen/arch/ppc/stubs.c
@@ -0,0 +1,339 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#include <xen/cpumask.h>
+#include <xen/domain.h>
+#include <xen/irq.h>
+#include <xen/nodemask.h>
+#include <xen/time.h>
+#include <public/domctl.h>
+#include <public/vm_event.h>
+
+#include <asm/current.h>
+
+/* smpboot.c */
+
+cpumask_t cpu_online_map;
+cpumask_t cpu_present_map;
+cpumask_t cpu_possible_map;
+
+/* ID of the PCPU we're running on */
+DEFINE_PER_CPU(unsigned int, cpu_id);
+/* XXX these seem awfully x86ish... */
+/* representing HT siblings of each logical CPU */
+DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_sibling_mask);
+/* representing HT and core siblings of each logical CPU */
+DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_core_mask);
+
+nodemask_t __read_mostly node_online_map = { { [0] = 1UL } };
+
+/* time.c */
+
+s_time_t get_s_time(void)
+{
+    BUG_ON("unimplemented");
+}
+
+int reprogram_timer(s_time_t timeout)
+{
+    BUG_ON("unimplemented");
+}
+
+void send_timer_event(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+/* traps.c */
+
+void show_execution_state(const struct cpu_user_regs *regs)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_hypercall_tasklet_result(struct vcpu *v, long res)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_show_execution_state(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+/* shutdown.c */
+
+void machine_restart(unsigned int delay_millisecs)
+{
+    BUG_ON("unimplemented");
+}
+
+void machine_halt(void)
+{
+    BUG_ON("unimplemented");
+}
+
+/* vm_event.c */
+
+void vm_event_fill_regs(vm_event_request_t *req)
+{
+    BUG_ON("unimplemented");
+}
+
+void vm_event_set_registers(struct vcpu *v, vm_event_response_t *rsp)
+{
+    BUG_ON("unimplemented");
+}
+
+void vm_event_monitor_next_interrupt(struct vcpu *v)
+{
+    /* Not supported on PPC. */
+}
+
+/* domctl.c */
+void arch_get_domain_info(const struct domain *d,
+                          struct xen_domctl_getdomaininfo *info)
+{
+    BUG_ON("unimplemented");
+}
+
+/* monitor.c */
+
+int arch_monitor_domctl_event(struct domain *d,
+                              struct xen_domctl_monitor_op *mop)
+{
+    BUG_ON("unimplemented");
+}
+
+/* smp.c */
+
+void arch_flush_tlb_mask(const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+void smp_send_event_check_mask(const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+void smp_send_call_function_mask(const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+/* irq.c */
+
+struct pirq *alloc_pirq_struct(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+int pirq_guest_bind(struct vcpu *v, struct pirq *pirq, int will_share)
+{
+    BUG_ON("unimplemented");
+}
+
+void pirq_guest_unbind(struct domain *d, struct pirq *pirq)
+{
+    BUG_ON("unimplemented");
+}
+
+void pirq_set_affinity(struct domain *d, int pirq, const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+hw_irq_controller no_irq_type = {
+    .typename = "none",
+    .startup = irq_startup_none,
+    .shutdown = irq_shutdown_none,
+    .enable = irq_enable_none,
+    .disable = irq_disable_none,
+};
+
+int arch_init_one_irq_desc(struct irq_desc *desc)
+{
+    BUG_ON("unimplemented");
+}
+
+void smp_send_state_dump(unsigned int cpu)
+{
+    BUG_ON("unimplemented");
+}
+
+/* domain.c */
+
+DEFINE_PER_CPU(struct vcpu *, curr_vcpu);
+unsigned long __per_cpu_offset[NR_CPUS];
+
+void context_switch(struct vcpu *prev, struct vcpu *next)
+{
+    BUG_ON("unimplemented");
+}
+
+void continue_running(struct vcpu *same)
+{
+    BUG_ON("unimplemented");
+}
+
+void sync_local_execstate(void)
+{
+    BUG_ON("unimplemented");
+}
+
+void sync_vcpu_execstate(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void startup_cpu_idle_loop(void)
+{
+    BUG_ON("unimplemented");
+}
+
+void free_domain_struct(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void dump_pageframe_info(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void free_vcpu_struct(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_vcpu_create(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_vcpu_destroy(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_switch_to_aarch64_mode(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_domain_create(struct domain *d,
+                       struct xen_domctl_createdomain *config,
+                       unsigned int flags)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_domain_teardown(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_destroy(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_shutdown(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_pause(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_unpause(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_domain_soft_reset(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_creation_finished(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_set_info_guest(struct vcpu *v, vcpu_guest_context_u c)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_initialise_vcpu(struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_vcpu_reset(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+int domain_relinquish_resources(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_dump_domain_info(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_dump_vcpu_info(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_mark_events_pending(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_update_evtchn_irq(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_block_unless_event_pending(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_kick(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+struct domain *alloc_domain_struct(void)
+{
+    BUG_ON("unimplemented");
+}
+
+struct vcpu *alloc_vcpu_struct(const struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+unsigned long
+hypercall_create_continuation(unsigned int op, const char *format, ...)
+{
+    BUG_ON("unimplemented");
+}
+
+int __init parse_arch_dom0_param(const char *s, const char *e)
+{
+    BUG_ON("unimplemented");
+}
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 18:36:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 18:36:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600737.936509 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg8F7-0004gv-6n; Tue, 12 Sep 2023 18:36:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600737.936509; Tue, 12 Sep 2023 18:36:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg8F7-0004gV-1T; Tue, 12 Sep 2023 18:36:09 +0000
Received: by outflank-mailman (input) for mailman id 600737;
 Tue, 12 Sep 2023 18:36:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=YY/q=E4=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qg8F5-0004Nn-U8
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 18:36:08 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3a9b7057-519b-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 20:36:04 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id BE27782869AC;
 Tue, 12 Sep 2023 13:36:03 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id sqskCFNCL54w; Tue, 12 Sep 2023 13:36:01 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 6C2BB8285940;
 Tue, 12 Sep 2023 13:36:01 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id XjkJ1UzSMIvD; Tue, 12 Sep 2023 13:36:01 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 217568286995;
 Tue, 12 Sep 2023 13:36:01 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3a9b7057-519b-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 6C2BB8285940
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694543761; bh=goJyBtkG12OgwiJOsH41TdXlAtVNZrmD5X4/UV0uixs=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=Gv6OrT+ksXaNqboSOdfzfMMxAGiyF/EpJXRjEOpPZyKZYfleuontl2enPuDAptFl6
	 4f7/GgZ6XvnHeGMvPt1aPP/kNnGTFsuZM6gxK00mP4NvxDThi77HZBedh36PrNNv/F
	 pk0wV04Ol1GHlFYYk8S/MDGfxa0y1O1LywyRID3A=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v5 2/5] xen/ppc: Implement bitops.h
Date: Tue, 12 Sep 2023 13:35:51 -0500
Message-Id: <06892692342540b6dc1af4d530fe3c2c25cf4a2e.1694543103.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694543103.git.sanastasio@raptorengineering.com>
References: <cover.1694543103.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Implement bitops.h, based on Linux's implementation as of commit
5321d1b1afb9a17302c6cec79f0cbf823eb0d3fc. Though it is based off of
Linux's implementation, this code diverges significantly in a number of
ways:
  - Bitmap entries changed to 32-bit words to match X86 and Arm on Xen
  - PPC32-specific code paths dropped
  - Formatting completely re-done to more closely line up with Xen.
    Including 4 space indentation.
  - Use GCC's __builtin_popcount* for hweight* implementation

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
v5:
  - Switch lingering ulong bitop parameters/return values to uint.

v4:
  - Mention __builtin_popcount impelmentation of hweight* in message
  - Change type of BITOP_MASK expression from unsigned long to unsigned
    int
  - Fix remaining underscore-prefixed macro params/vars
  - Fix line wrapping in test_and_clear_bit{,s}
  - Change type of test_and_clear_bits' pointer parameter from void *
    to unsigned int *. This was already done for other functions but
    missed here.
  - De-macroize test_and_set_bits.
  - Fix formatting of ffs{,l} macro's unary operators
  - Drop extra blank in ffz() macro definition

v3:
  - Fix style of inline asm blocks.
  - Fix underscore-prefixed macro parameters/variables
  - Use __builtin_popcount for hweight* implementation
  - Update C functions to use proper Xen coding style

v2:
  - Clarify changes from Linux implementation in commit message
  - Use PPC_ATOMIC_{ENTRY,EXIT}_BARRIER macros from <asm/memory.h> instead
    of hardcoded "sync" instructions in inline assembly blocks.
  - Fix macro line-continuing backslash spacing
  - Fix hard-tab usage in find_*_bit C functions.

 xen/arch/ppc/include/asm/bitops.h | 332 +++++++++++++++++++++++++++++-
 1 file changed, 329 insertions(+), 3 deletions(-)

diff --git a/xen/arch/ppc/include/asm/bitops.h b/xen/arch/ppc/include/asm/bitops.h
index 548e97b414..0f75ff3f9d 100644
--- a/xen/arch/ppc/include/asm/bitops.h
+++ b/xen/arch/ppc/include/asm/bitops.h
@@ -1,9 +1,335 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Adapted from Linux's arch/powerpc/include/asm/bitops.h.
+ *
+ * Merged version by David Gibson <david@gibson.dropbear.id.au>.
+ * Based on ppc64 versions by: Dave Engebretsen, Todd Inglett, Don
+ * Reed, Pat McCarthy, Peter Bergner, Anton Blanchard.  They
+ * originally took it from the ppc32 code.
+ */
 #ifndef _ASM_PPC_BITOPS_H
 #define _ASM_PPC_BITOPS_H

+#include <asm/memory.h>
+
+#define __set_bit(n, p)         set_bit(n, p)
+#define __clear_bit(n, p)       clear_bit(n, p)
+
+#define BITOP_BITS_PER_WORD     32
+#define BITOP_MASK(nr)          (1U << ((nr) % BITOP_BITS_PER_WORD))
+#define BITOP_WORD(nr)          ((nr) / BITOP_BITS_PER_WORD)
+#define BITS_PER_BYTE           8
+
 /* PPC bit number conversion */
-#define PPC_BITLSHIFT(be)	(BITS_PER_LONG - 1 - (be))
-#define PPC_BIT(bit)		(1UL << PPC_BITLSHIFT(bit))
-#define PPC_BITMASK(bs, be)	((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
+#define PPC_BITLSHIFT(be)    (BITS_PER_LONG - 1 - (be))
+#define PPC_BIT(bit)         (1UL << PPC_BITLSHIFT(bit))
+#define PPC_BITMASK(bs, be)  ((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
+
+/* Macro for generating the ***_bits() functions */
+#define DEFINE_BITOP(fn, op, prefix)                                           \
+static inline void fn(unsigned int mask,                                      \
+                      volatile unsigned int *p_)                               \
+{                                                                              \
+    unsigned int old;                                                         \
+    unsigned int *p = (unsigned int *)p_;                                      \
+    asm volatile ( prefix                                                      \
+                   "1: lwarx %0,0,%3,0\n"                                      \
+                   #op "%I2 %0,%0,%2\n"                                        \
+                   "stwcx. %0,0,%3\n"                                          \
+                   "bne- 1b\n"                                                 \
+                   : "=&r" (old), "+m" (*p)                                    \
+                   : "rK" (mask), "r" (p)                                      \
+                   : "cc", "memory" );                                         \
+}
+
+DEFINE_BITOP(set_bits, or, "")
+DEFINE_BITOP(change_bits, xor, "")
+
+#define DEFINE_CLROP(fn, prefix)                                               \
+static inline void fn(unsigned int mask, volatile unsigned int *p_)           \
+{                                                                              \
+    unsigned int old;                                                         \
+    unsigned int *p = (unsigned int *)p_;                                      \
+    asm volatile ( prefix                                                      \
+                   "1: lwarx %0,0,%3,0\n"                                      \
+                   "andc %0,%0,%2\n"                                           \
+                   "stwcx. %0,0,%3\n"                                          \
+                   "bne- 1b\n"                                                 \
+                   : "=&r" (old), "+m" (*p)                                    \
+                   : "r" (mask), "r" (p)                                       \
+                   : "cc", "memory" );                                         \
+}
+
+DEFINE_CLROP(clear_bits, "")
+
+static inline void set_bit(int nr, volatile void *addr)
+{
+    set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
+}
+static inline void clear_bit(int nr, volatile void *addr)
+{
+    clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
+}
+
+/**
+ * test_bit - Determine whether a bit is set
+ * @nr: bit number to test
+ * @addr: Address to start counting from
+ */
+static inline int test_bit(int nr, const volatile void *addr)
+{
+    const volatile unsigned int *p = addr;
+    return 1 & (p[BITOP_WORD(nr)] >> (nr & (BITOP_BITS_PER_WORD - 1)));
+}
+
+static inline unsigned int test_and_clear_bits(
+    unsigned int mask,
+    volatile unsigned int *p)
+{
+    unsigned int old, t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%3,0\n"
+                   "andc %1,%0,%2\n"
+                   "stwcx. %1,0,%3\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (old), "=&r" (t)
+                   : "r" (mask), "r" (p)
+                   : "cc", "memory" );
+
+    return (old & mask);
+}
+
+static inline int test_and_clear_bit(unsigned int nr,
+                                     volatile void *addr)
+{
+    return test_and_clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr +
+                               BITOP_WORD(nr)) != 0;
+}
+
+static inline unsigned int test_and_set_bits(
+    unsigned int mask,
+    volatile unsigned int *p)
+{
+    unsigned int old, t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%3,0\n"
+                   "or%I2 %1,%0,%2\n"
+                   "stwcx. %1,0,%3\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (old), "=&r" (t)
+                   : "rK" (mask), "r" (p)
+                   : "cc", "memory" );
+
+    return (old & mask);
+}
+
+static inline int test_and_set_bit(unsigned int nr, volatile void *addr)
+{
+    return test_and_set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr +
+                                             BITOP_WORD(nr)) != 0;
+}
+
+/**
+ * __test_and_set_bit - Set a bit and return its old value
+ * @nr: Bit to set
+ * @addr: Address to count from
+ *
+ * This operation is non-atomic and can be reordered.
+ * If two examples of this operation race, one can appear to succeed
+ * but actually fail.  You must protect multiple accesses with a lock.
+ */
+static inline int __test_and_set_bit(int nr, volatile void *addr)
+{
+    unsigned int mask = BITOP_MASK(nr);
+    volatile unsigned int *p = ((volatile unsigned int *)addr) + BITOP_WORD(nr);
+    unsigned int old = *p;
+
+    *p = old | mask;
+    return (old & mask) != 0;
+}
+
+/**
+ * __test_and_clear_bit - Clear a bit and return its old value
+ * @nr: Bit to clear
+ * @addr: Address to count from
+ *
+ * This operation is non-atomic and can be reordered.
+ * If two examples of this operation race, one can appear to succeed
+ * but actually fail.  You must protect multiple accesses with a lock.
+ */
+static inline int __test_and_clear_bit(int nr, volatile void *addr)
+{
+    unsigned int mask = BITOP_MASK(nr);
+    volatile unsigned int *p = ((volatile unsigned int *)addr) + BITOP_WORD(nr);
+    unsigned int old = *p;
+
+    *p = old & ~mask;
+    return (old & mask) != 0;
+}
+
+#define flsl(x) generic_flsl(x)
+#define fls(x) generic_fls(x)
+#define ffs(x) ({ unsigned int t_ = (x); fls(t_ & -t_); })
+#define ffsl(x) ({ unsigned long t_ = (x); flsl(t_ & -t_); })
+
+/* Based on linux/include/asm-generic/bitops/ffz.h */
+/*
+ * ffz - find first zero in word.
+ * @word: The word to search
+ *
+ * Undefined if no zero exists, so code should check against ~0UL first.
+ */
+#define ffz(x) __ffs(~(x))
+
+/**
+ * hweightN - returns the hamming weight of a N-bit word
+ * @x: the word to weigh
+ *
+ * The Hamming Weight of a number is the total number of bits set in it.
+ */
+#define hweight64(x) __builtin_popcountll(x)
+#define hweight32(x) __builtin_popcount(x)
+#define hweight16(x) __builtin_popcount((uint16_t)(x))
+#define hweight8(x)  __builtin_popcount((uint8_t)(x))
+
+/* Based on linux/include/asm-generic/bitops/builtin-__ffs.h */
+/**
+ * __ffs - find first bit in word.
+ * @word: The word to search
+ *
+ * Undefined if no bit exists, so code should check against 0 first.
+ */
+static always_inline unsigned long __ffs(unsigned long word)
+{
+    return __builtin_ctzl(word);
+}
+
+/**
+ * find_first_set_bit - find the first set bit in @word
+ * @word: the word to search
+ *
+ * Returns the bit-number of the first set bit (first bit being 0).
+ * The input must *not* be zero.
+ */
+#define find_first_set_bit(x) (ffsl(x) - 1)
+
+/*
+ * Find the first set bit in a memory region.
+ */
+static inline unsigned long find_first_bit(const unsigned long *addr,
+                                           unsigned long size)
+{
+    const unsigned long *p = addr;
+    unsigned long result = 0;
+    unsigned long tmp;
+
+    while ( size & ~(BITS_PER_LONG - 1) )
+    {
+        if ( (tmp = *(p++)) )
+            goto found;
+        result += BITS_PER_LONG;
+        size -= BITS_PER_LONG;
+    }
+    if ( !size )
+        return result;
+
+    tmp = (*p) & (~0UL >> (BITS_PER_LONG - size));
+    if ( tmp == 0UL )         /* Are any bits set? */
+        return result + size; /* Nope. */
+ found:
+    return result + __ffs(tmp);
+}
+
+static inline unsigned long find_next_bit(const unsigned long *addr,
+                                          unsigned long size,
+                                          unsigned long offset)
+{
+    const unsigned long *p = addr + BITOP_WORD(offset);
+    unsigned long result = offset & ~(BITS_PER_LONG - 1);
+    unsigned long tmp;
+
+    if ( offset >= size )
+        return size;
+    size -= result;
+    offset %= BITS_PER_LONG;
+    if ( offset )
+    {
+        tmp = *(p++);
+        tmp &= (~0UL << offset);
+        if ( size < BITS_PER_LONG )
+            goto found_first;
+        if ( tmp )
+            goto found_middle;
+        size -= BITS_PER_LONG;
+        result += BITS_PER_LONG;
+    }
+    while ( size & ~(BITS_PER_LONG - 1) )
+    {
+        if ( (tmp = *(p++)) )
+            goto found_middle;
+        result += BITS_PER_LONG;
+        size -= BITS_PER_LONG;
+    }
+    if ( !size )
+        return result;
+    tmp = *p;
+
+ found_first:
+    tmp &= (~0UL >> (BITS_PER_LONG - size));
+    if ( tmp == 0UL )         /* Are any bits set? */
+        return result + size; /* Nope. */
+ found_middle:
+    return result + __ffs(tmp);
+}
+
+/*
+ * This implementation of find_{first,next}_zero_bit was stolen from
+ * Linus' asm-alpha/bitops.h.
+ */
+static inline unsigned long find_next_zero_bit(const unsigned long *addr,
+                                               unsigned long size,
+                                               unsigned long offset)
+{
+    const unsigned long *p = addr + BITOP_WORD(offset);
+    unsigned long result = offset & ~(BITS_PER_LONG - 1);
+    unsigned long tmp;
+
+    if ( offset >= size )
+        return size;
+    size -= result;
+    offset %= BITS_PER_LONG;
+    if ( offset )
+    {
+        tmp = *(p++);
+        tmp |= ~0UL >> (BITS_PER_LONG - offset);
+        if ( size < BITS_PER_LONG )
+            goto found_first;
+        if ( ~tmp )
+            goto found_middle;
+        size -= BITS_PER_LONG;
+        result += BITS_PER_LONG;
+    }
+    while ( size & ~(BITS_PER_LONG - 1) )
+    {
+        if ( ~(tmp = *(p++)) )
+            goto found_middle;
+        result += BITS_PER_LONG;
+        size -= BITS_PER_LONG;
+    }
+    if ( !size )
+        return result;
+    tmp = *p;
+
+ found_first:
+    tmp |= ~0UL << size;
+    if ( tmp == ~0UL )        /* Are any bits zero? */
+        return result + size; /* Nope. */
+ found_middle:
+    return result + ffz(tmp);
+}

 #endif /* _ASM_PPC_BITOPS_H */
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 18:36:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 18:36:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600738.936523 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg8F8-0005AR-Ei; Tue, 12 Sep 2023 18:36:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600738.936523; Tue, 12 Sep 2023 18:36:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg8F8-0005AC-BH; Tue, 12 Sep 2023 18:36:10 +0000
Received: by outflank-mailman (input) for mailman id 600738;
 Tue, 12 Sep 2023 18:36:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=YY/q=E4=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qg8F6-0004Nn-UC
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 18:36:08 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3ad72a20-519b-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 20:36:05 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 34E8E8285940;
 Tue, 12 Sep 2023 13:36:04 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id wiCnQFjRUYTc; Tue, 12 Sep 2023 13:36:03 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id CB83A828588C;
 Tue, 12 Sep 2023 13:36:02 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id G-6wvpSRwke5; Tue, 12 Sep 2023 13:36:02 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 5489882869AC;
 Tue, 12 Sep 2023 13:36:02 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3ad72a20-519b-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com CB83A828588C
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694543762; bh=cF5IvHr5u7imGadcwYNiu5y563SLZGH4suAc9S6xZk0=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=sRurfK0c/cp+pmQdGiETrI7rVpVS3xanOQQqk86LrHVno6CDvUHZWxe+OXpg0/w5S
	 xOseXb95hE87vAwsi+mIfErvx98ChQw2f5VnT5zUpvyPdsZIAOj2ffpQknGzlaZKDz
	 18dQIUmIMGwTix7YCkDDdnYAWgi7y3vX7/eiFAbY=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v5 5/5] xen/ppc: Enable full Xen build
Date: Tue, 12 Sep 2023 13:35:54 -0500
Message-Id: <98a4fe2a4a2aee0a33b6b2110cd6ee906d4e0fe1.1694543103.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694543103.git.sanastasio@raptorengineering.com>
References: <cover.1694543103.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Bring ppc's Makefile and arch.mk in line with arm and x86 to disable the
build overrides and enable the full Xen build.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
 xen/arch/ppc/Makefile | 16 +++++++++++++++-
 xen/arch/ppc/arch.mk  |  3 ---
 2 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile
index 6d5569ff64..71feb5e2c4 100644
--- a/xen/arch/ppc/Makefile
+++ b/xen/arch/ppc/Makefile
@@ -11,10 +11,24 @@ $(TARGET): $(TARGET)-syms
 	cp -f $< $@
 
 $(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds
-	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) -o $@
+	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< \
+	    $(objtree)/common/symbols-dummy.o -o $(dot-target).0
+	$(NM) -pa --format=sysv $(dot-target).0 \
+		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
+		> $(dot-target).0.S
+	$(MAKE) $(build)=$(@D) $(dot-target).0.o
+	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< \
+	    $(dot-target).0.o -o $(dot-target).1
+	$(NM) -pa --format=sysv $(dot-target).1 \
+		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
+		> $(dot-target).1.S
+	$(MAKE) $(build)=$(@D) $(dot-target).1.o
+	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) \
+	    $(dot-target).1.o -o $@
 	$(NM) -pa --format=sysv $@ \
 		| $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \
 		> $@.map
+	rm -f $(@D)/.$(@F).[0-9]*
 
 $(obj)/xen.lds: $(src)/xen.lds.S FORCE
 	$(call if_changed_dep,cpp_lds_S)
diff --git a/xen/arch/ppc/arch.mk b/xen/arch/ppc/arch.mk
index d05cbf1df5..917ad0e6a8 100644
--- a/xen/arch/ppc/arch.mk
+++ b/xen/arch/ppc/arch.mk
@@ -7,6 +7,3 @@ CFLAGS += -m64 -mlittle-endian -mcpu=$(ppc-march-y)
 CFLAGS += -mstrict-align -mcmodel=medium -mabi=elfv2 -fPIC -mno-altivec -mno-vsx -msoft-float
 
 LDFLAGS += -m elf64lppc
-
-# TODO: Drop override when more of the build is working
-override ALL_OBJS-y = arch/$(SRCARCH)/built_in.o common/libfdt/built_in.o lib/built_in.o
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 18:36:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 18:36:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600740.936544 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg8FB-0005kQ-BW; Tue, 12 Sep 2023 18:36:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600740.936544; Tue, 12 Sep 2023 18:36:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg8FB-0005jr-5v; Tue, 12 Sep 2023 18:36:13 +0000
Received: by outflank-mailman (input) for mailman id 600740;
 Tue, 12 Sep 2023 18:36:11 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=YY/q=E4=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qg8F9-0004Nn-I5
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 18:36:11 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3cc9a031-519b-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 20:36:08 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 6D8E38285940;
 Tue, 12 Sep 2023 13:36:07 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id lJFKHikrGsn2; Tue, 12 Sep 2023 13:36:02 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 5CA7782869BB;
 Tue, 12 Sep 2023 13:36:02 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id R2fAsnRtY2PX; Tue, 12 Sep 2023 13:36:01 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 6C469828697F;
 Tue, 12 Sep 2023 13:36:01 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3cc9a031-519b-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 5CA7782869BB
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694543762; bh=PX7xHZdY1d7Hj4fGYgq7uLDSEsTlEE+5Tz5Mjeh+Jwk=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=BPSmtBSHUdpasLv83Zlghyu2zWxzMfBIVRmcGCon0ZxTQaQ2KqVoxnIi8f/rgFknF
	 LPNkoEFBSyXD50dddADhS+cg9ADuzfmTZz2LPfDx8UhK+tazf6r3cV4Gh2EZtOY4GX
	 e3EpVv/jbmRCQyuhS8vN/PsTrxgzRM40yvDat1T0=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>
Subject: [PATCH v5 3/5] xen/ppc: Define minimal stub headers required for full build
Date: Tue, 12 Sep 2023 13:35:52 -0500
Message-Id: <9f11482dbcd1eb345c4976763204a086e7f59b97.1694543103.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694543103.git.sanastasio@raptorengineering.com>
References: <cover.1694543103.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Additionally, change inclusion of asm/ headers to corresponding xen/ ones
throughout arch/ppc now that they work.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
v5:
  - Drop vm_event.h in favor of asm-generic variant
  - (numa.h) Fix lingering reference to Arm

v4:
  - (device.h) Fix underscore prefixes in DT_DEVICE_START macro
  - (mm.h) Fix padding blanks in newly added *_to_* macros
  - (mm.h) Drop inaccurate comment for virt_to_mfn/mfn_to_virt. The
    implementation of these macros remains unchanged.
  - (mm.h) s/zero/NULL/g in comment of page_info::v::inuse::domain
  - (mm.h) Use uint<N>_t instead of u<N> types in struct page_info
  - (p2m.h) Drop ARM-specific p2m_type_t enumerations
  - (system.h) Fix hard tabs in xchg() macro
  - (system.h) Add missing '\n' in build_xchg inline assembly before
    PPC_ATOMIC_EXIT_BARRIER.
  - (system.h) Fix formatting of switch statements.
  - (system.h) Fix formatting of cmpxchg() macro.
  - (system.h) Fix formatting of mb/rmb/wmb macros
  - (system.h) Drop dead !CONFIG_SMP definition of smp memory barriers
  - (system.h) Replace hand-coded asm memory barriers w/ barrier()
  - (time.h) Fix overly-long definition of force_update_vcpu_system_time

v3:
  - Drop procarea.h
  - Add SPDX headers to all headers touched or added by this patch
  - (altp2m.h) Use ASSERT_UNREACHABLE for function that is meant to
    stay unimplemented
  - (current.h) Consistently use plain C types in struct cpu_info
  - (current.h) Fix formatting of inline asm in get_cpu_info()
  - (device.h) Drop unnecessary DEVICE_GIC enumeration inherited from
    ARM
  - (div64.h) Drop underscore-prefixed macro variables, fix formatting
  - (domain.h) Drop unnecessary space after cast in guest_mode()
  - (guest_access.h) Clean up line wrapping of functions w/ many
    parameters
  - (guest_atomics.h) Avoid overly-long stub macros
  - (grant_table.h) Add include guard + SPDX
  - (hypercall.h) Add include guard + SPDX
  - (mem_access.h) Add include guard + SPDX
  - (mm.h) BUG_ON("unimplemented") for mfn_to_gfn/set_gpfn_from_mfn
  - (mm.h) Define PDX_GROUP_SHIFT in terms of XEN_PT_SHIFT_LVL_3
  - (monitor.h) BUG_ON("unimplemented") for arch_monitor_get_capabilities
  - (system.h) Fix formatting of inline assembly + macros
  - (time.h) Fix too-deep indentation

v2:
  - Use BUG_ON("unimplemented") instead of BUG() for unimplemented functions
    to make searching easier.
  - (altp2m.h) Drop Intel license in favor of an SPDX header
  - (altp2m.h) Drop <xen/sched.h> include in favor of <xen/bug.h> and
    forward declarations of struct domain and struct vcpu.
  - (bug.h) Add TODO comments above BUG and BUG_FRAME implementations
  - (desc.h) Drop desc.h
  - (mm.h) Drop <asm/config.h> include
  - (mm.h) Drop PGC_static definition
  - (mm.h) Drop max_page definition
  - (mm.h/mm-radix.c) Drop total_pages definition
  - (monitor.h) Drop <xen/sched.h> and <public/domctl.h> includes in favor
    of just <xen/errno.h>
  - (page.h) Drop PAGE_ALIGN definition
  - (percpu.h) Drop <xen/types.h> include
  - (procarea.h) Drop license text in favor of SPDX header
  - (procarea.h) Drop unnecessary forward declarations and <xen/types.h>
    include
  - (processor.h) Fix macro parameter naming (drop leading underscore)
  - (processor.h) Add explanation comment to cpu_relax()
  - (regs.h) Drop stray hunk adding <xen/types.h> include
  - (system.h) Drop license text in favor of SPDX header
  - (system.h) Drop <xen/config.h> include
  - (opal.c) Drop stray hunk changing opal.c includes

 xen/arch/ppc/Kconfig                     |   1 +
 xen/arch/ppc/include/asm/Makefile        |   2 +
 xen/arch/ppc/include/asm/altp2m.h        |  25 +++
 xen/arch/ppc/include/asm/bug.h           |   9 +
 xen/arch/ppc/include/asm/cache.h         |   2 +
 xen/arch/ppc/include/asm/config.h        |  10 +
 xen/arch/ppc/include/asm/cpufeature.h    |  10 +
 xen/arch/ppc/include/asm/current.h       |  43 ++++
 xen/arch/ppc/include/asm/delay.h         |  12 ++
 xen/arch/ppc/include/asm/device.h        |  53 +++++
 xen/arch/ppc/include/asm/div64.h         |  14 ++
 xen/arch/ppc/include/asm/domain.h        |  47 +++++
 xen/arch/ppc/include/asm/event.h         |  36 ++++
 xen/arch/ppc/include/asm/flushtlb.h      |  24 +++
 xen/arch/ppc/include/asm/grant_table.h   |   5 +
 xen/arch/ppc/include/asm/guest_access.h  |  68 +++++++
 xen/arch/ppc/include/asm/guest_atomics.h |  23 +++
 xen/arch/ppc/include/asm/hardirq.h       |  19 ++
 xen/arch/ppc/include/asm/hypercall.h     |   5 +
 xen/arch/ppc/include/asm/io.h            |  16 ++
 xen/arch/ppc/include/asm/iocap.h         |   8 +
 xen/arch/ppc/include/asm/iommu.h         |   8 +
 xen/arch/ppc/include/asm/irq.h           |  33 +++
 xen/arch/ppc/include/asm/mem_access.h    |   5 +
 xen/arch/ppc/include/asm/mm.h            | 243 ++++++++++++++++++++++-
 xen/arch/ppc/include/asm/monitor.h       |  43 ++++
 xen/arch/ppc/include/asm/nospec.h        |  15 ++
 xen/arch/ppc/include/asm/numa.h          |  26 +++
 xen/arch/ppc/include/asm/p2m.h           |  95 +++++++++
 xen/arch/ppc/include/asm/page.h          |  18 ++
 xen/arch/ppc/include/asm/paging.h        |   7 +
 xen/arch/ppc/include/asm/pci.h           |   7 +
 xen/arch/ppc/include/asm/percpu.h        |  24 +++
 xen/arch/ppc/include/asm/processor.h     |  10 +
 xen/arch/ppc/include/asm/random.h        |   9 +
 xen/arch/ppc/include/asm/setup.h         |   6 +
 xen/arch/ppc/include/asm/smp.h           |  18 ++
 xen/arch/ppc/include/asm/softirq.h       |   8 +
 xen/arch/ppc/include/asm/spinlock.h      |  15 ++
 xen/arch/ppc/include/asm/system.h        | 219 +++++++++++++++++++-
 xen/arch/ppc/include/asm/time.h          |  23 +++
 xen/arch/ppc/include/asm/xenoprof.h      |   0
 xen/arch/ppc/mm-radix.c                  |   2 +-
 xen/arch/ppc/tlb-radix.c                 |   2 +-
 xen/include/public/hvm/save.h            |   2 +
 xen/include/public/pmu.h                 |   2 +
 xen/include/public/xen.h                 |   2 +
 47 files changed, 1270 insertions(+), 4 deletions(-)
 create mode 100644 xen/arch/ppc/include/asm/Makefile
 create mode 100644 xen/arch/ppc/include/asm/altp2m.h
 create mode 100644 xen/arch/ppc/include/asm/cpufeature.h
 create mode 100644 xen/arch/ppc/include/asm/current.h
 create mode 100644 xen/arch/ppc/include/asm/delay.h
 create mode 100644 xen/arch/ppc/include/asm/device.h
 create mode 100644 xen/arch/ppc/include/asm/div64.h
 create mode 100644 xen/arch/ppc/include/asm/domain.h
 create mode 100644 xen/arch/ppc/include/asm/event.h
 create mode 100644 xen/arch/ppc/include/asm/flushtlb.h
 create mode 100644 xen/arch/ppc/include/asm/grant_table.h
 create mode 100644 xen/arch/ppc/include/asm/guest_access.h
 create mode 100644 xen/arch/ppc/include/asm/guest_atomics.h
 create mode 100644 xen/arch/ppc/include/asm/hardirq.h
 create mode 100644 xen/arch/ppc/include/asm/hypercall.h
 create mode 100644 xen/arch/ppc/include/asm/io.h
 create mode 100644 xen/arch/ppc/include/asm/iocap.h
 create mode 100644 xen/arch/ppc/include/asm/iommu.h
 create mode 100644 xen/arch/ppc/include/asm/irq.h
 create mode 100644 xen/arch/ppc/include/asm/mem_access.h
 create mode 100644 xen/arch/ppc/include/asm/monitor.h
 create mode 100644 xen/arch/ppc/include/asm/nospec.h
 create mode 100644 xen/arch/ppc/include/asm/numa.h
 create mode 100644 xen/arch/ppc/include/asm/p2m.h
 create mode 100644 xen/arch/ppc/include/asm/paging.h
 create mode 100644 xen/arch/ppc/include/asm/pci.h
 create mode 100644 xen/arch/ppc/include/asm/percpu.h
 create mode 100644 xen/arch/ppc/include/asm/random.h
 create mode 100644 xen/arch/ppc/include/asm/setup.h
 create mode 100644 xen/arch/ppc/include/asm/smp.h
 create mode 100644 xen/arch/ppc/include/asm/softirq.h
 create mode 100644 xen/arch/ppc/include/asm/spinlock.h
 create mode 100644 xen/arch/ppc/include/asm/time.h
 create mode 100644 xen/arch/ppc/include/asm/xenoprof.h

diff --git a/xen/arch/ppc/Kconfig b/xen/arch/ppc/Kconfig
index ab116ffb2a..a6eae597af 100644
--- a/xen/arch/ppc/Kconfig
+++ b/xen/arch/ppc/Kconfig
@@ -1,6 +1,7 @@
 config PPC
 	def_bool y
 	select HAS_DEVICE_TREE
+	select HAS_PDX

 config PPC64
 	def_bool y
diff --git a/xen/arch/ppc/include/asm/Makefile b/xen/arch/ppc/include/asm/Makefile
new file mode 100644
index 0000000000..821addb0bf
--- /dev/null
+++ b/xen/arch/ppc/include/asm/Makefile
@@ -0,0 +1,2 @@
+# SPDX-License-Identifier: GPL-2.0-only
+generic-y += vm_event.h
diff --git a/xen/arch/ppc/include/asm/altp2m.h b/xen/arch/ppc/include/asm/altp2m.h
new file mode 100644
index 0000000000..bd5c9aa415
--- /dev/null
+++ b/xen/arch/ppc/include/asm/altp2m.h
@@ -0,0 +1,25 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_ALTP2M_H__
+#define __ASM_PPC_ALTP2M_H__
+
+#include <xen/bug.h>
+
+struct domain;
+struct vcpu;
+
+/* Alternate p2m on/off per domain */
+static inline bool altp2m_active(const struct domain *d)
+{
+    /* Not implemented on PPC. */
+    return false;
+}
+
+/* Alternate p2m VCPU */
+static inline uint16_t altp2m_vcpu_idx(const struct vcpu *v)
+{
+    /* Not implemented on PPC, should not be reached. */
+    ASSERT_UNREACHABLE();
+    return 0;
+}
+
+#endif /* __ASM_PPC_ALTP2M_H__ */
diff --git a/xen/arch/ppc/include/asm/bug.h b/xen/arch/ppc/include/asm/bug.h
index e5e874b31c..35d4568402 100644
--- a/xen/arch/ppc/include/asm/bug.h
+++ b/xen/arch/ppc/include/asm/bug.h
@@ -4,6 +4,7 @@
 #define _ASM_PPC_BUG_H

 #include <xen/stringify.h>
+#include <asm/processor.h>

 /*
  * Power ISA guarantees that an instruction consisting of all zeroes is
@@ -15,4 +16,12 @@

 #define BUG_FN_REG r0

+/* TODO: implement this properly */
+#define BUG() do { \
+    die(); \
+} while (0)
+
+/* TODO: implement this properly */
+#define BUG_FRAME(type, line, ptr, second_frame, msg) do { } while (0)
+
 #endif /* _ASM_PPC_BUG_H */
diff --git a/xen/arch/ppc/include/asm/cache.h b/xen/arch/ppc/include/asm/cache.h
index 8a0a6b7b17..0d7323d789 100644
--- a/xen/arch/ppc/include/asm/cache.h
+++ b/xen/arch/ppc/include/asm/cache.h
@@ -3,4 +3,6 @@
 #ifndef _ASM_PPC_CACHE_H
 #define _ASM_PPC_CACHE_H

+#define __read_mostly __section(".data.read_mostly")
+
 #endif /* _ASM_PPC_CACHE_H */
diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm/config.h
index 30438d22d2..a11a09c570 100644
--- a/xen/arch/ppc/include/asm/config.h
+++ b/xen/arch/ppc/include/asm/config.h
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #ifndef __PPC_CONFIG_H__
 #define __PPC_CONFIG_H__

@@ -41,6 +42,15 @@

 #define XEN_VIRT_START _AC(0xc000000000000000, UL)

+#define VMAP_VIRT_START (XEN_VIRT_START + GB(1))
+#define VMAP_VIRT_SIZE  GB(1)
+
+#define FRAMETABLE_VIRT_START  (XEN_VIRT_START + GB(32))
+#define FRAMETABLE_SIZE        GB(32)
+#define FRAMETABLE_NR          (FRAMETABLE_SIZE / sizeof(*frame_table))
+
+#define HYPERVISOR_VIRT_START  XEN_VIRT_START
+
 #define SMP_CACHE_BYTES (1 << 6)

 #define STACK_ORDER 0
diff --git a/xen/arch/ppc/include/asm/cpufeature.h b/xen/arch/ppc/include/asm/cpufeature.h
new file mode 100644
index 0000000000..1c5946512b
--- /dev/null
+++ b/xen/arch/ppc/include/asm/cpufeature.h
@@ -0,0 +1,10 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_CPUFEATURE_H__
+#define __ASM_PPC_CPUFEATURE_H__
+
+static inline int cpu_nr_siblings(unsigned int cpu)
+{
+    return 1;
+}
+
+#endif /* __ASM_PPC_CPUFEATURE_H__ */
diff --git a/xen/arch/ppc/include/asm/current.h b/xen/arch/ppc/include/asm/current.h
new file mode 100644
index 0000000000..0ca06033f9
--- /dev/null
+++ b/xen/arch/ppc/include/asm/current.h
@@ -0,0 +1,43 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_CURRENT_H__
+#define __ASM_PPC_CURRENT_H__
+
+#include <xen/percpu.h>
+
+#ifndef __ASSEMBLY__
+
+struct vcpu;
+
+/* Which VCPU is "current" on this PCPU. */
+DECLARE_PER_CPU(struct vcpu *, curr_vcpu);
+
+#define current            (this_cpu(curr_vcpu))
+#define set_current(vcpu)  do { current = (vcpu); } while (0)
+#define get_cpu_current(cpu)  (per_cpu(curr_vcpu, cpu))
+
+/* Per-VCPU state that lives at the top of the stack */
+struct cpu_info {
+    struct cpu_user_regs guest_cpu_user_regs;
+    unsigned long elr;
+    unsigned int flags;
+};
+
+static inline struct cpu_info *get_cpu_info(void)
+{
+#ifdef __clang__
+    unsigned long sp;
+
+    asm ( "mr %0, 1" : "=r" (sp) );
+#else
+    register unsigned long sp asm ("r1");
+#endif
+
+    return (struct cpu_info *)((sp & ~(STACK_SIZE - 1)) +
+                               STACK_SIZE - sizeof(struct cpu_info));
+}
+
+#define guest_cpu_user_regs() (&get_cpu_info()->guest_cpu_user_regs)
+
+#endif /* __ASSEMBLY__ */
+
+#endif /* __ASM_PPC_CURRENT_H__ */
diff --git a/xen/arch/ppc/include/asm/delay.h b/xen/arch/ppc/include/asm/delay.h
new file mode 100644
index 0000000000..da6635888b
--- /dev/null
+++ b/xen/arch/ppc/include/asm/delay.h
@@ -0,0 +1,12 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DELAY_H__
+#define __ASM_PPC_DELAY_H__
+
+#include <xen/lib.h>
+
+static inline void udelay(unsigned long usecs)
+{
+    BUG_ON("unimplemented");
+}
+
+#endif /* __ASM_PPC_DELAY_H__ */
diff --git a/xen/arch/ppc/include/asm/device.h b/xen/arch/ppc/include/asm/device.h
new file mode 100644
index 0000000000..8253e61d51
--- /dev/null
+++ b/xen/arch/ppc/include/asm/device.h
@@ -0,0 +1,53 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DEVICE_H__
+#define __ASM_PPC_DEVICE_H__
+
+enum device_type
+{
+    DEV_DT,
+    DEV_PCI,
+};
+
+struct device {
+    enum device_type type;
+#ifdef CONFIG_HAS_DEVICE_TREE
+    struct dt_device_node *of_node; /* Used by drivers imported from Linux */
+#endif
+};
+
+enum device_class
+{
+    DEVICE_SERIAL,
+    DEVICE_IOMMU,
+    DEVICE_PCI_HOSTBRIDGE,
+    /* Use for error */
+    DEVICE_UNKNOWN,
+};
+
+struct device_desc {
+    /* Device name */
+    const char *name;
+    /* Device class */
+    enum device_class class;
+    /* List of devices supported by this driver */
+    const struct dt_device_match *dt_match;
+    /*
+     * Device initialization.
+     *
+     * -EAGAIN is used to indicate that device probing is deferred.
+     */
+    int (*init)(struct dt_device_node *dev, const void *data);
+};
+
+typedef struct device device_t;
+
+#define DT_DEVICE_START(name_, namestr_, class_)                    \
+static const struct device_desc __dev_desc_##name_ __used           \
+__section(".dev.info") = {                                          \
+    .name = namestr_,                                               \
+    .class = class_,                                                \
+
+#define DT_DEVICE_END                                               \
+};
+
+#endif /* __ASM_PPC_DEVICE_H__ */
diff --git a/xen/arch/ppc/include/asm/div64.h b/xen/arch/ppc/include/asm/div64.h
new file mode 100644
index 0000000000..d213e50585
--- /dev/null
+++ b/xen/arch/ppc/include/asm/div64.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DIV64_H__
+#define __ASM_PPC_DIV64_H__
+
+#include <xen/types.h>
+
+#define do_div(n, base) ({                       \
+    uint32_t base_ = (base);                     \
+    uint32_t rem_ = (uint64_t)(n) % base_;       \
+    (n) = (uint64_t)(n) / base_;                 \
+    rem_;                                        \
+})
+
+#endif /* __ASM_PPC_DIV64_H__ */
diff --git a/xen/arch/ppc/include/asm/domain.h b/xen/arch/ppc/include/asm/domain.h
new file mode 100644
index 0000000000..573276d0a8
--- /dev/null
+++ b/xen/arch/ppc/include/asm/domain.h
@@ -0,0 +1,47 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DOMAIN_H__
+#define __ASM_PPC_DOMAIN_H__
+
+#include <xen/xmalloc.h>
+#include <public/hvm/params.h>
+
+struct hvm_domain
+{
+    uint64_t              params[HVM_NR_PARAMS];
+};
+
+#define is_domain_direct_mapped(d) ((void)(d), 0)
+
+/* TODO: Implement */
+#define guest_mode(r) ({ (void)(r); BUG_ON("unimplemented"); 0; })
+
+struct arch_vcpu_io {
+};
+
+struct arch_vcpu {
+};
+
+struct arch_domain {
+    struct hvm_domain hvm;
+};
+
+#include <xen/sched.h>
+
+static inline struct vcpu_guest_context *alloc_vcpu_guest_context(void)
+{
+    return xmalloc(struct vcpu_guest_context);
+}
+
+static inline void free_vcpu_guest_context(struct vcpu_guest_context *vgc)
+{
+    xfree(vgc);
+}
+
+struct guest_memory_policy {};
+static inline void update_guest_memory_policy(struct vcpu *v,
+                                              struct guest_memory_policy *gmp)
+{}
+
+static inline void arch_vcpu_block(struct vcpu *v) {}
+
+#endif /* __ASM_PPC_DOMAIN_H__ */
diff --git a/xen/arch/ppc/include/asm/event.h b/xen/arch/ppc/include/asm/event.h
new file mode 100644
index 0000000000..1b95ee4f61
--- /dev/null
+++ b/xen/arch/ppc/include/asm/event.h
@@ -0,0 +1,36 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_EVENT_H__
+#define __ASM_PPC_EVENT_H__
+
+#include <xen/lib.h>
+
+/* TODO: implement */
+static inline void vcpu_kick(struct vcpu *v) { BUG_ON("unimplemented"); }
+static inline void vcpu_mark_events_pending(struct vcpu *v) { BUG_ON("unimplemented"); }
+static inline void vcpu_update_evtchn_irq(struct vcpu *v) { BUG_ON("unimplemented"); }
+static inline void vcpu_block_unless_event_pending(struct vcpu *v) { BUG_ON("unimplemented"); }
+
+static inline int vcpu_event_delivery_is_enabled(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+/* No arch specific virq definition now. Default to global. */
+static inline bool arch_virq_is_global(unsigned int virq)
+{
+    return true;
+}
+
+static inline int local_events_need_delivery(void)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+static inline void local_event_delivery_enable(void)
+{
+    BUG_ON("unimplemented");
+}
+
+#endif /* __ASM_PPC_EVENT_H__ */
diff --git a/xen/arch/ppc/include/asm/flushtlb.h b/xen/arch/ppc/include/asm/flushtlb.h
new file mode 100644
index 0000000000..afcb740783
--- /dev/null
+++ b/xen/arch/ppc/include/asm/flushtlb.h
@@ -0,0 +1,24 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_FLUSHTLB_H__
+#define __ASM_PPC_FLUSHTLB_H__
+
+#include <xen/cpumask.h>
+
+/*
+ * Filter the given set of CPUs, removing those that definitely flushed their
+ * TLB since @page_timestamp.
+ */
+/* XXX lazy implementation just doesn't clear anything.... */
+static inline void tlbflush_filter(cpumask_t *mask, uint32_t page_timestamp) {}
+
+#define tlbflush_current_time()                 (0)
+
+static inline void page_set_tlbflush_timestamp(struct page_info *page)
+{
+    page->tlbflush_timestamp = tlbflush_current_time();
+}
+
+/* Flush specified CPUs' TLBs */
+void arch_flush_tlb_mask(const cpumask_t *mask);
+
+#endif /* __ASM_PPC_FLUSHTLB_H__ */
diff --git a/xen/arch/ppc/include/asm/grant_table.h b/xen/arch/ppc/include/asm/grant_table.h
new file mode 100644
index 0000000000..d0ff58dd3d
--- /dev/null
+++ b/xen/arch/ppc/include/asm/grant_table.h
@@ -0,0 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_GRANT_TABLE_H__
+#define __ASM_PPC_GRANT_TABLE_H__
+
+#endif /* __ASM_PPC_GRANT_TABLE_H__ */
diff --git a/xen/arch/ppc/include/asm/guest_access.h b/xen/arch/ppc/include/asm/guest_access.h
new file mode 100644
index 0000000000..6546931911
--- /dev/null
+++ b/xen/arch/ppc/include/asm/guest_access.h
@@ -0,0 +1,68 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_GUEST_ACCESS_H__
+#define __ASM_PPC_GUEST_ACCESS_H__
+
+#include <xen/mm.h>
+
+/* TODO */
+
+static inline unsigned long raw_copy_to_guest(
+    void *to,
+    const void *from,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+static inline unsigned long raw_copy_to_guest_flush_dcache(
+    void *to,
+    const void *from,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+static inline unsigned long raw_copy_from_guest(
+    void *to,
+    const void *from,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+static inline unsigned long raw_clear_guest(void *to, unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+
+/* Copy data to guest physical address, then clean the region. */
+static inline unsigned long copy_to_guest_phys_flush_dcache(
+    struct domain *d,
+    paddr_t gpa,
+    void *buf,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+
+static inline int access_guest_memory_by_gpa(
+    struct domain *d,
+    paddr_t gpa,
+    void *buf,
+    uint32_t size,
+    bool is_write)
+{
+    BUG_ON("unimplemented");
+}
+
+
+#define __raw_copy_to_guest raw_copy_to_guest
+#define __raw_copy_from_guest raw_copy_from_guest
+#define __raw_clear_guest raw_clear_guest
+
+/*
+ * Pre-validate a guest handle.
+ * Allows use of faster __copy_* functions.
+ */
+/* All PPC guests are paging mode external and hence safe */
+#define guest_handle_okay(hnd, nr) (1)
+#define guest_handle_subrange_okay(hnd, first, last) (1)
+
+#endif /* __ASM_PPC_GUEST_ACCESS_H__ */
diff --git a/xen/arch/ppc/include/asm/guest_atomics.h b/xen/arch/ppc/include/asm/guest_atomics.h
new file mode 100644
index 0000000000..1190e10bbb
--- /dev/null
+++ b/xen/arch/ppc/include/asm/guest_atomics.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_GUEST_ATOMICS_H__
+#define __ASM_PPC_GUEST_ATOMICS_H__
+
+#include <xen/lib.h>
+
+/* TODO: implement */
+#define unimplemented_guest_bit_op(d, nr, p) ({                                \
+    (void)(d);                                                                 \
+    (void)(nr);                                                                \
+    (void)(p);                                                                 \
+    BUG_ON("unimplemented");                                                   \
+    false;                                                                     \
+})
+
+#define guest_test_bit(d, nr, p)            unimplemented_guest_bit_op(d, nr, p)
+#define guest_clear_bit(d, nr, p)           unimplemented_guest_bit_op(d, nr, p)
+#define guest_set_bit(d, nr, p)             unimplemented_guest_bit_op(d, nr, p)
+#define guest_test_and_set_bit(d, nr, p)    unimplemented_guest_bit_op(d, nr, p)
+#define guest_test_and_clear_bit(d, nr, p)  unimplemented_guest_bit_op(d, nr, p)
+#define guest_test_and_change_bit(d, nr, p) unimplemented_guest_bit_op(d, nr, p)
+
+#endif /* __ASM_PPC_GUEST_ATOMICS_H__ */
diff --git a/xen/arch/ppc/include/asm/hardirq.h b/xen/arch/ppc/include/asm/hardirq.h
new file mode 100644
index 0000000000..343efc7e69
--- /dev/null
+++ b/xen/arch/ppc/include/asm/hardirq.h
@@ -0,0 +1,19 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_HARDIRQ_H__
+#define __ASM_PPC_HARDIRQ_H__
+
+#include <xen/cache.h>
+
+typedef struct {
+        unsigned long __softirq_pending;
+        unsigned int __local_irq_count;
+} __cacheline_aligned irq_cpustat_t;
+
+#include <xen/irq_cpustat.h>    /* Standard mappings for irq_cpustat_t above */
+
+#define in_irq() (local_irq_count(smp_processor_id()) != 0)
+
+#define irq_enter()     (local_irq_count(smp_processor_id())++)
+#define irq_exit()      (local_irq_count(smp_processor_id())--)
+
+#endif /* __ASM_PPC_HARDIRQ_H__ */
diff --git a/xen/arch/ppc/include/asm/hypercall.h b/xen/arch/ppc/include/asm/hypercall.h
new file mode 100644
index 0000000000..1e8ca0ce9c
--- /dev/null
+++ b/xen/arch/ppc/include/asm/hypercall.h
@@ -0,0 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_HYPERCALL_H__
+#define __ASM_PPC_HYPERCALL_H__
+
+#endif /* __ASM_PPC_HYPERCALL_H__ */
diff --git a/xen/arch/ppc/include/asm/io.h b/xen/arch/ppc/include/asm/io.h
new file mode 100644
index 0000000000..85b5b27157
--- /dev/null
+++ b/xen/arch/ppc/include/asm/io.h
@@ -0,0 +1,16 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IO_H__
+#define __ASM_PPC_IO_H__
+
+#include <xen/lib.h>
+
+/* TODO */
+#define readb(c)        ({ (void)(c); BUG_ON("unimplemented"); 0; })
+#define readw(c)        ({ (void)(c); BUG_ON("unimplemented"); 0; })
+#define readl(c)        ({ (void)(c); BUG_ON("unimplemented"); 0; })
+
+#define writeb(v,c)     ({ (void)(v); (void)(c); BUG_ON("unimplemented"); })
+#define writew(v,c)     ({ (void)(v); (void)(c); BUG_ON("unimplemented"); })
+#define writel(v,c)     ({ (void)(v); (void)(c); BUG_ON("unimplemented"); })
+
+#endif /* __ASM_PPC_IO_H__ */
diff --git a/xen/arch/ppc/include/asm/iocap.h b/xen/arch/ppc/include/asm/iocap.h
new file mode 100644
index 0000000000..76bf13a70f
--- /dev/null
+++ b/xen/arch/ppc/include/asm/iocap.h
@@ -0,0 +1,8 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IOCAP_H__
+#define __ASM_PPC_IOCAP_H__
+
+#define cache_flush_permitted(d)                        \
+    (!rangeset_is_empty((d)->iomem_caps))
+
+#endif /* __ASM_PPC_IOCAP_H__ */
diff --git a/xen/arch/ppc/include/asm/iommu.h b/xen/arch/ppc/include/asm/iommu.h
new file mode 100644
index 0000000000..024ead3473
--- /dev/null
+++ b/xen/arch/ppc/include/asm/iommu.h
@@ -0,0 +1,8 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IOMMU_H__
+#define __ASM_PPC_IOMMU_H__
+
+struct arch_iommu {
+};
+
+#endif /* __ASM_PPC_IOMMU_H__ */
diff --git a/xen/arch/ppc/include/asm/irq.h b/xen/arch/ppc/include/asm/irq.h
new file mode 100644
index 0000000000..5c37d0cf25
--- /dev/null
+++ b/xen/arch/ppc/include/asm/irq.h
@@ -0,0 +1,33 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IRQ_H__
+#define __ASM_PPC_IRQ_H__
+
+#include <xen/lib.h>
+#include <xen/device_tree.h>
+#include <public/device_tree_defs.h>
+
+/* TODO */
+#define nr_irqs 0U
+#define nr_static_irqs 0
+#define arch_hwdom_irqs(domid) 0U
+
+#define domain_pirq_to_irq(d, pirq) (pirq)
+
+struct arch_pirq {
+};
+
+struct arch_irq_desc {
+    unsigned int type;
+};
+
+static inline void arch_move_irqs(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+static inline int platform_get_irq(const struct dt_device_node *device, int index)
+{
+    BUG_ON("unimplemented");
+}
+
+#endif /* __ASM_PPC_IRQ_H__ */
diff --git a/xen/arch/ppc/include/asm/mem_access.h b/xen/arch/ppc/include/asm/mem_access.h
new file mode 100644
index 0000000000..e7986dfdbd
--- /dev/null
+++ b/xen/arch/ppc/include/asm/mem_access.h
@@ -0,0 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_MEM_ACCESS_H__
+#define __ASM_PPC_MEM_ACCESS_H__
+
+#endif /* __ASM_PPC_MEM_ACCESS_H__ */
diff --git a/xen/arch/ppc/include/asm/mm.h b/xen/arch/ppc/include/asm/mm.h
index c85a7ed686..a433936076 100644
--- a/xen/arch/ppc/include/asm/mm.h
+++ b/xen/arch/ppc/include/asm/mm.h
@@ -1,10 +1,25 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #ifndef _ASM_PPC_MM_H
 #define _ASM_PPC_MM_H

+#include <public/xen.h>
+#include <xen/pdx.h>
+#include <xen/types.h>
+#include <asm/config.h>
 #include <asm/page-bits.h>
+#include <asm/page.h>
+
+void setup_initial_pagetables(void);

 #define pfn_to_paddr(pfn) ((paddr_t)(pfn) << PAGE_SHIFT)
 #define paddr_to_pfn(pa)  ((unsigned long)((pa) >> PAGE_SHIFT))
+#define paddr_to_pdx(pa)  mfn_to_pdx(maddr_to_mfn(pa))
+#define gfn_to_gaddr(gfn) pfn_to_paddr(gfn_x(gfn))
+#define gaddr_to_gfn(ga)  _gfn(paddr_to_pfn(ga))
+#define mfn_to_maddr(mfn) pfn_to_paddr(mfn_x(mfn))
+#define maddr_to_mfn(ma)  _mfn(paddr_to_pfn(ma))
+#define vmap_to_mfn(va)   maddr_to_mfn(virt_to_maddr((vaddr_t)va))
+#define vmap_to_page(va)  mfn_to_page(vmap_to_mfn(va))

 #define virt_to_maddr(va) ((paddr_t)((vaddr_t)(va) & PADDR_MASK))
 #define maddr_to_virt(pa) ((void *)((paddr_t)(pa) | XEN_VIRT_START))
@@ -13,6 +28,232 @@
 #define __pa(x)             (virt_to_maddr(x))
 #define __va(x)             (maddr_to_virt(x))

-void setup_initial_pagetables(void);
+/* Convert between Xen-heap virtual addresses and machine frame numbers. */
+#define __virt_to_mfn(va) (virt_to_maddr(va) >> PAGE_SHIFT)
+#define __mfn_to_virt(mfn) (maddr_to_virt((paddr_t)(mfn) << PAGE_SHIFT))
+
+/* Convert between Xen-heap virtual addresses and page-info structures. */
+static inline struct page_info *virt_to_page(const void *v)
+{
+    BUG_ON("unimplemented");
+    return NULL;
+}
+
+#define virt_to_mfn(va)     __virt_to_mfn(va)
+#define mfn_to_virt(mfn)    __mfn_to_virt(mfn)
+
+#define PG_shift(idx)   (BITS_PER_LONG - (idx))
+#define PG_mask(x, idx) (x ## UL << PG_shift(idx))
+
+#define PGT_none          PG_mask(0, 1)  /* no special uses of this page   */
+#define PGT_writable_page PG_mask(1, 1)  /* has writable mappings?         */
+#define PGT_type_mask     PG_mask(1, 1)  /* Bits 31 or 63.                 */
+
+ /* 2-bit count of uses of this frame as its current type. */
+#define PGT_count_mask    PG_mask(3, 3)
+
+/* Cleared when the owning guest 'frees' this page. */
+#define _PGC_allocated    PG_shift(1)
+#define PGC_allocated     PG_mask(1, 1)
+/* Page is Xen heap? */
+#define _PGC_xen_heap     PG_shift(2)
+#define PGC_xen_heap      PG_mask(1, 2)
+/* Page is broken? */
+#define _PGC_broken       PG_shift(7)
+#define PGC_broken        PG_mask(1, 7)
+ /* Mutually-exclusive page states: { inuse, offlining, offlined, free }. */
+#define PGC_state         PG_mask(3, 9)
+#define PGC_state_inuse   PG_mask(0, 9)
+#define PGC_state_offlining PG_mask(1, 9)
+#define PGC_state_offlined PG_mask(2, 9)
+#define PGC_state_free    PG_mask(3, 9)
+#define page_state_is(pg, st) (((pg)->count_info&PGC_state) == PGC_state_##st)
+/* Page is not reference counted */
+#define _PGC_extra        PG_shift(10)
+#define PGC_extra         PG_mask(1, 10)
+
+/* Count of references to this frame. */
+#define PGC_count_width   PG_shift(10)
+#define PGC_count_mask    ((1UL<<PGC_count_width)-1)
+
+/*
+ * Page needs to be scrubbed. Since this bit can only be set on a page that is
+ * free (i.e. in PGC_state_free) we can reuse PGC_allocated bit.
+ */
+#define _PGC_need_scrub   _PGC_allocated
+#define PGC_need_scrub    PGC_allocated
+
+#define is_xen_heap_page(page) ((page)->count_info & PGC_xen_heap)
+#define is_xen_heap_mfn(mfn) \
+    (mfn_valid(mfn) && is_xen_heap_page(mfn_to_page(mfn)))
+
+#define is_xen_fixed_mfn(mfn)                                   \
+    ((mfn_to_maddr(mfn) >= virt_to_maddr((vaddr_t)_start)) &&           \
+     (mfn_to_maddr(mfn) <= virt_to_maddr((vaddr_t)_end - 1)))
+
+#define page_get_owner(_p)    (_p)->v.inuse.domain
+#define page_set_owner(_p,_d) ((_p)->v.inuse.domain = (_d))
+
+/* TODO: implement */
+#define mfn_valid(mfn) ({ (void) (mfn); 0; })
+
+#define domain_set_alloc_bitsize(d) ((void)(d))
+#define domain_clamp_alloc_bitsize(d, b) (b)
+
+#define PFN_ORDER(pfn_) ((pfn_)->v.free.order)
+
+struct page_info
+{
+    /* Each frame can be threaded onto a doubly-linked list. */
+    struct page_list_entry list;
+
+    /* Reference count and various PGC_xxx flags and fields. */
+    unsigned long count_info;
+
+    /* Context-dependent fields follow... */
+    union {
+        /* Page is in use: ((count_info & PGC_count_mask) != 0). */
+        struct {
+            /* Type reference count and various PGT_xxx flags and fields. */
+            unsigned long type_info;
+        } inuse;
+        /* Page is on a free list: ((count_info & PGC_count_mask) == 0). */
+        union {
+            struct {
+                /*
+                 * Index of the first *possibly* unscrubbed page in the buddy.
+                 * One more bit than maximum possible order to accommodate
+                 * INVALID_DIRTY_IDX.
+                 */
+#define INVALID_DIRTY_IDX ((1UL << (MAX_ORDER + 1)) - 1)
+                unsigned long first_dirty:MAX_ORDER + 1;
+
+                /* Do TLBs need flushing for safety before next page use? */
+                bool need_tlbflush:1;
+
+#define BUDDY_NOT_SCRUBBING    0
+#define BUDDY_SCRUBBING        1
+#define BUDDY_SCRUB_ABORT      2
+                unsigned long scrub_state:2;
+            };
+
+            unsigned long val;
+        } free;
+
+    } u;
+
+    union {
+        /* Page is in use, but not as a shadow. */
+        struct {
+            /* Owner of this page (NULL if page is anonymous). */
+            struct domain *domain;
+        } inuse;
+
+        /* Page is on a free list. */
+        struct {
+            /* Order-size of the free chunk this page is the head of. */
+            unsigned int order;
+        } free;
+
+    } v;
+
+    union {
+        /*
+         * Timestamp from 'TLB clock', used to avoid extra safety flushes.
+         * Only valid for: a) free pages, and b) pages with zero type count
+         */
+        uint32_t tlbflush_timestamp;
+    };
+    uint64_t pad;
+};
+
+
+#define FRAMETABLE_VIRT_START  (XEN_VIRT_START + GB(32))
+#define frame_table ((struct page_info *)FRAMETABLE_VIRT_START)
+
+/* PDX of the first page in the frame table. */
+extern unsigned long frametable_base_pdx;
+
+/* Convert between machine frame numbers and page-info structures. */
+#define mfn_to_page(mfn)                                            \
+    (frame_table + (mfn_to_pdx(mfn) - frametable_base_pdx))
+#define page_to_mfn(pg)                                             \
+    pdx_to_mfn((unsigned long)((pg) - frame_table) + frametable_base_pdx)
+
+static inline void *page_to_virt(const struct page_info *pg)
+{
+    return mfn_to_virt(mfn_x(page_to_mfn(pg)));
+}
+
+/*
+ * Common code requires get_page_type and put_page_type.
+ * We don't care about typecounts so we just do the minimum to make it
+ * happy.
+ */
+static inline int get_page_type(struct page_info *page, unsigned long type)
+{
+    return 1;
+}
+
+static inline void put_page_type(struct page_info *page)
+{
+    return;
+}
+
+/* TODO */
+static inline bool get_page_nr(struct page_info *page, const struct domain *domain,
+                        unsigned long nr)
+{
+    BUG_ON("unimplemented");
+}
+static inline void put_page_nr(struct page_info *page, unsigned long nr)
+{
+    BUG_ON("unimplemented");
+}
+
+static inline void put_page_and_type(struct page_info *page)
+{
+    put_page_type(page);
+    put_page(page);
+}
+
+/*
+ * PPC does not have an M2P, but common code expects a handful of
+ * M2P-related defines and functions. Provide dummy versions of these.
+ */
+#define INVALID_M2P_ENTRY        (~0UL)
+#define SHARED_M2P_ENTRY         (~0UL - 1UL)
+#define SHARED_M2P(_e)           ((_e) == SHARED_M2P_ENTRY)
+
+#define set_gpfn_from_mfn(mfn, pfn) BUG_ON("unimplemented")
+#define mfn_to_gfn(d, mfn) ({ BUG_ON("unimplemented"); _gfn(0); })
+
+#define PDX_GROUP_SHIFT XEN_PT_SHIFT_LVL_3
+
+static inline unsigned long domain_get_maximum_gpfn(struct domain *d)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+static inline long arch_memory_op(int op, XEN_GUEST_HANDLE_PARAM(void) arg)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+static inline unsigned int arch_get_dma_bitsize(void)
+{
+    return 32; /* TODO */
+}
+
+/*
+ * On PPC, all the RAM is currently direct mapped in Xen.
+ * Hence return always true.
+ */
+static inline bool arch_mfns_in_directmap(unsigned long mfn, unsigned long nr)
+{
+    return true;
+}

 #endif /* _ASM_PPC_MM_H */
diff --git a/xen/arch/ppc/include/asm/monitor.h b/xen/arch/ppc/include/asm/monitor.h
new file mode 100644
index 0000000000..e5b0282bf1
--- /dev/null
+++ b/xen/arch/ppc/include/asm/monitor.h
@@ -0,0 +1,43 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/* Derived from xen/arch/arm/include/asm/monitor.h */
+#ifndef __ASM_PPC_MONITOR_H__
+#define __ASM_PPC_MONITOR_H__
+
+#include <public/domctl.h>
+#include <xen/errno.h>
+
+static inline
+void arch_monitor_allow_userspace(struct domain *d, bool allow_userspace)
+{
+}
+
+static inline
+int arch_monitor_domctl_op(struct domain *d, struct xen_domctl_monitor_op *mop)
+{
+    /* No arch-specific monitor ops on PPC. */
+    return -EOPNOTSUPP;
+}
+
+int arch_monitor_domctl_event(struct domain *d,
+                              struct xen_domctl_monitor_op *mop);
+
+static inline
+int arch_monitor_init_domain(struct domain *d)
+{
+    /* No arch-specific domain initialization on PPC. */
+    return 0;
+}
+
+static inline
+void arch_monitor_cleanup_domain(struct domain *d)
+{
+    /* No arch-specific domain cleanup on PPC. */
+}
+
+static inline uint32_t arch_monitor_get_capabilities(struct domain *d)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+#endif /* __ASM_PPC_MONITOR_H__ */
diff --git a/xen/arch/ppc/include/asm/nospec.h b/xen/arch/ppc/include/asm/nospec.h
new file mode 100644
index 0000000000..b97322e48d
--- /dev/null
+++ b/xen/arch/ppc/include/asm/nospec.h
@@ -0,0 +1,15 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/* From arch/arm/include/asm/nospec.h. */
+#ifndef __ASM_PPC_NOSPEC_H__
+#define __ASM_PPC_NOSPEC_H__
+
+static inline bool evaluate_nospec(bool condition)
+{
+    return condition;
+}
+
+static inline void block_speculation(void)
+{
+}
+
+#endif /* __ASM_PPC_NOSPEC_H__ */
diff --git a/xen/arch/ppc/include/asm/numa.h b/xen/arch/ppc/include/asm/numa.h
new file mode 100644
index 0000000000..7fdf66c3da
--- /dev/null
+++ b/xen/arch/ppc/include/asm/numa.h
@@ -0,0 +1,26 @@
+#ifndef __ASM_PPC_NUMA_H__
+#define __ASM_PPC_NUMA_H__
+
+#include <xen/types.h>
+#include <xen/mm.h>
+
+typedef uint8_t nodeid_t;
+
+/* Fake one node for now. See also node_online_map. */
+#define cpu_to_node(cpu) 0
+#define node_to_cpumask(node)   (cpu_online_map)
+
+/*
+ * TODO: make first_valid_mfn static when NUMA is supported on PPC, this
+ * is required because the dummy helpers are using it.
+ */
+extern mfn_t first_valid_mfn;
+
+/* XXX: implement NUMA support */
+#define node_spanned_pages(nid) (max_page - mfn_x(first_valid_mfn))
+#define node_start_pfn(nid) (mfn_x(first_valid_mfn))
+#define __node_distance(a, b) (20)
+
+#define arch_want_default_dmazone() (false)
+
+#endif /* __ASM_PPC_NUMA_H__ */
diff --git a/xen/arch/ppc/include/asm/p2m.h b/xen/arch/ppc/include/asm/p2m.h
new file mode 100644
index 0000000000..25ba054668
--- /dev/null
+++ b/xen/arch/ppc/include/asm/p2m.h
@@ -0,0 +1,95 @@
+#ifndef __ASM_PPC_P2M_H__
+#define __ASM_PPC_P2M_H__
+
+#include <asm/page-bits.h>
+
+#define paddr_bits PADDR_BITS
+
+/*
+ * List of possible type for each page in the p2m entry.
+ * The number of available bit per page in the pte for this purpose is 4 bits.
+ * So it's possible to only have 16 fields. If we run out of value in the
+ * future, it's possible to use higher value for pseudo-type and don't store
+ * them in the p2m entry.
+ */
+typedef enum {
+    p2m_invalid = 0,    /* Nothing mapped here */
+    p2m_ram_rw,         /* Normal read/write guest RAM */
+    p2m_ram_ro,         /* Read-only; writes are silently dropped */
+    p2m_max_real_type,  /* Types after this won't be store in the p2m */
+} p2m_type_t;
+
+#include <xen/p2m-common.h>
+
+static inline int get_page_and_type(struct page_info *page,
+                                    struct domain *domain,
+                                    unsigned long type)
+{
+    BUG_ON("unimplemented");
+    return 1;
+}
+
+/* Look up a GFN and take a reference count on the backing page. */
+typedef unsigned int p2m_query_t;
+#define P2M_ALLOC    (1u<<0)   /* Populate PoD and paged-out entries */
+#define P2M_UNSHARE  (1u<<1)   /* Break CoW sharing */
+
+static inline struct page_info *get_page_from_gfn(
+    struct domain *d, unsigned long gfn, p2m_type_t *t, p2m_query_t q)
+{
+    BUG_ON("unimplemented");
+    return NULL;
+}
+
+static inline void memory_type_changed(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+
+static inline int guest_physmap_mark_populate_on_demand(struct domain *d, unsigned long gfn,
+                                                        unsigned int order)
+{
+    BUG_ON("unimplemented");
+    return 1;
+}
+
+static inline int guest_physmap_add_entry(struct domain *d,
+                            gfn_t gfn,
+                            mfn_t mfn,
+                            unsigned long page_order,
+                            p2m_type_t t)
+{
+    BUG_ON("unimplemented");
+    return 1;
+}
+
+/* Untyped version for RAM only, for compatibility */
+static inline int __must_check
+guest_physmap_add_page(struct domain *d, gfn_t gfn, mfn_t mfn,
+                       unsigned int page_order)
+{
+    return guest_physmap_add_entry(d, gfn, mfn, page_order, p2m_ram_rw);
+}
+
+static inline mfn_t gfn_to_mfn(struct domain *d, gfn_t gfn)
+{
+    BUG_ON("unimplemented");
+    return _mfn(0);
+}
+
+static inline bool arch_acquire_resource_check(struct domain *d)
+{
+    /*
+     * The reference counting of foreign entries in set_foreign_p2m_entry()
+     * is supported on PPC.
+     */
+    return true;
+}
+
+static inline void p2m_altp2m_check(struct vcpu *v, uint16_t idx)
+{
+    /* Not supported on PPC. */
+}
+
+#endif /* __ASM_PPC_P2M_H__ */
diff --git a/xen/arch/ppc/include/asm/page.h b/xen/arch/ppc/include/asm/page.h
index c5ee047df7..890e285051 100644
--- a/xen/arch/ppc/include/asm/page.h
+++ b/xen/arch/ppc/include/asm/page.h
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #ifndef _ASM_PPC_PAGE_H
 #define _ASM_PPC_PAGE_H

@@ -36,6 +37,9 @@
 #define PTE_XEN_RO   (PTE_XEN_BASE | PTE_EAA_READ)
 #define PTE_XEN_RX   (PTE_XEN_BASE | PTE_EAA_READ | PTE_EAA_EXECUTE)

+/* TODO */
+#define PAGE_HYPERVISOR 0
+
 /*
  * Radix Tree layout for 64KB pages:
  *
@@ -178,4 +182,18 @@ struct prtb_entry {

 void tlbie_all(void);

+static inline void invalidate_icache(void)
+{
+    BUG_ON("unimplemented");
+}
+
+#define clear_page(page) memset(page, 0, PAGE_SIZE)
+#define copy_page(dp, sp) memcpy(dp, sp, PAGE_SIZE)
+
+/* TODO: Flush the dcache for an entire page. */
+static inline void flush_page_to_ram(unsigned long mfn, bool sync_icache)
+{
+    BUG_ON("unimplemented");
+}
+
 #endif /* _ASM_PPC_PAGE_H */
diff --git a/xen/arch/ppc/include/asm/paging.h b/xen/arch/ppc/include/asm/paging.h
new file mode 100644
index 0000000000..eccacece29
--- /dev/null
+++ b/xen/arch/ppc/include/asm/paging.h
@@ -0,0 +1,7 @@
+#ifndef __ASM_PPC_PAGING_H__
+#define __ASM_PPC_PAGING_H__
+
+#define paging_mode_translate(d)              (1)
+#define paging_mode_external(d)               (1)
+
+#endif /* __ASM_PPC_PAGING_H__ */
diff --git a/xen/arch/ppc/include/asm/pci.h b/xen/arch/ppc/include/asm/pci.h
new file mode 100644
index 0000000000..e76c8e5475
--- /dev/null
+++ b/xen/arch/ppc/include/asm/pci.h
@@ -0,0 +1,7 @@
+#ifndef __ASM_PPC_PCI_H__
+#define __ASM_PPC_PCI_H__
+
+struct arch_pci_dev {
+};
+
+#endif /* __ASM_PPC_PCI_H__ */
diff --git a/xen/arch/ppc/include/asm/percpu.h b/xen/arch/ppc/include/asm/percpu.h
new file mode 100644
index 0000000000..e7c40c0f03
--- /dev/null
+++ b/xen/arch/ppc/include/asm/percpu.h
@@ -0,0 +1,24 @@
+#ifndef __PPC_PERCPU_H__
+#define __PPC_PERCPU_H__
+
+#ifndef __ASSEMBLY__
+
+extern char __per_cpu_start[], __per_cpu_data_end[];
+extern unsigned long __per_cpu_offset[NR_CPUS];
+void percpu_init_areas(void);
+
+#define smp_processor_id() 0 /* TODO: Fix this */
+
+#define per_cpu(var, cpu)  \
+    (*RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[cpu]))
+#define this_cpu(var) \
+    (*RELOC_HIDE(&per_cpu__##var, smp_processor_id()))
+
+#define per_cpu_ptr(var, cpu)  \
+    (*RELOC_HIDE(var, __per_cpu_offset[cpu]))
+#define this_cpu_ptr(var) \
+    (*RELOC_HIDE(var, smp_processor_id()))
+
+#endif
+
+#endif /* __PPC_PERCPU_H__ */
diff --git a/xen/arch/ppc/include/asm/processor.h b/xen/arch/ppc/include/asm/processor.h
index edb8a6088d..d3dd943c20 100644
--- a/xen/arch/ppc/include/asm/processor.h
+++ b/xen/arch/ppc/include/asm/processor.h
@@ -110,6 +110,10 @@
 /* Macro to adjust thread priority for hardware multithreading */
 #define HMT_very_low()  asm volatile ( "or %r31, %r31, %r31" )

+/* TODO: This isn't correct */
+#define cpu_to_core(cpu)   (0)
+#define cpu_to_socket(cpu) (0)
+
 /*
  * User-accessible registers: most of these need to be saved/restored
  * for every nested Xen invocation.
@@ -178,6 +182,12 @@ static inline void noreturn die(void)
         HMT_very_low();
 }

+/*
+ * Implemented on pre-POWER10 by setting HMT to low then to medium using
+ * the special OR forms. See HMT_very_low above.
+ */
+#define cpu_relax() asm volatile ( "or %r1, %r1, %r1; or %r2, %r2, %r2" )
+
 #endif /* __ASSEMBLY__ */

 #endif /* _ASM_PPC_PROCESSOR_H */
diff --git a/xen/arch/ppc/include/asm/random.h b/xen/arch/ppc/include/asm/random.h
new file mode 100644
index 0000000000..2f9e9bbae4
--- /dev/null
+++ b/xen/arch/ppc/include/asm/random.h
@@ -0,0 +1,9 @@
+#ifndef __ASM_PPC_RANDOM_H__
+#define __ASM_PPC_RANDOM_H__
+
+static inline unsigned int arch_get_random(void)
+{
+    return 0;
+}
+
+#endif /* __ASM_PPC_RANDOM_H__ */
diff --git a/xen/arch/ppc/include/asm/setup.h b/xen/arch/ppc/include/asm/setup.h
new file mode 100644
index 0000000000..e4f64879b6
--- /dev/null
+++ b/xen/arch/ppc/include/asm/setup.h
@@ -0,0 +1,6 @@
+#ifndef __ASM_PPC_SETUP_H__
+#define __ASM_PPC_SETUP_H__
+
+#define max_init_domid (0)
+
+#endif /* __ASM_PPC_SETUP_H__ */
diff --git a/xen/arch/ppc/include/asm/smp.h b/xen/arch/ppc/include/asm/smp.h
new file mode 100644
index 0000000000..eca43f0e6c
--- /dev/null
+++ b/xen/arch/ppc/include/asm/smp.h
@@ -0,0 +1,18 @@
+#ifndef __ASM_SMP_H
+#define __ASM_SMP_H
+
+#include <xen/cpumask.h>
+#include <xen/percpu.h>
+
+DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
+DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
+
+#define cpu_is_offline(cpu) unlikely(!cpu_online(cpu))
+
+/*
+ * Do we, for platform reasons, need to actually keep CPUs online when we
+ * would otherwise prefer them to be off?
+ */
+#define park_offline_cpus false
+
+#endif
diff --git a/xen/arch/ppc/include/asm/softirq.h b/xen/arch/ppc/include/asm/softirq.h
new file mode 100644
index 0000000000..a0b28a5e51
--- /dev/null
+++ b/xen/arch/ppc/include/asm/softirq.h
@@ -0,0 +1,8 @@
+#ifndef __ASM_PPC_SOFTIRQ_H__
+#define __ASM_PPC_SOFTIRQ_H__
+
+#define NR_ARCH_SOFTIRQS 0
+
+#define arch_skip_send_event_check(cpu) 0
+
+#endif /* __ASM_PPC_SOFTIRQ_H__ */
diff --git a/xen/arch/ppc/include/asm/spinlock.h b/xen/arch/ppc/include/asm/spinlock.h
new file mode 100644
index 0000000000..4bdb4b1e98
--- /dev/null
+++ b/xen/arch/ppc/include/asm/spinlock.h
@@ -0,0 +1,15 @@
+#ifndef __ASM_SPINLOCK_H
+#define __ASM_SPINLOCK_H
+
+#define arch_lock_acquire_barrier() smp_mb()
+#define arch_lock_release_barrier() smp_mb()
+
+#define arch_lock_relax() cpu_relax()
+#define arch_lock_signal()
+#define arch_lock_signal_wmb()      \
+({                                  \
+    smp_wmb();                      \
+    arch_lock_signal();             \
+})
+
+#endif /* __ASM_SPINLOCK_H */
diff --git a/xen/arch/ppc/include/asm/system.h b/xen/arch/ppc/include/asm/system.h
index 94091df644..a17072bafd 100644
--- a/xen/arch/ppc/include/asm/system.h
+++ b/xen/arch/ppc/include/asm/system.h
@@ -1,6 +1,223 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Copyright (C) IBM Corp. 2005
+ * Copyright (C) Raptor Engineering LLC
+ *
+ * Authors: Jimi Xenidis <jimix@watson.ibm.com>
+ *          Shawn Anastasio <sanastasio@raptorengineering.com>
+ */
+
 #ifndef _ASM_SYSTEM_H_
 #define _ASM_SYSTEM_H_

-#define smp_wmb() __asm__ __volatile__ ( "lwsync" : : : "memory" )
+#include <xen/lib.h>
+#include <asm/memory.h>
+#include <asm/time.h>
+#include <asm/processor.h>
+#include <asm/msr.h>
+
+#define xchg(ptr,x)                                                            \
+({                                                                             \
+    __typeof__(*(ptr)) _x_ = (x);                                              \
+    (__typeof__(*(ptr))) __xchg((ptr), (unsigned long)_x_, sizeof(*(ptr)));    \
+})
+
+#define build_xchg(fn, type, ldinsn, stinsn) \
+static inline unsigned long fn(volatile type *m, unsigned long val)            \
+{                                                                              \
+    unsigned long dummy;                                                       \
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER                                    \
+                   "1: " ldinsn " %0,0,%3\n"                                   \
+                   stinsn " %2,0,%3\n"                                         \
+                   "2:  bne- 1b\n"                                             \
+                   PPC_ATOMIC_EXIT_BARRIER                                     \
+                   : "=&r" (dummy), "=m" (*m)                                  \
+                   : "r" (val), "r" (m)                                        \
+                   : "cc", "memory" );                                         \
+    return dummy;                                                              \
+}
+
+build_xchg(__xchg_u8, uint8_t, "lbarx", "stbcx.")
+build_xchg(__xchg_u16, uint16_t, "lharx", "sthcx.")
+build_xchg(__xchg_u32, uint32_t, "lwarx", "stwcx.")
+build_xchg(__xchg_u64, uint64_t, "ldarx", "stdcx.")
+
+#undef build_xchg
+
+/*
+ * This function doesn't exist, so you'll get a linker error
+ * if something tries to do an invalid xchg().
+ */
+extern void __xchg_called_with_bad_pointer(void);
+
+static inline unsigned long __xchg(volatile void *ptr, unsigned long x,
+                                   int size)
+{
+    switch ( size )
+    {
+    case 1:
+        return __xchg_u8(ptr, x);
+    case 2:
+        return __xchg_u16(ptr, x);
+    case 4:
+        return __xchg_u32(ptr, x);
+    case 8:
+        return __xchg_u64(ptr, x);
+    }
+    __xchg_called_with_bad_pointer();
+    return x;
+}
+
+
+static inline unsigned long __cmpxchg_u32(volatile int *p, int old, int new)
+{
+    unsigned int prev;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx   %0,0,%2\n"
+                   "cmpw    0,%0,%3\n"
+                   "bne-    2f\n "
+                   "stwcx.  %4,0,%2\n"
+                   "bne-    1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER "\n"
+                   "2:"
+                   : "=&r" (prev), "=m" (*p)
+                   : "r" (p), "r" (old), "r" (new), "m" (*p)
+                   : "cc", "memory" );
+
+    return prev;
+}
+
+static inline unsigned long __cmpxchg_u64(volatile long *p, unsigned long old,
+                                          unsigned long new)
+{
+    unsigned long prev;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: ldarx   %0,0,%2\n"
+                   "cmpd    0,%0,%3\n"
+                   "bne-    2f\n"
+                   "stdcx.  %4,0,%2\n"
+                   "bne-    1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER "\n"
+                   "2:"
+                   : "=&r" (prev), "=m" (*p)
+                   : "r" (p), "r" (old), "r" (new), "m" (*p)
+                   : "cc", "memory" );
+
+    return prev;
+}
+
+/* This function doesn't exist, so you'll get a linker error
+   if something tries to do an invalid cmpxchg().  */
+extern void __cmpxchg_called_with_bad_pointer(void);
+
+static always_inline unsigned long __cmpxchg(
+    volatile void *ptr,
+    unsigned long old,
+    unsigned long new,
+    int size)
+{
+    switch ( size )
+    {
+    case 2:
+        BUG_ON("unimplemented"); return 0; /* XXX implement __cmpxchg_u16 ? */
+    case 4:
+        return __cmpxchg_u32(ptr, old, new);
+    case 8:
+        return __cmpxchg_u64(ptr, old, new);
+    }
+    __cmpxchg_called_with_bad_pointer();
+    return old;
+}
+
+#define cmpxchg_user(ptr,o,n) cmpxchg(ptr,o,n)
+
+#define cmpxchg(ptr,o,n)                                                       \
+  ({                                                                           \
+     __typeof__(*(ptr)) _o_ = (o);                                             \
+     __typeof__(*(ptr)) _n_ = (n);                                             \
+     (__typeof__(*(ptr)))__cmpxchg((ptr), (unsigned long)_o_,                  \
+                                   (unsigned long)_n_, sizeof(*(ptr)));        \
+  })
+
+
+/*
+ * Memory barrier.
+ * The sync instruction guarantees that all memory accesses initiated
+ * by this processor have been performed (with respect to all other
+ * mechanisms that access memory).  The eieio instruction is a barrier
+ * providing an ordering (separately) for (a) cacheable stores and (b)
+ * loads and stores to non-cacheable memory (e.g. I/O devices).
+ *
+ * mb() prevents loads and stores being reordered across this point.
+ * rmb() prevents loads being reordered across this point.
+ * wmb() prevents stores being reordered across this point.
+ * read_barrier_depends() prevents data-dependent loads being reordered
+ *  across this point (nop on PPC).
+ *
+ * We have to use the sync instructions for mb(), since lwsync doesn't
+ * order loads with respect to previous stores.  Lwsync is fine for
+ * rmb(), though.
+ * For wmb(), we use sync since wmb is used in drivers to order
+ * stores to system memory with respect to writes to the device.
+ * However, smp_wmb() can be a lighter-weight eieio barrier on
+ * SMP since it is only used to order updates to system memory.
+ */
+#define mb()   __asm__ __volatile__ ( "sync" : : : "memory" )
+#define rmb()  __asm__ __volatile__ ( "lwsync" : : : "memory" )
+#define wmb()  __asm__ __volatile__ ( "sync" : : : "memory" )
+#define read_barrier_depends()  do { } while(0)
+
+#define set_mb(var, value)  do { var = value; smp_mb(); } while (0)
+#define set_wmb(var, value) do { var = value; smp_wmb(); } while (0)
+
+#define smp_mb__before_atomic()    smp_mb()
+#define smp_mb__after_atomic()     smp_mb()
+
+#define smp_mb()    mb()
+#define smp_rmb()   rmb()
+#define smp_wmb()   __asm__ __volatile__ ("lwsync" : : : "memory")
+#define smp_read_barrier_depends()  read_barrier_depends()
+
+#define local_save_flags(flags) ((flags) = mfmsr())
+#define local_irq_restore(flags) do { \
+        __asm__ __volatile__("": : :"memory"); \
+        mtmsrd((flags)); \
+} while(0)
+
+static inline void local_irq_disable(void)
+{
+    unsigned long msr;
+    msr = mfmsr();
+    mtmsrd(msr & ~MSR_EE);
+    barrier();
+}
+
+static inline void local_irq_enable(void)
+{
+    unsigned long msr;
+    barrier();
+    msr = mfmsr();
+    mtmsrd(msr | MSR_EE);
+}
+
+static inline void __do_save_and_cli(unsigned long *flags)
+{
+    unsigned long msr;
+    msr = mfmsr();
+    *flags = msr;
+    mtmsrd(msr & ~MSR_EE);
+    barrier();
+}
+
+#define local_irq_save(flags) __do_save_and_cli(&flags)
+
+static inline int local_irq_is_enabled(void)
+{
+    return !!(mfmsr() & MSR_EE);
+}
+
+#define arch_fetch_and_add(x, v) __sync_fetch_and_add(x, v)

 #endif /* _ASM_SYSTEM_H */
diff --git a/xen/arch/ppc/include/asm/time.h b/xen/arch/ppc/include/asm/time.h
new file mode 100644
index 0000000000..aa9dda82a3
--- /dev/null
+++ b/xen/arch/ppc/include/asm/time.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_TIME_H__
+#define __ASM_PPC_TIME_H__
+
+#include <xen/lib.h>
+#include <asm/processor.h>
+#include <asm/regs.h>
+
+struct vcpu;
+
+/* TODO: implement */
+static inline void force_update_vcpu_system_time(struct vcpu *v) {
+    BUG_ON("unimplemented");
+}
+
+typedef unsigned long cycles_t;
+
+static inline cycles_t get_cycles(void)
+{
+    return mfspr(SPRN_TBRL);
+}
+
+#endif /* __ASM_PPC_TIME_H__ */
diff --git a/xen/arch/ppc/include/asm/xenoprof.h b/xen/arch/ppc/include/asm/xenoprof.h
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/xen/arch/ppc/mm-radix.c b/xen/arch/ppc/mm-radix.c
index 3feeb90ebc..06129cef9c 100644
--- a/xen/arch/ppc/mm-radix.c
+++ b/xen/arch/ppc/mm-radix.c
@@ -1,13 +1,13 @@
 /* SPDX-License-Identifier: GPL-2.0-or-later */
 #include <xen/init.h>
 #include <xen/kernel.h>
+#include <xen/mm.h>
 #include <xen/types.h>
 #include <xen/lib.h>

 #include <asm/bitops.h>
 #include <asm/byteorder.h>
 #include <asm/early_printk.h>
-#include <asm/mm.h>
 #include <asm/page.h>
 #include <asm/processor.h>
 #include <asm/regs.h>
diff --git a/xen/arch/ppc/tlb-radix.c b/xen/arch/ppc/tlb-radix.c
index 3dde102c62..74213113e0 100644
--- a/xen/arch/ppc/tlb-radix.c
+++ b/xen/arch/ppc/tlb-radix.c
@@ -5,9 +5,9 @@
  *
  * Copyright 2015-2016, Aneesh Kumar K.V, IBM Corporation.
  */
+#include <xen/bitops.h>
 #include <xen/stringify.h>

-#include <asm/bitops.h>
 #include <asm/msr.h>
 #include <asm/processor.h>

diff --git a/xen/include/public/hvm/save.h b/xen/include/public/hvm/save.h
index 464ebdb0da..2cf4238daa 100644
--- a/xen/include/public/hvm/save.h
+++ b/xen/include/public/hvm/save.h
@@ -89,6 +89,8 @@ DECLARE_HVM_SAVE_TYPE(END, 0, struct hvm_save_end);
 #include "../arch-x86/hvm/save.h"
 #elif defined(__arm__) || defined(__aarch64__)
 #include "../arch-arm/hvm/save.h"
+#elif defined(__powerpc64__)
+#include "../arch-ppc.h"
 #else
 #error "unsupported architecture"
 #endif
diff --git a/xen/include/public/pmu.h b/xen/include/public/pmu.h
index eb87a81e7b..5a176b6ac3 100644
--- a/xen/include/public/pmu.h
+++ b/xen/include/public/pmu.h
@@ -11,6 +11,8 @@
 #include "arch-x86/pmu.h"
 #elif defined (__arm__) || defined (__aarch64__)
 #include "arch-arm.h"
+#elif defined (__powerpc64__)
+#include "arch-ppc.h"
 #else
 #error "Unsupported architecture"
 #endif
diff --git a/xen/include/public/xen.h b/xen/include/public/xen.h
index 920567e006..b812a0a324 100644
--- a/xen/include/public/xen.h
+++ b/xen/include/public/xen.h
@@ -16,6 +16,8 @@
 #include "arch-x86/xen.h"
 #elif defined(__arm__) || defined (__aarch64__)
 #include "arch-arm.h"
+#elif defined(__powerpc64__)
+#include "arch-ppc.h"
 #else
 #error "Unsupported architecture"
 #endif
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 19:44:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 19:44:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600782.936560 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg9J7-0003y0-AG; Tue, 12 Sep 2023 19:44:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600782.936560; Tue, 12 Sep 2023 19:44:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg9J7-0003xt-7a; Tue, 12 Sep 2023 19:44:21 +0000
Received: by outflank-mailman (input) for mailman id 600782;
 Tue, 12 Sep 2023 19:44:19 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg9J5-0003xj-TV; Tue, 12 Sep 2023 19:44:19 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg9J5-0007dN-SN; Tue, 12 Sep 2023 19:44:19 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg9J5-0000mo-LO; Tue, 12 Sep 2023 19:44:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qg9J5-0006LA-Kr; Tue, 12 Sep 2023 19:44:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=M6s91KVpI4KU2CFi3qpTmhLSSk4nKENlgeuoon0IeJM=; b=WQQH+k2CwEaXSBrGgtYNvpimMG
	EYAf50/t/5y+1f8B0bjYefrCbmQUKm8s5lc7wBQtxCYa02LI9GuQz4Rf2s6DFkCzeng2/cDzjrkGB
	2ENxZ9Pi2vioB0LdjRTY6Es0Ubm/+U5czFpI8FLxosx9cPimNt/uGGpUcoWoeFm5ro4I=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182974-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182974: tolerable FAIL - PUSHED
X-Osstest-Failures:
    ovmf:test-amd64-i386-xl-qemuu-ovmf-amd64:xen-install:fail:heisenbug
X-Osstest-Versions-This:
    ovmf=7f1a8cad9945674f068ff5e98a533280a7f0efb1
X-Osstest-Versions-That:
    ovmf=4f4a2c3b0768cd389c8f27ec77871887ba89e6f5
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 12 Sep 2023 19:44:19 +0000

flight 182974 ovmf real [real]
flight 182980 ovmf real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/182974/
http://logs.test-lab.xenproject.org/osstest/logs/182980/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemuu-ovmf-amd64  7 xen-install  fail pass in 182980-retest

version targeted for testing:
 ovmf                 7f1a8cad9945674f068ff5e98a533280a7f0efb1
baseline version:
 ovmf                 4f4a2c3b0768cd389c8f27ec77871887ba89e6f5

Last test of basis   182964  2023-09-12 11:12:21 Z    0 days
Testing same since   182974  2023-09-12 16:12:24 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ard Biesheuvel <ardb@kernel.org>
  Laszlo Ersek <lersek@redhat.com>
  Sunil V L <sunilvl@ventanamicro.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   4f4a2c3b07..7f1a8cad99  7f1a8cad9945674f068ff5e98a533280a7f0efb1 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 20:26:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 20:26:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600794.936575 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg9xT-0001yN-Fk; Tue, 12 Sep 2023 20:26:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600794.936575; Tue, 12 Sep 2023 20:26:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qg9xT-0001yG-Cg; Tue, 12 Sep 2023 20:26:03 +0000
Received: by outflank-mailman (input) for mailman id 600794;
 Tue, 12 Sep 2023 20:26:02 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg9xS-0001y6-Ks; Tue, 12 Sep 2023 20:26:02 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg9xS-00009e-GM; Tue, 12 Sep 2023 20:26:02 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qg9xS-0001xC-8s; Tue, 12 Sep 2023 20:26:02 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qg9xS-00029n-8Q; Tue, 12 Sep 2023 20:26:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=/OCQgbAb3x7XCtur95EA9OS5A58PIohzC/kJKJb3FNc=; b=nYNLg882+Uu4DRDVF+cJqdkgCf
	8OS34s7lYOj4HcVLLYj6ksffWI8BcaQYAXHG6K0jCP0EJx0UEjeHk9g92A2B94lo2lgisiQBTaHIA
	p0XNtYM2gMSv21bqjudwwUyghDTixIKsQ3aPmUY3JhKJFB8NZwozR9xWbBj834ynCatY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182959-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182959: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:<job status>:broken:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:<job status>:broken:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:host-install(5):broken:heisenbug
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:host-install(5):broken:heisenbug
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=0bb80ecc33a8fb5a682236443c1e740d5c917d1d
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 12 Sep 2023 20:26:02 +0000

flight 182959 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182959/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm    <job status>   broken
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm    <job status>            broken
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 8 xen-boot fail in 182949 REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail in 182949 REGR. vs. 182531

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 5 host-install(5) broken pass in 182949
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 5 host-install(5) broken pass in 182949

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                0bb80ecc33a8fb5a682236443c1e740d5c917d1d
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   15 days
Failing since        182544  2023-08-28 20:42:13 Z   14 days   27 attempts
Testing same since   182923  2023-09-11 06:13:05 Z    1 days    3 attempts

------------------------------------------------------------
2275 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        broken  
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 broken  
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary

broken-job test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm broken
broken-job test-amd64-amd64-xl-qemut-debianhvm-i386-xsm broken
broken-step test-amd64-amd64-xl-qemut-debianhvm-i386-xsm host-install(5)
broken-step test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm host-install(5)

Not pushing.

(No revision log; it would be 275103 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Sep 12 20:44:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 20:44:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600803.936586 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgAEp-0005E8-Vx; Tue, 12 Sep 2023 20:43:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600803.936586; Tue, 12 Sep 2023 20:43:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgAEp-0005E1-T8; Tue, 12 Sep 2023 20:43:59 +0000
Received: by outflank-mailman (input) for mailman id 600803;
 Tue, 12 Sep 2023 20:43:58 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jqqM=E4=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qgAEo-0005Dv-F9
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 20:43:58 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20615.outbound.protection.outlook.com
 [2a01:111:f400:7e89::615])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1655c2a0-51ad-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 22:43:55 +0200 (CEST)
Received: from CY5PR04CA0017.namprd04.prod.outlook.com (2603:10b6:930:1e::16)
 by PH7PR12MB6562.namprd12.prod.outlook.com (2603:10b6:510:212::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Tue, 12 Sep
 2023 20:43:50 +0000
Received: from CY4PEPF0000EE3C.namprd03.prod.outlook.com
 (2603:10b6:930:1e:cafe::18) by CY5PR04CA0017.outlook.office365.com
 (2603:10b6:930:1e::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19 via Frontend
 Transport; Tue, 12 Sep 2023 20:43:50 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000EE3C.mail.protection.outlook.com (10.167.242.16) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.17 via Frontend Transport; Tue, 12 Sep 2023 20:43:49 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 12 Sep
 2023 15:43:49 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 12 Sep
 2023 13:43:49 -0700
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 12 Sep 2023 15:43:47 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1655c2a0-51ad-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=M0XXuVWa+EWHGxI9VdUVhjLHjh8RNtz7plZDqUgGYkWo5P6EayWb9DcpUNtlg6avuDShxpGJ2lhgVGF6UQN0nRBtWqUVNqj9tL8D520/JWJ2fjCGkDyQ4HOSMN0xR6wDXjr7CtI5PkP22NqeY1hhdvc7IADiLShDnZo+Sdj8KaU6FFfPpek0ltCrc0VRect4uvSZzQ+zCMKD8Czpk0ayEq2MpCUQPue5G7b8QXlwVopkqVGgsMCGR3BIW15HSWdmUfPTRwwYAAoK0bh3gfuHO3fyNqjRTj549erAEGydVMIuETYIY6SRj8jph/+W6OZGCCHKo74Ln0+rgUxy0p+yzQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=E65VnSANYBFDqkpFLBD79cPDJZqCboAo43zfwK5Jn18=;
 b=BGvOmAJVMGcYydUzMMi3jJ9SudK130NYYbSHtyClqDsxhkxsxy+47MPlZ80vYEadx9/cP1Z6AGLreexpJZyuMQ5XiMq7P4BB+1BaXzqHUoO4g3fmM7BOmtU1Daso18mR3vhSYeYuB5t3nyFZ75incwUVgV8Hxg9nOB2ndKz5XE7+QBqF1dBsqiHs9N5O6eoLjWvtYi4ax25fqwks7n/GFHqZZA+Q8ZYZ86g0U8GnLw7sfHAgOdUuwsVMTuR1+EuFVkW9R/girhFSLvSLOa6GYye9E99smKbmaWWXxlzXi+HT9ubYbOQmufJ4qMBOJ0hdJQL1tna/TgfxUXJnNujKyA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=E65VnSANYBFDqkpFLBD79cPDJZqCboAo43zfwK5Jn18=;
 b=2xSgEkwlyb/1OsMW5lDAZUk72Sl68V3rsriOhQhIXjuSTR+5GQiAPV7CIUwTnxfCMvSrjP4vhgqx9uQnHieWLh1GxU5UilROnvCEFgffIQffRe0WtgLKGcBrC6TuidpH2c/61Ov6zdfLDuykoL3JfyBoNCInAZnAGoYkR4PCG3I=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Michal Orzel <michal.orzel@amd.com>
Subject: [ImageBuilder PATCH v2] uboot-script-gen: use size from arm64 Image header
Date: Tue, 12 Sep 2023 16:43:44 -0400
Message-ID: <20230912204345.7271-1-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000EE3C:EE_|PH7PR12MB6562:EE_
X-MS-Office365-Filtering-Correlation-Id: 6d774baf-8e33-4831-6c9e-08dbb3d0f824
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KKYCTJ9XcwuNSOk8WTCTyq0WwCrCxQ4vY10P2s0mqCRVdNwKVUiVpIJbm1ip72pGrUzVPVOimOSN/98MBGqimRnMvMj92VM+1sZstdkiHpssRcChDGK67d0BHaRCrn+2MHIA+qayP8+pMXRhgHmAPR6anhy7WI8JDn1OrUN9Halcs4GM1p1iCOBaeSRbJzVQBsZwEPuKuw9cGVV3ImsOERorWiK39zBlYl3HEif3SP3dHu/7L0cG0gv6wgFTozJsBEdAlzAAftcGJIzkS56kE4nGUXhN7e1iOGJhKdEZru0bnLwhzB29ON4cJL3J8NBtXNkN1/Reb/vgdI9qN7+j6ie6gtlrjZ8VtlVgn42NV+MR81CeSzqiFKfR/YpE3lzktrw01jwVknjS+5Irb8Ow620H6Kxu5v2RKepen9YAC/GR8MkmGbgrnG52JSc5JRUlHXgWKJhysyK4bYqcYwMPAY4BStAOFI7yMfHkR4F6B/EpBtRhBWwaq6feOK5bKQAOvlh1bqsEW68SmMEBbNL+lvEbGw1w5mtNa9EibQbMPmzFA4Uyje7pW4AcxB2Jy2TnJ0VMryOh4PocTvzMX3RNk6W0FOA+O3ELKnEbOFIMFtNsXy2bb4Y4rEKCHbK/5i1nWNF2pSSmw+g8yscsKy5ydYzl4YntC+KCdhRK6hK0nXnT2cQ8pYT0NQePI+TR+G0pJXpP8Y01WtdLRWIdVLQXkTZytuNdgmqLcXjrLh2/DiQDSCnhwiwB+5BFV8QWo/2C
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(396003)(136003)(376002)(451199024)(82310400011)(1800799009)(186009)(36840700001)(46966006)(40470700004)(81166007)(82740400003)(356005)(40480700001)(86362001)(36756003)(40460700003)(478600001)(2906002)(316002)(6666004)(8936002)(6916009)(44832011)(5660300002)(41300700001)(54906003)(4326008)(70586007)(47076005)(8676002)(70206006)(36860700001)(83380400001)(1076003)(426003)(26005)(336012)(2616005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2023 20:43:49.9669
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6d774baf-8e33-4831-6c9e-08dbb3d0f824
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000EE3C.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6562

There is a corner case where the filesizes of the xen and Linux kernel images
are not sufficient. These binaries likely contain NOLOAD sections (e.g. bss),
which are not accounted in the filesize.

Check for the presence of an arm64 kernel image header, and get the effective
image size from the header. Use the effective image size for calculating the
next load address and for populating the size in the /chosen/dom*/reg property.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v1->v2:
* add in-code comments
* use variables more
---
 scripts/uboot-script-gen | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/scripts/uboot-script-gen b/scripts/uboot-script-gen
index 9656a458ac00..f0972d983017 100755
--- a/scripts/uboot-script-gen
+++ b/scripts/uboot-script-gen
@@ -2,7 +2,7 @@
 
 offset=$((2*1024*1024))
 filesize=0
-prog_req=(mkimage file fdtput mktemp awk)
+prog_req=(mkimage file fdtput mktemp awk od)
 
 function cleanup_and_return_err()
 {
@@ -435,6 +435,21 @@ function add_size()
 {
     local filename=$1
     local size=`stat -L --printf="%s" $filename`
+    # Read arm64 header magic (https://www.kernel.org/doc/Documentation/arm64/booting.txt)
+    local arm64_header_magic=$(od -j 56 -N 4 -t x4 ${filename} | head -n 1 | awk -F' ' '{ print $2 }')
+
+    # Check for valid arm64 header magic value 0x644d5241
+    if [ "${arm64_header_magic}" = "644d5241" ]
+    then
+        # Read effective size, which may be larger than the filesize due to noload sections, e.g. bss
+        local arm64_header_size=$(od -j 16 -N 8 -t u8 ${filename} | head -n 1 | awk -F' ' '{ print $2 }')
+
+        if [ "${arm64_header_size}" -gt "${size}" ]
+        then
+            size=${arm64_header_size}
+        fi
+    fi
+
     memaddr=$(( $memaddr + $size + $offset - 1))
     memaddr=$(( $memaddr & ~($offset - 1) ))
     memaddr=`printf "0x%X\n" $memaddr`
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 23:21:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 23:21:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600818.936618 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgChI-00009B-Ab; Tue, 12 Sep 2023 23:21:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600818.936618; Tue, 12 Sep 2023 23:21:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgChI-000094-7X; Tue, 12 Sep 2023 23:21:32 +0000
Received: by outflank-mailman (input) for mailman id 600818;
 Tue, 12 Sep 2023 23:21:30 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qLIb=E4=citrix.com=prvs=612d1dac3=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgChG-0008LM-Rf
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 23:21:30 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 195576dd-51c3-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 01:21:29 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 195576dd-51c3-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694560889;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=TPtQd6hiTg1m7iqDzeBPWUoVM8rZQDcw4p+B8we5LIA=;
  b=MPHVI741XHz6h2i8gBrf/EhRl9qqCXWlfRcuskSMmf4HICyqJ1YdMAC6
   TJnuiYEKfxnhBdkTGBtv9qAUiysWfUBmRg/1WFlKERqJvQnF1VMOBeFAG
   bOWeTfxLvgZL2iNfmAiVseKRaf1TzStPwgGW/P7aWEFz+P0UnzBkKsfrd
   k=;
X-CSE-ConnectionGUID: nO66D9+OQ+yXSxiZ0nj3dw==
X-CSE-MsgGUID: 9ZiftbiVQ4e8oDFfvcXOCg==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125168440
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:CuUizasrubwxiTh+yJaol1NFAOfnVH5eMUV32f8akzHdYApBsoF/q
 tZmKW7Vaa3eamShLdwgaIm3/UgP78Ldxt9gQFduqn00FyxA+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4lv0gnRkPaoQ5A6HzSFIZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwLhdTMDzSxMWPg6OLcflttJwlLpLnI9ZK0p1g5Wmx4fcORJnCR+PB5MNC3Sd2jcdLdRrcT
 5NHM3w1Nk2GOkARfA5NU/rSn8/x7pX7WxRepEiYuuwc5G/LwRYq+LPsLMDUapqBQsA9ckOw/
 zibpjqpXk1CXDCZ4Wu383ywjO7xpH/2CIU+OrOm/c5Nq1LGkwT/DzVJDADm8JFVkHWWS99Zb
 kAZ5Ccqhawz71CwCMnwWQWip3yJtQJaXMBfe8UYwgyQzqvf4y6CG3MJCDVGbbQOq8seVTEsk
 FiTkLvBBz1pt73TSnub+fGXtxu9PCEUKSkJYipscOcey4C9+sdp1EuJF4s9Vvfv1bUZBA0c3
 RiMi3Zgq+RQqvdIxpWA7VH12zSu/ZTWG1tdChrsYkqp6QZwZYiAboOu6ETG4fsoELt1XmVtr
 1BfxZHAsblm4YWl0XXUHb5TRO3BC+OtamW0vLJ5I3U2G91BEVaHdJsY3jxxLVwB3i0sKW6wO
 x+7Ve+8CfZu0JqWgU1fOdLZ5ycCl/KI+THZuhf8N4AmX3SJXFXblByCnGbJt4wXrGAikLskJ
 bCQetu2AHARBMxPlWTnG7pBiuF2n31jnAs/oKwXKDz9jdKjiIO9E+9ZYDNikMhphE97nOkl2
 4kGbJbbo/mueOb/fjPW4eYuwaMidBAG6WTNg5UPLIare1M2cFzN/teNmdvNjaQ5xfUK/goJl
 1nhMnJlJK3X3CSZcl3aMy47OdsCn/9X9BoGAMDlBn7ws1BLXGplxP53m0cfFVX/yNFe8A==
IronPort-HdrOrdr: A9a23:LJa/56jNUqLAAyyHGLhMieAcgXBQXuAji2hC6mlwRA09TyXPrb
 HIoB19726WtN9xYhEdcL+7U5VoLUm3yXcX2+gs1NWZMzUO41HYSL2KhLGKqwEIfReSygc378
 ldmsZFZOEZojJB/KDHCKXTKadD/DEnmprY4Nvj8w==
X-Talos-CUID: 9a23:YVOi22Ayl4ODhhD6Ey9AqhA4S4MCSz7M/EzAIn3gD2QyRKLAHA==
X-Talos-MUID: 9a23:np+pAAllwjC/U6K8LgV3dnozBsZm/66vNnlRnMUBl+eKKydAHByS2WE=
X-IronPort-AV: E=Sophos;i="6.02,141,1688443200"; 
   d="scan'208";a="125168440"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Jinoh Kang
	<jinoh.kang.kr@gmail.com>
Subject: [PATCH 0/5] x86/pv: #DB vs %dr6 fixes, part 2
Date: Wed, 13 Sep 2023 00:21:08 +0100
Message-ID: <20230912232113.402347-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Slightly RFC.  This is the next chunk of debug fixes from the bug that Jinoh
reported.

I've decided to tackle PV guests alone to simplify the problem (No
introspection, get some of the core changes in place).

Patch 5 is still a bit chunky to follow, but I can't see any way to simplify
it without transiently breaking something.

Patchs 1 and 3 are entirely new, relative to previous postings of this work.
Others are rebased/shuffled.

There are still bugs/misfeatures:

 1) Data breakpoints during emulation (copy to/from guest) are accounted
    against Xen and not given back to the guest.
 2) Instruction breakpoints aren't calculated for FEP; CPUID.  This may not
    matter, but like everything in PV, it's undocumented and unclear if it's
    intended behaviour or not.

that can be left to some other future to fix.

Andrew Cooper (5):
  x86/pv: Fix the determiniation of whether to inject #DB
  x86: Introduce x86_merge_dr6()
  x86/emul: Add a pending_dbg field to x86_emulate_ctxt.retire
  x86/pv: Drop priv_op_ctxt.bpmatch and use pending_dbg instead
  x86/pv: Rewrite %dr6 handling

 xen/arch/x86/debug.c                   | 20 +++++++++++++++++
 xen/arch/x86/include/asm/debugreg.h    |  7 ++++++
 xen/arch/x86/include/asm/domain.h      | 12 ++++++++++
 xen/arch/x86/include/asm/x86-defns.h   |  7 ++++++
 xen/arch/x86/pv/emul-priv-op.c         | 31 +++++++++++++-------------
 xen/arch/x86/pv/emulate.c              |  6 ++---
 xen/arch/x86/pv/ro-page-fault.c        |  4 ++--
 xen/arch/x86/pv/traps.c                | 17 ++++++++++----
 xen/arch/x86/traps.c                   | 12 +++++-----
 xen/arch/x86/x86_emulate/x86_emulate.c |  6 ++++-
 xen/arch/x86/x86_emulate/x86_emulate.h | 22 ++++++++++++++----
 11 files changed, 109 insertions(+), 35 deletions(-)

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 23:21:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 23:21:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600820.936638 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgChK-0000eq-Pj; Tue, 12 Sep 2023 23:21:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600820.936638; Tue, 12 Sep 2023 23:21:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgChK-0000eh-LX; Tue, 12 Sep 2023 23:21:34 +0000
Received: by outflank-mailman (input) for mailman id 600820;
 Tue, 12 Sep 2023 23:21:32 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qLIb=E4=citrix.com=prvs=612d1dac3=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgChI-0008LM-P9
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 23:21:32 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1ab09b80-51c3-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 01:21:30 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1ab09b80-51c3-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694560890;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=auuaGN9D4TVXp5GeCAINQDXwp5U7lbZ3pClmTMDFPMs=;
  b=VQxGTcRBea7NiSWMp1dwFZZCmOb3fKLi3TZbIFZOk23mHSdMEpJLzu39
   HSU4IqEHz1kwnFFEIAL+pHdVch6rSt5ncRyjvDSpYE3Xfs0eQA7DtiWUk
   5XoIshtL+DLO36CwLAkJME/a2HwKD944tBfpbVsj/eJ/Lllh0rjFh6gV3
   Q=;
X-CSE-ConnectionGUID: nO66D9+OQ+yXSxiZ0nj3dw==
X-CSE-MsgGUID: b5lsfuY1SGmYOEAYxHGXvA==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125168441
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:3t7r/65G8mg84RJrkWikRQxRtBDHchMFZxGqfqrLsTDasY5as4F+v
 jEXDzyOOPeOMDH0Lt9wYY3g9EJTvsPVz9JgT1M4/CxhHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU35pwehBtC5gZlPaES5geD/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m8
 9tGdhxcLTe6xPOG+6K6eLFqhJ8vM5y+VG8fkikIITDxCP8nRdbIQrnQ5M8e1zA17ixMNa+AP
 YxDM2MpNUmeJUQVYT/7C7pn9AusrlD5fydVtxS+oq0v7nKI5AdwzKLsIJzefdniqcB9xxzF/
 zyWozigav0cHNbCzSGL70P1vcDKrATWcbMCNJKI6Nc/1TV/wURMUUZLBDNXu8KRmkO4Ht5SN
 UEQ0i4vtrQpslymSMHnWB+1q2LCuQQTM/JyOeAn7ACGyoLP/h2UQGMDS1Zpd9gOpMIwAzsw2
 TehndLvAjwps7STRjSe7J+bqDqzPW4eKmpqWMMfZVJbuZ+5+th110+RCI85S8ZZk+EZBxn25
 G7UgHl9oIxQnP4wx6SJpVbF2D6z882hohEO2i3bWWes7wVcbYGjZpC15VWz0cusPLp1XXHa4
 iFaxpH2APQmSMjUyXfTGLll8KSBva7tDdHKvbJ483DNHRyJ8mXrQ41f6SoWyKxBYpddIm+Bj
 KM+VGpsCH5v0JmCN/8fj2GZUZ5CIU3c+TPND6q8Uza2SsItHDJrBQk3DaJq40jjkVI3jYY0M
 oqBfMCnAB4yUPo2kGfqHLlAiOJ2n0jSIF8/orihk3yaPUe2PibJGd/pznPeBgzG0E90iFqMq
 IsOXyd74x5eTPf/ckHqHX07dDg3wYwALcmu8aR/L7fTSjeK7Ul9U5c9N5t9Id0690mU/8+Ul
 kyAtrhwkQOh3iWXcFvSOxiOqtrHBP5CkJ7yBgR0VX7A5pTpSdzHAHs3H3fvQYQayQ==
IronPort-HdrOrdr: A9a23:Rtgxxq92BiJh1OibzVZuk+DiI+orL9Y04lQ7vn2ZHyYlFfBw8P
 re/8jztCWVtN9/YhodcLy7UpVoIkm8yXcW2+Ys1OyZLW3bUQKTRelfBO3ZrgEIcBeRygcy78
 tdmwcVMqyXMbDX5/yKgjVRsrwbsby6zJw=
X-Talos-CUID: 9a23:v4gJEGOujnB5Cu5DXg45qmJFWeccMWzt92fRERe+Cz1lV+jA
X-Talos-MUID: =?us-ascii?q?9a23=3AXK57/Q0J7cl5iMrwuTvuXSvmuTUj6fmqE04QoMw?=
 =?us-ascii?q?9lMy1EgFZCie9owSpa9py?=
X-IronPort-AV: E=Sophos;i="6.02,141,1688443200"; 
   d="scan'208";a="125168441"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Jinoh Kang
	<jinoh.kang.kr@gmail.com>
Subject: [PATCH 1/5] x86/pv: Fix the determiniation of whether to inject #DB
Date: Wed, 13 Sep 2023 00:21:09 +0100
Message-ID: <20230912232113.402347-2-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230912232113.402347-1-andrew.cooper3@citrix.com>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

We long ago fixed the emulator to not inject exceptions behind our back.
Therefore, assert that that a PV event (including interrupts, because that
would be buggy too) isn't pending, rather than skipping the #DB injection if
one is.

On the other hand, the io_emul() stubs which use X86EMUL_DONE rather than
X86EMUL_OKAY may have pending breakpoints to inject after the IO access is
complete, not to mention a pending singlestep.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Jinoh Kang <jinoh.kang.kr@gmail.com>
---
 xen/arch/x86/pv/emul-priv-op.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index 142bc4818cb5..257891a2a2dd 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -1358,14 +1358,18 @@ int pv_emulate_privileged_op(struct cpu_user_regs *regs)
     switch ( rc )
     {
     case X86EMUL_OKAY:
+    case X86EMUL_DONE:
+        ASSERT(!curr->arch.pv.trap_bounce.flags);
+
         if ( ctxt.ctxt.retire.singlestep )
             ctxt.bpmatch |= DR_STEP;
+
         if ( ctxt.bpmatch )
         {
             curr->arch.dr6 |= ctxt.bpmatch | DR_STATUS_RESERVED_ONE;
-            if ( !(curr->arch.pv.trap_bounce.flags & TBF_EXCEPTION) )
-                pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
+            pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
         }
+
         /* fall through */
     case X86EMUL_RETRY:
         return EXCRET_fault_fixed;
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 23:21:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 23:21:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600822.936649 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgChL-0000tL-Iz; Tue, 12 Sep 2023 23:21:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600822.936649; Tue, 12 Sep 2023 23:21:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgChL-0000r3-Dh; Tue, 12 Sep 2023 23:21:35 +0000
Received: by outflank-mailman (input) for mailman id 600822;
 Tue, 12 Sep 2023 23:21:34 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qLIb=E4=citrix.com=prvs=612d1dac3=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgChK-0000Tq-OZ
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 23:21:34 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 19dcf772-51c3-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 01:21:31 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 19dcf772-51c3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694560891;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=I+t08q4edjlX+Xq8TCZHZvBTk0F1uFlqxmMDbLaf4mY=;
  b=hqp3EJWCNXKrQZik1o0b5axZ2r91hzESwjcAsyKUMQxGGrEF1EcjW3j+
   KRNmdWBU1iUM0w4laBiPEAbbgukNd4oobFd8YlsD8lSqo4jPP/8NkV7h3
   ryd1gEyO2uHCpPLtjOChR9a+QG7AqFjexDP3JL8wqh7ut0ToOC73JWbjl
   4=;
X-CSE-ConnectionGUID: +h1fXvQHQkmwDB2eMJUqUg==
X-CSE-MsgGUID: FJMcmrPeQn6tryP3ZGVlgA==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 121104892
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:3vWIxaxEq/v/DVkj61F6t+cfxirEfRIJ4+MujC+fZmUNrF6WrkUEy
 WRJWDyCa/uDZWGne4h2a43j8UkCsZWEn9dgTwc6/yAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EkHUMja4mtC5QRvPKoT4TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KSJOr
 PIoNgktVxOGmM6cmr+eaNR1u8t2eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP
 ZBAL2MyMlKZOUYn1lQ/UfrSmM+BgHXlfiIeg1WSvactuEDYzRBr0airO93QEjCPbZwPxx/A+
 jKXpQwVBDk0FvmUzCC9/0uq2PPVjBugaq0sELKRo6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL
 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0efBdDuk74wGl0bfP7kCSAW1sZiFFQMwrsokxXzNC/
 l2ImdTpQz9mtrLTSmi1+bKdrDf0Mi8QRVLufgddE1FDuYO65thu0FSWFI0L/LOJYsPdWjGpz
 QCUlQgHhLAMoeRR2oCZwEn6jGf5znTWdTId6gLSV2Ojywp2Yo+5eoClgWTmAeZ8wJWxFQfY4
 iVd8ySKxKVXVMzWynTRKAkYNOvxj8tpJgEwlrKG83MJ0z22s0CucolLiN2VDBc4a51UEdMFj
 aK6hO+w2HOxFCH6BUOUS9jrYyjP8UQHPY2/Ps04lvIUPvBMmPavpUmCn3K40WH3i1QLmqoiI
 5qdesvEJS9EWPg6kGHoGr5AjOZDKsUCKYT7H8yT8vha+eDGOC79pUktYDNikdzVHIvb+V6Io
 r6zxuOByglFUf2WX8Uk2dd7ELz+FlBiXcqeg5UOJoa+zv9ORDlJ5wn5nelwJOSIXs19yo/1w
 51KchYBlgGn1SSZcVTih7IKQOqHYKuTZEkTZUQEVWtEEVB6CWpzxM/zr6cKQIQ=
IronPort-HdrOrdr: A9a23:rI8Wo6qbu7TY2S9WSVKJK30aV5r9eYIsimQD101hICG9Ffbo9P
 xG/c5rtyMc7QxwZJhOo6H7BEC/ewK6yXcY2/hvAV7AZniBhILLFvAa0WKK+VSJcBEWkNQtqZ
 uIGJIOc+EYY2IK8PoTmGODYrIdKN7uys6VbbC39RtQpdoDUdAZ0+9qYjz7LqVkLDMoOXIofK
 D32iJczwDMRZxvBP7LY0U4Yw==
X-Talos-CUID: 9a23:AiiQX2y2KlyC2++E1hVkBgVXGpkrQmPk7E7TJlCUIzxkbZ+oUGKfrfY=
X-Talos-MUID: 9a23:39MKXAoItbwxmzAnilYezx9AEcxt+ZyjMUZTjY8Xg5K2GhJ0NB7I2Q==
X-IronPort-AV: E=Sophos;i="6.02,141,1688443200"; 
   d="scan'208";a="121104892"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Jinoh Kang
	<jinoh.kang.kr@gmail.com>
Subject: [PATCH 3/5] x86/emul: Add a pending_dbg field to x86_emulate_ctxt.retire
Date: Wed, 13 Sep 2023 00:21:11 +0100
Message-ID: <20230912232113.402347-4-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230912232113.402347-1-andrew.cooper3@citrix.com>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Lots of this is very very broken, but we need to start somewhere.

PENDING_DBG, INTERRUPTIBILITY and ACTIVITY are internal pipeline registers
which Intel exposed to software in the VMCS, and AMD exposed a subset of in
the VMCB.  Importantly, bits set in PENDING_DBG can survive across multiple
instruction boundaries if e.g. delivery of #DB is delayed by a MovSS.

For now, introduce a full pending_dbg field into the retire union.  This keeps
the sh_page_fault() and init_context() paths working but in due course the
field will want to lose the "retire" infix.

In addition, set singlestep into pending_dbg as appropriate.  Leave the old
singlestep bitfield in place until we can adjust the callers to handle it
properly.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Jinoh Kang <jinoh.kang.kr@gmail.com>
---
 xen/arch/x86/x86_emulate/x86_emulate.c |  6 +++++-
 xen/arch/x86/x86_emulate/x86_emulate.h | 17 ++++++++++++++---
 2 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/x86_emulate/x86_emulate.c b/xen/arch/x86/x86_emulate/x86_emulate.c
index e88245eae9fb..de707c8ec211 100644
--- a/xen/arch/x86/x86_emulate/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -8379,7 +8379,10 @@ x86_emulate(
     if ( !mode_64bit() )
         _regs.r(ip) = (uint32_t)_regs.r(ip);
 
-    /* Should a singlestep #DB be raised? */
+    if ( singlestep )
+        ctxt->retire.pending_dbg |= X86_DR6_BS;
+
+    /* Should a singlestep #DB be raised? (BROKEN - TODO, merge into pending_dbg) */
     if ( rc == X86EMUL_OKAY && singlestep && !ctxt->retire.mov_ss )
     {
         ctxt->retire.singlestep = true;
@@ -8659,6 +8662,7 @@ int x86_emulate_wrapper(
     {
         typeof(ctxt->retire) retire = ctxt->retire;
 
+        retire.pending_dbg = 0;
         retire.unblock_nmi = false;
         ASSERT(!retire.raw);
     }
diff --git a/xen/arch/x86/x86_emulate/x86_emulate.h b/xen/arch/x86/x86_emulate/x86_emulate.h
index 698750267a90..f0e74d23c378 100644
--- a/xen/arch/x86/x86_emulate/x86_emulate.h
+++ b/xen/arch/x86/x86_emulate/x86_emulate.h
@@ -588,15 +588,26 @@ struct x86_emulate_ctxt
     /* Canonical opcode (see below) (valid only on X86EMUL_OKAY). */
     unsigned int opcode;
 
-    /* Retirement state, set by the emulator (valid only on X86EMUL_OKAY). */
+    /*
+     * Retirement state, set by the emulator (valid only on X86EMUL_OKAY/DONE).
+     *
+     * TODO: all this state should be input/output from the VMCS PENDING_DBG,
+     * INTERRUPTIBILITY and ACTIVITIY fields.
+     */
     union {
-        uint8_t raw;
+        unsigned long raw;
         struct {
+            /*
+             * Accumulated %dr6 trap bits, positive polarity.  Should only be
+             * interpreted in the case of X86EMUL_OKAY/DONE.
+             */
+            unsigned int pending_dbg;
+
             bool hlt:1;          /* Instruction HLTed. */
             bool mov_ss:1;       /* Instruction sets MOV-SS irq shadow. */
             bool sti:1;          /* Instruction sets STI irq shadow. */
             bool unblock_nmi:1;  /* Instruction clears NMI blocking. */
-            bool singlestep:1;   /* Singlestepping was active. */
+            bool singlestep:1;   /* Singlestepping was active. (TODO, merge into pending_dbg) */
         };
     } retire;
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 23:21:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 23:21:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600821.936643 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgChL-0000hK-5y; Tue, 12 Sep 2023 23:21:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600821.936643; Tue, 12 Sep 2023 23:21:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgChK-0000ge-Ty; Tue, 12 Sep 2023 23:21:34 +0000
Received: by outflank-mailman (input) for mailman id 600821;
 Tue, 12 Sep 2023 23:21:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qLIb=E4=citrix.com=prvs=612d1dac3=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgChJ-0008LM-PS
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 23:21:33 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1b46ccd3-51c3-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 01:21:31 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1b46ccd3-51c3-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694560891;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=apmerlyDUBgQyxtkEbBPNC4C0DW18lxpoQKg6ktPeMI=;
  b=GNU7BbtQZe7IUE4NS4X7GG8SjU2lunIePUv/DuH/hDj9yTFSyUMKL0hh
   WxqaO8feQpuCvjcza9Y3/B8TfM81pSiQ19Xb1LM1xYwQ86vpPDmC4YbV2
   orxGN6yqA8Bvk5PEi9LI7Y9ywMXqnae4zmc5weXr2VgOHzQMAcn6/jnJp
   E=;
X-CSE-ConnectionGUID: nO66D9+OQ+yXSxiZ0nj3dw==
X-CSE-MsgGUID: 3A1q4fmuT5W4bqNegB7EWg==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125168442
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:WluxHaoRxEKXmnclhAYkSF5bz3BeBmIwZRIvgKrLsJaIsI4StFCzt
 garIBmAafbZY2ejeIgnOYiz9UsC7MLQz4UwQAI+qCgxE34UoJuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GlwUmAWP6gR5wePziNNUfrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXADYqME6v1qGR+fGqetJ8h/Z7KsuwMJxK7xmMzRmBZRonaZXKQqGM7t5ExjYgwMtJGJ4yZ
 eJAN2ApNk6ZJUQSZBFOUslWcOSA3xETdxVxrl6PqLVxyG/U1AFri5DmMcbPe8zMTsJQ9qqdj
 jucoj2nUk1GbrRzzxLe2yu12uHKgB+mZ94YDZu1+dQ1rWKckzl75Bo+CgLg/KjRZlSFc8JSL
 QkY9zQjqYA29Ve3VZ/tUhugunmGsxUAHd1KHIUSyiuA167V6AaxHXUfQ3hKb9lOnNAybSwn0
 BmOhdyBLT5utrqVD3GU8LjSrimaNi0cLGtEbigBJTbp+PG6/tt11EiWCI8+Tujs1Iad9SzML
 y6iqg9g2ZlCzukylLSLxkDGsWqqpMPFUVtgjunIZV6N4gR8bY+jQoWn71nH8PpNRLqkokm9U
 GsswJbHsr1XZX2ZvGnUGbhWQun1jxqQGGeE6WODCaXN4NhEF5SLWYlLqA9zK05yWirvUW+4O
 RSD0e+9CXI6AZdLUUOVS9jhYyjJ5fK6fTgAahwzRoMUCqWdjCfdoElTibe4hggBanQEn6AlI
 ou8es2xF3scAqkP5GPoFrtAjeR1m3ljmDq7qXXHI/OPi+b2WZJoYe1dbAvmgh4RvMtoXzk5A
 /4AbpDXmn2zocX1YzXN8J57ELz5BSFTOHwCkOQOLrTrClM/SAkc5wr5netJl3pNw/4EyY8lP
 xiVBidl9bYIrSSed17SOik9MOKHsFQWhStTABHA9G2AgxALCbtDJo9FH3frVdHLLNBe8MM=
IronPort-HdrOrdr: A9a23:zJpDGqDuy/6moNHlHemW55DYdb4zR+YMi2TDgXoBLiC9Ffbo9P
 xG/c566faasl0ssR0b8+xoW5PgfZq/z/FICNIqTNOftWDd0QOVxedZgLcKqAePJ8SRzIJgPQ
 gLSdkZNDVdZ2IK7/oTQWODYrMd/OU=
X-Talos-CUID: =?us-ascii?q?9a23=3AOC6ACGp2xm/8TAVC0A384tbmUcYCLCPxnTT3Ggy?=
 =?us-ascii?q?pOV15SY/NT13L9Lwxxg=3D=3D?=
X-Talos-MUID: 9a23:XKj01gT2w/Wjb3k8RXS3rWh7aMlt/pjzNxwHiLMLtOPbGBN/bmI=
X-IronPort-AV: E=Sophos;i="6.02,141,1688443200"; 
   d="scan'208";a="125168442"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Jinoh Kang
	<jinoh.kang.kr@gmail.com>
Subject: [PATCH 2/5] x86: Introduce x86_merge_dr6()
Date: Wed, 13 Sep 2023 00:21:10 +0100
Message-ID: <20230912232113.402347-3-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230912232113.402347-1-andrew.cooper3@citrix.com>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

The current logic used to update %dr6 when injecting #DB is buggy.  The
architectural behaviour is to overwrite B{0..3} and accumulate all other bits.

Introduce x86_merge_dr6() to perform the operaton properly.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Jinoh Kang <jinoh.kang.kr@gmail.com>
---
 xen/arch/x86/debug.c                 | 20 ++++++++++++++++++++
 xen/arch/x86/include/asm/debugreg.h  |  7 +++++++
 xen/arch/x86/include/asm/x86-defns.h |  7 +++++++
 3 files changed, 34 insertions(+)

diff --git a/xen/arch/x86/debug.c b/xen/arch/x86/debug.c
index 127fe83021cd..bfcd83ea4d0b 100644
--- a/xen/arch/x86/debug.c
+++ b/xen/arch/x86/debug.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2023 XenServer.
  */
 #include <xen/kernel.h>
+#include <xen/lib.h>
 
 #include <xen/lib/x86/cpu-policy.h>
 
@@ -28,6 +29,25 @@ unsigned int x86_adj_dr6_rsvd(const struct cpu_policy *p, unsigned int dr6)
     return dr6;
 }
 
+unsigned int x86_merge_dr6(const struct cpu_policy *p, unsigned int dr6,
+                           unsigned int new)
+{
+    /* Flip dr6 to have positive polarity. */
+    dr6 ^= X86_DR6_DEFAULT;
+
+    /* Sanity check that only known values are passed in. */
+    ASSERT(!(dr6 & ~X86_DR6_KNOWN_MASK));
+    ASSERT(!(new & ~X86_DR6_KNOWN_MASK));
+
+    /* Breakpoint matches are overridden.  All other bits accumulate. */
+    dr6 = (dr6 & ~X86_DR6_BP_MASK) | new;
+
+    /* Flip dr6 back to having default polarity. */
+    dr6 ^= X86_DR6_DEFAULT;
+
+    return x86_adj_dr6_rsvd(p, dr6);
+}
+
 unsigned int x86_adj_dr7_rsvd(const struct cpu_policy *p, unsigned int dr7)
 {
     unsigned int zeros = X86_DR7_ZEROS;
diff --git a/xen/arch/x86/include/asm/debugreg.h b/xen/arch/x86/include/asm/debugreg.h
index 39ba312b84ee..e98a9ce977fa 100644
--- a/xen/arch/x86/include/asm/debugreg.h
+++ b/xen/arch/x86/include/asm/debugreg.h
@@ -89,4 +89,11 @@ struct cpu_policy;
 unsigned int x86_adj_dr6_rsvd(const struct cpu_policy *p, unsigned int dr6);
 unsigned int x86_adj_dr7_rsvd(const struct cpu_policy *p, unsigned int dr7);
 
+/*
+ * Merge new bits into dr6.  'new' is always given in positive polarity,
+ * matching the Intel VMCS PENDING_DBG semantics.
+ */
+unsigned int x86_merge_dr6(const struct cpu_policy *p, unsigned int dr6,
+                           unsigned int new);
+
 #endif /* _X86_DEBUGREG_H */
diff --git a/xen/arch/x86/include/asm/x86-defns.h b/xen/arch/x86/include/asm/x86-defns.h
index 5838631ef634..edfecc89bd08 100644
--- a/xen/arch/x86/include/asm/x86-defns.h
+++ b/xen/arch/x86/include/asm/x86-defns.h
@@ -116,6 +116,13 @@
 #define X86_DR6_BT              (_AC(1, UL) << 15)   /* Task switch                 */
 #define X86_DR6_RTM             (_AC(1, UL) << 16)   /* #DB/#BP in RTM region (INV) */
 
+#define X86_DR6_BP_MASK                                 \
+    (X86_DR6_B0 | X86_DR6_B1 | X86_DR6_B2 | X86_DR6_B3)
+
+#define X86_DR6_KNOWN_MASK                                      \
+    (X86_DR6_BP_MASK | X86_DR6_BLD | X86_DR6_BD | X86_DR6_BS |  \
+     X86_DR6_BT | X86_DR6_RTM)
+
 #define X86_DR6_ZEROS           _AC(0x00001000, UL)  /* %dr6 bits forced to 0       */
 #define X86_DR6_DEFAULT         _AC(0xffff0ff0, UL)  /* Default %dr6 value          */
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 23:21:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 23:21:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600817.936607 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgChH-0008Lg-3t; Tue, 12 Sep 2023 23:21:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600817.936607; Tue, 12 Sep 2023 23:21:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgChH-0008LZ-18; Tue, 12 Sep 2023 23:21:31 +0000
Received: by outflank-mailman (input) for mailman id 600817;
 Tue, 12 Sep 2023 23:21:30 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qLIb=E4=citrix.com=prvs=612d1dac3=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgChG-0008LM-Jt
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 23:21:30 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1783b4b6-51c3-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 01:21:28 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1783b4b6-51c3-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694560887;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=17zQ/LA3e8HCaF9E25s0sPXuwUparmz1rf9n5G2YsDI=;
  b=LpmLpRE+XhrXvj6S6m8yRSFolHHsrM5+Misf+55n3owHTrW6b2LIpl31
   J24sMVZTiq8NkcGJ9rxEvGvDdRXgRRwh/xlz8uUVXwMmDvykXMB4PPipd
   Vd5ofrxlF64mQkwzcxvsYtbzWfW2OAOPq3e6JAd4iZE2lFViWlF71uXlT
   U=;
X-CSE-ConnectionGUID: 77hly/MbRSyZrodrhAl29Q==
X-CSE-MsgGUID: BPWehqUeTh+3I1FvjXVUaQ==
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 122460587
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:kyXTiKAro9YIQBVW/wHjw5YqxClBgxIJ4kV8jS/XYbTApDor0TYFx
 2obXmzSPvuCZDCne9FwPYq+90gOv8DcxtRlQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMscpvlDs15K6p4GJB5ARjDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwpbl3BXAJ0
 PYiEyE/dBePneKfxOjqc7w57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP
 pdHL2M1N3wsYDUWUrsTILs4kP2lmT/UdDpApUjOjaE2/3LS3Ep6172F3N/9I4bQGZsNwxbHz
 o7A107BPRwaLeGS9TrGqVP1qPHNrR3GUbtHQdVU8dY12QbOlwT/EiY+RVa95PW0lEO6c9ZeM
 FAPvDojq7Ao806mRcW7WAe3yFamlBMBX9tbE8Uh9RqAjKHT5m6xGWwsXjNHLts8u6ceRz0s0
 V/PnNrvCnpsqpWaTHuc8vGfqjbaBMQOBTZcP2leF1JDuoS95thp1XojU+qPDobq0d3xCHbVy
 QqxvRokgLkJjecPjfSCqAWvby2XmrDFSQs85wPyV22j7x9kaIPNW7FE+WQ3/t4bct/HEwDpU
 Gws3pHHsbtQVc3leDmlGr1lIV2/2xqS3NQwa3ZLFoJpyTmi8mXLkWt4sGAnfxcB3irplFbUj
 K7vVeF5vs870JiCN/Ufj2eN5yMClPKIKDgdfqqIBueim7AoHON9wAlgZFSLw0fmm1U2nKc0N
 P+zKJj9UStGUvo6lWfrHo/xNIPHIQhkmQvuqW3TlUz7gdJymlbFIVv6DLd+Rr9gt/7VyOkk2
 91eK9GL231ivB7WO0HqHXooBQlSdxATXMmmw/G7g8bfemKK7kl9Ua6OqV7gEqQ595loehDgp
 yjjARcIkQSn1BUq62yiMxheVV8mZr4nxVpTAMDmFQ/AN6QLCWp30JoiSg==
IronPort-HdrOrdr: A9a23:26F2HK+t0klHWH/HF2puk+AuI+orL9Y04lQ7vn2ZKSY5TiVXra
 CTdZUgpHnJYVMqMk3I9uruBEDtex3hHNtOkOss1NSZLW7bUQmTXeJfBOLZqlWNJ8S9zJ856U
 4JScND4bbLfDxHZKjBgTVRE7wbsaa6GKLDv5ah85+6JzsaGp2J7G1Ce3am+lUdfng+OXKgfq
 Dsm/auoVCbCAwqR/X+PFYpdc7ZqebGkZr3CCR2eyLOuGG1/EiVAKeRKWnj4isj
X-Talos-CUID: 9a23:DJXptW1R2MGvkZp6rCGAHbxfRZ8ldmya6X3qGF6KE2FlUr28TQXBwfYx
X-Talos-MUID: =?us-ascii?q?9a23=3AfCGxTA0EzEGc6fC5ntCVSzmeXjUjyZyRBUAUrJg?=
 =?us-ascii?q?6u4rfFHVeJTWtsgm+e9py?=
X-IronPort-AV: E=Sophos;i="6.02,141,1688443200"; 
   d="scan'208";a="122460587"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Jinoh Kang
	<jinoh.kang.kr@gmail.com>
Subject: [PATCH 4/5] x86/pv: Drop priv_op_ctxt.bpmatch and use pending_dbg instead
Date: Wed, 13 Sep 2023 00:21:12 +0100
Message-ID: <20230912232113.402347-5-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230912232113.402347-1-andrew.cooper3@citrix.com>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

With a full pending_dbg field in x86_emulate_ctxt, use it rather than using a
local bpmatch field.

This simplifies the OKAY/DONE path as singlestep is already accumulated by
x86_emulate() when appropriate.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Jinoh Kang <jinoh.kang.kr@gmail.com>
---
 xen/arch/x86/pv/emul-priv-op.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index 257891a2a2dd..6963db35c960 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -34,7 +34,6 @@ struct priv_op_ctxt {
         unsigned long base, limit;
     } cs;
     char *io_emul_stub;
-    unsigned int bpmatch;
 };
 
 /* I/O emulation helpers.  Use non-standard calling conventions. */
@@ -367,7 +366,8 @@ static int cf_check read_io(
     if ( !guest_io_okay(port, bytes, curr, ctxt->regs) )
         return X86EMUL_UNHANDLEABLE;
 
-    poc->bpmatch = check_guest_io_breakpoint(curr, port, bytes);
+    poc->ctxt.retire.pending_dbg |=
+        check_guest_io_breakpoint(curr, port, bytes);
 
     if ( admin_io_okay(port, bytes, currd) )
     {
@@ -472,7 +472,8 @@ static int cf_check write_io(
     if ( !guest_io_okay(port, bytes, curr, ctxt->regs) )
         return X86EMUL_UNHANDLEABLE;
 
-    poc->bpmatch = check_guest_io_breakpoint(curr, port, bytes);
+    poc->ctxt.retire.pending_dbg |=
+        check_guest_io_breakpoint(curr, port, bytes);
 
     if ( admin_io_okay(port, bytes, currd) )
     {
@@ -636,7 +637,8 @@ static int cf_check rep_ins(
         return X86EMUL_EXCEPTION;
     }
 
-    poc->bpmatch = check_guest_io_breakpoint(curr, port, bytes_per_rep);
+    poc->ctxt.retire.pending_dbg |=
+        check_guest_io_breakpoint(curr, port, bytes_per_rep);
 
     while ( *reps < goal )
     {
@@ -658,7 +660,7 @@ static int cf_check rep_ins(
 
         ++*reps;
 
-        if ( poc->bpmatch || hypercall_preempt_check() )
+        if ( poc->ctxt.retire.pending_dbg || hypercall_preempt_check() )
             break;
 
         /* x86_emulate() clips the repetition count to ensure we don't wrap. */
@@ -703,7 +705,8 @@ static int cf_check rep_outs(
         return X86EMUL_EXCEPTION;
     }
 
-    poc->bpmatch = check_guest_io_breakpoint(curr, port, bytes_per_rep);
+    poc->ctxt.retire.pending_dbg |=
+        check_guest_io_breakpoint(curr, port, bytes_per_rep);
 
     while ( *reps < goal )
     {
@@ -726,7 +729,7 @@ static int cf_check rep_outs(
 
         ++*reps;
 
-        if ( poc->bpmatch || hypercall_preempt_check() )
+        if ( poc->ctxt.retire.pending_dbg || hypercall_preempt_check() )
             break;
 
         /* x86_emulate() clips the repetition count to ensure we don't wrap. */
@@ -1361,12 +1364,9 @@ int pv_emulate_privileged_op(struct cpu_user_regs *regs)
     case X86EMUL_DONE:
         ASSERT(!curr->arch.pv.trap_bounce.flags);
 
-        if ( ctxt.ctxt.retire.singlestep )
-            ctxt.bpmatch |= DR_STEP;
-
-        if ( ctxt.bpmatch )
+        if ( ctxt.ctxt.retire.pending_dbg )
         {
-            curr->arch.dr6 |= ctxt.bpmatch | DR_STATUS_RESERVED_ONE;
+            curr->arch.dr6 |= ctxt.ctxt.retire.pending_dbg | DR_STATUS_RESERVED_ONE;
             pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
         }
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 23:21:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 23:21:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600819.936628 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgChJ-0000Ow-HJ; Tue, 12 Sep 2023 23:21:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600819.936628; Tue, 12 Sep 2023 23:21:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgChJ-0000Op-E8; Tue, 12 Sep 2023 23:21:33 +0000
Received: by outflank-mailman (input) for mailman id 600819;
 Tue, 12 Sep 2023 23:21:31 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qLIb=E4=citrix.com=prvs=612d1dac3=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgChH-0008LM-Ou
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 23:21:31 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1a55f0f5-51c3-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 01:21:30 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1a55f0f5-51c3-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694560889;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=phPA3tnKIFy3A0mEPKxsnBzaUvqhIfnN1XY0+oKtm6Y=;
  b=YyKbNGbJdxnOrTIrKWg2aBcYeGSyQbUJ7aWE1pKb2vPXYY1JL4mOvWrG
   lqXuUagEn06WwXs/Sl/jZNumezLPFi9dyJEf8ZmQF2OovVKfdpO3iux4k
   cYTa32LtWEnKn55Jp4P5KXLTjq95crqkC9R1nMmhTDXj8E0ZC82dP3/IF
   Q=;
X-CSE-ConnectionGUID: 77hly/MbRSyZrodrhAl29Q==
X-CSE-MsgGUID: EjBfDZonQZG3XVVjx5Cd6A==
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 122460588
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:ucl286NgZscUsyrvrR2Nl8FynXyQoLVcMsEvi/4bfWQNrUoqhDcAy
 jQXWW2EMviCNmehed52b4u3pB8PuJbTzIM3Hgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/jrRC9H5qyo42tJ5wZmOJingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0rkoAWVfs
 tkSEgscXAqEi/i26bbhG9A506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI
 ZNEN3w2Nk+ojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXQH5kLxhvI9
 goq+UzUADsUGO6YzwO33SmcuNHNjX7QVNw7QejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK
 lcI4Ww+oK4q7kupQ9LhGRqirxasnDQRRt5RGO0S8xyWx+zf5APxLncAZi5MbpohrsBebT4r0
 FiJ2dDgAzMps6e9RneU97PSpjS3URX5NkdbO3VCF1FcpYC+/sdq1Emnostf/LCd0YL1HSC35
 jqwlzkMnbIfl84i0//qxAWS696znaThQgkw7wTRe2uq6AJleYKoD7CVBUjnAeVod9jAEATY1
 JQQs43Htb1VU8nR/MCYaL9VdIxF8cppJ9E1bbRHO5A6vwqg9He4FWy7yGEvfRw5WirolNKAX
 aMyhe+zzMUDVJdJRfUtC25UNyjN5fG6fekJrtiOMrJzjmFZLWdrBh1Ga0+KxHzKm0Mxi6w5M
 przWZ/yXCpHVf85kWPrGr51PVoXKscWnz+7eHwG507/jer2iIC9Gd/pz2dinshmtfjZ8W05A
 v5UNteQygU3bQENSnC/zGLnFnhTdSJTLcmv+6RqmhurflIO9JcJV6WAntvMuuVNw8xoqws/1
 ijkBBQAmAOh3SyvxMfjQikLVY4DlK1X9RoTVRHA937xs5T/Se5DNJsiSqY=
IronPort-HdrOrdr: A9a23:AoxiXKAVwZLgQm/lHela55DYdb4zR+YMi2TDt3oddfWaSKylfq
 GV7ZImPHrP4gr5N0tOpTntAse9qDbnhPxICOoqTNCftWvdyQiVxehZhOOP/9SjIVyaygc078
 xdmsNFebnN5DZB7PoT4GODYqkdKNvsytHXuQ8JpU0dPD2DaMtbnndE4h7wKDwOeOHfb6BJaa
 Z14KB81kKdUEVSVOuXLF8fUdPOotXa/aiWHSLvV3YcmXKzZSrD0s+BLySl
X-Talos-CUID: 9a23:2w4zKWNZ9amRyO5DB3Zn8F9TP8ofSWzv1nDcOU+RDTw4cejA
X-Talos-MUID: 9a23:d4hB1AmrzLyBJmFvZ6a0dnpPNu1mz5apDnk/vs42hfeGJXFbN2m02WE=
X-IronPort-AV: E=Sophos;i="6.02,141,1688443200"; 
   d="scan'208";a="122460588"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Jinoh Kang
	<jinoh.kang.kr@gmail.com>
Subject: [PATCH 5/5] x86/pv: Rewrite %dr6 handling
Date: Wed, 13 Sep 2023 00:21:13 +0100
Message-ID: <20230912232113.402347-6-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230912232113.402347-1-andrew.cooper3@citrix.com>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

All #DB exceptions result in an update of %dr6, but this isn't handled
properly by Xen for any guest type.

To start with, add a new pending_dbg field to x86_event, sharing storage with
cr2, and using the Intel VMCS PENDING_DBG semantics.  Also introduce a
pv_inject_DB() wrapper use this field nicely.

Remove all ad-hoc dr6 handling, leaving it to pv_inject_event() in most cases
and using the new x86_merge_dr6() helper.

In do_debug(), adjust dr6 manually only when a debugger is attached.  This
maintains the old behaviour.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Jinoh Kang <jinoh.kang.kr@gmail.com>
---
 xen/arch/x86/include/asm/domain.h      | 12 ++++++++++++
 xen/arch/x86/pv/emul-priv-op.c         |  5 +----
 xen/arch/x86/pv/emulate.c              |  6 ++----
 xen/arch/x86/pv/ro-page-fault.c        |  4 ++--
 xen/arch/x86/pv/traps.c                | 17 +++++++++++++----
 xen/arch/x86/traps.c                   | 12 +++++++-----
 xen/arch/x86/x86_emulate/x86_emulate.h |  5 ++++-
 7 files changed, 41 insertions(+), 20 deletions(-)

diff --git a/xen/arch/x86/include/asm/domain.h b/xen/arch/x86/include/asm/domain.h
index c2d9fc333be5..5bf488437ce1 100644
--- a/xen/arch/x86/include/asm/domain.h
+++ b/xen/arch/x86/include/asm/domain.h
@@ -729,6 +729,18 @@ static inline void pv_inject_hw_exception(unsigned int vector, int errcode)
     pv_inject_event(&event);
 }
 
+static inline void pv_inject_DB(unsigned long pending_dbg)
+{
+    struct x86_event event = {
+        .vector      = X86_EXC_DB,
+        .type        = X86_EVENTTYPE_HW_EXCEPTION,
+        .error_code  = X86_EVENT_NO_EC,
+        .pending_dbg = pending_dbg,
+    };
+
+    pv_inject_event(&event);
+}
+
 static inline void pv_inject_page_fault(int errcode, unsigned long cr2)
 {
     const struct x86_event event = {
diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index 6963db35c960..437172ee0fc3 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -1365,10 +1365,7 @@ int pv_emulate_privileged_op(struct cpu_user_regs *regs)
         ASSERT(!curr->arch.pv.trap_bounce.flags);
 
         if ( ctxt.ctxt.retire.pending_dbg )
-        {
-            curr->arch.dr6 |= ctxt.ctxt.retire.pending_dbg | DR_STATUS_RESERVED_ONE;
-            pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
-        }
+            pv_inject_DB(ctxt.ctxt.retire.pending_dbg);
 
         /* fall through */
     case X86EMUL_RETRY:
diff --git a/xen/arch/x86/pv/emulate.c b/xen/arch/x86/pv/emulate.c
index e7a1c0a2cc4f..e522e58533f1 100644
--- a/xen/arch/x86/pv/emulate.c
+++ b/xen/arch/x86/pv/emulate.c
@@ -71,11 +71,9 @@ void pv_emul_instruction_done(struct cpu_user_regs *regs, unsigned long rip)
 {
     regs->rip = rip;
     regs->eflags &= ~X86_EFLAGS_RF;
+
     if ( regs->eflags & X86_EFLAGS_TF )
-    {
-        current->arch.dr6 |= DR_STEP | DR_STATUS_RESERVED_ONE;
-        pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
-    }
+        pv_inject_DB(X86_DR6_BS);
 }
 
 uint64_t pv_get_reg(struct vcpu *v, unsigned int reg)
diff --git a/xen/arch/x86/pv/ro-page-fault.c b/xen/arch/x86/pv/ro-page-fault.c
index cad28ef928ad..f6bb33556e72 100644
--- a/xen/arch/x86/pv/ro-page-fault.c
+++ b/xen/arch/x86/pv/ro-page-fault.c
@@ -389,8 +389,8 @@ int pv_ro_page_fault(unsigned long addr, struct cpu_user_regs *regs)
 
         /* Fallthrough */
     case X86EMUL_OKAY:
-        if ( ctxt.retire.singlestep )
-            pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
+        if ( ctxt.retire.pending_dbg )
+            pv_inject_DB(ctxt.retire.pending_dbg);
 
         /* Fallthrough */
     case X86EMUL_RETRY:
diff --git a/xen/arch/x86/pv/traps.c b/xen/arch/x86/pv/traps.c
index 74f333da7e1c..553b04bca956 100644
--- a/xen/arch/x86/pv/traps.c
+++ b/xen/arch/x86/pv/traps.c
@@ -13,6 +13,7 @@
 #include <xen/softirq.h>
 
 #include <asm/pv/trace.h>
+#include <asm/debugreg.h>
 #include <asm/shared.h>
 #include <asm/traps.h>
 #include <irq_vectors.h>
@@ -50,9 +51,9 @@ void pv_inject_event(const struct x86_event *event)
     tb->cs    = ti->cs;
     tb->eip   = ti->address;
 
-    if ( event->type == X86_EVENTTYPE_HW_EXCEPTION &&
-         vector == X86_EXC_PF )
+    switch ( vector | -(event->type == X86_EVENTTYPE_SW_INTERRUPT) )
     {
+    case X86_EXC_PF:
         curr->arch.pv.ctrlreg[2] = event->cr2;
         arch_set_cr2(curr, event->cr2);
 
@@ -62,9 +63,17 @@ void pv_inject_event(const struct x86_event *event)
             error_code |= PFEC_user_mode;
 
         trace_pv_page_fault(event->cr2, error_code);
-    }
-    else
+        break;
+
+    case X86_EXC_DB:
+        curr->arch.dr6 = x86_merge_dr6(curr->domain->arch.cpu_policy,
+                                       curr->arch.dr6, event->pending_dbg);
+        /* Fallthrough */
+
+    default:
         trace_pv_trap(vector, regs->rip, use_error_code, error_code);
+        break;
+    }
 
     if ( use_error_code )
     {
diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index dead728ce329..ae5d73abf557 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -1887,7 +1887,7 @@ void do_device_not_available(struct cpu_user_regs *regs)
 /* SAF-1-safe */
 void do_debug(struct cpu_user_regs *regs)
 {
-    unsigned long dr6;
+    unsigned long dr6, pending_dbg;
     struct vcpu *v = current;
 
     /* Stash dr6 as early as possible. */
@@ -1997,17 +1997,19 @@ void do_debug(struct cpu_user_regs *regs)
         return;
     }
 
-    /* Save debug status register where guest OS can peek at it */
-    v->arch.dr6 |= (dr6 & ~X86_DR6_DEFAULT);
-    v->arch.dr6 &= (dr6 | ~X86_DR6_DEFAULT);
+    /* Flip dr6 to have positive polarity. */
+    pending_dbg = dr6 ^ X86_DR6_DEFAULT;
 
     if ( guest_kernel_mode(v, regs) && v->domain->debugger_attached )
     {
+        /* Save debug status register where gdbsx can peek at it */
+        v->arch.dr6 = x86_merge_dr6(v->domain->arch.cpu_policy,
+                                    v->arch.dr6, pending_dbg);
         domain_pause_for_debugger();
         return;
     }
 
-    pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
+    pv_inject_DB(pending_dbg);
 }
 
 /* SAF-1-safe */
diff --git a/xen/arch/x86/x86_emulate/x86_emulate.h b/xen/arch/x86/x86_emulate/x86_emulate.h
index f0e74d23c378..81f99dfaa02f 100644
--- a/xen/arch/x86/x86_emulate/x86_emulate.h
+++ b/xen/arch/x86/x86_emulate/x86_emulate.h
@@ -78,7 +78,10 @@ struct x86_event {
     uint8_t       type;         /* X86_EVENTTYPE_* */
     uint8_t       insn_len;     /* Instruction length */
     int32_t       error_code;   /* X86_EVENT_NO_EC if n/a */
-    unsigned long cr2;          /* Only for X86_EXC_PF h/w exception */
+    union {
+        unsigned long cr2;         /* #PF */
+        unsigned long pending_dbg; /* #DB (new DR6 bits, positive polarity) */
+    };
 };
 
 /*
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 12 23:42:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 23:42:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600861.936668 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgD17-0006on-8K; Tue, 12 Sep 2023 23:42:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600861.936668; Tue, 12 Sep 2023 23:42:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgD17-0006og-5Q; Tue, 12 Sep 2023 23:42:01 +0000
Received: by outflank-mailman (input) for mailman id 600861;
 Tue, 12 Sep 2023 23:41:59 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Dd3m=E4=epam.com=prvs=3619f40973=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qgD15-0006oa-Kq
 for xen-devel@lists.xenproject.org; Tue, 12 Sep 2023 23:41:59 +0000
Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com
 [148.163.133.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f5b959a1-51c5-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 01:41:58 +0200 (CEST)
Received: from pps.filterd (m0174676.ppops.net [127.0.0.1])
 by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38CKhMSe024185; Tue, 12 Sep 2023 23:41:48 GMT
Received: from eur04-db3-obe.outbound.protection.outlook.com
 (mail-db3eur04lp2056.outbound.protection.outlook.com [104.47.12.56])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3t2y9908qg-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Tue, 12 Sep 2023 23:41:48 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB7286.eurprd03.prod.outlook.com (2603:10a6:20b:2b7::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Tue, 12 Sep
 2023 23:41:43 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::e9f8:ffda:29cc:3dbe]) by VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::e9f8:ffda:29cc:3dbe%7]) with mapi id 15.20.6768.029; Tue, 12 Sep 2023
 23:41:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f5b959a1-51c5-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QrViNF5Flpu3LMtwBY5n9XmOBow3sow9e+4+0lR/jwiIncNXwvHR6omtmXjzzhW68Wh2SAfG6ZZB32RteSOya7Wbl0tnJaMdOKnaSCn95K97YotLTZf1wSKlQ9qZFW16gNwYaVCFTUJRWMHaMiP60IgkCUtFJASHtHiy0WlwmbH6BxIRAg2RkUttn513Fg8RdJdwNAxfm9W9x6fZXZvw7hhJ4wm4EjLpkGFYwlHIscqlTkgNesqL7KiN4p2tXP6wStXpnSMARTixSyyUmrtMQo3i27R56UnPy7VxcltZMOA2BQy9gozWGed6seapbGryds+pn1JfTkcRU5MrwlpFgA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ByCiywusZZZLVTSAT8Os38Och+OnuvlsrVYSwBJUIE8=;
 b=l7vI+wgfJozDMLQcpJsW9XTcVFZRdnjrc1QpRQL9QxN4y1Zmbwk/zc7ooIAz0+QChVfCuCS84aZaGhkzu6sj5G+e2tycxaBmN4cJnXbLhYQunF8eHERM8Jp04tLWdIETITAZ0LVjsDVbpJF6ULqQ7UyRVnk45WroA5opwTR0BLxn/Y3FKPqyBR6vNaM/ZilvtabM4aIJ9WqymNQ208GKRFJ9W3ijURWLOT5Tr0KtHA4dIG4KmwV6Bn3BDaHdtk0BfWggC+110k0PlKFWj/zV99w9w0jfXbnK7/oMs88qUB6dKUJqu9siemHJ+fd8/3puU4ZQ86m4MHW76BHByomDBQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ByCiywusZZZLVTSAT8Os38Och+OnuvlsrVYSwBJUIE8=;
 b=sEd7pzlQE+bVaMIkwYMwCnNGKPuQtdO21lEzH1yE7QP8rGdnig12tX3uDQUZ5HeaettL9vxfWg7yyYEvpG0edgmruw0Db+n953Y95A+YS6Go+aCcbQ8iVm0xwP1pcELGgAM/+VuM5AnyPGnsbzMhv7QG2YYbwOiRDK1aPs0YObV0bKTsLzZooj8j2B4LLjbpa9Jch+ITPzfX4vlvwDKjrEz1tEPL5aLpYEV1S+KrEmcJHLtnLlqOYwt+57Rpg1TEDpj+UdxZfhAZp6FBIGqSJKw8SgEtohZ7/v/3JPy/jmu+DK6koVglv4IPGU/7tHgPuJw0+AcN7ZYj3CsAVjYvfQ==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        Andrew Cooper
	<andrew.cooper3@citrix.com>,
        George Dunlap <george.dunlap@citrix.com>,
        Julien
 Grall <julien@xen.org>,
        Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>,
        Paul Durrant <paul@xen.org>,
        =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>,
        "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v9 04/16] vpci: add hooks for PCI device assign/de-assign
Thread-Topic: [PATCH v9 04/16] vpci: add hooks for PCI device assign/de-assign
Thread-Index: AQHZ2s9Kc9kNunOnfUurMYypVVbdQ7AXA+KAgADqFoA=
Date: Tue, 12 Sep 2023 23:41:41 +0000
Message-ID: <874jjzhsd4.fsf@epam.com>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-5-volodymyr_babchuk@epam.com>
 <77e2dbc0-c224-4c1e-72a0-5b19aa76ba0b@suse.com>
In-Reply-To: <77e2dbc0-c224-4c1e-72a0-5b19aa76ba0b@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: mu4e 1.10.7; emacs 29.1
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|AS8PR03MB7286:EE_
x-ms-office365-filtering-correlation-id: 2722a01a-5881-4923-42aa-08dbb3e9d0db
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 3whGvaP+duoz3uQ7LN5ku0hU1+tjgODKZCnUqflBTIB4j4w2hCBG25XR1Zf51p0Jph5NPYKvtTXTXnAj7veBOu7cIkntV9BDPQnneL4Woc5UI8B8l5YVT84HnN9T9uWIypI73ahsqa+fqxnpe2CFXFPE6FOKuVxJ4fYLChzZylM3KA/BIxD+9mYCrSeJ/y2ASi9kngD4lzXPxRcGr+qhqvp4dTjLataY7yc4hikt4qZOcEVoIL0o23qYxBayzbuxTmgvP/oLtoaFaJOKm5YqoBM+4EO0Iq54M9eDNBIgi2+Lna5kcq0PmvAPHJVKQ+FzJfUPF4itL0o0i9QEsukDG4thVYolG8yfFvIWp2MMn3a6psMcRzpnljL0k0OnH8QEASWOfzJEyk5dkdGYkNebokX3R8OVKMZa5RlHx4oV0Poqu7/QuHnu4gn5zlxRHMetStaYo7ywsx1enleQBOsUZJRVLHqTSOE8f6EnMfzg7ZXbOQBPON/SUgEil+fZSxGpwsK+nzYL34RnXe0ZZHBa4tXqx0UZvzCGr3gqiXY8uEMXOKfIWh2uxJ8K6TBbDT4njK6bJp0NpQY9+Ahn9rEh9b1Gd5fRwK+iu6czy9aPZadIsbMAWuXsGE+Lpj+7EM62
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(366004)(396003)(346002)(376002)(186009)(451199024)(1800799009)(7416002)(6512007)(5660300002)(55236004)(71200400001)(6486002)(53546011)(6506007)(26005)(478600001)(2906002)(2616005)(83380400001)(8936002)(4326008)(6916009)(66946007)(41300700001)(91956017)(122000001)(8676002)(38070700005)(76116006)(38100700002)(54906003)(66446008)(316002)(86362001)(64756008)(36756003)(66556008)(66476007);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?2RHOet4OR7dwCpNXscSc2DMN6JHjCNT9TrkrrI3gj2N8yN9aVLmpoWZx5a?=
 =?iso-8859-1?Q?HQuMRnTd902tqmGu1gKl0J5oCN37nXY2LicnQVA584bWjuJ0c9YbF6yPQD?=
 =?iso-8859-1?Q?u0JMo4tKcPhpS6zSkgtexnEIlVImBuPVvhYZZOr9w98PSBgkDoEuz88M0M?=
 =?iso-8859-1?Q?S2tk8oyXMtbpCyLL2LG7aOpQukY6HTxeQ2bkKOLn+vphPr630P7ShAoyyV?=
 =?iso-8859-1?Q?9QPpoS+ocNeZmQHeBTLs89ZeTB4/Vgo6AwExtEEin6tZnGMJRY5fvCu7y2?=
 =?iso-8859-1?Q?3pd+g60P7NDab0DnkhVduQ8cbHbWMnI93yjwLAtZHfgbIO5t2+YIb4FmCB?=
 =?iso-8859-1?Q?ybeWUvs1nosI5Xq4iC+CkNPmka1jZsvZuPZPkVMduX78Zfp/kuPHatUAeP?=
 =?iso-8859-1?Q?TleupgUXvPSIUm/gyM8awjnSfCw30+CC/iM4oko+wuhwYKOM+AuZA6yXVO?=
 =?iso-8859-1?Q?OAi7SaHdBx45ugRIBiLthUu0g02RhOrzU9AJSCbI63CP7I8dQ+UIexK+wb?=
 =?iso-8859-1?Q?AyideE3/twZCQzCk90kkTFoguZ7lEK/JuHccGbhfMU1LxVm6YE0FG4NK3G?=
 =?iso-8859-1?Q?A0pu5mIuYy+B2gdnBGMfpSWtLxmyJqZGZ6RjSAPQhl7RafuNoelGgTZavz?=
 =?iso-8859-1?Q?Lu3d9MOpnlRPA8bBrXGpyxJuI/lFL8jh1W8R5efP8/ZgDBS3C/ERH/GIwE?=
 =?iso-8859-1?Q?o8vYXXB9SXiHZ+YrPoPTua8GYwcdnlBV1pWGv2wlPygq4vMKj/e1qdszHF?=
 =?iso-8859-1?Q?BYrXQoZo0EBDKW7k2MLmxql9FPJyoH+FSqaSfmAwXfPL/Bdo90tWK5Lyd+?=
 =?iso-8859-1?Q?EOk0gmq6foJjxEM5hxYKlff8IODEZAb79fRVG+Y3JLPJbUR4+AioiXJVTM?=
 =?iso-8859-1?Q?60jhaUQtUJoTPdFVGl37CTp+qXmQA9lNERBTLnCsTJQgInhwCTr57PmLcC?=
 =?iso-8859-1?Q?rnvnPUz89iSNEO7J6fI9WX9LnzJhZ1DICOpU/j2LT3vokDtn/SclZnMyl7?=
 =?iso-8859-1?Q?I8ztQvjPdjb9/CUYW5Jx8isPvW/h19KAzE99uLIdBBhey/1fHcXOJ2dudF?=
 =?iso-8859-1?Q?C5PSYO2iSNiPOMSjpWM44YO3LQZxX8duJ5N+gQLtJZLsulXBHQXjp8GGaA?=
 =?iso-8859-1?Q?TfYLFnnkHpJvghapQAdeGYFsZ1v4zU3nN252AYj0whppoEgRZRcD6KNpGA?=
 =?iso-8859-1?Q?ByDME2Tf7ZigVl0RWrh91ocnBAQADJpJpgLoOB9WVwhrisMxpddyu2LILw?=
 =?iso-8859-1?Q?n5AjTdyhBTKWl2yfOZBhHWbeP+eNXB5/6OCP3DXvFZhSRaNtQCP23O+kXm?=
 =?iso-8859-1?Q?5flffXnUrotIukAalMDkjnrYF1nV/XslgBVtQ8JQP03nNxFvHcBmYSs8Jd?=
 =?iso-8859-1?Q?kTrTiWSCyTdG9bcFawuw/aOEEKtV4rV10KptfWebnlbnnOq7UW9w4l2Bc/?=
 =?iso-8859-1?Q?iOg+KtZz9xJmYg0uYZmEbIbQo0VGz1LCCdncMOAIXLEHMLqrLvZzla84+e?=
 =?iso-8859-1?Q?KK/S3Kc+K7o9cKxgITgDC172ESO522ZSld9VrZ0xvSA1YewDE6wUsIoAvk?=
 =?iso-8859-1?Q?DxopH+aN40xgTCA6OOlTUuBkrK01xzVw+f0rztUto4FBRlsxQxQVolhnIN?=
 =?iso-8859-1?Q?cFCP0Wq7Aw/hB1elqjbKjVeFTvaPFqWitKgdDHBLN50a0hmmjrBHaqXQ?=
 =?iso-8859-1?Q?=3D=3D?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2722a01a-5881-4923-42aa-08dbb3e9d0db
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Sep 2023 23:41:41.5345
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: 9TLf+7br29Juq/aXhjC5cUD1VVMb781fzaPMlraacbVoA2H+GWxlblzTaMMN2j8/tvpFQA4KF2awwMtb4IIlphXxk2Egm20QRYyUkM/Yep4=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB7286
X-Proofpoint-GUID: kg7lmJNT3NUUY6WgQwM6fy2sdEt4zpMq
X-Proofpoint-ORIG-GUID: kg7lmJNT3NUUY6WgQwM6fy2sdEt4zpMq
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.957,Hydra:6.0.601,FMLib:17.11.176.26
 definitions=2023-09-12_22,2023-09-05_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0
 lowpriorityscore=0 priorityscore=1501 bulkscore=0 suspectscore=0
 adultscore=0 mlxscore=0 clxscore=1011 mlxlogscore=919 impostorscore=0
 malwarescore=0 phishscore=0 classifier=spam adjust=0 reason=mlx
 scancount=1 engine=8.12.0-2308100000 definitions=main-2309120201


Hi Jan,

Jan Beulich <jbeulich@suse.com> writes:

> On 30.08.2023 01:19, Volodymyr Babchuk wrote:
>> @@ -1481,6 +1488,13 @@ static int assign_device(struct domain *d, u16 se=
g, u8 bus, u8 devfn, u32 flag)
>>      if ( pdev->broken && d !=3D hardware_domain && d !=3D dom_io )
>>          goto done;
>> =20
>> +    if ( IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) )
>> +    {
>> +        write_lock(&pdev->domain->pci_lock);
>> +        vpci_deassign_device(pdev);
>> +        write_unlock(&pdev->domain->pci_lock);
>> +    }
>
> Why is the DomIO special case ...

vpci_deassign_device() does nothing if vPCI was initialized for a
domain. So it not wrong to call this function even if pdev belongs to dom_i=
o.

>> @@ -1506,6 +1520,15 @@ static int assign_device(struct domain *d, u16 se=
g, u8 bus, u8 devfn, u32 flag)
>>          rc =3D iommu_call(hd->platform_ops, assign_device, d, devfn,
>>                          pci_to_dev(pdev), flag);
>>      }
>> +    if ( rc )
>> +        goto done;
>> +
>> +    if ( IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) && d !=3D dom_io)
>> +    {
>> +        write_lock(&d->pci_lock);
>> +        rc =3D vpci_assign_device(pdev);
>> +        write_unlock(&d->pci_lock);
>> +    }
>
> ... relevant only here?
>

There is no sense to initialize vPCI for dom_io.


--=20
WBR, Volodymyr=


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 00:15:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 00:15:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600870.936683 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgDWz-0004rQ-6K; Wed, 13 Sep 2023 00:14:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600870.936683; Wed, 13 Sep 2023 00:14:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgDWz-0004rJ-3Q; Wed, 13 Sep 2023 00:14:57 +0000
Received: by outflank-mailman (input) for mailman id 600870;
 Wed, 13 Sep 2023 00:14:55 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgDWx-0004r9-Bq; Wed, 13 Sep 2023 00:14:55 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgDWx-0005iq-8d; Wed, 13 Sep 2023 00:14:55 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgDWw-0007Zt-Tm; Wed, 13 Sep 2023 00:14:54 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgDWw-0007Mt-TI; Wed, 13 Sep 2023 00:14:54 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=NdU8Z30V25c6jJpyN0PE5cxOd3rD+CgvwA4q30MIls0=; b=hfdk+bSul3e7v6B24xrp2JW4Ra
	jGzycwjAX+afopBsyjpjZAdCZ0pPBGuQqg2QnUZH98K5wHu3eq1eGVT6lGVscEmPEfH93FzSettm9
	+j6LLZZNy1HIw4jijgyZrWHtyBvuF7f9YcDWhdjNHPGGMCFOGPWLP/zB2A0Op1CnKJPI=;
To: xen-devel@lists.xenproject.org
Subject: [qemu-mainline bisection] complete build-armhf
Message-Id: <E1qgDWw-0007Mt-TI@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 13 Sep 2023 00:14:54 +0000

branch xen-unstable
xenbranch xen-unstable
job build-armhf
testid xen-build

Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu https://gitlab.com/qemu-project/qemu.git
  Bug introduced:  ca056f4499c259c0de68ed7cefad7ee7b62bfa43
  Bug not present: a5e9fbf1dfd5b3f901f987755c89f1dc636c3747
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182986/


  commit ca056f4499c259c0de68ed7cefad7ee7b62bfa43
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   Wed May 3 12:48:02 2023 +0200
  
      Python: Drop support for Python 3.7
      
      Debian 10 is not anymore a supported distro, since Debian 12 was
      released on June 10, 2023.  Our supported build platforms as of today
      all support at least 3.8 (and all of them except for Ubuntu 20.04
      support 3.9):
      
      openSUSE Leap 15.5: 3.6.15 (3.11.2)
      CentOS Stream 8:    3.6.8  (3.8.13, 3.9.16, 3.11.4)
      CentOS Stream 9:    3.9.17 (3.11.4)
      Fedora 37:          3.11.4
      Fedora 38:          3.11.4
      Debian 11:          3.9.2
      Debian 12:          3.11.2
      Alpine 3.14, 3.15:  3.9.16
      Alpine 3.16, 3.17:  3.10.10
      Ubuntu 20.04 LTS:   3.8.10
      Ubuntu 22.04 LTS:   3.10.12
      NetBSD 9.3:         3.9.13*
      FreeBSD 12.4:       3.9.16
      FreeBSD 13.1:       3.9.18
      OpenBSD 7.2:        3.9.17
      
      Note: NetBSD does not appear to have a default meta-package, but offers
      several options, the lowest of which is 3.7.15. However, "python39"
      appears to be a pre-requisite to one of the other packages we request
      in tests/vm/netbsd.
      
      Since it is safe under our supported platform policy, bump our
      minimum supported version of Python to 3.8.  The two most interesting
      features to have by default include:
      
      - the importlib.metadata module, whose lack is responsible for over 100
        lines of code in mkvenv.py
      
      - improvements to asyncio, for example asyncio.CancelledError
        inherits from BaseException rather than Exception
      
      In addition, code can now use the assignment operator ':='
      
      Because mypy now learns about importlib.metadata, a small change to
      mkvenv.py is needed to pass type checking.
      
      Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/build-armhf.xen-build.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/build-armhf.xen-build --summary-out=tmp/182986.bisection-summary --basis-template=182707 --blessings=real,real-bisect,real-retry qemu-mainline build-armhf xen-build
Searching for failure / basis pass:
 182943 fail [host=cubietruck-gleizes] / 182707 [host=cubietruck-picasso] 182638 [host=cubietruck-metzinger] 182606 ok.
Failure / basis pass flights: 182943 / 182606
Tree: ovmf git://xenbits.xen.org/osstest/ovmf.git
Tree: qemuu https://gitlab.com/qemu-project/qemu.git
Tree: seabios git://xenbits.xen.org/osstest/seabios.git
Tree: xen git://xenbits.xen.org/xen.git
Latest cc26a2cb3162845bf51d41ea8cd1c438ffa6c50a c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
Basis pass beafabdae49c873adecdb7511dbebe9d4ff5c8f0 17780edd81d27fcfdb7a802efc870a99788bd2fc 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 e5522c71beaa83f2f5d2118724ace9f90c22e583
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/osstest/ovmf.git#beafabdae49c873adecdb7511dbebe9d4ff5c8f0-cc26a2cb3162845bf51d41ea8cd1c438ffa6c50a https://gitlab.com/qemu-project/qemu.git#17780edd81d27fcfdb7a802efc870a99788bd2fc-c5ea91da443b458352c1b629b490ee6631775cb4 git://xenbits.xen.org/osstest/seabios.git#7a4003be25eae462f3c3d8aad96b57e34dc0c2b8-7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 git://xenbits.xen.org/xen.git#e5522c71beaa83f2f5d2118724ace9f90c22e583-49b2d6a\
 529122f10e17a17f807d8d51154b5ba14
Loaded 20183 nodes in revision graph
Searching for test results:
 182588 [host=cubietruck-metzinger]
 182606 pass beafabdae49c873adecdb7511dbebe9d4ff5c8f0 17780edd81d27fcfdb7a802efc870a99788bd2fc 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 e5522c71beaa83f2f5d2118724ace9f90c22e583
 182638 [host=cubietruck-metzinger]
 182707 [host=cubietruck-picasso]
 182723 [host=cubietruck-braque]
 182730 [host=cubietruck-braque]
 182739 [host=cubietruck-braque]
 182770 [host=cubietruck-metzinger]
 182796 [host=cubietruck-metzinger]
 182801 [host=cubietruck-metzinger]
 182814 [host=cubietruck-picasso]
 182835 [host=cubietruck-picasso]
 182845 [host=cubietruck-picasso]
 182854 [host=cubietruck-metzinger]
 182865 [host=cubietruck-metzinger]
 182879 [host=cubietruck-metzinger]
 182884 [host=cubietruck-metzinger]
 182900 [host=cubietruck-metzinger]
 182907 fail b240eab03530f063ef5438497d70a731b19a201e c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182914 fail b240eab03530f063ef5438497d70a731b19a201e c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182939 pass beafabdae49c873adecdb7511dbebe9d4ff5c8f0 17780edd81d27fcfdb7a802efc870a99788bd2fc 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 e5522c71beaa83f2f5d2118724ace9f90c22e583
 182929 fail cc26a2cb3162845bf51d41ea8cd1c438ffa6c50a c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182942 fail b240eab03530f063ef5438497d70a731b19a201e c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182946 fail cc26a2cb3162845bf51d41ea8cd1c438ffa6c50a c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182947 fail b74f1f7ab5e956f58ae1771dc4e2a4b92bc51430 2f352bc2270fdc896beb2957b5171b03ba3e2d66 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182943 fail cc26a2cb3162845bf51d41ea8cd1c438ffa6c50a c5ea91da443b458352c1b629b490ee6631775cb4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 49b2d6a529122f10e17a17f807d8d51154b5ba14
 182950 fail 5443c2dc310d2c8eb15fb8eefd5057342e78cd0d 631c872614aca91eaf947c1748f0f27f99635d92 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 cba6d44a13d5e25334d164e27cb1b1d7674aa05e
 182951 pass b81557a00c61cc80ab118828f16ed9ce79455880 269e60635a72f8dec4cb210b5b99e9e7f8920f34 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182953 pass 4d196352f35ac516b477e568265b4e537b0283d8 bde438c3ecdb9813038b226c429dd982925d8205 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 d8c3ff585b9fd10200b05aca77139de2789d0517
 182957 pass b81557a00c61cc80ab118828f16ed9ce79455880 c97d45d55798b27410253df8fc724d2a02189aa8 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182960 pass b81557a00c61cc80ab118828f16ed9ce79455880 13d9f6dca08a38e9258b6328f3ad61bdb8e19619 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 1f79fce10a75f88d2c2a6ace469a4046bc1b9cb5
 182962 pass bbf182229587958b17336c114e0a1525c4f90f3d 3df17650730fcc84a551baf34133e22e96101c84 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182967 fail bbf182229587958b17336c114e0a1525c4f90f3d fc30abf84662fd68c9308aa07c18b71eed0dffc0 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182970 pass bbf182229587958b17336c114e0a1525c4f90f3d 875be287cdba7b5a499711823314355fccc60913 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182976 fail bbf182229587958b17336c114e0a1525c4f90f3d 28a43cb4dcb3a58408c2936f7be5cb1e1a3ca016 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182977 fail bbf182229587958b17336c114e0a1525c4f90f3d 0a88ac9662950cecac74b5de3056071a964e4fc4 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182978 fail bbf182229587958b17336c114e0a1525c4f90f3d ca056f4499c259c0de68ed7cefad7ee7b62bfa43 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182979 pass bbf182229587958b17336c114e0a1525c4f90f3d a5e9fbf1dfd5b3f901f987755c89f1dc636c3747 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182981 fail bbf182229587958b17336c114e0a1525c4f90f3d ca056f4499c259c0de68ed7cefad7ee7b62bfa43 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182982 pass bbf182229587958b17336c114e0a1525c4f90f3d a5e9fbf1dfd5b3f901f987755c89f1dc636c3747 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182984 fail bbf182229587958b17336c114e0a1525c4f90f3d ca056f4499c259c0de68ed7cefad7ee7b62bfa43 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182985 pass bbf182229587958b17336c114e0a1525c4f90f3d a5e9fbf1dfd5b3f901f987755c89f1dc636c3747 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
 182986 fail bbf182229587958b17336c114e0a1525c4f90f3d ca056f4499c259c0de68ed7cefad7ee7b62bfa43 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
Searching for interesting versions
 Result found: flight 182606 (pass), for basis pass
 Result found: flight 182907 (fail), for basis failure (at ancestor ~14)
 Repro found: flight 182939 (pass), for basis pass
 Repro found: flight 182943 (fail), for basis failure
 0 revisions at bbf182229587958b17336c114e0a1525c4f90f3d a5e9fbf1dfd5b3f901f987755c89f1dc636c3747 7a4003be25eae462f3c3d8aad96b57e34dc0c2b8 03f64b54a1d14893e7851a60ba4855fb75abf30a
No revisions left to test, checking graph state.
 Result found: flight 182979 (pass), for last pass
 Result found: flight 182981 (fail), for first failure
 Repro found: flight 182982 (pass), for last pass
 Repro found: flight 182984 (fail), for first failure
 Repro found: flight 182985 (pass), for last pass
 Repro found: flight 182986 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  qemuu https://gitlab.com/qemu-project/qemu.git
  Bug introduced:  ca056f4499c259c0de68ed7cefad7ee7b62bfa43
  Bug not present: a5e9fbf1dfd5b3f901f987755c89f1dc636c3747
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/182986/


  commit ca056f4499c259c0de68ed7cefad7ee7b62bfa43
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   Wed May 3 12:48:02 2023 +0200
  
      Python: Drop support for Python 3.7
      
      Debian 10 is not anymore a supported distro, since Debian 12 was
      released on June 10, 2023.  Our supported build platforms as of today
      all support at least 3.8 (and all of them except for Ubuntu 20.04
      support 3.9):
      
      openSUSE Leap 15.5: 3.6.15 (3.11.2)
      CentOS Stream 8:    3.6.8  (3.8.13, 3.9.16, 3.11.4)
      CentOS Stream 9:    3.9.17 (3.11.4)
      Fedora 37:          3.11.4
      Fedora 38:          3.11.4
      Debian 11:          3.9.2
      Debian 12:          3.11.2
      Alpine 3.14, 3.15:  3.9.16
      Alpine 3.16, 3.17:  3.10.10
      Ubuntu 20.04 LTS:   3.8.10
      Ubuntu 22.04 LTS:   3.10.12
      NetBSD 9.3:         3.9.13*
      FreeBSD 12.4:       3.9.16
      FreeBSD 13.1:       3.9.18
      OpenBSD 7.2:        3.9.17
      
      Note: NetBSD does not appear to have a default meta-package, but offers
      several options, the lowest of which is 3.7.15. However, "python39"
      appears to be a pre-requisite to one of the other packages we request
      in tests/vm/netbsd.
      
      Since it is safe under our supported platform policy, bump our
      minimum supported version of Python to 3.8.  The two most interesting
      features to have by default include:
      
      - the importlib.metadata module, whose lack is responsible for over 100
        lines of code in mkvenv.py
      
      - improvements to asyncio, for example asyncio.CancelledError
        inherits from BaseException rather than Exception
      
      In addition, code can now use the assignment operator ':='
      
      Because mypy now learns about importlib.metadata, a small change to
      mkvenv.py is needed to pass type checking.
      
      Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

Revision graph left in /home/logs/results/bisect/qemu-mainline/build-armhf.xen-build.{dot,ps,png,html,svg}.
----------------------------------------
182986: tolerable ALL FAIL

flight 182986 qemu-mainline real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/182986/

Failures :-/ but no regressions.

Tests which did not succeed,
including tests which could not be run:
 build-armhf                   6 xen-build               fail baseline untested


jobs:
 build-armhf                                                  fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 00:49:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 00:49:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600882.936694 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgE4L-0002bk-TC; Wed, 13 Sep 2023 00:49:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600882.936694; Wed, 13 Sep 2023 00:49:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgE4L-0002bd-QW; Wed, 13 Sep 2023 00:49:25 +0000
Received: by outflank-mailman (input) for mailman id 600882;
 Wed, 13 Sep 2023 00:49:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=nLNB=E5=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qgE4J-0002bX-TY
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 00:49:24 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0600.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5f840666-51cf-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 02:49:20 +0200 (CEST)
Received: from DUZPR01CA0200.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b6::10) by AS8PR08MB8923.eurprd08.prod.outlook.com
 (2603:10a6:20b:5b3::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Wed, 13 Sep
 2023 00:49:16 +0000
Received: from DBAEUR03FT007.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b6:cafe::d3) by DUZPR01CA0200.outlook.office365.com
 (2603:10a6:10:4b6::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19 via Frontend
 Transport; Wed, 13 Sep 2023 00:49:16 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT007.mail.protection.outlook.com (100.127.142.161) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.19 via Frontend Transport; Wed, 13 Sep 2023 00:49:15 +0000
Received: ("Tessian outbound 1eb4e931b055:v175");
 Wed, 13 Sep 2023 00:49:15 +0000
Received: from 816b41260634.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B3B2CE11-D8C7-4951-B21E-C25A3CE2A06A.1; 
 Wed, 13 Sep 2023 00:49:08 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 816b41260634.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 13 Sep 2023 00:49:08 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS8PR08MB6663.eurprd08.prod.outlook.com (2603:10a6:20b:39b::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 00:49:02 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6768.029; Wed, 13 Sep 2023
 00:49:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5f840666-51cf-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zeSspoeqCIJNLnmJpQa/+IXd5YSdvIQQrDrqLU/SWoc=;
 b=VgwK+tDYNLuDBnhDuQ7iPDWPCy6L4Zp1SZksrsJSODtPyziXP2ubw6v8+9BFIGGszQTwdUtvTdZN6nbUamcp3KghT92jig6XgXvsH1ZuNea03IlLULYYuECDapGs8o3tP9tecLB+Kg55ZLWV3FK/4vLQn0zpVdyw0i/Uwg/SiZM=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 3e349d789b60d5de
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LgnI7DGINu4oJ2fGwWgWoD3QdUT/aF53p4skHm0UjG9SGZbU1KSwnw+aZsPAGriD3mpEjWQHOilzfm0bOyVND6/OqvegCnr86eKof57xS9g7dndVgdZ/RAj3ufpCWIHW26gpbSOhRfmy1P5aUiJ1HxAdk0rA4dFF6MjSJ+pMdSbhtOsXwh2SHi6I2hxURQV26guKrG8ttswIAZNxZMQ+fUKC76Hm8LEAZpNGjtoSyy2m4zdUp9GUKq7cFILK3akWomqVGKvxRzcI4O01IJMRFzka0H9ttUBaS1oppiOaXj4Dnae5nBqx2e5Q3OwOhD7+kAczpO6qfvTk2gwMEfocMw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zeSspoeqCIJNLnmJpQa/+IXd5YSdvIQQrDrqLU/SWoc=;
 b=kOPYPWZt2mm+nkgbY9aI/nhPXG/c1A8hc9sQG5KH1L7sNs+huttQzTbwyATsutdgo75IPO9KCwJaC823XIlBj/bzGbH9j6zK2wnOTwJoxEjIIDAIb5u2J6kWAZwU93UZ9u5BVddLRJQAqGTRUUFdVeT8gn+I8hclrjubG+Vyr3oh0gBVyT7lhzNlXFdHHoWvekCtZj2UarqSaXvEH8c2K9i9pjhL4IN04DKpdW3h0G4Nm6baBt5ApUW1YwY7GmzM4BrHQUa3YLFZXKHcDIUrrJvHnAAHiwYcLTNwljctOhnc4RY39frnCD2TihCKGKc3BdZnFU6m+497JZJrGqRnuw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zeSspoeqCIJNLnmJpQa/+IXd5YSdvIQQrDrqLU/SWoc=;
 b=VgwK+tDYNLuDBnhDuQ7iPDWPCy6L4Zp1SZksrsJSODtPyziXP2ubw6v8+9BFIGGszQTwdUtvTdZN6nbUamcp3KghT92jig6XgXvsH1ZuNea03IlLULYYuECDapGs8o3tP9tecLB+Kg55ZLWV3FK/4vLQn0zpVdyw0i/Uwg/SiZM=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Michal Orzel <michal.orzel@amd.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Julien Grall <julien@xen.org>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v2] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
Thread-Topic: [PATCH v2] xen/arm: Skip Xen specific nodes/properties from
 hwdom /chosen node
Thread-Index: AQHZ5Wd9D+O58lCZNU6biiACA0CDeLAXdy8AgAB2IoA=
Date: Wed, 13 Sep 2023 00:49:02 +0000
Message-ID: <F80F50C1-4880-4776-8AE1-9552397624F2@arm.com>
References: <20230912105341.16687-1-michal.orzel@amd.com>
 <alpine.DEB.2.22.394.2309121045570.2080229@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309121045570.2080229@ubuntu-linux-20-04-desktop>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS8PR08MB6663:EE_|DBAEUR03FT007:EE_|AS8PR08MB8923:EE_
X-MS-Office365-Filtering-Correlation-Id: 2a8851a5-e61b-46c6-2f72-08dbb3f34157
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 hcr0DRjD+dBgao8dDG1/MvtyTAk9rsFubj584ef3+oTbfpvFVPvwVQJi+M4LW3PTF+nl6ctPkXcBHBtv2v9TvcmKjUPxOjOYcttjMpZAKxQ7ayFJjRxLfwUP2c0U8RUAA2ZOlwzRfFv+5fhNPEylV4XVB32kjj7m1zL8QPRNxXn4e8SkSTyb5fhyP1+dA0FJtD341+fOhinBurW9n11VGI3X/KjvB/0wz5l/IToGOePQ+WNxqcBZlOKLJ1hlNNjwIK4PHR4D3/wyxju0SdjyHRerhZ/GRS/ErlonP0Ajyn/kwclg9XgUzATY13BwvTSJ/zpcldw1Ny1QS+bLsP7gmxQvW6WyUb1FdhvGcdi0SfGDZ8I+ZSUcdBrGpTXwq23HsguSF/r7hj0Kc0GuNBxTZ/sD5tcH5oXK2b3PxJ3CWl1SbqYfFMQejYbyzFvC0dpgs1TSM6YEk/b21Sb3UBOICvg0MP1c/BTYRUJ9JBZfI5ymITgTicQHCvu4NUbwaqW/RlRAOIJL8P1cmbWEWtoIxsI0PvJQijR80tJ2T5ckSVYvT159mkDrd7u/q0BFmE6oeUWAfAPIxZnpzPRQeBbolS5sMu6mKHo9YafORYurPgjOUb1VQqQpALx1IER2GjAPtCC53GGUYUolKHwiiO3T9g==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(346002)(396003)(366004)(39860400002)(1800799009)(451199024)(186009)(478600001)(6506007)(53546011)(6486002)(71200400001)(6512007)(26005)(2616005)(91956017)(2906002)(41300700001)(66476007)(76116006)(66946007)(66446008)(66556008)(54906003)(316002)(64756008)(6916009)(5660300002)(8936002)(4326008)(8676002)(36756003)(86362001)(33656002)(122000001)(38070700005)(38100700002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <510983D9AF625C4D8293CFC13C0FDF20@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6663
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT007.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	506d0784-b2e6-4347-175d-08dbb3f33949
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ehul/zBKNC+gIAVehbFoORiWLVAbS8fMy7ezJf75WovLb/1qspw9BrioI83/6weF913gBBvwRdGar/3U+CMAtRaZ+z4bwBCQQgCvuU+wJAmg8wslGXip2UjaCzGPx8xrDUA7YOO2oXN1eQaM+HVrsMJa25RrDU9WoQSLI36IeLdX+A1EwbMQtjRVMMvWsp36iorQ6vyclRT6m4kL72RmcswiBuqI0r4PsoYdIKobp7lsuqtxr+8S3wbv6hN3ixhnC/C+z+tEWV2Akqb59gRRgDITFTZ6rWVDAF7Pv7X4n8Kgv1mLCOntn5PVzZtUA/AVyY9qk5O95XGqD2vRP5R36tzC4WnhVwlh+R+UCcEKHOzymw3Y4YjBE8WaIkHA9Elkn65vlsMzlhE/nqTdC0eRzHpFONwr4lazcKAcZf1Kp9UgXctmInkihwNWNGDQtD92jZ1UXoEsoiLigScc+vtpn2F9Es482aQrgNUaO09/I1C3c4K4BEYDHjUJL2AiC8A2jgbajYLcmbbnaOTQXv9cPv/DrrP4D2h7Owa90aG8I/9Cce1Oog4IlE+Aq2e0F0fkfu0AYfuFNXkEpU9mOcsrjzaK36AIzdV6n9CT4bai2S1mZjKfylh9/0SHlYvwndMiZT+pPC5R4azoPbbYCqGmXqwlIiI4IAUH7dVxOUDidzi04GK6sNdNrU7l7ss6h/3OgjVZq6W0OfNgRYudPap5V2Cep5AJ/K1YkPbTTPGkECrbwX1lj75ZM5aVc5NIClYv
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(136003)(346002)(39860400002)(376002)(186009)(82310400011)(1800799009)(451199024)(46966006)(36840700001)(40470700004)(41300700001)(36756003)(40480700001)(4326008)(6862004)(8936002)(8676002)(40460700003)(5660300002)(107886003)(70586007)(70206006)(316002)(86362001)(54906003)(33656002)(82740400003)(81166007)(36860700001)(2906002)(47076005)(356005)(336012)(26005)(2616005)(478600001)(6512007)(6506007)(6486002)(53546011);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 00:49:15.7714
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2a8851a5-e61b-46c6-2f72-08dbb3f34157
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT007.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8923

Hi Stefano,

> On Sep 13, 2023, at 01:46, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> On Tue, 12 Sep 2023, Michal Orzel wrote:
>> Skip the following Xen specific host device tree nodes/properties
>> from being included into hardware domain /chosen node:
>> - xen,static-heap: this property informs Xen about memory regions
>>   reserved exclusively as static heap,
>> - xen,domain-shared-memory-v1: node with this compatible informs Xen
>>   about static shared memory region for a domain. Xen exposes a differen=
t
>>   node (under /reserved-memory with compatible "xen,shared-memory-v1") t=
o
>>   let domain know about the shared region,
>> - xen,evtchn-v1: node with this compatible informs Xen about static
>>   event channel configuration for a domain. Xen does not expose
>>   information about static event channels to domUs and dom0 case was
>>   overlooked (by default nodes from host dt are copied to dom0 fdt unles=
s
>>   explicitly marked to be skipped), since the author's idea was not to
>>   expose it (refer docs/misc/arm/device-tree/booting.txt, "Static Event
>>   Channel"). Even if we wanted to expose the static event channel
>>   information, the current node is in the wrong format (i.e. contains
>>   phandle to domU node not visible by dom0). Lastly, this feature is
>>   marked as tech-preview and there is no Linux dt binding in place.
>>=20
>> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
>=20
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>=20
> Do we need Henry's explicit approval on bug fixes at this point?

I think it is a bit too early, we can wait for the code freeze for the rele=
ase-ack.
Before code freeze, maintainers/committers can push the patch as usual.

Anyway, I agree this patch is definitely qualified to be included in 4.18 s=
o feel
free to add below tag if you want.

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry




From xen-devel-bounces@lists.xenproject.org Wed Sep 13 00:55:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 00:55:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600888.936703 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgEA5-000457-Gv; Wed, 13 Sep 2023 00:55:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600888.936703; Wed, 13 Sep 2023 00:55:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgEA5-000450-Dy; Wed, 13 Sep 2023 00:55:21 +0000
Received: by outflank-mailman (input) for mailman id 600888;
 Wed, 13 Sep 2023 00:55:20 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgEA4-00044Z-AQ; Wed, 13 Sep 2023 00:55:20 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgEA4-0006VZ-5o; Wed, 13 Sep 2023 00:55:20 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgEA3-0000Fd-S0; Wed, 13 Sep 2023 00:55:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgEA3-0004L4-RV; Wed, 13 Sep 2023 00:55:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=+GB1jIRHHUs48ySt6Ts27wLD5Wbjr0O05jRvIktL75A=; b=D5Tj64d/IgsluPggIdYGkE9FGY
	OYHBsX37SlpB6xCT88d27sMTJNM4nJtukeYAmca3ejCRDvK0q/UkV05oc4LtsRcbYm1NAA69bo961
	XHAMbpaCo5LwqFqY3RpUlimCHT7MA2gcWtBR5Y6P4FItuamMjP2RwrzlW7/5HzcOP6+A=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182969-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182969: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:<job status>:broken:regression
    xen-unstable:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:<job status>:broken:regression
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:<job status>:broken:regression
    xen-unstable:test-amd64-i386-xl-xsm:<job status>:broken:regression
    xen-unstable:test-amd64-i386-xl-xsm:host-install(5):broken:regression
    xen-unstable:test-amd64-i386-examine-uefi:host-install:broken:regression
    xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:host-install(5):broken:regression
    xen-unstable:test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm:host-install(5):broken:regression
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:host-install(5):broken:regression
    xen-unstable:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5e8df433db791ba7e63ac1253e4e2a06ccd353d7
X-Osstest-Versions-That:
    xen=f1546c98e06fec6c2d1e15ff8e80547d10365bc3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 13 Sep 2023 00:55:19 +0000

flight 182969 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182969/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm    <job status>             broken
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm    <job status>    broken
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm    <job status>            broken
 test-amd64-i386-xl-xsm          <job status>                 broken
 test-amd64-i386-xl-xsm        5 host-install(5)        broken REGR. vs. 182955
 test-amd64-i386-examine-uefi  5 host-install           broken REGR. vs. 182955
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 5 host-install(5) broken REGR. vs. 182955
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm 5 host-install(5) broken REGR. vs. 182955
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 5 host-install(5) broken REGR. vs. 182955
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182955

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 182955
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182955
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182955
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182955
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182955
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182955
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182955
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182955
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182955
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182955
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182955
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182955
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  5e8df433db791ba7e63ac1253e4e2a06ccd353d7
baseline version:
 xen                  f1546c98e06fec6c2d1e15ff8e80547d10365bc3

Last test of basis   182955  2023-09-12 02:45:51 Z    0 days
Testing same since   182969  2023-09-12 14:07:18 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Gianluca Luparini <gianluca.luparini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Simone Ballarin <simone.ballarin@bugseng.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         broken  
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  broken  
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 broken  
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       broken  
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 fail    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary

broken-job test-amd64-i386-xl-qemut-debianhvm-i386-xsm broken
broken-job test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm broken
broken-job test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm broken
broken-job test-amd64-i386-xl-xsm broken
broken-step test-amd64-i386-xl-xsm host-install(5)
broken-step test-amd64-i386-examine-uefi host-install
broken-step test-amd64-i386-xl-qemut-debianhvm-i386-xsm host-install(5)
broken-step test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm host-install(5)
broken-step test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm host-install(5)

Not pushing.

------------------------------------------------------------
commit 5e8df433db791ba7e63ac1253e4e2a06ccd353d7
Author: Gianluca Luparini <gianluca.luparini@bugseng.com>
Date:   Tue Sep 12 11:02:51 2023 +0200

    x86/viridian: address violations of MISRA C:2012 Rule 7.2
    
    The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
    headline states:
    "A 'u' or 'U' suffix shall be applied to all integer constants
    that are represented in an unsigned type".
    
    Add the 'U' suffix to integers literals with unsigned type and also to other
    literals used in the same contexts or near violations, when their positive
    nature is immediately clear. The latter changes are done for the sake of
    uniformity.
    
    Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
    Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
    Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
    Reviewed-by: Paul Durrant <paul@xen.org>

commit 7a952cc3ecfd948272bec91218a4862418e5a321
Author: Jan Beulich <jbeulich@suse.com>
Date:   Tue Sep 12 11:02:16 2023 +0200

    build: restrict gcc11 workaround to versions earlier than 11.3.0
    
    The fix for this issue was backported to 11.3, so let's not unduly
    engage the workaround.
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Acked-by: Julien Grall <jgrall@amazon.com>

commit a22f0de322c288d26e9f29179beef1e1779ccfbd
Author: Gianluca Luparini <gianluca.luparini@bugseng.com>
Date:   Tue Sep 12 11:01:19 2023 +0200

    x86/viridian: address violations of MISRA C:2012 Rule 7.3
    
    The xen sources contain violations of MISRA C:2012 Rule 7.3 whose headline
    states:
    "The lowercase character 'l' shall not be used in a literal suffix".
    
    Use the "L" suffix instead of the "l" suffix, to avoid potential ambiguity.
    If the "u" suffix is used near "L", use the "U" suffix instead, for consistency.
    
    The changes in this patch are mechanical.
    
    Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
    Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
    Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
    Reviewed-by: Paul Durrant <paul@xen.org>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 01:13:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 01:13:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600896.936714 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgER2-0005pa-25; Wed, 13 Sep 2023 01:12:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600896.936714; Wed, 13 Sep 2023 01:12:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgER1-0005pT-UF; Wed, 13 Sep 2023 01:12:51 +0000
Received: by outflank-mailman (input) for mailman id 600896;
 Wed, 13 Sep 2023 01:12:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgER1-0005pM-Dl
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 01:12:51 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org
 [2604:1380:4601:e00::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a77c24ab-51d2-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 03:12:49 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 83B65B81E16;
 Wed, 13 Sep 2023 01:12:48 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id ACE4EC433C7;
 Wed, 13 Sep 2023 01:12:45 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a77c24ab-51d2-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694567566;
	bh=A/ZEJ2+oi9Em6UzniRvc6VqcZ5BW53Kdr/bMi+b9MzU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=joK/TOrsBfIFbNhCsioKtTETJPOMeHD2nmIg8RtsNc12NNr5jxW2Du3W/ZaKjtLsO
	 /HpqXSehbq/a6dQFH3UySzFeQKA14NUQ6BNxnU6Z2UyWP7GlIkLdIyd7AOa8nC5M80
	 HenqTFio87Q4SV6Jkyz9EQ6QRTnnhLkF47+x8Noy6BLtUtCVcyMfRREcyH0GfMdSY1
	 y4208j8VG+bOW6UOOqdmbLWZTVHrsnhWnSJVSV8dOM0tu0IoEOxkCqs1BC8G9fp+Ge
	 nwL70OEXFX1B5QHm7HopcuwOmipOZV+k3vIIhsWe6tgwufPe/eUxbDqheK7Usbxrb+
	 qFRbjG4d5hv7Q==
Date: Tue, 12 Sep 2023 18:12:40 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    sstabellini@kernel.org, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [XEN PATCH v2 04/10] xen/arm: address violations of MISRA C:2012
 Directive 4.10
In-Reply-To: <e58d82c2a2c77c7451ae9bc70b093f2c5575d83f.1694510856.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309121812320.2295162@ubuntu-linux-20-04-desktop>
References: <cover.1694510856.git.simone.ballarin@bugseng.com> <e58d82c2a2c77c7451ae9bc70b093f2c5575d83f.1694510856.git.simone.ballarin@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 12 Sep 2023, Simone Ballarin wrote:
> Add inclusion guard to address violations of
> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
> to prevent the contents of a header file being included more than
> once").
> 
> Mechanical change.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> Changes in v2:
> - drop changes in xen/arch/arm/include/asm/hypercall.h
> - drop changes in xen/arch/arm/include/asm/iocap.h since they are
>   not related with the directive
> ---
>  xen/arch/arm/efi/efi-boot.h | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/xen/arch/arm/efi/efi-boot.h b/xen/arch/arm/efi/efi-boot.h
> index 1c3640bb65..aaa468f186 100644
> --- a/xen/arch/arm/efi/efi-boot.h
> +++ b/xen/arch/arm/efi/efi-boot.h
> @@ -3,6 +3,10 @@
>   * is intended to be included by common/efi/boot.c _only_, and
>   * therefore can define arch specific global variables.
>   */
> +
> +#ifndef __ARM_EFI_EFI_BOOT_H__
> +#define __ARM_EFI_EFI_BOOT_H__
> +
>  #include <xen/device_tree.h>
>  #include <xen/libfdt/libfdt.h>
>  #include <asm/setup.h>
> @@ -1003,6 +1007,8 @@ static void __init efi_arch_flush_dcache_area(const void *vaddr, UINTN size)
>      __flush_dcache_area(vaddr, size);
>  }
>  
> +#endif /* __ARM_EFI_EFI_BOOT_H__ */
> +
>  /*
>   * Local variables:
>   * mode: C
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 01:15:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 01:15:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600902.936724 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgETk-0006P9-E1; Wed, 13 Sep 2023 01:15:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600902.936724; Wed, 13 Sep 2023 01:15:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgETk-0006P2-Ar; Wed, 13 Sep 2023 01:15:40 +0000
Received: by outflank-mailman (input) for mailman id 600902;
 Wed, 13 Sep 2023 01:15:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgETi-0006Ov-VH
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 01:15:38 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0b9a1a21-51d3-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 03:15:37 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id B815AB81E16;
 Wed, 13 Sep 2023 01:15:36 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 55459C433C7;
 Wed, 13 Sep 2023 01:15:34 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0b9a1a21-51d3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694567735;
	bh=mbI3rxX23vB6aNPI4tOpZCvisEZvVv//Qhz0UcPdPoU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=CS+32FgxjsrPwWWXmnkaUZAOva5X4+U6NDk9OXmTjKeYJoGTOHJ8KD5xGfd5ETC3s
	 aPaVPTDSuw3BMt9GGyDqEjnsPgwA5rX5OjK7tbJOQkX+0PBEO+FRuIVDLFjfiKQB3E
	 6BfNbevtH24bRIhV7zgb+cezunzsnKK0x1I7IUYgEvbMM1mCVGKUTW/57kzklZqgLw
	 PsVRJMFcA/vEX/arGTi3gjBTTPDT8x/6AYexxThV1Kwsix07jV2CFN3I4f6jxSCofs
	 qG4is6f8eJGzho3SPABBmicH9Zi4qAIMFDKXNcni3CwDOxfESsw/SxwyxlgCYcJ8QV
	 iQ45d19X8VjHA==
Date: Tue, 12 Sep 2023 18:15:32 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    sstabellini@kernel.org, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH v2 07/10] xen/common: address violations of MISRA
 C:2012 Directive 4.10
In-Reply-To: <580f202ce2b07a91b496f34dc4b300d8fb23dbc8.1694510856.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309121815150.2295162@ubuntu-linux-20-04-desktop>
References: <cover.1694510856.git.simone.ballarin@bugseng.com> <580f202ce2b07a91b496f34dc4b300d8fb23dbc8.1694510856.git.simone.ballarin@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 12 Sep 2023, Simone Ballarin wrote:
> Add inclusion guards to address violations of
> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
> to prevent the contents of a header file being included more than
> once").
> 
> Mechanical change.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 01:16:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 01:16:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600906.936733 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgEUZ-0007NG-My; Wed, 13 Sep 2023 01:16:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600906.936733; Wed, 13 Sep 2023 01:16:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgEUZ-0007N9-K7; Wed, 13 Sep 2023 01:16:31 +0000
Received: by outflank-mailman (input) for mailman id 600906;
 Wed, 13 Sep 2023 01:16:31 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgEUY-0007N3-VA
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 01:16:30 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2a1d47f8-51d3-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 03:16:29 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id E6C34B821AF;
 Wed, 13 Sep 2023 01:16:27 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id E8653C433C7;
 Wed, 13 Sep 2023 01:16:25 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2a1d47f8-51d3-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694567786;
	bh=mbI3rxX23vB6aNPI4tOpZCvisEZvVv//Qhz0UcPdPoU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=CnL2mVCXxj1QcORxNNncag7xl2u08cqXnR2//ZvF3P/3en+2lS/ImGKTfkHc/zrXE
	 9KTAhDeMwslgVLmDxdiaZTeDrnqAnk50bgNK6ia4Tu4tE1W7ZacmAvosMR8DoPq3iz
	 UEgbISjkBMJOXCsDK2czPeWSu4bdTiyxQaKVTEqS9OfzgQYrmIJd1JOddZkF9zqtp3
	 qc2c6dWUN9H3QCJG17zWQ9nyqTv7sVxhE7X7IT98S1B4eVDYoQZ3uSFPqRJjL3Nd9w
	 Im3r3PkTjJa7FnPB8QZnLblp+Fld7FIzny4Q7wjSxuko0LOkWiprwoukYR4dt4pjV0
	 NHhQKuE39ZkeQ==
Date: Tue, 12 Sep 2023 18:16:24 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    sstabellini@kernel.org, Jan Beulich <jbeulich@suse.com>
Subject: Re: [XEN PATCH v2 08/10] xen/efi: address violations of MISRA C:2012
 Directive 4.10
In-Reply-To: <5585708f62883ada3e7900c45a2c97dbcf927294.1694510856.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309121816170.2295162@ubuntu-linux-20-04-desktop>
References: <cover.1694510856.git.simone.ballarin@bugseng.com> <5585708f62883ada3e7900c45a2c97dbcf927294.1694510856.git.simone.ballarin@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 12 Sep 2023, Simone Ballarin wrote:
> Add inclusion guards to address violations of
> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
> to prevent the contents of a header file being included more than
> once").
> 
> Mechanical change.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 01:18:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 01:18:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600911.936744 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgEWU-000847-3C; Wed, 13 Sep 2023 01:18:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600911.936744; Wed, 13 Sep 2023 01:18:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgEWT-000840-W4; Wed, 13 Sep 2023 01:18:29 +0000
Received: by outflank-mailman (input) for mailman id 600911;
 Wed, 13 Sep 2023 01:18:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgEWS-00083u-DM
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 01:18:28 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6ff2588a-51d3-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 03:18:26 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id DF29E6170E;
 Wed, 13 Sep 2023 01:18:24 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1DB56C433C7;
 Wed, 13 Sep 2023 01:18:22 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6ff2588a-51d3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694567904;
	bh=F/JkfOb9SfMX4O+grOm4Br4LbSzNokgc9HLS4nRKr0U=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=LCp1nS30bvuWESP3VL+H1pz+PtgUM7PqnIYT4qHTP1TA01jqdXdb2PGexFLyGjYU5
	 zP1E+tnqVz8q0r/yRWdSxZxW+zMHMzX97QLyUoNC4pWvQHLb0yqSeYXP6kisXDyH/D
	 PryAL1HelR+sJPUIraM4fOwnhAwibjYOKR4xsQ6Moo6n2/iv3LIvczsld1PV+DVlcs
	 AgUHD2AZGrH8BE+OYWYWcDkHmD1yoGA7A8Cumb2h+qeFvk2YqZ309Ca4JFmtY8+yy8
	 8orJezD8d8mOPl0RDnp3juhn2vVaecsnlom7sLHcJn3EMuCNMzEajbD3lRMawqTgOZ
	 +kGeUmB5Qi5ww==
Date: Tue, 12 Sep 2023 18:18:21 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    sstabellini@kernel.org, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH v2 09/10] xen: address violations of MISRA C:2012
 Directive 4.10
In-Reply-To: <d1e081345c8dd35bc3e5baf91e95db830b5c68e4.1694510856.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309121816490.2295162@ubuntu-linux-20-04-desktop>
References: <cover.1694510856.git.simone.ballarin@bugseng.com> <d1e081345c8dd35bc3e5baf91e95db830b5c68e4.1694510856.git.simone.ballarin@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 12 Sep 2023, Simone Ballarin wrote:
> Amended inclusion guards to address violations of
> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
> to prevent the contents of a header file being included more than
> once").
> 
> Inclusion guards must appear at the beginning of the headers
> (comments are permitted anywhere) and the #if directive cannot
> be used for other checks.
> 
> Mechanical change.

Missing signed-off-by line

Other than that:

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 01:26:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 01:26:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600917.936755 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgEdk-00016p-Rz; Wed, 13 Sep 2023 01:26:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600917.936755; Wed, 13 Sep 2023 01:26:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgEdk-00016i-NL; Wed, 13 Sep 2023 01:26:00 +0000
Received: by outflank-mailman (input) for mailman id 600917;
 Wed, 13 Sep 2023 01:25:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgEdi-00016c-Vm
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 01:25:58 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7b7c0729-51d4-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 03:25:56 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id AFAFDCE1C99;
 Wed, 13 Sep 2023 01:25:49 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 95A3FC433C8;
 Wed, 13 Sep 2023 01:25:46 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7b7c0729-51d4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694568348;
	bh=6piGDTjpAnHdGAS5x4seMfvmuqhILPMy381PvKWH6LI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=RCCOBnvSnA92jiMyh1FIp36tBEivIGoDXAfH8jhHijFvVpcSy9CV0n1vG9y0/ss6T
	 pJ1JfsND/lVoi+BKBG2PFlWCKbt112PMlspuS7Tqz+aglMAIuLPwmJc3/XaGcOXf13
	 R/jhOIFwcYPFHGtMFmKnG/RPiuzHJUSLk720hl+GCJwoETs59EiLkSvXj11IUlX+Sn
	 xKPnlxJwnnGB+3cIjhTM0nKIC9OPJoXxArUE0IsuuVIfl2hL407qpXtYzWhDTaNCNe
	 V0uPOxdkJgN6n+ZI1hMZDCPUOTPTC8q4f9Z3MXqL+C+6ks+yEhbQuEhQzP9gNpH4Xk
	 4DYbHQ9ZmYftw==
Date: Tue, 12 Sep 2023 18:25:44 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    sstabellini@kernel.org, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Subject: Re: [XEN PATCH v2 10/10] x86/asm: address violations of MISRA C:2012
 Directive 4.10
In-Reply-To: <1bab3ee9632be879244a405ee248f03392c58731.1694510856.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309121819350.2295162@ubuntu-linux-20-04-desktop>
References: <cover.1694510856.git.simone.ballarin@bugseng.com> <1bab3ee9632be879244a405ee248f03392c58731.1694510856.git.simone.ballarin@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 12 Sep 2023, Simone Ballarin wrote:
> Amend generation script, add inclusion guards to address violations
> of MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
> to prevent the contents of a header file being included more than
> once").
> 
> This patch amends the Makefile adding the required inclusion guards
> for xlat.h.
> 
> Add deviation comment for files intended for multiple inclusion.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> 
> ---
> Changes in v2:
> - merge patches 7/13 and 13/13 of v1 as they had the same
>   commit message
> - amend the Makefile to produce the required inclusion guard
> - use the format introduced with doc/misra/safe.json instead of
>   a generic text-based deviation
> ---
>  docs/misra/safe.json                   | 8 ++++++++
>  xen/arch/x86/include/asm/compat.h      | 5 +++++
>  xen/arch/x86/include/asm/cpufeatures.h | 5 +----
>  xen/arch/x86/include/asm/efibind.h     | 5 +++++
>  xen/include/Makefile                   | 8 ++++++--
>  5 files changed, 25 insertions(+), 6 deletions(-)
> 
> diff --git a/docs/misra/safe.json b/docs/misra/safe.json
> index 0ec594f6bf..82c636ee94 100644
> --- a/docs/misra/safe.json
> +++ b/docs/misra/safe.json
> @@ -44,6 +44,14 @@
>          },
>          {
>              "id": "SAF-5-safe",

You might want to double-check the SAF id here as well


> +            "analyser": {
> +                "eclair": "MC3R1.D4.10"
> +            },
> +            "name": "Dir 4.10: file intended for multiple inclusion",
> +            "text": "Files intended for multiple inclusion are not supposed to comply with D4.10."
> +        },
> +        {
> +            "id": "SAF-6-safe",
>              "analyser": {},
>              "name": "Sentinel",
>              "text": "Next ID to be used"
> diff --git a/xen/arch/x86/include/asm/compat.h b/xen/arch/x86/include/asm/compat.h
> index 818cad87db..3d3891d061 100644
> --- a/xen/arch/x86/include/asm/compat.h
> +++ b/xen/arch/x86/include/asm/compat.h
> @@ -2,6 +2,9 @@
>   * compat.h
>   */
>  
> +#ifndef __ASM_X86_COMPAT_H__
> +#define __ASM_X86_COMPAT_H__
> +
>  #ifdef CONFIG_COMPAT
>  
>  #define COMPAT_BITS_PER_LONG 32
> @@ -18,3 +21,5 @@ int switch_compat(struct domain *);
>  #include <xen/errno.h>
>  static inline int switch_compat(struct domain *d) { return -EOPNOTSUPP; }
>  #endif
> +
> +#endif /* __ASM_X86_COMPAT_H__ */
> diff --git a/xen/arch/x86/include/asm/cpufeatures.h b/xen/arch/x86/include/asm/cpufeatures.h
> index da0593de85..39b15e463a 100644
> --- a/xen/arch/x86/include/asm/cpufeatures.h
> +++ b/xen/arch/x86/include/asm/cpufeatures.h
> @@ -1,7 +1,4 @@
> -/*
> - * Explicitly intended for multiple inclusion.
> - */
> -
> +/* SAF-4-safe file intended for multiple inclusion */
>  #include <xen/lib/x86/cpuid-autogen.h>
>  
>  /* Number of capability words covered by the featureset words. */
> diff --git a/xen/arch/x86/include/asm/efibind.h b/xen/arch/x86/include/asm/efibind.h
> index bce02f3707..f2eb8b5496 100644
> --- a/xen/arch/x86/include/asm/efibind.h
> +++ b/xen/arch/x86/include/asm/efibind.h
> @@ -1,2 +1,7 @@
> +#ifndef __ASM_X86_EFIBIND_H__
> +#define __ASM_X86_EFIBIND_H__
> +
>  #include <xen/types.h>
>  #include <asm/x86_64/efibind.h>
> +
> +#endif /* __ASM_X86_EFIBIND_H__ */
> diff --git a/xen/include/Makefile b/xen/include/Makefile
> index 31782fb177..b2f9576362 100644
> --- a/xen/include/Makefile
> +++ b/xen/include/Makefile
> @@ -105,9 +105,13 @@ xlat-y := $(shell sed -ne 's,@arch@,$(compat-arch-y),g' -re 's,^[?!][[:blank:]]+
>  xlat-y := $(filter $(patsubst compat/%,%,$(headers-y)),$(xlat-y))
>  
>  quiet_cmd_xlat_h = GEN     $@
> -cmd_xlat_h = \
> -	cat $(filter %.h,$^) >$@.new; \
> +define cmd_xlat_h
> +	echo "#ifndef _COMPAT_XLAT_H" > $@.new; \
> +	echo "#define _COMPAT_XLAT_H" >> $@.new; \
> +	cat $(filter %.h,$^) >> $@.new; \
> +	echo "#endif /* _COMPAT_XLAT_H */" >> $@.new; \
>  	mv -f $@.new $@
> +endef
>  
>  $(obj)/compat/xlat.h: $(addprefix $(obj)/compat/.xlat/,$(xlat-y)) FORCE
>  	$(call if_changed,xlat_h)

I checked that everything works as expected with this change and it does. I am not
sure about the choice of name "_COMPAT_XLAT_H" but anyway:

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 01:28:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 01:28:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600924.936764 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgEgZ-0002S1-7U; Wed, 13 Sep 2023 01:28:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600924.936764; Wed, 13 Sep 2023 01:28:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgEgZ-0002Ru-4N; Wed, 13 Sep 2023 01:28:55 +0000
Received: by outflank-mailman (input) for mailman id 600924;
 Wed, 13 Sep 2023 01:28:54 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgEgY-0002Ro-TG
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 01:28:54 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e6498188-51d4-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 03:28:53 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id 1AD34B81E16;
 Wed, 13 Sep 2023 01:28:53 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 97017C433C7;
 Wed, 13 Sep 2023 01:28:50 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e6498188-51d4-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694568531;
	bh=r9wJKqQ6CVq4/n9sB6DY3jMGidNE8gSANBvSkExa0dg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=olZ8aDmB/AfSA/fXW2aVePtMSukQ9VPke2fUMh3Fj/5Iwm49j+TY9R6DndH/eE8AV
	 DLrGPUP5B6PQ2loQMUvbhKixr13Jjy/s/Umf31TW9adw0RBiiXDOdiEhn7DCxMns2G
	 IJ6JQHxA0wbGdaMVQaIbwpOwS2eDgqKOkAIZyUE1iSH2kcXhYBBRjvQJsOTYpLUDaF
	 0VSMNfdpMa457ukX84/jpQ1zB916e1H0Sbj+u/CD1amR0FFFmsiezmXMI0u2+BAgy+
	 +wRewxDqHOjSSSHsKkIy9PU7VmAoOVyGG7Cp24Jr1kmO1k3Lv6ohBA9Xv0dDcnN0WN
	 f/3cxOezEtVig==
Date: Tue, 12 Sep 2023 18:28:48 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    sstabellini@kernel.org, Jan Beulich <jbeulich@suse.com>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Liu <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>
Subject: Re: [XEN PATCH v6 2/7] x86/hvm: address violations of MISRA C:2012
 Rule 7.2
In-Reply-To: <1231f5eeebf6f2e30b91780e92dc4d6015cefdb7.1694532795.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309121828400.2295162@ubuntu-linux-20-04-desktop>
References: <cover.1694532795.git.simone.ballarin@bugseng.com> <1231f5eeebf6f2e30b91780e92dc4d6015cefdb7.1694532795.git.simone.ballarin@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 12 Sep 2023, Simone Ballarin wrote:
> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
> headline states:
> "A 'u' or 'U' suffix shall be applied to all integer constants
> that are represented in an unsigned type".
> 
> Add the 'U' suffix to integers literals with unsigned type.
> 
> For the sake of uniformity, the following change is made:
> - add 'U' suffixes to 'mask16' in 'stdvga.c'
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 01:53:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 01:53:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600930.936774 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgF3o-0007WD-3o; Wed, 13 Sep 2023 01:52:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600930.936774; Wed, 13 Sep 2023 01:52:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgF3o-0007W6-06; Wed, 13 Sep 2023 01:52:56 +0000
Received: by outflank-mailman (input) for mailman id 600930;
 Wed, 13 Sep 2023 01:52:54 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgF3m-0007W0-Ov
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 01:52:54 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3ea26582-51d8-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 03:52:51 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 4D6A96179B;
 Wed, 13 Sep 2023 01:52:49 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 95974C433C8;
 Wed, 13 Sep 2023 01:52:47 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3ea26582-51d8-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694569968;
	bh=EmouGUNtMN2J3PrOjj+twY4alh7OqbNy/fvyLC9gcv4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ScEDAIY8oRhXqNkG+CZtaw30aZVOrtU09z4D/z6feuyUtNtc68ptL+4bP0e1j2PfL
	 qohkG6eBLB8iA+NILqVu1IZdT9dha/Zr2HE9+hbWRf12t8TsyP39SuX+Xt/XgvpMJw
	 1nLmIv9+2C6qmA/BRsk4yN5rrXzPfHbaKdAulL2kwms+qKf7ywP974E+sd5U0xNZoa
	 JAXGZP4amVwdw4+gPIDr5RubK4tFHyaAMdxjnGpMkYTr+RxYxnnOUtZGRsoZjabSys
	 Pt4zHYcvkgBflWY1mGx1TidtD/5gZ0a2YMyKrPhSl4cQnarldtH1ac5IxaI9Az4j+6
	 AiPmfib1NQNbg==
Date: Tue, 12 Sep 2023 18:52:45 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    sstabellini@kernel.org, Jan Beulich <jbeulich@suse.com>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH v6 5/7] xen/x86: address violations of MISRA C:2012
 Rule 7.2
In-Reply-To: <33185adc43014dff090ea6832a5a88e15caf5f38.1694532795.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309121848140.2295162@ubuntu-linux-20-04-desktop>
References: <cover.1694532795.git.simone.ballarin@bugseng.com> <33185adc43014dff090ea6832a5a88e15caf5f38.1694532795.git.simone.ballarin@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 12 Sep 2023, Simone Ballarin wrote:
> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
> headline states:
> "A 'u' or 'U' suffix shall be applied to all integer constants
> that are represented in an unsigned type".
> 
> Add the 'U' suffix to integers literals with unsigned type.
> 
> For the sake of uniformity, the following change is made:
> - add the 'U' suffix to switch cases in 'cpuid.c'

Missing signed-off-by

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 05:03:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 05:03:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600939.936784 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgI1s-00016D-Ma; Wed, 13 Sep 2023 05:03:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600939.936784; Wed, 13 Sep 2023 05:03:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgI1s-000166-JL; Wed, 13 Sep 2023 05:03:08 +0000
Received: by outflank-mailman (input) for mailman id 600939;
 Wed, 13 Sep 2023 05:03:07 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xOkN=E5=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qgI1r-000160-IO
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 05:03:07 +0000
Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d315db92-51f2-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 07:03:06 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id 876E621836;
 Wed, 13 Sep 2023 05:03:05 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 7181C13582;
 Wed, 13 Sep 2023 05:03:05 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id CDt5GolCAWU3QAAAMHmgww
 (envelope-from <jgross@suse.com>); Wed, 13 Sep 2023 05:03:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d315db92-51f2-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1694581385; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=aqMxnxsvK+afgBat+c+kA3SiBph0E+v5Zd3Fj6vEPqk=;
	b=t3Fh2eRFMHx9ChyRDGpYP2I9x0JhoWC89245DD+BdEytg6TflFDrHdMayV+ucDDzEkjrMl
	JZx1s5ui2OsbyYHW0A0I21zpu7pm2DI3l4DPytESKUG1C/sWyYLmA2BymOr8WteDI+uVOc
	13veIj7YaBhH8M9aN0h2DnEoQOL1xGU=
Message-ID: <d227544f-b367-48f7-8dcd-52c3cf197e16@suse.com>
Date: Wed, 13 Sep 2023 07:03:04 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [linux-linus test] 182959: regressions - trouble:
 broken/fail/pass
Content-Language: en-US
To: osstest service owner <osstest-admin@xenproject.org>,
 xen-devel@lists.xenproject.org
References: <osstest-182959-mainreport@xen.org>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <osstest-182959-mainreport@xen.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------rY5GOdFlQVtP7ey10YFLRatK"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------rY5GOdFlQVtP7ey10YFLRatK
Content-Type: multipart/mixed; boundary="------------mdSuX0MyZMXYKDg5hlkYjWUt";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: osstest service owner <osstest-admin@xenproject.org>,
 xen-devel@lists.xenproject.org
Message-ID: <d227544f-b367-48f7-8dcd-52c3cf197e16@suse.com>
Subject: Re: [linux-linus test] 182959: regressions - trouble:
 broken/fail/pass
References: <osstest-182959-mainreport@xen.org>
In-Reply-To: <osstest-182959-mainreport@xen.org>

--------------mdSuX0MyZMXYKDg5hlkYjWUt
Content-Type: multipart/mixed; boundary="------------7MWMTSxeN0OVmXAnT9xRolhO"

--------------7MWMTSxeN0OVmXAnT9xRolhO
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTIuMDkuMjMgMjI6MjYsIG9zc3Rlc3Qgc2VydmljZSBvd25lciB3cm90ZToNCj4gZmxp
Z2h0IDE4Mjk1OSBsaW51eC1saW51cyByZWFsIFtyZWFsXQ0KPiBodHRwOi8vbG9ncy50ZXN0
LWxhYi54ZW5wcm9qZWN0Lm9yZy9vc3N0ZXN0L2xvZ3MvMTgyOTU5Lw0KPiANCj4gUmVncmVz
c2lvbnMgOi0oDQoNCkkgY2FuIHJlcHJvZHVjZSB0aGUgaXNzdWUgbG9jYWxseS4NCg0KSSdt
IGJpc2VjdGluZyByaWdodCBub3cuDQoNCg0KSnVlcmdlbg0K
--------------7MWMTSxeN0OVmXAnT9xRolhO
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------7MWMTSxeN0OVmXAnT9xRolhO--

--------------mdSuX0MyZMXYKDg5hlkYjWUt--

--------------rY5GOdFlQVtP7ey10YFLRatK
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUBQogFAwAAAAAACgkQsN6d1ii/Ey8I
Hgf5AT+vHBJ15wPGgO20ue0NWcJMExO/tlPkG9JTtA7shI+5GQAu2p3CqOfoHndbrX3E8KoxMgHk
82zunk2WsZL2ejqwnpxeL19AFjR/mZ6zLnXe6KZXmaooMCZZ7nGX9W0VA6w0HK6pDasBgB+PpaEe
Gz8J0PXrO1Oc7sellsYNPuKMpqWDLuaYWlRmbCglIE3jVS5sAA7FcvrwgGZ7Yas5zKa1W27byZG+
IuW2SS0J+xJ+TxJaZaRHefLYd3F72IWHadIfWDITIogSDb9n0PqjwLj/K8vUljNnrmzvZWU4SSVC
F0Nqs5YDkRvnP8dXnvZZLlAqEJUbLFp8yByni5IYVw==
=m0WB
-----END PGP SIGNATURE-----

--------------rY5GOdFlQVtP7ey10YFLRatK--


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 05:44:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 05:44:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600944.936794 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgIfQ-0006Co-NS; Wed, 13 Sep 2023 05:44:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600944.936794; Wed, 13 Sep 2023 05:44:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgIfQ-0006Ch-Ks; Wed, 13 Sep 2023 05:44:00 +0000
Received: by outflank-mailman (input) for mailman id 600944;
 Wed, 13 Sep 2023 05:43:59 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgIfP-0006CX-Ml; Wed, 13 Sep 2023 05:43:59 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgIfP-0003dZ-KM; Wed, 13 Sep 2023 05:43:59 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgIfP-000538-7J; Wed, 13 Sep 2023 05:43:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgIfP-0000wO-5F; Wed, 13 Sep 2023 05:43:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Tnvpd9Ileoiw6/8DqazkKDvWHB28JiFQZI94TUYIEvw=; b=juNM90EPzQC0RCzhuRisOfDTca
	Sy4X7GXYYs05b3c7S3brKWY1a6dDveORt3EQM2/AmtlpEH+C5+dz48YXQ/4yyx0lAWR4hMtBqlC1d
	9+06c4nQO3Wo2bqFl7B60Dyo1M5BTlL6xFmYgmb/wVKYsBsvv1Y72ugw6Lsve6XOIdRk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182988-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182988: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=b844b106e2a20c709ece1b2b89b2ae0e84a0e401
X-Osstest-Versions-That:
    ovmf=7f1a8cad9945674f068ff5e98a533280a7f0efb1
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 13 Sep 2023 05:43:59 +0000

flight 182988 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182988/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 b844b106e2a20c709ece1b2b89b2ae0e84a0e401
baseline version:
 ovmf                 7f1a8cad9945674f068ff5e98a533280a7f0efb1

Last test of basis   182974  2023-09-12 16:12:24 Z    0 days
Testing same since   182988  2023-09-13 02:42:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Min M Xu <min.m.xu@intel.com>
  Min Xu <min.m.xu@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   7f1a8cad99..b844b106e2  b844b106e2a20c709ece1b2b89b2ae0e84a0e401 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 05:58:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 05:58:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600952.936803 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgIt8-00081L-VP; Wed, 13 Sep 2023 05:58:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600952.936803; Wed, 13 Sep 2023 05:58:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgIt8-00081E-SV; Wed, 13 Sep 2023 05:58:10 +0000
Received: by outflank-mailman (input) for mailman id 600952;
 Wed, 13 Sep 2023 05:58:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgIt7-000817-AN
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 05:58:09 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0622.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::622])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 829cf7ff-51fa-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 07:58:07 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8378.eurprd04.prod.outlook.com (2603:10a6:10:25f::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 05:58:04 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 05:58:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 829cf7ff-51fa-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ogw/rbkbLIL7oVoxarbFERvm6WRF95/0zZcMbY8NXvHLZRaYmaUvPiEzDJAqFQX9AKoTvdkLE2Fqhxt+CSxMHoyeYn6kvS/QQXLwkEDWsKi51BqZfYuQzTPv+FmTb/s5qPgg3RTdvma1dRf19sAbMWt8FEJZPUYufNyeSKHn89UFLKN/pPmbQzyY/LpxA2X3onGSoLmJwTmLM5VakfhRUC2YGKzbt079MQnbbVxSjx+GU0fye8X93xSyB0y7iPF0DmDSoVBz2DovgdRXoiNNaS8l2Ig3cZWaVHpBUtXQa+xVx6NAG0AF1r/9kaTD//prckqGfgBaYfznSgpQ0PQVlQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=h3XRPmyR/rYeCPkUbHbM6Ne0NiE7p8QqzvML3QMDIx8=;
 b=NL4fzdaIEP3fEQWVHEivPV7r6h+EQyYryA2fYrGB6aRYh0xl7vbscT6V8PAVpJeXU2gAl11S+Z2qd2QyZ5if4tu9B3tu/sDav03vyITN2vIGypqy7pNfCYHlssKsU3iGHzXgoj7VDiw8k0dW3Siwj21yOBkgkWGIyoEpJuWXxKFVRThuYr0g/XsOZEnLfPLG0ROFfqNveq0vhjRIYqy4vHSrb12iJi4cHV2VREBVywR0uQ7VVQwFZAr6MEqETM2Krc7eFDjrMyrxLOx/HRV0EKzo/OyC0RTTQl9ZQtJjuIVjdC5Q1ShzDUOzI9o2CBMqviyWQlhewCR1Mz6C3oWIPA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=h3XRPmyR/rYeCPkUbHbM6Ne0NiE7p8QqzvML3QMDIx8=;
 b=SLFzUZ4bt7MOP5MA7UPxThXWmkqEVZzKAwkIdj62OLm2AfbIsprrSMSShmrXUn7m+oXlPNuqUYPww6JVEkPgzFNNmZnmMoiP2vTFyZciQtKLRL9rfDP6569xNhdKctHcBtDJxaIz5AvE2AFUtZLCE6aFDkHwk0r3XiMNKy+Mvv5lOV5gC+irQ7eSltITN4P7S9BqG9LnQLJkXEPilaUm0xKZ02R6LdzNOUAeZeqfw2nJ80ZhtJhYEiRWsizDZ0BdMPLkO84+xLCohS2+UKepvn8rptIGanG8uCIOJiEfY/pevHMmRE+cfnzWY3W/TX4R1v17aPepCpNLcvfj0UIINQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1f57bbf2-d6f3-2e3d-61e0-049b8e2e070a@suse.com>
Date: Wed, 13 Sep 2023 07:58:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v9 04/16] vpci: add hooks for PCI device assign/de-assign
Content-Language: en-US
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Paul Durrant <paul@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-5-volodymyr_babchuk@epam.com>
 <77e2dbc0-c224-4c1e-72a0-5b19aa76ba0b@suse.com> <874jjzhsd4.fsf@epam.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <874jjzhsd4.fsf@epam.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0212.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ac::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB8378:EE_
X-MS-Office365-Filtering-Correlation-Id: 496fa93a-8c0c-469b-b3e3-08dbb41e64c4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GPNLFCefySKTWPUEwvV3EDXqlftU+vj2uDh56LM+giBFOcEkBKA5HiCeOAajdnFkhsrruMAtFcSBY1DaU8QX3HIdQd4IbnUQaHrAD9z0UMeZuFpnYLEoCw9X2Pz/y215cageNhVWssvDNcFXN31XYEsxeUEx4pyyUle/hc7K1aC07Haebv3EB34csIrRg409xD4vTkfCUsOPkFbVOSxwdcXbA54u+ZhbxpQufe77Io4bRy2LmgKLDoa7wpSAMADGdIv+K2yowthn2agY9U6JXRhLiwJ2w8wKGmRYR1Q+HUttrJAvRuJtl22gsdYl/zHKi4oN23jwoBPwSj3Ie1tQbljN1MDe8SBCxG6NSgzVKQ7HMv86hha7ZlXTTMPJKquEsVMdPlgTib2whB79Le0FNnd9KIXhmnfECJVpiywAfZYIZBpfAgSUk/+RrgzriX/tOgP0m6qGL40bCBh6QZzDF7gIK506zR8ckhLBkRWa8xeLbfdn0iWjC4ZJ0jwYcmGGxIw7fCMOXFPg/l/G65saKsmceQRDHYSxSxDREWXiWH0Lzyn2IGyIxDHN+FMWzpSmBozu+ey5iYywanviFBQe+pvxh0rpy4z9Oa0RuwAJHu7Ei4t+fsM3ECmiNlrIEPNQcI86Yt8oUY37G6JYFfKGnA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(376002)(366004)(39860400002)(396003)(451199024)(186009)(1800799009)(38100700002)(2616005)(31686004)(36756003)(478600001)(6916009)(41300700001)(66556008)(66946007)(66476007)(54906003)(53546011)(83380400001)(6666004)(26005)(316002)(6506007)(6512007)(6486002)(8936002)(8676002)(2906002)(4326008)(31696002)(86362001)(5660300002)(7416002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Z3hFTVNQL2pOd0JrZ25QMXhQdWFiTTV1ZmVnWGcyNnVHOEExN0Fyb05vWGxR?=
 =?utf-8?B?TFlad2pTM3p1RVRsQjlJN0JreWRobTQ5TG1KMVFLUlVWRUNIcE9yOFNYS0hx?=
 =?utf-8?B?THJPdjlqdGM2ZHZ2RnlVS2JQWGViYzhubWg3aDNyRjBHUWpEWmtBTzBtN2FO?=
 =?utf-8?B?SkthKzZJOVdDRU1iak53bU5aYTFjNnlnd0ZhcHNQTGMrUk1KNzNxdXRIL2s1?=
 =?utf-8?B?ZXV1K3BFSkRVcUVTSEdBSzRXQWNjSEZ6RCs0L2IrZlprd2tLSjN0b2xGQWZp?=
 =?utf-8?B?eEVRSHEzTWlyRVgvY0NLWmxFYWl2Q0UraDVhVUplcWJtOUluRkxCN0hqV2lT?=
 =?utf-8?B?c2RNb09udXBtWDdoa0dTZ0NGbE4xZS9nQk9wYWhhMDlYYjNCZ3MySXRwcHN4?=
 =?utf-8?B?OVJpNk10UU40eEovVTNmS21PTkhZUk5NMGRQMkEyWFlMUFB6eUxOVGFQejNq?=
 =?utf-8?B?WTF6SVk5WVVHYWYrTFJEWFYrVkwvUzdNQVZkb0pWdFdqZGJ5LzhjRVZiNkxj?=
 =?utf-8?B?WXVSWFVhcUV3NzBzQ05VM3ZHRVhVYTVrY1NYR2hlZTZlVmdkZXBpR0ZqU0No?=
 =?utf-8?B?TXBFSlFSSENuUUZ2aVk0dXRTNFlza29SN0srenVVUGtoUVd1OHcvYXBENWEz?=
 =?utf-8?B?N0JCdlFwcHY5bFQ4K2ZNemkrUmZTTXZCUVBQTnkzcnNPSFpUZjg1ejdFdWlG?=
 =?utf-8?B?S2RRNjFyd3lwcWtWTzgvZUtncU1adHFkYjhWWngrOHlZaDlkQ1AzWHRrU0Y5?=
 =?utf-8?B?blVqeE1YRnQ2RkFtcWN0bGFFcHIyZHNzbzhjOFN3RDNPRTJqQk5wU3RPS2Zk?=
 =?utf-8?B?eXZ4azlJWC9mYjhtZklobzJpTFJIMjZuT2tsMHRHamU4TVQ2UVB1QTdmYUN1?=
 =?utf-8?B?WXBWSkpjUVQwcTBQc25RMFI3S3FCMlc1bGtuSEU4cWpEQjNPTFVRaWR3NWZt?=
 =?utf-8?B?M1o2VkVVdWdIUWJHeWdvSzZYOVE1KzdXZlJla0FydlpHYTNXYVVYU2Z1QUs4?=
 =?utf-8?B?NWxuczlKZGNFSWphZGlIUzE1VTFOckw1NVJZWHBXUFRCeGhiZWpLQ0djdCtK?=
 =?utf-8?B?YTJ5R1I2MDBsSEIwWmcrS3hWL3ovZVp0RGdLTVZ6cjJaWW1YZlJWTE1MNk9B?=
 =?utf-8?B?ODhBNG01V1kzMUZDdS9QRjlzb24yQ0t1a1AzYUhCYmVrTEhpSjlLSlI0WE5u?=
 =?utf-8?B?SnB1ZW9tOWVBSklDL0hIc0VMLzV2dWwwMEx6ZG1VOGpBT2NBMlBvQjRzdk03?=
 =?utf-8?B?R09HN2VwTUNTYlNldmF0akZlV1BPdHlJS1gwOXhnZjRncEJLY3hpOE5kR0s4?=
 =?utf-8?B?Z3plSHpUak5kK21ZaDdOQmtrZWpoeFc5NHF1d29ObllCWTVhNnE2UzlQNHNk?=
 =?utf-8?B?b3RHUVA5OHRaNnVzVDNpUWkyMkh1Kzk1SW9xSTF5dCtNNER4dDRHZjcxNTRh?=
 =?utf-8?B?VHZBd2FnaS93aEpNZDhzcThWM1FNUlhNUWU3WndzZ0xTT09iaTVjU2hxN01E?=
 =?utf-8?B?WW1CZXNBaDM2aDBZb29lSHZlR3R4TUxpVG56MGVUdWxVNENQb0tOMnloZUFr?=
 =?utf-8?B?dFhXNTM2SzFKZkpMdUt6WmN0NzdNSkVHeWxqLytOOW5qTllBbXN6NVdtcWk3?=
 =?utf-8?B?S2JjWjF2S3Baek5vWXAxZkJwcjVYVlBFYkFpNFQyaUlEd1FybzFvYlRBVlJ5?=
 =?utf-8?B?ZmpUUDdaZzIvQmdkRGJuUWJjMWI0T3BxZmJUWnFla0FPaVU0ZVZ3UHZrTW5k?=
 =?utf-8?B?VmU2bmNRenRuMDhncEpPbXpZT0VFRFpCSVZnbTdrRjlFZ0pxZnVZeXF3cWRI?=
 =?utf-8?B?T1pYS1FibzBHMFlpYTF4U0t1QUhzaklGUHhRcGxGaTlGeE9BMVpJYjllOXhm?=
 =?utf-8?B?ZFNTNTZxTVdGaW5YeWhYN2xKMjFlZGZwbUMxZ2pEbC81Tm5pVm9LTlEvVW10?=
 =?utf-8?B?ODFNSC9rZ1JoNHVYYTR1SUlvNFpMMGtHV2tuV2xLY2tNaEpwRiszMFhrMnhO?=
 =?utf-8?B?WFJ0a01meVd6aG41aEdXUTBWOUxPMnV1SEdFNndWZ2tpb1JadmhiTndyb0Y5?=
 =?utf-8?B?bzd3VHFTNXJDeDRXMUwzN0V6aWR1UjhVVkFlTVMrWnI0eU9SRjdpLzVabXVV?=
 =?utf-8?Q?A02TZXsinymExruO1RQKvWcvs?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 496fa93a-8c0c-469b-b3e3-08dbb41e64c4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 05:58:03.8130
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Rbt9Y1zKEIoAeDuuuEJihyzxejT4KL9A3dAcY1ldWwU8VxFpb6z+06+lNwTtpmk4wtFHgEatk4+7XhehX4XBgg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8378

On 13.09.2023 01:41, Volodymyr Babchuk wrote:
> Jan Beulich <jbeulich@suse.com> writes:
>> On 30.08.2023 01:19, Volodymyr Babchuk wrote:
>>> @@ -1481,6 +1488,13 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
>>>      if ( pdev->broken && d != hardware_domain && d != dom_io )
>>>          goto done;
>>>  
>>> +    if ( IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) )
>>> +    {
>>> +        write_lock(&pdev->domain->pci_lock);
>>> +        vpci_deassign_device(pdev);
>>> +        write_unlock(&pdev->domain->pci_lock);
>>> +    }
>>
>> Why is the DomIO special case ...
> 
> vpci_deassign_device() does nothing if vPCI was initialized for a
> domain. So it not wrong to call this function even if pdev belongs to dom_io.

Well, okay, but then you acquire a lock just to do nothing (apart
from the apparent asymmetry).

>>> @@ -1506,6 +1520,15 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
>>>          rc = iommu_call(hd->platform_ops, assign_device, d, devfn,
>>>                          pci_to_dev(pdev), flag);
>>>      }
>>> +    if ( rc )
>>> +        goto done;
>>> +
>>> +    if ( IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) && d != dom_io)
>>> +    {
>>> +        write_lock(&d->pci_lock);
>>> +        rc = vpci_assign_device(pdev);
>>> +        write_unlock(&d->pci_lock);
>>> +    }
>>
>> ... relevant only here?
>>
> 
> There is no sense to initialize vPCI for dom_io.

Of course.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 06:02:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 06:02:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600958.936814 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgIxT-00017Q-Fc; Wed, 13 Sep 2023 06:02:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600958.936814; Wed, 13 Sep 2023 06:02:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgIxT-00017J-CA; Wed, 13 Sep 2023 06:02:39 +0000
Received: by outflank-mailman (input) for mailman id 600958;
 Wed, 13 Sep 2023 06:02:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgIxS-00017D-4k
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 06:02:38 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on062f.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::62f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2338d4f7-51fb-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 08:02:36 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7621.eurprd04.prod.outlook.com (2603:10a6:20b:299::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Wed, 13 Sep
 2023 06:02:31 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 06:02:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2338d4f7-51fb-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Bu7qUIDpFmevW6Z8RhGFXym7dsoWXAUQjW04GrfndyZHLRfbafZuw9WpP6XxZAYnPCFbBr3imLuiZpullXpHkmJLElf0PCJAi8B/mck8yWy958l+LfU8iai4emWJXcgIA3IkCwbT83KGUS2/dqTL2K5xZHnx55YUWpSfWvifY0tAuwWLAztBm/npkrHYrisi9rFLSOulUU1zp5h/SpgnfvfZBkUSwpgumFAoExIMnpAAndVVRSkxoBGTBo5StKCX0X4KHRixRsX90TRsLq9F9JoSmxSW087yDq3gTnBgRqfDI3ubNdzeR6vGYX/NXsY3193NnVhKj8L3LIpnfkcEfw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8k5ka4Rd5oGj/IiMM7fslevP2QenLXS6Y3xO8jqJvWA=;
 b=gL1YQQFjVTuihlKQIKCRKRePyPYtxr1rPYYzv9cjDzO08kEalDpbL3vLrnm2qNDKx6CbtVFevAV9ArtzkwBTltoekkl8rF2blh8UhHxQ1XGQUZMq+OKD6cfvQbZqNV/WognorpXcEuA9FUH01M3AoKdZQok/Y9EhnG7vnHa6jKbttzNHvH8prRJA2z8Bfr6HjXXLpecCZzIVWTXdzAyNU0ckGR8b0sPUZXspUXlP8+vKvIeqqyiZTFOG+gl7BkXRf4JTFZqxXVD8E8rOHrATBSSTMIeXh7wXwzmnljrB2N99vMYRszJqLB1ByN/SDC7CMlVyNw4UfkbPk5zKIPfydg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8k5ka4Rd5oGj/IiMM7fslevP2QenLXS6Y3xO8jqJvWA=;
 b=vCvU3olmsKx/J+xmY/wZtniQeNTI0gpBKLCzrKXh/fdA6D0Iupw7PJDw7UzCWla+27vsw7BqHEPuNf9kMX3eOExqcisgmRtjCBhA8d3/uhVuCVn0jDGs/mE4a+5TnzsEtw08ux6jN0x8D5cjg94W6zW96KUR/CEepZ1wbOP7sWJUeLF9vkJrt3mj348EqwL4vH5UPpy892iSHdxvEWJJVCKNc6ZO0ynvbtId+qXSEgzE6Ovg4xRHX/1XvGSDJmXTnEQAoP+RSyInuwKl3yoLfRNJycfZAAZkpqq89gM9BhHJjc5xmPE2Jaqa57eWzexuL88SchMeX4c7U6mTYlGh7A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6d98425e-b66a-8de5-4eac-fc28212bfe9a@suse.com>
Date: Wed, 13 Sep 2023 08:02:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v4 1/5] xen/ppc: Implement atomic.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694211900.git.sanastasio@raptorengineering.com>
 <7ed453323033a759427da33cea7d18ddca247ae7.1694211900.git.sanastasio@raptorengineering.com>
 <93f4a2f3-b98c-332d-64a6-9e34cc9dddf2@suse.com>
 <7d3029fc-1188-3c55-0a54-bb9899fb91e8@raptorengineering.com>
 <07f75b80-1579-25ec-ab64-cbc1f2ff15e1@suse.com>
 <c155907a-c5b5-a3fa-f9f8-f68ec51a3c87@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <c155907a-c5b5-a3fa-f9f8-f68ec51a3c87@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0209.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a5::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB7621:EE_
X-MS-Office365-Filtering-Correlation-Id: 2ebc52c5-4024-4842-fe81-08dbb41f0494
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	K/PYg5a0DlwkO0M3AkCbXimRENK/WxZb6I34kcWLZpeCO4lQ7DW9+nRt8r1rDzvDwRDmURivqH0q/sxaLAINfZZeIoJiquszTfgSV4ai+UX67Hg0WgZIAyXuNLyE/zqColY7+HmA+twB2kpESGKNopLpSLZGh707yWZu5frycyHOKAVTHqfwLH2A/U66tODrpLsM6GqUMMO1ZWhf4ayiJ3l6Y80wmmIn0bUodns7tj7kE/kqVTGV9n4cvbHchGN+l3UFLZS8EA6hqgVMLh+U8vmx0r5D6bVVR/qIPQxaSnq1dVgn1hDmISGA0DMlSoX7FauBFz5VrSfuOvkwAA26PmPwrCAufHTByHCTrZCKvcf7Bfi/h9nVMYnpS27CF7UllmylXHyXm9REHPQf/41Ka57kkJVsi4aPOA/RnIbtQTTPJ7tMD49guRzfiD+UxB3TOVuLUkZGy8slhjdbqg12dHBDxDSWEnI2MfIhB7wOac0vdTcA7K/Ka2SXNGygiMtwYIVvZrJEcbGxs3LyjLkJSlQ5/XxtxwsACnaNDUY/hVdH8dn9FBtXd+SsdLIsvI5GH5Dnea1v7wzDHspe/AwfZJJOTPf89paATn6y+whfbzzL3xdH8FyGi03UDz/YGGdICpWjgfj9X103dbelffOtjQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39860400002)(396003)(346002)(136003)(376002)(451199024)(186009)(1800799009)(2906002)(26005)(6916009)(316002)(41300700001)(66476007)(66556008)(66946007)(5660300002)(478600001)(8676002)(4326008)(8936002)(31686004)(6512007)(6486002)(6506007)(2616005)(53546011)(36756003)(86362001)(83380400001)(38100700002)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SG5vZ3RjVUVZOE82LzlzbVRVVk91Z3RVWnRrN1VPcXRZV0NhWjJvb2svUUF0?=
 =?utf-8?B?MGpzRzNUdGtRQmQyV3djNWQwZ1huOGVQMXNoVDdYYXpqdlc0ckk5emlqMEhT?=
 =?utf-8?B?UkU5QjF5OFZHUXFkN1ZpY0dTQUdXeHQxZ3BuYXFFQmxYKzZhSTAvbjB5L25k?=
 =?utf-8?B?Y08zTDRFbmRPR2FwS3BrYzlaQkRiMDhQZnpLRWdjOFBOUEc0aEQ2UUdOYVls?=
 =?utf-8?B?a21NTlVCQXM1SFBQMHNxY3owOGVtUlhVTThzbTB6NHVwSitXUDNETE1ROXNJ?=
 =?utf-8?B?N01weWdvY1NiREoyQ2RRVVRrUDQ2b0ovM0ZZNllSWUFOZ3A1OFVUellIK1pG?=
 =?utf-8?B?SS9YdmpTcElHdFVpNzFoc0tKQjRNWVpWT0YyNzJXaS9UekEveVdpZ2dPL3pq?=
 =?utf-8?B?cklkcytPSVJzNXBWYnFGV2l1ajJtMWJFbmwwSFh3V3BrTVlFRWRwOGlzeThl?=
 =?utf-8?B?UUFJVWJsMVJXL2swRWpNdHpYWlQ5SStoQ0dNT1ZIdlc1M0F3U1dRTDVnVmpF?=
 =?utf-8?B?cm1UcmhVVmRkVzhraHZ6ZFUyQTM3bld2aHZJblZPZkJ5MTl1RTVHb3FXQ1Zw?=
 =?utf-8?B?cFRRRXlvSmR6bGVFTjBEU0s3SjJlRWdDSmJ0QUFsN0tIeXlhVVNnUmJuT2dk?=
 =?utf-8?B?Um5JTVM4YTFkeXZUUW1vWUpuNXBpSklOL1NlOENJbGhzUWJ2cU5MT0QzdFJ0?=
 =?utf-8?B?WUtmS1NpN2xQeDNRY25MYXl5VUtBVklrSUtoaWEwTkQxWjhTTXljV3VmRmU0?=
 =?utf-8?B?MzM1bUcvazhudnM1eTl3Y1hTU2FEUWNGemRlaHNKYnJ2QXFaQ3pST0ZHQXJV?=
 =?utf-8?B?T1p0UEtQNmhWaGVIdzFNbXRYcGV0QUV5QmhOODNDUjd1aTZHemNrS2VDelkw?=
 =?utf-8?B?WW9yL1NYV2xlbDZlbHZJaGYzdzI4NUVMdDQ5UnVaQTNCWGQvSzQyNTJHMUxO?=
 =?utf-8?B?bldOd2lOcXFHL3hrN0dQR2o0SDhtSE5CT1VKRHcveGJ1TlpqNERWUDdWSzhw?=
 =?utf-8?B?cnNMdUU5Vll4NGV1Q3Z3SmNpOWhDZW9WelVOUXdENHhjcGZTYkNhOForZnpX?=
 =?utf-8?B?dFJFWHA0TzRVMGNNR1Z5c2RvbG83cHU5YjhlQTcvaU9na2pxOUttQXlEdWZC?=
 =?utf-8?B?MkdVYXlpWjErRkt1bVJ4eXBmSW11NGNPTENmajN6b3FNLy9BalltazdTTDZQ?=
 =?utf-8?B?bXlIYzc3cDZBNmRjVkc2elRwRlltOWFtWmt5d1FMN0UzV3FYWmpOK1JEQjRZ?=
 =?utf-8?B?Yk1sTUpleEhKc1dpekpsRkxoT29pU2FSMHBBd1B4eFgzRVRUQWRmaW5EYnY3?=
 =?utf-8?B?aFl6ZDhHTllOVTVhamozK3dHTDdhUDAzbjhVUkE3MkZwdGk5RHJaY1BDYloz?=
 =?utf-8?B?ZWdPSmd4OGo0Wm5zV0JQeTllN2oxZUJDdmpJdXdnVGJUZ2ZqU0Iram1NTFRD?=
 =?utf-8?B?SElQb1hiWTNvT25xTXZmMjZWaDV2VDEyeVpuMzJ2emNWQ050WE5ZVHhiSnFk?=
 =?utf-8?B?MTRLOXdUWW5jRzdoM0gxS05vdDdJMnVuUklkaXRXemh3Mk0wcTloalBVeTd2?=
 =?utf-8?B?YUt1OTFZRnBheHl0ZGFXN0NNelB2dlN3VzM3VlN4c3J5bURNTE9iM0RmU2pV?=
 =?utf-8?B?eWRWNUdZMlNZV2JvT2tERnArN3NJRDh3SnRDaUcrVFRtN2tyR0EvYmY0Ykdo?=
 =?utf-8?B?WWlKZzBpTjhYZXp0MjRnYWVoUjJLVjVaOFVrK1dHOG45bGhXajk4WlBpKzVQ?=
 =?utf-8?B?bGVSZEJGWGFuSHd1LzNLTTlFYkNva3Ixb1NRb1RROU54SnlQZm9JV1Q2aStq?=
 =?utf-8?B?c0JwRWdMTmpXUHdkblZVRkY5Ykd5NGFtY1J4ME5xSFRuY3dyTTd2NjdnVkVm?=
 =?utf-8?B?RUIyYkNrdTEzVS9kclVVc3dEWDNFeFhBRXNxdEZWRm9VL2VHQ1VENjBCZ05D?=
 =?utf-8?B?TlJwY2NVa3RmQk0wQk9ENWdpWDhsWnVDQ1lZWEhzdHJxOHFXUlJCdjdpRkVo?=
 =?utf-8?B?TFZUZnhpazg1bXFkcUJqMTVXdUMrVnJrR3VkZTJob2NxL2RnK05kRmkxSmpa?=
 =?utf-8?B?ckdndVZHdmVpbERaK21RUlAxOUdXaVhiUmp5WG0xcGVIL0xIUFFWZ00rUVhX?=
 =?utf-8?Q?lDwpJNy1oGVAFCvsSWxIY2ugk?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2ebc52c5-4024-4842-fe81-08dbb41f0494
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 06:02:31.8229
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 3qraew5EfEmyvSEwK2cGcC6eIhei2DUvzzo4LSvRkqSE6gTsVjEZLSs+c7ixui+N/Soep+8uXSJM/CXzzLhlAw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7621

On 12.09.2023 20:10, Shawn Anastasio wrote:
> On 9/12/23 1:48 AM, Jan Beulich wrote:
>> On 12.09.2023 01:56, Shawn Anastasio wrote:
>>> On 9/11/23 6:33 AM, Jan Beulich wrote:
>>>> On 09.09.2023 00:50, Shawn Anastasio wrote:
>>>>> +static always_inline void read_atomic_size(const volatile void *p, void *res,
>>>>> +                                           unsigned int size)
>>>>> +{
>>>>> +    ASSERT(IS_ALIGNED((vaddr_t)p, size));
>>>>> +    switch ( size )
>>>>> +    {
>>>>> +    case 1:
>>>>> +        *(uint8_t *)res = read_u8_atomic(p);
>>>>> +        break;
>>>>> +    case 2:
>>>>> +        *(uint16_t *)res = read_u16_atomic(p);
>>>>> +        break;
>>>>> +    case 4:
>>>>> +        *(uint32_t *)res = read_u32_atomic(p);
>>>>> +        break;
>>>>> +    case 8:
>>>>> +        *(uint64_t *)res = read_u64_atomic(p);
>>>>> +        break;
>>>>> +    default:
>>>>> +        __bad_atomic_read(p, res);
>>>>> +        break;
>>>>> +    }
>>>>> +}
>>>>> +
>>>>> +static always_inline void write_atomic_size(volatile void *p, const void *val,
>>>>> +                                            unsigned int size)
>>>>> +{
>>>>> +    ASSERT(IS_ALIGNED((vaddr_t)p, size));
>>>>> +    switch ( size )
>>>>> +    {
>>>>> +    case 1:
>>>>> +        write_u8_atomic(p, *(const uint8_t *)val);
>>>>> +        break;
>>>>> +    case 2:
>>>>> +        write_u16_atomic(p, *(const uint16_t *)val);
>>>>> +        break;
>>>>> +    case 4:
>>>>> +        write_u32_atomic(p, *(const uint32_t *)val);
>>>>> +        break;
>>>>> +    case 8:
>>>>> +        write_u64_atomic(p, *(const uint64_t *)val);
>>>>> +        break;
>>>>> +    default:
>>>>> +        __bad_atomic_size();
>>>>> +        break;
>>>>> +    }
>>>>> +}
>>>>
>>>> These two functions being as similar as is possible, ...
>>>>
>>>>> +#define read_atomic(p)                                                         \
>>>>> +    ({                                                                         \
>>>>> +        union {                                                                \
>>>>> +            typeof(*(p)) val;                                                  \
>>>>> +            char c[sizeof(*(p))];                                              \
>>>>> +        } x_;                                                                  \
>>>>> +        read_atomic_size(p, x_.c, sizeof(*(p)));                               \
>>>>> +        x_.val;                                                                \
>>>>> +    })
>>>>
>>>> ... is there a reason you keep using a union here ...
>>>>
>>>>> +#define write_atomic(p, x)                                                     \
>>>>> +    do                                                                         \
>>>>> +    {                                                                          \
>>>>> +        typeof(*(p)) x_ = (x);                                                 \
>>>>> +        write_atomic_size(p, &x_, sizeof(*(p)));                               \
>>>>> +    } while ( 0 )
>>>>
>>>> ... while you did away with its use here?
>>>>
>>>
>>> Yes. In the case of read_atomic the caller is allowed (expected, even)
>>> to pass in const pointers for `p`, which wouldn't work if a simple
>>> typeof(*(p)) declaration was used since it would inherit the constness
>>> and thus wouldn't be passable to read_atomic_size.
>>
>> But the helper function's first parameter is const volatile void *, and
>> while you can't assign to a const variable, such a variable can of course
>> have an initializer (like you have it in the write case).
> 
> Yes, however the second parameter to read_atomic_size is a void *. If
> read_atomic macro's local `x_` was declared with a simple typeof(*(p))
> then it would inherit the const and thus couldn't be passed as the
> second parameter to read_atomic_size.

Oh, indeed, I was looking at the wrong parameter. I'm sorry for the noise.
That said though, all of this could be avoided if read_atomic_size()
returned a value rather than using a pointer parameter. But that's
something for a future patch, I guess.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 06:15:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 06:15:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600964.936823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgJ9o-00031i-LI; Wed, 13 Sep 2023 06:15:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600964.936823; Wed, 13 Sep 2023 06:15:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgJ9o-00031b-Id; Wed, 13 Sep 2023 06:15:24 +0000
Received: by outflank-mailman (input) for mailman id 600964;
 Wed, 13 Sep 2023 06:15:22 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgJ9m-000319-LG
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 06:15:22 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2084.outbound.protection.outlook.com [40.107.7.84])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e94d16a9-51fc-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 08:15:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8651.eurprd04.prod.outlook.com (2603:10a6:20b:43e::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Wed, 13 Sep
 2023 06:14:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 06:14:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e94d16a9-51fc-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bQb6JrD8v39jiHDCkbvJ0qpjsmNu+LV6NURvA0u2n8EC65b/ytZ03tGVxIlCeZ+kWtPhsvMiTfYuWzzAvO8KaTxa+BfEW0z2WoktAdU2dBQxUNZhX9FXWpiZQIKL21No624lOMZOwtf+pfjMzH6gEH/jJCszzDljlqEXatUalUjrnvXGCV30aePo/aA9wWJRJqX3QKFvAeurdMG1Se1WL22Wx5M5kl38Qu8geARUKT7gAAGDRONag/xn2wFO4UexhGsvYF8svT8l35MQL5OrXDCzpl4n1PqpJW5Pb0G20MgYvxk/cSs6fyPGkT8AzlQIZjC6NZ/n6m27GzpgQs4btA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=doQScRTSSLO5FgT9Mpf5bp5s6lb3TaNX/sW5y16v3J4=;
 b=W+tVlGuwxSbhqyN9HhKVq4nEbdRBGaDYWWx6ee2XSteKyonZwYduvd8i5kTTLUII41cFWxDCLnFYkk4zJpqjykx5ZmRAN+BjP6zWR+42CrOGumb8Ki9U7Q44rVzwlCmrb11tAGtfcIvkuWRYqndgfncrUoBa+oK1iSDu+ULtuUFN3Vi6JaOplIpszO0QcVSsUP9bbVDdpE3yEunq7+oRf++vYJL0L3y3qwbFA4cWMaVVe0+JXGxnHlf29HzGBiorr81pQ/MZgWcQ6nFeulNhlXbvG47XfpTfE4KtVDmVkzL02u0y1IbQFIisq+3jM/I8HJjlk4T284/XksZw1wBcog==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=doQScRTSSLO5FgT9Mpf5bp5s6lb3TaNX/sW5y16v3J4=;
 b=lkOMEgTgPAhLswr416qm1pJQ/YYfpdiS+5UhXjSxGSEDTGdPDIXRUMXtaayh0tivKtDjgHPZLDAka7tZqvp0SXQREt+ZlmTAnb3T72nAqxIQoK52TRt8FrmYX8ozC7kxeXXMaWHT0li00KinXXei9yy2/6BnPvI+9PNtouHsJxRE3Ejd1slO8mb9b4J30tfDQtllUmn6z/BHj5fnxAq8M0USZGtNf1q+wigbLT4ttKWoo2KVlmW5Ayg6HcrYrcoup82ZQOdSds0atbDVaWRSZ2O4BiDFomLxkYrsLXyV1powNsPVpOnp5bep9DVKvcsXaBnCKY+LF/gr6TjyUFNfGw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <809ef122-7060-c033-e50d-6e372ab89de9@suse.com>
Date: Wed, 13 Sep 2023 08:14:46 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230912162305.34339-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230912162305.34339-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0070.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ce::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8651:EE_
X-MS-Office365-Filtering-Correlation-Id: fcecb6df-f4ce-4b02-de67-08dbb420bbc9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wFYXtuCMe30NVJjUxlnedwxB/CUGp0YwEzNKsOwnEHjZicqjX00EByjOGp22sNfpCerEbvFh54aMoZxQdCo+UO2sRuEHj7LmzcLZfmEe+j8Tk2z62n/8rR2gDMVXWTiL+SIj2ZIdfznBj9r/2QeeZE+gcC92VFfWNZiWWDrUhQWgyO3d4Yd93e5yDkY8nzmAPrrr/pfvLQmjCCfkzRtcbJJCgywBak954RcTMUeqInPOnKsxxJv0k60/i5lV2cXTZrIX8a2087F5HnCECpk5RZYFEE20Z9QDjVYDjdwLIjSfBcnkz+pPO1WZuPK8qIMcNKhGxy5Q7L94EkfMYY73SMSCZbA43qJKSjm2+w3suWwyg9l65PnKeGchloyRG7LpS4GZMuf6/4FQ7KInkjjj8Ide2+8F1jFWPgn7rw7oN6gFXfvfG7+gVo1KMx5a9wChRBMERysKonxJBZkzo7/EXM6XkTGYfKF+K3QVUvpYQMlXJB69x3iFmxlJiyx+0g2bMrHm3+IKc9CpGsHH0E71Oryc2tIGrR6SWzuSrPRByYWfHKNpXvvsl4upQxf9p3Y3cAsDUprkWqYuQB9NzGu3gjvWbx4N1J3YIdPUV7zrgNMJBglkda/prNOILJmvODk4weU3WoY+S/alRnYn0XPaYQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(346002)(376002)(366004)(136003)(451199024)(186009)(1800799009)(38100700002)(83380400001)(31686004)(54906003)(66946007)(2616005)(66556008)(41300700001)(6666004)(6506007)(53546011)(26005)(8676002)(66476007)(4326008)(316002)(6916009)(5660300002)(478600001)(8936002)(31696002)(86362001)(36756003)(2906002)(6486002)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Zmdta0JRUm9HQVhkd0ViTjNlMnlQbnBudkR5NFJLZmRidDR0ZE5mSWdFWE1v?=
 =?utf-8?B?SGtlbldxeWVZTHdTc1FlYU1YUThScStiYVhFZUtnRnVMdXlTVFFQRG9BNFdC?=
 =?utf-8?B?dHE4OWh3eDdmRnZyTVkzN2NsUUdXTHh1NVZJTUNPamJiZnhsVVhaTi9ocytL?=
 =?utf-8?B?Y0VqS1RDNVpwL2VGQnJWbTRkRUlzcjlkdUtNVHloUzlRbUNHRlVJSy8zeUJR?=
 =?utf-8?B?UmtPRVozUDlsbEJSOHNGaVluYkZ5Qi83V3NiaHBRWFkwR1RCK0RxR0JDYVVC?=
 =?utf-8?B?NnE3QjQ2c2Z5MUxKRjJLaFhFWkFGejRra3NCcGNRMWhLY3lyVktJVVpHcUZm?=
 =?utf-8?B?UThyY1ZUWXRHcndXWjVkVXlSeW9vN3lQRC9sS1RGVVNTbDNIWVhQeWZxeU4r?=
 =?utf-8?B?K2UwYndhTWFjazRoUHlRb01uRm80Qnlxejk0ZzRFNUVuTENZc1BzTzAxR0M1?=
 =?utf-8?B?QU92eEhDYlRNTmtuZXZUdjRESXVMS0VGd1FpOGFydXEwUXY3aVd6RzlqVzBS?=
 =?utf-8?B?OG1RMk1RK0FKcWpkTHMreHRZT3NYdDUzendxMGF3aUZ1anY4cVJoUVZ3Z2p0?=
 =?utf-8?B?bWNOMmFURW93dXBSYllkWi9NNFBvQjZPVDdtdTdLQllHVUYrUkVWUXNDY0pp?=
 =?utf-8?B?a043TzZPYkVOTnNsZFRyWU9kK3lLTzNYL0hXR0thM053WGp4VFNMeWhxWi85?=
 =?utf-8?B?Q1ltczAzTWFuOUhkNHJidmd6QzVtZkozcjN4Vy9DdEhSaGRLRUtQSnNSZmZo?=
 =?utf-8?B?LzlDckFMNmIrV0d6R09NbklLcjVkMmhJR2hIS2JoRU1RZnJmQlZpdENXcWFj?=
 =?utf-8?B?SmlOMk1ERDNUQTFHZUxPdjd4cnU1SXpleUZMdE5XdFpISzR3NmliV3kwa0Ju?=
 =?utf-8?B?Q0E1WDZPSnUvM3pObHd6VGtja2tBZFo1QitNUjRycmhwWDJBV3JPd2FZZG10?=
 =?utf-8?B?Tk1MQkpldkRteWtFTU9jV2V3SUNGRzZRMUNSR0FzOXRqQVZGVFFLZzRqZlJL?=
 =?utf-8?B?V0FOZDNrMEYxOGRLd1lzdW9CcmJ4elgvc0FkWTlBM1pienNzT1E2Vm5kUEJJ?=
 =?utf-8?B?TFdzRFgzNndicDU0bWlFNktHbW0wbjg4NzBsdWNlVkFXMXl4dGp5L2l3Rk1Q?=
 =?utf-8?B?N2FqSFhCcHVNVlV2NC9KZWFpNlR3TmpDTE1DbFd5RGp3TDZpMytBS045TFNY?=
 =?utf-8?B?Q3FXdU5YSEZJaHZOSTM0TVdqM0srZTVTT21RaWRXZmpoOEJSdlREanowYjQ0?=
 =?utf-8?B?aXBBcklpWWswL2hCWWx3TVBRVXBOWm8zYWJFakd3TnFFem5wTzZRNEdUZ0ZR?=
 =?utf-8?B?VzJsdnJUaFZ3b2tqQnIwRlJkVXZRTzNydGN6aVFnU2JBaklZOGh5N3BpeHEy?=
 =?utf-8?B?eVg1d21ZYndUWXpSNjAvU1g0VDdYd3UxZGRKL0JEK3NFWExBeUhFckxNZVV6?=
 =?utf-8?B?dmNyWDlqajBTWG9leGlGc0w0bzk5UWNXcmM0bjIxWHhvV3ZqNk5aUXpGclJq?=
 =?utf-8?B?RFRueEpBSHJFcGRZTzJXS3Zna25VQ0Q4WTZ2ZmM5SmRqK0swM3BmTktnVGRq?=
 =?utf-8?B?c09NdE94aVZVaEVveHNmYTFPdWt2MXRoK2xvMmg4M0FjMmdyeFd6cmN2Tzla?=
 =?utf-8?B?d1lOVWJJYzZjSmdxeDJHaWduTytkbmFzTGR5bUwxcG9Pa0VxV3l0eVZKTGhm?=
 =?utf-8?B?aU1hU0pKRlNuZnovWFdweGJXcS9pMWQyaUd5UDFJeTBLb2ZwZFZXMDlXbHNu?=
 =?utf-8?B?aTVSOWNXWlZvYS9zc0UyTnArdEdNMFl4a0dGL0grMDl0QmdoUWFxQllwazhG?=
 =?utf-8?B?bVdwSE14MlZRRmxITWVPZ2IvZDQxUVI1RTdZMjZpZE9XQlRlQmV2K3FFVUJT?=
 =?utf-8?B?OUhvUmV0TC9yRVBjbFVleWdOaGxyWXpVV3AyZ0xQSTkvKzFIRmdJQVgxR3Rm?=
 =?utf-8?B?TzFrUC9OZldHWWtRQ2U3WVlpSGNYeUVoWnozQkxha0VaMEpkRWhJcHdnemtm?=
 =?utf-8?B?a0hzKzBFeGtUTW1BT29uMUVNVFVnMVQrdHB0MGgrS2JWSkdweVo3UXBvYlJn?=
 =?utf-8?B?SWxnMHpGSVNGd2FSek1PWngyWTMwbktXa0xqRy9zMm5HMUk4TWpOYno4Znls?=
 =?utf-8?Q?MVwxCfzSuq2uu8mSV38GWTtcv?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fcecb6df-f4ce-4b02-de67-08dbb420bbc9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 06:14:48.7543
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: sdCG2wssE0okIlHu4xX3Arj8e+Ti1bUx0frHx5IC/5vuqI9MRkLZ3EOvfzIQh5P5uekWU0KYbYZUhOs/ODtVRw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8651

On 12.09.2023 18:23, Roger Pau Monne wrote:
> OpenBSD will attempt to unconditionally access PSTATE0 if HWCR.TscFreqSel is
> set, and will also attempt to unconditionally access HWCR if the TSC is
> reported as Invariant.
> 
> The reasoning for exposing HWCR.TscFreqSel was to avoid Linux from printing a
> (bogus) warning message, but doing so at the cost of OpenBSD not booting is not
> a suitable solution.

Why is the warning bogus? The PPR doesn't even state what the bit being
clear means; it's a r/o one. On respective families it cannot possibly
be correct to expose it clear.

> In order to fix expose an empty HWCR.
> 
> Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> ---
> Not sure whether we want to expose something when is_cpufreq_controller() is
> true, seeing as there's a special wrmsr handler for the same MSR in that case.
> Likely should be done for PV only, but also likely quite bogus.

Well, keying to is_cpufreq_controller() is indeed questionable, but is
there any reason to not minimally expose the bit correctly when a
domain cannot migrate?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 06:19:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 06:19:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600968.936834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgJDL-0003zn-5h; Wed, 13 Sep 2023 06:19:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600968.936834; Wed, 13 Sep 2023 06:19:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgJDL-0003zg-18; Wed, 13 Sep 2023 06:19:03 +0000
Received: by outflank-mailman (input) for mailman id 600968;
 Wed, 13 Sep 2023 06:19:02 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgJDK-0003zZ-Iq
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 06:19:02 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20605.outbound.protection.outlook.com
 [2a01:111:f400:7d00::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6e474fe9-51fd-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 08:19:01 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8965.eurprd04.prod.outlook.com (2603:10a6:10:2e0::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 06:18:59 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 06:18:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6e474fe9-51fd-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EY+6TRDF6Owg6aEfuR7bhvavtP0Tec5qx3nwey6gQ+GOiHARhM5jWyHMMIq8/hCfpC+DkI9cpIwAGdqaQBe8BGz2+2IkBUuIP5UtX0gEWW8+LuiogtwnRLkdrMQpUf178zR+3fEuIMhHT/gVHHwFFEQKLLvYN3+99x+yPjrvI0EEJbSLsF6oJUnM4uHb1w5cPCcDOlqQkOi2k7q31x38k3Ffwdd7fWQUzCBleITgmCQSj3/q/Y1y/iZB22BbPUyxtHlEu6x6pvcsaywPcUPjghRSDZ8r6Lzf9bUaETNjBNoGJUHFxhWKjdatfCgCf2JJP4o1+1SdtjigR3+0UzmDdQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DKeRxAGAmMi/1vTc4qJyW5b1V/FPSZ/ubQxG9sGyjoc=;
 b=SKhYP/wMsbrQvAwlIix8+foXALXNsMSjSs0SmbAhOerMfrLDNsD6FutvUVINUUkXIbjiZRCUOG27tbNHNVSdeNrSZ2tyR5OsnWFKPqRHiYpMa59Hu2UwAQIDoZA774ypjMeT1nQWEMPHj08c/7H7XBBeP0/KT9Emw0atmRZuXU1Gen7WwK1sEVVvP+cipWgQTh/ZoC1pUnyzebLDBJDeFLQeNhd0Kbiz/22EAf99uAvJ8DBtDVQmWwB8sn59RkwKghS/+hidEIAQMHfkzKK438JJUKDflzteSlsBat16wNlTSGfFlnGH0IovA6gdFn8Ujp9I6SlYPpAoMNCOG3tilA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DKeRxAGAmMi/1vTc4qJyW5b1V/FPSZ/ubQxG9sGyjoc=;
 b=a/vhKgrJceWRTdWimT3IjMaGcfDrq+LTipM6EMbdMwLm/CmeCVXl61p4k8bJQDOJTo02bVHClWJLVg6V8Hn7zswbyEskobl8cSjfhEwAMyyZeniiZ1Y9867w1+cU2OQ6tORBsw2iQGJXXzbn4XV8/jxPaOcgAEERMfIxs6sZpKevpVzMFltigtPR52zbBlNtZn6pOkTQdwUaqXL+lPQbVSV9DDT3PacvPZBcA+DEingZiUbhlBb3j2tRAFDlZxbvN+38X1r7TtfXQv2TEIUQb+KGf6ZyqUFM2FTtWIV04d7E5S5f8Deb+MbEjUjNLzkS8YrSMU8fnju3hOZ5FURZRg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2cfcda8f-bd51-085b-997a-0ff31434d460@suse.com>
Date: Wed, 13 Sep 2023 08:18:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Liu <wl@xen.org>, solene@openbsd.org,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0222.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ac::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB8965:EE_
X-MS-Office365-Filtering-Correlation-Id: dea80c2c-21f5-423f-face-08dbb4215148
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	fayTWgAhYhMQNFSZVeqUmxP1+XyZn2fyrXMrz5h0GkksoODA/l6wiHYYZWpO/pLsn4yXJONuvIlerfMz7Ag0GUPuqzLUJWDw8T6t7xzpZs4i27kqIbnkbDaTBC62uymhlgYmy82O+mgrzTn4W8mw26NcfpwFQvNpKJZuKH0S/Pwmc/8LIe1i6BflUCsWuUyZlw0y+t+pyIQbTG7Me+5uyphGpDNN8KkDJNSRkjcwvVFsJxtEfEATJNlv1Ph76z0FpnpHA84o/D70Da0+k4mefRavzXX7LwTq5DjyCDO1Ljkfxic7sHhx3oItyfAWg69BNHe25mvQXLpbft61kWAd9kA5MS4AASAW9VN7fOy+P77VlQJpiny5xArgTYVJ+0h/gBKdSZNE27eltQ6gfrac9dZgeTIn0MKYYseNnxLNYVOd7ag3sHdLgrHydvwh+KoyY0uxyh4d00TzQbQfnDSbXVR+ebUTAOnFzCfSGCYbEe5ehaEaTlWSmdXvqYqu46NxgdVRVKY9O7isd9a67ixqt2rbJA/yfx1xAYuNNCTZ48uAhzjtk9pjOvjE5s6XBCqNZvgWWE3tlm1rBo6/P4Zf1OO3FTMa0FjZdhb+c3nhwoGGpKdNEorSfL7tDovoyB1mQKEG6J3Yk2vBF9aCH9ybUA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(376002)(396003)(346002)(136003)(451199024)(1800799009)(186009)(31686004)(2906002)(5660300002)(8936002)(4326008)(8676002)(41300700001)(66476007)(66556008)(54906003)(26005)(6916009)(66946007)(316002)(478600001)(53546011)(6486002)(6512007)(6506007)(83380400001)(2616005)(36756003)(86362001)(38100700002)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aWtYNGZRUnRJcnRDQVlyUzl3K2FHZUIzMEpXZXFmaCs2ZXRwR1B0VStNMk14?=
 =?utf-8?B?RUNObjI3QWpuRDgrYWFNVDZCRzNHUlZDdWZ0UVVwQWw5V2loVGhOb21YZk9E?=
 =?utf-8?B?Y3B0VXl4eHIrei9aWUdhT0dPbTNaR3kyWjZGSlhSckdScHRiZmVuaVFCS3R4?=
 =?utf-8?B?NnlyVHlDMkVEZFRDNGgydlh1RWtBWm93ZGJkRmNTSFl0Rm5SSURiSm1WQjJl?=
 =?utf-8?B?TmFuaUFpNXZnTUtINjAxWHpvUkgvSHRZUzFORDRud29qZGttZzhoSUJOK2FO?=
 =?utf-8?B?S2lRamNIRHlEME16cmlVQng2UG5OdlBDNEltYlFCaUx4aUJXY1QwZkE3ZEk2?=
 =?utf-8?B?cnd5SGFucFk3ZEx0cEUxNkJDVzNOSmZzMmkvZ0ZHMWRVMUJxcVRDUE5GOTJ3?=
 =?utf-8?B?K1lkREw5bHYwU2pxZXE3ZkdRZVdkME54cFhLQVJTNnBMNU0ra1JNdjJVdnJk?=
 =?utf-8?B?em5WTFAzeHBTVUo3M3VqdUwwMnBoY21udlBnTmg3WVdzZXpOWUM1aWh2eTAw?=
 =?utf-8?B?UDNpRmJKeGgyeHVMVGc0UlA0dEFKZkJNbDBSYU56Wk10Tm1lVXVENHRDZVp0?=
 =?utf-8?B?akl1eDdTMFM0L3Y2b3N3eVZlMmMrU1FwcVJiQkN5b2w5ZlJEV2J4RURSN3ZU?=
 =?utf-8?B?QlppSDBuNWtFdWxkS0RiSTFPRGJwN21lMnEveGhnTFpOU0FyYmRjc2o4SUpC?=
 =?utf-8?B?ckxEdTZnZnNpVkp4Ukt0TFpVWlZZRExoREdVbDlKdTFuSCsxOWNMWGJScCt5?=
 =?utf-8?B?dmg1SGR4c0N2VmtmejV6eWF5YlJSSlBMNE42ZitIN3hqSmp3dHlmN1QycFQr?=
 =?utf-8?B?RnBUZWdQNmVrWTNYSEI3SGxVMVkrbjFjaFZCZXMxemdsSjJSUGU0SExOK2h4?=
 =?utf-8?B?RFRJamU1VmNCSnRnLzZSbXpHWDMyajlXT2JqNXM5VWxLSzFQL2VvN0poRXB6?=
 =?utf-8?B?eTFIaVYxNXBSTENJUXI1NnV1MTkrN1U5bVNna0lUNUZSNzJsdVNHN3RHTytJ?=
 =?utf-8?B?aU9VekFRMnE1b2RGTDVQdG1qcUNrbmdzRHJjbUJtdTk4SC93ZTJtVzFpcTlF?=
 =?utf-8?B?Y05RNnhnMFUwVXh3NmlDU0l4eG1HSGxkTkRzT1NEejRONnlJc2dmeUJkVVdI?=
 =?utf-8?B?M3R6THdadVZKbHBrZURvbEVTb25GNDZCblk4a2k5TEZQd1lpRWM2U1o5bHBO?=
 =?utf-8?B?Z0lXV3UxMnJwOGRzckFadGl5UC9lNklhM2I3eFk2SjFBa0FEUXVxR2h3eHVr?=
 =?utf-8?B?SEVmQmhlOXdXZnFsTUYxZ0Vpd1BtaFkvYUxGOUpxN3RHV1dCNnpVM2JPWDQr?=
 =?utf-8?B?RHVFdDNDVXVUTEJpL3hnTmMwNi9NdHBqcDhZVlFNeTVxSU81MlZwSy9qQnV2?=
 =?utf-8?B?WkJxR1RhYzJIU1JaL1FKS3BPa1kwZFlzcU9NdXVWVWwxVi95dk9meHFmbmww?=
 =?utf-8?B?NkdOdVlrbGYybEkyY2s1K3NlcFFxZ1pteGJEbExHcU9kZjYvQ1pSSnE5akE0?=
 =?utf-8?B?VXVXYkk4T2daNDB1cGdHZFRvajBKVlkyd2pVbXFIeCtHekhWTnJEQzM2a0I1?=
 =?utf-8?B?R1VBOTUzUEpYTFVuUXVYRVIxWjRSM0dEMUZEdTNuQ0RxelN5OHFKN2d6aTdk?=
 =?utf-8?B?TTRSaTA3ckdHSGhuTTQySFM1Qi9xaGdZZzRnbWU3eCt5VEkvZ0xTbXA3eFQ0?=
 =?utf-8?B?azcyMWVlc1FvTk8wTDIza21HWnF4Wk0rWGUwZzZNeno1NjNvc2RWUmwxZ1ZV?=
 =?utf-8?B?SEdyV0NTbEg1WFNaWmtHMWJzSHRRai9nMDFCVU5SU1lQOGF3cWhsWk9zZmhl?=
 =?utf-8?B?akd6akJRTHFUQlMzYkpDWGZjMEVWNk9xNEN2Nlo2c01vR0dhY3NLbXJFQXpJ?=
 =?utf-8?B?K2FEeVNSdmluajdVY0tsblM4bHBPNkd0QW5Mem5mc2VhdVRVcGRHakZ3K05u?=
 =?utf-8?B?V2oyZ1dlSEtpMEV3bWtmd1J2blRwWnZOeGhJWnROTzJUbjdYN1MrTVY5ay9Q?=
 =?utf-8?B?dCtJb1hGVzV4WURJc1krNVd6eEc2YlEva3JhS215dTVKVXVTeEdvdk04OEMv?=
 =?utf-8?B?OTZpbS9YczNBdmZUWVMvV2JWRUE0V0QzT1dDRWY2M2xyY3RVSGQwVXY5anNR?=
 =?utf-8?Q?c5rJ+fNuDpcLqnjBIjC8rP+UP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: dea80c2c-21f5-423f-face-08dbb4215148
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 06:18:59.4753
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: r0ah18erOJeJSy3mnOv072fFwM3muw69+QNTZoPnAPdPOVf+zsu4I0B5g5krAF8RdTgR0UBn/iZ0iV8Tp7DaBw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8965

On 12.09.2023 18:35, Andrew Cooper wrote:
> On 12/09/2023 5:23 pm, Roger Pau Monne wrote:
>> --- a/xen/arch/x86/msr.c
>> +++ b/xen/arch/x86/msr.c
>> @@ -240,8 +240,12 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
>>      case MSR_K8_HWCR:
>>          if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>>              goto gp_fault;
>> -        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
>> -               ? K8_HWCR_TSC_FREQ_SEL : 0;
>> +        /*
>> +         * OpenBSD 7.3 accesses HWCR unconditionally if the TSC is reported as
>> +         * Invariant.  Do not set TSC_FREQ_SEL as that would trigger OpenBSD to
>> +         * also poke at PSTATE0.
>> +         */
> 
> While this is true, the justification for removing this is because
> TSC_FREQ_SEL is a model specific bit, not an architectural bit in HWCR.
> 
> Also because it's addition without writing into the migration stream was
> bogus irrespective of the specifics of the bit.
> 
> I'm still of the opinion that it's buggy for OpenBSD to be looking at
> model specific bits when virtualised, but given my latest reading of the
> AMD manuals, I think OpenBSD *is* well behaved looking at PSTATE0 if it
> can see TSC_FREQ_SEL.

I'm afraid I'm still at a loss seeing what wording in which PPR makes you
see a connection. If there was a connection, I'd like to ask that we at
least properly consider exposing PSTATE0 (or if necessary all PSTATEn) as
well, with zero value (i.e. in particular with the valid bit clear),
rather than exposing a r/o bit with the wrong value, upsetting Linux.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 06:52:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 06:52:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600976.936844 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgJjz-000153-MB; Wed, 13 Sep 2023 06:52:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600976.936844; Wed, 13 Sep 2023 06:52:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgJjz-00014w-Iw; Wed, 13 Sep 2023 06:52:47 +0000
Received: by outflank-mailman (input) for mailman id 600976;
 Wed, 13 Sep 2023 06:52:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1hMa=E5=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qgJjy-00014q-PX
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 06:52:46 +0000
Received: from mail-ej1-x62d.google.com (mail-ej1-x62d.google.com
 [2a00:1450:4864:20::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 24b992cd-5202-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 08:52:45 +0200 (CEST)
Received: by mail-ej1-x62d.google.com with SMTP id
 a640c23a62f3a-99c136ee106so802851666b.1
 for <xen-devel@lists.xenproject.org>; Tue, 12 Sep 2023 23:52:45 -0700 (PDT)
Received: from [192.168.4.254] (54-240-197-231.amazon.com. [54.240.197.231])
 by smtp.gmail.com with ESMTPSA id
 q24-20020a170906941800b0098921e1b064sm7858241ejx.181.2023.09.12.23.52.43
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 12 Sep 2023 23:52:44 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 24b992cd-5202-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694587965; x=1695192765; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:organization:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:from:to:cc:subject:date:message-id:reply-to;
        bh=YZ/yGI98Y177/By6+Sf86XceM2vTbQeJk7ABiqq79fg=;
        b=Anjy3AV32Bv1WiiRySwsDq/bqAXU94hAP5Doe/cMUYAcNwc1N1NsyJNc6v/9cf7IvU
         v9kHMPjyKy5qVdKMYQm07sDqV4752E4OL+MXxszWo9A2AX0Sn4ICiZHIccqzv4DB4Okl
         giLHsR0qoxfQcp3esl9QgmrQazMI7Zbm1XAy2/K/nsymcDOerFA3PhW6iHbdZ3uUELPF
         yCb6orwKsi4ngtd14vJFwPflsdm8Qo8cArF9bp4r/uNgpLWK8817kklMsCp0QfhXKUA/
         TgIVIrETnUu/5Zh3n0mq5Y5VuXwfRtT0TZjHESA2/fEiD9d9rq703+XGjcdZUG1w/NRE
         8hiQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694587965; x=1695192765;
        h=content-transfer-encoding:in-reply-to:organization:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=YZ/yGI98Y177/By6+Sf86XceM2vTbQeJk7ABiqq79fg=;
        b=iY5+VrBgRyO4Zx+VPswkQ1zuuR/Xsic+FCu9Io0QH0r1foPmbAYi5TV2BHkl2YIL1o
         sO/pNhLpsiXMo9JMkurCPi0PHDF07maQqIbvbqNYNPqQSYZPCeJBhVAjs2lGD0ikskvm
         Hakki5gqxKv6mt+39bZk9nyqE8+/ka+dhDpUoppjQYAzNBm5qhTs3dVYglDVhzRzccNk
         Z2SAQuhZ6YnPPG9iaytNT7WpB0O/qn8CDNUfXWgL50X5SWsUwV7dmdPrnnmP18vaRuRu
         ElKbrnSFAbcxLY3BBMd3Sx/JwwIzUBgKfKBQdgl2Z56ubVeTUtclnFZLUsjV6kCaoksy
         oHhw==
X-Gm-Message-State: AOJu0YwsOIw2P324gLyEBlKriSkq6RwGHI7qoHIIqfHVS0TrGAT/O0nz
	zOpwgN1LXylXufgcbeLGhH0Qc6EKhCU05beB
X-Google-Smtp-Source: AGHT+IFXSIdNrVzpTf2lC7HE20MSJRIyVT8vdGbH2OOt/Z8ElzjNZWZ8w5bUaXLaU228QrY5tP6BHQ==
X-Received: by 2002:a17:906:535d:b0:9a9:e5a7:46ce with SMTP id j29-20020a170906535d00b009a9e5a746cemr1226382ejo.24.1694587964794;
        Tue, 12 Sep 2023 23:52:44 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <ff09aede-a0a5-2e08-0492-1c986d108b04@xen.org>
Date: Wed, 13 Sep 2023 08:52:43 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Reply-To: paul@xen.org
Subject: Re: [XEN PATCH 05/13] xen/ioreq: address violations of MISRA C:2012
 Rule 7.3
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Gianluca Luparini <gianluca.luparini@bugseng.com>
References: <cover.1691053438.git.simone.ballarin@bugseng.com>
 <771362e703548e55d4ccc420fa880585a5748c4f.1691053438.git.simone.ballarin@bugseng.com>
Organization: Xen Project
In-Reply-To: <771362e703548e55d4ccc420fa880585a5748c4f.1691053438.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 03/08/2023 11:22, Simone Ballarin wrote:
> From: Gianluca Luparini <gianluca.luparini@bugseng.com>
> 
> The xen sources contain violations of MISRA C:2012 Rule 7.3 whose headline
> states:
> "The lowercase character 'l' shall not be used in a literal suffix".
> 
> Use the "L" suffix instead of the "l" suffix, to avoid potential ambiguity.
> If the "u" suffix is used near "L", use the "U" suffix instead, for consistency.
> 
> The changes in this patch are mechanical.
> 
> Signed-off-by: Gianluca	Luparini <gianluca.luparini@bugseng.com>
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> ---
>   xen/common/ioreq.c      | 2 +-
>   xen/include/xen/ioreq.h | 2 +-
>   2 files changed, 2 insertions(+), 2 deletions(-)
> 

Acked-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 06:53:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 06:53:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600980.936854 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgJl0-0001aZ-Uu; Wed, 13 Sep 2023 06:53:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600980.936854; Wed, 13 Sep 2023 06:53:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgJl0-0001aS-S9; Wed, 13 Sep 2023 06:53:50 +0000
Received: by outflank-mailman (input) for mailman id 600980;
 Wed, 13 Sep 2023 06:53:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1hMa=E5=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qgJkz-0001aM-GZ
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 06:53:49 +0000
Received: from mail-ej1-x636.google.com (mail-ej1-x636.google.com
 [2a00:1450:4864:20::636])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4a431597-5202-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 08:53:48 +0200 (CEST)
Received: by mail-ej1-x636.google.com with SMTP id
 a640c23a62f3a-9ad8d0be93aso133050266b.0
 for <xen-devel@lists.xenproject.org>; Tue, 12 Sep 2023 23:53:48 -0700 (PDT)
Received: from [192.168.4.254] (54-240-197-239.amazon.com. [54.240.197.239])
 by smtp.gmail.com with ESMTPSA id
 n13-20020a170906b30d00b0099cc36c4681sm7888784ejz.157.2023.09.12.23.53.46
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 12 Sep 2023 23:53:47 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4a431597-5202-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694588028; x=1695192828; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:organization:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:from:to:cc:subject:date:message-id:reply-to;
        bh=BzbVHFGOVCgL7KE/e/0dFUDjnBt1RrZg5wAJI/dSlzc=;
        b=rQ1WJVDbebd8HO5IpDpY7URg4pAHA0TTD7w+uqZEba5UtVo8kiDqhBHLLVQt3RxdYS
         oPPMwTRMclXuG7HHdeuABQ0I5LKw7yhfPxpUQVlT3nJDcNpcfjA0RmR2xIg9+KoX7sbx
         IK2c0R7HPMBQN7Ctb3AU9Ukbb91iyd8liv2Tzzw5QqOWrK/DM+aWB67QnYhadFTACi5/
         PTlNMzm2ttnKyt3S59JglClZO5KWImxkaHDcolBq+iJXnTkj4Nl1BRdJgjLooan/5c+t
         9p53RkWgjXKbK/fR3bpEoOiUyZly2rUbe/E1yUzq5zXBmHqVmvKD55IXzi5VsKMPWrNt
         Q31Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694588028; x=1695192828;
        h=content-transfer-encoding:in-reply-to:organization:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=BzbVHFGOVCgL7KE/e/0dFUDjnBt1RrZg5wAJI/dSlzc=;
        b=J6mFVhTVc1fkPV87OLnBD/Hx6nfP/klVuCqPRAxws5OKDi8KDUamzSTWMWnwarjQrl
         5MZG8JxiZsb27eyVOq9OXoxHKTUccwuh15hwvHju6UPNeCL0+gs9+433tZ3rOuz0J97T
         s0yDxk0cOzlgrvwOhotc6lqKOxHe3pXR9TmcOskUgQ2j35KR60vSelLmCXV8R96yuu0b
         LbdxZKzO2W2oXjjEw1bOBsriSlwf+8Ej01Gnxehx2Z/EFjUiUuNENCNK/HOYjLew74W1
         xQjSa1KlHLIoozeMsl7PSkJ7f2MWRTQmebQzLVFEwnwsL6xuJ6ZV0wv0bZi1DyYkmSiX
         nudg==
X-Gm-Message-State: AOJu0YzLyODUQD8WuhluCJUapqIQDV5JK5AIRrC3u046kzZY5yTeRBOA
	SxnFMK+NQ/YvQf8Inkn4xxtUCyKv+46g5jn8
X-Google-Smtp-Source: AGHT+IHb8WOQojNVt2I87dLU+c2aGqwX2Ek5eQxdvutw/T9/8qdHjhUliydIH+tleMidTILMI8Tc+g==
X-Received: by 2002:a17:907:3e9e:b0:9a5:7d34:e68a with SMTP id hs30-20020a1709073e9e00b009a57d34e68amr6507289ejc.28.1694588027842;
        Tue, 12 Sep 2023 23:53:47 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <66fad344-5781-1a33-9399-a6fc97bbfb29@xen.org>
Date: Wed, 13 Sep 2023 08:53:46 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Reply-To: paul@xen.org
Subject: Re: [XEN PATCH 08/13] xen/hvm: address violations of MISRA C:2012
 Rule 7.3
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Gianluca Luparini
 <gianluca.luparini@bugseng.com>, Jan Beulich <jbeulich@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <cover.1691053438.git.simone.ballarin@bugseng.com>
 <d1be6a0bad7e5cd6277a7b258a1fa70e58a68140.1691053438.git.simone.ballarin@bugseng.com>
Organization: Xen Project
In-Reply-To: <d1be6a0bad7e5cd6277a7b258a1fa70e58a68140.1691053438.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 03/08/2023 11:22, Simone Ballarin wrote:
> From: Gianluca Luparini <gianluca.luparini@bugseng.com>
> 
> The xen sources contain violations of MISRA C:2012 Rule 7.3 whose headline
> states:
> "The lowercase character 'l' shall not be used in a literal suffix".
> 
> Use the "L" suffix instead of the "l" suffix, to avoid potential ambiguity.
> If the "u" suffix is used near "L", use the "U" suffix instead, for consistency.
> 
> The changes in this patch are mechanical.
> 
> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> ---
>   xen/arch/x86/hvm/emulate.c | 2 +-
>   xen/arch/x86/hvm/io.c      | 2 +-
>   2 files changed, 2 insertions(+), 2 deletions(-)
> 

Acked-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 07:28:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 07:28:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600988.936863 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKHy-0007JF-It; Wed, 13 Sep 2023 07:27:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600988.936863; Wed, 13 Sep 2023 07:27:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKHy-0007J8-Ft; Wed, 13 Sep 2023 07:27:54 +0000
Received: by outflank-mailman (input) for mailman id 600988;
 Wed, 13 Sep 2023 07:27:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PyFF=E5=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qgKHw-0007J1-JZ
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 07:27:52 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on2062d.outbound.protection.outlook.com
 [2a01:111:f400:7eab::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0b4d5047-5207-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 09:27:50 +0200 (CEST)
Received: from SN7PR04CA0036.namprd04.prod.outlook.com (2603:10b6:806:120::11)
 by BL3PR12MB9052.namprd12.prod.outlook.com (2603:10b6:208:3bb::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Wed, 13 Sep
 2023 07:27:45 +0000
Received: from SA2PEPF000015CD.namprd03.prod.outlook.com
 (2603:10b6:806:120:cafe::61) by SN7PR04CA0036.outlook.office365.com
 (2603:10b6:806:120::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19 via Frontend
 Transport; Wed, 13 Sep 2023 07:27:45 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 SA2PEPF000015CD.mail.protection.outlook.com (10.167.241.203) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Wed, 13 Sep 2023 07:27:44 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 02:27:43 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 00:27:35 -0700
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 13 Sep 2023 02:27:34 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0b4d5047-5207-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jIX6iKc6Qj4kzpziFzcsE8RDaOAmv7ZKAAb6pgaTtCLSzP/LyZvs+F3eygFST6kIPVnvb0QqdH1qVn35zvYgrVzb9G1CwjzCF3f9rRRq9ObwOzLZVYw0nsxYvCAO6eZ4uyZtSsN9Ky38zq+K/ioQJwqSIzSY9m+mmSPezDzccwzzZ7BBVNdkLkwFrkWPKE62Ok1Oje6k5rFysu363TYh+pKC30Lr5bSCXj5MCJMeQ3Odq9NoZaWZGHk+BYHdpCMJYd+kVG6KmObZ1LrlJupLwxasw+B5lCONc9L/Zt/KZggOuy/U7jydaHypMGLjg1g4JJXFnC4g9n9LRyHFoj4JGw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=u5uJOSoVS/xon+Tz/yEuR9AFjMT+k3rKxF/c2hyQWPo=;
 b=aXZ9DOYN1JOJX98FzCIdErhrf17H16/xbu64/Te1VTipFOTLLRcM1HOx2zanQUfMOTlGevMt1zEEvyGvNmUjbXYTd5qVa+MQWu0PEjdSd77zVarYsQLFyrsW3Xw9Kou3plO5BM6KwrTu01nKBviMSAfWYJ9JmWS0nJrJBh/gf+j0XrD+tD7a8Ug5O+4+BrmZd3SRFa7aIXgfzgWgDFM4GPKNfJqd6heyYTtnBSb3La35SGJoAhQlR9OGCAjzqw3lGY2eNqIB4bv4FTKudLQ+JS4kd/yrCRTACsF1B23evoxXyCRm40FmImagJLQkUtvVEzKH973pPU2B8Q5A3YC/5w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=u5uJOSoVS/xon+Tz/yEuR9AFjMT+k3rKxF/c2hyQWPo=;
 b=aoJMXDQke5a501V7lQnHf7zLzaKxjadaFis0WN+7u5Fj9LlMIwcVx8K3CuIhcBrpItuawC3Dw/GpTYXrsuV224rGdKdkvVIneX+V12m7im3Rlz8vxSacYJVbDn2FgIQfdwnaIt24tofxVe9QUhgYXitnf2utY+bWievANeB7X5k=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <98187155-3263-6197-ddb3-07cf9b883264@amd.com>
Date: Wed, 13 Sep 2023 09:27:33 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [ImageBuilder PATCH v2] uboot-script-gen: use size from arm64
 Image header
To: Stewart Hildebrand <stewart.hildebrand@amd.com>,
	<xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>
References: <20230912204345.7271-1-stewart.hildebrand@amd.com>
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20230912204345.7271-1-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SA2PEPF000015CD:EE_|BL3PR12MB9052:EE_
X-MS-Office365-Filtering-Correlation-Id: 18b2ac93-126d-45bf-e4f9-08dbb42aec53
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PtKeke3gi/C0r/Sq6JHGcfJ6r5iMeniv1oBnVpO4Ug2ISfTBhWpp194ushlPN21+vefyvddJac91Ee1NAJEW2DI9VsCviLeW9l2wkF/FX7aQ/XBRZQs27Uj3WItgxQCF0eZymqTUDOKYjZe3jma2itf7KaSmQbI7HPI0oCSx87hBj3fpoe8i4qQsy3Gx8t1qmEQy9P/Kstvx6VwXPHdtUodo++Ox/xYgMBTFFQguUT/pIrv6r6ygOI9cGPZX5Cj+mNls7tnBoUDpy62sRwvaG4yZMOdikuPhQA/raFsXODh3o7d5z6q63wKDkWmO86umYbUqmPZUKzfiFCfE5Nv+vpfhPj/fBKWAwNVCWa/xoTuLqgxAyTXG1vLp4bOaf6KtKZwMSc2QICrB3ikW9roScKN69o/aecgAhL7H28pwkO4NSFtc2vrdmYXToG4UaftYQB8aiS+PYETyiu8J9Yhp7cixOahSQXm0p7G9SEMc4mszLmCkSd+bRuLVrp0A0drM3TOSxzGLt1DLD+vekF3r+y2iu6rowUocJimq8lVlkb+HRKyq+fB+A8RIItc04fRm8F2Yjm5Jfcsv/7FUL9aY7T6TWfLo0tN0HxzGTYoLYekEWcY3HeRO8CC6qx3lr5w9fHpPZ0j4TRYPx0wk1tB/8T8unFosoEoOVYmfflvRrwcw+1PGPOcfflv2CLHtgYCJJaT5yYPx3Gm0hiATiwcrnobJ1MLvAZ9e86Mj31M6WExI4Zf1Nsp08dnyDx3wzESViVCYRklWV8unTXRO3o4FNQeVNETqnN5KN7fY8+B3rfE=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(346002)(396003)(376002)(39860400002)(82310400011)(1800799009)(186009)(451199024)(40470700004)(36840700001)(46966006)(53546011)(83380400001)(478600001)(26005)(2906002)(426003)(336012)(16576012)(70206006)(44832011)(70586007)(4326008)(110136005)(41300700001)(2616005)(8936002)(8676002)(316002)(5660300002)(40460700003)(40480700001)(47076005)(36860700001)(86362001)(36756003)(81166007)(82740400003)(356005)(31696002)(31686004)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 07:27:44.8979
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 18b2ac93-126d-45bf-e4f9-08dbb42aec53
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SA2PEPF000015CD.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR12MB9052

Hi Stewart,

On 12/09/2023 22:43, Stewart Hildebrand wrote:
> There is a corner case where the filesizes of the xen and Linux kernel images
> are not sufficient. These binaries likely contain NOLOAD sections (e.g. bss),
> which are not accounted in the filesize.
> 
> Check for the presence of an arm64 kernel image header, and get the effective
> image size from the header. Use the effective image size for calculating the
> next load address and for populating the size in the /chosen/dom*/reg property.
> 
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
The patch works, thanks!
Reviewed-by: Michal Orzel <michal.orzel@amd.com>

with one little suggestion...

> ---
> v1->v2:
> * add in-code comments
> * use variables more
> ---
>  scripts/uboot-script-gen | 17 ++++++++++++++++-
>  1 file changed, 16 insertions(+), 1 deletion(-)
> 
> diff --git a/scripts/uboot-script-gen b/scripts/uboot-script-gen
> index 9656a458ac00..f0972d983017 100755
> --- a/scripts/uboot-script-gen
> +++ b/scripts/uboot-script-gen
> @@ -2,7 +2,7 @@
>  
>  offset=$((2*1024*1024))
>  filesize=0
> -prog_req=(mkimage file fdtput mktemp awk)
> +prog_req=(mkimage file fdtput mktemp awk od)
>  
>  function cleanup_and_return_err()
>  {
> @@ -435,6 +435,21 @@ function add_size()
>  {
>      local filename=$1
>      local size=`stat -L --printf="%s" $filename`
> +    # Read arm64 header magic (https://www.kernel.org/doc/Documentation/arm64/booting.txt)
> +    local arm64_header_magic=$(od -j 56 -N 4 -t x4 ${filename} | head -n 1 | awk -F' ' '{ print $2 }')
can we simplify:
head -n 1 | awk -F' ' '{ print $2 }'
by just doing:
awk 'NR==1 {print $2}'

~Michal


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 07:29:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 07:29:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600994.936874 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKJk-0007qf-UF; Wed, 13 Sep 2023 07:29:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600994.936874; Wed, 13 Sep 2023 07:29:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKJk-0007qY-Qs; Wed, 13 Sep 2023 07:29:44 +0000
Received: by outflank-mailman (input) for mailman id 600994;
 Wed, 13 Sep 2023 07:29:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgKJi-0007qO-Rj
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 07:29:43 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on060b.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::60b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4d892a72-5207-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 09:29:41 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB9810.eurprd04.prod.outlook.com (2603:10a6:800:1df::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Wed, 13 Sep
 2023 07:29:37 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 07:29:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4d892a72-5207-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=R6CN046504YACvM/p+7epTiLfx88P1xkG6g16xY0pVKgAUp0MSWdZD8aoHc71ZSIcwxfB1nrVyVdj9i2xxhTqr2NximQWJ7lqMZOFhZnrUhpFoh2HBOIyouYUU0BdmqhvxpwjQXQ56ePTRMKbBOGEkt9kMFCd72dOmnSIGQTCLLDFEsq9VfdWbHKYt02w4zZ/uBdzyFuJfzV12mIkSgVZXibwfYpG65X1UpgdrEdE6CwlqL0ThEoKQjiBE13Q1bYAfT03AOwNm+lbxE+8cibPSUnBRbSXPV6f5x8qm7T9Gq2yt7VceStCnAntvVP/MuRRetUd9++kd7lQVj48SqZkw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HNCw7ohUZz3U+URZOXzVYI6KdH4LIvexbVxm71GAocw=;
 b=Rm3V5NgtJUDeXltk7mBvHesJM/LHMSiLFgTLtM+MSqC/QUNFCYOGHc1hClqSjsO7vvxz10YYcmBvG5C9CCznstMOct3nprEncjNO3L5Y/585p0SrpdAa+q+sm3oL3Mqsb37jC5IBdc8U+5OP7/R2JoDcWw+8vyxPSGAGuXFZwIoxrgn3FYWBbQCHRutkkJ+8L2q35zDhN7613n+fWCEm6T+IIt/0Znfyyp2mXjVoC9XOxO1uchxk35ewgWfKu3I4ueiHAhGr9xONefeAlzF6lK2qtoMJvJcxT59t6J+2f4y+WxZA1OqQSB+drxwHvT2CyysfrfyiNgu8hnalbWhfFw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HNCw7ohUZz3U+URZOXzVYI6KdH4LIvexbVxm71GAocw=;
 b=Sunv4OZVfeJuwwLUmwEw6xfcbgOXyNR2ioBMN9aDHYNeHKCZFg4jXH27oTCqR8QnBSHwC0D3Aty8WykUy84GtI7LDzbQh5j6luBfHE2gdXDrASiFAx6ulllhRpiWrg9CGW8SmcCFDtEv7hIsBwvO7f5KIQfvyARP0WfJGup1GkkfFxMaXONiluLoyfKbIekEi9SHLwa10sAW3XK6ZJhQSPt3cI4ZwJyVo++FKYVW3Oiuo8Ln+ZdsPc55p6hPQ961huQE6m1DtSnmgGxkmKKn8ZlvPjg7/Ic7xmXZ747/n20ZX9FI6tiVHkozHnA6crr6YqvzX9knUELSkui2Dsn/UA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <60d5d841-29da-519b-057c-18c5796c8f1e@suse.com>
Date: Wed, 13 Sep 2023 09:29:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH v5 2/5] xen/ppc: Implement bitops.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694543103.git.sanastasio@raptorengineering.com>
 <06892692342540b6dc1af4d530fe3c2c25cf4a2e.1694543103.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <06892692342540b6dc1af4d530fe3c2c25cf4a2e.1694543103.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0045.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:92::17) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB9810:EE_
X-MS-Office365-Filtering-Correlation-Id: acb64a7a-dc74-450c-492f-08dbb42b2f43
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	cjbw/I5hVH5/Y0+CIvZqTod5fllEKva1EgEEx1rd6xcG6d3rQ/3b9qubhJu60gX8mwr+hbLkQy26UvKBER3bZC1u1gaOklhcNcD/iIrnU8KGJR2c4n/WjA9tCiMG3TV8BEFNFJmxYsd0sM6DOSs/Z4ux3dDrsjJVfp4L3t6rpRBylO/NpXPkMtRP/7YKySNxJmn9O7Aiyd2vtkOFZbLCWCZXwVKl/4w/ReG/fVmNLzutuA2qjZBD7o8iJlAGoPc22oGt2eJ4fXnRBAsXzzZwmh05DsYIRK1wUjh3XJkDS5to1LasVG4KuDsT4gz8fWslbFpZ27j4ScrYbqrkp/Bff0DJeeXiHapesiZEXYIWwppEvk5Glw8WK1xakDG6tYcjM1gwHLG5OZqf1oKIC0VLDR9V0C6Pz75NYZpaRMA8Wm/E7HmmJRgCCUQdo5c+i6LitTxFmZPHCuCpeGoBmxr+tSH1FpWi2xkVhcs+Iz0h96PY+PYwq2GW0FRX/bchHJyEB22kWaTeIND35yFEGmF2DwFfAaDXdGhGVsSsTB2NsmlC5zrY51ARS758ER+R/bknWSJui87TUcx1KPPYJQNyqmhBfFzoRQ9+La8tqdQ6lLn+ouxB5odq8lO6/TbPa/WVIYptaIeTCtakNBuRcZZlHA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(366004)(39860400002)(376002)(346002)(186009)(451199024)(1800799009)(6916009)(316002)(66556008)(41300700001)(66476007)(66946007)(478600001)(38100700002)(86362001)(31696002)(36756003)(2906002)(5660300002)(8936002)(4326008)(8676002)(2616005)(31686004)(26005)(83380400001)(6486002)(53546011)(6506007)(6512007)(6666004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RTFYZVYxSW5NR2hFOGc0VVNkVFlhUjREU0cxT2FmRXVHSTJNM1lqenBYSk1M?=
 =?utf-8?B?RXJsWkZNRitVeWdNbEE2dXRBTG9ocGdvVVdDTm10NE51UFBFTGVQZTZwOCtF?=
 =?utf-8?B?c0w3ZG1QNVJINVFNdUZFOGxONnh2a25rYTRRZEtzR09qaXZlZjRsbVBjTkM4?=
 =?utf-8?B?cTZFK1BSV1R6NEh5RDJNZmQwMmsxTU45S3VpbWpXeW4xaWM4M1EvNE82N00x?=
 =?utf-8?B?QmpKeXA2TEZMb2JOcGtTQ25vWVVsbjBSc20xVzAxNHV6Q0ZVSVRIendwZHFz?=
 =?utf-8?B?dlJBbnErNmZiUXJSNDNuSUoyRkM3Z2w5SmUzblUzVzRLeWZBZGZCY2lTNCtZ?=
 =?utf-8?B?ekJlQ1Q2eHpRU0ZGd3ROTUZmakhJTmFvRHIraGtpOUc1aTIvVG9KYXVrSzNr?=
 =?utf-8?B?clRPR0VQdlcyWjRjcXJTMDliMlpyZmZIMXpKR0Y0djJzOEFDOGM1WHVSRUNv?=
 =?utf-8?B?bmIxekg4U1lzVCtJOXFwOEpCY20rRmJpMmo4MlBHWit0MjQxR2IyUW1xTnN5?=
 =?utf-8?B?blRJcE96Q1VQZXBvRWlGZmhlWk5zcmdpY3ZqeGliQ0lMLzlhR1pPd2tTZHV2?=
 =?utf-8?B?dXd6cGsyeEIxaFpTMithcUFCUmZ4c1JsUERhQlJyWnBVNDlIR2syNk1JQ2pl?=
 =?utf-8?B?MFU5VkdkWjYwRVVXaGF4ZnJsTWZybHBmcU9WRmdCUHhBTXZlOXUzYVJkY2ha?=
 =?utf-8?B?VHcxYWU2bW1JNytRWTc1Rjl3UU1mdXdFYmZJVTZVaXRnZ2NvQW8zc01ySlRt?=
 =?utf-8?B?ZlcvdUIvaU1ad2l3UGt5eW94K1YzSmk4azEyTi90MzdZL3FBbHBNRDZPSmRz?=
 =?utf-8?B?cXpmc3lZRm10ZWdFK3gvdm9DaEt6VGlWS0VHRVJRSmF2b3NraUIxOW9pOXY2?=
 =?utf-8?B?UDgzejhhcDl2OHVPNHpNUkN5WFdUTE5FbkcwQnZBTG1ZY2pPd3N2Z3FEZWVz?=
 =?utf-8?B?cWVKVldIbXdYZHhaa3NBd3hXRUZRcDZYUlpsWVE1amF5R0w3dmdFRXJmNktL?=
 =?utf-8?B?TWV2S3hSU0gwYTg3QkdvU1pOK3Ntd3VBd0pBL2xSbzAxVHJDU3puQ2tFcFVL?=
 =?utf-8?B?d2p4MXhJQTJvR1lyREJSTENsM0o3K2ZWMG1XR2NDSVVuakFhcTZtaXp4eGw0?=
 =?utf-8?B?SEdjWkNJcHVvNXovWHBGcDRQNTdGMDJGUEN3bjZQVmEySlhLd1ZRZ0xPWTBX?=
 =?utf-8?B?dU94YWsrcTVaMGl4V3l3Wm5XOVdLZm92VUtkMmM4M1Z1NUJ5Qlh5MTdPQzRE?=
 =?utf-8?B?UWtKMEJMaFlnT1ZsK1JLd1l6VU5vdTNrL0hWZGF4NlAxbisvVDNmcWlKM0hP?=
 =?utf-8?B?ZkkzME5wSnFYb3FmakZTdUFBMHhsQ1NkcUdHL05vRlhuYlJwb1N5dWNGcGpI?=
 =?utf-8?B?Tmg4M1VLVmwyRFduTFpwcElja1NiMDBybVpJa2xZNDYzYXVUTjZYYmtpenpF?=
 =?utf-8?B?c1daMi9UaGdqRjdTRGx1SnlVOE1tNjhtZkFWdWw4RVdJV3haWmxnS0NwQUFi?=
 =?utf-8?B?NzAwcS9IMWdxMjBuOFpRajUzUHhXV2RudnVzNVFMNk5DYWlhR3laVVc2NkVO?=
 =?utf-8?B?L0xZQ04rc0FReWpwQWRxRUQ2SnovUnF0VnQwOGg3d2grUm5mNjZ4Zi9JRW5S?=
 =?utf-8?B?Zk5ENGlCTGoxSDVQT1dQeTlkM004RFJkNlQrUlA1bEs1Y24vNy96Q1VMYU9I?=
 =?utf-8?B?aEZ3QU4xdWNFbHplMFowcDNGekNSa2g3STNDckZYUVNxVm9qZ2JoVTR1Z25x?=
 =?utf-8?B?dkVVNmV6VW1MWXpwUS9kQlJZYnViWnVpenhnbVN2WkhZcy9Yc3NmeGM0ZUg2?=
 =?utf-8?B?SWY2ZzFkd1p4akZFQ1hxOHBla09VZi9oa3c5VG04NERaS25hRXZPWWpPWG0y?=
 =?utf-8?B?NTVNcXhkWlNwc0JRUmg5SXB3ZmRrNllmdlFib2xtZlQ2NndhQ2JMZFU5NGNC?=
 =?utf-8?B?THJDT0NLekp6bE45bHhyN2FWcGpzY0x4UjI0OVJGcGtKV05FMzYzQmdocWsy?=
 =?utf-8?B?Y3JXRThSUGtBbnFHUTVYMk1PeW9Ia3ZqL0RwUndad2hsT2NveG9ZUnpubGVL?=
 =?utf-8?B?MzJ5TVJLNmEvc1lmVkM3YTlmcm1VMGhlTzJQNlZ5M3lTNTZ6Vys0NlJyL0lk?=
 =?utf-8?Q?dYPsG+qJbWFbfw+6OmzgukdZI?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: acb64a7a-dc74-450c-492f-08dbb42b2f43
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 07:29:37.4132
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: XV/UpLpFy24wIv1TbE9wYdYqwmRtL4QL4iUjGKs2c4IT+n5kZQ8iX9/1o3NbrWTWxVrXaMXBk8R1aw5He/fPOg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB9810

On 12.09.2023 20:35, Shawn Anastasio wrote:
> Implement bitops.h, based on Linux's implementation as of commit
> 5321d1b1afb9a17302c6cec79f0cbf823eb0d3fc. Though it is based off of
> Linux's implementation, this code diverges significantly in a number of
> ways:
>   - Bitmap entries changed to 32-bit words to match X86 and Arm on Xen
>   - PPC32-specific code paths dropped
>   - Formatting completely re-done to more closely line up with Xen.
>     Including 4 space indentation.
>   - Use GCC's __builtin_popcount* for hweight* implementation
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> Acked-by: Jan Beulich <jbeulich@suse.com>
> ---
> v5:
>   - Switch lingering ulong bitop parameters/return values to uint.
> 
> v4:
>   - Mention __builtin_popcount impelmentation of hweight* in message
>   - Change type of BITOP_MASK expression from unsigned long to unsigned
>     int
>   - Fix remaining underscore-prefixed macro params/vars
>   - Fix line wrapping in test_and_clear_bit{,s}
>   - Change type of test_and_clear_bits' pointer parameter from void *
>     to unsigned int *. This was already done for other functions but
>     missed here.
>   - De-macroize test_and_set_bits.
>   - Fix formatting of ffs{,l} macro's unary operators
>   - Drop extra blank in ffz() macro definition
> 
> v3:
>   - Fix style of inline asm blocks.
>   - Fix underscore-prefixed macro parameters/variables
>   - Use __builtin_popcount for hweight* implementation
>   - Update C functions to use proper Xen coding style
> 
> v2:
>   - Clarify changes from Linux implementation in commit message
>   - Use PPC_ATOMIC_{ENTRY,EXIT}_BARRIER macros from <asm/memory.h> instead
>     of hardcoded "sync" instructions in inline assembly blocks.
>   - Fix macro line-continuing backslash spacing
>   - Fix hard-tab usage in find_*_bit C functions.
> 
>  xen/arch/ppc/include/asm/bitops.h | 332 +++++++++++++++++++++++++++++-
>  1 file changed, 329 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/arch/ppc/include/asm/bitops.h b/xen/arch/ppc/include/asm/bitops.h
> index 548e97b414..0f75ff3f9d 100644
> --- a/xen/arch/ppc/include/asm/bitops.h
> +++ b/xen/arch/ppc/include/asm/bitops.h
> @@ -1,9 +1,335 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +/*
> + * Adapted from Linux's arch/powerpc/include/asm/bitops.h.
> + *
> + * Merged version by David Gibson <david@gibson.dropbear.id.au>.
> + * Based on ppc64 versions by: Dave Engebretsen, Todd Inglett, Don
> + * Reed, Pat McCarthy, Peter Bergner, Anton Blanchard.  They
> + * originally took it from the ppc32 code.
> + */
>  #ifndef _ASM_PPC_BITOPS_H
>  #define _ASM_PPC_BITOPS_H
> 
> +#include <asm/memory.h>
> +
> +#define __set_bit(n, p)         set_bit(n, p)
> +#define __clear_bit(n, p)       clear_bit(n, p)
> +
> +#define BITOP_BITS_PER_WORD     32
> +#define BITOP_MASK(nr)          (1U << ((nr) % BITOP_BITS_PER_WORD))
> +#define BITOP_WORD(nr)          ((nr) / BITOP_BITS_PER_WORD)
> +#define BITS_PER_BYTE           8
> +
>  /* PPC bit number conversion */
> -#define PPC_BITLSHIFT(be)	(BITS_PER_LONG - 1 - (be))
> -#define PPC_BIT(bit)		(1UL << PPC_BITLSHIFT(bit))
> -#define PPC_BITMASK(bs, be)	((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
> +#define PPC_BITLSHIFT(be)    (BITS_PER_LONG - 1 - (be))
> +#define PPC_BIT(bit)         (1UL << PPC_BITLSHIFT(bit))
> +#define PPC_BITMASK(bs, be)  ((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
> +
> +/* Macro for generating the ***_bits() functions */
> +#define DEFINE_BITOP(fn, op, prefix)                                           \
> +static inline void fn(unsigned int mask,                                      \
> +                      volatile unsigned int *p_)                               \
> +{                                                                              \
> +    unsigned int old;                                                         \
> +    unsigned int *p = (unsigned int *)p_;                                      \

What use is this, when ...

> +    asm volatile ( prefix                                                      \
> +                   "1: lwarx %0,0,%3,0\n"                                      \
> +                   #op "%I2 %0,%0,%2\n"                                        \
> +                   "stwcx. %0,0,%3\n"                                          \
> +                   "bne- 1b\n"                                                 \
> +                   : "=&r" (old), "+m" (*p)                                    \

... the "+m" operand isn't used and ...

> +                   : "rK" (mask), "r" (p)                                      \
> +                   : "cc", "memory" );                                         \

... there's a memory clobber anyway?

Also (nit) note that the long -> int change has caused some of the
backslashes to no longer align.

> +}
> +
> +DEFINE_BITOP(set_bits, or, "")
> +DEFINE_BITOP(change_bits, xor, "")

Are there further plans to add uses of DEFINE_BITOP() with the last argument
not an empty string? If not, how about simplifying things by dropping the
macro parameter?

> +#define DEFINE_CLROP(fn, prefix)                                               \
> +static inline void fn(unsigned int mask, volatile unsigned int *p_)           \
> +{                                                                              \
> +    unsigned int old;                                                         \
> +    unsigned int *p = (unsigned int *)p_;                                      \
> +    asm volatile ( prefix                                                      \
> +                   "1: lwarx %0,0,%3,0\n"                                      \
> +                   "andc %0,%0,%2\n"                                           \
> +                   "stwcx. %0,0,%3\n"                                          \
> +                   "bne- 1b\n"                                                 \
> +                   : "=&r" (old), "+m" (*p)                                    \
> +                   : "r" (mask), "r" (p)                                       \
> +                   : "cc", "memory" );                                         \
> +}
> +
> +DEFINE_CLROP(clear_bits, "")

Same question here.

> +static inline void set_bit(int nr, volatile void *addr)
> +{
> +    set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
> +}
> +static inline void clear_bit(int nr, volatile void *addr)
> +{
> +    clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
> +}
> +
> +/**
> + * test_bit - Determine whether a bit is set
> + * @nr: bit number to test
> + * @addr: Address to start counting from
> + */
> +static inline int test_bit(int nr, const volatile void *addr)
> +{
> +    const volatile unsigned int *p = addr;
> +    return 1 & (p[BITOP_WORD(nr)] >> (nr & (BITOP_BITS_PER_WORD - 1)));
> +}
> +
> +static inline unsigned int test_and_clear_bits(
> +    unsigned int mask,
> +    volatile unsigned int *p)
> +{
> +    unsigned int old, t;
> +
> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
> +                   "1: lwarx %0,0,%3,0\n"
> +                   "andc %1,%0,%2\n"
> +                   "stwcx. %1,0,%3\n"
> +                   "bne- 1b\n"
> +                   PPC_ATOMIC_EXIT_BARRIER
> +                   : "=&r" (old), "=&r" (t)
> +                   : "r" (mask), "r" (p)
> +                   : "cc", "memory" );
> +
> +    return (old & mask);
> +}
> +
> +static inline int test_and_clear_bit(unsigned int nr,
> +                                     volatile void *addr)
> +{
> +    return test_and_clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr +
> +                               BITOP_WORD(nr)) != 0;

Didn't you indicate you'd adjust the odd wrapping?

> +}
> +
> +static inline unsigned int test_and_set_bits(
> +    unsigned int mask,
> +    volatile unsigned int *p)
> +{
> +    unsigned int old, t;
> +
> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
> +                   "1: lwarx %0,0,%3,0\n"
> +                   "or%I2 %1,%0,%2\n"
> +                   "stwcx. %1,0,%3\n"
> +                   "bne- 1b\n"
> +                   PPC_ATOMIC_EXIT_BARRIER
> +                   : "=&r" (old), "=&r" (t)
> +                   : "rK" (mask), "r" (p)
> +                   : "cc", "memory" );
> +
> +    return (old & mask);
> +}
> +
> +static inline int test_and_set_bit(unsigned int nr, volatile void *addr)
> +{
> +    return test_and_set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr +
> +                                             BITOP_WORD(nr)) != 0;

Same here then.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 07:32:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 07:32:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601001.936883 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKM2-0000sW-AW; Wed, 13 Sep 2023 07:32:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601001.936883; Wed, 13 Sep 2023 07:32:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKM2-0000sP-7s; Wed, 13 Sep 2023 07:32:06 +0000
Received: by outflank-mailman (input) for mailman id 601001;
 Wed, 13 Sep 2023 07:32:05 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgKM1-0000sJ-01
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 07:32:05 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2061a.outbound.protection.outlook.com
 [2a01:111:f400:7d00::61a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a1ce4891-5207-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 09:32:03 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8756.eurprd04.prod.outlook.com (2603:10a6:20b:42f::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 07:32:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 07:32:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a1ce4891-5207-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ai58XmAK60Y5crv7Ldek21LSTLBC8ox+o8jfZ2UVCYs3EwpUJJ2utQpdnEi2iamDOCBtt6dpZAiR0zqcLJg0xyKL+hxJlGCWBUHo7r6j7OyeT8613LplL+kLtjFH5ln1UvKpiX6E9kEmDPmb38xlOokFyzmep2xYayWbAUs6ny8L0OwBHvnxfPKOQwDaD0T7vhqR3csunTnrBKnOWBz6MT9+7DRSNrKQWD2Uj26yYnlXI5erl3o4iOoLQZskusQUyhz1cs541XUJhC/ZHLW8JSTmsc8rHxHB5kMidMNXS0GJuMtip08dTkBoJDr2BXZ4L3vzSIHlj4PHP3I5TEesUA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/tiHzTrYqqG3aaqu9LsDUaxhtnU6xcOEZaIY6SzhcLI=;
 b=FhPMdOY4X1s6Bnxs3Fck3sBfWlHwiT7VtpXs0NqFSFgDTuR/9+MRFsc61iUp+flPX5G1afSUGHx5/m8aTqO7HXmS5xM5do+7KPd9QqJ0vCJvkAG4MRfH61gOEBshD2WMpCwWOdpXGsDYoFomZ6tjAEzl57hScA2zg0wX5mIdlR7IfVCeMS/thKdc9pAYq2XApsjn3t/bfLYvcd3YKZXnvCsxEhQ8dlhqXpujWHRoNABcMSIYJrBZDoEFvzfTVIqDGCLF7JEPtjnTk2UNvcBY7RKluNboi5r+ft2v77H2Ya3MdEAO/jCfmaFo7KIFZgmiojWg5/WfZc+nA5lql0z6MA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/tiHzTrYqqG3aaqu9LsDUaxhtnU6xcOEZaIY6SzhcLI=;
 b=Qy/YmyjNbU3Zbw5NeNJDb972AHKole3yVHqN7uoAJFCQtBTm8CJir1lyL8SdhSdGQxPSDqjamv4jsBk1fZtFB43D+3hAXUwWfE7VNoMG7EETRz/u97dTYwAwfF8lBdMbDye3YrKJjzW5dYeagLUwIEvcONZaoH1mk5v3kB07stJgVh3t8mK3KG7kT8RaCVxCCFki8+TYcR5iWYqhELhvILpIqZdjh7XG49csZYNGUHtoXR+0XeZlmTPDIcnsHu8vls8vHt3p7cqkThQpH5KFUrScyxRuQ67SwXuP3rwzCfFvFE0CX31t4AyohdsFayqkMoC72NpgBQv84Q2Yb6b7GQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a17ba988-2850-fced-d225-97e1d11f6576@suse.com>
Date: Wed, 13 Sep 2023 09:31:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Content-Language: en-US
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH] timer: fix NR_CPUS=1 build with gcc13
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FRYP281CA0004.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::14)
 To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8756:EE_
X-MS-Office365-Filtering-Correlation-Id: 19b146e7-f195-4b6d-55c2-08dbb42b8468
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0umaN6X0wUYLlXTbF3J0l/HaCUKRzcC4NOvHa0/XcWHYHZJOlrzg7vZSA2yRILDUtNFHkXzjRXV8pqDLKVnBAHhRe08am4wySNA3CX16RaZJft8+ybgJFZBZvpTyh9O7tpPunz1dG2E1SF5QHDfnVa9n0k85IXzWLfNPEK/PTUBlOrxR0epAzWJuAxaGBD+dyCqcd232jX2X7zUCfJF9B3lBRoQLtGHjXISIpSbZpS74YeA/l75LFfqeMk/SGXfl6bXJRhUkQXSWq5JbjSzSL+tgvn7LsUd+46/ERIYzp78M5UWvJBAV9DmSRIfw/87NZRK8bCsveK92GkpSwewu2IIlW30cHp9/OufH30RRuXQZMQo+gI3rS3YR7p2vmqVzga7hyTVROjKFYeYM5CbRnYBJdlx94yzVCFjk59H2fTcN7+6vfqWZ0Tk7zI50bwGvZWe6m0DapNSKpSbbimasaU4gEyZwtaRCZs3vswP28gGCbvRPND1b1H56zcnsSDxUWXJhFmH5OT7GP2wP5y4yHZG57I+HawFMUeDPga75MTFTi0Q/f/cERyooKusyYEoiNJi9T9x/ieWfQhH3UwOFQTqvf4LFiL2Jby7YCaVrY6sKssBghqCf8Ed6VzbeRIxKKUMgX33E7GCKhGLWdvcBZQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(376002)(136003)(396003)(39860400002)(451199024)(1800799009)(186009)(31686004)(6506007)(6486002)(6666004)(478600001)(38100700002)(2906002)(4744005)(83380400001)(6512007)(2616005)(26005)(36756003)(86362001)(31696002)(66476007)(54906003)(66556008)(66946007)(316002)(6916009)(41300700001)(8676002)(4326008)(8936002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NlU1VUxMa3laUTYvVDl1a0tRUldaNWx5Nms1eGt5bUNRUUdHRzQ5bzIzTXp0?=
 =?utf-8?B?MHJIQ01NQkVoYmJOcmt6RHNJUHFVZk9obURQTVpHdUh1OUtNQ29Nc3AyUWZa?=
 =?utf-8?B?ZXZCdmtRZUtjYmNWY1RCV3FRT1VzRDVYRDduMjMzSDRJRzBjUlVueVRiOWNP?=
 =?utf-8?B?eCtlTmZ2anZ3TUNRbCtSdXZSeTRDdTgya1hncXBCU3p3YWFKdlVJNEdMMHR3?=
 =?utf-8?B?WFZxckJjenBZT0cvZzFMdkpMREJVRFY4emZ3MFFHaERzNkFNUk5zZkVOZ3dF?=
 =?utf-8?B?Z1hydmtjTzkzRjA2dVExdU9DaGhCWEs0bGtnK0ZWRmpyT3JtQkRHcmFuWDlF?=
 =?utf-8?B?ZU5rOVZ2WjZHeWlCU1FyVk03dU5pQnlScWxzZGFZODhCcnV2VmllR05WZE1p?=
 =?utf-8?B?UTRDenQvNjZLVlk0OVFnKzdYWUN3SE04SE5rYnV5cVhOb0ZmWi9HaTJDWlp5?=
 =?utf-8?B?RURRRVFMZnJBOXZXN0UvRytVT0pTSVFQdS90T0tKQk1ldHJ6cXE2SzdIc1Y5?=
 =?utf-8?B?SW4vRWNFeWRtT0NSTmFKYmhJa0RRZ3JOT0RqK20rN1JmZWdxZTRJMFQyZEky?=
 =?utf-8?B?M1VnaFZ6V0g5dDdRS2tReDlpOWcwdk50RWRkQ012RElxQjYzQnZlYmJYNlRD?=
 =?utf-8?B?RStySTF0Q1A1ZHhNNEhUWFBoUEFuM3RydE9JaWhlL1orWmdaNkVCbmVBbnpX?=
 =?utf-8?B?R1l6SjUwZjNkbnZiRGlPdE8zOUlxc3phbUhHKzhqSjVDajFKRzErQ3FVUE1F?=
 =?utf-8?B?RWc4NEMvWHNuSnd2Q1AxZE9PbEtYdTdCOXZLTEJaOGlYZ2tNWXVtWVVqT2Ny?=
 =?utf-8?B?Vmd2Vi9qNXUrWHhRZjF1UVZkN2ZZbHFkc2hVcFNicVJnTVhNWlZrR3poTWdw?=
 =?utf-8?B?eUI2RmtUQ0pmMEp5Y2c5UEZlTW50T0RLMVM0eE1LUVJpaUJienh1d09UMm1F?=
 =?utf-8?B?Zy9ZcXl0cFhYZG9BajQ2RiswOUVyc0N3Z1kxTXM4UDk3Y2pZY1NVMjZMTUhV?=
 =?utf-8?B?Rm9pME4yTTJibXBqNlA3N1dYMFdWcG9taGJURnBWTlNvV2pLd2tDNytWR1lH?=
 =?utf-8?B?bVljR0F4dE5pSHF6ZnRpZEt6UlVYM1lxVzBMbWtNQVJpSU9CVXQrbU9LMTNt?=
 =?utf-8?B?b3JMWjZMd2wveVA1cGVveUlhbnNTbVhsaC9NaDFVTFFRNzR4ZDJaYVI2cUJp?=
 =?utf-8?B?a0ZCTGZhcG5yd3YraWsvTjl5dWNSUzA0WWIzNGxDemQwQmNuN1VOamxtSSsv?=
 =?utf-8?B?UnJLUmRnM25tMXZqU0ZtanY2TkdPMHAxd05mUGpqTUhqSllkUE80NXRNdlVK?=
 =?utf-8?B?WGdHaGkrbTI4V0hncnVqblpwRDF5TUtNaFZnaFhPZlp3SkNQT0JOTm0yRHkx?=
 =?utf-8?B?a2xaM1pYVWE1QWFjSUlqV0EwVWUzbzNEYTlwMFZKdEFqYnVBNHExSnB3Y1M4?=
 =?utf-8?B?WVpCSkxlTGlISWt5Qk9KQTh5MGU0VitZRElraWFwbDlDenBiQ0VWSjd1c1pz?=
 =?utf-8?B?OXVxS1B3QlFsd2VPa21hT2NET2FOSDg2MWZXd2VmQjd5blIvL1E5WlphTmVi?=
 =?utf-8?B?NWJ6UEdlMzZjTDJJblFscDhKd21SSHdvZ1hpKzhpbm1oVUJtQTZJZVl0OFU5?=
 =?utf-8?B?SFpSUXdtbVJVVU1EK0huZEl4MHB3c2JPZmlWTnliM3lBVWFnZCtHVHRMVUxP?=
 =?utf-8?B?U3haekxKWmh6VGg2OUpyZ2hXZUE3RmlrbnpVOWs1MjMwTDk2eE10d3ZqdXJP?=
 =?utf-8?B?d0VZU3RXN01tRU9hRDYwUlN4d1Rsbjl1ZjFhU0RHQ2EvZFdyeW5VQmQ5d09B?=
 =?utf-8?B?a1JUYkhGYURwcU10cXFmWjNBS0VHaUlZV3lKdnd1SktsVHpOMjRxRUQ2MHRR?=
 =?utf-8?B?bmltU2xlWnBSODcrTU9LQU5FMlQzeE5jTTlzK1BRSWg2cFd1MkJINkV5S3NM?=
 =?utf-8?B?dWVRaDc3OWlsRnFxQTIyeDFGWE15eUtRWXc1WERBTlJnVE5uVkg4N3hLOWhz?=
 =?utf-8?B?WmYwNGlYU1YwYkduMkNkSzdoMzJCTHNMbkNJdnljMDB1ek8zaitucmFXbE90?=
 =?utf-8?B?U3ZpTE92Ui9uZ3IrVG8zR0Vtd3NQNWM5VklCdktaaWx4QVYwYW1uOGxHRnY3?=
 =?utf-8?Q?iiNiSoD07IL+ll2wy6h/8Q0V+?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 19b146e7-f195-4b6d-55c2-08dbb42b8468
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 07:32:00.2497
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: A+kXmMOltB2lqD+stXgOPER9QI2vc7zaqVcX1NsEn0bAzG3VNoAHdhfVH6y66dDbLIfLq7YxysOmbIs1NRig8Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8756

Gcc13 apparently infers from "if ( old_cpu < new_cpu )" that "new_cpu"
is >= 1, and then (on x86) complains about "per_cpu(timers, new_cpu)"
exceeding __per_cpu_offset[]'s bounds (being an array of 1 in such a
configuration). Make the code conditional upon there being at least 2
CPUs configured (otherwise there simply is nothing to migrate [to]).

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/common/timer.c
+++ b/xen/common/timer.c
@@ -356,6 +356,7 @@ bool timer_expires_before(struct timer *
 
 void migrate_timer(struct timer *timer, unsigned int new_cpu)
 {
+#if CONFIG_NR_CPUS > 1
     unsigned int old_cpu;
     bool_t active;
     unsigned long flags;
@@ -404,6 +405,7 @@ void migrate_timer(struct timer *timer,
 
     spin_unlock(&per_cpu(timers, old_cpu).lock);
     spin_unlock_irqrestore(&per_cpu(timers, new_cpu).lock, flags);
+#endif /* CONFIG_NR_CPUS > 1 */
 }
 
 


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 07:50:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 07:50:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601009.936894 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKdm-0004Zs-UU; Wed, 13 Sep 2023 07:50:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601009.936894; Wed, 13 Sep 2023 07:50:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKdm-0004Zl-RL; Wed, 13 Sep 2023 07:50:26 +0000
Received: by outflank-mailman (input) for mailman id 601009;
 Wed, 13 Sep 2023 07:50:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Rq8V=E5=citrix.com=prvs=6130a4f39=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qgKdk-0004ZM-PZ
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 07:50:25 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2f90212e-520a-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 09:50:22 +0200 (CEST)
Received: from mail-mw2nam12lp2043.outbound.protection.outlook.com (HELO
 NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.43])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 13 Sep 2023 03:50:19 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SN7PR03MB7087.namprd03.prod.outlook.com (2603:10b6:806:357::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Wed, 13 Sep
 2023 07:50:15 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783%6]) with mapi id 15.20.6768.029; Wed, 13 Sep 2023
 07:50:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2f90212e-520a-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694591422;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=wiieqJ/IpmeEnV03xzM3Gaq7Nz4pT6Dno6dQmqHGTpY=;
  b=ZsBK2FY1z7FIXEGLnszmpK/aeUgmoWOwGkoC3aA/IwM6jIDM0MQDbWXP
   Z1UfrOksXmI2WbdnJzlavIXvaUY03TkN8ze58IpsGeu/hC648+tXFi9ea
   NeEa/z1qcaiO2VCACLsfPFsCJuLzGIlIS7pnHgt03tZVWs85MucVlFnY4
   E=;
X-CSE-ConnectionGUID: 3sLjJ/1sRcmj06WMy42Now==
X-CSE-MsgGUID: Zq4fNGcaTj2w8Z/HDT3DeQ==
X-IronPort-RemoteIP: 104.47.66.43
X-IronPort-MID: 122901703
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:yWvCvKw8CLkt42BDpzZ6t+fGxyrEfRIJ4+MujC+fZmUNrF6WrkVTy
 GcYWz2GOayNZDHxfdFyaIu38U1Tu5TVz9dmHgVv+CAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EkHUMja4mtC5QRvPKsT5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KTpV0
 f46b2kWVBuGhbro/5eqFrNKgdt2eaEHPKtH0p1h5RfwKK98BLX8GeDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvTaVkFcZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LWexXqkANl6+LuQxOc2jnu8zWUvCkcJBWn8gdWF0WKzYocKQ
 6AT0m90xUQoz2S7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZjxLZcEitcQ2bSc3z
 VLPlNTsbRRwtJWFRHTb8a2bxRupPiwYK2IqYjcJSwEe75/kuo5bphfGVNNqCqO2ptzzBzDrw
 jqOoTQ+hrMclsoC3eOw+lWvqz6ho5nhTwgr5x7WVGao8gN4YoG+Y4Wir1Pc6J59wJ2xS1CAu
 D0BhJKY5eVXV5WVznTRG6MKAa2j4OuDPHvEm1lzEpI99jOrvXm+YYRX5zI4L0BsWioZRQLUj
 IbokVs5zPdu0LGCNMebv6rZ5xwW8JXd
IronPort-HdrOrdr: A9a23:2WCHsq4VNfHaGGHVpgPXwD7XdLJyesId70hD6qkQc3FomwKj9/
 xG/c5rsyMc7Qx6ZJhOo7+90cW7L080sKQFg7X5Xo3SOzUO2lHYT72KhLGKq1Hd8m/Fh4tgPM
 9bGJSWY+eAaWSS4/ya3OG5eexQv+Vu8sqT9JnjJ6EGd3AaV0lihT0JejpyCidNNXB77QJSLu
 vg2iJAzQDQAUg/X4CAKVQuefPMnNHPnIKOW297O/Z2gDP+9g9B8dTBYmKl4is=
X-Talos-CUID: =?us-ascii?q?9a23=3AFHVNCmvL7ERy1kkh4fCh+qkT6It+aVnf7jCJOHW?=
 =?us-ascii?q?zDGQxFoKwWAPK3qR7xp8=3D?=
X-Talos-MUID: 9a23:5i6zJgQjSu3q+4l9RXTenW1sEuhj6pisUl9do9Iml/XfGSFJbmI=
X-IronPort-AV: E=Sophos;i="6.02,142,1688443200"; 
   d="scan'208";a="122901703"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nWeKi/mbdx7MkGxxxPP5aWgpOFJ424mnUpaQMLyCgmGHsw6756V7iMoUx2imJoGHUkVsb535m526gSOk0XS1MIzZmXj2UWz8y2Yn4oo2ko9TPr5rqrFnkUzF5LH2ssLl+rVIchqGryUr/8S4CsJUgYt8wYSIkdPwM8Qao17JMIjkaYNuRYyeCAu4yU+ckOw+rYi06xefPdJW/evHm50rYGBZVgMLfrcqMDbOCchfokV7mKNsy28gWvkIA3czzbf6REHUloM4Sqw0V91ckx5vCQ6roVumlWY2Ec0oGq5l+JHi4gid2/jFu8C+h15uDhj70XSN6q6fFIYpWwJ4B3T8YA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CaYP/gNg41s9v+sQwz5n6E4SqlW9NJMpl2eVkkx0cM4=;
 b=bz46ga0wrl/UgzJgVSPrk0wIIrrIx3qhEXNsqHobnWQNgLit7ytE14Ko5/IhPwi48V9fgHDRyJGXVpGLHzSf2FlSvQLbMpNU0AvbbAPvenEQRhImTybyQoPR/XmGH2K+ZYuhkBGdHnPeoJ/Ft6KST+ROMAi0gG1huSYGcpETjrZ/3g3uSVz3U1Q+eH5luFgcGUD79wTUxL31Jp6dpAiKxhEgZK/D1RvyDXWP1hNXQNA5iL5nj9TA73wyrPMhxtcv5Gsi4j6SXcULpGrcnFMupcv6xDFyK7ruseCLd0qijDXpNRAM14v+Pou3MsQYVjsfe6bLtCwVpGrwDKcK4TciSQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CaYP/gNg41s9v+sQwz5n6E4SqlW9NJMpl2eVkkx0cM4=;
 b=IAx5hSUT8cmFANXfC6LzV0drpJzH8G2Un4O4CLHfVZr5hl6agFwPfJq1gl/ZcZWYhWz57/tj0GlCbo4+Co6+dgZyygN19w2mGyNqxXmjyKXTSegspGLpHwcNTWUMoSFZimrZQU+KkKBhVrJT5yJGhhj/7eumu+h67OjgThO5aII=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 13 Sep 2023 09:50:07 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>, solene@openbsd.org,
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Demi Marie Obenour <demi@invisiblethingslab.com>
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Message-ID: <ZQFpr5nIZtRLPNhp@MacBook-MacBook-Pro-de-Roger.local>
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
X-ClientProxiedBy: PR1P264CA0164.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:102:347::14) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SN7PR03MB7087:EE_
X-MS-Office365-Filtering-Correlation-Id: 9c41baf8-883a-4015-95a3-08dbb42e109f
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oQIuqtVNU1Kpb+QW+txI5LEeP0rNrnEvnqsT5WoBQgOuFjg9Goz9yX9xJ07IDdnWX33tWMeKFA4XSl389PPiObgPAcJhVVlnLhtcoe1oop120jb82Vt35lxR8dKYOLc4ThcVVyb69XLtiXKc7c1F1VBnJNOqGYbEY1LGfsnPEe+pmyoYiSeLBQ532Oj/l3wVMBFb4Va3k8A/vdjVF7K8jtJWsjjG4wyAc5B+EWNa11wmneZo76zhaTclAUUwRxSL58gRXhvcjMMiLk5hLd92OAtMhXdQUO//OY+EOPp5KJuNDnucABaUKwlXrQBI9oOTbTvn260xY8DErCdU5JIOvO4l3O9anPG57C7rpiFskNrp9tWVurqZjws7M05LtvQu8Ef1SHLjDX2OoSicVhKRAJnXe/5aExNlLJYJMm1ltwPvLdDYBmLK9YsVc5VUZThrgC+NgATJfj2Yxl+ryCAuxOV/kN+pAhQ+Za5Ri1+69zjdLyOL7k6j0Tdngo6MEGGuSMnG8pChDKqt7IBZCdSEbVoSRds5LDXrHuvWyH9nv+o=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(136003)(376002)(396003)(366004)(451199024)(186009)(1800799009)(82960400001)(6506007)(9686003)(53546011)(6486002)(6666004)(966005)(83380400001)(66946007)(478600001)(6512007)(66574015)(41300700001)(26005)(66556008)(2906002)(54906003)(66476007)(8936002)(6862004)(316002)(5660300002)(6636002)(8676002)(85182001)(86362001)(4326008)(38100700002)(66899024);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R3VLaU5nNSs2UnBxZ3lqMER1UkpMWmNnRkptVjY4ZmdZYnVOc0J2eElHUWll?=
 =?utf-8?B?MVVxZFVJQWQ1eEpPUE8zY2IvcExQN3A5WExGZEprOUxLemROaVNvcTVFMEIz?=
 =?utf-8?B?Rnk1bmlGYVBzUkZlblBjYjExQ3VsNE9lSjBDRk5IemVnNzlNRy9pTERTY2Zi?=
 =?utf-8?B?STduS1JHaHBHN1FQdUJuWGlacmN4dFJCcW91VWtvYlFuRDZuRjdNTjc5MU9u?=
 =?utf-8?B?OGV5cFhLNStsUUdIVVlXVXN4T3JrRTNML0paRmZTZGo1S1MxTDFtSEQ2eFQw?=
 =?utf-8?B?R3daa2xhZmZ0eDlsV09xaG9KaUhZTEJnSXZOMlg3U015emxsaHZNdWlnRnRS?=
 =?utf-8?B?ZmU4V0IrL0JzbGIwQTdCK2I5T3d4dTFIL0orMEEvakxqTWl0U2gzbTJsdVhz?=
 =?utf-8?B?cHJrWDNpelFmSDEybjFSZzRqRlRvTDFnNExyUzVjK05JZmxwUlZOMno2ZlUv?=
 =?utf-8?B?dTFqZXRlbUN6SW85Y2djTnZpZVI5Z0RyNUJKUG8wNXZLK2NibVNLTnA3Nmhn?=
 =?utf-8?B?R3Jvcnk3bGJzZmNhRDNWd0dZTTV5ZW0rY0l4b3lqQmJsUk91Z1hydUpVWTFy?=
 =?utf-8?B?TmoySS9OTVUxWis5TTZjcFhiUEhEOGVKVzV1UUorZW1acXFEVTFSOVNlejZY?=
 =?utf-8?B?WGMwdGJ6djdqRWRYNlN6Yzl6L1E3MUJHQU5XOWZtME9LZENpc2gyeU1aR0J0?=
 =?utf-8?B?VG1yQkVHNWx5QWNENVgwRGplM0djL20xZ3FQaldNLzJ4SU1zSnU1TlVRVCtV?=
 =?utf-8?B?QWRaTjJKMHh1aWlCSHM4blBnTUxOSFkvOUFIbjVPeWZCRUpHT1NCK09YV3ZM?=
 =?utf-8?B?RHJzcXpZaXBSbzhpWE9McXIvd0ZjNFBsYU1BcEkybVhZSTI5VnB3TUNSaXBa?=
 =?utf-8?B?Sk5WZWlic1VzYXgxSUxsdnpKNDBuQTM2cjRBbkJiSGxQREVSUTN2Qk8wY0FW?=
 =?utf-8?B?dGxudWpXdEtzMGlSZXBXeklzRXNlNFlIY1l1Sk9vOFhJMlpybmhiV1VrNlVG?=
 =?utf-8?B?WG82dk8yamlsM0ZXcmExcUh4ZDg3WFBiamhsWjV3V0ZLaWF6RHNsRkY5Y1ZW?=
 =?utf-8?B?M3JGUVVUZHdzUnFaNEROeGZMSFJ5MkxHUitqOHYxNGk5bkl6RTIyRkwwdzJU?=
 =?utf-8?B?QUtXbk9kL21ZZVFyaXUyc2VtWWgvZ2N6TEpDeitrTkRTaXRjQW9TbWF1dWt1?=
 =?utf-8?B?RVdDMU5sMlpBMHVQMXVpM3d6eXRuR3BlVlB1SGhuQ2VUZkFScmZ3VGllQ1Ra?=
 =?utf-8?B?SjkrVGN5STdiVVdhdzhCOUdYQmtJTTIyclBTV2d6SDdodUtKeWF0dlNOT0hJ?=
 =?utf-8?B?NkpBLy9sOHhPMHZXOXNJT0FxYUJ6ZFJpWXVhdHlnUDROOThvYnl3NWkwbjY4?=
 =?utf-8?B?Uk5XMDhtYzZtV1pXa0dEVWQvVk1iMXI0VFJjVWxjTWt1RDFZa25DUDZIYmVL?=
 =?utf-8?B?eThrQ0VjZEV1cHlCT0JGUkwrTUVVS1NUWm4rVG1HbVZBQVRwOVhqdVk0bUU4?=
 =?utf-8?B?Q1Z4Z3FnM3NSSC9pWis4RUM2K0o4SHArcVZKcEs3ZytRYUtBeUNYQzF3TEFH?=
 =?utf-8?B?NWdkOXZhdUNtQ2VHNEoxUmxlK09OK1hFMXRCSituZi9TVUtqekFWWHIzclRq?=
 =?utf-8?B?Vnpqb1BoOU02bHVHQ213VVVPcXBrdkUyTHA4ZUhlVjVJZVRuTVg5Z0x4ZExO?=
 =?utf-8?B?d2Y3dHk2eVBCQmx6REYwTWFKOXpBRU9YNmpkdjNvRE0yQWMxeEc2YjJmQlNr?=
 =?utf-8?B?VVU0WGFXbjBRVXFUNytpaHN3ZlI0Z2V4RlZrNllKamh0allmenR6WERnckN5?=
 =?utf-8?B?Ym8wMnNDdjROV0FnOGw3MDNKaUphRFZxRkJJQWtqOVJ6bUpmT29UYVFVNzNt?=
 =?utf-8?B?cEo2dGJ1c05XNUk5N0dJb1U5blpvSWZQL2FBUC91OUd4YTlzOXpyU1RFakZ0?=
 =?utf-8?B?NDhHTm1mQUxzMmhlMDkydDdJQ3pPKzMvS1llRzJqTmxrWkl2TTNueW00Qkdt?=
 =?utf-8?B?dHViWmEvOUxIRFBoNUhIZHRnaXU5N01wSmdVRTNGTVVyZUNodGEvcXZDV04x?=
 =?utf-8?B?NUZTdjE3TWFTYkhhM1E0SmhmKzFmMUduY1VtcnNPK1N0MHV4cEt6SU93UVRU?=
 =?utf-8?Q?BtWmmTsYr7qTQzzzc9jn2JftJ?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	bUZBAg1dE0qrLmLru+9ACW0mvIMzWRfdHF6Ra25xPnPhJBbM2+oBDqVtSEA30nw86SoX9Na+WDVyAEuwnavUlEYdapAQqr5ajIyuRjXHmQUnpHbWqQwK1kJhuvbLQgf0AYZ6KDLOJOwXMFyESk2S+8VVw7Cv/D0YfavV93HlvADzN5vQhZpYmoL8WLP3vEh8i9opLlyYz0HFFlG5Tesw6mi/fNGtnUd4KNDfCKPVRyUpiiUUsKud2Uy7fWgqmX0p42d3aC9xD1D9wbAFTqp1IBcr7Cyb8xBWPLLv6rKaQv9eK4Fv+p7LGFIR5nDaeNqKkWszqJHtle1J3KhCo+JbFvT9/RI3UVbTA10CronYlVJAVWZJ9EcSKa5L9xyz4H/Ci7OFuyud85dTQO3HdQdMEqM6lEEwnVN75kZ1BhNAq/ubRhbjfpGnkx91G73ZL/H/ga0XII+FrkU0JJVgl2kAWR9Ltelr5UJRLJRAT//yNm2kcdtXgyU1G/6oC3TKSIjIgIAmWanPmEcbwkMnvu+JDu/Dlv7zA/Iopp5XBt6vwQsSzmiyEPbHoVJ4A+t+bVBKHyuO1AIutDO3FvuFH7NXsYNbZ7JFObclZ+7CRXh0engV8rBUNQJ/mu6CZVMKfPyORMq53GLFyT9ClhKDuNO7hhFmJhV0FsYZbulhgyUh1x4sP8FGYQs1/Ciz1xTB0Mr6iaLSHzCmoOSRi7OObU5k0yzof3/ZFqCJ9tAFZOZ5SCJzfunoZTXE9k47O10xfu5GLG3F6hbY4yHUPBh7Tme69Dcx7jkGEfnFW3aSvLXh9dGzsLtzPf/esbdFEO7MyH4le9cfPgAg24fnxLJeJ616tinUb5Fww0biGWMAwhwsWn/Zobf78zKznSpNnPhcctFdFprC403HpG+Y6smwpE4liBbz6L833AFYWVofcUl6CrM=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9c41baf8-883a-4015-95a3-08dbb42e109f
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 07:50:14.6473
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: +gTVg+FimNv1AVfanDBZ2+3XfzyuYh76WtoSE2uLSSb+wYN08ivzTnw1Fl6cFdxxa19Ot3zsPtD2CeQi7+GrNQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR03MB7087

On Tue, Sep 12, 2023 at 05:35:15PM +0100, Andrew Cooper wrote:
> On 12/09/2023 5:23 pm, Roger Pau Monne wrote:
> > OpenBSD will attempt to unconditionally access PSTATE0 if HWCR.TscFreqSel is
> > set, and will also attempt to unconditionally access HWCR if the TSC is
> > reported as Invariant.
> >
> > The reasoning for exposing HWCR.TscFreqSel was to avoid Linux from printing a
> > (bogus) warning message, but doing so at the cost of OpenBSD not booting is not
> > a suitable solution.
> >
> > In order to fix expose an empty HWCR.
> 
> At first I was thinking a straight up revert, but AMD's CPUID Faulting
> is an architectural bit in here so it's worth keeping the register around.

A straight up revert won't work, because (as you notice below)
HWCR is architectural, so accesses must not fault.

> >
> > Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > ---
> > Not sure whether we want to expose something when is_cpufreq_controller() is
> > true, seeing as there's a special wrmsr handler for the same MSR in that case.
> > Likely should be done for PV only, but also likely quite bogus.
> >
> > Missing reported by as the issue came from the QubesOS tracker.
> 
> Well - we can at least have a:
> 
> Link: https://github.com/QubesOS/qubes-issues/issues/8502

Sure.

> in the commit message, and it's probably worth asking Solène / Marek
> (both CC'd) if they want a Reported-by tag.

I'm happy to add a Reported-by tag, just didn't have an email to use.

> > ---
> >  xen/arch/x86/msr.c | 8 ++++++--
> >  1 file changed, 6 insertions(+), 2 deletions(-)
> >
> > diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
> > index 3f0450259cdf..964d500ff8a1 100644
> > --- a/xen/arch/x86/msr.c
> > +++ b/xen/arch/x86/msr.c
> > @@ -240,8 +240,12 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
> >      case MSR_K8_HWCR:
> >          if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
> >              goto gp_fault;
> > -        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
> > -               ? K8_HWCR_TSC_FREQ_SEL : 0;
> > +        /*
> > +         * OpenBSD 7.3 accesses HWCR unconditionally if the TSC is reported as
> > +         * Invariant.  Do not set TSC_FREQ_SEL as that would trigger OpenBSD to
> > +         * also poke at PSTATE0.
> > +         */
> 
> While this is true, the justification for removing this is because
> TSC_FREQ_SEL is a model specific bit, not an architectural bit in HWCR.
> 
> Also because it's addition without writing into the migration stream was
> bogus irrespective of the specifics of the bit.
> 
> I'm still of the opinion that it's buggy for OpenBSD to be looking at
> model specific bits when virtualised,

Well, I think we can argue that an OS is free to ignore the CPUID HV
bit and still boot on Xen (even if that leads to non-ideal decisions).

> but given my latest reading of the
> AMD manuals, I think OpenBSD *is* well behaved looking at PSTATE0 if it
> can see TSC_FREQ_SEL.

Hm, there's no written down note that TSC_FREQ_SEL implies PSTATE0 to
be available (and PSTATE0 is not an architectural MSR), but I can see
how a guest can expect to fetch the P0 frequency if it sees
TSC_FREQ_SEL.  It might have been more fail safe to check for
PSTATE_LIMIT not faulting before attempting to access PSTATE0.

> In some theoretical future where the toolstack better understands MSRs
> and (non)migratable VMs (which is the QubesOS usecase), then it would in
> principle be fine to construct a VM which can see the host TSC_FREQ_SEL
> and PSTATE* values.
> 
> Preferably with an adjusted comment, Reviewed-by: Andrew Cooper
> <andrew.cooper3@citrix.com>

Thanks, will reply to other comments before taking the RB and
resending.

Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 07:58:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 07:58:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601014.936904 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKlb-00061k-OL; Wed, 13 Sep 2023 07:58:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601014.936904; Wed, 13 Sep 2023 07:58:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKlb-00061d-Li; Wed, 13 Sep 2023 07:58:31 +0000
Received: by outflank-mailman (input) for mailman id 601014;
 Wed, 13 Sep 2023 07:55:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gBHS=E5=redhat.com=aesteve@srs-se1.protection.inumbo.net>)
 id 1qgKj6-0005LX-4m
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 07:55:56 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f6d36fbd-520a-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 09:55:55 +0200 (CEST)
Received: from mail-pg1-f197.google.com (mail-pg1-f197.google.com
 [209.85.215.197]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-648--2TYClfzPHGuVobdVyI3Sw-1; Wed, 13 Sep 2023 03:55:52 -0400
Received: by mail-pg1-f197.google.com with SMTP id
 41be03b00d2f7-573f6f0fe9aso8323047a12.0
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 00:55:52 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f6d36fbd-520a-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694591753;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=e+T78EfLbD3W1gVbFVQtm2/Wf6HsuIT6BGfT58aZwZw=;
	b=ICjNcfy9dybFZGcDaRR/VBJaOb78RakefmuOX3LpTBZhAJl+xqol3QbjfG2dqAVdI4K9mX
	/0kIHfu48cAYvexy4NxDyKiEP80XZF3Gykk32IfiLLPsjSwSwXADbvUB1AIYpA0O5pSScx
	/72EaeFIUrbU+VSE2Bqi4aMgqaSRX5A=
X-MC-Unique: -2TYClfzPHGuVobdVyI3Sw-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694591751; x=1695196551;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=e+T78EfLbD3W1gVbFVQtm2/Wf6HsuIT6BGfT58aZwZw=;
        b=CoHStknAKlzH6SsnBArV3Hs1Mm868bCvJr1BSPVmq709lrV174Dqt+lLcCK9f8fkGN
         hrR28lT9ylBXEve6ELp6M9gRrNR+6IDVMbyErniNrlUR1j37Vs4LjgOzSx+xh8OzaNuD
         7bKaQ6euvHGxABKr56VXf6O68Rwovu2l2MWvkKJyn+08bJWpLLZERDA8gE2gryGThYRW
         eV2nmhOcoh7lqGU5841p/M8tqmT4DPdpGo5dRYBgEy1ODb5LS6K+3bzEUTN40YDxXM1o
         jXBadLBrAgUANWw+UYFfpurmuOhaSAwjr1LkPasEsjqW7olSzbhd2Fvw9E0Pf9KRMpzo
         JMPw==
X-Gm-Message-State: AOJu0Yxiq0opq+k642a2xBnoNdxK75x+JJHPHj6+P7wL0laFVzDPogST
	D3N21dqXsDKQTNZw7fT/Nf9+pbFcwOWYL/98xu7K9z+SvHp2xLyR6yzG0WCUQ7jhzR8UnOZYffb
	T1WSWqXBE/tYLpFtLFJwCVYDS0qpL97owjkgKwLilTa8=
X-Received: by 2002:a17:90a:8b08:b0:26d:19bb:8638 with SMTP id y8-20020a17090a8b0800b0026d19bb8638mr1496797pjn.10.1694591751108;
        Wed, 13 Sep 2023 00:55:51 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IGQDoMVGHdXgv2xWZ7r2lD7d0hK7dARmCmw/01FsyS8gPxJf+i2yGrB7deHiK5PDvY06n/0dOktVZqMDRxiiEs=
X-Received: by 2002:a17:90a:8b08:b0:26d:19bb:8638 with SMTP id
 y8-20020a17090a8b0800b0026d19bb8638mr1496776pjn.10.1694591750673; Wed, 13 Sep
 2023 00:55:50 -0700 (PDT)
MIME-Version: 1.0
References: <20230831093252.2461282-1-ray.huang@amd.com> <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com> <11c227e8-a464-41ce-a435-82c570746388@daynix.com>
In-Reply-To: <11c227e8-a464-41ce-a435-82c570746388@daynix.com>
From: Albert Esteve <aesteve@redhat.com>
Date: Wed, 13 Sep 2023 09:55:39 +0200
Message-ID: <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>, 
	"Michael S . Tsirkin" <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, 
	Antonio Caggiano <antonio.caggiano@collabora.com>, 
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, 
	Dmitry Osipenko <dmitry.osipenko@collabora.com>, =?UTF-8?B?QWxleCBCZW5uw6ll?= <alex.bennee@linaro.org>, 
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
	Gurchetan Singh <gurchetansingh@chromium.org>, "ernunes@redhat.com" <ernunes@redhat.com>, 
	=?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= <philmd@linaro.org>, 
	Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	"Deucher, Alexander" <Alexander.Deucher@amd.com>, "Koenig, Christian" <Christian.Koenig@amd.com>, 
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>, 
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>, 
	"Huang, Honglei1" <Honglei1.Huang@amd.com>, "Zhang, Julia" <Julia.Zhang@amd.com>, 
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: multipart/alternative; boundary="00000000000056af01060538e319"

--00000000000056af01060538e319
Content-Type: text/plain; charset="UTF-8"

Hi Antonio,

If I'm not mistaken, this patch is related with:
https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html
IMHO, ideally, virtio-gpu and vhost-user-gpu both, would use the
infrastructure from the patch I linked to store the
virtio objects, so that they can be later shared with other devices.

Which, in terms of code, would mean changing:
g_hash_table_insert(g->resource_uuids,
GUINT_TO_POINTER(assign.resource_id), uuid);
by:
virtio_add_dmabuf(uuid, assign.resource_id);

...and simplify part of the infrastructure.

Let me know what you think.

Regard,
Albert

--00000000000056af01060538e319
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_quote"><div>Hi Antonio,</div><div><br>=
</div><div>If I&#39;m not mistaken, this patch is related with:=C2=A0<a hre=
f=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html">h=
ttps://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a></div=
><div>IMHO, ideally, virtio-gpu and vhost-user-gpu both, would use the infr=
astructure from the patch I linked to store the<br></div><div>virtio object=
s, so that they can be later shared with other devices.</div><div><br></div=
><div>Which, in terms of code, would mean changing:</div><div>g_hash_table_=
insert(g-&gt;resource_uuids, GUINT_TO_POINTER(assign.resource_id), uuid);<b=
r></div><div>by:</div><div>virtio_add_dmabuf(uuid, assign.resource_id);</di=
v><div><br></div><div>...and simplify part of the infrastructure.</div><div=
><br></div><div>Let me know what you think.</div><div><br></div><div>Regard=
,</div><div>Albert</div></div></div>

--00000000000056af01060538e319--



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 08:01:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 08:01:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601024.936914 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKoa-00085N-IN; Wed, 13 Sep 2023 08:01:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601024.936914; Wed, 13 Sep 2023 08:01:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKoa-00085G-Ek; Wed, 13 Sep 2023 08:01:36 +0000
Received: by outflank-mailman (input) for mailman id 601024;
 Wed, 13 Sep 2023 08:01:35 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgKoZ-000856-Kk; Wed, 13 Sep 2023 08:01:35 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgKoZ-0007aZ-Hl; Wed, 13 Sep 2023 08:01:35 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgKoZ-0001FU-7b; Wed, 13 Sep 2023 08:01:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgKoZ-0001rf-6v; Wed, 13 Sep 2023 08:01:35 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=nUWZB7rfuMUoqxi8AS8V9v2rPkelZQn2c4yCQkVvc9w=; b=oQY9IFODMCGkUiHs1claoUYVxz
	XoziVmzVsw3kXIljnoE4hdc7nTmLwWUgS3HKx/elS96yvXU1b2JtQKypFFDvSl+H6T4lBt9ymMq2+
	+SzBk7bpf9+m+Y+xpvamcFfojogU0yVaxPjYYtPppbjG5BK87t8kkxPTvuN4grlY8bNM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182983-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182983: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:<job status>:broken:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:<job status>:broken:regression
    linux-linus:test-amd64-amd64-xl-credit1:<job status>:broken:regression
    linux-linus:test-amd64-amd64-xl-credit1:host-install(5):broken:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:host-install(5):broken:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:host-install(5):broken:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=3669558bdf354cd352be955ef2764cde6a9bf5ec
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 13 Sep 2023 08:01:35 +0000

flight 182983 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182983/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm    <job status>   broken
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm    <job status>            broken
 test-amd64-amd64-xl-credit1     <job status>                 broken
 test-amd64-amd64-xl-credit1   5 host-install(5)        broken REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 5 host-install(5) broken REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 5 host-install(5) broken REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                3669558bdf354cd352be955ef2764cde6a9bf5ec
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   16 days
Failing since        182544  2023-08-28 20:42:13 Z   15 days   28 attempts
Testing same since   182983  2023-09-12 20:42:03 Z    0 days    1 attempts

------------------------------------------------------------
2278 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        broken  
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 broken  
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  broken  
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary

broken-job test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm broken
broken-job test-amd64-amd64-xl-qemut-debianhvm-i386-xsm broken
broken-job test-amd64-amd64-xl-credit1 broken
broken-step test-amd64-amd64-xl-credit1 host-install(5)
broken-step test-amd64-amd64-xl-qemut-debianhvm-i386-xsm host-install(5)
broken-step test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm host-install(5)

Not pushing.

(No revision log; it would be 276270 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 08:02:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 08:02:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601031.936923 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKpd-0000Ff-W2; Wed, 13 Sep 2023 08:02:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601031.936923; Wed, 13 Sep 2023 08:02:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKpd-0000FU-Sy; Wed, 13 Sep 2023 08:02:41 +0000
Received: by outflank-mailman (input) for mailman id 601031;
 Wed, 13 Sep 2023 08:02:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgKpd-0000FO-47
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 08:02:41 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20605.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e8cb29a3-520b-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 10:02:40 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8801.eurprd04.prod.outlook.com (2603:10a6:20b:42c::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 08:02:37 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 08:02:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e8cb29a3-520b-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EHDJ5yUPtSw3xTNCcSgUv3sFH+JhLJRlTA+aLYFbFLzlJ2XHm0vt8T65Ng9ChuwtzGkgrKRxBzKm9snQFTF8fiE3pQ0IMkHsrM88R9DBYx5gaQs2TDU86Kryb66OfJndScptmbk9IteG9JwTy61xO4AzLLNF9/gNeLQnr3qr7d2dTU4sE2bNiVA1aU9ZPYRlDjtp89dOZ71WUrARUd8QolV+n20+mhL+yMx7spm952EhqxY/frE+ilA0SiAqFylffdsf6n1ZkeL9nYUNfjO648caObQKYiHqnxGEb+mhdN8Ob9o4WBAkThUJ7evv+NgY3mmgdHdaq9suTNcW0OxuoQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EWB9k4jgVV/49PCdTj9xF3VItfyOrDqS0rQTg6pzZB8=;
 b=Ce7rVxLjG2uwJ+XT59Dxm7HUJJAx6Jg8/p177BLrBGbmXJFrAO0mQu2kl/Op5d/EhtKC7QL34q1DX69CqlkWUxnQZWYZCNMrXP3qiWdNOWcpg23jaaLxyDBRJQTM4Ul4wQRTrguxXoYRqfpfMBDpM/88MoLMhp53v17wTRB2K/6c+bPT400lYEDO4vV3KAWIieUrD34UJY/KBBEB4wVuozYTdBwStIhTIEkjvbuhVX+FwconrDTButCvmV5ApefOc0c9/kWfTMj7u6BMY2eYCNrPbk9SMDWPc4Yxi3J3suYXu+m3hNCh1dat7KSzR0Q5tRTwDUh64292ktnh9Q+mrw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EWB9k4jgVV/49PCdTj9xF3VItfyOrDqS0rQTg6pzZB8=;
 b=jKvdEsBv6uJWGZ/rHpXWKJ+Dh7jvFdE4A7IErMd5Wklc/PA4AYKzwmMG5B8kOEXL6NrcOhlqd8l8oPP5Y+8arsK7oXOqMZeBhXUKN/WTLdLN70FB+vz6KLOna4ypbegeXw1IuPvU1aM/X/CL5FTkVHIWd6woEj6Iq5p0bqQxaQCAXhlaBly2hqkOSm2sRxs+I26r7aWgDVJ79dwTN6M7HXg9Hv2pLGosr8PhFkPvOSNBLWfhQrbdpHZEm7xi56y4+Dm64X/KEaJO28s8zcWA9S0D7QEs3xuibtKRP8ufHxtS4b+LDOgyOA/bVwfpUANUGkoPcVPwMEgELfwqV9dlBg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b62205a1-885b-ea4e-3ce2-7ad58cfc938d@suse.com>
Date: Wed, 13 Sep 2023 10:02:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Doug Goldstein <cardoe@cardoe.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cover.1694510856.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FRYP281CA0002.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::12)
 To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8801:EE_
X-MS-Office365-Filtering-Correlation-Id: c762afe3-3b84-456c-489b-08dbb42fcb5a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TIHnSn+riMAlP2/sTe1v9xfLROpP0maKNHoD+GX770FOvw5h+1garzXftA0cCC2SlCdacE2DXs54pt7dgdXhWZfudGFRywukwnAU7HV5t+XEbk09AIYyxYzirp3ujwYo9pPE/ABf0MrRPW+MJwCQ10MsQDA6VaCYZhg51Xq53DnVKphBsesjJIY69e1+lPxDEM9vCUtUoTjHFlPJwfKDTI3bz3/aRJ5vp/IP9S8/n7s3I5YI8BhYPJGJN3ARfScJXnpFwSPzIy5iHiMI0Ejgd4zAlZC2UEfMycT9HSKVs5U+5aHtjdFptc8yR7wJtKqPB435sYw865jIx6fDxeTfeeOYg0AQ0QeRiw6YroiYXiKj/WtdJUfCp5J3Vax6oNUfals04MrNHhjqypG72GVREhp2gTeAPK1jcfbtdQ2Odr6ArFfHm1RecuWfUIgyyM9DCzOk1pDT4nc4ChHgltEdV1a+9ZwueTAKir/Lk3DJEvW2WFV8cL5Z9ZQ6qgXMj/kI3Yi9YOQIh++8OOf8sK+dP3uKH/+dn+9JkMljGRe1GVj3putmeAbCC7IgwFkGHw6bCLqxmmSde86mLLU7BxkoHL2XQoKMFMj1xS6tMRLWJYsnCeCxzcoFUcKNnEOspoetDyz69SWsf0Il7Y5qa2U17A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(39860400002)(136003)(376002)(396003)(451199024)(1800799009)(186009)(31686004)(6506007)(53546011)(6486002)(478600001)(6666004)(38100700002)(2906002)(7416002)(83380400001)(2616005)(26005)(6512007)(36756003)(86362001)(31696002)(6916009)(54906003)(66946007)(66476007)(316002)(66556008)(41300700001)(8676002)(4326008)(8936002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TGExdndVcEpGSGZPbFZqWndUUzR4ZlBYM2Ywckt0b0JsKzN4aGdVRUwwWkVO?=
 =?utf-8?B?ajdPMEFYZ0RZTFNJTzdQcW9tQ2F1QTQvQ0k3MlVpYk1acHRhVU16VEJSWnFu?=
 =?utf-8?B?VGloUmNPVDJxVWxNZDM2bXU4L2VHSXpyTWl0ZGRYblFNR1lwNktRenN3YlNu?=
 =?utf-8?B?WnNOUStTZzBCdFJ6cnlOVUdWVUpBbmpwWXhQa0dFYVFCeGFPa2g3WjJqQnFY?=
 =?utf-8?B?ejBqYUZxQW9LVFVPUzJ6cGs2aGdNa3lLcEFKS0FzTFdlanlVeGJCWER6cnJz?=
 =?utf-8?B?MlZ2M0F2aEp3cC9HOHhpWmVNRmcyT01XUkZHeWZldVVNSkF4M0JFV254RVdG?=
 =?utf-8?B?cWFtTytuUHd5aVFycDFPWDE0S004cUZtUjd2a0tSTGEwYXNiTTBqcHNQa2lJ?=
 =?utf-8?B?N011ZHBBRFV2b3B0RkppNWlpTEU4Y1dqaytET0JTSTQ1MFdibEFRaHZBL0Y4?=
 =?utf-8?B?VkJibjlTcE1RRThrN2hJa3NrYTdseFhhNFFwSTVpYmpjK3hxSFQ2ZUEzRXk0?=
 =?utf-8?B?dVVrRjAyUG1TOEgxZ2xUZ1ZOZWIyem5FWHZqVTlCOG9nbEVyd3NUN0RGeDdP?=
 =?utf-8?B?ZnpJN2tOeVVEUTBGUU1pQXhmNXJKdldNQnllMDV2cmpnUW9JL1NWeFJUY1Jh?=
 =?utf-8?B?TUR5K2ZkcUpFLytYVzJ5NXlmTFlBUGlLRWZtbHVyNzFHa0FsMnlwaUpiOUtI?=
 =?utf-8?B?TkpBK3NRNERldGh0aFpoN0g3SG9JalFUNU5FL01oRVlPNlJPSHVVZHN4V3Zw?=
 =?utf-8?B?THZDWmIwdENtR2lVN25qU0FSR3hsL0IrVG5EU3R3SW5EdEx5Tml1Vlk5Z2J4?=
 =?utf-8?B?WlVQcW1YQXYvcCtpT24xcEFXM1NMdmxYMlBvYjdneUJFTzZFOHhVNk5CZGZX?=
 =?utf-8?B?S04yWW1RVFRUcTNTV0VoaC81T3ZJNTVwWmUwaVV0M0VaUXYwN0plYzMrM0Jq?=
 =?utf-8?B?UHNBalhJQXltTUhZeXVlSTJMV040VlFmb3pxSHNkUWFIUXZDa1ZtUy9tR0VV?=
 =?utf-8?B?eDF1enV1d3dYV1h5ZVZNZ3AyaDlxbWFIZGhIcGNUbmtzRkZQS09YZDNVTDdG?=
 =?utf-8?B?ZjdaeXpjWGJkT3JkVkR1andUVTY3VmpFOWhWdHc3aVZkV1lGcjl6S3NnL285?=
 =?utf-8?B?NnoydjNPb1ZDZkNydHAxckllVmJ6ZkNTc0lvZ082T0lLOWoxVkF4R2wrMG85?=
 =?utf-8?B?QjVSNTE2RUNtdEN6Sm5jZVpBY2xKWFVVZHh3aDM1RFBaQnR5elk3UTlWODBl?=
 =?utf-8?B?R1FRaGhCbUVYYWJ3SDRyVWNsbkpPaWpVOFNDT1o1UFFtV2VMbCsxYVV2VjZr?=
 =?utf-8?B?MzAvR05CM2lhT1FySjUzWVEyaDRmMFhteTQvR1U1RFR4aXg4SFpFVExxc3U1?=
 =?utf-8?B?eGxKMUVOK0wxTDlNbkwydDVLaHZMRnRLd2ZLUkVGUlZ0Q1hqU3EwTU1GcTJF?=
 =?utf-8?B?N2d5V2hob0t0aFp0Z0U5UWlEM2RCZmJHSzVmczU2Yk4rTXYwUjZTZ3ByY1ow?=
 =?utf-8?B?VjFtVnNaZCthU2pmempPcDZPaVNoQS9aVkJNWnc2bkUveXl2dStKV2JZUXo1?=
 =?utf-8?B?dUtMcXJHNy9NU1dpTWFTNUNQOXNzU1FvM0psNkJHKzdQSkNBNjJHWkJ0UkZv?=
 =?utf-8?B?dmYwMWdpOUJYeFZKQkhjUlJYZWJhWDNQYUZmd1VjcVlINUNFaEQ2N216Wk1x?=
 =?utf-8?B?MmhGQ3F0SzhkVHQwR0hKOGhZbDJUR25hTWc2TGR4dmc1NUtxWEhPUUF5L0pl?=
 =?utf-8?B?d3MwUDBGRHhjdVJ1bkZMbFFybTlrWm9sTzZ5OVFZR2xzdHZpRVQxcDRkYzU3?=
 =?utf-8?B?TERNNlR1dGtzd09OUldmVEhERFJsQ1VyU1BnY1hGcjE1MFlkNTQyOWZyQ0ZK?=
 =?utf-8?B?ZGYvR0xQK2tVWGJobXY5RERFUkVEamN6elhvV2tGcGs0TEFQNXlRMTNmbmZF?=
 =?utf-8?B?bEFvbmNCQ3BrSSs2TE5hWFN3R2djRnlvdkpEY1hoQkxBbXpaY2tYNGhlSWp0?=
 =?utf-8?B?c3cwS3UveU8rT2dqWnR2Yy9PbmNjMjdrV2hYUDgzakZDSnpJeklBajluVjJ3?=
 =?utf-8?B?ZW1EcFVKclVtSHdRQm1URG5KdVdhK014OTZKbzU3QitjTGtsY0E1Vzd4ZDdW?=
 =?utf-8?Q?EhGzk5SYIxFggNPfbhIxD2Yhr?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c762afe3-3b84-456c-489b-08dbb42fcb5a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 08:02:37.3030
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: +A9mBKP6mzDmQv4YYIV9CsuGaurUSWd+nM3s3IOuSLPiNrvWvDvQAOtjiel+jEuAGNxxV2TaNJNKUvW3HG+HbA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8801

On 12.09.2023 11:36, Simone Ballarin wrote:
> Add or move inclusion guards to address violations of
> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
> to prevent the contents of a header file being included more than
> once").
> 
> Inclusion guards must appear at the beginning of the headers
> (comments are permitted anywhere) and the #if directive cannot
> be used for other checks.
> 
> Simone Ballarin (10):
>   misra: add deviation for headers that explicitly avoid guards
>   misra: modify deviations for empty and generated headers
>   misra: add deviations for direct inclusion guards
>   xen/arm: address violations of MISRA C:2012 Directive 4.10
>   xen/x86: address violations of MISRA C:2012 Directive 4.10
>   x86/EFI: address violations of MISRA C:2012 Directive 4.10
>   xen/common: address violations of MISRA C:2012 Directive 4.10
>   xen/efi: address violations of MISRA C:2012 Directive 4.10
>   xen: address violations of MISRA C:2012 Directive 4.10
>   x86/asm: address violations of MISRA C:2012 Directive 4.10

Just to mention it here again for the entire series, seeing that despite
my earlier comments to this effect a few R-b have arrived: If private
headers need to gain guards (for, imo, no real reason), we first need to
settle on a naming scheme for these guards, such that guards used in
private headers aren't at risk of colliding with ones used headers
living in one of the usual include directories. IOW imo fair parts of
this series may need redoing.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 08:05:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 08:05:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601037.936933 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKsa-0000tX-DZ; Wed, 13 Sep 2023 08:05:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601037.936933; Wed, 13 Sep 2023 08:05:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKsa-0000tQ-AF; Wed, 13 Sep 2023 08:05:44 +0000
Received: by outflank-mailman (input) for mailman id 601037;
 Wed, 13 Sep 2023 08:05:42 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgKsY-0000tG-Ts; Wed, 13 Sep 2023 08:05:42 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgKsY-0007fj-TA; Wed, 13 Sep 2023 08:05:42 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgKsY-0001LU-LZ; Wed, 13 Sep 2023 08:05:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgKsY-0005CR-Ky; Wed, 13 Sep 2023 08:05:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=4qht9CNB1UKD8HohsOLls+aSxZ+FMQvWVmuC8gy4TRE=; b=SJgFXC0llO3ghZaHZcgenYEVHG
	z3Xij7UC7WDNciqw2qjZWGFsnhdZ6iCuhULc46oCVtmMKFve2L4/vr4kn85Bf7jpe5+IPTEtlu3nr
	tui8Nf9K3NT8BzpaxRKn1NovklsYwoKfnuza/nKEgTxllwPAtVvjZDPgzyrwjYuefAKc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182990-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182990: trouble: blocked/broken/pass
X-Osstest-Failures:
    ovmf:build-i386:<job status>:broken:regression
    ovmf:build-i386-pvops:<job status>:broken:regression
    ovmf:build-i386-xsm:<job status>:broken:regression
    ovmf:build-i386:host-install(4):broken:regression
    ovmf:build-i386-xsm:host-install(4):broken:regression
    ovmf:build-i386-pvops:host-install(4):broken:regression
    ovmf:build-i386-libvirt:build-check(1):blocked:nonblocking
    ovmf:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    ovmf=4a1afea6f7361fd65e9d4ba34eaac48ec8bb2867
X-Osstest-Versions-That:
    ovmf=b844b106e2a20c709ece1b2b89b2ae0e84a0e401
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 13 Sep 2023 08:05:42 +0000

flight 182990 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182990/

Failures and problems with tests :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-i386                      <job status>                 broken
 build-i386-pvops                <job status>                 broken
 build-i386-xsm                  <job status>                 broken
 build-i386                    4 host-install(4)        broken REGR. vs. 182988
 build-i386-xsm                4 host-install(4)        broken REGR. vs. 182988
 build-i386-pvops              4 host-install(4)        broken REGR. vs. 182988

Tests which did not succeed, but are not blocking:
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a

version targeted for testing:
 ovmf                 4a1afea6f7361fd65e9d4ba34eaac48ec8bb2867
baseline version:
 ovmf                 b844b106e2a20c709ece1b2b89b2ae0e84a0e401

Last test of basis   182988  2023-09-13 02:42:26 Z    0 days
Testing same since   182990  2023-09-13 06:12:22 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Nickle Wang <nicklew@nvidia.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               broken  
 build-amd64                                                  pass    
 build-i386                                                   broken  
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             broken  
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary

broken-job build-i386 broken
broken-job build-i386-pvops broken
broken-job build-i386-xsm broken
broken-step build-i386 host-install(4)
broken-step build-i386-xsm host-install(4)
broken-step build-i386-pvops host-install(4)

Not pushing.

------------------------------------------------------------
commit 4a1afea6f7361fd65e9d4ba34eaac48ec8bb2867
Author: Nickle Wang <nicklew@nvidia.com>
Date:   Fri Jul 21 21:39:10 2023 +0800

    RedfishPkg/RedfishPlatformConfigDxe: fix can not set one-of option issue.
    
    StatementValue->Buffer is converted from ASCII to Unicode by caller
    already so we don't have to convert it again.
    
    Signed-off-by: Nickle Wang <nicklew@nvidia.com>
    Cc: Abner Chang <abner.chang@amd.com>
    Cc: Igor Kulchytskyy <igork@ami.com>
    Cc: Nick Ramirez <nramirez@nvidia.com>
    Reviewed-by: Igor Kulchytskyy <igork@ami.com>


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 08:08:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 08:08:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601046.936944 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKvU-0001cq-SJ; Wed, 13 Sep 2023 08:08:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601046.936944; Wed, 13 Sep 2023 08:08:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgKvU-0001cj-PL; Wed, 13 Sep 2023 08:08:44 +0000
Received: by outflank-mailman (input) for mailman id 601046;
 Wed, 13 Sep 2023 08:08:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Rq8V=E5=citrix.com=prvs=6130a4f39=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qgKvU-0001cd-0I
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 08:08:44 +0000
Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com
 [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id be92059e-520c-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 10:08:40 +0200 (CEST)
Received: from mail-mw2nam10lp2108.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.108])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 13 Sep 2023 04:08:38 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6488.namprd03.prod.outlook.com (2603:10b6:a03:397::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 08:08:33 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783%6]) with mapi id 15.20.6768.029; Wed, 13 Sep 2023
 08:08:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: be92059e-520c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694592520;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=d3SYyDLj69w+jZHpbV+6d8IXWpAbY5UOX3nlTjztC1E=;
  b=I4z2XQh4iFDcSqw7Iwe+GSyzxMjCmMi0j7hsdpHxv2zCWecoHs6z3n+S
   wigYZ42l2/mI0V0XfQxL3tptSLERKplYfhd8tB/XFOCPcsyRO9TXgCjTW
   uqTZvRwl6GQ8JXp1G6V+iw60kTsnvBQW5mjf6uFNoDx23/N030ZOB+2uJ
   0=;
X-CSE-ConnectionGUID: sxE0H4WMSZSjnwijWxNHhA==
X-CSE-MsgGUID: p1SheF/WSD+8KF+alI553A==
X-IronPort-RemoteIP: 104.47.55.108
X-IronPort-MID: 122343962
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:IsMt+KNcgiZreObvrR1VlsFynXyQoLVcMsEvi/4bfWQNrUp01zcHn
 GUdCDjQO/uLZTGhKNwgO4+3/E4HusTQnNQ1TAto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/jrRC9H5qyo42tJ5wdmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0v1nLDluq
 cM9EwI2bBachuCJ0JSbSsA506zPLOGzVG8ekldJ6GiBSNMZG9XESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PdxujCDpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyj23bOUzH2hMG4UPKXhzf5nrhqs/UBQWD44FlK/gKTk0WfrDrqzL
 GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAGRDNcbN0ttOctWCcnk
 FSOmrvBGjhHoLCTD3WH+d+8tjS2NC4YBWgaaCkOVgdD5MPsyKk2hwjKR8xuE4a0iMP0AjD6x
 z2WrCk4iK4XhMRN3KK+lXjLjjetjpnPUA8u5w/TU36l7wV2f4qsbcqj7l2z0BpbBIOQT13Eu
 WdencGbtbgKFcvUzHzLR/gRFra04frDKCfbnVNkA5gm8XKq5mKneodTpjp5IS+FL/o5RNMgW
 2eL0Ss52XOZFCLCgXNfC25pN/kX8A==
IronPort-HdrOrdr: A9a23:2eG/HquOCXbhGeYc1+sKVyq07skDe9V00zEX/kB9WHVpm6uj5q
 WTdZUgpH3JYVMqMxsdcL+7VZVoPkmskaKdjbN8AV7BZmjbURqTXeJfBOLZqlXd8kvFmdK1vp
 0BT0ERMrPN5FFB/KHH3DU=
X-Talos-CUID: =?us-ascii?q?9a23=3AhLwmTGm//VlMvYggwwAQWhY3i6/XOWbN4S/wf3C?=
 =?us-ascii?q?dMlRSSruKSF2v6IVEk+M7zg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3Aktujxg6FD27ncS9R+KArCI64xoxwup+uBW5Krq4?=
 =?us-ascii?q?q+JmnG295PxbA0W+eF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.02,142,1688443200"; 
   d="scan'208";a="122343962"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gdwVW7EueMXyUCcik0eZLyrkyb+qsABC4L6aZ/Z14bgKgP0JTR0oRsLXhroCWYv9j7ewPnzDCDHF28oNxMQ+lcpA8C7uymfNdbJLpHTRFxDT/iqSRHW7W8X0ujnX8j4Q7FcxJdSUNElhxpUoEKoDWSvGH2dCUSz6QMozEjR31i+vpb1aDdIk7/uFFvRncG45ZhNlsr//3qmTPixMk65KqBPu8EQ2gXMEPi/IFuQcbagbHrOWjqrQs/aElP5PFCJ36Sm74fe69ErdJDqcA9klJVhJy9imGzjtohg+ixFw2MBe4P8yUagr/Ig/GNApeFHalkLMpwfPBt8JzixEj7y/7Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=juF3907G/TaZ8fxiP6f9qUJxjfaM8WA4dQTpVRAIDzE=;
 b=VzX7IiY9D9YENpXsEXVk/dlfRe/w0Rwm6MqFzz94LFHXx8zl2EPiRuGF8LLviNcUSIY4RpAPVyeIS8y9H9owj+zY4jsf61dXh1LipKKYWcFLgYGLHU44JggnrTavNWEnxoZ6LXWpo7V4K1vkQk4cVhiU0NQiVzWpKhoxas1ucuclQubkjsuD9ZhYYyrFTJhyPXdX0DWMsk56wEEUjM/wBl8QZhevjUZD0e9Y9PHxwmqL2DHtK4sBXOb2Ml0JWGRpB2Lgl9kJqD6vyFg5sdxFrK5UZLOIWfSCKvBiQo1F7CUDR5wvNBplG6cBtDw9KIJFDd/8mnMntL2EoQXYcFgTgw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=juF3907G/TaZ8fxiP6f9qUJxjfaM8WA4dQTpVRAIDzE=;
 b=DrC3/uv93DejLjqIJxxkFy0b7Y7gBwxtZLw+TOGFJekIITs7+ko//TotkWUi7M8/cQ1PsQVNm8Eok/lBEGSkuj3aCx1vFwQemaKlc2RU+1CBlB4ke13mwhGjJJJcEaXO4lketZPJwAdYKGKZ121VTjyt6UzCUdKBbU7agl+nnXw=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 13 Sep 2023 10:08:27 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>, solene@openbsd.org,
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Demi Marie Obenour <demi@invisiblethingslab.com>
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Message-ID: <ZQFt-7x90QWL_Rmi@MacBook-MacBook-Pro-de-Roger.local>
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
 <989ebefa-42f1-cac7-e2d3-f4bcd1e4b662@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <989ebefa-42f1-cac7-e2d3-f4bcd1e4b662@citrix.com>
X-ClientProxiedBy: MR1P264CA0158.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:501:54::18) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6488:EE_
X-MS-Office365-Filtering-Correlation-Id: df1edda6-5b35-4dc6-237d-08dbb4309f2b
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mI2sSadtS/+LSpzOvArCep6LQTGMte7ew3nqDUgP8x1ifRmJu4txo3DkPgqY48/eyC3SFaR7/boc2S/DACBL+LhuGJCU5KYpeY+soea/ZW+Q82MU80vzx7GOX5fnQVOAGj2Oh97GhnNqls80KYvBZ/2fOIgnGIsWTTiJxQLCy+J4UzH7rWG1M+o0l1uPnEm+X1sdFvSyuma5gsWxOCLM95IkmeKbk6Z0Y26hz8qeWf/rBlGC8RFRiJjYNwXlTa66HfG+j4DtaptHzqaeIiO6tZxKv1wpfNR/VQLlMoCZ0fEH4jiTKzHnF7NsdMXXOGI1lfIesK/eVeG18dJglLayxqdJErDmT8g8v8LBaHvD1YuAj2oiV1jWuQ2P1DgrU9a9pivhPh54/4/F0ZoJ0rBUFvNgj+PgY8e/DUUlLGKteT9orFUhY5BENcmzLV0qom+mRhg9MdiK92Tpuqk6mSQWcDVkDULDcmXOwEzqBIyENdDGNi/NcikL6UASzFJ/El9Zrc53IkumaXAyPUt2OWbOaE/Ez3fafowfvD+nuA5JiNw=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(39860400002)(396003)(376002)(136003)(451199024)(1800799009)(186009)(83380400001)(53546011)(6512007)(9686003)(82960400001)(8676002)(2906002)(85182001)(5660300002)(316002)(6636002)(6862004)(4326008)(8936002)(41300700001)(66476007)(54906003)(66556008)(966005)(6666004)(6506007)(6486002)(478600001)(38100700002)(86362001)(26005)(66946007)(66574015);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MkFIajZaOHR5ODFYTnZxcHZwUVFsRUdoNzFxWVdncmNWc1QwaXhFZU1KTDQy?=
 =?utf-8?B?eDdwU0NLc3oyTHYyRk9MUmp3Wk4zMzVPNG4rZDcxRjdaT2todlByc2plOXFR?=
 =?utf-8?B?SmNPVHNFZzJyY1RYTFZ0QlpYMXcyUkQ5ZnhBelFwcXQyVStKSlJlZUtHTk1S?=
 =?utf-8?B?WElRM2JxSW1iTjB0TGs2R0J5MitpYWJxbHM2S2VCK3NZN1lVcXo3N3lWRzFJ?=
 =?utf-8?B?TUlPVjBCdTRMbHNqR1MvNzJEaFNiUUdOQW9pTlBWK3NjZXhtc1JFb1VxMXBq?=
 =?utf-8?B?V0VLNldhUkJzbFJsc2plQk13NkhhcnJWQXFxYnBJWTFKSGl4b056L05LV2Nm?=
 =?utf-8?B?UkRWRE1vYlVWSUZabVhKeUp6UVYxaG1TMDVaVVZWcmRHc3JEenpKbFFsMWhX?=
 =?utf-8?B?RXMzOXV5UW9WOFFwUCs4N3ZjVzQxTW9yenNYK0YyNzZKejZpRDdIUU1nRHRL?=
 =?utf-8?B?U3dsRm5jdElMLzdIVWY3eDR6QVVjYlNVRGwvd1QxRHdyNXkzOGU2YlA2dXMz?=
 =?utf-8?B?RzhDUWhBTjA1WnZnc2ZMcUxnZDhoRWVZVnU2SVlXam5DWnl3cVJGd0k0Q09O?=
 =?utf-8?B?b3pLMWVvSkU1SjJzYTh5UEtZMkpKSzJmbUt6ZDJMbVpram0zYTdVUVVYc2dp?=
 =?utf-8?B?cGhUR3VnMDFhcE95Si9oYzZJUHRNVDZWTXVReUROTHc0VzBiTEZvMVFyeDN0?=
 =?utf-8?B?cjNZVjhTUkRuR0FQSHBRMkZaRlkyRUlkTVYvNTBCdjFaY28zQk13N2lEeC8x?=
 =?utf-8?B?dnVMQkh5bkdNQ3hqMC9EQ3RrQlAycTlVai9nY05nTENHNEJEdENqQUVCWHFD?=
 =?utf-8?B?WE9OdWo5NlVuOVlqZk1SUHNqWlJyN282Q1lDWTdxUSszRHB5UUsvYnRtak1K?=
 =?utf-8?B?NGlnZm9vVW91d1lBWE1RZGlPUUdTSStJN3Eza0xWcWl6TkEwY1YvVjkvV2k2?=
 =?utf-8?B?VHU1eVBvNEJBRU1QUFJrWjV1bEl2QjNlRUUza3hVWjhJQURPK09UVFRHeXdN?=
 =?utf-8?B?SWQyaTl3M3UvUVhRQTBzMWp1blBpTitCT2ZsV2VzdUJHTmg5OGpuaHYrUE1v?=
 =?utf-8?B?R2p4ZHVKVHlLaytBU1hoTVpoZlk5Vndzb08xZTU4Q2o3RUdOWERLTTlTVWph?=
 =?utf-8?B?RTJDeVhrRWhmbXVVTXBYU0JtWmx5TlFDSXZqZ2I2R0pLR1cvOFdkMnZFVU5k?=
 =?utf-8?B?Sm9VNDFuaEx5VmJGYXRwK3FVSk9pb0FTZlVqaVJleiszZXU2bEZ6OEN4TFF2?=
 =?utf-8?B?UDY3cDhKbjdIaXZiSm5KN2pHUmRNSFFNMU9VK2xUWkVSK256V3FxeGlvanlk?=
 =?utf-8?B?WStYazVWcDY2cWVSZEMwL1BURjFNNndTTXptbVJ6aXo0VFhvTGtoMm95NHJp?=
 =?utf-8?B?azg1MFUwdzZWVFhRWEFuNUw4dUlnK1dzZVYyU3JxbVZ0VGZMOTBQQkVsV3RG?=
 =?utf-8?B?ZkNBUDlzSUJubXZ5cUdoYTRpYWZOT05lYVpQV2dWUXJDQnVyKzJwNmJOblVo?=
 =?utf-8?B?cWRnclFJSVVSQW5qT29DbnA5QUxjMFNuRFZCNFpJVUdaRnRTL2drVjE0ZXd1?=
 =?utf-8?B?Q0FaVmpWMEdpL01mVE5QT0FzWXo0RVJ1QXY5VU5Ocmo2VWg5STVBNTQ0endR?=
 =?utf-8?B?dzU1UFF3V2U1S1h3UVBaMUo0TlhvKzEvNC9lT2FrTC9oQTB1NDUreTVXWGpU?=
 =?utf-8?B?REo1ekpoeEhhS0pDZWRLYy8yZ2tlRzUwelBiMmUrYnlRVGpvdjNWNkpBMEU2?=
 =?utf-8?B?OWI5bG5IZ3drWUNEVXFPVmFYR0dJaW14a3dMWFR1S2VsbjNqWldDS0Z6NmU0?=
 =?utf-8?B?R3VGQXF3bjl3eEJIcUc5Q3V0Z0JxY0FSNWJiY3J1NzZab2pQTlFOTHp1QTRK?=
 =?utf-8?B?eG9CazQ2OUNOdTVlVEZhQThRQjBrMVp6R0Frc3hJaWdZODVEclNWb1Q1OW5V?=
 =?utf-8?B?aEU4eS8vdHErODd2WkczRXdWMEpjemNTbzc1bVZRalZ2L1I3TjZaV0dlbFBC?=
 =?utf-8?B?Z0JTME42QTQ4SUJ4dElrNkZNdHZldWo5MExXbXhWdkRZMEd6VkJ2b0tFMHZP?=
 =?utf-8?B?eXVsNzJ4eUdnOThlUWtCaFZiNVdJOVBZdmYxMkZDWWhqRlI5L0RUWGF4TEs3?=
 =?utf-8?B?L2Y5THY3cVZsV1dweHg2YmxRMHFXSFJ2cnd5TkZVWWNkQ1BqSkQvNVRwRi90?=
 =?utf-8?B?Smc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	pG51OLJ5EHNlaZYGEr4GzDUOqYB9djDzkoe5DEU7UEdV0oD61iWrf+1y6TGEmoH75unNeiIqvkpuhCvmAAI8pid5cikdsrY3zw5VU6Uy+gMwWJM0bwKh0wsfcz7uYWCxGdbHmPhzr9rI5+MX1GzHCkVRfjFhYYhM+a59UlLRFvilElDY+KOES8CnZc5+ZGvaV/nd7Q94xITFOBxNhNxKrXgq5HQwPanu++RFW+mYPJDDqPqmnlStefuztU5nn7z8W0XIM+AuFEWVvDbPolxT/alvXrb+4XrYToMN5+EsEC3Ib4+NkV9uHtkWOju1Qxy4+gzwFNTusKILQH+yytFVogBAFGUuz0xzYclSsrBRdc6+/IPPgTOEX4dKFcNLbdngO4HyUDUCGurIrlBDLjjRRc0GFs2Ni9yM9yZiAGhxCsVwEz2fhNbjMI3KE0dwOT/XPp8vtxbSNDGCeESZEYGFL8mncZZT50oDJ2LTmUaT2Tilp7BObzT0VEzd9vNrqaM038bVNyYSe6mvcUyLJ6pefno/U1YLk5dtRR9gvPOrSw0G0ZCq/h4nwmw9bjXR0aVvayKN95feCEeQuJ1LEatqmaUcWJw85RpJA2wRukuEMi65xpB42ry+wqholmt+8a+Q/KYGR/ZdY9AVbM9RhRcny6zTakzxP8JzlhY+yxRR9aD7A3HhLbAUgLJzxq3SYjaN5KGATs2GNiHd8CuqVznry6B500Kg+vYEDI3jzcR7GsPE29dAckSvKT3Ri8SIqPhmSLiv+LgH796r7GoYHe6RHQu1FNhgVxD0+6gl9u/LOgSj6b6WNchZ3GMOsd3MiGtcmV3GeqywqHtDCkfnquiZGOqYq6cMOkdswlzI9gZsguF/PEsYuvu6m88iBSHigFVOGcBHXOYf4hwp7ph+PkGNsqjG48+e2I1JrBasih0X8H8=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: df1edda6-5b35-4dc6-237d-08dbb4309f2b
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 08:08:32.7579
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rCkiMEPbvb3EMLvkYZBIBMMPk88kMjQl02GSGsYbEAbA1jeoGN8RDucW7yke+oDFPZLLuIW4KFXzBEMzU0bpmQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6488

On Tue, Sep 12, 2023 at 05:36:53PM +0100, Andrew Cooper wrote:
> On 12/09/2023 5:35 pm, Andrew Cooper wrote:
> > On 12/09/2023 5:23 pm, Roger Pau Monne wrote:
> >> OpenBSD will attempt to unconditionally access PSTATE0 if HWCR.TscFreqSel is
> >> set, and will also attempt to unconditionally access HWCR if the TSC is
> >> reported as Invariant.
> >>
> >> The reasoning for exposing HWCR.TscFreqSel was to avoid Linux from printing a
> >> (bogus) warning message, but doing so at the cost of OpenBSD not booting is not
> >> a suitable solution.
> >>
> >> In order to fix expose an empty HWCR.
> > At first I was thinking a straight up revert, but AMD's CPUID Faulting
> > is an architectural bit in here so it's worth keeping the register around.
> >
> >> Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
> >> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> >> ---
> >> Not sure whether we want to expose something when is_cpufreq_controller() is
> >> true, seeing as there's a special wrmsr handler for the same MSR in that case.
> >> Likely should be done for PV only, but also likely quite bogus.
> >>
> >> Missing reported by as the issue came from the QubesOS tracker.
> > Well - we can at least have a:
> >
> > Link: https://github.com/QubesOS/qubes-issues/issues/8502
> >
> > in the commit message, and it's probably worth asking Solène / Marek
> > (both CC'd) if they want a Reported-by tag.
> >
> >> ---
> >>  xen/arch/x86/msr.c | 8 ++++++--
> >>  1 file changed, 6 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
> >> index 3f0450259cdf..964d500ff8a1 100644
> >> --- a/xen/arch/x86/msr.c
> >> +++ b/xen/arch/x86/msr.c
> >> @@ -240,8 +240,12 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
> >>      case MSR_K8_HWCR:
> >>          if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
> >>              goto gp_fault;
> >> -        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
> >> -               ? K8_HWCR_TSC_FREQ_SEL : 0;
> >> +        /*
> >> +         * OpenBSD 7.3 accesses HWCR unconditionally if the TSC is reported as
> >> +         * Invariant.  Do not set TSC_FREQ_SEL as that would trigger OpenBSD to
> >> +         * also poke at PSTATE0.
> >> +         */
> > While this is true, the justification for removing this is because
> > TSC_FREQ_SEL is a model specific bit, not an architectural bit in HWCR.
> >
> > Also because it's addition without writing into the migration stream was
> > bogus irrespective of the specifics of the bit.
> >
> > I'm still of the opinion that it's buggy for OpenBSD to be looking at
> > model specific bits when virtualised, but given my latest reading of the
> > AMD manuals, I think OpenBSD *is* well behaved looking at PSTATE0 if it
> > can see TSC_FREQ_SEL.
> >
> > In some theoretical future where the toolstack better understands MSRs
> > and (non)migratable VMs (which is the QubesOS usecase), then it would in
> > principle be fine to construct a VM which can see the host TSC_FREQ_SEL
> > and PSTATE* values.
> >
> > Preferably with an adjusted comment, Reviewed-by: Andrew Cooper
> > <andrew.cooper3@citrix.com>
> 
> Sorry - I meant to be clearer here.  I'd suggest just deleting the
> comment and leaving an unconditional return of 0 (which will become
> conditional when we wire up CPUID Faulting).
> 
> MSR_HWCR *is* an architectural MSR on any 64bit AMD system, so shouldn't
> fault.

Hm, I think it's worth to at least keep a note that if TSC_FREQ_SEL is
exposed PSTATE0 must also be exposed to prevent OpenBSD 7.3 from
panicking.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 08:16:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 08:16:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601054.936954 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgL2M-0003TR-MT; Wed, 13 Sep 2023 08:15:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601054.936954; Wed, 13 Sep 2023 08:15:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgL2M-0003TK-Jo; Wed, 13 Sep 2023 08:15:50 +0000
Received: by outflank-mailman (input) for mailman id 601054;
 Wed, 13 Sep 2023 08:15:49 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Mepq=E5=invisiblethingslab.com=simon@srs-se1.protection.inumbo.net>)
 id 1qgL2L-0003TD-C4
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 08:15:49 +0000
Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com
 [66.111.4.26]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bcffa0cb-520d-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 10:15:46 +0200 (CEST)
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id C4C155C0156;
 Wed, 13 Sep 2023 04:15:45 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute5.internal (MEProxy); Wed, 13 Sep 2023 04:15:45 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed,
 13 Sep 2023 04:15:42 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bcffa0cb-520d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-transfer-encoding
	:content-type:date:date:from:from:in-reply-to:message-id
	:mime-version:reply-to:sender:subject:subject:to:to; s=fm1; t=
	1694592945; x=1694679345; bh=wl3XoHRysLnRaKHxjTCrQLQfcIoXI//uRg3
	RIhX89ws=; b=sgfOmbWwyI6xJIfLrMWG4dlxFYZkIXBRv4YsHapbpKDKLdYtAri
	8BjfIRf5oN8T/bxcxNoawGOvQnElHWi3sbAPm5mR7gHVgookfbVlujgD9dtglCAS
	dicIx78w12yyZ2yeNzucZ9dHClvQnMorRL0fqrakzIVGyxcqmpdc+D9dsJ6RC7wm
	fNW2tmjjbcDcYNCZohH0tFW9oHz/nc+7u4TzRdQ3mJq2e0iE694ljUIKABEk6Udn
	6OGKp5gMKj8g9VdTZRBoUij24QkidZv57AvFCHupjO942vudr74QOV6hx/jBFJNN
	zPtxsPFw0tplU7Gdz4a6+OW3Coja7bGWrZg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-transfer-encoding
	:content-type:date:date:feedback-id:feedback-id:from:from
	:in-reply-to:message-id:mime-version:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; t=1694592945; x=1694679345; bh=wl3XoHRysLnRa
	KHxjTCrQLQfcIoXI//uRg3RIhX89ws=; b=V/IFXNhnV6vy+mNUprs9+KE+NBBms
	kGyqiIjsEwiQAoZOS2iTFFlnY1go+KaS7z1eq0DxF4xErn0MUWAuqYOA+6m+tTEf
	HNKWN/E1Q8lS1EO7lWaoY+3eSlGMhoF+Fghd2YQ9ibAj4fnM+mrJVZf7klzdMT6R
	ybdP5uahnsLXWTm4FlWmqfsFx0LrDfdNCEpBIG0KIxJkxqgOGzwhpHM+f+u6WOPy
	n5VvqFEzRqwf7Pq/5brfbx8gQ4JkcEyxawT4RZymC9tG9m4R7pgKCaAowWiZFZVj
	E2sALH/rn5RnRgHXKTHFUyJB2QYo7vE4JlMA4snxY4rq1j4VD+tW3jHcA==
X-ME-Sender: <xms:sW8BZbDNI95L14RAgAZPow6_PGdeXFz6HXCoLwD9nZxtmZZfYHP6ag>
    <xme:sW8BZRjQQEb8s_UaK_ml4t61PTUVeH5wtLapimVBZSDP3pfPDFnHMrfT0qnPDUeP-
    Csw6DiSYDR3wO0>
X-ME-Received: <xmr:sW8BZWmCDsIXOOcOiYt_txuF2SjVDxtEGo74G1-xzwcPNOzQb2eF0v8tdXs7BrRmAexUQsOk1FTNkD8ocvYlC45VscvUQwddTUzc90eH47AeFLhzQdXjXICk_w>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudeikedgtdduucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhephffvvefufffkofgggfestdekredtredttdenucfhrhhomhepufhimhhonhcu
    ifgrihhsvghruceoshhimhhonhesihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtoh
    hmqeenucggtffrrghtthgvrhhnpeeuveehgedtfeegfeduvdefudeuudffffffjeevueeg
    fedufeeiudegudegvedugfenucffohhmrghinhepkhgvrhhnvghlrdhorhhgnecuvehluh
    hsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepshhimhhonhesihhn
    vhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:sW8BZdxIBzXQWKtKP_UwF0K5LT6BygAcvGGNQ6B9m7z0yQp59WJT3Q>
    <xmx:sW8BZQRyo0504ecRz7PT-spLY6FyU9LuSBIkYaHQmSRXADsUvZfkQg>
    <xmx:sW8BZQbAnWgvG0CN6Z4wA-ciLIGBTXUWo4ApM38UK4CdZBga3bYGEw>
    <xmx:sW8BZWO1tkVu647D4BBX4hG7HR17ZO1zmbiEwiyvCUQorFX1Bj_mdg>
Feedback-ID: idc5945a3:Fastmail
From: Simon Gaiser <simon@invisiblethingslab.com>
To: xen-devel@lists.xenproject.org
Cc: Simon Gaiser <simon@invisiblethingslab.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	=?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Subject: [XEN PATCH] x86/ACPI: Fix logging of MADT entries
Date: Wed, 13 Sep 2023 10:13:35 +0200
Message-Id: <20230913081335.28493-1-simon@invisiblethingslab.com>
X-Mailer: git-send-email 2.40.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The recent change to ignore MADT entries with invalid APIC IDs also
affected logging of MADT entries. That's not desired [1] [2], so restore
the old behavior.

Fixes: 47342d8f490c ("x86/ACPI: Ignore entries with invalid APIC IDs when parsing MADT")
Link: https://lore.kernel.org/xen-devel/0bd3583c-a55d-9a68-55b1-c383499d46d8@suse.com/ # [1]
Link: https://lore.kernel.org/xen-devel/f780d40e-c828-c57a-b19c-16ee15c1454a@suse.com/ # [2]
Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
---
 xen/arch/x86/acpi/boot.c | 22 ++++++++++++----------
 1 file changed, 12 insertions(+), 10 deletions(-)

diff --git a/xen/arch/x86/acpi/boot.c b/xen/arch/x86/acpi/boot.c
index ead41bd535..170f9783c5 100644
--- a/xen/arch/x86/acpi/boot.c
+++ b/xen/arch/x86/acpi/boot.c
@@ -87,21 +87,22 @@ acpi_parse_x2apic(struct acpi_subtable_header *header, const unsigned long end)
 	if (BAD_MADT_ENTRY(processor, end))
 		return -EINVAL;
 
-	/* Ignore entries with invalid x2APIC ID */
-	if (processor->local_apic_id == 0xffffffff)
-		return 0;
-
 	/* Don't register processors that cannot be onlined. */
 	if (madt_revision >= 5 &&
 	    !(processor->lapic_flags & ACPI_MADT_ENABLED) &&
 	    !(processor->lapic_flags & ACPI_MADT_ONLINE_CAPABLE))
 		return 0;
 
-	if ((processor->lapic_flags & ACPI_MADT_ENABLED) || opt_cpu_info) {
+	if ((processor->lapic_flags & ACPI_MADT_ENABLED) ||
+	    processor->local_apic_id != 0xffffffff || opt_cpu_info) {
 		acpi_table_print_madt_entry(header);
 		log = true;
 	}
 
+	/* Ignore entries with invalid x2APIC ID */
+	if (processor->local_apic_id == 0xffffffff)
+		return 0;
+
 	/* Record local apic id only when enabled and fitting. */
 	if (processor->local_apic_id >= MAX_APICS ||
 	    processor->uid >= MAX_MADT_ENTRIES) {
@@ -146,19 +147,20 @@ acpi_parse_lapic(struct acpi_subtable_header * header, const unsigned long end)
 	if (BAD_MADT_ENTRY(processor, end))
 		return -EINVAL;
 
-	/* Ignore entries with invalid APIC ID */
-	if (processor->id == 0xff)
-		return 0;
-
 	/* Don't register processors that cannot be onlined. */
 	if (madt_revision >= 5 &&
 	    !(processor->lapic_flags & ACPI_MADT_ENABLED) &&
 	    !(processor->lapic_flags & ACPI_MADT_ONLINE_CAPABLE))
 		return 0;
 
-	if ((processor->lapic_flags & ACPI_MADT_ENABLED) || opt_cpu_info)
+	if ((processor->lapic_flags & ACPI_MADT_ENABLED) ||
+	    processor->id != 0xff || opt_cpu_info)
 		acpi_table_print_madt_entry(header);
 
+	/* Ignore entries with invalid APIC ID */
+	if (processor->id == 0xff)
+		return 0;
+
 	/* Record local apic id only when enabled */
 	if (processor->lapic_flags & ACPI_MADT_ENABLED) {
 		x86_acpiid_to_apicid[processor->processor_id] = processor->id;
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 08:20:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 08:20:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601062.936964 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgL6z-00065j-6w; Wed, 13 Sep 2023 08:20:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601062.936964; Wed, 13 Sep 2023 08:20:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgL6z-00065c-3z; Wed, 13 Sep 2023 08:20:37 +0000
Received: by outflank-mailman (input) for mailman id 601062;
 Wed, 13 Sep 2023 08:20:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Rq8V=E5=citrix.com=prvs=6130a4f39=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qgL6x-00065Q-MQ
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 08:20:35 +0000
Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com
 [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 67add714-520e-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 10:20:33 +0200 (CEST)
Received: from mail-mw2nam10lp2107.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.107])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 13 Sep 2023 04:20:31 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH7PR03MB7106.namprd03.prod.outlook.com (2603:10b6:510:2b4::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Wed, 13 Sep
 2023 08:20:29 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783%6]) with mapi id 15.20.6768.029; Wed, 13 Sep 2023
 08:20:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 67add714-520e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694593233;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=LPDmIiqH8yAZfkg/eB4m0M6j0xlp2M1/aKe7W2E5I/w=;
  b=YTk2FYzpfJmRIwEj0W+/uriYx/stk23d1mEWPxmgIeCYMK2pi0TxLI1G
   2iu3aSFsrdkk6yVSsffyBgeckWwQ2WUD5gAY3UfF4ZvHqNzF14DaG9XVR
   B0Fvb2EMDp/fuvBPrsgu0tUQain7CB0jJ7N4SfVG7MtBj0Adzt93HNtKk
   k=;
X-CSE-ConnectionGUID: 4sJ9wMZBRz2TKrf5eRoZWg==
X-CSE-MsgGUID: dcEjXJC4TE6CUB40bsiVKg==
X-IronPort-RemoteIP: 104.47.55.107
X-IronPort-MID: 122345395
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:S/3E4Kv1bduVNI1Jok553tTYz+fnVHBfMUV32f8akzHdYApBsoF/q
 tZmKW7Xaf7famD8e4pzb4++8EJVu5fXn4JqGgBr+ylgEyxH+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4lv0gnRkPaoQ5A6HzCFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwdCsvPw+mtciM0uiHafNi28kZK/vUM9ZK0p1g5Wmx4fcOZ7nmGv2PwOACmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjf60aIW9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAthJSODjp6MCbFu7ymc+Ci00fgeHjKeSt2TiA9hEK
 nI39X97xUQ13AnxJjXnZDW6qnOZuh8XW/JLDvY3rgqKz8L8/AKxFmUCCDlbZ7QOpMIwADAny
 FKNt9foHiB09q2YT2qH8bWZpi/0PjIaRVLufgcBRAoBptz8+oc6i0uXSs45SfbqyNroBTv33
 jaG6jAkgKkehtIK0KP9+k3bhzWrpd7CSQtdChjrY19JJzhRPOaND7FEI3CChRqcBO51lmW8g
 UU=
IronPort-HdrOrdr: A9a23:n4aGnKPBiyUacsBcTgWjsMiBIKoaSvp037BK7S1MoH1uA6mlfq
 WV9sjzuiWatN98Yh8dcLO7Scu9qBHnlaKdiLN5VduftWHd01dAR7sSjrcKrQeAJ8X/nNQtr5
 uJccJFeaDN5Y4Rt7eH3OG6eexQv+Vu6MqT9IPjJ+8Gd3ATV0lnhT0JbTqzIwlNayRtI4E2L5
 aY7tovnUvaRZxGBv7LYEXsRoL41qT2qK4=
X-Talos-CUID: 9a23:3C2cZmx+bwCaWrRymx7cBgVIAeJ0bVjv5k3CeXObE2g0RYeSe2CfrfY=
X-Talos-MUID: 9a23:yQVN/wb9x3NtPeBTuzTBhgFAH5tUzvqFNWpRyZ8duvenOnkl
X-IronPort-AV: E=Sophos;i="6.02,142,1688443200"; 
   d="scan'208";a="122345395"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VJOaGqWbNdLLtio/P4zW5CfkxbCLU3PBB5jej7USnQWbdIQjl5n6RkupE+UgjkVX9HcQHsZ0A3n2tX9Hxw+H3IquvXJfA9klj0Scfybc+/0ISPwG8J1xclDLLmIAXGSAbXfbk/PaBmd5zzWbZ4IiTdHYmb7d9usrN4QhPKdX3D5XFnLu2lvSwdrQVYdeT6qLADzBbm2le5qUUSTRs1WSZpjRdjhNVtcqHm30Z47U5kK3Eevj+Ii7i6iKuhCz2CnHuwU55uDKtmOZHSptXpkywQ3t+s56N2hKFL/bLuC2thRfR9EwiSQBP5lOD0iRovWip5x3wyOSDCneO3C9jWhcKQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xbTlCQGtfirLcereGu77XLUfeIP1sO4pDHnx8mrxqoM=;
 b=QtgwtOJCg4ij8FmTS+O6rVvFJkbkHYHca6fdkki0SUmDu5wCizqdGUDmN8Pxvj2yhOGe9fR3iBLk2d8OCMcJf+GmgDvOH2aBWLq/m2c8GFgzW68NMGqISecGKdOmGtTwMyHuoPIznUBY1NnYZDmv/OL0sINpRDHJ+AOV6ql3wMsS7Z3eKZmdisssiiTv/YwuxjyZUEiAVFBqYHm67z8JXbws2ayzZEs/5i7B/0orDpLUHQIsbCxXkSI05Opv/0rbA4lzjZJWGAGMwOxWc75FWD5clIakaKDMGphsH84QZVqgcE3wX2RdJvq92dJajxJo41j4MrUL38VL3lL3rnX/yg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xbTlCQGtfirLcereGu77XLUfeIP1sO4pDHnx8mrxqoM=;
 b=Kdu7A+CETT+f79usWq0roorOyHTnKrhWXgOkvz9Z9+ymvzvsutgSAfcZ3mdVTfqI97zAjXOw7zgNGgyRa5V2VYJkcflCdx88VV8O5a9po27MuCWq3BtV0CndXuW3qdlopVlvagnbNsEgdGK1TuBVYx/9ahEOdDNA9Gu5CRcj/JA=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 13 Sep 2023 10:20:24 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Message-ID: <ZQFwyG3FwCzpezTR@MacBook-MacBook-Pro-de-Roger.local>
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <809ef122-7060-c033-e50d-6e372ab89de9@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <809ef122-7060-c033-e50d-6e372ab89de9@suse.com>
X-ClientProxiedBy: LO4P302CA0020.GBRP302.PROD.OUTLOOK.COM
 (2603:10a6:600:2c1::9) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH7PR03MB7106:EE_
X-MS-Office365-Filtering-Correlation-Id: e491b1f3-cc84-4248-85d9-08dbb4324a53
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	thHI0n6qzOrbpiTjkTtA9OPf0/eUafLpKqX775S2GPD3SvD8tDsr9bVMRHMt3CvZ2EqdWDX7gWv1ju2woxiIeQI8uG7D6f5K7YtFxma6/QuNq4WrKHNQfWlwHN2FFIQqvsHO4MG+YyrUQ77deLfU+7JxWPDNSBPs5WGM/+lYCIjgp/SN9l5oc37qA4ehITTUp2fdy+raeKZ488RcDtu7SPEGD0l6uAyyXQbaS5aIfi7uwQzjDs6LZtA/4cjppLua5gPFO/amG8GEiSJ8GEPasbJm0JygEYbDeOjtuWOt7MOTv5ulIldbupaobRWgsQ/aBWNiIUrrCiEPWmfyawyMQGSoVQkRzvDX/lrf5LdWNbdubSd6VKGiBT4v7wB5EiR++HyRSLTUFEpeOQIlTNIKOviPLr/QgRINr1vtU6rZ/pbSsZnWYE5moZwpbuM3UlxtJPBJLFLMXiHWuBTN8b0hi1utbOJH+yXSBrpjsulU4n4uEeOEPQ0dqNBhYrRe5j8WTgVQLEnm5Qd0/hM16jHu5Hf7ARP+VF+vGAGk97oMYAfDvm8oR5SpzbpivcZzEgLD
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(346002)(39860400002)(366004)(136003)(1800799009)(451199024)(186009)(5660300002)(8676002)(8936002)(4326008)(26005)(6486002)(82960400001)(6506007)(53546011)(6666004)(9686003)(6512007)(83380400001)(6916009)(478600001)(316002)(41300700001)(66476007)(54906003)(66946007)(66556008)(85182001)(86362001)(2906002)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dEYxaTI0VnJvelI0M3pKQjd3RFRDNzhYUlgxOTZOQ2hBMGhpNHJzaGV3UFNz?=
 =?utf-8?B?RVZJNDRhK0F3dlZQV1QzWlJhTzF0QXltRkh6L2gzZDRYc2toSytEblhDdmln?=
 =?utf-8?B?c2VRaVZYV3ltNzc1eWlQTkpYdFkxYTFrcXlRVmpQRGs2SWpFK2JDYlltR1E4?=
 =?utf-8?B?NEp1UUdvRXlGK1ZtcGI3TjRrNTJ5cEUrU2tkV0VNUXcvbWIzUGI3V0NaMmxP?=
 =?utf-8?B?dFlWczZ3WXVoMDhLY2VxOWo1dGc4Ui81bUhReVl3aVlEMXdQUUlmUEhrT0N5?=
 =?utf-8?B?Sy9VNU5Zd2p4V01pdkd1Qkc2U2lCZ0lvVTBLR3ZEL3lYaDRnbHhCMk9xNFhh?=
 =?utf-8?B?M2RqT25ER3ZSQ1lNMWlOaWZhcE8rZ2o3NWpXUjVUOXhMTEtvQXhseC9SSVdQ?=
 =?utf-8?B?SjM4M2pLMzBhSVpmeDBJM3RFakorRWtRcDRicW9XZ3NWdjQyK1R1YTNuTGdp?=
 =?utf-8?B?SENxRnlKbFFYU0lxUURWTXlNWVVPc0xrU1B4enQxczdna3EzTnFGSjE4bCtI?=
 =?utf-8?B?V1dlNkpEemgzLzFINXVRUzVhYXRpcDFxcjV6SFpBZytlUXlMSXVXWHdLSG1I?=
 =?utf-8?B?Njd2S1lRMWI2am9uN3dlL2luZFg5L0t0OHZkd1J3K3ZhY1NVakpIN1pESUY1?=
 =?utf-8?B?T21weDRjVHpCQW02d2NMK1ZQUlNnOUxhYlNtc1RsTTJscW11Q0llTmxiTVk3?=
 =?utf-8?B?SGpKUkJBcE5CZDdLTXRGUy9Ybkdrb0orYm1QMlgyL1VobHA0NVUxblNLanpK?=
 =?utf-8?B?ZEtnM1E4V2FEYjlzRWE2YXVoSjdvSS9lMDVuQm9DM1BXU3Y3MFJDd2E3Ynpl?=
 =?utf-8?B?V1YxU29sVS9acGNwdlR0Y1ZuN1BUSUFHVXl2cnhGaWZ0TkY1c0NYa2cyMW9h?=
 =?utf-8?B?cTE4bFpHdWRobXRjSUlhRzZ6V1dVSmxyMDBiREl2cjViMXc0M0NmcFF1STJT?=
 =?utf-8?B?bkpsOW01NmF0ZHBlMXR0K0Q3NC9jeTJGeFJubWVJOHgwUno0RFdVWXdyQ3Qz?=
 =?utf-8?B?d2EyRXZDNXpwZ2RabTZHUjVrMHhHQm5IdnhvNkgvZGRjR3R0c1R3V1U4azJz?=
 =?utf-8?B?R2ZQanNiRTNxQzBOVVVqTHhsVGtKdEVHL2FaL3R4bldlaUFXTG5TU0FEM2Nw?=
 =?utf-8?B?cDBtTVQxRDVrV0d0YUVOZ1lnY3VqK1BlQktTdmpDek4zdEpHdnpsQmxKRGxy?=
 =?utf-8?B?b2d1d1RNOTdEaWp4U3VSc3B4S1o1K2NmUHhkOFU4cmI3OGlsK3d4bDEwaXlS?=
 =?utf-8?B?dW9acS9qZ2xwcmpNNG8yeXFMeDcvZkdKTlJmaU96QWFycW1jVW80VWZqbkRR?=
 =?utf-8?B?V1Fnb3dmN3psQ1ptZ2I5Mjg0TGdmQjBCditrUWRCNTBHRWU3cmVMOU1aUzl2?=
 =?utf-8?B?empscTU0cThPcDBFYkNJVFMrWW5GQzhuSWFVM1BsdzNFV0RjRFdvRWg4YS9m?=
 =?utf-8?B?eWFZb2dRblovWW5zNVA2M3B4TXppb2l2MnBrd01OWTh3d3JzaFBTdkZjVGRP?=
 =?utf-8?B?MWVrSVhCVk8rSk1qTWczUXg0bS9rR0s0ZXcxa1FrbmdsZXg3aGdJa1pCM0lX?=
 =?utf-8?B?Mk43bzU1alRPVThBbDZYOUtBVjY1N3EwUSs1ZTMvSUthNDFWTTZrK0h1NUpO?=
 =?utf-8?B?SUNGblJFdENPZHB6UHdpRTNScDJqQnlrT3VTeHZoNnN2L3crRG9oVk1zdG5I?=
 =?utf-8?B?cEJHOEpNLzRybjV0V1NmaVJidHRwWDdUdk9ORUpXcHpUenh1T3FMaXBRN2ZU?=
 =?utf-8?B?RWpKcnF0UzJ2d1orWWxUTDU0eGY0bmpBU0I4T0F1WFVxcGxQZDBtUVBPLzlh?=
 =?utf-8?B?L3BHNVNwandGRy9qcGxMdno5bmhFSGkvOVZQTjUrQkVuSmt1UkJYc2lCU2pV?=
 =?utf-8?B?REN0b3Q2dWk1WTl0T3FkbHQ1dGtYaldkZUJsUTNROGszZmVVMzNPbTF5aTJi?=
 =?utf-8?B?WERZTEdDRnRuNmhsNUtEeDNHTnd0L2VkS2xaWUJDbEhxZElHKzJ5VlVvWEVp?=
 =?utf-8?B?eHJKMDhSaFVVT2EwR3BYbWhTd2lrdldqREhwZm1icWM0SlpWYnBpK3BhcEFo?=
 =?utf-8?B?dTJxK2g2ZlR6WUlWenVnRk5yQkpkY0ZIa1NjVnBlNkpSRzYxYVZTWnczekE2?=
 =?utf-8?B?UG4rWWRRVTM0MEUwbU9pTG9HMHZBYUV3c1VUZzlZdnhhaUVlaFcrcW9sQU9U?=
 =?utf-8?B?aFE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	4sYf/frugkmAtpQwGB+VAok1ud2bOwnSqcJj4XRqQgdc9L5/LfGr+D4LlyGpHc095WvJQIw1lu3D0MTO40PuvhreZd6dmskUSMbhT5cerHvr4u7xM7UCT6vyCNvFJr2NIGdjOqHT3mfdsH1HrhwArEBw46o0PUsSz5POfyVOOQLmopI3lxpSccjHu+cQ8mwBzh/IwQHD4bXsfyrkgmPJShJ0pEROsxQogdY3I9pHgsm2O8ww5QPoCZ9545POp3uBIiZHiFMnvwbfZcodRw9VgEj3x/sA/94gHdGD5E9a6IVfa3/kjCbuc4KBE1vBS0oVroK3/vOf84q9vx3oZ9+SHA3Xn44SPyNlyJJTmrxwGUodxqhpig5vecIfwVsZKx2z0yp5uxJYbpDsiL2Le8GUMotLpxDH6Unk6Dnv1otU6hAdRlCtO7bd5JRiQ862YizovzA+692dQEI5u492TaYTdis2HcZTCXz0pGzzk2MB064BLdOFVPmIKVZKqw9PPUWLNLTYP+VwYS/6OpC+rdhQYpomYy8vuasmBDg+lNj4G1kKdQkay5/D4bc0BMW+5VwOPtdoFB/oLGNV9jH9cNVRAhHaz7SeTriBaOLyJHwe4pwu/Coi0hcozEglIQXIulWhGcrGHFtPVgWNOXAHnRMLMFIh4yUWuHrRxs0803/8i8O0tSfdYoXD7BDs4U2ovROjY3Td6xG1udtzHbw3taG8a+LGflPRmJ8Tn3yWbQ9fqxIYak1z9Lm3Cko7BnKvKBhNX/16Gcj6Exw3VNfBAESK7p3TzsMVPC0ssdFBDutxs3PqMlvTDmvT+5h2vM8bJU0V
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e491b1f3-cc84-4248-85d9-08dbb4324a53
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 08:20:29.4258
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: E3xRU1tyOZdvIMyiGP3yJYPnY3lkma5OA+zvFtPBDabEFzf3nbw3NTV2Ug5iXrRIv+93+L4Ddv2arZTWPDPt+A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7106

On Wed, Sep 13, 2023 at 08:14:46AM +0200, Jan Beulich wrote:
> On 12.09.2023 18:23, Roger Pau Monne wrote:
> > OpenBSD will attempt to unconditionally access PSTATE0 if HWCR.TscFreqSel is
> > set, and will also attempt to unconditionally access HWCR if the TSC is
> > reported as Invariant.
> > 
> > The reasoning for exposing HWCR.TscFreqSel was to avoid Linux from printing a
> > (bogus) warning message, but doing so at the cost of OpenBSD not booting is not
> > a suitable solution.
> 
> Why is the warning bogus? The PPR doesn't even state what the bit being
> clear means; it's a r/o one. On respective families it cannot possibly
> be correct to expose it clear.

There are other bits in the same MSR that only state the meaning of
one value and are not r/o, so my take is that being clear means "The
TSC doesn't increment at the P0 frequency".

Since it's model specific, it should be possible for some models to
have the bit clear.

> > In order to fix expose an empty HWCR.
> > 
> > Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > ---
> > Not sure whether we want to expose something when is_cpufreq_controller() is
> > true, seeing as there's a special wrmsr handler for the same MSR in that case.
> > Likely should be done for PV only, but also likely quite bogus.
> 
> Well, keying to is_cpufreq_controller() is indeed questionable, but is
> there any reason to not minimally expose the bit correctly when a
> domain cannot migrate?

We would then also need to expose PSTATE0 at least to make OpenBSD
happy (and any otehr guest that makes the connection between
TscFreqSel and getting the P0 frequency from PSTATE0.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 08:35:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 08:35:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601072.936973 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgLLK-00007e-GB; Wed, 13 Sep 2023 08:35:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601072.936973; Wed, 13 Sep 2023 08:35:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgLLK-00007U-DS; Wed, 13 Sep 2023 08:35:26 +0000
Received: by outflank-mailman (input) for mailman id 601072;
 Wed, 13 Sep 2023 08:35:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgLLI-000073-F1
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 08:35:24 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20629.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7a65d793-5210-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 10:35:22 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7624.eurprd04.prod.outlook.com (2603:10a6:20b:291::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 08:35:19 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 08:35:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7a65d793-5210-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LvEaghUNuCUNf6scBtcxAbkj2yNhyxUJ0DeO3D1VH++/QDGZnO1taoA3uZr5KY6Gay4Sobv8EcGA7/VXc0vV5NNUTMxNLyYPwFZN/Mpa4GGRYQgPE7+3nRvxKYqObIaFgbfY/x6+kIqp9GMxJ8HRuHFnNR7VALCu/xgRlGiQ7M7iMc5Se9I/7Pr/Acgd3Fu/EtK5OWlTuzhOZHOl+GT1kDKyEZ39UrttvNfTNN1Gwabwurd/j2Wtx+JvIqcLBFg0tmdKHcU+wKG8sESy2bon40AbJc6XUBZqypQYa0gW7Nailhjy3Wt43xHB1L+84h9Fubfps4HYpfxpsn4Wzlpv/w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Q1bQXTDcRQIo49K1nvAhUTynBFFpslOn+50ptg0j/eo=;
 b=D42LbD4HLObhUCXsVPXKWyUuK35XhUiaqmITFfZBWtoUXihzDvGyw4IJr6OWhK08KQtrfBshmKGQKGhsbfW2+0z4vo5JmnF5w230e06edga5E28nLs6pj47VOMas+c/XfejNIxrGvIWopq2lCdSTz6FgyNNEesphzaJSlV0goWb0ZEqTU4IgPrhFK5ddAfHeRfQFPckvBsvd0cliUqi2rHJYjgm8AQ4nPhuFVOFE9HZagwxAxrW1DkeGFmxMS1ma35/+IK0yE2vcql4JktpSyu1XeHAdCS+mX8HIUse0TNVfgmzZkDqpL7nV97IntRVTxk5+YFWFyi1GSoc9zXaQTA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Q1bQXTDcRQIo49K1nvAhUTynBFFpslOn+50ptg0j/eo=;
 b=V3FwXqhdn9u7EwEEETfczgdFCBDxGXGRCCHC9TZ7Ro+/K3TbNq9+tPVAcUpdT/VDtk/1GOqA1gmYgxlEQBcenb3xfSzs3TUtuUKgmnrIkQePIHzgVxr4tW4iJUbGIzm70I+TkN+kEut3wxQ6ijJbT3KHLvwcELvi+xZzHCVPOdtDlh4swHdbdFOV6LNwoR63twjna7j0PAs/kcag7amiLHvS1JB5UsdZHebUlbcZUmBkllpcDyCgZPVFaq1VbczbXMSSznznctC1IhRpoXsdVoT7Z3P/5eeTuBLPGSEypPYU23IAaZbO3Cedb0FP5UfriBQbJ59IMAwQmegmvcLnsQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <99bae9ae-1711-28ca-c464-e638f0edd7a6@suse.com>
Date: Wed, 13 Sep 2023 10:35:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <809ef122-7060-c033-e50d-6e372ab89de9@suse.com>
 <ZQFwyG3FwCzpezTR@MacBook-MacBook-Pro-de-Roger.local>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZQFwyG3FwCzpezTR@MacBook-MacBook-Pro-de-Roger.local>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0118.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a8::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB7624:EE_
X-MS-Office365-Filtering-Correlation-Id: 79240f45-0127-435b-5131-08dbb4345ce4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wophKMwVIVndbkgkM8tbzQ0ruslGRczRwJ9akkNM/8sPibM61C4zF5TN3rf2lBX9/w7blzwjfUAqS1NYxT8popBVP6v51newHq5tnlFgtoUZSb9b+YeoU2ubL2u/7RyzVZZnR3b+VEPpqsagnRhmB6HxRiKIQhEQbnoFT5oRM85mA1XSmqe3aZvOdRqQesLBopu9tet2pXFzQ0HnB9V19W739+gsziVo1kGK0YOXSq30Z0OwgfUKI59xlTnYoGlDmoAaVRTSTktfP8wqUikTtJXmbxgbU8xwbllrsnKi8cKZDqs/pwdtBYZUOLdLx8wXK9kdJ7Xn2LBcuTrLylEraN7SkhM8kjE0lXouskzggvrKjKH3GyqmGnBya/j7Bjr/BELhc/FkvOjsPc8GZfKkymTwzZ/VpQvZMkIoNKfW7DaLxmPr8G+u4Q/Aa2+zpaZ7Osb143PBTN2IyUwmhx/PyHxfREZVE0QHhp9lwXWca7EJfpPDIxmpBeevD2pFWX5LLpgLHQBe9XqqPhW2HSK8uxNmFdFthdLVJMFaN7CzhFB1IEQxHvbIL3DL5NZMq1k213Yf5kquOSCOrX0wKiKPO4nlrl3+dYmTq9I6amPyqMzg5YZb7fSA37MSTWNRVp3vOoYmW9j1qRuR3AO9D2ECKw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(346002)(376002)(39860400002)(366004)(186009)(451199024)(1800799009)(31686004)(6486002)(6506007)(53546011)(36756003)(31696002)(86362001)(38100700002)(2616005)(26005)(2906002)(6512007)(478600001)(83380400001)(5660300002)(4326008)(6916009)(316002)(8676002)(8936002)(41300700001)(66556008)(66476007)(66946007)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?N3JwU3BBOWhZejBuY2E1TzhDL2QzWXRpcklieGdqQVdLQzRJQllvZFdSdE5x?=
 =?utf-8?B?eXRTNklVYk5LME55bGdaNFBTZjZlZ2ovQkdjUlE0Ny96UVhKQ2o3OFFPS3hP?=
 =?utf-8?B?L0RVVWZGcTFaVDVqakw0dHF5VUpyV2lKL3A1ZysvWCtkUWtLczZ6dFJLZk0y?=
 =?utf-8?B?M1VUeEsxNkdSa25ZVktlTnpDRDE3MmxnT3h5TkN2TzdvNVMxak1sNUJtM2Rm?=
 =?utf-8?B?LytpUXJHY3NmZWlwSTZ5ZkdkZFFreFg3MENFNU1DY25HN1QrcDBKMmV3YVNM?=
 =?utf-8?B?UGdhTUtrM3JaSHpnUFNDQjlPREI5UzM4eWVlUnZWNHNOSnVCNDVIOGMrVjl2?=
 =?utf-8?B?WFQ2Z0lWQ2pOcFpYNEZwazBRMExUT1dveEM0WTJ5dFYySktKMVQyZUJ0dXp5?=
 =?utf-8?B?NEg3VUFaaWo0YVgyNjhwZnVESlVRU3ZhQzZPUFhkYW54b0E4WGVnNVM1WEdP?=
 =?utf-8?B?emhhUEY3SEROVkl0NlppOVhSczRMK1pMekh6OGFyTkRMcDNhUGI1NlFvTTBt?=
 =?utf-8?B?bHpkclIyR3NsdGc5Rmc4N3pQNElVYUJRYzFuZFhpWTg1c2NHamtpQkpPL1ZY?=
 =?utf-8?B?YnRHMVFva29Ld1lDTm9xUUNSd2VEdXdVQW5NdmE5WTdlMFhDQnhrd1RwUVB0?=
 =?utf-8?B?Z1lRcThLamtDRER2eHYvdVpiNXhPb3B4a0lOdE51THBEVUgzWFZQNmV4c0Jj?=
 =?utf-8?B?dEJqNUtjenU5ZGMraXVSWWxRT3Jpbm9veG4wN3VzSFpFQi9WcGlzNGxOb3ZX?=
 =?utf-8?B?dVFUOExzNmYxdm1GQTEyZk0vNUxsbEZpbHNwUVNuR2V3QUlCWEVmTmludUJB?=
 =?utf-8?B?UlNjOWxaQlZTWVQxUFRpWlhGNytUOUdiQy9GcHUrYzM4SE5rMThYcFV6UjZZ?=
 =?utf-8?B?dW54VExTRzBMV1Jodm9RRlg3SzEvYU1vcjVQWHZFbEs5cXNPTzF4OUVTdUZy?=
 =?utf-8?B?S3pDZjhmZ1BQdWMzUGE1cGNyK25YdUFpeGpETC9UajVRNjZJbGY4SEhkekI2?=
 =?utf-8?B?RE12UWtIbytxRDRsQmpnWHpVTmZHODcrNzhKYzVjdnd6S294TkRybW9Kd2Nr?=
 =?utf-8?B?Z3Z0UWRFN2FTR3RFQjArMStkWjdEc1BCbFBXbWczNmc5U1dpMEppL0VrSXI3?=
 =?utf-8?B?UllDTC81U1RsMUZld2IwYlBqSENidnZtOGhsUVNtK1NPdFowTS9PeTYrdEhM?=
 =?utf-8?B?ME41SXNBZ1NqcHJTRkhVUzVIU2RVZ2xvbE1zRDhHQXJLa1hVMTNVcHEwU1d5?=
 =?utf-8?B?YVc5MzVrRGFJeStVWlQ0ejFEQmZKa1B6c001YlpISC9lcGsvWGhHVjkxL3Iy?=
 =?utf-8?B?RFhqZGNyU25RTnQwSTg5dVN6NWV0anJ1T0E4eVR2RUR1SVhPYlNuekd6STNH?=
 =?utf-8?B?L3cvTk5PaFRpZXFBYkI5TmRWS2Ywdy9QUzdjWm1RcUljdDBTalUxS2ZLREIz?=
 =?utf-8?B?RU9FbHdBandCdWpqYnFJaFh1MEpUVm1tU2huUFU3TXJkdmxOMnd5M2lldkt2?=
 =?utf-8?B?YkU2M1MrTGphS3RtWHlkdGRUVExzaWROTS9DNERTVjZVcFd5NUVSREVPMWcy?=
 =?utf-8?B?MWNiUEI4M25hTnFiRTYrejZBSlZmY04xMXVOWFVGMzhnVDJUMlZZYmJrVWFV?=
 =?utf-8?B?WnZFb0RNNzhlZVNJcXJPU0svOFhYaGFGZkhyS3lxbUNYdmRGSGJzbGZ3SXhV?=
 =?utf-8?B?WlVxK3NVazBpZDVBZHB5MHlQSWp5azZtQVhwYzhHR0FTcE42NUJoeHdvYi9D?=
 =?utf-8?B?WVpnaThIa29PVm04dmNXZnoyS3MvOG0zL3pEV1NQVXZXT1haazFJL1BMN01u?=
 =?utf-8?B?bVYzSkhvMUp3d0ZMZ09uUGMxdXhHRWc5SGR6cXU2L1ZtNVFOL04zRFIxK3BD?=
 =?utf-8?B?WTl6MG92Z0NLV3VKck8vWG9BQjRtODJUZW1jektldFR1cDJWREZOblM3L1Vn?=
 =?utf-8?B?WWYrVlF1TEZmTzk0V3B1a3FmQ2tXVG9takFCVENHc0syMFhNaHZEZXF2TFVL?=
 =?utf-8?B?VERFdHZJbDJoQWladUpjV0ZLSXgxbkloTFM1b1FnamNacWRLUXZ0TnVXMUs2?=
 =?utf-8?B?RjN3cHJLdGpVcVRwZU1LSUVyRG1WblV3SUtUUDhKcEVIbi9mZVBjNW9Ld0Iy?=
 =?utf-8?Q?jdCNuCd37yR2c5pyaBUZFuUVI?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 79240f45-0127-435b-5131-08dbb4345ce4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 08:35:19.4112
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: uQmy0WcK9AVsMF8d3Ls1cX4wmdOxxODIhpx6pHIdOuqLxgN2ex8mHMTqCcUFllO7DD0n8zHaAEqyT7XEuNVIDQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7624

On 13.09.2023 10:20, Roger Pau Monné wrote:
> On Wed, Sep 13, 2023 at 08:14:46AM +0200, Jan Beulich wrote:
>> On 12.09.2023 18:23, Roger Pau Monne wrote:
>>> OpenBSD will attempt to unconditionally access PSTATE0 if HWCR.TscFreqSel is
>>> set, and will also attempt to unconditionally access HWCR if the TSC is
>>> reported as Invariant.
>>>
>>> The reasoning for exposing HWCR.TscFreqSel was to avoid Linux from printing a
>>> (bogus) warning message, but doing so at the cost of OpenBSD not booting is not
>>> a suitable solution.
>>
>> Why is the warning bogus? The PPR doesn't even state what the bit being
>> clear means; it's a r/o one. On respective families it cannot possibly
>> be correct to expose it clear.
> 
> There are other bits in the same MSR that only state the meaning of
> one value and are not r/o, so my take is that being clear means "The
> TSC doesn't increment at the P0 frequency".
> 
> Since it's model specific, it should be possible for some models to
> have the bit clear.

The code that's in there right now already has a family >= 0x10 check.
The Fam10 BKDG says (among other things) "BIOS should program this bit
to 1." That, imo, doesn't leave much room for the bit being clear once
an OS (or hypervisor) gains control from firmware.

>>> In order to fix expose an empty HWCR.
>>>
>>> Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>> ---
>>> Not sure whether we want to expose something when is_cpufreq_controller() is
>>> true, seeing as there's a special wrmsr handler for the same MSR in that case.
>>> Likely should be done for PV only, but also likely quite bogus.
>>
>> Well, keying to is_cpufreq_controller() is indeed questionable, but is
>> there any reason to not minimally expose the bit correctly when a
>> domain cannot migrate?
> 
> We would then also need to expose PSTATE0 at least to make OpenBSD
> happy (and any otehr guest that makes the connection between
> TscFreqSel and getting the P0 frequency from PSTATE0.

If any such OSes can be used as Dom0, yes. And as said before, I view
exposing PSTATE0 (with zero value) as a viable alternative to your
partial revert anyway. What varies across families is how many PSTATEn
there are, but at least starting from Fam10 PSTATE0 looks to always be
there, with the top bit indicating validity of the other defined bits.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 08:50:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 08:50:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601087.936987 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgLZk-0004dm-V7; Wed, 13 Sep 2023 08:50:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601087.936987; Wed, 13 Sep 2023 08:50:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgLZk-0004df-SL; Wed, 13 Sep 2023 08:50:20 +0000
Received: by outflank-mailman (input) for mailman id 601087;
 Wed, 13 Sep 2023 08:50:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Rq8V=E5=citrix.com=prvs=6130a4f39=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qgLZj-0004dZ-Sp
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 08:50:19 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8fc2bf21-5212-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 10:50:18 +0200 (CEST)
Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 13 Sep 2023 04:50:16 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB5909.namprd03.prod.outlook.com (2603:10b6:510:41::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.38; Wed, 13 Sep
 2023 08:50:13 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783%6]) with mapi id 15.20.6768.029; Wed, 13 Sep 2023
 08:50:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8fc2bf21-5212-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694595019;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=eIDU9PvKz75Czn16vTOKBJuKw43RBb6VNLeUW+qszhQ=;
  b=FPIwz5B6J1k1Tw9wcGojFjzXdQLnVUG7Q2zY9eLdpMoK1QdIUxr5rfYJ
   OOjyae3vr5DprBLn6jk+SarpgjhYd39V5N1QPzWx5MFhW7apA1FspXIBS
   RzpQzaZ9JKsEFpz458qz66uBYnRcwiUDG/UWlOo/tME5Js/yDn621GMmI
   M=;
X-CSE-ConnectionGUID: 2dEA29GZQVKW+ncJ4SRh2w==
X-CSE-MsgGUID: tiykFE6iQ3Ole55qP3PATw==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 122908094
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:aMXM0q0mARbtjTmfh/bD5SNwkn2cJEfYwER7XKvMYLTBsI5bpzBTn
 2UfCjyPO/feamL8ftkkOY2z8EkF6pDSx9AwGgo/pC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb8nuDgNyo4GlD5g1nPqgS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfW21j3
 KZJBwI0UDO8xOS94u6AcOk2mZF2RCXrFNt3VnBI6xj8VK9ja7aTBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqsy6KklwZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LWexXOjCd56+LuQ6v97g3O+mG0qUzoSWAbmuMHismeCRIcKQ
 6AT0m90xUQoz2SpRNTgWxyzoFafowURHdFXFoUS9wWl2qfSpQGDCQAsVTlFZdornMguSDogz
 VPPmMnmbRRquaeQQGiQ9Z+Vqy2zIikfKWIeZS4CQhAB6tOlq4Y25jrDQ9NiOK+zkNzuGDv0z
 iyKrS4xnLEah4gA0KDT1UDKhXegq4bESiYx5x7LRSS14wVhfomnaoe0r1/B4p59wJ2xS1CAu
 D0OnZiY5eVXVJWVznXTEKMKAa2j4OuDPHvEm1lzEpI99jOrvXm+YYRX5zI4L0BsWioZRQLUj
 IbokVs5zPdu0LGCNMebv6rZ5xwW8JXd
IronPort-HdrOrdr: A9a23:C2nMv6pIIay6YP1ILqh5dT4aV5oieYIsimQD101hICG9E/b5qy
 nKpp8mPHDP5gr5NEtQ++xoRpPwJU80hKQV3WB5B97LMDUOl1HGEGgI1/qA/9SPIVyaygYUvZ
 0LT0A1YOecMWRH
X-Talos-CUID: =?us-ascii?q?9a23=3A0MZskmrelo9woQjWoVfhm1DmUZopX1SHnVjiGnG?=
 =?us-ascii?q?bNiVvQ5/JcmWQorwxxg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3A4IJvOw+LM3DmcVKYU5+gdiSQf9tp8qeAJR4MqM4?=
 =?us-ascii?q?hv8TZaDVIYA+0sCviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,142,1688443200"; 
   d="scan'208";a="122908094"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Z6f+hPsFtqOSp5i1hOco+JvxMnr8QqhPmq25ObhWNFNu1ug5vvaUxieBI2TFwtM0IFrOXSoiBTj2sWbSbI59Plw6TQsswLsRLG1gD3+/hfMVEtI+ElOkXHlmPlrqZ5fjOWrjsa9UL3/a0P7aKJAvxt9YKzjoyDTfYaSiZ/sTGQhHmLEgsneLaN5ftadfPtVIp5Lc51/9dyJMr68GDLUNB+SAhIYt2KTWyeYTY1nLMpWa52zNHLkD7txznPjnKYFtDVML68Kl+/PRBU353QoxNJORGroQFUO24n//QMc3e2vJn5pBSFqbptGldzkdz1kSZsSSv1C9hVNoSgP938vZvw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=N72GyuoBH7n5uGDp7khnzBdKkWVb/LJ6+Uyvl92gzTA=;
 b=niGqT8DlQJndR+UusTM7eyphi7sRfuPbhwlvMF510JYUgbTKAXgxU31QBbHyBPADxwkH5XI4UpiE4z2FlFI2NotFleSQvizqHv6RScq9n9AOrAbeqE3nqDkxCuljSEGcdwX6DvUBDE1GD8yc/332XlXPFLYpR/KmPZUbo3+am86JBEoAnWOmLZ5Fn01vpiHcz8/ZT2hm3qmmgriD2G4nHNdmvKmHvZyAU4RNHunOKskCp+1pq9Iy3QsqC45Oy8vgtnihDY+MvTqO9DXvwnQqKi6Bv/jTB3JTlT35GsW+wltcIoeklSoOjGG3oGHsQ9YG2osH70ZaFZfYfoYNPNgsNQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=N72GyuoBH7n5uGDp7khnzBdKkWVb/LJ6+Uyvl92gzTA=;
 b=FhFw9IZ/QgG0pnGuHr3p5UZ4MZeyshZW/Uq3C+uPfMzXLuJzxPSGUdOX3M/udrmfCZ1C0RLA1POdCYTPFXK+/2ZhY+MsH4ZkQGDF6Htw9j6Weba4KOalCDhYe0/WUfH9u55lD0dmPZslxWI5ziHLTXDvmEU2wBjsUBou4oendTI=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 13 Sep 2023 10:50:07 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	solene@openbsd.org,
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Demi Marie Obenour <demi@invisiblethingslab.com>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Message-ID: <ZQF3vyCtF9lPaV_8@MacBook-MacBook-Pro-de-Roger.local>
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
 <2cfcda8f-bd51-085b-997a-0ff31434d460@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <2cfcda8f-bd51-085b-997a-0ff31434d460@suse.com>
X-ClientProxiedBy: LO4P265CA0115.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2c3::19) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB5909:EE_
X-MS-Office365-Filtering-Correlation-Id: 3a6147ae-1a8a-4ec6-3fb9-08dbb4367189
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	uo8n3ojmdHqyf22RkLpEGn8InFBMuQq+apMrB/XHUJ1oS78D/zxPc1scn4XE4np1Bi8nG5fOu6yKREthPIJkDY1srNJIHioVhDpsw5THMtj+kHrGaVseH8mtJrV2YtVba3G37f1/v1zGOEEKs32f3DrxiEXrE4Bw8xNqWV7tgmtHNQFgjOGVPLJnYXfjpz+aiTwyHVuInGiRUH84g+4c6RckFQ+JywmWwtmeqQU4ZzCIfcxYzYWORkqv610vpKfvQhoTcwYRQB8nrEpuOpugbtwEW92S6uRo7NF+Emxg+6SPA/uraqiYodMOutBB5ic7QWNSr5CwjhIe9rUpXHC1ri3LKP/ArivsX4wGZhnsdd8ZpKNLJqZJo2pfaHs3ELnCD+yGhodjDAWEiiaBUuD0timTakXubc0UTNeKTtlK6Fa/SolCtDyorBbhKXWDILUxQwgPdNxDBxwTxL2thR1YqkBkGirI9h+T0wfkYRasmTZlpp58K2bsIldGo2csYvlc/ywxoJLm4G7gRt+/+4DGKjmP1SjLHX92FaD0Lhf9Ji3WQfzAf3gwIdgMqlt2i6ye
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(376002)(136003)(346002)(39860400002)(1800799009)(186009)(451199024)(53546011)(6506007)(6486002)(6666004)(9686003)(6512007)(478600001)(83380400001)(2906002)(26005)(66946007)(66476007)(54906003)(66556008)(316002)(5660300002)(6916009)(4326008)(8676002)(41300700001)(8936002)(85182001)(86362001)(38100700002)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZC81RU95dTg2SmxQUGUzaWVxMFFueHVpVVM1dm9tMy9YNE9CWVBhNkhQeGhU?=
 =?utf-8?B?T0VRZDk4ZmdRV0ZiVWVtUVE0VHVqQ0E5R1lqSVVsUXdTbkFUUVR5Ui9sSGkv?=
 =?utf-8?B?bTlRREFNU3lFT0RZSi9peWxRNWFIa2pOemdDdzVQMmwrWnFFY212amIveXJs?=
 =?utf-8?B?eFlMdXV2dXZ4b2ZGTXR5TTNRNlFiakZOTVgreTR0VkorbUlnN2VZaDE1WEcz?=
 =?utf-8?B?cGFjQUgvS3BjUTRoUUM0bk1ubjRtYVZZOU1LL2poR2Vscy9JWis5eXZoNnNu?=
 =?utf-8?B?OG5TZnMyVXNGSEFGcnVNNWRJRysyK1VXVDVieU5yNDZMQUpnck82NDQ1aWMv?=
 =?utf-8?B?MFVSaGFzdUdYZldrVmw1YXk5Mm5OQW4zUnRHSld1NDZqdC9xamx3dUJZZXBw?=
 =?utf-8?B?VWxKcUtNY2x2cG5aa2tqSnZLdXNUbDRCQ1hJaEJJNHphcm50cnNEd211Vkhk?=
 =?utf-8?B?aXRhTkt1dkdxbWF3M0owM1c0NnJLakVvZktmbFp3WDJtMENiV242ekFpeTFw?=
 =?utf-8?B?U0FkVXlGZUN1SFdialdTaDlRS0M3c09sb3U4eGdmU21KVDhlMTZnR1R3QmYx?=
 =?utf-8?B?M25SU1FFM3duWkYzQXdMemNCVlIwOEExbE1ETTIzUnlQM01WeEM4M3g3Ym45?=
 =?utf-8?B?aW1zSU8yQ3ByU3VRUEVzR0krREtUYlNWRHRLR010aHZoV1NZK2ZNNmdDTHJB?=
 =?utf-8?B?TVgwTStwY3JqcWxkQ2p4ZHM5S291QUpZdW9YQ3lHQkp1NkE3REJCVUErS1cv?=
 =?utf-8?B?bmZ1dzkxTS9IdEt1SmFwMDFMLzdSTldyemNqVGgvUWRzR1Z1aG9IYkNPMllG?=
 =?utf-8?B?aXBmN2lFREJsQ0FFT2pkYnhWNUpsVlFPSk9ZenFpRmFWZTRUd2dtNFI3dndI?=
 =?utf-8?B?SkxXU2Z5M2xWRGcyUlZId1JvekJuRmNSL1FNTEw0bXBWSG5EZDRqYUpMWEZL?=
 =?utf-8?B?c0wxSUNhbUpZdnorMU9EMkdLVnVDOHhpQ281aCtmNUlXeG9VaTRBSTBOVm1n?=
 =?utf-8?B?Q3p4Qm9KcGxmc010WmFTTnNtTWFQNGI5aHlXak5WWjJPNHBnR205TzJEY0xT?=
 =?utf-8?B?OGNIRzk4Y3ZWN0h4Zi94Z053d3hEQnBoTDRsci9jNnNCWWVYYjRaMnNNR0s2?=
 =?utf-8?B?UGVWeUdtdFpDbHhaMS9SOExGQ05WUzViWGNkZnZWb1hYNjZOQU5kV3U2bG44?=
 =?utf-8?B?eUttM0lDcmd1anJYaGhZZE5xWFE4VityckJtZm9HNUlPaDlxMThGOUlDYklw?=
 =?utf-8?B?RnA4WEsvaWNkNEFoTWsvMTVHczRCOG9odGNXSEg2dDJFdmgvU2lwaEMvMm1Z?=
 =?utf-8?B?ZlFCQ2VYNHN4N0FXZ2VoelR3amRweWMyV2daVHBiNE83cnFZdStNZWtpNWxN?=
 =?utf-8?B?d1l0L3Z0MlYrV0xHaE9sU2loUEhKR1NKTVdQZ0FCd2RhbXl4OEIyZzNxUHRt?=
 =?utf-8?B?YkJmTjQ2bjFETUlkWGgyUTBOZ2l4M3JyQlYxdDZGYS9rSTkrZXh1aTd5cC90?=
 =?utf-8?B?MUdaOG1lM3FTYjd6end2SlVmbzB3WHhxTFhlYzBMOWdDQkJnRldpSU81VzZ4?=
 =?utf-8?B?bjhIRGdoUkdrQWZ0aFZSSHRuSDBDQTRJU25CZ3d5eC9GcExsS2xpUXJBWDJX?=
 =?utf-8?B?dVZIZmhKemc1c1BxV242ZFNJY0FpaVdFMm9JTHVuNEtML0Y3UW5xWXc4c1dW?=
 =?utf-8?B?a3JpNTR5cHpSRTFqWEVKYmVZY0JvM0hHR1ltN3F3cU43dlkya0prNHdJa21z?=
 =?utf-8?B?cFFWNmo5Q0R2dFNvbkhCR3IwOG1QSDB2NFQzV1lIcTBNMG0vVEZmVmZLOENs?=
 =?utf-8?B?UTIzeDcvZ1dCWGV0bE8yci9sdmF5VWJ0cXJvVG1uUmFDVkVZQ2JncFZaZjZP?=
 =?utf-8?B?dHg5emQ5MG55NVYwQlBxV2dZWTQ1SWFENFBSZDVPUFRsR2VxUkVYOXViNEVN?=
 =?utf-8?B?Ui8rdEpPTkdOb2hybkhPWEVjQlhtbTN1eVpEY2RKN3lSbHA3SkNpU0xMRi9n?=
 =?utf-8?B?d2FPRGNnQXpTWVFWbkRRWkRQU2NpSmQwM3ZmeWt6SkhVSUhZLzVoM3RyWHA2?=
 =?utf-8?B?Smd1NVVsMmt5NFpFWDFGZ0ZZWWJxcjRtSzhHSTJLM2ZvLzljSlB4RHZEck9t?=
 =?utf-8?B?QWpvbHllVll4aitGOWhWdEVJb1dBaEpNTHkxT2dwalFqaE1tYm1hREpTMnJX?=
 =?utf-8?B?cHc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	PXfNAU4LOcZ/LYcm85c+QdQWXetnZ/W72cAn2D2EXFu1DQcRKLDtEFObL0OeL/dWYCWMWh9eeWOW1Y4kBNyujFQenFct9Xgrt6wQpKuoa+aj4PEQgU2n0ngRxlXLBvLTby+qDm2KctuNF0a1q5zhDkGJwwCoyQHVYvBDvYvD5MY31Yyai6NodU8fQr//b9XG8uqogPn2O7dYEOzcQx8vJO2TSxiB/CYpTrts2naoA045yyJBCXTEByLiyOcu1U7VcKkqWxkg9RYcO2zXlnWZimlZU/dO2slTyWh05Bg6vRrFysTNP+GNobxpFofivV1EgUH3MAo/yyscebOoIc2I4Z54blZp+ewHo6r1j8uX+rc8LOdNB7LOc7r7uyH5dV/uB6A+5Vnm+DrJHMwAFg2M3Vu5oQC9q0K6o2rka5Oka5KsnneVDFm/zSUibx0JyZ/56dJjpSEIrpKoBdOzuWO3VDIVwxOjgAxyy4H3EluSR4LGq9sXAGy9ypR2pQogeGQZX2EQNbSLQy/drgMu+O4dHyZy0pPTKwY5QQxr4Aqok8A2eecVVsQQlspY3N9YIDG/XzuPgLbrEB+uw/PK3re3owGxNJ7mxPpzyIYwCYItsRbueA637m7kyf++lR9DT29PYF18TSGYPj+/PA4LzmkuS0eiNQ+KJd8aTW96+m5kRqS49mI1qzlunUGMRjJmcmFfbAbOmete7EjyixF62K1dhgSVIHSbLv54w8ypiV6LkBFSy5aeKKoEwpKZxS5gFF4S4aF8Zwir2yCSXghi0zvHxvqPhcVrqrUgWIC6pDwR7tA+UxTeOfcd/8CUHKwQ6XX3++ng+Ew01yB6fSAJ2KUOHfyeKBAed2QxkqSW5a1lnTj/pA3bZ/cikcRPS5KgoVWylCd4hzXd0zMKNbMG+KKf2VcDZHev8dMFlnyXUQ4PNwo=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3a6147ae-1a8a-4ec6-3fb9-08dbb4367189
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 08:50:13.1854
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7Blqh5YQJq65xGsZd8WUgt2b/vj4ii/8fGpWDKwRRNYxElqFaRvFZAu+q7AdJUc3CARLwQgZ6MNuk+e48y1y2Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5909

On Wed, Sep 13, 2023 at 08:18:57AM +0200, Jan Beulich wrote:
> On 12.09.2023 18:35, Andrew Cooper wrote:
> > On 12/09/2023 5:23 pm, Roger Pau Monne wrote:
> >> --- a/xen/arch/x86/msr.c
> >> +++ b/xen/arch/x86/msr.c
> >> @@ -240,8 +240,12 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
> >>      case MSR_K8_HWCR:
> >>          if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
> >>              goto gp_fault;
> >> -        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
> >> -               ? K8_HWCR_TSC_FREQ_SEL : 0;
> >> +        /*
> >> +         * OpenBSD 7.3 accesses HWCR unconditionally if the TSC is reported as
> >> +         * Invariant.  Do not set TSC_FREQ_SEL as that would trigger OpenBSD to
> >> +         * also poke at PSTATE0.
> >> +         */
> > 
> > While this is true, the justification for removing this is because
> > TSC_FREQ_SEL is a model specific bit, not an architectural bit in HWCR.
> > 
> > Also because it's addition without writing into the migration stream was
> > bogus irrespective of the specifics of the bit.
> > 
> > I'm still of the opinion that it's buggy for OpenBSD to be looking at
> > model specific bits when virtualised, but given my latest reading of the
> > AMD manuals, I think OpenBSD *is* well behaved looking at PSTATE0 if it
> > can see TSC_FREQ_SEL.
> 
> I'm afraid I'm still at a loss seeing what wording in which PPR makes you
> see a connection. If there was a connection, I'd like to ask that we at
> least properly consider exposing PSTATE0 (or if necessary all PSTATEn) as
> well, with zero value (i.e. in particular with the valid bit clear),
> rather than exposing a r/o bit with the wrong value, upsetting Linux.

But PSTATEn is also non-architectural, so the bit meaning could in
theory change between models.

There seems to be no bit anywhere that signals whether PSTATEn is
available, as it's my reading that you can have PSTATEn without the
architectural PSTATE_{LIMIT,CTRL,STATUS} MSRs that are signaled by
HW_PSTATE CPUID bit.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 09:17:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 09:17:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601095.936998 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgM07-0000PK-VW; Wed, 13 Sep 2023 09:17:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601095.936998; Wed, 13 Sep 2023 09:17:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgM07-0000PD-Sn; Wed, 13 Sep 2023 09:17:35 +0000
Received: by outflank-mailman (input) for mailman id 601095;
 Wed, 13 Sep 2023 09:17:35 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Rq8V=E5=citrix.com=prvs=6130a4f39=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qgM07-0000P7-67
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 09:17:35 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5a48728c-5216-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 11:17:31 +0200 (CEST)
Received: from mail-dm3nam02lp2044.outbound.protection.outlook.com (HELO
 NAM02-DM3-obe.outbound.protection.outlook.com) ([104.47.56.44])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 13 Sep 2023 05:17:09 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BL1PR03MB6087.namprd03.prod.outlook.com (2603:10b6:208:318::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 09:17:05 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::efdb:990a:5b04:8783%6]) with mapi id 15.20.6768.029; Wed, 13 Sep 2023
 09:17:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5a48728c-5216-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694596653;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=7Ld5/5GnGdHpJDWQEK9+zRfTByz1N/W9Wc5EvHLKZZg=;
  b=clIXHu8ZraAU4vpAwsQFYGodIRRZH2gAa2XENEkVcoLCwepQ9hx/fSH/
   vgvb5BJ0oD+Vnl4skFIA3CdYSSn+i1NcHrKkXzjWHSyjYQPRSoIWFJ+cZ
   3PqFbqMJn/w5jrS8Qv2gdT4+SZ6JI68K115cqudMYaCDryqoPRVm3l8+x
   c=;
X-CSE-ConnectionGUID: 4xjA7uBHQ8KZkfZI1A9bAg==
X-CSE-MsgGUID: owZraYzJR5SgzRDPdZPY4A==
X-IronPort-RemoteIP: 104.47.56.44
X-IronPort-MID: 121147907
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:e0i+xK98od7nDQmP7VdCDrUDp3+TJUtcMsCJ2f8bNWPcYEJGY0x3z
 mROX2iFMvmOY2r0Ko9+YYmz/RhS6seAm4BjHVM9pS88E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks11BjOkGlA5AdmNKkQ5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkkS5
 f4xdy0nTinTpNC1zoCaE8A9jO0seZyD0IM34hmMzBn/JNN+G9XvZv6P4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWNilAtuFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WWxH+kCdpNfFG+3vl1skea934xMkAtWkmBjcG1uHaPB/sKf
 iT4/QJr98De7neDTNPwQhm5q36spQMHVpxbFOhSwB6J4rrZ5UCeHGdsZi5MbpkqudE7QRQu1
 0SVhJX5CDp3qrqXRHmBsLCOoluP1TM9KGYDYWoISFAD6ty7+oUr1EqTEpBkDbK/icDzFXfo2
 TeWoSMihrIVy8kWy6G8+lOBiDWpznTUcjMICszsdjrNxmtEiESNOORENXCzAS58Ebuk
IronPort-HdrOrdr: A9a23:hZ7zq6812FfMdU4/Icduk+AcI+orL9Y04lQ7vn2ZKSY5TiX4rb
 HKoB1/73XJYVkqN03I9ervBEDiewK/yXcW2+ks1N6ZNWGLhILBFupfBODZsl7d8kPFl9K01c
 1bAtJD4N+bNykGsS4tijPIb+rJw7O8gd+Vbf+19QYIcenzAZsQlzuQDGygYypLbTgDP7UVPr
 yG6PFKojKxEE5nFfhSVhE+Lo7+T8SgruOeXSI7
X-Talos-CUID: =?us-ascii?q?9a23=3A9uujrGjp6f6CWz2Cvkc+D2xrXjJuLm3f5SjNCW+?=
 =?us-ascii?q?BWUVbS7OnaAa5qalNnJ87?=
X-Talos-MUID: 9a23:E0AKOQooK0p6PWVISQwezzZ9Bt1h0raMMh02noc8l/GIBxRBZx7I2Q==
X-IronPort-AV: E=Sophos;i="6.02,142,1688443200"; 
   d="scan'208";a="121147907"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lvRQB+nZ0Ly3jPF5F2eS+/CyfYvVeURJCB52MPeHaQ6Mpt6NfVFNrBKttUZJcLj+ecvDpm/lLE1EO8znstQimodPF5+5dotZwJWU1Te0t2IAbkHUl2x/XXIs8AFRx3y1FMjXI0hD/cu4NBpBxeokJIwJWrtm3Mg1tW3v2yV6RvsBrCA5m8BTHlDXdwY5rlbH4lH09dGlcEAztbH1V2Ot1nyDdVbwbVSczqqN4yxc2xOnwBxSgwkh8bf6diRg+/BHCi8nx8GZ8MjfM07j7YpnMyvgjWhve+VhJCfI8+VhCiirdbIS+cztfgO3oXAvp0x34xWQOhJM1PhrTtCoX57wZg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=T+4dj7WbiFp1ZrHRLEU8/l0JflKZAxi0+5xhEhqH5Dc=;
 b=YmOJWK0UuUW9veuzAtsBqhzNcUoZRLrHNV2RCrfzE0V3GI1aTMSU0mhX4IeeUXgP2/IxFGQ+mIe9CEreOSB/cG4flWTi4fvkvVhk0KODzZyOHD85mCcsq/IRXNImrvo42xeJKSjK2pHstI3jzbTeB0KLluupKCgseumCQOLihsDrtdDLZEp04PkjwXR9gVUCSOkvyxK51jBXRwmX5EWr7erb+mxxzDhiviq/fr4Hq9p0XYPPOAFNI6mtnbKWXnEBFtqNFU/U9YaT29XCBIQbyARhkJEu2yI45BJjy5zEgMoVGPaCQQkgvF1UxP5INaqmGSW9niJ2OZZvCoQp+KtBaA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=T+4dj7WbiFp1ZrHRLEU8/l0JflKZAxi0+5xhEhqH5Dc=;
 b=Vr0kaRGbQCAtz4tB3VXwNFyAKc91SyTifNEIXLuffqRMrBugYocVc+caLZOriS1QTgCMz4bE7LwVBzZB84R2IkGhFU0qC5fuL7mwD/DkXBGGeCbPA6+6y29CA4WHSBfZTMEKvV9dDGQcIWE+iXCm/ernvP8ZoTgDaxW57lCrM64=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 13 Sep 2023 11:16:59 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Message-ID: <ZQF-C_H-z05PNKHT@MacBook-MacBook-Pro-de-Roger.local>
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <809ef122-7060-c033-e50d-6e372ab89de9@suse.com>
 <ZQFwyG3FwCzpezTR@MacBook-MacBook-Pro-de-Roger.local>
 <99bae9ae-1711-28ca-c464-e638f0edd7a6@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <99bae9ae-1711-28ca-c464-e638f0edd7a6@suse.com>
X-ClientProxiedBy: LO4P123CA0321.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:197::20) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BL1PR03MB6087:EE_
X-MS-Office365-Filtering-Correlation-Id: 9d9f0658-dda8-47dc-bbf0-08dbb43a3245
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PgvBbD0D0LfDXZfGLmD8ImvXGz3ywk1GebF4TltleOINyUZm8NY2yPVKpdP5/KqTnNy+1SbD248ZfWbNrX8cpBL0HRKGfNwArfupGqJP14aDIHCsS7JxlZqJfu79XC7ppMlUlcbUSRGYmENVOLpfnGhni1eZ+0YDzCY6aF8FgS0yPgWY+0jYRN1Gh7BJFvShy8+avGOJi64pg1sh1BjGsV4gaeeJXlkVr2erLKPzcRxlFohGDvm1b54VHLs0hV5lcWpHdheu4KXTw7jGXwu9IBZbdaU3usNvTV1K68WpXW3DA2o9C/1/erGxVYdFv2xHstIaE+3RgqKI6qbA1f/Cjq11YuAJyhcF3XX6F6sqEkdHz4jrorGPL1r8T7r/0TqewxBr+yNKwWUD5x09Af1p/K6RxMJ1YnKpseyvw2Ct1jrxKBMKdEZ8VH7A5I3Pvij2HP4vmFd0oppRIwZiRr2Nw9KP7PuP2SZ/mkbKsSpG5zMbtE8okwcUFUAvnFljFv2umsZUFJTl8O27oM7nCl6yM9FPN56hrtts1iX79RVDUhQl4nXfS5LM2f8RbO0/7jmR
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(376002)(346002)(39860400002)(366004)(186009)(1800799009)(451199024)(53546011)(6666004)(6486002)(6506007)(9686003)(6512007)(478600001)(83380400001)(26005)(2906002)(66476007)(54906003)(66556008)(66946007)(316002)(5660300002)(4326008)(6916009)(8676002)(8936002)(41300700001)(85182001)(86362001)(38100700002)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YXhqMDdFVno5MTAycmVlSnNSTldyRmVKSVYzUnFXVUZUZUhkQzN5TEYzbW9r?=
 =?utf-8?B?TFFtaUFNbnRPVW1tZFJQUUhJaTREa1lTVXdTL0pLYU5CRzlsTXE3WmF4a1Zk?=
 =?utf-8?B?a2tvTFpkM2o1M1lCWFB3N05VR3hoMzFlZHlUNnphWTJvL3NGaTBKM3lMTUZw?=
 =?utf-8?B?SDhwMFdlN1h6MUVCNkdtazZqY1pYT3RaR3F6cTlscmNvVCtRdWV2K3c0S2x4?=
 =?utf-8?B?TWNmNVQydXZXN0YrMmFqeVpWRUkvbVFiVWhUWElXUTc4N3FzSHNKc0VlNHZC?=
 =?utf-8?B?TVlTaWs3L0ZNSUN4UUdaUEsyS1g4ZmtwRUE5V2MwVXAwbSs0U2N1cDNvOHZB?=
 =?utf-8?B?bzlvclhNTHRoZlhOMzUzQUJmd0xRME9VRFphaTFRZy8vMEZ0L2tPcDM5ZmVL?=
 =?utf-8?B?eXYrZERyREQ1WWJGWEpZRGxYZ0J6R0FXVDBqNkU1ZTZabkxyMUI4Vkx4Y0dY?=
 =?utf-8?B?QXdkckFhR1lMZ0hQQkR5dTlWT2V6bDNCbmxkMU0wKzJOSzM4bE5Tb2dlOURQ?=
 =?utf-8?B?d2FNSEJPYkhoY3JybEtUMW1tTjNYaVF0L09rSDBGZFU3b0UydUhycTZ4cVVQ?=
 =?utf-8?B?dmhDMU1xRzZ0VStYZUlZVXNwZFdyRHllRzA4NDJnRSs0ZzUzci9tTkxUVEdP?=
 =?utf-8?B?N0plTXJQdUI0clU5ZlZ3QmNHMkc3SldpNjBpeXRrWG5NZ0JxbUZzbkdsS2VC?=
 =?utf-8?B?T1NNTlROdmJwQVBJTDVZQzB6b0xPcVZGOHhwVEU0NTVHTVRVY2NoYXR0akE5?=
 =?utf-8?B?U2UwUTg1RVZqdkk2bzdyTHRqT2VlSFlXdkUycG1HcnhhU2JhNXJDSWRoSHgw?=
 =?utf-8?B?SDhxUDNPV04vWVlrSHNkTU1sMnpYRksrbVlmTW1uQ3hZNjFhYjVsL2VkcnZ4?=
 =?utf-8?B?RFBRSG1kdldTbUhPdjQrNklyQVhiU1NneXIwRW5Bb2pjZDZqSEU0Zjh2bU9t?=
 =?utf-8?B?YTFCZFAyOTRRZGxjZGNHZGVUSStGQVNTUDlpMFh5MnlnaWlsUThMa1E5Tzhi?=
 =?utf-8?B?eWt3QnI0dXNnaUpiWGxxL3Q5RTA1eFVkSU1pd3o3a05Yb3hXZCtzc2N4MmJy?=
 =?utf-8?B?bWo0bzdhaVVqUHcrUUM0TFc3K3lYMUh0Sm5ncnRybGtDL2hCMjg0ZXBCZEtH?=
 =?utf-8?B?c2hnY0RybGJsYzY2Uk1ielhBQTRvVURna0MreHhlUnlHUnBUNDgzWGJBaXBK?=
 =?utf-8?B?a2c2eG5Eemtra0tOR2NoWDNhMjh5ekdCSjdrY05vV0lsQTZHemUwR2lQUFg3?=
 =?utf-8?B?Qkp6Vm93aGlOSlBnRUgzL2NIZm84dnV2VXhPMTJNZFJrK0EvYWxrVzNnNGp4?=
 =?utf-8?B?TlJ2bTFGRnZ0alBMdEF5TjhVbEVmelRTZ09nMkxtdm5oSkJObDByd0NYTnZM?=
 =?utf-8?B?N0ljdU0ra25STk9XcnhxejZ4bXZ5ZWxBWENNS2FJZDBEdkl1Wnk4N25hZW13?=
 =?utf-8?B?SGlHMHNVTXA2bHBZNG5rdDFYY1QycHc5QSt6c1hja09yajJCYUhlMXpGVkV0?=
 =?utf-8?B?Z3duRmsrR1htbFI0Z0Q3LzJ2NDE2KzIyenB1WGVQSDdseWNiR1JOQmI4TWNy?=
 =?utf-8?B?bHN4T0pGZDVzWnI0SmZpMzZ1RUlwU2tnVVE5K2tUREFzWFJVNjkwZ3hydnho?=
 =?utf-8?B?WDZZL1U1Nm1jUEFCcW00dlpIQnZ1S1J2RWRYYmhnZTdoMXo1OU1SSEZ4SlFi?=
 =?utf-8?B?UWlzZzNLUjllQmtsWWhQazJ6aFJxTmNSeHJnSGltTHBSQTlRYndFUXVGcUk3?=
 =?utf-8?B?MnRqYVJ6YVpuQUx2N1hGSkRBeC9WMS9ValplZENLSzZIL0N2Z1lxUml3bmZO?=
 =?utf-8?B?WUppZnFJOGFQU3NQUmpiWlZYQ1R0dW1YSkRDVnBrWHNaekNRbjJhdXc2Wjcv?=
 =?utf-8?B?SlpZQ3M1YzkwN2ZYUThQTUtUY3lxMkNLT2wzaS94OWhwWUtvOWwwMDM4NXBq?=
 =?utf-8?B?bUJ1NlF4N0JLc3FheHJrZG9JQll6NDZFSGFFRHlKOFBjMzI2WGZ5Wk51d1Jy?=
 =?utf-8?B?ay9MWDQrZDl4c0owVFFoS1lZTERDTnFpVEFOZEcvNmczd0JHMlpVNmVjdTRt?=
 =?utf-8?B?OWd2LzVVMHptUUhEbE5XcTlhY1h3bHU2N1VOQXVBUlpjOVRyZm96MFZ3aDhK?=
 =?utf-8?B?MTljNWZOM2tRbnFRckQvR1I3djByZ0lhKzNiWU5UVHdjcHE4VGJPSW9sa0ky?=
 =?utf-8?B?eUE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	jX5DT0lEAPNf43JuKoNOFSKfemWoTLO5XS6Ja3BddS7aab00nNedc4IhUo+wUzELLaw/UVCFu8iIkjagEyYZJEoeqhqAM8NssYsS3bV+LLBdP0IHz2QU7g1N4e2bxxSDXFRQjpINGFoFF+467+6oFIBYti8C//4DLhv9h2sYFqCYzfCI/1kTo0/PoIB67V4ZKHn4P6scKkt/zuBXkE5qF0kGSibrYSAKFXbVQ98cOUT3hvn+4Exl6c++vxyPHLCFvgQb30+e/fOJ6LJturUEO64yVtHMdY+wUwAxDlZw6HHLOs7xqrgdHbuvo+TjHI8a5mNtUVjwTBh4Cv3X/dXRw8iWikGv1Cn8co5HQ4XvDjBhyLfWpOKFP99DONuh8tJMcPpTemtZKznq7CP7/aQe3uehflkr0GWwmspiRA1rEk+yBWprcGJj5nnzfhjeYFg3ZagjqPSDFuIYjBuYQd4qFpiWZ1aYF70Vx/4uip4SWft52W9YVr6BqVtOAjr5hfgTtS4TTv+RHpKCQ5TJdO5n7lQ7iuIgXMF1wBj9D9VG6K+R2oMYpkq8TeZ1SzAPiCPS5k7Mu/KZM6ZIcUOgVap7BH0I1tpo1ZucbFUmpxwDHXplElDVAmxU03VY9ABxyzg+Xkzu5QCGqPfa/90Z4JGnMuH9FfhUghljOSW3GapA2o1RGQf3+dB/B8QsgqjhppLlDAQD9uSBoHdBmZS0h4bmSIIjcNCx7WenEaAnXJ4R1IqKiRqPjHHSnSY4mAlxb86LYXftC31luMpzVim+wpCMcBuTrfxYljpOL99U8/3kUlEd4B2womy53PRv/Qnbvc7Z
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9d9f0658-dda8-47dc-bbf0-08dbb43a3245
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 09:17:05.0537
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: dWu6fcVLNEIA0LGdrWVF3pFjBhbZl/9loLM1qCUKVICetA0mQjcUWPVGLClRIwStczPv4LhzHxkUKw84pu4PTA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB6087

On Wed, Sep 13, 2023 at 10:35:17AM +0200, Jan Beulich wrote:
> On 13.09.2023 10:20, Roger Pau Monné wrote:
> > On Wed, Sep 13, 2023 at 08:14:46AM +0200, Jan Beulich wrote:
> >> On 12.09.2023 18:23, Roger Pau Monne wrote:
> >>> OpenBSD will attempt to unconditionally access PSTATE0 if HWCR.TscFreqSel is
> >>> set, and will also attempt to unconditionally access HWCR if the TSC is
> >>> reported as Invariant.
> >>>
> >>> The reasoning for exposing HWCR.TscFreqSel was to avoid Linux from printing a
> >>> (bogus) warning message, but doing so at the cost of OpenBSD not booting is not
> >>> a suitable solution.
> >>
> >> Why is the warning bogus? The PPR doesn't even state what the bit being
> >> clear means; it's a r/o one. On respective families it cannot possibly
> >> be correct to expose it clear.
> > 
> > There are other bits in the same MSR that only state the meaning of
> > one value and are not r/o, so my take is that being clear means "The
> > TSC doesn't increment at the P0 frequency".
> > 
> > Since it's model specific, it should be possible for some models to
> > have the bit clear.
> 
> The code that's in there right now already has a family >= 0x10 check.
> The Fam10 BKDG says (among other things) "BIOS should program this bit
> to 1." That, imo, doesn't leave much room for the bit being clear once
> an OS (or hypervisor) gains control from firmware.
> 
> >>> In order to fix expose an empty HWCR.
> >>>
> >>> Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
> >>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> >>> ---
> >>> Not sure whether we want to expose something when is_cpufreq_controller() is
> >>> true, seeing as there's a special wrmsr handler for the same MSR in that case.
> >>> Likely should be done for PV only, but also likely quite bogus.
> >>
> >> Well, keying to is_cpufreq_controller() is indeed questionable, but is
> >> there any reason to not minimally expose the bit correctly when a
> >> domain cannot migrate?
> > 
> > We would then also need to expose PSTATE0 at least to make OpenBSD
> > happy (and any otehr guest that makes the connection between
> > TscFreqSel and getting the P0 frequency from PSTATE0.
> 
> If any such OSes can be used as Dom0, yes.

OpenBSD can't be used as dom0, but QubesOS does use the nomigrate flag
for domUs.

> And as said before, I view
> exposing PSTATE0 (with zero value) as a viable alternative to your
> partial revert anyway. What varies across families is how many PSTATEn
> there are, but at least starting from Fam10 PSTATE0 looks to always be
> there, with the top bit indicating validity of the other defined bits.

I did consider this, but it seemed to just dig us deeper into exposing
non-architectural MSRs, which in the long run is more likely to be
troublesome if newer models change the meaning of bits in PSTATEn.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 09:40:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 09:40:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601128.937024 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMM4-0005pI-4S; Wed, 13 Sep 2023 09:40:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601128.937024; Wed, 13 Sep 2023 09:40:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMM4-0005pB-1b; Wed, 13 Sep 2023 09:40:16 +0000
Received: by outflank-mailman (input) for mailman id 601128;
 Wed, 13 Sep 2023 09:40:14 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgMM2-0005p5-Pm
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 09:40:14 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2060a.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::60a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8997d97c-5219-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 11:40:13 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DUZPR04MB9871.eurprd04.prod.outlook.com (2603:10a6:10:4b1::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.35; Wed, 13 Sep
 2023 09:40:12 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 09:40:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8997d97c-5219-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=moCs887wJTlmN6Cw/KBMapluDOAdOR5cTVXQr2mFMufhDMhTbAqpzwKNv/B3K/0HnBLg5mQ6/Lm8VUJwKyY3LkBKLEzGDndQcY7AxHzB7Zdgh0+H+3dESTFffPk33JqxXfSLdTxE6+Q+ME703XI/a5bJCZcWq51zGTMO37n7E97SgrnqGXGbU39fp88mpRgD8rWpHVMCTydmYL4jDmtaH22jmvHOkvXwLeiIajIqcKqHR7pxdWSj/8obX5rh1y+OTWPVntd45cD7iZg4yHYgvx4Zsi6zO7P1srSOQ3GO4hg9I6/0YkzGbWyZ1FGu3zFaIAam6fWYKLXfDRCRufiZPg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WEAuGoMaJNnFm93Q5Bs2BrLrIqRHtnip8NX4nv2+Aug=;
 b=UFpUj/F0j380Pv7pJEdwhVzXgGKgqmw3RXLFIfKSDzSplYph11JC1+QPlkObZDG4ScEYUAH6EXzazB0JpqFyBRUoUPbNM6dSONm3qTdD6qDVPtTkU8pdIl4l16E5en4MuJnARp54D108U2sR/P1YJ55VdrZj1hPzAvxcd/rQy1pR87nm6d/M4e7o80xWY0CcT0+w+9ZXzik12CCHWCRrFYOTuUSSHi62FcFE1bCCfgHUFJBBgpZQQ+pJnh3gyCQV5LHTLeUuyDlXrUGxMehBaPuQWBNyHkPZAw+2CRCa7a5HaJZQ9pZcq44aIib/yY7BbVaNZ1E3DA/YiCxXs3Vxtg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WEAuGoMaJNnFm93Q5Bs2BrLrIqRHtnip8NX4nv2+Aug=;
 b=b9m1jMLQR7cMiEqz2WIaBZcIp7YJqn6EN62f3krQsfjj2+RZjVtaG3twZBn+4uZABdHaKH3jIWr4tCiVYeiHklUf9ToF/jCUKqc6K9lX9JZ10txmplHJCUivZmuYfqmSJ+NBeLjAVT0ZBy5Bwbh9y+8sx1sH+XKWHRv1/CX0KfRWr7+DjEAwlL/f+68XkhvaTr1m0LeL7YkfnkPCsSgOGUQUxcdza3FLosEQLSfBdmcS297BxQMhNeWbV46UC7fGxPn7ECPEnb/+g93PMfgY2DLqEP1GdZikek1YYB6RXCj4O3QETwWGDwQ3uxyIdksrWjXpPLz07VeGs+89KFLEKw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <58ce7887-ed8e-e963-8158-3472b1dd583a@suse.com>
Date: Wed, 13 Sep 2023 11:40:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <809ef122-7060-c033-e50d-6e372ab89de9@suse.com>
 <ZQFwyG3FwCzpezTR@MacBook-MacBook-Pro-de-Roger.local>
 <99bae9ae-1711-28ca-c464-e638f0edd7a6@suse.com>
 <ZQF-C_H-z05PNKHT@MacBook-MacBook-Pro-de-Roger.local>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZQF-C_H-z05PNKHT@MacBook-MacBook-Pro-de-Roger.local>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0081.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9a::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DUZPR04MB9871:EE_
X-MS-Office365-Filtering-Correlation-Id: 73ec6a14-6b60-4ebd-de1b-08dbb43d6d0c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7yt5f/7l8MYwaUHgFcTe3TVtVwDOynyKK3toe0xCxaNtsx+dNzq2397Ylh98KAqPMe3Cl9m8kuqnTLNjPXN6FEceFek4FlbdlkHYEdhGb+xXxdwP3ymJi1ARl1mBnU9RBV8EokvQvmRz1iHXA3x3CEy8SGMwdHGPmoN+gXouTFwNv8peW7/bPBCp4RFktgnRfENnRdvyq1JhnZAhfL+ETESqYaFI5jWTt8myw4yIXOpiiNmk+cAJWyoyWX1l7Jxbk/x3UzdW5tHj5deJ23FgTBJNm6cNKrA8+tyjLZrVel2+J8uyMekrP3GUg0QSw+fOq0QCtft3xs3Iu+sllG3RFjul1EKvkOiaG6YEvbPSX8XyN6Kzcf+DZ+xmo9SrbCOTHvS5Kem3gJbd0mYpxO9Ji4r4ENGdw3SyxUVfBwh21WB7aHT/r4x4HzgqPueSRe/5E7I58JOb7rNPVzz0ac7YAcYAKZ6/uq+u/KdLD1e7BylSQ8AZMGMqe82adZ+mqUkaJi8sDY3MF7x4ovhLALsJSrAfPrQ7jHoRU1xgrwc9hJB2hfPYbsaAP5A0njWwSE8iA7oF2v3GoRpC3TjNQR270h/FCkBgq6vXLi+WdnJB8vugcGKfoR9qi9/ovrNLrGp0MLh3/Sg6Jrgodc4iOokmag==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(366004)(376002)(39860400002)(396003)(1800799009)(451199024)(186009)(26005)(2616005)(5660300002)(8936002)(8676002)(4326008)(6512007)(53546011)(6506007)(6666004)(6486002)(83380400001)(31686004)(66476007)(66556008)(6916009)(54906003)(38100700002)(66946007)(478600001)(316002)(41300700001)(31696002)(36756003)(2906002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MWIwOW84eEJQQTNRSE1FVDZENHl2T1YrWTBmWFRLZ29BM3VhT3NHZVE4NWhX?=
 =?utf-8?B?a1pjVnhwbi9rUXJZdXNuVDg0K01BdkUwRHNaUVl6Sy9wL0hucThCODB0SjZU?=
 =?utf-8?B?eWV6WURyS2R3M0dpRzJQS2N6UGlKTUFHSGNkNGdidGV4OXRPb0srUEl4TVZY?=
 =?utf-8?B?M0JmMzNaVW1YMzFBK0g1R3M0Wm1Bb09lRklZb3l3eVFWTktVRW90b0Z0Rzlu?=
 =?utf-8?B?d3FYYWJKR0crT3NtRi9IMzhFbGdMNHlGUXRtTU5WMkFYeVR4M0p0cnVkRkth?=
 =?utf-8?B?Rm9sSzRka2VUZEdrekM0R3ZHcm5LUVgwUTIycDJVSVVoMFU4dTVRS2kzelQr?=
 =?utf-8?B?azdTTTM3Umx1SWI5N1dvU0I2VGxOeGZDZW4yNVpzd1hqRkJZUjhlQ0tmVGE0?=
 =?utf-8?B?aWtKNElVTTNnVTFtcmg4aHNWWldodGl5SmZ1akQ1ZzdFREhSeUNpc2Y4VUtU?=
 =?utf-8?B?bTdjakFWdlRDTXJWRnk3Q3lVWllwOG1QWEJkU1FROGRtZldmalhPSG5xbzNZ?=
 =?utf-8?B?aVBaQXA3Yk12bEw1cWFRZkRzZy9kNUYwUXZXWlkzZG4yTDVEL2dwdFByQktM?=
 =?utf-8?B?MGhNN0FwbmdKYTFHRmtaSk0zeTBVTkZIWVVDNTVidE5WbUlybXZXMnZBcTNi?=
 =?utf-8?B?VHdWU21BV0s1TStDUlZWUUVJVUFiWlFlSFlCdEVxN3JGbExlaFROQ0c5U0Rs?=
 =?utf-8?B?cHZjaHAwcVIzcDdXU242MEFQanRzbWEzSXduZ2NIRDhmU1U2VXFxbmVOaC9Y?=
 =?utf-8?B?ZGEwb2ljWXRFK1NBN25wNnJhWHdkbkJ3V0pKQm8yRy9nZiswZ0NtZkozT3hZ?=
 =?utf-8?B?N0RQMGJ2SkIvOFZoaUxocVFPMnN3SDBWeHcxa2RZam51N2w3bHFIVHZWZDIr?=
 =?utf-8?B?MlZJOUR0dTRFUktoS2JPNTZ5UW5IZ0RuakhLVmN0WERFcU9FVXUwUUdqYzJO?=
 =?utf-8?B?ZllrOXM2dVBKYVFPbE5FV1dqTS9TR2NJYjEyQjZHQkdUNkpmMjZJKzR1RjMz?=
 =?utf-8?B?OENWQ3VMV3hCMXdudTl3RUt6NWVkTUk1UTQ4RjhCRG10bWxCb0N3dGc4aU1D?=
 =?utf-8?B?c25MOVM5VHY3eGJGcDhMSnNzdFZNUnR1L050dXQzMlU5WW83STFTaFRrN1Vo?=
 =?utf-8?B?ak1zcStLN25NeTRpNTVUQjg0UHZYQVpQYjBjM3FDWnVya3RXQm5CMy9xRTNX?=
 =?utf-8?B?bzJHMFU4S3ZSUjJhREpLazNXN1IxNy80WTIyQnZjd1lyeFNHREgrdTdoYThx?=
 =?utf-8?B?RFV4VzZIemJNbEtKNno5WnhVY1lQemN6cU9jVUxaRDdXVzdrRW50MjI2dXRS?=
 =?utf-8?B?ZjZwblFzTDFsc1NXTk5aYVRDaTlNWWswejlaczE0ZHQvZGo5ZnhSMGI0cDdI?=
 =?utf-8?B?U1YrM2VyNzFJUVRWVzBKRHVXc1lxTXZKWGN2disrd3Z6ak4xSUxQUy8rYlo4?=
 =?utf-8?B?UGYvYjk5bG9jNllRUldrOGwzaldNemxPZnJpM2w1Nkg3TXJFR3RsUzBuMTJS?=
 =?utf-8?B?ZnArRjNnTGpHYkpoaUJ6cmRmckw1M3FWZDE5ZnFqM3kwTndCSXk4MWd2NGo2?=
 =?utf-8?B?QmlJcmtUYXkyQmQrU2xnM1IyUW1wUGsrK2xCdUpCZW02RUhOM3RCeFJPSUh5?=
 =?utf-8?B?bkRiM3NGeWs4dEZCUXdZdUxSVmNHYVZLNHA5ek9UOWZ2SU1aaEExbUdLSnZ4?=
 =?utf-8?B?Um9hZ2ZMbUhVMTUzRUcxeFo5U3E1SzdCdU5OYUNZQ0Vxa0ZqdERvTmxaZ1Fx?=
 =?utf-8?B?YXFMTTNVaEVETjFiRUlUYUtOYVcvblJISk14WnY2QnhaMDlIdTAvMXJhV3BS?=
 =?utf-8?B?M25obHlzWGMzOERrd00rT1JDUzRsd2ZoeGFrZ1NzOThMYzdGQVpHaE5la3Rx?=
 =?utf-8?B?alN6S3ZKSzJDS2hLWFhza2c2VitkSVdwUnFESGpJZUtYc211WFlZMWtmaXdT?=
 =?utf-8?B?OHdXN2txK29EUCsxdjRueUNMeTZvYy9sQ3JNRldORmNqZytHRUtIRVR6SUFk?=
 =?utf-8?B?U0F4YUxsRVFocVZaL2ptamlvS0hVOU5sTzh5QUx0ZjlWNGR3RHNVUkNHa2x0?=
 =?utf-8?B?VWhBeC9JV2FNMUo0QkdSa29LYStnS3NXSWpGeGpyd3ZJNGpVNFhJaTd5dTNo?=
 =?utf-8?Q?7G4yeAXmHIj+F5SG51wXzEJ3b?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 73ec6a14-6b60-4ebd-de1b-08dbb43d6d0c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 09:40:11.9894
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: QGcZ3i5NlN+wuJQDfnNVOLlCVo64kbs/smxxp0Itl0Xc3aqnW81uchTJ5Kd+ChE4CvrSgN8a5ByKExLPVb5Jlg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9871

On 13.09.2023 11:16, Roger Pau Monné wrote:
> On Wed, Sep 13, 2023 at 10:35:17AM +0200, Jan Beulich wrote:
>> On 13.09.2023 10:20, Roger Pau Monné wrote:
>>> On Wed, Sep 13, 2023 at 08:14:46AM +0200, Jan Beulich wrote:
>>>> On 12.09.2023 18:23, Roger Pau Monne wrote:
>>>>> OpenBSD will attempt to unconditionally access PSTATE0 if HWCR.TscFreqSel is
>>>>> set, and will also attempt to unconditionally access HWCR if the TSC is
>>>>> reported as Invariant.
>>>>>
>>>>> The reasoning for exposing HWCR.TscFreqSel was to avoid Linux from printing a
>>>>> (bogus) warning message, but doing so at the cost of OpenBSD not booting is not
>>>>> a suitable solution.
>>>>
>>>> Why is the warning bogus? The PPR doesn't even state what the bit being
>>>> clear means; it's a r/o one. On respective families it cannot possibly
>>>> be correct to expose it clear.
>>>
>>> There are other bits in the same MSR that only state the meaning of
>>> one value and are not r/o, so my take is that being clear means "The
>>> TSC doesn't increment at the P0 frequency".
>>>
>>> Since it's model specific, it should be possible for some models to
>>> have the bit clear.
>>
>> The code that's in there right now already has a family >= 0x10 check.
>> The Fam10 BKDG says (among other things) "BIOS should program this bit
>> to 1." That, imo, doesn't leave much room for the bit being clear once
>> an OS (or hypervisor) gains control from firmware.
>>
>>>>> In order to fix expose an empty HWCR.
>>>>>
>>>>> Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
>>>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>>>> ---
>>>>> Not sure whether we want to expose something when is_cpufreq_controller() is
>>>>> true, seeing as there's a special wrmsr handler for the same MSR in that case.
>>>>> Likely should be done for PV only, but also likely quite bogus.
>>>>
>>>> Well, keying to is_cpufreq_controller() is indeed questionable, but is
>>>> there any reason to not minimally expose the bit correctly when a
>>>> domain cannot migrate?
>>>
>>> We would then also need to expose PSTATE0 at least to make OpenBSD
>>> happy (and any otehr guest that makes the connection between
>>> TscFreqSel and getting the P0 frequency from PSTATE0.
>>
>> If any such OSes can be used as Dom0, yes.
> 
> OpenBSD can't be used as dom0, but QubesOS does use the nomigrate flag
> for domUs.
> 
>> And as said before, I view
>> exposing PSTATE0 (with zero value) as a viable alternative to your
>> partial revert anyway. What varies across families is how many PSTATEn
>> there are, but at least starting from Fam10 PSTATE0 looks to always be
>> there, with the top bit indicating validity of the other defined bits.
> 
> I did consider this, but it seemed to just dig us deeper into exposing
> non-architectural MSRs, which in the long run is more likely to be
> troublesome if newer models change the meaning of bits in PSTATEn.

Not sure about "deeper" - we're discussing to expose a non-architectural
bit in HWCR with the wrong value vs exposing a non-architectural MSR
where we'd rely on only the top bit retaining its meaning going forward.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 09:44:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 09:44:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601132.937034 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMQ1-0006Pw-KQ; Wed, 13 Sep 2023 09:44:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601132.937034; Wed, 13 Sep 2023 09:44:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMQ1-0006Pp-Hp; Wed, 13 Sep 2023 09:44:21 +0000
Received: by outflank-mailman (input) for mailman id 601132;
 Wed, 13 Sep 2023 09:44:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgMPz-0006Ph-Sf
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 09:44:19 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20622.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::622])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1c085bf5-521a-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 11:44:19 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7839.eurprd04.prod.outlook.com (2603:10a6:102:c9::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 09:44:17 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 09:44:17 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1c085bf5-521a-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EOSq9z0lp8E0m7bclYRvtoi1sH56F5mX/PZdgo2a5TRryvXnX21bdsN9lun8JWZX9U1OJRj0++XZ3hWiZP+r6Az/7tOc9TE7NnyKdx27vM+DoSNIS0pEqbI3xC1IwVU5XOs/5naBEioRM4JHcOpCF7pQbfVYj0f8+jv6DxKXpn/kmzhYL79ve/wwnua1fdjYLOzHrc0+6hZP7yrgsN/EfrcplEUGQJLptJa3Hf/HoihUGUyqd8gSooDGtthIFkfedK9MYO/7JbZ49EriQe9HmZpLJoGJuMnt627vZZ138a8IL2DCvuUTgU4r+i9lHwgYVzyJqC57zo8+UpUAqjsydQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pd8omn2nlGd4LCA94hHWhUvSK6NlXCdNeFEp/RZKfDU=;
 b=XDZMMmL49+UworczhTbzpNanyNOFxqxwZxd4FZZ2fN13PeYtYAS9C6rt21fzaCSXuE0eM/iFsh6f0hK9qbUTZXaKV6CSvV8yijL05WNh4rScePj4TcNSaYSALn3MI1r0LFGquX7gR6pcDxTYnOGKhm66WkqSVZAuOh7enaW8I/COx8DvG7esX4ZVlHuEN4xsOZ02aBQXNjvQOz+iWX31qK4PjS2uo8mpy4YjPcwWiN0+6SsoyZI+yMxOd2E2cNJJn00H6jL64/tu4NuXb7DJoP0b+XN78ISgtgjNPnrMhIwsg+ts0giCq5cHhegI8CVYWYzCqEqIt/jmHBXdJN9zIw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pd8omn2nlGd4LCA94hHWhUvSK6NlXCdNeFEp/RZKfDU=;
 b=iIS+FF99XnbIVxFT2fMDeYi0/y+oYGEVFUCdMUqe49CyqaFccTWnpeEgo9PFwKjYJXZYw/ctgxzVRXuzn6lBwFnH+mGdnlv3hpyYQHfay7XWzioBylIXwCjMbrvLl+/gU2MJyJYGESPm+7cvasehwJCossceKHOA0dF/hismRLkuIiwoOTLJycqU7AxBve/jZWLcoBimlYwfMTuQ8pRUYDHNfYU4BiUk/1oqa8myXAakt5gUWNtPEfK36xEAKjtNUJQZB5e7ReQxIBA+LCEdCT3BkBNO99EyLJouzufM4PEDBCLkFT8wHUBZ+zD9H0kG8wbpWrKxgx98XV1/VjNLKw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <40606e79-65b4-f344-1d4f-19c8946a67e2@suse.com>
Date: Wed, 13 Sep 2023 11:44:14 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v6 2/7] x86/hvm: address violations of MISRA C:2012
 Rule 7.2
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
 <1231f5eeebf6f2e30b91780e92dc4d6015cefdb7.1694532795.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <1231f5eeebf6f2e30b91780e92dc4d6015cefdb7.1694532795.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0136.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9e::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB7839:EE_
X-MS-Office365-Filtering-Correlation-Id: 0fe2c9e8-7f14-4e4f-08c5-08dbb43dff45
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0wOCnF0VTg/OMhgkKpBOySGrO/sfvEDvrcl/a+jSz5D7KhjhvDIdysK36uNqhfNRSs0G+JpVWX/0Ku5HNeOr1jPnlSJViUoPaJTQiY+1/3RUa15HhuE5tSqFWGj1vnl9DY8KumPGyrYDTB7PxqzpAhetQ/uVeRF4auwPmmPKEYIVU0OAM8Wz2TCgVqVin3WTfMBjYfSzM8TnOdMfMxzu/7qV9ZZzlpNoeXDfx4BR1U+ngo0cO+2PWj+Lr5YeHFF6mTR7IDEH1j/P92xR6kpeiLhg+AtCNohUlAXTwSikFXoWv00YgraSy5MDfYiG5y0Gr/4wXcSbGgHBLg/thHBHHsCwf7UcNVeUL8SBhCutGyV6MJhXyvkIeB8lkFNh6L+zy/bFxpaSQffoTiP4rhXBFFF5GKgSFrG/qtF/nUn1iUoJDU+LUnIYFWz5zntzfPCQ22kWEd6z/kxYUgZibcWu59WAz7VPchAvEiP/MuKHDsuv8BrWTN3p+FoC/uhzISOjZhB3dW31gxQtu6nW6abobT+lzD4/MyF3XNlZw7YnqCs8UHhZlqx6vU9DBu5/6t5D/kwnBXqMEW1xFBgQHlgIX+eTCT2+cTRVfxSTK3F5KLolCR5gUh2qAaSutIGafeKDwpkWQU3iqQJCEYH0zoypzA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(136003)(396003)(376002)(39860400002)(346002)(186009)(451199024)(1800799009)(478600001)(31686004)(6666004)(6486002)(6512007)(6506007)(53546011)(38100700002)(86362001)(31696002)(26005)(2616005)(83380400001)(36756003)(66556008)(5660300002)(8936002)(4326008)(8676002)(54906003)(6916009)(41300700001)(316002)(2906002)(66476007)(4744005)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R1paUWtzcUdGeXNaY2hINlRZNFdQbjZkeTZKbE55Uk5kQXltOSs5NmpTUkJ0?=
 =?utf-8?B?YXFjd0VuRExtOU5FRzVaLzNKOHlXd0pPMlVOQk1GM3liUFBEMDVSWDdPRC9j?=
 =?utf-8?B?NFB6Y2o0Yi8xeFhLbktSTEtkbGI4SEk0bHM4TWQ3dks5SkVJZDRsR2xxVXBW?=
 =?utf-8?B?LzJSVWlyTVhkNjVtalJreGtnMjZobENVV3Ivc2s0MVptcHRPUWJNdmRmWThT?=
 =?utf-8?B?OGFUMXFsRXBGbHZ0RkttRmFaOGJHeEN0TXNraGdNV2dTZkV6eFlxQXpHM3hM?=
 =?utf-8?B?SkdtcnVodUpFWmhPUmpsNXpNSFVIL3B4QW5MRUNGdDd3Rk5yWHhBS1dTVFJw?=
 =?utf-8?B?b3Q5YmkrY245VmRMTTBLUGlmUWZWWDZPV01KNmpvVk1aQ2d5VG5uT1poWHA1?=
 =?utf-8?B?QmFHQlJzZzVPZ1lYMzRDdENHZXlvNER5NEdPT29VWGpHQTRLUWVMYlN0WmVU?=
 =?utf-8?B?L054cmIxUWJzbi9iVVhoSi80ZzZocytTZjQra0dia3dSbTlaUHdJS01GSU02?=
 =?utf-8?B?djhNOFlmaGkwNHViZGh6eWRMTFQ3WGdjTUZiamdJZGZXZFJHdWU2WUlDdy82?=
 =?utf-8?B?eVIyalJmMko0QWRYeGlNUmtldUduZkpTdTFoRFQ2Y0FmOXRzM01PUStGSEt6?=
 =?utf-8?B?SU9ML1RWK0xPYzBjN0w2OEZXUlY3QVd6SlBydjErdU5kTmFVMzhSdWo5VCtY?=
 =?utf-8?B?a0lBWkd2a2Y3S3lxam1xUjBuYVpUTGZJaitXU05xVWMxUkdiZ0RLRHVhcjVI?=
 =?utf-8?B?SE1NSnpxd0lhNEY4Z3E4NnZSaTJWdXdkOHVoekdnbHRSSTByR3BuVzhTZ1Vs?=
 =?utf-8?B?aHdBVnVlRWZWQmNVcmdvd09obE9iTXB0dDJzYVh3VHVyT1Q1aURBTlNjT1Rj?=
 =?utf-8?B?UytZVmpxZ1FCWnpzaVY3aVpzTE5odXFhTHpqVXpZcGFWUE03YmFoWXlydndE?=
 =?utf-8?B?VW52ZE9mOXd4WWYxQ3ZkU0xoZ21RZUN1aVFmTG9VYjFSYm1idzZ2NFE5QWVm?=
 =?utf-8?B?ek9na3kvbm5NK3krVHZZOFR0cmFQc0Zkc2dGUTVudHJuUzNpTzFBdTQzR3Zt?=
 =?utf-8?B?NmRtL1k4bHBuWVhoUEFHb0w0WEZmQm5US0N4aWNDVXhVMWxld1B0N3FSYUd0?=
 =?utf-8?B?QUpwbHoyREY2aG5CVU53bmtIYmxwRnN3Zk5PdC84Vnh4U2JvT2pWVG5SeHV1?=
 =?utf-8?B?aitiNytXOFBsUVFNelNzQmptREZEczJ5eWlLOXc3M01TSHBlbmsralhJWWQ0?=
 =?utf-8?B?eDdVNW9Qc2pOL0tUSHd3SURod0lvN0lzeHVsTUF4aExyeVUzTVRhQ0VJZHRq?=
 =?utf-8?B?dVY5bGFUelJ4ZjR3VXc1cno1WklkK2w4cTlIbE9HQUJrbXVOUWVRbmpIWEJp?=
 =?utf-8?B?N2dURnVJSFlsaWwvYldCb3RXUnIzM3NFUHhUWVhCTWcwS0xiT2dQd3FUdG12?=
 =?utf-8?B?ZWxNRnZTVGZPcHRzL2o4bHVsdEFMcjhkbjZtaHJndjA1Rzc2SUxRUnBNWnRQ?=
 =?utf-8?B?b3NFT1I0SVEvdXh1OC9KTmkybndTVjdJcTV1dmlNbnBjY3pTQmR2NmlFTU5B?=
 =?utf-8?B?dXY5YVRoMFloU21PVVFrSEJRVDFXV28wbkF5VUU5RlNCM01JcEZuVmJiRnA4?=
 =?utf-8?B?bWVlYVlxQUZEd3NNZVNtZitwRzFTMUh5UUdhcXhhVkhHcXB0SUY3OXhHemN3?=
 =?utf-8?B?ZGV0YWE0VmxDOE10U1UrckV4YWZaMVc5T1k4RW4vNkl2L2tHdVZrQlZnMGhM?=
 =?utf-8?B?akt5MjRGa1ppa2NJZlg4Mis0TWk0WUxnb3krbmkzeHJ2bk1lTmFtbWptaHFi?=
 =?utf-8?B?b2FxNjlCd2loTUF3dk9sclNSUTdjRWlXZlU5cEpmYjliNzcxTXBJYS91WG9t?=
 =?utf-8?B?clZRODNuUWpjUWtNWHpZMmwxVzJxbi9EVmY2UVFpdGdhT3RuaWxJelJ1UjB6?=
 =?utf-8?B?Wlp3QUgxUUJkNy93bnFYZ3EzbGZlRUtZaFBJUTh2Uk56dzZYV3NUclZBNGxp?=
 =?utf-8?B?V25BQ3NuSnpWUFYzNkVVN0lOdTA3UDNGa1FVaFQvWjZZRk9jbjVacm9kZUVx?=
 =?utf-8?B?SHFONEo3QU9kMDBrbVBEendDT2dwYWd0azRSOUVydVdHOEJFRjUvUENkb2R3?=
 =?utf-8?Q?Wl4WTgHKcyDpmt57uIAeUZXZH?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0fe2c9e8-7f14-4e4f-08c5-08dbb43dff45
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 09:44:17.3045
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 6VJQgj7vdrOob8CVKEHMpFWc1w8k0Yqp9NMjKWA4J9KtvXl45Uj5PhE0IDpEihnj2VK7h75skMLGzObF5LaCqg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7839

On 12.09.2023 17:38, Simone Ballarin wrote:
> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
> headline states:
> "A 'u' or 'U' suffix shall be applied to all integer constants
> that are represented in an unsigned type".
> 
> Add the 'U' suffix to integers literals with unsigned type.
> 
> For the sake of uniformity, the following change is made:
> - add 'U' suffixes to 'mask16' in 'stdvga.c'
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>

Comparing with v5 - are the two tags in the correct order? And is there
a From: Gianluca missing now? Apart from that I'm now okay with the
changes presented here.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 09:44:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 09:44:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601136.937043 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMQQ-0006rB-Sa; Wed, 13 Sep 2023 09:44:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601136.937043; Wed, 13 Sep 2023 09:44:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMQQ-0006r4-PR; Wed, 13 Sep 2023 09:44:46 +0000
Received: by outflank-mailman (input) for mailman id 601136;
 Wed, 13 Sep 2023 09:44:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yjWf=E5=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qgMQQ-0006mG-AE
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 09:44:46 +0000
Received: from mail-lf1-x132.google.com (mail-lf1-x132.google.com
 [2a00:1450:4864:20::132])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2b6ee277-521a-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 11:44:44 +0200 (CEST)
Received: by mail-lf1-x132.google.com with SMTP id
 2adb3069b0e04-4ff8f2630e3so11326847e87.1
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 02:44:44 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2b6ee277-521a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694598284; x=1695203084; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=5wgM/mjSUV3pDjlWeWJZ3kIQ9I4q2NLESCJ71jwDgVk=;
        b=ObXTc5wy4Yg8AED2r/79Bpy9m8grT9p3+kE2UiEdHhEkuWMHuyH8IJ8V12ZfRNN8GQ
         OGFImEEnRN+CZ1NdALqqNE8BwJZEHmdnZuQsKrfgtlRkKp8dZ16HNtoN0BQLFdhOaCrt
         2pGtNccBV+iKM+puiXHnVDBViAH83cjaCDgZo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694598284; x=1695203084;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=5wgM/mjSUV3pDjlWeWJZ3kIQ9I4q2NLESCJ71jwDgVk=;
        b=N2Yja4pi3BwW83uvHLjA/PtxqNixT+vH5k/rUPpozx3PiI/iFachFi97mA7oDOmP1G
         FWVbmaBXAuwmqkORuQW1QrfVE1xQ0ONfAJqfrPCGObT2bsW+6q1qup3mYsXEOT3V/kw+
         /yO9+jrN/5BnF+y44CWhzc5zXuRhQ/gK1idDGBMiVdj8GgIh+c4Ep+XjOHcftpdfV2g6
         NFHLzgjrscIGQuJjQF+Ixel/ipqXq7LmRAj5zWrZb4/aEpwapjRloiJLTL6BKK0wUCAe
         wS6VKGaDE0i9kqA6z8/fdx3n0NGwo2gkBdZw2srKj9IMBOmOLxJcONbkxSbwmXaPIXLD
         M/Yg==
X-Gm-Message-State: AOJu0YyIx4w1kuRHQRJ16C8Ep7c3znZSr+qIMFhG2mHThXjYUaCpi72D
	dLWD5wpWhGqIX/zhsBDxrBvO6gYWp4vbaa5ZzJepBQ==
X-Google-Smtp-Source: AGHT+IEe1uodH+3IyQtr92Z1k22THrOk5yUMvsqZ+SRyioLWNXxyQs1M3vDNxAp70KwMocTBSQOTzUNoW7aFaa6tu6Q=
X-Received: by 2002:a2e:9c4a:0:b0:2bc:bb01:bfe6 with SMTP id
 t10-20020a2e9c4a000000b002bcbb01bfe6mr1914692ljj.21.1694598284125; Wed, 13
 Sep 2023 02:44:44 -0700 (PDT)
MIME-Version: 1.0
References: <a17ba988-2850-fced-d225-97e1d11f6576@suse.com>
In-Reply-To: <a17ba988-2850-fced-d225-97e1d11f6576@suse.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Wed, 13 Sep 2023 10:44:33 +0100
Message-ID: <CA+zSX=aCwR5gxk3jyPDoWRvoFAAjORWigtrbaO9ow5EvmT_tZg@mail.gmail.com>
Subject: Re: [PATCH] timer: fix NR_CPUS=1 build with gcc13
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>, 
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Sep 13, 2023 at 8:32=E2=80=AFAM Jan Beulich <jbeulich@suse.com> wro=
te:
>
> Gcc13 apparently infers from "if ( old_cpu < new_cpu )" that "new_cpu"
> is >=3D 1, and then (on x86) complains about "per_cpu(timers, new_cpu)"
> exceeding __per_cpu_offset[]'s bounds (being an array of 1 in such a
> configuration). Make the code conditional upon there being at least 2
> CPUs configured (otherwise there simply is nothing to migrate [to]).

Hmm, without digging into it, migrate_timer() doesn't seem like very
robust code: It doesn't check to make sure that new_cpu is valid, nor
does it give the option of returning an error if anything fails.
Making migrate_timer() just do nothing on 1-cpu systems seems will
remove the warning, but not really make things safer.

Is this a super hot path?  Would it make more sense to add `||
(new_cpu > CONFIG_NR_CPUS)` to the early-return  conditional at the
top of the first `for (; ; )` loop?

I guess if we don't expect it ever to be called, it might be better to
get rid of the code entirely; but maybe in that case we should add
something like the following?

```
#else
    WARN_ONCE("migrate_timer: Request to move to %u on a single-core
system!", new_cpu);
    ASSERT_UNREACHABLE();
#endif
```

Thoughts?

 -George


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 09:49:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 09:49:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601141.937054 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMUk-0008O5-C9; Wed, 13 Sep 2023 09:49:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601141.937054; Wed, 13 Sep 2023 09:49:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMUk-0008Ny-9U; Wed, 13 Sep 2023 09:49:14 +0000
Received: by outflank-mailman (input) for mailman id 601141;
 Wed, 13 Sep 2023 09:49:13 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgMUj-0008Ns-Gn
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 09:49:13 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0623.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cb0174db-521a-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 11:49:12 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7839.eurprd04.prod.outlook.com (2603:10a6:102:c9::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 09:49:10 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 09:49:10 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cb0174db-521a-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MXgb+o9kIweu5tV+7YBl2EMUe/2Q2LXavYFpY3pS2xZHbXaMHv0DQa8T2gvroll4VsVws4nfiy+BW772IVgY1RvNgqj1Bmtd9S2A9PQBCmDs1ht8gJsnRdVxWWOW6xybq6Re0AYz3AfoA5FgLpZlaIJNKBKvkXTqofujY5eatOT1uP2bCFeXmyRBPAiMX+X5ylF0AnecpkY/kfrGbV+lJuyv51PJTnEAoL90NjQZWA/e28PAG/eU+6Fkm0gDr/BTJ6vazA6AL5XumBfbHcwW9ZKBY0voiTavEJpWTrmEmvkhibTRXdtAfN1vqu4rV0NnnO81u0hckhXlZtKxXamqQA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7JsknStAwn0a1b6zOzfjazy3CyHTY8TZHrEX+Omp/e8=;
 b=D/pc5vNghYGn4A4uFzhqbxyVroUfVG623aM8cgf3uGVnG/W5oDrrrWYYi0sBbJ/iFEpGKmrFj+J2nPTSeOK6a8Hl+psLYRW7TjZyBt18iBDOzvVCJXeWy68Y363et3Q2IkT7otSvj5osfZ7irwvZfPEOiOTsxw+mr5xKkuFJPZweX/+FUUmOYy2OryzpCx/qSmsMNkE/k2YScJrfVgvw7IlF1AnNYIhT4HxsaZJzGgJnMJU9toN7L7Bmh/47NaQpx/KdtSlLjbVPkJQeoZU7+JFjpC3LeTgE4uQqZltze/OTbYwVZ3QOlJkQeMXUfK7lsdDrGmrb2wOvEy0bSSSCig==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7JsknStAwn0a1b6zOzfjazy3CyHTY8TZHrEX+Omp/e8=;
 b=sEs03pRuVLY8zK1cM5URQN4PVaw6Z1JuYu780pIaT5/Cq3BBGpa4Sq4R7tFZFjoVC3ENVaYAkkRD29l5kiyZnuC1QJJk0mcqwH3CHHkCt6MqFG5MrjV9tmJS3SK5nMeyPujZkwEXxua0M/nCHYgmKHXGh+mfnQPQOeSVac9J80+h9nvLYLuQyjtTuRrusVO5T5OTVu56ZMiOSPI7hwN8gMEn3oiHu0r5QkDee6Ay0rxaaSIl6f/11n79+mj6taPXnlltRhGd/prxPO5JJKV6DFhn+w9kJW5mmpIv8dsXJakYxJV+MrLNqJYC6X6ullLF6ZeTHe+0BVkaXTojf1usHQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <db6dfc14-72e8-3baa-b05e-4d232b0e4756@suse.com>
Date: Wed, 13 Sep 2023 11:49:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v6 3/7] x86/asm: address violations of MISRA C:2012
 Rule 7.2
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
 <65bb6eb5167e1ae499073007679726555db4c4a9.1694532795.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <65bb6eb5167e1ae499073007679726555db4c4a9.1694532795.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0118.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a8::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB7839:EE_
X-MS-Office365-Filtering-Correlation-Id: b19308d5-733f-4cc5-3701-08dbb43eae00
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	w3+DAw1dy7oephlozfz9VAAnoD0O44lsFFPcyxn8m7dERuxBQQn0eUNO5g/CyiOUWoLMlt9pHfwzyFLgXsmbNR5pLf+KmXA2d1TYfk2diC7X2XQhWJmfgPwWyOhlchJTbnVwkATAyZpHIWKqZWDDQfvzbOE4rpzG+n0N1wzmv+Pj/XWXOu/4n6K/M68AbGxSmGhUIrcEtaQnEjM4PNsjl42wSNkPWRN9Mna2XYUdr1W6MFIQ2tP3k+FfbUoVRFZtc1tm+3jk0caGdGx3ZuTYK721KPGpNbhwnD/i0n1bx86aiH4grgC92SRPAgkGToTSpUks6sz+pvuiOBY+fCI10kp12mXtxnQTrETQYFu9rkupLRFG5yqk0XKW6mfIUpTfUWDQTqmpmb0S07sWM85ToIJ0Uswqwd17AvYHJqqMdA2VJ7NTE5ap1AfRTh4gPSJHuAu+QNpmuNLRfpbFZ9T6m/BOJIqYEkuBuxbbXc1yTCvYq6NHJQVbNRxlaZNZ4fAB+9O46ZOE3/Ask6XHM4SfKvEJA2Ip7l75CNVJZq80glfDeuMw4vGcHW3X9u/TyYrbFV8eFy0r9J59l7sh6FqE2tLJTEAundbtKzYlUbe7hcZdjMfjHkUv8n1BmM97IStcfrdBtfQT9mIJBlFUcF7v3A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(136003)(396003)(376002)(39860400002)(346002)(186009)(451199024)(1800799009)(478600001)(31686004)(6666004)(6486002)(6512007)(6506007)(53546011)(38100700002)(86362001)(31696002)(26005)(2616005)(36756003)(66556008)(5660300002)(8936002)(4326008)(8676002)(54906003)(6916009)(41300700001)(316002)(2906002)(66476007)(4744005)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U2FGcmYyYkc1L3hPNFlaODMxVHFGRVQ2dGFhSCs5Y0FWMnVFOVBXNkN0VENK?=
 =?utf-8?B?UGo1clZWbWlKL3BvTGMveEYvTUxCNStwL01qUTNWSi9sbTlHbExIL0xubk5Y?=
 =?utf-8?B?ZjBIMGNiM29qaFlSZDczaWlQYUd4WXVkNzVJRE5JTXZ4aFdsdDVJaGtuOEhQ?=
 =?utf-8?B?V0QrZVcxcm1LWnRhaEh0cHJkK25RUWZ6SG9VS2dIYXBpNkFlak1iMTBsR3lo?=
 =?utf-8?B?MGJZUmN6cmJpbHFSZDh0cHpKNlppM2VVK2tWUWpQM3dGNkt1SW1mRWlmTm90?=
 =?utf-8?B?ZUdQZ1VpSWwvT0cwWEY3djZPZ1E0UWdTMzVNeGtwQlVVZjZjWmpxQnVqaEsv?=
 =?utf-8?B?YjJaZURYVk1CMVl3NjVNSzNldVIrbHZqMEJEdk83VE5xMVhvZEpneWQ0czJ0?=
 =?utf-8?B?ZjlZSFBkVlFpRmM5a0ZWTHBFaEwrUlRCSkFBOVFER0h3MU5HOXZxaVVESmJE?=
 =?utf-8?B?QXRGVVYyQkJMQTl3Sk0zNWkrZmk4OUJjUGQ5UUE2dEZuRTZ4VDZTQW5GVmFX?=
 =?utf-8?B?MXZua0o0NFFWUEhqcHZzNmJ2d1ZIRXI1bkhLa1hwVWhyYmxRdDZQRGJ1RVpP?=
 =?utf-8?B?ejA3TXh1bFBkb0YyYzB1aUREcjVPQ2tOWWdDYkFralFDcVFpMW9sNGRJWTY2?=
 =?utf-8?B?YldZRkZ3ZnROd2dHTjByU3NUV2lYZ2pTNkw4cFBDdHJKUnBsdG13OUQ3ZFpr?=
 =?utf-8?B?dEF2WC9GUFc3WDRhQ2RNNjFkeEFIbmR3dUVaSVFyOGJEaG44MmF4c0kzREV6?=
 =?utf-8?B?M3NKVjByU0ZwV1FmWGQxd0sveSt5NUhscTdUdStiLytJdWhLLzNCVEdQRDVk?=
 =?utf-8?B?T3M4RUlFMDhCck4ydUtZL1Y1Mm04cXI1VUp6QnpwU2hCME5uL1VxTG5PbVJz?=
 =?utf-8?B?eFJiL25sVEt1RUM4Q0RRTktCYkRqMEVJYWVyWlhobWVtK2hSUHQ5UTVZVU1U?=
 =?utf-8?B?NXhPY0w2eGpzNjBaMjVweFU0bVdBRVNKQ0ZWNEMzQUZ6a1YvNnlvdnJTNjJO?=
 =?utf-8?B?MEJ5TlR6cEtxSkNCT0ZQRlcxV1VrUTdxQUNCUzI2MHFDRDh6ZjNYN1BoK1Za?=
 =?utf-8?B?RkVoZkNxUm5NUi9MaG1zeUJKRXV5aUZvbUJPVmZtYnBWcUVkOHM3eE93WVZr?=
 =?utf-8?B?b1BoczV3SHVFTEFPaWYzZXpPZGpONndhTWRzMlhRYzFISEZ4aGVzb2ZRcGU0?=
 =?utf-8?B?a2ZkNTRTU2VjVVdoSkM0OE1vaHQwUWZoNnI1R295R2Yxampmb0JtS29iZGo2?=
 =?utf-8?B?TnVkajFTRzBjUmN0REVkSTdrWTVmMHhaTTFleng3RXpLVFI5T3NpdGREZHFx?=
 =?utf-8?B?UVdyRW5LOVh0Wm5rNm41dlBWZHhzamg1QU9ZYVZlbjBNdldHYTNqbUhDT0Iy?=
 =?utf-8?B?Mys0aHkzL2s0VlhmU1ZWNys2c0wrWTAyam5SRTZYVm9jV3VmZkN4d3ZYNFNF?=
 =?utf-8?B?SnY5UDRDaXd0VmYvRDJ4Q3ZrM0RZUDBTRlJlSzN3bTFtOEhmL3ZoaWM4UVBV?=
 =?utf-8?B?eUZqWHpSSUdxeE05aHIxVTFPNlVxd09nQW54ZVZoTWNxNHdSU1RKRmNjQ3NU?=
 =?utf-8?B?Vng3MUtZRU9iQWF6Ti94blRSNG85M3ZiSjdsMTNiMFIxM3VEVllkWEVDWUFp?=
 =?utf-8?B?by81azlmM3ZvaWIyb3ZlNHFPUlFXR1RzTmN2blB6MDFzWHJVcUZvWUl5dlVa?=
 =?utf-8?B?NXZlSXJxcmhXcXpXejBtc29jdmEvb2lFTEFrUStyY2did3E0aEdRdlQzOHpW?=
 =?utf-8?B?ZzNwWkI0VnFRZUlSUHdJK3pXK2szdC9ucHNaTEZEMlRvdUw1dy94cGYvM3ZF?=
 =?utf-8?B?bnFQa1lEMk1UejBsWTlrZmQrWms3VzJObTk0STdVbm02RGt2OVJLcUNoY212?=
 =?utf-8?B?ajR2aTgrbXlkMloxMmN4OXRiUW5ZNEo3OTQ3RWVGMjA1anBOTVAxUTlrUHNB?=
 =?utf-8?B?aXZaTHl1aHR0RStZM2cxU0h5eUFMUVZEYXZzcW5zR0F0cFlETjYzOW5LbW5C?=
 =?utf-8?B?S0w3SVAvR0g4dW54NWx5eU9oanRXMURHNzhvc0F4cVFFd3diTXFJYnRrSllI?=
 =?utf-8?B?M1dQaklZYmJWN2xMWmpnbmZpdnFqYzB2cjJTeVFQUjNDQS9YUWJNS2xNLzNH?=
 =?utf-8?Q?Bekwrwqm2dNVGnat7Vvoueam0?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b19308d5-733f-4cc5-3701-08dbb43eae00
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 09:49:10.4418
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 27KjUWcRi5uXLznsx1KIwlVXwasLDqKXrwEBsS3X/UCZhmZPlEFYuW6U8Tb+UaEtxdYPftg9s4+juVY//u1kgw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7839

On 12.09.2023 17:39, Simone Ballarin wrote:
> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
> headline states:
> "A 'u' or 'U' suffix shall be applied to all integer constants
> that are represented in an unsigned type".
> 
> Add the 'U' suffix to integers literals with unsigned type.
> Use _AC() for macro costants that are used also in assembly files.
> 
> For the sake of uniformity, the following changes are made:
> - add the 'U' suffix to macros in 'pci.h'
> - use _AC() for macros near 'X86_CR0_PG'
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>

Changes look okay, but same comment as for patch 2 as to tags (which
apparently applies to the entire series). Plus "x86/asm:" is imo pretty
misleading in the title - you're not changing any assembly code.
"x86/include:" would seem more applicable to me.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 09:54:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 09:54:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601147.937064 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMZN-0001Ts-07; Wed, 13 Sep 2023 09:54:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601147.937064; Wed, 13 Sep 2023 09:54:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMZM-0001Tl-Tg; Wed, 13 Sep 2023 09:54:00 +0000
Received: by outflank-mailman (input) for mailman id 601147;
 Wed, 13 Sep 2023 09:53:59 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgMZL-0001Tf-K6
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 09:53:59 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20631.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::631])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 754ac6b0-521b-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 11:53:58 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7954.eurprd04.prod.outlook.com (2603:10a6:20b:237::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Wed, 13 Sep
 2023 09:53:55 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 09:53:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 754ac6b0-521b-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gt2FGKUoI8LKUysHjlBs1gDUkxW4OAgqeoeoVGkCScA0rRkabdw8ZTc18KR8VGtLUZ3ImpF2gSs1GsXphqzOJbgFLTAaYLbzf3PI690PpXl64tJoemKE8YPHA1eZ7dyOFiwLSkMlb9SaZJ2hgmPAecWjA4uKdDbeuKmuVETtHB0roo8TQXsXJy2ieQrToCs8DqU/mBV/DO8HZKBeofKBH0UcZ11Ap8KWfBuCdOZjyOKmtF9YeKJ42gtGJsv9d8MBMn9RH5yCSan9hzFXx4/hR+C7Te89a+dxff95a0VnxbnNH+aKyeRgAmaW3s3t923R7TC07gmYfjLsRUaCztiSVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wrsb4kzwRVo3Pofm0OhR+ZGLA4UNrf6gXBrOLVhti4I=;
 b=NxwwJ3zkQwwpPdkobYaxkvkS71+Aov7LKLBScb7evW1fJZ5B/cTpJYZ7ViytlhTOw+MeFVqbnvcYBm+O151b+uUaPVqtKZ2PVmUrSTfmWb62+652Cziq8ger+WufZMlqZQrDiZSd+9aTLTWDNcbeMyyeOPKZ+2vCOxarTsrJntKZfMZFuC571MEVgXzE6REwR2NAbWH8fG63DhZ0zMdeb53/DtRwIxisyeIfT6GdVUbAaJ1ODdTe5uhKUlRIwFDMeMc/AaLt53jwgIpkssRoSterhLxMXi8kMYQuU+DT/mcHO+O5jiue5XLP9jVR9KJ1adzHDK0ldNL8Cg4nwC3dpw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=wrsb4kzwRVo3Pofm0OhR+ZGLA4UNrf6gXBrOLVhti4I=;
 b=KIXLME7bRXYQFNAPkrJ0QCw7r5YzNb2LLF/ylfnAGfhRwcqBLu9+gHnDALHTQDeAC6mDY+3RNJAonhrwrwqtTfMeRJ0nkRSk9v6LJvoKf5afyR3tdUkWKWlLC2PV9lsPeWppqS7eN2aWjoCrfTXChyME/CXM6kr0+d5xash2gtwvlp9F0Rsq7FBdstE9GDXa/L2gmOPwRNknxIOjlsJZ+IU9oY3Ytg+W9HhlhexZbj2Dqh9dvjKiNaM2Y3T43+fZPtjvi3XKciHuRzdXr85MvYHDu73YqY0eBlHV0B/gXSF7uA5Nh0LtjSWfj/L6kShEGJAlx3riuItGGGbHajFUaA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c0c26270-e424-8122-4ae5-e2c0e548db7d@suse.com>
Date: Wed, 13 Sep 2023 11:53:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH v6 5/7] xen/x86: address violations of MISRA C:2012
 Rule 7.2
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
 <33185adc43014dff090ea6832a5a88e15caf5f38.1694532795.git.simone.ballarin@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <33185adc43014dff090ea6832a5a88e15caf5f38.1694532795.git.simone.ballarin@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0100.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9c::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7954:EE_
X-MS-Office365-Filtering-Correlation-Id: 236df274-a6a8-4612-4385-08dbb43f5818
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	evkLJRA0e1AaDwq+ba6K89YSSaXEpmM6Tyw/guYNSHoohiGiyoyn6UuQHmV8VoK7bLY1YffNVejqke8+mnvDsXEvOIr/cmrePrmRtdsk68DYBEKj/K1UBN6UWLKpmS+vXIdsPElu04HbxNjrQPIvx2LgXC9FSm7qcfR5F7Bk8NqLzrH4vSve88HN3weMnvNx+OAzlQ+EX049rXVNJ1E4nkP7k8eZnkmcqTzZjvdCQjHgWLMIFuwO1jUUn29CUnxWnUXPc9ZnbQdcJmIY+vdoz5qPr2td5AjLe7WJYlWXSMVTDpdBT3slS97VbPvnk03TurHJBdiA844+bmJvHi+FYQmu6YbI6tvrRLPGpBnjmWhz8a3N8stSaORDXkPVCtV1CJoFjb3m9o/gel4oSpuJjziiVhv5CB4CrlX7i3Iv4l9AdnpD4TdexiKDjIbxV+GUy4Y9H4LLQUHDf8FR1UWwQVejiMBnhWshOVwkh3xMU8PJfNOs+Wiuvi7rYZozuqydemwh7F1U13RmXJRLQksHObZVfKfgm9csfDtJ6iUWhAQRNqzz3CWHYRooMkobWGcOd/AksaZJnAh9YDMaP9lMqMjhE7xIT9jbVSnMwxq1C9MiDYD1u/7sSNtQBwLs2MjwjXpPfHTy+VypzhEYWZIqqA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(39860400002)(136003)(376002)(346002)(451199024)(186009)(1800799009)(83380400001)(38100700002)(31686004)(54906003)(66946007)(66556008)(2616005)(41300700001)(6506007)(53546011)(6486002)(26005)(66476007)(4326008)(8936002)(8676002)(316002)(6916009)(5660300002)(478600001)(31696002)(86362001)(2906002)(4744005)(36756003)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YUZSOFdNSUVqZEp6ektIR3VrWTIzb1hqNkJ4YWRLb0xxRnZVWEtsQndWY0hH?=
 =?utf-8?B?NUpCSjFoWVgwVVQza3dmUUNZbUIrL3JuRXVBTnMrcFBUYlJoMkZ5K2VORm04?=
 =?utf-8?B?UGJCa1gwZlFwejRIOTBtaW8rL3VzaGpiYzRmaWR5TWNoczZydGtpMENSOXpn?=
 =?utf-8?B?VFY2MWJ3RWlXbndSTGY1TVR3MjY0UXhLTjlGRlk4Rnd5OUhVRWk1YmRPejZ0?=
 =?utf-8?B?aEhEbElRYzhWWUQvdzg3RzA5K256NmtxRVhwenMwK3gzdVVDSWthWG1mTTZv?=
 =?utf-8?B?bGRHWExhVFhnaXVreTNBV0NheStUYUJhQXl1L2UvbWtsWUJPUDVlMklReEdN?=
 =?utf-8?B?N3o1TXlGelh1VlFwem8vaVZ6ZUs4Q1ozc0U4VlNobldtbkZ1ME9MYkhjWWMz?=
 =?utf-8?B?VjJaU3VyalJQbml4QXI0cWpVc3kvdm5YNHhuYzZqMTE3bU1Gd2I5M0svazJh?=
 =?utf-8?B?czNvNmZLT29XMFBLcEdwWWVOUXV5OFZ2di9QQ3V2MHM5ekhmdkZJRmhBV0t5?=
 =?utf-8?B?b1VTVlBMSThkTzRWUzlhcC9MeFI0RWRnSUV1RHFEakMxQ0xNTjdyZVR2V3Yr?=
 =?utf-8?B?ZW9oKytxRGNoL2ltbDdJTjJKdGRiMVF5cEpra042cnJqLyt6VCt4eVRGaFBp?=
 =?utf-8?B?dTV6YjgybEhEaTJjNjFXNnBPWGt5NWNxcTgxNWFvcEJ1TDY4aGtXMk5vZFlE?=
 =?utf-8?B?UDBBZndHYlkxTDJOVHErYkwyMmRXbE40b3VkenVmTTBSU1hUQitjVXdRSGFP?=
 =?utf-8?B?M21qcjYweTAxeHpsblZlT3NnREZHcnJSVmFLZzc5blNZb0xVQkcyTURqYk1N?=
 =?utf-8?B?K0dnYWk5Ni9jd0htOXptVUd3OHRKRXJyRzN2aFlqVjZvejFSNlZ5VlljcWpT?=
 =?utf-8?B?RW9WcGpCRG8wbnBKWnRZcXYwYS9tcEJiNlRIZVZhYmJQRENsOFRsaEJwMXFl?=
 =?utf-8?B?UkgyTUdtVkNvTkJhUHdEeDUyUlRYWmZzelh1L0RhTkRsc01sdDRUYmhMUWtG?=
 =?utf-8?B?M05walFQUkxxOHBZQU8vQXpmYVNVRWpqazRBVzRteWsrYU9HSVJGNEdia1dC?=
 =?utf-8?B?L051VjkzTll1THJUUU80M2ZPZVd5QU5iWmZSSSt5SnpIZjNFQlpUSTNqZ0FF?=
 =?utf-8?B?aURXdGprUXhnL25yQW94R202M3locUJyTlJITGdNcFJuZFRmRU54RXQwODBR?=
 =?utf-8?B?LzNkaVZvOFZRakNuUmVxMXBSR01Wc3RMdmhwUWs3UzVsckNUZUdzZFpzUVE5?=
 =?utf-8?B?VExqVmh5OHhZaUtZMHhRRzdsekNGWlNYU0lCN2pTQks5OUVPczFXNlRVTng0?=
 =?utf-8?B?YWswQ3pPODZDTlc0UEM3QXlvanRiOUVTTkZJckF0bStOZEJJc0kwNWJ6RXND?=
 =?utf-8?B?TzdEZkdYZ280NUxpQjBaRTU2enpkeDVLUUhkV2FWV1o2M1oybERtcXRlZzRK?=
 =?utf-8?B?MUZGY0FsTlJ0S1BqVzVnMnZGdm5QTS9xNWNsZHJmWlRWTS9SMFRQeEQxRUNa?=
 =?utf-8?B?WTcyYmY5NjBkd0hUTFRwcFZXTy92MkR0eDVZSjJrc3lCLzFvQzRLbUg3REx2?=
 =?utf-8?B?MkllNkE5a053L2NrWVI3VVJHemR5akt1WFllTFExWjJ6VHZnaFQ4TDlYb3M1?=
 =?utf-8?B?bEFPYzUrOE5telFpak5DWVRzYmxUZjRSaVArK1g3dnJaZFBOc01YRHRNWTUw?=
 =?utf-8?B?Wndwc0ZqaWdhUXl5eEpFZG4rYXBhcG9BUUF1M1ZoYXJpWWpFSmtGWnorcVVw?=
 =?utf-8?B?eGgxTmE4Q1d2NmdKSkdzbXJRYk95YnBabERuUHJsSnJxNU1vcmdQRHlYNU5w?=
 =?utf-8?B?a0FQRVR1OHh6NEtSR1FNZ2xOK29Oem1LOGpSZFNhV2pRYUFrZjdzYXMyK2Nr?=
 =?utf-8?B?dVNIeUJLY3Z0ekNVUjV4SGVIVU5YZVVaUlp3LzdRWnJ0SkJCWi9DZ2RyeHdC?=
 =?utf-8?B?eHkwQ2pJQUlZYVk0ZkNTYzdJYVVEUG9lLytWNUxYaU1OL0tFUzBpQzYxbjdS?=
 =?utf-8?B?QkthSDRoWURNdmprNEZkcU9jckc4L0hXSFI1dU5NcEdOQXRGWGVrNFh0dDJw?=
 =?utf-8?B?U0pBMEFhd2hFRk44ZUgvYVV2a09xMVRweVNDWW5obnNjb1E2cG8zOXdDM1Rx?=
 =?utf-8?Q?DWc2ooJJuf7mumJhS7KsurRj4?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 236df274-a6a8-4612-4385-08dbb43f5818
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 09:53:55.8152
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9f4RF6LVhlRWTyLtL2Ogs0h9WafBrb8ho/13CtxmS/Exz+sS5Vihaw+kDvDVkv8rf3lrtmoqB2jd/BU9jZcU6Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7954

On 12.09.2023 17:39, Simone Ballarin wrote:
> --- a/xen/arch/x86/percpu.c
> +++ b/xen/arch/x86/percpu.c
> @@ -12,7 +12,7 @@ unsigned long __per_cpu_offset[NR_CPUS];
>   * possible #PF at (NULL + a little) which has security implications in the
>   * context of PV guests.
>   */
> -#define INVALID_PERCPU_AREA (0x8000000000000000L - (long)__per_cpu_start)
> +#define INVALID_PERCPU_AREA (0x8000000000000000UL - (long)__per_cpu_start)

Looking at this change the n-th , I can't help considering the result
inconsistent. Imo either the cast also wants changing, or the constant
wants to become -0x8000000000000000L (in whichever way is appropriate
to express it without violating any of the sometimes picky Misra rules;
maybe ~0x7fffffffffffffffL would work).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 10:02:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 10:02:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601152.937075 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMhM-0003w5-Qj; Wed, 13 Sep 2023 10:02:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601152.937075; Wed, 13 Sep 2023 10:02:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMhM-0003vy-M6; Wed, 13 Sep 2023 10:02:16 +0000
Received: by outflank-mailman (input) for mailman id 601152;
 Wed, 13 Sep 2023 10:02:15 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yjWf=E5=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qgMhL-0003vs-83
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 10:02:15 +0000
Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com
 [2a00:1450:4864:20::233])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9c4e42a8-521c-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 12:02:13 +0200 (CEST)
Received: by mail-lj1-x233.google.com with SMTP id
 38308e7fff4ca-2be5e2a3c86so9500691fa.0
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 03:02:13 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9c4e42a8-521c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694599332; x=1695204132; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=0NwSmEBgqO3nEc2/0A4axNCk/gA8cPgJ5LCtiK++GnA=;
        b=E8D3XGrqcOZQisTavheXjxxaZycan6CufZPzuLbO1x3GpW/Yc0oZ3gaEJJ2TGC+3Db
         OUSxclJriyrds7JpA0vZksDK5PdC5r1qIXXknsHk2h4RznfG7OYfPntsqwqdKVJ/84/E
         kuaB1ejZK2PcjR08avcApW61NGWo3I+huUdfQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694599332; x=1695204132;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=0NwSmEBgqO3nEc2/0A4axNCk/gA8cPgJ5LCtiK++GnA=;
        b=l8jvNhPejx+TJ9lm0+XDjW9ZRfwhjlxznNA87AOrtO2oFf2M9zhTGCuLN1Qltk04LH
         2bcFBRJQHh3cPc2iunXHGtevNqwo6O5Eq9MFkjaePLU4pPqlnXeJR1aeMKpqX834GWAR
         5qP/j1VVIj29W3T5ByFvMQSEJfbPhus0mT3+OJ8MsmGDosz+T5PVJBVIbikhK81Z8emU
         Uz2iEYT7vERjL3PBC1SJcfEWIdLxT7J6MpayAObvXt/jknc0Dquvff5wcJ6Jep3M18x+
         hS0Ud1LYHNvvtr4A3hILcHXpDB8gkSo3ePKwzGGrN9UrScoLggfCXwZsVHculEpU9I6W
         D8LA==
X-Gm-Message-State: AOJu0YwpdHpHki7WxgC9pzrSIuGpr7zPxEm/vlNh+SYEMy1NtUL8f/xD
	HQIQq9ekCggfDSggntcV8NoBtZyfEi//XyvPd8cUpOpH09orojDx6MbzjA==
X-Google-Smtp-Source: AGHT+IEBxpCe7+j+BhVMKC5GA7m6a/LW+ce+w6KJW73G7Zo1/LFcEI/ySF3ZW+8pLKS9TnxX7CPisQUycsqPtOwNrQE=
X-Received: by 2002:a2e:b4ab:0:b0:2b6:9f95:8118 with SMTP id
 q11-20020a2eb4ab000000b002b69f958118mr1747686ljm.7.1694599332562; Wed, 13 Sep
 2023 03:02:12 -0700 (PDT)
MIME-Version: 1.0
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com> <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
 <27ae69b6-bc57-dee3-2528-8311a38decda@citrix.com> <874jjz3juk.ffs@tglx>
In-Reply-To: <874jjz3juk.ffs@tglx>
From: George Dunlap <george.dunlap@cloud.com>
Date: Wed, 13 Sep 2023 11:02:01 +0100
Message-ID: <CA+zSX=awNgMH1+5s9u9=Ai9ior4bt6iDvsoMWQrbx1szDxkLsQ@mail.gmail.com>
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
To: Thomas Gleixner <tglx@linutronix.de>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Jan Beulich <jbeulich@suse.com>, Simon Gaiser <simon@invisiblethingslab.com>, 
	"committers@xenproject.org" <committers@xenproject.org>, 
	=?UTF-8?Q?Marek_Marczykowski=2DG=C3=B3recki?= <marmarek@invisiblethingslab.com>, 
	xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Tue, Sep 12, 2023 at 8:57=E2=80=AFAM Thomas Gleixner <tglx@linutronix.de=
> wrote:
>
> On Mon, Sep 11 2023 at 19:24, Andrew Cooper wrote:
> > Furthermore, cursory testing that Thomas did for the Linux topology wor=
k
> > demonstrates that it is broken anyway for reasons unrelated to ACPI par=
sing.
> >
> > Even furthermore, it's an area of the Xen / dom0 boundary which is
> > fundamentally broken for non-PV cases, and undocumented for the PV case=
,
> > hence why it's broken in Linux.
> >
> > Physical CPU Hotplug does not pass the bar for being anything more than
> > experimental.  It's absolutely not tech-preview level because the only
> > demo it has had in an environment (admittedly virtual) which does
> > implement the spec in a usable way demonstrates that it doesn't functio=
n.
> >
> > The fact no-one has noticed until now shows that the feature isn't used=
,
> > which comes back around full circle to the fact that Intel never made i=
t
> > work and never shipped it.
>
> OTOH it _is_ used in virtualization. KVM supports it and it just
> works. That's how I found out that XEN explodes in colourful ways :)

It should be pointed out that there's currently a start-up selling a
product that specifically runs Xen under cloud providers -- Exostellar
(was Exotanium) [1].  If cloud providers do use ACPI hotplug to allow
on-the-fly adjustments of the number of vcpus, Exostellar will
probably want support at some point.  (Perhaps it would be good to
rope them into testing / maintaining it.)

 -George

[1] https://exostellar.io/


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 10:05:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 10:05:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601157.937084 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMki-0004We-6q; Wed, 13 Sep 2023 10:05:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601157.937084; Wed, 13 Sep 2023 10:05:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMki-0004WX-3V; Wed, 13 Sep 2023 10:05:44 +0000
Received: by outflank-mailman (input) for mailman id 601157;
 Wed, 13 Sep 2023 10:05:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgMkg-0004WR-1n
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 10:05:42 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20603.outbound.protection.outlook.com
 [2a01:111:f400:7d00::603])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 17e231e4-521d-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 12:05:40 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBAPR04MB7269.eurprd04.prod.outlook.com (2603:10a6:10:1a4::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 10:05:38 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 10:05:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 17e231e4-521d-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Nq7HBpIkHhNNpzMeuA7zCfFZIttYbxP8gtsrpH0cS58wu/FyeYTF9+og7RiktynPDc6OSODGh5pjWa1isZvVqn6tH9l1DEhsVN/BR50/QShbJA20lJd+o64ZpFcPuDUa7K5yH4JzcT3qS7O1bZx8amnBYne0gS/s+v20eUMcHFVzdU7ZxZHWMltHsBjw5I54+h3fRMdD1fwoJ7ZVllQH2er7TE4bEU2WilokgjLMkEa59qgfvhxaTTVB8cntQQUVi71keYGwQRgmfTpNjLOiINURRS17DzuWXs7aBrHxzouNIgAZLbpkuvxXndbTtTif3Xvs6mzQLR0m9PfwakrOlw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OinQoExWZMlPc7L6eagJNL3rh8WBAkMS4xivQnrIhDI=;
 b=euqjFC6alU/Oq7OIDEEKIpsPgpEep72M06xpR7rWq7p6gIER2ppFfwGssbqbWIwbeohgA/Q0j/J6IaC3MwPfu6vsGe6T56Pu8OrbfceKaJEk3y0VqKP+rNVlPsNnkWZYwwtv+IEdoZFBMP6NY7xjumop0gHuX4gQVaX7h3FMJIDqdZfS1uWnsUvLR1/ecRrRRt7xA6wSweoAX8V8ntmLJFz2m5fxuW3U8Jbqv0+VehLo3nCXWTYXZcMSWVI/SgtLl7YxtJtqFlqXA/bTA+fiXIQx2DZT+hpWfecxM8ox37GOiTh3EuJrphg8V8OwYwmqlzvywho9a3raZM6QpukgKQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OinQoExWZMlPc7L6eagJNL3rh8WBAkMS4xivQnrIhDI=;
 b=IWiMPlB4qKGNtVWJqtpzbE/VqMylrfRtFU/x6n+mlkGlxB8K0M7zbXpv7G/59ddQhg1vwtErIsneDrVbK6pyY8RRnnjp3jkJcFidDPe76G3NA299VPjJ4/SQ48UdQEp9wEc/hRpl6MN6BPc/4/MiiHjmmrFLLF6IbatZBiji82ws/+6GvHFw+5RD+cZzKBhhwqFq395LCll2pw0JBcr+ruqEJNUa5UFdwkEc/0SquTQBxt46DYvkTsC1CuKWnjD3/F7utqfHD84cX9bL0uhV7VWayw4coMSh6b/FSCHeXmw6aBi1ADQYYhALJ8S39hE44ZUGr+CR1HW5AoftFKoccg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ea6686a2-dfe3-4a6f-5d3c-a729f95520d1@suse.com>
Date: Wed, 13 Sep 2023 12:05:35 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] timer: fix NR_CPUS=1 build with gcc13
Content-Language: en-US
To: George Dunlap <george.dunlap@cloud.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <a17ba988-2850-fced-d225-97e1d11f6576@suse.com>
 <CA+zSX=aCwR5gxk3jyPDoWRvoFAAjORWigtrbaO9ow5EvmT_tZg@mail.gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <CA+zSX=aCwR5gxk3jyPDoWRvoFAAjORWigtrbaO9ow5EvmT_tZg@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0136.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:95::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBAPR04MB7269:EE_
X-MS-Office365-Filtering-Correlation-Id: e002cb13-150b-483c-d359-08dbb440fab6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	j3B+bHamTxTmfXwchXz544iTU5wwcerrf6536KaEMffCEJpozIypEtxnp0PpHMFrvuNwEtRfERFYIkVt0Ls7wH9UFRXmtp+vW7ZDMuYrFco6pYUE8+Xve98Hwde+W4fnJjwCIQvYO9dBH5vxmY+U4J+46a833iInt11VMQm6yyOVxHqmmiP6vLopA0FeVH7+1Lm71ck7cH2+tvhdSTjiO1yUCqRv9XA8giaeyw1NgxglbtOJzByeJaD2U4pTiJlvRZwA766OUt1Wbi8xcSPtrjxHyIi4sYY1/M6jlkxUmCKBnd1iN8jzti64f1PvBjSz40R4YjWsLvgCCmIjT8dV7qYSZTbm8eWth19ne1M2pxonmyg2gYOUUAx4Iio649WoBxx0/eyq9l1oX71NXaUjcZOhW9lVSUHY4cQ+gHO1EP3AgRXLq/GXm7TmKmddolimdVI4qb2SEDquhZpO8YmikaTV4ZVDn0pX+6yxNCtmSpoozj9wEaOv21y9Dxiu7jdP6MoW8XcKzoWXgpOZkYpXEZwUjFkYStur0K7FszKnEh1wqr5rhA2T68KEB8F2LoAxqV3J3eSsHFC2JIvGYyGswVhVF6iGYnPdR9e+P2nJrC9xY49XehcBsDOim1hnggeOCsiV7mWJIOAlmdp67BYOqg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(366004)(346002)(396003)(39850400004)(376002)(451199024)(1800799009)(186009)(31686004)(2906002)(5660300002)(41300700001)(8676002)(8936002)(4326008)(66476007)(66556008)(54906003)(6916009)(26005)(66946007)(316002)(478600001)(53546011)(6486002)(6666004)(6506007)(6512007)(83380400001)(2616005)(36756003)(86362001)(38100700002)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U0VxUitQbi9KekJLMTJsTE43M1NudWVpRnZ4V0NsbDBoRlJYbmp6eGNsZlkv?=
 =?utf-8?B?aG9reWozbEtaL21HOHRMYzM5Wm4ydkU1VEZ2ak9OSzZFUkt3MVN5SkJPb2Fk?=
 =?utf-8?B?NHF0bDRFaFl3TU5zYk5oV0tTdnAwS1IybytBSVhiSHh1U0twZTJsVEgwZ0k0?=
 =?utf-8?B?Qi9JdkZEZVhSb0JwZi9KcmV4K1JNME1OblN3Uk9hZ25pRFJCbHNjS1hlQ0Zy?=
 =?utf-8?B?VGJpMVRDOWZPQnVYdEZGbmFxSm1RNTRmY2RpY0tPQ2IyaVcwdHA4T294ZVlE?=
 =?utf-8?B?cWFNTi9WUkhDY0VvR0FleGVHUGhxZW9saGlZMklyK2tPTmdmeER6cXRITHFK?=
 =?utf-8?B?UlN3bitiOEx1bFQ0TzVWb0wwb1ZMVnlmSHVhNnhJTGJaNkl1aHc2Ym5NNmwx?=
 =?utf-8?B?Z2NSaXlRT0x6Sy92YWRrWlk3eE12cnk5OUM1NVlURVJaZ3RXQndWZ2t2MTFz?=
 =?utf-8?B?SzNtNlhveExWVzZUNzZrajdxNFJsNTl6Yk1iaUlOMGNFSkxiQ2hRczA5MVZK?=
 =?utf-8?B?U3JGL3hOenhEZnQwU3pWeTJFZGtqM2J6UE9vb2FtaDRseVFOV1RtQXBvbHNJ?=
 =?utf-8?B?NVYvWUd2bGd6bmJjWTEwSXdha2lEcHczM3FMQlNFZWhUYWJNRzdjenJXVVA1?=
 =?utf-8?B?RndoeVdUMkNvTTJaMTY3MFpmRFN6YTRQb2oyTW1SVUtnalI0b2pBVmt1cXd5?=
 =?utf-8?B?bi9jY2k1Mk14WXptdDZjUWVUWGhQSkxoQVNNcHNvamV3cUZCNnNsUlZxbWI1?=
 =?utf-8?B?OGZ0M3hnd25ZZ2pMMzQySUxvU2ZJMGxOSHpSZXVkNWVXY2dnV0FuWmt1bFk5?=
 =?utf-8?B?UG1UOVYrQ0M5QWNBSEVoZ1RJRG9WQnJIWlJWVHNTWlBVTGxRU0trd3NwVjVz?=
 =?utf-8?B?MjAxTmpydSsvUDNCTHBNODJCOHByczRYbno0b3NsZ0NCakJ2Z3ZPdHlTb0w5?=
 =?utf-8?B?aFRUV0FGK0hqKzdIK21TdnU1M1VCZUZIS2NmM1MxaFNTamh5N2dLT2dwSC9E?=
 =?utf-8?B?elhYQjIxTENQUHRsT0lDc01QNDNnUkZVU2pqZEpieWRWei84RTJkMklaRFkv?=
 =?utf-8?B?K1A0aVBJY3FuVHJJOHdpZWNFY2pjTnJyWFZPa0lyd0RzenhnWEt1eVFZeEpu?=
 =?utf-8?B?MmRML3VyVE1RZndZU0d4QmJkMlhpdzd4N0dDelVFSEFiaG8vYkkrRWZHNU1H?=
 =?utf-8?B?UGhlNTFxNSsxSTZwSi9oNjMydWZSZ3lReWdFUWxXUWd0M3dtRHRMS3c3WmZN?=
 =?utf-8?B?REJxbXhGN1U4d3cwN3JwYnAwZ1BITTZaQXd1N0VMcStaUklSRmRPUmRBNUQ1?=
 =?utf-8?B?MFV0RFdIMHVGdmZSbUpkUE5nNDUzemozL0cxNGdtYyszaE1qOER1emh5dnVp?=
 =?utf-8?B?d1Rva0Q3ZFBKd01lVzg2ZnI2WGNkR0tFdklRRW8xWkZiZjJQUEcvYWJPblE5?=
 =?utf-8?B?TmZHaUx6UHlDT3VLTHhWS0RaTVA4SVcwUGZlVFlqMG1lRmVjcXdtRkRpcVJN?=
 =?utf-8?B?TlEwMm55SHBhaFlXU0p3ZXYxeWRVS24wQ1ZtakZxeUUwOWt1MS9FbUJjL09t?=
 =?utf-8?B?WGM2akJEOERXTUhxb0JCZ2hxRHk3QlQ0QXFhK0FDUEpVazdpQy9TRVd2OG1W?=
 =?utf-8?B?MDN1b0lQVTBHWVZsS1Aycy9kS1Q0S1YrZUhHUDhnMHFDQnp1Yy9hSTVFYzFn?=
 =?utf-8?B?TWpCa2Y1NjR0QUV6M1FWK1Q1cmxna1RNOGNyS0VyMi9OOTdkblUwMUJXUWk5?=
 =?utf-8?B?aFY3Q3AydTBzcFJvaTJ5TUZIeVVJNnNiNFVYdGFxbE83NDgvNEtFWTNGcmty?=
 =?utf-8?B?bjBuZ3VjUG1qYWtYc3NoNEpONER3SE1hWHlQNXZpVGpJczQ2S3N2Q1RIWUNV?=
 =?utf-8?B?eEFOdUgwUFVpT05rclIzb0toRVRtNzdVa1Y3M0FzZ2R4RGpWUkUvUnlpangv?=
 =?utf-8?B?S0tSSStPdHdCWkpBbDVjc2dRK1c0S3Bya0R1cFp0ZjB4NFUyWUVQNk55WjdH?=
 =?utf-8?B?a0YxNkwxUVJBU3B3OTkzNTVmMkM2Z2l0cCtyM3g4b3hXWkMyRUFnYW1NeDRt?=
 =?utf-8?B?VUIwQ0RsSWpEYktOUXVoZGhwQWxJTEt6UnNJalZDbVNDTGlybk9RS0dLdE1M?=
 =?utf-8?Q?3vqmuV1wjOh/VBKl/qDIMe+yO?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e002cb13-150b-483c-d359-08dbb440fab6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 10:05:38.1729
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Ql3hcYU/3eO2e+JthEyXp0l/2CppQGSPcyU/XcIa55WLq4ljhuWQE2H1OThRv2zZaKS+8st66HZOquqXzF+CyQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7269

On 13.09.2023 11:44, George Dunlap wrote:
> On Wed, Sep 13, 2023 at 8:32 AM Jan Beulich <jbeulich@suse.com> wrote:
>>
>> Gcc13 apparently infers from "if ( old_cpu < new_cpu )" that "new_cpu"
>> is >= 1, and then (on x86) complains about "per_cpu(timers, new_cpu)"
>> exceeding __per_cpu_offset[]'s bounds (being an array of 1 in such a
>> configuration). Make the code conditional upon there being at least 2
>> CPUs configured (otherwise there simply is nothing to migrate [to]).
> 
> Hmm, without digging into it, migrate_timer() doesn't seem like very
> robust code: It doesn't check to make sure that new_cpu is valid, nor
> does it give the option of returning an error if anything fails.

Question is - what do you expect the callers to do upon getting back
failure?

> Making migrate_timer() just do nothing on 1-cpu systems seems will
> remove the warning, but not really make things safer.
> 
> Is this a super hot path?

I don't think it is.

>  Would it make more sense to add `||
> (new_cpu > CONFIG_NR_CPUS)` to the early-return  conditional at the
> top of the first `for (; ; )` loop?

But that would mean not doing what was requested without any indication
to the caller. An out-of-range CPU passed in is generally very likely
to result in a crash, I think.

> I guess if we don't expect it ever to be called, it might be better to
> get rid of the code entirely; but maybe in that case we should add
> something like the following?
> 
> ```
> #else
>     WARN_ONCE("migrate_timer: Request to move to %u on a single-core
> system!", new_cpu);
>     ASSERT_UNREACHABLE();
> #endif
> ```

With the old_cpu == new_cpu case explicitly permitted (and that being
the only legal case when NR_CPUS=1, which arguably is an aspect which
makes gcc's diagnostic questionable), perhaps only

#else
    old_cpu = ...;
    if ( old_cpu != TIMER_CPU_status_killed )
        WARN_ON(new_cpu != old_cpu);
#endif

(I'm afraid we have no WARN_ON_ONCE() yet, nor WARN_ONCE())?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 10:11:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 10:11:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601162.937093 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMqN-00061f-QH; Wed, 13 Sep 2023 10:11:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601162.937093; Wed, 13 Sep 2023 10:11:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgMqN-00061Y-NS; Wed, 13 Sep 2023 10:11:35 +0000
Received: by outflank-mailman (input) for mailman id 601162;
 Wed, 13 Sep 2023 10:11:34 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VJSs=E5=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgMqM-00061S-CJ
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 10:11:34 +0000
Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com
 [2a00:1450:4864:20::432])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ea13f538-521d-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 12:11:33 +0200 (CEST)
Received: by mail-wr1-x432.google.com with SMTP id
 ffacd0b85a97d-31dca134c83so6688857f8f.3
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 03:11:33 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 t15-20020adff04f000000b0031434c08bb7sm15028074wro.105.2023.09.13.03.11.32
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 13 Sep 2023 03:11:32 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ea13f538-521d-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694599892; x=1695204692; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=GGgyci124H8hidEcnFo2r9YAeq+z/nN9ybuqnCCcg8I=;
        b=jJMoIvrmlOhWWnwN33C45sQuSz0sF4L1xFYvbskRMfBp/a5u0sqGMBAmGEgy3ADUln
         LGbErX4wZM/zGFloIBP0LC1yaiYOYcJmqXINH1rquEJI4bFNG7mpmSC3dVVOcEU+yqG9
         I53YduLIKnUZYVHCCBXtXC8gg1D4rl9EoMGnY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694599892; x=1695204692;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=GGgyci124H8hidEcnFo2r9YAeq+z/nN9ybuqnCCcg8I=;
        b=dyOGFBjGlMmFkrARcypbNiKvZwHe3tS/3DKuC0BpFmZunTf3as42McwBQnyl0jlbr7
         p8SiE8Jtx/J0VoJVOZAcoyVtsq6/lYm8x76BtoYuV8t/9ClWGxAS5aVYE3G308SaboYo
         Sxr1szcZt+1QMfmvJfRc8fdqxnVLG06istOUenojbbxUdlFUCWfwHxPgRhBmZsdBqzIS
         45xFeRh3x/skF+PZ+PlJ320y7V8IX4ZAqfOFnP2ohmgNU7FrPC46s7yfdthM1p/x+Y6t
         1W65yrGKOA55IMPfMdj3+iuzzZw827sQh5eklk0vMxWZ8hQeUSyCDyeRnS937Sf8YWmn
         CQ7A==
X-Gm-Message-State: AOJu0YwZf2HrSA7zBY1hnePsUDoepI/uqKhRyJla5pdXtLGcjLkwi6We
	KIKpnT/T4RektzHDLELpngBwfg==
X-Google-Smtp-Source: AGHT+IE9jI98Etvv0Q/L8W2UsIGOJxDBuDGWChRK9AHW/+RsHrUPCobZBfe2JlL1cbS+3nm/uOPung==
X-Received: by 2002:a05:6000:11d1:b0:315:8f4f:81b8 with SMTP id i17-20020a05600011d100b003158f4f81b8mr1762144wrx.50.1694599892496;
        Wed, 13 Sep 2023 03:11:32 -0700 (PDT)
Message-ID: <793b37dd-5eb6-f69b-e86d-bcc1ed388561@citrix.com>
Date: Wed, 13 Sep 2023 11:11:31 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
 Wei Liu <wl@xen.org>, solene@openbsd.org,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
 <989ebefa-42f1-cac7-e2d3-f4bcd1e4b662@citrix.com>
 <ZQFt-7x90QWL_Rmi@MacBook-MacBook-Pro-de-Roger.local>
In-Reply-To: <ZQFt-7x90QWL_Rmi@MacBook-MacBook-Pro-de-Roger.local>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 13/09/2023 9:08 am, Roger Pau Monné wrote:
> On Tue, Sep 12, 2023 at 05:36:53PM +0100, Andrew Cooper wrote:
>> On 12/09/2023 5:35 pm, Andrew Cooper wrote:
>>> On 12/09/2023 5:23 pm, Roger Pau Monne wrote:
>>>> OpenBSD will attempt to unconditionally access PSTATE0 if HWCR.TscFreqSel is
>>>> set, and will also attempt to unconditionally access HWCR if the TSC is
>>>> reported as Invariant.
>>>>
>>>> The reasoning for exposing HWCR.TscFreqSel was to avoid Linux from printing a
>>>> (bogus) warning message, but doing so at the cost of OpenBSD not booting is not
>>>> a suitable solution.
>>>>
>>>> In order to fix expose an empty HWCR.
>>> At first I was thinking a straight up revert, but AMD's CPUID Faulting
>>> is an architectural bit in here so it's worth keeping the register around.
>>>
>>>> Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
>>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>>> ---
>>>> Not sure whether we want to expose something when is_cpufreq_controller() is
>>>> true, seeing as there's a special wrmsr handler for the same MSR in that case.
>>>> Likely should be done for PV only, but also likely quite bogus.
>>>>
>>>> Missing reported by as the issue came from the QubesOS tracker.
>>> Well - we can at least have a:
>>>
>>> Link: https://github.com/QubesOS/qubes-issues/issues/8502
>>>
>>> in the commit message, and it's probably worth asking Solène / Marek
>>> (both CC'd) if they want a Reported-by tag.
>>>
>>>> ---
>>>>  xen/arch/x86/msr.c | 8 ++++++--
>>>>  1 file changed, 6 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
>>>> index 3f0450259cdf..964d500ff8a1 100644
>>>> --- a/xen/arch/x86/msr.c
>>>> +++ b/xen/arch/x86/msr.c
>>>> @@ -240,8 +240,12 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
>>>>      case MSR_K8_HWCR:
>>>>          if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>>>>              goto gp_fault;
>>>> -        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
>>>> -               ? K8_HWCR_TSC_FREQ_SEL : 0;
>>>> +        /*
>>>> +         * OpenBSD 7.3 accesses HWCR unconditionally if the TSC is reported as
>>>> +         * Invariant.  Do not set TSC_FREQ_SEL as that would trigger OpenBSD to
>>>> +         * also poke at PSTATE0.
>>>> +         */
>>> While this is true, the justification for removing this is because
>>> TSC_FREQ_SEL is a model specific bit, not an architectural bit in HWCR.
>>>
>>> Also because it's addition without writing into the migration stream was
>>> bogus irrespective of the specifics of the bit.
>>>
>>> I'm still of the opinion that it's buggy for OpenBSD to be looking at
>>> model specific bits when virtualised, but given my latest reading of the
>>> AMD manuals, I think OpenBSD *is* well behaved looking at PSTATE0 if it
>>> can see TSC_FREQ_SEL.
>>>
>>> In some theoretical future where the toolstack better understands MSRs
>>> and (non)migratable VMs (which is the QubesOS usecase), then it would in
>>> principle be fine to construct a VM which can see the host TSC_FREQ_SEL
>>> and PSTATE* values.
>>>
>>> Preferably with an adjusted comment, Reviewed-by: Andrew Cooper
>>> <andrew.cooper3@citrix.com>
>> Sorry - I meant to be clearer here.  I'd suggest just deleting the
>> comment and leaving an unconditional return of 0 (which will become
>> conditional when we wire up CPUID Faulting).
>>
>> MSR_HWCR *is* an architectural MSR on any 64bit AMD system, so shouldn't
>> fault.
> Hm, I think it's worth to at least keep a note that if TSC_FREQ_SEL is
> exposed PSTATE0 must also be exposed to prevent OpenBSD 7.3 from
> panicking.

But there's nothing OpenBSD 7.3 specific about it.

Any software which sees this bit is permitted (expected even) to edit
the pstate registers.


You know why it's called frequency select?  Because firmware is supposed
to program the systemwide frequency/voltage to the user's request for
whether the system wants to run cooler, or be overclocked.


Putting OpenBSD 7.3 in the commit message is absolutely relevant to why
we're making this change now, but it's not relevant to why we have
concluded that TSC_FREQ_SEL is bogus to expose to guests.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 10:25:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 10:25:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601174.937104 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgN48-00016D-5r; Wed, 13 Sep 2023 10:25:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601174.937104; Wed, 13 Sep 2023 10:25:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgN48-000166-34; Wed, 13 Sep 2023 10:25:48 +0000
Received: by outflank-mailman (input) for mailman id 601174;
 Wed, 13 Sep 2023 10:25:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yjWf=E5=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qgN47-000160-7B
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 10:25:47 +0000
Received: from mail-lj1-x236.google.com (mail-lj1-x236.google.com
 [2a00:1450:4864:20::236])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e68a753b-521f-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 12:25:46 +0200 (CEST)
Received: by mail-lj1-x236.google.com with SMTP id
 38308e7fff4ca-2bcb89b476bso114200131fa.1
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 03:25:46 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e68a753b-521f-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694600745; x=1695205545; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=AnVOd1OmPn26d0MyqQJvJzMKH46KhBt4Kite4K+jHvs=;
        b=Y18lJp2lxOaBcQ+FY5L0baO9/K4GP7zERATA7rI/kXTEoRtUBG7uEQWKjyozBVLqs9
         OiFLkQUOxsTQeSoCG63h7FIJ7e02J5qNo3gQzNZMVcdahGApjxSl3dHch6uKCgsvZNOM
         mflXMOH6ZZQFfxCuulmKEojZlP3UPjOYAmw1M=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694600745; x=1695205545;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=AnVOd1OmPn26d0MyqQJvJzMKH46KhBt4Kite4K+jHvs=;
        b=v7LqSfuGL3GDsw/TSzUa6WL63wOcJkTsW83OGxC2yqDxtftgtu9rK9YYL28SuNURSP
         xtjMEyFw9Et1gDS1xGPda+rztCqowEQO+oDqsi9eIxR4G2phdcRqK6K+dvHERpN1RN55
         gZkTiwKkHENA2NhNB2kt6rd0x/QooghSlegfPgEQ9/rJad8SXvu33aJZF1YXe8WbHRH8
         KUvVGNlj2Hc9b88vBMYeRvdi25mqstUoIt2rI/cOOa5YDTQVV3i0uAP63NJ1vGLpq0SI
         tMclCRzet+K3InO7x8ZlKnE8Ok7Afo1JLneIGIyZv+U3nW3vKVJaYy33fhD005gTgn1k
         QpAg==
X-Gm-Message-State: AOJu0YzvPzgGap5BBTK5n+hAle7I37LR6Hq9TVtAcVQZaLgjm6m/eYE+
	tJ8hk0qrOa2Qe496bF0q6Tt5edfYBwV3k4YmTJ3NY7d4+Pa6QmsBy8MT1Q==
X-Google-Smtp-Source: AGHT+IE9olSIF3tW61dxmxgGzDefZsGkFax2HWCa/BNyXMFyNyZ3Vqf3pAte65Id+2VlvJ5UNiCG59ztpoJYwYJM+5U=
X-Received: by 2002:a2e:b0d6:0:b0:2bc:ffcc:6cc0 with SMTP id
 g22-20020a2eb0d6000000b002bcffcc6cc0mr1958349ljl.17.1694600745595; Wed, 13
 Sep 2023 03:25:45 -0700 (PDT)
MIME-Version: 1.0
References: <a17ba988-2850-fced-d225-97e1d11f6576@suse.com>
 <CA+zSX=aCwR5gxk3jyPDoWRvoFAAjORWigtrbaO9ow5EvmT_tZg@mail.gmail.com> <ea6686a2-dfe3-4a6f-5d3c-a729f95520d1@suse.com>
In-Reply-To: <ea6686a2-dfe3-4a6f-5d3c-a729f95520d1@suse.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Wed, 13 Sep 2023 11:25:34 +0100
Message-ID: <CA+zSX=a1oyPOJLvwBq+YXGnumi7HAqk_XoL=Wat9iHnz7fTe6g@mail.gmail.com>
Subject: Re: [PATCH] timer: fix NR_CPUS=1 build with gcc13
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>, 
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Sep 13, 2023 at 11:05=E2=80=AFAM Jan Beulich <jbeulich@suse.com> wr=
ote:
>
> On 13.09.2023 11:44, George Dunlap wrote:
> > On Wed, Sep 13, 2023 at 8:32=E2=80=AFAM Jan Beulich <jbeulich@suse.com>=
 wrote:
> >>
> >> Gcc13 apparently infers from "if ( old_cpu < new_cpu )" that "new_cpu"
> >> is >=3D 1, and then (on x86) complains about "per_cpu(timers, new_cpu)=
"
> >> exceeding __per_cpu_offset[]'s bounds (being an array of 1 in such a
> >> configuration). Make the code conditional upon there being at least 2
> >> CPUs configured (otherwise there simply is nothing to migrate [to]).
> >
> > Hmm, without digging into it, migrate_timer() doesn't seem like very
> > robust code: It doesn't check to make sure that new_cpu is valid, nor
> > does it give the option of returning an error if anything fails.
>
> Question is - what do you expect the callers to do upon getting back
> failure?

[snip]

> >  Would it make more sense to add `||
> > (new_cpu > CONFIG_NR_CPUS)` to the early-return  conditional at the
> > top of the first `for (; ; )` loop?
>
> But that would mean not doing what was requested without any indication
> to the caller. An out-of-range CPU passed in is generally very likely
> to result in a crash, I think.

If it's only off by a little bit, there's a good chance it might just
corrupt some other data, causing a crash further down the line, where
it's not obvious what went wrong.  Generally speaking, passing an
error up the stack, explicitly crashing, or explicitly doing nothing
with a warning to the console are all better options.

> > I guess if we don't expect it ever to be called, it might be better to
> > get rid of the code entirely; but maybe in that case we should add
> > something like the following?
> >
> > ```
> > #else
> >     WARN_ONCE("migrate_timer: Request to move to %u on a single-core
> > system!", new_cpu);
> >     ASSERT_UNREACHABLE();
> > #endif
> > ```
>
> With the old_cpu =3D=3D new_cpu case explicitly permitted (and that being
> the only legal case when NR_CPUS=3D1, which arguably is an aspect which
> makes gcc's diagnostic questionable), perhaps only
>
> #else
>     old_cpu =3D ...;
>     if ( old_cpu !=3D TIMER_CPU_status_killed )
>         WARN_ON(new_cpu !=3D old_cpu);
> #endif
>
> (I'm afraid we have no WARN_ON_ONCE() yet, nor WARN_ONCE())?

I think I was looking for `printk_once`.

If there's no reasonable way to fail more gracefully (or no real point
in making the effort to do so), what if we add the following to the
top of the function?  Does that make gcc13 happy?

```
if ( new_cpu >=3D CONFIG_NR_CPUS )
{
    printk_once(/* whatever */);
    ASSERT_UNREACHABLE();
    return;
}
```

Or, if we feel like being passed an invalid cpu means the state is so
bad it would be better to just crash and have done with it:

```
  BUG_ON(new_cpu >=3D CONFIG_NR_CPUS);
```

 -George


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 10:26:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 10:26:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601175.937114 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgN4L-0001OQ-Dz; Wed, 13 Sep 2023 10:26:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601175.937114; Wed, 13 Sep 2023 10:26:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgN4L-0001OJ-AG; Wed, 13 Sep 2023 10:26:01 +0000
Received: by outflank-mailman (input) for mailman id 601175;
 Wed, 13 Sep 2023 10:25:59 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgN4J-0001Nd-FR; Wed, 13 Sep 2023 10:25:59 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgN4J-0002RR-DE; Wed, 13 Sep 2023 10:25:59 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgN4J-0004q6-2I; Wed, 13 Sep 2023 10:25:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgN4J-0008Ak-1s; Wed, 13 Sep 2023 10:25:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=zopt03a8aW6ILF0CBtwN7s7c4YHSN6zudkoSR7hlkns=; b=F/poE2WK0ejp0zxGkHpjFtATuW
	HesIEP2orE91t0jSVOEfhRFsg6c1DBdilIKOKCuZuTZ7ZT+mlkO4Rq+0lDAtCy8cSXqrvC3yVV5tb
	3f+bNnFDc/M8zVv+7nsdoyMJ4VbpYe1jwHqajf6MKVCLIG52fN5cNoR8/iVfgJzvBqIU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182991-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 182991: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=6aa25c32180ab59081c73bae4c568367d9133a1f
X-Osstest-Versions-That:
    xen=21ec0c42267be169be6019e5a09b61cbf16d10ce
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 13 Sep 2023 10:25:59 +0000

flight 182991 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182991/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  6aa25c32180ab59081c73bae4c568367d9133a1f
baseline version:
 xen                  21ec0c42267be169be6019e5a09b61cbf16d10ce

Last test of basis   182968  2023-09-12 14:03:40 Z    0 days
Testing same since   182991  2023-09-13 08:00:30 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Federico Serafini <federico.serafini@bugseng.com>
  Gianluca	Luparini <gianluca.luparini@bugseng.com>
  Gianluca Luparini <gianluca.luparini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Paul Durrant <paul@xen.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Simone Ballarin <simone.ballarin@bugseng.com>
  Stewart Hildebrand <stewart.hildebrand@amd.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   21ec0c4226..6aa25c3218  6aa25c32180ab59081c73bae4c568367d9133a1f -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 10:34:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 10:34:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601187.937124 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgNCn-0003jU-8I; Wed, 13 Sep 2023 10:34:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601187.937124; Wed, 13 Sep 2023 10:34:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgNCn-0003jN-51; Wed, 13 Sep 2023 10:34:45 +0000
Received: by outflank-mailman (input) for mailman id 601187;
 Wed, 13 Sep 2023 10:34:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=o3wF=E5=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qgNCl-0003jF-Il
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 10:34:43 +0000
Received: from mail-pj1-x102c.google.com (mail-pj1-x102c.google.com
 [2607:f8b0:4864:20::102c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 25bd89d3-5221-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 12:34:42 +0200 (CEST)
Received: by mail-pj1-x102c.google.com with SMTP id
 98e67ed59e1d1-268bc714ce0so608814a91.0
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 03:34:42 -0700 (PDT)
Received: from [157.82.204.253] ([157.82.204.253])
 by smtp.gmail.com with ESMTPSA id
 l5-20020a63be05000000b00528513c6bbcsm7566372pgf.28.2023.09.13.03.34.35
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 13 Sep 2023 03:34:40 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 25bd89d3-5221-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694601281; x=1695206081; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=/gsX13CnQ+RiKdonhmGaJWnagAUBmE64zMiE8InJYMY=;
        b=tkaD7elSKRyINY4f2b0Hru7QZw+vTnh/HZDZXshDOPM/7peF/TIChQygB/F3aKERZC
         3amYrpnZq0RvWyOlEnbG7QzdtWoliW7R7dKzwNg/o4e5iDoMhnF9QBocKmBojCe5hMwi
         keQ/jI1+e70EnfQm5p+lT+FDuWvPjI1MY3/45QFnCWKjuRAeW2ZVwe2kxBoK0eVEmcc7
         PWAVrj7d3/VVqOnB9fcxXDj031OUfMYIU1RFektYmAmZteJMJJUrhN4hmw+KN5SuPMxi
         er+n0Uv0zcX6QlMYTX0bjrtvPK/mXSz8FMZtjA9uXFHaAPLnPXNds971Z4TVPPI0Pivn
         Mjcw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694601281; x=1695206081;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=/gsX13CnQ+RiKdonhmGaJWnagAUBmE64zMiE8InJYMY=;
        b=raIoMNFWIQU5dUcW/N6FVznZg+W5itgRTtaUfMrngqLiXhzrSDdWHOg19Jf/GZDu9r
         VI75iFqDUpm5dHNBSP+EqxIaEYLEiRxRs+pUcC+LMePp1sVR7tQbOhblZSdwF5nHtMJ0
         S8CYkKe9m5cjm1KLbCxDpfVElILtrSxKK30jliL6Nk9EWVOZqL4n6/O5T+Fyq3P9cbFF
         iTg8LniTn4UKSIlgxGIxSqJg2Ju7D5jbpnP7ibrqyOqkE+DoljwqVmKsy4YckPVcCBKe
         6YMLkvJn2rM0UGi4g318fN7N9RPqJLe8X3qj65VhI3vpeMkgZN2NVb0vrpEk2rX9rl9t
         yNgg==
X-Gm-Message-State: AOJu0YzE4LlAt4Ujlg/0lIBHB0L2jvLlmFh9PAu8URwXRe/l0UfESWjL
	6U0YSQJW5XB1gMJe6dyjC3Wlog==
X-Google-Smtp-Source: AGHT+IHTPT0tjzcnAJSUL9nT+wX3MjCaTXTLpkly5af71VyfGqmKrnsGwP6chzxn+R6v3usXUofQAw==
X-Received: by 2002:a17:90a:4101:b0:26d:3e6a:cd93 with SMTP id u1-20020a17090a410100b0026d3e6acd93mr7104225pjf.17.1694601280912;
        Wed, 13 Sep 2023 03:34:40 -0700 (PDT)
Message-ID: <cf99ac00-6f48-4778-b319-6079a931ba5d@daynix.com>
Date: Wed, 13 Sep 2023 19:34:34 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
To: Albert Esteve <aesteve@redhat.com>
Cc: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 "ernunes@redhat.com" <ernunes@redhat.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com>
 <11c227e8-a464-41ce-a435-82c570746388@daynix.com>
 <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/13 16:55, Albert Esteve wrote:
> Hi Antonio,
> 
> If I'm not mistaken, this patch is related with: 
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html 
> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>
> IMHO, ideally, virtio-gpu and vhost-user-gpu both, would use the 
> infrastructure from the patch I linked to store the
> virtio objects, so that they can be later shared with other devices.

I don't think such sharing is possible because the resources are 
identified by IDs that are local to the device. That also complicates 
migration.

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 10:51:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 10:51:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601194.937133 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgNSM-0007hH-I7; Wed, 13 Sep 2023 10:50:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601194.937133; Wed, 13 Sep 2023 10:50:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgNSM-0007hA-FV; Wed, 13 Sep 2023 10:50:50 +0000
Received: by outflank-mailman (input) for mailman id 601194;
 Wed, 13 Sep 2023 10:50:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VJSs=E5=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgNSK-0007h4-Lf
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 10:50:48 +0000
Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com
 [2a00:1450:4864:20::32e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 63a28926-5223-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 12:50:44 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-4018af1038cso72334035e9.0
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 03:50:44 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 h18-20020a05600c351200b003fed8e12d62sm1752227wmq.27.2023.09.13.03.50.43
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 13 Sep 2023 03:50:43 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 63a28926-5223-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694602244; x=1695207044; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=7Fp6B4FU3tZPD3HBfRkwMjH5MFqJ2hG2FkfumC+klfk=;
        b=OkrMZJVCPEWMGIUc9NowA7sSdaTO/rXBoZyQ+e98/M/0uMNBmrhuq4XxFKe0Vu13zZ
         m2fcziKwfc6xmC46oh/8SjTRFkldpmp64jvDHzBQq5uXHxrWVRofhBCqNBBIg1u/+6IO
         E2EpwjkvlpIPw0puSYyiX2lh11RuyS4u3Ej/M=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694602244; x=1695207044;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=7Fp6B4FU3tZPD3HBfRkwMjH5MFqJ2hG2FkfumC+klfk=;
        b=r5MU/7NuvH+txVKGwpLlenw9c8Yr1YxveC9ZgAXbvrZxPGpXffRZSSUnkbrt4ZqibC
         OmL5ZWK/RaTPx1LkcJriMCrZWNDw6PnBWyv1CBZ3T0vmO2v92DPkqWB/1/MxcwOGWUsS
         4nXS39WdQoqhTouqdkRfnGUm3tv9ELRwCwKanXe1wDvud+1Fp3f7zsAfGXqW6NW8FPzL
         tU9NM3drP3O/9ervQf86ymaN2cY1b9i48BpiGxC3z27RXC9THjkESb9dxe6LWGjB7jfE
         GTDytePmdjTpOPmFFIUY070Yn+5GTMKE1aWHOPabS+OrW3wQpdaj2RySj8aEhcXPVUI7
         ja3g==
X-Gm-Message-State: AOJu0YxFV67/3ad0ZKoLOPvS5vIe2LIaJogeMmsiwre5DB3ZsAmY+lMy
	ON31CDS6tsmlBwdtrcBD35ct9A==
X-Google-Smtp-Source: AGHT+IFa1NhGV8kfuwY3+tvrCqKJgh/d7TsVHLyo/tO/iMGMsi2Xv3JvfcmH/EwTTG9oWDGk3UkHgw==
X-Received: by 2002:a1c:4c1a:0:b0:400:57d1:4915 with SMTP id z26-20020a1c4c1a000000b0040057d14915mr1838566wmf.37.1694602243922;
        Wed, 13 Sep 2023 03:50:43 -0700 (PDT)
Message-ID: <4b3138ce-8605-6c9b-0cd2-d7dfc8b04b07@citrix.com>
Date: Wed, 13 Sep 2023 11:50:43 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
 Wei Liu <wl@xen.org>, solene@openbsd.org,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
 <ZQFpr5nIZtRLPNhp@MacBook-MacBook-Pro-de-Roger.local>
In-Reply-To: <ZQFpr5nIZtRLPNhp@MacBook-MacBook-Pro-de-Roger.local>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 13/09/2023 8:50 am, Roger Pau Monné wrote:
> On Tue, Sep 12, 2023 at 05:35:15PM +0100, Andrew Cooper wrote:
>> On 12/09/2023 5:23 pm, Roger Pau Monne wrote:
>>> ---
>>>  xen/arch/x86/msr.c | 8 ++++++--
>>>  1 file changed, 6 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
>>> index 3f0450259cdf..964d500ff8a1 100644
>>> --- a/xen/arch/x86/msr.c
>>> +++ b/xen/arch/x86/msr.c
>>> @@ -240,8 +240,12 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
>>>      case MSR_K8_HWCR:
>>>          if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>>>              goto gp_fault;
>>> -        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
>>> -               ? K8_HWCR_TSC_FREQ_SEL : 0;
>>> +        /*
>>> +         * OpenBSD 7.3 accesses HWCR unconditionally if the TSC is reported as
>>> +         * Invariant.  Do not set TSC_FREQ_SEL as that would trigger OpenBSD to
>>> +         * also poke at PSTATE0.
>>> +         */
>> While this is true, the justification for removing this is because
>> TSC_FREQ_SEL is a model specific bit, not an architectural bit in HWCR.
>>
>> Also because it's addition without writing into the migration stream was
>> bogus irrespective of the specifics of the bit.
>>
>> I'm still of the opinion that it's buggy for OpenBSD to be looking at
>> model specific bits when virtualised,
> Well, I think we can argue that an OS is free to ignore the CPUID HV
> bit and still boot on Xen (even if that leads to non-ideal decisions).

An OS which keeps itself to architectural details that we do our very
best to be correct with, ought to function even if it ignores the HV bit.

But we're (deliberately) not doing model-specific-accurate emulations of
a specific platform.  An OS which ignores details about the environment
it is operating in gets to keep the faults/malfunctions when it does
something illegal.

>> but given my latest reading of the
>> AMD manuals, I think OpenBSD *is* well behaved looking at PSTATE0 if it
>> can see TSC_FREQ_SEL.
> Hm, there's no written down note that TSC_FREQ_SEL implies PSTATE0 to
> be available (and PSTATE0 is not an architectural MSR), but I can see
> how a guest can expect to fetch the P0 frequency if it sees
> TSC_FREQ_SEL.

The PPR is a reference of mostly autogenerated details and misc notes,
put together in a non- hand-write way, unlike the older BKWGs.

Lots of the information elided from public and partner-NDA versions is
"see TICKET/LINK for rational" type comments.

It is not a spec - it is a reference (the clue is even in the name)
aimed at people already familiar with the area.  Do not fall into the
trap of thinking it it can be read as a spec.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 11:02:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 11:02:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601199.937144 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgNdP-0002ro-IV; Wed, 13 Sep 2023 11:02:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601199.937144; Wed, 13 Sep 2023 11:02:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgNdP-0002rh-FL; Wed, 13 Sep 2023 11:02:15 +0000
Received: by outflank-mailman (input) for mailman id 601199;
 Wed, 13 Sep 2023 11:02:14 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VJSs=E5=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgNdO-0002rb-T3
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 11:02:14 +0000
Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com
 [2a00:1450:4864:20::32b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fdcbb7f3-5224-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 13:02:12 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-401d80f4ef8so72369655e9.1
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 04:02:12 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 y13-20020adffa4d000000b0031f5f0d0be0sm15097709wrr.31.2023.09.13.04.02.11
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 13 Sep 2023 04:02:11 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fdcbb7f3-5224-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694602932; x=1695207732; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=gOQlyMg+xT3Fe92J4JQw8w6Xevu0DIcUn6vz/vBhwyo=;
        b=jmvhgHMiWlyQCg0/w7Tyym/5xCf/eYaiDT381YHAA5nwJ9BpZ82GriTdBpHYdfHL2f
         8ZDB+2NhN0hZYkIhGfa1a38AFnpNn/+jEu5a6qVGxcD/lhOEOyg3RCUUI8Z2BUo1uZM2
         8vw5kbYsQ6mb4XR+JLze1nMNKJSCsRtkOsmUQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694602932; x=1695207732;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=gOQlyMg+xT3Fe92J4JQw8w6Xevu0DIcUn6vz/vBhwyo=;
        b=qBhkJdKVT+9ZcTnxD20W0PUv1huDiwk8kxD1/yT4WyYHQhHb8EPN5S2oUhSfFNPv35
         2XL8Ln95pLgQQtJHbz1MLWxXFaCA5MlOWW8dZlh3laDLxCRNHL/MIBWCp8aOXQbc3Yq+
         QD3tfOoqwgcv/fvN+EwZGMYthh/RsbVuiTitlyRLQXZG5qzlkCxmFQoj9xPhajoFmpvO
         whLJvNZqEOP9kFOAHs+hXu79q/I0sJ6K7uX39IxLfQABDs+dejvWJ5ARIiiCN0GZfI6a
         EF3bN8n6H2ZWSkVuKQIEg27XjmmOl+13rNRaMO49l1sG592x2AyG9cQJcLHO0UMJ1pLI
         swQQ==
X-Gm-Message-State: AOJu0Yy7V+c+ErsU5FnAKHDRRYDQg/otH5B2aSg/iw8lMfjLgYUepzPh
	JWocp/ghJqk2xEglqQ8QsL72WA==
X-Google-Smtp-Source: AGHT+IGJCL9Yil3JhsMmRfziQP/rqfvGrGn2jAuj73r9RhoAOw//CRvS9ukVJtZThaMqykRu5bmyqg==
X-Received: by 2002:a05:600c:3794:b0:3fe:d71a:d84e with SMTP id o20-20020a05600c379400b003fed71ad84emr1884842wmr.1.1694602932094;
        Wed, 13 Sep 2023 04:02:12 -0700 (PDT)
Message-ID: <fca202a8-2716-6ed1-c2ce-707deeddb3ab@citrix.com>
Date: Wed, 13 Sep 2023 12:02:11 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [Xen PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: Wei Liu <wl@xen.org>, solene@openbsd.org,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org,
 the arch/x86 maintainers <x86@kernel.org>
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
 <2cfcda8f-bd51-085b-997a-0ff31434d460@suse.com>
In-Reply-To: <2cfcda8f-bd51-085b-997a-0ff31434d460@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 13/09/2023 7:18 am, Jan Beulich wrote:
> On 12.09.2023 18:35, Andrew Cooper wrote:
>> On 12/09/2023 5:23 pm, Roger Pau Monne wrote:
>>> --- a/xen/arch/x86/msr.c
>>> +++ b/xen/arch/x86/msr.c
>>> @@ -240,8 +240,12 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
>>>      case MSR_K8_HWCR:
>>>          if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>>>              goto gp_fault;
>>> -        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
>>> -               ? K8_HWCR_TSC_FREQ_SEL : 0;
>>> +        /*
>>> +         * OpenBSD 7.3 accesses HWCR unconditionally if the TSC is reported as
>>> +         * Invariant.  Do not set TSC_FREQ_SEL as that would trigger OpenBSD to
>>> +         * also poke at PSTATE0.
>>> +         */
>> While this is true, the justification for removing this is because
>> TSC_FREQ_SEL is a model specific bit, not an architectural bit in HWCR.
>>
>> Also because it's addition without writing into the migration stream was
>> bogus irrespective of the specifics of the bit.
>>
>> I'm still of the opinion that it's buggy for OpenBSD to be looking at
>> model specific bits when virtualised, but given my latest reading of the
>> AMD manuals, I think OpenBSD *is* well behaved looking at PSTATE0 if it
>> can see TSC_FREQ_SEL.
> I'm afraid I'm still at a loss seeing what wording in which PPR makes you
> see a connection. If there was a connection, I'd like to ask that we at
> least properly consider exposing PSTATE0 (or if necessary all PSTATEn) as
> well, with zero value (i.e. in particular with the valid bit clear),
> rather than exposing a r/o bit with the wrong value, upsetting Linux.

This mess is caused by the erroneous advertising of a model specific
bit, and there's no way in hell that giving the guest even more model
specific data is going to fix it.

The PSTATE MSRs are entirely model specific, fully read/write, and the
Enable bit is not an enable bit; its a "not valid yet" bit that firmware
is required to adjust to be consistent across the coherency fabric.

Linux is simply wrong with it's printk() under virt, and wants adjusting.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 11:02:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 11:02:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601200.937154 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgNdV-00038e-T2; Wed, 13 Sep 2023 11:02:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601200.937154; Wed, 13 Sep 2023 11:02:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgNdV-00038X-PH; Wed, 13 Sep 2023 11:02:21 +0000
Received: by outflank-mailman (input) for mailman id 601200;
 Wed, 13 Sep 2023 11:02:20 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Mepq=E5=invisiblethingslab.com=simon@srs-se1.protection.inumbo.net>)
 id 1qgNdU-00037c-Ar
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 11:02:20 +0000
Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com
 [66.111.4.29]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ffe3fa96-5224-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 13:02:18 +0200 (CEST)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
 by mailout.nyi.internal (Postfix) with ESMTP id AEC375C01AA;
 Wed, 13 Sep 2023 07:02:15 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute3.internal (MEProxy); Wed, 13 Sep 2023 07:02:15 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed,
 13 Sep 2023 07:02:12 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ffe3fa96-5224-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm1; t=
	1694602935; x=1694689335; bh=ybp8mdw57do83PPlQuFWgagWRBAQrwYZ84m
	OuzqG5TA=; b=4TvEtiL5gvRyLcrB5j3RK6dzRMsW92jdu3omBY+w+BRnmcr0BI2
	zRLAQd9Csic4v6ubzj5m58f8Q+E730lpvRe9s+uSHbA6FlvSqOlpk6EBQTByOg6u
	ZonUR/+fHvPlK7BJ+jgOu7wujpHAoF0/4XOc2bVVqWKZZfo6CEwK1YWvkwvWG+P1
	O3Xsotrmmprm6xjZy6ctn3UPIjwYRyh/udN+Fg0NxPtyMRBOph5CAaWMYmpBSVwH
	gk7xNDbN7eQZG3JtRF//7g0ENilh1l6JVFHqYCMdV8P2Y6We4TCKnYhWE0DPwMgf
	jpCqHiL3aVSAVvyWocFZ6HKawsPf4I4gOTw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; t=1694602935; x=1694689335; bh=ybp8mdw57do83
	PPlQuFWgagWRBAQrwYZ84mOuzqG5TA=; b=KRJZncrTUu4eE3VdrU2FhlyssU3K4
	wIuuCyj1QnlF70ZpTSX3PPGJX3VQTMtt5dLmqyRvHGMLn2C/bHe5SxqddVZeZs46
	RG1ymparWIo8dvjutjTiad0YQAF6zdvO+W0I7xOB/9Ph3Q7sAX/tJjlw+/Cxa2IV
	1GFQ9ZURIO4E5qzl0uWoA2iVoWei3l6yZ859r9grWnxXL0p0wbGw60VoNFwaKeod
	1WQlA22P4bh/GCBtJWWTm50SdNmeFjxEMUvAzqIaqocLBA6TvPxCMw5AfPkk70My
	RIQL5kpy7Ke9pOEHvcfzx++mMlNbE0FctCifvlt9b3ksk6TbL/UKXvsYQ==
X-ME-Sender: <xms:t5YBZVzRuI7driHgscuq5n5Ek9FBKFjdhqpAzitQrNzHIIytzorTFQ>
    <xme:t5YBZVToj-EzhTdPQbw-f8fZSq-j9QtiEfPDiESyH857Jp7r24TvjMkwk-mNLBFNW
    VoNvMKbp-1DyNw>
X-ME-Received: <xmr:t5YBZfW70VHkJGa-IYX3JAjhM5gGZkBP5K0dT4qEN3U8hoMYOPCwjCp_l5bLY_g>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudeikedgfeehucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhepkfffggfuvfevfhfhjggtsehgtderredttdejnecuhfhrohhmpefuihhmohhn
    ucfirghishgvrhcuoehsihhmohhnsehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtg
    homheqnecuggftrfgrthhtvghrnhepgeefteejvdeugfehtdelveegvddtvdffkeetgfdv
    jefhvdffheetgfevudejjeefnecuffhomhgrihhnpehuvghfihdrohhrghdpkhgvrhhnvg
    hlrdhorhhgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhho
    mhepshhimhhonhesihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:t5YBZXiR6kWzt0g_VArN0bOI0qf1PEubr8kUpxprm3TWnC5H1IlN2Q>
    <xmx:t5YBZXCEdergEzDoPbfjTokA7suYgKs9TCmcZ7loK3B5z0MGyH1yEA>
    <xmx:t5YBZQKgLCFXmKBZvRdkDkFzMzDAf1H-N3WHicdaoOLnLRVs2HpPUQ>
    <xmx:t5YBZeNDFEKBdyleW0W1scfPaM6GYyi0EFNp82L5Ijp3iiVYlGwmWw>
Feedback-ID: idc5945a3:Fastmail
Message-ID: <68147114-080c-1e30-f3e4-f6ad049cb2af@invisiblethingslab.com>
Date: Wed, 13 Sep 2023 13:01:39 +0200
MIME-Version: 1.0
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries marked as unusable when
 parsing MADT
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= <marmarek@invisiblethingslab.com>
References: <20230911101238.18005-1-simon@invisiblethingslab.com>
 <ZQBc4qccWlRJoDqQ@MacBook-MacBook-Pro-de-Roger.local>
Content-Language: en-US
From: Simon Gaiser <simon@invisiblethingslab.com>
In-Reply-To: <ZQBc4qccWlRJoDqQ@MacBook-MacBook-Pro-de-Roger.local>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------ZkQ0EavWkoSKICkB6h2NXCKW"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------ZkQ0EavWkoSKICkB6h2NXCKW
Content-Type: multipart/mixed; boundary="------------V0WcUxLcF4lTb94GI8nN3oi9";
 protected-headers="v1"
From: Simon Gaiser <simon@invisiblethingslab.com>
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= <marmarek@invisiblethingslab.com>
Message-ID: <68147114-080c-1e30-f3e4-f6ad049cb2af@invisiblethingslab.com>
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries marked as unusable when
 parsing MADT
References: <20230911101238.18005-1-simon@invisiblethingslab.com>
 <ZQBc4qccWlRJoDqQ@MacBook-MacBook-Pro-de-Roger.local>
In-Reply-To: <ZQBc4qccWlRJoDqQ@MacBook-MacBook-Pro-de-Roger.local>

--------------V0WcUxLcF4lTb94GI8nN3oi9
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Roger Pau Monn=C3=A9:
> On Mon, Sep 11, 2023 at 12:12:38PM +0200, Simon Gaiser wrote:
>> Up to version 6.2 Errata B [2] the ACPI spec only defines
>> ACPI_MADT_ENABLE as:
>>
>>     If zero, this processor is unusable, and the operating system
>>     support will not attempt to use it.
>>
>> The bit that later will be ACPI_MADT_ONLINE_CAPABLE is reserved with
>> "Must be zero".
>>
>> Version 6.3 [3] then adds ACPI_MADT_ONLINE_CAPABLE and changes the
>> meaning of ACPI_MADT_ENABLE:
>>
>>     Enabled
>>         If this bit is set the processor is ready for use. If this bit=

>>         is clear and the Online Capable bit is set, system hardware
>>         supports enabling this processor during OS runtime. If this bi=
t
>>         is clear and the Online Capable bit is also clear, this
>>         processor is unusable, and OSPM shall ignore the contents of t=
he
>>         Processor Local APIC Structure.
>>
>>     Online Capbable
>>         The information conveyed by this bit depends on the value of t=
he
>>         Enabled bit. If the Enabled bit is set, this bit is reserved a=
nd
>>         must be zero. Otherwise, if this this bit is set, system
>>         hardware supports enabling this processor during OS runtime.
>>
>> So with conforming firmwares it should be safe to simply ignore the
>> entry if !ACPI_MADT_ENABLED && !ACPI_MADT_ONLINE_CAPABLE
>>
>> As a precaution against buggy firmwares this change, like Linux [4],
>> ignores ACPI_MADT_ONLINE_CAPABLE completely if MADT revision < 5. Note=

>> that the MADT revision was already increased to 5 with spec version 6.=
2
>> Errata A [1], so before introducing the online capable flag. But it
>> wasn't changed for the new flag, so this is the best we can do here.
>>
>> For previous discussion see thread [5].
>>
>> Link: http://www.uefi.org/sites/default/files/resources/ACPI%206_2_A_S=
ept29.pdf # [1]
>> Link: https://uefi.org/sites/default/files/resources/ACPI_6_2_B_final_=
Jan30.pdf # [2]
>> Link: https://uefi.org/sites/default/files/resources/ACPI_6_3_May16.pd=
f # [3]
>> Link: https://git.kernel.org/torvalds/c/e2869bd7af608c343988429ceb1c2f=
e99644a01f # [4]
>> Link: https://lore.kernel.org/xen-devel/80bae614-052e-0f90-cf13-0e5e4e=
d1a5cd@invisiblethingslab.com/ # [5]
>> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
>> ---
>>  xen/arch/x86/acpi/boot.c | 19 +++++++++++++------
>>  1 file changed, 13 insertions(+), 6 deletions(-)
>>
>> diff --git a/xen/arch/x86/acpi/boot.c b/xen/arch/x86/acpi/boot.c
>> index 4a62822fa9..2d0b8a9afc 100644
>> --- a/xen/arch/x86/acpi/boot.c
>> +++ b/xen/arch/x86/acpi/boot.c
>> @@ -77,6 +77,17 @@ static int __init cf_check acpi_parse_madt(struct a=
cpi_table_header *table)
>>  	return 0;
>>  }
>> =20
>> +static bool __init acpi_is_processor_usable(uint32_t lapic_flags)
>> +{
>> +	if (lapic_flags & ACPI_MADT_ENABLED)
>> +		return true;
>> +
>> +	if (madt_revision >=3D 5 && (lapic_flags & ACPI_MADT_ONLINE_CAPABLE)=
)
>> +		return true;
>> +
>> +	return false;
>=20
> So this means that Xen would only support ACPI CPU Hotplug with
> versions of the MADT >=3D 5?  Because with the proposed code non enable=
d
> entries on MADT versions < 5 will be reported as unusable.
>=20
> Will this work with QEMU?  (ie: does QEMU expose a MADT table with
> version >=3D 5)  Otherwise we will loose all possible ways of testing
> ACPI CPU Hotplug.

That's a good question. I just had a look and it looks like QEMU doesn't
use the new revision (and the new flag) (yet?). (But QEMU assigns a
valid APIC ID from the start.)

So why does hotplugging works in Linux then? Turns out that I missed a
later change:

https://git.kernel.org/torvalds/c/fed8d8773b8ea68ad99d9eee8c8343bef9da2c2=
c

So they went back to (mostly) the old logic. So then the above change
isn't a good idea. It's only "mostly" the old logic because in the
meantime Linux also improved the version check, to accurately match the
version that introduced the new flag:

https://git.kernel.org/torvalds/c/a74fabfbd1b7013045afc8cc541e6cab3360ccb=
5

Simon

--------------V0WcUxLcF4lTb94GI8nN3oi9--

--------------ZkQ0EavWkoSKICkB6h2NXCKW
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEE3E8ezGzG3N1CTQ//kO9xfO/xly8FAmUBlpYACgkQkO9xfO/x
ly+Vjw/8DmnSmZMfqBD+TpZi5aztYC9mNnl/ODu0B927CjzuBfhHLEErGbWu5BoC
tPTc1tezbt3Ve3dRzKI06JHgrjDt4VfxMhtHwQegdnPqkOAbU38IjBTqPv2ryvyv
CRMcgQ2u5P8S68o6iQr4wZq3HsuWlgz3Fw1Z15ws7c6SUlimBE0kb5nx52buQqaM
aUdUvvEW5WiGcU8w0I+kKq+tjYEczQA73K5TUybbHn2TNSHks+YhMFHo4QrXgbIa
Vi6+BKrGfbJsBehdCfk8ApxakUkessVjtO0zbIRNyGuqtcNsWpxKLg8eODbddeGa
FUhZKbHblGOA221W5O+GZ4gmRc9VMV2IUbVYQuk3PtRejGrrdw183xfNa0RKGzSe
jH2GveZU2fxWQskwvJxxe+fNKe/8TzSOjQ7xTkrkw+I2gc3zVVVuk7j8TooofNsk
1R/5UEzV+D/rW52Gr8KXzzTA/u6byjpyNSCkSleS0AHoCcyfZ2luXeJ7nNAvAq/K
Mkswj69JPi4XnILXMz1LKEZh7UOvGwlva0L68YwO0h8uxIqKfhWFjemmzmSlRxZr
07nPVspbSzSCljgqjbIbwYzqCUUli9FsyfbiDiAAayPKqxWyHLKZkqnItihnWekU
ykkbhAa3xQYL5yUzqLd0zC8FfLZ9FcNwRJhJQ0rRFKNV0sR+US8=
=icWL
-----END PGP SIGNATURE-----

--------------ZkQ0EavWkoSKICkB6h2NXCKW--


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 11:08:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 11:08:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601211.937163 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgNj8-00048f-Fn; Wed, 13 Sep 2023 11:08:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601211.937163; Wed, 13 Sep 2023 11:08:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgNj8-00048Y-D6; Wed, 13 Sep 2023 11:08:10 +0000
Received: by outflank-mailman (input) for mailman id 601211;
 Wed, 13 Sep 2023 11:08:09 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgNj7-00048O-MZ; Wed, 13 Sep 2023 11:08:09 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgNj7-0003nN-KV; Wed, 13 Sep 2023 11:08:09 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgNj7-0005so-9G; Wed, 13 Sep 2023 11:08:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgNj7-0008RE-8s; Wed, 13 Sep 2023 11:08:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=dioXlvd0yIqTwalwoBfIq4rHxhHn9WjROxpBMra8wwg=; b=26tWFSPOTbgDWuBzNvl4/Hzr2N
	fOG8vEdGFbWqsWt6LcpP20we3xEiWukPCQx/ifKx2dtWKn8xmyxoKF1Td1hEG1fDEz0XV3gcyULif
	UPehoQNJmb+0Y3IMiE8vX/YRL8LlVtEOQbQpci8S9km28E7gkyb6B2T7CgUgwA8JXrDw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182993-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182993: trouble: blocked/broken/pass
X-Osstest-Failures:
    ovmf:build-i386:<job status>:broken:regression
    ovmf:build-i386-pvops:<job status>:broken:regression
    ovmf:build-i386-xsm:<job status>:broken:regression
    ovmf:build-i386:host-install(4):broken:regression
    ovmf:build-i386-xsm:host-install(4):broken:regression
    ovmf:build-i386-pvops:host-install(4):broken:regression
    ovmf:build-i386-libvirt:build-check(1):blocked:nonblocking
    ovmf:test-amd64-i386-xl-qemuu-ovmf-amd64:build-check(1):blocked:nonblocking
X-Osstest-Versions-This:
    ovmf=cdfe4310dda2a30b0ca05c8ede6896edce37a656
X-Osstest-Versions-That:
    ovmf=b844b106e2a20c709ece1b2b89b2ae0e84a0e401
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 13 Sep 2023 11:08:09 +0000

flight 182993 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182993/

Failures and problems with tests :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-i386                      <job status>                 broken
 build-i386-pvops                <job status>                 broken
 build-i386-xsm                  <job status>                 broken
 build-i386                    4 host-install(4)        broken REGR. vs. 182988
 build-i386-xsm                4 host-install(4)        broken REGR. vs. 182988
 build-i386-pvops              4 host-install(4)        broken REGR. vs. 182988

Tests which did not succeed, but are not blocking:
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-i386-xl-qemuu-ovmf-amd64  1 build-check(1)              blocked n/a

version targeted for testing:
 ovmf                 cdfe4310dda2a30b0ca05c8ede6896edce37a656
baseline version:
 ovmf                 b844b106e2a20c709ece1b2b89b2ae0e84a0e401

Last test of basis   182988  2023-09-13 02:42:26 Z    0 days
Failing since        182990  2023-09-13 06:12:22 Z    0 days    2 attempts
Testing same since   182993  2023-09-13 08:10:41 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Linus Liu <linus.liu@intel.com>
  Nickle Wang <nicklew@nvidia.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               broken  
 build-amd64                                                  pass    
 build-i386                                                   broken  
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             broken  
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          blocked 


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary

broken-job build-i386 broken
broken-job build-i386-pvops broken
broken-job build-i386-xsm broken
broken-step build-i386 host-install(4)
broken-step build-i386-xsm host-install(4)
broken-step build-i386-pvops host-install(4)

Not pushing.

------------------------------------------------------------
commit cdfe4310dda2a30b0ca05c8ede6896edce37a656
Author: Linus Liu <linus.liu@intel.com>
Date:   Tue Sep 12 09:41:59 2023 +0800

    Pyrite support - Secure erase is only available if encryption is supported.
    
    https://bugzilla.tianocore.org/show_bug.cgi?id=3004
    
    Cc: Qi Zhang    <qi1.zhang@intel.com>
    Cc: Rahul Kumar <rahul1.kumar@intel.com>
    Cc: Jiewen Yao  <jiewen.yao@intel.com>
    Cc: Tina Chen   <tina.chen@intel.com>
    Cc: Xiao X Chen <xiao.x.chen@intel.com>
    Signed-off-by: Linus Liu <linus.liu@intel.com>
    Reviewed-by: Jiewen Yao  <jiewen.yao@intel.com>

commit 4a1afea6f7361fd65e9d4ba34eaac48ec8bb2867
Author: Nickle Wang <nicklew@nvidia.com>
Date:   Fri Jul 21 21:39:10 2023 +0800

    RedfishPkg/RedfishPlatformConfigDxe: fix can not set one-of option issue.
    
    StatementValue->Buffer is converted from ASCII to Unicode by caller
    already so we don't have to convert it again.
    
    Signed-off-by: Nickle Wang <nicklew@nvidia.com>
    Cc: Abner Chang <abner.chang@amd.com>
    Cc: Igor Kulchytskyy <igork@ami.com>
    Cc: Nick Ramirez <nramirez@nvidia.com>
    Reviewed-by: Igor Kulchytskyy <igork@ami.com>


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 11:35:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 11:35:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601220.937174 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgO90-0001aJ-Ii; Wed, 13 Sep 2023 11:34:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601220.937174; Wed, 13 Sep 2023 11:34:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgO90-0001aC-FK; Wed, 13 Sep 2023 11:34:54 +0000
Received: by outflank-mailman (input) for mailman id 601220;
 Wed, 13 Sep 2023 11:34:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gBHS=E5=redhat.com=aesteve@srs-se1.protection.inumbo.net>)
 id 1qgO8z-0001a6-7P
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 11:34:53 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8cdd7fb7-5229-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 13:34:51 +0200 (CEST)
Received: from mail-pj1-f71.google.com (mail-pj1-f71.google.com
 [209.85.216.71]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-643-lXvvlqzJPV2qN_oeh8wiYA-1; Wed, 13 Sep 2023 07:34:46 -0400
Received: by mail-pj1-f71.google.com with SMTP id
 98e67ed59e1d1-27372e336b2so810509a91.1
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 04:34:46 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8cdd7fb7-5229-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694604890;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=zMskR6cu9i22y34XL44NEQPqeIL9khl3qtNSgvRoqCA=;
	b=XzeZqGJV0h6ly2gHAEw4VOvWXWWi6u0016XZ83w35st0SP0UZaG90Hl+3bNp8Drh6TpcWd
	epl0seBj9ZPluX3mUzhY6uchLv2TxI7PhOIebJt4jOUMahGFjNJX3aqAa9DAH0tJnesnNh
	2nGClfGUlcAsWz7AOlUvslONPEW2J+I=
X-MC-Unique: lXvvlqzJPV2qN_oeh8wiYA-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694604885; x=1695209685;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=zMskR6cu9i22y34XL44NEQPqeIL9khl3qtNSgvRoqCA=;
        b=t1HhZQDiLs9g1Mg3u+NTb4vl2L1sYiplblHnbOxv2SX4JoLoIDvN5gLTFLCR1C7DbT
         lC0jIgBTEkgxdYqx55JqMF2aO4A3s8dTlCYXI3Tp5jk3pQ7lvHFF4j5N3hIG1uCFTKya
         LS13dExlc1XyO4hlE+f8Zo4lgL5FBjTx7iEH9r1keoz45luxupcwpz+aCjh0mXMQ4mPB
         83N4QTVylK5Q+WnuNNKzMKoex4P+VbUkJaEruPTTeb3UW4/3uYcSZRfAH2M2Duo/5uDK
         GRwOsTjhiPct281IXITghviBZnqfPBASl4Zf7NzZrmzA3ttBwXvm/dKICux6b4NPCRtk
         epJQ==
X-Gm-Message-State: AOJu0YwruJfen8L4xZ+Pe86h76EhPHrRZdS3Lx7vjPBttuSKmuCuhONq
	8Jq0yLg18yxhDxzCw/tCOhFEtqwqNDwLHrv3/tanTt+cfW9gyt32Dz1q2gDwcFVPeAcBVB+9LL9
	y6afOfNbCpQOoAsZE17uFEApWqnWNnmv1u0YQYq2y/e0=
X-Received: by 2002:a17:90b:4b82:b0:26d:689f:4253 with SMTP id lr2-20020a17090b4b8200b0026d689f4253mr7447233pjb.6.1694604885610;
        Wed, 13 Sep 2023 04:34:45 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IHJWBwNCbFL7Jyu5Boq2Q8xMqbev4t/zbOs3GqV/MXKXOUFx1M1LMxGo4WIMdWApSj5iZlPgc9WjXu2ERG7xSA=
X-Received: by 2002:a17:90b:4b82:b0:26d:689f:4253 with SMTP id
 lr2-20020a17090b4b8200b0026d689f4253mr7447190pjb.6.1694604885258; Wed, 13 Sep
 2023 04:34:45 -0700 (PDT)
MIME-Version: 1.0
References: <20230831093252.2461282-1-ray.huang@amd.com> <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com>
 <11c227e8-a464-41ce-a435-82c570746388@daynix.com> <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
 <cf99ac00-6f48-4778-b319-6079a931ba5d@daynix.com>
In-Reply-To: <cf99ac00-6f48-4778-b319-6079a931ba5d@daynix.com>
From: Albert Esteve <aesteve@redhat.com>
Date: Wed, 13 Sep 2023 13:34:34 +0200
Message-ID: <CADSE00+6zcT7iKR0JW1Bk8es6HtBpzAKa9JW6u5yyjDoLPw2KQ@mail.gmail.com>
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>, 
	"Michael S . Tsirkin" <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, 
	Antonio Caggiano <antonio.caggiano@collabora.com>, 
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, 
	Dmitry Osipenko <dmitry.osipenko@collabora.com>, =?UTF-8?B?QWxleCBCZW5uw6ll?= <alex.bennee@linaro.org>, 
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
	Gurchetan Singh <gurchetansingh@chromium.org>, "ernunes@redhat.com" <ernunes@redhat.com>, 
	=?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= <philmd@linaro.org>, 
	Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	"Deucher, Alexander" <Alexander.Deucher@amd.com>, "Koenig, Christian" <Christian.Koenig@amd.com>, 
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>, 
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>, 
	"Huang, Honglei1" <Honglei1.Huang@amd.com>, "Zhang, Julia" <Julia.Zhang@amd.com>, 
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: multipart/alternative; boundary="000000000000388aee06053bf2d0"

--000000000000388aee06053bf2d0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Sep 13, 2023 at 12:34=E2=80=AFPM Akihiko Odaki <akihiko.odaki@dayni=
x.com>
wrote:

> On 2023/09/13 16:55, Albert Esteve wrote:
> > Hi Antonio,
> >
> > If I'm not mistaken, this patch is related with:
> > https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html
> > <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>
> > IMHO, ideally, virtio-gpu and vhost-user-gpu both, would use the
> > infrastructure from the patch I linked to store the
> > virtio objects, so that they can be later shared with other devices.
>
> I don't think such sharing is possible because the resources are
> identified by IDs that are local to the device. That also complicates
> migration.
>
> Regards,
> Akihiko Odaki
>
> Hi Akihiko,

As far as I understand, the feature to export dma-bufs from the
virtgpu was introduced as part of the virtio cross-device sharing
proposal [1]. Thus, it shall be posible. When virtgpu ASSING_UUID,
it exports and identifies the dmabuf resource, so that when the dmabuf gets
shared inside the guest (e.g., with virtio-video), we can use the assigned
UUID to find the dmabuf in the host (using the patch that I linked above),
and import it.

[1] - https://lwn.net/Articles/828988/

--000000000000388aee06053bf2d0
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=3D"gmail_quote">=
<div dir=3D"ltr" class=3D"gmail_attr">On Wed, Sep 13, 2023 at 12:34=E2=80=
=AFPM Akihiko Odaki &lt;<a href=3D"mailto:akihiko.odaki@daynix.com" target=
=3D"_blank">akihiko.odaki@daynix.com</a>&gt; wrote:<br></div><blockquote cl=
ass=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid=
 rgb(204,204,204);padding-left:1ex">On 2023/09/13 16:55, Albert Esteve wrot=
e:<br>
&gt; Hi Antonio,<br>
&gt; <br>
&gt; If I&#39;m not mistaken, this patch is related with: <br>
&gt; <a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01=
853.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archiv=
e/html/qemu-devel/2023-09/msg01853.html</a> <br>
&gt; &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/m=
sg01853.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/ar=
chive/html/qemu-devel/2023-09/msg01853.html</a>&gt;<br>
&gt; IMHO, ideally, virtio-gpu and vhost-user-gpu both, would use the <br>
&gt; infrastructure from the patch I linked to store the<br>
&gt; virtio objects, so that they can be later shared with other devices.<b=
r>
<br>
I don&#39;t think such sharing is possible because the resources are <br>
identified by IDs that are local to the device. That also complicates <br>
migration.<br>
<br>
Regards,<br>
Akihiko Odaki<br>
<br></blockquote><div>Hi Akihiko,</div><div><br></div><div>As far as I unde=
rstand, the feature to export dma-bufs=C2=A0from the</div><div>virtgpu was =
introduced as part of the virtio cross-device sharing</div><div>proposal [1=
]. Thus, it shall be posible. When virtgpu=C2=A0ASSING_UUID,</div><div>it e=
xports and identifies the dmabuf resource, so that when the dmabuf gets</di=
v><div>shared inside the guest (e.g., with virtio-video), we can use the as=
signed</div><div>UUID to find the dmabuf in the host (using the patch that =
I linked above),</div><div>and import it.</div><div><br></div><div>[1] -=C2=
=A0<a href=3D"https://lwn.net/Articles/828988/" target=3D"_blank">https://l=
wn.net/Articles/828988/</a></div></div></div>

--000000000000388aee06053bf2d0--



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 11:38:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 11:38:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601225.937184 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgOCY-0002kn-1u; Wed, 13 Sep 2023 11:38:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601225.937184; Wed, 13 Sep 2023 11:38:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgOCX-0002kg-VI; Wed, 13 Sep 2023 11:38:33 +0000
Received: by outflank-mailman (input) for mailman id 601225;
 Wed, 13 Sep 2023 11:38:32 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xOkN=E5=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qgOCW-0002ka-Fe
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 11:38:32 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 10607691-522a-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 13:38:31 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id B28341F385;
 Wed, 13 Sep 2023 11:38:30 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 36BE613582;
 Wed, 13 Sep 2023 11:38:30 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id L4D9CzafAWVVCwAAMHmgww
 (envelope-from <jgross@suse.com>); Wed, 13 Sep 2023 11:38:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 10607691-522a-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1694605110; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:  content-transfer-encoding:content-transfer-encoding;
	bh=uJxCMUIT09a7qNSpE55xAHMI/oO/Stvr6RHMZiPfub0=;
	b=sUXrGqZZOoVIQv+OGxhDBecrjHjH49ZzQmiR8HgriyCUNOyvY51cp4MNfw9H1W6dCN5PWU
	nlskKpBvJv3CbZBLqFWxt7NaFEeKD7XRZUMlyWluXouJQXkXs4bbOOzvEQlLkhJAKeb+KB
	zwEY9BZ/BObVZJyxnDHCZXPPTtSlHnI=
From: Juergen Gross <jgross@suse.com>
To: linux-kernel@vger.kernel.org,
	x86@kernel.org,
	virtualization@lists.linux-foundation.org,
	linux-trace-kernel@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	xen-devel@lists.xenproject.org,
	Ajay Kaher <akaher@vmware.com>,
	Alexey Makhalov <amakhalov@vmware.com>,
	VMware PV-Drivers Reviewers <pv-drivers@vmware.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>,
	Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	Masami Hiramatsu <mhiramat@kernel.org>
Subject: [PATCH 0/3] xen: cleanup and fix lazy mode handling
Date: Wed, 13 Sep 2023 13:38:25 +0200
Message-Id: <20230913113828.18421-1-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This small series is cleaning up Xen lazy mode handling by removing
unused stuff and moving purely Xen-specific code away from general
kernel code.

The last patch is fixing a regression which was introduced in the
6.6 merge window.

Juergen Gross (3):
  arm/xen: remove lazy mode related definitions
  x86/xen: move paravirt lazy code
  x86/xen: allow nesting of same lazy mode

 arch/x86/include/asm/paravirt_types.h | 15 ------
 arch/x86/include/asm/xen/hypervisor.h | 37 +++++++++++++++
 arch/x86/kernel/paravirt.c            | 67 ---------------------------
 arch/x86/xen/enlighten_pv.c           | 40 +++++++++++++---
 arch/x86/xen/mmu_pv.c                 | 55 ++++++++++++++--------
 arch/x86/xen/multicalls.h             |  4 +-
 include/trace/events/xen.h            | 12 ++---
 include/xen/arm/hypervisor.h          | 12 -----
 8 files changed, 114 insertions(+), 128 deletions(-)

-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 11:38:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 11:38:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601226.937193 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgOCc-00033q-CR; Wed, 13 Sep 2023 11:38:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601226.937193; Wed, 13 Sep 2023 11:38:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgOCc-00033j-9Y; Wed, 13 Sep 2023 11:38:38 +0000
Received: by outflank-mailman (input) for mailman id 601226;
 Wed, 13 Sep 2023 11:38:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xOkN=E5=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qgOCb-0002ka-2s
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 11:38:37 +0000
Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1378d01e-522a-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 13:38:36 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id 50BCD218E3;
 Wed, 13 Sep 2023 11:38:36 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 223A113582;
 Wed, 13 Sep 2023 11:38:36 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id 0PoHBzyfAWVoCwAAMHmgww
 (envelope-from <jgross@suse.com>); Wed, 13 Sep 2023 11:38:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1378d01e-522a-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1694605116; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=dVPKyjPuFRiMX6H05C4yegFljVDNBdmN4FRlJrZXtC8=;
	b=DlBJopdppVqDlPo0820IN+B0NKE4azUrDiJXIdKEpL7OlV6MYr3nHi2QMsbkX4If5GTMSw
	NvGizRK0K/HmNwxhO3Ur6reeYkbMTx8gOR9zz1u+xaGJmgkuGNayQN6qLQvBTG8SUtXD26
	hVytxMzRpTNnAk+YIeojWOkv2IacXs8=
From: Juergen Gross <jgross@suse.com>
To: linux-kernel@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	xen-devel@lists.xenproject.org
Subject: [PATCH 1/3] arm/xen: remove lazy mode related definitions
Date: Wed, 13 Sep 2023 13:38:26 +0200
Message-Id: <20230913113828.18421-2-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20230913113828.18421-1-jgross@suse.com>
References: <20230913113828.18421-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

include/xen/arm/hypervisor.h contains definitions related to paravirt
lazy mode, which are used nowhere in the code.

All paravirt lazy mode related users are in x86 code, so remove the
definitions on Arm side.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 include/xen/arm/hypervisor.h | 12 ------------
 1 file changed, 12 deletions(-)

diff --git a/include/xen/arm/hypervisor.h b/include/xen/arm/hypervisor.h
index 43ef24dd030e..9995695204f5 100644
--- a/include/xen/arm/hypervisor.h
+++ b/include/xen/arm/hypervisor.h
@@ -7,18 +7,6 @@
 extern struct shared_info *HYPERVISOR_shared_info;
 extern struct start_info *xen_start_info;
 
-/* Lazy mode for batching updates / context switch */
-enum paravirt_lazy_mode {
-	PARAVIRT_LAZY_NONE,
-	PARAVIRT_LAZY_MMU,
-	PARAVIRT_LAZY_CPU,
-};
-
-static inline enum paravirt_lazy_mode paravirt_get_lazy_mode(void)
-{
-	return PARAVIRT_LAZY_NONE;
-}
-
 #ifdef CONFIG_XEN
 void __init xen_early_init(void);
 #else
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 11:38:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 11:38:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601228.937204 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgOCj-0003Qz-MO; Wed, 13 Sep 2023 11:38:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601228.937204; Wed, 13 Sep 2023 11:38:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgOCj-0003Qo-HW; Wed, 13 Sep 2023 11:38:45 +0000
Received: by outflank-mailman (input) for mailman id 601228;
 Wed, 13 Sep 2023 11:38:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xOkN=E5=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qgOCi-0002ka-7i
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 11:38:44 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 17164623-522a-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 13:38:42 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 2C7F81F45B;
 Wed, 13 Sep 2023 11:38:42 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id BB6E513582;
 Wed, 13 Sep 2023 11:38:41 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id rzyeLEGfAWV8CwAAMHmgww
 (envelope-from <jgross@suse.com>); Wed, 13 Sep 2023 11:38:41 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 17164623-522a-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1694605122; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=pys8ZMeihbqu1bWQt/XnMbkpDqMreD1pEdIt/VtSRwk=;
	b=KbCJatsAJtpEHO9X8iEcCiF/f6loxsNqBoDiqyiM0AFZ4RzaFcQc/ha3w17oXxz1bsUNdh
	ZxKyIQhwguDSEfDE0PPBW56VU6oh+zzqVzG9E5Ug9oY+uyW3zHiP4GNhNoOgkrAnhNd8SL
	+/49XOWY03XxzlSOwY3uYIO6t6d8bTY=
From: Juergen Gross <jgross@suse.com>
To: linux-kernel@vger.kernel.org,
	x86@kernel.org,
	virtualization@lists.linux-foundation.org,
	linux-trace-kernel@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>,
	Ajay Kaher <akaher@vmware.com>,
	Alexey Makhalov <amakhalov@vmware.com>,
	VMware PV-Drivers Reviewers <pv-drivers@vmware.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>,
	Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	Masami Hiramatsu <mhiramat@kernel.org>,
	xen-devel@lists.xenproject.org
Subject: [PATCH 2/3] x86/xen: move paravirt lazy code
Date: Wed, 13 Sep 2023 13:38:27 +0200
Message-Id: <20230913113828.18421-3-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20230913113828.18421-1-jgross@suse.com>
References: <20230913113828.18421-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Only Xen is using the paravirt lazy mode code, so it can be moved to
Xen specific sources.

This allows to make some of the functions static or to merge them into
their only call sites.

While at it do a rename from "paravirt" to "xen" for all moved
specifiers.

No functional change.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 arch/x86/include/asm/paravirt_types.h | 15 ------
 arch/x86/include/asm/xen/hypervisor.h | 26 +++++++++++
 arch/x86/kernel/paravirt.c            | 67 ---------------------------
 arch/x86/xen/enlighten_pv.c           | 39 +++++++++++++---
 arch/x86/xen/mmu_pv.c                 | 55 ++++++++++++++--------
 arch/x86/xen/multicalls.h             |  4 +-
 include/trace/events/xen.h            | 12 ++---
 7 files changed, 102 insertions(+), 116 deletions(-)

diff --git a/arch/x86/include/asm/paravirt_types.h b/arch/x86/include/asm/paravirt_types.h
index 4acbcddddc29..772d03487520 100644
--- a/arch/x86/include/asm/paravirt_types.h
+++ b/arch/x86/include/asm/paravirt_types.h
@@ -9,13 +9,6 @@ struct paravirt_patch_site {
 	u8 type;		/* type of this instruction */
 	u8 len;			/* length of original instruction */
 };
-
-/* Lazy mode for batching updates / context switch */
-enum paravirt_lazy_mode {
-	PARAVIRT_LAZY_NONE,
-	PARAVIRT_LAZY_MMU,
-	PARAVIRT_LAZY_CPU,
-};
 #endif
 
 #ifdef CONFIG_PARAVIRT
@@ -549,14 +542,6 @@ int paravirt_disable_iospace(void);
 	__PVOP_VCALL(op, PVOP_CALL_ARG1(arg1), PVOP_CALL_ARG2(arg2),	\
 		     PVOP_CALL_ARG3(arg3), PVOP_CALL_ARG4(arg4))
 
-enum paravirt_lazy_mode paravirt_get_lazy_mode(void);
-void paravirt_start_context_switch(struct task_struct *prev);
-void paravirt_end_context_switch(struct task_struct *next);
-
-void paravirt_enter_lazy_mmu(void);
-void paravirt_leave_lazy_mmu(void);
-void paravirt_flush_lazy_mmu(void);
-
 void _paravirt_nop(void);
 void paravirt_BUG(void);
 unsigned long paravirt_ret0(void);
diff --git a/arch/x86/include/asm/xen/hypervisor.h b/arch/x86/include/asm/xen/hypervisor.h
index 5fc35f889cd1..ed05ce3df5c7 100644
--- a/arch/x86/include/asm/xen/hypervisor.h
+++ b/arch/x86/include/asm/xen/hypervisor.h
@@ -36,6 +36,7 @@
 extern struct shared_info *HYPERVISOR_shared_info;
 extern struct start_info *xen_start_info;
 
+#include <asm/bug.h>
 #include <asm/processor.h>
 
 #define XEN_SIGNATURE "XenVMMXenVMM"
@@ -63,4 +64,29 @@ void __init xen_pvh_init(struct boot_params *boot_params);
 void __init mem_map_via_hcall(struct boot_params *boot_params_p);
 #endif
 
+/* Lazy mode for batching updates / context switch */
+enum xen_lazy_mode {
+	XEN_LAZY_NONE,
+	XEN_LAZY_MMU,
+	XEN_LAZY_CPU,
+};
+
+DECLARE_PER_CPU(enum xen_lazy_mode, xen_lazy_mode);
+
+static inline void enter_lazy(enum xen_lazy_mode mode)
+{
+	BUG_ON(this_cpu_read(xen_lazy_mode) != XEN_LAZY_NONE);
+
+	this_cpu_write(xen_lazy_mode, mode);
+}
+
+static inline void leave_lazy(enum xen_lazy_mode mode)
+{
+	BUG_ON(this_cpu_read(xen_lazy_mode) != mode);
+
+	this_cpu_write(xen_lazy_mode, XEN_LAZY_NONE);
+}
+
+enum xen_lazy_mode xen_get_lazy_mode(void);
+
 #endif /* _ASM_X86_XEN_HYPERVISOR_H */
diff --git a/arch/x86/kernel/paravirt.c b/arch/x86/kernel/paravirt.c
index 975f98d5eee5..97f1436c1a20 100644
--- a/arch/x86/kernel/paravirt.c
+++ b/arch/x86/kernel/paravirt.c
@@ -143,66 +143,7 @@ int paravirt_disable_iospace(void)
 	return request_resource(&ioport_resource, &reserve_ioports);
 }
 
-static DEFINE_PER_CPU(enum paravirt_lazy_mode, paravirt_lazy_mode) = PARAVIRT_LAZY_NONE;
-
-static inline void enter_lazy(enum paravirt_lazy_mode mode)
-{
-	BUG_ON(this_cpu_read(paravirt_lazy_mode) != PARAVIRT_LAZY_NONE);
-
-	this_cpu_write(paravirt_lazy_mode, mode);
-}
-
-static void leave_lazy(enum paravirt_lazy_mode mode)
-{
-	BUG_ON(this_cpu_read(paravirt_lazy_mode) != mode);
-
-	this_cpu_write(paravirt_lazy_mode, PARAVIRT_LAZY_NONE);
-}
-
-void paravirt_enter_lazy_mmu(void)
-{
-	enter_lazy(PARAVIRT_LAZY_MMU);
-}
-
-void paravirt_leave_lazy_mmu(void)
-{
-	leave_lazy(PARAVIRT_LAZY_MMU);
-}
-
-void paravirt_flush_lazy_mmu(void)
-{
-	preempt_disable();
-
-	if (paravirt_get_lazy_mode() == PARAVIRT_LAZY_MMU) {
-		arch_leave_lazy_mmu_mode();
-		arch_enter_lazy_mmu_mode();
-	}
-
-	preempt_enable();
-}
-
 #ifdef CONFIG_PARAVIRT_XXL
-void paravirt_start_context_switch(struct task_struct *prev)
-{
-	BUG_ON(preemptible());
-
-	if (this_cpu_read(paravirt_lazy_mode) == PARAVIRT_LAZY_MMU) {
-		arch_leave_lazy_mmu_mode();
-		set_ti_thread_flag(task_thread_info(prev), TIF_LAZY_MMU_UPDATES);
-	}
-	enter_lazy(PARAVIRT_LAZY_CPU);
-}
-
-void paravirt_end_context_switch(struct task_struct *next)
-{
-	BUG_ON(preemptible());
-
-	leave_lazy(PARAVIRT_LAZY_CPU);
-
-	if (test_and_clear_ti_thread_flag(task_thread_info(next), TIF_LAZY_MMU_UPDATES))
-		arch_enter_lazy_mmu_mode();
-}
-
 static noinstr void pv_native_write_cr2(unsigned long val)
 {
 	native_write_cr2(val);
@@ -229,14 +170,6 @@ static noinstr void pv_native_safe_halt(void)
 }
 #endif
 
-enum paravirt_lazy_mode paravirt_get_lazy_mode(void)
-{
-	if (in_interrupt())
-		return PARAVIRT_LAZY_NONE;
-
-	return this_cpu_read(paravirt_lazy_mode);
-}
-
 struct pv_info pv_info = {
 	.name = "bare hardware",
 #ifdef CONFIG_PARAVIRT_XXL
diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
index 49352fad7d1d..54b83825c4b6 100644
--- a/arch/x86/xen/enlighten_pv.c
+++ b/arch/x86/xen/enlighten_pv.c
@@ -101,6 +101,16 @@ struct tls_descs {
 	struct desc_struct desc[3];
 };
 
+DEFINE_PER_CPU(enum xen_lazy_mode, xen_lazy_mode) = XEN_LAZY_NONE;
+
+enum xen_lazy_mode xen_get_lazy_mode(void)
+{
+	if (in_interrupt())
+		return XEN_LAZY_NONE;
+
+	return this_cpu_read(xen_lazy_mode);
+}
+
 /*
  * Updating the 3 TLS descriptors in the GDT on every task switch is
  * surprisingly expensive so we avoid updating them if they haven't
@@ -362,10 +372,25 @@ static noinstr unsigned long xen_get_debugreg(int reg)
 	return HYPERVISOR_get_debugreg(reg);
 }
 
+static void xen_start_context_switch(struct task_struct *prev)
+{
+	BUG_ON(preemptible());
+
+	if (this_cpu_read(xen_lazy_mode) == XEN_LAZY_MMU) {
+		arch_leave_lazy_mmu_mode();
+		set_ti_thread_flag(task_thread_info(prev), TIF_LAZY_MMU_UPDATES);
+	}
+	enter_lazy(XEN_LAZY_CPU);
+}
+
 static void xen_end_context_switch(struct task_struct *next)
 {
+	BUG_ON(preemptible());
+
 	xen_mc_flush();
-	paravirt_end_context_switch(next);
+	leave_lazy(XEN_LAZY_CPU);
+	if (test_and_clear_ti_thread_flag(task_thread_info(next), TIF_LAZY_MMU_UPDATES))
+		arch_enter_lazy_mmu_mode();
 }
 
 static unsigned long xen_store_tr(void)
@@ -472,7 +497,7 @@ static void xen_set_ldt(const void *addr, unsigned entries)
 
 	MULTI_mmuext_op(mcs.mc, op, 1, NULL, DOMID_SELF);
 
-	xen_mc_issue(PARAVIRT_LAZY_CPU);
+	xen_mc_issue(XEN_LAZY_CPU);
 }
 
 static void xen_load_gdt(const struct desc_ptr *dtr)
@@ -568,7 +593,7 @@ static void xen_load_tls(struct thread_struct *t, unsigned int cpu)
 	 * exception between the new %fs descriptor being loaded and
 	 * %fs being effectively cleared at __switch_to().
 	 */
-	if (paravirt_get_lazy_mode() == PARAVIRT_LAZY_CPU)
+	if (xen_get_lazy_mode() == XEN_LAZY_CPU)
 		loadsegment(fs, 0);
 
 	xen_mc_batch();
@@ -577,7 +602,7 @@ static void xen_load_tls(struct thread_struct *t, unsigned int cpu)
 	load_TLS_descriptor(t, cpu, 1);
 	load_TLS_descriptor(t, cpu, 2);
 
-	xen_mc_issue(PARAVIRT_LAZY_CPU);
+	xen_mc_issue(XEN_LAZY_CPU);
 }
 
 static void xen_load_gs_index(unsigned int idx)
@@ -909,7 +934,7 @@ static void xen_load_sp0(unsigned long sp0)
 
 	mcs = xen_mc_entry(0);
 	MULTI_stack_switch(mcs.mc, __KERNEL_DS, sp0);
-	xen_mc_issue(PARAVIRT_LAZY_CPU);
+	xen_mc_issue(XEN_LAZY_CPU);
 	this_cpu_write(cpu_tss_rw.x86_tss.sp0, sp0);
 }
 
@@ -973,7 +998,7 @@ static void xen_write_cr0(unsigned long cr0)
 
 	MULTI_fpu_taskswitch(mcs.mc, (cr0 & X86_CR0_TS) != 0);
 
-	xen_mc_issue(PARAVIRT_LAZY_CPU);
+	xen_mc_issue(XEN_LAZY_CPU);
 }
 
 static void xen_write_cr4(unsigned long cr4)
@@ -1156,7 +1181,7 @@ static const typeof(pv_ops) xen_cpu_ops __initconst = {
 #endif
 		.io_delay = xen_io_delay,
 
-		.start_context_switch = paravirt_start_context_switch,
+		.start_context_switch = xen_start_context_switch,
 		.end_context_switch = xen_end_context_switch,
 	},
 };
diff --git a/arch/x86/xen/mmu_pv.c b/arch/x86/xen/mmu_pv.c
index 1652c39e3dfb..b6830554ff69 100644
--- a/arch/x86/xen/mmu_pv.c
+++ b/arch/x86/xen/mmu_pv.c
@@ -236,7 +236,7 @@ static void xen_set_pmd_hyper(pmd_t *ptr, pmd_t val)
 	u.val = pmd_val_ma(val);
 	xen_extend_mmu_update(&u);
 
-	xen_mc_issue(PARAVIRT_LAZY_MMU);
+	xen_mc_issue(XEN_LAZY_MMU);
 
 	preempt_enable();
 }
@@ -270,7 +270,7 @@ static bool xen_batched_set_pte(pte_t *ptep, pte_t pteval)
 {
 	struct mmu_update u;
 
-	if (paravirt_get_lazy_mode() != PARAVIRT_LAZY_MMU)
+	if (xen_get_lazy_mode() != XEN_LAZY_MMU)
 		return false;
 
 	xen_mc_batch();
@@ -279,7 +279,7 @@ static bool xen_batched_set_pte(pte_t *ptep, pte_t pteval)
 	u.val = pte_val_ma(pteval);
 	xen_extend_mmu_update(&u);
 
-	xen_mc_issue(PARAVIRT_LAZY_MMU);
+	xen_mc_issue(XEN_LAZY_MMU);
 
 	return true;
 }
@@ -325,7 +325,7 @@ void xen_ptep_modify_prot_commit(struct vm_area_struct *vma, unsigned long addr,
 	u.val = pte_val_ma(pte);
 	xen_extend_mmu_update(&u);
 
-	xen_mc_issue(PARAVIRT_LAZY_MMU);
+	xen_mc_issue(XEN_LAZY_MMU);
 }
 
 /* Assume pteval_t is equivalent to all the other *val_t types. */
@@ -419,7 +419,7 @@ static void xen_set_pud_hyper(pud_t *ptr, pud_t val)
 	u.val = pud_val_ma(val);
 	xen_extend_mmu_update(&u);
 
-	xen_mc_issue(PARAVIRT_LAZY_MMU);
+	xen_mc_issue(XEN_LAZY_MMU);
 
 	preempt_enable();
 }
@@ -499,7 +499,7 @@ static void __init xen_set_p4d_hyper(p4d_t *ptr, p4d_t val)
 
 	__xen_set_p4d_hyper(ptr, val);
 
-	xen_mc_issue(PARAVIRT_LAZY_MMU);
+	xen_mc_issue(XEN_LAZY_MMU);
 
 	preempt_enable();
 }
@@ -531,7 +531,7 @@ static void xen_set_p4d(p4d_t *ptr, p4d_t val)
 	if (user_ptr)
 		__xen_set_p4d_hyper((p4d_t *)user_ptr, val);
 
-	xen_mc_issue(PARAVIRT_LAZY_MMU);
+	xen_mc_issue(XEN_LAZY_MMU);
 }
 
 #if CONFIG_PGTABLE_LEVELS >= 5
@@ -1245,7 +1245,7 @@ static noinline void xen_flush_tlb(void)
 	op->cmd = MMUEXT_TLB_FLUSH_LOCAL;
 	MULTI_mmuext_op(mcs.mc, op, 1, NULL, DOMID_SELF);
 
-	xen_mc_issue(PARAVIRT_LAZY_MMU);
+	xen_mc_issue(XEN_LAZY_MMU);
 
 	preempt_enable();
 }
@@ -1265,7 +1265,7 @@ static void xen_flush_tlb_one_user(unsigned long addr)
 	op->arg1.linear_addr = addr & PAGE_MASK;
 	MULTI_mmuext_op(mcs.mc, op, 1, NULL, DOMID_SELF);
 
-	xen_mc_issue(PARAVIRT_LAZY_MMU);
+	xen_mc_issue(XEN_LAZY_MMU);
 
 	preempt_enable();
 }
@@ -1302,7 +1302,7 @@ static void xen_flush_tlb_multi(const struct cpumask *cpus,
 
 	MULTI_mmuext_op(mcs.mc, &args->op, 1, NULL, DOMID_SELF);
 
-	xen_mc_issue(PARAVIRT_LAZY_MMU);
+	xen_mc_issue(XEN_LAZY_MMU);
 }
 
 static unsigned long xen_read_cr3(void)
@@ -1361,7 +1361,7 @@ static void xen_write_cr3(unsigned long cr3)
 	else
 		__xen_write_cr3(false, 0);
 
-	xen_mc_issue(PARAVIRT_LAZY_CPU);  /* interrupts restored */
+	xen_mc_issue(XEN_LAZY_CPU);  /* interrupts restored */
 }
 
 /*
@@ -1396,7 +1396,7 @@ static void __init xen_write_cr3_init(unsigned long cr3)
 
 	__xen_write_cr3(true, cr3);
 
-	xen_mc_issue(PARAVIRT_LAZY_CPU);  /* interrupts restored */
+	xen_mc_issue(XEN_LAZY_CPU);  /* interrupts restored */
 }
 
 static int xen_pgd_alloc(struct mm_struct *mm)
@@ -1557,7 +1557,7 @@ static inline void xen_alloc_ptpage(struct mm_struct *mm, unsigned long pfn,
 		if (level == PT_PTE && USE_SPLIT_PTE_PTLOCKS && !pinned)
 			__pin_pagetable_pfn(MMUEXT_PIN_L1_TABLE, pfn);
 
-		xen_mc_issue(PARAVIRT_LAZY_MMU);
+		xen_mc_issue(XEN_LAZY_MMU);
 	}
 }
 
@@ -1587,7 +1587,7 @@ static inline void xen_release_ptpage(unsigned long pfn, unsigned level)
 
 		__set_pfn_prot(pfn, PAGE_KERNEL);
 
-		xen_mc_issue(PARAVIRT_LAZY_MMU);
+		xen_mc_issue(XEN_LAZY_MMU);
 
 		ClearPagePinned(page);
 	}
@@ -1804,7 +1804,7 @@ void __init xen_setup_kernel_pagetable(pgd_t *pgd, unsigned long max_pfn)
 	 */
 	xen_mc_batch();
 	__xen_write_cr3(true, __pa(init_top_pgt));
-	xen_mc_issue(PARAVIRT_LAZY_CPU);
+	xen_mc_issue(XEN_LAZY_CPU);
 
 	/* We can't that easily rip out L3 and L2, as the Xen pagetables are
 	 * set out this way: [L4], [L1], [L2], [L3], [L1], [L1] ...  for
@@ -2083,6 +2083,23 @@ static void xen_set_fixmap(unsigned idx, phys_addr_t phys, pgprot_t prot)
 #endif
 }
 
+static void xen_enter_lazy_mmu(void)
+{
+	enter_lazy(XEN_LAZY_MMU);
+}
+
+static void xen_flush_lazy_mmu(void)
+{
+	preempt_disable();
+
+	if (xen_get_lazy_mode() == XEN_LAZY_MMU) {
+		arch_leave_lazy_mmu_mode();
+		arch_enter_lazy_mmu_mode();
+	}
+
+	preempt_enable();
+}
+
 static void __init xen_post_allocator_init(void)
 {
 	pv_ops.mmu.set_pte = xen_set_pte;
@@ -2107,7 +2124,7 @@ static void xen_leave_lazy_mmu(void)
 {
 	preempt_disable();
 	xen_mc_flush();
-	paravirt_leave_lazy_mmu();
+	leave_lazy(XEN_LAZY_MMU);
 	preempt_enable();
 }
 
@@ -2166,9 +2183,9 @@ static const typeof(pv_ops) xen_mmu_ops __initconst = {
 		.exit_mmap = xen_exit_mmap,
 
 		.lazy_mode = {
-			.enter = paravirt_enter_lazy_mmu,
+			.enter = xen_enter_lazy_mmu,
 			.leave = xen_leave_lazy_mmu,
-			.flush = paravirt_flush_lazy_mmu,
+			.flush = xen_flush_lazy_mmu,
 		},
 
 		.set_fixmap = xen_set_fixmap,
@@ -2385,7 +2402,7 @@ static noinline void xen_flush_tlb_all(void)
 	op->cmd = MMUEXT_TLB_FLUSH_ALL;
 	MULTI_mmuext_op(mcs.mc, op, 1, NULL, DOMID_SELF);
 
-	xen_mc_issue(PARAVIRT_LAZY_MMU);
+	xen_mc_issue(XEN_LAZY_MMU);
 
 	preempt_enable();
 }
diff --git a/arch/x86/xen/multicalls.h b/arch/x86/xen/multicalls.h
index 1c51b2c87f30..c3867b585e0d 100644
--- a/arch/x86/xen/multicalls.h
+++ b/arch/x86/xen/multicalls.h
@@ -26,7 +26,7 @@ static inline void xen_mc_batch(void)
 
 	/* need to disable interrupts until this entry is complete */
 	local_irq_save(flags);
-	trace_xen_mc_batch(paravirt_get_lazy_mode());
+	trace_xen_mc_batch(xen_get_lazy_mode());
 	__this_cpu_write(xen_mc_irq_flags, flags);
 }
 
@@ -44,7 +44,7 @@ static inline void xen_mc_issue(unsigned mode)
 {
 	trace_xen_mc_issue(mode);
 
-	if ((paravirt_get_lazy_mode() & mode) == 0)
+	if ((xen_get_lazy_mode() & mode) == 0)
 		xen_mc_flush();
 
 	/* restore flags saved in xen_mc_batch */
diff --git a/include/trace/events/xen.h b/include/trace/events/xen.h
index 44a3f565264d..0577f0cdd231 100644
--- a/include/trace/events/xen.h
+++ b/include/trace/events/xen.h
@@ -6,26 +6,26 @@
 #define _TRACE_XEN_H
 
 #include <linux/tracepoint.h>
-#include <asm/paravirt_types.h>
+#include <asm/xen/hypervisor.h>
 #include <asm/xen/trace_types.h>
 
 struct multicall_entry;
 
 /* Multicalls */
 DECLARE_EVENT_CLASS(xen_mc__batch,
-	    TP_PROTO(enum paravirt_lazy_mode mode),
+	    TP_PROTO(enum xen_lazy_mode mode),
 	    TP_ARGS(mode),
 	    TP_STRUCT__entry(
-		    __field(enum paravirt_lazy_mode, mode)
+		    __field(enum xen_lazy_mode, mode)
 		    ),
 	    TP_fast_assign(__entry->mode = mode),
 	    TP_printk("start batch LAZY_%s",
-		      (__entry->mode == PARAVIRT_LAZY_MMU) ? "MMU" :
-		      (__entry->mode == PARAVIRT_LAZY_CPU) ? "CPU" : "NONE")
+		      (__entry->mode == XEN_LAZY_MMU) ? "MMU" :
+		      (__entry->mode == XEN_LAZY_CPU) ? "CPU" : "NONE")
 	);
 #define DEFINE_XEN_MC_BATCH(name)			\
 	DEFINE_EVENT(xen_mc__batch, name,		\
-		TP_PROTO(enum paravirt_lazy_mode mode),	\
+		TP_PROTO(enum xen_lazy_mode mode),	\
 		     TP_ARGS(mode))
 
 DEFINE_XEN_MC_BATCH(xen_mc_batch);
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 11:38:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 11:38:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601229.937214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgOCp-0003rq-S7; Wed, 13 Sep 2023 11:38:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601229.937214; Wed, 13 Sep 2023 11:38:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgOCp-0003rO-P7; Wed, 13 Sep 2023 11:38:51 +0000
Received: by outflank-mailman (input) for mailman id 601229;
 Wed, 13 Sep 2023 11:38:50 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xOkN=E5=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qgOCo-0003ob-H6
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 11:38:50 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1a5c0bf3-522a-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 13:38:48 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id DE4EF1F461;
 Wed, 13 Sep 2023 11:38:47 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 9401D13582;
 Wed, 13 Sep 2023 11:38:47 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id NCztIkefAWWVCwAAMHmgww
 (envelope-from <jgross@suse.com>); Wed, 13 Sep 2023 11:38:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1a5c0bf3-522a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1694605127; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=++Gf4nZevYukLnMCd8J7gk+s802IZpzJx/5E73wtImY=;
	b=SHILpcKUB+qttiLi6k4sYhNzmXEFE767/y3kD9zbG2bluvZ7ghrloO9UGyNAhPubecIaKP
	NGNWWh5CDcoRq9haIK8xFSRVnZ0ag62gtllZXtXM6vGJ8WcYBytmyjAszMfOa3Kyr1S2Ur
	7HXYBqGaBGWrqpTPsAL3X8ci5xu+xRw=
From: Juergen Gross <jgross@suse.com>
To: linux-kernel@vger.kernel.org,
	x86@kernel.org
Cc: Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>,
	Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"H. Peter Anvin" <hpa@zytor.com>,
	xen-devel@lists.xenproject.org
Subject: [PATCH 3/3] x86/xen: allow nesting of same lazy mode
Date: Wed, 13 Sep 2023 13:38:28 +0200
Message-Id: <20230913113828.18421-4-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20230913113828.18421-1-jgross@suse.com>
References: <20230913113828.18421-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

When running as a paravirtualized guest under Xen, Linux is using
"lazy mode" for issuing hypercalls which don't need to take immediate
effect in order to improve performance (examples are e.g. multiple
PTE changes).

There are two different lazy modes defined: MMU and CPU lazy mode.
Today it is not possible to nest multiple lazy mode sections, even if
they are of the same kind. A recent change in memory management added
nesting of MMU lazy mode sections, resulting in a regression when
running as Xen PV guest.

Technically there is no reason why nesting of multiple sections of the
same kind of lazy mode shouldn't be allowed. So add support for that
for fixing the regression.

Fixes: bcc6cc832573 ("mm: add default definition of set_ptes()")
Signed-off-by: Juergen Gross <jgross@suse.com>
---
 arch/x86/include/asm/xen/hypervisor.h | 15 +++++++++++++--
 arch/x86/xen/enlighten_pv.c           |  1 +
 2 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/arch/x86/include/asm/xen/hypervisor.h b/arch/x86/include/asm/xen/hypervisor.h
index ed05ce3df5c7..7048dfacc04b 100644
--- a/arch/x86/include/asm/xen/hypervisor.h
+++ b/arch/x86/include/asm/xen/hypervisor.h
@@ -72,10 +72,18 @@ enum xen_lazy_mode {
 };
 
 DECLARE_PER_CPU(enum xen_lazy_mode, xen_lazy_mode);
+DECLARE_PER_CPU(unsigned int, xen_lazy_nesting);
 
 static inline void enter_lazy(enum xen_lazy_mode mode)
 {
-	BUG_ON(this_cpu_read(xen_lazy_mode) != XEN_LAZY_NONE);
+	enum xen_lazy_mode old_mode = this_cpu_read(xen_lazy_mode);
+
+	if (mode == old_mode) {
+		this_cpu_inc(xen_lazy_nesting);
+		return;
+	}
+
+	BUG_ON(old_mode != XEN_LAZY_NONE);
 
 	this_cpu_write(xen_lazy_mode, mode);
 }
@@ -84,7 +92,10 @@ static inline void leave_lazy(enum xen_lazy_mode mode)
 {
 	BUG_ON(this_cpu_read(xen_lazy_mode) != mode);
 
-	this_cpu_write(xen_lazy_mode, XEN_LAZY_NONE);
+	if (this_cpu_read(xen_lazy_nesting) == 0)
+		this_cpu_write(xen_lazy_mode, XEN_LAZY_NONE);
+	else
+		this_cpu_dec(xen_lazy_nesting);
 }
 
 enum xen_lazy_mode xen_get_lazy_mode(void);
diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
index 54b83825c4b6..bbbfdd495ebd 100644
--- a/arch/x86/xen/enlighten_pv.c
+++ b/arch/x86/xen/enlighten_pv.c
@@ -102,6 +102,7 @@ struct tls_descs {
 };
 
 DEFINE_PER_CPU(enum xen_lazy_mode, xen_lazy_mode) = XEN_LAZY_NONE;
+DEFINE_PER_CPU(unsigned int, xen_lazy_nesting);
 
 enum xen_lazy_mode xen_get_lazy_mode(void)
 {
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 12:22:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 12:22:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601253.937224 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgOtB-000665-B8; Wed, 13 Sep 2023 12:22:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601253.937224; Wed, 13 Sep 2023 12:22:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgOtB-00065y-7B; Wed, 13 Sep 2023 12:22:37 +0000
Received: by outflank-mailman (input) for mailman id 601253;
 Wed, 13 Sep 2023 12:22:35 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=o3wF=E5=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qgOt9-00065s-KT
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 12:22:35 +0000
Received: from mail-pg1-x52a.google.com (mail-pg1-x52a.google.com
 [2607:f8b0:4864:20::52a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 374573e3-5230-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 14:22:34 +0200 (CEST)
Received: by mail-pg1-x52a.google.com with SMTP id
 41be03b00d2f7-577a98f78b2so1236916a12.3
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 05:22:34 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 g1-20020a170902c38100b001c3267ae314sm10323061plg.156.2023.09.13.05.22.27
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 13 Sep 2023 05:22:32 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 374573e3-5230-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694607753; x=1695212553; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=bd7AjsFGHVU9ZgF8t64qnNi1wuPnAXka53rRg0j9Ps8=;
        b=LWgyjsEEelOcCRWM2eUo45fI/75Ruucet0marW43aDGtBKe74wV4/0Fqxy0kEYBaHX
         wi0K0WT3enAI9QUuD5s0S7tJ7q/s20xkvTc3EYblc497Mt3wUOP4RmdjMK9Nnez48kcH
         UrHgsnweuxIJDJkjZe1Aaid0o8lk5u0i8SdAtM0sFXLzUNENcpa/sFWX9Gn3nWUEQZ+z
         gdIY5KGeZrvc4YgF95Huj7UBIZcLvnuCCI6d+SqzzcS/jgXvQjAXB5urWo39yxZ1i8DI
         MN/16lz5tKk9/rYpAMqa+dDti2jK1ivdoQ1n4qZlHvWU/a7Wl5BIfLG6mEX7mIXK91oj
         hxAA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694607753; x=1695212553;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=bd7AjsFGHVU9ZgF8t64qnNi1wuPnAXka53rRg0j9Ps8=;
        b=TjMIHSekCpoxXPMN7JUqKybhVzvpMFtorz/TThzzY0No8BoG/RIXUuZYuIIBl/nI4t
         M1xF+isxDtEZFzv4dao4H8sXBqCTCRFG7PDVv8wSzyjs6xE18aE1YBTlxrHEdNa7rvnr
         9N3gMSvvXNn1xKWw3kQ7kOxubeiSKGWJU0hoiTeJ0M/8A4Mzen41rdiAYwYPz3Twy8d+
         RJlh2dtSzgmxD/oMrAb8hoU6yBhTEoPWANU+AmSKlW87hqllQBmeeglVXc5OxUHiRE94
         Ly/AhQ3AWrmBBPl8FvUrtvKFZvmHzE4GUAzb656kSdl9KwwVeJWFB+G3Io5lfY3v4mRV
         mGYg==
X-Gm-Message-State: AOJu0YyzHt9hbHuakHO13egfBHhkhES6oZ5WLoCXfS++mp4RqRYpmPU5
	FhhEp8aLBvSMc6Zp+b++CPK+HQ==
X-Google-Smtp-Source: AGHT+IFUceWhWOwzr7PceZj0Aedx/pJWoToZ/n1XM68m4HSxGEeSRi2V9aKihvMef0Dz/aLMOl/mPA==
X-Received: by 2002:a05:6a20:e125:b0:137:3c67:85d7 with SMTP id kr37-20020a056a20e12500b001373c6785d7mr2865750pzb.16.1694607752788;
        Wed, 13 Sep 2023 05:22:32 -0700 (PDT)
Message-ID: <5e88f5d5-5aa2-4052-b250-69c2a443344f@daynix.com>
Date: Wed, 13 Sep 2023 21:22:26 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
To: Albert Esteve <aesteve@redhat.com>
Cc: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 "ernunes@redhat.com" <ernunes@redhat.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com>
 <11c227e8-a464-41ce-a435-82c570746388@daynix.com>
 <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
 <cf99ac00-6f48-4778-b319-6079a931ba5d@daynix.com>
 <CADSE00+6zcT7iKR0JW1Bk8es6HtBpzAKa9JW6u5yyjDoLPw2KQ@mail.gmail.com>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <CADSE00+6zcT7iKR0JW1Bk8es6HtBpzAKa9JW6u5yyjDoLPw2KQ@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 2023/09/13 20:34, Albert Esteve wrote:
> 
> 
> On Wed, Sep 13, 2023 at 12:34 PM Akihiko Odaki <akihiko.odaki@daynix.com 
> <mailto:akihiko.odaki@daynix.com>> wrote:
> 
>     On 2023/09/13 16:55, Albert Esteve wrote:
>      > Hi Antonio,
>      >
>      > If I'm not mistaken, this patch is related with:
>      >
>     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html
>     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>
>      >
>     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html
>     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>
>      > IMHO, ideally, virtio-gpu and vhost-user-gpu both, would use the
>      > infrastructure from the patch I linked to store the
>      > virtio objects, so that they can be later shared with other devices.
> 
>     I don't think such sharing is possible because the resources are
>     identified by IDs that are local to the device. That also complicates
>     migration.
> 
>     Regards,
>     Akihiko Odaki
> 
> Hi Akihiko,
> 
> As far as I understand, the feature to export dma-bufs from the
> virtgpu was introduced as part of the virtio cross-device sharing
> proposal [1]. Thus, it shall be posible. When virtgpu ASSING_UUID,
> it exports and identifies the dmabuf resource, so that when the dmabuf gets
> shared inside the guest (e.g., with virtio-video), we can use the assigned
> UUID to find the dmabuf in the host (using the patch that I linked above),
> and import it.
> 
> [1] - https://lwn.net/Articles/828988/ <https://lwn.net/Articles/828988/>

The problem is that virtio-gpu can have other kind of resources like 
pixman and OpenGL textures and manage them and DMA-BUFs with unified 
resource ID.

So you cannot change:
g_hash_table_insert(g->resource_uuids, 
GUINT_TO_POINTER(assign.resource_id), uuid);
by:
virtio_add_dmabuf(uuid, assign.resource_id);

assign.resource_id is not DMA-BUF file descriptor, and the underlying 
resource my not be DMA-BUF at first place.

Also, since this lives in the common code that is not used only by 
virtio-gpu-gl but also virtio-gpu, which supports migration, we also 
need to take care of that. It is not a problem for DMA-BUF as DMA-BUF is 
not migratable anyway, but the situation is different in this case.

Implementing cross-device sharing is certainly a possibility, but that 
requires more than dealing with DMA-BUFs.


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 12:29:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 12:29:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601259.937234 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgP00-0007wd-0R; Wed, 13 Sep 2023 12:29:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601259.937234; Wed, 13 Sep 2023 12:29:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgOzz-0007wW-TV; Wed, 13 Sep 2023 12:29:39 +0000
Received: by outflank-mailman (input) for mailman id 601259;
 Wed, 13 Sep 2023 12:29:38 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=XHSA=E5=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qgOzy-0007wP-Nw
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 12:29:38 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3262f47b-5231-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 14:29:35 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-19-206-190.retail.telecomitalia.it [87.19.206.190])
 by support.bugseng.com (Postfix) with ESMTPSA id 120754EE074D;
 Wed, 13 Sep 2023 14:29:34 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3262f47b-5231-11ee-9b0d-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH] xen/libelf: address violations of MISRA C:2012 RUles 8.2 and 8.3
Date: Wed, 13 Sep 2023 14:29:24 +0200
Message-Id: <e4d28b9b78e84260feea6bdbcb4ecdd815af5db3.1694591513.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names and make function declarations and
definitions consistent. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/include/xen/libelf.h | 38 +++++++++++++++++++++-----------------
 1 file changed, 21 insertions(+), 17 deletions(-)

diff --git a/xen/include/xen/libelf.h b/xen/include/xen/libelf.h
index be47b0cc36..1c77e3df31 100644
--- a/xen/include/xen/libelf.h
+++ b/xen/include/xen/libelf.h
@@ -260,8 +260,8 @@ struct elf_binary {
    * str should be a HANDLE.
    */
 
-uint64_t elf_access_unsigned(struct elf_binary *elf, elf_ptrval ptr,
-                             uint64_t offset, size_t size);
+uint64_t elf_access_unsigned(struct elf_binary *elf, elf_ptrval base,
+                             uint64_t moreoffset, size_t size);
   /* Reads a field at arbitrary offset and alignemnt */
 
 uint64_t elf_round_up(struct elf_binary *elf, uint64_t addr);
@@ -272,8 +272,10 @@ const char *elf_strval(struct elf_binary *elf, elf_ptrval start);
 const char *elf_strfmt(struct elf_binary *elf, elf_ptrval start);
   /* like elf_strval but returns "(invalid)" instead of NULL */
 
-void elf_memcpy_safe(struct elf_binary*, elf_ptrval dst, elf_ptrval src, size_t);
-void elf_memset_safe(struct elf_binary*, elf_ptrval dst, int c, size_t);
+void elf_memcpy_safe(struct elf_binary *elf, elf_ptrval dst, elf_ptrval src,
+                     size_t size);
+void elf_memset_safe(struct elf_binary *elf, elf_ptrval dst, int c,
+                     size_t size);
   /*
    * Versions of memcpy and memset which arrange never to write
    * outside permitted areas.
@@ -324,7 +326,8 @@ ELF_HANDLE_DECL(elf_sym) elf_sym_by_index(struct elf_binary *elf, unsigned index
 const char *elf_note_name(struct elf_binary *elf, ELF_HANDLE_DECL(elf_note) note); /* may return NULL */
 elf_ptrval elf_note_desc(struct elf_binary *elf, ELF_HANDLE_DECL(elf_note) note);
 uint64_t elf_note_numeric(struct elf_binary *elf, ELF_HANDLE_DECL(elf_note) note);
-uint64_t elf_note_numeric_array(struct elf_binary *, ELF_HANDLE_DECL(elf_note),
+uint64_t elf_note_numeric_array(struct elf_binary *elf,
+                                ELF_HANDLE_DECL(elf_note) note,
                                 unsigned int unitsz, unsigned int idx);
 
 /*
@@ -346,9 +349,10 @@ bool elf_phdr_is_loadable(struct elf_binary *elf, ELF_HANDLE_DECL(elf_phdr) phdr
 /* ------------------------------------------------------------------------ */
 /* xc_libelf_loader.c                                                       */
 
-elf_errorstatus elf_init(struct elf_binary *elf, const char *image, size_t size);
+elf_errorstatus elf_init(struct elf_binary *elf, const char *image_input,
+                         size_t size);
   /*
-   * image and size must be correct.  They will be recorded in
+   * image_input and size must be correct.  They will be recorded in
    * *elf, and must remain valid while the elf is in use.
    */
 #ifdef __XEN__
@@ -445,16 +449,16 @@ static inline int elf_xen_feature_get(int nr, uint32_t * addr)
     return !!(addr[nr >> 5] & (1 << (nr & 31)));
 }
 
-int elf_xen_parse_features(const char *features,
-                           uint32_t *supported,
-                           uint32_t *required);
-int elf_xen_parse_note(struct elf_binary *elf,
-                       struct elf_dom_parms *parms,
-                       ELF_HANDLE_DECL(elf_note) note);
-int elf_xen_parse_guest_info(struct elf_binary *elf,
-                             struct elf_dom_parms *parms);
-int elf_xen_parse(struct elf_binary *elf,
-                  struct elf_dom_parms *parms, bool hvm);
+elf_errorstatus elf_xen_parse_features(const char *features,
+                                       uint32_t *supported,
+                                       uint32_t *required);
+elf_errorstatus elf_xen_parse_note(struct elf_binary *elf,
+                                   struct elf_dom_parms *parms,
+                                   ELF_HANDLE_DECL(elf_note) note);
+elf_errorstatus elf_xen_parse_guest_info(struct elf_binary *elf,
+                                         struct elf_dom_parms *parms);
+elf_errorstatus elf_xen_parse(struct elf_binary *elf,
+                              struct elf_dom_parms *parms, bool hvm);
 
 static inline void *elf_memcpy_unchecked(void *dest, const void *src, size_t n)
     { return memcpy(dest, src, n); }
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 12:41:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 12:41:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601265.937244 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPBV-0002tU-16; Wed, 13 Sep 2023 12:41:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601265.937244; Wed, 13 Sep 2023 12:41:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPBU-0002tN-UI; Wed, 13 Sep 2023 12:41:32 +0000
Received: by outflank-mailman (input) for mailman id 601265;
 Wed, 13 Sep 2023 12:41:31 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=XHSA=E5=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qgPBT-0002tH-RE
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 12:41:31 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id dcfdcaca-5232-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 14:41:30 +0200 (CEST)
Received: from [192.168.1.15] (host-87-19-206-190.retail.telecomitalia.it
 [87.19.206.190])
 by support.bugseng.com (Postfix) with ESMTPSA id E462F4EE074D;
 Wed, 13 Sep 2023 14:41:29 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dcfdcaca-5232-11ee-8786-cb3800f73035
Message-ID: <9acf798a-9d08-4940-d8e0-20b423294d2e@bugseng.com>
Date: Wed, 13 Sep 2023 14:41:29 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/libelf: address violations of MISRA C:2012 RUles
 8.2 and 8.3
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <e4d28b9b78e84260feea6bdbcb4ecdd815af5db3.1694591513.git.federico.serafini@bugseng.com>
Content-Language: en-US, it
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <e4d28b9b78e84260feea6bdbcb4ecdd815af5db3.1694591513.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 13/09/23 14:29, Federico Serafini wrote:
> Add missing parameter names and make function declarations and
> definitions consistent. No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

There is a typo in the patch title (RUles), please correct on commit.

Reviewed-by: Federico Serafini <federico.serafini@bugseng.com>


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 12:58:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 12:58:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601271.937254 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPRs-0005Zn-DM; Wed, 13 Sep 2023 12:58:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601271.937254; Wed, 13 Sep 2023 12:58:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPRs-0005Zg-9y; Wed, 13 Sep 2023 12:58:28 +0000
Received: by outflank-mailman (input) for mailman id 601271;
 Wed, 13 Sep 2023 12:58:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gBHS=E5=redhat.com=aesteve@srs-se1.protection.inumbo.net>)
 id 1qgPRr-0005Za-CZ
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 12:58:27 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 397d1698-5235-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 14:58:25 +0200 (CEST)
Received: from mail-pj1-f70.google.com (mail-pj1-f70.google.com
 [209.85.216.70]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-44-5-aCNz-xPtWwb6PkW0OqGg-1; Wed, 13 Sep 2023 08:58:20 -0400
Received: by mail-pj1-f70.google.com with SMTP id
 98e67ed59e1d1-27372e336b2so869165a91.1
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 05:58:20 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 397d1698-5235-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694609904;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=39ec+42JeB+j1CbwXASOlDxqz4wzR2fUyc8rEMzvKgY=;
	b=XCQcJUhwALR6jbzeAJJk37m+vVTridoRwHwUf1v0UFXT9s1BYb9GSQRDhT2iA5rtAGIqnY
	Is5+rokWai6X0YiM5X5QNrA32NMMZk0E2j5uHK+BSuasFjfjuxnZH3A6caSKiQ5yaSP4zn
	d1Ind7kcxMh/HBQCsNeydSh/6CIJj6s=
X-MC-Unique: 5-aCNz-xPtWwb6PkW0OqGg-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694609899; x=1695214699;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=39ec+42JeB+j1CbwXASOlDxqz4wzR2fUyc8rEMzvKgY=;
        b=bEYPJMJKc+UDTpjDkyYpgjnQB1RuZnjHJ8x8LPXazsAs6xSaN13YzkEKrl344oXlbD
         LcpGwC5H/8q2vgtfh9kN5slXRudCPbJQs90GxssVmGsZUxYZ4UWkmXDAF54MvXepsnaZ
         E5pmx1d2vbasDfVtuHJC3xXd3iHQMZnCpoFtZmLHh6QjD4MJtwb7b3OI37Qs/ZjYySI5
         L4aXs/mhTA9lR5vKE3weOqAqrMrd0r7jaOPdXidxjfaOPKOI/oL9wa7HaQUq+J8+Qn1T
         0gZuE2CcMXogtjF7g9YMzLWaBLmGzCs+1DQAs8T0UJWmUoPBsl1B9gDwnBMsKUWVuuZq
         MZ4w==
X-Gm-Message-State: AOJu0Yx4iI5JNnBe9uk3HW6Mmw2evVrhLteyKpyIQrOcc86ZP6/DDkTf
	zluiwi90Rt459wUlcDBDCWnYEdlXRUtywr2O597H61k4+cK2y4/fWBUMDjMzR5ObVQFy6AQ1iy8
	E225dJ8U1hUQpn/1J1DX+1IytmahI8VdjYScCHUbrW8M=
X-Received: by 2002:a17:90b:1902:b0:269:4fe8:687 with SMTP id mp2-20020a17090b190200b002694fe80687mr3917108pjb.19.1694609899653;
        Wed, 13 Sep 2023 05:58:19 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IH61qvMRdN3LPMiWAjCSRDtpzdel5iiJmmJEhut4Q0QbARnWkG/bcS1VhoV1g2d29bwNFmFQWLpet9R1u26/N8=
X-Received: by 2002:a17:90b:1902:b0:269:4fe8:687 with SMTP id
 mp2-20020a17090b190200b002694fe80687mr3917071pjb.19.1694609899262; Wed, 13
 Sep 2023 05:58:19 -0700 (PDT)
MIME-Version: 1.0
References: <20230831093252.2461282-1-ray.huang@amd.com> <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com>
 <11c227e8-a464-41ce-a435-82c570746388@daynix.com> <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
 <cf99ac00-6f48-4778-b319-6079a931ba5d@daynix.com> <CADSE00+6zcT7iKR0JW1Bk8es6HtBpzAKa9JW6u5yyjDoLPw2KQ@mail.gmail.com>
 <5e88f5d5-5aa2-4052-b250-69c2a443344f@daynix.com>
In-Reply-To: <5e88f5d5-5aa2-4052-b250-69c2a443344f@daynix.com>
From: Albert Esteve <aesteve@redhat.com>
Date: Wed, 13 Sep 2023 14:58:07 +0200
Message-ID: <CADSE00+BUq-6jKH3v2PYNThn+9Z4UCFcr3Cv9Z48eUX0b=6ymA@mail.gmail.com>
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>, 
	"Michael S . Tsirkin" <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, 
	Antonio Caggiano <antonio.caggiano@collabora.com>, 
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, 
	Dmitry Osipenko <dmitry.osipenko@collabora.com>, =?UTF-8?B?QWxleCBCZW5uw6ll?= <alex.bennee@linaro.org>, 
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
	Gurchetan Singh <gurchetansingh@chromium.org>, "ernunes@redhat.com" <ernunes@redhat.com>, 
	=?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= <philmd@linaro.org>, 
	Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	"Deucher, Alexander" <Alexander.Deucher@amd.com>, "Koenig, Christian" <Christian.Koenig@amd.com>, 
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>, 
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>, 
	"Huang, Honglei1" <Honglei1.Huang@amd.com>, "Zhang, Julia" <Julia.Zhang@amd.com>, 
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: multipart/alternative; boundary="00000000000014281b06053d1d4f"

--00000000000014281b06053d1d4f
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Sep 13, 2023 at 2:22=E2=80=AFPM Akihiko Odaki <akihiko.odaki@daynix=
.com>
wrote:

> On 2023/09/13 20:34, Albert Esteve wrote:
> >
> >
> > On Wed, Sep 13, 2023 at 12:34=E2=80=AFPM Akihiko Odaki <akihiko.odaki@d=
aynix.com
> > <mailto:akihiko.odaki@daynix.com>> wrote:
> >
> >     On 2023/09/13 16:55, Albert Esteve wrote:
> >      > Hi Antonio,
> >      >
> >      > If I'm not mistaken, this patch is related with:
> >      >
> >     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html
> >     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.htm=
l
> >
> >      >
> >     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.htm=
l
> >     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.htm=
l
> >>
> >      > IMHO, ideally, virtio-gpu and vhost-user-gpu both, would use the
> >      > infrastructure from the patch I linked to store the
> >      > virtio objects, so that they can be later shared with other
> devices.
> >
> >     I don't think such sharing is possible because the resources are
> >     identified by IDs that are local to the device. That also complicat=
es
> >     migration.
> >
> >     Regards,
> >     Akihiko Odaki
> >
> > Hi Akihiko,
> >
> > As far as I understand, the feature to export dma-bufs from the
> > virtgpu was introduced as part of the virtio cross-device sharing
> > proposal [1]. Thus, it shall be posible. When virtgpu ASSING_UUID,
> > it exports and identifies the dmabuf resource, so that when the dmabuf
> gets
> > shared inside the guest (e.g., with virtio-video), we can use the
> assigned
> > UUID to find the dmabuf in the host (using the patch that I linked
> above),
> > and import it.
> >
> > [1] - https://lwn.net/Articles/828988/ <https://lwn.net/Articles/828988=
/
> >
>
> The problem is that virtio-gpu can have other kind of resources like
> pixman and OpenGL textures and manage them and DMA-BUFs with unified
> resource ID.
>

I see.


>
> So you cannot change:
> g_hash_table_insert(g->resource_uuids,
> GUINT_TO_POINTER(assign.resource_id), uuid);
> by:
> virtio_add_dmabuf(uuid, assign.resource_id);
>
> assign.resource_id is not DMA-BUF file descriptor, and the underlying
> resource my not be DMA-BUF at first place.
>

I didn't really look into the patch in-depth, so the code was intended
to give an idea of how the implementation would look like with
the cross-device patch API. Indeed, it is not the resource_id,
(I just took a brief look at the virtio specificacion 1.2), but the
underlying
resource what we want to use here.


>
> Also, since this lives in the common code that is not used only by
> virtio-gpu-gl but also virtio-gpu, which supports migration, we also
> need to take care of that. It is not a problem for DMA-BUF as DMA-BUF is
> not migratable anyway, but the situation is different in this case.
>
> Implementing cross-device sharing is certainly a possibility, but that
> requires more than dealing with DMA-BUFs.
>
>
So, if I understood correctly, dmabufs are just a subset of the resources
that the gpu manages, or can assign UUIDs to. I am not sure why
the virt gpu driver would want to send a ASSIGN_UUID for anything
that is not a dmabuf (are we sure it does?), but I am not super familiarize=
d
with virtgpu to begin with.
But I see that internally, the GPU specs relate a UUID with a resource_id,
so we still need both tables:
- one to relate UUID with resource_id to be able to locate the underlying
resource
- the table that holds the dmabuf with the UUID for cross-device sharing

With that in mind, sounds to me that the support for cross-device sharing
could
be added on top of this patch, once
https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html
lands.

I hope that makes sense.
Regards,
Albert

--00000000000014281b06053d1d4f
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div><div dir=3D"ltr" class=3D"gmail_sign=
ature"><div dir=3D"ltr"><br></div></div></div></div><br><div class=3D"gmail=
_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Wed, Sep 13, 2023 at 2:22=
=E2=80=AFPM Akihiko Odaki &lt;<a href=3D"mailto:akihiko.odaki@daynix.com">a=
kihiko.odaki@daynix.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_=
quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,=
204);padding-left:1ex">On 2023/09/13 20:34, Albert Esteve wrote:<br>
&gt; <br>
&gt; <br>
&gt; On Wed, Sep 13, 2023 at 12:34=E2=80=AFPM Akihiko Odaki &lt;<a href=3D"=
mailto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com=
</a> <br>
&gt; &lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blan=
k">akihiko.odaki@daynix.com</a>&gt;&gt; wrote:<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0On 2023/09/13 16:55, Albert Esteve wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; Hi Antonio,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; If I&#39;m not mistaken, this patch is relate=
d with:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lists.gnu.org/archive/html/qemu-=
devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https://l=
ists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive/html/q=
emu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https=
://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive/html/q=
emu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https=
://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive/html/q=
emu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https=
://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt;<=
br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; IMHO, ideally, virtio-gpu and vhost-user-gpu =
both, would use the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; infrastructure from the patch I linked to sto=
re the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; virtio objects, so that they can be later sha=
red with other devices.<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0I don&#39;t think such sharing is possible because =
the resources are<br>
&gt;=C2=A0 =C2=A0 =C2=A0identified by IDs that are local to the device. Tha=
t also complicates<br>
&gt;=C2=A0 =C2=A0 =C2=A0migration.<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0Regards,<br>
&gt;=C2=A0 =C2=A0 =C2=A0Akihiko Odaki<br>
&gt; <br>
&gt; Hi Akihiko,<br>
&gt; <br>
&gt; As far as I understand, the feature to export dma-bufs=C2=A0from the<b=
r>
&gt; virtgpu was introduced as part of the virtio cross-device sharing<br>
&gt; proposal [1]. Thus, it shall be posible. When virtgpu=C2=A0ASSING_UUID=
,<br>
&gt; it exports and identifies the dmabuf resource, so that when the dmabuf=
 gets<br>
&gt; shared inside the guest (e.g., with virtio-video), we can use the assi=
gned<br>
&gt; UUID to find the dmabuf in the host (using the patch that I linked abo=
ve),<br>
&gt; and import it.<br>
&gt; <br>
&gt; [1] - <a href=3D"https://lwn.net/Articles/828988/" rel=3D"noreferrer" =
target=3D"_blank">https://lwn.net/Articles/828988/</a> &lt;<a href=3D"https=
://lwn.net/Articles/828988/" rel=3D"noreferrer" target=3D"_blank">https://l=
wn.net/Articles/828988/</a>&gt;<br>
<br>
The problem is that virtio-gpu can have other kind of resources like <br>
pixman and OpenGL textures and manage them and DMA-BUFs with unified <br>
resource ID.<br></blockquote><div><br></div><div>I see.</div><div>=C2=A0</d=
iv><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bord=
er-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
So you cannot change:<br>
g_hash_table_insert(g-&gt;resource_uuids, <br>
GUINT_TO_POINTER(assign.resource_id), uuid);<br>
by:<br>
virtio_add_dmabuf(uuid, assign.resource_id);<br>
<br>
assign.resource_id is not DMA-BUF file descriptor, and the underlying <br>
resource my not be DMA-BUF at first place.<br></blockquote><div><br></div><=
div>I didn&#39;t really look into the patch in-depth, so the=C2=A0code was =
intended</div><div>to give an idea of how the implementation would look lik=
e with</div><div>the cross-device patch API. Indeed, it is not the resource=
_id,</div><div>(I just took a brief look at the virtio specificacion=C2=A01=
.2), but the underlying</div><div>resource what we want to use here.</div><=
div>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0=
px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Also, since this lives in the common code that is not used only by <br>
virtio-gpu-gl but also virtio-gpu, which supports migration, we also <br>
need to take care of that. It is not a problem for DMA-BUF as DMA-BUF is <b=
r>
not migratable anyway, but the situation is different in this case.<br>
<br>
Implementing cross-device sharing is certainly a possibility, but that <br>
requires more than dealing with DMA-BUFs.<br>
<br></blockquote><div><br></div><div>So, if I understood correctly, dmabufs=
=C2=A0are just a subset of the resources</div><div>that the gpu manages, or=
 can assign UUIDs to. I am not sure why</div><div>the virt gpu driver would=
 want to send a ASSIGN_UUID for anything</div><div>that is not a dmabuf (ar=
e we sure it does?), but I am not super familiarized</div><div>with virtgpu=
=C2=A0to begin with.</div><div>But I see that internally, the GPU specs rel=
ate a UUID with a resource_id,</div><div>so we still need both tables:</div=
><div>- one to relate UUID with resource_id to be able to locate the underl=
ying resource</div><div>- the table that holds the dmabuf with the UUID for=
 cross-device sharing</div><div><br></div><div>With that in mind, sounds to=
 me that the support for cross-device sharing could</div><div>be added on t=
op of this patch, once=C2=A0<a href=3D"https://lists.gnu.org/archive/html/q=
emu-devel/2023-09/msg01850.html">https://lists.gnu.org/archive/html/qemu-de=
vel/2023-09/msg01850.html</a></div><div>lands.</div><div><br></div><div>I h=
ope that makes sense.</div><div>Regards,</div><div>Albert</div></div></div>

--00000000000014281b06053d1d4f--



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 13:08:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 13:08:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601277.937263 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPb6-0007to-B9; Wed, 13 Sep 2023 13:08:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601277.937263; Wed, 13 Sep 2023 13:08:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPb6-0007th-8B; Wed, 13 Sep 2023 13:08:00 +0000
Received: by outflank-mailman (input) for mailman id 601277;
 Wed, 13 Sep 2023 13:07:58 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgPb4-0007tX-I1; Wed, 13 Sep 2023 13:07:58 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgPb4-0006Xx-Dz; Wed, 13 Sep 2023 13:07:58 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgPb3-0000UX-WE; Wed, 13 Sep 2023 13:07:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgPb3-0000Jz-Vi; Wed, 13 Sep 2023 13:07:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=vaf6PxbB1CPYq+955P/ffqGh33EHYoj5nMmwFD/fC2s=; b=yk0+IUaXane5HKMTWvPjSSLVdL
	rUAEq7q66I7hiGupGaDQ159B9zqLroTpzvUbI7aEqy4Gxde/DJtKRKjw3zECiQMTaxfOERAW61scn
	gwKIdZCZEHvQCi4/4OiFp4MQYASZ8eIUY0iE8zZbxGyE4QL/xPjL6Kh2JspP0GUVJJqg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182987-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182987: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-libvirt:<job status>:broken:regression
    xen-unstable:test-amd64-i386-examine-uefi:host-install:broken:regression
    xen-unstable:test-amd64-amd64-libvirt:host-install(5):broken:regression
    xen-unstable:test-amd64-amd64-examine-uefi:host-install:broken:regression
    xen-unstable:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    xen-unstable:test-amd64-i386-libvirt-pair:guest-migrate/dst_host/src_host/debian.repeat:fail:regression
    xen-unstable:test-amd64-amd64-examine-uefi:memdisk-try-append:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=21ec0c42267be169be6019e5a09b61cbf16d10ce
X-Osstest-Versions-That:
    xen=f1546c98e06fec6c2d1e15ff8e80547d10365bc3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 13 Sep 2023 13:07:57 +0000

flight 182987 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182987/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-libvirt        <job status>                 broken
 test-amd64-i386-examine-uefi  5 host-install           broken REGR. vs. 182955
 test-amd64-amd64-libvirt      5 host-install(5)        broken REGR. vs. 182955
 test-amd64-amd64-examine-uefi  5 host-install          broken REGR. vs. 182955
 test-amd64-i386-xl-qemut-debianhvm-amd64  8 xen-boot     fail REGR. vs. 182955
 test-amd64-i386-libvirt-pair 28 guest-migrate/dst_host/src_host/debian.repeat fail REGR. vs. 182955

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-examine-uefi  4 memdisk-try-append     fail blocked in 182955
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 182955
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182955
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182955
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182955
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182955
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182955
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182955
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182955
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182955
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182955
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182955
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182955
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  21ec0c42267be169be6019e5a09b61cbf16d10ce
baseline version:
 xen                  f1546c98e06fec6c2d1e15ff8e80547d10365bc3

Last test of basis   182955  2023-09-12 02:45:51 Z    1 days
Failing since        182969  2023-09-12 14:07:18 Z    0 days    2 attempts
Testing same since   182987  2023-09-13 01:08:42 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Gianluca Luparini <gianluca.luparini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@amd.com>
  Simone Ballarin <simone.ballarin@bugseng.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     broken  
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-i386-examine-uefi                                 fail    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary

broken-job test-amd64-amd64-libvirt broken
broken-step test-amd64-i386-examine-uefi host-install
broken-step test-amd64-amd64-libvirt host-install(5)
broken-step test-amd64-amd64-examine-uefi host-install

Not pushing.

------------------------------------------------------------
commit 21ec0c42267be169be6019e5a09b61cbf16d10ce
Author: Michal Orzel <michal.orzel@amd.com>
Date:   Thu Aug 24 11:06:40 2023 +0200

    xen/arm: Handle empty grant table region in find_unallocated_memory()
    
    When creating dom0 with grant table support disabled in Xen and no IOMMU,
    the following assert is triggered (debug build):
    "Assertion 's <= e' failed at common/rangeset.c:189"
    
    (XEN) Xen call trace:
    (XEN)    [<0000020000218568>] rangeset_remove_range+0xbc/0x2cc (PC)
    (XEN)    [<00000200002c76bc>] domain_build.c#make_hypervisor_node+0x294/0x7c4 (LR)
    (XEN)    [<00000200002ca240>] domain_build.c#handle_node+0x7ec/0x924
    (XEN)    [<00000200002ca7ac>] domain_build.c#construct_dom0+0x434/0x4d8
    
    This is because find_unallocated_memory() (used to find memory holes
    for extended regions) calls rangeset_remove_range() for an empty
    grant table region. Fix it by checking if the size of region is not 0.
    
    Signed-off-by: Michal Orzel <michal.orzel@amd.com>
    Reviewed-by: Julien Grall <jgrall@amazon.com>

commit 5e8df433db791ba7e63ac1253e4e2a06ccd353d7
Author: Gianluca Luparini <gianluca.luparini@bugseng.com>
Date:   Tue Sep 12 11:02:51 2023 +0200

    x86/viridian: address violations of MISRA C:2012 Rule 7.2
    
    The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
    headline states:
    "A 'u' or 'U' suffix shall be applied to all integer constants
    that are represented in an unsigned type".
    
    Add the 'U' suffix to integers literals with unsigned type and also to other
    literals used in the same contexts or near violations, when their positive
    nature is immediately clear. The latter changes are done for the sake of
    uniformity.
    
    Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
    Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
    Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
    Reviewed-by: Paul Durrant <paul@xen.org>

commit 7a952cc3ecfd948272bec91218a4862418e5a321
Author: Jan Beulich <jbeulich@suse.com>
Date:   Tue Sep 12 11:02:16 2023 +0200

    build: restrict gcc11 workaround to versions earlier than 11.3.0
    
    The fix for this issue was backported to 11.3, so let's not unduly
    engage the workaround.
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Acked-by: Julien Grall <jgrall@amazon.com>

commit a22f0de322c288d26e9f29179beef1e1779ccfbd
Author: Gianluca Luparini <gianluca.luparini@bugseng.com>
Date:   Tue Sep 12 11:01:19 2023 +0200

    x86/viridian: address violations of MISRA C:2012 Rule 7.3
    
    The xen sources contain violations of MISRA C:2012 Rule 7.3 whose headline
    states:
    "The lowercase character 'l' shall not be used in a literal suffix".
    
    Use the "L" suffix instead of the "l" suffix, to avoid potential ambiguity.
    If the "u" suffix is used near "L", use the "U" suffix instead, for consistency.
    
    The changes in this patch are mechanical.
    
    Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
    Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
    Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
    Reviewed-by: Paul Durrant <paul@xen.org>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 13:08:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 13:08:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601283.937274 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPbx-0008Rn-LG; Wed, 13 Sep 2023 13:08:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601283.937274; Wed, 13 Sep 2023 13:08:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPbx-0008Rg-HU; Wed, 13 Sep 2023 13:08:53 +0000
Received: by outflank-mailman (input) for mailman id 601283;
 Wed, 13 Sep 2023 13:08:52 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgPbw-0008RV-2R; Wed, 13 Sep 2023 13:08:52 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgPbw-0006YZ-1f; Wed, 13 Sep 2023 13:08:52 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgPbv-0000WD-M5; Wed, 13 Sep 2023 13:08:51 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgPbv-000282-LY; Wed, 13 Sep 2023 13:08:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=L/fEBm7l25kp74z9AUixbhHsRKukWAFXxs5iPoZk55w=; b=Mzossz6mJKfmSmggtPzXieSvDP
	B5ZS2VWJbKi8GCZ2WaIhtXyk5DnF6pRiIoS60SIZ6PQm739f/H38dyMUfdi7Dy6vrFIZH8QX9Do9r
	7w7QTcC/cSscIO/oqLkTUc14WsbY8X0yBsI1EmzT0AnyUtRz5r4wEWGivtVqarqvijzA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182996-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 182996: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=cdfe4310dda2a30b0ca05c8ede6896edce37a656
X-Osstest-Versions-That:
    ovmf=b844b106e2a20c709ece1b2b89b2ae0e84a0e401
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 13 Sep 2023 13:08:51 +0000

flight 182996 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182996/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 cdfe4310dda2a30b0ca05c8ede6896edce37a656
baseline version:
 ovmf                 b844b106e2a20c709ece1b2b89b2ae0e84a0e401

Last test of basis   182988  2023-09-13 02:42:26 Z    0 days
Failing since        182990  2023-09-13 06:12:22 Z    0 days    3 attempts
Testing same since   182993  2023-09-13 08:10:41 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Linus Liu <linus.liu@intel.com>
  Nickle Wang <nicklew@nvidia.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   b844b106e2..cdfe4310dd  cdfe4310dda2a30b0ca05c8ede6896edce37a656 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 13:14:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 13:14:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601294.937283 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPhm-0001wL-8m; Wed, 13 Sep 2023 13:14:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601294.937283; Wed, 13 Sep 2023 13:14:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPhm-0001wE-5z; Wed, 13 Sep 2023 13:14:54 +0000
Received: by outflank-mailman (input) for mailman id 601294;
 Wed, 13 Sep 2023 13:14:53 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qgPhl-0001w8-A3
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 13:14:53 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgPhk-0006eY-LD; Wed, 13 Sep 2023 13:14:52 +0000
Received: from [15.248.2.159] (helo=[10.24.67.43])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgPhk-00084O-Eb; Wed, 13 Sep 2023 13:14:52 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=T4mkSz5emr2I51xjB1yvKgAyalcP7Ht/tLdQzFglMlM=; b=Ie+tv1qlYngpWAPEbJ/1LVlTBD
	kHbGksC1kYZ/l2otaa5uhL1MUXvyI0ySBNarpdzQXv5U4GThlKwQoiBYdJYLR46P+lOHY4TlW1bbT
	RGVwXXxlmn9pxSVPurCiiKM3pCQHpmTS9jJMSKn/uFqcH/ZJCSKggBjZbiFJYEUnJVn8=;
Message-ID: <78e45fa1-7273-45f4-bac5-45c4e0772a0d@xen.org>
Date: Wed, 13 Sep 2023 14:14:50 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH] xen/libelf: address violations of MISRA C:2012 RUles
 8.2 and 8.3
Content-Language: en-GB
To: Federico Serafini <federico.serafini@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <e4d28b9b78e84260feea6bdbcb4ecdd815af5db3.1694591513.git.federico.serafini@bugseng.com>
 <9acf798a-9d08-4940-d8e0-20b423294d2e@bugseng.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <9acf798a-9d08-4940-d8e0-20b423294d2e@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 13/09/2023 13:41, Federico Serafini wrote:
> On 13/09/23 14:29, Federico Serafini wrote:
>> Add missing parameter names and make function declarations and
>> definitions consistent. No functional change.
>>
>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> 
> There is a typo in the patch title (RUles), please correct on commit.

That can be done so long there are no other comments.

> 
> Reviewed-by: Federico Serafini <federico.serafini@bugseng.com>

I am bit confused. Why do you provide a reviewed-by on a patch you wrote?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 13:26:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 13:26:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601302.937294 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPt4-00053d-Dh; Wed, 13 Sep 2023 13:26:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601302.937294; Wed, 13 Sep 2023 13:26:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPt4-00053W-9g; Wed, 13 Sep 2023 13:26:34 +0000
Received: by outflank-mailman (input) for mailman id 601302;
 Wed, 13 Sep 2023 13:26:32 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=EPZ8=E5=goodmis.org=rostedt@kernel.org>)
 id 1qgPt2-00053Q-Qa
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 13:26:32 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2649cc88-5239-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 15:26:31 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 12B846192D;
 Wed, 13 Sep 2023 13:26:30 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id DBFCFC433C7;
 Wed, 13 Sep 2023 13:26:27 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2649cc88-5239-11ee-8786-cb3800f73035
Date: Wed, 13 Sep 2023 09:26:46 -0400
From: Steven Rostedt <rostedt@goodmis.org>
To: Juergen Gross <jgross@suse.com>
Cc: linux-kernel@vger.kernel.org, x86@kernel.org,
 virtualization@lists.linux-foundation.org,
 linux-trace-kernel@vger.kernel.org, Ajay Kaher <akaher@vmware.com>, Alexey
 Makhalov <amakhalov@vmware.com>, VMware PV-Drivers Reviewers
 <pv-drivers@vmware.com>, Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar
 <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>, Dave Hansen
 <dave.hansen@linux.intel.com>, "H. Peter Anvin" <hpa@zytor.com>, Boris
 Ostrovsky <boris.ostrovsky@oracle.com>, Masami Hiramatsu
 <mhiramat@kernel.org>, xen-devel@lists.xenproject.org
Subject: Re: [PATCH 2/3] x86/xen: move paravirt lazy code
Message-ID: <20230913092646.5b087871@gandalf.local.home>
In-Reply-To: <20230913113828.18421-3-jgross@suse.com>
References: <20230913113828.18421-1-jgross@suse.com>
	<20230913113828.18421-3-jgross@suse.com>
X-Mailer: Claws Mail 3.19.1 (GTK+ 2.24.33; x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

On Wed, 13 Sep 2023 13:38:27 +0200
Juergen Gross <jgross@suse.com> wrote:

> diff --git a/include/trace/events/xen.h b/include/trace/events/xen.h
> index 44a3f565264d..0577f0cdd231 100644
> --- a/include/trace/events/xen.h
> +++ b/include/trace/events/xen.h
> @@ -6,26 +6,26 @@
>  #define _TRACE_XEN_H
>  
>  #include <linux/tracepoint.h>
> -#include <asm/paravirt_types.h>
> +#include <asm/xen/hypervisor.h>
>  #include <asm/xen/trace_types.h>
>  
>  struct multicall_entry;
>  
>  /* Multicalls */
>  DECLARE_EVENT_CLASS(xen_mc__batch,
> -	    TP_PROTO(enum paravirt_lazy_mode mode),
> +	    TP_PROTO(enum xen_lazy_mode mode),
>  	    TP_ARGS(mode),
>  	    TP_STRUCT__entry(
> -		    __field(enum paravirt_lazy_mode, mode)
> +		    __field(enum xen_lazy_mode, mode)
>  		    ),
>  	    TP_fast_assign(__entry->mode = mode),
>  	    TP_printk("start batch LAZY_%s",
> -		      (__entry->mode == PARAVIRT_LAZY_MMU) ? "MMU" :
> -		      (__entry->mode == PARAVIRT_LAZY_CPU) ? "CPU" : "NONE")
> +		      (__entry->mode == XEN_LAZY_MMU) ? "MMU" :
> +		      (__entry->mode == XEN_LAZY_CPU) ? "CPU" : "NONE")

There's helper functions that make the above easier to implement as well as
exports the symbols so that user space can parse this better:

TRACE_DEFINE_ENUM(XEN_LAZY_NONE);
TRACE_DEFINE_ENUM(XEN_LAZY_MMU);
TRACE_DEFINE_ENUM(XEN_LAZY_CPU);

[..]

  	    TP_printk("start batch LAZY_%s",
		      __print_symbolic(mode,
				       { XEN_LAZY_NONE, "NONE" },
				       { XEN_LAZY_MMU,  "MMU   },
				       { XEN_LAZY_CPU,  "CPU"  }))

Then user space parsers that read the raw data can convert these events
into something humans can read.

-- Steve

>  	);
>  #define DEFINE_XEN_MC_BATCH(name)			\
>  	DEFINE_EVENT(xen_mc__batch, name,		\
> -		TP_PROTO(enum paravirt_lazy_mode mode),	\
> +		TP_PROTO(enum xen_lazy_mode mode),	\
>  		     TP_ARGS(mode))
>  
>  DEFINE_XEN_MC_BATCH(xen_mc_batch);


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 13:27:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 13:27:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601307.937303 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPtv-0005uf-L4; Wed, 13 Sep 2023 13:27:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601307.937303; Wed, 13 Sep 2023 13:27:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPtv-0005uY-IA; Wed, 13 Sep 2023 13:27:27 +0000
Received: by outflank-mailman (input) for mailman id 601307;
 Wed, 13 Sep 2023 13:27:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgPtt-0005uI-QV
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 13:27:25 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20608.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::608])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 469eb0f9-5239-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 15:27:25 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAWPR04MB9816.eurprd04.prod.outlook.com (2603:10a6:102:390::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Wed, 13 Sep
 2023 13:27:21 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 13:27:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 469eb0f9-5239-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FXRK4msRwUY6NWQEnBuQN9hT+zXfqHb+FwPOHZOmZFR17JpV1hUTahxOUuhzMMZ+Hqiw5DlwZO/8W6wpmRDTE2YoU3PdyL3pMALa+ojQFsJdv2rrfN8FN41lCaz2FXZihalrk/m1+/1f/2vf06LXOUS139RDf6yc8F1t9UCxVkGrTSoF5bmO6AMPSfkyAp49+76UbeMupQ+ch4kzsEbf9dKUma6MaP8V9keQNPzF6WD2au8/E8XcLTeaOL+y40HNNdtAzcYKftGY8cj2WdvDZyQZJmmNFY1w7A48PIn/eUyOV7TvAxssWLTYCRA3zbvPW5WpkmPFaZrGsknRV+BmTQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9TNZRgQvr+4DsHfLUgK9M8OPsPc8fdmIgsCjCS6OwqA=;
 b=fVOLvUE2pj4TUvS91YvE46dfrqzyCn3ls0jP98LrMfsJ7dEaiTCnvfskF48f0cHc2Iz3C0S3sqLPnEycOxQwAcou7SLj8kJoKjLWuSs3oCl0pKtqDvPRYbwhgh2PvqbcOUCHUP2a9ph6wq+GLIaL5rkbHPYoGpOd1eV6hpulWR5SXxxslIyWfYHxxPBCVhfzLU3JKETx3bI2ivqAHQOOPl4Wse9ESPVUdwjMcJrpyabCzlq+WpBNoRoH2av0OLkRaPPK5CVwdlOUwFkuUDFlFh+kJ0QZbtsr8DRRgNTmstN/SnbB8NtE05AR/DPZOGm/X2jCqPX/ccEATDdrSt40kQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9TNZRgQvr+4DsHfLUgK9M8OPsPc8fdmIgsCjCS6OwqA=;
 b=pFUfuMEx60Kyihgg396wqsbKqtM73xm9OoeM3x3neCPkGL86ZU3Oj1f2id4A8AZ6DzrCBtdsxsVgJ9GOue8w9HfIEdXQIYhOvOQeyFDtPy/owodXhGT4fE28vnEjZHKVXOmU3HBQ2ooVDrrecreiHJIOrllOo8fih9+TQ1SYo15mDnFpmQ7ettr/vjnKsuLbi2uSAoizYwtA4/CsmYOZiyOSKmmiEO65L7fHF66NsCuOIc8Z4oMlRCf0JKDzduenwmB6RngiXBZqqDYiqA1r/0kHhZj+dCkooDGLXna2bSqaOwQ8ZZLo5rVMaRiastlyMScYvLDHSLu8/qAWkc8+jA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0f79e397-2571-0c26-beb7-b329dbd715b3@suse.com>
Date: Wed, 13 Sep 2023 15:27:18 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, Wei Liu <wl@xen.org>, solene@openbsd.org,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
 <ZQFpr5nIZtRLPNhp@MacBook-MacBook-Pro-de-Roger.local>
 <4b3138ce-8605-6c9b-0cd2-d7dfc8b04b07@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4b3138ce-8605-6c9b-0cd2-d7dfc8b04b07@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0067.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4b::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAWPR04MB9816:EE_
X-MS-Office365-Filtering-Correlation-Id: 546d3b2b-eb0a-4882-4302-08dbb45d28e1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Yueh7cHGZleY260nbp5FSiLXaddr+ylRQy3gTdwK6hW364/vdNOSzqhSS8aUq6BxB3HufGrDYWWElwbASKCZE1aa+R6YxmxIVRWx8Gy1zsAB/AUNO6aaYtuykNhidA1tmn3JMfpyDnkTE/2woH94sUlu/cRkuUejQF8UylPLTxxN12EH03CfW3aebE6/v6p7rYMUh2p8YvJnuERSGuyks4nHh9TfbdPNMT0X/JsTahoxGSCGoC6t2BH4G18p4q8OE0Irdt6aaCn2If242KaMvO5Eo8Fk0/fZbAwk75xZjM9o1Wl9Z60nAjSI8rQW2LQMWDnLUbwWJzAW3/9ZiYHD0Nn1B+vejXife/V9Gd86B5opXOKBbXjYotDpfhQnF94uoCJCFPMrvKYPgJZEi1wg/GlD7ODXW/gzCbHiv62x+pUPrevTHSDMdKqjZ6NfJq03bc0xxEEgovp7R5DG2OG6bREmnBaSg0AxPuEAMTctD49otWXNX89z+RAJlak44s6+DGn1k5NGzSI8qU4VV+0fQ/O+2Yb14ATN+pim9FOX/tY81TtKZ8A9DbePUZCGeQs6vt23PMpUiRABo8YYIkxC9349fY/VXRtYYiIM/dX8ZQe/BMsCSP1YDOTaxy9nj2wjLKVv1TqEu07bRdbGqD3B5A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(136003)(376002)(346002)(39860400002)(451199024)(186009)(1800799009)(38100700002)(83380400001)(8676002)(31686004)(2616005)(5660300002)(54906003)(316002)(66556008)(41300700001)(66476007)(53546011)(6506007)(66946007)(26005)(6486002)(478600001)(4326008)(8936002)(6916009)(2906002)(4744005)(31696002)(36756003)(86362001)(6666004)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SzVvZkwrcmxyK3pyb3lsMDRURk8wMWtaWTI5ZnBzSWhxY0l1d3JMdWdub05H?=
 =?utf-8?B?UGVNSmZsL3NyZUpwSEFoVi8wSnBiempuQmc2anA5M1IxcHZwb2RVQ1dORnZH?=
 =?utf-8?B?SWdGWHBNOWovSUIzTzN2RjViUmJPZHVyNlJ5ZzdpSGMxZVpiYXN6aHZ5bFM3?=
 =?utf-8?B?eFl1OG4yVFYrN0F5YlpzU3lxdlhsSTN3WmJvWFd5SWtCQVIwRW5vLzYwbjJz?=
 =?utf-8?B?cHhoNVJVT3VMcXlxV2RZKzRuYXFXaG1sS0FkREV5dVorTGtISGNleTBMaFRV?=
 =?utf-8?B?bHUxNUVtRlQ0QW41UCthTDNZUzZqUUlGZjFUS2tiMjMvSFhKRDViZ1hhY2xm?=
 =?utf-8?B?MXJaRmZGTThDZmlDNUIyR0JpMHhMakl2RWhETUNRVlk0RXFlOHVCL3B1a0Uv?=
 =?utf-8?B?WUZLbWJRbmVvSzlwTVdrdHhpWFVPTHJvUS9IanB0ZXRrSVU4RVRDb1BRWWgz?=
 =?utf-8?B?eVpJTEVFWkJjQ3d1Vyt2QXl6MUxtRXR3c295MFJoZk13YkZ2YVNwTDQrSzhI?=
 =?utf-8?B?T09iazdzcHovMXVCbzJmY0dOZThYRWxxU3lRbmV0WlVMVkJUdFdRSGYwS0FX?=
 =?utf-8?B?SWRPY3lISkt5d0w3ajR1QldMVEFhODh4amwxdU5ra3piY1AvNFQrY0pDcVlG?=
 =?utf-8?B?blRsQXdXblN5VDYrZU53YVhtcVNndkhQcU9od2JUaGNWWlBjVXJpdEpKQW1Y?=
 =?utf-8?B?UktjT0ZTZjVrN1RXd2NWOFRjUjU2R01TMWpCcERPNk5ET25TLzROODZ4cWJW?=
 =?utf-8?B?UUkyVDc4bnVIQmNTT2JYdDRRVzl5ZVRXQ3FFL0VPTERwMWJwK2VQcTRGa0Np?=
 =?utf-8?B?WmNxVU81THJEQStCN0tieU1mQmpFR1BRM2N1YnlxT2FLQnNZVVRjQkFYNGEr?=
 =?utf-8?B?T21BNmJGOVVvRWdvYndvdk8yeURRRzFOZktsclBldlM4ejJWWkNNc0pPaUM3?=
 =?utf-8?B?N01WUEhTTElSb1E3K2pwekR0L08zWXk3cm9kTWNTL2lablVyU1QvV1orSXFv?=
 =?utf-8?B?bVVaS0lpUGVYT2MvbmlmaVZ2SEltcHVrNUlsK2VnbWcyT3B0L0ZEd3VDK2Y4?=
 =?utf-8?B?clZYTUFyVUViUkpwTWZ6Vkd3QTUzVzZZYW4wWnRhamFvUm9PdXNCb0w1dVJx?=
 =?utf-8?B?a0tmRVd1dkd6VmxEdmFXRjFqSGdQWElnTENLTTh2cVkwTmJMaG8vL0Q3Y1hR?=
 =?utf-8?B?RUYyVzRmSUZFU2p5dnhLZ1VJd3FGUVFvSVpjVXlncU93NUdKeUwrYnhxVkpB?=
 =?utf-8?B?QjExa0IyWXl4QW9PaDBpeEJGKytoZThqSU9TbnZtYmVZZldmTStkWU1YTjVI?=
 =?utf-8?B?bFNMSVF5QmMzV3gzK3JmYWdIRVVVWVZTeG4wTGdqL1dyNXl2NWd0OVc4QnJI?=
 =?utf-8?B?aExzV090RTR2cnNIRVVGRkt0disxUnZGdG1jZE9GYll3cVlKTERFQXhlNm1W?=
 =?utf-8?B?eHlkYzhmazNrUWlYVk5hSHI0dFlkdmdHQUp4azh4QnBKbkl3R2NpYmpBOGU1?=
 =?utf-8?B?K3pwZUJzME43VVNnUXpUSStRVHA1RW1xc1FXdFNFMzkvVEppVzRGdmpjNHV1?=
 =?utf-8?B?OU1vd2V2VmtDWGR5NGV6bUp1Y3BjVGE5ekw4OXl2dTF5VjBvMnBIN3RMRVNZ?=
 =?utf-8?B?QjBtVnFvUjcxTWNnRWRQR2tSMlk5SVcwOHFiMk5Dcm5HaGYvMm5jRERoMVd5?=
 =?utf-8?B?eHFXVVdudlU2bTl6ZVVOcmxOSFFKY2NnaWRjK3drc3cxR2NHM1dsbG1FdXhz?=
 =?utf-8?B?RTVsV29yUUFrVXkxdGVocXMvN0VEcmdkSHh2M0VETHZxTW5QSjlTU2Y5NFM0?=
 =?utf-8?B?ZFNIWHZMQ2dzWXFoWEJMeEQ0WTNWQ0pSSkJYRCszeERVU3Q2R3lsUGJuUEFZ?=
 =?utf-8?B?NTd2dEh4ZFQrYkxKek5nMDJLTEpJUSsxSWdVM3hubi8vdDNjZzR5TFpGS2lE?=
 =?utf-8?B?M3VzZEpwWFVtTFE2MlIwanZWN2lMeVVPR0M2S3c5bmpjbzZWQitad0YrdXJm?=
 =?utf-8?B?ak1KVk9OblhpZkIrUkNuNE9IbmF4bFhIR2xQZ0FoeFg4QzVqNDA2MWVlTklS?=
 =?utf-8?B?WnRwYStoR0ZOS3RWNWhZUXRDZ3MyR2RKUHA5ZWllenNNeGhOeWRuaDFwN28v?=
 =?utf-8?Q?RUSEEOuc81O04s+ckIRDIlSNf?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 546d3b2b-eb0a-4882-4302-08dbb45d28e1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 13:27:21.5296
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: EG0wtdeBU+4SBkXZDE5M5PJ1bttq9b8d/stgzZjNfki9jO0UlBRVs4T6SHre3GL1sDIFuBqmjgxnrQ93zHhCuw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9816

On 13.09.2023 12:50, Andrew Cooper wrote:
> On 13/09/2023 8:50 am, Roger Pau Monné wrote:
>> Hm, there's no written down note that TSC_FREQ_SEL implies PSTATE0 to
>> be available (and PSTATE0 is not an architectural MSR), but I can see
>> how a guest can expect to fetch the P0 frequency if it sees
>> TSC_FREQ_SEL.
> 
> The PPR is a reference of mostly autogenerated details and misc notes,
> put together in a non- hand-write way, unlike the older BKWGs.
> 
> Lots of the information elided from public and partner-NDA versions is
> "see TICKET/LINK for rational" type comments.
> 
> It is not a spec - it is a reference (the clue is even in the name)
> aimed at people already familiar with the area.  Do not fall into the
> trap of thinking it it can be read as a spec.

But then where is it written down that the bit set implies the PSTATEn
MSRs to exist?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 13:31:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 13:31:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601314.937314 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPxg-0007OP-57; Wed, 13 Sep 2023 13:31:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601314.937314; Wed, 13 Sep 2023 13:31:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgPxg-0007OI-1w; Wed, 13 Sep 2023 13:31:20 +0000
Received: by outflank-mailman (input) for mailman id 601314;
 Wed, 13 Sep 2023 13:31:19 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eUH4=E5=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qgPxf-0007O9-Aw
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 13:31:19 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20617.outbound.protection.outlook.com
 [2a01:111:f400:7e89::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cebe9a5f-5239-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 15:31:14 +0200 (CEST)
Received: from SN6PR2101CA0015.namprd21.prod.outlook.com
 (2603:10b6:805:106::25) by MW4PR12MB7482.namprd12.prod.outlook.com
 (2603:10b6:303:212::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 13:31:10 +0000
Received: from SN1PEPF0002636B.namprd02.prod.outlook.com
 (2603:10b6:805:106:cafe::6) by SN6PR2101CA0015.outlook.office365.com
 (2603:10b6:805:106::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.5 via Frontend
 Transport; Wed, 13 Sep 2023 13:31:10 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 SN1PEPF0002636B.mail.protection.outlook.com (10.167.241.136) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Wed, 13 Sep 2023 13:31:10 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 08:31:08 -0500
Received: from [172.22.247.28] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 13 Sep 2023 08:31:07 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cebe9a5f-5239-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jWnVhJspG86GDz6ryQ1atlWLaUaCsjywyhwcOR+jxmWeO5FnXYzHeqpJzYKPaECJHjNgxFFzoAlIwFgjyEUcjlMqS5DE65NFePb5+q7y9gjL8hmZKRif4AwB9xiJ2YHPZxIAojfAyr+t5xQSUqwlpNssiZ5iq3mOmcGp773MnT+87oPQVU/fXJWqVqd4ohQATI+T0TVisdvzhy2iWS/q3GGlON8SLbByUGx3Gc4OoezA9iF1isiMn9beUfIYVPkt/uQHfnOOr/1xFemvqTrb/TsUFyw/00x8SwMRn5482rxSwVU4Vli3m7TAa5ntV+caXJobuKWQVB01VGHg4SldCA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HS7Tx0a0EzzAaYBcPzCz5djOD/Bqilx8H5ofIMYXJ/4=;
 b=ZpBPlWgLu824JL/mI9UBmQH4chmoj6K2g89VDjWL6MfE0bjXP+TpXmJhojH3APXEpTWPcVPTDENP6BJJaw4UohsHZNJhQYgQBj1Cfb4xZy2dwvSlESm89+lkAGRcv2wQ4G3ES6wqa9wWFqHtffTofOPJkqeAuq8FwXuOlfM57VaQWt4d4rRP7T3+gtQWXnhv+0iYoRqe2OXFEOr8CFPSubBsVDu4/bYqc8IFwYjM8VeSPvCkRZ1pKWZ6nAcIGu7AGifrrBayy6F+yoasQLFJ90jIFmTAdrJakaIHV91WQGSIRpyqb1dwneNvcf12QfkBYP+7noX5W5YHyUhtK0K7gQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HS7Tx0a0EzzAaYBcPzCz5djOD/Bqilx8H5ofIMYXJ/4=;
 b=rVd8OM1SaYiHfUVHKkh9ebwKZVNWbky60aFOoH3l+P5mfQCZKUEpzkhLRF7jNvBvLCDT86dr2Eq3eQuNqrAZqoOnPREUpfu5kUU3Hy06yiVh9bgXn9GpEiA7BSGZvgyCGcRinufpISj6a0q00Ovmt99QYDIEBl0BY8rY7QFuPgg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <2d0f5df6-d5bb-a31d-94d3-33bb1fe8665d@amd.com>
Date: Wed, 13 Sep 2023 09:31:08 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [ImageBuilder PATCH v2] uboot-script-gen: use size from arm64
 Image header
To: Michal Orzel <michal.orzel@amd.com>, <xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>
References: <20230912204345.7271-1-stewart.hildebrand@amd.com>
 <98187155-3263-6197-ddb3-07cf9b883264@amd.com>
Content-Language: en-US
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <98187155-3263-6197-ddb3-07cf9b883264@amd.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002636B:EE_|MW4PR12MB7482:EE_
X-MS-Office365-Filtering-Correlation-Id: 7ac7beaf-4593-4837-e006-08dbb45db145
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YdMeZitJinKCSZchhrd7blLpnqU/BtTw+dxE/JMgp0j/Vp9gyYuPrSJ5jPhgNkK3EMZpImAWKaExJ6z7xbo5FV6eqFkhiRD/bXOn9SFIgrCXiwXadPbsC1gc4EsFILNaECwYWtvfV7y+Dh/tYLTEPZjTlkeaz67JGebtYi8fIWuRWnoHtlhbmE6OvOcXp/q011jpHJzgc6pJhmpjz43CWkQVWIUsGjm3M9Bhz7LbVP6tBIPQPklCliMi9ZaHYBTjVP4tKsUVyQOjK+85XtiN0Q0qaTpK7VcSdTRIuNfbBsl796tsUx5O51IAl7ZFzqHhjS9omI5oxxbgh70HEHCOdfIlin5UncUIzo9KQraytotjVzQAMqY7NB5HlAeNBCg4LIyI+y1rjN4skdRbGvPkTu0HMZXyb52z1zKvzc/N8q4Y1JTRna3sz8vaBnxrDAvdSjlLG3ZW0RmDCOmUNuSAu0S/6/5kyJbdNzwOToDbZ+1IMFVLbBahMpcjmn2e3F+YdIVNJhGjc4qTf0syKhJdu3jbZlW1oCuc6yNYqmok5UpO2P2V+bNbIadcRvFV/5PK87RzbA3S4qqrn+Yu8t3m8t/eKhnm1cXyopAotUtSUQXF28xxkTXanFinPM+AXtYusdmlOSdkn4/5pTZyPoIwM30E4B/OfhHeSGgk40DUH4dUtefE17XJEnbD4wq3J4DoqjbWRlcH1ny5WQse8YbEECpyTkWhsoyIU1zfMn/6l3X7EMZ56+DSvETEaNgUwG/Z7YIBdvXp7UcKQpKD91aQaalgmouJGI9mZbYRUsuoIKY=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(396003)(346002)(376002)(186009)(451199024)(82310400011)(1800799009)(36840700001)(46966006)(40470700004)(53546011)(82740400003)(26005)(40480700001)(81166007)(356005)(110136005)(70586007)(478600001)(31696002)(36860700001)(70206006)(426003)(83380400001)(47076005)(86362001)(336012)(2616005)(40460700003)(44832011)(5660300002)(8936002)(8676002)(16576012)(316002)(41300700001)(36756003)(4326008)(2906002)(31686004)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 13:31:10.1536
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7ac7beaf-4593-4837-e006-08dbb45db145
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002636B.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB7482

On 9/13/23 03:27, Michal Orzel wrote:
> Hi Stewart,
> 
> On 12/09/2023 22:43, Stewart Hildebrand wrote:
>> There is a corner case where the filesizes of the xen and Linux kernel images
>> are not sufficient. These binaries likely contain NOLOAD sections (e.g. bss),
>> which are not accounted in the filesize.
>>
>> Check for the presence of an arm64 kernel image header, and get the effective
>> image size from the header. Use the effective image size for calculating the
>> next load address and for populating the size in the /chosen/dom*/reg property.
>>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> The patch works, thanks!
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>
> 
> with one little suggestion...
> 
>> ---
>> v1->v2:
>> * add in-code comments
>> * use variables more
>> ---
>>  scripts/uboot-script-gen | 17 ++++++++++++++++-
>>  1 file changed, 16 insertions(+), 1 deletion(-)
>>
>> diff --git a/scripts/uboot-script-gen b/scripts/uboot-script-gen
>> index 9656a458ac00..f0972d983017 100755
>> --- a/scripts/uboot-script-gen
>> +++ b/scripts/uboot-script-gen
>> @@ -2,7 +2,7 @@
>>  
>>  offset=$((2*1024*1024))
>>  filesize=0
>> -prog_req=(mkimage file fdtput mktemp awk)
>> +prog_req=(mkimage file fdtput mktemp awk od)
>>  
>>  function cleanup_and_return_err()
>>  {
>> @@ -435,6 +435,21 @@ function add_size()
>>  {
>>      local filename=$1
>>      local size=`stat -L --printf="%s" $filename`
>> +    # Read arm64 header magic (https://www.kernel.org/doc/Documentation/arm64/booting.txt)
>> +    local arm64_header_magic=$(od -j 56 -N 4 -t x4 ${filename} | head -n 1 | awk -F' ' '{ print $2 }')
> can we simplify:
> head -n 1 | awk -F' ' '{ print $2 }'
> by just doing:
> awk 'NR==1 {print $2}'

Yes. I'll send v3.

Stew


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 13:36:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 13:36:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601319.937324 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQ2V-00080h-O0; Wed, 13 Sep 2023 13:36:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601319.937324; Wed, 13 Sep 2023 13:36:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQ2V-00080a-KM; Wed, 13 Sep 2023 13:36:19 +0000
Received: by outflank-mailman (input) for mailman id 601319;
 Wed, 13 Sep 2023 13:36:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xOkN=E5=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qgQ2V-00080R-5N
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 13:36:19 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8490404b-523a-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 15:36:18 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 55EB31F390;
 Wed, 13 Sep 2023 13:36:17 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id D91D213582;
 Wed, 13 Sep 2023 13:36:16 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id 0iCBM9C6AWWQSQAAMHmgww
 (envelope-from <jgross@suse.com>); Wed, 13 Sep 2023 13:36:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8490404b-523a-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1694612177; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=UywHEU8QyoCqHjUnzK/CvHTIBTQyCYwKzGAzGPzzAE0=;
	b=cl7jBSeE24GPUS2/Vjr7pxE1l1HhpqeodkSawIn7AnAkMspK/ZTYF31KKdzOw8gASwtfDv
	2hGyheExp2r/xfN9WNKn6KatUx3hUvd7T886Tskdr9kmUEmbUEdbH6V00kafwkSeR4YsQG
	m/o1jLoL3EthBv+bwyu6pOgVjCE8Kro=
Message-ID: <a9c40219-2d35-4b2c-9150-12386b53bad7@suse.com>
Date: Wed, 13 Sep 2023 15:36:16 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 2/3] x86/xen: move paravirt lazy code
To: Steven Rostedt <rostedt@goodmis.org>
Cc: linux-kernel@vger.kernel.org, x86@kernel.org,
 virtualization@lists.linux-foundation.org,
 linux-trace-kernel@vger.kernel.org, Ajay Kaher <akaher@vmware.com>,
 Alexey Makhalov <amakhalov@vmware.com>,
 VMware PV-Drivers Reviewers <pv-drivers@vmware.com>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, Dave Hansen <dave.hansen@linux.intel.com>,
 "H. Peter Anvin" <hpa@zytor.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Masami Hiramatsu <mhiramat@kernel.org>, xen-devel@lists.xenproject.org
References: <20230913113828.18421-1-jgross@suse.com>
 <20230913113828.18421-3-jgross@suse.com>
 <20230913092646.5b087871@gandalf.local.home>
Content-Language: en-US
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <20230913092646.5b087871@gandalf.local.home>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------3pzlhP0KJw5LafdvvkkTAoFS"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------3pzlhP0KJw5LafdvvkkTAoFS
Content-Type: multipart/mixed; boundary="------------Qn0U9WdgquTmsv08sK3l9avh";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: linux-kernel@vger.kernel.org, x86@kernel.org,
 virtualization@lists.linux-foundation.org,
 linux-trace-kernel@vger.kernel.org, Ajay Kaher <akaher@vmware.com>,
 Alexey Makhalov <amakhalov@vmware.com>,
 VMware PV-Drivers Reviewers <pv-drivers@vmware.com>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, Dave Hansen <dave.hansen@linux.intel.com>,
 "H. Peter Anvin" <hpa@zytor.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Masami Hiramatsu <mhiramat@kernel.org>, xen-devel@lists.xenproject.org
Message-ID: <a9c40219-2d35-4b2c-9150-12386b53bad7@suse.com>
Subject: Re: [PATCH 2/3] x86/xen: move paravirt lazy code
References: <20230913113828.18421-1-jgross@suse.com>
 <20230913113828.18421-3-jgross@suse.com>
 <20230913092646.5b087871@gandalf.local.home>
In-Reply-To: <20230913092646.5b087871@gandalf.local.home>

--------------Qn0U9WdgquTmsv08sK3l9avh
Content-Type: multipart/mixed; boundary="------------m7XwnswAohYEw97MOxfAzYFf"

--------------m7XwnswAohYEw97MOxfAzYFf
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTMuMDkuMjMgMTU6MjYsIFN0ZXZlbiBSb3N0ZWR0IHdyb3RlOg0KPiBPbiBXZWQsIDEz
IFNlcCAyMDIzIDEzOjM4OjI3ICswMjAwDQo+IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNl
LmNvbT4gd3JvdGU6DQo+IA0KPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdHJhY2UvZXZlbnRz
L3hlbi5oIGIvaW5jbHVkZS90cmFjZS9ldmVudHMveGVuLmgNCj4+IGluZGV4IDQ0YTNmNTY1
MjY0ZC4uMDU3N2YwY2RkMjMxIDEwMDY0NA0KPj4gLS0tIGEvaW5jbHVkZS90cmFjZS9ldmVu
dHMveGVuLmgNCj4+ICsrKyBiL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3hlbi5oDQo+PiBAQCAt
NiwyNiArNiwyNiBAQA0KPj4gICAjZGVmaW5lIF9UUkFDRV9YRU5fSA0KPj4gICANCj4+ICAg
I2luY2x1ZGUgPGxpbnV4L3RyYWNlcG9pbnQuaD4NCj4+IC0jaW5jbHVkZSA8YXNtL3BhcmF2
aXJ0X3R5cGVzLmg+DQo+PiArI2luY2x1ZGUgPGFzbS94ZW4vaHlwZXJ2aXNvci5oPg0KPj4g
ICAjaW5jbHVkZSA8YXNtL3hlbi90cmFjZV90eXBlcy5oPg0KPj4gICANCj4+ICAgc3RydWN0
IG11bHRpY2FsbF9lbnRyeTsNCj4+ICAgDQo+PiAgIC8qIE11bHRpY2FsbHMgKi8NCj4+ICAg
REVDTEFSRV9FVkVOVF9DTEFTUyh4ZW5fbWNfX2JhdGNoLA0KPj4gLQkgICAgVFBfUFJPVE8o
ZW51bSBwYXJhdmlydF9sYXp5X21vZGUgbW9kZSksDQo+PiArCSAgICBUUF9QUk9UTyhlbnVt
IHhlbl9sYXp5X21vZGUgbW9kZSksDQo+PiAgIAkgICAgVFBfQVJHUyhtb2RlKSwNCj4+ICAg
CSAgICBUUF9TVFJVQ1RfX2VudHJ5KA0KPj4gLQkJICAgIF9fZmllbGQoZW51bSBwYXJhdmly
dF9sYXp5X21vZGUsIG1vZGUpDQo+PiArCQkgICAgX19maWVsZChlbnVtIHhlbl9sYXp5X21v
ZGUsIG1vZGUpDQo+PiAgIAkJICAgICksDQo+PiAgIAkgICAgVFBfZmFzdF9hc3NpZ24oX19l
bnRyeS0+bW9kZSA9IG1vZGUpLA0KPj4gICAJICAgIFRQX3ByaW50aygic3RhcnQgYmF0Y2gg
TEFaWV8lcyIsDQo+PiAtCQkgICAgICAoX19lbnRyeS0+bW9kZSA9PSBQQVJBVklSVF9MQVpZ
X01NVSkgPyAiTU1VIiA6DQo+PiAtCQkgICAgICAoX19lbnRyeS0+bW9kZSA9PSBQQVJBVklS
VF9MQVpZX0NQVSkgPyAiQ1BVIiA6ICJOT05FIikNCj4+ICsJCSAgICAgIChfX2VudHJ5LT5t
b2RlID09IFhFTl9MQVpZX01NVSkgPyAiTU1VIiA6DQo+PiArCQkgICAgICAoX19lbnRyeS0+
bW9kZSA9PSBYRU5fTEFaWV9DUFUpID8gIkNQVSIgOiAiTk9ORSIpDQo+IA0KPiBUaGVyZSdz
IGhlbHBlciBmdW5jdGlvbnMgdGhhdCBtYWtlIHRoZSBhYm92ZSBlYXNpZXIgdG8gaW1wbGVt
ZW50IGFzIHdlbGwgYXMNCj4gZXhwb3J0cyB0aGUgc3ltYm9scyBzbyB0aGF0IHVzZXIgc3Bh
Y2UgY2FuIHBhcnNlIHRoaXMgYmV0dGVyOg0KPiANCj4gVFJBQ0VfREVGSU5FX0VOVU0oWEVO
X0xBWllfTk9ORSk7DQo+IFRSQUNFX0RFRklORV9FTlVNKFhFTl9MQVpZX01NVSk7DQo+IFRS
QUNFX0RFRklORV9FTlVNKFhFTl9MQVpZX0NQVSk7DQo+IA0KPiBbLi5dDQo+IA0KPiAgICAJ
ICAgIFRQX3ByaW50aygic3RhcnQgYmF0Y2ggTEFaWV8lcyIsDQo+IAkJICAgICAgX19wcmlu
dF9zeW1ib2xpYyhtb2RlLA0KPiAJCQkJICAgICAgIHsgWEVOX0xBWllfTk9ORSwgIk5PTkUi
IH0sDQo+IAkJCQkgICAgICAgeyBYRU5fTEFaWV9NTVUsICAiTU1VICAgfSwNCj4gCQkJCSAg
ICAgICB7IFhFTl9MQVpZX0NQVSwgICJDUFUiICB9KSkNCj4gDQo+IFRoZW4gdXNlciBzcGFj
ZSBwYXJzZXJzIHRoYXQgcmVhZCB0aGUgcmF3IGRhdGEgY2FuIGNvbnZlcnQgdGhlc2UgZXZl
bnRzDQo+IGludG8gc29tZXRoaW5nIGh1bWFucyBjYW4gcmVhZC4NCg0KVGhhbmtzLiBJJ2xs
IGFkZCB0aGF0IHRvIGFub3RoZXIgcGF0Y2ggSSdtIGp1c3Qgd3JpdGluZyBmb3IgY2xlYW5p
bmcgdXANCmluY2x1ZGUvdHJhY2UvZXZlbnRzL3hlbi5oIChzb21lIGRlZmluZWQgdHJhY2Ug
ZXZlbnRzIGFyZSBubyBsb25nZXIgdXNlZCkuDQoNCg0KSnVlcmdlbg0K
--------------m7XwnswAohYEw97MOxfAzYFf
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------m7XwnswAohYEw97MOxfAzYFf--

--------------Qn0U9WdgquTmsv08sK3l9avh--

--------------3pzlhP0KJw5LafdvvkkTAoFS
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUButAFAwAAAAAACgkQsN6d1ii/Ey8v
9AgAlOID708UmZj3K8hkqk6Pm9kbMOEhaTrQu1GKIcZaRDZScorxEdikvXWrlXRk3uEcxmt5iTom
px5TsHW874CxMXY14HFFsBSpMdw4JX65JfDHZuyBCpIEHhKWj7+6jGw1nDy25f+z+XuNMkwhmQNC
EKKsdtOrwLez9COjqgjkyc/y0W20IMKlbjsu2k+akXIBHoOs3FbOf8xpgYX1M7x8J8LyrQYKVFqT
HSjZ0YdF3dqif9Sts8QgsAjd+XF1SJI/mjspAhR5nJjnoeCNse+5VdTwjw2uJpHYrkqyEIuAbzdO
tQi+5vYlGoZIFmqnvFjKS23PXSg0mXHCMGDsDm5FlQ==
=kAEO
-----END PGP SIGNATURE-----

--------------3pzlhP0KJw5LafdvvkkTAoFS--


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 13:36:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 13:36:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601322.937334 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQ2s-0008Uw-3r; Wed, 13 Sep 2023 13:36:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601322.937334; Wed, 13 Sep 2023 13:36:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQ2s-0008Up-0k; Wed, 13 Sep 2023 13:36:42 +0000
Received: by outflank-mailman (input) for mailman id 601322;
 Wed, 13 Sep 2023 13:36:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PyFF=E5=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qgQ2q-00080R-NU
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 13:36:40 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on20618.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::618])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 908fb9a0-523a-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 15:36:39 +0200 (CEST)
Received: from SJ0P220CA0012.NAMP220.PROD.OUTLOOK.COM (2603:10b6:a03:41b::24)
 by LV2PR12MB5728.namprd12.prod.outlook.com (2603:10b6:408:17c::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Wed, 13 Sep
 2023 13:36:34 +0000
Received: from SN1PEPF0002BA4B.namprd03.prod.outlook.com
 (2603:10b6:a03:41b:cafe::2a) by SJ0P220CA0012.outlook.office365.com
 (2603:10b6:a03:41b::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19 via Frontend
 Transport; Wed, 13 Sep 2023 13:36:33 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF0002BA4B.mail.protection.outlook.com (10.167.242.68) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Wed, 13 Sep 2023 13:36:32 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 08:36:31 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 08:36:27 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 13 Sep 2023 08:36:26 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 908fb9a0-523a-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mFK+qv8ZtoyLiWmVwRdYGaEJgM17z5dqB+oDHkGq9K8UK9n2Ed/AiYd8c6/tAgxQcKDwwZIb5NtofwGVr7KtYO57+Q0BxUafyfNVulCwDU+5LnxtLN5s0AfHfF2IncBjcpep3xdzAQxDzkKSuYODoMl/+lce5i2Ax//Atu9kaePNxKFJkyut5KguLldi5v4misY2bpnEu93F+J82+DOkkQN9lLtht4cvu9ICj/B5LmNXkbJQYNS98EsmvXb/BqevofyrKu0E2OTzzvGlDKNVjNxKKX9Z1taB4MsB3vrpRMdiSFnr0puO9aEg5DvhsUd8QJazUvxKr6z1OcBPaq+mMA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=d5dYe2H+xWSbIMkmTT7oWuL4uPScGFRTG23ethSVjfs=;
 b=jTvrtR2+LQ+pw1V0GDJTdaboeIewmT+Z4ucubLZCIOr09YYRE+MIHe6PTdDmIv/sPcAlIUvsWrzh20PVQl6myghHVDPpr6OwGt9jGQYFLcpdqqOdJrSLqFPKcrdtW6nu9DRCze20c7mfWR5bvg6JEj2j6ujYaeccOB124rzuPrUancR0+WZHOe3q1+Dqmey5UJERJlJAplIMaDDbiPXUYbRNuxomVoOu0EwskxzWSotFw0t20Wsn9+8OVGxsCLck6ts8GamtdbwKkUkSD/AYAbBQGsGT0YrOrfUm+4zofjDd1l+wGYedzmM4swZ9tYO3f2q/a9fsgIvviHSVohjg2Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=d5dYe2H+xWSbIMkmTT7oWuL4uPScGFRTG23ethSVjfs=;
 b=EtOB3RlDjINdgPq7qMfhdAtpHOoaJt+j4m8MoKOAtBHUpgNOxtwpeGX1osAGJTiIKvy4WYFfKb2/B9iRcuaKqIba2a9vAltUq2ook5oDnndGuKJJLV+zCkE265U/zKwnucxLwJ/YZFY0ujvEZtS9x4I1SSKBHAr/rcSflEjJiFo=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <5c8e2dcb-a341-4d9b-c23a-0c4f659ee3d2@amd.com>
Date: Wed, 13 Sep 2023 15:36:25 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [ImageBuilder PATCH v2] uboot-script-gen: use size from arm64
 Image header
Content-Language: en-US
To: Stewart Hildebrand <stewart.hildebrand@amd.com>,
	<xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>
References: <20230912204345.7271-1-stewart.hildebrand@amd.com>
 <98187155-3263-6197-ddb3-07cf9b883264@amd.com>
 <2d0f5df6-d5bb-a31d-94d3-33bb1fe8665d@amd.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <2d0f5df6-d5bb-a31d-94d3-33bb1fe8665d@amd.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002BA4B:EE_|LV2PR12MB5728:EE_
X-MS-Office365-Filtering-Correlation-Id: 41d6864f-c032-46f8-8aa1-08dbb45e7171
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mbdNCGAut+Oh8hZ5zauBT1YyFczjwnG5iYA6iMoYQT8/UXPybk9vRtwPokQk/W037c1PJphQ4ItdqCTxFGQkASTftk1mQoze/PBmSdXNRAplOj1gqUXWiKyovOYCa17V2L/NEfV6yYlm8azZd2NCygbScOdD+MA/YlH3lN/ct3JZnqGjC7CEIZ/hD2Vv0VU0lwMwGn9PB6Iy4KCAVA11OdCjqg6MatFsDwjVOPvmW4z1BxbVhPDh5LpxRZCjQZYlRSXkiWCa1kn5worXWXIaAsuJuFu8hTfQLKBm/tVaFwnkBgZ0lpvqxH23nWd3dVP0AAW3W+i+wR+SBg1KKoEqmTkHaPp8o6DjwjHnDIdBG9lplWbiNcDRg/FGWibJyJ+9gJ36chfWJRnudvjgLG04uE+MI40r4vPH0H1RAdK0KyzpXCqL5UYz7XVXUfaYjX7zMYt3JaB8l1YO6aG12VL26jqpXv41W1aXap+1//gkB7Dkb4UarFVndEa493iHBSFg33JWTt8Xqe7tr7Z5IwkwLPbsspnF2qsIVT5R3ywSf1zTe63Z4iWEjIZ/cn20KDFcTKaP6IR8Znsyp8kGJCrJyP0Y7B5sMyHeWebHrL88cJz1oJcDjwXU8eUFm+aYn49Iknn2Ugj17gVpEIgH4hRyWV8Q1KC6vxGK/gQpf/b1h2VGhoxkX7TFdhdtD/QBezCqlyXHzgf2kMqpZ5eOTuDf2ny1HGF8Jws9YGrtSRlP2PoUjYdbo/VHcBtaztNXQSWLmggSJ6DhEbn9mmiSJ9GZc0de4m2hXjgEnjNEqJN8M98=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(39860400002)(396003)(136003)(82310400011)(186009)(451199024)(1800799009)(36840700001)(40470700004)(46966006)(40460700003)(53546011)(83380400001)(86362001)(82740400003)(356005)(81166007)(31696002)(47076005)(36756003)(2616005)(36860700001)(336012)(426003)(40480700001)(26005)(31686004)(70586007)(16576012)(41300700001)(316002)(4326008)(8676002)(70206006)(110136005)(44832011)(478600001)(5660300002)(2906002)(8936002)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 13:36:32.5624
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 41d6864f-c032-46f8-8aa1-08dbb45e7171
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002BA4B.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV2PR12MB5728

Hi Stewart,

On 13/09/2023 15:31, Stewart Hildebrand wrote:
> On 9/13/23 03:27, Michal Orzel wrote:
>> Hi Stewart,
>>
>> On 12/09/2023 22:43, Stewart Hildebrand wrote:
>>> There is a corner case where the filesizes of the xen and Linux kernel images
>>> are not sufficient. These binaries likely contain NOLOAD sections (e.g. bss),
>>> which are not accounted in the filesize.
>>>
>>> Check for the presence of an arm64 kernel image header, and get the effective
>>> image size from the header. Use the effective image size for calculating the
>>> next load address and for populating the size in the /chosen/dom*/reg property.
>>>
>>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>> The patch works, thanks!
>> Reviewed-by: Michal Orzel <michal.orzel@amd.com>
>>
>> with one little suggestion...
>>
>>> ---
>>> v1->v2:
>>> * add in-code comments
>>> * use variables more
>>> ---
>>>  scripts/uboot-script-gen | 17 ++++++++++++++++-
>>>  1 file changed, 16 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/scripts/uboot-script-gen b/scripts/uboot-script-gen
>>> index 9656a458ac00..f0972d983017 100755
>>> --- a/scripts/uboot-script-gen
>>> +++ b/scripts/uboot-script-gen
>>> @@ -2,7 +2,7 @@
>>>  
>>>  offset=$((2*1024*1024))
>>>  filesize=0
>>> -prog_req=(mkimage file fdtput mktemp awk)
>>> +prog_req=(mkimage file fdtput mktemp awk od)
>>>  
>>>  function cleanup_and_return_err()
>>>  {
>>> @@ -435,6 +435,21 @@ function add_size()
>>>  {
>>>      local filename=$1
>>>      local size=`stat -L --printf="%s" $filename`
>>> +    # Read arm64 header magic (https://www.kernel.org/doc/Documentation/arm64/booting.txt)
>>> +    local arm64_header_magic=$(od -j 56 -N 4 -t x4 ${filename} | head -n 1 | awk -F' ' '{ print $2 }')
>> can we simplify:
>> head -n 1 | awk -F' ' '{ print $2 }'
>> by just doing:
>> awk 'NR==1 {print $2}'
> 
> Yes. I'll send v3.
I think it can be done on commit, so please check with Stefano.

~Michal


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 13:37:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 13:37:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601331.937344 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQ3t-0000wG-DH; Wed, 13 Sep 2023 13:37:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601331.937344; Wed, 13 Sep 2023 13:37:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQ3t-0000w9-A7; Wed, 13 Sep 2023 13:37:45 +0000
Received: by outflank-mailman (input) for mailman id 601331;
 Wed, 13 Sep 2023 13:37:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=qJrE=E5=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgQ3s-0008TF-Cm
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 13:37:44 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0606.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::606])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b6d70727-523a-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 15:37:42 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7525.eurprd04.prod.outlook.com (2603:10a6:20b:29b::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Wed, 13 Sep
 2023 13:37:40 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 13:37:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b6d70727-523a-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iNgPffM/2Cf7h+CAXfM6JRocnn2eNYvfVvdBIKeaJb1LBPdxpUNIG/uXQ3N482SNNX12+yFEGMEerl0TNY/8pGnBQqjEwCAQLM14p/6ZcJIIURpi4YGs+6OoMP/KFOOxT9b1/O0YXou3KWrZixcdoLbR6dXuhccJRJ4Mu0jgDgiIeU0mIoaRww+txw/ksOF2/aIvBGnQxLvAKoAXHZK5uyZcGniKLrZhdIfJycW/ajJGNN4jNdaMDIi18HlZuCNGLV1n040mystNcxXMndeMHJzB2z/h7cbPeZ7yTRxjxSXR5kblkYfp4Q/SlmO7s9vhLgv/3cF/GHagaz2qXtC9vw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZA7t/E9t/cNfydu1d7GFtNZQutZdcGQqfpHO+wJT5F8=;
 b=adfUZNSfh1FVMiT2GTSjZ4tyfIxV2ARlLyvRaaOPOptYTQsW1PXXpqBmm38HJ7HOmcr8VsjrBN1iwjlt35vu4HAU3GVA2zXNl03YWkwivGgmG0y5YBH39FJJN1VXsSeFEdkbhretfvM5fv5qjL2fBZb9mI+MBdjWsa6wZQKZTFUG5bxxZV7azhVUdNNtZUG2/kToTSZvNbZiuySVLs2SyVd0oCbdIo2r2i3qrHPLEVJh64IhyIsovtU81ePz5K/L62lOMEbTASICO0iwNiG5e7C0Shqn08SAOSQH6Eacffgjgjw4Nf5AWIJ44RIvbIhchcozSDw5TKut5zRFFRaQZw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZA7t/E9t/cNfydu1d7GFtNZQutZdcGQqfpHO+wJT5F8=;
 b=h+1Q+3iTCj5i7C7AiaCxjlGA0rucl4lYWx9/AqtI9tOr7oESHPfjBlt+NWd4npfj5PqgmDZ5MCeFksJvwaAPzpAvHqVXAL4PTBM4Og5o2HM6Jneip/+x1u3nhqUsXl6+1m0OYR4yPX2tfKxNuEaxdgM2Vs+JOOS23f1WioM8iM7+Dx/tXQHOiGBJwKtcEXrBhBxaU322FXqhmeTtpGs1qxYamB2ZQnnjz3hMtxoSewVtN5klMKgYZZF6YGj5YkR5dP7RyzDvV8WZGbP9RMc9U3owLmsAX1Sl0gCz3396IAuu+Q8AeAFKsZr1+vi6N4YZHWtyaxv7iGXTAiiVq3DsHg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7d56e320-df64-7177-e076-67c477e20dd8@suse.com>
Date: Wed, 13 Sep 2023 15:37:37 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [Xen PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Wei Liu <wl@xen.org>, solene@openbsd.org,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org,
 the arch/x86 maintainers <x86@kernel.org>
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
 <2cfcda8f-bd51-085b-997a-0ff31434d460@suse.com>
 <fca202a8-2716-6ed1-c2ce-707deeddb3ab@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <fca202a8-2716-6ed1-c2ce-707deeddb3ab@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0186.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9f::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB7525:EE_
X-MS-Office365-Filtering-Correlation-Id: a83dd9af-45c0-41b7-6488-08dbb45e99d2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RBjCQmvSyIjoYF4zjNhi6WgdsFpSSsJnf6qGVkXXXMVBmebMDDbdACWZMFRNw6zKaVS5VgESjhw6orybu1gPpoM4deQ9FHt2G7rlmDBx8KEg5Gb2Xa5lhipljAayn3ONfAIUjyvDoCMhpIoGNBWHpVSVU97vU3wtzkGD8bPoQr2k+CZGP/JOyjLW+TeQhtmegBjjZVqk8x71m4gOQW7enb7LuMr2o0VnTjMLEtB+gUnJaflP63R2w1O2Oh/1wrZZGMbaJlLnVAxmBf2oY5H96gzPuAZFEgHy0zDSh3EsXgpK1eJwczhd5Sfozkn/UR0BzotqE5J928BHN0xcVi9kx9oTW1j6lx5J5+hX0tPohjDlCfW/GHFJrR83DU/yg69aAEQ0wMnNyk2aZKCjXuwBjt2n/RMNks31Z3DGnf/ak3pkA20F5o8uivvvyLIX+oSvRehONVbY7sU5q5SLz4TXDRizHXMc77AH9r7a4WTJf/wEC0/VOGwnGw8/cMBdt6275ddsibI/Q+gfHEzYf7Y/EBsAA8LF2CVYF4cTBKGNoiZpaDABFO2ULXbD9ySBQaNo0G5eNtzOqi0xcyyLpHUfitFpWNCl3kQYyys9HOkJF1CnfNkkBUTf7PU8088PSR4eLrSBh9h5cJhAuHLRqT3sMA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(136003)(376002)(396003)(346002)(1800799009)(451199024)(186009)(26005)(6506007)(6666004)(6486002)(53546011)(83380400001)(2616005)(2906002)(66556008)(54906003)(6916009)(66946007)(316002)(66476007)(8936002)(4326008)(478600001)(5660300002)(8676002)(38100700002)(36756003)(31696002)(86362001)(6512007)(31686004)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?V0FEUU12bEhBYkI0eHF2bTFLWUpuUXNuNm1VUFEra3ZpenFSeXJjZmo2TXpk?=
 =?utf-8?B?ZFViV2JGaDRqUm1hZTJxcEg0WTVoWVNUZWVVSXQyQlY3eDd4eEF3dnpneWly?=
 =?utf-8?B?UmVYUGZwd2RBNFNudU9yanRkRXJ6TjV2aGhLUmJPVFlIdVB5Ny8wWFAySytD?=
 =?utf-8?B?R1RVTlNqZkdya0p6ZkJaTmp5VUpWQUtaNGJrNGZBeEdDOTJFYUMwVFE5SllI?=
 =?utf-8?B?OGVkeGJvQnIxS09vL1Y1MTR2ZThyenhGbEdGWnN5Sk04ZFliRFBhM1NpejlO?=
 =?utf-8?B?SkF2UGZIbWpmV0k0NktCbEJBVXk4UjBSZ2EwNmNjam9mWWpHOTE1QXJsVmR2?=
 =?utf-8?B?b1JmNkMyVDV5MzQwclBjWDVOTkxDTE56TlFLUzVidzdSUXZRdHpPZzhQTHFG?=
 =?utf-8?B?cTd2MGNmbTJFSkp6UktocjRRQUd2TDJGN2s1TXpvZHQ4dFhOWW1EQzg2aEdI?=
 =?utf-8?B?UUM5UVp0SzVIUTVhVUR5bDVWTE85VDJ6dEp1L1k1d3NUaS92Zmw2Z1lUOE5Q?=
 =?utf-8?B?dlZybkx4aS9SREJUWEhsWktINUREZ2RtdENLZktqMFNMUVJiUUJQWkVLdUhm?=
 =?utf-8?B?U1pqanJZVENVRGk3NWdNRDhXMHJWV2tTQVF3RlpDeUdGNTFyQllEQnJ6YVdL?=
 =?utf-8?B?MEcvVVMyRE4zOWNxNktzcGNqYWU4VkxJUCsvbFdOeEZMZ2JiZDVSRGpjQmw4?=
 =?utf-8?B?VmJtU2RFWG4vWFNjOEJGNmIxMTRvZE05ZzgyUlBPNFo4UEhHS1Z0VU9MZERH?=
 =?utf-8?B?WjdjVE9yU0xtRW1ycXQvOVRzMG85SytGWmFaMFdqWjkwZWN0L2U1ZDR2S0lM?=
 =?utf-8?B?aTFWdUZLK1U2UTBiY3FjT3h1OGl6L1BHR2JJRWcwV0dhMCt4YVY3SzJDQVVD?=
 =?utf-8?B?OTlmeWFObXQ2ZEI4c1FxcW1KVVZheWsrSlNCTno3c0c4Y0lwZnJZRVRZeFox?=
 =?utf-8?B?a1NscGRKRDNkQ3dsWDFjVllKcXJMQlh1VWpDdVl6ek9uU3hpbWdLRThoUmpi?=
 =?utf-8?B?YkRvWUlNM3RDQ3lJQ1BCWWllMFZMbE9jZ3cxUFhHUUdVcEhocWVjSlpTYmsw?=
 =?utf-8?B?Q0kvdElTV0sxS0RtNlVDbERHbnNjZzI3NlEydUZlUFdKYVptNU9kSm5oRW42?=
 =?utf-8?B?dGtpc2RxZmlVTWlGWlc0RWplZHhqR1poS09LWU8wZ3gwckdYN2lvTUR6MEwz?=
 =?utf-8?B?WmVxcWFWc3N1MU9SWGNFSHkxRmhpT1YyT2EzNU4weFdBdURuSWFiTlFiMzcy?=
 =?utf-8?B?WlJ1MGM0aXZHYlNsaXRMNTgrZjMzbXkzcXpZaVNjYzZRb2RQd0tRMDRQd3p1?=
 =?utf-8?B?TW52azE4bjc3VDFGRlFlOHJTc0ZxUHI1QkozVUx2SjJ1WElrZkYweENRRHpL?=
 =?utf-8?B?d3hKZmRCZUdHK0ovTXFqc0pVU2Zzb29Hb3NEcFEyMi9PUjNDZzcyVFN5a3lG?=
 =?utf-8?B?Vkh3Vzk2WWxZdXJoUmhZdEQzQjZHWXJ2SDNtVHhra1hJcElzemtDM0xWMVdK?=
 =?utf-8?B?U3pZakVmN3FuekgzVVRxS3RnY2hrRzhMZE5SZ2VQa2hacFlHSFIwb1BXaGZ0?=
 =?utf-8?B?RFdwZ0RvSDF2MDdFbHE4blUxZ0dyNXoxaks2anBGYWIzcTNaZWhLU2hyRUZD?=
 =?utf-8?B?UC9pVzFsQjU4YlBWRkY4d0d0cGxyZ3FWYWhyNnBMYzZYSDdRT3JCZmgzU2Y0?=
 =?utf-8?B?RTVHS2NoUjlJTVJYSlhmOHgwZ3Q1Skl5eWY5b2pGa28xOThOYzJXREJBd1Av?=
 =?utf-8?B?Ky94Wk5OMm9NOXFEREZObW5iZjdnaVBRbTN3aEdqMk5HK09VenFURXpxNlds?=
 =?utf-8?B?OWxkR0ZvdDJmR3EyOUIvSnREL1ovdWN4OW4xZ3AzSFJKdytLR1o0WlQxODRo?=
 =?utf-8?B?dGtua0JiN2FPa2xsUmtSQm1ES05RekFmZ0hhMjlVSVB0c0NTbVBjbWEzbmFv?=
 =?utf-8?B?b2hETS9SNk91Um0zSWxTVG03MHBvZ0lhdldFcy9Xcm4yZXgrU3FQalU3dnZm?=
 =?utf-8?B?ckxoRlpwRnRMcUlGRXUySDdCQXVvNCs3ZmxuU3dnODBpRTRSTWF1MUdveVBR?=
 =?utf-8?B?aEdMVXo1TDVINVZSeGFWU2s0bXRYN0hiMkJ3TkNaTVVnUXgxTHJkYUR4aHhR?=
 =?utf-8?Q?puTgX/9uHb1pOAs2DYJk1TZtZ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a83dd9af-45c0-41b7-6488-08dbb45e99d2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 13:37:40.4840
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: EimTc0cmIKaP0F4F4zVN8E2cGMWIAVxw77AU1GWAnXjVfc5IzXOQiGp64tE6xrrxDPhuxFWcoRoa2DxZf3sxeQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7525

On 13.09.2023 13:02, Andrew Cooper wrote:
> On 13/09/2023 7:18 am, Jan Beulich wrote:
>> On 12.09.2023 18:35, Andrew Cooper wrote:
>>> On 12/09/2023 5:23 pm, Roger Pau Monne wrote:
>>>> --- a/xen/arch/x86/msr.c
>>>> +++ b/xen/arch/x86/msr.c
>>>> @@ -240,8 +240,12 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
>>>>      case MSR_K8_HWCR:
>>>>          if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>>>>              goto gp_fault;
>>>> -        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
>>>> -               ? K8_HWCR_TSC_FREQ_SEL : 0;
>>>> +        /*
>>>> +         * OpenBSD 7.3 accesses HWCR unconditionally if the TSC is reported as
>>>> +         * Invariant.  Do not set TSC_FREQ_SEL as that would trigger OpenBSD to
>>>> +         * also poke at PSTATE0.
>>>> +         */
>>> While this is true, the justification for removing this is because
>>> TSC_FREQ_SEL is a model specific bit, not an architectural bit in HWCR.
>>>
>>> Also because it's addition without writing into the migration stream was
>>> bogus irrespective of the specifics of the bit.
>>>
>>> I'm still of the opinion that it's buggy for OpenBSD to be looking at
>>> model specific bits when virtualised, but given my latest reading of the
>>> AMD manuals, I think OpenBSD *is* well behaved looking at PSTATE0 if it
>>> can see TSC_FREQ_SEL.
>> I'm afraid I'm still at a loss seeing what wording in which PPR makes you
>> see a connection. If there was a connection, I'd like to ask that we at
>> least properly consider exposing PSTATE0 (or if necessary all PSTATEn) as
>> well, with zero value (i.e. in particular with the valid bit clear),
>> rather than exposing a r/o bit with the wrong value, upsetting Linux.
> 
> This mess is caused by the erroneous advertising of a model specific
> bit, and there's no way in hell that giving the guest even more model
> specific data is going to fix it.
> 
> The PSTATE MSRs are entirely model specific, fully read/write, and the
> Enable bit is not an enable bit; its a "not valid yet" bit that firmware
> is required to adjust to be consistent across the coherency fabric.
> 
> Linux is simply wrong with it's printk() under virt, and wants adjusting.

Assuming Roger agrees with this statement, then I think this is another
item wanting mentioning in the description. I then still wouldn't ack
the change, but I also wouldn't object to it anymore.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 13:43:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 13:43:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601339.937353 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQ9j-0003JM-0c; Wed, 13 Sep 2023 13:43:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601339.937353; Wed, 13 Sep 2023 13:43:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQ9i-0003JF-UJ; Wed, 13 Sep 2023 13:43:46 +0000
Received: by outflank-mailman (input) for mailman id 601339;
 Wed, 13 Sep 2023 13:43:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=o3wF=E5=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qgQ9h-0003J9-A1
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 13:43:45 +0000
Received: from mail-oo1-xc33.google.com (mail-oo1-xc33.google.com
 [2607:f8b0:4864:20::c33])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8d5e3af2-523b-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 15:43:43 +0200 (CEST)
Received: by mail-oo1-xc33.google.com with SMTP id
 006d021491bc7-57358a689d2so4296501eaf.2
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 06:43:43 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 z3-20020a637e03000000b0057754ae4eb7sm6425543pgc.39.2023.09.13.06.43.36
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 13 Sep 2023 06:43:41 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8d5e3af2-523b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694612622; x=1695217422; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=jzquTyFTIWLKE8HIbexGNq7IS2ePO5uzHkINhBe2ZVw=;
        b=1sS7zzB6hmoGIgIuOcSEug5jhVdqWoc3V47kojdMnOnWOJ8z3/erBtQ2ulCFyLmtjG
         WFdMeUHlCju6bGYm8AKxp1QQ33LVEB3Lzez0WWmRHirzHE/PcJ9WGqMCCINtkvcddyT/
         ciCPbXzn1e/2hAtTiaA5J+qd2Z3xAUf3saerX7jGIMpuGB+ZbW9d8aQDcq1s4/FjxOeT
         XoElN1Y4R7HvnmEjAQs3mUEbJYx0BBkKOo9KG0WmkCuchfyWbJPGhKCowJ4GVcX3b5Z3
         6VwaWdbsYLFdr1Q+82HuXnMkkVSBOZy4YyOcJT03tYsX6RrwWOHvxvZMmfV1zXGcgi03
         ux0w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694612622; x=1695217422;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=jzquTyFTIWLKE8HIbexGNq7IS2ePO5uzHkINhBe2ZVw=;
        b=J5csugNC5HF3ZlpAUUm2fy7RhkDuQnRY9W5uHn+bx/sfPbRq2xUJAKYlYDVs8qsiN+
         OiZ8aDBbwLI9zjXrhScwg3T5vBhPnCfxKnVJ/7If3A14vdr1MLpuE7zIKisFGQ/gYhpt
         r0DRBsb6iuRyAuCv+K6PWce8fBuPe7BLZYt/RIK703hfX7KyhmSnPQTx1zRNmOF61TJB
         zFGQcvxfawcxGm+b0hGAkHTWE22oDy2Yrgt3FGPlPeSv8aWseCRM+HapcHiK9eh9pQKO
         ZNpLxC1G+ishx2Z9rn8YOim92jXal6WoTE341iSOWcGKA7U8+VIsG1BaH6BIDIOt7S3f
         U0BQ==
X-Gm-Message-State: AOJu0YxN7LDbsvZAVx3N+fA4Incikc+iienYDy4LKRnPU+0XgfUYSZEw
	9F+mikgA7bo0x6otlJRRPj2SLg==
X-Google-Smtp-Source: AGHT+IEjkozRTXVlPn3DXYlS/zHkwLkZFxqYB9oImVmpvIGYOqRLulaJpbERB9hWp44RWG6Uk7Evlg==
X-Received: by 2002:a05:6358:278b:b0:139:5a46:ea7e with SMTP id l11-20020a056358278b00b001395a46ea7emr2890869rwb.28.1694612621726;
        Wed, 13 Sep 2023 06:43:41 -0700 (PDT)
Message-ID: <3918c96c-f106-494d-8e97-6d86cef8df27@daynix.com>
Date: Wed, 13 Sep 2023 22:43:34 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
Content-Language: en-US
To: Albert Esteve <aesteve@redhat.com>
Cc: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 "ernunes@redhat.com" <ernunes@redhat.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com>
 <11c227e8-a464-41ce-a435-82c570746388@daynix.com>
 <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
 <cf99ac00-6f48-4778-b319-6079a931ba5d@daynix.com>
 <CADSE00+6zcT7iKR0JW1Bk8es6HtBpzAKa9JW6u5yyjDoLPw2KQ@mail.gmail.com>
 <5e88f5d5-5aa2-4052-b250-69c2a443344f@daynix.com>
 <CADSE00+BUq-6jKH3v2PYNThn+9Z4UCFcr3Cv9Z48eUX0b=6ymA@mail.gmail.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <CADSE00+BUq-6jKH3v2PYNThn+9Z4UCFcr3Cv9Z48eUX0b=6ymA@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 2023/09/13 21:58, Albert Esteve wrote:
> 
> 
> On Wed, Sep 13, 2023 at 2:22 PM Akihiko Odaki <akihiko.odaki@daynix.com 
> <mailto:akihiko.odaki@daynix.com>> wrote:
> 
>     On 2023/09/13 20:34, Albert Esteve wrote:
>      >
>      >
>      > On Wed, Sep 13, 2023 at 12:34 PM Akihiko Odaki
>     <akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>
>      > <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>>> wrote:
>      >
>      >     On 2023/09/13 16:55, Albert Esteve wrote:
>      >      > Hi Antonio,
>      >      >
>      >      > If I'm not mistaken, this patch is related with:
>      >      >
>      >
>     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html
>     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>
>      >   
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>
>      >      >
>      >   
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>
>      >   
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>
>      >      > IMHO, ideally, virtio-gpu and vhost-user-gpu both, would
>     use the
>      >      > infrastructure from the patch I linked to store the
>      >      > virtio objects, so that they can be later shared with
>     other devices.
>      >
>      >     I don't think such sharing is possible because the resources are
>      >     identified by IDs that are local to the device. That also
>     complicates
>      >     migration.
>      >
>      >     Regards,
>      >     Akihiko Odaki
>      >
>      > Hi Akihiko,
>      >
>      > As far as I understand, the feature to export dma-bufs from the
>      > virtgpu was introduced as part of the virtio cross-device sharing
>      > proposal [1]. Thus, it shall be posible. When virtgpu ASSING_UUID,
>      > it exports and identifies the dmabuf resource, so that when the
>     dmabuf gets
>      > shared inside the guest (e.g., with virtio-video), we can use the
>     assigned
>      > UUID to find the dmabuf in the host (using the patch that I
>     linked above),
>      > and import it.
>      >
>      > [1] - https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/> <https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/>>
> 
>     The problem is that virtio-gpu can have other kind of resources like
>     pixman and OpenGL textures and manage them and DMA-BUFs with unified
>     resource ID.
> 
> 
> I see.
> 
> 
>     So you cannot change:
>     g_hash_table_insert(g->resource_uuids,
>     GUINT_TO_POINTER(assign.resource_id), uuid);
>     by:
>     virtio_add_dmabuf(uuid, assign.resource_id);
> 
>     assign.resource_id is not DMA-BUF file descriptor, and the underlying
>     resource my not be DMA-BUF at first place.
> 
> 
> I didn't really look into the patch in-depth, so the code was intended
> to give an idea of how the implementation would look like with
> the cross-device patch API. Indeed, it is not the resource_id,
> (I just took a brief look at the virtio specificacion 1.2), but the 
> underlying
> resource what we want to use here.
> 
> 
>     Also, since this lives in the common code that is not used only by
>     virtio-gpu-gl but also virtio-gpu, which supports migration, we also
>     need to take care of that. It is not a problem for DMA-BUF as
>     DMA-BUF is
>     not migratable anyway, but the situation is different in this case.
> 
>     Implementing cross-device sharing is certainly a possibility, but that
>     requires more than dealing with DMA-BUFs.
> 
> 
> So, if I understood correctly, dmabufs are just a subset of the resources
> that the gpu manages, or can assign UUIDs to. I am not sure why
> the virt gpu driver would want to send a ASSIGN_UUID for anything
> that is not a dmabuf (are we sure it does?), but I am not super familiarized
> with virtgpu to begin with.

In my understanding, an resource will be first created as OpenGL or 
Vulkan textures and then exported as a DMA-BUF file descriptor. For 
these resource types exporting/importing code is mandatory.

For pixman buffers (i.e., non-virgl device), I don't see a compelling 
reason to have cross-device sharing. It is possible to omit resource 
UUID feature from non-virgl device to avoid implementing complicated 
migration.

> But I see that internally, the GPU specs relate a UUID with a resource_id,
> so we still need both tables:
> - one to relate UUID with resource_id to be able to locate the 
> underlying resource
> - the table that holds the dmabuf with the UUID for cross-device sharing
> 
> With that in mind, sounds to me that the support for cross-device 
> sharing could
> be added on top of this patch, once 
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html 
> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html>
> lands.

That is possible, but I think it's better to implement cross-device 
sharing at the same time introducing virtio-dmabuf.

The current design of virtio-dmabuf looks somewhat inconsistent; it's 
named "dmabuf", but internally the UUIDs are stored into something named 
"resource_uuids" and it has SharedObjectType so it's more like a generic 
resource sharing mechanism. If you actually have an implementation of 
cross-device sharing using virtio-dmabuf, it will be clear what kind of 
feature is truly necessary.

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 14:14:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 14:14:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601395.937392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQcq-00027z-Sz; Wed, 13 Sep 2023 14:13:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601395.937392; Wed, 13 Sep 2023 14:13:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQcq-00027s-Oq; Wed, 13 Sep 2023 14:13:52 +0000
Received: by outflank-mailman (input) for mailman id 601395;
 Wed, 13 Sep 2023 14:13:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eUH4=E5=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qgQcp-00027m-Nt
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 14:13:51 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c090815d-523f-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 16:13:47 +0200 (CEST)
Received: from MW4PR03CA0102.namprd03.prod.outlook.com (2603:10b6:303:b7::17)
 by SN7PR12MB6983.namprd12.prod.outlook.com (2603:10b6:806:261::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Wed, 13 Sep
 2023 14:13:43 +0000
Received: from CO1PEPF000044F7.namprd21.prod.outlook.com
 (2603:10b6:303:b7:cafe::66) by MW4PR03CA0102.outlook.office365.com
 (2603:10b6:303:b7::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20 via Frontend
 Transport; Wed, 13 Sep 2023 14:13:43 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CO1PEPF000044F7.mail.protection.outlook.com (10.167.241.197) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Wed, 13 Sep 2023 14:13:42 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 09:13:40 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 09:13:32 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 13 Sep 2023 09:13:31 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c090815d-523f-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hpx0JlWkJZ/rw/WGiIFUzHP7GnHN15ITjAReHIxZHMWRjmLllTfKGMil2QLlMDZlP8zfI05g+jdID0Ns/eXDdwkb+q1enzGfcJM6BHiUoWiFYPwjocONg9FDx8sAVGAvpOCkbyuMpqz/Zla5lCxtHkznehKUAwPJWr0MBX4ij/w5awEkx/Rj+pvP/KrPdH1WTNYcXjSweuwhi+XFwihZZQt72NsECD1U4A2qrzQas0FiGzroz+KuHLmnzLWwkpSSmeLkTOb/BWnms7wklH1SqRLTV5Ck2DxLZL+0rEYDpuLbJjEeeqjh49DhhOPF5lmFtw8ctdFTuq2CqlApSeouhQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LmwDyZb8YRQkjeT/5fhlCcDSgiRc55DW8fgXBndKQZ4=;
 b=DgAxe3U5QWCNvy6ePp1SqchB132hRF3t9+RgJCYAYgGq7Xo39yWFm2bSvGPT+DH/EgooFhW8ZxVXqotgg1Ng86qfw25ctLoekDPWH/MyaOnVBahzy7T/j6kpI9tf4NleTI/mNN5QdG9Xfaq46jI/LmGtBTGUpTsW6XL7qJshNPDAETLMI1oMwPKDPUFbpo/huuqKTlkojlub9sMLLj/bxM/MOmJR5NZg+WLRhVdePIc5qaztyWtG1pryVKFwg/uKc08kO2mZ1210U7taUcH8kA7GFkCOM6ofYy4UcdmTFySGf+9sElG0Nq+n782/AmagMB0XltdVeHbb+2eD0MKwoQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LmwDyZb8YRQkjeT/5fhlCcDSgiRc55DW8fgXBndKQZ4=;
 b=FCMv3hKRVOD3UB381/03GU1jG39kWwItdFMOiR3Wl80kaJePwOXeasDB0uCEVhVT0W7Ruw+gFDZXEFyTQdImEBAUukUFx6nCcCbZemgIntWHxbiSoqdSZFLfZVM8xDvolwr1S6v8YjsqqhWCoI5CuudjDLAOfypyAOdAhZ6dasc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Michal Orzel <michal.orzel@amd.com>
Subject: [ImageBuilder PATCH v3] uboot-script-gen: use size from arm64 Image header
Date: Wed, 13 Sep 2023 10:13:10 -0400
Message-ID: <20230913141311.13714-1-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044F7:EE_|SN7PR12MB6983:EE_
X-MS-Office365-Filtering-Correlation-Id: 59e557d5-fdd4-4540-7e74-08dbb463a2aa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	2saho+SaLE5Y+QKBPnGa/s3iP8FogrUqjz/Uj7oE4kGDieZVHKhQ7xAByux07Omrv+MDwrfbtt09lY5KJChiFI8z7y6WCZtAyBqlvy0FDO8eTOVFXhi1t/EqVYdst7RYNG2LyVT34/mV0lnx9tcxfqv18RiHiwC60JIhHpvl+g8IlulErb8Gkig4IR9Z05Hb+q9zV/sqn5z+JeUuT+iUBXUZRreSz4OitYGjbCCdpmdgi+7Ck5gctZzExYuIScQwNaN7mDjMOuWS5AufLM2T3IRuYPxsaTOrjNelAQ2E5N8v7DlcBiVQP6QDGfmGjLdYG2KUsmT4EX7vrSVS56cdT6evygWIXrZMCZRsZe3ZWQDmlWrH1LqWqOYzU07eN4ud11U/ulL5FBhUuBJCE4QOskBVtHsbylhSIOZ0MSOtpY1Urd5O0sBUvYLL0q06G13iwfcag0YA5I8ifH1eiugBN5ZxYnmlBltWv2sPL1DlBwHsR71ptD1KLRl0rMWw8pL5c2VPrcO4DxcoAlHnJwr2lJw0Kqh7XuxEh+/7lgyGFMrmtTeQA5Z3oZF/boeqYNxvI7WBORWrxJ8pPOUw6DNp/ExQq0qnyyxMXRHcgtTwCw7asaFPn+gMWw6AtPDBwXx3NflnUIoIXD1jSOe2RFJNBBay+Cz2eyIBnpsegmVjedHyEME4t+B0M7FYhdH+W55w81ldBTabACSXK88pcJyNCqZtJa+luhaGJ2rsi72OQq+SmQbANROXOfn5OFnPkAlLOx0wqOt8ysfD3Eb1xx0MgQ==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(376002)(136003)(39860400002)(396003)(82310400011)(186009)(451199024)(1800799009)(46966006)(40470700004)(36840700001)(40460700003)(6666004)(83380400001)(86362001)(36756003)(81166007)(82740400003)(356005)(47076005)(36860700001)(2616005)(426003)(26005)(40480700001)(1076003)(70206006)(2906002)(6916009)(41300700001)(316002)(8676002)(4326008)(54906003)(70586007)(336012)(44832011)(478600001)(5660300002)(8936002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 14:13:42.5182
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 59e557d5-fdd4-4540-7e74-08dbb463a2aa
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000044F7.namprd21.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB6983

There is a corner case where the filesizes of the xen and Linux kernel images
are not sufficient. These binaries likely contain NOLOAD sections (e.g. bss),
which are not accounted in the filesize.

Check for the presence of an arm64 kernel image header, and get the effective
image size from the header. Use the effective image size for calculating the
next load address and for populating the size in the /chosen/dom*/reg property.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
---
v2->v3:
* simplify awk parsing
* add R-b

v1->v2:
* add in-code comments
* use variables more
---
 scripts/uboot-script-gen | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/scripts/uboot-script-gen b/scripts/uboot-script-gen
index 9656a458ac00..b284887f065e 100755
--- a/scripts/uboot-script-gen
+++ b/scripts/uboot-script-gen
@@ -2,7 +2,7 @@
 
 offset=$((2*1024*1024))
 filesize=0
-prog_req=(mkimage file fdtput mktemp awk)
+prog_req=(mkimage file fdtput mktemp awk od)
 
 function cleanup_and_return_err()
 {
@@ -435,6 +435,21 @@ function add_size()
 {
     local filename=$1
     local size=`stat -L --printf="%s" $filename`
+    # Read arm64 header magic (https://www.kernel.org/doc/Documentation/arm64/booting.txt)
+    local arm64_header_magic=$(od -j 56 -N 4 -t x4 ${filename} | awk 'NR==1 {print $2}')
+
+    # Check for valid arm64 header magic value 0x644d5241
+    if [ "${arm64_header_magic}" = "644d5241" ]
+    then
+        # Read effective size, which may be larger than the filesize due to noload sections, e.g. bss
+        local arm64_header_size=$(od -j 16 -N 8 -t u8 ${filename} | awk 'NR==1 {print $2}')
+
+        if [ "${arm64_header_size}" -gt "${size}" ]
+        then
+            size=${arm64_header_size}
+        fi
+    fi
+
     memaddr=$(( $memaddr + $size + $offset - 1))
     memaddr=$(( $memaddr & ~($offset - 1) ))
     memaddr=`printf "0x%X\n" $memaddr`
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 14:18:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 14:18:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601441.937425 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQhc-0003fX-Op; Wed, 13 Sep 2023 14:18:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601441.937425; Wed, 13 Sep 2023 14:18:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQhc-0003fQ-Lw; Wed, 13 Sep 2023 14:18:48 +0000
Received: by outflank-mailman (input) for mailman id 601441;
 Wed, 13 Sep 2023 14:18:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gBHS=E5=redhat.com=aesteve@srs-se1.protection.inumbo.net>)
 id 1qgQhc-0003fK-1N
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 14:18:48 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7236ea28-5240-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 16:18:45 +0200 (CEST)
Received: from mail-pg1-f198.google.com (mail-pg1-f198.google.com
 [209.85.215.198]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-142-c0mo4_AfO8u9Ncgs-nNLZQ-1; Wed, 13 Sep 2023 10:18:40 -0400
Received: by mail-pg1-f198.google.com with SMTP id
 41be03b00d2f7-573d44762e4so7394075a12.0
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 07:18:40 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7236ea28-5240-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694614724;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=4cjOPKJK8kJbNrrfaNwOPldfkz5IYXw7eT/fQo2YKNU=;
	b=QsGw2LKcq+sLCZT3xRMqXg2roWcFHvvzNBmDYvNnRw6RK2GvLnAliAIIzZVfy1mSbkDxyj
	gZzWOv2LEQp6A6yI/8lR5gy1OtXYGgGK/0Ja9YO99H2UL72IXB+utUDhLbJ+u1+sJoJ+ly
	F8KT0h0Qnm/mGUCiABmzC722BmbvocU=
X-MC-Unique: c0mo4_AfO8u9Ncgs-nNLZQ-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694614719; x=1695219519;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=4cjOPKJK8kJbNrrfaNwOPldfkz5IYXw7eT/fQo2YKNU=;
        b=VPlhItALpynFhV4usLJGW7EPTFvn9/f5IomqAm9VG1e6ynh0dSAGGTlFg0Fzn+5lB/
         03HpZN33olgByfql4DP3gi3UKrUDyFo7UHYdMVkMsce5hmZLNcYYzfr+G81LdnYNISRR
         kT+bbYjdM1/qaAvnTM7pAVzl3L4l+ZTvL4ZGzcy0/kvTwGV7WMlaWDwbVTAFyEaDvpzQ
         ASm/SYJXyPPSwv8WsSfhjdx0bm3egUE1wY5WVYc9I7EsSGLlzObTGELbzHKE9LNcnp2E
         xSuQHJTadPySFX4b4rEExT50LeF5kl4xTSAd9bfeRTn3qIdXxBh5fIAuZksGxKa5WEPU
         BSMQ==
X-Gm-Message-State: AOJu0Yz1Tv4murISAJnlnBNTczJ6lHlWgdh1imkYnGCM8XggYZEk7QKs
	z/Tt97Xe+vCF3gaceVt+W27JGPqTGc+aLmBBvoXFGrn1BHMJmAPAZpukUPHcgki0YrhMIY6VNl/
	b+2ufY42QG6V0G3e1bXuvCiLuGf+RHbSseig/K/d5NLo=
X-Received: by 2002:a17:90b:38d2:b0:26d:43f9:11dd with SMTP id nn18-20020a17090b38d200b0026d43f911ddmr2391937pjb.0.1694614719034;
        Wed, 13 Sep 2023 07:18:39 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IHmx/ocnxpiY4B9P8H02WpotJCJrvPg1BigAUA4M9k0RHWOtkiiN2a2ztOf5TEYtrqChYplvibI+pVgKM2Zwds=
X-Received: by 2002:a17:90b:38d2:b0:26d:43f9:11dd with SMTP id
 nn18-20020a17090b38d200b0026d43f911ddmr2391901pjb.0.1694614718671; Wed, 13
 Sep 2023 07:18:38 -0700 (PDT)
MIME-Version: 1.0
References: <20230831093252.2461282-1-ray.huang@amd.com> <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com>
 <11c227e8-a464-41ce-a435-82c570746388@daynix.com> <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
 <cf99ac00-6f48-4778-b319-6079a931ba5d@daynix.com> <CADSE00+6zcT7iKR0JW1Bk8es6HtBpzAKa9JW6u5yyjDoLPw2KQ@mail.gmail.com>
 <5e88f5d5-5aa2-4052-b250-69c2a443344f@daynix.com> <CADSE00+BUq-6jKH3v2PYNThn+9Z4UCFcr3Cv9Z48eUX0b=6ymA@mail.gmail.com>
 <3918c96c-f106-494d-8e97-6d86cef8df27@daynix.com>
In-Reply-To: <3918c96c-f106-494d-8e97-6d86cef8df27@daynix.com>
From: Albert Esteve <aesteve@redhat.com>
Date: Wed, 13 Sep 2023 16:18:27 +0200
Message-ID: <CADSE00LNYm+vKaYwnTAdECGUXPCfiJ7aLqszDuqSzCLLhVOHhQ@mail.gmail.com>
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>, 
	"Michael S . Tsirkin" <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, 
	Antonio Caggiano <antonio.caggiano@collabora.com>, 
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, 
	Dmitry Osipenko <dmitry.osipenko@collabora.com>, =?UTF-8?B?QWxleCBCZW5uw6ll?= <alex.bennee@linaro.org>, 
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
	Gurchetan Singh <gurchetansingh@chromium.org>, "ernunes@redhat.com" <ernunes@redhat.com>, 
	=?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= <philmd@linaro.org>, 
	Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	"Deucher, Alexander" <Alexander.Deucher@amd.com>, "Koenig, Christian" <Christian.Koenig@amd.com>, 
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>, 
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>, 
	"Huang, Honglei1" <Honglei1.Huang@amd.com>, "Zhang, Julia" <Julia.Zhang@amd.com>, 
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: multipart/alternative; boundary="00000000000056833706053e3c54"

--00000000000056833706053e3c54
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Sep 13, 2023 at 3:43=E2=80=AFPM Akihiko Odaki <akihiko.odaki@daynix=
.com>
wrote:

> On 2023/09/13 21:58, Albert Esteve wrote:
> >
> >
> > On Wed, Sep 13, 2023 at 2:22=E2=80=AFPM Akihiko Odaki <akihiko.odaki@da=
ynix.com
> > <mailto:akihiko.odaki@daynix.com>> wrote:
> >
> >     On 2023/09/13 20:34, Albert Esteve wrote:
> >      >
> >      >
> >      > On Wed, Sep 13, 2023 at 12:34=E2=80=AFPM Akihiko Odaki
> >     <akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>
> >      > <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>>> wrote:
> >      >
> >      >     On 2023/09/13 16:55, Albert Esteve wrote:
> >      >      > Hi Antonio,
> >      >      >
> >      >      > If I'm not mistaken, this patch is related with:
> >      >      >
> >      >
> >     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html
> >     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.htm=
l
> >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>
> >      >      >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>
> >      >      > IMHO, ideally, virtio-gpu and vhost-user-gpu both, would
> >     use the
> >      >      > infrastructure from the patch I linked to store the
> >      >      > virtio objects, so that they can be later shared with
> >     other devices.
> >      >
> >      >     I don't think such sharing is possible because the resources
> are
> >      >     identified by IDs that are local to the device. That also
> >     complicates
> >      >     migration.
> >      >
> >      >     Regards,
> >      >     Akihiko Odaki
> >      >
> >      > Hi Akihiko,
> >      >
> >      > As far as I understand, the feature to export dma-bufs from the
> >      > virtgpu was introduced as part of the virtio cross-device sharin=
g
> >      > proposal [1]. Thus, it shall be posible. When virtgpu ASSING_UUI=
D,
> >      > it exports and identifies the dmabuf resource, so that when the
> >     dmabuf gets
> >      > shared inside the guest (e.g., with virtio-video), we can use th=
e
> >     assigned
> >      > UUID to find the dmabuf in the host (using the patch that I
> >     linked above),
> >      > and import it.
> >      >
> >      > [1] - https://lwn.net/Articles/828988/
> >     <https://lwn.net/Articles/828988/> <https://lwn.net/Articles/828988=
/
> >     <https://lwn.net/Articles/828988/>>
> >
> >     The problem is that virtio-gpu can have other kind of resources lik=
e
> >     pixman and OpenGL textures and manage them and DMA-BUFs with unifie=
d
> >     resource ID.
> >
> >
> > I see.
> >
> >
> >     So you cannot change:
> >     g_hash_table_insert(g->resource_uuids,
> >     GUINT_TO_POINTER(assign.resource_id), uuid);
> >     by:
> >     virtio_add_dmabuf(uuid, assign.resource_id);
> >
> >     assign.resource_id is not DMA-BUF file descriptor, and the underlyi=
ng
> >     resource my not be DMA-BUF at first place.
> >
> >
> > I didn't really look into the patch in-depth, so the code was intended
> > to give an idea of how the implementation would look like with
> > the cross-device patch API. Indeed, it is not the resource_id,
> > (I just took a brief look at the virtio specificacion 1.2), but the
> > underlying
> > resource what we want to use here.
> >
> >
> >     Also, since this lives in the common code that is not used only by
> >     virtio-gpu-gl but also virtio-gpu, which supports migration, we als=
o
> >     need to take care of that. It is not a problem for DMA-BUF as
> >     DMA-BUF is
> >     not migratable anyway, but the situation is different in this case.
> >
> >     Implementing cross-device sharing is certainly a possibility, but
> that
> >     requires more than dealing with DMA-BUFs.
> >
> >
> > So, if I understood correctly, dmabufs are just a subset of the resourc=
es
> > that the gpu manages, or can assign UUIDs to. I am not sure why
> > the virt gpu driver would want to send a ASSIGN_UUID for anything
> > that is not a dmabuf (are we sure it does?), but I am not super
> familiarized
> > with virtgpu to begin with.
>
> In my understanding, an resource will be first created as OpenGL or
> Vulkan textures and then exported as a DMA-BUF file descriptor. For
> these resource types exporting/importing code is mandatory.
>
> For pixman buffers (i.e., non-virgl device), I don't see a compelling
> reason to have cross-device sharing. It is possible to omit resource
> UUID feature from non-virgl device to avoid implementing complicated
> migration.
>

I see, thanks for the clarification.
I would assume you could avoid the UUID feature for those resources, but
I will need to check the driver implementation. It is worth checking
though, if
that would simplify the implementation.


>
> > But I see that internally, the GPU specs relate a UUID with a
> resource_id,
> > so we still need both tables:
> > - one to relate UUID with resource_id to be able to locate the
> > underlying resource
> > - the table that holds the dmabuf with the UUID for cross-device sharin=
g
> >
> > With that in mind, sounds to me that the support for cross-device
> > sharing could
> > be added on top of this patch, once
> > https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html
> > <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html>
> > lands.
>
> That is possible, but I think it's better to implement cross-device
> sharing at the same time introducing virtio-dmabuf.
>
> The current design of virtio-dmabuf looks somewhat inconsistent; it's
> named "dmabuf", but internally the UUIDs are stored into something named
> "resource_uuids" and it has SharedObjectType so it's more like a generic
> resource sharing mechanism. If you actually have an implementation of
> cross-device sharing using virtio-dmabuf, it will be clear what kind of
> feature is truly necessary.
>
>
Yeah, the file was named as virtio-dmabuf following the kernel
implementation. Also, because for the moment it only aims to share
dmabufs. However, virtio specs leave the virtio object defintion vague [1]
(I guess purposely). It is up to the specific devices to define what an
object
means for them. So the implementation tries to follow that, and
leave the contents of the table generic. The table can hold any kind of
object,
and the API exposes type-specific functions (for dmabufs, or others).

[1] -
https://docs.oasis-open.org/virtio/virtio/v1.2/csd01/virtio-v1.2-csd01.html=
#x1-10500011


> Regards,
> Akihiko Odaki
>
>

--00000000000056833706053e3c54
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div><div dir=3D"ltr" class=3D"gmail_sign=
ature"><div dir=3D"ltr"><br></div></div></div></div><br><div class=3D"gmail=
_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Wed, Sep 13, 2023 at 3:43=
=E2=80=AFPM Akihiko Odaki &lt;<a href=3D"mailto:akihiko.odaki@daynix.com">a=
kihiko.odaki@daynix.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_=
quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,=
204);padding-left:1ex">On 2023/09/13 21:58, Albert Esteve wrote:<br>
&gt; <br>
&gt; <br>
&gt; On Wed, Sep 13, 2023 at 2:22=E2=80=AFPM Akihiko Odaki &lt;<a href=3D"m=
ailto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com<=
/a> <br>
&gt; &lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blan=
k">akihiko.odaki@daynix.com</a>&gt;&gt; wrote:<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0On 2023/09/13 20:34, Albert Esteve wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; On Wed, Sep 13, 2023 at 12:34=E2=80=AFPM Akih=
iko Odaki<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"mailto:akihiko.odaki@daynix.com" tar=
get=3D"_blank">akihiko.odaki@daynix.com</a> &lt;mailto:<a href=3D"mailto:ak=
ihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;<=
br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; &lt;mailto:<a href=3D"mailto:akihiko.odaki@da=
ynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;&gt;&gt; wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0On 2023/09/13 16:55, Alber=
t Esteve wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; Hi Antonio,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; If I&#39;m not mista=
ken, this patch is related with:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lists.gnu.org/archive/html/qemu-=
devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https://l=
ists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive/html/q=
emu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https=
://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; IMHO, ideally, virti=
o-gpu and vhost-user-gpu both, would<br>
&gt;=C2=A0 =C2=A0 =C2=A0use the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; infrastructure from =
the patch I linked to store the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; virtio objects, so t=
hat they can be later shared with<br>
&gt;=C2=A0 =C2=A0 =C2=A0other devices.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0I don&#39;t think such sha=
ring is possible because the resources are<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0identified by IDs that are=
 local to the device. That also<br>
&gt;=C2=A0 =C2=A0 =C2=A0complicates<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0migration.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0Regards,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0Akihiko Odaki<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; Hi Akihiko,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; As far as I understand, the feature to export=
 dma-bufs=C2=A0from the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; virtgpu was introduced as part of the virtio =
cross-device sharing<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; proposal [1]. Thus, it shall be posible. When=
 virtgpu=C2=A0ASSING_UUID,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; it exports and identifies the dmabuf resource=
, so that when the<br>
&gt;=C2=A0 =C2=A0 =C2=A0dmabuf gets<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; shared inside the guest (e.g., with virtio-vi=
deo), we can use the<br>
&gt;=C2=A0 =C2=A0 =C2=A0assigned<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; UUID to find the dmabuf in the host (using th=
e patch that I<br>
&gt;=C2=A0 =C2=A0 =C2=A0linked above),<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; and import it.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; [1] - <a href=3D"https://lwn.net/Articles/828=
988/" rel=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/=
</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
 &lt;<a href=3D"https://lwn.net/Articles/828988/" rel=3D"noreferrer" target=
=3D"_blank">https://lwn.net/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
&gt;<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0The problem is that virtio-gpu can have other kind =
of resources like<br>
&gt;=C2=A0 =C2=A0 =C2=A0pixman and OpenGL textures and manage them and DMA-=
BUFs with unified<br>
&gt;=C2=A0 =C2=A0 =C2=A0resource ID.<br>
&gt; <br>
&gt; <br>
&gt; I see.<br>
&gt; <br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0So you cannot change:<br>
&gt;=C2=A0 =C2=A0 =C2=A0g_hash_table_insert(g-&gt;resource_uuids,<br>
&gt;=C2=A0 =C2=A0 =C2=A0GUINT_TO_POINTER(assign.resource_id), uuid);<br>
&gt;=C2=A0 =C2=A0 =C2=A0by:<br>
&gt;=C2=A0 =C2=A0 =C2=A0virtio_add_dmabuf(uuid, assign.resource_id);<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0assign.resource_id is not DMA-BUF file descriptor, =
and the underlying<br>
&gt;=C2=A0 =C2=A0 =C2=A0resource my not be DMA-BUF at first place.<br>
&gt; <br>
&gt; <br>
&gt; I didn&#39;t really look into the patch in-depth, so the=C2=A0code was=
 intended<br>
&gt; to give an idea of how the implementation would look like with<br>
&gt; the cross-device patch API. Indeed, it is not the resource_id,<br>
&gt; (I just took a brief look at the virtio specificacion=C2=A01.2), but t=
he <br>
&gt; underlying<br>
&gt; resource what we want to use here.<br>
&gt; <br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0Also, since this lives in the common code that is n=
ot used only by<br>
&gt;=C2=A0 =C2=A0 =C2=A0virtio-gpu-gl but also virtio-gpu, which supports m=
igration, we also<br>
&gt;=C2=A0 =C2=A0 =C2=A0need to take care of that. It is not a problem for =
DMA-BUF as<br>
&gt;=C2=A0 =C2=A0 =C2=A0DMA-BUF is<br>
&gt;=C2=A0 =C2=A0 =C2=A0not migratable anyway, but the situation is differe=
nt in this case.<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0Implementing cross-device sharing is certainly a po=
ssibility, but that<br>
&gt;=C2=A0 =C2=A0 =C2=A0requires more than dealing with DMA-BUFs.<br>
&gt; <br>
&gt; <br>
&gt; So, if I understood correctly, dmabufs=C2=A0are just a subset of the r=
esources<br>
&gt; that the gpu manages, or can assign UUIDs to. I am not sure why<br>
&gt; the virt gpu driver would want to send a ASSIGN_UUID for anything<br>
&gt; that is not a dmabuf (are we sure it does?), but I am not super famili=
arized<br>
&gt; with virtgpu=C2=A0to begin with.<br>
<br>
In my understanding, an resource will be first created as OpenGL or <br>
Vulkan textures and then exported as a DMA-BUF file descriptor. For <br>
these resource types exporting/importing code is mandatory.<br>
<br>
For pixman buffers (i.e., non-virgl device), I don&#39;t see a compelling <=
br>
reason to have cross-device sharing. It is possible to omit resource <br>
UUID feature from non-virgl device to avoid implementing complicated <br>
migration.<br></blockquote><div><br></div><div>I see, thanks for the clarif=
ication.</div><div>I would assume you could avoid the UUID feature for thos=
e resources, but</div><div>I will need to check the driver implementation. =
It is worth checking though, if</div><div>that would simplify the implement=
ation.</div><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"mar=
gin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1=
ex">
<br>
&gt; But I see that internally, the GPU specs relate a UUID with a resource=
_id,<br>
&gt; so we still need both tables:<br>
&gt; - one to relate UUID with resource_id to be able to locate the <br>
&gt; underlying resource<br>
&gt; - the table that holds the dmabuf with the UUID for cross-device shari=
ng<br>
&gt; <br>
&gt; With that in mind, sounds to me that the support for cross-device <br>
&gt; sharing could<br>
&gt; be added on top of this patch, once <br>
&gt; <a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01=
850.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archiv=
e/html/qemu-devel/2023-09/msg01850.html</a> <br>
&gt; &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/m=
sg01850.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/ar=
chive/html/qemu-devel/2023-09/msg01850.html</a>&gt;<br>
&gt; lands.<br>
<br>
That is possible, but I think it&#39;s better to implement cross-device <br=
>
sharing at the same time introducing virtio-dmabuf.<br>
<br>
The current design of virtio-dmabuf looks somewhat inconsistent; it&#39;s <=
br>
named &quot;dmabuf&quot;, but internally the UUIDs are stored into somethin=
g named <br>
&quot;resource_uuids&quot; and it has SharedObjectType so it&#39;s more lik=
e a generic <br>
resource sharing mechanism. If you actually have an implementation of <br>
cross-device sharing using virtio-dmabuf, it will be clear what kind of <br=
>
feature is truly necessary.<br>
<br></blockquote><div><br></div><div>Yeah, the file was named as virtio-dma=
buf following the kernel</div><div>implementation. Also, because for the mo=
ment it only aims to share</div><div>dmabufs. However, virtio specs leave t=
he virtio object defintion=C2=A0vague [1]</div><div>(I guess purposely). It=
 is up to the specific devices to define what an object</div><div>means for=
 them. So the implementation tries to follow that, and</div><div>leave the =
contents of the table generic. The table can hold any kind of object,</div>=
<div>and the API exposes type-specific functions (for dmabufs,=C2=A0or othe=
rs).</div><div><br></div><div>[1] -=C2=A0<a href=3D"https://docs.oasis-open=
.org/virtio/virtio/v1.2/csd01/virtio-v1.2-csd01.html#x1-10500011">https://d=
ocs.oasis-open.org/virtio/virtio/v1.2/csd01/virtio-v1.2-csd01.html#x1-10500=
011</a></div><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"ma=
rgin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:=
1ex">
Regards,<br>
Akihiko Odaki<br>
<br>
</blockquote></div></div>

--00000000000056833706053e3c54--



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 14:28:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 14:28:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601449.937435 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQql-0007Jh-Nc; Wed, 13 Sep 2023 14:28:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601449.937435; Wed, 13 Sep 2023 14:28:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQql-0007Ja-Kx; Wed, 13 Sep 2023 14:28:15 +0000
Received: by outflank-mailman (input) for mailman id 601449;
 Wed, 13 Sep 2023 14:28:14 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gBHS=E5=redhat.com=aesteve@srs-se1.protection.inumbo.net>)
 id 1qgQqk-0007IN-CL
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 14:28:14 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c45c1c63-5241-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 16:28:12 +0200 (CEST)
Received: from mail-pj1-f69.google.com (mail-pj1-f69.google.com
 [209.85.216.69]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-640-tqIs0E4PPWu0O65jNWqS3A-1; Wed, 13 Sep 2023 10:28:07 -0400
Received: by mail-pj1-f69.google.com with SMTP id
 98e67ed59e1d1-273fa168866so4520627a91.0
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 07:28:07 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c45c1c63-5241-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694615291;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=IV8Oc03hnlFT9C9ejl5rKQQrOK2AZ6bE6FyncxPT98I=;
	b=Yvjs3Wg5e5pInTS5ACv1tRKp/a3SESjPX0jberOfFHTdDyJHk4xpK8IBUNlT1D49s8jFQ5
	WTKUPLFduVYGhC7o2YIhI/HOQQ/pBwSMH+icDmGVNYfAvtHWKA8nefol+hfglMDtjQ0udB
	kdQklzlhLbjRG65bAbEETqwuQiWLQ4c=
X-MC-Unique: tqIs0E4PPWu0O65jNWqS3A-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694615286; x=1695220086;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=IV8Oc03hnlFT9C9ejl5rKQQrOK2AZ6bE6FyncxPT98I=;
        b=KcLZoXH+b5e3jKhgWrTZ/uT+byVON8JeHmlRE8/PIie0Yujhqr6AMT2T61N/3UPR9z
         gkXAo3FWyfsMW4PRbFHsaGOmz7Q8k7PWgQyucneYzdk/6/bZtI+Of54lHzaNQtJEFzTi
         cu3G3W9w7xbiI08GpVsn0fTereao4Qk37Hsr91rojgO4reNmwTshvC74nLF3+xEOua5s
         NBOmTamHsQb25pWsGus7w1C7xWbZK7/vtayZfvgaPPZIp5oA+msOXJYC1WfAgUYSJUdy
         Al+s0kAEgATMKxNC/DGSQ6MpLsutPR6M0MgH4UHScHxbFBvfVIECYZ1ZkMGih/fxkvwH
         jk4g==
X-Gm-Message-State: AOJu0YyYS4Bqf+dks4CPDF1n6LXVlAIUogYi8V6gioEFcKvYM4crS5dQ
	0XCS6yEqJz8URV/khbrPQI+5qQzRRw+B8s7scAmUf1G3WAZkG/REgv8lNMLLIabRsz8HjMy7B7u
	Ikh1EfUKhOQkQpogDY5Zq5/rAkls/i/z3vlIyXS3zgwA=
X-Received: by 2002:a17:90a:7186:b0:273:e255:2235 with SMTP id i6-20020a17090a718600b00273e2552235mr1956017pjk.49.1694615286415;
        Wed, 13 Sep 2023 07:28:06 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IGGHZmimC9mnMW6b57ZjnZ2lUInPnWiG04QRlLcJ+Qoxvk/Z41/KM7k9+M28aV3Xg+ds50lOtDapCfAoodB/FE=
X-Received: by 2002:a17:90a:7186:b0:273:e255:2235 with SMTP id
 i6-20020a17090a718600b00273e2552235mr1955991pjk.49.1694615286013; Wed, 13 Sep
 2023 07:28:06 -0700 (PDT)
MIME-Version: 1.0
References: <20230831093252.2461282-1-ray.huang@amd.com> <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com>
 <11c227e8-a464-41ce-a435-82c570746388@daynix.com> <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
 <cf99ac00-6f48-4778-b319-6079a931ba5d@daynix.com> <CADSE00+6zcT7iKR0JW1Bk8es6HtBpzAKa9JW6u5yyjDoLPw2KQ@mail.gmail.com>
 <5e88f5d5-5aa2-4052-b250-69c2a443344f@daynix.com> <CADSE00+BUq-6jKH3v2PYNThn+9Z4UCFcr3Cv9Z48eUX0b=6ymA@mail.gmail.com>
 <3918c96c-f106-494d-8e97-6d86cef8df27@daynix.com> <CADSE00LNYm+vKaYwnTAdECGUXPCfiJ7aLqszDuqSzCLLhVOHhQ@mail.gmail.com>
In-Reply-To: <CADSE00LNYm+vKaYwnTAdECGUXPCfiJ7aLqszDuqSzCLLhVOHhQ@mail.gmail.com>
From: Albert Esteve <aesteve@redhat.com>
Date: Wed, 13 Sep 2023 16:27:54 +0200
Message-ID: <CADSE00KktGwVWD=VOv8YasycZjcZxZee6Zrq3Md4+uHT6i50NQ@mail.gmail.com>
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>, 
	"Michael S . Tsirkin" <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, 
	Antonio Caggiano <antonio.caggiano@collabora.com>, 
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, 
	Dmitry Osipenko <dmitry.osipenko@collabora.com>, =?UTF-8?B?QWxleCBCZW5uw6ll?= <alex.bennee@linaro.org>, 
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
	Gurchetan Singh <gurchetansingh@chromium.org>, "ernunes@redhat.com" <ernunes@redhat.com>, 
	=?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= <philmd@linaro.org>, 
	Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	"Deucher, Alexander" <Alexander.Deucher@amd.com>, "Koenig, Christian" <Christian.Koenig@amd.com>, 
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>, 
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>, 
	"Huang, Honglei1" <Honglei1.Huang@amd.com>, "Zhang, Julia" <Julia.Zhang@amd.com>, 
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: multipart/alternative; boundary="0000000000002772a006053e5e99"

--0000000000002772a006053e5e99
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Sep 13, 2023 at 4:18=E2=80=AFPM Albert Esteve <aesteve@redhat.com> =
wrote:

>
>
> On Wed, Sep 13, 2023 at 3:43=E2=80=AFPM Akihiko Odaki <akihiko.odaki@dayn=
ix.com>
> wrote:
>
>> On 2023/09/13 21:58, Albert Esteve wrote:
>> >
>> >
>> > On Wed, Sep 13, 2023 at 2:22=E2=80=AFPM Akihiko Odaki <akihiko.odaki@d=
aynix.com
>> > <mailto:akihiko.odaki@daynix.com>> wrote:
>> >
>> >     On 2023/09/13 20:34, Albert Esteve wrote:
>> >      >
>> >      >
>> >      > On Wed, Sep 13, 2023 at 12:34=E2=80=AFPM Akihiko Odaki
>> >     <akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>
>> >      > <mailto:akihiko.odaki@daynix.com
>> >     <mailto:akihiko.odaki@daynix.com>>> wrote:
>> >      >
>> >      >     On 2023/09/13 16:55, Albert Esteve wrote:
>> >      >      > Hi Antonio,
>> >      >      >
>> >      >      > If I'm not mistaken, this patch is related with:
>> >      >      >
>> >      >
>> >     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.htm=
l
>> >     <
>> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>
>> >      >
>> >       <
>> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
>> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>
>> >      >      >
>> >      >
>> >       <
>> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
>> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>
>> >      >
>> >       <
>> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
>> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>
>> >      >      > IMHO, ideally, virtio-gpu and vhost-user-gpu both, would
>> >     use the
>> >      >      > infrastructure from the patch I linked to store the
>> >      >      > virtio objects, so that they can be later shared with
>> >     other devices.
>> >      >
>> >      >     I don't think such sharing is possible because the resource=
s
>> are
>> >      >     identified by IDs that are local to the device. That also
>> >     complicates
>> >      >     migration.
>> >      >
>> >      >     Regards,
>> >      >     Akihiko Odaki
>> >      >
>> >      > Hi Akihiko,
>> >      >
>> >      > As far as I understand, the feature to export dma-bufs from the
>> >      > virtgpu was introduced as part of the virtio cross-device shari=
ng
>> >      > proposal [1]. Thus, it shall be posible. When
>> virtgpu ASSING_UUID,
>> >      > it exports and identifies the dmabuf resource, so that when the
>> >     dmabuf gets
>> >      > shared inside the guest (e.g., with virtio-video), we can use t=
he
>> >     assigned
>> >      > UUID to find the dmabuf in the host (using the patch that I
>> >     linked above),
>> >      > and import it.
>> >      >
>> >      > [1] - https://lwn.net/Articles/828988/
>> >     <https://lwn.net/Articles/828988/> <
>> https://lwn.net/Articles/828988/
>> >     <https://lwn.net/Articles/828988/>>
>> >
>> >     The problem is that virtio-gpu can have other kind of resources li=
ke
>> >     pixman and OpenGL textures and manage them and DMA-BUFs with unifi=
ed
>> >     resource ID.
>> >
>> >
>> > I see.
>> >
>> >
>> >     So you cannot change:
>> >     g_hash_table_insert(g->resource_uuids,
>> >     GUINT_TO_POINTER(assign.resource_id), uuid);
>> >     by:
>> >     virtio_add_dmabuf(uuid, assign.resource_id);
>> >
>> >     assign.resource_id is not DMA-BUF file descriptor, and the
>> underlying
>> >     resource my not be DMA-BUF at first place.
>> >
>> >
>> > I didn't really look into the patch in-depth, so the code was intended
>> > to give an idea of how the implementation would look like with
>> > the cross-device patch API. Indeed, it is not the resource_id,
>> > (I just took a brief look at the virtio specificacion 1.2), but the
>> > underlying
>> > resource what we want to use here.
>> >
>> >
>> >     Also, since this lives in the common code that is not used only by
>> >     virtio-gpu-gl but also virtio-gpu, which supports migration, we al=
so
>> >     need to take care of that. It is not a problem for DMA-BUF as
>> >     DMA-BUF is
>> >     not migratable anyway, but the situation is different in this case=
.
>> >
>> >     Implementing cross-device sharing is certainly a possibility, but
>> that
>> >     requires more than dealing with DMA-BUFs.
>> >
>> >
>> > So, if I understood correctly, dmabufs are just a subset of the
>> resources
>> > that the gpu manages, or can assign UUIDs to. I am not sure why
>> > the virt gpu driver would want to send a ASSIGN_UUID for anything
>> > that is not a dmabuf (are we sure it does?), but I am not super
>> familiarized
>> > with virtgpu to begin with.
>>
>> In my understanding, an resource will be first created as OpenGL or
>> Vulkan textures and then exported as a DMA-BUF file descriptor. For
>> these resource types exporting/importing code is mandatory.
>>
>> For pixman buffers (i.e., non-virgl device), I don't see a compelling
>> reason to have cross-device sharing. It is possible to omit resource
>> UUID feature from non-virgl device to avoid implementing complicated
>> migration.
>>
>
> I see, thanks for the clarification.
> I would assume you could avoid the UUID feature for those resources, but
> I will need to check the driver implementation. It is worth checking
> though, if
> that would simplify the implementation.
>
>
>>
>> > But I see that internally, the GPU specs relate a UUID with a
>> resource_id,
>> > so we still need both tables:
>> > - one to relate UUID with resource_id to be able to locate the
>> > underlying resource
>> > - the table that holds the dmabuf with the UUID for cross-device shari=
ng
>> >
>> > With that in mind, sounds to me that the support for cross-device
>> > sharing could
>> > be added on top of this patch, once
>> > https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html
>> > <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html>
>> > lands.
>>
>>
Also, to clarify what I stated here:
I am not trying to get your patch blocked until the other one lands.
I think both could be integrated in parallel, and then have virtgpu
use the cross-device sharing API on top of your patch.

Regards,
Albert


> That is possible, but I think it's better to implement cross-device
>> sharing at the same time introducing virtio-dmabuf.
>>
>> The current design of virtio-dmabuf looks somewhat inconsistent; it's
>> named "dmabuf", but internally the UUIDs are stored into something named
>> "resource_uuids" and it has SharedObjectType so it's more like a generic
>> resource sharing mechanism. If you actually have an implementation of
>> cross-device sharing using virtio-dmabuf, it will be clear what kind of
>> feature is truly necessary.
>>
>>
> Yeah, the file was named as virtio-dmabuf following the kernel
> implementation. Also, because for the moment it only aims to share
> dmabufs. However, virtio specs leave the virtio object defintion vague [1=
]
> (I guess purposely). It is up to the specific devices to define what an
> object
> means for them. So the implementation tries to follow that, and
> leave the contents of the table generic. The table can hold any kind of
> object,
> and the API exposes type-specific functions (for dmabufs, or others).
>
> [1] -
> https://docs.oasis-open.org/virtio/virtio/v1.2/csd01/virtio-v1.2-csd01.ht=
ml#x1-10500011
>
>
>> Regards,
>> Akihiko Odaki
>>
>>

--0000000000002772a006053e5e99
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div><div dir=3D"ltr" class=3D"gmail_sign=
ature"><div dir=3D"ltr"><br></div></div></div></div><br><div class=3D"gmail=
_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Wed, Sep 13, 2023 at 4:18=
=E2=80=AFPM Albert Esteve &lt;<a href=3D"mailto:aesteve@redhat.com">aesteve=
@redhat.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=
=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding=
-left:1ex"><div dir=3D"ltr"><div dir=3D"ltr"><div><div dir=3D"ltr" class=3D=
"gmail_signature"><div dir=3D"ltr"><br></div></div></div></div><br><div cla=
ss=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Wed, Sep 13, 20=
23 at 3:43=E2=80=AFPM Akihiko Odaki &lt;<a href=3D"mailto:akihiko.odaki@day=
nix.com" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt; wrote:<br></div=
><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border=
-left:1px solid rgb(204,204,204);padding-left:1ex">On 2023/09/13 21:58, Alb=
ert Esteve wrote:<br>
&gt; <br>
&gt; <br>
&gt; On Wed, Sep 13, 2023 at 2:22=E2=80=AFPM Akihiko Odaki &lt;<a href=3D"m=
ailto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com<=
/a> <br>
&gt; &lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blan=
k">akihiko.odaki@daynix.com</a>&gt;&gt; wrote:<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0On 2023/09/13 20:34, Albert Esteve wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; On Wed, Sep 13, 2023 at 12:34=E2=80=AFPM Akih=
iko Odaki<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"mailto:akihiko.odaki@daynix.com" tar=
get=3D"_blank">akihiko.odaki@daynix.com</a> &lt;mailto:<a href=3D"mailto:ak=
ihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;<=
br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; &lt;mailto:<a href=3D"mailto:akihiko.odaki@da=
ynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;&gt;&gt; wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0On 2023/09/13 16:55, Alber=
t Esteve wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; Hi Antonio,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; If I&#39;m not mista=
ken, this patch is related with:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lists.gnu.org/archive/html/qemu-=
devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https://l=
ists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive/html/q=
emu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https=
://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; IMHO, ideally, virti=
o-gpu and vhost-user-gpu both, would<br>
&gt;=C2=A0 =C2=A0 =C2=A0use the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; infrastructure from =
the patch I linked to store the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; virtio objects, so t=
hat they can be later shared with<br>
&gt;=C2=A0 =C2=A0 =C2=A0other devices.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0I don&#39;t think such sha=
ring is possible because the resources are<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0identified by IDs that are=
 local to the device. That also<br>
&gt;=C2=A0 =C2=A0 =C2=A0complicates<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0migration.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0Regards,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0Akihiko Odaki<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; Hi Akihiko,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; As far as I understand, the feature to export=
 dma-bufs=C2=A0from the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; virtgpu was introduced as part of the virtio =
cross-device sharing<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; proposal [1]. Thus, it shall be posible. When=
 virtgpu=C2=A0ASSING_UUID,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; it exports and identifies the dmabuf resource=
, so that when the<br>
&gt;=C2=A0 =C2=A0 =C2=A0dmabuf gets<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; shared inside the guest (e.g., with virtio-vi=
deo), we can use the<br>
&gt;=C2=A0 =C2=A0 =C2=A0assigned<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; UUID to find the dmabuf in the host (using th=
e patch that I<br>
&gt;=C2=A0 =C2=A0 =C2=A0linked above),<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; and import it.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; [1] - <a href=3D"https://lwn.net/Articles/828=
988/" rel=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/=
</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
 &lt;<a href=3D"https://lwn.net/Articles/828988/" rel=3D"noreferrer" target=
=3D"_blank">https://lwn.net/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
&gt;<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0The problem is that virtio-gpu can have other kind =
of resources like<br>
&gt;=C2=A0 =C2=A0 =C2=A0pixman and OpenGL textures and manage them and DMA-=
BUFs with unified<br>
&gt;=C2=A0 =C2=A0 =C2=A0resource ID.<br>
&gt; <br>
&gt; <br>
&gt; I see.<br>
&gt; <br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0So you cannot change:<br>
&gt;=C2=A0 =C2=A0 =C2=A0g_hash_table_insert(g-&gt;resource_uuids,<br>
&gt;=C2=A0 =C2=A0 =C2=A0GUINT_TO_POINTER(assign.resource_id), uuid);<br>
&gt;=C2=A0 =C2=A0 =C2=A0by:<br>
&gt;=C2=A0 =C2=A0 =C2=A0virtio_add_dmabuf(uuid, assign.resource_id);<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0assign.resource_id is not DMA-BUF file descriptor, =
and the underlying<br>
&gt;=C2=A0 =C2=A0 =C2=A0resource my not be DMA-BUF at first place.<br>
&gt; <br>
&gt; <br>
&gt; I didn&#39;t really look into the patch in-depth, so the=C2=A0code was=
 intended<br>
&gt; to give an idea of how the implementation would look like with<br>
&gt; the cross-device patch API. Indeed, it is not the resource_id,<br>
&gt; (I just took a brief look at the virtio specificacion=C2=A01.2), but t=
he <br>
&gt; underlying<br>
&gt; resource what we want to use here.<br>
&gt; <br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0Also, since this lives in the common code that is n=
ot used only by<br>
&gt;=C2=A0 =C2=A0 =C2=A0virtio-gpu-gl but also virtio-gpu, which supports m=
igration, we also<br>
&gt;=C2=A0 =C2=A0 =C2=A0need to take care of that. It is not a problem for =
DMA-BUF as<br>
&gt;=C2=A0 =C2=A0 =C2=A0DMA-BUF is<br>
&gt;=C2=A0 =C2=A0 =C2=A0not migratable anyway, but the situation is differe=
nt in this case.<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0Implementing cross-device sharing is certainly a po=
ssibility, but that<br>
&gt;=C2=A0 =C2=A0 =C2=A0requires more than dealing with DMA-BUFs.<br>
&gt; <br>
&gt; <br>
&gt; So, if I understood correctly, dmabufs=C2=A0are just a subset of the r=
esources<br>
&gt; that the gpu manages, or can assign UUIDs to. I am not sure why<br>
&gt; the virt gpu driver would want to send a ASSIGN_UUID for anything<br>
&gt; that is not a dmabuf (are we sure it does?), but I am not super famili=
arized<br>
&gt; with virtgpu=C2=A0to begin with.<br>
<br>
In my understanding, an resource will be first created as OpenGL or <br>
Vulkan textures and then exported as a DMA-BUF file descriptor. For <br>
these resource types exporting/importing code is mandatory.<br>
<br>
For pixman buffers (i.e., non-virgl device), I don&#39;t see a compelling <=
br>
reason to have cross-device sharing. It is possible to omit resource <br>
UUID feature from non-virgl device to avoid implementing complicated <br>
migration.<br></blockquote><div><br></div><div>I see, thanks for the clarif=
ication.</div><div>I would assume you could avoid the UUID feature for thos=
e resources, but</div><div>I will need to check the driver implementation. =
It is worth checking though, if</div><div>that would simplify the implement=
ation.</div><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"mar=
gin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1=
ex">
<br>
&gt; But I see that internally, the GPU specs relate a UUID with a resource=
_id,<br>
&gt; so we still need both tables:<br>
&gt; - one to relate UUID with resource_id to be able to locate the <br>
&gt; underlying resource<br>
&gt; - the table that holds the dmabuf with the UUID for cross-device shari=
ng<br>
&gt; <br>
&gt; With that in mind, sounds to me that the support for cross-device <br>
&gt; sharing could<br>
&gt; be added on top of this patch, once <br>
&gt; <a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01=
850.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archiv=
e/html/qemu-devel/2023-09/msg01850.html</a> <br>
&gt; &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/m=
sg01850.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/ar=
chive/html/qemu-devel/2023-09/msg01850.html</a>&gt;<br>
&gt; lands.<br>
<br></blockquote></div></div></blockquote><div><br></div><div>Also, to clar=
ify what I stated here:</div><div>I am not trying to get your patch blocked=
 until the other one lands.</div><div>I think both could be integrated in p=
arallel, and then have virtgpu</div><div>use the cross-device sharing API o=
n top of your patch.</div><div><br></div><div>Regards,</div><div>Albert</di=
v><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0p=
x 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div d=
ir=3D"ltr"><div class=3D"gmail_quote"><blockquote class=3D"gmail_quote" sty=
le=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);paddi=
ng-left:1ex">
That is possible, but I think it&#39;s better to implement cross-device <br=
>
sharing at the same time introducing virtio-dmabuf.<br>
<br>
The current design of virtio-dmabuf looks somewhat inconsistent; it&#39;s <=
br>
named &quot;dmabuf&quot;, but internally the UUIDs are stored into somethin=
g named <br>
&quot;resource_uuids&quot; and it has SharedObjectType so it&#39;s more lik=
e a generic <br>
resource sharing mechanism. If you actually have an implementation of <br>
cross-device sharing using virtio-dmabuf, it will be clear what kind of <br=
>
feature is truly necessary.<br>
<br></blockquote><div><br></div><div>Yeah, the file was named as virtio-dma=
buf following the kernel</div><div>implementation. Also, because for the mo=
ment it only aims to share</div><div>dmabufs. However, virtio specs leave t=
he virtio object defintion=C2=A0vague [1]</div><div>(I guess purposely). It=
 is up to the specific devices to define what an object</div><div>means for=
 them. So the implementation tries to follow that, and</div><div>leave the =
contents of the table generic. The table can hold any kind of object,</div>=
<div>and the API exposes type-specific functions (for dmabufs,=C2=A0or othe=
rs).</div><div><br></div><div>[1] -=C2=A0<a href=3D"https://docs.oasis-open=
.org/virtio/virtio/v1.2/csd01/virtio-v1.2-csd01.html#x1-10500011" target=3D=
"_blank">https://docs.oasis-open.org/virtio/virtio/v1.2/csd01/virtio-v1.2-c=
sd01.html#x1-10500011</a></div><div>=C2=A0</div><blockquote class=3D"gmail_=
quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,=
204);padding-left:1ex">
Regards,<br>
Akihiko Odaki<br>
<br>
</blockquote></div></div>
</blockquote></div></div>

--0000000000002772a006053e5e99--



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 14:36:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 14:36:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601456.937446 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQyy-0000qn-HJ; Wed, 13 Sep 2023 14:36:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601456.937446; Wed, 13 Sep 2023 14:36:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQyy-0000qg-ES; Wed, 13 Sep 2023 14:36:44 +0000
Received: by outflank-mailman (input) for mailman id 601456;
 Wed, 13 Sep 2023 14:36:42 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eUH4=E5=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qgQyw-0000pR-Js
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 14:36:42 +0000
Received: from NAM02-DM3-obe.outbound.protection.outlook.com
 (mail-dm3nam02on2060e.outbound.protection.outlook.com
 [2a01:111:f400:7e83::60e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f29b236f-5242-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 16:36:38 +0200 (CEST)
Received: from MN2PR17CA0005.namprd17.prod.outlook.com (2603:10b6:208:15e::18)
 by MW4PR12MB6975.namprd12.prod.outlook.com (2603:10b6:303:20a::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Wed, 13 Sep
 2023 14:36:34 +0000
Received: from BL6PEPF0001AB71.namprd02.prod.outlook.com
 (2603:10b6:208:15e:cafe::ac) by MN2PR17CA0005.outlook.office365.com
 (2603:10b6:208:15e::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19 via Frontend
 Transport; Wed, 13 Sep 2023 14:36:34 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB71.mail.protection.outlook.com (10.167.242.164) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Wed, 13 Sep 2023 14:36:33 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 09:36:33 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 09:36:33 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 13 Sep 2023 09:36:32 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f29b236f-5242-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YpFKm68HuMJuNfdF5dPEp6PosngznQNBKD9l128cyhOP2wZPWGZhxeyQ/2cDpVq7OQjju+hlLlJ+YM87ECSWlTiARNLoI2MaND471TN5KcEdd+/Azxgu6nj8c2UvY7DavAcNlN4hKtkif5lbHDmPdb5OxEFOWrOBHi7dQVbHPuwZqAGqD+jUnR6SIcYMnD5g9xXMTimUL/xxjGr94L0yhkvqzLNvTsV27XrNEYSzNsccDmom+AEPsrCZZ7ASLrkHGs0dJJoJFGgVr1v+xY0pd5plLQL3haPiIZGewsN4c+X/GNiqmeXUWGbCj8J3EwgNVMCKDp/lqIQfk3Z5q0b3Sw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HndlCYoQWyPa6ab9cSwVvMxSi5SWH3VjeAwFgDmY+Bk=;
 b=ezmcWrYIZH5xkGdfs+4bPGGP3E/lmF218uuIZDCDFR8W7SSW7iCqCOX4y4cdyG0wlCPgF3MqbRQ6YvXNzx8tyWWt4zpN8+zeWFbF+MK9ir7fGg/CblKVw2wO5UA+oBI+LE67J2LUtgb9Wpz7+KAPL84THqO4nzx6MQYMFeEA/6Tqxz6hgd3G+XnrXEtfeKay7Bae1IaubmVZipCQpk8M7CbzAdqSf76L2UYRXuQEIRd7NWD6XulM/FZIxe3C++l6JfzixxT+1eQz5r+t2g6SP7KiEvr8JIYXG+XNHONA2vtWDUrPkAHGpONT2dqYsGW+tGbEzmsGEa9hGuFhcqzdVw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HndlCYoQWyPa6ab9cSwVvMxSi5SWH3VjeAwFgDmY+Bk=;
 b=ikVQ/EiI4Or4KAsmycIYXgy9CpAvvHB8tlwPIeSm5xF22MOHjh3UYM1ce/2nDVf/SEzzDxs7jjqrRmnwfQnL92fpZFq6Q/ePozWgjqXBA35OPY3cTh5ikP1wNO+HIm+xcNMSU2RjlnwlmTjSDvsO1BI4LAVtbCr9xA/HcwJUMhg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Julien Grall <julien@xen.org>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: [PATCH v7 0/2] vPCI capabilities filtering
Date: Wed, 13 Sep 2023 10:35:45 -0400
Message-ID: <20230913143550.14565-1-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB71:EE_|MW4PR12MB6975:EE_
X-MS-Office365-Filtering-Correlation-Id: 3d492ac3-827b-4cff-9b8a-08dbb466d409
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/Ex+Lwmt/LW2hcmSrSosj1rpsaNapspj6BeByH8R5GWlPtTBXMC3lOZNZ4NO2hez8CbMQ/hjHvmaAx38od3HphaV/9iDn/m66lFw8YG9iwQ2+k+85mKG3iQDRxTXRzbM/zQxdw4VXkBVvW54ZsBbAamHuhpLl8xUHUmOtkbju+G+c6V3/8GsaBdf6VLAxw3YhmLGgGOYhbl4dPSAlnURvZ+aExQaz3Bk3wW95OWmDmmgxQfih0XTEIylnUor+yeWWbdqmV0AOLJG8nusI6VRByMDIIXKieQ4j5kr1Ddkf2Y5mCg0ct9tEzKhJCj9c6r23BAfnta3gbp8NBLlgPJD7Se5Ux7RIdw24EBOeHXwko/UZcU8U+9YQ0Y1Y7dGLK4BuFMpINRFe37I4zZMG04JM6Hn5u4pnzwSl4Sp+Tl+nW8NSYSjY4wc4tM0Fihe4R/EQhWYsVa3y1qOVsD7XnY3Q4DiTztSOyrUG7CTxUGRiM5R8NVPeb85FJBnkbmu4MYSaUaC5WIABxHrLM+CeJL+qpHn1Wk0Y8o/RpCjUY/Ghmu4eP7mS0rLrgqQUND3EqdxWmRgS4g2B7/oFhyehoEwQXFSELO9Qf2YqpoAVGNF6L6ue2iwSditxq5ed1+h5WdmPeKPRDs9zfACYl/+ZBby1gdnoKEcEGU7aZLS81jd7+N4IjObN/LOS8PeEqrhgDSMaXggAzCv6ryZ8bdXVPkHknAIGhxREQhImcrmbdzrMD9fIlFv5w6sYYggBZJylTG9kdgTsZ98BkuUydNivcUa9w==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(346002)(376002)(136003)(39860400002)(451199024)(82310400011)(186009)(1800799009)(36840700001)(46966006)(40470700004)(4326008)(8936002)(8676002)(26005)(5660300002)(83380400001)(1076003)(2616005)(336012)(47076005)(40480700001)(44832011)(36860700001)(426003)(66899024)(41300700001)(40460700003)(2906002)(6666004)(70206006)(70586007)(6916009)(54906003)(316002)(82740400003)(86362001)(966005)(81166007)(478600001)(356005)(36756003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 14:36:33.9651
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 3d492ac3-827b-4cff-9b8a-08dbb466d409
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL6PEPF0001AB71.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB6975

This small series enables vPCI to filter which PCI capabilities we expose to a
domU. This series adds vPCI register handlers within
xen/drivers/vpci/header.c:init_bars(), along with some supporting functions.

Note there are minor rebase conflicts with the in-progress vPCI series [1].
These conflicts fall into the category of functions and code being added
adjacent to one another, so are easily resolved. I did not identify any
dependency on the vPCI locking work, and the two series deal with different
aspects of emulating the PCI header.

Future work may involve adding handlers for more registers in the vPCI header,
such as VID/DID, etc. Future work may also involve exposing additional
capabilities to the guest for broader device/driver support.

v6->v7:
* address feedback in ("xen/vpci: header: status register handler")
* drop ("xen/pci: convert pci_find_*cap* to pci_sbdf_t") and
  ("x86/msi: rearrange read_pci_mem_bar slightly") as they were committed

v5->v6:
* drop ("xen/pci: update PCI_STATUS_* constants") as it has been committed

v4->v5:
* drop ("x86/msi: remove some unused-but-set-variables") as it has been
  committed
* add ("xen/pci: update PCI_STATUS_* constants")
* squash ro_mask patch

v3->v4:
* drop "xen/pci: address a violation of MISRA C:2012 Rule 8.3" as it has been
  committed
* re-order status register handler and capabilities filtering patches
* split an unrelated change from ("xen/pci: convert pci_find_*cap* to pci_sbdf_t")
  into its own patch
* add new patch ("x86/msi: rearrange read_pci_mem_bar slightly") based on
  feedback
* add new RFC patch ("xen/vpci: support ro mask")

v2->v3:
* drop RFC "xen/vpci: header: avoid cast for value passed to vpci_read_val"
* minor misra C violation fixup in preparatory patch
* switch to pci_sbdf_t in preparatory patch
* introduce status handler

v1->v2:
* squash helper functions into the patch where they are used to avoid transient
  dead code situation
* add new RFC patch, possibly throwaway, to get an idea of what it would look
  like to get rid of the (void *)(uintptr_t) cast by introducing a new memory
  allocation

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02361.html

Stewart Hildebrand (2):
  xen/vpci: header: status register handler
  xen/vpci: header: filter PCI capabilities

 xen/drivers/pci/pci.c      | 26 +++++++----
 xen/drivers/vpci/header.c  | 92 ++++++++++++++++++++++++++++++++++++++
 xen/drivers/vpci/vpci.c    | 67 ++++++++++++++++++++++-----
 xen/include/xen/pci.h      |  3 ++
 xen/include/xen/pci_regs.h |  9 ++++
 xen/include/xen/vpci.h     | 13 ++++++
 6 files changed, 189 insertions(+), 21 deletions(-)


base-commit: 6aa25c32180ab59081c73bae4c568367d9133a1f
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 14:37:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 14:37:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601462.937456 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQzT-0001Tr-2q; Wed, 13 Sep 2023 14:37:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601462.937456; Wed, 13 Sep 2023 14:37:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQzS-0001Tk-UK; Wed, 13 Sep 2023 14:37:14 +0000
Received: by outflank-mailman (input) for mailman id 601462;
 Wed, 13 Sep 2023 14:37:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eUH4=E5=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qgQzQ-0001Cp-PQ
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 14:37:12 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20622.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::622])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 058c23ea-5243-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 16:37:11 +0200 (CEST)
Received: from MN2PR06CA0002.namprd06.prod.outlook.com (2603:10b6:208:23d::7)
 by SJ0PR12MB5453.namprd12.prod.outlook.com (2603:10b6:a03:37f::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Wed, 13 Sep
 2023 14:37:08 +0000
Received: from BL6PEPF0001AB73.namprd02.prod.outlook.com
 (2603:10b6:208:23d:cafe::b3) by MN2PR06CA0002.outlook.office365.com
 (2603:10b6:208:23d::7) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19 via Frontend
 Transport; Wed, 13 Sep 2023 14:37:07 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB73.mail.protection.outlook.com (10.167.242.166) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Wed, 13 Sep 2023 14:37:07 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 09:37:05 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 09:36:49 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 13 Sep 2023 09:36:47 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 058c23ea-5243-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CwVTX60YABCVOG1hJwsr36Tuouk4goqfpLP6QRDlV9Tgv8FOQehWHOpmJQDrrBGZ9IhoSIUL4lW/6Wo5b5c+aK/yCCF2D/3QYCWfr4+VZ6hKtMjw2QmV64Sc52WkYqCz68arhKtEXEv6ODBuhKWGnKYBuwlNslpMnHrBPgh2v/NuonJrp67L8RBHGedgO5u6WknB1QGCHZHdeB4Y9s9E3bIcC9wejOsszczRP4RRpKEzMwak3z8GxD3MABLPh+vmknQvTplTxHBl0D/ac6eDUU35SpJP/yTACDOAC1hi5UDMRclBvNMFe/8Y38PCW1MrKWFkhC+d/t4iY1KODr5AxA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Ahhd5zJ3mfG/9xPdvxCSZHAmhExddjzLft5mnxormRA=;
 b=ea6kPzsVKyuniLB9AkULCM4Y15unhnop+ePLpnOr3qctd0nPZaTy5g1jlG+lKrwxEiKNrxHYR4g75nGXwY7oh3jHT9xYkATh0ScFsoA/TYy2Zn8w6Z/IpxQYonpXGo1YtwA0g8qVAT9jdhre9BsA28I5YTX0M2OvHKDnNIVLVmkyKKIGABnmXVBWUuvlDd3sfgOTCtZtokCE5a5/8SSPExLtvTBwL+liIjAKg7aIb9UBZlkIpKgHXHODGY2cUDuOL7lWpDpPJFy+t7YFwro0wf88u7L9tN4veVvFCCsiUkz2YBgk2ghZr2YMkLsluT35Dfc8WtpEnq65kHAw72DUiw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Ahhd5zJ3mfG/9xPdvxCSZHAmhExddjzLft5mnxormRA=;
 b=zCJ6aH9vaW7Qb2ML66eAkTipI1HUgElPYihrXOol77TYt7zCrkLkDRriCfxbUKR3XLAnMqWifL3qExAVCz7ubvuMAcrP/OUvDYzzE4lsZjNN2+FB4GMyyKA3MkDIbAkFK4WAugsLEfXLhGIfFtZuaFgpcofC6FE0/PcjUmqkLNg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Julien Grall <julien@xen.org>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: [PATCH v7 1/2] xen/vpci: header: status register handler
Date: Wed, 13 Sep 2023 10:35:46 -0400
Message-ID: <20230913143550.14565-2-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20230913143550.14565-1-stewart.hildebrand@amd.com>
References: <20230913143550.14565-1-stewart.hildebrand@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB73:EE_|SJ0PR12MB5453:EE_
X-MS-Office365-Filtering-Correlation-Id: 5f605ac4-6fb6-474e-ee99-08dbb466e7d3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	v+DgMEUZ1EEbNCIzTG07BptWjCk5NwtKaQq+N4omEIiNU52pgEGl0gukmK6RrcYuj+tezbC2WvZlamNubROelCWF798XNR02fH2fu3/hgTCGuHNWeulqRkZ4V09oj3oudjg4d2nJD5JdTr4fnIqyHh+jSBLYT5Mjp9f71502LMb/34HZC1Itz7G3WEQEateEJ6FzXbClsHuY/tmjKthtsGLJEisa1l5GC/n6Gmy0ElybA7ITB2qMZGLo4yH0v98PYw1PMBJGzv5ptvmX+mmMbt/7iuBXzbjkHqfvBtiU43g/SfXdQDs2ETsFs6sdSCVZ5TmB6QKrGWm2Dts1vDd80G8CQfwDjmOElDYTjQv9poqEXWfxyCXf2NNcrWIyd/xYp8StzBzI/KgGHdlZMNzHu5MbJdr26/nDD69ZoKA6ow8iP5+W4HH0FMv2IGC2TJRgZjHUIxotCUvNE/F6v6QKBBTDvhx5kyrFJEHxTq1Dwj0ZEV9/5PHfrebL0+W1/G2QdRGHlvadRMxvub73ng3Bxv3ZY++dngbpK2HjXga3z0bazi3vU0U3jUu+4AnPYGzUmeX3kGyPJ8MLcJTJwKi9Qtj74NKCqrZoUoRpKBYjT9B6taBvmhAuTKol3bdby7+4xa+IHeuc6uD6TWagczWP1DYdHCcLb8VdwxhXVa+LVR1nCsHgUl8bir2rxBSGpvzcNUWK3aU40rdrlJfJ4W6ZnEhjqQdF00FCp6kSP98SHNlRLouQZC8ZcgkipnLE2+t0jjNhHRuFAOnnJLtZ7RPmEV10gDBKlMtsmsA6/dUii28=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(376002)(39860400002)(136003)(396003)(186009)(82310400011)(451199024)(1800799009)(46966006)(40470700004)(36840700001)(41300700001)(54906003)(316002)(82740400003)(2616005)(1076003)(70586007)(26005)(70206006)(47076005)(478600001)(81166007)(356005)(86362001)(4326008)(36756003)(8936002)(2906002)(6916009)(8676002)(5660300002)(44832011)(36860700001)(336012)(83380400001)(426003)(40460700003)(40480700001)(66899024)(36900700001)(357404004);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 14:37:07.0897
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5f605ac4-6fb6-474e-ee99-08dbb466e7d3
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL6PEPF0001AB73.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB5453

Introduce a handler for the PCI status register, with ability to mask the
capabilities bit. The status register contains RsvdZ bits, read-only bits, and
write-1-to-clear bits, so introduce bitmasks to handle these in vPCI. If a bit
in the bitmask is set, then the special meaning applies:

  rsvdz_mask: read as zero, guest write ignore (write zero to hardware)
  ro_mask: read normal, guest write ignore (preserve on write to hardware)
  rw1c_mask: read normal, write 1 to clear

The RsvdZ naming was borrowed from the PCI Express Base 4.0 specification.

Xen preserves the value of read-only bits on write to hardware, discarding the
guests write value.

The mask_cap_list flag will be set in a follow-on patch.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
---
v6->v7:
* re-work args passed to vpci_add_register_mask() (called in init_bars())
* also check for overlap of (rsvdz_mask & ro_mask) in add_register()
* slightly adjust masking operation in vpci_write_helper()

v5->v6:
* remove duplicate PCI_STATUS_CAP_LIST in constant definition
* style fixup in constant definitions
* s/res_mask/rsvdz_mask/
* combine a new masking operation into single line
* preserve r/o bits on write
* get rid of status_read. Instead, use rsvdz_mask for conditionally masking
  PCI_STATUS_CAP_LIST bit
* add comment about PCI_STATUS_CAP_LIST and rsvdp behavior
* add sanity checks in add_register
* move mask_cap_list from struct vpci_header to local variable

v4->v5:
* add support for res_mask
* add support for ro_mask (squash ro_mask patch)
* add constants for reserved, read-only, and rw1c masks

v3->v4:
* move mask_cap_list setting to the capabilities patch
* single pci_conf_read16 in status_read
* align mask_cap_list bitfield in struct vpci_header
* change to rw1c bit mask instead of treating whole register as rw1c
* drop subsystem prefix on renamed add_register function

v2->v3:
* new patch
---
 xen/drivers/vpci/header.c  | 16 +++++++++++
 xen/drivers/vpci/vpci.c    | 55 +++++++++++++++++++++++++++++---------
 xen/include/xen/pci_regs.h |  9 +++++++
 xen/include/xen/vpci.h     |  8 ++++++
 4 files changed, 76 insertions(+), 12 deletions(-)

diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index 767c1ba718d7..af267b75ac31 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -521,6 +521,7 @@ static int cf_check init_bars(struct pci_dev *pdev)
     struct vpci_header *header = &pdev->vpci->header;
     struct vpci_bar *bars = header->bars;
     int rc;
+    bool mask_cap_list = false;
 
     switch ( pci_conf_read8(pdev->sbdf, PCI_HEADER_TYPE) & 0x7f )
     {
@@ -544,6 +545,21 @@ static int cf_check init_bars(struct pci_dev *pdev)
     if ( rc )
         return rc;
 
+    /*
+     * Utilize rsvdz_mask to hide PCI_STATUS_CAP_LIST from the guest for now. If
+     * support for rsvdp (reserved & preserved) is added in the future, the
+     * rsvdp mask should be used instead.
+     */
+    rc = vpci_add_register_mask(pdev->vpci, vpci_hw_read16, vpci_hw_write16,
+                                PCI_STATUS, 2, NULL,
+                                PCI_STATUS_RSVDZ_MASK |
+                                    (mask_cap_list ? PCI_STATUS_CAP_LIST : 0),
+                                PCI_STATUS_RO_MASK &
+                                    ~(mask_cap_list ? PCI_STATUS_CAP_LIST : 0),
+                                PCI_STATUS_RW1C_MASK);
+    if ( rc )
+        return rc;
+
     if ( pdev->ignore_bars )
         return 0;
 
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index 3bec9a4153da..b4cde7db1b3f 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -29,6 +29,9 @@ struct vpci_register {
     unsigned int offset;
     void *private;
     struct list_head node;
+    uint32_t rsvdz_mask;
+    uint32_t ro_mask;
+    uint32_t rw1c_mask;
 };
 
 #ifdef __XEN__
@@ -145,9 +148,16 @@ uint32_t cf_check vpci_hw_read32(
     return pci_conf_read32(pdev->sbdf, reg);
 }
 
-int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
-                      vpci_write_t *write_handler, unsigned int offset,
-                      unsigned int size, void *data)
+void cf_check vpci_hw_write16(
+    const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data)
+{
+    pci_conf_write16(pdev->sbdf, reg, val);
+}
+
+static int add_register(struct vpci *vpci, vpci_read_t *read_handler,
+                        vpci_write_t *write_handler, unsigned int offset,
+                        unsigned int size, void *data, uint32_t rsvdz_mask,
+                        uint32_t ro_mask, uint32_t rw1c_mask)
 {
     struct list_head *prev;
     struct vpci_register *r;
@@ -155,7 +165,8 @@ int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
     /* Some sanity checks. */
     if ( (size != 1 && size != 2 && size != 4) ||
          offset >= PCI_CFG_SPACE_EXP_SIZE || (offset & (size - 1)) ||
-         (!read_handler && !write_handler) )
+         (!read_handler && !write_handler) || (rsvdz_mask & ro_mask) ||
+         (rsvdz_mask & rw1c_mask) || (ro_mask & rw1c_mask) )
         return -EINVAL;
 
     r = xmalloc(struct vpci_register);
@@ -167,6 +178,9 @@ int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
     r->size = size;
     r->offset = offset;
     r->private = data;
+    r->rsvdz_mask = rsvdz_mask & (0xffffffffU >> (32 - 8 * size));
+    r->ro_mask = ro_mask & (0xffffffffU >> (32 - 8 * size));
+    r->rw1c_mask = rw1c_mask & (0xffffffffU >> (32 - 8 * size));
 
     spin_lock(&vpci->lock);
 
@@ -193,6 +207,23 @@ int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
     return 0;
 }
 
+int vpci_add_register(struct vpci *vpci, vpci_read_t *read_handler,
+                      vpci_write_t *write_handler, unsigned int offset,
+                      unsigned int size, void *data)
+{
+    return add_register(vpci, read_handler, write_handler, offset, size, data,
+                        0, 0, 0);
+}
+
+int vpci_add_register_mask(struct vpci *vpci, vpci_read_t *read_handler,
+                           vpci_write_t *write_handler, unsigned int offset,
+                           unsigned int size, void *data, uint32_t rsvdz_mask,
+                           uint32_t ro_mask, uint32_t rw1c_mask)
+{
+    return add_register(vpci, read_handler, write_handler, offset, size, data,
+                        rsvdz_mask, ro_mask, rw1c_mask);
+}
+
 int vpci_remove_register(struct vpci *vpci, unsigned int offset,
                          unsigned int size)
 {
@@ -376,6 +407,7 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size)
         }
 
         val = r->read(pdev, r->offset, r->private);
+        val &= ~r->rsvdz_mask;
 
         /* Check if the read is in the middle of a register. */
         if ( r->offset < emu.offset )
@@ -407,26 +439,25 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size)
 
 /*
  * Perform a maybe partial write to a register.
- *
- * Note that this will only work for simple registers, if Xen needs to
- * trap accesses to rw1c registers (like the status PCI header register)
- * the logic in vpci_write will have to be expanded in order to correctly
- * deal with them.
  */
 static void vpci_write_helper(const struct pci_dev *pdev,
                               const struct vpci_register *r, unsigned int size,
                               unsigned int offset, uint32_t data)
 {
+    uint32_t val = 0;
+
     ASSERT(size <= r->size);
 
-    if ( size != r->size )
+    if ( (size != r->size) || r->ro_mask )
     {
-        uint32_t val;
-
         val = r->read(pdev, r->offset, r->private);
+        val &= ~r->rw1c_mask;
         data = merge_result(val, data, size, offset);
     }
 
+    data &= ~(r->rsvdz_mask | r->ro_mask);
+    data |= val & r->ro_mask;
+
     r->write(pdev, r->offset, data & (0xffffffffU >> (32 - 8 * r->size)),
              r->private);
 }
diff --git a/xen/include/xen/pci_regs.h b/xen/include/xen/pci_regs.h
index 84b18736a85d..b72131729db6 100644
--- a/xen/include/xen/pci_regs.h
+++ b/xen/include/xen/pci_regs.h
@@ -66,6 +66,15 @@
 #define  PCI_STATUS_REC_MASTER_ABORT	0x2000 /* Set on master abort */
 #define  PCI_STATUS_SIG_SYSTEM_ERROR	0x4000 /* Set when we drive SERR */
 #define  PCI_STATUS_DETECTED_PARITY	0x8000 /* Set on parity error */
+#define  PCI_STATUS_RSVDZ_MASK		0x0006
+
+#define  PCI_STATUS_RO_MASK (PCI_STATUS_IMM_READY | PCI_STATUS_INTERRUPT | \
+    PCI_STATUS_CAP_LIST | PCI_STATUS_66MHZ | PCI_STATUS_UDF | \
+    PCI_STATUS_FAST_BACK | PCI_STATUS_DEVSEL_MASK)
+#define  PCI_STATUS_RW1C_MASK (PCI_STATUS_PARITY | \
+    PCI_STATUS_SIG_TARGET_ABORT | PCI_STATUS_REC_TARGET_ABORT | \
+    PCI_STATUS_REC_MASTER_ABORT | PCI_STATUS_SIG_SYSTEM_ERROR | \
+    PCI_STATUS_DETECTED_PARITY)
 
 #define PCI_CLASS_REVISION	0x08	/* High 24 bits are class, low 8 revision */
 #define PCI_REVISION_ID		0x08	/* Revision ID */
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 0b8a2a3c745b..7a5cca29e54c 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -37,6 +37,12 @@ int __must_check vpci_add_register(struct vpci *vpci,
                                    vpci_write_t *write_handler,
                                    unsigned int offset, unsigned int size,
                                    void *data);
+int __must_check vpci_add_register_mask(struct vpci *vpci,
+                                        vpci_read_t *read_handler,
+                                        vpci_write_t *write_handler,
+                                        unsigned int offset, unsigned int size,
+                                        void *data, uint32_t rsvdz_mask,
+                                        uint32_t ro_mask, uint32_t rw1c_mask);
 int __must_check vpci_remove_register(struct vpci *vpci, unsigned int offset,
                                       unsigned int size);
 
@@ -50,6 +56,8 @@ uint32_t cf_check vpci_hw_read16(
     const struct pci_dev *pdev, unsigned int reg, void *data);
 uint32_t cf_check vpci_hw_read32(
     const struct pci_dev *pdev, unsigned int reg, void *data);
+void cf_check vpci_hw_write16(
+    const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data);
 
 /*
  * Check for pending vPCI operations on this vcpu. Returns true if the vcpu
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 14:37:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 14:37:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601466.937466 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQzr-00026f-Ao; Wed, 13 Sep 2023 14:37:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601466.937466; Wed, 13 Sep 2023 14:37:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgQzr-00026T-85; Wed, 13 Sep 2023 14:37:39 +0000
Received: by outflank-mailman (input) for mailman id 601466;
 Wed, 13 Sep 2023 14:37:38 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eUH4=E5=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qgQzq-000263-Cu
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 14:37:38 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20602.outbound.protection.outlook.com
 [2a01:111:f400:7e88::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1418a764-5243-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 16:37:36 +0200 (CEST)
Received: from CY8PR22CA0014.namprd22.prod.outlook.com (2603:10b6:930:45::23)
 by DS0PR12MB6462.namprd12.prod.outlook.com (2603:10b6:8:c6::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Wed, 13 Sep
 2023 14:37:31 +0000
Received: from CY4PEPF0000FCC1.namprd03.prod.outlook.com
 (2603:10b6:930:45:cafe::61) by CY8PR22CA0014.outlook.office365.com
 (2603:10b6:930:45::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19 via Frontend
 Transport; Wed, 13 Sep 2023 14:37:31 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CY4PEPF0000FCC1.mail.protection.outlook.com (10.167.242.103) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Wed, 13 Sep 2023 14:37:31 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 09:37:30 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 13 Sep
 2023 09:37:30 -0500
Received: from ubuntu.mshome.net (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 13 Sep 2023 09:37:29 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1418a764-5243-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Hj2t+1vQx/qNthka0P5ykbpKORbIlNBY2SVHQ1bNQn4DauMAJZsikebLFq4Mj28HkR5vqxnm01PkQg9+sxatkoyYFExMT5EtDq+Yc+AlpQoaPr+tj/XSbALRrinCz9ZlX0xUmLuKYqSvY2mzO9bDs8s8Niu2eBznCDbxJW4EpKa61/pt1naVhZtaQ8/2iEpJJuw/3FqdDsOjJa5iDq7xu7NONId97P/XuV3GxC0qp4wMrfmnnaP55NUSWZE67LdmVpip9OzV3yJGwRdwXbyzsqEY5OwtvbpKfigcaibbCbDUm3ybSlHqSs7ZhcnQVwZXLsHHEwzCJ3bMAiasMwAvig==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=SrhRapVOmwIwx7xDQq+6O9s3+XB1BZg/+wc7w4AyuHI=;
 b=hf9lHjZk++rHx95aOVy4/8j85iyGJ1MFGxhW7Qwoj9GtX58xh0jCa0+cD4vzBj9+R8F/yIPgR/88U03j1C6Fh3PwXB64tGbD3X69NZM1mLGOYy5VbdS68VaS+KGY/SiNbSFC8YNlWVjvOQ7j2uTER+4cgv40BXHqMyMusjtUuZseMnvgOEI2B7fikEB6HKVZMORG942gt5RwplqfqoVPhWrc83cN5HMBamgWJknuf1rfl4t1oKhcKPsDpBOClokiwhW3NO27K6+Kg0vSC2uQlPhBapI0CFQfZehMn/33e/j+1ebSDS44je43FGEChuroxc0pXrnijju8WerXmNdhGg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=SrhRapVOmwIwx7xDQq+6O9s3+XB1BZg/+wc7w4AyuHI=;
 b=XHmbNBdPXOAWbQjGkcBa0rztMK6pLZAGwZ4YyN8IIq2YCSaeXn0UKSd8bbDlV1wKOsjuUrDc8Y3ibcGYtTwDdOP5lCS1LYhNOpae64AtLgmxBgW152jfS1z6qHSWVP1iJ4ui6sUsLUJzJnrPYGg9OMDb4ltRUZnj5ua471aHN5s=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Julien Grall <julien@xen.org>, "Stefano
 Stabellini" <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>
Subject: [PATCH v7 2/2] xen/vpci: header: filter PCI capabilities
Date: Wed, 13 Sep 2023 10:35:47 -0400
Message-ID: <20230913143550.14565-3-stewart.hildebrand@amd.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <20230913143550.14565-1-stewart.hildebrand@amd.com>
References: <20230913143550.14565-1-stewart.hildebrand@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000FCC1:EE_|DS0PR12MB6462:EE_
X-MS-Office365-Filtering-Correlation-Id: 62e4bd03-0863-4e68-c1bf-08dbb466f63c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iNHo7AJCh5QnkKbu6aeUccwqv2injv3gJyX8Fr3m45+Bk6/OS19cOewR9kLjM5k9kDkOENYxLLHmlouq+sbbuNtVSd9tjCph8a+HlkMULj9Ksw1L6B+Z9KC29yxUldXB59eHZLy5dP/iTcT14MluaCneD1x0o95mS/56I1TCC1EqtL7SYERxjdT/y8ToBsDDqtaXifTdybeRqt8qUcZMyDU5b1abCZYHbbcY+VHc5f40nOXHqYawCXb8unV49bFuaJVi3JywEUBr2piYcMas75SS3Mpa9mgrHJiwWzThCUrep+4UxEIHzBr4N5R1DRs0rC8AfIbqg6xlNoJ+pj3AOHucfrqCp2GS/V0dFPKbvqyRKD91WvdCgbYpvXsu74ye4K7Ic0TllH67wFr3UNi8MlAqBRAHX6GxfjLM0XtRpVQDVwHYIR20h8hRyzno4DutUS/6Kwtk3mG223KAQaKSq4hneSfgzLLtQyIBqQSW7w4Z6+YwdVauHNgT2tovih9zlc1gUleh+6hMZFLW5X5kwG/OoR4z84SkIeX3P4wgJB7fE4jCrNVVvATJESz/hiJILjeCmfXQ200im/1mGo6vLSPka/FOdzI0gYnKGNigUNBV+wG6pUnF/ykAiIhnoRKsrnBO1DXt/zZEJalloO5vIjG6XiqfteUZQ90oakTDTRZ8211R1cTphpgie9oiFsNH6Mmsj8vSMpRqd/EEvvKvQ4Ma53BRcpD/zLaartcABbJqaKz3LFzzzARgpOn/yizS64+SQm4jqm7+dPzCrYJi6A==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(396003)(39860400002)(136003)(451199024)(82310400011)(186009)(1800799009)(36840700001)(46966006)(40470700004)(5660300002)(70206006)(81166007)(356005)(6666004)(2906002)(47076005)(36756003)(86362001)(82740400003)(40480700001)(336012)(2616005)(36860700001)(1076003)(26005)(426003)(478600001)(70586007)(83380400001)(44832011)(40460700003)(4326008)(8676002)(8936002)(41300700001)(6916009)(54906003)(316002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 14:37:31.2960
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 62e4bd03-0863-4e68-c1bf-08dbb466f63c
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000FCC1.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB6462

Currently, Xen vPCI only supports virtualizing the MSI and MSI-X capabilities.
Hide all other PCI capabilities (including extended capabilities) from domUs for
now, even though there may be certain devices/drivers that depend on being able
to discover certain capabilities.

We parse the physical PCI capabilities linked list and add vPCI register
handlers for the next elements, inserting our own next value, thus presenting a
modified linked list to the domU.

Introduce helper functions vpci_hw_read8 and vpci_read_val. The vpci_read_val
helper function returns a fixed value, which may be used for RAZ registers, or
registers whose value doesn't change.

Introduce pci_find_next_cap_ttl() helper while adapting the logic from
pci_find_next_cap() to suit our needs, and implement the existing
pci_find_next_cap() in terms of the new helper.

Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
v6->v7:
* no change

v5->v6:
* add register handlers before status register handler in init_bars()
* s/header->mask_cap_list/mask_cap_list/

v4->v5:
* use more appropriate types, continued
* get rid of unnecessary hook function
* add Jan's R-b

v3->v4:
* move mask_cap_list setting to this patch
* leave pci_find_next_cap signature alone
* use more appropriate types

v2->v3:
* get rid of > 0 in loop condition
* implement pci_find_next_cap in terms of new pci_find_next_cap_ttl function so
  that hypothetical future callers wouldn't be required to pass &ttl.
* change NULL to (void *)0 for RAZ value passed to vpci_read_val
* change type of ttl to unsigned int
* remember to mask off the low 2 bits of next in the initial loop iteration
* change return type of pci_find_next_cap and pci_find_next_cap_ttl
* avoid wrapping the PCI_STATUS_CAP_LIST condition by using ! instead of == 0

v1->v2:
* change type of ttl to int
* use switch statement instead of if/else
* adapt existing pci_find_next_cap helper instead of rolling our own
* pass ttl as in/out
* "pass through" the lower 2 bits of the next pointer
* squash helper functions into this patch to avoid transient dead code situation
* extended capabilities RAZ/WI
---
 xen/drivers/pci/pci.c     | 26 +++++++++-----
 xen/drivers/vpci/header.c | 76 +++++++++++++++++++++++++++++++++++++++
 xen/drivers/vpci/vpci.c   | 12 +++++++
 xen/include/xen/pci.h     |  3 ++
 xen/include/xen/vpci.h    |  5 +++
 5 files changed, 113 insertions(+), 9 deletions(-)

diff --git a/xen/drivers/pci/pci.c b/xen/drivers/pci/pci.c
index 3569ccb24e9e..8799d60c2156 100644
--- a/xen/drivers/pci/pci.c
+++ b/xen/drivers/pci/pci.c
@@ -39,31 +39,39 @@ unsigned int pci_find_cap_offset(pci_sbdf_t sbdf, unsigned int cap)
     return 0;
 }
 
-unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
-                               unsigned int cap)
+unsigned int pci_find_next_cap_ttl(pci_sbdf_t sbdf, unsigned int pos,
+                                   bool (*is_match)(unsigned int),
+                                   unsigned int cap, unsigned int *ttl)
 {
-    u8 id;
-    int ttl = 48;
+    unsigned int id;
 
-    while ( ttl-- )
+    while ( (*ttl)-- )
     {
         pos = pci_conf_read8(sbdf, pos);
         if ( pos < 0x40 )
             break;
 
-        pos &= ~3;
-        id = pci_conf_read8(sbdf, pos + PCI_CAP_LIST_ID);
+        id = pci_conf_read8(sbdf, (pos & ~3) + PCI_CAP_LIST_ID);
 
         if ( id == 0xff )
             break;
-        if ( id == cap )
+        if ( (is_match && is_match(id)) || (!is_match && id == cap) )
             return pos;
 
-        pos += PCI_CAP_LIST_NEXT;
+        pos = (pos & ~3) + PCI_CAP_LIST_NEXT;
     }
+
     return 0;
 }
 
+unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
+                               unsigned int cap)
+{
+    unsigned int ttl = 48;
+
+    return pci_find_next_cap_ttl(sbdf, pos, NULL, cap, &ttl) & ~3;
+}
+
 /**
  * pci_find_ext_capability - Find an extended capability
  * @sbdf: PCI device to query
diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index af267b75ac31..1e7dfe668ccf 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -513,6 +513,18 @@ static void cf_check rom_write(
         rom->addr = val & PCI_ROM_ADDRESS_MASK;
 }
 
+static bool cf_check vpci_cap_supported(unsigned int id)
+{
+    switch ( id )
+    {
+    case PCI_CAP_ID_MSI:
+    case PCI_CAP_ID_MSIX:
+        return true;
+    default:
+        return false;
+    }
+}
+
 static int cf_check init_bars(struct pci_dev *pdev)
 {
     uint16_t cmd;
@@ -545,6 +557,70 @@ static int cf_check init_bars(struct pci_dev *pdev)
     if ( rc )
         return rc;
 
+    if ( !is_hardware_domain(pdev->domain) )
+    {
+        if ( !(pci_conf_read16(pdev->sbdf, PCI_STATUS) & PCI_STATUS_CAP_LIST) )
+        {
+            /* RAZ/WI */
+            rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL,
+                                   PCI_CAPABILITY_LIST, 1, (void *)0);
+            if ( rc )
+                return rc;
+        }
+        else
+        {
+            /* Only expose capabilities to the guest that vPCI can handle. */
+            unsigned int next, ttl = 48;
+
+            next = pci_find_next_cap_ttl(pdev->sbdf, PCI_CAPABILITY_LIST,
+                                         vpci_cap_supported, 0, &ttl);
+
+            rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL,
+                                   PCI_CAPABILITY_LIST, 1,
+                                   (void *)(uintptr_t)next);
+            if ( rc )
+                return rc;
+
+            next &= ~3;
+
+            if ( !next )
+                /*
+                 * If we don't have any supported capabilities to expose to the
+                 * guest, mask the PCI_STATUS_CAP_LIST bit in the status
+                 * register.
+                 */
+                mask_cap_list = true;
+
+            while ( next && ttl )
+            {
+                unsigned int pos = next;
+
+                next = pci_find_next_cap_ttl(pdev->sbdf,
+                                             pos + PCI_CAP_LIST_NEXT,
+                                             vpci_cap_supported, 0, &ttl);
+
+                rc = vpci_add_register(pdev->vpci, vpci_hw_read8, NULL,
+                                       pos + PCI_CAP_LIST_ID, 1, NULL);
+                if ( rc )
+                    return rc;
+
+                rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL,
+                                       pos + PCI_CAP_LIST_NEXT, 1,
+                                       (void *)(uintptr_t)next);
+                if ( rc )
+                    return rc;
+
+                next &= ~3;
+            }
+        }
+
+        /* Extended capabilities RAZ/WI */
+        rc = vpci_add_register(pdev->vpci, vpci_read_val, NULL, 0x100, 4,
+                               (void *)0);
+        if ( rc )
+            return rc;
+    }
+
     /*
      * Utilize rsvdz_mask to hide PCI_STATUS_CAP_LIST from the guest for now. If
      * support for rsvdp (reserved & preserved) is added in the future, the
diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
index b4cde7db1b3f..e3b866aaf7a4 100644
--- a/xen/drivers/vpci/vpci.c
+++ b/xen/drivers/vpci/vpci.c
@@ -136,6 +136,18 @@ static void cf_check vpci_ignored_write(
 {
 }
 
+uint32_t cf_check vpci_read_val(
+    const struct pci_dev *pdev, unsigned int reg, void *data)
+{
+    return (uintptr_t)data;
+}
+
+uint32_t cf_check vpci_hw_read8(
+    const struct pci_dev *pdev, unsigned int reg, void *data)
+{
+    return pci_conf_read8(pdev->sbdf, reg);
+}
+
 uint32_t cf_check vpci_hw_read16(
     const struct pci_dev *pdev, unsigned int reg, void *data)
 {
diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h
index 251b8761a8e9..db927eeaeef2 100644
--- a/xen/include/xen/pci.h
+++ b/xen/include/xen/pci.h
@@ -194,6 +194,9 @@ int pci_mmcfg_read(unsigned int seg, unsigned int bus,
 int pci_mmcfg_write(unsigned int seg, unsigned int bus,
                     unsigned int devfn, int reg, int len, u32 value);
 unsigned int pci_find_cap_offset(pci_sbdf_t sbdf, unsigned int cap);
+unsigned int pci_find_next_cap_ttl(pci_sbdf_t sbdf, unsigned int pos,
+                                   bool (*is_match)(unsigned int),
+                                   unsigned int cap, unsigned int *ttl);
 unsigned int pci_find_next_cap(pci_sbdf_t sbdf, unsigned int pos,
                                unsigned int cap);
 unsigned int pci_find_ext_capability(pci_sbdf_t sbdf, unsigned int cap);
diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
index 7a5cca29e54c..b79efc49bad6 100644
--- a/xen/include/xen/vpci.h
+++ b/xen/include/xen/vpci.h
@@ -51,7 +51,12 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size);
 void vpci_write(pci_sbdf_t sbdf, unsigned int reg, unsigned int size,
                 uint32_t data);
 
+uint32_t cf_check vpci_read_val(
+    const struct pci_dev *pdev, unsigned int reg, void *data);
+
 /* Passthrough handlers. */
+uint32_t cf_check vpci_hw_read8(
+    const struct pci_dev *pdev, unsigned int reg, void *data);
 uint32_t cf_check vpci_hw_read16(
     const struct pci_dev *pdev, unsigned int reg, void *data);
 uint32_t cf_check vpci_hw_read32(
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 14:53:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 14:53:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601476.937476 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgREV-0006x4-Qz; Wed, 13 Sep 2023 14:52:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601476.937476; Wed, 13 Sep 2023 14:52:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgREV-0006wx-N0; Wed, 13 Sep 2023 14:52:47 +0000
Received: by outflank-mailman (input) for mailman id 601476;
 Wed, 13 Sep 2023 14:52:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Rq8V=E5=citrix.com=prvs=6130a4f39=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qgREU-0006wr-El
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 14:52:46 +0000
Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com
 [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 30559458-5245-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 16:52:43 +0200 (CEST)
Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 13 Sep 2023 10:52:40 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by BN8PR03MB4932.namprd03.prod.outlook.com (2603:10b6:408:7c::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Wed, 13 Sep
 2023 14:52:37 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::ddbc:172e:c4a3:ec6f]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::ddbc:172e:c4a3:ec6f%4]) with mapi id 15.20.6768.036; Wed, 13 Sep 2023
 14:52:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 30559458-5245-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694616763;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=uXfCRbfodv+q4yTeq+lli5/Kkhf+BJKfLLdKG2T4Pzo=;
  b=B5UqfdFx5hK9ilr5C/AZbzEgKhruniIRaTjNLXoCBTCyUbhtFIsbIC63
   ZormvoGacVOJyidpEdGK5SeoubItE/emfHdm5AvQNvSrUeAmiYYoUdskC
   kkZSuxYjS1yfyJYj5PJLXEP/tTFM/n/5DHmBT2xwntFv2Dl0+AeeIjaxq
   A=;
X-CSE-ConnectionGUID: for0BP3DQaWYgclEjQQqpw==
X-CSE-MsgGUID: G73E2aezQs6DjpcA0IP+QQ==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 122386469
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:DZ5Y961v8wo29yRglfbD5eFwkn2cJEfYwER7XKvMYLTBsI5bpzZTm
 mUWCDuDb/2JNjSkft4gOYW0o0kPup+Bz95jHVRspC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb8nuDgNyo4GlD5g1nPqgR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfD2ZUr
 dYgcxw0Zy+yiOmy7bCCc/B0mZF2RCXrFNt3VnBI6xj8VK9ja7aTBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqsy6KklwZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LWUzX2nBtN6+LuQ2aExrQeay34qE0M6V0OwiKGYsg2HYocKQ
 6AT0m90xUQoz2S7Q9+4UxCmrXqsuh8HR8EWA+A88BuKyKff/0CeHGdsZjxLZcEitcQ2bSc3z
 VLPlNTsbRRwtJWFRHTb8a2bxRupPiwYK2IqYjcJSwEe75/kuo5bs/7UZtNqEarwhNulHzj1m
 mmOtHJn2eVVitMX3aKm+1yBmyirupXCUg8y4EPQQ36h6QR6IoWiYuRE9GTm0BqJF67BJnHpg
 ZTOs5L2ADwmZX1VqBGwfQ==
IronPort-HdrOrdr: A9a23:3tzwU6tVvXKeoa+OOqI5q3Kh7skD29V00zEX/kB9WHVpmwKj9v
 xG+85rsyMc6QxhP03I/OrrBEDuex7hHPJOjbX5eI3SPzUPVgOTXf1fBMjZskDd8xSXzJ8j6U
 4YSdkBNDSTNzhHZLfBkW2F+o0bsaC6GcmT7I+0854ud3AJV0gH1WhE422gYyhLrWd9a6bRPa
 Dsl/Zvln6PeWk3cs/+PXUMRe7Fzue77q7OUFopBwMH9ALLtj+j6Kf7Hx+Ety1uKA9n8PMN8X
 Xljwe83amos+i6xhjAk0ff4o9bgsGJ8KoxOOW8zuYUNxTxgUKTaINtV6bqhkFMnMij5Ew2kN
 7FvhcnON4b0QKgQl2I
X-Talos-CUID: 9a23:C1sql21jF54yjFh3I7nrPbxfFMc/Klfll1vpKnCJBm1tZb+scEaI5/Yx
X-Talos-MUID: 9a23:r5ET7whbuA7VintVQaChNsMpG5gzzv6nBVI0issqudGPHHRRA3SktWHi
X-IronPort-AV: E=Sophos;i="6.02,143,1688443200"; 
   d="scan'208";a="122386469"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MklpIv5QZ/QbedSQSyUfhOb7fb/l+vDF8ROilczyfP7wh85RB+4LA19bk8XVC0DTXke5DdoQ1NWPbSUDeN0HMbhQwv3pvmNPdu/RS0DqGrVIgGMCldR6hNLKo9B7mx4cs1HQkjEflZ5Q+3zRmdQhcCDWGrfinbDEJRqqfGW2YRvNjx5WI4Kz9mFMh6rXh4u4tzOcBnvh9xUvHM6V7txPR+uO8OdACqRmfvQU+LzAF7P+vL6kyQ1jEEWogTVjbzwgB7MZfyzFkaadCqW2I+t8VgdqqpGn0XoieZzC6nGdJswrgxmkaXbC5nlGtOYU3OegbAgZfFKXfCkCKk0oFSm6MA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jJW6Iw8KHl2ZFwdrOSWrwQahsI9S6yNabUtrApUZrTU=;
 b=c8Oq0Rz604WRlP1bLY4x201ZiGYolDtQb2EUvoCFqs70EJs3KOX8bLW8WXjMgdB4uRe5E3OjPB9HHUEinz1Tlp+lrPW5LMyN/91OlGcoUZmYvlgTI69CvWhvxbZW2ycrxqAQW8SGGP6IBlxPx7twUXaAgUDb9EHUg4qHXimUlvxAatmOZ7672QRmxpvVSCBy4Fr72pjmBGhwYoSacY34m1/Wq53ezKtdOW5q7FDZh+VNoajBGKKn0w+zBWwLVf2O0InQ36cF0z/6oHT54hJNrdOZnYmpDZ+2D/TGa3Bm8QeTt6IBQXxE/8sfIQu/JotA6AC1PJQp3h/2M27WSWFcLQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jJW6Iw8KHl2ZFwdrOSWrwQahsI9S6yNabUtrApUZrTU=;
 b=Xc/fLJ7t+cyhsbINGosC4QLH951mGHmCVbJsbHnjZe1/UkvOaEJMTrCU1tJvN+ZAduUxgXIwfvEfHRrSRva+CE05OHxBobLV71AFImkJBDJgXfjPFvLe0C43Dw27Cl6+4spSXrAeX2kNFyvsDBeQdWIEXixJweOTGI//DEf6G6A=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
From: Roger Pau Monne <roger.pau@citrix.com>
To: xen-devel@lists.xenproject.org
Cc: Roger Pau Monne <roger.pau@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wl@xen.org>,
	=?UTF-8?q?Sol=C3=A8ne=20Rapenne?= <solene@openbsd.org>
Subject: [PATCH v2] x86/amd: do not expose HWCR.TscFreqSel to guests
Date: Wed, 13 Sep 2023 16:52:20 +0200
Message-ID: <20230913145220.11334-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P265CA0099.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2bc::20) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|BN8PR03MB4932:EE_
X-MS-Office365-Filtering-Correlation-Id: a63af712-cb2c-4b56-18d0-08dbb4691240
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	AGe7OlnW0HfaSeju5Vm7RxaooD+WKvfVll8HfwavXpjaMqj+ltzXBUogWOx5nkaNDR5e1s454Uk84QwwaXoV0LbdtAV6oXikJLR0f/Nxylhn426/C3IPfRyAZlgdAsibOeJn1CeoyES2OUn8IFVtmGXGWTiBR97IAlEiJ0C+rLtLJqWTu55LM83hCc5sVepSuqsEC/yGfa37BPyZ3wAI8bW5SgkPBArsAMhyBWresdNzE0CancJ9CeDsOMWyNyz/fz58YwJ4BBsH34BbSy9dWdIzCuuS7IlanLK9ZHT+FKG3FIwcrs+OPpzlZGvOMGF0MRJz/1qXCy2wGnfu1zC+1wm0xuyN7m0VOc3Zhn4nDU6a7Ptz2QV46RPS1BcYlnBejvUX+AGNLohLp1FcGudFrRxGt9WpoEDC1/oztoylwUeA+DN5LYU8kwsaDGlLkCl8zllVIKMyvnhg7OJID5lQwSalI4RA9IOBXSljQwWSGBf/hus5zoVkv6znjPDZGLlZgRnonpvxQmKEfLmuqoH5rdcUiL3sUol6FLvE1zFvgTg=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR03MB6428.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(396003)(39860400002)(376002)(136003)(186009)(1800799009)(451199024)(6486002)(6506007)(6666004)(6512007)(966005)(478600001)(2616005)(1076003)(26005)(66574015)(2906002)(83380400001)(6916009)(54906003)(66476007)(66946007)(66556008)(316002)(4326008)(5660300002)(8676002)(41300700001)(8936002)(86362001)(36756003)(38100700002)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dTZ3UjVPa1BvN3VMb1dxWmZCSXFIVC9tUzV4K3FOZ1cvRmpTaVhpb0Q0QTBJ?=
 =?utf-8?B?bU8rdnRHU3p2bElvaGFOcTZ0UVRXQzNLd1FHWmhpS1QwMnEwWjlqNTZMY2F1?=
 =?utf-8?B?RVZ5aDdqbk1kbVRxVTRIVk1UR0hSMUxhUXVNMkNBY2srelVCVjRVcHBIRXNo?=
 =?utf-8?B?ZU0vKzZSY2FWVG5kNG1vYm9YY3lnLzJkQXdvYnBZZGlrak4vYWlTRzFJTTRn?=
 =?utf-8?B?d2ZBMTV0cDRUcDl1K3kxNlMydEVIbStzN2V4V3ZzZjlLZHVnTmRUeHVCOTB3?=
 =?utf-8?B?aWNsOGNNekQzTHhJUWtidGRqY1A1U2R6QzY2NlhkeHZSVFF0cmtSbGZpVVY2?=
 =?utf-8?B?MkZ5VkM5M1dncXF2Y0VTUTdFQTJIQWl2eHdscUdtNWY3bTg5dUtXSXdVQkd0?=
 =?utf-8?B?R3cvNEhobEpldGliMTUyY2phanV4enlPUWdlS3lhNjVOK0x3VzI0REd0Y1ky?=
 =?utf-8?B?OGJ2Qlg0NjdiRGV0eTArSzVmWno5aVpDaXNYczRGMWttZUl1VVV0aVhlVnZC?=
 =?utf-8?B?aGVWNWdPSVZVb2kzTjl0ZzV4ekhXeldJSFU1QXlUSC9oWVhjRjV4U1A1Sjdq?=
 =?utf-8?B?S3NLSzE3ZXgySWpNQ2hXOS8yUUQwWTZ2OXoyMEgxb1U5dHRxdEt6OHJDdndr?=
 =?utf-8?B?c2k3dG9ZcktJK1VBOEp2ZnR3WWxlMCttSG9VaDlsMElMR3RvZzZBTE5EZk1x?=
 =?utf-8?B?NkV3aHNvUi9saHBpRktHdEZreTROZXBjNC9ObHBwMlNlTlI4TGNya092cXhw?=
 =?utf-8?B?ZG1KRnVaSWVVLzRDT00yM3k0bWZaby9iSjNic0VyWGhRY0k4NlhlcWtpNVdU?=
 =?utf-8?B?U1dZWitCOEc5RlM4cEpnSGpMNjBXaU5Da1FaNEhjSVg1a2hCZU44eWd6cGJK?=
 =?utf-8?B?Q3gwaUhzd3dVVVllSGpxTGdMVWwzcVFYakx6L2hZQW1nVHY1eG9OQlN2cEZi?=
 =?utf-8?B?Q1hySDV5dmZNNU9KRkxNNmpaS0I5STJtdFZpeTNYOHVEUVJaNk9qY0xNNmhq?=
 =?utf-8?B?QnJBUGFNNUtyL2RCWnR2bTNmZCtiZlVHN1pWSFQ3WVpvbktTY0ZYQldQV3NK?=
 =?utf-8?B?eHhtYzNzUE8wWUtJeVFucGxlYVlTclByYmtvSEpKU25ZRmxXb3NVVVBuZ0dK?=
 =?utf-8?B?QU1FMkMxN1A2NklCdFNlWittc25Vcnp1R0svQnpxZUdhcDJjVEY5ZnBIOHdi?=
 =?utf-8?B?WW9mU1VOS1djazlhUkprN1NIelIwVzhNdGt4MFNEUDNQTnplbmYvcXV0STQ4?=
 =?utf-8?B?NS9QNkdhSFd1bHIxM1BZdGlzcy9WY2pMWVcyM3l1cm1UemJ0RXV3Zmt5WXBq?=
 =?utf-8?B?eU04UkxMdTB3ZERZcFpOVVQ3NE9lcEh4ODFWNWxrQ3NZeW9uVUF6eEliZ3Fm?=
 =?utf-8?B?bnlDVzh4ZEFybXl0OGkvRmZUZWpKRzZaV3Y3SGQ2SVEreGtTRkwwSWVZTWMx?=
 =?utf-8?B?dG41eHZtckU1VFFRSjBNQVRZTlRxczdWMVFsMW5WdGJTRkdyeVk4bDh2NEhU?=
 =?utf-8?B?b3N6Y3NkVFNVNWl0N3BZaGNSOFoya1hRVFVHckhQRGtRQWxYKzdpY0M3bjcr?=
 =?utf-8?B?eWZSMys4QW1oTTB2QmZSWEZKLzZESlFQZ0c5Nk0xTWdteHVJUUY0QWNVekN6?=
 =?utf-8?B?UmxCTkFEaGxGWGdPTVRJWTNnYjB6NU52d0djQVR2WUJYM2ZJWG4xTGdVS3BN?=
 =?utf-8?B?T1EyaEhXR3lnRmR4RUI4QlIwT0xYVEFDSmNLM01RbWhQR3RiVmREZUd4WnFE?=
 =?utf-8?B?NW11UGlJNkNSZzVGYjdRaURxaUhHTXNmVUM2ZjBmbU9CeUhJZ3pLTDRYYlhU?=
 =?utf-8?B?a2UyN3lJWkZPNU9OSVNNekZiMFIrd1l4QktzcitwTE5pSlBVT3ROdEJEbXJN?=
 =?utf-8?B?QnlTeU4rWE5yR0Jwd0FoZDU0cDJwc3hZUFA4bTRpSnlFN1JEb1h1cit6ZXZC?=
 =?utf-8?B?Vyt4eVMxQklrVFE1VWlET1lrZThybkVtQjJMMEZXZW1UY2xtMFZjK0lQbDR1?=
 =?utf-8?B?dW0xcVJTNU5GNXpaSlFPNUdlN0lWaFZXY3dRMWFjUEdNb2JIckY5MzA3NDJQ?=
 =?utf-8?B?VzBRNnlzbGdNUTRqaTFidWhjQ1lHd3I4d0ViVUNrK1ZWTEVvTkx4dUkwdW01?=
 =?utf-8?Q?3XbouUx0iw25Hc3aJVcyOqj/C?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	ojvQqonf+Fix3FG5TtFywJjCrPT890soum9iUmGK7rSpmCVL+pT+KbEp73Mo43AlE81e9ccx9AqU/NCvYgMJfTcdkhj3UrOOXq3aU2I7uIPmZKF20H/3gQcxXrcsxVFmqcS/TjQzMPQFksIB/uTGwLNoVJoaYzGRXr5GuNgeKZv4yr7dG+NzbP30IfLO/DXrDFfDBX0EqZHnkUMOfhjhFJ5olyxXJjAl7b5AvazYl5at7z/51+Ggm4F5Sez7CpZCpymW13UW4Ovj6zm4ES7gzy3MUenp5W3Hmg/B+wn261UApm2skZZpNaoEmCoyowXoFBKR5lM2kwCL7rsSS8xS1S8KK7gusCcUTonCrGi9X5dHrYPYJ6RRTiaf97MyiIvnkTBVQFzKVD1f0h1TN/VudQ+MVKPVckAVBsSAE4IiU6GodAQ2yrG0qeBxB4b5ib6gw0BaXWaKYGINCpzcT03Cq2nrldPgWo7Y6oFWoZySb1IKKFjNwk0e43ccdwNd/9pfGIeboUvsjaDh9XfzwOhxBPX6nMFotf+RJjeXCHvAiXwISAnCw9MBmaoki04ly0ok6WpzJ5ObnIJMpE3AW3l7KvqvuTd1LI2S09x5GXzbqipmESzv/3ieHaj/rBe78PgV3pgLXDdQxGouu+8VyRLxLS7lNshYhjcuPL21J3ub7NRMXeb6lUVeNpdmxsVZPxBzS2Nvs5UbYMxx0+ofcOjHhtJjYY7jc0nf2O5JEa5I7rcnMSNTAIt2mL8woN2kL6Zfwpd3AUVweO4/2I12WJjgudt8rWOvodWW24ZxdQijxEuj4rQuYRFfW3y3MkvyyWATpky7BFQQ74Vn52xtMhGWZgEETECHtb4Iwo8uI6+r1Vo=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a63af712-cb2c-4b56-18d0-08dbb4691240
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 14:52:37.6966
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Y8wtKsTzUyo1yi2HIgVpb8T5ZsHiIXQt3AnrxjxpOnFHIJWfp43hZZt+QDR6v95ntsYhkBI9tbyUcqauY4tHOA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR03MB4932

OpenBSD 7.3 will unconditionally access HWCR if the TSC is reported as
Invariant, and it will then attempt to also unconditionally access PSTATE0 if
HWCR.TscFreqSel is set (currently the case on Xen).

The relation between HWCR.TscFreqSel and PSTATE0 is not clearly written down in
the PPR, but it's natural for OSes to attempt to fetch the P0 frequency if the
TSC increments at the P0 frequency.

Exposing PSTATEn (PSTATE0 at least) with all zeroes is not a suitable solution
because the PstateEn bit is read-write, and OSes could legitimately attempt to
set PstateEn=1 which Xen couldn't handle.

In order to fix expose an empty HWCR, which is an architectural MSR and so must
be accessible.

Note it was not safe to expose the TscFreqSel bit because it is not
architectural, and could change meaning between models.

Reported-by: Solène Rapenne <solene@openbsd.org>
Link: https://github.com/QubesOS/qubes-issues/issues/8502
Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/arch/x86/msr.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
index 3f0450259cdf..c33dc78cd8f6 100644
--- a/xen/arch/x86/msr.c
+++ b/xen/arch/x86/msr.c
@@ -240,8 +240,7 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
     case MSR_K8_HWCR:
         if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
             goto gp_fault;
-        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
-               ? K8_HWCR_TSC_FREQ_SEL : 0;
+        *val = 0;
         break;
 
     case MSR_VIRT_SPEC_CTRL:
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 15:16:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 15:16:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601484.937485 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgRbJ-0003gM-LK; Wed, 13 Sep 2023 15:16:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601484.937485; Wed, 13 Sep 2023 15:16:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgRbJ-0003gF-Ie; Wed, 13 Sep 2023 15:16:21 +0000
Received: by outflank-mailman (input) for mailman id 601484;
 Wed, 13 Sep 2023 15:16:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fff5=E5=nureva.com=anthonychan@srs-se1.protection.inumbo.net>)
 id 1qgRbH-0003g6-Oo
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 15:16:19 +0000
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
 (mail-sn1nam02on20730.outbound.protection.outlook.com
 [2a01:111:f400:7ea9::730])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7c582773-5248-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 17:16:18 +0200 (CEST)
Received: from DM6PR20MB2779.namprd20.prod.outlook.com (2603:10b6:5:140::30)
 by PH0PR20MB5868.namprd20.prod.outlook.com (2603:10b6:510:28c::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.32; Wed, 13 Sep
 2023 15:16:13 +0000
Received: from DM6PR20MB2779.namprd20.prod.outlook.com
 ([fe80::c3:998a:f69:190e]) by DM6PR20MB2779.namprd20.prod.outlook.com
 ([fe80::c3:998a:f69:190e%7]) with mapi id 15.20.6768.036; Wed, 13 Sep 2023
 15:16:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7c582773-5248-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lLjhMZoBptIA7xq/DA6R3fvRxZLXSf/KGZ03cjP0MgYutBxhqZ6TanQh242ss6sH6/p896RqCMz7hsL2h7ti9ol1/JlQVV4tnqiQW4dUfyCG/JuMST+36WNJ5qKHqcdVvgRbmlIic29AneL4Tv/FjxdC2Z+5L4A57WpGmITAZ+c6S8Cn5HdOtsh3sR1HtxycR0jFD+YobOeRL30ZhriBO2GWIIJNsoF6rukOm8EMNQhOAB5RZLAqVdsGb06hJy74yaL8e/pxrOG+ANPLUOEvTRWTiNFVJMCQZb4A00nFj9DnxkU83t+4gNFINJD+hftTo8cAtzDHVt3lz40sP4SPJA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rmmsACECVviZJ2mdN4XRi7iU34hFjDIwSw+ed/WV6ww=;
 b=hJs0r5+oug/+i83sYK7Yz+fLeaGe430vo/hvtYYViUnI2Bttxle58j3LjlElV1h+ax+lTCQDPWOrpJUFkGutbKYOUCDD5O/8Ot9z4lLlVMPm6lN+2+N6Kh60v9RGhS80z/FYbMKm86ElY1W2bT3qVUa9AHkJiGY9QH+R/WbhuhF8dAeZ1q6AA8BQjQ6Mfe6jVo+UGpPnSnN2lo6HsEyzTQ36vQ93TLCUVqVr67nRTrCHGkAbUi8TD4YGqFNQllhd+2GQQEE1XUu7DI1YSzU63LpBGDJPt+QcGiIFJ//wwphd053R4sJ51brNeaFgVK0qdRq9o3gyd+htQACCDVmWHQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=nureva.com; dmarc=pass action=none header.from=nureva.com;
 dkim=pass header.d=nureva.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nureva.com;
 s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rmmsACECVviZJ2mdN4XRi7iU34hFjDIwSw+ed/WV6ww=;
 b=pJBW0hpbxVvp5BHHWegz7OakSi73PT2HIe0TBO6P4I+iwiTimwlzDXwAovpkddsNaJkMBZY2nUC7EgRbvG83aYaGpqybu75BhZve3GJxj/B2/1El3ove+k/oEu4TJw7C8SV5ecrfK4JzoH8Rrom/jbyeP+5vED3VdVtKHLeavVk=
From: Anthony Chan <anthonychan@nureva.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	"bertrand.marquis@arm.com" <bertrand.marquis@arm.com>, "julien@xen.org"
	<julien@xen.org>, "Volodymyr_Babchuk@epam.com" <Volodymyr_Babchuk@epam.com>,
	"michal.orzel@amd.com" <michal.orzel@amd.com>, Dan Waqar
	<danwaqar@nureva.com>
Subject: RE: [EXT] Re: xen arm64 low power sleep support
Thread-Topic: [EXT] Re: xen arm64 low power sleep support
Thread-Index:
 AdnanCj70Orzia5aQfSER7H0AUNnzgAKb5uAACL7QIAAFccGAAAoRLpQAQalgwAAJhokEAAI5CkAACis4mAA1S71AAAexGNw
Date: Wed, 13 Sep 2023 15:16:13 +0000
Message-ID:
 <DM6PR20MB277966FD3886CAFA912A81AEC1F0A@DM6PR20MB2779.namprd20.prod.outlook.com>
References:
 <DM6PR20MB277971712E5415CB231AEB37C1E7A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2308291512271.6458@ubuntu-linux-20-04-desktop>
 <DM6PR20MB27795F4B6C327F7F031BABB0C1E6A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2308301814580.6458@ubuntu-linux-20-04-desktop>
 <DM6PR20MB2779E6DD63DC5CC9A1FE161AC1E5A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2309051848590.6458@ubuntu-linux-20-04-desktop>
 <DM6PR20MB2779A22E8CA641F0B2BBF038C1EFA@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2309061629460.6458@ubuntu-linux-20-04-desktop>
 <DM6PR20MB2779BA8D352E566A350844FCC1F2A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2309111822330.1847660@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309111822330.1847660@ubuntu-linux-20-04-desktop>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=nureva.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DM6PR20MB2779:EE_|PH0PR20MB5868:EE_
x-ms-office365-filtering-correlation-id: 81ad1284-9ab1-487a-bb0c-08dbb46c5e2e
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 UlXfahutxGUzd8Hzqx7qzNjOsZUFg0QBdqeCznr7jF6tkKaeLOvv/i9IQHNogJ7N3602w/iBX/D6s8JoLPYv4MqKSrTbTeyQ5TDZ+/OUqaLb7vGYnrm6dj+po/1bM0WDN6ypfIGmDHR+4bNn82tRIUd5zG9MrtMpXCrVxmYu6wiAbHKnCzpPyjnHCdl4DSaDnMJ7wxLDrRrT7A6cwvXa6ddljHnpeIbBOkZ5H3zrZM0yYjPOa248cTrOBZoLCt8ZGsiRVBKAi78ZsZ5KqKBf4xCrtMOr+b2LtbiU30gw3sxjdl1qPmEUPOIyQw/2m1m5Jn7wvIGT+C1E+T+voeiY18NnOIs+/+yySRG7hAGwJzjAZ6O94X98rcOM11APV32NEPqmIflOf+jiCNQEy5mUPM1wQL23fQt9LoHy09GsRr6P2v1o+nbnUwQYaGFyGKoR8GYSLiZnBvhH5NtgfoLntSttAtXDD+YzBDPxk/vHAWhx6wMmYB0j0MTwuTD7pXxB67cM9xbHG79Lcil1tkQA00Tn4UcCQo0qwFExENI7H20TfDST+JQwxc3YumS8L5VK1o7+HL2SUjwynZ5NOtpGFh3XXycJ9DQpmwReUHI+B+DdcxNlQveT4ayMjPcyFyqo
x-forefront-antispam-report:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR20MB2779.namprd20.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39840400004)(396003)(376002)(136003)(346002)(186009)(451199024)(1800799009)(2906002)(4326008)(52536014)(8936002)(41300700001)(5660300002)(66476007)(54906003)(66446008)(76116006)(64756008)(66556008)(107886003)(8676002)(316002)(66946007)(6916009)(55016003)(478600001)(9686003)(7696005)(83380400001)(6506007)(71200400001)(33656002)(122000001)(38100700002)(86362001)(38070700005);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?us-ascii?Q?b3WVhQMIdQfdJsXIMQtTBDEiq3qpsQR5uxz4nI1MuukN00COfDDoFSUqffCA?=
 =?us-ascii?Q?mY7yhGw8ASSnziOUrVWZ3nxbkXXZ43a/LaRVGvxS50UDNTohb/+EwO0Hvmy2?=
 =?us-ascii?Q?+bJw8IKUE7LUEaoH1dePGNbPxyl6i1JYDQeSnaove7cU1E5i/z7ZlmNIhmSJ?=
 =?us-ascii?Q?ww7ozODR7y6vVrRxWjVhCfwkCbitsuVWOzVFB9ddDLLIe5/BPedmr7JyWhMm?=
 =?us-ascii?Q?MF+vLcTAGYbOY7AnxJryC6qBeIF0bYfBCnK2TJ6gzARPcWgtKt5v3XHKMESo?=
 =?us-ascii?Q?xuswuz1BHESMiVDTl5HcqQpQtkOvapkc8K/Oi5xsQJzvJfmQdxKcKTdycUra?=
 =?us-ascii?Q?cBiJCSthZ0hwyp3b6uYVpOXBe/C3Fr+7yZ7wZ48nJmFoKwqS3p7CbLBwUSBt?=
 =?us-ascii?Q?owmv/+E02jZFayOecusv55m3LTSJdS0pizoGaPt8m2/h1DTIpUKfpxPUdOu3?=
 =?us-ascii?Q?UEjAjZS0nGIVrfer8LDkrkLIlMyzkO/Bt1F6oVXJfJ7F8FoEaGz4dtJAMuH7?=
 =?us-ascii?Q?5DnUX9CPT3m0SzgSpJDaY0KMzEpsuRjyTnf/NvCXMi0duglwpP5TgXfvLLsZ?=
 =?us-ascii?Q?hEj8R+6XKUO0cv10Yn8rmShevWbQmXL7o8kbNfmDwIoP4PeCno0BW5Y0R804?=
 =?us-ascii?Q?tLPKcCJ3IX0qBQ7CX7ggvMc4sPcxjE1pRR/58CeGKPAw4YgEiOF+Cj/fmKm9?=
 =?us-ascii?Q?Eu+6MqnFc8jac8tw/P7+7TxtvUaq6OOiYWxt4uJgMtFYcRusukEhcW8Iw5Th?=
 =?us-ascii?Q?V6gLwB4NO1RMBk1KmDKcNPHKXtEts3yArag+him/NzYmsyzway8dzIWXSZqQ?=
 =?us-ascii?Q?/fKxJTzy8f11vWI4ZfmByyWtwzJ8JamlrCGFbiFkBKGbwgDcn24fzVElxB1K?=
 =?us-ascii?Q?q+Uopag9PiqcVfU9XGRq2zm2GkfgIvUFyTedGnhzIZdOJXAL4I9iU7eq4Xs2?=
 =?us-ascii?Q?2xnw86NlcvV1NuH7Taa7B/dJToNPJwgq9oc/sLMoxgGrhin490RXMr7+eZuL?=
 =?us-ascii?Q?iXN37za3WDSL/zVl2nDCN8GNJeWDG4LXf4PYkdonjwV3XxyWPgWvJr/bRDWE?=
 =?us-ascii?Q?303cBYJBMCyb2+BncVYybrteDSpEdbH0/2/J0WLvZmF86WA0xh9ZpW5QXu/J?=
 =?us-ascii?Q?OU+QbL6Rcurqxt9kU5MWZeFqgPukunwUUD5EY2+oa+rojXTPZPqAA005NfwI?=
 =?us-ascii?Q?ICLyZXZFXWEjfF5p4tH+C2eznWeX4Ii4auaEkWna4+6MiUe1fTIoDZNCiFKs?=
 =?us-ascii?Q?CseBTDrIqgUp3fRI22PiueoIBiHk7a95hWWAz+DB2YPOTWI6qnPoGLsZykAo?=
 =?us-ascii?Q?/wNtY/7cxW/QnH78CVbOe9UEuRnq1eqAfeKBUPIBPTiBFRoXKjeWUS6s5KTW?=
 =?us-ascii?Q?VjAO+LxLiXjPBTohujpjPPMgZFS5kcH8g6kvGWa5HRj9tnX8SIKugVzcYQZ8?=
 =?us-ascii?Q?DO+s+3A2tjg58KGOmzCRMiwIvJAaPs/ZolJOCABHRgmhTR8OdfyyCPpWetMz?=
 =?us-ascii?Q?f9nJvt/yqsJX31OhyUGuzdud0+dwumlf0xcWwvtDSSqSqkFOefxWpSCDVZZt?=
 =?us-ascii?Q?FFe4/J6WFuoq+Z2/48Khex8r+30Qo+j7xG8nI1xg+PJSq9Ywz+N+/wyBdDEm?=
 =?us-ascii?Q?sbxnLMvM/7z8xXOuatQV1pm1C4TkwNGZYcygK5h4D9m0?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: nureva.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DM6PR20MB2779.namprd20.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 81ad1284-9ab1-487a-bb0c-08dbb46c5e2e
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Sep 2023 15:16:13.2260
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5aeb77fa-643b-473e-aee0-cb54a11ccba3
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: sezwO9gr4QALePBHArdVFGg2rDlhIbPtDIpGmVcFJCas4djjuDAVZf+ERHgBEHPg4ijeu3aDJtgE0H5Q3Pj64A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR20MB5868

On Mon, 11 Sep 2023, Stefano Stabellini wrote:
> On Mon, 11 Sep 2023, Anthony Chan wrote:
> > On Wed, 6 Sep 2023, Stefano Stabellini wrote:
> > > On Wed, 6 Sep 2023, Anthony Chan wrote:
> > > > Thanks, I've tried patches that stemmed from that discussion but
> > > > unfortunately, doesn't resolve the issue.  In fact, the
> > > > s2idle_loop branch might not be the problem at all.  I
> > > > experimented with Xen to allow the 'idle-states' into the FDT and
> > > > prevented xen_guest_init on Linux from disabling the 'cpuidle'
> > > > driver (arch/arm/xen/enlighten.c).  When I trigger a suspend, I
> > > > can see now another thread (believe it's the idle thread) call
> > > > into drivers/firmware/psci/psci.c:__psci_cpu_suspend and then the X=
en
> > > > counterpart at xen/arch/arm/vpsci.c:do_psci_0_2_cpu_suspend.
> > >
> > > OK but remember that Xen is not implementing do_psci_0_2_cpu_suspend
> > > correctly at the moment. Either we need to fix the Xen
> > > implementation, or we need to configure Linux so that it calls WFI in=
stead
> > > of __psci_cpu_suspend.
> > >
> > > As a test, can you try to apply the attached patch to Xen as a
> > > tenative fix?  Or you could change
> > > drivers/firmware/psci/psci.c:__psci_cpu_suspend to call WFI instead
> > > of the PSCI operation (making sure to go to the entry_point instead o=
f
> > > returning).
> >
> > Tried the patch and substituting a WFI for a PSCI op, but Xen still wat=
chdogs
> on the VMs in both cases.  I noticed the other Linux generic arm 'cpu-idl=
e'
> driver which used to do issue a WFI/cpu_do_idle isn't useable anymore eit=
her.
> I'm not sure if Xen may have used to rely on this generic driver to get t=
he WFI.
>
> I was running out of ideas so I went back to look at the watchdog console=
 log:
>
> (XEN) do_psci_0_2_cpu_suspend
> (XEN) Watchdog timer fired for domain 0
> (XEN) Hardware Dom0 shutdown: watchdog rebooting machine
>
> Checking the code, it seems that the Xen watchdog is set by
> xen/common/sched/core.c:SCHEDOP_watchdog, which is called by
> tools/libs/ctrl/xc_domain.c:xc_watchdog.
>
> xc_watchdog is called by tools/misc/xenwatchdogd.c. Is it possible that t=
his
> problem is entirely caused by the daemon xenwatchdogd running in the
> background? What happens if you kill xenwatchdogd and try again without i=
t
> (even better not start it at all)?
Disabling that daemon resolved the watchdog timing out.  Never noticed that=
 daemon running before.  That clears a lot up and I think I understand what=
's going on here now, thank you for the help.

CONFIDENTIALITY NOTICE: This e-mail, including any attachments, may contain=
 information that is confidential and privileged. Any unauthorized disclosu=
re, reproduction or use of this e-mail is prohibited. If you are not the in=
tended recipient, please notify the sender by reply e-mail or telephone and=
 permanently delete this e-mail and any reproductions immediately.


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 15:51:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 15:51:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601490.937496 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgS8d-0004AP-B4; Wed, 13 Sep 2023 15:50:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601490.937496; Wed, 13 Sep 2023 15:50:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgS8d-0004AI-7A; Wed, 13 Sep 2023 15:50:47 +0000
Received: by outflank-mailman (input) for mailman id 601490;
 Wed, 13 Sep 2023 15:50:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=s54a=E5=intel.com=tony.luck@srs-se1.protection.inumbo.net>)
 id 1qgS8b-00048v-FL
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 15:50:45 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.151])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4a3eb9ef-524d-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 17:50:42 +0200 (CEST)
Received: from orsmga002.jf.intel.com ([10.7.209.21])
 by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 08:50:15 -0700
Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83])
 by orsmga002.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 13 Sep 2023 08:50:14 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by
 fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Wed, 13 Sep 2023 08:50:14 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by
 fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Wed, 13 Sep 2023 08:50:13 -0700
Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by
 fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Wed, 13 Sep 2023 08:50:13 -0700
Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.44) by
 edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Wed, 13 Sep 2023 08:50:13 -0700
Received: from SJ1PR11MB6083.namprd11.prod.outlook.com (2603:10b6:a03:48a::9)
 by CY8PR11MB7315.namprd11.prod.outlook.com (2603:10b6:930:9e::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Wed, 13 Sep
 2023 15:50:12 +0000
Received: from SJ1PR11MB6083.namprd11.prod.outlook.com
 ([fe80::bbd6:576b:132:74e4]) by SJ1PR11MB6083.namprd11.prod.outlook.com
 ([fe80::bbd6:576b:132:74e4%6]) with mapi id 15.20.6768.029; Wed, 13 Sep 2023
 15:50:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4a3eb9ef-524d-11ee-8786-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694620242; x=1726156242;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=s/GThrrS38ODFaqgFkp5l+ooqfkqDQHpUWh5u/78uYs=;
  b=GnV+nF9CPvUGCBPJXuBf2NcPxN3Hs6D8jFI5y9x5oA9/YNDIPMYRIuD2
   D4TFkYy+quDxHwkfxgk97dWe0fqHg3dOxgPwakqp+oOBreiifxcaQGx32
   0gvWaTHbRjklZTBXvvwjYyueRqHXFJp6rc6/O3K5raN8k3RaF2KD3HI+l
   rL6LpE1TGdiKeScRWnPcy9vqsE9aOiuIXXCZPKizns7AY95pLHdFSHhmL
   +h43RAH83PG8azSSsxR7NsLDup4oPD3ps6y4g1iRpuMNtFZhDF4+ToLLp
   gZmrhxbNdKO7pc1lndrKjUpX2Cu3YNaat0Xv7iEheDKhszx3qRebJQRqh
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="358968103"
X-IronPort-AV: E=Sophos;i="6.02,143,1688454000"; 
   d="scan'208";a="358968103"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="744167790"
X-IronPort-AV: E=Sophos;i="6.02,143,1688454000"; 
   d="scan'208";a="744167790"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FErUEGCsMxgq6/pegpE4q6K76mN+tAer5cdKQhYEwdSEERa+K/E5wAABUna/x+Vr6ukzim2nJ/qQKlqkod/vdkJB8K42X4G1ZBU4jc/CRIJj2cBytp2y3MJmdRMvGe5vxcsJTMw/0PRUzMURBw/b4yqp401J1fY2qZ6MBgoCVOKj5NsUh/woAu4+fbvQUdOn+L+4S0zhtvL3ka8Lglwek527tMdj5yAKAkVgLOKUH06OCs4pWsZbRK4cMeg0sUnR16d0mPc9Q9TCLA9RKbL69GMExVBn6wjSRJQw8NTQX31ijNzRgRPQOcasFvuLSgDWPWKWAXLxucVGP7JQNCj/lQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=s/GThrrS38ODFaqgFkp5l+ooqfkqDQHpUWh5u/78uYs=;
 b=BiDsZ9zGOrxvGnPBfTZPdZrsvNQMYASk95vL8o+ZY8M4Nj0P3uGl5qBy9a6tbF5GmGG62MmuQOohJH2Ye+R3PQtF54mnYy1AVEqUMhlQGbfmqnvM7JXu67qPjwOv15joeeoFfEJ/NUUuIKx4Y3AC4k70U2ma/REXzUM5t2HteHEvmz/9he1itvczceeYW9+DJDjoaO5K3VuBv4zMGwXsleX7kTIG1ilt3DCcjlc8YAjuLx0ocys14fICMQiAay4k+tV0fB6WUiCaVky+RmvZCXmPWaDqCMvcDuLA1PYTqbXG+QsXdYJVXptnjJBv7hy42ZYliBIdEwVDMNUgKefGaA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Luck, Tony" <tony.luck@intel.com>
To: Yazen Ghannam <yazen.ghannam@amd.com>, Borislav Petkov <bp@alien8.de>,
	Elliott Mitchell <ehem+xen@m5p.com>
CC: "smita.koralahallichannabasappa@amd.com"
	<smita.koralahallichannabasappa@amd.com>, "linux-edac@vger.kernel.org"
	<linux-edac@vger.kernel.org>, "linux-kernel@vger.kernel.org"
	<linux-kernel@vger.kernel.org>, "x86@kernel.org" <x86@kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	"rric@kernel.org" <rric@kernel.org>, "james.morse@arm.com"
	<james.morse@arm.com>
Subject: RE: [PATCH] Revert "EDAC/mce_amd: Do not load edac_mce_amd module on
 guests"
Thread-Topic: [PATCH] Revert "EDAC/mce_amd: Do not load edac_mce_amd module on
 guests"
Thread-Index: AQHZ4gHSSeZV30FbCEm60ywcBMZ8pbAQTaKAgAiN0ACAABNOsA==
Date: Wed, 13 Sep 2023 15:50:12 +0000
Message-ID: <SJ1PR11MB6083BDC4D10D139EF28E0058FCF0A@SJ1PR11MB6083.namprd11.prod.outlook.com>
References: <20210628172740.245689-1-Smita.KoralahalliChannabasappa@amd.com>
 <ZPqQEHXgmak1LMNh@mattapan.m5p.com>
 <20230908035911.GAZPqcD/EjfKZ0ISrZ@fat_crate.local>
 <40d3399a-b260-4ffa-a503-40c61468a189@amd.com>
In-Reply-To: <40d3399a-b260-4ffa-a503-40c61468a189@amd.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SJ1PR11MB6083:EE_|CY8PR11MB7315:EE_
x-ms-office365-filtering-correlation-id: 1cbf4288-e90e-4377-685b-08dbb4711d67
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: kuVStuOANwofl7nuLr5THZ0qfolJ2OXfH+iYVdsvoaHGX3ClaO4Y5xalkbK1wv59HeicILcBF5iDe8XnodW4r7WGFoorhoch5AwvFuHZ2B0oAlO9+7zAK0dZxSLVxI24w61HlrCrgQ2hp9Pcn6PT15nPnXIbHnEX+DBxpAlVLus8JxeJq0wrmh5EIQqNyypdFKs7IiqdMVIe9z7dFtgdVoYkwtOFi1DBKJ8//5ZsO1+Zkgo/00M0r3WF7i79hmlKZvP5zR5L4auo97AT0dIprflWh8p/+w+9xtfxGUGdlLHeeuYBq0qA9tP2f0AgoIXNUqZpEmTK70ymlODWEqTlRSD/4h5q42dnGI0vdMCniYPkz2LjCBAcddPpnMerI+33XIqV7iceeWIijVCUqmWSSw+Utv46lr+GmWmD8RAjoBnQqA3aeuNbP/k305EdocoviKnR65gBB9QOsvWdzj23Dr3C9ghVlEUYavFHdZZec5mWav3HW/eJsKLAJcJHTJxwIUGhAPcgEjPoWvag99P88FOcb4nfp0+Ik3oLQGyYDkiXevwgV7dvdOoBJv9o4dTGyqgKS9hTENimHNKEW1IxMsmDe8NyAxhcmS+cS/Wo36k+neDjHWOoiRalQkjM0sXd
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ1PR11MB6083.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(346002)(396003)(136003)(366004)(186009)(451199024)(1800799009)(5660300002)(26005)(52536014)(8676002)(8936002)(4326008)(2906002)(33656002)(7416002)(83380400001)(86362001)(38100700002)(4744005)(82960400001)(55016003)(122000001)(38070700005)(66946007)(66476007)(54906003)(66556008)(110136005)(66446008)(316002)(71200400001)(64756008)(76116006)(41300700001)(7696005)(478600001)(9686003)(6506007);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Q2tuRFRKSHFML09lSmJyajZIRkUrVUNwSDkzV3FlRlFQUnkzZFZLcXBrdDk4?=
 =?utf-8?B?RStKWURGOHZrdDFmSFdkTDlLRU9Helk1OTBpR25sSXVDTzFIaVExNktuSjcy?=
 =?utf-8?B?bWdjQzhUa2RuTTkzTjIxZlUwL21oYW4vUjFmN1J4b05ERE9VWmxpVlZDL1pv?=
 =?utf-8?B?S2VJM1NsazlpSE5wSEVaMEhFTGJpRFUvVU9sMFFEZkg2WVlITUZYdG1nUWoy?=
 =?utf-8?B?bzNxOWR0R3IzdmNyandySmg1VzN6NVZRQVZnY1lRSW51UENyY1diU29CWlVm?=
 =?utf-8?B?UHI3Z29NTzVUVHlwekN2OUwrUllSQWp0QmpkcUMzUWJVNW5SMHZmN0J5TlA2?=
 =?utf-8?B?TnNXWXp2dUNhWWdtL2FURFdMeFBVRDhRWitOZzkvVEg4T1dCZnMrMmUxQU5E?=
 =?utf-8?B?VmZ2S2d5VTZ3YjVmRkFTOTdFRnppcTBqMEc4VmlHaXB3dzhZa0wxb1czQzJQ?=
 =?utf-8?B?ZlBhRzB3M2lMTTdFSlRmTFZxZ2JYZ05qbDJPVzA3Z1YxUmdZVjh4eUQ5U1RZ?=
 =?utf-8?B?UDk5MHcwMDZsamY3WCtETitrbEs3alJjaTlUaFpMWTJ2QVFsSURtVVNZa2pL?=
 =?utf-8?B?N2FwOVFDNGR3UkVSN0lNTGtQVDhvaHluZGFvL0hUQ0ovVk5qY3M1czduclNG?=
 =?utf-8?B?cm1UbFNOa3JIMno2TEFwYnZ2RUowQnNISVFWUkFMa0Y1TGJzNDZKcU9jMjMv?=
 =?utf-8?B?ZDF0VE1BNVFiWHliOHZKVEdWbnZrcThIWXM4WlpjWW9CU2NWL0RhUC9NYjkv?=
 =?utf-8?B?SDNEd1VWTnAzbjZvZzlEZ29BMGVkZmtFcDRwWkNEcVNHZHBlYjd5VWdmUk5o?=
 =?utf-8?B?ZUxQaXhpbVJncTk4QURpcE92YVdEcTNMdEpLNFJpVUsxTTl5bG9tS1Z6ZTJS?=
 =?utf-8?B?SmNXbUhPdGduSWtUOVRGeFU3YmlOamlHd2xrQkY4bTVTUk0zVzZNZ1V6U0di?=
 =?utf-8?B?aGlKZmhyVTd3bVZkS2hHeEs4UXZSTXZXeWxVRnFsVCtyMHFVVWd6aWU4Nlll?=
 =?utf-8?B?NytoRjZzNm5PQUJkT0VTWW9FZ3pQUTVSSTU1VDRCcEVYOU5lQ0p4V0JybXd5?=
 =?utf-8?B?YUZlbjh2WS81d1lXT3I2V2wzRFByRmlJb051NzlyVWNmL1ZnUUE0dkppbzBw?=
 =?utf-8?B?ZDgrcUw5REpVaWdDZmV4RGVna2pPZjFJRDlSV0FFWmdrV2xOYU9MdDV1TUVt?=
 =?utf-8?B?Q0VaKzdITjZWMGpoK0pUZWF2MXA4VGo4UmhXWmhIRVozS1l0bXVNejlqY0ow?=
 =?utf-8?B?U2lwdGdpYXdZNm5LTVNEd0k4akhHNVRpZzBDRURvdnk0ZVZ1NEcxSDQzSWRO?=
 =?utf-8?B?T3R6aEJDcE9vMFJRaDRFQXpiNS95ajYrQmpTb1dHUmRUR1dSUEpDdXNrZlBL?=
 =?utf-8?B?VWg1R2FKRWc0WnFYOVpwQzZCdzhWTEtJREtZRTVyV3M2dVNNa1hHcW15R2xh?=
 =?utf-8?B?bVB3TEFMQ0lHanNKVTV2VzV5YWxEUUt0SEVEZTQ5eVdHRXBUSDlHTCsrdVRr?=
 =?utf-8?B?R1hkQWUwWFFrU1ZCeWZyODNUTnRFam1JMlF1RkZZNFRjejZwdFdGUW9YdGwy?=
 =?utf-8?B?VS8vTm1LWnRCR2dWV2FxT0dEL041bDA3UWd5Uy8rZW1RK0NhcXBPQitreWx4?=
 =?utf-8?B?ZVlwTTFneW9vRjFKRHZUaGRBLyt2WnkwQ3ZZZEZ2YU4wNzVFeW1HbSttTHAz?=
 =?utf-8?B?SEVNN0NYQjRVRStJYi9RL0NuV3BpSUlWbU1sUVZxZ3ByczlzaEl1cjVqMm9k?=
 =?utf-8?B?NFBHTzh4djFHZDRucXZWbE1OR0pUNUFYV2tDRUltNXJkTlNkdEFYUFRDeHFC?=
 =?utf-8?B?Zi9BcGp2U0krbHcwNGtkOVI1KzhicnVTMXo0aDJKOVladlBKYjZCMFg5MFFP?=
 =?utf-8?B?Wi9uc1hEeTFvRU5JcFl5aVJHb05wUUxIZVllVUthaFNmbEQrV1U2elExMDR3?=
 =?utf-8?B?eEhMTklmbExobExTRHlvQ0JPT0pBN01hYXpOSnVHOWtpQUtpYnlqRjVtU0ln?=
 =?utf-8?B?WGRWK0g5ODZqVTlCMGpvQlQ5anowTEYyeU16L0tLZlI2TFNXRFNMcHgzSHUx?=
 =?utf-8?B?UTBlZEMvbFZyQzFwa3ZtZEhxZmtJTTNPejlVczRzazhrQVBNMmRsUWZLV2pp?=
 =?utf-8?Q?CUeZT02twdvJqfYb0+m3t1QyV?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SJ1PR11MB6083.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1cbf4288-e90e-4377-685b-08dbb4711d67
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Sep 2023 15:50:12.0558
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: L7p97N/Do5zP8eD9PWhVo8V0hKIaSwWrLvK/HNN5zwnTU0no4tUn6cJHiXSAtCHD7QAIPvC3omZgJGe/mZX0Pw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR11MB7315
X-OriginatorOrg: intel.com

PiBBbHNvLCBwbGVhc2Ugbm90ZSB0aGF0IHRoZSBFREFDIG1vZHVsZXMgZG9uJ3QgaGFuZGxlIE1D
RSBldmVudHMNCj4gZGlyZWN0bHkuIFRoZXkgYWN0IG9uIGluZm9ybWF0aW9uIHBhc3NlZCBmcm9t
IHRoZSBNQ0Ugc3Vic3lzdGVtLg0KPg0KPiBGdXJ0aGVybW9yZSwgdGhlcmUgYXJlIG90aGVyIEVE
QUMgbW9kdWxlcyB0aGF0IGhhdmUgdGhlIHNhbWUgIWh5cGVydmlzb3INCj4gY2hlY2ssIHNvIHdo
eSBjaGFuZ2Ugb25seSB0aGlzIG9uZT8NCg0KVGhlIG9sZGVyIEludGVsIEVEQUMgZHJpdmVycyB0
cmFuc2xhdGVkIHN5c3RlbSBwaHlzaWNhbCBhZGRyZXNzZXMgdG8gRElNTQ0KYWRkcmVzc2VzIGJ5
IGRpZ2dpbmcgYXJvdW5kIGluIHRoZSBDT05GSUcgYW5kIE1NSU8gc3BhY2Ugb2YgdGhlIG1lbW9y
eQ0KY29udHJvbGxlciBkZXZpY2VzLiBJdCB3b3VsZCBzZWVtIHVud2lzZSBmb3IgYSBWTU0gdG8g
Z2l2ZSBhY2Nlc3MgdG8gdGhvc2UNCmFkZHJlc3NlcyB0byBhIGd1ZXN0IChpbiBnZW5lcmFsIC4u
LiBwZXJoYXBzIE9LIGZvciBhIFhlbiBzdHlsZSAiRE9NMCIgZ3Vlc3QgdGhhdCBpcw0KaGFuZGxp
bmcgbWFueSB0YXNrcyBmb3IgdGhlIFZNTT8pLg0KDQpXaGF0IHN5c3RlbSByZXNvdXJjZXMgZG8g
QU1EIEVEQUMgZHJpdmVycyBuZWVkIGFjY2VzcyB0bz8gQ291bGQgdGhleQ0Kd29yayBpbnNpZGUg
YSBndWVzdD8NCg0KLVRvbnkNCg0KDQo=


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 16:32:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 16:32:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601498.937506 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgSmU-0004iB-Ge; Wed, 13 Sep 2023 16:31:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601498.937506; Wed, 13 Sep 2023 16:31:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgSmU-0004i4-Dh; Wed, 13 Sep 2023 16:31:58 +0000
Received: by outflank-mailman (input) for mailman id 601498;
 Wed, 13 Sep 2023 16:31:57 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xM15=E5=cloud.com=kelly.choi@srs-se1.protection.inumbo.net>)
 id 1qgSmT-0004hy-4Q
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 16:31:57 +0000
Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com
 [2a00:1450:4864:20::42e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0c6515c3-5253-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 18:31:55 +0200 (CEST)
Received: by mail-wr1-x42e.google.com with SMTP id
 ffacd0b85a97d-31f6ddb3047so6888966f8f.1
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 09:31:54 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0c6515c3-5253-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694622713; x=1695227513; darn=lists.xenproject.org;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=cdMb535OD4+ZFN1hEEhJaRly87Gdiar1NF7LHXDszEY=;
        b=hacTxDiQKAvljgP3F47SWS+h3CertRmliE7HYm1jt1DycflyPAWVeFGv4VLTeJTfuE
         pGqUhG3Zd3WNIXfmNV9b8raxA/IM+NaljzGj9DmA1cJwsHTjyAkVTCty0v/4bvMlbTXs
         m/hiwkT0FW75Gd87wllCgN2aYL9/1iaMvpHY8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694622713; x=1695227513;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=cdMb535OD4+ZFN1hEEhJaRly87Gdiar1NF7LHXDszEY=;
        b=N8iklUS3m0EjLsLVugtB7RZKDc2s8hisY9988WPl/7LbxjRRQA2BQF0MBmfRr5ikAx
         1czXR4ofS4AwV9gDwBZnZ2HbAuBUhR58XAyAniikY5a1DqCNsbu/s7I2oAT6ZdDezh/B
         W8GsPutcLzzIgXj6swsWfhq1/kdUlUM2DuiJEjwdSoczDTcBaVZ5XhaK4rI2Nd4W34cs
         kFC+bkvbUpAZ5zjN7qdQa7aJSplXhhOgzOY+2ISFdf8/YX5E/rn6u8WRgbxM5InQ+g/u
         2HBBmJxCYMrNSx4BXtelTdLZqeq5EpFokUZvjS92/656dlBW6YL/jc+lcwzu4MqbsvHr
         8o8Q==
X-Gm-Message-State: AOJu0Yy89dqxGQSgA3R6A3mekacQyK+Ox056lVSwdLEOoP4SnEDgAgGL
	iS/fqpMgckcgU1PqgA5k5nxqCJvKzkseb03WNH0D2jlerL7gmp17RRk=
X-Google-Smtp-Source: AGHT+IFbvN0UKGmAcBNfIG93bxONO8fDoZx99QLW30bcs/EESh6JR45TP7ZUgJOy6EqA0w1g8JoM6c4BxIDn8HQk9dY=
X-Received: by 2002:adf:f38c:0:b0:315:8a13:ef17 with SMTP id
 m12-20020adff38c000000b003158a13ef17mr2572155wro.65.1694622713021; Wed, 13
 Sep 2023 09:31:53 -0700 (PDT)
MIME-Version: 1.0
From: Kelly Choi <kelly.choi@cloud.com>
Date: Wed, 13 Sep 2023 17:31:17 +0100
Message-ID: <CAO-mL=zc3sOnnqPiWXTxUSJxxC=eF6B6V+mmFaQa=Oo2ZcZ9cw@mail.gmail.com>
Subject: Community Guidelines
To: xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="000000000000d6a0140605401835"

--000000000000d6a0140605401835
Content-Type: text/plain; charset="UTF-8"

Hi all,

I hope everyone is well.

First and foremost, I want to express my appreciation for the dedication
and hard work everyone has put into this project. It is evident that you
have the best interests of the community at heart, and your contributions
are invaluable.

It is natural for disagreements to arise in collaborative environments,
especially within the context of open-source projects where diversity of
opinion is a strength. It is important that we approach these situations
with a mindset of finding common ground and moving forward for the
betterment of the project.

In situations like this, it is helpful to be reminded that decisions
should:

   1. Focus on the Project's Goals: Remind ourselves of the overarching
   goals and vision of the project. What will best serve the community,
   maintain the integrity of the codebase, and align with the project's
   objectives?
   2. Seek Compromise: Explore potential areas of compromise or alternative
   solutions that may address the concerns raised by both parties. This may
   involve finding a middle ground or suggesting modifications to the patch.

It is crucial that all members maintain a high level of respect,
professionalism, and courtesy towards one another. Disagreements are
natural, and they should be seen as opportunities for growth rather than
sources of conflict.

As a community, we also have rules in place to ensure effective
collaboration and a fair way of operating within the project. As such,
please be advised that if an individual continues to operate by breaking
rules, warnings will be given and consequences will be followed.
I do hope that it will never come to such a stage, but my role is to ensure
actions are accountable and that each decision made is in the best interest
of the project and community members.

Following on from the above, I will be working with you all on an updated
process to ensure any future potential conflicts are handled fairly.

Again, thank you for your continued dedication to this project.
Should you have any concerns, please message me directly.

Kelly
Open Source Community Manager, XenServer
Cloud Software Group

--000000000000d6a0140605401835
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hi all,</div><div><br></div><div>I hope everyone is w=
ell.</div><div><br></div>First and foremost, I want to express my appreciat=
ion for the dedication and hard work everyone has put into this project. It=
 is evident that you have the best interests of the community at heart, and=
 your contributions are invaluable.<br><br>It is natural for disagreements =
to arise in collaborative environments, especially within the context of op=
en-source projects where diversity of opinion is a strength. It is importan=
t that we approach these situations with a mindset of finding common ground=
 and moving forward for the betterment of the project.<div><br>In situation=
s like this, it is helpful to be reminded that decisions should:=C2=A0<br><=
div><ol><li style=3D"margin-left:15px">Focus on the Project&#39;s Goals: Re=
mind ourselves of the overarching goals and vision of the project. What wil=
l best serve the community, maintain the integrity of the codebase, and ali=
gn with the project&#39;s objectives?</li><li style=3D"margin-left:15px">Se=
ek Compromise: Explore potential areas of compromise or alternative solutio=
ns that may address the concerns raised by both parties. This may involve f=
inding a middle ground or suggesting modifications to the patch.</li></ol>I=
t is crucial that all members maintain a high level of respect, professiona=
lism, and courtesy towards one another. Disagreements are natural, and they=
 should be seen as opportunities for growth rather than sources of conflict=
.</div><div><br></div><div>As a community, we also have rules in place to e=
nsure effective collaboration and a fair way of operating within the projec=
t. As such, please be advised that if an individual continues to operate by=
 breaking rules, warnings will be given and consequences will be followed.=
=C2=A0</div><div>I do hope that it will never come to such a stage, but my =
role is to ensure actions are accountable and that each decision made is in=
 the best interest of the project and community members.=C2=A0</div><div><b=
r>Following on from the above, I will be working with you all on an updated=
 process to ensure any future=C2=A0potential conflicts are handled fairly.<=
/div><div><br>Again, thank you for your continued dedication to this projec=
t.=C2=A0</div><div>Should you have any concerns, please message me directly=
.</div><div><br></div><div><div><div dir=3D"ltr" class=3D"gmail_signature">=
<div dir=3D"ltr"><div>Kelly</div></div></div></div></div><div><div dir=3D"l=
tr" class=3D"gmail_signature" data-smartmail=3D"gmail_signature"><div dir=
=3D"ltr"><div><div style=3D"color:rgb(136,136,136)">Open Source Community M=
anager, XenServer</div><div style=3D"color:rgb(136,136,136)">Cloud Software=
 Group</div></div></div></div></div></div></div>

--000000000000d6a0140605401835--


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 17:33:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 17:33:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601510.937516 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgTk7-0006nP-19; Wed, 13 Sep 2023 17:33:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601510.937516; Wed, 13 Sep 2023 17:33:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgTk6-0006nI-Ub; Wed, 13 Sep 2023 17:33:34 +0000
Received: by outflank-mailman (input) for mailman id 601510;
 Wed, 13 Sep 2023 17:33:33 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qgTk5-0006nC-Kl
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 17:33:33 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgTk5-0004KM-7T; Wed, 13 Sep 2023 17:33:33 +0000
Received: from [15.248.2.159] (helo=[10.24.67.43])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgTk5-00077m-0t; Wed, 13 Sep 2023 17:33:33 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=7C2MIXPy49yL0+TdNYtdpn9CK3qOX0WWILjKFe6pbuQ=; b=vfYbhSS8UV+CiWZ8dccgojs9iW
	dGim5qBik9ZRJV9MQtV5/cf8ZL3mQxPsDNgNgaXZwmOmx1fxSUVixrdd3W1LKZnYTOlQxZ6b6Mhea
	Z6Ig2ORbsL2UWINKX8S91+QXvQfZwMA9XWXQwN4lcG0AowLRK6AwyhtWScHu+c6rhNBI=;
Message-ID: <b761c7eb-342b-4dba-b521-44b03f8e5fdf@xen.org>
Date: Wed, 13 Sep 2023 18:33:31 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
Content-Language: en-GB
To: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230912105341.16687-1-michal.orzel@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230912105341.16687-1-michal.orzel@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Michal,

On 12/09/2023 11:53, Michal Orzel wrote:
> Skip the following Xen specific host device tree nodes/properties
> from being included into hardware domain /chosen node:
>   - xen,static-heap: this property informs Xen about memory regions
>     reserved exclusively as static heap,
>   - xen,domain-shared-memory-v1: node with this compatible informs Xen
>     about static shared memory region for a domain. Xen exposes a different
>     node (under /reserved-memory with compatible "xen,shared-memory-v1") to
>     let domain know about the shared region,
>   - xen,evtchn-v1: node with this compatible informs Xen about static
>     event channel configuration for a domain. Xen does not expose
>     information about static event channels to domUs and dom0 case was
>     overlooked (by default nodes from host dt are copied to dom0 fdt unless
>     explicitly marked to be skipped), since the author's idea was not to
>     expose it (refer docs/misc/arm/device-tree/booting.txt, "Static Event
>     Channel"). Even if we wanted to expose the static event channel
>     information, the current node is in the wrong format (i.e. contains
>     phandle to domU node not visible by dom0). Lastly, this feature is
>     marked as tech-preview and there is no Linux dt binding in place.
> 
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 17:41:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 17:41:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601516.937525 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgTrF-0000JE-P4; Wed, 13 Sep 2023 17:40:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601516.937525; Wed, 13 Sep 2023 17:40:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgTrF-0000J7-MP; Wed, 13 Sep 2023 17:40:57 +0000
Received: by outflank-mailman (input) for mailman id 601516;
 Wed, 13 Sep 2023 17:40:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qgTrD-0000J1-TD
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 17:40:55 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgTrB-0004c2-QG; Wed, 13 Sep 2023 17:40:53 +0000
Received: from [15.248.2.159] (helo=[10.24.67.43])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgTrB-0007QR-Jb; Wed, 13 Sep 2023 17:40:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=npT2dt5PXOm/3skYvTdj+c04tmQDm/HsMaioDNAsZbw=; b=EqO7Wd2zgLwRr9wJk18cOtXJWp
	tiT7TXC16qUoABBfQFRtMm1GuX4Qk9lWbUZbMNDfLYfpm3nnxsyPM6BFd6XxBvE5MWetgbek0nhhH
	Fo+L65PONGWPCJygXQOaJTUadNRJKzemIlcTu54pu1WA06dunTHxQsqg6NuwVm62Me/w=;
Message-ID: <7921332e-1c0f-4586-b309-5cd5a19af069@xen.org>
Date: Wed, 13 Sep 2023 18:40:51 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent timing
 mode
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>, Henry Wang <Henry.Wang@arm.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>
References: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
 <29A9BF11-7ECF-4C3E-9D5E-9D44E63A297A@arm.com>
 <497c7d09-e5ef-96dc-5740-9163a94a79bf@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <497c7d09-e5ef-96dc-5740-9163a94a79bf@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 12/09/2023 07:21, Jan Beulich wrote:
> On 12.09.2023 02:48, Henry Wang wrote:
>>> On Sep 11, 2023, at 23:01, Jan Beulich <jbeulich@suse.com> wrote:
>>> --- a/docs/misc/xen-command-line.pandoc
>>> +++ b/docs/misc/xen-command-line.pandoc
>>> @@ -788,6 +788,14 @@ Specify the size of the console debug tr
>>> additionally a trace buffer of the specified size is allocated per cpu.
>>> The debug trace feature is only enabled in debugging builds of Xen.
>>>
>>> +### dit (x86)
>>> +> `= <boolean>`
>>> +
>>> +> Default: `CONFIG_DIT_DEFAULT`
>>> +
>>> +Specify whether Xen and guests should operate in Data Independent Timing
>>> +mode.
>>> +
>>
>> Since a new cmdline interface is added, I am wondering would such
>> addtion deserves a CHANGELOG entry?
> 
> I'm open to opinions, albeit not so much because of the added command line
> option.

I think it would make sense to add an entry to say the user can now 
decide the operation mode for DIT.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 17:56:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 17:56:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601522.937535 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgU6D-0002tm-1Q; Wed, 13 Sep 2023 17:56:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601522.937535; Wed, 13 Sep 2023 17:56:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgU6C-0002tf-V8; Wed, 13 Sep 2023 17:56:24 +0000
Received: by outflank-mailman (input) for mailman id 601522;
 Wed, 13 Sep 2023 17:56:23 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qgU6B-0002sK-IG
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 17:56:23 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgU6A-0004sP-FI; Wed, 13 Sep 2023 17:56:22 +0000
Received: from [15.248.2.159] (helo=[10.24.67.43])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgU6A-0007ty-7D; Wed, 13 Sep 2023 17:56:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=ksKg5BLOi+cnp2sS4u+gQyJ5yiZxt1Q9KO8tlPRO0+M=; b=YNNqWsLGbu/UT2QEoyGFMjyIwc
	9BpSDjSoPbNwAfZen3K4HfkXvQZFuKCdZt9IjcPnXFn+72rumSLF3QJQTT8QSWdiNB/8XAm3EJqxM
	Vxm6gySYMsYsh1CgyGBRjp99DRE9OGQw3rCwuTaxWBLGahpL+3A8FPCWA7YpmZSX0OHY=;
Message-ID: <e4ab7415-cf72-4c04-93dd-fd393f49f6f5@xen.org>
Date: Wed, 13 Sep 2023 18:56:20 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent timing
 mode
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 11/09/2023 16:01, Jan Beulich wrote:
> [1] specifies a long list of instructions which are intended to exhibit
> timing behavior independent of the data they operate on. On certain
> hardware this independence is optional, controlled by a bit in a new
> MSR. Provide a command line option to control the mode Xen and its
> guests are to operate in, with a build time control over the default.
> Longer term we may want to allow guests to control this.

If I read correctly the discussion on the previous version. There was 
some concern with this version of patch. I can't find anything public 
suggesting that the concerned were dismissed. Do you have any pointer?

> Since Arm64 supposedly also has such a control, put command line option
> and Kconfig control in common files.
> 
> [1] https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/best-practices/data-operand-independent-timing-isa-guidance.html
> 
> Requested-by: Demi Marie Obenour <demi@invisiblethingslab.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> This may be viewed as a new feature, and hence be too late for 4.18. It
> may, however, also be viewed as security relevant, which is why I'd like
> to propose to at least consider it.
> 
> Slightly RFC, in particular for whether the Kconfig option should
> default to Y or N.

I am not entirely sure. I understand that DIT will help in the 
cryptographic case but it is not clear to me what is the performance impact.

> 
> I would have wanted to invoke setup_doitm() from cpu_init(), but that
> works only on the BSP. On APs cpu_init() runs before ucode loading.
> Plus recheck_cpu_features() invoking identify_cpu() takes care of the
> BSP during S3 resume.
> ---
> v2: Introduce and use cpu_has_doitm. Add comment "borrowed" from the
>      XenServer patch queue patch providing similar functionality.
>      Re-base.
> 
> --- a/docs/misc/xen-command-line.pandoc
> +++ b/docs/misc/xen-command-line.pandoc
> @@ -788,6 +788,14 @@ Specify the size of the console debug tr
>   additionally a trace buffer of the specified size is allocated per cpu.
>   The debug trace feature is only enabled in debugging builds of Xen.
>   
> +### dit (x86)
> +> `= <boolean>`
> +
> +> Default: `CONFIG_DIT_DEFAULT`
> +
> +Specify whether Xen and guests should operate in Data Independent Timing
> +mode.
> +
>   ### dma_bits
>   > `= <integer>`
>   
> --- a/xen/arch/x86/Kconfig
> +++ b/xen/arch/x86/Kconfig
> @@ -15,6 +15,7 @@ config X86
>   	select HAS_ALTERNATIVE
>   	select HAS_COMPAT
>   	select HAS_CPUFREQ
> +	select HAS_DIT
>   	select HAS_EHCI
>   	select HAS_EX_TABLE
>   	select HAS_FAST_MULTIPLY
> --- a/xen/arch/x86/cpu/common.c
> +++ b/xen/arch/x86/cpu/common.c
> @@ -204,6 +204,28 @@ void ctxt_switch_levelling(const struct
>   		alternative_vcall(ctxt_switch_masking, next);
>   }
>   
> +static void setup_doitm(void)
> +{
> +    uint64_t msr;
> +
> +    if ( !cpu_has_doitm )

I am not very familiar with the feature. If it is not present, then can 
we guarantee that the instructions will be executed in constant time?

If not, I think we should taint Xen and/or print a message if the admin 
requested to use DIT. This would make clear that the admin is trying to 
do something that doesn't work.

> +        return;
> +
> +    /*
> +     * We don't currently enumerate DOITM to guests.  As a conseqeuence, guest
> +     * kernels will believe they're safe even when they are not.
> +     *
> +     * For now, set it unilaterally.  This prevents otherwise-correct crypto
> +     * code from becoming vulnerable to timing sidechannels.
> +     */
> +
> +    rdmsrl(MSR_UARCH_MISC_CTRL, msr);
> +    msr |= UARCH_CTRL_DOITM;
> +    if ( !opt_dit )
> +        msr &= ~UARCH_CTRL_DOITM;
> +    wrmsrl(MSR_UARCH_MISC_CTRL, msr);
> +}
> +
>   bool opt_cpu_info;
>   boolean_param("cpuinfo", opt_cpu_info);
>   
> @@ -589,6 +611,8 @@ void identify_cpu(struct cpuinfo_x86 *c)
>   
>   		mtrr_bp_init();
>   	}
> +
> +	setup_doitm();
>   }
>   
>   /* leaf 0xb SMT level */
> --- a/xen/arch/x86/include/asm/cpufeature.h
> +++ b/xen/arch/x86/include/asm/cpufeature.h
> @@ -201,6 +201,7 @@ static inline bool boot_cpu_has(unsigned
>   #define cpu_has_if_pschange_mc_no boot_cpu_has(X86_FEATURE_IF_PSCHANGE_MC_NO)
>   #define cpu_has_tsx_ctrl        boot_cpu_has(X86_FEATURE_TSX_CTRL)
>   #define cpu_has_taa_no          boot_cpu_has(X86_FEATURE_TAA_NO)
> +#define cpu_has_doitm           boot_cpu_has(X86_FEATURE_DOITM)
>   #define cpu_has_fb_clear        boot_cpu_has(X86_FEATURE_FB_CLEAR)
>   #define cpu_has_rrsba           boot_cpu_has(X86_FEATURE_RRSBA)
>   #define cpu_has_gds_ctrl        boot_cpu_has(X86_FEATURE_GDS_CTRL)
> --- a/xen/common/Kconfig
> +++ b/xen/common/Kconfig
> @@ -41,6 +41,9 @@ config HAS_COMPAT
>   config HAS_DEVICE_TREE
>   	bool
>   
> +config HAS_DIT # Data Independent Timing
> +	bool
> +
>   config HAS_EX_TABLE
>   	bool
>   
> @@ -175,6 +178,18 @@ config SPECULATIVE_HARDEN_GUEST_ACCESS
>   
>   endmenu
>   
> +config DIT_DEFAULT
> +	bool "Data Independent Timing default"
> +	depends on HAS_DIT
> +	help
> +	  Hardware often surfaces instructions the timing of which is dependent
> +	  on the data they process.  Some of these instructions may be used in
> +	  timing sensitive environments, e.g. cryptography.  When such
> +	  instructions exist, hardware may further surface a control allowing
> +	  to make the behavior of such instructions independent of the data
> +	  they act upon.  Choose the default here for when no "dit" command line
> +	  option is present.
> +
>   config HYPFS
>   	bool "Hypervisor file system support"
>   	default y
> --- a/xen/common/kernel.c
> +++ b/xen/common/kernel.c
> @@ -28,6 +28,11 @@ CHECK_feature_info;
>   
>   enum system_state system_state = SYS_STATE_early_boot;
>   
> +#ifdef CONFIG_HAS_DIT
> +bool __ro_after_init opt_dit = IS_ENABLED(CONFIG_DIT_DEFAULT);
> +boolean_param("dit", opt_dit);
> +#endif
> +
>   static xen_commandline_t saved_cmdline;
>   static const char __initconst opt_builtin_cmdline[] = CONFIG_CMDLINE;
>   
> --- a/xen/include/xen/param.h
> +++ b/xen/include/xen/param.h
> @@ -184,6 +184,8 @@ extern struct param_hypfs __paramhypfs_s
>       string_param(_name, _var); \
>       string_runtime_only_param(_name, _var)
>   
> +extern bool opt_dit;
> +
>   static inline void no_config_param(const char *cfg, const char *param,
>                                      const char *s, const char *e)
>   {

Cheers,

[1] 
https://lore.kernel.org/all/8f07c532-e742-fa02-27ee-b08c56299d09@citrix.com/

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 18:31:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 18:31:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601528.937545 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgUe6-00017O-O6; Wed, 13 Sep 2023 18:31:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601528.937545; Wed, 13 Sep 2023 18:31:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgUe6-00017H-KQ; Wed, 13 Sep 2023 18:31:26 +0000
Received: by outflank-mailman (input) for mailman id 601528;
 Wed, 13 Sep 2023 18:31:25 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgUe5-000177-M8; Wed, 13 Sep 2023 18:31:25 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgUe5-0005fn-Jh; Wed, 13 Sep 2023 18:31:25 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgUe5-0006us-2V; Wed, 13 Sep 2023 18:31:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgUe5-00061z-24; Wed, 13 Sep 2023 18:31:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=3vsPBKhSO/65MqxT0zwW1GMCiz4RKm1s1TL7yV+z3DI=; b=NYBw9fXf8ytVUrBXYGMhrCUhPg
	87+zbmXZNEXgjujMij3M/dtO3GhVh2oyMSXahB5E3gXYJNDiTLqL2l5pR7j+lY5D1nNnBrkSBnIK/
	ZrYAXC+evo362HIPRAmcbgGFJH1ZFf+pNxsVs5pEjAhJP8qqpt1Sc2r8PQ/IU+mAxIf0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182989-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 182989: regressions - trouble: blocked/broken/fail/pass
X-Osstest-Failures:
    libvirt:build-i386:<job status>:broken:regression
    libvirt:build-i386-pvops:<job status>:broken:regression
    libvirt:build-i386-xsm:<job status>:broken:regression
    libvirt:build-i386-xsm:host-install(4):broken:regression
    libvirt:build-i386:host-install(4):broken:regression
    libvirt:build-i386-pvops:host-install(4):broken:regression
    libvirt:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:regression
    libvirt:build-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-pair:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:build-check(1):blocked:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:build-check(1):blocked:nonblocking
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=4ef2bcfd3fd8d40ac2671f2bb9c1784d20d71a65
X-Osstest-Versions-That:
    libvirt=ca40725a2101c597c03661771a4e546001f629cc
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 13 Sep 2023 18:31:25 +0000

flight 182989 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182989/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-i386                      <job status>                 broken
 build-i386-pvops                <job status>                 broken
 build-i386-xsm                  <job status>                 broken
 build-i386-xsm                4 host-install(4)        broken REGR. vs. 182958
 build-i386                    4 host-install(4)        broken REGR. vs. 182958
 build-i386-pvops              4 host-install(4)        broken REGR. vs. 182958
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail REGR. vs. 182958

Tests which did not succeed, but are not blocking:
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt       1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-pair  1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 1 build-check(1) blocked n/a
 test-amd64-i386-libvirt-raw   1 build-check(1)               blocked  n/a
 test-amd64-i386-libvirt-xsm   1 build-check(1)               blocked  n/a
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182958
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182958
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182958
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              4ef2bcfd3fd8d40ac2671f2bb9c1784d20d71a65
baseline version:
 libvirt              ca40725a2101c597c03661771a4e546001f629cc

Last test of basis   182958  2023-09-12 04:18:50 Z    1 days
Testing same since   182989  2023-09-13 04:18:52 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Erik Skultety <eskultet@redhat.com>
  Jonathon Jongsma <jjongsma@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               broken  
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   broken  
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             broken  
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            blocked 
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  blocked 
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      blocked 
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 blocked 
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-libvirt-raw                                  blocked 
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary

broken-job build-i386 broken
broken-job build-i386-pvops broken
broken-job build-i386-xsm broken
broken-step build-i386-xsm host-install(4)
broken-step build-i386 host-install(4)
broken-step build-i386-pvops host-install(4)

Not pushing.

(No revision log; it would be 563 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 19:40:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 19:40:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601537.937557 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgViX-0002ts-Kv; Wed, 13 Sep 2023 19:40:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601537.937557; Wed, 13 Sep 2023 19:40:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgViX-0002tl-F6; Wed, 13 Sep 2023 19:40:05 +0000
Received: by outflank-mailman (input) for mailman id 601537;
 Wed, 13 Sep 2023 19:40:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=KJQj=E5=redhat.com=stefanha@srs-se1.protection.inumbo.net>)
 id 1qgViW-0002L0-3R
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 19:40:04 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 52e60c16-526d-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 21:40:00 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-688-ChcbR3hJOZ-Ea6N80BKXWA-1; Wed, 13 Sep 2023 15:39:55 -0400
Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com
 [10.11.54.6])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id CA548185A790;
 Wed, 13 Sep 2023 19:39:54 +0000 (UTC)
Received: from localhost (unknown [10.39.192.13])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 044F12156721;
 Wed, 13 Sep 2023 19:39:53 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 52e60c16-526d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694633998;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=76/ewL4c7/k1SZpXhmL+Sg/xYYAmvWTOVxC4Gwpe93c=;
	b=D4g5yeG5aeqEM0gMXaIlJNS+ODFtDPFwx/ryvj5vQpGdeahIM7h90isnI6YlWFOo5AbRZo
	p/cWqXqj6TrCg3HCeQuYmRh15J9LF0omHehVtYJuIRr7xKOlLxt0kOCrClItnQTrKlSvDy
	UTWs9MY54qirUae9T7mjZWBnuPjoQP4=
X-MC-Unique: ChcbR3hJOZ-Ea6N80BKXWA-1
Date: Wed, 13 Sep 2023 15:39:52 -0400
From: Stefan Hajnoczi <stefanha@redhat.com>
To: Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>
Cc: qemu-devel@nongnu.org, qemu-block@nongnu.org,
	Fam Zheng <fam@euphon.net>, xen-devel@lists.xenproject.org,
	Anthony Perard <anthony.perard@citrix.com>,
	Hanna Reitz <hreitz@redhat.com>, Kevin Wolf <kwolf@redhat.com>,
	Julia Suvorova <jusual@redhat.com>,
	Stefano Garzarella <sgarzare@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Aarushi Mehta <mehta.aaru20@gmail.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Paul Durrant <paul@xen.org>, Ilya Maximets <i.maximets@ovn.org>
Subject: Re: [PATCH v2 2/4] util/defer-call: move defer_call() to util/
Message-ID: <20230913193952.GA917540@fedora>
References: <20230817155847.3605115-1-stefanha@redhat.com>
 <20230817155847.3605115-3-stefanha@redhat.com>
 <5ad95579-f8f3-2926-dd37-bd84151f10ac@linaro.org>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="lyQbDpdO8ddpDhX4"
Content-Disposition: inline
In-Reply-To: <5ad95579-f8f3-2926-dd37-bd84151f10ac@linaro.org>
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6


--lyQbDpdO8ddpDhX4
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Aug 18, 2023 at 10:31:40AM +0200, Philippe Mathieu-Daud=E9 wrote:
> Hi Stefan,
>=20
> On 17/8/23 17:58, Stefan Hajnoczi wrote:
> > The networking subsystem may wish to use defer_call(), so move the code
> > to util/ where it can be reused.
> >=20
> > As a reminder of what defer_call() does:
> >=20
> > This API defers a function call within a defer_call_begin()/defer_call_=
end()
> > section, allowing multiple calls to batch up. This is a performance
> > optimization that is used in the block layer to submit several I/O requ=
ests
> > at once instead of individually:
> >=20
> >    defer_call_begin(); <-- start of section
> >    ...
> >    defer_call(my_func, my_obj); <-- deferred my_func(my_obj) call
> >    defer_call(my_func, my_obj); <-- another
> >    defer_call(my_func, my_obj); <-- another
> >    ...
> >    defer_call_end(); <-- end of section, my_func(my_obj) is called once
> >=20
> > Suggested-by: Ilya Maximets <i.maximets@ovn.org>
> > Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
> > ---
> >   MAINTAINERS                       |  3 ++-
> >   include/qemu/defer-call.h         | 15 +++++++++++++++
> >   include/sysemu/block-backend-io.h |  4 ----
> >   block/blkio.c                     |  1 +
> >   block/io_uring.c                  |  1 +
> >   block/linux-aio.c                 |  1 +
> >   block/nvme.c                      |  1 +
> >   hw/block/dataplane/xen-block.c    |  1 +
> >   hw/block/virtio-blk.c             |  1 +
> >   hw/scsi/virtio-scsi.c             |  1 +
> >   block/plug.c =3D> util/defer-call.c |  2 +-
> >   block/meson.build                 |  1 -
> >   util/meson.build                  |  1 +
> >   13 files changed, 26 insertions(+), 7 deletions(-)
> >   create mode 100644 include/qemu/defer-call.h
> >   rename block/plug.c =3D> util/defer-call.c (99%)
> >=20
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index 6111b6b4d9..7cd7132ffc 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -2676,12 +2676,13 @@ S: Supported
> >   F: util/async.c
> >   F: util/aio-*.c
> >   F: util/aio-*.h
> > +F: util/defer-call.c
>=20
> If used by network/other backends, maybe worth adding a
> brand new section instead, rather than "Block I/O path".

Changes to defer-call.c will go through my block tree. We don't split
out the event loop (async.c, aio-*.c, etc) either even though it's
shared by other subsystems. The important thing is that
scripts/get_maintainer.pl identifies the maintainers.

I'd rather not create lots of micro-subsystems in MAINTAINERS that
duplicate my email and block git repo URL.

>=20
> >   F: util/fdmon-*.c
> >   F: block/io.c
> > -F: block/plug.c
> >   F: migration/block*
> >   F: include/block/aio.h
> >   F: include/block/aio-wait.h
> > +F: include/qemu/defer-call.h
> >   F: scripts/qemugdb/aio.py
> >   F: tests/unit/test-fdmon-epoll.c
> >   T: git https://github.com/stefanha/qemu.git block
> > diff --git a/include/qemu/defer-call.h b/include/qemu/defer-call.h
> > new file mode 100644
> > index 0000000000..291f86c987
> > --- /dev/null
> > +++ b/include/qemu/defer-call.h
> > @@ -0,0 +1,15 @@
> > +/* SPDX-License-Identifier: GPL-2.0-or-later */
> > +/*
> > + * Deferred calls
> > + *
> > + * Copyright Red Hat.
> > + */
> > +
> > +#ifndef QEMU_DEFER_CALL_H
> > +#define QEMU_DEFER_CALL_H
> > +
>=20
> Please add smth like:
>=20
>    /* See documentation in util/defer-call.c */

Sure, will fix.

>=20
> > +void defer_call_begin(void);
> > +void defer_call_end(void);
> > +void defer_call(void (*fn)(void *), void *opaque);
> > +
> > +#endif /* QEMU_DEFER_CALL_H */
>=20
> Reviewed-by: Philippe Mathieu-Daud=E9 <philmd@linaro.org>
>=20

--lyQbDpdO8ddpDhX4
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhpWov9P5fNqsNXdanKSrs4Grc8gFAmUCEAgACgkQnKSrs4Gr
c8hAmgf9E2O/DQNWurhzEXWw4NoN8tFv+RFmdKRjgSWppte+VSUZO46QaWB4y6/C
B1LwPQTljnRoxfLeThTaVcryoGp74Bpt9KmA6X1/0WIz+eQBV7EpEGZtYfgJVaPI
idS4XylvuP7bW34HjBT8dnRo/femAuCiheV/cK/mXu/w1N2pnqmRL3wwsjjh9uh+
msGLG3NbFr+GoJDX/XyogX+em9DiNZeiKNKs1b6VIqOxQIYKV/Tm9lh/ujDjwtu+
whUB+602U4J1IHG46NOfPYrt3jskfKbduRBn4za/lyFB7UHv/a1HeshAIIkrDDsK
fWnDKU89QGtDJT7heQeFsu8ek/TJZQ==
=qWcW
-----END PGP SIGNATURE-----

--lyQbDpdO8ddpDhX4--



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:01:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:01:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601544.937565 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgW2h-0006RW-5O; Wed, 13 Sep 2023 20:00:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601544.937565; Wed, 13 Sep 2023 20:00:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgW2h-0006RP-2s; Wed, 13 Sep 2023 20:00:55 +0000
Received: by outflank-mailman (input) for mailman id 601544;
 Wed, 13 Sep 2023 20:00:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=KJQj=E5=redhat.com=stefanha@srs-se1.protection.inumbo.net>)
 id 1qgW2f-0006RI-PN
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:00:53 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3cd519d6-5270-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 22:00:51 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-581-1gwriteAPry7x7A5OQM54w-1; Wed, 13 Sep 2023 16:00:48 -0400
Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com
 [10.11.54.6])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id AC275805B29;
 Wed, 13 Sep 2023 20:00:47 +0000 (UTC)
Received: from localhost (unknown [10.39.192.13])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 2074A2156721;
 Wed, 13 Sep 2023 20:00:46 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3cd519d6-5270-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694635250;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=nD7AyJZmmyRxiB9nG0IYAzAL7ZwFQ3Xa6S9su6nyaIc=;
	b=cH38GwRvBahH8OF9o5wQco8JAbqxLxIcHnrBH5np0/eue6GNmz5lHWCFHfIEyTsfkE3aQo
	NkTjSKJRjThQ3+4ueKSMKOWI6jSN9KIa0x3cYO2uHVT8XFsIegQN9PoLS1zaagzkdBdFLc
	uy14Lbk2n0KthbA2Z9m1nt18ics/gQk=
X-MC-Unique: 1gwriteAPry7x7A5OQM54w-1
From: Stefan Hajnoczi <stefanha@redhat.com>
To: qemu-devel@nongnu.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Ilya Maximets <i.maximets@ovn.org>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Kevin Wolf <kwolf@redhat.com>,
	xen-devel@lists.xenproject.org,
	Anthony Perard <anthony.perard@citrix.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	<qemu-block@nongnu.org>,
	Julia Suvorova <jusual@redhat.com>,
	Aarushi Mehta <mehta.aaru20@gmail.com>,
	Paul Durrant <paul@xen.org>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Fam Zheng <fam@euphon.net>,
	Stefano Garzarella <sgarzare@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>
Subject: [PATCH v3 0/4] virtio-blk: use blk_io_plug_call() instead of notification BH
Date: Wed, 13 Sep 2023 16:00:41 -0400
Message-ID: <20230913200045.1024233-1-stefanha@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6

v3:
- Add comment pointing to API documentation in .c file [Philippe]
- Add virtio_notify_irqfd_deferred_fn trace event [Ilya]
- Remove outdated #include [Ilya]
v2:
- Rename blk_io_plug() to defer_call() and move it to util/ so the net
  subsystem can use it [Ilya]
- Add defer_call_begin()/end() to thread_pool_completion_bh() to match Linux
  AIO and io_uring completion batching

Replace the seldom-used virtio-blk notification BH mechanism with
blk_io_plug(). This is part of an effort to enable the multi-queue block layer
in virtio-blk. The notification BH was not multi-queue friendly.

The blk_io_plug() mechanism improves fio rw=randread bs=4k iodepth=64 numjobs=8
IOPS by ~9% with a single IOThread and 8 vCPUs (this is not even a multi-queue
block layer configuration) compared to no completion batching. iodepth=1
decreases by ~1% but this could be noise. Benchmark details are available here:
https://gitlab.com/stefanha/virt-playbooks/-/tree/blk_io_plug-irqfd

Stefan Hajnoczi (4):
  block: rename blk_io_plug_call() API to defer_call()
  util/defer-call: move defer_call() to util/
  virtio: use defer_call() in virtio_irqfd_notify()
  virtio-blk: remove batch notification BH

 MAINTAINERS                       |   3 +-
 include/qemu/defer-call.h         |  16 +++
 include/sysemu/block-backend-io.h |   4 -
 block/blkio.c                     |   9 +-
 block/io_uring.c                  |  11 ++-
 block/linux-aio.c                 |   9 +-
 block/nvme.c                      |   5 +-
 block/plug.c                      | 159 ------------------------------
 hw/block/dataplane/virtio-blk.c   |  48 +--------
 hw/block/dataplane/xen-block.c    |  11 ++-
 hw/block/virtio-blk.c             |   5 +-
 hw/scsi/virtio-scsi.c             |   7 +-
 hw/virtio/virtio.c                |  13 ++-
 util/defer-call.c                 | 156 +++++++++++++++++++++++++++++
 util/thread-pool.c                |   5 +
 block/meson.build                 |   1 -
 hw/virtio/trace-events            |   1 +
 util/meson.build                  |   1 +
 18 files changed, 231 insertions(+), 233 deletions(-)
 create mode 100644 include/qemu/defer-call.h
 delete mode 100644 block/plug.c
 create mode 100644 util/defer-call.c

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:01:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:01:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601545.937576 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgW2r-0006ii-G0; Wed, 13 Sep 2023 20:01:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601545.937576; Wed, 13 Sep 2023 20:01:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgW2r-0006iZ-9q; Wed, 13 Sep 2023 20:01:05 +0000
Received: by outflank-mailman (input) for mailman id 601545;
 Wed, 13 Sep 2023 20:01:04 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=KJQj=E5=redhat.com=stefanha@srs-se1.protection.inumbo.net>)
 id 1qgW2q-0006hx-2d
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:01:04 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 43455a95-5270-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 22:01:02 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-614-PwMA5HczPguv2YeuDT1NhA-1; Wed, 13 Sep 2023 16:00:56 -0400
Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com
 [10.11.54.2])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 1BF8B857A9D;
 Wed, 13 Sep 2023 20:00:55 +0000 (UTC)
Received: from localhost (unknown [10.39.192.13])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 10CD640C6EBF;
 Wed, 13 Sep 2023 20:00:48 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 43455a95-5270-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694635261;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=pG2WPZLRqDLjPAdddF1KKTi0oO1n+tSekW4IHh1/dp4=;
	b=TaEu0B6j7lNdai1MjO/xRT11xDT483roe+4KRIyuhtUEEbMWwA0NgUt5eEZJwSaWdodXes
	HqeG6Fx1jKecmhXexqfpDd7Tqo1idKfbViOsFlnOAX2FFo7BwJ00kARgMTzqmft/LAZKCG
	p3Wk1OkR4fVJWJEYz4h16l6vtBSoTyc=
X-MC-Unique: PwMA5HczPguv2YeuDT1NhA-1
From: Stefan Hajnoczi <stefanha@redhat.com>
To: qemu-devel@nongnu.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Ilya Maximets <i.maximets@ovn.org>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Kevin Wolf <kwolf@redhat.com>,
	xen-devel@lists.xenproject.org,
	Anthony Perard <anthony.perard@citrix.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	<qemu-block@nongnu.org>,
	Julia Suvorova <jusual@redhat.com>,
	Aarushi Mehta <mehta.aaru20@gmail.com>,
	Paul Durrant <paul@xen.org>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Fam Zheng <fam@euphon.net>,
	Stefano Garzarella <sgarzare@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>
Subject: [PATCH v3 1/4] block: rename blk_io_plug_call() API to defer_call()
Date: Wed, 13 Sep 2023 16:00:42 -0400
Message-ID: <20230913200045.1024233-2-stefanha@redhat.com>
In-Reply-To: <20230913200045.1024233-1-stefanha@redhat.com>
References: <20230913200045.1024233-1-stefanha@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2

Prepare to move the blk_io_plug_call() API out of the block layer so
that other subsystems call use this deferred call mechanism. Rename it
to defer_call() but leave the code in block/plug.c.

The next commit will move the code out of the block layer.

Suggested-by: Ilya Maximets <i.maximets@ovn.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Paul Durrant <paul@xen.org>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 include/sysemu/block-backend-io.h |   6 +-
 block/blkio.c                     |   8 +--
 block/io_uring.c                  |   4 +-
 block/linux-aio.c                 |   4 +-
 block/nvme.c                      |   4 +-
 block/plug.c                      | 109 +++++++++++++++---------------
 hw/block/dataplane/xen-block.c    |  10 +--
 hw/block/virtio-blk.c             |   4 +-
 hw/scsi/virtio-scsi.c             |   6 +-
 9 files changed, 76 insertions(+), 79 deletions(-)

diff --git a/include/sysemu/block-backend-io.h b/include/sysemu/block-backend-io.h
index be4dcef59d..cfcfd85c1d 100644
--- a/include/sysemu/block-backend-io.h
+++ b/include/sysemu/block-backend-io.h
@@ -100,9 +100,9 @@ void blk_iostatus_set_err(BlockBackend *blk, int error);
 int blk_get_max_iov(BlockBackend *blk);
 int blk_get_max_hw_iov(BlockBackend *blk);
 
-void blk_io_plug(void);
-void blk_io_unplug(void);
-void blk_io_plug_call(void (*fn)(void *), void *opaque);
+void defer_call_begin(void);
+void defer_call_end(void);
+void defer_call(void (*fn)(void *), void *opaque);
 
 AioContext *blk_get_aio_context(BlockBackend *blk);
 BlockAcctStats *blk_get_stats(BlockBackend *blk);
diff --git a/block/blkio.c b/block/blkio.c
index 1dd495617c..7cf6d61f47 100644
--- a/block/blkio.c
+++ b/block/blkio.c
@@ -312,10 +312,10 @@ static void blkio_detach_aio_context(BlockDriverState *bs)
 }
 
 /*
- * Called by blk_io_unplug() or immediately if not plugged. Called without
- * blkio_lock.
+ * Called by defer_call_end() or immediately if not in a deferred section.
+ * Called without blkio_lock.
  */
-static void blkio_unplug_fn(void *opaque)
+static void blkio_deferred_fn(void *opaque)
 {
     BDRVBlkioState *s = opaque;
 
@@ -332,7 +332,7 @@ static void blkio_submit_io(BlockDriverState *bs)
 {
     BDRVBlkioState *s = bs->opaque;
 
-    blk_io_plug_call(blkio_unplug_fn, s);
+    defer_call(blkio_deferred_fn, s);
 }
 
 static int coroutine_fn
diff --git a/block/io_uring.c b/block/io_uring.c
index 69d9820928..8429f341be 100644
--- a/block/io_uring.c
+++ b/block/io_uring.c
@@ -306,7 +306,7 @@ static void ioq_init(LuringQueue *io_q)
     io_q->blocked = false;
 }
 
-static void luring_unplug_fn(void *opaque)
+static void luring_deferred_fn(void *opaque)
 {
     LuringState *s = opaque;
     trace_luring_unplug_fn(s, s->io_q.blocked, s->io_q.in_queue,
@@ -367,7 +367,7 @@ static int luring_do_submit(int fd, LuringAIOCB *luringcb, LuringState *s,
             return ret;
         }
 
-        blk_io_plug_call(luring_unplug_fn, s);
+        defer_call(luring_deferred_fn, s);
     }
     return 0;
 }
diff --git a/block/linux-aio.c b/block/linux-aio.c
index 1a51503271..49a37174c2 100644
--- a/block/linux-aio.c
+++ b/block/linux-aio.c
@@ -353,7 +353,7 @@ static uint64_t laio_max_batch(LinuxAioState *s, uint64_t dev_max_batch)
     return max_batch;
 }
 
-static void laio_unplug_fn(void *opaque)
+static void laio_deferred_fn(void *opaque)
 {
     LinuxAioState *s = opaque;
 
@@ -393,7 +393,7 @@ static int laio_do_submit(int fd, struct qemu_laiocb *laiocb, off_t offset,
         if (s->io_q.in_queue >= laio_max_batch(s, dev_max_batch)) {
             ioq_submit(s);
         } else {
-            blk_io_plug_call(laio_unplug_fn, s);
+            defer_call(laio_deferred_fn, s);
         }
     }
 
diff --git a/block/nvme.c b/block/nvme.c
index b6e95f0b7e..dfbd1085fd 100644
--- a/block/nvme.c
+++ b/block/nvme.c
@@ -476,7 +476,7 @@ static void nvme_trace_command(const NvmeCmd *cmd)
     }
 }
 
-static void nvme_unplug_fn(void *opaque)
+static void nvme_deferred_fn(void *opaque)
 {
     NVMeQueuePair *q = opaque;
 
@@ -503,7 +503,7 @@ static void nvme_submit_command(NVMeQueuePair *q, NVMeRequest *req,
     q->need_kick++;
     qemu_mutex_unlock(&q->lock);
 
-    blk_io_plug_call(nvme_unplug_fn, q);
+    defer_call(nvme_deferred_fn, q);
 }
 
 static void nvme_admin_cmd_sync_cb(void *opaque, int ret)
diff --git a/block/plug.c b/block/plug.c
index 98a155d2f4..f26173559c 100644
--- a/block/plug.c
+++ b/block/plug.c
@@ -1,24 +1,21 @@
 /* SPDX-License-Identifier: GPL-2.0-or-later */
 /*
- * Block I/O plugging
+ * Deferred calls
  *
  * Copyright Red Hat.
  *
- * This API defers a function call within a blk_io_plug()/blk_io_unplug()
+ * This API defers a function call within a defer_call_begin()/defer_call_end()
  * section, allowing multiple calls to batch up. This is a performance
  * optimization that is used in the block layer to submit several I/O requests
  * at once instead of individually:
  *
- *   blk_io_plug(); <-- start of plugged region
+ *   defer_call_begin(); <-- start of section
  *   ...
- *   blk_io_plug_call(my_func, my_obj); <-- deferred my_func(my_obj) call
- *   blk_io_plug_call(my_func, my_obj); <-- another
- *   blk_io_plug_call(my_func, my_obj); <-- another
+ *   defer_call(my_func, my_obj); <-- deferred my_func(my_obj) call
+ *   defer_call(my_func, my_obj); <-- another
+ *   defer_call(my_func, my_obj); <-- another
  *   ...
- *   blk_io_unplug(); <-- end of plugged region, my_func(my_obj) is called once
- *
- * This code is actually generic and not tied to the block layer. If another
- * subsystem needs this functionality, it could be renamed.
+ *   defer_call_end(); <-- end of section, my_func(my_obj) is called once
  */
 
 #include "qemu/osdep.h"
@@ -27,66 +24,66 @@
 #include "qemu/thread.h"
 #include "sysemu/block-backend.h"
 
-/* A function call that has been deferred until unplug() */
+/* A function call that has been deferred until defer_call_end() */
 typedef struct {
     void (*fn)(void *);
     void *opaque;
-} UnplugFn;
+} DeferredCall;
 
 /* Per-thread state */
 typedef struct {
-    unsigned count;       /* how many times has plug() been called? */
-    GArray *unplug_fns;   /* functions to call at unplug time */
-} Plug;
+    unsigned nesting_level;
+    GArray *deferred_call_array;
+} DeferCallThreadState;
 
-/* Use get_ptr_plug() to fetch this thread-local value */
-QEMU_DEFINE_STATIC_CO_TLS(Plug, plug);
+/* Use get_ptr_defer_call_thread_state() to fetch this thread-local value */
+QEMU_DEFINE_STATIC_CO_TLS(DeferCallThreadState, defer_call_thread_state);
 
 /* Called at thread cleanup time */
-static void blk_io_plug_atexit(Notifier *n, void *value)
+static void defer_call_atexit(Notifier *n, void *value)
 {
-    Plug *plug = get_ptr_plug();
-    g_array_free(plug->unplug_fns, TRUE);
+    DeferCallThreadState *thread_state = get_ptr_defer_call_thread_state();
+    g_array_free(thread_state->deferred_call_array, TRUE);
 }
 
 /* This won't involve coroutines, so use __thread */
-static __thread Notifier blk_io_plug_atexit_notifier;
+static __thread Notifier defer_call_atexit_notifier;
 
 /**
- * blk_io_plug_call:
+ * defer_call:
  * @fn: a function pointer to be invoked
  * @opaque: a user-defined argument to @fn()
  *
- * Call @fn(@opaque) immediately if not within a blk_io_plug()/blk_io_unplug()
- * section.
+ * Call @fn(@opaque) immediately if not within a
+ * defer_call_begin()/defer_call_end() section.
  *
  * Otherwise defer the call until the end of the outermost
- * blk_io_plug()/blk_io_unplug() section in this thread. If the same
+ * defer_call_begin()/defer_call_end() section in this thread. If the same
  * @fn/@opaque pair has already been deferred, it will only be called once upon
- * blk_io_unplug() so that accumulated calls are batched into a single call.
+ * defer_call_end() so that accumulated calls are batched into a single call.
  *
  * The caller must ensure that @opaque is not freed before @fn() is invoked.
  */
-void blk_io_plug_call(void (*fn)(void *), void *opaque)
+void defer_call(void (*fn)(void *), void *opaque)
 {
-    Plug *plug = get_ptr_plug();
+    DeferCallThreadState *thread_state = get_ptr_defer_call_thread_state();
 
-    /* Call immediately if we're not plugged */
-    if (plug->count == 0) {
+    /* Call immediately if we're not deferring calls */
+    if (thread_state->nesting_level == 0) {
         fn(opaque);
         return;
     }
 
-    GArray *array = plug->unplug_fns;
+    GArray *array = thread_state->deferred_call_array;
     if (!array) {
-        array = g_array_new(FALSE, FALSE, sizeof(UnplugFn));
-        plug->unplug_fns = array;
-        blk_io_plug_atexit_notifier.notify = blk_io_plug_atexit;
-        qemu_thread_atexit_add(&blk_io_plug_atexit_notifier);
+        array = g_array_new(FALSE, FALSE, sizeof(DeferredCall));
+        thread_state->deferred_call_array = array;
+        defer_call_atexit_notifier.notify = defer_call_atexit;
+        qemu_thread_atexit_add(&defer_call_atexit_notifier);
     }
 
-    UnplugFn *fns = (UnplugFn *)array->data;
-    UnplugFn new_fn = {
+    DeferredCall *fns = (DeferredCall *)array->data;
+    DeferredCall new_fn = {
         .fn = fn,
         .opaque = opaque,
     };
@@ -106,46 +103,46 @@ void blk_io_plug_call(void (*fn)(void *), void *opaque)
 }
 
 /**
- * blk_io_plug: Defer blk_io_plug_call() functions until blk_io_unplug()
+ * defer_call_begin: Defer defer_call() functions until defer_call_end()
  *
- * blk_io_plug/unplug are thread-local operations. This means that multiple
- * threads can simultaneously call plug/unplug, but the caller must ensure that
- * each unplug() is called in the same thread of the matching plug().
+ * defer_call_begin() and defer_call_end() are thread-local operations. The
+ * caller must ensure that each defer_call_begin() has a matching
+ * defer_call_end() in the same thread.
  *
- * Nesting is supported. blk_io_plug_call() functions are only called at the
- * outermost blk_io_unplug().
+ * Nesting is supported. defer_call() functions are only called at the
+ * outermost defer_call_end().
  */
-void blk_io_plug(void)
+void defer_call_begin(void)
 {
-    Plug *plug = get_ptr_plug();
+    DeferCallThreadState *thread_state = get_ptr_defer_call_thread_state();
 
-    assert(plug->count < UINT32_MAX);
+    assert(thread_state->nesting_level < UINT32_MAX);
 
-    plug->count++;
+    thread_state->nesting_level++;
 }
 
 /**
- * blk_io_unplug: Run any pending blk_io_plug_call() functions
+ * defer_call_end: Run any pending defer_call() functions
  *
- * There must have been a matching blk_io_plug() call in the same thread prior
- * to this blk_io_unplug() call.
+ * There must have been a matching defer_call_begin() call in the same thread
+ * prior to this defer_call_end() call.
  */
-void blk_io_unplug(void)
+void defer_call_end(void)
 {
-    Plug *plug = get_ptr_plug();
+    DeferCallThreadState *thread_state = get_ptr_defer_call_thread_state();
 
-    assert(plug->count > 0);
+    assert(thread_state->nesting_level > 0);
 
-    if (--plug->count > 0) {
+    if (--thread_state->nesting_level > 0) {
         return;
     }
 
-    GArray *array = plug->unplug_fns;
+    GArray *array = thread_state->deferred_call_array;
     if (!array) {
         return;
     }
 
-    UnplugFn *fns = (UnplugFn *)array->data;
+    DeferredCall *fns = (DeferredCall *)array->data;
 
     for (guint i = 0; i < array->len; i++) {
         fns[i].fn(fns[i].opaque);
diff --git a/hw/block/dataplane/xen-block.c b/hw/block/dataplane/xen-block.c
index 3b6f2b0aa2..e9dd8f8a99 100644
--- a/hw/block/dataplane/xen-block.c
+++ b/hw/block/dataplane/xen-block.c
@@ -509,7 +509,7 @@ static int xen_block_get_request(XenBlockDataPlane *dataplane,
 
 /*
  * Threshold of in-flight requests above which we will start using
- * blk_io_plug()/blk_io_unplug() to batch requests.
+ * defer_call_begin()/defer_call_end() to batch requests.
  */
 #define IO_PLUG_THRESHOLD 1
 
@@ -537,7 +537,7 @@ static bool xen_block_handle_requests(XenBlockDataPlane *dataplane)
      * is below us.
      */
     if (inflight_atstart > IO_PLUG_THRESHOLD) {
-        blk_io_plug();
+        defer_call_begin();
     }
     while (rc != rp) {
         /* pull request from ring */
@@ -577,12 +577,12 @@ static bool xen_block_handle_requests(XenBlockDataPlane *dataplane)
 
         if (inflight_atstart > IO_PLUG_THRESHOLD &&
             batched >= inflight_atstart) {
-            blk_io_unplug();
+            defer_call_end();
         }
         xen_block_do_aio(request);
         if (inflight_atstart > IO_PLUG_THRESHOLD) {
             if (batched >= inflight_atstart) {
-                blk_io_plug();
+                defer_call_begin();
                 batched = 0;
             } else {
                 batched++;
@@ -590,7 +590,7 @@ static bool xen_block_handle_requests(XenBlockDataPlane *dataplane)
         }
     }
     if (inflight_atstart > IO_PLUG_THRESHOLD) {
-        blk_io_unplug();
+        defer_call_end();
     }
 
     return done_something;
diff --git a/hw/block/virtio-blk.c b/hw/block/virtio-blk.c
index 39e7f23fab..6a45033d15 100644
--- a/hw/block/virtio-blk.c
+++ b/hw/block/virtio-blk.c
@@ -1134,7 +1134,7 @@ void virtio_blk_handle_vq(VirtIOBlock *s, VirtQueue *vq)
     bool suppress_notifications = virtio_queue_get_notification(vq);
 
     aio_context_acquire(blk_get_aio_context(s->blk));
-    blk_io_plug();
+    defer_call_begin();
 
     do {
         if (suppress_notifications) {
@@ -1158,7 +1158,7 @@ void virtio_blk_handle_vq(VirtIOBlock *s, VirtQueue *vq)
         virtio_blk_submit_multireq(s, &mrb);
     }
 
-    blk_io_unplug();
+    defer_call_end();
     aio_context_release(blk_get_aio_context(s->blk));
 }
 
diff --git a/hw/scsi/virtio-scsi.c b/hw/scsi/virtio-scsi.c
index 45b95ea070..c2465e3e88 100644
--- a/hw/scsi/virtio-scsi.c
+++ b/hw/scsi/virtio-scsi.c
@@ -799,7 +799,7 @@ static int virtio_scsi_handle_cmd_req_prepare(VirtIOSCSI *s, VirtIOSCSIReq *req)
         return -ENOBUFS;
     }
     scsi_req_ref(req->sreq);
-    blk_io_plug();
+    defer_call_begin();
     object_unref(OBJECT(d));
     return 0;
 }
@@ -810,7 +810,7 @@ static void virtio_scsi_handle_cmd_req_submit(VirtIOSCSI *s, VirtIOSCSIReq *req)
     if (scsi_req_enqueue(sreq)) {
         scsi_req_continue(sreq);
     }
-    blk_io_unplug();
+    defer_call_end();
     scsi_req_unref(sreq);
 }
 
@@ -836,7 +836,7 @@ static void virtio_scsi_handle_cmd_vq(VirtIOSCSI *s, VirtQueue *vq)
                 while (!QTAILQ_EMPTY(&reqs)) {
                     req = QTAILQ_FIRST(&reqs);
                     QTAILQ_REMOVE(&reqs, req, next);
-                    blk_io_unplug();
+                    defer_call_end();
                     scsi_req_unref(req->sreq);
                     virtqueue_detach_element(req->vq, &req->elem, 0);
                     virtio_scsi_free_req(req);
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:01:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:01:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601546.937580 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgW2r-0006kV-N2; Wed, 13 Sep 2023 20:01:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601546.937580; Wed, 13 Sep 2023 20:01:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgW2r-0006jH-IL; Wed, 13 Sep 2023 20:01:05 +0000
Received: by outflank-mailman (input) for mailman id 601546;
 Wed, 13 Sep 2023 20:01:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=KJQj=E5=redhat.com=stefanha@srs-se1.protection.inumbo.net>)
 id 1qgW2q-0006RI-Du
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:01:04 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 43625a95-5270-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 22:01:02 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-303-I8LERHS8PpC5WWseqPnzKg-1; Wed, 13 Sep 2023 16:00:58 -0400
Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com
 [10.11.54.3])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 5C57788905A;
 Wed, 13 Sep 2023 20:00:57 +0000 (UTC)
Received: from localhost (unknown [10.39.192.13])
 by smtp.corp.redhat.com (Postfix) with ESMTP id C1B9910F1BE7;
 Wed, 13 Sep 2023 20:00:56 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 43625a95-5270-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694635261;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=vZx2mIKFs9Ta6GgBCR1MQ0gDXiljqmR/KSAIKi0gYQc=;
	b=BdWFWU7MxQBY56c8Y7hU0g0tfxDOHJHCEbQ9/rSM71KsBAkxDRnlu6IH0n6pg/t/mcdh9v
	7DH/HQJXuTkoWB1CfcdEA+4GIPezBiqciDWlZeAO/4UKlavPtMPdmqRmrr3H8q7WULUIS0
	bJnDoiCMhSlDpbxnsJK0vRmR0nG6yMw=
X-MC-Unique: I8LERHS8PpC5WWseqPnzKg-1
From: Stefan Hajnoczi <stefanha@redhat.com>
To: qemu-devel@nongnu.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Ilya Maximets <i.maximets@ovn.org>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Kevin Wolf <kwolf@redhat.com>,
	xen-devel@lists.xenproject.org,
	Anthony Perard <anthony.perard@citrix.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	<qemu-block@nongnu.org>,
	Julia Suvorova <jusual@redhat.com>,
	Aarushi Mehta <mehta.aaru20@gmail.com>,
	Paul Durrant <paul@xen.org>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Fam Zheng <fam@euphon.net>,
	Stefano Garzarella <sgarzare@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>
Subject: [PATCH v3 2/4] util/defer-call: move defer_call() to util/
Date: Wed, 13 Sep 2023 16:00:43 -0400
Message-ID: <20230913200045.1024233-3-stefanha@redhat.com>
In-Reply-To: <20230913200045.1024233-1-stefanha@redhat.com>
References: <20230913200045.1024233-1-stefanha@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.3

The networking subsystem may wish to use defer_call(), so move the code
to util/ where it can be reused.

As a reminder of what defer_call() does:

This API defers a function call within a defer_call_begin()/defer_call_end()
section, allowing multiple calls to batch up. This is a performance
optimization that is used in the block layer to submit several I/O requests
at once instead of individually:

  defer_call_begin(); <-- start of section
  ...
  defer_call(my_func, my_obj); <-- deferred my_func(my_obj) call
  defer_call(my_func, my_obj); <-- another
  defer_call(my_func, my_obj); <-- another
  ...
  defer_call_end(); <-- end of section, my_func(my_obj) is called once

Suggested-by: Ilya Maximets <i.maximets@ovn.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 MAINTAINERS                       |  3 ++-
 include/qemu/defer-call.h         | 16 ++++++++++++++++
 include/sysemu/block-backend-io.h |  4 ----
 block/blkio.c                     |  1 +
 block/io_uring.c                  |  1 +
 block/linux-aio.c                 |  1 +
 block/nvme.c                      |  1 +
 hw/block/dataplane/xen-block.c    |  1 +
 hw/block/virtio-blk.c             |  1 +
 hw/scsi/virtio-scsi.c             |  1 +
 block/plug.c => util/defer-call.c |  2 +-
 block/meson.build                 |  1 -
 util/meson.build                  |  1 +
 13 files changed, 27 insertions(+), 7 deletions(-)
 create mode 100644 include/qemu/defer-call.h
 rename block/plug.c => util/defer-call.c (99%)

diff --git a/MAINTAINERS b/MAINTAINERS
index 00562f924f..acda735326 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2685,12 +2685,13 @@ S: Supported
 F: util/async.c
 F: util/aio-*.c
 F: util/aio-*.h
+F: util/defer-call.c
 F: util/fdmon-*.c
 F: block/io.c
-F: block/plug.c
 F: migration/block*
 F: include/block/aio.h
 F: include/block/aio-wait.h
+F: include/qemu/defer-call.h
 F: scripts/qemugdb/aio.py
 F: tests/unit/test-fdmon-epoll.c
 T: git https://github.com/stefanha/qemu.git block
diff --git a/include/qemu/defer-call.h b/include/qemu/defer-call.h
new file mode 100644
index 0000000000..e2c1d24572
--- /dev/null
+++ b/include/qemu/defer-call.h
@@ -0,0 +1,16 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Deferred calls
+ *
+ * Copyright Red Hat.
+ */
+
+#ifndef QEMU_DEFER_CALL_H
+#define QEMU_DEFER_CALL_H
+
+/* See documentation in util/defer-call.c */
+void defer_call_begin(void);
+void defer_call_end(void);
+void defer_call(void (*fn)(void *), void *opaque);
+
+#endif /* QEMU_DEFER_CALL_H */
diff --git a/include/sysemu/block-backend-io.h b/include/sysemu/block-backend-io.h
index cfcfd85c1d..d174275a5c 100644
--- a/include/sysemu/block-backend-io.h
+++ b/include/sysemu/block-backend-io.h
@@ -100,10 +100,6 @@ void blk_iostatus_set_err(BlockBackend *blk, int error);
 int blk_get_max_iov(BlockBackend *blk);
 int blk_get_max_hw_iov(BlockBackend *blk);
 
-void defer_call_begin(void);
-void defer_call_end(void);
-void defer_call(void (*fn)(void *), void *opaque);
-
 AioContext *blk_get_aio_context(BlockBackend *blk);
 BlockAcctStats *blk_get_stats(BlockBackend *blk);
 void *blk_aio_get(const AIOCBInfo *aiocb_info, BlockBackend *blk,
diff --git a/block/blkio.c b/block/blkio.c
index 7cf6d61f47..0a0a6c0f5f 100644
--- a/block/blkio.c
+++ b/block/blkio.c
@@ -13,6 +13,7 @@
 #include "block/block_int.h"
 #include "exec/memory.h"
 #include "exec/cpu-common.h" /* for qemu_ram_get_fd() */
+#include "qemu/defer-call.h"
 #include "qapi/error.h"
 #include "qemu/error-report.h"
 #include "qapi/qmp/qdict.h"
diff --git a/block/io_uring.c b/block/io_uring.c
index 8429f341be..3a1e1f45b3 100644
--- a/block/io_uring.c
+++ b/block/io_uring.c
@@ -15,6 +15,7 @@
 #include "block/block.h"
 #include "block/raw-aio.h"
 #include "qemu/coroutine.h"
+#include "qemu/defer-call.h"
 #include "qapi/error.h"
 #include "sysemu/block-backend.h"
 #include "trace.h"
diff --git a/block/linux-aio.c b/block/linux-aio.c
index 49a37174c2..a2670b3e46 100644
--- a/block/linux-aio.c
+++ b/block/linux-aio.c
@@ -14,6 +14,7 @@
 #include "block/raw-aio.h"
 #include "qemu/event_notifier.h"
 #include "qemu/coroutine.h"
+#include "qemu/defer-call.h"
 #include "qapi/error.h"
 #include "sysemu/block-backend.h"
 
diff --git a/block/nvme.c b/block/nvme.c
index dfbd1085fd..96b3f8f2fa 100644
--- a/block/nvme.c
+++ b/block/nvme.c
@@ -16,6 +16,7 @@
 #include "qapi/error.h"
 #include "qapi/qmp/qdict.h"
 #include "qapi/qmp/qstring.h"
+#include "qemu/defer-call.h"
 #include "qemu/error-report.h"
 #include "qemu/main-loop.h"
 #include "qemu/module.h"
diff --git a/hw/block/dataplane/xen-block.c b/hw/block/dataplane/xen-block.c
index e9dd8f8a99..c4bb28c66f 100644
--- a/hw/block/dataplane/xen-block.c
+++ b/hw/block/dataplane/xen-block.c
@@ -19,6 +19,7 @@
  */
 
 #include "qemu/osdep.h"
+#include "qemu/defer-call.h"
 #include "qemu/error-report.h"
 #include "qemu/main-loop.h"
 #include "qemu/memalign.h"
diff --git a/hw/block/virtio-blk.c b/hw/block/virtio-blk.c
index 6a45033d15..a1f8e15522 100644
--- a/hw/block/virtio-blk.c
+++ b/hw/block/virtio-blk.c
@@ -12,6 +12,7 @@
  */
 
 #include "qemu/osdep.h"
+#include "qemu/defer-call.h"
 #include "qapi/error.h"
 #include "qemu/iov.h"
 #include "qemu/module.h"
diff --git a/hw/scsi/virtio-scsi.c b/hw/scsi/virtio-scsi.c
index c2465e3e88..83c154e74e 100644
--- a/hw/scsi/virtio-scsi.c
+++ b/hw/scsi/virtio-scsi.c
@@ -18,6 +18,7 @@
 #include "standard-headers/linux/virtio_ids.h"
 #include "hw/virtio/virtio-scsi.h"
 #include "migration/qemu-file-types.h"
+#include "qemu/defer-call.h"
 #include "qemu/error-report.h"
 #include "qemu/iov.h"
 #include "qemu/module.h"
diff --git a/block/plug.c b/util/defer-call.c
similarity index 99%
rename from block/plug.c
rename to util/defer-call.c
index f26173559c..037dc0abf0 100644
--- a/block/plug.c
+++ b/util/defer-call.c
@@ -22,7 +22,7 @@
 #include "qemu/coroutine-tls.h"
 #include "qemu/notify.h"
 #include "qemu/thread.h"
-#include "sysemu/block-backend.h"
+#include "qemu/defer-call.h"
 
 /* A function call that has been deferred until defer_call_end() */
 typedef struct {
diff --git a/block/meson.build b/block/meson.build
index f351b9d0d3..59ff6d380c 100644
--- a/block/meson.build
+++ b/block/meson.build
@@ -21,7 +21,6 @@ block_ss.add(files(
   'mirror.c',
   'nbd.c',
   'null.c',
-  'plug.c',
   'preallocate.c',
   'progress_meter.c',
   'qapi.c',
diff --git a/util/meson.build b/util/meson.build
index c4827fd70a..769b24f2e0 100644
--- a/util/meson.build
+++ b/util/meson.build
@@ -28,6 +28,7 @@ util_ss.add(when: 'CONFIG_WIN32', if_true: pathcch)
 if glib_has_gslice
   util_ss.add(files('qtree.c'))
 endif
+util_ss.add(files('defer-call.c'))
 util_ss.add(files('envlist.c', 'path.c', 'module.c'))
 util_ss.add(files('host-utils.c'))
 util_ss.add(files('bitmap.c', 'bitops.c'))
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:01:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:01:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601547.937588 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgW2s-0006ts-9E; Wed, 13 Sep 2023 20:01:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601547.937588; Wed, 13 Sep 2023 20:01:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgW2s-0006t3-2e; Wed, 13 Sep 2023 20:01:06 +0000
Received: by outflank-mailman (input) for mailman id 601547;
 Wed, 13 Sep 2023 20:01:05 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=KJQj=E5=redhat.com=stefanha@srs-se1.protection.inumbo.net>)
 id 1qgW2r-0006hx-B4
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:01:05 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 449d97f9-5270-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 22:01:04 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-458-iNU3FLWrPDaVFpUU8ODbpw-1; Wed, 13 Sep 2023 16:01:00 -0400
Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com
 [10.11.54.1])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 35E25805566;
 Wed, 13 Sep 2023 20:00:59 +0000 (UTC)
Received: from localhost (unknown [10.39.192.13])
 by smtp.corp.redhat.com (Postfix) with ESMTP id A782940C2009;
 Wed, 13 Sep 2023 20:00:58 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 449d97f9-5270-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694635263;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=DFze3Cwgp+YWHC2j1jinaSyM7xhK6i4yDvggp9s94ik=;
	b=gdbgfrIx+70PYJXCkMDqt1RcxPsa4TaxXR79bwOMwAGEcANo7Ic/NNrJ6Dg9ULK97Lc2iB
	BzY7bzRD5jXizApcP+kuE8XmMWHlip6Oexjn6zbG/e/xfSRFnCEJZ8IxMSHLvZvzUNtO5f
	HQ24xN9fGYE8Y2UbHV7Bx7tpP+Mpgfo=
X-MC-Unique: iNU3FLWrPDaVFpUU8ODbpw-1
From: Stefan Hajnoczi <stefanha@redhat.com>
To: qemu-devel@nongnu.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Ilya Maximets <i.maximets@ovn.org>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Kevin Wolf <kwolf@redhat.com>,
	xen-devel@lists.xenproject.org,
	Anthony Perard <anthony.perard@citrix.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	<qemu-block@nongnu.org>,
	Julia Suvorova <jusual@redhat.com>,
	Aarushi Mehta <mehta.aaru20@gmail.com>,
	Paul Durrant <paul@xen.org>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Fam Zheng <fam@euphon.net>,
	Stefano Garzarella <sgarzare@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Eric Blake <eblake@redhat.com>
Subject: [PATCH v3 3/4] virtio: use defer_call() in virtio_irqfd_notify()
Date: Wed, 13 Sep 2023 16:00:44 -0400
Message-ID: <20230913200045.1024233-4-stefanha@redhat.com>
In-Reply-To: <20230913200045.1024233-1-stefanha@redhat.com>
References: <20230913200045.1024233-1-stefanha@redhat.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.1

virtio-blk and virtio-scsi invoke virtio_irqfd_notify() to send Used
Buffer Notifications from an IOThread. This involves an eventfd
write(2) syscall. Calling this repeatedly when completing multiple I/O
requests in a row is wasteful.

Use the defer_call() API to batch together virtio_irqfd_notify() calls
made during thread pool (aio=threads), Linux AIO (aio=native), and
io_uring (aio=io_uring) completion processing.

Behavior is unchanged for emulated devices that do not use
defer_call_begin()/defer_call_end() since defer_call() immediately
invokes the callback when called outside a
defer_call_begin()/defer_call_end() region.

fio rw=randread bs=4k iodepth=64 numjobs=8 IOPS increases by ~9% with a
single IOThread and 8 vCPUs. iodepth=1 decreases by ~1% but this could
be noise. Detailed performance data and configuration specifics are
available here:
https://gitlab.com/stefanha/virt-playbooks/-/tree/blk_io_plug-irqfd

This duplicates the BH that virtio-blk uses for batching. The next
commit will remove it.

Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 block/io_uring.c       |  6 ++++++
 block/linux-aio.c      |  4 ++++
 hw/virtio/virtio.c     | 13 ++++++++++++-
 util/thread-pool.c     |  5 +++++
 hw/virtio/trace-events |  1 +
 5 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/block/io_uring.c b/block/io_uring.c
index 3a1e1f45b3..7cdd00e9f1 100644
--- a/block/io_uring.c
+++ b/block/io_uring.c
@@ -125,6 +125,9 @@ static void luring_process_completions(LuringState *s)
 {
     struct io_uring_cqe *cqes;
     int total_bytes;
+
+    defer_call_begin();
+
     /*
      * Request completion callbacks can run the nested event loop.
      * Schedule ourselves so the nested event loop will "see" remaining
@@ -217,7 +220,10 @@ end:
             aio_co_wake(luringcb->co);
         }
     }
+
     qemu_bh_cancel(s->completion_bh);
+
+    defer_call_end();
 }
 
 static int ioq_submit(LuringState *s)
diff --git a/block/linux-aio.c b/block/linux-aio.c
index a2670b3e46..ec05d946f3 100644
--- a/block/linux-aio.c
+++ b/block/linux-aio.c
@@ -205,6 +205,8 @@ static void qemu_laio_process_completions(LinuxAioState *s)
 {
     struct io_event *events;
 
+    defer_call_begin();
+
     /* Reschedule so nested event loops see currently pending completions */
     qemu_bh_schedule(s->completion_bh);
 
@@ -231,6 +233,8 @@ static void qemu_laio_process_completions(LinuxAioState *s)
      * own `for` loop.  If we are the last all counters dropped to zero. */
     s->event_max = 0;
     s->event_idx = 0;
+
+    defer_call_end();
 }
 
 static void qemu_laio_process_completions_and_submit(LinuxAioState *s)
diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c
index 969c25f4cf..d9aeed7012 100644
--- a/hw/virtio/virtio.c
+++ b/hw/virtio/virtio.c
@@ -15,6 +15,7 @@
 #include "qapi/error.h"
 #include "qapi/qapi-commands-virtio.h"
 #include "trace.h"
+#include "qemu/defer-call.h"
 #include "qemu/error-report.h"
 #include "qemu/log.h"
 #include "qemu/main-loop.h"
@@ -2426,6 +2427,16 @@ static bool virtio_should_notify(VirtIODevice *vdev, VirtQueue *vq)
     }
 }
 
+/* Batch irqs while inside a defer_call_begin()/defer_call_end() section */
+static void virtio_notify_irqfd_deferred_fn(void *opaque)
+{
+    EventNotifier *notifier = opaque;
+    VirtQueue *vq = container_of(notifier, VirtQueue, guest_notifier);
+
+    trace_virtio_notify_irqfd_deferred_fn(vq->vdev, vq);
+    event_notifier_set(notifier);
+}
+
 void virtio_notify_irqfd(VirtIODevice *vdev, VirtQueue *vq)
 {
     WITH_RCU_READ_LOCK_GUARD() {
@@ -2452,7 +2463,7 @@ void virtio_notify_irqfd(VirtIODevice *vdev, VirtQueue *vq)
      * to an atomic operation.
      */
     virtio_set_isr(vq->vdev, 0x1);
-    event_notifier_set(&vq->guest_notifier);
+    defer_call(virtio_notify_irqfd_deferred_fn, &vq->guest_notifier);
 }
 
 static void virtio_irq(VirtQueue *vq)
diff --git a/util/thread-pool.c b/util/thread-pool.c
index e3d8292d14..d84961779a 100644
--- a/util/thread-pool.c
+++ b/util/thread-pool.c
@@ -15,6 +15,7 @@
  * GNU GPL, version 2 or (at your option) any later version.
  */
 #include "qemu/osdep.h"
+#include "qemu/defer-call.h"
 #include "qemu/queue.h"
 #include "qemu/thread.h"
 #include "qemu/coroutine.h"
@@ -175,6 +176,8 @@ static void thread_pool_completion_bh(void *opaque)
     ThreadPool *pool = opaque;
     ThreadPoolElement *elem, *next;
 
+    defer_call_begin(); /* cb() may use defer_call() to coalesce work */
+
 restart:
     QLIST_FOREACH_SAFE(elem, &pool->head, all, next) {
         if (elem->state != THREAD_DONE) {
@@ -208,6 +211,8 @@ restart:
             qemu_aio_unref(elem);
         }
     }
+
+    defer_call_end();
 }
 
 static void thread_pool_cancel(BlockAIOCB *acb)
diff --git a/hw/virtio/trace-events b/hw/virtio/trace-events
index 7109cf1a3b..29f4f543ad 100644
--- a/hw/virtio/trace-events
+++ b/hw/virtio/trace-events
@@ -73,6 +73,7 @@ virtqueue_fill(void *vq, const void *elem, unsigned int len, unsigned int idx) "
 virtqueue_flush(void *vq, unsigned int count) "vq %p count %u"
 virtqueue_pop(void *vq, void *elem, unsigned int in_num, unsigned int out_num) "vq %p elem %p in_num %u out_num %u"
 virtio_queue_notify(void *vdev, int n, void *vq) "vdev %p n %d vq %p"
+virtio_notify_irqfd_deferred_fn(void *vdev, void *vq) "vdev %p vq %p"
 virtio_notify_irqfd(void *vdev, void *vq) "vdev %p vq %p"
 virtio_notify(void *vdev, void *vq) "vdev %p vq %p"
 virtio_set_status(void *vdev, uint8_t val) "vdev %p val %u"
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:01:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:01:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601549.937606 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgW2u-0007V9-FI; Wed, 13 Sep 2023 20:01:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601549.937606; Wed, 13 Sep 2023 20:01:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgW2u-0007Uy-C2; Wed, 13 Sep 2023 20:01:08 +0000
Received: by outflank-mailman (input) for mailman id 601549;
 Wed, 13 Sep 2023 20:01:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=KJQj=E5=redhat.com=stefanha@srs-se1.protection.inumbo.net>)
 id 1qgW2t-0006RI-Ma
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:01:07 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 45706fe3-5270-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 22:01:06 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-653-zPjeAJD3Ooe0jC7EMpIwiA-1; Wed, 13 Sep 2023 16:01:01 -0400
Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com
 [10.11.54.2])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 04CD0805B3E;
 Wed, 13 Sep 2023 20:01:01 +0000 (UTC)
Received: from localhost (unknown [10.39.192.13])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 7FB6640C6EA8;
 Wed, 13 Sep 2023 20:01:00 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 45706fe3-5270-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694635264;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=c7TW1/CILt/+UW3nXOTVhsXTMbwN0KKvdAoGezBqwmI=;
	b=XTyeqTJ3u0uDPsCSJ/AeJ38nX9l9iVWWt4QsN+F6jhkwlwvaVHo5Jhd4J3vHgSq5rz5WVK
	mkNkG52L1ZzwhOT1Ld19fEknHfYLQgboPkEuXXbORaf40Vtaqwj3QlKP2GmQinOwyPdsWI
	wBfrDDdEYnTT8aHW+VzzhbCbk1O4MuU=
X-MC-Unique: zPjeAJD3Ooe0jC7EMpIwiA-1
From: Stefan Hajnoczi <stefanha@redhat.com>
To: qemu-devel@nongnu.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Ilya Maximets <i.maximets@ovn.org>,
	=?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
	Kevin Wolf <kwolf@redhat.com>,
	xen-devel@lists.xenproject.org,
	Anthony Perard <anthony.perard@citrix.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	<qemu-block@nongnu.org>,
	Julia Suvorova <jusual@redhat.com>,
	Aarushi Mehta <mehta.aaru20@gmail.com>,
	Paul Durrant <paul@xen.org>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Fam Zheng <fam@euphon.net>,
	Stefano Garzarella <sgarzare@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>,
	Eric Blake <eblake@redhat.com>
Subject: [PATCH v3 4/4] virtio-blk: remove batch notification BH
Date: Wed, 13 Sep 2023 16:00:45 -0400
Message-ID: <20230913200045.1024233-5-stefanha@redhat.com>
In-Reply-To: <20230913200045.1024233-1-stefanha@redhat.com>
References: <20230913200045.1024233-1-stefanha@redhat.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2

There is a batching mechanism for virtio-blk Used Buffer Notifications
that is no longer needed because the previous commit added batching to
virtio_notify_irqfd().

Note that this mechanism was rarely used in practice because it is only
enabled when EVENT_IDX is not negotiated by the driver. Modern drivers
enable EVENT_IDX.

Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 hw/block/dataplane/virtio-blk.c | 48 +--------------------------------
 1 file changed, 1 insertion(+), 47 deletions(-)

diff --git a/hw/block/dataplane/virtio-blk.c b/hw/block/dataplane/virtio-blk.c
index da36fcfd0b..f83bb0f116 100644
--- a/hw/block/dataplane/virtio-blk.c
+++ b/hw/block/dataplane/virtio-blk.c
@@ -31,9 +31,6 @@ struct VirtIOBlockDataPlane {
 
     VirtIOBlkConf *conf;
     VirtIODevice *vdev;
-    QEMUBH *bh;                     /* bh for guest notification */
-    unsigned long *batch_notify_vqs;
-    bool batch_notifications;
 
     /* Note that these EventNotifiers are assigned by value.  This is
      * fine as long as you do not call event_notifier_cleanup on them
@@ -47,36 +44,7 @@ struct VirtIOBlockDataPlane {
 /* Raise an interrupt to signal guest, if necessary */
 void virtio_blk_data_plane_notify(VirtIOBlockDataPlane *s, VirtQueue *vq)
 {
-    if (s->batch_notifications) {
-        set_bit(virtio_get_queue_index(vq), s->batch_notify_vqs);
-        qemu_bh_schedule(s->bh);
-    } else {
-        virtio_notify_irqfd(s->vdev, vq);
-    }
-}
-
-static void notify_guest_bh(void *opaque)
-{
-    VirtIOBlockDataPlane *s = opaque;
-    unsigned nvqs = s->conf->num_queues;
-    unsigned long bitmap[BITS_TO_LONGS(nvqs)];
-    unsigned j;
-
-    memcpy(bitmap, s->batch_notify_vqs, sizeof(bitmap));
-    memset(s->batch_notify_vqs, 0, sizeof(bitmap));
-
-    for (j = 0; j < nvqs; j += BITS_PER_LONG) {
-        unsigned long bits = bitmap[j / BITS_PER_LONG];
-
-        while (bits != 0) {
-            unsigned i = j + ctzl(bits);
-            VirtQueue *vq = virtio_get_queue(s->vdev, i);
-
-            virtio_notify_irqfd(s->vdev, vq);
-
-            bits &= bits - 1; /* clear right-most bit */
-        }
-    }
+    virtio_notify_irqfd(s->vdev, vq);
 }
 
 /* Context: QEMU global mutex held */
@@ -126,9 +94,6 @@ bool virtio_blk_data_plane_create(VirtIODevice *vdev, VirtIOBlkConf *conf,
     } else {
         s->ctx = qemu_get_aio_context();
     }
-    s->bh = aio_bh_new_guarded(s->ctx, notify_guest_bh, s,
-                               &DEVICE(vdev)->mem_reentrancy_guard);
-    s->batch_notify_vqs = bitmap_new(conf->num_queues);
 
     *dataplane = s;
 
@@ -146,8 +111,6 @@ void virtio_blk_data_plane_destroy(VirtIOBlockDataPlane *s)
 
     vblk = VIRTIO_BLK(s->vdev);
     assert(!vblk->dataplane_started);
-    g_free(s->batch_notify_vqs);
-    qemu_bh_delete(s->bh);
     if (s->iothread) {
         object_unref(OBJECT(s->iothread));
     }
@@ -173,12 +136,6 @@ int virtio_blk_data_plane_start(VirtIODevice *vdev)
 
     s->starting = true;
 
-    if (!virtio_vdev_has_feature(vdev, VIRTIO_RING_F_EVENT_IDX)) {
-        s->batch_notifications = true;
-    } else {
-        s->batch_notifications = false;
-    }
-
     /* Set up guest notifier (irq) */
     r = k->set_guest_notifiers(qbus->parent, nvqs, true);
     if (r != 0) {
@@ -370,9 +327,6 @@ void virtio_blk_data_plane_stop(VirtIODevice *vdev)
 
     aio_context_release(s->ctx);
 
-    qemu_bh_cancel(s->bh);
-    notify_guest_bh(s); /* final chance to notify guest */
-
     /* Clean up guest notifier (irq) */
     k->set_guest_notifiers(qbus->parent, nvqs, false);
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:27:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:27:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601578.937616 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWSh-0004dN-FK; Wed, 13 Sep 2023 20:27:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601578.937616; Wed, 13 Sep 2023 20:27:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWSh-0004dG-Bg; Wed, 13 Sep 2023 20:27:47 +0000
Received: by outflank-mailman (input) for mailman id 601578;
 Wed, 13 Sep 2023 20:27:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ecp1=E5=redhat.com=mst@srs-se1.protection.inumbo.net>)
 id 1qgWSg-0004dA-Lr
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:27:46 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fe9ab56b-5273-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 22:27:45 +0200 (CEST)
Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com
 [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-689-QXY160A3M0-NwF4Ixj-DqA-1; Wed, 13 Sep 2023 16:27:42 -0400
Received: by mail-ej1-f69.google.com with SMTP id
 a640c23a62f3a-99bebfada8cso16721366b.1
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 13:27:42 -0700 (PDT)
Received: from redhat.com ([2.52.10.100]) by smtp.gmail.com with ESMTPSA id
 si16-20020a170906ced000b00993470682e5sm8961056ejb.32.2023.09.13.13.27.38
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 13 Sep 2023 13:27:40 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fe9ab56b-5273-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694636863;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=f0+xEXr3h4AvyGXWBv8NYijYIzxjz19rPxVYGqrScHE=;
	b=fnvwwPmX1rjo+3iNKrVLXVAzpD4Dem9sNhfbxmkBO68tYMG6uTpuaG3mG51KGPbgaCH9cX
	pqXw2a909r6nx9EkLGrG1b9kqHB+gmENxgjY/weGUG7rr2sCdrfSeZadz8o+H5QL5iHpVi
	zFbqfhCaokY8ON83vjIqyumWHzTSveQ=
X-MC-Unique: QXY160A3M0-NwF4Ixj-DqA-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694636861; x=1695241661;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=f0+xEXr3h4AvyGXWBv8NYijYIzxjz19rPxVYGqrScHE=;
        b=krbaGmiduS28ojn03hIkNXHxTHgCM4I+LJGUGW+xNGkj7LDsWNHil9twJ7FwBD9SPl
         xK1GQ1vRB8ln0mOXietrs4ogx6GGf02m8Pv1nwkJLR1Z2GOV+w0yvTIbxi+Pb+Bqlz/v
         KCaTkuMpOlndtMNLBKA1Mtlev52ISUoVmQD8Muxi5ynC2P0Gdqqu57JYzH5R0CD2VhDM
         P4PJWieEOfVTg+m73Segn1+T5kFKDF1phDZaI7pAcNo8m6QJ086DK40hZW1tST9+KRxH
         2DVhWdEjz8MAcozf+OTonpL3MgXea/PCuvSODJCJx68hHgzBp7SAVNLtUy/2X//95ffH
         a1yQ==
X-Gm-Message-State: AOJu0YzLlyyHQ8102OcwhauLV8w6HR7mJqoMzvEmORfo7ms/tRu8ly9V
	PvI26bicUh7WJkUUAflvghA2O6rxCk5y7E+dfP19oHilSZnEE+rgP/oDPmCTZLEmaLiYrPFDzn3
	ef7zMxBXfDi1hBY84a45idU3NBTU=
X-Received: by 2002:a17:906:1091:b0:9a1:688f:cf21 with SMTP id u17-20020a170906109100b009a1688fcf21mr2861004eju.43.1694636861432;
        Wed, 13 Sep 2023 13:27:41 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IFJVsnE9rQQA+Orcn2ZNEU5oDNKnI3EEnBZORNMF9srOwP+TK/nObaTCm/lfyfW1RCu/NEDqw==
X-Received: by 2002:a17:906:1091:b0:9a1:688f:cf21 with SMTP id u17-20020a170906109100b009a1688fcf21mr2860992eju.43.1694636861066;
        Wed, 13 Sep 2023 13:27:41 -0700 (PDT)
Date: Wed, 13 Sep 2023 16:27:35 -0400
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Stefan Hajnoczi <stefanha@redhat.com>
Cc: qemu-devel@nongnu.org, Stefano Stabellini <sstabellini@kernel.org>,
	Ilya Maximets <i.maximets@ovn.org>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Kevin Wolf <kwolf@redhat.com>, xen-devel@lists.xenproject.org,
	Anthony Perard <anthony.perard@citrix.com>,
	Paolo Bonzini <pbonzini@redhat.com>, qemu-block@nongnu.org,
	Julia Suvorova <jusual@redhat.com>,
	Aarushi Mehta <mehta.aaru20@gmail.com>, Paul Durrant <paul@xen.org>,
	Fam Zheng <fam@euphon.net>,
	Stefano Garzarella <sgarzare@redhat.com>,
	Hanna Reitz <hreitz@redhat.com>
Subject: Re: [PATCH v3 0/4] virtio-blk: use blk_io_plug_call() instead of
 notification BH
Message-ID: <20230913162606-mutt-send-email-mst@kernel.org>
References: <20230913200045.1024233-1-stefanha@redhat.com>
MIME-Version: 1.0
In-Reply-To: <20230913200045.1024233-1-stefanha@redhat.com>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Wed, Sep 13, 2023 at 04:00:41PM -0400, Stefan Hajnoczi wrote:
> v3:
> - Add comment pointing to API documentation in .c file [Philippe]
> - Add virtio_notify_irqfd_deferred_fn trace event [Ilya]
> - Remove outdated #include [Ilya]
> v2:
> - Rename blk_io_plug() to defer_call() and move it to util/ so the net
>   subsystem can use it [Ilya]
> - Add defer_call_begin()/end() to thread_pool_completion_bh() to match Linux
>   AIO and io_uring completion batching
> 
> Replace the seldom-used virtio-blk notification BH mechanism with
> blk_io_plug(). This is part of an effort to enable the multi-queue block layer
> in virtio-blk. The notification BH was not multi-queue friendly.
> 
> The blk_io_plug() mechanism improves fio rw=randread bs=4k iodepth=64 numjobs=8
> IOPS by ~9% with a single IOThread and 8 vCPUs (this is not even a multi-queue
> block layer configuration) compared to no completion batching. iodepth=1
> decreases by ~1% but this could be noise. Benchmark details are available here:
> https://gitlab.com/stefanha/virt-playbooks/-/tree/blk_io_plug-irqfd


virtio things:

Reviewed-by: Michael S. Tsirkin <mst@redhat.com>


regression is a bit worrysome if real though - just do a bit
longer testing to make sure?



> Stefan Hajnoczi (4):
>   block: rename blk_io_plug_call() API to defer_call()
>   util/defer-call: move defer_call() to util/
>   virtio: use defer_call() in virtio_irqfd_notify()
>   virtio-blk: remove batch notification BH
> 
>  MAINTAINERS                       |   3 +-
>  include/qemu/defer-call.h         |  16 +++
>  include/sysemu/block-backend-io.h |   4 -
>  block/blkio.c                     |   9 +-
>  block/io_uring.c                  |  11 ++-
>  block/linux-aio.c                 |   9 +-
>  block/nvme.c                      |   5 +-
>  block/plug.c                      | 159 ------------------------------
>  hw/block/dataplane/virtio-blk.c   |  48 +--------
>  hw/block/dataplane/xen-block.c    |  11 ++-
>  hw/block/virtio-blk.c             |   5 +-
>  hw/scsi/virtio-scsi.c             |   7 +-
>  hw/virtio/virtio.c                |  13 ++-
>  util/defer-call.c                 | 156 +++++++++++++++++++++++++++++
>  util/thread-pool.c                |   5 +
>  block/meson.build                 |   1 -
>  hw/virtio/trace-events            |   1 +
>  util/meson.build                  |   1 +
>  18 files changed, 231 insertions(+), 233 deletions(-)
>  create mode 100644 include/qemu/defer-call.h
>  delete mode 100644 block/plug.c
>  create mode 100644 util/defer-call.c
> 
> -- 
> 2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:28:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:28:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601582.937626 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTH-00058q-RK; Wed, 13 Sep 2023 20:28:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601582.937626; Wed, 13 Sep 2023 20:28:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTH-00058j-Nb; Wed, 13 Sep 2023 20:28:23 +0000
Received: by outflank-mailman (input) for mailman id 601582;
 Wed, 13 Sep 2023 20:28:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z4av=E5=citrix.com=prvs=613b8bbe6=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgWTF-0004dA-Vi
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:28:22 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 126b00d6-5274-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 22:28:20 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 126b00d6-5274-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694636900;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=7dZ3kUnhKwuOh+sk9OEhdNHhMXUmtOUWD4tuDVNnFdc=;
  b=SdbD0hC5bbVQO4rz2172/WJNCXEnQTC8BuK5LVhW4td1bVjyBGkn0aqD
   yZpMiLAyAng1ssaC7/keOuTyygcBRaGZUy3+uxTlY0KyYAwLQa5MHSN1z
   8W0MLntL3QzKZ1BqZ/sxy3pJPRrcRK+PhmKXFIW8cyVMbjY5MAlVaHfG4
   A=;
X-CSE-ConnectionGUID: OTY/1Nd8T/+vvQCCeXLd1A==
X-CSE-MsgGUID: 8f5KVhqHTNyPCN9Cu/9H9g==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 121213279
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:Q5MTA6rNRozPK3QSr6fL2jHl49VeBmIOZRIvgKrLsJaIsI4StFCzt
 garIBnUOKvcZTTye9lyPomy8EMAvJLRyYcwHQA6rCtnQilBoJuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GlwUmAWP6gR5wePziJNV/rzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXABcxX1faoe7m/PX4VPdVre8uHO3nZapK7xmMzRmBZRonaZXKQqGM7t5ExjYgwMtJGJ4yZ
 eJAN2ApNk6ZJUQSZBFOUslWcOSA3xETdxVxrl6PqLVxyG/U1AFri5DmMcbPe8zMTsJQ9qqdj
 jucpj6gWUtFZbRzzxLV/C+PuO/WvR/dSbo5MuyT67k7oAyckzl75Bo+CgLg/KjRZlSFc8JSL
 QkY9zQjqYA29Ve3VZ/tUhugunmGsxUAHd1KHIUSyiuA167V6AaxHXUfQ3hKb9lOnNAybSwn0
 BmOhdyBONB0mOTLEzTHrO7S9G7sf3FPdgfueBPoUyMi3+ik+ac/3i6IDch9KYWeg+3RFWjZl
 mXiQDcFu50fissC1qOe9F/Bgi6xqpWhcjPZ9jk7TUr+sFonOdfNi5iArAGCsK0edNrxokyp5
 iBspiSI0AwZ4XhhfgSpSf5FIrym7u3t3Nb00Q82RMlJG9hAFheekWFsDNNWfhcB3iUsI2WBj
 KrvVeR5vcU7AZdSRfUrC79d8uxzpUQaKfzrV+rPcv1FaYVreQmM8UlGPBDBgz62yBBwz/xha
 P93lPpA6l5AVcxaIMeeHb9BgdfHOAhgrY8seXwL50v+iufPDJJkYbwELEGPfogEAFCs+W3oH
 yJkH5LSkX13CbSuChQ7BKZPdTjm21BnX8GpwyGWH8bfSjdb9JYJV6OOme54K9w990mX/8+Rl
 kyAtoZj4AKXrRX6xc+iMBiPtJuHsU5DkE8G
IronPort-HdrOrdr: A9a23:1aMZqq5UXd20tBoalAPXwPDXdLJyesId70hD6qhwISY6TiX+rb
 HWoB17726TtN9/YhEdcLy7VJVoBEmskKKdgrNhWotKPjOW21dARbsKheCJrgEIWReOktK1vZ
 0QC5SWY+eQMbEVt6nHCXGDYrQd/OU=
X-Talos-CUID: 9a23:yjT9uG4a60us0e99y9ss03IlXZkDfi3hizTOPXaTImtZbLHMYArF
X-Talos-MUID: =?us-ascii?q?9a23=3AozwCrgx3S4h1z2qMDPUg5nWmINyaqPSgVWMzkYw?=
 =?us-ascii?q?mh++VDQdWahyAy2WXE4Byfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,144,1688443200"; 
   d="scan'208";a="121213279"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 1/8] x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
Date: Wed, 13 Sep 2023 21:27:51 +0100
Message-ID: <20230913202758.508225-2-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230913202758.508225-1-andrew.cooper3@citrix.com>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
dropped the only user, leaving behind the (incorrect) implication that Xen had
split exit paths.

Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
to SPEC_CTRL_EXIT_TO_XEN for consistency.

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 8 +-------
 xen/arch/x86/x86_64/entry.S              | 2 +-
 2 files changed, 2 insertions(+), 8 deletions(-)

diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index f48f9e75e8dc..14ec40e8d32f 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -67,7 +67,6 @@
  *  - SPEC_CTRL_ENTRY_FROM_PV
  *  - SPEC_CTRL_ENTRY_FROM_INTR
  *  - SPEC_CTRL_ENTRY_FROM_INTR_IST
- *  - SPEC_CTRL_EXIT_TO_XEN_IST
  *  - SPEC_CTRL_EXIT_TO_XEN
  *  - SPEC_CTRL_EXIT_TO_PV
  *
@@ -256,11 +255,6 @@
     ALTERNATIVE "", __stringify(DO_SPEC_CTRL_ENTRY maybexen=1),         \
         X86_FEATURE_SC_MSR_PV
 
-/* Use when exiting to Xen context. */
-#define SPEC_CTRL_EXIT_TO_XEN                                           \
-    ALTERNATIVE "",                                                     \
-        DO_SPEC_CTRL_EXIT_TO_XEN, X86_FEATURE_SC_MSR_PV
-
 /* Use when exiting to PV guest context. */
 #define SPEC_CTRL_EXIT_TO_PV                                            \
     ALTERNATIVE "",                                                     \
@@ -328,7 +322,7 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
 .endm
 
 /* Use when exiting to Xen in IST context. */
-.macro SPEC_CTRL_EXIT_TO_XEN_IST
+.macro SPEC_CTRL_EXIT_TO_XEN
 /*
  * Requires %rbx=stack_end
  * Clobbers %rax, %rcx, %rdx
diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S
index 81dd2c74b876..a1c860f56949 100644
--- a/xen/arch/x86/x86_64/entry.S
+++ b/xen/arch/x86/x86_64/entry.S
@@ -673,7 +673,7 @@ UNLIKELY_START(ne, exit_cr3)
 UNLIKELY_END(exit_cr3)
 
         /* WARNING! `ret`, `call *`, `jmp *` not safe beyond this point. */
-        SPEC_CTRL_EXIT_TO_XEN_IST /* Req: %rbx=end, Clob: acd */
+        SPEC_CTRL_EXIT_TO_XEN     /* Req: %rbx=end, Clob: acd */
 
         RESTORE_ALL adj=8
         iretq

base-commit: 6aa25c32180ab59081c73bae4c568367d9133a1f
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:28:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:28:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601583.937636 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTJ-0005OL-2a; Wed, 13 Sep 2023 20:28:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601583.937636; Wed, 13 Sep 2023 20:28:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTI-0005OA-VY; Wed, 13 Sep 2023 20:28:24 +0000
Received: by outflank-mailman (input) for mailman id 601583;
 Wed, 13 Sep 2023 20:28:23 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z4av=E5=citrix.com=prvs=613b8bbe6=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgWTH-0004dA-6k
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:28:23 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 152dfb69-5274-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 22:28:22 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 152dfb69-5274-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694636902;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=2vjOrVTuSvMwiX/obR22m8asNoVNui9kb4bQVY0kxGo=;
  b=AsQFWJH+/qtcE17b+oYjABZWQEcbIGLs8Qw/IkeIZ3qmvmNKOzFYqDug
   kOQCwwIP4I9cTXQwvhYwbRMCcrOFFrvaynNHOif15yIhCUYT8zKuJ5igM
   dhqiVn/Kl+Xf6+Mf4Z5R2SOp30XQl9zsmXBY84uHA0TZdQcoivXR5dSZX
   o=;
X-CSE-ConnectionGUID: OTY/1Nd8T/+vvQCCeXLd1A==
X-CSE-MsgGUID: QHz6PAKDSW64SprJkqRDWA==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 121213280
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:XLSYTa79CCQz/aMlhQJNqQxRtC7HchMFZxGqfqrLsTDasY5as4F+v
 jZNCjiPOaqDazf8f9h0b9m1pE4Fv5PVx9ZhTwRlpH9hHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU35pwehBtC5gZlPaES5weF/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m0
 sApb2krYkC/wKGo3ouQYeRcosh6BZy+VG8fkikIITDxCP8nRdbIQrnQ5M8e1zA17ixMNa+AP
 YxDM2MpNUmeJUQVYT/7C7pn9AusrlD5fydVtxS+oq0v7nKI5AdwzKLsIJzefdniqcB9xxzB/
 DudpTShav0cHOW/22S921GAvdCRwRjjQqARDYeUydc/1TV/wURMUUZLBDNXu8KRmkO4Ht5SN
 UEQ0i4vtrQpslymSMHnWB+1q2LCuQQTM/JyOeAn7ACGyoLP/h2UQGMDS1Zpd9gOpMIwAzsw2
 Te0c8jBXGI19ufPEDTEq+nS9GnpUcQIEYMcTQg4fExcxdWznMZwkAz2Zf1uIIq51/SgTFkc3
 Au2hCQ5grwSi+sC2KO64U3LjlqQm3TZcuImzl6JBzz4t2uVcKbgPtX1sgaDsZ6sOa7DFjG8U
 G44d99yBQzkJbWEj2SzTeoEB9lFDN7VYWSH0TaD83TMnglBGkJPn6gKsFmSx28zaK7onAMFh
 2eK42tsCGd7ZifCUEOOS9vZ5z4W5abhD8/5cfvfc8BDZJN8HCfeonAyOxXIhzyzzRZ9+U3aB
 Xt8WZzwZUv29Iw9lGbmLwvj+eFDKt8CKZP7GsmgkkXPPUu2b3+JU7YVWGZinchghJ5oVD79q
 o4FX+PTkkU3bQELSnWPmWLlBQxQfCdT6FGfg5A/S9Nv1SI6RD55VqaBketJlk4Mt/09q9okN
 0qVAidwoGcTT1WcQelWQhiPsI/SYKs=
IronPort-HdrOrdr: A9a23:Vzs0fKw8qCl+/TdN12LmKrPwFL1zdoMgy1knxilNoRw8SKKlfq
 eV7Y0mPH7P+VAssR4b+exoVJPtfZqYz+8R3WBzB8bEYOCFghrKEGgK1+KLqFeMJ8S9zJ846U
 4JSdkHNDSaNzlHZKjBjzVQa+xQouW6zA==
X-Talos-CUID: 9a23:ZZ3JQ2E5i3i+gj+fqmJAyH9TQ+YpIkGaj2nOGmSTBFZNROS8HAo=
X-Talos-MUID: =?us-ascii?q?9a23=3AYu9bFQzBD//SNicouwFW4FLI43qaqJ2OGh41uLY?=
 =?us-ascii?q?qgPbaaRdoIRWelQ6bfaZyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,144,1688443200"; 
   d="scan'208";a="121213280"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 4/8] x86/spec-ctrl: Extend all SPEC_CTRL_{ENTER,EXIT}_* comments
Date: Wed, 13 Sep 2023 21:27:54 +0100
Message-ID: <20230913202758.508225-5-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230913202758.508225-1-andrew.cooper3@citrix.com>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

... to better explain how they're used.

Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
corner case when e.g. an NMI hits late in an exit-to-guest path.

Leave a TODO, which will be addressed in subsequent patches which arrange for
DO_COND_VERW to be safe within SPEC_CTRL_EXIT_TO_XEN.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>

This was decided not to be XSA-worthy, as guests can't usefully control when
IST events occur.
---
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 35 ++++++++++++++++++++----
 1 file changed, 30 insertions(+), 5 deletions(-)

diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index ee75f2bced42..77f6c35bb9c5 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -218,7 +218,10 @@
     wrmsr
 .endm
 
-/* Use after an entry from PV context (syscall/sysenter/int80/int82/etc). */
+/*
+ * Used after a synchronous entry from PV context.  SYSCALL, SYSENTER, INT,
+ * etc.  Will always interrupt a guest speculation context.
+ */
 .macro SPEC_CTRL_ENTRY_FROM_PV
 /*
  * Requires %rsp=regs/cpuinfo, %rdx=0
@@ -233,7 +236,11 @@
         X86_FEATURE_SC_MSR_PV
 .endm
 
-/* Use in interrupt/exception context.  May interrupt Xen or PV context. */
+/*
+ * Used after a synchronous interrupt or exception.  May interrupt Xen or PV
+ * context, but will not interrupt Xen with a guest speculation context,
+ * outside of fatal error cases.
+ */
 .macro SPEC_CTRL_ENTRY_FROM_INTR
 /*
  * Requires %rsp=regs, %r14=stack_end, %rdx=0
@@ -248,7 +255,10 @@
         X86_FEATURE_SC_MSR_PV
 .endm
 
-/* Use when exiting to PV guest context. */
+/*
+ * Used when exiting from any entry context, back to PV context.  This
+ * includes from an IST entry which moved onto the primary stack.
+ */
 .macro SPEC_CTRL_EXIT_TO_PV
 /*
  * Requires %rax=spec_ctrl, %rsp=regs/info
@@ -260,7 +270,12 @@
 .endm
 
 /*
- * Use in IST interrupt/exception context.  May interrupt Xen or PV context.
+ * Used after an IST entry (i.e. needs special care, consider to be fully
+ * asynchronous with finding sane state).  May interrupt PV or Xen context,
+ * including other SPEC_CTRL_{ENTRY,EXIT}_* regions with unsanitised state.
+ *
+ * An IST entry which interrupts PV context moves onto the primary stack and
+ * leaves via SPEC_CTRL_EXIT_TO_PV, *not* SPEC_CTRL_EXIT_TO_XEN.
  */
 .macro SPEC_CTRL_ENTRY_FROM_INTR_IST
 /*
@@ -319,7 +334,14 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
     UNLIKELY_END(\@_serialise)
 .endm
 
-/* Use when exiting to Xen in IST context. */
+/*
+ * Use when exiting from any entry context, back to Xen context.  This
+ * includes returning to other SPEC_CTRL_{ENTRY,EXIT}_* regions with
+ * unsanitised state.
+ *
+ * Because we might have interrupted Xen beyond SPEC_CTRL_EXIT_TO_$GUEST, we
+ * must treat this as if it were an EXIT_TO_$GUEST case too.
+ */
 .macro SPEC_CTRL_EXIT_TO_XEN
 /*
  * Requires %rbx=stack_end
@@ -344,6 +366,9 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
     wrmsr
 
 .L\@_skip_sc_msr:
+
+    /* TODO VERW */
+
 .endm
 
 #endif /* __ASSEMBLY__ */
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:28:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:28:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601585.937646 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTK-0005eh-B4; Wed, 13 Sep 2023 20:28:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601585.937646; Wed, 13 Sep 2023 20:28:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTK-0005eY-88; Wed, 13 Sep 2023 20:28:26 +0000
Received: by outflank-mailman (input) for mailman id 601585;
 Wed, 13 Sep 2023 20:28:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z4av=E5=citrix.com=prvs=613b8bbe6=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgWTJ-0004dA-06
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:28:25 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 15e34a42-5274-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 22:28:23 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 15e34a42-5274-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694636903;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=mZLU7yqbhnu8RFdttdE7JP+JDv6CudSB/eLutF8Nbbo=;
  b=Q34pzGydG57qG0EdZqqvWKl0k9W3sRafNLAljV5QNJocfPhg/RrlWNnM
   5D3AbrGqa6cfuQ/xTYgEkY5xZDys22KkjpEkLz6MLyeQnIIogcHYGtQdN
   dA6zMg4TURrpDDH15PJFHf4CwfnqHFU7lAtHa1w2JvIyD2+sH1jNlqsyU
   g=;
X-CSE-ConnectionGUID: OTY/1Nd8T/+vvQCCeXLd1A==
X-CSE-MsgGUID: xmbwu7F0R1OtFqblUXH+wQ==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 121213281
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:mSAOkq3qv5C9ipOMt/bD5cVxkn2cJEfYwER7XKvMYLTBsI5bpzEAz
 GsfXDvUaKmIZ2umeYhybtjn9UMAv5bdxoVmSAVtpC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb8nuDgNyo4GlD5g1nPqgQ1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfJl1/s
 qU+JGAxKVOdmdud67+LbuU1r5F2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP
 ZNfMGcxKk2aOHWjOX9OYH46tM6uimPybHtzr1WNqLBsy2PS0BZwwP7mN9+9ltmiHJ8MxB/D/
 DKfl4j/KgEfPsOClhTdyCuLmsHWlyfGaKJRC4Tto5aGh3XMnzdOWXX6T2CTsfS/z0KzRd9bA
 0gV4TY167g/8lSxSdvwVAH+p2SL1jY+cddNF+wx6CmW17HZpQ2eAwAsUTppeNEg8sgsSlQXO
 kShxo2zQ2Y16fvMFCzbr+3Pxd+vBcQLBUg+VGhdawdV356gvp8KpTnCfvJvSYfg27UZBgrM6
 zyNqSE/gZAagsgKy7i38Dj7vt68mnTaZlVrv1uKBwpJ+is8Pdf4PNLwtTA3+N4adO6kok+9U
 G/ociR0xMQHFtmzmSOEW43h95n5tq/eYFUwbbOCdqTNFghBGVb5Lei8Axkkfi+F1/ronhewO
 ifuVft5vsM7AZdTRfYfj3iNI8or17P8Mt/uS+rZaNFDCrAoKl7bono2PRLOgj68+KTJrU3YE
 c3HGftA8F5AUfg3pNZIb7l1PUAXKtAWmjqIGMGTI+WP2ruCfn+FIYrpw3PXBt3VGJis+V2Pm
 /4Gbpvi9vmqeLGmCsUh2dJJfA9iwLlSLcyelvG7gcbfflU+RThxW6e5LHFIU9UNopm5X9zgp
 hmVMnK0AnKj7ZEbAW1mskxeVY4=
IronPort-HdrOrdr: A9a23:6EGM1KAi2/IDXCTlHemN55DYdb4zR+YMi2TDtnoBMiC9F/bzqy
 nApoV+6faZskd1ZJhCo6HiBEDjewK7yXcd2+B4VtbDYODIghrLEGgI1/qa/9SPIVyHygef78
 tdmmpFZeHYPBxVi8D15QX9KdomzdWdtIi1mOa29QYLceinUc5dBs5CZDqmLg==
X-Talos-CUID: 9a23:fEtew2HGnyiNxZmIqmJAyH9TQ+YpIkGaj2nOGmSTBFZNROS8HAo=
X-Talos-MUID: 9a23:/rN/EAgN4R/qTlJ2BfMVXMMpJMJi/LnxJhg3yLIaldCOMRFAG3SCtWHi
X-IronPort-AV: E=Sophos;i="6.02,144,1688443200"; 
   d="scan'208";a="121213281"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 6/8] x86/entry: Track the IST-ness of an entry for the exit paths
Date: Wed, 13 Sep 2023 21:27:56 +0100
Message-ID: <20230913202758.508225-7-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230913202758.508225-1-andrew.cooper3@citrix.com>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
entry/exit asm, so it only needs setting in the IST path.

As this is subtle and fragile, add check_ist_exit() to be used in debugging
builds to cross-check that the ist_exit boolean matches the entry vector.

Write check_ist_exit() it in C, because it's debug only and the logic more
complicated than I care about maintaining in asm.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/traps.c               | 13 +++++++++++++
 xen/arch/x86/x86_64/compat/entry.S |  9 ++++++++-
 xen/arch/x86/x86_64/entry.S        | 23 ++++++++++++++++++++---
 3 files changed, 41 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index dead728ce329..0a005f088bca 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -2259,6 +2259,19 @@ void asm_domain_crash_synchronous(unsigned long addr)
         do_softirq();
 }
 
+#ifdef CONFIG_DEBUG
+void check_ist_exit(const struct cpu_user_regs *regs, bool ist_exit)
+{
+    const unsigned int ist_mask =
+        (1U << X86_EXC_NMI) | (1U << X86_EXC_DB) |
+        (1U << X86_EXC_DF)  | (1U << X86_EXC_MC);
+    uint8_t ev = regs->entry_vector;
+    bool is_ist = (ev < X86_EXC_NUM) && ((1U << ev) & ist_mask);
+
+    ASSERT(is_ist == ist_exit);
+}
+#endif
+
 /*
  * Local variables:
  * mode: C
diff --git a/xen/arch/x86/x86_64/compat/entry.S b/xen/arch/x86/x86_64/compat/entry.S
index bd5abd8040bd..7504bfb4f326 100644
--- a/xen/arch/x86/x86_64/compat/entry.S
+++ b/xen/arch/x86/x86_64/compat/entry.S
@@ -117,8 +117,15 @@ compat_process_trap:
         call  compat_create_bounce_frame
         jmp   compat_test_all_events
 
-/* %rbx: struct vcpu, interrupts disabled */
+/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
 ENTRY(compat_restore_all_guest)
+
+#ifdef CONFIG_DEBUG
+        mov   %rsp, %rdi
+        mov   %r12, %rsi
+        call  check_ist_exit
+#endif
+
         ASSERT_INTERRUPTS_DISABLED
         mov   $~(X86_EFLAGS_IOPL | X86_EFLAGS_VM), %r11d
         and   UREGS_eflags(%rsp),%r11d
diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S
index 525877e97330..da084a7e8e54 100644
--- a/xen/arch/x86/x86_64/entry.S
+++ b/xen/arch/x86/x86_64/entry.S
@@ -142,10 +142,16 @@ process_trap:
 
         .section .text.entry, "ax", @progbits
 
-/* %rbx: struct vcpu, interrupts disabled */
+/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
 restore_all_guest:
-        ASSERT_INTERRUPTS_DISABLED
 
+#ifdef CONFIG_DEBUG
+        mov   %rsp, %rdi
+        mov   %r12, %rsi
+        call  check_ist_exit
+#endif
+
+        ASSERT_INTERRUPTS_DISABLED
         /* Stash guest SPEC_CTRL value while we can read struct vcpu. */
         mov VCPU_arch_msrs(%rbx), %rdx
         mov VCPUMSR_spec_ctrl_raw(%rdx), %r15d
@@ -659,8 +665,15 @@ ENTRY(early_page_fault)
         .section .text.entry, "ax", @progbits
 
         ALIGN
-/* No special register assumptions. */
+/* %r12=ist_exit */
 restore_all_xen:
+
+#ifdef CONFIG_DEBUG
+        mov   %rsp, %rdi
+        mov   %r12, %rsi
+        call  check_ist_exit
+#endif
+
         /*
          * Check whether we need to switch to the per-CPU page tables, in
          * case we return to late PV exit code (from an NMI or #MC).
@@ -1087,6 +1100,10 @@ handle_ist_exception:
 .L_ist_dispatch_done:
         mov   %r15, STACK_CPUINFO_FIELD(xen_cr3)(%r14)
         mov   %bl, STACK_CPUINFO_FIELD(use_pv_cr3)(%r14)
+
+        /* This is an IST exit */
+        mov   $1, %r12
+
         cmpb  $X86_EXC_NMI, UREGS_entry_vector(%rsp)
         jne   ret_from_intr
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:28:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:28:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601586.937656 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTL-0005vE-JF; Wed, 13 Sep 2023 20:28:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601586.937656; Wed, 13 Sep 2023 20:28:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTL-0005v5-Ff; Wed, 13 Sep 2023 20:28:27 +0000
Received: by outflank-mailman (input) for mailman id 601586;
 Wed, 13 Sep 2023 20:28:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z4av=E5=citrix.com=prvs=613b8bbe6=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgWTJ-0004yg-UM
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:28:25 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 15412c50-5274-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 22:28:23 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 15412c50-5274-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694636903;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=6Uh1DvjUFaFWcf8oaS6mdJk87ZcViax08R9IgITT/VU=;
  b=XMNdKkEffjgAfXJXib7+MVRpcYUavQSHTykGpCrmuBYLRRXLZjzQuws6
   cvgXZu/Yh7Nhl198BMuuwNPgp7wgTkbXWUMnvzw0GnS3QzFGKVligb7Wu
   b09MTW+PJb9cToefyXNRhmOLTRfL60tZtMNc5r64qOoG5hjWvBaxkaTx5
   A=;
X-CSE-ConnectionGUID: OTY/1Nd8T/+vvQCCeXLd1A==
X-CSE-MsgGUID: C11+nIAcQkOzLcw8YJc38g==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 121213282
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:mbX+UKxiLCk3CFAANtF6t+chxirEfRIJ4+MujC+fZmUNrF6WrkVUz
 GdNDG2Ab/mIMGWjfdt1atm2oE5VscfTnd81GgE5rSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EkHUMja4mtC5QRvPKsT5zcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KUZyx
 LtBDjxdUlfAmfyP65m2es1g3+12eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP
 ZBAL2MyMlKZOUYn1lQ/UfrSmM+BgHXlfiIeg1WSvactuEDYzRBr0airO93QEjCPbZwPxxzB/
 TiWpQwVBDkxbYXczxus+Uuvof3rljyraaAZT+23o6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL
 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0efBdDuk74wGl0bfP7kCSAW1sZiFFQMwrsokxXzNC6
 7OSt4q3X3o16uTTEC/DsO7O9lteJBT5M0clWR5DFC0Js+Wk458ttznkQ+ZHHPec24id9S7L/
 xiGqy03hrM2hMEN1rmm8V2vvw9AtqQlXSZuuFyJAzvNAhdRIdf8Otf2sQSzAeNodt7xc7WXg
 JQTdyFyBsgqBIrFqiGCSf5l8FqBt6fca220bbKC8vAcG9WRF5yLJ9A4DNJWfh0B3iM4ldjBO
 RW7hO+pzMUPVEZGlIcuC25LN+wkzLL7CfPuXe3OY9xFb/BZLVHWoH81PRbMgT2zwSDAdJ3T3
 r/BLa6R4YsyU/w7nFJauc9DuVPU+szO7TyKHs2qp/hW+bGfeGSUWd843KimN4gEAFe/iFyNq
 b53bpLaoyizpcWiOkE7B6ZPdwFVRZX6bLiqw/FqmhmrflY5QDx4W6+JqV7jEqQ895loei7z1
 inVcidlJJDX3xUr9S3ihqhfVY7S
IronPort-HdrOrdr: A9a23:aArYoqFfQ+SCHEtQpLqE0MeALOsnbusQ8zAXP0AYc3Jom6uj5r
 mTdZUgpHnJYVkqOE3I9ertBEDEewK4yXcX2/h3AV7BZniEhILAFugLhuGO/9SjIVybygc079
 YZT0EUMrzN5DZB4voSmDPIceod/A==
X-Talos-CUID: =?us-ascii?q?9a23=3AKoX2Y2kUoehyM3vgS5IWtFX+hyHXOVrh/TCJBUP?=
 =?us-ascii?q?oNSEqVqOsYnSdyIdoyuM7zg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3ArPcumw8rV7iMmZ8qEZUM9OiQf+wxuueoKWkGqJY?=
 =?us-ascii?q?hqe2PKnxBGTzG3DviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,144,1688443200"; 
   d="scan'208";a="121213282"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 8/8] x86/spec-ctrl: Mitigate the Zen1 DIV leakge
Date: Wed, 13 Sep 2023 21:27:58 +0100
Message-ID: <20230913202758.508225-9-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230913202758.508225-1-andrew.cooper3@citrix.com>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

In the Zen1 microarchitecure, there is one divider in the pipeline which
services uops from both threads.  In the case of #DE, the latched result from
the previous DIV to execute will be forwarded speculatively.

This is an interesting covert channel that allows two threads to communicate
without any system calls.  In also allows userspace to obtain the result of
the most recent DIV instruction executed (even speculatively) in the core,
which can be from a higher privilege context.

Scrub the buffers in the divider unit by executing a non-faulting divide.
This needs performing on the exit-to-guest paths, and ist_exit-to-Xen.

This is XSA-439 / CVE-2023-20588.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>

No embargo - this is already public.  XSA paperwork to follow.
---
 docs/misc/xen-command-line.pandoc        |  6 +++-
 xen/arch/x86/hvm/svm/entry.S             |  1 +
 xen/arch/x86/include/asm/cpufeatures.h   |  2 +-
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 16 +++++++++
 xen/arch/x86/spec_ctrl.c                 | 45 ++++++++++++++++++++++--
 5 files changed, 66 insertions(+), 4 deletions(-)

diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
index f88e6a70aed6..7acd68885656 100644
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -2353,7 +2353,7 @@ By default SSBD will be mitigated at runtime (i.e `ssbd=runtime`).
 >              {msr-sc,rsb,md-clear,ibpb-entry}=<bool>|{pv,hvm}=<bool>,
 >              bti-thunk=retpoline|lfence|jmp, {ibrs,ibpb,ssbd,psfd,
 >              eager-fpu,l1d-flush,branch-harden,srb-lock,
->              unpriv-mmio,gds-mit}=<bool> ]`
+>              unpriv-mmio,gds-mit,div-scrub}=<bool> ]`
 
 Controls for speculative execution sidechannel mitigations.  By default, Xen
 will pick the most appropriate mitigations based on compiled in support,
@@ -2475,6 +2475,10 @@ has elected not to lock the configuration, Xen will use GDS_CTRL to mitigate
 GDS with.  Otherwise, Xen will mitigate by disabling AVX, which blocks the use
 of the AVX2 Gather instructions.
 
+On all hardware, the `div-scrub=` option can be used to force or prevent Xen
+from mitigating the DIV-leakage vulnerability.  By default, Xen will mitigate
+DIV-leakage on hardware believed to be vulnerable.
+
 ### sync_console
 > `= <boolean>`
 
diff --git a/xen/arch/x86/hvm/svm/entry.S b/xen/arch/x86/hvm/svm/entry.S
index 9effd2199ba0..c52528fed4cf 100644
--- a/xen/arch/x86/hvm/svm/entry.S
+++ b/xen/arch/x86/hvm/svm/entry.S
@@ -72,6 +72,7 @@ __UNLIKELY_END(nsvm_hap)
 1:          /* No Spectre v1 concerns.  Execution will hit VMRUN imminently. */
         .endm
         ALTERNATIVE "", svm_vmentry_spec_ctrl, X86_FEATURE_SC_MSR_HVM
+        ALTERNATIVE "", DO_SPEC_CTRL_DIV, X86_FEATURE_SC_DIV
 
         pop  %r15
         pop  %r14
diff --git a/xen/arch/x86/include/asm/cpufeatures.h b/xen/arch/x86/include/asm/cpufeatures.h
index da0593de8542..724de2e11db4 100644
--- a/xen/arch/x86/include/asm/cpufeatures.h
+++ b/xen/arch/x86/include/asm/cpufeatures.h
@@ -35,7 +35,7 @@ XEN_CPUFEATURE(SC_RSB_HVM,        X86_SYNTH(19)) /* RSB overwrite needed for HVM
 XEN_CPUFEATURE(XEN_SELFSNOOP,     X86_SYNTH(20)) /* SELFSNOOP gets used by Xen itself */
 XEN_CPUFEATURE(SC_MSR_IDLE,       X86_SYNTH(21)) /* Clear MSR_SPEC_CTRL on idle */
 XEN_CPUFEATURE(XEN_LBR,           X86_SYNTH(22)) /* Xen uses MSR_DEBUGCTL.LBR */
-/* Bits 23 unused. */
+XEN_CPUFEATURE(SC_DIV,            X86_SYNTH(25)) /* DIV scrub needed */
 XEN_CPUFEATURE(SC_RSB_IDLE,       X86_SYNTH(24)) /* RSB overwrite needed for idle. */
 XEN_CPUFEATURE(SC_VERW_IDLE,      X86_SYNTH(25)) /* VERW used by Xen for idle */
 XEN_CPUFEATURE(XEN_SHSTK,         X86_SYNTH(26)) /* Xen uses CET Shadow Stacks */
diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index 9740697114ad..10e57780f08b 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -165,6 +165,18 @@
 .L\@_verw_skip:
 .endm
 
+.macro DO_SPEC_CTRL_DIV
+/*
+ * Requires nothing
+ * Clobbers %rax
+ *
+ * Issue a DIV for its flushing side effect (Zen1 uarch specific).  Any
+ * non-faulting DIV will do, and a byte DIV has least latency.
+ */
+    mov $1, %eax
+    div %al
+.endm
+
 .macro DO_SPEC_CTRL_ENTRY maybexen:req
 /*
  * Requires %rsp=regs (also cpuinfo if !maybexen)
@@ -267,6 +279,8 @@
     ALTERNATIVE "", DO_SPEC_CTRL_EXIT_TO_GUEST, X86_FEATURE_SC_MSR_PV
 
     DO_SPEC_CTRL_COND_VERW
+
+    ALTERNATIVE "", DO_SPEC_CTRL_DIV, X86_FEATURE_SC_DIV
 .endm
 
 /*
@@ -378,6 +392,8 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
     verw STACK_CPUINFO_FIELD(verw_sel)(%r14)
 .L\@_verw_skip:
 
+    ALTERNATIVE "", DO_SPEC_CTRL_DIV, X86_FEATURE_SC_DIV
+
 .L\@_skip_ist_exit:
 .endm
 
diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c
index 9b8fdb5303ad..5332dba3f659 100644
--- a/xen/arch/x86/spec_ctrl.c
+++ b/xen/arch/x86/spec_ctrl.c
@@ -67,6 +67,7 @@ static int8_t __initdata opt_srb_lock = -1;
 static bool __initdata opt_unpriv_mmio;
 static bool __ro_after_init opt_fb_clear_mmio;
 static int8_t __initdata opt_gds_mit = -1;
+static int8_t __initdata opt_div_scrub = -1;
 
 static int __init cf_check parse_spec_ctrl(const char *s)
 {
@@ -121,6 +122,7 @@ static int __init cf_check parse_spec_ctrl(const char *s)
             opt_srb_lock = 0;
             opt_unpriv_mmio = false;
             opt_gds_mit = 0;
+            opt_div_scrub = 0;
         }
         else if ( val > 0 )
             rc = -EINVAL;
@@ -273,6 +275,8 @@ static int __init cf_check parse_spec_ctrl(const char *s)
             opt_unpriv_mmio = val;
         else if ( (val = parse_boolean("gds-mit", s, ss)) >= 0 )
             opt_gds_mit = val;
+        else if ( (val = parse_boolean("div-scrub", s, ss)) >= 0 )
+            opt_div_scrub = val;
         else
             rc = -EINVAL;
 
@@ -473,7 +477,7 @@ static void __init print_details(enum ind_thunk thunk)
                "\n");
 
     /* Settings for Xen's protection, irrespective of guests. */
-    printk("  Xen settings: BTI-Thunk %s, SPEC_CTRL: %s%s%s%s%s, Other:%s%s%s%s%s\n",
+    printk("  Xen settings: BTI-Thunk %s, SPEC_CTRL: %s%s%s%s%s, Other:%s%s%s%s%s%s\n",
            thunk == THUNK_NONE      ? "N/A" :
            thunk == THUNK_RETPOLINE ? "RETPOLINE" :
            thunk == THUNK_LFENCE    ? "LFENCE" :
@@ -498,7 +502,8 @@ static void __init print_details(enum ind_thunk thunk)
            opt_l1d_flush                             ? " L1D_FLUSH" : "",
            opt_md_clear_pv || opt_md_clear_hvm ||
            opt_fb_clear_mmio                         ? " VERW"  : "",
-           opt_branch_harden                         ? " BRANCH_HARDEN" : "");
+           opt_branch_harden                         ? " BRANCH_HARDEN" : "",
+           opt_div_scrub                             ? " DIV" : "");
 
     /* L1TF diagnostics, printed if vulnerable or PV shadowing is in use. */
     if ( cpu_has_bug_l1tf || opt_pv_l1tf_hwdom || opt_pv_l1tf_domu )
@@ -955,6 +960,40 @@ static void __init srso_calculations(bool hw_smt_enabled)
         setup_force_cpu_cap(X86_FEATURE_SRSO_NO);
 }
 
+/*
+ * Div leakage is specific to the AMD Zen1 microarchitecure.  Use STIBP as a
+ * heuristic to select between Zen1 and Zen2 uarches.
+ */
+static bool __init has_div_vuln(void)
+{
+    if ( !(boot_cpu_data.x86_vendor &
+           (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
+        return false;
+
+    if ( (boot_cpu_data.x86 != 0x17 && boot_cpu_data.x86 != 0x18) ||
+         !boot_cpu_has(X86_FEATURE_AMD_STIBP) )
+        return false;
+
+    return true;
+}
+
+static void __init div_calculations(bool hw_smt_enabled)
+{
+    bool cpu_bug_div = has_div_vuln();
+
+    if ( opt_div_scrub == -1 )
+        opt_div_scrub = cpu_bug_div;
+
+    if ( opt_div_scrub )
+        setup_force_cpu_cap(X86_FEATURE_SC_DIV);
+
+    if ( opt_smt == -1 && cpu_bug_div && hw_smt_enabled )
+        warning_add(
+            "Booted on leaky-DIV hardware with SMT/Hyperthreading\n"
+            "enabled.  Please assess your configuration and choose an\n"
+            "explicit 'smt=<bool>' setting.  See XSA-439.\n");
+}
+
 static void __init ibpb_calculations(void)
 {
     bool def_ibpb_entry = false;
@@ -1714,6 +1753,8 @@ void __init init_speculation_mitigations(void)
 
     ibpb_calculations();
 
+    div_calculations(hw_smt_enabled);
+
     /* Check whether Eager FPU should be enabled by default. */
     if ( opt_eager_fpu == -1 )
         opt_eager_fpu = should_use_eager_fpu();
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:28:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:28:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601587.937660 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTL-0005zA-T5; Wed, 13 Sep 2023 20:28:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601587.937660; Wed, 13 Sep 2023 20:28:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTL-0005yE-Pd; Wed, 13 Sep 2023 20:28:27 +0000
Received: by outflank-mailman (input) for mailman id 601587;
 Wed, 13 Sep 2023 20:28:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z4av=E5=citrix.com=prvs=613b8bbe6=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgWTK-0004dA-0L
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:28:26 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1695771d-5274-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 22:28:24 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1695771d-5274-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694636904;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=EAYwPucKCgFfpPtFZ5OzqdU5toziSCvVykYftRRfIdA=;
  b=ZfMMRej2INx492TkPHB1KBJeDDTJuGBKZBlP1zZpcyDGpBg0MJ6BRUNJ
   Y/QfDz/HYnbSw3Z/ubB81eY5BNnAcOdAtQoifT3AqvyDUz1KMCikZc8p3
   BikipgQPTAvAgEESJ3znnIQKAMJdSKgz6eemxCX2CY6/uOcZthz3tJOb+
   Q=;
X-CSE-ConnectionGUID: hN7dthOmQouNNVMZfTFHmw==
X-CSE-MsgGUID: woHOhxVzToi4V/sI0hrRwg==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 121213283
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:7aegra46JQllLXF5vj2pDgxRtCTHchMFZxGqfqrLsTDasY5as4F+v
 jAXXTyOPPzZMGv9fNskbI+19kICusLRx9dhSgJs/iE8Hi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU35pwehBtC5gZlPaES5weF/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m9
 dpHJCwNSRW6gP+Q5oyeeOdQqOQmM5y+VG8fkikIITDxCP8nRdbIQrnQ5M8e1zA17ixMNa+AP
 YxDM2MpNUmeJUQVYT/7C7pn9AusrlD5fydVtxS+oq0v7nKI5AdwzKLsIJzefdniqcB9xxzB/
 DudpTSiav0cHMOY6R2F4ky+uujOwR28Q6NKFKeC6fE/1TV/wURMUUZLBDNXu8KRmkO4Ht5SN
 UEQ0i4vtrQpslymSMHnWB+1q2LCuQQTM/JyOeAn7ACGyoLP/h2UQGMDS1Zpd9gOpMIwAzsw2
 Te0c8jBXGI19ufPEDTEq+nS9GnpUcQIEYMcTS8iEgcZ4/7mmYYuqDTxa+RtLICVi8KgTFkc3
 Au2hCQ5grwSi+sC2KO64U3LjlqQm3TZcuImzl6JBzz4t2uVcKbgPtX1sgaDsZ6sOa7DFjG8U
 G44d99yBQzkJbWEj2SzTeoEB9lFDN7VYWSH0TaD83TMnglBGkJPn6gKsFmSx28zaK7onAMFh
 2eK4mtsCGd7ZifCUEOOS9vZ5z4W5abhD8/5cfvfc8BDZJN8HCfeonAyPBfJgzC1yxR0+U3aB
 Xt9WZz8ZZr9If47pAdaus9HieN7rszA7Ty7qW/HI+SPjuPFOS/9pUYtO1qSdOEphJ5oUy2Mm
 +uzw/Cikk0FOMWnO3m/zGLmBQxSRZTNLcys+pM/my/qClYOJVzN/NeNnex5JtU1z/w9eyWh1
 ijVZ3K0AWHX3RXvQThmoFg5AF8zdf6TdU4GABE=
IronPort-HdrOrdr: A9a23:HUJxKa7Oz8A1nM8TKQPXwOnXdLJyesId70hD6qkRc20vTiX8ra
 qTdZsgpHvJYVoqKRQdcLO7Scq9qBHnhPhICOAqVN/IPWnbUUSTXeNfBODZskTd8kPFh5ZgPG
 RbH5SWyuecMXFKyej95ge8H5IbzN6L/LvtrfvCzh5WPGZXgm1bgDuRwzz0LnFL
X-Talos-CUID: =?us-ascii?q?9a23=3AO82ACWh9hFkAae30pIinBlfwajJucluCwGvQBEq?=
 =?us-ascii?q?BDntPboOwe1Gs1oNhjJ87?=
X-Talos-MUID: =?us-ascii?q?9a23=3AXb4ANw2hs1kQgb1r2phz+h7ljjUj/KOOL0Adr4c?=
 =?us-ascii?q?6vMjYC2trGm+dlg6oTdpy?=
X-IronPort-AV: E=Sophos;i="6.02,144,1688443200"; 
   d="scan'208";a="121213283"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 5/8] x86/entry: Adjust restore_all_xen to hold stack_end in %r14
Date: Wed, 13 Sep 2023 21:27:55 +0100
Message-ID: <20230913202758.508225-6-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230913202758.508225-1-andrew.cooper3@citrix.com>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
for consistency, freeing up %rbx to be used differently.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 8 ++++----
 xen/arch/x86/x86_64/entry.S              | 8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index 77f6c35bb9c5..acdb526d292d 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -344,10 +344,10 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
  */
 .macro SPEC_CTRL_EXIT_TO_XEN
 /*
- * Requires %rbx=stack_end
+ * Requires %r14=stack_end
  * Clobbers %rax, %rcx, %rdx
  */
-    testb $SCF_ist_sc_msr, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%rbx)
+    testb $SCF_ist_sc_msr, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14)
     jz .L\@_skip_sc_msr
 
     /*
@@ -358,10 +358,10 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
      */
     xor %edx, %edx
 
-    testb $SCF_use_shadow, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%rbx)
+    testb $SCF_use_shadow, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14)
     jz .L\@_skip_sc_msr
 
-    mov STACK_CPUINFO_FIELD(shadow_spec_ctrl)(%rbx), %eax
+    mov STACK_CPUINFO_FIELD(shadow_spec_ctrl)(%r14), %eax
     mov $MSR_SPEC_CTRL, %ecx
     wrmsr
 
diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S
index a1c860f56949..525877e97330 100644
--- a/xen/arch/x86/x86_64/entry.S
+++ b/xen/arch/x86/x86_64/entry.S
@@ -665,15 +665,15 @@ restore_all_xen:
          * Check whether we need to switch to the per-CPU page tables, in
          * case we return to late PV exit code (from an NMI or #MC).
          */
-        GET_STACK_END(bx)
-        cmpb  $0, STACK_CPUINFO_FIELD(use_pv_cr3)(%rbx)
+        GET_STACK_END(14)
+        cmpb  $0, STACK_CPUINFO_FIELD(use_pv_cr3)(%r14)
 UNLIKELY_START(ne, exit_cr3)
-        mov   STACK_CPUINFO_FIELD(pv_cr3)(%rbx), %rax
+        mov   STACK_CPUINFO_FIELD(pv_cr3)(%r14), %rax
         mov   %rax, %cr3
 UNLIKELY_END(exit_cr3)
 
         /* WARNING! `ret`, `call *`, `jmp *` not safe beyond this point. */
-        SPEC_CTRL_EXIT_TO_XEN     /* Req: %rbx=end, Clob: acd */
+        SPEC_CTRL_EXIT_TO_XEN     /* Req: %r14=end, Clob: acd */
 
         RESTORE_ALL adj=8
         iretq
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:28:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:28:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601588.937668 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTM-00065N-HG; Wed, 13 Sep 2023 20:28:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601588.937668; Wed, 13 Sep 2023 20:28:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTM-00064L-5n; Wed, 13 Sep 2023 20:28:28 +0000
Received: by outflank-mailman (input) for mailman id 601588;
 Wed, 13 Sep 2023 20:28:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z4av=E5=citrix.com=prvs=613b8bbe6=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgWTK-0004yg-Ub
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:28:26 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 15f63a70-5274-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 22:28:24 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 15f63a70-5274-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694636904;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=2OX3DxkMU6J5CjLFRkPzVMla4/tm4f+X2kaevcyHDIQ=;
  b=Tkd7e31bd3fAo5f/ivGt1lQq+AF4Cb52xSqaCD9LXpxkE27taasi7PfZ
   GXax0h1B2ubdf0hYMmtB9Ros/7mjNviKjq9TH8zpBrsuocx9Zvq94zNOq
   u9fcJA2f72cuuddmLyjHCHzltu/uoGwndvtFdWpAKdaxbLgs3raxVSD1n
   Y=;
X-CSE-ConnectionGUID: hN7dthOmQouNNVMZfTFHmw==
X-CSE-MsgGUID: 5pkOILBvSXyUEX0ggRl1Tw==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 121213284
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:g6lX8KAc4rcXbBVW/zXjw5YqxClBgxIJ4kV8jS/XYbTApD4rg2QAz
 GYdXTzTaKrYazDyKo92bNu+/ENQ75CBytA3QQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMscpvlDs15K6p4GJB5QRlDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw+sAoDX1O0
 vkhLy0rSC6mteyK7pK+Vbw57igjBJGD0II3v3hhyXfSDOo8QICFSKLPjTNa9G5u3IYUR6+YP
 pdHL2M1N3wsYDUWUrsTILs4kP2lmT/UdDpApUjOjaE2/3LS3Ep6172F3N/9I4bTH5wOxBbEz
 o7A1znhATY7EPaB8gqUz1+c3uDApyeiZJ1HQdVU8dY12QbOlwT/EiY+RVa95PW0lEO6c9ZeM
 FAPvDojq7Ao806mRcW7WAe3yFamlBMBX9tbE8Uh9RqAjKHT5m6xGWwsXjNHLts8u6cLqScCj
 wHT2YmzXHo27ePTECjGnluJkd+sESgzcmMeZQgBdAwYxf/dhbM9sjzvS8k2RcZZkebJMT33x
 jmLqg03iLMSkdMH2s2HwLzXv96/jsOXF1Bov207Skrgt1okP9D9O+RE/HCBtZ59wJClok5tV
 ZTus+yX96gwAJ6Ej0Rhq81dTejyt55p3NAx6GOD/qXNFRz3qxZPnqgKulmSwXuF1e5dIlfUj
 Lf741852XOqFCLCgVVLS4ywEd826qPrCM7oUPvZBvIXPMktLVbeoHE2PhLIt4wIrKTKuftvU
 Xt8WZzwZUv29Iw9lGbmLwvj+eBDKt8CKZP7GsmgkkXPPUu2b3+JU7YVWGZinchghJ5oVD79q
 o4FX+PTkkU3bQELSnWPmWLlBQxQfCdT6FGfg5A/S9Nv1SI6RD55VqaBketJlk4Mt/09q9okN
 0qVAidwoGcTT1WdQelWQhiPsI/SYKs=
IronPort-HdrOrdr: A9a23:UARoG66DfrkgqFCANwPXwPDXdLJyesId70hD6qhwISY6TiX+rb
 HWoB17726TtN9/YhEdcLy7VJVoBEmskKKdgrNhWotKPjOW21dARbsKheCJrgEIWReOktK1vZ
 0QC5SWY+eQMbEVt6nHCXGDYrQd/OU=
X-Talos-CUID: =?us-ascii?q?9a23=3AMiGufGrNSqKXV4FP4jNIfZLmUcADLXHBzFDVGki?=
 =?us-ascii?q?lL0BXbY+bdXGw/bwxxg=3D=3D?=
X-Talos-MUID: 9a23:6xHzcQVe4wxmJBTq/GL0hxZDEO122JS/NW09yZoJgc3dCTMlbg==
X-IronPort-AV: E=Sophos;i="6.02,144,1688443200"; 
   d="scan'208";a="121213284"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 7/8] x86/spec-ctrl: Issue VERW during IST exit to Xen
Date: Wed, 13 Sep 2023 21:27:57 +0100
Message-ID: <20230913202758.508225-8-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230913202758.508225-1-andrew.cooper3@citrix.com>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

There is a corner case where e.g. an NMI hitting an exit-to-guest path after
SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
flush to scrub potentially sensitive data from uarch buffers.

In order to compensate, issue VERW when exiting to Xen from an IST entry.

SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
and we're about to add a third.  Load the field into %ebx, and list the
register as clobbered.

%r12 has been arranged to be the ist_exit signal, so add this as an input
dependency and use it to identify when to issue a VERW.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 20 +++++++++++++++-----
 xen/arch/x86/x86_64/entry.S              |  2 +-
 2 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index acdb526d292d..9740697114ad 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -344,10 +344,12 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
  */
 .macro SPEC_CTRL_EXIT_TO_XEN
 /*
- * Requires %r14=stack_end
- * Clobbers %rax, %rcx, %rdx
+ * Requires %r12=ist_exit, %r14=stack_end
+ * Clobbers %rax, %rbx, %rcx, %rdx
  */
-    testb $SCF_ist_sc_msr, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14)
+    movzbl STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14), %ebx
+
+    testb $SCF_ist_sc_msr, %bl
     jz .L\@_skip_sc_msr
 
     /*
@@ -358,7 +360,7 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
      */
     xor %edx, %edx
 
-    testb $SCF_use_shadow, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14)
+    testb $SCF_use_shadow, %bl
     jz .L\@_skip_sc_msr
 
     mov STACK_CPUINFO_FIELD(shadow_spec_ctrl)(%r14), %eax
@@ -367,8 +369,16 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
 
 .L\@_skip_sc_msr:
 
-    /* TODO VERW */
+    test %r12, %r12
+    jz .L\@_skip_ist_exit
+
+    /* Logically DO_SPEC_CTRL_COND_VERW but without the %rsp=cpuinfo dependency */
+    testb $SCF_verw, %bl
+    jz .L\@_verw_skip
+    verw STACK_CPUINFO_FIELD(verw_sel)(%r14)
+.L\@_verw_skip:
 
+.L\@_skip_ist_exit:
 .endm
 
 #endif /* __ASSEMBLY__ */
diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S
index da084a7e8e54..f70752fa36c1 100644
--- a/xen/arch/x86/x86_64/entry.S
+++ b/xen/arch/x86/x86_64/entry.S
@@ -686,7 +686,7 @@ UNLIKELY_START(ne, exit_cr3)
 UNLIKELY_END(exit_cr3)
 
         /* WARNING! `ret`, `call *`, `jmp *` not safe beyond this point. */
-        SPEC_CTRL_EXIT_TO_XEN     /* Req: %r14=end, Clob: acd */
+        SPEC_CTRL_EXIT_TO_XEN     /* Req: %r12=ist_exit %r14=end, Clob: abcd */
 
         RESTORE_ALL adj=8
         iretq
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:28:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:28:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601589.937674 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTM-0006Dx-TT; Wed, 13 Sep 2023 20:28:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601589.937674; Wed, 13 Sep 2023 20:28:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTM-0006Cl-JL; Wed, 13 Sep 2023 20:28:28 +0000
Received: by outflank-mailman (input) for mailman id 601589;
 Wed, 13 Sep 2023 20:28:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z4av=E5=citrix.com=prvs=613b8bbe6=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgWTL-0004dA-0L
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:28:27 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 16309a95-5274-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 22:28:25 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 16309a95-5274-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694636904;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=E+h+v4bt4jUOs5MOxa+tFxGF/9LxGqNV0dJqFrllWuI=;
  b=WG5EO7zlDcYebsc4YuCjGQr9m+mT+IDKJp5L61g4WMuTBeGLEuaqfUqE
   UrVzIRo4BfOaoR/5FSuqbe5s1UxbPNezw01u5vtuZhb1mkbskMjWnlu/m
   uKBHUz+kMk6hu8yAe3MhmLDZnx7yZL7I1pUMH3vg88lZ1+AKQQI3n349p
   Q=;
X-CSE-ConnectionGUID: tqLoj7ejQSK+P4DSBC/0tA==
X-CSE-MsgGUID: XVEXRFZxRcidLwrm+Vs7Sw==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125280890
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:B4Tn7aPorHFncWDvrR2zl8FynXyQoLVcMsEvi/4bfWQNrUp21WQHn
 2AdCGCHa/aDZDP2KdF/Ooi3/E9Qu5DSzdRkHQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/jrRC9H5qyo42tJ5wdmPpingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0vpuJWZMq
 vEaEQsuLSjfq9mc6/XjVsA506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI
 ZNEN3w2Nk+ojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXQGJ8FxhbJ/
 goq+UzJPDwqDvKt2QCO836ImfXK3h3gB7kNQejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK
 lcI4Ww+oK4q7kupQ9LhGRqirxasnDQRRt5RGO0S8xyWx+zf5APxLncAZi5MbpohrsBeeNAx/
 gbXxZWzX2Up6eDLDyvHrd94sA9eJwAJNEsFZ3AJTzI+wJrb/K0IpDmIFspKRfvdYsLOJRn8x
 DWDrS4bjroVjNIW26jTwW0rkw5AtbCSEFdru1y/snaNq1ogOdX7P9DABU3zt64oEWqPcrWWU
 JHoceC65ftGM5yCnTflrA4lTODwvKbt3NExbDdS83gdG9aFoS7LkWN4umsWyKJV3iEsIGWBX
 aMrkVkNjKK/xVPzBUONX6q/Ct4x0Y/rHsn/W/bfY7JmO8YgKFHcpHkyOxPOjggBdXTAdollZ
 f+mnTuEVy5GWcyLMhLoLwvi7VPb7n9nnj6CLXwK5x+mzaCfdBaopUQtaTOzghQCxPrc+m39q
 o8PX/ZmPj0DCIUSlAGLq99MRb3LRFBnba3LRzt/KrLcelc/SDF5YxITqJt4E7FYc21uvr+g1
 hmAtoVwmDITWVWvxd22V01e
IronPort-HdrOrdr: A9a23:EfUkcaFlA/GyOoMxpLqE5MeALOsnbusQ8zAXP0AYc3Jom6uj5q
 eTdZUgpHvJYVkqOE3I9ertBEDiewK4yXcW2/hzAV7KZmCP0wHEEGgL1/qF/9SKIUzDH4Bmup
 uIC5IOauHNMQ==
X-Talos-CUID: 9a23:DvCYvWBDzYURAzz6EzV+0EkWRc0nS0b+j0+MD3SSIiExVJTAHA==
X-Talos-MUID: 9a23:HqnvEgnuhWjZ9z9aAG6qdnpSCupY2YqcGHoGkJkipNOBdhJrZAyC2WE=
X-IronPort-AV: E=Sophos;i="6.02,144,1688443200"; 
   d="scan'208";a="125280890"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 0/8] x86/spec-ctrl: AMD DIV fix, and VERW prerequisite bugfixes
Date: Wed, 13 Sep 2023 21:27:50 +0100
Message-ID: <20230913202758.508225-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Patch 8 is the XSA-439 fix for the AMD DIV issue, disclosed insufficiently
ahead of August 8th for us to prepare a fix for the embargo.

Patches 1 thru 7 are prerequisites, identified while trying to write patch 8.

All 8 patches are for all security trees.

Andrew Cooper (8):
  x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
  x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
  x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
  x86/spec-ctrl: Extend all SPEC_CTRL_{ENTER,EXIT}_* comments
  x86/entry: Adjust restore_all_xen to hold stack_end in %r14
  x86/entry: Track the IST-ness of an entry for the exit paths
  x86/spec-ctrl: Issue VERW during IST exit to Xen
  x86/spec-ctrl: Mitigate the Zen1 DIV leakge

 docs/misc/xen-command-line.pandoc        |   6 +-
 xen/arch/x86/hvm/svm/entry.S             |   1 +
 xen/arch/x86/include/asm/cpufeatures.h   |   2 +-
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 150 ++++++++++++++++-------
 xen/arch/x86/spec_ctrl.c                 |  45 ++++++-
 xen/arch/x86/traps.c                     |  13 ++
 xen/arch/x86/x86_64/compat/entry.S       |   9 +-
 xen/arch/x86/x86_64/entry.S              |  31 +++--
 8 files changed, 198 insertions(+), 59 deletions(-)


base-commit: 6aa25c32180ab59081c73bae4c568367d9133a1f
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:28:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:28:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601590.937685 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTN-0006Wj-SX; Wed, 13 Sep 2023 20:28:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601590.937685; Wed, 13 Sep 2023 20:28:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTN-0006Tp-G3; Wed, 13 Sep 2023 20:28:29 +0000
Received: by outflank-mailman (input) for mailman id 601590;
 Wed, 13 Sep 2023 20:28:28 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z4av=E5=citrix.com=prvs=613b8bbe6=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgWTM-0004dA-0e
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:28:28 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1768456a-5274-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 22:28:26 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1768456a-5274-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694636905;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=jx4SOK+9S/IjqodWIlucBKoLHCAUVljbJYSnUX0zZyE=;
  b=KqoALMNqnBHPFSEGzbk7Z0Yy0R6I55TxlI4L7yUE634VynszxbZ1fW5c
   Jkq3KOfXLzcJNRqCRcMpJ3Etdo0hvZ8DSVggPgKgtZ7zhc59DR3oatP2M
   ALqe9jcaNQOx3HB8ypV3Sx+I2TAQiU8JonG6ca4qHXfIPQj0hUGTdmD94
   w=;
X-CSE-ConnectionGUID: tqLoj7ejQSK+P4DSBC/0tA==
X-CSE-MsgGUID: Ve2Ajt9KQAWORAnfabEMKg==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125280891
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:9AOFYqwl9Z0HFCInghd6t+chxirEfRIJ4+MujC+fZmUNrF6WrkUEz
 WcbXGyGb/iCNDOhL9h2O4yzpB9Sup6HyIMxGwVtpCAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EkHUMja4mtC5QRvPKsT5zcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KX1X0
 fsadz0PVyugxNrq7ImRYa40mu12eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP
 ZBAL2MyMlKZOUYn1lQ/UfrSmM+BgHXlfiIeg1WSvactuEDYzRBr0airO93QEjCPbZwPwxzI/
 jKXpgwVBDkkOYa2yybU0UuFucj1tCX1UYg/MZ63o6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL
 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0efBdDuk74wGl0bfP7kCSAW1sZiFFQMwrsokxXzNC6
 7OSt4q3X3o16uTTEC/DsO7O9lteJBT5M0cefAsDT1QI4eDYg8IL0j70ZP0kSLKc24id9S7L/
 xiGqy03hrM2hMEN1rmm8V2vvw9AtqQlXSZuuFyJAzvNAhdRIdf8Otf2sQSzAeNodt7xc7WXg
 JQTdyFyBsgqBIrFqiGCSf5l8FqBt6fca220bbKC8vAcG9WRF5yLJ9A4DNJWfh0B3iM4ldjBO
 RW7hO+pzMUPVEZGlIcuC25LN+wkzLL7CfPuXe3OY9xFb/BZLVHWoH81PRbMgT2zwSDAdJ3T3
 r/BLa6R4YsyU/w7nFJauc9DuVPU+szO7TyKHs2qp/hW+bGfeGSUWd843KimN4gEAFe/iFyNq
 b53bpLaoyizpcWiOkE7B6ZPdwFVRZX6bLiqw/FqmhmrflY5QDx4W6+JqV7jEqQ895loei7z1
 inVcidlJJDX1BUr9S3ihqhfVY7S
IronPort-HdrOrdr: A9a23:zYTrlK1FUvlG6PzvXu3uKQqjBIokLtp133Aq2lEZdPRUGvb3qy
 nIpoVj6faUskd2ZJhOo7C90cW7LU80sKQFhLX5Xo3SOzUO2lHYT72KhLGKq1aLdhEWtNQtsZ
 uIG5IOcOEYZmIasS+V2maF+q4bsbu6zJw=
X-Talos-CUID: =?us-ascii?q?9a23=3ACoiE/GrCSoCEODMpS+izFZXmUdw8Vnrfk3rSGnS?=
 =?us-ascii?q?bSl41ZIa/YhjI5Ioxxg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3A/ObK0A0TCPcZP15Y9NPuwlvItTUj3an0IUIRwLY?=
 =?us-ascii?q?/kvajDwV2NT6XoRGUTdpy?=
X-IronPort-AV: E=Sophos;i="6.02,144,1688443200"; 
   d="scan'208";a="125280891"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 2/8] x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
Date: Wed, 13 Sep 2023 21:27:52 +0100
Message-ID: <20230913202758.508225-3-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230913202758.508225-1-andrew.cooper3@citrix.com>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.

When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
is going to be too generic shortly.

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 40 ++++++++++--------------
 1 file changed, 16 insertions(+), 24 deletions(-)

diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index 14ec40e8d32f..dd7c5e8bfc79 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -199,27 +199,6 @@
     wrmsr
 .endm
 
-.macro DO_SPEC_CTRL_EXIT_TO_XEN
-/*
- * Requires %rbx=stack_end
- * Clobbers %rax, %rcx, %rdx
- *
- * When returning to Xen context, look to see whether SPEC_CTRL shadowing is
- * in effect, and reload the shadow value.  This covers race conditions which
- * exist with an NMI/MCE/etc hitting late in the return-to-guest path.
- */
-    xor %edx, %edx
-
-    testb $SCF_use_shadow, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%rbx)
-    jz .L\@_skip
-
-    mov STACK_CPUINFO_FIELD(shadow_spec_ctrl)(%rbx), %eax
-    mov $MSR_SPEC_CTRL, %ecx
-    wrmsr
-
-.L\@_skip:
-.endm
-
 .macro DO_SPEC_CTRL_EXIT_TO_GUEST
 /*
  * Requires %eax=spec_ctrl, %rsp=regs/cpuinfo
@@ -328,11 +307,24 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
  * Clobbers %rax, %rcx, %rdx
  */
     testb $SCF_ist_sc_msr, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%rbx)
-    jz .L\@_skip
+    jz .L\@_skip_sc_msr
 
-    DO_SPEC_CTRL_EXIT_TO_XEN
+    /*
+     * When returning to Xen context, look to see whether SPEC_CTRL shadowing
+     * is in effect, and reload the shadow value.  This covers race conditions
+     * which exist with an NMI/MCE/etc hitting late in the return-to-guest
+     * path.
+     */
+    xor %edx, %edx
 
-.L\@_skip:
+    testb $SCF_use_shadow, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%rbx)
+    jz .L\@_skip_sc_msr
+
+    mov STACK_CPUINFO_FIELD(shadow_spec_ctrl)(%rbx), %eax
+    mov $MSR_SPEC_CTRL, %ecx
+    wrmsr
+
+.L\@_skip_sc_msr:
 .endm
 
 #endif /* __ASSEMBLY__ */
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:28:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:28:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601591.937703 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTP-000765-9U; Wed, 13 Sep 2023 20:28:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601591.937703; Wed, 13 Sep 2023 20:28:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWTO-000755-W6; Wed, 13 Sep 2023 20:28:30 +0000
Received: by outflank-mailman (input) for mailman id 601591;
 Wed, 13 Sep 2023 20:28:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Z4av=E5=citrix.com=prvs=613b8bbe6=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qgWTN-0004dA-0e
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:28:29 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 18084ff1-5274-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 22:28:27 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 18084ff1-5274-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694636906;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=zKE4TU+LF26IXN40K9i0T1Kvr1B0IL2da7a6adH2ZkM=;
  b=S1qExoHxfV/EvjWKQmrK/OhI5jMmGOI3qbdfMh/yZ7llee/jjf2AXlzE
   /YlMEcue5uaeZr4fk+MmeEIw9OfcRGEZrVYodB0eti4bccCnlh8TEJDrw
   +/boftSJZbuEO2Fv4WQnn5ze+ZsD4DsdWmbW29OOiZK9t4l/UumQ/eu89
   o=;
X-CSE-ConnectionGUID: tqLoj7ejQSK+P4DSBC/0tA==
X-CSE-MsgGUID: eGHVzTYyREumYktvs7pQkA==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125280892
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:8berC6ilp7e3uL8lL1hZSd1UX161dhAKZh0ujC45NGQN5FlHY01je
 htvWG/UaP+JamvwKoskO96woR4Gv5/QzoM2S1Ft+XhhFHwb9cadCdqndUqhZCn6wu8v7q5Ex
 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOhTraCYmYoHVMMpB4J0XpLg/Q+jpNjne+3CgaMv
 cKai8DEMRqu1iUc3lg8sspvkzsx+qyo0N8klgZmP6sT7QaFzyJ94K83fsldEVOpGuG4IcbiL
 wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ
 OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+
 tQEMRQKbE+OhduN4/GDFsVXrO9kdNXCadZ3VnFIlVk1DN4jSJHHBa7L+cVZzHE7gcUm8fT2P
 pRDL2A1NVKZPkMJYw1MYH49tL7Aan3XWjtUsl+K44Ew5HDe1ldZ27nxKtvFPNeNQK25m27B/
 D+crzypU0ty2Nq3xBWlzGCQt/71sD7+aYEOCqbn7sdpqQjGroAUIEJPDgbqyRWjsWauVtQaJ
 0EK9y4Gqakp6FftXtT7Rwe/onOPolgbQdU4O88Q5RyJy6HUyx2EHWVCRTlEAPQ5sOcmSDps0
 UWG9+4FHhQ27ufTEyjEsO7J83XrY3N9wXI+iTEsURIh5Nu8rYMKtTGMdopPK4SeyYXpMGSlq
 9yVlxQWi7IWhM8N8qy0+1Hbnj6hzqT0oh4JChb/BTz8sF4gDGKxT8nxsAWAs64cRGqMZgPZ1
 EXojfRy+wzn4XulsCWWCNsAE7iyjxpuGG2N2AU/d3XNGtnExpJCQWyyyGsuTKuKGpxeEdMMX
 KM0kVoLjKK/xFPwMcdKj3uZUqzGN5TIG9X/TezzZdFTeJV3fwLv1HgwNBLOhDi1zBZxz/BX1
 XKnnSGEVypyNEia5GDuG7d1PUEDmEjSOl8/tbiklk/6gNJylVaeSKsfMUvmUwzKxPrsnekhy
 P4Gb5Hi40wGAIXDjtz/rdZ7waYicSJqWvgbaqV/Koa+H+aRMD19VKeMmONxI+SIXc19z4/1w
 510YWcAoHKXuJENAVTihqxLAF83YatCkA==
IronPort-HdrOrdr: A9a23:AQDBuao+mdozNWIpurug2hwaV5oTeYIsimQD101hICG8cqSj+f
 xG+85rrCMc6QxhPk3I9urhBEDtex/hHNtOkOws1NSZLW7bUQmTXeJfBOLZqlWKcUDDH6xmpM
 NdmsBFeaXN5DNB7PoSjjPWLz9Z+qjkzJyV
X-Talos-CUID: =?us-ascii?q?9a23=3AoVwCaWtTsT/xnBK8CwvVeiKJ6Is5a1nazijdIXa?=
 =?us-ascii?q?DKiVRFJGuY3TXoL9Nxp8=3D?=
X-Talos-MUID: 9a23:6Y2HCglQRYQHL6p+P6MqdnpvG+dW8ZifGXogjJA3uNWaLnNoAjS02WE=
X-IronPort-AV: E=Sophos;i="6.02,144,1688443200"; 
   d="scan'208";a="125280892"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 3/8] x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
Date: Wed, 13 Sep 2023 21:27:53 +0100
Message-ID: <20230913202758.508225-4-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230913202758.508225-1-andrew.cooper3@citrix.com>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

These have grown more complex over time, with some already having been
converted.

Provide full Requires/Clobbers comments, otherwise missing at this level of
indirection.

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 37 ++++++++++++++++++------
 1 file changed, 28 insertions(+), 9 deletions(-)

diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index dd7c5e8bfc79..ee75f2bced42 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -219,26 +219,45 @@
 .endm
 
 /* Use after an entry from PV context (syscall/sysenter/int80/int82/etc). */
-#define SPEC_CTRL_ENTRY_FROM_PV                                         \
+.macro SPEC_CTRL_ENTRY_FROM_PV
+/*
+ * Requires %rsp=regs/cpuinfo, %rdx=0
+ * Clobbers %rax, %rcx, %rdx
+ */
     ALTERNATIVE "", __stringify(DO_SPEC_CTRL_COND_IBPB maybexen=0),     \
-        X86_FEATURE_IBPB_ENTRY_PV;                                      \
-    ALTERNATIVE "", DO_OVERWRITE_RSB, X86_FEATURE_SC_RSB_PV;            \
+        X86_FEATURE_IBPB_ENTRY_PV
+
+    ALTERNATIVE "", DO_OVERWRITE_RSB, X86_FEATURE_SC_RSB_PV
+
     ALTERNATIVE "", __stringify(DO_SPEC_CTRL_ENTRY maybexen=0),         \
         X86_FEATURE_SC_MSR_PV
+.endm
 
 /* Use in interrupt/exception context.  May interrupt Xen or PV context. */
-#define SPEC_CTRL_ENTRY_FROM_INTR                                       \
+.macro SPEC_CTRL_ENTRY_FROM_INTR
+/*
+ * Requires %rsp=regs, %r14=stack_end, %rdx=0
+ * Clobbers %rax, %rcx, %rdx
+ */
     ALTERNATIVE "", __stringify(DO_SPEC_CTRL_COND_IBPB maybexen=1),     \
-        X86_FEATURE_IBPB_ENTRY_PV;                                      \
-    ALTERNATIVE "", DO_OVERWRITE_RSB, X86_FEATURE_SC_RSB_PV;            \
+        X86_FEATURE_IBPB_ENTRY_PV
+
+    ALTERNATIVE "", DO_OVERWRITE_RSB, X86_FEATURE_SC_RSB_PV
+
     ALTERNATIVE "", __stringify(DO_SPEC_CTRL_ENTRY maybexen=1),         \
         X86_FEATURE_SC_MSR_PV
+.endm
 
 /* Use when exiting to PV guest context. */
-#define SPEC_CTRL_EXIT_TO_PV                                            \
-    ALTERNATIVE "",                                                     \
-        DO_SPEC_CTRL_EXIT_TO_GUEST, X86_FEATURE_SC_MSR_PV;              \
+.macro SPEC_CTRL_EXIT_TO_PV
+/*
+ * Requires %rax=spec_ctrl, %rsp=regs/info
+ * Clobbers %rcx, %rdx
+ */
+    ALTERNATIVE "", DO_SPEC_CTRL_EXIT_TO_GUEST, X86_FEATURE_SC_MSR_PV
+
     DO_SPEC_CTRL_COND_VERW
+.endm
 
 /*
  * Use in IST interrupt/exception context.  May interrupt Xen or PV context.
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:31:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:31:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601609.937717 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWWa-0003A4-RN; Wed, 13 Sep 2023 20:31:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601609.937717; Wed, 13 Sep 2023 20:31:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWWa-00039x-Mu; Wed, 13 Sep 2023 20:31:48 +0000
Received: by outflank-mailman (input) for mailman id 601609;
 Wed, 13 Sep 2023 20:31:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJZS=E5=linutronix.de=tglx@srs-se1.protection.inumbo.net>)
 id 1qgWWY-00036K-Dz
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:31:46 +0000
Received: from galois.linutronix.de (galois.linutronix.de
 [2a0a:51c0:0:12e:550::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8dcdadda-5274-11ee-9b0d-b553b5be7939;
 Wed, 13 Sep 2023 22:31:44 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8dcdadda-5274-11ee-9b0d-b553b5be7939
From: Thomas Gleixner <tglx@linutronix.de>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020; t=1694637103;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=QvkOsN1rW+cp52e2+U4Pd+r05FQCQ6lhz8OcOV4VJRg=;
	b=C6R/MqGX0vKqtOvLU3C+zB1Ud6qHIXTZENaw6i8p6l71u60mxd8dlKBzHfonNFw3slv6hk
	/un+sL9MS5Hpo1Ry3zGP58xwRyGilAKfe4gTKGOTjbO8Yz450mHvTShaRsKfwtZ1fVSipe
	sadVgwt4pQJlGVgPbIkL9kDrgU35Gy+yxJnCIrQWdoIH0JWqTQAHj+8EqeU0I9WFnsnmcE
	T9gV38fWLcZ/QAu3GYxKy0yqIinywKACLqP8t3ET8dkhUvSU5k/JSJiLL2DPFaQBBRo9hz
	JZDPEPIFkjeKbyAK4BOaxjRIPXwnChK6aBGw6XR9zdhrpvl/c2V5+ptX7fNsew==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020e; t=1694637103;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=QvkOsN1rW+cp52e2+U4Pd+r05FQCQ6lhz8OcOV4VJRg=;
	b=TKsu/hjOD1gx9+yb7ULkLNunmTjskubueADGLHtmCtevMFV3bUBtbtKEsvX0XDVbeuf2Xb
	zKVD0Jx6oGfA82Ag==
To: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich <jbeulich@suse.com>
Cc: Wei Liu <wl@xen.org>, solene@openbsd.org, Marek =?utf-8?Q?Marczykowski?=
 =?utf-8?Q?-G=C3=B3recki?=
 <marmarek@invisiblethingslab.com>, Demi Marie Obenour
 <demi@invisiblethingslab.com>, Roger Pau Monne <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org, the arch/x86 maintainers <x86@kernel.org>
Subject: Re: [Xen PATCH] x86/amd: do not expose HWCR.TscFreqSel to guests
In-Reply-To: <fca202a8-2716-6ed1-c2ce-707deeddb3ab@citrix.com>
References: <20230912162305.34339-1-roger.pau@citrix.com>
 <fc91c802-5f71-4ec9-8c11-68fd2c4ae672@citrix.com>
 <2cfcda8f-bd51-085b-997a-0ff31434d460@suse.com>
 <fca202a8-2716-6ed1-c2ce-707deeddb3ab@citrix.com>
Date: Wed, 13 Sep 2023 22:31:43 +0200
Message-ID: <87sf7hzufk.ffs@tglx>
MIME-Version: 1.0
Content-Type: text/plain

On Wed, Sep 13 2023 at 12:02, Andrew Cooper wrote:
> The PSTATE MSRs are entirely model specific, fully read/write, and the
> Enable bit is not an enable bit; its a "not valid yet" bit that firmware
> is required to adjust to be consistent across the coherency fabric.
>
> Linux is simply wrong with it's printk() under virt, and wants adjusting.

No objections from my side.

Thanks,

        tglx


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 20:43:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 20:43:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601623.937725 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWhu-0005hs-QJ; Wed, 13 Sep 2023 20:43:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601623.937725; Wed, 13 Sep 2023 20:43:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgWhu-0005hl-Nl; Wed, 13 Sep 2023 20:43:30 +0000
Received: by outflank-mailman (input) for mailman id 601623;
 Wed, 13 Sep 2023 20:43:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VJSs=E5=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgWht-0005hd-4a
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 20:43:29 +0000
Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com
 [2a00:1450:4864:20::32e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 30c0d3cc-5276-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 22:43:27 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-401c90ed2ecso2761795e9.0
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 13:43:27 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 v13-20020a05600c214d00b003fc16ee2864sm85104wml.48.2023.09.13.13.43.26
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 13 Sep 2023 13:43:26 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 30c0d3cc-5276-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694637806; x=1695242606; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=2cP/HuQGwBjPzdptzfINxiTBZUDLm/3WoHcnGK2QCIo=;
        b=otS/6kGEp986MLYDhZHUU5SYd/MvM/+OaZ+Hb9BUFYw+lJidEMfRXo+PwjDGStNP6Z
         0vPUje6f9nIczGvLg699+JmjrSSKwCI1x1B9VH1WABOlFtMnXscG8sluvADA6QHR2Vr6
         raTCCHgbKuaOvN/icOCgepyCovKZUw3krDLBw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694637806; x=1695242606;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=2cP/HuQGwBjPzdptzfINxiTBZUDLm/3WoHcnGK2QCIo=;
        b=Knv6xpHRvZdL3IlMatuFXgnaF+1QrdBJkIFuM2RZtWo/ceefrGRVboA8/7+DsAAWtn
         k1c9mWBcMzr2G6B4SzV/Fzr9w0F7B9P1ljKRI/SUSTEiny9xPZPMiKlGiPxbL4+5ZrZ2
         iwW7pElzpYCZCb4KcN7GUwSQWUMr/S55hRUQ01gzHqYyo5732NUwp1/YNBirSCdRwO5E
         mxp+LXABBK2kIinU4u9ITdApfIaqJeI1oCiwQscjwnNbpBYJYw5U4M/3UJWYWLtNDCnb
         F9/128x40GsDvZaRjkiUVaMlEaFmIG+tuiA4aMARwg7+5fTMWFXrIy46+uE9wCZIYIHD
         KNJQ==
X-Gm-Message-State: AOJu0YyvAkikOUj1DOGXrqzaU4zIMtU7asE61uJtinZlGY994/oVO9+N
	+QghgvLrsbQ47lDiN4DOVbyBTquwpiCa5QpFeJU=
X-Google-Smtp-Source: AGHT+IFdXudZT/AlBlIydwwpcRT/G/fYgzJUS5xpbRFdmTNvJ37l6oE3SHcUeGzxL/g1n0MwXLghXg==
X-Received: by 2002:a1c:4b0a:0:b0:3ff:28b8:c53d with SMTP id y10-20020a1c4b0a000000b003ff28b8c53dmr2848643wma.33.1694637806632;
        Wed, 13 Sep 2023 13:43:26 -0700 (PDT)
Message-ID: <a4f616f2-d371-0cf8-6173-4231d3d4b8eb@citrix.com>
Date: Wed, 13 Sep 2023 21:43:25 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 8/8] x86/spec-ctrl: Mitigate the Zen1 DIV leakge
Content-Language: en-GB
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-9-andrew.cooper3@citrix.com>
In-Reply-To: <20230913202758.508225-9-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 13/09/2023 9:27 pm, Andrew Cooper wrote:
> @@ -955,6 +960,40 @@ static void __init srso_calculations(bool hw_smt_enabled)
>          setup_force_cpu_cap(X86_FEATURE_SRSO_NO);
>  }
>  
> +/*
> + * Div leakage is specific to the AMD Zen1 microarchitecure.  Use STIBP as a
> + * heuristic to select between Zen1 and Zen2 uarches.
> + */
> +static bool __init has_div_vuln(void)
> +{
> +    if ( !(boot_cpu_data.x86_vendor &
> +           (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
> +        return false;
> +
> +    if ( (boot_cpu_data.x86 != 0x17 && boot_cpu_data.x86 != 0x18) ||
> +         !boot_cpu_has(X86_FEATURE_AMD_STIBP) )
> +        return false;

Bah - this serves me right for positing before waiting for CI to check
that Naples picks the right default.  The STIBP check is backwards and
will mix up Zen1/2.

I'm going to create real is_zen{1,2}_uarch() helpers in amd.h to avoid
opencoding this heuristic yet again.  I highly doubt this will be the
final time we need it.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 21:13:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 21:13:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601653.937736 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgXAU-00065t-UU; Wed, 13 Sep 2023 21:13:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601653.937736; Wed, 13 Sep 2023 21:13:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgXAU-00065m-RJ; Wed, 13 Sep 2023 21:13:02 +0000
Received: by outflank-mailman (input) for mailman id 601653;
 Wed, 13 Sep 2023 21:13:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ICW1=E5=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qgXAT-00065g-L5
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 21:13:01 +0000
Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com
 [66.111.4.28]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4fcd90a8-527a-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 23:12:58 +0200 (CEST)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.nyi.internal (Postfix) with ESMTP id E92D55C0088;
 Wed, 13 Sep 2023 17:12:56 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute1.internal (MEProxy); Wed, 13 Sep 2023 17:12:56 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed,
 13 Sep 2023 17:12:55 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4fcd90a8-527a-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm1; t=
	1694639576; x=1694725976; bh=sHuBAL23D3vD7KE/AFx7Nx49GPFuNzKaUIh
	ZfoJomu4=; b=2L5RpwlhcTGE2SzZac6gleEGPnAa31/pT2C1FDIoex2k1oD9WTh
	Z2Pb0UgOaIDr3Y88Gtq2y5CtxO+bkapjhpQTJKebWaG47wIKOEj19PtX2qhb7WbT
	6CzbzH1LrT5+9gFD/Nua3FR0ZVSzF93a7jbyiTmJ0HpuILekA5RjepoKPuvzoTPj
	KzOHSxHkhrtdX8TWw3yE+1ikbh1sVkQ34Ha/r6LxvXwN/+q1o3SW0ri+A/mAx+Qc
	Dw7QyxtW07uKtIQVOIm1F+G+omHgJQm2DJwvjSU5LAPvNdCLldSemZqjHKuOR0Uo
	W1ZxGSLz5vh2edq4ezNWj6aYfMqzaT3E5fA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; t=1694639576; x=1694725976; bh=sHuBAL23D3vD7
	KE/AFx7Nx49GPFuNzKaUIhZfoJomu4=; b=l+rKFGofmM/9Fe1jyD6M5v2vLhPDk
	XJboiJrWlaWIjb5e38tWfYRHSCOyHBhSVu6jtptaQT+b2A+vZ0sbnv23JyAnHncE
	cISxfd39bhdcDhW9840H68K0cDuE19IUIWLm5immG0xJEcxGPpuRsyX3RF1/uu9s
	77MEGbkXTAW77E2kzj/8hnUODUwRkboqXz2AtH8xByHjAQOwLdUxB0dOwfSQ2P+4
	cZ3RMPoykzb5UD0wXzBqba9WnCKxobnrRsvdPHiMegioj2Tsk2bO+U4LKHu5Bk1/
	2MVrA+Uj0PwIWn6WmUhcoFvzQEqFek6kCP9OGpVtGI/43EjFR2xXCn2KA==
X-ME-Sender: <xms:2CUCZeV_Peyek2hId3MyT7fWE2A3pgCS2LPYEdjeD5elYt_vFUe4og>
    <xme:2CUCZalOKZwL-nY_iwEDfIXWnri-c7KRIcXCDVkH2b48bxhMCNDv2uO85BTRD3mCx
    Fv-RR2pFno6Ww>
X-ME-Received: <xmr:2CUCZSasbqMHIXWUBWC2tdXVElMRWPCOeFvcUGlxTMHuMn4Faa91T3JN>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudeikedgudehkecutefuodetggdotefrod
    ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
    necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
    enucfjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghr
    vghkucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesih
    hnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpefg
    udelteefvefhfeehieetleeihfejhfeludevteetkeevtedtvdegueetfeejudenucevlh
    hushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgv
    khesihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:2CUCZVXctPBL-t9UVbprNjLvtmbVfUgdzno7nGGy0IXH-mQkwANytg>
    <xmx:2CUCZYnylQtCDzTR6rUsALtqp_oVbiEf0PzZtMPrPDc6zhrHCM4aug>
    <xmx:2CUCZaf28YvO7YdA6mkwMolZBENITLHLQIZw6qhf8ZZOcsghvYfWdQ>
    <xmx:2CUCZdxnj4ELj4gOnZx8JvQAv_6b1INYVf_A59HTaLiFta0md0pcow>
Feedback-ID: i1568416f:Fastmail
Date: Wed, 13 Sep 2023 23:12:52 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Jan Beulich <JBeulich@suse.com>,
	Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH 8/8] x86/spec-ctrl: Mitigate the Zen1 DIV leakge
Message-ID: <ZQIl1CoxGxIW5r7F@mail-itl>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-9-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="V0/yz57NvCux/epS"
Content-Disposition: inline
In-Reply-To: <20230913202758.508225-9-andrew.cooper3@citrix.com>


--V0/yz57NvCux/epS
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Wed, 13 Sep 2023 23:12:52 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Jan Beulich <JBeulich@suse.com>,
	Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH 8/8] x86/spec-ctrl: Mitigate the Zen1 DIV leakge

On Wed, Sep 13, 2023 at 09:27:58PM +0100, Andrew Cooper wrote:
> diff --git a/xen/arch/x86/include/asm/cpufeatures.h b/xen/arch/x86/includ=
e/asm/cpufeatures.h
> index da0593de8542..724de2e11db4 100644
> --- a/xen/arch/x86/include/asm/cpufeatures.h
> +++ b/xen/arch/x86/include/asm/cpufeatures.h
> @@ -35,7 +35,7 @@ XEN_CPUFEATURE(SC_RSB_HVM,        X86_SYNTH(19)) /* RSB=
 overwrite needed for HVM
>  XEN_CPUFEATURE(XEN_SELFSNOOP,     X86_SYNTH(20)) /* SELFSNOOP gets used =
by Xen itself */
>  XEN_CPUFEATURE(SC_MSR_IDLE,       X86_SYNTH(21)) /* Clear MSR_SPEC_CTRL =
on idle */
>  XEN_CPUFEATURE(XEN_LBR,           X86_SYNTH(22)) /* Xen uses MSR_DEBUGCT=
L.LBR */
> -/* Bits 23 unused. */
> +XEN_CPUFEATURE(SC_DIV,            X86_SYNTH(25)) /* DIV scrub needed */

s/25/23/

>  XEN_CPUFEATURE(SC_RSB_IDLE,       X86_SYNTH(24)) /* RSB overwrite needed=
 for idle. */
>  XEN_CPUFEATURE(SC_VERW_IDLE,      X86_SYNTH(25)) /* VERW used by Xen for=
 idle */
>  XEN_CPUFEATURE(XEN_SHSTK,         X86_SYNTH(26)) /* Xen uses CET Shadow =
Stacks */

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--V0/yz57NvCux/epS
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmUCJdQACgkQ24/THMrX
1yx0pQf9EZxiK+VPjgO2r5vzwyQpEd1aA43vrd8ku1osTBxHMbKDpSZsllt5UrH9
iVtecAvqPiRoHaEmgy95u7rr93zurlTvK2L0kwEK4ZnknSnFYwI+0qq5HTWLtAnA
ewvEhnaQL1xrW9Uo2GyyWQ9s7R9ANow6xFiuI+rfXhhr8yUKdSK7kA59C30ezXEA
W26yUJA2GAyYSq8n5ge2aEhDC0uJxJ2eJkMzYCkAGtaiBmex9x5y+qF4l8NiCH+8
lTuz6e2RUjzjR8KAEfKNxBKwQS+5+TYcRJb8QFL8SQYEphRJINX7St06cWl6AFDk
aGIBX/Ev0IYMh5G9VeL1pkkRVN9Twg==
=cx9a
-----END PGP SIGNATURE-----

--V0/yz57NvCux/epS--


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 21:17:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 21:17:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601658.937747 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgXF4-0007UN-GN; Wed, 13 Sep 2023 21:17:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601658.937747; Wed, 13 Sep 2023 21:17:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgXF4-0007UG-BZ; Wed, 13 Sep 2023 21:17:46 +0000
Received: by outflank-mailman (input) for mailman id 601658;
 Wed, 13 Sep 2023 21:17:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgXF3-0007UA-GW
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 21:17:45 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fa10fc98-527a-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 23:17:43 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 9929661AB0;
 Wed, 13 Sep 2023 21:17:42 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0269EC433C7;
 Wed, 13 Sep 2023 21:17:40 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fa10fc98-527a-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694639862;
	bh=E5fR+g0xpoWJgu6g2qXicRDEKe8ZE32qBjIIWwqSNck=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=jhMeEH0cwvPdtvzU9e/g1l89ZnqblfOSuwpZ67B9V9J/Bb4+bFO8v+PKlmY2BdmkT
	 fIO5oBwrrct1ZH25zmYBkAQLIsOa1RJlvmsDRQI1ROClp9PTUN7wrFP9Z8u84G+wMD
	 viz8oj0Vv3G/AARgkj52mjkMZgLVP3IXzjF5vmQqzWn+8MI/ppWYlpIM6cD6rgsI1z
	 i1x0ZbGK4rOa1+o1oFG0oHgaR0v90OqSxbXjJhNfbEoJ01GqHiYI3jHFbhon0Uoog/
	 iL7CBB81guU44vETZolaFg9XunqUYpIIPd4P7FdVGPJeYKKnxIY1EboJirPkf09UGZ
	 a6Vr5b5N8GS6Q==
Date: Wed, 13 Sep 2023 14:17:38 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Anthony Chan <anthonychan@nureva.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
    "bertrand.marquis@arm.com" <bertrand.marquis@arm.com>, 
    "julien@xen.org" <julien@xen.org>, 
    "Volodymyr_Babchuk@epam.com" <Volodymyr_Babchuk@epam.com>, 
    "michal.orzel@amd.com" <michal.orzel@amd.com>, 
    Dan Waqar <danwaqar@nureva.com>
Subject: RE: [EXT] Re: xen arm64 low power sleep support
In-Reply-To: <DM6PR20MB277966FD3886CAFA912A81AEC1F0A@DM6PR20MB2779.namprd20.prod.outlook.com>
Message-ID: <alpine.DEB.2.22.394.2309131417330.2295162@ubuntu-linux-20-04-desktop>
References: <DM6PR20MB277971712E5415CB231AEB37C1E7A@DM6PR20MB2779.namprd20.prod.outlook.com> <alpine.DEB.2.22.394.2308291512271.6458@ubuntu-linux-20-04-desktop> <DM6PR20MB27795F4B6C327F7F031BABB0C1E6A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2308301814580.6458@ubuntu-linux-20-04-desktop> <DM6PR20MB2779E6DD63DC5CC9A1FE161AC1E5A@DM6PR20MB2779.namprd20.prod.outlook.com> <alpine.DEB.2.22.394.2309051848590.6458@ubuntu-linux-20-04-desktop>
 <DM6PR20MB2779A22E8CA641F0B2BBF038C1EFA@DM6PR20MB2779.namprd20.prod.outlook.com> <alpine.DEB.2.22.394.2309061629460.6458@ubuntu-linux-20-04-desktop> <DM6PR20MB2779BA8D352E566A350844FCC1F2A@DM6PR20MB2779.namprd20.prod.outlook.com>
 <alpine.DEB.2.22.394.2309111822330.1847660@ubuntu-linux-20-04-desktop> <DM6PR20MB277966FD3886CAFA912A81AEC1F0A@DM6PR20MB2779.namprd20.prod.outlook.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 13 Sep 2023, Anthony Chan wrote:
> On Mon, 11 Sep 2023, Stefano Stabellini wrote:
> > On Mon, 11 Sep 2023, Anthony Chan wrote:
> > > On Wed, 6 Sep 2023, Stefano Stabellini wrote:
> > > > On Wed, 6 Sep 2023, Anthony Chan wrote:
> > > > > Thanks, I've tried patches that stemmed from that discussion but
> > > > > unfortunately, doesn't resolve the issue.  In fact, the
> > > > > s2idle_loop branch might not be the problem at all.  I
> > > > > experimented with Xen to allow the 'idle-states' into the FDT and
> > > > > prevented xen_guest_init on Linux from disabling the 'cpuidle'
> > > > > driver (arch/arm/xen/enlighten.c).  When I trigger a suspend, I
> > > > > can see now another thread (believe it's the idle thread) call
> > > > > into drivers/firmware/psci/psci.c:__psci_cpu_suspend and then the Xen
> > > > > counterpart at xen/arch/arm/vpsci.c:do_psci_0_2_cpu_suspend.
> > > >
> > > > OK but remember that Xen is not implementing do_psci_0_2_cpu_suspend
> > > > correctly at the moment. Either we need to fix the Xen
> > > > implementation, or we need to configure Linux so that it calls WFI instead
> > > > of __psci_cpu_suspend.
> > > >
> > > > As a test, can you try to apply the attached patch to Xen as a
> > > > tenative fix?  Or you could change
> > > > drivers/firmware/psci/psci.c:__psci_cpu_suspend to call WFI instead
> > > > of the PSCI operation (making sure to go to the entry_point instead of
> > > > returning).
> > >
> > > Tried the patch and substituting a WFI for a PSCI op, but Xen still watchdogs
> > on the VMs in both cases.  I noticed the other Linux generic arm 'cpu-idle'
> > driver which used to do issue a WFI/cpu_do_idle isn't useable anymore either.
> > I'm not sure if Xen may have used to rely on this generic driver to get the WFI.
> >
> > I was running out of ideas so I went back to look at the watchdog console log:
> >
> > (XEN) do_psci_0_2_cpu_suspend
> > (XEN) Watchdog timer fired for domain 0
> > (XEN) Hardware Dom0 shutdown: watchdog rebooting machine
> >
> > Checking the code, it seems that the Xen watchdog is set by
> > xen/common/sched/core.c:SCHEDOP_watchdog, which is called by
> > tools/libs/ctrl/xc_domain.c:xc_watchdog.
> >
> > xc_watchdog is called by tools/misc/xenwatchdogd.c. Is it possible that this
> > problem is entirely caused by the daemon xenwatchdogd running in the
> > background? What happens if you kill xenwatchdogd and try again without it
> > (even better not start it at all)?
> Disabling that daemon resolved the watchdog timing out.  Never noticed that daemon running before.  That clears a lot up and I think I understand what's going on here now, thank you for the help.

That's great! I am glad it got resolved.


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 21:38:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 21:38:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601666.937756 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgXYx-00060z-1j; Wed, 13 Sep 2023 21:38:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601666.937756; Wed, 13 Sep 2023 21:38:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgXYw-00060s-Uk; Wed, 13 Sep 2023 21:38:18 +0000
Received: by outflank-mailman (input) for mailman id 601666;
 Wed, 13 Sep 2023 21:38:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=OkSH=E5=knorrie.org=hans@srs-se1.protection.inumbo.net>)
 id 1qgXYv-00060m-FQ
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 21:38:17 +0000
Received: from syrinx.knorrie.org (syrinx.knorrie.org [2001:888:2177::4d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d7601f0f-527d-11ee-8787-cb3800f73035;
 Wed, 13 Sep 2023 23:38:16 +0200 (CEST)
Received: from [IPV6:4000:0:fb:a::15]
 (2a02-a213-2bc5-6a80-0000-0000-0000-0004.cable.dynamic.v6.ziggo.nl
 [IPv6:2a02:a213:2bc5:6a80::4])
 (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by syrinx.knorrie.org (Postfix) with ESMTPSA id DB9A6615FAF14;
 Wed, 13 Sep 2023 23:38:12 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d7601f0f-527d-11ee-8787-cb3800f73035
Message-ID: <676789d2-a054-2b44-69be-c458ef236d50@knorrie.org>
Date: Wed, 13 Sep 2023 23:38:12 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Content-Language: en-US
To: =?UTF-8?Q?Radoslav_Bod=c3=b3?= <radoslav.bodo@igalileo.cz>,
 1051862@bugs.debian.org, Juergen Gross <jgross@suse.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>
References: <abd6fb7e-bd03-7bf0-b43f-5e4914f6aadf@igalileo.cz>
From: Hans van Kranenburg <hans@knorrie.org>
Cc: xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: (Debian) Bug#1051862: server flooded with xen_mc_flush warnings
 with xen 4.17 + linux 6.1
In-Reply-To: <abd6fb7e-bd03-7bf0-b43f-5e4914f6aadf@igalileo.cz>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Hi Radoslav,

Thanks for your report...

Hi Juergen, Boris and xen-devel,

At Debian, we got the report below. (Also at
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1051862)

This hardware, with only Xen and Dom0 running is hitting the failed
multicall warning and logging in arch/x86/xen/multicalls.c. Can you help
advise what we can do to further debug this issue?

Since this looks like pretty low level Xen/hardware stuff, I'd rather
ask upstream for directions first. If needed the Debian Xen Team can
assist the end user with the debugging process.

Thanks,

More reply inline...

On 9/13/23 20:12, Radoslav Bodó wrote:
> Package: xen-system-amd64
> Version: 4.17.1+2-gb773c48e36-1
> Severity: important
> 
> Hello,
> 
> after upgrade from Bullseye to Bookworm one of our dom0's
> became unusable due to logs/system being continuously flooded
> with warnings from arch/x86/xen/multicalls.c:102 xen_mc_flush, and the 
> system become unusable.
> 
> The issue starts at some point where system services starts to come up, 
> but nothing very special is on that box (dom0, nftables, fail2ban, 
> prometheus-node-exporter, 3x domU). We have tried to disable all domU's 
> and fail2ban as the name of the process would suggest, but issue is 
> still present. We have tried also some other elaboration but none of 
> them have helped so far:
> 
> * the issue arise when xen 4.17 + linux >= 6.1 is booted
> * xen + bookworm-backports linux-image-6.4.0-0.deb12.2-amd64 have same isuue
> * without xen hypervisor, linux 6.1 runs just fine
> * systemrescue cd boot and xfs_repair rootfs did not helped
> * memtest seem to be fine running for hours

Thanks for already trying out all these combinations.

> As a workaround we have booted xen 4.17 + linux 5.10.0-25 (5.10.191-1)
> and the system is running fine as for last few months.
> 
> Hardware:
> * Dell PowerEdge R750xs
> * 2x Intel Xeon Silver 4310 2.1G
> * 256GB RAM
> * PERC H755 Adapter, 12x 18TB HDDs

I have a few quick additional questions already:

1. For clarification.. From your text, I understand that only this one
single server is showing the problem after the Debian version upgrade.
Does this mean that this is the only server you have running with
exactly this combination of hardware (and BIOS version, CPU microcode
etc etc)? Or, is there another one with same hardware which does not
show the problem?

2. Can you reply with the output of 'xl dmesg' when the problem happens?
Or, if the system gets unusable too quick, do you have a serial console
connection to capture the output?

3. To confirm... I understand that there are many of these messages.
Since you pasted only one, does that mean that all of them look exactly
the same, with "1 of 1 multicall(s) failed: cpu 10" "call  1: op=1
arg=[ffff8888a1a9eb10] result=-22"? Or are there variations? If so, can
you reply with a few different ones?

Since this very much looks like an issue of Xen related code where the
Xen hypervisor, dom0 kernel and hardware has to work together correctly,
(and not a Debian packaging problem) I'm already asking upstream for
advice about what we should/could do next, instead of trying to make a
guess myself.

Thanks,
Hans

> Any help, advice or bug confirmation would be appreciated
> 
> Best regards
> bodik
> 
> 
> (log also in attachment)
> 
> ```
> kernel: [   99.762402] WARNING: CPU: 10 PID: 1301 at 
> arch/x86/xen/multicalls.c:102 xen_mc_flush+0x196/0x220
> kernel: [   99.762598] Modules linked in: nvme_fabrics nvme_core bridge 
> xen_acpi_processor xen_gntdev stp llc xen_evtchn xenfs xen_privcmd 
> binfmt_misc intel_rapl_msr ext4 intel_rapl_common crc16 
> intel_uncore_frequency_common mbcache ipmi_ssif jbd2 nfit libnvdimm 
> ghash_clmulni_intel sha512_ssse3 sha512_generic aesni_intel acpi_ipmi 
> nft_ct crypto_simd cryptd mei_me mgag200 ipmi_si iTCO_wdt intel_pmc_bxt 
> ipmi_devintf drm_shmem_helper dell_smbios nft_masq iTCO_vendor_support 
> isst_if_mbox_pci drm_kms_helper isst_if_mmio dcdbas mei intel_vsec 
> isst_if_common dell_wmi_descriptor wmi_bmof watchdog pcspkr 
> intel_pch_thermal ipmi_msghandler i2c_algo_bit acpi_power_meter button 
> nft_nat joydev evdev sg nft_chain_nat nf_nat nf_conntrack nf_defrag_ipv6 
> nf_defrag_ipv4 nf_tables nfnetlink drm fuse loop efi_pstore configfs 
> ip_tables x_tables autofs4 xfs libcrc32c crc32c_generic hid_generic 
> usbhid hid dm_mod sd_mod t10_pi crc64_rocksoft crc64 crc_t10dif 
> crct10dif_generic ahci libahci xhci_pci libata xhci_hcd
> kernel: [   99.762633]  megaraid_sas tg3 crct10dif_pclmul 
> crct10dif_common crc32_pclmul crc32c_intel bnxt_en usbcore scsi_mod 
> i2c_i801 libphy i2c_smbus usb_common scsi_common wmi
> kernel: [   99.764765] CPU: 10 PID: 1301 Comm: python3 Tainted: G 
> W          6.1.0-12-amd64 #1  Debian 6.1.52-1
> kernel: [   99.764989] Hardware name: Dell Inc. PowerEdge R750xs/0441XG, 
> BIOS 1.8.2 09/14/2022
> kernel: [   99.765214] RIP: e030:xen_mc_flush+0x196/0x220
> kernel: [   99.765436] Code: e2 06 48 01 da 85 c0 0f 84 23 ff ff ff 48 
> 8b 43 18 48 83 c3 40 48 c1 e8 3f 41 01 c5 48 39 d3 75 ec 45 85 ed 0f 84 
> 06 ff ff ff <0f> 0b e8 e3 6e a0 00 41 8b 14 24 44 89 ee 48 c7 c7 c0 ea 
> 33 82 89
> kernel: [   99.765910] RSP: e02b:ffffc900412ffc60 EFLAGS: 00010082
> kernel: [   99.766152] RAX: ffffffffffffffea RBX: ffff8888a1a9e300 RCX: 
> 0000000000000000
> kernel: [   99.766403] RDX: 0000000000000000 RSI: 0000000000000001 RDI: 
> ffff8888a1a9eb10
> kernel: [   99.766653] RBP: 0000000080000002 R08: 0000000000000000 R09: 
> 0000000000744f8b
> kernel: [   99.766902] R10: 0000000000007ff0 R11: 0000000000000018 R12: 
> ffff8888a1a9e300
> kernel: [   99.767153] R13: 0000000000000001 R14: ffffea0005130000 R15: 
> ffffea0005130000
> kernel: [   99.767409] FS:  00007f59b5ba62c0(0000) 
> GS:ffff8888a1a80000(0000) knlGS:0000000000000000
> kernel: [   99.767664] CS:  10000e030 DS: 0000 ES: 0000 CR0: 
> 0000000080050033
> kernel: [   99.767918] CR2: 00007f59b2200000 CR3: 0000000141bd0000 CR4: 
> 0000000000050660
> kernel: [   99.768181] Call Trace:
> kernel: [   99.768436]  <TASK>
> kernel: [   99.768691]  ? __warn+0x7d/0xc0
> kernel: [   99.768947]  ? xen_mc_flush+0x196/0x220
> kernel: [   99.769204]  ? report_bug+0xe6/0x170
> kernel: [   99.769460]  ? handle_bug+0x41/0x70
> kernel: [   99.769713]  ? exc_invalid_op+0x13/0x60
> kernel: [   99.769967]  ? asm_exc_invalid_op+0x16/0x20
> kernel: [   99.770223]  ? xen_mc_flush+0x196/0x220
> kernel: [   99.770478]  xen_mc_issue+0x6d/0x70
> kernel: [   99.770726]  xen_set_pmd_hyper+0x54/0x90
> kernel: [   99.770965]  do_set_pmd+0x188/0x2a0
> kernel: [   99.771200]  filemap_map_pages+0x1a9/0x6e0
> kernel: [   99.771434]  xfs_filemap_map_pages+0x41/0x60 [xfs]
> kernel: [   99.771714]  do_fault+0x1a4/0x410
> kernel: [   99.771947]  __handle_mm_fault+0x660/0xfa0
> kernel: [   99.772182]  handle_mm_fault+0xdb/0x2d0
> kernel: [   99.772414]  do_user_addr_fault+0x19c/0x570
> kernel: [   99.772643]  exc_page_fault+0x70/0x170
> kernel: [   99.772873]  asm_exc_page_fault+0x22/0x30
> kernel: [   99.773102] RIP: 0033:0x7f59b502cbe2
> kernel: [   99.773329] Code: 4d 8d 87 80 01 00 00 48 89 d9 45 31 c9 48 
> 85 ff 74 5c 66 0f 1f 44 00 00 49 8d b0 80 fe ff ff 31 d2 41 0f 18 08 f3 
> 0f 6f 04 11 <f3> 0f 6f 1c 16 f3 0f 6f 24 16 66 0f ef c3 66 0f 70 c8 31 
> 66 0f f4
> kernel: [   99.773806] RSP: 002b:00007ffc69923f70 EFLAGS: 00010246
> kernel: [   99.774040] RAX: 00007ffc69923fa0 RBX: 00007f59b5038000 RCX: 
> 00007f59b5038000
> kernel: [   99.774276] RDX: 0000000000000000 RSI: 00007f59b21ffffa RDI: 
> 0000000000000010
> kernel: [   99.774504] RBP: 00000000025b8f40 R08: 00007f59b220017a R09: 
> 0000000000000000
> kernel: [   99.774727] R10: 0000000000077eca R11: 0000000000000400 R12: 
> 00007f59b1a002fa
> kernel: [   99.774947] R13: 00007ffc69923fe0 R14: 00007f59b5038080 R15: 
> 00007f59b21ffffa
> kernel: [   99.775161]  </TASK>
> kernel: [   99.775365] ---[ end trace 0000000000000000 ]---
> kernel: [   99.775567] 1 of 1 multicall(s) failed: cpu 10
> kernel: [   99.775763]   call  1: op=1 arg=[ffff8888a1a9eb10] result=-22
> ```




From xen-devel-bounces@lists.xenproject.org Wed Sep 13 22:28:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 22:28:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601674.937766 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgYLW-0001SJ-CH; Wed, 13 Sep 2023 22:28:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601674.937766; Wed, 13 Sep 2023 22:28:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgYLW-0001SC-9J; Wed, 13 Sep 2023 22:28:30 +0000
Received: by outflank-mailman (input) for mailman id 601674;
 Wed, 13 Sep 2023 22:28:29 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgYLV-0001S2-0T; Wed, 13 Sep 2023 22:28:29 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgYLU-00030D-Tg; Wed, 13 Sep 2023 22:28:28 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgYLU-00042J-Ax; Wed, 13 Sep 2023 22:28:28 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgYLU-00080y-AS; Wed, 13 Sep 2023 22:28:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=P1ByopKt03o+7D47FExjBJqIpe3jfVYzP6LC4EtvYjE=; b=aNCBST6+kbS63DJwGQLjgriY6f
	0+9qbnYXHrDJjMHaIsALmnR+w4zFGlpu/9fJyd779NeAHpxrbfsZPojymGxDQzxIJNzB4eOuN0krW
	mDCr/RPvptDLaAbNm88DzHh9jsgf0WK5PPW5ll64fG9XbULaWYS3NBWJSI9vP90GBVBc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182992-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182992: regressions - trouble: blocked/broken/fail/pass
X-Osstest-Failures:
    linux-linus:build-i386:<job status>:broken:regression
    linux-linus:build-i386-pvops:<job status>:broken:regression
    linux-linus:build-i386-xsm:<job status>:broken:regression
    linux-linus:test-amd64-amd64-xl-credit1:<job status>:broken:regression
    linux-linus:build-i386:host-install(4):broken:regression
    linux-linus:test-amd64-amd64-xl-credit1:host-install(5):broken:regression
    linux-linus:build-i386-pvops:host-install(4):broken:regression
    linux-linus:build-i386-xsm:host-install(4):broken:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:<job status>:broken:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:<job status>:broken:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:host-install(5):broken:heisenbug
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:host-install(5):broken:heisenbug
    linux-linus:test-armhf-armhf-xl-credit2:host-ping-check-xen:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:build-i386-libvirt:build-check(1):blocked:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=3669558bdf354cd352be955ef2764cde6a9bf5ec
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 13 Sep 2023 22:28:28 +0000

flight 182992 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182992/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-i386                      <job status>                 broken
 build-i386-pvops                <job status>                 broken
 build-i386-xsm                  <job status>                 broken
 test-amd64-amd64-xl-credit1     <job status>                 broken
 build-i386                    4 host-install(4)        broken REGR. vs. 182531
 test-amd64-amd64-xl-credit1   5 host-install(5)        broken REGR. vs. 182531
 build-i386-pvops              4 host-install(4)        broken REGR. vs. 182531
 build-i386-xsm                4 host-install(4)        broken REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm    <job status>  broken in 182983
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm <job status> broken in 182983
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 5 host-install(5) broken in 182983 pass in 182992
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 5 host-install(5) broken in 182983 pass in 182992
 test-armhf-armhf-xl-credit2  10 host-ping-check-xen        fail pass in 182983

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 build-i386-libvirt            1 build-check(1)               blocked  n/a
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 182983 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 182983 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                3669558bdf354cd352be955ef2764cde6a9bf5ec
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   16 days
Failing since        182544  2023-08-28 20:42:13 Z   16 days   29 attempts
Testing same since   182983  2023-09-12 20:42:03 Z    1 days    2 attempts

------------------------------------------------------------
2278 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               broken  
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   broken  
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           blocked 
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             broken  
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  broken  
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary

broken-job build-i386 broken
broken-job build-i386-pvops broken
broken-job build-i386-xsm broken
broken-job test-amd64-amd64-xl-credit1 broken
broken-step build-i386 host-install(4)
broken-step test-amd64-amd64-xl-credit1 host-install(5)
broken-step build-i386-pvops host-install(4)
broken-step build-i386-xsm host-install(4)
broken-job test-amd64-amd64-xl-qemut-debianhvm-i386-xsm broken
broken-job test-amd64-amd64-xl-credit1 broken
broken-job test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm broken

Not pushing.

(No revision log; it would be 276270 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 23:06:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 23:06:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601682.937775 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgYvd-0008BA-6S; Wed, 13 Sep 2023 23:05:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601682.937775; Wed, 13 Sep 2023 23:05:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgYvd-0008B3-3b; Wed, 13 Sep 2023 23:05:49 +0000
Received: by outflank-mailman (input) for mailman id 601682;
 Wed, 13 Sep 2023 23:05:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgYvc-0008Ax-Bw
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 23:05:48 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 11574924-528a-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 01:05:46 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 75218CE25B1;
 Wed, 13 Sep 2023 23:05:41 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1C651C433C8;
 Wed, 13 Sep 2023 23:05:39 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 11574924-528a-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694646339;
	bh=wgMJFl0NFvdi1JwDdmJ8FjyeeydzTif/nheyHdpZyqw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=IZHbhJHdUQ+KgXQh3YfamYhQ738SUakRFsH9nPdNPif2mnrzKPcrgIF7SHLIyLuOk
	 z4cawox4ZKnu4LMRS4ukCuJ6T2MgzZl85I1y+lizGgtHxQoRqYSIkZZaqF9OY0g2y/
	 jfwG+y1ly2GBSM5kXiDnaKF+zsXRopRqpP80920kCHPaVZ7A3rlCMCSoKCHoT4ga6s
	 2nsAIis+jpuC8ypaEzvh5iY5t7JYPS3ztCJ5PTr3DtyZnO1ByvtXcAehOp2ePWuwEV
	 l+sLTd+xpO586cEdbB+I+yzWFkHf5CsYmN8OLiXXvV6s2YZWpV83FmZLVjsyrXqpSA
	 kZrqWrfjs15ow==
Date: Wed, 13 Sep 2023 16:05:37 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
cc: xen-devel@lists.xenproject.org, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Michal Orzel <michal.orzel@amd.com>
Subject: Re: [ImageBuilder PATCH v3] uboot-script-gen: use size from arm64
 Image header
In-Reply-To: <20230913141311.13714-1-stewart.hildebrand@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309131605280.2295162@ubuntu-linux-20-04-desktop>
References: <20230913141311.13714-1-stewart.hildebrand@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 13 Sep 2023, Stewart Hildebrand wrote:
> There is a corner case where the filesizes of the xen and Linux kernel images
> are not sufficient. These binaries likely contain NOLOAD sections (e.g. bss),
> which are not accounted in the filesize.
> 
> Check for the presence of an arm64 kernel image header, and get the effective
> image size from the header. Use the effective image size for calculating the
> next load address and for populating the size in the /chosen/dom*/reg property.
> 
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> Reviewed-by: Michal Orzel <michal.orzel@amd.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> v2->v3:
> * simplify awk parsing
> * add R-b
> 
> v1->v2:
> * add in-code comments
> * use variables more
> ---
>  scripts/uboot-script-gen | 17 ++++++++++++++++-
>  1 file changed, 16 insertions(+), 1 deletion(-)
> 
> diff --git a/scripts/uboot-script-gen b/scripts/uboot-script-gen
> index 9656a458ac00..b284887f065e 100755
> --- a/scripts/uboot-script-gen
> +++ b/scripts/uboot-script-gen
> @@ -2,7 +2,7 @@
>  
>  offset=$((2*1024*1024))
>  filesize=0
> -prog_req=(mkimage file fdtput mktemp awk)
> +prog_req=(mkimage file fdtput mktemp awk od)
>  
>  function cleanup_and_return_err()
>  {
> @@ -435,6 +435,21 @@ function add_size()
>  {
>      local filename=$1
>      local size=`stat -L --printf="%s" $filename`
> +    # Read arm64 header magic (https://www.kernel.org/doc/Documentation/arm64/booting.txt)
> +    local arm64_header_magic=$(od -j 56 -N 4 -t x4 ${filename} | awk 'NR==1 {print $2}')
> +
> +    # Check for valid arm64 header magic value 0x644d5241
> +    if [ "${arm64_header_magic}" = "644d5241" ]
> +    then
> +        # Read effective size, which may be larger than the filesize due to noload sections, e.g. bss
> +        local arm64_header_size=$(od -j 16 -N 8 -t u8 ${filename} | awk 'NR==1 {print $2}')
> +
> +        if [ "${arm64_header_size}" -gt "${size}" ]
> +        then
> +            size=${arm64_header_size}
> +        fi
> +    fi
> +
>      memaddr=$(( $memaddr + $size + $offset - 1))
>      memaddr=$(( $memaddr & ~($offset - 1) ))
>      memaddr=`printf "0x%X\n" $memaddr`
> -- 
> 2.42.0
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 23:07:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 23:07:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601687.937786 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgYwx-0000tD-GU; Wed, 13 Sep 2023 23:07:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601687.937786; Wed, 13 Sep 2023 23:07:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgYwx-0000t6-D9; Wed, 13 Sep 2023 23:07:11 +0000
Received: by outflank-mailman (input) for mailman id 601687;
 Wed, 13 Sep 2023 23:07:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgYwv-0000sx-Vv
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 23:07:09 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 429cdaef-528a-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 01:07:09 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 695A7CE25B1;
 Wed, 13 Sep 2023 23:07:06 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id F26D2C433C7;
 Wed, 13 Sep 2023 23:07:03 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 429cdaef-528a-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694646424;
	bh=ff4Xglxtnbq7pMTBdXo/zVGkPU3zPuCRWBB6q8+lHzQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Ro3uh6ilWqg62WQdB59QKFPdBxd9k5F9ZvjGq9dmM++9OsZJBn8IDIV/KSIzTNYWt
	 jo0VWNH50+2+vTCvsrxad6rGpp+BDrZGVrr2XhLHpL4/5/D7NAd+vsypFnvV1KyOzQ
	 /OPFMGnuApBQqNp/UNo2U1MloPOzrE/7smTfoQWaFP6m49jE35lust8QTw2wIvIgnr
	 kTN3cVHzDRLzQwBPsMMBc3gTPAOaQ0e8wPtrGvRUzuWMgVBkXqoajEGd4CfZepBISJ
	 PTzDDWYctZMwpG5vY7YXYw+QbHmMH1t7//Gwm03ZbWj2ES5HqFmebnOpdTwXVzqI0x
	 /2JS6TWueCfbg==
Date: Wed, 13 Sep 2023 16:07:01 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Juergen Gross <jgross@suse.com>
cc: linux-kernel@vger.kernel.org, Stefano Stabellini <sstabellini@kernel.org>, 
    Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
    xen-devel@lists.xenproject.org
Subject: Re: [PATCH 1/3] arm/xen: remove lazy mode related definitions
In-Reply-To: <20230913113828.18421-2-jgross@suse.com>
Message-ID: <alpine.DEB.2.22.394.2309131606560.2295162@ubuntu-linux-20-04-desktop>
References: <20230913113828.18421-1-jgross@suse.com> <20230913113828.18421-2-jgross@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 13 Sep 2023, Juergen Gross wrote:
> include/xen/arm/hypervisor.h contains definitions related to paravirt
> lazy mode, which are used nowhere in the code.
> 
> All paravirt lazy mode related users are in x86 code, so remove the
> definitions on Arm side.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>  include/xen/arm/hypervisor.h | 12 ------------
>  1 file changed, 12 deletions(-)
> 
> diff --git a/include/xen/arm/hypervisor.h b/include/xen/arm/hypervisor.h
> index 43ef24dd030e..9995695204f5 100644
> --- a/include/xen/arm/hypervisor.h
> +++ b/include/xen/arm/hypervisor.h
> @@ -7,18 +7,6 @@
>  extern struct shared_info *HYPERVISOR_shared_info;
>  extern struct start_info *xen_start_info;
>  
> -/* Lazy mode for batching updates / context switch */
> -enum paravirt_lazy_mode {
> -	PARAVIRT_LAZY_NONE,
> -	PARAVIRT_LAZY_MMU,
> -	PARAVIRT_LAZY_CPU,
> -};
> -
> -static inline enum paravirt_lazy_mode paravirt_get_lazy_mode(void)
> -{
> -	return PARAVIRT_LAZY_NONE;
> -}
> -
>  #ifdef CONFIG_XEN
>  void __init xen_early_init(void);
>  #else
> -- 
> 2.35.3
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 23:12:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 23:12:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601694.937795 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgZ25-0002ZO-5a; Wed, 13 Sep 2023 23:12:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601694.937795; Wed, 13 Sep 2023 23:12:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgZ25-0002ZH-2l; Wed, 13 Sep 2023 23:12:29 +0000
Received: by outflank-mailman (input) for mailman id 601694;
 Wed, 13 Sep 2023 23:12:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgZ23-0002ZB-DD
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 23:12:27 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ff8cc2b9-528a-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 01:12:25 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id BA6E961B91;
 Wed, 13 Sep 2023 23:12:23 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id DD46FC433C7;
 Wed, 13 Sep 2023 23:12:21 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ff8cc2b9-528a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694646743;
	bh=hftAi5j6Ryc0LyGZl+orbq3UplZjPvr5XIhy54P/j0Y=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=EZEoZor2g0XrFWSYcauqc5VuCvRQgjqvYkhv57oTAR1bmCi6f0LaWwp0ihFwdjl6D
	 WNzEdtJ4HhEM+ZR5qo/08kImBjm91Fr+4w3R9czxAkbOs/qJA6xRzYkOpCcykU/nDY
	 7XJcC1foQ9nVjm3is/1b6G7tKt3ekg2JkVsYhnqisbnrhWbHBiyv8ebQ0vAyWYpk+/
	 vW2z/MFI7CBUvJEMX1VEBUMsLRNQx5CC8zgC0iUkklfBvDH+ZvcqIpszgEc3D46J2m
	 18kUh/ChxD4MzzLwh01cDWyeBS5zifkgBUBxXherA8gJ4mN7ViPD5mi77Y555496AE
	 lWkiqlHVrPiQQ==
Date: Wed, 13 Sep 2023 16:12:19 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Federico Serafini <federico.serafini@bugseng.com>, 
    xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH] xen/libelf: address violations of MISRA C:2012 RUles
 8.2 and 8.3
In-Reply-To: <78e45fa1-7273-45f4-bac5-45c4e0772a0d@xen.org>
Message-ID: <alpine.DEB.2.22.394.2309131611490.2295162@ubuntu-linux-20-04-desktop>
References: <e4d28b9b78e84260feea6bdbcb4ecdd815af5db3.1694591513.git.federico.serafini@bugseng.com> <9acf798a-9d08-4940-d8e0-20b423294d2e@bugseng.com> <78e45fa1-7273-45f4-bac5-45c4e0772a0d@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 13 Sep 2023, Julien Grall wrote:
> On 13/09/2023 13:41, Federico Serafini wrote:
> > On 13/09/23 14:29, Federico Serafini wrote:
> > > Add missing parameter names and make function declarations and
> > > definitions consistent. No functional change.
> > > 
> > > Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> > 
> > There is a typo in the patch title (RUles), please correct on commit.
> 
> That can be done so long there are no other comments.
> 
> > 
> > Reviewed-by: Federico Serafini <federico.serafini@bugseng.com>
> 
> I am bit confused. Why do you provide a reviewed-by on a patch you wrote?

Maybe a mistake?

In any case, I reviewed the patch and everything checks out

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 23:16:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 23:16:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601699.937806 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgZ60-0003NV-MX; Wed, 13 Sep 2023 23:16:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601699.937806; Wed, 13 Sep 2023 23:16:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgZ60-0003NO-IC; Wed, 13 Sep 2023 23:16:32 +0000
Received: by outflank-mailman (input) for mailman id 601699;
 Wed, 13 Sep 2023 23:16:31 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgZ5z-0003M6-SO
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 23:16:31 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 90fb6561-528b-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 01:16:29 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 78306CE1CDE;
 Wed, 13 Sep 2023 23:16:23 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5FE96C433C8;
 Wed, 13 Sep 2023 23:16:20 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 90fb6561-528b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694646981;
	bh=NFPq2l4rmz9ci/728VrxanMSNdWGNt1ro5YfrSePgkI=;
	h=From:To:Cc:Subject:Date:From;
	b=bSsMdAEk5kp4D+Qg0hGCT/KWDKLLd3L+r0GODf8CepID1dWou6OYpuV6BmkxzTVWA
	 traJkWZNzSqN+F51DUWKBd0UY87oGEQZHtlD+c04qfhhKCNdpIYBHqoaOZAjEk+cly
	 GGL/jb+gZ3bDyX6fMxXs46jG409KKEJzcMsuyciF4sKiVSQQwUtkMbMXOH/AW71sel
	 XGDinJOfjTz0SO2/qw+5pryg0KuIxvbsppWfwSSN8iujgYlOrcB3YYvp8N/E7Og/GE
	 GaTmaelqC7Q75K2QxunmDDbF3sE4a1w6AQY0F1jNsLXg7anluCkf4ecgPW48r1gD/c
	 0f177orRasgpQ==
From: Stefano Stabellini <sstabellini@kernel.org>
To: xen-devel@lists.xenproject.org
Cc: jbeulich@suse.com,
	andrew.cooper3@citrix.com,
	roger.pau@citrix.com,
	julien@xen.org,
	sstabellini@kernel.org,
	george.dunlap@citrix.com,
	bertrand.marquis@arm.com,
	roberto.bagnara@bugseng.com,
	nicola.vetrini@bugseng.com,
	Stefano Stabellini <stefano.stabellini@amd.com>
Subject: [PATCH] docs/misra: accept 11.7 and 11.8
Date: Wed, 13 Sep 2023 16:16:17 -0700
Message-Id: <20230913231617.2638735-1-sstabellini@kernel.org>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Stefano Stabellini <stefano.stabellini@amd.com>

As per the last MISRA C group discussion, let's accept 11.7 (for which
we have no violations) and 11.8.

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
---
 docs/misra/rules.rst | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index 34916e266a..8e7d17d242 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -363,6 +363,16 @@ maintainers if you want to suggest a change.
 
        CFLAGS="-Warith-conversion -Wno-error=arith-conversion" make -C xen
 
+   * - `Rule 11.7 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_11_07.c>`_
+     - Required
+     - A cast shall not be performed between pointer to object and a noninteger arithmetic type
+     -
+
+   * - `Rule 11.8 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_11_08.c>`_
+     - Required
+     - A cast shall not remove any const or volatile qualification from the type pointed to by a pointer
+     -
+
    * - `Rule 12.5 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_12_05.c>`_
      - Mandatory
      - The sizeof operator shall not have an operand which is a function
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 13 23:19:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 23:19:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601704.937815 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgZ8O-0004g4-0r; Wed, 13 Sep 2023 23:19:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601704.937815; Wed, 13 Sep 2023 23:18:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgZ8N-0004fx-Ua; Wed, 13 Sep 2023 23:18:59 +0000
Received: by outflank-mailman (input) for mailman id 601704;
 Wed, 13 Sep 2023 23:18:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VxlT=E5=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qgZ8M-0004fr-P7
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 23:18:58 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org
 [2604:1380:40e1:4800::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e91d9b9c-528b-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 01:18:57 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 8189BCE2555;
 Wed, 13 Sep 2023 23:18:55 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A9EBCC433C8;
 Wed, 13 Sep 2023 23:18:52 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e91d9b9c-528b-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694647133;
	bh=d6EB62DFl1E5nwSCNlnNnmsPdQLUskifviyIKLGGnfQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=IzshTG4d7sofsR8Qgw2QQkp/+M0o3bYwAX3Sui+WvrHiCDzi0tkBVnDh9VwrmKI6U
	 ViC/5Pki+lBK+Mk6znMxH7XTeFl4WUo5cwy0kCA+7T+IGuhLe0x1HKbZTyu640F+on
	 ySWTZ4T3K0jIoFPp7KwqYx2jr/WNguoP/7/oLIJUpovJHUQZm1fi0Uo2VE+y8dWn1/
	 m8+SDR8kShcJV595x6dp00uwDgmuFXU2qwEUyXPHf05cKZkvSENOO5brZApu271u6h
	 fITgN094CLQH0rgPe/9Swr4v6GB1Ho4E6i4L2Av/uDJycC9o8Xvd1AC0lrfQzxyF8x
	 6bYGGqogW4KCQ==
Date: Wed, 13 Sep 2023 16:18:50 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: George Dunlap <george.dunlap@cloud.com>
cc: Thomas Gleixner <tglx@linutronix.de>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Jan Beulich <jbeulich@suse.com>, 
    Simon Gaiser <simon@invisiblethingslab.com>, 
    "committers@xenproject.org" <committers@xenproject.org>, 
    =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, 
    xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
In-Reply-To: <CA+zSX=awNgMH1+5s9u9=Ai9ior4bt6iDvsoMWQrbx1szDxkLsQ@mail.gmail.com>
Message-ID: <alpine.DEB.2.22.394.2309131616450.2295162@ubuntu-linux-20-04-desktop>
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com> <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com> <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop> <27ae69b6-bc57-dee3-2528-8311a38decda@citrix.com>
 <874jjz3juk.ffs@tglx> <CA+zSX=awNgMH1+5s9u9=Ai9ior4bt6iDvsoMWQrbx1szDxkLsQ@mail.gmail.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-887375711-1694647133=:2295162"

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-887375711-1694647133=:2295162
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Wed, 13 Sep 2023, George Dunlap wrote:
> On Tue, Sep 12, 2023 at 8:57 AM Thomas Gleixner <tglx@linutronix.de> wrote:
> >
> > On Mon, Sep 11 2023 at 19:24, Andrew Cooper wrote:
> > > Furthermore, cursory testing that Thomas did for the Linux topology work
> > > demonstrates that it is broken anyway for reasons unrelated to ACPI parsing.
> > >
> > > Even furthermore, it's an area of the Xen / dom0 boundary which is
> > > fundamentally broken for non-PV cases, and undocumented for the PV case,
> > > hence why it's broken in Linux.
> > >
> > > Physical CPU Hotplug does not pass the bar for being anything more than
> > > experimental.  It's absolutely not tech-preview level because the only
> > > demo it has had in an environment (admittedly virtual) which does
> > > implement the spec in a usable way demonstrates that it doesn't function.
> > >
> > > The fact no-one has noticed until now shows that the feature isn't used,
> > > which comes back around full circle to the fact that Intel never made it
> > > work and never shipped it.
> >
> > OTOH it _is_ used in virtualization. KVM supports it and it just
> > works. That's how I found out that XEN explodes in colourful ways :)
> 
> It should be pointed out that there's currently a start-up selling a
> product that specifically runs Xen under cloud providers -- Exostellar
> (was Exotanium) [1].  If cloud providers do use ACPI hotplug to allow
> on-the-fly adjustments of the number of vcpus, Exostellar will
> probably want support at some point.  (Perhaps it would be good to
> rope them into testing / maintaining it.)

Supporting CPU hotplug in a nested virtualization setting is a different
proposition compared to supporting Physical CPU Hotplug. Typically
virtual firmware (hypervisor-provided firmware) has less unexpected
behaviors compared to baremetal firmware.

Could you make the distinction in SUPPORT.md?
--8323329-887375711-1694647133=:2295162--


From xen-devel-bounces@lists.xenproject.org Wed Sep 13 23:54:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 13 Sep 2023 23:54:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601712.937826 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgZgV-0003Jj-Ch; Wed, 13 Sep 2023 23:54:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601712.937826; Wed, 13 Sep 2023 23:54:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgZgV-0003Jc-9d; Wed, 13 Sep 2023 23:54:15 +0000
Received: by outflank-mailman (input) for mailman id 601712;
 Wed, 13 Sep 2023 23:54:14 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=A9Ma=E5=epam.com=prvs=3620db259f=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qgZgT-0003JU-Q8
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 23:54:14 +0000
Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com
 [148.163.133.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d556e79a-5290-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 01:54:11 +0200 (CEST)
Received: from pps.filterd (m0174678.ppops.net [127.0.0.1])
 by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38DNlq5F003360; Wed, 13 Sep 2023 23:54:02 GMT
Received: from eur04-db3-obe.outbound.protection.outlook.com
 (mail-db3eur04lp2054.outbound.protection.outlook.com [104.47.12.54])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3t3q2br08w-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Wed, 13 Sep 2023 23:54:01 +0000
Received: from AM0PR03MB3699.eurprd03.prod.outlook.com (2603:10a6:208:4b::31)
 by DB3PR0302MB9087.eurprd03.prod.outlook.com (2603:10a6:10:42b::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Wed, 13 Sep
 2023 23:53:57 +0000
Received: from AM0PR03MB3699.eurprd03.prod.outlook.com
 ([fe80::3400:7d:60cf:5bb9]) by AM0PR03MB3699.eurprd03.prod.outlook.com
 ([fe80::3400:7d:60cf:5bb9%4]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 23:53:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d556e79a-5290-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YppZ0symDO/kQKM3NE6dNCDhZlhAw6lLJvaZQtadlEtNwrJIxnTUrxyWfKuhlLFOPcBt/WNb+m8h68gbEQrJlXhL/mvLVf5vIiYVq/47qBFJy8kkWXd/kY0lwDsuanqnOiMWMeIUDwRuubrUySTmwjsYxQrt0Dy8xDoSA/+Sr+XDfsz8L6zikbPk4SGFtfXrNp7aWm5nHGUizQ4H9j18yK0D4mGviT63DKnMumwxVsDlD6rRJA9zJWt4teKWJT9SgDev2foOexzy9MgNwhVQs6I7tvfkqwfUBLw9H4t59xlCoqd3futiTSgMO5lV2VxqeNTYhMyJrsCo7GyLmEJelw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=R8jphZXcJoUURiNVR/XYzjWprHsv9k8YGB7Cs5IEUP4=;
 b=l5LGtgXaVj1n6G+PvJ5FmPd4zWUiSPNebvHKtPNdxsULPyXvZ9oZt5bO+yVoFjpGTa2HD/D+X2iBuRYz/P4oNtjYdqMGFiaWdyG7hcDLgBlhGO6gNtn5pFFQbtpcf/i103NlsKPHk9J8FSPkmoNmnTm5xnpFjtQFSKo+L/j7/Kkld1K8dNxRoiLc9qv++K/CclsIm8FkmEhhNXMJoxBpqgGAQserPMLG1/uBYwmxWDiKxd4/erZel19nE6mzfcFk8YC2TlgMmbHOOar44UEf/23W2+lRTEsiRwAad6qobcjgXov/l0/QmbARv0SAwFSmz343CfpVhHBvKmQ8H4GVoA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=R8jphZXcJoUURiNVR/XYzjWprHsv9k8YGB7Cs5IEUP4=;
 b=XjlU6zRyLkbvXywfNOyJ9bN0HVlK3SgTDgq0NNFbBz4vQVkuWe71TrbFTwyCtRmazpb/pkreZLMEdFSdWwUP/+guIKIc77V5O1hodelyndn3V/gPVa6/XFZkTSMkxgRwG6RuMJLXBYGPCNxVOjd+l6qtCrqh7tuScWMzzaWhL/98ZGw8AS8Zf9GSlBg2uoNp44oAGzjoUVpVlZT7yf1DQ1xDAnaKJdAixlxBpEiU//ZUUa7PTKleIxs+/tukxPqWdg3/lNdeXyKsOBTDkTEAOsFgVlP2X3IKCzcyBfNiiLV0fBAWdZ1yuCC6zkw0VZ+Lam/0S0HH3tOBQFb/JAncCw==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        Andrew Cooper
	<andrew.cooper3@citrix.com>,
        George Dunlap <george.dunlap@citrix.com>,
        Julien
 Grall <julien@xen.org>,
        Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>,
        Paul Durrant <paul@xen.org>,
        =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>,
        "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v9 04/16] vpci: add hooks for PCI device assign/de-assign
Thread-Topic: [PATCH v9 04/16] vpci: add hooks for PCI device assign/de-assign
Thread-Index: AQHZ2s9Kc9kNunOnfUurMYypVVbdQ7AXA+KAgADqFoCAAGrqgIABKtcA
Date: Wed, 13 Sep 2023 23:53:56 +0000
Message-ID: <87wmwthbos.fsf@epam.com>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-5-volodymyr_babchuk@epam.com>
 <77e2dbc0-c224-4c1e-72a0-5b19aa76ba0b@suse.com> <874jjzhsd4.fsf@epam.com>
 <1f57bbf2-d6f3-2e3d-61e0-049b8e2e070a@suse.com>
In-Reply-To: <1f57bbf2-d6f3-2e3d-61e0-049b8e2e070a@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: mu4e 1.10.7; emacs 29.1
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: AM0PR03MB3699:EE_|DB3PR0302MB9087:EE_
x-ms-office365-filtering-correlation-id: f4a07357-95d5-486e-efed-08dbb4b4b149
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 s0/p16vZ9IMUikSamFHXiwc8uCZ7MAJ2813U6N83uTwTr9Ikjr3ZIvQfUkKwwzE74EtSW/wuZbQSvMq4CydnkjTLHIYHB8fG+kHU3qm9aRO6c8vwrQe07gnqwgG5tivl8mbqgEt840N/m+YfNjnMONtwjGpiCvkOmPpf5xHpiyYmbr7ZyeOKs+hon77XK7ptlDgyhGTKWVYbtqbiHHxer97Y8WOcNIWxiJFFV5Qg8Utx+VvazFX3XBHCZHZCyWHTUcOjb9KcdUVzXvaSq99W3F06077b1W4iVMEpQhUZl0TdWR02YBNCUCYua63fRTegSSEbv8uMpsUmAVAgswRvB+Wjf9L0spnEGSdEOaiOxXgeo088PEkcAfP84BcLkAyGTnyVdJKLL2nU2DyDRtTbHHedf5ownJ9zogmLoRluPherO6ey4TzgsWDDE1mU9ygxZxdp1HJdOSnvXNAqN/RS3LZ2+8isoCgK6QlZgD0b3HVwM9QqHJAb9oEKxZcieQWLbmESF/EZMQlGkknhAkGLUbS5R0dl5U4EzEmIvFUNT9iWSzUvcUfsFg46MPJGOgTDvJujvUCevIeG77r6LV4j5fsgYBrgeqi7Kz/disivGvPsdOVkjpoUZjetXz5T2BnM
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR03MB3699.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(39860400002)(376002)(136003)(396003)(186009)(451199024)(1800799009)(8676002)(6512007)(66946007)(53546011)(55236004)(6486002)(6506007)(38100700002)(38070700005)(76116006)(86362001)(91956017)(71200400001)(83380400001)(478600001)(2616005)(122000001)(26005)(4326008)(66556008)(66446008)(2906002)(5660300002)(7416002)(36756003)(316002)(64756008)(41300700001)(6916009)(54906003)(8936002)(66476007)(4744005);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?CGzay8nRIGmlR4pz+g98FQsiwD6yCDRKX+aEtEfzkHXlfugtLyPeyVuSvk?=
 =?iso-8859-1?Q?SH0ImiOnvkqWDSYHj4SMm3KXrSOfBDCF1d+IB17DCL0mtJHDvml85x6IvD?=
 =?iso-8859-1?Q?2+2cAAPnj696urqcGfTRkN/6oeI4Wz3ZNlqcqVwx8dlBmEsKQhfJ5a1ofv?=
 =?iso-8859-1?Q?DA81Q1kzMukDumHndiRwgbZvSnilt9221YBoamo8DVSQ/OrGVYLEGA7MRA?=
 =?iso-8859-1?Q?fF/5RRfvd3cm9CRRGf9gYE81sAwZnVL0P7L5PWKlEnj1cSvZ7IRuVjN9EH?=
 =?iso-8859-1?Q?a8svCpx8hu24KQxl4605L6Pn+ZizYD4Gg//2zqCrzIqsrTwd/HySTPkYnY?=
 =?iso-8859-1?Q?yBVE+jLoAtKFuOShi+sZY0YuNdPWqNjrj18WFnac173hl32BadtDgRAXDo?=
 =?iso-8859-1?Q?Bt7+tXZoKyD8CB4C+M5EP8xCOw2XHOrSbgXEZzX7BX6uEQBZaUxWiWGy+f?=
 =?iso-8859-1?Q?HJRdT0GRE8PJvIN+RggnNiMkT7im697y/xfVq3Lp51tMPhOT8WAxcsua2q?=
 =?iso-8859-1?Q?KKUCLXlKLGDz4T3Ppc+3p7iV/S3dA1b32Ak//rHODIdlZH7Z+VYl79tJwe?=
 =?iso-8859-1?Q?SQHZivCcyq9yLDnszKS1PGRc2ShKIUO/urNeaoPlr/T5rnKyr+6dwywGxL?=
 =?iso-8859-1?Q?GKfV+5uyuJ4HrTYngB6893QX8339UhY8QBDb0BVpmbOsRrJuuxQC0utiRl?=
 =?iso-8859-1?Q?MGTnGrdwuU1lYApBa842HNFpUa1rK4boDNGMzyHyG8gM+l4t4erYzRBV2C?=
 =?iso-8859-1?Q?78ZIaYnyB3JAtPMF7kFHeNvIEwNdyDUssJok4D69wiynflNglcOkQm0C2T?=
 =?iso-8859-1?Q?xh3afT40Wl9wZG/FywtcR+ogS2pkg/tHyuIPR3sUsae8WXyaJfClY507+3?=
 =?iso-8859-1?Q?MSWFxld/EvrBbsTkiHdtNZrJYeB4NMU7N5o20XEt9XoRZSnUobaOgwWKaz?=
 =?iso-8859-1?Q?dLOdUyo51amVZ4TcFDUUDOxXrwcaxf+G0DuQG6DV6xDlEVqW9LEeQ2b3zA?=
 =?iso-8859-1?Q?mSl6816jHoJT8PoyicohMs2zwdloYNkMY9/q5B1TOA9Ai02WflP60Sf04k?=
 =?iso-8859-1?Q?UsC6NcNa6HDbIiawDr2h/7Zk/trM8PJXtZUe095NIsC+Vg3+H4HJZwuKll?=
 =?iso-8859-1?Q?DsiuzCyrXf3XmOPisVDd4r9kYwHyi/f1ecXqVvINCQNp2K8xKAiMuOnOSt?=
 =?iso-8859-1?Q?qHi5AV9b6vT/peV4bmn4PIuvCYpa+XG2oiwUEbtMHCd3FeNe4DWqLWC+QW?=
 =?iso-8859-1?Q?hI2wPXjYFA5npClBHLUWne3+yY5FobOnScOm6QI15e/Y84JdyIiddhenc+?=
 =?iso-8859-1?Q?Xjy/G06ApIxiuxbSOCINmXI2G9WbcrQ5RxwtnC4L4fRkqJAy46vbFJI5Pa?=
 =?iso-8859-1?Q?cZ/oweYdv/P44i4JvhaHAVqpadmZWM7ced4O70VTtasOS2TTOLXnhQADEA?=
 =?iso-8859-1?Q?RW6vjIbzvR3jtnCloG8JoSOs7xqocbeoNgXnrdfdkNyIWoGP3CrmKfM9qm?=
 =?iso-8859-1?Q?m6nKw5R8WyQ16dBHzq9f6cCepLce+13xgK5xY4+v1Kgd9BmGmRxKa6Tfbc?=
 =?iso-8859-1?Q?wrD28Efzu0/ApBopAV9oKAiHstOgtOB3tOGxc7AiTSS2oQfsAl3jcH60kc?=
 =?iso-8859-1?Q?azvm6SnJb5fsGxJVwW2puiTT8/qU0YEmHIGqhpsM5ebXTEt4Oki2cn9A?=
 =?iso-8859-1?Q?=3D=3D?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: AM0PR03MB3699.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f4a07357-95d5-486e-efed-08dbb4b4b149
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Sep 2023 23:53:56.4402
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: 74h/m8FZabt00CGMP9hepq1qRU8thfadMMdMpAwwgpc1jZKFLZDp9EMg75aOia+VruL9noFL443pk+c+DFXzUIGzqArM4cUC+LKfIjgORSM=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR0302MB9087
X-Proofpoint-ORIG-GUID: hU8iIBKrOsuZuRBBCtVsHMOApRCqDQsB
X-Proofpoint-GUID: hU8iIBKrOsuZuRBBCtVsHMOApRCqDQsB
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.601,FMLib:17.11.176.26
 definitions=2023-09-13_18,2023-09-13_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 suspectscore=0
 spamscore=0 clxscore=1015 mlxlogscore=809 bulkscore=0 impostorscore=0
 priorityscore=1501 malwarescore=0 mlxscore=0 adultscore=0
 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2308100000 definitions=main-2309130198


Hi,

Jan Beulich <jbeulich@suse.com> writes:

> On 13.09.2023 01:41, Volodymyr Babchuk wrote:
>> Jan Beulich <jbeulich@suse.com> writes:
>>> On 30.08.2023 01:19, Volodymyr Babchuk wrote:
>>>> @@ -1481,6 +1488,13 @@ static int assign_device(struct domain *d, u16 =
seg, u8 bus, u8 devfn, u32 flag)
>>>>      if ( pdev->broken && d !=3D hardware_domain && d !=3D dom_io )
>>>>          goto done;
>>>> =20
>>>> +    if ( IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) )
>>>> +    {
>>>> +        write_lock(&pdev->domain->pci_lock);
>>>> +        vpci_deassign_device(pdev);
>>>> +        write_unlock(&pdev->domain->pci_lock);
>>>> +    }
>>>
>>> Why is the DomIO special case ...
>>=20
>> vpci_deassign_device() does nothing if vPCI was initialized for a
>> domain. So it not wrong to call this function even if pdev belongs to do=
m_io.
>
> Well, okay, but then you acquire a lock just to do nothing (apart
> from the apparent asymmetry).

Yes, I agree. I'll add the same check as below. Thanks for the review.


--=20
WBR, Volodymyr=


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 02:18:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 02:18:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601720.937856 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgbvX-0007tO-CY; Thu, 14 Sep 2023 02:17:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601720.937856; Thu, 14 Sep 2023 02:17:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgbvX-0007tH-9O; Thu, 14 Sep 2023 02:17:55 +0000
Received: by outflank-mailman (input) for mailman id 601720;
 Thu, 14 Sep 2023 02:17:54 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eUwO=E6=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qgbvW-0007cj-7I
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 02:17:54 +0000
Received: from mail-oi1-x230.google.com (mail-oi1-x230.google.com
 [2607:f8b0:4864:20::230])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e5c42f7d-52a4-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 04:17:48 +0200 (CEST)
Received: by mail-oi1-x230.google.com with SMTP id
 5614622812f47-3ab244f2c89so275233b6e.3
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 19:17:48 -0700 (PDT)
Received: from leoy-huanghe.lan ([98.98.115.199])
 by smtp.gmail.com with ESMTPSA id
 w17-20020aa78591000000b0068c5bd3c3b4sm212275pfn.206.2023.09.13.19.17.44
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 13 Sep 2023 19:17:46 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e5c42f7d-52a4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694657867; x=1695262667; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=lQzdKFAFpw1dsG/FwADri/Y+ip52cCaS+Mt5CUf5r0I=;
        b=OoViiB033eO+lvxzLCVfqUhNYnZuaLDhZC5pPiS7W2A27XR2uIXBA3VnY6zP3GJYJN
         UE6uyuHGekO2/LIwX4cjAL4BXLFUzkEdwQFLQqrddaaAEouN+ubZ0ZhMvQEGq6IJYskE
         FKEtvvz097yCC2fZYdtFtNI6vzx/Oie0CN8zNvkkzW4Nh/Q5FWrK9lBxcsMpB/ji0mus
         0r3/y8oqaFPTEnmLaob8aY4hz87iSRyNRkdSAOYPa2vt22TVVBTjpUHB/YoyCnbaxPzn
         MQZtNEqAXfcbPb5ZzDPUPQDChg6UVNSLpu1T7u9t6q1gxfFPHYWPqolmxOwDAtcntxHk
         f1/A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694657867; x=1695262667;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=lQzdKFAFpw1dsG/FwADri/Y+ip52cCaS+Mt5CUf5r0I=;
        b=wMAmE5Nmk8kOO0TFb54EIFFZSjMe2Oe52rIIPF4VDdizksPttUqfrlx3G7rlNkjLKj
         B2WR7PdjGYlDLepnTzcWbLYy24WZGJbmGxe73gbdSYLZaorXOCrI8O1HdYKldibGKTNw
         dCqZ2OpgJn1BdhUVFZosROKwEG6erP56sEU36JiPUNPNThF5qSKyn5vgTpLeATIyaS3L
         D96owrrc7MoxNL3VpnWccxb3zVLggvSqUx9tQk+lqRtaLdzbxDwDR7bmRcoX9gsjuvoi
         uQdxiXWsNrBGlNNJzpxiowZEB/RAbA9rZd3YykBGGmqouf7L0BEJj0HHYkduaktVCe1w
         1qWA==
X-Gm-Message-State: AOJu0YxydR0lEeQ5ZXIu6bXVGNA1TtIVg/xg1hqAmQwxRKBKC3Ky0F/1
	Y4OoAbKyYtvUp0Zi7qRm17gqpkr99Np/FhfidYrcw2Rt
X-Google-Smtp-Source: AGHT+IH998mHGXgmUJqPe4iq3QUZeNo84jpuKN6GfiNbLQ76lCPEcSRLbo/lBW13KqkI1kaLtYglrA==
X-Received: by 2002:a05:6808:306:b0:3a6:fba6:d900 with SMTP id i6-20020a056808030600b003a6fba6d900mr4542700oie.22.1694657867311;
        Wed, 13 Sep 2023 19:17:47 -0700 (PDT)
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>,
	Leo Yan <leo.yan@linaro.org>
Subject: [PATCH v3 2/2] xen/arm: Enlarge identity map space to 127TB
Date: Thu, 14 Sep 2023 10:17:34 +0800
Message-Id: <20230914021734.1395472-3-leo.yan@linaro.org>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914021734.1395472-1-leo.yan@linaro.org>
References: <20230914021734.1395472-1-leo.yan@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

On ADLink AVA platform (Ampere Altra SoC with 32 Arm Neoverse N1 cores),
the physical memory regions are:

  DRAM memory regions:
    Node[0] Region[0]: 0x000080000000 - 0x0000ffffffff
    Node[0] Region[1]: 0x080000000000 - 0x08007fffffff
    Node[0] Region[2]: 0x080100000000 - 0x0807ffffffff

The UEFI loads Xen hypervisor and DTB into the high memory, the kernel
and ramdisk images are loaded into the low memory space:

  (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
  (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
  (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
  (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel

In this case, the Xen binary is loaded above 8TB, which exceeds the
maximum supported identity map space of 2TB in Xen. Consequently, the
system fails to boot.

This patch enlarges identity map space to 127TB, allowing module loading
within the range of [0x0 .. 0x00007eff_ffff_ffff].

Note, despite this expansion of the identity map to 127TB, the frame
table still only supports 2TB.  The reason is the frame table is data
structure for the page management, which does not require coverage of
the memory layout gaps (refer to pfn_pdx_hole_setup() for Xen removing
the biggest gap from memory regions).  Thus, 2TB of memory support
remains sufficient for most use cases.

Fixes: 1c78d76b67 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable")
Reported-by: Alexey Klimov <alexey.klimov@linaro.org>
Signed-off-by: Leo Yan <leo.yan@linaro.org>
---
 xen/arch/arm/arm64/mm.c               | 6 ++++--
 xen/arch/arm/include/asm/mmu/layout.h | 8 ++++----
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/xen/arch/arm/arm64/mm.c b/xen/arch/arm/arm64/mm.c
index 78b7c7eb00..cb69df0661 100644
--- a/xen/arch/arm/arm64/mm.c
+++ b/xen/arch/arm/arm64/mm.c
@@ -41,7 +41,8 @@ static void __init prepare_boot_identity_mapping(void)
     clear_page(boot_third_id);
 
     if ( id_offsets[0] >= IDENTITY_MAPPING_AREA_NR_L0 )
-        panic("Cannot handle ID mapping above 2TB\n");
+        panic("Cannot handle ID mapping above %uTB\n",
+              IDENTITY_MAPPING_AREA_NR_L0 >> 1);
 
     /* Link first ID table */
     pte = mfn_to_xen_entry(virt_to_mfn(boot_first_id), MT_NORMAL);
@@ -74,7 +75,8 @@ static void __init prepare_runtime_identity_mapping(void)
     DECLARE_OFFSETS(id_offsets, id_addr);
 
     if ( id_offsets[0] >= IDENTITY_MAPPING_AREA_NR_L0 )
-        panic("Cannot handle ID mapping above 2TB\n");
+        panic("Cannot handle ID mapping above %uTB\n",
+              IDENTITY_MAPPING_AREA_NR_L0 >> 1);
 
     /* Link first ID table */
     pte = pte_of_xenaddr((vaddr_t)xen_first_id);
diff --git a/xen/arch/arm/include/asm/mmu/layout.h b/xen/arch/arm/include/asm/mmu/layout.h
index 2cb2382fbf..fa16d07d0d 100644
--- a/xen/arch/arm/include/asm/mmu/layout.h
+++ b/xen/arch/arm/include/asm/mmu/layout.h
@@ -19,11 +19,11 @@
  *   2G -   4G   Domheap: on-demand-mapped
  *
  * ARM64 layout:
- * 0x0000000000000000 - 0x000001ffffffffff (2TB, L0 slots [0..3])
+ * 0x0000000000000000 - 0x00007effffffffff (127TB, L0 slots [0..253])
  *
  *  Reserved to identity map Xen
  *
- * 0x0000020000000000 - 0x0000027fffffffff (512GB, L0 slot [4])
+ * 0x00007f0000000000 - 0x00007f7fffffffff (512GB, L0 slot [254])
  *  (Relative offsets)
  *   0  -   2M   Unmapped
  *   2M -  10M   Xen text, data, bss
@@ -35,7 +35,7 @@
  *
  *  32G -  64G   Frametable: 56 bytes per page for 2TB of RAM
  *
- * 0x0000028000000000 - 0x00007fffffffffff (125TB, L0 slots [5..255])
+ * 0x00007f8000000000 - 0x00007fffffffffff (512GB, L0 slots [255])
  *  Unused
  *
  * 0x0000800000000000 - 0x000084ffffffffff (5TB, L0 slots [256..265])
@@ -49,7 +49,7 @@
 #define XEN_VIRT_START          _AT(vaddr_t, MB(2))
 #else
 
-#define IDENTITY_MAPPING_AREA_NR_L0     4
+#define IDENTITY_MAPPING_AREA_NR_L0     254
 #define XEN_VM_MAPPING                  SLOT0(IDENTITY_MAPPING_AREA_NR_L0)
 
 #define SLOT0_ENTRY_BITS  39
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 02:18:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 02:18:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601718.937836 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgbvP-0007Nd-Rz; Thu, 14 Sep 2023 02:17:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601718.937836; Thu, 14 Sep 2023 02:17:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgbvP-0007NV-Nf; Thu, 14 Sep 2023 02:17:47 +0000
Received: by outflank-mailman (input) for mailman id 601718;
 Thu, 14 Sep 2023 02:17:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eUwO=E6=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qgbvO-0007NP-Hp
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 02:17:46 +0000
Received: from mail-pf1-x42b.google.com (mail-pf1-x42b.google.com
 [2607:f8b0:4864:20::42b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e24fa863-52a4-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 04:17:45 +0200 (CEST)
Received: by mail-pf1-x42b.google.com with SMTP id
 d2e1a72fcca58-68fac16ee5fso412304b3a.1
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 19:17:43 -0700 (PDT)
Received: from leoy-huanghe.lan ([98.98.115.199])
 by smtp.gmail.com with ESMTPSA id
 w17-20020aa78591000000b0068c5bd3c3b4sm212275pfn.206.2023.09.13.19.17.38
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 13 Sep 2023 19:17:41 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e24fa863-52a4-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694657861; x=1695262661; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=EJGDLpaxVf6ArJdz/jc1JrPgtZVyyYN90LX6pOkLUK0=;
        b=DzOYl14me3Y2+muMRa7iWOcabyP66vhB++hpnlW93dmVO4ggFE/22FUm1wmDzhNEzJ
         XGgFUcJxpW6kRiX8VC/IVnI6A2mtRdQlpnipGp0eFtGATKipd1smdrE3+Gfc2a98eFXu
         U2zISmYD4mmswtLmfCzuEr5+GCvTSVfJk6J9qSZmbK5tj+ZcZ9vbQ61+SymQQ0U2hg+L
         IWGFlEdrxaa27wa5nH8itGVA6cwLMZaTElQlJDaBcZ1AI0pdO4+oVN+lWbJDWe0HoYKB
         2S3KIKiGOvFdhi4corntGH1CUA+vmtH/7NyR/Kh7A5gowsyJoW/bT2+MNwrhSTR+7siU
         4oew==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694657861; x=1695262661;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=EJGDLpaxVf6ArJdz/jc1JrPgtZVyyYN90LX6pOkLUK0=;
        b=RJbUzxbuz6xE/hepKV9MNaD31xADugnnjNeuh2mmaI+dNsN5/99qGKaKYMNpSL3eEp
         gj9xAdx03GYY68/nqqJ2zWCbtN+W2hzjcpNpu3iXMkn1LZJECwPyq7SXsD5GcOmpY042
         xuVaH/hvjTIxV4KFQjUeSr3Qee6jxwCXhDnhpqldr8rBwH3n3yvqRRuSIFt8+Wc0fmXz
         34mhLF1dc1iNKYlKLQ2+/T9IhHQZe27hHe3Fs7gHeybgeiqwYtIyoAn5mWSQrW3d99eK
         WTCnJGqpMBbuDmJ7jH8JSm3FziD6lf6SJJ0mB+Pq2+ZsXNhYhnxUfQz7P0UmcFMSsSEM
         Fb1A==
X-Gm-Message-State: AOJu0YwBtKbl7LpbuqqSK5eYkFAxm4E+TdHMNAX0z/MJ3zHhYJPzUIst
	lukXEXdO/IHRDtorSO8gd+4s6vpnXPzv9P5HQ6K6vUs7
X-Google-Smtp-Source: AGHT+IHQDm96igxxrGFmGTp/0WWdX5JAwJfCeXtmWixTZ8P8LK8LRHwm5zGaVkdNWa657ptgzQCZow==
X-Received: by 2002:a05:6a00:1951:b0:68f:dfda:182a with SMTP id s17-20020a056a00195100b0068fdfda182amr4547346pfk.26.1694657861346;
        Wed, 13 Sep 2023 19:17:41 -0700 (PDT)
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>,
	Leo Yan <leo.yan@linaro.org>
Subject: [PATCH v3 0/2] xen/arm: Enlarge identity map space
Date: Thu, 14 Sep 2023 10:17:32 +0800
Message-Id: <20230914021734.1395472-1-leo.yan@linaro.org>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The latest Xen fails to boot on ADLink AVA platform.  Alexey Klimov root
caused the issue is related with the commit 1c78d76b67 ("xen/arm64: mm:
Introduce helpers to prepare/enable/disable").

This is because on ADLink AVA platform, it loads Xen hypervisor to the
address above 8TB and hence causes Xen panic (see patch 02 for details).

To fix this issue, this series is to enlarge identity map space to
127 TiB and tested on AVA platform.

Changes from v2:
- Kept macro naming IDENTITY_MAPPING_AREA_NR_L0 and removed introduced
  macros (Julien Grall).
- Minor improvement for coding style (Julien Grall).
- Added platform's detail in the patch 02 commit log (Julien Grall).

Changes from v1:
- Rebased on staging branch (Bertrand);
- Added Alexey Klimov tested tag for patch 01 (Alexey).
- Corrected the printing log with dynamically calculation ID map size.


Leo Yan (2):
  xen/arm: Add macro XEN_VM_MAPPING
  xen/arm: Enlarge identity map space to 127TB

 xen/arch/arm/arm64/mm.c               |  6 ++++--
 xen/arch/arm/include/asm/mmu/layout.h | 17 +++++++++--------
 2 files changed, 13 insertions(+), 10 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 02:18:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 02:18:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601719.937846 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgbvV-0007dK-4z; Thu, 14 Sep 2023 02:17:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601719.937846; Thu, 14 Sep 2023 02:17:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgbvV-0007dA-20; Thu, 14 Sep 2023 02:17:53 +0000
Received: by outflank-mailman (input) for mailman id 601719;
 Thu, 14 Sep 2023 02:17:52 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eUwO=E6=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qgbvU-0007cj-4y
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 02:17:52 +0000
Received: from mail-pf1-x432.google.com (mail-pf1-x432.google.com
 [2607:f8b0:4864:20::432])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e3ff7399-52a4-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 04:17:45 +0200 (CEST)
Received: by mail-pf1-x432.google.com with SMTP id
 d2e1a72fcca58-68fc081cd46so440840b3a.0
 for <xen-devel@lists.xenproject.org>; Wed, 13 Sep 2023 19:17:45 -0700 (PDT)
Received: from leoy-huanghe.lan ([98.98.115.199])
 by smtp.gmail.com with ESMTPSA id
 w17-20020aa78591000000b0068c5bd3c3b4sm212275pfn.206.2023.09.13.19.17.41
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 13 Sep 2023 19:17:43 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e3ff7399-52a4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694657864; x=1695262664; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=8ZhYSY8Bdfcj4po7z+q8sAviQ3OBUmp6eSh3vGvduLY=;
        b=srDQVawyYQFY6X+qN7giHnk9On23q15uGx3oU51ILK1tGmMEcli0TadwHvuRdrNotI
         Ws1aoxY8vUWmB2p/Oayn4+f038FAi+Y1dC3I3piv3VFuPN09fdLWtQmkAYmobP8FeBx1
         OJbB57ouP06LZUv77ZV0YB9UUrUBJctNH+Qlkl7tVy3xyIUsxI4WdPVIy3tFBLDowLv8
         NQjDGW33fs4zTaib3vOxWpqd4+5bGWnvXS/ZwQoB3qTTust9Fd+/vPxe+/V3Ilq1QaRA
         2TkM8ws86D95Gv/SwQhmTtqH2t0Wn8N72ixeiYVTSx7S/h7Ab9+NVi5njqm/nwZ2r8Sz
         LO1g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694657864; x=1695262664;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=8ZhYSY8Bdfcj4po7z+q8sAviQ3OBUmp6eSh3vGvduLY=;
        b=tlxnRCyHTDLVjwyWk6Ej0sOr64DkXNzmGzhuK5VZhGeBXi7Aa0YyY8b7TW3Yix8QQC
         NVLM/u8o2bjDe/SDnbQNQNQLWxIXxRHgkTfA3w50phchHIXU+licsCMb4Q7ycTQX7pZA
         +XsM82LaWcajRO1W6touPDE0AjCDgF1xvKEZuZCn9LZVDtRhpk//bxYMUnk9vbfdStHn
         OvKkByA7tWheS76UghBswciqVCOJQzdJ4h0UFDs+A13kt1AQKyo7vSvbjEZU3wHz/gf0
         TR6M8w+VxIy9dVd7TKwhP+1s1UZttulMqE0XZzx/AVMBotKJ4Z4aBgfGMLeLNM0BW9Rn
         Im0g==
X-Gm-Message-State: AOJu0YwDZTHPYLBLU/jTAPLmvMixadrhfo5D+Ux7k7OT2YlMK9KTsN0S
	tIDF86PadIZI6ZkJPwzyDBxRZsRfw6A0lmH8ONOR4rxC
X-Google-Smtp-Source: AGHT+IGVpz8CnUa5h0fqWmTHXMGcDwtylhRN9gcJF15nindufcCxGeYsE01Liy2m9RGZRGjkV7ku7g==
X-Received: by 2002:a05:6a00:2495:b0:68f:e810:e86f with SMTP id c21-20020a056a00249500b0068fe810e86fmr4833623pfv.28.1694657864285;
        Wed, 13 Sep 2023 19:17:44 -0700 (PDT)
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Alexey Klimov <alexey.klimov@linaro.org>,
	Leo Yan <leo.yan@linaro.org>
Subject: [PATCH v3 1/2] xen/arm: Add macro XEN_VM_MAPPING
Date: Thu, 14 Sep 2023 10:17:33 +0800
Message-Id: <20230914021734.1395472-2-leo.yan@linaro.org>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914021734.1395472-1-leo.yan@linaro.org>
References: <20230914021734.1395472-1-leo.yan@linaro.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Xen maps the virtual memory space starting from L0 slot 4, so it's open
coded for macros with the offset '4'.

For more readable, add a new macro XEN_VM_MAPPING which defines the
start slot for Xen virtual memory mapping, and all virtual memory
regions are defined based on it.

Signed-off-by: Leo Yan <leo.yan@linaro.org>
---
 xen/arch/arm/include/asm/mmu/layout.h | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/xen/arch/arm/include/asm/mmu/layout.h b/xen/arch/arm/include/asm/mmu/layout.h
index da6be276ac..2cb2382fbf 100644
--- a/xen/arch/arm/include/asm/mmu/layout.h
+++ b/xen/arch/arm/include/asm/mmu/layout.h
@@ -49,11 +49,14 @@
 #define XEN_VIRT_START          _AT(vaddr_t, MB(2))
 #else
 
+#define IDENTITY_MAPPING_AREA_NR_L0     4
+#define XEN_VM_MAPPING                  SLOT0(IDENTITY_MAPPING_AREA_NR_L0)
+
 #define SLOT0_ENTRY_BITS  39
 #define SLOT0(slot) (_AT(vaddr_t,slot) << SLOT0_ENTRY_BITS)
 #define SLOT0_ENTRY_SIZE  SLOT0(1)
 
-#define XEN_VIRT_START          (SLOT0(4) + _AT(vaddr_t, MB(2)))
+#define XEN_VIRT_START          (XEN_VM_MAPPING + _AT(vaddr_t, MB(2)))
 #endif
 
 /*
@@ -116,12 +119,10 @@
 
 #else /* ARM_64 */
 
-#define IDENTITY_MAPPING_AREA_NR_L0  4
-
-#define VMAP_VIRT_START  (SLOT0(4) + GB(1))
+#define VMAP_VIRT_START  (XEN_VM_MAPPING + GB(1))
 #define VMAP_VIRT_SIZE   GB(1)
 
-#define FRAMETABLE_VIRT_START  (SLOT0(4) + GB(32))
+#define FRAMETABLE_VIRT_START  (XEN_VM_MAPPING + GB(32))
 #define FRAMETABLE_SIZE        GB(32)
 #define FRAMETABLE_NR          (FRAMETABLE_SIZE / sizeof(*frame_table))
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 04:03:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 04:03:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601753.937918 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgdZj-0007FL-58; Thu, 14 Sep 2023 04:03:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601753.937918; Thu, 14 Sep 2023 04:03:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgdZj-0007FE-2C; Thu, 14 Sep 2023 04:03:31 +0000
Received: by outflank-mailman (input) for mailman id 601753;
 Thu, 14 Sep 2023 04:03:29 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgdZh-0007F3-Kd; Thu, 14 Sep 2023 04:03:29 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgdZh-00023f-IP; Thu, 14 Sep 2023 04:03:29 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgdZh-0003eO-2l; Thu, 14 Sep 2023 04:03:29 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgdZh-0001Pf-1s; Thu, 14 Sep 2023 04:03:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=bNns1nOfoXJEnmqYnZb6D+jwOceHzzXxnqp+ZLIt/GA=; b=NoAaXZ5eBK/XJRE39FHEh8M6+a
	liMk2sXH/HJzDWIrznJbcP9oGlC7YZbGVOX2K/V1bzttAWTrLGm8/J4f570Duu6HW+XwBzlbOSzVY
	txD/gBxxqMnFK33n2eZxyA/6MT4rIJ7SU6wEC7ny8RaJBCnz16bbYEOPEVqvOPnE5RF0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182997-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 182997: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=6aa25c32180ab59081c73bae4c568367d9133a1f
X-Osstest-Versions-That:
    xen=f1546c98e06fec6c2d1e15ff8e80547d10365bc3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 14 Sep 2023 04:03:29 +0000

flight 182997 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182997/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 182955
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182955
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182955
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182955
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182955
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182955
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182955
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182955
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182955
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182955
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182955
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182955
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  6aa25c32180ab59081c73bae4c568367d9133a1f
baseline version:
 xen                  f1546c98e06fec6c2d1e15ff8e80547d10365bc3

Last test of basis   182955  2023-09-12 02:45:51 Z    2 days
Failing since        182969  2023-09-12 14:07:18 Z    1 days    3 attempts
Testing same since   182997  2023-09-13 13:12:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Federico Serafini <federico.serafini@bugseng.com>
  Gianluca	Luparini <gianluca.luparini@bugseng.com>
  Gianluca Luparini <gianluca.luparini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@amd.com>
  Paul Durrant <paul@xen.org>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Simone Ballarin <simone.ballarin@bugseng.com>
  Stewart Hildebrand <stewart.hildebrand@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   f1546c98e0..6aa25c3218  6aa25c32180ab59081c73bae4c568367d9133a1f -> master


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 04:45:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 04:45:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601458.937927 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeEa-0004Cp-TT; Thu, 14 Sep 2023 04:45:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601458.937927; Thu, 14 Sep 2023 04:45:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeEa-0004Ci-Qp; Thu, 14 Sep 2023 04:45:44 +0000
Received: by outflank-mailman (input) for mailman id 601458;
 Wed, 13 Sep 2023 14:37:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=x+cg=E5=amd.com=Yazen.Ghannam@srs-se1.protection.inumbo.net>)
 id 1qgQzF-0001Cp-4R
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 14:37:01 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on2062c.outbound.protection.outlook.com
 [2a01:111:f400:7eab::62c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fe6e1b8a-5242-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 16:36:59 +0200 (CEST)
Received: from BN8PR12MB3108.namprd12.prod.outlook.com (2603:10b6:408:40::20)
 by CY8PR12MB7220.namprd12.prod.outlook.com (2603:10b6:930:58::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Wed, 13 Sep
 2023 14:36:55 +0000
Received: from BN8PR12MB3108.namprd12.prod.outlook.com
 ([fe80::377c:b288:3718:408b]) by BN8PR12MB3108.namprd12.prod.outlook.com
 ([fe80::377c:b288:3718:408b%7]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 14:36:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fe6e1b8a-5242-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hUNQ10EhbuDA8TPz6UTYxxdItFd9EvVpbt9+x1bKFuYrxguy9Z0Bb5vJ2i/tm5J3G/IDy6Raee4DUOZKb/CanCRKjx5oa7zxCaKsFg8mXQ/2RJuMmt3cRxB5oqLZuSTmq5n9ZKHNqeMVRslzzw0WPUiKMbU4TyPflYoha0y1Bnk9mtzUNKcf665PLsl/eKeJ4aG2G+R3tNhlqip53XSAIveLfh/cKO2EkAkNR4jO8h/nDR3dkqUpVtdFFLPztgZfq8VPJdFuPcOyceeZXJMc3Ar3TBEKFiMaj4E4XT/KN0preSx28ToUahgsSiCOzDvIZuRk+iO+OLMtJhestXiRhw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ahnKZmxJT8dusQtBeSkWr2k8rK751AY00jAIFynw+14=;
 b=ctReq4SL0yyXQYXcoE79uIEVlehvamEeiZt2Aa83B5ok2aQVMJveLbxC1DDBXjdgajBua+gOs1TIvCHUx3C7nR0ywVdEeZuyg/Vbxi61rKRZpZaVtaM3RiuKy6jeaUOS8dE2CoW/mtxLcozTqiVtRvcrWOqI0UDcdGcrVPY4GGvPSZrTZEBK4XuRzbzCtcvQNrqIQ03GMzoyYpl8y7kndPPugF6Bgq4u49nqrb3kMnifeHpSQuvj3Ax4X0umNPjMkzgPOAtr5Iw6FpM8Swcv+yXSjq2IlU4HLcOzY8c0dI6rM/01Owo3/Bt1Ba3oNJpWRaKig0sFpWW8ZQfdTYYkLw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ahnKZmxJT8dusQtBeSkWr2k8rK751AY00jAIFynw+14=;
 b=jLLvd9VwpjuyR867JHxfLR1Yc0qip5pvotsIzBm2E3LI+rh3saJRFJhIAvUiEmqoGUrJvIaKgzrit9iYiHogDFyipt9CGhjOrczeZuQ/suS5P8/28bXIPuJ20rcrYOS4GGZuinkrFuCxYzYFPgvZ9z83WAXHIp/zUJUOl06ScR4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <40d3399a-b260-4ffa-a503-40c61468a189@amd.com>
Date: Wed, 13 Sep 2023 10:36:50 -0400
User-Agent: Mozilla Thunderbird
Cc: yazen.ghannam@amd.com, smita.koralahallichannabasappa@amd.com,
 linux-edac@vger.kernel.org, linux-kernel@vger.kernel.org, x86@kernel.org,
 xen-devel@lists.xenproject.org, rric@kernel.org, james.morse@arm.com,
 tony.luck@intel.com
Subject: Re: [PATCH] Revert "EDAC/mce_amd: Do not load edac_mce_amd module on
 guests"
Content-Language: en-US
To: Borislav Petkov <bp@alien8.de>, Elliott Mitchell <ehem+xen@m5p.com>
References: <20210628172740.245689-1-Smita.KoralahalliChannabasappa@amd.com>
 <ZPqQEHXgmak1LMNh@mattapan.m5p.com>
 <20230908035911.GAZPqcD/EjfKZ0ISrZ@fat_crate.local>
From: Yazen Ghannam <yazen.ghannam@amd.com>
In-Reply-To: <20230908035911.GAZPqcD/EjfKZ0ISrZ@fat_crate.local>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: MN2PR15CA0021.namprd15.prod.outlook.com
 (2603:10b6:208:1b4::34) To BN8PR12MB3108.namprd12.prod.outlook.com
 (2603:10b6:408:40::20)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BN8PR12MB3108:EE_|CY8PR12MB7220:EE_
X-MS-Office365-Filtering-Correlation-Id: 66a30150-ada6-47e3-20ee-08dbb466e068
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rMEp8RLbYtVa8hXEDxhq3loSPv79Wd6FoZTTAyoznocgRXyJRoBX5PAKuPmNw2LKCIjhj16y4yA+lYWn0yaZxdwngq+QVBwQnTgQBUFEfOamHEMoMiLDGtw8QzsWwh9s52TSrvhjyz97nUKWGeKDT4V569chhrF1gBuE1sQeg2W981TOa3rLqp/0J7wa2vhf65aJavTgJpa/LCEXinuS6GG+6JAMS4EhjfTTrwvwrEfkVz7wZI4aEv3rq7xHYWa6f7zIee3f+kag1oBj0QGsxvwezQSZrKmqbtipMn4AM5wA1rW+RpLtL7B6CRZ3knE5Crkn3SAEcrAorQWGt99Wobp81jlOulwbHbCANTW7+CznaUeTq0UfTl+zAEJJhpeKZdFmbDBoWyRMnTmyh0Hn3k7MMVBHS2FGXczHYnt83v8GHSDnwduGvlqtktFXMIGgVSh8Snq46OH5udj8S3V2DTOdTyBxYAUxOgp/7FLHRlbryAPSMFPE459jAt1S426E6gDLOfoOJIdJEWzAfeLltyLB6IkuochPEG/69Kx/Kis6Z/+i2NY8YNYAR2PAAwFTA/E2hnmrocp7qVGa1WeB2vj4qf6GHxSD1+j9ZBzTujG98HNyXy+ku6zCRHKLRPjCpv8jXoJuttpQGswcJbu6hg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN8PR12MB3108.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39860400002)(376002)(136003)(396003)(346002)(451199024)(1800799009)(186009)(31686004)(6666004)(53546011)(6486002)(110136005)(478600001)(66946007)(6506007)(31696002)(36756003)(6512007)(86362001)(38100700002)(4744005)(26005)(2616005)(316002)(8936002)(41300700001)(4326008)(8676002)(5660300002)(2906002)(66476007)(44832011)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VHM2MzhFMkswRHJwL2U5czgyRUhGbURINGJ5RTlHU3RTeDZwck9ZOXB0TDB2?=
 =?utf-8?B?N0FXdkd1Y3Z6ZWQvOXBFL1pWdjRpUDdzMnJTSGErU3hkK2dtbmMrOGpvQ0ho?=
 =?utf-8?B?dTJFNWhCSGxtTU1KbTdBcDZGMHpFNWU5YWt5aENSS2VkTlBoYWdjNWVqY255?=
 =?utf-8?B?TncwWG53OTFQVE9jRWxIN2QrbmFzSFM4STBrVnNzeHFHNW9SQ0dlWUpUNXNv?=
 =?utf-8?B?TFZNeDhybWcxT2RZcytReEtYT1NTR3JaNm1hdXlDK21BQ2Y2WkFVTFVVRUhE?=
 =?utf-8?B?Y3Z1b1ZjeW5wdnoySWhtNFF1c2JsZlVrR0NHd3dXQ25ZZWp2cjZaOEJYKzlZ?=
 =?utf-8?B?QnlJaVRZUjR6UDB3OHdvSFlNVnhEWVppZUIvWU9oS1EvOW4xSkxIRTlpNmJy?=
 =?utf-8?B?YzRIekMwei9tSW8zdXhMRzV3VkRZNkg1WDZvUm0wS0RsOGFmbVZ4dDBKQitn?=
 =?utf-8?B?MlBaeVlsYlpHV0NGODVHVXAwUHl1azl3V2wvRXczSkJNMGFtWlh3NGFYd1dD?=
 =?utf-8?B?QmdvU3RkUjY1TFFpWkNQMTdsaEwzd09uRGFCTnFldDVBdUxnOXpvUFQxTmpM?=
 =?utf-8?B?QmNPeElXRlF1cisrOUtMTnRFajlmRDFZek1SbkpjQWNaTndEczZkT3EvUlNY?=
 =?utf-8?B?ZnJ0MUVjK3VLUm54YnJXNloyU0FqNkRYOTJ0d2V4TWs3a201TXJ1bVpNN1du?=
 =?utf-8?B?TElDTUp2SktYZUk3ZkFZaHYwKzIvQm1EQkF3RTRvLzZwd3UxMGI3ajJwNWdp?=
 =?utf-8?B?bTlXNW1vRkw1QkpQRGRnN0FSVXVBWE5nenFVWmtTNi9NMTQrZWk0WEs2aXRY?=
 =?utf-8?B?aytwNnA3cXVteEttekVaVG1BNFpwZ1FsTEc2a201RldmVDZqeUZ2d2Via1J6?=
 =?utf-8?B?dnpROFRFUTVNazhMc0VkaE4rcW1sZldvZ1JFdEJIcEdFb1Z4SDE3alFmZ3JY?=
 =?utf-8?B?ZlNZdCt3OGtPeENaZUZjK3NzUndqL2cwSVRQSXZkQTFQdHhoMFh2SFVRdzN5?=
 =?utf-8?B?V2JuNlVFL0I2a1JtZzNnUytlbkg0NS9uSU5VdzI2QVgwYzA2TkJGcjZWM3JP?=
 =?utf-8?B?RzJOYUZMMUpkV3hWT3NVTlpXemhCbzFmczIvN0x2dUJGZEtrRXZZb1M5ZWJu?=
 =?utf-8?B?QzVnbFFOOUZYKzR3WVFCdzM5NnQwUWhqM1NacllxWkRvdmN2dU95UG45Uk1P?=
 =?utf-8?B?enpYRmplKzBpUzhHTnJnNEFqdTNGSFQ5Z2Vzci9semtvTzhHckdlbEVCYUZa?=
 =?utf-8?B?KzB5Wng4ZVZLZ0VoVDE1amxpMStxRXN1WjMzakNrdFNyV1MxNGdDTW1qOWxY?=
 =?utf-8?B?L0ZpSkV5Y2RDNTlmVVBLdEJ2WmIreC9saE1YMXVtRWsvUWhCb09LRlVWS3BW?=
 =?utf-8?B?L1p5K0d1NG9xVnRoRUZoYXlMS0RqR2wwSDVQMElXSHdqVXRkSVBlVTlWRXpM?=
 =?utf-8?B?S3R0UEt4Tmp6aUp6Ly92eER5VUxtdE14aUowdEZXL1lHWUlzMXZFSDJxdlZk?=
 =?utf-8?B?Zm9yWEJjSTZlNXNNNnVZdDhjdGxCZk5jYmpKR25IMUs2RXpFenpmMGFSTExU?=
 =?utf-8?B?clVLTHMyaWNzL1BxbEtzdkZnaC92NUNrVi93V0E3UnUybE1TR0VVRDR3RGRL?=
 =?utf-8?B?YnZaZlREdjJtZnRadXN6QTEyZFlWU3g5QVRQNXRhcmt5cWwwWUZSNFpmOUpo?=
 =?utf-8?B?MWhxU1ZTaDlCQmxqL0V6L1p6TVV4NXlQY1g2WFphOURPWkNZN1ZzcjdYbStk?=
 =?utf-8?B?am95WmN4WUZoTEtXdy9va1B0N3lCV0hJU2p1a2dxbVh5M3d5VURuZzRySWxG?=
 =?utf-8?B?MXRDWjZPMXN5NUVudkJ2YVF1SDZHV3l6SnJWaTM5Q25tNlNJVDNyY1pNMlpL?=
 =?utf-8?B?YVhvOG1KYW01eERqeHlKZGkzWUpiNklrbWJ4cWhTZ2ZiY2FTWmVUMGYvWVVs?=
 =?utf-8?B?dEd4bDV2UCtIbURWclV5eE8wYlZOVmwvODFQaG9Tbm1sdWQzejJGQlhyc0xn?=
 =?utf-8?B?cEtUU2VnZVMrZkZ0ODVDQy9peWwwMGpxNWMzSDhNL3V1MkdiWmFWcE1WM2Ey?=
 =?utf-8?B?MGVrSDlIcXp6VStodEhjTGhPSHZ5amdHOFJmTDZvWWNzdTZ1b3dKWnp3OTV4?=
 =?utf-8?Q?yWJZK5wkFBDVuAYnhz0v8xIZg?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 66a30150-ada6-47e3-20ee-08dbb466e068
X-MS-Exchange-CrossTenant-AuthSource: BN8PR12MB3108.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 14:36:54.9404
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5mheaqWTEv+3Kyq0krkw4EqeNQhiyuR5tL7jFHywgDzQVUDr1b9Jsu9J4EsVPUQb7i0nEQOVCj4wwa494L1qVg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7220

On 9/7/23 11:59 PM, Borislav Petkov wrote:
> On Thu, Sep 07, 2023 at 08:08:00PM -0700, Elliott Mitchell wrote:
>> This reverts commit 767f4b620edadac579c9b8b6660761d4285fa6f9.
>>
>> There are at least 3 valid reasons why a VM may see MCE events/registers.
> 
> Hmm, so they all read like a bunch of handwaving to me, with those
> probable hypothetical "may" formulations.
> 
> How about we cut to the chase and you explain what exactly is the
> concrete issue you're encountering and trying to solve?

Also, please note that the EDAC modules don't handle MCE events
directly. They act on information passed from the MCE subsystem.

Furthermore, there are other EDAC modules that have the same !hypervisor
check, so why change only this one?

Thanks,
Yazen


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 04:45:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 04:45:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601496.937932 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeEb-0004GD-6G; Thu, 14 Sep 2023 04:45:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601496.937932; Thu, 14 Sep 2023 04:45:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeEb-0004F8-1w; Thu, 14 Sep 2023 04:45:45 +0000
Received: by outflank-mailman (input) for mailman id 601496;
 Wed, 13 Sep 2023 16:21:32 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=x+cg=E5=amd.com=Yazen.Ghannam@srs-se1.protection.inumbo.net>)
 id 1qgScN-0002R7-RM
 for xen-devel@lists.xenproject.org; Wed, 13 Sep 2023 16:21:31 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20606.outbound.protection.outlook.com
 [2a01:111:f400:7e88::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 97f10705-5251-11ee-8786-cb3800f73035;
 Wed, 13 Sep 2023 18:21:30 +0200 (CEST)
Received: from BN8PR12MB3108.namprd12.prod.outlook.com (2603:10b6:408:40::20)
 by LV3PR12MB9215.namprd12.prod.outlook.com (2603:10b6:408:1a0::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.39; Wed, 13 Sep
 2023 16:21:26 +0000
Received: from BN8PR12MB3108.namprd12.prod.outlook.com
 ([fe80::377c:b288:3718:408b]) by BN8PR12MB3108.namprd12.prod.outlook.com
 ([fe80::377c:b288:3718:408b%7]) with mapi id 15.20.6792.019; Wed, 13 Sep 2023
 16:21:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 97f10705-5251-11ee-8786-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AbAM/ijDNfYDw+PpL+PSBDEOQxx2+Jal8dRl5bhLOhnP/lfBnerivvmZr7em0SkNPoW0o+YyDXOGAyqZX/d4peWeOECIG/SPPRoerCiC6LIMSiBPhRhkKjD4D31v+r32lR+U9RA4+5yU31j/4HMo74rpcaYQkkHgkVoOqWd25P0aK4w5yI8zKhow/umgzt0KaGpeLEMd9kHhtPaeypYMS0kGA7lV19A6TdjVCJNTsIpxv6uqH9Jcq9De2nFZxD7CnNk3gfFQJfTOIEn9MubwN+w4uJK3CkL6iXyikR3y7ExAOmshRFa+SsDIwTnDb06g6pLDOXsNU5hp1uRiaDPqUw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kFv0IXU+8fmxne5lj6aVNbdmZ4YdZI8WomzU/KcoQzk=;
 b=NjzrcPELBQsK49YlXDoWgYUvGiuCEKTQY5VLu+n4i2EvmwhuFQET+wK9+Fv3BUbQmIzJOgzkDfqD0lHtnPwwwzsqiPdmrLDBjz1uD/YsWZxYX34MnScnVYAOIzFIzVln3ZR27N+C2/yY/yUVI4IAS32ppcD6TXQDoqOJkxnWtq6M7OvO+IIOmuA2iC2zECfSNuMG5d10QewEkpl5qfQjUY9xNKDFqonh3iBL1YAAQMEjXMoizaR9Rwtka6KHzC+BLjeGdITUKXkjNvpyMsMk18JdjqU6TGSPb7pz7a55tlvHdm5BMyWqwHgp2sdRauqRnrvyWC6YGkTSyr0lbqfSEQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kFv0IXU+8fmxne5lj6aVNbdmZ4YdZI8WomzU/KcoQzk=;
 b=Sw+JPDCOv0bypOzlRL2LUavn3GT8Mzge5cgYg/PFJjX8bA4V9UPq6M6Y7XDeJ9BtNlH+xDbUD3AubXUYs/t5p3dOkXYLSVY6g7f0ytWxzGr4ese95jDTWQtTK6Iku5/CrJwhB2vf36w4aw5OBTczHLZenfjLfoNT1lTq/wdyWNI=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <fa5ec285-4d0f-4635-a35d-d290fd73ddfa@amd.com>
Date: Wed, 13 Sep 2023 12:21:23 -0400
User-Agent: Mozilla Thunderbird
Cc: yazen.ghannam@amd.com,
 "smita.koralahallichannabasappa@amd.com"
 <smita.koralahallichannabasappa@amd.com>,
 "linux-edac@vger.kernel.org" <linux-edac@vger.kernel.org>,
 "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
 "x86@kernel.org" <x86@kernel.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 "rric@kernel.org" <rric@kernel.org>,
 "james.morse@arm.com" <james.morse@arm.com>
Subject: Re: [PATCH] Revert "EDAC/mce_amd: Do not load edac_mce_amd module on
 guests"
Content-Language: en-US
To: "Luck, Tony" <tony.luck@intel.com>, Borislav Petkov <bp@alien8.de>,
 Elliott Mitchell <ehem+xen@m5p.com>
References: <20210628172740.245689-1-Smita.KoralahalliChannabasappa@amd.com>
 <ZPqQEHXgmak1LMNh@mattapan.m5p.com>
 <20230908035911.GAZPqcD/EjfKZ0ISrZ@fat_crate.local>
 <40d3399a-b260-4ffa-a503-40c61468a189@amd.com>
 <SJ1PR11MB6083BDC4D10D139EF28E0058FCF0A@SJ1PR11MB6083.namprd11.prod.outlook.com>
From: Yazen Ghannam <yazen.ghannam@amd.com>
In-Reply-To: <SJ1PR11MB6083BDC4D10D139EF28E0058FCF0A@SJ1PR11MB6083.namprd11.prod.outlook.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: BN0PR04CA0088.namprd04.prod.outlook.com
 (2603:10b6:408:ea::33) To BN8PR12MB3108.namprd12.prod.outlook.com
 (2603:10b6:408:40::20)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BN8PR12MB3108:EE_|LV3PR12MB9215:EE_
X-MS-Office365-Filtering-Correlation-Id: 29c6245f-3876-4d3b-4fae-08dbb4757a5d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	e0QOr5AAvHS9bx/ywNJw22AsQpIkW/14aEs1PYKq0vvWfBuZZ5eRC/mg6+ZUVhbkY3gnmP0B81M53K6vzfoalHnhNBvHCjDg37Xczduaed3kqJEN3rmjEW2Yzx0GLkkjo56tMGDDD2pP0AGh8fm3mubJKFqWXJYAzP1ZQeBMBKVcUXjOlkSfp15133G/o9qn+DBPFfCRCxYH/isI/HDrMyCy7o3ChIg3ufy6xNGhRLQEAMRDPrsP3RxAWMDrodD9Ief2Gx6iAKDz7H1KDUzJxdWsJBiI4HgNivONup1r/M1ucqcSil5/P9oxTTsHQGPukBiVgpEAnY5OVLxdESLPs9BeLmy4dvxxKOPRC2av6pDv1sxP7Kh2fggPkhH9yr5oAbrQn6bxAUmJ0F0bonq/2Fm0M3n1S87F4OZBwpayQ2ubTIKUMZ1L7h3KA9mJZuh/IZ8sDz7IXQ4eSPVL0xx0c73WREEMteaJhgYMrr+6XTZTt4onUZlxdzxhx2D14Ohd1CmOK91iEaKr4cFSOvnshVQ2/yozTUhSSxQ5rYxuAgrZV+4ijF4E06OQdHUvPlv906uAJpRn9S187JGbwmTSaIwWYuy+0t6AesUEpWxUODrynxGp/9wD3bWht9mTR0WG+t2EtS2N/fjhCv4M2NAAZg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN8PR12MB3108.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(366004)(396003)(136003)(376002)(451199024)(1800799009)(186009)(2906002)(83380400001)(6512007)(26005)(2616005)(66946007)(66476007)(316002)(44832011)(54906003)(66556008)(110136005)(8676002)(8936002)(4326008)(41300700001)(5660300002)(6666004)(6486002)(6506007)(53546011)(478600001)(38100700002)(31696002)(36756003)(31686004)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZEhKQVBraGNLcVlybHBZbE0yeFVnNTVKT1ArMVo0d1RGRDNHM3FHVVNBd0pm?=
 =?utf-8?B?aWJmSFIvQWFzb0RwN3JBQ1dvRmJsQlA4SHArL1JZSS9YNXdpb3BCRHRGZk9B?=
 =?utf-8?B?MmM4QVNvZXB0UzdWMnFJSVVuQUNQU2EvQVVUbUdDSTdicURmVlVkOVVxTmtP?=
 =?utf-8?B?bVJQellVUHZqWUV2V2lML2UzRE5DWlhMOFVRQ0cxSGF6L2JOR2FtZnNNWnpT?=
 =?utf-8?B?amdLSUtlTUhKdUJ2YWVJYTlBVkJENlhTN3ROM1dHQjVvYy81TUJ3MUhGSkVs?=
 =?utf-8?B?azJlMTlmRDhuYkNjUGM3OVZJWE5NTXFiaFNiTTBwZkVFNDB4VGZFZDZ1UXN5?=
 =?utf-8?B?bll0SlBtcnYvcFF3QktscC9iMkJrSkRJMk1TeklKcitDeE1QNEF2S1ljWnNn?=
 =?utf-8?B?YmwrT0RFMXR3UW4yM0ZhTHlYMmM1dlVlS3VmSXNNQnFpaEFMRHlmMkI5L3Z6?=
 =?utf-8?B?Qys0OWNrUHF2MDV4ZTU1ZGdOR1RTRmpFYWFMTVVIY1RSZmZiWkt0Qi9Tb2RL?=
 =?utf-8?B?eS92UlZzcW5mY2gzMW9hOTJwUnpEMWRCK2ZnUFZvUlFSL1RwS0RIV2RvTnRL?=
 =?utf-8?B?Uzc0bDdZaURlS3IwamFoOTRGTUdOL2lBYnZLYUlaQUV0dlZsbkNoeEw2UFdz?=
 =?utf-8?B?OFVjZENBK2k4VDRUWWpuWFdNRE5jNzZrTW1hcmltRlhkZHBwTGcvUEwrbmFJ?=
 =?utf-8?B?eXhXdHNBSjk3aWtBL2VtQXFlQUZadW1xNjlnTm9WeUlvc2V2MkJMdDUxS001?=
 =?utf-8?B?Zmx5TEkvaWllNW93Q0k4UFJUOUhMOEtBT2lHK1FYZ0YzVlNBL0ZucFVVU2FB?=
 =?utf-8?B?TEZtenIyaEpaUnFtaGEybEtXYUhFbFFqc1RYRjdVb25rekdYYkM2blg2VERY?=
 =?utf-8?B?NWVZaG56OFBhRnZPOVZYbFZ1VTU5cGdLL0JiSEF5RFd4azI3VVRZZUVMK0t2?=
 =?utf-8?B?VmRCaDYrSmRIbnhSRWQxTk5aUUR5eFV0ZDYzcVdhalVFZzhTZjBMbmp3VU0z?=
 =?utf-8?B?ZHlMS0luUld6U3ArZDREaERTWnJaV0E4V2Z2YmtRNnpTN2lETFJTTkhydXBl?=
 =?utf-8?B?Y0t1cTN1MHJVa28xbHc0K1pXOUFmUkd2dHcrY2FJR0FrbnNLOWFvT0tpSkdP?=
 =?utf-8?B?Q3dmSGRYMmdZVXNYVG5xVkFNSEsyOFhHbHJ0L0RpbUVWcFRPYklZMldpM1A2?=
 =?utf-8?B?Mjlwc01sUUlwem1IWjBFeGpiSnkrWjhzWjBxQ2V6Ui9CNlJUZjZYeVFyeWdE?=
 =?utf-8?B?ckVrT2JNNHduZTVkMmlTTnNpNDFKWGxLSDlObmhxQjRjb1A2NUhmSzZFbmZP?=
 =?utf-8?B?TldoNHlSbXRQaTF5VUVJVlZ5ZHJlSVZadEZQSVpHN2g3eUtiVkVjdjgwUHlU?=
 =?utf-8?B?OGhVempkYnNubzg3TjUreTlQVnBsbU1CbkpVVFFGZzZLRXRjYjYwSjkzM1E3?=
 =?utf-8?B?Wmh4N1ZldmVxZnM5M3ZhTy9FZUFRT2MxcnhiZ2I5elFneEt2QlNGWWJ6VERI?=
 =?utf-8?B?dVNtUDhRZ20rMUIxZUE4VXlsczRHajlySFo1YnZHZVA1Um00dmE5Z05TUTNi?=
 =?utf-8?B?Z1laWlg5WjlyQkhmd1ZRRXNBVTJvSVRiMTNvSDRvNzBVZ2dyaWxmVHNxWnYy?=
 =?utf-8?B?VXdXYkt6MXB0N2wxVzBmQkVBc29WczZWRFJ1TTVZd0pHVkpnRU10SlZ0c251?=
 =?utf-8?B?Q2tKMi8xeVlCSUdzaTlKdVhlZnhSbnQ3R05rNVBOT3U4aGpyZlhLY0ZEcWEv?=
 =?utf-8?B?QllaLzJQc05kcHF3Tm5tYkJzaTRiY0xNVGVVd21OekYwSGlHR0RJTVUwbFVo?=
 =?utf-8?B?dVVlKzBEMnBzUzNDc1N3bFM2YVVVSFN4RDdLRENRdXZISFFJb2FHdWZyMXRs?=
 =?utf-8?B?UEFEZVM4R0p4bnoxd3JOR2hJWFZPbnc1ME5vMUFldGNXQjRaVmNlcXY3eFdH?=
 =?utf-8?B?UDdMMGcybk5KMXFVRXlMSTFSYmY0MXE3VmR5Q1ZqRjYrQVhBSWlYQWQ2THB4?=
 =?utf-8?B?VENMWk1FQVlDTklOd3kvNFQyWnZ0Yzh6Rk0vN0g3VUc3YnI4ekdwZ2FhZ0hB?=
 =?utf-8?B?QmozOGpFRkdhOXR0K3RzTkdJSVVxdS9MZ1doL3FwaThVU3laZngyU1hxV1Qz?=
 =?utf-8?Q?qKhM19IYfkcNZkYsWm+AH6BXR?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 29c6245f-3876-4d3b-4fae-08dbb4757a5d
X-MS-Exchange-CrossTenant-AuthSource: BN8PR12MB3108.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2023 16:21:26.3277
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: QEOwIid6TlGyo5wKepY4BxOWbaMgOVudwVSb0V7ZEpidXhOjiLivf1Dhy0Copp8InrAojhJ22KyV5bDSBAbPBA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV3PR12MB9215

On 9/13/23 11:50 AM, Luck, Tony wrote:
>> Also, please note that the EDAC modules don't handle MCE events
>> directly. They act on information passed from the MCE subsystem.
>>
>> Furthermore, there are other EDAC modules that have the same !hypervisor
>> check, so why change only this one?
> 
> The older Intel EDAC drivers translated system physical addresses to DIMM
> addresses by digging around in the CONFIG and MMIO space of the memory
> controller devices. It would seem unwise for a VMM to give access to those
> addresses to a guest (in general ... perhaps OK for a Xen style "DOM0" guest that is
> handling many tasks for the VMM?).
> 
> What system resources do AMD EDAC drivers need access to? Could they
> work inside a guest?
>

The MCE decoder may access some newer MCA registers, or request info
from the MCE subsystem. But this is for informational error decoding. It
won't support any actions that a guest could take.

The AMD64 EDAC module reads system-specific memory controller registers
through non-architectural interfaces. So also unwise or not useful for a
guest to access.

Thanks,
Yazen


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601782.938040 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelC-0003gl-LE; Thu, 14 Sep 2023 05:19:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601782.938040; Thu, 14 Sep 2023 05:19:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelC-0003bG-6s; Thu, 14 Sep 2023 05:19:26 +0000
Received: by outflank-mailman (input) for mailman id 601782;
 Thu, 14 Sep 2023 05:19:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgel9-0001XI-By
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:23 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4296e55e-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:21 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:34 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:34 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4296e55e-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668761; x=1726204761;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=kFEO+uu6A5ft6HNZsGdUlo7JkWRDUia/sG5iL2BNrkQ=;
  b=b4rKuNUl8LwkD03YKrGx/d+ZtCDLf56FpkWw21hv/Cj8yVaxcxhxi5KA
   qtbiNaindmvtYuxIaB/d/bBsBLlYGmtkLmx95K6ggHKWYjb39SOzbkrFc
   rcZ4PYT8jxxtYRTCC+wkShHE9iin50nsBt7FlMC3c8IoucDxKJ0dQ63nO
   Sit7x9a3EfksyPef5Jj30vmJcMC6ApMm6IerYrR2aT7V4AC0pjFAUHG+m
   uMwNBvQvZV1VzlfkSPv7XUojKjCt3/DD/JfD8sSRE3y4DBWZfiZZHEkzh
   lgyVOmdxmF3LmISv+4141oY8TLoDhQHdzBEU7LCcNK7JfVQSPTLMxcgw4
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661196"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661196"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488767"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488767"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 10/38] x86/fred: Disable FRED by default in its early stage
Date: Wed, 13 Sep 2023 21:47:37 -0700
Message-Id: <20230914044805.301390-11-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

To enable FRED, a new kernel command line option "fred" needs to be added.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 Documentation/admin-guide/kernel-parameters.txt | 3 +++
 arch/x86/kernel/cpu/common.c                    | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index 0a1731a0f0ef..42def5cc7552 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -1525,6 +1525,9 @@
 			Warning: use of this parameter will taint the kernel
 			and may cause unknown problems.
 
+	fred		[X86-64]
+			Enable flexible return and event delivery
+
 	ftrace=[tracer]
 			[FTRACE] will set and start the specified tracer
 			as early as possible in order to facilitate early
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index 382d4e6b848d..317b4877e9c7 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -1486,6 +1486,9 @@ static void __init cpu_parse_early_param(void)
 	char *argptr = arg, *opt;
 	int arglen, taint = 0;
 
+	if (!cmdline_find_option_bool(boot_command_line, "fred"))
+		setup_clear_cpu_cap(X86_FEATURE_FRED);
+
 #ifdef CONFIG_X86_32
 	if (cmdline_find_option_bool(boot_command_line, "no387"))
 #ifdef CONFIG_MATH_EMULATION
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601779.938016 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelA-00032N-Cp; Thu, 14 Sep 2023 05:19:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601779.938016; Thu, 14 Sep 2023 05:19:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel9-0002zW-UC; Thu, 14 Sep 2023 05:19:23 +0000
Received: by outflank-mailman (input) for mailman id 601779;
 Thu, 14 Sep 2023 05:19:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgel7-0001X7-KW
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:21 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4236845a-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:20 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:33 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:32 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4236845a-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668760; x=1726204760;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=ZlGESG1ZjbxHp/2vGEpu7uzY2F9a0taEPQgxug8c1Qc=;
  b=lVm8C0kjG19XQ21YANxgl1yba2VmVOljO2N9aYvr04Y0warlFRAn2Rtp
   W/7eFOW8VSLWNFF19PJe7aSXwNwns2/owhCs28+4QvYKdObSqfNsp1VTL
   d2NQIOjIFRFrFPs4/P63nBl1p1iauBCXACqAbqHpooTqQGWbja97LApJR
   s/oBLyRoACfvrWP7C3/FyzW0jeu2hZ1fOpky/VmG2izrYMqjcRqjYCpzD
   jRQ0IRtsOvN5y6KKqf84aZPiM41nRsxOK3UkQheMk9XPjQbnyMNwObYPG
   W+wwFEezglsVoCuLtXTQxeTcBo6BIENiNmVL/d5YQvFTvgYgLlyJC8UEq
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661168"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661168"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488760"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488760"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 08/38] x86/cpufeatures: Add the cpu feature bit for FRED
Date: Wed, 13 Sep 2023 21:47:35 -0700
Message-Id: <20230914044805.301390-9-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Any FRED CPU will always have the following features as its baseline:
  1) LKGS, load attributes of the GS segment but the base address into
     the IA32_KERNEL_GS_BASE MSR instead of the GS segment’s descriptor
     cache.
  2) WRMSRNS, non-serializing WRMSR for faster MSR writes.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/cpufeatures.h       | 1 +
 arch/x86/kernel/cpu/cpuid-deps.c         | 2 ++
 tools/arch/x86/include/asm/cpufeatures.h | 1 +
 3 files changed, 4 insertions(+)

diff --git a/arch/x86/include/asm/cpufeatures.h b/arch/x86/include/asm/cpufeatures.h
index 330876d34b68..57ae93dc1e52 100644
--- a/arch/x86/include/asm/cpufeatures.h
+++ b/arch/x86/include/asm/cpufeatures.h
@@ -321,6 +321,7 @@
 #define X86_FEATURE_FZRM		(12*32+10) /* "" Fast zero-length REP MOVSB */
 #define X86_FEATURE_FSRS		(12*32+11) /* "" Fast short REP STOSB */
 #define X86_FEATURE_FSRC		(12*32+12) /* "" Fast short REP {CMPSB,SCASB} */
+#define X86_FEATURE_FRED		(12*32+17) /* Flexible Return and Event Delivery */
 #define X86_FEATURE_LKGS		(12*32+18) /* "" Load "kernel" (userspace) GS */
 #define X86_FEATURE_WRMSRNS		(12*32+19) /* "" Non-Serializing Write to Model Specific Register instruction */
 #define X86_FEATURE_AMX_FP16		(12*32+21) /* "" AMX fp16 Support */
diff --git a/arch/x86/kernel/cpu/cpuid-deps.c b/arch/x86/kernel/cpu/cpuid-deps.c
index e462c1d3800a..b7174209d855 100644
--- a/arch/x86/kernel/cpu/cpuid-deps.c
+++ b/arch/x86/kernel/cpu/cpuid-deps.c
@@ -82,6 +82,8 @@ static const struct cpuid_dep cpuid_deps[] = {
 	{ X86_FEATURE_XFD,			X86_FEATURE_XGETBV1   },
 	{ X86_FEATURE_AMX_TILE,			X86_FEATURE_XFD       },
 	{ X86_FEATURE_SHSTK,			X86_FEATURE_XSAVES    },
+	{ X86_FEATURE_FRED,			X86_FEATURE_LKGS      },
+	{ X86_FEATURE_FRED,			X86_FEATURE_WRMSRNS   },
 	{}
 };
 
diff --git a/tools/arch/x86/include/asm/cpufeatures.h b/tools/arch/x86/include/asm/cpufeatures.h
index 1b9d86ba5bc2..18bab7987d7f 100644
--- a/tools/arch/x86/include/asm/cpufeatures.h
+++ b/tools/arch/x86/include/asm/cpufeatures.h
@@ -317,6 +317,7 @@
 #define X86_FEATURE_FZRM		(12*32+10) /* "" Fast zero-length REP MOVSB */
 #define X86_FEATURE_FSRS		(12*32+11) /* "" Fast short REP STOSB */
 #define X86_FEATURE_FSRC		(12*32+12) /* "" Fast short REP {CMPSB,SCASB} */
+#define X86_FEATURE_FRED		(12*32+17) /* Flexible Return and Event Delivery */
 #define X86_FEATURE_LKGS		(12*32+18) /* "" Load "kernel" (userspace) GS */
 #define X86_FEATURE_WRMSRNS		(12*32+19) /* "" Non-Serializing Write to Model Specific Register instruction */
 #define X86_FEATURE_AMX_FP16		(12*32+21) /* "" AMX fp16 Support */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601774.937977 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel7-0002Gx-F8; Thu, 14 Sep 2023 05:19:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601774.937977; Thu, 14 Sep 2023 05:19:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel7-0002Gm-Bn; Thu, 14 Sep 2023 05:19:21 +0000
Received: by outflank-mailman (input) for mailman id 601774;
 Thu, 14 Sep 2023 05:19:19 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgel5-0001XI-Nv
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:19 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3e1b3943-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:15 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:29 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:28 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3e1b3943-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668755; x=1726204755;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=5bEJT87B98JS6iQ6LlrNVmLBQuK2BkIiNY3V5ZdVNuo=;
  b=TZcMfJVVKikul2XGgBirfZ38qdcLXNewEzDWWvl32buFHbfZvHMSAzB3
   Oty0PQLPI8K1npLJQB29J2r7L3G3JlxB9m1QeR8uLEZqCN5hISqB5Gsgp
   jBNQDwvt6HtEzqeHezx3vURXDU0lxVCFrwlFgJaZcvU/hGazGogI5wOPa
   wYG9YrNmzwFERtNxRu96L/hdzUb5uAZs12ZYvyI9NHABonjkVVzaa+zyI
   mIRi0i3m65bJoxBqpTPeV7KJ+Gx4Jt8bDGpUCMzeo43vgOjPdFV8ZmNpN
   23Vr/WvYzegkDzp5xv2yShynDs6Ut8xoBwRkVSmie+SWuM4GOtBKn+N4h
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661079"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661079"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488736"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488736"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 01/38] x86/cpufeatures: Add the cpu feature bit for WRMSRNS
Date: Wed, 13 Sep 2023 21:47:28 -0700
Message-Id: <20230914044805.301390-2-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

WRMSRNS is an instruction that behaves exactly like WRMSR, with
the only difference being that it is not a serializing instruction
by default. Under certain conditions, WRMSRNS may replace WRMSR to
improve performance.

Add the CPU feature bit for WRMSRNS.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/cpufeatures.h       | 1 +
 tools/arch/x86/include/asm/cpufeatures.h | 1 +
 2 files changed, 2 insertions(+)

diff --git a/arch/x86/include/asm/cpufeatures.h b/arch/x86/include/asm/cpufeatures.h
index 58cb9495e40f..330876d34b68 100644
--- a/arch/x86/include/asm/cpufeatures.h
+++ b/arch/x86/include/asm/cpufeatures.h
@@ -322,6 +322,7 @@
 #define X86_FEATURE_FSRS		(12*32+11) /* "" Fast short REP STOSB */
 #define X86_FEATURE_FSRC		(12*32+12) /* "" Fast short REP {CMPSB,SCASB} */
 #define X86_FEATURE_LKGS		(12*32+18) /* "" Load "kernel" (userspace) GS */
+#define X86_FEATURE_WRMSRNS		(12*32+19) /* "" Non-Serializing Write to Model Specific Register instruction */
 #define X86_FEATURE_AMX_FP16		(12*32+21) /* "" AMX fp16 Support */
 #define X86_FEATURE_AVX_IFMA            (12*32+23) /* "" Support for VPMADD52[H,L]UQ */
 #define X86_FEATURE_LAM			(12*32+26) /* Linear Address Masking */
diff --git a/tools/arch/x86/include/asm/cpufeatures.h b/tools/arch/x86/include/asm/cpufeatures.h
index 798e60b5454b..1b9d86ba5bc2 100644
--- a/tools/arch/x86/include/asm/cpufeatures.h
+++ b/tools/arch/x86/include/asm/cpufeatures.h
@@ -318,6 +318,7 @@
 #define X86_FEATURE_FSRS		(12*32+11) /* "" Fast short REP STOSB */
 #define X86_FEATURE_FSRC		(12*32+12) /* "" Fast short REP {CMPSB,SCASB} */
 #define X86_FEATURE_LKGS		(12*32+18) /* "" Load "kernel" (userspace) GS */
+#define X86_FEATURE_WRMSRNS		(12*32+19) /* "" Non-Serializing Write to Model Specific Register instruction */
 #define X86_FEATURE_AMX_FP16		(12*32+21) /* "" AMX fp16 Support */
 #define X86_FEATURE_AVX_IFMA            (12*32+23) /* "" Support for VPMADD52[H,L]UQ */
 #define X86_FEATURE_LAM			(12*32+26) /* Linear Address Masking */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601778.938007 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel9-0002rf-MJ; Thu, 14 Sep 2023 05:19:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601778.938007; Thu, 14 Sep 2023 05:19:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel9-0002qf-BM; Thu, 14 Sep 2023 05:19:23 +0000
Received: by outflank-mailman (input) for mailman id 601778;
 Thu, 14 Sep 2023 05:19:21 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgel7-0001XI-Bk
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:21 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 412e55ae-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:18 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:32 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:31 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 412e55ae-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668759; x=1726204759;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=CMTJxT2//f8H29ZvTGYte/VGxyI608K6t1MzstL2q6M=;
  b=bsXjXXIl6HM7QQMcjDNYMv8MBc9Ht0DMvrIX/oGFu0hN65CazXwQ8Lvi
   dqU2+SpGXDL3WjS/RMPnT3YgfM+YKUN7cRTsm0j0YkAALGF5VbMoaeT9G
   eRGf5X0Uj1FVhOiSHZZBPjjgZ16tlgqUPKO3GhklMK5gwq/LkzgpW0f0Q
   fbNAXUvRLsczDPk3Z3C0Q7GIohTVjTfk8zWFRtiXcOXDAKCqdO1/mBH2I
   212aTeLUuLevqL7x11rgMM4IQyK4olWJQMcDAIjwENWyulRXDPJJz5GhH
   0XQ9Mvt+szIBmtXrusIBLxKmupkWzLAKNSVnC7IZMzFOLCUPAJ/ciYguD
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661144"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661144"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488752"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488752"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 06/38] Documentation/x86/64: Add a documentation for FRED
Date: Wed, 13 Sep 2023 21:47:33 -0700
Message-Id: <20230914044805.301390-7-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Briefly introduce FRED, and its advantages compared to IDT.

Signed-off-by: Xin Li <xin3.li@intel.com>
---
 Documentation/arch/x86/x86_64/fred.rst  | 98 +++++++++++++++++++++++++
 Documentation/arch/x86/x86_64/index.rst |  1 +
 2 files changed, 99 insertions(+)
 create mode 100644 Documentation/arch/x86/x86_64/fred.rst

diff --git a/Documentation/arch/x86/x86_64/fred.rst b/Documentation/arch/x86/x86_64/fred.rst
new file mode 100644
index 000000000000..a4ebb95f92c8
--- /dev/null
+++ b/Documentation/arch/x86/x86_64/fred.rst
@@ -0,0 +1,98 @@
+.. SPDX-License-Identifier: GPL-2.0
+
+=========================================
+Flexible Return and Event Delivery (FRED)
+=========================================
+
+Overview
+========
+
+The FRED architecture defines simple new transitions that change
+privilege level (ring transitions). The FRED architecture was
+designed with the following goals:
+
+1) Improve overall performance and response time by replacing event
+   delivery through the interrupt descriptor table (IDT event
+   delivery) and event return by the IRET instruction with lower
+   latency transitions.
+
+2) Improve software robustness by ensuring that event delivery
+   establishes the full supervisor context and that event return
+   establishes the full user context.
+
+The new transitions defined by the FRED architecture are FRED event
+delivery and, for returning from events, two FRED return instructions.
+FRED event delivery can effect a transition from ring 3 to ring 0, but
+it is used also to deliver events incident to ring 0. One FRED
+instruction (ERETU) effects a return from ring 0 to ring 3, while the
+other (ERETS) returns while remaining in ring 0. Collectively, FRED
+event delivery and the FRED return instructions are FRED transitions.
+
+In addition to these transitions, the FRED architecture defines a new
+instruction (LKGS) for managing the state of the GS segment register.
+The LKGS instruction can be used by 64-bit operating systems that do
+not use the new FRED transitions.
+
+Furthermore, the FRED architecture is easy to extend for future CPU
+architectures.
+
+Software based event dispatching
+================================
+
+FRED operates differently from IDT in terms of event handling. Instead
+of directly dispatching an event to its handler based on the event
+vector, FRED requires the software to dispatch an event to its handler
+based on both the event's type and vector. Therefore, an event dispatch
+framework must be implemented to facilitate the event-to-handler
+dispatch process. The FRED event dispatch framework takes control
+once an event is delivered, and employs a two-level dispatch.
+
+The first level dispatching is event type based, and the second level
+dispatching is event vector based.
+
+Full supervisor/user context
+============================
+
+FRED event delivery atomically save and restore full supervisor/user
+context upon event delivery and return. Thus it avoids the problem of
+transient states due to %cr2 and/or %dr6, and it is no longer needed
+to handle all the ugly corner cases caused by half baked entry states.
+
+FRED allows explicit unblock of NMI with new event return instructions
+ERETS/ERETU, avoiding the mess caused by IRET which unconditionally
+unblocks NMI, e.g., when an exception happens during NMI handling.
+
+FRED always restores the full value of %rsp, thus ESPFIX is no longer
+needed when FRED is enabled.
+
+LKGS
+====
+
+LKGS behaves like the MOV to GS instruction except that it loads the
+base address into the IA32_KERNEL_GS_BASE MSR instead of the GS
+segment’s descriptor cache. With LKGS, it ends up with avoiding
+mucking with kernel GS, i.e., an operating system can always operate
+with its own GS base address.
+
+Because FRED event delivery from ring 3 swaps the value of the GS base
+address and that of the IA32_KERNEL_GS_BASE MSR, and ERETU swaps the
+value of the GS base address and that of the IA32_KERNEL_GS_BASE MSR,
+plus the introduction of LKGS instruction, the SWAPGS instruction is
+no longer needed when FRED is enabled, thus is disallowed (#UD).
+
+Stack levels
+============
+
+4 stack levels 0~3 are introduced to replace the nonreentrant IST for
+event handling, and each stack level should be configured to use a
+dedicated stack.
+
+The current stack level could be unchanged or go higher upon FRED
+event delivery. If unchanged, the CPU keeps using the current event
+stack. If higher, the CPU switches to a new event stack specified by
+the MSR of the new stack level, i.e., MSR_IA32_FRED_RSP{1,2,3}.
+
+Only execution of a FRED return instruction ERET{U,S}, could lower
+the current stack level, causing the CPU to switch back to the stack
+it was on before a previous event delivery that promoted the stack
+level.
diff --git a/Documentation/arch/x86/x86_64/index.rst b/Documentation/arch/x86/x86_64/index.rst
index a56070fc8e77..ad15e9bd623f 100644
--- a/Documentation/arch/x86/x86_64/index.rst
+++ b/Documentation/arch/x86/x86_64/index.rst
@@ -15,3 +15,4 @@ x86_64 Support
    cpu-hotplug-spec
    machinecheck
    fsgs
+   fred
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601776.937990 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel8-0002Sd-Aa; Thu, 14 Sep 2023 05:19:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601776.937990; Thu, 14 Sep 2023 05:19:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel8-0002Rd-2q; Thu, 14 Sep 2023 05:19:22 +0000
Received: by outflank-mailman (input) for mailman id 601776;
 Thu, 14 Sep 2023 05:19:20 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgel5-0001XI-Uu
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:19 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3f0a52cb-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:16 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:30 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:30 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3f0a52cb-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668756; x=1726204756;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=9qsPaAmdkqHl0KD85EKfAfnheAb+UY4gBzEbjksg7Tw=;
  b=nRUHIN0Mlmrz2tja9fiX4yuhSrC5RBbkI1D7fprYxzF71NHxt4nHitE9
   bY3otDvfT6egW1MvqpVPVRJz6BV6b10X6zxBJdEaMCZLF3GKQYLRAXi7k
   +edHcA9DB0+xfp8tQLWEjDEgZpbC/OFrXPfGEpoCyZGSE62npLGfrrNbH
   Hsui4Ska3mEAzYsn9C0S8yi9yCwqZ+lULF11VGu7j0RMMn4GSk0eGShCI
   TxEvkPO/uw3WVQLXGSpNE8ooSa/bZCfVv3DevBDfVptutU33OgV58J5gS
   71rEUA0orW1RqO1lJKSxCh7bgW1QdOQ0eySOPjcTdnAN9Ogene1lkbsdB
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661106"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661106"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488743"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488743"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Date: Wed, 13 Sep 2023 21:47:30 -0700
Message-Id: <20230914044805.301390-4-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add an always inline API __wrmsrns() to embed the WRMSRNS instruction
into the code.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/msr.h | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/arch/x86/include/asm/msr.h b/arch/x86/include/asm/msr.h
index 65ec1965cd28..c284ff9ebe67 100644
--- a/arch/x86/include/asm/msr.h
+++ b/arch/x86/include/asm/msr.h
@@ -97,6 +97,19 @@ static __always_inline void __wrmsr(unsigned int msr, u32 low, u32 high)
 		     : : "c" (msr), "a"(low), "d" (high) : "memory");
 }
 
+/*
+ * WRMSRNS behaves exactly like WRMSR with the only difference being
+ * that it is not a serializing instruction by default.
+ */
+static __always_inline void __wrmsrns(u32 msr, u32 low, u32 high)
+{
+	/* Instruction opcode for WRMSRNS; supported in binutils >= 2.40. */
+	asm volatile("1: .byte 0x0f,0x01,0xc6\n"
+		     "2:\n"
+		     _ASM_EXTABLE_TYPE(1b, 2b, EX_TYPE_WRMSR)
+		     : : "c" (msr), "a"(low), "d" (high));
+}
+
 #define native_rdmsr(msr, val1, val2)			\
 do {							\
 	u64 __val = __rdmsr((msr));			\
@@ -297,6 +310,11 @@ do {							\
 
 #endif	/* !CONFIG_PARAVIRT_XXL */
 
+static __always_inline void wrmsrns(u32 msr, u64 val)
+{
+	__wrmsrns(msr, val, val >> 32);
+}
+
 /*
  * 64-bit version of wrmsr_safe():
  */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601781.938032 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelB-0003Qc-O8; Thu, 14 Sep 2023 05:19:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601781.938032; Thu, 14 Sep 2023 05:19:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelB-0003NK-4c; Thu, 14 Sep 2023 05:19:25 +0000
Received: by outflank-mailman (input) for mailman id 601781;
 Thu, 14 Sep 2023 05:19:22 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgel8-0001XI-MN
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:22 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4251e417-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:20 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:34 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:33 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4251e417-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668760; x=1726204760;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=lOSfyYhj6fFAdH4YWvO21Rsoh1uWrkdsP+wGjxpQoYw=;
  b=e0E+ypmtQ3F1lqdO6RrClcVI4VMrFjkMuXR7Fi6AbXX9Ny5XfeZqffQQ
   nNuo3H6vl5O8OwZNrK8TV/JZDiMeG0f6udxyDsio7SlGPwmhSbXQahOV/
   NdYQvK3F6XVWPhjwb98VIw4NDsEk+zz8c3V9QiQJFH38FTxaowhe/Seoi
   yxzJ8p3w5bbmBdBxaMuHrM7GNGB81oMHKkr9b8sZj0EOhX+1nD8ZQTa7T
   K59/zl0C1VdqtzE5KW/RlJXr1r+q5gPIa1qSKVjApb+C53m2dUl4DzU3m
   au6LXbh5ujoLVd5yV6b2mCfyTJuZaAFc/t/56XzdTDFHc/P71m7Q+sJNV
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661186"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661186"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488764"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488764"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 09/38] x86/fred: Disable FRED support if CONFIG_X86_FRED is disabled
Date: Wed, 13 Sep 2023 21:47:36 -0700
Message-Id: <20230914044805.301390-10-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add CONFIG_X86_FRED to <asm/disabled-features.h> to make
cpu_feature_enabled() work correctly with FRED.

Originally-by: Megha Dey <megha.dey@intel.com>
Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/disabled-features.h       | 8 +++++++-
 tools/arch/x86/include/asm/disabled-features.h | 8 +++++++-
 2 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/arch/x86/include/asm/disabled-features.h b/arch/x86/include/asm/disabled-features.h
index 702d93fdd10e..3cde57cb5093 100644
--- a/arch/x86/include/asm/disabled-features.h
+++ b/arch/x86/include/asm/disabled-features.h
@@ -117,6 +117,12 @@
 #define DISABLE_IBT	(1 << (X86_FEATURE_IBT & 31))
 #endif
 
+#ifdef CONFIG_X86_FRED
+# define DISABLE_FRED	0
+#else
+# define DISABLE_FRED	(1 << (X86_FEATURE_FRED & 31))
+#endif
+
 /*
  * Make sure to add features to the correct mask
  */
@@ -134,7 +140,7 @@
 #define DISABLED_MASK11	(DISABLE_RETPOLINE|DISABLE_RETHUNK|DISABLE_UNRET| \
 			 DISABLE_CALL_DEPTH_TRACKING|DISABLE_USER_SHSTK)
 #define DISABLED_MASK12	(DISABLE_LAM)
-#define DISABLED_MASK13	0
+#define DISABLED_MASK13	(DISABLE_FRED)
 #define DISABLED_MASK14	0
 #define DISABLED_MASK15	0
 #define DISABLED_MASK16	(DISABLE_PKU|DISABLE_OSPKE|DISABLE_LA57|DISABLE_UMIP| \
diff --git a/tools/arch/x86/include/asm/disabled-features.h b/tools/arch/x86/include/asm/disabled-features.h
index fafe9be7a6f4..d540ecdd8812 100644
--- a/tools/arch/x86/include/asm/disabled-features.h
+++ b/tools/arch/x86/include/asm/disabled-features.h
@@ -105,6 +105,12 @@
 # define DISABLE_TDX_GUEST	(1 << (X86_FEATURE_TDX_GUEST & 31))
 #endif
 
+#ifdef CONFIG_X86_FRED
+# define DISABLE_FRED	0
+#else
+# define DISABLE_FRED	(1 << (X86_FEATURE_FRED & 31))
+#endif
+
 /*
  * Make sure to add features to the correct mask
  */
@@ -122,7 +128,7 @@
 #define DISABLED_MASK11	(DISABLE_RETPOLINE|DISABLE_RETHUNK|DISABLE_UNRET| \
 			 DISABLE_CALL_DEPTH_TRACKING)
 #define DISABLED_MASK12	(DISABLE_LAM)
-#define DISABLED_MASK13	0
+#define DISABLED_MASK13	(DISABLE_FRED)
 #define DISABLED_MASK14	0
 #define DISABLED_MASK15	0
 #define DISABLED_MASK16	(DISABLE_PKU|DISABLE_OSPKE|DISABLE_LA57|DISABLE_UMIP| \
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601780.938021 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelA-0003A7-Qu; Thu, 14 Sep 2023 05:19:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601780.938021; Thu, 14 Sep 2023 05:19:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelA-00038v-CA; Thu, 14 Sep 2023 05:19:24 +0000
Received: by outflank-mailman (input) for mailman id 601780;
 Thu, 14 Sep 2023 05:19:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgel8-0001X7-PI
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:22 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 43018c21-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:22 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:35 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:34 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 43018c21-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668762; x=1726204762;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=i5VPM7WJy8QX3AfDJPn+y86GzsjxiQoeNBcvUeRwUoQ=;
  b=B4OPDD7fYTdf8TQCmhnUXfcw9yoQE1iCgeeN9ZkDoj8NgMoa3fuyeWdT
   9GGTYLT7QCgXQzK+PPi5t+4d/p+glop8VrjASSrCToH2T5zdwQQrop5VD
   LqMnzPYHXAheDItCGYwKmcleXyE1X3OPIpJzqFv9/57unUh4ykGoLsd+y
   R/BDDcFzDCV7NQHbtFSIfn98PyT9Ld/xBZlSWO4USjfQ4kY7epGrMlJaT
   KtmdG6UUrBRurvA2qXqn6BVH1aqss2UQZeltMqmSoOZ74ezVGfa+K4gzO
   +DCohTPO88rByUIvqTRK5KDmx9ZXjrNL6LfhTNsTu9gRfUoACF/DP7Iti
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661209"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661209"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488771"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488771"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 11/38] x86/opcode: Add ERET[US] instructions to the x86 opcode map
Date: Wed, 13 Sep 2023 21:47:38 -0700
Message-Id: <20230914044805.301390-12-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

ERETU returns from an event handler while making a transition to ring 3,
and ERETS returns from an event handler while staying in ring 0.

Add instruction opcodes used by ERET[US] to the x86 opcode map; opcode
numbers are per FRED spec v5.0.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
Reviewed-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
---
 arch/x86/lib/x86-opcode-map.txt       | 2 +-
 tools/arch/x86/lib/x86-opcode-map.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/x86/lib/x86-opcode-map.txt b/arch/x86/lib/x86-opcode-map.txt
index 1efe1d9bf5ce..12af572201a2 100644
--- a/arch/x86/lib/x86-opcode-map.txt
+++ b/arch/x86/lib/x86-opcode-map.txt
@@ -1052,7 +1052,7 @@ EndTable
 
 GrpTable: Grp7
 0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B) | WRMSRNS (110),(11B)
-1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B)
+1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B) | ERETU (F3),(010),(11B) | ERETS (F2),(010),(11B)
 2: LGDT Ms | XGETBV (000),(11B) | XSETBV (001),(11B) | VMFUNC (100),(11B) | XEND (101)(11B) | XTEST (110)(11B) | ENCLU (111),(11B)
 3: LIDT Ms
 4: SMSW Mw/Rv
diff --git a/tools/arch/x86/lib/x86-opcode-map.txt b/tools/arch/x86/lib/x86-opcode-map.txt
index 1efe1d9bf5ce..12af572201a2 100644
--- a/tools/arch/x86/lib/x86-opcode-map.txt
+++ b/tools/arch/x86/lib/x86-opcode-map.txt
@@ -1052,7 +1052,7 @@ EndTable
 
 GrpTable: Grp7
 0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B) | WRMSRNS (110),(11B)
-1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B)
+1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B) | ERETU (F3),(010),(11B) | ERETS (F2),(010),(11B)
 2: LGDT Ms | XGETBV (000),(11B) | XSETBV (001),(11B) | VMFUNC (100),(11B) | XEND (101)(11B) | XTEST (110)(11B) | ENCLU (111),(11B)
 3: LIDT Ms
 4: SMSW Mw/Rv
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601771.937948 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel4-0001XQ-MN; Thu, 14 Sep 2023 05:19:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601771.937948; Thu, 14 Sep 2023 05:19:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel4-0001XJ-J9; Thu, 14 Sep 2023 05:19:18 +0000
Received: by outflank-mailman (input) for mailman id 601771;
 Thu, 14 Sep 2023 05:19:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgel2-0001X7-Ek
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:16 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3cdbe3bc-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:13 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:29 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:28 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3cdbe3bc-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668753; x=1726204753;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=Ut3SQsni6+YOQ98PuGqQ9Bg1pmgPTft5nlrIOiIGVkM=;
  b=mylPHo9WiZCvu/z4UriJ8haLK44+Gl/ODNBPWIAo55R5iIirRkazFnWR
   QEE8dh4jORAIVCJu/9Br6dpMjHOW7tOCUKbJipdhD6uon7X808vEl+iCY
   HEtv1Jz+L1TISIR0SDYUoiSfVyUBf1zwFn8dVWaXOBkYXJYGqdf1dMcg2
   pUjtyZChdZoEzflHCEYKCv8Ij/rpQdTQmj77Kv6JzYi8zc/su/nBxA77E
   3zR62I/x9gb+m5uXjbdnpUHGmRT4/JNlfo8KSbb49Nds/++pKGKdpHGcV
   UAaNBwnNlkOslqbHleuJ0t97zVEUFzXhs8H5EEGLPE8c+j+iLxFrHeABw
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661064"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661064"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488733"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488733"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 00/38] x86: enable FRED for x86-64
Date: Wed, 13 Sep 2023 21:47:27 -0700
Message-Id: <20230914044805.301390-1-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This patch set enables the Intel flexible return and event delivery
(FRED) architecture for x86-64.

The FRED architecture defines simple new transitions that change
privilege level (ring transitions). The FRED architecture was
designed with the following goals:

1) Improve overall performance and response time by replacing event
   delivery through the interrupt descriptor table (IDT event
   delivery) and event return by the IRET instruction with lower
   latency transitions.

2) Improve software robustness by ensuring that event delivery
   establishes the full supervisor context and that event return
   establishes the full user context.

The new transitions defined by the FRED architecture are FRED event
delivery and, for returning from events, two FRED return instructions.
FRED event delivery can effect a transition from ring 3 to ring 0, but
it is used also to deliver events incident to ring 0. One FRED
instruction (ERETU) effects a return from ring 0 to ring 3, while the
other (ERETS) returns while remaining in ring 0. Collectively, FRED
event delivery and the FRED return instructions are FRED transitions.

Search for the latest FRED spec in most search engines with this search pattern:

  site:intel.com FRED (flexible return and event delivery) specification

As of now there is no publicly avaiable CPU supporting FRED, thus the Intel
Simics® Simulator is used as software development and testing vehicles. And
it can be downloaded from:
  https://www.intel.com/content/www/us/en/developer/articles/tool/simics-simulator.html

To enable FRED, the Simics package 8112 QSP-CPU needs to be installed with CPU
model configured as:
	$cpu_comp_class = "x86-experimental-fred"


Changes since v9:
* Set unused sysvec table entries to fred_handle_spurious_interrupt()
  in fred_complete_exception_setup() (Thomas Gleixner).
* Shove the whole thing into arch/x86/entry/entry_64_fred.S for invoking
  external_interrupt() and fred_exc_nmi() (Sean Christopherson).
* Correct and improve a few comments (Sean Christopherson).
* Merge the two IRQ/NMI asm entries into one as it's fine to invoke
  noinstr code from regular code (Thomas Gleixner).
* Setup the long mode and NMI flags in the augmented SS field of FRED
  stack frame in C instead of asm (Thomas Gleixner).
* Don't use jump tables, indirect jumps are expensive (Thomas Gleixner).
* Except #NMI/#DB/#MCE, FRED really can share the exception handlers
  with IDT (Thomas Gleixner).
* Avoid the sysvec_* idt_entry muck, do it at a central place, reuse code
  instead of blindly copying it, which breaks the performance optimized
  sysvec entries like reschedule_ipi (Thomas Gleixner).
* Add asm_ prefix to FRED asm entry points (Thomas Gleixner).
* Disable #DB to avoid endless recursion and stack overflow when a
  watchpoint/breakpoint is set in the code path which is executed by
  #DB handler (Thomas Gleixner).
* Introduce a new structure fred_ss to denote the FRED flags above SS
  selector, which avoids FRED_SSX_ macros and makes the code simpler
  and easier to read (Thomas Gleixner).
* Use type u64 to define FRED bit fields instead of type unsigned int
  (Thomas Gleixner).
* Avoid a type cast by defining X86_CR4_FRED as 0 on 32-bit (Thomas
  Gleixner).
* Add the WRMSRNS instruction support (Thomas Gleixner).

Changes since v8:
* Move the FRED initialization patch after all required changes are in
  place (Thomas Gleixner).
* Don't do syscall early out in fred_entry_from_user() before there are
  proper performance numbers and justifications (Thomas Gleixner).
* Add the control exception handler to the FRED exception handler table
  (Thomas Gleixner).
* Introduce a macro sysvec_install() to derive the asm handler name from
  a C handler, which simplifies the code and avoids an ugly typecast
  (Thomas Gleixner).
* Remove junk code that assumes no local APIC on x86_64 (Thomas Gleixner).
* Put IDTENTRY changes in a separate patch (Thomas Gleixner).
* Use high-order 48 bits above the lowest 16 bit SS only when FRED is
  enabled (Thomas Gleixner).
* Explain why writing directly to the IA32_KERNEL_GS_BASE MSR is
  doing the right thing (Thomas Gleixner).
* Reword some patch descriptions (Thomas Gleixner).
* Add a new macro VMX_DO_FRED_EVENT_IRQOFF for FRED instead of
  refactoring VMX_DO_EVENT_IRQOFF (Sean Christopherson).
* Do NOT use a trampoline, just LEA+PUSH the return RIP, PUSH the error
  code, and jump to the FRED kernel entry point for NMI or call
  external_interrupt() for IRQs (Sean Christopherson).
* Call external_interrupt() only when FRED is enabled, and convert the
  non-FRED handling to external_interrupt() after FRED lands (Sean
  Christopherson).
* Use __packed instead of __attribute__((__packed__)) (Borislav Petkov).
* Put all comments above the members, like the rest of the file does
  (Borislav Petkov).
* Reflect the FRED spec 5.0 change that ERETS and ERETU add 8 to %rsp
  before popping the return context from the stack.
* Reflect stack frame definition changes from FRED spec 3.0 to 5.0.
* Add ENDBR to the FRED_ENTER asm macro after kernel IBT is added to
  FRED base line in FRED spec 5.0.
* Add a document which briefly introduces FRED features.
* Remove 2 patches, "allow FRED systems to use interrupt vectors
  0x10-0x1f" and "allow dynamic stack frame size", from this patch set,
  as they are "optimizations" only.
* Send 2 patches, "header file for event types" and "do not modify the
  DPL bits for a null selector", as pre-FRED patches.

Changes since v7:
* Always call external_interrupt() for VMX IRQ handling on x86_64, thus avoid
  re-entering the noinstr code.
* Create a FRED stack frame when FRED is compiled-in but not enabled, which
  uses some extra stack space but simplifies the code.
* Add a log message when FRED is enabled.

Changes since v6:
* Add a comment to explain why it is safe to write to a previous FRED stack
  frame. (Lai Jiangshan).
* Export fred_entrypoint_kernel(), required when kvm-intel built as a module.
* Reserve a REDZONE for CALL emulation and Align RSP to a 64-byte boundary
  before pushing a new FRED stack frame.
* Replace pt_regs csx flags prefix FRED_CSL_ with FRED_CSX_.

Changes since v5:
* Initialize system_interrupt_handlers with dispatch_table_spurious_interrupt()
  instead of NULL to get rid of a branch (Peter Zijlstra).
* Disallow #DB inside #MCE for robustness sake (Peter Zijlstra).
* Add a comment for FRED stack level settings (Lai Jiangshan).
* Move the NMI bit from an invalid stack frame, which caused ERETU to fault,
  to the fault handler's stack frame, thus to unblock NMI ASAP if NMI is blocked
  (Lai Jiangshan).
* Refactor VMX_DO_EVENT_IRQOFF to handle IRQ/NMI in IRQ/NMI induced VM exits
  when FRED is enabled (Sean Christopherson).

Changes since v4:
* Do NOT use the term "injection", which in the KVM context means to
  reinject an event into the guest (Sean Christopherson).
* Add the explanation of why to execute "int $2" to invoke the NMI handler
  in NMI caused VM exits (Sean Christopherson).
* Use cs/ss instead of csx/ssx when initializing the pt_regs structure
  for calling external_interrupt(), otherwise it breaks i386 build.

Changes since v3:
* Call external_interrupt() to handle IRQ in IRQ caused VM exits.
* Execute "int $2" to handle NMI in NMI caused VM exits.
* Rename csl/ssl of the pt_regs structure to csx/ssx (x for extended)
  (Andrew Cooper).

Changes since v2:
* Improve comments for changes in arch/x86/include/asm/idtentry.h.

Changes since v1:
* call irqentry_nmi_{enter,exit}() in both IDT and FRED debug fault kernel
  handler (Peter Zijlstra).
* Initialize a FRED exception handler to fred_bad_event() instead of NULL
  if no FRED handler defined for an exception vector (Peter Zijlstra).
* Push calling irqentry_{enter,exit}() and instrumentation_{begin,end}()
  down into individual FRED exception handlers, instead of in the dispatch
  framework (Peter Zijlstra).


H. Peter Anvin (Intel) (22):
  x86/fred: Add Kconfig option for FRED (CONFIG_X86_FRED)
  x86/cpufeatures: Add the cpu feature bit for FRED
  x86/fred: Disable FRED support if CONFIG_X86_FRED is disabled
  x86/opcode: Add ERET[US] instructions to the x86 opcode map
  x86/objtool: Teach objtool about ERET[US]
  x86/cpu: Add X86_CR4_FRED macro
  x86/cpu: Add MSR numbers for FRED configuration
  x86/fred: Add a new header file for FRED definitions
  x86/fred: Reserve space for the FRED stack frame
  x86/fred: Update MSR_IA32_FRED_RSP0 during task switch
  x86/fred: Disallow the swapgs instruction when FRED is enabled
  x86/fred: No ESPFIX needed when FRED is enabled
  x86/fred: Allow single-step trap and NMI when starting a new task
  x86/fred: Make exc_page_fault() work for FRED
  x86/fred: Add a debug fault entry stub for FRED
  x86/fred: Add a NMI entry stub for FRED
  x86/fred: FRED entry/exit and dispatch code
  x86/traps: Add sysvec_install() to install a system interrupt handler
  x86/fred: Let ret_from_fork_asm() jmp to asm_fred_exit_user when FRED
    is enabled
  x86/fred: Add fred_syscall_init()
  x86/fred: Add FRED initialization functions
  x86/fred: Invoke FRED initialization code to enable FRED

Peter Zijlstra (Intel) (1):
  x86/entry/calling: Allow PUSH_AND_CLEAR_REGS being used beyond actual
    entry code

Xin Li (15):
  x86/cpufeatures: Add the cpu feature bit for WRMSRNS
  x86/opcode: Add the WRMSRNS instruction to the x86 opcode map
  x86/msr: Add the WRMSRNS instruction support
  x86/entry: Remove idtentry_sysvec from entry_{32,64}.S
  x86/trapnr: Add event type macros to <asm/trapnr.h>
  Documentation/x86/64: Add a documentation for FRED
  x86/fred: Disable FRED by default in its early stage
  x86/ptrace: Cleanup the definition of the pt_regs structure
  x86/ptrace: Add FRED additional information to the pt_regs structure
  x86/idtentry: Incorporate definitions/declarations of the FRED entries
  x86/fred: Add a machine check entry stub for FRED
  x86/fred: Fixup fault on ERETU by jumping to fred_entrypoint_user
  x86/entry: Add fred_entry_from_kvm() for VMX to handle IRQ/NMI
  KVM: VMX: Call fred_entry_from_kvm() for IRQ/NMI handling
  x86/syscall: Split IDT syscall setup code into idt_syscall_init()

 .../admin-guide/kernel-parameters.txt         |   3 +
 Documentation/arch/x86/x86_64/fred.rst        |  98 ++++++
 Documentation/arch/x86/x86_64/index.rst       |   1 +
 arch/x86/Kconfig                              |   9 +
 arch/x86/entry/Makefile                       |   5 +-
 arch/x86/entry/calling.h                      |  15 +-
 arch/x86/entry/entry_32.S                     |   4 -
 arch/x86/entry/entry_64.S                     |  14 +-
 arch/x86/entry/entry_64_fred.S                | 129 ++++++++
 arch/x86/entry/entry_fred.c                   | 279 ++++++++++++++++++
 arch/x86/entry/vsyscall/vsyscall_64.c         |   2 +-
 arch/x86/include/asm/asm-prototypes.h         |   1 +
 arch/x86/include/asm/cpufeatures.h            |   2 +
 arch/x86/include/asm/desc.h                   |   2 -
 arch/x86/include/asm/disabled-features.h      |   8 +-
 arch/x86/include/asm/extable_fixup_types.h    |   4 +-
 arch/x86/include/asm/fred.h                   |  97 ++++++
 arch/x86/include/asm/idtentry.h               |  88 +++++-
 arch/x86/include/asm/msr-index.h              |  13 +-
 arch/x86/include/asm/msr.h                    |  18 ++
 arch/x86/include/asm/ptrace.h                 |  85 +++++-
 arch/x86/include/asm/switch_to.h              |   8 +-
 arch/x86/include/asm/thread_info.h            |  12 +-
 arch/x86/include/asm/trapnr.h                 |  12 +
 arch/x86/include/asm/vmx.h                    |  17 +-
 arch/x86/include/uapi/asm/processor-flags.h   |   7 +
 arch/x86/kernel/Makefile                      |   1 +
 arch/x86/kernel/cpu/acrn.c                    |   4 +-
 arch/x86/kernel/cpu/common.c                  |  53 +++-
 arch/x86/kernel/cpu/cpuid-deps.c              |   2 +
 arch/x86/kernel/cpu/mce/core.c                |  26 ++
 arch/x86/kernel/cpu/mshyperv.c                |  15 +-
 arch/x86/kernel/espfix_64.c                   |   8 +
 arch/x86/kernel/fred.c                        |  59 ++++
 arch/x86/kernel/idt.c                         |   4 +-
 arch/x86/kernel/irqinit.c                     |   7 +-
 arch/x86/kernel/kvm.c                         |   2 +-
 arch/x86/kernel/nmi.c                         |  28 ++
 arch/x86/kernel/process_64.c                  |  67 ++++-
 arch/x86/kernel/traps.c                       |  48 ++-
 arch/x86/kvm/vmx/vmx.c                        |  12 +-
 arch/x86/lib/x86-opcode-map.txt               |   4 +-
 arch/x86/mm/extable.c                         |  79 +++++
 arch/x86/mm/fault.c                           |   5 +-
 drivers/xen/events/events_base.c              |   2 +-
 tools/arch/x86/include/asm/cpufeatures.h      |   2 +
 .../arch/x86/include/asm/disabled-features.h  |   8 +-
 tools/arch/x86/include/asm/msr-index.h        |  13 +-
 tools/arch/x86/lib/x86-opcode-map.txt         |   4 +-
 tools/objtool/arch/x86/decode.c               |  19 +-
 50 files changed, 1291 insertions(+), 114 deletions(-)
 create mode 100644 Documentation/arch/x86/x86_64/fred.rst
 create mode 100644 arch/x86/entry/entry_64_fred.S
 create mode 100644 arch/x86/entry/entry_fred.c
 create mode 100644 arch/x86/include/asm/fred.h
 create mode 100644 arch/x86/kernel/fred.c

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601772.937953 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel4-0001ZP-Ul; Thu, 14 Sep 2023 05:19:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601772.937953; Thu, 14 Sep 2023 05:19:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel4-0001Yj-PH; Thu, 14 Sep 2023 05:19:18 +0000
Received: by outflank-mailman (input) for mailman id 601772;
 Thu, 14 Sep 2023 05:19:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgel3-0001X7-5c
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:17 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3f7bdddf-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:16 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:30 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:29 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3f7bdddf-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668756; x=1726204756;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=kr0CN67v2SsYJemD+2TL2DrONkvf6IluzdZd2yzKUPQ=;
  b=ezwGlEpHYeeZ/0Idm88wug8+t++G2vPBEpedG3NQapaU3ygxRmoqwxOJ
   75w29q7zPmCj8hE6n1W3T3ZOhAnXs9noar78zRvbBgcuclheWQBIylIOv
   bNEtLEr5ssNllwGHvb8IYNu+OwucG56m8oJTv0AKgPEK9GxPZeVwhRkmT
   cmKvCzGPHeIMTDvhgfjW31azofYaEHeLEhCatEWF6+z/CsCmT/bgNIeD1
   m+GcN1K3lPjiDynCch986JkHJiae5wUKCyFTFJBl2nOpfDUZSkDSWzYYs
   w+ztFmo7gZMpBuYNhwy8F6wIyhijnWuRu0QQhom21tgFGWGDO1yRrucTv
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661091"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661091"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488739"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488739"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 02/38] x86/opcode: Add the WRMSRNS instruction to the x86 opcode map
Date: Wed, 13 Sep 2023 21:47:29 -0700
Message-Id: <20230914044805.301390-3-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add the opcode used by WRMSRNS, which is the non-serializing version of
WRMSR and may replace it to improve performance, to the x86 opcode map.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/lib/x86-opcode-map.txt       | 2 +-
 tools/arch/x86/lib/x86-opcode-map.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/x86/lib/x86-opcode-map.txt b/arch/x86/lib/x86-opcode-map.txt
index 5168ee0360b2..1efe1d9bf5ce 100644
--- a/arch/x86/lib/x86-opcode-map.txt
+++ b/arch/x86/lib/x86-opcode-map.txt
@@ -1051,7 +1051,7 @@ GrpTable: Grp6
 EndTable
 
 GrpTable: Grp7
-0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B)
+0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B) | WRMSRNS (110),(11B)
 1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B)
 2: LGDT Ms | XGETBV (000),(11B) | XSETBV (001),(11B) | VMFUNC (100),(11B) | XEND (101)(11B) | XTEST (110)(11B) | ENCLU (111),(11B)
 3: LIDT Ms
diff --git a/tools/arch/x86/lib/x86-opcode-map.txt b/tools/arch/x86/lib/x86-opcode-map.txt
index 5168ee0360b2..1efe1d9bf5ce 100644
--- a/tools/arch/x86/lib/x86-opcode-map.txt
+++ b/tools/arch/x86/lib/x86-opcode-map.txt
@@ -1051,7 +1051,7 @@ GrpTable: Grp6
 EndTable
 
 GrpTable: Grp7
-0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B)
+0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B) | WRMSRNS (110),(11B)
 1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B)
 2: LGDT Ms | XGETBV (000),(11B) | XSETBV (001),(11B) | VMFUNC (100),(11B) | XEND (101)(11B) | XTEST (110)(11B) | ENCLU (111),(11B)
 3: LIDT Ms
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601777.937998 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel8-0002cG-R8; Thu, 14 Sep 2023 05:19:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601777.937998; Thu, 14 Sep 2023 05:19:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel8-0002aT-Ho; Thu, 14 Sep 2023 05:19:22 +0000
Received: by outflank-mailman (input) for mailman id 601777;
 Thu, 14 Sep 2023 05:19:20 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgel6-0001XI-DV
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:20 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 40f3d8c9-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:18 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:31 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:30 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 40f3d8c9-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668758; x=1726204758;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=5CJMqB3+DFFPkJgP2JbGGqYZrsstVDR6C7ywuBVlQe8=;
  b=UDGPezT2r1lItN9QmHWJFF8+q7GloYICmG61JL4rHuFMkaLFs64hHeLs
   c9kfIruKb3oX/7Wlpqq8eeMp3rNqQiLmYh7KX8D8O/vaxXR7bXLmIexnl
   43Dj9YGMb5luqJdppXG3vrbhtK6FmTV5WQY6RDvjACnH4scXLa79NzTIq
   q76DCj3BHQ3KCDg5aPWhq6ebIrSQ/JlzWZ05gNC1z0Ya+opZ+87vD0qcL
   fTVo8bNPGcu9fgjPRbp93iN8jBlmu/zT0yMABxIrEy6ubPylUEh8/rArQ
   RfA/SLgw5+6J5jDZ8xtw/F3C09m3GJ9XpWvZV9RSmRzW8Cb8Gryyo3Gs6
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661118"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661118"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488746"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488746"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 04/38] x86/entry: Remove idtentry_sysvec from entry_{32,64}.S
Date: Wed, 13 Sep 2023 21:47:31 -0700
Message-Id: <20230914044805.301390-5-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

idtentry_sysvec is really just DECLARE_IDTENTRY defined in
<asm/idtentry.h>, no need to define it separately.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/entry/entry_32.S       | 4 ----
 arch/x86/entry/entry_64.S       | 8 --------
 arch/x86/include/asm/idtentry.h | 2 +-
 3 files changed, 1 insertion(+), 13 deletions(-)

diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S
index 6e6af42e044a..e0f22ad8ff7e 100644
--- a/arch/x86/entry/entry_32.S
+++ b/arch/x86/entry/entry_32.S
@@ -649,10 +649,6 @@ SYM_CODE_START_LOCAL(asm_\cfunc)
 SYM_CODE_END(asm_\cfunc)
 .endm
 
-.macro idtentry_sysvec vector cfunc
-	idtentry \vector asm_\cfunc \cfunc has_error_code=0
-.endm
-
 /*
  * Include the defines which emit the idt entries which are shared
  * shared between 32 and 64 bit and emit the __irqentry_text_* markers
diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
index 43606de22511..9cdb61ea91de 100644
--- a/arch/x86/entry/entry_64.S
+++ b/arch/x86/entry/entry_64.S
@@ -432,14 +432,6 @@ SYM_CODE_END(\asmsym)
 	idtentry \vector asm_\cfunc \cfunc has_error_code=1
 .endm
 
-/*
- * System vectors which invoke their handlers directly and are not
- * going through the regular common device interrupt handling code.
- */
-.macro idtentry_sysvec vector cfunc
-	idtentry \vector asm_\cfunc \cfunc has_error_code=0
-.endm
-
 /**
  * idtentry_mce_db - Macro to generate entry stubs for #MC and #DB
  * @vector:		Vector number
diff --git a/arch/x86/include/asm/idtentry.h b/arch/x86/include/asm/idtentry.h
index 05fd175cec7d..cfca68f6cb84 100644
--- a/arch/x86/include/asm/idtentry.h
+++ b/arch/x86/include/asm/idtentry.h
@@ -447,7 +447,7 @@ __visible noinstr void func(struct pt_regs *regs,			\
 
 /* System vector entries */
 #define DECLARE_IDTENTRY_SYSVEC(vector, func)				\
-	idtentry_sysvec vector func
+	DECLARE_IDTENTRY(vector, func)
 
 #ifdef CONFIG_X86_64
 # define DECLARE_IDTENTRY_MCE(vector, func)				\
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601775.937982 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel7-0002LA-QV; Thu, 14 Sep 2023 05:19:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601775.937982; Thu, 14 Sep 2023 05:19:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel7-0002Je-Lq; Thu, 14 Sep 2023 05:19:21 +0000
Received: by outflank-mailman (input) for mailman id 601775;
 Thu, 14 Sep 2023 05:19:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgel5-0001X7-O3
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:19 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4137d9eb-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:18 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:33 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:32 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4137d9eb-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668759; x=1726204759;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=AT3+uEfHqtt3VE+RUnzzRXk1GicJbCzWRed9aBLhDUA=;
  b=XPDghk5I4x97LdKu8z0HkNRPqkzJW8WqcRAyRfsxao+XO+59X+sr3fpn
   eH/zQ+ESAVsgubQysZhibsnyosmFFRo/baPgtGUCinaahrlITDHbsIWRB
   sc61yyWB7PcFaE8/dDRRfy2Lmwa3BgsoQLUclSdOIw8XpyHEuEx8y+Xvr
   yqbUI53ymZgs1WouLLg9RpT09aj+MvTLKefA5kwpY9lO3anY0f/FcGXk0
   iHtzdzxEQ2MUydi8k9GpeqVBeLxW9ZmbyWUuBkdO3qAa7+eUy7J71eM1A
   OECAzgdo0lL5ymNpSuHngVC3pTz6XPJN9ZF2DkRCGFbpf4VRqwQNGXF8b
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661156"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661156"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488756"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488756"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 07/38] x86/fred: Add Kconfig option for FRED (CONFIG_X86_FRED)
Date: Wed, 13 Sep 2023 21:47:34 -0700
Message-Id: <20230914044805.301390-8-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add the configuration option CONFIG_X86_FRED to enable FRED.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/Kconfig | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 3b3594f96330..cae126417427 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -496,6 +496,15 @@ config X86_CPU_RESCTRL
 
 	  Say N if unsure.
 
+config X86_FRED
+	bool "Flexible Return and Event Delivery"
+	depends on X86_64
+	help
+	  When enabled, try to use Flexible Return and Event Delivery
+	  instead of the legacy SYSCALL/SYSENTER/IDT architecture for
+	  ring transitions and exception/interrupt handling if the
+	  system supports.
+
 if X86_32
 config X86_BIGSMP
 	bool "Support for big SMP systems with more than 8 CPUs"
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601773.937968 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel6-00021X-7D; Thu, 14 Sep 2023 05:19:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601773.937968; Thu, 14 Sep 2023 05:19:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgel6-00021P-49; Thu, 14 Sep 2023 05:19:20 +0000
Received: by outflank-mailman (input) for mailman id 601773;
 Thu, 14 Sep 2023 05:19:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgel4-0001X7-Kk
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:18 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 402bf4fb-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:17 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:31 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:31 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 402bf4fb-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668757; x=1726204757;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=COrE9eAXE6OPNE8ZIH2tugeOeIPIGx3BreJKJ34Ny6U=;
  b=XJnVF7pK/1D1/F11K/DhyaqIqOX+v6Cy/efHwpBrDOuGno+9UFirvLcK
   FgELKSYyT2gBokuBiMbEd+YF837kbMqk8RuqoEDNyuDzL0GkIncX3PTRo
   Xvqfa4p/ZE8WfR5wOdSKI7wWvc56aO1UjNWVAetsX62T/bMn8k/dcV9GR
   tK1GtO0agqknPR2/ZlfOeguEgQT5BUarIhfvT64HOeK9pbz8BRySQcZFh
   tXdw3egD9Krlzt632HfeDFLMZupMwb9gNhWlEGwi7EY9zbSqGDVj7X4X/
   jVpwAz4SmsqRfDkdQeqpEtf1SAWAWs7GXC+oHqxq5+38RyJYjVGFRGDPe
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661130"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661130"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488749"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488749"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 05/38] x86/trapnr: Add event type macros to <asm/trapnr.h>
Date: Wed, 13 Sep 2023 21:47:32 -0700
Message-Id: <20230914044805.301390-6-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Intel VT-x classifies events into eight different types, which is
inherited by FRED for event identification. As such, event type
becomes a common x86 concept, and should be defined in a common x86
header.

Add event type macros to <asm/trapnr.h>, and use it in <asm/vmx.h>.

Suggested-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/trapnr.h | 12 ++++++++++++
 arch/x86/include/asm/vmx.h    | 17 +++++++++--------
 2 files changed, 21 insertions(+), 8 deletions(-)

diff --git a/arch/x86/include/asm/trapnr.h b/arch/x86/include/asm/trapnr.h
index f5d2325aa0b7..ab7e4c9d666f 100644
--- a/arch/x86/include/asm/trapnr.h
+++ b/arch/x86/include/asm/trapnr.h
@@ -2,6 +2,18 @@
 #ifndef _ASM_X86_TRAPNR_H
 #define _ASM_X86_TRAPNR_H
 
+/*
+ * Event type codes used by both FRED and Intel VT-x
+ */
+#define EVENT_TYPE_EXTINT	0	// External interrupt
+#define EVENT_TYPE_RESERVED	1
+#define EVENT_TYPE_NMI		2	// NMI
+#define EVENT_TYPE_HWEXC	3	// Hardware originated traps, exceptions
+#define EVENT_TYPE_SWINT	4	// INT n
+#define EVENT_TYPE_PRIV_SWEXC	5	// INT1
+#define EVENT_TYPE_SWEXC	6	// INT0, INT3
+#define EVENT_TYPE_OTHER	7	// FRED SYSCALL/SYSENTER, VT-x MTF
+
 /* Interrupts/Exceptions */
 
 #define X86_TRAP_DE		 0	/* Divide-by-zero */
diff --git a/arch/x86/include/asm/vmx.h b/arch/x86/include/asm/vmx.h
index 0e73616b82f3..c84acfefcd31 100644
--- a/arch/x86/include/asm/vmx.h
+++ b/arch/x86/include/asm/vmx.h
@@ -17,6 +17,7 @@
 #include <linux/types.h>
 
 #include <uapi/asm/vmx.h>
+#include <asm/trapnr.h>
 #include <asm/vmxfeatures.h>
 
 #define VMCS_CONTROL_BIT(x)	BIT(VMX_FEATURE_##x & 0x1f)
@@ -374,14 +375,14 @@ enum vmcs_field {
 #define VECTORING_INFO_DELIVER_CODE_MASK    	INTR_INFO_DELIVER_CODE_MASK
 #define VECTORING_INFO_VALID_MASK       	INTR_INFO_VALID_MASK
 
-#define INTR_TYPE_EXT_INTR              (0 << 8) /* external interrupt */
-#define INTR_TYPE_RESERVED              (1 << 8) /* reserved */
-#define INTR_TYPE_NMI_INTR		(2 << 8) /* NMI */
-#define INTR_TYPE_HARD_EXCEPTION	(3 << 8) /* processor exception */
-#define INTR_TYPE_SOFT_INTR             (4 << 8) /* software interrupt */
-#define INTR_TYPE_PRIV_SW_EXCEPTION	(5 << 8) /* ICE breakpoint - undocumented */
-#define INTR_TYPE_SOFT_EXCEPTION	(6 << 8) /* software exception */
-#define INTR_TYPE_OTHER_EVENT           (7 << 8) /* other event */
+#define INTR_TYPE_EXT_INTR		(EVENT_TYPE_EXTINT << 8)	/* external interrupt */
+#define INTR_TYPE_RESERVED		(EVENT_TYPE_RESERVED << 8)	/* reserved */
+#define INTR_TYPE_NMI_INTR		(EVENT_TYPE_NMI << 8)		/* NMI */
+#define INTR_TYPE_HARD_EXCEPTION	(EVENT_TYPE_HWEXC << 8)		/* processor exception */
+#define INTR_TYPE_SOFT_INTR		(EVENT_TYPE_SWINT << 8)		/* software interrupt */
+#define INTR_TYPE_PRIV_SW_EXCEPTION	(EVENT_TYPE_PRIV_SWEXC << 8)	/* ICE breakpoint - undocumented */
+#define INTR_TYPE_SOFT_EXCEPTION	(EVENT_TYPE_SWEXC << 8)		/* software exception */
+#define INTR_TYPE_OTHER_EVENT		(EVENT_TYPE_OTHER << 8)		/* other event */
 
 /* GUEST_INTERRUPTIBILITY_INFO flags. */
 #define GUEST_INTR_STATE_STI		0x00000001
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601783.938054 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelE-0004A8-M4; Thu, 14 Sep 2023 05:19:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601783.938054; Thu, 14 Sep 2023 05:19:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelD-00043n-NE; Thu, 14 Sep 2023 05:19:27 +0000
Received: by outflank-mailman (input) for mailman id 601783;
 Thu, 14 Sep 2023 05:19:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelA-0001X7-0D
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:24 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 43b7f0d6-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:23 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:35 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:35 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 43b7f0d6-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668763; x=1726204763;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=nnaiSfOR32UqURagnGQyKATdoHKyxN7QZzCa/h9+/jY=;
  b=XW0OzOYaTTwWtqzThAXpp1+riA5eIkYtqSZL2zf5L5HVEg0uGjtUUanv
   peieq0Nkrk3Cpm114ck85YED3a0wxaJnTWXkOJP5qdMC6YbDtvsaymeMB
   XSYNev/bZona2kFDKvXfUAr7XSo2vPngtP0mY2yBpJtHQ8vFKbcqdja4e
   uNmnxodKTIhDajtH4GwVwGprTgBYhIYwLnAp0mZUm3KzKjwQiA4D60hB4
   fCbxDnoYvbcmQKlbnGH8Idk2M4mNR3kp4vQzHbNspp/Amg2ljmRLnlpnR
   zbJ/94YCSamNYVUv1DXuTSQ9rfcHRcIDS1dm3q2nQIe9BF3I7vPXTLG28
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661222"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661222"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488774"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488774"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 12/38] x86/objtool: Teach objtool about ERET[US]
Date: Wed, 13 Sep 2023 21:47:39 -0700
Message-Id: <20230914044805.301390-13-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Update the objtool decoder to know about the ERET[US] instructions
(type INSN_CONTEXT_SWITCH).

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 tools/objtool/arch/x86/decode.c | 19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

diff --git a/tools/objtool/arch/x86/decode.c b/tools/objtool/arch/x86/decode.c
index c0f25d00181e..6999f478c155 100644
--- a/tools/objtool/arch/x86/decode.c
+++ b/tools/objtool/arch/x86/decode.c
@@ -509,11 +509,20 @@ int arch_decode_instruction(struct objtool_file *file, const struct section *sec
 
 		if (op2 == 0x01) {
 
-			if (modrm == 0xca)
-				insn->type = INSN_CLAC;
-			else if (modrm == 0xcb)
-				insn->type = INSN_STAC;
-
+			switch (insn_last_prefix_id(&ins)) {
+			case INAT_PFX_REPE:
+			case INAT_PFX_REPNE:
+				if (modrm == 0xca)
+					/* eretu/erets */
+					insn->type = INSN_CONTEXT_SWITCH;
+				break;
+			default:
+				if (modrm == 0xca)
+					insn->type = INSN_CLAC;
+				else if (modrm == 0xcb)
+					insn->type = INSN_STAC;
+				break;
+			}
 		} else if (op2 >= 0x80 && op2 <= 0x8f) {
 
 			insn->type = INSN_JUMP_CONDITIONAL;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601784.938060 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelF-0004Lb-B7; Thu, 14 Sep 2023 05:19:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601784.938060; Thu, 14 Sep 2023 05:19:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelE-0004Iz-Pw; Thu, 14 Sep 2023 05:19:28 +0000
Received: by outflank-mailman (input) for mailman id 601784;
 Thu, 14 Sep 2023 05:19:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelA-0001XI-UY
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:24 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 43a7082c-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:23 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:36 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:35 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 43a7082c-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668763; x=1726204763;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=UbhaPnTvbyw+zMdUXnvbzwhVl0YY5km3u8wmvpbx2GQ=;
  b=P2hZf9HdRBJ93sdm5iQnMw+FjjHmZeIt5wRS5CkzN6tgzgnumcQUNB0W
   +d/AD/0HJBYRZ2zGlsSnQlsaQSCb8NlJtTY5xUFHkzbZ/GCf2vhT7Ye7a
   NWp2oQO81hzn63uZcxvaHrpnyKgpgpexs9qzkVGyaWbDtu234pX/za7US
   cmSkgAUFdk1vAh4PjFEpwgurV/EirUBguX2WK+SEtmW3qqgSk3M7wtgnH
   AXFqYa1aQDcO8J4GXHBsKtPfOWH/JO0y9y/pqxs58124rYJEo02aJvuoR
   3v1+JrOgxRG6uKvx9c+CuATc9hWQSTuzVutSjRNsJu59CeXEZuaN2eP54
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661234"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661234"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488777"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488777"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 13/38] x86/cpu: Add X86_CR4_FRED macro
Date: Wed, 13 Sep 2023 21:47:40 -0700
Message-Id: <20230914044805.301390-14-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add X86_CR4_FRED macro for the FRED bit in %cr4. This bit must not be
changed after initialization, so add it to the pinned CR4 bits.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v9:
* Avoid a type cast by defining X86_CR4_FRED as 0 on 32-bit (Thomas
  Gleixner).
---
 arch/x86/include/uapi/asm/processor-flags.h | 7 +++++++
 arch/x86/kernel/cpu/common.c                | 5 ++---
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/arch/x86/include/uapi/asm/processor-flags.h b/arch/x86/include/uapi/asm/processor-flags.h
index d898432947ff..f1a4adc78272 100644
--- a/arch/x86/include/uapi/asm/processor-flags.h
+++ b/arch/x86/include/uapi/asm/processor-flags.h
@@ -139,6 +139,13 @@
 #define X86_CR4_LAM_SUP_BIT	28 /* LAM for supervisor pointers */
 #define X86_CR4_LAM_SUP		_BITUL(X86_CR4_LAM_SUP_BIT)
 
+#ifdef __x86_64__
+#define X86_CR4_FRED_BIT	32 /* enable FRED kernel entry */
+#define X86_CR4_FRED		_BITUL(X86_CR4_FRED_BIT)
+#else
+#define X86_CR4_FRED		(0)
+#endif
+
 /*
  * x86-64 Task Priority Register, CR8
  */
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index 317b4877e9c7..42511209469b 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -400,9 +400,8 @@ static __always_inline void setup_umip(struct cpuinfo_x86 *c)
 }
 
 /* These bits should not change their value after CPU init is finished. */
-static const unsigned long cr4_pinned_mask =
-	X86_CR4_SMEP | X86_CR4_SMAP | X86_CR4_UMIP |
-	X86_CR4_FSGSBASE | X86_CR4_CET;
+static const unsigned long cr4_pinned_mask = X86_CR4_SMEP | X86_CR4_SMAP | X86_CR4_UMIP |
+					     X86_CR4_FSGSBASE | X86_CR4_CET | X86_CR4_FRED;
 static DEFINE_STATIC_KEY_FALSE_RO(cr_pinning);
 static unsigned long cr4_pinned_bits __ro_after_init;
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601785.938068 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelG-0004bp-Es; Thu, 14 Sep 2023 05:19:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601785.938068; Thu, 14 Sep 2023 05:19:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelF-0004XH-SH; Thu, 14 Sep 2023 05:19:29 +0000
Received: by outflank-mailman (input) for mailman id 601785;
 Thu, 14 Sep 2023 05:19:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelB-0001X7-6j
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:25 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4469d4c0-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:24 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:36 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:36 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4469d4c0-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668764; x=1726204764;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=N6kp9TZ7kHqzLVZW55gD2++Tnq9nIUbsXQRU192FiwQ=;
  b=mO65nC0zgJh09dTKzl99X2xPfXgxksF+0PDrjxrpmO29In7FO97j62aI
   9OEIAswLQdM2t+kOjDzqv8V83iG7nXr2AWABK4fjCHAw0XWmrIt5d4YHi
   96+NHbheaHYOs30IUnAazNttwYzLR+ZDOw53SCeAFtr7W1zcSMRU80i0E
   2j0lrHDfvGOKzSpIqJjyU+uvEQBnQBefhHHFY0CR2iDhBDjeSp2Bbw16W
   YUKNlHMbGmKBawv3w/+KwxXVBPJmxKwE+4/RsT5HKqgrQYX+ElBDcjw2R
   4eYKv7MlrlRKOCsgiv8iLL4nROTQ5bhSenyuI9X3Ge77cTLTtpoWmEGOF
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661246"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661246"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488780"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488780"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 14/38] x86/cpu: Add MSR numbers for FRED configuration
Date: Wed, 13 Sep 2023 21:47:41 -0700
Message-Id: <20230914044805.301390-15-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add MSR numbers for the FRED configuration registers per FRED spec 5.0.

Originally-by: Megha Dey <megha.dey@intel.com>
Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/msr-index.h       | 13 ++++++++++++-
 tools/arch/x86/include/asm/msr-index.h | 13 ++++++++++++-
 2 files changed, 24 insertions(+), 2 deletions(-)

diff --git a/arch/x86/include/asm/msr-index.h b/arch/x86/include/asm/msr-index.h
index 1d111350197f..972d15404420 100644
--- a/arch/x86/include/asm/msr-index.h
+++ b/arch/x86/include/asm/msr-index.h
@@ -36,8 +36,19 @@
 #define EFER_FFXSR		(1<<_EFER_FFXSR)
 #define EFER_AUTOIBRS		(1<<_EFER_AUTOIBRS)
 
-/* Intel MSRs. Some also available on other CPUs */
+/* FRED MSRs */
+#define MSR_IA32_FRED_RSP0	0x1cc			/* Level 0 stack pointer */
+#define MSR_IA32_FRED_RSP1	0x1cd			/* Level 1 stack pointer */
+#define MSR_IA32_FRED_RSP2	0x1ce			/* Level 2 stack pointer */
+#define MSR_IA32_FRED_RSP3	0x1cf			/* Level 3 stack pointer */
+#define MSR_IA32_FRED_STKLVLS	0x1d0			/* Exception stack levels */
+#define MSR_IA32_FRED_SSP0	MSR_IA32_PL0_SSP	/* Level 0 shadow stack pointer */
+#define MSR_IA32_FRED_SSP1	0x1d1			/* Level 1 shadow stack pointer */
+#define MSR_IA32_FRED_SSP2	0x1d2			/* Level 2 shadow stack pointer */
+#define MSR_IA32_FRED_SSP3	0x1d3			/* Level 3 shadow stack pointer */
+#define MSR_IA32_FRED_CONFIG	0x1d4			/* Entrypoint and interrupt stack level */
 
+/* Intel MSRs. Some also available on other CPUs */
 #define MSR_TEST_CTRL				0x00000033
 #define MSR_TEST_CTRL_SPLIT_LOCK_DETECT_BIT	29
 #define MSR_TEST_CTRL_SPLIT_LOCK_DETECT		BIT(MSR_TEST_CTRL_SPLIT_LOCK_DETECT_BIT)
diff --git a/tools/arch/x86/include/asm/msr-index.h b/tools/arch/x86/include/asm/msr-index.h
index a00a53e15ab7..fc75e3ca47d9 100644
--- a/tools/arch/x86/include/asm/msr-index.h
+++ b/tools/arch/x86/include/asm/msr-index.h
@@ -36,8 +36,19 @@
 #define EFER_FFXSR		(1<<_EFER_FFXSR)
 #define EFER_AUTOIBRS		(1<<_EFER_AUTOIBRS)
 
-/* Intel MSRs. Some also available on other CPUs */
+/* FRED MSRs */
+#define MSR_IA32_FRED_RSP0	0x1cc			/* Level 0 stack pointer */
+#define MSR_IA32_FRED_RSP1	0x1cd			/* Level 1 stack pointer */
+#define MSR_IA32_FRED_RSP2	0x1ce			/* Level 2 stack pointer */
+#define MSR_IA32_FRED_RSP3	0x1cf			/* Level 3 stack pointer */
+#define MSR_IA32_FRED_STKLVLS	0x1d0			/* Exception stack levels */
+#define MSR_IA32_FRED_SSP0	MSR_IA32_PL0_SSP	/* Level 0 shadow stack pointer */
+#define MSR_IA32_FRED_SSP1	0x1d1			/* Level 1 shadow stack pointer */
+#define MSR_IA32_FRED_SSP2	0x1d2			/* Level 2 shadow stack pointer */
+#define MSR_IA32_FRED_SSP3	0x1d3			/* Level 3 shadow stack pointer */
+#define MSR_IA32_FRED_CONFIG	0x1d4			/* Entrypoint and interrupt stack level */
 
+/* Intel MSRs. Some also available on other CPUs */
 #define MSR_TEST_CTRL				0x00000033
 #define MSR_TEST_CTRL_SPLIT_LOCK_DETECT_BIT	29
 #define MSR_TEST_CTRL_SPLIT_LOCK_DETECT		BIT(MSR_TEST_CTRL_SPLIT_LOCK_DETECT_BIT)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601786.938078 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelH-0004rS-DN; Thu, 14 Sep 2023 05:19:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601786.938078; Thu, 14 Sep 2023 05:19:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelG-0004mf-Ry; Thu, 14 Sep 2023 05:19:30 +0000
Received: by outflank-mailman (input) for mailman id 601786;
 Thu, 14 Sep 2023 05:19:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelB-0001XI-Hc
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:25 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 43eb30c1-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:23 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:37 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:36 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 43eb30c1-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668763; x=1726204763;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=yFOHuHE47yU8Pv3f7vyK1KueQKaw2/ZJmrjuiwmDzLE=;
  b=HqrPmQwy4sRhqAbFo3G610gZeBtUJFY4MMXsl/KHWR7hPtT/5HRpJ5Qs
   2b0qDZ0vGhjBhY3qAA33P3bMHswQKBahKfR77n//C0Mce4xWd+5J54VAZ
   ioGcBTTwjQ5RmupBVHgA701h5RFZefBo+A2AdSooS2NtJ41JSP+CrIvLD
   J772AGUbG+3El/wUkMPSznDEOJVPWTZIqPfooOXPMuKrd+bfHE/ncLMY4
   Fsn7vsJJJtFCrGYr6fbxnxSxNoAOQ6+4wCQyrzcvWheps04Xvp9GgsiVz
   /Rr5WgETTpsDkga5EDJHzQs3aILP69Lu9LCqOmnxYvCqCCUpy5vA6bNVl
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661261"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661261"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488784"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488784"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 15/38] x86/ptrace: Cleanup the definition of the pt_regs structure
Date: Wed, 13 Sep 2023 21:47:42 -0700
Message-Id: <20230914044805.301390-16-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

struct pt_regs is hard to read because the member or section related
comments are not aligned with the members.

The 'cs' and 'ss' members of pt_regs are type of 'unsigned long' while
in reality they are only 16-bit wide. This works so far as the
remaining space is unused, but FRED will use the remaining bits for
other purposes.

To prepare for FRED:

  - Cleanup the formatting
  - Convert 'cs' and 'ss' to u16 and embed them into an union
    with a u64
  - Fixup the related printk() format strings

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/entry/vsyscall/vsyscall_64.c |  2 +-
 arch/x86/include/asm/ptrace.h         | 44 +++++++++++++++++++--------
 arch/x86/kernel/process_64.c          |  2 +-
 3 files changed, 33 insertions(+), 15 deletions(-)

diff --git a/arch/x86/entry/vsyscall/vsyscall_64.c b/arch/x86/entry/vsyscall/vsyscall_64.c
index e0ca8120aea8..a3c0df11d0e6 100644
--- a/arch/x86/entry/vsyscall/vsyscall_64.c
+++ b/arch/x86/entry/vsyscall/vsyscall_64.c
@@ -76,7 +76,7 @@ static void warn_bad_vsyscall(const char *level, struct pt_regs *regs,
 	if (!show_unhandled_signals)
 		return;
 
-	printk_ratelimited("%s%s[%d] %s ip:%lx cs:%lx sp:%lx ax:%lx si:%lx di:%lx\n",
+	printk_ratelimited("%s%s[%d] %s ip:%lx cs:%x sp:%lx ax:%lx si:%lx di:%lx\n",
 			   level, current->comm, task_pid_nr(current),
 			   message, regs->ip, regs->cs,
 			   regs->sp, regs->ax, regs->si, regs->di);
diff --git a/arch/x86/include/asm/ptrace.h b/arch/x86/include/asm/ptrace.h
index f4db78b09c8f..f08ea073edd6 100644
--- a/arch/x86/include/asm/ptrace.h
+++ b/arch/x86/include/asm/ptrace.h
@@ -57,17 +57,19 @@ struct pt_regs {
 #else /* __i386__ */
 
 struct pt_regs {
-/*
- * C ABI says these regs are callee-preserved. They aren't saved on kernel entry
- * unless syscall needs a complete, fully filled "struct pt_regs".
- */
+	/*
+	 * C ABI says these regs are callee-preserved. They aren't saved on
+	 * kernel entry unless syscall needs a complete, fully filled
+	 * "struct pt_regs".
+	 */
 	unsigned long r15;
 	unsigned long r14;
 	unsigned long r13;
 	unsigned long r12;
 	unsigned long bp;
 	unsigned long bx;
-/* These regs are callee-clobbered. Always saved on kernel entry. */
+
+	/* These regs are callee-clobbered. Always saved on kernel entry. */
 	unsigned long r11;
 	unsigned long r10;
 	unsigned long r9;
@@ -77,18 +79,34 @@ struct pt_regs {
 	unsigned long dx;
 	unsigned long si;
 	unsigned long di;
-/*
- * On syscall entry, this is syscall#. On CPU exception, this is error code.
- * On hw interrupt, it's IRQ number:
- */
+
+	/*
+	 * orig_ax is used on entry for:
+	 * - the syscall number (syscall, sysenter, int80)
+	 * - error_code stored by the CPU on traps and exceptions
+	 * - the interrupt number for device interrupts
+	 */
 	unsigned long orig_ax;
-/* Return frame for iretq */
+
+	/* The IRETQ return frame starts here */
 	unsigned long ip;
-	unsigned long cs;
+
+	union {
+		u64	csx;	// The full 64-bit data slot containing CS
+		u16	cs;	// CS selector
+	};
+
 	unsigned long flags;
 	unsigned long sp;
-	unsigned long ss;
-/* top of stack page */
+
+	union {
+		u64	ssx;	// The full 64-bit data slot containing SS
+		u16	ss;	// SS selector
+	};
+
+	/*
+	 * Top of stack on IDT systems.
+	 */
 };
 
 #endif /* !__i386__ */
diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
index 33b268747bb7..0f78b58021bb 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -117,7 +117,7 @@ void __show_regs(struct pt_regs *regs, enum show_regs_mode mode,
 
 	printk("%sFS:  %016lx(%04x) GS:%016lx(%04x) knlGS:%016lx\n",
 	       log_lvl, fs, fsindex, gs, gsindex, shadowgs);
-	printk("%sCS:  %04lx DS: %04x ES: %04x CR0: %016lx\n",
+	printk("%sCS:  %04x DS: %04x ES: %04x CR0: %016lx\n",
 		log_lvl, regs->cs, ds, es, cr0);
 	printk("%sCR2: %016lx CR3: %016lx CR4: %016lx\n",
 		log_lvl, cr2, cr3, cr4);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601787.938089 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelJ-0005DR-3k; Thu, 14 Sep 2023 05:19:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601787.938089; Thu, 14 Sep 2023 05:19:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelI-00058N-5k; Thu, 14 Sep 2023 05:19:32 +0000
Received: by outflank-mailman (input) for mailman id 601787;
 Thu, 14 Sep 2023 05:19:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelC-0001X7-CQ
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:26 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4525bba6-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:25 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:38 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:37 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4525bba6-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668765; x=1726204765;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=SbR2wCTkousO/IPIjdDUqT7zLHmXpw3IGG9LN/Z2MXU=;
  b=hopPJo6kH5nNTlpxiF3a6jU00bXhTHALSuzGGnYyl5YLM9vd4FAmYLY7
   hb3QTOIUBMF3DKJ3uqKLHcQ3ZHXcoqROzK9rJjDobrvYHYV0xZa6slaLc
   EpyaOtMzE/2Zm0BPVuo2/c850JSspt4tHRsoa1Rptusp1NPJjW05npDmC
   62uSOy8K79HKKqmuVcdJByVkHy77M3E0zEZY+dvpWjglBCUX/gFT0BIyn
   O3BIz0Xr43o1sIXb7AtpLZidNOMwh5bCt2T9fWZTAZzo2azJ8zgjjJ3OJ
   cXOgTrS5gaqVqoYKLTyPxfIrZETpq933Tsvxuby9g2BtyujWMnJoQbFwG
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661287"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661287"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488790"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488790"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 17/38] x86/fred: Add a new header file for FRED definitions
Date: Wed, 13 Sep 2023 21:47:44 -0700
Message-Id: <20230914044805.301390-18-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add a header file for FRED prototypes and definitions.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v6:
* Replace pt_regs csx flags prefix FRED_CSL_ with FRED_CSX_.
---
 arch/x86/include/asm/fred.h | 68 +++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)
 create mode 100644 arch/x86/include/asm/fred.h

diff --git a/arch/x86/include/asm/fred.h b/arch/x86/include/asm/fred.h
new file mode 100644
index 000000000000..f514fdb5a39f
--- /dev/null
+++ b/arch/x86/include/asm/fred.h
@@ -0,0 +1,68 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Macros for Flexible Return and Event Delivery (FRED)
+ */
+
+#ifndef ASM_X86_FRED_H
+#define ASM_X86_FRED_H
+
+#include <linux/const.h>
+
+#include <asm/asm.h>
+
+/*
+ * FRED event return instruction opcodes for ERET{S,U}; supported in
+ * binutils >= 2.41.
+ */
+#define ERETS			_ASM_BYTES(0xf2,0x0f,0x01,0xca)
+#define ERETU			_ASM_BYTES(0xf3,0x0f,0x01,0xca)
+
+/*
+ * RSP is aligned to a 64-byte boundary before used to push a new stack frame
+ */
+#define FRED_STACK_FRAME_RSP_MASK	_AT(unsigned long, (~0x3f))
+
+/*
+ * Used for the return address for call emulation during code patching,
+ * and measured in 64-byte cache lines.
+ */
+#define FRED_CONFIG_REDZONE_AMOUNT	1
+#define FRED_CONFIG_REDZONE		(_AT(unsigned long, FRED_CONFIG_REDZONE_AMOUNT) << 6)
+#define FRED_CONFIG_INT_STKLVL(l)	(_AT(unsigned long, l) << 9)
+#define FRED_CONFIG_ENTRYPOINT(p)	_AT(unsigned long, (p))
+
+#ifndef __ASSEMBLY__
+
+#ifdef CONFIG_X86_FRED
+#include <linux/kernel.h>
+
+#include <asm/ptrace.h>
+
+struct fred_info {
+	/* Event data: CR2, DR6, ... */
+	unsigned long edata;
+	unsigned long resv;
+};
+
+/* Full format of the FRED stack frame */
+struct fred_frame {
+	struct pt_regs   regs;
+	struct fred_info info;
+};
+
+static __always_inline struct fred_info *fred_info(struct pt_regs *regs)
+{
+	return &container_of(regs, struct fred_frame, regs)->info;
+}
+
+static __always_inline unsigned long fred_event_data(struct pt_regs *regs)
+{
+	return fred_info(regs)->edata;
+}
+
+#else /* CONFIG_X86_FRED */
+static __always_inline unsigned long fred_event_data(struct pt_regs *regs) { return 0; }
+#endif /* CONFIG_X86_FRED */
+#endif /* !__ASSEMBLY__ */
+
+#endif /* ASM_X86_FRED_H */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601788.938093 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelK-0005Su-AN; Thu, 14 Sep 2023 05:19:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601788.938093; Thu, 14 Sep 2023 05:19:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelJ-0005NU-FG; Thu, 14 Sep 2023 05:19:33 +0000
Received: by outflank-mailman (input) for mailman id 601788;
 Thu, 14 Sep 2023 05:19:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelD-0001X7-Fr
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:27 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 45d62fb2-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:26 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:39 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:38 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 45d62fb2-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668766; x=1726204766;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=U5v5FfPZcbv+kEeu4BDXYc9n8fkslqM+14uJJDiLwkk=;
  b=OjHMgYbI7VwzupYtsKNN6kaCpQd8FrHI8F3YYFk4VN5twPj3uKoKyMoB
   a4Z4ZDpm3WIFRnYleKRudi7NHXh72KfLfLqYQrsvbXkCk4vneIyeuOown
   s5WCHJoaJ/f5mFIAX40OhyUVZFpSsAnZ+LPWD6nyP+cBGiuqPi6G1Wx4n
   d1ROkYZB7G4K5ZFjDl3u3bMb5VLoG1V4QEBWLfCmCJaKYS7TB1PjHI8FE
   mB5NtbgkJKje/m5LYmaHiY2368nobsRaD6wkZ25jaMY4DiojviYWHSrsm
   tpefDOfP7KvDrnioeIkK+nIP0fW8tAt0+HgIM+JGah/dm4nqz+UZCx3sy
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661314"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661314"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488796"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488796"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 19/38] x86/fred: Update MSR_IA32_FRED_RSP0 during task switch
Date: Wed, 13 Sep 2023 21:47:46 -0700
Message-Id: <20230914044805.301390-20-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

MSR_IA32_FRED_RSP0 is used during ring 3 event delivery, and needs to
be updated to point to the top of next task stack during task switch.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/switch_to.h | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/arch/x86/include/asm/switch_to.h b/arch/x86/include/asm/switch_to.h
index f42dbf17f52b..c3bd0c0758c9 100644
--- a/arch/x86/include/asm/switch_to.h
+++ b/arch/x86/include/asm/switch_to.h
@@ -70,9 +70,13 @@ static inline void update_task_stack(struct task_struct *task)
 #ifdef CONFIG_X86_32
 	this_cpu_write(cpu_tss_rw.x86_tss.sp1, task->thread.sp0);
 #else
-	/* Xen PV enters the kernel on the thread stack. */
-	if (cpu_feature_enabled(X86_FEATURE_XENPV))
+	if (cpu_feature_enabled(X86_FEATURE_FRED)) {
+		/* WRMSRNS is a baseline feature for FRED. */
+		wrmsrns(MSR_IA32_FRED_RSP0, (unsigned long)task_stack_page(task) + THREAD_SIZE);
+	} else if (cpu_feature_enabled(X86_FEATURE_XENPV)) {
+		/* Xen PV enters the kernel on the thread stack. */
 		load_sp0(task_top_of_stack(task));
+	}
 #endif
 }
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601789.938106 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelM-0005jZ-2R; Thu, 14 Sep 2023 05:19:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601789.938106; Thu, 14 Sep 2023 05:19:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelK-0005h7-ON; Thu, 14 Sep 2023 05:19:34 +0000
Received: by outflank-mailman (input) for mailman id 601789;
 Thu, 14 Sep 2023 05:19:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelD-0001XI-8g
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:27 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 44fcae3b-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:25 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:37 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:37 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 44fcae3b-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668765; x=1726204765;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=/vulkjS/nAxN+RJ3C7R6J4h15cqNiAED/GUC9x16vUQ=;
  b=D9OJXBoKlsHohHCFu9YUQWG6kQWRyzWGLC0xF9u5Jo5W1SgjJCeEQNaV
   +8/tnxmt81vAOJvRQgbabqAJk4gCRXlwdQJeIvF2M/02KhNBdmhG1rmh+
   eBTquW5h6niFyJSZBdUL9DINoE7hXiTqnK/YbOcDSz7ca7UXPs3AlORmp
   7cWd9szGLdG/hBSPc52PJ2D6957PDFqafNI2GaycC6avTXWK2P34e5+Gp
   H65QPppGj4DC2uwnTErQySlSqtfz2f46CkqXe5pT+PCoofxSu47q0hwmS
   wFdfLt6wzQhxvY9wpq9FUvBTvykZpgs4Vjg33D9EkumDTcEdXe2cp26SC
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661274"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661274"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488787"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488787"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 16/38] x86/ptrace: Add FRED additional information to the pt_regs structure
Date: Wed, 13 Sep 2023 21:47:43 -0700
Message-Id: <20230914044805.301390-17-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

FRED defines additional information in the upper 48 bits of cs/ss
fields. Therefore add the information definitions into the pt_regs
structure.

Specially introduce a new structure fred_ss to denote the FRED flags
above SS selector, which avoids FRED_SSX_ macros and makes the code
simpler and easier to read.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v9:
* Introduce a new structure fred_ss to denote the FRED flags above SS
  selector, which avoids FRED_SSX_ macros and makes the code simpler
  and easier to read (Thomas Gleixner).
* Use type u64 to define FRED bit fields instead of type unsigned int
  (Thomas Gleixner).

Changes since v8:
* Reflect stack frame definition changes from FRED spec 3.0 to 5.0.
* Use __packed instead of __attribute__((__packed__)) (Borislav Petkov).
* Put all comments above the members, like the rest of the file does
  (Borislav Petkov).

Changes since v3:
* Rename csl/ssl of the pt_regs structure to csx/ssx (x for extended)
  (Andrew Cooper).
---
 arch/x86/include/asm/ptrace.h | 51 +++++++++++++++++++++++++++++++----
 1 file changed, 46 insertions(+), 5 deletions(-)

diff --git a/arch/x86/include/asm/ptrace.h b/arch/x86/include/asm/ptrace.h
index f08ea073edd6..5786c8ca5f4c 100644
--- a/arch/x86/include/asm/ptrace.h
+++ b/arch/x86/include/asm/ptrace.h
@@ -56,6 +56,25 @@ struct pt_regs {
 
 #else /* __i386__ */
 
+struct fred_ss {
+	u64	ss	: 16,	// SS selector
+		sti	:  1,	// STI state
+		swevent	:  1,	// Set if syscall, sysenter or INT n
+		nmi	:  1,	// Event is NMI type
+			: 13,
+		vector	:  8,	// Event vector
+			:  8,
+		type	:  4,	// Event type
+			:  4,
+		enclave	:  1,	// Event was incident to enclave execution
+		lm	:  1,	// CPU was in long mode
+		nested	:  1,	// Nested exception during FRED delivery
+				// not set for #DF
+			:  1,
+		insnlen	:  4;	// The length of the instruction causing the event
+				// Only set for INT0, INT1, INT3, INT n, SYSCALL
+};				// and SYSENTER. 0 otherwise.
+
 struct pt_regs {
 	/*
 	 * C ABI says these regs are callee-preserved. They aren't saved on
@@ -85,6 +104,12 @@ struct pt_regs {
 	 * - the syscall number (syscall, sysenter, int80)
 	 * - error_code stored by the CPU on traps and exceptions
 	 * - the interrupt number for device interrupts
+	 *
+	 * A FRED stack frame starts here:
+	 *   1) It _always_ includes an error code;
+	 *
+	 *   2) The return frame for ERET[US] starts here, but
+	 *	the content of orig_ax is ignored.
 	 */
 	unsigned long orig_ax;
 
@@ -92,20 +117,36 @@ struct pt_regs {
 	unsigned long ip;
 
 	union {
-		u64	csx;	// The full 64-bit data slot containing CS
-		u16	cs;	// CS selector
+		u64	csx;		// The full data for FRED
+		/*
+		 * The 'cs' member should be defined as a 16-bit bit-field
+		 * along with the 'sl' and 'wfe' members, which however
+		 * breaks compiling REG_OFFSET_NAME(cs), because compilers
+		 * disallow calculating the address of a bit-field.
+		 *
+		 * Therefore 'cs" is defined as an individual member with
+		 * type u16.
+		 */
+		u16	cs;		// CS selector
+		u64		: 16,
+			sl	:  2,	// Stack level at event time
+			wfe	:  1,	// IBT is in WAIT_FOR_BRANCH_STATE
+				: 45;
 	};
 
 	unsigned long flags;
 	unsigned long sp;
 
 	union {
-		u64	ssx;	// The full 64-bit data slot containing SS
-		u16	ss;	// SS selector
+		u64		ssx;		// The full data for FRED
+		u16		ss;		// SS selector
+		struct fred_ss	fred_ss;	// The fred extension
 	};
 
 	/*
-	 * Top of stack on IDT systems.
+	 * Top of stack on IDT systems, while FRED systems have extra fields
+	 * defined above for storing exception related information, e.g. CR2 or
+	 * DR6.
 	 */
 };
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:19:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:19:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601790.938114 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelO-0006MV-77; Thu, 14 Sep 2023 05:19:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601790.938114; Thu, 14 Sep 2023 05:19:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgelN-0006Dz-Fm; Thu, 14 Sep 2023 05:19:37 +0000
Received: by outflank-mailman (input) for mailman id 601790;
 Thu, 14 Sep 2023 05:19:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelD-0001XI-Pa
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:27 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 455699f5-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:25 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:38 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:38 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 455699f5-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668766; x=1726204766;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=f4gesqgoemAM7gLIVW0tfHuShJv23oH28+TguMOULZ8=;
  b=BSplR6hjGD9hQ5K/ymN787jSWRqWTYIWUAXMZsK9JmGiGoqJXoGGLqde
   /w9WYjHMgDON4UVFWaFPT2UmiUzj1+SnVTZCG9uFVhsaziJCOry//mqdR
   pZtmPNZFz+IkNdgo6ZWaKRyRTmgge8gUuNHLj0TE51IJ9nmb4e13wH1k6
   xn+vHv43PBhRDfJyPCmtQB1h2Bcs8egu/qgZxnQHUEs4baeCAKy1D7chJ
   Q7aeDLoXZn/hjvXytzM8NmnpsPuZpIqcQuvKN9S3UyfyNKfQOy5XBuhuE
   N+ugtTukiEMAMQUI8ZtcHBeR6ACAec7rmM31cR9ArIVeUbvublmlfSqC1
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661301"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661301"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488793"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488793"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 18/38] x86/fred: Reserve space for the FRED stack frame
Date: Wed, 13 Sep 2023 21:47:45 -0700
Message-Id: <20230914044805.301390-19-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

When using FRED, reserve space at the top of the stack frame, just
like i386 does.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/thread_info.h | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/arch/x86/include/asm/thread_info.h b/arch/x86/include/asm/thread_info.h
index d63b02940747..12da7dfd5ef1 100644
--- a/arch/x86/include/asm/thread_info.h
+++ b/arch/x86/include/asm/thread_info.h
@@ -31,7 +31,9 @@
  * In vm86 mode, the hardware frame is much longer still, so add 16
  * bytes to make room for the real-mode segments.
  *
- * x86_64 has a fixed-length stack frame.
+ * x86-64 has a fixed-length stack frame, but it depends on whether
+ * or not FRED is enabled. Future versions of FRED might make this
+ * dynamic, but for now it is always 2 words longer.
  */
 #ifdef CONFIG_X86_32
 # ifdef CONFIG_VM86
@@ -39,8 +41,12 @@
 # else
 #  define TOP_OF_KERNEL_STACK_PADDING 8
 # endif
-#else
-# define TOP_OF_KERNEL_STACK_PADDING 0
+#else /* x86-64 */
+# ifdef CONFIG_X86_FRED
+#  define TOP_OF_KERNEL_STACK_PADDING (2 * 8)
+# else
+#  define TOP_OF_KERNEL_STACK_PADDING 0
+# endif
 #endif
 
 /*
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:26:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:26:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601824.938148 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgerd-0005Gl-I1; Thu, 14 Sep 2023 05:26:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601824.938148; Thu, 14 Sep 2023 05:26:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgerd-0005Ge-Do; Thu, 14 Sep 2023 05:26:05 +0000
Received: by outflank-mailman (input) for mailman id 601824;
 Thu, 14 Sep 2023 05:26:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelR-0001XI-2a
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:41 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4c4c8559-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:37 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:47 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:46 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4c4c8559-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668777; x=1726204777;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=T0jTyejyJ8JvDYansScu0V1dL1MHLI4ucPruSc2ZVaA=;
  b=VOhzHfuQc7YkNLPqVod0zBTvi+oHAMG6ZMi58YjPTCJOlzg/PAGnpd6I
   a67xy4uCC2Fd98lOV+dtUVlzZqrHE0y1n8JZLz54pTbE8KRbQMT1XvUxU
   NdN6Zpkzol0P7IO8r8wyMkkcO3gVhXxT+E65V9PPVkxp3B9W3fAxoZ9Fj
   Hd/aX4HvSuCPHNZps7xTpbL6pRU6xribg6UvZ8MAU7rGxk2KlV5HuTt8e
   QZ0eukx2i+ip1nIcWJDl8XybmHDaQk+JBY8VBDAZz3vfNVev7o5sUGvKR
   xqP6pBRE3k9yaCXuKmMnz26eWuOY7J+DzfPx3TYDZa1z2cD+ltTa78xgf
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661511"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661511"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488841"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488841"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 34/38] KVM: VMX: Call fred_entry_from_kvm() for IRQ/NMI handling
Date: Wed, 13 Sep 2023 21:48:01 -0700
Message-Id: <20230914044805.301390-35-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

When FRED is enabled, call fred_entry_from_kvm() to handle IRQ/NMI in
IRQ/NMI induced VM exits.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/kvm/vmx/vmx.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c
index 72e3943f3693..db55b8418fa3 100644
--- a/arch/x86/kvm/vmx/vmx.c
+++ b/arch/x86/kvm/vmx/vmx.c
@@ -38,6 +38,7 @@
 #include <asm/desc.h>
 #include <asm/fpu/api.h>
 #include <asm/fpu/xstate.h>
+#include <asm/fred.h>
 #include <asm/idtentry.h>
 #include <asm/io.h>
 #include <asm/irq_remapping.h>
@@ -6962,14 +6963,16 @@ static void handle_external_interrupt_irqoff(struct kvm_vcpu *vcpu)
 {
 	u32 intr_info = vmx_get_intr_info(vcpu);
 	unsigned int vector = intr_info & INTR_INFO_VECTOR_MASK;
-	gate_desc *desc = (gate_desc *)host_idt_base + vector;
 
 	if (KVM_BUG(!is_external_intr(intr_info), vcpu->kvm,
 	    "unexpected VM-Exit interrupt info: 0x%x", intr_info))
 		return;
 
 	kvm_before_interrupt(vcpu, KVM_HANDLING_IRQ);
-	vmx_do_interrupt_irqoff(gate_offset(desc));
+	if (cpu_feature_enabled(X86_FEATURE_FRED))
+		fred_entry_from_kvm(EVENT_TYPE_EXTINT, vector);
+	else
+		vmx_do_interrupt_irqoff(gate_offset((gate_desc *)host_idt_base + vector));
 	kvm_after_interrupt(vcpu);
 
 	vcpu->arch.at_instruction_boundary = true;
@@ -7262,7 +7265,10 @@ static noinstr void vmx_vcpu_enter_exit(struct kvm_vcpu *vcpu,
 	if ((u16)vmx->exit_reason.basic == EXIT_REASON_EXCEPTION_NMI &&
 	    is_nmi(vmx_get_intr_info(vcpu))) {
 		kvm_before_interrupt(vcpu, KVM_HANDLING_NMI);
-		vmx_do_nmi_irqoff();
+		if (cpu_feature_enabled(X86_FEATURE_FRED))
+			fred_entry_from_kvm(EVENT_TYPE_NMI, NMI_VECTOR);
+		else
+			vmx_do_nmi_irqoff();
 		kvm_after_interrupt(vcpu);
 	}
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:28:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:28:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601840.938158 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeto-0006J4-UN; Thu, 14 Sep 2023 05:28:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601840.938158; Thu, 14 Sep 2023 05:28:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeto-0006Ix-Q5; Thu, 14 Sep 2023 05:28:20 +0000
Received: by outflank-mailman (input) for mailman id 601840;
 Thu, 14 Sep 2023 05:28:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelM-0001X7-6Z
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:36 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 49e6118e-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:33 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:44 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:44 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 49e6118e-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668773; x=1726204773;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=+RlrgHiXutSgx6eL8XqhKvBuCjbeEldfualcJOd97C0=;
  b=VdABq8rG4K0InEKCiSwdr6Q5kwZvOlr3dOaFZaMnO9jONVYUyvMb7s3a
   IuNHQJy4t4vjr0sS6I3XSzZuYcjOyVUp0Zw28t0+fCQowfcIz46Xhwd5j
   8vqS6A3dG11lNjasVkWQ4q4VvdD0Df/RQOqT2i1ktKASe5YnlmKNtRUM3
   r0oQZ1skw6iohasfNEV4WLmL+65aQu6z/J8RinEJ2ZwDs6z/Jk2ue2DCn
   3bH76eALiuaLnhYlPoYHH5pOGWRqII1ZOesmG/ZEqxy7PrMeY83/veD0b
   gxIGXJOTZjwtv1tG0B6ETZHrJAlB/cUCENEFngswF7di0xofDjRhFnPTm
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661447"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661447"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488826"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488826"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 29/38] x86/traps: Add sysvec_install() to install a system interrupt handler
Date: Wed, 13 Sep 2023 21:47:56 -0700
Message-Id: <20230914044805.301390-30-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add sysvec_install() to install a system interrupt handler into the IDT
or the FRED system interrupt handler table.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v8:
* Introduce a macro sysvec_install() to derive the asm handler name from
  a C handler, which simplifies the code and avoids an ugly typecast
  (Thomas Gleixner).
---
 arch/x86/entry/entry_fred.c      | 14 ++++++++++++++
 arch/x86/include/asm/desc.h      |  2 --
 arch/x86/include/asm/idtentry.h  | 15 +++++++++++++++
 arch/x86/kernel/cpu/acrn.c       |  4 ++--
 arch/x86/kernel/cpu/mshyperv.c   | 15 +++++++--------
 arch/x86/kernel/idt.c            |  4 ++--
 arch/x86/kernel/kvm.c            |  2 +-
 drivers/xen/events/events_base.c |  2 +-
 8 files changed, 42 insertions(+), 16 deletions(-)

diff --git a/arch/x86/entry/entry_fred.c b/arch/x86/entry/entry_fred.c
index dc645f5819a9..2fd3e421e066 100644
--- a/arch/x86/entry/entry_fred.c
+++ b/arch/x86/entry/entry_fred.c
@@ -126,6 +126,20 @@ static idtentry_t sysvec_table[NR_SYSTEM_VECTORS] __ro_after_init = {
 	SYSVEC(POSTED_INTR_NESTED_VECTOR,	kvm_posted_intr_nested_ipi),
 };
 
+static bool fred_setup_done __initdata;
+
+void __init fred_install_sysvec(unsigned int sysvec, idtentry_t handler)
+{
+	if (WARN_ON_ONCE(sysvec < FIRST_SYSTEM_VECTOR))
+		return;
+
+	if (WARN_ON_ONCE(fred_setup_done))
+		return;
+
+	if (!WARN_ON_ONCE(sysvec_table[sysvec - FIRST_SYSTEM_VECTOR]))
+		 sysvec_table[sysvec - FIRST_SYSTEM_VECTOR] = handler;
+}
+
 static noinstr void fred_extint(struct pt_regs *regs)
 {
 	unsigned int vector = regs->fred_ss.vector;
diff --git a/arch/x86/include/asm/desc.h b/arch/x86/include/asm/desc.h
index ab97b22ac04a..ec95fe44fa3a 100644
--- a/arch/x86/include/asm/desc.h
+++ b/arch/x86/include/asm/desc.h
@@ -402,8 +402,6 @@ static inline void set_desc_limit(struct desc_struct *desc, unsigned long limit)
 	desc->limit1 = (limit >> 16) & 0xf;
 }
 
-void alloc_intr_gate(unsigned int n, const void *addr);
-
 static inline void init_idt_data(struct idt_data *data, unsigned int n,
 				 const void *addr)
 {
diff --git a/arch/x86/include/asm/idtentry.h b/arch/x86/include/asm/idtentry.h
index 4f26ee9b8b74..650c98160152 100644
--- a/arch/x86/include/asm/idtentry.h
+++ b/arch/x86/include/asm/idtentry.h
@@ -459,6 +459,21 @@ __visible noinstr void func(struct pt_regs *regs,			\
 #define DEFINE_FREDENTRY_DEBUG		DEFINE_FREDENTRY_RAW
 #endif
 
+void idt_install_sysvec(unsigned int n, const void *function);
+
+#ifdef CONFIG_X86_FRED
+void fred_install_sysvec(unsigned int vector, const idtentry_t function);
+#else
+static inline void fred_install_sysvec(unsigned int vector, const idtentry_t function) { }
+#endif
+
+#define sysvec_install(vector, function) {				\
+	if (cpu_feature_enabled(X86_FEATURE_FRED))			\
+		fred_install_sysvec(vector, function);			\
+	else								\
+		idt_install_sysvec(vector, asm_##function);		\
+}
+
 #else /* !__ASSEMBLY__ */
 
 /*
diff --git a/arch/x86/kernel/cpu/acrn.c b/arch/x86/kernel/cpu/acrn.c
index bfeb18fad63f..2c5b51aad91a 100644
--- a/arch/x86/kernel/cpu/acrn.c
+++ b/arch/x86/kernel/cpu/acrn.c
@@ -26,8 +26,8 @@ static u32 __init acrn_detect(void)
 
 static void __init acrn_init_platform(void)
 {
-	/* Setup the IDT for ACRN hypervisor callback */
-	alloc_intr_gate(HYPERVISOR_CALLBACK_VECTOR, asm_sysvec_acrn_hv_callback);
+	/* Install system interrupt handler for ACRN hypervisor callback */
+	sysvec_install(HYPERVISOR_CALLBACK_VECTOR, sysvec_acrn_hv_callback);
 
 	x86_platform.calibrate_tsc = acrn_get_tsc_khz;
 	x86_platform.calibrate_cpu = acrn_get_tsc_khz;
diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kernel/cpu/mshyperv.c
index e6bba12c759c..3403880c3e09 100644
--- a/arch/x86/kernel/cpu/mshyperv.c
+++ b/arch/x86/kernel/cpu/mshyperv.c
@@ -536,19 +536,18 @@ static void __init ms_hyperv_init_platform(void)
 	 */
 	x86_platform.apic_post_init = hyperv_init;
 	hyperv_setup_mmu_ops();
-	/* Setup the IDT for hypervisor callback */
-	alloc_intr_gate(HYPERVISOR_CALLBACK_VECTOR, asm_sysvec_hyperv_callback);
 
-	/* Setup the IDT for reenlightenment notifications */
+	/* Install system interrupt handler for hypervisor callback */
+	sysvec_install(HYPERVISOR_CALLBACK_VECTOR, sysvec_hyperv_callback);
+
+	/* Install system interrupt handler for reenlightenment notifications */
 	if (ms_hyperv.features & HV_ACCESS_REENLIGHTENMENT) {
-		alloc_intr_gate(HYPERV_REENLIGHTENMENT_VECTOR,
-				asm_sysvec_hyperv_reenlightenment);
+		sysvec_install(HYPERV_REENLIGHTENMENT_VECTOR, sysvec_hyperv_reenlightenment);
 	}
 
-	/* Setup the IDT for stimer0 */
+	/* Install system interrupt handler for stimer0 */
 	if (ms_hyperv.misc_features & HV_STIMER_DIRECT_MODE_AVAILABLE) {
-		alloc_intr_gate(HYPERV_STIMER0_VECTOR,
-				asm_sysvec_hyperv_stimer0);
+		sysvec_install(HYPERV_STIMER0_VECTOR, sysvec_hyperv_stimer0);
 	}
 
 # ifdef CONFIG_SMP
diff --git a/arch/x86/kernel/idt.c b/arch/x86/kernel/idt.c
index b786d48f5a0f..0db7d92de48a 100644
--- a/arch/x86/kernel/idt.c
+++ b/arch/x86/kernel/idt.c
@@ -330,7 +330,7 @@ void idt_invalidate(void)
 	load_idt(&idt);
 }
 
-void __init alloc_intr_gate(unsigned int n, const void *addr)
+void __init idt_install_sysvec(unsigned int n, const void *function)
 {
 	if (WARN_ON(n < FIRST_SYSTEM_VECTOR))
 		return;
@@ -339,5 +339,5 @@ void __init alloc_intr_gate(unsigned int n, const void *addr)
 		return;
 
 	if (!WARN_ON(test_and_set_bit(n, system_vectors)))
-		set_intr_gate(n, addr);
+		set_intr_gate(n, function);
 }
diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c
index b8ab9ee5896c..eabf03813a5c 100644
--- a/arch/x86/kernel/kvm.c
+++ b/arch/x86/kernel/kvm.c
@@ -829,7 +829,7 @@ static void __init kvm_guest_init(void)
 
 	if (kvm_para_has_feature(KVM_FEATURE_ASYNC_PF_INT) && kvmapf) {
 		static_branch_enable(&kvm_async_pf_enabled);
-		alloc_intr_gate(HYPERVISOR_CALLBACK_VECTOR, asm_sysvec_kvm_asyncpf_interrupt);
+		sysvec_install(HYPERVISOR_CALLBACK_VECTOR, sysvec_kvm_asyncpf_interrupt);
 	}
 
 #ifdef CONFIG_SMP
diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 3bdd5b59661d..c54123ca7b1a 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -2243,7 +2243,7 @@ static __init void xen_alloc_callback_vector(void)
 		return;
 
 	pr_info("Xen HVM callback vector for event delivery is enabled\n");
-	alloc_intr_gate(HYPERVISOR_CALLBACK_VECTOR, asm_sysvec_xen_hvm_callback);
+	sysvec_install(HYPERVISOR_CALLBACK_VECTOR, sysvec_xen_hvm_callback);
 }
 #else
 void xen_setup_callback_vector(void) {}
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:28:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:28:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601844.938168 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeuF-0006sH-4Q; Thu, 14 Sep 2023 05:28:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601844.938168; Thu, 14 Sep 2023 05:28:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeuF-0006sA-1d; Thu, 14 Sep 2023 05:28:47 +0000
Received: by outflank-mailman (input) for mailman id 601844;
 Thu, 14 Sep 2023 05:28:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelS-0001XI-2e
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:42 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4c4be9c6-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:37 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:46 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:46 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4c4be9c6-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668777; x=1726204777;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=q3Z+nMXlKl4d8APy8tB7Jrc++CPbfQFwd1zn6dKyIm8=;
  b=En/bAZS/Mp1URluVBEzqkeLlAhr9oQYbb2hIR+wvsIIGfJUCraJEsW7k
   Zmqhjv30cKUWnu+/h5fjj86f+GgSnelMeI2KTg0gFUt9S07xDEhX8eTMt
   FBfynh3L2PL9j5GrUaMoJ9qP6N0CjOcR6b2uejrrJPWhyT68vtEVWPsqA
   vKxlOWqkOMLXo4mVznXL/fI3dOqM/GYOv2iUQhLvDUDAxJDidzJRQG7nK
   71cSh0Xd7TK4Cj0jfcS457STL6KpshcU5ROvF5aT6qDumTEAvTWCLieYU
   rNlQKWq6YNAz1vjvuoX7rt2g8LSokLv3QcxR0c3xCr7nEF77xsEdYtXIE
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661498"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661498"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488838"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488838"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 33/38] x86/entry: Add fred_entry_from_kvm() for VMX to handle IRQ/NMI
Date: Wed, 13 Sep 2023 21:48:00 -0700
Message-Id: <20230914044805.301390-34-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

In IRQ/NMI induced VM exits, KVM VMX needs to execute the respective
handlers, which requires the software to create a FRED stack frame,
and use it to invoke the handlers. Add fred_irq_entry_from_kvm() for
this job.

Export fred_entry_from_kvm() because VMX can be compiled as a module.

Suggested-by: Sean Christopherson <seanjc@google.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v9:
* Shove the whole thing into arch/x86/entry/entry_64_fred.S for invoking
  external_interrupt() and fred_exc_nmi() (Sean Christopherson).
* Correct and improve a few comments (Sean Christopherson).
* Merge the two IRQ/NMI asm entries into one as it's fine to invoke
  noinstr code from regular code (Thomas Gleixner).
* Setup the long mode and NMI flags in the augmented SS field of FRED
  stack frame in C instead of asm (Thomas Gleixner).
* Add UNWIND_HINT_{SAVE,RESTORE} to get rid of the warning: "objtool:
  asm_fred_entry_from_kvm+0x0: unreachable instruction" (Peter Zijlstra).

Changes since v8:
* Add a new macro VMX_DO_FRED_EVENT_IRQOFF for FRED instead of
  refactoring VMX_DO_EVENT_IRQOFF (Sean Christopherson).
* Do NOT use a trampoline, just LEA+PUSH the return RIP, PUSH the error
  code, and jump to the FRED kernel entry point for NMI or call
  external_interrupt() for IRQs (Sean Christopherson).
* Call external_interrupt() only when FRED is enabled, and convert the
  non-FRED handling to external_interrupt() after FRED lands (Sean
  Christopherson).
---
 arch/x86/entry/entry_64_fred.S | 73 ++++++++++++++++++++++++++++++++++
 arch/x86/entry/entry_fred.c    | 14 +++++++
 arch/x86/include/asm/fred.h    | 18 +++++++++
 3 files changed, 105 insertions(+)

diff --git a/arch/x86/entry/entry_64_fred.S b/arch/x86/entry/entry_64_fred.S
index d1c2fc4af8ae..f1088d6f2054 100644
--- a/arch/x86/entry/entry_64_fred.S
+++ b/arch/x86/entry/entry_64_fred.S
@@ -4,7 +4,9 @@
  */
 
 #include <asm/asm.h>
+#include <asm/export.h>
 #include <asm/fred.h>
+#include <asm/segment.h>
 
 #include "calling.h"
 
@@ -54,3 +56,74 @@ SYM_CODE_START_NOALIGN(asm_fred_entrypoint_kernel)
 	FRED_EXIT
 	ERETS
 SYM_CODE_END(asm_fred_entrypoint_kernel)
+
+#if IS_ENABLED(CONFIG_KVM_INTEL)
+SYM_FUNC_START(asm_fred_entry_from_kvm)
+	push %rbp
+	mov %rsp, %rbp
+
+	UNWIND_HINT_SAVE
+
+	/*
+	 * Don't check the FRED stack level, the call stack leading to this
+	 * helper is effectively constant and shallow (relatively speaking).
+	 *
+	 * Emulate the FRED-defined redzone and stack alignment.
+	 */
+	sub $(FRED_CONFIG_REDZONE_AMOUNT << 6), %rsp
+	and $FRED_STACK_FRAME_RSP_MASK, %rsp
+
+	/*
+	 * Start to push a FRED stack frame, which is always 64 bytes:
+	 *
+	 * +--------+-----------------+
+	 * | Bytes  | Usage           |
+	 * +--------+-----------------+
+	 * | 63:56  | Reserved        |
+	 * | 55:48  | Event Data      |
+	 * | 47:40  | SS + Event Info |
+	 * | 39:32  | RSP             |
+	 * | 31:24  | RFLAGS          |
+	 * | 23:16  | CS + Aux Info   |
+	 * |  15:8  | RIP             |
+	 * |   7:0  | Error Code      |
+	 * +--------+-----------------+
+	 */
+	push $0				/* Reserved, must be 0 */
+	push $0				/* Event data, 0 for IRQ/NMI */
+	push %rdi			/* fred_ss handed in by the caller */
+	push %rbp
+	pushf
+	mov $__KERNEL_CS, %rax
+	push %rax
+
+	/*
+	 * Unlike the IDT event delivery, FRED _always_ pushes an error code
+	 * after pushing the return RIP, thus the CALL instruction CANNOT be
+	 * used here to push the return RIP, otherwise there is no chance to
+	 * push an error code before invoking the IRQ/NMI handler.
+	 *
+	 * Use LEA to get the return RIP and push it, then push an error code.
+	 */
+	lea 1f(%rip), %rax
+	push %rax				/* Return RIP */
+	push $0					/* Error code, 0 for IRQ/NMI */
+
+	PUSH_AND_CLEAR_REGS clear_bp=0 unwind_hint=0
+	movq %rsp, %rdi				/* %rdi -> pt_regs */
+	call __fred_entry_from_kvm		/* Call the C entry point */
+	POP_REGS
+	ERETS
+1:
+	/*
+	 * Objtool doesn't understand what ERETS does, this hint tells it that
+	 * yes, we'll reach here and with what stack state. A save/restore pair
+	 * isn't strictly needed, but it's the simplest form.
+	 */
+	UNWIND_HINT_RESTORE
+	pop %rbp
+	RET
+
+SYM_FUNC_END(asm_fred_entry_from_kvm)
+EXPORT_SYMBOL_GPL(asm_fred_entry_from_kvm);
+#endif
diff --git a/arch/x86/entry/entry_fred.c b/arch/x86/entry/entry_fred.c
index 2fd3e421e066..f8774611af80 100644
--- a/arch/x86/entry/entry_fred.c
+++ b/arch/x86/entry/entry_fred.c
@@ -242,3 +242,17 @@ __visible noinstr void fred_entry_from_kernel(struct pt_regs *regs)
 		return fred_bad_type(regs, error_code);
 	}
 }
+
+#if IS_ENABLED(CONFIG_KVM_INTEL)
+__visible noinstr void __fred_entry_from_kvm(struct pt_regs *regs)
+{
+	switch (regs->fred_ss.type) {
+	case EVENT_TYPE_EXTINT:
+		return fred_extint(regs);
+	case EVENT_TYPE_NMI:
+		return fred_exc_nmi(regs);
+	default:
+		WARN_ON_ONCE(1);
+	}
+}
+#endif
diff --git a/arch/x86/include/asm/fred.h b/arch/x86/include/asm/fred.h
index 16a64ffecbf8..2fa9f34e5c95 100644
--- a/arch/x86/include/asm/fred.h
+++ b/arch/x86/include/asm/fred.h
@@ -9,6 +9,7 @@
 #include <linux/const.h>
 
 #include <asm/asm.h>
+#include <asm/trapnr.h>
 
 /*
  * FRED event return instruction opcodes for ERET{S,U}; supported in
@@ -62,12 +63,29 @@ static __always_inline unsigned long fred_event_data(struct pt_regs *regs)
 
 void asm_fred_entrypoint_user(void);
 void asm_fred_entrypoint_kernel(void);
+void asm_fred_entry_from_kvm(struct fred_ss);
 
 __visible void fred_entry_from_user(struct pt_regs *regs);
 __visible void fred_entry_from_kernel(struct pt_regs *regs);
+__visible void __fred_entry_from_kvm(struct pt_regs *regs);
+
+/* Can be called from noinstr code, thus __always_inline */
+static __always_inline void fred_entry_from_kvm(unsigned int type, unsigned int vector)
+{
+	struct fred_ss ss = {
+		.ss     =__KERNEL_DS,
+		.type   = type,
+		.vector = vector,
+		.nmi    = type == EVENT_TYPE_NMI,
+		.lm     = 1,
+	};
+
+	asm_fred_entry_from_kvm(ss);
+}
 
 #else /* CONFIG_X86_FRED */
 static __always_inline unsigned long fred_event_data(struct pt_regs *regs) { return 0; }
+static __always_inline void fred_entry_from_kvm(unsigned int type, unsigned int vector) { }
 #endif /* CONFIG_X86_FRED */
 #endif /* !__ASSEMBLY__ */
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:30:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:30:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601861.938178 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgevy-0000J7-Hd; Thu, 14 Sep 2023 05:30:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601861.938178; Thu, 14 Sep 2023 05:30:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgevy-0000J0-F4; Thu, 14 Sep 2023 05:30:34 +0000
Received: by outflank-mailman (input) for mailman id 601861;
 Thu, 14 Sep 2023 05:30:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelK-0001X7-6R
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:34 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 48dffcb6-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:32 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:43 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:42 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 48dffcb6-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668772; x=1726204772;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=bNtEfhEic2/4eI6U3F6LZD3GtdQN7TZ08d/4AOd+L9I=;
  b=b6EDn/D/dMSWGnToVFlQMYDKR3uxkHgP4zsLVmMsMMErPuCoNI9UGGQg
   JMgtPur/S/9LG+ix8SKY88e3oPE5f5AE1EiKbL6z9y0fXGd/7WHhN//ii
   fBiWdqo/j888+Yw8Zvr0ugFZnjtQxcztP3NPJy/Bwatk2lxJr6zSF9XZ9
   5nCCALGZK6G8ZQ4gCVLi6MFeliEYgr0bAYx4uGijZQEjg44LsT0IqBxA0
   R/0iyhZasr+bQ9dMLRxGwvit9J5yqgXBoqShoeFib5rowtUVbWnWUES5O
   bhTKprW+YdpqxxYMzJh05fZAK14REd8p/A9HPT8DImiPV7b6RHXMAJ4ka
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661420"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661420"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488820"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488820"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 27/38] x86/fred: Add a machine check entry stub for FRED
Date: Wed, 13 Sep 2023 21:47:54 -0700
Message-Id: <20230914044805.301390-28-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Like #DB, when occurred on different ring level, i.e., from user or kernel
context, #MCE needs to be handled on different stack: User #MCE on current
task stack, while kernel #MCE on a dedicated stack.

This is exactly how FRED event delivery invokes an exception handler: ring
3 event on level 0 stack, i.e., current task stack; ring 0 event on the
#MCE dedicated stack specified in the IA32_FRED_STKLVLS MSR. So unlike IDT,
the FRED machine check entry stub doesn't do stack switch.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v5:
* Disallow #DB inside #MCE for robustness sake (Peter Zijlstra).
---
 arch/x86/kernel/cpu/mce/core.c | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/arch/x86/kernel/cpu/mce/core.c b/arch/x86/kernel/cpu/mce/core.c
index 6f35f724cc14..da0a4a102afe 100644
--- a/arch/x86/kernel/cpu/mce/core.c
+++ b/arch/x86/kernel/cpu/mce/core.c
@@ -52,6 +52,7 @@
 #include <asm/mce.h>
 #include <asm/msr.h>
 #include <asm/reboot.h>
+#include <asm/fred.h>
 
 #include "internal.h"
 
@@ -2144,6 +2145,31 @@ DEFINE_IDTENTRY_MCE_USER(exc_machine_check)
 	exc_machine_check_user(regs);
 	local_db_restore(dr7);
 }
+
+#ifdef CONFIG_X86_FRED
+/*
+ * When occurred on different ring level, i.e., from user or kernel
+ * context, #MCE needs to be handled on different stack: User #MCE
+ * on current task stack, while kernel #MCE on a dedicated stack.
+ *
+ * This is exactly how FRED event delivery invokes an exception
+ * handler: ring 3 event on level 0 stack, i.e., current task stack;
+ * ring 0 event on the #MCE dedicated stack specified in the
+ * IA32_FRED_STKLVLS MSR. So unlike IDT, the FRED machine check entry
+ * stub doesn't do stack switch.
+ */
+DEFINE_FREDENTRY_MCE(exc_machine_check)
+{
+	unsigned long dr7;
+
+	dr7 = local_db_save();
+	if (user_mode(regs))
+		exc_machine_check_user(regs);
+	else
+		exc_machine_check_kernel(regs);
+	local_db_restore(dr7);
+}
+#endif
 #else
 /* 32bit unified entry point */
 DEFINE_IDTENTRY_RAW(exc_machine_check)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:31:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:31:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601869.938188 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgewO-0000pQ-Pa; Thu, 14 Sep 2023 05:31:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601869.938188; Thu, 14 Sep 2023 05:31:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgewO-0000pJ-Mr; Thu, 14 Sep 2023 05:31:00 +0000
Received: by outflank-mailman (input) for mailman id 601869;
 Thu, 14 Sep 2023 05:30:59 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelE-0001X7-RU
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:28 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 46938adc-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:27 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:40 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:39 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 46938adc-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668768; x=1726204768;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=daicXFK30tmpTUp95RTD2ZQAe5K9xY8zuW1WSEbSaqA=;
  b=IZ3fDdlobGpN06FbjcdFiP9FpheyP5cyVJPDH8xjeX49jBnNSlyP7UGW
   kPtUcIgIGsO2RE2rfkIt2N5bWehy6lUlRO20VmAjTfMfI34MpNlnI0Euf
   RDWrqarKs1HwU/MusuRg3yHfZI2gD4eVWMff0seugKGTQCl4IvR/dyycU
   6qRMta/dkaC92O0VIss3q3KOy1jdozi5oKM3OnCOFvOCntLm9sfaT+MRO
   IberLtrRd6zaR1JOCWi0Te4HbU2OQWEO62AG/PspS82oNdSJVILfhrh8Y
   p2sAQnaaLcGLBmDCWeJvuhCFOJRKTVCyqO6Qs7PxgnR7JpwOOd0iYdVCU
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661342"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661342"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488802"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488802"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 21/38] x86/fred: No ESPFIX needed when FRED is enabled
Date: Wed, 13 Sep 2023 21:47:48 -0700
Message-Id: <20230914044805.301390-22-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Because FRED always restores the full value of %rsp, ESPFIX is
no longer needed when it's enabled.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/kernel/espfix_64.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/x86/kernel/espfix_64.c b/arch/x86/kernel/espfix_64.c
index 16f9814c9be0..6726e0473d0b 100644
--- a/arch/x86/kernel/espfix_64.c
+++ b/arch/x86/kernel/espfix_64.c
@@ -106,6 +106,10 @@ void __init init_espfix_bsp(void)
 	pgd_t *pgd;
 	p4d_t *p4d;
 
+	/* FRED systems always restore the full value of %rsp */
+	if (cpu_feature_enabled(X86_FEATURE_FRED))
+		return;
+
 	/* Install the espfix pud into the kernel page directory */
 	pgd = &init_top_pgt[pgd_index(ESPFIX_BASE_ADDR)];
 	p4d = p4d_alloc(&init_mm, pgd, ESPFIX_BASE_ADDR);
@@ -129,6 +133,10 @@ void init_espfix_ap(int cpu)
 	void *stack_page;
 	pteval_t ptemask;
 
+	/* FRED systems always restore the full value of %rsp */
+	if (cpu_feature_enabled(X86_FEATURE_FRED))
+		return;
+
 	/* We only have to do this once... */
 	if (likely(per_cpu(espfix_stack, cpu)))
 		return;		/* Already initialized */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:31:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:31:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601878.938197 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgewV-000194-0s; Thu, 14 Sep 2023 05:31:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601878.938197; Thu, 14 Sep 2023 05:31:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgewU-00018x-Tx; Thu, 14 Sep 2023 05:31:06 +0000
Received: by outflank-mailman (input) for mailman id 601878;
 Thu, 14 Sep 2023 05:31:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelU-0001XI-2i
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:44 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4de96d02-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:40 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:49 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:48 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4de96d02-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668780; x=1726204780;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=24bZxrNwN6mEn31ObZA79OqggozStalI8dlLgDZYX38=;
  b=FO89w6xg33atRTsEhmJjdf3C42wrlw1Sy7UGjU8+VsW9ELNeQun3Z5w0
   OKQ5TNpZLx06GgWOl2eTvH8eksg8HpxpKN8NXF50BOTwu4pWBcxabxQGc
   iV7sD4A9o3WT0n1jCSSy4Bi77LdIcuF4q2yrYV1h0glOnVboSQhzs8zR3
   oRtrY+uCKOP1339MoIyV2DIXvwWxUXwBcRmAQAm6k3q/bu3/PVLQxMJAP
   NvdJiC9m9T6wgTRzKnRJ+9z2rstUsuxqHmMA05Q9Od1MaaG3cnm81UvJz
   WQO99EU1uDUuXvV8cYkWhW1kuMU4iAh8ems2rH3MK6FATrXhS9kBF3WDQ
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661562"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661562"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488853"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488853"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 38/38] x86/fred: Invoke FRED initialization code to enable FRED
Date: Wed, 13 Sep 2023 21:48:05 -0700
Message-Id: <20230914044805.301390-39-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Let cpu_init_exception_handling() call cpu_init_fred_exceptions() to
initialize FRED. However if FRED is unavailable or disabled, it falls
back to set up TSS IST and initialize IDT.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Co-developed-by: Xin Li <xin3.li@intel.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v8:
* Move this patch after all required changes are in place (Thomas
  Gleixner).
---
 arch/x86/kernel/cpu/common.c | 17 ++++++++++++-----
 arch/x86/kernel/irqinit.c    |  7 ++++++-
 arch/x86/kernel/traps.c      |  5 ++++-
 3 files changed, 22 insertions(+), 7 deletions(-)

diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index 4cb36e241c9a..e230d3f4c556 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -61,6 +61,7 @@
 #include <asm/microcode.h>
 #include <asm/intel-family.h>
 #include <asm/cpu_device_id.h>
+#include <asm/fred.h>
 #include <asm/uv/uv.h>
 #include <asm/set_memory.h>
 #include <asm/traps.h>
@@ -2128,7 +2129,10 @@ void syscall_init(void)
 	/* The default user and kernel segments */
 	wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
 
-	idt_syscall_init();
+	if (cpu_feature_enabled(X86_FEATURE_FRED))
+		fred_syscall_init();
+	else
+		idt_syscall_init();
 }
 
 #else	/* CONFIG_X86_64 */
@@ -2244,8 +2248,9 @@ void cpu_init_exception_handling(void)
 	/* paranoid_entry() gets the CPU number from the GDT */
 	setup_getcpu(cpu);
 
-	/* IST vectors need TSS to be set up. */
-	tss_setup_ist(tss);
+	/* For IDT mode, IST vectors need to be set in TSS. */
+	if (!cpu_feature_enabled(X86_FEATURE_FRED))
+		tss_setup_ist(tss);
 	tss_setup_io_bitmap(tss);
 	set_tss_desc(cpu, &get_cpu_entry_area(cpu)->tss.x86_tss);
 
@@ -2254,8 +2259,10 @@ void cpu_init_exception_handling(void)
 	/* GHCB needs to be setup to handle #VC. */
 	setup_ghcb();
 
-	/* Finally load the IDT */
-	load_current_idt();
+	if (cpu_feature_enabled(X86_FEATURE_FRED))
+		cpu_init_fred_exceptions();
+	else
+		load_current_idt();
 }
 
 /*
diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c
index c683666876f1..f79c5edc0b89 100644
--- a/arch/x86/kernel/irqinit.c
+++ b/arch/x86/kernel/irqinit.c
@@ -28,6 +28,7 @@
 #include <asm/setup.h>
 #include <asm/i8259.h>
 #include <asm/traps.h>
+#include <asm/fred.h>
 #include <asm/prom.h>
 
 /*
@@ -96,7 +97,11 @@ void __init native_init_IRQ(void)
 	/* Execute any quirks before the call gates are initialised: */
 	x86_init.irqs.pre_vector_init();
 
-	idt_setup_apic_and_irq_gates();
+	if (cpu_feature_enabled(X86_FEATURE_FRED))
+		fred_complete_exception_setup();
+	else
+		idt_setup_apic_and_irq_gates();
+
 	lapic_assign_system_vectors();
 
 	if (!acpi_ioapic && !of_ioapic && nr_legacy_irqs()) {
diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c
index 848c85208a57..0ee78a30e14a 100644
--- a/arch/x86/kernel/traps.c
+++ b/arch/x86/kernel/traps.c
@@ -1411,7 +1411,10 @@ void __init trap_init(void)
 
 	/* Initialize TSS before setting up traps so ISTs work */
 	cpu_init_exception_handling();
+
 	/* Setup traps as cpu_init() might #GP */
-	idt_setup_traps();
+	if (!cpu_feature_enabled(X86_FEATURE_FRED))
+		idt_setup_traps();
+
 	cpu_init();
 }
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:31:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:31:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601885.938208 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgewr-00020P-A5; Thu, 14 Sep 2023 05:31:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601885.938208; Thu, 14 Sep 2023 05:31:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgewr-00020I-70; Thu, 14 Sep 2023 05:31:29 +0000
Received: by outflank-mailman (input) for mailman id 601885;
 Thu, 14 Sep 2023 05:31:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelF-0001XI-HI
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:29 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 465d1996-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:27 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:39 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:39 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 465d1996-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668767; x=1726204767;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=HaNFd9+f6o42v45n40NutGcoZldX+CMRVlEU3cDygtg=;
  b=d8JdWZyyExYIoP5RylWw7VewtMJYhD26w7Khv935inPpkdE0maEkXasP
   qghS8rRjusE0GPHOK92HCQAABLoF6ZOjT5Oxo332G14fhKGbQzcMF74Om
   A2waEKg1pVlnEr5InhWIX4z5qB5FRyvfPSSwhUIB1ubp6ZFKwFUcx87W1
   lqPcLgorLQurUc56kFtR3FSeQI1OVVv9JtDL168NFhYUd5qK5eFdIBwpr
   bLrNHd8VqNvf5aqMhFHAPd5MtrZQxrTOTH4AturfpUTARmFvMyl280DUR
   u+2+QfzzO3X0V05ahi+dteGtgJR9ipgy+MPsxF94rq1pbkLOgkcqYD/Zi
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661327"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661327"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488799"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488799"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 20/38] x86/fred: Disallow the swapgs instruction when FRED is enabled
Date: Wed, 13 Sep 2023 21:47:47 -0700
Message-Id: <20230914044805.301390-21-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

SWAPGS is no longer needed thus NOT allowed with FRED because FRED
transitions ensure that an operating system can _always_ operate
with its own GS base address:
- For events that occur in ring 3, FRED event delivery swaps the GS
  base address with the IA32_KERNEL_GS_BASE MSR.
- ERETU (the FRED transition that returns to ring 3) also swaps the
  GS base address with the IA32_KERNEL_GS_BASE MSR.

And the operating system can still setup the GS segment for a user
thread without the need of loading a user thread GS with:
- Using LKGS, available with FRED, to modify other attributes of the
  GS segment without compromising its ability always to operate with
  its own GS base address.
- Accessing the GS segment base address for a user thread as before
  using RDMSR or WRMSR on the IA32_KERNEL_GS_BASE MSR.

Note, LKGS loads the GS base address into the IA32_KERNEL_GS_BASE MSR
instead of the GS segment’s descriptor cache. As such, the operating
system never changes its runtime GS base address.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v8:
* Explain why writing directly to the IA32_KERNEL_GS_BASE MSR is
  doing the right thing (Thomas Gleixner).
---
 arch/x86/kernel/process_64.c | 27 +++++++++++++++++++++++++--
 1 file changed, 25 insertions(+), 2 deletions(-)

diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
index 0f78b58021bb..4f87f5987ae8 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -166,7 +166,29 @@ static noinstr unsigned long __rdgsbase_inactive(void)
 
 	lockdep_assert_irqs_disabled();
 
-	if (!cpu_feature_enabled(X86_FEATURE_XENPV)) {
+	/*
+	 * SWAPGS is no longer needed thus NOT allowed with FRED because
+	 * FRED transitions ensure that an operating system can _always_
+	 * operate with its own GS base address:
+	 * - For events that occur in ring 3, FRED event delivery swaps
+	 *   the GS base address with the IA32_KERNEL_GS_BASE MSR.
+	 * - ERETU (the FRED transition that returns to ring 3) also swaps
+	 *   the GS base address with the IA32_KERNEL_GS_BASE MSR.
+	 *
+	 * And the operating system can still setup the GS segment for a
+	 * user thread without the need of loading a user thread GS with:
+	 * - Using LKGS, available with FRED, to modify other attributes
+	 *   of the GS segment without compromising its ability always to
+	 *   operate with its own GS base address.
+	 * - Accessing the GS segment base address for a user thread as
+	 *   before using RDMSR or WRMSR on the IA32_KERNEL_GS_BASE MSR.
+	 *
+	 * Note, LKGS loads the GS base address into the IA32_KERNEL_GS_BASE
+	 * MSR instead of the GS segment’s descriptor cache. As such, the
+	 * operating system never changes its runtime GS base address.
+	 */
+	if (!cpu_feature_enabled(X86_FEATURE_FRED) &&
+	    !cpu_feature_enabled(X86_FEATURE_XENPV)) {
 		native_swapgs();
 		gsbase = rdgsbase();
 		native_swapgs();
@@ -191,7 +213,8 @@ static noinstr void __wrgsbase_inactive(unsigned long gsbase)
 {
 	lockdep_assert_irqs_disabled();
 
-	if (!cpu_feature_enabled(X86_FEATURE_XENPV)) {
+	if (!cpu_feature_enabled(X86_FEATURE_FRED) &&
+	    !cpu_feature_enabled(X86_FEATURE_XENPV)) {
 		native_swapgs();
 		wrgsbase(gsbase);
 		native_swapgs();
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:32:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:32:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601894.938218 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgexO-00032e-KH; Thu, 14 Sep 2023 05:32:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601894.938218; Thu, 14 Sep 2023 05:32:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgexO-00032V-GT; Thu, 14 Sep 2023 05:32:02 +0000
Received: by outflank-mailman (input) for mailman id 601894;
 Thu, 14 Sep 2023 05:32:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelX-0001X7-8l
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:47 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4dd92442-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:40 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:48 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:48 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4dd92442-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668780; x=1726204780;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=oAURox5d3DpugMW7F8/nDRZuIjZAXrI53V5n3V05JaY=;
  b=DHTxSXLVAcinbyC6WVkl7K/TD0mGdj4oH5M/hODFr1nyme2zsfR8LEZS
   Z8OfZ0SrT017RfNLS80RqLQHCWAtusp2KPNQAY5Jjjux72xpfMWIq5bjd
   4O2S6WB/6sx3fMmi4WyFQ3YQKIVLOGYPnrG18UFs4QwltRZrelz9ZTTi0
   FwxcC5B8vzhC1jgz/abhuApF2WQmbWx74Mk3ElqcX2IUG/d4a3uWgvUrd
   Z1PURDNyyDVIWiPvwXq3npd61FninJ+Q7unYTWQuNeho0hP5bdLSp56Nx
   UmwPjt2nQxoz6gz1Pd1nCitjISwUugZW8cZtlpr6HmVZQSo9fMNLafnGh
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661550"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661550"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488850"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488850"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 37/38] x86/fred: Add FRED initialization functions
Date: Wed, 13 Sep 2023 21:48:04 -0700
Message-Id: <20230914044805.301390-38-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add cpu_init_fred_exceptions() to:
  - Set FRED entrypoints for events happening in ring 0 and 3.
  - Specify the stack level for IRQs occurred ring 0.
  - Specify dedicated event stacks for #DB/NMI/#MCE/#DF.
  - Enable FRED and invalidtes IDT.
  - Force 32-bit system calls to use "int $0x80" only.

Add fred_complete_exception_setup() to:
  - Initialize system_vectors as done for IDT systems.
  - Set unused sysvec_table entries to fred_handle_spurious_interrupt().

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Co-developed-by: Xin Li <xin3.li@intel.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v9:
* Set unused sysvec table entries to fred_handle_spurious_interrupt()
  in fred_complete_exception_setup() (Thomas Gleixner).

Changes since v5:
* Add a comment for FRED stack level settings (Lai Jiangshan).
* Define NMI/#DB/#MCE/#DF stack levels using macros.
---
 arch/x86/entry/entry_fred.c | 21 +++++++++++++
 arch/x86/include/asm/fred.h |  5 ++++
 arch/x86/kernel/Makefile    |  1 +
 arch/x86/kernel/fred.c      | 59 +++++++++++++++++++++++++++++++++++++
 4 files changed, 86 insertions(+)
 create mode 100644 arch/x86/kernel/fred.c

diff --git a/arch/x86/entry/entry_fred.c b/arch/x86/entry/entry_fred.c
index f8774611af80..7d507f59315d 100644
--- a/arch/x86/entry/entry_fred.c
+++ b/arch/x86/entry/entry_fred.c
@@ -140,6 +140,27 @@ void __init fred_install_sysvec(unsigned int sysvec, idtentry_t handler)
 		 sysvec_table[sysvec - FIRST_SYSTEM_VECTOR] = handler;
 }
 
+static noinstr void fred_handle_spurious_interrupt(struct pt_regs *regs)
+{
+	spurious_interrupt(regs, regs->fred_ss.vector);
+}
+
+void __init fred_complete_exception_setup(void)
+{
+	unsigned int vector;
+
+	for (vector = 0; vector < FIRST_EXTERNAL_VECTOR; vector++)
+		set_bit(vector, system_vectors);
+
+	for (vector = 0; vector < NR_SYSTEM_VECTORS; vector++) {
+		if (sysvec_table[vector])
+			set_bit(vector + FIRST_SYSTEM_VECTOR, system_vectors);
+		else
+			sysvec_table[vector] = fred_handle_spurious_interrupt;
+	}
+	fred_setup_done = true;
+}
+
 static noinstr void fred_extint(struct pt_regs *regs)
 {
 	unsigned int vector = regs->fred_ss.vector;
diff --git a/arch/x86/include/asm/fred.h b/arch/x86/include/asm/fred.h
index 2fa9f34e5c95..e86c7ba32435 100644
--- a/arch/x86/include/asm/fred.h
+++ b/arch/x86/include/asm/fred.h
@@ -83,8 +83,13 @@ static __always_inline void fred_entry_from_kvm(unsigned int type, unsigned int
 	asm_fred_entry_from_kvm(ss);
 }
 
+void cpu_init_fred_exceptions(void);
+void fred_complete_exception_setup(void);
+
 #else /* CONFIG_X86_FRED */
 static __always_inline unsigned long fred_event_data(struct pt_regs *regs) { return 0; }
+static inline void cpu_init_fred_exceptions(void) { }
+static inline void fred_complete_exception_setup(void) { }
 static __always_inline void fred_entry_from_kvm(unsigned int type, unsigned int vector) { }
 #endif /* CONFIG_X86_FRED */
 #endif /* !__ASSEMBLY__ */
diff --git a/arch/x86/kernel/Makefile b/arch/x86/kernel/Makefile
index 3269a0e23d3a..8dfdae4111bb 100644
--- a/arch/x86/kernel/Makefile
+++ b/arch/x86/kernel/Makefile
@@ -47,6 +47,7 @@ obj-y			+= platform-quirks.o
 obj-y			+= process_$(BITS).o signal.o signal_$(BITS).o
 obj-y			+= traps.o idt.o irq.o irq_$(BITS).o dumpstack_$(BITS).o
 obj-y			+= time.o ioport.o dumpstack.o nmi.o
+obj-$(CONFIG_X86_FRED)	+= fred.o
 obj-$(CONFIG_MODIFY_LDT_SYSCALL)	+= ldt.o
 obj-$(CONFIG_X86_KERNEL_IBT)		+= ibt_selftest.o
 obj-y			+= setup.o x86_init.o i8259.o irqinit.o
diff --git a/arch/x86/kernel/fred.c b/arch/x86/kernel/fred.c
new file mode 100644
index 000000000000..4bcd8791ad96
--- /dev/null
+++ b/arch/x86/kernel/fred.c
@@ -0,0 +1,59 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#include <linux/kernel.h>
+
+#include <asm/desc.h>
+#include <asm/fred.h>
+#include <asm/tlbflush.h>
+#include <asm/traps.h>
+
+/* #DB in the kernel would imply the use of a kernel debugger. */
+#define FRED_DB_STACK_LEVEL		1UL
+#define FRED_NMI_STACK_LEVEL		2UL
+#define FRED_MC_STACK_LEVEL		2UL
+/*
+ * #DF is the highest level because a #DF means "something went wrong
+ * *while delivering an exception*." The number of cases for which that
+ * can happen with FRED is drastically reduced and basically amounts to
+ * "the stack you pointed me to is broken." Thus, always change stacks
+ * on #DF, which means it should be at the highest level.
+ */
+#define FRED_DF_STACK_LEVEL		3UL
+
+#define FRED_STKLVL(vector, lvl)	((lvl) << (2 * (vector)))
+
+void cpu_init_fred_exceptions(void)
+{
+	/* When FRED is enabled by default, remove this log message */
+	pr_info("Initialize FRED on CPU%d\n", smp_processor_id());
+
+	wrmsrl(MSR_IA32_FRED_CONFIG,
+	       /* Reserve for CALL emulation */
+	       FRED_CONFIG_REDZONE |
+	       FRED_CONFIG_INT_STKLVL(0) |
+	       FRED_CONFIG_ENTRYPOINT(asm_fred_entrypoint_user));
+
+	/*
+	 * The purpose of separate stacks for NMI, #DB and #MC *in the kernel*
+	 * (remember that user space faults are always taken on stack level 0)
+	 * is to avoid overflowing the kernel stack.
+	 */
+	wrmsrl(MSR_IA32_FRED_STKLVLS,
+	       FRED_STKLVL(X86_TRAP_DB,  FRED_DB_STACK_LEVEL) |
+	       FRED_STKLVL(X86_TRAP_NMI, FRED_NMI_STACK_LEVEL) |
+	       FRED_STKLVL(X86_TRAP_MC,  FRED_MC_STACK_LEVEL) |
+	       FRED_STKLVL(X86_TRAP_DF,  FRED_DF_STACK_LEVEL));
+
+	/* The FRED equivalents to IST stacks... */
+	wrmsrl(MSR_IA32_FRED_RSP1, __this_cpu_ist_top_va(DB));
+	wrmsrl(MSR_IA32_FRED_RSP2, __this_cpu_ist_top_va(NMI));
+	wrmsrl(MSR_IA32_FRED_RSP3, __this_cpu_ist_top_va(DF));
+
+	/* Enable FRED */
+	cr4_set_bits(X86_CR4_FRED);
+	/* Any further IDT use is a bug */
+	idt_invalidate();
+
+	/* Use int $0x80 for 32-bit system calls in FRED mode */
+	setup_clear_cpu_cap(X86_FEATURE_SYSENTER32);
+	setup_clear_cpu_cap(X86_FEATURE_SYSCALL32);
+}
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:32:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:32:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601896.938228 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgexZ-0003Wd-U2; Thu, 14 Sep 2023 05:32:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601896.938228; Thu, 14 Sep 2023 05:32:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgexZ-0003WW-RE; Thu, 14 Sep 2023 05:32:13 +0000
Received: by outflank-mailman (input) for mailman id 601896;
 Thu, 14 Sep 2023 05:32:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelV-0001X7-8J
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:45 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4d307762-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:39 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:47 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:47 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4d307762-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668779; x=1726204779;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=JgWsUmRzFqYpgTYtV9G6HHx6xStONu7aAX4AcJEGcLI=;
  b=kWGhNP0X184bOBk7pdGc6glaNLtTR5hvhHGN9MWBUba+V2wbr0o44y1s
   VnfxzVPaTbvSsPDdHeygJeIn/GKvaKpuCwgapJaI5d2HD1jUW58fZ0hhO
   dP5uobBvhEpUYwMH+XNQUZEZx+RPb5LM7xZvFIVWqIu9rLdLv/3v2Lces
   +s1pzWQWljRpkkaUDspfwJ5tn5bfbcMnIDomcr5lYHaDEXTC5fvpfUXgi
   2UafnoR0AKMZ3yrW/Lsc5vxxHLE49B+frfoEjpMYpfCT4uyUcl2ihpWPR
   kgdac7ArVKANwgMNmB2rIARv3CAbrXyMUHSbzNQdMzkvaKgDxI4HFQmMf
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661523"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661523"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488844"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488844"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 35/38] x86/syscall: Split IDT syscall setup code into idt_syscall_init()
Date: Wed, 13 Sep 2023 21:48:02 -0700
Message-Id: <20230914044805.301390-36-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Split IDT syscall setup code into idt_syscall_init() to make it
cleaner to add FRED syscall setup code.

Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/kernel/cpu/common.c | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index 42511209469b..d960b7276008 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -2070,10 +2070,8 @@ static void wrmsrl_cstar(unsigned long val)
 		wrmsrl(MSR_CSTAR, val);
 }
 
-/* May not be marked __init: used by software suspend */
-void syscall_init(void)
+static inline void idt_syscall_init(void)
 {
-	wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
 	wrmsrl(MSR_LSTAR, (unsigned long)entry_SYSCALL_64);
 
 #ifdef CONFIG_IA32_EMULATION
@@ -2107,6 +2105,15 @@ void syscall_init(void)
 	       X86_EFLAGS_AC|X86_EFLAGS_ID);
 }
 
+/* May not be marked __init: used by software suspend */
+void syscall_init(void)
+{
+	/* The default user and kernel segments */
+	wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
+
+	idt_syscall_init();
+}
+
 #else	/* CONFIG_X86_64 */
 
 #ifdef CONFIG_STACKPROTECTOR
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:32:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:32:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601905.938238 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgexn-00048N-8l; Thu, 14 Sep 2023 05:32:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601905.938238; Thu, 14 Sep 2023 05:32:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgexn-00047Y-4d; Thu, 14 Sep 2023 05:32:27 +0000
Received: by outflank-mailman (input) for mailman id 601905;
 Thu, 14 Sep 2023 05:32:26 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelG-0001XI-6t
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:30 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 46b4fd32-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:28 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:41 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:40 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 46b4fd32-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668768; x=1726204768;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=m7R91mzhAyMwuxf88uvtu3V1UGcA6vznqDxNdL57F/c=;
  b=LdsBeh/HA8BbzjZtfgV3bx+7TO4JQzwRVokM+ISVEdMGLk5XAuwDUvjV
   iTY9Y0oI/8GrJdxbA9sRS9ze3MR0BiGI+2Xn3BuiMWQ3inKwt7AmVQSdA
   rw6iWZ65d2ghTN1Wq0tECn7F92UTRHojOrLOV2fGEbduzRoahPLFkgal7
   kp+EV/fg2uRXBkE+plYG0kzZn54OmwVJ1RDhuWcPm7Z80RVp66RMLJWFF
   MddF70tyUUc+U7EJtQJvJScVdoDnE78NV8PXFohl2zytXJJCGF6HX33CM
   W8UZnkvJ1zhIza2GPCqOhua2VtjF6MENQ6tWdxxvNACV9d/KjChW2yUCE
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661357"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661357"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488805"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488805"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 22/38] x86/fred: Allow single-step trap and NMI when starting a new task
Date: Wed, 13 Sep 2023 21:47:49 -0700
Message-Id: <20230914044805.301390-23-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Entering a new task is logically speaking a return from a system call
(exec, fork, clone, etc.). As such, if ptrace enables single stepping
a single step exception should be allowed to trigger immediately upon
entering user space. This is not optional.

NMI should *never* be disabled in user space. As such, this is an
optional, opportunistic way to catch errors.

Allow single-step trap and NMI when starting a new task, thus once
the new task enters user space, single-step trap and NMI are both
enabled immediately.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v8:
* Use high-order 48 bits above the lowest 16 bit SS only when FRED
  is enabled (Thomas Gleixner).
---
 arch/x86/kernel/process_64.c | 38 ++++++++++++++++++++++++++++++------
 1 file changed, 32 insertions(+), 6 deletions(-)

diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
index 4f87f5987ae8..c075591b7b46 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -56,6 +56,7 @@
 #include <asm/resctrl.h>
 #include <asm/unistd.h>
 #include <asm/fsgsbase.h>
+#include <asm/fred.h>
 #ifdef CONFIG_IA32_EMULATION
 /* Not included via unistd.h */
 #include <asm/unistd_32_ia32.h>
@@ -528,7 +529,7 @@ void x86_gsbase_write_task(struct task_struct *task, unsigned long gsbase)
 static void
 start_thread_common(struct pt_regs *regs, unsigned long new_ip,
 		    unsigned long new_sp,
-		    unsigned int _cs, unsigned int _ss, unsigned int _ds)
+		    u16 _cs, u16 _ss, u16 _ds)
 {
 	WARN_ON_ONCE(regs != current_pt_regs());
 
@@ -545,11 +546,36 @@ start_thread_common(struct pt_regs *regs, unsigned long new_ip,
 	loadsegment(ds, _ds);
 	load_gs_index(0);
 
-	regs->ip		= new_ip;
-	regs->sp		= new_sp;
-	regs->cs		= _cs;
-	regs->ss		= _ss;
-	regs->flags		= X86_EFLAGS_IF;
+	regs->ip	= new_ip;
+	regs->sp	= new_sp;
+	regs->csx	= _cs;
+	regs->ssx	= _ss;
+	/*
+	 * Allow single-step trap and NMI when starting a new task, thus
+	 * once the new task enters user space, single-step trap and NMI
+	 * are both enabled immediately.
+	 *
+	 * Entering a new task is logically speaking a return from a
+	 * system call (exec, fork, clone, etc.). As such, if ptrace
+	 * enables single stepping a single step exception should be
+	 * allowed to trigger immediately upon entering user space.
+	 * This is not optional.
+	 *
+	 * NMI should *never* be disabled in user space. As such, this
+	 * is an optional, opportunistic way to catch errors.
+	 *
+	 * Paranoia: High-order 48 bits above the lowest 16 bit SS are
+	 * discarded by the legacy IRET instruction on all Intel, AMD,
+	 * and Cyrix/Centaur/VIA CPUs, thus can be set unconditionally,
+	 * even when FRED is not enabled. But we choose the safer side
+	 * to use these bits only when FRED is enabled.
+	 */
+	if (cpu_feature_enabled(X86_FEATURE_FRED)) {
+		regs->fred_ss.swevent	= true;
+		regs->fred_ss.nmi	= true;
+	}
+
+	regs->flags	= X86_EFLAGS_IF | X86_EFLAGS_FIXED;
 }
 
 void
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:32:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:32:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601906.938247 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgexo-0004Om-El; Thu, 14 Sep 2023 05:32:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601906.938247; Thu, 14 Sep 2023 05:32:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgexo-0004Of-Bh; Thu, 14 Sep 2023 05:32:28 +0000
Received: by outflank-mailman (input) for mailman id 601906;
 Thu, 14 Sep 2023 05:32:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelG-0001X7-5I
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:30 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4761c997-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:29 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:41 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:40 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4761c997-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668769; x=1726204769;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=vZ6vels66+tC8YRpSCj8dEsAAUPLXovJkO1WpIp9s0Y=;
  b=c5M7SaiRvAwBBQHA/XJAkTd7NGQD/IN0lwdnpG/bCrMMQlBSxUeqoDBg
   OZ+2ecHKYoVNL4fVbKhcgqhPBGmAV+mmvUi+uua+TvG1o6Wn6YqDhyoIZ
   8bgiHlB90ETCSb9zRdJD2d3MpWHa79+ACV49TzKMNrjN7B05k/zavO0w3
   q+eYDDWR2PlC5FnK/VayawpabbnyAOg7BN/6S/wZStdBR78U6tjDC9MlA
   QEPjQF/nxUpFuwudqnxM9TLrcqQzSFPQqrXJH6nbxc47XKP0nN2k7kKKp
   qurikWUsBOF+sR8vkw6Y8clOztAvtahpC+3gV74tQzpoOnpxpl+PxJ7Ut
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661369"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661369"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488808"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488808"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 23/38] x86/fred: Make exc_page_fault() work for FRED
Date: Wed, 13 Sep 2023 21:47:50 -0700
Message-Id: <20230914044805.301390-24-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

On a FRED system, the faulting address (CR2) is passed on the stack,
to avoid the problem of transient state. Thus we get the page fault
address from the stack instead of CR2.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/mm/fault.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
index ab778eac1952..7675bc067153 100644
--- a/arch/x86/mm/fault.c
+++ b/arch/x86/mm/fault.c
@@ -34,6 +34,7 @@
 #include <asm/kvm_para.h>		/* kvm_handle_async_pf		*/
 #include <asm/vdso.h>			/* fixup_vdso_exception()	*/
 #include <asm/irq_stack.h>
+#include <asm/fred.h>
 
 #define CREATE_TRACE_POINTS
 #include <asm/trace/exceptions.h>
@@ -1516,8 +1517,10 @@ handle_page_fault(struct pt_regs *regs, unsigned long error_code,
 
 DEFINE_IDTENTRY_RAW_ERRORCODE(exc_page_fault)
 {
-	unsigned long address = read_cr2();
 	irqentry_state_t state;
+	unsigned long address;
+
+	address = cpu_feature_enabled(X86_FEATURE_FRED) ? fred_event_data(regs) : read_cr2();
 
 	prefetchw(&current->mm->mmap_lock);
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:33:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:33:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601913.938258 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeyO-0005gx-Q1; Thu, 14 Sep 2023 05:33:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601913.938258; Thu, 14 Sep 2023 05:33:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeyO-0005gq-NA; Thu, 14 Sep 2023 05:33:04 +0000
Received: by outflank-mailman (input) for mailman id 601913;
 Thu, 14 Sep 2023 05:33:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelI-0001XI-5B
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:32 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 47becce3-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:29 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:42 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:41 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 47becce3-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668770; x=1726204770;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=aB9X6AvBbEVqHF8pDqD66jUIoaqA7x/kswu7ifFPwEo=;
  b=WOsJZQiZ0XgN+THVuzkvRdvYZNca2A0oG9vhOGVzpcFjewKkm/GDx+99
   BKZHroc6VFJRrRORnQWJgEuSG5Zu2UXxjN9VboXXzw9GhjgjKtzi6gc1w
   fipBD/SL5XnUOopibl+N5ZjVMs6BZ/sY9XjB2L/Uh+DM41Ye2kMZJTKP+
   MBvg4KtxuLNv2c0uuJPeG2Ofx06FWUdtq+L9jWRclmSSrPJCRRKDbSYT1
   HqiVEw9Y4q6UDOSCLtTnSKjPu+tbOergor8fTtd8fzZc5mmwJq73a6WyS
   sLM4lIgk/93pQ/Cf10/C0HQ0qGHSPKosmlrz4Pjg4XROHkUKkEglLKUra
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661382"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661382"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488811"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488811"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 24/38] x86/idtentry: Incorporate definitions/declarations of the FRED entries
Date: Wed, 13 Sep 2023 21:47:51 -0700
Message-Id: <20230914044805.301390-25-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

FRED and IDT can share most of the definitions and declarations so
that in the majority of cases the actual handler implementation is the
same.

The differences are the exceptions where FRED stores exception related
information on the stack and the sysvec implementations as FRED can
handle irqentry/exit() in the dispatcher instead of having it in each
handler.

Also add stub defines for vectors which are not used due to Kconfig
decisions to spare the ifdeffery in the actual FRED dispatch code.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v9:
* Except NMI/#DB/#MCE, FRED really should share the exception handlers
  with IDT (Thomas Gleixner).

Changes since v8:
* Put IDTENTRY changes in a separate patch (Thomas Gleixner).
---
 arch/x86/include/asm/idtentry.h | 71 +++++++++++++++++++++++++++++----
 1 file changed, 63 insertions(+), 8 deletions(-)

diff --git a/arch/x86/include/asm/idtentry.h b/arch/x86/include/asm/idtentry.h
index cfca68f6cb84..4f26ee9b8b74 100644
--- a/arch/x86/include/asm/idtentry.h
+++ b/arch/x86/include/asm/idtentry.h
@@ -13,15 +13,18 @@
 
 #include <asm/irq_stack.h>
 
+typedef void (*idtentry_t)(struct pt_regs *regs);
+
 /**
  * DECLARE_IDTENTRY - Declare functions for simple IDT entry points
  *		      No error code pushed by hardware
  * @vector:	Vector number (ignored for C)
  * @func:	Function name of the entry point
  *
- * Declares three functions:
+ * Declares four functions:
  * - The ASM entry point: asm_##func
  * - The XEN PV trap entry point: xen_##func (maybe unused)
+ * - The C handler called from the FRED event dispatcher (maybe unused)
  * - The C handler called from the ASM entry point
  *
  * Note: This is the C variant of DECLARE_IDTENTRY(). As the name says it
@@ -31,6 +34,7 @@
 #define DECLARE_IDTENTRY(vector, func)					\
 	asmlinkage void asm_##func(void);				\
 	asmlinkage void xen_asm_##func(void);				\
+	void fred_##func(struct pt_regs *regs);				\
 	__visible void func(struct pt_regs *regs)
 
 /**
@@ -137,6 +141,17 @@ static __always_inline void __##func(struct pt_regs *regs,		\
 #define DEFINE_IDTENTRY_RAW(func)					\
 __visible noinstr void func(struct pt_regs *regs)
 
+/**
+ * DEFINE_FREDENTRY_RAW - Emit code for raw FRED entry points
+ * @func:	Function name of the entry point
+ *
+ * @func is called from the FRED event dispatcher with interrupts disabled.
+ *
+ * See @DEFINE_IDTENTRY_RAW for further details.
+ */
+#define DEFINE_FREDENTRY_RAW(func)					\
+noinstr void fred_##func(struct pt_regs *regs)
+
 /**
  * DECLARE_IDTENTRY_RAW_ERRORCODE - Declare functions for raw IDT entry points
  *				    Error code pushed by hardware
@@ -233,17 +248,27 @@ static noinline void __##func(struct pt_regs *regs, u32 vector)
 #define DEFINE_IDTENTRY_SYSVEC(func)					\
 static void __##func(struct pt_regs *regs);				\
 									\
+static __always_inline void instr_##func(struct pt_regs *regs)		\
+{									\
+	kvm_set_cpu_l1tf_flush_l1d();					\
+	run_sysvec_on_irqstack_cond(__##func, regs);			\
+}									\
+									\
 __visible noinstr void func(struct pt_regs *regs)			\
 {									\
 	irqentry_state_t state = irqentry_enter(regs);			\
 									\
 	instrumentation_begin();					\
-	kvm_set_cpu_l1tf_flush_l1d();					\
-	run_sysvec_on_irqstack_cond(__##func, regs);			\
+	instr_##func (regs);						\
 	instrumentation_end();						\
 	irqentry_exit(regs, state);					\
 }									\
 									\
+void fred_##func(struct pt_regs *regs)					\
+{									\
+	instr_##func (regs);						\
+}									\
+									\
 static noinline void __##func(struct pt_regs *regs)
 
 /**
@@ -260,19 +285,29 @@ static noinline void __##func(struct pt_regs *regs)
 #define DEFINE_IDTENTRY_SYSVEC_SIMPLE(func)				\
 static __always_inline void __##func(struct pt_regs *regs);		\
 									\
-__visible noinstr void func(struct pt_regs *regs)			\
+static __always_inline void instr_##func(struct pt_regs *regs)		\
 {									\
-	irqentry_state_t state = irqentry_enter(regs);			\
-									\
-	instrumentation_begin();					\
 	__irq_enter_raw();						\
 	kvm_set_cpu_l1tf_flush_l1d();					\
 	__##func (regs);						\
 	__irq_exit_raw();						\
+}									\
+									\
+__visible noinstr void func(struct pt_regs *regs)			\
+{									\
+	irqentry_state_t state = irqentry_enter(regs);			\
+									\
+	instrumentation_begin();					\
+	instr_##func (regs);						\
 	instrumentation_end();						\
 	irqentry_exit(regs, state);					\
 }									\
 									\
+void fred_##func(struct pt_regs *regs)					\
+{									\
+	instr_##func (regs);						\
+}									\
+									\
 static __always_inline void __##func(struct pt_regs *regs)
 
 /**
@@ -410,15 +445,18 @@ __visible noinstr void func(struct pt_regs *regs,			\
 /* C-Code mapping */
 #define DECLARE_IDTENTRY_NMI		DECLARE_IDTENTRY_RAW
 #define DEFINE_IDTENTRY_NMI		DEFINE_IDTENTRY_RAW
+#define DEFINE_FREDENTRY_NMI		DEFINE_FREDENTRY_RAW
 
 #ifdef CONFIG_X86_64
 #define DECLARE_IDTENTRY_MCE		DECLARE_IDTENTRY_IST
 #define DEFINE_IDTENTRY_MCE		DEFINE_IDTENTRY_IST
 #define DEFINE_IDTENTRY_MCE_USER	DEFINE_IDTENTRY_NOIST
+#define DEFINE_FREDENTRY_MCE		DEFINE_FREDENTRY_RAW
 
 #define DECLARE_IDTENTRY_DEBUG		DECLARE_IDTENTRY_IST
 #define DEFINE_IDTENTRY_DEBUG		DEFINE_IDTENTRY_IST
 #define DEFINE_IDTENTRY_DEBUG_USER	DEFINE_IDTENTRY_NOIST
+#define DEFINE_FREDENTRY_DEBUG		DEFINE_FREDENTRY_RAW
 #endif
 
 #else /* !__ASSEMBLY__ */
@@ -651,23 +689,36 @@ DECLARE_IDTENTRY(RESCHEDULE_VECTOR,			sysvec_reschedule_ipi);
 DECLARE_IDTENTRY_SYSVEC(REBOOT_VECTOR,			sysvec_reboot);
 DECLARE_IDTENTRY_SYSVEC(CALL_FUNCTION_SINGLE_VECTOR,	sysvec_call_function_single);
 DECLARE_IDTENTRY_SYSVEC(CALL_FUNCTION_VECTOR,		sysvec_call_function);
+#else
+# define fred_sysvec_reschedule_ipi			NULL
+# define fred_sysvec_reboot				NULL
+# define fred_sysvec_call_function_single		NULL
+# define fred_sysvec_call_function			NULL
 #endif
 
 #ifdef CONFIG_X86_LOCAL_APIC
 # ifdef CONFIG_X86_MCE_THRESHOLD
 DECLARE_IDTENTRY_SYSVEC(THRESHOLD_APIC_VECTOR,		sysvec_threshold);
+# else
+# define fred_sysvec_threshold				NULL
 # endif
 
 # ifdef CONFIG_X86_MCE_AMD
 DECLARE_IDTENTRY_SYSVEC(DEFERRED_ERROR_VECTOR,		sysvec_deferred_error);
+# else
+# define fred_sysvec_deferred_error			NULL
 # endif
 
 # ifdef CONFIG_X86_THERMAL_VECTOR
 DECLARE_IDTENTRY_SYSVEC(THERMAL_APIC_VECTOR,		sysvec_thermal);
+# else
+# define fred_sysvec_thermal				NULL
 # endif
 
 # ifdef CONFIG_IRQ_WORK
 DECLARE_IDTENTRY_SYSVEC(IRQ_WORK_VECTOR,		sysvec_irq_work);
+# else
+# define fred_sysvec_irq_work				NULL
 # endif
 #endif
 
@@ -675,12 +726,16 @@ DECLARE_IDTENTRY_SYSVEC(IRQ_WORK_VECTOR,		sysvec_irq_work);
 DECLARE_IDTENTRY_SYSVEC(POSTED_INTR_VECTOR,		sysvec_kvm_posted_intr_ipi);
 DECLARE_IDTENTRY_SYSVEC(POSTED_INTR_WAKEUP_VECTOR,	sysvec_kvm_posted_intr_wakeup_ipi);
 DECLARE_IDTENTRY_SYSVEC(POSTED_INTR_NESTED_VECTOR,	sysvec_kvm_posted_intr_nested_ipi);
+#else
+# define fred_sysvec_kvm_posted_intr_ipi		NULL
+# define fred_sysvec_kvm_posted_intr_wakeup_ipi		NULL
+# define fred_sysvec_kvm_posted_intr_nested_ipi		NULL
 #endif
 
 #if IS_ENABLED(CONFIG_HYPERV)
 DECLARE_IDTENTRY_SYSVEC(HYPERVISOR_CALLBACK_VECTOR,	sysvec_hyperv_callback);
 DECLARE_IDTENTRY_SYSVEC(HYPERV_REENLIGHTENMENT_VECTOR,	sysvec_hyperv_reenlightenment);
-DECLARE_IDTENTRY_SYSVEC(HYPERV_STIMER0_VECTOR,	sysvec_hyperv_stimer0);
+DECLARE_IDTENTRY_SYSVEC(HYPERV_STIMER0_VECTOR,		sysvec_hyperv_stimer0);
 #endif
 
 #if IS_ENABLED(CONFIG_ACRN_GUEST)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:33:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:33:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601914.938261 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeyP-0005kQ-1u; Thu, 14 Sep 2023 05:33:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601914.938261; Thu, 14 Sep 2023 05:33:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeyO-0005kG-Uh; Thu, 14 Sep 2023 05:33:04 +0000
Received: by outflank-mailman (input) for mailman id 601914;
 Thu, 14 Sep 2023 05:33:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelI-0001XI-LG
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:32 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 482b7a4e-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:30 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:42 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:41 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 482b7a4e-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668770; x=1726204770;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=WI4PNmnQNqWbUIJ+xrhdRHV/OU0QAbzmppTdHG3/yfg=;
  b=GKTo5+C+HrFKhrzZGrlKnhyJbVKbcj0pi7Y6JpOhmK66uXzi7TDmYyOt
   fjGsnCErCjf/PTGERnFse1Mc5u7zeyuLlOdfBqTa/aWp9FtGIuCH736rM
   8Qdq3DcUZBqzL16J0hOjElt0VWj/G+NSfuF1zG2pJFNv0LEeIYR5V1tE1
   6g+b8WPru+ntU7bG9U+WwQOVXZA6QDwStC93w2SuQcJUmQk4akMlvqhEO
   nVZ9BbpyXnjVePUFqvWDPQuoSOxmmt4pLDKjUrPBVWc84LqB2W+/2ezvp
   BZaraCqE73S0VzrJYml4VV7zWR0ZAXqESB+A+WDjRvwTk+zCkwrODxV0i
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661395"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661395"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488814"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488814"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 25/38] x86/fred: Add a debug fault entry stub for FRED
Date: Wed, 13 Sep 2023 21:47:52 -0700
Message-Id: <20230914044805.301390-26-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

When occurred on different ring level, i.e., from user or kernel context,
#DB needs to be handled on different stack: User #DB on current task
stack, while kernel #DB on a dedicated stack. This is exactly how FRED
event delivery invokes an exception handler: ring 3 event on level 0
stack, i.e., current task stack; ring 0 event on the #DB dedicated stack
specified in the IA32_FRED_STKLVLS MSR. So unlike IDT, the FRED debug
exception entry stub doesn't do stack switch.

On a FRED system, the debug trap status information (DR6) is passed on
the stack, to avoid the problem of transient state. Furthermore, FRED
transitions avoid a lot of ugly corner cases the handling of which can,
and should be, skipped.

The FRED debug trap status information saved on the stack differs from
DR6 in both stickiness and polarity; it is exactly in the format which
debug_read_clear_dr6() returns for the IDT entry points.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v9:
* Disable #DB to avoid endless recursion and stack overflow when a
  watchpoint/breakpoint is set in the code path which is executed by
  #DB handler (Thomas Gleixner).

Changes since v1:
* call irqentry_nmi_{enter,exit}() in both IDT and FRED debug fault kernel
  handler (Peter Zijlstra).
---
 arch/x86/kernel/traps.c | 43 ++++++++++++++++++++++++++++++++++++-----
 1 file changed, 38 insertions(+), 5 deletions(-)

diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c
index c876f1d36a81..848c85208a57 100644
--- a/arch/x86/kernel/traps.c
+++ b/arch/x86/kernel/traps.c
@@ -50,6 +50,7 @@
 #include <asm/ftrace.h>
 #include <asm/traps.h>
 #include <asm/desc.h>
+#include <asm/fred.h>
 #include <asm/fpu/api.h>
 #include <asm/cpu.h>
 #include <asm/cpu_entry_area.h>
@@ -934,8 +935,7 @@ static bool notify_debug(struct pt_regs *regs, unsigned long *dr6)
 	return false;
 }
 
-static __always_inline void exc_debug_kernel(struct pt_regs *regs,
-					     unsigned long dr6)
+static noinstr void exc_debug_kernel(struct pt_regs *regs, unsigned long dr6)
 {
 	/*
 	 * Disable breakpoints during exception handling; recursive exceptions
@@ -947,6 +947,11 @@ static __always_inline void exc_debug_kernel(struct pt_regs *regs,
 	 *
 	 * Entry text is excluded for HW_BP_X and cpu_entry_area, which
 	 * includes the entry stack is excluded for everything.
+	 *
+	 * For FRED, nested #DB should just work fine. But when a watchpoint or
+	 * breakpoint is set in the code path which is executed by #DB handler,
+	 * it results in an endless recursion and stack overflow. Thus we stay
+	 * with the IDT approach, i.e., save DR7 and disable #DB.
 	 */
 	unsigned long dr7 = local_db_save();
 	irqentry_state_t irq_state = irqentry_nmi_enter(regs);
@@ -976,7 +981,8 @@ static __always_inline void exc_debug_kernel(struct pt_regs *regs,
 	 * Catch SYSENTER with TF set and clear DR_STEP. If this hit a
 	 * watchpoint at the same time then that will still be handled.
 	 */
-	if ((dr6 & DR_STEP) && is_sysenter_singlestep(regs))
+	if (!cpu_feature_enabled(X86_FEATURE_FRED) &&
+	    (dr6 & DR_STEP) && is_sysenter_singlestep(regs))
 		dr6 &= ~DR_STEP;
 
 	/*
@@ -1008,8 +1014,7 @@ static __always_inline void exc_debug_kernel(struct pt_regs *regs,
 	local_db_restore(dr7);
 }
 
-static __always_inline void exc_debug_user(struct pt_regs *regs,
-					   unsigned long dr6)
+static noinstr void exc_debug_user(struct pt_regs *regs, unsigned long dr6)
 {
 	bool icebp;
 
@@ -1093,6 +1098,34 @@ DEFINE_IDTENTRY_DEBUG_USER(exc_debug)
 {
 	exc_debug_user(regs, debug_read_clear_dr6());
 }
+
+#ifdef CONFIG_X86_FRED
+/*
+ * When occurred on different ring level, i.e., from user or kernel
+ * context, #DB needs to be handled on different stack: User #DB on
+ * current task stack, while kernel #DB on a dedicated stack.
+ *
+ * This is exactly how FRED event delivery invokes an exception
+ * handler: ring 3 event on level 0 stack, i.e., current task stack;
+ * ring 0 event on the #DB dedicated stack specified in the
+ * IA32_FRED_STKLVLS MSR. So unlike IDT, the FRED debug exception
+ * entry stub doesn't do stack switch.
+ */
+DEFINE_FREDENTRY_DEBUG(exc_debug)
+{
+	/*
+	 * FRED #DB stores DR6 on the stack in the format which
+	 * debug_read_clear_dr6() returns for the IDT entry points.
+	 */
+	unsigned long dr6 = fred_event_data(regs);
+
+	if (user_mode(regs))
+		exc_debug_user(regs, dr6);
+	else
+		exc_debug_kernel(regs, dr6);
+}
+#endif /* CONFIG_X86_FRED */
+
 #else
 /* 32 bit does not have separate entry points. */
 DEFINE_IDTENTRY_RAW(exc_debug)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:33:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:33:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601919.938278 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeyk-0006nP-GB; Thu, 14 Sep 2023 05:33:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601919.938278; Thu, 14 Sep 2023 05:33:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeyk-0006mf-D2; Thu, 14 Sep 2023 05:33:26 +0000
Received: by outflank-mailman (input) for mailman id 601919;
 Thu, 14 Sep 2023 05:33:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelS-0001X7-7p
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:42 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4c41eca4-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:37 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:46 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:45 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4c41eca4-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668777; x=1726204777;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=/UldAmuJEnsflYS2+cyLAQ4E+J1yAKX8pToUnF0eneI=;
  b=A/aF772sHdKlHef4Ll8zpLQ1ehmNDZSFlKmMtVOlj59LJXx3EbER3yyv
   WGhiX8Hzw3hfoPifbvO9dje+fw8NxoeJOFJHRjRO64mJLH0cTE2G0nG7e
   az5Pcw2Xur16RAY48iZy2yyFVHE05PSuDczLTbqu/BDQublwqd0RebuLr
   SeAculT6Ugxpqx+Xwi7rxlTUjlbBI8k5OWXzI7bVVb/MGmz0DXFsQjXF6
   5OQj+/iaimv6wpM54C3tiB3748uWcDTk491sAjvOkjikHo0uJ8kDPgFZz
   ecU/uFPe1eAl5p/cu7B5TwGHdMV1rVP4BK/QRJoDe/KDrtukeg+RtYIoY
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661485"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661485"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488835"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488835"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 32/38] x86/entry/calling: Allow PUSH_AND_CLEAR_REGS being used beyond actual entry code
Date: Wed, 13 Sep 2023 21:47:59 -0700
Message-Id: <20230914044805.301390-33-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "Peter Zijlstra (Intel)" <peterz@infradead.org>

PUSH_AND_CLEAR_REGS could be used besides actual entry code; in that case
%rbp shouldn't be cleared (otherwise the frame pointer is destroyed) and
UNWIND_HINT shouldn't be added.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/entry/calling.h | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/arch/x86/entry/calling.h b/arch/x86/entry/calling.h
index f6907627172b..eb57c023d5df 100644
--- a/arch/x86/entry/calling.h
+++ b/arch/x86/entry/calling.h
@@ -65,7 +65,7 @@ For 32-bit we have the following conventions - kernel is built with
  * for assembly code:
  */
 
-.macro PUSH_REGS rdx=%rdx rcx=%rcx rax=%rax save_ret=0
+.macro PUSH_REGS rdx=%rdx rcx=%rcx rax=%rax save_ret=0 unwind_hint=1
 	.if \save_ret
 	pushq	%rsi		/* pt_regs->si */
 	movq	8(%rsp), %rsi	/* temporarily store the return address in %rsi */
@@ -87,14 +87,17 @@ For 32-bit we have the following conventions - kernel is built with
 	pushq	%r13		/* pt_regs->r13 */
 	pushq	%r14		/* pt_regs->r14 */
 	pushq	%r15		/* pt_regs->r15 */
+
+	.if \unwind_hint
 	UNWIND_HINT_REGS
+	.endif
 
 	.if \save_ret
 	pushq	%rsi		/* return address on top of stack */
 	.endif
 .endm
 
-.macro CLEAR_REGS
+.macro CLEAR_REGS clear_bp=1
 	/*
 	 * Sanitize registers of values that a speculation attack might
 	 * otherwise want to exploit. The lower registers are likely clobbered
@@ -109,7 +112,9 @@ For 32-bit we have the following conventions - kernel is built with
 	xorl	%r10d, %r10d	/* nospec r10 */
 	xorl	%r11d, %r11d	/* nospec r11 */
 	xorl	%ebx,  %ebx	/* nospec rbx */
+	.if \clear_bp
 	xorl	%ebp,  %ebp	/* nospec rbp */
+	.endif
 	xorl	%r12d, %r12d	/* nospec r12 */
 	xorl	%r13d, %r13d	/* nospec r13 */
 	xorl	%r14d, %r14d	/* nospec r14 */
@@ -117,9 +122,9 @@ For 32-bit we have the following conventions - kernel is built with
 
 .endm
 
-.macro PUSH_AND_CLEAR_REGS rdx=%rdx rcx=%rcx rax=%rax save_ret=0
-	PUSH_REGS rdx=\rdx, rcx=\rcx, rax=\rax, save_ret=\save_ret
-	CLEAR_REGS
+.macro PUSH_AND_CLEAR_REGS rdx=%rdx rcx=%rcx rax=%rax save_ret=0 clear_bp=1 unwind_hint=1
+	PUSH_REGS rdx=\rdx, rcx=\rcx, rax=\rax, save_ret=\save_ret unwind_hint=\unwind_hint
+	CLEAR_REGS clear_bp=\clear_bp
 .endm
 
 .macro POP_REGS pop_rdi=1
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:33:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:33:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601922.938288 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeyn-00079K-On; Thu, 14 Sep 2023 05:33:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601922.938288; Thu, 14 Sep 2023 05:33:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgeyn-00079B-LA; Thu, 14 Sep 2023 05:33:29 +0000
Received: by outflank-mailman (input) for mailman id 601922;
 Thu, 14 Sep 2023 05:33:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelT-0001XI-2f
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:43 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4db2f59c-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:39 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:48 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:47 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4db2f59c-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668780; x=1726204780;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=DfU6e7Lxi3caIgHaas3RwgcYA9izTEYulGU0upU0hWQ=;
  b=C2qSgSliymajvEnf/caBa0OMsph2kLxROcw2fpnHpdbIeXh1YLgG6gvc
   JFZKVBUXx+5neaXw/Nl+HS9iqsNLYFHP5E56NwhAiZwRQguabQ60XgEB4
   iUlSLIbPZrU74Mp8O/ltxGGviX7WlMQGSSHXwHPXyXyPp/BYgBs+7zJAL
   dsVkh2SThVsspdP/UJ3YHfLPgFtg/HWIk4XF+jWMMqkj3fiL39Z3i2Rvm
   h0nR9Dygy1ElvA8RHkFMldYhZvgdj9Z0jmyATSXuLK0oDW4uPJng5PuE6
   f1no63Z4sCBxwfcBbNlOz0CP9Ca0lB86uFUVmRBvCiyHCj7v4F/B+d/6z
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661536"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661536"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488847"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488847"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 36/38] x86/fred: Add fred_syscall_init()
Date: Wed, 13 Sep 2023 21:48:03 -0700
Message-Id: <20230914044805.301390-37-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add a syscall initialization function fred_syscall_init() for FRED,
and this is really just to skip setting up SYSCALL/SYSENTER related
MSRs, e.g., MSR_LSTAR and invalidate SYSENTER configurations, because
FRED uses the ring 3 FRED entrypoint for SYSCALL and SYSENTER, and
ERETU is the only legit instruction to return to ring 3 per FRED spec
5.0.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/kernel/cpu/common.c | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index d960b7276008..4cb36e241c9a 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -2105,6 +2105,23 @@ static inline void idt_syscall_init(void)
 	       X86_EFLAGS_AC|X86_EFLAGS_ID);
 }
 
+static inline void fred_syscall_init(void)
+{
+	/*
+	 * Per FRED spec 5.0, FRED uses the ring 3 FRED entrypoint for SYSCALL
+	 * and SYSENTER, and ERETU is the only legit instruction to return to
+	 * ring 3, as a result there is _no_ need to setup the SYSCALL and
+	 * SYSENTER MSRs.
+	 *
+	 * Note, both sysexit and sysret cause #UD when FRED is enabled.
+	 */
+	wrmsrl(MSR_LSTAR, 0ULL);
+	wrmsrl_cstar(0ULL);
+	wrmsrl_safe(MSR_IA32_SYSENTER_CS, (u64)GDT_ENTRY_INVALID_SEG);
+	wrmsrl_safe(MSR_IA32_SYSENTER_ESP, 0ULL);
+	wrmsrl_safe(MSR_IA32_SYSENTER_EIP, 0ULL);
+}
+
 /* May not be marked __init: used by software suspend */
 void syscall_init(void)
 {
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:33:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:33:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601925.938298 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgez8-00088H-0p; Thu, 14 Sep 2023 05:33:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601925.938298; Thu, 14 Sep 2023 05:33:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgez7-00088A-UC; Thu, 14 Sep 2023 05:33:49 +0000
Received: by outflank-mailman (input) for mailman id 601925;
 Thu, 14 Sep 2023 05:33:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelL-0001XI-Ij
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:35 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4944dd0e-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:33 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:44 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:43 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4944dd0e-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668773; x=1726204773;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=zzvxos+z5xHa+gR1tK1Kt1AOyIHMJNb/6Ch1a3vXOAg=;
  b=izfKHA6kjLOC0oHNClQCW8tkcgjqvu4c/JF/dPYOpcPCHxl07HFOvOC4
   Bz2SPcK43bRddRJaw6b1wR3gIHLNDUm3z2LOouMMzyTdEbdYVgecZwZKS
   E4hVkv/oZHOZYGdX9oFAXX1ehHoeKBzc1rZx7LAlc//edrU31oTgiADjk
   NwJsboLrITTjnkGEY/l/koR13ZPjvPZcjFC3AJhofpNVFtMFXBKlTO723
   yyAE5wiq5eGWIG86xDujDlfd05hFr7d7VKODtOy8/b9mOaR6cqMh2Ib3Q
   x1j0hW4Hxt8WSn0Fa7Z02tNhi9ub3KVntuU3uKqlbuyG9/oPEL8zDrfWI
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661434"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661434"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488823"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488823"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 28/38] x86/fred: FRED entry/exit and dispatch code
Date: Wed, 13 Sep 2023 21:47:55 -0700
Message-Id: <20230914044805.301390-29-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

The code to actually handle kernel and event entry/exit using
FRED. It is split up into two files thus:

- entry_64_fred.S contains the actual entrypoints and exit code, and
  saves and restores registers.
- entry_fred.c contains the two-level event dispatch code for FRED.
  The first-level dispatch is on the event type, and the second-level
  is on the event vector.

Originally-by: Megha Dey <megha.dey@intel.com>
Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Co-developed-by: Xin Li <xin3.li@intel.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v9:
* Don't use jump tables, indirect jumps are expensive (Thomas Gleixner).
* Except NMI/#DB/#MCE, FRED really can share the exception handlers
  with IDT (Thomas Gleixner).
* Avoid the sysvec_* idt_entry muck, do it at a central place, reuse code
  instead of blindly copying it, which breaks the performance optimized
  sysvec entries like reschedule_ipi (Thomas Gleixner).
* Add asm_ prefix to FRED asm entry points (Thomas Gleixner).

Changes since v8:
* Don't do syscall early out in fred_entry_from_user() before there are
  proper performance numbers and justifications (Thomas Gleixner).
* Add the control exception handler to the FRED exception handler table
  (Thomas Gleixner).
* Add ENDBR to the FRED_ENTER asm macro.
* Reflect the FRED spec 5.0 change that ERETS and ERETU add 8 to %rsp
  before popping the return context from the stack.

Changes since v1:
* Initialize a FRED exception handler to fred_bad_event() instead of NULL
  if no FRED handler defined for an exception vector (Peter Zijlstra).
* Push calling irqentry_{enter,exit}() and instrumentation_{begin,end}()
  down into individual FRED exception handlers, instead of in the dispatch
  framework (Peter Zijlstra).
---
 arch/x86/entry/Makefile               |   5 +-
 arch/x86/entry/entry_64_fred.S        |  52 ++++++
 arch/x86/entry/entry_fred.c           | 230 ++++++++++++++++++++++++++
 arch/x86/include/asm/asm-prototypes.h |   1 +
 arch/x86/include/asm/fred.h           |   6 +
 5 files changed, 293 insertions(+), 1 deletion(-)
 create mode 100644 arch/x86/entry/entry_64_fred.S
 create mode 100644 arch/x86/entry/entry_fred.c

diff --git a/arch/x86/entry/Makefile b/arch/x86/entry/Makefile
index ca2fe186994b..c93e7f5c2a06 100644
--- a/arch/x86/entry/Makefile
+++ b/arch/x86/entry/Makefile
@@ -18,6 +18,9 @@ obj-y				+= vdso/
 obj-y				+= vsyscall/
 
 obj-$(CONFIG_PREEMPTION)	+= thunk_$(BITS).o
+CFLAGS_entry_fred.o		+= -fno-stack-protector
+CFLAGS_REMOVE_entry_fred.o	+= -pg $(CC_FLAGS_FTRACE)
+obj-$(CONFIG_X86_FRED)		+= entry_64_fred.o entry_fred.o
+
 obj-$(CONFIG_IA32_EMULATION)	+= entry_64_compat.o syscall_32.o
 obj-$(CONFIG_X86_X32_ABI)	+= syscall_x32.o
-
diff --git a/arch/x86/entry/entry_64_fred.S b/arch/x86/entry/entry_64_fred.S
new file mode 100644
index 000000000000..37a1dd5e8ace
--- /dev/null
+++ b/arch/x86/entry/entry_64_fred.S
@@ -0,0 +1,52 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * The actual FRED entry points.
+ */
+
+#include <asm/fred.h>
+
+#include "calling.h"
+
+	.code64
+	.section .noinstr.text, "ax"
+
+.macro FRED_ENTER
+	UNWIND_HINT_END_OF_STACK
+	ENDBR
+	PUSH_AND_CLEAR_REGS
+	movq	%rsp, %rdi	/* %rdi -> pt_regs */
+.endm
+
+.macro FRED_EXIT
+	UNWIND_HINT_REGS
+	POP_REGS
+.endm
+
+/*
+ * The new RIP value that FRED event delivery establishes is
+ * IA32_FRED_CONFIG & ~FFFH for events that occur in ring 3.
+ * Thus the FRED ring 3 entry point must be 4K page aligned.
+ */
+	.align 4096
+
+SYM_CODE_START_NOALIGN(asm_fred_entrypoint_user)
+	FRED_ENTER
+	call	fred_entry_from_user
+	FRED_EXIT
+	ERETU
+SYM_CODE_END(asm_fred_entrypoint_user)
+
+.fill asm_fred_entrypoint_kernel - ., 1, 0xcc
+
+/*
+ * The new RIP value that FRED event delivery establishes is
+ * (IA32_FRED_CONFIG & ~FFFH) + 256 for events that occur in
+ * ring 0, i.e., asm_fred_entrypoint_user + 256.
+ */
+	.org asm_fred_entrypoint_user + 256
+SYM_CODE_START_NOALIGN(asm_fred_entrypoint_kernel)
+	FRED_ENTER
+	call	fred_entry_from_kernel
+	FRED_EXIT
+	ERETS
+SYM_CODE_END(asm_fred_entrypoint_kernel)
diff --git a/arch/x86/entry/entry_fred.c b/arch/x86/entry/entry_fred.c
new file mode 100644
index 000000000000..dc645f5819a9
--- /dev/null
+++ b/arch/x86/entry/entry_fred.c
@@ -0,0 +1,230 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * The FRED specific kernel/user entry functions which are invoked from
+ * assembly code and dispatch to the associated handlers.
+ */
+#include <linux/kernel.h>
+#include <linux/kdebug.h>
+#include <linux/nospec.h>
+
+#include <asm/desc.h>
+#include <asm/fred.h>
+#include <asm/idtentry.h>
+#include <asm/syscall.h>
+#include <asm/trapnr.h>
+#include <asm/traps.h>
+
+/* FRED EVENT_TYPE_OTHER vector numbers */
+#define FRED_SYSCALL			1
+#define FRED_SYSENTER			2
+
+static noinstr void fred_bad_type(struct pt_regs *regs, unsigned long error_code)
+{
+	irqentry_state_t irq_state = irqentry_nmi_enter(regs);
+
+	instrumentation_begin();
+
+	/* Panic on events from a high stack level */
+	if (regs->sl > 0) {
+		pr_emerg("PANIC: invalid or fatal FRED event; event type %u "
+			 "vector %u error 0x%lx aux 0x%lx at %04x:%016lx\n",
+			 regs->fred_ss.type, regs->fred_ss.vector, regs->orig_ax,
+			 fred_event_data(regs), regs->cs, regs->ip);
+		die("invalid or fatal FRED event", regs, regs->orig_ax);
+		panic("invalid or fatal FRED event");
+	} else {
+		unsigned long flags = oops_begin();
+		int sig = SIGKILL;
+
+		pr_alert("BUG: invalid or fatal FRED event; event type %u "
+			 "vector %u error 0x%lx aux 0x%lx at %04x:%016lx\n",
+			 regs->fred_ss.type, regs->fred_ss.vector, regs->orig_ax,
+			 fred_event_data(regs), regs->cs, regs->ip);
+
+		if (__die("Invalid or fatal FRED event", regs, regs->orig_ax))
+			sig = 0;
+
+		oops_end(flags, regs, sig);
+	}
+
+	instrumentation_end();
+	irqentry_nmi_exit(regs, irq_state);
+}
+
+static noinstr void fred_intx(struct pt_regs *regs)
+{
+	switch (regs->fred_ss.vector) {
+	/* INT0 */
+	case X86_TRAP_OF:
+		exc_overflow(regs);
+		return;
+
+	/* INT3 */
+	case X86_TRAP_BP:
+		exc_int3(regs);
+		return;
+
+	/* INT80 */
+	case IA32_SYSCALL_VECTOR:
+		if (likely(IS_ENABLED(CONFIG_IA32_EMULATION))) {
+			/* Save the syscall number */
+			regs->orig_ax = regs->ax;
+			regs->ax = -ENOSYS;
+			do_int80_syscall_32(regs);
+			return;
+		}
+		fallthrough;
+
+	default:
+		exc_general_protection(regs, 0);
+		return;
+	}
+}
+
+static __always_inline void fred_other(struct pt_regs *regs)
+{
+	/* The compiler can fold these conditions into a single test */
+	if (likely(regs->fred_ss.vector == FRED_SYSCALL && regs->fred_ss.lm)) {
+		regs->orig_ax = regs->ax;
+		regs->ax = -ENOSYS;
+		do_syscall_64(regs, regs->orig_ax);
+		return;
+	} else if (likely(IS_ENABLED(CONFIG_IA32_EMULATION) &&
+			  regs->fred_ss.vector == FRED_SYSENTER &&
+			  !regs->fred_ss.lm)) {
+		regs->orig_ax = regs->ax;
+		regs->ax = -ENOSYS;
+		do_fast_syscall_32(regs);
+		return;
+	} else {
+		exc_invalid_op(regs);
+		return;
+	}
+}
+
+#define SYSVEC(_vector, _function) [_vector - FIRST_SYSTEM_VECTOR] = fred_sysvec_##_function
+
+static idtentry_t sysvec_table[NR_SYSTEM_VECTORS] __ro_after_init = {
+	SYSVEC(ERROR_APIC_VECTOR,		error_interrupt),
+	SYSVEC(SPURIOUS_APIC_VECTOR,		spurious_apic_interrupt),
+	SYSVEC(LOCAL_TIMER_VECTOR,		apic_timer_interrupt),
+	SYSVEC(X86_PLATFORM_IPI_VECTOR,		x86_platform_ipi),
+
+	SYSVEC(RESCHEDULE_VECTOR,		reschedule_ipi),
+	SYSVEC(CALL_FUNCTION_SINGLE_VECTOR,	call_function_single),
+	SYSVEC(CALL_FUNCTION_VECTOR,		call_function),
+	SYSVEC(REBOOT_VECTOR,			reboot),
+
+	SYSVEC(THRESHOLD_APIC_VECTOR,		threshold),
+	SYSVEC(DEFERRED_ERROR_VECTOR,		deferred_error),
+	SYSVEC(THERMAL_APIC_VECTOR,		thermal),
+
+	SYSVEC(IRQ_WORK_VECTOR,			irq_work),
+
+	SYSVEC(POSTED_INTR_VECTOR,		kvm_posted_intr_ipi),
+	SYSVEC(POSTED_INTR_WAKEUP_VECTOR,	kvm_posted_intr_wakeup_ipi),
+	SYSVEC(POSTED_INTR_NESTED_VECTOR,	kvm_posted_intr_nested_ipi),
+};
+
+static noinstr void fred_extint(struct pt_regs *regs)
+{
+	unsigned int vector = regs->fred_ss.vector;
+
+	if (WARN_ON_ONCE(vector < FIRST_EXTERNAL_VECTOR))
+		return;
+
+	if (likely(vector >= FIRST_SYSTEM_VECTOR)) {
+		irqentry_state_t state = irqentry_enter(regs);
+
+		instrumentation_begin();
+		sysvec_table[vector - FIRST_SYSTEM_VECTOR](regs);
+		instrumentation_end();
+		irqentry_exit(regs, state);
+	} else {
+		common_interrupt(regs, vector);
+	}
+}
+
+static noinstr void fred_exception(struct pt_regs *regs, unsigned long error_code)
+{
+	/* Optimize for #PF. That's the only exception which matters performance wise */
+	if (likely(regs->fred_ss.vector == X86_TRAP_PF)) {
+		exc_page_fault(regs, error_code);
+		return;
+	}
+
+	switch (regs->fred_ss.vector) {
+	case X86_TRAP_DE: return exc_divide_error(regs);
+	case X86_TRAP_DB: return fred_exc_debug(regs);
+	case X86_TRAP_BP: return exc_int3(regs);
+	case X86_TRAP_OF: return exc_overflow(regs);
+	case X86_TRAP_BR: return exc_bounds(regs);
+	case X86_TRAP_UD: return exc_invalid_op(regs);
+	case X86_TRAP_NM: return exc_device_not_available(regs);
+	case X86_TRAP_DF: return exc_double_fault(regs, error_code);
+	case X86_TRAP_TS: return exc_invalid_tss(regs, error_code);
+	case X86_TRAP_NP: return exc_segment_not_present(regs, error_code);
+	case X86_TRAP_SS: return exc_stack_segment(regs, error_code);
+	case X86_TRAP_GP: return exc_general_protection(regs, error_code);
+	case X86_TRAP_MF: return exc_coprocessor_error(regs);
+	case X86_TRAP_AC: return exc_alignment_check(regs, error_code);
+	case X86_TRAP_XF: return exc_simd_coprocessor_error(regs);
+
+#ifdef CONFIG_X86_MCE
+	case X86_TRAP_MC: return fred_exc_machine_check(regs);
+#endif
+#ifdef CONFIG_INTEL_TDX_GUEST
+	case X86_TRAP_VE: return exc_virtualization_exception(regs);
+#endif
+#ifdef CONFIG_X86_KERNEL_IBT
+	case X86_TRAP_CP: return exc_control_protection(regs, error_code);
+#endif
+	default: return fred_bad_type(regs, error_code);
+	}
+}
+
+__visible noinstr void fred_entry_from_user(struct pt_regs *regs)
+{
+	unsigned long error_code = regs->orig_ax;
+
+	/* Invalidate orig_ax so that syscall_get_nr() works correctly */
+	regs->orig_ax = -1;
+
+	switch (regs->fred_ss.type) {
+	case EVENT_TYPE_EXTINT:
+		return fred_extint(regs);
+	case EVENT_TYPE_NMI:
+		return fred_exc_nmi(regs);
+	case EVENT_TYPE_SWINT:
+		return fred_intx(regs);
+	case EVENT_TYPE_HWEXC:
+	case EVENT_TYPE_SWEXC:
+	case EVENT_TYPE_PRIV_SWEXC:
+		return fred_exception(regs, error_code);
+	case EVENT_TYPE_OTHER:
+		return fred_other(regs);
+	default:
+		return fred_bad_type(regs, error_code);
+	}
+}
+
+__visible noinstr void fred_entry_from_kernel(struct pt_regs *regs)
+{
+	unsigned long error_code = regs->orig_ax;
+
+	/* Invalidate orig_ax so that syscall_get_nr() works correctly */
+	regs->orig_ax = -1;
+
+	switch (regs->fred_ss.type) {
+	case EVENT_TYPE_EXTINT:
+		return fred_extint(regs);
+	case EVENT_TYPE_NMI:
+		return fred_exc_nmi(regs);
+	case EVENT_TYPE_HWEXC:
+	case EVENT_TYPE_SWEXC:
+	case EVENT_TYPE_PRIV_SWEXC:
+		return fred_exception(regs, error_code);
+	default:
+		return fred_bad_type(regs, error_code);
+	}
+}
diff --git a/arch/x86/include/asm/asm-prototypes.h b/arch/x86/include/asm/asm-prototypes.h
index b1a98fa38828..076bf8dee702 100644
--- a/arch/x86/include/asm/asm-prototypes.h
+++ b/arch/x86/include/asm/asm-prototypes.h
@@ -12,6 +12,7 @@
 #include <asm/special_insns.h>
 #include <asm/preempt.h>
 #include <asm/asm.h>
+#include <asm/fred.h>
 #include <asm/gsseg.h>
 
 #ifndef CONFIG_X86_CMPXCHG64
diff --git a/arch/x86/include/asm/fred.h b/arch/x86/include/asm/fred.h
index f514fdb5a39f..16a64ffecbf8 100644
--- a/arch/x86/include/asm/fred.h
+++ b/arch/x86/include/asm/fred.h
@@ -60,6 +60,12 @@ static __always_inline unsigned long fred_event_data(struct pt_regs *regs)
 	return fred_info(regs)->edata;
 }
 
+void asm_fred_entrypoint_user(void);
+void asm_fred_entrypoint_kernel(void);
+
+__visible void fred_entry_from_user(struct pt_regs *regs);
+__visible void fred_entry_from_kernel(struct pt_regs *regs);
+
 #else /* CONFIG_X86_FRED */
 static __always_inline unsigned long fred_event_data(struct pt_regs *regs) { return 0; }
 #endif /* CONFIG_X86_FRED */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:33:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:33:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601926.938303 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgez8-0008B5-8e; Thu, 14 Sep 2023 05:33:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601926.938303; Thu, 14 Sep 2023 05:33:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgez8-0008Ah-4P; Thu, 14 Sep 2023 05:33:50 +0000
Received: by outflank-mailman (input) for mailman id 601926;
 Thu, 14 Sep 2023 05:33:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelN-0001X7-6p
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:37 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4abbb475-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:35 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:45 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:44 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4abbb475-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668775; x=1726204775;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=M6fmRAapBD1o7lcFP0DE6JJOLTPbVa+6x+sO9If/vNA=;
  b=WpPxeH1Ts2MvSGl6bDZHyuRN69wLPuzT80OxMtnqt0CLhb0kexc3Ez41
   GlWxBbarZ6paIjDdFqbNd+8m/YeRPzv2S+1zVjvS0s4LdPaqLNE5uU4SC
   8m/2t7X5fw+exD9qAKXH0ekSneJ4p4ZTv2HHW8PgcGDhzyl0pkOUe9ID4
   9EGaUfCUr8TVwHQbUZZId9tEJvTFi9OA+YyHwI3dUiRALI2U5b8gLrpX2
   1OCfG1EFHAXs64JsI8dIN6LxGVugdJnPNkfAgbPS1YDI9SxBMFOWiBXTV
   xyy8XGrvhmks86IGGubK1kLzLyT2/A4rJOTA9qV2wEeVJTQXyTo4S35lu
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661459"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661459"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488829"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488829"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 30/38] x86/fred: Let ret_from_fork_asm() jmp to asm_fred_exit_user when FRED is enabled
Date: Wed, 13 Sep 2023 21:47:57 -0700
Message-Id: <20230914044805.301390-31-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Let ret_from_fork_asm() jmp to asm_fred_exit_user when FRED is enabled,
otherwise the existing IDT code is chosen.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/entry/entry_64.S      | 6 ++++++
 arch/x86/entry/entry_64_fred.S | 1 +
 2 files changed, 7 insertions(+)

diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
index 9cdb61ea91de..c9e14617dd3f 100644
--- a/arch/x86/entry/entry_64.S
+++ b/arch/x86/entry/entry_64.S
@@ -309,7 +309,13 @@ SYM_CODE_START(ret_from_fork_asm)
 	 * and unwind should work normally.
 	 */
 	UNWIND_HINT_REGS
+
+#ifdef CONFIG_X86_FRED
+	ALTERNATIVE "jmp swapgs_restore_regs_and_return_to_usermode", \
+		    "jmp asm_fred_exit_user", X86_FEATURE_FRED
+#else
 	jmp	swapgs_restore_regs_and_return_to_usermode
+#endif
 SYM_CODE_END(ret_from_fork_asm)
 .popsection
 
diff --git a/arch/x86/entry/entry_64_fred.S b/arch/x86/entry/entry_64_fred.S
index 37a1dd5e8ace..5781c3411b44 100644
--- a/arch/x86/entry/entry_64_fred.S
+++ b/arch/x86/entry/entry_64_fred.S
@@ -32,6 +32,7 @@
 SYM_CODE_START_NOALIGN(asm_fred_entrypoint_user)
 	FRED_ENTER
 	call	fred_entry_from_user
+SYM_INNER_LABEL(asm_fred_exit_user, SYM_L_GLOBAL)
 	FRED_EXIT
 	ERETU
 SYM_CODE_END(asm_fred_entrypoint_user)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:33:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:33:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601927.938318 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgezC-0000Nf-JF; Thu, 14 Sep 2023 05:33:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601927.938318; Thu, 14 Sep 2023 05:33:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgezC-0000NY-G0; Thu, 14 Sep 2023 05:33:54 +0000
Received: by outflank-mailman (input) for mailman id 601927;
 Thu, 14 Sep 2023 05:33:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelM-0001XI-1s
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:36 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 49e6fbac-52be-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:19:33 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:45 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:45 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 49e6fbac-52be-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668773; x=1726204773;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=I/WDYuAd3nxCrdi9nQ03uROwALnkbrNhAERS8D1SLLE=;
  b=cFCa1DbiW6ipy30X3G9IOINcOOYUSZvlvK++LO1OwGYnn5bOdklVxdLG
   ku84EhCEW4FfTZjsURSa/UUp4Ex9IfDhCBiSN+ffeSpKzVtN4njNPnd2X
   SjxWJ6Oo6sV07mb+q5laQ5LaYZmfjruUeXf7PiYU6j+4cvv0aIqI+Bf0K
   2r+61QHYo4XSeqFU52/j2td1lCbyNMzThMhPaog+kUSIMxMZFrF5UiN+r
   GFDZKPzkzimrd29JOqV6fdxoot0sEHYB7FbDcACFbDtp4PMW1luK05uyf
   F1N5SdGjLS7we91obGuWadl7uxtQ5Nu/xLTGeo6hRAc0EIxtL0CFWjL0S
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661471"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661471"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488832"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488832"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 31/38] x86/fred: Fixup fault on ERETU by jumping to fred_entrypoint_user
Date: Wed, 13 Sep 2023 21:47:58 -0700
Message-Id: <20230914044805.301390-32-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

If the stack frame contains an invalid user context (e.g. due to invalid SS,
a non-canonical RIP, etc.) the ERETU instruction will trap (#SS or #GP).

>From a Linux point of view, this really should be considered a user space
failure, so use the standard fault fixup mechanism to intercept the fault,
fix up the exception frame, and redirect execution to fred_entrypoint_user.
The end result is that it appears just as if the hardware had taken the
exception immediately after completing the transition to user space.

Suggested-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v8:
* Reflect the FRED spec 5.0 change that ERETS and ERETU add 8 to %rsp
  before popping the return context from the stack.

Changes since v6:
* Add a comment to explain why it is safe to write to the previous FRED stack
  frame. (Lai Jiangshan).

Changes since v5:
* Move the NMI bit from an invalid stack frame, which caused ERETU to fault,
  to the fault handler's stack frame, thus to unblock NMI ASAP if NMI is blocked
  (Lai Jiangshan).
---
 arch/x86/entry/entry_64_fred.S             |  5 +-
 arch/x86/include/asm/extable_fixup_types.h |  4 +-
 arch/x86/mm/extable.c                      | 79 ++++++++++++++++++++++
 3 files changed, 86 insertions(+), 2 deletions(-)

diff --git a/arch/x86/entry/entry_64_fred.S b/arch/x86/entry/entry_64_fred.S
index 5781c3411b44..d1c2fc4af8ae 100644
--- a/arch/x86/entry/entry_64_fred.S
+++ b/arch/x86/entry/entry_64_fred.S
@@ -3,6 +3,7 @@
  * The actual FRED entry points.
  */
 
+#include <asm/asm.h>
 #include <asm/fred.h>
 
 #include "calling.h"
@@ -34,7 +35,9 @@ SYM_CODE_START_NOALIGN(asm_fred_entrypoint_user)
 	call	fred_entry_from_user
 SYM_INNER_LABEL(asm_fred_exit_user, SYM_L_GLOBAL)
 	FRED_EXIT
-	ERETU
+1:	ERETU
+
+	_ASM_EXTABLE_TYPE(1b, asm_fred_entrypoint_user, EX_TYPE_ERETU)
 SYM_CODE_END(asm_fred_entrypoint_user)
 
 .fill asm_fred_entrypoint_kernel - ., 1, 0xcc
diff --git a/arch/x86/include/asm/extable_fixup_types.h b/arch/x86/include/asm/extable_fixup_types.h
index 991e31cfde94..1585c798a02f 100644
--- a/arch/x86/include/asm/extable_fixup_types.h
+++ b/arch/x86/include/asm/extable_fixup_types.h
@@ -64,6 +64,8 @@
 #define	EX_TYPE_UCOPY_LEN4		(EX_TYPE_UCOPY_LEN | EX_DATA_IMM(4))
 #define	EX_TYPE_UCOPY_LEN8		(EX_TYPE_UCOPY_LEN | EX_DATA_IMM(8))
 
-#define EX_TYPE_ZEROPAD			20 /* longword load with zeropad on fault */
+#define	EX_TYPE_ZEROPAD			20 /* longword load with zeropad on fault */
+
+#define	EX_TYPE_ERETU			21
 
 #endif
diff --git a/arch/x86/mm/extable.c b/arch/x86/mm/extable.c
index 271dcb2deabc..bc7af7e8587b 100644
--- a/arch/x86/mm/extable.c
+++ b/arch/x86/mm/extable.c
@@ -6,6 +6,7 @@
 #include <xen/xen.h>
 
 #include <asm/fpu/api.h>
+#include <asm/fred.h>
 #include <asm/sev.h>
 #include <asm/traps.h>
 #include <asm/kdebug.h>
@@ -223,6 +224,80 @@ static bool ex_handler_ucopy_len(const struct exception_table_entry *fixup,
 	return ex_handler_uaccess(fixup, regs, trapnr, fault_address);
 }
 
+#ifdef CONFIG_X86_FRED
+static bool ex_handler_eretu(const struct exception_table_entry *fixup,
+			     struct pt_regs *regs, unsigned long error_code)
+{
+	struct pt_regs *uregs = (struct pt_regs *)
+		(regs->sp - offsetof(struct pt_regs, orig_ax));
+	unsigned short ss = uregs->ss;
+	unsigned short cs = uregs->cs;
+
+	/*
+	 * Move the NMI bit from the invalid stack frame, which caused ERETU
+	 * to fault, to the fault handler's stack frame, thus to unblock NMI
+	 * with the fault handler's ERETS instruction ASAP if NMI is blocked.
+	 */
+	regs->fred_ss.nmi = uregs->fred_ss.nmi;
+
+	/*
+	 * Sync event information to uregs, i.e., the ERETU return frame, but
+	 * is it safe to write to the ERETU return frame which is just above
+	 * current event stack frame?
+	 *
+	 * The RSP used by FRED to push a stack frame is not the value in %rsp,
+	 * it is calculated from %rsp with the following 2 steps:
+	 * 1) RSP = %rsp - (IA32_FRED_CONFIG & 0x1c0)	// Reserve N*64 bytes
+	 * 2) RSP = RSP & ~0x3f		// Align to a 64-byte cache line
+	 * when an event delivery doesn't trigger a stack level change.
+	 *
+	 * Here is an example with N*64 (N=1) bytes reserved:
+	 *
+	 *  64-byte cache line ==>  ______________
+	 *                         |___Reserved___|
+	 *                         |__Event_data__|
+	 *                         |_____SS_______|
+	 *                         |_____RSP______|
+	 *                         |_____FLAGS____|
+	 *                         |_____CS_______|
+	 *                         |_____IP_______|
+	 *  64-byte cache line ==> |__Error_code__| <== ERETU return frame
+	 *                         |______________|
+	 *                         |______________|
+	 *                         |______________|
+	 *                         |______________|
+	 *                         |______________|
+	 *                         |______________|
+	 *                         |______________|
+	 *  64-byte cache line ==> |______________| <== RSP after step 1) and 2)
+	 *                         |___Reserved___|
+	 *                         |__Event_data__|
+	 *                         |_____SS_______|
+	 *                         |_____RSP______|
+	 *                         |_____FLAGS____|
+	 *                         |_____CS_______|
+	 *                         |_____IP_______|
+	 *  64-byte cache line ==> |__Error_code__| <== ERETS return frame
+	 *
+	 * Thus a new FRED stack frame will always be pushed below a previous
+	 * FRED stack frame ((N*64) bytes may be reserved between), and it is
+	 * safe to write to a previous FRED stack frame as they never overlap.
+	 */
+	fred_info(uregs)->edata = fred_event_data(regs);
+	uregs->ssx = regs->ssx;
+	uregs->fred_ss.ss = ss;
+	/* The NMI bit was moved away above */
+	uregs->fred_ss.nmi = 0;
+	uregs->csx = regs->csx;
+	uregs->sl = 0;
+	uregs->wfe = 0;
+	uregs->cs = cs;
+	uregs->orig_ax = error_code;
+
+	return ex_handler_default(fixup, regs);
+}
+#endif
+
 int ex_get_fixup_type(unsigned long ip)
 {
 	const struct exception_table_entry *e = search_exception_tables(ip);
@@ -300,6 +375,10 @@ int fixup_exception(struct pt_regs *regs, int trapnr, unsigned long error_code,
 		return ex_handler_ucopy_len(e, regs, trapnr, fault_addr, reg, imm);
 	case EX_TYPE_ZEROPAD:
 		return ex_handler_zeropad(e, regs, fault_addr);
+#ifdef CONFIG_X86_FRED
+	case EX_TYPE_ERETU:
+		return ex_handler_eretu(e, regs, error_code);
+#endif
 	}
 	BUG();
 }
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:34:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:34:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601942.938328 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgezr-00021H-TV; Thu, 14 Sep 2023 05:34:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601942.938328; Thu, 14 Sep 2023 05:34:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgezr-00021A-QQ; Thu, 14 Sep 2023 05:34:35 +0000
Received: by outflank-mailman (input) for mailman id 601942;
 Thu, 14 Sep 2023 05:34:34 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=IZLI=E6=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qgelH-0001X7-Eo
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:19:31 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 482bd31d-52be-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 07:19:30 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Sep 2023 22:17:43 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by orsmga001.jf.intel.com with ESMTP; 13 Sep 2023 22:17:42 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 482bd31d-52be-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1694668770; x=1726204770;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=FcZc1QeKj2isPTwOBVaGNTy+si5WeOaciLFU4yv7EQo=;
  b=mQELh168oyoE8sL+D7H9Xji/wkhViCObf6CpsxfAZy2XWs92/l+N8clv
   bOFx+n9zjMblyj3wICxUo+ALkTyVwPcgh64llM+ziIG8j7gUgYyOFHwlZ
   +BMLSQH4ii8WlWdj9LRRavGlH8DKIivYTdzPePmF+TFlWyJtOu1f4k20E
   pf1U7LwYZeWnhWUED4bt1RrOIOi5tSfrnWIcDZFOnzJlOX9YsqDMS+H5l
   sRqbnelL6eN69QLGEeGJZeE0jI5aFt+cKMVESZzJnn9ErPAguw/FXKZIr
   vvcEVCqKNF22q9+XPoING+q3wsndMhjaUIIMzb/5Le35p1XTqWnz2P0qd
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="382661408"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="382661408"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10832"; a="779488817"
X-IronPort-AV: E=Sophos;i="6.02,145,1688454000"; 
   d="scan'208";a="779488817"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com
Subject: [PATCH v10 26/38] x86/fred: Add a NMI entry stub for FRED
Date: Wed, 13 Sep 2023 21:47:53 -0700
Message-Id: <20230914044805.301390-27-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230914044805.301390-1-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

On a FRED system, NMIs nest both with themselves and faults, transient
information is saved into the stack frame, and NMI unblocking only
happens when the stack frame indicates that so should happen.

Thus, the NMI entry stub for FRED is really quite small...

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/kernel/nmi.c | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/arch/x86/kernel/nmi.c b/arch/x86/kernel/nmi.c
index a0c551846b35..58843fdf5cd0 100644
--- a/arch/x86/kernel/nmi.c
+++ b/arch/x86/kernel/nmi.c
@@ -34,6 +34,7 @@
 #include <asm/cache.h>
 #include <asm/nospec-branch.h>
 #include <asm/sev.h>
+#include <asm/fred.h>
 
 #define CREATE_TRACE_POINTS
 #include <trace/events/nmi.h>
@@ -643,6 +644,33 @@ void nmi_backtrace_stall_check(const struct cpumask *btp)
 
 #endif
 
+#ifdef CONFIG_X86_FRED
+/*
+ * With FRED, CR2/DR6 is pushed to #PF/#DB stack frame during FRED
+ * event delivery, i.e., there is no problem of transient states.
+ * And NMI unblocking only happens when the stack frame indicates
+ * that so should happen.
+ *
+ * Thus, the NMI entry stub for FRED is really straightforward and
+ * as simple as most exception handlers. As such, #DB is allowed
+ * during NMI handling.
+ */
+DEFINE_FREDENTRY_NMI(exc_nmi)
+{
+	irqentry_state_t irq_state;
+
+	if (IS_ENABLED(CONFIG_SMP) && arch_cpu_is_offline(smp_processor_id()))
+		return;
+
+	irq_state = irqentry_nmi_enter(regs);
+
+	inc_irq_stat(__nmi_count);
+	default_do_nmi(regs);
+
+	irqentry_nmi_exit(regs, irq_state);
+}
+#endif
+
 void stop_nmi(void)
 {
 	ignore_nmis++;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:43:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:43:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.601983.938338 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgf8k-0005TH-Md; Thu, 14 Sep 2023 05:43:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 601983.938338; Thu, 14 Sep 2023 05:43:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgf8k-0005TA-JZ; Thu, 14 Sep 2023 05:43:46 +0000
Received: by outflank-mailman (input) for mailman id 601983;
 Thu, 14 Sep 2023 05:43:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=KyA6=E6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qgf8j-0005T4-5B
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:43:45 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a9bc34e6-52c1-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:43:42 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 135591F459;
 Thu, 14 Sep 2023 05:43:42 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id D9815139DB;
 Thu, 14 Sep 2023 05:43:41 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id A2a5M42dAmUqUwAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 14 Sep 2023 05:43:41 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a9bc34e6-52c1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1694670222; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=b2bNq/DDWKowgyLwwyCmAZNqZHgT3dKmm9a0c2JRLlE=;
	b=mSfOtCXEnHjB/3xCXJDSJ1+Q72QIkCel+XwgTgXmUqVCvLbxo3LJxxfZjH/pgDUyWwoek7
	9/ulztlIPI1tAoDA4Ql9FZhiTX0rUUE0QWdUTeBiQoHFuHWo6KXWpNTqywOX5PaTDvpjVC
	Ub2Fmy6StlAA/ORsYgdUDT/Hp04oR+Y=
Message-ID: <dd26e833-1499-4af6-906e-e17acc1a8165@suse.com>
Date: Thu, 14 Sep 2023 07:43:41 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: (Debian) Bug#1051862: server flooded with xen_mc_flush warnings
 with xen 4.17 + linux 6.1
Content-Language: en-US
To: Hans van Kranenburg <hans@knorrie.org>,
 =?UTF-8?Q?Radoslav_Bod=C3=B3?= <radoslav.bodo@igalileo.cz>,
 1051862@bugs.debian.org, Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>
References: <abd6fb7e-bd03-7bf0-b43f-5e4914f6aadf@igalileo.cz>
 <676789d2-a054-2b44-69be-c458ef236d50@knorrie.org>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <676789d2-a054-2b44-69be-c458ef236d50@knorrie.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------MKsxYrj1P8x21mlreX86TLIu"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------MKsxYrj1P8x21mlreX86TLIu
Content-Type: multipart/mixed; boundary="------------ntjqVUQ9bqeIcQ556yZsCrG1";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Hans van Kranenburg <hans@knorrie.org>,
 =?UTF-8?Q?Radoslav_Bod=C3=B3?= <radoslav.bodo@igalileo.cz>,
 1051862@bugs.debian.org, Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>
Message-ID: <dd26e833-1499-4af6-906e-e17acc1a8165@suse.com>
Subject: Re: (Debian) Bug#1051862: server flooded with xen_mc_flush warnings
 with xen 4.17 + linux 6.1
References: <abd6fb7e-bd03-7bf0-b43f-5e4914f6aadf@igalileo.cz>
 <676789d2-a054-2b44-69be-c458ef236d50@knorrie.org>
In-Reply-To: <676789d2-a054-2b44-69be-c458ef236d50@knorrie.org>

--------------ntjqVUQ9bqeIcQ556yZsCrG1
Content-Type: multipart/mixed; boundary="------------qZs8iOmd3L6YpUcnk5PLTilF"

--------------qZs8iOmd3L6YpUcnk5PLTilF
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

SGkgSGFucywNCg0KT24gMTMuMDkuMjMgMjM6MzgsIEhhbnMgdmFuIEtyYW5lbmJ1cmcgd3Jv
dGU6DQo+IEhpIFJhZG9zbGF2LA0KPiANCj4gVGhhbmtzIGZvciB5b3VyIHJlcG9ydC4uLg0K
PiANCj4gSGkgSnVlcmdlbiwgQm9yaXMgYW5kIHhlbi1kZXZlbCwNCj4gDQo+IEF0IERlYmlh
biwgd2UgZ290IHRoZSByZXBvcnQgYmVsb3cuIChBbHNvIGF0DQo+IGh0dHBzOi8vYnVncy5k
ZWJpYW4ub3JnL2NnaS1iaW4vYnVncmVwb3J0LmNnaT9idWc9MTA1MTg2MikNCj4gDQo+IFRo
aXMgaGFyZHdhcmUsIHdpdGggb25seSBYZW4gYW5kIERvbTAgcnVubmluZyBpcyBoaXR0aW5n
IHRoZSBmYWlsZWQNCj4gbXVsdGljYWxsIHdhcm5pbmcgYW5kIGxvZ2dpbmcgaW4gYXJjaC94
ODYveGVuL211bHRpY2FsbHMuYy4gQ2FuIHlvdSBoZWxwDQo+IGFkdmlzZSB3aGF0IHdlIGNh
biBkbyB0byBmdXJ0aGVyIGRlYnVnIHRoaXMgaXNzdWU/DQo+IA0KPiBTaW5jZSB0aGlzIGxv
b2tzIGxpa2UgcHJldHR5IGxvdyBsZXZlbCBYZW4vaGFyZHdhcmUgc3R1ZmYsIEknZCByYXRo
ZXINCj4gYXNrIHVwc3RyZWFtIGZvciBkaXJlY3Rpb25zIGZpcnN0LiBJZiBuZWVkZWQgdGhl
IERlYmlhbiBYZW4gVGVhbSBjYW4NCj4gYXNzaXN0IHRoZSBlbmQgdXNlciB3aXRoIHRoZSBk
ZWJ1Z2dpbmcgcHJvY2Vzcy4NCj4gDQo+IFRoYW5rcywNCj4gDQo+IE1vcmUgcmVwbHkgaW5s
aW5lLi4uDQo+IA0KPiBPbiA5LzEzLzIzIDIwOjEyLCBSYWRvc2xhdiBCb2TDsyB3cm90ZToN
Cj4+IFBhY2thZ2U6IHhlbi1zeXN0ZW0tYW1kNjQNCj4+IFZlcnNpb246IDQuMTcuMSsyLWdi
NzczYzQ4ZTM2LTENCj4+IFNldmVyaXR5OiBpbXBvcnRhbnQNCj4+DQo+PiBIZWxsbywNCj4+
DQo+PiBhZnRlciB1cGdyYWRlIGZyb20gQnVsbHNleWUgdG8gQm9va3dvcm0gb25lIG9mIG91
ciBkb20wJ3MNCj4+IGJlY2FtZSB1bnVzYWJsZSBkdWUgdG8gbG9ncy9zeXN0ZW0gYmVpbmcg
Y29udGludW91c2x5IGZsb29kZWQNCj4+IHdpdGggd2FybmluZ3MgZnJvbSBhcmNoL3g4Ni94
ZW4vbXVsdGljYWxscy5jOjEwMiB4ZW5fbWNfZmx1c2gsIGFuZCB0aGUNCj4+IHN5c3RlbSBi
ZWNvbWUgdW51c2FibGUuDQo+Pg0KPj4gVGhlIGlzc3VlIHN0YXJ0cyBhdCBzb21lIHBvaW50
IHdoZXJlIHN5c3RlbSBzZXJ2aWNlcyBzdGFydHMgdG8gY29tZSB1cCwNCj4+IGJ1dCBub3Ro
aW5nIHZlcnkgc3BlY2lhbCBpcyBvbiB0aGF0IGJveCAoZG9tMCwgbmZ0YWJsZXMsIGZhaWwy
YmFuLA0KPj4gcHJvbWV0aGV1cy1ub2RlLWV4cG9ydGVyLCAzeCBkb21VKS4gV2UgaGF2ZSB0
cmllZCB0byBkaXNhYmxlIGFsbCBkb21VJ3MNCj4+IGFuZCBmYWlsMmJhbiBhcyB0aGUgbmFt
ZSBvZiB0aGUgcHJvY2VzcyB3b3VsZCBzdWdnZXN0LCBidXQgaXNzdWUgaXMNCj4+IHN0aWxs
IHByZXNlbnQuIFdlIGhhdmUgdHJpZWQgYWxzbyBzb21lIG90aGVyIGVsYWJvcmF0aW9uIGJ1
dCBub25lIG9mDQo+PiB0aGVtIGhhdmUgaGVscGVkIHNvIGZhcjoNCj4+DQo+PiAqIHRoZSBp
c3N1ZSBhcmlzZSB3aGVuIHhlbiA0LjE3ICsgbGludXggPj0gNi4xIGlzIGJvb3RlZA0KPj4g
KiB4ZW4gKyBib29rd29ybS1iYWNrcG9ydHMgbGludXgtaW1hZ2UtNi40LjAtMC5kZWIxMi4y
LWFtZDY0IGhhdmUgc2FtZSBpc3V1ZQ0KPj4gKiB3aXRob3V0IHhlbiBoeXBlcnZpc29yLCBs
aW51eCA2LjEgcnVucyBqdXN0IGZpbmUNCj4+ICogc3lzdGVtcmVzY3VlIGNkIGJvb3QgYW5k
IHhmc19yZXBhaXIgcm9vdGZzIGRpZCBub3QgaGVscGVkDQo+PiAqIG1lbXRlc3Qgc2VlbSB0
byBiZSBmaW5lIHJ1bm5pbmcgZm9yIGhvdXJzDQo+IA0KPiBUaGFua3MgZm9yIGFscmVhZHkg
dHJ5aW5nIG91dCBhbGwgdGhlc2UgY29tYmluYXRpb25zLg0KPiANCj4+IEFzIGEgd29ya2Fy
b3VuZCB3ZSBoYXZlIGJvb3RlZCB4ZW4gNC4xNyArIGxpbnV4IDUuMTAuMC0yNSAoNS4xMC4x
OTEtMSkNCj4+IGFuZCB0aGUgc3lzdGVtIGlzIHJ1bm5pbmcgZmluZSBhcyBmb3IgbGFzdCBm
ZXcgbW9udGhzLg0KPj4NCj4+IEhhcmR3YXJlOg0KPj4gKiBEZWxsIFBvd2VyRWRnZSBSNzUw
eHMNCj4+ICogMnggSW50ZWwgWGVvbiBTaWx2ZXIgNDMxMCAyLjFHDQo+PiAqIDI1NkdCIFJB
TQ0KPj4gKiBQRVJDIEg3NTUgQWRhcHRlciwgMTJ4IDE4VEIgSEREcw0KPiANCj4gSSBoYXZl
IGEgZmV3IHF1aWNrIGFkZGl0aW9uYWwgcXVlc3Rpb25zIGFscmVhZHk6DQo+IA0KPiAxLiBG
b3IgY2xhcmlmaWNhdGlvbi4uIEZyb20geW91ciB0ZXh0LCBJIHVuZGVyc3RhbmQgdGhhdCBv
bmx5IHRoaXMgb25lDQo+IHNpbmdsZSBzZXJ2ZXIgaXMgc2hvd2luZyB0aGUgcHJvYmxlbSBh
ZnRlciB0aGUgRGViaWFuIHZlcnNpb24gdXBncmFkZS4NCj4gRG9lcyB0aGlzIG1lYW4gdGhh
dCB0aGlzIGlzIHRoZSBvbmx5IHNlcnZlciB5b3UgaGF2ZSBydW5uaW5nIHdpdGgNCj4gZXhh
Y3RseSB0aGlzIGNvbWJpbmF0aW9uIG9mIGhhcmR3YXJlIChhbmQgQklPUyB2ZXJzaW9uLCBD
UFUgbWljcm9jb2RlDQo+IGV0YyBldGMpPyBPciwgaXMgdGhlcmUgYW5vdGhlciBvbmUgd2l0
aCBzYW1lIGhhcmR3YXJlIHdoaWNoIGRvZXMgbm90DQo+IHNob3cgdGhlIHByb2JsZW0/DQo+
IA0KPiAyLiBDYW4geW91IHJlcGx5IHdpdGggdGhlIG91dHB1dCBvZiAneGwgZG1lc2cnIHdo
ZW4gdGhlIHByb2JsZW0gaGFwcGVucz8NCj4gT3IsIGlmIHRoZSBzeXN0ZW0gZ2V0cyB1bnVz
YWJsZSB0b28gcXVpY2ssIGRvIHlvdSBoYXZlIGEgc2VyaWFsIGNvbnNvbGUNCj4gY29ubmVj
dGlvbiB0byBjYXB0dXJlIHRoZSBvdXRwdXQ/DQo+IA0KPiAzLiBUbyBjb25maXJtLi4uIEkg
dW5kZXJzdGFuZCB0aGF0IHRoZXJlIGFyZSBtYW55IG9mIHRoZXNlIG1lc3NhZ2VzLg0KPiBT
aW5jZSB5b3UgcGFzdGVkIG9ubHkgb25lLCBkb2VzIHRoYXQgbWVhbiB0aGF0IGFsbCBvZiB0
aGVtIGxvb2sgZXhhY3RseQ0KPiB0aGUgc2FtZSwgd2l0aCAiMSBvZiAxIG11bHRpY2FsbChz
KSBmYWlsZWQ6IGNwdSAxMCIgImNhbGwgIDE6IG9wPTENCj4gYXJnPVtmZmZmODg4OGExYTll
YjEwXSByZXN1bHQ9LTIyIj8gT3IgYXJlIHRoZXJlIHZhcmlhdGlvbnM/IElmIHNvLCBjYW4N
Cj4geW91IHJlcGx5IHdpdGggYSBmZXcgZGlmZmVyZW50IG9uZXM/DQo+IA0KPiBTaW5jZSB0
aGlzIHZlcnkgbXVjaCBsb29rcyBsaWtlIGFuIGlzc3VlIG9mIFhlbiByZWxhdGVkIGNvZGUg
d2hlcmUgdGhlDQo+IFhlbiBoeXBlcnZpc29yLCBkb20wIGtlcm5lbCBhbmQgaGFyZHdhcmUg
aGFzIHRvIHdvcmsgdG9nZXRoZXIgY29ycmVjdGx5LA0KPiAoYW5kIG5vdCBhIERlYmlhbiBw
YWNrYWdpbmcgcHJvYmxlbSkgSSdtIGFscmVhZHkgYXNraW5nIHVwc3RyZWFtIGZvcg0KPiBh
ZHZpY2UgYWJvdXQgd2hhdCB3ZSBzaG91bGQvY291bGQgZG8gbmV4dCwgaW5zdGVhZCBvZiB0
cnlpbmcgdG8gbWFrZSBhDQo+IGd1ZXNzIG15c2VsZi4NCj4gDQo+IFRoYW5rcywNCj4gSGFu
cw0KPiANCj4+IEFueSBoZWxwLCBhZHZpY2Ugb3IgYnVnIGNvbmZpcm1hdGlvbiB3b3VsZCBi
ZSBhcHByZWNpYXRlZA0KPj4NCj4+IEJlc3QgcmVnYXJkcw0KPj4gYm9kaWsNCj4+DQo+Pg0K
Pj4gKGxvZyBhbHNvIGluIGF0dGFjaG1lbnQpDQo+Pg0KPj4gYGBgDQo+PiBrZXJuZWw6IFsg
ICA5OS43NjI0MDJdIFdBUk5JTkc6IENQVTogMTAgUElEOiAxMzAxIGF0DQo+PiBhcmNoL3g4
Ni94ZW4vbXVsdGljYWxscy5jOjEwMiB4ZW5fbWNfZmx1c2grMHgxOTYvMHgyMjANCj4+IGtl
cm5lbDogWyAgIDk5Ljc2MjU5OF0gTW9kdWxlcyBsaW5rZWQgaW46IG52bWVfZmFicmljcyBu
dm1lX2NvcmUgYnJpZGdlDQo+PiB4ZW5fYWNwaV9wcm9jZXNzb3IgeGVuX2dudGRldiBzdHAg
bGxjIHhlbl9ldnRjaG4geGVuZnMgeGVuX3ByaXZjbWQNCj4+IGJpbmZtdF9taXNjIGludGVs
X3JhcGxfbXNyIGV4dDQgaW50ZWxfcmFwbF9jb21tb24gY3JjMTYNCj4+IGludGVsX3VuY29y
ZV9mcmVxdWVuY3lfY29tbW9uIG1iY2FjaGUgaXBtaV9zc2lmIGpiZDIgbmZpdCBsaWJudmRp
bW0NCj4+IGdoYXNoX2NsbXVsbmlfaW50ZWwgc2hhNTEyX3Nzc2UzIHNoYTUxMl9nZW5lcmlj
IGFlc25pX2ludGVsIGFjcGlfaXBtaQ0KPj4gbmZ0X2N0IGNyeXB0b19zaW1kIGNyeXB0ZCBt
ZWlfbWUgbWdhZzIwMCBpcG1pX3NpIGlUQ09fd2R0IGludGVsX3BtY19ieHQNCj4+IGlwbWlf
ZGV2aW50ZiBkcm1fc2htZW1faGVscGVyIGRlbGxfc21iaW9zIG5mdF9tYXNxIGlUQ09fdmVu
ZG9yX3N1cHBvcnQNCj4+IGlzc3RfaWZfbWJveF9wY2kgZHJtX2ttc19oZWxwZXIgaXNzdF9p
Zl9tbWlvIGRjZGJhcyBtZWkgaW50ZWxfdnNlYw0KPj4gaXNzdF9pZl9jb21tb24gZGVsbF93
bWlfZGVzY3JpcHRvciB3bWlfYm1vZiB3YXRjaGRvZyBwY3Nwa3INCj4+IGludGVsX3BjaF90
aGVybWFsIGlwbWlfbXNnaGFuZGxlciBpMmNfYWxnb19iaXQgYWNwaV9wb3dlcl9tZXRlciBi
dXR0b24NCj4+IG5mdF9uYXQgam95ZGV2IGV2ZGV2IHNnIG5mdF9jaGFpbl9uYXQgbmZfbmF0
IG5mX2Nvbm50cmFjayBuZl9kZWZyYWdfaXB2Ng0KPj4gbmZfZGVmcmFnX2lwdjQgbmZfdGFi
bGVzIG5mbmV0bGluayBkcm0gZnVzZSBsb29wIGVmaV9wc3RvcmUgY29uZmlnZnMNCj4+IGlw
X3RhYmxlcyB4X3RhYmxlcyBhdXRvZnM0IHhmcyBsaWJjcmMzMmMgY3JjMzJjX2dlbmVyaWMg
aGlkX2dlbmVyaWMNCj4+IHVzYmhpZCBoaWQgZG1fbW9kIHNkX21vZCB0MTBfcGkgY3JjNjRf
cm9ja3NvZnQgY3JjNjQgY3JjX3QxMGRpZg0KPj4gY3JjdDEwZGlmX2dlbmVyaWMgYWhjaSBs
aWJhaGNpIHhoY2lfcGNpIGxpYmF0YSB4aGNpX2hjZA0KPj4ga2VybmVsOiBbICAgOTkuNzYy
NjMzXSAgbWVnYXJhaWRfc2FzIHRnMyBjcmN0MTBkaWZfcGNsbXVsDQo+PiBjcmN0MTBkaWZf
Y29tbW9uIGNyYzMyX3BjbG11bCBjcmMzMmNfaW50ZWwgYm54dF9lbiB1c2Jjb3JlIHNjc2lf
bW9kDQo+PiBpMmNfaTgwMSBsaWJwaHkgaTJjX3NtYnVzIHVzYl9jb21tb24gc2NzaV9jb21t
b24gd21pDQo+PiBrZXJuZWw6IFsgICA5OS43NjQ3NjVdIENQVTogMTAgUElEOiAxMzAxIENv
bW06IHB5dGhvbjMgVGFpbnRlZDogRw0KPj4gVyAgICAgICAgICA2LjEuMC0xMi1hbWQ2NCAj
MSAgRGViaWFuIDYuMS41Mi0xDQo+PiBrZXJuZWw6IFsgICA5OS43NjQ5ODldIEhhcmR3YXJl
IG5hbWU6IERlbGwgSW5jLiBQb3dlckVkZ2UgUjc1MHhzLzA0NDFYRywNCj4+IEJJT1MgMS44
LjIgMDkvMTQvMjAyMg0KPj4ga2VybmVsOiBbICAgOTkuNzY1MjE0XSBSSVA6IGUwMzA6eGVu
X21jX2ZsdXNoKzB4MTk2LzB4MjIwDQo+PiBrZXJuZWw6IFsgICA5OS43NjU0MzZdIENvZGU6
IGUyIDA2IDQ4IDAxIGRhIDg1IGMwIDBmIDg0IDIzIGZmIGZmIGZmIDQ4DQo+PiA4YiA0MyAx
OCA0OCA4MyBjMyA0MCA0OCBjMSBlOCAzZiA0MSAwMSBjNSA0OCAzOSBkMyA3NSBlYyA0NSA4
NSBlZCAwZiA4NA0KPj4gMDYgZmYgZmYgZmYgPDBmPiAwYiBlOCBlMyA2ZSBhMCAwMCA0MSA4
YiAxNCAyNCA0NCA4OSBlZSA0OCBjNyBjNyBjMCBlYQ0KPj4gMzMgODIgODkNCj4+IGtlcm5l
bDogWyAgIDk5Ljc2NTkxMF0gUlNQOiBlMDJiOmZmZmZjOTAwNDEyZmZjNjAgRUZMQUdTOiAw
MDAxMDA4Mg0KPj4ga2VybmVsOiBbICAgOTkuNzY2MTUyXSBSQVg6IGZmZmZmZmZmZmZmZmZm
ZWEgUkJYOiBmZmZmODg4OGExYTllMzAwIFJDWDoNCj4+IDAwMDAwMDAwMDAwMDAwMDANCj4+
IGtlcm5lbDogWyAgIDk5Ljc2NjQwM10gUkRYOiAwMDAwMDAwMDAwMDAwMDAwIFJTSTogMDAw
MDAwMDAwMDAwMDAwMSBSREk6DQo+PiBmZmZmODg4OGExYTllYjEwDQo+PiBrZXJuZWw6IFsg
ICA5OS43NjY2NTNdIFJCUDogMDAwMDAwMDA4MDAwMDAwMiBSMDg6IDAwMDAwMDAwMDAwMDAw
MDAgUjA5Og0KPj4gMDAwMDAwMDAwMDc0NGY4Yg0KPj4ga2VybmVsOiBbICAgOTkuNzY2OTAy
XSBSMTA6IDAwMDAwMDAwMDAwMDdmZjAgUjExOiAwMDAwMDAwMDAwMDAwMDE4IFIxMjoNCj4+
IGZmZmY4ODg4YTFhOWUzMDANCj4+IGtlcm5lbDogWyAgIDk5Ljc2NzE1M10gUjEzOiAwMDAw
MDAwMDAwMDAwMDAxIFIxNDogZmZmZmVhMDAwNTEzMDAwMCBSMTU6DQo+PiBmZmZmZWEwMDA1
MTMwMDAwDQo+PiBrZXJuZWw6IFsgICA5OS43Njc0MDldIEZTOiAgMDAwMDdmNTliNWJhNjJj
MCgwMDAwKQ0KPj4gR1M6ZmZmZjg4ODhhMWE4MDAwMCgwMDAwKSBrbmxHUzowMDAwMDAwMDAw
MDAwMDAwDQo+PiBrZXJuZWw6IFsgICA5OS43Njc2NjRdIENTOiAgMTAwMDBlMDMwIERTOiAw
MDAwIEVTOiAwMDAwIENSMDoNCj4+IDAwMDAwMDAwODAwNTAwMzMNCj4+IGtlcm5lbDogWyAg
IDk5Ljc2NzkxOF0gQ1IyOiAwMDAwN2Y1OWIyMjAwMDAwIENSMzogMDAwMDAwMDE0MWJkMDAw
MCBDUjQ6DQo+PiAwMDAwMDAwMDAwMDUwNjYwDQo+PiBrZXJuZWw6IFsgICA5OS43NjgxODFd
IENhbGwgVHJhY2U6DQo+PiBrZXJuZWw6IFsgICA5OS43Njg0MzZdICA8VEFTSz4NCj4+IGtl
cm5lbDogWyAgIDk5Ljc2ODY5MV0gID8gX193YXJuKzB4N2QvMHhjMA0KPj4ga2VybmVsOiBb
ICAgOTkuNzY4OTQ3XSAgPyB4ZW5fbWNfZmx1c2grMHgxOTYvMHgyMjANCj4+IGtlcm5lbDog
WyAgIDk5Ljc2OTIwNF0gID8gcmVwb3J0X2J1ZysweGU2LzB4MTcwDQo+PiBrZXJuZWw6IFsg
ICA5OS43Njk0NjBdICA/IGhhbmRsZV9idWcrMHg0MS8weDcwDQo+PiBrZXJuZWw6IFsgICA5
OS43Njk3MTNdICA/IGV4Y19pbnZhbGlkX29wKzB4MTMvMHg2MA0KPj4ga2VybmVsOiBbICAg
OTkuNzY5OTY3XSAgPyBhc21fZXhjX2ludmFsaWRfb3ArMHgxNi8weDIwDQo+PiBrZXJuZWw6
IFsgICA5OS43NzAyMjNdICA/IHhlbl9tY19mbHVzaCsweDE5Ni8weDIyMA0KPj4ga2VybmVs
OiBbICAgOTkuNzcwNDc4XSAgeGVuX21jX2lzc3VlKzB4NmQvMHg3MA0KPj4ga2VybmVsOiBb
ICAgOTkuNzcwNzI2XSAgeGVuX3NldF9wbWRfaHlwZXIrMHg1NC8weDkwDQo+PiBrZXJuZWw6
IFsgICA5OS43NzA5NjVdICBkb19zZXRfcG1kKzB4MTg4LzB4MmEwDQoNClRoaXMgbG9va3Mg
bGlrZSBhbiBhdHRlbXB0IHRvIG1hcCBhIGh1Z2VwYWdlLCB3aGljaCBpc24ndCBzdXBwb3J0
ZWQgd2hlbiBydW5uaW5nDQphcyBhIFhlbiBQViBndWVzdCAodGhpcyBpbmNsdWRlcyBkb20w
KS4NCg0KQXJlIHRyYW5zcGFyZW50IGh1Z2VwYWdlcyBlbmFibGVkIHNvbWVob3c/IEluIGEg
WGVuIFBWIGd1ZXN0IHRoZXJlIHNob3VsZCBiZSBubw0KL3N5cy9rZXJuZWwvbW0vdHJhbnNw
YXJlbnRfaHVnZXBhZ2UgZGlyZWN0b3J5LiBEZXBlbmRpbmcgb24gdGhlIHByZXNlbmNlIG9m
IHRoYXQNCmRpcmVjdG9yeSBlaXRoZXIgaHVnZXBhZ2VfaW5pdCgpIGhhcyBhIGJ1Zywgb3Ig
YSB0ZXN0IGZvciBodWdlcGFnZXMgYmVpbmcNCnN1cHBvcnRlZCBpcyBtaXNzaW5nIGluIGZp
bGVtYXBfbWFwX3BhZ2VzKCkgb3IgZG9fc2V0X3BtZCgpLg0KDQo+PiBrZXJuZWw6IFsgICA5
OS43NzEyMDBdICBmaWxlbWFwX21hcF9wYWdlcysweDFhOS8weDZlMA0KPj4ga2VybmVsOiBb
ICAgOTkuNzcxNDM0XSAgeGZzX2ZpbGVtYXBfbWFwX3BhZ2VzKzB4NDEvMHg2MCBbeGZzXQ0K
Pj4ga2VybmVsOiBbICAgOTkuNzcxNzE0XSAgZG9fZmF1bHQrMHgxYTQvMHg0MTANCj4+IGtl
cm5lbDogWyAgIDk5Ljc3MTk0N10gIF9faGFuZGxlX21tX2ZhdWx0KzB4NjYwLzB4ZmEwDQo+
PiBrZXJuZWw6IFsgICA5OS43NzIxODJdICBoYW5kbGVfbW1fZmF1bHQrMHhkYi8weDJkMA0K
Pj4ga2VybmVsOiBbICAgOTkuNzcyNDE0XSAgZG9fdXNlcl9hZGRyX2ZhdWx0KzB4MTljLzB4
NTcwDQo+PiBrZXJuZWw6IFsgICA5OS43NzI2NDNdICBleGNfcGFnZV9mYXVsdCsweDcwLzB4
MTcwDQo+PiBrZXJuZWw6IFsgICA5OS43NzI4NzNdICBhc21fZXhjX3BhZ2VfZmF1bHQrMHgy
Mi8weDMwDQo+PiBrZXJuZWw6IFsgICA5OS43NzMxMDJdIFJJUDogMDAzMzoweDdmNTliNTAy
Y2JlMg0KPj4ga2VybmVsOiBbICAgOTkuNzczMzI5XSBDb2RlOiA0ZCA4ZCA4NyA4MCAwMSAw
MCAwMCA0OCA4OSBkOSA0NSAzMSBjOSA0OA0KPj4gODUgZmYgNzQgNWMgNjYgMGYgMWYgNDQg
MDAgMDAgNDkgOGQgYjAgODAgZmUgZmYgZmYgMzEgZDIgNDEgMGYgMTggMDggZjMNCj4+IDBm
IDZmIDA0IDExIDxmMz4gMGYgNmYgMWMgMTYgZjMgMGYgNmYgMjQgMTYgNjYgMGYgZWYgYzMg
NjYgMGYgNzAgYzggMzENCj4+IDY2IDBmIGY0DQo+PiBrZXJuZWw6IFsgICA5OS43NzM4MDZd
IFJTUDogMDAyYjowMDAwN2ZmYzY5OTIzZjcwIEVGTEFHUzogMDAwMTAyNDYNCj4+IGtlcm5l
bDogWyAgIDk5Ljc3NDA0MF0gUkFYOiAwMDAwN2ZmYzY5OTIzZmEwIFJCWDogMDAwMDdmNTli
NTAzODAwMCBSQ1g6DQo+PiAwMDAwN2Y1OWI1MDM4MDAwDQo+PiBrZXJuZWw6IFsgICA5OS43
NzQyNzZdIFJEWDogMDAwMDAwMDAwMDAwMDAwMCBSU0k6IDAwMDA3ZjU5YjIxZmZmZmEgUkRJ
Og0KPj4gMDAwMDAwMDAwMDAwMDAxMA0KPj4ga2VybmVsOiBbICAgOTkuNzc0NTA0XSBSQlA6
IDAwMDAwMDAwMDI1YjhmNDAgUjA4OiAwMDAwN2Y1OWIyMjAwMTdhIFIwOToNCj4+IDAwMDAw
MDAwMDAwMDAwMDANCj4+IGtlcm5lbDogWyAgIDk5Ljc3NDcyN10gUjEwOiAwMDAwMDAwMDAw
MDc3ZWNhIFIxMTogMDAwMDAwMDAwMDAwMDQwMCBSMTI6DQo+PiAwMDAwN2Y1OWIxYTAwMmZh
DQo+PiBrZXJuZWw6IFsgICA5OS43NzQ5NDddIFIxMzogMDAwMDdmZmM2OTkyM2ZlMCBSMTQ6
IDAwMDA3ZjU5YjUwMzgwODAgUjE1Og0KPj4gMDAwMDdmNTliMjFmZmZmYQ0KPj4ga2VybmVs
OiBbICAgOTkuNzc1MTYxXSAgPC9UQVNLPg0KPj4ga2VybmVsOiBbICAgOTkuNzc1MzY1XSAt
LS1bIGVuZCB0cmFjZSAwMDAwMDAwMDAwMDAwMDAwIF0tLS0NCj4+IGtlcm5lbDogWyAgIDk5
Ljc3NTU2N10gMSBvZiAxIG11bHRpY2FsbChzKSBmYWlsZWQ6IGNwdSAxMA0KPj4ga2VybmVs
OiBbICAgOTkuNzc1NzYzXSAgIGNhbGwgIDE6IG9wPTEgYXJnPVtmZmZmODg4OGExYTllYjEw
XSByZXN1bHQ9LTIyDQo+PiBgYGANCg0KDQpKdWVyZ2VuDQoNCg==
--------------qZs8iOmd3L6YpUcnk5PLTilF
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------qZs8iOmd3L6YpUcnk5PLTilF--

--------------ntjqVUQ9bqeIcQ556yZsCrG1--

--------------MKsxYrj1P8x21mlreX86TLIu
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUCnY0FAwAAAAAACgkQsN6d1ii/Ey8+
hQgAkFdNl/CrsBQ5lBVKKBaKo5kUHwmAXN6fhb5FpfvCEKoCBQpryz3HUkQ+LSujIwB7r4ZBhJdg
ytglBFwFhYJVdSWT5o2vMMiFc96gbqev2jLQoV9NTzN4o7hiNFcTMXKi7losd/5TFLJjedn37L9z
nsWFvnGqb0orjB2+SGsGc21QnCeJB6X0xq/+d1y7qz3ftgsv/IsDHCFAteFEQ4JwKxYpXrLXfyey
cB0O2KvzwGvaAGT8ME6UC6NkxIoDt6Z7kzwnJFz/7rW5qdUV7xn5KgHSJwDi7puZqg9cXBAFOCnW
6VBZGzJSEjgkHGXQPHb1WEFJINbD11Pf7jWVM0+U/Q==
=HDps
-----END PGP SIGNATURE-----

--------------MKsxYrj1P8x21mlreX86TLIu--


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:51:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:51:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602007.938348 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgfFl-0000qD-HG; Thu, 14 Sep 2023 05:51:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602007.938348; Thu, 14 Sep 2023 05:51:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgfFl-0000q6-EO; Thu, 14 Sep 2023 05:51:01 +0000
Received: by outflank-mailman (input) for mailman id 602007;
 Thu, 14 Sep 2023 05:51:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lXhl=E6=arm.com=Penny.Zheng@srs-se1.protection.inumbo.net>)
 id 1qgfFj-0000gP-PI
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:50:59 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062c.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id acbdc1a9-52c2-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:50:57 +0200 (CEST)
Received: from DB7PR02CA0034.eurprd02.prod.outlook.com (2603:10a6:10:52::47)
 by GV2PR08MB7953.eurprd08.prod.outlook.com (2603:10a6:150:ab::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 05:50:44 +0000
Received: from DBAEUR03FT065.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:52:cafe::2b) by DB7PR02CA0034.outlook.office365.com
 (2603:10a6:10:52::47) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20 via Frontend
 Transport; Thu, 14 Sep 2023 05:50:43 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT065.mail.protection.outlook.com (100.127.142.147) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.19 via Frontend Transport; Thu, 14 Sep 2023 05:50:43 +0000
Received: ("Tessian outbound b5a0f4347031:v175");
 Thu, 14 Sep 2023 05:50:42 +0000
Received: from 96ea165c2260.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 945516FD-BF1D-4061-94F3-CE9B88575D3D.1; 
 Thu, 14 Sep 2023 05:49:02 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 96ea165c2260.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 14 Sep 2023 05:49:02 +0000
Received: from AS9PR06CA0227.eurprd06.prod.outlook.com (2603:10a6:20b:45e::16)
 by PAVPR08MB9186.eurprd08.prod.outlook.com (2603:10a6:102:30c::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 05:48:59 +0000
Received: from AM7EUR03FT058.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:45e:cafe::ac) by AS9PR06CA0227.outlook.office365.com
 (2603:10a6:20b:45e::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20 via Frontend
 Transport; Thu, 14 Sep 2023 05:48:59 +0000
Received: from nebula.arm.com (40.67.248.234) by
 AM7EUR03FT058.mail.protection.outlook.com (100.127.140.247) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Thu, 14 Sep 2023 05:48:59 +0000
Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX04.Arm.com
 (10.251.24.32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 14 Sep
 2023 05:48:58 +0000
Received: from [10.169.172.183] (10.169.172.183) by mail.arm.com
 (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend
 Transport; Thu, 14 Sep 2023 05:48:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: acbdc1a9-52c2-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GGzERvBoq9P2zABBNKNmztOcM5WNTyag1mJC2T+TaUk=;
 b=G4ghA2LYORfrQRps78NqaL/+c2gOA/F3Adn6tgW2DmeEPP21JJPjAbY4qHwoHp2xSgREMz1kfl1cikeUCyEMnjokjm2wrRdW/atnMi4AdaOiUNiQnCEq9oSSLeUP/mmYvoVuyLrH4gfdO2xFy5zyjRA6+n6G6UdVzZvwUpyQjRU=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 8f839705765c254a
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PB5CaYGTEip3+sx+HBUnpwQcYtWFyrVIY8NF5TjX2rIhojFR5hYJKX+H0svJr6vR9yDBu7bgNUSGUGgOv8x4OzdcsnwJG9t/BJECw5+Solqlv/6wPu1O+gyiISspeCKuN8WoWMGHgx2zxsr4KJKvrT6ycXybIXiE6KWYrEs/r9leP4pFvT+KqqbnjjpfQnMuxI8DyI3sVQsuEncbj50NEVu6mNWaAnG3/kQg8/DP/3T+2T7kxVWFIfF0TV9E4g8VELahX251vDBKu0UwAxDcGSx9dTvMR4LJEUp99TBKHw/8kVgZb49qn4sWN+Qkdq2Mq3TURgBMIg6QU9MmmEhuyg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GGzERvBoq9P2zABBNKNmztOcM5WNTyag1mJC2T+TaUk=;
 b=kJSWlp5mEZ3b9tlKp77yCLXy8OYMgzQykg2oVDE5rPZ8p3L3H5Qs0waxN/nGWUr0asIdN+TN0EJ2a3qZY3kGhRoid2qqJoXdAr/YR7Z+sZrV5ZTKWRfK8cyBiBSqYFmdH5evTGZpoD29lxAqe48DxZG2ufVkMW2Qn7q2DL0EDOnw7ExMlX/sv28yw7VcDEFkl6WJC/ez/2kEoXi5/fsuK9scep3XBKZVvzYaK/nk6i5oY7oHAel0AVfqD9S+Qc3Xl4qbehzVW7szzStHAY6j/dfHU38qCcvDZ0cfo2MtOidgLsCAm7U9k4ftD7SMb4KRKXrIFwYEBmvPHuJNZxDs5g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 40.67.248.234) smtp.rcpttodomain=amd.com smtp.mailfrom=arm.com; dmarc=pass
 (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message
 not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GGzERvBoq9P2zABBNKNmztOcM5WNTyag1mJC2T+TaUk=;
 b=G4ghA2LYORfrQRps78NqaL/+c2gOA/F3Adn6tgW2DmeEPP21JJPjAbY4qHwoHp2xSgREMz1kfl1cikeUCyEMnjokjm2wrRdW/atnMi4AdaOiUNiQnCEq9oSSLeUP/mmYvoVuyLrH4gfdO2xFy5zyjRA6+n6G6UdVzZvwUpyQjRU=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234)
 smtp.mailfrom=arm.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 40.67.248.234 as permitted sender) receiver=protection.outlook.com;
 client-ip=40.67.248.234; helo=nebula.arm.com; pr=C
Message-ID: <a958921e-500e-fd26-741d-1a1b686fdfcb@arm.com>
Date: Thu, 14 Sep 2023 13:48:53 +0800
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.14.0
Subject: Re: [XEN v1 4/4] xen/arm: traps.c: Enclose VMSA specific registers
 within CONFIG_MMU
Content-Language: en-US
To: Ayan Kumar Halder <ayan.kumar.halder@amd.com>,
	<xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <stefano.stabellini@amd.com>, <julien@xen.org>,
	<Volodymyr_Babchuk@epam.com>, <bertrand.marquis@arm.com>, <wei.chen@arm.com>,
	<henry.wang@arm.com>
References: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
 <20230911135942.791206-5-ayan.kumar.halder@amd.com>
From: Penny Zheng <penny.zheng@arm.com>
In-Reply-To: <20230911135942.791206-5-ayan.kumar.halder@amd.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 1
X-MS-TrafficTypeDiagnostic:
	AM7EUR03FT058:EE_|PAVPR08MB9186:EE_|DBAEUR03FT065:EE_|GV2PR08MB7953:EE_
X-MS-Office365-Filtering-Correlation-Id: 52f506ed-1868-485c-2968-08dbb4e688b3
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 z6shbnYnwqZ8U/r3nxMomT47ZlUqqwwsCluJZP4GScV3YceZUWBynRHKBBbHW2nCVgmwuRuw0PaqzU/BDi8nBmh+4Vhqfmic3V5cjubbcYY5q77Jyfy5PnyewJ0OmjDhN1P+ivEYP9Bw6jlwhPgoOkf6lWc1MQ2WwVlnxcEbvRSJyRwpNSliJGgXdMdtSu2AkoffTH5ITtJNFewxnMMRpA7Wfb13a7uySMUylGJFKGywtZco7YJAiMsqqZ9DtNszBciUDPqaczfAdMxXp/Wfjk5iI8juJTQA27wr6Tv6DjBI06nVOPluIDZnV0zP0fstAZvqnuIT71rXvGPkqKyGbyMGHW91Gf6XTaP9pmieoI2sn2pCOrAFvJ/5wybHahuwGOWtDBobm5ASd2sukFgwf8fZN+r9WiP245p+zpuBHEeRkMKl/KZ2GneLDLrm82kkCQ3dCPHlSAA+5hSKR2VQUtKGqePj+Uoey4s6ULmeneprhkPpyiJn3uPZmXHRM5x1UD/tw6xAYSizXb2/HqBiqYVxxVkrVwInR2BxWWwXkta6S3Zv9GWbXolOnQGz/ZOHyvmX8a6HyU4U/hgEJ9YpKyzP5p4p7XXy52E+WI6mb4osHqyCf1myCzQfnoHKXLEJxF9PIQJC7mhCd6tw9vrizEtvDlWAFlkVMbQvX5URVNmRlj3evOKFFeql9nHkB29yJO2yPwU6M5QFq1BaRx563xeIc5s1whAojIv0bjrMfMwT5EJru0rc7/VAZyKyJ7lZGVxy8NeVV4oYuLUU7qkfJzUYYHllliPFmITlMwp+FQIMvo+KS1tnQQ6xj348KhKCw1aqTHxnLIITloP1xvaJzw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(136003)(396003)(39860400002)(376002)(186009)(82310400011)(1800799009)(451199024)(40470700004)(36840700001)(46966006)(40480700001)(31696002)(86362001)(44832011)(8936002)(4326008)(8676002)(5660300002)(40460700003)(2906002)(36756003)(53546011)(82740400003)(336012)(426003)(26005)(2616005)(81166007)(478600001)(356005)(36860700001)(47076005)(83380400001)(31686004)(54906003)(316002)(41300700001)(16576012)(110136005)(70206006)(70586007)(3940600001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9186
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT065.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	f0bc7c14-d20c-46be-a32a-08dbb4e64aa6
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9JNFWO8Fz74ztvapkePi75X5oPI/b4yKQCuoKICGzPTI712ikU0oUjlR9ExHwH5ThVcVTdoOi4vTRtFKiwVpAu7IhO0haoEYPMco0g5lqjtZ6YQq6Z5DO6fLXJNs09w7ez2bpf7V/NEtTE+V3fE35zPDYAOIxdlYvKBfberTM3L1KuoecpdIxCZw2xi3B+fJK/jKlPpAONaW6df36YDglCuDOx9r/enlyzGXrcO01cDQF1jB4nLjQNTTeugZEh60l14GUpqL1bZrCGBBrBGPQMmxFLkZGh69MIu3+BJK9vAjv/lC2k3QmzEOfDR73H28Dy5GkE7j4FoeRGW2qLMPmAqNqhrp6LVWXkuebrglUgkZlmTXrbw1atsxuz2gwkWH+Zk5mUOe7ouaUI2C4niKSGjR/Plw8pklZsNfJdorj3CYKOt3Y63ZWCvJyfxuYReCaUROixSrRXUiyF/3Jtr0Qd8Nv1GO56eTcymaFwt6Vl4BAp0fzP+lsxoO7GqazRDiyL8zYYlKOBcxpwlQPL7hgOH3/CdbzgBxsGnR4cVp1slJ4c+vk1DCzerVm27PowMs2U6Zd9B2UjNiEyNgZdOIBDsBhaR7Ygnwgktz66gJr0tB5EUJMMhQfa47SfwERTeiZar1/TRLEJFa0Ck3Q8LOh6ZTRtVcOoB0obtHon+K1jJ6/7S+BPUAHbdc4DgCWeL0AQWc/sD5R80ouE/STqE2IRki36G+7CaOAJ1MUsRQ/mvZs/JDZLNoaDJFaBU7RE1aXp1XBDYX8xnUmqp/YLCPyA/wG/6Kfw9FJbtJqLytkXE=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(376002)(136003)(346002)(396003)(82310400011)(451199024)(186009)(1800799009)(46966006)(40470700004)(36840700001)(26005)(2616005)(478600001)(336012)(81166007)(53546011)(40480700001)(426003)(2906002)(40460700003)(82740400003)(31696002)(47076005)(5660300002)(8676002)(4326008)(36756003)(8936002)(41300700001)(86362001)(70586007)(70206006)(110136005)(31686004)(36860700001)(316002)(54906003)(16576012)(83380400001)(44832011)(3940600001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 05:50:43.1977
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 52f506ed-1868-485c-2968-08dbb4e688b3
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT065.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB7953

Hi, Ayan

On 2023/9/11 21:59, Ayan Kumar Halder wrote:
> The VMSA specific registers (ie TCR, TTBR0, TTBR1, VTTBR, etc) are valid when
> MMU is used, thus we can enclose them with CONFIG_MMU.
> 
> Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
> ---
>   xen/arch/arm/traps.c | 17 +++++++++++++++--
>   1 file changed, 15 insertions(+), 2 deletions(-)
> 
> diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
> index 46c9a4031b..83522fcc5a 100644
> --- a/xen/arch/arm/traps.c
> +++ b/xen/arch/arm/traps.c
> @@ -698,8 +698,10 @@ static void __do_trap_serror(struct cpu_user_regs *regs, bool guest)
>   struct reg_ctxt {
>       /* Guest-side state */
>       register_t sctlr_el1;
> +#ifdef CONFIG_MMU
>       register_t tcr_el1;
>       uint64_t ttbr0_el1, ttbr1_el1;
> +#endif
>   #ifdef CONFIG_ARM_32
>       uint32_t dfsr, ifsr;
>       uint32_t dfar, ifar;
> @@ -801,9 +803,11 @@ static void show_registers_32(const struct cpu_user_regs *regs,
>       if ( guest_mode_on )
>       {
>           printk("     SCTLR: %"PRIregister"\n", ctxt->sctlr_el1);
> +#ifdef CONFIG_MMU
>           printk("       TCR: %"PRIregister"\n", ctxt->tcr_el1);
>           printk("     TTBR0: %016"PRIx64"\n", ctxt->ttbr0_el1);
>           printk("     TTBR1: %016"PRIx64"\n", ctxt->ttbr1_el1);
> +#endif

FWIS, on v8R-AArch64, with MPU on EL2, we could still support VMSA on 
EL1, so registers like TTBR0_EL1/TCR_EL1 are valid.
See ARM DDI 0600B.a Table G1-2 Alphabetical index of modified AArch64 
System registers (continued) for detailed info.

>           printk("      IFAR: %08"PRIx32", IFSR: %08"PRIx32"\n"
>                  "      DFAR: %08"PRIx32", DFSR: %08"PRIx32"\n",
>   #ifdef CONFIG_ARM_64
> @@ -873,9 +877,11 @@ static void show_registers_64(const struct cpu_user_regs *regs,
>           printk("   FAR_EL1: %016"PRIx64"\n", ctxt->far);
>           printk("\n");
>           printk(" SCTLR_EL1: %"PRIregister"\n", ctxt->sctlr_el1);
> +#ifdef CONFIG_MMU
>           printk("   TCR_EL1: %"PRIregister"\n", ctxt->tcr_el1);
>           printk(" TTBR0_EL1: %016"PRIx64"\n", ctxt->ttbr0_el1);
>           printk(" TTBR1_EL1: %016"PRIx64"\n", ctxt->ttbr1_el1);
> +#endif
>           printk("\n");
>       }
>   }
> @@ -907,13 +913,15 @@ static void _show_registers(const struct cpu_user_regs *regs,
>           show_registers_32(regs, ctxt, guest_mode_on, v);
>   #endif
>       }
> +#ifdef CONFIG_MMU
>       printk("  VTCR_EL2: %"PRIregister"\n", READ_SYSREG(VTCR_EL2));
>       printk(" VTTBR_EL2: %016"PRIx64"\n", ctxt->vttbr_el2);
> +    printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
>       printk("\n");
> +#endif
>   
>       printk(" SCTLR_EL2: %"PRIregister"\n", READ_SYSREG(SCTLR_EL2));
>       printk("   HCR_EL2: %"PRIregister"\n", READ_SYSREG(HCR_EL2));
> -    printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
>       printk("\n");
>       printk("   ESR_EL2: %"PRIregister"\n", regs->hsr);
>       printk(" HPFAR_EL2: %"PRIregister"\n", READ_SYSREG(HPFAR_EL2));
> @@ -931,9 +939,13 @@ void show_registers(const struct cpu_user_regs *regs)
>   {
>       struct reg_ctxt ctxt;
>       ctxt.sctlr_el1 = READ_SYSREG(SCTLR_EL1);
> +#ifdef CONFIG_MMU
>       ctxt.tcr_el1 = READ_SYSREG(TCR_EL1);
>       ctxt.ttbr0_el1 = READ_SYSREG64(TTBR0_EL1);
>       ctxt.ttbr1_el1 = READ_SYSREG64(TTBR1_EL1);
> +    ctxt.vttbr_el2 = READ_SYSREG64(VTTBR_EL2);
> +#endif
> +
>   #ifdef CONFIG_ARM_32
>       ctxt.dfar = READ_CP32(DFAR);
>       ctxt.ifar = READ_CP32(IFAR);
> @@ -945,7 +957,6 @@ void show_registers(const struct cpu_user_regs *regs)
>       if ( guest_mode(regs) && is_32bit_domain(current->domain) )
>           ctxt.ifsr32_el2 = READ_SYSREG(IFSR32_EL2);
>   #endif
> -    ctxt.vttbr_el2 = READ_SYSREG64(VTTBR_EL2);
>   
>       _show_registers(regs, &ctxt, guest_mode(regs), current);
>   }
> @@ -954,9 +965,11 @@ void vcpu_show_registers(const struct vcpu *v)
>   {
>       struct reg_ctxt ctxt;
>       ctxt.sctlr_el1 = v->arch.sctlr;
> +#ifdef CONFIG_MMU
>       ctxt.tcr_el1 = v->arch.ttbcr;
>       ctxt.ttbr0_el1 = v->arch.ttbr0;
>       ctxt.ttbr1_el1 = v->arch.ttbr1;
> +#endif
>   #ifdef CONFIG_ARM_32
>       ctxt.dfar = v->arch.dfar;
>       ctxt.ifar = v->arch.ifar;


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 05:53:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 05:53:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602018.938357 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgfHp-00024q-Tl; Thu, 14 Sep 2023 05:53:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602018.938357; Thu, 14 Sep 2023 05:53:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgfHp-00024j-R1; Thu, 14 Sep 2023 05:53:09 +0000
Received: by outflank-mailman (input) for mailman id 602018;
 Thu, 14 Sep 2023 05:53:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgfHo-0001sN-1v
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 05:53:08 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2080.outbound.protection.outlook.com [40.107.7.80])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f9a584f6-52c2-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 07:53:06 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9286.eurprd04.prod.outlook.com (2603:10a6:20b:4de::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Thu, 14 Sep
 2023 05:52:36 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 05:52:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f9a584f6-52c2-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LUibiN2AyM8CzKvQiTIdqqtH+ivphPzYgMQlBldFEAA9RV85YLy9+5Z/U+Y6X5q61D8b7o/klKhUl37oUli/UWJXWirtfHkiaHpmzb68MrUuXuRbaQxjE3ybCe7CxyiHYkzq9pUupx6h8ye1R7J9Jpdf9AmXDZJ7hT3fzAy2vuB/75yq/1UBfSMUY/62F6O1ShRkg3AV1g/ZJQZliGUSQx7QkAHE3h18Y7OwWE1aI3420AIc/urIpLV+sS6Fu+AILgtmqTtLVSzONt0owpJ4vAbZhb4aTB/qw/sKzf9p5Vex29aBZKnlFWqf19gKER/NtxdKMyf93udBuZmjb4qx5w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8TshV7qkK5PbQOKMr5yQOGzXQVZg3xiYFi0agUAFp6Q=;
 b=Qi40jKyd2yfnTYFhf8qH71EeQUBA0rt8vOZiTaDbq0hYCJZLo+Rm7J0a2atLPIViE973wRewfqTozEWHHPk5MkUXJ7YiGWRdg2V0GmQhwn/zExPQhyrcNfQzGuIq0wV3+Qair2r6t7hvd+M2Bt4J+f0KF5nqa9FHPjVURqqP29Ug1w7HX+Km/8OZQO0RQDikWzxrz2ucM0BHTnfirybLL/uCtmgXR4cCEMG6jvpOjqx6/WJLp9uEOZ/Ed5dciNPBIfzQ850Wp6Avo7uhkNkG5BC5BbYtxGpM3julCAdvvr+kWxCg3QBJz16UDm2JQM4GktunXJh//tmiZRCSwGEIdg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8TshV7qkK5PbQOKMr5yQOGzXQVZg3xiYFi0agUAFp6Q=;
 b=Yn3svyWhs8YAlRHeu2z7QtrhwCrPK4bG/+V+bbxM+EPutFqoUCfXYBPKFXsh6jXPpkvFnZzKfAQzKU19qQ0P1fsas5IJyFHQV/Rmsx9JUhDd2sf75OfQ55QalwMBLpUrNRNGGCcQfXHSDMjnKWnzhYHIvJyxdYJKqV+MeR/FAzVvlHyDFqBdHhMyt5JfY9QezlrS9j3haySg34PyjMKg4AmmzlYx/LU1GT9xR4+5mTqYShyyp4PJ5uUh++x5uX4BIe0HNklH3kdpNh61r00YXu0usBGZ9oPIHQyUA4eazG/M+POuGGF6ZZr810m3Yij7d4/MDi62Idf4FToswEMdew==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e2fe16de-cb08-4a0b-adfe-95da6c86ea16@suse.com>
Date: Thu, 14 Sep 2023 07:52:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2] x86/amd: do not expose HWCR.TscFreqSel to guests
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Sol=c3=a8ne_Rapenne?= <solene@openbsd.org>,
 xen-devel@lists.xenproject.org
References: <20230913145220.11334-1-roger.pau@citrix.com>
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230913145220.11334-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0128.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b9::17) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS1PR04MB9286:EE_
X-MS-Office365-Filtering-Correlation-Id: 6dd6b050-f440-4e09-683e-08dbb4e6cc1f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hGv89SaiiXwDjJJtHjgpZNvAkmS/t0YPXUe5Ym9jRB0OqcUunZs7BGuLD0IJb/nzviZ+QqYF+aYDtyRo8uDKbGceXdRLPkpI5GLQ811CpcUdDx7aef8BuDUJJvCf/H4bwVeednetabCsGBg/gPef/nD0NrLmc7F8VeReBm7YoeGAdtzttLYcQBZXCde69u5BT0mEX/QTbyDX60I5dGep9BHKojSbC4r2Extk2d5mGDUxXN5ZLU6OU0D2b6w1hqRZalV6RArjEmudmHK0JUtQatmnifZhsJ/BJ50irzWV21NUVE8zhXMfUNVci1i4SdQxBPVb3wjvqmRux6AFg5cdpPCUCN/rsZswj8patSURasj+OgDVmoCVdHnY+/pNf3fmNoXrzfmdGS+wYQ1vxU9QlvGjrWMDADvyChVCvaA1HAd1lSHTf7FPawud7zRmNslEBa+LBEzvX3/GwFgcQpaBDioPvUezqM+UaosSsv9KSGgV7X0C6bqF2fPy62BzadklUZp1W1Kgae9/wLV4NeEm8Buomxfq7zw9A4P7WttJwBn3TJVQefjKmt8+2il/TDPf0ZyYoj282ko80meUt1p+Tx/eNYUrSwbYvOSOsxzyYbcZf6oIojBC63pnRChNqIwPm5H9ZHZksLd0SvzyCu+sYQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(136003)(346002)(366004)(396003)(451199024)(186009)(1800799009)(38100700002)(86362001)(36756003)(31696002)(31686004)(478600001)(316002)(6666004)(6506007)(6486002)(53546011)(966005)(5660300002)(4326008)(54906003)(66556008)(6512007)(83380400001)(26005)(66946007)(66574015)(8676002)(6916009)(41300700001)(2906002)(66476007)(8936002)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aU81YmIvOWtlUzhjZWlXSmYzcDNoTWh2NDRiUzI2ZCtlbEtPcFZjU0c2SmtN?=
 =?utf-8?B?cWx1aS93Zys0cjhjOTFlYThQeWxUNklHTzRaaGx6ek1lVUx0M3pNQVplMUph?=
 =?utf-8?B?Wms4MjNoM3k4eldDSUlZUjlQZ0dKNHhNS2xHWkFaNHFIR1lYcDMzZ1FNN21H?=
 =?utf-8?B?UHBFUU1ZN3JCekNiR2IzY25tQWZXN1ZkZEhSZkZoZ2o1aGVsdW5iMmZydDVL?=
 =?utf-8?B?YXJrRXNwQXI3N0wwZFZacFFCZzJSQ2xrTHpvdjJLTzd6VG5Lazl4ejdpbXk1?=
 =?utf-8?B?cEtJQ1hnclhOQmVjV3V5UGp6RWNpWVBxRTJGOEZXWk1FblBLL3BmcTgyQzdD?=
 =?utf-8?B?Skc2djNFUExCSFNLUnB3N1pUeFk0a0c0TDR3VTdsc3hZOEV2Q01nb2lTRWkz?=
 =?utf-8?B?ZmlucjhjdVdKZlB5TjZaQklRV1lweHJDbGpYSVFDN2F6d0ZPbWRZbC9rQXA3?=
 =?utf-8?B?MU5uSmlrcXprYmNURTN0ZU5OazVXL1p2Z2pGMGxpODY0aXFrUzcwQUhhUU85?=
 =?utf-8?B?VTdTM015V0ZvTXRrUkxYTThWeWRGTEV2SVRDOW5JcnllMFJhcjhOU1BTSG0y?=
 =?utf-8?B?SVdNQlhMaUwwc0ZXUEFJYzRzTnV2UWw5L0xpb1ZsMDNZU2MyVWkwQmxzNG5y?=
 =?utf-8?B?ZUVFd2JlNVEvbkNxSitLQksxNFhGd2h0RHdZckhxVnVBME9uRGZCMktqNnlK?=
 =?utf-8?B?WE5hS2h6amdyTDhkOTFFMERkZS8zUkJ3ME82K0lWRDZvVnE4RWRseDNmOVNt?=
 =?utf-8?B?dEsrYmMzM3ZpY0ZEdGRKL3N4NVZQU255bVV5M08rUmlqS3Vwck9UZ1pXUTY4?=
 =?utf-8?B?dkxlRDh6L3FpVXZka2dTNkFYbEo5RkZPbkNpSHBZYUpPOUR3Vy9Yei9WKzA5?=
 =?utf-8?B?QXNlZjUxQmJWQUpUTUkyMFNESllUMlQxQXJ5UHc2MkxHcWtZM3BTbnIzU2dy?=
 =?utf-8?B?RjROVk5GU01zRy9jRHNsNzdWT1pjSC9aT2UvVTlldXV2ejVvSlBRZ21GaGpI?=
 =?utf-8?B?SGlPZ3A5cnd0eEtHOGpZUFdndnFtSnd4dG1oMzgxeTZsMVlMdStvajY5ZTVD?=
 =?utf-8?B?QUFYbG13c2NGMnd2emRKeG43T0E3dHpJejJnYXFTdkFRdWRoRXVyUWcrN0h1?=
 =?utf-8?B?YWFvQVlObDl3VmtrU3dsR1N6bzJaQW8yZEtZT08wZEVkbjJ6c3RqNHdLZkNP?=
 =?utf-8?B?MjQrdGpPODNCcFlpaEc4aWxaU09iQlR6T3NJVmlVUE8xR2xVcVZnTWRaNy8w?=
 =?utf-8?B?bVV5T0JYS0pjcWU5cUIwSkdLaHhsdERvcnNMbUdtbDJBTE1OWmQ2aDFCOEcv?=
 =?utf-8?B?MVJLRkZMb2RSYVkvYTdsaHJIdlpwdDlDV3pYVnVXNXd6K2RxeDhsa09mM2Z3?=
 =?utf-8?B?K1RvQnRCbFlzdStVam5sUmZSTVQ1TmE5eURZRUJBSHB3cnhLd0ovTWhKTDk2?=
 =?utf-8?B?eXVjVFJjcy9RNUExa3lSREVEL21VZkpVcUJyQXdFQzkycXFSZVU0K1Y0NGFn?=
 =?utf-8?B?MDZPNWhSSXdscTZmRmFJOCsrTkxOSlFIb3hzUmZBbTl1OHhlZFJ3MTRoWjd4?=
 =?utf-8?B?NVNSNVU3d1hnRFpEbG5CTUM0UlJBTnNhMXIwbEk3NkU0Mm1Fb2trL3J5dXNy?=
 =?utf-8?B?cDRYd2xDTERFbDJVV2JXQzZUaXBHR3dMOWFaV0lUTWFhdXFBdCtSd2UvMlk3?=
 =?utf-8?B?R3M3ZEQvOXhIdnQrWlZKSkFweTllVUFOdzNQYjlTcUZ4bi93ZW43NUVBOWdp?=
 =?utf-8?B?NVZTZXlmblViNWVCMHZOWUhBUGVzVTEvNWhicXRqcHRRN0RHOURDWGFkeXFz?=
 =?utf-8?B?OStiWGpmbW9Galk3TFVaZjBDQ2U1b29jYzJ1dEYvYk1BbFFaUXdiS2xkbVBx?=
 =?utf-8?B?Mmpnc3NyblZUdkZyZDJaTTNLL1c2TC9WRXkrVHZ0V0FobUlabDA5MjVKUVhl?=
 =?utf-8?B?Sm1KOWxNY1pFUG5MUWFsZWZMelpzMXZNOFVlUWJPMXk4MjNNdGZqUzJlK3Z6?=
 =?utf-8?B?dldpQk5mUzB4ajE2YVl5ZUNyQ1RYVkRVUHhkbDVDbUVMRW95SVo5MFU4bkRK?=
 =?utf-8?B?VFIyR3FhdlBPS24rd3AwRGM4eUFQNFVXSzM3MDFlMjNvdE5weDNDakxRamYx?=
 =?utf-8?Q?LGyV5boHebvamf0H8rsLUJRUP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6dd6b050-f440-4e09-683e-08dbb4e6cc1f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 05:52:36.4557
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0bd5HS95tevioJh0eP6E98PwP+vGkR/dM+nly+Q7NsuvIl1pLYy91rLGPe0osPPZKSpCaSiUT9POSrbjktmJ/g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9286

On 13.09.2023 16:52, Roger Pau Monne wrote:
> OpenBSD 7.3 will unconditionally access HWCR if the TSC is reported as
> Invariant, and it will then attempt to also unconditionally access PSTATE0 if
> HWCR.TscFreqSel is set (currently the case on Xen).
> 
> The relation between HWCR.TscFreqSel and PSTATE0 is not clearly written down in
> the PPR, but it's natural for OSes to attempt to fetch the P0 frequency if the
> TSC increments at the P0 frequency.
> 
> Exposing PSTATEn (PSTATE0 at least) with all zeroes is not a suitable solution
> because the PstateEn bit is read-write, and OSes could legitimately attempt to
> set PstateEn=1 which Xen couldn't handle.
> 
> In order to fix expose an empty HWCR, which is an architectural MSR and so must
> be accessible.
> 
> Note it was not safe to expose the TscFreqSel bit because it is not
> architectural, and could change meaning between models.

This imo wants (or even needs) extending to address the aspect of then
exposing, on newer families, a r/o bit with the wrong value.

> Reported-by: Solène Rapenne <solene@openbsd.org>
> Link: https://github.com/QubesOS/qubes-issues/issues/8502
> Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

As mentioned before, with this Fixes: tag I think the description
absolutely needs to mention the (changed) view on the Linux log message
that had triggered the original change. It certainly helps here that
Thomas has already signaled agreement to a Linux side change.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 06:02:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 06:02:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602032.938368 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgfR4-0000yY-Qr; Thu, 14 Sep 2023 06:02:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602032.938368; Thu, 14 Sep 2023 06:02:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgfR4-0000yR-N0; Thu, 14 Sep 2023 06:02:42 +0000
Received: by outflank-mailman (input) for mailman id 602032;
 Thu, 14 Sep 2023 06:02:41 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=KyA6=E6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qgfR3-0000yL-U2
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 06:02:41 +0000
Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4f2fdd7d-52c4-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 08:02:39 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id 7BBAE2185C;
 Thu, 14 Sep 2023 06:02:38 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id D58E213580;
 Thu, 14 Sep 2023 06:02:37 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id NLO+Mv2hAmUEWwAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 14 Sep 2023 06:02:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4f2fdd7d-52c4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1694671358; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=UN6sspPIx39466fl+yxO68tXlqE24fawTHIm37vhBn4=;
	b=mpJlx73uIZL2iN/jToOMnMFHb3itmckBlbd98AVqtO/PjC685eTRNtoGXki7SrCtuYG/wl
	KFgBeLmgoOsergPrfZfQXOmFXQ1z8bJydFm5YA5NCOWuZjxxK+6mXGcW9gHW0bak2+SbbE
	73hNUuUUYyvZGa29XszOIaFStQNmoXc=
Message-ID: <48d312f4-50cd-468d-af70-51314796b0d8@suse.com>
Date: Thu, 14 Sep 2023 08:02:37 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-US
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, andrew.cooper3@citrix.com,
 jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <20230914044805.301390-4-xin3.li@intel.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------VvzgLc0ddY8y20w2PeqS1wNo"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------VvzgLc0ddY8y20w2PeqS1wNo
Content-Type: multipart/mixed; boundary="------------OCPddz9Em9L06c0hebIM6Gc4";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, andrew.cooper3@citrix.com,
 jiangshanlai@gmail.com
Message-ID: <48d312f4-50cd-468d-af70-51314796b0d8@suse.com>
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
In-Reply-To: <20230914044805.301390-4-xin3.li@intel.com>

--------------OCPddz9Em9L06c0hebIM6Gc4
Content-Type: multipart/mixed; boundary="------------cb9RlJPV0piuYa8dnn0zZdi9"

--------------cb9RlJPV0piuYa8dnn0zZdi9
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTQuMDkuMjMgMDY6NDcsIFhpbiBMaSB3cm90ZToNCj4gQWRkIGFuIGFsd2F5cyBpbmxp
bmUgQVBJIF9fd3Jtc3JucygpIHRvIGVtYmVkIHRoZSBXUk1TUk5TIGluc3RydWN0aW9uDQo+
IGludG8gdGhlIGNvZGUuDQo+IA0KPiBUZXN0ZWQtYnk6IFNoYW4gS2FuZyA8c2hhbi5rYW5n
QGludGVsLmNvbT4NCj4gU2lnbmVkLW9mZi1ieTogWGluIExpIDx4aW4zLmxpQGludGVsLmNv
bT4NCg0KSW4gb3JkZXIgdG8gYXZvaWQgaGF2aW5nIHRvIGFkZCBwYXJhdmlydCBzdXBwb3J0
IGZvciBXUk1TUk5TIEkgdGhpbmsNCnhlbl9pbml0X2NhcGFiaWxpdGllcygpIHNob3VsZCBn
YWluOg0KDQorCXNldHVwX2NsZWFyX2NwdV9jYXAoWDg2X0ZFQVRVUkVfV1JNU1JOUyk7DQoN
Cg0KSnVlcmdlbg0KDQo+IC0tLQ0KPiAgIGFyY2gveDg2L2luY2x1ZGUvYXNtL21zci5oIHwg
MTggKysrKysrKysrKysrKysrKysrDQo+ICAgMSBmaWxlIGNoYW5nZWQsIDE4IGluc2VydGlv
bnMoKykNCj4gDQo+IGRpZmYgLS1naXQgYS9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9tc3IuaCBi
L2FyY2gveDg2L2luY2x1ZGUvYXNtL21zci5oDQo+IGluZGV4IDY1ZWMxOTY1Y2QyOC4uYzI4
NGZmOWViZTY3IDEwMDY0NA0KPiAtLS0gYS9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9tc3IuaA0K
PiArKysgYi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9tc3IuaA0KPiBAQCAtOTcsNiArOTcsMTkg
QEAgc3RhdGljIF9fYWx3YXlzX2lubGluZSB2b2lkIF9fd3Jtc3IodW5zaWduZWQgaW50IG1z
ciwgdTMyIGxvdywgdTMyIGhpZ2gpDQo+ICAgCQkgICAgIDogOiAiYyIgKG1zciksICJhIihs
b3cpLCAiZCIgKGhpZ2gpIDogIm1lbW9yeSIpOw0KPiAgIH0NCj4gICANCj4gKy8qDQo+ICsg
KiBXUk1TUk5TIGJlaGF2ZXMgZXhhY3RseSBsaWtlIFdSTVNSIHdpdGggdGhlIG9ubHkgZGlm
ZmVyZW5jZSBiZWluZw0KPiArICogdGhhdCBpdCBpcyBub3QgYSBzZXJpYWxpemluZyBpbnN0
cnVjdGlvbiBieSBkZWZhdWx0Lg0KPiArICovDQo+ICtzdGF0aWMgX19hbHdheXNfaW5saW5l
IHZvaWQgX193cm1zcm5zKHUzMiBtc3IsIHUzMiBsb3csIHUzMiBoaWdoKQ0KPiArew0KPiAr
CS8qIEluc3RydWN0aW9uIG9wY29kZSBmb3IgV1JNU1JOUzsgc3VwcG9ydGVkIGluIGJpbnV0
aWxzID49IDIuNDAuICovDQo+ICsJYXNtIHZvbGF0aWxlKCIxOiAuYnl0ZSAweDBmLDB4MDEs
MHhjNlxuIg0KPiArCQkgICAgICIyOlxuIg0KPiArCQkgICAgIF9BU01fRVhUQUJMRV9UWVBF
KDFiLCAyYiwgRVhfVFlQRV9XUk1TUikNCj4gKwkJICAgICA6IDogImMiIChtc3IpLCAiYSIo
bG93KSwgImQiIChoaWdoKSk7DQo+ICt9DQo+ICsNCj4gICAjZGVmaW5lIG5hdGl2ZV9yZG1z
cihtc3IsIHZhbDEsIHZhbDIpCQkJXA0KPiAgIGRvIHsJCQkJCQkJXA0KPiAgIAl1NjQgX192
YWwgPSBfX3JkbXNyKChtc3IpKTsJCQlcDQo+IEBAIC0yOTcsNiArMzEwLDExIEBAIGRvIHsJ
CQkJCQkJXA0KPiAgIA0KPiAgICNlbmRpZgkvKiAhQ09ORklHX1BBUkFWSVJUX1hYTCAqLw0K
PiAgIA0KPiArc3RhdGljIF9fYWx3YXlzX2lubGluZSB2b2lkIHdybXNybnModTMyIG1zciwg
dTY0IHZhbCkNCj4gK3sNCj4gKwlfX3dybXNybnMobXNyLCB2YWwsIHZhbCA+PiAzMik7DQo+
ICt9DQo+ICsNCj4gICAvKg0KPiAgICAqIDY0LWJpdCB2ZXJzaW9uIG9mIHdybXNyX3NhZmUo
KToNCj4gICAgKi8NCg0K
--------------cb9RlJPV0piuYa8dnn0zZdi9
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------cb9RlJPV0piuYa8dnn0zZdi9--

--------------OCPddz9Em9L06c0hebIM6Gc4--

--------------VvzgLc0ddY8y20w2PeqS1wNo
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUCof0FAwAAAAAACgkQsN6d1ii/Ey/Z
Ygf/fFOAgiGHRKwhq+fiBtmitqjuCWlNXY8uP2C+It97gt1yyUr3t1R2km3a7rHjTKgRdMjP4uW3
JWbkKaWAjFGVfodq6EF3h1zPEmGuXuGdQTscEEXjUoebhPeUbggLr5//p5g0BLbQYOn84RFRpVkD
EF0pSEz3DTx8ZA4p+UupIFbUGC4IxJM53COI38mMoplsRcDAbwo+IrTsuK5BGSnmOa3/JKYflJBE
NL6WB9YcFm5atMMlgjkMPIH9lb0eWyrh8PLl1Q+rfx7EcFA7K+q1eoFRcsKJNoX8Ox6CP+sEFBgf
ZzsjTmX/1IFmS3F9Y5Q/hsPnTHQ0SZ4fBgRCKmxv3g==
=d8Tq
-----END PGP SIGNATURE-----

--------------VvzgLc0ddY8y20w2PeqS1wNo--


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 06:03:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 06:03:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602037.938378 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgfRu-0001UR-7D; Thu, 14 Sep 2023 06:03:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602037.938378; Thu, 14 Sep 2023 06:03:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgfRu-0001UK-43; Thu, 14 Sep 2023 06:03:34 +0000
Received: by outflank-mailman (input) for mailman id 602037;
 Thu, 14 Sep 2023 06:03:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=KyA6=E6=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qgfRt-0001Hq-Cn
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 06:03:33 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6e4ecc02-52c4-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 08:03:32 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 324B81F459;
 Thu, 14 Sep 2023 06:03:31 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 95A9A13580;
 Thu, 14 Sep 2023 06:03:30 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id mMkrIjKiAmUEWwAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 14 Sep 2023 06:03:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6e4ecc02-52c4-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1694671411; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=AbPXKEnFzRuQTCi8FnYdSafbWrbCEp1kerREXOMqMZ4=;
	b=pVF5ViAMWMI/oM+FwU4CtVVRvr2OTOWwH9nCt9rmCUBwxeEjn0+FYgB/PBrYdXtDaVuqfb
	tRItoAldZlnJEZx5qRmIrXr5cAOn2fTp7cLqT7cGxW0y6LgyopQ6tsKDHvWmzXvU69N2qY
	7Shgd7++YNkbFF6+qPqogFNO4TEOeF8=
Message-ID: <d98a362d-d806-4458-9473-be5bea254db7@suse.com>
Date: Thu, 14 Sep 2023 08:03:30 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v10 08/38] x86/cpufeatures: Add the cpu feature bit for
 FRED
Content-Language: en-US
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, andrew.cooper3@citrix.com,
 jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-9-xin3.li@intel.com>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <20230914044805.301390-9-xin3.li@intel.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------H14CmzcS2010IVl64ThBu1rA"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------H14CmzcS2010IVl64ThBu1rA
Content-Type: multipart/mixed; boundary="------------33sQNft0m0M1LVqEqR9iUEtK";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, andrew.cooper3@citrix.com,
 jiangshanlai@gmail.com
Message-ID: <d98a362d-d806-4458-9473-be5bea254db7@suse.com>
Subject: Re: [PATCH v10 08/38] x86/cpufeatures: Add the cpu feature bit for
 FRED
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-9-xin3.li@intel.com>
In-Reply-To: <20230914044805.301390-9-xin3.li@intel.com>

--------------33sQNft0m0M1LVqEqR9iUEtK
Content-Type: multipart/mixed; boundary="------------NS2vFGS00A331mW7cQGgqgWq"

--------------NS2vFGS00A331mW7cQGgqgWq
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTQuMDkuMjMgMDY6NDcsIFhpbiBMaSB3cm90ZToNCj4gRnJvbTogIkguIFBldGVyIEFu
dmluIChJbnRlbCkiIDxocGFAenl0b3IuY29tPg0KPiANCj4gQW55IEZSRUQgQ1BVIHdpbGwg
YWx3YXlzIGhhdmUgdGhlIGZvbGxvd2luZyBmZWF0dXJlcyBhcyBpdHMgYmFzZWxpbmU6DQo+
ICAgIDEpIExLR1MsIGxvYWQgYXR0cmlidXRlcyBvZiB0aGUgR1Mgc2VnbWVudCBidXQgdGhl
IGJhc2UgYWRkcmVzcyBpbnRvDQo+ICAgICAgIHRoZSBJQTMyX0tFUk5FTF9HU19CQVNFIE1T
UiBpbnN0ZWFkIG9mIHRoZSBHUyBzZWdtZW504oCZcyBkZXNjcmlwdG9yDQo+ICAgICAgIGNh
Y2hlLg0KPiAgICAyKSBXUk1TUk5TLCBub24tc2VyaWFsaXppbmcgV1JNU1IgZm9yIGZhc3Rl
ciBNU1Igd3JpdGVzLg0KPiANCj4gU2lnbmVkLW9mZi1ieTogSC4gUGV0ZXIgQW52aW4gKElu
dGVsKSA8aHBhQHp5dG9yLmNvbT4NCj4gVGVzdGVkLWJ5OiBTaGFuIEthbmcgPHNoYW4ua2Fu
Z0BpbnRlbC5jb20+DQo+IFNpZ25lZC1vZmYtYnk6IFhpbiBMaSA8eGluMy5saUBpbnRlbC5j
b20+DQoNCkluIG9yZGVyIHRvIGF2b2lkIGhhdmluZyB0byBhZGQgcGFyYXZpcnQgc3VwcG9y
dCBmb3IgRlJFRCBJIHRoaW5rDQp4ZW5faW5pdF9jYXBhYmlsaXRpZXMoKSBzaG91bGQgZ2Fp
bjoNCg0KKyAgICBzZXR1cF9jbGVhcl9jcHVfY2FwKFg4Nl9GRUFUVVJFX0ZSRUQpOw0KDQoN
Ckp1ZXJnZW4NCg0KPiAtLS0NCj4gICBhcmNoL3g4Ni9pbmNsdWRlL2FzbS9jcHVmZWF0dXJl
cy5oICAgICAgIHwgMSArDQo+ICAgYXJjaC94ODYva2VybmVsL2NwdS9jcHVpZC1kZXBzLmMg
ICAgICAgICB8IDIgKysNCj4gICB0b29scy9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9jcHVmZWF0
dXJlcy5oIHwgMSArDQo+ICAgMyBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKykNCj4g
DQo+IGRpZmYgLS1naXQgYS9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9jcHVmZWF0dXJlcy5oIGIv
YXJjaC94ODYvaW5jbHVkZS9hc20vY3B1ZmVhdHVyZXMuaA0KPiBpbmRleCAzMzA4NzZkMzRi
NjguLjU3YWU5M2RjMWU1MiAxMDA2NDQNCj4gLS0tIGEvYXJjaC94ODYvaW5jbHVkZS9hc20v
Y3B1ZmVhdHVyZXMuaA0KPiArKysgYi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9jcHVmZWF0dXJl
cy5oDQo+IEBAIC0zMjEsNiArMzIxLDcgQEANCj4gICAjZGVmaW5lIFg4Nl9GRUFUVVJFX0Za
Uk0JCSgxMiozMisxMCkgLyogIiIgRmFzdCB6ZXJvLWxlbmd0aCBSRVAgTU9WU0IgKi8NCj4g
ICAjZGVmaW5lIFg4Nl9GRUFUVVJFX0ZTUlMJCSgxMiozMisxMSkgLyogIiIgRmFzdCBzaG9y
dCBSRVAgU1RPU0IgKi8NCj4gICAjZGVmaW5lIFg4Nl9GRUFUVVJFX0ZTUkMJCSgxMiozMisx
MikgLyogIiIgRmFzdCBzaG9ydCBSRVAge0NNUFNCLFNDQVNCfSAqLw0KPiArI2RlZmluZSBY
ODZfRkVBVFVSRV9GUkVECQkoMTIqMzIrMTcpIC8qIEZsZXhpYmxlIFJldHVybiBhbmQgRXZl
bnQgRGVsaXZlcnkgKi8NCj4gICAjZGVmaW5lIFg4Nl9GRUFUVVJFX0xLR1MJCSgxMiozMisx
OCkgLyogIiIgTG9hZCAia2VybmVsIiAodXNlcnNwYWNlKSBHUyAqLw0KPiAgICNkZWZpbmUg
WDg2X0ZFQVRVUkVfV1JNU1JOUwkJKDEyKjMyKzE5KSAvKiAiIiBOb24tU2VyaWFsaXppbmcg
V3JpdGUgdG8gTW9kZWwgU3BlY2lmaWMgUmVnaXN0ZXIgaW5zdHJ1Y3Rpb24gKi8NCj4gICAj
ZGVmaW5lIFg4Nl9GRUFUVVJFX0FNWF9GUDE2CQkoMTIqMzIrMjEpIC8qICIiIEFNWCBmcDE2
IFN1cHBvcnQgKi8NCj4gZGlmZiAtLWdpdCBhL2FyY2gveDg2L2tlcm5lbC9jcHUvY3B1aWQt
ZGVwcy5jIGIvYXJjaC94ODYva2VybmVsL2NwdS9jcHVpZC1kZXBzLmMNCj4gaW5kZXggZTQ2
MmMxZDM4MDBhLi5iNzE3NDIwOWQ4NTUgMTAwNjQ0DQo+IC0tLSBhL2FyY2gveDg2L2tlcm5l
bC9jcHUvY3B1aWQtZGVwcy5jDQo+ICsrKyBiL2FyY2gveDg2L2tlcm5lbC9jcHUvY3B1aWQt
ZGVwcy5jDQo+IEBAIC04Miw2ICs4Miw4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgY3B1aWRf
ZGVwIGNwdWlkX2RlcHNbXSA9IHsNCj4gICAJeyBYODZfRkVBVFVSRV9YRkQsCQkJWDg2X0ZF
QVRVUkVfWEdFVEJWMSAgIH0sDQo+ICAgCXsgWDg2X0ZFQVRVUkVfQU1YX1RJTEUsCQkJWDg2
X0ZFQVRVUkVfWEZEICAgICAgIH0sDQo+ICAgCXsgWDg2X0ZFQVRVUkVfU0hTVEssCQkJWDg2
X0ZFQVRVUkVfWFNBVkVTICAgIH0sDQo+ICsJeyBYODZfRkVBVFVSRV9GUkVELAkJCVg4Nl9G
RUFUVVJFX0xLR1MgICAgICB9LA0KPiArCXsgWDg2X0ZFQVRVUkVfRlJFRCwJCQlYODZfRkVB
VFVSRV9XUk1TUk5TICAgfSwNCj4gICAJe30NCj4gICB9Ow0KPiAgIA0KPiBkaWZmIC0tZ2l0
IGEvdG9vbHMvYXJjaC94ODYvaW5jbHVkZS9hc20vY3B1ZmVhdHVyZXMuaCBiL3Rvb2xzL2Fy
Y2gveDg2L2luY2x1ZGUvYXNtL2NwdWZlYXR1cmVzLmgNCj4gaW5kZXggMWI5ZDg2YmE1YmMy
Li4xOGJhYjc5ODdkN2YgMTAwNjQ0DQo+IC0tLSBhL3Rvb2xzL2FyY2gveDg2L2luY2x1ZGUv
YXNtL2NwdWZlYXR1cmVzLmgNCj4gKysrIGIvdG9vbHMvYXJjaC94ODYvaW5jbHVkZS9hc20v
Y3B1ZmVhdHVyZXMuaA0KPiBAQCAtMzE3LDYgKzMxNyw3IEBADQo+ICAgI2RlZmluZSBYODZf
RkVBVFVSRV9GWlJNCQkoMTIqMzIrMTApIC8qICIiIEZhc3QgemVyby1sZW5ndGggUkVQIE1P
VlNCICovDQo+ICAgI2RlZmluZSBYODZfRkVBVFVSRV9GU1JTCQkoMTIqMzIrMTEpIC8qICIi
IEZhc3Qgc2hvcnQgUkVQIFNUT1NCICovDQo+ICAgI2RlZmluZSBYODZfRkVBVFVSRV9GU1JD
CQkoMTIqMzIrMTIpIC8qICIiIEZhc3Qgc2hvcnQgUkVQIHtDTVBTQixTQ0FTQn0gKi8NCj4g
KyNkZWZpbmUgWDg2X0ZFQVRVUkVfRlJFRAkJKDEyKjMyKzE3KSAvKiBGbGV4aWJsZSBSZXR1
cm4gYW5kIEV2ZW50IERlbGl2ZXJ5ICovDQo+ICAgI2RlZmluZSBYODZfRkVBVFVSRV9MS0dT
CQkoMTIqMzIrMTgpIC8qICIiIExvYWQgImtlcm5lbCIgKHVzZXJzcGFjZSkgR1MgKi8NCj4g
ICAjZGVmaW5lIFg4Nl9GRUFUVVJFX1dSTVNSTlMJCSgxMiozMisxOSkgLyogIiIgTm9uLVNl
cmlhbGl6aW5nIFdyaXRlIHRvIE1vZGVsIFNwZWNpZmljIFJlZ2lzdGVyIGluc3RydWN0aW9u
ICovDQo+ICAgI2RlZmluZSBYODZfRkVBVFVSRV9BTVhfRlAxNgkJKDEyKjMyKzIxKSAvKiAi
IiBBTVggZnAxNiBTdXBwb3J0ICovDQoNCg==
--------------NS2vFGS00A331mW7cQGgqgWq
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------NS2vFGS00A331mW7cQGgqgWq--

--------------33sQNft0m0M1LVqEqR9iUEtK--

--------------H14CmzcS2010IVl64ThBu1rA
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUCojIFAwAAAAAACgkQsN6d1ii/Ey+S
oggAjMQEUPqPvWOSM6qiYOAn9aPD2feF/Z/LlVmWkWj0b+fSbgGmFI7EMZlbjfs9XGBRnj7v8xXF
qx7h7xpi7sQ5cvY9/2VpQ6n3pxV8LHFa4TX+g+trEV/TSmye+hBTkh5UawIABFkhI5dkroDY8FmJ
Iq4IC78CksA/Sn+ZLjETJGLCeJ1S2/I34gF3N7Z5MBec2vGdD+4wE5Chi6EJqjBNlZNU+C/vHJSl
ON0q7GZDZO/JYpRC1SnutiunNWsxCpMGF5I5ntl9NgaZXrjjgAUZdbZk/g+GIliIuWgtW8uY2U02
0FVohdSohTonJ2CgyHavYvK9J7MF2B/dvFRDxNMfvg==
=9Ssk
-----END PGP SIGNATURE-----

--------------H14CmzcS2010IVl64ThBu1rA--


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 06:10:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 06:10:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602046.938387 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgfY3-0005RE-RS; Thu, 14 Sep 2023 06:09:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602046.938387; Thu, 14 Sep 2023 06:09:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgfY3-0005R6-Od; Thu, 14 Sep 2023 06:09:55 +0000
Received: by outflank-mailman (input) for mailman id 602046;
 Thu, 14 Sep 2023 06:09:54 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgfY2-0005CH-N7
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 06:09:54 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2061e.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::61e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 524aec01-52c5-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 08:09:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7871.eurprd04.prod.outlook.com (2603:10a6:102:c2::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Thu, 14 Sep
 2023 06:09:50 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 06:09:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 524aec01-52c5-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JP0GegTz4V6VSkM1M0qD7/p6xGap6aazw7EAB92YM6xWtcnC2bUtsBvBXElfSlHBt325F9KJDBz2H/iROxp8ZNC43ka0M8AdnW5TCk6Qs9UmnYkfsk+E12Gag4Dq7sgUFza4GV8NxLqdmcTZMFPDqTKfNZ5cNRTWNLkgBv6boNXEuH3JVWfYieo5AfP0i37WcDgYFk2JHtECZEW/3S2PyPSD0POXzVNe06b2tMZbQDvLOkZHhmAHdYXP6NoQOyylXwB7VZxLp90NLbquIf05u1BM74XvWG5kvXhx/mSxeyH6O0n4L05qsoR77AsZ5FKWwCMqfVBey3faPgZcpAElCQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MEy4IUaf5cUi8IK0G4opsT0gBczRJ/R2VnGDqT/kfVo=;
 b=W7fuyHHTfvJg9BATNmCfI0hyAYWa72n0xPYMj06ZKJBJkeSIIdR3FugWVLMNHCAOBL/f7k9hnDoCLs395/XnKK7YIh3qLbT3JMfCOvesbGjOsfVBKVdPESk3/U38hRZbNyAIxyLbqzMGtyHRo7uiGKLVMuy6AO8dxZL7/UYh7/Ie54QkEE684nyyRYcbapkvjg671/lTgC4JIWhUBINPbEzazRmlrW3Gwb8yWs8gCV9B0kREm/pyHbsCtcWBqLn+NS/JeLu25/4c37yrlVpC4HbROKD/JS6DO0nhKIM+5FZ3mZM43UDREJ36I0ZM5ayKna9Rrsz6n13HZmY6PXxQ9w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MEy4IUaf5cUi8IK0G4opsT0gBczRJ/R2VnGDqT/kfVo=;
 b=d5Y8QqABosnmDze9p4pXnlRmQ2p2+beecoVBrfGVmaRDs9fFRgPSghZt7pUta8VSCQ9mMGMwyB8WPSIK0uUY24SuxZ/HyYoFsv/3YImJaq0ebiGHu5l24TbLMK1ZULuHZVJLKMjkS/dodkBGxSFByNO+H4108Fq9VczD3jBdeoyHQ1nhU6bSeeVYUS1QZl/pWsgK8SIPszDAXl50CT1Y1PTyiDhLfP6XNrnRWLN8so90kvc8ZP/3jn6LdWEJlDC8L+INu0YVDbTBuSWYcFEhyxHWtY6fkWHBGiec03moDnxxhvF2oPTrGBtaoPWbIPbeun+TpiMXMsN0RRVn16JCuQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <77ca8680-02e2-cdaa-a919-61058e2d5245@suse.com>
Date: Thu, 14 Sep 2023 08:09:46 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v10 08/38] x86/cpufeatures: Add the cpu feature bit for
 FRED
Content-Language: en-US
To: Juergen Gross <jgross@suse.com>
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, andrew.cooper3@citrix.com,
 jiangshanlai@gmail.com, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-9-xin3.li@intel.com>
 <d98a362d-d806-4458-9473-be5bea254db7@suse.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d98a362d-d806-4458-9473-be5bea254db7@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0261.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b5::15) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB7871:EE_
X-MS-Office365-Filtering-Correlation-Id: 806d7972-93e4-4ab2-4e95-08dbb4e93449
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KWaEJDUOoRD2yo+953anBmMLZ4WDoPaZ2xIfPS/XzrcXk/umUQti5z6zSPyXvMLCa91RWmtti2UEIS/lmQaT//owF77Z5jANJ1ERwcWgMrKYONESnkK+0oTudEIxcpf0We8Ambu4/hc6G1migmQNsppG+zQ1ifD8OIiYS7nsyK5gkA79dUv6EuYtt1RJuSKJlVVX86VCP2gGH6S5i7vIVikzpP/4PIuPoN18xhcW7GPJ2Yvvc4HSRMbsh3EnrTnidIxgQ6ah7dKaTrd1KunxWyrmNJLRHOIzr+mqOAstmd0CshS+VAiBrq6Dhe7QAHGOnTWrPa8aDKpqowp2ku6JK32/dyPDhrxxBQBBu6kQ22i8UVyUuKFdfl7jTRrFGqbHG+LUFOdyqEJfKdxOwFTrzC3mzFZjOMJ6H6wNRQ3v1rM5fktzxKocBUSFQTQiReDb5LfEEJ/g4S0ypO1mUaX7TsLHS2CraCpbbHik8SBp5aT77iGiprsr0KDqa/jDno5NhuktxJoKRcaBbKfpQJiTME7vBba8CD1aUDQLxtljLwkNGDBkdCMWI/w5iJmSxrZgoio55PEZwhtXqz+ZST6O7Qzp+EMe2+b8ViZGKXruMsJicHtS80/aaw4xmxUJZGd+pGV7I6KXk8N3gepMqWzqNw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(366004)(39860400002)(376002)(346002)(451199024)(186009)(1800799009)(478600001)(31686004)(6666004)(6506007)(53546011)(6512007)(6486002)(38100700002)(31696002)(86362001)(26005)(2616005)(83380400001)(8676002)(6862004)(5660300002)(4326008)(8936002)(6636002)(66476007)(41300700001)(37006003)(316002)(2906002)(66556008)(7416002)(4744005)(36756003)(66946007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UjBvTi9Ja2pMK1M2bUlCeC9qdk8vbkF4Qm4vK0UxelI3TXlmazhUTHQ1blY5?=
 =?utf-8?B?bjB2dmR5SklaN3RVaDRMcmpDeXB2My9SSzNYSEtxZFNvV29Cb1FRRWg0bjhY?=
 =?utf-8?B?dmU2WlZFTncyVTdmSkR6VUgzTjdaNEo1OVdMSFhhaVYzSTB2N3hqRUp0dmJq?=
 =?utf-8?B?dGVNN29oSms3ZSsycmtsMG5jbnZhS2MwVEVOZnB4YkhqeDM3L2pFNGRTSjhX?=
 =?utf-8?B?UElibDRtTGxVWkpyRkh5UUlRUU1JK0dMclNLVVRrWGhVQmxjSzlYUlNPWEEz?=
 =?utf-8?B?T1ZEd1c1RUpkWWZWamVQLzNMT1ZMQ3A5M2FDbjdaKzJXM1AvNGxLZXBiZWE1?=
 =?utf-8?B?dXE2cHF1SENsTFA5VmNiQnJxeE5hNmxrTlhtYks3SjJqYkpwS3NOUmdORURh?=
 =?utf-8?B?bWZBbVpXbEw1VXNSelRnV1JuUnFjei8xUDBDYURsU1JydE5jWXRoam5KSXdP?=
 =?utf-8?B?S0puTDlmNHhseTNCaWRuOUZqbGV5YUQ2ZzlWVmY1aUJGK1d5U1VCVnlaY0to?=
 =?utf-8?B?RWVrSnhNTC9FUHhvc3VQWWVUVXJLZlMvaXJOWTdFTzV2MTVXL1lGMGZkM0Nu?=
 =?utf-8?B?d3QzUUhQK1J2cjRheGpjRDFlWlY5NXVYSUxLdHZJOURMa1BNbUsvY0dTQ3py?=
 =?utf-8?B?UmJEMDJwQXdHaXdzZ0U3ZW8vVVV3NjR6am4ybDA1VUNsZzNDaE0zQm15V3Rl?=
 =?utf-8?B?dURYWHFQQTBDb0tTb3NsSzdpVVZjYXFXcHJiOE5wc1NKN3VqUnJDR2tvUXJY?=
 =?utf-8?B?SElPZGFQOVdSQmQrODVQRmZBV2V5WHJaSnNJUjRiWDB2cjVOelZibGdDMEIv?=
 =?utf-8?B?eXN0aWs0dGoxdHIwaGlrRVhtOVV4NE9ObmNWeU9PTHhPUGR6UHN1dmtUdjJD?=
 =?utf-8?B?V3NlQ2NrL0lZNGJEMkpmTVdwekZ0RmQzSFdHUVdqR09MUFZEVk02WlF4Q0xo?=
 =?utf-8?B?ZTFCMW1lbHVTdWtKODBiUTEycGt5UUFJVU9obkdGejd5S1MrQlNPcG5hbndv?=
 =?utf-8?B?RlZ2ZThtb3J3cWlDNzl0N1RBTHB3R3kxektlYUFvclZ0UmpIQnR5TEVqdHh2?=
 =?utf-8?B?VGNRaUxtSmxmZHVZM3VXcklYR2VTR3FpbU43RVg2NEZROEpaNFFQNWRXSUNp?=
 =?utf-8?B?b3JsQU5ST0dHZVVpeWdYYzJKZDhPV3c0Q3ZrdFFoQmQvWkZMNW1FWmFkMWQ0?=
 =?utf-8?B?ZGFpbzhtOHVPdWJHVUszMVNFTDIvbW1SblZaN3lRMENZdmJYM2xMRnY3TnRI?=
 =?utf-8?B?K1VKQUxtTGJzSWdNSWJybGYwbFFsdEhIQzkxOWw3cTE5VE1YQklkeDhjaE5v?=
 =?utf-8?B?dkV3bGh0QzRxZUhPaWUyQ2ZxZkliT2RsM3pIQVBnb09MNmlpcVZSSXl6UzhV?=
 =?utf-8?B?MnpUOG9QeVVsRWtQRFFvUTRWVEdvNXRIZmlJZkdTYWs2am5IVVhWYi92bk45?=
 =?utf-8?B?eXIyTFU3Q1hzTGtXa21TdkppVGtjSDQzcHpsd3dtMC93TE4xaDV4Z05FVUVl?=
 =?utf-8?B?QlBScWNwckxLQVQ3S0FmT3JiM1dwUEl1T1BjZ3lhMFRXai81b0hQTlZPOVZm?=
 =?utf-8?B?SmsydjZoMVVoRnF2clhuZ1A3clk0czZmNDIwOUdwVVBSZ215UWZJTmZIVDVn?=
 =?utf-8?B?K1I1N2wyeFgrWERSc21temU0MW5QS2ptTzJXZGVoV0dPdVRDNkdZNEVzbG80?=
 =?utf-8?B?U3RZYWwyeElvdVQ2T2ZKcXM0dyt3VFUwRHdHSHZrOWswbzV4Y0kyRWhFRjk4?=
 =?utf-8?B?S0JnTS9pUmZZSkM4NjJRSzU5VktLMThCajk5VXZZTGNwK1JlSDhxeVI0TUo5?=
 =?utf-8?B?RnhHRlR0c0hBYmw0OUdldFlXN29Lc0xaWGxjZFFrWnBrRkdneHA5OWUreGdk?=
 =?utf-8?B?UHlKSE0vYTVycWZnS0hJWVc4a1EwUGkvU3BueU9BUWc0bWFmaDRDVjF5V0Mx?=
 =?utf-8?B?WStCN1JTellrb3EyY3c1Q2kzVVIwS2F4SmJmU0gzcVFYeEVjZDlzc1k0ZkhU?=
 =?utf-8?B?R3l2aDIrbFVSQ3pDUnFrUHI0U1dOemlYVnU2dW9qQnhvUjN0TytxaGZ0ZlF6?=
 =?utf-8?B?MmpxRTJrVlFQOWFVNm9mekZqazNzc2pFZ1VMTnVLTDJLeHF2WVg4dmx1T24v?=
 =?utf-8?Q?53FhIdYCMZcIQOduW3exKBz4O?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 806d7972-93e4-4ab2-4e95-08dbb4e93449
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 06:09:50.1963
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: BCLw+CAFW1aJcU55mlZhikd/VPGevQAhTJlQ27gFTAGyd6fa7md5ugy3nz5mrsfoT7ss/+annV760dKj50+lWA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7871

On 14.09.2023 08:03, Juergen Gross wrote:
> On 14.09.23 06:47, Xin Li wrote:
>> From: "H. Peter Anvin (Intel)" <hpa@zytor.com>
>>
>> Any FRED CPU will always have the following features as its baseline:
>>    1) LKGS, load attributes of the GS segment but the base address into
>>       the IA32_KERNEL_GS_BASE MSR instead of the GS segment’s descriptor
>>       cache.
>>    2) WRMSRNS, non-serializing WRMSR for faster MSR writes.
>>
>> Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
>> Tested-by: Shan Kang <shan.kang@intel.com>
>> Signed-off-by: Xin Li <xin3.li@intel.com>
> 
> In order to avoid having to add paravirt support for FRED I think
> xen_init_capabilities() should gain:
> 
> +    setup_clear_cpu_cap(X86_FEATURE_FRED);

I don't view it as very likely that Xen would expose FRED to PV guests
(Andrew?), at which point such a precaution may not be necessary.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 06:17:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 06:17:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602050.938398 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgff7-0002xP-HG; Thu, 14 Sep 2023 06:17:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602050.938398; Thu, 14 Sep 2023 06:17:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgff7-0002xI-Eh; Thu, 14 Sep 2023 06:17:13 +0000
Received: by outflank-mailman (input) for mailman id 602050;
 Thu, 14 Sep 2023 06:17:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgff6-0002xC-1g
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 06:17:12 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20602.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::602])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 56839612-52c6-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 08:17:10 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB7133.eurprd04.prod.outlook.com (2603:10a6:800:126::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Thu, 14 Sep
 2023 06:17:06 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 06:17:06 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 56839612-52c6-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MsTo/8Uz3SYJKTkRCl6rQCIjuR9FdWtrXKrrKQMVvT4OG15XQYDnytCM/pJ0ySFhdRx/oXHB0GShHRzBHGB7DCwc8qOICu2yEdnR8gCkqI+URyxPNj4Lvl2qYFaWIcGr38+SV8FJaaaXMa9Ka9y9xlMUQ5IrllAKpF6dpQ7uOyFmYWBBerOz2s4G4DMAWhqlt6IazOOSv/mMjGO0BT39UvMHq1NkScDEnoXdxJ8tv5EJKB19PFf7y8q3iw1j/zpf/v+6wl+QfJCLxEHWhZDATh2f+lY/37sYkpgs9qAOxcnx0RUR4Z7ZGZlnIfxfdOuaqkZzsWYFba7/1mQu+sUdOQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CCWY16LZ9szYfxyEFTv2gL0s6+BdULHoi9aOvCMqcsE=;
 b=Q/k9fNXx9ui8Zm3oquOtlGHM94sRPYekjQEPy6LcwQNNzI7gsnzFF9+sljxGLarYL3hgWuPLP/MM+4iaEzysGqV2GLP1II0bamjGUE4/v/bQ4pbZVtqe+xnfW6D0AFc/OKqBRQCC1/BO551jmglmjnzmoF79ujUhPv11bErpqMGDGny9G61EyaDOxlmCU6/CsGRSuMXlfuKdkW1tf+9ZfWBu7eRk9EAArnAYaYrz1vMQom2EoQresO0UO2jnf5fuwWcKZ8HElZEyBCrOQjufK5+LKzcBy7wvv9Nbj8FkOkz9oN3T5DoyC2AGPAYE0Ya5R6KsEYV9HQK0xoyjE7/TnQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CCWY16LZ9szYfxyEFTv2gL0s6+BdULHoi9aOvCMqcsE=;
 b=cDmdK7FpwRA02Ky3ugQYzs7AuA6srJBUNejzZVp3VoTY3/Ax6itQ1dff5tI6DDLrB5DdQNwSLLeiWPqjsch7Cb2EiJgxoGOWK9H/9b1+MqsT+cTxuY1ECiPcBCFtHQiYQSvciGO16ci9E6g5zCGlmx3wShcq/1COJPJglvm/3iSqCXa75V8ZMGbCEezgzcWfpKo0AhpvlTQsjjUxA0ondDrSI+PnQOsPaki9dQ72FHFC0VVnp2jF6oxl/dFjQN+GHzVebevbzZkF3c7FFOlUAn/SiGMaau97Dgl8B1zd+EpfaWs19Nd/VQUiTaV2BU89HKvUO5LFtext/UexCPdmVA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <412b4c0f-e947-1a3f-9e81-d00a13aa440b@suse.com>
Date: Thu, 14 Sep 2023 08:17:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] docs/misra: accept 11.7 and 11.8
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com, julien@xen.org,
 george.dunlap@citrix.com, bertrand.marquis@arm.com,
 roberto.bagnara@bugseng.com, nicola.vetrini@bugseng.com,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 xen-devel@lists.xenproject.org
References: <20230913231617.2638735-1-sstabellini@kernel.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230913231617.2638735-1-sstabellini@kernel.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0038.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:92::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB7133:EE_
X-MS-Office365-Filtering-Correlation-Id: 6c350d96-a09f-4bff-2aff-08dbb4ea3865
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	nbpf8/BztynhGFJYvkUwFbJJUvnF5Lw+O6/kCyTML+VXR0DtpmBc7obySUrjoGCOeGC4HATk/JpifkZ35ZTkUALbOFsEc2LzufTh+5PrIUDAkR0DVeTQiDX0wXHUKS8vRhwXPFIgADYV+UVebyp0dv5O4ceR8WE905KC7HQsDKzV0DXtUDLRW7zjUwJUdKXCPD2uzVATNljpHt9K/Jsm5u5Pn0rfZp8yw0wjNLj1uTJ4UOGirQBBkRggPj472hsie9XX7Jzw/oysPLNH2Qbfqmpn+rqap5YHJ/6BMnmjPZKAM/tTX+mgfjNjWrSULU0iRU9ESe52nC6ztzr5v+NFQducLM2azWqiCQJooNb+QwINP06pOMw/pfY7ob5GL35HamkZuWzVZjPONsF7WU7qxDduQUtCXU3Xwster2xnLtRdeW0u7p2Qln0SOnvtA5dkuu8YPz/PjoMuj1kR5hrEM4xiHJd6hLl2qSCm8VPgMa9+MoSSYVUfOfc3piMawTmVYJXpkPHz3mzijSIcnKxvlI3zZJb4XP4zkjEtCRMB4SrjNDGPoXW4mEuSEB5/TEPyrytOohhzCq57Hrp6LWYcs0cFoqe4Bh+MBmRLhK9jNH7uu3hzrMXaM4f/RDUDxaAm48F2fNDohW0IvXVgwQ8dLA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39850400004)(376002)(346002)(136003)(366004)(396003)(451199024)(186009)(1800799009)(4744005)(2906002)(7416002)(5660300002)(8676002)(8936002)(41300700001)(4326008)(31686004)(66556008)(66476007)(6916009)(26005)(66946007)(36756003)(316002)(2616005)(478600001)(6506007)(53546011)(6666004)(6486002)(6512007)(31696002)(38100700002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Q1FFdlJ5TUtkbHVIbzN4NlFYeG5yN2lEbXpteTlURm54Ync3K3FSejlEZG5S?=
 =?utf-8?B?dU1YdmtNMThlY2R3Ri9hdlc2Yk1EbXNWSTBsQjd3Zzh4c2Y2Zk9TWXBZRVVu?=
 =?utf-8?B?WVVwYVR6bFU3ODRXdEFyY1ZzZkc3QnFvUnFoalZQZXJ3SWVkaitsTjBJL1kv?=
 =?utf-8?B?N2t3Q1VvbEFHRXpDaTI0VitETE5mNTNxQXF3Q1pvdGZwa2dpOTBUNVBXanZi?=
 =?utf-8?B?VlFESDBaY1BjdjVVbFJyMEVpUVJTRTJmMEpuMWRqMzFxK2NJb3pGWGxtb1A3?=
 =?utf-8?B?Vm82d0gxdmRPWEhHMDZ2QlZzUUxlZlZJR0VJVmtHQ0VGWTg0am9YN3F4NHU0?=
 =?utf-8?B?YVhQeXo1RW1Zemx6UndBUWFoV1RPR2xFWE1XK052cmVPdkMzcVdUTjY2Wlp6?=
 =?utf-8?B?OTZUSTY1NU9JclFPdWM2TFRxamh2eExjbXF6M0JKSkltWk1rLzdZVW8wSDh2?=
 =?utf-8?B?U2tpd1V0Q0lQTmxJN3A1YS9WSnRnTlo1QjF6cE1CcDhGREhTUGpMSjNFNWlR?=
 =?utf-8?B?cmJjUFBtM3p5R0xDaFhPYWNnR3liUnhoMHFIdHZER3lLUGtmMy9MSnBpZVhw?=
 =?utf-8?B?UXd2SVpJVXpnNTZ2T3p3SkpLYW93RHpkTENkKzkyNjg5UkhqNEF2Rm9zNDNk?=
 =?utf-8?B?WGVoTlVBdGg4T2JSZmtDUVlSeVBZTVc4aEsxOUxzRjBBcU5lY3NpcjFXaURq?=
 =?utf-8?B?OG5PbHpTdVN2bzFFcjZxOFVNNFp4dVBSSVdyU2tmS25KdkRUbU0rY0Eycy9o?=
 =?utf-8?B?cGI5YkZiODQ0OG4zMlUxZ1lhTW96cWg5YkxjUHBZdk1JN05LQ1ZyTnVoV25H?=
 =?utf-8?B?dVRKSTd4a0p0aHV6Y0wyUlRPeVN4Q2xrQjlLNmR1VkFNeFRQZkN0NTBITUVy?=
 =?utf-8?B?SkVldEFkckh4VGNseTRoTC9zVDZlT0tnUXd2N00vOThodWIyd29wMktIMW9P?=
 =?utf-8?B?bXZ6T0piQzYvRE9TZ1dYa050NG1ycWMrcDE3Z0h4elJySG56NU9OTnIvK3Bs?=
 =?utf-8?B?bjRoYWVJTGpraWdKOXJYMUp4cmFOeUdDSGNxY09HUFhwWGNiSm9PYWYreVJ6?=
 =?utf-8?B?Tm11TjVmWHFiMzBhM0krRDAzUzA4V0cwa09vZlZhYnJMR3U2YUV2RVNwc3FJ?=
 =?utf-8?B?dUVWWVJvSWl4M3NVdDhrS3cxeEQ2SEVZdnlIbVZHcElFQXlUcnVOYnBhcmlx?=
 =?utf-8?B?c3Q4c1EwaHdyVk9HU1U1bFFsd3RzRW5zNENVZHRZdmdrR1VDRjdad2QzMHNu?=
 =?utf-8?B?YVZPZDN4UzQ2NldzWlJja040QVIrS21pUU5ySkxhNnpKM29GajVrZnYzWmtF?=
 =?utf-8?B?SHZISGUyaUVnMXN4TmNNY3hhMG5zMXFoSGR4UzhQanB3Um1FbVZWaldZc2pD?=
 =?utf-8?B?NnRLTlZSM1B1TDRCT2FFQ3FOR3RPUXpleWZleXVxY1ROcFdPMWp4Z2ZJbjFh?=
 =?utf-8?B?YlU3SjExZEc1bWF4alZ4TUVrYlNmUmUxb0JNRWtCTjdKTnlzUDFCdUdsUFZF?=
 =?utf-8?B?QkJvZC9ORWp1emR0SHRhNHo4NUFpb2FMREYwNmtsdjNUM3dIV1UzNzViemZa?=
 =?utf-8?B?YndOTGNKRjAyN0QrMXZYTkNiL2tGRFRkSTNnSVNubkFTOS84TDZvSUdtVXY2?=
 =?utf-8?B?bDdPek5XNDh3Q29kbHkrOW1ab1R1OGJYYWtqRkJlWWdiTXFyOWJSQ3RORlVY?=
 =?utf-8?B?aGZuc3k0VFNZSTFuVVZwSnZiTlFnWGEzRU9zNmpVWms0cHJmNnVFUjlxWDdF?=
 =?utf-8?B?WExmVXlBTG5ONWFuWUdPR3F5cVFVWStFeUdZVU9qNERyaGZRM1hsTlZESXVQ?=
 =?utf-8?B?Z0FHZHppR3lMOHA0ZEpQMndkM2s5bjgvNS9qV1lhWW83YWoxR0RNZnVmVXJ0?=
 =?utf-8?B?U1pjcll5TlpWekZiUFdHOU1hNjQ5VGJOZHZiVzU0dVBRWEFZT1BTcWtNaUtW?=
 =?utf-8?B?Z2pXRVphdWFxeGtSOER1a2dnTmpCUFVWZnFjUk8rck9FZWdMNXE5OVBNUnBK?=
 =?utf-8?B?SW9JSWwvYUZ2aVZYUWlsS05Vc3k4TzFyVlJhTVpKUVdwMTFIcWFONXd0VjN2?=
 =?utf-8?B?NVJQSlNRcHRkWDB1SGhPRVptM2hZeGdUYm9ubmt6UXBXZGRySCtqMjh1Ymh6?=
 =?utf-8?Q?hETQHDSiERZEN0EFSei82iSeQ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6c350d96-a09f-4bff-2aff-08dbb4ea3865
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 06:17:06.6216
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: BDsBcg1R+uN4UDQZyYRE7n0LSw4vqhAwRn9fF1Sz+sQsJn87w6i85xijiZ5Jw8ChFWHwVvud0GmiEC3OS+5CjQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7133

On 14.09.2023 01:16, Stefano Stabellini wrote:
> From: Stefano Stabellini <stefano.stabellini@amd.com>
> 
> As per the last MISRA C group discussion, let's accept 11.7 (for which
> we have no violations) and 11.8.
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

Acked-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Thu Sep 14 06:33:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 06:33:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602057.938407 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgfuR-0005Km-Tj; Thu, 14 Sep 2023 06:33:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602057.938407; Thu, 14 Sep 2023 06:33:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgfuR-0005Kf-R5; Thu, 14 Sep 2023 06:33:03 +0000
Received: by outflank-mailman (input) for mailman id 602057;
 Thu, 14 Sep 2023 06:33:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgfuR-0005JH-5n
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 06:33:03 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20627.outbound.protection.outlook.com
 [2a01:111:f400:fe16::627])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8cec0435-52c8-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 08:33:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VE1PR04MB7344.eurprd04.prod.outlook.com (2603:10a6:800:1a1::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 06:32:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 06:32:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8cec0435-52c8-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KcxUnurvx9UABXA6KqtfmaYeA0b5GAPXwhd0xxL492WC+RDj3DH107RLmjNF8u6jlPZRk/zYKQ4+O7iVCA0IYjO4fHDdz2xs4hAd6kr3v+YoHPEUWIZcWRK9E9JxBAoW3QXYt4FtHK9IMtyPn1YpJhFBVGdsY6BivPdZQ0VjhEZMx8YKYExvlNIzucEu4tw83NuPCEsPBsiil1YLNKwxWuYqTysZ8Ftl+hVZGTuLs21iR4He6e2RzL1XMy+jqrWK5got2zdQ1Q3200HP7Lda0GnH5lb3mj44eWvm/UfoQ7/IKZEOwTWQTOIuaNg4/A52OB3ycFOHf3vahZnpvxz8ag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EZgfkgbebb0WuQodGwibDCd5fguaGtt3PRhAHB/noX0=;
 b=l751iv/DZsZZX2hlqwryjVBk6qCVKs1QF0TGbGKO/RDHLZFMfKuVeUTIYe5RBAiAhAbkfwIeAoxJQmK2lGLu9IMOFH52CbmtREtAU8F1rr2WcoggJmjf289WNGIVUyTl6fAwin1uPhbhp5zqPqafcrzr8sS1Ui8pjfju4xt2SB2dffYEE6jzgJ1b/AQxiB9AjimlmnpE7mDzhDeClTdDnxA5b+1Qg5CxGPLjk6E8v0U8wjuGvmQEdNL68q2bhT48dVF5ZqORZaKZQjxO9rXXTYEJ6MZvcCtTwo2MVRhP75O4/7WZAU7TbyXFn3SdMai4elLNfe36bIJTMsZWDlqJtQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EZgfkgbebb0WuQodGwibDCd5fguaGtt3PRhAHB/noX0=;
 b=fZsqgBVMfFw7gFNiDYtBkVS2I0j0GECSv7geC0KA37oRvztt/L24gFMxmDCGhbZ/EKvZh/4oGIBEdqFpkfbPSN6mDvaILuM89/G9iE+cJbERklskf+bH4gLB3pz0OwCNduhrsx9P4oAaOCvUUdSgrUgn7T9dtk2pwKwo+JgzENXLMfRIefwwYafLIwS34oWDDiqkZt/6zVjj7UWlkW7XnLaeDCq82XyMRA1oV35m/rNVHvjpk6wmWiq0sfeyJSWTaHlKSsjRhYIexfmCL2D5okgzL7NxVkqcKQW1QOQCv+x2VgstR+ZgBrtqI1szBEpAKS9NjdSJYqOGYt23oVR1cQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <dfbbf38c-8651-5396-c966-365fe954df48@suse.com>
Date: Thu, 14 Sep 2023 08:32:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent timing
 mode
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
 <e4ab7415-cf72-4c04-93dd-fd393f49f6f5@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <e4ab7415-cf72-4c04-93dd-fd393f49f6f5@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0208.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a5::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VE1PR04MB7344:EE_
X-MS-Office365-Filtering-Correlation-Id: 858e9895-f602-4b1b-2d33-08dbb4ec6f73
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	h6VmipQGLhf98qw06VljAnPPXbGCPmPTw+4BHLlVSzHUkHXE+MfOuqobnE7fSRqCX5PuAVDX9KM6Rvqym9OvCA2C2gcBjIe+clDw/qscaoGj/vQDUm7b6svh+4zbmQ5DRm/SL3T/kaJVibyCcjzi5EpjYLGvwPYVfvu7yjSI/48HUm+TrWMe9G+zRDwjf2WAJFKaYP8RPUjcnfxmhH4UiC1iNeLHBXAGTXYPn2Yo5o8D+fmxtWcvB0CV02lKjiVx5CsZvMK41nyopYYUH0xuOIJyrzXJovTMBLPRYIfiNkLizfH/ry1TYrB982G0mohJ6iBcpS250weO1s9n4j7v/VWKWyWE/Fe7tVWKS/2dNw2FwGO7febrGTdviQlIF25ngCia6V2e3UmBHkwPDRGxckVRkN4VgCtQ+wj5FsBFr7cLSOhKxGDmPRvEjHFco75OWiBe/8BEoTeY+GlR66+u8lq5qv8tolWcIvYaYHWzXwmB3hA/pDAIkjJOZKFmietGvPgEmT8dBfJ7SQQq4a4o+s7h0KUepYAXktd9fYHESPYXpwehCRTx1pVXZi/1+pwu9Z7wFME/KWesG2eTMyLyat+AAOEYd4B93Kbq6u+vq4FFBXa/So4lG43CjgJ2MBYp9TR8PK3BNrFW+v47rH1GhIvlWh8m9xdJfu69z/11EjY=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39850400004)(396003)(346002)(136003)(376002)(366004)(186009)(451199024)(1800799009)(31696002)(86362001)(8936002)(8676002)(4326008)(5660300002)(2906002)(6512007)(36756003)(6506007)(53546011)(6486002)(26005)(2616005)(38100700002)(966005)(478600001)(83380400001)(31686004)(66476007)(41300700001)(6916009)(316002)(54906003)(66946007)(66556008)(60764002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aGVPVTZtQ3B2Y01GS2gwd3JVY1M2ejJyeE1RdGZOYjdoSFJuUVowNzNsWGdC?=
 =?utf-8?B?SUVzd0dCMEljVGVEWWFEeWtNK2JDaHdLQ2NnUHUxeG95bEl6cWcyZU5jc3lo?=
 =?utf-8?B?bDRIZjlock42KyszcGJ6RXJ4Rng3aFZsYVVrSUVpNXZHek1aY2YrQTRueGlj?=
 =?utf-8?B?Y3RDRTl3L0t1ZFpPV1BrL09EVWtKdGtHNmFQWmY3b05mMlY0aElhZXNoaU1Z?=
 =?utf-8?B?OVFLQzgwdlhPb1NhZHR1WGlpK1c5dGk0aEJrdGtScDB0RU14Y1pHSXJLRWFU?=
 =?utf-8?B?Y0pxU0JidjNMbDNMZHpCWHhHb1ZBc0hBV1dqZzZuVVNldXV2cnFZUDBnTjBS?=
 =?utf-8?B?TWxwenlzeGt1VmZXdHEvTGFhUkdoajhVYTQ4blJYSG03OFpwS3pCWXFHZ2FC?=
 =?utf-8?B?akJ3SEt2QVp4TExUVEtSQ3hTZkd0TXE4NVNGQ2t0SjgxZUNQYitaS1BFZ0dV?=
 =?utf-8?B?N2l3Si94d2RaMmVkcm5Za3Y5WS8rckhhdGExL2FlRm5EeTVQSnEvZzdVamF0?=
 =?utf-8?B?QkZiaHdJaFBCK0VJUXRjMVpNcnN0YTZneEZpdktXZHBLK3RCYVdNTVhUV05j?=
 =?utf-8?B?N2ZRbCthK0xVUkVkSHZqQzgrM0F1c3dzVHFVUGRxWHQrRjBqUHM2eFdmY0ND?=
 =?utf-8?B?NHk5VWhJbjllRVJRaUUyRERhNFZPNjNNbnRjUCs2R21RSGJHSjVadFhMTFZ1?=
 =?utf-8?B?MThwY3h0NVRyRDJ0RndTNk9BU3cyNWdtWFgzMlAyRm1DMkFTSDVhTkh4UXF1?=
 =?utf-8?B?OUFTbXJWMTRLaWJaWkVDc3dNby82cUZMUjJLZDJlR05Xb29XMkRsUzAvNXl0?=
 =?utf-8?B?ZDdwelQ5eUZ0bWYxblB1bVFHSFgrZ0U1ekEyMW1laUFSc0JpRllrcHE5bXZk?=
 =?utf-8?B?N0xYN0NUZFhDL3BWL3F2OGNlWnNjbktYT1oxTlQvOEFXdXI2RDRNVEVGajlQ?=
 =?utf-8?B?b3hQclJhTU1QbFFHc24rVHlpQk8wak5pYTliNnpTZWc4UUF0OE02bDRGSWxR?=
 =?utf-8?B?MWUxbzdiS0pxWEVBdnNMQVhrSGdQN09DdjJFRHplVEE4ajM4UDJ1WDlhYUM4?=
 =?utf-8?B?L2g0TG9INGo4dXNuY0pNUVJSV21GenNJb2w2L0w4cm52ampjY21XbGJFQUN4?=
 =?utf-8?B?MWV6b1VINkNibU9hL2I4RUoyeHByTUM0cThIUmhRaGJRd1QzcjNTRHl0Zk92?=
 =?utf-8?B?bHgzWTFOTWZXSC81NjQzVUluaytiT3RzOFpkWkxMa3BvcVc1dlZWVmo3YjVS?=
 =?utf-8?B?TTNyR09BazE5Nnk0QS82N3VQMFB2VFpkN2ZwVDN0ZnNBQXRkc3NEUTNWSjI1?=
 =?utf-8?B?YlRsc2Q2cGQwV21pTTNIUWxNWW1rc2pWSkNFUGNGSkZ3M1gydHBPNGlsN0JR?=
 =?utf-8?B?Sm41MWZ4YktqVkw0R2hvUTlDQ2VibHRzK1RsbUp0WDU4TVBJYU54akNhV2t1?=
 =?utf-8?B?bTI2YTdqV2pzbWlFSStOY2VueENIeDRVdG95MXBySzJ0VHFyK1Flb09pZkg3?=
 =?utf-8?B?T2FrMzFmRm5JMzkxa1RHRFBWMUtwSzlMNHp1WWtiMkt1dkxFMlB5U2pjN2hE?=
 =?utf-8?B?YldOa0VRNzFZZ2k4Y0JKczlzU3pabWt4YXdWeDdCNXZQTjBxbkl1TTMzd0k3?=
 =?utf-8?B?K1U5TGIxVmtNZFJIejVvT0d1QVJ5STBvZjlqVU1VbVFtaTBVT3NHWWxLcDN4?=
 =?utf-8?B?b2hJRVYvMlJ2b3RYYy85bVVSYXFsTkM1d21ISUVQL0daSFNLVEx1L1plWVha?=
 =?utf-8?B?TFhIMlQ5clBOQW5XbDFXTHNOWWVPbHlUcVBUb0pRU0lKajcvT3JRRXgrQjNC?=
 =?utf-8?B?UndFeGpHMEc3ODhRZjhtYTlNMTc3MHcyRERFUnFVczZwZ1dlRzFUVG9wRytt?=
 =?utf-8?B?YzVjU2RTR0lQZm5vTVRwU0F1V2hPcnJOU210K3RxWDR4Y1hwRDlLNm85Ym9w?=
 =?utf-8?B?QVg5emI1Qktid1VXeG1XSGNSalp6THh2Y2thdlZWWVlQZDRPWHdxdlhOSldL?=
 =?utf-8?B?ek8zVjA2RHM3NGttc0QrV3lyaVFML2Y0ck90MEhzUGtuYmpkWFV2cDB3dENC?=
 =?utf-8?B?WDlaY1k1Rksxei95cjZKOW9ZL1d0KzRYTmREWm9CWktrM2o3WFlTRzQ0VGow?=
 =?utf-8?Q?ctVwQONTu9QP4gZhBueMLe4xn?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 858e9895-f602-4b1b-2d33-08dbb4ec6f73
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 06:32:57.9211
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: pDzBubFbCNM900p0qSUkMZJJv/ieVsfMlch0CMJ3Ehcxz8i54vpynadkzq+n6srafu/igqYnbOV7/wgF8ajk8g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7344

On 13.09.2023 19:56, Julien Grall wrote:
> On 11/09/2023 16:01, Jan Beulich wrote:
>> [1] specifies a long list of instructions which are intended to exhibit
>> timing behavior independent of the data they operate on. On certain
>> hardware this independence is optional, controlled by a bit in a new
>> MSR. Provide a command line option to control the mode Xen and its
>> guests are to operate in, with a build time control over the default.
>> Longer term we may want to allow guests to control this.
> 
> If I read correctly the discussion on the previous version. There was 
> some concern with this version of patch. I can't find anything public 
> suggesting that the concerned were dismissed. Do you have any pointer?

Well, I can point to the XenServer patch queue, which since then has
gained a patch of similar (less flexible) functionality (and seeing
the similarity I was puzzled by this patch, which was posted late
for 4.17, not having gone in quite some time ago). This to me
demonstrates that the original concerns were "downgraded". It would
of course still be desirable to have guests control the behavior for
themselves, but that's a more intrusive change left for the future.

Beyond that I guess I need to have Andrew speak for himself.

>> Since Arm64 supposedly also has such a control, put command line option
>> and Kconfig control in common files.
>>
>> [1] https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/best-practices/data-operand-independent-timing-isa-guidance.html
>>
>> Requested-by: Demi Marie Obenour <demi@invisiblethingslab.com>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> This may be viewed as a new feature, and hence be too late for 4.18. It
>> may, however, also be viewed as security relevant, which is why I'd like
>> to propose to at least consider it.
>>
>> Slightly RFC, in particular for whether the Kconfig option should
>> default to Y or N.
> 
> I am not entirely sure. I understand that DIT will help in the 
> cryptographic case but it is not clear to me what is the performance impact.

The entire purpose of the bit is to have a performance impact, slowing
down execution when fastpaths could be taken, but shouldn't to achieve
the named goal. I have no numbers though, and like you I can only go
from what the referenced documentation says.

>> --- a/xen/arch/x86/cpu/common.c
>> +++ b/xen/arch/x86/cpu/common.c
>> @@ -204,6 +204,28 @@ void ctxt_switch_levelling(const struct
>>   		alternative_vcall(ctxt_switch_masking, next);
>>   }
>>   
>> +static void setup_doitm(void)
>> +{
>> +    uint64_t msr;
>> +
>> +    if ( !cpu_has_doitm )
> 
> I am not very familiar with the feature. If it is not present, then can 
> we guarantee that the instructions will be executed in constant time?

_We_ cannot guarantee anything. It is only hardware vendors who can. As a
result I can only again refer you to the referenced documentation. It
claims that without the bit being supported in hardware, an extensive
list of insns is going to expose data operand independent performance.

> If not, I think we should taint Xen and/or print a message if the admin 
> requested to use DIT. This would make clear that the admin is trying to 
> do something that doesn't work.

Tainting Xen on all hardware not exposing the bit would seem entirely
unreasonable to me. If we learned of specific cases where the vendor
promises are broken, we could taint there, sure. I guess that would be
individual XSAs / CVEs then for each instance.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 06:56:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 06:56:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602065.938417 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qggHH-0001JP-OG; Thu, 14 Sep 2023 06:56:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602065.938417; Thu, 14 Sep 2023 06:56:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qggHH-0001JI-LM; Thu, 14 Sep 2023 06:56:39 +0000
Received: by outflank-mailman (input) for mailman id 602065;
 Thu, 14 Sep 2023 06:56:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qggHG-0001JC-Rf
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 06:56:39 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on2062f.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d89fddbc-52cb-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 08:56:36 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7243.eurprd04.prod.outlook.com (2603:10a6:102:8c::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 06:56:34 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 06:56:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d89fddbc-52cb-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=b9n67jp1gflccW+jbZwvO+EmjJjtJsZB46qwb4kbFS682s2xMWWfuHhVaSiTDDioEtB2bq7ZnRvxCmh+y2kKiC4N4H/lVuphBl+nMrI/Db4xq/LXAfZxDTkreMM5WbZgX3pU5VgrRN1A3bxQcsZQMkuOdZHvA4vcs6tK1Oc/B+/2yr4wcPQ7zsXWG383YAHNhB8XJq7mKHwMHLZOemJpjSGzQA24Lx7smGULXg8U8ddVd3+tfdXGdzvyBD7SeQYCUah2Xt8fzH8IhmzOft11RgwKvO2P/vwSh5uiGCv0VpJBui4sL9DJWmwpHGUPWcTIzs9pk9Fu+ghhal8BxC921Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dN0WcmNuDGd6vcXnaMp1yL8fcqCRWiAWE8wrXxrfN+A=;
 b=mPBcP+jdyd4VClKMr6sKzLb0fGxcAduOAaT0IA5PUlasUpqjngJcJD2Q2WtGu6sHaW/ETiIo5ljlJerns5l2yug2IRGNF1/h6fJ9a2F6gPzpIi2NRgMPo0S5eYLPTz7eNDbucufmtgLj8hklhhXt3ot1FQOhNtajZNS18NGxSqN0+j9p8TeO4NYx1hGufc51qV3CgMUZNgqSE7qlxLbvzc3Hfjn1kIAGmClxRDwLSc+skKOLcCTliIkJ9QgHTii7aG9juVK8PS5T461H2HIok05uZfJA/nryzybSANS6SoVyt99kmpXrFwW6k9v+InM1JNGseuiZUD1DvFl0lkGvnw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dN0WcmNuDGd6vcXnaMp1yL8fcqCRWiAWE8wrXxrfN+A=;
 b=XXVSuPNgLsrFaSZ3+9oiyfxcn3zmf5VmImTlXVO3GEf2R/vMwWeCRLhxtaIoJmms+YA3Ab+WQWbaymu2KjvncQ6STUxFH4ls/81FNkxf/7KxlIpzF4iiW8Nyn8SDefJnc1Zpf0q+XFklmX78jMab4VrHAYSxeIob9IdkkD+g83N/ShGH9Mu+kb2pnae1EcNd2RGOEiEa0FYseotR2HIBsS0LeHmu7rHBUzKk1sNrTZTf7sjH5QQM2ysFouVzecPqGe6eQAKMzdyErmiIzKQa9eGhQyovoL0ScclMa3VBv9sVKc9zgnF8qGG9SU8KfltI9cQCRDY43d/IRYJf/7Dxeg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4181dbec-38a4-d0dd-c132-2d23579c36a7@suse.com>
Date: Thu, 14 Sep 2023 08:56:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 1/8] x86/spec-ctrl: Fix confusion between
 SPEC_CTRL_EXIT_TO_XEN{,_IST}
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-2-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230913202758.508225-2-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0188.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a4::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PR3PR04MB7243:EE_
X-MS-Office365-Filtering-Correlation-Id: 97b9f0a2-698e-4c1b-ec1e-08dbb4efbb85
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	SAzoasEuim3lHYGKehGURcpUkjTqB6YWqRgroHyQv+CSAXIcrme9sA00Yp9wEGh6/jihRxYukONSNwpMuQCcId6wk5obiuj3LAp0tTk4GSDBjK1S9pg50vU+ePu3dj/E5Oed2YwYwsGYLz/ZQEaL0jf/2w2LCNJhfbpNKKOroj3QwLqMbX7q8AoQ8dKT1Vx27bxKvpZ4uHP44LZkCzBVytwdLIHinGc/xgZr3mRUxhwDOs/fPSWdrd439jgrWctwmLcMYzcbAuWNLv1VFVF221tE+r3CNwDBfGhO7RNYMJgcqJvX3a74m6STiFKD5OafIaSQbqqvHsxBBgSuhsyXj35SfxF+xzCOA/mtFSYNuIHpAnXdVr+MTFNOvLqkMzvxH8P5jeqk0oWf4JpalujvZRs9obMJ2CP7vHOxNCkl2Pdx4m0f5NtZFTnXkpbaXib+zpv3UKNXXyGgzTGWs2JJmeS4KOT7WSyFOuTguFlT7eQAjxUgzNm9e/L5txJfw6tO9YpFxT5M7L9+yQyzPab7cV9ra5J4sjxvRKrKiXrvRpBH76qJ/y5Q2vZAZD2n15TU5uwSOHo1zjcW+WI4jGPvGNU2WU7urs6fsXHGDR23uA+RODG2OkXoG0NFHCIjCm11eq5/qmYP+pEcNHA8ME6tmg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(376002)(346002)(366004)(396003)(451199024)(1800799009)(186009)(2616005)(8676002)(4326008)(8936002)(26005)(5660300002)(53546011)(6512007)(6666004)(6486002)(6506007)(41300700001)(31686004)(83380400001)(86362001)(2906002)(6916009)(316002)(66556008)(66946007)(31696002)(54906003)(66476007)(36756003)(38100700002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OGFOaS9PeGJlQzVuUlg3MnFtc0FwNEh0bWlscUovWVZkQjNjTi9zV2N4Qjkv?=
 =?utf-8?B?blRrY3Vxa2Z1aGJGVmtiUURMeDdkOENzQXJtSnBIZk9adEt3YVd5K0E3bjVE?=
 =?utf-8?B?VDlaL1VXRWdtUEp2Tmx4bkQ4K3J0MkpqRllRTVJFT0NmS082aXdySXhRNG5N?=
 =?utf-8?B?QXpKZkN5R2VXMEhSd3hkZUJsbk1Rb25kbStMRlhCK21TTVBPMGxYNCt3NW9D?=
 =?utf-8?B?VUhTMGhNZTdOYllTbUR3M09YV2RCNlNsZTdlWUZKaG0xbFY0RzFGU3pFdTZ1?=
 =?utf-8?B?OG5zTytmZ2ZJamNWTnpKWUR3VHI3aHRBazdXZDZRWmtwQjkwQkZOenFjRHpG?=
 =?utf-8?B?QWx4VDFJaXlNNjl4aWlSUGhSOEVhRXhNL0twenBZYmZGTXdDUk1mcHR1VENB?=
 =?utf-8?B?R3h3YjZKU1U0UStRT0FGRGtWTGV4T3JkRUxSYmhvVElRWExUS04xbWQ5Y2U4?=
 =?utf-8?B?bWd6S1M0Zm91dU05YlZHVGFCSmV1Zkd5by85NUtheUZkOUt6THVVVjRRalJ6?=
 =?utf-8?B?d0dXSndiNThHVG1PbXliM2NUVkVMcUNDU0owYVVMT2VvRnN3RVF1YXZ2SEd2?=
 =?utf-8?B?bGxqQ01wdDVqamV0emM4QWJVQm9ZaWV2R3dyYUdhUHRldHF5Tzc4clpmWGEv?=
 =?utf-8?B?aVF3ZXdjMzlKSTFQQ0p4eElIOEQ5NEZ4UTFxNTcrOHc0RFRIWUZkQklzN1Ur?=
 =?utf-8?B?SEZIN05sMlJrbzVRUnlKVVFlUUg3ZTdVallWTFh5V0dzNWp4S0M1N3hrNmxu?=
 =?utf-8?B?b0dqbmhmSUNPMTBLaHlsMm1aQ3g5d05aczlvU2d3eVV4TXNoZHQ4cHlFL2Qy?=
 =?utf-8?B?SVNCbG5xdjZUOFFDZGZyUldQQW1sN3kxemVZbUVyVjBQMnBFUXlyOTJIZWJw?=
 =?utf-8?B?aEtDS1hmbWkxL0U5QWhaM1VwK2g0TGMvUUYxNFhLWlUrM0luY3BUcFZnbDNv?=
 =?utf-8?B?a2VxM0NoVGZiSGFVY3BPTWIxN3hOU205Q2RaNmJWdXVud1d2TlR5U0xFTnBa?=
 =?utf-8?B?ODZBdU9JZVhGTlpOdUtsdWNJNSt0VzErVDhRdWp1TDBncUJYZDNRVVlRWnB4?=
 =?utf-8?B?K20rYXpBcEJ0YXpZU2JxaVl2elZES1p0MmRTbEZMdnp5VjZFUkdSZVBuS2RU?=
 =?utf-8?B?aTBPTzNoanRPYTlyQzRwTVVaQmdkSHkvM1lkNUdtMzNQYnIxMnQ3UlU0L3Ry?=
 =?utf-8?B?dk9VVnRISGRJTVl1c2k2dEJDbTJleWlOVzhaK25nQkJvVW96OWdabi9MMUlJ?=
 =?utf-8?B?QkcyMENIZlhXclc5MHVLYm5PUGJpcGxVbHlMS2FBRmtuN1FLZzJwKzkyVkNm?=
 =?utf-8?B?cDBnZTY0bnR1NGN0amNWbUhDank4elA4V09jVXNlbU5HY2hzYVNqK3h6OG5l?=
 =?utf-8?B?eFBJT1FVcUl0a3hta21vS3kzT25yUmNobU1UZUFBUWpmMjd1c2JXdUNadkVW?=
 =?utf-8?B?UGFHL2I2NWZjUTRJenc2TnJoZEowUWladk03M1BsdnA3SWZvKzBoNG5ZV0pH?=
 =?utf-8?B?czJ1NC9xOHR1WThSWmpBZzZtM1hiVyt6UkVVVlB6Z2s4SWp5cEZ1ZURTeTJB?=
 =?utf-8?B?RkZwdmtCTGdnbE5NTVN6bXozYWo4anhDdG5Ia3FkSHFObjM4WUJiNlIrVWhl?=
 =?utf-8?B?WVlFNStTTDV4Z2U4Z1ZjRGdCdGpGdzVEWDhUWmt1OFh4VDAzaGtPRVhWQjhT?=
 =?utf-8?B?NmdMR3I1MzBzVkxDWXExb3NaOWRGeEliT3lLZXBJVmFiZVRVMEt6VDExR0JT?=
 =?utf-8?B?TnNnZUNqMHBTdHd6VFRoakxEOVFiVU9nbkdpQXQ4Mm5kcEFPRUs2cXBZZ2Jw?=
 =?utf-8?B?cjRCZTBuVDB1a0lDWlVKOWZ4ZWVxS0VzU3pVWVg5bjNhQWNIdEkwaEw4U1pN?=
 =?utf-8?B?QmhEQ21ldVI4QTlVTWxKRklnSWpZU0l5QXl2ZXNxZ0E3Q2JLeVdqMzljMWgv?=
 =?utf-8?B?QlRJK2VKYkdhSWtUc01JblpZUXp4WlRIYlE4MVBEci9ML2k0bDBIajRYVkx3?=
 =?utf-8?B?NVdZQUpGRWJyWmd5Rk5LR0ZCRU1EdlNmeXFYTU85dFFUS1l3T3E4Q2xKckFW?=
 =?utf-8?B?NXl5OHUyUUh5UFRjN3FTYXA4SVNxMTdvZjJUSXdJaE9jUUZkb0d4ZnJ5QjBv?=
 =?utf-8?Q?THU+qJDjrDEzlmxT85k+g9LFB?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 97b9f0a2-698e-4c1b-ec1e-08dbb4efbb85
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 06:56:34.0401
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /vEbCYW/xOdeZmwq24jb2tRD6KggU+cxrPldvuf+RLfHRerU2wbXOvOY+8sQpKwMGGKLtF86QbVGXSMyycepEA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7243

On 13.09.2023 22:27, Andrew Cooper wrote:
> c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
> dropped the only user, leaving behind the (incorrect) implication that Xen had
> split exit paths.
> 
> Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
> to SPEC_CTRL_EXIT_TO_XEN for consistency.
> 
> No functional change.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>
albeit ...

> @@ -256,11 +255,6 @@
>      ALTERNATIVE "", __stringify(DO_SPEC_CTRL_ENTRY maybexen=1),         \
>          X86_FEATURE_SC_MSR_PV
>  
> -/* Use when exiting to Xen context. */
> -#define SPEC_CTRL_EXIT_TO_XEN                                           \
> -    ALTERNATIVE "",                                                     \
> -        DO_SPEC_CTRL_EXIT_TO_XEN, X86_FEATURE_SC_MSR_PV
> -
>  /* Use when exiting to PV guest context. */
>  #define SPEC_CTRL_EXIT_TO_PV                                            \
>      ALTERNATIVE "",                                                     \
> @@ -328,7 +322,7 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>  .endm
>  
>  /* Use when exiting to Xen in IST context. */
> -.macro SPEC_CTRL_EXIT_TO_XEN_IST
> +.macro SPEC_CTRL_EXIT_TO_XEN

... with the comment her updated (either by dropping "in IST" or by
explicitly mentioning both cases).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 07:00:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 07:00:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602070.938427 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qggKa-0004NJ-69; Thu, 14 Sep 2023 07:00:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602070.938427; Thu, 14 Sep 2023 07:00:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qggKa-0004NC-3E; Thu, 14 Sep 2023 07:00:04 +0000
Received: by outflank-mailman (input) for mailman id 602070;
 Thu, 14 Sep 2023 07:00:02 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qggKY-00044k-M0
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 07:00:02 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20621.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 52652423-52cc-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 09:00:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7243.eurprd04.prod.outlook.com (2603:10a6:102:8c::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 06:59:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 06:59:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 52652423-52cc-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZPoULP+AkmseVC7KI+h5t7NvP1Af4PUd2gLUG1zw5rB0v+jXzx2EAmE3CoJYkpZ/vEi/zBMIw4jJc33sqQqBrKy5g8HwMJjXZ8P3ywtm517uWgqrrz142ljNR8SckbjzbqPGu0Q8U/bGYTpbEHfqEynyCLUmeF49GaleaMTNmRr5ZHnc0EHsdDwbECUq8Ul9WP7azwsDGwCQJWi+mAFzuNwrMaTe4Hs3cgbRXXOrDHH283qQJhrluYngpWeYCEI5KmlPY5kKAlWDPysuI31auslvjv9eoSytRozde3k4JGo3bCwekyT9ZxYqZ3sV6dTwohWkS7haUvTxgKH7k71GWw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hNVqWRlKJW671PoAO6GBReVSW3xVxxJql09ynBOPzRo=;
 b=S0WBiMQctNTbo2wEKIXHP/k7gJOtWFrdzDZFVAQ0Vnn/RZR+4bRov+IJ1uNhXuZtU7oFDKyPKHQt4MR6lMfxFQJvn/n+heamWPQcNCQvWfnsKVH+wUGe1W7d414i5HVoFyM0Xc/dvW+CjfZRMJAd1njhYUfQ9GbToJOTYQxZr9v7eyXwo6/wLaLaSvMZiLJQev6GmsmRyOh/tTRuD2mEyEKBZdRJsNOtKDqzJxf3dVU69e+mpPmaUlLUSaJvM934KNVW1mGhXx00BNPUshTZJK/yDQZjwk6wCe2PJEv+ACTi5Dm4SyaCbGOY1TVqwyOyJFFyOmkafSa0jNFcMh9ayQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hNVqWRlKJW671PoAO6GBReVSW3xVxxJql09ynBOPzRo=;
 b=cZRsR0TZQDJTrlr4esSKVTxsSi5nzFnxtvNa3HZtMp6oZiRqAgoAs4OQAsHWkAF6RJKDUBV16L8Wzns7bwa/lXkBKuYp3327vdP7tB9TdQ7WBwUfYOXhumLB+nlaSig21wQFIp6Bu/GU7yUC+19/XBg6LUYP7miLI6B/BoAl4Qb4qkOUwp7LKy/GeApZ7Deg+4Poxzu7n8QIh6lStrlhgetOIv7zzfoGb7Y9G8Yur/+mDxKstoorb99YH+Y5LpC2uEOiBbaExVjw57EvIwQIiJtMGjIAGKUqAJWCUFLVNmR88vcyso8q99YFAZKrtNNtFNSEvdDt9vuv4w8jExqC/g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <346a4392-aa04-47ce-a6fb-af1e0bce1596@suse.com>
Date: Thu, 14 Sep 2023 08:59:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 2/8] x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into
 it's single user
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-3-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230913202758.508225-3-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0005.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c8::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PR3PR04MB7243:EE_
X-MS-Office365-Filtering-Correlation-Id: 35600f74-84b8-420c-cf13-08dbb4f03572
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	CyDZ4ZtHc3Tj8LKrYsiLhku27rG/xE1cpBJ+GipvLL3yrUHz7/nyNiztpHWa2iDLS5F9vOTHC92Za70kmr+By4rf7Th+CLwHsjbNpK43Zvzn7jkUlrmAJ/FcXSjI8y2kOy5b8W/SJItrNGRu/6Vnfmv8xDmq54rZs6XsnUDGitHFZg08bBte+vTEVPQmGzUf1DMTTc3J/NB81Yb0g9/noaZGgf+I+xz3gnu+uAXbxL9bouqbPJTR5TjxKJFHGqZ/F/DFU/+5fiA8ZMfvEiaqcqR92KKpTlGhsXLP5+U1OIhVM7vzlR8KRG0wGOQS3cOIe8lbgPEH8IcqnQBii9rMbJfaj1uSVjdu37UuoaM4OxexXUlNhmdr3jf1iwRoFqWZd7tg1J+3CYRC6crMVdri3RHzsBKSWV0+ZutPqtgykEYsFvQHReRkP1Lp+s9+7X8r0HlPwceCS52CJJiToL0qKoCowHKrLEZ30kAtrbAzzsQOlfHkYbgqtQpEt78M4/s9y1gGAnEmhPdTYMOlLqFnqs96GNZb0McsANtkwly+0moUz+9eWNhXCKrOhKuwIoJEiB3FEOy3XGEMBS3y2HHk0TJR1xqz2GA0ZK04HdamwlRXPaR/HIAgB5cpr+etezn7MPLezfGy33THHFLRH/ukmQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(376002)(346002)(366004)(396003)(451199024)(1800799009)(186009)(2616005)(8676002)(4326008)(8936002)(4744005)(26005)(5660300002)(53546011)(6512007)(6666004)(6486002)(6506007)(41300700001)(31686004)(86362001)(2906002)(6916009)(316002)(66556008)(66946007)(31696002)(54906003)(66476007)(36756003)(38100700002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R2VibWZRZDRFdHJzUVlrS05PbjN2b1hsZ1lhVit1TmZ4eXNUdlprdUlabjhk?=
 =?utf-8?B?K3dyMjBBbWNZaUdmaHoybjFid2JVaXNDZEdYTEhzbThNcUtEYjhDd0Zjei9B?=
 =?utf-8?B?M2tkWDBYQUhqelM2dm9yb1pTcnhHdDhQQWJ2aFUyTmdRYXVSWi9MTmNBV2ZX?=
 =?utf-8?B?ZTJNcFEvcUswcDNCQ01CS1BHOExVQjJhWWl4dHNNeFNiWW12bGhOdzB2WStR?=
 =?utf-8?B?YzBjVkhPZTh5eWozUmludzFxaWJ4UmRZcVhDMEIvWUJWb0hiNGg4d1ZZL2Iv?=
 =?utf-8?B?eGpQc3BMRDVEYXlVd1lGR1FMWkdNWkh3TzFHSklxN0gvR0Y3S1Z2b1NqR0hE?=
 =?utf-8?B?RUdDTzJWc2ZCWm54NFZkTUhGS0FnMUFRSkhqTWNOeFVuTXZycGxoVkdaazkz?=
 =?utf-8?B?d2dZWCtlSzlYUTZKNkZvbHBSbkVSbEVya20rWVRhTzN1c3dzMUVVc3pLc0J6?=
 =?utf-8?B?ekQ1UDUydzhHcFBaeWhackJvZUViVHFMVnJVek10OUFlTHVGN3hJUW1YMENV?=
 =?utf-8?B?UUU3N2hMclJjd3NaNUpTUFdOWnBMRmcvWndBTU9ZQzRueStBMkVqVnhEYzZy?=
 =?utf-8?B?RWdpcjVzZ0lxOWYySUZlRUtLTXpiUU0wSDRmRFpjdExXK211SmtaSVZFUDZB?=
 =?utf-8?B?Q1ZjYjFCRUJaS1JjQk00azNRMGs0bjhLRnBZb01VcWxBSUtCMldGSE9sYlhO?=
 =?utf-8?B?WTFiYXFvNU5wdUZZUDVDTVJXcXpLRm5zZGxyT2tsSTNkOFpLWHBhSFV6Tnk1?=
 =?utf-8?B?YWNVU3JMQ1JsWDQ1cksyNXBOc0lTaXBqY0hScjU4MnlPYWcwNDdaaVBHam9p?=
 =?utf-8?B?R20xM2lsVXIzUm56M29PSWwyRjIwZW5sRVJabEl5dHZ1NWdpWjVTa25hZlln?=
 =?utf-8?B?QjhlKzUybGs3L0pXWUJLMnB0aWt0NitUVTRUaEtvRlJycmVYR2hFNXU1Mmp2?=
 =?utf-8?B?Ujh1NVZFd1lVNEJPTy9IRXd1MmdzTUY4YTdnZGZsVWlmeHM1TnI3dGJHTEZq?=
 =?utf-8?B?c1p3YlhqMVo0YVlwVFU3b2Z4ZnVCZ1Jua0sxalJrejJjTm5MdFdWUzF6KzVX?=
 =?utf-8?B?TExFRC9BSFc0eTFJYXdGVzlBQzZCVWkzZnlLUEtIVWtXbDdQbjVxb1liSVY4?=
 =?utf-8?B?cVBXbXo1TTFlTW9iNkxvU2tjOXJiZW15SmxGb3doK0U3OTFOandZRnRCVnh4?=
 =?utf-8?B?dlhhcXV0cmtNZ2ZOeXJ3Uk9DZU0zS3dUZk82TTRhNGhlZUoyZ1M4UDlrcDVu?=
 =?utf-8?B?ZWM2akVNNWQ5NlE1R29rMk0xK3BmdXdBaG90TmIrcDBHMjYyQ0lXcVl0aWc2?=
 =?utf-8?B?d29BTzhWcWRMMjFoOEd2VTFEYXA3YnJIeFJoWmduajNhNHVEYUllNEdmcnh1?=
 =?utf-8?B?TG44aTdPRm1pUHJMTHJiaG4xemk1eC8zZ2dVOXVQZll4b3l3VlJuYWVMSHRw?=
 =?utf-8?B?RVhuMzFkdXlIUWFkUDhQYTI5ZVROU2NCcVZpS3BiVE5ldEVHdUx4QlRQRmR1?=
 =?utf-8?B?ZXZBOC83bE85em12Q0wxUUM5aFB0cjlMd1FIUlk1dWdxN2JSZ3ZYR2ViVDhj?=
 =?utf-8?B?SmVkaEx3bFBxSlNXVGdaT1ZDOU4rcmYwSW1ncjV0YUlSNXFXSGJvUDlRRzRk?=
 =?utf-8?B?RGZ0bzVGSTJWOGRCRTdqY0tyblhwL3hGVW5qWURFU1ZZcS9kOFZ3dEJic2tX?=
 =?utf-8?B?SnVVY3B3VUJWNTIxeVNHNzJkNkNzcVhRZURLazY5NHIybytOd1gxSnoyZ05q?=
 =?utf-8?B?SElpWjZoMndQZi82bDJoSHZ5V25NcFFadEg0S3BoalVPTlYvQS9LZXcxMEdJ?=
 =?utf-8?B?cDVnR2w2c0NGYktrK2VMRHg2b0hpUUdvNFFxZ2lTUzEvbkltWDloeVpra1Vy?=
 =?utf-8?B?eFpEakF2My95QXliMTJ3YzlOR3I3dFV6SHB2NjJYZ0hkcjZpR2t0a0V4TW1l?=
 =?utf-8?B?aW0wK1ZTSU1VODFuUU1ycHpmeGNCelhUN0xGUVlaVGV5RWZ6cEFmcUVXRzFM?=
 =?utf-8?B?ODNLRHdpVnZVQ0xiZEpTbUUvM2VPaWpHUEZZUWV0OWl4R0MwMXVUbzhsREha?=
 =?utf-8?B?ZE1od3JROUt5ZGh5dWg1RE1XcDY4Y2ZSZ2pGQldmdGxJZlk4OGJFeTFzbWxL?=
 =?utf-8?Q?5UlZSzTaMGeC7X+qForAdyZQY?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 35600f74-84b8-420c-cf13-08dbb4f03572
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 06:59:58.8526
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ZNbf1zsSP6deggvffFSzNm3zWD6gu/zG31U83QR/Iu1iZiMBsIyETCUXPb8+lLrLud8WmL+vyWPOEUWhv2+TbQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7243

On 13.09.2023 22:27, Andrew Cooper wrote:
> With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
> there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
> SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
> 
> When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
> is going to be too generic shortly.
> 
> No functional change.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Thu Sep 14 07:17:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 07:17:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602076.938439 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qggbj-0003na-R6; Thu, 14 Sep 2023 07:17:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602076.938439; Thu, 14 Sep 2023 07:17:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qggbj-0003nT-Lj; Thu, 14 Sep 2023 07:17:47 +0000
Received: by outflank-mailman (input) for mailman id 602076;
 Thu, 14 Sep 2023 07:17:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=19c3=E6=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qggbh-0003fq-GG
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 07:17:45 +0000
Received: from mail-pf1-x436.google.com (mail-pf1-x436.google.com
 [2607:f8b0:4864:20::436])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cb7b50a9-52ce-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 09:17:43 +0200 (CEST)
Received: by mail-pf1-x436.google.com with SMTP id
 d2e1a72fcca58-68fc9a4ebe9so538280b3a.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 00:17:43 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 x42-20020a056a000bea00b0068fcb70ccafsm677725pfu.129.2023.09.14.00.17.36
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 00:17:41 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cb7b50a9-52ce-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694675862; x=1695280662; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=uqTMjI12oEslN/cdU8+lG8JyAFXx0YetqvWil7XV4Mg=;
        b=f2N+rFLFVDUgnwXMpZWhgPld/UR3+LIMcebL9NNZyOSGMcevFtj79+ZcjW85eG/B1I
         nQy8IHUYDkD/WBRCyCMM98QV6jddmS5BGDfe+UlWebKw48lM9yH9SxXdy72k69DtoQ8E
         hVnnqS+kFwwROzxeVzzNHMJ4IPq1LsyzWR1T/i5vAo6Wbns+6XyxhfSgx+IEe0Do74Rs
         1IqPLSi8v8Ym2v1D5Jy5WzE4grxbvIThHUi8htW4wutSDp14/mgbqSSUOVS02k9jOnVk
         SXFHg9EkpHhPB5wkTEbJLejn1fLO6HNvhka4AfgH4nm0pfLVg/5Ob46/B11avFqHM97E
         y6nQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694675862; x=1695280662;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=uqTMjI12oEslN/cdU8+lG8JyAFXx0YetqvWil7XV4Mg=;
        b=UhfrH1+zBlE2tYG5pe2qIaal/M1ICdvJCpppTAJWEgMHczfuEHDYiFUIUhTYPBHNUH
         PMhE19FEgEEQwOSrQa3jpguNbECbLJ9QdZpue/M2Xm4A1ZeSCyKUW+v0EsHHha7zYrK6
         KGzhZru5BFTLmWt3a1Pcxw9V0lUf+ajtpwVj/va9F8Fugt2ncSzqpFYeGg66NOqA0oNj
         R5/U826JeEGZUVxZCggpN3SJnHA5bqhyUCI+ZHN2fxqDhLrllnbjdXUYlLRwk5QMA+nC
         JHQTflceZ22KkA263cIO5XyQ9yxQR4WiL0GFQ8fR/ZJxVO8vNFrr+cwxTwovsnLkBHh1
         uEqg==
X-Gm-Message-State: AOJu0Yz/faNUpnHzBNHtHVqYUi6nz7eZ4rXH+5u+xS4th5Ez1Fq10Rby
	/iKWa4xaOeZcjN7kl4dDgH09SQ==
X-Google-Smtp-Source: AGHT+IFXFXaRHWzlAZYk1FLs37f3CLh1srkB+0ieEvWKyB3reXm+soQ/M+35zTXGmfSIImIrYn3hdg==
X-Received: by 2002:a05:6a00:1d8d:b0:690:2ad9:1454 with SMTP id z13-20020a056a001d8d00b006902ad91454mr947350pfw.33.1694675861823;
        Thu, 14 Sep 2023 00:17:41 -0700 (PDT)
Message-ID: <0adaf816-e050-43c3-8284-fc41627543ef@daynix.com>
Date: Thu, 14 Sep 2023 16:17:34 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
To: Albert Esteve <aesteve@redhat.com>
Cc: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 "ernunes@redhat.com" <ernunes@redhat.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com>
 <11c227e8-a464-41ce-a435-82c570746388@daynix.com>
 <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
 <cf99ac00-6f48-4778-b319-6079a931ba5d@daynix.com>
 <CADSE00+6zcT7iKR0JW1Bk8es6HtBpzAKa9JW6u5yyjDoLPw2KQ@mail.gmail.com>
 <5e88f5d5-5aa2-4052-b250-69c2a443344f@daynix.com>
 <CADSE00+BUq-6jKH3v2PYNThn+9Z4UCFcr3Cv9Z48eUX0b=6ymA@mail.gmail.com>
 <3918c96c-f106-494d-8e97-6d86cef8df27@daynix.com>
 <CADSE00LNYm+vKaYwnTAdECGUXPCfiJ7aLqszDuqSzCLLhVOHhQ@mail.gmail.com>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <CADSE00LNYm+vKaYwnTAdECGUXPCfiJ7aLqszDuqSzCLLhVOHhQ@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 2023/09/13 23:18, Albert Esteve wrote:
> 
> 
> On Wed, Sep 13, 2023 at 3:43 PM Akihiko Odaki <akihiko.odaki@daynix.com 
> <mailto:akihiko.odaki@daynix.com>> wrote:
> 
>     On 2023/09/13 21:58, Albert Esteve wrote:
>      >
>      >
>      > On Wed, Sep 13, 2023 at 2:22 PM Akihiko Odaki
>     <akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>
>      > <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>>> wrote:
>      >
>      >     On 2023/09/13 20:34, Albert Esteve wrote:
>      >      >
>      >      >
>      >      > On Wed, Sep 13, 2023 at 12:34 PM Akihiko Odaki
>      >     <akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>
>     <mailto:akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>>
>      >      > <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>
>      >     <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>>>> wrote:
>      >      >
>      >      >     On 2023/09/13 16:55, Albert Esteve wrote:
>      >      >      > Hi Antonio,
>      >      >      >
>      >      >      > If I'm not mistaken, this patch is related with:
>      >      >      >
>      >      >
>      >
>     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html
>     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>
>      >   
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>
>      >      >
>      >     
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>
>      >      >      >
>      >      >
>      >     
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>
>      >      >
>      >     
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>>
>      >      >      > IMHO, ideally, virtio-gpu and vhost-user-gpu both,
>     would
>      >     use the
>      >      >      > infrastructure from the patch I linked to store the
>      >      >      > virtio objects, so that they can be later shared with
>      >     other devices.
>      >      >
>      >      >     I don't think such sharing is possible because the
>     resources are
>      >      >     identified by IDs that are local to the device. That also
>      >     complicates
>      >      >     migration.
>      >      >
>      >      >     Regards,
>      >      >     Akihiko Odaki
>      >      >
>      >      > Hi Akihiko,
>      >      >
>      >      > As far as I understand, the feature to export
>     dma-bufs from the
>      >      > virtgpu was introduced as part of the virtio cross-device
>     sharing
>      >      > proposal [1]. Thus, it shall be posible. When
>     virtgpu ASSING_UUID,
>      >      > it exports and identifies the dmabuf resource, so that
>     when the
>      >     dmabuf gets
>      >      > shared inside the guest (e.g., with virtio-video), we can
>     use the
>      >     assigned
>      >      > UUID to find the dmabuf in the host (using the patch that I
>      >     linked above),
>      >      > and import it.
>      >      >
>      >      > [1] - https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/>
>      >     <https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/>>
>     <https://lwn.net/Articles/828988/ <https://lwn.net/Articles/828988/>
>      >     <https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/>>>
>      >
>      >     The problem is that virtio-gpu can have other kind of
>     resources like
>      >     pixman and OpenGL textures and manage them and DMA-BUFs with
>     unified
>      >     resource ID.
>      >
>      >
>      > I see.
>      >
>      >
>      >     So you cannot change:
>      >     g_hash_table_insert(g->resource_uuids,
>      >     GUINT_TO_POINTER(assign.resource_id), uuid);
>      >     by:
>      >     virtio_add_dmabuf(uuid, assign.resource_id);
>      >
>      >     assign.resource_id is not DMA-BUF file descriptor, and the
>     underlying
>      >     resource my not be DMA-BUF at first place.
>      >
>      >
>      > I didn't really look into the patch in-depth, so the code was
>     intended
>      > to give an idea of how the implementation would look like with
>      > the cross-device patch API. Indeed, it is not the resource_id,
>      > (I just took a brief look at the virtio specificacion 1.2), but the
>      > underlying
>      > resource what we want to use here.
>      >
>      >
>      >     Also, since this lives in the common code that is not used
>     only by
>      >     virtio-gpu-gl but also virtio-gpu, which supports migration,
>     we also
>      >     need to take care of that. It is not a problem for DMA-BUF as
>      >     DMA-BUF is
>      >     not migratable anyway, but the situation is different in this
>     case.
>      >
>      >     Implementing cross-device sharing is certainly a possibility,
>     but that
>      >     requires more than dealing with DMA-BUFs.
>      >
>      >
>      > So, if I understood correctly, dmabufs are just a subset of the
>     resources
>      > that the gpu manages, or can assign UUIDs to. I am not sure why
>      > the virt gpu driver would want to send a ASSIGN_UUID for anything
>      > that is not a dmabuf (are we sure it does?), but I am not super
>     familiarized
>      > with virtgpu to begin with.
> 
>     In my understanding, an resource will be first created as OpenGL or
>     Vulkan textures and then exported as a DMA-BUF file descriptor. For
>     these resource types exporting/importing code is mandatory.
> 
>     For pixman buffers (i.e., non-virgl device), I don't see a compelling
>     reason to have cross-device sharing. It is possible to omit resource
>     UUID feature from non-virgl device to avoid implementing complicated
>     migration.
> 
> 
> I see, thanks for the clarification.
> I would assume you could avoid the UUID feature for those resources, but
> I will need to check the driver implementation. It is worth checking 
> though, if
> that would simplify the implementation.
> 
> 
>      > But I see that internally, the GPU specs relate a UUID with a
>     resource_id,
>      > so we still need both tables:
>      > - one to relate UUID with resource_id to be able to locate the
>      > underlying resource
>      > - the table that holds the dmabuf with the UUID for cross-device
>     sharing
>      >
>      > With that in mind, sounds to me that the support for cross-device
>      > sharing could
>      > be added on top of this patch, once
>      >
>     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html
>     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html>
>      >
>     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html
>     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html>>
>      > lands.
> 
>     That is possible, but I think it's better to implement cross-device
>     sharing at the same time introducing virtio-dmabuf.
> 
>     The current design of virtio-dmabuf looks somewhat inconsistent; it's
>     named "dmabuf", but internally the UUIDs are stored into something
>     named
>     "resource_uuids" and it has SharedObjectType so it's more like a
>     generic
>     resource sharing mechanism. If you actually have an implementation of
>     cross-device sharing using virtio-dmabuf, it will be clear what kind of
>     feature is truly necessary.
> 
> 
> Yeah, the file was named as virtio-dmabuf following the kernel
> implementation. Also, because for the moment it only aims to share
> dmabufs. However, virtio specs leave the virtio object defintion vague [1]
> (I guess purposely). It is up to the specific devices to define what an 
> object
> means for them. So the implementation tries to follow that, and
> leave the contents of the table generic. The table can hold any kind of 
> object,
> and the API exposes type-specific functions (for dmabufs, or others).
In the guest kernel, the name "virtio_dma_buf" represents the interface 
between the *guest* kernel and *guest* user-space. It makes sense since 
the cross-device resource sharing is managed by the userspace and 
DMA-BUF is the only interface between them for this purpose.

The situation is different for QEMU; QEMU interacts with backends using 
backend-specific interfaces (OpenGL/pixman) and virgl is capable to 
export textures as DMA-BUF. DMA-BUF is not universal in this sense. As 
such, we cannot just borrow the kernel-side naming but invent one.


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 07:20:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 07:20:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602082.938448 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qggen-0007Ks-61; Thu, 14 Sep 2023 07:20:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602082.938448; Thu, 14 Sep 2023 07:20:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qggen-0007Kl-2x; Thu, 14 Sep 2023 07:20:57 +0000
Received: by outflank-mailman (input) for mailman id 602082;
 Thu, 14 Sep 2023 07:20:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qggel-0007Kd-Di
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 07:20:55 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20609.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::609])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3dca53d7-52cf-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 09:20:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8292.eurprd04.prod.outlook.com (2603:10a6:20b:3ef::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 07:20:52 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 07:20:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3dca53d7-52cf-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lNKH8y78FjDDf5MlKoJId4cyexHuBIomD6vEPTINwAU191X5u+vo5oULkxcA+rN95BWy5T6OJMl9Bzgug2MdYF+lbDDSR82Sr8iZytkLbbbF2XZ/ZNrDsTsB2hYmIVk0uE6qo6oAYrxv/k6xOiVcLKoo7iijA2Whpwbk9kvyG33N9D2Tk2Adt/hKJ/fuHGZamk5wUWauoZbbzWWaWCH0WoXu6pwhHuiKQ67M6sKlRey7I1ywWasNNGhRmeRvsVmnMpK5FHNGACIXS1CNe9rqTy5edT2RoAZ3a48oPKycIyVBtDvwUV9HjoIFYN/tyXoz4gPoHAR/L2fq6AnE0o6SSQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=H1GIjyqJaHp0A1kx6eE6El+vsyXkNGFvUP0N1lEPVJk=;
 b=UCthDF/+cGF7+lPJ6fteHhsy+5Y5Z5MveeOJUCTWtQfp6K84Dw/VcZaDVKSwleRTqWzKElfoJHBByDqrBXUJCGBFoV7M+Oi3rYY7yRRFHkJ5hCkxurnn2ooJk/Ws7LMcaQVo6x3BVn/ime/ASvXBaTj6xzIngPP4XBEY/VrCTIadMqFAd20k8H/aCNbNn6qAVVbDyrI808dGpzu8Ih/jeQjSaGwK//QocLEJQeLz5aGbjRp9O12erqkfGI36RUdKIn34Ann1gQ/PB/JbFzTBn+OX7ubbuPhPlW5gywUtFQLLYzbthjlRrCH5xp8fGE2q+138rYFp0OYi85BNl3Q4mw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=H1GIjyqJaHp0A1kx6eE6El+vsyXkNGFvUP0N1lEPVJk=;
 b=20rupHeEFu5Tyxn/4nHXYFEuFawQvb0lwvmIxXqAhrqouGijRKScqy+C3WKWTR/HUceUS8rpXrEtBwp4eJplA8f8YIEP+hHTQ+ixEvtbr5w9UyzdRV7Z1E9eTFYRsFnfqs1aQxGvWtYqXMw0AKsvtLsijbIo5NcfxwWVTce97E9L/V4vJEuqCOJZ4adAKscWW2pvOyk5swC0mGcmALE//qoIEkMsW+R7wNB/YiD1wBDBqB+PyjZ7zqXm2kdaIAvUt133PgK2o8mIALjNjemoD7dxyBgF5EY12ijC6Ij3uKBvpcndZ8SMEEPZrptf7NBF6zN5Wvk/1a/s7leSG0wqiQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b44bc6c5-338d-0e42-e516-31ba6a457914@suse.com>
Date: Thu, 14 Sep 2023 09:20:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 3/8] x86/spec-ctrl: Turn the remaining
 SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-4-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230913202758.508225-4-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0214.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ac::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8292:EE_
X-MS-Office365-Filtering-Correlation-Id: faadb641-898c-4ac1-693a-08dbb4f3207c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7Y9AowtdM5lF7F/SuRh/usoALrrxdL/cIviySby0I5X0mgEacBMzIF3+tM/26h8Whzu9ZstGBqtmJwPEu9Zpd9g3hBMOHe8c8NO6INED9Sb8W6/1zQaCIqmMDilxtNyRQsOvc9JM2Co93iJ+miOJ6zWS8MjnaYmO0wSroWpySBuR6iVAkoJ3CREOcjAkenqEhtqKoqbFty6/jkMN1jtr8PyUnPML14qJkjuUIWoWmoAfuCyNc+GZCRfuBu0O7ZMSVbEiwmcKQgA/Nt8Wehuxuke4rhFWe3DBIkeerMa34P5epHiYRbGHO9bI9uDMpn1EMlG0bHzdoD9pDbUP3WCr/y9wQc+KqE7VSczVzS2BhSYHv9d76I+L7M/nNq0V4DxyBEXLkxwlfRh1TOo2yt0vLdA7y9T/xU4CYq5c2pR8D5fqjA3qS+B/PJStvJg1u8lb+xbG0CkjY8QCgU4FSoxUiXoji6NlQL1NNy2J1VamydZKXlrm3CxZ/hHAAQZ3fXqac0VdR/nOUxE4FDRsjuuUOWFaI0OyXoK7tfGu5wrgWz02S7D2Q59EG91qYFmfZ7/tP4m2YMx96Nc4zlX3dTOi9LYMrBGX7f7tQkysLxaC4tnzaXX0bPbSPWK+kppZrOtnzaOG8ygE2iBAy0HvypGSPQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(396003)(376002)(366004)(39860400002)(186009)(1800799009)(451199024)(8936002)(8676002)(4326008)(41300700001)(5660300002)(478600001)(54906003)(66476007)(66556008)(66946007)(6916009)(316002)(2616005)(26005)(53546011)(6506007)(6512007)(6486002)(2906002)(31696002)(86362001)(38100700002)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NHJzamhnM3lFVUVkOGJHdFNnRFhWemMrUnFNNGNMS1g2ZzdXdUFSTXJ1d0ZF?=
 =?utf-8?B?QytsNGFLc3BRSkpVc3cwRG5Mb0Mzb244N1lzWWRpTndMeXBpTUd0eGlocVNX?=
 =?utf-8?B?OHpaVW5KMnVMN2JnN1RMQlJpcW9meC9PcnFRcGJKNUpkSnpud1Z5SFpvNnE2?=
 =?utf-8?B?Z1UxT01KclZLVm1tbkdrVXE3Yy90WGxjbCs1RzBQRWNwT3paMnYyQnZNOUtt?=
 =?utf-8?B?UVNUTVU4eWpyczhSc0xvTG9sTTBnNkYwNmpwZjI3ZkpPN0JMMHFIRlJmR1JZ?=
 =?utf-8?B?L2pycHVpK1BQY3dLN0VyQXMreUl3QW9OS00rREFoZkd1RnRBSkVCR2s1THdi?=
 =?utf-8?B?QlJHWGFqcVFhVWdINGN1UDEzVGRyOFJmVTU1V20vUmJ3Rk44QlRXclpQWEcz?=
 =?utf-8?B?eEllbWgrL3EvanNSTzZ3VUxudUsrMW0yK0Q2ejVJbmF5TjZhV3dNc2cvWWE5?=
 =?utf-8?B?MXN6Zm10eVRRQnMybXRjY2U2c1pUTFhCYi85SzlsK3F5WW56eW5ITmwxVEVp?=
 =?utf-8?B?eVFWWVh4V1N2dlYxWEJ5WHNxOGNucENNNjNickVvbGRLbEQ2Y1RBQ0JYd2pU?=
 =?utf-8?B?QTA5RHNURjN4cDhtZVE1OGRIUW9JOWFJaXhBVjAzTDZZT1dyTGQxd0s4OUpW?=
 =?utf-8?B?VXZZR0pKTEM3TVZNQWZxU1ZUL2s4Wk95WmJlc0pFUk9kZHV0ZnlnTExOMW8y?=
 =?utf-8?B?TlUzYVVrQTFvYmJLNHorOTB6K0FCMkJQVGFmcCtYRVk0dXNkdEVha1hSak13?=
 =?utf-8?B?dzhCT2dGdWpNN0hWZmhxTmlIS1dpQ3kvVjhhNy9XN1F3UVNpZXFCaGs3UDlm?=
 =?utf-8?B?TjhXdG9iWGdGaVhzNEhXMlo3bzljZVU1SkI2MFIwWkllQWhvUmtVLzE2TGVh?=
 =?utf-8?B?Slp5M3Jicmd0Z21SNUJNWW9jbGZ3aTlRRStlWGJtUUVucCs1NGw1Z29aUTlv?=
 =?utf-8?B?em5kLzhmdDRhNEtlSFVJdnFLa1EyYTF2WVRJYU4vTVV4eFRkSm56a1htZDZB?=
 =?utf-8?B?MVNMa25TUGZqSFpER2VqZUNyN1lOenhJQ2ZZTUdMdWpkLzNzSTdlU09jWmVk?=
 =?utf-8?B?eWZZV2pUbVFTOExiUzM2ZWNkLzlmY3BZSFF2bmlZZURoMGdDM24rcm10MXBZ?=
 =?utf-8?B?VDlBUUhJbUw4RitMZWFhdGFSVlhKMHpaemhpZGlYb3BuREMrM2ZXamNreFQw?=
 =?utf-8?B?ek9tSXdEcVpFZ3ZSaWQrZWpEdFFjb0pCU3UxS3NjVk9BajQ2R1RUT21OMFBk?=
 =?utf-8?B?cjVqSzJzbnpXNi9Dc3N5MHpaTmw0cnJPV29HaUhaSXFRM0R6TjYxclRybFN3?=
 =?utf-8?B?bWRqZTRidXpIMDNlVDY1QnNpK0JpOW9oa0ZML3RYWVRXeVM2eVVVUitJOEJK?=
 =?utf-8?B?YzdaaFo0RlVPeGhKcE9GMUp3cllya0lsZDVoa2lmbHF1T1l5N1JjTzZJWjgy?=
 =?utf-8?B?dXhVSVVNV1RzekRzRkdJa2xvR1g3Ykxxay9MN1ROZXEvVUFhNDZCSmxtUnZJ?=
 =?utf-8?B?K3lKcnpMZGxLc0VaRDJsQlY5WEwvTVVteU43TGxqRmNKRHBxVEdrejNDUzFM?=
 =?utf-8?B?M1dST2F4N2FCcFFKbUNQMDNoanVMdW93TjhrVGFQSEo5SklCdGJJLzhjM0Ni?=
 =?utf-8?B?WDNoNDZyeWkyMFpBSVJCOFZqSUhZdy83SE0vaFV5Zm9yQnVxYWh4aGFhMVpq?=
 =?utf-8?B?TWZjQjF1UTdiT1RwUmhsSFNHL1IwbzgyY2NpaFZYS3dpQzYra2RucHYwTDdh?=
 =?utf-8?B?bFp3YlVpVFlxZFRHOE00YURic1RxeEZkYmdXSHdYVkdBUUJjK2hMQlhLK3Fa?=
 =?utf-8?B?UnhFK3dwemVMejYzMWNFT1FESkswNzgyUjAxN1hPbzNnZDNOMXpOR091YTh4?=
 =?utf-8?B?WkxEMU5FdlJER3ZUTCtsSGlNdG5XUGxYa3Fhc1htTzlKbE9SOWNGNXpyMmNY?=
 =?utf-8?B?SnZJZGFFdVFhYmUrbkxFLzh2RzNZZlV4OHBZYkErNm1ZZ0tSYm1IN2gzZnBJ?=
 =?utf-8?B?V2VhaHhxcUJ1SDJzMjRsbGJIaFV5cUplbjlJYUZkbnJtQ1p1L1VnTitIc242?=
 =?utf-8?B?Y2hPdEU5YUJZTlNXZ2xuT3p1aE9hY2JnWmNja3FvMHlPWnVrcG9aRDltT0Fh?=
 =?utf-8?Q?R8qTuVohx/XcQcy73aFt4vcy/?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: faadb641-898c-4ac1-693a-08dbb4f3207c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 07:20:51.9406
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: +5qstN0/5AN5Ueb6c1XWIcflJktN53K45ZSwFXEy8ZO0MSMg/HGoSv1Mrot4WIHBvFS62hEwlwNrw6l0QH2c/g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8292

On 13.09.2023 22:27, Andrew Cooper wrote:
> These have grown more complex over time, with some already having been
> converted.
> 
> Provide full Requires/Clobbers comments, otherwise missing at this level of
> indirection.
> 
> No functional change.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>

>  /* Use when exiting to PV guest context. */
> -#define SPEC_CTRL_EXIT_TO_PV                                            \
> -    ALTERNATIVE "",                                                     \
> -        DO_SPEC_CTRL_EXIT_TO_GUEST, X86_FEATURE_SC_MSR_PV;              \
> +.macro SPEC_CTRL_EXIT_TO_PV
> +/*
> + * Requires %rax=spec_ctrl, %rsp=regs/info
> + * Clobbers %rcx, %rdx
> + */
> +    ALTERNATIVE "", DO_SPEC_CTRL_EXIT_TO_GUEST, X86_FEATURE_SC_MSR_PV
> +
>      DO_SPEC_CTRL_COND_VERW
> +.endm
>  
>  /*
>   * Use in IST interrupt/exception context.  May interrupt Xen or PV context.

I'll need to carefully rebase "x86/spec-ctrl: add logic to issue IBPB on
exit to guest" over this change. In particular the use of __LINE__ there
(which probably you didn't really like anyway) won't work anymore. Yet
with just a single use of the macro per source file we ought to be able
to get away without this extra label disambiguation ...

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 07:26:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 07:26:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602086.938457 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qggk8-0002eZ-PU; Thu, 14 Sep 2023 07:26:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602086.938457; Thu, 14 Sep 2023 07:26:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qggk8-0002eS-Mr; Thu, 14 Sep 2023 07:26:28 +0000
Received: by outflank-mailman (input) for mailman id 602086;
 Thu, 14 Sep 2023 07:26:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4p7O=E6=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qggk7-0002eM-TJ
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 07:26:27 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 03b0b48c-52d0-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 09:26:26 +0200 (CEST)
Received: from [192.168.1.15] (host-87-19-206-190.retail.telecomitalia.it
 [87.19.206.190])
 by support.bugseng.com (Postfix) with ESMTPSA id B97974EE074B;
 Thu, 14 Sep 2023 09:26:25 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 03b0b48c-52d0-11ee-8787-cb3800f73035
Message-ID: <7eb47a61-41ad-976a-8db8-2666856d815e@bugseng.com>
Date: Thu, 14 Sep 2023 09:26:25 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
Subject: Re: [XEN PATCH] xen/libelf: address violations of MISRA C:2012 RUles
 8.2 and 8.3
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <e4d28b9b78e84260feea6bdbcb4ecdd815af5db3.1694591513.git.federico.serafini@bugseng.com>
 <9acf798a-9d08-4940-d8e0-20b423294d2e@bugseng.com>
 <78e45fa1-7273-45f4-bac5-45c4e0772a0d@xen.org>
Content-Language: en-US, it
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <78e45fa1-7273-45f4-bac5-45c4e0772a0d@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 13/09/23 15:14, Julien Grall wrote:
> Hi,
> 
> On 13/09/2023 13:41, Federico Serafini wrote:
>> On 13/09/23 14:29, Federico Serafini wrote:
>>> Add missing parameter names and make function declarations and
>>> definitions consistent. No functional change.
>>>
>>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>>
>> There is a typo in the patch title (RUles), please correct on commit.
> 
> That can be done so long there are no other comments.
> 
>>
>> Reviewed-by: Federico Serafini <federico.serafini@bugseng.com>
> 
> I am bit confused. Why do you provide a reviewed-by on a patch you wrote?
> 
> Cheers,
> 
Since I noticed something wrong with my patch, I thought that adding the
"Reviewed-by" might be better than simply replying to the mail.
I will not do it again.

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 07:49:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 07:49:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602093.938468 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgh63-0005nn-Ii; Thu, 14 Sep 2023 07:49:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602093.938468; Thu, 14 Sep 2023 07:49:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgh63-0005ng-Fz; Thu, 14 Sep 2023 07:49:07 +0000
Received: by outflank-mailman (input) for mailman id 602093;
 Thu, 14 Sep 2023 07:46:15 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NzIX=E6=igalileo.cz=radoslav.bodo@srs-se1.protection.inumbo.net>)
 id 1qgh3G-0004pd-QJ
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 07:46:15 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2071b.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::71b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c49b8cee-52d2-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 09:46:09 +0200 (CEST)
Received: from AM8PR07MB8074.eurprd07.prod.outlook.com (2603:10a6:20b:3d9::15)
 by DU0PR07MB8572.eurprd07.prod.outlook.com (2603:10a6:10:316::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Thu, 14 Sep
 2023 07:46:05 +0000
Received: from AM8PR07MB8074.eurprd07.prod.outlook.com
 ([fe80::55a1:f531:f1e1:292]) by AM8PR07MB8074.eurprd07.prod.outlook.com
 ([fe80::55a1:f531:f1e1:292%3]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 07:46:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c49b8cee-52d2-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KMDBYuC7zpJgU0zCb7/YxfZgN8HdpwIRdYDniUuyvRjeua/5esMQ2Mt0P3FGLwX3y0xmHGKFS5d8bnCJz2IpT/Hezupz9hbpOAj0owuI6K2CuabC3bxzVJyVUnxUSgHgqC4ukLEFSNk84CBaX1lNy8sWDmHCSMAf3vaY/M+5w184o444DCjsVx0PdfOHJ8w+XEKtxCIdJrOK0gT+xV67T/cUoGte8y8RRm97rYR7xgOJuylrwQKjTIDJs8O5KQ7ANRR2uybPM+rzdbgcnif23YY9rH0aFpenwxYg8SUtR0xkSYkjZovT8l1YLkrh9ua60banUzi1YqozNAkA4yOWJg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yYNse05wDlxB3wdYktaKvIja6iO9Z3jkSPXa1biJFr0=;
 b=CoLjicG281W+/Mj5svfE1pVu8MdGi6QS+aK4hDP1RyvyIIcr8lbqUrjZd6nGOoA/fZFZEp09wFvPwAWNlS//zGv0xaC4grFJvFrfOlrJtcE5zTzxIYYZ6cQAZJCQP2twkXWKxKaJgTVQNUgWi/ifnKqTpZ9nVL9GpYQMuYV1LrIOjQF1aqSjZi3/USPUVQNkPemMNr7kcSi9+TEL7KGG+OZqcteSURC3gFw1aIeOfU6iX/N52qxBaUDkwk2tkcq2+IBCLD2WPaUY2g4zDNq9/x/WRGJWcf6/+RPtyX67ma8G8TkD8+O9rnQiFGL/1hAxEnxYRjvmhOiVxyshbLZTxw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=igalileo.cz; dmarc=pass action=none header.from=igalileo.cz;
 dkim=pass header.d=igalileo.cz; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=igalileo.cz;
 s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yYNse05wDlxB3wdYktaKvIja6iO9Z3jkSPXa1biJFr0=;
 b=jx9zpd1b7syqmSpCCNBdJAKiSgqa+g5ExZnmmMIRmhei/bjObXbqApPloOLPQFJPGw6K49o/+tENruwqFTOeR25CVPvlGTiIIQnSy9PIYuN+2a47/bGryAXXXXpMnbbf8xDU0NJGe+HVAbxxBhy+agcj4FGg4v+WdHLCMsbyaXE=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=igalileo.cz;
Content-Type: multipart/mixed; boundary="------------FsVuRGpDg0hCPbc1SuNfHgGC"
Message-ID: <129f1ee6-8bb4-aa53-b6f3-aa94c35c60e0@igalileo.cz>
Date: Thu, 14 Sep 2023 09:46:00 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.0
To: Hans van Kranenburg <hans@knorrie.org>, 1051862@bugs.debian.org,
 Juergen Gross <jgross@suse.com>, Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: xen-devel <xen-devel@lists.xenproject.org>
References: <abd6fb7e-bd03-7bf0-b43f-5e4914f6aadf@igalileo.cz>
 <676789d2-a054-2b44-69be-c458ef236d50@knorrie.org>
From: =?UTF-8?Q?Radoslav_Bod=c3=b3?= <radoslav.bodo@igalileo.cz>
Subject: Re: (Debian) Bug#1051862: server flooded with xen_mc_flush warnings
 with xen 4.17 + linux 6.1
In-Reply-To: <676789d2-a054-2b44-69be-c458ef236d50@knorrie.org>
X-ClientProxiedBy: VI1P195CA0085.EURP195.PROD.OUTLOOK.COM
 (2603:10a6:802:59::38) To AM8PR07MB8074.eurprd07.prod.outlook.com
 (2603:10a6:20b:3d9::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AM8PR07MB8074:EE_|DU0PR07MB8572:EE_
X-MS-Office365-Filtering-Correlation-Id: d917eff8-91e2-475b-5724-08dbb4f6a527
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vEY+JrUj1YVd4oEvgH47vXknlCuOAuQiSYWcHPS7tkXhYsAPtJXWa+KhU8wBTfdTn3s2p70ErAWLCg9IIbj00RA/fmauQ11WfNF1F5J6E4h6BggevBzqFomYAW501FLfQ93lsj78hKx+KMvVkQvtoiyTwJioGu5/rpilp1Vt5E6pU8+3cC/5JIhuMtzrZMDNguuec3JY8FiNMLS97OtolGolujSlUOSbYFZxZ0dT5fRgEFyeDB0VFu7gVwu+W2lye+UZ+RvA0gPxfLjL9T8qCrJxb5A1G5AIS2vBe2dU3iV6QhmVn5A09LoDJK403oRUfvgzw4gL60oETmBp0ihv0z5XOhA5Uk3WUxn80lrzJb+gwB/PUaS6FC9SaHkJbPQ10j6K190owjM/ikhxwMBlYCFggTM4o+ebsFLLcq04AAwb0mSfspwW64VL2l+IIDBVjZTDufY7NDk5CwKCwZwLz5O1bOzdfDFRIOFeCt8L9BMQfH30LKYLX8Y6YvwoqNn4XHUJcAPsxWn6mrvGWpjKabILtn/o9NmdvXtbqLDGNpaRM6esY36oeqHzc7eS06a4Bz0Xbc+UOnB8GPsVts8xaaqnS+QPewcxymLON5VDNvs9ExNrh12xxsx4FMUhxMthhrc5bP8dKm2ewQdMoPTbTfcQAzT1WUiV0Vs5MqJiMk7+V/IC+bS8dkWESKpW4mVlBKnoQNmcN+ACdNJmFprkbQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM8PR07MB8074.eurprd07.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(136003)(396003)(346002)(376002)(39850400004)(186009)(451199024)(1800799009)(86362001)(36756003)(31696002)(31686004)(478600001)(2616005)(38100700002)(6486002)(6512007)(21480400003)(2906002)(83380400001)(5660300002)(41300700001)(6506007)(53546011)(33964004)(235185007)(66946007)(110136005)(786003)(66556008)(66476007)(4326008)(8936002)(316002)(8676002)(43740500002)(45980500001);DIR:OUT;SFP:1102;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NElocWhYNHNxaWtTMy9KM243N0JFUlNXYVRPbGlsZlRmM0lwSHB5a01mUE5W?=
 =?utf-8?B?Sm5IbEdEa1RuSGlpcWFsbUJSNEtISncwNm9JYTIxWmVHUHNVTFh0aHJ6U1Ju?=
 =?utf-8?B?WmlnQ0Zsc1NkL3VGd1kzQmlZaFdQSFM1ZXUrN0tzc0w5Ync3SlNuR3NrdUZz?=
 =?utf-8?B?akxuc1MySWcydFVYVzBpNGJ5M2Y1Q1RhVUlpQ2p3K3lIV3dZYVdzeC9pNVZD?=
 =?utf-8?B?U1FpVEhwWW94MUFOMnpHc2dJSE1PanBEU0h1NjVtYlBGSEVDNHpkUkwxS1Ri?=
 =?utf-8?B?N244SEgvZmhmaEUxRldSQUFid3o3TkRITENiMjNIVktRTFNSWWcwb3NTeUJF?=
 =?utf-8?B?cDBSQUlJRlgvblVoSk12YUNOdGhxR2xET1U4OGg3ODhCS3Z2T1dSWFNjQlhr?=
 =?utf-8?B?WTZIdEppQjVPSDREU2NKVEFab2RMUFlzMDYreWQ1c3U5anhreG9ZY2g4S1Iw?=
 =?utf-8?B?VHVBMUJBMkRmRElhMCtPSjN6QW04Ti9PbzBTbkxKSnRmSTA2czVqMFZwM1B0?=
 =?utf-8?B?NWxLV2lqMWd2cnprME1TaHhVaERadVlad043VnYwRVBYb2RwdDZtL0Y4U25V?=
 =?utf-8?B?Wm5IMWVSWVlKbTNwdjZzY3JYZTJWNHM1VUNjUFV6OWFqRlpNQW5nU1lJNmpv?=
 =?utf-8?B?c3BoYW5TbFBjcG5ISVNFZlZqeStRc2NwSld4SHRsOFZtRnVIWXpnMTN6Rjh5?=
 =?utf-8?B?WWczZG1pbXZMSkppczNaMmVmdXFoVk83RWhtWk1DT3k1MjhobzRXc3ZDMDlL?=
 =?utf-8?B?SHFCVG00bUxJT1lPak9qSnB3NmdsQm1SWEdubStoYm82OVpDek1NNFNPL0Rq?=
 =?utf-8?B?THdPN2l6SlV6STFqZjRIaHZLbHF3ajdVak5uaFlpSEd2dWZMZG1yV3JqVzdO?=
 =?utf-8?B?cEJCM2VlVWVDaUt5WFFnZ3d0YWV2cGZKNU5rWHp4ZmZUa2Zrall6RVNHWXNZ?=
 =?utf-8?B?SitJK0tlalZPbE5VVndqR0FBeE1uYUFGUnIzbHZPeTdHN0xzU0VjWndQbWVt?=
 =?utf-8?B?N1NXNTRQS29LWWd2bTFOYVFnOGphSnN2MGdRZE1PWFV6UjhTcGpoYW5VVy9C?=
 =?utf-8?B?WUxtaml5RnR1RlhoWXViZlF3Mis2eHA5Rm5KOW9tYXhzTzVtc1FmaktqejR0?=
 =?utf-8?B?cDBGa2tsK0k3d25RM09vUERpc1NMcVlPbE5pSFB2VEZmd0dlWlBFZkI0VFdW?=
 =?utf-8?B?UGNETTJWYk5qNWU5b0QxTysxSDBsVFhTaTRhWTByY0w0VnJQc3pOenJvYTda?=
 =?utf-8?B?K3dSNXA5NVhtQXdOTGZMOExqL1NCWmVmeEpramNWSmJjdlRyU0g2NklTT004?=
 =?utf-8?B?czM0TWJUbGZua0laTHltN2hrYnZIQjlHOENiSXd6WGdjVHNrcDlqRGtscUxr?=
 =?utf-8?B?RW1HVXUwT2JKcFhmVHN0UjJ3V2I1SXlpQi94c2ljNjRoMWNIeWJjamw3RkN3?=
 =?utf-8?B?aUlEOGE3TGZJSXhNTVNmZzRnc1UvcFNjbDY0NGJlS2FmTnRodEN1dXBrS0RS?=
 =?utf-8?B?UU42RWVMZHF1MktuYU5sYVl4dXdCSnNWeW5VK3JOMHkzc09obThja1RHN0lM?=
 =?utf-8?B?OTFwM2hZcmM3bzk4ZkZZdXlvUllzMGpxOS96QVkxc20wdnJtTlB4Q1hMY1J4?=
 =?utf-8?B?K2xYTDF6WTZ4eGd4aDBtOTN5eENtNEkwK00rOVlsVCtxcFhDeVBIakRkNGR6?=
 =?utf-8?B?OE9IaVl6d0FFZUJnMGJPd283bXVRM21nRXYzWkQ1eWoxZVFmb1U2TGVGRUgr?=
 =?utf-8?B?Zyt6RjBhWmh0a0grbXVVQzE5SlJXeHdKSnRDSzF0T1Fhc0g5Ykg1aW9tMnpS?=
 =?utf-8?B?UEJTa1BWcEN4VGd4YnVrV25qbXBibTltMjR5a2NaQUlQeE5tdm5BbVNMdFMz?=
 =?utf-8?B?RU1ZQ3hSN1lxblZnWnB3SGRZcG0zb1gyWjJCQzlsUDRZS0huMWozRHd2N0I0?=
 =?utf-8?B?dUNaM0ZYcTh5d2dPeGRpWDJFSEcxT1RPOHlLcW4zSHlVY3ptSnF3b3E1QlZG?=
 =?utf-8?B?UTdWWG9OTmJ5ems2ZzdIZ3RVaVEzWVJLdG5uV1VNUUxWWDlZajl0YU00UVAy?=
 =?utf-8?B?TENxcHY4N0MxWVBZTGFnNllxdUpvUmxGSExvTlZVMkVJVzA0WlhIcW9kSmZr?=
 =?utf-8?B?QWR5WHBucWVhSzVYTVBhSUNoS0lnNU5OV1lxRURQa0E4UFRtYlNLOFhnU05P?=
 =?utf-8?Q?/g8PnkOn73Q232yXs5uyzp8=3D?=
X-OriginatorOrg: igalileo.cz
X-MS-Exchange-CrossTenant-Network-Message-Id: d917eff8-91e2-475b-5724-08dbb4f6a527
X-MS-Exchange-CrossTenant-AuthSource: AM8PR07MB8074.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 07:46:03.0353
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 1b38a1c5-bd56-4cc3-ad51-1991f5feafa6
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: G2xpOSp++6w1JCvFw747AS9AKns3dht1OQplCVO/GIR2fCY4IOIL8tGRHAVIVS+ek2CqLgEF8GGu+WqxGbgQji8x7Szq9kKnQovSSz/d1ds=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR07MB8572

--------------FsVuRGpDg0hCPbc1SuNfHgGC
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi all,

hopefully it's ok to reply-all at this point


On 9/13/23 23:38, Hans van Kranenburg wrote:
> I have a few quick additional questions already:
> 
> 1. For clarification.. From your text, I understand that only this one
> single server is showing the problem after the Debian version upgrade.
> Does this mean that this is the only server you have running with
> exactly this combination of hardware (and BIOS version, CPU microcode
> etc etc)? Or, is there another one with same hardware which does not
> show the problem?

This is the unique HW combination in terms of server type Dell R750xs 
and CPU type 'Intel Xeon Silver 4310'


> 2. Can you reply with the output of 'xl dmesg' when the problem happens?
> Or, if the system gets unusable too quick, do you have a serial console
> connection to capture the output?

in attachment


> 3. To confirm... I understand that there are many of these messages.
> Since you pasted only one, does that mean that all of them look exactly
> the same, with "1 of 1 multicall(s) failed: cpu 10" "call  1: op=1
> arg=[ffff8888a1a9eb10] result=-22"? Or are there variations? If so, can
> you reply with a few different ones?

all looks exacly same, only 1 of 1 multicalls failed with same result



On 9/14/23 07:43, Juergen Gross wrote:
 >>> kernel: [   99.768181] Call Trace:
 >>> kernel: [   99.768436]  <TASK>
 >>> kernel: [   99.768691]  ? __warn+0x7d/0xc0
 >>> kernel: [   99.768947]  ? xen_mc_flush+0x196/0x220
 >>> kernel: [   99.769204]  ? report_bug+0xe6/0x170
 >>> kernel: [   99.769460]  ? handle_bug+0x41/0x70
 >>> kernel: [   99.769713]  ? exc_invalid_op+0x13/0x60
 >>> kernel: [   99.769967]  ? asm_exc_invalid_op+0x16/0x20
 >>> kernel: [   99.770223]  ? xen_mc_flush+0x196/0x220
 >>> kernel: [   99.770478]  xen_mc_issue+0x6d/0x70
 >>> kernel: [   99.770726]  xen_set_pmd_hyper+0x54/0x90
 >>> kernel: [   99.770965]  do_set_pmd+0x188/0x2a0
 >
 > This looks like an attempt to map a hugepage, which isn't supported
 > when running as a Xen PV guest (this includes dom0).
 >
 > Are transparent hugepages enabled somehow? In a Xen PV guest there
 > should be no /sys/kernel/mm/transparent_hugepage directory. Depending 
 > on the presence of that directory either hugepage_init() has a bug, 
or > a test for hugepages being supported is missing in 
filemap_map_pages() > or do_set_pmd().
 >
 >>> kernel: [   99.771200]  filemap_map_pages+0x1a9/0x6e0
 >>> kernel: [   99.771434]  xfs_filemap_map_pages+0x41/0x60 [xfs]
 >>> kernel: [   99.771714]  do_fault+0x1a4/0x410
 >>> kernel: [   99.771947]  __handle_mm_fault+0x660/0xfa0

in faulty state (linux 6.1) and also in good state (linux 5.10), the 
directory /sys/kernel/mm/transparent_hugepage is not present

we have also tried to boot with 'transparent_hugepage=never', but it 
make no difference


best regards
bodik
--------------FsVuRGpDg0hCPbc1SuNfHgGC
Content-Type: text/plain; charset=UTF-8; name="xen-mcflush-xldmesg.txt"
Content-Disposition: attachment; filename="xen-mcflush-xldmesg.txt"
Content-Transfer-Encoding: base64

KFhFTikgWGVuIHZlcnNpb24gNC4xNy4yLXByZSAoRGViaWFuIDQuMTcuMSsyLWdiNzczYzQ4ZTM2
LTEpIChwa2cteGVuLWRldmVsQGxpc3RzLmFsaW90aC5kZWJpYW4ub3JnKSAoeDg2XzY0LWxpbnV4
LWdudS1nY2MgKERlYmlhbiAxMi4yLjAtMTQpIDEyLjIuMCkgZGVidWc9biBUaHUgTWF5IDE4IDE5
OjI2OjMwIFVUQyAyMDIzCihYRU4pIEJvb3Rsb2FkZXI6IEdSVUIgMi4wNi0xMwooWEVOKSBDb21t
YW5kIGxpbmU6IHBsYWNlaG9sZGVyIGRvbTBfbWVtPTMyRyxtYXg6MzJHCihYRU4pIFhlbiBpbWFn
ZSBsb2FkIGJhc2UgYWRkcmVzczogMHg1ZTgwMDAwMAooWEVOKSBWaWRlbyBpbmZvcm1hdGlvbjoK
KFhFTikgIFZHQSBpcyB0ZXh0IG1vZGUgODB4MjUsIGZvbnQgOHgxNgooWEVOKSAgVkJFL0REQyBt
ZXRob2RzOiBub25lOyBFRElEIHRyYW5zZmVyIHRpbWU6IDAgc2Vjb25kcwooWEVOKSAgRURJRCBp
bmZvIG5vdCByZXRyaWV2ZWQgYmVjYXVzZSBubyBEREMgcmV0cmlldmFsIG1ldGhvZCBkZXRlY3Rl
ZAooWEVOKSBEaXNjIGluZm9ybWF0aW9uOgooWEVOKSAgRm91bmQgMiBNQlIgc2lnbmF0dXJlcwoo
WEVOKSAgRm91bmQgMiBFREQgaW5mb3JtYXRpb24gc3RydWN0dXJlcwooWEVOKSBYZW4tZTgyMCBS
QU0gbWFwOgooWEVOKSAgWzAwMDAwMDAwMDAwMDAwMDAsIDAwMDAwMDAwMDAwOThmZmZdICh1c2Fi
bGUpCihYRU4pICBbMDAwMDAwMDAwMDA5OTAwMCwgMDAwMDAwMDAwMDA5ZmZmZl0gKHJlc2VydmVk
KQooWEVOKSAgWzAwMDAwMDAwMDAwZTAwMDAsIDAwMDAwMDAwMDAwZmZmZmZdIChyZXNlcnZlZCkK
KFhFTikgIFswMDAwMDAwMDAwMTAwMDAwLCAwMDAwMDAwMDRhNDEzZmZmXSAodXNhYmxlKQooWEVO
KSAgWzAwMDAwMDAwNGE0MTQwMDAsIDAwMDAwMDAwNGI0MTNmZmZdIChBQ1BJIE5WUykKKFhFTikg
IFswMDAwMDAwMDRiNDE0MDAwLCAwMDAwMDAwMDRiZmMyZmZmXSAodXNhYmxlKQooWEVOKSAgWzAw
MDAwMDAwNGJmYzMwMDAsIDAwMDAwMDAwNGMwYzhmZmZdIChyZXNlcnZlZCkKKFhFTikgIFswMDAw
MDAwMDRjMGM5MDAwLCAwMDAwMDAwMDRjZmZmZmZmXSAodXNhYmxlKQooWEVOKSAgWzAwMDAwMDAw
NGQwMDAwMDAsIDAwMDAwMDAwNGQxZmZmZmZdIChyZXNlcnZlZCkKKFhFTikgIFswMDAwMDAwMDRk
MjAwMDAwLCAwMDAwMDAwMDVlZWZkZmZmXSAodXNhYmxlKQooWEVOKSAgWzAwMDAwMDAwNWVlZmUw
MDAsIDAwMDAwMDAwNmUzZmVmZmZdIChyZXNlcnZlZCkKKFhFTikgIFswMDAwMDAwMDZlM2ZmMDAw
LCAwMDAwMDAwMDZmM2ZlZmZmXSAoQUNQSSBOVlMpCihYRU4pICBbMDAwMDAwMDA2ZjNmZjAwMCwg
MDAwMDAwMDA2ZjdmZWZmZl0gKEFDUEkgZGF0YSkKKFhFTikgIFswMDAwMDAwMDZmN2ZmMDAwLCAw
MDAwMDAwMDZmN2ZmZmZmXSAodXNhYmxlKQooWEVOKSAgWzAwMDAwMDAwNmY4MDAwMDAsIDAwMDAw
MDAwOGZmZmZmZmZdIChyZXNlcnZlZCkKKFhFTikgIFswMDAwMDAwMGZkMDAwMDAwLCAwMDAwMDAw
MGZlN2ZmZmZmXSAocmVzZXJ2ZWQpCihYRU4pICBbMDAwMDAwMDBmZWMwMDAwMCwgMDAwMDAwMDBm
ZWMwMGZmZl0gKHJlc2VydmVkKQooWEVOKSAgWzAwMDAwMDAwZmVjODAwMDAsIDAwMDAwMDAwZmVk
MDBmZmZdIChyZXNlcnZlZCkKKFhFTikgIFswMDAwMDAwMGZlZDQwMDAwLCAwMDAwMDAwMGZlZDQ0
ZmZmXSAocmVzZXJ2ZWQpCihYRU4pICBbMDAwMDAwMDBmZjAwMDAwMCwgMDAwMDAwMDBmZmZmZmZm
Zl0gKHJlc2VydmVkKQooWEVOKSAgWzAwMDAwMDAxMDAwMDAwMDAsIDAwMDAwMDQwN2ZmZmZmZmZd
ICh1c2FibGUpCihYRU4pIEFDUEk6IFJTRFAgMDAwRkUzMjAsIDAwMjQgKHIyIERFTEwgICkKKFhF
TikgQUNQSTogWFNEVCA2RjQwQTE4OCwgMDBGNCAocjEgREVMTCAgIFBFX1NDMyAgICAgICAgICAw
IERFTEwgIDEwMDAwMTMpCihYRU4pIEFDUEk6IEZBQ1AgNkY3RjYwMDAsIDAxMTQgKHI2IERFTEwg
ICBQRV9TQzMgICAgICAgICAgMCBERUxMICAgICAgICAxKQooWEVOKSBBQ1BJOiBEU0RUIDZGNzcw
MDAwLCA3RkFEMyAocjIgREVMTCAgIFBFX1NDMyAgICAgICAgICAzIERFTEwgICAgICAgIDEpCihY
RU4pIEFDUEk6IEZBQ1MgNkYzNzMwMDAsIDAwNDAKKFhFTikgQUNQSTogU1NEVCA2RjdGQjAwMCwg
MTU3MSAocjIgIElOVEVMIFJBU19BQ1BJICAgICAgICAxIElOVEwgMjAyMTAzMzEpCihYRU4pIEFD
UEk6IFNTRFQgNkY3RkEwMDAsIDA3NDUgKHIyICBJTlRFTCBBRERSWExBVCAgICAgICAgMSBJTlRM
IDIwMjEwMzMxKQooWEVOKSBBQ1BJOiBFSU5KIDZGN0Y5MDAwLCAwMTUwIChyMSBERUxMICAgUEVf
U0MzICAgICAgICAgIDEgSU5UTCAgICAgICAgMSkKKFhFTikgQUNQSTogQkVSVCA2RjdGODAwMCwg
MDAzMCAocjEgREVMTCAgIFBFX1NDMyAgICAgICAgICAxIElOVEwgICAgICAgIDEpCihYRU4pIEFD
UEk6IEVSU1QgNkY3RjcwMDAsIDAyMzAgKHIxIERFTEwgICBQRV9TQzMgICAgICAgICAgMSBJTlRM
ICAgICAgICAxKQooWEVOKSBBQ1BJOiBITUFUIDZGN0Y1MDAwLCAwMTgwIChyMSBERUxMICAgUEVf
U0MzICAgICAgICAgIDEgREVMTCAgICAgICAgMSkKKFhFTikgQUNQSTogSFBFVCA2RjdGNDAwMCwg
MDAzOCAocjEgREVMTCAgIFBFX1NDMyAgICAgICAgICAxIERFTEwgICAgICAgIDEpCihYRU4pIEFD
UEk6IE1DRkcgNkY3RjMwMDAsIDAwM0MgKHIxIERFTEwgICBQRV9TQzMgICAgICAgICAgMSBERUxM
ICAgICAgICAxKQooWEVOKSBBQ1BJOiBNSUdUIDZGN0YyMDAwLCAwMDQwIChyMSBERUxMICAgUEVf
U0MzICAgICAgICAgIDAgREVMTCAgICAgICAgMSkKKFhFTikgQUNQSTogTVNDVCA2RjdGMTAwMCwg
MDA5MCAocjEgREVMTCAgIFBFX1NDMyAgICAgICAgICAxIERFTEwgICAgICAgIDEpCihYRU4pIEFD
UEk6IFdTTVQgNkY3RjAwMDAsIDAwMjggKHIxIERFTEwgICBQRV9TQzMgICAgICAgICAgMCBERUxM
ICAgICAgICAxKQooWEVOKSBBQ1BJOiBBUElDIDZGNzZGMDAwLCAwMzVFIChyNCBERUxMICAgUEVf
U0MzICAgICAgICAgIDAgREVMTCAgICAgICAgMSkKKFhFTikgQUNQSTogU0xJVCA2Rjc2RTAwMCwg
MDAzMCAocjEgREVMTCAgIFBFX1NDMyAgICAgICAgICAxIERFTEwgIDEwMDAwMTMpCihYRU4pIEFD
UEk6IFNSQVQgNkY3NjcwMDAsIDY0MzAgKHIzIERFTEwgICBQRV9TQzMgICAgICAgICAgMiBERUxM
ICAxMDAwMDEzKQooWEVOKSBBQ1BJOiBPRU00IDZGNURGMDAwLCAxODdBNjEgKHIyICBJTlRFTCBD
UFUgIENTVCAgICAgMzAwMCBJTlRMIDIwMjEwMzMxKQooWEVOKSBBQ1BJOiBPRU0xIDZGNENCMDAw
LCAxMTM0ODkgKHIyICBJTlRFTCBDUFUgRUlTVCAgICAgMzAwMCBJTlRMIDIwMjEwMzMxKQooWEVO
KSBBQ1BJOiBPRU0yIDZGNDg0MDAwLCA0NjAzMSAocjIgIElOVEVMIENQVSAgSFdQICAgICAzMDAw
IElOVEwgMjAyMTAzMzEpCihYRU4pIEFDUEk6IFNTRFQgNkY0MEQwMDAsIDc2NEE1IChyMiAgSU5U
RUwgU1NEVCAgUE0gICAgIDQwMDAgSU5UTCAyMDIxMDMzMSkKKFhFTikgQUNQSTogU1NEVCA2RjQw
QzAwMCwgMEFBMyAocjIgREVMTCAgIFBFX1NDMyAgICAgICAgICAwIERFTEwgICAgICAgIDEpCihY
RU4pIEFDUEk6IEhFU1QgNkY0MEIwMDAsIDAxN0MgKHIxIERFTEwgICBQRV9TQzMgICAgICAgICAg
MSBJTlRMICAgICAgICAxKQooWEVOKSBBQ1BJOiBTU0RUIDZGN0ZEMDAwLCAwNjIzIChyMiBERUxM
ICAgVHBtMlRhYmwgICAgIDEwMDAgSU5UTCAyMDIxMDMzMSkKKFhFTikgQUNQSTogVFBNMiA2RjQw
OTAwMCwgMDA0QyAocjQgREVMTCAgIFBFX1NDMyAgICAgICAgICAyIERFTEwgIDEwMDAwMTMpCihY
RU4pIEFDUEk6IFNTRFQgNkY0MDEwMDAsIDcyOTkgKHIyICBJTlRFTCBTcHNObSAgICAgICAgICAg
MiBJTlRMIDIwMjEwMzMxKQooWEVOKSBBQ1BJOiBTU0RUIDZGNDAwMDAwLCAwNkVBIChyMiBERUxM
ICAgUEVfU0MzICAgICAgICAgIDIgREVMTCAgICAgICAgMSkKKFhFTikgQUNQSTogRE1BUiA2RjNG
RjAwMCwgMDE4OCAocjEgREVMTCAgIFBFX1NDMyAgICAgICAgICAxIERFTEwgICAgICAgIDEpCihY
RU4pIFN5c3RlbSBSQU06IDI2MTU5NU1CICgyNjc4NzM4NjRrQikKKFhFTikgRG9tYWluIGhlYXAg
aW5pdGlhbGlzZWQgRE1BIHdpZHRoIDMyIGJpdHMKKFhFTikgeDJBUElDIG1vZGUgaXMgYWxyZWFk
eSBlbmFibGVkIGJ5IEJJT1MuCihYRU4pIEFDUEk6IDMyLzY0WCBGQUNTIGFkZHJlc3MgbWlzbWF0
Y2ggaW4gRkFEVCAtIDZmMzczMDAwLzAwMDAwMDAwMDAwMDAwMDAsIHVzaW5nIDMyCihYRU4pIElP
QVBJQ1swXTogYXBpY19pZCA4LCB2ZXJzaW9uIDMyLCBhZGRyZXNzIDB4ZmVjMDAwMDAsIEdTSSAw
LTExOQooWEVOKSBDUFUwOiBUU0M6IHJhdGlvOiAxNjggLyAyCihYRU4pIENQVTA6IGJ1czogMTAw
IE1IeiBiYXNlOiAyMTAwIE1IeiBtYXg6IDMzMDAgTUh6CihYRU4pIENQVTA6IDgwMCAuLi4gMjEw
MCBNSHoKKFhFTikgeHN0YXRlOiBzaXplOiAweGE4OCBhbmQgc3RhdGVzOiAweDJlNwooWEVOKSBV
bnJlY29nbmlzZWQgQ1BVIG1vZGVsIDB4NmEgLSBhc3N1bWluZyB2dWxuZXJhYmxlIHRvIExhenlG
UFUKKFhFTikgU3BlY3VsYXRpdmUgbWl0aWdhdGlvbiBmYWNpbGl0aWVzOgooWEVOKSAgIEhhcmR3
YXJlIGhpbnRzOiBSRENMX05PIElCUlNfQUxMIFNLSVBfTDFERkwgTURTX05PIFRBQV9OTyBTQkRS
X1NTRFBfTk8gUFNEUF9OTwooWEVOKSAgIEhhcmR3YXJlIGZlYXR1cmVzOiBJQlBCIElCUlMgU1RJ
QlAgU1NCRCBQU0ZEIEwxRF9GTFVTSCBNRF9DTEVBUiBUU1hfQ1RSTCBGQl9DTEVBUiBGQl9DTEVB
Ul9DVFJMCihYRU4pICAgQ29tcGlsZWQtaW4gc3VwcG9ydDogSU5ESVJFQ1RfVEhVTksgU0hBRE9X
X1BBR0lORwooWEVOKSAgIFhlbiBzZXR0aW5nczogQlRJLVRodW5rIEpNUCwgU1BFQ19DVFJMOiBJ
QlJTKyBTVElCUCsgU1NCRC0gUFNGRC0gVFNYKywgT3RoZXI6IElCUEItY3R4dCBCUkFOQ0hfSEFS
REVOCihYRU4pICAgU3VwcG9ydCBmb3IgSFZNIFZNczogTVNSX1NQRUNfQ1RSTCBNU1JfVklSVF9T
UEVDX0NUUkwgUlNCIEVBR0VSX0ZQVQooWEVOKSAgIFN1cHBvcnQgZm9yIFBWIFZNczogTVNSX1NQ
RUNfQ1RSTCBFQUdFUl9GUFUKKFhFTikgICBYUFRJICg2NC1iaXQgUFYgb25seSk6IERvbTAgZGlz
YWJsZWQsIERvbVUgZGlzYWJsZWQgKHdpdGggUENJRCkKKFhFTikgICBQViBMMVRGIHNoYWRvd2lu
ZzogRG9tMCBkaXNhYmxlZCwgRG9tVSBkaXNhYmxlZAooWEVOKSBVc2luZyBzY2hlZHVsZXI6IFNN
UCBDcmVkaXQgU2NoZWR1bGVyIHJldjIgKGNyZWRpdDIpCihYRU4pIEluaXRpYWxpemluZyBDcmVk
aXQyIHNjaGVkdWxlcgooWEVOKSBQbGF0Zm9ybSB0aW1lciBpcyAyNC4wMDBNSHogSFBFVAooWEVO
KSBEZXRlY3RlZCAyMDk1LjA3OCBNSHogcHJvY2Vzc29yLgooWEVOKSBJbnRlbCBWVC1kIGlvbW11
IDggc3VwcG9ydGVkIHBhZ2Ugc2l6ZXM6IDRrQiwgMk1CLCAxR0IKKFhFTikgSW50ZWwgVlQtZCBp
b21tdSA3IHN1cHBvcnRlZCBwYWdlIHNpemVzOiA0a0IsIDJNQiwgMUdCCihYRU4pIEludGVsIFZU
LWQgaW9tbXUgNiBzdXBwb3J0ZWQgcGFnZSBzaXplczogNGtCLCAyTUIsIDFHQgooWEVOKSBJbnRl
bCBWVC1kIGlvbW11IDUgc3VwcG9ydGVkIHBhZ2Ugc2l6ZXM6IDRrQiwgMk1CLCAxR0IKKFhFTikg
SW50ZWwgVlQtZCBpb21tdSA0IHN1cHBvcnRlZCBwYWdlIHNpemVzOiA0a0IsIDJNQiwgMUdCCihY
RU4pIEludGVsIFZULWQgaW9tbXUgMyBzdXBwb3J0ZWQgcGFnZSBzaXplczogNGtCLCAyTUIsIDFH
QgooWEVOKSBJbnRlbCBWVC1kIGlvbW11IDIgc3VwcG9ydGVkIHBhZ2Ugc2l6ZXM6IDRrQiwgMk1C
LCAxR0IKKFhFTikgSW50ZWwgVlQtZCBpb21tdSAxIHN1cHBvcnRlZCBwYWdlIHNpemVzOiA0a0Is
IDJNQiwgMUdCCihYRU4pIEludGVsIFZULWQgaW9tbXUgMCBzdXBwb3J0ZWQgcGFnZSBzaXplczog
NGtCLCAyTUIsIDFHQgooWEVOKSBJbnRlbCBWVC1kIGlvbW11IDkgc3VwcG9ydGVkIHBhZ2Ugc2l6
ZXM6IDRrQiwgMk1CLCAxR0IKKFhFTikgSW50ZWwgVlQtZCBTbm9vcCBDb250cm9sIGVuYWJsZWQu
CihYRU4pIEludGVsIFZULWQgRG9tMCBETUEgUGFzc3Rocm91Z2ggbm90IGVuYWJsZWQuCihYRU4p
IEludGVsIFZULWQgUXVldWVkIEludmFsaWRhdGlvbiBlbmFibGVkLgooWEVOKSBJbnRlbCBWVC1k
IEludGVycnVwdCBSZW1hcHBpbmcgZW5hYmxlZC4KKFhFTikgSW50ZWwgVlQtZCBQb3N0ZWQgSW50
ZXJydXB0IG5vdCBlbmFibGVkLgooWEVOKSBJbnRlbCBWVC1kIFNoYXJlZCBFUFQgdGFibGVzIGVu
YWJsZWQuCihYRU4pIEkvTyB2aXJ0dWFsaXNhdGlvbiBlbmFibGVkCihYRU4pICAtIERvbTAgbW9k
ZTogUmVsYXhlZAooWEVOKSBJbnRlcnJ1cHQgcmVtYXBwaW5nIGVuYWJsZWQKKFhFTikgRW5hYmxl
ZCBkaXJlY3RlZCBFT0kgd2l0aCBpb2FwaWNfYWNrX29sZCBvbiEKKFhFTikgRW5hYmxpbmcgQVBJ
QyBtb2RlOiAgQ2x1c3RlcmVkLiAgVXNpbmcgMSBJL08gQVBJQ3MKKFhFTikgRU5BQkxJTkcgSU8t
QVBJQyBJUlFzCihYRU4pICAtPiBVc2luZyBvbGQgQUNLIG1ldGhvZAooWEVOKSBBbGxvY2F0ZWQg
Y29uc29sZSByaW5nIG9mIDEyOCBLaUIuCihYRU4pIFZNWDogU3VwcG9ydGVkIGFkdmFuY2VkIGZl
YXR1cmVzOgooWEVOKSAgLSBBUElDIE1NSU8gYWNjZXNzIHZpcnR1YWxpc2F0aW9uCihYRU4pICAt
IEFQSUMgVFBSIHNoYWRvdwooWEVOKSAgLSBFeHRlbmRlZCBQYWdlIFRhYmxlcyAoRVBUKQooWEVO
KSAgLSBWaXJ0dWFsLVByb2Nlc3NvciBJZGVudGlmaWVycyAoVlBJRCkKKFhFTikgIC0gVmlydHVh
bCBOTUkKKFhFTikgIC0gTVNSIGRpcmVjdC1hY2Nlc3MgYml0bWFwCihYRU4pICAtIFVucmVzdHJp
Y3RlZCBHdWVzdAooWEVOKSAgLSBBUElDIFJlZ2lzdGVyIFZpcnR1YWxpemF0aW9uCihYRU4pICAt
IFZpcnR1YWwgSW50ZXJydXB0IERlbGl2ZXJ5CihYRU4pICAtIFBvc3RlZCBJbnRlcnJ1cHQgUHJv
Y2Vzc2luZwooWEVOKSAgLSBWTUNTIHNoYWRvd2luZwooWEVOKSAgLSBWTSBGdW5jdGlvbnMKKFhF
TikgIC0gVmlydHVhbGlzYXRpb24gRXhjZXB0aW9ucwooWEVOKSAgLSBQYWdlIE1vZGlmaWNhdGlv
biBMb2dnaW5nCihYRU4pICAtIFRTQyBTY2FsaW5nCihYRU4pICAtIEJ1cyBMb2NrIERldGVjdGlv
bgooWEVOKSBIVk06IEFTSURzIGVuYWJsZWQuCihYRU4pIEhWTTogVk1YIGVuYWJsZWQKKFhFTikg
SFZNOiBIYXJkd2FyZSBBc3Npc3RlZCBQYWdpbmcgKEhBUCkgZGV0ZWN0ZWQKKFhFTikgSFZNOiBI
QVAgcGFnZSBzaXplczogNGtCLCAyTUIsIDFHQgooWEVOKSBCcm91Z2h0IHVwIDQ4IENQVXMKKFhF
TikgU2NoZWR1bGluZyBncmFudWxhcml0eTogY3B1LCAxIENQVSBwZXIgc2NoZWQtcmVzb3VyY2UK
KFhFTikgSW5pdGlhbGl6aW5nIENyZWRpdDIgc2NoZWR1bGVyCihYRU4pIERvbTAgaGFzIG1heGlt
dW0gMTM2OCBQSVJRcwooWEVOKSAgWGVuICBrZXJuZWw6IDY0LWJpdCwgbHNiCihYRU4pICBEb20w
IGtlcm5lbDogNjQtYml0LCBQQUUsIGxzYiwgcGFkZHIgMHgxMDAwMDAwIC0+IDB4NGEwMDAwMAoo
WEVOKSBQSFlTSUNBTCBNRU1PUlkgQVJSQU5HRU1FTlQ6CihYRU4pICBEb20wIGFsbG9jLjogICAw
MDAwMDA0MDIwMDAwMDAwLT4wMDAwMDA0MDI4MDAwMDAwICg4MzQ1NTgwIHBhZ2VzIHRvIGJlIGFs
bG9jYXRlZCkKKFhFTikgIEluaXQuIHJhbWRpc2s6IDAwMDAwMDQwN2Q3ZWMwMDAtPjAwMDAwMDQw
N2ZmZmY2OWUKKFhFTikgVklSVFVBTCBNRU1PUlkgQVJSQU5HRU1FTlQ6CihYRU4pICBMb2FkZWQg
a2VybmVsOiBmZmZmZmZmZjgxMDAwMDAwLT5mZmZmZmZmZjg0YTAwMDAwCihYRU4pICBQaHlzLU1h
Y2ggbWFwOiAwMDAwMDA4MDAwMDAwMDAwLT4wMDAwMDA4MDA0MDAwMDAwCihYRU4pICBTdGFydCBp
bmZvOiAgICBmZmZmZmZmZjg0YTAwMDAwLT5mZmZmZmZmZjg0YTAwNGI4CihYRU4pICBQYWdlIHRh
YmxlczogICBmZmZmZmZmZjg0YTAxMDAwLT5mZmZmZmZmZjg0YTJhMDAwCihYRU4pICBCb290IHN0
YWNrOiAgICBmZmZmZmZmZjg0YTJhMDAwLT5mZmZmZmZmZjg0YTJiMDAwCihYRU4pICBUT1RBTDog
ICAgICAgICBmZmZmZmZmZjgwMDAwMDAwLT5mZmZmZmZmZjg0YzAwMDAwCihYRU4pICBFTlRSWSBB
RERSRVNTOiBmZmZmZmZmZjgzMDcyMWMwCihYRU4pIERvbTAgaGFzIG1heGltdW0gNDggVkNQVXMK
KFhFTikgSW5pdGlhbCBsb3cgbWVtb3J5IHZpcnEgdGhyZXNob2xkIHNldCBhdCAweDQwMDAgcGFn
ZXMuCihYRU4pIFNjcnViYmluZyBGcmVlIFJBTSBpbiBiYWNrZ3JvdW5kCihYRU4pIFN0ZC4gTG9n
bGV2ZWw6IEVycm9ycyBhbmQgd2FybmluZ3MKKFhFTikgR3Vlc3QgTG9nbGV2ZWw6IE5vdGhpbmcg
KFJhdGUtbGltaXRlZDogRXJyb3JzIGFuZCB3YXJuaW5ncykKKFhFTikgKioqIFNlcmlhbCBpbnB1
dCB0byBET00wICh0eXBlICdDVFJMLWEnIHRocmVlIHRpbWVzIHRvIHN3aXRjaCBpbnB1dCkKKFhF
TikgRnJlZWQgNjI0a0IgaW5pdCBtZW1vcnkK

--------------FsVuRGpDg0hCPbc1SuNfHgGC--


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 07:50:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 07:50:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602100.938478 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgh7K-0007av-2m; Thu, 14 Sep 2023 07:50:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602100.938478; Thu, 14 Sep 2023 07:50:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgh7K-0007am-05; Thu, 14 Sep 2023 07:50:26 +0000
Received: by outflank-mailman (input) for mailman id 602100;
 Thu, 14 Sep 2023 07:50:24 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgh7I-0007ZJ-5F; Thu, 14 Sep 2023 07:50:24 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgh7I-0008D1-27; Thu, 14 Sep 2023 07:50:24 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgh7H-0004BZ-I6; Thu, 14 Sep 2023 07:50:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgh7H-0007o9-Hb; Thu, 14 Sep 2023 07:50:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=e3BXT1ve7ju6lktQMB8pgg+UJadxRV9daSfNGl9nylU=; b=oDlI0Jy5WjgceUBvEXy0K0xMah
	rui1UO8Ayy8WmuYG6sSgQT5i6p3TwyWA9IZM8wx5bAHXAA8uKQEcqT7GdVxChDfDR8Oeoh/gcp8aY
	K4jm8zRKyvvGa+Bpn6/qOMfAi7wjn4WxIMISmyrh2wMpCod4bdd2ZFWqTT0Nw9HyGlJA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-182999-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 182999: regressions - trouble: broken/fail/pass
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:<job status>:broken:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:host-install(5):broken:regression
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=aed8aee11130a954356200afa3f1b8753e8a9482
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 14 Sep 2023 07:50:23 +0000

flight 182999 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/182999/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm    <job status>            broken
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 5 host-install(5) broken REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                aed8aee11130a954356200afa3f1b8753e8a9482
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   17 days
Failing since        182544  2023-08-28 20:42:13 Z   16 days   30 attempts
Testing same since   182999  2023-09-13 22:43:21 Z    0 days    1 attempts

------------------------------------------------------------
2282 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 broken  
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary

broken-job test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm broken
broken-step test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm host-install(5)

Not pushing.

(No revision log; it would be 277307 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 07:58:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 07:58:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602108.938487 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qghFE-0002OG-SL; Thu, 14 Sep 2023 07:58:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602108.938487; Thu, 14 Sep 2023 07:58:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qghFE-0002O9-Pm; Thu, 14 Sep 2023 07:58:36 +0000
Received: by outflank-mailman (input) for mailman id 602108;
 Thu, 14 Sep 2023 07:58:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qghFD-0002O3-8i
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 07:58:35 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2060b.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::60b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 801d8774-52d4-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 09:58:33 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB6917.eurprd04.prod.outlook.com (2603:10a6:20b:109::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 07:58:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 07:58:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 801d8774-52d4-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MPtMu+lnC0PsWYhchkwbxMiyzBrMUUZHUGGHRmYCvags76jAEfKV2/5VhT2LQtkkqN4zJJrmcoo3DIyearEmNrJUTi06w807fWzm+wLWQnzMdllny0TMdLYdvZS0zgzHgFgFtJJoyHItg9WpDQlEq66agaVquqw1gR8XaCSCksvdPIhj5b+9q/3M9yBSpPiGSA5QA+zJ6VWGHAJEBbUyD5c7acMH8xHMlOmOFw76IfvBYYNPQmzS/+rYMSUT1j0rSslxpSNHSoTjdcTjfLx6noBU95u2vlqjERSTOcGfXIDXjiizt2AbM/PAEmMloMvZCA54VYUi5/cXgKxhfFXXmQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rzGlRzfDDIiJ9Wk1up/xdP3rqGawsHI8yBrKmgJSLIo=;
 b=bMatiaHrH7SsCd+Kkp7r6Iyc30TZ3/8ae6e3rigto7LRgetrrWJaZycw7uKlfz9mUzSrcH20WwT0KvbYpf4xebkR38NjearRc7mqY7k/HoLB1CFx65+/2VKN18cRl2XWZoLAuh/P11ruJiAKHw+hxfHVT0fizaGwWGxHMxHgpYD9x0EtcdtgKZcbBBWzFcpq7KfuAmZdOrIi+uXv/7qyZCAy3rYh7mREjqvBCxPCthi7U3BsiC0tb54H0FSEzsWTKg3evQIQcl9Y6u1MvMRHSD/tBmr+lO3fbjDK+X1v0zAqpahLiXpJjXXztKic0GmAQjfbZ8KL8bkeWnnPP20lXg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rzGlRzfDDIiJ9Wk1up/xdP3rqGawsHI8yBrKmgJSLIo=;
 b=eMXJJY1xOb2CbvZgUksjtd2V88NUAcCYU3xpPKXx8tqtVjZ/m/nAqIWQS54IfIWK/+QEBktovbOGsQNnO8cC4+jmbYjD49030qOmAOjwmXZIBd2x8XZniO6YVLjonbIEcSJHO/CjsCklVy6GjWK2kXSlH9vfKqkbkNwO8goLcfd0lC6C/7lKqSx0Ozl4BVnfHDIDjMhOUerXBoUrGL9Jvd4foRDIcHxrp8iTCJrZYQryhzKwpCe1CpNwIfCKNqwnWMtJ9N1N3wOw3+HyLIvg8CPlODyx+nYPaTgbuvC0ixxmunNX5WPw+SNXqfRQNvPX/kzScmTdlQ+x1ljul67CcQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e12f46d9-25eb-d564-4cb7-0e476e741725@suse.com>
Date: Thu, 14 Sep 2023 09:58:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 4/8] x86/spec-ctrl: Extend all SPEC_CTRL_{ENTER,EXIT}_*
 comments
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-5-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230913202758.508225-5-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0157.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a2::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM7PR04MB6917:EE_
X-MS-Office365-Filtering-Correlation-Id: 0f9c48cb-5eca-4945-a42d-08dbb4f8617b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gSgGrKxqMdNPJJpMvYf/YJ+3bjKXI4d23/tcclG2Tyw1fjjud5YU9KxifinHV1k6q0FGZrdTKeWOjUqSJO6eBhT5lkbIjMoC9NTzME1IARTCSUDvLKE/ocxZ7nZXHx/aoTEJxuv5CuRKiFkU2oB+0yhP45V+0jbMT3Wbewu9UPsb+4j1wJGEbKurpbLoKBRMr+dBoAiOor5SY8C+TpYn8A2jWTOZGXCDPHR7l04EBHu5Y3zAPK4ijOspU3w4sa1bx9GuhFTJzjt/WsERH9vwVVtSkozYIjUQ2Mctz0z6cXQyoUlz43AqjoKRCwYHySQnlvM4REtF3xs07s5DV9gN/H6qJz+o9OyUOahvOO1yT9DRtPzrlsKTYuRqfGwOwiRJKTuDGH1a3Yl4tJTYY+glWzF/4p8yax+Znl1DfwirCyKhyDf/1mfntRIIHwHjy1JxxAyaQDIl1ipY6quCaT0KFX8zlK4dW6FyqsrMjPLh6zXMKwUQbwONCssemsOGiqfdtO6fNYFnv8sWlIvYzJUfHYgYqqKbAaQQjSZ6mlhJ64iaW2zH9PFy9bOQG6u1BSxQQNINbwjAvedImoUh7Qtu398R+mDTq+ioHfcHw0o+vYh/RdRx/qTyhPSGhxGi4hWV0IhMegBIkTD1BMLAY6XUog==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(366004)(346002)(396003)(136003)(39860400002)(186009)(451199024)(1800799009)(31686004)(478600001)(38100700002)(6486002)(6506007)(26005)(6512007)(6666004)(53546011)(66556008)(2906002)(31696002)(4326008)(2616005)(5660300002)(8676002)(54906003)(66946007)(36756003)(6916009)(66476007)(41300700001)(316002)(8936002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WHpEakZGRXYvdW9GWFlmS3VhQjFJdnFFYkRxQTlxMnQ5NkxRNFV1TFZmZmpZ?=
 =?utf-8?B?MUFQZEhQUWxpWTErbS9aNHpMQXduU0M3OHpOK3AxcTEwNTNhdFhqWTJxdjRV?=
 =?utf-8?B?Y2tkdEYzQ3ZzUERtUzRURXF0Wmt4dU9RRGl5dEZXRUtZUjV3dStXYm1oU096?=
 =?utf-8?B?TXdZNkprOGtqMk54N1ZhNTd1ck91OUc1NC9rYWdOVUQ1dlF2Q2JqZ1VYdzFG?=
 =?utf-8?B?clhycXZHYkdHU0diZjIyRHVvaDcwWnNnWnNKaDBMNStGMUZXVFoxZ0U5QlZs?=
 =?utf-8?B?MG1CWWt6M1d4NUVualJNeVNyYTNldkIxcVpnSHZtc2x6S0djVTlBdGo1T01M?=
 =?utf-8?B?Z0NEdGw4eFBwLzJPem5VWmNKWXhBaVNwUlZ6Rm1xZXRCYUd1VHIvSGo3UWM3?=
 =?utf-8?B?UkNIWW9zenRuSEtSRndSbVBYMG1TbFI0SUVjNFBjb0U0OEtycWsvSWtUVTdY?=
 =?utf-8?B?MFpodTBpU1pEUUltNU5mTHV1dzJKYnBraDE5a05scTV0QVhYU1lkRkdBbWRi?=
 =?utf-8?B?c3pWOWJidWpWeW83RSs1TGV2NGNrV3pOTGZ2V2VCUDdjVjhkKzA4VzByQmFo?=
 =?utf-8?B?UFYyYmZjdTBXZHhxUDNiWXNER0x2Nzg4NVRXVU1RVE5GYmdsTzI1cmxCOHdu?=
 =?utf-8?B?Uk5hRWlNd3JBZDVKNW9vcmNQY3pCNDlkMjdJZjBSRlkwSXloTnVyS2NqR2pT?=
 =?utf-8?B?RnZQVlZxMVZhUGlmU0RrNm9OL09iYWJoa2l5MmNrTlVhTGxvRW1MUTBhNzVZ?=
 =?utf-8?B?NlRCS3RuSnFaMEgrdEgraGt6RHVMdGJReHBlSWp0THdVMDA0NytuSXdNSUg3?=
 =?utf-8?B?bGJQcHA2NEROMW8zcWNzZnRXUzVnSjFXQkpUb1A1SkwrVUNyZ2ZicGFId2Vz?=
 =?utf-8?B?WmZOSTZIVmNoMVhESzVhb1ZkZ2RFODA0WC8vNE5EYjZDNThpSkdpbm40NU5C?=
 =?utf-8?B?K3ZLaW9BcFBGTmtOc2c0UDdEL3hMelJpTkxaWEFwK0RPZ3FaaEt0SkI3cFUz?=
 =?utf-8?B?ZVkzZzlPbXBFalc0N3YxbUo2bU1Mck9mNm9RdjhIU09UenZlcytYRGxkd2lG?=
 =?utf-8?B?WVJGMHNNT290Vms1U2lBZVQ5WENqRW5Ic3ZxN3gwRE5hdHFCNElNdzlZZUtw?=
 =?utf-8?B?SW12SGlMdDNDdlhVZGRXeXRMY1hUeU84L0QxeEpZc2l1WmdCdE42QmZBbTI0?=
 =?utf-8?B?VnZhY09Fb0x4d3h3amN2aXpiZ3NSQ0pBdGdUM0tkTG1DQWkyV1NjV3VDRnJw?=
 =?utf-8?B?bFVjMG9adzUvcG4yZzZxZm1panViNWdNeTg1YnNRK0NNOWdVSDZ0Q2F2MEhN?=
 =?utf-8?B?elU4d0hLcmlvUnEzUFl6RjVZc1pQNU9iZDVNaEs1a3BlbmdsQmFJcUo3VmNN?=
 =?utf-8?B?RDJCT3VqbWhzN1ZETFZGWkJKRHJMdUtNa256NWVLdWtyRkRKMWhOb3lBMzBG?=
 =?utf-8?B?cllNRk1hRHNreFVrMG53WHBiS3BSRkQ5S0I2aTl6L2ZNRWJkVitQcDRLYysx?=
 =?utf-8?B?ODRmTG9RTCsxN2JFcVA1NnNrOHExY3N6WVptTWxDdXB1anlSZEhmZklmdkt6?=
 =?utf-8?B?aHVKMUR3akJqWGx0OFpKbFFLSWFoRFhEZmlMcUoxUW5aNDNoSHVjbnZDTWYy?=
 =?utf-8?B?OGhVcGdzSHF5OHd4QldvSXh3VGRoQnVpZUxWVUdkMmxBZXk4dS9QWTE5WFVi?=
 =?utf-8?B?bWRhbVErQmV0RHV5am1GTGRwcmx1VkZHZ0UxRHV2L2xBdU5hTkthNXVDQk96?=
 =?utf-8?B?SzFOZ3MyZ0xhc081Uld3ZGYvWTlramJaTEVyby96Z2pBN0JMNUFxT0huc0No?=
 =?utf-8?B?eXJSTHpPMlIyZCtjV3hkaDM1RC9sVUVTcG1nQjY4OXZEdnlhdUhQTGpJelZR?=
 =?utf-8?B?OUFzbzBWTEZCUVJISWFGeWdrMmlXS0ZHMHpkRmpSa0g2QkZwRTM0RDVJSW9k?=
 =?utf-8?B?TU1ncVpXQmJwVkdacUJvUTliRHNFNlRxTnAvOHI3S1RlaDBLV3l4cWhVOWdi?=
 =?utf-8?B?TFVMcUZ5SU5MbkhHL2lkbWZlNmdCaHg3QUFMdy9KTk1idXBLSk5acHpodEZ2?=
 =?utf-8?B?MldMTUJjZDgzazhjOXJFVWRIK0JHaEFhcHkvd2FmMHpOVEtLdEJRTVVQS20x?=
 =?utf-8?Q?V9PS+WyypTBjV27wO7hL9DACd?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0f9c48cb-5eca-4945-a42d-08dbb4f8617b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 07:58:28.4801
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9StHN2a8IKEjGmGElAvdrTnntKyquMwIFJg2tWT0/z4HRVexnkJd6rCTdOBzAmUh4Apka0wyJrkywhjkyLWt0Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6917

On 13.09.2023 22:27, Andrew Cooper wrote:
> --- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
> +++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
> @@ -218,7 +218,10 @@
>      wrmsr
>  .endm
>  
> -/* Use after an entry from PV context (syscall/sysenter/int80/int82/etc). */
> +/*
> + * Used after a synchronous entry from PV context.  SYSCALL, SYSENTER, INT,
> + * etc.  Will always interrupt a guest speculation context.
> + */
>  .macro SPEC_CTRL_ENTRY_FROM_PV
>  /*
>   * Requires %rsp=regs/cpuinfo, %rdx=0

For the entry point comments - not being a native speaker -, the use of
"{will,may} interrupt" reads odd. You're describing the macros here,
not the the events that led to their invocation. Therefore it would seem
to me that "{will,may} have interrupted" would be more appropriate.

> @@ -233,7 +236,11 @@
>          X86_FEATURE_SC_MSR_PV
>  .endm
>  
> -/* Use in interrupt/exception context.  May interrupt Xen or PV context. */
> +/*
> + * Used after a synchronous interrupt or exception.  May interrupt Xen or PV
> + * context, but will not interrupt Xen with a guest speculation context,
> + * outside of fatal error cases.
> + */
>  .macro SPEC_CTRL_ENTRY_FROM_INTR
>  /*
>   * Requires %rsp=regs, %r14=stack_end, %rdx=0

I find "synchronous" here odd, when this includes interrupts. Below you
at least qualify things further, by saying "fully asynchronous with
finding sane state"; I think further qualification is warranted here as
well, to avoid any ambiguity.

> @@ -319,7 +334,14 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>      UNLIKELY_END(\@_serialise)
>  .endm
>  
> -/* Use when exiting to Xen in IST context. */
> +/*
> + * Use when exiting from any entry context, back to Xen context.  This
> + * includes returning to other SPEC_CTRL_{ENTRY,EXIT}_* regions with
> + * unsanitised state.
> + *
> + * Because we might have interrupted Xen beyond SPEC_CTRL_EXIT_TO_$GUEST, we
> + * must treat this as if it were an EXIT_TO_$GUEST case too.
> + */
>  .macro SPEC_CTRL_EXIT_TO_XEN
>  /*
>   * Requires %rbx=stack_end

Is it really "must"? At least in theory there are ways to recognize that
exit is back to Xen context outside of interrupted entry/exit regions
(simply by evaluating how far below stack top %rsp is).

> @@ -344,6 +366,9 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>      wrmsr
>  
>  .L\@_skip_sc_msr:
> +
> +    /* TODO VERW */
> +
>  .endm

I don't think this comment is strictly necessary to add here, when the
omission is addressed in a later patch. But I also don't mind its
addition.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 08:16:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 08:16:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602119.938497 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qghWM-0001ie-Qm; Thu, 14 Sep 2023 08:16:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602119.938497; Thu, 14 Sep 2023 08:16:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qghWM-0001iX-Nk; Thu, 14 Sep 2023 08:16:18 +0000
Received: by outflank-mailman (input) for mailman id 602119;
 Thu, 14 Sep 2023 08:16:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eUwO=E6=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qghWL-0001iR-KQ
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 08:16:17 +0000
Received: from mail-pl1-x62b.google.com (mail-pl1-x62b.google.com
 [2607:f8b0:4864:20::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f8a70104-52d6-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 10:16:15 +0200 (CEST)
Received: by mail-pl1-x62b.google.com with SMTP id
 d9443c01a7336-1c3887039d4so5486275ad.1
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 01:16:15 -0700 (PDT)
Received: from leoy-huanghe.lan ([128.1.74.161])
 by smtp.gmail.com with ESMTPSA id
 e4-20020a170902b78400b001b8b73da7b1sm933900pls.227.2023.09.14.01.16.11
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 01:16:13 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f8a70104-52d6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694679373; x=1695284173; darn=lists.xenproject.org;
        h=content-disposition:mime-version:message-id:subject:cc:to:from:date
         :from:to:cc:subject:date:message-id:reply-to;
        bh=erZc72uNW5LSdWCcey59N0Lei+G74ikjhkTi45NnJ9I=;
        b=r0o3UYcQqYqfwlAuyVSzLuPhsw/Kar9INQ0NkHffLSgb44Dh0wnQWkoJ+g1DcGLV9g
         K70zs23+VImMq/+2qrWPhygglcyVZLPiWhbQq0VWbihd3jhPWm7JPvzrkDVx/gsMMMDQ
         /JJGFgv6254/6Y5LDGC85uGHX98+Ki/MjUwxNk9DW0KP7RS17Um3B25QlA8w7rosHVTn
         LHM9dXPkEa/sK3G6i/B9GlMU1KJOeLGYYh7K9qUrap8zZHlD0aDCnEMwvY4UZiARBlxr
         4i7FHtPIAsZz2nzNUL5nKkBs6SNbJt+3Ug6Acwn9HYlfkJA5mNAt8TmcqDIi3AhAfQns
         XVMg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694679374; x=1695284174;
        h=content-disposition:mime-version:message-id:subject:cc:to:from:date
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=erZc72uNW5LSdWCcey59N0Lei+G74ikjhkTi45NnJ9I=;
        b=XOf9eZjlm9rbT2kg+sRMcTTc6sNlscLkl2ydXLJZigNz+wy5j6V97SqEkqsH6x0vZc
         vKp3JjTHRx9ghXE5StfE/n5SGHAnHYa5G6ETwhCXKr8930WG/8b8a/LhYVBl/CzdWWZX
         F3tgO8M4TjZRQO7w3/xhAkIWTq7YgcCU5MpXweR9Kfg1DYBMzDXWDEdijg31mWsItTun
         3PXNCiOlPBXbnB3faYbzMFiIiqwfMwOFvEi8Tpynbps0UuNyW9lhQHGOwj3npXn3CmxJ
         +my5oym//JkyONa8M2YHhIoZ6vcFH0WOiRpuMAcQAUsE0MlW8qkUkUwj/5LyOXj6kkFN
         3bAQ==
X-Gm-Message-State: AOJu0YyHYh8vuH/bH6O2AtGyzeAQYxn+jFICXyCdIC6DQaQjJTEmoAys
	5kUQlDuIrU07GLNbqQKyUoUhzGg2Kl+0o14u9Dtc84Dx
X-Google-Smtp-Source: AGHT+IHztyVwM9QaGgqtaVcJfKKKaoA5VqokkMVCUZQBLjoEzgR1u9S3z89i5dvZf//fnQqEl2vJTg==
X-Received: by 2002:a17:903:1cc:b0:1c3:aef9:872e with SMTP id e12-20020a17090301cc00b001c3aef9872emr4519734plh.34.1694679373638;
        Thu, 14 Sep 2023 01:16:13 -0700 (PDT)
Date: Thu, 14 Sep 2023 16:16:07 +0800
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Henry Wang <Henry.Wang@arm.com>, Penny Zheng <penny.zheng@arm.com>
Subject: RFC: arm64: Handling reserved memory nodes
Message-ID: <20230914081607.GA1400758@leoy-huanghe.lan>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Hi all,

I'd like to discuss for how to handle the reserved memory nodes in DT
binding on Xen / Arm64.  Note, now I am using DTB when boot Xen but
not UEFI/ACPI (ACPI is disabled in this case).

## Failure

I ported Xen on a platform, after the kernel booting, the Xen hypervisor
reports error:

  (XEN) arch/arm/p2m.c:2202: d0v0: Failing to acquire the MFN 0x1a02dc

This error is caused by kernel using an invalid memory frame number
0x1a02dc, we can convert it to the address:

  0x1a02dc << PAGE_SHIFT = 0x1_a02d_c000

## Reason

Two important things we need to check.  One is what's the DT binding
passed from the bootloader to Xen hypervisor, and the second thing is
what's the DT binding passed from Xen hypervisor to kernel.

We can see the bootloader passes below memory nodes to Xen hypervisor:

  (XEN) RAM: 0000000020000000 - 00000000bfffffff
  (XEN) RAM: 00000001a0000000 - 00000002ffffffff
  (XEN)
  (XEN) MODULE[0]: 0000000020100000 - 0000000020265000 Xen
  (XEN) MODULE[1]: 0000000023000000 - 0000000023024000 Device Tree
  (XEN) MODULE[2]: 0000000024000000 - 0000000028000000 Kernel
  (XEN)  RESVD[0]: 0000000020000000 - 000000002000ffff
  (XEN)  RESVD[1]: 0000000040000000 - 000000005fffffff
  (XEN)  RESVD[2]: 00000001a0000000 - 00000001bfffffff
  (XEN)  RESVD[3]: 000000002e000000 - 000000002fffffff

We can see the second DDR section is:

  [0x0000_0001_a000_0000 .. 0x0000_0002_ffff_ffff]

And there have reserved memory section is:

  [0x0000_0001_a000_0000 .. 0x0000_0001_bfff_ffff]

When register the boot memory sections, dt_unreserved_regions() will
remove all reserved memory sections, which means the section
[0x0000_0001_a000_0000 .. 0x0000_0001_bfff_ffff] is not managed by Xen
hypervisor at all.  If later kernel uses any pages in this range, Xen
will report the error.

But Dom0 kernel's memory nodes are:

  [    0.000000] Early memory node ranges
  [    0.000000]   node   0: [mem 0x0000000020000000-0x000000002000ffff]
  [    0.000000]   node   0: [mem 0x000000002e000000-0x000000002fffffff]
  [    0.000000]   node   0: [mem 0x0000000040000000-0x000000005fffffff]
  [    0.000000]   node   0: [mem 0x0000000060000000-0x0000000077bfffff]
  [    0.000000]   node   0: [mem 0x00000001a0000000-0x00000001bfffffff]

Based on this log, we can know Xen hypervisor passes the reserved memory
regions to Dom0 kernel, and when Dom0 kernel tries to allocate pages
from these reserved memory regions, Xen hypervisor reports error.

For more specific, this issue is cause by the commit 248faa637d ("xen/arm:
add reserved-memory regions to the dom0 memory node").  When Xen
hypervisor synthesizes DT nodes, it calls below function to generate
_normal_ memory nodes for the reserved memory regions.

  make_memory_node()
  {
     /*
      * Create a second memory node to store the ranges covering
      * reserved-memory regions.
      */
     res = make_memory_node(d, kinfo->fdt, addrcells, sizecells,
                            &bootinfo.reserved_mem);
     if ( res )
         return res;

     ...
  }

## Fixes

I think it's wrong to add the reserved memory regions into the DT
binding as normal memory nodes for Dom0 kernel.  On the other hand, we
cannot simply remove these reserved memory regions and don't pass to
Dom0 kernel - we might reserve memory for specific purpose, for example,
ramoops [1] for kernel debugging.

The right thing to do is to keep these reserved memory nodes to Dom0
kernel.  So one task is to record properties for these reserved memory
node name and properties and pass to Dom0 kernel.

The difficulty is how we can avoid allocate these reserved memory
regions in Xen hypervisor.  We cannot register the reserved memory
into the boot pages, otherwise, the reserved memory might be allocated
in the early phase.  But we need to register these pages into the
frame management framework and reserve them in the first place, so
that we can allow Dom0 kernel to use them.  (I checked a bit the static
memory mechanism, seems to me we cannot use it to resolve this issue).

Before I proceed, I'd like to check if Xen community has related
discussion or not?  Or any suggestions or input will be appreciate!

Leo

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts#n54


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 08:30:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 08:30:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602132.938511 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qghjp-00032z-1Q; Thu, 14 Sep 2023 08:30:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602132.938511; Thu, 14 Sep 2023 08:30:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qghjo-00032s-Ux; Thu, 14 Sep 2023 08:30:12 +0000
Received: by outflank-mailman (input) for mailman id 602132;
 Thu, 14 Sep 2023 08:30:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Ae2/=E6=redhat.com=aesteve@srs-se1.protection.inumbo.net>)
 id 1qghjn-00032m-C1
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 08:30:11 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e9e65521-52d8-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 10:30:09 +0200 (CEST)
Received: from mail-pj1-f70.google.com (mail-pj1-f70.google.com
 [209.85.216.70]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-668-8P0gNERCP1mQLLWoEi6OOA-1; Thu, 14 Sep 2023 04:30:04 -0400
Received: by mail-pj1-f70.google.com with SMTP id
 98e67ed59e1d1-26d43d10ce5so643198a91.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 01:30:04 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e9e65521-52d8-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694680208;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=yA6YEmooBezgU/7PUR3h+x7ndZimwJxchJ/tlSKweSU=;
	b=ccTps/+17rAWDrUSrLnyk6xob8fUN/dfNSHM5786VreNsqy3leRMBPs02T6ffIP3Usa93U
	FIRvvqBg3jR8SP34ztj/xsqfcY3JKDXWPis8UAg0kfNfNqj7j+OMU5wYEqIrsuT+oCpc72
	rLaI+dR0Zbo+rvo1W7OI359easILMj8=
X-MC-Unique: 8P0gNERCP1mQLLWoEi6OOA-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694680203; x=1695285003;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=yA6YEmooBezgU/7PUR3h+x7ndZimwJxchJ/tlSKweSU=;
        b=IPAewgj1aQAHUQVwHhCkGoiAY0FuVUVgGn2NvsAbuRtvkeA8E08ohX5mKvV7sktlQi
         BYBOatn/oFGj4LPYcmC8VbofhHMJTpW2MgbhHU8kwltIgif9rdRcG4NQyJ+Am1h9gCH2
         W6fBHTeTWkzmWzcqzf0lK9aoKnXXe8uSLh3kqhjEN3OlHdXZLcNm9lsUMheiIH2rqyE4
         i00hdOF88i6pDJViLrDQInXKHklaTe1giFbm9vdtj2jr4BKsvTRs/Xh1yAn8mmdOjjXe
         8xoKO9H15Xtd1Ohuxr7ICM/zr4RMAe0H1O7T0GqJixhp6rjMZw+YxcFMjYUBht2Hpyn9
         KvSg==
X-Gm-Message-State: AOJu0YzboHekvjyTi868rygFXYLBiGxeQH8FBRf2Dbs9tzuDVwDkS/ao
	7r1gFbEdRseC8gDTyetOk+EMcSk2NnAHXND48BMlOQFzUoILfQYHcKpN+8QXy4Ok+FEL1Fpqaao
	g5DM0IcXVDwlEJ1gq5qEBTjQgYcdhJeHjLaM1QGKCxMw=
X-Received: by 2002:a17:90a:8c88:b0:269:18f5:683e with SMTP id b8-20020a17090a8c8800b0026918f5683emr4549204pjo.3.1694680203467;
        Thu, 14 Sep 2023 01:30:03 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IHvpnIrI0fs8uswe/o8Tr9VmbnQC1HIMGfwSGp6+i8vBzb9EeSU1mTm5ednofrRjwOe2msFRh39ayPz1qPNx1c=
X-Received: by 2002:a17:90a:8c88:b0:269:18f5:683e with SMTP id
 b8-20020a17090a8c8800b0026918f5683emr4549172pjo.3.1694680203144; Thu, 14 Sep
 2023 01:30:03 -0700 (PDT)
MIME-Version: 1.0
References: <20230831093252.2461282-1-ray.huang@amd.com> <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com>
 <11c227e8-a464-41ce-a435-82c570746388@daynix.com> <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
 <cf99ac00-6f48-4778-b319-6079a931ba5d@daynix.com> <CADSE00+6zcT7iKR0JW1Bk8es6HtBpzAKa9JW6u5yyjDoLPw2KQ@mail.gmail.com>
 <5e88f5d5-5aa2-4052-b250-69c2a443344f@daynix.com> <CADSE00+BUq-6jKH3v2PYNThn+9Z4UCFcr3Cv9Z48eUX0b=6ymA@mail.gmail.com>
 <3918c96c-f106-494d-8e97-6d86cef8df27@daynix.com> <CADSE00LNYm+vKaYwnTAdECGUXPCfiJ7aLqszDuqSzCLLhVOHhQ@mail.gmail.com>
 <0adaf816-e050-43c3-8284-fc41627543ef@daynix.com>
In-Reply-To: <0adaf816-e050-43c3-8284-fc41627543ef@daynix.com>
From: Albert Esteve <aesteve@redhat.com>
Date: Thu, 14 Sep 2023 10:29:51 +0200
Message-ID: <CADSE00Kyid+=FkkopSGDAyeJ_MY2exDdxoPf18pzthKy70kkKg@mail.gmail.com>
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>, 
	"Michael S . Tsirkin" <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, 
	Antonio Caggiano <antonio.caggiano@collabora.com>, 
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, 
	Dmitry Osipenko <dmitry.osipenko@collabora.com>, =?UTF-8?B?QWxleCBCZW5uw6ll?= <alex.bennee@linaro.org>, 
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
	Gurchetan Singh <gurchetansingh@chromium.org>, "ernunes@redhat.com" <ernunes@redhat.com>, 
	=?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= <philmd@linaro.org>, 
	Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	"Deucher, Alexander" <Alexander.Deucher@amd.com>, "Koenig, Christian" <Christian.Koenig@amd.com>, 
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>, 
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>, 
	"Huang, Honglei1" <Honglei1.Huang@amd.com>, "Zhang, Julia" <Julia.Zhang@amd.com>, 
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: multipart/alternative; boundary="00000000000084498506054d7be3"

--00000000000084498506054d7be3
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 14, 2023 at 9:17=E2=80=AFAM Akihiko Odaki <akihiko.odaki@daynix=
.com>
wrote:

> On 2023/09/13 23:18, Albert Esteve wrote:
> >
> >
> > On Wed, Sep 13, 2023 at 3:43=E2=80=AFPM Akihiko Odaki <akihiko.odaki@da=
ynix.com
> > <mailto:akihiko.odaki@daynix.com>> wrote:
> >
> >     On 2023/09/13 21:58, Albert Esteve wrote:
> >      >
> >      >
> >      > On Wed, Sep 13, 2023 at 2:22=E2=80=AFPM Akihiko Odaki
> >     <akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>
> >      > <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>>> wrote:
> >      >
> >      >     On 2023/09/13 20:34, Albert Esteve wrote:
> >      >      >
> >      >      >
> >      >      > On Wed, Sep 13, 2023 at 12:34=E2=80=AFPM Akihiko Odaki
> >      >     <akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>
> >     <mailto:akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>>
> >      >      > <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>
> >      >     <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>>>> wrote:
> >      >      >
> >      >      >     On 2023/09/13 16:55, Albert Esteve wrote:
> >      >      >      > Hi Antonio,
> >      >      >      >
> >      >      >      > If I'm not mistaken, this patch is related with:
> >      >      >      >
> >      >      >
> >      >
> >     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html
> >     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.htm=
l
> >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>
> >      >      >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>
> >      >      >      >
> >      >      >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>
> >      >      >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>>
> >      >      >      > IMHO, ideally, virtio-gpu and vhost-user-gpu both,
> >     would
> >      >     use the
> >      >      >      > infrastructure from the patch I linked to store th=
e
> >      >      >      > virtio objects, so that they can be later shared
> with
> >      >     other devices.
> >      >      >
> >      >      >     I don't think such sharing is possible because the
> >     resources are
> >      >      >     identified by IDs that are local to the device. That
> also
> >      >     complicates
> >      >      >     migration.
> >      >      >
> >      >      >     Regards,
> >      >      >     Akihiko Odaki
> >      >      >
> >      >      > Hi Akihiko,
> >      >      >
> >      >      > As far as I understand, the feature to export
> >     dma-bufs from the
> >      >      > virtgpu was introduced as part of the virtio cross-device
> >     sharing
> >      >      > proposal [1]. Thus, it shall be posible. When
> >     virtgpu ASSING_UUID,
> >      >      > it exports and identifies the dmabuf resource, so that
> >     when the
> >      >     dmabuf gets
> >      >      > shared inside the guest (e.g., with virtio-video), we can
> >     use the
> >      >     assigned
> >      >      > UUID to find the dmabuf in the host (using the patch that=
 I
> >      >     linked above),
> >      >      > and import it.
> >      >      >
> >      >      > [1] - https://lwn.net/Articles/828988/
> >     <https://lwn.net/Articles/828988/>
> >      >     <https://lwn.net/Articles/828988/
> >     <https://lwn.net/Articles/828988/>>
> >     <https://lwn.net/Articles/828988/ <https://lwn.net/Articles/828988/=
>
> >      >     <https://lwn.net/Articles/828988/
> >     <https://lwn.net/Articles/828988/>>>
> >      >
> >      >     The problem is that virtio-gpu can have other kind of
> >     resources like
> >      >     pixman and OpenGL textures and manage them and DMA-BUFs with
> >     unified
> >      >     resource ID.
> >      >
> >      >
> >      > I see.
> >      >
> >      >
> >      >     So you cannot change:
> >      >     g_hash_table_insert(g->resource_uuids,
> >      >     GUINT_TO_POINTER(assign.resource_id), uuid);
> >      >     by:
> >      >     virtio_add_dmabuf(uuid, assign.resource_id);
> >      >
> >      >     assign.resource_id is not DMA-BUF file descriptor, and the
> >     underlying
> >      >     resource my not be DMA-BUF at first place.
> >      >
> >      >
> >      > I didn't really look into the patch in-depth, so the code was
> >     intended
> >      > to give an idea of how the implementation would look like with
> >      > the cross-device patch API. Indeed, it is not the resource_id,
> >      > (I just took a brief look at the virtio specificacion 1.2), but
> the
> >      > underlying
> >      > resource what we want to use here.
> >      >
> >      >
> >      >     Also, since this lives in the common code that is not used
> >     only by
> >      >     virtio-gpu-gl but also virtio-gpu, which supports migration,
> >     we also
> >      >     need to take care of that. It is not a problem for DMA-BUF a=
s
> >      >     DMA-BUF is
> >      >     not migratable anyway, but the situation is different in thi=
s
> >     case.
> >      >
> >      >     Implementing cross-device sharing is certainly a possibility=
,
> >     but that
> >      >     requires more than dealing with DMA-BUFs.
> >      >
> >      >
> >      > So, if I understood correctly, dmabufs are just a subset of the
> >     resources
> >      > that the gpu manages, or can assign UUIDs to. I am not sure why
> >      > the virt gpu driver would want to send a ASSIGN_UUID for anythin=
g
> >      > that is not a dmabuf (are we sure it does?), but I am not super
> >     familiarized
> >      > with virtgpu to begin with.
> >
> >     In my understanding, an resource will be first created as OpenGL or
> >     Vulkan textures and then exported as a DMA-BUF file descriptor. For
> >     these resource types exporting/importing code is mandatory.
> >
> >     For pixman buffers (i.e., non-virgl device), I don't see a compelli=
ng
> >     reason to have cross-device sharing. It is possible to omit resourc=
e
> >     UUID feature from non-virgl device to avoid implementing complicate=
d
> >     migration.
> >
> >
> > I see, thanks for the clarification.
> > I would assume you could avoid the UUID feature for those resources, bu=
t
> > I will need to check the driver implementation. It is worth checking
> > though, if
> > that would simplify the implementation.
> >
> >
> >      > But I see that internally, the GPU specs relate a UUID with a
> >     resource_id,
> >      > so we still need both tables:
> >      > - one to relate UUID with resource_id to be able to locate the
> >      > underlying resource
> >      > - the table that holds the dmabuf with the UUID for cross-device
> >     sharing
> >      >
> >      > With that in mind, sounds to me that the support for cross-devic=
e
> >      > sharing could
> >      > be added on top of this patch, once
> >      >
> >     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html
> >     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.htm=
l
> >
> >      >
> >     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.htm=
l
> >     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.htm=
l
> >>
> >      > lands.
> >
> >     That is possible, but I think it's better to implement cross-device
> >     sharing at the same time introducing virtio-dmabuf.
> >
> >     The current design of virtio-dmabuf looks somewhat inconsistent; it=
's
> >     named "dmabuf", but internally the UUIDs are stored into something
> >     named
> >     "resource_uuids" and it has SharedObjectType so it's more like a
> >     generic
> >     resource sharing mechanism. If you actually have an implementation =
of
> >     cross-device sharing using virtio-dmabuf, it will be clear what kin=
d
> of
> >     feature is truly necessary.
> >
> >
> > Yeah, the file was named as virtio-dmabuf following the kernel
> > implementation. Also, because for the moment it only aims to share
> > dmabufs. However, virtio specs leave the virtio object defintion vague
> [1]
> > (I guess purposely). It is up to the specific devices to define what an
> > object
> > means for them. So the implementation tries to follow that, and
> > leave the contents of the table generic. The table can hold any kind of
> > object,
> > and the API exposes type-specific functions (for dmabufs, or others).
> In the guest kernel, the name "virtio_dma_buf" represents the interface
> between the *guest* kernel and *guest* user-space. It makes sense since
> the cross-device resource sharing is managed by the userspace and
> DMA-BUF is the only interface between them for this purpose.
>
> The situation is different for QEMU; QEMU interacts with backends using
> backend-specific interfaces (OpenGL/pixman) and virgl is capable to
> export textures as DMA-BUF. DMA-BUF is not universal in this sense. As
> such, we cannot just borrow the kernel-side naming but invent one.
>
> It is not a gpu-specific feature. It is a generic cross-device sharing
mechanism for virtio objects. In this case, virtio objects happen to be
dmabufs in this first iteration. Hence, the name.

virtio-gpu (and vhost-user-gpu) will use this feature only with virgl, that
is
fine, and transversal to the object-sharing mechanism. It allows
to share dmabufs in the host following how they are shared in the guest.
The virtgpu driver may call ASSIGN_UUID for other types of resources (not
sure,
but could be), but they will never be shared with other virtio devices.
So they are not too relevant. Also, the shared objects table could
potentially
be accessed from any virtio device, not only virtio-gpu or virtio-video.

What I am trying to say, is that the name focuses solely in its current
usage,
i.e., sharing dmabufs between virtio-gpu (as exporter), and virtio-video
(as importer).
If it grows to something more, imo it can be renamed later.

Regards,
Albert

--00000000000084498506054d7be3
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div><div dir=3D"ltr" class=3D"gmail_sign=
ature"><div dir=3D"ltr"><br></div></div></div></div><br><div class=3D"gmail=
_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, Sep 14, 2023 at 9:17=
=E2=80=AFAM Akihiko Odaki &lt;<a href=3D"mailto:akihiko.odaki@daynix.com">a=
kihiko.odaki@daynix.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_=
quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,=
204);padding-left:1ex">On 2023/09/13 23:18, Albert Esteve wrote:<br>
&gt; <br>
&gt; <br>
&gt; On Wed, Sep 13, 2023 at 3:43=E2=80=AFPM Akihiko Odaki &lt;<a href=3D"m=
ailto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com<=
/a> <br>
&gt; &lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blan=
k">akihiko.odaki@daynix.com</a>&gt;&gt; wrote:<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0On 2023/09/13 21:58, Albert Esteve wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; On Wed, Sep 13, 2023 at 2:22=E2=80=AFPM Akihi=
ko Odaki<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"mailto:akihiko.odaki@daynix.com" tar=
get=3D"_blank">akihiko.odaki@daynix.com</a> &lt;mailto:<a href=3D"mailto:ak=
ihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;<=
br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; &lt;mailto:<a href=3D"mailto:akihiko.odaki@da=
ynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;&gt;&gt; wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0On 2023/09/13 20:34, Alber=
t Esteve wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; On Wed, Sep 13, 2023=
 at 12:34=E2=80=AFPM Akihiko Odaki<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"mailto:akih=
iko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a> &lt;ma=
ilto:<a href=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.=
odaki@daynix.com</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a> &lt;mailto:<a href=3D"ma=
ilto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</=
a>&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; &lt;mailto:<a href=
=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix=
.com</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mail=
to:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a>=
<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;&gt;&gt;&gt; wrote:<b=
r>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0O=
n 2023/09/13 16:55, Albert Esteve wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; Hi Antonio,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; If I&#39;m not mistaken, this patch is related with:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lists.gnu.org/archive/html/qemu-=
devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https://l=
ists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive/html/q=
emu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https=
://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt; &lt;<a href=3D"https://lists.=
gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" t=
arget=3D"_blank">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0=
1853.html</a> &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/=
2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https://lists.g=
nu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt; &lt;<a href=3D"https://lists.=
gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" t=
arget=3D"_blank">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0=
1853.html</a> &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/=
2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https://lists.g=
nu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt; &lt;<a href=3D"https://lists.=
gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" t=
arget=3D"_blank">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0=
1853.html</a> &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/=
2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https://lists.g=
nu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt;&gt;&gt;<br=
>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; IMHO, ideally, virtio-gpu and vhost-user-gpu both,<br>
&gt;=C2=A0 =C2=A0 =C2=A0would<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0use the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; infrastructure from the patch I linked to store the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; virtio objects, so that they can be later shared with<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0other devices.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0I=
 don&#39;t think such sharing is possible because the<br>
&gt;=C2=A0 =C2=A0 =C2=A0resources are<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0i=
dentified by IDs that are local to the device. That also<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0complicates<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0m=
igration.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0R=
egards,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0A=
kihiko Odaki<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; Hi Akihiko,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; As far as I understa=
nd, the feature to export<br>
&gt;=C2=A0 =C2=A0 =C2=A0dma-bufs=C2=A0from the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; virtgpu was introduc=
ed as part of the virtio cross-device<br>
&gt;=C2=A0 =C2=A0 =C2=A0sharing<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; proposal [1]. Thus, =
it shall be posible. When<br>
&gt;=C2=A0 =C2=A0 =C2=A0virtgpu=C2=A0ASSING_UUID,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; it exports and ident=
ifies the dmabuf resource, so that<br>
&gt;=C2=A0 =C2=A0 =C2=A0when the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0dmabuf gets<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; shared inside the gu=
est (e.g., with virtio-video), we can<br>
&gt;=C2=A0 =C2=A0 =C2=A0use the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0assigned<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; UUID to find the dma=
buf in the host (using the patch that I<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0linked above),<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; and import it.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; [1] - <a href=3D"htt=
ps://lwn.net/Articles/828988/" rel=3D"noreferrer" target=3D"_blank">https:/=
/lwn.net/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn=
.net/Articles/828988/" rel=3D"noreferrer" target=3D"_blank">https://lwn.net=
/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a> &lt=
;<a href=3D"https://lwn.net/Articles/828988/" rel=3D"noreferrer" target=3D"=
_blank">https://lwn.net/Articles/828988/</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn=
.net/Articles/828988/" rel=3D"noreferrer" target=3D"_blank">https://lwn.net=
/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0The problem is that virtio=
-gpu can have other kind of<br>
&gt;=C2=A0 =C2=A0 =C2=A0resources like<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0pixman and OpenGL textures=
 and manage them and DMA-BUFs with<br>
&gt;=C2=A0 =C2=A0 =C2=A0unified<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0resource ID.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; I see.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0So you cannot change:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0g_hash_table_insert(g-&gt;=
resource_uuids,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0GUINT_TO_POINTER(assign.re=
source_id), uuid);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0by:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0virtio_add_dmabuf(uuid, as=
sign.resource_id);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0assign.resource_id is not =
DMA-BUF file descriptor, and the<br>
&gt;=C2=A0 =C2=A0 =C2=A0underlying<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0resource my not be DMA-BUF=
 at first place.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; I didn&#39;t really look into the patch in-de=
pth, so the=C2=A0code was<br>
&gt;=C2=A0 =C2=A0 =C2=A0intended<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; to give an idea of how the implementation wou=
ld look like with<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; the cross-device patch API. Indeed, it is not=
 the resource_id,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; (I just took a brief look at the virtio speci=
ficacion=C2=A01.2), but the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; underlying<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; resource what we want to use here.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0Also, since this lives in =
the common code that is not used<br>
&gt;=C2=A0 =C2=A0 =C2=A0only by<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0virtio-gpu-gl but also vir=
tio-gpu, which supports migration,<br>
&gt;=C2=A0 =C2=A0 =C2=A0we also<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0need to take care of that.=
 It is not a problem for DMA-BUF as<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0DMA-BUF is<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0not migratable anyway, but=
 the situation is different in this<br>
&gt;=C2=A0 =C2=A0 =C2=A0case.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0Implementing cross-device =
sharing is certainly a possibility,<br>
&gt;=C2=A0 =C2=A0 =C2=A0but that<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0requires more than dealing=
 with DMA-BUFs.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; So, if I understood correctly, dmabufs=C2=A0a=
re just a subset of the<br>
&gt;=C2=A0 =C2=A0 =C2=A0resources<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; that the gpu manages, or can assign UUIDs to.=
 I am not sure why<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; the virt gpu driver would want to send a ASSI=
GN_UUID for anything<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; that is not a dmabuf (are we sure it does?), =
but I am not super<br>
&gt;=C2=A0 =C2=A0 =C2=A0familiarized<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; with virtgpu=C2=A0to begin with.<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0In my understanding, an resource will be first crea=
ted as OpenGL or<br>
&gt;=C2=A0 =C2=A0 =C2=A0Vulkan textures and then exported as a DMA-BUF file=
 descriptor. For<br>
&gt;=C2=A0 =C2=A0 =C2=A0these resource types exporting/importing code is ma=
ndatory.<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0For pixman buffers (i.e., non-virgl device), I don&=
#39;t see a compelling<br>
&gt;=C2=A0 =C2=A0 =C2=A0reason to have cross-device sharing. It is possible=
 to omit resource<br>
&gt;=C2=A0 =C2=A0 =C2=A0UUID feature from non-virgl device to avoid impleme=
nting complicated<br>
&gt;=C2=A0 =C2=A0 =C2=A0migration.<br>
&gt; <br>
&gt; <br>
&gt; I see, thanks for the clarification.<br>
&gt; I would assume you could avoid the UUID feature for those resources, b=
ut<br>
&gt; I will need to check the driver implementation. It is worth checking <=
br>
&gt; though, if<br>
&gt; that would simplify the implementation.<br>
&gt; <br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; But I see that internally, the GPU specs rela=
te a UUID with a<br>
&gt;=C2=A0 =C2=A0 =C2=A0resource_id,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; so we still need both tables:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; - one to relate UUID with resource_id to be a=
ble to locate the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; underlying resource<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; - the table that holds the dmabuf with the UU=
ID for cross-device<br>
&gt;=C2=A0 =C2=A0 =C2=A0sharing<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; With that in mind, sounds to me that the supp=
ort for cross-device<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; sharing could<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; be added on top of this patch, once<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lists.gnu.org/archive/html/qemu-=
devel/2023-09/msg01850.html" rel=3D"noreferrer" target=3D"_blank">https://l=
ists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive/html/q=
emu-devel/2023-09/msg01850.html" rel=3D"noreferrer" target=3D"_blank">https=
://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive/html/q=
emu-devel/2023-09/msg01850.html" rel=3D"noreferrer" target=3D"_blank">https=
://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive/html/q=
emu-devel/2023-09/msg01850.html" rel=3D"noreferrer" target=3D"_blank">https=
://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html</a>&gt;&gt;<=
br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; lands.<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0That is possible, but I think it&#39;s better to im=
plement cross-device<br>
&gt;=C2=A0 =C2=A0 =C2=A0sharing at the same time introducing virtio-dmabuf.=
<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0The current design of virtio-dmabuf looks somewhat =
inconsistent; it&#39;s<br>
&gt;=C2=A0 =C2=A0 =C2=A0named &quot;dmabuf&quot;, but internally the UUIDs =
are stored into something<br>
&gt;=C2=A0 =C2=A0 =C2=A0named<br>
&gt;=C2=A0 =C2=A0 =C2=A0&quot;resource_uuids&quot; and it has SharedObjectT=
ype so it&#39;s more like a<br>
&gt;=C2=A0 =C2=A0 =C2=A0generic<br>
&gt;=C2=A0 =C2=A0 =C2=A0resource sharing mechanism. If you actually have an=
 implementation of<br>
&gt;=C2=A0 =C2=A0 =C2=A0cross-device sharing using virtio-dmabuf, it will b=
e clear what kind of<br>
&gt;=C2=A0 =C2=A0 =C2=A0feature is truly necessary.<br>
&gt; <br>
&gt; <br>
&gt; Yeah, the file was named as virtio-dmabuf following the kernel<br>
&gt; implementation. Also, because for the moment it only aims to share<br>
&gt; dmabufs. However, virtio specs leave the virtio object defintion=C2=A0=
vague [1]<br>
&gt; (I guess purposely). It is up to the specific devices to define what a=
n <br>
&gt; object<br>
&gt; means for them. So the implementation tries to follow that, and<br>
&gt; leave the contents of the table generic. The table can hold any kind o=
f <br>
&gt; object,<br>
&gt; and the API exposes type-specific functions (for dmabufs,=C2=A0or othe=
rs).<br>
In the guest kernel, the name &quot;virtio_dma_buf&quot; represents the int=
erface <br>
between the *guest* kernel and *guest* user-space. It makes sense since <br=
>
the cross-device resource sharing is managed by the userspace and <br>
DMA-BUF is the only interface between them for this purpose.<br>
<br>
The situation is different for QEMU; QEMU interacts with backends using <br=
>
backend-specific interfaces (OpenGL/pixman) and virgl is capable to <br>
export textures as DMA-BUF. DMA-BUF is not universal in this sense. As <br>
such, we cannot just borrow the kernel-side naming but invent one.<br>
<br></blockquote><div>It is not a gpu-specific feature. It is a generic cro=
ss-device sharing</div><div>mechanism for virtio objects. In this case, vir=
tio objects happen to be</div><div>dmabufs in this first iteration. Hence, =
the name.</div><div><br></div><div>virtio-gpu (and vhost-user-gpu) will use=
 this feature only with virgl, that is</div><div>fine, and transversal to t=
he object-sharing mechanism. It allows</div><div>to share dmabufs in the ho=
st following how they are shared in the guest.</div><div>The virtgpu=C2=A0d=
river may call ASSIGN_UUID for other types of resources (not sure,</div><di=
v>but could be), but they will never be shared with other virtio devices.</=
div><div>So they are not too relevant. Also, the shared objects table could=
 potentially</div><div>be accessed from any virtio device, not only virtio-=
gpu or virtio-video.</div><div><br></div><div>What I am trying to say, is t=
hat the name focuses solely in its current usage,</div><div>i.e., sharing d=
mabufs between virtio-gpu (as exporter), and virtio-video (as importer).</d=
iv><div>If it grows to something more, imo it can=C2=A0be renamed later.</d=
iv><div><br></div><div>Regards,</div><div>Albert</div></div></div>

--00000000000084498506054d7be3--



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 08:47:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 08:47:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602139.938522 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgi0X-0001ub-FN; Thu, 14 Sep 2023 08:47:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602139.938522; Thu, 14 Sep 2023 08:47:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgi0X-0001uU-CK; Thu, 14 Sep 2023 08:47:29 +0000
Received: by outflank-mailman (input) for mailman id 602139;
 Thu, 14 Sep 2023 08:47:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zRER=E6=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qgi0W-0001jD-0q
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 08:47:28 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20615.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::615])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 53831ccf-52db-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 10:47:25 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by MW4PR12MB6705.namprd12.prod.outlook.com (2603:10b6:303:1e3::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 08:47:22 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::5a5a:18dd:4832:75db]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::5a5a:18dd:4832:75db%4]) with mapi id 15.20.6792.019; Thu, 14 Sep 2023
 08:47:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 53831ccf-52db-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eretO6qT2dExoACgk6OTRr3LTmLbk35tCZONpWv6z2yiJ4ctSLG+U++HBViIjYybTJH8zBx64e/WqfpwIWkKEIeaJ1wU8zyTrgZf0WCdiLHS45bPkmgytRv4GcZhEahD3ylj9d8v4hmiZMcpgm2IQQ9bztvEwnb2w/p9Hnr/LkPAxQorFoVFaBu2bQOQz6stz/Sl4UPJJrSrhGnOyE6F/M+GvnjI31AuWAROuXcts2C3fHje5dDdyYns+FY3+e0EUggdGTy7XVFET1PYBAnSzipRea+FsGEwr5NqeZeSxmEjP5QX/Tfv77PzyCpABrcLVu68BZEetDKz7pSOIX4eEg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pZHttxgqJ7+177QlRxzXNmshTUldz5laqhWBI/MK6DI=;
 b=Hpd/otCILcDvm9MyYZP+Fo9+UlWYGRzQWl0C3P59gFw2QOivZ7FAN/1qH+c+Q4y7cSAwyoA0h+v7EeRmMBnu2ghNbsiJpgv9LEbMlLqosjfKpHx7FE7U9P2Rx7WdPd9Ay96YjYXSR3INEHnK26uEp01UaaNNYKjYtEU0oAT/3HjRZ7wcZvgNNQkpLC27WQI3eGZPjkqV2KNe09IGaAxZt61woKuGloJ/+Yqo9uIiBy/EK/Qz+LwfV+gVmaYVU+YchvAyidOpEvBXtE5yN7E8/tk2c+rdurh43xuLxj0lnC/GIomUric9bAwZyAV0aenrixU7RRcou4EIr+H4YR3/KA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pZHttxgqJ7+177QlRxzXNmshTUldz5laqhWBI/MK6DI=;
 b=YBTA/1CilqTqeLSwzrb0MCof4NQFO7HHf84fl35Uzudn/c7O8sLQvDxm+WakUG3oRpM4NZSeKtobm8m5mB/Ob9OfKE9OBZuTRZ9rrDDUQHcibkIwkhYAJYmc+0o7X8CrqYowiXZy/7s7AnprOwtjtPSEZPRGR5oTBwPeb18Ezbg=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <af39704c-ed41-109d-0a6d-ed5e4ac2ef36@amd.com>
Date: Thu, 14 Sep 2023 09:47:15 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.0
Subject: Re: [XEN v1 4/4] xen/arm: traps.c: Enclose VMSA specific registers
 within CONFIG_MMU
To: Penny Zheng <penny.zheng@arm.com>,
 Ayan Kumar Halder <ayan.kumar.halder@amd.com>, xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, stefano.stabellini@amd.com, julien@xen.org,
 Volodymyr_Babchuk@epam.com, bertrand.marquis@arm.com, wei.chen@arm.com,
 henry.wang@arm.com
References: <20230911135942.791206-1-ayan.kumar.halder@amd.com>
 <20230911135942.791206-5-ayan.kumar.halder@amd.com>
 <a958921e-500e-fd26-741d-1a1b686fdfcb@arm.com>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <a958921e-500e-fd26-741d-1a1b686fdfcb@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO2P265CA0473.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a2::29) To SN6PR12MB2621.namprd12.prod.outlook.com
 (2603:10b6:805:73::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|MW4PR12MB6705:EE_
X-MS-Office365-Filtering-Correlation-Id: 11d76b9a-d358-4ec6-c516-08dbb4ff35ff
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TGcQ2HcVlm3xHNUFShFg9cf7Q9dew/2vIbfoDHtwwLCVTez60xYaVPat4vhpU+UvLWlYbIAibMl/je1fLZfnId2t1hwv4i6Z18Ip1roGILRKMu+iCkh1LeCy/3MfGY/EbSEH1sv16kcKPjYDVR0Uq5EjzTsl+gRuwtabsJpVTQ9L+3WvRES8jSODsL6HTE2IUTUae4t44b0MegxHajYHF6YKOFwTvYLgbwxO4FgNnfGKzuXelFC4S7AcgvcRTe59CgWJBFyoMubuD8KMupZke+t7KTBkpo1MQIzyyhmjSHpvXQc13tZik3hLnk0949zGj0Q1lLzDxK+PgNbssH4pkaC7K7lcKNSIpu/l6OQjdw3E/Cl6AUH7/U1HxAGb2wALx/A56xBe8YDS6KqMvaGIri1we114O1cmv0BeUbuhexpOdBs6it6+Fzj3gL8OqPvQ7t4UTAOJG9oeoZSDxSHVKZYSTDoMRY+kKMYQ8mu3FyMJu3LH8iviDP6D2BBeuR33I1wpTtFKrMb1g3fSx136VUb5lXiMtaRmgQFCJmxED/ScdKKvM7zO0HScpSIhszymzAjGLCoZ2Zp2508qi05yP8EZIrnEFxt9tXhZNaPejHoPdp13fiiqo8o/VTNQGS7BgGWhZ5sdDiT1PSmjV10Czg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(136003)(346002)(366004)(376002)(186009)(451199024)(1800799009)(31686004)(6486002)(53546011)(6506007)(6666004)(38100700002)(36756003)(31696002)(2616005)(478600001)(4326008)(2906002)(83380400001)(6512007)(5660300002)(8936002)(66946007)(110136005)(8676002)(316002)(41300700001)(66476007)(26005)(66556008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Qk5vQ2p3YzRMTFJ0S083WFRTdGpGd3NvUWNxdnNxWUMvN1ZVdzQweENzUGY2?=
 =?utf-8?B?dW9lU1dmc1RGck9aMWNHenhKTjZGNUdZT2dFcHRIeW5kM0JnelhabG1VSXdE?=
 =?utf-8?B?S0l5SmlDSjFBOURXTndzUHUxSlZSTVg5YndDdW84N3VidEQ2R0x5MDM4cUZu?=
 =?utf-8?B?SDIyek1URy9SYzFsQUt3NFBTSzZiV0lFdThLZDJSUU5haXhEVlk2SkwwR1JO?=
 =?utf-8?B?SkFOcURBa21YNFRGa0RDSEFJK1ZFRlhZTnFGZEVmcE9JeUh5WDh3VTBzbFNn?=
 =?utf-8?B?QjNabzVSVDBhQUc0d01SMng5ZzVKV2JCTmlQUjZXRHZCaUVRaTNYcmNTRHFK?=
 =?utf-8?B?UmpkbkRXdUxHQXdTRUNtYTd4a3kxa2xBclZCaDZmSVY1UmxBcFB6V2JxVjFp?=
 =?utf-8?B?MFYwOUxaT2RuS2dzdDNQb25zWnR2b1dZRzJQbWM5eDV2NTZFS0FjTlJMeloy?=
 =?utf-8?B?WjVHMjFla2s3TGtXcm91VzBOcWthVDVhQTJXZ0Jyd0NCbjNzdmh5ZGxpQVFY?=
 =?utf-8?B?QXdmM3RKRjJ0Q0RBSzExTm9oSHk3c2ErbmI5dmdVOTRNS1YwWHhFbUY1SlNl?=
 =?utf-8?B?ZlBkRlh2Vm1ZTzRXTURNNUhvaEJEV2pLK0dLc3RHTDdPU1A2QlVFUEpPQ0RC?=
 =?utf-8?B?ZHJVN01wZDdnWU0rbTJQNER4dDdGN3FZRUFhVG8wOVlKSG5jOG55RHVEWGYy?=
 =?utf-8?B?MENPM2hOcWthRXl3dFZtdmF5SGhxSkZkUTBVdVZOdWYxYU9sc0VhVCtVbnBT?=
 =?utf-8?B?N21nYXlDbTNlMnVZT2dheWlDc2pkOXNuN2Z3OE1XUEs4Sm80QlNLd0lxZlp4?=
 =?utf-8?B?UGp4eGZ3UFhDRVBDVXU2bUFOYitIRGxlVGlqOXA5a3YweWFlMXMzY2JobXYw?=
 =?utf-8?B?ZWNGZW95UEFNbC9xbVhQZUlCOUdwcDhEb3M4WThzTHhnVjJ6MUdWbWFQZGZT?=
 =?utf-8?B?cWRjTWhjZnVETnIySld2a29Vc0Vvc1BvNXFEMmVPZnp5M3h6a0djQnR2Tk9x?=
 =?utf-8?B?bkNiY3MwWlZxeTN6ZFRKVjFlMlNnU3p4M296aVpIOUdwVXViWC9mdmpONVpI?=
 =?utf-8?B?V1I5N2hXYkJuWG93YXpTMUFRbEJSeHlaQU9lakVYREljamFoYW0wTVhUS1Bx?=
 =?utf-8?B?SUpYOHBmSzdTZ2hDdWVXZ3cyRWU2Wkt6M1ZDeEF5QmNpN0xnek1YbHBmSzdJ?=
 =?utf-8?B?YkdiaUZhc1ZUbzhmUHlqQzRIZHJZU2dZa0RkYWZWSkZKenZDLzY4eGJVd2lo?=
 =?utf-8?B?L1BFaXVEb05Ud29RRHpUamEvVjdHU3V0ZEtSaVBsTnFtS2hWQlFqM2lvRyts?=
 =?utf-8?B?SmxCNzkyUXdGeTVoVjJRZ0x4NEZvLzZmVWljNWhxQXZhRXlJd3JKdkw1Z0Yr?=
 =?utf-8?B?RnhIRjdFc2QyRitxd3ZYNUhRUGxnMnp0cnBENHRUcGFqNjVsVU91dEJ3QWhD?=
 =?utf-8?B?K0dIOEVkYTJRODU5TnE3Ry93SGZQUVFKMStPaStTUVd2VEdQckdhYVZhSFlo?=
 =?utf-8?B?cmwyYUVpWk92QVV3UWt2MUI3N2xLYWNJKzVPdmMxR2FYTnY1NVJiQk9MY3pN?=
 =?utf-8?B?cGFSNHV4MjZwU1MzVkVNbU9ScDMxVzdwR3lSRnc4ZS9laEFkb0tGSk9LbS9Q?=
 =?utf-8?B?QldjQWxpeHd5L3ozTDlYS0o4aXN1OGRnalU3NmpSYWRabUM5a2RLUHlxeTJj?=
 =?utf-8?B?U0tuT0hsNzFUYmhkamdjTDJUVDVOaE9MdmUzMWlVQm5MY3lMM3ZtQ3JPRmhZ?=
 =?utf-8?B?eWxrUnFOK25nbnJMcDI0My9FZVFFeXE4VXBtd254UmE1cDJabmU5Z2dPUC9i?=
 =?utf-8?B?ZDg3amo5aXBmZlNaZG1qM1VQR0RYWFBsc2RmR2Jyb2RpMzNNS0NRdkUzUGdT?=
 =?utf-8?B?MHlISXVGL1Jva3JKT0Rpa3VFeW1KU1VPUXlCVG93akdmUHdwazVsMHpvOWpl?=
 =?utf-8?B?OXkyNlI1UTFXUGFPMVQvTVBzbWpCQmxKMEUzd0VneUZMeUhmME9QcEgrY0wv?=
 =?utf-8?B?N0lRUUowYmxrSFUvMmVVQkhFVW4vdXVPdkhYOWN5KzNrS1ZRemJCNDRBRTdF?=
 =?utf-8?B?WTdXVnh0eDJhbEJVbmhmZVhWM2l5UW9CNFpmK1VQMytpYTVPeHh2cU82aHBT?=
 =?utf-8?Q?4zKgltcFxlxmNVr2DoKYot9CV?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 11d76b9a-d358-4ec6-c516-08dbb4ff35ff
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 08:47:22.1465
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: WwrzDG9dfGoU0yZRS0BRfXhAQQYmjWvNf18iBOtdrsPLmYYTzEPN6ohHDLfarAAvESieY6iaGsjbh0rtfyxxZg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB6705


On 14/09/2023 06:48, Penny Zheng wrote:
> Hi, Ayan
Hi Penny,
>
> On 2023/9/11 21:59, Ayan Kumar Halder wrote:
>> The VMSA specific registers (ie TCR, TTBR0, TTBR1, VTTBR, etc) are 
>> valid when
>> MMU is used, thus we can enclose them with CONFIG_MMU.
>>
>> Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
>> ---
>>   xen/arch/arm/traps.c | 17 +++++++++++++++--
>>   1 file changed, 15 insertions(+), 2 deletions(-)
>>
>> diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
>> index 46c9a4031b..83522fcc5a 100644
>> --- a/xen/arch/arm/traps.c
>> +++ b/xen/arch/arm/traps.c
>> @@ -698,8 +698,10 @@ static void __do_trap_serror(struct 
>> cpu_user_regs *regs, bool guest)
>>   struct reg_ctxt {
>>       /* Guest-side state */
>>       register_t sctlr_el1;
>> +#ifdef CONFIG_MMU
>>       register_t tcr_el1;
>>       uint64_t ttbr0_el1, ttbr1_el1;
>> +#endif
>>   #ifdef CONFIG_ARM_32
>>       uint32_t dfsr, ifsr;
>>       uint32_t dfar, ifar;
>> @@ -801,9 +803,11 @@ static void show_registers_32(const struct 
>> cpu_user_regs *regs,
>>       if ( guest_mode_on )
>>       {
>>           printk("     SCTLR: %"PRIregister"\n", ctxt->sctlr_el1);
>> +#ifdef CONFIG_MMU
>>           printk("       TCR: %"PRIregister"\n", ctxt->tcr_el1);
>>           printk("     TTBR0: %016"PRIx64"\n", ctxt->ttbr0_el1);
>>           printk("     TTBR1: %016"PRIx64"\n", ctxt->ttbr1_el1);
>> +#endif
>
> FWIS, on v8R-AArch64, with MPU on EL2, we could still support VMSA on 
> EL1, so registers like TTBR0_EL1/TCR_EL1 are valid.
> See ARM DDI 0600B.a Table G1-2 Alphabetical index of modified AArch64 
> System registers (continued) for detailed info.

Actually, you are correct. And, we should not be using CONFIG_MMU to 
enclose VMSA EL1 registers. I am ok to drop this patch.

However, refer G1.3.7  "ID_AA64MMFR0_EL1, AArch64 Memory Model Feature 
Register 0"

When MSA_frac, bits [55:52] == 0b0001, then there is no support for 
VMSAv8-64. IIUC, VMSA EL1 registers will not be present.

If this is correct, then we might need to have AARCH64_V8R specific 
config as ID_AA64MMFR0_EL1 can be interpreted for this configuration only.

Appreciate your comments.

- Ayan

>
>>           printk("      IFAR: %08"PRIx32", IFSR: %08"PRIx32"\n"
>>                  "      DFAR: %08"PRIx32", DFSR: %08"PRIx32"\n",
>>   #ifdef CONFIG_ARM_64
>> @@ -873,9 +877,11 @@ static void show_registers_64(const struct 
>> cpu_user_regs *regs,
>>           printk("   FAR_EL1: %016"PRIx64"\n", ctxt->far);
>>           printk("\n");
>>           printk(" SCTLR_EL1: %"PRIregister"\n", ctxt->sctlr_el1);
>> +#ifdef CONFIG_MMU
>>           printk("   TCR_EL1: %"PRIregister"\n", ctxt->tcr_el1);
>>           printk(" TTBR0_EL1: %016"PRIx64"\n", ctxt->ttbr0_el1);
>>           printk(" TTBR1_EL1: %016"PRIx64"\n", ctxt->ttbr1_el1);
>> +#endif
>>           printk("\n");
>>       }
>>   }
>> @@ -907,13 +913,15 @@ static void _show_registers(const struct 
>> cpu_user_regs *regs,
>>           show_registers_32(regs, ctxt, guest_mode_on, v);
>>   #endif
>>       }
>> +#ifdef CONFIG_MMU
>>       printk("  VTCR_EL2: %"PRIregister"\n", READ_SYSREG(VTCR_EL2));
>>       printk(" VTTBR_EL2: %016"PRIx64"\n", ctxt->vttbr_el2);
>> +    printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
>>       printk("\n");
>> +#endif
>>         printk(" SCTLR_EL2: %"PRIregister"\n", READ_SYSREG(SCTLR_EL2));
>>       printk("   HCR_EL2: %"PRIregister"\n", READ_SYSREG(HCR_EL2));
>> -    printk(" TTBR0_EL2: %016"PRIx64"\n", READ_SYSREG64(TTBR0_EL2));
>>       printk("\n");
>>       printk("   ESR_EL2: %"PRIregister"\n", regs->hsr);
>>       printk(" HPFAR_EL2: %"PRIregister"\n", READ_SYSREG(HPFAR_EL2));
>> @@ -931,9 +939,13 @@ void show_registers(const struct cpu_user_regs 
>> *regs)
>>   {
>>       struct reg_ctxt ctxt;
>>       ctxt.sctlr_el1 = READ_SYSREG(SCTLR_EL1);
>> +#ifdef CONFIG_MMU
>>       ctxt.tcr_el1 = READ_SYSREG(TCR_EL1);
>>       ctxt.ttbr0_el1 = READ_SYSREG64(TTBR0_EL1);
>>       ctxt.ttbr1_el1 = READ_SYSREG64(TTBR1_EL1);
>> +    ctxt.vttbr_el2 = READ_SYSREG64(VTTBR_EL2);
>> +#endif
>> +
>>   #ifdef CONFIG_ARM_32
>>       ctxt.dfar = READ_CP32(DFAR);
>>       ctxt.ifar = READ_CP32(IFAR);
>> @@ -945,7 +957,6 @@ void show_registers(const struct cpu_user_regs 
>> *regs)
>>       if ( guest_mode(regs) && is_32bit_domain(current->domain) )
>>           ctxt.ifsr32_el2 = READ_SYSREG(IFSR32_EL2);
>>   #endif
>> -    ctxt.vttbr_el2 = READ_SYSREG64(VTTBR_EL2);
>>         _show_registers(regs, &ctxt, guest_mode(regs), current);
>>   }
>> @@ -954,9 +965,11 @@ void vcpu_show_registers(const struct vcpu *v)
>>   {
>>       struct reg_ctxt ctxt;
>>       ctxt.sctlr_el1 = v->arch.sctlr;
>> +#ifdef CONFIG_MMU
>>       ctxt.tcr_el1 = v->arch.ttbcr;
>>       ctxt.ttbr0_el1 = v->arch.ttbr0;
>>       ctxt.ttbr1_el1 = v->arch.ttbr1;
>> +#endif
>>   #ifdef CONFIG_ARM_32
>>       ctxt.dfar = v->arch.dfar;
>>       ctxt.ifar = v->arch.ifar;


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 08:52:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 08:52:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602145.938532 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgi4r-0004xq-1m; Thu, 14 Sep 2023 08:51:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602145.938532; Thu, 14 Sep 2023 08:51:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgi4q-0004xj-UL; Thu, 14 Sep 2023 08:51:56 +0000
Received: by outflank-mailman (input) for mailman id 602145;
 Thu, 14 Sep 2023 08:51:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgi4p-0004xc-Ez
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 08:51:55 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2061d.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::61d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f42c273a-52db-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 10:51:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB6796.eurprd04.prod.outlook.com (2603:10a6:10:11e::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 08:51:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 08:51:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f42c273a-52db-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OtY8fkcxiGI3rwQsDMGWqgUY8J8ZGzdipPC9K1Wil2cEL4jKWg5IoAd1v9J5dF3jemW3VN1d2lL+a4Sy43fRWz3d4gdAeZ+aVRNKKQ8v5x+0/ZFSSHGN/AuQjhUluJVTpxrJPSOE9v5PViqVPRz/yfMWlhlbbi7VePvp15Icdn74cCAIQzvfAYl9k0FVPraX5hQ92qu94/3vfU3BW6Z5BAr2h/i0raqtoNPuhqx9YzzA9YYyTdHiGt6KYwRNNNv141qWG0hmEarNkL5szRopz0dF8olfWnIuhCtWe9vDriOQshg7VzOCXHnK1V10DzxUYCymP4Gcs0dFwo2gNzll/Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/xpLRWMJeoA4uiNwQLu+0ffYTos7ZC54hw6Zsv0VRAg=;
 b=IG5/wsMGQ8D0omUZ3+1DoVMkAWwme9IMoYAmvR5+uSJXadyMzmSDPz+l5a2pgxeqDpOIssoFeeu/qYtLGT/nB++BZcv2ueDKLvnO8nKxvMvRzQKSqTpBOAEBQKvUYOx8LMF5CfX7FSOkQ8JygAgUtWZHfyh9qLiSDuC9nJj602qsqGsllZbkTrn1v7BQieGLTHxHzIG4+epvWcoP084EUnyKH9wD5mGyjsVNeZAXGMLSz+Xo0bgQxN7KB4byXSxdKp9D6ETW2YycbeHM4s62dgg3HbI0HL6UsQJrZWflEjb0Zt1zm0ZlwJWDctCI4N8B48WP8bncpeYHc6IsOMQE/A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/xpLRWMJeoA4uiNwQLu+0ffYTos7ZC54hw6Zsv0VRAg=;
 b=fw/rHg/5NeD0ESKXJStYn98yY7lgU+ijWMsGwKWB2KvMwHhahsCegvhBFtiXuWQdOuTl2wTKTULOG2lX5aDPhYzrc/xDps4PojMZWP5TNlZyVs8YokEjJIM/EGbrZmXFV0nanZNhWAfJXaupREzJrK1Hy58ygmmMoZajiD6JAR88CaaFN8tQSCrcYNZ1WLSI6db4bN12qCgqzytQ5efQKrhqffCjR0ZJ4Of8030HekmqhAbc82w1yDa/YeubALqbKlgBQme2r0IewPIiMtSV8SKqJct1dYcZofBGtyTcFbuvs5/iAbEVVI8VlD9MbP1Q3wh5VV0cxN8htBpgd5LDIQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <099ac89d-ea37-352e-940e-91993c1649d9@suse.com>
Date: Thu, 14 Sep 2023 10:51:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 5/8] x86/entry: Adjust restore_all_xen to hold stack_end
 in %r14
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-6-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230913202758.508225-6-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0021.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1c::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB8PR04MB6796:EE_
X-MS-Office365-Filtering-Correlation-Id: b123a57d-122e-4ac8-19df-08dbb4ffd6c7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jsiItBg6nDuDcfssxECR59xBvZEOBIQMIMF42F1ffcDiawj1RlsqeAADWaKyb9gVq0MNYCfrPYDFtlrHpboLw9uHv+foRCffx4JnctR1kPdaMKWebtI7zmWozYkzNVs3SOv4OJp+5fRq5d4MOLf4D2lM7DOWs/USM7TmbZJDK+KOgGY48pdNjYigSAEQAGFkldjpl0Z81DaaRaswxQAWWQOruLKdaSOiKEnWloJGhRF9xWEH6VEUi51Tc3JejRzXLfisHDwWkb7dPVVV653G44kO3f9R53VOnfvPVFiK5PGVPDwhifsFmsQmKJZHj28BuaxfWXLj1xIVn0DGChpSpbnjV0PhRxzDa1465AFRjxhO2UdhsDu3KZ5mXeBsFXtyV5Qe+TYy61sjSIW8Whl6c2Zu+g8u7KxqolE3BWvFFrtw8v5bc+y/RcPJOP8sQ8djmd8ldHx3Iq8Pgl4+sCV/uMBLQ92Pp7o1gC0IEs1CiCRPV4mvddHT7Z5jGQUl5PNd0+67RA7apBJGjdibbDcuRiGaxSfFyf+rQB4kGVtHjSF6mYlnvH/qUXw0LK607vi++k+loJ+azQj5X5oxCrFEmSexYwRl/wPKAXcON5sFrs4MAvidSr8Cs3H8MOX3v3e13DEUwaNw34w/37kJKKfEZw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(366004)(39860400002)(396003)(376002)(451199024)(186009)(1800799009)(26005)(478600001)(2616005)(2906002)(6512007)(6486002)(6506007)(6666004)(53546011)(4744005)(66476007)(66556008)(31696002)(66946007)(86362001)(41300700001)(36756003)(6916009)(8676002)(54906003)(4326008)(31686004)(316002)(8936002)(38100700002)(5660300002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T3FlTEc5WVJKaklKZVFxOGxUdFNyQzZJdkl3SjlhWDdkYjl4VnZTYnY2RERh?=
 =?utf-8?B?RE9rQjdZRFdzY05leWp3YmgzM1F2S1Z2M00vV2VSQjRQMnFtb1VlN1VPL3Zi?=
 =?utf-8?B?cGIvdk9pMElWR0ZxdXkvdEhtM2haN1lEL3hLL05kbjdDSVNSS1Vza0lESEFD?=
 =?utf-8?B?ZkwvVWI5dW81TkJpSlliQm12OWExdUc1WnIzRWY1d0syT3hqY2tpL2tHVERG?=
 =?utf-8?B?WkpnZy9WR3lWcUNLeDk5dW1KTUd3Nk9FaHcza1NidldXT0p6SUowVjIxejB4?=
 =?utf-8?B?M01MTjB3Z1BCOVBnVExQSGVkbk9xRXdvdDgrYU9hK2p3UGphK3g2T3J6YzRl?=
 =?utf-8?B?bXdRdEpTVHVzcUM0QitqTFFzd1d1VnI2MkZGMDVXNnUyRjB5Z1lDMEplVHZL?=
 =?utf-8?B?YnBwZVBOL0t2VzllQVplcEZmR3RiVDU2djZUckk5N00rVnlZT2pWcGNpRDB5?=
 =?utf-8?B?WTI5d3F5QW1yZWR6dC9IS2ZMSTRETnNFb0RRbTloWDZaV1pjZnZBYUM1QnZ5?=
 =?utf-8?B?MEtYWk9jWUZrSUI3cnJsNjlBOFVWWUYyTytTRTNtM2pLQVhRQ29qcHBsWVNr?=
 =?utf-8?B?VnpnOHU4dnV1aWFQY1NBcTlydjhvd05mdHJkSUNFRzQybHF4cllaQzRXb1BZ?=
 =?utf-8?B?R1RyY1hVb1dTZHdsM1k5bDg3SlNtSTFuemlIdklHNTVyRjlJL1RqUlZEMGhX?=
 =?utf-8?B?UzA1cmhCOVpoL0gzbk5MUWpnaVdpdWhXUXpsUG96ZStwOVVkTTYrNVAyWk5r?=
 =?utf-8?B?c2ZlU1VwSER3VFpva0RXVG1ML2VoeklBaXVmZVdxc1VZUlpRSFJHVXVRS1dD?=
 =?utf-8?B?OE51Y3ZqZnlGbWpoa3l3d3JjZDJJZktIaWIzMEhMbmtmV0hLMVFQdCtBaWFj?=
 =?utf-8?B?Tk45T1VPY0VOeWRuOWdwV3B4YlBMMHhuZldrLytFYVBVZ2VuaUJ0WUlRaVVz?=
 =?utf-8?B?cFBTODEyUTI3T0V2dkRDZUJWVzJhZEhEZGN5QllXb1NJZ3BWaDBjb29sKzF1?=
 =?utf-8?B?NVNvbTE5MEZUenExQVpBQzBHV2tFdC8vRitHcnhWeW9pVU5rNFFsKy9yNy82?=
 =?utf-8?B?dFhsWmh1NkN0aXNsY2QraFk3M0tRZDNIRlZWSjlJOTJxYlRobElXTnAvSXg2?=
 =?utf-8?B?alY2L2UrckxQVmhwVUpDcHY3ZGRZMWpBZ251Q2VCL3h5YWpCVlRob2ZTdjVh?=
 =?utf-8?B?TzM5K1h6aUhoeGk0V1EzUHdTNHJWR2FJcy9sNFQySFF6QTlXUXV2MS81Yi9i?=
 =?utf-8?B?Wmp0WWhLSTJnZ2doQURrTWZSb2ZQcnN2S2RRYUhMNXJCZEFrK2FvMlNEQmVZ?=
 =?utf-8?B?MHNodHlxQXNNNGJLWVFmZWtQaFJZWENQZWtUUE1iS2tGeXg2RFpnYThMd1FP?=
 =?utf-8?B?UkgxekV4bXhIL0ptUEdKQ1lnQVpzckpTdWh2THJhVVZKcnZYRGp1SmFCNEtx?=
 =?utf-8?B?dzBlOEdYcDI1SWJRTEhzVU5FZEp6TUEwU2lGRXorRkdLVnB1VTk5NDM0bXZO?=
 =?utf-8?B?aVNQNWdlejFzSGlscW5lYnM1NnZlOUY4SWRSMksrcHg4anR0cVZVOC84L01I?=
 =?utf-8?B?RkdEU0RYWHFSZGRGV3pkUWpQQWtLTVZsS29FVGY2NzNlK2paQUpqeWZpQlFs?=
 =?utf-8?B?aHdiVURwS1owK3FLKzZaTHByakxLdU1ycDBIbHdXS1BtM3lEOUl4NVhuNmZB?=
 =?utf-8?B?YitJRWlueE43UUlvcVBLcnQ5cHNKWVptakxUd011VkRXc0g2RFlVR0hnK1lQ?=
 =?utf-8?B?TTNOTi8zUkltdkJzWWx4ZFB4T0crWGVKNWxuMzF5cnI0cnp6ZTY3ajVRSnJG?=
 =?utf-8?B?eTEwSEhHc1h2Ym13aXp1QWQ0VHE3dmIyeDdMOTRBYW4vVHc0ZlZEZERGS0hi?=
 =?utf-8?B?b2djL2lWNXplWEhRa24vSDdvdUwvUXpWN3hnZVd6SmlmN3psOHk3MWpmaVNU?=
 =?utf-8?B?aHJOR05nY1JNZWZpd2FnemNsdHhsSFMxbFBhR25Wa3NEUWJxdnVRTVVUS2lP?=
 =?utf-8?B?WUk0V2RYTUhwR082L0c0WVY5VGhMbkFGVStpditLVzlhVzA2YUtTUHNwRklJ?=
 =?utf-8?B?UERhaThQZE1qendERUpub1RUU2FPeHlRcnBmU0RLSzVNeWtmZ2Vxcjc0dUw3?=
 =?utf-8?Q?2cr870sPQi5LebHa0+Ra+CE/7?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b123a57d-122e-4ac8-19df-08dbb4ffd6c7
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 08:51:51.7633
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: S6/ZtIHJDPgrbcNkj7YkCJMrMT6+MVTAC81HC1gKJIE5M2wpX84PNMMb3ilQo+/2ZAoiP6AWqWZx3pbrWA0PnQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6796

On 13.09.2023 22:27, Andrew Cooper wrote:
> All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
> for consistency, freeing up %rbx to be used differently.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>

The choice of %rbx was, iirc, for avoiding unnecessary code size increase
(due to extra REX prefixes needed in some of the affected insns). I
understand you view this as not a real concern, but I think saying so
explicitly in the description would be at least desirable. After all there
would also be the alternative of further parametrizing the involved macros.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 09:04:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 09:04:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602149.938541 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgiHB-0006v7-3T; Thu, 14 Sep 2023 09:04:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602149.938541; Thu, 14 Sep 2023 09:04:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgiHB-0006v0-0t; Thu, 14 Sep 2023 09:04:41 +0000
Received: by outflank-mailman (input) for mailman id 602149;
 Thu, 14 Sep 2023 09:04:40 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qgiHA-0006uu-0V
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 09:04:40 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgiH4-00023L-77; Thu, 14 Sep 2023 09:04:34 +0000
Received: from [15.248.3.3] (helo=[10.24.67.35])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgiH3-00036D-V4; Thu, 14 Sep 2023 09:04:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=Ca5peWhjmYFfJ54b2Cg0W/+Po0Cuxrzl6sJdjwIyhPI=; b=sRs0R6FOkasGthui+55IAt4coF
	HMkOQLPSDhAPUTXMF37PccUyi+0kHxRdbvVxnUAqZfEjCrC5a1bAUlPziFd2FZ+GArnlSKJHN0V0k
	a5VvlC3/V0vRnOSD7Y+kjC3S2GHcOUUnwGZbOQIgQJD4WdU74R/QfcUYnnjia4ltXSFg=;
Message-ID: <bfe3a681-7dbd-462c-9a8c-969d5a99aaa1@xen.org>
Date: Thu, 14 Sep 2023 10:04:31 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent timing
 mode
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
 <e4ab7415-cf72-4c04-93dd-fd393f49f6f5@xen.org>
 <dfbbf38c-8651-5396-c966-365fe954df48@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <dfbbf38c-8651-5396-c966-365fe954df48@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jan,

On 14/09/2023 07:32, Jan Beulich wrote:
> On 13.09.2023 19:56, Julien Grall wrote:
>> On 11/09/2023 16:01, Jan Beulich wrote:
>>> [1] specifies a long list of instructions which are intended to exhibit
>>> timing behavior independent of the data they operate on. On certain
>>> hardware this independence is optional, controlled by a bit in a new
>>> MSR. Provide a command line option to control the mode Xen and its
>>> guests are to operate in, with a build time control over the default.
>>> Longer term we may want to allow guests to control this.
>>
>> If I read correctly the discussion on the previous version. There was
>> some concern with this version of patch. I can't find anything public
>> suggesting that the concerned were dismissed. Do you have any pointer?
> 
> Well, I can point to the XenServer patch queue, which since then has
> gained a patch of similar (less flexible) functionality (and seeing
> the similarity I was puzzled by this patch, which was posted late
> for 4.17, not having gone in quite some time ago). This to me
> demonstrates that the original concerns were "downgraded". It would
> of course still be desirable to have guests control the behavior for
> themselves, but that's a more intrusive change left for the future.
> 
> Beyond that I guess I need to have Andrew speak for himself.
> 
>>> Since Arm64 supposedly also has such a control, put command line option
>>> and Kconfig control in common files.
>>>
>>> [1] https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/best-practices/data-operand-independent-timing-isa-guidance.html
>>>
>>> Requested-by: Demi Marie Obenour <demi@invisiblethingslab.com>
>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>> ---
>>> This may be viewed as a new feature, and hence be too late for 4.18. It
>>> may, however, also be viewed as security relevant, which is why I'd like
>>> to propose to at least consider it.
>>>
>>> Slightly RFC, in particular for whether the Kconfig option should
>>> default to Y or N.
>>
>> I am not entirely sure. I understand that DIT will help in the
>> cryptographic case but it is not clear to me what is the performance impact.
> 
> The entire purpose of the bit is to have a performance impact, slowing
> down execution when fastpaths could be taken, but shouldn't to achieve
> the named goal. 

I understood that. My question was more related to how much it will 
degrade the performance. This will help to know whether the default 
should be yes or no.

>>> --- a/xen/arch/x86/cpu/common.c
>>> +++ b/xen/arch/x86/cpu/common.c
>>> @@ -204,6 +204,28 @@ void ctxt_switch_levelling(const struct
>>>    		alternative_vcall(ctxt_switch_masking, next);
>>>    }
>>>    
>>> +static void setup_doitm(void)
>>> +{
>>> +    uint64_t msr;
>>> +
>>> +    if ( !cpu_has_doitm )
>>
>> I am not very familiar with the feature. If it is not present, then can
>> we guarantee that the instructions will be executed in constant time?
> 
> _We_ cannot guarantee anything. It is only hardware vendors who can. As a
> result I can only again refer you to the referenced documentation. It
> claims that without the bit being supported in hardware, an extensive
> list of insns is going to expose data operand independent performance.

Right. So ...

> 
>> If not, I think we should taint Xen and/or print a message if the admin
>> requested to use DIT. This would make clear that the admin is trying to
>> do something that doesn't work.
> 
> Tainting Xen on all hardware not exposing the bit would seem entirely
> unreasonable to me. If we learned of specific cases where the vendor
> promises are broken, we could taint there, sure. I guess that would be
> individual XSAs / CVEs then for each instance.

... we need to somehow let the user know that the HW it is running on 
may not honor DIT. Tainting might be a bit too harsh, but I think 
printing a
message with warning_add() is necessary.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 09:12:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 09:12:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602156.938551 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgiOH-0000cz-T4; Thu, 14 Sep 2023 09:12:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602156.938551; Thu, 14 Sep 2023 09:12:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgiOH-0000cs-QV; Thu, 14 Sep 2023 09:12:01 +0000
Received: by outflank-mailman (input) for mailman id 602156;
 Thu, 14 Sep 2023 09:12:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgiOG-0000bW-Ru
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 09:12:00 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2062a.outbound.protection.outlook.com
 [2a01:111:f400:7d00::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c26dee85-52de-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 11:11:59 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9405.eurprd04.prod.outlook.com (2603:10a6:20b:4db::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 09:11:57 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 09:11:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c26dee85-52de-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YRGocca2kMzcQJIuJuaa1T+SECyjQ1AMdonFGmZ/cQ67Itlqh5exAThouUkyRSypRK06DvqtxLOIoQhAwrWe2ypXNYzwao6SQ1wuTGXJvBg4BFSDPxMI2i6Ri6gKQYX/c1Dqvi5aW8QdXPARrH2H73mqQVGghb75aKbnolwdPs8zd2OYsu/F1zBajtb69rK9BPyXdlR483d9A7AVgYEMI8f1nPvSiuaH/m8LUoxlW707HOgA2Ed1FNvJGVlMYxXuZ2bMjmrcBXFHKG5ya6lzfrrR3ho8sWrUd2ToEv6qlBvCzkF4r4noEORghrrLlkQZ+ack1D/bwlh20b5P82ip2Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=i3LwRDQtpGSEx9FAiKDj4lCnsEe6TJoAjF/G0jCM2SM=;
 b=Kbe1k0woR396Cc3XSKG/C5qap06b+j8/OTiD2TCaPncTY1W21gjU0GYLPlGqhAo39MnR08d/Cutcu2QZKSkpfjq8r2pEMXptRQGDgIXqc6dVtqJXCF/RsBqjRxW8r0Nt2ahfPtkFpGqrQQB8nvgVZoKtC/wgcn7SolSt4l6yQVex8LO/fcCOyMIxfBcMShLVE6ItNGPPEL0sCBDzjCgYWiydiEH5OBVqk2nW7hc/5HSZ3nBcwKrATAa/MV3sVq33M91dyG8hahm0mrOtLYipUMf29NLmYO3Pd8hBmu0BsS6x7iKTvltqsnHb9kiHmwfS0ein5wTvNxtvSVm6t3at6A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=i3LwRDQtpGSEx9FAiKDj4lCnsEe6TJoAjF/G0jCM2SM=;
 b=yWxjBpsOPRTyh+8S8Wdi5xT646a9Rppout6qn14f764Tlt+0eVtixSSbWM49jpZ8U70U559pmyARwV376KHbyXJMigprLDysjMbMWqOyn42SskvgvQhdar7kKpMO6+ClCnQg21tCYld1iI/bdRqdDS6q4L/F3/TJTUoTWZS2Ha3FZhICzWT2TvVmddnmt5dJkujIpj2ztoewlIHmrnnhdIxyQ58y3SzdAWuS5eshYGLve13Tg5NIJna/kE5P3Jefg43f+X6RpAeN7zFVZEYNbsxQi5swHOsbMy8cw+jnR+kyyEisalnsb6GC9ycm5ye0IbLH4ThSD5Kj2l/nN3dhgQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e7618567-0108-ce7a-de78-df14f13740fc@suse.com>
Date: Thu, 14 Sep 2023 11:11:54 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent timing
 mode
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
 <e4ab7415-cf72-4c04-93dd-fd393f49f6f5@xen.org>
 <dfbbf38c-8651-5396-c966-365fe954df48@suse.com>
 <bfe3a681-7dbd-462c-9a8c-969d5a99aaa1@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <bfe3a681-7dbd-462c-9a8c-969d5a99aaa1@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0205.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ad::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS1PR04MB9405:EE_
X-MS-Office365-Filtering-Correlation-Id: b2f1bc50-e064-4d60-32b1-08dbb502a54b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	v6QTDlmkNeC8cO+O//bfhShnVpVs4cjNI61QO6OwV3AwKFGrv8ze8t2IBWxL0oE2boQ4e4/GAu0atCw+e1oRhgObhuqmBWd1FqgalYGE9kSRsu2IdcrgDw/MZn4lB5V3cy3wvaeHVpRcTha0VGLBKHS+RQNolMjY+UlxThTfYHsVD+J0MOoWfYhSLFwYGRD47w+c9uySjtmY1QtO+5iqsJSQCglAqIuOpVb74XbNG5TAkWhUE1oPod5zSbWj21moWue0q1X5LpYkGYgyYfcwmrLutc1c8gFIzqOrxrCJif9NbriVzWkv02WvnwA/UG95hIjJ7TXE3U4onZ4LVFG7xrQPBwFetVF63Sm478r+PALWYvEGGI3t/GihUb8hFa/+MsCTDRT4u+zi9XRUkp0xwkZKjTYF9RFbFKPPm5Knd63mfOYXSI5sW3HE6i+oNIEBPCGxMMLCNE28fOWyCTCrHfF06MI4rbtgL9hsOy9gMWwC1PeR1psQb+PRgMTfU0zb5KSsUX7ruwR7QcXe8G0V4FQtW1v9rd6t3dt4pH2vMvJyGe4oGD3ep4CudDhSdHfWxYetIOiWt84mTXo93bURFEGW19WKmoHPRikUrqFfuEg2qvPeRkv6u+nFEZDd6c2iYrkY/yo03g8t1IWwCU1NT233OLzZVZp5j9lOBM9M2P8=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(136003)(39860400002)(346002)(366004)(1800799009)(186009)(451199024)(31686004)(2906002)(5660300002)(8676002)(41300700001)(8936002)(4326008)(66556008)(66476007)(6916009)(26005)(54906003)(66946007)(316002)(966005)(478600001)(53546011)(6506007)(6486002)(6666004)(6512007)(83380400001)(2616005)(36756003)(86362001)(31696002)(38100700002)(60764002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?S3JsUmxEZC9ncGtvaTRRVEtTaWdYNzFMNkpQQy9vOUZ2T3R0ZnoreGJMdjZ4?=
 =?utf-8?B?S0d3MkpkS1RORmFGRUt3RmVBMTA4UUpxVlhaNDhYS3J0R0thT0k3cFR6WXI2?=
 =?utf-8?B?VmtPdVcvb2lmbXNEUUIvbGh4SnFxNWwxMnJxK1FtSWs2ZTljREd1TTI3R21S?=
 =?utf-8?B?Q1Z5M1o5QlhGVEl4REIrYUVrYVZJVzJKRnNhSmFRcGNzM2pHMnMxZWVkLzVT?=
 =?utf-8?B?RlJKNE91aGF5VWVzaVhtK1FKbXNZdytoazZkcndDUVBNREZrTHgva0tBQnNY?=
 =?utf-8?B?eTlHR3J6V09KclJPbXcybzdQRzBiMlhLWkR4a2lPNGhIcjN0OHkyZGRPcGFq?=
 =?utf-8?B?cnJ1YWFYMUpSOFNlTEY0YTZTamk5RlVQVVJzcVZEdkNYcTllVnNwbGtoUzBl?=
 =?utf-8?B?dWdseTB5NUdid2ZVWW04R0dUN09NTFRTQVQ4Q1VxV2tDUStpTmx3RU9jWjcw?=
 =?utf-8?B?NDhoTC8vRFVEdjVLVUJ1TUxUcG5MU1R6a01IczRtVTNJY1dhQytzZjZrZ3p6?=
 =?utf-8?B?RXhnVURoSld4SFlXMGZwTXZ6Q1BhMmdTZjNEVXFoY3RUR2EzSVVIQ1ZSYW5M?=
 =?utf-8?B?QXF2RFF0dDRsMXFBSGhZVXZyUkI3cXBiRDd2bGJvcGRYUlVwK3lubVdzUG9l?=
 =?utf-8?B?Mi9QZCtXODJIOXpIWVhUaDd3MXdDRWRVU3lQa09RWEptNFpuSnlvYkxPSlRK?=
 =?utf-8?B?QWxWUHh2dUQ5L1R4YnNQSkcyWUQzb3ZCWVdja1hrNC9abmZYTTZKdVcrS2xB?=
 =?utf-8?B?VTJOY2U4ZG56YVdQZEVuQjY1MUYzdS9lMWF4b0NIWnduSEFiWUtSNjJvZTlx?=
 =?utf-8?B?U0YvZTgzenh3TzkwZVVVV1BTWmd6VXR3cHhMWkFOUmJ4VGdTZklTWHpUMG5i?=
 =?utf-8?B?RFVRdlcyY25sdnBDM2xXY3FjMXZsVDVBWHNRMjRaQ2FpSlAxaXJOaHkwMk5C?=
 =?utf-8?B?NXo4OGtFRy9vVTYvaHNsVGpUdEJaamxoSVlzdjBCOXFCbFgxOStsRTdobWRy?=
 =?utf-8?B?R042REUvWVEwOTNRNWdvR0d3cHFnUmpDdHh2UWVlWXFKb3dScGo5N05TV0hV?=
 =?utf-8?B?eWJTUTluQURJbXYzVk1sU01kQ1BqdG11L2xmQUdScERUM3lzZS9aOTBEYVZj?=
 =?utf-8?B?U3d6WXJwNTNUa3B5TlNKUXZ2QXZyS21Ka0N0dkY3RnRvcHNaZUl1aFVEZGlV?=
 =?utf-8?B?VDE4TGlDT1FacmRkRTNHa2k3VWg3UjFYdm5mU0ttenZqRXVpL1lucGs0bTRF?=
 =?utf-8?B?amFtV3QvN3NpajdDM0JZbnRpTERua2ZaTit5aDBxb1RzSkN0cVpnYWNKNlVV?=
 =?utf-8?B?T1VjUC9EczJpZEdDV0dpeU94SnhSQ1htMEFxcldrdmg1NW95TEhkTG9iVmtC?=
 =?utf-8?B?ckRRekRLWjhIUGhpV2dJNTJpZEt1a2FXbjMvTWhoZHFxTXl3RUlwUVRaSlRD?=
 =?utf-8?B?a25KWGg3OGFQd1R5QmU2UmpYazRHREdhVkVnanZmR3FEUFFiUU5ER0JSRHF6?=
 =?utf-8?B?cjFBWnNkOVozTis5Rks1K2M0NEV1d2JCQlZPOWtFOTlQWlJNR3NqbWVmbkox?=
 =?utf-8?B?ZTl1OVBkYmFydytVbWZmOWVXVXVaMmFIVkpFN3dQZ0p4d2x1ckdBWk4wUVZS?=
 =?utf-8?B?RGJRUkhMcmt3aG5MNFBxM0Q3QzJQOU9YbE9UQlhQR05qN283MVd1NHR4Yzhn?=
 =?utf-8?B?d1VwamFqdytyZkNZVGpJVU5NdHdnNlR6ZlphZ1hkMHdEOFBlcWVVcWRjQUY2?=
 =?utf-8?B?T2Iyb0RNVUNpb1crRHFVbmpQRjk5TkdNNTJhTU9GM1BSa3ZxSStxaTRJNXdP?=
 =?utf-8?B?eHRScEZaOEtWVTl4UTdWalYyTmVHMFB1TGhsNGU5a0dVZU9DNnlZdktOWHdF?=
 =?utf-8?B?UnExTEVlRGVUTHN4SlBxSWNlS3dsUUpHYk5zY05WL1Y4TGRqNzhYeU5OelNi?=
 =?utf-8?B?YWtJMFR4a0RHZTBsdnlOKzR0SjFMQ2ZQV2F2MUlaRHNleENPbmJLYzNlandC?=
 =?utf-8?B?anZZdktiOGptRTlPcWhSZnlOVWUvVllXNnNrT1U0NXgzd1c4ZGIyT1Fta2hh?=
 =?utf-8?B?elhIZEpObmQ4K1B3OXplUjNidldRcWt5OFQrWUhibkhDZVVqYk1hSFRleEcr?=
 =?utf-8?Q?QiCjaBskBj0+PyEooXFRuqmhJ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b2f1bc50-e064-4d60-32b1-08dbb502a54b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 09:11:57.2036
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: yy40/JZRSE3CDpIpljuaUZVNV+31wtkioCCKkFeYJM3odG9yFH6I5fSbngk3IO4MABP+5MVeUBAL4M5r5Q/ciA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9405

On 14.09.2023 11:04, Julien Grall wrote:
> On 14/09/2023 07:32, Jan Beulich wrote:
>> On 13.09.2023 19:56, Julien Grall wrote:
>>> On 11/09/2023 16:01, Jan Beulich wrote:
>>>> [1] specifies a long list of instructions which are intended to exhibit
>>>> timing behavior independent of the data they operate on. On certain
>>>> hardware this independence is optional, controlled by a bit in a new
>>>> MSR. Provide a command line option to control the mode Xen and its
>>>> guests are to operate in, with a build time control over the default.
>>>> Longer term we may want to allow guests to control this.
>>>
>>> If I read correctly the discussion on the previous version. There was
>>> some concern with this version of patch. I can't find anything public
>>> suggesting that the concerned were dismissed. Do you have any pointer?
>>
>> Well, I can point to the XenServer patch queue, which since then has
>> gained a patch of similar (less flexible) functionality (and seeing
>> the similarity I was puzzled by this patch, which was posted late
>> for 4.17, not having gone in quite some time ago). This to me
>> demonstrates that the original concerns were "downgraded". It would
>> of course still be desirable to have guests control the behavior for
>> themselves, but that's a more intrusive change left for the future.
>>
>> Beyond that I guess I need to have Andrew speak for himself.
>>
>>>> Since Arm64 supposedly also has such a control, put command line option
>>>> and Kconfig control in common files.
>>>>
>>>> [1] https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/best-practices/data-operand-independent-timing-isa-guidance.html
>>>>
>>>> Requested-by: Demi Marie Obenour <demi@invisiblethingslab.com>
>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>> ---
>>>> This may be viewed as a new feature, and hence be too late for 4.18. It
>>>> may, however, also be viewed as security relevant, which is why I'd like
>>>> to propose to at least consider it.
>>>>
>>>> Slightly RFC, in particular for whether the Kconfig option should
>>>> default to Y or N.
>>>
>>> I am not entirely sure. I understand that DIT will help in the
>>> cryptographic case but it is not clear to me what is the performance impact.
>>
>> The entire purpose of the bit is to have a performance impact, slowing
>> down execution when fastpaths could be taken, but shouldn't to achieve
>> the named goal. 
> 
> I understood that. My question was more related to how much it will 
> degrade the performance. This will help to know whether the default 
> should be yes or no.

Well, as said - I have no information beyond that to be found at the
provided URL.

>>>> --- a/xen/arch/x86/cpu/common.c
>>>> +++ b/xen/arch/x86/cpu/common.c
>>>> @@ -204,6 +204,28 @@ void ctxt_switch_levelling(const struct
>>>>    		alternative_vcall(ctxt_switch_masking, next);
>>>>    }
>>>>    
>>>> +static void setup_doitm(void)
>>>> +{
>>>> +    uint64_t msr;
>>>> +
>>>> +    if ( !cpu_has_doitm )
>>>
>>> I am not very familiar with the feature. If it is not present, then can
>>> we guarantee that the instructions will be executed in constant time?
>>
>> _We_ cannot guarantee anything. It is only hardware vendors who can. As a
>> result I can only again refer you to the referenced documentation. It
>> claims that without the bit being supported in hardware, an extensive
>> list of insns is going to expose data operand independent performance.
> 
> Right. So ...
> 
>>
>>> If not, I think we should taint Xen and/or print a message if the admin
>>> requested to use DIT. This would make clear that the admin is trying to
>>> do something that doesn't work.
>>
>> Tainting Xen on all hardware not exposing the bit would seem entirely
>> unreasonable to me. If we learned of specific cases where the vendor
>> promises are broken, we could taint there, sure. I guess that would be
>> individual XSAs / CVEs then for each instance.
> 
> ... we need to somehow let the user know that the HW it is running on 
> may not honor DIT. Tainting might be a bit too harsh, but I think 
> printing a
> message with warning_add() is necessary.

But Intel's claim is that with the bit unavailable hardware behaves as
if DIT was in effect. Therefore you're still suggesting to emit a
warning on most of Intel's hardware and on all non-Intel one. That's
going too far, imo.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 09:19:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 09:19:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602161.938562 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgiUz-0003Bo-JD; Thu, 14 Sep 2023 09:18:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602161.938562; Thu, 14 Sep 2023 09:18:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgiUz-0003BR-FP; Thu, 14 Sep 2023 09:18:57 +0000
Received: by outflank-mailman (input) for mailman id 602161;
 Thu, 14 Sep 2023 09:18:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qgiUy-0003BL-Gb
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 09:18:56 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgiUs-0002Um-9m; Thu, 14 Sep 2023 09:18:50 +0000
Received: from [15.248.3.3] (helo=[10.24.67.35])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgiUs-0003c8-3u; Thu, 14 Sep 2023 09:18:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=6gcXO685AHwg36CRpGoR64jX8qey5hnAKVuFUglbMFM=; b=pDSGh94K3tEYUCnzO0EIA/5kIk
	Lfj+uUU98IU9ilmvimyd+46rQ8vnRr4tWA7oK2VxH4TukzLhPKVyIfkbuiouGPqggAULuONl6mjlQ
	xSWaX+Wk7OBbtolITaZdgajS6pWwfiFZrX1WxFJXzPFW645MTlix90HYqcd6jTyQ10fU=;
Message-ID: <3c0ce6b3-6b26-4265-b560-11faef768e0f@xen.org>
Date: Thu, 14 Sep 2023 10:18:48 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent timing
 mode
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
 <e4ab7415-cf72-4c04-93dd-fd393f49f6f5@xen.org>
 <dfbbf38c-8651-5396-c966-365fe954df48@suse.com>
 <bfe3a681-7dbd-462c-9a8c-969d5a99aaa1@xen.org>
 <e7618567-0108-ce7a-de78-df14f13740fc@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <e7618567-0108-ce7a-de78-df14f13740fc@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 14/09/2023 10:11, Jan Beulich wrote:
> On 14.09.2023 11:04, Julien Grall wrote:
>> On 14/09/2023 07:32, Jan Beulich wrote:
>>> On 13.09.2023 19:56, Julien Grall wrote:
>>>> On 11/09/2023 16:01, Jan Beulich wrote:
>>>>> [1] specifies a long list of instructions which are intended to exhibit
>>>>> timing behavior independent of the data they operate on. On certain
>>>>> hardware this independence is optional, controlled by a bit in a new
>>>>> MSR. Provide a command line option to control the mode Xen and its
>>>>> guests are to operate in, with a build time control over the default.
>>>>> Longer term we may want to allow guests to control this.
>>>>
>>>> If I read correctly the discussion on the previous version. There was
>>>> some concern with this version of patch. I can't find anything public
>>>> suggesting that the concerned were dismissed. Do you have any pointer?
>>>
>>> Well, I can point to the XenServer patch queue, which since then has
>>> gained a patch of similar (less flexible) functionality (and seeing
>>> the similarity I was puzzled by this patch, which was posted late
>>> for 4.17, not having gone in quite some time ago). This to me
>>> demonstrates that the original concerns were "downgraded". It would
>>> of course still be desirable to have guests control the behavior for
>>> themselves, but that's a more intrusive change left for the future.
>>>
>>> Beyond that I guess I need to have Andrew speak for himself.
>>>
>>>>> Since Arm64 supposedly also has such a control, put command line option
>>>>> and Kconfig control in common files.
>>>>>
>>>>> [1] https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/best-practices/data-operand-independent-timing-isa-guidance.html
>>>>>
>>>>> Requested-by: Demi Marie Obenour <demi@invisiblethingslab.com>
>>>>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>>>>> ---
>>>>> This may be viewed as a new feature, and hence be too late for 4.18. It
>>>>> may, however, also be viewed as security relevant, which is why I'd like
>>>>> to propose to at least consider it.
>>>>>
>>>>> Slightly RFC, in particular for whether the Kconfig option should
>>>>> default to Y or N.
>>>>
>>>> I am not entirely sure. I understand that DIT will help in the
>>>> cryptographic case but it is not clear to me what is the performance impact.
>>>
>>> The entire purpose of the bit is to have a performance impact, slowing
>>> down execution when fastpaths could be taken, but shouldn't to achieve
>>> the named goal.
>>
>> I understood that. My question was more related to how much it will
>> degrade the performance. This will help to know whether the default
>> should be yes or no.
> 
> Well, as said - I have no information beyond that to be found at the
> provided URL.
> 
>>>>> --- a/xen/arch/x86/cpu/common.c
>>>>> +++ b/xen/arch/x86/cpu/common.c
>>>>> @@ -204,6 +204,28 @@ void ctxt_switch_levelling(const struct
>>>>>     		alternative_vcall(ctxt_switch_masking, next);
>>>>>     }
>>>>>     
>>>>> +static void setup_doitm(void)
>>>>> +{
>>>>> +    uint64_t msr;
>>>>> +
>>>>> +    if ( !cpu_has_doitm )
>>>>
>>>> I am not very familiar with the feature. If it is not present, then can
>>>> we guarantee that the instructions will be executed in constant time?
>>>
>>> _We_ cannot guarantee anything. It is only hardware vendors who can. As a
>>> result I can only again refer you to the referenced documentation. It
>>> claims that without the bit being supported in hardware, an extensive
>>> list of insns is going to expose data operand independent performance.
>>
>> Right. So ...
>>
>>>
>>>> If not, I think we should taint Xen and/or print a message if the admin
>>>> requested to use DIT. This would make clear that the admin is trying to
>>>> do something that doesn't work.
>>>
>>> Tainting Xen on all hardware not exposing the bit would seem entirely
>>> unreasonable to me. If we learned of specific cases where the vendor
>>> promises are broken, we could taint there, sure. I guess that would be
>>> individual XSAs / CVEs then for each instance.
>>
>> ... we need to somehow let the user know that the HW it is running on
>> may not honor DIT. Tainting might be a bit too harsh, but I think
>> printing a
>> message with warning_add() is necessary.
> 
> But Intel's claim is that with the bit unavailable hardware behaves as
> if DIT was in effect.

I am confused. Above, you suggested it cannot be guaranteed. So I 
interpreted we don't know what's happening on any processor. So where 
you referring to...


  Therefore you're still suggesting to emit a
> warning on most of Intel's hardware and on all non-Intel one.

... non-Intel HW?

> That's
> going too far, imo.

We could restrict the warning to non-Intel platform.


> Jan

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 09:34:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 09:34:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602168.938572 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgijg-0004YW-Pa; Thu, 14 Sep 2023 09:34:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602168.938572; Thu, 14 Sep 2023 09:34:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgijg-0004YP-Mo; Thu, 14 Sep 2023 09:34:08 +0000
Received: by outflank-mailman (input) for mailman id 602168;
 Thu, 14 Sep 2023 09:34:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgijf-0004YI-IJ
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 09:34:07 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2077.outbound.protection.outlook.com [40.107.13.77])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d8ae0001-52e1-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 11:34:05 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9283.eurprd04.prod.outlook.com (2603:10a6:10:36d::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 09:33:36 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 09:33:35 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d8ae0001-52e1-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=l/sQ/hPf7aJMvgujH5SL/Okk7QmqCbFu4Ubk6MOl8OrXQpYJpqMh3k1fhp8m86qXoQBT/HfKGw3tJyXYyI0NeCdqBQw9QQVU3WwcGi3iAetl6x8JS/SNSkDbeouALb5oCu9Ls6FtdbXpqA6AgRJGhuvyBSaKYg7kUn4Ccn/QkVdhTii2J2mc4sKqgO7FM7QQ4G4xsH6i68bh5kQs/ltM7RJBERzCW6ZmKq5UqQvznPYSVYrbrhMPTX+aXawOQiPO1D/7uuvLMq+9al8UuWm6HIJ458ERFAnYztRzb1gY37N0xr2Ax160yHrLDKqAOWD+/O+Rvb9rMxDCLP606jvK6A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=w0+kUN7Q3YoxPaK9V0YptjbAt6nhVQFSlr+4KgqzW4w=;
 b=FxDAOQQEM3hErYl/XBf5t/cw/auPKYh7y/C4x7aPA4l9FuXpldstvsn7E4QC1+LMSbdBYlnphpntAlvXLcFt9++pYlFhnyhIRTUqpFindW9m021VXGtoX3Yr+R1cEF0W1l8ZGczATypoACrIjRFmgyc5//ChhU0R0xgojDvEfOpJWNTtR6ZwSXjVcbVLhuRsYq90XcMlXsiFUUOAZOgiokJy4pe1fob2vYA95dhUomYPjIBenAiaLDh3UnZskrqOFy3/w/yvjRZjYAA5zfuHZ7J0GiCwCslRd7XyScASRztluUUpC/95sg6FS1UvwvaIzSJVGNw+RNd0Yky3E6vDng==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=w0+kUN7Q3YoxPaK9V0YptjbAt6nhVQFSlr+4KgqzW4w=;
 b=bP/7483eMthKsSKwCKJb1mqqWUsRvyy8uT9G8p44xC3pKSbS4SBlXu0mB9xbK8P1K+TDmx5ZUI+HPHa0IP8M9gdEUHz+SByGfWF1aBvENfcEiKEWj8PZacXI+JoVNbFZ6pBE6spLHmxGjtTUxvvVdI/OJIsBXaKjWAxlPPjyfEvwCl2/Ocx7XMe1mAzSCc2/2/HyXsI4G4RcY9+CvScfcWM4jzbp+9CMpfXeGSx1fyxSfybVTiY+6SPGCLTDv6FVeuP88Stqzyr/wumTcoEkERHsLswP6GyWDZv8uSVd4gW0z3cCVC2EkMNb4LBF8w5NG73XVAgtYrTaNHWRR6AWKg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <762b58fe-a841-f92c-93a8-77dbb86bf118@suse.com>
Date: Thu, 14 Sep 2023 11:32:04 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 6/8] x86/entry: Track the IST-ness of an entry for the
 exit paths
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-7-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230913202758.508225-7-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0167.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b4::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB9283:EE_
X-MS-Office365-Filtering-Correlation-Id: 96715eb8-38fc-4a27-e99a-08dbb505ab63
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	g0GNk/A/YiEd1qjxdLMV1gAVRUQUZwbEzcS6iYwc8MPfuCHTCJgIP+3ls5+u53wxAXeqLvzLdws8fuWyl8J+eKJBAD0qx4YmR5apRHnHOmuE45OO8X0W89a1Cqf7Yzz2Ck1otmHPGaAF/Ypd2I4lDegzTWyNjUQfesq5NguVFiA0OhxvtAaOISKGORYVWWM21EZiDwvprdd7ivlbhg8rfT/29wWMfxpn4YVTjzx15AJGTxwcM5SLyUo5BAWTHk24xodST5LuEmQcAqnsMGTkSoOfHFepNhI6NwxJP4YSa4OwYkjc5vNgSCxVCAoWmkdGUz7+3VDMwAJ+KKi0t9CXB+nhLrilG/EU8V9WkhpXwzffAcYgSUs0MaD36eW9S+4IBCqppP05shkbn7KkqeoV3fdBnGJFTtPxMsWGwhQEtj+flmY6gCiuDOEBaA2PvFRzfKlYku37vIWvTo8OIkqZIv7s7KNN3IDPv8D49jw0EYpUfYQZvyTUdskpSmKFdfB/wkOe9GZ0sTk6h6y2YWq9C2L7QvjFbI73Ax3HWMifTzIGxvVI4XOWH9p6J5dpTOHJpo4ptTW3DVwDhS9GwA68DKz9RPV9IKFO9pq8Cv5aH8EAsul0MeV7p5XgMtvnP6u1Rsud/qkms0niXC0+q0vUCQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(366004)(396003)(39860400002)(346002)(376002)(451199024)(1800799009)(186009)(38100700002)(2616005)(478600001)(36756003)(6486002)(6666004)(6506007)(53546011)(66476007)(41300700001)(66946007)(66556008)(54906003)(6916009)(316002)(6512007)(26005)(31686004)(83380400001)(8936002)(4326008)(8676002)(2906002)(5660300002)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bmZ4WENDSkRIbmpYRlZ0c25BSnI5Rjd3Wno5QldVQ3c4RndJVEhWQXZ1Z2dB?=
 =?utf-8?B?RC8xVVFkb2dtYWpOQmpGdUpNR0JTRk5tejlJOVVhRzY3TzVsYy9EQTZ1cS9p?=
 =?utf-8?B?YzU2bDF3d1Y2RlZEMXpXaW1QbGlSMFljZ0RQMnFtT0Q0eS9qRXNBY1liQ1hN?=
 =?utf-8?B?L2tzbkxENkpicElZQi9DS2pFSXpvRGtSUHBsaVNUQVZ4WDBUN1JZQW5sbnhN?=
 =?utf-8?B?aUwxbEViZTIrZ3ZQOTc1YkpSS0x5MUtXVXVQa05oWDV6UnRQSmY0OWNoZXhY?=
 =?utf-8?B?bFhDVGtPZDFSVURTYWtyVnUzUUJRbE1hREdsc0lMVnJyT0hIWXZnNGkvbndD?=
 =?utf-8?B?di94ZHlydnJYaSs0emhDN1ZrS1RYSXU2QXp3UTZwZVpmbXFBT1BBNXdaS2pC?=
 =?utf-8?B?NzFmT1RlZVRlR3R5dGJ4b25WUENsOTRYWEhZTmRubEpnTEw3cVg2L0VHQXJI?=
 =?utf-8?B?TmU0QWxwaFVIL0RtbHVLNlZ0bXRrdGY0TVAyT01XN3gxYW9sZDF1ckxaMmY0?=
 =?utf-8?B?SmVMUHd4RGxBQ0Z6dEdDd0daSllwdlV5b1BkZE00YTFzWC9VZXBCNWFuK1hJ?=
 =?utf-8?B?Uy9TZllYVE01QUpxdDJUUWxpTmhvZjlqcWYrUzlOSmYzTzNxQ3hzVlZ1MmN4?=
 =?utf-8?B?am1KYkNYMHV0MWcydUV0Z0ZCdm92MDJBaE9qNStyclJtRFFRR3F3ajBoS2pk?=
 =?utf-8?B?MEdmYnJsaGlLUnhOVUtlWk1DR3pkOG03RSt6THRicExmKzMxeGN1Rnl4Y3Z3?=
 =?utf-8?B?VFdmN1h4d3M3azhlVy9sa2lEdzBLUm1xNmFXZVpBdHFreFdwb05QRUdvUEpH?=
 =?utf-8?B?aS8rVkdyaTlhSmRaZ3Q0OGkvdTdpTklHcFJraHBtdlpPb2xOYm1wMHlHQ1FO?=
 =?utf-8?B?aUNSMlFnQkF2UGVaN3hKTFJqa2VwYmw4MFFDVklod24vOVg1dlQ0TXdqNFJo?=
 =?utf-8?B?UzBYN00reGRTcmJMV1ZYZmM1MUN6Y1lycEVWeDl3KzlhTDNhMW96NXVROGZj?=
 =?utf-8?B?ek1RWDJnMlNDQlNNcVBqOFZXeGVTeVkrUmZEaWlmYitMeWUzMXBBaDR2OXRx?=
 =?utf-8?B?QjZOODdsV0lqdDBaVXo5a25iM2RQY3ZYZ1BUZlR5SWUza1I1Wk0vRnlhQTdL?=
 =?utf-8?B?akc0bm15c3BQNHp5ZUw0ZEprNEppZ3gyMnlFT3k3Z1loM1VOd1lDMS9LSEVD?=
 =?utf-8?B?YnVjTXF6MC95WGNxemdHcnhKQ213Uy9QcXErV0lMMTlaMmp6UlRnUFoxK2N5?=
 =?utf-8?B?dDYwU3pGU2pMVENDeEZITGNZZlFLWUZwUWxPTDE3NEtKdkNHWG5zRzIxV2Z1?=
 =?utf-8?B?cEFjaUV2bHdGaVh6YmhPWjdPT2hGZEtVcGlhTlpwdElOZ0dYbHAyT1IrdHVX?=
 =?utf-8?B?MDdEQTdYbmtWcUMveFR3cEdDSzNGUXpjQndxQUQwS2ZaWVI2Zzk1bTVvR2JV?=
 =?utf-8?B?N1BoQnJ5TnlyaXVwMk5YbFhqaW1GZ3hRQVg5OUE1cmtQSDFudnFrLzUvakt0?=
 =?utf-8?B?b2RBL0E3YWp4ekxVTWF4VisxQVk4VkFnN3huRE1Ec0JqV1kxa1N1MTJYSDN6?=
 =?utf-8?B?SVFSeEt4dGhLZHFLK1VhNSttWUhzZFRPU0x2UlB3cXBtdTBWTE1WbTRyQ29w?=
 =?utf-8?B?UkM0VitKZ1JCeXZ5d0ZHaHVOTEU5S2dmalNBbjB1andQcW5URGxDRm9JbDQx?=
 =?utf-8?B?RGFIU3NBemdzM0pQMG1CK1Rzb09rRHhvV28yTXJHMmZIQjl0Vm51N1V5OXlG?=
 =?utf-8?B?cnFqcUxZNjFHUEx0UmtRNmZUMlNOZnFBSEUyVjk2S1ozVkxhYXgyZ0dKMEhh?=
 =?utf-8?B?aGlxQlUrUytIdzZpTSt5aTcwdDh2MGdCUG0zV0lPMXVzVTZCNmxQSHJJQ292?=
 =?utf-8?B?a1U0alRFTlpheEljbDVoNzNVQjY0TjJBTGJGY2h3ZkZ4Rk95bmFKZy91WHpu?=
 =?utf-8?B?bUNYOUp3ZWJON1VjR2RJSTdhbWJzeHhOTHNnc2psY2dIYUVzaEMvM2p4cHV1?=
 =?utf-8?B?Ri83WEM5anV5MDFYdlpDR3dKaGMyT2dSR0JyMjYvUjNtMjQzb2xlNEZrTjhK?=
 =?utf-8?B?WW9rQnNhdDVwUXAyRzFpT3FWb1pNL0JGN3NoazdxRG9mWnBQUW8zTDJYUTh2?=
 =?utf-8?Q?bt4ATdiiuuFnrK0va4y+gU6HZ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 96715eb8-38fc-4a27-e99a-08dbb505ab63
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 09:33:35.9114
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: jdgUn31zTK0lI4BegAWjL3bqCYDid4J2vaifDM5OP5H+50Nd5r4aGwabA6jTGmEJgGKD9RFHzzOjqyN+E2lLYg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9283

On 13.09.2023 22:27, Andrew Cooper wrote:
> --- a/xen/arch/x86/x86_64/compat/entry.S
> +++ b/xen/arch/x86/x86_64/compat/entry.S
> @@ -117,8 +117,15 @@ compat_process_trap:
>          call  compat_create_bounce_frame
>          jmp   compat_test_all_events
>  
> -/* %rbx: struct vcpu, interrupts disabled */
> +/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
>  ENTRY(compat_restore_all_guest)
> +
> +#ifdef CONFIG_DEBUG
> +        mov   %rsp, %rdi
> +        mov   %r12, %rsi
> +        call  check_ist_exit
> +#endif
> +
>          ASSERT_INTERRUPTS_DISABLED
>          mov   $~(X86_EFLAGS_IOPL | X86_EFLAGS_VM), %r11d
>          and   UREGS_eflags(%rsp),%r11d

Without having peeked ahead, is there any use of %r12 going to appear
on this path? I thought it's only going to be restore_all_xen?

> --- a/xen/arch/x86/x86_64/entry.S
> +++ b/xen/arch/x86/x86_64/entry.S
> @@ -142,10 +142,16 @@ process_trap:
>  
>          .section .text.entry, "ax", @progbits
>  
> -/* %rbx: struct vcpu, interrupts disabled */
> +/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
>  restore_all_guest:
> -        ASSERT_INTERRUPTS_DISABLED
>  
> +#ifdef CONFIG_DEBUG
> +        mov   %rsp, %rdi
> +        mov   %r12, %rsi
> +        call  check_ist_exit
> +#endif
> +
> +        ASSERT_INTERRUPTS_DISABLED
>          /* Stash guest SPEC_CTRL value while we can read struct vcpu. */
>          mov VCPU_arch_msrs(%rbx), %rdx
>          mov VCPUMSR_spec_ctrl_raw(%rdx), %r15d

Even here I don't think I see a need for the addition. Plus if the check
is warranted here, is it really necessary for it to live ahead of the
interrupts-disabled check? Further, seeing that being marco-ized, would
it make sense to have a CHECK_IST_EXIT macro in case more than a single
use site remains?

> @@ -1087,6 +1100,10 @@ handle_ist_exception:
>  .L_ist_dispatch_done:
>          mov   %r15, STACK_CPUINFO_FIELD(xen_cr3)(%r14)
>          mov   %bl, STACK_CPUINFO_FIELD(use_pv_cr3)(%r14)
> +
> +        /* This is an IST exit */
> +        mov   $1, %r12
> +
>          cmpb  $X86_EXC_NMI, UREGS_entry_vector(%rsp)
>          jne   ret_from_intr

Could I talk you into using a less than 7-byte insn here? "or $1, %r12"
would be 4 bytes, "mov $1, %r12b", "inc %r12", and "not %r12" would be
just 3. All have certain downsides, yes, but I wonder whether switching
isn't worth it. Even "mov $1, %r12d" would be at least one byte less,
without any downsides. And the OR and INC variants would allow the
remaining 63 bits to be used for another purpose down the road.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 09:37:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 09:37:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602176.938582 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgimZ-0005rF-Dk; Thu, 14 Sep 2023 09:37:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602176.938582; Thu, 14 Sep 2023 09:37:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgimZ-0005r8-9A; Thu, 14 Sep 2023 09:37:07 +0000
Received: by outflank-mailman (input) for mailman id 602176;
 Thu, 14 Sep 2023 09:37:07 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qgimY-0005qD-Un
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 09:37:06 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgimY-0002qU-Mq; Thu, 14 Sep 2023 09:37:06 +0000
Received: from [15.248.3.3] (helo=[10.24.67.35])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgimY-0004Gx-G5; Thu, 14 Sep 2023 09:37:06 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=zGMiidAp6KiQFnF0CuxpF8jNv8x97nvi5ACKXaGt7sY=; b=5v/yyLPL31ExwsaQDQtfYMOexu
	wy3DWd/RwxoInDOPabRhlcSCe7Ld4TuWF1Yy3g84joA7JCi5ESjGhxr53+86QzmnIlhuxiTdzQXw9
	DD9ERtb3Yvd9BGiCgMFyFrSIY0/775vHXFWhZMvUPym+4a8UodkHhGThTEXLzSgftT2o=;
Message-ID: <23a0185e-428d-496b-96b6-d5082800bfd4@xen.org>
Date: Thu, 14 Sep 2023 10:37:05 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: RFC: arm64: Handling reserved memory nodes
Content-Language: en-GB
To: Leo Yan <leo.yan@linaro.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Henry Wang
 <Henry.Wang@arm.com>, Penny Zheng <penny.zheng@arm.com>
References: <20230914081607.GA1400758@leoy-huanghe.lan>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230914081607.GA1400758@leoy-huanghe.lan>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 14/09/2023 09:16, Leo Yan wrote:
> Hi all,

Hi Leo,

> I'd like to discuss for how to handle the reserved memory nodes in DT
> binding on Xen / Arm64.  Note, now I am using DTB when boot Xen but
> not UEFI/ACPI (ACPI is disabled in this case).
> 
> ## Failure
> 
> I ported Xen on a platform, after the kernel booting, the Xen hypervisor
> reports error:
> 
>    (XEN) arch/arm/p2m.c:2202: d0v0: Failing to acquire the MFN 0x1a02dc
> 
> This error is caused by kernel using an invalid memory frame number
> 0x1a02dc, we can convert it to the address:
> 
>    0x1a02dc << PAGE_SHIFT = 0x1_a02d_c000

This error is coming from get_page_from_gva(). The use of the function 
is usually an indication that Xen is trying to access the page. Can you 
use WARN() to provide a full trace?

> 
> ## Reason
> 
> Two important things we need to check.  One is what's the DT binding
> passed from the bootloader to Xen hypervisor, and the second thing is
> what's the DT binding passed from Xen hypervisor to kernel.
> 
> We can see the bootloader passes below memory nodes to Xen hypervisor:
> 
>    (XEN) RAM: 0000000020000000 - 00000000bfffffff
>    (XEN) RAM: 00000001a0000000 - 00000002ffffffff
>    (XEN)
>    (XEN) MODULE[0]: 0000000020100000 - 0000000020265000 Xen
>    (XEN) MODULE[1]: 0000000023000000 - 0000000023024000 Device Tree
>    (XEN) MODULE[2]: 0000000024000000 - 0000000028000000 Kernel
>    (XEN)  RESVD[0]: 0000000020000000 - 000000002000ffff
>    (XEN)  RESVD[1]: 0000000040000000 - 000000005fffffff
>    (XEN)  RESVD[2]: 00000001a0000000 - 00000001bfffffff
>    (XEN)  RESVD[3]: 000000002e000000 - 000000002fffffff
> 
> We can see the second DDR section is:
> 
>    [0x0000_0001_a000_0000 .. 0x0000_0002_ffff_ffff]
> 
> And there have reserved memory section is:
> 
>    [0x0000_0001_a000_0000 .. 0x0000_0001_bfff_ffff]
> 
> When register the boot memory sections, dt_unreserved_regions() will
> remove all reserved memory sections, which means the section
> [0x0000_0001_a000_0000 .. 0x0000_0001_bfff_ffff] is not managed by Xen
> hypervisor at all.  If later kernel uses any pages in this range, Xen
> will report the error.

It is perfectly fine for dom0 to access a page that are not managed by 
Xen (a good example is MMIO regions are not managed). Now, some problems 
can occur if the page then needs to be access by Xen (e.g. if they 
contain hypercall buffers).

[...]

> ## Fixes
> 
> I think it's wrong to add the reserved memory regions into the DT
> binding as normal memory nodes for Dom0 kernel.  On the other hand, we
> cannot simply remove these reserved memory regions and don't pass to
> Dom0 kernel - we might reserve memory for specific purpose, for example,
> ramoops [1] for kernel debugging.
> 
> The right thing to do is to keep these reserved memory nodes to Dom0
> kernel.  So one task is to record properties for these reserved memory
> node name and properties and pass to Dom0 kernel.
> 
> The difficulty is how we can avoid allocate these reserved memory
> regions in Xen hypervisor.  We cannot register the reserved memory
> into the boot pages, otherwise, the reserved memory might be allocated
> in the early phase.  But we need to register these pages into the
> frame management framework and reserve them in the first place, so
> that we can allow Dom0 kernel to use them.  (I checked a bit the static
> memory mechanism, seems to me we cannot use it to resolve this issue).

 From my understanding reserved region are normal RAM which have been 
carved out for specific purpose. They may expect different caching 
policy (e.g. non-cachable). AFAIK, Xen doesn't have the capability to 
know the memory attribute (the DT binding only tell whether the region 
should not mapped. See the property "no-map"), hence why they were 
excluded from the memory management.

It would be good to understand why Xen may try to get a reference on the 
page.

Also, can you find the associated reserved-region and content of the 
Device-Tree?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 09:55:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 09:55:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602184.938591 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgj3h-000545-Pi; Thu, 14 Sep 2023 09:54:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602184.938591; Thu, 14 Sep 2023 09:54:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgj3h-00053y-Mv; Thu, 14 Sep 2023 09:54:49 +0000
Received: by outflank-mailman (input) for mailman id 602184;
 Thu, 14 Sep 2023 09:54:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgj3g-00053r-IK
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 09:54:48 +0000
Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com
 [2a00:1450:4864:20::335])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bc7cbe96-52e4-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 11:54:46 +0200 (CEST)
Received: by mail-wm1-x335.google.com with SMTP id
 5b1f17b1804b1-401bbfc05fcso7618535e9.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 02:54:46 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 u20-20020a05600c211400b003fe1fe56202sm1489326wml.33.2023.09.14.02.54.45
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 02:54:45 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bc7cbe96-52e4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694685286; x=1695290086; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=fnEsIAeUeRDytyDgEkmMnJgqklpj0VzFI2M3W0xEsYo=;
        b=BTeLSHAKYzeqJtTjHm2jP9HiWkAWBdzZExqCVWOLvQrx6OTNsNRjB2VpU6lzD4KHiy
         KNcsSRLIvbnfm1T/GxeqClPb5/NPygx8i5Oa5q3Zi447hvsUCzQYaY/rOUlemVFCBfXc
         w8AOcOL6WAMG2uv5w9nXDkIcEWopz2E75xlbo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694685286; x=1695290086;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=fnEsIAeUeRDytyDgEkmMnJgqklpj0VzFI2M3W0xEsYo=;
        b=jhckfPNkd7zjYA3DBr2fcnUFJuIp0nog8UljkFSSB7HsngpJoqPHjlkzqDbrATKdcF
         8rcf5iY4gwbejXagTlof+CRD8vqJwZSkIXS/i5qWmziTSvFPMvVvmSnQbKHc+NGeevcn
         yO5Lwoi/0gMDM2KMIomTD56UN+rdz0zTGL6QGOOvgK3q6RBw1lfiOZl0Zt5tclBd79/6
         uUPsCFGl/W2Zg2Vo5mq+asK1vRmwUwlAzZTE2NySNqP4LlK/jnK1m2COOsiiJBoBLSzl
         X471kF9BY6Bw6EXE+otOW4GWuVvkjAgghKIIcWQoQocCRGvqlyt6TY5OIPChNWOgesqN
         FzOQ==
X-Gm-Message-State: AOJu0Yy0z3HNS8KPhDUoT7ty2sXFfs/Dc3hl//tBAOq0AYR6T+BsN7fq
	9KQCQh/qvSvkmuGpDyN6gNtmgg==
X-Google-Smtp-Source: AGHT+IEbW/34obSf9Pjgt9KdCBO1eNO685TleUgQUdivzFpTEwHWBti6lVC8WQhXjmrgFWCV435+IQ==
X-Received: by 2002:a7b:c7cb:0:b0:3fe:dc99:56ea with SMTP id z11-20020a7bc7cb000000b003fedc9956eamr4072824wmk.19.1694685285953;
        Thu, 14 Sep 2023 02:54:45 -0700 (PDT)
Message-ID: <cde7f3b7-2e58-222a-ebac-6e745150eedd@citrix.com>
Date: Thu, 14 Sep 2023 10:54:44 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 1/8] x86/spec-ctrl: Fix confusion between
 SPEC_CTRL_EXIT_TO_XEN{,_IST}
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-2-andrew.cooper3@citrix.com>
 <4181dbec-38a4-d0dd-c132-2d23579c36a7@suse.com>
In-Reply-To: <4181dbec-38a4-d0dd-c132-2d23579c36a7@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 7:56 am, Jan Beulich wrote:
> On 13.09.2023 22:27, Andrew Cooper wrote:
>> c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
>> dropped the only user, leaving behind the (incorrect) implication that Xen had
>> split exit paths.
>>
>> Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
>> to SPEC_CTRL_EXIT_TO_XEN for consistency.
>>
>> No functional change.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> albeit ...
>
>> @@ -256,11 +255,6 @@
>>      ALTERNATIVE "", __stringify(DO_SPEC_CTRL_ENTRY maybexen=1),         \
>>          X86_FEATURE_SC_MSR_PV
>>  
>> -/* Use when exiting to Xen context. */
>> -#define SPEC_CTRL_EXIT_TO_XEN                                           \
>> -    ALTERNATIVE "",                                                     \
>> -        DO_SPEC_CTRL_EXIT_TO_XEN, X86_FEATURE_SC_MSR_PV
>> -
>>  /* Use when exiting to PV guest context. */
>>  #define SPEC_CTRL_EXIT_TO_PV                                            \
>>      ALTERNATIVE "",                                                     \
>> @@ -328,7 +322,7 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>>  .endm
>>  
>>  /* Use when exiting to Xen in IST context. */
>> -.macro SPEC_CTRL_EXIT_TO_XEN_IST
>> +.macro SPEC_CTRL_EXIT_TO_XEN
> ... with the comment her updated (either by dropping "in IST" or by
> explicitly mentioning both cases).

The comment is rewritten from scratch in patch 4.  I'm not moving that
rewrite to here, and the comment isn't technically wrong to begin with,
but I suppose I can drop the IST part.  Just means more churn.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 10:01:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 10:01:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602189.938602 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgjA1-0000pI-FC; Thu, 14 Sep 2023 10:01:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602189.938602; Thu, 14 Sep 2023 10:01:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgjA1-0000pB-C7; Thu, 14 Sep 2023 10:01:21 +0000
Received: by outflank-mailman (input) for mailman id 602189;
 Thu, 14 Sep 2023 10:01:20 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qgjA0-0000p4-74
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 10:01:20 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgj9z-0003Xe-S4; Thu, 14 Sep 2023 10:01:19 +0000
Received: from [15.248.3.3] (helo=[10.24.67.35])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgj9z-0005AW-Kk; Thu, 14 Sep 2023 10:01:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=QBB7IcN/xMPzZxTPUcTa0/Ki6TlaNWWap2QVcxneY3M=; b=OxiSvzNyC5nLCyyH6hGDx8bVC7
	1JNIxa4HGzs+VFHpjuWJK5obEumEvDCdcxTNXIoS/zwyeIoyk7vPL7RkAhvcMXkBdKCotwPfAe2ij
	Rmvi36TevEzPQ2R5zBOJlwTbjj0jT5aaO9a3enafP/dKB/Xd1h4BauY16oWY6OFQZayA=;
Message-ID: <2563c6a3-54cf-46f5-aa93-d583e21d4ec0@xen.org>
Date: Thu, 14 Sep 2023 11:01:18 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 1/2] xen/arm: Add macro XEN_VM_MAPPING
Content-Language: en-GB
To: Leo Yan <leo.yan@linaro.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Alexey Klimov <alexey.klimov@linaro.org>
References: <20230914021734.1395472-1-leo.yan@linaro.org>
 <20230914021734.1395472-2-leo.yan@linaro.org>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230914021734.1395472-2-leo.yan@linaro.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 14/09/2023 03:17, Leo Yan wrote:
> Xen maps the virtual memory space starting from L0 slot 4, so it's open
> coded for macros with the offset '4'.
> 
> For more readable, add a new macro XEN_VM_MAPPING which defines the
> start slot for Xen virtual memory mapping, and all virtual memory
> regions are defined based on it.
> 
> Signed-off-by: Leo Yan <leo.yan@linaro.org>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 10:02:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 10:02:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602193.938611 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgjB9-0001Ke-NN; Thu, 14 Sep 2023 10:02:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602193.938611; Thu, 14 Sep 2023 10:02:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgjB9-0001KX-Kp; Thu, 14 Sep 2023 10:02:31 +0000
Received: by outflank-mailman (input) for mailman id 602193;
 Thu, 14 Sep 2023 10:02:30 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgjB8-0001KO-09
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 10:02:30 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2075.outbound.protection.outlook.com [40.107.7.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cf70d55d-52e5-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 12:02:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9702.eurprd04.prod.outlook.com (2603:10a6:10:301::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 10:01:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 10:01:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cf70d55d-52e5-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ORcMm3M3CZV1x9QTuS5WeGrqzY32Bgz++AOiFS2MBdtVnqeEIUr1QtZ1pNwYUkc8KnzSszhmWfle2NCo3rdH8iTufK2Wmrv10xXaOuwi0S3lKdIwppPiwaS/mHpH8c0b8AMUj9rW0dJ3Ua6nFFS3QNlpSfaa3KqZd48K1eAS/LgnJt/O/sreMEIf1Ow8YQZJACo/GAdce9VXqH83Zmar2wNxixl/Z2gKbrXW0V0jajJfvmSfXizJNH6QqYlFOSNhQBIqonQfCVF5AJkTvoGuvSXoqWKlaWdXYfY95WgUiUhNLXk4T+fgbyidJzmFJIzLJUL99AMvurFZRi3mmNrrWA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dN6NiaxMlfnG0PfZ1cSEvFCRqeLn0VP+3/0tNDZ5WWM=;
 b=AJRbjJNm1vn+xFzirx4Fiiycz4jY9fAI3z2+R9lqJF5Et7WBGlhYk1HSHmKWxmhhC3vwhdDYoQX8LlmUEf6dlNT52WV0inBcYJ8fynYVNuUn5fVXyHrBBbAceb/49CFcNlhp+hfFtJWEkfeu1K8I6x8fMUDzaKXvQqoJ25Z43Yp1ZgFj/9qdRM5e0nbKbtb/Tl08ORNvKnSGYObNnBk9ur3P/0u6JlfdPXhfFlQ36/1cPBjHklP/yO0aPDS+ebSgQt481Jwg7wWbQ1Whhb6eAxfq1LmM2fqIJ0gLPJq5rOJ+FJ3jOnpopBoZrUYfVb+IotaHKkQorZE33CE0voC2VQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dN6NiaxMlfnG0PfZ1cSEvFCRqeLn0VP+3/0tNDZ5WWM=;
 b=S76lKAKA5oYuUIT/ZL+XkOV4IC5lZYLsR9/VyHP2HDoJmkMhXnfuCgN0bA94yKK1/H721Xg680wd8VeT0AXshxnsSjgWpMWexR3I8oI2fNlZhfRm729i04Iv55iAbP6xa9PBgr9X5f6insy6VtnJJJBucEldvZ8L6dP/+xy3nxQhF/leLsBPtpxZQCnYGIIpUQ1ebHfsh4auYnJcJ/Y2/OAMsey4sikY4/PTM2Y0CDcaDomOcowlmnA67D1ClcJPzBfgrv9cAi9YCFg4nK3+ied+xfWzmbQ4l4qCBmR8uHJrroWahdTSJx6puMbV6c6M4wpAABoNwcHYxodGbJaiYA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f771260c-feed-9183-0c0c-308f517e09b4@suse.com>
Date: Thu, 14 Sep 2023 12:01:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 7/8] x86/spec-ctrl: Issue VERW during IST exit to Xen
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-8-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230913202758.508225-8-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0108.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9c::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB9702:EE_
X-MS-Office365-Filtering-Correlation-Id: c4f128fc-83b2-4178-a877-08dbb509a230
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mz1QG5LM167+0jZpDqgdy+U7RUWgWcDVwavF0c4fgMpkwvxv+KYXZRbgyrlwnQp9qAEs6q9+51cvGfC8JtNDlhJjSFBVYXQnPeM0xslIl7Q7vNzxCfPswu7d5p8foL8sM18FAaDakXjpEyzFr23p4RiJaZMeArV1IFYdZm5LCgOoDqJ/XG5VxfL91MqxdBsEUee2HeefgKbABYvecW03/r/SzNlP2+m41OJ5Uuq68KfUpNnRDK/b+7z6pOdoxBid+my3l5AcfhqN8BAY8EdyHXf59/VF/o7ivzvbZoDpP1+PAzHgwiV/Ysi/F3mELIm4IzFNNvj9SGizkGKIdt0bDjZqjCzrQYAuTOFrWQAXXdohNjJ7n4OvHYcCdoja66PhsuadeSwAMdH6hbB2QgcWvlFzLvArjc6vEqH8rGz5iOs5gIJAfs1kUheEl9/FqKup6QU1jVT6gQtRlSjeS0DvyOYCC5wMteHbRKqvH/brFILp994NG8Nj97YXnXTx8hyJFDp/5TItgpvwH51qGN9icfR0kGg/uAZfffHYSetaEFuadhqlXtOMNDxYRB/r8DQW5Lrt37+/KiRX0plt/ltA2HlNwDVALQSJJHL1uqYETUyYcb0eYgyMDV+eFXr62qxYPAzHIaEIwn2e93Cn3hXJNQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(136003)(39860400002)(396003)(376002)(186009)(451199024)(1800799009)(478600001)(6506007)(6512007)(53546011)(6486002)(6666004)(38100700002)(36756003)(66946007)(66556008)(54906003)(66476007)(316002)(6916009)(41300700001)(31686004)(26005)(83380400001)(2616005)(5660300002)(8936002)(4326008)(8676002)(31696002)(86362001)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NnFQRmhLVGhmRis3Nnk2WWwvTGtIZlJoWlM5SFNnTW1sakg0T1UwUCtFaS9s?=
 =?utf-8?B?VHVWQTRMUVB3WElubnRsSEdNRnc5ZzJKbzdvRGRnQ1hVMDRleElaY3BSRDVt?=
 =?utf-8?B?RTRha1BhVzVyK1Nna2twby9UdmgwcEJCdDRPL1h5aWtLall4ZEJwaWlleUtw?=
 =?utf-8?B?aHp5dkQ5SkJGdmJkTG9MZWV2aXNPZ0pNSFJ5Um5GeC80NEh1MUVCWk4rUm1z?=
 =?utf-8?B?UnRYcUMrU2ZzMG5qOEVVL3J2elNQY1M1dzI1cC9FeXg3dXNKT2VEN0xaY0Jz?=
 =?utf-8?B?VHJaN1NOSUZvNU9CSkVLTmRSZ0tGU2Q3NzgvbXZUeFl4Z042QzJMRmQ1SXdm?=
 =?utf-8?B?azhrWEtFMlhPeTR3VlFPSnEwRWgwNFdTbWY2TVYwMGdwTzlzRTNZKzhZVDM5?=
 =?utf-8?B?bFByU2NqWFdRQlQ1Q0xoNzlaSHdOc3VkRUIvQ2JvbU5GUHd1MFZaaGpNdGt6?=
 =?utf-8?B?MHJQL1ZrdGpXM3V0OFNCL1JsRERBdVJteFJYTElRbnlETVJxcGVCZ2tkVWJB?=
 =?utf-8?B?Z1kwNEFVbThlcC96QUJIak9WdXh5c2NaWFgzbUtuUXlHT1N3WWNHNTN4SUUv?=
 =?utf-8?B?WVJTTEh3aFUva1VLdk0zdTdCVDBYMXYrY1dWN29JMkRLSlhmUjBoOWlqbkJj?=
 =?utf-8?B?NHpWUGl5aFBTMDFTRmhHRHBFTXdIeitzTjBvSjVsWCtWaWZSUGlUUkJYVSt2?=
 =?utf-8?B?M25QNDY5M3N6ZFFCK3FKV1h5NklWMitqaHowY0QyeEVVTnFsa1hFU1NoMnFx?=
 =?utf-8?B?Q1MrcVVybFc0MHlZTDBiSkQ1QjZuSy9HYzV6Sy9vVE54bXlWNHV6S1pZNEhJ?=
 =?utf-8?B?clM0bnF3c1FiNFV4Q1VSZFhnSnV2WGh4N3JtTlNtVDRlblppNHB0clFwUnk0?=
 =?utf-8?B?OHh2M3pQWXlRclNRZWpqMy9aRnBSQUtaZE1TSGdQUHI2WDBUUnYzUVRhVHd2?=
 =?utf-8?B?NlJlZjIvZ1pZa2ZLOWg4cGQvZ1BGMnFWSkRCTllkZzBObXp3YVl2eVQ0UzJs?=
 =?utf-8?B?R2VkWTI5d0RmWEt2ZGxTbnRWZm9yZVRta0lrdDlDaXB4dkI0L0didVVpbkdu?=
 =?utf-8?B?TE1WMGZPcDd4UlV3QnRVSVBuOHdFaWFCWnd5Tkpra3ZlMkhyTW9Mam1nSzhu?=
 =?utf-8?B?eStzZGVGVU9OdHhqTzlBaUlGeFUzWXQ3OWxIQXI1US9BWGkvdlBScUNtekNO?=
 =?utf-8?B?TzV6T1lia2lZb0V1a09SdmFlZE02Ukk4bE9GTFVZNUJkM1ZpdnhySXJML3VC?=
 =?utf-8?B?RWl6SmllV3RlLytiSzBzT0NmNEJPUU9sT21ZUkJrOTZtbVpLckY5b2lSOTE5?=
 =?utf-8?B?aWFlSUtPM2JsYU0rcjFraUg5N3RZNmlxamV5UmpVRjBkUjEvYW1aUkd4N3dV?=
 =?utf-8?B?V3RZUkgxNnNQakdUU1N5UlUvaHVGdGJVVUxYaGJSbmtyTGw1ai8zaDVIck54?=
 =?utf-8?B?TWZDS1paR25RRTVZa0U5Y0g0a1pQWEZ0cU1SbDJrUXo3YUdoNlBsT29zZXJJ?=
 =?utf-8?B?TXpBUkM4akt0TEhkV015cWRxQk5KMElUREZ6bUxkTkZhZlBLUUZZUlUrL01a?=
 =?utf-8?B?bDdnbmVHQkZJVkx0eEhtQmJYbG1aWmtXK1NobUhLcEhGZDlPSytpeC9YTEZL?=
 =?utf-8?B?ZC9pR2ZQdnZQNjlHSU1DdXpEajVvcjVtTit0d280UHFKTjNoNHBXUVhVUjdE?=
 =?utf-8?B?R3phVHdqUEZqSm5QOEJhNXk4dWdMWUlDL0NVRHkrK3VoZGxKUW5kMVpPa0dO?=
 =?utf-8?B?VDlBZktBbC9sZU9BWkdJaWlUOGZIM2hvd0RsOWp3UkRzV1p1NDdZNG14MTc1?=
 =?utf-8?B?dDRQL1NYSkZ4cXRVeTR3RWE3QklLeHltaGpFZkUyZSs4dnM4dkIzSlMrOCsy?=
 =?utf-8?B?UW15cEFKWER2TEp6VEJjblM3ajdDdmROMG8vWWhLL2RMV29KZGJZOGU2NjdJ?=
 =?utf-8?B?WXVFTlhtWTNSMjNrSklNOGJ6cG1PVEhaT0NKRVB4NVBwbyt2b24yRlRkRlBB?=
 =?utf-8?B?R1I0anFBVDY5UWc1UGQ3Z2FVcCtzb01iMHpiZzdLQ2JmbkNFb0tqN1lLcFN1?=
 =?utf-8?B?dC9VQ3d4ZjdPV3FjbVFya3ZFWGZnMkd4LzVZVmdHc2hzNWNoU2RIVkE4d3RV?=
 =?utf-8?Q?Q6YjxhA0wSQjuaYe1xulythAE?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c4f128fc-83b2-4178-a877-08dbb509a230
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 10:01:58.4604
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rI8pEwCntt1D8nUED7fYiKVOAL1RZoZIht8V5FqJ06cTksjpUuimHuHQs94rSFrghSW9+LwqS3k3yIORCFZKnQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9702

On 13.09.2023 22:27, Andrew Cooper wrote:
> There is a corner case where e.g. an NMI hitting an exit-to-guest path after
> SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
> flush to scrub potentially sensitive data from uarch buffers.
> 
> In order to compensate, issue VERW when exiting to Xen from an IST entry.
> 
> SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
> and we're about to add a third.  Load the field into %ebx, and list the
> register as clobbered.
> 
> %r12 has been arranged to be the ist_exit signal, so add this as an input
> dependency and use it to identify when to issue a VERW.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

While looking technically okay, I still have a couple of remarks:

> --- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
> +++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
> @@ -344,10 +344,12 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>   */
>  .macro SPEC_CTRL_EXIT_TO_XEN
>  /*
> - * Requires %r14=stack_end
> - * Clobbers %rax, %rcx, %rdx
> + * Requires %r12=ist_exit, %r14=stack_end
> + * Clobbers %rax, %rbx, %rcx, %rdx

While I'd generally be a little concerned of the growing dependency and
clobber lists, there being a single use site makes this pretty okay. The
macro invocation being immediately followed by RESTORE_ALL effectively
means we can clobber almost everything here.

As to register usage and my comment on patch 5: There's no real need
to switch %rbx to %r14 there if I'm not mistaken; in particular you
don't re-use any of the other macros which require use of %r14. You
could as well use %r14b (or about any other register that isn't already
used for something, yet whichever was picked apparently wouldn't make a
difference) for the flags here, getting away with fewer new REX prefixes
overall.

>   */
> -    testb $SCF_ist_sc_msr, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14)
> +    movzbl STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14), %ebx
> +
> +    testb $SCF_ist_sc_msr, %bl
>      jz .L\@_skip_sc_msr
>  
>      /*
> @@ -358,7 +360,7 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>       */
>      xor %edx, %edx
>  
> -    testb $SCF_use_shadow, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14)
> +    testb $SCF_use_shadow, %bl
>      jz .L\@_skip_sc_msr
>  
>      mov STACK_CPUINFO_FIELD(shadow_spec_ctrl)(%r14), %eax
> @@ -367,8 +369,16 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>  
>  .L\@_skip_sc_msr:
>  
> -    /* TODO VERW */
> +    test %r12, %r12
> +    jz .L\@_skip_ist_exit
> +
> +    /* Logically DO_SPEC_CTRL_COND_VERW but without the %rsp=cpuinfo dependency */
> +    testb $SCF_verw, %bl
> +    jz .L\@_verw_skip
> +    verw STACK_CPUINFO_FIELD(verw_sel)(%r14)
> +.L\@_verw_skip:

Nit: .L\@_skip_verw would be more consistent with the other label names.

> +.L\@_skip_ist_exit:

I was going to ask why the separate label (and whether the two JZ above
couldn't sensibly be folded), but the to both answer lies in the next
patch.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 10:23:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 10:23:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602202.938622 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgjVK-00014F-9x; Thu, 14 Sep 2023 10:23:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602202.938622; Thu, 14 Sep 2023 10:23:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgjVK-000148-6y; Thu, 14 Sep 2023 10:23:22 +0000
Received: by outflank-mailman (input) for mailman id 602202;
 Thu, 14 Sep 2023 10:23:20 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qgjVI-000142-JN
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 10:23:20 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgjVI-00045c-4v; Thu, 14 Sep 2023 10:23:20 +0000
Received: from [15.248.3.3] (helo=[10.24.67.35])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgjVH-0005zf-R9; Thu, 14 Sep 2023 10:23:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=oCQLxkR+u2+E92hzZkD0Fbm4wmecsigy20GUzGeRb8A=; b=QfvbOGvAgfb3yfwck4i1ligv4a
	sAY+/YVSTYDiRa1xRpSFAzrTpNJR1z3acg4C/AUgvmd3kew7ipWEdtCIzc7eekemOq6n6RRMpXnvW
	NmR1FiJqhHrXTWaji1gNe+a+/S+Dx093Uh6osa2YdU8I1wz3jCZl/I5Hq6nXLxo2lqy4=;
Message-ID: <286ff37b-23f0-4e51-b70d-69f427594e5c@xen.org>
Date: Thu, 14 Sep 2023 11:23:18 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3 2/2] xen/arm: Enlarge identity map space to 127TB
Content-Language: en-GB
To: Leo Yan <leo.yan@linaro.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Alexey Klimov <alexey.klimov@linaro.org>
References: <20230914021734.1395472-1-leo.yan@linaro.org>
 <20230914021734.1395472-3-leo.yan@linaro.org>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230914021734.1395472-3-leo.yan@linaro.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 14/09/2023 03:17, Leo Yan wrote:
> On ADLink AVA platform (Ampere Altra SoC with 32 Arm Neoverse N1 cores),
> the physical memory regions are:
> 
>    DRAM memory regions:
>      Node[0] Region[0]: 0x000080000000 - 0x0000ffffffff
>      Node[0] Region[1]: 0x080000000000 - 0x08007fffffff
>      Node[0] Region[2]: 0x080100000000 - 0x0807ffffffff
> 
> The UEFI loads Xen hypervisor and DTB into the high memory, the kernel
> and ramdisk images are loaded into the low memory space:
> 
>    (XEN) MODULE[0]: 00000807f6df0000 - 00000807f6f3e000 Xen
>    (XEN) MODULE[1]: 00000807f8054000 - 00000807f8056000 Device Tree
>    (XEN) MODULE[2]: 00000000fa834000 - 00000000fc5de1d5 Ramdisk
>    (XEN) MODULE[3]: 00000000fc5df000 - 00000000ffb3f810 Kernel
> 
> In this case, the Xen binary is loaded above 8TB, which exceeds the
> maximum supported identity map space of 2TB in Xen. Consequently, the
> system fails to boot.
> 
> This patch enlarges identity map space to 127TB, allowing module loading
> within the range of [0x0 .. 0x00007eff_ffff_ffff].

On v2 you wrote:

"
When I reviewed the existed code, I found it reserves 125TiB:

   0x0000028000000000 - 0x00007fffffffffff (125TB, L0 slots [5..255])
     Unused

  Seems to me, we can map this area.  Ideally, if we only map for the
  first level's page table, we can just fill the zeroeth page and don't
  need to allocate extra page tables.
"

I agree that we will not allocate page-tables for the whole reserved 
region. However, my concern was more related to the fact that it would 
be more difficult to reclaim space in the virtual address if necessary 
in the future.

So I would rather prefer if we don't use the whole 127 TiB if this is 
not necessary. For your platform, it seems that it would be enough to 
bump the area to 10 TB (this is 8TB + some margin).

> 
> Note, despite this expansion of the identity map to 127TB, the frame
> table still only supports 2TB.  The reason is the frame table is data
> structure for the page management, which does not require coverage of
> the memory layout gaps (refer to pfn_pdx_hole_setup() for Xen removing
> the biggest gap from memory regions).

This is not quite correct. The PDX can only compress the bottom bits (if 
they are all zeroes) and one region in the address. So some holes may be 
covered.

It might be possible that for your platform, the compression is enough 
to fit everything in 2TB.

But I would drop this paragraph. The decision to enlarge the identity 
mapping is different from the size of frametable. You may have a 
platform where the first RAM bank is high in memory (such as on AMD 
Seattle). There might also be some changes necessary in Xen to support 
more than 2TB frametable.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 10:52:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 10:52:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602209.938631 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgjxa-00028s-Ge; Thu, 14 Sep 2023 10:52:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602209.938631; Thu, 14 Sep 2023 10:52:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgjxa-00028l-EA; Thu, 14 Sep 2023 10:52:34 +0000
Received: by outflank-mailman (input) for mailman id 602209;
 Thu, 14 Sep 2023 10:52:32 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgjxY-00028f-Hv
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 10:52:32 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0610.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::610])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cd44f132-52ec-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 12:52:30 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7789.eurprd04.prod.outlook.com (2603:10a6:102:c3::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 10:52:27 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 10:52:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cd44f132-52ec-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TbUY4fPRR8k+vqLBCiLrfuJq7Tjk0S8mafF2nDBr76is70anPErLVh1aVpAYFlHeI1fLwnoKgPvEM/aKgtDIEDITl6dyFJGmJcqGAH/RJl4J/M1kqmlNQWqrrgJ/NjtAre9vYYHk+ThclYBEbtOQJFdY2LGoOKvaKcbxGVd9oQNPWvFSVJZKpidpUa10etQBBb8T+aEEyg32V9owSL1ELlwiBDh6cWC8yoskmsnIkQhvQRQKBuoVV8/UXIyI5vIMgW9FDPM0hzu5oakzMi3O4h/KhHyEkcTpuaXKFiVi5uuSAebU2SSCNi3IvB7Kqetf6czij6IjW0eI7B+mFVKjoA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PCzOofodfWD6fPSmHYx/JbiHyD+NVIz1rT5NpRzq+sY=;
 b=Bh7nr/20UQBJYC+r0wqjzp1CcK4a7TB2X99OylaWALSGeXZvgZuGFWBcQ4ImVvzEP+1b26i8TqqrkeWAHy7ckd+izQLsmL7E9Yfw+Vzz8saGaVa2O2YMcd8/NdfGU8O5965QXbcFE/HUHtj17omjcCYLGg2JNbmVdOZno9S4pxuCxe4t9TVvT47MhEAnAQ/6Jis47q/zyXoNGSNk2oEOFOjN7vlmKFRNF+EFLq030lxIXpadpmOz0Wmeg67MxYB0GEOQpVeRbR0Gr1fycrcsdUEJzeKAArcoIWKwg4RT3HRiJSiAlO948VDbIuWO+34RrkSDWOCTiMFMK0L9KnJX4w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=PCzOofodfWD6fPSmHYx/JbiHyD+NVIz1rT5NpRzq+sY=;
 b=yGhvnDdAx2KpKF8o6hmyW9OHz7WDonTUFR/+53qkM5rCrJfCXt+h9i/f5HH+v8hvxUdQtP+7clPyJcIBfJN1Nyu83e1NxkknSAt+hjT8JcAcsWV9DIRobqDSiMmujKQ+TM/jRCevXOJpp9mHfhC6ld65IEfmcynV0NLi2rkF3TiFN8nVCzVN/SpChQyBs+LmWdUenrO9im2eGB77oJpIHGcPvBQOziOKvoKLoCbehlNNpSSdhR4UbH1ATYatqgZZHwVymxr0Fxrbf8rlsEN3qtAr7k34jjYd6YFR/tW9EA2zbERkFLR4Lkvwxq3JidjKSqcsILkXuGYs+fW1VqVHaQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f60a8b98-0358-6dbf-5c60-ff0cfbc715a5@suse.com>
Date: Thu, 14 Sep 2023 12:52:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 8/8] x86/spec-ctrl: Mitigate the Zen1 DIV leakge
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-9-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230913202758.508225-9-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0130.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:97::17) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB7789:EE_
X-MS-Office365-Filtering-Correlation-Id: 0c9c24d8-5ede-4f87-3003-08dbb510afa9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qoduVvmhpX2hofHAUb393BiNwlOaxfwTpMIVGtRNezDd3xV12xUGEaPdPZSZi/Kr6fJAKCOUWHsa33RGUgHiGKQiejE/LWZ7E/1+lEsvf69DUkN+Z/hb0JSKoMW3wKEnR+WMsK1syFw02wvX0Exyu4/HH327xrSdm+mp7STEgjLJ8UqdcmPFLz8uO3lY93cDBiz28ebstX3NGggAstTFzLVH/31t0ygzcpGcXNnY2/15/7gdGFNnqD3w3t9ce4j1eRyztSLPM51dexebjR34WmNZPe3R7BVoaRsD4iKoDwxdIzeHKIF0BTzTrS5NzbBncT7YbXug+x5eT3GQYS/Tom0IKWa15a4oSqcUZ4jyaoAdavFoAtRzC+QxRkKDRNLYm+jo2AyEXwtREhd3FPqJ29m+4IHv+FUYSpAvw8b6/XoUV71p7AoVOlPnDtpH2fi6FddvyfYtsCB25uqWGJ1VxWWHzTgzcE7o/7nkh+aFiTPi6emdTZ+E+5fNrBnXzD1pVb8EGeiYUDM0e38rD1vZ58ijUt8SG/sqMZno1Zt4AbMsseB7qpxxDTcNbDpaFXgYzwYYyqnx4WrAux/GNj0ds1Mf6nboQgzLd/i1C8pQ5pJ2tXS92CnnHB6v7lgtysov6NxMRVeTwgVyAQctJQGeHQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(39860400002)(366004)(136003)(396003)(186009)(451199024)(1800799009)(31696002)(86362001)(8936002)(8676002)(4326008)(5660300002)(2906002)(36756003)(6506007)(53546011)(6666004)(6486002)(2616005)(38100700002)(478600001)(26005)(6512007)(83380400001)(31686004)(66476007)(41300700001)(6916009)(316002)(54906003)(66946007)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cEZ4MDBkNTNLcmp1a1ZJTWtyeklwOVFMaGtaZks2RUR6ZnF3cFpMMmlwUjV4?=
 =?utf-8?B?WnM4NzJUYnp5a1FmaHliVU05YTYwMUNzTEdzM3ZJK1B4Ly9xeSswazJpTExO?=
 =?utf-8?B?cXE3c0EyUHdSV1ZCdDBRYkNwM2ExM2ZOWk9WRUlUVXdGeFRSY0F5Qkd0Mnp2?=
 =?utf-8?B?NmpiM1F5N1ZDM3B1QUlFdWdRUkdSUkpXSmxqWjRNWVF1U1puTEgrRzlDYTVs?=
 =?utf-8?B?Q3FBcC94Ykg2enVMWURTMGVOcVQ4cmZoeXBrSC9abEQxM3RVSnp2Y0dZWEti?=
 =?utf-8?B?SGRUZUVNTGhMOS9mY2JVV3ZYOTVtZ01HTUhoNjFVaVY3VGl4L0pIb0dXWDBD?=
 =?utf-8?B?ckFCcFEvNTIvMUNNWGpsa2lSQit6NGRJTXFPV290L0lPTHdKejlFT0pFSWJt?=
 =?utf-8?B?ek1qVFU1WStFMjllbldRTUJGeE9WMEdYUEN3eGhSdy9ZK1Q0Qzg2TVZiWEJZ?=
 =?utf-8?B?d2xmUGhneWdBVGowRlNLM0dDL2JZRTdWSmNBSXR2Y1Q5MmIwdGYrbzVaQ2ZQ?=
 =?utf-8?B?WXZQQjB0bHVCRXdkNHR4MENaRXhINHd6Y05lRmJkQTNLWHdlK3VSZk91ei9G?=
 =?utf-8?B?K1Zld3RwYmlFSmdHYXFGYnRJZ28wbGVza2tKc1lTK0xuckNlZkpEV29MR0dh?=
 =?utf-8?B?Q01uUHJWY2I1LzYvK1pVb2ZBV0c2TGVkWnFZY3dlKzMyeGMydFI5WitkVmNG?=
 =?utf-8?B?ckJmUG42WEROUzQ3Ry9iZVlLbnVxK2wyUkdVdVVJQXJ5MHFaMndxdTMrY2tx?=
 =?utf-8?B?TndKZ05Dd3RZWXFLU2hHaGhCMWkzVld0Q3VkREFqWVd3Ny9BWG4wMy9VK1Qy?=
 =?utf-8?B?Um9ZZmo4REYweUNIZTNhakw1aGhFdEpxcVBJWDE5NWlSM2RzTmFxRDgyVEl6?=
 =?utf-8?B?b2ZWN3R5a21SMlJucUZ3U21uTlpSRDV6UHltYUpjQm5yMGJSUWRkM1BQZG9i?=
 =?utf-8?B?dGhrUGV3bXVxaUIxMkl6WE9xSHpkYmxuZmV5ZjIvUlZKSTFlZlFQV1ZWSmFt?=
 =?utf-8?B?eXNTYmR2ZEtqaTBPdXIrUUVnTk4wQTdsd2VkZTVHVWsvUlhDekFOWmkrWDRn?=
 =?utf-8?B?d3JuNEJGcjZlNU1oZW1CMjh5RG9aY0JkdW8yUHBiOVE4NXdWVlYzaWhFOTJJ?=
 =?utf-8?B?WFU0R1h3T1EycXNneHJkSzNiVFNScHEzSGlRV0dCTDk1aEwvaGRQdG8zdzRX?=
 =?utf-8?B?YzFoWExpR25QRElKWG1LUkNjcWR0Y3dDdURheW5GQzdrYjVxdHl6ZFN5cmV6?=
 =?utf-8?B?djZQSzB3bzAvOHBVS2NBdUtVcGtCaUZYamV4SkJ0WWpvVENFM1hhczErcXdW?=
 =?utf-8?B?aDBydVlMS2lTQ1JiS1dNVjY3T2dXY3lxb0NtNU83MWNkQUowRkpOclNlZUJY?=
 =?utf-8?B?U08rSHhGWXVSdjlleklLZHNuNUtYUW8xUENhT2xYUmN1WXFJYkU4SFpCNjVI?=
 =?utf-8?B?dXhhUmJrZmo1ZUdYRU9xdUMzRjhUUTVMSHRSKzVxWnlSaFRTbXE5aEFFbWRP?=
 =?utf-8?B?Q3pTclRYbWV2TlNlNkRRWFQ2OS8za0hUZzU4SjR4bk9sZy9aaFVPQlhjS2Fz?=
 =?utf-8?B?NTdaY0VkazB4aUc3S25WOC93K0RiaDM4Uy9lMzNnN3lGL0ltRGhVdzc5cjVD?=
 =?utf-8?B?bWdpTnNUL0p1S2x6TXdGWW9TVS9JenlFNHNHQkliS2NwQnNIYi9hZzFSekxI?=
 =?utf-8?B?QnFZelNwN1JlU0JmRVRDUm5saHlkQmU0UmllSGJUcHNHVE5WNnhnRm9rWUZR?=
 =?utf-8?B?SDE3QTNob2doL3lGNFhUajZBUG5nZFBWVUNHNThiZ0ZDWVhzZG81cjlvMlpt?=
 =?utf-8?B?bE1yZjF3VHNIK2ZXdVhlS3NOSlA5elZIblJ5NHErTjVJcWZrc1FlMW82bGRM?=
 =?utf-8?B?cjcvTkE4R0FzbnJsb3VLRSt5SlhkdnBJbUhuYTdiUWNKaXdmcWE1ZklGbGhK?=
 =?utf-8?B?SFUydmt5MS9pMHBNV1YzR0x0dEtVTDN5SFd4VkYxVVUzRFJHQzd5SktMdDJW?=
 =?utf-8?B?Vy9sd0dhY2ZaT3lXWXNyREtQdUFHdkxxOFhzVkRnaFFoWGg0YmI0U1haUkRu?=
 =?utf-8?B?OG90dVFlNFRqSTBJMTZZeW11ZHhnU3dpcmFJWkdscHNLR0RCU0NzT1ZVd0NI?=
 =?utf-8?Q?Xz2PmeN7RWlGLmtgnB5zYrqNr?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0c9c24d8-5ede-4f87-3003-08dbb510afa9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 10:52:27.5550
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JdJtvthDhunamQfygMsEO9R2iRDHbW5QrOHPTULMtssSrs1qmMGsBPS1ZBJDJZtGJ+pmJx8hLHSBZY+j6hQTkA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7789

On 13.09.2023 22:27, Andrew Cooper wrote:
> @@ -378,6 +392,8 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>      verw STACK_CPUINFO_FIELD(verw_sel)(%r14)
>  .L\@_verw_skip:
>  
> +    ALTERNATIVE "", DO_SPEC_CTRL_DIV, X86_FEATURE_SC_DIV
> +
>  .L\@_skip_ist_exit:
>  .endm

While we did talk about using alternatives patching here, I'm now in
doubt again, in particular because the rest of the macro uses
conditionals anyway, and the code here is bypassed for non-IST exits. If
you're sure you want to stick to this, then I think some justification
wants adding to the description.

> @@ -955,6 +960,40 @@ static void __init srso_calculations(bool hw_smt_enabled)
>          setup_force_cpu_cap(X86_FEATURE_SRSO_NO);
>  }
>  
> +/*
> + * Div leakage is specific to the AMD Zen1 microarchitecure.  Use STIBP as a
> + * heuristic to select between Zen1 and Zen2 uarches.
> + */
> +static bool __init has_div_vuln(void)
> +{
> +    if ( !(boot_cpu_data.x86_vendor &
> +           (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
> +        return false;
> +
> +    if ( (boot_cpu_data.x86 != 0x17 && boot_cpu_data.x86 != 0x18) ||
> +         !boot_cpu_has(X86_FEATURE_AMD_STIBP) )
> +        return false;
> +
> +    return true;
> +}
> +
> +static void __init div_calculations(bool hw_smt_enabled)
> +{
> +    bool cpu_bug_div = has_div_vuln();
> +
> +    if ( opt_div_scrub == -1 )
> +        opt_div_scrub = cpu_bug_div;
> +
> +    if ( opt_div_scrub )
> +        setup_force_cpu_cap(X86_FEATURE_SC_DIV);

Isn't this only lowering performance (even if just slightly) when SMT is
enabled, without gaining us very much?

> +    if ( opt_smt == -1 && cpu_bug_div && hw_smt_enabled )
> +        warning_add(
> +            "Booted on leaky-DIV hardware with SMT/Hyperthreading\n"
> +            "enabled.  Please assess your configuration and choose an\n"
> +            "explicit 'smt=<bool>' setting.  See XSA-439.\n");
> +}

What about us running virtualized? The topology we see may not be that
of the underlying hardware. Maybe check_smt_enabled() should return
true when cpu_has_hypervisor is true? (In-guest decisions would
similarly need to assume that they may be running on SMT-enabled
hardware, despite not themselves seeing this to be the case.)

Since we can't know for sure when running virtualized, that's a case
where I would consider it useful to enable the workaround nevertheless
(perhaps accompanied by a warning that whether this helps depends on
the next level hypervisor).

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 11:01:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 11:01:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602215.938641 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgk61-0007Vr-9V; Thu, 14 Sep 2023 11:01:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602215.938641; Thu, 14 Sep 2023 11:01:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgk61-0007Vk-6v; Thu, 14 Sep 2023 11:01:17 +0000
Received: by outflank-mailman (input) for mailman id 602215;
 Thu, 14 Sep 2023 11:01:16 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgk60-0007Ve-E2
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 11:01:16 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20625.outbound.protection.outlook.com
 [2a01:111:f400:7d00::625])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 06109bb1-52ee-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 13:01:15 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9341.eurprd04.prod.outlook.com (2603:10a6:102:2a5::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Thu, 14 Sep
 2023 11:01:12 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 11:01:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 06109bb1-52ee-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ROcyILzWH2WnrgJgNOtaT2752cVS9pYUVx1I7ibqDOHY1iu0QhwyI78evNJVI5O04QUHFsC1BfY08Z23b86ZEgdvOEyNGP5gWVx3Y/VDAm8a9heR2kh5Wu8C9At6p12ImW6IQE1ib+LkGdiFcVFqde8RD+2BPPRn05zMEWrTAIsqYdn+UFX2ejrrdzInCkdPNkOxac6kzeW/snxHMqxvebGSXrktfS0RCpWa5EhyPrlgA8aBVREdF/jW5R52ahAhdJOnIAykNzIXHwLk5uURhPcHSzUs5QOPU2tfbtTzVvcu/Nvpg3wA4A1Y/qqy98O9l7zE8U1atHzlHRKnhuIDGw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6oj7Tp7zoyvd889iuVla1qheRc4l4dymx+ihoCo03fI=;
 b=OMvcaQeY/dqVXwlhrsUyApbkgW6BA3EMN8M+FMhbrkb+eMb0Vqu7m+rNxcSmCpFIG+CGz+nG1lrDZcjfb+UCPp5oUFz1tn9yLTfDGc2b5KkoHWVSvRvFpU/u0GS3hWaLuu5OKjIcvV5TF4igaNGcTk7CxXsK6YV5G4G3vbpRp53qDP9vQY3clRR2FZnbQT4Lq4xRcYGYD3y88AsOky23hdLeqK9N6VKVTt/HB8L6XhT+FBI/XEkvGruzwQLtP1IHdJOWVjusIfIIP32HXIzsMZspkqQ3mTxpGD3tyW9mWucfQh2vKcn7ItdkrweouUKpSrJQMXEEY2G5PWDHpAkqRQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6oj7Tp7zoyvd889iuVla1qheRc4l4dymx+ihoCo03fI=;
 b=2a/Nevl28eTGltsFNZDKAa1ixtKi2CKxsIV2BuTbFGMp9AbJ4njQGA74uiGx6OoNTb6Wh5cla7R4EjpzByOeO4stA2Yw2z3mTuCwOW+RT34pGS4qD4AE6nrgI278H18KQXGFX24IFSTzvzCv4I1D31qXpQVAJ6BRlzDhpZ8W0/bBUfB+5FuGxWChi9UiBNJykUQYlYwkZw0Hxi7pkBVj3O9BeUn8jOoJDsMF/SBWrYPsp3AtjEbVV5h+NlEwKobv3wj+P8Y1sVyqlQ4HX0JV+rFKSRxofsMNmhltLDX1AL4qUAliY5CCD10JWiZnkOAZB2WvRF2n5YP6WTV21uK3lg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <66b6f226-bff9-7d05-33e9-3ee93bf04662@suse.com>
Date: Thu, 14 Sep 2023 13:01:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent timing
 mode
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
 <e4ab7415-cf72-4c04-93dd-fd393f49f6f5@xen.org>
 <dfbbf38c-8651-5396-c966-365fe954df48@suse.com>
 <bfe3a681-7dbd-462c-9a8c-969d5a99aaa1@xen.org>
 <e7618567-0108-ce7a-de78-df14f13740fc@suse.com>
 <3c0ce6b3-6b26-4265-b560-11faef768e0f@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <3c0ce6b3-6b26-4265-b560-11faef768e0f@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0011.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c8::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB9341:EE_
X-MS-Office365-Filtering-Correlation-Id: 49a85caa-7178-4d54-3df6-08dbb511e874
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kGCmugdy3KKfg7He/P19m+Dx0iwL8ZsNwPtyNBfv9IkK8dm/dhPg/qPiFx9at/k1c8OTSxBGeIsnbSbusQNhvhgMqAHcpipa1P7kYH5jOMDhx7KN98qFm5pUvndOXzoAsCSJNj6fz0ldGy0jhgkhRK8RnhBhugKfVAAGH6okSf2nMPZ514Fvjn2AAdVGEx6FHNR8aSloaMb+ubTfXa0d/eeWH2uG0Xr4BGqKxeSU3uN8kpc/2/NZhahEX9FUUY4PnM+lpI2TzQFtNkXi91mebdDrx5iHd0T4QLOOttPSOUzI/Xetk4j7mqGqd7Nu+1S5TChiBHkmM8PRMG0uTftUNf068jWnT9OJdswRuVFduvNKTrdY3sr8KwOY+yY5RglBqu2jSLquZS5tUgVB4gasCnm4nZMviYjtoZ7A48huEHSRlE08S2WBy05uGmbtWQCjWLVpX0g7l6za+6TYdM9mddaV+AS1ReTH6H2sGJZY2slD/lFZUaokEfDjAPMQw0oARX5rnsh10f/2zErz7lTrZcl6nB4oyhwonPp78ytmgN54U9GbUvM0H+7Ar0kBYIGF3ACKZk/5FnigqcNjr36F2qwNGS4f5FHjNIM4rP82hHpa8uiv24OVJjqZG1KBjWMyPgg9W3o53myyRw2a5oAiyA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(136003)(366004)(396003)(39860400002)(186009)(451199024)(1800799009)(31686004)(6506007)(6666004)(36756003)(6486002)(53546011)(8676002)(86362001)(38100700002)(31696002)(5660300002)(6512007)(478600001)(83380400001)(2616005)(8936002)(66556008)(26005)(2906002)(41300700001)(316002)(54906003)(66476007)(4326008)(6916009)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cjNmeGlyL2pSRXUvTGRyN2dTSUpranZ0YzhkSEhWRXlTQjFtTDlWbTRKZVJE?=
 =?utf-8?B?YnZKbWtYWDdXejRUMi8yN1RyeTZxZ0JReldKUkpWMFBVOVA2c2srOTNiZDMx?=
 =?utf-8?B?aEJXZU5zQ21SN0Zmd09DT1Q3UVFRQkpBRmYxRW9TeEJXZTFlNmgzOGRuVm5B?=
 =?utf-8?B?eWVCVDZFUHRFRmZoa0twcHlFUk56OEpEcWRFWmR3dkpON25qYWZyUkhnQlJI?=
 =?utf-8?B?OVZXY2V6blR3U0c0b3lVSzNreVZCbXduY0UyNEU5Ylhmb29DL0VxbHpBRWVQ?=
 =?utf-8?B?QVNVbnBjOEh2aUN1UVFvS21VcVpvYkx2UEJKbXl5RnViZXlockR2SnRXdFZQ?=
 =?utf-8?B?WFJDdGVvMFJobS9LZkRVVlloSHZiSmVUTmdxQmcxZ0NoQnd3a245R3JxWTJn?=
 =?utf-8?B?UXIwcjYxTkZhTHRTUUM5dm8rT2pwTXlMVFVXV1hZVFByRzhOZUViOW1INnpm?=
 =?utf-8?B?U1NwZ21BR0x5SHF6aFo4My96QmlpZ3lrakZJRmJQR3ZXUTlkYm9KWlFHYzJ5?=
 =?utf-8?B?R3lHZ1NYdy83Tnd4NDdTSkhHdDBUQXdjNG94eGpZSWIwS0w4dUpmWmh3Ukxz?=
 =?utf-8?B?ZzZWWk42YkY5ZnpQMG5HbzViTnRvUkZkRVJ2LzljdDVFdnJOQXRnamhoWnFW?=
 =?utf-8?B?dWdhQlkxM2wzRmcwVGM4WW9OT1BHUytEOCtDa1hHVTFXN21WcVZ1ZmZtNHZU?=
 =?utf-8?B?MVNMdFJZbEVEL3pMejU4eUh0Y3FobXp4MGFZRXRPWUl1bVdUYnBLOXJ0OXBt?=
 =?utf-8?B?WU9qVlNVcHFaY0lFWWM2QmxPTFcva2p2anJXSm5saEhMYS83cEJQZGpqMFNS?=
 =?utf-8?B?N1ZCZzBWZVRVdVdkV1RTNjJnSE01elpTRkRtNVo2U1dyT0EyWUVVVUNaUmZ5?=
 =?utf-8?B?Y04xN3laWjN0VlNGUlJGWjRYY3VpV3lWbGhua3dPVU01bVVpZE1sbzIwaVhY?=
 =?utf-8?B?R3U2VUp3WU1VMzBNY1VXR2RucXBmajdEeWkxdnd0cE1MMEpUdUFPOFFvSHJ3?=
 =?utf-8?B?UmdYd0NLWmxEdzdHZk5nckwyZjJON1UvNytmczFRT3NnOU9MR0xGQnJ5bUgz?=
 =?utf-8?B?c0hNb204M0VpMk1GcGE1bXVFT0J1T24rbzRSNHdwdHBHU3FidGlYZk1WZ3Jv?=
 =?utf-8?B?YTZ3dklVMGNrYUFDeWNmU05VTUc3ZG0vcGpqdTNrSnNCQ3NTRTA3a0tWY3hQ?=
 =?utf-8?B?T3g4M0RoNkg1bDFjRkp4c2RGNDg5cmU2bHdkK0laSmZqQjFjYXF1UUhRS0xu?=
 =?utf-8?B?QkFUd2pLVEJNMzgwbWVpcWFOeCt0c1BRYnFieC9KVEhQWTlRbzVUazZ6RFdE?=
 =?utf-8?B?VndDTXJiVTJkUndsQ1kzQklDMmR2Z3RTdTFiRklldzVNaTVpVTBWalkxcE1J?=
 =?utf-8?B?WTRsSldVaGlQaXVGek9ZU29NZnRUMUZFV0F5bzd1Ykcrb3Ura1NzZUFEWDBQ?=
 =?utf-8?B?L1ZEUzEvQTREZzBrWW9aUmNkd1RDTzBzZndQekh3RERrSU0rT24zc0xVYzBr?=
 =?utf-8?B?eit3anp1NDVXZk53Z3ZEbEFNSWI4a3FVQS9lWEZuTCtTSk5OTVR1WElXUWFQ?=
 =?utf-8?B?RjdlZG5aNjZRNjJodWs1TTNQSjBYWjlDTHpVWXJTN2lSWCtQaW9od3NnSnp5?=
 =?utf-8?B?R0xkOFpZcEhiRVVVRGpEVGJ4ekRBUXV3RWRaRDZ6U1M3UURuOFBnSjd1WFoy?=
 =?utf-8?B?MFA2WkIvY0svNWZXQk5pRmRabS9xSitpTDZrYkdlUzF6aEZ5dDArbWFlWFh0?=
 =?utf-8?B?bHRhcUVnL2tQNUJ2K0UxVDBCZ01GVkdFR29iYXFMT3lWTDlyMTBUWDJ6QVJy?=
 =?utf-8?B?dEUxYUtZanJXVzZ5TlIzV2lUK0xyOHltdmswN0dwQ1B2UXpIL2E0WlA3M0FH?=
 =?utf-8?B?clFrMUpMVzkyUjlBWGxiYjlHN3Z0MXdyTU00NHJvSGRjbmlzZHZ4Tk5Kd0Rq?=
 =?utf-8?B?M1oweUNFTGJNbDNBRlA2Z0xieVM2N21nK2VGVElKZnBQV0hydGRLdzRxUEJt?=
 =?utf-8?B?aEJNS1lkWkRoTUNCVkNBRWxhdElEbUR6eE9qY3gzV2IycUhCeUp4SFU4b2g1?=
 =?utf-8?B?L05QejNORmRualF6V09GREVSbC9ZalRrSlFVQTE1d2JFRFZYeTk4UVFjWE1U?=
 =?utf-8?Q?QcmdYYmhuqYpWyzPIu4D12z3p?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 49a85caa-7178-4d54-3df6-08dbb511e874
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 11:01:12.3298
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: dIO/6vcRJJAeIAym8tgW7wQ+XQB/coUk64+5dg49FkpYMYI+IjU2dL6AsKSsV0FHbahfd/2MouEiR2whwDakUg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9341

On 14.09.2023 11:18, Julien Grall wrote:
> On 14/09/2023 10:11, Jan Beulich wrote:
>> On 14.09.2023 11:04, Julien Grall wrote:
>>> On 14/09/2023 07:32, Jan Beulich wrote:
>>>> On 13.09.2023 19:56, Julien Grall wrote:
>>>>> If not, I think we should taint Xen and/or print a message if the admin
>>>>> requested to use DIT. This would make clear that the admin is trying to
>>>>> do something that doesn't work.
>>>>
>>>> Tainting Xen on all hardware not exposing the bit would seem entirely
>>>> unreasonable to me. If we learned of specific cases where the vendor
>>>> promises are broken, we could taint there, sure. I guess that would be
>>>> individual XSAs / CVEs then for each instance.
>>>
>>> ... we need to somehow let the user know that the HW it is running on
>>> may not honor DIT. Tainting might be a bit too harsh, but I think
>>> printing a
>>> message with warning_add() is necessary.
>>
>> But Intel's claim is that with the bit unavailable hardware behaves as
>> if DIT was in effect.
> 
> I am confused. Above, you suggested it cannot be guaranteed. So I 
> interpreted we don't know what's happening on any processor.

Right. We can trust vendors, or not.

> So where 
> you referring to...
> 
> 
>   Therefore you're still suggesting to emit a
>> warning on most of Intel's hardware and on all non-Intel one.
> 
> ... non-Intel HW?
> 
>> That's
>> going too far, imo.
> 
> We could restrict the warning to non-Intel platform.

That still goes too far imo. I'm not convinced we should cover for
vendor uncertainty here. We can't make a system any safer than its
hardware is, in this regard. We simply have no (or not enough)
influence on the internal workings of their pipelines.

What I have done is add a sentence to the command line option's
documentation:

"Note that enabling this option cannot guarantee anything beyond what
 underlying hardware guarantees (with, where available and known to Xen,
 respective tweaks applied)."

Plus I've further qualified the option:

### dit (x86/Intel)

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 11:12:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 11:12:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602220.938652 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgkH5-0001hb-Bs; Thu, 14 Sep 2023 11:12:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602220.938652; Thu, 14 Sep 2023 11:12:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgkH5-0001hU-7b; Thu, 14 Sep 2023 11:12:43 +0000
Received: by outflank-mailman (input) for mailman id 602220;
 Thu, 14 Sep 2023 11:12:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgkH4-0001hO-MB
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 11:12:42 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0603.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::603])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9f22a2a3-52ef-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 13:12:41 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GV1PR04MB9199.eurprd04.prod.outlook.com (2603:10a6:150:2a::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 11:12:38 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 11:12:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9f22a2a3-52ef-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LEMKAoi5cd3EsHrJMR1msuo2nVywkgeV9D4yFDuD9v9okisZKhCGFgvBV05i2tWAy+hpScmV1b9ap5+7dwgJin8Ms/hVcP/kNYvyeM+DQ+7zHab0mRps/NQml2nKXbKlaCvgCBLGPfW9MhFalbXoQys9+uzNMnzG8lbq7rYmjsQqFfsfwbKSe51AYgo1LlWo88H/utYcVEz8M37T4ifUhoYNLw2Fy4Vfo3FJdvbkRHiGhSX2M1SpP/X+AzE14H7T7OcDMqjEk0i9VRNC6mgSFhmIxpiCbmKRDqxC6k6+eXDrWm/0Mevzy1YoTL/BVw65zaroywR5ArbzXJ6QgTQT/w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GHuH5OyN4Ow6kFPPU+5y34ZC4gb8zK8Prrvnxk2EAzM=;
 b=CoEGzf0yprdNWo446jXllhKHrOLR5AyArlt+vCUKnwximGn3+iFZlRSEzEZDny3uNbAt3GsZKcqv+vx1o5kWzEur8XUKvYFJSHv5JwsnqtyFn2bYHg3fgr33TLsHIRpUzaUtF6JSxV12BPGTbHw+nl+SnFcDzf17J3jqZXQ7rURk+BI6VJSdSbP7Zh4fAS/iNy3Ebqn5u6vdqAKblJo7EJqnmJqELONgpRkHpjKagdfgYmu37HdOdT/ijKfv/T85PjmkblXVLGGW8AZkVAmE6HN6AOzl2dWgLN+BPFi3O7oKN4ioOp5jNikqHtrsfDENmHqzECJjCH/7ylOMv67PqQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GHuH5OyN4Ow6kFPPU+5y34ZC4gb8zK8Prrvnxk2EAzM=;
 b=5AK8QsXNSujHKy5TSx5AqIwCyj3zugRbKy6loUiJ1hbJG1et+JYQ9rlZlgjGy9nah5+4aNcT/ZJhlsHDc6rom8UX3+YW6Xa6pfw5In2l7DJt5HTnYVZ1Q65QgsF5zkoIJXwdyl39f4HABsZ+5xo0H3h5kokC8Up3GEAgOtzWAjB5kI5Nyxg6i5hdT+19Bplp0IURmJAGGs1Yg8BqhkLo3JglvqHcDo9GnRZvt8AwXO1YeI6moPlivumcMtudNe/3HLSgW0s6Y/ImYIrV+HbT9Cx3BUD5QCvS4Sw85UCNkMrN7TGXX4KDM/IQ5DQx62zY+yhGlKBqORECCJzYDgNEeg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e89b687c-2e2f-0500-d2c7-a1dc4338f100@suse.com>
Date: Thu, 14 Sep 2023 13:12:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v7 1/2] xen/vpci: header: status register handler
Content-Language: en-US
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230913143550.14565-1-stewart.hildebrand@amd.com>
 <20230913143550.14565-2-stewart.hildebrand@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230913143550.14565-2-stewart.hildebrand@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0065.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ce::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|GV1PR04MB9199:EE_
X-MS-Office365-Filtering-Correlation-Id: f23ad268-7dbc-44aa-67ec-08dbb51380ae
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ycw62BoHy6kMcR5Y2O7Qxt6KZ8cu2k2zNs0cC9LWrDRB8sAOBAwoSx2p8TY78pIA2eUGZSUCAtffQym64m4oyqSjLVKQvCqUXxZhkKiXh9ycFPamIwRzw7YSimKT1c6dxyWeeUClKA9VIq3aYp4xO8r0hF5aoJf7OF71+6v/BxyvhfwEuLpgbjnSeJkhpcdR8D7yLTWT6zNvbdPCyGZXcrRbTn9fcxXqfY3d3WQywApSd4tw6b9rFxDRaqSkM9oAEU9RCSEeL/XwNaYPMn4no+aI+hlW1hHIQY9sZYqdomTUVbsnnv6Pe4XZnOkzu52RyfoGfB/brZmaQ9ZlLeMJ6o1BgraSgtBU783zXGpciNprvhKJpvYzsV3Jhyo46Y0hB2/Glr6xURn+YWxNS1xUkXU1Um0TTuNG8dag3h5FhfvnoE3shCK+dRowJsyb6FaRNB70FcrSJycsk/vQ2AFwZG3tnVe+JkuzqrEFRDrtWfIdgsTJHRJW1oH5I+z6FnPpeFP7dP/GIGKx8eU1ov10sb6MI1hQVble2WRUkWhz9MBFqb1NflWw41zz+cK/yAIJ95Q1JDrU/KRdRY1C9dIMQQ6Ah0dTooIlQbz9i+P66PMnQifA1R7iSpPYeATu0ApjMjdvge0Du/IoRceaFiLWSw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(366004)(39860400002)(136003)(396003)(346002)(451199024)(1800799009)(186009)(316002)(6916009)(66476007)(54906003)(66556008)(478600001)(66946007)(2906002)(38100700002)(4744005)(31696002)(86362001)(8676002)(41300700001)(4326008)(8936002)(5660300002)(6512007)(53546011)(6666004)(6486002)(6506007)(2616005)(26005)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U3kwK2ZBd0VNTnFwdGdLcjFkenVqY2NTcEhqSTZTWUJteEE3bndyam1SaUhh?=
 =?utf-8?B?V2prQWlFME1lTS8xeEhET3JVbE5OSjJyRG5RR2tjUWNVUTg5YjAwLzMzejhQ?=
 =?utf-8?B?UTR2U0dIRWVXL0xkdG1qbElYNUFPQXgrd253Zlp5S0VMdjRFN3Y1T3VocEM2?=
 =?utf-8?B?RFprb2UwYkYwdm15SGdwK1dkMzRPUHMyRzRiR3J5ZUYzRExpWGtHMjlRZWJ0?=
 =?utf-8?B?OUdPeEUzRDZCdDFFeW4vdVJERmszWDhuQmpncStKQlZKcTJqaGI5UytNeVM3?=
 =?utf-8?B?Z0FGRERUdU04Umtna3JQSzZnblJPRkdzWlVmWEV6K3JUZjZ1UEV0Vjg2d2Ir?=
 =?utf-8?B?MFd2RmpFSzRtTFpxV3Fjb3R1WnR5ZnZsUTdqMWIrQWRUZG1xTFFhcWNYdmRB?=
 =?utf-8?B?UlZic2V5Y1hSWjFyOUtGVUpCZjNITmh3VW9GSDI3VVlhTHY4eWx0WlRxYXJS?=
 =?utf-8?B?K2xrU0NzcHBtVDZwSUdOdDZpRkF2TWhQTjUzMVVmbExaYzZOcXhOWnVoalJ0?=
 =?utf-8?B?M3BhL3M4cnRvR3lXRnNjRzJ3V0ovQnpkbXFRNzk0Q3NsOW16aHVQeS9rY0FW?=
 =?utf-8?B?UnpyRGsrRzArWHZteWtvTEZvallkRTQ4YzZHZmtXZkMwZmxRT3ZLaGp4VEZ1?=
 =?utf-8?B?ODZMdmpGRDR0MGpsVmtLa3FQWGl0Z1lsZkFKT3FMNzQ2R3VpeHZDakxRRGNw?=
 =?utf-8?B?Y0NiNFpFTTQwMS9KUkhGcjdGMU94N3RqaVp3TEQ0NEpnVFpHVGRDUWJ4QlE1?=
 =?utf-8?B?MDVVMnJmMHF0Y0FsMXpLWS96YWNYVjhuN2taYmRkQjZJajRXNGowTUdybVNk?=
 =?utf-8?B?cGRZOHpnYVpSSHJVUVpDc0JNNCtMZFBNSDFKMnd4S1h6cXVGQzJXNWZnZWhB?=
 =?utf-8?B?N3hxVmRjZGQveXg0NGtqN3VVVitXTGdUbGY2NkVzMW44WUlpVHhac25uSjdN?=
 =?utf-8?B?VnRZVWg5cnBOODFmZ1pyZnFNZENVbHU5cVhmVWoyOVpiK0tvWTlWTDIzZjVD?=
 =?utf-8?B?NC84eVhNMjNuTE8wOGQxdXZNQU82VGNOQTRUOERrcHpPMGp0TzVUeVp2dm5P?=
 =?utf-8?B?NzVzK3hUbUdkUWhPTWJ0a1c1Z3ZXdGlvQU5jeG41WmVQTUZhVVZlUitDZXll?=
 =?utf-8?B?R3kzUTBtTkdvOElkU0ZHS3JPamlGMXllMHJCNkVIWDN2K3dFbzhERDArU1Rt?=
 =?utf-8?B?MEk4NGxzNUNsbmpvVU94VkJtSXYvNEdHY1VmZFl3OEhHWnRyaVFGVUV5anRP?=
 =?utf-8?B?cGU4eWk1L3JFWGh3a1RsNW5CMXNJUlpoeDJvMGttNUlNRnEvVjJNWndNMGZk?=
 =?utf-8?B?OG8yUFRxWDVveks4enNRMnpTT05leC9pMUF4MDVmY00wUEc1TEZHMjRlcVRw?=
 =?utf-8?B?YmZQSWtlOVhRa2w3QXQ4RzhqSW9uTzZMbjFMcmlqSGJKSWt4RlZpRHVPYng5?=
 =?utf-8?B?c1VybGsvL0VSbDRXWEJ3R05ZRXY4N1NIRExXUWhLalR6ckNvSGFBOE1XSUMz?=
 =?utf-8?B?V2FXR3d4VGdZMG1uV1RoSGJkTElQRksweXdrbENCSHlzeGUyenp4L2NSMitS?=
 =?utf-8?B?c1NKaDdZMmNHTE40OWtNMy9icUZSNEY3UEFaeHJBVzNMN3REeFh6L0lQUU9N?=
 =?utf-8?B?clVjZUJrdXVGZ3F4Yk4reGJSU1RISkhheHUwdy9GZ0dERldJaklkQ0hjMDZC?=
 =?utf-8?B?bHZsblpoeHl4NTNXRXdEYkM1WklENUF4OGN4TXpIdnFleGhQeTgxZWJmQk4y?=
 =?utf-8?B?YXJyaE91Y04wTmI0eVVwN0t3NGQ5NEoyVHpLTC8zVEo2b2xRbmMxRUh4N1Zp?=
 =?utf-8?B?NHFTWnNxQkJIY21oUjdaTXVLMzE4SmxsZDl3KzRlL2M4VXc4MzNkWXVSaHdU?=
 =?utf-8?B?UVlDM2lmRjZxbnhWYlJUYmNaRTQvOFFob25tYXdlM0huQWJReVUrd1pnYXBS?=
 =?utf-8?B?VlVkTjN4bVJJZ3JGRUVJaStpaEpNUk5wVkdGcGhVVS9uZm9UZUNLQkxjUHBl?=
 =?utf-8?B?cHlsS1F1UE1maytnRXVlY0Y4NFRDNDVwSXFUR29yRTQvcStTQlFkZS9MS05l?=
 =?utf-8?B?VkFSN2IwWGFhMGNhUW95SDJPN2NHK0VzdHlDWXg1L21LWkRMN245WHpzVENG?=
 =?utf-8?Q?GV3oS9zanajp0sm8wx4q40vij?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f23ad268-7dbc-44aa-67ec-08dbb51380ae
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 11:12:37.2251
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: CvLYzcWadN1ZojNRKqGOOFZNDlQhMPkr8v3Cshm65Oy7G/iiQWD1K00wVGWm6Ipgs7cI30Whr+JKCc1+YwCBAA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9199

On 13.09.2023 16:35, Stewart Hildebrand wrote:
> Introduce a handler for the PCI status register, with ability to mask the
> capabilities bit. The status register contains RsvdZ bits, read-only bits, and
> write-1-to-clear bits, so introduce bitmasks to handle these in vPCI. If a bit
> in the bitmask is set, then the special meaning applies:
> 
>   rsvdz_mask: read as zero, guest write ignore (write zero to hardware)
>   ro_mask: read normal, guest write ignore (preserve on write to hardware)
>   rw1c_mask: read normal, write 1 to clear
> 
> The RsvdZ naming was borrowed from the PCI Express Base 4.0 specification.
> 
> Xen preserves the value of read-only bits on write to hardware, discarding the
> guests write value.
> 
> The mask_cap_list flag will be set in a follow-on patch.
> 
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Thu Sep 14 12:07:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 12:07:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602229.938662 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgl7t-0001rW-3j; Thu, 14 Sep 2023 12:07:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602229.938662; Thu, 14 Sep 2023 12:07:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgl7t-0001rP-0e; Thu, 14 Sep 2023 12:07:17 +0000
Received: by outflank-mailman (input) for mailman id 602229;
 Thu, 14 Sep 2023 12:07:16 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgl7s-0001rF-38; Thu, 14 Sep 2023 12:07:16 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgl7s-0006uj-1Z; Thu, 14 Sep 2023 12:07:16 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgl7r-0006T8-HX; Thu, 14 Sep 2023 12:07:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgl7r-00010h-H7; Thu, 14 Sep 2023 12:07:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=1VxC6s7KN8xhmUIIq+9ixei+UqeaFUuOwJeeEgWDFWo=; b=T+9QUcDz7WY73qYIubW+C6aWyn
	tb8T900NCMexJopkyEHp75kIOi2rD04WQoxH5ttjSVvPYtigIJ6dqZh9atHDa2o2Zf4Etjxr/Jkdh
	zX57ovLarhTRb9dRIzaXnAYSWDKaZlndtK5NE06ucRICcdzkV2pW+hf03j0OSinuNZvg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183003-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183003: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=29cce3356aec6db878ad318c4abeb63aa9e845aa
X-Osstest-Versions-That:
    ovmf=cdfe4310dda2a30b0ca05c8ede6896edce37a656
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 14 Sep 2023 12:07:15 +0000

flight 183003 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183003/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 29cce3356aec6db878ad318c4abeb63aa9e845aa
baseline version:
 ovmf                 cdfe4310dda2a30b0ca05c8ede6896edce37a656

Last test of basis   182996  2023-09-13 11:12:12 Z    1 days
Testing same since   183003  2023-09-14 10:12:23 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Laszlo Ersek <lersek@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   cdfe4310dd..29cce3356a  29cce3356aec6db878ad318c4abeb63aa9e845aa -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 12:36:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 12:36:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602237.938672 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qglaH-0001ws-4z; Thu, 14 Sep 2023 12:36:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602237.938672; Thu, 14 Sep 2023 12:36:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qglaH-0001wl-2K; Thu, 14 Sep 2023 12:36:37 +0000
Received: by outflank-mailman (input) for mailman id 602237;
 Thu, 14 Sep 2023 12:36:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qglaF-0001wf-OY
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 12:36:35 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20609.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::609])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 55f60aa5-52fb-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 14:36:33 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8844.eurprd04.prod.outlook.com (2603:10a6:20b:40b::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 12:36:31 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 12:36:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 55f60aa5-52fb-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=myhDirO+XWtcHklXTIVD4s58q+rSpgWssvmbkqwQsoYdRpZr2saURe8/T714OHRYO+aazZng11I0WaYR+Jj3ZPZyCF4nDp2F0GO07reqeHAhwfffmu/14iR0DAbzssY4FFHCZUN3CBl1WKDckxHHuxtcJGwVYzoGPQ687ENayDPPGc6y2y3QwXIzzvAKOrSjqMP7BbgVsEmz7C8QQDuCxpp7OZmsMxCZQXwN5NiJ6q1AjX/JYmETrg8Wd0WhhNvk4aNu4fgJoifZsjKbmI7kgcPH++LMIJJl/DuwmTC96rA2jcdgfSQpYx2Kqd9ap9VrtmJpFaSdBGRo1khGXyQeYw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=oU1ps1hPglP7vpfqvDsdIJKDwDtcpHZIcV642C/FdE0=;
 b=d/SHBzS/1DBRQenrZWlw4O2ALkEzqs1cqemFkVc/4bFXNp0/q0kokgX1URocD5iBQQTpeauASEumuQ/hhyU6yGPuSIljWTkIYN4FvMoBmAcgIxkIPtFOwwiUsbliVnJJzNRP9lbiBKNN9CSG8N4KEznnPN4vzS9jWh/MKIRj/QAU8gKgGRVYbCViCEyO0nJvHD4xluNZYO/BB7b5EA7YOaWpaGJZZpoY6Ae2k/7hmTLpfgLbO3KUAwPZ8y4Yl6i+ENcy70PsRtw9c6AufoG14SvC3jPayFWDFTVi5QJp4O5i8vXecFGg40rIKAoqv6nGwBg+KJq8mWVdOS3NmB83lg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=oU1ps1hPglP7vpfqvDsdIJKDwDtcpHZIcV642C/FdE0=;
 b=Hs842sHK5trNHVMBTYawmptdFjMwrggriKZshmnRcgw+pWVaq6UQeXhnNDk7iq7cRN8mSxspaXmSyKca1mvqgl+dCaZfbalmAZqyLt/m/CzMzlqukgw2NEmQhCRfo/prWBZ//ICx8jg/JgBMNtdBKyNLqgrhGyUsvC9IqZyMJqEPcx/rgmZGrpxSvEGJ0DnMVh92k/Yy13HgC5u1GnHfRy3usSMEiuEbOj04KpRmxP2Km3yTdxajud4vsAjpXw9N0LWDsyQvNAexgH1hVJbnqQV7Cj0uHi7dQOfgMIJ3r5b3p16Vp3X+li3FCdnJAccgJ0S66oMPIPm5xqq30lIDow==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <20e50507-5c8b-5e44-12e9-dfe8fa136350@suse.com>
Date: Thu, 14 Sep 2023 14:36:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] timer: fix NR_CPUS=1 build with gcc13
Content-Language: en-US
To: George Dunlap <george.dunlap@cloud.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <a17ba988-2850-fced-d225-97e1d11f6576@suse.com>
 <CA+zSX=aCwR5gxk3jyPDoWRvoFAAjORWigtrbaO9ow5EvmT_tZg@mail.gmail.com>
 <ea6686a2-dfe3-4a6f-5d3c-a729f95520d1@suse.com>
 <CA+zSX=a1oyPOJLvwBq+YXGnumi7HAqk_XoL=Wat9iHnz7fTe6g@mail.gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <CA+zSX=a1oyPOJLvwBq+YXGnumi7HAqk_XoL=Wat9iHnz7fTe6g@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0095.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cb::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8844:EE_
X-MS-Office365-Filtering-Correlation-Id: 2cd90285-aca5-41e8-724b-08dbb51f3904
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1kNZjhSse0ufa6IcpfC1B9Hg53Y1R/8b11DcK3kH80Yz3jMc2kFaWKwKN/+8XACJXVXWTwzAHiFSi4LsTGJi4qi4eEhJT/bB8pFJRLhKyyJpD74UCStoR0spQ3EmQ4Rp3I8v7+B7vUm8WuzCekezx1dK8frSavfK5C5FMBAjgZXcIFnTpMLWOEskL0j5nWIIZUpDcVr+eHh3F6armVLZhjCc3AtUunP+BpDB+MCNg+oMZBOdNqRQQEOGqaLnzkoAkjitFUIHrUw31dqJkmza2ckH+k4id03GCG+P+lskLp2qhsit3148AsHjx6hyA86dg2knwCDPiKtZa4QjR/WS7/mSazQnUSMmwkyI6Obej6m/q+jIn9BBzDCwVYSOZRDvmNZ/0/84+cQvwhUoeb+Jt0lq0bi/Th4HmGOYfBTzGevRG+0KWt0eKL4MeayfOFWf+ZWxABMzodN18nLSd1rsHhOHS1SBeZdRRy//Q31+zVmiZJ2WuYqkcugfFDfK6qW1O4YVuwiI9c3lZl6n9//tfc9jIPV3V4N/XtyZUC0xYI3J0grU9Lw8pfAxUBIu7vaDqRZmWqaP6p45JqtzeETaa+rx79FFZq5jqHcPVQfkXh+ETePPvSJ92sIU3qer5Gd+76e2YmGDcJwHnB1tGJnCuw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(136003)(396003)(346002)(39860400002)(1800799009)(186009)(451199024)(31686004)(2906002)(36756003)(86362001)(38100700002)(31696002)(8936002)(53546011)(4326008)(8676002)(41300700001)(2616005)(26005)(6506007)(6512007)(6486002)(6666004)(66946007)(54906003)(66476007)(478600001)(66556008)(5660300002)(83380400001)(316002)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eldjYzB0UEM0bHlXcGRVd1VxeU9BejVlMW1uMEVVeGJraGd6MTNEV2UyazFR?=
 =?utf-8?B?eFp0cFhucjhmcmMyYS82SzJFUWdBejluUVlMRlZVK293MXVkdTZSeHVUOWFy?=
 =?utf-8?B?NTJpRkM0V2trY2VYZlNnTGQxWFF3N3dWcDFyWncyYjVSakpQUHh2aUlGV3R4?=
 =?utf-8?B?ZHFUL0xNdFllc1BXdWNNT2YvZGhPRndWRy9mWEN2ZGxiazJLcVhFcWZRclZ0?=
 =?utf-8?B?MjU4cWszNkd3YWRKSE53YlVKK0E1cHhFbzk4ZGVqa2pKMkpJZ2tlOUdKZkdM?=
 =?utf-8?B?VG90R0xkQVkxanRDZGZXSWVSakRqKzBrR3k0VUpSUldJazNMS2RZQ29NVTE1?=
 =?utf-8?B?endGS01GWkhCaFFBZGRPMUNmUXFhdVVZTDNiZS9QNjJnM1BCYVhEYzRLbG1S?=
 =?utf-8?B?WXQvU3VWVTNaN25SVEI5R3BTbkY4Y2RJYmxxd3g5ZWNIY1B6c1puVXloeGNK?=
 =?utf-8?B?WnpzZnlQQmpaaVJqLzN5ODkyL2NGQkhmT3RqNjNtYkg0OXc2ZVdUQmpaT2sx?=
 =?utf-8?B?ZHhlR2J0MGJlVE4yeW1oYjVVK0xFWGZiQzh5VUdZVW5VbXg0ZForZG5PNHkx?=
 =?utf-8?B?Nk1tM0s2aWpTaWowQXFyODFvWHplclpyb05kUDIyT3dKb3JsQy9lMjZLbFVh?=
 =?utf-8?B?WDNEdW83WWF6TUQvNlRYeERObVZtVlBoQWJsOUpoUlJyMmc5TFAycE8vTUFk?=
 =?utf-8?B?T1krcDlPT1dEYlZUR3g0clg3RnFCb0NwYUpsKzBoY1VyVFhLRlhVdjRETW1Y?=
 =?utf-8?B?YzFVK3AxeTR3Szc1N0JQeTAyVS9PRlk0RXV5Qjl2VVZhZ0ZyQXFNTTZ0S0JL?=
 =?utf-8?B?QjV3YWE0Q0lOdDVjK3F3cGEyU0FRcU1HRnBtUTJXMkoxMzk3a2ZYZnpXZ00w?=
 =?utf-8?B?eTdSTkxadkR1WGJyL014Ni9hUWlCSHNMbWcrL28zanl1Njk3MHo5SDdYQjd4?=
 =?utf-8?B?Ym5sd0lJN05ielZjdkRMYzlvQ1Radnd3SlM3MkdLYTF6Zkw4OWN2UzdmaVgr?=
 =?utf-8?B?OTBDU1o0enhKbkVEMTV1MlhqOVZpSTlRTUV6QTVOTVJ3Rms4bVlYTk1GcllX?=
 =?utf-8?B?djdjbDlDczE2dUlDSGxsK0VnTkc2Qll4K3p3Yk52Vm8xTkFheHV4dUJzZUx6?=
 =?utf-8?B?NlFnZ1pIc0VvemJkL2lsemxuY1BhTDI0ZjlvTHQ5a3hQRWthTlhNbWYzQ0N1?=
 =?utf-8?B?ZFJObkhoVUk5R2dzdDAxblRoMk8ya05SYVJGNEVQa016R1BDU0dyM2lWbVdm?=
 =?utf-8?B?QURFa3F1L3VmYjFvV2tkWVdWaU9qeGhlVjh6Y1UwQTVLSjcvanpZOU1NSzFX?=
 =?utf-8?B?a2RQV3NLSTU5S0IvRXhJRHUvY0Rkcm1IaklkRXRjQ1V3VjFwSGRLQVQxOWFt?=
 =?utf-8?B?MW80SzJMSDV0UEwyaGlBaGNYbjlSTzlJYTcrTFE5dnE5ckdNOE42U2k0R1Vn?=
 =?utf-8?B?MkJLZFp3QjlFNnhPOTNDRktBQzhJbXFmUlUwM1NHdzlaTCszUnJuWnk3WjVx?=
 =?utf-8?B?ckpRQ0RENXJWY1h1ZE9yWXNKeDVqSUVSRzlmMlpjZUhLMUd3WCt6THNWa01U?=
 =?utf-8?B?VndPMjhMM1c4aTdXb1dCR1dIandESzJyVTNEYkdPSmpTOHVyaVVWejdLWE1P?=
 =?utf-8?B?R293by9uTUs1b0htT0NpRGc5aGRIM25kRFpvaTJKZ2NERjRBeXNBb2pDYWpO?=
 =?utf-8?B?UmNLbUdPUndyTS9oeExZTjRmekkrTnkvMDRGb0FBTHdPWE1QZEg4Ym5qOUpY?=
 =?utf-8?B?ZkZZSzB0SitZdmRGUmVKY1E4cEQvVjd2a1RPRldIaC9NRW9tWCtOejVCK3Q4?=
 =?utf-8?B?UDFjdjFCZE9rak1qMWFOZFBOQjNvOTRMaXpkSzZLNjFBRlpKOGEyVDBIL3kx?=
 =?utf-8?B?Tm5DZG5kbXVTMXNFL2RmSlptZG9SbFgvNjVObmxOWXlVa2ZUYzRaWXNNdm45?=
 =?utf-8?B?aDdQdk0zais4Q1NDUk1GSFQvMWJNVFlGdVNzR1BPazIvenhKRklNdEZaZTln?=
 =?utf-8?B?dTBjZjdoQnJnSUZDNWUvWmFMa25SOXBaUVJ1bEF4OUJubjN2dkNTSE13N0NS?=
 =?utf-8?B?cElwY3AzcHoyWGhsUmwzdU9rRk80eDhROFVWWFAvendYWEZyT0ZyTlRad0JM?=
 =?utf-8?Q?+5ShD0za6AakloR2JbM5FA8Bi?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2cd90285-aca5-41e8-724b-08dbb51f3904
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 12:36:31.0713
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: VXdY4yOhVhx3XRDDhRohxhIjbMTlJIJM1s8UtXstnPVDv79teNchlh+k5aWispPMePgrji/Cs+1tQ5t/470pIg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8844

On 13.09.2023 12:25, George Dunlap wrote:
> On Wed, Sep 13, 2023 at 11:05 AM Jan Beulich <jbeulich@suse.com> wrote:
>> On 13.09.2023 11:44, George Dunlap wrote:
>>> On Wed, Sep 13, 2023 at 8:32 AM Jan Beulich <jbeulich@suse.com> wrote:
>>>>
>>>> Gcc13 apparently infers from "if ( old_cpu < new_cpu )" that "new_cpu"
>>>> is >= 1, and then (on x86) complains about "per_cpu(timers, new_cpu)"
>>>> exceeding __per_cpu_offset[]'s bounds (being an array of 1 in such a
>>>> configuration). Make the code conditional upon there being at least 2
>>>> CPUs configured (otherwise there simply is nothing to migrate [to]).
>>>
>>> Hmm, without digging into it, migrate_timer() doesn't seem like very
>>> robust code: It doesn't check to make sure that new_cpu is valid, nor
>>> does it give the option of returning an error if anything fails.
>>
>> Question is - what do you expect the callers to do upon getting back
>> failure?
> 
> [snip]
> 
>>>  Would it make more sense to add `||
>>> (new_cpu > CONFIG_NR_CPUS)` to the early-return  conditional at the
>>> top of the first `for (; ; )` loop?
>>
>> But that would mean not doing what was requested without any indication
>> to the caller. An out-of-range CPU passed in is generally very likely
>> to result in a crash, I think.
> 
> If it's only off by a little bit, there's a good chance it might just
> corrupt some other data, causing a crash further down the line, where
> it's not obvious what went wrong.

In general I would agree. but __per_cpu_offset[] is quite special in
the values it holds. The data immediately following it would therefore
also need to have unusual values within relatively narrow a range for
a crash to not occur right away.

>  Generally speaking, passing an
> error up the stack, explicitly crashing, or explicitly doing nothing
> with a warning to the console are all better options.

I guess I'll go that route then, since ...

>>> I guess if we don't expect it ever to be called, it might be better to
>>> get rid of the code entirely; but maybe in that case we should add
>>> something like the following?
>>>
>>> ```
>>> #else
>>>     WARN_ONCE("migrate_timer: Request to move to %u on a single-core
>>> system!", new_cpu);
>>>     ASSERT_UNREACHABLE();
>>> #endif
>>> ```
>>
>> With the old_cpu == new_cpu case explicitly permitted (and that being
>> the only legal case when NR_CPUS=1, which arguably is an aspect which
>> makes gcc's diagnostic questionable), perhaps only
>>
>> #else
>>     old_cpu = ...;
>>     if ( old_cpu != TIMER_CPU_status_killed )
>>         WARN_ON(new_cpu != old_cpu);
>> #endif
>>
>> (I'm afraid we have no WARN_ON_ONCE() yet, nor WARN_ONCE())?
> 
> I think I was looking for `printk_once`.
> 
> If there's no reasonable way to fail more gracefully (or no real point
> in making the effort to do so), what if we add the following to the
> top of the function?  Does that make gcc13 happy?
> 
> ```
> if ( new_cpu >= CONFIG_NR_CPUS )
> {
>     printk_once(/* whatever */);
>     ASSERT_UNREACHABLE();
>     return;
> }
> ```

... this actually makes things worse (then the compiler complains about
old_cpu uses as array index), ...

> Or, if we feel like being passed an invalid cpu means the state is so
> bad it would be better to just crash and have done with it:
> 
> ```
>   BUG_ON(new_cpu >= CONFIG_NR_CPUS);
> ```

... and this, while it helps when then also done for old_cpu, seems too
hefty to me.

Just to mention it, 'asm volatile ( "" : "+g" (new_cpu) );' placed at
the right location also helps. That's effectively RELOC_HIDE(), which
we use to work around a gcc11 issue in the same area - see gcc11_wrap().

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 12:38:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 12:38:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602242.938682 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qglc2-0003G5-Ga; Thu, 14 Sep 2023 12:38:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602242.938682; Thu, 14 Sep 2023 12:38:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qglc2-0003Fy-DY; Thu, 14 Sep 2023 12:38:26 +0000
Received: by outflank-mailman (input) for mailman id 602242;
 Thu, 14 Sep 2023 12:38:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=J3lF=E6=citrix.com=prvs=61487cf85=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qglc0-0003Fe-TL
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 12:38:25 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 92d9e6d0-52fb-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 14:38:22 +0200 (CEST)
Received: from mail-co1nam11lp2171.outbound.protection.outlook.com (HELO
 NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.171])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 14 Sep 2023 08:38:08 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA2PR03MB5913.namprd03.prod.outlook.com (2603:10b6:806:11d::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Thu, 14 Sep
 2023 12:38:05 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 12:38:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 92d9e6d0-52fb-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694695103;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=tqB5gZlLl/AISw0XNxGKSmweJF2jhgBQTSJT7Fn7zy4=;
  b=B6Jg2YWaGSBKClc1Pf887tH1ezYFqk22KrAYaGGUVYrubuO1zfSIM64J
   Us/XfEh6M9YKPie4bgX+4kPD34X8d53KJPJnxoKh0MW3tSDk97qQ14Hp+
   G8eMeLoXPCdNX5Xjgvu4ye3Bu41fcW2jCOx3D2COmbDAFxPgrv+i1ni7F
   8=;
X-CSE-ConnectionGUID: GiVE7edqT1Ka4wnXOWhvgw==
X-CSE-MsgGUID: AQU/qrZCR6OHbycb+NB/yg==
X-IronPort-RemoteIP: 104.47.56.171
X-IronPort-MID: 125353442
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:hj9zCK/0h3wcUrPC88HQDrUDsn+TJUtcMsCJ2f8bNWPcYEJGY0x3y
 GsWDW7VPP6KZ2b1L95zaY3l908E6pbcxtZnS1M5/C88E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks11BjOkGlA5AdmNKkX5AS2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklh9
 MI1dz0BdyzapOvq37SLbdZsmMs8eZyD0IM34hmMzBn/JNN/GNXoZPyP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWNilUuidABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVwHimA95OTtVU8NZDuWDU33YhIydIcnuxsPKzyWiUHMNQf
 hl8Fi0G6PJaGFaQZtv3UgC8oXWElgUBQNcWGOo/gCmSzoLE7gDfAXILJhZab9grssIeQiQn0
 FWSk5XuHzMHmK2YTzeR+6mZqRu2ODMJNikSaCkcVwwH7tL/5oYpgXryos1LFae0ipj+Hmj2y
 jXT9Swm3exM1IgMyrmx+k3Bj3S0vJ/VQwUp5wLRGGW48gd+Y43jbIutgbTG0ct9wE+iZgHpl
 BA5dwK2tYji0bnlePSxfdgw
IronPort-HdrOrdr: A9a23:+35ts6wvB9+4w07XApmQKrPwB71zdoMgy1knxilNoH1uA6mlfq
 WV9pkmPHDP5Ar5NEtOpTn4Atj4fZq+z+8W3WByB9eftWDd0QOVxedZg7cKqAeQeBEWmNQ96U
 5WSdkbNDShNzNHZB7BkXKF+gwbsb+6GX2T9IDjJqtWPHlXgn9bnn1ENjo=
X-Talos-CUID: 9a23:v/h4J23FSQVx/TgObsYY57xfNcEbXyLQwG7semyxVXlveJqqSUGf5/Yx
X-Talos-MUID: 9a23:hZs8VAjUSRDqkI1T2DryKMMpHf5VpL20Oms3z7ImsdiPP29WEXCMg2Hi
X-IronPort-AV: E=Sophos;i="6.02,146,1688443200"; 
   d="scan'208";a="125353442"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=THW3iykrK2Gzr0LUeecWY9AjRLUVO0QPHBp1NKFKwwandZnsR4xH2GsvZGL4wQO+Ag5wiGGD7E6hMAPQynmCWoT7gl3DfrRYZsjRv1A9nnuDgsN3PDb6KOrrwkDNBHkYqebBb6fTGM6LhnrNDHl92ay1w0XMxMvfantdpwP/wJwFUfBBgc6BlcuReDTJ23fDWxrS8cWwYqmmEvPSNLkerguykzheq5gQM19g2rCDNUCIxb+10oGOf78TeixHPuATeSFrwDCkTnzm3B+WbVA8aG7DpSKj1DRY4IxzMzeqijdRO2vRDMt+k4J+VGkkI7TH0h3kTVEdTaXTW/URcqVhRA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gWrB9Pq/42EEw2thATh68/NsnMyZa1vXuDE5bccAiK0=;
 b=L61/6GC/nlP0JcLiwbn8CBGdVyOVc7LAoPtOjaPE2vn7uciGFKGSXeDv5/nReD5efZjmUqOk4sScKIGSAX213mLTCXHfN7mozKlPj85RlZliNoGmLOdohc/tfgPolD1KZdXv2QkAnntzxo/qEtrCpAKJNruEMiBU/z7eoyR5aC3i9HBwNupRGgXCVBqMRdc8svzVCZhKDVG96kulunfuQk58slNdvnmLPoW4124iLrD9w5nKZRGmRwvxe8HqstgKl09hij4T5eJjr3CWhmCEy+PRWZEpPklLozEe3nU51/Aagzfuxvj8UXD1COquCUjs0xpcW7o5RAhwaEHapiO8Jw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gWrB9Pq/42EEw2thATh68/NsnMyZa1vXuDE5bccAiK0=;
 b=LLe3O3tKQfNr4QmHuP9ryYqVMk29d6BqEhC2q0sKikZRWrzmsKUdHdvihQWgW1zh22fKaq6qqEJELdSxDp0dlPUmIw1nYd8ylBExplIxbGbNgXDeSm1I8gE7bb9voE7q9krOZEzi7OtZlbyQvNWoqpxy76Z4xYArUiemCK8w5ic=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 14 Sep 2023 14:37:59 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	=?utf-8?Q?Sol=C3=A8ne?= Rapenne <solene@openbsd.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2] x86/amd: do not expose HWCR.TscFreqSel to guests
Message-ID: <ZQL-p3LJX7WfwCtC@MacBook-MacBook-Pro-de-Roger.local>
References: <20230913145220.11334-1-roger.pau@citrix.com>
 <e2fe16de-cb08-4a0b-adfe-95da6c86ea16@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <e2fe16de-cb08-4a0b-adfe-95da6c86ea16@suse.com>
X-ClientProxiedBy: LO4P123CA0002.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:150::7) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA2PR03MB5913:EE_
X-MS-Office365-Filtering-Correlation-Id: 9317d1a2-20bd-430f-dbbb-08dbb51f7143
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	L6QIZoX0sKBpUibSAIUUPbJDl8K6Ln7Bq56pubuO4ZIyL56AFXEk+LKhUbLGbB+8aITWiqwrEMV+TSA2lOOkXUBAhZOsaAC+qa1Mny0ZxYfcOOODvcJnOu2C7Y0D83C22x7cXduv6B8ykUb7wrGHmfKq1MIEEk+TOGS/Kcf1Mbh94QbQ0X5C2Sn8WeC95flDMqhxtPsh/VDJnaVorQsSRLQ9UGyE4hqT1r9wJCnBVNQeukNhBN/t1cTaAST9Fvda8EW30Ctgyx2Ecu8/M9lU/YFfKT4JD2XbEjPe+BmACGAqNSX/1N81vZycgCf38Vl3JXnlTRsqoaDxGF3jMLtQjkZOTWZnmiUt3GMsRNGCOlfrZAKdWTnplWZFa3nZFnFNvzu3NJP1n0qou4HQK1SDmfjTVa+Q5GRDnohj4CBjqXkN2u/ujWUF1gdIGopesRyNC+P4dhAi575xDkkBr1mPrpFWp/FgBV5xX3glkqVwXYBes3F7Nqks+kHX4eTa7TUuzjTWzh23trA3ZtL2gxM1xbXw9BXaGrjyQ+k6Ry8s+wA=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(346002)(396003)(376002)(366004)(1800799009)(186009)(451199024)(5660300002)(478600001)(41300700001)(316002)(8936002)(8676002)(26005)(66574015)(86362001)(4326008)(6916009)(54906003)(83380400001)(82960400001)(85182001)(2906002)(38100700002)(6506007)(6512007)(53546011)(6486002)(966005)(66556008)(66946007)(66476007)(6666004)(9686003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZGxDb2taWUlRclVQRmI5ZVdtNldjY3ZBb253T21uS2NqaFduRTQ3WEdoRStI?=
 =?utf-8?B?RTV5Q2cwMCtFMHNBMzVEWU1aOVdMT1NwcTFnS0VQazB0WnBxZ3dpUXhIMFZY?=
 =?utf-8?B?VUVzNnJNaHN6RXp0b2RRMnkvK1hOdzV5a3NNZXF0OG1LdlN5cmF0dFNLUlF6?=
 =?utf-8?B?MkRqU0NWV1JMTXRLWWxZUlhrT1VhYnVUVGJLUjFLWjRNZXU0MmgzY25od2ZY?=
 =?utf-8?B?cFcwT25Oc2N6T1hDVExpUmpBOHdFaUtqTVYvdVJGNHMrNlZQWDJ5YTVLdXFx?=
 =?utf-8?B?WFk2WGVzZ1FDUElGalljZFNRa0R3VzFKclRGbUo4clEvNFVVVDJUSU13b1NS?=
 =?utf-8?B?b3llMGlUaWdDSFRnNnRzZkNBTVJTaTlLTjFiNFFzUjBPa1BVTVgrNHc2Nm5r?=
 =?utf-8?B?NDhvS3NNQm1iVkZZdU1jdDd4NFpXNzRrbmxxaXF1b05PcHIxY3ZwdWtlUitU?=
 =?utf-8?B?K0RDWFhMOHhhRzg5Q3BkblVhcUhFUmsxWXR1aVRpU2ZmZ1FYN3dDajRKTUJx?=
 =?utf-8?B?UVRRRDgxUFU3R0lPc3pSR1o4K1BkdEtJS245VXozWU9ZV0s2MXRwbjF1bm56?=
 =?utf-8?B?dllidVlDMHVLYjR4QlFQM3pJL0JJeWwwTS9WNDdVRUVRcWcxMkZrdEFFKzlD?=
 =?utf-8?B?a1BMRGxGbHQ1ODdoeW8zUTdRTEJyZUF1OVdOYXBQM3hla1l5NFNYbTYvaEkx?=
 =?utf-8?B?TXlIOVI5ZTR2Z2hyMXFzaTg2T3NPVXkzQ2JIQ1EwdHZUTHlaKy9xcEpxQUZt?=
 =?utf-8?B?V0hpR0kvN0ErZkRmeFdOOHdCd3BQM2J2T1VLOE9LMmppdDQ5V2JYL2lxY0ZS?=
 =?utf-8?B?L3EzOWcrUmVNdjNVVXBRNTBUYlRodElHNFVDa1c3WWdQZ251WGpOQzl5bCt5?=
 =?utf-8?B?cndLN2pkYzIveDhwR1Zvc3VVc3k4VnpuMnNsbXZqb0RjU240eHJSZkFBaXZt?=
 =?utf-8?B?TUdHeTdtTFdtVFU1NGdkZlhtM2dzNWRzODA4ZENZaGlHelQ5WHVkSlU4Wk1K?=
 =?utf-8?B?elZqVDNnc3IxTjN1a2ZBS0huNGEySTl5QnJFL29FbGMvdnVoeGcrVlQ3SVRB?=
 =?utf-8?B?a1pFTkxXZWdXcVhsVG5kazZrYU1jWVF2OHBiOCtCbmdVK0FQSmVKem1vNzY3?=
 =?utf-8?B?elN3dmQ3TVRrdVB1Tjh4dEZqUnMycVFSdU52ampzL0MvWjljdlBlcFdPYjRL?=
 =?utf-8?B?QUIxd3plVjBuK3dJU2lEb043N2N1NXpudWEzVW5pNVV4M2E5Y2p0dmZQcTYz?=
 =?utf-8?B?VGVJNGYzKzJibldGbFRkRW9aT2tFelRHSVNUM2RFYXFTWlVlY2tCc21EMmd6?=
 =?utf-8?B?TzB1bC9ybTIwbkF5UUpja01mMXc2ejFYcGR3aitPZkNmeUNqVXFaN0NkR2R6?=
 =?utf-8?B?OUdRRnBkWEhVemZkUDhMS0pjU3FvZjFiS1JQUmlQbDRSSytPUHhWVHZDK1Zw?=
 =?utf-8?B?VVRTanhJS2o0VFhJc29ITUwwL3A1NDhBUnVEWHJ4QWxPYnZMbUVmbk1UYmhu?=
 =?utf-8?B?NDQ1dGJ1RlFleFkwWDEvZkVlNDZVakRtM29sQUc2ZnZGNEppdHZQM3FrRE5T?=
 =?utf-8?B?TkJNbmFyaThwdUVwZDhldUJ4ckhhQmsyZjNPL1ZIQ0dobkhqZ0pRUDZzNGZ0?=
 =?utf-8?B?S3MxaThvUGxuZEJnZHpCNmwrZENCSnpsdTAzNWUwQ1JNZFZaRHIva0NFK3lB?=
 =?utf-8?B?a2IvS2Jxc2J0R24ra2FTSTRTdXdQZXpMNUF2WE1zSzFueXhxcE9JeXRiODQ1?=
 =?utf-8?B?NXFOSExyYmR3NXovTTBPZnFkQytzZit2NXUwUHl5N29ZOTkyUE51bCtadUtL?=
 =?utf-8?B?YW1LZERVTTZBK0Q1dnZNY1o5Sjk0Y3RsNHkybVNhU0x5dmcxdTZuY3NaYVN4?=
 =?utf-8?B?QWYxWXN4WkpmTjF4TzVCdEF3WnFyUHQvWE9IeldLZkNYdjNBUXBiYXlkaGNa?=
 =?utf-8?B?Ni95MVRNak8ranVJc2l2b3Z4QzFuOTVUVklUUWgxVEJ0R0p5Tis5WHdCbzU3?=
 =?utf-8?B?V3FjaERKZy8ra3NZcldmM2I0a0hWU29wQ3Rvdko2V3dVYlFQNWxyaUNNRDIr?=
 =?utf-8?B?d3EvaHNsT0ZqOHRVVUt6N0Jkdm9LcFVLYjlwUzZOOFpaTkQxd2hYSFZvc0Vh?=
 =?utf-8?Q?ySss5Av94unFj/jqlH5iZfCW+?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	2brilWlNYVfOdYeOERsXfl6kLA5+lNvyzHg554/jPV6oqygL3ZvbRpwWQfI9hMFOAH/+7aC/CSw6DteiMDJrP7RkZbpPYxcrAnTD+U3S8xdE2fKJn+LG5RIFJOsaLOxJeliTvnIsTG9rKg1rfIjwnX3ZzHO3ICC59P+lc9VUgb877HCtbnlisoPB871wBdAzD58EA3DjX3lVT9h9DAauySbYVFUvYDTGdlXL7LN/pG2Vbbq0CDKxq125qSgHpWtUujen+HjP/jRBlQvMz7iWI+iQSg5N/iS8scaSAYAMAzBJ4VoN6/22sFgmS9iohKrswXjJEeguCMD5ua9h3vRonDgk3+C5ZKQUf4gUEZzhf6RaYQsWUTqE5WbzBXf6JWiLXuShkSerxEfbfYkgKEJICxGr0RDA6HcPv7ntO7NWaLhj1aK/xLiV4l7iLsEtqrwsXvJoTgf8eZzZkTkd/RRCfdooiOi/nipGR9leyAJ1L3VRW+4ia7Np4Y+YvYM1Dl8sNgEqdqyfftnF2RZSMa+QrW3e9ufKJoR4IngPB9RacQ/jsWsQ6i4KOdX/FhI2r3pWv0kWZqFuT0TdFWQJIb5QqhEbkWMsupWuLxxTnzUddNaoNAEtR6KduJsNQxPKmucu86j6IDVXMFN6hg8fP4OnoZ1ER5IKT80A3MugI6ZndUMYDetrg6aFcNlp7x/ZEEwujGUfT5K2l+whMthiZY9sgYQzsBD8KpxzCYvSBqqyR2eFO+4b3YIJdqHzQYCiUgWZGSoRMC0eXq2H3RW6edSqHqIvKPFRRPsuBR3gCBEIqpEGT8py7rn+kKj/152nTPDhGOj2L+9a/r+uDAgSV8rCtxiNs+oJ5+AaqK1wnFFabs8=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9317d1a2-20bd-430f-dbbb-08dbb51f7143
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 12:38:05.5197
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ZbNK7MXvRePli9m19nbzFskuAg3KLbGOxNifEpc1Tf6WDsRQqbL7lRukVREdnPoo39hhpRJGaRDVNwIS/vM99g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR03MB5913

On Thu, Sep 14, 2023 at 07:52:33AM +0200, Jan Beulich wrote:
> On 13.09.2023 16:52, Roger Pau Monne wrote:
> > OpenBSD 7.3 will unconditionally access HWCR if the TSC is reported as
> > Invariant, and it will then attempt to also unconditionally access PSTATE0 if
> > HWCR.TscFreqSel is set (currently the case on Xen).
> > 
> > The relation between HWCR.TscFreqSel and PSTATE0 is not clearly written down in
> > the PPR, but it's natural for OSes to attempt to fetch the P0 frequency if the
> > TSC increments at the P0 frequency.
> > 
> > Exposing PSTATEn (PSTATE0 at least) with all zeroes is not a suitable solution
> > because the PstateEn bit is read-write, and OSes could legitimately attempt to
> > set PstateEn=1 which Xen couldn't handle.
> > 
> > In order to fix expose an empty HWCR, which is an architectural MSR and so must
> > be accessible.
> > 
> > Note it was not safe to expose the TscFreqSel bit because it is not
> > architectural, and could change meaning between models.
> 
> This imo wants (or even needs) extending to address the aspect of then
> exposing, on newer families, a r/o bit with the wrong value.

We could always be exposing bits with the wrong values on newer
(unreleased?) families, I'm not sure why it needs explicit mentioning
here.

> > Reported-by: Solène Rapenne <solene@openbsd.org>
> > Link: https://github.com/QubesOS/qubes-issues/issues/8502
> > Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> As mentioned before, with this Fixes: tag I think the description
> absolutely needs to mention the (changed) view on the Linux log message
> that had triggered the original change. It certainly helps here that
> Thomas has already signaled agreement to a Linux side change.

Sure, what about:

"The motivation for exposing HWCR.TscFreqSel was to avoid warning
messages from Linux.  It has been agreed that Linux should be changed
instead to not complaint about missing HWCR.TscFreqSel when running
virtualized."

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 12:50:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 12:50:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602249.938692 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgln8-000746-Kw; Thu, 14 Sep 2023 12:49:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602249.938692; Thu, 14 Sep 2023 12:49:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgln8-00073z-Hm; Thu, 14 Sep 2023 12:49:54 +0000
Received: by outflank-mailman (input) for mailman id 602249;
 Thu, 14 Sep 2023 12:49:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgln6-00071W-JO
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 12:49:52 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2060f.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::60f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 31c92695-52fd-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 14:49:51 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DUZPR04MB10040.eurprd04.prod.outlook.com (2603:10a6:10:4dd::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.37; Thu, 14 Sep
 2023 12:49:48 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 12:49:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 31c92695-52fd-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EHeuP/EKVt3VHQKHyHUMGqza34M8Sz/jijUd9FvH5d4vcPluOtViye+nqhRoQNnN73Jk7NxLkTVpE8gwlBt4BynT4IKo+4L3DKBy8abAlWNGE51jRQ93puIB+clhtl7ItxYUMxGR/Tv5Lw4q2HbMNuBLrTgUn4UlosEn/2R8YiipYvQvtANg/TnIG0XkuYB4B9pP0psIZLqEQduqMM9k0NXNkqVxtpaJ6Rotn+UuqpFDz+kSJ30C9VYWTHLLcQhX3S+x0gEFIvfp+NWhKMKOllywlIWB1tSzcqQ361BbTCPYeuvuSoW2ucECnmgovolepz09VqIKBjpdIHYMgp9skQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rkLeLN+vJYO30GSrxCKC4jyEgxaLhRN5DhP+Zgb/5o4=;
 b=JY5BvZ9plyHsJxE44mTVgoPcR/aSLGTLnC3IJV9AuoiSXLh4cBlhwi/qGIUXv8l/tv99xXrSIle98oBdjvKE3jgrzgvPAkVury7J+W5DmwNy7VeMR5mww30TTCrHXoAAyLf5NUvtBD7sHEkc0lslWZGEeFKB1Alh0D8OrFFa9btqOXAF5zEEAFifY7EvBNy7UDP54RNy1aYR7h0z04SRphXYVanCmPGG6DRHKWQnmKMWUy7kkTfG7x+tkgBenKMNO38jck2bbnilVMkVLzm78+uFdBAOvUCd/v/efN49uiCdbCstS7J1Wrg65MJKSm99Rv5E+Y6XdGlBa5YK8JZ5nQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rkLeLN+vJYO30GSrxCKC4jyEgxaLhRN5DhP+Zgb/5o4=;
 b=zo68cEAFfhxsl63LGczWukRlSUoxHEuprofRPQCSThmYgdBU6R0DFF8GnqXvmzZ4UFdhPhy3ueVAK96A8I8//qgAdiuJ2Gjk9DPoU/U2u4EkgDRP91o4no70OC+NIaP/SnLhfhR1RHgjg5GPV18HLcAXDc0+HlHOK+wA+0T5boBiuuuVzAsyAnex3KQdVbVuhGC4S8Lnb1kmgXtcmkGyeqtmWm4DRRvUutFXWbUMY+7QvsSlThJPNeWe6pU7QHv+8JzaZfIGRwuwcik3mli+/QQ+pK0n4Q4Y7gd/DL9TFjGahesDkGGXXwsCRsOPTYrsNNTS/RWQjskwB7kr+0TPcA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e8859459-53dd-aa02-b776-ba4052c7ffff@suse.com>
Date: Thu, 14 Sep 2023 14:49:45 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Sol=c3=a8ne_Rapenne?= <solene@openbsd.org>,
 xen-devel@lists.xenproject.org
References: <20230913145220.11334-1-roger.pau@citrix.com>
 <e2fe16de-cb08-4a0b-adfe-95da6c86ea16@suse.com>
 <ZQL-p3LJX7WfwCtC@MacBook-MacBook-Pro-de-Roger.local>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZQL-p3LJX7WfwCtC@MacBook-MacBook-Pro-de-Roger.local>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0125.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:94::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DUZPR04MB10040:EE_
X-MS-Office365-Filtering-Correlation-Id: b7701323-eebf-494f-3d8e-08dbb5211466
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	enGR4tZuBEYwZtcAaZelSCzX6XlFrTCPidsHMxxTIVssBR0LATzXj/ow2Vt//iJba6Y7LBhpjAxTxw8pvFpnHd0zmOw0ODFKMD+CCy7ESaBoScRUZW/efeErbgHvZW5y7DBa+8W0RSDyd2uTwoVHHgqU9XbGpdUVk7o/DCj2fr5d/IngVpa7PkCQBo2sm+CfXZl8WCsedHvx+hBRer6aBklepGt4TvlYoE2m73f5QHjL1BgxLZzbtMGeXin0sM+lfKryxTnoib0GFhN/kEbPmsl7zj1Pm9fcdOb0yAWQ7sF77k5UBl9uQ7g3OFurffJr5SuVi+767dqBe0SUl5QOn5UTc66nGyS7+yD6Gq60PHSUEDMHbRchCExoVrSqvpmedzqL3hYZ14to9flAjMoMI39JMZCBN75KZ+cuRjivvnyaEha+thsmFkTebuhIVo1HcLr5SYAv9hhOxwfBjjo0BpBoU8l3oJbsSdzD8tw5Cxb0/MGZJbeQ2DMkak9594DHE+Im1vnXDbMUiEbQ98RBXWOInHrAwXMbs9xyy+vImkkJoagWab4z7V6Yf3aXCFZb03469MqHg4yTR/6aUkePEU/Zjait2JdYsFqPtSvJAlkqF2pKZrQkAv0EAv7HXN7Bop6DkDF3kyviMdhczsTtdw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(366004)(376002)(346002)(396003)(39860400002)(451199024)(1800799009)(186009)(26005)(2616005)(5660300002)(8936002)(4326008)(8676002)(31686004)(6512007)(53546011)(6666004)(6506007)(6486002)(83380400001)(66574015)(66476007)(66946007)(54906003)(66556008)(38100700002)(6916009)(966005)(478600001)(316002)(41300700001)(36756003)(31696002)(86362001)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cWlrS2FBb3ZwRFRzV0tZMDdUMFdXWHhiVmQyMjcvTGt5djJuUmcrc1VqNE10?=
 =?utf-8?B?UjZHemtEd1FMNTd4aTZvVG10ZDZ5bU5WZFU3bjVJUkZseEtFV0ZtRWh2SUhB?=
 =?utf-8?B?dmFyREpoWUluK2xINmM3a0VEOW9XV3czbi9IazhoZUZ2a0ZIRkYzdHc5K2R6?=
 =?utf-8?B?Vk1CaFpXbWtlOTFtakZ5UVJrcjZXVkZFUXNFUEdoSUEzL2c2VjVBczRYMGVC?=
 =?utf-8?B?ZDlsK3lnT1Fla09aTzBjWlZMTS81MUorKytUczhwWlJsM2FGc1VzNWs4MlFh?=
 =?utf-8?B?THBVVlNnM3F1WWt5cU1PVzVYSlV4R0xkQTlWR3p2TmgzUDRWeEhLem9pcDkx?=
 =?utf-8?B?bjRaOGtOSVAyVjhKemFXUXB6RmxmODd0MGFxTWt6RHZyVlZPc2hXV0tja2lM?=
 =?utf-8?B?cWNTWFh0b1crelVwSCt4NlRWQVdTVHUyTzQvNnE0VFZoeEtmcjZsMUI0ZXVV?=
 =?utf-8?B?OWRMQjRCb2hld2VPRVMxUTlrNlcxMXZFOWFkR0hrOURmZm5tb2RORHAwK284?=
 =?utf-8?B?aFNHdFY0WlFEWTdUSS9wQ0FvS21oRFZVYWtKbVlQdkhuZkhjc1pPZFVVRGxt?=
 =?utf-8?B?bDhwRGsycEVIQWVKeENaeDVycG5zOWpsL2NoU3ByTEdtYUozZnJ3ek1nNUxX?=
 =?utf-8?B?djZEc2VTQ2VnQnBHTjNMMEN0eWk3Qi93enNUM2pmSzlaRG14V3dKcmpPd2h1?=
 =?utf-8?B?ZkEwRW0vWmJzaWZlMFdiRTJYbUNuVEh1L0FEMnJpOG05b1N6Q3JBcFRFUTBk?=
 =?utf-8?B?ZE9yb25HVzlvWXB5WkV2UlI0dHpKS01jV3JyNzdBUnlIaytpTWY1TVd4VHh6?=
 =?utf-8?B?Nm1XS3FSQ3ZCR3lIUFBQSTltQnhrY3dtamlwRU9VeXFsVjUzZmhUejNJZjdO?=
 =?utf-8?B?VmtqUEY3VmJEUkJMQnNtMFVjZnlzcGN1TndzWThxNTdIUFYxZzNwZDhMaThG?=
 =?utf-8?B?dWZrZDVaYVVudXowaTlaaVl6M0k5UkNWYXpMVmNyR055Sk5NSFpjRHZxU2NT?=
 =?utf-8?B?UHQwUm9XckdlS0lEbHRBc2QyVTV3bzIwMG5QczFvLzA1RDlxb1pJZjc1c0lw?=
 =?utf-8?B?dHF3OW5US0ZQU1p2MjBnM1RjMGJPTkFIWnJkODhHbXV4VzhCSlBFSk9yZWZ4?=
 =?utf-8?B?WmIyWkkxQzdHeTV0aFF1dkltbWE0OWpxSkh1aDFmNkoxRHQwRzdaSXBzWlRX?=
 =?utf-8?B?ZW9adTVJbEpjK0IwRlM5VWxmSVRYcHlUa3JpZ1VxZmQrUjk3d282Mms2NjFt?=
 =?utf-8?B?a2RnSWp3ZEh4Q0JURTBmN3RpekNlRHVZTWlqN0lkTmE1K25iSlBuTDBqeUdG?=
 =?utf-8?B?dW40WWtUWnBMc0FhTGhDZzhneHlnbUlEdW8rNGdhaDBVSVlOUVBXQ2FDN1kr?=
 =?utf-8?B?TDBycVArN1NyNkZhTEF6eHNxQTV3Y2ZwUE44NWppbk1CM2N1d2tlcmMwYXNy?=
 =?utf-8?B?T0dnQm1jNW9Nd0FmbzRxTVA3bFZTM0ptdCtRQUlPQjUwWndMVnBCUDVLK2hU?=
 =?utf-8?B?ekQ2YTdGMm44OGlwK25oN2lMUU5wZ2ZUamUzTFR6TWlaT0UxVjdNU1poSVI3?=
 =?utf-8?B?dFJlamVTc0svdjRmYzIvd2tKWjV2UEx3bEcrdjZHTzloOGl0Q0RQTkxGeDZP?=
 =?utf-8?B?Qm5ocFZIRXdFRjNnNUphR0lnbzhXQzZDeW1sMzAxNFVqRkdzZnNtTDJTQkUv?=
 =?utf-8?B?TkF4a0NmSDVIWUFrVHFXVFh4d0JONXh6cGp0b0JiakdWVDRqV0haNndob3hi?=
 =?utf-8?B?eEw4L0poUFVzeXJhVngwNGVjYUgyaWNpbnVHc1lSRk45TnhwN3V0RTFwVGtT?=
 =?utf-8?B?T21DcnJndDAwbzc3S3VaQWxVUjd4RWRDK3pWZmozVXdQeGdEaTlGb3ZFUUFl?=
 =?utf-8?B?T3YxOTl4ZFB5VDhVWm85UHlLU1FRb3QycVY2U2tLVlBWa044OGtoWkNybjY4?=
 =?utf-8?B?OWxvN2tHdHVwN3VRUU5LVkxTQ1J4WWxFdkd1dW5aWno3bkdMQkUyZEpOaEFt?=
 =?utf-8?B?NndxMHFRTFEwOHZnK1YvdDFIV2N0OE1EVVgxMUQvRzVVeDNwR2RZeUJOSXFl?=
 =?utf-8?B?WHhONStEZXBZNnp3ZmlkSVZ0d1Z0M0tFVkpSS2xua0Q1YVRKZWtkd0ZLVVhx?=
 =?utf-8?Q?zoZ4Yl/OF+gZF0UN1GoxOwyE1?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b7701323-eebf-494f-3d8e-08dbb5211466
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 12:49:48.5458
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: jX2lXOZvyOUKQnnRJrRV29Xr/68SxLpWdKQ4LljxbjZDvI31e73UVwvOjl8z0YbgRkwFWeGVdQYqY+U6B3DQ9g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB10040

On 14.09.2023 14:37, Roger Pau Monné wrote:
> On Thu, Sep 14, 2023 at 07:52:33AM +0200, Jan Beulich wrote:
>> On 13.09.2023 16:52, Roger Pau Monne wrote:
>>> OpenBSD 7.3 will unconditionally access HWCR if the TSC is reported as
>>> Invariant, and it will then attempt to also unconditionally access PSTATE0 if
>>> HWCR.TscFreqSel is set (currently the case on Xen).
>>>
>>> The relation between HWCR.TscFreqSel and PSTATE0 is not clearly written down in
>>> the PPR, but it's natural for OSes to attempt to fetch the P0 frequency if the
>>> TSC increments at the P0 frequency.
>>>
>>> Exposing PSTATEn (PSTATE0 at least) with all zeroes is not a suitable solution
>>> because the PstateEn bit is read-write, and OSes could legitimately attempt to
>>> set PstateEn=1 which Xen couldn't handle.
>>>
>>> In order to fix expose an empty HWCR, which is an architectural MSR and so must
>>> be accessible.
>>>
>>> Note it was not safe to expose the TscFreqSel bit because it is not
>>> architectural, and could change meaning between models.
>>
>> This imo wants (or even needs) extending to address the aspect of then
>> exposing, on newer families, a r/o bit with the wrong value.
> 
> We could always be exposing bits with the wrong values on newer
> (unreleased?) families, I'm not sure why it needs explicit mentioning
> here.

Hmm, yes, that's one way to look at things. Yet exposing plain zero is
pretty clearly not within spec here, and any such quirks we add
generally want justifying imo (as they might bite us again later).

>>> Reported-by: Solène Rapenne <solene@openbsd.org>
>>> Link: https://github.com/QubesOS/qubes-issues/issues/8502
>>> Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>
>> As mentioned before, with this Fixes: tag I think the description
>> absolutely needs to mention the (changed) view on the Linux log message
>> that had triggered the original change. It certainly helps here that
>> Thomas has already signaled agreement to a Linux side change.
> 
> Sure, what about:
> 
> "The motivation for exposing HWCR.TscFreqSel was to avoid warning
> messages from Linux.  It has been agreed that Linux should be changed
> instead to not complaint about missing HWCR.TscFreqSel when running
> virtualized."

Reads okay to me, thanks.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 12:54:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 12:54:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602253.938702 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qglrA-00007D-4P; Thu, 14 Sep 2023 12:54:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602253.938702; Thu, 14 Sep 2023 12:54:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qglrA-000076-19; Thu, 14 Sep 2023 12:54:04 +0000
Received: by outflank-mailman (input) for mailman id 602253;
 Thu, 14 Sep 2023 12:54:02 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qglr8-00006z-7g
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 12:54:02 +0000
Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com
 [2a00:1450:4864:20::432])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c6a3cac9-52fd-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 14:54:00 +0200 (CEST)
Received: by mail-wr1-x432.google.com with SMTP id
 ffacd0b85a97d-31dca134c83so851519f8f.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 05:54:01 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 l12-20020a5d674c000000b0030ae53550f5sm1696614wrw.51.2023.09.14.05.54.00
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 05:54:00 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c6a3cac9-52fd-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694696040; x=1695300840; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=fIdEKLlpStFbhdTngXUP8mtVIOLstyQhn1zuKcQbO0Y=;
        b=XAAkPGy61K+D8OjFyuZGfEHe2I2n+iyS3EZkdfYkIHjvMStTLseoFMSRKwmzKDPMpB
         6ww1AayuQiVQvO2pa/eWIoCdcHxK4qXC3OPiY6Iz5Qp26Vyk35d1SVq+wEXbZNpk2W79
         Lb4yhPuChvCLb9F7ivR4qCCQ0CccHq4Bp8y24=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694696040; x=1695300840;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=fIdEKLlpStFbhdTngXUP8mtVIOLstyQhn1zuKcQbO0Y=;
        b=LGyHIw3FbvuFZj81eoDokRbwXhc4uT38UvcFO0CdHbxmRvpeBslPf4CljibQ43Gaca
         DvIY3JnpRkE77Nchsit3qKJAnUbz+sf/8/D3KzWQglzX6la4DXO+/Ku7UeK6X0ZUGXW4
         HCJ9xrHJPTy1hgDsnh0TIlXghfM6nf3z1368p/MVcouosi1Ojo/lE9FGs2pSQIJKEgua
         4BcOsPvPAdKb66cgxzUwMKo3EkoHmi1I91rCHG6mdoWZrAzF8mZhvYNVKjvRL5I1VFeq
         EbaIGE46Cn21N0PF/+Y/Li/hBnMVQaUpHRYLvVvnoSRc/ihi6pBgdU/JRlIyGAaRp1dJ
         94XQ==
X-Gm-Message-State: AOJu0Yx+S8mO6xs8H7A2zLfCdQUKO5V2soSjXqYmxDyDUbPXPhIn3s9b
	TD2HwEM18ySfM3jfCsk2al7HDTg/8Suc3uk4Yds=
X-Google-Smtp-Source: AGHT+IFpFTRDLOwmTxdMfhx2s2UyVVD54VOeYh908L/vX4+On1UNa1sOvDf0TYycK7FtB2QxglzawQ==
X-Received: by 2002:adf:f60d:0:b0:319:6896:6e8e with SMTP id t13-20020adff60d000000b0031968966e8emr4355974wrp.62.1694696040645;
        Thu, 14 Sep 2023 05:54:00 -0700 (PDT)
Message-ID: <924654cf-f269-2a5d-696b-0e2d9bcc7d40@citrix.com>
Date: Thu, 14 Sep 2023 13:53:59 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Sol=c3=a8ne_Rapenne?= <solene@openbsd.org>
References: <20230913145220.11334-1-roger.pau@citrix.com>
In-Reply-To: <20230913145220.11334-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 13/09/2023 3:52 pm, Roger Pau Monne wrote:
> OpenBSD 7.3 will unconditionally access HWCR if the TSC is reported as
> Invariant, and it will then attempt to also unconditionally access PSTATE0 if
> HWCR.TscFreqSel is set (currently the case on Xen).
>
> The relation between HWCR.TscFreqSel and PSTATE0 is not clearly written down in
> the PPR, but it's natural for OSes to attempt to fetch the P0 frequency if the
> TSC increments at the P0 frequency.

"TSC is stated to increment at ..."  would be slightly clearer IMO.

>
> Exposing PSTATEn (PSTATE0 at least) with all zeroes is not a suitable solution
> because the PstateEn bit is read-write, and OSes could legitimately attempt to
> set PstateEn=1 which Xen couldn't handle.
>
> In order to fix expose an empty HWCR, which is an architectural MSR and so must
> be accessible.
>
> Note it was not safe to expose the TscFreqSel bit because it is not
> architectural, and could change meaning between models.

I'd suggest rearranging and adjusting these two paragraphs.

---
Furthermore, the TscFreqSel bit is model specific and was never safe to
expose like this in the first place.  At a minimum it should have had a
toolstack adjustment to know not to migrate such a VM.

Therefore, simply remove the bit.  Note the MSR_HWCR itself is an
architectural register, and does need to be accessible by the guest.
---

>
> Reported-by: Solène Rapenne <solene@openbsd.org>
> Link: https://github.com/QubesOS/qubes-issues/issues/8502
> Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

For the change itself, Reviewed-by: Andrew Cooper
<andrew.cooper3@citrix.com>


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 12:57:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 12:57:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602259.938712 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgluj-0001iY-Jq; Thu, 14 Sep 2023 12:57:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602259.938712; Thu, 14 Sep 2023 12:57:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgluj-0001iR-G0; Thu, 14 Sep 2023 12:57:45 +0000
Received: by outflank-mailman (input) for mailman id 602259;
 Thu, 14 Sep 2023 12:57:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=J3lF=E6=citrix.com=prvs=61487cf85=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qglui-0001i5-C7
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 12:57:44 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 49af113e-52fe-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 14:57:41 +0200 (CEST)
Received: from mail-bn8nam12lp2171.outbound.protection.outlook.com (HELO
 NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.171])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 14 Sep 2023 08:57:39 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6551.namprd03.prod.outlook.com (2603:10b6:a03:38f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 12:57:36 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 12:57:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 49af113e-52fe-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694696261;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=ODxAtfwi+/Hdo9zc5Ehl3yKEfZbPtaK7Xl6/DHYFid4=;
  b=CuKvW5XYc/UqWHkzGHqYSkQFLcoZ9iEvpVMBLpRWCxIwGA5X3GnA8qo0
   cm/7EzYBhxOYTg6WZjwLg5VgGz3dImDPs/qfgtExhyRSCPaIcUR/jRNLS
   Y1H9pikuxpeNHHnmoZ2aGpyGDorbHcGZ6x6wpjc7aqCwPjG1xyoYOs2/4
   o=;
X-CSE-ConnectionGUID: 7QcFzRMBSSKeVqpP9UGlZA==
X-CSE-MsgGUID: n35I1b6gSo+kXEX6pt03bA==
X-IronPort-RemoteIP: 104.47.55.171
X-IronPort-MID: 125355355
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:Ta0eF6KuRrC1m1cEFE+R45QlxSXFcZb7ZxGr2PjKsXjdYENSgzIFx
 mIfCGrVOv6DYmHxf9Elb4mzoRsC7MSEytNhHARlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrZwP9TlK6q4mhA7wViPasjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c4oOGpg5
 8Y9Ags2TR29nvqOkY+UTttF05FLwMnDZOvzu1lG5BSAV7MMZ8CGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dqpTGMlWSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv227SSwHimBer+EpW+raNL2VfNyVcUSx4meGvlueXh0USXDoc3x
 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8Ul7Cmdx6yS5ByWbkAfSTpMbtEOs9c7QzYx2
 hmOhdyBLSxitviZRGyQ8p+QrCiuIm4FIGkafygGQAAZpd75r+kOYgnnS99iFOu/iI3zEDSpm
 TSS9nFh3vMUkNIB0Li98RbfmTWwq5PVTwkzoALKQmai6QA/b4mgD2C11WXmAT97BN7xZjG8U
 LIswqByMMhm4UmxqRGw
IronPort-HdrOrdr: A9a23:pDnTtK07f9W6wlGINmPmXwqjBcZxeYIsimQD101hICG9Lfb5qy
 n+ppUmPEHP5gr5AEtQ5expOMG7MBThHO1OkPYs1NaZLUXbUQ6TR72KgrGSuwEIdxeOk9K1kJ
 0QDpSWa+eAQmSS7/yKmzVQeuxIqLPrnM/Y5pa9854ud3ARV0gJ1XYhNu/xKDwReOAyP+tBKH
 Pz3LsimxOQPVAsKuirDHgMWObO4/fRkoj9XBIADxk7rCGTkDKB8tfBYlal9yZbdwkK7aYp8G
 DDnQC8zL6kqeuHxhjV0HKWx4hKmeHm1sBICKW3+4kow3TX+0aVjbZaKv+/VQMO0aSSAZER4Z
 3xSiIbTodOArXqDyaISFXWqk/dOX0VmgHfIBej8AreSIrCNWoH4wAov/MDTvMbg3BQ5u2Vqs
 hwrj6kX8E8N2KeoMy4jOK4By2DUyKP0CcfeSp6tQ0AbWPYAIUh/LD3tXklYKsoDWb07psqH/
 JpC9yZ7PFKcUmCZ3ScpWV3xsewN05DVStub3Jy8/B96QIm1ExR3g8d3ogSj30A/JUyR91N4P
 nFKL1hkPVLQtUNZaxwCe8dSY/vY1a9DC7kISaXOxDqBasHM3XCp9r+56g0/vijfNgNwIEpkJ
 rMXVtEvSo5el7oC8eJwJpXmyq9ClmVTHDo0IVT9pJ5srrzSP7iNjCCUkknl4+6r/AWEqTgKo
 CO0VJtcojexEfVaPN0NlfFKupvwFElIb8ok8d+REyAuIbRNojnrKjSae/XJLbheAxULl/CPg
 ==
X-Talos-CUID: 9a23:KKPGrmGXQjXZV/OUqmI4zUU6CPoAWEbm73ruOleAWFtGTI+8HAo=
X-Talos-MUID: 9a23:Q3dXkwVRn4TJQq3q/Dm32RA7Ppln2KPtC3Agocsep5HfPwUlbg==
X-IronPort-AV: E=Sophos;i="6.02,146,1688443200"; 
   d="scan'208";a="125355355"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=P0de2YSxcuREQqcmlQQG1N1xqoiEZmb4DH/KldW+1EEUFzvhwLhGRIUeMqywr8Fvs11U0OxmKb9dINDyhuEZyzOu9KI3iGOGwAIMPS//KbaEcxI0H0GTJbKSbgIZfX0VV+558iwxDDxwxsZPws5IiqZCen6D0eZaGX9g21xr+WTvU1HTPyELouL1UPlPo6T5hoUIDAD4lYYfEvu9gQryJHqCfAYSwd+4QnpLa6wRUYCFdm7w5TXMwznDkseG+kz+Qgopjv9BN8bJf0BYWZUFtOyYLCozJAH5xrDuLdOah/5fbDdS4UGm1b4rEcwjtDHg6zjpblTLhb2DSayZPXVE3g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3ihWNJDQyDekg/XPnJqApWkOSdQgu9311zR1/7EiOsc=;
 b=i+tOlcl4LFd2g9ISdZCzdOSBfFiBQairx0PPapNhIQmSIj5b98pExJ8nsQSyRRbo+achzo2/rEcQ1uRpcnasLDtMWNGCxb5ztBkB3xI0pqGEwMgdbgIPe1g4yCSdL/3566JyQuwvreZKSsjp6BwA4MtwbG9k/XrBy4Q0VIBBj0yzecu/rcjSe5ijUDfPsJRvTI1q3nKpZ++I0vVr4/bDomCTCBmhfZRsfcFyKfBn2FrVZ0Zo0TRRYHOmHcDJex+LFb6PBdQHwvQ3B+FKWY5N1paj7KbGnDHpdJ4m3ciTnkdIC3yLq9YGDMurzRB7zfNH8/InVankb8ExbbggWBwz6g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3ihWNJDQyDekg/XPnJqApWkOSdQgu9311zR1/7EiOsc=;
 b=ms+3IK/+Sp6z4S8s0kiXHpOPGopGlSTxLtSAAeDjADjTswfkmUUh84y+/XLPlI4HYiXjdEkwzrOcV0VTNKqZYDP99ovX+pNGI6lH0VXV0FW5FyegQrk50UWxEob9zKIrGORygevp28VgGsVMeSP9Z0f6x2fJ/Ofn4m6rr6iFNZA=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 14 Sep 2023 14:57:31 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	=?utf-8?Q?Sol=C3=A8ne?= Rapenne <solene@openbsd.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2] x86/amd: do not expose HWCR.TscFreqSel to guests
Message-ID: <ZQMDOwGGNJVnjFEm@MacBook-MacBook-Pro-de-Roger.local>
References: <20230913145220.11334-1-roger.pau@citrix.com>
 <e2fe16de-cb08-4a0b-adfe-95da6c86ea16@suse.com>
 <ZQL-p3LJX7WfwCtC@MacBook-MacBook-Pro-de-Roger.local>
 <e8859459-53dd-aa02-b776-ba4052c7ffff@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <e8859459-53dd-aa02-b776-ba4052c7ffff@suse.com>
X-ClientProxiedBy: LO4P123CA0673.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:351::8) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6551:EE_
X-MS-Office365-Filtering-Correlation-Id: 5d5481f5-b974-4d19-3d5c-08dbb5222b22
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+5Qa66o08LjPQLR+kN1pkEzaQnRjFAd4owfF8ELMteveBN5sNWRismTipoJBywf9AkxUrTrF4DCW68xzFx9N5S3HvHNG0Z2+l++F3rYN/MOqq5clHLtgYTUbaVQqLXVt/ILna/GogGKjV9L5L2oalMTTiooXNAxDihU3f2/z6oy1jrRyfbycHFQ/OOifywIz4av2eV6bxnCc5xx6BlmkeU7ohVlOYE/iShYU3G1D45RlIH2QXb/4c8Qn04DRZ6XIOk6spXfhZO/Xn2UDy7uPe00ufnAmWkc60+1HkYN6tTZVa492se4aYQtJCaDrsDwtJ01X/tPxqV8SyjYw3u/mU8u/GvZfP0W4L5C1ySarexPpLEjgVB/gRSMsNp41ZKJmW/sx+cHUyKw3zYxPiH7tPkybk5VwzKctgKjw+OT0zlZ4bFDRFyGGSHJgMwn8DnD+7mnvT4nKksYWep8K5av5jjbs0lrrw+lYFgEwoi8p1umNqGosfMZhuD6rGOYzQqFBi5oNRX5SAuqWUgc5vcm1FY1CmoxASNqWZ67heIO0UbQ=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(136003)(346002)(366004)(39860400002)(186009)(1800799009)(451199024)(83380400001)(82960400001)(53546011)(9686003)(6512007)(86362001)(38100700002)(6666004)(6486002)(478600001)(6506007)(26005)(4326008)(8676002)(316002)(66556008)(41300700001)(6916009)(5660300002)(54906003)(66476007)(8936002)(66946007)(2906002)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?d0RWdnoxL1VaeUVCTU9mQ0VIRGpaNlJvTUFVSFlaeDhrTzFGOVcxMURYRHRh?=
 =?utf-8?B?WUNwTGZUR2xpQ2sweHVSK01nZG1aVTQvdERSVzZSL0wxejJIYTRzQ3pVdVFW?=
 =?utf-8?B?SWZ5UGNiQ29WdDlnM0lNNGhvZEx5SmF3QkMydWtEQkttVDM0NDFjY2JxNE1O?=
 =?utf-8?B?TlA1VFNTVElVUEkrRmJwT1hqdEZ0USswL3kvMEsyTlFPNHgvdHFiQVZpLysv?=
 =?utf-8?B?Z1E2bzdqYTFCdU05a1YvekVhT0V5SlMwbG1pWmxiK2lxVDE5V0hsTVVvdldi?=
 =?utf-8?B?dlNsU3k2eFM4Yk43WG9DbWpGbmNYZlJtK3hqWFVGM1RubG8xbURTTlNQREhl?=
 =?utf-8?B?bnVjNGxQZENoKzJzaS95OHQ0N3NzcE5EdmNtQkE2UFc5Mm01VEtRcEs2bGFM?=
 =?utf-8?B?aW9CRHgrM1gzVUZ3RW5OeWtqVFVONDduSUFaMDZqY1dkV0lPUWxSZVc3V01H?=
 =?utf-8?B?dUZxcncyakkwK3Y1N2VIWWxNbFZBMVZWZitteG9va3NwdnlXUE5xNnRoM0hL?=
 =?utf-8?B?TXoza1RUSmtnZnd6QllWdS9IanAwWnpaN2hBZG5yMUhRQ0xJejgxUDZsYXNR?=
 =?utf-8?B?YzlCYVRnTFcvOW1jRmdTYmFyT2F1ajNRQTVwMjlGQmFvMmE4bjJnbktqZnVI?=
 =?utf-8?B?QlJVUnF6dzgxdmJsa2FMd1loOWs5WkQyOUg3Z1JwdmNNUjFxR0l5aW4xVmNO?=
 =?utf-8?B?a2lDUlkwaHR3ckM2S1Z0dW5BdmUrd25tWEZaQ2ZyN2JRTFNGTG1vaFJVSnRM?=
 =?utf-8?B?Q0FzQWh6M1FGZGVOUUdyOWlFM3lvUlQ3eW81NVV0UHZTM0l2Q2ZFOFBBYUhr?=
 =?utf-8?B?L055RGFvSWJKYW1kWHFKeHFpMTVGV3FSTWJCdDFZK1RIem1yek1uR3B6Znp2?=
 =?utf-8?B?WUVybVg1bXBIbkFuYVBkNnF1L2ZsblQrNnBiSjBaa3FLZGVybHgvOElpaC9B?=
 =?utf-8?B?VVhWZG5nUmN1a2plV0theXc1VUsvNWtCQlhJYXp0YUFrSTJBQVBicFRxaXR4?=
 =?utf-8?B?TWhwZFBlbUJ3OXdsVVN4aUQzYmdtNHlwbEdFT29IU0JCdmFUaDVBRmdkL0JE?=
 =?utf-8?B?bUdCdmgxcjVjcDBzemhYSk5KYzAzT1B4eVdsb3FaNFZBcCtnWEJiN0wvbEYw?=
 =?utf-8?B?N0hNaW1sY3FFNmtkRXlYL2RCTkFiTXVweHVTbmFiSllpMnBCSHlzY1hXUlBr?=
 =?utf-8?B?RnAwaUtmOHNpN2dBblRRdHJmeG9CKzNNRjdwSG1ZK1FaaDBJM1BqRlZkT1Vn?=
 =?utf-8?B?Y1Z1UDhTN0hpanlRTjBVQ01GRVNYTmYvQVVmWm5wbi9MMHRmamtVYk9LME4w?=
 =?utf-8?B?K3RIWXE3ejdtVnU0WE4rZEI0RCtKeUVyeFpWSUxVLzNDT3FpeWFzWExLRjdW?=
 =?utf-8?B?OEI2QVk4UzIxVzUramxTYkVyd2tLNmdlcVdwUkRSZFhjNUQ3ZzNtQ3BKb3B1?=
 =?utf-8?B?TVI0NWdNYTFMemtWUUVFbFEyc21aK0hRNkRoc0V5OHF2L0RYZWlka21aUXZP?=
 =?utf-8?B?aHdRZHNISTJpSFFpUVdRT0owcTI4QnJ5d3FGSHZaYnQ4cGRlWnlaQ3diYUQy?=
 =?utf-8?B?Q09ZdmROQjhRR0p0Q3hSRjFrRDBGelNnM2lLa0VJb2NQeHQ0NVJQUmVCRkRt?=
 =?utf-8?B?eXR3aXNTZUFQdFhvc2ZoQXZUOXExTHRvZHBKMFRGM2Q2UmoreHJtN3Z0QVRN?=
 =?utf-8?B?ZzdZWCtWVDZpVmZpMEEvaGVZY0MwSTJqK0h1aXYwUGNFMzlBUG1QUEdGVCts?=
 =?utf-8?B?cE8yUHpNTXN5RVVaRy9NOUk5K2VqV1A1SGUwRVdVU3dPWk9LcmNIcFJKQTlB?=
 =?utf-8?B?Nk90Q2NGUElsdFROMDlsMWdIS2xnUjVTb3F5UUZRRFdCUVN3Q1dyemRsYVhw?=
 =?utf-8?B?c2gycW9oSWJqY21QRExhSzNIbVhRTFg5MDlMVjRmd28xazFqdDdnd2xSSWlk?=
 =?utf-8?B?K2kzWFNzb0FUYTNxTzhvSm9vanlHZkQxQXAyT3F6TWZ4STFCdVNYSy9ySEZw?=
 =?utf-8?B?QThTeEVOTklNc2ZodUtuem42WWZNcWxBVU52aVpLN29CdStRbWFqQ0ZaV3hj?=
 =?utf-8?B?NXJPc1FqOHZCdVZka3hDUFA4aXNKRDZ3ZEFpRWlZcHdneUNzcmVUZC82VjRL?=
 =?utf-8?B?UG02L1gxdGRuTkZES0xSd3d0TkdhUUV2L0dXRmNpUmUwdllFdVA5WHNOQStr?=
 =?utf-8?B?SlE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	vS86PX3oEgFCejSkVpRXuq5aKzQ/TRXp0jDfZRaQIa8HuLmXDRG3prYiviPY++jSfzTpgUG1yXhmXoIR6c4HD2FbHzgjqhaHh9Q8if4sY0urOb4FxG8i3hcU3Z+75obymsjQTtbFDj9kFzD2T3+UuTx4gQczxpxR28UuL0M73kbZ7J85uTHNUpQXc0jOKUi8GSIo+SOJlBIPXQ+JveceaW2+uEyMjM0T48OvFY0NNlw2/Ya+RMOtpWrQ3xh7kV0dObFFm9mNDRyQhY0dGzgmQmLte0YvKjod7hg+atPUaW0tL4iB5BeuImZBhT935GPOQNQz8zn71iRBX/BA+xi/9QzDNShCN2We++u/aWyWGaYC1JLAQfT9FaHr5WK9+tggUYVlFrXdMuyz9c7Qd/d34KMX9VNZkqhqN44HXSVhKFK6KXH5sWvADBbRcrjSISAoF7yKBKXe6VcUUG2eW79vqaS2K66mRUO4/1xVgRJdePr2AluJu3hZYsCzFfvUnwD8PCnhRKRCG8uFZ9UFRu28neeVhafVk2xAo56WLu8wWlZCzHb/t7/qCHwATR84+Em3RJsPaOtik/6snWD+qZBRi+NSmZ8MGfXzrilWNrfjsolOxL3fsxfTVps45ehEr3ISgoHFjurL75StT7II5diiaBX/JJImIBZvNTKs+ywsz5NVL57cwwtm7Hja6cpWSXvNwmaEnVX7nATbBtz8WEF2Hfjf/ZEp4qDWrsq32U5+JEJASo18/0hdCFWZdteb/nBIjoF2dHN9VtCsnyzX0gjOe/4VQU4tqyCmelp9psQVe3AA1YkAaF/FEsdVfXAlICaDOPgmEOzs7mMIwKg2yg5+2js7XmnOzilibvFXF9myGYM=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5d5481f5-b974-4d19-3d5c-08dbb5222b22
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 12:57:36.2893
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: nj9T8waMDiUNWi4/KARdVtNqykN0P2bpX4U4Ge4DzlMRx98Yb+3utM8pkNrmfc/S0FD2pHKAjSYG6wZdbWtRvQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6551

On Thu, Sep 14, 2023 at 02:49:45PM +0200, Jan Beulich wrote:
> On 14.09.2023 14:37, Roger Pau Monné wrote:
> > On Thu, Sep 14, 2023 at 07:52:33AM +0200, Jan Beulich wrote:
> >> On 13.09.2023 16:52, Roger Pau Monne wrote:
> >>> OpenBSD 7.3 will unconditionally access HWCR if the TSC is reported as
> >>> Invariant, and it will then attempt to also unconditionally access PSTATE0 if
> >>> HWCR.TscFreqSel is set (currently the case on Xen).
> >>>
> >>> The relation between HWCR.TscFreqSel and PSTATE0 is not clearly written down in
> >>> the PPR, but it's natural for OSes to attempt to fetch the P0 frequency if the
> >>> TSC increments at the P0 frequency.
> >>>
> >>> Exposing PSTATEn (PSTATE0 at least) with all zeroes is not a suitable solution
> >>> because the PstateEn bit is read-write, and OSes could legitimately attempt to
> >>> set PstateEn=1 which Xen couldn't handle.
> >>>
> >>> In order to fix expose an empty HWCR, which is an architectural MSR and so must
> >>> be accessible.
> >>>
> >>> Note it was not safe to expose the TscFreqSel bit because it is not
> >>> architectural, and could change meaning between models.
> >>
> >> This imo wants (or even needs) extending to address the aspect of then
> >> exposing, on newer families, a r/o bit with the wrong value.
> > 
> > We could always be exposing bits with the wrong values on newer
> > (unreleased?) families, I'm not sure why it needs explicit mentioning
> > here.
> 
> Hmm, yes, that's one way to look at things. Yet exposing plain zero is
> pretty clearly not within spec here,

As I understand it, the fact that HWCR.TscFreqSel is read-only doesn't
exclude the possibility of it changing using other means (iow: we
should consider that a write to a different register could have the
side effect of toggling the bit).

The PPR I'm reading doesn't mention that the bit must be 1, just that
it's 1 on reset and read-only.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 13:01:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 13:01:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602265.938722 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qglyW-000414-75; Thu, 14 Sep 2023 13:01:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602265.938722; Thu, 14 Sep 2023 13:01:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qglyW-00040x-3k; Thu, 14 Sep 2023 13:01:40 +0000
Received: by outflank-mailman (input) for mailman id 602265;
 Thu, 14 Sep 2023 13:01:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qglyU-00040r-Ka
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 13:01:38 +0000
Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com
 [2a00:1450:4864:20::32a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d6bee8f3-52fe-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 15:01:37 +0200 (CEST)
Received: by mail-wm1-x32a.google.com with SMTP id
 5b1f17b1804b1-401da71b85eso9825725e9.1
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 06:01:37 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 c20-20020a7bc854000000b003fee6f027c7sm4769165wml.19.2023.09.14.06.01.35
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 06:01:35 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d6bee8f3-52fe-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694696497; x=1695301297; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=ddiGkE6j5Yqjx2YChUyXAKUMjOfVYGR2wU1BDa/uOVM=;
        b=HgD2X5Uu3+bUTHe7WZm3WbTwKHNBtaR4eIDTmMYpL+G+S3DwRUhzWaivn7adykZHvj
         ghyqbWlyMPbKdkWnroBLZbpM1YVANp5UwnU/gtxLeln0LHFkUMtjMzNzZznFgdSgVGnq
         aG50s1f0HNsXeXzNGzWUfmXoWhaFkMNl2RFyQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694696497; x=1695301297;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=ddiGkE6j5Yqjx2YChUyXAKUMjOfVYGR2wU1BDa/uOVM=;
        b=M2bH1VC1f0OCaRVQhEMMiiDeu7MvyOCwi9F5jvRdfc/XFCvCBLInf0rawJMjYXtb7V
         AOQaiukPnpM2YfYHRx/+nmjSaWpad0oNU/s7gbH/juiDdqLKXUx8ysMov5DfXWxgnrab
         cY3lB4ROJXo51/rmYvW0W+M3Mxqwq1oZhv5vRHG2Yy3Ahp5mqu9zAJcxcCz9NUq2/mir
         7Q6o8CzR+QUALuwN+BSDdemIE/i3didsHJARymC2OjTbNzkalvhwYHIWTkhg7ajkYFt3
         90gvQ+GZHWLD8TQSRBGY9QspQTFjVdPRo5UfFM8LgMlXl2myZsx3xTnScdFuUEfrn/04
         D75Q==
X-Gm-Message-State: AOJu0YzLohX6Zk4iiXeeAbnlcRfQEkPkDQPoYOZ1tbg9wa0BkV2oCgQ7
	XL82mrjiRYgpsRKfu4GTI3o+Pw==
X-Google-Smtp-Source: AGHT+IGu9ZokynanEidxo6b4ugwjHDqKzn9EMgeKgnKUXWugWLtEAMgf7RA8IhMPo5oq1q9TPG+E9Q==
X-Received: by 2002:a05:600c:b5a:b0:401:eb0:a98d with SMTP id k26-20020a05600c0b5a00b004010eb0a98dmr4538194wmr.24.1694696496369;
        Thu, 14 Sep 2023 06:01:36 -0700 (PDT)
Message-ID: <b894ba89-27b2-88a9-6adf-7d53e2c51c02@citrix.com>
Date: Thu, 14 Sep 2023 14:01:35 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: andrew.cooper3@citrix.com
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-GB
To: Juergen Gross <jgross@suse.com>, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <48d312f4-50cd-468d-af70-51314796b0d8@suse.com>
In-Reply-To: <48d312f4-50cd-468d-af70-51314796b0d8@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 7:02 am, Juergen Gross wrote:
> On 14.09.23 06:47, Xin Li wrote:
>> Add an always inline API __wrmsrns() to embed the WRMSRNS instruction
>> into the code.
>>
>> Tested-by: Shan Kang <shan.kang@intel.com>
>> Signed-off-by: Xin Li <xin3.li@intel.com>
>
> In order to avoid having to add paravirt support for WRMSRNS I think
> xen_init_capabilities() should gain:
>
> +    setup_clear_cpu_cap(X86_FEATURE_WRMSRNS);

Xen PV guests will never ever see WRMSRNS.  Operating in CPL3, they have
no possible way of adjusting an MSR which isn't serialising, because
even the hypercall forms are serialising.

Xen only exposes the bit for HVM guests.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 13:13:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 13:13:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602271.938732 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgm9S-0006f2-5R; Thu, 14 Sep 2023 13:12:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602271.938732; Thu, 14 Sep 2023 13:12:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgm9S-0006ev-24; Thu, 14 Sep 2023 13:12:58 +0000
Received: by outflank-mailman (input) for mailman id 602271;
 Thu, 14 Sep 2023 13:12:56 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/dcB=E6=gmail.com=jandryuk@srs-se1.protection.inumbo.net>)
 id 1qgm9Q-0006ep-I1
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 13:12:56 +0000
Received: from mail-ed1-x52c.google.com (mail-ed1-x52c.google.com
 [2a00:1450:4864:20::52c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6a551536-5300-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 15:12:54 +0200 (CEST)
Received: by mail-ed1-x52c.google.com with SMTP id
 4fb4d7f45d1cf-52bcd4db4c0so2220304a12.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 06:12:54 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6a551536-5300-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694697174; x=1695301974; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=AumOUiCHXPH8lTKcSmDU3lcvhgb329jr+8FMhGs+oyY=;
        b=I/qqjlVecFukO8OxH+ZYyK/q6dsTwZZ+eiKhndH6t55UfLT6F1spUSeqJKS7OdjSBs
         Y2lqfqhvfVxfP9dx7F+icgzqoytfFDWpQbM6ptolLwA3celveeGm9tnAKiqRFIfiZtwN
         LSfKX3bid7AgLMk7ylRhH6306pGfOAkNExB3SfLmGBQCcprUBkHckNK+1TW59McyJ5Ae
         mk8XUptmy+X7dU2oAVGBjgFLaeBPo3GKW+mf7Iz+iDj57/4aM3Wp1YsFK4syqSStmWG3
         UuSq1HgM/yDPBqAm3I4HaI77YyWvPEuZ35aCi04AUa6ghhxRJqjdZKGJFsR59S8ytbvL
         TuyQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694697174; x=1695301974;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=AumOUiCHXPH8lTKcSmDU3lcvhgb329jr+8FMhGs+oyY=;
        b=AHHbItU1s0zk54WUcEPNTQ2Ym1C8uvQCWWrI2oWdB9MJy+vx+8wjLuE/IzvD3rVHJX
         M0Uyq2TdBYcpth0fuAPKfnqKxtVD27qTs/ST2bpK+L5ERCmIezsG5/socudgYlq+zshX
         STeAsdaBteDAKoAWQfhVIMBuszOWjGLIbqwyyYB8EZ9/ZFlTjvkyP+gTc6tcfs7X5w3+
         npzq8y2mkgU/L2gqa0tCcd1M6bSdbP/FZd4r8NJnk5T66sJ6oDNvdh6hvx9lTAlwL8XB
         tFM0rYjxcyIk8Zy3ISjS2/kdUohN8PtF8+bJEWoZHRv5meCY+Uv8et4nY3uhUkLdbWry
         I/wg==
X-Gm-Message-State: AOJu0Yx24PZIU7qNvHmXxXuWdmwM7trHqSC+dhnmHAWTBtPkCUPAxZc6
	gOYNP2IYBvJBf2H7KQKUs9lNuRqcQjs1E46cf+ZnRbI1xp4=
X-Google-Smtp-Source: AGHT+IFdja4vrxhs/sr5ebqzHnZ5ujUwcD3BvrR63AzlerPNBtgB0uvmWzdFOIyMU/1jnyBrr11E7wEfAGvejKd55eI=
X-Received: by 2002:a05:6402:f21:b0:528:9284:61c6 with SMTP id
 i33-20020a0564020f2100b00528928461c6mr2917326eda.0.1694697173785; Thu, 14 Sep
 2023 06:12:53 -0700 (PDT)
MIME-Version: 1.0
References: <20230913202758.508225-1-andrew.cooper3@citrix.com> <20230913202758.508225-9-andrew.cooper3@citrix.com>
In-Reply-To: <20230913202758.508225-9-andrew.cooper3@citrix.com>
From: Jason Andryuk <jandryuk@gmail.com>
Date: Thu, 14 Sep 2023 09:12:42 -0400
Message-ID: <CAKf6xpuRh00P9at-bY+XE669vjoMf_xMwozQkCx=DL6Q2kLwgg@mail.gmail.com>
Subject: Re: [PATCH 8/8] x86/spec-ctrl: Mitigate the Zen1 DIV leakge
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich <JBeulich@suse.com>, 
	=?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Sep 13, 2023 at 6:09=E2=80=AFPM Andrew Cooper <andrew.cooper3@citri=
x.com> wrote:
> @@ -955,6 +960,40 @@ static void __init srso_calculations(bool hw_smt_ena=
bled)
>          setup_force_cpu_cap(X86_FEATURE_SRSO_NO);
>  }
>
> +/*
> + * Div leakage is specific to the AMD Zen1 microarchitecure.  Use STIBP =
as a
> + * heuristic to select between Zen1 and Zen2 uarches.
> + */
> +static bool __init has_div_vuln(void)
> +{
> +    if ( !(boot_cpu_data.x86_vendor &
> +           (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
> +        return false;
> +
> +    if ( (boot_cpu_data.x86 !=3D 0x17 && boot_cpu_data.x86 !=3D 0x18) ||
> +         !boot_cpu_has(X86_FEATURE_AMD_STIBP) )
> +        return false;
> +
> +    return true;
> +}
> +
> +static void __init div_calculations(bool hw_smt_enabled)
> +{
> +    bool cpu_bug_div =3D has_div_vuln();
> +

Would it make sense to add
    if ( !cpu_bug_div )
        return
...

> +    if ( opt_div_scrub =3D=3D -1 )
> +        opt_div_scrub =3D cpu_bug_div;
> +
> +    if ( opt_div_scrub )
> +        setup_force_cpu_cap(X86_FEATURE_SC_DIV);

...so that div-scrub=3D1 isn't setting X86_FEATURE_SC_DIV on un-affected
hardware?  Or do you want to leave command line control in place in
case it might be needed as a future workaround on other hardware?

Thanks,
Jason


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 13:16:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 13:16:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602277.938742 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgmCN-0007ZV-K2; Thu, 14 Sep 2023 13:15:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602277.938742; Thu, 14 Sep 2023 13:15:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgmCN-0007ZO-GT; Thu, 14 Sep 2023 13:15:59 +0000
Received: by outflank-mailman (input) for mailman id 602277;
 Thu, 14 Sep 2023 13:15:58 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgmCM-0007Z9-86
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 13:15:58 +0000
Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com
 [2a00:1450:4864:20::432])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d6ac1270-5300-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 15:15:56 +0200 (CEST)
Received: by mail-wr1-x432.google.com with SMTP id
 ffacd0b85a97d-31f853f2f3aso1392044f8f.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 06:15:56 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 r10-20020adfdc8a000000b0031aeca90e1fsm1775995wrj.70.2023.09.14.06.15.55
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 06:15:55 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d6ac1270-5300-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694697356; x=1695302156; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=QLvdeLJFaVHjTuDoy38D6XQS7QdszFti2O5CeB4RYlA=;
        b=moghdWVaodMkolqt4agbXCmD92fvBgrC3x0EB7Te9X+qd5egEeciJ948OKLFb4Xrvp
         YxxRA2eJQHa3o7ajIlOnqSUvw56X1dnj4R+blPH+/JPXsikycPKTNJ+Dl1n8cUwmV0E4
         FeVKVSuZ7Ay/DWRgbzvCMC+pi7NdFlow+KEuA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694697356; x=1695302156;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=QLvdeLJFaVHjTuDoy38D6XQS7QdszFti2O5CeB4RYlA=;
        b=fXfqu8M0Kvl9j+2gIyUCkphDUaw0Rf6yIySlvKoVEASoDrKHUVKoZAEO4Nz9y/83KB
         TaVQCkOWLAxs0o0RGpX7LHaVSjTq6pPi4h4qCwNlQhlFvgZusAECxjeEDYwJeduUnBy3
         Ik9GO3kDHzSBFVWh5xA3b1KpOsd3uXqMf9c9iZmaUNJUQ/7yWbHD3PzGETbUyR4Fi3iL
         McYkkrUFWh5ROdkJXICCek15affyTwgJ1BiBn6QQCAWj3b3Z4sE6GBEZB5P6luyo2T+B
         SbJeDKVC8lEPHypdf4d+uvcmiyaljSBxK3zbsLC/WSq7McPgDMT/To5zAYte6l9HipXY
         Gp2A==
X-Gm-Message-State: AOJu0YxGJBfHI6kyX/qM7hay4upm/l63cDwJsDjloOL6lDKARjATkZAZ
	wK9qvADXvWzMdT/pwx/maqfKCw==
X-Google-Smtp-Source: AGHT+IEIu7wWXsXFgmC0TpcZPq12QhcsescNI+urHKtYHceqhxoChsC2ACdOD0NH7oyI9K+8uKKgUg==
X-Received: by 2002:a05:6000:4013:b0:319:735f:92c5 with SMTP id cp19-20020a056000401300b00319735f92c5mr1634592wrb.32.1694697355769;
        Thu, 14 Sep 2023 06:15:55 -0700 (PDT)
Message-ID: <7d907488-d626-0801-3d4b-af42d00a5537@citrix.com>
Date: Thu, 14 Sep 2023 14:15:54 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: andrew.cooper3@citrix.com
Subject: Re: [PATCH v10 08/38] x86/cpufeatures: Add the cpu feature bit for
 FRED
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>, Juergen Gross <jgross@suse.com>
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, jiangshanlai@gmail.com,
 Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-9-xin3.li@intel.com>
 <d98a362d-d806-4458-9473-be5bea254db7@suse.com>
 <77ca8680-02e2-cdaa-a919-61058e2d5245@suse.com>
In-Reply-To: <77ca8680-02e2-cdaa-a919-61058e2d5245@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 7:09 am, Jan Beulich wrote:
> On 14.09.2023 08:03, Juergen Gross wrote:
>> On 14.09.23 06:47, Xin Li wrote:
>>> From: "H. Peter Anvin (Intel)" <hpa@zytor.com>
>>>
>>> Any FRED CPU will always have the following features as its baseline:
>>>    1) LKGS, load attributes of the GS segment but the base address into
>>>       the IA32_KERNEL_GS_BASE MSR instead of the GS segment’s descriptor
>>>       cache.
>>>    2) WRMSRNS, non-serializing WRMSR for faster MSR writes.
>>>
>>> Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
>>> Tested-by: Shan Kang <shan.kang@intel.com>
>>> Signed-off-by: Xin Li <xin3.li@intel.com>
>> In order to avoid having to add paravirt support for FRED I think
>> xen_init_capabilities() should gain:
>>
>> +    setup_clear_cpu_cap(X86_FEATURE_FRED);
> I don't view it as very likely that Xen would expose FRED to PV guests
> (Andrew?), at which point such a precaution may not be necessary.

PV guests are never going to see FRED (or LKGS for that matter) because
it advertises too much stuff which simply traps because the kernel is in
CPL3.

That said, the 64bit PV ABI is a whole lot closer to FRED than it is to
IDT delivery.  (Almost as if we decided 15 years ago that giving the PV
guest kernel a good stack and GSbase was the right thing to do...)

In some copious free time, I think we ought to provide a
minorly-paravirt FRED to PV guests because there are still some
improvements available as low hanging fruit.

My plan was to have a PV hypervisor leaf advertising paravirt versions
of hardware features, so a guest could see "I don't have architectural
FRED, but I do have paravirt-FRED which is as similar as we can
reasonably make it".  The same goes for a whole bunch of other features.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 13:16:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 13:16:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602282.938752 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgmDA-0008Na-Sm; Thu, 14 Sep 2023 13:16:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602282.938752; Thu, 14 Sep 2023 13:16:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgmDA-0008NT-Q5; Thu, 14 Sep 2023 13:16:48 +0000
Received: by outflank-mailman (input) for mailman id 602282;
 Thu, 14 Sep 2023 13:16:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgmDA-00083p-5z
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 13:16:48 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20615.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::615])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f513fdf0-5300-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 15:16:47 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB9738.eurprd04.prod.outlook.com (2603:10a6:800:1dc::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Thu, 14 Sep
 2023 13:16:45 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 13:16:45 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f513fdf0-5300-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=m6KayIP37OtNpUOq6NVdew0silm5dPN0mpOsEbLw/iFt0ygXv6xzm8DPnOABIPgg47vgu4eB4VQA/MjiiyZ0JLSwy/inE0GYBV1eUuhCWeFegWLmZs+ElcrOi86qSHah713jWDzAVzXgMfHMIhZrfNHVv9y9huJ3RUuzg0hZEqw84Otpa/WjtfeP0Y962aGf24/4hoZ/lqmE+Cbc9Td7TTkH3aOHpgbAtKGw4aO9z6C4o32R4xtLzVJZp5V+azQbyNAsaHSdu+P5xrAQYGDVzSqhn3zp/Nj1R5oU03t7I3/mUmqcAQo0N3FWKyamAxiRoMXvzqN6S/lF/L/ZuieJBw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=P0p/Dk2DcL9FWyyySG3xslDv5FAY0u93sukfF6dDUBY=;
 b=Iu/D+mNQ+eG8jtRniAbPKsyb+zPkYs6jqfuKAUHFKn7t2h1MA84G9w3l77LvBz1LTqulva6UX4SMXyF2y/3jrfJUNf5zjq3eZLXkQngueAhcJkpgx2a1caYDljqiRE83y0ki3WVfQpXeHfv2mQPn7kWj56ZO2Iqv9Ay9dgJRZZmRjkCjN/bpJNmwH03mY4VT7YLvLHuJvBzbF0sRc5iYHSxTsOoFEWvD6IyddB56ZfwvbgTHvvYtmOW7oBqGBn+VOqiATxy/Seua3ed60NhPKbNvFItuO1j4KiruGnTcIqGuDevipJvRfZrbdLzZt6agCkWtJrWTK+mx2xuaUqssEg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=P0p/Dk2DcL9FWyyySG3xslDv5FAY0u93sukfF6dDUBY=;
 b=YMrv3yj49GC/1t5ahM9scHWzLNEjRxbOQd25K/LMj6sMRL8kzV2/ba7u1yTN0bGMx7AsOD/KJcqCVW/5qnYbmC9776JxGNyj5alQ4HpoqKSR6Wvj8lxpdV/73rqXQ8BrlB6SOg9MNP2k8uGGbWBnUcLyWMwC8VnNg8kb1IiJ5PwXApTxt8NduQLWQ7kVK9lZOz0yAJgyope0kmnN1J4RNAWMagsbX8D90LGbywop3Y98Hn/uxPfL79JIaSkYYTKVVX4OF8PrSWJcZkf5M8gGvOOx0ES0ZF22WbgCdBzwCZ3VznZQPLYzSXgHj2CAaQSguUkTdQ2tkWsMh3z84Lk3fw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <8b791d74-636e-6f79-2918-4bceda1905e0@suse.com>
Date: Thu, 14 Sep 2023 15:16:40 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Sol=c3=a8ne_Rapenne?= <solene@openbsd.org>,
 xen-devel@lists.xenproject.org
References: <20230913145220.11334-1-roger.pau@citrix.com>
 <e2fe16de-cb08-4a0b-adfe-95da6c86ea16@suse.com>
 <ZQL-p3LJX7WfwCtC@MacBook-MacBook-Pro-de-Roger.local>
 <e8859459-53dd-aa02-b776-ba4052c7ffff@suse.com>
 <ZQMDOwGGNJVnjFEm@MacBook-MacBook-Pro-de-Roger.local>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZQMDOwGGNJVnjFEm@MacBook-MacBook-Pro-de-Roger.local>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0156.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:98::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB9738:EE_
X-MS-Office365-Filtering-Correlation-Id: 5c15b67d-9301-40d5-98f0-08dbb524d7fe
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VHpUMqjcZKw121u74ZBX1ZAgUd9S9ZohiwzmX8/nveoYxBVojLLSdeHQ5Q59ygBuDGYtM2pQfUq8GtFjmxdsLHEgeWOcPrrESgPEESTG+gPbNm+W1Sg9xKROXkIhG/vANvQHCe+qZ2Nx8nPuvYhQXPRFoQV9MG6u8+9jPyCb1WH1Ysqx58ojpK+n7rVBrrJmwE26oHwGDMvKsH5H28MQitsWMvmy7s3hwfSIwxaG9M7jd2rvqJYfIZokXN7FEOh0RzHtKM6eDoMU8yGCg8azNzMROd00BnqrDtGxwUy8HzAmWdByP3vfmFoS5LdTB6/t23DFMDQXNJrvPMJqlt/k9mr4ktR2GrLxgHyGUl/O42wnFK3SpcacMlggDFrNJnm1w/UsZcngQnuW7KhWOges+zsujH21s47FKqGctMldcikOPwSOqOKsR+Q7Oale9De/sbvd9TKVt5LbPaNCLYq+rNyHkjdYTr1QLiYwZCNICi2orKnXXv1b931sMC3GHi1IvszQrxOnVc2yWe1TJ22B8ymM6Fqc6BlbZiBjiV/qmVisUTK1RV1WT/8gX1G+G0hjP0ptQuX3cx2/lcU2VAEpVvrs4p7CaUUReV8RfPJIDyQRccg7skD9v2vEhzRogQcRVbNpql2HKfIhmtL9nqnlJw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(346002)(376002)(136003)(39860400002)(451199024)(1800799009)(186009)(2906002)(31696002)(38100700002)(36756003)(86362001)(4326008)(41300700001)(316002)(6512007)(8676002)(8936002)(6486002)(6666004)(66946007)(66476007)(54906003)(6506007)(53546011)(2616005)(6916009)(66556008)(31686004)(478600001)(83380400001)(5660300002)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bWozc1NIbnJOWGNvM2xReHpLTFRLLzhMSUdITzFyaDVSWkx1YWJ0b0FaVDlF?=
 =?utf-8?B?dWlQZzdWazdDWjZ0TUlUZTJzUmFxTDBTcU9FeTV2QTlLK0Jhd3VIMVlvR2tK?=
 =?utf-8?B?NWhySHM4YVlpek5KU0dqUWNFLzdjeU5zQ3pDNUl1ZDg4T3FCVE5RaEdqOWMx?=
 =?utf-8?B?dWQ0RmdYRFZVRHlDVEJXYmtWNDUxUkorRkhBdzNhTWNNTFdZcUV6NDNDWnBq?=
 =?utf-8?B?bXJtTzZTd3Nwek55ZEtpaDRrR0hFMU13emtPb1lwcTI4NUV2clJ6RVE5WjBj?=
 =?utf-8?B?U09COWhTYjdVZUNub0dWWW1UenVCd2FrQ1RHbEp6VitINHAvSEF6d01JZzdN?=
 =?utf-8?B?SVpkVzQ3MXRNRE5WaWhkOEdpcGFXZkR4bjAwS1BoS0ZIZ1FCdlA2Slhad3VG?=
 =?utf-8?B?U1N3eTRtN1FXWEhkYXpTRzhST0svWFlGc0NyNjBNcklxY00zemhtdkk3TWM0?=
 =?utf-8?B?aFhKOHFNMFVRL0JRYk9GY3ZnUmhPLzczR3JmczFBWVBBUUttZytkRDE5QStz?=
 =?utf-8?B?aWlKdEZyc29MKzZKKzQzZHRUaWxDZS80b1piTzYrOE1PQVNJRjNzL2hMSEQy?=
 =?utf-8?B?YXV3UFVPOWRsanVMc1lHZnArb3UrSElOdERVMkJkUmo0V0MvZjVLOW9GM3NC?=
 =?utf-8?B?bzB3ZG04TEtEaEE1Y2FwdS9GODViWWx4M0NIb1pqV2U3SUJLQlMwQXdYVTU5?=
 =?utf-8?B?anl6bFQra25ncUkrL0NEMHF2cDFjMFpYVGR1Y0xpbitxeHJyNDZjazNMSEo1?=
 =?utf-8?B?YlgxTERiNDB1SzQ2VXpaY3Q5Y0t0TE9VZGtjdWEyZFh3SEtSMmtwYTZ5alV3?=
 =?utf-8?B?cUhVK2lHZlhDWEw3UFB4eGJQNlpnZVlzdkJPR203SmhOT2tKeGVUSzlBaHhD?=
 =?utf-8?B?QTRPTnNRVjdKYkptdk84ME9Cc2NIRndKNFRBNDhWdGtwMkg3RmtMbis5ckYy?=
 =?utf-8?B?TUlNcVFjRkhuT0NvVUZ6RFBRWlhpZjJFcHRCWHJRYk1HaVNValM0MmkwMCsr?=
 =?utf-8?B?ZER0czlONHRQTmdXUGUwR1lzVVBGVDF6bU1rQU1vc2FlUkxONGNMRmtXUDBS?=
 =?utf-8?B?NDg1QTJWbUJTaWlEbVExQm5IdG55MjlsOWpMZ0E1WmpONXpWV3NsV1BvdnZm?=
 =?utf-8?B?VmlWTG1xeVBZTEpsbnR2Sjlna1B0QS90b1FuU2N6OHVLSmpWT1AwbnVDcFFV?=
 =?utf-8?B?WWVWZXBOdmZaTm0veVliejFENHFGOWRTUk1KMUNZMlEydkpCdU5JNUlNMSs4?=
 =?utf-8?B?N1ZMREpHKzZmTzNYOUhGYnNQUzNLSjc5blFGZ0JWc0F2RFB4WSs2NmMyU3Rv?=
 =?utf-8?B?eCtIY0dHdHBxVVBpZzdJbWxTLzNYaE0zMmR0RXowS0VqOEk0UDdjY0FQK29o?=
 =?utf-8?B?YjlzNENpM3FBQnpGSjRlN1VhcEQ5RzZDWlJGWkpIUjQ3ek1BSVZkb2dNblFr?=
 =?utf-8?B?c2lWeHVvMG5vM3AwR1BvQkxhR3pmbkhtVXZPelhOU2RFcWxXY2VIMG1nV1d0?=
 =?utf-8?B?ejk1emYxTlB2dHhoSEFSaHA5RG1Id1lDT0QybWZvdm54U2lzSmV1S21XLzdj?=
 =?utf-8?B?U1BpTnhYNnl4L2w3YllDWTR6NGlTY29vOUZNcWM4Sm1tQ1BKYmNyYmZSYzU4?=
 =?utf-8?B?NHVHZmtyZmtRbGlhQy9KWTJkOHgrUGN2NEg5eHFZZ2d6UmlacWtxVEJGM0Fn?=
 =?utf-8?B?WGpLU2gyK3oxZGdnUnh1S29YdUs1eVFTTkJsN1lkYW5WeVlPcE5tT01XY0tR?=
 =?utf-8?B?cyt6cVI4VHhYYWhqRnJqUWtxZlJXQkVzQTE0a2V5OVd2QXp6YVl2WnBNcjI0?=
 =?utf-8?B?a3gvOWt4N1lqcUozczJuQXJ1K3hmNmxmSkQ2bG9rWUQveU9KODl6eFRpUmF2?=
 =?utf-8?B?RFY3Vlp0TW1kdHJ3bUpIanVyVnVBQzRYR3dkeFoxUFVIcDF5d2NlR1VZOWxR?=
 =?utf-8?B?UHFKVzJSb2lqLytOb3hWSVJDL0xUYVFieEZGQjcveUgwdnNRVzNORGxtZXBO?=
 =?utf-8?B?ejBSR3JXazZYekloeXppU2NwUENNZ2h3dWZ4c2x2MFIvTjNCS1didWZFUGov?=
 =?utf-8?B?MWNISHVIRk9xK3pTYS9laUwvRXBFL1dPOGkxK0tNU2o0TFUyZ3FLZUx2clJY?=
 =?utf-8?Q?HJe2NqaQagO/ieBVzYJihw6VO?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5c15b67d-9301-40d5-98f0-08dbb524d7fe
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 13:16:45.1353
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JDA4HZSXLKh6Kq4OqMxtZR410hj8/mUqa3SU+SeVUDXiAKxsoHoguREdwEKlqSRSSXAACZP8MCh95b623FwwLg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB9738

On 14.09.2023 14:57, Roger Pau Monné wrote:
> On Thu, Sep 14, 2023 at 02:49:45PM +0200, Jan Beulich wrote:
>> On 14.09.2023 14:37, Roger Pau Monné wrote:
>>> On Thu, Sep 14, 2023 at 07:52:33AM +0200, Jan Beulich wrote:
>>>> On 13.09.2023 16:52, Roger Pau Monne wrote:
>>>>> OpenBSD 7.3 will unconditionally access HWCR if the TSC is reported as
>>>>> Invariant, and it will then attempt to also unconditionally access PSTATE0 if
>>>>> HWCR.TscFreqSel is set (currently the case on Xen).
>>>>>
>>>>> The relation between HWCR.TscFreqSel and PSTATE0 is not clearly written down in
>>>>> the PPR, but it's natural for OSes to attempt to fetch the P0 frequency if the
>>>>> TSC increments at the P0 frequency.
>>>>>
>>>>> Exposing PSTATEn (PSTATE0 at least) with all zeroes is not a suitable solution
>>>>> because the PstateEn bit is read-write, and OSes could legitimately attempt to
>>>>> set PstateEn=1 which Xen couldn't handle.
>>>>>
>>>>> In order to fix expose an empty HWCR, which is an architectural MSR and so must
>>>>> be accessible.
>>>>>
>>>>> Note it was not safe to expose the TscFreqSel bit because it is not
>>>>> architectural, and could change meaning between models.
>>>>
>>>> This imo wants (or even needs) extending to address the aspect of then
>>>> exposing, on newer families, a r/o bit with the wrong value.
>>>
>>> We could always be exposing bits with the wrong values on newer
>>> (unreleased?) families, I'm not sure why it needs explicit mentioning
>>> here.
>>
>> Hmm, yes, that's one way to look at things. Yet exposing plain zero is
>> pretty clearly not within spec here,
> 
> As I understand it, the fact that HWCR.TscFreqSel is read-only doesn't
> exclude the possibility of it changing using other means (iow: we
> should consider that a write to a different register could have the
> side effect of toggling the bit).
> 
> The PPR I'm reading doesn't mention that the bit must be 1, just that
> it's 1 on reset and read-only.

Sure; the PPR being incomplete doesn't help here. My interpretation, based
on the bit having been r/w in earlier families, is that AMD wanted to retain
its meaning without allowing it to be configurable anymore. Possibly a sign
of it remaining so going forward.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 13:40:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 13:40:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602288.938762 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgmZo-0000QU-OI; Thu, 14 Sep 2023 13:40:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602288.938762; Thu, 14 Sep 2023 13:40:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgmZo-0000QN-LK; Thu, 14 Sep 2023 13:40:12 +0000
Received: by outflank-mailman (input) for mailman id 602288;
 Thu, 14 Sep 2023 13:40:11 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=J3lF=E6=citrix.com=prvs=61487cf85=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qgmZn-0000P4-By
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 13:40:11 +0000
Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com
 [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 367dc04f-5304-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 15:40:07 +0200 (CEST)
Received: from mail-bn8nam12lp2173.outbound.protection.outlook.com (HELO
 NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.173])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 14 Sep 2023 09:39:57 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DM6PR03MB5322.namprd03.prod.outlook.com (2603:10b6:5:247::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Thu, 14 Sep
 2023 13:39:55 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 13:39:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 367dc04f-5304-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694698807;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Jc5Vc1kWjSsJnO2N2aM7UUELEvWD6lvqsQ1PX/CbBPc=;
  b=Y2H+/gvR28OT3gXFcIwbRJANj8jHwKodCnE6iNgHgUgP/P0xWZIkKGLb
   XkVroxGzs/Pe9DOS3QIKOL/TzZWZdjtWybHokVM/laDkhoIP5sFSCJ8Ch
   m58VCUDkrW6QEv/OiXOpCoel1nELxk6DtMS5KM1Eehc2Nn9iLivEH4Zbg
   A=;
X-CSE-ConnectionGUID: cQ7BxeSgTO6LrkvA/1Rf1w==
X-CSE-MsgGUID: n7H0zcVfToi5gPgqGHy/NQ==
X-IronPort-RemoteIP: 104.47.55.173
X-IronPort-MID: 121898609
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:8cJ4cqok1A+qvcTTlrZONDdpDtZeBmIlZBIvgKrLsJaIsI4StFCzt
 garIBmAO/rYNmH1KdEga9u+oUIEvMLUyYBkGwI6/C0zQn4V85uZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GlwUmAWP6gR5wePziVNV/rzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXADs0MTqTitm5/JXlbvNvmO1kdfPlZZxK7xmMzRmBZRonabbqZvyQoPV+jHI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeWraYWOEjCJbZw9ckKwv
 GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdhLROzoqKY76LGV7mpMKEUEXmW1nf6410GGVMtwC
 11T3BN7+MDe82TuFLERRSaQonSJoxodUNp4CPAh5UeGza+8yxmdLngJSHhGctNOnNQxQTEs2
 3eOh97vDydj9rqPRhq15rqS6D+/JyURBWsDfjMfCxsI5cH5p4M+hQ6JScxseJNZlfXwEDD0h
 jqM/C43guxJidZRjvrgu1fanziru57FCBYv4RnaVX6k6QU/Y5O5Y4uv6h7Q6vMowJulc2Rtd
 UMsw6C2hN3ix7nXzERhnM1l8GmV2su4
IronPort-HdrOrdr: A9a23:owzrRKGM5fWaEHqDpLqE18eALOsnbusQ8zAXPo5KOGVom62j5r
 iTdZEgvyMc5wxhPU3I9erwWpVoBEmslqKdgrNxAV7BZniDhILAFugLhrcKgQeBJ8SUzJ876U
 4PSdkZNDQyNzRHZATBjTVQ3+xO/DBPys6Vuds=
X-Talos-CUID: =?us-ascii?q?9a23=3A+S++i2pnYdyQyhBSrV7m6nDmUcscLVfNwUzfH2j?=
 =?us-ascii?q?mLXxqVpTSEGWeobwxxg=3D=3D?=
X-Talos-MUID: 9a23:F/G+EwQT6lypn1fdRXTq2xE6JsxW7ZipCR0CqZoflOmVcgpJbmI=
X-IronPort-AV: E=Sophos;i="6.02,146,1688443200"; 
   d="scan'208";a="121898609"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IcwKgIoP7VuVu8lCLIHKDuoJ74zBSudXM58UUIpSZAqZTR4QesWFuK2flX3PsJovfKo+9I/Qp8ca+qDXKIdA38te+IgXaJc/tU1go4Ccd2YZX94G9bpHi+CHvrnzZLDnzfE/EKxY7z2gQtat0TDDBnmYFtto6keMWXrrk8jT4CkKq7EnR1+tiN+nUhitmoQT2Wyjwy8UXxxaQXDUjN0LnbP08H6wqcV/lNZX3096vWlaCpqHCk1f3s+VrwfEJncMRmlRauTMCitJBIjSTzryY6gkguLzhwuhSZC4d1uUdoYROEwrG0I/YgLbhuGLnT9csunf94a3mvWP1ib0yg/d0w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gTdcss+sCU2l/qJ8aznC7WhZQ7oNyMt7z3sJdla2ll0=;
 b=AML36a2nvsbhmcOQ/lwVQ5hREfG8/Y6Ruy8MSiksd6vTDa6MoaG97dVgapimfl+vZGmh42OdBeri2M36CATPretktAaIe2VsDsSXiU8vJoGzmJrMpZ3JA0cYiAZCAnitVuqKkR1AFLPKxnyaoRDp7RR94tpnOQnxSu2ujKc2acXPX5y7o9OkAaTqv76ixxjfb2ZFKiLU42Rqum41Nkkkjej0jl5Bg8SWj2YNM9WoaPIbakkwadCX/iTf+RQ4xGyJqiJrdVGbCkBjN7R4ndlWrN75/563AWVBPpGt7Me79fQicu9xhLd86S/a3ZwBbIJN6jEPCmoNlTaSWUCufaCZuA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gTdcss+sCU2l/qJ8aznC7WhZQ7oNyMt7z3sJdla2ll0=;
 b=NmC7X/7ULV6R4s4e2+poam4jOE21/KWw9tj7oj/oMX0v7D49fjKugd4vEgfucYYgfyyuuWFLhC4EJj6ITZeWNB4gBExW8VVxZwRoNlIHcj9H6eVjrea2kwck+D6kanbBeJ+SOHj6nLOA2uo8viUXss1iZng+Xxxvmd7L/J0VTac=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 14 Sep 2023 15:39:49 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	=?utf-8?Q?Sol=C3=A8ne?= Rapenne <solene@openbsd.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2] x86/amd: do not expose HWCR.TscFreqSel to guests
Message-ID: <ZQMNJfmoOmIIp7GD@MacBook-MacBook-Pro-de-Roger.local>
References: <20230913145220.11334-1-roger.pau@citrix.com>
 <e2fe16de-cb08-4a0b-adfe-95da6c86ea16@suse.com>
 <ZQL-p3LJX7WfwCtC@MacBook-MacBook-Pro-de-Roger.local>
 <e8859459-53dd-aa02-b776-ba4052c7ffff@suse.com>
 <ZQMDOwGGNJVnjFEm@MacBook-MacBook-Pro-de-Roger.local>
 <8b791d74-636e-6f79-2918-4bceda1905e0@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <8b791d74-636e-6f79-2918-4bceda1905e0@suse.com>
X-ClientProxiedBy: LO2P265CA0467.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a2::23) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DM6PR03MB5322:EE_
X-MS-Office365-Filtering-Correlation-Id: 298809b6-45a3-450c-b270-08dbb5281472
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xGaGMibR1Qie+fkVQ3ndjAzvqWBvQ7ZSdfvuBTxyDRc4PHEtjnWTHiITNra5y9hmAtXXPTHf1wof98Igq8ImeJr2uVI0z2gvyc51dEiTFsc5XuCWVULvkVJ3QyxX2MGWZ8m1kF5NcdCrZwpba53Y0+eLqsdhf4We0/P/udidxDl4gXtvIEKc1r9GNaWWZI9hhHo208zSGewAAIbSbh4U1uc2+woBfG+PfOqZjAtuDrTpw3DlWLD9nQCuwVIoKCzy0v0a8uSe+nyAGjV+3yxQCcQPVmt+nBy3UxMPosKaZ3lotxSbaf8swas9Bv05HsfnH5lhRuz9+QXymQOhu7gpuUdyN3uEytaTEJmkBj1xkfh2nRKolN4860r4BL7qAftIJFneZMjpvo/ixNe96rJfRJcFBU5VKX5RSnp0HYQ/PVAQZmR3jjK5civ8ivX+maekr6AvnpYsJb27nhHoEPt1fHiayfeY5WIjPy1G7jLVhUq1YvbrYCVyCAsISyerw0iZPDnucljXWRqqZbzXJgrNsqak4HjnZBnqbLbPj2QU0evRPY2DhASkghFrU1+LdnKr
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(376002)(39860400002)(346002)(136003)(1800799009)(451199024)(186009)(53546011)(26005)(6512007)(6506007)(9686003)(478600001)(6486002)(6666004)(83380400001)(5660300002)(2906002)(8936002)(4326008)(66556008)(6916009)(66946007)(54906003)(66476007)(41300700001)(316002)(8676002)(86362001)(38100700002)(82960400001)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SGJXTTlya0dYbHdHZEpLOGs4azRqUXlwMXF4Q1JpckkxSVpJVmlqV2JEL3oy?=
 =?utf-8?B?aU9yNGVLT3dhOTY2M3ZSUitRYlNtMTVUOXJkUm40WjJ3S2VYaTF6UmhNU1k2?=
 =?utf-8?B?YXZOTTNOSFhzbHVUMFVnZnVwalRzREE5elFhQ0tERm1qVWV0R1lwWU15S3Uy?=
 =?utf-8?B?eHBDbWRjMUxyUG9tTnJkaUZmNVpqUmFNMmNNTXhvMEpkNjRoNDhXMGh5bmU3?=
 =?utf-8?B?WjRGSlExSGFRQzNJaWprOEpqWTJUQm51b1hpOW1zZFJTRU05WmE0QjFLR3NP?=
 =?utf-8?B?dUR6NU9oc0JERTAvbGJhMDNjcUNDTk5CUkxPQmVWb3g0OGV6MTJ4R0pzb1F4?=
 =?utf-8?B?bzhoN0FXV2o4OW15MThjZ1U0a05MY3g5di9GWWR4L0VacDVjL2ZqaUZPWFBS?=
 =?utf-8?B?cG91NTJ5MEs2ZGZXRGgybFUyM0ZqcDJibTdueDlQVkNjTVMrTi82UTNhRVl2?=
 =?utf-8?B?ancwOUs4MkVrdFYzVVV3ZytmQ3NiRThCdW1pc1VXL0dSTDE0ZU5acTFFbVJJ?=
 =?utf-8?B?OGpYa0p4WEhrTlBBV1dxT29ZZ2pJd1pIRXFjYzhSRXNJUnJqYWczZHFFRHJT?=
 =?utf-8?B?L1N4cmJUZy9GNzRBTVZkSjdqdjNrWG1uV1F4dnhGalVXZVJWNkFuYUFvMkZ2?=
 =?utf-8?B?WE1NWndpUzdKUzlFajdMNHV4YzBIeWRLQzA3M0lPTlJJOWc1d2FtNE1MQVp5?=
 =?utf-8?B?a3RISXZFaElabUdiNTl2aDVDTE5VS3ZSZytmWGJZTDhNSG43WDhnQ01nMUp2?=
 =?utf-8?B?VkdIOEhDOE1HTWhaVmhXWWJkY3ZwbDF2MjRLemlpaVBwWml0YTYzRjRJSGpx?=
 =?utf-8?B?QUx2enREQjF6ZUxHOG5tOWM1RGRWRnhBaTNqSjh4M3hlSEl6L2xZTUswRmJi?=
 =?utf-8?B?OVNnL3pxaTB5TWdYbVR4M2VpenJDbXhVRHFtOHFZU0FDY3pXUWhsdVJnZkR5?=
 =?utf-8?B?T1pRbVpNc1hNUkNhaVpZZ3N3MVczSnhOVmxnQkgwTVpyRitqUEhWWkdHNE5r?=
 =?utf-8?B?elNhb3VGb1NvcGNUOTVOUGllZHRSWk9JNWVQTXIzbkQ0TVc5WW56RGZNZ3hx?=
 =?utf-8?B?K2l3eElDSHVNalZVRG9RdWlHMFcwSWZQTXk4RjVpRHQ4aDdhdlp5UUhFVDRV?=
 =?utf-8?B?cklzdFZqVzRoUlQwb2V4VlpjWlRtUitpdEpaL2taTnRLb0tRb2FwNzZURTNX?=
 =?utf-8?B?ODZQa2wzODZpT1NJMHBWSVJZaHJLcG5MTWdVdUFwcUgxOThVaFlhSm85WkQ3?=
 =?utf-8?B?YUZqenU3dGJRWjJXZFdxN2RLU1dTTlRHRU1WYXJ2UVlqZzBTOUlIL3Fia254?=
 =?utf-8?B?THJ3TGYvSnJlRnBKRVdNRnR0aXBEU2hwaDhKYVlMNUcycVpWK0VwVU13T25r?=
 =?utf-8?B?N3UzNTZEY2paa2xEWXRpVGlCWldFVWJZLzM2R0p6NnRLejV6QzJOVVcyVDl5?=
 =?utf-8?B?NWVSaFFXK3hEYnFrMitpUFB2TXU3Q0xHVDRmZ01Fc0ZhWldtMnEwQjZWeXEy?=
 =?utf-8?B?L0xGYmhMVlVzTXBmemJGa0Q3QVE5UmtUMWlmek5xdUxKSlBLYUZhRlNXL0gv?=
 =?utf-8?B?UDlkTmxJbk1aK3MxZ1NXUVZoUEZYTGtVdXR2Y1ZSTzhBTndnRERvc2s2NVlV?=
 =?utf-8?B?Tkl3UldZL2d6ZXhFdkk4aVA0VmRacWZVZzMxOFZBU1VlblhtaHdkWmY5R3dD?=
 =?utf-8?B?bGMzQ3Vld2lJQUNyZFg5NzRqTXBUQ3VPMk56c1lzeER3RURxT3p5NjMwM1FU?=
 =?utf-8?B?cTJNOHVSL2FSK0g0SjlTRFJOZmd4aGhLUWtiMHhFekptbHBEaDNZUFFBRWtW?=
 =?utf-8?B?dE40YWRQR29SQUNvNzNWTW1RQzRLZU0zQ3pwVzZUNXcvL0p2Qm0vaUtFSlJY?=
 =?utf-8?B?L3RVb0x0NjlDaDBBalVTdzRQM2Z3a0k1Y0RHeEpjMlMyeXN4dGZWdmd2bEN3?=
 =?utf-8?B?NUp4WWVtbm1hSjZqKzlZMVB1S2RXdFBzbFZJanBEZGdTUFhwOUxQVitpT09I?=
 =?utf-8?B?UUVNM25ZcmJnaWNvOVVpZVNYcStMWGJyOGhZR0VacDZVajd5WThFMEkvcGN3?=
 =?utf-8?B?Q0FNSVFaczFoRUtpYk9uSHdUM1RleWRoN2tldDNuN3dVYzhDRGttNEV3ZjNr?=
 =?utf-8?B?VnZWSloyc29QRk9KWGFyZmd3L1JYbTdsN2l5Q2JvWFd0dUtLdCt3NmcwRFJ3?=
 =?utf-8?B?V1E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	9FTdkooK1mNdtjHeM+ijyOOVIK/mj6g6W1T7+SGN5SnjsD+b6FYTRnb8P6kPoPDsYhD3fw9Jewzd1IvgmEK78rK1ulk+CwRt98MWTe53jodTw001LEuNOuv/XgMWVD/wTG72sgmSZvB7rZfTJ+5JLg3qr/mi074h/Ts7AXwAwj1LS3Bj532QZxG4q7Dvw1NZrkEMwkgrSz8hK4Ty1SxTI+aXXRXyITZssaz2igRfdbTQOGFNAZQU5W5mwlWJTKqq1rrLAgPXmCacDzfhaaxNGRRpDhfLWN2Wz/bbaJbwLV4/x/XhpRFamX/nEOqPVGGwt/z0/5uVePjf/L/9w0uXT1jlYhCNLP2GroI+9IdhvfwkiszYWyYi5gRIJIeYAZZxd/zSrVlODZeeZrlN9XqtRj4On5Wpjzn9JiAPTOGgcXrVf/uDWzhSLujD7VQXQAw2oZoa5rmDTokndFx1odPzG1jGh6tm9lnpXLXBlgg0rCTzp2wIUiNo4l+sAuwJuJM+wxk57LHJs7f9UPZlIvf+lWPQpNpyFre+PwzOjEG+UZ5BkYwPjDDXQiWh2i5bqdTBDoL6rOsDAAFt33NQpHyJvSVrkJ9fIlWYxC3oXwwLFPgEmaJkE/x34EDY9PD3eXTyNeYJSgXv4u7fWTA1sLZ+Z83sY2yGGIZzERTh0+k6ev5+ouOa+AkdOKLRABwZK1K22eozoJzEcN1AaoQvr0iZ2gKBbYnhzHwJQ6BW8RqBKQPlj5a0nlZ1GkZ5LjO/mFoeVrUrMhkwpumLtaDUulBoAqT5AU8sQ5AaZnJldLzN3o9N65058pjdMp5cn1ZfydJELQj2bUg39948CtgDf4SIK8snsAwKM/24xbb9KR7R2dw=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 298809b6-45a3-450c-b270-08dbb5281472
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 13:39:55.1425
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tPw63MgYGputkin1h5ic2wC3ofRWWNRGG1S7/5zOMVEOBJiclAL+0JfXZCw+2QY6xV1ENFq60Tq32amwQTsWeA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5322

On Thu, Sep 14, 2023 at 03:16:40PM +0200, Jan Beulich wrote:
> On 14.09.2023 14:57, Roger Pau Monné wrote:
> > On Thu, Sep 14, 2023 at 02:49:45PM +0200, Jan Beulich wrote:
> >> On 14.09.2023 14:37, Roger Pau Monné wrote:
> >>> On Thu, Sep 14, 2023 at 07:52:33AM +0200, Jan Beulich wrote:
> >>>> On 13.09.2023 16:52, Roger Pau Monne wrote:
> >>>>> OpenBSD 7.3 will unconditionally access HWCR if the TSC is reported as
> >>>>> Invariant, and it will then attempt to also unconditionally access PSTATE0 if
> >>>>> HWCR.TscFreqSel is set (currently the case on Xen).
> >>>>>
> >>>>> The relation between HWCR.TscFreqSel and PSTATE0 is not clearly written down in
> >>>>> the PPR, but it's natural for OSes to attempt to fetch the P0 frequency if the
> >>>>> TSC increments at the P0 frequency.
> >>>>>
> >>>>> Exposing PSTATEn (PSTATE0 at least) with all zeroes is not a suitable solution
> >>>>> because the PstateEn bit is read-write, and OSes could legitimately attempt to
> >>>>> set PstateEn=1 which Xen couldn't handle.
> >>>>>
> >>>>> In order to fix expose an empty HWCR, which is an architectural MSR and so must
> >>>>> be accessible.
> >>>>>
> >>>>> Note it was not safe to expose the TscFreqSel bit because it is not
> >>>>> architectural, and could change meaning between models.
> >>>>
> >>>> This imo wants (or even needs) extending to address the aspect of then
> >>>> exposing, on newer families, a r/o bit with the wrong value.
> >>>
> >>> We could always be exposing bits with the wrong values on newer
> >>> (unreleased?) families, I'm not sure why it needs explicit mentioning
> >>> here.
> >>
> >> Hmm, yes, that's one way to look at things. Yet exposing plain zero is
> >> pretty clearly not within spec here,
> > 
> > As I understand it, the fact that HWCR.TscFreqSel is read-only doesn't
> > exclude the possibility of it changing using other means (iow: we
> > should consider that a write to a different register could have the
> > side effect of toggling the bit).
> > 
> > The PPR I'm reading doesn't mention that the bit must be 1, just that
> > it's 1 on reset and read-only.
> 
> Sure; the PPR being incomplete doesn't help here. My interpretation, based
> on the bit having been r/w in earlier families, is that AMD wanted to retain
> its meaning without allowing it to be configurable anymore. Possibly a sign
> of it remaining so going forward.

What about:

"Note it was not safe to expose the TscFreqSel bit because it is not
architectural, and could change meaning between models.  Since HWCR
contains both architectural and non-architectural bits, going forward
care must be taken to assert the exposed value is correct on newer
CPU families."

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:05:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:05:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602295.938772 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgmyZ-0007g0-PF; Thu, 14 Sep 2023 14:05:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602295.938772; Thu, 14 Sep 2023 14:05:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgmyZ-0007ft-Ky; Thu, 14 Sep 2023 14:05:47 +0000
Received: by outflank-mailman (input) for mailman id 602295;
 Thu, 14 Sep 2023 14:05:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgmyX-0007fX-NS
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:05:45 +0000
Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com
 [2a00:1450:4864:20::32d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cb206da0-5307-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:05:43 +0200 (CEST)
Received: by mail-wm1-x32d.google.com with SMTP id
 5b1f17b1804b1-404732a0700so5843295e9.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:05:43 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 z16-20020adfe550000000b0031980294e9fsm1839303wrm.116.2023.09.14.07.05.41
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 07:05:42 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cb206da0-5307-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694700343; x=1695305143; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=4vYOPKXU60d+VwTOR7zcpHoS7EW3RwNwXYL0thebH04=;
        b=oVVw2puaY5GnvwQhao47kvVsHDHJ/70OWSP+/aKMQ82knHGL0tKeza9pXVA+8httkj
         bJQSWfBNiEJKCCheRBo6eAtdqqkxsgGmceMJb/FVwxczeORxb3Iqju+XQUXFf1lpgZk2
         D0U/6Xj57tn39UtjAJrS/zs5oAj/Ntesl2bdY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694700343; x=1695305143;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=4vYOPKXU60d+VwTOR7zcpHoS7EW3RwNwXYL0thebH04=;
        b=d8uluYmUsp+bU49Zx7XnvmrPHVBRsaZmX3VZz2/aVoKO/TF1lXAiNmhmiF7JTOVOjK
         R192uj6QKxD0M+zctgfBh+WXEef1r1ctthT0T49f1DJsE3wDEzPPVtTWFoHrFAP2fquS
         iQdtYzNL1rJiu7bBabCibwMyuyByvA71IVhe9rnF2npqv39oS09ACsnE/WXbKKp3HeP5
         tO1Y4l6bywanSxe8aflvoTBWm8XQnaATiEWXwX8WSrfewfCDU6KB2sB/Y+2SPBKkU6Y5
         xjVOwguXg7r5QpB48teTu3BN6nr9ZKy8ifQpyz7pXTxieL2tCoP3jZLUGKNLEd5899dA
         Gg5w==
X-Gm-Message-State: AOJu0Ywgbm972oSbZqKofPQp+7gvnsVUit875KzRXEazVKbkib/hYYJO
	pK0m5rEZNkMqhYaz+2acVH7vZw==
X-Google-Smtp-Source: AGHT+IEyocHSn+uMmNECVz8ii8zQMuIDZmm28KTVIUinAogCrqYkG9ProhxotsEPQjJrSGm8ruhh3w==
X-Received: by 2002:a7b:c44b:0:b0:3f7:f2d0:b904 with SMTP id l11-20020a7bc44b000000b003f7f2d0b904mr4542256wmi.8.1694700342824;
        Thu, 14 Sep 2023 07:05:42 -0700 (PDT)
Message-ID: <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com>
Date: Thu, 14 Sep 2023 15:05:41 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: andrew.cooper3@citrix.com
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-GB
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
In-Reply-To: <20230914044805.301390-4-xin3.li@intel.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 5:47 am, Xin Li wrote:
> Add an always inline API __wrmsrns() to embed the WRMSRNS instruction
> into the code.
>
> Tested-by: Shan Kang <shan.kang@intel.com>
> Signed-off-by: Xin Li <xin3.li@intel.com>
> ---
>  arch/x86/include/asm/msr.h | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
>
> diff --git a/arch/x86/include/asm/msr.h b/arch/x86/include/asm/msr.h
> index 65ec1965cd28..c284ff9ebe67 100644
> --- a/arch/x86/include/asm/msr.h
> +++ b/arch/x86/include/asm/msr.h
> @@ -97,6 +97,19 @@ static __always_inline void __wrmsr(unsigned int msr, u32 low, u32 high)
>  		     : : "c" (msr), "a"(low), "d" (high) : "memory");
>  }
>  
> +/*
> + * WRMSRNS behaves exactly like WRMSR with the only difference being
> + * that it is not a serializing instruction by default.
> + */
> +static __always_inline void __wrmsrns(u32 msr, u32 low, u32 high)
> +{
> +	/* Instruction opcode for WRMSRNS; supported in binutils >= 2.40. */
> +	asm volatile("1: .byte 0x0f,0x01,0xc6\n"
> +		     "2:\n"
> +		     _ASM_EXTABLE_TYPE(1b, 2b, EX_TYPE_WRMSR)
> +		     : : "c" (msr), "a"(low), "d" (high));
> +}
> +
>  #define native_rdmsr(msr, val1, val2)			\
>  do {							\
>  	u64 __val = __rdmsr((msr));			\
> @@ -297,6 +310,11 @@ do {							\
>  
>  #endif	/* !CONFIG_PARAVIRT_XXL */
>  
> +static __always_inline void wrmsrns(u32 msr, u64 val)
> +{
> +	__wrmsrns(msr, val, val >> 32);
> +}

This API works in terms of this series where every WRMSRNS is hidden
behind a FRED check, but it's an awkward interface to use anywhere else
in the kernel.

I fully understand that you expect all FRED capable systems to have
WRMSRNS, but it is not a hard requirement and you will end up with
simpler (and therefore better) logic by deleting the dependency.

As a "normal" user of the WRMSR APIs, the programmer only cares about:

1) wrmsr() -> needs to be serialising
2) wrmsr_ns() -> safe to be non-serialising


In Xen, I added something of the form:

/* Non-serialising WRMSR, when available.  Falls back to a serialising
WRMSR. */
static inline void wrmsr_ns(uint32_t msr, uint32_t lo, uint32_t hi)
{
    /*
     * WRMSR is 2 bytes.  WRMSRNS is 3 bytes.  Pad WRMSR with a redundant CS
     * prefix to avoid a trailing NOP.
     */
    alternative_input(".byte 0x2e; wrmsr",
                      ".byte 0x0f,0x01,0xc6", X86_FEATURE_WRMSRNS,
                      "c" (msr), "a" (lo), "d" (hi));
}

and despite what Juergen said, I'm going to recommend that you do wire
this through the paravirt infrastructure, for the benefit of regular
users having a nice API, not because XenPV is expecting to do something
wildly different here.


I'd actually go as far as suggesting that you break patches 1-3 into
different series and e.g. update the regular context switch path to use
the WRMSRNS-falling-back-to-WRMSR helpers, just to get started.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:17:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:17:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602300.938782 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnAB-0002j8-Oy; Thu, 14 Sep 2023 14:17:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602300.938782; Thu, 14 Sep 2023 14:17:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnAB-0002j1-ME; Thu, 14 Sep 2023 14:17:47 +0000
Received: by outflank-mailman (input) for mailman id 602300;
 Thu, 14 Sep 2023 14:17:47 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgnAB-0002iv-8q
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:17:47 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2080.outbound.protection.outlook.com [40.107.13.80])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 78dca31b-5309-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:17:44 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GV1PR04MB9213.eurprd04.prod.outlook.com (2603:10a6:150:28::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Thu, 14 Sep
 2023 14:17:15 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 14:17:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 78dca31b-5309-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=C+g/7PuOPkxQpAs02C0Xuyrq8tPc+r0yXBpLlUX/bMOneOrVy2bzPtP4L5o632ZlJdmCXySV25DuhWJZBDQAAcoDZ9+Ttg9eAIlFg9PYJ6lUIOlERumREqz1CSCEB1N/W5YFR0P83YpDey1WtBqrzBADZkuTuxdSzpt2lACigSX31S94huEpHD2f4vSOzcvoGHnTABst/XFPD4FXLYAmwnd6x9MatKlPJ5fVtmHbbHhfdWYtBaH6Q6qgbbgRwt96L9iKAQGJiOeky555OTLTI3cgg7OG8g5bQfBREzH6Y8ykz1cTszl41wjN/ikbFNzUdAnUG6nIgpw/7RsJOLNWrQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IIIMpnk0jTAW5p16Gmr9FOBn2wk2mHvhSej75VSPLkc=;
 b=NCXjqBzLOreBcX7s+PAMLu5f9o4PFuKS3uThKRLtBVyoWdeuMPRtisaDAeabUhvrVvF7wjjfbsA1eAJQhuafqogf7qP1hjRJBtd9jltHOhSmCza1B57SdKDatjctfsxeP1HQMR6zoLUB41zDV7o+KPwyn3DeVbtM+Kt5SeOGJvAWAgh9Rl0oIvTxjMGbAO+yUVx0nLSZI4BRua5s0coff6HjgQbUCtEAla42Q71nOJBAsqkRgwoH57+jSeuKLf8Q/ZV3ac/OEEuUZ1MIbIa6Df9XGh5M1x9MwgKpSGz4pTs7PN3ravGbxSYkZcayMWSbD24xUgd2deXhreliXGq28w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IIIMpnk0jTAW5p16Gmr9FOBn2wk2mHvhSej75VSPLkc=;
 b=MCD+8U+cFMitM9KQWEws4YFN9dCwKUK9k05nj20ET2r7+nWEZ9QZxhV1m8MvRaKelaD3zpJGeS7lKpRZnpuymGmNRP+WavW3Ube7ZgrmOkYtm9/GyCK0aw9XlkgNVFCH1k1PWopK/pD+/o0n2I5UIwF+TOaSKI/vBFwve5Q0VZdukWxLuY4Eno4QIBZO7lmiET053q8sS5AA92Mavv4jU2cnscSqwl2MU8K+MdYNr7S2FiToSRifDnwSGL+cQg/f41FnU7vE+0BjBVNldXHaS3ks3D6C4oAX9WFaimqfRKRBs8tJsfAtlfmSG6NR2jfn7cDwJxKOpIPRMuvWkYKQWw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <20ad6fa9-756b-45dc-c16c-e9af0ecff7b4@suse.com>
Date: Thu, 14 Sep 2023 16:17:12 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2] x86/amd: do not expose HWCR.TscFreqSel to guests
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Sol=c3=a8ne_Rapenne?= <solene@openbsd.org>,
 xen-devel@lists.xenproject.org
References: <20230913145220.11334-1-roger.pau@citrix.com>
 <e2fe16de-cb08-4a0b-adfe-95da6c86ea16@suse.com>
 <ZQL-p3LJX7WfwCtC@MacBook-MacBook-Pro-de-Roger.local>
 <e8859459-53dd-aa02-b776-ba4052c7ffff@suse.com>
 <ZQMDOwGGNJVnjFEm@MacBook-MacBook-Pro-de-Roger.local>
 <8b791d74-636e-6f79-2918-4bceda1905e0@suse.com>
 <ZQMNJfmoOmIIp7GD@MacBook-MacBook-Pro-de-Roger.local>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZQMNJfmoOmIIp7GD@MacBook-MacBook-Pro-de-Roger.local>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0124.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|GV1PR04MB9213:EE_
X-MS-Office365-Filtering-Correlation-Id: 0c9afc2b-ef8f-42bf-db03-08dbb52d4bf7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TVLaKLHUXdSyzpFixQ6PIA5KbyHD2ckqCyzh7xW06r/98vAadSiAT6mrAfGWXOrEpun8OFDX6s9eh07cD9L4aLAneC+zPR5R+mC6k/hCN1Y/5XV73GFwiZDATt7QCSdeYxciwWV8ApiAlUxoedSgiqoDpbw21aR6YHArbL05m8QheCdW90ggAROUT1f1nIAbD8lqaRvi5Q+8nSPHhWtm1XTNaWY7Vvv7aGA4fGXuJz2pFl4V0L5plTS1jDScZ4je5MWRGblpQEf9YKz5sK3+FMuz140tWlfNTT9t49QKbRDZRLPyW9cervgDgyasu+snvmLDNf1h8bq7SrvjiVwn8/N4rYhjQ8esSUVdEcgoQoHNkd8SgCirQj1D1+wRl2vWUFIYxOgSUNOS0aFITtFYseGELh9r+cCINAAj6ILipvPEp+pF0OKs9boiDA0duat0g6LDmHZwp6Da7fRL15ZU7H5aya/36CEiB7MzPiNwrFIvEaqpC7fZLbyMMOf+WQxiQt2i0HrB4y3BRX5uZXvppQxF4sacgki/tIASWvEIGc9apZptMnxYgRMOMo8UcmiOy3ZOLGZ2sfKmhxhFzBUSyYA7zQsz12vX2jUNkf5eXSqpBBLQdfRQ6ujvvgBtp6zEb5aI4SXXMYX9ChPxsTzJUw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(346002)(136003)(366004)(39860400002)(186009)(1800799009)(451199024)(31686004)(36756003)(86362001)(31696002)(38100700002)(6486002)(53546011)(478600001)(6666004)(5660300002)(54906003)(8936002)(8676002)(4326008)(66556008)(2906002)(6506007)(66476007)(66946007)(316002)(83380400001)(41300700001)(2616005)(6916009)(26005)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UEdBYmZLY1ZzaWV4VzkzNjBHUGlkMUk2M2k0TkZKVWJ5cGg5MmNaWGc3L3Ey?=
 =?utf-8?B?TE10bW5tQnBEUVVQMHB4eDRZclUwVHNLdHhGcklETnhXRGFXY21QSzJWZEJZ?=
 =?utf-8?B?dmlkeVNQTWROeU13TE53UDVoUEp0dDc1VVhzb0ZjOGQ3dVF0R2gyd29TVnVu?=
 =?utf-8?B?MnYveFE3bkFZdUlEMzBsT2NyU3QvNDBDNk0yR2ZoRXdiMjQzUGtjNzFWNUYv?=
 =?utf-8?B?QldpcS9XQU5kYU5mSFdCcDFzZWRHV3FIQ0hPVzFPMzVZcWsxNGhKQXE5Tmk3?=
 =?utf-8?B?L0xqNXg2aDR1RWlFNmRVbXdMNnZMK25SSjhpeUxQT3pFR3JZS0xsL1JWZ2JG?=
 =?utf-8?B?ZUV3RUNSZEVGZ1VrM0VjZnlvMWozeU1aSUc3U1REbmIrNlM2U296THJuZUJ3?=
 =?utf-8?B?UXpFUE5Idmtya24yZGVtMXBlZmVTREwyMUZIaFR4dGs0enFZSitYQnNmWisr?=
 =?utf-8?B?OUwwUklDbk05djJrc2dhOWd4dkIrUEFHbjlHTkRkVEExVWdPcmlTTnlaTm5a?=
 =?utf-8?B?cThTOG5xajNEODhmait2Mjk2RjZTdHVVemJjSHpCdmFpOXVwZGVUMG9CVXlM?=
 =?utf-8?B?cVhvUXhLNUhZUkdjM2UwalBnamxUcjE1US8wR0NQWitDVy8wOHhHNEZtK0Vx?=
 =?utf-8?B?aTZLM3B4SlR1Z0IzVlVmUkVaZFBueDhHRERvTkdTSWk2eHBrZERIT1VON2dF?=
 =?utf-8?B?cGxTQWtpTmhoeVBSVHZjYmRhTVA0c1JMNmpOUExueEpNL0RRSXFvQXI4ZVVE?=
 =?utf-8?B?MDExMVdjRThMalVOeWRIVHd6eGx4cVcyTTM4SkQ0aXpKQWZuMHo0VTN6NUl0?=
 =?utf-8?B?eWQ0MTVFNG94UWpnMnc1Q0FRMldYTFBTNTZXR2RqOElvWEp3cXJBdFRLcnNm?=
 =?utf-8?B?a01mYVYySFdnc3plOGJhZ1N2Y2NwcER1UEdYUWxqUlgrSHlmQ0xIVStiWWE2?=
 =?utf-8?B?TGtuMmZTM0E2K05MRkJkYzFVcnNtRncvOVVtNnpHUzdVRnRwNVZPSWdmNVlu?=
 =?utf-8?B?QUFYVElVZExZWXhsNDRibGRUWE9XTTNPdWVWTnpINmo2REJXaWRndXlVN1gr?=
 =?utf-8?B?SVhFREkyYmZiZWQ4b0N0WTlCVkthK1IxR1hBSXl4QjRjWEtIdXdkZkVYSnVS?=
 =?utf-8?B?eXdZY3IrOWJSNjNEUTFNWU1uVGNVQVM1QmVzMzhZNDVScVl0TzRHVjN0Y1Fy?=
 =?utf-8?B?S1lETEtXdU1sNVFMVEcxNXhVK2FQMW9HVWE0bkZKeVhyWHdmZTFpR0xVcW1R?=
 =?utf-8?B?d1FVd0pKTS9ucW9OQStRcGRwenB0dmdvUFJhKzl5SUpQL3VQb0dMZkRXTW51?=
 =?utf-8?B?REsyNUxLdmdsbCtUbFRDRzNJU2ZTc2NhOFpMRVNmdmxxcTZ5VjF0UkJLTDlW?=
 =?utf-8?B?U2NueHJWN2liTmF1ZnUxUGNPMjh2cUFmRThaUG9NaG5WMWlsSDVpUFhvOWhI?=
 =?utf-8?B?Q0RkRHBuT1FUcTZiL0FLKzZBSXYvK0pUOVNudDR5MUxGWll4S0ZwQ25UQzVX?=
 =?utf-8?B?VXBDaXQwWjRiVlZSU1VJbldzT3RmK1IrSlROeEVnelZOR0Q3aE9uM0M0cE45?=
 =?utf-8?B?OWd3VGt0OGlaSnBqYzJwS3NoRFRYbTRsR3hKa0d2akJQRS9DdzYrUllscUQv?=
 =?utf-8?B?U3Z2ekNKMWJvSHp3MzhuRGZRY3NJWGcxdlhwY1dQZEtONU5NcWUybWVPZFdr?=
 =?utf-8?B?VGx3Y3p6Y1BONHRHYnZlTG9LZzZ3alZOZ2EwMExPNEcrTnRDOUlIMXQ4YlM0?=
 =?utf-8?B?TlF4N2dlaGxJQUttclNiL2JrVm0zSWlyckNaM24wZEpZVnJ6dEEzWUlKQk1R?=
 =?utf-8?B?aGtidU9GbmtIcG5ENlp4T1FJZS9oYU9RdW5mSlpIRUZTM3MvS0tBYnFqRGNX?=
 =?utf-8?B?dkdCQmxlc3JtR1d1d0pLQW83L1NwMHNZQVhxZ04zTHM4MTkvN1hYeFhpekdR?=
 =?utf-8?B?bWoxVWNQYmgrdWNOendBbmZxSlZodlZZMnY5RGZSeWJqZlJ4R0h0bDJXUXVn?=
 =?utf-8?B?L1ZGVFBjQ0EwL0hldFJtUW5Fb1hXR1BDaktWSjh4ajZzMzhma3ZEUWZjYW5q?=
 =?utf-8?B?VEZTUXNmbGJsK1dCWnpWYlJMd0srOVN1ZnlCK2E0bmRRSWpRdkZpWFNGdXhD?=
 =?utf-8?Q?7v4d9chUtJmUJTrLypKi0klSZ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0c9afc2b-ef8f-42bf-db03-08dbb52d4bf7
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 14:17:15.7050
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: HxTIU2lWJDpx4wxgN+mKbApiib9f8De9irbI47ypxnO2ShVjWATBevhYylmRnSq6+dCDpZM6APqP9Jt2WtowAg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9213

On 14.09.2023 15:39, Roger Pau Monné wrote:
> On Thu, Sep 14, 2023 at 03:16:40PM +0200, Jan Beulich wrote:
>> On 14.09.2023 14:57, Roger Pau Monné wrote:
>>> On Thu, Sep 14, 2023 at 02:49:45PM +0200, Jan Beulich wrote:
>>>> On 14.09.2023 14:37, Roger Pau Monné wrote:
>>>>> On Thu, Sep 14, 2023 at 07:52:33AM +0200, Jan Beulich wrote:
>>>>>> On 13.09.2023 16:52, Roger Pau Monne wrote:
>>>>>>> OpenBSD 7.3 will unconditionally access HWCR if the TSC is reported as
>>>>>>> Invariant, and it will then attempt to also unconditionally access PSTATE0 if
>>>>>>> HWCR.TscFreqSel is set (currently the case on Xen).
>>>>>>>
>>>>>>> The relation between HWCR.TscFreqSel and PSTATE0 is not clearly written down in
>>>>>>> the PPR, but it's natural for OSes to attempt to fetch the P0 frequency if the
>>>>>>> TSC increments at the P0 frequency.
>>>>>>>
>>>>>>> Exposing PSTATEn (PSTATE0 at least) with all zeroes is not a suitable solution
>>>>>>> because the PstateEn bit is read-write, and OSes could legitimately attempt to
>>>>>>> set PstateEn=1 which Xen couldn't handle.
>>>>>>>
>>>>>>> In order to fix expose an empty HWCR, which is an architectural MSR and so must
>>>>>>> be accessible.
>>>>>>>
>>>>>>> Note it was not safe to expose the TscFreqSel bit because it is not
>>>>>>> architectural, and could change meaning between models.
>>>>>>
>>>>>> This imo wants (or even needs) extending to address the aspect of then
>>>>>> exposing, on newer families, a r/o bit with the wrong value.
>>>>>
>>>>> We could always be exposing bits with the wrong values on newer
>>>>> (unreleased?) families, I'm not sure why it needs explicit mentioning
>>>>> here.
>>>>
>>>> Hmm, yes, that's one way to look at things. Yet exposing plain zero is
>>>> pretty clearly not within spec here,
>>>
>>> As I understand it, the fact that HWCR.TscFreqSel is read-only doesn't
>>> exclude the possibility of it changing using other means (iow: we
>>> should consider that a write to a different register could have the
>>> side effect of toggling the bit).
>>>
>>> The PPR I'm reading doesn't mention that the bit must be 1, just that
>>> it's 1 on reset and read-only.
>>
>> Sure; the PPR being incomplete doesn't help here. My interpretation, based
>> on the bit having been r/w in earlier families, is that AMD wanted to retain
>> its meaning without allowing it to be configurable anymore. Possibly a sign
>> of it remaining so going forward.
> 
> What about:
> 
> "Note it was not safe to expose the TscFreqSel bit because it is not
> architectural, and could change meaning between models.  Since HWCR
> contains both architectural and non-architectural bits, going forward
> care must be taken to assert the exposed value is correct on newer
> CPU families."

Fine with me.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:22:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:22:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602305.938792 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnEl-0005vu-8W; Thu, 14 Sep 2023 14:22:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602305.938792; Thu, 14 Sep 2023 14:22:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnEl-0005vn-5p; Thu, 14 Sep 2023 14:22:31 +0000
Received: by outflank-mailman (input) for mailman id 602305;
 Thu, 14 Sep 2023 14:22:30 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgnEk-0005vh-QK
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:22:30 +0000
Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com
 [2a00:1450:4864:20::32a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 226e235a-530a-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:22:28 +0200 (CEST)
Received: by mail-wm1-x32a.google.com with SMTP id
 5b1f17b1804b1-40434d284f7so8185845e9.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:22:28 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 v26-20020a1cf71a000000b003fe1630a8f0sm5015544wmh.24.2023.09.14.07.22.27
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 07:22:28 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 226e235a-530a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694701348; x=1695306148; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=ff9Ehpvke6LtFPxvHhzarjEmuj2e3YwgZf0e14rNLIQ=;
        b=aeTeZxwUhQC56luL0Ch3lZeTSxIVLwmHf5hUG7Th2jyWBp3ux/C4xCeIMk2Nhuqtn3
         BLzVxVGiwak7sjZ2eE20L0KTxg/Qw2wY4vj9xpj927xUvA7j1NoOEgwnRwmrdWMTPbm7
         ppIyJD7uByDvW6mE8R45g8aT2/ZlXqKz8E/+M=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694701348; x=1695306148;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=ff9Ehpvke6LtFPxvHhzarjEmuj2e3YwgZf0e14rNLIQ=;
        b=QeJWF9XcHtY4XsAcK1p74yD3Y1KMcEjMJMqgR8PRkwMg2zzT3xMTEuycPYVGk7GVL+
         BeVuYYymrH2K3zoavqi6Qb4MzGflBc+NfKztM+XvllhDQsHC2a2SpPlpiebV4JI/aTtr
         93sZolCQ6hqgYKhQ6VVsLHD+cyNT4zDY8KAfAks7F6bShL/8/NohinpTwkiGsc6ITEIF
         SfeT5LZ0VSTM1VQV2K7GD1b0L+ySwZ9aoYJiozqICjnVnFYPDsa5g39K77JgQCZfwoLY
         KpfzoCAvuqqIMLHv1d1wgNPXBI0iGAK5Xb2LlYprH9PddpGQVyB+JGk2vFt8U3Ezcw02
         JOWw==
X-Gm-Message-State: AOJu0YyMwKpGvK3jDGZW0c8E6JJ7W0VzATnaHNgwqK2en+B3yz9t3GN1
	vkydzvBIq4ypBgtW3muDWo7AMA==
X-Google-Smtp-Source: AGHT+IFve9l57veSgCPqyrpryNeRPxRNyvtIANtQFRamRYlphhlxA6Tmolp/NSw7/qlFLxzi7VWxww==
X-Received: by 2002:a7b:c414:0:b0:402:fe6d:6296 with SMTP id k20-20020a7bc414000000b00402fe6d6296mr4934579wmi.9.1694701348349;
        Thu, 14 Sep 2023 07:22:28 -0700 (PDT)
Message-ID: <cd4979cf-bcf4-75b4-a18b-c61a9b2e0ffb@citrix.com>
Date: Thu, 14 Sep 2023 15:22:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: andrew.cooper3@citrix.com
Subject: Re: [PATCH v10 05/38] x86/trapnr: Add event type macros to
 <asm/trapnr.h>
Content-Language: en-GB
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-6-xin3.li@intel.com>
In-Reply-To: <20230914044805.301390-6-xin3.li@intel.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 5:47 am, Xin Li wrote:
> Intel VT-x classifies events into eight different types, which is
> inherited by FRED for event identification. As such, event type
> becomes a common x86 concept, and should be defined in a common x86
> header.
>
> Add event type macros to <asm/trapnr.h>, and use it in <asm/vmx.h>.
>
> Suggested-by: H. Peter Anvin (Intel) <hpa@zytor.com>
> Tested-by: Shan Kang <shan.kang@intel.com>
> Signed-off-by: Xin Li <xin3.li@intel.com>
> ---
>  arch/x86/include/asm/trapnr.h | 12 ++++++++++++
>  arch/x86/include/asm/vmx.h    | 17 +++++++++--------
>  2 files changed, 21 insertions(+), 8 deletions(-)
>
> diff --git a/arch/x86/include/asm/trapnr.h b/arch/x86/include/asm/trapnr.h
> index f5d2325aa0b7..ab7e4c9d666f 100644
> --- a/arch/x86/include/asm/trapnr.h
> +++ b/arch/x86/include/asm/trapnr.h
> @@ -2,6 +2,18 @@
>  #ifndef _ASM_X86_TRAPNR_H
>  #define _ASM_X86_TRAPNR_H
>  
> +/*
> + * Event type codes used by both FRED and Intel VT-x

And AMD SVM.  This enumeration has never been unique to just VT-x.

> + */
> +#define EVENT_TYPE_EXTINT	0	// External interrupt
> +#define EVENT_TYPE_RESERVED	1
> +#define EVENT_TYPE_NMI		2	// NMI
> +#define EVENT_TYPE_HWEXC	3	// Hardware originated traps, exceptions
> +#define EVENT_TYPE_SWINT	4	// INT n
> +#define EVENT_TYPE_PRIV_SWEXC	5	// INT1
> +#define EVENT_TYPE_SWEXC	6	// INT0, INT3

Typo.  into, not int0  (the difference shows up more clearly in lower case.)

> diff --git a/arch/x86/include/asm/vmx.h b/arch/x86/include/asm/vmx.h
> index 0e73616b82f3..c84acfefcd31 100644
> --- a/arch/x86/include/asm/vmx.h
> +++ b/arch/x86/include/asm/vmx.h
> @@ -374,14 +375,14 @@ enum vmcs_field {
>  #define VECTORING_INFO_DELIVER_CODE_MASK    	INTR_INFO_DELIVER_CODE_MASK
>  #define VECTORING_INFO_VALID_MASK       	INTR_INFO_VALID_MASK
>  
> -#define INTR_TYPE_EXT_INTR              (0 << 8) /* external interrupt */
> -#define INTR_TYPE_RESERVED              (1 << 8) /* reserved */
> -#define INTR_TYPE_NMI_INTR		(2 << 8) /* NMI */
> -#define INTR_TYPE_HARD_EXCEPTION	(3 << 8) /* processor exception */
> -#define INTR_TYPE_SOFT_INTR             (4 << 8) /* software interrupt */
> -#define INTR_TYPE_PRIV_SW_EXCEPTION	(5 << 8) /* ICE breakpoint - undocumented */
> -#define INTR_TYPE_SOFT_EXCEPTION	(6 << 8) /* software exception */
> -#define INTR_TYPE_OTHER_EVENT           (7 << 8) /* other event */
> +#define INTR_TYPE_EXT_INTR		(EVENT_TYPE_EXTINT << 8)	/* external interrupt */
> +#define INTR_TYPE_RESERVED		(EVENT_TYPE_RESERVED << 8)	/* reserved */
> +#define INTR_TYPE_NMI_INTR		(EVENT_TYPE_NMI << 8)		/* NMI */
> +#define INTR_TYPE_HARD_EXCEPTION	(EVENT_TYPE_HWEXC << 8)		/* processor exception */
> +#define INTR_TYPE_SOFT_INTR		(EVENT_TYPE_SWINT << 8)		/* software interrupt */
> +#define INTR_TYPE_PRIV_SW_EXCEPTION	(EVENT_TYPE_PRIV_SWEXC << 8)	/* ICE breakpoint - undocumented */

ICEBP/INT1 is no longer undocumented.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:23:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:23:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602310.938802 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnFY-0006Tk-IL; Thu, 14 Sep 2023 14:23:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602310.938802; Thu, 14 Sep 2023 14:23:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnFY-0006Tb-E9; Thu, 14 Sep 2023 14:23:20 +0000
Received: by outflank-mailman (input) for mailman id 602310;
 Thu, 14 Sep 2023 14:23:19 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgnFX-0006TL-B2; Thu, 14 Sep 2023 14:23:19 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgnFX-0001n4-6e; Thu, 14 Sep 2023 14:23:19 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgnFW-0001UH-I6; Thu, 14 Sep 2023 14:23:18 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgnFW-0001Jh-Hf; Thu, 14 Sep 2023 14:23:18 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=TYhDHCq+g3jG92IB+Q6bFuybtGaSgQHD/GhPig4X+6E=; b=D0sBnjMBAaSBQ08JhCQkuQQkXo
	IF2pSBoOPdyeIajS2Cz2lgc4uH3G6PgSL2rV7cPMvw6thaB7Oimi+moIhIMxSKD4ILiNjURS7osuU
	OAVpqU6nEnmCCICEbnKIQkteWTm9Fnqzm6mBxuGbXGBCq0mniYgTBmRVC141WlGVMfKs=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183000-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183000: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=6aa25c32180ab59081c73bae4c568367d9133a1f
X-Osstest-Versions-That:
    xen=6aa25c32180ab59081c73bae4c568367d9133a1f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 14 Sep 2023 14:23:18 +0000

flight 183000 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183000/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182997
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182997
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182997
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182997
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182997
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182997
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182997
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182997
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182997
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182997
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182997
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182997
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  6aa25c32180ab59081c73bae4c568367d9133a1f
baseline version:
 xen                  6aa25c32180ab59081c73bae4c568367d9133a1f

Last test of basis   183000  2023-09-14 04:07:29 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:32:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:32:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602318.938811 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnOX-0001P0-Ha; Thu, 14 Sep 2023 14:32:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602318.938811; Thu, 14 Sep 2023 14:32:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnOX-0001Os-Ez; Thu, 14 Sep 2023 14:32:37 +0000
Received: by outflank-mailman (input) for mailman id 602318;
 Thu, 14 Sep 2023 14:32:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgnOW-0001Om-8z
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:32:36 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2071.outbound.protection.outlook.com [40.107.7.71])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8b18f1ec-530b-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:32:34 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7412.eurprd04.prod.outlook.com (2603:10a6:20b:1df::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 14:32:04 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 14:32:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8b18f1ec-530b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Q3WZ0xVPWb45mcwJEDmdFt2qQUZPHH34+vcNYfhwJR+BFi5nTy5YNpckt2JgasWDB4nIwKSf5clnZW6MURcfBSV7KkoJslP0eslVLdNhP/dR9quyrHVdlg6sTCpUJea8OM9Msb5fz1bR6enbT8cipHtN75o7NQCtnZBpOR+zwlmKoC07SZNhDnO6ZGzpOscFPKMoHUsqzOTEcOSsaAEpRjMSZJ2KLGvtafhvYqRLybL7/V72wY5jUBgQIPaKEWLmQgCXA+7ozSveaF62HQBsxVxez9h+QfosjnNvOr7CPWLqbStl7CMUvvXw94+sSJaMgffet7yyODSFbDDfFRZFew==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=oOEq8i9HTQF6kGAQWG9si/GkDBn4LNSFlY9R4GX6KqQ=;
 b=dbOYBN8GpTGJk9npcESMUCFP6hMng5H9lJLzUjYR9OSYo9EOM1wTkK8I+iskK/hweVtvdR+DNntFkLG3lHxqK8KkaHjPu1krrf90rx9QukqMzonXJNQ2D48b/2vWYf9AYe4M9FVITk7yiqzNQbs0Ywe+Vz4yG/jgfoTwCfWpyXCFPRYNgUmMDV4Ph6GI278wY5HXiMvVKE8ktDQkrIxltJNF7ZIRWNU6eNVGYi7BZBB6jrzQfmjAGDUufpI+h8yZvS2mwbt5rIVonvq5VjLQELkqK+qFxhqFd18tI754O3gq7j/4jdicyE97X8ZJJO+9Qc1GlvoZLeHC9H6eF3lGLA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=oOEq8i9HTQF6kGAQWG9si/GkDBn4LNSFlY9R4GX6KqQ=;
 b=kDbYQ2sf7ba6B/4IBUdx1/eUqBuqbBEZBuqJefxMIdB5DBGkZCURrIeRuximeIrkUdltZyyzhzMtRGSErIj6eY5bvfWdJl0l3ejeodAcF7evf5GfG+rnyHVZQPVA1bSGdb3CDq7egNXYjYZeMwFzbrLND/riF4ehcEU09InUWbfv8Vtb5H/v7dDQiPXlpbD6XrWveXN309WIRPcB3kNWpFdyTrF2eVNznwzd+bwQQ6FZi74YjgnQsTFI0C+O+W89KgZi6pOYSaq8eyxDDIYM9L7D5YcFrSOiV14mBCkzID/rq1sEaCRlasHGezCY2mhfdO9sEHzasbUiknnbi4GHcw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <11eaed0c-69a0-60de-43ab-55d50c981ffa@suse.com>
Date: Thu, 14 Sep 2023 16:32:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2] timer: fix NR_CPUS=1 build with gcc13
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0164.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a2::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7412:EE_
X-MS-Office365-Filtering-Correlation-Id: 8f1f4a63-c4ea-44c3-3e6c-08dbb52f5db1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	srzufdBzWZ5QHcrfzVk/Fo4ufRVmbpEpWaRlOnX6xK9uskgLOR5ts9yw1hCGiuY0HUsBAryYcfizExBmZK41jnttQHGj83+30fxGXOgxV2is0Jd0KFmY8Czv57pydtGu5DiSkcayW8CH0BwaUz0FM7nIVZ4N64g1XaDuqp4sbg8xRVv10Dmp3Hs8/xQPxrpVwnP7DxHGthAIjhygvf6aU8E7W8YNtBCC+NF/bjCkHYFZ9IhvDt/Ir0Sa6nge79dWoBhQafXNqOgDVuYXYL0BpK9PlAT9GHTvTtEqtmac/Sy13q166mmWWF3f8Vj7OtH4Sl1qeO6YfkQ0Bu7OWAwApQnQZ00GUHzGMpiGcnqtAsr3KGHfbWEYgKRjwzyzUwzhXor4pEU0MBzqouXFwMxgVzjKwsVRKmNKssQppPG862/Z0AfOObyXI91hN1k98wHZCCqX3uYIGWa8cgTIVDINoY0PbVaPufOyNWIck+j/XIK3a8Gme8hSWP9P1++X05+ctRNsAbipd/JTybcrrRjiHkeEOisE4j08zwZDiibIg95E7c96fwUi0UvPo3ZV/reGJCCXOfhZKyEQ1vqroyhJ6v0R3ULSgVRTmuc/Th5yx1cxyEEbEXPL4bo4jllEoEMUqp7IlOHQJWCorKxnUj6cbQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(136003)(376002)(396003)(366004)(186009)(451199024)(1800799009)(31696002)(86362001)(8936002)(8676002)(4326008)(5660300002)(2906002)(36756003)(6506007)(6666004)(6486002)(2616005)(38100700002)(478600001)(26005)(6512007)(83380400001)(31686004)(66476007)(41300700001)(6916009)(316002)(54906003)(66946007)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Y3BsR3RqZWtMa2tRZlpGSjFBQ0Fxbkg3NFR5ZGorOVFQKzk2QXVDcnorN3cy?=
 =?utf-8?B?VUZDMUR3cmg5aWNobzV1LzRzWGEzS3hTWGswTkpYMTdUaWJIZ3NYMHZJUENy?=
 =?utf-8?B?dWJGbmVQOENtMWZUWXYzL2Vid1EyU2VzOWhXRFVRN2lERG9jNlZDRzlRdFA1?=
 =?utf-8?B?TVlkS3kyQ3lMekVjMzFyZ0J4RFhpSDNEVlYwWDVZVEZwRCtmTW13VlplQVE1?=
 =?utf-8?B?aG5EeEI2TEVZU3FYaS95dDUzb3MwaWxyek9sYjV0R1hSZEhxeUpGMWIrUHR6?=
 =?utf-8?B?ZkpEQlBNcG40QVppbmJ1MU50ellUSHMvNlBQK1Y2eXk4eXEvN2hVWG9IUWVk?=
 =?utf-8?B?VHRDaWNiTDNvRHBsNU1NR1NlQWcwakczWVRyWW1ENk5PbDVxWUUvV2RnYXJ6?=
 =?utf-8?B?c2xNTWNWYnE4MzkzT2JPSExDL0J2MkpJQWpYUzJEMHFFMVlSdmRmZjhxZWcv?=
 =?utf-8?B?cEU3WHMzY3R0QWNrTit5ak11ZnZZS08vb0M0TzU0ME9QbW9vWjdZOXNGQVJw?=
 =?utf-8?B?UExtVlpDRzFGMVhJeGNkZUlVM2ZuUFRHNXVERW8yeFJTL1R5NzdFVmtqN3Vq?=
 =?utf-8?B?emhZWEpjQUhybUk0Ym1yRjl0YlZoTEdFUGRkWnZUZXJFZ1YwR05jY0IvTlVT?=
 =?utf-8?B?bzBVa1p6SmcxZmRzb3BzOWhsbkwvblVibWd3NUVxUDd4T0NJNSs0ZHR6MnZ6?=
 =?utf-8?B?MEdmYWhReDRzNHZ2Wjd3MUFKaVdNelVZa1ZEVEJuN2JOTktKSkZ5aE1MUXhM?=
 =?utf-8?B?bFBoZkVpRTJ1ZVI1bllhTEdtejdoUGhmc1dnNFNXcDU4N25CL2hjNGMzMFFx?=
 =?utf-8?B?K2t0RXRzZEJiSGNOWWZqcm5IRlptcENHL3VUa0todlpRK05DSmdFdk5VUTdM?=
 =?utf-8?B?VkhQMUs1eEpTTWRubmxOZERDWDFwSmlJckkxUFVCOGF5aUxKYlVsNFlwcXk4?=
 =?utf-8?B?QjdDbnM0ZFFPOVlLeHQ2NGVGZnFFV3ZGMVlXVWFJa3E1b1hlYnZDVkpiSGM4?=
 =?utf-8?B?dUNNMW5xZlUyWVZIcjk1ZHA1MHl1T2kvMU9YZlhBcTVNMUhtc0VtbHhtbW5v?=
 =?utf-8?B?KzNaS3BydnZaampya2Y3bkpMNlNmL21Db29SSnBGMHJabm91UzgxaHRMRlZF?=
 =?utf-8?B?eHorTWtqamZRc290dWEvY01SUW4rZXhjQXRjbnRlVHpHUm5jbDJoREFMVkdI?=
 =?utf-8?B?TC9sa1hJc3g3dW1EM1dHcnlVUFFLbjBSSUVTako0Zld6VXZJajJwZFlmcG1Q?=
 =?utf-8?B?RmFFVXFycDFXdzdrOFJoZWVicWhpMWxJKzAwQzIvLzhOSjdOWkV3RG1lb3ZD?=
 =?utf-8?B?c1dDbGRpczcyd1Z1aXVRaUs1WHhTdlp5MEhqdTN6TXlidDY3Ly94SGEzUUxJ?=
 =?utf-8?B?L09kYmo3OTVocVhKb3g5YUcyWGFTa1lQbUROUVZjS0luSUlxd2dhd2ZkZ2Ru?=
 =?utf-8?B?QTJyRGxNQTJzalk2SEQzREVGZDk1alJvWjRkVWhrMWNlUldzYUttRWpnVjM5?=
 =?utf-8?B?end1b01CNmNlajFybUYwUUhFMlpKTXZNS0JaS1lsaGk4TkM2aEVKKzM0Z0pp?=
 =?utf-8?B?WTh6Y2hKalBiNER2ZDMzWnVFYXBFVHY2a3h5VVJQR1pPdTFSdFhCdmJwRDdU?=
 =?utf-8?B?OU9DYlhhVzFmYjNqV0F3SkdGYm55SzF1TW4wZllUcmJmcVNhWGNUY3kvUVhV?=
 =?utf-8?B?b2wwWmt6alBJUlVyM1ljeTA1RE1HS0VrQUxJR2xmRmxncXlkUElQallqV3Zo?=
 =?utf-8?B?SnpnWkZ6SE5rUFM2dlF4cUJFMmM5Nk9vamU1WkI2ZHJBOUFReDdDY2NHbFRZ?=
 =?utf-8?B?V2RYRzRmbVJSak5SM0VhNFFjU1RYLzZJZFJMZWYxVUlhbm84K29pc1FjOVJV?=
 =?utf-8?B?RmRzdm5ZeWdlTWhnWXdvdmJ6S2dvZVE5N0hNQzc2c0ptYXVNSDNxMWZYSXJO?=
 =?utf-8?B?NU1jeWZBeXpVSFJmOTlkOHg5R1BtS1h2VDFwUVlZSjV0ZDNURlVpZWtycFBy?=
 =?utf-8?B?dHdPQUVBNGNlVkZTeVkxd2ZZY1A4UFlaaUcyaVduL25yd3AxYXNHcXRueHpz?=
 =?utf-8?B?TjdJRnkxUWl6L3JzWVhKUVZMK2oxWU9FM0t4VHByNEVqcUdqUklPeWZnRFlR?=
 =?utf-8?Q?/LFEPRXY8pDoCx5a3NqnoTd23?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8f1f4a63-c4ea-44c3-3e6c-08dbb52f5db1
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 14:32:04.4080
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: lfw5qEa02+zfZLu4D0+aWxULwJVarxHyC/rfnj9mupgi6+4k/6yTF1gZV0vhI3ojZ1cRux3hBT01cztUdkrFtQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7412

Gcc13 apparently infers from "if ( old_cpu < new_cpu )" that "new_cpu"
is >= 1, and then (on x86) complains about "per_cpu(timers, new_cpu)"
exceeding __per_cpu_offset[]'s bounds (being an array of 1 in such a
configuration). Make the code conditional upon there being at least 2
CPUs configured (otherwise there simply is nothing to migrate [to]).

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v2: Warn if it looks like an actual migration was (bogusly) requested.

--- a/xen/common/timer.c
+++ b/xen/common/timer.c
@@ -357,6 +357,7 @@ bool timer_expires_before(struct timer *
 void migrate_timer(struct timer *timer, unsigned int new_cpu)
 {
     unsigned int old_cpu;
+#if CONFIG_NR_CPUS > 1
     bool_t active;
     unsigned long flags;
 
@@ -404,6 +405,11 @@ void migrate_timer(struct timer *timer,
 
     spin_unlock(&per_cpu(timers, old_cpu).lock);
     spin_unlock_irqrestore(&per_cpu(timers, new_cpu).lock, flags);
+#else /* CONFIG_NR_CPUS == 1 */
+    old_cpu = read_atomic(&timer->cpu);
+    if ( old_cpu != TIMER_CPU_status_killed )
+        WARN_ON(new_cpu != old_cpu);
+#endif /* CONFIG_NR_CPUS */
 }
 
 


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:38:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:38:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602322.938822 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnUL-0003D2-7G; Thu, 14 Sep 2023 14:38:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602322.938822; Thu, 14 Sep 2023 14:38:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnUL-0003Cv-3H; Thu, 14 Sep 2023 14:38:37 +0000
Received: by outflank-mailman (input) for mailman id 602322;
 Thu, 14 Sep 2023 14:38:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=HIRo=E6=invisiblethingslab.com=demi@srs-se1.protection.inumbo.net>)
 id 1qgnUJ-0003AH-DQ
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:38:35 +0000
Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com
 [66.111.4.26]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6085357d-530c-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:38:32 +0200 (CEST)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.46])
 by mailout.nyi.internal (Postfix) with ESMTP id 9A54A5C0760;
 Thu, 14 Sep 2023 10:38:31 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute2.internal (MEProxy); Thu, 14 Sep 2023 10:38:31 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu,
 14 Sep 2023 10:38:30 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6085357d-530c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm1; t=
	1694702311; x=1694788711; bh=RCSDC38+WheZVYogpfB0vQ3s4nnbpp5UZgV
	vye3EnMs=; b=SMOv6NyPZpvGC9JnvT4x+wEo/cSDHaVntyUuhbZlksws3D229dg
	/rur4jvQZU8SK7660aW541zuUk+ACdqq6zP9H+4ZQlcj+JvZxcYcEryKnSCS3JMX
	aPuaoVEZaKanHz30tQdELoQj3Vr6ByEL4zCZo6wOkrgnezpbhnqJHnmXNPf0lbzo
	Rmo9FfIXfUyrbnsK0v6A69PDtzZjNsyq8Y18O7J49PQhp2aBHlMVKJIHypBWTzZO
	awbb7PVrqyh9QXqCAKhCbYWGsdJ0z/aFMdwHKcLBDAIWlWonKWlSLyaUPYQF49Qg
	ErIOG0qZRoBKgaM3NfLEC75qx3o7MghpDRA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; t=1694702311; x=1694788711; bh=RCSDC38+WheZV
	YogpfB0vQ3s4nnbpp5UZgVvye3EnMs=; b=UNYbKLxG87IMaTtGu7xNz2AU+yYYv
	HEsruIz/h/fyNl+jsTF4E7+yH6hUdP4wgRq+sy+GwMgScrbQLgiMqT/Q/Ey0BbTD
	L4Cf8j3M8FQ9QaIbeHR9pzUTF9e90xhmkksbgvf4GKKR7IiN7Cew7ToH+Sxs6r5W
	gs0W1ohi10bbL/hrqnxjsub5FBeFGk9VZBOPcUOocqvvLxOzm8d6TCU3rAdiyChD
	btpaBTzCW+0duWpRvkvM6gHtgl0UVrWZU/KrmWtb/zIABY8Pie/TtzScA1YYlmF4
	3+Vq6ZK3LDNDgUBaL3hnNFLigVtrOiKkMxwFF5nDa1E2XxXRgCjeRfSog==
X-ME-Sender: <xms:5xoDZUFOJ06JA8kOcMbHGURpQq5RqOMc3NVQHtGHTEFeKksxcUx12g>
    <xme:5xoDZdXT7GBH6HrdG5A0c0h_Z7fN1LXMSKV04srdvV0B0I64--6hbCQQdr_c5PeIZ
    KR0danJqjsLCNM>
X-ME-Received: <xmr:5xoDZeLn4wDmuKV7Cc1peYVa_x6hvDoYWVz708bRlT9mjnvdH-FLBsyckwt90AIE7gQQlJ5x5-B6JDouNEHycptpQyzvgtKzcLhRERs7N4ZwcOgn>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudejtddgjeejucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtjeenucfhrhhomhepffgvmhhi
    ucforghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhngh
    hslhgrsgdrtghomheqnecuggftrfgrthhtvghrnhepfffhfeduueekteeukedutddvteei
    hfekgeevueeugeeguddthfehveefgeegueevnecuffhomhgrihhnpehinhhtvghlrdgtoh
    hmnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepuggv
    mhhisehinhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:5xoDZWEzmiidib49oIaEwHHbSo39sTpl04tFK0i_AjzJljfBTRj9-Q>
    <xmx:5xoDZaXKgIs6usFFIenFzUBTA6Xv0fGIyLqvGgOxRtLQhmEuVDEyJQ>
    <xmx:5xoDZZMi6YKr-cSmOwCrxJw4T8dLHluJeowGN8wtwBBMKVE7_ONLVQ>
    <xmx:5xoDZcLFeKevaZ1d2j-aFs56gMEDYy1j1cauKCW7oscSdSC0Uc2uiQ>
Feedback-ID: iac594737:Fastmail
Date: Thu, 14 Sep 2023 10:38:26 -0400
From: Demi Marie Obenour <demi@invisiblethingslab.com>
To: Julien Grall <julien@xen.org>, Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>,
	Henry Wang <Henry.Wang@arm.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent
 timing mode
Message-ID: <ZQMa5RJgUvRdrN/Q@itl-email>
References: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
 <e4ab7415-cf72-4c04-93dd-fd393f49f6f5@xen.org>
 <dfbbf38c-8651-5396-c966-365fe954df48@suse.com>
 <bfe3a681-7dbd-462c-9a8c-969d5a99aaa1@xen.org>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
	protocol="application/pgp-signature"; boundary="tEkGPxy9bbj3qfxH"
Content-Disposition: inline
In-Reply-To: <bfe3a681-7dbd-462c-9a8c-969d5a99aaa1@xen.org>


--tEkGPxy9bbj3qfxH
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Thu, 14 Sep 2023 10:38:26 -0400
From: Demi Marie Obenour <demi@invisiblethingslab.com>
To: Julien Grall <julien@xen.org>, Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>,
	Henry Wang <Henry.Wang@arm.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent
 timing mode

On Thu, Sep 14, 2023 at 10:04:31AM +0100, Julien Grall wrote:
> Hi Jan,
>=20
> On 14/09/2023 07:32, Jan Beulich wrote:
> > On 13.09.2023 19:56, Julien Grall wrote:
> > > On 11/09/2023 16:01, Jan Beulich wrote:
> > > > [1] specifies a long list of instructions which are intended to exh=
ibit
> > > > timing behavior independent of the data they operate on. On certain
> > > > hardware this independence is optional, controlled by a bit in a new
> > > > MSR. Provide a command line option to control the mode Xen and its
> > > > guests are to operate in, with a build time control over the defaul=
t.
> > > > Longer term we may want to allow guests to control this.
> > >=20
> > > If I read correctly the discussion on the previous version. There was
> > > some concern with this version of patch. I can't find anything public
> > > suggesting that the concerned were dismissed. Do you have any pointer?
> >=20
> > Well, I can point to the XenServer patch queue, which since then has
> > gained a patch of similar (less flexible) functionality (and seeing
> > the similarity I was puzzled by this patch, which was posted late
> > for 4.17, not having gone in quite some time ago). This to me
> > demonstrates that the original concerns were "downgraded". It would
> > of course still be desirable to have guests control the behavior for
> > themselves, but that's a more intrusive change left for the future.
> >=20
> > Beyond that I guess I need to have Andrew speak for himself.
> >=20
> > > > Since Arm64 supposedly also has such a control, put command line op=
tion
> > > > and Kconfig control in common files.
> > > >=20
> > > > [1] https://www.intel.com/content/www/us/en/developer/articles/tech=
nical/software-security-guidance/best-practices/data-operand-independent-ti=
ming-isa-guidance.html
> > > >=20
> > > > Requested-by: Demi Marie Obenour <demi@invisiblethingslab.com>
> > > > Signed-off-by: Jan Beulich <jbeulich@suse.com>
> > > > ---
> > > > This may be viewed as a new feature, and hence be too late for 4.18=
=2E It
> > > > may, however, also be viewed as security relevant, which is why I'd=
 like
> > > > to propose to at least consider it.
> > > >=20
> > > > Slightly RFC, in particular for whether the Kconfig option should
> > > > default to Y or N.
> > >=20
> > > I am not entirely sure. I understand that DIT will help in the
> > > cryptographic case but it is not clear to me what is the performance =
impact.
> >=20
> > The entire purpose of the bit is to have a performance impact, slowing
> > down execution when fastpaths could be taken, but shouldn't to achieve
> > the named goal.
>=20
> I understood that. My question was more related to how much it will degra=
de
> the performance. This will help to know whether the default should be yes=
 or
> no.

This information is not available.  You could do benchmarks with and
without this patch if you wanted to obtain it.

> > > > --- a/xen/arch/x86/cpu/common.c
> > > > +++ b/xen/arch/x86/cpu/common.c
> > > > @@ -204,6 +204,28 @@ void ctxt_switch_levelling(const struct
> > > >    		alternative_vcall(ctxt_switch_masking, next);
> > > >    }
> > > > +static void setup_doitm(void)
> > > > +{
> > > > +    uint64_t msr;
> > > > +
> > > > +    if ( !cpu_has_doitm )
> > >=20
> > > I am not very familiar with the feature. If it is not present, then c=
an
> > > we guarantee that the instructions will be executed in constant time?
> >=20
> > _We_ cannot guarantee anything. It is only hardware vendors who can. As=
 a
> > result I can only again refer you to the referenced documentation. It
> > claims that without the bit being supported in hardware, an extensive
> > list of insns is going to expose data operand independent performance.
>=20
> Right. So ...
>=20
> >=20
> > > If not, I think we should taint Xen and/or print a message if the adm=
in
> > > requested to use DIT. This would make clear that the admin is trying =
to
> > > do something that doesn't work.
> >=20
> > Tainting Xen on all hardware not exposing the bit would seem entirely
> > unreasonable to me. If we learned of specific cases where the vendor
> > promises are broken, we could taint there, sure. I guess that would be
> > individual XSAs / CVEs then for each instance.
>=20
> ... we need to somehow let the user know that the HW it is running on may
> not honor DIT. Tainting might be a bit too harsh, but I think printing a
> message with warning_add() is necessary.

Prior to DOITM, the data-operand-independent timing of certain
instructions was an implicit contract between hardware and software.
DOITM made several changes:

1. The implicit contract has been replaced by an architectural
   guarantee.  This guarantee has a specific list of instructions to
   which it applies, as well as a specific list of operands that timing
   will be independent of.  The guarantee has also been made conditional
   on DOITM being enabled =E2=80=94 if it is disabled, no guarantees are ma=
de.

2. Intel has retroactively extended this guarantee to all previous CPU
   architectures, including ones that do not give software control over
   DOITM.

3. Intel has stated that on architectures that do not expose DOITM
   control to software, DOITM is always enabled and cannot be disabled.

4. Intel has stated that on newer architectures (ones that _do_ expose
   DOITM), _DOITM is now disabled by default_.

This is a _backwards-incompatible change to the Intel 64 architecture_.
Software (including user-mode software) that was correct on older
hardware is now vulnerable on newer hardware if DOITM is disabled, which
is the default.  To fix this software, DOITM must be enabled by systems
software.

Conditionally enabling DOITM is not practical.  Modifying the DOITM
state requires an MSR write, which is a privileged instruction.
Executing a system call on entry and exit to cryptographic code has
a prohibitive performance penalty and requires changing not only every
single cryptographic library on the system, but also other libraries
(such as libcryptsetup) that rely on constant-time handling of secrets.
Therefore, enabling DOITM unconditionally and permanently is the only
feasible mitigation for this problem.
--=20
Sincerely,
Demi Marie Obenour (she/her/hers)
Invisible Things Lab

--tEkGPxy9bbj3qfxH
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmUDGuUACgkQsoi1X/+c
IsFQ1Q//esvF9C5KvFTGGR8vAoH/bri5VtwOlkF7HaFZLB7Kjg2RRCDhItMM75kD
67MAstli+QvaCr0MKLJZmRhCAoJlrLFbamgqvEfCUrykpHH59VDL2inm9gHaiWn5
cLzdbeYs8BsG+9UeGS10bXO5BP8+LZMW5fLuS2u4XnOfbvJfq9Bg93xoHjcIrymj
2imaDJK+ah8BgZpA+kySAme/tJtzRfznYqfWb6OIV2COHMTA+5Q+MFVv9FzyaQj9
eqKzZDFp84Bhh52IuxdVATRqJ8wdjy+FkdWZ+yY3pXUWwIh25zYzKwOvt+EWKFWF
MThWiMZRdHsWecZRvwohLOYC2Vw4VLgRrMmoGaltVK2twFk0j+LmHDtplX+aFQgE
ZIlZRo7xvR3YTqoGUp88BNl0yaa4/KiKmpzBdfGWcvwfvF1c99F+ldgoYUrVFlTS
QAurMe3KA12ag0NKe0h7PUvY5AKOLuelUpkUsOsYzJQNFkb5sjHWZ9AHArXSyb7L
YLs5GB2cnvZq6mFDqWA15DRvtYU+wraMGsTmXMCnA6mb1MTYAZfcESyNy1s7zoQU
S6En1Gx3Mb/z6p2Jk2c+3Rng0G0F7HwuQQyRivn8tIb4Fu1Ygg0mDbcF0r7sOZFq
5X4CGF87BP2Fo8wtl7HcSDYkrMHkrdIS9YnLoYCL/O8HjWRuidY=
=PLMa
-----END PGP SIGNATURE-----

--tEkGPxy9bbj3qfxH--


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:40:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:40:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602330.938831 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnWU-0005CB-JE; Thu, 14 Sep 2023 14:40:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602330.938831; Thu, 14 Sep 2023 14:40:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnWU-0005C4-GW; Thu, 14 Sep 2023 14:40:50 +0000
Received: by outflank-mailman (input) for mailman id 602330;
 Thu, 14 Sep 2023 14:40:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgnWT-0005B4-Dd
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:40:49 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0603.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::603])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b09be832-530c-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:40:48 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GVXPR04MB9925.eurprd04.prod.outlook.com (2603:10a6:150:112::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 14:40:42 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 14:40:41 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b09be832-530c-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cGCz81+CviWBEnWnSiP5b9I9MU0Gtjh1ha8nl83lCGbjoiWUSniMHsk1WE21AkNA/hikhQaS5rx0r+ON30C2c1CEWoOcIpNRGRrSykMp3UNGA81/lwkQ3vwAYIepate60a2FAExssGsFmmSYVp/5t8T5o4fP077T0EYLCGncBOFXpDrYnBNe7enED1mA4lVSC3QTWf968mXnJdsJPKBIY1oWXZf2LahsQr3EzfUJSSXeU6494om1FlWu1ufXwXdF4aXdVE/KZe6PIm2gESqCmLGc28YrmLoRKTlXrHfagkFmEJCX1K6TfvR22+QKHVvSfgn9C6QxpqxD23TgspxIFg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KHv3yHWZZrTBuVfh8r2NRgME6gfRGnDR8FYkJl5K53A=;
 b=XUTZ85T7V65EQDvqUT0PWzg+NLYt2Bsr/U2/GgRzLBsBYxzd0bSAQ/vdBAU5YoNb1gO6E/xbMDCesabnE9obzr3ACNj0aA3ozESzFadAunqTb6rzV0G2l+KQKeYD9FTLXAq2RnpN+b/cKMw06gfoY+Yk1VliwEx4UDR8+hqpgnKXQONzG07b6RC/zLj4LLqvN5HbWPbNuhjrIEdPRXfHoeb9rHkg7e4YTUk3LXwse7Lxh13DlAE5LhKXzTmCmAbL8i4G79D4BCdcdOoiAX+FCG9uC4T6HSIK3whpiH4tiNJvjmck4P1ithspnvHVLqkyxpDWDj80TLupmxL48DhO7Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KHv3yHWZZrTBuVfh8r2NRgME6gfRGnDR8FYkJl5K53A=;
 b=W2ZipKQCYmU7+G6Xr+Dz/3kPSbU31Zi/mKnjCXEP7wsG8ycVWNoGuC/Yq5uppKDggUq9gMHJO6HCGNObnP7glG1fyJ+sQN5f7bQPDLMbyv/FIfKGLQCfm+sQ2cGqw08OPS/3JrK/lPUeNTFoj6VzSky1LbKl6Je0EIZ7gtWzgwCXK30LtZMtQ8VpIgumKyIdxelPtJ4nZJlrbaM/pOhc+SYsyPFdNMhZWAYYpudP1twbP/+SffWt0tHMQT6BlHPkjyZjo+Qj5XQS1+mA39+kxhDn9T/SE9QBlq2sUWrqL9nO28whspXm8htekyLHX2k4VPdXr+ESD/ccp7kd/X2rNw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d7c3d67d-cd5d-d2c8-34a4-2e0c99ebe92b@suse.com>
Date: Thu, 14 Sep 2023 16:40:38 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 1/5] x86/pv: Fix the determiniation of whether to inject
 #DB
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-2-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230912232113.402347-2-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0092.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a9::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|GVXPR04MB9925:EE_
X-MS-Office365-Filtering-Correlation-Id: 6052ac2f-6f30-48ac-e016-08dbb5309208
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iREDf9OIc51EiLO+bZ/b05/fKsW73VXxHppcroQSV/ioGj1+P1hwbpbNXnFT+HWbx3ya1I7PoqKNa5AADXP1pHJvKplGfdH6Hd032zGP4qx2s53mwSJ0vLjBniKJ4PMhbaYwYcRurR9XBSg5KQLXaejPbNxUWST2bXb643Jyw38AwLBhhUuBj2y/yO7kgAIuAaM7Sb40EuStPjUQuKul2J3YCt2hG5BGTbB+8bPDxqus8YfLVnKSb/p1YcRaYuaOtEa/svkI8wmVK/mQSMjRM2tz+gyUt7lN1cmkm1+e9qiiGdm/0QGDoJU2eyQOzq/fnyaEaEyblxLyBmVS55bWJYQ8tUMBYhan6pTx1FfbXgJYpckLic8o+cQMLEeyTLGwcWvGZNgA8n/dpTyEROWLCubCY9eG6ayPDLeY6kWHq7EsHhYQVlTHGbenoJp9Tf4DzLmlDFgbDjByIulR4jZKZTKDxkIGoyhkhXtLkXb3tnbjZEyUXjfqh2yPnPrR0NWVKrOrljtWHWTfXM0x215R7XAv//svKHzm6IwAGVbtbgVq/MVLKm04DYqnFm/id8PCr+qNpwdek5sUHnZSbYceO3w1HXRGMOsDJGh3FiqUiR3ArPOC1PI5/9Z9kgJQ1PToD/THd6RKnn07Bj/ZK4ze+Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(376002)(136003)(396003)(346002)(451199024)(186009)(1800799009)(26005)(2616005)(478600001)(6666004)(6512007)(6506007)(53546011)(6486002)(2906002)(4744005)(31696002)(5660300002)(4326008)(36756003)(8936002)(41300700001)(86362001)(66946007)(66556008)(66476007)(31686004)(316002)(8676002)(54906003)(6916009)(83380400001)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?djJhWEozSnpnV1djM2gyNzA4YTRKUnBiR2VuRjRuQzRQbXVLQ2pWWHUxbm4w?=
 =?utf-8?B?TG9tZVhhcmt2L0Q5Zy9uaEFOaGhJd1JEQStYclFpSWhiTUNMWWh6TlE1RHdW?=
 =?utf-8?B?Wnp5akVGVUpvYlRZWWM0SGJsRStpV09JQVlyWFo2UFRPeWllZVZ0MHNyL1Q5?=
 =?utf-8?B?eTg3bDdMTUJGZVhvNnJRNkNwYVdDS3BVNU5pMTNnTVl1eEpPYnFHMlFkU0tI?=
 =?utf-8?B?RURYUk0wTkY5ZklQNStqa3ZKNjlCK3E0T3I3bWF4STVUVzQxaWx1UU5Zb3hE?=
 =?utf-8?B?VmdYVjN2NVA3Rjd5V3NIcGZkUUJ2MkpDN1B6eE1ZYzljRSsyYnZmVVArMlJa?=
 =?utf-8?B?Ym9PQmF2MzFnMVdxdE1QNmIzUHZLanpHL0ZqYWlOYkR2d0k5WVRwWThGV1R6?=
 =?utf-8?B?emlWdEJjb1hGRzZhYVB4dGZnZXp3dnhvNEhDLy84U3VuVDFkSkFGdmF4ZW0w?=
 =?utf-8?B?YkdGbXVVRDNQdTc0dEhxQldyTkJRMmY5eER5dytCZDRNWk9yQlBoVHlRd1F1?=
 =?utf-8?B?TGVOMVZ3citadncwajB1bTY2eEdYQ3dZd3ZPR2thYmdyYytQUHM5TUhHaFUy?=
 =?utf-8?B?VGx0UU1aZmhiUnZSVEd5a2lzRzdIN3hvZG9Tak1tYmNLTFo0Qk5VNitBaFln?=
 =?utf-8?B?WGhNNTArT052aE5vb0tYWHBNMEJkN3ZxR05vUlovR01na0E3RGZtWVRNWnBY?=
 =?utf-8?B?Y0ZLT0ljeDZhUThqTzhmZitCNkNtQVRTajlETkhlcGZjaDdDc0dHT0s5SEd4?=
 =?utf-8?B?L0pwMUhZQ2ZpZVpLKzVBRTZtc2dGS0ozTTl0K1Uyb21xTTZPZ0UwLzVpNTFE?=
 =?utf-8?B?d2VnK3N6WExObDE1SHBrUlNIT2ZrMFNlN3M3cFlyTjE1R1U5K2RDZVVzb2E5?=
 =?utf-8?B?Sm5qQVJ5RHA0ODQ0OHRhYmhvYUhUUlNIMXlTZjUyOURZNzJEeW1YUWc0K0Rr?=
 =?utf-8?B?MGg3Vm1TdENoM1Y5UHpMSy9ZVTRyUDhIdGR4ZWFhazArYUc1dDkyRm53UGVC?=
 =?utf-8?B?Zk1WL2lvNnI2VXkveHpFaEd4cUpjWHdEM1kvMEJKRVJUSitFb0c3Y0F5VTRO?=
 =?utf-8?B?TldhRGkxT0xNajRXaktZcFYvRHZkaXY0RDh0MUR1dERJTmRHMyt4cTlUM29R?=
 =?utf-8?B?bGw1U1RaSWcxWHQwQksyemcvclo0eEgyNUNBckFubFAvODAxRTBTSHNGclNK?=
 =?utf-8?B?a05oMVhNaHdGVFJ6R2RlcVBucEFnWUhwZG1qZlNaTCs0MzFwc2VON0k2bTZR?=
 =?utf-8?B?TDFPWGJ2dlVkOU5xQjRXSDhBZFRpd3NpWis4T2RlRHpnamhmMGlOSWNzc2ds?=
 =?utf-8?B?eWt3SzJVYm5WN3NOZER5aytMejNvY1UvZjZ6TldJVlcrSUZLUXZNWk1Vd3F3?=
 =?utf-8?B?WUt6dkE0RGtXVVBvQWNZL2kycnVuRkFmWUlMTy9HQS9TUGtmUHA1QlRqTUFk?=
 =?utf-8?B?WjNEdjI5cHF6dWcyRGpvaUloejVJckM0Vmlpam1QZ2dJQXRDd0t2dU8zRVlB?=
 =?utf-8?B?endRZzhCOUNOZThkZmMvUWM3aVJQSGV4VFVKZFNiNi9GR05FMS8xS0Fubmxi?=
 =?utf-8?B?S3FEZHZlWFZZMndJRmltOGpoeGFHaVVmQlJjcmhzaytldnhXK1FKODA1dnBw?=
 =?utf-8?B?VHhYbk1vUEdZY0VKVFZwaVdWTUpPWTNocHkxNVJXeEhITFFpZnZqQ3NJM3V6?=
 =?utf-8?B?SHBYcWMrT0xTNmVkdFBWcENIazVwNDJqKytoMyt3ZXhMZzVZRzhDNmNNT3I2?=
 =?utf-8?B?cGRqTU92eFlQQmQxMkVQUjJiUlhLK3JzRkY2dkFMeHMwWEJvei9PR2lPU1hJ?=
 =?utf-8?B?eFkwcEUreTBxUWlMYnlxQXgwVkFxMzMxZUJCMDN6bStmR2o3U1pLWUNTSFVS?=
 =?utf-8?B?VE0yS3JjeGhxZWJISnVyenBYelNkRXdSL1dVVXdKS1k1aStTRzNMeWlFekdu?=
 =?utf-8?B?K0JHaG1xeW9CNzhkV2pQTXJHU0RZdlQyVC83amNtak8rTit3c09PN29ZYXBT?=
 =?utf-8?B?RmlkUDRKRkpwRVRKR3ZSTGxCd3F1bUhnZk05bEhUWWtUWVBrSXprNXFZWXZ3?=
 =?utf-8?B?elo2RC9uTytzV2tVbTcrYmFSR0ZxNkJFbzl3WGRxM2tvdFNTWlRBVUJIdTRH?=
 =?utf-8?Q?QWUrJFD7g7/L7c+yp+ExPxfHJ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6052ac2f-6f30-48ac-e016-08dbb5309208
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 14:40:41.7633
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rb0zTSoDPNifnAko7eLDeht0E1ylxUnXXVQVeaqeGJZPl/c/sKnSIZdFAdmR+58MDgK5bsNzHCe4vCri2OuI6A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9925

On 13.09.2023 01:21, Andrew Cooper wrote:
> We long ago fixed the emulator to not inject exceptions behind our back.
> Therefore, assert that that a PV event (including interrupts, because that
> would be buggy too) isn't pending, rather than skipping the #DB injection if
> one is.
> 
> On the other hand, the io_emul() stubs which use X86EMUL_DONE rather than
> X86EMUL_OKAY may have pending breakpoints to inject after the IO access is
> complete, not to mention a pending singlestep.

If you look at the uses of X86EMUL_DONE you'll see that this error code is
not intended to ever come back from the emulator. It's solely used to
communicate between hooks and the core emulator. Therefore I think this
part of the description and the added case label are wrong here. With them
dropped again ...

> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>

Jan



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:49:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:49:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602336.938841 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnex-0006xD-G3; Thu, 14 Sep 2023 14:49:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602336.938841; Thu, 14 Sep 2023 14:49:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnex-0006x6-D6; Thu, 14 Sep 2023 14:49:35 +0000
Received: by outflank-mailman (input) for mailman id 602336;
 Thu, 14 Sep 2023 14:49:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgnev-0006x0-M6
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:49:33 +0000
Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com
 [2a00:1450:4864:20::32e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e98c4d3a-530d-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:49:31 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-401b0d97850so10748665e9.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:49:31 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 z8-20020a056000110800b0031f3ad17b2csm1950578wrw.52.2023.09.14.07.49.30
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 07:49:30 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e98c4d3a-530d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694702971; x=1695307771; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=zne1OX1oDPam0QWlrxGvVRukK39lTInpkTsnThBGQlQ=;
        b=t7BSIzdT9ypqjxz5zvOrhq/iRIeNL8rlRjtdOKZp5oRDkLathGorc/RrHhJaZ1XnOg
         ZgBHaAhbwka202ZwOpHX20s/APTANRSozJbuDDPS2hufNz5oIu/Ej8rVnF+72X9tNcEm
         Xz1i/7g2wWNHC6a+UoaVHCkYLSzuhxEt8lbJ4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694702971; x=1695307771;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=zne1OX1oDPam0QWlrxGvVRukK39lTInpkTsnThBGQlQ=;
        b=bl+7YaWBphcigWdSygsykiSzXqoQ5umCoJ9bqnhTF4otBj/BYfHagqCLmBwZs9vYpN
         rFkFiYoLkPX1Tu3ub0aCHPXr942xZjGCMFEzsgnov54ROZHO1KR53SVJoml9NGO9CySW
         vS3LNrnb3zkLmuF4LSho27Alb4lPwMcKVxUs/UkI3HUyK5RNI6QVidIFkigqwrbsSSEK
         S/NY/dpuN1053ST6/ZLSp3UyHch4uLZFBuUlWvZ8/r8MwlkzRxWKjsSW0Yap0NxWgIcl
         YGiS1bcSHf/Nkl453r4ycVSN8dRg05gJ9OjRbor8CWjy+cX7piUKc7cfpSaKVOkQEMKx
         5wUQ==
X-Gm-Message-State: AOJu0YwipjfGqoYj+Vq8bKobZOkd1gsOv49uoMIK5LQZb6UhkkEFclaN
	QfEH9g6JDKecHuhcEjANkB6Azw==
X-Google-Smtp-Source: AGHT+IEFaX/5Wy1MXoj1BVx54egJZItwM9C+1G6JXnc2ro7OKSnZpQWH+/8yDPenwQDJybRd8f4WQQ==
X-Received: by 2002:a5d:518f:0:b0:31f:a9db:b838 with SMTP id k15-20020a5d518f000000b0031fa9dbb838mr5316861wrv.15.1694702970802;
        Thu, 14 Sep 2023 07:49:30 -0700 (PDT)
Message-ID: <bc8eaf44-b93a-c6fc-01cf-4f39835d0e99@citrix.com>
Date: Thu, 14 Sep 2023 15:49:30 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 1/5] x86/pv: Fix the determiniation of whether to inject
 #DB
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-2-andrew.cooper3@citrix.com>
 <d7c3d67d-cd5d-d2c8-34a4-2e0c99ebe92b@suse.com>
In-Reply-To: <d7c3d67d-cd5d-d2c8-34a4-2e0c99ebe92b@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 3:40 pm, Jan Beulich wrote:
> On 13.09.2023 01:21, Andrew Cooper wrote:
>> We long ago fixed the emulator to not inject exceptions behind our back.
>> Therefore, assert that that a PV event (including interrupts, because that
>> would be buggy too) isn't pending, rather than skipping the #DB injection if
>> one is.
>>
>> On the other hand, the io_emul() stubs which use X86EMUL_DONE rather than
>> X86EMUL_OKAY may have pending breakpoints to inject after the IO access is
>> complete, not to mention a pending singlestep.
> If you look at the uses of X86EMUL_DONE you'll see that this error code is
> not intended to ever come back from the emulator. It's solely used to
> communicate between hooks and the core emulator. Therefore I think this
> part of the description and the added case label are wrong here. With them
> dropped again ...

Oh.  I see that now you've pointed it out, but it's far from clear.

I'd suggest that we extend the the debug wrapper for x86_emulate() with
an assertion to this effect.  It also has a knock-on effect in later
patches.

With the DONE part dropped, this probably wants merging into patch 4. 
Thoughts?

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:53:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:53:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602342.938852 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnim-0000Kx-0T; Thu, 14 Sep 2023 14:53:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602342.938852; Thu, 14 Sep 2023 14:53:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnil-0000Kq-Tu; Thu, 14 Sep 2023 14:53:31 +0000
Received: by outflank-mailman (input) for mailman id 602342;
 Thu, 14 Sep 2023 14:53:30 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgnik-0000Kj-U5
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:53:30 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on20602.outbound.protection.outlook.com
 [2a01:111:f400:fe12::602])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7776cf67-530e-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:53:30 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GV1PR04MB9514.eurprd04.prod.outlook.com (2603:10a6:150:20::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 14:53:27 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 14:53:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7776cf67-530e-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nnlX5wTuUXqG1bUwRRhSSWl8tYjpfsUoYAFss34tzUpVgCfc4cn5EJPxvUuLG2AvuTifnaVvcCLa73YTqPrFOkEsGn+M+1d58sjQP/9bWfeqFHcO0EGIRUb70/J6Ro1WCftuY4VI3FhDs6QtPsubb/+8Z+KIIX1zuy8A9X4O0psgybqPeN6k4c4KdzM5cru33NOOaaJ6L1amjbeGoy68mUt3w2pQ9BzZcgHPysTwdWOSqNppgK2My9C6eWHeCtRXTwU8F63bBTmkS1ssJY3ZRpfUgLotmDlY4nquTkG0qS7gAbRQC4DlIYNlID3NFi3xPWp2Dxa/tg8VyExgwJMJxg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jUF9RqSdud9m6HpQbFYzRwOa7FnYCIHateaqBJr+Cws=;
 b=l6puYfUrRuJ1ujJ9pnCmOlZriGh/wd06wkjXzVLJIRdsvsfTLQ6JTNuRUsraq3yUIgQ6M4DljbkfEpa2NMq/+DjZiSGiA0RImhtJn/DyGCTvUBuQsg/ayvrr9Hq4TJX5emTjtIRiXBFPNLfNI0ztFWaCLCzgx//U9KP0tJiG4CqNb+rzXViubcFVGQZpAIBmyoZ1YhSDkB8qVCYUID7udtgdmPOUso/xe8ylrVfKiyIs+HoHNt0+R5HL42tdDCuOmhgx56YvAqai7xWp4BUQsnQpg49WLwRDBp9IX1784rB8FR4qDIJrARQLh+jcxB73mQWslCe60qu/L5N+S/tdVQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jUF9RqSdud9m6HpQbFYzRwOa7FnYCIHateaqBJr+Cws=;
 b=myTtR7KMdZIFCpMdmE3jy1nyXlAwMAzfcFfONidPZgwr3Lg++bMDbuHudOxyP31zb5mH6qkEtoZ+YsG5hqCpsuXx/ahwnI8nFs+r5ZyUfoD6unmgiVqfoYhhaM68p/d1d71HWW4UBGjCsYmqPa/b9XdlpJ+IDkoUPrQiL5BLXySpfMp6d94+L2eghIQiqjfcCnRPgov4DGobh4UVYqYwSIyowm9DvmXHw2mdKAMTqdvtsShp0rblt5H5QFWM7ZNstAPvmZU+6JupM1wmEgPjE166lNlsvv8g9zwmcxDtpxATHNE2EOJLNVPAPTanjmQr4I8f7uxh4MgB2ICzsdquJQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <126020f0-3054-11d5-c7f9-1f02750cf815@suse.com>
Date: Thu, 14 Sep 2023 16:53:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 2/5] x86: Introduce x86_merge_dr6()
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-3-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230912232113.402347-3-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0124.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:94::15) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|GV1PR04MB9514:EE_
X-MS-Office365-Filtering-Correlation-Id: 1f282521-06ec-4e33-a5cd-08dbb5325a64
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	sDxw4xuI7B7AsYt4JNxbhQnKA+ggQeuPmYZFl5I8iqk/VIFrxpPtvl4BcvVL4piYPK7rO5dcZHTIm4lTVqrKd0gzOX/XHCK1weoYGh+Bq5KcAZ/m6eJRiEbQU8dfhmWWuSUCy9gwTltX5LnlE3aW46tWtgRTqCTRBJ2JwGllCpFIfLWnuXs/FJ/Zmj9qz6MT+NHt+k8mHnLD+8jTnzT82a7fkGIROboxNJklUzfE4muzYHDxnwvElXfjmuN7yjsCW/OEJt+LUfyLuJjaSnDmRHF1RR0zLMxECle9Mz9rEz+jHY2tlzxAA2MkneepLLesaoP37sTb3gP7ht9RF3kYxR7xfpPvSqy8K3QOl/v0HvDfyyTal+AVnpcBmjf/wY3gxTEWB77jv9NBI3CXN93+j8LAzHbnXqhWHwAsUYpeWE5n7XRWe8UxBp4utlLW0bNyP4kEttd8hJwkGMHYZ+4GV/6jPYWT2M2qpPvFYHTaRTt816YxbE2OTqJKavxJ3j/jbKEz4UN6xRw3kjmAGvcQ5ejlVYNbCMNJ56NXTyE4wKADHbOR4J67gLaJva4wvduHYiAVlaCYBOmDk0Lq5m+AeqqHhOEgWWsV8tHvvDt8g/OJ93BcfajiUwOTTU/CGq0Laf7cSm4NUeV1E/+WhodOBw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(136003)(376002)(366004)(396003)(1800799009)(186009)(451199024)(6916009)(316002)(54906003)(66556008)(41300700001)(66476007)(66946007)(478600001)(38100700002)(31696002)(36756003)(86362001)(2906002)(4744005)(5660300002)(8936002)(8676002)(4326008)(2616005)(31686004)(83380400001)(26005)(6486002)(6506007)(6666004)(53546011)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TmR6RHlHUVg0RWRON3dlVlFoZ1lteGMwcHRQZVhYd1ROdnRXL3JkTnhBUy81?=
 =?utf-8?B?OXE4OTBhVURwdXNoUUFtVWpENVUxc2I2N0s3RElVRktQY2hUR0tXWGRvZDFy?=
 =?utf-8?B?Q3N1M2hzUW1wK2lXbUpqQmdaRHRpME52MUJZa25wMUR1QkFnTXVqbzAxSjY1?=
 =?utf-8?B?T0kzQ2lleS9yZXkwWXJhMVVFSWNPWDFMdGhDWTB3dEFwbzFNRHd1c2lONGRa?=
 =?utf-8?B?aTB0aVJqc1NzeSs2RXpzUDRXaFR2QldwN1VxYnV0RkhSQ1ovMGxBTWhnZjlp?=
 =?utf-8?B?UmFhWldqQ0tNSEhOSitNSFFxa296dTZ6cVVjRTRvYXhINFRERWdiZFJTWWh0?=
 =?utf-8?B?RjFVbFNZbHdLWlYyallIMi9CcjJXdFNUVERtYzQ2S3gzbEZ1NGNRZEdqby8w?=
 =?utf-8?B?YXhvQ05HWkhjRE1ab2RiQWk1dG1qd3gvUWhadkZFKzNXL2dPY1EwU0dCWUFK?=
 =?utf-8?B?WUNIYm5PNGZMQ3AvWlp2a0ZCakFiMFRidHU3dGhObTNqVDFFVnZpV256ZStQ?=
 =?utf-8?B?UUtZd2dZc2RFUm1mWXgvUGxCSzd4SVhhRGdJa0ZmNVN2V0NQQW03UXBDV1NK?=
 =?utf-8?B?NExzT29KZGtnV3IzeEFWZStlaUQyMGpKakVYVFdKTHNFUi9TY0d6YUNWQkdZ?=
 =?utf-8?B?V1d2MTNrMXphdXlFMllJRUVKa3RXZTRoUE5uaEF4RFF3aUlyREVXN1dzTUZ6?=
 =?utf-8?B?a2RENlZ6bEk3TjNqUjNTWlBBeGJZaHRVUGN3Zm9wVGlrTktYaWc2TzlNRHY1?=
 =?utf-8?B?WTB5MnNGU00xTzQ2WEtwSEwrV3ZLMGx3Y1JmUWdQRFluVTB6c0x3NlcyY05h?=
 =?utf-8?B?U0VvMnhobGtQZFI3L2k2Y2NLNURLRjVCekV2ZUIzTXFxZFlBOHBmeWExTk1X?=
 =?utf-8?B?cDR3MVB3akRVajBqRlVuaS9wc1JxcVpZcUY2QnltU3dGYVlaRkEzOGx0SzRK?=
 =?utf-8?B?L0p2RkR0S29Ga2pNQWRkbnlPejYvTjRwdExlNmsyZko4bmhXWWEzd3A2QUdI?=
 =?utf-8?B?N3dseHZ4VHNtcnU0bDNHMlU0OG9sdGw1UG5uZG9iYlJXZTdzWStpMlFQb1Qr?=
 =?utf-8?B?dzJ4TUEzN0xLZkNENlhlbnVRMTN4elRSQ1NHdjVDQVpzWSttcGg1YWhJb3Jy?=
 =?utf-8?B?R3RadU1Vc0wwSFg5eWVuNElMTUlIQTdTWFoxdEVpck9KaXRGcXY0R3R4UFZ5?=
 =?utf-8?B?K2g0citKZVNEZzBaL1p6TFBEM25UV010MGxnZHEyL0M3Tm5VTHQzYzZVMzZw?=
 =?utf-8?B?ajRXaGZOTWNGcU9URHpsTnpZc1MwVnhPMVRRazlRZU9HMUp3aWNUTzcyRzVz?=
 =?utf-8?B?VEJCUElqbVhPTW43VnhHRkowZ2Zqa08yZ1ZVd043bTZ5NkRUNmlJd0d1R29k?=
 =?utf-8?B?V2tUTVRPWStMTzQ2Zk9FaTQ4bHdhTXNxemhkOXU3Q0J6cDM5QW1tV3dPU0lV?=
 =?utf-8?B?NDF3Q0NnQzRPR3c0LzVhUThBQUkxdklsZlNXcnRYRmt3d2QvdXpNRk5Bd3pV?=
 =?utf-8?B?aURoTDlHcDVWdVZldTVjd1p4ZVU5Rkh6VjNISit3SXB4KzdXMTJDWTZOWm9Y?=
 =?utf-8?B?TTlRUXEvYVVrSDlyeHBXSlZ1QXhXVDZiTjZuVVduSWFqL0l1eU5pM2tBbHRp?=
 =?utf-8?B?RWZUMWhlNjYvNDdRbHpzbG93emdwYzVxY2VkNnl5ZklNdE5GUGE0ajIzRnNB?=
 =?utf-8?B?dWd6dTRVZEZid1JiYUZwWHJRcFRHK2krMFN5UDhHK05ESXdEblZTWC94SUFG?=
 =?utf-8?B?T1dzblZkUDhGQTI3U0FKY3FzLzZRaDcvWVR6Z1RndDV4bUo1WUNxNmd5RUll?=
 =?utf-8?B?TTNrMHhqOW1mWisycEpBL01NVHVsci9vQmFVU05QNnoyOEZyMk9pbndBZGY3?=
 =?utf-8?B?Q0R4aDgyd0Y4ZlJVUmFZMmZ0bEJrZys4RGRqSGQ5eUVBOUxWUXV3dUNhdHE3?=
 =?utf-8?B?ZGk5Z0h4NlhsUmEwVGl4RVd4MmUrV040UnVsRVlqeEFKVmdNemlDMXByc3Mv?=
 =?utf-8?B?OEVyRllPY2gxeHhwV3hyY3BxUGlmVmRrajNza3dRS3lmTVVoWjFCZ3FjUXg3?=
 =?utf-8?B?clFZdURpVkh6cDVLR1JFTlNyK0dVaUFnSS9JWjh2c3NWcjBRVnBaS3J4M2pO?=
 =?utf-8?Q?RY0EBhhejlDtNgWvI2k0VnsBx?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1f282521-06ec-4e33-a5cd-08dbb5325a64
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 14:53:27.4128
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: UXNF713XfdmuVrw/iz9dxX/TMtoj4cTaDLga/WTs/JG8XHGzRFdzVoLIhNMSa9sqoFZ11bdX3P8m15ZB15/MvQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9514

On 13.09.2023 01:21, Andrew Cooper wrote:
> The current logic used to update %dr6 when injecting #DB is buggy.  The
> architectural behaviour is to overwrite B{0..3} and accumulate all other bits.

While I consider this behavior plausible, forever since the introduction of
debug registers in i386 I have been missing a description in the manuals of
how %dr6 updating works. Can you point me at where the above is actually
spelled out?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:55:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:55:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602347.938862 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnkZ-0001Ho-Cf; Thu, 14 Sep 2023 14:55:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602347.938862; Thu, 14 Sep 2023 14:55:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnkZ-0001Hh-8g; Thu, 14 Sep 2023 14:55:23 +0000
Received: by outflank-mailman (input) for mailman id 602347;
 Thu, 14 Sep 2023 14:55:21 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=J3lF=E6=citrix.com=prvs=61487cf85=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qgnkX-0001HZ-PP
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:55:21 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b6fbd2cf-530e-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:55:18 +0200 (CEST)
Received: from mail-dm6nam04lp2045.outbound.protection.outlook.com (HELO
 NAM04-DM6-obe.outbound.protection.outlook.com) ([104.47.73.45])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 14 Sep 2023 10:55:14 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BLAPR03MB5538.namprd03.prod.outlook.com (2603:10b6:208:285::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.38; Thu, 14 Sep
 2023 14:55:11 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 14:55:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b6fbd2cf-530e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694703318;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=Mt9aN54ejQbFoFkr2FFPbDS86iMPLHoIot1wdQVbO0Y=;
  b=bvVZ7qJA6W0HcamHmj8QC+nu2aoDnKzm+wqGB45FhxKoVLYNlvyKDBkf
   0hQ+Km+O2RIG0Kx/sK5QJQMLUl4L0MV6m5JANhbVVPB15he3NYjyjkmRU
   BMasRuX4lgxz1cddE9MpzcuhZZhR/Q5KN04uydsXBBjdGOtYZBj84/wZn
   Q=;
X-CSE-ConnectionGUID: VdC5uRMKSXqRrfKVTOo+zQ==
X-CSE-MsgGUID: AnbRG7/ZSpiIpepV670SVQ==
X-IronPort-RemoteIP: 104.47.73.45
X-IronPort-MID: 122663832
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:jOyt/qo9g8lmzFFv6S96dnR6XNteBmIrZBIvgKrLsJaIsI4StFCzt
 garIBmEaayMZmHzctgjbti//BgP7MCDnIcyTwc6+y1mRX8WpZuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GlwUmAWP6gR5wePziVNV/rzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXAA4BRU2evceV+4KicPNipfofC86oLrpK7xmMzRmBZRonabbqZv2WoPN9gnI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3j+OrbIe9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAthMSuboraQCbFu772oZMjJJEmmAufiYkkOmZYwAc
 3cqw397xUQ13AnxJjXnZDWorXjBshMCVt54F+wh9BrL2qfS+xyeBGUPUnhGctNOnM08SCEu1
 1SJt8j0HjEpu7qQIVqC8p+EoDX0PjIaRUcZYisJSwYt5MHuposoglTIVNkLLUKuptj8GDW1z
 zXUqiE73+kXlZRTi/j9+k3biTWxoJSPVhQy+gjcQmOi6EV+eZKhYIurr1Pc6J6sMbqkc7VIh
 1Bc8+D20QzEJcjlePClKAnVIIyU2g==
IronPort-HdrOrdr: A9a23:WdARgai80O4bhLr08jWTsr26anBQXgwji2hC6mlwRA09TyXBrb
 HWoBwavSWUtN9jYgBZpTngAtj+fZqyz+8R3WB8B9iftUzdyQ2VxeJZnPXfKl/baknDH4dmvM
 8KGcUTNDSzNykcsS+T2njILz9K+rm6GdWT9IXjJgBWPGJXgs9bgTuRQTzraXGeDDM2f6bQX/
 Knl7p6TyzJQwVrUi2UPAh4Y9T+
X-Talos-CUID: 9a23:b+aFcG/zaWsyTuxmde2Vv3AYMZ04SFj+90fJGVW2KlhVb7rWW2bFrQ==
X-Talos-MUID: 9a23:wkXkjwbVooucOeBTnjnmvh49c/VT+6WPEE0Vr8tZ4/K6DHkl
X-IronPort-AV: E=Sophos;i="6.02,146,1688443200"; 
   d="scan'208";a="122663832"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=n4eDCsVwIREddypJRWeR8HO+qk9A3sh5bDmpGS/m9UPh0gDNrvUrNI1W3jNTgFA3ZIWPcSdKGaWvc+i9kZk51yIAPYu1qgTYiHYmKqdrUI2TQXPbb+x1nBaA9HjIixO3CE5j/a0US8hoim+GWlAVbCA2Nea6RGwSpcOBIHo02/8U1RuTxSuNHZYPXTiQknlayu7SA5O7AqFYDQoJYtuP1f0dBfsYo4nEf8S76REn+8TYGi/Shfdb7USHpH+2KEUjRCPbqVOTcmFOy1GhRTsMftlEgtkLXReaakD2hw7nzClzCzZL2U2Nxmwv+TT7ItPNHXh0dWeeyorp09LiiPvw8Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=knDgYklc6VT0ex6NEBjcbufcJ5EGGOD3BbMq/Zww6nw=;
 b=Ip8+f/rvyJdf7LPm33hIW4CVMoT2t2tmzojNFDQ/jesQzs9yYTbYZWCr7RU6WaNgb1EeeH6hGH49kkkybmqtWcXbyrlQLrtFPc+DWILvI+U5bvymMC3lPc6RwwyH1HskJKaZ+ajdlpvsV89arJVwBfbMLw1TcA+QBck46dnJfbAaN2eZdirvFLobT17wU3wiTIdZeLRCy86TtbycxEUHZxAKV8f4X5DXgjBQ+MI6EqGnDTJ6Gf/sfO6up92EHVapNh/kouQG7jHeoEcdpwe7XU6IwewRTorRlV5+41T3qz2uy5g6AH35WszFkTMM1Gx+lI7thNgBJCNF2uYonl4LeA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=knDgYklc6VT0ex6NEBjcbufcJ5EGGOD3BbMq/Zww6nw=;
 b=vEtVqk922lS+z3z7yJaacQrr5JZsYMDLf3JiL8wmJta/UL+EVWZIkRoJUecsq1WkZLhHH81fuRJkFgNqESZHMc8J8M9S/cQRiughz1suksgz+J+LvlWsEPAWv/J/2g8yLm372/S79Ga1a7WgLWx+4WGWvQM3ISRnBklEroHbCKQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
From: Roger Pau Monne <roger.pau@citrix.com>
To: xen-devel@lists.xenproject.org
Cc: Roger Pau Monne <roger.pau@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wl@xen.org>,
	=?UTF-8?q?Sol=C3=A8ne=20Rapenne?= <solene@openbsd.org>
Subject: [PATCH v3] x86/amd: do not expose HWCR.TscFreqSel to guests
Date: Thu, 14 Sep 2023 16:54:36 +0200
Message-ID: <20230914145436.92358-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P265CA0264.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:37c::15) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BLAPR03MB5538:EE_
X-MS-Office365-Filtering-Correlation-Id: f6d5303c-bee6-4ee7-7737-08dbb5329873
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5kvCp/ZTIV8EGwyNT5zseK+rRk2BOuc1exj5I1VhKj6ACjz4DYTVz3ALAHkoOadqPq7zYUt5XSABu1LB74ZYuqa8rqWR4I2YGFJsDIcP/WHbbneQsmA8Geq3rcohI0P1BFkovtTYpZ+A263P+514wPuaezp95sCZzXJ20WUv82IMFYdGZbs1c++DkgoyiECdyWJwIeaMKlDkJJsY+VEmACwSs0UPNp/+pLPRJaeFFU1iLh0LN4JMi6bbCl9VvnyqkGf6NGbtQvlNTdQm54J4aAKZrqQpJ2GS/m6O5B9vD8h+dAGq4jfcS1JJtVQ4c2K2VIqpDIGMd3LjFEaNlXrO1Djhc6BWp8ZX2zS0j+ZR5TVfVe0f/n0hqg95ZhFuJCYAmv/MQoba+2XkU68DxBGR0DvUUc2+nXmj6UGOjYkwMIsg18iM6VE/zxx5YDPuXMZxqWYbZnhpJFN85TxNQ/qLg+2SCM+xsJV7NDkXV5kxSrQCmRZBsVzlo8lCdCthxs3X3HBngiAHryhEKAVanI8YN0RsXXkI/mOpXDE50SlOD5o=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(136003)(366004)(376002)(396003)(1800799009)(186009)(451199024)(6666004)(6512007)(6506007)(6486002)(83380400001)(82960400001)(38100700002)(41300700001)(66574015)(478600001)(66946007)(36756003)(316002)(2616005)(26005)(6916009)(54906003)(966005)(66476007)(66556008)(1076003)(5660300002)(8676002)(86362001)(8936002)(4326008)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Qml6VFhMUDh1UEZGZnlUWlg5ZEZwN2Q0cTFQd25EWXJqQjFhRTV6bmNvRUlo?=
 =?utf-8?B?V1lwUlR3UTI3SWFwRW81UEZFajBSdERWTE05VWpXMkZWcVZIY1BNZHFGWHNU?=
 =?utf-8?B?VTJrclVoLzJ5Ymp3c3BvNUFzUmlTVE5ud0JER2h1M05Hd2Y4MWdlbVlTSTFP?=
 =?utf-8?B?ZGJMOHptTzlQZHRIemVvV08renJVK04xYU1qN3VnamZNd1dtLzV3dUlMMy9p?=
 =?utf-8?B?YlZXQ0F2OEFJdGk4ZkhjQnFJZDhrUkdOZXA3bnduYTJ0bDdXRlpLMUtIcGdD?=
 =?utf-8?B?SloxWXV0Y1FmSmprUXBRWjdUYTBNZ1krQ1JlRDBNbFZBR3d1cWtPSncyckxU?=
 =?utf-8?B?TUViUjNzWXlodm9VSGNtcURHSVR2MXVLYjNjU0lJUW1YV2d1aE05U21HWEdO?=
 =?utf-8?B?MGJXZEg1bTJkZC9IcWdjYi9aSmZCQll3OU8vblJudzMrei9OcGJ3Sk5EV3d4?=
 =?utf-8?B?R2RRU3d6SnN5bE5WSjlweGkvd0ZVZ25jSTVpVGRua1YxUUVWSFFyWmVYSjZB?=
 =?utf-8?B?czRYV1RRNmJFd2tiTWl0ZFk2SUZySWRDNmtuZkRPY2JwV3NhYlR3MjhnUnNi?=
 =?utf-8?B?Nys1TnY0Z2pqQ0RSdXB1TXJmVjErUXdJaGdQeWdndzlZZU11eEdoZURiWDFm?=
 =?utf-8?B?K2V1UlZGeU1QbS9XRlZqTmNuOUtRQkI5dHFua2NkUk0xS2NNTGNlR0RESWNn?=
 =?utf-8?B?T0hnSElFSjRCVnF6TTZzbnplQUM5eitIR2xIZjY4T2hBemNUbUpYUlFSRW1R?=
 =?utf-8?B?OW80bUpaSWVpcGt3b1hXYlpwN3VYK1hlWDJ6ZGFPbFdWMERCT2JLSmJ3VkU1?=
 =?utf-8?B?WWpMNUR2cnB1TElDVHpHNE9FL0Z4QlFQSFhCaTFmQU9aY1p6UnNRdU1lcEdT?=
 =?utf-8?B?cndkOUIyOTVLTGFJUTJmVUpoRGJxVkNXZUZqR1Y3bENncmlVMlk2ZkgxWm56?=
 =?utf-8?B?VnF3M1g1QWNWczc0czRsNnZKLytwSlFCSlhMWXJGRnlSTVJmQUczRDBxU2VG?=
 =?utf-8?B?UENSME9rem5YK3F6NUlZVlRjbVphQXd5YlkxM0ZuWUx4b0dONGlDbGE5N0FO?=
 =?utf-8?B?bjdEYVg4V3U3V3pRdkFrRnJGU2hoZkVENTRaSHlNOGxoRXg0OWRPcEtEeUxP?=
 =?utf-8?B?MnZTbm90RW9LenRzQ0dFV3cvM1A2Zk44UFRXdy93ZDNOZVp0UC9KYVJad3U5?=
 =?utf-8?B?akorVW5XbWQ1cDAvRUlwS2NFcmpQZHRhUW83eS9ISU5lS295WVNvRDE4TzRL?=
 =?utf-8?B?cU96QVp6dEFwQ1hibWRXSG9qcFIwUEJpeWNjbFNXOEdIZjRDb1hTcEVjbWRi?=
 =?utf-8?B?dGNidkpjVDRWT3lNNXpJYmFyMVlzRTl2eXFteFE1ZUZ1Zllpd3MrU0kyKzIr?=
 =?utf-8?B?Z0xBMUYrMDRZbkdIVlF6Q1pORWU4Z0ZlaXJ6UEZyOWd5SEFYd0ZiL2tkZFFC?=
 =?utf-8?B?WGU2ZWIzd0VkNUZtckk5V3hyN2NTNUR1aElsOTA3ejlET0gxR2x3TDE2aWNR?=
 =?utf-8?B?WFhsb1R6SXZmTmppWUozRmtNMmZVZFNLeVpsbDhsbHAzc1M2WXNxVzNpVW9X?=
 =?utf-8?B?NW1NTVlydWJ3WW5FYVNqd2d3WHFDTmtVdS9aZmY3eHNwVzAyWDRPNlNBWExG?=
 =?utf-8?B?cm54NWlJYVdrY1pmMDVRSUFlTTAvbkVXelpUdi8yd2xFRW52dW55aVZOMnAr?=
 =?utf-8?B?TURkRTkxUDc1M293ZndXRDBWelJoK2FnWmNhcTY5WDBZTzdXS1hXZ1NKSDNI?=
 =?utf-8?B?RzVoNHVId0RjaGt2TFlyRC9DeTEvYzZxd1lvMG9Gc3RSOCt2dWZhdnRZVUVQ?=
 =?utf-8?B?QXdON1FDcEVGaWFndzliaEo2K3VvZHBqRU5xYlBuQmNWU0l5QWFBdEpkenFB?=
 =?utf-8?B?VTVGYzFLeVdwdUFSVXFtR0M2Y2FQYS9HTlVUV0ZHS2E5TWFDaHhpUld4b3JH?=
 =?utf-8?B?bTVxbFkxL0JDUWRyZ1grQ0lLNHpuMUlNUzRjZEp2dFhnVksrSEdhMkp5ZjJi?=
 =?utf-8?B?eC83L0d5ejBWaENFT2haQTJEYkFaY1FnYWZWd2ZvY1VKeStVd00vb3ZhZ2JU?=
 =?utf-8?B?enlHSGtYaDZOa3VKU2RoK0hPWDBFc2VrOUkxcThUaGV3MFArLzZEa2RJSEF4?=
 =?utf-8?B?TFgvTlk3d21kZkR3M3F5NXk4eThZcUY5amRxQkt4V3UrZ21iV2VMcHlkVVBB?=
 =?utf-8?B?NXc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	AX/IOL8Zrt7WnrFbU118qgbtYMN39UpJwVjyk94riyFetrzQEL8eGiAbHDo3rzvUKDLLuqEqjX7n0/akJjoCGDGWtdDA9meod+8cFS8ejyFY9rWlwe0WLdq+ksf1C+LQDDKn5pZz6lRcvHyvrDcB1cieCSeqZS9qsvMk5vgGbb/7XyZk27VzETKLyWvD+EaC37mXgBKfn0Yes0blpHGY/avrDmf+LZb49j9ZjbSTbWpWmM8/UZvTZafBrulXm5LGUxKIGQ2oY45dr5clr3OCGTAgehSM2/JQvA3d7WX6KXgF+FR6Ry36eL7vAo+AxTvi7MrApdiPiS/qeII/cAqfav3KNKcMx8V5gy+fHZQUxJ29hZk1IgBW8CbVJKMQPIbE/S0a7hV9euevnwl6WeUS/Ikm/xVDgxNzGBw5rZ0pUjJ1a4am6QxgLmhUkhWrQQwanFKiZAwJhU4Y5MoNVOmfxnbDVzW5S5F5vHK+JTSMMVHlwAvFuaRkIa7DhGKjw70aAm8hkj27ezjergJc42Jz4E3wShHgDR1tL52OxfI/NiolkvPtdtf9mHRlS7DQotQgmiRLhjOaWp3p+xjn8wFh2l64KwNFhCDxOKboS7Vwre+zU++f0aX9dQe6LtjSjow9ZKeqQ9njqwqWfyh7LFL8GRy1Ejo093/g4aNMvJYaoF64C/N2WQn/FhEEQr/T1Cj4AtnZ4Ki/ah+TzWyypeLjgnrj1gzCm9lBBIFsVMqqWSVgwHN5BDZBiRUfdl/sujswRDnVbS3SA9rESDHxTr6uf+UIZ0Nmgup5+v6puNKpt90IAA9vFMzjZ5eryAjM/AiEyaPdRrhDQBPxk0p8VjHBxlUV0FgnRiAUCn7mcnwelS0=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f6d5303c-bee6-4ee7-7737-08dbb5329873
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 14:55:11.6350
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: I1KBxoN2EkUGrVXe5XbdIobshCzijzYgdmodtWc+Q7w5p6J79Y51sY0Xj8F3Ich9pktV0G+zje/gWVyza1ZQ2g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR03MB5538

OpenBSD 7.3 will unconditionally access HWCR if the TSC is reported as
Invariant, and it will then attempt to also unconditionally access PSTATE0 if
HWCR.TscFreqSel is set (currently the case on Xen).

The motivation for exposing HWCR.TscFreqSel was to avoid warning messages from
Linux.  It has been agreed that Linux should be changed instead to not
complaint about missing HWCR.TscFreqSel when running virtualized.

The relation between HWCR.TscFreqSel and PSTATE0 is not clearly written down in
the PPR, but it's natural for OSes to attempt to fetch the P0 frequency if the
TSC is stated to increment at the P0 frequency.

Exposing PSTATEn (PSTATE0 at least) with all zeroes is not a suitable solution
because the PstateEn bit is read-write, and OSes could legitimately attempt to
set PstateEn=1 which Xen couldn't handle.

Furthermore, the TscFreqSel bit is model specific and was never safe to expose
like this in the first place.  At a minimum it should have had a toolstack
adjustment to know not to migrate such a VM.

Therefore, simply remove the bit.  Note the HWCR itself is an architectural
register, and does need to be accessible by the guest.  Since HWCR contains
both architectural and non-architectural bits, going forward care must be taken
to assert the exposed value is correct on newer CPU families.

Reported-by: Solène Rapenne <solene@openbsd.org>
Link: https://github.com/QubesOS/qubes-issues/issues/8502
Fixes: 14b95b3b8546 ('x86/AMD: expose HWCR.TscFreqSel to guests')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
Changes since v2:
 - Adjust commit message.
---
 xen/arch/x86/msr.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c
index 3f0450259cdf..c33dc78cd8f6 100644
--- a/xen/arch/x86/msr.c
+++ b/xen/arch/x86/msr.c
@@ -240,8 +240,7 @@ int guest_rdmsr(struct vcpu *v, uint32_t msr, uint64_t *val)
     case MSR_K8_HWCR:
         if ( !(cp->x86_vendor & (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
             goto gp_fault;
-        *val = get_cpu_family(cp->basic.raw_fms, NULL, NULL) >= 0x10
-               ? K8_HWCR_TSC_FREQ_SEL : 0;
+        *val = 0;
         break;
 
     case MSR_VIRT_SPEC_CTRL:
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602353.938882 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmK-0002pM-6U; Thu, 14 Sep 2023 14:57:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602353.938882; Thu, 14 Sep 2023 14:57:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmK-0002pF-1s; Thu, 14 Sep 2023 14:57:12 +0000
Received: by outflank-mailman (input) for mailman id 602353;
 Thu, 14 Sep 2023 14:57:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmI-0002W4-Cm
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:10 +0000
Received: from mail-lj1-x235.google.com (mail-lj1-x235.google.com
 [2a00:1450:4864:20::235])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fabca7d9-530e-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:09 +0200 (CEST)
Received: by mail-lj1-x235.google.com with SMTP id
 38308e7fff4ca-2bfb12b24e5so16817971fa.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:09 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.08
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:08 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fabca7d9-530e-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703429; x=1695308229; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=3jEpXHP+OuMRsQeHRRUMj4I6Oo5C8G1ExV4GkIjkhtI=;
        b=nvjA5LY2GSLU9geYssUPn8L3eQ7wWGSFXo8wJXazO6+Ko5xHcMCi9K9nHHYRwhorAf
         4uzrWL12vC4MWEmiGzPwER4VDEEPKTLA1iudRAMm0khCXqL5orhQiAM1QgvALoNpn4Ie
         sRD0XpRaf+0GnsPXOE4pN68Sngm/FtzY3h4DtbDIZgbqQ4lgD4WcWvi2Pj2UmHxqWWhA
         gnfylb8lmymYgevFb9BKVx7BuMa8clJLEDNRzxmiNqk6S/kKDGJl9EwBPC9JJ3WDAxS8
         8Fh96sH6CCcCBVUuXx6tCbqjonycJV2Chbig8oqVtToe0gJL09MIctehmGH1FRQy7xWi
         ydUA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703429; x=1695308229;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=3jEpXHP+OuMRsQeHRRUMj4I6Oo5C8G1ExV4GkIjkhtI=;
        b=aHgsQ8Qnr9qLRtSsPDTsfAyAcvnYX3fW9Pc3p0MFr9GlFG4dMtP+sSGr3DVABvaoKs
         HtqppxBLpNoBh/XNN3LYrFpZqLETeQ7iQ0MAoIajFXWV8Novash707n1b16VZtHJm1eC
         sT1nSCoBTTCU/Z5NYjqAwVd7ysV64PyW2hwJlxkI4I2znH94oX0urTXZbx17LfsZbE5U
         2Zw7ieF+LloYEqxEU2v5BuUSYMnInhF6PVeGxByFXkF/Fusut8yrOk/B7n+JrLe1gDMH
         hFrFZfY+V9uAESLxduRXzrU1adqDJGujoezK9YpwpSyy6l5saDR5hzN89mvquFKM6Lh2
         0EDA==
X-Gm-Message-State: AOJu0Yzm99yL69HQhJ7TpFbo8VHW6fA+kuWgFJG6+RAOUcM29XswQh2/
	C13LTDn4IrauIbKLuDlt2CV3k5F/Tag=
X-Google-Smtp-Source: AGHT+IG28LRx3bM/lBmXIL99Mez49cq8lnL140PqPov3Oi+Y8Qtqvu8H8YR2MZUDNug7uHjuKZORSQ==
X-Received: by 2002:a2e:9d90:0:b0:2b9:b9c8:99 with SMTP id c16-20020a2e9d90000000b002b9b9c80099mr5629230ljj.22.1694703428934;
        Thu, 14 Sep 2023 07:57:08 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 02/29] xen/asm-generic: introduce stub header paging.h
Date: Thu, 14 Sep 2023 17:56:23 +0300
Message-ID: <5def596788d602b9b34302630c91644952c7115d.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces stub header needed for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/paging.h | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)
 create mode 100644 xen/include/asm-generic/paging.h

diff --git a/xen/include/asm-generic/paging.h b/xen/include/asm-generic/paging.h
new file mode 100644
index 0000000000..2aab63b536
--- /dev/null
+++ b/xen/include/asm-generic/paging.h
@@ -0,0 +1,17 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_PAGING_H__
+#define __ASM_GENERIC_PAGING_H__
+
+#define paging_mode_translate(d)	(1)
+#define paging_mode_external(d)		(1)
+
+#endif /* __ASM_GENERIC_PAGING_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602352.938872 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmI-0002WQ-P4; Thu, 14 Sep 2023 14:57:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602352.938872; Thu, 14 Sep 2023 14:57:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmI-0002WJ-LY; Thu, 14 Sep 2023 14:57:10 +0000
Received: by outflank-mailman (input) for mailman id 602352;
 Thu, 14 Sep 2023 14:57:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmH-0002W4-N9
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:09 +0000
Received: from mail-lj1-x232.google.com (mail-lj1-x232.google.com
 [2a00:1450:4864:20::232])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fa27e246-530e-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:08 +0200 (CEST)
Received: by mail-lj1-x232.google.com with SMTP id
 38308e7fff4ca-2bfc1d8f2d2so13631031fa.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:08 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.06
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:07 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fa27e246-530e-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703428; x=1695308228; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=3ZrPnKm+pxtZ7ttDn5NZNYB+em8nxoRhhDh6ogzCMSw=;
        b=nsLiy74pCrHuEGxN/MjT0dA3hQfJHsOlOXGTlILDn2WNfuvDuFMB0GeviU+7XRZSg8
         IXP3hEHIhrBkLlFEfYM+U0Xz0oO41L8Q8xV7VYr4p+oedPUnB4BEFuNiFb5NniF7gKwS
         iY7YXwR6MFEuhfTlzoyY7zgUcl2bk1OBDW2Qkg6UIMumrQVgxcj6LxR8/N91YU0MZETS
         0XVkNTNT1JLPHLTAhgNfDNbl8BNER7iOvaDfFVpm5gouXaDnP/WUSuTx1ruy0rH8m0gM
         Pd7URFVVCjgoLqlrbYOKqF/DdrHH8eH3Te12bEIvLlJ0o0+Y6KPkxm2IBnuekbFVaIXn
         ycPQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703428; x=1695308228;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=3ZrPnKm+pxtZ7ttDn5NZNYB+em8nxoRhhDh6ogzCMSw=;
        b=BfGyxLTYmQoaZCdUpYP9ySxeiQ+g6OLaaxUH45w0hf2UTdLDz0DvRkPbqkmZ31Y2gw
         HEOwuAgzcwdi13NcE56+W6zjJRS1XN0IxnsOtN3ToBIWYDJIR8V+8Zj1NQRUo8STxTxt
         wcmb40A0HM1QtmzSmQ8PQXfv6QjnyCfLNUUoePkHSJl5Y62UmfjTqb8tm6ce96zApeKO
         Kn2DKRZYlhDfzYfIhnuDrqalWXYAVFVVHspxQ33ku3p4QzGDZDTiRjetVno8EgZvpPUL
         EnmKUZWi/EeUCT+Akw0rhk2LwdMlAR/KUym4L3ZIVpdB21wDpH49RpVb9GWOb8WV6bO4
         vekA==
X-Gm-Message-State: AOJu0YxBylRtGQDjjLUpOldRwr8m+5FMvOV4ffm1EY6OJm8dKIcRP472
	OI0gIzUmjf4JOULLoM7WjE8XxymI44Q=
X-Google-Smtp-Source: AGHT+IG53vroW09WePi55W98dUXgz5o9HApAVDopP02Ub3+zcmuKXc0ltS75iHFO+fxGwG9nrz2mkQ==
X-Received: by 2002:a2e:a372:0:b0:2bf:af6e:9420 with SMTP id i18-20020a2ea372000000b002bfaf6e9420mr649001ljn.19.1694703427617;
        Thu, 14 Sep 2023 07:57:07 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>
Subject: [PATCH v1 00/29] Introduce stub headers necessary for full Xen build
Date: Thu, 14 Sep 2023 17:56:21 +0300
Message-ID: <cover.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Based on two patch series [1] and [2], the idea of which is to provide minimal
amount of things for a complete Xen build, a large amount of headers are the same
or almost the same, so it makes sense to move them to asm-generic.

Also, providing such stub headers should help future architectures to add
a full Xen build.

[1] https://lore.kernel.org/xen-devel/cover.1694543103.git.sanastasio@raptorengineering.com/
[2] https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kurochko@gmail.com/

Oleksii Kurochko (29):
  xen/asm-generic: introduce stub header spinlock.h
  xen/asm-generic: introduce stub header paging.h
  xen/asm-generic: introduce stub header cpufeature.h
  xen/asm-generic: introduce stub header device.h
  xen/asm-generic: introduce stub header event.h
  xen/asm-generic: introduce stub header grant_table.h
  xen/asm-generic: introduce stub header guest_atomics.h
  xen/asm-generic: introduce stub hypercall.h
  xen/asm-generic: introduce stub header iocap.h
  xen/asm-generic: introduce stub header iommu.h
  xen/asm-generic: introduce stub header mem_access.h
  xen/asm-generic: introduce stub header pci.h
  xen/asm-generic: introduce stub header random.h
  xen/asm-generic: introduce stub header setup.h
  xen/asm-generic: introduce stub header xenoprof.h
  xen/asm-generic: introduce stub header flushtlb.h
  xen/asm-generic: introduce stub header percpu.h
  xen/asm-generic: introduce stub header smp.h
  xen/asm-generic: introduce stub header hardirq.h
  xen/asm-generic: introduce stub header div64.h
  xen/asm-generic: introduce stub header altp2m.h
  xen/asm-generic: introduce stub header delay.h
  xen/asm-generic: introduce stub header domain.h
  xen/asm-generic: introduce stub header guest_access.h
  xen/asm-generic: introduce stub header irq.h
  xen/asm-generic: introduce stub header monitor.h
  xen/asm-generic: introduce stub header numa.h
  xen/asm-generic: introduce stub header p2m.h
  xen/asm-generic: introduce stub header softirq.h

 xen/include/asm-generic/altp2m.h        |  34 +++++++
 xen/include/asm-generic/cpufeature.h    |  23 +++++
 xen/include/asm-generic/delay.h         |  21 +++++
 xen/include/asm-generic/device.h        |  65 ++++++++++++++
 xen/include/asm-generic/div64.h         |  24 +++++
 xen/include/asm-generic/domain.h        |  53 +++++++++++
 xen/include/asm-generic/event.h         |  39 ++++++++
 xen/include/asm-generic/flushtlb.h      |  42 +++++++++
 xen/include/asm-generic/grant_table.h   |  14 +++
 xen/include/asm-generic/guest_access.h  |  31 +++++++
 xen/include/asm-generic/guest_atomics.h |  47 ++++++++++
 xen/include/asm-generic/hardirq.h       |  27 ++++++
 xen/include/asm-generic/hypercall.h     |  14 +++
 xen/include/asm-generic/iocap.h         |  17 ++++
 xen/include/asm-generic/iommu.h         |  17 ++++
 xen/include/asm-generic/irq.h           |  44 +++++++++
 xen/include/asm-generic/mem_access.h    |  14 +++
 xen/include/asm-generic/monitor.h       |  64 +++++++++++++
 xen/include/asm-generic/numa.h          |  35 ++++++++
 xen/include/asm-generic/p2m.h           | 115 ++++++++++++++++++++++++
 xen/include/asm-generic/paging.h        |  17 ++++
 xen/include/asm-generic/pci.h           |  18 ++++
 xen/include/asm-generic/percpu.h        |  35 ++++++++
 xen/include/asm-generic/random.h        |  20 +++++
 xen/include/asm-generic/setup.h         |  16 ++++
 xen/include/asm-generic/smp.h           |  30 +++++++
 xen/include/asm-generic/softirq.h       |  17 ++++
 xen/include/asm-generic/spinlock.h      |  23 +++++
 xen/include/asm-generic/xenoprof.h      |  14 +++
 29 files changed, 930 insertions(+)
 create mode 100644 xen/include/asm-generic/altp2m.h
 create mode 100644 xen/include/asm-generic/cpufeature.h
 create mode 100644 xen/include/asm-generic/delay.h
 create mode 100644 xen/include/asm-generic/device.h
 create mode 100644 xen/include/asm-generic/div64.h
 create mode 100644 xen/include/asm-generic/domain.h
 create mode 100644 xen/include/asm-generic/event.h
 create mode 100644 xen/include/asm-generic/flushtlb.h
 create mode 100644 xen/include/asm-generic/grant_table.h
 create mode 100644 xen/include/asm-generic/guest_access.h
 create mode 100644 xen/include/asm-generic/guest_atomics.h
 create mode 100644 xen/include/asm-generic/hardirq.h
 create mode 100644 xen/include/asm-generic/hypercall.h
 create mode 100644 xen/include/asm-generic/iocap.h
 create mode 100644 xen/include/asm-generic/iommu.h
 create mode 100644 xen/include/asm-generic/irq.h
 create mode 100644 xen/include/asm-generic/mem_access.h
 create mode 100644 xen/include/asm-generic/monitor.h
 create mode 100644 xen/include/asm-generic/numa.h
 create mode 100644 xen/include/asm-generic/p2m.h
 create mode 100644 xen/include/asm-generic/paging.h
 create mode 100644 xen/include/asm-generic/pci.h
 create mode 100644 xen/include/asm-generic/percpu.h
 create mode 100644 xen/include/asm-generic/random.h
 create mode 100644 xen/include/asm-generic/setup.h
 create mode 100644 xen/include/asm-generic/smp.h
 create mode 100644 xen/include/asm-generic/softirq.h
 create mode 100644 xen/include/asm-generic/spinlock.h
 create mode 100644 xen/include/asm-generic/xenoprof.h

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602354.938885 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmK-0002ru-Ey; Thu, 14 Sep 2023 14:57:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602354.938885; Thu, 14 Sep 2023 14:57:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmK-0002qi-9w; Thu, 14 Sep 2023 14:57:12 +0000
Received: by outflank-mailman (input) for mailman id 602354;
 Thu, 14 Sep 2023 14:57:11 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmJ-0002WX-28
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:11 +0000
Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com
 [2a00:1450:4864:20::233])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fa702ba9-530e-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:09 +0200 (CEST)
Received: by mail-lj1-x233.google.com with SMTP id
 38308e7fff4ca-2b703a0453fso17391411fa.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:09 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.07
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:08 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fa702ba9-530e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703428; x=1695308228; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=psRu+gzM+CN17BrbiRKWd+xnQKlPi1ihAZzBPzmaXsw=;
        b=kY15qIGGm18c92F/3YtljHv9jG437fHTQNq56yO3eHtVd1EHN7IuZ/kxxeQqf1WNj7
         ngLwg6/8RCYVkdieh5hrKHlX+3AXTtShY4f3h0JiRUs/5ao9qDvIdqj4r60Y/5/U899t
         VtKh4A8cQ7im/HfGCdGzDimiiGSt2eJsiXWyDlMGET1l65bv2xTdN78ckyauXGA1Bntz
         rUIcH5JZXTNicnZPU1LmldTMQDh/5txVw+XuYX+XAC4rJW/llIHqwdofy/2RzEeSvMaB
         BJ9zuHnr+tJ35eDI+ND6cDbWy67UCkzRP/atN2+Ghjmzy7oZHf9f8vxZ96dvQ9j+EjHE
         wLWQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703428; x=1695308228;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=psRu+gzM+CN17BrbiRKWd+xnQKlPi1ihAZzBPzmaXsw=;
        b=LucmSWaXqaIdZcfkwPsfilm+YK4bBLWN3qXfdu8kVHfpGniRl2a5AWeQGtckIgMu1g
         fvneOOsxBBD2+tPJodBdImJBBT+bSDgkHm/kGg3jtBAU0TJBQSVPIiFshfhQgI6BB3NM
         RTbY0Q3U3vyq1CKCOU6L/hdCSn3c6/MW3PMby3M1t9i9YaY+OYMo60jGSfRr0Ui6z9kj
         iQgURTkQWqhd9ZqKcTQJrWUzGKsINVC6bp8zJAijFkZ2Pjkuw6T6YNDZXHQF6gTRLgEm
         YF+kvnbfDc8FaarhMPut/aFQ1SithoeAmRuhjxNohsB1Q68rz1K8ncZ3XGUTi01vnAr6
         YqAw==
X-Gm-Message-State: AOJu0Yx/v3FWzNBgGByU6kh32LoKrrS4i8lTx38xIdyO1Muge15oOZsF
	UzQaMMYalNDlpaRKQ3XYtI/6W7lM+qc=
X-Google-Smtp-Source: AGHT+IEXXQASyFIVlBV9gGHhZPLP+vFIQ5ymrvIqc9EFnKLMd4VmQkRuvuPZugWpAdOK8z0kZvTHHg==
X-Received: by 2002:a2e:6e10:0:b0:2bc:b815:d64d with SMTP id j16-20020a2e6e10000000b002bcb815d64dmr5377636ljc.30.1694703428258;
        Thu, 14 Sep 2023 07:57:08 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 01/29] xen/asm-generic: introduce stub header spinlock.h
Date: Thu, 14 Sep 2023 17:56:22 +0300
Message-ID: <30743e7391ad474724258441b7ec83affcf6b230.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces stub header needed for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/spinlock.h | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 xen/include/asm-generic/spinlock.h

diff --git a/xen/include/asm-generic/spinlock.h b/xen/include/asm-generic/spinlock.h
new file mode 100644
index 0000000000..22a9ec5222
--- /dev/null
+++ b/xen/include/asm-generic/spinlock.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_SPINLOCK_H__
+#define __ASM_GENERIC_SPINLOCK_H__
+
+#define arch_lock_acquire_barrier() smp_mb()
+#define arch_lock_release_barrier() smp_mb()
+
+#define arch_lock_relax() cpu_relax()
+#define arch_lock_signal() do { \
+} while(0)
+
+#define arch_lock_signal_wmb() arch_lock_signal()
+
+#endif /* __ASM_GENERIC_SPINLOCK_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602355.938901 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmL-0003J3-QM; Thu, 14 Sep 2023 14:57:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602355.938901; Thu, 14 Sep 2023 14:57:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmL-0003Gq-KS; Thu, 14 Sep 2023 14:57:13 +0000
Received: by outflank-mailman (input) for mailman id 602355;
 Thu, 14 Sep 2023 14:57:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmK-0002WX-3Q
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:12 +0000
Received: from mail-lj1-x230.google.com (mail-lj1-x230.google.com
 [2a00:1450:4864:20::230])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fb32b320-530e-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:10 +0200 (CEST)
Received: by mail-lj1-x230.google.com with SMTP id
 38308e7fff4ca-2bcb0b973a5so16352151fa.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:10 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.09
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:09 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fb32b320-530e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703430; x=1695308230; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=/zDDTwDOE0/1jXRUL7qB40DNiEiInQL/Y1uSME8BtmQ=;
        b=P+41IGRrakrKripwlIiD9MYkh8YFTMk8gHXDi5GaFc5jQZd+bl0Za6+iLEU9nndQMO
         Id7fWatYg2q35cAeB6uCN4wi7rWSxGMmJhtulBML7cUjgTQlOYer5tHB2GD0Y0FwvOKE
         0yL6UiOVHmjSCqNZpjLKTvxw9iYXYZ5rTZoqz+pGqEo3PhE9DneNwVEVgPHh3vtqMVYU
         98P0NFzMqrH20/gR75DntjvB13TaBjWddHd0bYmVX2yLIKfYQo2Jq5Y4mdzvfHxLrvQ3
         GBI7XoN0B1Sk6NzsOAinPRk60fgKYotsywFgqSLkQ0J6PtFM2gxCc7p1ZPEDGDO/V6kL
         R36A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703430; x=1695308230;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=/zDDTwDOE0/1jXRUL7qB40DNiEiInQL/Y1uSME8BtmQ=;
        b=cpJYOvUXSyiuZjH2mH9MfCrO0vNAUwe5o9oXQS3/dwwMe+IGNosLF5xviKPsrxDYbq
         j0rG8rEuAQThcXeJOkmmfojhWWnRu7Vb5lvLutoxyEQwkrjq63Iza7OeCyD/LP62raI6
         RjHpfQrn3W4kF1arBKvTysGBjpOGnv/lmKZrx/KRT2Sfk1lE2A9AuQcFVFX56xV0FDqW
         vnxGysGYydcDgLtS+criLlMkUVJl9iVsbwqbJ0FEC4t5/LkX6EP1/bQ5VZs8cYUemWAo
         JzGz9pVIKpihN3sogLZX7gqY9NvDruGzl4HdMkcRMUvqqY8PwQGch7okwDk5pv4KlRZa
         8+KA==
X-Gm-Message-State: AOJu0YzHmIc32xwZQPXsIDXyZE6hMkTKj7A5CFTQb33DF0Ttj1Lbdhvl
	duVxzaXL5Z6UYL8KY5CyLcJUCOSXCMk=
X-Google-Smtp-Source: AGHT+IFoZ0A8rgK6AQvchbbrAOZodjA7xlN9nYRxm/YKnEp+YTFDJDf1bt4T9gO02KL2vKUduyFP8g==
X-Received: by 2002:a2e:3c0b:0:b0:2bd:14cc:ab1b with SMTP id j11-20020a2e3c0b000000b002bd14ccab1bmr4986642lja.44.1694703429763;
        Thu, 14 Sep 2023 07:57:09 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 03/29] xen/asm-generic: introduce stub header cpufeature.h
Date: Thu, 14 Sep 2023 17:56:24 +0300
Message-ID: <c89b1a60ee40576a2841c222a2cefc5ae2a301d3.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces stub header needed for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/cpufeature.h | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 xen/include/asm-generic/cpufeature.h

diff --git a/xen/include/asm-generic/cpufeature.h b/xen/include/asm-generic/cpufeature.h
new file mode 100644
index 0000000000..86e2a8b455
--- /dev/null
+++ b/xen/include/asm-generic/cpufeature.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_CPUFEATURE_H__
+#define __ASM_GENERIC_CPUFEATURE_H__
+
+#ifndef __ASSEMBLY__
+
+static inline int cpu_nr_siblings(unsigned int cpu)
+{
+    return 1;
+}
+
+#endif
+
+#endif /* __ASM_GENERIC_CPUFEATURE_H__  */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602356.938906 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmM-0003PE-5V; Thu, 14 Sep 2023 14:57:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602356.938906; Thu, 14 Sep 2023 14:57:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmL-0003OC-W4; Thu, 14 Sep 2023 14:57:13 +0000
Received: by outflank-mailman (input) for mailman id 602356;
 Thu, 14 Sep 2023 14:57:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmK-0002W4-7t
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:12 +0000
Received: from mail-lj1-x234.google.com (mail-lj1-x234.google.com
 [2a00:1450:4864:20::234])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fc029670-530e-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:11 +0200 (CEST)
Received: by mail-lj1-x234.google.com with SMTP id
 38308e7fff4ca-2bfc2b26437so16160121fa.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:11 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.10
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:11 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fc029670-530e-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703431; x=1695308231; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=svTWqdPYc3ftSZpDKuUWuYkTn6Vp//dh2r2RtkrDP2E=;
        b=XUy1GQBbwZr909HCD9mH92fQ2n9A+WQsYRO1ca2syYNuftSzrw9HWM9fscbnH7CPtl
         h0YvhgqnfN+UFHto8xsrCPvM3oOyzT0CjZoR1McCOXVjap2IiF8BHsiOYiXd+AmaxD4j
         qHUppktg3cHWIx5lGU5r/Q+N4dzUnvG7/SdPjm0EEaWtBb8ErVXakwRnK6C/EPJ+qjER
         vtz700BabUI8xW8Whos4yphk3lO0sZ7EpArGMNay+WJthIf+5vWrYPnEDzjF5x0qRN4P
         y9N/xXlUFwI5Ioz0a6i0Ox7/9bg0ou3rnclsnxeHWVamPO/c47ftvCxrhvYu0ht9oW7O
         ubIg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703431; x=1695308231;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=svTWqdPYc3ftSZpDKuUWuYkTn6Vp//dh2r2RtkrDP2E=;
        b=UY+m5NhZLMR5sq6SjqQwI+cibe2D6qjaxpsNwyPbrleMaAnmMbtFf55Rsu1/T4X4nt
         oo7ik+u7tsUBzMzd0eXQ6ZvW1SXRqbF1Yt7xb/d2zzd1fVlPx+aWQAtsoucx5uTsyQUH
         9czGvEObQVhKRp/BCmI2dxRfczHeopU1Dv3bn4PVQ/5WHg6U3pEkhVKbnxmFPy7QwttK
         5K1QIv3DCHZw4iXJuYUsTWzphHqZ2yW6wgD6hC81PDyxo46FxbuNqDlDdP0/KGGHvREw
         xsXUxsJe+dfgJMJuzUWK95DAnIcxPm3y/pdxK2otHiTijDq+947lbjHRbGRwSAoMq5pm
         9x/Q==
X-Gm-Message-State: AOJu0YxVJIZIYgJAXGThlKXRNra+EtcEtW+WNQ7vAjauYEgMB+bdYjEt
	iavckPQIPxbKesp64NckXRI/TqT+QkI=
X-Google-Smtp-Source: AGHT+IGSzGN+thgWV5HA2e1EpC6tTCT3RVL7noSwopFanb0rR30SRaZ7g6RhKSuz6ZkzQh56VdH+sg==
X-Received: by 2002:a2e:93d7:0:b0:2bb:9781:1a4c with SMTP id p23-20020a2e93d7000000b002bb97811a4cmr5066743ljh.27.1694703431205;
        Thu, 14 Sep 2023 07:57:11 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 05/29] xen/asm-generic: introduce stub header event.h
Date: Thu, 14 Sep 2023 17:56:26 +0300
Message-ID: <69563e3f41cb6971f93630d9df59395f159bd3c4.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces stub header needed for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/event.h | 39 +++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)
 create mode 100644 xen/include/asm-generic/event.h

diff --git a/xen/include/asm-generic/event.h b/xen/include/asm-generic/event.h
new file mode 100644
index 0000000000..d25ba36aad
--- /dev/null
+++ b/xen/include/asm-generic/event.h
@@ -0,0 +1,39 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_EVENT_H__
+#define __ASM_GENERIC_EVENT_H__
+
+#include <xen/sched.h>
+
+static inline void vcpu_mark_events_pending(struct vcpu *v)
+{
+}
+
+static inline int vcpu_event_delivery_is_enabled(struct vcpu *v)
+{
+    return 0;
+}
+
+static inline int local_events_need_delivery(void)
+{
+    return 0;
+}
+
+static inline void local_event_delivery_enable(void)
+{
+}
+
+static inline bool arch_virq_is_global(unsigned int virq)
+{
+    return true;
+}
+
+#endif /* __ASM_GENERIC_EVENT_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602357.938919 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmN-0003vt-GT; Thu, 14 Sep 2023 14:57:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602357.938919; Thu, 14 Sep 2023 14:57:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmN-0003u9-8D; Thu, 14 Sep 2023 14:57:15 +0000
Received: by outflank-mailman (input) for mailman id 602357;
 Thu, 14 Sep 2023 14:57:13 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmL-0002W4-0W
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:13 +0000
Received: from mail-lj1-x22f.google.com (mail-lj1-x22f.google.com
 [2a00:1450:4864:20::22f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fc74587a-530e-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:12 +0200 (CEST)
Received: by mail-lj1-x22f.google.com with SMTP id
 38308e7fff4ca-2bcb89b476bso17524671fa.1
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:12 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.11
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:11 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fc74587a-530e-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703432; x=1695308232; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=DnrZ/AmdCqfNq1dsaQTi3pnInRO1wYchAayEqPy5DtU=;
        b=SWPezd5cwS4hEBDJFtPlbCCbghk6ER0/ae5v26Y+e8MMJfvHhMLQ2NE3D253qM8E4f
         kl0CcXpr1Fj+KApTLA4fJwxVOUuUPW7z4UI6ykM1Roe9kLV6NEGfSQu92qs3O77wBVY0
         Yf+4c3oeg80vseQc88E43OI0aNThy1of1TdHphY21st+pvBLszcWxLU/lAj9XBFeshu5
         2xc0JG3XNgtBXweN7GfkiWWuCE9yGUqFfI4JXTapwLSuNzdSVi85XM5QfdGGx5ZOzGxI
         cY/AFrkg2NvK0iNXh7yFaf0a77ettmFJFJJUu/59LlD61LUSv6YMTbd8IG2YGcAe/Zc9
         J34g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703432; x=1695308232;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=DnrZ/AmdCqfNq1dsaQTi3pnInRO1wYchAayEqPy5DtU=;
        b=hy1ilJIQLz3DNqRrJOPHxV9KBwx12VUdvi8JBLWAyHCbIArFQKUAHBkB3xph9dk0Xp
         wWUC9izHNJGUA/HoB3stYy2XwDeuPS0wLT6RuX4vE90pktbd0haLtNTnBFuCVeP0HJtH
         9D+h1ozrXJkoOgrB7woY0NSs3fJmdMezFf9Wbo+zLXzXyp5UAEqWcoU+r3kGaJiJ38jK
         fvO3ALRhXD10t42XagmcKC5SG5k6HL78Z2Wpq5v9fA046QK2lNV8z8eOarhfp+Ympv1x
         j78JI81XDPFuMmh0VRTdIRHey0Mb0jCFSIuHqZNhIyoEtbjQvmjqNd2JSC1zBioiKcZk
         Y2kA==
X-Gm-Message-State: AOJu0YzycRyE7fPbSftVjYogdQmD8wLcofO80vNN6S5mD7Y+RXF0TdfN
	PUoaZcY9DTMvZgsjMJji6JfyLQwOmfM=
X-Google-Smtp-Source: AGHT+IGLaHC2tTJhb9pwr5tg/S3L9996rR8Rg4Lyo8UK7mYY3EfyvA05BRF1zgwyQZhTJBhS9HtegA==
X-Received: by 2002:a2e:3514:0:b0:2bc:f439:b5a5 with SMTP id z20-20020a2e3514000000b002bcf439b5a5mr5133368ljz.14.1694703431925;
        Thu, 14 Sep 2023 07:57:11 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 06/29] xen/asm-generic: introduce stub header grant_table.h
Date: Thu, 14 Sep 2023 17:56:27 +0300
Message-ID: <f3efdfc93780b62be93fecec68860e12026fe66c.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces stub header needed for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/grant_table.h | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
 create mode 100644 xen/include/asm-generic/grant_table.h

diff --git a/xen/include/asm-generic/grant_table.h b/xen/include/asm-generic/grant_table.h
new file mode 100644
index 0000000000..bd8d85f1ff
--- /dev/null
+++ b/xen/include/asm-generic/grant_table.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_GRANTTABLE_H__
+#define __ASM_GENERIC_GRANTTABLE_H__
+
+#endif /* __ASM_GENERIC_GRANTTABLE_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602358.938925 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmN-0003z4-Tl; Thu, 14 Sep 2023 14:57:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602358.938925; Thu, 14 Sep 2023 14:57:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmN-0003xy-L6; Thu, 14 Sep 2023 14:57:15 +0000
Received: by outflank-mailman (input) for mailman id 602358;
 Thu, 14 Sep 2023 14:57:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmL-0002WX-5M
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:13 +0000
Received: from mail-lj1-x235.google.com (mail-lj1-x235.google.com
 [2a00:1450:4864:20::235])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fbdc96cb-530e-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:11 +0200 (CEST)
Received: by mail-lj1-x235.google.com with SMTP id
 38308e7fff4ca-2bfb0a2682fso17380141fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:11 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.09
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:10 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fbdc96cb-530e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703431; x=1695308231; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=u1QnQP4FV4x1+MRf6vUoDUIxoKiv+APN/HEwJJ83S9A=;
        b=mzEpfgKMFcLz3DaJgPL0AIS3/hc29fhOhnKbgkjtTALtvUXtg6SajwUdtGPyc3VwoS
         aTfppKwcmg9JAzUZ7CzZzvqk5KIOAc3GVMY0CWzKxPsr/ISpctatzIckofMgQz9axrEC
         QrL2pEGkS4DeyAun1mKmZ6j6NPJvIgBOsWfeJHo4ZUeyihG2LNR7tRwWntLRG7SXs2Zs
         Mh15AKVgua/CQ67oIRLlR7F9YDignZQF6WVvARXJB34Hl5RSm6EjvDcpgXH+chlm8l40
         iD2ByFlWdwZ7f2NaYdbpS9Qumyoc0F9tJvmqp3C/2TNf4oxo2xSMAy4crDaemPVUFnk4
         zsDg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703431; x=1695308231;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=u1QnQP4FV4x1+MRf6vUoDUIxoKiv+APN/HEwJJ83S9A=;
        b=q48bxWiieFDfqpDbNQDNijwmX54eG9bKiwsoI6I/gkGoi5NXNztX/xYM4gLGb0HGwi
         MgsU16UbYsSzmIQl4dQ9gQGNAtc0EiClWvvTqn69U7Ppl7E9AjvQ/aAuN6GbnN0DU6la
         UWj8KG8C4rvyNQl7OYj+KXGqt3IzDamXhDRv01nEP0gkDRFMt3ecNXOicQVXBZK4Bdls
         DvhR6i6c0YXq8pHG8vkRg5GggySoj98okmWvBJUZBWpa7XNOYwDkRLRvYd1jafNeT4qA
         SvHsZVRPT1tpRTRPxOovmsOaLOfCIBPFUNKKBUnkH0r4QGn8mssVOSKcfCLmzE8UoXdb
         46IA==
X-Gm-Message-State: AOJu0YwOIjOYF4fbwceBzA8y8XrQZuQRcMC7+Br/2s8adX5PEZIKyJuK
	yqPoS9JS2v9cke3davkMWpbNndfannc=
X-Google-Smtp-Source: AGHT+IGxMUoYxVZ41O0EyhntREPIb/EUffUQofUYjhCKQGYsZNVLPhQjb5tDZEoCLWYNHChqXu/jCw==
X-Received: by 2002:a2e:b00e:0:b0:2bd:bc9:30aa with SMTP id y14-20020a2eb00e000000b002bd0bc930aamr5392840ljk.23.1694703430551;
        Thu, 14 Sep 2023 07:57:10 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 04/29] xen/asm-generic: introduce stub header device.h
Date: Thu, 14 Sep 2023 17:56:25 +0300
Message-ID: <3cc9ecc3abcd21c5ed7276b01bf5963e6a5fd5e0.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces stub header needed for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/device.h | 65 ++++++++++++++++++++++++++++++++
 1 file changed, 65 insertions(+)
 create mode 100644 xen/include/asm-generic/device.h

diff --git a/xen/include/asm-generic/device.h b/xen/include/asm-generic/device.h
new file mode 100644
index 0000000000..66e69ecd78
--- /dev/null
+++ b/xen/include/asm-generic/device.h
@@ -0,0 +1,65 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_DEVICE_H__
+#define __ASM_GENERIC_DEVICE_H__
+
+struct dt_device_node;
+
+enum device_type
+{
+    DEV_DT,
+    DEV_PCI,
+};
+
+struct device {
+    enum device_type type;
+#ifdef CONFIG_HAS_DEVICE_TREE
+    struct dt_device_node *of_node; /* Used by drivers imported from Linux */
+#endif
+};
+
+enum device_class
+{
+    DEVICE_SERIAL,
+    DEVICE_IOMMU,
+    DEVICE_GIC,
+    DEVICE_PCI_HOSTBRIDGE,
+    /* Use for error */
+    DEVICE_UNKNOWN,
+};
+
+struct device_desc {
+    /* Device name */
+    const char *name;
+    /* Device class */
+    enum device_class class;
+    /* List of devices supported by this driver */
+    const struct dt_device_match *dt_match;
+    /*
+     * Device initialization.
+     *
+     * -EAGAIN is used to indicate that device probing is deferred.
+     */
+    int (*init)(struct dt_device_node *dev, const void *data);
+};
+
+typedef struct device device_t;
+
+#define DT_DEVICE_START(_name, _namestr, _class)                    \
+static const struct device_desc __dev_desc_##_name __used           \
+__section(".dev.info") = {                                          \
+    .name = _namestr,                                               \
+    .class = _class,                                                \
+
+#define DT_DEVICE_END                                               \
+};
+
+#endif /* __ASM_GENERIC_DEVICE_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602359.938932 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmO-0004EN-P4; Thu, 14 Sep 2023 14:57:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602359.938932; Thu, 14 Sep 2023 14:57:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmO-00049S-GR; Thu, 14 Sep 2023 14:57:16 +0000
Received: by outflank-mailman (input) for mailman id 602359;
 Thu, 14 Sep 2023 14:57:14 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmM-0002W4-Qu
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:14 +0000
Received: from mail-lj1-x230.google.com (mail-lj1-x230.google.com
 [2a00:1450:4864:20::230])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fd868efb-530e-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:14 +0200 (CEST)
Received: by mail-lj1-x230.google.com with SMTP id
 38308e7fff4ca-2bfbd7d49e7so16860191fa.1
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:14 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.12
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:13 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fd868efb-530e-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703434; x=1695308234; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=H87nIzFyKi3Nj19NY5+iR4gC6MDMil9IpKyKy4GmQIY=;
        b=oZxbhlDujEKNF61mXRlxA1z0tqC08DOnOAVJM8/aRB4gn5kNCHbouRkhsyqRzgYlJr
         Xaq33i/V6ivIU8jKPkxYLcefDLH+U0zsyfBA450N45iMx2ncZzpmAkPLB/47OiiWUlw6
         wMa7QPcPNUh3y6fX9LKo5ZEGLsVxmXgtyme4rlp3leqqDUTkfRihozYs7Yiq2hQd2mJg
         v2Dy7vooiKRWV2Mfv4lu5PjWODc1YK1GJ5M3nSig87MQWrMQhX91HDOk9wVtmd0y/cGE
         pEoheYYbJzi9GIloqjPe3pJOPfmTeTn5YWF/iTh9xOaY+Zra7kb7rAqpm2zoh283LXva
         j74Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703434; x=1695308234;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=H87nIzFyKi3Nj19NY5+iR4gC6MDMil9IpKyKy4GmQIY=;
        b=GUZ5OWRmlzo3W/vBdPDJKXXLEGq4W6wjxJGEu4jaqgAk8KZorOEw5zbwjzHFdyiLMh
         UDy+vb2fCZ0zx7pAXf7ZcIGnwHq89czF+ZzfyiaaaHWg+vqnZRyPGri4X639yZ6jWdJw
         788fF7R9Mc/9FfCoIXbMIJhNsczA6WMYca3LxRRQTeg7m0AbuWs56rhtFzBhrvASiBBm
         FXpBk8Fn5+rv267cefNcWgJIoDqI1XWriqsfLe7lHcuIk7WdNBSJGDYcbaL5f08cPExk
         2c0NeSoaTkT9Q/GTHSmfHFP43uz20u/Ao5IrP8z7ss/huRzUXnzQP2gkN8EcQhuZ8rhm
         /0Hg==
X-Gm-Message-State: AOJu0YxVtHlbBbZ5nhdIAghgtekI057YYPNPGuz+u8jOqiH+kfvjsyn3
	6yvORQT1NdwDYooqGJ4zmx7INMZqKRk=
X-Google-Smtp-Source: AGHT+IHY8IGYkIluEefe3k9SglFjJeyCR9g5u3PGk8FTvrePpQaZayY92otUFnchuqLao1H3dUj4mQ==
X-Received: by 2002:a2e:9791:0:b0:2bc:c557:848a with SMTP id y17-20020a2e9791000000b002bcc557848amr5027250lji.50.1694703433586;
        Thu, 14 Sep 2023 07:57:13 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 08/29] xen/asm-generic: introduce stub hypercall.h
Date: Thu, 14 Sep 2023 17:56:29 +0300
Message-ID: <bd57ae1fd448b7d2f4188ff705bb5f537ac48521.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/hypercall.h | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
 create mode 100644 xen/include/asm-generic/hypercall.h

diff --git a/xen/include/asm-generic/hypercall.h b/xen/include/asm-generic/hypercall.h
new file mode 100644
index 0000000000..d89196fb3e
--- /dev/null
+++ b/xen/include/asm-generic/hypercall.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_HYPERCALL_H__
+#define __ASM_GENERIC_HYPERCALL_H__
+
+#endif /* __ASM_GENERIC_HYPERCALL_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602360.938937 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmP-0004KR-5O; Thu, 14 Sep 2023 14:57:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602360.938937; Thu, 14 Sep 2023 14:57:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmO-0004Gw-TU; Thu, 14 Sep 2023 14:57:16 +0000
Received: by outflank-mailman (input) for mailman id 602360;
 Thu, 14 Sep 2023 14:57:15 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmN-0002WX-4H
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:15 +0000
Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com
 [2a00:1450:4864:20::231])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fd05cec2-530e-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:13 +0200 (CEST)
Received: by mail-lj1-x231.google.com with SMTP id
 38308e7fff4ca-2bcb89b4767so15732981fa.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:13 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.12
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:12 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fd05cec2-530e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703433; x=1695308233; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=T5FVW5lFgXbPxKRgrUE4uLRflweOsPkQ4ZLusD9BFg8=;
        b=cljFYE1UwQScuPiKUuHkUD6lwaOewCU7kUW6hZXTg4NOCFDZ4iNpNS1vqOrnPSuL9v
         IDFGutBynE67oom0HNg9vB5ziakMO8RmgO2ErHIY+EHbBdEVxVnSKhY0+AYl4wUKZV1s
         S6ZR8hQ25V9j+R15Ycx39GOuNmwodORkLOUUNJT8HlP1zIL8kLC1/Nl2NWeJIiIe6kOz
         OEy2Z6xQJRvZLqwOHKWYq4Ssy/chVIXt54K4d4O/o/wRc8ehHIvN2YsiSBevyHOuxlvl
         iZjh+r9d7m5ga7CL4P7g3Hc4BRnLbEMwfvHhA08obbhM46gX2pmhkEB4xRH0Na9VSOLb
         HfIw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703433; x=1695308233;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=T5FVW5lFgXbPxKRgrUE4uLRflweOsPkQ4ZLusD9BFg8=;
        b=OdIWIaqFD18MgODfom5CchDq5Ei+TvUALodRJjiOjyWAPm0UBkDk38nhWWrP3Bi7ad
         8z5Pv9/vW8yUMDVDYB/WUqMy+Mnw8SKxAp4mn2+neTtcmDZLYtUtCfsaDrj5OfJ3ZP5i
         mnrXeHLtHVM9HwrKlydcNPrwLCfE1CKboR1Nx4RV03m1zi465Mei62rfJkp5LTil1Eso
         jmUIjTfQwhBnHC0hOPjvO1f+rcOatPvDl4yFH0VNX6vyVmksFh+yuu9U5mN/p4CqAw6y
         msQ3rM2A0Q2hz9SHUYniy7NUJLan/lF+W0dKBgtHqsLYyM7Ki6YZi5l/5Mm10PcqKEhK
         1Z5A==
X-Gm-Message-State: AOJu0YwX0UqbbP0Vw9+44RxtgUzxS7J/bu6XMf3JWmZ+Fn+nekL6fxG6
	Pyg1Dv1mUSPrVYlI/of+iV4vQHlap4c=
X-Google-Smtp-Source: AGHT+IElB/BHMWUB5mcY+Z4K/FtyqkkGTLUirJQ2ikpAhSDN72YU33+mS9+23YZrIt2HJ21oIA0mtA==
X-Received: by 2002:a05:651c:10d:b0:2bc:b29e:8ff6 with SMTP id a13-20020a05651c010d00b002bcb29e8ff6mr5141859ljb.7.1694703432878;
        Thu, 14 Sep 2023 07:57:12 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 07/29] xen/asm-generic: introduce stub header guest_atomics.h
Date: Thu, 14 Sep 2023 17:56:28 +0300
Message-ID: <96473b36fdfbb62eba8cd207cd8701f3827207d4.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces stub header needed for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/guest_atomics.h | 47 +++++++++++++++++++++++++
 1 file changed, 47 insertions(+)
 create mode 100644 xen/include/asm-generic/guest_atomics.h

diff --git a/xen/include/asm-generic/guest_atomics.h b/xen/include/asm-generic/guest_atomics.h
new file mode 100644
index 0000000000..6c4e79350a
--- /dev/null
+++ b/xen/include/asm-generic/guest_atomics.h
@@ -0,0 +1,47 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_GUEST_ATOMICS_H
+#define __ASM_GENERIC_GUEST_ATOMICS_H
+
+#define guest_testop(name)                                                  \
+static inline int guest_##name(struct domain *d, int nr, volatile void *p)  \
+{                                                                           \
+    (void) d;                                                               \
+    (void) nr;                                                              \
+    (void) p;                                                               \
+                                                                            \
+    return 0;                                                               \
+}
+
+#define guest_bitop(name)                                                   \
+static inline void guest_##name(struct domain *d, int nr, volatile void *p) \
+{                                                                           \
+    (void) d;                                                               \
+    (void) nr;                                                              \
+    (void) p;                                                               \
+}
+
+guest_bitop(set_bit)
+guest_bitop(clear_bit)
+guest_bitop(change_bit)
+
+#undef guest_bitop
+
+guest_testop(test_and_set_bit)
+guest_testop(test_and_clear_bit)
+guest_testop(test_and_change_bit)
+
+#undef guest_testop
+
+
+#define guest_test_bit(d, nr, p) ((void)(d), test_bit(nr, p))
+
+#endif /* __ASM_GENERIC_GUEST_ATOMICS_H */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602361.938948 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmQ-0004U9-7S; Thu, 14 Sep 2023 14:57:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602361.938948; Thu, 14 Sep 2023 14:57:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmP-0004Qh-Ie; Thu, 14 Sep 2023 14:57:17 +0000
Received: by outflank-mailman (input) for mailman id 602361;
 Thu, 14 Sep 2023 14:57:15 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmN-0002W4-KH
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:15 +0000
Received: from mail-lf1-x134.google.com (mail-lf1-x134.google.com
 [2a00:1450:4864:20::134])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fdff76fd-530e-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:15 +0200 (CEST)
Received: by mail-lf1-x134.google.com with SMTP id
 2adb3069b0e04-501b9f27eb2so2682321e87.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:15 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.13
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:14 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fdff76fd-530e-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703434; x=1695308234; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=ZcqiE7BQiD0mwY/JfAVivf/SF/vqIglLM0lEIM6lctY=;
        b=OAAi8FqEBOBX5CJI/69S4+aL+iKmYYGQM8u7Y1dfKAxRkbsjwQdA14PxVNDpV2lNdX
         s1q3fQYg0cM//ezwvAg0JZ6e4TShz51YF1FW5BH3LJK0t28MCnNtVk6kA5FEOLQjvOgS
         H4aT2F1kSq4ryjej4ASG6KrJ0vD4UtQld2RysxIG7WJ0gPrat5ZBJxecWU5LqVnN12m2
         jVavWmvJV6DbHCNBaYBFxRVWRqW7E0POEt12o/C0qZu1dT0qZ5L/dHdq+qBpDH8iHndH
         hLU0/2WnLQId+TSvDbBBnNyHt+gWLKuxFW5K1lxxjg0v+zyLjNjNXRvkrAjaXaKnW/ZK
         q5FQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703434; x=1695308234;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=ZcqiE7BQiD0mwY/JfAVivf/SF/vqIglLM0lEIM6lctY=;
        b=w8VSm7MQNj1QKQ8Otx64FGrREiCLvlwJ9Qt6g7VYrIIfxXWZxL7qioqPpR15VbApTg
         /Rkkm5V1bSjeE/mvSE/DhFzUMQ+eK8Z5fNNwR5NnGCgly8sZwJZ5KvRl5qW4DqVGr6uN
         bn56l/w/A7co1r6AUvikF40uRUfZCMs/PpnyaASpkriU7QO7/5P1OoCXPC5EU/kbG6Gk
         rLorKwCjxqrsE3/22HS1UWS9Hg/56jLeo5alV0W2wTPd/I98MIBbvFFmsRzHnH/Ro5CW
         XCyt076+nADA0gDZ6YDbjuC6jldBUnPdmlYlJrSLK10z8JkY9BnVWYq7EXXQFHWJUdV9
         HbPw==
X-Gm-Message-State: AOJu0YxdeMljQa8IXaRAsuk0G9D2U/umWhygdUAQzDkhZZFVrmRI9UQm
	IOsdgwT2TVR23aDO0JE4RlPLmA1asKc=
X-Google-Smtp-Source: AGHT+IFaiW0NQmH71YpP+316A+ougjlhV+18iywnNP4KrA2JUtc8IpKB6myxYW+M7DNi7WajL0xo6w==
X-Received: by 2002:a05:6512:a94:b0:500:b09f:eb3d with SMTP id m20-20020a0565120a9400b00500b09feb3dmr894717lfu.30.1694703434471;
        Thu, 14 Sep 2023 07:57:14 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 09/29] xen/asm-generic: introduce stub header iocap.h
Date: Thu, 14 Sep 2023 17:56:30 +0300
Message-ID: <df3a94a5670b900ddc1a2b7e8142555a09571b52.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/iocap.h | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)
 create mode 100644 xen/include/asm-generic/iocap.h

diff --git a/xen/include/asm-generic/iocap.h b/xen/include/asm-generic/iocap.h
new file mode 100644
index 0000000000..dd7cb45488
--- /dev/null
+++ b/xen/include/asm-generic/iocap.h
@@ -0,0 +1,17 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_IOCAP_H__
+#define __ASM_GENERIC_IOCAP_H__
+
+#define cache_flush_permitted(d)                        \
+    (!rangeset_is_empty((d)->iomem_caps))
+
+#endif /* __ASM_GENERIC_IOCAP_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602362.938953 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmR-0004eY-17; Thu, 14 Sep 2023 14:57:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602362.938953; Thu, 14 Sep 2023 14:57:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmQ-0004bE-92; Thu, 14 Sep 2023 14:57:18 +0000
Received: by outflank-mailman (input) for mailman id 602362;
 Thu, 14 Sep 2023 14:57:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmP-0002W4-4W
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:17 +0000
Received: from mail-lj1-x22c.google.com (mail-lj1-x22c.google.com
 [2a00:1450:4864:20::22c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fee7afbd-530e-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:16 +0200 (CEST)
Received: by mail-lj1-x22c.google.com with SMTP id
 38308e7fff4ca-2bb9a063f26so17205771fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:16 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.15
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:15 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fee7afbd-530e-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703436; x=1695308236; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=/wKxagK2nDf+XL7EhN/Uwr5WmHp5EtILaw4EZ4TwehE=;
        b=GdjR/TkmaNV4oXYhOB6Tuuzzz99+j+GkoOwwF8T6+CdvcCusHEUTNaLKic27Bx0HSD
         Fq0ICP1JLKVCKzX3lBO1bZOMXp3DRnzn4sRwp4vYLm/0CbTM09X87Cq7iUTjGc/2bkgD
         jhc42Ee8yKVcXR3xzH/9YWZPE8pJHrOdRYFAA06QVVpvPFg74WsDZ42a8Fx+Tjy8e7Af
         SYP2qFfZPTa3512gsOe9hMdurcXFHg1GS9W7LlLVD7pnJEaGJ10yX8CtWTWh8+X9BwxK
         JndZBY+f/0ijUw+2aJkTeuuwlK/CbYwXzrSkWMD7ZMsL46iyhVargCFEX50RXwer8cn3
         NqzQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703436; x=1695308236;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=/wKxagK2nDf+XL7EhN/Uwr5WmHp5EtILaw4EZ4TwehE=;
        b=PRH5MeLYSfWh40/OduLf5Q5nRudWfm/QRlxdAaBytxBRmmEFw+ApMH0cs9runeAAOU
         uLUNQEvGpZh7cSbc3mPfOSWD9zgFzmlshBx32H3VJPgntrF8DR1u0Xf+ABMCONbUSwVy
         Q9z3NtgU7lkns6LmToyDKPT4DoUgk68+dIM4axCa/Tjb6Jjtl8O3ioO/bZLFbF4nTbSP
         CmyYj6ViMUJ5ppRmVpyHjp8VHOKjJPghoZUCye4p9n4l2/BJNaAXJStaRWcLDS2z/VO1
         MXbdbdbiUfR/7K4uOzhRcuM4y4AkfbeS0Fho7HwBb82saMkH0jF0gEH7UJPoNaain8YY
         ldhw==
X-Gm-Message-State: AOJu0YzRrZaQjYtSNwaeG5+SF/NiHOv2RMJG4t2tg7XKyunbdrkT/SMl
	WCIaITKOwuKSkGVwH58MQlCH0jpHq8o=
X-Google-Smtp-Source: AGHT+IGntyE75MEQMEMcUlX34KQSRa218EY5Pqa4vPL3PcOiG88teAQUTEN1CDYGpBYzWH87qcsv7A==
X-Received: by 2002:a2e:2e0e:0:b0:2bc:b821:84ad with SMTP id u14-20020a2e2e0e000000b002bcb82184admr5262753lju.16.1694703435939;
        Thu, 14 Sep 2023 07:57:15 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>
Subject: [PATCH v1 11/29] xen/asm-generic: introduce stub header mem_access.h
Date: Thu, 14 Sep 2023 17:56:32 +0300
Message-ID: <79ed96f65e7c7f4036cf62ba6b5b44a371c758ee.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/mem_access.h | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
 create mode 100644 xen/include/asm-generic/mem_access.h

diff --git a/xen/include/asm-generic/mem_access.h b/xen/include/asm-generic/mem_access.h
new file mode 100644
index 0000000000..d2a0b545a4
--- /dev/null
+++ b/xen/include/asm-generic/mem_access.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_MEM_ACCESS
+#define __ASM_GENERIC_MEM_ACCESS
+
+#endif
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602363.938963 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmR-0004vq-W7; Thu, 14 Sep 2023 14:57:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602363.938963; Thu, 14 Sep 2023 14:57:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmR-0004sN-AT; Thu, 14 Sep 2023 14:57:19 +0000
Received: by outflank-mailman (input) for mailman id 602363;
 Thu, 14 Sep 2023 14:57:18 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmP-0002WX-RE
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:17 +0000
Received: from mail-lj1-x22c.google.com (mail-lj1-x22c.google.com
 [2a00:1450:4864:20::22c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fe9e13dc-530e-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:16 +0200 (CEST)
Received: by mail-lj1-x22c.google.com with SMTP id
 38308e7fff4ca-2bb9a063f26so17205651fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:16 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.14
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:14 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fe9e13dc-530e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703435; x=1695308235; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=9odqJZ8fT0NBvFL0G7lSK5C7AzXQQIJNuRADsMCRL4M=;
        b=Nzxtzi1qDDqkR6EUJA+G1RQMaiZYJNEUmzDSehNWorB09urBmjgpjS7ljLjKq/wnr+
         RBX72ahhIZ2o3KhIdbrIVfJwur76mY6i7r8EO1dYmnLUG/2rMKKQLnnjECBCKFmAi5Rf
         Va3EPfnKqna7mIv6J4zRrZjAvwDgZNeJWxno73fqG2stOssHZnEzRXF6HwW5SeHe7JSo
         uo7ZHyF8uRA/eGMvmpgqbO05hdFALFgKp0Ltix5+p/0VUcOycwxkV9eHdJWgYPfif7mD
         jHGcHc9mmSHPDTo57vf9dRBPWlr9RgFtWHnLtnAt9mmzeUxYE5IXeXjHaW5foXbCv9+a
         bWJg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703435; x=1695308235;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=9odqJZ8fT0NBvFL0G7lSK5C7AzXQQIJNuRADsMCRL4M=;
        b=n+s7L9HfOrO0uDZOb3Hm7rkUbHeHKWelkbRzmGHxy/EuXcfOhOI/SI1Elm+Bag7Xvr
         /zDBzbo2lxzKR4qeIjrK7lnVUnvl9NQG3yhoy8VNtUJg6YtWzZYuxDMmxdjeo2KcTALE
         2yIoqlYN42Sg9XpOwwJKizz3ejD9Z3kYGKtXtSdliKORQVc+tqmz9UlGBr8IwZh0VjIH
         LaCLmW3Z44HC6gd5LlmURg9ZkCFw3JdWSxjFG7lwdQulkvP+NbPmWgbwaez+E4jsuuuI
         bh1PUT3ZCu0ks4Ms/ZTTzuUabLpoflV5tX95hStFtp3KsI03T/uAVhs3HFCGG0WZJ+N0
         uiaw==
X-Gm-Message-State: AOJu0YxCpi/VvotwNV5AtUZiNWTmgDa9RujeTzs3ZQGmB8Agrm7Q8VRj
	L4UjCLkSR9j84tgtS9by6OpUGn2Dxbo=
X-Google-Smtp-Source: AGHT+IHlHMoKZAtkLLRCJfcaFKFCxeJBKrvwcBlZccS0UzUPAC7tzUAkexKmpg6t9lpw2h1MkhesfA==
X-Received: by 2002:a05:651c:1045:b0:2bc:e470:1405 with SMTP id x5-20020a05651c104500b002bce4701405mr5089269ljm.46.1694703435259;
        Thu, 14 Sep 2023 07:57:15 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 10/29] xen/asm-generic: introduce stub header iommu.h
Date: Thu, 14 Sep 2023 17:56:31 +0300
Message-ID: <8990c5c77c12333bfa7aba42b66bf7fffee5a096.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces stub header necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/iommu.h | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)
 create mode 100644 xen/include/asm-generic/iommu.h

diff --git a/xen/include/asm-generic/iommu.h b/xen/include/asm-generic/iommu.h
new file mode 100644
index 0000000000..b08550e6b3
--- /dev/null
+++ b/xen/include/asm-generic/iommu.h
@@ -0,0 +1,17 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_IOMMU_H__
+#define __ASM_GENERIC_IOMMU_H__
+
+struct arch_iommu {
+};
+
+#endif /* __ASM_IOMMU_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602365.938975 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmT-0005SD-Qf; Thu, 14 Sep 2023 14:57:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602365.938975; Thu, 14 Sep 2023 14:57:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmT-0005ND-7t; Thu, 14 Sep 2023 14:57:21 +0000
Received: by outflank-mailman (input) for mailman id 602365;
 Thu, 14 Sep 2023 14:57:19 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmQ-0002WX-VW
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:18 +0000
Received: from mail-lj1-x22f.google.com (mail-lj1-x22f.google.com
 [2a00:1450:4864:20::22f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ff5cdae0-530e-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:17 +0200 (CEST)
Received: by mail-lj1-x22f.google.com with SMTP id
 38308e7fff4ca-2bfc5218dd8so16470321fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:17 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.16
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:16 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ff5cdae0-530e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703437; x=1695308237; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=QQXCYyquIEbi5XMgs2FhYiRFtbU5KRI1/LCQxCDh67Q=;
        b=c6dpwrM7HcJtX2Tgx9IzVBF2EeMxhEokyUYLG8HU6iLTNdstzXuL1m+lPPD703b61b
         31we2cK11jwiXmLUn5AYVP+OPaY5H1LwA3dZ4+jK1rCl/xaXhyIkHsjO7+PfgbqOAT0Z
         v2OYWs+XvNap3L7S5KuxeF33a3Ku5R+dzC6727SaKEGRxRJMuq4uro8N2TRUt8t3I5Ed
         lH67Hla4a+2Pl+sMga2VSxcXVbRHSjDpe9+ebuwJeSRJnT+c9RNhK8ueFqWa0tS0V8az
         I9ReuFUOQkTt5yhTknfoJM1ijODPEcPBnDQg5QsFhuOtcEnKI6u6mqDi0Km6fjPX9xpq
         hEdA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703437; x=1695308237;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=QQXCYyquIEbi5XMgs2FhYiRFtbU5KRI1/LCQxCDh67Q=;
        b=ak3lJZo92HFxbbl8jPXv2SOsl0Ffrff3kN3A1sERtXyqtqseFtrJqNwhgYuwQdEZsZ
         LVZl9VrLx+2GfRz0DUZCPvcAtsW539KbGa+N0H08pDrdbrKwTp+sF+/fYH29rXtL9Shd
         DTMl0WF0ed4S+yT8dngpe3hm3CrJKYzsm2IX8Q/qktPefuEK2NIhPVChNp7MHfORfxK1
         FqMmCSq0lttTpnTDmogfxkZjW1hYq7nWB3/3QUrfTzkyIaAbkibcIQPCm9/vUjSut3Nn
         VPqYCnrgKKDrmMu+EuNrcGNGnNoIhBEZRFYYVgSaoJrSQXvBoz4on0J/974B4vDz9+ih
         IqUw==
X-Gm-Message-State: AOJu0YxdtWgBV9G6lYnfICPtVvJMpIkcdl084/Z3rhFEWZEFU4031EdU
	iz5XofMfWL39b/16z1W3XbHN3TZPlqY=
X-Google-Smtp-Source: AGHT+IFQioJ4htBJRPvdxXzGxc7Zbktlv5OamzW6uDU+X74JSGDM6VmNEadDUHdUhWWT8dBmUtsF1w==
X-Received: by 2002:a2e:9141:0:b0:2bc:d38e:b500 with SMTP id q1-20020a2e9141000000b002bcd38eb500mr5761309ljg.42.1694703436782;
        Thu, 14 Sep 2023 07:57:16 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 12/29] xen/asm-generic: introduce stub header pci.h
Date: Thu, 14 Sep 2023 17:56:33 +0300
Message-ID: <597a482c70fef196e245a5d898ea6314a0c479ca.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/pci.h | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 xen/include/asm-generic/pci.h

diff --git a/xen/include/asm-generic/pci.h b/xen/include/asm-generic/pci.h
new file mode 100644
index 0000000000..b577ee105f
--- /dev/null
+++ b/xen/include/asm-generic/pci.h
@@ -0,0 +1,18 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_PCI_H__
+#define __ASM_GENERIC_PCI_H__
+
+struct arch_pci_dev {
+};
+
+#endif /* __ASM_GENERIC_PCI_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: BSD
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
+
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602366.938980 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmU-0005fE-LE; Thu, 14 Sep 2023 14:57:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602366.938980; Thu, 14 Sep 2023 14:57:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmU-0005bL-5c; Thu, 14 Sep 2023 14:57:22 +0000
Received: by outflank-mailman (input) for mailman id 602366;
 Thu, 14 Sep 2023 14:57:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmQ-0002W4-UV
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:18 +0000
Received: from mail-lj1-x22e.google.com (mail-lj1-x22e.google.com
 [2a00:1450:4864:20::22e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ffd017fb-530e-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:18 +0200 (CEST)
Received: by mail-lj1-x22e.google.com with SMTP id
 38308e7fff4ca-2bfc2b26437so16161951fa.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:18 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.16
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:17 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ffd017fb-530e-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703437; x=1695308237; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=ge5GOD9Fr0w6na65xCHQYy07lIZpjdeUTd6rT4/vFc8=;
        b=iG9qc431HTGoonnlR++lvmrbrY07uJBpY1WSJnrs1fAqB9En3x4G/nys1PVD3dZ1BX
         1dNeBhGktadAI15G2QAnoWcKBzR75bP3sIef3kALoH+/29gXIxvGZc92eRT5P8GUgZLn
         csdZTvZXeLMVFm13w5SFv3A7ZrXpGbAopx4PxoIWpYNC2hm4WlQOJYTxpX471s6TqfkN
         OuBUGWA34V0q+vw+qZVuREsQbIDMyqGleNVfpVXtGPEQtvG2viZyqLEwQEkf+VARO5LP
         QpmKiL80AlSq5kk1Ad8PcXBRLvF1kwE860Ga3uw597kWtx3THrVr+n/8CdXc1h7i2OIQ
         wUvA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703437; x=1695308237;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=ge5GOD9Fr0w6na65xCHQYy07lIZpjdeUTd6rT4/vFc8=;
        b=iWq62AI8DTM5B973MHkBFoUmZkZBkso3HnTenZypI68rMtQy/P69gMy0+k30BgAEPl
         Nz/XoQ9htIQKUElTwlzpRuO/os2zBlBMRt/xJd+1OXqFqMspXkyR44ZkPXjKxUyPM7xd
         hQ3YDNEgmrAKdvCU9SwmDqPZPRIg0WV1iDugwjAlAfJ+SLhY6U971PhdoFRQ+6jEUFA7
         LZs+8//S5GTc9HnJAbHw1dRP6ILCW9pBzm6+0olTpTVCcnZV22UziUXm3l0hOkWdjeX5
         rfE+HAnKziOvxUL/VvpyRgWXH4Yr06WadmM0opT8DffWIvjn7uI6ube2LMcFOym6ejIQ
         OZnA==
X-Gm-Message-State: AOJu0YwxZQFJ+0e9ggWMt6fq/GCPsNEvF3Y6ncKJwoxIS8C3pNQUW2dz
	r39w1NaFp5kYgZbjQedxAO1P4irkUZ0=
X-Google-Smtp-Source: AGHT+IG+wg0jHGf/n/TuTWW/3xuNm0mtFdh6lO8xxNiGJeFuNuosUrKFBO0cKnaRD18ayOqpevA9Ew==
X-Received: by 2002:a2e:958a:0:b0:2ba:7b3b:4b7d with SMTP id w10-20020a2e958a000000b002ba7b3b4b7dmr5024211ljh.17.1694703437524;
        Thu, 14 Sep 2023 07:57:17 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 13/29] xen/asm-generic: introduce stub header random.h
Date: Thu, 14 Sep 2023 17:56:34 +0300
Message-ID: <11661fae695fc50e212787829bbe8afb316f2a52.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/random.h | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)
 create mode 100644 xen/include/asm-generic/random.h

diff --git a/xen/include/asm-generic/random.h b/xen/include/asm-generic/random.h
new file mode 100644
index 0000000000..cd2307e70b
--- /dev/null
+++ b/xen/include/asm-generic/random.h
@@ -0,0 +1,20 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_RANDOM_H__
+#define __ASM_GENERIC_RANDOM_H__
+
+static inline unsigned int arch_get_random(void)
+{
+    return 0;
+}
+
+#endif /* __ASM_GENERIC_RANDOM_H__ */
+
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: BSD
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602367.938994 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmW-000690-VT; Thu, 14 Sep 2023 14:57:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602367.938994; Thu, 14 Sep 2023 14:57:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmW-00065I-7U; Thu, 14 Sep 2023 14:57:24 +0000
Received: by outflank-mailman (input) for mailman id 602367;
 Thu, 14 Sep 2023 14:57:20 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmS-0002WX-Jd
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:20 +0000
Received: from mail-lj1-x22b.google.com (mail-lj1-x22b.google.com
 [2a00:1450:4864:20::22b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 005159c4-530f-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:19 +0200 (CEST)
Received: by mail-lj1-x22b.google.com with SMTP id
 38308e7fff4ca-2bcde83ce9fso16702111fa.1
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:19 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.17
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:17 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 005159c4-530f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703438; x=1695308238; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=KJyUmaE6XVKkbHFSmL7W+qlUab1X3iwbXqdSKsKXOYM=;
        b=n2ewXsV2tfCn7d+ofIu/fI1q3330wmUQcxzGjpQ2NpAAOX3LsigmQAoJJt/daqlPU4
         0kZ7RE3W/+XDzKAzJYdu4wycPnGGfEeiUtMAKwOF52KS6WOF2U6moXyAZK3lloB/ENTj
         dFgeZJBYVE7o9OwuOsb5UZL8yU2aWvfx73Skz2XqmWCZbKmNw3frONXfV242YJC0yUaA
         cqN1NtSNcfZGdKEc+ES1Vdf2IbcT0x/dHeOPkWAPBaM/GGDOBW1Aynju5zxuEuEnnHLt
         cYP6eYMVUoQnm4o8/dIA79/rsX2EdrtkRTapn1M1Yi2iMxXBE1rCkow7oxTDJ5VW0h9t
         LX4A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703438; x=1695308238;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=KJyUmaE6XVKkbHFSmL7W+qlUab1X3iwbXqdSKsKXOYM=;
        b=XJT1xtPeeExSUw0O4gKW3brsRxPRGmzRwSN773FyTdVMA1sPMF/OYdZZ66sw87ib6J
         ph8WORCpErNOtLXa15v9OeA6Lmq+Gs3Com5+rlKFOXlUla7S8VOZhVk7ZrRr4m0UoN0O
         SpS5BudG6f0JVM6x2Ld1S3uv+e7Dnt/vZc9DjSlzcZIBXFviYNg21AukiH1eqga+toF9
         VqfKMsoIRef1h49YmvysNHC8bb2f/ApKHHCQQcvoeaa1SuIjtlS9Bjt3o5k/WUxYvW1k
         MM47jtrzjWY3ts0as9Dmpuj/JLtleKu8IkS2fXO1Q+0wflHwYToSUixSNEPtzCgPR0mY
         o4PQ==
X-Gm-Message-State: AOJu0YzkvsJ2zTCq7XS//+p4N6VIvhIc3hpZsoW1KCjwSzmbmDq8uA8I
	UYfxIPvvJXc5VZ88R7S4XqVEoRVIeGE=
X-Google-Smtp-Source: AGHT+IHIQozzFk7f0tTtIVLGiTHEWo0Cm5pRE2Suj5w7XF4rAnDFFKB8g6Zsk06/GlJT42VJWlftVQ==
X-Received: by 2002:a2e:9141:0:b0:2bc:d38e:b500 with SMTP id q1-20020a2e9141000000b002bcd38eb500mr5761368ljg.42.1694703438367;
        Thu, 14 Sep 2023 07:57:18 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 14/29] xen/asm-generic: introduce stub header setup.h
Date: Thu, 14 Sep 2023 17:56:35 +0300
Message-ID: <0b0ec8c33722cf25a0b87cb3c24d6d96c3a90301.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/setup.h | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)
 create mode 100644 xen/include/asm-generic/setup.h

diff --git a/xen/include/asm-generic/setup.h b/xen/include/asm-generic/setup.h
new file mode 100644
index 0000000000..37feac222f
--- /dev/null
+++ b/xen/include/asm-generic/setup.h
@@ -0,0 +1,16 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_SETUP_H__
+#define __ASM_GENERIC_SETUP_H__
+
+#define max_init_domid (0)
+
+#endif /* __ASM_GENERIC_SETUP_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: BSD
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602369.938999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmY-0006M9-3L; Thu, 14 Sep 2023 14:57:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602369.938999; Thu, 14 Sep 2023 14:57:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmX-0006J3-64; Thu, 14 Sep 2023 14:57:25 +0000
Received: by outflank-mailman (input) for mailman id 602369;
 Thu, 14 Sep 2023 14:57:21 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmT-0002WX-An
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:21 +0000
Received: from mail-lj1-x230.google.com (mail-lj1-x230.google.com
 [2a00:1450:4864:20::230])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 00c98717-530f-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:19 +0200 (CEST)
Received: by mail-lj1-x230.google.com with SMTP id
 38308e7fff4ca-2bd0d135ca3so17408501fa.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:19 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.18
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:18 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 00c98717-530f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703439; x=1695308239; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=Rd3/ASfal0zkAAp1bRz+HwPmAgboUa4bs082ZF03pek=;
        b=DeNY3RIR83XMAo2VG94ifBNrMh/JSbYl0kntm/e9Dhj+Vg2VxIO5DiqSEwK2lt1n0B
         Fze6wotB2E/AGc9pFZ7Gsme3bar//oLT0vRHFeFrgQC5IpnLDyyF8TmvZSwHJ46omWzH
         6FZf/9aw/Ju3PPlc5rzsf7qEEMwb7mWMG89VezTAW35Eah//XtwrGyrv55fEL4foUypq
         3RrvGMDMeId2aFbt0uu6ZKXfQrJj+kzkLy0G9uFBHYtzsw+FsFAlJVB0Ym65qy45PsIS
         H0x4+rKDVrDzSWk9AhNUmCwK+N7+ZTXWx+tjF9eWLuews/ooqSzeQEYJFMUgscuWteed
         pxqw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703439; x=1695308239;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=Rd3/ASfal0zkAAp1bRz+HwPmAgboUa4bs082ZF03pek=;
        b=lsx29N0PtsugRi9Bz/saOxPPLLID3XUCA5/V1WE6FzXauPG0ILnUcdxQoPeEURpcG0
         kLY11r9r8Ic0Kf6qrNeIy0HSMaiurKGiW+mtPYHKjd/xYJlxgwSgucSq9qTIYXcEAmyb
         TgXaxxR6p1bQPjFCO9BHlngSIfkjtRZn1YmNj8OISG/LaOFM/enVwg1jaQhATzs2JP2C
         eU5mMPQ1Kj09ifLpT8lKCxE6t2u9wPl22HqLm5gSwGWK97573ejf6gynxdRpAvHW+2u3
         +t2/pF8axs8Fo/hIy5WSWfLjOt7LZrTYikCm/a5sQBOCSYg6+E/M+Hcwxe/b/YCNWsmz
         wuWw==
X-Gm-Message-State: AOJu0YzJQ+rAGDmlFV0AEKKzStG23XDgSvqNPUUxhxHxz5/zZLp43j1H
	1pJ9FblpLDzZAQulFGPXVHx10h9PbGg=
X-Google-Smtp-Source: AGHT+IG0FhU5Dx903IWeGZXwqjMJHc2mW4zyOBCiqQMT28ZQZt72zg1isChvAMfjOF62qGlgaZz5pw==
X-Received: by 2002:a2e:98c4:0:b0:2bf:b182:9b7f with SMTP id s4-20020a2e98c4000000b002bfb1829b7fmr4856579ljj.26.1694703439132;
        Thu, 14 Sep 2023 07:57:19 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 15/29] xen/asm-generic: introduce stub header xenoprof.h
Date: Thu, 14 Sep 2023 17:56:36 +0300
Message-ID: <0b7805d6bd5f16d06656093d964d5d90030958d7.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/xenoprof.h | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
 create mode 100644 xen/include/asm-generic/xenoprof.h

diff --git a/xen/include/asm-generic/xenoprof.h b/xen/include/asm-generic/xenoprof.h
new file mode 100644
index 0000000000..8ee3408b77
--- /dev/null
+++ b/xen/include/asm-generic/xenoprof.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_XENOPROF_H__
+#define __ASM_GENERIC_XENOPROF_H__
+
+#endif /* __ASM_GENERIC_XENOPROF_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: BSD
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602370.939009 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmZ-0006c8-Aj; Thu, 14 Sep 2023 14:57:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602370.939009; Thu, 14 Sep 2023 14:57:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmY-0006YE-G9; Thu, 14 Sep 2023 14:57:26 +0000
Received: by outflank-mailman (input) for mailman id 602370;
 Thu, 14 Sep 2023 14:57:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmV-0002WX-Ok
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:23 +0000
Received: from mail-lj1-x236.google.com (mail-lj1-x236.google.com
 [2a00:1450:4864:20::236])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 02331945-530f-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:22 +0200 (CEST)
Received: by mail-lj1-x236.google.com with SMTP id
 38308e7fff4ca-2bfb17435e4so16720911fa.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:22 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.20
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:21 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 02331945-530f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703441; x=1695308241; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=vw4hs7r1RHwv2uC+iQlr3b+8ho8pcegGsrGnk2bhCNY=;
        b=qzpF6ZRsVQCa2e18UjCer1M88+J6GGVNivNK84B+J1OASihjcCG2F7IBO3xxli66Yb
         qgrvqved6pbLfgnSvct5VRwUOn9Gt21lZns24W5GGIs0Kh2cLkwXNt5JUkkMEYtfOBzO
         cNnxAza9KL1Tmay6kqyiRHh4ZMuGkOzAJ964QtDJA2MrJb0/zbtC5dhwsVJz52EIsukt
         rlCvrZgAPyxxdICHDMxBnw2QZegvNj/sVKfAZTdkR5dJyVq2HEKeuf8tJyhNjWPrEX2O
         BWrOEAZkvl8UZbufZgZyJP7yHqTisn4EwfqiFmWPOi65KrbkYeJ03oVL/XopvjpzuH6a
         yXzQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703441; x=1695308241;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=vw4hs7r1RHwv2uC+iQlr3b+8ho8pcegGsrGnk2bhCNY=;
        b=WOHSUcxnixFDk6kWPShfJAaIkA3L9g+Nx8lDvs1goEHj9KcixubbBLo9B8bKZyI04N
         O/O2CNARa/9QfnoBKBjjIHNWAuIfuOc2YKlhEnOfYiFJ5n/PMecNuONp+XhYA9NRJDSu
         rWfSEik4ncbejEIXOWl9nTaUAXQgFzY8yiCrRiuG00qChovm+k0PLSY4yWMzwTJWig/t
         aDfJdsck2Hz0KtcbtslhZmHFmQmlIAZQ2I3gZT7RlwMN3tfkDruWEo6gIohkQ8hHCRbW
         WDSjuQ63hKDHenggd+vg7Y8eIsoCclfuDi3u2beS2h/1n9VD+uWnueAAyEknFVREhOYX
         SeyQ==
X-Gm-Message-State: AOJu0Yy76Ta/e8GiR1tfE+3zJdrdQGiI8txMtcPLzyCSzUOeS977SUho
	6ilBGAw+w31ah+gYuEBRX225bJ2pCnQ=
X-Google-Smtp-Source: AGHT+IGOu5qeTStgE788nL5SLYKiQs4E/s6kFsXw64y2Cq98UHtX7SbPMURoIsOH5yR8XKkL1ZLMSQ==
X-Received: by 2002:a2e:9791:0:b0:2bc:c51d:daa1 with SMTP id y17-20020a2e9791000000b002bcc51ddaa1mr5416813lji.39.1694703441419;
        Thu, 14 Sep 2023 07:57:21 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 18/29] xen/asm-generic: introduce stub header smp.h
Date: Thu, 14 Sep 2023 17:56:39 +0300
Message-ID: <e803ff406f9f597bd42242010a219148d387bba6.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/smp.h | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)
 create mode 100644 xen/include/asm-generic/smp.h

diff --git a/xen/include/asm-generic/smp.h b/xen/include/asm-generic/smp.h
new file mode 100644
index 0000000000..5d6b7185f1
--- /dev/null
+++ b/xen/include/asm-generic/smp.h
@@ -0,0 +1,30 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_SMP_H
+#define __ASM_GENERIC_SMP_H
+
+#ifndef __ASSEMBLY__
+#include <xen/cpumask.h>
+#include <xen/percpu.h>
+#endif
+
+DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
+DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
+
+#define cpu_is_offline(cpu) unlikely(!cpu_online(cpu))
+
+/*
+ * Do we, for platform reasons, need to actually keep CPUs online when we
+ * would otherwise prefer them to be off?
+ */
+#define park_offline_cpus false
+
+#endif
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: BSD
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 14:57:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 14:57:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602371.939028 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmd-0007gY-Eu; Thu, 14 Sep 2023 14:57:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602371.939028; Thu, 14 Sep 2023 14:57:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnmc-0007c1-HD; Thu, 14 Sep 2023 14:57:30 +0000
Received: by outflank-mailman (input) for mailman id 602371;
 Thu, 14 Sep 2023 14:57:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmY-0002WX-5w
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:26 +0000
Received: from mail-lj1-x230.google.com (mail-lj1-x230.google.com
 [2a00:1450:4864:20::230])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 03a6980d-530f-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:24 +0200 (CEST)
Received: by mail-lj1-x230.google.com with SMTP id
 38308e7fff4ca-2bcd7a207f7so16659921fa.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:24 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.23
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:23 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 03a6980d-530f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703444; x=1695308244; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=8T7F67gdUCk5RxXzpIuqhSSFrgC4kIPj+C7zkKjIZjk=;
        b=MYZAZMANLfF6jA6b6WgMbOEPjhY0xSrcMFQyuCLJJnLIwR/jch+NoGkBVAtBARYoCb
         v4sWMHZQL0XsKmd4MexLU9ySjoxiGMdSeCrezOkFDzgLIzVM8ySrUj7d6FcSLehYikKp
         dt+k1d0Ss9pQx1ZKDn8XjR6aJpXbCT9jkv/7E+GWJwaNsaUUn1aqD191EdEx1TnPjFTN
         ohKzfcgH0jWzTsqItx4jfkDhYsH9rufUNGQCHLUKKPtqtEMsicFBUK3fMMaHNyg5ji15
         AaTAwij8hAgIqcEJvdEiWly64tGmzfTkAIOUw5TLuimnn2lOdS8P2p2JyD9o/MA/Km9g
         Oe4g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703444; x=1695308244;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=8T7F67gdUCk5RxXzpIuqhSSFrgC4kIPj+C7zkKjIZjk=;
        b=ezfoYaluxT9tF1gLlDiE3y2URBcWvLibsHAlGCzaY5T6YFjk2IkkEjIGcVWqN3UZom
         SnvZYoyboS8ro6vEVmr1E2MmYsuZpbGjhZhNynf2Wmz723RD56Nus/EPJVeYbpBdcj/H
         X7j3dynoLLtLw98K4C5U0Vv+yM8nD9pjk+LX1PfI2CM6hjIFWiKzchi+hErqCoGvQcuL
         CwuW7EPARQ653mQjA0p1K7fheREWVm+PkkaFlTTcMVRQmZx7dype88E+p2cHdL8Hab0H
         KwbNaZxJ7ij17vnGqb41MD4XyTiKMijzjPm+8oA3oT1jO1xDxB88tjyK+w/pnqso08x1
         d9Aw==
X-Gm-Message-State: AOJu0Yy6smKTtUXxD09hQ8mDrTRmrNRj2K+c8OZYBkgkPuo6UGggX2vE
	IS73Ql5EMHnfVQV9hohyl/R3tvCK/e8=
X-Google-Smtp-Source: AGHT+IE5hnkQJ/YBRz2XLkfxGXCOOALx/sf4bFP8n2YRPE2LtDydSYrRsL4Y2XSyuCPA2LsCZrI/5g==
X-Received: by 2002:a2e:501d:0:b0:2bf:b770:ac2e with SMTP id e29-20020a2e501d000000b002bfb770ac2emr4391412ljb.33.1694703443933;
        Thu, 14 Sep 2023 07:57:23 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 21/29] xen/asm-generic: introduce stub header altp2m.h
Date: Thu, 14 Sep 2023 17:56:42 +0300
Message-ID: <619b24fbd568f439baf1941a972c6943f423b4ad.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/altp2m.h | 34 ++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 xen/include/asm-generic/altp2m.h

diff --git a/xen/include/asm-generic/altp2m.h b/xen/include/asm-generic/altp2m.h
new file mode 100644
index 0000000000..e73cc8a04f
--- /dev/null
+++ b/xen/include/asm-generic/altp2m.h
@@ -0,0 +1,34 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_ALTP2M_H
+#define __ASM_GENERIC_ALTP2M_H
+
+#include <xen/bug.h>
+
+struct domain;
+struct vcpu;
+
+/* Alternate p2m on/off per domain */
+static inline bool altp2m_active(const struct domain *d)
+{
+    /* Not implemented on GENERIC. */
+    return false;
+}
+
+/* Alternate p2m VCPU */
+static inline uint16_t altp2m_vcpu_idx(const struct vcpu *v)
+{
+    /* Not implemented on GENERIC, should not be reached. */
+    BUG();
+    return 0;
+}
+
+#endif /* __ASM_GENERIC_ALTP2M_H */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: BSD
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:05:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:05:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602396.939052 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgntk-0006cd-80; Thu, 14 Sep 2023 15:04:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602396.939052; Thu, 14 Sep 2023 15:04:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgntk-0006cW-52; Thu, 14 Sep 2023 15:04:52 +0000
Received: by outflank-mailman (input) for mailman id 602396;
 Thu, 14 Sep 2023 15:04:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgntj-0006cQ-A2
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 15:04:51 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20627.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::627])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0c6467c7-5310-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 17:04:49 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8128.eurprd04.prod.outlook.com (2603:10a6:102:1c8::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Thu, 14 Sep
 2023 15:04:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 15:04:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0c6467c7-5310-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=j21l50denBlfnEaNhh1uouCHRpSsHg66IIvXRFL8ggIpZsBMnGedsr4htbaLbVurmbZmu/BCD+yzjQTJpeIhRsVbgGMxehM86r7kBP1jvsjUoKijcpF8azOi0eOaaIR9F7zxvqOH5dF5IJuUIEaL/A+enmZkCujnL4pVeuBRxHcJ1CRVt5l2SMMJrQm5stOAMeJKnJlTAm8CPwgxZZvQdaxMDhIJ2Ce7MVAP1hqguUmu09VmcFVVMJmN0mVcNs2wWlWR99XQgZyB6MfnKUPim4+dlXB2FqV0XxTpg2bEPv6hobEPGy0UE8HblNGXtTF6jH3jFj80Hcpk+VT3PmKT9A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pzS8i1c2PHkHzQGnN0faVQ8EXIBq/oQYBS2vj1yzVJE=;
 b=LmLBsc+QXmmzPYK7oK2huMkrqyZIyFHbufbjN7gIXFsYGgbLBhPmuI3tDc73/3hWLt8FkLA4iZz8ZlBxQgufMt+Uu2ThkJXpprqD+IcgCY8vv5fnmhUlDUhww4hw4Y32V9z5D0rkUN/TjX3YLeBRDYutym0LOU16HRHD/aASMcJkq9ylomibDqgnYyAwgGz4/bPLAJvjcNkZPVER5SakKv6j8pcwpqKKCx1AJxCgv9wIFHVegySCU3c5XilcnrNcxqdsOInrHI2Q6S8FClu/4ZPxzzdyb3676IZH4Loll8IKVRyOSPvo9/ILxDvr5RcPX3VRMKENLSZW5iGA4jau5g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pzS8i1c2PHkHzQGnN0faVQ8EXIBq/oQYBS2vj1yzVJE=;
 b=bLizh0Q0t8vhUY4LHA/rCTQmcsufWS0/ZcRPe5MmojC71CmLEy7clwdgWZEHfuKdhAVQhvhdKqmEk7eUQAIfEabqTN+ZSCWw6VDEHadN0iyWF24UeQtRlNObejwrOJKtqOtnzXmVBQpXmye6vaiCdU0bcyuXmU7WnahzG55Tk6byWpFjWyzxmMZ+WfxdsFyuQByjmN7Pp18LLTpEbWQnGa+zdjPo5LDlkMau89r66PMdhhXZiQvz9ppbUuX/vg/Zn9d2OMZP9TftkcPz8AOHIVIDmcF+eCetDj/I2bI5n61CvgyV+8aiK4Htv1rzTJvmWRC5XKyK0ebrehPCItL86w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1e71b915-bec5-2430-3304-f6f46842359d@suse.com>
Date: Thu, 14 Sep 2023 17:04:43 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 3/5] x86/emul: Add a pending_dbg field to
 x86_emulate_ctxt.retire
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-4-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230912232113.402347-4-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0106.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9c::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8128:EE_
X-MS-Office365-Filtering-Correlation-Id: 91375c42-88e6-4500-b01d-08dbb533eee7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	h5y0qySXapEmzu2N9fiWAK8ap2rSMxYHXBOuN2jk16zeSB8YDBvnSLMXz1/lzVdP3zi11yycx01redGrAM28+MecFB3GQ8qGryqJ5Y4JKenZVd2c/LrghRXB7VZFWxDCaHTMplFuI2idGmYdxqXsp3pJWDBRAdTfzsweT0PFDqDgMQZeOTWFsx7JA7Gn/ybSxhXFNpozUqibyTEj+W2doEeAcaYdoFzAlmwQgtTXME2bJuMCmNgbCFxjbeBsaABX88GgPh8R9MZouFl6PC06F391Xq02Dle7ghmzqHSycwdepCU41f76b3lzg4dims1yunkjgQvTeG7f4Ioka/ZnyOTjXP+iaJsXzDGIRgGg82Fnl0ah1X9lTy1qV9jNkfGHN8vfkwOkPswa8hCFxO3OJxCUZ7gpDqRGluAUEgWudDeoYX++AQ/MB0z77whbVXvQ+8ROxwe8V6BjtIm29Tj0YXJojfyu45cstjDW1aWmIkNZrzH9pOWPD9VOQ4qrCLBqNYhSiFb9zZaqxxKPxAoJohn/hwBMJlix5jZobGenHA+LgZfMqDdIbxTP3mrbPzSrvKlGMNQNpcsaPdIAnSfACMwFX2z2V++LNMeWfArP/1iSr5niqLUOEYgtHEXqAgrlRNOv1MLl0FIVlioe9pCFsA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(376002)(366004)(346002)(39860400002)(451199024)(1800799009)(186009)(478600001)(6666004)(6486002)(6506007)(53546011)(2616005)(26005)(2906002)(83380400001)(66476007)(66556008)(6916009)(54906003)(316002)(66946007)(4326008)(5660300002)(41300700001)(8936002)(8676002)(86362001)(6512007)(36756003)(31696002)(38100700002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SUo5djdVNDZqQ0s2dkZCNVU2MVFmUXNsU3UwQkd4UCt2Mm5CalY4L29CU0N0?=
 =?utf-8?B?OEJoZEZJajlTMXA4SmxUdUFoN29lcUplenVZS2wrM1FxdDBGOUZjTjJJUGVT?=
 =?utf-8?B?N3NTTGF6M3I4cjNDYWtpdW5MdEFOZ1BTZ2U3R2ZRRmZ2VkVYRWNMV1hZbFJD?=
 =?utf-8?B?UGlvakdmd2JyWFBoTTFxd2J6TWE2NitZYlVFU3hFODFqNWdFSHNoTmdMb2Ja?=
 =?utf-8?B?WDZTNDV6ajFHbW9UUnpwVnJkSnF5ZlhBd1FoRTdrOGUwcHduSlBSaWdQZkFv?=
 =?utf-8?B?eHlKMnVtcE1qeHViNml5WlNXVVo0bVFmbUFFOEJaTlJSTHZzMWVXNncweEEx?=
 =?utf-8?B?M2VJVjdjVUhOeDNsQzZnTnMvM1I5Z09ZSXU4dGdjalVOSkZKdFJ0ckpXSmpI?=
 =?utf-8?B?RVZnczFtZm81Y1BwdU9nR09FWlBFc3FCRi9oV1BkSUdWNVlhWDc5K0YxejVj?=
 =?utf-8?B?ZzRNNk5JZndZR291anhWeEF6QWp0YjFDMmJaZm9veE8rbi9tQlFQVFJFeWl1?=
 =?utf-8?B?cUpsQmRyamdEcTdqMjRDMFlGcHlyTThmdjNZU2JTVG1hVjZNTGl6SFR3UHZX?=
 =?utf-8?B?aEFJSC96Z052ZDNlTXYyODlUODNLc1BsVXd0cFRaTXhPVWlmYWtYTEZGWHEv?=
 =?utf-8?B?azhMUjJ5UUlHckNnVkQyUW5ldFlZQmFVb3RRMWNrTmVGeTdyT3JmeFl6NG9L?=
 =?utf-8?B?anVwZ0RiOHRSYUQ2QjQ2R3B1cGpEV3RCaXhtdW4rV1VVd3NLNkU2QTFRWDYz?=
 =?utf-8?B?akpESGtOdStGYi9nNUZvcVBlSGVaNXVZVkFVbXVIa0JxSmhXWDdaa2Z1Z2xv?=
 =?utf-8?B?d0oyZ25iUGxjTGhKUTJ1SGNqb3NPUWpNUnNUemhGMUFjVjBjZjZOcUROUDQz?=
 =?utf-8?B?YzhINmhobC8wUVMxSWR4TUNaQnp6cXE1bU53SGhsS0JrOWVxV0dxZDR5VERX?=
 =?utf-8?B?ekZ4a3d2U0poWWJaYzJvMVNkZitLY1ZpV2dtN0xWRGVjTUNMLzkzQkxBL09R?=
 =?utf-8?B?dDZPOWxLcW1jSTlDT1hqaGhHbjlhNmtOQW1LcDREN2VPWkNGSWVqdnJTKzQ1?=
 =?utf-8?B?clRoNmF3V3BkdHpwZFZBQkNacGJzTitqdkRRb0hiYUE0OWRwQjgvRzFEci9u?=
 =?utf-8?B?NTdNeGRNMFJ1Z1ZoZ0xwT0xJUEdqS1FkYmgvWXFTRUwrMzJoNWwwcG9QWXoy?=
 =?utf-8?B?K1hNb2R1Sy9pQ05KUDRsY0pGUE1YMHlIQ1M4NUVMNUYvQTlLbFowN1J2cWl0?=
 =?utf-8?B?WTBqYk9ETUhQVjhYdWJTcmpOVGhjSDJkYUt3V0RvQ0pNWkdVNmwvUytqSzRq?=
 =?utf-8?B?ZkNXYStCV2h2YTZDZVlyTXA3aDNKc1NHNE9XSFJxb3ZUREV5QTUzS2NVaGcx?=
 =?utf-8?B?U1ZZSUNqWjdDNHNzMFJUa2hxdHhqL0xiSy9tS3B4YVcwalltck12bEFoM3cz?=
 =?utf-8?B?UmtPVjhLQ0MzaFRZVktRV3NjT0JVVXkzQS9GUDBHMks5YkFTdktkRmlSZGpq?=
 =?utf-8?B?b2toMVZsZWpxRForejh1V1BOU0UyZTBhS00vdUE5RXRBaHc2VTRBazNONXJ6?=
 =?utf-8?B?UFRwVXB4OXVXSEkvZkJ5ZjhUL2owblN4YzJCK3o5Y0cwYnhKYzhmcHdDeEEw?=
 =?utf-8?B?TU1MVUxZRWVueUtGQVhNU25aeFdlcHNQSWxIdFJmZndndVZRS3VBR29ZV0c0?=
 =?utf-8?B?eDk3N0lMT3FqYTcrYitSR092ZW1tSUpUcGVZbmNLajIrKzIrNkN4UEFFOXlZ?=
 =?utf-8?B?bVJJdG04TkNpSmlkZUp1YjFkdVAvelFMbjljaGR1OW45emZzTEhIN2FGUTly?=
 =?utf-8?B?N0szenh2ek04d2hrNGZBQUZyYURCWXR1dFUzVEtPcVBUdXJwYTdka1JPenlN?=
 =?utf-8?B?SEw3cFFyaW90QXVnK1ZDVlBWcWUzaThwRmtsTUVNbm1RUE5SR0ppbmZmS0lu?=
 =?utf-8?B?UzFNQmtSaE9NSVVyODU3SDdIeDNzWHRWSHVjQURqL0FCb0dmTnI0QU5wZ1gv?=
 =?utf-8?B?YkpUeHdlMENKUU9CMUE5bnRLZHZPb05sQUhnNHVpaGp2dEhVMWFRRnlOWHAv?=
 =?utf-8?B?QVZic0xwUDNycW00MldZYU1UaTV0UWR0RjRMVC9wTHR5Yk56aDRUN3pldE5l?=
 =?utf-8?Q?Zxabr+NyTihW2gFGlnttAvwOF?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 91375c42-88e6-4500-b01d-08dbb533eee7
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 15:04:46.0423
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: TZZyjxEV3uexCwxEBj94+pqmZxUULoniWyfAypFAZ0RWu7yZkdccL0AkVkf4TIveOI8xTNGHXpVvkt1EAaLWTQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8128

On 13.09.2023 01:21, Andrew Cooper wrote:
> --- a/xen/arch/x86/x86_emulate/x86_emulate.c
> +++ b/xen/arch/x86/x86_emulate/x86_emulate.c
> @@ -8379,7 +8379,10 @@ x86_emulate(
>      if ( !mode_64bit() )
>          _regs.r(ip) = (uint32_t)_regs.r(ip);
>  
> -    /* Should a singlestep #DB be raised? */
> +    if ( singlestep )
> +        ctxt->retire.pending_dbg |= X86_DR6_BS;

We set "singlestep" about first thing in the function. Is it really correct
to latch that into pending_dbg without regard to rc? (Perhaps yes, seeing
the comment next to the field declaration.)

> --- a/xen/arch/x86/x86_emulate/x86_emulate.h
> +++ b/xen/arch/x86/x86_emulate/x86_emulate.h
> @@ -588,15 +588,26 @@ struct x86_emulate_ctxt
>      /* Canonical opcode (see below) (valid only on X86EMUL_OKAY). */
>      unsigned int opcode;
>  
> -    /* Retirement state, set by the emulator (valid only on X86EMUL_OKAY). */
> +    /*
> +     * Retirement state, set by the emulator (valid only on X86EMUL_OKAY/DONE).
> +     *
> +     * TODO: all this state should be input/output from the VMCS PENDING_DBG,
> +     * INTERRUPTIBILITY and ACTIVITIY fields.
> +     */
>      union {
> -        uint8_t raw;
> +        unsigned long raw;
>          struct {
> +            /*
> +             * Accumulated %dr6 trap bits, positive polarity.  Should only be
> +             * interpreted in the case of X86EMUL_OKAY/DONE.
> +             */
> +            unsigned int pending_dbg;
> +
>              bool hlt:1;          /* Instruction HLTed. */
>              bool mov_ss:1;       /* Instruction sets MOV-SS irq shadow. */
>              bool sti:1;          /* Instruction sets STI irq shadow. */
>              bool unblock_nmi:1;  /* Instruction clears NMI blocking. */
> -            bool singlestep:1;   /* Singlestepping was active. */
> +            bool singlestep:1;   /* Singlestepping was active. (TODO, merge into pending_dbg) */
>          };
>      } retire;
>  

DONE has wrongly made it into here, as pointed out for patch 1.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:08:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:08:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602407.939062 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnxZ-0007TZ-Rs; Thu, 14 Sep 2023 15:08:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602407.939062; Thu, 14 Sep 2023 15:08:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnxZ-0007TS-OY; Thu, 14 Sep 2023 15:08:49 +0000
Received: by outflank-mailman (input) for mailman id 602407;
 Thu, 14 Sep 2023 15:08:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgnxY-0007TM-PL
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 15:08:48 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2061f.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::61f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9a147b6e-5310-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 17:08:46 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7322.eurprd04.prod.outlook.com (2603:10a6:102:8e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 15:08:44 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 15:08:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9a147b6e-5310-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cjU3d0byNdz77L9rNN+yM5Yw5ngyOSyak01X5AbThoz1WkMD/tNJZPAINQTqfOpMkoTY75chcNW3bpi9c6LcNEEM3NP3D7pBP8GhhoimZCiwtbCJbpLXF9bOqZvowrR23XpgZU5IXscgkqKCWq/yShicKbp6DjUUfGuU3nAgX6QXfvYFR3nE1NfIufzK0xNURY7ibaG35v3cfEqudG1kPrQhPeyAxD3AqLq5/6Xz3KR9J1vsgLUH70CL25cifXXcBopdO0rInKUKvR9W0DHYrKde2qOhgb+Fx3yeeIn7b3RvKjhjkzbyp61aNKZUNKbGslcIXuzDbklmhDTOTrDjkw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yoQtXL3IRg9/PPW9aIWUlddxBRrcNauH0VNbULdeGcE=;
 b=QykpH3c6ZmvFNCq7LJBrh+rTrNPO0t91bVGvA/S8Ixf6jzJTTGZvVcG/XSgeMLoQh5YssccCFuDFoAD15w1Hxd+57o5CMNSvMscALYdhmS0ZD2z1mmeq7G645lN0q9vcH498JqvQgS8pItaR1UcJVcjVw9T2sF1VEzF4H64II10ukDwm/eg7XqhHb2pSUV9xHpJOkGfJLl2GA72UherKtRlHXW/BUgk8PIFFhLuz6nkMBJ4g1rmHyT5juKIKGtiwq09uaBF/isJcIBNnKLzSHcITLnXRK6in6DTL8StTPOadnmvCQVAV8WsRbN39sJ+tT7KiZsnMvdKQctkrOxQrew==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yoQtXL3IRg9/PPW9aIWUlddxBRrcNauH0VNbULdeGcE=;
 b=ICunv1aCJ+0388bsDN+uh/TYiTSW8IxaNukNiTqcsZDCjqasFYTYU7DWqrtYO9wbTkVHgG5L0ifQsw5R6TiBJIDriOKPejhA3lWVSHVbJraeELDOFqoBNXlVWphtwaBfobfuMOeyCYxsVxPRAxUKPhzJjLiVYBF7GW5WV6Jgyo2lmd1qf+siRkl8Sax4XkuZGwIcy2OiVEj14V2zozzND41ziU82Sdon/2/ArpYPyI1ghossuYTlFJLJwXQg2bPqqGa0kvDx1vxRcfGk31tcguKdk8kwskyXOGPi6E8k3jOEhs1cBFAkgB0uEB+Le9VR2Tu/OcwAzXgy8eqIO/a33Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <da588ba7-f22f-9aa2-4346-de75783bd65e@suse.com>
Date: Thu, 14 Sep 2023 17:08:41 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v1 00/29] Introduce stub headers necessary for full Xen
 build
Content-Language: en-US
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0142.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:98::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PR3PR04MB7322:EE_
X-MS-Office365-Filtering-Correlation-Id: 9aed8c47-5155-4ec9-9f0b-08dbb5347cf8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XBjnq8/FDiCNz5Gqz8KxIWtotJ4dEn62NCQVi+K8et7IsWLVAsgOrZVW3gBJJgMqcLmwmn2TPuL7G9PzAUANthahN9ASy4fDQaI3dS7ulo+CL4m4lYIqvQ66U1Bg+FUrjX91noWf8QtWvCBSyEd/wlVR7oCi1m6qh0mcDocP3J+ETzDoscEOY8ljh4efJcAB1XuidvVeVrx34egMN+UBNSyhkWBrEReknu+v5TyVJg0r8+7Vae97RjKblkW45HiggsQ07lNJoK2tkoZLm11Or7u6QvI3w74DhhXfmHeC4g+2JLuFOCpHI1g/94HOjfa8KoKFPKRivzl/Bag3rZB0nWbWF308IBOHYxgqsKcYwNlcxIymUFu17eVhRu+BenB/sNsEqfNOr9QWns+nxIyYNurUv+7FzPuvgX+3aJmBlb6bAiOCAd8lnelenR4v1tUNPpQ2EmPlRs2Y+8Zfw11xhS/iMybQL+EKDH+vPEcRGknSA6E4GZB0PDkypz4SRUoCx/P8q24AZyeuQvKv3qjPDC/M3zbEffNJOVOHPsaK0kcxVNgP36rAgDpmMIpJ6j4M/clVOF5rOiAFbXFuWGvqgzDxDP/RYErRR6aaQ3G7jvgsA982T6PQSHu/FfKzbKUIcWdEiUx9xetiPLLrsv1v9w==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(376002)(346002)(136003)(39860400002)(451199024)(186009)(1800799009)(31686004)(6666004)(53546011)(6506007)(6486002)(36756003)(31696002)(86362001)(38100700002)(2616005)(4744005)(966005)(6512007)(83380400001)(2906002)(478600001)(8676002)(316002)(4326008)(5660300002)(41300700001)(8936002)(7416002)(66946007)(54906003)(6916009)(66476007)(66556008)(26005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?akhhUGE0aHNHeDJSQytVdFNkSTlmZFRHWmptRlNyNm5mK0l5TFpFVElOUWtC?=
 =?utf-8?B?UTlaMXY3cXcrKzJJQ2E4UGpHZGFDV1ZZcjdxVnVmdCtINTI1ZjZyTldoSGJR?=
 =?utf-8?B?WE1jZnJVR1NiRlpaY01STXpxdzNvSngvWEc3Ykx5aXE1ZnRobXFkcklQd2VG?=
 =?utf-8?B?NmtxaHN0OGhRWWNFN3lsT0tHL0o5dDRsMTQzYkUxSFB2cjNsdkcvcGh4eG4v?=
 =?utf-8?B?YkNSS1dkN2NscXZ0cTlXQW5pR0J1NXhwZTJRUzRybHQvS1czUkF5M0ZXcG1s?=
 =?utf-8?B?dDJuZ1hIb0pFbFJraVVmMGFKcXR3VThNUTExNzk5Rk1iVWMzWGk4RllNcEJP?=
 =?utf-8?B?c1RxdFdwbG5rTWMvTVZFSzZ4cVg1M0dzeHVDcmt1d3lsWWRyQnErQU9UNy9O?=
 =?utf-8?B?NXp1STlLUnhnSnkwYmhWcUtjMW1RU2xXLzdqQ1NKVGcwYmJQTC9laU8zaUwx?=
 =?utf-8?B?TExGcjlRbmlRa28xcjJzNUZLc1JGeFFHMDFTZzUyRWhQMHVZLzVqWmJEVTdj?=
 =?utf-8?B?bzd3V3NrZ1NLTk1QdzMxbEJsTTY4eVdTa2JKcXhZV1ZNRGZPaE9raUlqTkxD?=
 =?utf-8?B?UWo5RmRlZFdDd3VkeW54RDRQZUJFUWZSTzdzaHhXN1ExbURiU2c5UU43MTJm?=
 =?utf-8?B?ZGVIclJQTDRoOExaVDJTS2J3L3lwYy9FTURqQXhjdjdsZ0MwWXlUUVlTZkNU?=
 =?utf-8?B?UVBwRUtUbTZCU1k2R1B6d0tYWlRSd0JDZ3cwNXljcEtMb1pITytyUXN6NkNw?=
 =?utf-8?B?TGN1Nm9lMkdQT3ltRWJ1S2xkVm1BSmM5em1QYjZKc1FQZy9tdTVKRzM5elIz?=
 =?utf-8?B?WDFheWxmTEE0SitreVFaQ2tVQ0FQSnR2QklMczdJcHljY3NuKzJzd0xPWlFD?=
 =?utf-8?B?MW9takxjZUJyOVZjcjNXMWR4S1BuTzh5S3lVS1FVVDVqc3cvMjR1MU5KVk5Y?=
 =?utf-8?B?Q2kzaWFxaDBTZ2d6WDJDZTk3WEVSL01SQVplSklFVy9GWjFaVDVoMUFJVVBJ?=
 =?utf-8?B?ZlR2eUhqYko0YWJiQjNueHpWN0RZRUEvRXRaS3Awemc4NDI3eG9jams3N0Y4?=
 =?utf-8?B?UzllNi9reTI1Y1NoN2k4TXhWaFZkRUo0VXdqQUxpOEpFaUp2TEh3ZkM5RHNp?=
 =?utf-8?B?VXUwQ0xIUDlocUhOVGNSY3I4M2s2ajNDSVY5ZU1LRm1vYmVQRHZ3WmZlbHpN?=
 =?utf-8?B?cFN1VyszZmJXSnRzUC9PL3Z4cFFSU3NPVDZnZHRMMnMvRUloSWUwaXBvY2R3?=
 =?utf-8?B?NnRuOW11bEpkcW1ZeUt3elpybENENlVUUkVmT05FNUNCU0dlOExQSzVxZnlR?=
 =?utf-8?B?R3EwSEs0UHEvUXBrRU9MTURaaXNkSkRiQ25nRHVtbXF6R1lBTVVHK2RCVTJa?=
 =?utf-8?B?Qkt5djRFSE11cUkwQmZSbVpvNGREV3dpYlExYVdpR0NYYmFIaTFvUG4xRmov?=
 =?utf-8?B?dS9Hek9iRml3TDRSakFHQVIybkhvRVBMa2EwL3liczhXSFpjNG5uOTNCVzBG?=
 =?utf-8?B?RFRSRzFqQXRTeW0yTExTOEJFaTZjT0Q4RTgrYStxUGtxdmRQQmJacjZIUEEy?=
 =?utf-8?B?ZUlKeXZWRnV5MVRIRWgwRVRSdkwvUHNvS0ZMWDFINkdoV2JjWTZXeGtDazJE?=
 =?utf-8?B?dGRITHpydm5rZzdXVXFnbzJCRWdObjlMNFJnM2s5a1phRDlDSXl3UkxLbVl1?=
 =?utf-8?B?aE1weGs1S3NzUkFZM3M3QnlYdzcwVHlqN011VXh6ejhmN1pBRTk1bUx1UWVW?=
 =?utf-8?B?UmNkbW0zMmlsKzdkSzFZT1g1RDEyT3ZxREFmeEdDcThkTmRyQ3dTeWlZdXd4?=
 =?utf-8?B?RWgrbTNxdVZQN2VCNWx3akp0MUhhazE1VU04ekhocWo1d1hJZnF0RUhGRGdl?=
 =?utf-8?B?R3J6WDNBaDRQZkZabktMdWc0NS9DQ1FickxqeFREVTFTZ1hjdUhQTXE2eXpP?=
 =?utf-8?B?ZDFiM0kyNVhGeENoK3NUaGxGZVZ5Nlc1L1E5ZWZaeW9tc2Q3Mm1mSnJ0K2dE?=
 =?utf-8?B?TXcwWUFKM0ZQeVJvS0JnWi9HckI4MFFSOExPazcvT0g4S1NiTFJTeENuVk5B?=
 =?utf-8?B?ek9vaEVIMzlrTVNYS2hQL05QdTNjQ1dEQTRsWFFuZUlYRHA3ZU5aQVFIZ1hh?=
 =?utf-8?Q?Jzm02MzpzsN3PbgGsoS/9DYrz?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9aed8c47-5155-4ec9-9f0b-08dbb5347cf8
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 15:08:44.3818
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xZKF5t/Xm14JJdnA2hyBJL4wV7jMNPfNZJxwER51Gl2aS31S8sKXk9Y0CVKcT/OSoRYHd4ysJfImV89QX8gTPg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7322

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> Based on two patch series [1] and [2], the idea of which is to provide minimal
> amount of things for a complete Xen build, a large amount of headers are the same
> or almost the same, so it makes sense to move them to asm-generic.
> 
> Also, providing such stub headers should help future architectures to add
> a full Xen build.
> 
> [1] https://lore.kernel.org/xen-devel/cover.1694543103.git.sanastasio@raptorengineering.com/
> [2] https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kurochko@gmail.com/
> 
> Oleksii Kurochko (29):
>   xen/asm-generic: introduce stub header spinlock.h

At the example of this, personally I think this goes too far. Headers in
asm-generic should be for the case where an arch elects to not implement
certain functionality. Clearly spinlocks are required uniformly.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:09:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:09:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602411.939072 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgny5-0007tL-3a; Thu, 14 Sep 2023 15:09:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602411.939072; Thu, 14 Sep 2023 15:09:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgny5-0007tE-0t; Thu, 14 Sep 2023 15:09:21 +0000
Received: by outflank-mailman (input) for mailman id 602411;
 Thu, 14 Sep 2023 15:09:20 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmT-0002W4-AQ
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:21 +0000
Received: from mail-lj1-x236.google.com (mail-lj1-x236.google.com
 [2a00:1450:4864:20::236])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0160b900-530f-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:20 +0200 (CEST)
Received: by mail-lj1-x236.google.com with SMTP id
 38308e7fff4ca-2bcb0b973a5so16354911fa.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:20 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.19
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:19 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0160b900-530f-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703440; x=1695308240; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=F15dxGQnK3sehzSOwvv5F5BATla17v6rMpQqDBCmSQQ=;
        b=f1day6IZI0EyS5QL0FGOS3ahfAVDmhGG+Dl6+RppPGoqRo+JIqqJjFTrs0CvOp9qyv
         deF9YhzlhwFTcX6Gktanfu3XDMYVMDfeDMCsUOj3oN369GvX4MxW7oZaZ315rlL6LvLJ
         NTXo9gqqaXw5LZb2tHejeF0nyXK0Ya4kVTw7giO8lSBViy/Wld+24C/HTc4/AuAL+MwU
         ElavM4lVEI5yK7PlwgCit5tFT03LOroPNe3GDa07q+Y/TMtyPUUz9nVEJpaRRVIk8kIa
         QmtxuT15TTPjWYMLhFfhvBhlNrIcGpRPgN6fYASQiAKqUfWYDihQNOswlPXLcjrBEqAt
         7Bhg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703440; x=1695308240;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=F15dxGQnK3sehzSOwvv5F5BATla17v6rMpQqDBCmSQQ=;
        b=mOtS5NjDfWulM1qxPwNzgs/E8zt366+i0WqCrUHcBRuRTThDSBLCL3WS00xGcoSJHy
         0czF4hCgQO8HfnWq0KUcRsvSIqGo8hRNQsasG12QqSpV8aCAMEjyfQS3Ig+uZpLMaZwa
         K3iPcU99q6IKBLqFfzRzaQ2rzlh/Yk3thTDgr84pPA1xpUT/o/aOBN0PJtNEVYDPnGOv
         xA60/HTI8RGLAqaTEhTjyZlloUW6CSK2ALCvmRCdTnFxLNvw0fSGNRLA1uVkHLQ+VmCQ
         TxnqfLASryKnACSuhc8YSdeM+NboCS+BBkpKQgHaZXJf9/ZpW4g4953cqlKHKQ/Qm07q
         VmiQ==
X-Gm-Message-State: AOJu0YxfgdfUafVx34xjXgn38S8Bqbec6DE54TOSp8w3pDIth+5ijDQl
	SOpsmIaXvniS28AidwN6RnR2BK3M9/M=
X-Google-Smtp-Source: AGHT+IH4+dQpAED5rWJZE+3xxCQwXeBCWcvjSgP1BciK56T83EKqzyhY0y2XpPJ3tVhD+xl6eNkHNQ==
X-Received: by 2002:a2e:b178:0:b0:2b9:f27f:e491 with SMTP id a24-20020a2eb178000000b002b9f27fe491mr5594299ljm.42.1694703439916;
        Thu, 14 Sep 2023 07:57:19 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 16/29] xen/asm-generic: introduce stub header flushtlb.h
Date: Thu, 14 Sep 2023 17:56:37 +0300
Message-ID: <8f5e2ac850eced2153d68effcb36aca1ed065aee.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/flushtlb.h | 42 ++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)
 create mode 100644 xen/include/asm-generic/flushtlb.h

diff --git a/xen/include/asm-generic/flushtlb.h b/xen/include/asm-generic/flushtlb.h
new file mode 100644
index 0000000000..79e4773179
--- /dev/null
+++ b/xen/include/asm-generic/flushtlb.h
@@ -0,0 +1,42 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_FLUSHTLB_H__
+#define __ASM_GENERIC_FLUSHTLB_H__
+
+#include <xen/cpumask.h>
+
+/*
+ * Filter the given set of CPUs, removing those that definitely flushed their
+ * TLB since @page_timestamp.
+ */
+/* XXX lazy implementation just doesn't clear anything.... */
+static inline void tlbflush_filter(cpumask_t *mask, uint32_t page_timestamp) {}
+
+#define tlbflush_current_time() (0)
+
+static inline void page_set_tlbflush_timestamp(struct page_info *page)
+{
+    BUG();
+}
+
+/* Flush specified CPUs' TLBs */
+void arch_flush_tlb_mask(const cpumask_t *mask);
+
+#endif /* __ASM_GENERIC_FLUSHTLB_H__ */
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
+
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: BSD
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:10:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:10:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602417.939081 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnzC-00012n-DH; Thu, 14 Sep 2023 15:10:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602417.939081; Thu, 14 Sep 2023 15:10:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgnzC-00012g-AQ; Thu, 14 Sep 2023 15:10:30 +0000
Received: by outflank-mailman (input) for mailman id 602417;
 Thu, 14 Sep 2023 15:10:28 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmY-0002W4-N8
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:26 +0000
Received: from mail-lj1-x229.google.com (mail-lj1-x229.google.com
 [2a00:1450:4864:20::229])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 04179e09-530f-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:25 +0200 (CEST)
Received: by mail-lj1-x229.google.com with SMTP id
 38308e7fff4ca-2bcb50e194dso17175671fa.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:25 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.24
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:24 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 04179e09-530f-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703445; x=1695308245; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=xihVi8cLegPWMrOminjSxQFBOuvSV7/slHXRNJVd6Zo=;
        b=ML3fcGQf42pnah569J9f9n0fyLAN8pEwkxvqpybrAKLcMZBXghrEBwuXyV87sQ+N7w
         tuO6jB+/jbqwjYQ50OjcgQ6zxGgghkCkTG5egclErDsezBlceMHoI3MkWcwVhI6hX0W7
         +f8S5R3BfxUejzW9qPbPpLYR7ENVhqBEGmjk3ZcaRLZEc6STZsJ9HnDzrVd+DJQbhLgG
         Hc/OKCyJB75IMgjPTBeGvBp/EEDcF2wmmnrRJzFgiWhS4Mtvg73iFhfSSbx5tzToL32S
         LYVMk61MRXwzA75CP4SCtkzkIFWe6rebOn10eADoC6395v4ZO7LoahZETiBZPds3vmLY
         fHBw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703445; x=1695308245;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=xihVi8cLegPWMrOminjSxQFBOuvSV7/slHXRNJVd6Zo=;
        b=IyaJA1yU1susb5mPjCyUW0dEC85fy4r0XpscS8c66qnp4cd5Mdf+IDUNIXfWbyGzdq
         XTF5+p+Z6OWtiRcRggKot60KLmUTVJjrHrVGOic3CQeTRpdg+n/sJgb+oPl9KYkhqPfg
         wE6uBl9TtNzeF2LgXfS6jFmB0dSDrDAqT29N0ZtEDA9FHXOmnguGgBgCkVPGhY05+WOP
         DYB0zcLxynCpKors5EbtGSJ+AkSZB4mF7oQnbVgqiIIS3PtDAC1tRky+/DI6pHfhNP7B
         EGF5ZbouFVXMJNHVwTtTzQ1UOHPAV/xNLpCREVGHaKgsgoH38AILLdXbNBzIcay+ILe9
         Pb3Q==
X-Gm-Message-State: AOJu0YyVsaXOsQ/3gJwTdpTvm0UIYWLjLb+5wRsZQ6Jg0/V4OE30B75I
	j1hRDSCayRCuIukHWaNa7KUshHfvNcA=
X-Google-Smtp-Source: AGHT+IHcNL9UzH0cQh+dGNpR4iMJisR8+ZLwwYuot1CAr0VLDWMpIoH4hZ483tzDR9SsBIXTPDo92w==
X-Received: by 2002:a2e:8651:0:b0:2bd:2240:8376 with SMTP id i17-20020a2e8651000000b002bd22408376mr5647353ljj.14.1694703444722;
        Thu, 14 Sep 2023 07:57:24 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 22/29] xen/asm-generic: introduce stub header delay.h
Date: Thu, 14 Sep 2023 17:56:43 +0300
Message-ID: <b16677ea84860ae7143339b8c856f0da7f8c2b6c.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/delay.h | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)
 create mode 100644 xen/include/asm-generic/delay.h

diff --git a/xen/include/asm-generic/delay.h b/xen/include/asm-generic/delay.h
new file mode 100644
index 0000000000..1e68c6cacb
--- /dev/null
+++ b/xen/include/asm-generic/delay.h
@@ -0,0 +1,21 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef _ASM_GENERIC_DELAY_H
+#define _ASM_GENERIC_DELAY_H
+
+#include <xen/lib.h>
+
+static inline void udelay(unsigned long usecs)
+{
+    BUG();
+}
+
+#endif /* _ASM_GENERIC_DELAY_H */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: BSD
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:12:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:12:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602424.939092 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgo0i-0001n4-NX; Thu, 14 Sep 2023 15:12:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602424.939092; Thu, 14 Sep 2023 15:12:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgo0i-0001mx-Ku; Thu, 14 Sep 2023 15:12:04 +0000
Received: by outflank-mailman (input) for mailman id 602424;
 Thu, 14 Sep 2023 15:12:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmV-0002W4-NX
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:23 +0000
Received: from mail-lj1-x229.google.com (mail-lj1-x229.google.com
 [2a00:1450:4864:20::229])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 01e14105-530f-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:21 +0200 (CEST)
Received: by mail-lj1-x229.google.com with SMTP id
 38308e7fff4ca-2b9c907bc68so17355891fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:21 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.20
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:20 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 01e14105-530f-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703441; x=1695308241; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=1gqkhvANInIWgDmOoOPJUCId3lz6JPHGNXOuOXwQD0U=;
        b=oZAP/o6tA7U+vthV+pyrVxTuZjqHO9w506Q3wRghSyFIQYEDIAJD4Sfj1fRF+YG7jq
         q/my5WA1uCl3q2UgjFPK6DnUzc6LNz/UoO1Ylu8TAzcMFYjPp23io2o+4jJbIudkPir2
         jH1wSVT2WH5OsBR9XsXYhNcGzHHpZfcvroTb7rzrbzkwah85tYE51B06VCkvMdPpDUcJ
         NBIzUTAsIkC6esgNu5Cgh70lidPgOT4ub/r4otZ/OiXqBZXj6kzJk1Cl3MmwdqA+SmS7
         tTta2ESa9ZRJ2l1hqoewAQVJj/QcR2JqSGVz4hfg6HcLCM/r/3vpkBSiRj43+OXQw/lq
         Aaag==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703441; x=1695308241;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=1gqkhvANInIWgDmOoOPJUCId3lz6JPHGNXOuOXwQD0U=;
        b=jvSdGYfDj1oOZiUiSACoixvinOBYrCjM+Dm0anW6oXp88BWdt0tqFPap0eb6uL7eLm
         0E2WRVorpHTMLXDWmfCtM6V0esDSvtVNYx+eG22x5zk+JVv3siq7CJmyzBwSvRRC9agR
         LfmlLFHBUW/BunykwKwICzNi7LwP8ryvnvoUGxBL5MD8bI/PPbxEab6niobcxfWuWRKX
         gieI7BbiomjzIX2FNdBkxGN6OriFpquAkCTGITjG9DBot/VMRgOEjvsjPo/Vx6ADglSW
         UQOpenEsu2pbzJavNn9o8zj2K6l4TX1jX8tpxO5RAK7+/vkJQ6WxMYhKc4YuCudRULpR
         1xqg==
X-Gm-Message-State: AOJu0YyNqqrtnxVu6angTigio0XIHGkDe4LXdfinv94NnqhzqD+PUkg5
	GJ5vsi0XlRZhCzDKTzlRrkFJ6nDg4VQ=
X-Google-Smtp-Source: AGHT+IHSLICORFafw9BuEY1nMokrIyXeJugx5OEqDLKMY8O6saI+9vYKCLyW18Rzq5eC+iJwY4lGNA==
X-Received: by 2002:a2e:9b4d:0:b0:2bc:ba71:ddf2 with SMTP id o13-20020a2e9b4d000000b002bcba71ddf2mr5298747ljj.15.1694703440811;
        Thu, 14 Sep 2023 07:57:20 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 17/29] xen/asm-generic: introduce stub header percpu.h
Date: Thu, 14 Sep 2023 17:56:38 +0300
Message-ID: <521647680aa5010629ded799010c8f9e5d22cde3.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/percpu.h | 35 ++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)
 create mode 100644 xen/include/asm-generic/percpu.h

diff --git a/xen/include/asm-generic/percpu.h b/xen/include/asm-generic/percpu.h
new file mode 100644
index 0000000000..d1069adb61
--- /dev/null
+++ b/xen/include/asm-generic/percpu.h
@@ -0,0 +1,35 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_PERCPU_H__
+#define __ASM_GENERIC_PERCPU_H__
+
+#ifndef __ASSEMBLY__
+
+#include <xen/types.h>
+
+extern char __per_cpu_start[], __per_cpu_data_end[];
+extern unsigned long __per_cpu_offset[NR_CPUS];
+void percpu_init_areas(void);
+
+#define per_cpu(var, cpu)  \
+    (*RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[cpu]))
+
+#define this_cpu(var) \
+    (*RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[get_processor_id()]))
+
+#define per_cpu_ptr(var, cpu)  \
+    (*RELOC_HIDE(var, __per_cpu_offset[cpu]))
+#define this_cpu_ptr(var) \
+    (*RELOC_HIDE(var, get_processor_id()))
+
+#endif
+
+#endif /* __ASM_GENERIC_PERCPU_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:12:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:12:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602428.939101 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgo1B-0002At-W7; Thu, 14 Sep 2023 15:12:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602428.939101; Thu, 14 Sep 2023 15:12:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgo1B-0002Am-TN; Thu, 14 Sep 2023 15:12:33 +0000
Received: by outflank-mailman (input) for mailman id 602428;
 Thu, 14 Sep 2023 15:12:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgo1B-00027V-JN
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 15:12:33 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20616.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::616])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 204e177d-5311-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 17:12:31 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8655.eurprd04.prod.outlook.com (2603:10a6:102:21e::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Thu, 14 Sep
 2023 15:12:29 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 15:12:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 204e177d-5311-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ESu8ycG8rFE0zjK6i+5F0IdVVjT1OeJuqHdlGjSpCGcf3p/4C/r9oDG10w/x4WoqYiOXFYXlYLyrPWEgP/JuxGO1PAJlj7HkXQ5Wq2icgLD+FmChnQxttpbX+BbiHUAO49nvHTtq67Bvx6NnnZ69xtInd/XAvXIxgtGXtKXS1qj6eQCE1dKPPZI/nXFuy+/zmtgVk390OvVQW6rCktuBZ16Hw7jf7IT5TKPB++irT0LL6OMzbINsGDv2VaE+IZmzSg5VQ964HjgDU0JTWOVdRMd4+nzy6L+SG+ZV7mML1YY0PlDEgzwH58Pqt6LGDWPNxK/RazmV0i/KZRoCO8f0gg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gM6VZA4clGqGRy+oJpQroRZgA4Re7aIz8co31FYaqZA=;
 b=JkMxaQlVOgD1X1U0u6BMC4Gz4B9hKgEFb72tm28lhfP38ybesf/Xz7P+ftzUI9fsuCoNhpvrUrPCNoBS60IzvhUpZAKKiXM0nN9/HejAu5G3FzZ8jZnl19nmHbE10xGUPjTeuPXv9ovDY31FmvFC+7r3HpgzmnYLcj71vsY+SBUop2W+38XLybAGbkJW3BvCN4FbQVEeGR/RXg/dR9n/yuN3WohNjpeGVhLSOyXO6s0LWSBObmXmRcqJqSedyoluGAvzb328k2EhOSHnYuRskvl/JrNJfqmZ5JZV+HVkFq3PNjFnNitHitTU0sUxt8AsmYXoXlVJecsSmNakB7F3gg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gM6VZA4clGqGRy+oJpQroRZgA4Re7aIz8co31FYaqZA=;
 b=zQ6wQ2mGy3wHcTMHxv91crpkTrq0N6XWwdHqU/FXIKH72t0YX0tbAbU8xApyK0mIREfZHnK3XnArqUYiRFgnoS2cR1baDwLOcMNBBgzkpsbUMxZr4nwa+/MQkoKXbF8R5DGIv8HXw9StLRtdoDNVP13nbKIwtzBlqxxyLWG7hgg4nNc1z6m/G0YpfqdkAbdI4e7CtRH73xTtVB4VnIwQ53ekeZvnHUhnIW+FQ1Nu1xEVsAxP/3NB4xzdIzlVPxUkXx30jTkLDwkjvJo75/Gi6jRqpUpMcyImmZQdgyESSvRKW1tQf6ApMiHQie/Tw8SD0jlsb8E2lGE/tp8h/Sbxzw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e1a37a76-679f-24a1-ca77-c903439038d4@suse.com>
Date: Thu, 14 Sep 2023 17:12:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 4/5] x86/pv: Drop priv_op_ctxt.bpmatch and use pending_dbg
 instead
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-5-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230912232113.402347-5-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0242.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:af::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8655:EE_
X-MS-Office365-Filtering-Correlation-Id: 4e01133a-a0ab-474e-f914-08dbb535033b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	T98F47ivONAbc7gC4kMSFmh5RA09RQd6haNFNMj9NL0WRuG6CuYDkj5XID4/hUGCOvgca/wCoJMQgqhwa2MhgA4RIm2nrYcm+cvOiWpzP8Xixg8NmJQOEJkQvbm0NP6G2eb/ynkG6/Lq3P6tr9cFXNy5UhWoZIVKI3Lz03bsErZoQIPmU4WLgmyFAvoJ2JJH/YK1MUqueSN73P0JpeJzqFsBirDl+DfOxiQGehPW2p7yp1NGmi8bRVd9x/7pFZ40jDDhJ/nsQYvVnKPXNO87G3O8xBdsuBQW8TBKYgOpNxp05DKxTHXpwX4QNoCauV9YEuyyb20w1YtEifDlEEgZLeq14AVnY2/ZSVa/yUmxC7BBBe2Aj9pw7BEOHtREFj7TSZ8+1Mc6+yc5Keu00moBOWW6eMFHBR3eC9zuLXQCun82Q7BY9nVMogA0AjFlAn5W+dMHTzAX/uAlrIJCKtdvagkfHK+tJJoI/V7w/gnMmCIIyN19PqSzarsxaIUfBaKcOZVk+reYQv1fMoJIoMnuko7nj/8Mqyl2uEzfxQGwer0GDcM8RG7box35DPYVi4QaivXKsRvQi7qigVCnm7CwtHL9ODNc8AlTgR0aVywwlwBvynctMlf7EC4s+5XAgyn2Xt8IvekeohiYRjT1LVYF+Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(346002)(366004)(396003)(376002)(1800799009)(451199024)(186009)(36756003)(31686004)(4744005)(2906002)(5660300002)(8936002)(8676002)(4326008)(41300700001)(66476007)(66556008)(54906003)(6916009)(26005)(66946007)(316002)(478600001)(86362001)(6666004)(6512007)(6506007)(6486002)(2616005)(38100700002)(53546011)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U0VWa1J4VUY4WXZwdkg3QlFmc0pvenk5M3hTZ3RicHpKWGE0dmdzVXMveXZT?=
 =?utf-8?B?TE9ObU91L2dPdjFnK1pvRVFxanVsSHpjTHlMem5JMjNKNmU5cmVZcnRuNVpm?=
 =?utf-8?B?Qkcxd010YjNwNUxpei9XQ2pJT0xtYXJpcVFnZFhYS0pWVzA4dDR4TTBNaEVS?=
 =?utf-8?B?SnVxQlhRNnN5TEtKUmZKS29sT2dQdDVSb0MrZWxwcGNBRjhBY0RyMW8wa2pZ?=
 =?utf-8?B?SE5NSmRwTVdUZHZyUnpCR28rbEh2eGM2OU9RV3NVVFVwSWluV3R0N2t3RERz?=
 =?utf-8?B?T0laWDJtMGtzeUZHSEN0UGZ3d3JEcmplZ2dISVo4Z2IrcWtDMjYxU2xQQ05q?=
 =?utf-8?B?aTR5TWpQdzhqQjNSTWtVbkZJaDhjbUp2UGVESjB0RCtzeDc3ZEE5RVFKeDF1?=
 =?utf-8?B?WWFJWGkwL01rZG84MkxrTlVWYW1oMnYvWTVKaU5TK0tRamkzVEJkU3M4UGpR?=
 =?utf-8?B?cGNCem1ad3JYR3hhSnRBV21yaXAvQUF0cHRsK2ZwUmZFZkNkSFRpY29FR24z?=
 =?utf-8?B?Wm9YMHU3OWFPQ3U0ZjVCVW9HTjVQNjMrTmFKalRQb01yTEd0bXpEWGJBM0Ju?=
 =?utf-8?B?RVg4UGlrY2tRbStoR3Z1ZEJ4MVZKNlBabCsrTzlYWVVNakx4aUpzYVN2Nnkv?=
 =?utf-8?B?RlFSU2xsYmdtRDZodjY5QlRNU0NWd3BYazhKamoyZi84SmEwM2FyYlBZMHdK?=
 =?utf-8?B?NUhsdHZabWoyK2gzc2dkdXpGNkFWL2xGSk9US1l1bHQvR3VBQTVDM2M2d1N1?=
 =?utf-8?B?SWd1NXJIelFIdEFkMU5NeGIzcWs2MVRZM05USU1jWFBVN3VsRTJWTDNHbUNV?=
 =?utf-8?B?S3UzUEtpVTI3a0drc2JOclhzbjRPYXJNclo4UyswcWxZN2VPQk5WVUh2VENu?=
 =?utf-8?B?QlowL0prVWZMVDlTVndvREVNT0pERm40OTR3WmNUZ0hrbTJjaCtKdUExblpS?=
 =?utf-8?B?VDJuczdwZEUvR0FNOStQVldpWUw2M2hLVXdPUzJZeU9XTm1lOTRoVVBkZ2sv?=
 =?utf-8?B?Nnh5RU5hcDc4Y2Y4WllYWk53ZXlYNE5TMmNOcktWK3QzK1Y4WlV0ejM0RmJN?=
 =?utf-8?B?VEtUaUp3bTIwVmI3a3ZWKzREMlZaMmFaWXhxcjlna3lzUk5uaGVWTVkwYUx6?=
 =?utf-8?B?SHBEd3AvSkk2WUdSaFVIbUpQTi9kVVdmWjdCbTlEbktkSU1qUzFxVytuMWh1?=
 =?utf-8?B?RmgyczM4U0h6TDdaY0M3S04zanNxOUtzYVpEdG91S1liQzBNcGFZYzlLZXpk?=
 =?utf-8?B?cDJkcHpJVVh5MmZIdGFVN1BMajFDdnFSM3RtSHVOZ085cnhscGpmS0h4SUVh?=
 =?utf-8?B?cDAyaFBmT3RiWTRVWU4vUzVZb2FJTVJCYkZ0WnJOakpMSFpubW4yVzVLTnVN?=
 =?utf-8?B?QTB6dGo3d1JMdWpLVExpcEpodkNkNkRDWmhudFpMd3ZyRkdQamh5RWYwbWJi?=
 =?utf-8?B?WTNEaXBEeld2d090OG9IQUZoZnlsQVl0bEp0NjNiWWNNby9Rc2hpOEkwRDFi?=
 =?utf-8?B?YUFlZ0x5K1dwYkRYaUkyQW54QTJoeU1YUG1JSHdTQ2JaTWxiTjU2cGZISDVm?=
 =?utf-8?B?cUFHbXQvazV3TWRvRmQ4VjdTelNKczlrWjhpM0JRRWphTnVkbll3UFR3K3Ru?=
 =?utf-8?B?Y2hvZjZGRndNTkYwd1d2SFEzNGpXbkpQRVdEVGNyS0FiSG9iWk5Ya0JaRVYw?=
 =?utf-8?B?bFU4d3NkQ0txQ1ExR00rcncxWitFVmdVcHZRZlJURk9tZis4R1Q5dEdyWHQr?=
 =?utf-8?B?ZEN2WnFzcTVCbHRMdnptVG5tTjZoOFJVZHFRVGZ6QVN0WjJvSFAvU2VUcWNP?=
 =?utf-8?B?WFFUa2NWazFTNGMwd1hZbUJQZGM5b01pQ2RRZEZQNkY3U2NCKyt0TkZUUk9P?=
 =?utf-8?B?S243NXA1MVVDSjBuSWhrZ2E1WExJdHA5M3lYcmQ0d0tGTEw2d1M3WjVibUJo?=
 =?utf-8?B?L1crclNZdk9hMWVNT01iaVNYcVdKOGdhd2ZNSEdsU0IrczJzK2ZmbUFGRHJO?=
 =?utf-8?B?SEpNYm15c2ZHSTFIMWlzN1hLZEJtV2ZEc2ZVODBjcmNDeXUzbjNNSFNBTjEx?=
 =?utf-8?B?dkdBc2g0VUlLZ0E3QWZaUnE2b3pSb3JWVkUzRUM0dWpiWkV0aCt4TmVRaEVR?=
 =?utf-8?Q?R4h5nqUD4QdSLvAj0r/tZnUqK?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4e01133a-a0ab-474e-f914-08dbb535033b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 15:12:29.6556
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: qpEI6Vf39ise27MNxyiPLPR+E8n9QJV7CeeN+0HtJUZciN5ueb0dnrs44XrQYrMQ6Avtcqtv+WvpyIj6N7ysbg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8655

On 13.09.2023 01:21, Andrew Cooper wrote:
> With a full pending_dbg field in x86_emulate_ctxt, use it rather than using a
> local bpmatch field.
> 
> This simplifies the OKAY/DONE path as singlestep is already accumulated by
> x86_emulate() when appropriate.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:13:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:13:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602445.939112 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgo2V-0003D4-CC; Thu, 14 Sep 2023 15:13:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602445.939112; Thu, 14 Sep 2023 15:13:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgo2V-0003Cx-9I; Thu, 14 Sep 2023 15:13:55 +0000
Received: by outflank-mailman (input) for mailman id 602445;
 Thu, 14 Sep 2023 15:13:54 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgo2U-00027V-MA
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 15:13:54 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20619.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::619])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 50fd5cd7-5311-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 17:13:53 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8655.eurprd04.prod.outlook.com (2603:10a6:102:21e::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Thu, 14 Sep
 2023 15:13:52 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 15:13:52 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 50fd5cd7-5311-11ee-8787-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=b55F8e85XOJOszqLcYIeAusFQfzR04dGXRZknzWSzsaeC17/cMrwtgrTUkJsFahEfM0Wu9p7VJ9F6KxeRilsczxmBRqDHfo5irsmA9lTqlvGDTSpqi/Hw5qQMAVTwIQuXoV7+bV88ICmknuGKNOuY0fiH3SwJHX3Fpt1f57pBS6gPJyBlG8Ge3bQPni4pwu3NbhK4hzRvj9Tfxw7HFUcVRrwNh/cOEmUt2ba3hnGnGqX2Ly4MtjwyN5ThJmklrJ1HAcr6O+uDXNMyc51aCPf7uJQhEoJ40KfvH+46+lP4X7VfOCS4gyQnYB28fzZsDiskW7x0aAFgT7CwQ9MBDp3kA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gXrE9kB5G0kp1YfqkLG9M5csYIjyLKALWahcxAfjhbY=;
 b=LYQz/xnooGsPTo4+jjWjMcnyeLbtu/3VKZiX7gQT0sJr/KJ+g6pXRTauBpBWoLYO0SBsCKIhrzcVW5JYylg9muj2uvBpFIt09Gu9o/W2jtAxj6KgUpz+9FV+Zg5ACirmrgD02BRWSxs8p89/jbqfqvHbiAVAeKabq4DQW8xxCpCucsO8H3QmJTpoJHiT4/HLusfn8vvIbaIGhEXiJ/lDSdOKDFexJ94OTJzlv7JLAgqoNAgnphlztCBUgGGIKxLyJ6a8Y3gWmTOWXguG0KTRu6VKB3U/DIA3+qoBaxUyGTyb6wWHaLcikCVnUjTlAMmAbpN6aJK38JldIwito+Y1xA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gXrE9kB5G0kp1YfqkLG9M5csYIjyLKALWahcxAfjhbY=;
 b=yleh2QvHHJudZZ8JNv3kDZs3hCquFzocVC3fgRqBoky6nm+84I96wGKwtpx+ZZI9SJDC93lt3zIqECCnsBgdClxZ2MbeCbkWdo8wD7FHCU8O8nGaAra/2qdtnXEFU1NppaDlP0AiULwFUaVE1rLGYtiwe+Qx6v7FNMCrUV9eKfM8Hy1IKn3AtYG5/cfktAFiavI0lhvpkuqVfxOEmg4LjRW/+hW0jXrwa+7TVlSPUAxkzxeVGwv0J+todke5vWmPe8j7VS66F9G3In3R7+ecjCcbTjMj/bGsf9fZn677/ILTsm072+yunGqid9aY/A3t5mHcGCuwcM70PebNPitlow==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6a4ff59f-01f6-ed8d-0a45-51c87f1ad71d@suse.com>
Date: Thu, 14 Sep 2023 17:13:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 1/5] x86/pv: Fix the determiniation of whether to inject
 #DB
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-2-andrew.cooper3@citrix.com>
 <d7c3d67d-cd5d-d2c8-34a4-2e0c99ebe92b@suse.com>
 <bc8eaf44-b93a-c6fc-01cf-4f39835d0e99@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <bc8eaf44-b93a-c6fc-01cf-4f39835d0e99@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0162.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:99::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8655:EE_
X-MS-Office365-Filtering-Correlation-Id: 46ab7e02-ddf1-4bdc-8261-08dbb5353455
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ID6X7+AtSxZ30t7kWVsjqRcUQsbYZLl0YBOaO1XGZjFpN3EM1CNNh7jkeXKeODT2Av21BmaNaip6lWbCJd9r6sfZkZe+dpXxWA+d4FC6zrUbNnAFa14Tt2wWZuBLvji1ZVdeibir93MLfFAOu6vUQGUOOR/pRTIoVP3IGhDKn6giz7lWpaDyixMl0qbC8HWC99m6V7gL4IuFQMSmXrYkUVkHi3AQPGAdqSvPOhn1tmu0aW6QagJQmsW6RQ6eoqygWJjGM9vWSUbSipK1EYKAABIJDMQy5XXke3BiITCf5vhkFKpoaDJxbjUDmBK4uAGlHwxt34FYRLMy5uQhPqYS9j0ZS/zhK2Fu6RijZ7r/tB2rbB7YC0KEaXw0HSxRiX+77ufmETH4zdZTGN4uAyNSDpr/B7POwezYw2xero1Sa85PlXJl6EpRJVd3MjD9OX77z4MphRO4aruDbCIzqeZi6RfBR1OuIt5HNdxP8YaWV0fL0rqnipUoZuLXpcn6y0Apf3+kdS1iC3RqqmV8YwqXLS2xtdH9ynFFH+ksgbJpN7mA4TbBPrBhasnlwgre1Kn34A37Ke1mNobTfrwRD2z8QhKuYy3/LN9sx00gDHEkrFYmTSQCtkRVZNlKLyv7qFrbWKy5vcAIZd7A02uqzkJUTg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(346002)(366004)(396003)(376002)(1800799009)(451199024)(186009)(36756003)(31686004)(2906002)(5660300002)(8936002)(8676002)(4326008)(41300700001)(66476007)(66556008)(54906003)(6916009)(26005)(66946007)(316002)(478600001)(86362001)(6666004)(6512007)(6506007)(6486002)(83380400001)(2616005)(38100700002)(53546011)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SDgwc3BHMVJOeEFHTjZPV2k3dWtaL05XZTBtRkl4VWcyTEpkZFJpTHp4SVJy?=
 =?utf-8?B?SXpPQUYxdFFXbFhuam51aXVkZnozcVZpbngyWW5ubWFDd2N4NmhLZWlyakZW?=
 =?utf-8?B?R3JGcC9mYkd1TUw2RitGbDdBdUh0c3h6aHNvbXdRZjc5S1h4YmNlT2FocHJT?=
 =?utf-8?B?M0J0eW5ScEtBaDVHd2dZS3JUeG9BVncxSlBncTljRTd6TkFpU0FZUlhqSnpY?=
 =?utf-8?B?Z0lQOXJxNGwvZWF1dUZhWHpIMFczTGRYQjhOQWpFVU5LRTM4Zmd4NWowTVFu?=
 =?utf-8?B?OS9HMzhJODJDK0dQNTlBUkFxYXNkMkRkYS9la0pZYk9SYW5pVVhUMFRTOUgx?=
 =?utf-8?B?LzdSTnY1Wm5obWIyVkRVMUFraW0vbXRVUW91SGlUdXJoTWNFeTZVb3BnT1J5?=
 =?utf-8?B?T1pDWDh6NDNlakN0WG4waTBzdEdPM0VsMXdNVGwxKzg2cmlicnZCbUZwZGxJ?=
 =?utf-8?B?OEI2NVhMQSt0cE9BVndWQ21MV2VpQnlyZVR5VFNhWVJzalBwM1d0U29oRlQz?=
 =?utf-8?B?ckphcEltWGRMY1dSVHlJU04wMXZXS2NDN3U4SXJDSVU1WU1TMTlYeEQ4SXRW?=
 =?utf-8?B?YkU1T2lrZEZqalNFQVBqdzJva2ZDSUZMU096MGQvWHVzRC91MklqVXhMbjdQ?=
 =?utf-8?B?RE15OEpYQXdOZWNlNzJ4UTRVL0FOWFU3OUJDMDFwTHdpK0NuQXB0VzZWTTVr?=
 =?utf-8?B?UjRsNlBhbklPd0xYbk9iUnlFWE5rUkl0RitiTVdRaG50d2FlWXVyZEovQ1c3?=
 =?utf-8?B?NDZCbEFlMTZvcEp6am13U1RhR1hhcy83d2NrMkV4bHNlZkFuVWI3djBWRkRM?=
 =?utf-8?B?L0RmYkRmd01yYkxxKy80YVhxZStzeVlEUUhMM2RRdjQzWTdlYlZxem5EWEZH?=
 =?utf-8?B?bklyR3RHZzdobHBablN5STh6bVpZRE45WThYVDh5MjR6cjN2bGpUNW0rbzQ4?=
 =?utf-8?B?bU01VEU3cmxHZmp1M0JPeUVWdkFLY1Z0eXhPU0VXOERJTTdYbW55M1RZcDZB?=
 =?utf-8?B?QVIyakowcFJoK3k2ekRwNTJlMVdjNkIxaVNySzJpMmtSOHpsYU5ZdFNyL2VS?=
 =?utf-8?B?WjBJa1QwNDcvMnBPRmd5ZnQ0eDM4YTUvSEd2Y3FhVVZraFNBYUNiQnRlOGR0?=
 =?utf-8?B?clFkdXdBS09TSW5FdlpMbFJYVDhpTTdtanZGL2pEb1A0RzIvdlZucEdDOGYr?=
 =?utf-8?B?c2owMWszbnFWdmpva3lvd255aHQyWlpkZDVSQ0hiTkFBSXBnUVdtRjA2MEZl?=
 =?utf-8?B?T2ZJbEdDVDR0WlVMaHlpZlFLdUpFdGd6aVU1S1MzQjhYcklEKzVuREZ6Wmpq?=
 =?utf-8?B?OGpEL01tS2M5RllKOU9rRGhVK1lyNzFuc08rQ2hYKzNXYVJKRDBGeDdmVmJq?=
 =?utf-8?B?SEw0OEVNRktGN25XWnlvNERNMzFaU0I5cXh5SWZsdENuckVtdGZYbThURjlD?=
 =?utf-8?B?b0xOb2RpRkpiWnViWWFrNVNlNXZTbmp3WkNITWJDNkVtUzM5K1FiQXcwVHhW?=
 =?utf-8?B?eE5kdWxFcTBjNWcyMW4wOUdZNzZJcm1FVVR1ek1zQ3N0UmEvVVNCazFjU2xu?=
 =?utf-8?B?NldBRUlNT21pbmpBNi9HeU1RYmI5dEpYTnF0d1JvZk83a0s4cVhIdHVPV29p?=
 =?utf-8?B?ZW9aVGgrTXkyWXdtYXVYQUoycVlCSlZHVUwyT3Roc1d5RHNVbVdWNloyRGtn?=
 =?utf-8?B?anM4S3E2QVRBQzJoSVh3a3ZyYWlFSzFGS0pINjllbEdyVDUyYUpJUGxpTmtu?=
 =?utf-8?B?L0I0Y1pkWkdBRjBpT1J4eW9XSWErY2gzSmpLd0RDcmtOZnF1WmhXSTNkNnd2?=
 =?utf-8?B?bk56aGR2eFA1NjB3SnJ4bGxkd3BZSEJRa1craWVqL3JTYXAxOU5YSmd5anhW?=
 =?utf-8?B?T3o2ZjI0YW9tNUErZldNMGVrRjhCY0REQW1paDdqOVBlaEJ1d01VeXV3MDU3?=
 =?utf-8?B?QzYxTEdtVzhCci9yallqM3NYRU9waWNIVWwvejhvZngweGxZR3RVVjMyVHNn?=
 =?utf-8?B?eTcwN05HenhIV2RZb0dGdVJiRU9obXNYaXZBVHo4VTlkVVdVYjBOc1VZWTVT?=
 =?utf-8?B?TVJMTW03YllEeHF5ZVNQeXdZWm9wci9RVWhxaEYzb2RhQTk0K0k3UFVzR2Nv?=
 =?utf-8?Q?SNm4/Rtl/qhw12JERfkL9h4Va?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 46ab7e02-ddf1-4bdc-8261-08dbb5353455
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 15:13:52.0188
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: aIkoDtO9e+JN4hw2stGd9DFkmGbC4jGzpzpH5LBNjlTr6t90TYzJfF4XDDCbOSmNZjsdYDzxwVqOhSldJLjuiQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8655

On 14.09.2023 16:49, Andrew Cooper wrote:
> On 14/09/2023 3:40 pm, Jan Beulich wrote:
>> On 13.09.2023 01:21, Andrew Cooper wrote:
>>> We long ago fixed the emulator to not inject exceptions behind our back.
>>> Therefore, assert that that a PV event (including interrupts, because that
>>> would be buggy too) isn't pending, rather than skipping the #DB injection if
>>> one is.
>>>
>>> On the other hand, the io_emul() stubs which use X86EMUL_DONE rather than
>>> X86EMUL_OKAY may have pending breakpoints to inject after the IO access is
>>> complete, not to mention a pending singlestep.
>> If you look at the uses of X86EMUL_DONE you'll see that this error code is
>> not intended to ever come back from the emulator. It's solely used to
>> communicate between hooks and the core emulator. Therefore I think this
>> part of the description and the added case label are wrong here. With them
>> dropped again ...
> 
> Oh.  I see that now you've pointed it out, but it's far from clear.
> 
> I'd suggest that we extend the the debug wrapper for x86_emulate() with
> an assertion to this effect.  It also has a knock-on effect in later
> patches.
> 
> With the DONE part dropped, this probably wants merging into patch 4. 
> Thoughts?

Not sure. Even then the patch here looks to still make sense on its own.
I don't mind the folding, I guess, but for the moment the two R-b are
only on the individual patches.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:16:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:16:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602458.939122 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgo51-00049t-OY; Thu, 14 Sep 2023 15:16:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602458.939122; Thu, 14 Sep 2023 15:16:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgo51-00049m-Li; Thu, 14 Sep 2023 15:16:31 +0000
Received: by outflank-mailman (input) for mailman id 602458;
 Thu, 14 Sep 2023 15:16:30 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmb-0002WX-60
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:29 +0000
Received: from mail-lj1-x229.google.com (mail-lj1-x229.google.com
 [2a00:1450:4864:20::229])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 05023a52-530f-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:26 +0200 (CEST)
Received: by mail-lj1-x229.google.com with SMTP id
 38308e7fff4ca-2bcbfb3705dso16495241fa.1
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:26 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.25
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:25 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 05023a52-530f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703446; x=1695308246; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=Ok1TJYwJQJI7C0pX6S7p2xUmNjrsXD97NUag9YwJGF0=;
        b=GhJ5MwRsCwNw3qAl3AAeYkG7HGO9uHcZwYFjpDiOhKFvayyx6oGvxoyCWJIeJei5qg
         pfzaI/vMEZVWUrVsjuA6KVRPyAqj9KPsIQIEnNMaRg/K4htYFYHDHV8016fSWhp1Xm0P
         QTPnj+XnkT9CEEg9iO2rsgxj48kcvhvLu1kLFo2XMijiVjc2jjkVIzC8n4IW9weOfWUo
         XO8GokO5lo1dsOJURdQ2oLP0yUF2NdHSjIW0IUJGUWn3zn/35gxqzeQxLf1T97JcEXbg
         E71KQu9UpzUFbNC93qbGFQ6MPBcfe4A3dz/2rjLmetst0yDAdeQGF88DFZmLZ7uUz5zF
         5xNg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703446; x=1695308246;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=Ok1TJYwJQJI7C0pX6S7p2xUmNjrsXD97NUag9YwJGF0=;
        b=DpgD0SDcu+DVXbIe7dbgpiFRE1VgL7YDoFaw02lHqAUmNZcFIx0eKMwccje+69LqTm
         +OfZTH962bUooOMBdE3vQF/QTLHZGYE0tzZD6We5Y5pSPwjmXq0A5LdjN/u/jZSpD522
         JHwOslNJkcNXIUlktG+OOqRJHZhTUckfhpeF9ak4SCQId9goma1TWxM5qCfD3CfbiUhI
         nW359IDoSbQzHLLPmGlKbWJWGgnx0WOmYT+EwmoBGFBYTBvokpW4fCkEAOMJqYPbcVFu
         O9sG6cFjOzN3fI0iyjIqOpYbpHyB7rv4seISiUbBeSr1P0KT75wWVTpWZV21H6pV+sh8
         AwmA==
X-Gm-Message-State: AOJu0YwuSF2HRxb8t1C9JEU8nmzzgb6smidF7x3CxsajA7caRH7lXPVU
	b8EgjtdMFcA1D6IBKZXhs95QD1JOsMU=
X-Google-Smtp-Source: AGHT+IGbJcWrraL1eWxsT86XyCys0UVC8IK8YvDLuazDOc0+RZw4dzxYICFJILoCRVA8v8ix9rJL/w==
X-Received: by 2002:a2e:960e:0:b0:2bf:789e:b5dd with SMTP id v14-20020a2e960e000000b002bf789eb5ddmr4778805ljh.53.1694703446235;
        Thu, 14 Sep 2023 07:57:26 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 24/29] xen/asm-generic: introduce stub header guest_access.h
Date: Thu, 14 Sep 2023 17:56:45 +0300
Message-ID: <56793f5bb85535f4e5be90fe83d0dc9850330b0e.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/guest_access.h | 31 ++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)
 create mode 100644 xen/include/asm-generic/guest_access.h

diff --git a/xen/include/asm-generic/guest_access.h b/xen/include/asm-generic/guest_access.h
new file mode 100644
index 0000000000..b865d37f4e
--- /dev/null
+++ b/xen/include/asm-generic/guest_access.h
@@ -0,0 +1,31 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_GUEST_ACCESS_H__
+#define __ASM_GENERIC_GUEST_ACCESS_H__
+
+#include <xen/mm.h>
+
+unsigned long raw_copy_to_guest(void *to, const void *from, unsigned len);
+unsigned long raw_copy_from_guest(void *to, const void *from, unsigned len);
+
+#define __raw_copy_to_guest raw_copy_to_guest
+#define __raw_copy_from_guest raw_copy_from_guest
+
+#define guest_handle_okay(hnd, nr) (1)
+#define guest_handle_subrange_okay(hnd, first, last) (1)
+
+struct domain;
+unsigned long copy_to_guest_phys(struct domain *d,
+                                 paddr_t gpa,
+                                 void *buf,
+                                 unsigned int len);
+
+#endif /* __ASM_GENERIC_GUEST_ACCESS_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:16:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:16:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602464.939132 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgo5S-0004jp-01; Thu, 14 Sep 2023 15:16:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602464.939132; Thu, 14 Sep 2023 15:16:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgo5R-0004ji-T9; Thu, 14 Sep 2023 15:16:57 +0000
Received: by outflank-mailman (input) for mailman id 602464;
 Thu, 14 Sep 2023 15:16:57 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmi-0002WX-6y
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:36 +0000
Received: from mail-lj1-x234.google.com (mail-lj1-x234.google.com
 [2a00:1450:4864:20::234])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 07e06a6f-530f-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:31 +0200 (CEST)
Received: by mail-lj1-x234.google.com with SMTP id
 38308e7fff4ca-2bfc5218dd8so16475161fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:31 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.30
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:30 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 07e06a6f-530f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703451; x=1695308251; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=RuqIAdHXsDV1gv+OkVBVoXy1cs3PJPdYw0WDDR79HMM=;
        b=GOXmlu/ik9fYJHZrAbV7RryN/CiVdykY+Pob0MBpTg1sJMRD3lFwq9N1Oidq6P2MNk
         G4XhA+X+pY0M4PAsb4lJAF3Y2yoBKkb+Goe012NG9OE1XugaAmrqKAAicpM3yRPINtDQ
         4fQVQtO8/qKWY1XoLUqGCsiCgpa2OGtIYlcPMzHB675t2/gEk5BQYEu++BW5w8zqu3SX
         GKOYKgwvTz2UdUzWeCOpQVRxyWmbQ2lI2MFL9qcW9SQS/pnvlpTB40BASVyJpEafnjbY
         rztDQUv/9FBeuRqkGLLvkbDglNhbnZuquFxgnmCVYoqcjzyXbPCiXJA+u9fINsMo/Xjz
         bjWA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703451; x=1695308251;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=RuqIAdHXsDV1gv+OkVBVoXy1cs3PJPdYw0WDDR79HMM=;
        b=X3DqIYS3HFwZyvrAzomQlsJTGXOjULHTEDI0QxsKJc6FXvYfZLvl3NYs9Bc/VdPczO
         TxagfosyNkDeKeeyUsJ29h971sjL10D5tkz6eEEWt/3/dF7QSGQKOiEu3Qod1ct81eIy
         N6ESHFZ4DsCJScbxG4vyRDLMULLbtkHMOSJC5J33FvAHCanFCBh531Z0ZEkYzg82Sn38
         FIwlgCRNSOdt/iRmCfcJH0plxgWu8/LSqQ6yuyB924HYyjT2uZXvXSnPPlKymFINuq9P
         hCx4+1FAqmQPHhpDnZjlbFLqDewDqpHTzq4x7ogl8mWvZTrzLeBWRheZqJkKI5QPT/Xj
         kURg==
X-Gm-Message-State: AOJu0YyCWggvMwNYrsEbB4ASAeRZ1Gk7/5/evi9Y7TtMksgaaCO5/4Cx
	gIOiDdLzPZHDdUikJgZmFB8lqT7RjqM=
X-Google-Smtp-Source: AGHT+IE63MvqY04Bfh3l9boON9/lvcHwlW19O2BdKdsC8dDQCa0ilk469q04ilR7cR4p8M5UL2Q/ag==
X-Received: by 2002:a2e:8092:0:b0:2bc:f5a0:cc25 with SMTP id i18-20020a2e8092000000b002bcf5a0cc25mr5204702ljg.2.1694703451058;
        Thu, 14 Sep 2023 07:57:31 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 28/29] xen/asm-generic: introduce stub header p2m.h
Date: Thu, 14 Sep 2023 17:56:49 +0300
Message-ID: <161b123e70e1bad65c3c64c2ffab09a3669f9e42.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/p2m.h | 115 ++++++++++++++++++++++++++++++++++
 1 file changed, 115 insertions(+)
 create mode 100644 xen/include/asm-generic/p2m.h

diff --git a/xen/include/asm-generic/p2m.h b/xen/include/asm-generic/p2m.h
new file mode 100644
index 0000000000..554fd46608
--- /dev/null
+++ b/xen/include/asm-generic/p2m.h
@@ -0,0 +1,115 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_P2M_H__
+#define __ASM_GENERIC_P2M_H__
+
+#include <asm/page-bits.h>
+
+#define paddr_bits PADDR_BITS
+
+/*
+ * List of possible type for each page in the p2m entry.
+ * The number of available bit per page in the pte for this purpose is 4 bits.
+ * So it's possible to only have 16 fields. If we run out of value in the
+ * future, it's possible to use higher value for pseudo-type and don't store
+ * them in the p2m entry.
+ */
+typedef enum {
+    p2m_invalid = 0,    /* Nothing mapped here */
+    p2m_ram_rw,         /* Normal read/write guest RAM */
+    p2m_ram_ro,         /* Read-only; writes are silently dropped */
+    p2m_mmio_direct_dev,/* Read/write mapping of genuine Device MMIO area */
+    p2m_mmio_direct_nc, /* Read/write mapping of genuine MMIO area non-cacheable */
+    p2m_mmio_direct_c,  /* Read/write mapping of genuine MMIO area cacheable */
+    p2m_map_foreign_rw, /* Read/write RAM pages from foreign domain */
+    p2m_map_foreign_ro, /* Read-only RAM pages from foreign domain */
+    p2m_grant_map_rw,   /* Read/write grant mapping */
+    p2m_grant_map_ro,   /* Read-only grant mapping */
+    /* The types below are only used to decide the page attribute in the P2M */
+    p2m_iommu_map_rw,   /* Read/write iommu mapping */
+    p2m_iommu_map_ro,   /* Read-only iommu mapping */
+    p2m_max_real_type,  /* Types after this won't be store in the p2m */
+} p2m_type_t;
+
+#include <xen/p2m-common.h>
+
+static inline int get_page_and_type(struct page_info *page,
+                                    struct domain *domain,
+                                    unsigned long type)
+{
+    BUG();
+    return 1;
+}
+
+/* Look up a GFN and take a reference count on the backing page. */
+typedef unsigned int p2m_query_t;
+#define P2M_ALLOC    (1u<<0)   /* Populate PoD and paged-out entries */
+#define P2M_UNSHARE  (1u<<1)   /* Break CoW sharing */
+
+static inline struct page_info *get_page_from_gfn(
+    struct domain *d, unsigned long gfn, p2m_type_t *t, p2m_query_t q)
+{
+    BUG();
+    return NULL;
+}
+
+static inline void memory_type_changed(struct domain *d)
+{
+    BUG();
+}
+
+
+static inline int guest_physmap_mark_populate_on_demand(struct domain *d, unsigned long gfn,
+                                                        unsigned int order)
+{
+    BUG();
+    return 1;
+}
+
+static inline int guest_physmap_add_entry(struct domain *d,
+                            gfn_t gfn,
+                            mfn_t mfn,
+                            unsigned long page_order,
+                            p2m_type_t t)
+{
+    BUG();
+    return 1;
+}
+
+/* Untyped version for RAM only, for compatibility */
+static inline int __must_check
+guest_physmap_add_page(struct domain *d, gfn_t gfn, mfn_t mfn,
+                       unsigned int page_order)
+{
+    return guest_physmap_add_entry(d, gfn, mfn, page_order, p2m_ram_rw);
+}
+
+static inline mfn_t gfn_to_mfn(struct domain *d, gfn_t gfn)
+{
+    BUG();
+    return _mfn(0);
+}
+
+static inline bool arch_acquire_resource_check(struct domain *d)
+{
+    /*
+     * The reference counting of foreign entries in set_foreign_p2m_entry()
+     * is supported on GENERIC.
+     */
+    return true;
+}
+
+static inline void p2m_altp2m_check(struct vcpu *v, uint16_t idx)
+{
+    /* Not supported on GENERIC. */
+}
+
+#endif /* __ASM_GENERIC_P2M_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: BSD
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:18:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:18:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602474.939141 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgo73-0005iT-AX; Thu, 14 Sep 2023 15:18:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602474.939141; Thu, 14 Sep 2023 15:18:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgo73-0005iM-7z; Thu, 14 Sep 2023 15:18:37 +0000
Received: by outflank-mailman (input) for mailman id 602474;
 Thu, 14 Sep 2023 15:18:35 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgo71-0005h0-L6; Thu, 14 Sep 2023 15:18:35 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgo71-0003WS-IZ; Thu, 14 Sep 2023 15:18:35 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgo71-0002oN-3v; Thu, 14 Sep 2023 15:18:35 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgo71-0007jV-3T; Thu, 14 Sep 2023 15:18:35 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=qiupbSxsinwgWgaJDNdCoNRwmEfWOflLEMbikW1qjEk=; b=hIgBoz3Z2Xa22qePskswJK0LYz
	xKwCAV8YggPTvkJQoYNTOcwAUHwdh9uCqLG2bR26FJJ1NsOMS+0WG8B10qqnHn7+obzR53+OiaF/7
	I2uzlcuXT+OugWaz6q0AlQhDaCXl38mHkTWYlw9vSbmHWWCm2dFDRQsUuEMcPgHIN19c=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183001-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183001: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=1f85f0967b12521f3d7321cb8469393e72d0ce7a
X-Osstest-Versions-That:
    libvirt=ca40725a2101c597c03661771a4e546001f629cc
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 14 Sep 2023 15:18:35 +0000

flight 183001 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183001/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182958
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182958
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182958
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              1f85f0967b12521f3d7321cb8469393e72d0ce7a
baseline version:
 libvirt              ca40725a2101c597c03661771a4e546001f629cc

Last test of basis   182958  2023-09-12 04:18:50 Z    2 days
Failing since        182989  2023-09-13 04:18:52 Z    1 days    2 attempts
Testing same since   183001  2023-09-14 04:18:45 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Erik Skultety <eskultet@redhat.com>
  Jonathon Jongsma <jjongsma@redhat.com>
  Peter Krempa <pkrempa@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   ca40725a21..1f85f0967b  1f85f0967b12521f3d7321cb8469393e72d0ce7a -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:21:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:21:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602487.939151 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoAE-0007mi-Ts; Thu, 14 Sep 2023 15:21:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602487.939151; Thu, 14 Sep 2023 15:21:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoAE-0007mb-RE; Thu, 14 Sep 2023 15:21:54 +0000
Received: by outflank-mailman (input) for mailman id 602487;
 Thu, 14 Sep 2023 15:21:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=J3lF=E6=citrix.com=prvs=61487cf85=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qgoAC-0007mU-Oi
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 15:21:52 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6bf98d61-5312-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 17:21:50 +0200 (CEST)
Received: from mail-mw2nam10lp2108.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.108])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 14 Sep 2023 11:21:36 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB6706.namprd03.prod.outlook.com (2603:10b6:510:111::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Thu, 14 Sep
 2023 15:21:34 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 15:21:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6bf98d61-5312-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694704910;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=ApwKoNNOtFUz8QZiqkTK4w6qOreJTxdoKMEyf6BcTzU=;
  b=LK9mRGNKjeZNr6P3vCtUvbpQObcCcYwRrcpVlLNyERzbRcX+iwwYW4o+
   pT0OCZfYnHDOAWdtr7hmixg0TxhVbjLIpTI3HS9YeYAWIhdKhh3/Z7/pp
   zjiW+Bjc6xHRzhxZJlqna6xoQm6I9vNHbUGglaZvSvBlb+NKa9k0LGRkn
   s=;
X-CSE-ConnectionGUID: HmN5eX0AROiU7u0sUFud/g==
X-CSE-MsgGUID: YuIH9o0TQrykJwXFtYfeAg==
X-IronPort-RemoteIP: 104.47.55.108
X-IronPort-MID: 125376988
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:HW98x6CjgKCzhBVW/w/iw5YqxClBgxIJ4kV8jS/XYbTApG8mhTJVx
 moZWD+DO/bZYWSheI1+bN/i/EkGv5/Tyd43QQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMscpvlDs15K6p4GJB4gRlDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw2uNRXGx+r
 dUiDzEwMQ3bnN+Y3b78Rbw57igjBJGD0II3nFhFlGmcKMl8BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI+Oxuuzi7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqC/32bGezXOTtIQ6JaCZ1q9t2GGq3H0QKgIme0eKr/SQhRvrMz5YA
 wlOksY0loAi+UruQtTjUhmQpH+fogVaS9dWC/c96gyG1uzT+QnxLmoOQyNFadcmnNQrXjFs3
 ViM9/v2ARR/vbvTTmiSnop4thu3MCkRaGodPykNSFJd58G5+dljyBXSUtxkDai5yMXvHi39y
 CyLqy54gKgPickM1OOw+lWvby+Qm6UlhzUdvm3/Nl9JJCsjDGJ5T+REMWTm0Ms=
IronPort-HdrOrdr: A9a23:zqqQpKuEUk4fEBGbsNyNLXkP7skDstV00zEX/kB9WHVpm6yj+v
 xG/c5rsCMc7Qx6ZJhOo7+90cW7L080lqQFg7X5X43DYOCOggLBQL2KhbGI/9SKIVycygcy78
 Zdm6gVMqyLMbB55/yKnTVRxbwbsaW6GKPDv5ag8590JzsaD52Jd21Ce36m+ksdfnggObMJUK
 Cyy+BgvDSadXEefq2AdwI4t7iqnaysqHr+CyR2fiIa1A==
X-Talos-CUID: 9a23:Lt5NSmzMTEt8Gn6bTuUuBgU0H+Z4f02F5U33InLnFD5ydZOIRRifrfY=
X-Talos-MUID: =?us-ascii?q?9a23=3AFW1NYw16Vk/DbAYO65ghnczO5TUj0rmPKBEKyak?=
 =?us-ascii?q?/odiHFzNAFSusgjmeTdpy?=
X-IronPort-AV: E=Sophos;i="6.02,146,1688443200"; 
   d="scan'208";a="125376988"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oLvj0+BlPy77MHsSeWdkGBami3Z+PpZ1qa9TCHibUuH02Jyq/hme+evcIrBkbQAku4G8JhfM2PNtJlTiNhmEospI9RnXkby+4JNmr0YN8Hvu/QzE1TqoY6CkgVjexxiPM/bIwepS0GCDglV+Wes8ouZ0ZTAjpkohZaEoLm0wyy1fPpUd0IiILqTAPsd38oO5IhSG0yxp7KiZrEL+nfbGKXVFc5tb9OB3E6nj+WJV/B7j1btEryJDmvmgFrKCWpPWjufFMHgyYYKbsDWfx4n0jZNexyUz7JBkMbAwmXaeNClljxphUdgIlyw8TT4V+Cn9bmP75+t3AxbsReaCuTzk6Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7VuvDmGAdv8kGvu2/DmpPoCvk4JMkNEUCn56eOzkNXk=;
 b=Yaxl+RRzu38YplQXMS55XecrizghH7pfz5UcDjdTs95LrFDwa9T35++GwcU19ztERdqVJ0Dt6qBPcck+JacJiLeHEoyRuBFlmwW5L9tL68Qa+qUXuJZe3QDOT/a/f/IKCfn+AtSCJ3Ha5Wc0KXSEocdJq34lKVbDzxdk7TnDT7txSpdPuaYsI1cnX6b2jgl7scTLGQxq9LqOY+dYm96LrJTwhkeb2k9SR8TBBHYdqmDrOOpj57tXz+uRXAxpiGFiFYPvgIan8PpsO2Xkh4XNMNTgSq3KCz9GesmsVo4wgbwg/T5gLhYzeIsnWyzXlLFXdqXjDtLf8wwnyTkrqdIp8Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7VuvDmGAdv8kGvu2/DmpPoCvk4JMkNEUCn56eOzkNXk=;
 b=Z13yte965XXAlrsu/+jvf/3cW8MYjEKqZJy6zgQhVZrqBGJ11JcmBsxAFqnPwyp2cN5PGjqtDkwGK5m0RiqWtw4u9+QsJPmWc5AjlH4X1Lgr4RkfBl4TmSCxwCiWMEhQ//HrCsZsZQztZySA1p50POM4kcZPPcOheUTX6iK6YFg=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
From: Roger Pau Monne <roger.pau@citrix.com>
To: xen-devel@lists.xenproject.org
Cc: Roger Pau Monne <roger.pau@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [PATCH] x86/shutdown: change default reboot method preference
Date: Thu, 14 Sep 2023 17:21:20 +0200
Message-ID: <20230914152120.92696-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO3P265CA0008.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:bb::13) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB6706:EE_
X-MS-Office365-Filtering-Correlation-Id: a526d4be-1b33-4581-2605-08dbb536481c
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5+OffV0FpKoXMf7uKXKpbkXNqsrOlaIWmpZaBV+zFA3ty9d9NmJDkeb3QD71Podx5BXKMq2+FbZynG5fgiH7soSaK0MZwvNkHLbb8I0bSpClrmv/FDS+OY+z+90ylz8lus5Kg6dO8S/5i5m3WLkaSDZsd8YyoCF3tbwQamN2bT4eOH3ZB09ZEmoBBzJICqTh5d6cfjZq2fg959qSjNAxSr4HSb+XYv9KPkcn/cK8/5w/PGwzHs6bvZ+7tIoE4fZbNFG08lBxRie9Gvct1yMZj9Jnp+xu0ObmtFJHPvhIPzMFX1QirTj6aS57HedwH45DVGcTbfADP53FiOTromwjq/vPh8q3jeU4xkQPuvgJ9edHMUvgwDLaqcWB5JdLwzwWyt8TYddfP4du1vla6JblvJSItagqh01V5CnlRDJYplbn1i6wnOEdeJHnNpAAgHXe006HhU5kyRWb21zvqyK3+q3o4X8Qw4IPz9N2PFjgZodhMtld6557cSKNpocUYVVyvF+ibDAoMpAo9YBA4QsZEEPPNSqG/ja++HeqpzWX9ZOMDUKwiEbaFfrEfqqo4DyS
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(366004)(39860400002)(346002)(136003)(396003)(186009)(451199024)(1800799009)(41300700001)(6506007)(6486002)(6666004)(86362001)(38100700002)(36756003)(82960400001)(2616005)(2906002)(5660300002)(6512007)(6916009)(83380400001)(66556008)(54906003)(26005)(4326008)(478600001)(8936002)(8676002)(1076003)(66946007)(316002)(66476007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YUk2eXgxU1hLUTIzNHMxNHFrdGhMOFFwQkVPVllFYm9Mb3BrcXNyL1FPck5N?=
 =?utf-8?B?bjB5WjZUd2lGWVhGL3ROUjcyUjE5V1hqWTE4WUlLeTRuMlBrSklReFMxK3Bt?=
 =?utf-8?B?RDZ1Q0VualZDVWZxSlRuUlJHM282ckt3TzQveUtWWnlmZnY3YmNTUFZ0U0xs?=
 =?utf-8?B?Sk9oejdQdndlbmJSM3JCMmdPSmZuZ1I0RzdtUGU0c0Q3YzYwWGdTQi95di9n?=
 =?utf-8?B?VzJ6YzFwUUtJR2xlZ1ZZYXZUQThYRi9oZkRyeU9yeUFhSThBdVcyWUplNmgv?=
 =?utf-8?B?TG45N0xidjJPUURGV2RMamdCOHdjRU0zQ1lJRkl1cGdTM2FpUUI3cng1NjdI?=
 =?utf-8?B?KzRjOHkxTURpRjByeDNyYzV1R3pQVFlyazFZNlVYSWhEZ1h0cHRnVkhWWkg3?=
 =?utf-8?B?ZHlxU0JZWVpSbk50NWpBM3J0YW1yNVJaaGQxU0t0NUY4ODlxdVRvL0IvbTE5?=
 =?utf-8?B?Wkp3ZWp0Y1daUWNLMjVnWWhZdFVvdjJqUUNOVm1TY1ZZejJQdVJ6M21XR2tR?=
 =?utf-8?B?YnhFZExqRHFJc1pmVm9nTlBPZjNiUUQxN3lHY0RzN3hWdFF4SkZaUnRoV1Z0?=
 =?utf-8?B?TExnaUZLT1NLWnI1RkRUMTM3NGtmV05Hd3RPWTdWdkVhYkZjN0syWnI5aHB4?=
 =?utf-8?B?ZWVOZ1NXNVFyT2FMNFVobGVlM3FKLzhHUlNickRadWZSTVhHZVIzNTlBYkZj?=
 =?utf-8?B?QzlMVHFXRVJFRnVsb0prTm1GMkRQV3F0bkNzK2xpVmtSMHIrMlRTNGRDdCtw?=
 =?utf-8?B?QTlNc2h6UVA4a0hUVHBER01STnV2VXdlbmw1U0hYOGNZWXJ0Z2hPTnpWZWtZ?=
 =?utf-8?B?MjJIY0JTZjRnbTZyNTNVM2x4VVJPVWZXK0JXOXBOa3F5UDBNNkc5c0FzNVBT?=
 =?utf-8?B?R2h3Rm1pYjh3Yk5vNGN2anR3Q1lCa2tOZnlCcHJvcXhxTXRJYlplMjFTM3Jv?=
 =?utf-8?B?R0dSSzRTcGFXSlNWSlJ3UGJYczEyam5oQXRhT0RxRldaMHk2Ylc3UERBL0FS?=
 =?utf-8?B?ZEpuUlpnUUpnNmhTVTZadWV6MnVJL09xakduZFBTcU1FNFpGakYvS2RMR29p?=
 =?utf-8?B?QUdXQ254YXV5ZGMyK3lQSFlFY3RvSGhuRlVsZ2R6L1MxelVUaXhjUkZMdTdZ?=
 =?utf-8?B?b1JRYUNrM1REV0tZVFh5c3JWWUc4K2FGcFp6djBUaG10QTk1aStNaUE3R1Iv?=
 =?utf-8?B?THkxdGpaTHZTbE5VWTJKd3R2TTg2R0F6SGNLOW9od1haTWNJQnBUQ2lVU0FS?=
 =?utf-8?B?RmYzVzJnYWNnUGVKZ3FSQW41WTN1UHM4UVhZdGllcUV6MjBHaWpNKzh3VlFa?=
 =?utf-8?B?MHZRbUtFZFRsUUFJTmdPc2dZd0t4dkd6cFpORVM1ZG5sWGJFdjhub1pITGZ4?=
 =?utf-8?B?UzBsVldxWEpVQ1lNZTJIeVlHV3NFUVc4aUdmcmJFUjVjUWJzbHJiVjQ2M0hz?=
 =?utf-8?B?NnB1RlBsNFZyQkMwMmVSZXZ2NzcyODIyZVdFSW43VkhQbnBLMEpzQUYya1Jj?=
 =?utf-8?B?TS85d0VrVkt3a2VYMnJoRlVDbExhUFJXMjNvRXZqdFVyTldycGYrZkdmQW14?=
 =?utf-8?B?ODFGZnFGbUpiZ3ZmK2N2ZlNGV0dtMUQrdkZlY05aSFpuemRyQXEzNWs0NVlo?=
 =?utf-8?B?bEhyMTliNTBhdTVKVW1mTlVJNUkzT0Nxajg3V0hiSjdwd0xtQTJFdEN3MVE4?=
 =?utf-8?B?S2ZOMnZBdWxGdmZlMTRCMmlIdU5JTFJMWDhVNld0akFCS1FQR1kvOFNmMWxM?=
 =?utf-8?B?R0J6NlFKRUJiN2dRdEN5TTJ3bXBxbEdkb214RDNHSk5KeDJTUU5FYUY3MUdM?=
 =?utf-8?B?bkhsOGVWamtyOW5rYXlCTlNDUnBjNjBkQVk0cmFQMUlOci9KbmZ1LzdXTk1R?=
 =?utf-8?B?R3lOa29GOUtDZFQvRmxQUjVpR1pBSElUU2R3VmNCQzV2QnRha1dZSlZGbjZw?=
 =?utf-8?B?QlFBa2NQMnkwL3htYUlBcmZWbDYwRk1MZEpxOXd6cFRzQ2lyeEJKVWxjMFhB?=
 =?utf-8?B?WHdLbVFNd0ZwMytEdmptMnpOUUJZMjBJeDJkekEyNXoxcVRqUXF1UUQyakRx?=
 =?utf-8?B?bTZpNUsyc1Z5eUh3VXMyV2VjYkVlRFlUL0JiWlVnb3BOZ0ZxUVRrVDdMOU8v?=
 =?utf-8?B?UFFGNGpwcU53U3pmeVRoa3lBNGI0WkFOcE5DTFRTUHJtemIxdlB0dUd5MHdq?=
 =?utf-8?B?Vnc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	RNwG1mp9pIVVbOIK8wUZee8xbskUoP8MCtgIqBXL8Ubdo0KMwa07YEHwLvCYd6w+S34G+7z5wUsaMV02qnD23hMmyq7aYsf1q9+ipKEKyFPcoYluGzyJlP0L6JJDBjLQ85HOuv3Pun5Xci8H5+UsfBb30Wh70QPT9PWI4H52UyM6CL4TDOYCzrqvOQ4XYfXQOWLq4+RwMBU1PLvmkcSd0/TIfcFJF8qgS01SXp0Z9aClNzmxH3JU3JVoz90Kd57SXSJ/nMrKxW6+dSxywgP/2tY9zSfxeHVMUQlZanpSYjP7uzHRsw9Cir2kTJ6+DSpFjGLRQ84OBm3O9wzcR8GmW0Jaqt2IkFAN6/LojdUp5Y9BRhuGH9i/zZDPX16m93k0aJF+p+l2BiuBtYA5NsEWx5fom0GDLimJfLvlJ4R9MISorbT8PyjrCzr5VXtaGItptSkbja736unSO4lTnIoPD7QhbqsIdJXyIQgG/nXK+A9nSwNPuBhVYW81ois0JvjUWm9FU//htnTghgCdUh6ShJ+tEyq1JThNhda51RxUPl+kbop10jv1tXjpjREslVq/cpRyR+kE04q+7OXKkzV7Y5n7vg4iR6yT2yzRgbJ/g/n/StkMtbkKtpj/0cRyLkLRZLTKXKXNMm6Fyd651hinQT3QCBbQhbKcLP0sfMXQ/9b/32nUZTR8OIwWA98BOwzpI4OwrR93VK3Xy+lB5HrKWT0Y6W0QRkYh4aeFceJsFnvrbBnNlJY3McZk3SOq0cESJDKaO7FuMpopqwjeC8RdZwkc4cdaZp9Askrx42+SPXQmnfb6Bs9vZuODvIgh6HjW
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a526d4be-1b33-4581-2605-08dbb536481c
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 15:21:34.7629
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: kgArpH0ZIICxrYXoeIxVTRh5DyLuCd6N3A5POb0vsrpIjQ9Cwu8lxHXyvqKy4vO4F/a+nwr0dR/Bdwhw2RFx9w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6706

The current logic to chose the preferred reboot method is based on the mode Xen
has been booted into, so if the box is booted from UEFI, the preferred reboot
method will be to use the ResetSystem() run time service call.

However, that call seems to be widely untested once the firmware has exited
boot services, and quite often leads to a result similar to:

Hardware Dom0 shutdown: rebooting machine
----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
CPU:    0
RIP:    e008:[<0000000000000017>] 0000000000000017
RFLAGS: 0000000000010202   CONTEXT: hypervisor
[...]
Xen call trace:
   [<0000000000000017>] R 0000000000000017
   [<ffff83207eff7b50>] S ffff83207eff7b50
   [<ffff82d0403525aa>] F machine_restart+0x1da/0x261
   [<ffff82d04035263c>] F apic_wait_icr_idle+0/0x37
   [<ffff82d040233689>] F smp_call_function_interrupt+0xc7/0xcb
   [<ffff82d040352f05>] F call_function_interrupt+0x20/0x34
   [<ffff82d04033b0d5>] F do_IRQ+0x150/0x6f3
   [<ffff82d0402018c2>] F common_interrupt+0x132/0x140
   [<ffff82d040283d33>] F arch/x86/acpi/cpu_idle.c#acpi_idle_do_entry+0x113/0x129
   [<ffff82d04028436c>] F arch/x86/acpi/cpu_idle.c#acpi_processor_idle+0x3eb/0x5f7
   [<ffff82d04032a549>] F arch/x86/domain.c#idle_loop+0xec/0xee

****************************************
Panic on CPU 0:
FATAL TRAP: vector = 6 (invalid opcode)
****************************************

Which in most cases does lead to a reboot, however that's unreliable.

Change the default reboot preference to prefer ACPI over UEFI if available and
not in reduced hardware mode.

This is in line to what Linux does, so it's unlikely to cause issues on current
and future hardware, since there's a much higher chance of vendors testing
hardware with Linux rather than Xen.

I'm not aware of using ACPI reboot causing issues on boxes that do have
properly implemented ResetSystem() methods.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
I haven't found anything in the UEFI spec that mandates to use ResetSystem()
when booted from UEFI, I've only found:

"One method of resetting the platform is through the EFI Runtime Service
ResetSystem()."

But that's vaguely a recommendation.

I've found a lot of boxes that don't reboot properly using ResetSystem(), and I
think our default should attempt to make sure Xen reliably reboots on as much
hardware as possible.
---
 xen/arch/x86/shutdown.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
index 7619544d14da..81d8eda64a41 100644
--- a/xen/arch/x86/shutdown.c
+++ b/xen/arch/x86/shutdown.c
@@ -150,12 +150,12 @@ static void default_reboot_type(void)
 
     if ( xen_guest )
         reboot_type = BOOT_XEN;
+    else if ( !acpi_disabled && !acpi_gbl_reduced_hardware )
+        reboot_type = BOOT_ACPI;
     else if ( efi_enabled(EFI_RS) )
         reboot_type = BOOT_EFI;
-    else if ( acpi_disabled )
-        reboot_type = BOOT_KBD;
     else
-        reboot_type = BOOT_ACPI;
+        reboot_type = BOOT_KBD;
 }
 
 static int __init cf_check override_reboot(const struct dmi_system_id *d)
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:22:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:22:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602493.939162 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoAn-0008MZ-6G; Thu, 14 Sep 2023 15:22:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602493.939162; Thu, 14 Sep 2023 15:22:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoAn-0008MS-35; Thu, 14 Sep 2023 15:22:29 +0000
Received: by outflank-mailman (input) for mailman id 602493;
 Thu, 14 Sep 2023 15:22:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmf-0002WX-6I
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:33 +0000
Received: from mail-lj1-x235.google.com (mail-lj1-x235.google.com
 [2a00:1450:4864:20::235])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 06f4e01f-530f-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:30 +0200 (CEST)
Received: by mail-lj1-x235.google.com with SMTP id
 38308e7fff4ca-2bb9a063f26so17209521fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:30 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.29
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:29 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 06f4e01f-530f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703449; x=1695308249; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=aI25daj2NtPhBXJcnFkuOhkb6xig5qy+VaAN6xNV3YY=;
        b=sLoueh5xm6NI2/JswBlXd2H8rSxg9mTHexilQxNd8qlPZrR6poE8xdP7iVs3J9JD+G
         U6ehwlvmhOPWeooeEla/kZwSQsnWNb8ir7ZwWwit9pK7E0llc6Wf7Xt18P3ctaVfaxvx
         s0wXbNhyPsuDauIEqUFDsavwVYLxOq/wiql4JgOP7jH+viZHmzW9Aa6BaAWGquehHdF6
         xnB5/HnstM3hzNQHERJS4B2D9pbmrGFxgiAYGdA5z2H8iQga+TKPIi6xiYND6ZVvlzkF
         nuv4xPBih2z7Q5rT4UmFEKJesezwv65nKbZZbE0RdIMLgp5MPKs66+jgDLnlyD7eqVbx
         jxqg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703449; x=1695308249;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=aI25daj2NtPhBXJcnFkuOhkb6xig5qy+VaAN6xNV3YY=;
        b=DZSfk75Mx2lY7ReMqgHZbaDxj2e+OzRnMzWfMiuDhifPgk0pNN7WF8AQxbwyx/1cQQ
         G1ZZP2WzbOZ8Vko3nFLUGs47zUTnx5iPwy9zI1k0HwILgivpZGdzYYr6ODgy8/FidNSS
         ZS/dZGjwxSAm78k4OcfNfnsZIxeNRzAOi8rLiecFjYvXfNlQ8bemsmw05NF+Ub2Gc13d
         W9/zn2pgHTVKO5mvajiSUuXL3I64eq1W25yNgQvYETv3T52v9+DAVMdqt9WOOXypI3Uv
         PAc9morluTnOywrBTEhHhuV1px+YsZyE72EJ7k9NDrW8by0y2zTAJeqYmtwOffo8s0EI
         kr/w==
X-Gm-Message-State: AOJu0Yx1Knq9KMj0TUi6qsNHRqZzsXDoQ25IWIXqmQR5YwmScOL7QW0c
	XkEMU5JHPSSCpbkcQo9SB/9/rHcwrjA=
X-Google-Smtp-Source: AGHT+IGnKszfioWrlfMrI9gyb0uSnnGj8/VweY7O6m6x/47xY0ZnbZJaTiNbDfFi+s88Q4iTIIytIw==
X-Received: by 2002:a2e:9b0a:0:b0:2bc:c326:54a2 with SMTP id u10-20020a2e9b0a000000b002bcc32654a2mr4624540lji.50.1694703449525;
        Thu, 14 Sep 2023 07:57:29 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>
Subject: [PATCH v1 26/29] xen/asm-generic: introduce stub header monitor.h
Date: Thu, 14 Sep 2023 17:56:47 +0300
Message-ID: <a2663ba600f468bc4d6544bb64354a77c86a40b3.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/monitor.h | 64 +++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)
 create mode 100644 xen/include/asm-generic/monitor.h

diff --git a/xen/include/asm-generic/monitor.h b/xen/include/asm-generic/monitor.h
new file mode 100644
index 0000000000..c61fe738a8
--- /dev/null
+++ b/xen/include/asm-generic/monitor.h
@@ -0,0 +1,64 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * include/asm-GENERIC/monitor.h
+ *
+ * Arch-specific monitor_op domctl handler.
+ *
+ * Copyright (c) 2015 Tamas K Lengyel (tamas@tklengyel.com)
+ * Copyright (c) 2016, Bitdefender S.R.L.
+ *
+ */
+
+#ifndef __ASM_GENERIC_MONITOR_H__
+#define __ASM_GENERIC_MONITOR_H__
+
+#include <xen/sched.h>
+#include <public/domctl.h>
+
+static inline
+void arch_monitor_allow_userspace(struct domain *d, bool allow_userspace)
+{
+}
+
+static inline
+int arch_monitor_domctl_op(struct domain *d, struct xen_domctl_monitor_op *mop)
+{
+    /* No arch-specific monitor ops on GENERIC. */
+    return -EOPNOTSUPP;
+}
+
+int arch_monitor_domctl_event(struct domain *d,
+                              struct xen_domctl_monitor_op *mop);
+
+static inline
+int arch_monitor_init_domain(struct domain *d)
+{
+    /* No arch-specific domain initialization on GENERIC. */
+    return 0;
+}
+
+static inline
+void arch_monitor_cleanup_domain(struct domain *d)
+{
+    /* No arch-specific domain cleanup on GENERIC. */
+}
+
+static inline uint32_t arch_monitor_get_capabilities(struct domain *d)
+{
+    uint32_t capabilities = 0;
+
+    return capabilities;
+}
+
+#endif /* __ASM_GENERIC_MONITOR_H__ */
+
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: BSD
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:22:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:22:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602494.939168 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoAn-0008Pj-HE; Thu, 14 Sep 2023 15:22:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602494.939168; Thu, 14 Sep 2023 15:22:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoAn-0008Og-Av; Thu, 14 Sep 2023 15:22:29 +0000
Received: by outflank-mailman (input) for mailman id 602494;
 Thu, 14 Sep 2023 15:22:28 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmX-0002W4-N5
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:25 +0000
Received: from mail-lj1-x236.google.com (mail-lj1-x236.google.com
 [2a00:1450:4864:20::236])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 032ce7ed-530f-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:23 +0200 (CEST)
Received: by mail-lj1-x236.google.com with SMTP id
 38308e7fff4ca-2bfc1d8f2d2so13634341fa.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:23 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.22
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:22 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 032ce7ed-530f-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703443; x=1695308243; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=NGJnL2nL418M5/uszjX/GlUjvflTtKGWfxAcKAqqexc=;
        b=jNUQvqOeBMSDGD+JgOdSUqCfVApGuGjZ2qLOV+1Y1GBdbZao6bYyuugJJliXdpuraL
         JFcQkdznxowmut/aQnMPnB4n0Rl23/1IHbD9DByKHoCt6ccH36BEo1PdoPSym2RsiP1U
         gr44pzwSSaKOmM3i/2cwoHUD3Fx3jEscx95OyiW/pF+4AsvsUlVEMGUtDgY9qWBkFKN8
         m5UrcX6oCdNUG9SaQ9P0fjER/eoSn3RfhHWPRYml1EHt6+WBZBor35mu8x8LLOfQTTxR
         dD3xLsm0m7VKMpXUIJrpR4OC1lNBbsCYk1G9cN5Rcr/z6lw6XWwoSWWG3azxSAQPAExg
         0i2g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703443; x=1695308243;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=NGJnL2nL418M5/uszjX/GlUjvflTtKGWfxAcKAqqexc=;
        b=cY0VRaIIGCElNItWEMdHtFkRvoGk2QbxyJh3DT/Bzf7wpnLjlk7YozCYdX/pULqpN3
         bxRWGWMInLIjodNLfK+H90uGO6P5FfgMIu2x0gWpsgzK7w4I8k9l22Gj/ztlaBgC/t3N
         0Q94uNm+9ClzcHkH18NeIMp57gqA8sOpjtE6kBVfKWjaGOWkLUCFZ8dmXDfoJoyVx5tT
         +MZEKCxXVeCiAJxz1HRn7ElTOuzVeii9Vj8gBRDAjVV13t6yJflPc0xeCY34BgMHe2we
         GzuLtUpY3yB0M2MwRxjR6FDM5qOS8qFs3ivVT90Hi8pd9giZqjyycqc7Q8nrZB76tj8K
         Rxog==
X-Gm-Message-State: AOJu0Yw32jnysGeCMCybnl0G/YyQTXNaQiDMRW7/aA2HT9kqcD+xdeZI
	TRV0mKnnsAkg2QljrQjfhQ6xMd7sT7Y=
X-Google-Smtp-Source: AGHT+IGpK0E7SuflPXItoYH5tWLeY7McAC9Nf7YsdmHOvtwG74oWQuABe3GYNz3ubbaUUW4mz2J0tg==
X-Received: by 2002:a05:651c:1250:b0:2bc:d2a6:3083 with SMTP id h16-20020a05651c125000b002bcd2a63083mr778572ljh.18.1694703443185;
        Thu, 14 Sep 2023 07:57:23 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 20/29] xen/asm-generic: introduce stub header div64.h
Date: Thu, 14 Sep 2023 17:56:41 +0300
Message-ID: <0c006d03b917924c411e563dcdc8043498be48b3.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/div64.h | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 xen/include/asm-generic/div64.h

diff --git a/xen/include/asm-generic/div64.h b/xen/include/asm-generic/div64.h
new file mode 100644
index 0000000000..9f9c20878b
--- /dev/null
+++ b/xen/include/asm-generic/div64.h
@@ -0,0 +1,24 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_DIV64
+#define __ASM_GENERIC_DIV64
+
+#include <xen/types.h>
+
+# define do_div(n,base) ({                                      \
+        uint32_t __base = (base);                               \
+        uint32_t __rem;                                         \
+        __rem = ((uint64_t)(n)) % __base;                       \
+        (n) = ((uint64_t)(n)) / __base;                         \
+        __rem;                                                  \
+ })
+
+#endif
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:24:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:24:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602507.939181 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoD8-0001WB-Pz; Thu, 14 Sep 2023 15:24:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602507.939181; Thu, 14 Sep 2023 15:24:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoD8-0001W4-NG; Thu, 14 Sep 2023 15:24:54 +0000
Received: by outflank-mailman (input) for mailman id 602507;
 Thu, 14 Sep 2023 15:24:54 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnme-0002WX-6N
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:32 +0000
Received: from mail-lj1-x22a.google.com (mail-lj1-x22a.google.com
 [2a00:1450:4864:20::22a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 06b79c7a-530f-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:29 +0200 (CEST)
Received: by mail-lj1-x22a.google.com with SMTP id
 38308e7fff4ca-2bcb89b476bso17530101fa.1
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:29 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.26
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:26 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 06b79c7a-530f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703449; x=1695308249; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=u2OuKjDTzJ8+b8gwJlzazcZfiUCC0H+tkCh4KnTlNNA=;
        b=UXC2ifmarNKAVsr+HhivmKJQjNZM7Dlyss19BeZuRF4wBqpbjnfDvk8AyaChmd4Bv8
         zYCFImuXF4ElJpR0tEwyHjLlKNDACKUTZ69wujFC6RV1X/azHQhi8mWOpYIlWi7pyog7
         RR3fhyusmrIyx3RHIZEDWG3zmIyqsjEzh3g3VVlEUPAiiEqTjsmFWnXxnf1cJpwtPsQM
         nPygrpmNI7gLahXb2btxGUUeW/fFsaHCMzVwMLOMfe/Pf4SApk48dHtNeziBLKdCsq9H
         aVVw5Pgx0OgE8rw/DGJMtrRxCX05RGd547vXh2FJO84dvn/CKSq73FceTQQXi8TpOWXx
         jtuQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703449; x=1695308249;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=u2OuKjDTzJ8+b8gwJlzazcZfiUCC0H+tkCh4KnTlNNA=;
        b=rDhadcmG02qGTv7SfDn83m/q7Zq8KjoKXUzBHjva0IFToXSqdM8QahrpX1I7ldt1UW
         lOJs/6ksQne4cU1NUe9UMqCasDl5OIm8h/JBZPWzid3kRKMonuWxy30ftzXCHsK8uCUZ
         oNsSLDfbyGO0WKhOrj4YUSQr9YzXa6wDWsWDo4Td5XixyPNTwYD83LI6FmUUGbflTtBe
         Zb7lVhDRCxwZo6kt1uG0vRavAXx01Cd3aXmYKq8FN+G6cfxb132Xccbno0rkcHUPuB9t
         kv+nP5YQdqvSX+q8NzHyyWA5YoTPwhf+l2xIvSX9V2MzfCWWxpWNZnNhNZTkd1OHKB9O
         G9Xg==
X-Gm-Message-State: AOJu0Yw8+cQJkvzml9F832pD+3EdU83yaD8Nz9LrFnyCPm//0wzk12BZ
	1W/kyC5q052Pr39swPrrcR64j/cYoXA=
X-Google-Smtp-Source: AGHT+IES/YCnHzoBVQcCOIIasE5ptSSuGBzMiYKuVGdk/KMS5bFPAER8EEaM8C1vbMEoic+0UL2oFg==
X-Received: by 2002:a2e:3305:0:b0:2bc:e954:4203 with SMTP id d5-20020a2e3305000000b002bce9544203mr4798655ljc.26.1694703447012;
        Thu, 14 Sep 2023 07:57:27 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 25/29] xen/asm-generic: introduce stub header irq.h
Date: Thu, 14 Sep 2023 17:56:46 +0300
Message-ID: <63ee09cef41d0d2ec5e26eb6dbe20df2e377a0fa.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/irq.h | 44 +++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)
 create mode 100644 xen/include/asm-generic/irq.h

diff --git a/xen/include/asm-generic/irq.h b/xen/include/asm-generic/irq.h
new file mode 100644
index 0000000000..5f68cbd10d
--- /dev/null
+++ b/xen/include/asm-generic/irq.h
@@ -0,0 +1,44 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_IRQ_H__
+#define __ASM_GENERIC_IRQ_H__
+
+#include <xen/lib.h>
+#include <xen/device_tree.h>
+#include <public/device_tree_defs.h>
+
+/* TODO */
+#define nr_irqs 0U
+#define nr_static_irqs 0
+#define arch_hwdom_irqs(domid) 0U
+
+#define domain_pirq_to_irq(d, pirq) (pirq)
+
+#define arch_evtchn_bind_pirq(d, pirq) ((void)((d) + (pirq)))
+
+struct arch_pirq {
+};
+
+struct arch_irq_desc {
+    unsigned int type;
+};
+
+static inline void arch_move_irqs(struct vcpu *v)
+{
+    BUG();
+}
+
+static inline int platform_get_irq(const struct dt_device_node *device, int index)
+{
+    BUG();
+}
+
+#endif /* __ASM_GENERIC_IRQ_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: BSD
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:26:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:26:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602518.939192 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoEY-0002jr-8y; Thu, 14 Sep 2023 15:26:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602518.939192; Thu, 14 Sep 2023 15:26:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoEY-0002jk-5u; Thu, 14 Sep 2023 15:26:22 +0000
Received: by outflank-mailman (input) for mailman id 602518;
 Thu, 14 Sep 2023 15:26:20 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnma-0002WX-60
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:28 +0000
Received: from mail-lj1-x22c.google.com (mail-lj1-x22c.google.com
 [2a00:1450:4864:20::22c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 048d46ba-530f-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:26 +0200 (CEST)
Received: by mail-lj1-x22c.google.com with SMTP id
 38308e7fff4ca-2bfb0a2682fso17384781fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:26 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.24
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:25 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 048d46ba-530f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703445; x=1695308245; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=rIPWd/mQM1gGtdYNlRah5nW+TfnslfR5ETeR77/EyyI=;
        b=G+fbZQl+z8NzfrxacDW77EfcYrgD0u20XzhM0/O6Y/v86rz3GGbp7FT6+Fn/xzdXK4
         tdd6Nm1y0qkC9hpj7b0ZFupsOd6ZcrhbEktk2VSjfhzHjzO4QqqWFW9Q6vGfDBayJaU9
         9jT5QkQWw/tJNTLIev3xKzQ1OnoEE/mqbdt0da3ZTN3esS5+UmWqf0DLMDyaeCoXET82
         /kX4cdKgnMX9xSQML3uhQT8zmAF0odutxY+hSUzmcSFGewQTPD5vGOk+x1TUfT96MyX0
         SgaYsuiGwl4wncT2tAU86h2y3UF6j7uJT415uzCkCyu7V3AsYpyCnTWdIcVvaiq8DmxF
         uS+w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703445; x=1695308245;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=rIPWd/mQM1gGtdYNlRah5nW+TfnslfR5ETeR77/EyyI=;
        b=laIy0j+NvfDFl479PoCpAW+zemgywnQkJRT92RAUOMrF/PbVE4lGIr1uM2SnkbeP1N
         ekRFYqm/EnJB55DgDW0cJVV7ejRWlqVGtNs7ndOUFhU9Jvorzrqfjz+STCIRWVPn2yko
         jeDXZZDoMNWUpeRxb8Q0JNlqF7WHQMu7Mor+42L88YVJkxaW1KjZL+dr8Tt9dPnkMHj4
         Ewwuo03cOmdVi0ayqqTcaT87B+o7VQCUgW6Jkq+aL0p0S4LyCSa8YuWuJuchGoRjAmNF
         hAuIgq7/F8WjyH6M8JbEXLRFNuKKrPzKuTcykx/PpNuji+dLTpDhtRSi9wdVC72eaWpc
         oDxw==
X-Gm-Message-State: AOJu0YxxVYpAKa+afXU8/Za8lHrhqFC+qoetVKsLnp4t1T1koh+uh/Oz
	186GY9H+Krj9LXRFsQlwDnaauT0a9bs=
X-Google-Smtp-Source: AGHT+IHZJLrYAX+ZwlZsM8IMNqzqVlG24nint87g5vBGG8RvnDK75EuJ6Iokrhga+g1C4PO9R/8oGA==
X-Received: by 2002:a2e:a1d0:0:b0:2bc:db5a:9546 with SMTP id c16-20020a2ea1d0000000b002bcdb5a9546mr4611238ljm.7.1694703445495;
        Thu, 14 Sep 2023 07:57:25 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 23/29] xen/asm-generic: introduce stub header domain.h
Date: Thu, 14 Sep 2023 17:56:44 +0300
Message-ID: <d6f4a476c21958894b658d31bae3c855f081e964.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/domain.h | 53 ++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)
 create mode 100644 xen/include/asm-generic/domain.h

diff --git a/xen/include/asm-generic/domain.h b/xen/include/asm-generic/domain.h
new file mode 100644
index 0000000000..b2d244d121
--- /dev/null
+++ b/xen/include/asm-generic/domain.h
@@ -0,0 +1,53 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_DOMAIN_H__
+#define __ASM_GENERIC_DOMAIN_H__
+
+#include <xen/xmalloc.h>
+#include <public/hvm/params.h>
+
+struct hvm_domain
+{
+    uint64_t              params[HVM_NR_PARAMS];
+};
+
+#define is_domain_direct_mapped(d) ((void)(d), 0)
+
+struct arch_vcpu_io {
+};
+
+struct arch_vcpu {
+};
+
+struct arch_domain {
+    struct hvm_domain hvm;
+};
+
+#include <xen/sched.h>
+
+static inline struct vcpu_guest_context *alloc_vcpu_guest_context(void)
+{
+    return xmalloc(struct vcpu_guest_context);
+}
+
+static inline void free_vcpu_guest_context(struct vcpu_guest_context *vgc)
+{
+    xfree(vgc);
+}
+
+struct guest_memory_policy {};
+static inline void update_guest_memory_policy(struct vcpu *v,
+                                              struct guest_memory_policy *gmp)
+{}
+
+static inline void arch_vcpu_block(struct vcpu *v) {}
+
+#endif /* __ASM_GENERIC_DOMAIN_H__ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: BSD
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:26:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:26:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602522.939202 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoEt-0003Qo-Gd; Thu, 14 Sep 2023 15:26:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602522.939202; Thu, 14 Sep 2023 15:26:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoEt-0003Qh-Dq; Thu, 14 Sep 2023 15:26:43 +0000
Received: by outflank-mailman (input) for mailman id 602522;
 Thu, 14 Sep 2023 15:26:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmW-0002W4-Mn
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:24 +0000
Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com
 [2a00:1450:4864:20::233])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 02aea674-530f-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:23 +0200 (CEST)
Received: by mail-lj1-x233.google.com with SMTP id
 38308e7fff4ca-2b95d5ee18dso17661681fa.1
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:23 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.21
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:21 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 02aea674-530f-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703442; x=1695308242; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=coEQMPTgAm6PCB5dv/pWiS4JQtiix5jmfz04ylJhE40=;
        b=U68eC7Sux8mDz6sKnDFTntRGIm6U9n9g+F87dvQnfSTL+Sp/u3UEhfFP1BNxKBfTDU
         iDstZKmlR+mdZQcwmJunQFwhc9HSkAuLvghZ4suhASIP+9ZbVmNo9W2wgp3MW5SbEe9a
         bZdaao7XPGU/1jCCAs4TcT/ACYYc238zvUx0dcErd93MAAHzvclg72yTEZrWQ0uReA3S
         7RdhioKloLraF2vHgfDuxW9V+uJlkdO+xwYOd1/Fu1m99+shq3j3jzJ+0tmU+MQq5Uki
         ZYcsG0xQjBgcd89+TepKx3UIf+T0tegRSiP5voi3XXi29GN9cXolXjFJGzIQnQK6QSuF
         vzmg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703442; x=1695308242;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=coEQMPTgAm6PCB5dv/pWiS4JQtiix5jmfz04ylJhE40=;
        b=uIB2GcTywX+FLkmV9RlaX09qibCMSp8CAqljmsAu8hRdv8nzrSVWVSk07qykThq212
         J68eHHpJC/5/tknziOg0XREDLwYWSQCAMkrTFnTaj743tpM5aJm3ejkVmMb3eUqYZLwJ
         AtVt5Dc2+xf6O8Pf1cfZZ3MbfWM3jYYS2OUBQTuvKaK7eAWzeCqJnr8iMfJVqR2vvI4y
         pS1/ptzOagK/YB41/7EbG6Pz/h6XiDTaGr0IARZXqm01/tDTsPw5z/9hHHiCMd3+KefK
         WLx/XlOp7Z66Axk/IOMN//RodrbuE2/cYqc/3mnPteeQ/363j3e170WK39prDNndpsbW
         9qew==
X-Gm-Message-State: AOJu0YzFzBMrn4JvWC72OsdiHwb4rgdGl/mwSopIBxqZROxzWvfJixFq
	mKf8C28Cstnw+7tSIQ5vg26BIsyknUk=
X-Google-Smtp-Source: AGHT+IFC2dIiXATfiVYVDyfYgZUhjeLJYrsUFTZdHSupAzDtjcwvdxW+cyBAPNTcBWlsyBGzGs+9IA==
X-Received: by 2002:a2e:9dc2:0:b0:2bf:ac97:df26 with SMTP id x2-20020a2e9dc2000000b002bfac97df26mr5007231ljj.25.1694703442287;
        Thu, 14 Sep 2023 07:57:22 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 19/29] xen/asm-generic: introduce stub header hardirq.h
Date: Thu, 14 Sep 2023 17:56:40 +0300
Message-ID: <cb76190d2b0b056c6733c1f5cfc941d0201f6490.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/hardirq.h | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)
 create mode 100644 xen/include/asm-generic/hardirq.h

diff --git a/xen/include/asm-generic/hardirq.h b/xen/include/asm-generic/hardirq.h
new file mode 100644
index 0000000000..b4b71a7315
--- /dev/null
+++ b/xen/include/asm-generic/hardirq.h
@@ -0,0 +1,27 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_HARDIRQ_H
+#define __ASM_GENERIC_HARDIRQ_H
+
+#include <xen/smp.h>
+
+typedef struct {
+        unsigned long __softirq_pending;
+        unsigned int __local_irq_count;
+} __cacheline_aligned irq_cpustat_t;
+
+#include <xen/irq_cpustat.h>    /* Standard mappings for irq_cpustat_t above */
+
+#define in_irq() (local_irq_count(smp_processor_id()) != 0)
+
+#define irq_enter()     (local_irq_count(smp_processor_id())++)
+#define irq_exit()      (local_irq_count(smp_processor_id())--)
+
+#endif /* __ASM_GENERIC_HARDIRQ_H */
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:28:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:28:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602538.939212 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoGL-0005HK-Q4; Thu, 14 Sep 2023 15:28:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602538.939212; Thu, 14 Sep 2023 15:28:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoGL-0005HD-NS; Thu, 14 Sep 2023 15:28:13 +0000
Received: by outflank-mailman (input) for mailman id 602538;
 Thu, 14 Sep 2023 15:28:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmf-0002W4-Om
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:33 +0000
Received: from mail-lj1-x22a.google.com (mail-lj1-x22a.google.com
 [2a00:1450:4864:20::22a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 086614ae-530f-11ee-8787-cb3800f73035;
 Thu, 14 Sep 2023 16:57:32 +0200 (CEST)
Received: by mail-lj1-x22a.google.com with SMTP id
 38308e7fff4ca-2b9c907bc68so17360401fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:32 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.31
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:31 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 086614ae-530f-11ee-8787-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703452; x=1695308252; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=5L30JDM9VKR3vohfWC6t+/aEUvp4uCHLEHY7aFFRjYQ=;
        b=j3kvlqarny28KCk7ru9bS3QPEeRCC1DUbUwx9E7xAqJHGbGqTK4Z4+3vtbn3p5dyxa
         imCgIJQg5pqyKxD111m/CXNqUNeE40qV31H5HXAOKW8z+UtoPkZtUB/iRG9hQTFv2W2g
         rFy//veHzA4xYDujyFispnWKc/mRnYPV5NWXLvLulyoylxTNoJV3vJLZM2iXX1LIrP+o
         Pq3iPR6UHYEEIUhpf1IGf2P4uSEiRS7Tc9+SoKD9rPXhK1f0i7DDhVOn/XAVHglomJWz
         XprMaSQSZwKw7UccyNnQKwmPDz3wuL4sIKAqhNgd9cNUhh9KDwFViBNkeCnU+BgEJM9K
         Pw4Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703452; x=1695308252;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=5L30JDM9VKR3vohfWC6t+/aEUvp4uCHLEHY7aFFRjYQ=;
        b=DVCgE+Qqu/OJhYRZypX2SPkSBJCcJVofAovfRArUVB6Eu8DWLKR9cLmMgnQhNAaYDA
         7TtkwpDDtDenZUTbw4dAIRG+9Sy8FbgkjGn3t0yx/DnOr/9A36tdJrlklbITCxZfLrAO
         UD+eEjTNqEkRIkvE1H5Llp/JsnkN98HvRich+fvmJ7lcP1HO4irjdfDTJW99hUiydqBO
         SCqXM7dzvgq+KZYntfGWKZINU+/lhugGh8dtQBucOZOxCuovLaGKTPMcgeERYBtfPrHA
         crD+JyEFG6r0/IONHluROgH1Lg9lvb4WSFkTPSGX+YorhmP8OekdmYWJrXkAfeVTzzc4
         BN5w==
X-Gm-Message-State: AOJu0YwFKDIfvWQdKf+Y9sz564ds+sEqFMu97EGgo7yi+Y5D9jBFjust
	PdWVgL+B+jOH2T72Kl2hGfke5k/sOIE=
X-Google-Smtp-Source: AGHT+IHF+uiXxX/1isf9yvbWKHkRbvy4tzJKtVv5EQCEfF/HahoPmmlK8cU/BL6kXEgFB3nUwCtIvA==
X-Received: by 2002:a2e:3613:0:b0:2bc:fd50:573a with SMTP id d19-20020a2e3613000000b002bcfd50573amr5094637lja.6.1694703451812;
        Thu, 14 Sep 2023 07:57:31 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 29/29] xen/asm-generic: introduce stub header softirq.h
Date: Thu, 14 Sep 2023 17:56:50 +0300
Message-ID: <1a957cbe1ed8954c6b83cfc97e376b65d03e12ee.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/softirq.h | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)
 create mode 100644 xen/include/asm-generic/softirq.h

diff --git a/xen/include/asm-generic/softirq.h b/xen/include/asm-generic/softirq.h
new file mode 100644
index 0000000000..83be855e50
--- /dev/null
+++ b/xen/include/asm-generic/softirq.h
@@ -0,0 +1,17 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GENERIC_SOFTIRQ_H__
+#define __ASM_GENERIC_SOFTIRQ_H__
+
+#define NR_ARCH_SOFTIRQS       0
+
+#define arch_skip_send_event_check(cpu) 0
+
+#endif /* __ASM_GENERIC_SOFTIRQ_H__ */
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:28:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:28:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602543.939221 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoGj-00061J-1G; Thu, 14 Sep 2023 15:28:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602543.939221; Thu, 14 Sep 2023 15:28:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoGi-00061C-V2; Thu, 14 Sep 2023 15:28:36 +0000
Received: by outflank-mailman (input) for mailman id 602543;
 Thu, 14 Sep 2023 15:28:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9rCx=E6=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qgnmg-0002WX-6e
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 14:57:34 +0000
Received: from mail-lj1-x230.google.com (mail-lj1-x230.google.com
 [2a00:1450:4864:20::230])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 076c65fe-530f-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 16:57:31 +0200 (CEST)
Received: by mail-lj1-x230.google.com with SMTP id
 38308e7fff4ca-2bcb50e194dso17177231fa.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 07:57:31 -0700 (PDT)
Received: from fedora.. ([94.75.70.14]) by smtp.gmail.com with ESMTPSA id
 a14-20020a2e860e000000b002b6ffa50896sm309828lji.128.2023.09.14.07.57.29
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 07:57:29 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 076c65fe-530f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694703450; x=1695308250; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=uS9dqGCpAOUnguzSJqX9s3B1Z/m07EXLgTDZdpLLavM=;
        b=kcygb0E5rrQV+k6okYFc80Wlj/DSvnITtwhArOfXYbNaczAZuFsdLD+/j+9czhB3rs
         GggP/IObhLE4sSs8ZCa+TFxG2xZaS6MNtgk6kNUfYgm/CvZSsB65HHHwRfl/8D2VZIh1
         B7oMLSWXzrLKwAQ8vczV0dGSddMFHAPFrXrVRhf+qtDfjFJzAROsb5q/vpifXFJ/GOYK
         AYZ6rLkmc4WefJGzDNnUHfFZxpXTYmIsgYPsEP4kaUO5xfPuuEHlGItMw8qjH2PG6lwz
         IeikPHsfy4PEHUkgUbKJQPJ2nqVaaOJAqTGGUq11q3oBy3U2pk7duL/pjBHkOZoOkcCg
         DFnQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694703450; x=1695308250;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=uS9dqGCpAOUnguzSJqX9s3B1Z/m07EXLgTDZdpLLavM=;
        b=GYmJ3lyIpbwELMFkBnMy9bjbfc7nhObTXyqauCUNy863n41CcuwNny3dleAxDfG5b9
         H+y5tqVpEIItUiyO52asu6ksgh770OIoKCMbQvQYHvEtTMRAXm5k0ibHjIRdbccsP+Cd
         ZtnOuZACdhctd8haBFjqnuhic5Iey1VYnK+hY59GH1VH66obtEi6y2NOmDP005JwgQ1r
         uD2ybSOCiTgNjbRkcTjZG/VLeuFwP/XujhaoP2TqQ/HwJ4cRQ/7LTc+mbmNxaMusnvAZ
         SOy1daViE/pNBGu0R9dSmmrAZL0tWG390ZS+3WgUFPJMWFA4oNQZcF6lJF12tlIo280V
         pQOg==
X-Gm-Message-State: AOJu0YxKNe/Zb7pE4R0h4Xdw2IJzlstJdOY8HalKO0bw4TUhna74VBrj
	MQ6ssW/5PAFHkSuTMZY0ERbUgMH3510=
X-Google-Smtp-Source: AGHT+IFFtE1e9BEGsKLK5Ds6M+bdJk/xzKD9OoQM4tv5YIdVTMrAE5TuJ2vKVadFF70V2n7rhOV09Q==
X-Received: by 2002:a2e:b04d:0:b0:2bc:c2cb:cd3f with SMTP id d13-20020a2eb04d000000b002bcc2cbcd3fmr5475467ljl.32.1694703450276;
        Thu, 14 Sep 2023 07:57:30 -0700 (PDT)
From: Oleksii Kurochko <oleksii.kurochko@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v1 27/29] xen/asm-generic: introduce stub header numa.h
Date: Thu, 14 Sep 2023 17:56:48 +0300
Message-ID: <102c2a155cc7b14f0a8ea8049672f1d5ecbcd0e5.1694702259.git.oleksii.kurochko@gmail.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1694702259.git.oleksii.kurochko@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The patch introduces header stub necessry for full Xen build.

Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
---
 xen/include/asm-generic/numa.h | 35 ++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)
 create mode 100644 xen/include/asm-generic/numa.h

diff --git a/xen/include/asm-generic/numa.h b/xen/include/asm-generic/numa.h
new file mode 100644
index 0000000000..028f7b3638
--- /dev/null
+++ b/xen/include/asm-generic/numa.h
@@ -0,0 +1,35 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ARCH_GENERIC_NUMA_H
+#define __ARCH_GENERIC_NUMA_H
+
+#include <xen/mm.h>
+
+typedef u8 nodeid_t;
+
+/* Fake one node for now. See also node_online_map. */
+#define cpu_to_node(cpu) 0
+#define node_to_cpumask(node)   (cpu_online_map)
+
+extern mfn_t first_valid_mfn;
+
+#define node_spanned_pages(nid) (max_page - mfn_x(first_valid_mfn))
+#define node_start_pfn(nid) (mfn_x(first_valid_mfn))
+#define __node_distance(a, b) (20)
+
+static inline unsigned int arch_get_dma_bitsize(void)
+{
+    return 32;
+}
+
+#define arch_want_default_dmazone() (false)
+
+#endif /* __ARCH_GENERIC_NUMA_H */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 15:35:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 15:35:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602578.939232 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoNW-0003fd-PT; Thu, 14 Sep 2023 15:35:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602578.939232; Thu, 14 Sep 2023 15:35:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgoNW-0003et-Ly; Thu, 14 Sep 2023 15:35:38 +0000
Received: by outflank-mailman (input) for mailman id 602578;
 Thu, 14 Sep 2023 15:35:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgoNU-0003eG-U8
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 15:35:37 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20608.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::608])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 58715c1f-5314-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 17:35:34 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7370.eurprd04.prod.outlook.com (2603:10a6:102:92::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Thu, 14 Sep
 2023 15:35:32 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 15:35:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 58715c1f-5314-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MCM1BMf55ToFI9fWvkSI6DyHaGY46v4Nr5RWZCXfqKlEGXIdBSOSOlcP+emq9oB8qSAJchRk2ML5Z+6vSxfRQteLKC6D2utIDWkydGVKIqfNXFzp7qLuT35dVCgrG8fZ3X4uiDRenQjQ8ap7AZ97N8+/IEPVMVH4qw4vUkkN3OsY6A1AXzaT3wV1UhsYAhNsN0xMP1y58LV4jAOuluE3/L6YuOVwK8ASHHrrVtWdxHpX40paU9RoJKyPwLTcjezm0ScpAorHy5vjxid+ONNfUwWuNP7hjd/Gc6ZiuNmL98g0yXDWmkqHDY2ue9A0mlCOdKRycGyyKdWBW8WEQxAAtw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ngWffglW8oAO1benmUgzFd5MqLRVCH4wCdIhgxMQ79w=;
 b=j+mxnx/b0F+fx9h1DwzVeN1S+qnh5tg/mbV0uofyKdatXGze2CiaD7PeNbcSKfg6TmJJAi1t+vWTij6SkshlnxFlzboilEDy64dBi2FOVf57L+9xgDS6OkC1L9v+o2Rmk5Kte5F7D5VS+4LlSlFXtmPjWPjRr13sh2Aj0jF3x2y4SYk754DNswL7GvH/dY/TBTix7WdABkfaGlISFHtdgIOBeEh0D+z5R6fN06YtJj/mRVn79IKn9tZ1sINvcdm0vUChnKdsTSC4Uj5HrPUG8lZjOOlJTeGxmjhnK3LdmYdHDIFraizAxdIe/GeI8MXnystGaTPsGSL7HsO/zTBrDQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ngWffglW8oAO1benmUgzFd5MqLRVCH4wCdIhgxMQ79w=;
 b=ncDcy/56HhZo7IYxFwPqRnu3n97cl5sAFbYHFPwlDkEFczHYsdpN5Np5s3/G9txWgiG9yeacs8YAnvURB93DH4aeAb7WTPiiGx7uC74K6DJlSrx2kXdZNkLTdFkaUaPZZIuN4OyEOQte1D4h8fL4a5B0N4PbgjdDuCE3cmdEuHPvxOd1PkZK56b5h7lsVcmeG6NjS7v9Ud6kEKpe47gTC7AaQV54g+PBeaJudo2H/r0nj2Rc7cDvQEJ+iitwvUxntx0drLLodT0XLpqdyQHuFyYpfIxuOTqNNN0qt8cNLUU/lCKIxht3/ZlM+zyRd2G6MOOv53WVqjmqfSMZm2Rh0A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <bffaf38c-551d-b9f4-5060-3803e73bee70@suse.com>
Date: Thu, 14 Sep 2023 17:35:29 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v1 01/29] xen/asm-generic: introduce stub header
 spinlock.h
Content-Language: en-US
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <30743e7391ad474724258441b7ec83affcf6b230.1694702259.git.oleksii.kurochko@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <30743e7391ad474724258441b7ec83affcf6b230.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0200.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ad::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PR3PR04MB7370:EE_
X-MS-Office365-Filtering-Correlation-Id: 4df006c6-2d00-4009-e966-08dbb5383b5e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VK5VYUqFl2bjvAzyCGZE5BDWG7R8zNZN3pFF3IM0UFHW8F0N5SipezcndQs7WgzHkbQLjZDsJWuu8a7Hi7xdCUmJt66mqPtHnf6vdtKTMYtlxQN66I4BL0xVvOblMkYSFwCuqHMw2qCr+MZpiIr5FKsl/kl5fXhj9fQU3mnxnXi6AiQnQxVBkRF43MczPDk06XDWp6JZQsqyU5wcLJ1HQJNJKEBMRlOSRWTmNqWI9PPMwZLeAztiOj1FHJKYj7RG1E0InVgHpnVnNZcmPN107LtFYzOa3eztTrDXdPzW6OeSqdf1uUWTwXTMUju+1KUqCPwO58dz1fpK3BO2tEmQv/V24V+0x7uPj216suCEvgUVKItzKOrtXPHgZnr+QlV1fNmC0hTRuf0bSjyDhvtyQF8aIUdn3xWNyC8ebLyHP8ItxBxDUtAwMhCyt2pvcF3rRT4/EjnWZWAlhoXjyGHCJXT/6XmLXEWk7tFYUGn8TLk4DfNBVdH5Te8WLiDXze9nlMoRrvbJA9nCEJzRUmQLfoBOpONFcnKXufGi8m1ZkKSqL7tD7gTrYGhW9kafQxUEpbrhY74N0SPVgjWk1qHModrAtQWkzA6C51sEhBwnQxjDt/5eRGnxHPY+qNtwMR7j5YXSKj7WfR8ocH1YniyfQEb1UyVGdY2ovmhdxZYzO18=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(396003)(346002)(136003)(366004)(451199024)(1800799009)(186009)(31696002)(54906003)(6916009)(66476007)(316002)(66556008)(478600001)(66946007)(2906002)(38100700002)(4744005)(41300700001)(86362001)(4326008)(8936002)(8676002)(5660300002)(6506007)(26005)(83380400001)(6486002)(6512007)(6666004)(2616005)(53546011)(36756003)(31686004)(41533002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Q1VsWVc5UUIrTEJod0ZsMjNyZ3FBUjIzR1Bla3NPQzVVQnJ5VXdzL1ZrMkYr?=
 =?utf-8?B?U25WUGdnSG9aMDBOUGFSN1Bjb2tlSWtsaHUzUVM4Umw5SHFMcWFab0s1NjhR?=
 =?utf-8?B?NDM1NFN5WFdlUUY2Zi90QU9idWRFOTZZTi9sYU1YVTZxREU2NUhURytLVGEv?=
 =?utf-8?B?bkhUVVBCVzJSakVQOG14ZkxwdXBVQ3BoMFVyVGVsU3d6ajRlWmN5dEJDUWM5?=
 =?utf-8?B?dkh5bVROTStVamVncVNnMHZ3bW1FQXZrbjdLSzljZG1VQTlXTWVrVE9aT3p3?=
 =?utf-8?B?U2Y1VVpVc0UzbDlueVBKd25TLzlNTUhLQzRWMk5RenQ4eGFqZGhPUlAvc2VW?=
 =?utf-8?B?ZGpOM3hMM2krRVRiT242SG1uT3JxZGpvdTBzYU1mYlJGV0xlWlVXMjh6dmVy?=
 =?utf-8?B?RHpoUEJEY2svTXFBTDV0R05La2luUTBFMDg5MkJGemxjckM2OTNOQ0cxQlZU?=
 =?utf-8?B?WkxtSVFLUXc3NGhPdVdDQkVmTzlScW82SWQvV0toRXVCM1htS00wQWRkbkdo?=
 =?utf-8?B?bG9uSC9uMHBBSXZ0ZHlzbitoQ1l1QXY2VmVvWkNFUS9kVEpCMHNocnlIM0lP?=
 =?utf-8?B?elFyajJQdEhybHU5VG0yL251Vm0wcG1BUndNUlRDd2hqZDh5VVRET1pxU251?=
 =?utf-8?B?c1h3VmlGanNLSndZSk9oaG5UeHlLWU10S093S2ZHQWVDTFJROHoxQ1BxejNI?=
 =?utf-8?B?ZUt4cHBTOElWZUUvamt5K1FTQjEzeG1HYnJNUEFZT1hraGtHV3ZmWkpkSzlP?=
 =?utf-8?B?RkFUZTR0dXVSSDFGWTRnUURxRXduTWUzbTFuRjVVRHdzV2tEZnpVWXpDL0pH?=
 =?utf-8?B?RkFoai96WkZnTkNpbDdxcDNvTVVKdnRkcmVqSEJpS1hIV053WTdvcmtZcjNI?=
 =?utf-8?B?Y0JvSVBSRXRGWEtnTlF2TFN0QmhMQU9DaDV5aDhQZGNQSHljZDhNMVNYUTVk?=
 =?utf-8?B?S2JLUUlIbnB6RUJybEcrWVNaeUhranJLTERpYzZyVkY2NkRjT3FuSElObU5n?=
 =?utf-8?B?ODdaakZBakdrT3pCVFJBSkZ5cHcyT3hiQ0tueVFjak9DcDc1eis4Z08zelQ3?=
 =?utf-8?B?dUR0NDE5TVdlSWNnZmdTZ2NFWnhjd01oN3hXNEtsM1NKYkcwQWVCSWQ0WUV1?=
 =?utf-8?B?SzQvYVg1czAwN2pHeUtrekRkRWlTOGh1bEtRdEQ0MUJIMVhIenNpcDBvcHBh?=
 =?utf-8?B?cnVHcXA1UXpzVU0wTkxIcXBrWkZ2RjI0RGx5QU1aTFNnSGQ2YlZYZ0NQamla?=
 =?utf-8?B?dFp4eXJ0QUttaUZGWVNVNVg3OW1VUURnTkRIdDkwcHVsTkEwVVFseno0QVhy?=
 =?utf-8?B?NW9FZ3hkU2JQM2VabVhYaWduK3ZtMlJoaUo3djJpaFRIZit1NkFOdUZCQnVN?=
 =?utf-8?B?TmVQUFFhMUY3ZlVWQXRaZ2R4YlBvQ2VpNDJ3bW9oUmlVc3B0WDF2andxbW4r?=
 =?utf-8?B?SmZvRHJOcVRWTy9FbTNncGFOdFQzT3VIeFAvRHRPYTJKb1VjMWtHRGc2RTRn?=
 =?utf-8?B?RXlkbWFwTFJIY2FhZDdSMkY0cE1tZnVSOVQwLzFHaWc3NFJMdmdKazMxQ2du?=
 =?utf-8?B?SkpwdjVHK0lLeFlUUlNPdmR2c05TSjF1WW51QzN3NnVHVmo2UjdvZDlQTzdS?=
 =?utf-8?B?QXJBak9yaHZ2bTRQTnZmelZ2M2ttMlk4amJQb3F4ZkJXVWFzSVJ6L1E4SCtn?=
 =?utf-8?B?alBKQTR3djJsVWt6SGtMeEpyQzhablRidjhrK0FpZ1BNMEYxa2U4cmNhZHNY?=
 =?utf-8?B?MWpJSFpzTEtxK3FVbk5LTmwwUFpiQzg4TUxlcitvQmF3bEx6U2ZheW5XeGFa?=
 =?utf-8?B?a0RMeHU4Vy9LcjhHUXBBdUttblZGZ0VDVWtNeVd5TEJIbURpM3lMUkpJeFdW?=
 =?utf-8?B?cjFML1NvWGR5ZERkZWFadXYvRHpJNm9MZk1UYURRWEY5SEFIM3BwNzlMb3FM?=
 =?utf-8?B?NFlMRjhCNDBzM0F3U1RpdjllQ1NJMG4zc2NQOS8rZ2xQZ1dyR2ExMW96dkNk?=
 =?utf-8?B?TU9YdW5SMDVPR3l2Rm9UU2J4NDlSU1hnVEpvQkErem5HT0VaZEd5eFBPM0Ro?=
 =?utf-8?B?ZEFQakpDTXp2VnpSNXB2UDByRElwcmpxRGdSTUZrdTl6VDMxYndEVDJLNWNx?=
 =?utf-8?Q?+F9nbX6sJm5JR0BnCjx9KA9Kh?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4df006c6-2d00-4009-e966-08dbb5383b5e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 15:35:32.2939
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: nOriaeusAv66enpEXHLYhADmxYAGJMc0/tU7fEFtmpm0DO81H2KHmrvL0MPRq4Zyfp174m73Itry6dCpjI2Ijw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7370

On 14.09.2023 16:56, Oleksii Kurochko wrote:
> The patch introduces stub header needed for full Xen build.
> 
> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>

Hmm, looking here I think I need to take back what I said in reply
to the cover letter, taking this as an example.

> --- /dev/null
> +++ b/xen/include/asm-generic/spinlock.h
> @@ -0,0 +1,23 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
> +#ifndef __ASM_GENERIC_SPINLOCK_H__
> +#define __ASM_GENERIC_SPINLOCK_H__
> +
> +#define arch_lock_acquire_barrier() smp_mb()
> +#define arch_lock_release_barrier() smp_mb()
> +
> +#define arch_lock_relax() cpu_relax()
> +#define arch_lock_signal() do { \
> +} while(0)

Slightly easier (and without style violation) as ((void)0)?

> +#define arch_lock_signal_wmb() arch_lock_signal()

How's the WMB aspect represented in here? I think you need the x86
variant as the generic fallback.



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 16:06:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 16:06:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602591.939244 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgorW-00043A-8q; Thu, 14 Sep 2023 16:06:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602591.939244; Thu, 14 Sep 2023 16:06:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgorW-000433-6H; Thu, 14 Sep 2023 16:06:38 +0000
Received: by outflank-mailman (input) for mailman id 602591;
 Thu, 14 Sep 2023 16:06:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=nkWz=E6=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qgorV-00041l-0H
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 16:06:37 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20611.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::611])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ad2b55fb-5318-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 18:06:34 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB7523.eurprd04.prod.outlook.com (2603:10a6:20b:2d6::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Thu, 14 Sep
 2023 16:06:31 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Thu, 14 Sep 2023
 16:06:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ad2b55fb-5318-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UV+Dn7aPOsYw3JiG4UELdseazJMqUxquPAnbCLu2CvlkqFGNUQGNRQ3E5LMiLxr7k93SoBs6kaUsx4cQOLBWj31Att3FuYM3FC7g+REn2dqXKYE+SEuWB95w13rO0T0HeS9v3PW3q+hru71S0QXcIbEBnZW8E4jIXr3AdQu+voNGWdc3tfVvBjgjgPIupF4XwynK9grUK781WUDLxhWdgkyBOVRf/xBaztHT41IqiJoPJE7cioDZQGEd1KZJdgsnPftchGR/A3L4jKov0n6FSaF4+NpJgg8dHmodDxN2gc/jWtWZ7rKJP653KoM5yCI+rKC0q0HxfpaghnsXLJwLUQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gA23pgaGUlyKDF6n68ya50akqejBJWakQw3dXMFGjXc=;
 b=HgZ0kx0KyMY/jvi/jr5kYlQJtEGLE0b8Jbvn0CQ3+56mjZsltIwraBIE8OrKscgOLuWtl4THRVSWGIu/QZLBtuAYrX/CKscDDlzeDOVBhmoUlE92p3r36LaeFzQNwuVEqP8ybFnoL2SkRvOqPTDj8VcRDH2Z2ZYVuggf4f1oUXgT7Cuxl40VE23uZC1B46SuQW4J08SNOAjPakHTB+2csnLsxuI6F0XZ/AafJhCnojLMd1pWeYy+izS2PMKiA4QzkHngv5mSehgtHYCZzrRC7FQwH4LJ6EO6w9QY4IfxcFD1vj53ah+v2IFiVeS1TlOAZ8gmjJRX4hl+d9LlW9gNfg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gA23pgaGUlyKDF6n68ya50akqejBJWakQw3dXMFGjXc=;
 b=Nt7tgkx/XphaDvYIYBWcFOlo+truuVtjDtABZv6bKpfkzaNTlJnHLIGwKOD0K5Mu12kOazYgjQGB6HXZMBpXdBMR6zu98jIWntY0+Litv2xSG72DwjPQH5Jd3OoGv+J8nW+io8v3ZuemLdSCEWzjAEvn6DLnc+PJpZd5ZkRZ2qGqbyQD6/TcMr+2YJ3k1BUI/hhAdEqdyWQdKKnYqxGG07uoUpj5I2NF5OoBF84BbEuF4Y4HI2+G9ZlMwrZIdSD/NQgDtQMzOFEQZO12x1O9JNNviNb7NwRDNnIENb8vh7NKuTFYg3mI6AxYUrmbN0+0jliLqpW91o1J9Z9xSLQfyA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7c847e46-6890-5511-dda9-b16e8b0ac7ab@suse.com>
Date: Thu, 14 Sep 2023 18:06:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 5/5] x86/pv: Rewrite %dr6 handling
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-6-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230912232113.402347-6-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0092.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cb::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB7523:EE_
X-MS-Office365-Filtering-Correlation-Id: e1cb055e-a0bd-44d0-1b74-08dbb53c8f87
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3Qd9XroiHihIowIwLAJibuPBG8BnXn7qlJ8Dcr/2/1xZ9pNDWbByhKxPWHtGpQUL+B8t+MNQ9KuGJv6b/MMJLv2NlIXMbdrJN4EZLOalsTGSAe64jMcWoZHNEuerYSPZg7RW7A7Aktge/VcecXczHQ/FzaKQg+WRog/BpGbhaKCFaxXII0n5X6bvAHcYsO8yQ3OS/1vg+9qywWK6MTCYiXW7cNumkqAMxPphsyqKbnuLik6/EGeuOTmu7I3qngk2XuUT/pqN3AUFrwYSTPE+ZGkfhq2bsTNEZJi8YvHATuHV+V8hraMUEQHPuQ0Z58Y3s22w9Cb02IA8qdjTrXYzIUFySnoY45QYBTZAGmswY0i+Xctq331UJimCNjlNLoIIPyeq3i5lHTPpVsEeNce0Sjdnz1bCKufu9k3DNUpvX47LiCYZuxhdfYHwj2yLK7LqMsri2w+FCbmcSPziG6HP3AnAQYYTfSmLwjIgqWLwZMaLBTXANemWUGDp2o0D4E7XTnbehQRXDuEd6BbHiGAgJ5QS3lxuEKY8Xxz7N1Vze1Jobvb+W4tIUh6Y7q9d13tAsXp+ghoX8cOTacT5/Jh0x1sNHRrnMpB5IIt69RT6m+bBc6T9pZFbAWhf8b4smaYE2xIQj/D0+/FA1dlLT7BpaQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(39860400002)(136003)(376002)(346002)(451199024)(1800799009)(186009)(2906002)(26005)(66476007)(66946007)(6916009)(316002)(41300700001)(66556008)(54906003)(478600001)(5660300002)(4326008)(8676002)(31686004)(8936002)(6666004)(6512007)(6486002)(6506007)(53546011)(36756003)(2616005)(86362001)(83380400001)(38100700002)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bWozbTZMOVJXbnlwcThESHdxQk1aVVZIaXdCR2kyUGVxNkpVM1BLYXZETEZR?=
 =?utf-8?B?RWVyU0I1NkY3ellwejBTRGFnV3J5MkFlZFVueEdOcEdvam5kcFZWcW9qTGRN?=
 =?utf-8?B?djZFZFdwTTFDV3ZicEtLUlRXN2lYZkZ2QnpEdlUwNHAyMUdSazdURW16NTBJ?=
 =?utf-8?B?N2o4VTBKSVVHd0RNK2xZTFlteE8yYmkzTUxpZ1QyMk1ZYkVlaXcvYUtNTVQy?=
 =?utf-8?B?cHJnZGNYVTYrR2dvQ3VkWGgyZWZoSGJXcjFqQmtTS3ZnQlFWdURiMXZQalkw?=
 =?utf-8?B?Rkw5Q2hkR3I4eElzREh0cGtBVk5LRVVwZG9qV1NFRk9wanRXQm8xajUzOE1i?=
 =?utf-8?B?U3Q5OXdMUFpEYmlxS2FtNGlQUHhkZjM5RUNvUkxGZVVwVXBkSzgvZjB4dkFs?=
 =?utf-8?B?alFVMGdsMTJNeDZkWXVRYnVobUNqUmNTamNvZ0Y4N0hUOUdYZkRrNTlYV1BX?=
 =?utf-8?B?Mi9tRG4wSjVjUFdWMGkrRDYyLytKd1NicmNoWjk4K1R6emVVMWtqUGhNOTBo?=
 =?utf-8?B?dERBV2R5SnFmakk3N1BjQnZGTG56MkRsRFhKMHdGRnFOdWIzdm5YSTRZSWtM?=
 =?utf-8?B?NmYvRkRzTVA0L0RzV1hQL01hTWs3MFB3YjliRG0yWWw0M0swWEk2K1pzSWpS?=
 =?utf-8?B?QnpsVjdDekE1dnAxanNmZk43WFZiVTZCUGo2dmRncUt5RU9NQSszV1l0RjYx?=
 =?utf-8?B?SGZIMWxqSU43ZVRxNGNFTUhJOUY1WTZsMnlUUjlaeDJneTIrM1gvbm9ZNjc1?=
 =?utf-8?B?S0pNR1A3VEVNdEhod3Uwd2hpZjN0NldIa05JRFI3MVZJbWYyNzYya3BaNll6?=
 =?utf-8?B?eFJVVHEzUmZOYkVRUzdSZVB3Z3dkZDgyaXhUT2xzTVJGNmRpMVdsUWpGYVAw?=
 =?utf-8?B?Rm1oOHIvcE1ieG5xczBVT2dkTURiY0NuM3k5U1g1TTYwMG8vaFhXTGZZcWZC?=
 =?utf-8?B?QzF3TnBiUk1NNXB5OEVJVnpqSno5cHpQVnVhUWhGTDdBcnoyQ2F3Wm91WkZi?=
 =?utf-8?B?UmcxRWVHWTJuK1dSR0pXSVpxNGFFeDVlQzFXc2dJcUxRdktueVhGQVFQN1FG?=
 =?utf-8?B?Y0VOKzhvZGkrbmtYQW1Ta29XVExVVmppaFRYdEtMSGhlcUpONDlsWFFJVlpS?=
 =?utf-8?B?NTRiWWVxKytJK3ZaVmp5MnpKeXB0S0dwMFRRMFRSOE5HUE1EVG5yVzBGRzY1?=
 =?utf-8?B?MXpoYk90NnBiTkZVcXc2QXZsRnBwTkpHZjgvL1Q3bHF4dk5sVzJ6MFNlTW1W?=
 =?utf-8?B?SjJIWEExa2owc3RmWWRRR3pNRTRSTytRcXRtWlBNeHhqUEljMjFzUkVaK2Jy?=
 =?utf-8?B?d2Y4aVkya21ENVQrZUNPaUdRZEM1Z25PZjdoR2hxZWhlS2grckwzQ1pPYkdn?=
 =?utf-8?B?WU9ybXZXUStSVHg2QWtuUjRvTHI0WkVKczcvWHJBUTBMU1hDNWdKSitsSUVl?=
 =?utf-8?B?WFgrK2dwWFJCbk9BaS9IeC9PaVA2UW81amFEYTdUczZXQmRUbmJrQ3ZKazZT?=
 =?utf-8?B?SUVIWnhpUGE5QUs3NHpBY1VTZ3JEdkx5SEtYajIyL0drbHpZbWVBTWsrQXVl?=
 =?utf-8?B?VDJZV0FSSFgyMk5mYnZPRU54MzZtVFZjYXAzeVdVNUJDaFZqVlduMzVNQTNN?=
 =?utf-8?B?YytoN09kSVZkVngybWNXR2t3ZWpLTzVuYjllZzRoeklvV2EwNXVLZDdhMXdH?=
 =?utf-8?B?ZHRvLzBEUU1YcUlmMTRDQ015dE9HZ1ZPUkEzb1dVWlBMVm5wd1pmQ0ZRcUNW?=
 =?utf-8?B?TVZkTktiYTROek52QTNIQWJaUnE0aTMycVVKTUVyNHVsbXNZaUxGMFBpSUlF?=
 =?utf-8?B?S2FjSmJhYjBxcmQrc2Rha2YwMTk2N2l2R0NqTDJwZWZ1TUx1b0gwUDlvTElM?=
 =?utf-8?B?aWcvM3ZNRFArNHc4aHlkd2syQW1ENUxSOXN2NmRuWGcxRWVvTDdtYU9XY0hS?=
 =?utf-8?B?NmEyZWg1eTlWSUttWDNWdURDdUtGWVEzR2M0VENZQ1JsNGFObStNWFJiOVQx?=
 =?utf-8?B?V05RbndHMWpzYVk2ZVdOU3MvR1ptMGpHdElCbnUxTVRWdGp1enFRVDRweFpC?=
 =?utf-8?B?UGxzazBQbXJ2NTRpdkVjNHRlT3JYbk8zb3RqRGFkMjVuWTVCdWVuNEFIMEdq?=
 =?utf-8?Q?osB8u9vVa84Ek6I3ZEr+HiDcI?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e1cb055e-a0bd-44d0-1b74-08dbb53c8f87
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Sep 2023 16:06:31.4891
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: kb3RGzw0h9sBqBHNH4qhVTtE+LQw/z1ZGds1QsjwyEgNKYeuRBn/m/HAMyynt4kvR+X2qrhbJ25+/UGzuiBnOg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB7523

On 13.09.2023 01:21, Andrew Cooper wrote:
> --- a/xen/arch/x86/include/asm/domain.h
> +++ b/xen/arch/x86/include/asm/domain.h
> @@ -729,6 +729,18 @@ static inline void pv_inject_hw_exception(unsigned int vector, int errcode)
>      pv_inject_event(&event);
>  }
>  
> +static inline void pv_inject_DB(unsigned long pending_dbg)
> +{
> +    struct x86_event event = {
> +        .vector      = X86_EXC_DB,
> +        .type        = X86_EVENTTYPE_HW_EXCEPTION,
> +        .error_code  = X86_EVENT_NO_EC,
> +        .pending_dbg = pending_dbg,

This being a sub-field of an unnamed union, the build will break (also
in pv_inject_page_fault() then, for cr2 being switched at the same time)
once again for old enough gcc.

> --- a/xen/arch/x86/pv/emulate.c
> +++ b/xen/arch/x86/pv/emulate.c
> @@ -71,11 +71,9 @@ void pv_emul_instruction_done(struct cpu_user_regs *regs, unsigned long rip)
>  {
>      regs->rip = rip;
>      regs->eflags &= ~X86_EFLAGS_RF;
> +
>      if ( regs->eflags & X86_EFLAGS_TF )
> -    {
> -        current->arch.dr6 |= DR_STEP | DR_STATUS_RESERVED_ONE;
> -        pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
> -    }
> +        pv_inject_DB(X86_DR6_BS);
>  }

This (not your change, the construct) looks bogus at the first and second
glance, because of looking at EFLAGS.TF after emulation, when the initial
state of TF matters. It is only correct (at the third, closer look) because
the function presently is used only from paths not altering the guest's
EFLAGS. Do you think it would make sense to add a comment at this occasion?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 16:56:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 16:56:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602598.939255 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgpdK-0002IV-UW; Thu, 14 Sep 2023 16:56:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602598.939255; Thu, 14 Sep 2023 16:56:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgpdK-0002IO-RH; Thu, 14 Sep 2023 16:56:02 +0000
Received: by outflank-mailman (input) for mailman id 602598;
 Thu, 14 Sep 2023 16:56:01 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=19c3=E6=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qgpdJ-0002Gv-8Z
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 16:56:01 +0000
Received: from mail-pg1-x52c.google.com (mail-pg1-x52c.google.com
 [2607:f8b0:4864:20::52c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9217ee60-531f-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 18:55:58 +0200 (CEST)
Received: by mail-pg1-x52c.google.com with SMTP id
 41be03b00d2f7-577fb90bb76so524068a12.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 09:55:56 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 ie18-20020a17090b401200b0026971450601sm1589586pjb.7.2023.09.14.09.55.49
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 09:55:54 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9217ee60-531f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694710555; x=1695315355; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=OrtqeKPEOOIINFRPKzqcHJS5KfxI2xTmwWo1vlg8v1c=;
        b=i5nvDajtX2/6Cv5naR+jsijkeWfJOElJFMSDn6nehhcm/3bPtqurhAMNnrenrLqoKE
         j7sTtbdj6yiJbI1Mj4qPNOUl6N3bX1oAO/xxOBP3m07XZK+fnfnORbnzNrYi4qkngaxe
         oj/b+JCqEd4jfb13n2htww3D5Z1RQuicJZFVHtTur75fCeRPXf59NXQF5ULI2t6kBV3/
         szzMa8SY5Cim0DY8hoEnIsJvyI87D4g6bOMqlVzJNoT20+bE0lQrRAxeXUfIYIPbSzKP
         BQ9N94YAoyqC1v18JtoIsLVsq7ptI644+9e1qYcTuzhG5W9Qr/5EUTVzFLrV2L6pHE/c
         ZAuQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694710555; x=1695315355;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=OrtqeKPEOOIINFRPKzqcHJS5KfxI2xTmwWo1vlg8v1c=;
        b=QTyKaS1Mx7urGorP02I4+G+oNN4SyS+24Wy2e2i/+OP9SFVAO192JvK/mE/XKIYqjo
         /JZCM9PmxLy3ENzgWWdTfyd10mo3sVGgSd8eOuz6ybw+RK7RpRuxhcYw5t8Dzw4CzSJA
         VB/Arw3nvm0vLNDawSzQriAEACG3k0glMvNgGcTSsvOzCW1WZaHltyjaQYlPn315Jkst
         +GxtX/ktvcQ/oWAkbOng2eNOcRU6KCoB+RyyS63wDuQyTZBpkYKx7yAPRnme736kJlIE
         Ajy3UhXxzELwv430telzoWTNxPcqe92xB8rU6GAHOlrDsrj3GFA3Rp8bMgVDbdT/aW/V
         RLog==
X-Gm-Message-State: AOJu0YztcDhxMO6MSQWFrW7PSJXU0EzgiUDLsjFBnVx1wV3js9Y+QoP8
	XN/GmACfpQDeZBfqpGM5Yh2fmw==
X-Google-Smtp-Source: AGHT+IFH+aMJ9MxqVh7hQkBwUE8p1M4OsCi6Yoo2pLbXlxxU5AWS+iFf9SUPNMuXAmVTCmy9BtEkkw==
X-Received: by 2002:a17:90a:ba8b:b0:26b:5ba4:4948 with SMTP id t11-20020a17090aba8b00b0026b5ba44948mr5760315pjr.12.1694710554786;
        Thu, 14 Sep 2023 09:55:54 -0700 (PDT)
Message-ID: <391f745f-d00f-4289-be68-7590bceb902d@daynix.com>
Date: Fri, 15 Sep 2023 01:55:47 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
To: Albert Esteve <aesteve@redhat.com>
Cc: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 "ernunes@redhat.com" <ernunes@redhat.com>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>
References: <20230831093252.2461282-1-ray.huang@amd.com>
 <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com>
 <11c227e8-a464-41ce-a435-82c570746388@daynix.com>
 <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
 <cf99ac00-6f48-4778-b319-6079a931ba5d@daynix.com>
 <CADSE00+6zcT7iKR0JW1Bk8es6HtBpzAKa9JW6u5yyjDoLPw2KQ@mail.gmail.com>
 <5e88f5d5-5aa2-4052-b250-69c2a443344f@daynix.com>
 <CADSE00+BUq-6jKH3v2PYNThn+9Z4UCFcr3Cv9Z48eUX0b=6ymA@mail.gmail.com>
 <3918c96c-f106-494d-8e97-6d86cef8df27@daynix.com>
 <CADSE00LNYm+vKaYwnTAdECGUXPCfiJ7aLqszDuqSzCLLhVOHhQ@mail.gmail.com>
 <0adaf816-e050-43c3-8284-fc41627543ef@daynix.com>
 <CADSE00Kyid+=FkkopSGDAyeJ_MY2exDdxoPf18pzthKy70kkKg@mail.gmail.com>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <CADSE00Kyid+=FkkopSGDAyeJ_MY2exDdxoPf18pzthKy70kkKg@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 2023/09/14 17:29, Albert Esteve wrote:
> 
> 
> On Thu, Sep 14, 2023 at 9:17 AM Akihiko Odaki <akihiko.odaki@daynix.com 
> <mailto:akihiko.odaki@daynix.com>> wrote:
> 
>     On 2023/09/13 23:18, Albert Esteve wrote:
>      >
>      >
>      > On Wed, Sep 13, 2023 at 3:43 PM Akihiko Odaki
>     <akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>
>      > <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>>> wrote:
>      >
>      >     On 2023/09/13 21:58, Albert Esteve wrote:
>      >      >
>      >      >
>      >      > On Wed, Sep 13, 2023 at 2:22 PM Akihiko Odaki
>      >     <akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>
>     <mailto:akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>>
>      >      > <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>
>      >     <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>>>> wrote:
>      >      >
>      >      >     On 2023/09/13 20:34, Albert Esteve wrote:
>      >      >      >
>      >      >      >
>      >      >      > On Wed, Sep 13, 2023 at 12:34 PM Akihiko Odaki
>      >      >     <akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com> <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>>
>      >     <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com> <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>>>
>      >      >      > <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>
>      >     <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>>
>      >      >     <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>
>      >     <mailto:akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>>>>> wrote:
>      >      >      >
>      >      >      >     On 2023/09/13 16:55, Albert Esteve wrote:
>      >      >      >      > Hi Antonio,
>      >      >      >      >
>      >      >      >      > If I'm not mistaken, this patch is related with:
>      >      >      >      >
>      >      >      >
>      >      >
>      >
>     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html
>     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>
>      >   
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>
>      >      >
>      >     
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>
>      >      >      >
>      >      >
>      >     
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>>
>      >      >      >      >
>      >      >      >
>      >      >
>      >     
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>
>      >      >      >
>      >      >
>      >     
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>>>
>      >      >      >      > IMHO, ideally, virtio-gpu and vhost-user-gpu
>     both,
>      >     would
>      >      >     use the
>      >      >      >      > infrastructure from the patch I linked to
>     store the
>      >      >      >      > virtio objects, so that they can be later
>     shared with
>      >      >     other devices.
>      >      >      >
>      >      >      >     I don't think such sharing is possible because the
>      >     resources are
>      >      >      >     identified by IDs that are local to the device.
>     That also
>      >      >     complicates
>      >      >      >     migration.
>      >      >      >
>      >      >      >     Regards,
>      >      >      >     Akihiko Odaki
>      >      >      >
>      >      >      > Hi Akihiko,
>      >      >      >
>      >      >      > As far as I understand, the feature to export
>      >     dma-bufs from the
>      >      >      > virtgpu was introduced as part of the virtio
>     cross-device
>      >     sharing
>      >      >      > proposal [1]. Thus, it shall be posible. When
>      >     virtgpu ASSING_UUID,
>      >      >      > it exports and identifies the dmabuf resource, so that
>      >     when the
>      >      >     dmabuf gets
>      >      >      > shared inside the guest (e.g., with virtio-video),
>     we can
>      >     use the
>      >      >     assigned
>      >      >      > UUID to find the dmabuf in the host (using the
>     patch that I
>      >      >     linked above),
>      >      >      > and import it.
>      >      >      >
>      >      >      > [1] - https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/>
>      >     <https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/>>
>      >      >     <https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/>
>      >     <https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/>>>
>      >     <https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/> <https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/>>
>      >      >     <https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/>
>      >     <https://lwn.net/Articles/828988/
>     <https://lwn.net/Articles/828988/>>>>
>      >      >
>      >      >     The problem is that virtio-gpu can have other kind of
>      >     resources like
>      >      >     pixman and OpenGL textures and manage them and
>     DMA-BUFs with
>      >     unified
>      >      >     resource ID.
>      >      >
>      >      >
>      >      > I see.
>      >      >
>      >      >
>      >      >     So you cannot change:
>      >      >     g_hash_table_insert(g->resource_uuids,
>      >      >     GUINT_TO_POINTER(assign.resource_id), uuid);
>      >      >     by:
>      >      >     virtio_add_dmabuf(uuid, assign.resource_id);
>      >      >
>      >      >     assign.resource_id is not DMA-BUF file descriptor, and the
>      >     underlying
>      >      >     resource my not be DMA-BUF at first place.
>      >      >
>      >      >
>      >      > I didn't really look into the patch in-depth, so the code was
>      >     intended
>      >      > to give an idea of how the implementation would look like with
>      >      > the cross-device patch API. Indeed, it is not the resource_id,
>      >      > (I just took a brief look at the virtio
>     specificacion 1.2), but the
>      >      > underlying
>      >      > resource what we want to use here.
>      >      >
>      >      >
>      >      >     Also, since this lives in the common code that is not used
>      >     only by
>      >      >     virtio-gpu-gl but also virtio-gpu, which supports
>     migration,
>      >     we also
>      >      >     need to take care of that. It is not a problem for
>     DMA-BUF as
>      >      >     DMA-BUF is
>      >      >     not migratable anyway, but the situation is different
>     in this
>      >     case.
>      >      >
>      >      >     Implementing cross-device sharing is certainly a
>     possibility,
>      >     but that
>      >      >     requires more than dealing with DMA-BUFs.
>      >      >
>      >      >
>      >      > So, if I understood correctly, dmabufs are just a subset
>     of the
>      >     resources
>      >      > that the gpu manages, or can assign UUIDs to. I am not
>     sure why
>      >      > the virt gpu driver would want to send a ASSIGN_UUID for
>     anything
>      >      > that is not a dmabuf (are we sure it does?), but I am not
>     super
>      >     familiarized
>      >      > with virtgpu to begin with.
>      >
>      >     In my understanding, an resource will be first created as
>     OpenGL or
>      >     Vulkan textures and then exported as a DMA-BUF file
>     descriptor. For
>      >     these resource types exporting/importing code is mandatory.
>      >
>      >     For pixman buffers (i.e., non-virgl device), I don't see a
>     compelling
>      >     reason to have cross-device sharing. It is possible to omit
>     resource
>      >     UUID feature from non-virgl device to avoid implementing
>     complicated
>      >     migration.
>      >
>      >
>      > I see, thanks for the clarification.
>      > I would assume you could avoid the UUID feature for those
>     resources, but
>      > I will need to check the driver implementation. It is worth checking
>      > though, if
>      > that would simplify the implementation.
>      >
>      >
>      >      > But I see that internally, the GPU specs relate a UUID with a
>      >     resource_id,
>      >      > so we still need both tables:
>      >      > - one to relate UUID with resource_id to be able to locate the
>      >      > underlying resource
>      >      > - the table that holds the dmabuf with the UUID for
>     cross-device
>      >     sharing
>      >      >
>      >      > With that in mind, sounds to me that the support for
>     cross-device
>      >      > sharing could
>      >      > be added on top of this patch, once
>      >      >
>      >
>     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html
>     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html>
>      >   
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html>>
>      >      >
>      >   
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html>
>      >   
>       <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html>>>
>      >      > lands.
>      >
>      >     That is possible, but I think it's better to implement
>     cross-device
>      >     sharing at the same time introducing virtio-dmabuf.
>      >
>      >     The current design of virtio-dmabuf looks somewhat
>     inconsistent; it's
>      >     named "dmabuf", but internally the UUIDs are stored into
>     something
>      >     named
>      >     "resource_uuids" and it has SharedObjectType so it's more like a
>      >     generic
>      >     resource sharing mechanism. If you actually have an
>     implementation of
>      >     cross-device sharing using virtio-dmabuf, it will be clear
>     what kind of
>      >     feature is truly necessary.
>      >
>      >
>      > Yeah, the file was named as virtio-dmabuf following the kernel
>      > implementation. Also, because for the moment it only aims to share
>      > dmabufs. However, virtio specs leave the virtio object
>     defintion vague [1]
>      > (I guess purposely). It is up to the specific devices to define
>     what an
>      > object
>      > means for them. So the implementation tries to follow that, and
>      > leave the contents of the table generic. The table can hold any
>     kind of
>      > object,
>      > and the API exposes type-specific functions (for dmabufs, or others).
>     In the guest kernel, the name "virtio_dma_buf" represents the interface
>     between the *guest* kernel and *guest* user-space. It makes sense since
>     the cross-device resource sharing is managed by the userspace and
>     DMA-BUF is the only interface between them for this purpose.
> 
>     The situation is different for QEMU; QEMU interacts with backends using
>     backend-specific interfaces (OpenGL/pixman) and virgl is capable to
>     export textures as DMA-BUF. DMA-BUF is not universal in this sense. As
>     such, we cannot just borrow the kernel-side naming but invent one.
> 
> It is not a gpu-specific feature. It is a generic cross-device sharing
> mechanism for virtio objects. In this case, virtio objects happen to be
> dmabufs in this first iteration. Hence, the name.
> 
> virtio-gpu (and vhost-user-gpu) will use this feature only with virgl, 
> that is
> fine, and transversal to the object-sharing mechanism. It allows
> to share dmabufs in the host following how they are shared in the guest.
> The virtgpu driver may call ASSIGN_UUID for other types of resources 
> (not sure,
> but could be), but they will never be shared with other virtio devices.
> So they are not too relevant. Also, the shared objects table could 
> potentially
> be accessed from any virtio device, not only virtio-gpu or virtio-video.

The virtgpu driver will call ASSIGN_UUID for resources that are backed 
with pixman buffer. What is used as the backing store for resources is 
an implementation detail of VMM and the guest cannot know it. For the 
guest, they are same kind of resources (2D images).


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 17:02:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 17:02:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602605.939265 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgpjt-0005ae-Me; Thu, 14 Sep 2023 17:02:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602605.939265; Thu, 14 Sep 2023 17:02:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgpjt-0005aX-JT; Thu, 14 Sep 2023 17:02:49 +0000
Received: by outflank-mailman (input) for mailman id 602605;
 Thu, 14 Sep 2023 17:02:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=GE3m=E6=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qgpjr-0005ZB-Sa
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 17:02:47 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 85c52d58-5320-11ee-8788-cb3800f73035;
 Thu, 14 Sep 2023 19:02:45 +0200 (CEST)
Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7])
 by mailhost.m5p.com (8.17.1/8.15.2) with ESMTPS id 38EH252b038701
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Thu, 14 Sep 2023 13:02:11 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 38EH25Ba038700;
 Thu, 14 Sep 2023 10:02:05 -0700 (PDT) (envelope-from ehem)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 85c52d58-5320-11ee-8788-cb3800f73035
Date: Thu, 14 Sep 2023 10:02:05 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Borislav Petkov <bp@alien8.de>
Cc: "Luck, Tony" <tony.luck@intel.com>, Yazen Ghannam <yazen.ghannam@amd.com>,
        smita.koralahallichannabasappa@amd.com, linux-edac@vger.kernel.org,
        linux-kernel@vger.kernel.org, x86@kernel.org,
        xen-devel@lists.xenproject.org, rric@kernel.org, james.morse@arm.com
Subject: Re: [PATCH] Revert "EDAC/mce_amd: Do not load edac_mce_amd module on
 guests"
Message-ID: <ZQM8jRx8uKEbEo00@mattapan.m5p.com>
References: <20210628172740.245689-1-Smita.KoralahalliChannabasappa@amd.com>
 <ZPqQEHXgmak1LMNh@mattapan.m5p.com>
 <20230908035911.GAZPqcD/EjfKZ0ISrZ@fat_crate.local>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230908035911.GAZPqcD/EjfKZ0ISrZ@fat_crate.local>
X-Spam-Status: No, score=0.4 required=10.0 tests=KHOP_HELO_FCRDNS autolearn=no
	autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mattapan.m5p.com

On Fri, Sep 08, 2023 at 05:59:11AM +0200, Borislav Petkov wrote:
> On Thu, Sep 07, 2023 at 08:08:00PM -0700, Elliott Mitchell wrote:
> > This reverts commit 767f4b620edadac579c9b8b6660761d4285fa6f9.
> > 
> > There are at least 3 valid reasons why a VM may see MCE events/registers.
> 
> Hmm, so they all read like a bunch of handwaving to me, with those
> probable hypothetical "may" formulations.

Indeed.  At what point is the lack of information and response long
enough to simply commit a revert due to those lacks?

Even with the commit message having been rewritten and the link to:
https://lkml.kernel.org/r/20210628172740.245689-1-Smita.KoralahalliChannabasappa@amd.com
added, this still reads as roughly:

"A hypothetical bug on a hypothetivisor"

I rather suspect a genuine issue was observed, but with absolutely no
detail this is useless.  I can make some guesses, but those guesses
relation to reality is dubious.


On Wed, Sep 13, 2023 at 03:50:12PM +0000, Luck, Tony wrote:
> > Also, please note that the EDAC modules don't handle MCE events
> > directly. They act on information passed from the MCE subsystem.
> >
> > Furthermore, there are other EDAC modules that have the same !hypervisor
> > check, so why change only this one?
> 
> The older Intel EDAC drivers translated system physical addresses to DIMM
> addresses by digging around in the CONFIG and MMIO space of the memory
> controller devices. It would seem unwise for a VMM to give access to those
> addresses to a guest (in general ... perhaps OK for a Xen style "DOM0" guest that is
> handling many tasks for the VMM?).

Which seems oddly similar to:
"the Linux kernel may be handling adminstrative duties/hardware
for a hypervisor.  In this case, the events need to be processed and
potentially passed back through the hypervisor."


On Wed, Sep 13, 2023 at 12:21:50PM -0400, Yazen Ghannam wrote:
> The MCE decoder may access some newer MCA registers, or request info
> from the MCE subsystem. But this is for informational error decoding. It
> won't support any actions that a guest could take.
> 
> The AMD64 EDAC module reads system-specific memory controller registers
> through non-architectural interfaces. So also unwise or not useful for a
> guest to access.

This could be emulated.  With it not being officially specified the
emulation may not be too accurate, but it is possible.  Admittedly VMware
may have abandoned this level of perfect emulation accuracy, but one
could do it.  Which would be "full virtualization of MCE events."


On Wed, Sep 13, 2023 at 10:36:50AM -0400, Yazen Ghannam wrote:
> Furthermore, there are other EDAC modules that have the same !hypervisor
> check, so why change only this one?

Indeed.  Those will also need similar treatment, but that wouldn't be a
revert of 767f4b620eda.  I found 767f4b620eda in the process of looking
for the correct hook point.



There are at least two, and possibly more, points of view with regards
to MCE and virtualization.  I keep noticing most implementers are
strictly thinking of perfect, full virtualization of hardware, and
missing what is actually desired.

Full virtualization is where you are renting an actual physical slice of
actual hardware, proper virtualization of CEs and UEs is desireable.

In reality most clients merely want to rent the processing power the
hardware provides and not deal with actually owning the hardware.  To
them, CEs are an annoyance since they clutter logs and they're not
something they're in a position to deal with.  Instead the owner of the
hardware wants the CEs so they can monitor hardware health.

What you want depends on your SLAs, but the most prominent authors keep
missing that many clients (VM owners) don't actually want to deal with
CEs.  A SLA could also state a single UE means discarding current VM
state and rolling back to the last known good checkpoint.


-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \BS (    |         ehem+sigmsg@m5p.com  PGP 87145445         |    )   /
  \_CS\   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445




From xen-devel-bounces@lists.xenproject.org Thu Sep 14 17:42:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 17:42:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602613.939275 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgqLx-00036f-JY; Thu, 14 Sep 2023 17:42:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602613.939275; Thu, 14 Sep 2023 17:42:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgqLx-00036Y-Go; Thu, 14 Sep 2023 17:42:09 +0000
Received: by outflank-mailman (input) for mailman id 602613;
 Thu, 14 Sep 2023 17:42:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgqLv-00036Q-BN
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 17:42:07 +0000
Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com
 [2a00:1450:4864:20::335])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 04b6d6cb-5326-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 19:42:05 +0200 (CEST)
Received: by mail-wm1-x335.google.com with SMTP id
 5b1f17b1804b1-401d6f6b2e0so15440465e9.1
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 10:42:05 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 l4-20020a5d4804000000b0030ada01ca78sm2272631wrq.10.2023.09.14.10.42.04
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 10:42:04 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 04b6d6cb-5326-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694713324; x=1695318124; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=O5P09Fowp3yjIYcgyxnprWNjqJlp5DVeKLE4sUDeX1E=;
        b=Wp8Vf+RuMo3CRfop6vPplpt/V5cq8tztGcGDOcD2MjNRhRfiosymQTHiGLhQd3KzGH
         ZZNEgZJj7ADx2dJztoPt9wturDXHkpb6moA8/1j1386xdEshkdnzXE82opkEJ9SQYlBZ
         NXHx5Mfj0/AlnAcemqSOBWegIoj3giLzvU0fc=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694713324; x=1695318124;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=O5P09Fowp3yjIYcgyxnprWNjqJlp5DVeKLE4sUDeX1E=;
        b=LMJR5yP0vsdzQXqlQEulKvQsk47sIBnfXsez5T3+vhMTxUREN/fOa11Y9511hipgkJ
         5Rz9ITHjZBlBG/fI+cVAFYtbAlKmamoXKLUCF0sGlrdNomjfJTVKtDla8JjKxkYr+CpV
         sp7OseuyxHgDBR37sxy68huAYjK8ShG7KuinwO0QRdi2jY6pBzescYZ0959bErhr7sVL
         RkrQrlNVQfVcnvy+DCcGkUNk2YXow7PCA8OhuHm90T/tWhLviqEmgIZcOD9g6n/j8cAJ
         SETCO/JBckdcBVvNj+l3FcBVmuWl6iGNl100wp0Yq4yN9qymHIlUFCF9q2RV1Ye5pltf
         JnqQ==
X-Gm-Message-State: AOJu0Yz5of7ikUBKEDlFwDgN/n3mV4wtx2L0flDd1arndKnyCkDwJoqw
	GYQIVboJE15K0xXSJZIFrdMRKWetDW/X+6S0D2aY1g==
X-Google-Smtp-Source: AGHT+IGMAWwLRr/hOumS9DT09MGLMrowZemv7tB8rOLepMBJRbm7MiYvLmERbLPPlCXJ8riZxXJWUA==
X-Received: by 2002:a5d:6e56:0:b0:317:6579:2b9f with SMTP id j22-20020a5d6e56000000b0031765792b9fmr1704358wrz.30.1694713324372;
        Thu, 14 Sep 2023 10:42:04 -0700 (PDT)
Message-ID: <2d767f96-9f20-e786-9148-cae5c30a41fd@citrix.com>
Date: Thu, 14 Sep 2023 18:42:03 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/shutdown: change default reboot method preference
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>
References: <20230914152120.92696-1-roger.pau@citrix.com>
In-Reply-To: <20230914152120.92696-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 4:21 pm, Roger Pau Monne wrote:
> The current logic to chose the preferred reboot method is based on the mode Xen
> has been booted into, so if the box is booted from UEFI, the preferred reboot
> method will be to use the ResetSystem() run time service call.
>
> However, that call seems to be widely untested once the firmware has exited
> boot services, and quite often leads to a result similar to:

I don't know how true this is.  What Xen does differently to most of the
rest of the world is not calling SetVirtualAddressMap()

>
> Hardware Dom0 shutdown: rebooting machine
> ----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
> CPU:    0
> RIP:    e008:[<0000000000000017>] 0000000000000017
> RFLAGS: 0000000000010202   CONTEXT: hypervisor
> [...]
> Xen call trace:
>    [<0000000000000017>] R 0000000000000017
>    [<ffff83207eff7b50>] S ffff83207eff7b50
>    [<ffff82d0403525aa>] F machine_restart+0x1da/0x261
>    [<ffff82d04035263c>] F apic_wait_icr_idle+0/0x37
>    [<ffff82d040233689>] F smp_call_function_interrupt+0xc7/0xcb
>    [<ffff82d040352f05>] F call_function_interrupt+0x20/0x34
>    [<ffff82d04033b0d5>] F do_IRQ+0x150/0x6f3
>    [<ffff82d0402018c2>] F common_interrupt+0x132/0x140
>    [<ffff82d040283d33>] F arch/x86/acpi/cpu_idle.c#acpi_idle_do_entry+0x113/0x129
>    [<ffff82d04028436c>] F arch/x86/acpi/cpu_idle.c#acpi_processor_idle+0x3eb/0x5f7
>    [<ffff82d04032a549>] F arch/x86/domain.c#idle_loop+0xec/0xee
>
> ****************************************
> Panic on CPU 0:
> FATAL TRAP: vector = 6 (invalid opcode)
> ****************************************
>
> Which in most cases does lead to a reboot, however that's unreliable.
>
> Change the default reboot preference to prefer ACPI over UEFI if available and
> not in reduced hardware mode.
>
> This is in line to what Linux does, so it's unlikely to cause issues on current
> and future hardware, since there's a much higher chance of vendors testing
> hardware with Linux rather than Xen.
>
> I'm not aware of using ACPI reboot causing issues on boxes that do have
> properly implemented ResetSystem() methods.
>
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

Wording aside, Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>

This is a giant embarrassment to Xen, and needs fixing.

> ---
> I haven't found anything in the UEFI spec that mandates to use ResetSystem()
> when booted from UEFI, I've only found:
>
> "One method of resetting the platform is through the EFI Runtime Service
> ResetSystem()."
>
> But that's vaguely a recommendation.
>
> I've found a lot of boxes that don't reboot properly using ResetSystem(), and I
> think our default should attempt to make sure Xen reliably reboots on as much
> hardware as possible.

You're supposed to use ResetSystem() so all the value-add can be added
behind your back, but it's a chocolate teapot when it's so broken that
none of the OSes use it...

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 18:04:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 18:04:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602618.939285 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgqhA-0000mq-Ce; Thu, 14 Sep 2023 18:04:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602618.939285; Thu, 14 Sep 2023 18:04:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgqhA-0000mj-8Y; Thu, 14 Sep 2023 18:04:04 +0000
Received: by outflank-mailman (input) for mailman id 602618;
 Thu, 14 Sep 2023 18:04:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgqh9-0000md-AY
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 18:04:03 +0000
Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com
 [2a00:1450:4864:20::32b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 130a51f5-5329-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 20:03:57 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-401b0d97850so12978605e9.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 11:03:57 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 g8-20020a7bc4c8000000b003ff013a4fd9sm2592991wmk.7.2023.09.14.11.03.56
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 11:03:56 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 130a51f5-5329-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694714637; x=1695319437; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=0uZIL9QBIPOi1i43i9sEyM9wySkwjsz8iG0Y7oCg21k=;
        b=kXDtr6LziPEmTeYnW8G1D6ttfmPHsMT6hYa0BvRaPryvHJl5GzkHunqlSBSXGYTUCB
         1zMiO9Dy/0hM9s165kXMysqeNOR5Cf1hJKebK1u3SmBFldz4wnq2bwRjGJnr4PEryScn
         dE80Z/FPhzQS/Z0CrTrNzFuNGPFdPNJ5Vkx00=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694714637; x=1695319437;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=0uZIL9QBIPOi1i43i9sEyM9wySkwjsz8iG0Y7oCg21k=;
        b=Hf0q8b2ZQZU3QnIid5JqNDExWlDheIgHmipUYNvQSO9TAD4FuuER0acIN38EoV3cTT
         ZNJUHKfnsBbmYgFXQ5rCR14KNYkUZnpksVdHlELxG3de79+zs6tD/vMqvWOCGXeciurM
         iuMB+yAI8HyaecJGOr/mTYkoVoHNNTH2hzjsVbgrSOVCHYQRSZ3Qoz0s2Afcm1BC3F/1
         Z0jMcnJZlccLbFcm9aPAS+g6JNnJddkyQNlUKtYg+ngnTpEvDLP4nzd8yt7Eoi2Jfpig
         kWr91BauiPX+jVmCMjAz/x7TFJO9WJNqBqNGv7WL12D2OlefmvqefJbjk4skSsSa7N1K
         BUoQ==
X-Gm-Message-State: AOJu0YyIYje7zd6qrSY8xbsHejUKCTtRc5O2nL7uNWrrRkIOqiqu6Bg2
	68BZ5mDEITS7dm4cWs7m1t6Xvg==
X-Google-Smtp-Source: AGHT+IFFqJ5GPcSRyhgS0jIJ/Gjd44om7Km1IR9fgNbuQ8RXjlTTLlHoIY2Np8PPY2sYWxS2q78K6Q==
X-Received: by 2002:a1c:4c09:0:b0:401:cffd:995e with SMTP id z9-20020a1c4c09000000b00401cffd995emr5257922wmf.35.1694714636937;
        Thu, 14 Sep 2023 11:03:56 -0700 (PDT)
Message-ID: <08556a3f-3a96-2929-ef7d-26c3b3cbeb6c@citrix.com>
Date: Thu, 14 Sep 2023 19:03:56 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/5] x86: Introduce x86_merge_dr6()
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-3-andrew.cooper3@citrix.com>
 <126020f0-3054-11d5-c7f9-1f02750cf815@suse.com>
In-Reply-To: <126020f0-3054-11d5-c7f9-1f02750cf815@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 3:53 pm, Jan Beulich wrote:
> On 13.09.2023 01:21, Andrew Cooper wrote:
>> The current logic used to update %dr6 when injecting #DB is buggy.  The
>> architectural behaviour is to overwrite B{0..3} and accumulate all other bits.
> While I consider this behavior plausible, forever since the introduction of
> debug registers in i386 I have been missing a description in the manuals of
> how %dr6 updating works. Can you point me at where the above is actually
> spelled out?

The documentation is very poor.  The comment in the code is based on my
conversations with architects.

APM Vol2 13.1.1.3 Debug-Status Register (DR6) says

"Bits 15:13 of the DR6 register are not cleared by the processor and
must be cleared by software after the contents have been read."

although this is buggy given the addition of BLD in the latest
revision.  I've asked AMD to correct it.


SDM Vol3 18.2.3 Debug Status Register (DR6) says

"Certain debug exceptions may clear bits 0-3. The remaining contents of
the DR6 register are never cleared by the processor."

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 18:15:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 18:15:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602622.939294 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgqrv-0003sb-AL; Thu, 14 Sep 2023 18:15:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602622.939294; Thu, 14 Sep 2023 18:15:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgqrv-0003sU-7o; Thu, 14 Sep 2023 18:15:11 +0000
Received: by outflank-mailman (input) for mailman id 602622;
 Thu, 14 Sep 2023 18:15:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PYVF=E6=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qgqru-0003sO-4I
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 18:15:10 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a1adb6b6-532a-11ee-8788-cb3800f73035;
 Thu, 14 Sep 2023 20:15:07 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 7A3AB828466D;
 Thu, 14 Sep 2023 13:15:05 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id ZFfhI0jYldlf; Thu, 14 Sep 2023 13:15:03 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 6C4A2828523D;
 Thu, 14 Sep 2023 13:15:03 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 1uGiVYrOHPkR; Thu, 14 Sep 2023 13:15:03 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id CF591828466D;
 Thu, 14 Sep 2023 13:15:02 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a1adb6b6-532a-11ee-8788-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 6C4A2828523D
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694715303; bh=mPAItHYRl8UMAZSTKpDYep7P0nN+PGOSiVF4tphkwqY=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=e5PcGEd29D2scMIPbep5YCAFy4kuoJ7+Cn8sCymXsZ4WjjdaSXQuTLQXz3qyjY52Z
	 6QuJWa+D3J1UlrCaGnKKqehFrcspGKj5B/SU2p7ToEMo44EIdL35JFnGeky6K6r1QE
	 n9dlEAf6IEQAlQbzisfIw7c0IyLgi4c3+H4Nmonk=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <fa66a2b5-1364-48cf-dfb0-cc6c2de48bbd@raptorengineering.com>
Date: Thu, 14 Sep 2023 13:15:02 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v5 2/5] xen/ppc: Implement bitops.h
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694543103.git.sanastasio@raptorengineering.com>
 <06892692342540b6dc1af4d530fe3c2c25cf4a2e.1694543103.git.sanastasio@raptorengineering.com>
 <60d5d841-29da-519b-057c-18c5796c8f1e@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <60d5d841-29da-519b-057c-18c5796c8f1e@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/13/23 2:29 AM, Jan Beulich wrote:
> On 12.09.2023 20:35, Shawn Anastasio wrote:
>> Implement bitops.h, based on Linux's implementation as of commit
>> 5321d1b1afb9a17302c6cec79f0cbf823eb0d3fc. Though it is based off of
>> Linux's implementation, this code diverges significantly in a number of
>> ways:
>>   - Bitmap entries changed to 32-bit words to match X86 and Arm on Xen
>>   - PPC32-specific code paths dropped
>>   - Formatting completely re-done to more closely line up with Xen.
>>     Including 4 space indentation.
>>   - Use GCC's __builtin_popcount* for hweight* implementation
>>
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>> Acked-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> v5:
>>   - Switch lingering ulong bitop parameters/return values to uint.
>>
>> v4:
>>   - Mention __builtin_popcount impelmentation of hweight* in message
>>   - Change type of BITOP_MASK expression from unsigned long to unsigned
>>     int
>>   - Fix remaining underscore-prefixed macro params/vars
>>   - Fix line wrapping in test_and_clear_bit{,s}
>>   - Change type of test_and_clear_bits' pointer parameter from void *
>>     to unsigned int *. This was already done for other functions but
>>     missed here.
>>   - De-macroize test_and_set_bits.
>>   - Fix formatting of ffs{,l} macro's unary operators
>>   - Drop extra blank in ffz() macro definition
>>
>> v3:
>>   - Fix style of inline asm blocks.
>>   - Fix underscore-prefixed macro parameters/variables
>>   - Use __builtin_popcount for hweight* implementation
>>   - Update C functions to use proper Xen coding style
>>
>> v2:
>>   - Clarify changes from Linux implementation in commit message
>>   - Use PPC_ATOMIC_{ENTRY,EXIT}_BARRIER macros from <asm/memory.h> instead
>>     of hardcoded "sync" instructions in inline assembly blocks.
>>   - Fix macro line-continuing backslash spacing
>>   - Fix hard-tab usage in find_*_bit C functions.
>>
>>  xen/arch/ppc/include/asm/bitops.h | 332 +++++++++++++++++++++++++++++-
>>  1 file changed, 329 insertions(+), 3 deletions(-)
>>
>> diff --git a/xen/arch/ppc/include/asm/bitops.h b/xen/arch/ppc/include/asm/bitops.h
>> index 548e97b414..0f75ff3f9d 100644
>> --- a/xen/arch/ppc/include/asm/bitops.h
>> +++ b/xen/arch/ppc/include/asm/bitops.h
>> @@ -1,9 +1,335 @@
>> +/* SPDX-License-Identifier: GPL-2.0-or-later */
>> +/*
>> + * Adapted from Linux's arch/powerpc/include/asm/bitops.h.
>> + *
>> + * Merged version by David Gibson <david@gibson.dropbear.id.au>.
>> + * Based on ppc64 versions by: Dave Engebretsen, Todd Inglett, Don
>> + * Reed, Pat McCarthy, Peter Bergner, Anton Blanchard.  They
>> + * originally took it from the ppc32 code.
>> + */
>>  #ifndef _ASM_PPC_BITOPS_H
>>  #define _ASM_PPC_BITOPS_H
>>
>> +#include <asm/memory.h>
>> +
>> +#define __set_bit(n, p)         set_bit(n, p)
>> +#define __clear_bit(n, p)       clear_bit(n, p)
>> +
>> +#define BITOP_BITS_PER_WORD     32
>> +#define BITOP_MASK(nr)          (1U << ((nr) % BITOP_BITS_PER_WORD))
>> +#define BITOP_WORD(nr)          ((nr) / BITOP_BITS_PER_WORD)
>> +#define BITS_PER_BYTE           8
>> +
>>  /* PPC bit number conversion */
>> -#define PPC_BITLSHIFT(be)	(BITS_PER_LONG - 1 - (be))
>> -#define PPC_BIT(bit)		(1UL << PPC_BITLSHIFT(bit))
>> -#define PPC_BITMASK(bs, be)	((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
>> +#define PPC_BITLSHIFT(be)    (BITS_PER_LONG - 1 - (be))
>> +#define PPC_BIT(bit)         (1UL << PPC_BITLSHIFT(bit))
>> +#define PPC_BITMASK(bs, be)  ((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
>> +
>> +/* Macro for generating the ***_bits() functions */
>> +#define DEFINE_BITOP(fn, op, prefix)                                           \
>> +static inline void fn(unsigned int mask,                                      \
>> +                      volatile unsigned int *p_)                               \
>> +{                                                                              \
>> +    unsigned int old;                                                         \
>> +    unsigned int *p = (unsigned int *)p_;                                      \
> 
> What use is this, when ...
> 
>> +    asm volatile ( prefix                                                      \
>> +                   "1: lwarx %0,0,%3,0\n"                                      \
>> +                   #op "%I2 %0,%0,%2\n"                                        \
>> +                   "stwcx. %0,0,%3\n"                                          \
>> +                   "bne- 1b\n"                                                 \
>> +                   : "=&r" (old), "+m" (*p)                                    \
> 
> ... the "+m" operand isn't used and ...
> 
>> +                   : "rK" (mask), "r" (p)                                      \
>> +                   : "cc", "memory" );                                         \
> 
> ... there's a memory clobber anyway?
>

I see what you're saying, and I'm not sure why it was written this way
in Linux. That said, this is the kind of thing that I'm hesitant to
change without knowing the rationale of the original author. If you are
confident that the this can be dropped given that there is already a
memory clobber, I could drop it. Otherwise I'm inclined to leave it in a
state that matches Linux.

> Also (nit) note that the long -> int change has caused some of the
> backslashes to no longer align.
>

Will fix the backslash alignment.

>> +}
>> +
>> +DEFINE_BITOP(set_bits, or, "")
>> +DEFINE_BITOP(change_bits, xor, "")
> 
> Are there further plans to add uses of DEFINE_BITOP() with the last argument
> not an empty string? If not, how about simplifying things by dropping the
> macro parameter?
>

Sure, I can drop the last parameter.

>> +#define DEFINE_CLROP(fn, prefix)                                               \
>> +static inline void fn(unsigned int mask, volatile unsigned int *p_)           \
>> +{                                                                              \
>> +    unsigned int old;                                                         \
>> +    unsigned int *p = (unsigned int *)p_;                                      \
>> +    asm volatile ( prefix                                                      \
>> +                   "1: lwarx %0,0,%3,0\n"                                      \
>> +                   "andc %0,%0,%2\n"                                           \
>> +                   "stwcx. %0,0,%3\n"                                          \
>> +                   "bne- 1b\n"                                                 \
>> +                   : "=&r" (old), "+m" (*p)                                    \
>> +                   : "r" (mask), "r" (p)                                       \
>> +                   : "cc", "memory" );                                         \
>> +}
>> +
>> +DEFINE_CLROP(clear_bits, "")
> 
> Same question here.
>

Ditto.

>> +static inline void set_bit(int nr, volatile void *addr)
>> +{
>> +    set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
>> +}
>> +static inline void clear_bit(int nr, volatile void *addr)
>> +{
>> +    clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
>> +}
>> +
>> +/**
>> + * test_bit - Determine whether a bit is set
>> + * @nr: bit number to test
>> + * @addr: Address to start counting from
>> + */
>> +static inline int test_bit(int nr, const volatile void *addr)
>> +{
>> +    const volatile unsigned int *p = addr;
>> +    return 1 & (p[BITOP_WORD(nr)] >> (nr & (BITOP_BITS_PER_WORD - 1)));
>> +}
>> +
>> +static inline unsigned int test_and_clear_bits(
>> +    unsigned int mask,
>> +    volatile unsigned int *p)
>> +{
>> +    unsigned int old, t;
>> +
>> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
>> +                   "1: lwarx %0,0,%3,0\n"
>> +                   "andc %1,%0,%2\n"
>> +                   "stwcx. %1,0,%3\n"
>> +                   "bne- 1b\n"
>> +                   PPC_ATOMIC_EXIT_BARRIER
>> +                   : "=&r" (old), "=&r" (t)
>> +                   : "r" (mask), "r" (p)
>> +                   : "cc", "memory" );
>> +
>> +    return (old & mask);
>> +}
>> +
>> +static inline int test_and_clear_bit(unsigned int nr,
>> +                                     volatile void *addr)
>> +{
>> +    return test_and_clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr +
>> +                               BITOP_WORD(nr)) != 0;
> 
> Didn't you indicate you'd adjust the odd wrapping?
>

Apologies, will fix.

>> +}
>> +
>> +static inline unsigned int test_and_set_bits(
>> +    unsigned int mask,
>> +    volatile unsigned int *p)
>> +{
>> +    unsigned int old, t;
>> +
>> +    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
>> +                   "1: lwarx %0,0,%3,0\n"
>> +                   "or%I2 %1,%0,%2\n"
>> +                   "stwcx. %1,0,%3\n"
>> +                   "bne- 1b\n"
>> +                   PPC_ATOMIC_EXIT_BARRIER
>> +                   : "=&r" (old), "=&r" (t)
>> +                   : "rK" (mask), "r" (p)
>> +                   : "cc", "memory" );
>> +
>> +    return (old & mask);
>> +}
>> +
>> +static inline int test_and_set_bit(unsigned int nr, volatile void *addr)
>> +{
>> +    return test_and_set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr +
>> +                                             BITOP_WORD(nr)) != 0;
> 
> Same here then.
>

Ditto.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 18:22:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 18:22:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602628.939304 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgqyj-0006v6-6Y; Thu, 14 Sep 2023 18:22:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602628.939304; Thu, 14 Sep 2023 18:22:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgqyj-0006uz-3n; Thu, 14 Sep 2023 18:22:13 +0000
Received: by outflank-mailman (input) for mailman id 602628;
 Thu, 14 Sep 2023 18:22:11 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgqyh-0006uq-Ru
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 18:22:11 +0000
Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com
 [2a00:1450:4864:20::32b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9e022272-532b-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 20:22:09 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-402cc6b8bedso14586185e9.1
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 11:22:09 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 m7-20020a05600c280700b003fed630f560sm2607989wmb.36.2023.09.14.11.22.08
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 11:22:08 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9e022272-532b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694715729; x=1695320529; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=FllqSI5+xIUVUowtc5PxyKDUO8P+Ic0Lz0FkQ0j7WnU=;
        b=aV53yhGfTrYwA6ZY37Xm4j1aW0RZO7PX8oLvNOUUwOAks2XdBUg8K1brQY9Z2caYtf
         cCb/K3EI1ueK80rrkweEtxNXfdj8EGIyQCa8q5Ju7BPBBQu0KVwK/7h7fAJvo9LZAO5Z
         z8Fsrq2VOyZi6pt0hgBkY7p28A8J6g3qY7X6g=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694715729; x=1695320529;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=FllqSI5+xIUVUowtc5PxyKDUO8P+Ic0Lz0FkQ0j7WnU=;
        b=SEDFoPObkyB5uIP/TzeVGxmW2Iv1kzFQ+c0/Xsj8K4s4ICwnM585LzEvgo4iC2KVy3
         FrchwY1lIIjOSrPRaRQqT/SZ3H1F3fMhJCJkpn+mvkWGATf8tjVxsT4BesHuEMhTOSaq
         qTZqGUzR+UrBw6FylSiel2V6ivF1+O4opUsd8uDkpEoSR+i3I1aMje1Xkq+8LF8ic8on
         iITXwPA8HwNEWkfbeyW1UMPjFCOYAJplOWgNgfUAJF8CnT9xkDHor2GT+xo52BRbHDIz
         EHVNQbqEq0H96qDkuBzKR2l5WRNBMWYVZObMNsCkL55vQTDqe3Y2irVDyKui9KRENDbu
         1skw==
X-Gm-Message-State: AOJu0YydqeqvjPjdyJE/zVT3BVGs1EyUNiY9tRQVymicYJ2TnhYQeQUZ
	IyW6uZfcVdXDwk2335KSZXJvXw==
X-Google-Smtp-Source: AGHT+IHkDkbjDiyKuf+xCnhRLgZ4z3TV/HnKjxMMvziNUx8wrMHH0mm3peNhamHB+sjZ+JVZolfpJA==
X-Received: by 2002:a05:600c:219:b0:3fb:e189:3532 with SMTP id 25-20020a05600c021900b003fbe1893532mr5612218wmi.20.1694715729072;
        Thu, 14 Sep 2023 11:22:09 -0700 (PDT)
Message-ID: <b884335b-0d91-922e-5e83-2c0cedbba8f5@citrix.com>
Date: Thu, 14 Sep 2023 19:22:08 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 3/5] x86/emul: Add a pending_dbg field to
 x86_emulate_ctxt.retire
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-4-andrew.cooper3@citrix.com>
 <1e71b915-bec5-2430-3304-f6f46842359d@suse.com>
In-Reply-To: <1e71b915-bec5-2430-3304-f6f46842359d@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 4:04 pm, Jan Beulich wrote:
> On 13.09.2023 01:21, Andrew Cooper wrote:
>> --- a/xen/arch/x86/x86_emulate/x86_emulate.c
>> +++ b/xen/arch/x86/x86_emulate/x86_emulate.c
>> @@ -8379,7 +8379,10 @@ x86_emulate(
>>      if ( !mode_64bit() )
>>          _regs.r(ip) = (uint32_t)_regs.r(ip);
>>  
>> -    /* Should a singlestep #DB be raised? */
>> +    if ( singlestep )
>> +        ctxt->retire.pending_dbg |= X86_DR6_BS;
> We set "singlestep" about first thing in the function. Is it really correct
> to latch that into pending_dbg without regard to rc? (Perhaps yes, seeing
> the comment next to the field declaration.)

Honestly, without seeing some real RTL, I'm not sure.

The thing that is definitely buggy in this retire logic is saying "don't
set singlestep if MovSS is pending".  The correct behaviour is to set
both PENDING_DBG.BS and INTERRUPTIBILITY.MOVSS, the latter of which
causes #DB to be skipped on this instruction boundary.

That's why we get the XSA-260 behaviour - when the SYSCALL/INT/etc
completes and we hit the subsequent instruction boundary, PENDING_DBG
still has values latched in it.

With the DONE path being removed, and with the plan to wire in the VMCS
register for emulations that occur when something is already pending,
then it probably does want to be restricted back to the OKAY case.

e.g. We shouldn't latch BS in EXCEPTION Case, or we'd create more
XSA-260-like behaviour.

I'll adjust in light of this.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 18:39:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 18:39:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602635.939315 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrF9-0002O6-In; Thu, 14 Sep 2023 18:39:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602635.939315; Thu, 14 Sep 2023 18:39:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrF9-0002Nz-G8; Thu, 14 Sep 2023 18:39:11 +0000
Received: by outflank-mailman (input) for mailman id 602635;
 Thu, 14 Sep 2023 18:39:10 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgrF8-0002Nr-2N
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 18:39:10 +0000
Received: from mail-wr1-x431.google.com (mail-wr1-x431.google.com
 [2a00:1450:4864:20::431])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fcf2409a-532d-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 20:39:07 +0200 (CEST)
Received: by mail-wr1-x431.google.com with SMTP id
 ffacd0b85a97d-31f7638be6eso1191821f8f.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 11:39:07 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 d6-20020adfef86000000b0031f82743e25sm2427195wro.67.2023.09.14.11.39.06
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 11:39:07 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fcf2409a-532d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694716747; x=1695321547; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=qsfT4Ey3oOOVsjw+YjbBKz6D/Z9okdMGB7smZhVyoN8=;
        b=PtJV5RKEtKrF/um2lx2vsMdSNyII9Qjmjgl0+nf6u6qM9JzQO0g1B1Wt3yVeIJRnda
         RqdkdMsouAHEuQLkVCrlb16GyBPWhDlsf4bVrJW0Q+NP6JXh8PNyWs0xcGSRA9ML9TAc
         a3CckWN/XMA5Tjbufw3u8afTEy1TukAWKFXoY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694716747; x=1695321547;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=qsfT4Ey3oOOVsjw+YjbBKz6D/Z9okdMGB7smZhVyoN8=;
        b=nhbFT8vQi/3tm9XMCVwdwHBzNyigRjgO+xRw1/hyyt/f8DWSXLgtjJlr4qG/0Rkmzu
         juF514GucqemYtQzq5+tc3IQHVbU09CK5hvebRtvCEV0gRgWhTCkvMsTvOCiZizG4afc
         o+je1niO9o9MTUOh4OWP5PTnd3ligWtwme+bZPk4tKcCylutqENM13hPkMFJy4SKNzOQ
         s4Mn7RirZ5SAiAf713J6nGdONhoh5Eiax7x/f8QCJhB8wYrZjOQfUEhmDQ36n+ltE/GA
         dWi07XqgLTV1Z1tlDS2lpHo8mNIbslZDS6TqvdpUmKPSmf/lGyVuLZxaK+WueRLVxC36
         QrXg==
X-Gm-Message-State: AOJu0YyLo9nf9D/dWs5z8LpmjoNhGmt3TmHq8eurWjR9MZU0sBcN0OmO
	OK+iuAI0/dtXNuD7oTH2wi3NfQ==
X-Google-Smtp-Source: AGHT+IEbHJTQiImbJV3xo2IrMuuflNMoVmKaRHWnEjCXh0car7BDQGfCjy2eDiyXN1XplqHnO3V4LQ==
X-Received: by 2002:a5d:5149:0:b0:317:6310:a616 with SMTP id u9-20020a5d5149000000b003176310a616mr5774003wrt.36.1694716747346;
        Thu, 14 Sep 2023 11:39:07 -0700 (PDT)
Message-ID: <3e9e1bc0-3d11-9283-b053-0e5ad171b3f1@citrix.com>
Date: Thu, 14 Sep 2023 19:39:06 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 5/5] x86/pv: Rewrite %dr6 handling
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-6-andrew.cooper3@citrix.com>
 <7c847e46-6890-5511-dda9-b16e8b0ac7ab@suse.com>
In-Reply-To: <7c847e46-6890-5511-dda9-b16e8b0ac7ab@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 5:06 pm, Jan Beulich wrote:
> On 13.09.2023 01:21, Andrew Cooper wrote:
>> --- a/xen/arch/x86/include/asm/domain.h
>> +++ b/xen/arch/x86/include/asm/domain.h
>> @@ -729,6 +729,18 @@ static inline void pv_inject_hw_exception(unsigned int vector, int errcode)
>>      pv_inject_event(&event);
>>  }
>>  
>> +static inline void pv_inject_DB(unsigned long pending_dbg)
>> +{
>> +    struct x86_event event = {
>> +        .vector      = X86_EXC_DB,
>> +        .type        = X86_EVENTTYPE_HW_EXCEPTION,
>> +        .error_code  = X86_EVENT_NO_EC,
>> +        .pending_dbg = pending_dbg,
> This being a sub-field of an unnamed union, the build will break (also
> in pv_inject_page_fault() then, for cr2 being switched at the same time)
> once again for old enough gcc.

I'm sick and tired of utterly obsolete compiler bugs stopping us writing
good code.

It will break HVM #PF too, and I'll fix it for now as these patches need
backporting, but I've got a very strong mind to intentionally break it
next time this comes up in staging.

>> --- a/xen/arch/x86/pv/emulate.c
>> +++ b/xen/arch/x86/pv/emulate.c
>> @@ -71,11 +71,9 @@ void pv_emul_instruction_done(struct cpu_user_regs *regs, unsigned long rip)
>>  {
>>      regs->rip = rip;
>>      regs->eflags &= ~X86_EFLAGS_RF;
>> +
>>      if ( regs->eflags & X86_EFLAGS_TF )
>> -    {
>> -        current->arch.dr6 |= DR_STEP | DR_STATUS_RESERVED_ONE;
>> -        pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
>> -    }
>> +        pv_inject_DB(X86_DR6_BS);
>>  }
> This (not your change, the construct) looks bogus at the first and second
> glance, because of looking at EFLAGS.TF after emulation, when the initial
> state of TF matters. It is only correct (at the third, closer look) because
> the function presently is used only from paths not altering the guest's
> EFLAGS. Do you think it would make sense to add a comment at this occasion?

It is buggy yes, but if you notice, so is SVM's __update_guest_eip() and
VMX's update_guest_eip().

And remember that while for most instructions it's the initial state
that matters, it's the final state that matters for SYSCALL/SYSRET, and
each of LRET/IRET/ERET{U,S} have oddities that aren't currently
expressed in the emulator.

I'll leave a todo for now.  This is a problem that can only reasonably
be fixed by unifying the intercept and emulation paths into a coherent
model of the instruction cycle.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 19:03:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 19:03:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602641.939335 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrcy-0002N1-LU; Thu, 14 Sep 2023 19:03:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602641.939335; Thu, 14 Sep 2023 19:03:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrcy-0002Mu-Id; Thu, 14 Sep 2023 19:03:48 +0000
Received: by outflank-mailman (input) for mailman id 602641;
 Thu, 14 Sep 2023 19:03:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PYVF=E6=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qgrcx-00027n-Ew
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 19:03:47 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6e039156-5331-11ee-8788-cb3800f73035;
 Thu, 14 Sep 2023 21:03:46 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id B174B8285899;
 Thu, 14 Sep 2023 14:03:45 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id wxOFtuVG4z9Y; Thu, 14 Sep 2023 14:03:44 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 28ACB828518F;
 Thu, 14 Sep 2023 14:03:44 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id W-g0_CssrewI; Thu, 14 Sep 2023 14:03:43 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 936F18285212;
 Thu, 14 Sep 2023 14:03:43 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6e039156-5331-11ee-8788-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 28ACB828518F
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694718224; bh=Gnl49AEJ/FOLUTm9wy9k18AKkg2YU5LpKhvYO/LfVLc=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=roNhfZgJ5ZSHsUEdaTMxFVZl3PuRnAX+eKKThJotVZLVD4NzEXOss/MIvzFYtid9s
	 Sm5gGygYkpgYxb+QBS1LprDCk5FGck+epJ9QwL/iFc32T/e2ZatxeghbeYXXquLFsW
	 7spQlP4vDNsEv0wv5E05FqmOZgWNGJHHX+XsMI7I=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v6 3/4] xen/ppc: Add stub function and symbol definitions
Date: Thu, 14 Sep 2023 14:03:33 -0500
Message-Id: <e9791d98865abfc56ff0d5462afa30449fd3303c.1694717278.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694717278.git.sanastasio@raptorengineering.com>
References: <cover.1694717278.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Add stub function and symbol definitions required by common code. If the
file that the definition is supposed to be located in doesn't already
exist yet, temporarily place its definition in the new stubs.c

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
v6: No changes.

v5: No changes.

v4: No changes.

v3:
  - (stubs.c) Drop ack_none hook definition

v2:
  - Use BUG_ON("unimplemented") instead of BUG() for unimplemented functions
    to make searching easier.
  - (mm-radix.c) Drop total_pages definition
  - (mm-radix.c) Move __read_mostly from after variable name to before it in
    declaration of `frametable_base_pdx`
  - (setup.c) Fix include order
  - (stubs.c) Drop stub .end hw_irq_controller hook

 xen/arch/ppc/Makefile   |   1 +
 xen/arch/ppc/mm-radix.c |  42 +++++
 xen/arch/ppc/setup.c    |   8 +
 xen/arch/ppc/stubs.c    | 339 ++++++++++++++++++++++++++++++++++++++++
 4 files changed, 390 insertions(+)
 create mode 100644 xen/arch/ppc/stubs.c

diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile
index b3205b8f7a..6d5569ff64 100644
--- a/xen/arch/ppc/Makefile
+++ b/xen/arch/ppc/Makefile
@@ -4,6 +4,7 @@ obj-$(CONFIG_EARLY_PRINTK) += early_printk.init.o
 obj-y += mm-radix.o
 obj-y += opal.o
 obj-y += setup.o
+obj-y += stubs.o
 obj-y += tlb-radix.o

 $(TARGET): $(TARGET)-syms
diff --git a/xen/arch/ppc/mm-radix.c b/xen/arch/ppc/mm-radix.c
index 06129cef9c..11d0f27b60 100644
--- a/xen/arch/ppc/mm-radix.c
+++ b/xen/arch/ppc/mm-radix.c
@@ -265,3 +265,45 @@ void __init setup_initial_pagetables(void)
     /* Turn on the MMU */
     enable_mmu();
 }
+
+/*
+ * TODO: Implement the functions below
+ */
+unsigned long __read_mostly frametable_base_pdx;
+
+void put_page(struct page_info *p)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_dump_shared_mem_info(void)
+{
+    BUG_ON("unimplemented");
+}
+
+int xenmem_add_to_physmap_one(struct domain *d,
+                              unsigned int space,
+                              union add_to_physmap_extra extra,
+                              unsigned long idx,
+                              gfn_t gfn)
+{
+    BUG_ON("unimplemented");
+}
+
+int destroy_xen_mappings(unsigned long s, unsigned long e)
+{
+    BUG_ON("unimplemented");
+}
+
+int map_pages_to_xen(unsigned long virt,
+                     mfn_t mfn,
+                     unsigned long nr_mfns,
+                     unsigned int flags)
+{
+    BUG_ON("unimplemented");
+}
+
+int __init populate_pt_range(unsigned long virt, unsigned long nr_mfns)
+{
+    BUG_ON("unimplemented");
+}
diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c
index 3fc7705d9b..959c1454a0 100644
--- a/xen/arch/ppc/setup.c
+++ b/xen/arch/ppc/setup.c
@@ -1,5 +1,8 @@
 /* SPDX-License-Identifier: GPL-2.0-or-later */
 #include <xen/init.h>
+#include <xen/lib.h>
+#include <xen/mm.h>
+#include <public/version.h>
 #include <asm/boot.h>
 #include <asm/early_printk.h>
 #include <asm/mm.h>
@@ -33,3 +36,8 @@ void __init noreturn start_xen(unsigned long r3, unsigned long r4,

     unreachable();
 }
+
+void arch_get_xen_caps(xen_capabilities_info_t *info)
+{
+    BUG_ON("unimplemented");
+}
diff --git a/xen/arch/ppc/stubs.c b/xen/arch/ppc/stubs.c
new file mode 100644
index 0000000000..4c276b0e39
--- /dev/null
+++ b/xen/arch/ppc/stubs.c
@@ -0,0 +1,339 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#include <xen/cpumask.h>
+#include <xen/domain.h>
+#include <xen/irq.h>
+#include <xen/nodemask.h>
+#include <xen/time.h>
+#include <public/domctl.h>
+#include <public/vm_event.h>
+
+#include <asm/current.h>
+
+/* smpboot.c */
+
+cpumask_t cpu_online_map;
+cpumask_t cpu_present_map;
+cpumask_t cpu_possible_map;
+
+/* ID of the PCPU we're running on */
+DEFINE_PER_CPU(unsigned int, cpu_id);
+/* XXX these seem awfully x86ish... */
+/* representing HT siblings of each logical CPU */
+DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_sibling_mask);
+/* representing HT and core siblings of each logical CPU */
+DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_core_mask);
+
+nodemask_t __read_mostly node_online_map = { { [0] = 1UL } };
+
+/* time.c */
+
+s_time_t get_s_time(void)
+{
+    BUG_ON("unimplemented");
+}
+
+int reprogram_timer(s_time_t timeout)
+{
+    BUG_ON("unimplemented");
+}
+
+void send_timer_event(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+/* traps.c */
+
+void show_execution_state(const struct cpu_user_regs *regs)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_hypercall_tasklet_result(struct vcpu *v, long res)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_show_execution_state(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+/* shutdown.c */
+
+void machine_restart(unsigned int delay_millisecs)
+{
+    BUG_ON("unimplemented");
+}
+
+void machine_halt(void)
+{
+    BUG_ON("unimplemented");
+}
+
+/* vm_event.c */
+
+void vm_event_fill_regs(vm_event_request_t *req)
+{
+    BUG_ON("unimplemented");
+}
+
+void vm_event_set_registers(struct vcpu *v, vm_event_response_t *rsp)
+{
+    BUG_ON("unimplemented");
+}
+
+void vm_event_monitor_next_interrupt(struct vcpu *v)
+{
+    /* Not supported on PPC. */
+}
+
+/* domctl.c */
+void arch_get_domain_info(const struct domain *d,
+                          struct xen_domctl_getdomaininfo *info)
+{
+    BUG_ON("unimplemented");
+}
+
+/* monitor.c */
+
+int arch_monitor_domctl_event(struct domain *d,
+                              struct xen_domctl_monitor_op *mop)
+{
+    BUG_ON("unimplemented");
+}
+
+/* smp.c */
+
+void arch_flush_tlb_mask(const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+void smp_send_event_check_mask(const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+void smp_send_call_function_mask(const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+/* irq.c */
+
+struct pirq *alloc_pirq_struct(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+int pirq_guest_bind(struct vcpu *v, struct pirq *pirq, int will_share)
+{
+    BUG_ON("unimplemented");
+}
+
+void pirq_guest_unbind(struct domain *d, struct pirq *pirq)
+{
+    BUG_ON("unimplemented");
+}
+
+void pirq_set_affinity(struct domain *d, int pirq, const cpumask_t *mask)
+{
+    BUG_ON("unimplemented");
+}
+
+hw_irq_controller no_irq_type = {
+    .typename = "none",
+    .startup = irq_startup_none,
+    .shutdown = irq_shutdown_none,
+    .enable = irq_enable_none,
+    .disable = irq_disable_none,
+};
+
+int arch_init_one_irq_desc(struct irq_desc *desc)
+{
+    BUG_ON("unimplemented");
+}
+
+void smp_send_state_dump(unsigned int cpu)
+{
+    BUG_ON("unimplemented");
+}
+
+/* domain.c */
+
+DEFINE_PER_CPU(struct vcpu *, curr_vcpu);
+unsigned long __per_cpu_offset[NR_CPUS];
+
+void context_switch(struct vcpu *prev, struct vcpu *next)
+{
+    BUG_ON("unimplemented");
+}
+
+void continue_running(struct vcpu *same)
+{
+    BUG_ON("unimplemented");
+}
+
+void sync_local_execstate(void)
+{
+    BUG_ON("unimplemented");
+}
+
+void sync_vcpu_execstate(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void startup_cpu_idle_loop(void)
+{
+    BUG_ON("unimplemented");
+}
+
+void free_domain_struct(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void dump_pageframe_info(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void free_vcpu_struct(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_vcpu_create(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_vcpu_destroy(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_switch_to_aarch64_mode(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_sanitise_domain_config(struct xen_domctl_createdomain *config)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_domain_create(struct domain *d,
+                       struct xen_domctl_createdomain *config,
+                       unsigned int flags)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_domain_teardown(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_destroy(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_shutdown(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_pause(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_unpause(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_domain_soft_reset(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_domain_creation_finished(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_set_info_guest(struct vcpu *v, vcpu_guest_context_u c)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_initialise_vcpu(struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
+{
+    BUG_ON("unimplemented");
+}
+
+int arch_vcpu_reset(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+int domain_relinquish_resources(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_dump_domain_info(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+void arch_dump_vcpu_info(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_mark_events_pending(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_update_evtchn_irq(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_block_unless_event_pending(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+void vcpu_kick(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+struct domain *alloc_domain_struct(void)
+{
+    BUG_ON("unimplemented");
+}
+
+struct vcpu *alloc_vcpu_struct(const struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+unsigned long
+hypercall_create_continuation(unsigned int op, const char *format, ...)
+{
+    BUG_ON("unimplemented");
+}
+
+int __init parse_arch_dom0_param(const char *s, const char *e)
+{
+    BUG_ON("unimplemented");
+}
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 19:03:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 19:03:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602640.939325 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrcx-000281-Fd; Thu, 14 Sep 2023 19:03:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602640.939325; Thu, 14 Sep 2023 19:03:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrcx-00027u-Bk; Thu, 14 Sep 2023 19:03:47 +0000
Received: by outflank-mailman (input) for mailman id 602640;
 Thu, 14 Sep 2023 19:03:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PYVF=E6=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qgrcw-00027n-Ve
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 19:03:46 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6d3f5d99-5331-11ee-8788-cb3800f73035;
 Thu, 14 Sep 2023 21:03:45 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 10AE38285AF8;
 Thu, 14 Sep 2023 14:03:44 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id Qb2nJYNDubs5; Thu, 14 Sep 2023 14:03:42 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id B7692828518F;
 Thu, 14 Sep 2023 14:03:42 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id N5a6YuRu3C99; Thu, 14 Sep 2023 14:03:42 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id DF0168285146;
 Thu, 14 Sep 2023 14:03:41 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6d3f5d99-5331-11ee-8788-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com B7692828518F
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694718222; bh=SlcfViZ8PVobFSUAn5b3XiYb5tQIcuHoy2EfPPCIYK8=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=AMTf/+narDyb8zbKmHsr+LVCd2u/gAaCeVEeBAMt2M+y+F7+WUTdPCf5u2vDwfjk3
	 938/7Cc0tJWtdYN6ZBDXGWoEWxNMS+z0T5WHpOzriCD1rYNP5XMGjBRAwxw2Jnv8HK
	 faQ8c8oSoQiwJslESmq6gy+bkNV3ojXXmJHydApE=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>
Subject: [PATCH v6 0/4] ppc: Enable full Xen build
Date: Thu, 14 Sep 2023 14:03:30 -0500
Message-Id: <cover.1694717278.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Hello all,

This patch series performs all of the additions necessary to drop the
build overrides for PPC and enable the full Xen build. Except in cases
where compatibile implementations already exist (e.g. bitops.h), the
newly added definitions are simple, unimplemented stubs that just call
BUG_ON("unimplemented").

Thanks,
Shawn

Shawn Anastasio (4):
  xen/ppc: Implement bitops.h
  xen/ppc: Define minimal stub headers required for full build
  xen/ppc: Add stub function and symbol definitions
  xen/ppc: Enable full Xen build

 xen/arch/ppc/Kconfig                     |   1 +
 xen/arch/ppc/Makefile                    |  17 +-
 xen/arch/ppc/arch.mk                     |   3 -
 xen/arch/ppc/include/asm/Makefile        |   2 +
 xen/arch/ppc/include/asm/altp2m.h        |  25 ++
 xen/arch/ppc/include/asm/bitops.h        | 332 +++++++++++++++++++++-
 xen/arch/ppc/include/asm/bug.h           |   9 +
 xen/arch/ppc/include/asm/cache.h         |   2 +
 xen/arch/ppc/include/asm/config.h        |  10 +
 xen/arch/ppc/include/asm/cpufeature.h    |  10 +
 xen/arch/ppc/include/asm/current.h       |  43 +++
 xen/arch/ppc/include/asm/delay.h         |  12 +
 xen/arch/ppc/include/asm/device.h        |  53 ++++
 xen/arch/ppc/include/asm/div64.h         |  14 +
 xen/arch/ppc/include/asm/domain.h        |  47 ++++
 xen/arch/ppc/include/asm/event.h         |  36 +++
 xen/arch/ppc/include/asm/flushtlb.h      |  24 ++
 xen/arch/ppc/include/asm/grant_table.h   |   5 +
 xen/arch/ppc/include/asm/guest_access.h  |  68 +++++
 xen/arch/ppc/include/asm/guest_atomics.h |  23 ++
 xen/arch/ppc/include/asm/hardirq.h       |  19 ++
 xen/arch/ppc/include/asm/hypercall.h     |   5 +
 xen/arch/ppc/include/asm/io.h            |  16 ++
 xen/arch/ppc/include/asm/iocap.h         |   8 +
 xen/arch/ppc/include/asm/iommu.h         |   8 +
 xen/arch/ppc/include/asm/irq.h           |  33 +++
 xen/arch/ppc/include/asm/mem_access.h    |   5 +
 xen/arch/ppc/include/asm/mm.h            | 243 +++++++++++++++-
 xen/arch/ppc/include/asm/monitor.h       |  43 +++
 xen/arch/ppc/include/asm/nospec.h        |  15 +
 xen/arch/ppc/include/asm/numa.h          |  26 ++
 xen/arch/ppc/include/asm/p2m.h           |  95 +++++++
 xen/arch/ppc/include/asm/page.h          |  18 ++
 xen/arch/ppc/include/asm/paging.h        |   7 +
 xen/arch/ppc/include/asm/pci.h           |   7 +
 xen/arch/ppc/include/asm/percpu.h        |  24 ++
 xen/arch/ppc/include/asm/processor.h     |  10 +
 xen/arch/ppc/include/asm/random.h        |   9 +
 xen/arch/ppc/include/asm/setup.h         |   6 +
 xen/arch/ppc/include/asm/smp.h           |  18 ++
 xen/arch/ppc/include/asm/softirq.h       |   8 +
 xen/arch/ppc/include/asm/spinlock.h      |  15 +
 xen/arch/ppc/include/asm/system.h        | 219 ++++++++++++++-
 xen/arch/ppc/include/asm/time.h          |  23 ++
 xen/arch/ppc/include/asm/xenoprof.h      |   0
 xen/arch/ppc/mm-radix.c                  |  44 ++-
 xen/arch/ppc/setup.c                     |   8 +
 xen/arch/ppc/stubs.c                     | 339 +++++++++++++++++++++++
 xen/arch/ppc/tlb-radix.c                 |   2 +-
 xen/include/public/hvm/save.h            |   2 +
 xen/include/public/pmu.h                 |   2 +
 xen/include/public/xen.h                 |   2 +
 52 files changed, 2004 insertions(+), 11 deletions(-)
 create mode 100644 xen/arch/ppc/include/asm/Makefile
 create mode 100644 xen/arch/ppc/include/asm/altp2m.h
 create mode 100644 xen/arch/ppc/include/asm/cpufeature.h
 create mode 100644 xen/arch/ppc/include/asm/current.h
 create mode 100644 xen/arch/ppc/include/asm/delay.h
 create mode 100644 xen/arch/ppc/include/asm/device.h
 create mode 100644 xen/arch/ppc/include/asm/div64.h
 create mode 100644 xen/arch/ppc/include/asm/domain.h
 create mode 100644 xen/arch/ppc/include/asm/event.h
 create mode 100644 xen/arch/ppc/include/asm/flushtlb.h
 create mode 100644 xen/arch/ppc/include/asm/grant_table.h
 create mode 100644 xen/arch/ppc/include/asm/guest_access.h
 create mode 100644 xen/arch/ppc/include/asm/guest_atomics.h
 create mode 100644 xen/arch/ppc/include/asm/hardirq.h
 create mode 100644 xen/arch/ppc/include/asm/hypercall.h
 create mode 100644 xen/arch/ppc/include/asm/io.h
 create mode 100644 xen/arch/ppc/include/asm/iocap.h
 create mode 100644 xen/arch/ppc/include/asm/iommu.h
 create mode 100644 xen/arch/ppc/include/asm/irq.h
 create mode 100644 xen/arch/ppc/include/asm/mem_access.h
 create mode 100644 xen/arch/ppc/include/asm/monitor.h
 create mode 100644 xen/arch/ppc/include/asm/nospec.h
 create mode 100644 xen/arch/ppc/include/asm/numa.h
 create mode 100644 xen/arch/ppc/include/asm/p2m.h
 create mode 100644 xen/arch/ppc/include/asm/paging.h
 create mode 100644 xen/arch/ppc/include/asm/pci.h
 create mode 100644 xen/arch/ppc/include/asm/percpu.h
 create mode 100644 xen/arch/ppc/include/asm/random.h
 create mode 100644 xen/arch/ppc/include/asm/setup.h
 create mode 100644 xen/arch/ppc/include/asm/smp.h
 create mode 100644 xen/arch/ppc/include/asm/softirq.h
 create mode 100644 xen/arch/ppc/include/asm/spinlock.h
 create mode 100644 xen/arch/ppc/include/asm/time.h
 create mode 100644 xen/arch/ppc/include/asm/xenoprof.h
 create mode 100644 xen/arch/ppc/stubs.c

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 19:03:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 19:03:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602642.939344 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrcz-0002ch-WA; Thu, 14 Sep 2023 19:03:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602642.939344; Thu, 14 Sep 2023 19:03:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrcz-0002ca-TB; Thu, 14 Sep 2023 19:03:49 +0000
Received: by outflank-mailman (input) for mailman id 602642;
 Thu, 14 Sep 2023 19:03:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PYVF=E6=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qgrcy-0002IU-BO
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 19:03:48 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6d95965e-5331-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 21:03:45 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 04AF98285A2E;
 Thu, 14 Sep 2023 14:03:45 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 9cPvSY9x485Z; Thu, 14 Sep 2023 14:03:44 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 572B48285972;
 Thu, 14 Sep 2023 14:03:44 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id zR5FLeRV9JEH; Thu, 14 Sep 2023 14:03:44 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id DB1668285899;
 Thu, 14 Sep 2023 14:03:43 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6d95965e-5331-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 572B48285972
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694718224; bh=cF5IvHr5u7imGadcwYNiu5y563SLZGH4suAc9S6xZk0=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=KWDQbCV9ocOyFIVElNWjobXz/rH9Ru5+Wn0XCxDofZRZ1ZaBRHqk9Go7jIpbbHSqO
	 lRiLx01n1TEd7edDAk77VHIR2phkFhXzwTMMyErUD8rwcVxenVMHrOVUFLaRTJarYV
	 MV9X0WUjdfgnTMr8iOOv2dcBo5hUo79eyHIpusa8=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v6 4/4] xen/ppc: Enable full Xen build
Date: Thu, 14 Sep 2023 14:03:34 -0500
Message-Id: <ae5a07b0c1761d79d111e1fc1d0f911425ea191a.1694717278.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694717278.git.sanastasio@raptorengineering.com>
References: <cover.1694717278.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Bring ppc's Makefile and arch.mk in line with arm and x86 to disable the
build overrides and enable the full Xen build.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
 xen/arch/ppc/Makefile | 16 +++++++++++++++-
 xen/arch/ppc/arch.mk  |  3 ---
 2 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/xen/arch/ppc/Makefile b/xen/arch/ppc/Makefile
index 6d5569ff64..71feb5e2c4 100644
--- a/xen/arch/ppc/Makefile
+++ b/xen/arch/ppc/Makefile
@@ -11,10 +11,24 @@ $(TARGET): $(TARGET)-syms
 	cp -f $< $@
 
 $(TARGET)-syms: $(objtree)/prelink.o $(obj)/xen.lds
-	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) -o $@
+	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< \
+	    $(objtree)/common/symbols-dummy.o -o $(dot-target).0
+	$(NM) -pa --format=sysv $(dot-target).0 \
+		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
+		> $(dot-target).0.S
+	$(MAKE) $(build)=$(@D) $(dot-target).0.o
+	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< \
+	    $(dot-target).0.o -o $(dot-target).1
+	$(NM) -pa --format=sysv $(dot-target).1 \
+		| $(objtree)/tools/symbols $(all_symbols) --sysv --sort \
+		> $(dot-target).1.S
+	$(MAKE) $(build)=$(@D) $(dot-target).1.o
+	$(LD) $(XEN_LDFLAGS) -T $(obj)/xen.lds -N $< $(build_id_linker) \
+	    $(dot-target).1.o -o $@
 	$(NM) -pa --format=sysv $@ \
 		| $(objtree)/tools/symbols --all-symbols --xensyms --sysv --sort \
 		> $@.map
+	rm -f $(@D)/.$(@F).[0-9]*
 
 $(obj)/xen.lds: $(src)/xen.lds.S FORCE
 	$(call if_changed_dep,cpp_lds_S)
diff --git a/xen/arch/ppc/arch.mk b/xen/arch/ppc/arch.mk
index d05cbf1df5..917ad0e6a8 100644
--- a/xen/arch/ppc/arch.mk
+++ b/xen/arch/ppc/arch.mk
@@ -7,6 +7,3 @@ CFLAGS += -m64 -mlittle-endian -mcpu=$(ppc-march-y)
 CFLAGS += -mstrict-align -mcmodel=medium -mabi=elfv2 -fPIC -mno-altivec -mno-vsx -msoft-float
 
 LDFLAGS += -m elf64lppc
-
-# TODO: Drop override when more of the build is working
-override ALL_OBJS-y = arch/$(SRCARCH)/built_in.o common/libfdt/built_in.o lib/built_in.o
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 19:03:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 19:03:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602643.939351 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrd0-0002gF-BS; Thu, 14 Sep 2023 19:03:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602643.939351; Thu, 14 Sep 2023 19:03:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrd0-0002fM-53; Thu, 14 Sep 2023 19:03:50 +0000
Received: by outflank-mailman (input) for mailman id 602643;
 Thu, 14 Sep 2023 19:03:49 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PYVF=E6=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qgrcz-0002IU-0y
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 19:03:49 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6d856f67-5331-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 21:03:45 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id DF8888285212;
 Thu, 14 Sep 2023 14:03:44 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id jQfIU8PxyYcS; Thu, 14 Sep 2023 14:03:43 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 02AC28285A2E;
 Thu, 14 Sep 2023 14:03:43 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id cTSnquN6p1NZ; Thu, 14 Sep 2023 14:03:42 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id A27888285212;
 Thu, 14 Sep 2023 14:03:42 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6d856f67-5331-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 02AC28285A2E
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694718223; bh=YqWpi95sOQcLMwxuQcOpynCFfcQBaws8ez62Tor+SXM=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=e8Xki5827SalMTbLxHPPb9iZbSxUKvjTO3ln+/mWETFNb9d82SLy42D/Jo4fJd9rn
	 u67a0UgsVmhrkCEFmIM0TXgfY+WWGSi2LYYWPINB0HNlpMbKqxsN7bPXVNaQNA0a/I
	 fpOq2IHdj94J43LADSwD7gnhDbDrbwrcBmiE0Jqg=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH v6 1/4] xen/ppc: Implement bitops.h
Date: Thu, 14 Sep 2023 14:03:31 -0500
Message-Id: <b0a77fda0c663ecfbf40d177f275a51817efb28e.1694717278.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694717278.git.sanastasio@raptorengineering.com>
References: <cover.1694717278.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Implement bitops.h, based on Linux's implementation as of commit
5321d1b1afb9a17302c6cec79f0cbf823eb0d3fc. Though it is based off of
Linux's implementation, this code diverges significantly in a number of
ways:
  - Bitmap entries changed to 32-bit words to match X86 and Arm on Xen
  - PPC32-specific code paths dropped
  - Formatting completely re-done to more closely line up with Xen.
    Including 4 space indentation.
  - Use GCC's __builtin_popcount* for hweight* implementation

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
v6:
  - Fix spacing of line-continuing backslashes in DEFINE_*OP macros
  - Drop unused prefix parameter from DEFINE_*OP macros
  - Reformat argument list in calls to test_and_{set,clear}_bits.

v5:
  - Switch lingering ulong bitop parameters/return values to uint.

v4:
  - Mention __builtin_popcount impelmentation of hweight* in message
  - Change type of BITOP_MASK expression from unsigned long to unsigned
    int
  - Fix remaining underscore-prefixed macro params/vars
  - Fix line wrapping in test_and_clear_bit{,s}
  - Change type of test_and_clear_bits' pointer parameter from void *
    to unsigned int *. This was already done for other functions but
    missed here.
  - De-macroize test_and_set_bits.
  - Fix formatting of ffs{,l} macro's unary operators
  - Drop extra blank in ffz() macro definition

v3:
  - Fix style of inline asm blocks.
  - Fix underscore-prefixed macro parameters/variables
  - Use __builtin_popcount for hweight* implementation
  - Update C functions to use proper Xen coding style

v2:
  - Clarify changes from Linux implementation in commit message
  - Use PPC_ATOMIC_{ENTRY,EXIT}_BARRIER macros from <asm/memory.h> instead
    of hardcoded "sync" instructions in inline assembly blocks.
  - Fix macro line-continuing backslash spacing
  - Fix hard-tab usage in find_*_bit C functions.

 xen/arch/ppc/include/asm/bitops.h | 332 +++++++++++++++++++++++++++++-
 1 file changed, 329 insertions(+), 3 deletions(-)

diff --git a/xen/arch/ppc/include/asm/bitops.h b/xen/arch/ppc/include/asm/bitops.h
index 548e97b414..82a097e401 100644
--- a/xen/arch/ppc/include/asm/bitops.h
+++ b/xen/arch/ppc/include/asm/bitops.h
@@ -1,9 +1,335 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Adapted from Linux's arch/powerpc/include/asm/bitops.h.
+ *
+ * Merged version by David Gibson <david@gibson.dropbear.id.au>.
+ * Based on ppc64 versions by: Dave Engebretsen, Todd Inglett, Don
+ * Reed, Pat McCarthy, Peter Bergner, Anton Blanchard.  They
+ * originally took it from the ppc32 code.
+ */
 #ifndef _ASM_PPC_BITOPS_H
 #define _ASM_PPC_BITOPS_H

+#include <asm/memory.h>
+
+#define __set_bit(n, p)         set_bit(n, p)
+#define __clear_bit(n, p)       clear_bit(n, p)
+
+#define BITOP_BITS_PER_WORD     32
+#define BITOP_MASK(nr)          (1U << ((nr) % BITOP_BITS_PER_WORD))
+#define BITOP_WORD(nr)          ((nr) / BITOP_BITS_PER_WORD)
+#define BITS_PER_BYTE           8
+
 /* PPC bit number conversion */
-#define PPC_BITLSHIFT(be)	(BITS_PER_LONG - 1 - (be))
-#define PPC_BIT(bit)		(1UL << PPC_BITLSHIFT(bit))
-#define PPC_BITMASK(bs, be)	((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
+#define PPC_BITLSHIFT(be)    (BITS_PER_LONG - 1 - (be))
+#define PPC_BIT(bit)         (1UL << PPC_BITLSHIFT(bit))
+#define PPC_BITMASK(bs, be)  ((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
+
+/* Macro for generating the ***_bits() functions */
+#define DEFINE_BITOP(fn, op)                                                   \
+static inline void fn(unsigned int mask,                                       \
+                      volatile unsigned int *p_)                               \
+{                                                                              \
+    unsigned int old;                                                          \
+    unsigned int *p = (unsigned int *)p_;                                      \
+    asm volatile ( "1: lwarx %0,0,%3,0\n"                                      \
+                   #op "%I2 %0,%0,%2\n"                                        \
+                   "stwcx. %0,0,%3\n"                                          \
+                   "bne- 1b\n"                                                 \
+                   : "=&r" (old), "+m" (*p)                                    \
+                   : "rK" (mask), "r" (p)                                      \
+                   : "cc", "memory" );                                         \
+}
+
+DEFINE_BITOP(set_bits, or)
+DEFINE_BITOP(change_bits, xor)
+
+#define DEFINE_CLROP(fn)                                                       \
+static inline void fn(unsigned int mask, volatile unsigned int *p_)            \
+{                                                                              \
+    unsigned int old;                                                          \
+    unsigned int *p = (unsigned int *)p_;                                      \
+    asm volatile ( "1: lwarx %0,0,%3,0\n"                                      \
+                   "andc %0,%0,%2\n"                                           \
+                   "stwcx. %0,0,%3\n"                                          \
+                   "bne- 1b\n"                                                 \
+                   : "=&r" (old), "+m" (*p)                                    \
+                   : "r" (mask), "r" (p)                                       \
+                   : "cc", "memory" );                                         \
+}
+
+DEFINE_CLROP(clear_bits)
+
+static inline void set_bit(int nr, volatile void *addr)
+{
+    set_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
+}
+static inline void clear_bit(int nr, volatile void *addr)
+{
+    clear_bits(BITOP_MASK(nr), (volatile unsigned int *)addr + BITOP_WORD(nr));
+}
+
+/**
+ * test_bit - Determine whether a bit is set
+ * @nr: bit number to test
+ * @addr: Address to start counting from
+ */
+static inline int test_bit(int nr, const volatile void *addr)
+{
+    const volatile unsigned int *p = addr;
+    return 1 & (p[BITOP_WORD(nr)] >> (nr & (BITOP_BITS_PER_WORD - 1)));
+}
+
+static inline unsigned int test_and_clear_bits(
+    unsigned int mask,
+    volatile unsigned int *p)
+{
+    unsigned int old, t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%3,0\n"
+                   "andc %1,%0,%2\n"
+                   "stwcx. %1,0,%3\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (old), "=&r" (t)
+                   : "r" (mask), "r" (p)
+                   : "cc", "memory" );
+
+    return (old & mask);
+}
+
+static inline int test_and_clear_bit(unsigned int nr,
+                                     volatile void *addr)
+{
+    return test_and_clear_bits(
+        BITOP_MASK(nr),
+        (volatile unsigned int *)addr + BITOP_WORD(nr)) != 0;
+}
+
+static inline unsigned int test_and_set_bits(
+    unsigned int mask,
+    volatile unsigned int *p)
+{
+    unsigned int old, t;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx %0,0,%3,0\n"
+                   "or%I2 %1,%0,%2\n"
+                   "stwcx. %1,0,%3\n"
+                   "bne- 1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER
+                   : "=&r" (old), "=&r" (t)
+                   : "rK" (mask), "r" (p)
+                   : "cc", "memory" );
+
+    return (old & mask);
+}
+
+static inline int test_and_set_bit(unsigned int nr, volatile void *addr)
+{
+    return test_and_set_bits(
+        BITOP_MASK(nr),
+        (volatile unsigned int *)addr + BITOP_WORD(nr)) != 0;
+}
+
+/**
+ * __test_and_set_bit - Set a bit and return its old value
+ * @nr: Bit to set
+ * @addr: Address to count from
+ *
+ * This operation is non-atomic and can be reordered.
+ * If two examples of this operation race, one can appear to succeed
+ * but actually fail.  You must protect multiple accesses with a lock.
+ */
+static inline int __test_and_set_bit(int nr, volatile void *addr)
+{
+    unsigned int mask = BITOP_MASK(nr);
+    volatile unsigned int *p = ((volatile unsigned int *)addr) + BITOP_WORD(nr);
+    unsigned int old = *p;
+
+    *p = old | mask;
+    return (old & mask) != 0;
+}
+
+/**
+ * __test_and_clear_bit - Clear a bit and return its old value
+ * @nr: Bit to clear
+ * @addr: Address to count from
+ *
+ * This operation is non-atomic and can be reordered.
+ * If two examples of this operation race, one can appear to succeed
+ * but actually fail.  You must protect multiple accesses with a lock.
+ */
+static inline int __test_and_clear_bit(int nr, volatile void *addr)
+{
+    unsigned int mask = BITOP_MASK(nr);
+    volatile unsigned int *p = ((volatile unsigned int *)addr) + BITOP_WORD(nr);
+    unsigned int old = *p;
+
+    *p = old & ~mask;
+    return (old & mask) != 0;
+}
+
+#define flsl(x) generic_flsl(x)
+#define fls(x) generic_fls(x)
+#define ffs(x) ({ unsigned int t_ = (x); fls(t_ & -t_); })
+#define ffsl(x) ({ unsigned long t_ = (x); flsl(t_ & -t_); })
+
+/* Based on linux/include/asm-generic/bitops/ffz.h */
+/*
+ * ffz - find first zero in word.
+ * @word: The word to search
+ *
+ * Undefined if no zero exists, so code should check against ~0UL first.
+ */
+#define ffz(x) __ffs(~(x))
+
+/**
+ * hweightN - returns the hamming weight of a N-bit word
+ * @x: the word to weigh
+ *
+ * The Hamming Weight of a number is the total number of bits set in it.
+ */
+#define hweight64(x) __builtin_popcountll(x)
+#define hweight32(x) __builtin_popcount(x)
+#define hweight16(x) __builtin_popcount((uint16_t)(x))
+#define hweight8(x)  __builtin_popcount((uint8_t)(x))
+
+/* Based on linux/include/asm-generic/bitops/builtin-__ffs.h */
+/**
+ * __ffs - find first bit in word.
+ * @word: The word to search
+ *
+ * Undefined if no bit exists, so code should check against 0 first.
+ */
+static always_inline unsigned long __ffs(unsigned long word)
+{
+    return __builtin_ctzl(word);
+}
+
+/**
+ * find_first_set_bit - find the first set bit in @word
+ * @word: the word to search
+ *
+ * Returns the bit-number of the first set bit (first bit being 0).
+ * The input must *not* be zero.
+ */
+#define find_first_set_bit(x) (ffsl(x) - 1)
+
+/*
+ * Find the first set bit in a memory region.
+ */
+static inline unsigned long find_first_bit(const unsigned long *addr,
+                                           unsigned long size)
+{
+    const unsigned long *p = addr;
+    unsigned long result = 0;
+    unsigned long tmp;
+
+    while ( size & ~(BITS_PER_LONG - 1) )
+    {
+        if ( (tmp = *(p++)) )
+            goto found;
+        result += BITS_PER_LONG;
+        size -= BITS_PER_LONG;
+    }
+    if ( !size )
+        return result;
+
+    tmp = (*p) & (~0UL >> (BITS_PER_LONG - size));
+    if ( tmp == 0UL )         /* Are any bits set? */
+        return result + size; /* Nope. */
+ found:
+    return result + __ffs(tmp);
+}
+
+static inline unsigned long find_next_bit(const unsigned long *addr,
+                                          unsigned long size,
+                                          unsigned long offset)
+{
+    const unsigned long *p = addr + BITOP_WORD(offset);
+    unsigned long result = offset & ~(BITS_PER_LONG - 1);
+    unsigned long tmp;
+
+    if ( offset >= size )
+        return size;
+    size -= result;
+    offset %= BITS_PER_LONG;
+    if ( offset )
+    {
+        tmp = *(p++);
+        tmp &= (~0UL << offset);
+        if ( size < BITS_PER_LONG )
+            goto found_first;
+        if ( tmp )
+            goto found_middle;
+        size -= BITS_PER_LONG;
+        result += BITS_PER_LONG;
+    }
+    while ( size & ~(BITS_PER_LONG - 1) )
+    {
+        if ( (tmp = *(p++)) )
+            goto found_middle;
+        result += BITS_PER_LONG;
+        size -= BITS_PER_LONG;
+    }
+    if ( !size )
+        return result;
+    tmp = *p;
+
+ found_first:
+    tmp &= (~0UL >> (BITS_PER_LONG - size));
+    if ( tmp == 0UL )         /* Are any bits set? */
+        return result + size; /* Nope. */
+ found_middle:
+    return result + __ffs(tmp);
+}
+
+/*
+ * This implementation of find_{first,next}_zero_bit was stolen from
+ * Linus' asm-alpha/bitops.h.
+ */
+static inline unsigned long find_next_zero_bit(const unsigned long *addr,
+                                               unsigned long size,
+                                               unsigned long offset)
+{
+    const unsigned long *p = addr + BITOP_WORD(offset);
+    unsigned long result = offset & ~(BITS_PER_LONG - 1);
+    unsigned long tmp;
+
+    if ( offset >= size )
+        return size;
+    size -= result;
+    offset %= BITS_PER_LONG;
+    if ( offset )
+    {
+        tmp = *(p++);
+        tmp |= ~0UL >> (BITS_PER_LONG - offset);
+        if ( size < BITS_PER_LONG )
+            goto found_first;
+        if ( ~tmp )
+            goto found_middle;
+        size -= BITS_PER_LONG;
+        result += BITS_PER_LONG;
+    }
+    while ( size & ~(BITS_PER_LONG - 1) )
+    {
+        if ( ~(tmp = *(p++)) )
+            goto found_middle;
+        result += BITS_PER_LONG;
+        size -= BITS_PER_LONG;
+    }
+    if ( !size )
+        return result;
+    tmp = *p;
+
+ found_first:
+    tmp |= ~0UL << size;
+    if ( tmp == ~0UL )        /* Are any bits zero? */
+        return result + size; /* Nope. */
+ found_middle:
+    return result + ffz(tmp);
+}

 #endif /* _ASM_PPC_BITOPS_H */
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 19:03:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 19:03:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602644.939365 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrd4-0003CM-Kn; Thu, 14 Sep 2023 19:03:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602644.939365; Thu, 14 Sep 2023 19:03:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrd4-0003C9-Gw; Thu, 14 Sep 2023 19:03:54 +0000
Received: by outflank-mailman (input) for mailman id 602644;
 Thu, 14 Sep 2023 19:03:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PYVF=E6=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qgrd3-0002IU-GL
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 19:03:53 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7038b137-5331-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 21:03:50 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 679F3828518F;
 Thu, 14 Sep 2023 14:03:49 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id l1aDMFqzV3zZ; Thu, 14 Sep 2023 14:03:43 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id B65248285146;
 Thu, 14 Sep 2023 14:03:43 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id gUE60cktkiUb; Thu, 14 Sep 2023 14:03:43 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 04B538285AF8;
 Thu, 14 Sep 2023 14:03:42 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7038b137-5331-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com B65248285146
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694718223; bh=yCy+RPjL/9PkmqhNsBLgaO+dgLaUa2RdYl6KDC7Koyk=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=FwsQkMFyaOCoRrgHwCFdinZ5FnWrQ3eK3mxIuB/YM1MD2FL8zLMOT8Y/18Cd084Um
	 lFJw1T87t7IzvJTJKtt2D1NXygrWuSK63N8f9u6tPmJ3c3CsWXH0z9s9b6ERcBtjKE
	 EUma5dlSDoyxyWjVKWbrHqYAtOzMqa5DRXOHhgyE=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>
Subject: [PATCH v6 2/4] xen/ppc: Define minimal stub headers required for full build
Date: Thu, 14 Sep 2023 14:03:32 -0500
Message-Id: <89cd0644a9d1f4918f1611df74902e5666ce3bcd.1694717278.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1694717278.git.sanastasio@raptorengineering.com>
References: <cover.1694717278.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Additionally, change inclusion of asm/ headers to corresponding xen/ ones
throughout arch/ppc now that they work.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
v6: No changes.

v5:
  - Drop vm_event.h in favor of asm-generic variant
  - (numa.h) Fix lingering reference to Arm

v4:
  - (device.h) Fix underscore prefixes in DT_DEVICE_START macro
  - (mm.h) Fix padding blanks in newly added *_to_* macros
  - (mm.h) Drop inaccurate comment for virt_to_mfn/mfn_to_virt. The
    implementation of these macros remains unchanged.
  - (mm.h) s/zero/NULL/g in comment of page_info::v::inuse::domain
  - (mm.h) Use uint<N>_t instead of u<N> types in struct page_info
  - (p2m.h) Drop ARM-specific p2m_type_t enumerations
  - (system.h) Fix hard tabs in xchg() macro
  - (system.h) Add missing '\n' in build_xchg inline assembly before
    PPC_ATOMIC_EXIT_BARRIER.
  - (system.h) Fix formatting of switch statements.
  - (system.h) Fix formatting of cmpxchg() macro.
  - (system.h) Fix formatting of mb/rmb/wmb macros
  - (system.h) Drop dead !CONFIG_SMP definition of smp memory barriers
  - (system.h) Replace hand-coded asm memory barriers w/ barrier()
  - (time.h) Fix overly-long definition of force_update_vcpu_system_time

v3:
  - Drop procarea.h
  - Add SPDX headers to all headers touched or added by this patch
  - (altp2m.h) Use ASSERT_UNREACHABLE for function that is meant to
    stay unimplemented
  - (current.h) Consistently use plain C types in struct cpu_info
  - (current.h) Fix formatting of inline asm in get_cpu_info()
  - (device.h) Drop unnecessary DEVICE_GIC enumeration inherited from
    ARM
  - (div64.h) Drop underscore-prefixed macro variables, fix formatting
  - (domain.h) Drop unnecessary space after cast in guest_mode()
  - (guest_access.h) Clean up line wrapping of functions w/ many
    parameters
  - (guest_atomics.h) Avoid overly-long stub macros
  - (grant_table.h) Add include guard + SPDX
  - (hypercall.h) Add include guard + SPDX
  - (mem_access.h) Add include guard + SPDX
  - (mm.h) BUG_ON("unimplemented") for mfn_to_gfn/set_gpfn_from_mfn
  - (mm.h) Define PDX_GROUP_SHIFT in terms of XEN_PT_SHIFT_LVL_3
  - (monitor.h) BUG_ON("unimplemented") for arch_monitor_get_capabilities
  - (system.h) Fix formatting of inline assembly + macros
  - (time.h) Fix too-deep indentation

v2:
  - Use BUG_ON("unimplemented") instead of BUG() for unimplemented functions
    to make searching easier.
  - (altp2m.h) Drop Intel license in favor of an SPDX header
  - (altp2m.h) Drop <xen/sched.h> include in favor of <xen/bug.h> and
    forward declarations of struct domain and struct vcpu.
  - (bug.h) Add TODO comments above BUG and BUG_FRAME implementations
  - (desc.h) Drop desc.h
  - (mm.h) Drop <asm/config.h> include
  - (mm.h) Drop PGC_static definition
  - (mm.h) Drop max_page definition
  - (mm.h/mm-radix.c) Drop total_pages definition
  - (monitor.h) Drop <xen/sched.h> and <public/domctl.h> includes in favor
    of just <xen/errno.h>
  - (page.h) Drop PAGE_ALIGN definition
  - (percpu.h) Drop <xen/types.h> include
  - (procarea.h) Drop license text in favor of SPDX header
  - (procarea.h) Drop unnecessary forward declarations and <xen/types.h>
    include
  - (processor.h) Fix macro parameter naming (drop leading underscore)
  - (processor.h) Add explanation comment to cpu_relax()
  - (regs.h) Drop stray hunk adding <xen/types.h> include
  - (system.h) Drop license text in favor of SPDX header
  - (system.h) Drop <xen/config.h> include
  - (opal.c) Drop stray hunk changing opal.c includes

 xen/arch/ppc/Kconfig                     |   1 +
 xen/arch/ppc/include/asm/Makefile        |   2 +
 xen/arch/ppc/include/asm/altp2m.h        |  25 +++
 xen/arch/ppc/include/asm/bug.h           |   9 +
 xen/arch/ppc/include/asm/cache.h         |   2 +
 xen/arch/ppc/include/asm/config.h        |  10 +
 xen/arch/ppc/include/asm/cpufeature.h    |  10 +
 xen/arch/ppc/include/asm/current.h       |  43 ++++
 xen/arch/ppc/include/asm/delay.h         |  12 ++
 xen/arch/ppc/include/asm/device.h        |  53 +++++
 xen/arch/ppc/include/asm/div64.h         |  14 ++
 xen/arch/ppc/include/asm/domain.h        |  47 +++++
 xen/arch/ppc/include/asm/event.h         |  36 ++++
 xen/arch/ppc/include/asm/flushtlb.h      |  24 +++
 xen/arch/ppc/include/asm/grant_table.h   |   5 +
 xen/arch/ppc/include/asm/guest_access.h  |  68 +++++++
 xen/arch/ppc/include/asm/guest_atomics.h |  23 +++
 xen/arch/ppc/include/asm/hardirq.h       |  19 ++
 xen/arch/ppc/include/asm/hypercall.h     |   5 +
 xen/arch/ppc/include/asm/io.h            |  16 ++
 xen/arch/ppc/include/asm/iocap.h         |   8 +
 xen/arch/ppc/include/asm/iommu.h         |   8 +
 xen/arch/ppc/include/asm/irq.h           |  33 +++
 xen/arch/ppc/include/asm/mem_access.h    |   5 +
 xen/arch/ppc/include/asm/mm.h            | 243 ++++++++++++++++++++++-
 xen/arch/ppc/include/asm/monitor.h       |  43 ++++
 xen/arch/ppc/include/asm/nospec.h        |  15 ++
 xen/arch/ppc/include/asm/numa.h          |  26 +++
 xen/arch/ppc/include/asm/p2m.h           |  95 +++++++++
 xen/arch/ppc/include/asm/page.h          |  18 ++
 xen/arch/ppc/include/asm/paging.h        |   7 +
 xen/arch/ppc/include/asm/pci.h           |   7 +
 xen/arch/ppc/include/asm/percpu.h        |  24 +++
 xen/arch/ppc/include/asm/processor.h     |  10 +
 xen/arch/ppc/include/asm/random.h        |   9 +
 xen/arch/ppc/include/asm/setup.h         |   6 +
 xen/arch/ppc/include/asm/smp.h           |  18 ++
 xen/arch/ppc/include/asm/softirq.h       |   8 +
 xen/arch/ppc/include/asm/spinlock.h      |  15 ++
 xen/arch/ppc/include/asm/system.h        | 219 +++++++++++++++++++-
 xen/arch/ppc/include/asm/time.h          |  23 +++
 xen/arch/ppc/include/asm/xenoprof.h      |   0
 xen/arch/ppc/mm-radix.c                  |   2 +-
 xen/arch/ppc/tlb-radix.c                 |   2 +-
 xen/include/public/hvm/save.h            |   2 +
 xen/include/public/pmu.h                 |   2 +
 xen/include/public/xen.h                 |   2 +
 47 files changed, 1270 insertions(+), 4 deletions(-)
 create mode 100644 xen/arch/ppc/include/asm/Makefile
 create mode 100644 xen/arch/ppc/include/asm/altp2m.h
 create mode 100644 xen/arch/ppc/include/asm/cpufeature.h
 create mode 100644 xen/arch/ppc/include/asm/current.h
 create mode 100644 xen/arch/ppc/include/asm/delay.h
 create mode 100644 xen/arch/ppc/include/asm/device.h
 create mode 100644 xen/arch/ppc/include/asm/div64.h
 create mode 100644 xen/arch/ppc/include/asm/domain.h
 create mode 100644 xen/arch/ppc/include/asm/event.h
 create mode 100644 xen/arch/ppc/include/asm/flushtlb.h
 create mode 100644 xen/arch/ppc/include/asm/grant_table.h
 create mode 100644 xen/arch/ppc/include/asm/guest_access.h
 create mode 100644 xen/arch/ppc/include/asm/guest_atomics.h
 create mode 100644 xen/arch/ppc/include/asm/hardirq.h
 create mode 100644 xen/arch/ppc/include/asm/hypercall.h
 create mode 100644 xen/arch/ppc/include/asm/io.h
 create mode 100644 xen/arch/ppc/include/asm/iocap.h
 create mode 100644 xen/arch/ppc/include/asm/iommu.h
 create mode 100644 xen/arch/ppc/include/asm/irq.h
 create mode 100644 xen/arch/ppc/include/asm/mem_access.h
 create mode 100644 xen/arch/ppc/include/asm/monitor.h
 create mode 100644 xen/arch/ppc/include/asm/nospec.h
 create mode 100644 xen/arch/ppc/include/asm/numa.h
 create mode 100644 xen/arch/ppc/include/asm/p2m.h
 create mode 100644 xen/arch/ppc/include/asm/paging.h
 create mode 100644 xen/arch/ppc/include/asm/pci.h
 create mode 100644 xen/arch/ppc/include/asm/percpu.h
 create mode 100644 xen/arch/ppc/include/asm/random.h
 create mode 100644 xen/arch/ppc/include/asm/setup.h
 create mode 100644 xen/arch/ppc/include/asm/smp.h
 create mode 100644 xen/arch/ppc/include/asm/softirq.h
 create mode 100644 xen/arch/ppc/include/asm/spinlock.h
 create mode 100644 xen/arch/ppc/include/asm/time.h
 create mode 100644 xen/arch/ppc/include/asm/xenoprof.h

diff --git a/xen/arch/ppc/Kconfig b/xen/arch/ppc/Kconfig
index ab116ffb2a..a6eae597af 100644
--- a/xen/arch/ppc/Kconfig
+++ b/xen/arch/ppc/Kconfig
@@ -1,6 +1,7 @@
 config PPC
 	def_bool y
 	select HAS_DEVICE_TREE
+	select HAS_PDX

 config PPC64
 	def_bool y
diff --git a/xen/arch/ppc/include/asm/Makefile b/xen/arch/ppc/include/asm/Makefile
new file mode 100644
index 0000000000..821addb0bf
--- /dev/null
+++ b/xen/arch/ppc/include/asm/Makefile
@@ -0,0 +1,2 @@
+# SPDX-License-Identifier: GPL-2.0-only
+generic-y += vm_event.h
diff --git a/xen/arch/ppc/include/asm/altp2m.h b/xen/arch/ppc/include/asm/altp2m.h
new file mode 100644
index 0000000000..bd5c9aa415
--- /dev/null
+++ b/xen/arch/ppc/include/asm/altp2m.h
@@ -0,0 +1,25 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_ALTP2M_H__
+#define __ASM_PPC_ALTP2M_H__
+
+#include <xen/bug.h>
+
+struct domain;
+struct vcpu;
+
+/* Alternate p2m on/off per domain */
+static inline bool altp2m_active(const struct domain *d)
+{
+    /* Not implemented on PPC. */
+    return false;
+}
+
+/* Alternate p2m VCPU */
+static inline uint16_t altp2m_vcpu_idx(const struct vcpu *v)
+{
+    /* Not implemented on PPC, should not be reached. */
+    ASSERT_UNREACHABLE();
+    return 0;
+}
+
+#endif /* __ASM_PPC_ALTP2M_H__ */
diff --git a/xen/arch/ppc/include/asm/bug.h b/xen/arch/ppc/include/asm/bug.h
index e5e874b31c..35d4568402 100644
--- a/xen/arch/ppc/include/asm/bug.h
+++ b/xen/arch/ppc/include/asm/bug.h
@@ -4,6 +4,7 @@
 #define _ASM_PPC_BUG_H

 #include <xen/stringify.h>
+#include <asm/processor.h>

 /*
  * Power ISA guarantees that an instruction consisting of all zeroes is
@@ -15,4 +16,12 @@

 #define BUG_FN_REG r0

+/* TODO: implement this properly */
+#define BUG() do { \
+    die(); \
+} while (0)
+
+/* TODO: implement this properly */
+#define BUG_FRAME(type, line, ptr, second_frame, msg) do { } while (0)
+
 #endif /* _ASM_PPC_BUG_H */
diff --git a/xen/arch/ppc/include/asm/cache.h b/xen/arch/ppc/include/asm/cache.h
index 8a0a6b7b17..0d7323d789 100644
--- a/xen/arch/ppc/include/asm/cache.h
+++ b/xen/arch/ppc/include/asm/cache.h
@@ -3,4 +3,6 @@
 #ifndef _ASM_PPC_CACHE_H
 #define _ASM_PPC_CACHE_H

+#define __read_mostly __section(".data.read_mostly")
+
 #endif /* _ASM_PPC_CACHE_H */
diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm/config.h
index 30438d22d2..a11a09c570 100644
--- a/xen/arch/ppc/include/asm/config.h
+++ b/xen/arch/ppc/include/asm/config.h
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #ifndef __PPC_CONFIG_H__
 #define __PPC_CONFIG_H__

@@ -41,6 +42,15 @@

 #define XEN_VIRT_START _AC(0xc000000000000000, UL)

+#define VMAP_VIRT_START (XEN_VIRT_START + GB(1))
+#define VMAP_VIRT_SIZE  GB(1)
+
+#define FRAMETABLE_VIRT_START  (XEN_VIRT_START + GB(32))
+#define FRAMETABLE_SIZE        GB(32)
+#define FRAMETABLE_NR          (FRAMETABLE_SIZE / sizeof(*frame_table))
+
+#define HYPERVISOR_VIRT_START  XEN_VIRT_START
+
 #define SMP_CACHE_BYTES (1 << 6)

 #define STACK_ORDER 0
diff --git a/xen/arch/ppc/include/asm/cpufeature.h b/xen/arch/ppc/include/asm/cpufeature.h
new file mode 100644
index 0000000000..1c5946512b
--- /dev/null
+++ b/xen/arch/ppc/include/asm/cpufeature.h
@@ -0,0 +1,10 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_CPUFEATURE_H__
+#define __ASM_PPC_CPUFEATURE_H__
+
+static inline int cpu_nr_siblings(unsigned int cpu)
+{
+    return 1;
+}
+
+#endif /* __ASM_PPC_CPUFEATURE_H__ */
diff --git a/xen/arch/ppc/include/asm/current.h b/xen/arch/ppc/include/asm/current.h
new file mode 100644
index 0000000000..0ca06033f9
--- /dev/null
+++ b/xen/arch/ppc/include/asm/current.h
@@ -0,0 +1,43 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_CURRENT_H__
+#define __ASM_PPC_CURRENT_H__
+
+#include <xen/percpu.h>
+
+#ifndef __ASSEMBLY__
+
+struct vcpu;
+
+/* Which VCPU is "current" on this PCPU. */
+DECLARE_PER_CPU(struct vcpu *, curr_vcpu);
+
+#define current            (this_cpu(curr_vcpu))
+#define set_current(vcpu)  do { current = (vcpu); } while (0)
+#define get_cpu_current(cpu)  (per_cpu(curr_vcpu, cpu))
+
+/* Per-VCPU state that lives at the top of the stack */
+struct cpu_info {
+    struct cpu_user_regs guest_cpu_user_regs;
+    unsigned long elr;
+    unsigned int flags;
+};
+
+static inline struct cpu_info *get_cpu_info(void)
+{
+#ifdef __clang__
+    unsigned long sp;
+
+    asm ( "mr %0, 1" : "=r" (sp) );
+#else
+    register unsigned long sp asm ("r1");
+#endif
+
+    return (struct cpu_info *)((sp & ~(STACK_SIZE - 1)) +
+                               STACK_SIZE - sizeof(struct cpu_info));
+}
+
+#define guest_cpu_user_regs() (&get_cpu_info()->guest_cpu_user_regs)
+
+#endif /* __ASSEMBLY__ */
+
+#endif /* __ASM_PPC_CURRENT_H__ */
diff --git a/xen/arch/ppc/include/asm/delay.h b/xen/arch/ppc/include/asm/delay.h
new file mode 100644
index 0000000000..da6635888b
--- /dev/null
+++ b/xen/arch/ppc/include/asm/delay.h
@@ -0,0 +1,12 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DELAY_H__
+#define __ASM_PPC_DELAY_H__
+
+#include <xen/lib.h>
+
+static inline void udelay(unsigned long usecs)
+{
+    BUG_ON("unimplemented");
+}
+
+#endif /* __ASM_PPC_DELAY_H__ */
diff --git a/xen/arch/ppc/include/asm/device.h b/xen/arch/ppc/include/asm/device.h
new file mode 100644
index 0000000000..8253e61d51
--- /dev/null
+++ b/xen/arch/ppc/include/asm/device.h
@@ -0,0 +1,53 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DEVICE_H__
+#define __ASM_PPC_DEVICE_H__
+
+enum device_type
+{
+    DEV_DT,
+    DEV_PCI,
+};
+
+struct device {
+    enum device_type type;
+#ifdef CONFIG_HAS_DEVICE_TREE
+    struct dt_device_node *of_node; /* Used by drivers imported from Linux */
+#endif
+};
+
+enum device_class
+{
+    DEVICE_SERIAL,
+    DEVICE_IOMMU,
+    DEVICE_PCI_HOSTBRIDGE,
+    /* Use for error */
+    DEVICE_UNKNOWN,
+};
+
+struct device_desc {
+    /* Device name */
+    const char *name;
+    /* Device class */
+    enum device_class class;
+    /* List of devices supported by this driver */
+    const struct dt_device_match *dt_match;
+    /*
+     * Device initialization.
+     *
+     * -EAGAIN is used to indicate that device probing is deferred.
+     */
+    int (*init)(struct dt_device_node *dev, const void *data);
+};
+
+typedef struct device device_t;
+
+#define DT_DEVICE_START(name_, namestr_, class_)                    \
+static const struct device_desc __dev_desc_##name_ __used           \
+__section(".dev.info") = {                                          \
+    .name = namestr_,                                               \
+    .class = class_,                                                \
+
+#define DT_DEVICE_END                                               \
+};
+
+#endif /* __ASM_PPC_DEVICE_H__ */
diff --git a/xen/arch/ppc/include/asm/div64.h b/xen/arch/ppc/include/asm/div64.h
new file mode 100644
index 0000000000..d213e50585
--- /dev/null
+++ b/xen/arch/ppc/include/asm/div64.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DIV64_H__
+#define __ASM_PPC_DIV64_H__
+
+#include <xen/types.h>
+
+#define do_div(n, base) ({                       \
+    uint32_t base_ = (base);                     \
+    uint32_t rem_ = (uint64_t)(n) % base_;       \
+    (n) = (uint64_t)(n) / base_;                 \
+    rem_;                                        \
+})
+
+#endif /* __ASM_PPC_DIV64_H__ */
diff --git a/xen/arch/ppc/include/asm/domain.h b/xen/arch/ppc/include/asm/domain.h
new file mode 100644
index 0000000000..573276d0a8
--- /dev/null
+++ b/xen/arch/ppc/include/asm/domain.h
@@ -0,0 +1,47 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_DOMAIN_H__
+#define __ASM_PPC_DOMAIN_H__
+
+#include <xen/xmalloc.h>
+#include <public/hvm/params.h>
+
+struct hvm_domain
+{
+    uint64_t              params[HVM_NR_PARAMS];
+};
+
+#define is_domain_direct_mapped(d) ((void)(d), 0)
+
+/* TODO: Implement */
+#define guest_mode(r) ({ (void)(r); BUG_ON("unimplemented"); 0; })
+
+struct arch_vcpu_io {
+};
+
+struct arch_vcpu {
+};
+
+struct arch_domain {
+    struct hvm_domain hvm;
+};
+
+#include <xen/sched.h>
+
+static inline struct vcpu_guest_context *alloc_vcpu_guest_context(void)
+{
+    return xmalloc(struct vcpu_guest_context);
+}
+
+static inline void free_vcpu_guest_context(struct vcpu_guest_context *vgc)
+{
+    xfree(vgc);
+}
+
+struct guest_memory_policy {};
+static inline void update_guest_memory_policy(struct vcpu *v,
+                                              struct guest_memory_policy *gmp)
+{}
+
+static inline void arch_vcpu_block(struct vcpu *v) {}
+
+#endif /* __ASM_PPC_DOMAIN_H__ */
diff --git a/xen/arch/ppc/include/asm/event.h b/xen/arch/ppc/include/asm/event.h
new file mode 100644
index 0000000000..1b95ee4f61
--- /dev/null
+++ b/xen/arch/ppc/include/asm/event.h
@@ -0,0 +1,36 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_EVENT_H__
+#define __ASM_PPC_EVENT_H__
+
+#include <xen/lib.h>
+
+/* TODO: implement */
+static inline void vcpu_kick(struct vcpu *v) { BUG_ON("unimplemented"); }
+static inline void vcpu_mark_events_pending(struct vcpu *v) { BUG_ON("unimplemented"); }
+static inline void vcpu_update_evtchn_irq(struct vcpu *v) { BUG_ON("unimplemented"); }
+static inline void vcpu_block_unless_event_pending(struct vcpu *v) { BUG_ON("unimplemented"); }
+
+static inline int vcpu_event_delivery_is_enabled(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+/* No arch specific virq definition now. Default to global. */
+static inline bool arch_virq_is_global(unsigned int virq)
+{
+    return true;
+}
+
+static inline int local_events_need_delivery(void)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+static inline void local_event_delivery_enable(void)
+{
+    BUG_ON("unimplemented");
+}
+
+#endif /* __ASM_PPC_EVENT_H__ */
diff --git a/xen/arch/ppc/include/asm/flushtlb.h b/xen/arch/ppc/include/asm/flushtlb.h
new file mode 100644
index 0000000000..afcb740783
--- /dev/null
+++ b/xen/arch/ppc/include/asm/flushtlb.h
@@ -0,0 +1,24 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_FLUSHTLB_H__
+#define __ASM_PPC_FLUSHTLB_H__
+
+#include <xen/cpumask.h>
+
+/*
+ * Filter the given set of CPUs, removing those that definitely flushed their
+ * TLB since @page_timestamp.
+ */
+/* XXX lazy implementation just doesn't clear anything.... */
+static inline void tlbflush_filter(cpumask_t *mask, uint32_t page_timestamp) {}
+
+#define tlbflush_current_time()                 (0)
+
+static inline void page_set_tlbflush_timestamp(struct page_info *page)
+{
+    page->tlbflush_timestamp = tlbflush_current_time();
+}
+
+/* Flush specified CPUs' TLBs */
+void arch_flush_tlb_mask(const cpumask_t *mask);
+
+#endif /* __ASM_PPC_FLUSHTLB_H__ */
diff --git a/xen/arch/ppc/include/asm/grant_table.h b/xen/arch/ppc/include/asm/grant_table.h
new file mode 100644
index 0000000000..d0ff58dd3d
--- /dev/null
+++ b/xen/arch/ppc/include/asm/grant_table.h
@@ -0,0 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_GRANT_TABLE_H__
+#define __ASM_PPC_GRANT_TABLE_H__
+
+#endif /* __ASM_PPC_GRANT_TABLE_H__ */
diff --git a/xen/arch/ppc/include/asm/guest_access.h b/xen/arch/ppc/include/asm/guest_access.h
new file mode 100644
index 0000000000..6546931911
--- /dev/null
+++ b/xen/arch/ppc/include/asm/guest_access.h
@@ -0,0 +1,68 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_GUEST_ACCESS_H__
+#define __ASM_PPC_GUEST_ACCESS_H__
+
+#include <xen/mm.h>
+
+/* TODO */
+
+static inline unsigned long raw_copy_to_guest(
+    void *to,
+    const void *from,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+static inline unsigned long raw_copy_to_guest_flush_dcache(
+    void *to,
+    const void *from,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+static inline unsigned long raw_copy_from_guest(
+    void *to,
+    const void *from,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+static inline unsigned long raw_clear_guest(void *to, unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+
+/* Copy data to guest physical address, then clean the region. */
+static inline unsigned long copy_to_guest_phys_flush_dcache(
+    struct domain *d,
+    paddr_t gpa,
+    void *buf,
+    unsigned int len)
+{
+    BUG_ON("unimplemented");
+}
+
+static inline int access_guest_memory_by_gpa(
+    struct domain *d,
+    paddr_t gpa,
+    void *buf,
+    uint32_t size,
+    bool is_write)
+{
+    BUG_ON("unimplemented");
+}
+
+
+#define __raw_copy_to_guest raw_copy_to_guest
+#define __raw_copy_from_guest raw_copy_from_guest
+#define __raw_clear_guest raw_clear_guest
+
+/*
+ * Pre-validate a guest handle.
+ * Allows use of faster __copy_* functions.
+ */
+/* All PPC guests are paging mode external and hence safe */
+#define guest_handle_okay(hnd, nr) (1)
+#define guest_handle_subrange_okay(hnd, first, last) (1)
+
+#endif /* __ASM_PPC_GUEST_ACCESS_H__ */
diff --git a/xen/arch/ppc/include/asm/guest_atomics.h b/xen/arch/ppc/include/asm/guest_atomics.h
new file mode 100644
index 0000000000..1190e10bbb
--- /dev/null
+++ b/xen/arch/ppc/include/asm/guest_atomics.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_GUEST_ATOMICS_H__
+#define __ASM_PPC_GUEST_ATOMICS_H__
+
+#include <xen/lib.h>
+
+/* TODO: implement */
+#define unimplemented_guest_bit_op(d, nr, p) ({                                \
+    (void)(d);                                                                 \
+    (void)(nr);                                                                \
+    (void)(p);                                                                 \
+    BUG_ON("unimplemented");                                                   \
+    false;                                                                     \
+})
+
+#define guest_test_bit(d, nr, p)            unimplemented_guest_bit_op(d, nr, p)
+#define guest_clear_bit(d, nr, p)           unimplemented_guest_bit_op(d, nr, p)
+#define guest_set_bit(d, nr, p)             unimplemented_guest_bit_op(d, nr, p)
+#define guest_test_and_set_bit(d, nr, p)    unimplemented_guest_bit_op(d, nr, p)
+#define guest_test_and_clear_bit(d, nr, p)  unimplemented_guest_bit_op(d, nr, p)
+#define guest_test_and_change_bit(d, nr, p) unimplemented_guest_bit_op(d, nr, p)
+
+#endif /* __ASM_PPC_GUEST_ATOMICS_H__ */
diff --git a/xen/arch/ppc/include/asm/hardirq.h b/xen/arch/ppc/include/asm/hardirq.h
new file mode 100644
index 0000000000..343efc7e69
--- /dev/null
+++ b/xen/arch/ppc/include/asm/hardirq.h
@@ -0,0 +1,19 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_HARDIRQ_H__
+#define __ASM_PPC_HARDIRQ_H__
+
+#include <xen/cache.h>
+
+typedef struct {
+        unsigned long __softirq_pending;
+        unsigned int __local_irq_count;
+} __cacheline_aligned irq_cpustat_t;
+
+#include <xen/irq_cpustat.h>    /* Standard mappings for irq_cpustat_t above */
+
+#define in_irq() (local_irq_count(smp_processor_id()) != 0)
+
+#define irq_enter()     (local_irq_count(smp_processor_id())++)
+#define irq_exit()      (local_irq_count(smp_processor_id())--)
+
+#endif /* __ASM_PPC_HARDIRQ_H__ */
diff --git a/xen/arch/ppc/include/asm/hypercall.h b/xen/arch/ppc/include/asm/hypercall.h
new file mode 100644
index 0000000000..1e8ca0ce9c
--- /dev/null
+++ b/xen/arch/ppc/include/asm/hypercall.h
@@ -0,0 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_HYPERCALL_H__
+#define __ASM_PPC_HYPERCALL_H__
+
+#endif /* __ASM_PPC_HYPERCALL_H__ */
diff --git a/xen/arch/ppc/include/asm/io.h b/xen/arch/ppc/include/asm/io.h
new file mode 100644
index 0000000000..85b5b27157
--- /dev/null
+++ b/xen/arch/ppc/include/asm/io.h
@@ -0,0 +1,16 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IO_H__
+#define __ASM_PPC_IO_H__
+
+#include <xen/lib.h>
+
+/* TODO */
+#define readb(c)        ({ (void)(c); BUG_ON("unimplemented"); 0; })
+#define readw(c)        ({ (void)(c); BUG_ON("unimplemented"); 0; })
+#define readl(c)        ({ (void)(c); BUG_ON("unimplemented"); 0; })
+
+#define writeb(v,c)     ({ (void)(v); (void)(c); BUG_ON("unimplemented"); })
+#define writew(v,c)     ({ (void)(v); (void)(c); BUG_ON("unimplemented"); })
+#define writel(v,c)     ({ (void)(v); (void)(c); BUG_ON("unimplemented"); })
+
+#endif /* __ASM_PPC_IO_H__ */
diff --git a/xen/arch/ppc/include/asm/iocap.h b/xen/arch/ppc/include/asm/iocap.h
new file mode 100644
index 0000000000..76bf13a70f
--- /dev/null
+++ b/xen/arch/ppc/include/asm/iocap.h
@@ -0,0 +1,8 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IOCAP_H__
+#define __ASM_PPC_IOCAP_H__
+
+#define cache_flush_permitted(d)                        \
+    (!rangeset_is_empty((d)->iomem_caps))
+
+#endif /* __ASM_PPC_IOCAP_H__ */
diff --git a/xen/arch/ppc/include/asm/iommu.h b/xen/arch/ppc/include/asm/iommu.h
new file mode 100644
index 0000000000..024ead3473
--- /dev/null
+++ b/xen/arch/ppc/include/asm/iommu.h
@@ -0,0 +1,8 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IOMMU_H__
+#define __ASM_PPC_IOMMU_H__
+
+struct arch_iommu {
+};
+
+#endif /* __ASM_PPC_IOMMU_H__ */
diff --git a/xen/arch/ppc/include/asm/irq.h b/xen/arch/ppc/include/asm/irq.h
new file mode 100644
index 0000000000..5c37d0cf25
--- /dev/null
+++ b/xen/arch/ppc/include/asm/irq.h
@@ -0,0 +1,33 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_IRQ_H__
+#define __ASM_PPC_IRQ_H__
+
+#include <xen/lib.h>
+#include <xen/device_tree.h>
+#include <public/device_tree_defs.h>
+
+/* TODO */
+#define nr_irqs 0U
+#define nr_static_irqs 0
+#define arch_hwdom_irqs(domid) 0U
+
+#define domain_pirq_to_irq(d, pirq) (pirq)
+
+struct arch_pirq {
+};
+
+struct arch_irq_desc {
+    unsigned int type;
+};
+
+static inline void arch_move_irqs(struct vcpu *v)
+{
+    BUG_ON("unimplemented");
+}
+
+static inline int platform_get_irq(const struct dt_device_node *device, int index)
+{
+    BUG_ON("unimplemented");
+}
+
+#endif /* __ASM_PPC_IRQ_H__ */
diff --git a/xen/arch/ppc/include/asm/mem_access.h b/xen/arch/ppc/include/asm/mem_access.h
new file mode 100644
index 0000000000..e7986dfdbd
--- /dev/null
+++ b/xen/arch/ppc/include/asm/mem_access.h
@@ -0,0 +1,5 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_MEM_ACCESS_H__
+#define __ASM_PPC_MEM_ACCESS_H__
+
+#endif /* __ASM_PPC_MEM_ACCESS_H__ */
diff --git a/xen/arch/ppc/include/asm/mm.h b/xen/arch/ppc/include/asm/mm.h
index c85a7ed686..a433936076 100644
--- a/xen/arch/ppc/include/asm/mm.h
+++ b/xen/arch/ppc/include/asm/mm.h
@@ -1,10 +1,25 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #ifndef _ASM_PPC_MM_H
 #define _ASM_PPC_MM_H

+#include <public/xen.h>
+#include <xen/pdx.h>
+#include <xen/types.h>
+#include <asm/config.h>
 #include <asm/page-bits.h>
+#include <asm/page.h>
+
+void setup_initial_pagetables(void);

 #define pfn_to_paddr(pfn) ((paddr_t)(pfn) << PAGE_SHIFT)
 #define paddr_to_pfn(pa)  ((unsigned long)((pa) >> PAGE_SHIFT))
+#define paddr_to_pdx(pa)  mfn_to_pdx(maddr_to_mfn(pa))
+#define gfn_to_gaddr(gfn) pfn_to_paddr(gfn_x(gfn))
+#define gaddr_to_gfn(ga)  _gfn(paddr_to_pfn(ga))
+#define mfn_to_maddr(mfn) pfn_to_paddr(mfn_x(mfn))
+#define maddr_to_mfn(ma)  _mfn(paddr_to_pfn(ma))
+#define vmap_to_mfn(va)   maddr_to_mfn(virt_to_maddr((vaddr_t)va))
+#define vmap_to_page(va)  mfn_to_page(vmap_to_mfn(va))

 #define virt_to_maddr(va) ((paddr_t)((vaddr_t)(va) & PADDR_MASK))
 #define maddr_to_virt(pa) ((void *)((paddr_t)(pa) | XEN_VIRT_START))
@@ -13,6 +28,232 @@
 #define __pa(x)             (virt_to_maddr(x))
 #define __va(x)             (maddr_to_virt(x))

-void setup_initial_pagetables(void);
+/* Convert between Xen-heap virtual addresses and machine frame numbers. */
+#define __virt_to_mfn(va) (virt_to_maddr(va) >> PAGE_SHIFT)
+#define __mfn_to_virt(mfn) (maddr_to_virt((paddr_t)(mfn) << PAGE_SHIFT))
+
+/* Convert between Xen-heap virtual addresses and page-info structures. */
+static inline struct page_info *virt_to_page(const void *v)
+{
+    BUG_ON("unimplemented");
+    return NULL;
+}
+
+#define virt_to_mfn(va)     __virt_to_mfn(va)
+#define mfn_to_virt(mfn)    __mfn_to_virt(mfn)
+
+#define PG_shift(idx)   (BITS_PER_LONG - (idx))
+#define PG_mask(x, idx) (x ## UL << PG_shift(idx))
+
+#define PGT_none          PG_mask(0, 1)  /* no special uses of this page   */
+#define PGT_writable_page PG_mask(1, 1)  /* has writable mappings?         */
+#define PGT_type_mask     PG_mask(1, 1)  /* Bits 31 or 63.                 */
+
+ /* 2-bit count of uses of this frame as its current type. */
+#define PGT_count_mask    PG_mask(3, 3)
+
+/* Cleared when the owning guest 'frees' this page. */
+#define _PGC_allocated    PG_shift(1)
+#define PGC_allocated     PG_mask(1, 1)
+/* Page is Xen heap? */
+#define _PGC_xen_heap     PG_shift(2)
+#define PGC_xen_heap      PG_mask(1, 2)
+/* Page is broken? */
+#define _PGC_broken       PG_shift(7)
+#define PGC_broken        PG_mask(1, 7)
+ /* Mutually-exclusive page states: { inuse, offlining, offlined, free }. */
+#define PGC_state         PG_mask(3, 9)
+#define PGC_state_inuse   PG_mask(0, 9)
+#define PGC_state_offlining PG_mask(1, 9)
+#define PGC_state_offlined PG_mask(2, 9)
+#define PGC_state_free    PG_mask(3, 9)
+#define page_state_is(pg, st) (((pg)->count_info&PGC_state) == PGC_state_##st)
+/* Page is not reference counted */
+#define _PGC_extra        PG_shift(10)
+#define PGC_extra         PG_mask(1, 10)
+
+/* Count of references to this frame. */
+#define PGC_count_width   PG_shift(10)
+#define PGC_count_mask    ((1UL<<PGC_count_width)-1)
+
+/*
+ * Page needs to be scrubbed. Since this bit can only be set on a page that is
+ * free (i.e. in PGC_state_free) we can reuse PGC_allocated bit.
+ */
+#define _PGC_need_scrub   _PGC_allocated
+#define PGC_need_scrub    PGC_allocated
+
+#define is_xen_heap_page(page) ((page)->count_info & PGC_xen_heap)
+#define is_xen_heap_mfn(mfn) \
+    (mfn_valid(mfn) && is_xen_heap_page(mfn_to_page(mfn)))
+
+#define is_xen_fixed_mfn(mfn)                                   \
+    ((mfn_to_maddr(mfn) >= virt_to_maddr((vaddr_t)_start)) &&           \
+     (mfn_to_maddr(mfn) <= virt_to_maddr((vaddr_t)_end - 1)))
+
+#define page_get_owner(_p)    (_p)->v.inuse.domain
+#define page_set_owner(_p,_d) ((_p)->v.inuse.domain = (_d))
+
+/* TODO: implement */
+#define mfn_valid(mfn) ({ (void) (mfn); 0; })
+
+#define domain_set_alloc_bitsize(d) ((void)(d))
+#define domain_clamp_alloc_bitsize(d, b) (b)
+
+#define PFN_ORDER(pfn_) ((pfn_)->v.free.order)
+
+struct page_info
+{
+    /* Each frame can be threaded onto a doubly-linked list. */
+    struct page_list_entry list;
+
+    /* Reference count and various PGC_xxx flags and fields. */
+    unsigned long count_info;
+
+    /* Context-dependent fields follow... */
+    union {
+        /* Page is in use: ((count_info & PGC_count_mask) != 0). */
+        struct {
+            /* Type reference count and various PGT_xxx flags and fields. */
+            unsigned long type_info;
+        } inuse;
+        /* Page is on a free list: ((count_info & PGC_count_mask) == 0). */
+        union {
+            struct {
+                /*
+                 * Index of the first *possibly* unscrubbed page in the buddy.
+                 * One more bit than maximum possible order to accommodate
+                 * INVALID_DIRTY_IDX.
+                 */
+#define INVALID_DIRTY_IDX ((1UL << (MAX_ORDER + 1)) - 1)
+                unsigned long first_dirty:MAX_ORDER + 1;
+
+                /* Do TLBs need flushing for safety before next page use? */
+                bool need_tlbflush:1;
+
+#define BUDDY_NOT_SCRUBBING    0
+#define BUDDY_SCRUBBING        1
+#define BUDDY_SCRUB_ABORT      2
+                unsigned long scrub_state:2;
+            };
+
+            unsigned long val;
+        } free;
+
+    } u;
+
+    union {
+        /* Page is in use, but not as a shadow. */
+        struct {
+            /* Owner of this page (NULL if page is anonymous). */
+            struct domain *domain;
+        } inuse;
+
+        /* Page is on a free list. */
+        struct {
+            /* Order-size of the free chunk this page is the head of. */
+            unsigned int order;
+        } free;
+
+    } v;
+
+    union {
+        /*
+         * Timestamp from 'TLB clock', used to avoid extra safety flushes.
+         * Only valid for: a) free pages, and b) pages with zero type count
+         */
+        uint32_t tlbflush_timestamp;
+    };
+    uint64_t pad;
+};
+
+
+#define FRAMETABLE_VIRT_START  (XEN_VIRT_START + GB(32))
+#define frame_table ((struct page_info *)FRAMETABLE_VIRT_START)
+
+/* PDX of the first page in the frame table. */
+extern unsigned long frametable_base_pdx;
+
+/* Convert between machine frame numbers and page-info structures. */
+#define mfn_to_page(mfn)                                            \
+    (frame_table + (mfn_to_pdx(mfn) - frametable_base_pdx))
+#define page_to_mfn(pg)                                             \
+    pdx_to_mfn((unsigned long)((pg) - frame_table) + frametable_base_pdx)
+
+static inline void *page_to_virt(const struct page_info *pg)
+{
+    return mfn_to_virt(mfn_x(page_to_mfn(pg)));
+}
+
+/*
+ * Common code requires get_page_type and put_page_type.
+ * We don't care about typecounts so we just do the minimum to make it
+ * happy.
+ */
+static inline int get_page_type(struct page_info *page, unsigned long type)
+{
+    return 1;
+}
+
+static inline void put_page_type(struct page_info *page)
+{
+    return;
+}
+
+/* TODO */
+static inline bool get_page_nr(struct page_info *page, const struct domain *domain,
+                        unsigned long nr)
+{
+    BUG_ON("unimplemented");
+}
+static inline void put_page_nr(struct page_info *page, unsigned long nr)
+{
+    BUG_ON("unimplemented");
+}
+
+static inline void put_page_and_type(struct page_info *page)
+{
+    put_page_type(page);
+    put_page(page);
+}
+
+/*
+ * PPC does not have an M2P, but common code expects a handful of
+ * M2P-related defines and functions. Provide dummy versions of these.
+ */
+#define INVALID_M2P_ENTRY        (~0UL)
+#define SHARED_M2P_ENTRY         (~0UL - 1UL)
+#define SHARED_M2P(_e)           ((_e) == SHARED_M2P_ENTRY)
+
+#define set_gpfn_from_mfn(mfn, pfn) BUG_ON("unimplemented")
+#define mfn_to_gfn(d, mfn) ({ BUG_ON("unimplemented"); _gfn(0); })
+
+#define PDX_GROUP_SHIFT XEN_PT_SHIFT_LVL_3
+
+static inline unsigned long domain_get_maximum_gpfn(struct domain *d)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+static inline long arch_memory_op(int op, XEN_GUEST_HANDLE_PARAM(void) arg)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+static inline unsigned int arch_get_dma_bitsize(void)
+{
+    return 32; /* TODO */
+}
+
+/*
+ * On PPC, all the RAM is currently direct mapped in Xen.
+ * Hence return always true.
+ */
+static inline bool arch_mfns_in_directmap(unsigned long mfn, unsigned long nr)
+{
+    return true;
+}

 #endif /* _ASM_PPC_MM_H */
diff --git a/xen/arch/ppc/include/asm/monitor.h b/xen/arch/ppc/include/asm/monitor.h
new file mode 100644
index 0000000000..e5b0282bf1
--- /dev/null
+++ b/xen/arch/ppc/include/asm/monitor.h
@@ -0,0 +1,43 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/* Derived from xen/arch/arm/include/asm/monitor.h */
+#ifndef __ASM_PPC_MONITOR_H__
+#define __ASM_PPC_MONITOR_H__
+
+#include <public/domctl.h>
+#include <xen/errno.h>
+
+static inline
+void arch_monitor_allow_userspace(struct domain *d, bool allow_userspace)
+{
+}
+
+static inline
+int arch_monitor_domctl_op(struct domain *d, struct xen_domctl_monitor_op *mop)
+{
+    /* No arch-specific monitor ops on PPC. */
+    return -EOPNOTSUPP;
+}
+
+int arch_monitor_domctl_event(struct domain *d,
+                              struct xen_domctl_monitor_op *mop);
+
+static inline
+int arch_monitor_init_domain(struct domain *d)
+{
+    /* No arch-specific domain initialization on PPC. */
+    return 0;
+}
+
+static inline
+void arch_monitor_cleanup_domain(struct domain *d)
+{
+    /* No arch-specific domain cleanup on PPC. */
+}
+
+static inline uint32_t arch_monitor_get_capabilities(struct domain *d)
+{
+    BUG_ON("unimplemented");
+    return 0;
+}
+
+#endif /* __ASM_PPC_MONITOR_H__ */
diff --git a/xen/arch/ppc/include/asm/nospec.h b/xen/arch/ppc/include/asm/nospec.h
new file mode 100644
index 0000000000..b97322e48d
--- /dev/null
+++ b/xen/arch/ppc/include/asm/nospec.h
@@ -0,0 +1,15 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/* From arch/arm/include/asm/nospec.h. */
+#ifndef __ASM_PPC_NOSPEC_H__
+#define __ASM_PPC_NOSPEC_H__
+
+static inline bool evaluate_nospec(bool condition)
+{
+    return condition;
+}
+
+static inline void block_speculation(void)
+{
+}
+
+#endif /* __ASM_PPC_NOSPEC_H__ */
diff --git a/xen/arch/ppc/include/asm/numa.h b/xen/arch/ppc/include/asm/numa.h
new file mode 100644
index 0000000000..7fdf66c3da
--- /dev/null
+++ b/xen/arch/ppc/include/asm/numa.h
@@ -0,0 +1,26 @@
+#ifndef __ASM_PPC_NUMA_H__
+#define __ASM_PPC_NUMA_H__
+
+#include <xen/types.h>
+#include <xen/mm.h>
+
+typedef uint8_t nodeid_t;
+
+/* Fake one node for now. See also node_online_map. */
+#define cpu_to_node(cpu) 0
+#define node_to_cpumask(node)   (cpu_online_map)
+
+/*
+ * TODO: make first_valid_mfn static when NUMA is supported on PPC, this
+ * is required because the dummy helpers are using it.
+ */
+extern mfn_t first_valid_mfn;
+
+/* XXX: implement NUMA support */
+#define node_spanned_pages(nid) (max_page - mfn_x(first_valid_mfn))
+#define node_start_pfn(nid) (mfn_x(first_valid_mfn))
+#define __node_distance(a, b) (20)
+
+#define arch_want_default_dmazone() (false)
+
+#endif /* __ASM_PPC_NUMA_H__ */
diff --git a/xen/arch/ppc/include/asm/p2m.h b/xen/arch/ppc/include/asm/p2m.h
new file mode 100644
index 0000000000..25ba054668
--- /dev/null
+++ b/xen/arch/ppc/include/asm/p2m.h
@@ -0,0 +1,95 @@
+#ifndef __ASM_PPC_P2M_H__
+#define __ASM_PPC_P2M_H__
+
+#include <asm/page-bits.h>
+
+#define paddr_bits PADDR_BITS
+
+/*
+ * List of possible type for each page in the p2m entry.
+ * The number of available bit per page in the pte for this purpose is 4 bits.
+ * So it's possible to only have 16 fields. If we run out of value in the
+ * future, it's possible to use higher value for pseudo-type and don't store
+ * them in the p2m entry.
+ */
+typedef enum {
+    p2m_invalid = 0,    /* Nothing mapped here */
+    p2m_ram_rw,         /* Normal read/write guest RAM */
+    p2m_ram_ro,         /* Read-only; writes are silently dropped */
+    p2m_max_real_type,  /* Types after this won't be store in the p2m */
+} p2m_type_t;
+
+#include <xen/p2m-common.h>
+
+static inline int get_page_and_type(struct page_info *page,
+                                    struct domain *domain,
+                                    unsigned long type)
+{
+    BUG_ON("unimplemented");
+    return 1;
+}
+
+/* Look up a GFN and take a reference count on the backing page. */
+typedef unsigned int p2m_query_t;
+#define P2M_ALLOC    (1u<<0)   /* Populate PoD and paged-out entries */
+#define P2M_UNSHARE  (1u<<1)   /* Break CoW sharing */
+
+static inline struct page_info *get_page_from_gfn(
+    struct domain *d, unsigned long gfn, p2m_type_t *t, p2m_query_t q)
+{
+    BUG_ON("unimplemented");
+    return NULL;
+}
+
+static inline void memory_type_changed(struct domain *d)
+{
+    BUG_ON("unimplemented");
+}
+
+
+static inline int guest_physmap_mark_populate_on_demand(struct domain *d, unsigned long gfn,
+                                                        unsigned int order)
+{
+    BUG_ON("unimplemented");
+    return 1;
+}
+
+static inline int guest_physmap_add_entry(struct domain *d,
+                            gfn_t gfn,
+                            mfn_t mfn,
+                            unsigned long page_order,
+                            p2m_type_t t)
+{
+    BUG_ON("unimplemented");
+    return 1;
+}
+
+/* Untyped version for RAM only, for compatibility */
+static inline int __must_check
+guest_physmap_add_page(struct domain *d, gfn_t gfn, mfn_t mfn,
+                       unsigned int page_order)
+{
+    return guest_physmap_add_entry(d, gfn, mfn, page_order, p2m_ram_rw);
+}
+
+static inline mfn_t gfn_to_mfn(struct domain *d, gfn_t gfn)
+{
+    BUG_ON("unimplemented");
+    return _mfn(0);
+}
+
+static inline bool arch_acquire_resource_check(struct domain *d)
+{
+    /*
+     * The reference counting of foreign entries in set_foreign_p2m_entry()
+     * is supported on PPC.
+     */
+    return true;
+}
+
+static inline void p2m_altp2m_check(struct vcpu *v, uint16_t idx)
+{
+    /* Not supported on PPC. */
+}
+
+#endif /* __ASM_PPC_P2M_H__ */
diff --git a/xen/arch/ppc/include/asm/page.h b/xen/arch/ppc/include/asm/page.h
index c5ee047df7..890e285051 100644
--- a/xen/arch/ppc/include/asm/page.h
+++ b/xen/arch/ppc/include/asm/page.h
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #ifndef _ASM_PPC_PAGE_H
 #define _ASM_PPC_PAGE_H

@@ -36,6 +37,9 @@
 #define PTE_XEN_RO   (PTE_XEN_BASE | PTE_EAA_READ)
 #define PTE_XEN_RX   (PTE_XEN_BASE | PTE_EAA_READ | PTE_EAA_EXECUTE)

+/* TODO */
+#define PAGE_HYPERVISOR 0
+
 /*
  * Radix Tree layout for 64KB pages:
  *
@@ -178,4 +182,18 @@ struct prtb_entry {

 void tlbie_all(void);

+static inline void invalidate_icache(void)
+{
+    BUG_ON("unimplemented");
+}
+
+#define clear_page(page) memset(page, 0, PAGE_SIZE)
+#define copy_page(dp, sp) memcpy(dp, sp, PAGE_SIZE)
+
+/* TODO: Flush the dcache for an entire page. */
+static inline void flush_page_to_ram(unsigned long mfn, bool sync_icache)
+{
+    BUG_ON("unimplemented");
+}
+
 #endif /* _ASM_PPC_PAGE_H */
diff --git a/xen/arch/ppc/include/asm/paging.h b/xen/arch/ppc/include/asm/paging.h
new file mode 100644
index 0000000000..eccacece29
--- /dev/null
+++ b/xen/arch/ppc/include/asm/paging.h
@@ -0,0 +1,7 @@
+#ifndef __ASM_PPC_PAGING_H__
+#define __ASM_PPC_PAGING_H__
+
+#define paging_mode_translate(d)              (1)
+#define paging_mode_external(d)               (1)
+
+#endif /* __ASM_PPC_PAGING_H__ */
diff --git a/xen/arch/ppc/include/asm/pci.h b/xen/arch/ppc/include/asm/pci.h
new file mode 100644
index 0000000000..e76c8e5475
--- /dev/null
+++ b/xen/arch/ppc/include/asm/pci.h
@@ -0,0 +1,7 @@
+#ifndef __ASM_PPC_PCI_H__
+#define __ASM_PPC_PCI_H__
+
+struct arch_pci_dev {
+};
+
+#endif /* __ASM_PPC_PCI_H__ */
diff --git a/xen/arch/ppc/include/asm/percpu.h b/xen/arch/ppc/include/asm/percpu.h
new file mode 100644
index 0000000000..e7c40c0f03
--- /dev/null
+++ b/xen/arch/ppc/include/asm/percpu.h
@@ -0,0 +1,24 @@
+#ifndef __PPC_PERCPU_H__
+#define __PPC_PERCPU_H__
+
+#ifndef __ASSEMBLY__
+
+extern char __per_cpu_start[], __per_cpu_data_end[];
+extern unsigned long __per_cpu_offset[NR_CPUS];
+void percpu_init_areas(void);
+
+#define smp_processor_id() 0 /* TODO: Fix this */
+
+#define per_cpu(var, cpu)  \
+    (*RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[cpu]))
+#define this_cpu(var) \
+    (*RELOC_HIDE(&per_cpu__##var, smp_processor_id()))
+
+#define per_cpu_ptr(var, cpu)  \
+    (*RELOC_HIDE(var, __per_cpu_offset[cpu]))
+#define this_cpu_ptr(var) \
+    (*RELOC_HIDE(var, smp_processor_id()))
+
+#endif
+
+#endif /* __PPC_PERCPU_H__ */
diff --git a/xen/arch/ppc/include/asm/processor.h b/xen/arch/ppc/include/asm/processor.h
index edb8a6088d..d3dd943c20 100644
--- a/xen/arch/ppc/include/asm/processor.h
+++ b/xen/arch/ppc/include/asm/processor.h
@@ -110,6 +110,10 @@
 /* Macro to adjust thread priority for hardware multithreading */
 #define HMT_very_low()  asm volatile ( "or %r31, %r31, %r31" )

+/* TODO: This isn't correct */
+#define cpu_to_core(cpu)   (0)
+#define cpu_to_socket(cpu) (0)
+
 /*
  * User-accessible registers: most of these need to be saved/restored
  * for every nested Xen invocation.
@@ -178,6 +182,12 @@ static inline void noreturn die(void)
         HMT_very_low();
 }

+/*
+ * Implemented on pre-POWER10 by setting HMT to low then to medium using
+ * the special OR forms. See HMT_very_low above.
+ */
+#define cpu_relax() asm volatile ( "or %r1, %r1, %r1; or %r2, %r2, %r2" )
+
 #endif /* __ASSEMBLY__ */

 #endif /* _ASM_PPC_PROCESSOR_H */
diff --git a/xen/arch/ppc/include/asm/random.h b/xen/arch/ppc/include/asm/random.h
new file mode 100644
index 0000000000..2f9e9bbae4
--- /dev/null
+++ b/xen/arch/ppc/include/asm/random.h
@@ -0,0 +1,9 @@
+#ifndef __ASM_PPC_RANDOM_H__
+#define __ASM_PPC_RANDOM_H__
+
+static inline unsigned int arch_get_random(void)
+{
+    return 0;
+}
+
+#endif /* __ASM_PPC_RANDOM_H__ */
diff --git a/xen/arch/ppc/include/asm/setup.h b/xen/arch/ppc/include/asm/setup.h
new file mode 100644
index 0000000000..e4f64879b6
--- /dev/null
+++ b/xen/arch/ppc/include/asm/setup.h
@@ -0,0 +1,6 @@
+#ifndef __ASM_PPC_SETUP_H__
+#define __ASM_PPC_SETUP_H__
+
+#define max_init_domid (0)
+
+#endif /* __ASM_PPC_SETUP_H__ */
diff --git a/xen/arch/ppc/include/asm/smp.h b/xen/arch/ppc/include/asm/smp.h
new file mode 100644
index 0000000000..eca43f0e6c
--- /dev/null
+++ b/xen/arch/ppc/include/asm/smp.h
@@ -0,0 +1,18 @@
+#ifndef __ASM_SMP_H
+#define __ASM_SMP_H
+
+#include <xen/cpumask.h>
+#include <xen/percpu.h>
+
+DECLARE_PER_CPU(cpumask_var_t, cpu_sibling_mask);
+DECLARE_PER_CPU(cpumask_var_t, cpu_core_mask);
+
+#define cpu_is_offline(cpu) unlikely(!cpu_online(cpu))
+
+/*
+ * Do we, for platform reasons, need to actually keep CPUs online when we
+ * would otherwise prefer them to be off?
+ */
+#define park_offline_cpus false
+
+#endif
diff --git a/xen/arch/ppc/include/asm/softirq.h b/xen/arch/ppc/include/asm/softirq.h
new file mode 100644
index 0000000000..a0b28a5e51
--- /dev/null
+++ b/xen/arch/ppc/include/asm/softirq.h
@@ -0,0 +1,8 @@
+#ifndef __ASM_PPC_SOFTIRQ_H__
+#define __ASM_PPC_SOFTIRQ_H__
+
+#define NR_ARCH_SOFTIRQS 0
+
+#define arch_skip_send_event_check(cpu) 0
+
+#endif /* __ASM_PPC_SOFTIRQ_H__ */
diff --git a/xen/arch/ppc/include/asm/spinlock.h b/xen/arch/ppc/include/asm/spinlock.h
new file mode 100644
index 0000000000..4bdb4b1e98
--- /dev/null
+++ b/xen/arch/ppc/include/asm/spinlock.h
@@ -0,0 +1,15 @@
+#ifndef __ASM_SPINLOCK_H
+#define __ASM_SPINLOCK_H
+
+#define arch_lock_acquire_barrier() smp_mb()
+#define arch_lock_release_barrier() smp_mb()
+
+#define arch_lock_relax() cpu_relax()
+#define arch_lock_signal()
+#define arch_lock_signal_wmb()      \
+({                                  \
+    smp_wmb();                      \
+    arch_lock_signal();             \
+})
+
+#endif /* __ASM_SPINLOCK_H */
diff --git a/xen/arch/ppc/include/asm/system.h b/xen/arch/ppc/include/asm/system.h
index 94091df644..a17072bafd 100644
--- a/xen/arch/ppc/include/asm/system.h
+++ b/xen/arch/ppc/include/asm/system.h
@@ -1,6 +1,223 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Copyright (C) IBM Corp. 2005
+ * Copyright (C) Raptor Engineering LLC
+ *
+ * Authors: Jimi Xenidis <jimix@watson.ibm.com>
+ *          Shawn Anastasio <sanastasio@raptorengineering.com>
+ */
+
 #ifndef _ASM_SYSTEM_H_
 #define _ASM_SYSTEM_H_

-#define smp_wmb() __asm__ __volatile__ ( "lwsync" : : : "memory" )
+#include <xen/lib.h>
+#include <asm/memory.h>
+#include <asm/time.h>
+#include <asm/processor.h>
+#include <asm/msr.h>
+
+#define xchg(ptr,x)                                                            \
+({                                                                             \
+    __typeof__(*(ptr)) _x_ = (x);                                              \
+    (__typeof__(*(ptr))) __xchg((ptr), (unsigned long)_x_, sizeof(*(ptr)));    \
+})
+
+#define build_xchg(fn, type, ldinsn, stinsn) \
+static inline unsigned long fn(volatile type *m, unsigned long val)            \
+{                                                                              \
+    unsigned long dummy;                                                       \
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER                                    \
+                   "1: " ldinsn " %0,0,%3\n"                                   \
+                   stinsn " %2,0,%3\n"                                         \
+                   "2:  bne- 1b\n"                                             \
+                   PPC_ATOMIC_EXIT_BARRIER                                     \
+                   : "=&r" (dummy), "=m" (*m)                                  \
+                   : "r" (val), "r" (m)                                        \
+                   : "cc", "memory" );                                         \
+    return dummy;                                                              \
+}
+
+build_xchg(__xchg_u8, uint8_t, "lbarx", "stbcx.")
+build_xchg(__xchg_u16, uint16_t, "lharx", "sthcx.")
+build_xchg(__xchg_u32, uint32_t, "lwarx", "stwcx.")
+build_xchg(__xchg_u64, uint64_t, "ldarx", "stdcx.")
+
+#undef build_xchg
+
+/*
+ * This function doesn't exist, so you'll get a linker error
+ * if something tries to do an invalid xchg().
+ */
+extern void __xchg_called_with_bad_pointer(void);
+
+static inline unsigned long __xchg(volatile void *ptr, unsigned long x,
+                                   int size)
+{
+    switch ( size )
+    {
+    case 1:
+        return __xchg_u8(ptr, x);
+    case 2:
+        return __xchg_u16(ptr, x);
+    case 4:
+        return __xchg_u32(ptr, x);
+    case 8:
+        return __xchg_u64(ptr, x);
+    }
+    __xchg_called_with_bad_pointer();
+    return x;
+}
+
+
+static inline unsigned long __cmpxchg_u32(volatile int *p, int old, int new)
+{
+    unsigned int prev;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: lwarx   %0,0,%2\n"
+                   "cmpw    0,%0,%3\n"
+                   "bne-    2f\n "
+                   "stwcx.  %4,0,%2\n"
+                   "bne-    1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER "\n"
+                   "2:"
+                   : "=&r" (prev), "=m" (*p)
+                   : "r" (p), "r" (old), "r" (new), "m" (*p)
+                   : "cc", "memory" );
+
+    return prev;
+}
+
+static inline unsigned long __cmpxchg_u64(volatile long *p, unsigned long old,
+                                          unsigned long new)
+{
+    unsigned long prev;
+
+    asm volatile ( PPC_ATOMIC_ENTRY_BARRIER
+                   "1: ldarx   %0,0,%2\n"
+                   "cmpd    0,%0,%3\n"
+                   "bne-    2f\n"
+                   "stdcx.  %4,0,%2\n"
+                   "bne-    1b\n"
+                   PPC_ATOMIC_EXIT_BARRIER "\n"
+                   "2:"
+                   : "=&r" (prev), "=m" (*p)
+                   : "r" (p), "r" (old), "r" (new), "m" (*p)
+                   : "cc", "memory" );
+
+    return prev;
+}
+
+/* This function doesn't exist, so you'll get a linker error
+   if something tries to do an invalid cmpxchg().  */
+extern void __cmpxchg_called_with_bad_pointer(void);
+
+static always_inline unsigned long __cmpxchg(
+    volatile void *ptr,
+    unsigned long old,
+    unsigned long new,
+    int size)
+{
+    switch ( size )
+    {
+    case 2:
+        BUG_ON("unimplemented"); return 0; /* XXX implement __cmpxchg_u16 ? */
+    case 4:
+        return __cmpxchg_u32(ptr, old, new);
+    case 8:
+        return __cmpxchg_u64(ptr, old, new);
+    }
+    __cmpxchg_called_with_bad_pointer();
+    return old;
+}
+
+#define cmpxchg_user(ptr,o,n) cmpxchg(ptr,o,n)
+
+#define cmpxchg(ptr,o,n)                                                       \
+  ({                                                                           \
+     __typeof__(*(ptr)) _o_ = (o);                                             \
+     __typeof__(*(ptr)) _n_ = (n);                                             \
+     (__typeof__(*(ptr)))__cmpxchg((ptr), (unsigned long)_o_,                  \
+                                   (unsigned long)_n_, sizeof(*(ptr)));        \
+  })
+
+
+/*
+ * Memory barrier.
+ * The sync instruction guarantees that all memory accesses initiated
+ * by this processor have been performed (with respect to all other
+ * mechanisms that access memory).  The eieio instruction is a barrier
+ * providing an ordering (separately) for (a) cacheable stores and (b)
+ * loads and stores to non-cacheable memory (e.g. I/O devices).
+ *
+ * mb() prevents loads and stores being reordered across this point.
+ * rmb() prevents loads being reordered across this point.
+ * wmb() prevents stores being reordered across this point.
+ * read_barrier_depends() prevents data-dependent loads being reordered
+ *  across this point (nop on PPC).
+ *
+ * We have to use the sync instructions for mb(), since lwsync doesn't
+ * order loads with respect to previous stores.  Lwsync is fine for
+ * rmb(), though.
+ * For wmb(), we use sync since wmb is used in drivers to order
+ * stores to system memory with respect to writes to the device.
+ * However, smp_wmb() can be a lighter-weight eieio barrier on
+ * SMP since it is only used to order updates to system memory.
+ */
+#define mb()   __asm__ __volatile__ ( "sync" : : : "memory" )
+#define rmb()  __asm__ __volatile__ ( "lwsync" : : : "memory" )
+#define wmb()  __asm__ __volatile__ ( "sync" : : : "memory" )
+#define read_barrier_depends()  do { } while(0)
+
+#define set_mb(var, value)  do { var = value; smp_mb(); } while (0)
+#define set_wmb(var, value) do { var = value; smp_wmb(); } while (0)
+
+#define smp_mb__before_atomic()    smp_mb()
+#define smp_mb__after_atomic()     smp_mb()
+
+#define smp_mb()    mb()
+#define smp_rmb()   rmb()
+#define smp_wmb()   __asm__ __volatile__ ("lwsync" : : : "memory")
+#define smp_read_barrier_depends()  read_barrier_depends()
+
+#define local_save_flags(flags) ((flags) = mfmsr())
+#define local_irq_restore(flags) do { \
+        __asm__ __volatile__("": : :"memory"); \
+        mtmsrd((flags)); \
+} while(0)
+
+static inline void local_irq_disable(void)
+{
+    unsigned long msr;
+    msr = mfmsr();
+    mtmsrd(msr & ~MSR_EE);
+    barrier();
+}
+
+static inline void local_irq_enable(void)
+{
+    unsigned long msr;
+    barrier();
+    msr = mfmsr();
+    mtmsrd(msr | MSR_EE);
+}
+
+static inline void __do_save_and_cli(unsigned long *flags)
+{
+    unsigned long msr;
+    msr = mfmsr();
+    *flags = msr;
+    mtmsrd(msr & ~MSR_EE);
+    barrier();
+}
+
+#define local_irq_save(flags) __do_save_and_cli(&flags)
+
+static inline int local_irq_is_enabled(void)
+{
+    return !!(mfmsr() & MSR_EE);
+}
+
+#define arch_fetch_and_add(x, v) __sync_fetch_and_add(x, v)

 #endif /* _ASM_SYSTEM_H */
diff --git a/xen/arch/ppc/include/asm/time.h b/xen/arch/ppc/include/asm/time.h
new file mode 100644
index 0000000000..aa9dda82a3
--- /dev/null
+++ b/xen/arch/ppc/include/asm/time.h
@@ -0,0 +1,23 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_PPC_TIME_H__
+#define __ASM_PPC_TIME_H__
+
+#include <xen/lib.h>
+#include <asm/processor.h>
+#include <asm/regs.h>
+
+struct vcpu;
+
+/* TODO: implement */
+static inline void force_update_vcpu_system_time(struct vcpu *v) {
+    BUG_ON("unimplemented");
+}
+
+typedef unsigned long cycles_t;
+
+static inline cycles_t get_cycles(void)
+{
+    return mfspr(SPRN_TBRL);
+}
+
+#endif /* __ASM_PPC_TIME_H__ */
diff --git a/xen/arch/ppc/include/asm/xenoprof.h b/xen/arch/ppc/include/asm/xenoprof.h
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/xen/arch/ppc/mm-radix.c b/xen/arch/ppc/mm-radix.c
index 3feeb90ebc..06129cef9c 100644
--- a/xen/arch/ppc/mm-radix.c
+++ b/xen/arch/ppc/mm-radix.c
@@ -1,13 +1,13 @@
 /* SPDX-License-Identifier: GPL-2.0-or-later */
 #include <xen/init.h>
 #include <xen/kernel.h>
+#include <xen/mm.h>
 #include <xen/types.h>
 #include <xen/lib.h>

 #include <asm/bitops.h>
 #include <asm/byteorder.h>
 #include <asm/early_printk.h>
-#include <asm/mm.h>
 #include <asm/page.h>
 #include <asm/processor.h>
 #include <asm/regs.h>
diff --git a/xen/arch/ppc/tlb-radix.c b/xen/arch/ppc/tlb-radix.c
index 3dde102c62..74213113e0 100644
--- a/xen/arch/ppc/tlb-radix.c
+++ b/xen/arch/ppc/tlb-radix.c
@@ -5,9 +5,9 @@
  *
  * Copyright 2015-2016, Aneesh Kumar K.V, IBM Corporation.
  */
+#include <xen/bitops.h>
 #include <xen/stringify.h>

-#include <asm/bitops.h>
 #include <asm/msr.h>
 #include <asm/processor.h>

diff --git a/xen/include/public/hvm/save.h b/xen/include/public/hvm/save.h
index 464ebdb0da..2cf4238daa 100644
--- a/xen/include/public/hvm/save.h
+++ b/xen/include/public/hvm/save.h
@@ -89,6 +89,8 @@ DECLARE_HVM_SAVE_TYPE(END, 0, struct hvm_save_end);
 #include "../arch-x86/hvm/save.h"
 #elif defined(__arm__) || defined(__aarch64__)
 #include "../arch-arm/hvm/save.h"
+#elif defined(__powerpc64__)
+#include "../arch-ppc.h"
 #else
 #error "unsupported architecture"
 #endif
diff --git a/xen/include/public/pmu.h b/xen/include/public/pmu.h
index eb87a81e7b..5a176b6ac3 100644
--- a/xen/include/public/pmu.h
+++ b/xen/include/public/pmu.h
@@ -11,6 +11,8 @@
 #include "arch-x86/pmu.h"
 #elif defined (__arm__) || defined (__aarch64__)
 #include "arch-arm.h"
+#elif defined (__powerpc64__)
+#include "arch-ppc.h"
 #else
 #error "Unsupported architecture"
 #endif
diff --git a/xen/include/public/xen.h b/xen/include/public/xen.h
index 920567e006..b812a0a324 100644
--- a/xen/include/public/xen.h
+++ b/xen/include/public/xen.h
@@ -16,6 +16,8 @@
 #include "arch-x86/xen.h"
 #elif defined(__arm__) || defined (__aarch64__)
 #include "arch-arm.h"
+#elif defined(__powerpc64__)
+#include "arch-ppc.h"
 #else
 #error "Unsupported architecture"
 #endif
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 19:23:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 19:23:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602672.939375 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrvm-0002MP-DU; Thu, 14 Sep 2023 19:23:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602672.939375; Thu, 14 Sep 2023 19:23:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgrvm-0002MI-9u; Thu, 14 Sep 2023 19:23:14 +0000
Received: by outflank-mailman (input) for mailman id 602672;
 Thu, 14 Sep 2023 19:23:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgrvk-0002MA-GJ
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 19:23:12 +0000
Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com
 [2a00:1450:4864:20::42c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 24aaa1ff-5334-11ee-8788-cb3800f73035;
 Thu, 14 Sep 2023 21:23:11 +0200 (CEST)
Received: by mail-wr1-x42c.google.com with SMTP id
 ffacd0b85a97d-31aeef88a55so1145351f8f.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 12:23:11 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 y14-20020a5d4ace000000b003176eab8868sm2542445wrs.82.2023.09.14.12.23.10
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 12:23:10 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 24aaa1ff-5334-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694719391; x=1695324191; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=qrWE2AHuxv5Yaqe7gnDbJGwX4muVOrWYvJSdz6hQA3Y=;
        b=XCByoK2Aaka1VQFrGc0RGFnLvfGpxnLFViESk5e3MYtc7YjbHPehFPkWZAavCgVgXw
         3VFHPXDgEfvkguwkb6jdvTdOXQ0NuqSgt+cVOUJ9RVhQyLTtjAp4pHCQw2rwoQr20EYV
         /Bu36T9I8wXTehteDtjt+DYmZpo5qLQ5k6vpo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694719391; x=1695324191;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=qrWE2AHuxv5Yaqe7gnDbJGwX4muVOrWYvJSdz6hQA3Y=;
        b=OviqES2RUEPP0TS38mjHFCrLF+1xDwUyqkbanumboo14nHSHA5p5uRNeBvBwM4rKhP
         43eDtry9B+nUZGmnGf8m7cq+7vrBY0yANOT3eIoQjMoNyAAlZp+hNhmUSvHGVzy5WUN6
         jD0MGI9bUIvXM54kW+aTsRiWHN/LcDHn5vQvD7TS10bRcRdEwV6iwZXzLnRQBc1MDzyM
         5Lp31Oqjv1kzf8TyLce5gu/I5ENdaEh72XaR+3qluYsPH6tFSrRJG4Q+Kpg1rYql6RCc
         HfuA59C092YEkvjZc9qo3rx1metK8pFoUEcRODZIk1E2u8FhrV7ExHutC6/NOhhBVf0Y
         zJ4w==
X-Gm-Message-State: AOJu0Yy05VbfOlRFMPVfjGKDJI1VD4b6BFAnilLbxYV3D4b53YWCbJeI
	9EVMN6nS+SDLalZQn1DstobL1g==
X-Google-Smtp-Source: AGHT+IFFxd+WItPq4GUuGULYVRX/Ys5ZHWMN67MReWrTea3Rm4M5QmcjKb/ncnJ9ZyCVwSAntgnQjg==
X-Received: by 2002:adf:f710:0:b0:314:2e95:1ec9 with SMTP id r16-20020adff710000000b003142e951ec9mr5574733wrp.10.1694719390872;
        Thu, 14 Sep 2023 12:23:10 -0700 (PDT)
Message-ID: <35177e10-3306-69fc-4ece-bba453cbdb0c@citrix.com>
Date: Thu, 14 Sep 2023 20:23:10 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 4/8] x86/spec-ctrl: Extend all SPEC_CTRL_{ENTER,EXIT}_*
 comments
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-5-andrew.cooper3@citrix.com>
 <e12f46d9-25eb-d564-4cb7-0e476e741725@suse.com>
In-Reply-To: <e12f46d9-25eb-d564-4cb7-0e476e741725@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 8:58 am, Jan Beulich wrote:
> On 13.09.2023 22:27, Andrew Cooper wrote:
>> --- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
>> +++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
>> @@ -218,7 +218,10 @@
>>      wrmsr
>>  .endm
>>  
>> -/* Use after an entry from PV context (syscall/sysenter/int80/int82/etc). */
>> +/*
>> + * Used after a synchronous entry from PV context.  SYSCALL, SYSENTER, INT,
>> + * etc.  Will always interrupt a guest speculation context.
>> + */
>>  .macro SPEC_CTRL_ENTRY_FROM_PV
>>  /*
>>   * Requires %rsp=regs/cpuinfo, %rdx=0
> For the entry point comments - not being a native speaker -, the use of
> "{will,may} interrupt" reads odd. You're describing the macros here,
> not the the events that led to their invocation. Therefore it would seem
> to me that "{will,may} have interrupted" would be more appropriate.

The salient information is what the speculation state looks like when
we're running the asm in these macros.

Sync and Async perhaps aren't the best terms.  For PV context at least,
it boils down to:

1) CPL>0 => you were in fully-good guest speculation context
2) CPL=0 => you were in fully-good Xen speculation context
3) IST && CPL=0 => Here be dragons.

HVM is more of a challenge.  VT-x behaves like an IST path, while SVM
does allow us to atomically switch to good Xen state.

Really, this needs to be a separate doc, with diagrams...

>> @@ -319,7 +334,14 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>>      UNLIKELY_END(\@_serialise)
>>  .endm
>>  
>> -/* Use when exiting to Xen in IST context. */
>> +/*
>> + * Use when exiting from any entry context, back to Xen context.  This
>> + * includes returning to other SPEC_CTRL_{ENTRY,EXIT}_* regions with
>> + * unsanitised state.
>> + *
>> + * Because we might have interrupted Xen beyond SPEC_CTRL_EXIT_TO_$GUEST, we
>> + * must treat this as if it were an EXIT_TO_$GUEST case too.
>> + */
>>  .macro SPEC_CTRL_EXIT_TO_XEN
>>  /*
>>   * Requires %rbx=stack_end
> Is it really "must"? At least in theory there are ways to recognize that
> exit is back to Xen context outside of interrupted entry/exit regions
> (simply by evaluating how far below stack top %rsp is).

Yes, it is must - it's about how Xen behaves right now, not about some
theoretical future with different tracking mechanism.

Checking the stack is very fragile and we've had bugs doing this in the
past.  It would break completely if we were to take things such as the
recursive-NMI fix (not that we're liable to at this point with FRED on
the horizon.)

A perhaps less fragile option would be to have .text.entry.spec_suspect
section and check %rip being in that.

But neither of these are good options.  It's adding complexity (latency)
to a fastpath to avoid a small hit in a rare case, so is a concrete
anti-optimisation.

>> @@ -344,6 +366,9 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>>      wrmsr
>>  
>>  .L\@_skip_sc_msr:
>> +
>> +    /* TODO VERW */
>> +
>>  .endm
> I don't think this comment is strictly necessary to add here, when the
> omission is addressed in a later patch. But I also don't mind its
> addition.

It doesn't especially matter if the series gets committed in one go, but
it does matter if it ends up being split.  This is the patch which
observes that VERW is missing.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 19:28:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 19:28:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602677.939384 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgs0Y-0004IH-Tx; Thu, 14 Sep 2023 19:28:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602677.939384; Thu, 14 Sep 2023 19:28:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgs0Y-0004IA-RE; Thu, 14 Sep 2023 19:28:10 +0000
Received: by outflank-mailman (input) for mailman id 602677;
 Thu, 14 Sep 2023 19:28:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgs0X-0004I2-D1
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 19:28:09 +0000
Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com
 [2a00:1450:4864:20::429])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d4f629f5-5334-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 21:28:07 +0200 (CEST)
Received: by mail-wr1-x429.google.com with SMTP id
 ffacd0b85a97d-31fa15f4cc6so1241760f8f.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 12:28:07 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 f4-20020adfdb44000000b00317f29ad113sm2539572wrj.32.2023.09.14.12.28.06
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 12:28:06 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d4f629f5-5334-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694719687; x=1695324487; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=8RBeXJcgmWMKJvqZB5m47b/HjX9bLYO318KdOcckF7w=;
        b=mbHywGf9eslFPJvXI0gEw+YfTVlU4ZWwcw2IVU92hppno/LtCdQgfg6m3XjvPwZ0pD
         ot6ZRbhklbD1y7TgK5MnHZay6Z0R8Kkc/KzYjT860RRBCaaILqz3vLEL3hpuggT3ukhl
         ojhhXs+O/XD6YHqK4VOUNgUMCRgX2ruPOObS8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694719687; x=1695324487;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=8RBeXJcgmWMKJvqZB5m47b/HjX9bLYO318KdOcckF7w=;
        b=kGsBAjQnP75VLOlYkrob1WgJn73RhEfxsVi1ikEGhWGIAUGJr3RECyvEDiX/fEfpCI
         XWwOsirvHfQ3qhlxEsBPxOlIqeNS0b+pepJ/6cRzl/f6b7pG9ORCdSn8nthXUuhA3F8d
         9FWcc5+4ktCGdPuAtRHTF85/K5wA6Z3VffudEd0CNUSfTCsUeG/r56SvQ+2UnX8kvet1
         0NGrhpdlUEXtMdbxhRv9HApXHPsvRbls06c/IO1Cxhc6HurqUd2hNepwbWIbtyKhw8m1
         FbVsv2DGtkLPaBpg1F/n/yF0CnjVoY78fAz6sQHX9Pr82dZM0jC3CDP8V/l0DTepYXfj
         FnvQ==
X-Gm-Message-State: AOJu0YwXwj7jM4YeXvv0xVeYKSu5xpaSA+2vY5yU8tYlghtQSrEOH4MY
	fEZo9mHgy2EF5YtPCrrN5F5+thd4hJqxyU1OYqIP2w==
X-Google-Smtp-Source: AGHT+IHt512bZZk2GGdLMy2BDHdamN+s+RVlUweHqYB2wa48x4R+YqsqHN2UlKVUwX7vxSGvpEjeFQ==
X-Received: by 2002:a5d:5149:0:b0:317:6310:a616 with SMTP id u9-20020a5d5149000000b003176310a616mr5873998wrt.36.1694719686745;
        Thu, 14 Sep 2023 12:28:06 -0700 (PDT)
Message-ID: <0ab5dbd9-4bc4-8c3f-ea37-36454adb141c@citrix.com>
Date: Thu, 14 Sep 2023 20:28:06 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 5/8] x86/entry: Adjust restore_all_xen to hold stack_end
 in %r14
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-6-andrew.cooper3@citrix.com>
 <099ac89d-ea37-352e-940e-91993c1649d9@suse.com>
In-Reply-To: <099ac89d-ea37-352e-940e-91993c1649d9@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 14/09/2023 9:51 am, Jan Beulich wrote:
> On 13.09.2023 22:27, Andrew Cooper wrote:
>> All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
>> for consistency, freeing up %rbx to be used differently.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>
> The choice of %rbx was, iirc, for avoiding unnecessary code size increase
> (due to extra REX prefixes needed in some of the affected insns). I
> understand you view this as not a real concern, but I think saying so
> explicitly in the description would be at least desirable. After all there
> would also be the alternative of further parametrizing the involved macros.

Yeah I'm seriously not concerned about a REX prefix or two.

This is about making all the helpers more consistent, to cut down on the
number of errors involved in modifying this mess.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 19:44:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 19:44:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602681.939394 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgsG2-0001S7-7h; Thu, 14 Sep 2023 19:44:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602681.939394; Thu, 14 Sep 2023 19:44:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgsG2-0001S0-57; Thu, 14 Sep 2023 19:44:10 +0000
Received: by outflank-mailman (input) for mailman id 602681;
 Thu, 14 Sep 2023 19:44:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgsG1-0001Rs-08
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 19:44:09 +0000
Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com
 [2a00:1450:4864:20::32a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 118505c0-5337-11ee-8788-cb3800f73035;
 Thu, 14 Sep 2023 21:44:07 +0200 (CEST)
Received: by mail-wm1-x32a.google.com with SMTP id
 5b1f17b1804b1-401b5516104so14431425e9.2
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 12:44:07 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 h4-20020a056000000400b00317909f9985sm2527404wrx.113.2023.09.14.12.44.06
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 12:44:07 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 118505c0-5337-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694720647; x=1695325447; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=lnrFYwJRZv3VAf6epPjPF6IkOQ6a6ACAjJWuZuNpGHY=;
        b=Jy6p9yUzwjVFiePYawrXF/0yaUs+r9A8T04U+vAYJoufQadEXI0KYak1/q/oj9iP/F
         3oCqGhyaY0V3coFwj3ENRhjuh1WtC5Ga/IK1oFarvYPFEgnRUNbkj40HFrA/Q4u7pKTY
         CIYJxUddDAK+ueB4wH8WSfszp0Svgo5Xtthw0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694720647; x=1695325447;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=lnrFYwJRZv3VAf6epPjPF6IkOQ6a6ACAjJWuZuNpGHY=;
        b=pXkYcMkzM6Y0/XsVOeWEMpR62V0Fa1sUmVSl3wh7KpxCRb4/ZL7tgqw8swPDz2Uu3h
         vKpel1oImUo1lpywnAI4eheF+L6gl7or/7MNSFRJDbgoYZdglIRujnJR25kW8sORNgfm
         BUcUU4KfHLRwcGhGVAHchQdGSFI1yzxkgiXkzX7mQqkPouIsZVxsynokF+hUZIKbhKWx
         1e5Ka0V6EhSfsERgXFjX40cPan0Qcs77DdvrpX1ekwRwHtqyrq0qZ7RDOM+J3YLkXXJ0
         VcFvAGoTWSJ+T4oRO/t6Ql0lthkq89FmD6BlgbRWVz8vCosMODf3z0kr+1wtQSRqvdsN
         s2QQ==
X-Gm-Message-State: AOJu0YxowD198KBrqVMIoRQpBy7epwndMHOIc9qann7mEXfK3PJD2Dz+
	f5KbpZ9Wd04dBvfHhZxawzrL9A==
X-Google-Smtp-Source: AGHT+IFfxAI/zQB4PxTxxz/9a2O3vQW/qd9NUQldDxS6MVUJcphHPzGNyTfcOxlK6r4HNV1f9nj4jw==
X-Received: by 2002:a5d:614d:0:b0:31f:8a6d:e527 with SMTP id y13-20020a5d614d000000b0031f8a6de527mr4939778wrt.45.1694720647343;
        Thu, 14 Sep 2023 12:44:07 -0700 (PDT)
Message-ID: <fb9ec99d-9c76-82ff-9b82-22fff1a62c6c@citrix.com>
Date: Thu, 14 Sep 2023 20:44:06 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 6/8] x86/entry: Track the IST-ness of an entry for the
 exit paths
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-7-andrew.cooper3@citrix.com>
 <762b58fe-a841-f92c-93a8-77dbb86bf118@suse.com>
In-Reply-To: <762b58fe-a841-f92c-93a8-77dbb86bf118@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 10:32 am, Jan Beulich wrote:
> On 13.09.2023 22:27, Andrew Cooper wrote:
>> --- a/xen/arch/x86/x86_64/compat/entry.S
>> +++ b/xen/arch/x86/x86_64/compat/entry.S
>> @@ -117,8 +117,15 @@ compat_process_trap:
>>          call  compat_create_bounce_frame
>>          jmp   compat_test_all_events
>>  
>> -/* %rbx: struct vcpu, interrupts disabled */
>> +/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
>>  ENTRY(compat_restore_all_guest)
>> +
>> +#ifdef CONFIG_DEBUG
>> +        mov   %rsp, %rdi
>> +        mov   %r12, %rsi
>> +        call  check_ist_exit
>> +#endif
>> +
>>          ASSERT_INTERRUPTS_DISABLED
>>          mov   $~(X86_EFLAGS_IOPL | X86_EFLAGS_VM), %r11d
>>          and   UREGS_eflags(%rsp),%r11d
> Without having peeked ahead, is there any use of %r12 going to appear
> on this path? I thought it's only going to be restore_all_xen?

For now, we only need to change behaviour based on ist_exit in
restore_all_xen.

But, we do get here in IST context, and I'm not interested in having to
re-do the analysis to determine if this is safe.  ist_exit is a global
property of exiting Xen, so should be kept correct from the outset.

>
>> --- a/xen/arch/x86/x86_64/entry.S
>> +++ b/xen/arch/x86/x86_64/entry.S
>> @@ -142,10 +142,16 @@ process_trap:
>>  
>>          .section .text.entry, "ax", @progbits
>>  
>> -/* %rbx: struct vcpu, interrupts disabled */
>> +/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
>>  restore_all_guest:
>> -        ASSERT_INTERRUPTS_DISABLED
>>  
>> +#ifdef CONFIG_DEBUG
>> +        mov   %rsp, %rdi
>> +        mov   %r12, %rsi
>> +        call  check_ist_exit
>> +#endif
>> +
>> +        ASSERT_INTERRUPTS_DISABLED
>>          /* Stash guest SPEC_CTRL value while we can read struct vcpu. */
>>          mov VCPU_arch_msrs(%rbx), %rdx
>>          mov VCPUMSR_spec_ctrl_raw(%rdx), %r15d
> Even here I don't think I see a need for the addition. Plus if the check
> is warranted here, is it really necessary for it to live ahead of the
> interrupts-disabled check?

What makes you think there is a relevance to the order of two assertions
in fully irqs-off code?

The checks are in the same order as the comment stating the invariants.

>  Further, seeing that being marco-ized, would
> it make sense to have a CHECK_IST_EXIT macro in case more than a single
> use site remains?
>
>> @@ -1087,6 +1100,10 @@ handle_ist_exception:
>>  .L_ist_dispatch_done:
>>          mov   %r15, STACK_CPUINFO_FIELD(xen_cr3)(%r14)
>>          mov   %bl, STACK_CPUINFO_FIELD(use_pv_cr3)(%r14)
>> +
>> +        /* This is an IST exit */
>> +        mov   $1, %r12
>> +
>>          cmpb  $X86_EXC_NMI, UREGS_entry_vector(%rsp)
>>          jne   ret_from_intr
> Could I talk you into using a less than 7-byte insn here? "or $1, %r12"
> would be 4 bytes, "mov $1, %r12b", "inc %r12", and "not %r12" would be
> just 3. All have certain downsides, yes, but I wonder whether switching
> isn't worth it. Even "mov $1, %r12d" would be at least one byte less,
> without any downsides. And the OR and INC variants would allow the
> remaining 63 bits to be used for another purpose down the road.

This is a 2Hz-at-most path.  The size of one instruction is not
something to care about.

But I did mean to use the %r12d form, so I'll go with that.  Everything
else depends on the behaviour of earlier logic.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 19:49:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 19:49:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602686.939405 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgsLN-0002x9-Q9; Thu, 14 Sep 2023 19:49:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602686.939405; Thu, 14 Sep 2023 19:49:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgsLN-0002x2-NW; Thu, 14 Sep 2023 19:49:41 +0000
Received: by outflank-mailman (input) for mailman id 602686;
 Thu, 14 Sep 2023 19:49:40 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgsLM-0002wv-BH
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 19:49:40 +0000
Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com
 [2a00:1450:4864:20::32e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d66fba2f-5337-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 21:49:38 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-3ff1c397405so14888575e9.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 12:49:38 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 k15-20020a5d628f000000b0031f729d883asm2549357wru.42.2023.09.14.12.49.37
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 12:49:37 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d66fba2f-5337-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694720978; x=1695325778; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=7A4PeC+rd8LSHW0uKuWhJ/8TcslGyjVfH6s8/VssAec=;
        b=ltKNPLl4Rk3v7ptQYCXjf94c2k2M4GiFkRrRQpK1NvIx18dEIe34KsyROo/MwaS3Y1
         cPAlZ+BpIZdz91uvyF7W8NTMsraFU0q9K4cykJw0Y4TWhUmy2q8vP54qHnpHoc0rDrCD
         ApUEN4VABbau8f59kDhmlauv8BtJKBOXYNN4Q=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694720978; x=1695325778;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=7A4PeC+rd8LSHW0uKuWhJ/8TcslGyjVfH6s8/VssAec=;
        b=vDfcPE8UHotLESJCtcxQPqGjNNz3BkJWCYtMGPPA9247Rcxz8qjzVx6IQif1frc0ap
         ut7UXGSMn3iwBObyH1ste8isC0oNCA5NJtyF3kI9qCV6h3/rung14h6URAbYuUgCZQ2h
         v5ic7mu+Hye/UcrMvyEuID8M4XQ0cwKoenBD5qc656jqLmHf4n1wqnLObJUQkLC9QR/y
         stqPNt5eh70VIssELBQD3LxfRBYQY0ghAZc4Oo5wKxXS2CjrMVEhW+UcGtgJz61Zv24l
         8qQE9xTSUgttL9LT5h+sLtDNgH0vO89eVPOV/mRm8jiwYzLBcaJYGyEc1SoQxpc7eHvt
         ABng==
X-Gm-Message-State: AOJu0Ywdtes93TZi1cnNYxrvQlbke7yianJNSh3qiAqGWcuksr0/A46B
	kPO8ycQzB93lrQY32s2EXJWKwg==
X-Google-Smtp-Source: AGHT+IHARt0QTuVygXNlB0sCBJ/cgrhCyle/zyqLD9rufZCO8vLGcz1oZtauJ4a+PwRMIIteMUIW8Q==
X-Received: by 2002:a05:600c:cc:b0:3fe:1db2:5179 with SMTP id u12-20020a05600c00cc00b003fe1db25179mr5385625wmm.19.1694720977712;
        Thu, 14 Sep 2023 12:49:37 -0700 (PDT)
Message-ID: <22864483-9cb8-7220-f82e-883fd2ef617a@citrix.com>
Date: Thu, 14 Sep 2023 20:49:37 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 7/8] x86/spec-ctrl: Issue VERW during IST exit to Xen
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-8-andrew.cooper3@citrix.com>
 <f771260c-feed-9183-0c0c-308f517e09b4@suse.com>
In-Reply-To: <f771260c-feed-9183-0c0c-308f517e09b4@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 11:01 am, Jan Beulich wrote:
> On 13.09.2023 22:27, Andrew Cooper wrote:
>> There is a corner case where e.g. an NMI hitting an exit-to-guest path after
>> SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
>> flush to scrub potentially sensitive data from uarch buffers.
>>
>> In order to compensate, issue VERW when exiting to Xen from an IST entry.
>>
>> SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
>> and we're about to add a third.  Load the field into %ebx, and list the
>> register as clobbered.
>>
>> %r12 has been arranged to be the ist_exit signal, so add this as an input
>> dependency and use it to identify when to issue a VERW.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> While looking technically okay, I still have a couple of remarks:
>
>> --- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
>> +++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
>> @@ -344,10 +344,12 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>>   */
>>  .macro SPEC_CTRL_EXIT_TO_XEN
>>  /*
>> - * Requires %r14=stack_end
>> - * Clobbers %rax, %rcx, %rdx
>> + * Requires %r12=ist_exit, %r14=stack_end
>> + * Clobbers %rax, %rbx, %rcx, %rdx
> While I'd generally be a little concerned of the growing dependency and
> clobber lists, there being a single use site makes this pretty okay. The
> macro invocation being immediately followed by RESTORE_ALL effectively
> means we can clobber almost everything here.
>
> As to register usage and my comment on patch 5: There's no real need
> to switch %rbx to %r14 there if I'm not mistaken

As said, it's about consistency of the helpers.


>>   */
>> -    testb $SCF_ist_sc_msr, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14)
>> +    movzbl STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14), %ebx
>> +
>> +    testb $SCF_ist_sc_msr, %bl
>>      jz .L\@_skip_sc_msr
>>  
>>      /*
>> @@ -358,7 +360,7 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>>       */
>>      xor %edx, %edx
>>  
>> -    testb $SCF_use_shadow, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14)
>> +    testb $SCF_use_shadow, %bl
>>      jz .L\@_skip_sc_msr
>>  
>>      mov STACK_CPUINFO_FIELD(shadow_spec_ctrl)(%r14), %eax
>> @@ -367,8 +369,16 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>>  
>>  .L\@_skip_sc_msr:
>>  
>> -    /* TODO VERW */
>> +    test %r12, %r12
>> +    jz .L\@_skip_ist_exit
>> +
>> +    /* Logically DO_SPEC_CTRL_COND_VERW but without the %rsp=cpuinfo dependency */
>> +    testb $SCF_verw, %bl
>> +    jz .L\@_verw_skip
>> +    verw STACK_CPUINFO_FIELD(verw_sel)(%r14)
>> +.L\@_verw_skip:
> Nit: .L\@_skip_verw would be more consistent with the other label names.

So it would.  I'll tweak.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 20:01:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 20:01:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602691.939415 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgsX0-0008GR-RC; Thu, 14 Sep 2023 20:01:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602691.939415; Thu, 14 Sep 2023 20:01:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgsX0-0008GK-N0; Thu, 14 Sep 2023 20:01:42 +0000
Received: by outflank-mailman (input) for mailman id 602691;
 Thu, 14 Sep 2023 20:01:41 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgsWz-0008GD-C2
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 20:01:41 +0000
Received: from mail-wr1-x431.google.com (mail-wr1-x431.google.com
 [2a00:1450:4864:20::431])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 842396e6-5339-11ee-9b0d-b553b5be7939;
 Thu, 14 Sep 2023 22:01:39 +0200 (CEST)
Received: by mail-wr1-x431.google.com with SMTP id
 ffacd0b85a97d-31dcf18f9e2so1284825f8f.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 13:01:39 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 t3-20020a05600001c300b003143b14848dsm2534643wrx.102.2023.09.14.13.01.38
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 13:01:38 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 842396e6-5339-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694721698; x=1695326498; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=uT84xhqzCFx4hVoWnPZzHjqOo1Q9Jzf191GjeVA1KD8=;
        b=fkbeqc2bFmkSIZqI63KvDMvoFly1fef4NgvUQc0pLCKHHWTIPbeehILH/Mn57Qvv5B
         SoXaLNMZFPhyMlJmKZtVxZG6A/syyzmJMbO7zScJ/CBuEGE8rhrVN96nmcey3dBsGH8y
         RQqdvWRLFKxB6C8TUYIuotKNLBmcFQN8iviMo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694721698; x=1695326498;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=uT84xhqzCFx4hVoWnPZzHjqOo1Q9Jzf191GjeVA1KD8=;
        b=I4HkjImKtoZ0xgnMhJ43Ykg/41gm0u7vpu1ud/1ceW+VT5ALWCSDsZFJBlL9FaikY+
         WQ2ityZYrp4LA/5tAUkmCtXlaYYLfklkOak4WIaZYX2MWEsiyrISk+Tre+sUyXBdWCPa
         zYRWEt7+Ruyezh1uc93AYQkq5CZVmV5emIONrlNZqSrYADIKJa9BFS5jLDSuAXRQd35N
         yHeuvoAQ88+SChAzTYsr5BDBAvE0ky0Xcufz6VWRxK4AWH1MmUeZBxALNfNLgh6bOCUG
         5uKyJkBJtCbqW8ThNvNePCIiTrTiye1EkKi/3ELhPsVkqQxD80B+OBOdsSR75pKW2LjZ
         2mqg==
X-Gm-Message-State: AOJu0Yyy61MTqBaEP2BCajI8bbvKQqxDhB4nShatjmGR69utoBrLl5Vv
	u0A03LuK1m8YqXl9EtdKRbjQgg==
X-Google-Smtp-Source: AGHT+IH1mhYAh3tiLd3UyHALgPo5AZe62QU7CxmZTtetKa7eHOxgsuH0EK3lk8Snkaw1OLTjcrspZA==
X-Received: by 2002:a5d:51ca:0:b0:31d:da10:e477 with SMTP id n10-20020a5d51ca000000b0031dda10e477mr5462223wrv.8.1694721698652;
        Thu, 14 Sep 2023 13:01:38 -0700 (PDT)
Message-ID: <309c52fb-ac30-c895-bc39-a3c1a7eaa9e1@citrix.com>
Date: Thu, 14 Sep 2023 21:01:38 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 8/8] x86/spec-ctrl: Mitigate the Zen1 DIV leakge
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-9-andrew.cooper3@citrix.com>
 <f60a8b98-0358-6dbf-5c60-ff0cfbc715a5@suse.com>
In-Reply-To: <f60a8b98-0358-6dbf-5c60-ff0cfbc715a5@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 11:52 am, Jan Beulich wrote:
> On 13.09.2023 22:27, Andrew Cooper wrote:
>> @@ -378,6 +392,8 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>>      verw STACK_CPUINFO_FIELD(verw_sel)(%r14)
>>  .L\@_verw_skip:
>>  
>> +    ALTERNATIVE "", DO_SPEC_CTRL_DIV, X86_FEATURE_SC_DIV
>> +
>>  .L\@_skip_ist_exit:
>>  .endm
> While we did talk about using alternatives patching here, I'm now in
> doubt again, in particular because the rest of the macro uses
> conditionals anyway, and the code here is bypassed for non-IST exits. If
> you're sure you want to stick to this, then I think some justification
> wants adding to the description.

Patching IST paths is safe - we drop into NMI context, and rewrite
before starting APs.

VERW needs to remain a conditional because of the FB_CLEAR/MMIO paths. 
MSR_SPEC_CTRL is going to turn back into being an alternative when I
make eIBRS work sensibly.

>> @@ -955,6 +960,40 @@ static void __init srso_calculations(bool hw_smt_enabled)
>>          setup_force_cpu_cap(X86_FEATURE_SRSO_NO);
>>  }
>>  
>> +/*
>> + * Div leakage is specific to the AMD Zen1 microarchitecure.  Use STIBP as a
>> + * heuristic to select between Zen1 and Zen2 uarches.
>> + */
>> +static bool __init has_div_vuln(void)
>> +{
>> +    if ( !(boot_cpu_data.x86_vendor &
>> +           (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>> +        return false;
>> +
>> +    if ( (boot_cpu_data.x86 != 0x17 && boot_cpu_data.x86 != 0x18) ||
>> +         !boot_cpu_has(X86_FEATURE_AMD_STIBP) )
>> +        return false;
>> +
>> +    return true;
>> +}
>> +
>> +static void __init div_calculations(bool hw_smt_enabled)
>> +{
>> +    bool cpu_bug_div = has_div_vuln();
>> +
>> +    if ( opt_div_scrub == -1 )
>> +        opt_div_scrub = cpu_bug_div;
>> +
>> +    if ( opt_div_scrub )
>> +        setup_force_cpu_cap(X86_FEATURE_SC_DIV);
> Isn't this only lowering performance (even if just slightly) when SMT is
> enabled, without gaining us very much?

It is consistent with how MDS/L1TF/others work, which is important.

And it does protect against a single-threaded attacker, for what that's
worth in practice.

>
>> +    if ( opt_smt == -1 && cpu_bug_div && hw_smt_enabled )
>> +        warning_add(
>> +            "Booted on leaky-DIV hardware with SMT/Hyperthreading\n"
>> +            "enabled.  Please assess your configuration and choose an\n"
>> +            "explicit 'smt=<bool>' setting.  See XSA-439.\n");
>> +}
> What about us running virtualized? The topology we see may not be that
> of the underlying hardware. Maybe check_smt_enabled() should return
> true when cpu_has_hypervisor is true? (In-guest decisions would
> similarly need to assume that they may be running on SMT-enabled
> hardware, despite not themselves seeing this to be the case.)
>
> Since we can't know for sure when running virtualized, that's a case
> where I would consider it useful to enable the workaround nevertheless
> (perhaps accompanied by a warning that whether this helps depends on
> the next level hypervisor).

Honestly, SMT's not relevant.  If you're virtualised, you've lost
irrespective.

There is no FOO_NO bit, so there's no possible way a VM can figure out
if it is current on, or may subsequently move to, an impacted processor.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 20:05:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 20:05:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602696.939426 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgsaV-0000ye-F0; Thu, 14 Sep 2023 20:05:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602696.939426; Thu, 14 Sep 2023 20:05:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgsaV-0000yX-9V; Thu, 14 Sep 2023 20:05:19 +0000
Received: by outflank-mailman (input) for mailman id 602696;
 Thu, 14 Sep 2023 20:05:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgsaU-0000yP-3j
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 20:05:18 +0000
Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com
 [2a00:1450:4864:20::329])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 05a42108-533a-11ee-8788-cb3800f73035;
 Thu, 14 Sep 2023 22:05:16 +0200 (CEST)
Received: by mail-wm1-x329.google.com with SMTP id
 5b1f17b1804b1-401d6f6b2e0so16216805e9.1
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 13:05:16 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 z25-20020a1c4c19000000b003fe29f6b61bsm2801946wmf.46.2023.09.14.13.05.15
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 13:05:15 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 05a42108-533a-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694721916; x=1695326716; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=3vId4sGLx2eHjI1TRIXVKBBQP34DBKTvr1CrE3vZyMI=;
        b=tNugVZ7uc8xqg2EBSHUq+i8vuxttGRm2zY9z7UX3H7V972/Xz9JlwWvlQNoWNXWlKj
         NlZiJjtroyAiBhSc+1zFtcsp5fR3bO/y5Ra0Wk+nqdr5AfUFwEm3i3nkl8DNqj7LaBeF
         emUc0o1cmADH4E4OZ+cOUkX3fYX2PZVVjawvU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694721916; x=1695326716;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=3vId4sGLx2eHjI1TRIXVKBBQP34DBKTvr1CrE3vZyMI=;
        b=xIrND11xBG/iu2WJZJLon6q+5fUsDIBVHk/R/wnH1ITRZ8gVHSrdRhu9aduRINv1T5
         xCqU8z7ajy+q9c0NAPlFt2afI00CAPGa4elg+t+fqfVS1kxCAc75ii9zvC1GK2MduWDx
         zA3C17stq86AbFSmB3Vhk0dkQTAM6bRqMCmVuzpDItm5LMhj9AbQeiG/qyTYBwK51gi4
         GLRs2mrHYNJDH/v3bGJG1qQlRsSsAW0cayX6L9A/LuBqIabkXqbkeCdUcI5oxhbieebk
         oWQFX0SEjTlRkEjjMPanhG4juP0dklOGGq1iCJSfGRQ2xiIlKz7StzoQL8i2T8nHckKx
         z8Fw==
X-Gm-Message-State: AOJu0YzO92RSH23g+6lcuyDXErTng/0M04MmrA4lSKKW9rY5vEbc6BIs
	NJdXp7VM/S8SBzxnlKitdV//pw==
X-Google-Smtp-Source: AGHT+IEFOMu8HOw1fLimacRClqpUxu9YYIpRBWrQpDg29JIiiHG1zJtWI6wj4wfcsLWWwQsSl6GBrg==
X-Received: by 2002:a05:600c:b4b:b0:3fe:1b5e:82 with SMTP id k11-20020a05600c0b4b00b003fe1b5e0082mr1946889wmr.20.1694721915901;
        Thu, 14 Sep 2023 13:05:15 -0700 (PDT)
Message-ID: <55bf2c04-c238-ba86-3ef4-99b0524c17ae@citrix.com>
Date: Thu, 14 Sep 2023 21:05:15 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 8/8] x86/spec-ctrl: Mitigate the Zen1 DIV leakge
Content-Language: en-GB
To: Jason Andryuk <jandryuk@gmail.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-9-andrew.cooper3@citrix.com>
 <CAKf6xpuRh00P9at-bY+XE669vjoMf_xMwozQkCx=DL6Q2kLwgg@mail.gmail.com>
In-Reply-To: <CAKf6xpuRh00P9at-bY+XE669vjoMf_xMwozQkCx=DL6Q2kLwgg@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 14/09/2023 2:12 pm, Jason Andryuk wrote:
> On Wed, Sep 13, 2023 at 6:09 PM Andrew Cooper <andrew.cooper3@citrix.com> wrote:
>> @@ -955,6 +960,40 @@ static void __init srso_calculations(bool hw_smt_enabled)
>>          setup_force_cpu_cap(X86_FEATURE_SRSO_NO);
>>  }
>>
>> +/*
>> + * Div leakage is specific to the AMD Zen1 microarchitecure.  Use STIBP as a
>> + * heuristic to select between Zen1 and Zen2 uarches.
>> + */
>> +static bool __init has_div_vuln(void)
>> +{
>> +    if ( !(boot_cpu_data.x86_vendor &
>> +           (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>> +        return false;
>> +
>> +    if ( (boot_cpu_data.x86 != 0x17 && boot_cpu_data.x86 != 0x18) ||
>> +         !boot_cpu_has(X86_FEATURE_AMD_STIBP) )
>> +        return false;
>> +
>> +    return true;
>> +}
>> +
>> +static void __init div_calculations(bool hw_smt_enabled)
>> +{
>> +    bool cpu_bug_div = has_div_vuln();
>> +
> Would it make sense to add
>     if ( !cpu_bug_div )
>         return
> ...
>
>> +    if ( opt_div_scrub == -1 )
>> +        opt_div_scrub = cpu_bug_div;
>> +
>> +    if ( opt_div_scrub )
>> +        setup_force_cpu_cap(X86_FEATURE_SC_DIV);
> ...so that div-scrub=1 isn't setting X86_FEATURE_SC_DIV on un-affected
> hardware?  Or do you want to leave command line control in place in
> case it might be needed as a future workaround on other hardware?

All options (where possible) allow for paths to be explicitly activated
on un-affected hardware so we can test this giant mess.

The only cases where we ignore a user choice is when the result will
crash from e.g. #GP due to insufficient microcode.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 20:54:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 20:54:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602703.939435 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgtLP-0007ay-QS; Thu, 14 Sep 2023 20:53:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602703.939435; Thu, 14 Sep 2023 20:53:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgtLP-0007ar-Na; Thu, 14 Sep 2023 20:53:47 +0000
Received: by outflank-mailman (input) for mailman id 602703;
 Thu, 14 Sep 2023 20:53:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=K7SL=E6=gmail.com=pryorm09@srs-se1.protection.inumbo.net>)
 id 1qgtLN-0007Za-Tp
 for xen-devel@lists.xen.org; Thu, 14 Sep 2023 20:53:45 +0000
Received: from mail-ua1-x936.google.com (mail-ua1-x936.google.com
 [2607:f8b0:4864:20::936])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id caac4068-5340-11ee-8788-cb3800f73035;
 Thu, 14 Sep 2023 22:53:44 +0200 (CEST)
Received: by mail-ua1-x936.google.com with SMTP id
 a1e0cc1a2514c-7a7d7a3d975so706386241.3
 for <xen-devel@lists.xen.org>; Thu, 14 Sep 2023 13:53:44 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: caac4068-5340-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20221208; t=1694724823; x=1695329623; darn=lists.xen.org;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=2mOvvlqWA+AKUW19DqEpbmZAH94qZibDsH3zwHATfUw=;
        b=O7e6slW2OUV5RWPckigdsLpusVV8XTdAIc436FkCcCtlA8RaEBLhEEz7FcTisJ5eH3
         Fo2IEdStuBEvPMvyq7eFH9Lk8Jm5hukEBOJYHU/vXdG4Vuufr6BGM6ELgvd0226SAykp
         WlUJjcX4Ngj1Ql6FH04CHBx0Nz8cEciIkU64Dxx31ITesoJ/dCgTOUA8f1XD4KD4XgAq
         sRto+Ahr3bK5kAzTmRB6KjnTF5C3ouB+JTlHsSTX1aP1J1sboctqovkOH8KaP0ul4g9q
         EjstTdtEW0SoejIzl6x/1hdAK1siq2Lh7RN7IDDyNaDKjlVKFOuCCgJzIX0yguS1r5if
         qtKQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694724823; x=1695329623;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=2mOvvlqWA+AKUW19DqEpbmZAH94qZibDsH3zwHATfUw=;
        b=UhmJpuBXbhEIQVfIHMWwyYgIuHjE+NX/mw1li+H1rChfou6QP85dSj6QJVrTDQsJza
         XEr+LWj7sigzlQ4hvTkw/F4LC5AAuvSyL7UUXJW59iEsEyv379T54nWgw5CVw1GDXEig
         bVBVwpX+S7ZS11Y9j8oFDSotzRnd367+A44u74kWH6kOmoXx0J+4qjA02greIf7fhOVc
         xeMoifSNkJl469uHh6ad2W+z7fhBIslCys3j5wZ7YBmVxWx/d5UFJw4vBL1c9Ce9Ipkn
         mgej2iBWjKwJj2oEm1WwhHYpk7v5xQTb1Qu7DouWlLaf6auWKSvxtVbjWGxKKrYliWqc
         o3SQ==
X-Gm-Message-State: AOJu0YxFlL9p3feL2Td3Y0LSIWGYw0iIeFY0+iTRXv5E01U7NNTqTlsm
	Yb3dDqBiWIosLn9gdBJydECmFiIcb3lO9tWfbyVxBZ9lFPU=
X-Google-Smtp-Source: AGHT+IEgIeYWSnij5g6FsUJegUkYmVfZkZqAOIe1MysHzP4uEdTLwxBQWi9MRulj7RLS1YDfJGZlL2E04ToRatETxdI=
X-Received: by 2002:a1f:e783:0:b0:48d:5af8:b9d0 with SMTP id
 e125-20020a1fe783000000b0048d5af8b9d0mr6836666vkh.6.1694724823058; Thu, 14
 Sep 2023 13:53:43 -0700 (PDT)
MIME-Version: 1.0
From: Pry Mar <pryorm09@gmail.com>
Date: Thu, 14 Sep 2023 13:53:31 -0700
Message-ID: <CAHnBbQ_KTWXQiw7PuxzsiH563uCCNaJL6+VkmcK+V_n5M8RaPA@mail.gmail.com>
Subject: 4.8-unstable: building firmware/hvmloader errors in Bookworm with gcc-12.2
To: xen-devel <xen-devel@lists.xen.org>
Content-Type: multipart/alternative; boundary="000000000000120d59060557df8e"

--000000000000120d59060557df8e
Content-Type: text/plain; charset="UTF-8"

Hello,

First attempt to build xen-4.18-unstabl in deb12 (Bookworm):
/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.asl
  9851:             Name ( SLT, 0x0 )
Remark   2173 -          Creation of named objects within a method is
highly inefficient, use globals or method local variables instead ^
 (\_GPE._L03)

/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.asl
  9852:             Name ( EVT, 0x0 )
Remark   2173 -          Creation of named objects within a method is
highly inefficient, use globals or method local variables instead ^
 (\_GPE._L03)

ASL Input:
/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.asl
-  397476 bytes   8140 keywords  11139 source lines
AML Output:
 /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.aml
-   73130 bytes   5541 opcodes    2599 named objects
Hex Dump:
 /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.hex
-  686160 bytes

Compilation successful. 0 Errors, 129 Warnings, 2 Remarks, 2762
Optimizations
sed -e 's/AmlCode/dsdt_anycpu/g' -e 's/_aml_code//g'
/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.hex
> /home/mockbuild/pbdeps/xen-4.18~rc0/debi>
echo "int dsdt_anycpu_len=sizeof(dsdt_anycpu);" >>
/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.c.tmp
mv -f
/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.c.tmp
/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmlo>
rm -f
/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.aml
/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmload>
make[9]: Leaving directory
'/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/libacpi'
make[8]: Leaving directory
'/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader'
make[7]: ***
[/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/../../tools/Rules.mk:206:
subdir-all-hvmloader] Error 2
make[7]: Leaving directory
'/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware'
make[6]: ***
[/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/../../tools/Rules.mk:201:
subdirs-all] Error 2
make[6]: Leaving directory
'/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware'
make[5]: *** [Makefile:37: all] Error 2
make[5]: Leaving directory
'/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware'
make[4]: ***
[/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/../tools/Rules.mk:206:
subdir-all-firmware] Error 2
make[4]: Leaving directory
'/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools'
make[3]: ***
[/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/../tools/Rules.mk:201:
subdirs-all] Error 2
make[3]: Leaving directory
'/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools'
make[2]: *** [debian/rules.real:218: debian/stamps/build-utils_amd64] Error
2
make[2]: Leaving directory '/home/mockbuild/pbdeps/xen-4.18~rc0'
make[1]: *** [debian/rules.gen:57: build-arch_amd64_real] Error 2
make[1]: Leaving directory '/home/mockbuild/pbdeps/xen-4.18~rc0'
make: *** [debian/rules:24: build-arch] Error 2
dpkg-buildpackage: error: debian/rules build subprocess returned exit
status 2

any help is appreciated,
PryMar56

--000000000000120d59060557df8e
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hello,</div><div><br></div><div>First attempt to buil=
d xen-4.18-unstabl in deb12 (Bookworm):<br></div><div>/home/mockbuild/pbdep=
s/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt=
_anycpu.asl =C2=A0 9851: =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Name ( S=
LT, 0x0 )<br>Remark =C2=A0 2173 - =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Creatio=
n of named objects within a method is highly inefficient, use globals or me=
thod local variables instead ^ =C2=A0(\_GPE._L03)<br><br>/home/mockbuild/pb=
deps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/d=
sdt_anycpu.asl =C2=A0 9852: =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Name =
( EVT, 0x0 )<br>Remark =C2=A0 2173 - =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Crea=
tion of named objects within a method is highly inefficient, use globals or=
 method local variables instead ^ =C2=A0(\_GPE._L03)<br><br>ASL Input: =C2=
=A0 =C2=A0 /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd=
64/tools/firmware/hvmloader/dsdt_anycpu.asl - =C2=A0397476 bytes =C2=A0 814=
0 keywords =C2=A011139 source lines<br>AML Output: =C2=A0 =C2=A0/home/mockb=
uild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvml=
oader/dsdt_anycpu.aml - =C2=A0 73130 bytes =C2=A0 5541 opcodes =C2=A0 =C2=
=A02599 named objects<br>Hex Dump: =C2=A0 =C2=A0 =C2=A0/home/mockbuild/pbde=
ps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsd=
t_anycpu.hex - =C2=A0686160 bytes<br><br>Compilation successful. 0 Errors, =
129 Warnings, 2 Remarks, 2762 Optimizations<br>sed -e &#39;s/AmlCode/dsdt_a=
nycpu/g&#39; -e &#39;s/_aml_code//g&#39; /home/mockbuild/pbdeps/xen-4.18~rc=
0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.hex &=
gt; /home/mockbuild/pbdeps/xen-4.18~rc0/debi&gt;<br>echo &quot;int dsdt_any=
cpu_len=3Dsizeof(dsdt_anycpu);&quot; &gt;&gt; /home/mockbuild/pbdeps/xen-4.=
18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.=
c.tmp<br>mv -f /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils=
_amd64/tools/firmware/hvmloader/dsdt_anycpu.c.tmp /home/mockbuild/pbdeps/xe=
n-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmlo&gt;<br>rm -f=
 /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/f=
irmware/hvmloader/dsdt_anycpu.aml /home/mockbuild/pbdeps/xen-4.18~rc0/debia=
n/build/build-utils_amd64/tools/firmware/hvmload&gt;<br>make[9]: Leaving di=
rectory &#39;/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_a=
md64/tools/libacpi&#39;<br>make[8]: Leaving directory &#39;/home/mockbuild/=
pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader=
&#39;<br>make[7]: *** [/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/bui=
ld-utils_amd64/tools/firmware/../../tools/Rules.mk:206: subdir-all-hvmloade=
r] Error 2<br>make[7]: Leaving directory &#39;/home/mockbuild/pbdeps/xen-4.=
18~rc0/debian/build/build-utils_amd64/tools/firmware&#39;<br>make[6]: *** [=
/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/fi=
rmware/../../tools/Rules.mk:201: subdirs-all] Error 2<br>make[6]: Leaving d=
irectory &#39;/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_=
amd64/tools/firmware&#39;<br>make[5]: *** [Makefile:37: all] Error 2<br>mak=
e[5]: Leaving directory &#39;/home/mockbuild/pbdeps/xen-4.18~rc0/debian/bui=
ld/build-utils_amd64/tools/firmware&#39;<br>make[4]: *** [/home/mockbuild/p=
bdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/../tools/Rules.mk:2=
06: subdir-all-firmware] Error 2<br>make[4]: Leaving directory &#39;/home/m=
ockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools&#39;<br>m=
ake[3]: *** [/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_a=
md64/tools/../tools/Rules.mk:201: subdirs-all] Error 2<br>make[3]: Leaving =
directory &#39;/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils=
_amd64/tools&#39;<br>make[2]: *** [debian/rules.real:218: debian/stamps/bui=
ld-utils_amd64] Error 2<br>make[2]: Leaving directory &#39;/home/mockbuild/=
pbdeps/xen-4.18~rc0&#39;<br>make[1]: *** [debian/rules.gen:57: build-arch_a=
md64_real] Error 2<br>make[1]: Leaving directory &#39;/home/mockbuild/pbdep=
s/xen-4.18~rc0&#39;<br>make: *** [debian/rules:24: build-arch] Error 2<br>d=
pkg-buildpackage: error: debian/rules build subprocess returned exit status=
 2</div><div><br></div><div>any help is appreciated,</div><div>PryMar56<br>=
</div></div>

--000000000000120d59060557df8e--


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 21:06:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 21:06:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602734.939463 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgtXz-0004dr-9X; Thu, 14 Sep 2023 21:06:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602734.939463; Thu, 14 Sep 2023 21:06:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgtXz-0004dk-5C; Thu, 14 Sep 2023 21:06:47 +0000
Received: by outflank-mailman (input) for mailman id 602734;
 Thu, 14 Sep 2023 21:06:46 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qgtXy-0004db-0C
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 21:06:46 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgtXx-0004vU-0O; Thu, 14 Sep 2023 21:06:45 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgtXw-0002zC-Pv; Thu, 14 Sep 2023 21:06:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=8ajguOp4E4Oinn/VMR30oSEBJ+bCppWK4vigMBm4qF4=; b=hZDSdBN70zqWKnsBJ3ACuYFnPU
	2GPJXOWMK55iGFNpntQ3BDkN7bYDCO/NUZk7OW6BRhAelqQfcGGYBbI5ZpH+QLx2n12rETHCvmN7m
	hsGnPQL/a5ZdV+FTbkK/XnOvBzbluGEzGRI4tq4E6q1XjqA182N2w6u0XLn8roZlqmPQ=;
Message-ID: <7b1582d2-8c1f-4694-995c-c92e83590b3a@xen.org>
Date: Thu, 14 Sep 2023 22:06:43 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 1/8] common: assembly entry point type/size annotations
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@citrix.com>
References: <e4bf47ca-2ae6-1fd4-56a6-e4e777150b64@suse.com>
 <bfc597f3-c61c-727a-159a-859f57997d02@suse.com>
 <8ed43968-311e-263b-4dd7-9f8a49a394dc@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <8ed43968-311e-263b-4dd7-9f8a49a394dc@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jan,

On 04/08/2023 07:26, Jan Beulich wrote:
> Recent gas versions generate minimalistic Dwarf debug info for items
> annotated as functions and having their sizes specified [1]. Furthermore
> generating live patches wants items properly annotated. "Borrow" Arm's
> END() and (remotely) derive other annotation infrastructure from
> Linux'es, for all architectures to use.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> [1] https://sourceware.org/git?p=binutils-gdb.git;a=commitdiff;h=591cc9fbbfd6d51131c0f1d4a92e7893edcc7a28
> ---
> v3: New, generalized from earlier x86-only version. LAST() (now
>      LASTARG()) moved to macros.h.
> ---
> TBD: What to set CODE_ALIGN to by default? Or should we requires arch-es
>       to define that in all cases?

The code alignment is very specific to an architecture. So I think it 
would be better if there are no default.

Otherwise, it will be more difficult for a developper to figure out that 
CODE_ALIGN may need an update.

> 
> TBD: {CODE,DATA}_ALIGN are byte granular, such that a value of 0 can be
>       specified (in case this has some special meaning on an arch;
>       conceivably it could mean to use some kind of arch default). We may
>       not strictly need that, and hence we could also make these power-of
>       -2 values (using .p2align).

I don't have a strong opinion on this one.

> 
> Note that we can't use ALIGN() (in place of SYM_ALIGN()) as long as we
> still have ALIGN.
> 
> Note further that FUNC()'s etc "algn" parameter is intended to allow for
> only no or a single argument. If we wanted to also make the fill value
> customizable per call site, the constructs would need re-doing to some
> degree.
> 
> --- /dev/null
> +++ b/xen/include/xen/linkage.h
> @@ -0,0 +1,56 @@
> +#ifndef __LINKAGE_H__
> +#define __LINKAGE_H__
> +
> +#ifdef __ASSEMBLY__
> +
> +#include <xen/macros.h>
> +
> +#ifndef CODE_ALIGN
> +# define CODE_ALIGN ??
> +#endif
> +#ifndef CODE_FILL
> +# define CODE_FILL ~0
> +#endif

What's the value to allow the architecture to override CODE_FILL and ...

> +
> +#ifndef DATA_ALIGN
> +# define DATA_ALIGN 0
> +#endif
> +#ifndef DATA_FILL
> +# define DATA_FILL ~0
> +#endif

... DATA_FILL?

> +
> +#define SYM_ALIGN(algn...) .balign algn

I find the name 'algn' confusing (not even referring to the missing 
'i'). Why not naming it 'args'?

> +
> +#define SYM_L_GLOBAL(name) .globl name
> +#define SYM_L_WEAK(name)   .weak name
> +#define SYM_L_LOCAL(name)  /* nothing */
> +
> +#define SYM_T_FUNC         STT_FUNC
> +#define SYM_T_DATA         STT_OBJECT
> +#define SYM_T_NONE         STT_NOTYPE

SYM_* will be used only in SYM() below. So why not using STT_* directly?

> +
> +#define SYM(name, typ, linkage, algn...)          \
> +        .type name, SYM_T_ ## typ;                \
> +        SYM_L_ ## linkage(name);                  \
> +        SYM_ALIGN(algn);                          \
> +        name:
> +
> +#define END(name) .size name, . - name
> +
> +#define FUNC(name, algn...) \
> +        SYM(name, FUNC, GLOBAL, LASTARG(CODE_ALIGN, ## algn), CODE_FILL)
> +#define LABEL(name, algn...) \
> +        SYM(name, NONE, GLOBAL, LASTARG(CODE_ALIGN, ## algn), CODE_FILL)
> +#define DATA(name, algn...) \
> +        SYM(name, DATA, GLOBAL, LASTARG(DATA_ALIGN, ## algn), DATA_FILL)

I think the alignment should be explicit for DATA. Otherwise, at least 
on Arm, we would default to 0 which could lead to unaligned access if 
not careful.

> +
> +#define FUNC_LOCAL(name, algn...) \
> +        SYM(name, FUNC, LOCAL, LASTARG(CODE_ALIGN, ## algn), CODE_FILL)
> +#define LABEL_LOCAL(name, algn...) \
> +        SYM(name, NONE, LOCAL, LASTARG(CODE_ALIGN, ## algn), CODE_FILL)
> +#define DATA_LOCAL(name, algn...) \
> +        SYM(name, DATA, LOCAL, LASTARG(DATA_ALIGN, ## algn), DATA_FILL)

Same here.

> +
> +#endif /*  __ASSEMBLY__ */
> +
> +#endif /* __LINKAGE_H__ */
> --- a/xen/include/xen/macros.h
> +++ b/xen/include/xen/macros.h
> @@ -15,6 +15,15 @@
>   #define count_args(args...) \
>       count_args_(., ## args, 8, 7, 6, 5, 4, 3, 2, 1, 0)
>   
> +#define ARG1_(x, y...) (x)
> +#define ARG2_(x, y...) ARG1_(y)
> +#define ARG3_(x, y...) ARG2_(y)
> +#define ARG4_(x, y...) ARG3_(y)
> +
> +#define ARG__(nr) ARG ## nr ## _
> +#define ARG_(nr)  ARG__(nr)
> +#define LASTARG(x, y...) ARG_(count_args(x, ## y))(x, ## y)
> +
>   /* Indirect macros required for expanded argument pasting. */
>   #define PASTE_(a, b) a ## b
>   #define PASTE(a, b) PASTE_(a, b)
> 

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 21:26:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 21:26:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602749.939472 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgtqX-00022R-Ox; Thu, 14 Sep 2023 21:25:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602749.939472; Thu, 14 Sep 2023 21:25:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgtqX-00022K-ML; Thu, 14 Sep 2023 21:25:57 +0000
Received: by outflank-mailman (input) for mailman id 602749;
 Thu, 14 Sep 2023 21:25:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qgtqW-000229-Ap
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 21:25:56 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgtqV-0005U2-Ss; Thu, 14 Sep 2023 21:25:55 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgtqV-0003ht-MY; Thu, 14 Sep 2023 21:25:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=SPEIEjxIi81aJ8wb4GdxZ78Sow0l5A0s2tn0NDJu4tc=; b=Xxtmgz07dK0Lvow/V3q7r/ixwI
	RStqqTmsQcczJ0lp6iO6s1z5O391rcMkamMvNR+QCalBDKMkH3Z5KDQLyBVhFUBFMm4Pk3y/pJt/7
	4mMIRdUYAxD/2c4lisdMdUPV4MI9Up9rMD2oZalixkAMd+f1K+vkat8tQVfS269zr27A=;
Message-ID: <5a0d227d-74f6-457c-aab9-852ca55c6b77@xen.org>
Date: Thu, 14 Sep 2023 22:25:54 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 4/8] Arm: annotate entry points with type and size
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 George Dunlap <george.dunlap@citrix.com>
References: <e4bf47ca-2ae6-1fd4-56a6-e4e777150b64@suse.com>
 <bfc597f3-c61c-727a-159a-859f57997d02@suse.com>
 <e7685fa0-62e0-98b9-f9ba-7e698fb7373e@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <e7685fa0-62e0-98b9-f9ba-7e698fb7373e@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 04/08/2023 07:28, Jan Beulich wrote:
> Use the generic framework in xen/linkage.h. No change in generated code
> except for the changed padding value (noticable when config.gz isn't a
> multiple of 4 in size). Plus of course the converted symbols change to
> be hidden ones.
> 
> Note that ASM_INT() is switched to DATA(), not DATA_LOCAL(), as the only
> use site wants the symbol global anyway.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Julien Grall <jgrall@amazon.com>

> ---
> Only one each of the assembly files is being converted for now. More
> could be done right here or as follow-on in separate patches.

I don't have a strong preference. Are you planning to do follow-up? (I 
am ok if it is no).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 21:30:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 21:30:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602754.939482 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgtvJ-00046z-C0; Thu, 14 Sep 2023 21:30:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602754.939482; Thu, 14 Sep 2023 21:30:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgtvJ-00046s-7Y; Thu, 14 Sep 2023 21:30:53 +0000
Received: by outflank-mailman (input) for mailman id 602754;
 Thu, 14 Sep 2023 21:30:51 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qgtvH-00046k-NO
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 21:30:51 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgtvG-0005aa-Nh; Thu, 14 Sep 2023 21:30:50 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qgtvG-0003mQ-In; Thu, 14 Sep 2023 21:30:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=SnYjpn2smNsg/pxm4w+pGUEjlDXZ29xGcg+mvYk8pYs=; b=wHidkCc+nBgVsJkoLjSyUT5amf
	sT4SQXEYTGAoq5GX67cwqJvgC508iXQsIGlxajF11E1pXo/w54kFioY0NSdFSWfSW/5M2q5CXyeDi
	o3szu3+lSz1CuQfVktVxX3WSxgVvBaixN0HK7a78NFCsP9TYb18FKtpmLyGXgIW6jgoY=;
Message-ID: <1036676e-db31-450a-bf48-4456f56f2c3f@xen.org>
Date: Thu, 14 Sep 2023 22:30:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 6/8] tools/binfile: switch to common annotations model
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@citrix.com>
References: <e4bf47ca-2ae6-1fd4-56a6-e4e777150b64@suse.com>
 <bfc597f3-c61c-727a-159a-859f57997d02@suse.com>
 <2315f865-cd41-b0e6-524c-cee57e748ba1@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <2315f865-cd41-b0e6-524c-cee57e748ba1@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jan,

On 04/08/2023 07:30, Jan Beulich wrote:
> Use DATA() / END() and drop the now redundant .global. No change in
> generated data; of course the two symbols now properly gain "hidden"
> binding.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 22:25:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 22:25:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602760.939492 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgumN-0001SS-A1; Thu, 14 Sep 2023 22:25:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602760.939492; Thu, 14 Sep 2023 22:25:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgumN-0001SL-74; Thu, 14 Sep 2023 22:25:43 +0000
Received: by outflank-mailman (input) for mailman id 602760;
 Thu, 14 Sep 2023 22:25:41 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgumL-0001Qv-D1; Thu, 14 Sep 2023 22:25:41 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgumL-00071e-9z; Thu, 14 Sep 2023 22:25:41 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qgumL-00040r-00; Thu, 14 Sep 2023 22:25:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qgumK-0004el-Vj; Thu, 14 Sep 2023 22:25:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=1odQmHHz9DIA8haqpsS/BoRrw6an+PkOMH1Im4mpb0E=; b=XclTfSnPJGDt2Ee8NwomoSd28D
	63BrrAun/GxkIS54RZ1po00WARJBct8JQgD6zN6h3PJlYtIoHaAsw4WXk/d+p2GY+Qprk2TN3jU6H
	TakVDzYinuaBqDnSqKki6UN+X2W9zgkwpr1Y5SmCKfpIKa0MqT/jFWy6LfRJnshmxPwA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183002-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183002: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=aed8aee11130a954356200afa3f1b8753e8a9482
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 14 Sep 2023 22:25:40 +0000

flight 183002 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183002/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                aed8aee11130a954356200afa3f1b8753e8a9482
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   17 days
Failing since        182544  2023-08-28 20:42:13 Z   17 days   31 attempts
Testing same since   182999  2023-09-13 22:43:21 Z    0 days    2 attempts

------------------------------------------------------------
2282 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 277307 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 23:00:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 23:00:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602768.939501 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgvKI-0002i1-QR; Thu, 14 Sep 2023 23:00:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602768.939501; Thu, 14 Sep 2023 23:00:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgvKI-0002hu-Nq; Thu, 14 Sep 2023 23:00:46 +0000
Received: by outflank-mailman (input) for mailman id 602768;
 Thu, 14 Sep 2023 23:00:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=oXYZ=E6=linutronix.de=tglx@srs-se1.protection.inumbo.net>)
 id 1qgvKG-0002hm-OP
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 23:00:45 +0000
Received: from galois.linutronix.de (galois.linutronix.de [193.142.43.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8766d148-5352-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 01:00:42 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8766d148-5352-11ee-9b0d-b553b5be7939
From: Thomas Gleixner <tglx@linutronix.de>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020; t=1694732439;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=Y9UPmbkXZRNuioCyvMTxakQr1LFj1kbpXONIFu2xSbU=;
	b=lg2xYIiFHmDQ94KTGhglBSA6Z0t67NpbKHOIiF7u/MK/QNmaP++hoHuiLV+K+pCpRbvrny
	3/iljaw4BlgVWi/Axp6VS4fmMqKGyXg21eMc5ZV4tP/U4RlYANeOwmzU8va1MEOljqy3TT
	btUeGlhB3sh0EMaUYvltsYDxwKSXnXEylIIdoo/fFFa9bHszzToBmfF7mWfvAeUCCTtYF7
	dLVR6DZAro2zzE9j6g8fxSwh1UCUDJaHZwjyB+5Hh3UOpHfdYzQSP58MDIwDkxgh0AroPW
	ApRPA6r3z/oN2U1ADa5bw8cimXbGYP6+gkTTb8YmUICXl2qp0JQtDGwblbFK+A==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020e; t=1694732439;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=Y9UPmbkXZRNuioCyvMTxakQr1LFj1kbpXONIFu2xSbU=;
	b=48C9u5FtSr/8YhitFLfTJzZIuTnlSrzcd0C4TaCewwtRO7Oehv/gGi/6/V2pnG6aVMDDrx
	+xZpy5dDgM7R8iDQ==
To: andrew.cooper3@citrix.com, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, hpa@zytor.com, luto@kernel.org, pbonzini@redhat.com,
 seanjc@google.com, peterz@infradead.org, jgross@suse.com,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, jiangshanlai@gmail.com
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
In-Reply-To: <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com>
Date: Fri, 15 Sep 2023 01:00:39 +0200
Message-ID: <87y1h81ht4.ffs@tglx>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Andrew!

On Thu, Sep 14 2023 at 15:05, andrew wrote:
> On 14/09/2023 5:47 am, Xin Li wrote:
>> +static __always_inline void wrmsrns(u32 msr, u64 val)
>> +{
>> +	__wrmsrns(msr, val, val >> 32);
>> +}
>
> This API works in terms of this series where every WRMSRNS is hidden
> behind a FRED check, but it's an awkward interface to use anywhere else
> in the kernel.

Agreed.

> I fully understand that you expect all FRED capable systems to have
> WRMSRNS, but it is not a hard requirement and you will end up with
> simpler (and therefore better) logic by deleting the dependency.

According to the CPU folks FRED systems are guaranteed to have WRMSRNS -
I asked for that :). It's just not yet documented.

But that I aside, I agree that we should opt for the safe side with a
fallback like the one you have in XEN even for the places which are
strictly FRED dependent.

> As a "normal" user of the WRMSR APIs, the programmer only cares about:
>
> 1) wrmsr() -> needs to be serialising
> 2) wrmsr_ns() -> safe to be non-serialising

Correct.

> In Xen, I added something of the form:
>
> /* Non-serialising WRMSR, when available.=C2=A0 Falls back to a serialisi=
ng
> WRMSR. */
> static inline void wrmsr_ns(uint32_t msr, uint32_t lo, uint32_t hi)
> {
> =C2=A0=C2=A0=C2=A0 /*
> =C2=A0=C2=A0=C2=A0=C2=A0 * WRMSR is 2 bytes.=C2=A0 WRMSRNS is 3 bytes.=C2=
=A0 Pad WRMSR with a redundant CS
> =C2=A0=C2=A0=C2=A0=C2=A0 * prefix to avoid a trailing NOP.
> =C2=A0=C2=A0=C2=A0=C2=A0 */
> =C2=A0=C2=A0=C2=A0 alternative_input(".byte 0x2e; wrmsr",
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ".byte 0x0f,0x01,0xc=
6", X86_FEATURE_WRMSRNS,
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "c" (msr), "a" (lo),=
 "d" (hi));
> }
>
> and despite what Juergen said, I'm going to recommend that you do wire
> this through the paravirt infrastructure, for the benefit of regular
> users having a nice API, not because XenPV is expecting to do something
> wildly different here.

I fundamentaly hate adding this to the PV infrastructure. We don't want
more PV ops, quite the contrary.

For the initial use case at hand, there is an explicit FRED dependency
and the code in question really wants to use WRMSRNS directly and not
through a PV function call.

I agree with your reasoning for the more generic use case where we can
gain performance independent of FRED by using WRMSRNS for cases where
the write has no serialization requirements.

But this made me look into PV ops some more. For actual performance
relevant code the current PV ops mechanics are a horrorshow when the op
defaults to the native instruction.

Let's look at wrmsrl():

wrmsrl(msr, val
 wrmsr(msr, (u32)val, (u32)val >> 32))
  paravirt_write_msr(msr, low, high)
    PVOP_VCALL3(cpu.write_msr, msr, low, high)

Which results in

	mov	$msr, %edi
	mov	$val, %rdx
	mov	%edx, %esi
	shr	$0x20, %rdx
	call	native_write_msr

and native_write_msr() does at minimum:

	mov    %edi,%ecx
	mov    %esi,%eax
	wrmsr
        ret

In the worst case 'ret' is going through the return thunk. Not to talk
about function prologues and whatever.

This becomes even more silly for trivial instructions like STI/CLI or in
the worst case paravirt_nop().

The call makes only sense, when the native default is an actual
function, but for the trivial cases it's a blatant engineering
trainwreck.

I wouldn't care at all if CONFIG_PARAVIRT_XXL would be the esoteric use
case, but AFAICT it's default enabled on all major distros.

So no. I'm fundamentally disagreeing with your recommendation. The way
forward is:

  1) Provide the native variant for wrmsrns(), i.e. rename the proposed
     wrmsrns() to native_wrmsr_ns() and have the X86_FEATURE_WRMSRNS
     safety net as you pointed out.

     That function can be used in code which is guaranteed to be not
     affected by the PV_XXL madness.

  2) Come up with a sensible solution for the PV_XXL horrorshow

  3) Implement a sane general variant of wrmsr_ns() which handles
     both X86_FEATURE_WRMSRNS and X86_MISFEATURE_PV_XXL

  4) Convert other code which benefits from the non-serializing variant
     to wrmsr_ns()

Thanks,

        tglx


From xen-devel-bounces@lists.xenproject.org Thu Sep 14 23:36:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 23:36:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602774.939512 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgvsW-0001fI-CH; Thu, 14 Sep 2023 23:36:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602774.939512; Thu, 14 Sep 2023 23:36:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgvsW-0001fB-9O; Thu, 14 Sep 2023 23:36:08 +0000
Received: by outflank-mailman (input) for mailman id 602774;
 Thu, 14 Sep 2023 23:36:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=2BVk=E6=zytor.com=hpa@srs-se1.protection.inumbo.net>)
 id 1qgvsU-0001dn-NK
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 23:36:06 +0000
Received: from mail.zytor.com (unknown [2607:7c80:54:3::138])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 76b9ada1-5357-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 01:36:03 +0200 (CEST)
Received: from [127.0.0.1] ([98.35.210.218]) (authenticated bits=0)
 by mail.zytor.com (8.17.1/8.17.1) with ESMTPSA id 38ENYgxH3601720
 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO);
 Thu, 14 Sep 2023 16:34:43 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 76b9ada1-5357-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 38ENYgxH3601720
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com;
	s=2023091101; t=1694734484;
	bh=HfDqs1jBqLi+wrOAc4wIZvejTylBZZBdkCZqJwfRfd0=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=h+aH6y0bTuApWxxD0FGjLZCir3TsFygt5Z9SAiZwA3JAE+f+OJHnzcCQksobB7fOf
	 5t1gZi7cIwWXVEB01lFLGAHBgIpv4fcHjY9QNMiSrQuPZeBGcRpKbeMXty4ZIfYedU
	 1tv3IuQNIPxZHrs7YDo6Vrvah8hW583SZzsPGiIls3jmL6PB3fn61Gr3Vh2AL8DSxq
	 tVtSK31u2cUqkmrWiK8GuIEiYQtSyKLVTjVkXiAhLjIKrXRZsdB84Y60zEamLvptpU
	 8+0m+otGzcTNZ6tpxE8ZrDlZRbLCc1IY2zJrzBoIqmGOuc6Ks130pSbhAGP0zlb08L
	 0YHA1+0T0R5WA==
Date: Thu, 14 Sep 2023 16:34:40 -0700
From: "H. Peter Anvin" <hpa@zytor.com>
To: Thomas Gleixner <tglx@linutronix.de>, andrew.cooper3@citrix.com,
        Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
        linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
        linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
        xen-devel@lists.xenproject.org
CC: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
        x86@kernel.org, luto@kernel.org, pbonzini@redhat.com,
        seanjc@google.com, peterz@infradead.org, jgross@suse.com,
        ravi.v.shankar@intel.com, mhiramat@kernel.org, jiangshanlai@gmail.com
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
User-Agent: K-9 Mail for Android
In-Reply-To: <87y1h81ht4.ffs@tglx>
References: <20230914044805.301390-1-xin3.li@intel.com> <20230914044805.301390-4-xin3.li@intel.com> <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
Message-ID: <B93766B5-563E-401D-A1EF-579077CAEE82@zytor.com>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable

On September 14, 2023 4:00:39 PM PDT, Thomas Gleixner <tglx@linutronix=2Ede=
> wrote:
>Andrew!
>
>On Thu, Sep 14 2023 at 15:05, andrew wrote:
>> On 14/09/2023 5:47 am, Xin Li wrote:
>>> +static __always_inline void wrmsrns(u32 msr, u64 val)
>>> +{
>>> +	__wrmsrns(msr, val, val >> 32);
>>> +}
>>
>> This API works in terms of this series where every WRMSRNS is hidden
>> behind a FRED check, but it's an awkward interface to use anywhere else
>> in the kernel=2E
>
>Agreed=2E
>
>> I fully understand that you expect all FRED capable systems to have
>> WRMSRNS, but it is not a hard requirement and you will end up with
>> simpler (and therefore better) logic by deleting the dependency=2E
>
>According to the CPU folks FRED systems are guaranteed to have WRMSRNS -
>I asked for that :)=2E It's just not yet documented=2E
>
>But that I aside, I agree that we should opt for the safe side with a
>fallback like the one you have in XEN even for the places which are
>strictly FRED dependent=2E
>
>> As a "normal" user of the WRMSR APIs, the programmer only cares about:
>>
>> 1) wrmsr() -> needs to be serialising
>> 2) wrmsr_ns() -> safe to be non-serialising
>
>Correct=2E
>
>> In Xen, I added something of the form:
>>
>> /* Non-serialising WRMSR, when available=2E=C2=A0 Falls back to a seria=
lising
>> WRMSR=2E */
>> static inline void wrmsr_ns(uint32_t msr, uint32_t lo, uint32_t hi)
>> {
>> =C2=A0=C2=A0=C2=A0 /*
>> =C2=A0=C2=A0=C2=A0=C2=A0 * WRMSR is 2 bytes=2E=C2=A0 WRMSRNS is 3 bytes=
=2E=C2=A0 Pad WRMSR with a redundant CS
>> =C2=A0=C2=A0=C2=A0=C2=A0 * prefix to avoid a trailing NOP=2E
>> =C2=A0=C2=A0=C2=A0=C2=A0 */
>> =C2=A0=C2=A0=C2=A0 alternative_input("=2Ebyte 0x2e; wrmsr",
>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "=2Ebyte 0x0f,0x0=
1,0xc6", X86_FEATURE_WRMSRNS,
>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "c" (msr), "a" (l=
o), "d" (hi));
>> }
>>
>> and despite what Juergen said, I'm going to recommend that you do wire
>> this through the paravirt infrastructure, for the benefit of regular
>> users having a nice API, not because XenPV is expecting to do something
>> wildly different here=2E
>
>I fundamentaly hate adding this to the PV infrastructure=2E We don't want
>more PV ops, quite the contrary=2E
>
>For the initial use case at hand, there is an explicit FRED dependency
>and the code in question really wants to use WRMSRNS directly and not
>through a PV function call=2E
>
>I agree with your reasoning for the more generic use case where we can
>gain performance independent of FRED by using WRMSRNS for cases where
>the write has no serialization requirements=2E
>
>But this made me look into PV ops some more=2E For actual performance
>relevant code the current PV ops mechanics are a horrorshow when the op
>defaults to the native instruction=2E
>
>Let's look at wrmsrl():
>
>wrmsrl(msr, val
> wrmsr(msr, (u32)val, (u32)val >> 32))
>  paravirt_write_msr(msr, low, high)
>    PVOP_VCALL3(cpu=2Ewrite_msr, msr, low, high)
>
>Which results in
>
>	mov	$msr, %edi
>	mov	$val, %rdx
>	mov	%edx, %esi
>	shr	$0x20, %rdx
>	call	native_write_msr
>
>and native_write_msr() does at minimum:
>
>	mov    %edi,%ecx
>	mov    %esi,%eax
>	wrmsr
>        ret
>
>In the worst case 'ret' is going through the return thunk=2E Not to talk
>about function prologues and whatever=2E
>
>This becomes even more silly for trivial instructions like STI/CLI or in
>the worst case paravirt_nop()=2E
>
>The call makes only sense, when the native default is an actual
>function, but for the trivial cases it's a blatant engineering
>trainwreck=2E
>
>I wouldn't care at all if CONFIG_PARAVIRT_XXL would be the esoteric use
>case, but AFAICT it's default enabled on all major distros=2E
>
>So no=2E I'm fundamentally disagreeing with your recommendation=2E The wa=
y
>forward is:
>
>  1) Provide the native variant for wrmsrns(), i=2Ee=2E rename the propos=
ed
>     wrmsrns() to native_wrmsr_ns() and have the X86_FEATURE_WRMSRNS
>     safety net as you pointed out=2E
>
>     That function can be used in code which is guaranteed to be not
>     affected by the PV_XXL madness=2E
>
>  2) Come up with a sensible solution for the PV_XXL horrorshow
>
>  3) Implement a sane general variant of wrmsr_ns() which handles
>     both X86_FEATURE_WRMSRNS and X86_MISFEATURE_PV_XXL
>
>  4) Convert other code which benefits from the non-serializing variant
>     to wrmsr_ns()
>
>Thanks,
>
>        tglx
>

With regards to (2), the IMO only sensible solution is to have the ABI be =
the one of the native instruction, and to have the PVXXL users take the ful=
l brunt of the overhead=2E That means that on a native or HVM machine, the =
proper code gets patched in inline, and the PVXXL code becomes a call to a =
stub to do the parameter marshalling before walking off back into C ABI lan=
d=2E The pvop further has to bear the full cost of providing the full nativ=
e semantics unless otherwise agreed with the native maintainers and explici=
tly documented what the modified semantics are (notably, having excplicit s=
tubs for certain specific MSRs is entirely reasonable=2E)

In case this sounds familiar, it is the pvops we were promised over 15 yea=
rs ago, and yet somehow never really got there=2E It *also* is similar in a=
n inside-out way of the ABI marshalling used for legacy BIOS functions in t=
he 16-bit startup code=2E

In-place "fat" paravirtualization in the Linux kernel has been a horror sh=
ow, with the notable exception of UML, which is almost universally ignored =
but yet manages to stay out of the way and keep working=2E

This is a classic case of Tragedy of The Commons, much like burning coal f=
or power=2E



From xen-devel-bounces@lists.xenproject.org Thu Sep 14 23:46:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 14 Sep 2023 23:46:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602780.939521 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgw2e-0004VU-EG; Thu, 14 Sep 2023 23:46:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602780.939521; Thu, 14 Sep 2023 23:46:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgw2e-0004VN-Bm; Thu, 14 Sep 2023 23:46:36 +0000
Received: by outflank-mailman (input) for mailman id 602780;
 Thu, 14 Sep 2023 23:46:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uqVP=E6=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgw2c-0004VH-VQ
 for xen-devel@lists.xenproject.org; Thu, 14 Sep 2023 23:46:35 +0000
Received: from mail-ej1-x635.google.com (mail-ej1-x635.google.com
 [2a00:1450:4864:20::635])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id eeba03a0-5358-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 01:46:32 +0200 (CEST)
Received: by mail-ej1-x635.google.com with SMTP id
 a640c23a62f3a-9a9d6b98845so588666166b.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 16:46:32 -0700 (PDT)
Received: from [192.168.1.10] (host-92-12-44-130.as13285.net. [92.12.44.130])
 by smtp.gmail.com with ESMTPSA id
 m21-20020a1709060d9500b009937dbabbd5sm1623158eji.220.2023.09.14.16.46.31
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 16:46:31 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: eeba03a0-5358-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694735192; x=1695339992; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=jEsOE3VahVBRrZQB+F/BuNrsfqTbbzggGN9bcwX+LFw=;
        b=lT5FHXCeAL6Rr0+7yJX7HnM1I43JN1zkZ2cZ01S7IH34g9/oKj9U1xpgXoauUcpIIp
         uvfkLHgIC9D8YAJGNjffdCJJL00QAwOKLmysy6/467BzxPQSyIyyeo93ETLwQVbfJynT
         YaeyQf/YMy4X+xtc0sYaRRe0d8iaLTGfmTgwU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694735192; x=1695339992;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=jEsOE3VahVBRrZQB+F/BuNrsfqTbbzggGN9bcwX+LFw=;
        b=l/M2OlR610l+TV1PzdzSZuV3o3nJdOkXnauHnAg/AIHmB3sBQhT8Nz+lKQkrqNvuYc
         +LNWBrEbhjzuPFque5pWuFI1W9LxuRLGYGwLuzB1UVbAs7ylnzHez7kbPuL/6T2j+0Eh
         to9gX4MgDX6Ulcfol8nToNipfvjWnJhT/N70gE6YUd4Oe4mZhqeTu66d+6xphbzZSmlP
         PBaLwZV/WMlAxgGcVlu1buGmM+uj9dkI7H/bZu/81iuEWbgSYMnwNJ/1tBAKLzw3lL2q
         pBhNldtOFAZXjSg2PaJnFmX2bgquNcaot3qXRj6xcmhbPoVNPs/80fEMYnTuYhenKSqm
         zoFA==
X-Gm-Message-State: AOJu0YzCurw6zTnDzncN6avOYEiH9LJev/6x4DDAweRnwnSjddSeOINE
	fLiTFe1cGFCMC2rL+WcMzxy7VA==
X-Google-Smtp-Source: AGHT+IFdLzHxkpcWBSKfZyEmhUJiAzFwTc5lp2rJbnp1c8teqkmJckhwUBhX6fJYxYR6W8lj/upGVQ==
X-Received: by 2002:a17:906:51d0:b0:9a1:fda6:2e2a with SMTP id v16-20020a17090651d000b009a1fda62e2amr179416ejk.9.1694735191861;
        Thu, 14 Sep 2023 16:46:31 -0700 (PDT)
Message-ID: <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
Date: Fri, 15 Sep 2023 00:46:30 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: andrew.cooper3@citrix.com
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-GB
To: Thomas Gleixner <tglx@linutronix.de>, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, hpa@zytor.com, luto@kernel.org, pbonzini@redhat.com,
 seanjc@google.com, peterz@infradead.org, jgross@suse.com,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
In-Reply-To: <87y1h81ht4.ffs@tglx>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 15/09/2023 12:00 am, Thomas Gleixner wrote:
>> and despite what Juergen said, I'm going to recommend that you do wire
>> this through the paravirt infrastructure, for the benefit of regular
>> users having a nice API, not because XenPV is expecting to do something
>> wildly different here.
> I fundamentaly hate adding this to the PV infrastructure. We don't want
> more PV ops, quite the contrary.

What I meant was "there should be the two top-level APIs, and under the
covers they DTRT".  Part of doing the right thing is to wire up paravirt
for configs where that is specified.

Anything else is going to force people to write logic of the form:

    if (WRMSRNS && !XENPV)
        wrmsr_ns(...)
    else
        wrmsr(...)

which is going to be worse overall.  And there really is one example of
this antipattern already in the series.


> For the initial use case at hand, there is an explicit FRED dependency
> and the code in question really wants to use WRMSRNS directly and not
> through a PV function call.
>
> I agree with your reasoning for the more generic use case where we can
> gain performance independent of FRED by using WRMSRNS for cases where
> the write has no serialization requirements.
>
> But this made me look into PV ops some more. For actual performance
> relevant code the current PV ops mechanics are a horrorshow when the op
> defaults to the native instruction.
>
> Let's look at wrmsrl():
>
> wrmsrl(msr, val
>  wrmsr(msr, (u32)val, (u32)val >> 32))
>   paravirt_write_msr(msr, low, high)
>     PVOP_VCALL3(cpu.write_msr, msr, low, high)
>
> Which results in
>
> 	mov	$msr, %edi
> 	mov	$val, %rdx
> 	mov	%edx, %esi
> 	shr	$0x20, %rdx
> 	call	native_write_msr
>
> and native_write_msr() does at minimum:
>
> 	mov    %edi,%ecx
> 	mov    %esi,%eax
> 	wrmsr
>         ret

Yeah, this is daft.  But it can also be fixed irrespective of WRMSRNS.

WRMSR has one complexity that most other PV-ops don't, and that's the
exception table reference for the instruction itself.

In a theoretical future ought to look like:

    mov    $msr, %ecx
    mov    $lo, %eax
    mov    $hi, %edx
    1: {call paravirt_blah(%rip) | cs...cs wrmsr | cs...cs wrmsrns }
    _ASM_EXTABLE(1b, ...)

In paravirt builds, the CALL needs to be the emitted form, because it
needs to function in very early boot.

But once the paravirt-ness has been chosen and alternatives run, the
as-native paths are fully inline.

The alternative which processes this site wants to conclude that, in the
case it does not alter from the CALL, to clobber the EXTABLE reference. 
CALL instructions can #GP, and you don't want to end up thinking you're
handling a WRMSR #GP when in fact it was a non-canonical function pointer.

> In the worst case 'ret' is going through the return thunk. Not to talk
> about function prologues and whatever.
>
> This becomes even more silly for trivial instructions like STI/CLI or in
> the worst case paravirt_nop().

STI/CLI are already magic.  Are they not inlined?

> The call makes only sense, when the native default is an actual
> function, but for the trivial cases it's a blatant engineering
> trainwreck.
>
> I wouldn't care at all if CONFIG_PARAVIRT_XXL would be the esoteric use
> case, but AFAICT it's default enabled on all major distros.
>
> So no. I'm fundamentally disagreeing with your recommendation. The way
> forward is:
>
>   1) Provide the native variant for wrmsrns(), i.e. rename the proposed
>      wrmsrns() to native_wrmsr_ns() and have the X86_FEATURE_WRMSRNS
>      safety net as you pointed out.
>
>      That function can be used in code which is guaranteed to be not
>      affected by the PV_XXL madness.
>
>   2) Come up with a sensible solution for the PV_XXL horrorshow
>
>   3) Implement a sane general variant of wrmsr_ns() which handles
>      both X86_FEATURE_WRMSRNS and X86_MISFEATURE_PV_XXL
>
>   4) Convert other code which benefits from the non-serializing variant
>      to wrmsr_ns()

Well - point 1 is mostly work that needs reverting as part of completing
point 3, and point 2 clearly needs doing irrespective of anything else.

Thanks,

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 00:12:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 00:12:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602787.939532 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgwRn-00038c-Lv; Fri, 15 Sep 2023 00:12:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602787.939532; Fri, 15 Sep 2023 00:12:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgwRn-00038V-Is; Fri, 15 Sep 2023 00:12:35 +0000
Received: by outflank-mailman (input) for mailman id 602787;
 Fri, 15 Sep 2023 00:12:34 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l1k=E7=linutronix.de=tglx@srs-se1.protection.inumbo.net>)
 id 1qgwRm-00038P-CG
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 00:12:34 +0000
Received: from galois.linutronix.de (galois.linutronix.de
 [2a0a:51c0:0:12e:550::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8fbfa563-535c-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 02:12:31 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8fbfa563-535c-11ee-9b0d-b553b5be7939
From: Thomas Gleixner <tglx@linutronix.de>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020; t=1694736750;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=KgPRsgSrxVNlEOyySaa1PIQm8JulpVoZGkS4WiKzu2Y=;
	b=Opufk+gWG3Yw6wgO+kfqspHQ/VgFO8K0Ud/Qg7tynRke3PDBgtKU+a460kKb/93gIiUO5L
	bzEoLG4ayaBS8fTrf6QlAolsiu8ly3FxA9C9EAuo7MZTffVz9n1bf7nSCIpvbZSVmXDYVW
	acMz0Jonv3RJ94KgCGiuk2sXBFifOrs6HKWprtunsu+B0FOomTyOogxJ0p7Ixnvh4aziKu
	tLsnvnhq16s2s3UxE26tnjrlvcrBGMLvc4cZsMLWD5evy/Gj658BwlQoIdcEyATUJU76k8
	bO2+R+GllHweAzkZON5NLUw8Xa8uqPVH57q4oEFbEYqLFZJkCnw//4Xc6xac6w==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020e; t=1694736750;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=KgPRsgSrxVNlEOyySaa1PIQm8JulpVoZGkS4WiKzu2Y=;
	b=LCuwmEnex0B5wafWqEhRbYoFiiceeuNdckfK2gNVmqyd/yygxlcSv5V67wVBfndBTx2X5k
	Wq/zjvIpWJ6zjYDg==
To: andrew.cooper3@citrix.com, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, hpa@zytor.com, luto@kernel.org, pbonzini@redhat.com,
 seanjc@google.com, peterz@infradead.org, jgross@suse.com,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, jiangshanlai@gmail.com
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
In-Reply-To: <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
Date: Fri, 15 Sep 2023 02:12:29 +0200
Message-ID: <87v8cc1ehe.ffs@tglx>
MIME-Version: 1.0
Content-Type: text/plain

On Fri, Sep 15 2023 at 00:46, andrew wrote:
> On 15/09/2023 12:00 am, Thomas Gleixner wrote:
>> So no. I'm fundamentally disagreeing with your recommendation. The way
>> forward is:
>>
>>   1) Provide the native variant for wrmsrns(), i.e. rename the proposed
>>      wrmsrns() to native_wrmsr_ns() and have the X86_FEATURE_WRMSRNS
>>      safety net as you pointed out.
>>
>>      That function can be used in code which is guaranteed to be not
>>      affected by the PV_XXL madness.
>>
>>   2) Come up with a sensible solution for the PV_XXL horrorshow
>>
>>   3) Implement a sane general variant of wrmsr_ns() which handles
>>      both X86_FEATURE_WRMSRNS and X86_MISFEATURE_PV_XXL
>>
>>   4) Convert other code which benefits from the non-serializing variant
>>      to wrmsr_ns()
>
> Well - point 1 is mostly work that needs reverting as part of completing
> point 3, and point 2 clearly needs doing irrespective of anything else.

No. #1 has a value on its own independent of the general variant in #3.

>>      That function can be used in code which is guaranteed to be not
>>      affected by the PV_XXL madness.

That makes a lot of sense because it's guaranteed to generate better
code than whatever we come up with for the PV_XXL nonsense.

Thanks,

        tglx


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 00:33:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 00:33:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602793.939542 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgwls-0007qS-9B; Fri, 15 Sep 2023 00:33:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602793.939542; Fri, 15 Sep 2023 00:33:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgwls-0007qL-6b; Fri, 15 Sep 2023 00:33:20 +0000
Received: by outflank-mailman (input) for mailman id 602793;
 Fri, 15 Sep 2023 00:33:19 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=upey=E7=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgwlr-0007q9-5E
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 00:33:19 +0000
Received: from mail-ed1-x529.google.com (mail-ed1-x529.google.com
 [2a00:1450:4864:20::529])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7625747f-535f-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 02:33:16 +0200 (CEST)
Received: by mail-ed1-x529.google.com with SMTP id
 4fb4d7f45d1cf-52bcd4db4e6so1849727a12.0
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 17:33:16 -0700 (PDT)
Received: from [192.168.1.10] (host-92-12-44-130.as13285.net. [92.12.44.130])
 by smtp.gmail.com with ESMTPSA id
 lc3-20020a170906dfe300b00982a352f078sm1657125ejc.124.2023.09.14.17.33.15
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 17:33:15 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7625747f-535f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694737996; x=1695342796; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=Qvr3LUTPCnlzdeJGe9jKxP+vA9Fp/a5KVBNv/Iu61xg=;
        b=MRDw8CUkjNVxNS/+PPbYC+zSt+LWRAeJaA0VnV7K7eg5zLE+HoR/jdTZ/tEKub9ekR
         aCn3tatUds3nvQOOOtL9n24vkuaczQKsxldo0Mqy7UzWimNYsQyRkT9qJixO4rbGfPGQ
         Qd+qD72lBWsNrOi+kqiBupUUr+uI+BsWvuGtk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694737996; x=1695342796;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=Qvr3LUTPCnlzdeJGe9jKxP+vA9Fp/a5KVBNv/Iu61xg=;
        b=ijxhHF6vng8xTQ7kPhJsOx8x+IEDdV1jERkiYBf2ldhTx4I7ArkniTGoPr6J61qKx9
         vfnGAYg/JoRkcWOOSTkoeNDBr318WNhtkLKnazrCo6Wxa9DnwyBtBnhIsQe6Cpq0Gvu9
         dP9O9fgubLLYh0hD4DRPk9SA7zV4PAJc+EfAAA7wXJfMw7IsUsPMDLPq3noEJh42/N6s
         Fj/SzW1LM6Q/fMe41I/u41wgTMwURpN6jr3/jMTsCZsmw0tcEYJpFe7n3UBdmIJOpGkH
         umxKTFJXC3jrgMm0fsRR//4Gvs6k5FbAoQwIYns8Xxg7QrLjqIHQTB49HbQh7AJpHGE4
         x9wA==
X-Gm-Message-State: AOJu0YyzVEeGKil2KRtnl23jiOg+q7SOg/2ehnuxe8oMN8zdynNB5L/5
	lHfAKnnGyvCOpbFjFSWq+7s3/g==
X-Google-Smtp-Source: AGHT+IHViSUcArYmWr6MhrGopGlxIfnNZ7LWPvwSUNL0WVRYHkDsfzmJtBUWnPFw5fHbDPHMAHqaLQ==
X-Received: by 2002:a17:906:5392:b0:9a2:23b:db60 with SMTP id g18-20020a170906539200b009a2023bdb60mr16582ejo.54.1694737996072;
        Thu, 14 Sep 2023 17:33:16 -0700 (PDT)
Message-ID: <50e96f85-66f8-2a4f-45c9-a685c757bb28@citrix.com>
Date: Fri, 15 Sep 2023 01:33:14 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: andrew.cooper3@citrix.com
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-GB
To: Thomas Gleixner <tglx@linutronix.de>, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, hpa@zytor.com, luto@kernel.org, pbonzini@redhat.com,
 seanjc@google.com, peterz@infradead.org, jgross@suse.com,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com> <87v8cc1ehe.ffs@tglx>
In-Reply-To: <87v8cc1ehe.ffs@tglx>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 15/09/2023 1:12 am, Thomas Gleixner wrote:
> On Fri, Sep 15 2023 at 00:46, andrew wrote:
>> On 15/09/2023 12:00 am, Thomas Gleixner wrote:
>>> So no. I'm fundamentally disagreeing with your recommendation. The way
>>> forward is:
>>>
>>>   1) Provide the native variant for wrmsrns(), i.e. rename the proposed
>>>      wrmsrns() to native_wrmsr_ns() and have the X86_FEATURE_WRMSRNS
>>>      safety net as you pointed out.
>>>
>>>      That function can be used in code which is guaranteed to be not
>>>      affected by the PV_XXL madness.
>>>
>>>   2) Come up with a sensible solution for the PV_XXL horrorshow
>>>
>>>   3) Implement a sane general variant of wrmsr_ns() which handles
>>>      both X86_FEATURE_WRMSRNS and X86_MISFEATURE_PV_XXL
>>>
>>>   4) Convert other code which benefits from the non-serializing variant
>>>      to wrmsr_ns()
>> Well - point 1 is mostly work that needs reverting as part of completing
>> point 3, and point 2 clearly needs doing irrespective of anything else.
> No. #1 has a value on its own independent of the general variant in #3.
>
>>>      That function can be used in code which is guaranteed to be not
>>>      affected by the PV_XXL madness.
> That makes a lot of sense because it's guaranteed to generate better
> code than whatever we come up with for the PV_XXL nonsense.

It's an assumption about what "definitely won't" be paravirt in the future.

XenPV stack handling is almost-FRED-like and has been for the better
part of two decades.

You frequently complain that there's too much black magic holding XenPV
together.  A paravirt-FRED will reduce the differences vs native
substantially.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 00:39:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 00:39:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602798.939551 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgws6-0001l9-VE; Fri, 15 Sep 2023 00:39:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602798.939551; Fri, 15 Sep 2023 00:39:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgws6-0001l2-SM; Fri, 15 Sep 2023 00:39:46 +0000
Received: by outflank-mailman (input) for mailman id 602798;
 Fri, 15 Sep 2023 00:39:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=9T1c=E7=zytor.com=hpa@srs-se1.protection.inumbo.net>)
 id 1qgws5-0001ku-RE
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 00:39:46 +0000
Received: from mail.zytor.com (unknown [2607:7c80:54:3::138])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5b1242d6-5360-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 02:39:41 +0200 (CEST)
Received: from [172.27.2.41] ([98.35.210.218]) (authenticated bits=0)
 by mail.zytor.com (8.17.1/8.17.1) with ESMTPSA id 38F0cx0w3629046
 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO);
 Thu, 14 Sep 2023 17:39:00 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5b1242d6-5360-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 38F0cx0w3629046
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com;
	s=2023091101; t=1694738342;
	bh=Yoa4ZMiBLAyDfdX9HHdeF8UrASEf6ZDgmuoMlIr4Wlk=;
	h=Date:Subject:To:Cc:References:From:In-Reply-To:From;
	b=V/5PwyV/E8csxXz6rtYneFFVtOBWMsVzU2Mg/Wgs3Dr0XDNzkBz/ZFAw/skVnCBBu
	 pIX81Kk5tOxjoHoHEboQ2vuQ8rbszdcv2meKkW38C4Fpsv6lbqTJOWxteQVsyxuMV+
	 N0x88IFTW0/iHUVnQRWy7QnRIyb+uLWCXwjVOPJcS01dEDvnV1ysdbLMRkUl8Xs89b
	 ZcefnQDEvbvnoxJ49fMSGYwXr8lIlAANDyg1/g4z9ndf07KJSlAj5idi2GE44ZXoYe
	 z7lFKDrHOhCcUgZ3oZxgazX52p1YHjmuUZWWY3SOVdnLUpcnAF9ptss3dUaGqF5cAN
	 VOwKYyWEwLGSQ==
Message-ID: <5cf50d76-8e18-2863-4889-70e9c18298a1@zytor.com>
Date: Thu, 14 Sep 2023 17:38:57 -0700
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-US
To: andrew.cooper3@citrix.com, Thomas Gleixner <tglx@linutronix.de>,
        Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
        linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
        linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
        xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
        x86@kernel.org, luto@kernel.org, pbonzini@redhat.com,
        seanjc@google.com, peterz@infradead.org, jgross@suse.com,
        ravi.v.shankar@intel.com, mhiramat@kernel.org, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com> <87v8cc1ehe.ffs@tglx>
 <50e96f85-66f8-2a4f-45c9-a685c757bb28@citrix.com>
From: "H. Peter Anvin" <hpa@zytor.com>
In-Reply-To: <50e96f85-66f8-2a4f-45c9-a685c757bb28@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 9/14/23 17:33, andrew.cooper3@citrix.com wrote:
> 
> It's an assumption about what "definitely won't" be paravirt in the future.
> 
> XenPV stack handling is almost-FRED-like and has been for the better
> part of two decades.
> 
> You frequently complain that there's too much black magic holding XenPV
> together.  A paravirt-FRED will reduce the differences vs native
> substantially.
> 

Call it "paravirtualized exception handling." In that sense, the 
refactoring of the exception handling to benefit FRED is definitely 
useful for reducing paravirtualization. The FRED-specific code is 
largely trivial, and presumably what you would do is to replace the FRED 
wrapper with a Xen wrapper and call the common handler routines.

	-hpa



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 00:42:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 00:42:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602803.939562 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgwv8-0003CF-Cg; Fri, 15 Sep 2023 00:42:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602803.939562; Fri, 15 Sep 2023 00:42:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgwv8-0003C8-9R; Fri, 15 Sep 2023 00:42:54 +0000
Received: by outflank-mailman (input) for mailman id 602803;
 Fri, 15 Sep 2023 00:42:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l1k=E7=linutronix.de=tglx@srs-se1.protection.inumbo.net>)
 id 1qgwv7-0003C0-0h
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 00:42:53 +0000
Received: from galois.linutronix.de (galois.linutronix.de [193.142.43.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cc624f9a-5360-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 02:42:50 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cc624f9a-5360-11ee-9b0d-b553b5be7939
From: Thomas Gleixner <tglx@linutronix.de>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020; t=1694738569;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=a5Nv1k+xXsUYXwk/e9ziT/09Rg05qWYdYAMgd1WCgzY=;
	b=i+Ppepxp2xgrRhclM1xri9EX0YzYBr9BOGJwPO0VLxk5i0tNISHr/GndA9XyPoQsZydO3/
	fPU6jPCu37GMUSlLXoJ/VJx1Dig72xOidWuPzKUu5teW7671LOcHyedQ6p6JITYjs0zpfn
	QpnoWD/MZLO9svc8yDkMdqXG9HCDE2uOp81z+FKfwcgIrkP7SvsQmKqYpqhAfXN53y0i24
	Mfn2QbbsiCaB4Ahu7cykodXYR2Iqlc/YoSgD1YSSIz7af6MFb1HZ0m9QaTZwk+agivrh2E
	qPuiNE1UakCtbDlT638zyyyTO7X8bAYUoGWEO6vGebR/3O9l97XpIXldOrbt7g==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020e; t=1694738569;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=a5Nv1k+xXsUYXwk/e9ziT/09Rg05qWYdYAMgd1WCgzY=;
	b=NZIe4NWm1nl0kqQhKbNB2m9DKxzHK9ZweKqAgUy9qCDYBN7oG1v7VdnYiMMGV+r2FQXWZP
	l3rg2PHO81rZI6DQ==
To: andrew.cooper3@citrix.com, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, hpa@zytor.com, luto@kernel.org, pbonzini@redhat.com,
 seanjc@google.com, peterz@infradead.org, jgross@suse.com,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, jiangshanlai@gmail.com
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
In-Reply-To: <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
Date: Fri, 15 Sep 2023 02:42:49 +0200
Message-ID: <87r0n01d2u.ffs@tglx>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

On Fri, Sep 15 2023 at 00:46, andrew wrote:
> On 15/09/2023 12:00 am, Thomas Gleixner wrote:
> What I meant was "there should be the two top-level APIs, and under the
> covers they DTRT".=C2=A0 Part of doing the right thing is to wire up para=
virt
> for configs where that is specified.
>
> Anything else is going to force people to write logic of the form:
>
> =C2=A0=C2=A0=C2=A0 if (WRMSRNS && !XENPV)
> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 wrmsr_ns(...)
> =C2=A0=C2=A0=C2=A0 else
> =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 wrmsr(...)
>
> which is going to be worse overall.

I already agreed with that for generic code which might be affected by
PV. But code which is explicitely depending on something which never can
be affected by PV _and_ is in a performance sensitive code path really
wants to be able to use the native variant explicitely.

> And there really is one example of this antipattern already in the
> series.

No. There is no antipattern in this series. The only place which uses
wrmsrns() is:

@@ -70,9 +70,13 @@ static inline void update_task_stack(str
 #ifdef CONFIG_X86_32
 	this_cpu_write(cpu_tss_rw.x86_tss.sp1, task->thread.sp0);
 #else
-	/* Xen PV enters the kernel on the thread stack. */
-	if (cpu_feature_enabled(X86_FEATURE_XENPV))
+	if (cpu_feature_enabled(X86_FEATURE_FRED)) {
+		/* WRMSRNS is a baseline feature for FRED. */
+		wrmsrns(MSR_IA32_FRED_RSP0, (unsigned long)task_stack_page(task) + THREA=
D_SIZE);
+	} else if (cpu_feature_enabled(X86_FEATURE_XENPV)) {
+		/* Xen PV enters the kernel on the thread stack. */
 		load_sp0(task_top_of_stack(task));
+	}
 #endif
 }

The XENPV condition exists already today and is required independent of
FRED, no?

I deliberately distinguished #1 and #3 on my proposed todo list exactly
because the above use case really wants #1 without the extra bells and
whistles of a generic PV patchable wrmrs_ns() variant. Why?

  No matter how clever the enhanced PV implementation might be, it is
  guaranteed to generate worse code than the straight forward native
  inline assembly. Simply because it has to prevent the compiler from
  being overly clever on optimizations as it obviously mandates wider
  register restrictions, while the pure native variant (independent of
  the availability of X86_FEATURE_WRMSRNS) ony mandates the requirements
  of WRMSR[NS], but not the extra register indirection of the call ABI.

I'm not debating that any other code pattern like you pointed out in
some generic code would be horrible, but I'm not buying your strawman
related to this particular usage site.

Thanks,

        tglx


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 01:02:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 01:02:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602810.939572 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgxDS-0006tv-SI; Fri, 15 Sep 2023 01:01:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602810.939572; Fri, 15 Sep 2023 01:01:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgxDS-0006to-Ob; Fri, 15 Sep 2023 01:01:50 +0000
Received: by outflank-mailman (input) for mailman id 602810;
 Fri, 15 Sep 2023 01:01:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=9T1c=E7=zytor.com=hpa@srs-se1.protection.inumbo.net>)
 id 1qgxDQ-0006po-TX
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 01:01:48 +0000
Received: from mail.zytor.com (unknown [2607:7c80:54:3::138])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 70ca940d-5363-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 03:01:46 +0200 (CEST)
Received: from [172.27.2.41] ([98.35.210.218]) (authenticated bits=0)
 by mail.zytor.com (8.17.1/8.17.1) with ESMTPSA id 38F112U03638576
 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO);
 Thu, 14 Sep 2023 18:01:03 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 70ca940d-5363-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 38F112U03638576
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com;
	s=2023091101; t=1694739666;
	bh=XHN9I2OHU68RV5bG6y3WqExfCASkiZJ1qJvRtiUpKjE=;
	h=Date:Subject:To:Cc:References:From:In-Reply-To:From;
	b=CC1wRaIWsm1+pSXkxshfOPybvCuX3+uD6m3yE7NNC9TLBPqtBenwiKAiRplm82uJj
	 cSIY9kVUKb9ouaCP3Hxth1CawYt4FplSJM68+yTs4aDQvCJJBZqTLEkthTrZ2P6U20
	 bCyJZJp+F6oLYIblgj9lMq59a5MPlxgiN9GJG0hXAG+6E1FvCbJwv3h+7PBLFKyVbz
	 ILRo/2CSfogqPR3gl77gxFuqEn50czOxR2s9uHMbkv9rLAq0GTw9gAzVtw3IOmfYnx
	 EHaNtPoY/WfRrgx4WS16sbfJs0md2J4u8kaa+3gsCHhH4mA1JQG08X8MitAXaDvOgZ
	 9SvBiKgshjFdQ==
Message-ID: <0e7d37db-e1af-ac40-6eca-5565d1bebcde@zytor.com>
Date: Thu, 14 Sep 2023 18:01:01 -0700
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-US
To: andrew.cooper3@citrix.com, Thomas Gleixner <tglx@linutronix.de>,
        Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
        linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
        linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
        xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
        x86@kernel.org, luto@kernel.org, pbonzini@redhat.com,
        seanjc@google.com, peterz@infradead.org, jgross@suse.com,
        ravi.v.shankar@intel.com, mhiramat@kernel.org, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
From: "H. Peter Anvin" <hpa@zytor.com>
In-Reply-To: <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

> WRMSR has one complexity that most other PV-ops don't, and that's the
> exception table reference for the instruction itself.
> 
> In a theoretical future ought to look like:
> 
>     mov    $msr, %ecx
>     mov    $lo, %eax
>     mov    $hi, %edx
>     1: {call paravirt_blah(%rip) | cs...cs wrmsr | cs...cs wrmsrns }
>     _ASM_EXTABLE(1b, ...)
> 
> In paravirt builds, the CALL needs to be the emitted form, because it
> needs to function in very early boot.
> 
> But once the paravirt-ness has been chosen and alternatives run, the
> as-native paths are fully inline.
> 
> The alternative which processes this site wants to conclude that, in the
> case it does not alter from the CALL, to clobber the EXTABLE reference. 
> CALL instructions can #GP, and you don't want to end up thinking you're
> handling a WRMSR #GP when in fact it was a non-canonical function pointer.


On 9/14/23 17:36, andrew.cooper3@citrix.com wrote:> On 15/09/2023 1:07 
am, H. Peter Anvin wrote:
 >> Is *that* your concern?! Just put a NOP before WRMSR – you need 
padding NOP bytes anyway – and the extable entry is no longer at the 
same address. Problem solved.
 >>
 >> Either that, or use a direct call, which can't #GP in the address 
range used by the kernel.
 >
 > For non-paravirt builds, I really hope the inlining DoesTheRightThing.
 > If it doesn't lets fix it to do so.
 >
 > For paravirt builds, the emitted form must be the indirect call so it
 > can function in boot prior to alternatives running [1].
 >
No, it doesn't. You always have the option of a direct call to an 
indirect JMP. This is in fact exactly what userspace does in the form of 
the PLT.

 > So you still need some way of putting the EXTABLE reference at the
 > emitted site, not in the .altintr_replacement section where the
 > WRMSR{,NS} instruction lives.  This needs to be at build time because
 > the EXTABLE references aren't shuffled at runtime.
 >
 > How else do you propose getting an extable reference to midway through
 > an instruction on the "wrong" part of an alternative?
Well, obviously there has to be a magic inline at the patch site. It 
ends up looking something like this:

	asm volatile("1:"
		     ALTERNATIVE_2("call pv_wrmsr(%%rip)",
			"nop; wrmsr", X86_FEATURE_NATIVE_MSR,
			"nop; wrmsrns", X86_FEATURE_WRMSRNS)
		     "2:"
		     _ASM_EXTABLE_TYPE(1b+1, 2b, EX_TYPE_WRMSR)
		     : : "c" (msr), "a" (low), "d" (high) : "memory");


[one can argue whether or not WRMSRNS specifically should require 
"memory" or not.]

The whole bit with alternatives and pvops being separate is a major 
maintainability problem, and honestly it never made any sense in the 
first place. Never have two mechanisms to do one job; it makes it harder 
to grok their interactions.

As an alternative to the NOP, the EX_TYPE_*MSR* handlers could simply 
look for a CALL opcode at the origin.

	-hpa


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 01:07:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 01:07:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602817.939581 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgxIf-0008A6-KG; Fri, 15 Sep 2023 01:07:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602817.939581; Fri, 15 Sep 2023 01:07:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgxIf-00089z-HE; Fri, 15 Sep 2023 01:07:13 +0000
Received: by outflank-mailman (input) for mailman id 602817;
 Fri, 15 Sep 2023 01:07:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3l1k=E7=linutronix.de=tglx@srs-se1.protection.inumbo.net>)
 id 1qgxIe-00089t-9f
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 01:07:12 +0000
Received: from galois.linutronix.de (galois.linutronix.de [193.142.43.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3297cd88-5364-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 03:07:10 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3297cd88-5364-11ee-8788-cb3800f73035
From: Thomas Gleixner <tglx@linutronix.de>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020; t=1694740029;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=8cRPJbRPbpPyl0DIKbunWuB6+IYtaMtGVInY/dfsbq0=;
	b=YUWamJ5Utp3OQKs0c96zn7z7qwtq5o7oz8CSYdDscALYnuLUGz8SVTh1fz7twIzwmSpsjE
	vsB7w4hBDv0GFnE1NN3xIKfUwohwgKJpgAgZtmggKQQqDjhO+FNlFRQL/GB+Kh6EPdNzpk
	zRoYVcfu1QT7x79DLIjnLloBqPeETIiVgYs2saYJniSZNoOL1AkKr2CHD3knl35LxG/dAt
	vl6bKdoPy0wCFCYinek/JPK3YjMQeQzqL0G4ogM7a0qh4LFhznuacNFS7LjyPTQFfrPXf8
	6OJcRCfY0/JSCSl7MingVERa+6SpAnCJXhzq6Sz5oSfPHvpIl+lN69R9ABcy8w==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020e; t=1694740029;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=8cRPJbRPbpPyl0DIKbunWuB6+IYtaMtGVInY/dfsbq0=;
	b=YgXAAcfI7PqVQfPd3GS4BbveJ65cq2aLT9IHq5xExXqf946ewsDrQfSvPRljDdyjnuMZ8G
	TM8nzdItAHQpybAg==
To: andrew.cooper3@citrix.com, Jan Beulich <jbeulich@suse.com>, Juergen
 Gross <jgross@suse.com>
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, hpa@zytor.com, luto@kernel.org, pbonzini@redhat.com,
 seanjc@google.com, peterz@infradead.org, ravi.v.shankar@intel.com,
 mhiramat@kernel.org, jiangshanlai@gmail.com, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Subject: Re: [PATCH v10 08/38] x86/cpufeatures: Add the cpu feature bit for
 FRED
In-Reply-To: <7d907488-d626-0801-3d4b-af42d00a5537@citrix.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-9-xin3.li@intel.com>
 <d98a362d-d806-4458-9473-be5bea254db7@suse.com>
 <77ca8680-02e2-cdaa-a919-61058e2d5245@suse.com>
 <7d907488-d626-0801-3d4b-af42d00a5537@citrix.com>
Date: Fri, 15 Sep 2023 03:07:09 +0200
Message-ID: <87o7i41bya.ffs@tglx>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 14 2023 at 14:15, andrew wrote:
> PV guests are never going to see FRED (or LKGS for that matter) because
> it advertises too much stuff which simply traps because the kernel is in
> CPL3.
>
> That said, the 64bit PV ABI is a whole lot closer to FRED than it is to
> IDT delivery.=C2=A0 (Almost as if we decided 15 years ago that giving the=
 PV
> guest kernel a good stack and GSbase was the right thing to do...)

No argument about that.

> In some copious free time, I think we ought to provide a
> minorly-paravirt FRED to PV guests because there are still some
> improvements available as low hanging fruit.
>
> My plan was to have a PV hypervisor leaf advertising paravirt versions
> of hardware features, so a guest could see "I don't have architectural
> FRED, but I do have paravirt-FRED which is as similar as we can
> reasonably make it".=C2=A0 The same goes for a whole bunch of other featu=
res.

*GROAN*

I told you before that we want less paravirt nonsense and not more. I'm
serious about that. XENPV CPL3 virtualization is a dead horse from a
technical POV. No point in wasting brain cycles to enhance the zombie
unless you can get rid of the existing PV nonsense, which you can't for
obvious reasons.

That said, we can debate this once the more fundamental issues of
XEN[PV] have been addressed. I expect that to happen quite some time
after I retired :)

Thanks,

        tglx


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 01:16:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 01:16:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602825.939591 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgxS2-0002Wx-DS; Fri, 15 Sep 2023 01:16:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602825.939591; Fri, 15 Sep 2023 01:16:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgxS2-0002Wq-AV; Fri, 15 Sep 2023 01:16:54 +0000
Received: by outflank-mailman (input) for mailman id 602825;
 Fri, 15 Sep 2023 01:16:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=upey=E7=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgxS1-0002WR-0r
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 01:16:53 +0000
Received: from mail-ej1-x636.google.com (mail-ej1-x636.google.com
 [2a00:1450:4864:20::636])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8ce26f45-5365-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 03:16:51 +0200 (CEST)
Received: by mail-ej1-x636.google.com with SMTP id
 a640c23a62f3a-99de884ad25so220077566b.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 18:16:51 -0700 (PDT)
Received: from [192.168.1.10] (host-92-12-44-130.as13285.net. [92.12.44.130])
 by smtp.gmail.com with ESMTPSA id
 v7-20020a1709064e8700b00977cad140a8sm1674597eju.218.2023.09.14.18.16.50
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 18:16:51 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8ce26f45-5365-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694740611; x=1695345411; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=NPhAEJforhjWZp+uVyQ1+GyAsVZzUl1B486vJg9MvnA=;
        b=pTmjpYPNjAzjbtVgLygXGfRYlyZ1OlGpKqW1foMH2wOEPc6tlzOOXN9GKc7p4UX4E6
         pjBMrDoPdPDCSynDhkgq2fniu864ucY4A8HV3qeLHuBqHOBeixFf6ObNAr7zYbqnd9Tk
         k2rhK7cu0+9wFVsk60abM8XKx54Huylp00zUU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694740611; x=1695345411;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=NPhAEJforhjWZp+uVyQ1+GyAsVZzUl1B486vJg9MvnA=;
        b=PtluXHLyZy1J9W0a7Yw2Bwi1SizjX2UgS08bhL6LbiksscmysWpsbT0ohnBvDXqWV3
         xaNAcbgxrEoJ4HDkRbsbNw0h1XBMbJGOHunppvsIs/nqf95qQk6CUnMU/dOS/XTHMC07
         13JHiTBfGBfm1iNPfDjfwImKxeCussmuULrtYWRROmnE8zgrK1siIt0JvuGhRPX2m8+S
         dpcd+ZnIh/rSYUBwNBt0wN7KNYDULpVrK9Eadu6bLkgfGHwAeI1uMCczw7cqpMAIJSL/
         jv779lAhxXpQ3+OpKbqv/aTO+JqaOQk6/6tlTCW/jANOCi3nJR+/RIs0eGlodd/vebZy
         CIag==
X-Gm-Message-State: AOJu0YzsAWoHgIvOVUcYuiJrzIPVPoqrfvB9kx6VKNTVLE543P3B1a8M
	n7gJX/7qoYTRJCql6L2zD8EUsQ==
X-Google-Smtp-Source: AGHT+IE7O+PeUxB72+aWKd2SThAEBmIs9sfrCItn5Ff0aKMedVWukOd31H6m4Ef8LNnP3BDRvPbAaw==
X-Received: by 2002:a17:906:3f49:b0:99c:56d1:7c71 with SMTP id f9-20020a1709063f4900b0099c56d17c71mr118141ejj.26.1694740611206;
        Thu, 14 Sep 2023 18:16:51 -0700 (PDT)
Message-ID: <6575702e-fea5-61b2-dd61-7b556a8603e8@citrix.com>
Date: Fri, 15 Sep 2023 02:16:50 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: andrew.cooper3@citrix.com
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-GB
To: "H. Peter Anvin" <hpa@zytor.com>, Thomas Gleixner <tglx@linutronix.de>,
 Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, luto@kernel.org, pbonzini@redhat.com, seanjc@google.com,
 peterz@infradead.org, jgross@suse.com, ravi.v.shankar@intel.com,
 mhiramat@kernel.org, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
 <0e7d37db-e1af-ac40-6eca-5565d1bebcde@zytor.com>
In-Reply-To: <0e7d37db-e1af-ac40-6eca-5565d1bebcde@zytor.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 15/09/2023 2:01 am, H. Peter Anvin wrote:
> The whole bit with alternatives and pvops being separate is a major
> maintainability problem, and honestly it never made any sense in the
> first place. Never have two mechanisms to do one job; it makes it
> harder to grok their interactions.

This bit is easy.

Juergen has already done the work to delete one of these two patching
mechanisms and replace it with the other.

https://lore.kernel.org/lkml/a32e211f-4add-4fb2-9e5a-480ae9b9bbf2@suse.com/

Unfortunately, it's only collecting pings and tumbleweeds.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 01:46:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 01:46:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602831.939601 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgxug-0002rF-MY; Fri, 15 Sep 2023 01:46:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602831.939601; Fri, 15 Sep 2023 01:46:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgxug-0002r8-Jg; Fri, 15 Sep 2023 01:46:30 +0000
Received: by outflank-mailman (input) for mailman id 602831;
 Fri, 15 Sep 2023 01:46:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=upey=E7=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qgxuf-0002pp-Bu
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 01:46:29 +0000
Received: from mail-ej1-x634.google.com (mail-ej1-x634.google.com
 [2a00:1450:4864:20::634])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id af85687e-5369-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 03:46:27 +0200 (CEST)
Received: by mail-ej1-x634.google.com with SMTP id
 a640c23a62f3a-991c786369cso219788666b.1
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 18:46:27 -0700 (PDT)
Received: from [192.168.1.10] (host-92-12-44-130.as13285.net. [92.12.44.130])
 by smtp.gmail.com with ESMTPSA id
 lg13-20020a170906f88d00b009828e26e519sm1717612ejb.122.2023.09.14.18.46.26
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 14 Sep 2023 18:46:26 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: af85687e-5369-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694742387; x=1695347187; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=/We05QBGf54xap/mvQHQ6SHgmclfDs/rkBUva3BMHN4=;
        b=cJceC9q0HvPKBoF0RvBQkxDcOQaovEfVkYcA02fdyE1gdNFGszNFPdBqZDZ8X279TT
         pEed44VV0HA9yZv+j0cVZLtVaf8YqnIL1iHQIJGOzPUZq2xxqVrU3qCrLbyzZ3fPT2d4
         HAIVyfi5EA4ue3R8cMx2oIMo7O14X1gnRnL04=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694742387; x=1695347187;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=/We05QBGf54xap/mvQHQ6SHgmclfDs/rkBUva3BMHN4=;
        b=dwIhYuS4Stf0x7BIGbeishJlZ8B1s3Uz65Q8MCLa45BgbsSQJutQqE6lelWF+Pu8Pu
         z4ujgilsArgaQlnRAhT2wZbJ7hsFGguebpGfeXQFiZId26ljPtiSFaabQ4Ybw6oh7W4o
         LLp3H0ig1X3WTJx6GVSJRbaHx5Xu8dZpyzunQoax+lyVWoTtoGDR4OWN8nYOFG+MYN13
         UynT6hCqzMKvzufjmrz0T2N/cdQ1i1/kWnjOcXPuC9a2wtewmBzCvtexRor2EcsRFkVo
         SrtNxzNiG5eHUeSVqCIqp0ZOW/p4bZdP09graNJgfGeFy4290QJ37i8k3BWpTtNqIBAo
         7v/w==
X-Gm-Message-State: AOJu0Yxdvw4dlKIFHLB4MNF1x8ctcHVC+kZtRhkoCbJXyaTvLUxmiApL
	jUFD2OCJJubFd+DstvlI8fKaNA==
X-Google-Smtp-Source: AGHT+IHPu+cpAJWccx/7qe6vKXqWPcxLrO1CLKCzaitC2xOztw0rjEqS/irWK79hYFHgOnKDG9NiHw==
X-Received: by 2002:a17:906:9c9:b0:9a4:88af:b82 with SMTP id r9-20020a17090609c900b009a488af0b82mr78302eje.77.1694742387253;
        Thu, 14 Sep 2023 18:46:27 -0700 (PDT)
Message-ID: <af5990d5-58d5-9109-b37b-1f696a43fe86@citrix.com>
Date: Fri, 15 Sep 2023 02:46:25 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: andrew.cooper3@citrix.com
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-GB
To: "H. Peter Anvin" <hpa@zytor.com>, Thomas Gleixner <tglx@linutronix.de>,
 Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, luto@kernel.org, pbonzini@redhat.com, seanjc@google.com,
 peterz@infradead.org, jgross@suse.com, ravi.v.shankar@intel.com,
 mhiramat@kernel.org, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com> <87v8cc1ehe.ffs@tglx>
 <50e96f85-66f8-2a4f-45c9-a685c757bb28@citrix.com>
 <5cf50d76-8e18-2863-4889-70e9c18298a1@zytor.com>
In-Reply-To: <5cf50d76-8e18-2863-4889-70e9c18298a1@zytor.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 15/09/2023 1:38 am, H. Peter Anvin wrote:
> On 9/14/23 17:33, andrew.cooper3@citrix.com wrote:
>>
>> It's an assumption about what "definitely won't" be paravirt in the
>> future.
>>
>> XenPV stack handling is almost-FRED-like and has been for the better
>> part of two decades.
>>
>> You frequently complain that there's too much black magic holding XenPV
>> together.  A paravirt-FRED will reduce the differences vs native
>> substantially.
>>
>
> Call it "paravirtualized exception handling." In that sense, the
> refactoring of the exception handling to benefit FRED is definitely
> useful for reducing paravirtualization. The FRED-specific code is
> largely trivial, and presumably what you would do is to replace the
> FRED wrapper with a Xen wrapper and call the common handler routines.

Why do only half the job?

There's no need for any Xen wrappers at all when XenPV can use the
native FRED paths, as long as ERETU, ERETS and the relevant MSRs can be
paravirt (sure - with an interface that sucks less than right now) so
they're not taking the #GP/emulate in Xen path.

And this can work on all hardware with a slightly-future version of Xen
and Linux, because it's just a minor adjustment to how Xen writes the
exception frame on the guests stack as part of event delivery.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 02:07:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 02:07:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602837.939612 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgyEY-0000yD-8Z; Fri, 15 Sep 2023 02:07:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602837.939612; Fri, 15 Sep 2023 02:07:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgyEY-0000y6-5u; Fri, 15 Sep 2023 02:07:02 +0000
Received: by outflank-mailman (input) for mailman id 602837;
 Fri, 15 Sep 2023 02:07:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=9T1c=E7=zytor.com=hpa@srs-se1.protection.inumbo.net>)
 id 1qgyEW-0000v1-D7
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 02:07:00 +0000
Received: from mail.zytor.com (unknown [2607:7c80:54:3::138])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8bd982fb-536c-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 04:06:57 +0200 (CEST)
Received: from [172.27.2.41] ([98.35.210.218]) (authenticated bits=0)
 by mail.zytor.com (8.17.1/8.17.1) with ESMTPSA id 38F265Wd3668683
 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO);
 Thu, 14 Sep 2023 19:06:06 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8bd982fb-536c-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 38F265Wd3668683
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com;
	s=2023091101; t=1694743567;
	bh=pS+FaX3FGPx0JfqHE/l2ITnl7xmsLE2z552abw2UC+0=;
	h=Date:Subject:To:Cc:References:From:In-Reply-To:From;
	b=L9Tn4bNWud/CxiGNp8dzV9DjK/XgpKI9glMVqLtI284PNIM+SU+lt6/HVStRqyVH+
	 Wa217xj/vgHHveKFL3+RFza4ZxqOYDCyK118q8ZMfUs6FM1DJ3XmbNm8j7tboNUv35
	 CaKawJfEqcY1xG1CRP25CZItxE2Tt6Syd+xn3AuaPTvjnDrojd6kvP5LvdtaWjPr9z
	 z+1v6TEBpYVeuLyH+uat0FpanQYtkD2FVdr8ypVLKEBPypEZsGMwF5hBYQjJB99Bht
	 toS9X9qEIa/l11zjrnNpZhnSWZKp+DJQXz/2flAJ8ojaF0zHwqIVFcnJwYgDHpAcjg
	 dyKUsdqLoIv4w==
Message-ID: <b05e3092-8ba3-f4e1-b5a3-2125944936fd@zytor.com>
Date: Thu, 14 Sep 2023 19:06:04 -0700
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-US
To: andrew.cooper3@citrix.com, Thomas Gleixner <tglx@linutronix.de>,
        Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
        linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
        linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
        xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
        x86@kernel.org, luto@kernel.org, pbonzini@redhat.com,
        seanjc@google.com, peterz@infradead.org, jgross@suse.com,
        ravi.v.shankar@intel.com, mhiramat@kernel.org, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com> <87v8cc1ehe.ffs@tglx>
 <50e96f85-66f8-2a4f-45c9-a685c757bb28@citrix.com>
 <5cf50d76-8e18-2863-4889-70e9c18298a1@zytor.com>
 <af5990d5-58d5-9109-b37b-1f696a43fe86@citrix.com>
From: "H. Peter Anvin" <hpa@zytor.com>
In-Reply-To: <af5990d5-58d5-9109-b37b-1f696a43fe86@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 9/14/23 18:46, andrew.cooper3@citrix.com wrote:
> On 15/09/2023 1:38 am, H. Peter Anvin wrote:
>> On 9/14/23 17:33, andrew.cooper3@citrix.com wrote:
>>>
>>> It's an assumption about what "definitely won't" be paravirt in the
>>> future.
>>>
>>> XenPV stack handling is almost-FRED-like and has been for the better
>>> part of two decades.
>>>
>>> You frequently complain that there's too much black magic holding XenPV
>>> together.  A paravirt-FRED will reduce the differences vs native
>>> substantially.
>>>
>>
>> Call it "paravirtualized exception handling." In that sense, the
>> refactoring of the exception handling to benefit FRED is definitely
>> useful for reducing paravirtualization. The FRED-specific code is
>> largely trivial, and presumably what you would do is to replace the
>> FRED wrapper with a Xen wrapper and call the common handler routines.
> 
> Why do only half the job?
> 
> There's no need for any Xen wrappers at all when XenPV can use the
> native FRED paths, as long as ERETU, ERETS and the relevant MSRs can be
> paravirt (sure - with an interface that sucks less than right now) so
> they're not taking the #GP/emulate in Xen path.
> 
> And this can work on all hardware with a slightly-future version of Xen
> and Linux, because it's just a minor adjustment to how Xen writes the
> exception frame on the guests stack as part of event delivery.
> 

It's not about doing "half the job", it's about using the proper 
abstraction mechanism. By all means, if you can join the common code 
flow earlier, do so, but paravirtualizing the entry/exit stubs which is 
the *only* place ERETU and ERETS show up is just crazy.

Similarly, nearly all the MSRs are just configuration setup. The only 
ones which have any kind of performance relevance is the stack setup (RSP0).

	-hpa



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 03:10:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 03:10:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602844.939622 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgzDt-0001jG-Pj; Fri, 15 Sep 2023 03:10:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602844.939622; Fri, 15 Sep 2023 03:10:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qgzDt-0001j9-Mt; Fri, 15 Sep 2023 03:10:25 +0000
Received: by outflank-mailman (input) for mailman id 602844;
 Fri, 15 Sep 2023 03:10:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8CaZ=E7=chromium.org=keescook@srs-se1.protection.inumbo.net>)
 id 1qgzDs-0001j1-M6
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 03:10:24 +0000
Received: from mail-pl1-x62d.google.com (mail-pl1-x62d.google.com
 [2607:f8b0:4864:20::62d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 67c105f1-5375-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 05:10:22 +0200 (CEST)
Received: by mail-pl1-x62d.google.com with SMTP id
 d9443c01a7336-1c06f6f98c0so14969375ad.3
 for <xen-devel@lists.xenproject.org>; Thu, 14 Sep 2023 20:10:22 -0700 (PDT)
Received: from www.outflux.net (198-0-35-241-static.hfc.comcastbusiness.net.
 [198.0.35.241]) by smtp.gmail.com with ESMTPSA id
 y7-20020a17090322c700b001c0a414695dsm2285725plg.62.2023.09.14.20.10.20
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 14 Sep 2023 20:10:20 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 67c105f1-5375-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google; t=1694747420; x=1695352220; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=s66uVsXieXZEwrz2tGtxEkm4KD1eEh+8pBHuZBZ6AXU=;
        b=Ag+kMRx/vdAnUXWljupD5btwkNsRDTUtEP0cqhHcwABH9HCPuaQa4tRZCYwXwqgeOE
         Oxk2eqxObvVqZkq/bvpHnSr4jQPXVwYL7MkctHVLxUGrNUW36XAbXHh4gTQ1Q5er1h7o
         DrT5DAYudTGMaaO+6e4WEUDEIJXhNVFs6sVbo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694747420; x=1695352220;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=s66uVsXieXZEwrz2tGtxEkm4KD1eEh+8pBHuZBZ6AXU=;
        b=k8WL5lwwRWK3i/2Q1Ghs96XgSr6TUJvs1L4rESY5P60VzLx3V2Ltq39z7Nr5+WER1Z
         LG8CaIHOwCiZJVfH4vb5tfAW2zM9kuie1tXPCkkJBcfeu/maDJIUgzuHv30yKxGKgsEu
         LK6Z3uvZiD0AVV8/pc83HdLpu4CTz6+IXMAKdHVvbmaJ41BRZ2W4woKSK2yVxnRxw0aT
         Qz0DgACQ4oGKy5sjijwiQ4unWixHyIdtkh+Riydh8PipqoiaFbtmfV+Ol7f+lmNKDGnk
         KlzIzrJkgzerQ5TaTQPJ9ERZmTXm3eBOyoXkmyBOFA0ZJrauGXEUPNva0gZgvOwWy25c
         Oonw==
X-Gm-Message-State: AOJu0Yx62ZEMMOoFiIuF1NVGXWQP5kVJEjOg4yf9l8P4cRoLxAbLJJKY
	axLGRg4laZ3WMtTnLb3T3589jw==
X-Google-Smtp-Source: AGHT+IHiPr6yjry1eOi32qemWdUt8KSs5Y4FRrVUY+L6LPMW/8uikqG4J6/IPV1vKIwXV6zuvnYF/Q==
X-Received: by 2002:a17:902:76c5:b0:1bb:c06e:647a with SMTP id j5-20020a17090276c500b001bbc06e647amr443590plt.53.1694747420577;
        Thu, 14 Sep 2023 20:10:20 -0700 (PDT)
Date: Thu, 14 Sep 2023 20:10:19 -0700
From: Kees Cook <keescook@chromium.org>
To: Justin Stitt <justinstitt@google.com>
Cc: Juergen Gross <jgross@suse.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>, x86@kernel.org,
	"H. Peter Anvin" <hpa@zytor.com>, xen-devel@lists.xenproject.org,
	linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org
Subject: Re: [PATCH] xen/efi: refactor deprecated strncpy
Message-ID: <202309142009.DD5AE193@keescook>
References: <20230911-strncpy-arch-x86-xen-efi-c-v1-1-96ab2bba2feb@google.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230911-strncpy-arch-x86-xen-efi-c-v1-1-96ab2bba2feb@google.com>

On Mon, Sep 11, 2023 at 06:59:31PM +0000, Justin Stitt wrote:
> `strncpy` is deprecated for use on NUL-terminated destination strings [1].
> 
> `efi_loader_signature` has space for 4 bytes. We are copying "Xen" (3 bytes)
> plus a NUL-byte which makes 4 total bytes. With that being said, there is
> currently not a bug with the current `strncpy()` implementation in terms of
> buffer overreads but we should favor a more robust string interface
> either way.

Yeah, this will work. Since this is a u32 destination, I do wonder if
strtomem_pad() would be better since we're not really writing a string?
But since this is all hard-coded, it doesn't matter. :)

Reviewed-by: Kees Cook <keescook@chromium.org>

-Kees

> 
> A suitable replacement is `strscpy` [2] due to the fact that it guarantees
> NUL-termination on the destination buffer while being functionally the
> same in this case.
> 
> Link: www.kernel.org/doc/html/latest/process/deprecated.html#strncpy-on-nul-terminated-strings[1]
> Link: https://manpages.debian.org/testing/linux-manual-4.8/strscpy.9.en.html [2]
> Link: https://github.com/KSPP/linux/issues/90
> Cc: linux-hardening@vger.kernel.org
> Cc: Kees Cook <keescook@chromium.org>
> Signed-off-by: Justin Stitt <justinstitt@google.com>
> ---
> Note: build-tested
> ---
>  arch/x86/xen/efi.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/x86/xen/efi.c b/arch/x86/xen/efi.c
> index 863d0d6b3edc..7250d0e0e1a9 100644
> --- a/arch/x86/xen/efi.c
> +++ b/arch/x86/xen/efi.c
> @@ -138,7 +138,7 @@ void __init xen_efi_init(struct boot_params *boot_params)
>  	if (efi_systab_xen == NULL)
>  		return;
>  
> -	strncpy((char *)&boot_params->efi_info.efi_loader_signature, "Xen",
> +	strscpy((char *)&boot_params->efi_info.efi_loader_signature, "Xen",
>  			sizeof(boot_params->efi_info.efi_loader_signature));
>  	boot_params->efi_info.efi_systab = (__u32)__pa(efi_systab_xen);
>  	boot_params->efi_info.efi_systab_hi = (__u32)(__pa(efi_systab_xen) >> 32);
> 
> ---
> base-commit: 2dde18cd1d8fac735875f2e4987f11817cc0bc2c
> change-id: 20230911-strncpy-arch-x86-xen-efi-c-14292f5a79ee
> 
> Best regards,
> --
> Justin Stitt <justinstitt@google.com>
> 

-- 
Kees Cook


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 05:27:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 05:27:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602851.939632 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh1Ma-0006lw-AE; Fri, 15 Sep 2023 05:27:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602851.939632; Fri, 15 Sep 2023 05:27:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh1Ma-0006lp-78; Fri, 15 Sep 2023 05:27:32 +0000
Received: by outflank-mailman (input) for mailman id 602851;
 Fri, 15 Sep 2023 05:27:30 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=X3kr=E7=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qh1MY-0006lj-DF
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 05:27:30 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9001a2a1-5388-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 07:27:29 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 983C01F38C;
 Fri, 15 Sep 2023 05:27:28 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 053D313479;
 Fri, 15 Sep 2023 05:27:27 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id m4dhOz/rA2VrYwAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 15 Sep 2023 05:27:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9001a2a1-5388-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1694755648; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=QU8myV3ur4X5421f1/iCCeH3dClVFgzG1eLkkZQpaSE=;
	b=NtKM/H7jhZhi6WVeOgIIjPD3lWAFrjAaJmVRY1uX3CKXpNBPqle4T/CnIYXShURolHHb6P
	p+oO7hLblgc9P9h0no2Cwk8ea9Gl4cXJ5YrfpyYrWVLekSpRAD+FCGr/2gVGFeCmjCv5aj
	hx/RjNMAZ6jQwJZp+d9t0XSaoGde3vA=
Message-ID: <76fe3edb-cc84-46f1-80f6-00ea36fbad16@suse.com>
Date: Fri, 15 Sep 2023 07:27:27 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v10 08/38] x86/cpufeatures: Add the cpu feature bit for
 FRED
Content-Language: en-US
To: Thomas Gleixner <tglx@linutronix.de>, andrew.cooper3@citrix.com,
 Jan Beulich <jbeulich@suse.com>
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, hpa@zytor.com, luto@kernel.org, pbonzini@redhat.com,
 seanjc@google.com, peterz@infradead.org, ravi.v.shankar@intel.com,
 mhiramat@kernel.org, jiangshanlai@gmail.com, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-9-xin3.li@intel.com>
 <d98a362d-d806-4458-9473-be5bea254db7@suse.com>
 <77ca8680-02e2-cdaa-a919-61058e2d5245@suse.com>
 <7d907488-d626-0801-3d4b-af42d00a5537@citrix.com> <87o7i41bya.ffs@tglx>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <87o7i41bya.ffs@tglx>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------0DJc54CgcwM0KkGine9Y86ek"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------0DJc54CgcwM0KkGine9Y86ek
Content-Type: multipart/mixed; boundary="------------FxBkvOSsZsO036jILYJ06LWo";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Thomas Gleixner <tglx@linutronix.de>, andrew.cooper3@citrix.com,
 Jan Beulich <jbeulich@suse.com>
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, hpa@zytor.com, luto@kernel.org, pbonzini@redhat.com,
 seanjc@google.com, peterz@infradead.org, ravi.v.shankar@intel.com,
 mhiramat@kernel.org, jiangshanlai@gmail.com, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Message-ID: <76fe3edb-cc84-46f1-80f6-00ea36fbad16@suse.com>
Subject: Re: [PATCH v10 08/38] x86/cpufeatures: Add the cpu feature bit for
 FRED
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-9-xin3.li@intel.com>
 <d98a362d-d806-4458-9473-be5bea254db7@suse.com>
 <77ca8680-02e2-cdaa-a919-61058e2d5245@suse.com>
 <7d907488-d626-0801-3d4b-af42d00a5537@citrix.com> <87o7i41bya.ffs@tglx>
In-Reply-To: <87o7i41bya.ffs@tglx>

--------------FxBkvOSsZsO036jILYJ06LWo
Content-Type: multipart/mixed; boundary="------------FKBb0HfIKq5W00Hh1Q7xjNPA"

--------------FKBb0HfIKq5W00Hh1Q7xjNPA
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTUuMDkuMjMgMDM6MDcsIFRob21hcyBHbGVpeG5lciB3cm90ZToNCj4gT24gVGh1LCBT
ZXAgMTQgMjAyMyBhdCAxNDoxNSwgYW5kcmV3IHdyb3RlOg0KPj4gUFYgZ3Vlc3RzIGFyZSBu
ZXZlciBnb2luZyB0byBzZWUgRlJFRCAob3IgTEtHUyBmb3IgdGhhdCBtYXR0ZXIpIGJlY2F1
c2UNCj4+IGl0IGFkdmVydGlzZXMgdG9vIG11Y2ggc3R1ZmYgd2hpY2ggc2ltcGx5IHRyYXBz
IGJlY2F1c2UgdGhlIGtlcm5lbCBpcyBpbg0KPj4gQ1BMMy4NCj4+DQo+PiBUaGF0IHNhaWQs
IHRoZSA2NGJpdCBQViBBQkkgaXMgYSB3aG9sZSBsb3QgY2xvc2VyIHRvIEZSRUQgdGhhbiBp
dCBpcyB0bw0KPj4gSURUIGRlbGl2ZXJ5LsKgIChBbG1vc3QgYXMgaWYgd2UgZGVjaWRlZCAx
NSB5ZWFycyBhZ28gdGhhdCBnaXZpbmcgdGhlIFBWDQo+PiBndWVzdCBrZXJuZWwgYSBnb29k
IHN0YWNrIGFuZCBHU2Jhc2Ugd2FzIHRoZSByaWdodCB0aGluZyB0byBkby4uLikNCj4gDQo+
IE5vIGFyZ3VtZW50IGFib3V0IHRoYXQuDQo+IA0KPj4gSW4gc29tZSBjb3Bpb3VzIGZyZWUg
dGltZSwgSSB0aGluayB3ZSBvdWdodCB0byBwcm92aWRlIGENCj4+IG1pbm9ybHktcGFyYXZp
cnQgRlJFRCB0byBQViBndWVzdHMgYmVjYXVzZSB0aGVyZSBhcmUgc3RpbGwgc29tZQ0KPj4g
aW1wcm92ZW1lbnRzIGF2YWlsYWJsZSBhcyBsb3cgaGFuZ2luZyBmcnVpdC4NCj4+DQo+PiBN
eSBwbGFuIHdhcyB0byBoYXZlIGEgUFYgaHlwZXJ2aXNvciBsZWFmIGFkdmVydGlzaW5nIHBh
cmF2aXJ0IHZlcnNpb25zDQo+PiBvZiBoYXJkd2FyZSBmZWF0dXJlcywgc28gYSBndWVzdCBj
b3VsZCBzZWUgIkkgZG9uJ3QgaGF2ZSBhcmNoaXRlY3R1cmFsDQo+PiBGUkVELCBidXQgSSBk
byBoYXZlIHBhcmF2aXJ0LUZSRUQgd2hpY2ggaXMgYXMgc2ltaWxhciBhcyB3ZSBjYW4NCj4+
IHJlYXNvbmFibHkgbWFrZSBpdCIuwqAgVGhlIHNhbWUgZ29lcyBmb3IgYSB3aG9sZSBidW5j
aCBvZiBvdGhlciBmZWF0dXJlcy4NCj4gDQo+ICpHUk9BTioNCj4gDQo+IEkgdG9sZCB5b3Ug
YmVmb3JlIHRoYXQgd2Ugd2FudCBsZXNzIHBhcmF2aXJ0IG5vbnNlbnNlIGFuZCBub3QgbW9y
ZS4NCg0KSSBhZ3JlZS4NCg0KV2Ugd2lsbCBzdGlsbCBoYXZlIHRvIHN1cHBvcnQgdGhlIFBW
IHN0dWZmIGZvciBub24tRlJFRCBoeXBlcnZpc29ycyBldmVuIHdpdGgNCnB2LUZSRUQgYmVp
bmcgYXZhaWxhYmxlIG9uIG5ldyBYZW4uIFNvIGFkZGluZyBwdi1GUkVEIHdvdWxkIGp1c3Qg
YWRkIG1vcmUgUFYNCmludGVyZmFjZXMgd2l0aG91dCB0aGUgYWJpbGl0eSB0byByZW1vdmUg
b2xkIHN0dWZmLg0KDQoNCkp1ZXJnZW4NCg0K
--------------FKBb0HfIKq5W00Hh1Q7xjNPA
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------FKBb0HfIKq5W00Hh1Q7xjNPA--

--------------FxBkvOSsZsO036jILYJ06LWo--

--------------0DJc54CgcwM0KkGine9Y86ek
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUD6z8FAwAAAAAACgkQsN6d1ii/Ey9P
4gf/aBMi3KQPER3qnsza7bJcPa30yR8O4Wf7AA5RDD14BujhuYLFNBNKD79hG/g36bQXKFhJrB+M
Q4VMVlTDJUjk1kiCriaIUsP60e9f7a7jrnqjVyts6qJs4ykLfNbY9RALxJ29UTIS77HB/524y9U/
LLFQbDMI9/wMcx7x8IttNv8vTwHIaFdAqL8ThInV47Q6U2w1fJ+EBEQbGQkmKR7yE7R5HuXsLPgm
xNofJdtZFYteoGDwQ2wBdk1EwcrSVahKJ5AED175u96yZkl6+OclIFvUdT3CViu+8U9BzxwmcZbE
NUFYACRcGmot95W4xgjmdbd5HpZ8yqLhc4jLfVOm7A==
=E+ek
-----END PGP SIGNATURE-----

--------------0DJc54CgcwM0KkGine9Y86ek--


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 05:32:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 05:32:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602857.939642 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh1R1-0000bR-VD; Fri, 15 Sep 2023 05:32:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602857.939642; Fri, 15 Sep 2023 05:32:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh1R1-0000bK-SU; Fri, 15 Sep 2023 05:32:07 +0000
Received: by outflank-mailman (input) for mailman id 602857;
 Fri, 15 Sep 2023 05:32:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=X3kr=E7=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qh1R1-0000bE-4T
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 05:32:07 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3390bfbd-5389-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 07:32:03 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 7416B1F38C;
 Fri, 15 Sep 2023 05:32:03 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id D489513479;
 Fri, 15 Sep 2023 05:32:02 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id AzSFMlLsA2WNZQAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 15 Sep 2023 05:32:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3390bfbd-5389-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1694755923; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=JHk09nPjxFZrJgb8m7unTMF/azz4TxdRPAGo/tOeBHk=;
	b=RdcOfw73eNUBMj5nBCcvzq91XSANz6JckowZgDJVrroVdxIYUkUoyr353mcuRRIfxjCc16
	nLDy1Iy4gedYedRcWEn1Hl7i9RzsuGkF5Yb+xYTRKe/89zEvBuHegMziQjQLf6T5u5hRl+
	fhdUPLuCZRgshltifM6T7TQtfALszJE=
Message-ID: <59a556d0-b962-4b63-9127-ba799db3b0ed@suse.com>
Date: Fri, 15 Sep 2023 07:32:02 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-US
To: andrew.cooper3@citrix.com, "H. Peter Anvin" <hpa@zytor.com>,
 Thomas Gleixner <tglx@linutronix.de>, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, luto@kernel.org, pbonzini@redhat.com, seanjc@google.com,
 peterz@infradead.org, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
 <0e7d37db-e1af-ac40-6eca-5565d1bebcde@zytor.com>
 <6575702e-fea5-61b2-dd61-7b556a8603e8@citrix.com>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <6575702e-fea5-61b2-dd61-7b556a8603e8@citrix.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------hZDkENmzAqDrTPHAvl4iVr8s"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------hZDkENmzAqDrTPHAvl4iVr8s
Content-Type: multipart/mixed; boundary="------------G5kOFu6QJX70g00rNoeOWpMy";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: andrew.cooper3@citrix.com, "H. Peter Anvin" <hpa@zytor.com>,
 Thomas Gleixner <tglx@linutronix.de>, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, luto@kernel.org, pbonzini@redhat.com, seanjc@google.com,
 peterz@infradead.org, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 jiangshanlai@gmail.com
Message-ID: <59a556d0-b962-4b63-9127-ba799db3b0ed@suse.com>
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
 <0e7d37db-e1af-ac40-6eca-5565d1bebcde@zytor.com>
 <6575702e-fea5-61b2-dd61-7b556a8603e8@citrix.com>
In-Reply-To: <6575702e-fea5-61b2-dd61-7b556a8603e8@citrix.com>

--------------G5kOFu6QJX70g00rNoeOWpMy
Content-Type: multipart/mixed; boundary="------------uZgzuBBDELwhBg4RgPtVNbpB"

--------------uZgzuBBDELwhBg4RgPtVNbpB
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTUuMDkuMjMgMDM6MTYsIGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20gd3JvdGU6DQo+
IE9uIDE1LzA5LzIwMjMgMjowMSBhbSwgSC4gUGV0ZXIgQW52aW4gd3JvdGU6DQo+PiBUaGUg
d2hvbGUgYml0IHdpdGggYWx0ZXJuYXRpdmVzIGFuZCBwdm9wcyBiZWluZyBzZXBhcmF0ZSBp
cyBhIG1ham9yDQo+PiBtYWludGFpbmFiaWxpdHkgcHJvYmxlbSwgYW5kIGhvbmVzdGx5IGl0
IG5ldmVyIG1hZGUgYW55IHNlbnNlIGluIHRoZQ0KPj4gZmlyc3QgcGxhY2UuIE5ldmVyIGhh
dmUgdHdvIG1lY2hhbmlzbXMgdG8gZG8gb25lIGpvYjsgaXQgbWFrZXMgaXQNCj4+IGhhcmRl
ciB0byBncm9rIHRoZWlyIGludGVyYWN0aW9ucy4NCj4gDQo+IFRoaXMgYml0IGlzIGVhc3ku
DQo+IA0KPiBKdWVyZ2VuIGhhcyBhbHJlYWR5IGRvbmUgdGhlIHdvcmsgdG8gZGVsZXRlIG9u
ZSBvZiB0aGVzZSB0d28gcGF0Y2hpbmcNCj4gbWVjaGFuaXNtcyBhbmQgcmVwbGFjZSBpdCB3
aXRoIHRoZSBvdGhlci4NCj4gDQo+IGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2xrbWwvYTMy
ZTIxMWYtNGFkZC00ZmIyLTllNWEtNDgwYWU5YjliYmYyQHN1c2UuY29tLw0KPiANCj4gVW5m
b3J0dW5hdGVseSwgaXQncyBvbmx5IGNvbGxlY3RpbmcgcGluZ3MgYW5kIHR1bWJsZXdlZWRz
Lg0KDQpJbmRlZWQuDQoNClVuZm9ydHVuYXRlbHkgdGhlcmUgaXMgcHJvYmFibHkgc29tZSBv
Ymp0b29sIHN1cHBvcnQgbmVlZGVkIGZvciB0aGF0LCB3aGljaCBJJ20NCm5vdCBzdXJlIGhv
dyB0byBpbXBsZW1lbnQuDQoNCg0KSnVlcmdlbg0K
--------------uZgzuBBDELwhBg4RgPtVNbpB
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------uZgzuBBDELwhBg4RgPtVNbpB--

--------------G5kOFu6QJX70g00rNoeOWpMy--

--------------hZDkENmzAqDrTPHAvl4iVr8s
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUD7FIFAwAAAAAACgkQsN6d1ii/Ey+M
9Af9HJCpFeU8EHkw53/InfDtLEXQPqGNDIYig8DyWwhnNdhICFI88NOIVSjLS9SyjJPGwf0LlHk6
IKiP/qXdFyhv6iqTp1tlkIylssrvcYsugH3zLG8k4osgsLoxtjh06Yuh0XIIuLiNtNUihmBWxTHU
608bvQO34to6Pi+dcsJ2B8R9Mgpuk4+9fPFTKjf4T4qziA+8OJWVIt/hwPDpxygf9nU8eseyQtQK
7s3ODrbpUx5pKDc33RPhAHYunKbX97HmiX6DnVTHUZIcGjinZi+7ht2hqSFUjLOf7BlUA9HLVJA0
dry2jvk6MkfXh5Aw2Q3LFC8p4DNlQZpKtD5ODHsr6A==
=PDSQ
-----END PGP SIGNATURE-----

--------------hZDkENmzAqDrTPHAvl4iVr8s--


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 05:47:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 05:47:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602861.939652 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh1fn-0003v2-72; Fri, 15 Sep 2023 05:47:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602861.939652; Fri, 15 Sep 2023 05:47:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh1fn-0003uv-3z; Fri, 15 Sep 2023 05:47:23 +0000
Received: by outflank-mailman (input) for mailman id 602861;
 Fri, 15 Sep 2023 05:47:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VXjI=E7=kernel.org=mhiramat@srs-se1.protection.inumbo.net>)
 id 1qh1fl-0003up-EX
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 05:47:21 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5512ca73-538b-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 07:47:19 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id DD35561F11;
 Fri, 15 Sep 2023 05:47:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id DDE0BC433B7;
 Fri, 15 Sep 2023 05:47:12 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5512ca73-538b-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1694756837;
	bh=RyPR2NkOFcffhMr5xddvC27sEYDMrJaqGqZTUScQkPA=;
	h=Date:From:To:Cc:Subject:In-Reply-To:References:From;
	b=PcvjwDYx9G5f5Q1qxmIfIx5D0ne1wz4esF+c5nMP3hE41d6nNonhJxXX4/PUPMnzt
	 6IFVF+L5cUwGSpdXGC9UnPrlhotCcgfse/rpTnTcuP+ptih8GLpBYauZqloFgw4mKm
	 1BJ4h9wpYsZDVo/JkDqFS86S8QepQGmMcduIrPgKI9p+ayQKVK5++KZEbJZg+++hRi
	 APvnDLOLgHFa9QzULX+SIhe2v+5k6OYtaDDMPz3MGCP43ZqWapGyedZSR/31ZKtcxY
	 zc2AZBJQYwAAfcCSy28d4Vinr1VmiJGRwpjQCASK4NeItrige3SaZGkefwxAZMm0JB
	 fOjUjO2NE9U5Q==
Date: Fri, 15 Sep 2023 14:47:10 +0900
From: Masami Hiramatsu (Google) <mhiramat@kernel.org>
To: Xin Li <xin3.li@intel.com>
Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org, tglx@linutronix.de,
 mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, hpa@zytor.com, luto@kernel.org, pbonzini@redhat.com,
 seanjc@google.com, peterz@infradead.org, jgross@suse.com,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, andrew.cooper3@citrix.com,
 jiangshanlai@gmail.com
Subject: Re: [PATCH v10 02/38] x86/opcode: Add the WRMSRNS instruction to
 the x86 opcode map
Message-Id: <20230915144710.7c2b94e93db16fd217acaf9f@kernel.org>
In-Reply-To: <20230914044805.301390-3-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
	<20230914044805.301390-3-xin3.li@intel.com>
X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; x86_64-pc-linux-gnu)
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

On Wed, 13 Sep 2023 21:47:29 -0700
Xin Li <xin3.li@intel.com> wrote:

> Add the opcode used by WRMSRNS, which is the non-serializing version of
> WRMSR and may replace it to improve performance, to the x86 opcode map.
> 
> Tested-by: Shan Kang <shan.kang@intel.com>
> Signed-off-by: Xin Li <xin3.li@intel.com>

This looks good to me.

Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>

Thanks,

> ---
>  arch/x86/lib/x86-opcode-map.txt       | 2 +-
>  tools/arch/x86/lib/x86-opcode-map.txt | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/x86/lib/x86-opcode-map.txt b/arch/x86/lib/x86-opcode-map.txt
> index 5168ee0360b2..1efe1d9bf5ce 100644
> --- a/arch/x86/lib/x86-opcode-map.txt
> +++ b/arch/x86/lib/x86-opcode-map.txt
> @@ -1051,7 +1051,7 @@ GrpTable: Grp6
>  EndTable
>  
>  GrpTable: Grp7
> -0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B)
> +0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B) | WRMSRNS (110),(11B)
>  1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B)
>  2: LGDT Ms | XGETBV (000),(11B) | XSETBV (001),(11B) | VMFUNC (100),(11B) | XEND (101)(11B) | XTEST (110)(11B) | ENCLU (111),(11B)
>  3: LIDT Ms
> diff --git a/tools/arch/x86/lib/x86-opcode-map.txt b/tools/arch/x86/lib/x86-opcode-map.txt
> index 5168ee0360b2..1efe1d9bf5ce 100644
> --- a/tools/arch/x86/lib/x86-opcode-map.txt
> +++ b/tools/arch/x86/lib/x86-opcode-map.txt
> @@ -1051,7 +1051,7 @@ GrpTable: Grp6
>  EndTable
>  
>  GrpTable: Grp7
> -0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B)
> +0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B) | WRMSRNS (110),(11B)
>  1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B)
>  2: LGDT Ms | XGETBV (000),(11B) | XSETBV (001),(11B) | VMFUNC (100),(11B) | XEND (101)(11B) | XTEST (110)(11B) | ENCLU (111),(11B)
>  3: LIDT Ms
> -- 
> 2.34.1
> 


-- 
Masami Hiramatsu (Google) <mhiramat@kernel.org>


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 05:56:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 05:56:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602868.939662 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh1oC-0005z1-0L; Fri, 15 Sep 2023 05:56:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602868.939662; Fri, 15 Sep 2023 05:56:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh1oB-0005yu-TX; Fri, 15 Sep 2023 05:56:03 +0000
Received: by outflank-mailman (input) for mailman id 602868;
 Fri, 15 Sep 2023 05:56:02 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qh1oA-0005yi-9I; Fri, 15 Sep 2023 05:56:02 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qh1oA-00018C-7C; Fri, 15 Sep 2023 05:56:02 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qh1o9-0004Mg-N7; Fri, 15 Sep 2023 05:56:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qh1o9-0007gh-MD; Fri, 15 Sep 2023 05:56:01 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=0a432snHAo1Sd7WeXHRsgkL60QQMF2c6xNFyVjJiaKg=; b=ElkaAWW6lbiQK7LOEnbr7S91/0
	09iiYXS2CyQE9ObalSv7F00J0AizShZXcW4K7cBF0dmqRTfN5Y09PHviCeDVpGJPMfzviUrROIg3G
	yBICqy88aLix+1srKvMnt+93QIBjLZqfMqQYo1XpHDbkAPevNllphPTNG6yhDMXMoY8k=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183006-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183006: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b5a601093d1f9d5e96eb74b692f1b6252a2598a2
X-Osstest-Versions-That:
    xen=6aa25c32180ab59081c73bae4c568367d9133a1f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 15 Sep 2023 05:56:01 +0000

flight 183006 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183006/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  b5a601093d1f9d5e96eb74b692f1b6252a2598a2
baseline version:
 xen                  6aa25c32180ab59081c73bae4c568367d9133a1f

Last test of basis   182991  2023-09-13 08:00:30 Z    1 days
Testing same since   183006  2023-09-15 02:00:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Stefano Stabellini <stefano.stabellini@amd.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   6aa25c3218..b5a601093d  b5a601093d1f9d5e96eb74b692f1b6252a2598a2 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 06:05:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 06:05:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602875.939672 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh1xb-0000Ft-UA; Fri, 15 Sep 2023 06:05:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602875.939672; Fri, 15 Sep 2023 06:05:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh1xb-0000Fm-Qt; Fri, 15 Sep 2023 06:05:47 +0000
Received: by outflank-mailman (input) for mailman id 602875;
 Fri, 15 Sep 2023 06:05:46 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qh1xa-0000FW-St; Fri, 15 Sep 2023 06:05:46 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qh1xa-0001Ni-PT; Fri, 15 Sep 2023 06:05:46 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qh1xa-0005Eb-Bq; Fri, 15 Sep 2023 06:05:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qh1xa-0005GC-BK; Fri, 15 Sep 2023 06:05:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=KIxSSrYMg1L5DQWTWLGMVMmES2T92QWTgVxO499CQzU=; b=OYDI+rMg/HqdD0k2897T8b37Fh
	5LX7RLC8v9eNYUac4S8r5aOjnSxFbje8EV/DPPWJH/yp2UDEpnzzPHJ6aO++1pPb16V4DbihxMVJ2
	RxXumxXXm2SCnBSpxCzpRra6PP8yY61FG/dUifIIOghND771JUMqvQ+sOWnWqDtnbmhU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183004-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183004: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=9fdfb15a3dbf818e06be514f4abbfc071004cbe7
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 15 Sep 2023 06:05:46 +0000

flight 183004 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183004/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                9fdfb15a3dbf818e06be514f4abbfc071004cbe7
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   18 days
Failing since        182544  2023-08-28 20:42:13 Z   17 days   32 attempts
Testing same since   183004  2023-09-14 22:43:17 Z    0 days    1 attempts

------------------------------------------------------------
2287 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 278620 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 06:26:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 06:26:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602885.939682 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh2Hv-0005l5-OE; Fri, 15 Sep 2023 06:26:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602885.939682; Fri, 15 Sep 2023 06:26:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh2Hv-0005jq-Ju; Fri, 15 Sep 2023 06:26:47 +0000
Received: by outflank-mailman (input) for mailman id 602885;
 Fri, 15 Sep 2023 06:26:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0Pea=E7=arm.com=Jiamei.Xie@srs-se1.protection.inumbo.net>)
 id 1qh2Hu-0005g4-LV
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 06:26:46 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20623.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::623])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d66b872f-5390-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 08:26:43 +0200 (CEST)
Received: from DU2P250CA0018.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:231::23)
 by AS2PR08MB8832.eurprd08.prod.outlook.com (2603:10a6:20b:5e6::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Fri, 15 Sep
 2023 06:26:39 +0000
Received: from DBAEUR03FT003.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:231:cafe::6b) by DU2P250CA0018.outlook.office365.com
 (2603:10a6:10:231::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 06:26:39 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT003.mail.protection.outlook.com (100.127.142.89) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.21 via Frontend Transport; Fri, 15 Sep 2023 06:26:38 +0000
Received: ("Tessian outbound b5a0f4347031:v175");
 Fri, 15 Sep 2023 06:26:38 +0000
Received: from 347987f905f7.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 53FEDB52-BA9B-4093-BD2E-22C28645FD83.1; 
 Fri, 15 Sep 2023 05:16:00 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 347987f905f7.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 15 Sep 2023 05:16:00 +0000
Received: from AS8PR08MB7696.eurprd08.prod.outlook.com (2603:10a6:20b:523::11)
 by DBBPR08MB6043.eurprd08.prod.outlook.com (2603:10a6:10:20b::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Fri, 15 Sep
 2023 05:15:58 +0000
Received: from AS8PR08MB7696.eurprd08.prod.outlook.com
 ([fe80::af58:df20:64e1:4bf2]) by AS8PR08MB7696.eurprd08.prod.outlook.com
 ([fe80::af58:df20:64e1:4bf2%7]) with mapi id 15.20.6768.029; Fri, 15 Sep 2023
 05:15:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d66b872f-5390-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AWSRnxr9yiJ6t4B82SJa1M0RPZ8q+bZWz0u+ddI1i6w=;
 b=FYTF7+XRT1iQWBxivs8GmhxH2vFtUsb1dvEOydrqxPSTwYT61nibNxuDkTLv48NsFf/WarU8YnTkIwji4z3VUlZnIjSq3oNlL6fDWSz4Hdt1L/mDY6z1UsE/kwthD33s8IWFhi7Ng3vdZmM8dfAeneHq6pCBwz9EZykAAYDFQgo=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 10e96dd523e2f3d6
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Rzojwleyb9GB5ZsnLfK7ZeySuenCBw6SI2dZTmP7fq8OGT1OaB9pZWfj2a23QkV8wKvXRDMH6xTTJQvS38URFf8Uo72OaVW9XAwIqW6CzosW30F/LbQlWIKbFEmL+MZxEvHah8BVrkcAadR62ECI8XQFP1NEtE9DtS7/tDJAXbDMKupnIGk0OvZty1zIuS6dqAguKbuMtguaE/Tsqhe0SQUOoTuGnexJkXKRISR0R3i6s/NCDs0NBYuubZqx/zhzfav+fAgowFlJT6fNOQUoSaQpLIr/6QvJk9PNB68ys3edGLDayZzRHx1vJctQtB/QxIq4tDS+TlBfEQMjWx9E2w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AWSRnxr9yiJ6t4B82SJa1M0RPZ8q+bZWz0u+ddI1i6w=;
 b=IhySR+Dwek7VtKKZ5Mk01a9VEQHhQkhEhCPje+Gm6dNmbStGjPxxp9+8SBo2YEREZp2ksMk2kpn2TI9yAgGViR9HYs2kOCfzW4DnHSZO+hv2ZFO1tTd5yZmUey0X8Rr4bw1dCu6MShZMz4THoa9JcPvD8YB/0uwjX8AwwCRJE7MR5CVKFseKKaE9ip11ynPfx1bJo+/uVzKz3EetOf3GZwG99/RKd4KE5csPO/KcllyZSVT0HCT8+R4ZU1N2wxO4aBFwSjxkGoSRkToVY0iOBgLKaitfNXT4km3y/jPcg7OJL9SN6kD4lcRyXpRz1nlOW/T7Jqlz0qmzS8goMKX+kQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AWSRnxr9yiJ6t4B82SJa1M0RPZ8q+bZWz0u+ddI1i6w=;
 b=FYTF7+XRT1iQWBxivs8GmhxH2vFtUsb1dvEOydrqxPSTwYT61nibNxuDkTLv48NsFf/WarU8YnTkIwji4z3VUlZnIjSq3oNlL6fDWSz4Hdt1L/mDY6z1UsE/kwthD33s8IWFhi7Ng3vdZmM8dfAeneHq6pCBwz9EZykAAYDFQgo=
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
Message-ID: <db6ea8cc-f9d9-d8cf-39ca-89b1aa364117@arm.com>
Date: Fri, 15 Sep 2023 13:15:50 +0800
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.13.0
Subject: Re: [PATCH v1 16/29] xen/asm-generic: introduce stub header
 flushtlb.h
Content-Language: en-US
To: Oleksii Kurochko <oleksii.kurochko@gmail.com>,
 xen-devel@lists.xenproject.org
Cc: jiamei.xie@arm.com
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <8f5e2ac850eced2153d68effcb36aca1ed065aee.1694702259.git.oleksii.kurochko@gmail.com>
From: Jiamei Xie <jiamei.xie@arm.com>
In-Reply-To: <8f5e2ac850eced2153d68effcb36aca1ed065aee.1694702259.git.oleksii.kurochko@gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: SG2PR04CA0195.apcprd04.prod.outlook.com
 (2603:1096:4:14::33) To AS8PR08MB7696.eurprd08.prod.outlook.com
 (2603:10a6:20b:523::11)
MIME-Version: 1.0
X-MS-TrafficTypeDiagnostic:
	AS8PR08MB7696:EE_|DBBPR08MB6043:EE_|DBAEUR03FT003:EE_|AS2PR08MB8832:EE_
X-MS-Office365-Filtering-Correlation-Id: 38e9e05a-5d9f-404b-3332-08dbb5b4b7ca
x-checkrecipientrouted: true
NoDisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 FzzybJZSHFuxuyivaHYMskDtGzvK6OFLtgNUBt/dNOTju0ydsRbS7eqi9Y9DUKjbJhFAgPwTUqLhNs2YWmMkHHyWHf2LFam94+iJdxGXfDlsVDoyLsSVPSWlw71OUYI+0Tw/pVkffZV5X+9pCLr7oYkBf7a0nLUtgRhVNuKw6e99iVPnvVowILbIaGzMpOGBjqyWldxVGPTR0n9TEX6gNvIJp65PtaSGJj7QxB0oXq5k2/UlTArX7dNHxUfCMsKEuxC0SYidojCRo/jTJE6MCwX8DMRjMeJduP3G7ZIKvd4yN53Lku8w0uU/DAlY7ob9bH6+YxknRyE0VmkiwL2LrXIKcBjMFJUpbgDi88dHmmLRt7cGOmbEBOgY5JtJDXctq48P7LqRcHSiBnU+eV2ZpxF2BKRwH1HbaJeQK5F6fwo50ik9uVns+TefVX9TcSdDPSog4eGre6Fu79edIli64tPvGtHzUhwBnpBBMOcjxn3j3fV54mnsw0BooJ1u/a91SBHDFPKpiTV+wPF3cDTkkGNE449PXx/XcBzcn/S8ZM892wwHUz+kditrrUUBapSLNzHLCqKhoeV0m6QmWrBOFDsZDjcawfLomN1w7/ZsjKu4vSjk7A9rVlwCN5XeGa8sLpEq04rsXei72wpzI9f4y/Jhuz7h24PzlLyGilc3IP6N9cPgY/kLNDVS+xoPrapCNMLiuRPZQQNgzR8KwmgRPA==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7696.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(396003)(366004)(346002)(136003)(1800799009)(451199024)(186009)(31686004)(36756003)(2616005)(66946007)(66476007)(66556008)(6512007)(316002)(2906002)(86362001)(31696002)(38100700002)(44832011)(8676002)(4326008)(8936002)(478600001)(26005)(41300700001)(6666004)(5660300002)(6506007)(6486002)(53546011)(41533002)(21314003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6043
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT003.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	853ebd88-bb53-4d5f-e909-08dbb5aad830
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	LM/hUlN30G7Sk3IQO3+wjE/58gBeNjMKOXmdKyc5hsRtHIv0OTpzSiy20o1q5W2wY0dKFsjfFcc3tuTQj4ngec4mnpjDaomUFvsmvraRA44qPtBdlN7BgTLXDj4+mQoI71TJNCIAW0j2L2o2GTDwRV0qCKEZAcR0/zhXR7SV8wrtFmAnkWQxICXqy6/7rQKNW83Oqvx2sABVZt8YCOj8TaI5BxXQApYlMRoXAmQRpNPfFs6LqIxkSifd/+Td1ub34T9LjK+Cx4CnIndlgcguHYizYf7mt3slBTa8VL81seVFMBakXI6ud0Sv62QLHPUDVyqyJ4YMHS1ZOVa03sIXRXpEE9swzsKSWvGv8CbJYB6N4s7d9uUiVZIM7I9wzyyGYsoOCelibiFEd3q88HZUbX5oYY/hG5MIoSkIFJtYc2xCf/cLzgcgi2njUFqg71H4Eyn5sMts6HFThbwMWzqg3nCHUb/zEBQ5rOlcrj4zMbTXD5EUijAolkst+IbnAMxJxvs2Pg7Un9uPneTYJKT1UmTVSQWzVaGq4lcT9ckScirRPekjau/6oqzHAblktb0nbEEBjPyJxdGHJOwxt9eIorUVsIbHozkeqzdU3rpBHmZd0DnZ8mtkfLULV6Rf7nIGzS9EaSHRLfy9nLbhxpKeuNoqt1XbBK44g59NicqGVN26m8UN5yVTidcQtBSb6Jy10ovHNZ5il1T3D2YqHduK0mFhqmEC7hcRbtmhZbuRl9NZx4HFrVOeiDVmNsZy4Vzp1UDIQ6UzGFTathB/0ivFdKby5kvjnBwKHEgAcs4N9BVSZ2GfsYYarpzP0azXNTI5A8HpzQWWr1SsRr5azIk4vg==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(396003)(136003)(346002)(39860400002)(1800799009)(451199024)(186009)(82310400011)(40470700004)(36840700001)(46966006)(478600001)(31686004)(8676002)(336012)(2906002)(40460700003)(86362001)(36756003)(44832011)(31696002)(356005)(41300700001)(36860700001)(81166007)(82740400003)(5660300002)(53546011)(4326008)(47076005)(8936002)(70206006)(6512007)(6666004)(26005)(6506007)(6486002)(316002)(70586007)(2616005)(40480700001)(41533002)(21314003)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 06:26:38.5123
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 38e9e05a-5d9f-404b-3332-08dbb5b4b7ca
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT003.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8832

Hi Oleksii

On 2023/9/14 22:56, Oleksii Kurochko wrote:
> The patch introduces header stub necessry for full Xen build.
>
> Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
> ---
>   xen/include/asm-generic/flushtlb.h | 42 ++++++++++++++++++++++++++++++
>   1 file changed, 42 insertions(+)
>   create mode 100644 xen/include/asm-generic/flushtlb.h
>
> diff --git a/xen/include/asm-generic/flushtlb.h b/xen/include/asm-generic/flushtlb.h
> new file mode 100644
> index 0000000000..79e4773179
> --- /dev/null
> +++ b/xen/include/asm-generic/flushtlb.h
> @@ -0,0 +1,42 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
> +#ifndef __ASM_GENERIC_FLUSHTLB_H__
> +#define __ASM_GENERIC_FLUSHTLB_H__
> +
> +#include <xen/cpumask.h>
> +
> +/*
> + * Filter the given set of CPUs, removing those that definitely flushed their
> + * TLB since @page_timestamp.
> + */
> +/* XXX lazy implementation just doesn't clear anything.... */
> +static inline void tlbflush_filter(cpumask_t *mask, uint32_t page_timestamp) {}
> +
> +#define tlbflush_current_time() (0)
> +
> +static inline void page_set_tlbflush_timestamp(struct page_info *page)
> +{
> +    BUG();
> +}
> +
> +/* Flush specified CPUs' TLBs */
> +void arch_flush_tlb_mask(const cpumask_t *mask);
> +
> +#endif /* __ASM_GENERIC_FLUSHTLB_H__ */
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
> +
> +
It's duplicated.
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: BSD
> + * c-basic-offset: 4
> + * indent-tabs-mode: nil
> + * End:
> + */


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 06:51:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 06:51:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602891.939692 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh2fZ-0003dh-JN; Fri, 15 Sep 2023 06:51:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602891.939692; Fri, 15 Sep 2023 06:51:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh2fZ-0003da-Gf; Fri, 15 Sep 2023 06:51:13 +0000
Received: by outflank-mailman (input) for mailman id 602891;
 Fri, 15 Sep 2023 06:51:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dO0Y=E7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qh2fY-0003dU-7c
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 06:51:12 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062e.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3fd5c9b1-5394-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 08:51:08 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7493.eurprd04.prod.outlook.com (2603:10a6:20b:293::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Fri, 15 Sep
 2023 06:50:56 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Fri, 15 Sep 2023
 06:50:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3fd5c9b1-5394-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=j7IRlLusZuCI9WYAOdBjNM1oPfgDlagg7R/fYjUVbBfniBPb8E7NLE67jMIEfZxZI3m9xy4J5LjtkALDIoAGdjIYoYJm+58U2fsvK0NEz4HJI3QD/wt0bG6b6cyVz/SWuss1k5ndiA6FoANI3vYp4HmvVDdCkgQ5L+azxZXJKPkWW0Kgqax3tN0Qj+JnP8VCFjvOLCoO4vGmUstipKPhjiYMDLVO2e8m4wtGAu7RQN8oF3IS1X6ClZcuFaUb8fGzTQM1aC1hphk1SVcIDp+nchhywtWj2ih2DK119BCmOcNOwpGzYJxLs6iHakmrDO2Bd49qMSinH4XW9L/dYDMGYg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=uKTudIb3/HgKsfEuMgzNi4MCawyeX3xweHD+dxscoRo=;
 b=bvcAQKDE5RxDyx2vyC4wbegjgs9pybUWPBd16gSsynde42YVD+fE/qJkqS3gcPo/qOUvHgIYC2hBtH93KW9rQvxgaCeNXG7mQTMlHHmvfMgEVjnxcaNbYriGkkyknw9JTKH/pelY9WSKsR4twPoAy1gJrVglSbaqJDYIVkHGHsHhBTyizEOsCx1RFKAvdp015HzPPXMIu8HWmg3J9FWmalybPRXBQKmNSPhXNzUIOo+XCIQL4rnmft5MEcw6AHFZTvC3PdVThr/8OTTzs9ej2Ipz23nruwK4k9SqEuclQPrrxeMARsBLIaVNAFo5xjo0YgiNo5tVLkKJC27R6TAM0w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uKTudIb3/HgKsfEuMgzNi4MCawyeX3xweHD+dxscoRo=;
 b=bahh3ggojCfsI7lWSIBiRoCL1Vm1KcKavGsQ3IP8+msREb4RjwrAmv0aG7p5u4R+6UEcjFhj/b4Dl8cqffmAJLqIblZYWz1cP66LP8kMSH1frCWu5jTaLZ8jwKOAk08QBdu7BSPftIcC8kIQjp7m895b+D72hjPOGKoFGp6wCg98q7npweWcbh/2fY8SIiLabAPqm7If+bViBlBlx4Ilhy1Ld6X1+PAd1KmWOHLymt0DvMEp1PtXSDoCxoQDZHxzyl+fJFUBdVwgGUQXnnA4o+uwRZ5A/qQ0lITnPHiFhxr+Uo3Lj698v8WdYPHoUyFHert+i1qm5U6IlV7ky+ri3A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <508b6085-50ce-4f1d-1897-a2aea6c3f9d3@suse.com>
Date: Fri, 15 Sep 2023 08:50:52 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v5 2/5] xen/ppc: Implement bitops.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694543103.git.sanastasio@raptorengineering.com>
 <06892692342540b6dc1af4d530fe3c2c25cf4a2e.1694543103.git.sanastasio@raptorengineering.com>
 <60d5d841-29da-519b-057c-18c5796c8f1e@suse.com>
 <fa66a2b5-1364-48cf-dfb0-cc6c2de48bbd@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <fa66a2b5-1364-48cf-dfb0-cc6c2de48bbd@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0061.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ce::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB7493:EE_
X-MS-Office365-Filtering-Correlation-Id: c67e0967-9f8c-4685-58f4-08dbb5b81c69
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Yh67OA+FZOiFWaqQqlm7BQB7EjuBGJyPnU8pL7meNkyI11/JyzgDrOwWjY3uWiOML6jETls38lVKAiIjp2DAUDUTChe4vbH+Cu8CDroA8koK6LA5fqwy2szbQ3cLJ5IsO9Rfft6q21oV0bO4ynWISsodDtzD3RvoBhTQX92ilMaEUYolZmTE5inlZJCjsokoOSKrHaQuoyzHP08ciB8OlS8LCrgiB/aryu8sXmHtExC46zv6sJOmewjC4Cl/iRCM+vqhC20Vnct7/NWeB6/45grqu/09dk1iExwWK4GCM9jMGBZYUua8xunUNV70E43PKClekW/TKN4Ze/FyBuf7UtRwdI1z8eTg4/64iAVOmCeJLB49HEXO+spqYWP7EjuofonGhtBgDTjimm6Ib+N4LKikHMic/drxIIUltzXR2ULCoxBTHu4saT9OI3r4B9jPdrbsLXfeuO1A0+fwRBx2harYwbRQLDl3Rc+D4teErkuVmh9YICiNWCQYQHWSCwCajV0f5XL2s/9kTbGdxAA1oG4xTtMIlP3RCmHzkhhfH2V6rq7GdjZjrHbIIg4UySyiqTqqxskw0ZwEDsCKAaTp08xAAKRW+lRCfvYd7B0cPHsWG+ktOEP/IB1MBGPXZGlvr53k9lgm04o8jKj6um4BqA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(376002)(366004)(346002)(396003)(451199024)(1800799009)(186009)(53546011)(316002)(66476007)(66946007)(66556008)(6916009)(41300700001)(478600001)(2906002)(6512007)(36756003)(31686004)(26005)(86362001)(31696002)(2616005)(38100700002)(8676002)(4326008)(8936002)(5660300002)(6486002)(6506007)(6666004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bG44cVladTU1R3E0WHlqNDNteWhJV2RFYzZ6NGRDZ0tWM0dubWpoTC9KN2Np?=
 =?utf-8?B?WFNiQklndXZDK1pJdldURTNoKzUzcnI5T3lNL09uSGcrZFRzREt1QTlsTytO?=
 =?utf-8?B?TDYvZjB6c1Nncm42ZTRsT1JyZDJNVEVPYklWZjY2aW5yaEsrQkYxK0ozQVVQ?=
 =?utf-8?B?M3hHeTZMOUxNSTFhUlQ3Y2pTMGJtQ0QxN3RCUkwyb2NCOVRoelVObjREWVNL?=
 =?utf-8?B?a3VqZXdHWEpEWll4a09QaWs1cUJZa0szdG51dldOTGhJa2ViNjRBRVlveFZM?=
 =?utf-8?B?ZjBVNnlpRWJZNktCRHI3WGVXMi9PWHNBY2VhSlI0M3E4anNRY284dDNiZFQ5?=
 =?utf-8?B?em1NRTQvSldXUnJvejNhUzRIa29xZzZaTkJhYlJxYm9JR3NWVzg1Mk40Z3Jj?=
 =?utf-8?B?THIwbzNjejJaTVZESkhIb1VvWlpkZ0pxMGRXWjBmYWk0b3JXVnp3REtVNWxt?=
 =?utf-8?B?N2VBdEhFbDZUODR1RFlQOHhxV1pvdTJOZ1UzUzhhbVRjN2VWV0FRb1hrSTFm?=
 =?utf-8?B?amMwd1Z3cHFVcllTNWs4R3NscmpBdW4yL3Z2dGJPTUUyelpxQmpIeUFIRWxi?=
 =?utf-8?B?QW5DY0lUdnZvVW5idjR1NzNGY0tsRXRUODZvUWUyUFZrZmtuZ1VHTjFmdGUw?=
 =?utf-8?B?VzdtVVZmUHF4UWdpZmtpWGJjYnlVWHhHU2liZW9pMGx6UjFCQVF2enFVS2xo?=
 =?utf-8?B?ei9KeXlrMkRqNzRmUm5aL3lJWXRPdDBFbnFwdlFOcmN4a2ZvQ3R5NVRpWFJ6?=
 =?utf-8?B?Y0lTTkV2SGRUWVZrS2trZkdaUnVwM2dOS1NjNXdNSHUwNzF6WWM2aVYrOW5t?=
 =?utf-8?B?ZmJ3cHJoM0NUT2VXeGozd1prUVdPWXZKV2xqbC8vcFJTZUVTTHdYRkhkbGF4?=
 =?utf-8?B?Q0dSSkgwU1FIU1FjSUpjaUxPSFQwUzRoeUpFbXFnZ0I3UlJCOHgwUVRlKzAz?=
 =?utf-8?B?MFBiRUtUbnlJTmR0NkV6VjhJVkdMRXkwQkxGbEFYQzhqYmRFaXBvdjBWVkUz?=
 =?utf-8?B?R1JtMFByOUltbmNta2RjYm81ZStKaGtBNDRSUjlucUtWSFhHN292bzBvSkhY?=
 =?utf-8?B?d1NWeXh3SGpObjIwN2NQOXJWVS92NmFrSWdLOXlTODVTZE1ESmNNL3psQVRT?=
 =?utf-8?B?N2JqVWpuLzVzeVJ4QzYrdTA2NkRURDVCVVJSU2JFSzBnME9xWjd5TkFnb2M1?=
 =?utf-8?B?VDVOVkdZQ3ZxcUFBSWF2Zm9wL1JJWTIranlzQktwci9wMmFyU0xDQWN2SjFz?=
 =?utf-8?B?OHAyQVRySkRkWnM5TGI3aEFYaTZzUU52aW5GR3VLNi9qYTdhU012RGttcThm?=
 =?utf-8?B?VDl2VkFnWDllcFJ5NTR3TFV2d3ZOSndhYWlaRGNNT0Vwa2xmOTcvRUtleDF1?=
 =?utf-8?B?TU5KT2Y4NmhCRUN2dkU2a1JCT04vRFhQSVpXZCtjOUpkaVRCakpxcGpITTVZ?=
 =?utf-8?B?dXRQTFcwVTdOUk03OVRwbWQ4Ny9nT1gzdER0OWd3ZkZESksxTklOT2VMZmdP?=
 =?utf-8?B?OTM2ZHh4MzM1NWozYWIyT3MwUjR3K1BIMVM5TjE4QzNNM2JRWFd0bVRXL3pX?=
 =?utf-8?B?Wlc4NllteWd0QjJKT3ByQi9jT0tTSWtRY3Q4WnMxVE9GVHFvRDJSMUk1OEcw?=
 =?utf-8?B?d2lrS0VvNGdZMWdxV3AzektVRWlHZkpFL3d2QmtaY3BHaTVzR3VTdk12TG9Q?=
 =?utf-8?B?b1crWlV0YndUYUgrcFpsZzRTVkl5WlM2dnoxWklCaUphOEdHa0ROUkZoVEJZ?=
 =?utf-8?B?eEl5MTZwN2I2Qk9KcFRVUmQrbGJ6eUt3SldYNCs2TEEwYzFyTmczK0R1RXdV?=
 =?utf-8?B?dTkzR2JqenBwbDRzUUxpOFpGNlFrZDFraXVvRHZQcE1iajRmb0pPTHNQczNa?=
 =?utf-8?B?WFNYUmJFdktvL01oZVludXVzOFZQclV2RFpzUTMwSjh5UmVONnBWSGVwME5k?=
 =?utf-8?B?OElJNHMvczhmU09FSHVLTkNLRkxTdTYzeVZER2V0SVE4a0RDbk5sdHFEUVFI?=
 =?utf-8?B?QXRyN3FHOHQzUXd0cWZEWVh3WGRGSy85TXJqc3RwWEtaV2xiUFQ1anRFelRo?=
 =?utf-8?B?cG5WTTFPcjNocGJKeGFHUWo2d1EzWUVESWVBT290dG5tUFhaMW9aZmxWK0tN?=
 =?utf-8?Q?MbG/DJpVUCiQtayZGxzf0rG+R?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c67e0967-9f8c-4685-58f4-08dbb5b81c69
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 06:50:55.9738
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: q5jSeqYsda703ifM8gwODl5PL5XPUJ8fsnUiFglCL5q9+XWT6/tvDJ+EzPl8X6XgZVCoK7d0ux8CklyVVDFzgQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7493

On 14.09.2023 20:15, Shawn Anastasio wrote:
> On 9/13/23 2:29 AM, Jan Beulich wrote:
>> On 12.09.2023 20:35, Shawn Anastasio wrote:
>>> --- a/xen/arch/ppc/include/asm/bitops.h
>>> +++ b/xen/arch/ppc/include/asm/bitops.h
>>> @@ -1,9 +1,335 @@
>>> +/* SPDX-License-Identifier: GPL-2.0-or-later */
>>> +/*
>>> + * Adapted from Linux's arch/powerpc/include/asm/bitops.h.
>>> + *
>>> + * Merged version by David Gibson <david@gibson.dropbear.id.au>.
>>> + * Based on ppc64 versions by: Dave Engebretsen, Todd Inglett, Don
>>> + * Reed, Pat McCarthy, Peter Bergner, Anton Blanchard.  They
>>> + * originally took it from the ppc32 code.
>>> + */
>>>  #ifndef _ASM_PPC_BITOPS_H
>>>  #define _ASM_PPC_BITOPS_H
>>>
>>> +#include <asm/memory.h>
>>> +
>>> +#define __set_bit(n, p)         set_bit(n, p)
>>> +#define __clear_bit(n, p)       clear_bit(n, p)
>>> +
>>> +#define BITOP_BITS_PER_WORD     32
>>> +#define BITOP_MASK(nr)          (1U << ((nr) % BITOP_BITS_PER_WORD))
>>> +#define BITOP_WORD(nr)          ((nr) / BITOP_BITS_PER_WORD)
>>> +#define BITS_PER_BYTE           8
>>> +
>>>  /* PPC bit number conversion */
>>> -#define PPC_BITLSHIFT(be)	(BITS_PER_LONG - 1 - (be))
>>> -#define PPC_BIT(bit)		(1UL << PPC_BITLSHIFT(bit))
>>> -#define PPC_BITMASK(bs, be)	((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
>>> +#define PPC_BITLSHIFT(be)    (BITS_PER_LONG - 1 - (be))
>>> +#define PPC_BIT(bit)         (1UL << PPC_BITLSHIFT(bit))
>>> +#define PPC_BITMASK(bs, be)  ((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
>>> +
>>> +/* Macro for generating the ***_bits() functions */
>>> +#define DEFINE_BITOP(fn, op, prefix)                                           \
>>> +static inline void fn(unsigned int mask,                                      \
>>> +                      volatile unsigned int *p_)                               \
>>> +{                                                                              \
>>> +    unsigned int old;                                                         \
>>> +    unsigned int *p = (unsigned int *)p_;                                      \
>>
>> What use is this, when ...
>>
>>> +    asm volatile ( prefix                                                      \
>>> +                   "1: lwarx %0,0,%3,0\n"                                      \
>>> +                   #op "%I2 %0,%0,%2\n"                                        \
>>> +                   "stwcx. %0,0,%3\n"                                          \
>>> +                   "bne- 1b\n"                                                 \
>>> +                   : "=&r" (old), "+m" (*p)                                    \
>>
>> ... the "+m" operand isn't used and ...
>>
>>> +                   : "rK" (mask), "r" (p)                                      \
>>> +                   : "cc", "memory" );                                         \
>>
>> ... there's a memory clobber anyway?
>>
> 
> I see what you're saying, and I'm not sure why it was written this way
> in Linux. That said, this is the kind of thing that I'm hesitant to
> change without knowing the rationale of the original author. If you are
> confident that the this can be dropped given that there is already a
> memory clobber, I could drop it. Otherwise I'm inclined to leave it in a
> state that matches Linux.

This being an arch-independent property, I am confident. Yet still you're
the maintainer, so if you want to keep it like this initially, that'll be
okay. If I feel bothered enough, I could always send a patch afterwards.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 07:01:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 07:01:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602896.939702 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh2pZ-0006Oq-HS; Fri, 15 Sep 2023 07:01:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602896.939702; Fri, 15 Sep 2023 07:01:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh2pZ-0006Oj-E0; Fri, 15 Sep 2023 07:01:33 +0000
Received: by outflank-mailman (input) for mailman id 602896;
 Fri, 15 Sep 2023 07:01:32 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dO0Y=E7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qh2pY-0006Od-2l
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 07:01:32 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2049.outbound.protection.outlook.com [40.107.13.49])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b2befdf0-5395-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 09:01:31 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9352.eurprd04.prod.outlook.com (2603:10a6:102:2b5::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Fri, 15 Sep
 2023 07:01:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Fri, 15 Sep 2023
 07:01:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b2befdf0-5395-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FhKgKHtPQwQrMDDupmUprDPcmKvJLQR48IDlU8rwmaYMEjzjOl4WE0dFcKYYegTLi3fpVA8IVRX1XT1yhX9WtIALUvv2b9fMO+CsLnueDYWoSyKOVOsRJOoFPSo/xA2LGgzuBQeyOtXXmw7YBu7BYDZILsbuecqTzOfeO6Y7rTXt4k2yBiQzklq4S+PxzJhUTJFvsetmR0pevNIf+usTva63VXPZ4PGdAcDJD0kaWbTQNy06j3PDXnYz4XdYgFUjDFYFMPqZKL9r1ljy1H26TSkvWshXamR9v7AIW0bnRoRhZ4SBQYAJo6CobDJ/qYncbT6B4CkQsBsqyZmVXJlDzQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vFBszeExHVHK3rPmkhDPfcIX0seau8ijSyDiPy33SGk=;
 b=Vn0IBNn8HHvOQvA0z7j7eJAtTRp7VwtJG/IdL+pbI+3usNbhnfqLu/Dr8o0dGxwjgU36avFPcco+CU44m501O7/2ODM2iKI8dHL1CYMGIqVYGzJObCjOuKvijp/ExZLyq6T9FCJqdkCJRQQB4dfpAqBb9+4txoRHZj0pA1DtyTO0k9l4yVk74t4W5IyqEtitlqMOSwNH8Q8xnYWH5KQXnA1KGwlf6dGzNwaUmvTCQW6x0baBSSsiH91QESHe44OMeqZJ/tIR+p+/05rVOEgg1WyYdZ0904AFIDB3SPDxIL03jcxAONpLrAyll+ZHrZbt4nlY8yih5elKcnl76yI22w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vFBszeExHVHK3rPmkhDPfcIX0seau8ijSyDiPy33SGk=;
 b=E9oc88yO4iXgkyY7ZgzZH0315gnqnP6OcOBlaPkKVFEwn1evT+ryPO0R7h5eCohhecxLwGPm8Easecb9j8Hb7/pqZPnpUWZXTaFBViXN+AUA6wnSWZDAPm2Tzy4g+5fpeA2gSOMmKdpS8YUjE6Ox7RsvOuuVzZivGkZpQB+6LQuOJlyTBgKBXhTG+csayTg5sp0iCckF6laE5JFOJCUm6WX5Jwsbls+u3LLqMj1t+UAIyimW4lxTrCD7XtY1XR8olmnfyMJ5bNZ2Nq4zR9MOLvG8YVmuIZKX+pb3h44cu7jALHVMoNM/04+Ai/sQvaN9ld8b3A+8KRD/gREG/LDxCA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <06c3624b-0258-ba66-cc1d-76c475eb8382@suse.com>
Date: Fri, 15 Sep 2023 09:00:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v4 4/8] Arm: annotate entry points with type and size
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 George Dunlap <george.dunlap@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <e4bf47ca-2ae6-1fd4-56a6-e4e777150b64@suse.com>
 <bfc597f3-c61c-727a-159a-859f57997d02@suse.com>
 <e7685fa0-62e0-98b9-f9ba-7e698fb7373e@suse.com>
 <5a0d227d-74f6-457c-aab9-852ca55c6b77@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <5a0d227d-74f6-457c-aab9-852ca55c6b77@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0248.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:af::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB9352:EE_
X-MS-Office365-Filtering-Correlation-Id: bae2faed-ed80-49d1-98e6-08dbb5b984cd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+xYaGpT76K64LlpYORwUx8LzxismVmdaZYNG4biKQpcah5QWuN6V7wp2XxdIvFd6IzPUvjjW128LgP9GjfMSpxIstEFsIHXMamvzgsa7ch5n010EqyrJTV6QwCnD7EovARnD4zwTiTP1g5uSXyYKc94GsWKILcWhA27hDwRivRn4VngfEftd2eqJX2yfNCLhpOAKPb3N3rFPMYMYP05Vk+Ea1WUxwEtrDs/f3AFh3MrPAScHkhuOZUXH20wK3zIo85KHhs8WcX+GOyiZ/8RFNqK5sWzLrC0vZTBvkYO1SPHa6EMfIo1ghdGwa69eKBKSqPOrpSMXaNlFAcsatHG6qBa+uAfA221/xgqZMkOfLy/JZKuVigRMcZjkM0byd+HfSP+wV3sdOSu3wN/GhvFanjLRrMOiEd9Kn1XMcA5r0ZlA2h63RUyRaxjCyFEf2pedWhy8NOeYJdjZCA40Jl5LnxXq+tjG1JhqGj1xhLzyKhLy/5kQ1y63KzlwFv5orYDi1ZiDIPipzQirsg3UYmRvYKBF0pWzPo7rP5cGNhU6BilMp6RQ/i0grEkN3e0M+SgR6VLGbeaFwGPg4b+nV6EPuHXBLfAKlILTSdSrfRiNul3O5kJhrxuv5bLljnlrEDkU3QAOMrqNhjq+3YB9GAcF4g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(376002)(366004)(136003)(396003)(186009)(451199024)(1800799009)(316002)(38100700002)(26005)(2616005)(478600001)(6512007)(36756003)(6486002)(6506007)(53546011)(66556008)(54906003)(41300700001)(66946007)(31686004)(66476007)(8936002)(5660300002)(4326008)(8676002)(2906002)(4744005)(31696002)(6916009)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R0RPQnBzQ0dNOHYwTHdEVE1uZ2V2OUhCTkR6UW0yb05iRjIwOVhwSHY4d1ZG?=
 =?utf-8?B?eXBFWFdKak1LbE9uQlJFcGdiaE1WK2RBMDJTWlcrRGlTdGl1NUZHUjBqZVpX?=
 =?utf-8?B?WDhmM05BTXVuaGRHenN1cmQwTWxNVlFIUTdqMUFsUFNmTXRsN0NJNUdBUGh6?=
 =?utf-8?B?OWU5ZkhNVjRMM2xpbnllNng3TWhPeHZFcHhvMWZZOGJ2ejdWV2trcFZvT2l0?=
 =?utf-8?B?QnJCbmdBUEpoMHpsZjQ4L05JNFFtc2NDMk9DUGE4UXQ5MXVuTnpSSGM4U0g4?=
 =?utf-8?B?anRwTUlLYk03MGE4eDQ2TFlXV21Zci84MW41Y1cvTGJoWmwxeVdEU21iTHZH?=
 =?utf-8?B?ZXJBcGdaZ0VhUGN5V2c3NDFFemFnWTd1Z21CNEpQWHZMM0hXd1pKaFM1ZkpB?=
 =?utf-8?B?WWhwd1hQbDdCaXFHVzNadkhwU2p5bVo2OXJqTW1oclo5MGNrZW96MmNSY0dn?=
 =?utf-8?B?ei9HRTA3VzRXOWpROUR2QXQ3dDB1b3dOV0pZdTBYQkJkOG8vTVJPeUl3OW1N?=
 =?utf-8?B?aWkvYUhJYmE4VFpGN3lqdm8xVVVpSjFlTnBvME40aWVtNFVLSUxLdmhObHFn?=
 =?utf-8?B?ZDBxT0VuUUxsSlB6WmxZVElPS3BnT3kyMXk2REFKZU0wckI4V1RtZ1Y5UVJM?=
 =?utf-8?B?UU03TDNqY2NyTkUvQkMrOS9ST25QM0Q3S3NBYzRFZDdHN1NVaC9EbUprdUl3?=
 =?utf-8?B?MTVLU3NEdnU3MzBmOXJiWDVBYTI1dnBPK1ltTHh0ZzN1SUhoUkFsS0hDRjZQ?=
 =?utf-8?B?Nng0MURFODJiem5QdFZTUEs0SjgrQ3p3L1B0QW92eitycUo3NlJYbjdoWTMr?=
 =?utf-8?B?WVl0T0lwZ3N1dVdla2dVN2twVG1JT1dmMXZDQy9pZWNPMnFTT3d0UEZtbnZp?=
 =?utf-8?B?ZzJwRkdXNURNVkp3ZVZlMzN3OTVlRmhvTUZ1NW9ndnp6MW1FZ2IrVzllVHpV?=
 =?utf-8?B?a1l1dENtYVJrdnh0TGh1KzFKTjZpb01YREZZTVMwR3grSU1mcnN2c0NWblZh?=
 =?utf-8?B?R1FpUEx3N3dnSWlXZHRrbXRHaHdraklwaVJCSzY4WjUvVjh1bkd0WHpXRld1?=
 =?utf-8?B?ZU80OXh2QXdxdmhPMUl6TU9EVnVEREYvendHRVpLbGZzeWlIM3dPekw3Uks0?=
 =?utf-8?B?QVR5cXI5RnJPYW9RbVc3ZDZZMUYyQUhDSkk0MmhDMldIU0kyRGJMemdGbHlE?=
 =?utf-8?B?dDkzbzdySDlzVlZMcG8xdTIrZVkzcDlFU0tXb1ZmVFNTckNVT1VYQXBkaHJa?=
 =?utf-8?B?WG1SMmh4ZEozYTdIMkdWZXpRWlpBYTl0eENvQzRhM2VzUmcrbTRtOUlkbjRV?=
 =?utf-8?B?ZGJiODBMc205VG9iNXR5VnpFQVZNVWNXQWU2SnZqWDROcWpFc2pSMUNER2lh?=
 =?utf-8?B?MnVyd0dEM0YxckFUNDBEaDRIUS9WUHkzb3QwdEdvbkJMRzJRK2ZDcHNvaEN6?=
 =?utf-8?B?WmhEMmNLSDlRL1FmRTFWa25KZzRGeGxqOThmRTgraE5NT0hreXpXSG84QjhW?=
 =?utf-8?B?cWNWREhRdCsyeVZ2aWtqOWw3Ui82cVcrT2VUcE42T3NXZXR5Q2c0L2x4b0Zw?=
 =?utf-8?B?ck9UbDhaSE13TUE2YXpqa0FhdXpuK2ZqK2wwd1F0d05ZWTlnNHBYWFEzYmli?=
 =?utf-8?B?eCtsa0FFMFYzeVFhQ0x6bndGeXpETDJwN2V4Y0tMZWJvbmRwR2xhTTQ3YWRn?=
 =?utf-8?B?bEQycVZVOU5JdXJYcVBhcDMycHBLbzg1amV6M3EyQlNLa1NKSGI5TlA3Smd4?=
 =?utf-8?B?TUQrR2hQcFVGMUpaa3NxTFJ1d2s0ZUNGTmh2eHJTVkFjQStYSHJHQTQ5MTQ0?=
 =?utf-8?B?UVpWMHNGZFNCU0xid3RWbWJzN0Q3TnNXQkFyenpoeFloRi9qRXNQNklrUEph?=
 =?utf-8?B?aitrSldha2lFSkVwNytPK3ZFYkpRaThJSm1mWmdIUHkra0tLRXNmT254Q1Jz?=
 =?utf-8?B?S2l3cGxxZ0t1aGZtN1lSZlNnaHNQN1FmdERYWUwxazZLa0tYU0h4aW1VejQ1?=
 =?utf-8?B?VGI0bGlaeEt2N2VZSVR5ZkJ6bHVhZ3JVNXJ1K3JpWWxkeU5DZjRvejhkYmQw?=
 =?utf-8?B?SkRLUkI4WFZIQTltVHJuN0JCcGt2azlPeGgyZCtaZTQ2R01XclJYS2dVT0tX?=
 =?utf-8?Q?XoxmFbLd5I5JzoFgRUOUBmCvi?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bae2faed-ed80-49d1-98e6-08dbb5b984cd
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 07:01:00.6354
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: jOBrFdwrG8TgH4wkhY0H2rjPt+i1bHkldpe+Rwp6eCD9k4DEGnWh1X80p2mAnRrkTnl367NzUEQPiqthj7mweg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9352

On 14.09.2023 23:25, Julien Grall wrote:
> On 04/08/2023 07:28, Jan Beulich wrote:
>> Use the generic framework in xen/linkage.h. No change in generated code
>> except for the changed padding value (noticable when config.gz isn't a
>> multiple of 4 in size). Plus of course the converted symbols change to
>> be hidden ones.
>>
>> Note that ASM_INT() is switched to DATA(), not DATA_LOCAL(), as the only
>> use site wants the symbol global anyway.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Reviewed-by: Julien Grall <jgrall@amazon.com>

Thanks.

>> ---
>> Only one each of the assembly files is being converted for now. More
>> could be done right here or as follow-on in separate patches.
> 
> I don't have a strong preference. Are you planning to do follow-up? (I 
> am ok if it is no).

Well, I certainly can, but I wasn't expecting this series to remain pending
for this long, so time's running out for 4.18.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 07:07:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 07:07:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602901.939712 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh2vF-0007VC-8D; Fri, 15 Sep 2023 07:07:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602901.939712; Fri, 15 Sep 2023 07:07:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh2vF-0007V5-4o; Fri, 15 Sep 2023 07:07:25 +0000
Received: by outflank-mailman (input) for mailman id 602901;
 Fri, 15 Sep 2023 07:07:23 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dO0Y=E7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qh2vD-0007Uy-Tf
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 07:07:23 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2062b.outbound.protection.outlook.com
 [2a01:111:f400:fe16::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 843aba24-5396-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 09:07:22 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7340.eurprd04.prod.outlook.com (2603:10a6:102:93::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Fri, 15 Sep
 2023 07:07:19 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Fri, 15 Sep 2023
 07:07:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 843aba24-5396-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PeZ2UgQGcjqCxMY0TqEqcXS2pI2AfrJizhAUbkevm1/DiE3ZQQuaUL+cgnr5GeLZnHNecNrEr3L1XdButuc/uyqdeeqdZlB5vJtSz5xU1J8Zu7QAPQcT2Qur9wiodSlbFkcLGkWXSwJIXmWL8miY2avZsrkjh34c/y5TNGKHIlWKHBM1RsYyxqdChfQny6Df2p8glBvxCiOPgNdmB6ezE8Gz1C60uuQvFhwKfFMckcSJ1F8kjCDWU7eGy0pvF9lDGNn3y1kwIjWUpx5Ag1NtCZd+fxKO0+qZORRwhjNJnXKM4+o94aW/8IMUeJ9AQdlDh1QL/QYL9vTqgP+ChhJj/w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QCi03gudrkGHwDP8lQYr8K7CFZnefNRpM/sD5bs65/8=;
 b=jbQ6v4KyS+gZP1DlAv2huKA7Osd39oFMe5egr3qs39yetgFKO1rYNwNRiso8Qt15ypf+h83Me4Co0tfAM9j6cR52hHvhzyG0WTopb+yuqsYMFKKlr0fCMsAxguJUmylgluMkey81MgpmL78/zSgRkRCOH7uaPLACr5SkW2DCVOIpFGfGdcozGt2TchRdspz+zWvsVXJFUUKQWLyP323soodv97eP8GkqhReW7UEAF+dgNvq19EE/MKGoVRLdTRPkjZ1WJ9h15Km4DEkZyHyJktuXm9ol9fDeXuwgrvVVCA/7xIvhgICjE/AO2DPKLz5q9JIS53QRSC2ChtDhmPp8mA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QCi03gudrkGHwDP8lQYr8K7CFZnefNRpM/sD5bs65/8=;
 b=yDgYLimH/se/qyzj7Eor+e+jDvjZI8Euq2nKQwu7kh5Jdd58g4EhzPX6EIotOyiVoGDxWGefxpb6Vf11zF3pvH420s+Q5ac8LAfLSyLVwC0DolU//i1WF9A7MIAfVAy288DcdVgV8xdjwtWlFWGnMbMb3+Hc5KKJqn8Y/3aSOM85nom7eMlSrOVi/mj0QXUuLy+1LyJmYUGM5zWqldYAIV59uk77NUP/Nw07dBJc0CDq7gwGzLibNxMQzjwf6ERnyDbRUHJ7dNVDzw/Nq6CEMMqiXID3A75YWPm525eTFsytBwv5RTVA8sLMEf0RACNeJEWzTMOGNpJLkCIb294PAg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <63f0afcd-1baa-ae78-cc01-5f2e2d606201@suse.com>
Date: Fri, 15 Sep 2023 09:07:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 4/8] x86/spec-ctrl: Extend all SPEC_CTRL_{ENTER,EXIT}_*
 comments
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-5-andrew.cooper3@citrix.com>
 <e12f46d9-25eb-d564-4cb7-0e476e741725@suse.com>
 <35177e10-3306-69fc-4ece-bba453cbdb0c@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <35177e10-3306-69fc-4ece-bba453cbdb0c@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0059.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cc::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PR3PR04MB7340:EE_
X-MS-Office365-Filtering-Correlation-Id: 1d13c7c0-25bf-4a83-f6c1-08dbb5ba665f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hSpFBM1MdNQTcQlDGFG3MJ4ydgI4tybEE17aDn0kKQbV1Bq9tXfowfpDos7TM1HuCfVWFnsaxvgqQFbKiEE/Eoy33ioxzGmarjaYeZpi0Wshoa/5hJchz5L4/L8HQ/pMqIvVsgrynyB9vbga86wskHDGKUZcR0xDhmBUWQZEf5XpBkxLZ9vw3IiZTmk3r021n0TChG3J5y/sCp6goI1lo90uMxhapBTmCw2F/QQT14kyM7EYPoUJX1r9Xvapy1/Lmn9SLUKnRj7a8jmgtzjHErgrtLIWoKoZT9p6OyJH/lQQ9joZg5EABOdr0WISsWJpkB4orA1TiDk9GBl8047/Q23P3tiCzbjrxDsLDXPPpO2Xcj/yXefLF02a3goAwVrwyJjRL4DkaYLWs15gJ7TClbVWfXcNxHM8rJlQMuIKNCvH80fwC12amlMGdPsXIMKQIR7zDL7i87NbbcR3/XjrfzztdRmIjvjnP6D0LSRhxGsdGoPXtmJlI/kHbt9TymXvdumqTywHdIZFoKjFGRI5oj6dO4TUsS9gEtmUX50GbOtWYUo/R3jICT/NeQ8Ycv0Z5i1dqpEMfYObKC6J7BnuWtN/bUcrlJjschx7+AayvnIbDoyABDqUs5M/ww0PYOgogCwwPmmlYTdsagouGiDz8A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(396003)(376002)(366004)(346002)(186009)(1800799009)(451199024)(5660300002)(26005)(8936002)(8676002)(4326008)(2616005)(2906002)(86362001)(31696002)(38100700002)(36756003)(6486002)(6506007)(54906003)(66946007)(66556008)(66476007)(53546011)(478600001)(31686004)(41300700001)(6512007)(316002)(6916009)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QlpBL2RweldVdG5OcHF6b1BiVW9yYjJuUDBTem9WL2dKSGNEdHBmeG42NWtz?=
 =?utf-8?B?d1hMcmVJOEVnOWs1VTd4YUltSkRLUmRTZnAxbHRVeXBqNGVpVW11Y0oydC96?=
 =?utf-8?B?ZENGMW0zMUFQSENqNUNNTDY1Mko0Q2sxMjZYa24xVm5KSTZqYkNKaVRTUEdB?=
 =?utf-8?B?eDd3WG91RVEzQ0RzMnNQdmV1YjRGdjlHNVc2aEk4RU1kUTduMk4rRlBlY3pK?=
 =?utf-8?B?TGMvQk1aQ0xDUFI1Wkw3bmVaQUY5VmR0bENCaXRHVzNGNk9OVHJGc3FxcXJi?=
 =?utf-8?B?UGQzdVpYRFlQdHEyTldOQStnZ1dGdzVuOVQzRDBrMmFsQnBzUVdhYmtQcE5z?=
 =?utf-8?B?VFM0NkFLK2FoY2lJU3BMZEMwdFBBMXdOWnhrZFl0TzUzZDIzZjhvamdNK0pF?=
 =?utf-8?B?Sk9PSnN6THhmcjN1Z2lkRkh3VFdNRzVDZzQrNGdvVVh4S0tpTmNJU2J3dFZk?=
 =?utf-8?B?bzBRNFZwRmh3YlI3OVp1a3pyaDMySDUrYlNHYmUvMWJOYXdYUENvc3I1VSsw?=
 =?utf-8?B?VmNiNmtMaDFESzJjUlFMMjBPRDQ3SXRCZGkwMC9Ea21SdktZRGs4SHpmR2M2?=
 =?utf-8?B?ckV2WEtKU2hQY1lOZ2RndkgxN1VFcW1uL3EwZVpxVTJkMTZVRnMvSDUxdWJr?=
 =?utf-8?B?dStoeHpDVGhVSnZkcy9WL0ZOTHhIaWpSRkJzNkNCV0puU2JFYzVOWHUya2xE?=
 =?utf-8?B?bEF0NnhrTG9PZGx1emVzeWtjd244R3owcnpoVnZUNEh6NERjajc3L3VBd0s3?=
 =?utf-8?B?ZXdROVlDZEgxcUYvT3BHajJ5VmpreGd1dnNYTkVRQmlZREVseDJjQUpoZzcr?=
 =?utf-8?B?MzRteEVhejNFQW5pdzVCYmg3YS9mbDdiQ0hEOU9NbUFuZ1Vrelh3bi9XWGRQ?=
 =?utf-8?B?QmdnWkwrR09oc2ErNEFuRStsKzkxVERJVGJIdDhvTCswVkl0Q2ZsRllPR2hm?=
 =?utf-8?B?S3I3aUdRZm5pcVJ4SjVFb29TVHd6bHpMUHVENVFwRHd1ejNWQWNxQk5abm1H?=
 =?utf-8?B?QVBsbklsck5xOE4wOWdhNmZxL2dNNTNQb25JSEcyR3lCRDg2amd1ekRMcmpJ?=
 =?utf-8?B?YzB6YjlNdzFYVE9XUzlDNGlISFZka0F3RmQ1eDRpRTVsOHFBVklVMWY5Vlor?=
 =?utf-8?B?S2ZxYlM4dWx4UTJFQUR0WXBzR1pSNjJQZi8zZlk3dHQvOGw3T0RHdGxaVDRD?=
 =?utf-8?B?SkNjRlFvaDF2c2Y4bWgvSjd4OU94RGNLTnZIdCsxaTdLQWlqQTN4MXRSLytr?=
 =?utf-8?B?UzJHR1puMjk0RFNyV29GZmlxZVdKSnhGRzdSb2NCOUJkbVZTRTFORUFJWTZq?=
 =?utf-8?B?ck85cmpVSG1hencvM3JrQU9Wd3BqQUp1MHJrNjg5V0l1SHB4R2lsN2J0WnVS?=
 =?utf-8?B?SS8xM3Q4Vllpd0M2cm5PZEJUYlJBdUI1dzVEV1R1RTZFU1dEV3FEbi9COThB?=
 =?utf-8?B?S2lucEJhaWRZeUtiRG9BaGpsS0l1cWQ0eDZrVjJvdk5JWkFTMktiYVk5aytL?=
 =?utf-8?B?NGlXWklpd0hWVGhDS2dOeGoyTEpxMkFmbVFmcjVVd1B5ZHR3dzkrUVNicWp1?=
 =?utf-8?B?Qnh1RzRGbHFBL0lsWHZNWXFFUkxPenZTYTBacXE3OCtvVkl6SjFDQnJZMWNK?=
 =?utf-8?B?ZVdReTYvc1czRkJGcERsemxUd2VBMDJLVmVyQzd1UlpXVFp6cjZjeWJrdktR?=
 =?utf-8?B?NENVVGJobGppNDBRUmU2eDhyLzlhMzZaeXlLbDdQNHFZdnoyWVpBL2tSMGZI?=
 =?utf-8?B?M1NPd3ptSUlxSjRjNitOQU9mYTdXNVFWUFl2Vyt4YzVzUXdYdGdLOVE3cW50?=
 =?utf-8?B?TStNbGdLOFpHbVpYOVpIZlVUcUpad2YzdTdYNG9HQXJmNmQralEzYjNYODNW?=
 =?utf-8?B?MmtOUENtK0lBWTF4MytRL01zM0tyQVczWmhFN2ZNRlNzY1dZdzRzS3hlUngv?=
 =?utf-8?B?bWZwb3o4Y0Z0NlZ0QVJKVGZablBrMk51RXUzMUFld3ZYYVl1aXpPU0cwSmFL?=
 =?utf-8?B?bThGeFRDZXJTR1JLcXhWRzVXL20vRW1PTS94SDBEcW03ZW9qOHpqWlhoenZn?=
 =?utf-8?B?VEFxY1hHNVViU2p5eGRWa1ljZWZjdEJKN3NidTlXdm9TTFpXWjYxRXhCcHoz?=
 =?utf-8?Q?60ZCjyjGhtbFBf8bB6p1QxOpS?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1d13c7c0-25bf-4a83-f6c1-08dbb5ba665f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 07:07:19.1220
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: iqBPaqekaI9XNXrIA1PxTNMYWfVVpa7pb7UK/EiWK+GAz+eEtQxYCgTeY/OP2y0UUfpMO7/Hb8ORPE0OJN1RAA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7340

On 14.09.2023 21:23, Andrew Cooper wrote:
> On 14/09/2023 8:58 am, Jan Beulich wrote:
>> On 13.09.2023 22:27, Andrew Cooper wrote:
>>> --- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
>>> +++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
>>> @@ -218,7 +218,10 @@
>>>      wrmsr
>>>  .endm
>>>  
>>> -/* Use after an entry from PV context (syscall/sysenter/int80/int82/etc). */
>>> +/*
>>> + * Used after a synchronous entry from PV context.  SYSCALL, SYSENTER, INT,
>>> + * etc.  Will always interrupt a guest speculation context.
>>> + */
>>>  .macro SPEC_CTRL_ENTRY_FROM_PV
>>>  /*
>>>   * Requires %rsp=regs/cpuinfo, %rdx=0
>> For the entry point comments - not being a native speaker -, the use of
>> "{will,may} interrupt" reads odd. You're describing the macros here,
>> not the the events that led to their invocation. Therefore it would seem
>> to me that "{will,may} have interrupted" would be more appropriate.
> 
> The salient information is what the speculation state looks like when
> we're running the asm in these macros.
> 
> Sync and Async perhaps aren't the best terms.  For PV context at least,
> it boils down to:
> 
> 1) CPL>0 => you were in fully-good guest speculation context
> 2) CPL=0 => you were in fully-good Xen speculation context
> 3) IST && CPL=0 => Here be dragons.
> 
> HVM is more of a challenge.  VT-x behaves like an IST path, while SVM
> does allow us to atomically switch to good Xen state.
> 
> Really, this needs to be a separate doc, with diagrams...
> 
>>> @@ -319,7 +334,14 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>>>      UNLIKELY_END(\@_serialise)
>>>  .endm
>>>  
>>> -/* Use when exiting to Xen in IST context. */
>>> +/*
>>> + * Use when exiting from any entry context, back to Xen context.  This
>>> + * includes returning to other SPEC_CTRL_{ENTRY,EXIT}_* regions with
>>> + * unsanitised state.
>>> + *
>>> + * Because we might have interrupted Xen beyond SPEC_CTRL_EXIT_TO_$GUEST, we
>>> + * must treat this as if it were an EXIT_TO_$GUEST case too.
>>> + */
>>>  .macro SPEC_CTRL_EXIT_TO_XEN
>>>  /*
>>>   * Requires %rbx=stack_end
>> Is it really "must"? At least in theory there are ways to recognize that
>> exit is back to Xen context outside of interrupted entry/exit regions
>> (simply by evaluating how far below stack top %rsp is).
> 
> Yes, it is must - it's about how Xen behaves right now, not about some
> theoretical future with different tracking mechanism.

Well, deleting "must" does exactly that: Describe what we currently do,
without imposing that it necessarily has to be that way. That's at least
to me, as an - as said - non-native speaker.

> Checking the stack is very fragile and we've had bugs doing this in the
> past.  It would break completely if we were to take things such as the
> recursive-NMI fix (not that we're liable to at this point with FRED on
> the horizon.)
> 
> A perhaps less fragile option would be to have .text.entry.spec_suspect
> section and check %rip being in that.
> 
> But neither of these are good options.  It's adding complexity (latency)
> to a fastpath to avoid a small hit in a rare case, so is a concrete
> anti-optimisation.

I fully accept all of this, and I wasn't meaning to suggest we do what
might be possible. I merely dislike stronger than necessary statements,
as such are liable to cause confusion down the road.

That said, I certainly won't refuse to eventually ack this patch just
because of this one word.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 07:12:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 07:12:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602906.939722 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh2zz-0001Pk-QG; Fri, 15 Sep 2023 07:12:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602906.939722; Fri, 15 Sep 2023 07:12:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh2zz-0001Pd-Ma; Fri, 15 Sep 2023 07:12:19 +0000
Received: by outflank-mailman (input) for mailman id 602906;
 Fri, 15 Sep 2023 07:12:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=x70d=E7=citrix.com=prvs=6154552af=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qh2zy-0001PX-GR
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 07:12:18 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 324e2a54-5397-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 09:12:16 +0200 (CEST)
Received: from mail-sn1nam02lp2048.outbound.protection.outlook.com (HELO
 NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.48])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 15 Sep 2023 03:11:59 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BN9PR03MB6156.namprd03.prod.outlook.com (2603:10b6:408:101::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Fri, 15 Sep
 2023 07:11:57 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.020; Fri, 15 Sep 2023
 07:11:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 324e2a54-5397-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694761936;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=7ozf+eVI8ZZWyTDF8qubN7845ed21BO7NSYAFZ8C7Yc=;
  b=NOuRvoR/2naQu15/NvqxVN2ZY15lqVP9hYmZ0YRoRRd/aT033MHUqMei
   ACVIcr+ZvhIviwZdM9avsFuyKThp3nv0KNedwuz1PCdCodtfvtyxKqUDW
   5mNanJFzs9tywWMglRmV+u4M+N02ZnLxJF3s4R/MGfxIBKWw5TeBGrDEk
   s=;
X-CSE-ConnectionGUID: tOxNJSBKT3Kir8+MFZFZfg==
X-CSE-MsgGUID: IyClZKXiT3+fhUTuDJVX5g==
X-IronPort-RemoteIP: 104.47.57.48
X-IronPort-MID: 122748076
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:I4kLqaKKKPRaSI3oFE+R95QlxSXFcZb7ZxGr2PjKsXjdYENS1zAFx
 2UaC2qCOf6CYTDyeY91O4XkpEtUupLWyd5hQANlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrZwP9TlK6q4mhA7wVjPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5rJnFo1
 8cyCwxWTRGZ16GT7oCVeOdj05FLwMnDZOvzu1lG5BSBV7MdZ8mGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dopTSDpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyj22bOfxXylMG4UPJyp3fpYo22S+jdQBh0raUaXg8eJ10HrDrqzL
 GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAGRDNcbN0ttOctWCcnk
 FSOmrvBGjhHoLCTD3WH+d+pQSiaPCEUKSoZY3YCRA5dud37+tlv3lTIU8ppF7OzgpvtAzbsz
 juWrS84wbIOkcoM0Kb99lfC696xmqX0oscOzl2/dgqYAslRONfNi1CAgbQD0ct9EQ==
IronPort-HdrOrdr: A9a23:Rn/cRa9s7OYeLxWJQoduk+G/dr1zdoMgy1knxilNoENuH/Bwxv
 rFoB1E73TJYVYqN03IV+rwXZVoZUmsjaKdhrNhRotKPTOWwVdASbsP0WKM+V3d8kHFh41gPO
 JbAtJD4b7LfCdHZKTBkW6F+r8bqbHokZxAx92uqUuFJTsaF52IhD0JbjpzfHcGJjWvUvECZe
 ehD4d81nOdkTN9VLXJOlA1G8z44/HbnpPvZhALQzYh9Qm1lDutrJLqDhSC2R8acjVXhZMv63
 LMnQDV7riq96jT8G6Q60bjq7Bt3PfxwNpKA8KBzuATNzXXkw6tIKhxRrGYuzgxgee3rHInis
 PFrRsMN9l6r1nRYma2ix3w3BSI6kdl11bSjXujxVfzq83wQzw3T+JHmIJiaxPcr24tpst13q
 5n13+Q88M/N2KKoA3No/zzEz16nEu9pnQv1cYVknxkSIMbLJtct5YW8k95GIoJWAj69IckOu
 9zC9y03ocfTXqqK1Ti+kV/yt2lWXo+Wj+AX0g5o8SQlwNbmXhopnFosPA3rzMlztYQWpNE7+
 PLPuBDj7dVVPIbaqp7GaMoXda3Inale2OMDEuiZXDcUI0XMXPErJD6pJ8v4vuxRZAOxJwu3L
 zcTVJjs3IocU6GM7zB4HRyyGGPfIyBZ0Wu9ikHjKIJ/4EUBYCbfhFrcWpe0/dJ+J4kc4nms/
 XaAuMiPxasFxqoJW9z5XyPZ3BjEwhhbCQrgKdLZ7uvmLO9FmS4jJ2sTN/jYJzQLB0DZkTTRl
 M+YRmbHrQz0qnsYA61vCTs
X-Talos-CUID: 9a23:jtPwBW097Hlz7q3bSthkYbxfBuc1VF/m5lTseGy5EzYqbZOnZ22e9/Yx
X-Talos-MUID: 9a23:Kx+s+wTCohr0nq0NRXTNlRpmBuRY4pj1S04NrKkbl+u6BXF/bmI=
X-IronPort-AV: E=Sophos;i="6.02,148,1688443200"; 
   d="scan'208";a="122748076"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Iq7W6OjSv2+GFWZ4OsVoa2NBKJ9aQNhWYz/7Lml+z7WIMrQGLaRdNFkSufFyhOou3kFInZqeF3DTkEDdlpHXEDeuBWlJBAu2zopZPbewRD+5o1JdD3lnInN7E4Xurt31nHNzqvFUrV0GDKv7EdZ+740jz1pVLndbA/G+YsKtx+5YQ7rkFgOlcorPw58yj5Kdtk5zGkag4tKe4sFN6yTLuhcLD9ZT36PaFRGd4XcAf7Jh+RvSBfVCkzv/M5y0LkegIpRVwx7rxhfNkpoA1FwlIhD/365oetLzziHmyZrPtAnjxzcNhQvk4l1tbyBxG5exhm2vYw2ZQOHAwJVV5Rw7NA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WAovjH54jEtDgouGRaoL423oBZxIOk8/pI0kpBorQEw=;
 b=n5H9rF+CUI/MXG8ZxAMw3bNF1MqD13a4MkUmyfXfdRd0mHjnpbm9KRGnc6lK6IFyN3DllUyB9Mzgf+XGGIPw9kL2EalfIgbIW26R6lIKPmbklgy7mR3jdbM2REYIUhI2ic67+UDR6z+uYsygAbpCEc6HoQ4jag5yVpSI0ExRTsfPb00+jiP4HNJOw85gBgjsqkCZ72hzabs4GXYLE120HbKHrQ8I0LeYf15VJsO3UzfBz1/li5qX3uQvqGeA80/YSOd/IZQ57YFPfjpRoZRa+W3TGYque9eQZmyWUKp83JVc7GuVv/AoRZLqpykmAamIh1YhMxZJHFelRnqpjbAzQA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WAovjH54jEtDgouGRaoL423oBZxIOk8/pI0kpBorQEw=;
 b=VeC7j4uh+NDWHYmcgXy8QyDPNiYHB3DNYoa2vH3Z4ykieR1m+MDKSZaKWCkpKn0Pz1YKXy4LP9I/257YKE2bhNOv7nwmbmyIxFTFgAklE8LuGOt84VPWPnPNjqN55rd2B49si7H9HmaW6k3Rbws+MaaJXbNZOJu9KuRSLQByrXs=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 15 Sep 2023 09:11:50 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/shutdown: change default reboot method preference
Message-ID: <ZQQDthWFElFEOhZ_@MacBook-MacBook-Pro-de-Roger.local>
References: <20230914152120.92696-1-roger.pau@citrix.com>
 <2d767f96-9f20-e786-9148-cae5c30a41fd@citrix.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <2d767f96-9f20-e786-9148-cae5c30a41fd@citrix.com>
X-ClientProxiedBy: LO4P123CA0298.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:196::15) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BN9PR03MB6156:EE_
X-MS-Office365-Filtering-Correlation-Id: 344120fa-fc98-47a8-ef70-08dbb5bb0c08
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	WHBzjjLlDpu6sAni7RLhN4TMPsHg+2DTpJTvP3ntbfTgkDzwgxYuAmqV+1evQUJjOpvd5PEq3ZRAZLXMBtVvgwgZh5i1bcqLBGQLstcv/wr5pKkbm9xU4PYtbA/IP4nphYwvv6K3xYQRityY1odNiWM0L3ltDaUpOdk/CYN77B3U2ew2FLkRe7u895VHgWi0ydOYEWjhWX2cb5uHta8M6WTtQ54IlfH7s8A76IGtbIAwf3fNFWr9o9niL3kmzpXVHbuMlcfYncHYmXkT+tM8QoAPZvaDFbW0cjngbItVGFl+jAmw/ZCAJFMr/qUZERIAv7tBRirtLGgT6DaO7hAGZbWuAUvEwVW9OhsiI+576f15QV6y58tEGuWLGX/zfGtTPP1V0D2NCQCG0wJx/DzAu36B3tNtDz0zGFvcQzx+BQBevtwQWPsxliBmdWt4M/GOYnL55anfSM+QY+ZDOybSyF0Dr6BhA54a4eLg1Kx90mKBLMqa9zcCtmEkRwvVjZcg+mfdS/WyMD43lDsckyCxHjAkSJerVufmX3PmCmkl7qmNiWyZeDlovTp2PpFFxpj9
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(376002)(346002)(366004)(39860400002)(186009)(451199024)(1800799009)(86362001)(38100700002)(82960400001)(85182001)(6636002)(478600001)(66476007)(316002)(66556008)(54906003)(66946007)(2906002)(53546011)(9686003)(6512007)(8676002)(5660300002)(6666004)(6862004)(8936002)(4326008)(6506007)(41300700001)(6486002)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ejBKQ2ZsTHNhdytKTnBMa1BvakZtNTdPR3RpUVpJa20zT1F5NERnbmVrL0NT?=
 =?utf-8?B?SkZvS25udEJNNXhZWDgwWEI4SGJGek5uSzI2YVNPSi9tVisrdzhrS0dPMXZ6?=
 =?utf-8?B?ZEU2d3I2L0FuN3NyTERXSmQvdXFFbzlPekFUaHRsc2FpKzJJQ0p1TkhCMGRj?=
 =?utf-8?B?WGM4R0F4OEN6T0RaMWYxMmkzbC82K2RjKzhxMnZCdVZSQmoxYVFibjJ0SnFl?=
 =?utf-8?B?NzVNQ2puQkJsT0NqN04zRHFRQitOYmQya1JFVWx1UklBakl5TGdsZDZJSzdx?=
 =?utf-8?B?V2JkaWk2d2N2aWhzdkd0N20xT05pdGs1UFlLTkJ4MEE3TGhvTGtVZ2tXV3hw?=
 =?utf-8?B?UG5VM0Uwb2hhYUVMaHp0SC9WL2ZuTHowVFZuREhLSm5WTUF1K3Zwdkl1Z0Z3?=
 =?utf-8?B?WmtOTlFTQldlTDVxbmRSMHhpZWNYdmxyalVSeW91TGJ2aFhkVjExNEdmWWh4?=
 =?utf-8?B?Y290THVMWlhIWjBuL3ZTTXhINkM2bG9DR3pGNDNDbkhPR25kK0xHTlBhVlMy?=
 =?utf-8?B?M0FrYUlGNWE3Uk5MTUJLTGd3WVhheUl0RE5NYzE0emNpcTJ0R2hQSTNUand6?=
 =?utf-8?B?KzdMMHJqcFRqWUZDRm5DdGkyZUVhRm9sOG9NSVFnWXVnTXlmTUNRWnhXNm8z?=
 =?utf-8?B?eEJ3S0ZBZW1FaTdhTC9jSHVDdEZaMGdWVXdoV3JnSkYwL2x6ZXJpMkwrUm4y?=
 =?utf-8?B?Z1U1WHNFQjZlVG9TandPOGVST3hFcXBWeUJYRldGeXE5ZmZTZW1UM2toNlU4?=
 =?utf-8?B?WXh6ZzJjdU9RcktHanRTVVIvQVloNGE3R3VtbkJBMnpYKzBpdTZVTkNYSEJS?=
 =?utf-8?B?VzY4UUw5WGtKVWNmYnFxUlVvZXFtWk9sTTIyZ2Y5cmgvWTE1S0I1Ly9XQjkw?=
 =?utf-8?B?SUVnK2NtOU5nUjVpUlQ0c2FydFNXUFFkb0U1WEp3Nkx6ZzQrclJKR2NRc2xy?=
 =?utf-8?B?M3pnc2Izd29mTzFBSmg1M0ZUeVI5VVQya29ML2dsTkNRdWZzVHB0VldRTVNr?=
 =?utf-8?B?VEtoU2xmWE4vSm4zRkd1RWEwYUxpSS9NMVR0azJ4TGM4cnhZRTE4Wnc0N0pa?=
 =?utf-8?B?aktvV2wrVUdDcHd0YkIzZnRkT2M4eEViK1N6NjhOcjJSNkc1Q1VvN1FvVEdu?=
 =?utf-8?B?ektzbnROUVlhV1RSekxzT2RBTjZlVkpLbnBQUENuMEVBNmpFYkJ2WnFaa1Iv?=
 =?utf-8?B?OGNwK0NyY2VTcWpuUmQrbUdibytscVRmUHVVTTRrSGdSM3dJNkRHeXkrRnE2?=
 =?utf-8?B?ODZOelJyUFVWcUt0NTNnbWlaY0UzTmF2dGxvVG5HdEZwRTFCVVBEdGdiZ1dz?=
 =?utf-8?B?RUdkTHhKQjNyNlU4UnAzOFFYYkg0T0RPVUl2SGdpQ0F5ditjVXZXSWtqRU9n?=
 =?utf-8?B?NEdpbDJuQ0h4ZjVaVGlBWGxBa21pTEdFdFh5ZkVzVHZUWDRwNmRnMDNiUURN?=
 =?utf-8?B?NkVaM3hWZDkwMnVOSjlaQithNks0Rk1OQWpCRjdBY0RqNnVGd3lwZkNXZEw1?=
 =?utf-8?B?cE03KzE0LzN3ZEtNaFVtWGY3c3dkN1VlOEx2UkZPcTVpc3YwTFBhTUFEcmsx?=
 =?utf-8?B?QlZsWlJPalliY0tDQTIweFJqWEJWZDZXUFBBT3lSSHYzRVhTU3Nia0VkajRn?=
 =?utf-8?B?NndKdGdIQW96WWV2NnhSckpwcVVZV3A5ZkdQVU1ZeGw3U1VWYWVCSWZiZ1U4?=
 =?utf-8?B?amFPSi9RM2czb3JXUW4yZUlwVTBtV2JtdzJpSFZvQTZMWEtlem1JOTFhYUJH?=
 =?utf-8?B?NTRtUTE0TWpHbmQvSmtsWldxdysycmpjOTBrQWowVExvYmlRakEvQUp6d3Vu?=
 =?utf-8?B?OTJ0a0wwZ1ZvQkI3V0djVUMxS2tRQTJHam1xandHdXRQM0VudjMvK0tnakty?=
 =?utf-8?B?ZDFVVVlLZDFBb1dSSHJZcmYwbFdwVy9vTG5mUWlHVDROYkZNd0hIVVdycGZ6?=
 =?utf-8?B?aWtOd0VTVnRBc3llTzYxdHZpbG5oTFp6UE4zZWJBbktEOGJ1Y1A1SUx2ekhh?=
 =?utf-8?B?M255RHc2amt1dnByK1IxV3phai9FRVhGand0eFY2ektmRklBOFZ6ZStXVXlU?=
 =?utf-8?B?RUQ3TWNlbXczcUtidGFEcElSWlRtZnhYSDlLVitNYXI1aCswdi9BUGJLQWJy?=
 =?utf-8?Q?qHR0o+lGYfqdaiT/hzSB44zEo?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	oObconsRRohDJfrlOvWWIFEM+1TFx7pKaA1X7OFK7GYCb0bwXXHXqEV17nvLki0JDrKbMoH6C+JSpNflxhV9OxED8bmb1oeKOxIb3mniH1tkxucUpYmop9y6GY3khpIHxj5lFP/k+gnXUHRlV1gKcH6PLv+Pp2lrWLzNoJnGGZrwjOOu9UPJK/Z9uQ7IdRMDEJpNERRYmz00KYAQrQyqhAHag6e5Ka8rx+XeX0BNty5vto4HeB/ga4BiHQ12B3rPLGI0KfBW/mAVG48pMhJKYW1BiNw0BZb1iwAq/dLXblBr5HAvyyLmo1YloNX8RqZclHhEv7FiT53fQnsNBGxEhO2RBbCXqHbvbvU+VYprC0FW00YT0+9W7LIaYkFU/Lxj/d0Azy63gmVvFYS1bt4h5lS8lg3BF20qXSWJUiIr2LlVZP8nd9PoaHyUwzsZ5x2ic7xDH1Bpe4MW024+wHm9odIgzXZ727hywFbpiEOn2+HmjYaEjhAdKAlBsChXlfGDylsa+YyV6vLzx8AG7chIzZYXG5n/6myOaBSwJXILCLNkrPyCFcPIoeo7jt0HrE0I9Mtip6eZg5x0Xdatlw+3jVGEOlaN4+LA4cjGgRdwkwZiRCuvE/+DppHOM0ShQZbrZCi/VD6gMDi+SxqyDeAifHf+InQ7dCBLuyUDa/q0fuQFhyH8G5VxxhIO2zENNPtxdXTqKbwOIHBk6l7F2TtXd0VViWNKtJZToPQ6aBWtj+GgnfPNjt18vLUjjp5KwyGN++BxwZ5/a0V/R+RgU23m1qMmGbhRh4rnLbFxoLF3mifp00UvZdNsx85zE4hSSly8
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 344120fa-fc98-47a8-ef70-08dbb5bb0c08
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 07:11:57.1364
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: vx3o8IxpaGLMuNQNk9hu4k2Qn81gNvFJI/md78Wuqi7YSXT+Bbz/BAOM/Wkv7znSZ+KhlKNQsi6acnD4BG6EfA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR03MB6156

On Thu, Sep 14, 2023 at 06:42:03PM +0100, Andrew Cooper wrote:
> On 14/09/2023 4:21 pm, Roger Pau Monne wrote:
> > The current logic to chose the preferred reboot method is based on the mode Xen
> > has been booted into, so if the box is booted from UEFI, the preferred reboot
> > method will be to use the ResetSystem() run time service call.
> >
> > However, that call seems to be widely untested once the firmware has exited
> > boot services, and quite often leads to a result similar to:
> 
> I don't know how true this is.  What Xen does differently to most of the
> rest of the world is not calling SetVirtualAddressMap()

Hm, but that doesn't seem to affect the rest of the run-time services
(at least on this box), it's (just?) ResetSystem() that misbehaves.

I can remove that sentence however, it is more of a guess rather than
a fact.

> 
> >
> > Hardware Dom0 shutdown: rebooting machine
> > ----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
> > CPU:    0
> > RIP:    e008:[<0000000000000017>] 0000000000000017
> > RFLAGS: 0000000000010202   CONTEXT: hypervisor
> > [...]
> > Xen call trace:
> >    [<0000000000000017>] R 0000000000000017
> >    [<ffff83207eff7b50>] S ffff83207eff7b50
> >    [<ffff82d0403525aa>] F machine_restart+0x1da/0x261
> >    [<ffff82d04035263c>] F apic_wait_icr_idle+0/0x37
> >    [<ffff82d040233689>] F smp_call_function_interrupt+0xc7/0xcb
> >    [<ffff82d040352f05>] F call_function_interrupt+0x20/0x34
> >    [<ffff82d04033b0d5>] F do_IRQ+0x150/0x6f3
> >    [<ffff82d0402018c2>] F common_interrupt+0x132/0x140
> >    [<ffff82d040283d33>] F arch/x86/acpi/cpu_idle.c#acpi_idle_do_entry+0x113/0x129
> >    [<ffff82d04028436c>] F arch/x86/acpi/cpu_idle.c#acpi_processor_idle+0x3eb/0x5f7
> >    [<ffff82d04032a549>] F arch/x86/domain.c#idle_loop+0xec/0xee
> >
> > ****************************************
> > Panic on CPU 0:
> > FATAL TRAP: vector = 6 (invalid opcode)
> > ****************************************
> >
> > Which in most cases does lead to a reboot, however that's unreliable.
> >
> > Change the default reboot preference to prefer ACPI over UEFI if available and
> > not in reduced hardware mode.
> >
> > This is in line to what Linux does, so it's unlikely to cause issues on current
> > and future hardware, since there's a much higher chance of vendors testing
> > hardware with Linux rather than Xen.
> >
> > I'm not aware of using ACPI reboot causing issues on boxes that do have
> > properly implemented ResetSystem() methods.
> >
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> Wording aside, Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
> 
> This is a giant embarrassment to Xen, and needs fixing.

Looking at Linux I think we need to add an override for Acer
TravelMate X514-51T to force it to use UEFI, will send v2 with it.

I do wonder if we need to keep the reboot_dmi_table[] entries that
force systems to use ACPI, as it would now be the default?  My
thinking is that it's likely better to keep it just in case we change
the default again in the future.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 07:13:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 07:13:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602911.939732 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh31F-0001xQ-38; Fri, 15 Sep 2023 07:13:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602911.939732; Fri, 15 Sep 2023 07:13:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh31E-0001xJ-Vm; Fri, 15 Sep 2023 07:13:36 +0000
Received: by outflank-mailman (input) for mailman id 602911;
 Fri, 15 Sep 2023 07:13:36 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dO0Y=E7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qh31E-0001xD-2V
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 07:13:36 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0621.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::621])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 623356be-5397-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 09:13:35 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8920.eurprd04.prod.outlook.com (2603:10a6:10:2e3::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Fri, 15 Sep
 2023 07:13:26 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Fri, 15 Sep 2023
 07:13:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 623356be-5397-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ILHj1B7yIDSjIlBGS5Iz/T5cI4sU9DsAVEBPnTK0zm1RxCaBztOrJlPVZAN5dJ7jAJ++JwOlEjbaToWj7Ehsg07cSvDmpGEAHVvrYiZS1QqrKFebtfdUydvnKH9sttxk6Qz0kUth855Ijt0UAaFLplUoFtg48ioX91JmymMe/qDPcylCI/eGmd/lLOCidUNmy8g35Heh0nJjHR8LRfO2WrdkPHI5jfRcUF4hD03SdgrLD/mkOEnF99C8tR+4e+TVyX0Cr7hkWgYw+l5qzRlm0opLMViKHsGUW9pCJNWSllWFK95e2gAhWyZdFFbUH7HmMn31bjbJ+UuB9alrbHUYvQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YZnMPeIa3oX/odIyHVKz6hzMpTaz5xZ5EPoaUsHgEAI=;
 b=YRhpmx5uaZFbMyZov1Cc1xX6mwmqmeIIjWoGCE+w3pypeyAtAZ0XnLvpfQqQtyExPAPRG2ytzGRmwlsIqNQNnnpPnFKJ7Jw5QL8/Y0p6QqgIaZvC9bXp/Mk8+lL4tEcXtS/6XB21r3F16IKgT/LNcLHbHSg06G3OK0X5/zCkRpgdYI3fFITd7INo6WcDjOOgkLJQllJz9SxH4cjyqExH2inFP2DRxi7LUWkpG34fLGWIYTpQL95oqIQ+fB5PVvUn6u9kl5/TQ7n+B8SQ2I4mqVSuv5QdiFw9zqkqIqJOJOdEFZh0WG3PRHVJUi84ETJ49vBGIiMu8hKvXLmP+7fgwQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YZnMPeIa3oX/odIyHVKz6hzMpTaz5xZ5EPoaUsHgEAI=;
 b=TwUejAGPMdxzPxCYCD/iZ41XSfETSMNfxmn1YXQd4VXc79mPVdm6qKup1BbuXmDZddLY/ckuGFstSmiWoT10aeCob/XjVfxSG5ezBqPw6R7iIyRPui3qsdGkX/PjQk12nlQvgGbd1RNj+q7+Rhzvpn7MBClx132R3AKhM3x6lhUXHdWXSyY29kjxT5yoYb8OQU0AoLQ9csMei5BtzbOsfsdtnG9semSk3xNUwTsSTztSQz/9oNkoDYXFQxcIADPLU6B2EsUV1n5yenN3/lAaV1f3+6TBW4iay96oELm5XdmQoVPXi+jrBtR008xpsRax48ADn9TcqI1ZIOANK3X+Rw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b6640dbb-05e5-7114-dc70-012c27dd96e7@suse.com>
Date: Fri, 15 Sep 2023 09:13:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 6/8] x86/entry: Track the IST-ness of an entry for the
 exit paths
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-7-andrew.cooper3@citrix.com>
 <762b58fe-a841-f92c-93a8-77dbb86bf118@suse.com>
 <fb9ec99d-9c76-82ff-9b82-22fff1a62c6c@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <fb9ec99d-9c76-82ff-9b82-22fff1a62c6c@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FRYP281CA0018.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::28)
 To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB8920:EE_
X-MS-Office365-Filtering-Correlation-Id: 2d885782-ba94-439e-6c7e-08dbb5bb4191
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3kFWaBRogcd9IsR5J4tVUn/nfuh14s0irwlFyxEe4smJGS0N+OXwi6r9/QbYwjQeCBpQbPoARBf/zCYhXQFAojZNkn8nLYnTQXVAldbvnK/cG2Ta+x220HYMuQv0aIOAIFbSgE2mPuwUfOHIFUPuRO9TwznuKUrcSqJyqhAgZdJpL7nfwe9v+h6zgA358GOpHsVXeo6qDciERNH9Nm3WedO6JwqXdiOqbyvZamtZ01FPy/poMYXoVvH54MZYHxxxKF/oCxYVScG/FLNX1C8dUpETNLF8RgXTO3CM+qiLgbCXDq/kR3dGYPYEi4ShwvLsANNkGP7FbgKHVos8d0pZQAjYLHdBMZMoO9cqu2gCwDxAlLP0g3asbo0kxskEwi8fpOHnMsSky0JiAyJaNo8E4fjtKtbdXdRoV6gZ7M1znhNBQj2k1bzL/Mg3xg+chwkDff6Ka5ZRq1MqxoZQtywh0JLbC56OCcgBMkirjbhx4snUuwpBaUuzngk0dD/T69ADNz1YqwtWt3Obktu23kGLnjRnGAJHOyHT7AzfG2CKaf4AJgo5bRJsmfkxcSo1DBbVZsI+cSjx3dmUrk1f6Q3rxfMKRs0fIxex3biXOXx26M/lm9PU2lBZe2cwHwwKU3CTjRKvl01DF7iQulP4vd2DFw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(376002)(366004)(346002)(396003)(1800799009)(451199024)(186009)(6506007)(36756003)(53546011)(26005)(31696002)(86362001)(66946007)(6512007)(66556008)(83380400001)(2906002)(38100700002)(478600001)(6486002)(2616005)(31686004)(5660300002)(54906003)(66476007)(6916009)(316002)(4326008)(8676002)(41300700001)(8936002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eGpmNVAydUV6TC9BZFZpQmgwSmNyVm1BQzBHbUplNS8yOXZkTDNEZDFiTnYx?=
 =?utf-8?B?WFhtOERmaTNVVXFxTDZpSUo3UzFhSzJETno5T0t4U1BOT0FpVDJsQ1dUU2V3?=
 =?utf-8?B?YUJrRGZWSG5UbGdSK3lmZUY3ZHZGRFp6b3k4YWhNeXdQRVRncDhPWHdmNkNx?=
 =?utf-8?B?YUV3eVBYRCtHaTFYMFhueEllL2RmcTAyUWlkUXlCekVhc2t6RmlVeTlWOFlH?=
 =?utf-8?B?ZnBVdTFCWE1iNmp0bmZjNkRTTnhnQ01qdkYzeGJSMHFONUhXSmRGenpqMnFx?=
 =?utf-8?B?NTRwbjZnVFhjM3NIMGYxWXhJdURXYjFmNEl3QXBZbnRIdzg1K3ZLeHU1OFVI?=
 =?utf-8?B?RVZPMzhRS1laWXVocUY0YTV0WUhqOVB2SlRTb2VkNURNNjhWbEl5UGp0ZFla?=
 =?utf-8?B?ejM3aXVBMEJHenViYWZFd2pBeFdZTVgwOGRLT1VaODRsOFBGY3ZVQ3RGYlpM?=
 =?utf-8?B?R2lVN1A4K0N2L2tHS0l3VFdweUtTbmJRaWkyZElkSDlPZ0RuOUdodlB3eHlU?=
 =?utf-8?B?Qkx3TGZJQkNlTzFZZ3RmN25lZGRxWWxuOFZMUEFPT2FXNVBYb0RPQnZtZHFt?=
 =?utf-8?B?RURKVC9mUGhoclptZGE4ZzNqejlNcnFHOVJ6V2ROOWtLN0lHenk3Z0lQWmll?=
 =?utf-8?B?ZzYwYWFTZ0VHdlFGem5XakVWbWMwaytndW5kbnJ4R0UzN1RrZGFEQThGUEl2?=
 =?utf-8?B?c1pzMEVzekpPYzNLZmsxbkM2d3d1M0ErRzZ5UnNWNjRpSGE1OWlpMjJWTEF3?=
 =?utf-8?B?UEp6YWpERk41aldQaVp0VjhzRjhhNVEwYUlzMjEvc2JyeTk2V2NiMkUzbWY5?=
 =?utf-8?B?WU9Ec1lhWHp3c0JJVG9McVRzeFdhOXgzZVhZME5CNFQzM1p2N3d3UUEreEU4?=
 =?utf-8?B?a2wveFhzRFVPSjc4akZIaWFxRTdBWHVreHZEcUpmRnJ6aktGVnVEWWpKT3k4?=
 =?utf-8?B?bkxjYVhydmlzWWVhNXZ2Q2NmZ3lQL2Nqc2NKMkc3SFFqK2paREtmNTczdDBN?=
 =?utf-8?B?a0FRVGE2UTZ0RkorK2hnNGd2TGlyQTBoNWZEdStJZVpiZmROR1RudHBpbXpB?=
 =?utf-8?B?S0JReGUzUEhPcFFtc0dSTk9YWGdrajFZeXBZcFJWa041VVM5Q2NlMjU1WHpI?=
 =?utf-8?B?T1VuZllYdEx0KzhmM1h4cWpNQTdKNkJ4VEZZeEc0VkxSWG56dzhkZlNwbWhN?=
 =?utf-8?B?ajJFN1U3ZG1vQ1k2d280bExZWnk4bHVKblJTWnpVSG9WU0RGTjZMSURkc3ND?=
 =?utf-8?B?OXBRMkxxT1A2eHV1Y0cvOElwWnlQQmQ0dW9XNEdMa29UTWlVcmo2V1cxem84?=
 =?utf-8?B?UXRNdkl1MEIxczA1bjNlY0FuTnEyTDFtNGJ0ck5vTGZyQ3g4c2pFdHpUNzZz?=
 =?utf-8?B?TjZNWUgzelVhMm53ZU8rT3pBQVRQZU9KaENTcXlDbk0xSWh6eVNWWXB1SlhE?=
 =?utf-8?B?TWw3WDRWb1Zrdy9ySGJtT0VoMDd5V2dLZk5jQ1BWRC8wYTY3ZFU1Vyt2TEJW?=
 =?utf-8?B?SzV1d2wyVzNibnZmVUVITTNNa0FSL2hyVWJRcThzUFA5a3RMWGMzQ1BXTE5K?=
 =?utf-8?B?MFkwcTNlWnZCZ09TS2VTRC9qWVozcnZWc0ZrTkdQdjNBYVE1T0JyY3BIcDdn?=
 =?utf-8?B?Ykw3bHFGUmloTzV3elZlRURjQldEenFDWnY4bWJ6eDk3bW1Ga0FqcjltNm1p?=
 =?utf-8?B?OGI5NjU3d3UrTDhWU0hXNWJoNHR1dis1MEcvbzBMeWFORmY5eEpZRklGbWdQ?=
 =?utf-8?B?MG9YVVY5T3VxaEY1Mmd1OUlzM0RCYTVmQytxeExPT2d0NWxaN3oyS1JOc3J3?=
 =?utf-8?B?OUpFK0ppWVNNd2p0QlBUT1dlcFcxdmtnUU0rUys1LzFJNGxJcWlyd2k0bldv?=
 =?utf-8?B?TDlxV0t4T2Q4T2lGeUlYcEtjR1psKzBxMnJMM29oU3E0clY4UWIvL2NLT1hq?=
 =?utf-8?B?aFJKVjUwV0lERkoyYTdzNE9hZnZEU01leFAvelp4SWVxMHhaVjNlV1FsTkQv?=
 =?utf-8?B?N2RqdHh5TlBTaFRlNDBFeUsvOHY0eDZ0SzE3MkF4ZVBDNDFsRmZ0Z0paZWZ6?=
 =?utf-8?B?b093amtVclFvT3YwZzNQWm96eStRcElwcjB3THBHRUVIL09yRjJRUnhBM2N6?=
 =?utf-8?Q?u0K90lRE9f163svnVe9/CZEUF?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2d885782-ba94-439e-6c7e-08dbb5bb4191
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 07:13:26.8091
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Os3lqvIEqzXhpzfZ6bd7v3cNiIdc4y/MjMnjCXUinYm9t8XoSNl7FYbaHSJGCSveSgvmwTtYJ9qAju7kGR7nYA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8920

On 14.09.2023 21:44, Andrew Cooper wrote:
> On 14/09/2023 10:32 am, Jan Beulich wrote:
>> On 13.09.2023 22:27, Andrew Cooper wrote:
>>> --- a/xen/arch/x86/x86_64/compat/entry.S
>>> +++ b/xen/arch/x86/x86_64/compat/entry.S
>>> @@ -117,8 +117,15 @@ compat_process_trap:
>>>          call  compat_create_bounce_frame
>>>          jmp   compat_test_all_events
>>>  
>>> -/* %rbx: struct vcpu, interrupts disabled */
>>> +/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
>>>  ENTRY(compat_restore_all_guest)
>>> +
>>> +#ifdef CONFIG_DEBUG
>>> +        mov   %rsp, %rdi
>>> +        mov   %r12, %rsi
>>> +        call  check_ist_exit
>>> +#endif
>>> +
>>>          ASSERT_INTERRUPTS_DISABLED
>>>          mov   $~(X86_EFLAGS_IOPL | X86_EFLAGS_VM), %r11d
>>>          and   UREGS_eflags(%rsp),%r11d
>> Without having peeked ahead, is there any use of %r12 going to appear
>> on this path? I thought it's only going to be restore_all_xen?
> 
> For now, we only need to change behaviour based on ist_exit in
> restore_all_xen.
> 
> But, we do get here in IST context, and I'm not interested in having to
> re-do the analysis to determine if this is safe.  ist_exit is a global
> property of exiting Xen, so should be kept correct from the outset.

Would be nice to mention this just-in-case aspect in the description.

>>> --- a/xen/arch/x86/x86_64/entry.S
>>> +++ b/xen/arch/x86/x86_64/entry.S
>>> @@ -142,10 +142,16 @@ process_trap:
>>>  
>>>          .section .text.entry, "ax", @progbits
>>>  
>>> -/* %rbx: struct vcpu, interrupts disabled */
>>> +/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
>>>  restore_all_guest:
>>> -        ASSERT_INTERRUPTS_DISABLED
>>>  
>>> +#ifdef CONFIG_DEBUG
>>> +        mov   %rsp, %rdi
>>> +        mov   %r12, %rsi
>>> +        call  check_ist_exit
>>> +#endif
>>> +
>>> +        ASSERT_INTERRUPTS_DISABLED
>>>          /* Stash guest SPEC_CTRL value while we can read struct vcpu. */
>>>          mov VCPU_arch_msrs(%rbx), %rdx
>>>          mov VCPUMSR_spec_ctrl_raw(%rdx), %r15d
>> Even here I don't think I see a need for the addition. Plus if the check
>> is warranted here, is it really necessary for it to live ahead of the
>> interrupts-disabled check?
> 
> What makes you think there is a relevance to the order of two assertions
> in fully irqs-off code?

You explicitly making it more churn than strictly needed. IOW I was
simply wondering whether I was overlooking some aspect.

> The checks are in the same order as the comment stating the invariants.

If that's the only criteria, then okay (but still slightly odd to
see more churn than necessary).

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 07:15:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 07:15:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602918.939741 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh33R-0002bZ-I2; Fri, 15 Sep 2023 07:15:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602918.939741; Fri, 15 Sep 2023 07:15:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh33R-0002bS-FI; Fri, 15 Sep 2023 07:15:53 +0000
Received: by outflank-mailman (input) for mailman id 602918;
 Fri, 15 Sep 2023 07:15:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dO0Y=E7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qh33Q-0002bI-6U
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 07:15:52 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on062e.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::62e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b369cd9b-5397-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 09:15:51 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8920.eurprd04.prod.outlook.com (2603:10a6:10:2e3::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Fri, 15 Sep
 2023 07:15:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Fri, 15 Sep 2023
 07:15:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b369cd9b-5397-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=izHCyVxamaxCj6pHD4T1ID5/AvpLESLVRBrWEEisZkwnpmGDFtalOmWm/lJFMwKPos7jIvOFt9AGRoMadZZQ6Io1GmGoPWWwB0zc1lI6KYMnkEgZIspqrdN1EcltmnZZKnALPGTUsnWB/TH1fucReA/Zuvl0jlnrTycDKVVv8Vw1+baD6FznA2bIEyjj8KcwmTOKQN//Vmkw8J0PHXhWejC1Wo2GKJktcuhayIKgvSbNj70FQmkem6xXEusmz7ujXqSrUlv62GO8rRVBo3vA7PROyQsozk4zbQqC4/CFme2nx1/Veqg+uyuLVLxP/B3Ttwts5mddE7JtFoBEbimNaA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=4e5Og+eLrLFQ6KmXFJKqQygHyGRdff0dqPUl4tRZbFc=;
 b=oHpagLHe6vS6/TBFaRHrqZ3wNMTtmlDCkGEyabJAjTC6wdj0jnyg3ILuixXHYPSNYGk32T3mT9InLSBxTHEERYtdX2Essjg5m4TauQBPVi2X/MVWyNQa0UB7j5lESvNlh+cFwNQXloq0yLu8OYtrULkkSdevChmHfT0sKORiVJ1Z9AKY1LAXltZyt1lATJg2Ph2TC+bK1dUoT13JwZpO9THXx/fJKPXKGHZswbvvFMY0biqyvUYXSUsZ3pG+pJTIg0JMFdSZqAzVmDdO9CgUGvxR/yXCzGKbbse0uc0wLne5IC84aDtB6eBHYses02qs2b2o8UCa4YBsXyICFuZUDg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4e5Og+eLrLFQ6KmXFJKqQygHyGRdff0dqPUl4tRZbFc=;
 b=QZTifNA33VOsi81fF9d2TCDPsc1+ltGG1wOYsYQsoTMA3sWgRVoi31b9qiQ6kvIUjUN1L1Kgkqbja7JRMUGGH/WWizGnS51wH5pAS0E0sIOSednQHDibb3ETEKMzWaEobLZnsWE1qna/gqJ0eqVeyjiAcjK/xBC78JirvnOCUTD5I9v6n8QtK5wPAInjiPCNKQzNTg6hIFRL8y4WigodvDxtpgtjYMM2Kcv9aPVba7fQPdjaCzitUhUTt8XQVvELskLXl8HGCI+ZOm3sli5B13vxXdueKYMPiW1eoPJNVfyR/IUMWR0PnLvgTXXe6BSA5xR94zXipYvyXONxDLGYDQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7b4c0bfd-3eb2-3d0a-859a-b94b12397876@suse.com>
Date: Fri, 15 Sep 2023 09:15:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 7/8] x86/spec-ctrl: Issue VERW during IST exit to Xen
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-8-andrew.cooper3@citrix.com>
 <f771260c-feed-9183-0c0c-308f517e09b4@suse.com>
 <22864483-9cb8-7220-f82e-883fd2ef617a@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <22864483-9cb8-7220-f82e-883fd2ef617a@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0168.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a0::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB8920:EE_
X-MS-Office365-Filtering-Correlation-Id: ac9f3502-a860-45a2-ea51-08dbb5bb968d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	F5H7byI/leFfl45Y9MBIfwcvp23be/MJJk6W21i2WTk0d0/wCx3mmEW8QIsM+zTFhINlddfKeQCw3VJfY20vTnabTZQSxDmX8CsOFWzQ7f/nxUmNnmWLoogwBJhGsexgZUWAyUaN3ZEHpHAI3WeW8mc3AgndPVQF5Flt+kK8oJ66WdtQph9hP4CyUDemkdVp1xzp5O1Xt0BIOYnn9ih6m3r0wBfOZ92m8T1sT0+GGwB0fLwDbWNA6UyugFq686YlmPPSYNLKy8txntrEOfWYdrbwTDIhi2nDsPvEVlT9Dccm8Zm1xccky11cqwun1dcYnJ8zTnTgMxK5XNfMlPBN0BSPPfhTZdcYC1nVA3s+yDcbf8OErKB8fHVgtcd5owkUaNzb09LSGIUiYdYn/F2dSzR5qxCEGADGXcsk1X0+tEM7GhBF5tDfEzG47M5bShfbKHr/LkMUVpaFdKCa9JTS/cWm6QJIk2DxPQKL0Sy4IrvpewDGX/elQh7rormXAJVrtpalS4OFr5qevo1jkVysCUeUcTykymXP2ROA7Au7zUOTtAITt4yUuh6n0X2P9eQlnyZV9IDieiR7OwNDZe8RetSsD3xYqHhonKbfYy9hBr2jgJkqUIAn84iuCuR20hdeRFMN4A5fPFjhzRHUYxtayQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(376002)(366004)(346002)(396003)(1800799009)(451199024)(186009)(6506007)(36756003)(53546011)(26005)(31696002)(86362001)(66946007)(6512007)(66556008)(83380400001)(2906002)(38100700002)(478600001)(6486002)(2616005)(31686004)(5660300002)(54906003)(66476007)(6916009)(316002)(4326008)(8676002)(41300700001)(8936002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VGt4bnpxMkhMTEwxbzBkZ09BbGt4cFYyb1J2VDBBUFMvckpMemYxNnN3bG9q?=
 =?utf-8?B?aGE0WERsck5iV3VHVGwxZU1WU1djbzdUQlA0YnZxNkNzNFpGMXFuVnR6UWVT?=
 =?utf-8?B?OEtSZzRxc0VRUHUxVVAzSWpoM2UrTzEzQml5aWYzTm1HRXBOdUQyRjJZNS9G?=
 =?utf-8?B?d2p6OFd1MGVRcTVYOGQ1LzJEdXJ0WGNwY05ZbkNpZXd1ZlBMVFY0bk9pd2lr?=
 =?utf-8?B?bVhEeG9YdUczUG9BUFVTSmZNR2xUK3BveXNmMzFtYldLVTNXeGhaWkc0NGI0?=
 =?utf-8?B?c3BKTUlUSFA2MVNBekJ0YzFsRGpNZzVYSGxvMEpFYko5SVdhZnpFbEp4V1Ur?=
 =?utf-8?B?dnBDbTRtbXo1MWM2TGN5UkZEaTcvY29PWmQvUlNoa1FZZVZHbTFrVzlzZytC?=
 =?utf-8?B?YUl1aGNwUkxtZmFZWXBXcmh6azh5bWVwYnFmUCtqajBlT3FWRFNwUjhRam9t?=
 =?utf-8?B?V1FLSnNyY2VLaTJVMFpqUEt6Rmd0SDY1WkV3STdqbGJMWXRMYUU1SXp2Myt1?=
 =?utf-8?B?M09xY0EvaFM1WWdiYXlabU5sZ1AvcDNFelJ4dnZPOFdGbGZDWU5ZRDhOV25Q?=
 =?utf-8?B?aWF2WVRGdld1U2FvL1ZMOFlHMkpsYU5kQiswdzFEVWtOOFFUUWgvRWlISlhJ?=
 =?utf-8?B?bmRqUXp5ZXZ6cTZIcllxVmVnR1I0SUdDbVZjZEVkUmxNOVo2aTVqcXJ3YVF2?=
 =?utf-8?B?WVZnd2ZsQTIxZXlnNWUzaGlQenZrclk2RGszcEkwV2xQbS9oWWJFNnJlbVZz?=
 =?utf-8?B?UWt2QWlERjZMSThyZVhKbnVqQkFHQndLa3RZK1JsQkhBekVIRUJqTlZyTWJn?=
 =?utf-8?B?SXI4ZnJseUJ4ZjhnRURYR1EyMElsRDdLVllmM3lha1Q4T2VKRDZxU29mRHlU?=
 =?utf-8?B?YmNHa0p0bDhpUGxJODU3ZFFQYnhPWFgwbWZDWHYyaUh0Mys2Mmd2bTg5TUxB?=
 =?utf-8?B?eXpsNW56RnNZV2RPNnp4Z0Y4MUtjL2RuMFM0YlFpMXI4SG1XSDdnZnhxWmtO?=
 =?utf-8?B?bkx6Y3UraFpvVGl2VEo2Z2l4UDlWSWVjVldQRlIwUlN4TTFVU285YVRPQkRk?=
 =?utf-8?B?bi9kdStRWjZrSjUrYzhKNHdNVWZSeWZwOFR3allVRWtaTWJ6dXZBNHhhbkcy?=
 =?utf-8?B?Mkh5b1MxcWZSWmQ0cG9Kd1lpRkZUQ0d2eGRXN09qeWhrVit6VnFHcFFjMW50?=
 =?utf-8?B?dFZET3QrR05ocG9KUEpEYlBIQmROQlEwdjN0SlpFM1JHTEJuZUNXSXFSRnIx?=
 =?utf-8?B?cVN4OUdhWmtEbE9uV3F2N0krTWZWU255dmlObFFEZ2VUc0tkVklXdlNzN0x6?=
 =?utf-8?B?QmdNS1IyenVGS2FYRFlja3BQM2xBTFhFQVpZdzV3cnlUL3pmY1dzbVZqT3Qv?=
 =?utf-8?B?V3F6WHF3Q1dTKy9nV2NIZFAxS1dqRWJ6NU4zN0xHaXA1MW5pRHU1ckdHYzFE?=
 =?utf-8?B?S1QxSndCa1BjOFNYdnB1QVBOU3hBWDl4cmdTbG0zQkFmM2VRYmdnNXdoZXdh?=
 =?utf-8?B?eTdyaVU2RnJqRC8zLzVBVUtzeXYvOGVrVzFwVVpHQ1NWY2c5ZlRqSzcreFdN?=
 =?utf-8?B?Si93eW1ueFVnRFJJd2V5TVdZaytoaHcrMk5pd0xYSVNsZEpReGx2dk0zT1Ft?=
 =?utf-8?B?VzB4OU0rUFg3TDgwUjdvNEVXdERKMjN4MWRsTnFLeWwxaHZESXNQNEZCNVR5?=
 =?utf-8?B?MFpmaWR3Kzd3SXJNYVRweHc5M3JJME5mZ0p0V2ltQ0lFNFZud3hiZ1pqQ05X?=
 =?utf-8?B?L2lONFg5VEUyNklKeDBoODRVd0l6L2NuUkJUR3RzaWJXUzlxRjhLd0NKdXYy?=
 =?utf-8?B?VXVaKy9TNDhHSmxxVnVMeVMyS0dCTXlzUkZzSW5iVzBKRHhJL09iZXZzaDhM?=
 =?utf-8?B?cWpQU1owSDlRN1FBVklnN3UySUxXSUlzZFVBTnUvbzRvVDFmbitRZVh2anJM?=
 =?utf-8?B?Q0RVOEJ6L2dva1BWQUp6M0h1MHRKR2xqWFMvNjlSM0VDeW5LWlRtUTBlbnhE?=
 =?utf-8?B?dnRnNGpWekxOUUNuVm12RGFPTDdTSWY4ejZnOGpFVDZpVUtLWUJoYUY4YWdV?=
 =?utf-8?B?RkNReVRST0xwYzFwcmdGa1lwd29jUzdRK1o3anhUeDFKdmVJUzVTSnJZWU11?=
 =?utf-8?Q?JmKBCY0VfyS9JD4TQE0S7h3hR?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ac9f3502-a860-45a2-ea51-08dbb5bb968d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 07:15:49.3831
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: mBpWmBTewtLJI0miwRwLaAnLkB2DIMn2iQjMNh/1vcZ1ZDiJmbNBBwIlTIXPuTw2sHZ+II9QXaGau5vh5ukF5g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8920

On 14.09.2023 21:49, Andrew Cooper wrote:
> On 14/09/2023 11:01 am, Jan Beulich wrote:
>> On 13.09.2023 22:27, Andrew Cooper wrote:
>>> There is a corner case where e.g. an NMI hitting an exit-to-guest path after
>>> SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
>>> flush to scrub potentially sensitive data from uarch buffers.
>>>
>>> In order to compensate, issue VERW when exiting to Xen from an IST entry.
>>>
>>> SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
>>> and we're about to add a third.  Load the field into %ebx, and list the
>>> register as clobbered.
>>>
>>> %r12 has been arranged to be the ist_exit signal, so add this as an input
>>> dependency and use it to identify when to issue a VERW.
>>>
>>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> While looking technically okay, I still have a couple of remarks:
>>
>>> --- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
>>> +++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
>>> @@ -344,10 +344,12 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>>>   */
>>>  .macro SPEC_CTRL_EXIT_TO_XEN
>>>  /*
>>> - * Requires %r14=stack_end
>>> - * Clobbers %rax, %rcx, %rdx
>>> + * Requires %r12=ist_exit, %r14=stack_end
>>> + * Clobbers %rax, %rbx, %rcx, %rdx
>> While I'd generally be a little concerned of the growing dependency and
>> clobber lists, there being a single use site makes this pretty okay. The
>> macro invocation being immediately followed by RESTORE_ALL effectively
>> means we can clobber almost everything here.
>>
>> As to register usage and my comment on patch 5: There's no real need
>> to switch %rbx to %r14 there if I'm not mistaken
> 
> As said, it's about consistency of the helpers.

While I'm not entirely happy with this, ...

>>> @@ -367,8 +369,16 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>>>  
>>>  .L\@_skip_sc_msr:
>>>  
>>> -    /* TODO VERW */
>>> +    test %r12, %r12
>>> +    jz .L\@_skip_ist_exit
>>> +
>>> +    /* Logically DO_SPEC_CTRL_COND_VERW but without the %rsp=cpuinfo dependency */
>>> +    testb $SCF_verw, %bl
>>> +    jz .L\@_verw_skip
>>> +    verw STACK_CPUINFO_FIELD(verw_sel)(%r14)
>>> +.L\@_verw_skip:
>> Nit: .L\@_skip_verw would be more consistent with the other label names.
> 
> So it would.  I'll tweak.

... then
Reviewed-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 07:39:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 07:39:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602928.939752 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh3QS-0000DR-F0; Fri, 15 Sep 2023 07:39:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602928.939752; Fri, 15 Sep 2023 07:39:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh3QS-0000DK-BF; Fri, 15 Sep 2023 07:39:40 +0000
Received: by outflank-mailman (input) for mailman id 602928;
 Fri, 15 Sep 2023 07:39:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dO0Y=E7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qh3QR-0000DE-KB
 for xen-devel@lists.xen.org; Fri, 15 Sep 2023 07:39:39 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20611.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::611])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 046477e9-539b-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 09:39:36 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8118.eurprd04.prod.outlook.com (2603:10a6:20b:3f2::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Fri, 15 Sep
 2023 07:39:34 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Fri, 15 Sep 2023
 07:39:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 046477e9-539b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=V1l3VI/uWF0Laa4DY6rze5xdw8vwBfkpkIXQXN3Qw4pNJiS+z3uFWDbNhBZEEqj3XP6iTw8aPO8PKnIvWqaVZfHLUlOdQ0o9eO6lnVeMuxm4/OLN4WEc0W6uiYB4qZ5E8plMkU6RtFXmqsrmKsyC367fHYtWCC5EogbGDycoFuVKmSF/Z0vS4yWVbpsLk8YAsWpBkkKD72L9iiowSfuZ1wY58LKhJv8/TFCy4GT5QYkheTXF1ZLuCvnQ5716f0slsgyKcHtub6ZbpXVdXK0SmQ7WAP9MvBhC3fHtv6IDrT/mzTGt4D5VYWJ3UnqvFfL3efBV+tu3XaoYyDLsZHgQ2g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xUbO3jjyMqfCYlCYF2jaaZHG/l3Wz9RYmwqLwnPxhBc=;
 b=k78y4YyipTq70qDBGQ7ui4/RI6LivlLo2+tqwy85O1dzkTZGRH7jP6r8B+XQmOUgJI+rnJf3xoOyTj2sBFA726swUqJ6zFIB51oXDpIs1lo/5vekZ94Rh7Lu4XTAtP6wRI+3efOniS5HN/wdzt+r8272KTuLQ0fAPX8jm7WyXxl92oRnnqJ5Co1A3JcvoNVIvfWe8wZne35d7HAMIs8GHdte51mLsfh4xVyqWz15r06Ku8STIl9aWD7jkVSAcMVpO4ywpPWzTDknuJglE8h8TWL/giZt6ysq8x2XZ8brb6jqFYxAyRUuJdArurLZiVE9Ltet50tMaItd1Hjh7yUUoQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xUbO3jjyMqfCYlCYF2jaaZHG/l3Wz9RYmwqLwnPxhBc=;
 b=vmrNLErYKp9Ozk+EIrIWcwrtz/eHfZh8PPPTGxEVu2obGhjZaRX0QoS7xA2L8y7y1gxTwglCdm7VNnc9NRC6GJpsGyQ6iNplUHRsR84toGZ8/18NMSCZb2evPk35J55ChPZUu+BgD/TF0m/wqp3lA3hcDEooBX1Ldh3GnL0vLCIv3+deJeWlmeyb6uT9HoXyeTRCYnnrAL3PYK02G48QjXqX/oVKfu1vivdHebEp7TG55HM3MmonJlUkdi+2OqiPYCDrIDGMvm/U0agoZ44d6TxdpuXd0b+RKnWWYkOMTGwoOcQ6zKk3wu5gDEchfCEujWu2lITX5qLKrDtcdJey4w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3d5312cb-07db-a765-896d-b80e7f5f8bf8@suse.com>
Date: Fri, 15 Sep 2023 09:39:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: 4.8-unstable: building firmware/hvmloader errors in Bookworm with
 gcc-12.2
Content-Language: en-US
To: Pry Mar <pryorm09@gmail.com>
References: <CAHnBbQ_KTWXQiw7PuxzsiH563uCCNaJL6+VkmcK+V_n5M8RaPA@mail.gmail.com>
Cc: xen-devel <xen-devel@lists.xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <CAHnBbQ_KTWXQiw7PuxzsiH563uCCNaJL6+VkmcK+V_n5M8RaPA@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0139.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:95::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8118:EE_
X-MS-Office365-Filtering-Correlation-Id: 6ce661b6-3142-42d9-4bb7-08dbb5bee7f6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	fehgxMmAJx20z0AkjcbCnOvUGmhiW37JDPAIu3g5DrVjj1lQrAmvSbDfUu74BKySw+GknE/KFd3q1N8eDFM7xbAvW5gtckQsmGqFe013QZOb6yL+nve7bGL8U3yCqvVPVPuH2JFKPmwYOAxo2MNqET4iZKFp3Bs24qa04verXX96RKysYAhOaMxhaGE9c6S3o5Q9vk3laHh/UhEilsflVQAyz23fBMZZ46CMCtaC11Jpcrn7fRIFrCFOpTyBKsAmZWrFQ7iP46hc/H51X6LM4ITRP1hYuB2qwHRCLIk+O91Agltt45CNH88QImWUJHLyN3acjvWRvMakhDUbQf+Mq3lsTVwXnzhuLvfuO3ThSEoexfmMZ8/hSfENph3basVUFIbhjq+PQNlNNMCPSQ8O6wrmxjXPi19xn9pcbCJVNyHi+VVJUVusivwAU1ewsvbwmpmVPBya9Er/XVOmD5tu1tmRP9B759I90/kk/3ofRzgvV2YP510mQ1n9O4PY6ppTwsd6TPTBChc8awg6yNs/toacFsaEx5oivhRLobsu2scfbZM/z64JdoNsqMTF0oEyfdh5od1cHPkjQYGAf1ljvUwKLjJp7JlbZwuS2GNZJBEKFrXD5nHQXX/pdbjKiDixt3vT9gCxBfx5af6Ril7ySw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(366004)(396003)(39860400002)(346002)(1800799009)(186009)(451199024)(41300700001)(86362001)(66946007)(6916009)(316002)(66556008)(66476007)(478600001)(38100700002)(36756003)(2906002)(31696002)(5660300002)(4326008)(8936002)(8676002)(26005)(2616005)(31686004)(6486002)(83380400001)(53546011)(6506007)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NkpXR1Y4anREQjczVDFaYnYrbFN3RlNwR2dXL0FyV29MTDF1S0NwNUJtWXBa?=
 =?utf-8?B?d1lOQzZMQ1BQTHVkRW9FN0syREFYSVlHdnI5UGFrK1JiQ3I5VnR1VElOZitO?=
 =?utf-8?B?TmNBMDNYZkNMZnVuNDZCTG1Pd1N6L1RPd2Q3ZjY3VS9RT1N1dEpxMHV2aGd4?=
 =?utf-8?B?LzhZYjZCM2doQ01tSWh2TnRlT0pwZldkVE03VUsxMkdSWlFlMTFXcVFwVkRN?=
 =?utf-8?B?cUJNQXBoZlU1WEVRU0U3OHhXZGcwdlE4SE5Wb0pnOUE5UkZ4cHBLYTlXU01K?=
 =?utf-8?B?SzlsQk83VnNSSEVpQWJwVGF5K0Y5VExlOTcrRFFqNG9BRktBSDEvN3hvVmNM?=
 =?utf-8?B?WUxINzhLVVNCVXFzeVVNWHAra1hZRjltbHV5UWhaUnhWYVNLQUhYY0x2RCtm?=
 =?utf-8?B?aFFvd3lPMmJ2MmEzMGUvbDJIRWc0UXFPVHBHTkdkcE5BOHlkc013ZWljMWU3?=
 =?utf-8?B?TWpjYnVmd2ZCcWgwYWNuRk1tU3lWRzB6ZitFNVhIS2UwMnVFeU51V0F6clRj?=
 =?utf-8?B?ejFLRkxROFM3ZHRxUUR1SE1nUEF6SWpNWXhmM1RTa3dqQlRKUTl3aThyUXd3?=
 =?utf-8?B?VjhYK055anB0NnFkZ25zTUpaMG9qM1d2TE5JSkhoR3ZmNmxZRURVa01uUEJX?=
 =?utf-8?B?ZUoxRUNsVDhMZVk2bTVCV0dEY2FHenNDV25DaUdrSktpdkl2ZWFUMnIvQk1x?=
 =?utf-8?B?RUxCNWpXSHhSYmRJM0xwZHdodFhWVmFEMXovdHVDdXVONXVta2JkMzh2ODFu?=
 =?utf-8?B?NGVvN2tqTm1TNzZLRnJndGpWWHJyTVd4eWtFZ2dSMFVDSDJnNTk1UzNmVzBZ?=
 =?utf-8?B?aUsxeVZqd09FaTFZQldPeVAvYlJTakd5eHpsVU90YWQ3SkE1emZQZ0xhQmVm?=
 =?utf-8?B?REpBUGFheWFGRzNPQWkyRUVqQjhYN0Q0ZitDaUJJRTZ0SnA2YU9UWlFBRExq?=
 =?utf-8?B?M1BaWnptVzlheXcyL0VMTkltQnJvYkpkaWptK3JZMnBrWStCOHZsZzAvYU9P?=
 =?utf-8?B?blkvYXJVbHoxemMyaW1DZ2xoZVBuRzJFT2I1WjdiMHpRZGxGWE1peUtWWi9H?=
 =?utf-8?B?N1BNbkRxTHNsMVFOMkJHRVgwUGtVb2NrdWJqSm1tWlUraUhma0RJWW5ZeDJn?=
 =?utf-8?B?ejdNRjloaXZBS0dwejR3YU04MWFOaTZGYW9DeDZ2andHMlJBUzNET3FpcXlL?=
 =?utf-8?B?WC9BWTZFeE0zQXR6VFhOd0dNN3B4dUhOTitIeWpJLzJ1SjRtYXJOUGNvMS90?=
 =?utf-8?B?ZmxjTjA3RUlYWW5KR1FQSDhBNTNLZmpoSVozUm9NajZRK2lKbll1bnpCVW5S?=
 =?utf-8?B?WTNCU0VWdGhvUjNkOEdqOFRyWXlZeFZnSDFSNDY2Z2Q3dmdQeU8vRGYyK3cw?=
 =?utf-8?B?S09xc3gwbDhaU3c5azU1Zm1vQXMxa0t2b1BRdHU5MEt2L1AwaTNpb2JaWjZj?=
 =?utf-8?B?KzFTMjRWK056YnRpTnhYdFl4Z2srem43UlBKNXpFZDNCckhWeG9IelNpS01o?=
 =?utf-8?B?YzUvZnJWQkhWcGpRUVVnN0hKTUorZWNGTi8vQ1p1K2FYOUpUU0NYZzc5b2FK?=
 =?utf-8?B?S1NFaU8zc2VVYlIzR1JXLy9WTWIwcCtRbUxzUElFNXBPTkpGOVlsd1Z5Njd5?=
 =?utf-8?B?UEZ6Ni9zdHBpUDg2dmNBaVNzK0RVMjgweXM1TktHS1hWR2hSMkNyMXN1dWRM?=
 =?utf-8?B?SDNWanlzb0RuN0F2ZVg2OW5QM053NnAzaHNKSGhwNDJHQkJOQ0lmby80Nkw4?=
 =?utf-8?B?bmpIeFFkZFltRkR5NWlySEtDQmxHZlNoc2NkakZmellFQjBSWEx6aDJ6YzU1?=
 =?utf-8?B?NnpiZitISkwzQ2V2WWwvMzBGckZQajcxR0gwRGhBYkhLMXhpYzRjejRNVGtS?=
 =?utf-8?B?YXg4U1F2enN4NklYcU1jWFlXSndaSzJlWEVSQTAwS1FDcTM5UFJadW5JeGI1?=
 =?utf-8?B?Nno3S3BhOEJRY0NUSS9BWk8yRW4wMXRuUHpHb1pxeVJHeGVaS0JxZk90K1lD?=
 =?utf-8?B?dTFDZzRjUHJIczJHbFNqZlNaVE83V2gzSXdQVkRPTFdtRmQzazhIN0xTZHp4?=
 =?utf-8?B?TlQwSXc0YTlrQ2NrenZJNjVLTWJrQjhkbFprRDM2ck4rUG9wQWlibTd6Q0Nq?=
 =?utf-8?Q?QCBFo7RnaUusFEcK61BYW1SCo?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6ce661b6-3142-42d9-4bb7-08dbb5bee7f6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 07:39:34.4645
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: kN5RgA8tPPCE2vbnAAyWXpu5YpSBwd5hI4CQIkhhnFa5xntLN5HH4N3RYcFgOf2jDnTRqY9G8vplQLie0qyxqA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8118

On 14.09.2023 22:53, Pry Mar wrote:
> First attempt to build xen-4.18-unstabl in deb12 (Bookworm):
> /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.asl
>   9851:             Name ( SLT, 0x0 )
> Remark   2173 -          Creation of named objects within a method is
> highly inefficient, use globals or method local variables instead ^
>  (\_GPE._L03)
> 
> /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.asl
>   9852:             Name ( EVT, 0x0 )
> Remark   2173 -          Creation of named objects within a method is
> highly inefficient, use globals or method local variables instead ^
>  (\_GPE._L03)

Two remarks here, and ...

> ASL Input:
> /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.asl
> -  397476 bytes   8140 keywords  11139 source lines
> AML Output:
>  /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.aml
> -   73130 bytes   5541 opcodes    2599 named objects
> Hex Dump:
>  /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.hex
> -  686160 bytes
> 
> Compilation successful. 0 Errors, 129 Warnings, 2 Remarks, 2762
> Optimizations

... no errors here.

> sed -e 's/AmlCode/dsdt_anycpu/g' -e 's/_aml_code//g'
> /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.hex
>> /home/mockbuild/pbdeps/xen-4.18~rc0/debi>
> echo "int dsdt_anycpu_len=sizeof(dsdt_anycpu);" >>
> /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.c.tmp
> mv -f
> /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.c.tmp
> /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmlo>
> rm -f
> /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader/dsdt_anycpu.aml
> /home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmload>
> make[9]: Leaving directory
> '/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/libacpi'
> make[8]: Leaving directory
> '/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/hvmloader'
> make[7]: ***
> [/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/../../tools/Rules.mk:206:
> subdir-all-hvmloader] Error 2

And then a sudden failure here with no indication what has failed. Did you
supply an insufficient fragment of overall output, or is there indeed
something failing without any error indication? Of course it also doesn't
help that your email is hopelessly damaged by undue line wrapping.

Jan

> make[7]: Leaving directory
> '/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware'
> make[6]: ***
> [/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware/../../tools/Rules.mk:201:
> subdirs-all] Error 2
> make[6]: Leaving directory
> '/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware'
> make[5]: *** [Makefile:37: all] Error 2
> make[5]: Leaving directory
> '/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/firmware'
> make[4]: ***
> [/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/../tools/Rules.mk:206:
> subdir-all-firmware] Error 2
> make[4]: Leaving directory
> '/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools'
> make[3]: ***
> [/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools/../tools/Rules.mk:201:
> subdirs-all] Error 2
> make[3]: Leaving directory
> '/home/mockbuild/pbdeps/xen-4.18~rc0/debian/build/build-utils_amd64/tools'
> make[2]: *** [debian/rules.real:218: debian/stamps/build-utils_amd64] Error
> 2
> make[2]: Leaving directory '/home/mockbuild/pbdeps/xen-4.18~rc0'
> make[1]: *** [debian/rules.gen:57: build-arch_amd64_real] Error 2
> make[1]: Leaving directory '/home/mockbuild/pbdeps/xen-4.18~rc0'
> make: *** [debian/rules:24: build-arch] Error 2
> dpkg-buildpackage: error: debian/rules build subprocess returned exit
> status 2
> 
> any help is appreciated,
> PryMar56
> 



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 07:41:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 07:41:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602933.939762 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh3Sb-0002Qo-QX; Fri, 15 Sep 2023 07:41:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602933.939762; Fri, 15 Sep 2023 07:41:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh3Sb-0002Qh-O0; Fri, 15 Sep 2023 07:41:53 +0000
Received: by outflank-mailman (input) for mailman id 602933;
 Fri, 15 Sep 2023 07:41:52 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=cTZx=E7=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qh3Sa-0002Q3-Tm
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 07:41:52 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 53c5c143-539b-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 09:41:49 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-58-nGWXfUAWOlyJ8o2oDKoGSQ-1; Fri, 15 Sep 2023 03:41:45 -0400
Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com
 [10.11.54.6])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id BA17E858F19;
 Fri, 15 Sep 2023 07:41:44 +0000 (UTC)
Received: from redhat.com (unknown [10.39.193.146])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id AAD7A21B2413;
 Fri, 15 Sep 2023 07:41:40 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 53c5c143-539b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694763709;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=pRC3RshYLS4HmQNALCOSRKQWLBPF3YgAiPkaToAE920=;
	b=DGkEWhxl+iEep01oQ/0cBnprsBpEgEmFAMo5+BOqYZiXR418WAOtY8E1cZWLYhUG4hYVQG
	UkfQXBZPWBjX8loB8m2SlNdsPJH2GMU5b3+gXo3aK85OrOzj60m2ZaXTOCmJ0ww8FrxrJ4
	YpYGb4SrGEveBOt1OWN3yErzrtUs7BQ=
X-MC-Unique: nGWXfUAWOlyJ8o2oDKoGSQ-1
Date: Fri, 15 Sep 2023 09:41:39 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, hreitz@redhat.com, eblake@redhat.com,
	vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com,
	pl@kamp.de, sw@weilnetz.de, sstabellini@kernel.org,
	anthony.perard@citrix.com, paul@xen.org, pbonzini@redhat.com,
	marcandre.lureau@redhat.com, berrange@redhat.com, thuth@redhat.com,
	philmd@linaro.org, stefanha@redhat.com, fam@euphon.net,
	quintela@redhat.com, peterx@redhat.com, leobras@redhat.com,
	kraxel@redhat.com, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: Re: [PATCH 5/7] block/vdi: Clean up local variable shadowing
Message-ID: <ZQQKsxgrT2mLokFi@redhat.com>
References: <20230831132546.3525721-1-armbru@redhat.com>
 <20230831132546.3525721-6-armbru@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230831132546.3525721-6-armbru@redhat.com>
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6

Am 31.08.2023 um 15:25 hat Markus Armbruster geschrieben:
> Local variables shadowing other local variables or parameters make the
> code needlessly hard to understand.  Tracked down with -Wshadow=local.
> Clean up: delete inner declarations when they are actually redundant,
> else rename variables.
> 
> Signed-off-by: Markus Armbruster <armbru@redhat.com>

> @@ -700,7 +699,7 @@ nonallocating_write:
>          /* One or more new blocks were allocated. */
>          VdiHeader *header;
>          uint8_t *base;
> -        uint64_t offset;
> +        uint64_t offs;
>          uint32_t n_sectors;
>  
>          g_free(block);
> @@ -723,11 +722,11 @@ nonallocating_write:
>          bmap_first /= (SECTOR_SIZE / sizeof(uint32_t));
>          bmap_last /= (SECTOR_SIZE / sizeof(uint32_t));
>          n_sectors = bmap_last - bmap_first + 1;
> -        offset = s->bmap_sector + bmap_first;
> +        offs = s->bmap_sector + bmap_first;
>          base = ((uint8_t *)&s->bmap[0]) + bmap_first * SECTOR_SIZE;
>          logout("will write %u block map sectors starting from entry %u\n",
>                 n_sectors, bmap_first);
> -        ret = bdrv_co_pwrite(bs->file, offset * SECTOR_SIZE,
> +        ret = bdrv_co_pwrite(bs->file, offs * SECTOR_SIZE,
>                               n_sectors * SECTOR_SIZE, base, 0);
>      }

Having two variables 'offset' and 'offs' doesn't really help with
clarity either. Can we be more specific and use something like
'bmap_offset' here?

Kevin



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 07:42:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 07:42:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602939.939772 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh3TA-0003CK-6E; Fri, 15 Sep 2023 07:42:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602939.939772; Fri, 15 Sep 2023 07:42:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh3TA-0003CD-3K; Fri, 15 Sep 2023 07:42:28 +0000
Received: by outflank-mailman (input) for mailman id 602939;
 Fri, 15 Sep 2023 07:42:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=dO0Y=E7=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qh3T9-0002Q3-43
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 07:42:27 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2061e.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::61e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6908c13b-539b-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 09:42:24 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB10068.eurprd04.prod.outlook.com (2603:10a6:10:4c9::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Fri, 15 Sep
 2023 07:42:22 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.020; Fri, 15 Sep 2023
 07:42:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6908c13b-539b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QNv9GtX8GP2+jP816xLUXwBlXEe+uo9oKtR8G6zMmQI2GQn9I7CrfzsYDGeWqpi+b3//AEF4RdK5P2LUL8CxduD70qXKsYGADGWmVZeBdwiUvaHjyd66L03lRv7j1U3i+lq9HDVwToWbaWfQAT+xC7Ai/u3fjWlLnMZP9OBGCzXoQ1CFMpO2yjdLKK6YcXljiAYpmp9768Bq4buIojNtLpgM+r8BDJpKY1Ub4dvXpgMamP2fAzRpbiWyPIsy05IZ78sPONu1XlpqJMTa0sqolsna/Oco7xFmCC+wC0RBsPhmJ6yodOu6ZBovuOtWFacIbB5cTajNWmf33NQtCd8qMA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Z/bMK71pu+dY+ne+U+NXHCh+5iCIo7BU/oosu7XSHww=;
 b=iK3MNFZaxRc43IebsM+GsO5jW5rN3VGe8gtEIOCIcHLL9xwIZOPmsM+Bznb2WWxvrh97xqpotqT0vKEFm6i1FRYE7R3F94urlrrMdrW70WLtl4WPbiDXk/y+9nLwQv4XmSALC53tvoW7H7YyOt7f60U5ll6sYqhggka2N01N6gERUDN2EAzErryiX8leaCQ4k0bKhhH3leUopZpoHIEq96DBDf7iroq79VkO/zc9QAqwunoKqu5/ni2FGnCWmxAptp8d0i3EmnrDMd8BoL+mcmcff758TLzlKFdRe9dShvbld9Dr6yKrjCYUJQWXBIBZUGhvrw7Jw11tnwwuaw3aHg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Z/bMK71pu+dY+ne+U+NXHCh+5iCIo7BU/oosu7XSHww=;
 b=Gr5k9CYt0P6I0WyCTmeSqfLb8Zys0MkceRSa7crLl4pdh/ivNiP0DEVZZ9mryxmtgEIdbwnLO3BHAy8cQ+MQyI9sinD1cF6M5Baxily8VjdYie14BR3fLtY0qEK0R/iHxIZWElc30QjKd85SA9Zy+PkTicAlXHLnUzOlqQ0J6rl2QeYwOJvBupb/146vmr65j6/X5HTDcSUDq5UH9jKVq/PG+spexRV8rp0aRVkFZw8g5GyP9OmjQoOWkc3U6B75rqzvQB1ExObRoXgCI9WUU6snFGgBz9mOyp60FX7ZW7ieFJ8iv9pjrhlTRpypK9fZn+761fKr4aqvtrCqR4tMgQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f7c92597-855a-1d7f-2179-7c86566b1021@suse.com>
Date: Fri, 15 Sep 2023 09:42:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 2/5] x86: Introduce x86_merge_dr6()
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-3-andrew.cooper3@citrix.com>
 <126020f0-3054-11d5-c7f9-1f02750cf815@suse.com>
 <08556a3f-3a96-2929-ef7d-26c3b3cbeb6c@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <08556a3f-3a96-2929-ef7d-26c3b3cbeb6c@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0142.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:95::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB10068:EE_
X-MS-Office365-Filtering-Correlation-Id: 26c1ff68-88cd-4f2a-5ddb-08dbb5bf4bc3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	cOUQuz+SMO1F4JoPYVVUX3EVdKpsSrLfw/wI+TdZ4wBGvf+OZFOGxZ7nAF5BVKRmrsFXW1Uf9gzastDuJdwFdF3YDu63AzqvwFCXpQ6cXa3UspBzT2mm64T9ha8Lb5oCd/HjZlP1a1XFj4xTedFDOc5zCaVAC/qFZheEMd/aRY9jvwO6k2vyAMA5QyWguE+oc/vQZU+GTh/zfNHRLScVMLN4ek5unVR9n5j0Ola15SHQd4ziwSMjBHPoZLu1UfNQY4sYQMISsLQA11SBZk4YlnLlE1l4ZWNZ6xax7zBdfgPyXN/NczJ0yIRgfGY0CxFwrTVyrphNpPxyuMGHNQ/r5WmoKhjqwGUcaEir1lTQrbVd73mSZ8WhD2Uk10riOGuQ3KavpNGdmKcXIOfLTIi/AulGkBUYNwqhTGvmhmA1W3adwKTITDE4w9+SDjdgto5J+iLeP+S29FBsTN0Jgi+lrRgbw2qsYDYEk7saQlu5AvVEO89zlDzv+VgyYHpXj7pkEvJygp0qDGe0RzaEhJw7CTXybNErR9LjE6aNnLW0UEf2J2rwmgSzVTI8xS2oUgMibwkV7Ac7lG4bFDifebft+02048qeCXZYNsU3iDoVWUOrbS0Cbibd2SdZXAH78t53TNDp7oUa69AaF0O7bpT+Vg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(346002)(366004)(136003)(376002)(39860400002)(1800799009)(451199024)(186009)(2906002)(36756003)(31696002)(86362001)(38100700002)(4326008)(8936002)(8676002)(5660300002)(31686004)(66946007)(53546011)(66556008)(316002)(6512007)(66476007)(54906003)(6506007)(2616005)(6916009)(26005)(6486002)(41300700001)(478600001)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bGZXR2V4MjFtajNtL2lrMWpocytXNlFqWklPZkZtUGwvUlRsRWQ2MTFCdFhi?=
 =?utf-8?B?Yk1aZUxndGlEUFBZdUFZSUs0dWV4NGNkdUNRbE1IT2dGTWNXMFJQdmZHTkU5?=
 =?utf-8?B?b2d4NW5ReGVEdFp6UmZvVm55MDROSVErckZ5b1l2S2hETDg0SGNPSy9hbjlk?=
 =?utf-8?B?Z0hCOWRQVjBmYUZTckFrcTYxMVVVK2JkZGtXT1oyU0pEN1dnNWtyTGdzYU5i?=
 =?utf-8?B?U3lDaGdYNmtnVkhCeU1zUklYQnZ4RXorU3FpV2REUXduQThhVmRvazdJZFNU?=
 =?utf-8?B?TGcxODNrblkzR0FRT0FjSWxUVm1VUEFCUDViMWxyc3ZINWFkcS95Uzd1U2Zz?=
 =?utf-8?B?dklKSnlQbkd1UGhhVFBmVExqbXgxUngxOHJHTHF5YmpBb2lQNW9XdXVtYjll?=
 =?utf-8?B?TVlWSHpkUUZsSGZNUjU1L3lHTUtnN2N1d29qa01DSWhXeVNxaFFLQzZuUG5H?=
 =?utf-8?B?Nm1ibGpWeTVJSlB1WUJ5UHlQTGF5Uk5wSUFKOUtDTm40eTZZOGNpanhScXdz?=
 =?utf-8?B?ekxTU2tldTBDWmpIQjdmUUcwbnNiRXlEVndFMzM0U2I3cnRRSkpXK3NjQ05J?=
 =?utf-8?B?YnBxM3FJaVVxQmpybHFLaHNSYldGbTJYV2xHZUl5SjczTVZhclJRMXRDT1VT?=
 =?utf-8?B?cEIxNVRWUUNoVVRRcHdJVDVPYVEwUVlFTUhGelNCZUZtMU9QclVuS0ZGUk55?=
 =?utf-8?B?VmF4dTRjb2prUGozVjNWWFk5WFZtWmkzZUdLcEU1QmxKVTNhT21JK0wrdzlO?=
 =?utf-8?B?QnYvaUJjQ2V2K2E3TndXNEx1YlltZ2ZvclJ3cTVoWlc5RGVsa2xRcnJoVzcx?=
 =?utf-8?B?RCswR3AybmUvZWRnOWdVWjdnZHlXMk9xQWQxdXZpTlJOSFlmODV3LzA1anRG?=
 =?utf-8?B?VUdtK0c3d21Da29ETnhFdEl5UGhpS29XZVJjU016aEJMRkpEeUE0d2Q1bVRz?=
 =?utf-8?B?cWNYMzBmaURpb2crWlhVYzl5Ym5RWkQveXIxZGYyRTBwZ3hsbyt1QjZuYVlS?=
 =?utf-8?B?WDVXcTV6TEZVclFqTVgvd1Jpc0xSTVNlNjF6SS9tdFBkYU05SkNodXF6VFE2?=
 =?utf-8?B?Tk92V3FaSWY0Nk9nTi9SZU5uWlV6NVNjKzRLUzd0NVdvbFROcit6OC9FM1dB?=
 =?utf-8?B?SFhoaVVZS1ErUllMamltZDU0TlErRU5OZTN5RkI2UWkzUDFRdVRQcWppUDdC?=
 =?utf-8?B?TjFCd1dXczJRN0s0Tk9LTGwzSFJyR0RwdlVDVyszOWJIbnJmcTVSQ1JidERI?=
 =?utf-8?B?ZVVucXNkQ1k5RW5wS2Nya0ZyOVJ1YjVOa0hnVitBOUg3aFQ1UzdhL21Ha0dm?=
 =?utf-8?B?NjRKZWE3QUFQNXNSZ0ZqOTNsZkU2WWY2U092Q2VxUmhqSTlGK2xxMGY2L1Jk?=
 =?utf-8?B?U1NMaCtIT3hmcmJQaG1FNmV5Y1A5eUxhSEU5RmlBL0hTdjdCTitOMTRhbEhz?=
 =?utf-8?B?ZkhONUNBVHNvS2htTjBVdytwZkh5aSsrVHVRQ3NrRVdXcENTbUF4VkdDYjlK?=
 =?utf-8?B?c2dOTXd1RGV3VjR2VC9pL0VObE1RMEJpMUd4YS9SdHVlaERFY091NlZiaWcv?=
 =?utf-8?B?Y3RzUTdYQmJpNFZCWkNsYlowU2ZhYmRwUWswOWMzdVVTbnZRb3BtZFkwdnZL?=
 =?utf-8?B?bzFVbUxhK0F5SDU1eEdwdE03bUZNOUs5a3hjTWZEemxHUnVQdzRZK3dyQkFx?=
 =?utf-8?B?Nis4RmRnQlFBYndLMW5FYTQ4YWFHbTZHQU9wWllMdGFFZFpiZkpVMXdGdFdk?=
 =?utf-8?B?ZWFhNkJYT0ZrMnpDS0p0b1VXNWdpbmFKRVNPNUpRY0tWWThIbjFHZzA3QTNE?=
 =?utf-8?B?amlkNnVuR0ttOFNZZHN3Zi95T1Y2d2JONDduMEZrUStqd3BydDlzalNDRERr?=
 =?utf-8?B?dWdQbWo3SjJ1elB3dG1XcWZLTkkyL2ora3ZYSHo3eElIR1JBRkR5OFhIeGdj?=
 =?utf-8?B?WkdNRGNKNFpQc2RqeDJoZ04rSEFyTVV0eGVoNjhKTlFhTmVvL01vYW1kTlo0?=
 =?utf-8?B?OXZkRGlobHJKc2k5M0VSS2hLWFFNNHdPSXljaHNOa1YvWEZGRGNXZ0pkckw2?=
 =?utf-8?B?SDdjemVtTktpZHU5bkQ3V3FGM1pYajJvVTdkbFEraWh5VTdlSEJZV0NsZjZE?=
 =?utf-8?Q?UscmQjkbXyVzIM4vzzbbC/ZSH?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 26c1ff68-88cd-4f2a-5ddb-08dbb5bf4bc3
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 07:42:21.8838
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: GEDRtcCXTWrd1UcC7HxkXkyP67XQC7j6wEMklZ6STCiSqv7llfBoM9/Z+9HXD3t3lsIaJAARegi6y5R7jxoufw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB10068

On 14.09.2023 20:03, Andrew Cooper wrote:
> On 14/09/2023 3:53 pm, Jan Beulich wrote:
>> On 13.09.2023 01:21, Andrew Cooper wrote:
>>> The current logic used to update %dr6 when injecting #DB is buggy.  The
>>> architectural behaviour is to overwrite B{0..3} and accumulate all other bits.
>> While I consider this behavior plausible, forever since the introduction of
>> debug registers in i386 I have been missing a description in the manuals of
>> how %dr6 updating works. Can you point me at where the above is actually
>> spelled out?
> 
> The documentation is very poor.  The comment in the code is based on my
> conversations with architects.

Especially in such a case, can you please make very explicit in the
description what the origin of the information is? That way it's
simply impossible for anyone to review properly without having had
the same conversations.

Jan

> APM Vol2 13.1.1.3 Debug-Status Register (DR6) says
> 
> "Bits 15:13 of the DR6 register are not cleared by the processor and
> must be cleared by software after the contents have been read."
> 
> although this is buggy given the addition of BLD in the latest
> revision.  I've asked AMD to correct it.
> 
> 
> SDM Vol3 18.2.3 Debug Status Register (DR6) says
> 
> "Certain debug exceptions may clear bits 0-3. The remaining contents of
> the DR6 register are never cleared by the processor."
> 
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 07:44:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 07:44:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602943.939781 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh3VI-000440-Ip; Fri, 15 Sep 2023 07:44:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602943.939781; Fri, 15 Sep 2023 07:44:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh3VI-00043t-GC; Fri, 15 Sep 2023 07:44:40 +0000
Received: by outflank-mailman (input) for mailman id 602943;
 Fri, 15 Sep 2023 07:44:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=x70d=E7=citrix.com=prvs=6154552af=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qh3VH-00043m-6t
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 07:44:39 +0000
Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com
 [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b5b8c5eb-539b-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 09:44:34 +0200 (CEST)
Received: from mail-sn1nam02lp2045.outbound.protection.outlook.com (HELO
 NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.45])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 15 Sep 2023 03:44:28 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CO1PR03MB5779.namprd03.prod.outlook.com (2603:10b6:303:97::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Fri, 15 Sep
 2023 07:44:25 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.020; Fri, 15 Sep 2023
 07:44:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b5b8c5eb-539b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694763875;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=2bZrFlAo+VEjSHAiWpg67XRlMxWh+ouYvTtyBcd1FDs=;
  b=QW0P2QDDLdQ+m8TOlJhnuoJVtVda2GDPFpHVxsyRoCcBAH0WpZYxNonb
   UcBvaejxHG7y2ebPvW2QgZ1VpTlFa3/IzXfLwOKCcLbW5EtIMyCEXMPpM
   gEjPD4QBqeZPSWxw0a5CfjB0HogsUqAYYV00XrR+rOUayWGrTitLbdRcd
   c=;
X-CSE-ConnectionGUID: Goeh0XrPRV2ap1Z0jtZHsg==
X-CSE-MsgGUID: 1zQIWQt+TRyEp3CMU4K9Kw==
X-IronPort-RemoteIP: 104.47.57.45
X-IronPort-MID: 121998424
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:umSoZK2B+xEsubh0N/bD5fRwkn2cJEfYwER7XKvMYLTBsI5bpzcAn
 2UaXGGBPvqNa2b8e90nOdvi/U5X65PTmN5nQQptpC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb8nuDgNyo4GlD5g1nOKgS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfLmZD9
 aQoMgg3UEqKn7uEmLCneMl3iZF2RCXrFNt3VnBI6xj8VaxjeraaBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqvC6PkWSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv2376ezX+hBOr+EpXh5MdLv2SPhVApGTAODnCenKWa222hDoc3x
 0s8v3BGQbIJ3FymSJzxUgO1pFaAvwUAQJxAHusi8gaPx6HIpQGDCQAsTDRMddgnv88eXiEx2
 xmCmNaBLSNrmK2YTzSa7Lj8kN+pES0cLGtHfildSwIAu4PnuNtr0k+JSct/GqmoiNGzASv33
 z2BsCk5gfMUkNIP0KK4u1vAhlpAu6T0c+L83S2PNkrN0++zTNTNi1CAgbQD0ct9EQ==
IronPort-HdrOrdr: A9a23:QQ6LaaD8pwFFq2vlHela55DYdb4zR+YMi2TDt3oddfWaSKylfq
 GV7ZImPHrP4gr5N0tOpTntAse9qDbnhPxICOoqTNCftWvdyQiVxehZhOOP/9SjIVyaygc078
 xdmsNFebnN5DZB7PoT4GODYqkdKNvsytHXuQ8JpU0dPD2DaMtbnndE4h7wKDwOeOHfb6BJaa
 Z14KB81kKdUEVSVOuXLF8fUdPOotXa/aiWHSLvV3YcmXKzZSrD0s+BLySl
X-Talos-CUID: =?us-ascii?q?9a23=3AWrzfvWjKT4KEbZFQRYDEyZquTjJuXXrQzC/gOXe?=
 =?us-ascii?q?CNzxgUOSnEV2MyoN/nJ87?=
X-Talos-MUID: 9a23:T5S1HQnaqqk39r7qyRcmdno7Jv5J3J2yS3w3gLge4OKhCHBTahSC2WE=
X-IronPort-AV: E=Sophos;i="6.02,148,1688443200"; 
   d="scan'208";a="121998424"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TT0S6gPHLC/r+DmjmCBaeLURplZAsN927B5P6JsXVLkz7HrpBXHDfP11WEjDIZPBJItoyHEM9vaBF/3mRL7Hg5kEds5OXfYb7sx9eOYLVetulXhtXyYEis2pYbM/mBGQHO5hZtmDpq975XY7Zv5cJ37S/Ko2z5dnZ+WOgcN5K70m1l3RvpCYtTm7WL/RjLXJiEIg0OYoSFlERxjUfspM1ykOxu9sl+hjHz0rNo0DgDyqs5nwHUNnmzUReUVqkXzFKVLefdvwKRIeAZnq7Z7w1xzHJYKfClUol86sFxYSHtNUu7XdxCaq8c9cDoJdonj2Q5tvo7M2BtWycpj7PRDKow==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AmoFpiWyxAf5Kk0LcF841RDP7r8bqATfTFJiOLCgyec=;
 b=oDCLrPMo25lbWM/5CVs9XwIhwnwSs5VPkFpeV24whThxTgGMH962S2XtdBDR280RaStkWsyLSxtG/kI54V/JZFscPO2GmO1TJ/bs7Qo+mjH/961X/EV6KX9ZVjAdoko7G+/dGwlbFMpwVfUgqozhZjcU3z51bGbsjU012y6pnOegRmd8BYJcoHt4NSZsi95iF7wzPezvO9DJ6xXwRVRlrbk4M8FgmctUhd7OC1z80IwIyVOBlZRjUma6YzAUUhgfxK3foefTov8NEYBL3Jjyab9Z0nNqzeP3w2HMHJ0Y+V+bJ1NwncBPDQjzlepAVPqWxPGGi/CJtugK39Vio3abrA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AmoFpiWyxAf5Kk0LcF841RDP7r8bqATfTFJiOLCgyec=;
 b=V9BemnBEBVdx62EwOJE1KENsqpZdS9sE76e2wXJ3oWguMB9ykAp748ImomTZVwdmPWQQvsFs/8K8NzEMwDl6BIYjytGPL+Ntz5iiV7Z04WILam6Yaek3xroU2+CephZfM+kF/SC2JkmFfMjmKFrOe8GVPTauXy7O+wMbpqS3oBQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
From: Roger Pau Monne <roger.pau@citrix.com>
To: xen-devel@lists.xenproject.org
Cc: Roger Pau Monne <roger.pau@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2] x86/shutdown: change default reboot method preference
Date: Fri, 15 Sep 2023 09:43:47 +0200
Message-ID: <20230915074347.94712-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0003.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:150::8) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|CO1PR03MB5779:EE_
X-MS-Office365-Filtering-Correlation-Id: ee17e30a-2df2-4f7d-efa9-08dbb5bf9508
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZLgIHxWeLJfgZrACkZn8ZGS9YaKauGV0e0D9h2jB9McN+uO1ee0Zird+9SQ42jJ3SRBqAhU/ZlPpYN8vTv+sxIU+mUckRa2tHzd3EjjsHGoClo1mInApDb1YI+zg+vj77cKtx7K7Nw5OWelb1wR+ipuRIhvf8tFdYGTF2EAIqW4ukv9nU2SeLq7GLBHC3FuK4RMMi7mx2efMNJ2QtnoS9McuJGbLBQS5JmP8MNyN7QR0FCH2vUoGaHQBlsLgF+znyd63nMd8cl5U/4Ro6t43V60E/4Mlm3JFE7j74rJpZUzoBO+MYvN+pASbHOr7I81vsiX9gETq1FDFhBFRljRAYRJ+LPtxeUslNOFfcUpYj/OJHfYclX19cbCafSpuRriDMGuUBKmUjN1quTwUR1MLYsdOZcK7pA6q8iDbwgBXGOrdyLegjvop4E/SpC6rYOzAL+jrVwcIvf7fL/49HtN6MCeOpdS4ybKQAMHZ9WsUoHpNmVCzF4PSXbtQOkW4GTUTufAcxpw9ZOM3Q2lC6wAgnZZ4J/yCQRdCB2OQajYta4iOdLBim2ql8CH7gpQZ7DXY
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(396003)(366004)(376002)(39860400002)(451199024)(186009)(1800799009)(66556008)(2906002)(316002)(54906003)(6916009)(4326008)(5660300002)(36756003)(8676002)(8936002)(66476007)(41300700001)(6506007)(478600001)(6486002)(6512007)(86362001)(38100700002)(2616005)(1076003)(6666004)(82960400001)(26005)(66946007)(83380400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cXBrVzkrOVlweXFtQzZZTWsyV3I1cVRtNWhFTnBnNVR4ZUF0bjZzOWFwUDl0?=
 =?utf-8?B?TjNSN0xhRWdCUVNxMzBpSzA2STh6ckhBOU4wLzAvYjJlVWxiU1hNSXA3V1Ur?=
 =?utf-8?B?YTlhbU5XNVBCRiswdHVyL1RtSWorZVRJYldiUFJCT1JxcGptTnU1S0RJdnVH?=
 =?utf-8?B?aytFRHNMVis4YWFIbVVodXdqV01oRjRlM2x2NUR5RllmQjd3dHl4MVVOR2g5?=
 =?utf-8?B?QVNRWUllSUVWSnRsbWttR050RmZGb0J5ejVLajlvaXFVQVdaWnc2NDZ5MmpS?=
 =?utf-8?B?RTFZWWdEVUwwc3FVemNrZFI1d1BhbWpYZnNLR2R5S0RMaFRweEtFajYyV0NF?=
 =?utf-8?B?cGNPWjhxWCtjVFJwZUp5Ui9UUElMRzM1NGlIZ1VhZ2JVZm9DenRvUDJINUVu?=
 =?utf-8?B?emFVSWRYSlZ3Mk5QL3F3RzNYL2pETDIySW1rYWo1c0xNVlE5NjVoSW4vbjBa?=
 =?utf-8?B?VVh5cytLc3FiT1IxMDk2emRKU0FDWGlrQm51MEVnOVNWWTdueVRpc3hRSHZE?=
 =?utf-8?B?NGE2RnhDYzZRMkh2MytQUlYrS3N6Vk1weXFrZjFrdDNod2E4QXJ3N1lXNFdD?=
 =?utf-8?B?b1lJMnViU2ZhZTVsNUFkREZvMmkvSkNaNkxHSjRlMGFOL0h6NWRUUjFTSWhX?=
 =?utf-8?B?UXRDLzVXWDdabXBtZXRUcFNDNFZuQ05NTURFOHhua29nZk9oUGVKaTdOTmFF?=
 =?utf-8?B?YjA0cndZaHQxS3AzUWxzWFAwMTVvTW00bkVkN1M4RHRaODcvN0RaT2tzbTBD?=
 =?utf-8?B?a0pJNVB5OWRFQ1F3ankrV3l3MGU2Y1dMNGtTRWFLSFQ3L1R1OE5SRzQ5WGJ0?=
 =?utf-8?B?NkRvSGNkNGdrZU4xU1F2TEZBUEk3SnR0UDJySEpEUXFFckprblB5aUpmQTJZ?=
 =?utf-8?B?THYxZzAvaklDZkEwaThxNHlySGM5Ynl5MEhWZ0g3RGFOQnhoY1czODEyYi9Z?=
 =?utf-8?B?eklidGFaNzJJd29IQUpFMVgyNzBsZzhjUnY3TjJnaUFGWTkwczhsZ25kV3VM?=
 =?utf-8?B?aEhnU3YyaE4zbXhMaFZQWnI0UVZOOGZPaHpRZlJWVVJyUlQ1N0RDUHptTU9B?=
 =?utf-8?B?YisvZ0dERTBORGtGZkhxbTh6VGNOSFlpaHlYVytSbkVpbm5OMEh1WUtCYlZa?=
 =?utf-8?B?Z3dpRkQ1c0trRnEyTXl5ZEdrNWpTZ2VFVTVnaktFa2lqRUNCRElnUFJyZmM4?=
 =?utf-8?B?REJnQVBMN2IxZUQ1dUUrT0tSZGVTYndKWjZ0UERtQ2ViYXJxNmxYdmM3L0Rl?=
 =?utf-8?B?QVA3d2FHYSsrakQraDMyUmFka1JzaVhjSGkzb055RDRHaTNmbmNXcHJKV0pR?=
 =?utf-8?B?L0RQTUQ4UlpOV2ZkM0FxMXEzMkhJQUY1U3Q3cUgvTmZGREhxSzg5eW9XK1E1?=
 =?utf-8?B?L0IzbUk0aUpDOXk4RnBWenJWenp6SWQ5TGVzVDBDZEpjcUFkd2N6VGhLQWgz?=
 =?utf-8?B?TDdnVCs4R2Jwd3Ztb21JRVZtRDBhMmM5Nng5dk54MU5ZZUhmU0VwaUFkdlZo?=
 =?utf-8?B?bWFFWmhvNFhMWmxIb1RubVJXR1JEYXJ6VVUzNnB4OEd0SFRZZTdCNmo1Qm4x?=
 =?utf-8?B?QUtEZ1JjZnA5S25PM0twcmdkblZTOEh4ZGZuUVdnOTRMclhDeU5MOXYxZU9E?=
 =?utf-8?B?dEZBR2R5MXBmSWFUcU1ta1JqREQ2dkJJbE5uUVM1NVd1dWVxR2drcGJaWjRw?=
 =?utf-8?B?Y3VMUGY4STZBQmx1QlB0ODNTbEU3clM4VWoyVHpXSmFvWkRtMngxUm9kQkhP?=
 =?utf-8?B?UzF2L0lwUVMybEJ4YlNaY1JxYXVaYUloQW5kQ29lamdBZU5iN0l2L21kajNI?=
 =?utf-8?B?NzJUOEdtMTNLUFh6Qjg0U3FRNDVWZGpWYUJ3SVY0Z1BxcGtCdnNpVnZlaGxk?=
 =?utf-8?B?RnZUUE9BWTI4UVhGLzgxeDh6RjVtVmd2d2JieXlodGtucGxXMU1ja0dTeWFD?=
 =?utf-8?B?T2NTWGZyaCtyZjU3c0ZGWDV6bEowNG5Id0NKa3E3Sm9qVGh5VTY4ZEJ3U3VS?=
 =?utf-8?B?MXNrdXpOa3gvMHJqQVY1MXpVQ2dxclpmMzhlOVhZYkE0dktNZ2JRRnJqdFdm?=
 =?utf-8?B?RnV4WFlRYXlvQjc0cjRudWhCdlEwNUdSdDhhSFhzVmI0bXFCV0hlemtXYkIy?=
 =?utf-8?B?NmtXNUErUlViVFRlZkx3MkE2VTZBcjFmcWFKa2U2MmdMVVFIOGt6OE1yRGt0?=
 =?utf-8?B?T0E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	BHHDexIYxzA08oxB9o2PnJDhgMz984yfeha0pqx8pj7p7OmvZ0L4cV4LySB3DsefQQMPILrvldckH8REVaSZRPDe2uW+rmFrPyVvQ4IqQoTlnFAxbBUi01JZCMyHy12g/A0/KoQamd7PJ/QBzshZJ9yKtxuiLwFvvoFbxgXyXZ0Zv1kMJ9l9CxNtEMzFCALgvi0fe0HybG7kiMwsD5YZw7+WgXvF+w52NirjGpWlE7FaJ6cX7LvNajYBJIG+12Og660Z/tY2GFFjKsm/FAihJ00jayk++59y5hkj2mBUgV1UPmbw7mwWPMOh9csAGaJ35bQSbV8DF0JyDHG+QefZQ0Wx6xxHDWu+5vKFzxJueXUX7A3/LAW4QhfqaCEjwFjEunWJ/od/7Y+Rq8n0ZP/RMpemk7E38VNuZjpzEVwyGh/Lc7wLSe3Q0INxKoRouaGQ7o0lldeWDdRkiByh8rwS2Cy9o/9qVY/53iuKyVUawcvC6947Gr+qJe/WZLB9IwdPYEmcKJS4cuZQuUzClcj581iX+F3XKyZ0Ua69pFNmcq57IOj0yr81M3SXXEKJAiREANPKOCVrXsh7ysDaDX7MO6q5vDiXXD1qqPtHIVeaJgMxwHBiAIjBHa3EeuK8F1cxaQ1jXQZy/uIswMCRbQWLBvQooJ0ABLT8mmsfF6KgKccOXrfx1qhKx38FDlJaEApC+oHFM6f9GgZDPBr6t1pewl2Qo9r/OpaVVLYMWX/yJ1fYgpBLDM3+kvZizDWoW1yfN4ly84UnIiQCPcbA4gZFdMQksjoUZRYtPDQIGcSwTSYP6QOqmL4ZRR73WvQUBH6U
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ee17e30a-2df2-4f7d-efa9-08dbb5bf9508
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 07:44:24.9428
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: EICPKRojmN1ZheivMkZhnw4+Lu5GyuAc9vyU8OBqGXOfhR0QAxztA/1CDtMPjRVjRC2Uyx5MN99NpLQVc/xsVw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR03MB5779

The current logic to chose the preferred reboot method is based on the mode Xen
has been booted into, so if the box is booted from UEFI, the preferred reboot
method will be to use the ResetSystem() run time service call.

However, that method seems to be widely untested, and quite often leads to a
result similar to:

Hardware Dom0 shutdown: rebooting machine
----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
CPU:    0
RIP:    e008:[<0000000000000017>] 0000000000000017
RFLAGS: 0000000000010202   CONTEXT: hypervisor
[...]
Xen call trace:
   [<0000000000000017>] R 0000000000000017
   [<ffff83207eff7b50>] S ffff83207eff7b50
   [<ffff82d0403525aa>] F machine_restart+0x1da/0x261
   [<ffff82d04035263c>] F apic_wait_icr_idle+0/0x37
   [<ffff82d040233689>] F smp_call_function_interrupt+0xc7/0xcb
   [<ffff82d040352f05>] F call_function_interrupt+0x20/0x34
   [<ffff82d04033b0d5>] F do_IRQ+0x150/0x6f3
   [<ffff82d0402018c2>] F common_interrupt+0x132/0x140
   [<ffff82d040283d33>] F arch/x86/acpi/cpu_idle.c#acpi_idle_do_entry+0x113/0x129
   [<ffff82d04028436c>] F arch/x86/acpi/cpu_idle.c#acpi_processor_idle+0x3eb/0x5f7
   [<ffff82d04032a549>] F arch/x86/domain.c#idle_loop+0xec/0xee

****************************************
Panic on CPU 0:
FATAL TRAP: vector = 6 (invalid opcode)
****************************************

Which in most cases does lead to a reboot, however that's unreliable.

Change the default reboot preference to prefer ACPI over UEFI if available and
not in reduced hardware mode.

This is in line to what Linux does, so it's unlikely to cause issues on current
and future hardware, since there's a much higher chance of vendors testing
hardware with Linux rather than Xen.

Add a special case for one Acer model that does require being rebooted using
ResetSystem().  See Linux commit 0082517fa4bce for rationale.

I'm not aware of using ACPI reboot causing issues on boxes that do have
properly implemented ResetSystem() methods.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
Changes since v1:
 - Add special case for Acer model to use UEFI reboot.
 - Adjust commit message.
---
 xen/arch/x86/shutdown.c | 19 +++++++++++++++----
 1 file changed, 15 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
index 7619544d14da..3816ede1afe5 100644
--- a/xen/arch/x86/shutdown.c
+++ b/xen/arch/x86/shutdown.c
@@ -150,19 +150,20 @@ static void default_reboot_type(void)
 
     if ( xen_guest )
         reboot_type = BOOT_XEN;
+    else if ( !acpi_disabled && !acpi_gbl_reduced_hardware )
+        reboot_type = BOOT_ACPI;
     else if ( efi_enabled(EFI_RS) )
         reboot_type = BOOT_EFI;
-    else if ( acpi_disabled )
-        reboot_type = BOOT_KBD;
     else
-        reboot_type = BOOT_ACPI;
+        reboot_type = BOOT_KBD;
 }
 
 static int __init cf_check override_reboot(const struct dmi_system_id *d)
 {
     enum reboot_type type = (long)d->driver_data;
 
-    if ( type == BOOT_ACPI && acpi_disabled )
+    if ( (type == BOOT_ACPI && acpi_disabled) ||
+         (type == BOOT_EFI && !efi_enabled(EFI_RS)) )
         type = BOOT_KBD;
 
     if ( reboot_type != type )
@@ -172,6 +173,7 @@ static int __init cf_check override_reboot(const struct dmi_system_id *d)
             [BOOT_KBD]  = "keyboard controller",
             [BOOT_ACPI] = "ACPI",
             [BOOT_CF9]  = "PCI",
+            [BOOT_EFI]  = "UEFI",
         };
 
         reboot_type = type;
@@ -530,6 +532,15 @@ static const struct dmi_system_id __initconstrel reboot_dmi_table[] = {
             DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge R740"),
         },
     },
+    {    /* Handle problems with rebooting on Acer TravelMate X514-51T. */
+        .callback = override_reboot,
+        .driver_data = (void *)(long)BOOT_EFI,
+        .ident = "Acer TravelMate X514-51T",
+        .matches = {
+            DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
+            DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate X514-51T"),
+        },
+    },
     { }
 };
 
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 07:53:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 07:53:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602948.939791 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh3dR-0007Zl-Cy; Fri, 15 Sep 2023 07:53:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602948.939791; Fri, 15 Sep 2023 07:53:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh3dR-0007Ze-AL; Fri, 15 Sep 2023 07:53:05 +0000
Received: by outflank-mailman (input) for mailman id 602948;
 Fri, 15 Sep 2023 07:53:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=cTZx=E7=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qh3dP-0007ZW-F9
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 07:53:03 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e49eafd3-539c-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 09:53:02 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-390-pcOupwDDMkugD5Y9jR6PPg-1; Fri, 15 Sep 2023 03:52:56 -0400
Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com
 [10.11.54.4])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 670C7101A58B;
 Fri, 15 Sep 2023 07:52:55 +0000 (UTC)
Received: from redhat.com (unknown [10.39.193.146])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id BA87E2026D4B;
 Fri, 15 Sep 2023 07:52:51 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e49eafd3-539c-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694764380;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=kcVDXYMT8LMkjLVvlYxNFSFHVpcbcXjDofWehTamLNU=;
	b=TjZhJhTyV/K91oa4SkAGBvzlehPYimBE6blukykM3KxLzxmALLLmQw83OuKwvdT3vTkf04
	Aj5cMld838FmafWlOqXR2S3moHLLlVqHt6t+p7umzHQwQNHUP2tioRybpSWG0DwFZyrEI8
	RLeB+M+zoJGrVuLbRGY4SRZwEPvtil0=
X-MC-Unique: pcOupwDDMkugD5Y9jR6PPg-1
Date: Fri, 15 Sep 2023 09:52:50 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, hreitz@redhat.com, eblake@redhat.com,
	vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com,
	pl@kamp.de, sw@weilnetz.de, sstabellini@kernel.org,
	anthony.perard@citrix.com, paul@xen.org, pbonzini@redhat.com,
	marcandre.lureau@redhat.com, berrange@redhat.com, thuth@redhat.com,
	philmd@linaro.org, stefanha@redhat.com, fam@euphon.net,
	quintela@redhat.com, peterx@redhat.com, leobras@redhat.com,
	kraxel@redhat.com, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: Re: [PATCH 4/7] block/dirty-bitmap: Clean up local variable shadowing
Message-ID: <ZQQNUjN4Laf+k1Nk@redhat.com>
References: <20230831132546.3525721-1-armbru@redhat.com>
 <20230831132546.3525721-5-armbru@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230831132546.3525721-5-armbru@redhat.com>
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4

Am 31.08.2023 um 15:25 hat Markus Armbruster geschrieben:
> Local variables shadowing other local variables or parameters make the
> code needlessly hard to understand.  Tracked down with -Wshadow=local.
> Clean up: delete inner declarations when they are actually redundant,
> else rename variables.
> 
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> ---
>  block/monitor/bitmap-qmp-cmds.c | 2 +-
>  block/qcow2-bitmap.c            | 3 +--
>  2 files changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/block/monitor/bitmap-qmp-cmds.c b/block/monitor/bitmap-qmp-cmds.c
> index 55f778f5af..4d018423d8 100644
> --- a/block/monitor/bitmap-qmp-cmds.c
> +++ b/block/monitor/bitmap-qmp-cmds.c
> @@ -276,7 +276,7 @@ BdrvDirtyBitmap *block_dirty_bitmap_merge(const char *node, const char *target,
>  
>      for (lst = bms; lst; lst = lst->next) {
>          switch (lst->value->type) {
> -            const char *name, *node;
> +            const char *name;
>          case QTYPE_QSTRING:
>              name = lst->value->u.local;
>              src = bdrv_find_dirty_bitmap(bs, name);

The names in this function are all over the place... A more ambitious
patch could rename the parameters to dst_node/dst_bitmap and these
variables to src_node/src_bitmap to get some more consistency (both with
each other and with the existing src/dst variables).

Preexisting, so I'm not insisting that you should do this.

> diff --git a/block/qcow2-bitmap.c b/block/qcow2-bitmap.c
> index 037fa2d435..ffd5cd3b23 100644
> --- a/block/qcow2-bitmap.c
> +++ b/block/qcow2-bitmap.c
> @@ -1555,7 +1555,6 @@ bool qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs,
>      FOR_EACH_DIRTY_BITMAP(bs, bitmap) {
>          const char *name = bdrv_dirty_bitmap_name(bitmap);
>          uint32_t granularity = bdrv_dirty_bitmap_granularity(bitmap);
> -        Qcow2Bitmap *bm;
>  
>          if (!bdrv_dirty_bitmap_get_persistence(bitmap) ||
>              bdrv_dirty_bitmap_inconsistent(bitmap)) {
> @@ -1625,7 +1624,7 @@ bool qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs,
>  
>      /* allocate clusters and store bitmaps */
>      QSIMPLEQ_FOREACH(bm, bm_list, entry) {
> -        BdrvDirtyBitmap *bitmap = bm->dirty_bitmap;
> +        bitmap = bm->dirty_bitmap;
>  
>          if (bitmap == NULL || bdrv_dirty_bitmap_readonly(bitmap)) {
>              continue;

Reviewed-by: Kevin Wolf <kwolf@redhat.com>



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 08:10:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 08:10:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602961.939802 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh3u8-0004iJ-AW; Fri, 15 Sep 2023 08:10:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602961.939802; Fri, 15 Sep 2023 08:10:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh3u8-0004iC-7k; Fri, 15 Sep 2023 08:10:20 +0000
Received: by outflank-mailman (input) for mailman id 602961;
 Fri, 15 Sep 2023 08:10:18 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=cTZx=E7=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qh3u6-0004i4-Di
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 08:10:18 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4c9dc148-539f-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 10:10:15 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-96-AH_e6IbZMfefIIrXyISEjA-1; Fri, 15 Sep 2023 04:10:11 -0400
Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com
 [10.11.54.2])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 89A2C85A5BD;
 Fri, 15 Sep 2023 08:10:10 +0000 (UTC)
Received: from redhat.com (unknown [10.39.193.146])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id D770A40C6EA8;
 Fri, 15 Sep 2023 08:10:06 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4c9dc148-539f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694765414;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=OQOzGTH+QcJO4xCc8kvvszHjY7AgCE+/6nxQstlUISE=;
	b=fn9wwaVA9kzIeiODELTRdxns0y5Xj7KhXdRBTeCKPo6NKzYKrpYsQr/8ADUbkuo0U1h0Sl
	7goJJAIBQN0FFc3J1KYZ1wF42diAGjoSWOtX5vPCI2BWxRH1iLEpYN2HGhWVfgcvkxsBvZ
	S6hL4CwvaxWvB9477Ea+OWTd0fRzZ7A=
X-MC-Unique: AH_e6IbZMfefIIrXyISEjA-1
Date: Fri, 15 Sep 2023 10:10:05 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, hreitz@redhat.com, eblake@redhat.com,
	vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com,
	pl@kamp.de, sw@weilnetz.de, sstabellini@kernel.org,
	anthony.perard@citrix.com, paul@xen.org, pbonzini@redhat.com,
	marcandre.lureau@redhat.com, berrange@redhat.com, thuth@redhat.com,
	philmd@linaro.org, stefanha@redhat.com, fam@euphon.net,
	quintela@redhat.com, peterx@redhat.com, leobras@redhat.com,
	kraxel@redhat.com, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: Re: [PATCH 6/7] block: Clean up local variable shadowing
Message-ID: <ZQQRXR7LP2fVrcMU@redhat.com>
References: <20230831132546.3525721-1-armbru@redhat.com>
 <20230831132546.3525721-7-armbru@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230831132546.3525721-7-armbru@redhat.com>
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2

Am 31.08.2023 um 15:25 hat Markus Armbruster geschrieben:
> Local variables shadowing other local variables or parameters make the
> code needlessly hard to understand.  Tracked down with -Wshadow=local.
> Clean up: delete inner declarations when they are actually redundant,
> else rename variables.
> 
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> ---
>  block.c              |  7 ++++---
>  block/rbd.c          |  2 +-
>  block/stream.c       |  1 -
>  block/vvfat.c        | 34 +++++++++++++++++-----------------
>  hw/block/xen-block.c |  6 +++---
>  5 files changed, 25 insertions(+), 25 deletions(-)

I wonder why you made vdi a separate patch, but not vvfat, even though
that has more changes. (Of course, my selfish motivation for asking this
is that I could have given a R-b for it and wouldn't have to look at it
again in a v2 :-))

> diff --git a/block.c b/block.c
> index a307c151a8..7f0003d8ac 100644
> --- a/block.c
> +++ b/block.c
> @@ -3001,7 +3001,8 @@ static BdrvChild *bdrv_attach_child_common(BlockDriverState *child_bs,
>                                             BdrvChildRole child_role,
>                                             uint64_t perm, uint64_t shared_perm,
>                                             void *opaque,
> -                                           Transaction *tran, Error **errp)
> +                                           Transaction *transaction,
> +                                           Error **errp)
>  {
>      BdrvChild *new_child;
>      AioContext *parent_ctx, *new_child_ctx;
> @@ -3088,7 +3089,7 @@ static BdrvChild *bdrv_attach_child_common(BlockDriverState *child_bs,
>          .old_parent_ctx = parent_ctx,
>          .old_child_ctx = child_ctx,
>      };
> -    tran_add(tran, &bdrv_attach_child_common_drv, s);
> +    tran_add(transaction, &bdrv_attach_child_common_drv, s);
>  
>      if (new_child_ctx != child_ctx) {
>          aio_context_release(new_child_ctx);

I think I would resolve this one the other way around. 'tran' is the
typical name for the parameter and it is the transaction that this
function should add things to.

The other one that shadows it is a local transaction that is completed
within the function. I think it's better if that one has a different
name.

As usual, being more specific than just 'tran' vs. 'transaction' would
be nice. Maybe 'aio_ctx_tran' for the nested one?

The rest looks okay.

Kevin



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 09:27:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 09:27:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602969.939813 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh56o-0000WS-Rr; Fri, 15 Sep 2023 09:27:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602969.939813; Fri, 15 Sep 2023 09:27:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh56o-0000WL-NE; Fri, 15 Sep 2023 09:27:30 +0000
Received: by outflank-mailman (input) for mailman id 602969;
 Fri, 15 Sep 2023 09:27:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=upey=E7=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qh56m-0000WF-T3
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 09:27:29 +0000
Received: from mail-wr1-x431.google.com (mail-wr1-x431.google.com
 [2a00:1450:4864:20::431])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 14dd74c1-53aa-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 11:27:25 +0200 (CEST)
Received: by mail-wr1-x431.google.com with SMTP id
 ffacd0b85a97d-307d20548adso1801431f8f.0
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 02:27:25 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 q11-20020adff50b000000b0031c71693449sm3983195wro.1.2023.09.15.02.27.24
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 15 Sep 2023 02:27:24 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 14dd74c1-53aa-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694770045; x=1695374845; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=rrxn31qdFyPW9BNgFY/Bk2Mhr8vWDuG++KxBiAye41c=;
        b=u0jcguaK7cokMzLYYBeVgUwcnDDbEG1wndOztfSW07cn/34LwwljFjc/BH+RIMN2W0
         Zkws6+OeIsbl8w9TCy8D8zvE2zFpR65bI22v9smWtpoB4Jgkz+ayKAr/wEMMqtCmoeTy
         E9nl9erWNrUif1ApN4ypIwRP5MPfdQeAS3eSE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694770045; x=1695374845;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=rrxn31qdFyPW9BNgFY/Bk2Mhr8vWDuG++KxBiAye41c=;
        b=ECBAc1dNUSwMxgLqFNc4Cc9VI6KeIwDhEGWFC3NeecvquryFF7Ci2DXTWgpOWBHF/I
         2Hz7RggVmRD9do+jvGDm0bE1iWRBPJ5ibEPeB9EkhV5uRKblDWVLJ2RR+CwPsi+cbtSD
         ZKfoUIe6Jy0P/S8cqHM0ZmRMEaCVHSo6an5rjA7DUpgyrWGoN5JDVCZ7eUTNsuid2d9s
         Van5ZVu+UTSQplAbQR0Cx16HHPcf4ACj3xjiWYXkrMLdej0d+XQO0mZVfHEETQQIZDLR
         1ykZRJFq8x8yGY8QNzN1oWxurg1SgXdR5rQzgnSEyRDO+rhAxHxeID8IaWrOepb+RjpB
         9pGA==
X-Gm-Message-State: AOJu0YyjgnI3LNL87EHTfHpzO+Vf40X4cpiYaOrubRM3qMXJbrYWFaxr
	hoEigCLGC5y7EHyk6RNQQ/VwLQ==
X-Google-Smtp-Source: AGHT+IH9I5QEPKjur3kAcPrzgTuBmCnS2eRswmuEsxlhKYXZCsm3/vowqKvACEaFexwSJ5ds8faECw==
X-Received: by 2002:a5d:4607:0:b0:31f:d8be:a310 with SMTP id t7-20020a5d4607000000b0031fd8bea310mr905821wrq.63.1694770045017;
        Fri, 15 Sep 2023 02:27:25 -0700 (PDT)
Message-ID: <a5a4e5e0-ec10-77e8-7c7a-9e89e2a9f172@citrix.com>
Date: Fri, 15 Sep 2023 10:27:24 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 4/8] x86/spec-ctrl: Extend all SPEC_CTRL_{ENTER,EXIT}_*
 comments
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-5-andrew.cooper3@citrix.com>
 <e12f46d9-25eb-d564-4cb7-0e476e741725@suse.com>
 <35177e10-3306-69fc-4ece-bba453cbdb0c@citrix.com>
 <63f0afcd-1baa-ae78-cc01-5f2e2d606201@suse.com>
In-Reply-To: <63f0afcd-1baa-ae78-cc01-5f2e2d606201@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 15/09/2023 8:07 am, Jan Beulich wrote:
> On 14.09.2023 21:23, Andrew Cooper wrote:
>> On 14/09/2023 8:58 am, Jan Beulich wrote:
>>> On 13.09.2023 22:27, Andrew Cooper wrote:
>>>> @@ -319,7 +334,14 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
>>>>      UNLIKELY_END(\@_serialise)
>>>>  .endm
>>>>  
>>>> -/* Use when exiting to Xen in IST context. */
>>>> +/*
>>>> + * Use when exiting from any entry context, back to Xen context.  This
>>>> + * includes returning to other SPEC_CTRL_{ENTRY,EXIT}_* regions with
>>>> + * unsanitised state.
>>>> + *
>>>> + * Because we might have interrupted Xen beyond SPEC_CTRL_EXIT_TO_$GUEST, we
>>>> + * must treat this as if it were an EXIT_TO_$GUEST case too.
>>>> + */
>>>>  .macro SPEC_CTRL_EXIT_TO_XEN
>>>>  /*
>>>>   * Requires %rbx=stack_end
>>> Is it really "must"? At least in theory there are ways to recognize that
>>> exit is back to Xen context outside of interrupted entry/exit regions
>>> (simply by evaluating how far below stack top %rsp is).
>> Yes, it is must - it's about how Xen behaves right now, not about some
>> theoretical future with different tracking mechanism.
> Well, deleting "must" does exactly that

Nonsense.

*When* someone changes the logic such that there's an alternative route,
the comment necessarily needs updating.  And until that point, the logic
*must* behave in this way to be correct.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 09:30:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 09:30:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602973.939822 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh59J-0002Pa-7z; Fri, 15 Sep 2023 09:30:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602973.939822; Fri, 15 Sep 2023 09:30:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh59J-0002P6-47; Fri, 15 Sep 2023 09:30:05 +0000
Received: by outflank-mailman (input) for mailman id 602973;
 Fri, 15 Sep 2023 09:30:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=upey=E7=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qh59H-0002Av-VU
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 09:30:03 +0000
Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com
 [2a00:1450:4864:20::32b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 72079673-53aa-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 11:30:02 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-403004a96a4so21432285e9.3
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 02:30:01 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 j3-20020a056000124300b0031fb91f23e9sm3968812wrx.43.2023.09.15.02.30.00
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 15 Sep 2023 02:30:01 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 72079673-53aa-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694770201; x=1695375001; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=GtmmLcHcRD+wlcitNaQuNNPcuwSgAbCwQKzzoSQ/4Bc=;
        b=ut3s+W6R2RtI6dR+uzDFzyOSGsdyqwzkYVddm3jljtHARiiNQagD5pH9yTT2V7kEZb
         9j3XerYiM6warq0l/0nJAb2FmBrN/Pb6iKYpmNHXyigBnn/EDJ4O1UHbjEOjGPL7PGdA
         fjSZKMf56WXjnX7hjqaWjCPI1lgrJ5SIfzHow=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694770201; x=1695375001;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=GtmmLcHcRD+wlcitNaQuNNPcuwSgAbCwQKzzoSQ/4Bc=;
        b=VbVLerCupfuxKldO7lAHmVANxId/mV7l6KDK3sIK7Xb7Urcckparf9ukkvMhYbo/fj
         qY5tAVOJR0pZeHJ7AYakeXsblLhxsiLHmNdtz/29U8yPi9x33MyUhiMVvXREBtndN9iL
         ZoBXNFoLeHSAkTvGx2BzyyP1r40zsmweWy/BQE90Bvu9wknIrRDfYOiGX6nCqKCCAByh
         Mu38HbeG1CRf8Nm8/0xCmp5bdkEuZ/ZDivnHchGAU7GBQ1MvgX3W7Nc1OvyqkqemRKgv
         Wtoq5DDunzg3Ny08VFTpCQExj+6tzA4uBoKoj3NRAn1U+fxtoAmMRngNqsNqZysk8pmc
         ehyw==
X-Gm-Message-State: AOJu0YwRAPjoxu+VtejhtIDYQieaibuSHfEvdSOxziCtZEr//6josS5f
	cgNTJXECCsa0rwvtzWZ+TALbcA==
X-Google-Smtp-Source: AGHT+IEm2FEBv2wfHIRlMUCHtKhHdrR2XAJVDrPOpdc9HJcP5BNekEAjBEiHoZ8x4u5uBuzDbMyBJw==
X-Received: by 2002:a5d:4248:0:b0:31c:6409:df17 with SMTP id s8-20020a5d4248000000b0031c6409df17mr927675wrr.41.1694770201337;
        Fri, 15 Sep 2023 02:30:01 -0700 (PDT)
Message-ID: <7701767a-5323-8115-04aa-ad7f35224924@citrix.com>
Date: Fri, 15 Sep 2023 10:30:00 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 6/8] x86/entry: Track the IST-ness of an entry for the
 exit paths
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230913202758.508225-1-andrew.cooper3@citrix.com>
 <20230913202758.508225-7-andrew.cooper3@citrix.com>
 <762b58fe-a841-f92c-93a8-77dbb86bf118@suse.com>
 <fb9ec99d-9c76-82ff-9b82-22fff1a62c6c@citrix.com>
 <b6640dbb-05e5-7114-dc70-012c27dd96e7@suse.com>
In-Reply-To: <b6640dbb-05e5-7114-dc70-012c27dd96e7@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 15/09/2023 8:13 am, Jan Beulich wrote:
> On 14.09.2023 21:44, Andrew Cooper wrote:
>> On 14/09/2023 10:32 am, Jan Beulich wrote:
>>> On 13.09.2023 22:27, Andrew Cooper wrote:
>>>> --- a/xen/arch/x86/x86_64/entry.S
>>>> +++ b/xen/arch/x86/x86_64/entry.S
>>>> @@ -142,10 +142,16 @@ process_trap:
>>>>  
>>>>          .section .text.entry, "ax", @progbits
>>>>  
>>>> -/* %rbx: struct vcpu, interrupts disabled */
>>>> +/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
>>>>  restore_all_guest:
>>>> -        ASSERT_INTERRUPTS_DISABLED
>>>>  
>>>> +#ifdef CONFIG_DEBUG
>>>> +        mov   %rsp, %rdi
>>>> +        mov   %r12, %rsi
>>>> +        call  check_ist_exit
>>>> +#endif
>>>> +
>>>> +        ASSERT_INTERRUPTS_DISABLED
>>>>          /* Stash guest SPEC_CTRL value while we can read struct vcpu. */
>>>>          mov VCPU_arch_msrs(%rbx), %rdx
>>>>          mov VCPUMSR_spec_ctrl_raw(%rdx), %r15d
>>> Even here I don't think I see a need for the addition. Plus if the check
>>> is warranted here, is it really necessary for it to live ahead of the
>>> interrupts-disabled check?
>> What makes you think there is a relevance to the order of two assertions
>> in fully irqs-off code?
> You explicitly making it more churn than strictly needed. IOW I was
> simply wondering whether I was overlooking some aspect.

That was just the diff algorithm after accidentally removing the newline
after the ASSERT.  I've undone that, and the hunk is simple additions
for the check, like it is in the other two hunks.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 09:56:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 09:56:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602979.939832 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh5ZE-00009v-At; Fri, 15 Sep 2023 09:56:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602979.939832; Fri, 15 Sep 2023 09:56:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh5ZE-00009o-6Q; Fri, 15 Sep 2023 09:56:52 +0000
Received: by outflank-mailman (input) for mailman id 602979;
 Fri, 15 Sep 2023 09:56:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fBSG=E7=redhat.com=aesteve@srs-se1.protection.inumbo.net>)
 id 1qh5ZC-00009h-TU
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 09:56:51 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2e27dca6-53ae-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 11:56:46 +0200 (CEST)
Received: from mail-pj1-f72.google.com (mail-pj1-f72.google.com
 [209.85.216.72]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-159-91wgk6tnP7KlUjB_IxAYsQ-1; Fri, 15 Sep 2023 05:56:43 -0400
Received: by mail-pj1-f72.google.com with SMTP id
 98e67ed59e1d1-26d43d10ce5so1741738a91.3
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 02:56:43 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2e27dca6-53ae-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1694771805;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=BkKKS6tSB+26FQ9BzwmsrnIMDYjN2TJ+MfbPbKPVSpI=;
	b=XYs9qv5xM3kMUTE161gEGlZcPaWIszQ3R8mtttYZR0JdJDcUKqDwfKQ7bGkFSy4jwo2rT/
	UKwWzvtebRudtOnH/1YEAwrO+pAXJNyS3xen8JaiqKp/+UusX6R/VL42bN1VaTycTKkC0l
	5D+/JSNTQl4jE9MKeS4gM3sFyzfHcm0=
X-MC-Unique: 91wgk6tnP7KlUjB_IxAYsQ-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694771803; x=1695376603;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=BkKKS6tSB+26FQ9BzwmsrnIMDYjN2TJ+MfbPbKPVSpI=;
        b=Yd65QiUyYbOmwd7wwlpoHft7y2N2l95JOJSFwIavx6KinqWaG5zXeRkcIczCDyFTzA
         gzUYuaF0UwvovkqIgOBjyCS2Yj7tMF+7gsGnmgDEy5uDAFINePYnskdzkdyseFvdI12L
         sbKA637fF8nkM6Oaz5x59YsX1BFoCYQT0AaY3JJ8zhvecsY0Ar02jsmbr7myxq0H0CUS
         LIjqjfvpVOp/I/Zk3nHTneSUmvlDiKexKJ+nTUyB4MVy5M0FeYs2ACx0KSWf03FQIB9o
         +4lAttIYqXASN5bYqp7ALb8qmdImRqc9vtt7QzQdIzKU+zmhYgMIjySkPQRXPUuo9NIn
         XzgA==
X-Gm-Message-State: AOJu0Yyp0RCJyL30VvDgYlEiR4LiNCzaLOR4agUwxH/KlqfHWAAIwuwm
	xWbqqcZEr6+1Lea5+RcyTUy9YXj2FgEchMGfjOlgxQVegM0pvlTYvOoqxPAXUdPle4YIZn0NX94
	0zMCK9sjtpJBPlHAudlx5leIGWNPsp0PCjno8cTkQEkk=
X-Received: by 2002:a17:90a:fc8a:b0:268:ac3:b1f6 with SMTP id ci10-20020a17090afc8a00b002680ac3b1f6mr920397pjb.24.1694771802744;
        Fri, 15 Sep 2023 02:56:42 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IEK4dpZu0G+oM9juAeEj5vPzg590LF150ygT+s4QJb92uJBXaK0GIJhAxzCXSXBb03Huwrt5NdX+OZNXsY0uAs=
X-Received: by 2002:a17:90a:fc8a:b0:268:ac3:b1f6 with SMTP id
 ci10-20020a17090afc8a00b002680ac3b1f6mr920386pjb.24.1694771802376; Fri, 15
 Sep 2023 02:56:42 -0700 (PDT)
MIME-Version: 1.0
References: <20230831093252.2461282-1-ray.huang@amd.com> <20230831093252.2461282-11-ray.huang@amd.com>
 <58a4e81f-b0ce-49db-8a6a-f6b5bdc3d2d6@daynix.com> <ZPw2UjxogIULU722@amd.com>
 <11c227e8-a464-41ce-a435-82c570746388@daynix.com> <CADSE00Kc1Jza7sbERRndWbXgoF1s2V-FNxEOWJ6WgvomzgvMPA@mail.gmail.com>
 <cf99ac00-6f48-4778-b319-6079a931ba5d@daynix.com> <CADSE00+6zcT7iKR0JW1Bk8es6HtBpzAKa9JW6u5yyjDoLPw2KQ@mail.gmail.com>
 <5e88f5d5-5aa2-4052-b250-69c2a443344f@daynix.com> <CADSE00+BUq-6jKH3v2PYNThn+9Z4UCFcr3Cv9Z48eUX0b=6ymA@mail.gmail.com>
 <3918c96c-f106-494d-8e97-6d86cef8df27@daynix.com> <CADSE00LNYm+vKaYwnTAdECGUXPCfiJ7aLqszDuqSzCLLhVOHhQ@mail.gmail.com>
 <0adaf816-e050-43c3-8284-fc41627543ef@daynix.com> <CADSE00Kyid+=FkkopSGDAyeJ_MY2exDdxoPf18pzthKy70kkKg@mail.gmail.com>
 <391f745f-d00f-4289-be68-7590bceb902d@daynix.com>
In-Reply-To: <391f745f-d00f-4289-be68-7590bceb902d@daynix.com>
From: Albert Esteve <aesteve@redhat.com>
Date: Fri, 15 Sep 2023 11:56:31 +0200
Message-ID: <CADSE00K+fva9TXZOnet3bYWkU_kiFpW3oEjxJX-mXL_gFhvXkQ@mail.gmail.com>
Subject: Re: [QEMU PATCH v4 10/13] virtio-gpu: Resource UUID
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>, 
	"Michael S . Tsirkin" <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, 
	Antonio Caggiano <antonio.caggiano@collabora.com>, 
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, 
	Dmitry Osipenko <dmitry.osipenko@collabora.com>, =?UTF-8?B?QWxleCBCZW5uw6ll?= <alex.bennee@linaro.org>, 
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
	Gurchetan Singh <gurchetansingh@chromium.org>, "ernunes@redhat.com" <ernunes@redhat.com>, 
	=?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= <philmd@linaro.org>, 
	Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	"Deucher, Alexander" <Alexander.Deucher@amd.com>, "Koenig, Christian" <Christian.Koenig@amd.com>, 
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>, 
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>, 
	"Huang, Honglei1" <Honglei1.Huang@amd.com>, "Zhang, Julia" <Julia.Zhang@amd.com>, 
	"Chen, Jiqian" <Jiqian.Chen@amd.com>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Type: multipart/alternative; boundary="00000000000041a695060562cf91"

--00000000000041a695060562cf91
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 14, 2023 at 6:56=E2=80=AFPM Akihiko Odaki <akihiko.odaki@daynix=
.com>
wrote:

> On 2023/09/14 17:29, Albert Esteve wrote:
> >
> >
> > On Thu, Sep 14, 2023 at 9:17=E2=80=AFAM Akihiko Odaki <akihiko.odaki@da=
ynix.com
> > <mailto:akihiko.odaki@daynix.com>> wrote:
> >
> >     On 2023/09/13 23:18, Albert Esteve wrote:
> >      >
> >      >
> >      > On Wed, Sep 13, 2023 at 3:43=E2=80=AFPM Akihiko Odaki
> >     <akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>
> >      > <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>>> wrote:
> >      >
> >      >     On 2023/09/13 21:58, Albert Esteve wrote:
> >      >      >
> >      >      >
> >      >      > On Wed, Sep 13, 2023 at 2:22=E2=80=AFPM Akihiko Odaki
> >      >     <akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>
> >     <mailto:akihiko.odaki@daynix.com <mailto:akihiko.odaki@daynix.com>>
> >      >      > <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>
> >      >     <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>>>> wrote:
> >      >      >
> >      >      >     On 2023/09/13 20:34, Albert Esteve wrote:
> >      >      >      >
> >      >      >      >
> >      >      >      > On Wed, Sep 13, 2023 at 12:34=E2=80=AFPM Akihiko O=
daki
> >      >      >     <akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com> <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>>
> >      >     <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com> <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>>>
> >      >      >      > <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>
> >      >     <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>>
> >      >      >     <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>
> >      >     <mailto:akihiko.odaki@daynix.com
> >     <mailto:akihiko.odaki@daynix.com>>>>> wrote:
> >      >      >      >
> >      >      >      >     On 2023/09/13 16:55, Albert Esteve wrote:
> >      >      >      >      > Hi Antonio,
> >      >      >      >      >
> >      >      >      >      > If I'm not mistaken, this patch is related
> with:
> >      >      >      >      >
> >      >      >      >
> >      >      >
> >      >
> >     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html
> >     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.htm=
l
> >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>
> >      >      >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>
> >      >      >      >
> >      >      >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>>
> >      >      >      >      >
> >      >      >      >
> >      >      >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>
> >      >      >      >
> >      >      >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html> <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html>>>>>
> >      >      >      >      > IMHO, ideally, virtio-gpu and vhost-user-gp=
u
> >     both,
> >      >     would
> >      >      >     use the
> >      >      >      >      > infrastructure from the patch I linked to
> >     store the
> >      >      >      >      > virtio objects, so that they can be later
> >     shared with
> >      >      >     other devices.
> >      >      >      >
> >      >      >      >     I don't think such sharing is possible because
> the
> >      >     resources are
> >      >      >      >     identified by IDs that are local to the device=
.
> >     That also
> >      >      >     complicates
> >      >      >      >     migration.
> >      >      >      >
> >      >      >      >     Regards,
> >      >      >      >     Akihiko Odaki
> >      >      >      >
> >      >      >      > Hi Akihiko,
> >      >      >      >
> >      >      >      > As far as I understand, the feature to export
> >      >     dma-bufs from the
> >      >      >      > virtgpu was introduced as part of the virtio
> >     cross-device
> >      >     sharing
> >      >      >      > proposal [1]. Thus, it shall be posible. When
> >      >     virtgpu ASSING_UUID,
> >      >      >      > it exports and identifies the dmabuf resource, so
> that
> >      >     when the
> >      >      >     dmabuf gets
> >      >      >      > shared inside the guest (e.g., with virtio-video),
> >     we can
> >      >     use the
> >      >      >     assigned
> >      >      >      > UUID to find the dmabuf in the host (using the
> >     patch that I
> >      >      >     linked above),
> >      >      >      > and import it.
> >      >      >      >
> >      >      >      > [1] - https://lwn.net/Articles/828988/
> >     <https://lwn.net/Articles/828988/>
> >      >     <https://lwn.net/Articles/828988/
> >     <https://lwn.net/Articles/828988/>>
> >      >      >     <https://lwn.net/Articles/828988/
> >     <https://lwn.net/Articles/828988/>
> >      >     <https://lwn.net/Articles/828988/
> >     <https://lwn.net/Articles/828988/>>>
> >      >     <https://lwn.net/Articles/828988/
> >     <https://lwn.net/Articles/828988/> <https://lwn.net/Articles/828988=
/
> >     <https://lwn.net/Articles/828988/>>
> >      >      >     <https://lwn.net/Articles/828988/
> >     <https://lwn.net/Articles/828988/>
> >      >     <https://lwn.net/Articles/828988/
> >     <https://lwn.net/Articles/828988/>>>>
> >      >      >
> >      >      >     The problem is that virtio-gpu can have other kind of
> >      >     resources like
> >      >      >     pixman and OpenGL textures and manage them and
> >     DMA-BUFs with
> >      >     unified
> >      >      >     resource ID.
> >      >      >
> >      >      >
> >      >      > I see.
> >      >      >
> >      >      >
> >      >      >     So you cannot change:
> >      >      >     g_hash_table_insert(g->resource_uuids,
> >      >      >     GUINT_TO_POINTER(assign.resource_id), uuid);
> >      >      >     by:
> >      >      >     virtio_add_dmabuf(uuid, assign.resource_id);
> >      >      >
> >      >      >     assign.resource_id is not DMA-BUF file descriptor, an=
d
> the
> >      >     underlying
> >      >      >     resource my not be DMA-BUF at first place.
> >      >      >
> >      >      >
> >      >      > I didn't really look into the patch in-depth, so the code
> was
> >      >     intended
> >      >      > to give an idea of how the implementation would look like
> with
> >      >      > the cross-device patch API. Indeed, it is not the
> resource_id,
> >      >      > (I just took a brief look at the virtio
> >     specificacion 1.2), but the
> >      >      > underlying
> >      >      > resource what we want to use here.
> >      >      >
> >      >      >
> >      >      >     Also, since this lives in the common code that is not
> used
> >      >     only by
> >      >      >     virtio-gpu-gl but also virtio-gpu, which supports
> >     migration,
> >      >     we also
> >      >      >     need to take care of that. It is not a problem for
> >     DMA-BUF as
> >      >      >     DMA-BUF is
> >      >      >     not migratable anyway, but the situation is different
> >     in this
> >      >     case.
> >      >      >
> >      >      >     Implementing cross-device sharing is certainly a
> >     possibility,
> >      >     but that
> >      >      >     requires more than dealing with DMA-BUFs.
> >      >      >
> >      >      >
> >      >      > So, if I understood correctly, dmabufs are just a subset
> >     of the
> >      >     resources
> >      >      > that the gpu manages, or can assign UUIDs to. I am not
> >     sure why
> >      >      > the virt gpu driver would want to send a ASSIGN_UUID for
> >     anything
> >      >      > that is not a dmabuf (are we sure it does?), but I am not
> >     super
> >      >     familiarized
> >      >      > with virtgpu to begin with.
> >      >
> >      >     In my understanding, an resource will be first created as
> >     OpenGL or
> >      >     Vulkan textures and then exported as a DMA-BUF file
> >     descriptor. For
> >      >     these resource types exporting/importing code is mandatory.
> >      >
> >      >     For pixman buffers (i.e., non-virgl device), I don't see a
> >     compelling
> >      >     reason to have cross-device sharing. It is possible to omit
> >     resource
> >      >     UUID feature from non-virgl device to avoid implementing
> >     complicated
> >      >     migration.
> >      >
> >      >
> >      > I see, thanks for the clarification.
> >      > I would assume you could avoid the UUID feature for those
> >     resources, but
> >      > I will need to check the driver implementation. It is worth
> checking
> >      > though, if
> >      > that would simplify the implementation.
> >      >
> >      >
> >      >      > But I see that internally, the GPU specs relate a UUID
> with a
> >      >     resource_id,
> >      >      > so we still need both tables:
> >      >      > - one to relate UUID with resource_id to be able to locat=
e
> the
> >      >      > underlying resource
> >      >      > - the table that holds the dmabuf with the UUID for
> >     cross-device
> >      >     sharing
> >      >      >
> >      >      > With that in mind, sounds to me that the support for
> >     cross-device
> >      >      > sharing could
> >      >      > be added on top of this patch, once
> >      >      >
> >      >
> >     https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html
> >     <https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.htm=
l
> >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html>>
> >      >      >
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html>
> >      >
> >       <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html <
> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html>>>
> >      >      > lands.
> >      >
> >      >     That is possible, but I think it's better to implement
> >     cross-device
> >      >     sharing at the same time introducing virtio-dmabuf.
> >      >
> >      >     The current design of virtio-dmabuf looks somewhat
> >     inconsistent; it's
> >      >     named "dmabuf", but internally the UUIDs are stored into
> >     something
> >      >     named
> >      >     "resource_uuids" and it has SharedObjectType so it's more
> like a
> >      >     generic
> >      >     resource sharing mechanism. If you actually have an
> >     implementation of
> >      >     cross-device sharing using virtio-dmabuf, it will be clear
> >     what kind of
> >      >     feature is truly necessary.
> >      >
> >      >
> >      > Yeah, the file was named as virtio-dmabuf following the kernel
> >      > implementation. Also, because for the moment it only aims to sha=
re
> >      > dmabufs. However, virtio specs leave the virtio object
> >     defintion vague [1]
> >      > (I guess purposely). It is up to the specific devices to define
> >     what an
> >      > object
> >      > means for them. So the implementation tries to follow that, and
> >      > leave the contents of the table generic. The table can hold any
> >     kind of
> >      > object,
> >      > and the API exposes type-specific functions (for dmabufs, or
> others).
> >     In the guest kernel, the name "virtio_dma_buf" represents the
> interface
> >     between the *guest* kernel and *guest* user-space. It makes sense
> since
> >     the cross-device resource sharing is managed by the userspace and
> >     DMA-BUF is the only interface between them for this purpose.
> >
> >     The situation is different for QEMU; QEMU interacts with backends
> using
> >     backend-specific interfaces (OpenGL/pixman) and virgl is capable to
> >     export textures as DMA-BUF. DMA-BUF is not universal in this sense.
> As
> >     such, we cannot just borrow the kernel-side naming but invent one.
> >
> > It is not a gpu-specific feature. It is a generic cross-device sharing
> > mechanism for virtio objects. In this case, virtio objects happen to be
> > dmabufs in this first iteration. Hence, the name.
> >
> > virtio-gpu (and vhost-user-gpu) will use this feature only with virgl,
> > that is
> > fine, and transversal to the object-sharing mechanism. It allows
> > to share dmabufs in the host following how they are shared in the guest=
.
> > The virtgpu driver may call ASSIGN_UUID for other types of resources
> > (not sure,
> > but could be), but they will never be shared with other virtio devices.
> > So they are not too relevant. Also, the shared objects table could
> > potentially
> > be accessed from any virtio device, not only virtio-gpu or virtio-video=
.
>
> The virtgpu driver will call ASSIGN_UUID for resources that are backed
> with pixman buffer. What is used as the backing store for resources is
> an implementation detail of VMM and the guest cannot know it. For the
> guest, they are same kind of resources (2D images).
>
> Ok, got it. In any case, those resources that are actually backed by a
dmabuf
ought to be shared using virtio_dmabuf. I think that is the key point of
this discussion.

That support can be added once both this patch and the virtio_dmabuf land.

--00000000000041a695060562cf91
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div><div dir=3D"ltr" class=3D"gmail_sign=
ature"><div dir=3D"ltr"><br></div></div></div></div><br><div class=3D"gmail=
_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, Sep 14, 2023 at 6:56=
=E2=80=AFPM Akihiko Odaki &lt;<a href=3D"mailto:akihiko.odaki@daynix.com">a=
kihiko.odaki@daynix.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_=
quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,=
204);padding-left:1ex">On 2023/09/14 17:29, Albert Esteve wrote:<br>
&gt; <br>
&gt; <br>
&gt; On Thu, Sep 14, 2023 at 9:17=E2=80=AFAM Akihiko Odaki &lt;<a href=3D"m=
ailto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com<=
/a> <br>
&gt; &lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blan=
k">akihiko.odaki@daynix.com</a>&gt;&gt; wrote:<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0On 2023/09/13 23:18, Albert Esteve wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; On Wed, Sep 13, 2023 at 3:43=E2=80=AFPM Akihi=
ko Odaki<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"mailto:akihiko.odaki@daynix.com" tar=
get=3D"_blank">akihiko.odaki@daynix.com</a> &lt;mailto:<a href=3D"mailto:ak=
ihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;<=
br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; &lt;mailto:<a href=3D"mailto:akihiko.odaki@da=
ynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;&gt;&gt; wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0On 2023/09/13 21:58, Alber=
t Esteve wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; On Wed, Sep 13, 2023=
 at 2:22=E2=80=AFPM Akihiko Odaki<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"mailto:akih=
iko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a> &lt;ma=
ilto:<a href=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.=
odaki@daynix.com</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a> &lt;mailto:<a href=3D"ma=
ilto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</=
a>&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; &lt;mailto:<a href=
=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix=
.com</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mail=
to:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a>=
<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;&gt;&gt;&gt; wrote:<b=
r>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0O=
n 2023/09/13 20:34, Albert Esteve wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; On Wed, Sep 13, 2023 at 12:34=E2=80=AFPM Akihiko Odaki<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&=
lt;<a href=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.od=
aki@daynix.com</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt; &lt;mailto:<a href=
=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix=
.com</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mail=
to:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a>=
<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt; &lt;mailto:<a href=
=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix=
.com</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; &lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blan=
k">akihiko.odaki@daynix.com</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mail=
to:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a>=
<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&=
lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.com" target=3D"_blank">aki=
hiko.odaki@daynix.com</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mail=
to:akihiko.odaki@daynix.com" target=3D"_blank">akihiko.odaki@daynix.com</a>=
<br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:akihiko.odaki@daynix.c=
om" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;&gt;&gt;&gt;&gt; wrot=
e:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0On 2023/09/13 16:55, Albert Esteve wrote:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; Hi Antonio,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; If I&#39;m not mistaken, this patch is relate=
d with:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lists.gnu.org/archive/html/qemu-=
devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https://l=
ists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive/html/q=
emu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https=
://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt; &lt;<a href=3D"https://lists.=
gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" t=
arget=3D"_blank">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0=
1853.html</a> &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/=
2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https://lists.g=
nu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt; &lt;<a href=3D"https://lists.=
gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" t=
arget=3D"_blank">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0=
1853.html</a> &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/=
2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https://lists.g=
nu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt; &lt;<a hre=
f=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" r=
el=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/html/qemu=
-devel/2023-09/msg01853.html</a> &lt;<a href=3D"https://lists.gnu.org/archi=
ve/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_bla=
nk">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>=
&gt; &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/m=
sg01853.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/ar=
chive/html/qemu-devel/2023-09/msg01853.html</a> &lt;<a href=3D"https://list=
s.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer"=
 target=3D"_blank">https://lists.gnu.org/archive/html/qemu-devel/2023-09/ms=
g01853.html</a>&gt;&gt;&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt; &lt;<a href=3D"https://lists.=
gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" t=
arget=3D"_blank">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0=
1853.html</a> &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/=
2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https://lists.g=
nu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt; &lt;<a hre=
f=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" r=
el=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/html/qemu=
-devel/2023-09/msg01853.html</a> &lt;<a href=3D"https://lists.gnu.org/archi=
ve/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_bla=
nk">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>=
&gt; &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/m=
sg01853.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/ar=
chive/html/qemu-devel/2023-09/msg01853.html</a> &lt;<a href=3D"https://list=
s.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer"=
 target=3D"_blank">https://lists.gnu.org/archive/html/qemu-devel/2023-09/ms=
g01853.html</a>&gt;&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
3.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01853.html</a>&gt; &lt;<a href=3D"https://lists.=
gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" t=
arget=3D"_blank">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0=
1853.html</a> &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/=
2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_blank">https://lists.g=
nu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>&gt;&gt; &lt;<a hre=
f=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" r=
el=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/html/qemu=
-devel/2023-09/msg01853.html</a> &lt;<a href=3D"https://lists.gnu.org/archi=
ve/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer" target=3D"_bla=
nk">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html</a>=
&gt; &lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/m=
sg01853.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/ar=
chive/html/qemu-devel/2023-09/msg01853.html</a> &lt;<a href=3D"https://list=
s.gnu.org/archive/html/qemu-devel/2023-09/msg01853.html" rel=3D"noreferrer"=
 target=3D"_blank">https://lists.gnu.org/archive/html/qemu-devel/2023-09/ms=
g01853.html</a>&gt;&gt;&gt;&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; IMHO, ideally, virtio-gpu and vhost-user-gpu<=
br>
&gt;=C2=A0 =C2=A0 =C2=A0both,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0would<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0u=
se the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; infrastructure from the patch I linked to<br>
&gt;=C2=A0 =C2=A0 =C2=A0store the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; virtio objects, so that they can be later<br>
&gt;=C2=A0 =C2=A0 =C2=A0shared with<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0o=
ther devices.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0I don&#39;t think such sharing is possible because =
the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0resources are<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0identified by IDs that are local to the device.<br>
&gt;=C2=A0 =C2=A0 =C2=A0That also<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0c=
omplicates<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0migration.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0Regards,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;=C2=A0 =C2=A0 =C2=A0Akihiko Odaki<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; Hi Akihiko,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; As far as I understand, the feature to export<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0dma-bufs=C2=A0from the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; virtgpu was introduced as part of the virtio<br>
&gt;=C2=A0 =C2=A0 =C2=A0cross-device<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0sharing<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; proposal [1]. Thus, it shall be posible. When<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0virtgpu=C2=A0ASSING_UUID,<=
br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; it exports and identifies the dmabuf resource, so that<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0when the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0d=
mabuf gets<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; shared inside the guest (e.g., with virtio-video),<br>
&gt;=C2=A0 =C2=A0 =C2=A0we can<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0use the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0a=
ssigned<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; UUID to find the dmabuf in the host (using the<br>
&gt;=C2=A0 =C2=A0 =C2=A0patch that I<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0l=
inked above),<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; and import it.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 =
&gt; [1] - <a href=3D"https://lwn.net/Articles/828988/" rel=3D"noreferrer" =
target=3D"_blank">https://lwn.net/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn=
.net/Articles/828988/" rel=3D"noreferrer" target=3D"_blank">https://lwn.net=
/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&=
lt;<a href=3D"https://lwn.net/Articles/828988/" rel=3D"noreferrer" target=
=3D"_blank">https://lwn.net/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn=
.net/Articles/828988/" rel=3D"noreferrer" target=3D"_blank">https://lwn.net=
/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn=
.net/Articles/828988/" rel=3D"noreferrer" target=3D"_blank">https://lwn.net=
/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
 &lt;<a href=3D"https://lwn.net/Articles/828988/" rel=3D"noreferrer" target=
=3D"_blank">https://lwn.net/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&=
lt;<a href=3D"https://lwn.net/Articles/828988/" rel=3D"noreferrer" target=
=3D"_blank">https://lwn.net/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn=
.net/Articles/828988/" rel=3D"noreferrer" target=3D"_blank">https://lwn.net=
/Articles/828988/</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lwn.net/Articles/828988/" re=
l=3D"noreferrer" target=3D"_blank">https://lwn.net/Articles/828988/</a>&gt;=
&gt;&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0T=
he problem is that virtio-gpu can have other kind of<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0resources like<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0p=
ixman and OpenGL textures and manage them and<br>
&gt;=C2=A0 =C2=A0 =C2=A0DMA-BUFs with<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0unified<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0r=
esource ID.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; I see.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0S=
o you cannot change:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0g=
_hash_table_insert(g-&gt;resource_uuids,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0G=
UINT_TO_POINTER(assign.resource_id), uuid);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0b=
y:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0v=
irtio_add_dmabuf(uuid, assign.resource_id);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0a=
ssign.resource_id is not DMA-BUF file descriptor, and the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0underlying<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0r=
esource my not be DMA-BUF at first place.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; I didn&#39;t really =
look into the patch in-depth, so the=C2=A0code was<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0intended<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; to give an idea of h=
ow the implementation would look like with<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; the cross-device pat=
ch API. Indeed, it is not the resource_id,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; (I just took a brief=
 look at the virtio<br>
&gt;=C2=A0 =C2=A0 =C2=A0specificacion=C2=A01.2), but the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; underlying<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; resource what we wan=
t to use here.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0A=
lso, since this lives in the common code that is not used<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0only by<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0v=
irtio-gpu-gl but also virtio-gpu, which supports<br>
&gt;=C2=A0 =C2=A0 =C2=A0migration,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0we also<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0n=
eed to take care of that. It is not a problem for<br>
&gt;=C2=A0 =C2=A0 =C2=A0DMA-BUF as<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0D=
MA-BUF is<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0n=
ot migratable anyway, but the situation is different<br>
&gt;=C2=A0 =C2=A0 =C2=A0in this<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0case.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0I=
mplementing cross-device sharing is certainly a<br>
&gt;=C2=A0 =C2=A0 =C2=A0possibility,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0but that<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0r=
equires more than dealing with DMA-BUFs.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; So, if I understood =
correctly, dmabufs=C2=A0are just a subset<br>
&gt;=C2=A0 =C2=A0 =C2=A0of the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0resources<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; that the gpu manages=
, or can assign UUIDs to. I am not<br>
&gt;=C2=A0 =C2=A0 =C2=A0sure why<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; the virt gpu driver =
would want to send a ASSIGN_UUID for<br>
&gt;=C2=A0 =C2=A0 =C2=A0anything<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; that is not a dmabuf=
 (are we sure it does?), but I am not<br>
&gt;=C2=A0 =C2=A0 =C2=A0super<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0familiarized<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; with virtgpu=C2=A0to=
 begin with.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0In my understanding, an re=
source will be first created as<br>
&gt;=C2=A0 =C2=A0 =C2=A0OpenGL or<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0Vulkan textures and then e=
xported as a DMA-BUF file<br>
&gt;=C2=A0 =C2=A0 =C2=A0descriptor. For<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0these resource types expor=
ting/importing code is mandatory.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0For pixman buffers (i.e., =
non-virgl device), I don&#39;t see a<br>
&gt;=C2=A0 =C2=A0 =C2=A0compelling<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0reason to have cross-devic=
e sharing. It is possible to omit<br>
&gt;=C2=A0 =C2=A0 =C2=A0resource<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0UUID feature from non-virg=
l device to avoid implementing<br>
&gt;=C2=A0 =C2=A0 =C2=A0complicated<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0migration.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; I see, thanks for the clarification.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; I would assume you could avoid the UUID featu=
re for those<br>
&gt;=C2=A0 =C2=A0 =C2=A0resources, but<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; I will need to check the driver implementatio=
n. It is worth checking<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; though, if<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; that would simplify the implementation.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; But I see that inter=
nally, the GPU specs relate a UUID with a<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0resource_id,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; so we still need bot=
h tables:<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; - one to relate UUID=
 with resource_id to be able to locate the<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; underlying resource<=
br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; - the table that hol=
ds the dmabuf with the UUID for<br>
&gt;=C2=A0 =C2=A0 =C2=A0cross-device<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0sharing<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; With that in mind, s=
ounds to me that the support for<br>
&gt;=C2=A0 =C2=A0 =C2=A0cross-device<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; sharing could<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; be added on top of t=
his patch, once<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lists.gnu.org/archive/html/qemu-=
devel/2023-09/msg01850.html" rel=3D"noreferrer" target=3D"_blank">https://l=
ists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive/html/q=
emu-devel/2023-09/msg01850.html" rel=3D"noreferrer" target=3D"_blank">https=
://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01850.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
0.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01850.html</a>&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01850.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
0.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01850.html</a>&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://lists.gnu.org/archive=
/html/qemu-devel/2023-09/msg01850.html" rel=3D"noreferrer" target=3D"_blank=
">https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg01850.html</a> &=
lt;<a href=3D"https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg0185=
0.html" rel=3D"noreferrer" target=3D"_blank">https://lists.gnu.org/archive/=
html/qemu-devel/2023-09/msg01850.html</a>&gt;&gt;&gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0 &gt; lands.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0That is possible, but I th=
ink it&#39;s better to implement<br>
&gt;=C2=A0 =C2=A0 =C2=A0cross-device<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0sharing at the same time i=
ntroducing virtio-dmabuf.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0The current design of virt=
io-dmabuf looks somewhat<br>
&gt;=C2=A0 =C2=A0 =C2=A0inconsistent; it&#39;s<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0named &quot;dmabuf&quot;, =
but internally the UUIDs are stored into<br>
&gt;=C2=A0 =C2=A0 =C2=A0something<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0named<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0&quot;resource_uuids&quot;=
 and it has SharedObjectType so it&#39;s more like a<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0generic<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0resource sharing mechanism=
. If you actually have an<br>
&gt;=C2=A0 =C2=A0 =C2=A0implementation of<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0cross-device sharing using=
 virtio-dmabuf, it will be clear<br>
&gt;=C2=A0 =C2=A0 =C2=A0what kind of<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =C2=A0feature is truly necessary=
.<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; Yeah, the file was named as virtio-dmabuf fol=
lowing the kernel<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; implementation. Also, because for the moment =
it only aims to share<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; dmabufs. However, virtio specs leave the virt=
io object<br>
&gt;=C2=A0 =C2=A0 =C2=A0defintion=C2=A0vague [1]<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; (I guess purposely). It is up to the specific=
 devices to define<br>
&gt;=C2=A0 =C2=A0 =C2=A0what an<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; object<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; means for them. So the implementation tries t=
o follow that, and<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; leave the contents of the table generic. The =
table can hold any<br>
&gt;=C2=A0 =C2=A0 =C2=A0kind of<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; object,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 &gt; and the API exposes type-specific functions (=
for dmabufs,=C2=A0or others).<br>
&gt;=C2=A0 =C2=A0 =C2=A0In the guest kernel, the name &quot;virtio_dma_buf&=
quot; represents the interface<br>
&gt;=C2=A0 =C2=A0 =C2=A0between the *guest* kernel and *guest* user-space. =
It makes sense since<br>
&gt;=C2=A0 =C2=A0 =C2=A0the cross-device resource sharing is managed by the=
 userspace and<br>
&gt;=C2=A0 =C2=A0 =C2=A0DMA-BUF is the only interface between them for this=
 purpose.<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0The situation is different for QEMU; QEMU interacts=
 with backends using<br>
&gt;=C2=A0 =C2=A0 =C2=A0backend-specific interfaces (OpenGL/pixman) and vir=
gl is capable to<br>
&gt;=C2=A0 =C2=A0 =C2=A0export textures as DMA-BUF. DMA-BUF is not universa=
l in this sense. As<br>
&gt;=C2=A0 =C2=A0 =C2=A0such, we cannot just borrow the kernel-side naming =
but invent one.<br>
&gt; <br>
&gt; It is not a gpu-specific feature. It is a generic cross-device sharing=
<br>
&gt; mechanism for virtio objects. In this case, virtio objects happen to b=
e<br>
&gt; dmabufs in this first iteration. Hence, the name.<br>
&gt; <br>
&gt; virtio-gpu (and vhost-user-gpu) will use this feature only with virgl,=
 <br>
&gt; that is<br>
&gt; fine, and transversal to the object-sharing mechanism. It allows<br>
&gt; to share dmabufs in the host following how they are shared in the gues=
t.<br>
&gt; The virtgpu=C2=A0driver may call ASSIGN_UUID for other types of resour=
ces <br>
&gt; (not sure,<br>
&gt; but could be), but they will never be shared with other virtio devices=
.<br>
&gt; So they are not too relevant. Also, the shared objects table could <br=
>
&gt; potentially<br>
&gt; be accessed from any virtio device, not only virtio-gpu or virtio-vide=
o.<br>
<br>
The virtgpu driver will call ASSIGN_UUID for resources that are backed <br>
with pixman buffer. What is used as the backing store for resources is <br>
an implementation detail of VMM and the guest cannot know it. For the <br>
guest, they are same kind of resources (2D images).<br>
<br></blockquote><div>Ok, got it. In any case, those resources that are act=
ually backed by a dmabuf</div><div>ought to be shared using virtio_dmabuf. =
I think that is the key point of this discussion.</div><div><br></div><div>=
That support can be added once both this patch and the virtio_dmabuf land.<=
/div></div></div>

--00000000000041a695060562cf91--



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 10:24:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 10:24:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602987.939842 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh5zV-0007Yi-Ct; Fri, 15 Sep 2023 10:24:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602987.939842; Fri, 15 Sep 2023 10:24:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh5zV-0007Yb-8K; Fri, 15 Sep 2023 10:24:01 +0000
Received: by outflank-mailman (input) for mailman id 602987;
 Fri, 15 Sep 2023 10:23:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jpI5=E7=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qh5zT-0007YU-99
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 10:23:59 +0000
Received: from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com
 [2a00:1450:4864:20::12b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fa11dffa-53b1-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 12:23:56 +0200 (CEST)
Received: by mail-lf1-x12b.google.com with SMTP id
 2adb3069b0e04-502e7d66c1eso2905332e87.1
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 03:23:57 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fa11dffa-53b1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694773436; x=1695378236; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=tqPHAeeXZav0/fFcw+6CTts380pusIwosmOvUAf/C8k=;
        b=PxWXv90svxGLOLdZNnZeiPzkOatgWKFyacIO+7mG51YBvSTnnRJXA10lLkhUJrOgqa
         I0xSnk4T4bS4tXaYgXD9KpQ2TdlepUxLOKIpIdZOnMnBS7AuxdUA5EWXEVpmFatglL/p
         l/rsVNRV7ZUA0Im2t2KlTBq7ORrMePhBjpBqs=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694773436; x=1695378236;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=tqPHAeeXZav0/fFcw+6CTts380pusIwosmOvUAf/C8k=;
        b=vO6juXEJHcnjxMXl2cke3c/qhU4+E2l+9SqaNsnznBXLeudFuO7OdUuF2uH8ZCH07g
         VFLFeTxaaYHMTEB0JFAs8QEO51OO4Cjw0/TYNAdR1YndEBZziMABkh7Jbr4uMz8VnHJT
         lo8EbV91GeHYXphWp0o/YNkVA+8ihJwoYUW0q3EI7QWQjbyd5B5lhPuiYetiQm9NHBXJ
         x52oTCdFYeSTOkngK70ybmCQR4V/Q7XgL72NYiOxAMie5UlWf5mgiha24ETT7Kw8mhQi
         l+nWIoYaHjhnAagfo1YfpfVwbdtBcwCEs4OXFzQf8nqSCPKyntFdewuxnlrqQLuSVzKx
         0oEA==
X-Gm-Message-State: AOJu0Yws9Dz3frh0PvFSOEOBk1EAhIMR28haGuddKZNpADjHPRGxUXgH
	6Bb8Cs7kdmE7RoKpqJIkUaXewyQIkOXVMMPrexpqsQ==
X-Google-Smtp-Source: AGHT+IEvC1SQReU5hDpyJmbL44JoXao/wNod1Kb8xal5E6xTHcbylAN+1cVmPezsWWNnRAfoaG5UGSYfkcih9fWVOdg=
X-Received: by 2002:a05:6512:2015:b0:4fb:744e:17db with SMTP id
 a21-20020a056512201500b004fb744e17dbmr1047291lfb.1.1694773436419; Fri, 15 Sep
 2023 03:23:56 -0700 (PDT)
MIME-Version: 1.0
References: <11eaed0c-69a0-60de-43ab-55d50c981ffa@suse.com>
In-Reply-To: <11eaed0c-69a0-60de-43ab-55d50c981ffa@suse.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 15 Sep 2023 11:23:45 +0100
Message-ID: <CA+zSX=Ytnuz38Ra3Zf2Q452LZ7a=q=-cysXsK6O4TwGCQJU8ZQ@mail.gmail.com>
Subject: Re: [PATCH v2] timer: fix NR_CPUS=1 build with gcc13
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>, 
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 14, 2023 at 3:32=E2=80=AFPM Jan Beulich <jbeulich@suse.com> wro=
te:
>
> Gcc13 apparently infers from "if ( old_cpu < new_cpu )" that "new_cpu"
> is >=3D 1, and then (on x86) complains about "per_cpu(timers, new_cpu)"
> exceeding __per_cpu_offset[]'s bounds (being an array of 1 in such a
> configuration). Make the code conditional upon there being at least 2
> CPUs configured (otherwise there simply is nothing to migrate [to]).
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

I would still have preferred the code be more robust for the NR_CPUS >
1 case, but this is an improvement, so in any case:

Acked-by: George Dunlap <george.dunlap@cloud.com>


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 10:42:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 10:42:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.602993.939852 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6Gh-0004RT-Nq; Fri, 15 Sep 2023 10:41:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 602993.939852; Fri, 15 Sep 2023 10:41:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6Gh-0004RM-KT; Fri, 15 Sep 2023 10:41:47 +0000
Received: by outflank-mailman (input) for mailman id 602993;
 Fri, 15 Sep 2023 10:41:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jpI5=E7=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qh6Gf-0004RE-N7
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 10:41:45 +0000
Received: from mail-lj1-x22f.google.com (mail-lj1-x22f.google.com
 [2a00:1450:4864:20::22f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7670fb7c-53b4-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 12:41:44 +0200 (CEST)
Received: by mail-lj1-x22f.google.com with SMTP id
 38308e7fff4ca-2bfd3790178so12335061fa.2
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 03:41:44 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7670fb7c-53b4-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694774504; x=1695379304; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=LMWAkYUk1U0nK/8co63nzgeHTy5j4ysC+68EOWXmTVI=;
        b=KugrUfNdTfLXZN7TqdXpaLiqwbSmMY3IjYuOopLqsX36TIdnXUgc7aCTC/sVXdl7C0
         cglbq9nyhV1b/ws1InSqBJKkFUrFpSVE/eiI4/cBLnNBqlotpLGlqZrR3XL7NN8vj0OM
         yMmKwIvhT9+6zfDTsdVbO0UfWYPctPD2yOASU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694774504; x=1695379304;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=LMWAkYUk1U0nK/8co63nzgeHTy5j4ysC+68EOWXmTVI=;
        b=wUc12LcTmvuE80ILmRCpHgYzF7hnB/DD0k66vvnt27Jk8xWg5UbI4KpuHp0Tv3htLW
         7v+89Qnqb8rUtPE0FH4RBxbUFvAzYJXgMAhYB7xMfHojUmk5lnBFwWGM+SBpxU27e5X4
         4iaAI+jE0bWQ83KUMPoUKHqzH2z8BOLzgR7C6F/hNqECe1LUHTXyXZqzA21lIAJjo5/r
         N7iOAiRBhb9pE6r+2rGj0dfPYMbZJZ0WOxTAqmT7PRQmpEu3l+g3ZLmU3d+GmkDq3hmN
         pmNcyU94xqFuDaH62GsnnGLr/WReA5RVHJfVprd/RY6gkZ2ZXN5T9KxzA0CEoBAm4xSL
         DdRw==
X-Gm-Message-State: AOJu0YwpoNtr9M8l/XARu8rtzigCy+p5FoZQpq7MpdQ+sijvcf7t5amf
	yUvRVr+4u8fEOMX71757ZRDGeYjK5RwW7NlMVz9acg==
X-Google-Smtp-Source: AGHT+IHAPqaqZBgoeeotd8jYnb4JXeFaDQw35/SbmYG9UV+j21gJzKQ3G7QLjsjkMc2U4GuyFt1tGxgloGsT1E8uh/E=
X-Received: by 2002:a2e:3202:0:b0:2bc:d464:1a36 with SMTP id
 y2-20020a2e3202000000b002bcd4641a36mr1197308ljy.46.1694774503681; Fri, 15 Sep
 2023 03:41:43 -0700 (PDT)
MIME-Version: 1.0
References: <7f158a54548456daba9f2e105d099d2e5e2c2f38.1691399031.git.simon@invisiblethingslab.com>
 <fa86cd2b-9670-ace7-3bcb-799f55ca283d@suse.com> <alpine.DEB.2.22.394.2309061346410.6458@ubuntu-linux-20-04-desktop>
 <27ae69b6-bc57-dee3-2528-8311a38decda@citrix.com> <874jjz3juk.ffs@tglx>
 <CA+zSX=awNgMH1+5s9u9=Ai9ior4bt6iDvsoMWQrbx1szDxkLsQ@mail.gmail.com> <alpine.DEB.2.22.394.2309131616450.2295162@ubuntu-linux-20-04-desktop>
In-Reply-To: <alpine.DEB.2.22.394.2309131616450.2295162@ubuntu-linux-20-04-desktop>
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 15 Sep 2023 11:41:32 +0100
Message-ID: <CA+zSX=bc6RRgAA4nqL-C2YVZhwgktvgnyUiv2hZVGFp_ngKB-w@mail.gmail.com>
Subject: Re: [XEN PATCH] x86/ACPI: Ignore entries with invalid APIC IDs when
 parsing MADT
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>, Andrew Cooper <andrew.cooper3@citrix.com>, 
	Jan Beulich <jbeulich@suse.com>, Simon Gaiser <simon@invisiblethingslab.com>, 
	"committers@xenproject.org" <committers@xenproject.org>, 
	=?UTF-8?Q?Marek_Marczykowski=2DG=C3=B3recki?= <marmarek@invisiblethingslab.com>, 
	xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 14, 2023 at 12:18=E2=80=AFAM Stefano Stabellini
<sstabellini@kernel.org> wrote:
>
> On Wed, 13 Sep 2023, George Dunlap wrote:
> > On Tue, Sep 12, 2023 at 8:57=E2=80=AFAM Thomas Gleixner <tglx@linutroni=
x.de> wrote:
> > >
> > > On Mon, Sep 11 2023 at 19:24, Andrew Cooper wrote:
> > > > Furthermore, cursory testing that Thomas did for the Linux topology=
 work
> > > > demonstrates that it is broken anyway for reasons unrelated to ACPI=
 parsing.
> > > >
> > > > Even furthermore, it's an area of the Xen / dom0 boundary which is
> > > > fundamentally broken for non-PV cases, and undocumented for the PV =
case,
> > > > hence why it's broken in Linux.
> > > >
> > > > Physical CPU Hotplug does not pass the bar for being anything more =
than
> > > > experimental.  It's absolutely not tech-preview level because the o=
nly
> > > > demo it has had in an environment (admittedly virtual) which does
> > > > implement the spec in a usable way demonstrates that it doesn't fun=
ction.
> > > >
> > > > The fact no-one has noticed until now shows that the feature isn't =
used,
> > > > which comes back around full circle to the fact that Intel never ma=
de it
> > > > work and never shipped it.
> > >
> > > OTOH it _is_ used in virtualization. KVM supports it and it just
> > > works. That's how I found out that XEN explodes in colourful ways :)
> >
> > It should be pointed out that there's currently a start-up selling a
> > product that specifically runs Xen under cloud providers -- Exostellar
> > (was Exotanium) [1].  If cloud providers do use ACPI hotplug to allow
> > on-the-fly adjustments of the number of vcpus, Exostellar will
> > probably want support at some point.  (Perhaps it would be good to
> > rope them into testing / maintaining it.)
>
> Supporting CPU hotplug in a nested virtualization setting is a different
> proposition compared to supporting Physical CPU Hotplug. Typically
> virtual firmware (hypervisor-provided firmware) has less unexpected
> behaviors compared to baremetal firmware.
>
> Could you make the distinction in SUPPORT.md?

People say at the moment it doesn't actually work, even under QEMU; so
"Experimental" is probably the right status.

But if someone got it working, we might add "supported, with caveats"
and specify things in a comment.

 -George


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:12:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:12:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603001.939871 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6kR-0003DL-8u; Fri, 15 Sep 2023 11:12:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603001.939871; Fri, 15 Sep 2023 11:12:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6kR-0003DE-6K; Fri, 15 Sep 2023 11:12:31 +0000
Received: by outflank-mailman (input) for mailman id 603001;
 Fri, 15 Sep 2023 11:12:30 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6kQ-0003Cy-Du
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:12:30 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20609.outbound.protection.outlook.com
 [2a01:111:f400:7e88::609])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bf7edef3-53b8-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 13:12:25 +0200 (CEST)
Received: from DS0PR17CA0015.namprd17.prod.outlook.com (2603:10b6:8:191::23)
 by SA1PR12MB6821.namprd12.prod.outlook.com (2603:10b6:806:25c::22) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Fri, 15 Sep
 2023 11:12:21 +0000
Received: from DS1PEPF0001709D.namprd05.prod.outlook.com
 (2603:10b6:8:191:cafe::44) by DS0PR17CA0015.outlook.office365.com
 (2603:10b6:8:191::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 11:12:21 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF0001709D.mail.protection.outlook.com (10.167.18.107) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Fri, 15 Sep 2023 11:12:21 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:12:15 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bf7edef3-53b8-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=E55vYZbsdVBrxQdTf4MB/Hg2hxFZ6Phe01WGgDLee/LTUGbQAhQD5faL1zhwRUpoYoKoBmB0zzvDL5qoFEftPdNnmzXwveu/8opLKSUo0cvZdq5ZbgU/7XfcXU8DjNDj4A3TIWPruzE9tuZ+Mm7VqBrPZCjcv/b7bPIxdrDYSz6t2n4z7B7MieNjrQRX23n8Co6ks6Ky6I0wUppbdRq4nD+TxjH/n36U2jRNrt/Re6BH5zfz7lsV9kXxY+sMhmdBxsYF2LQsRcnMdu7WkEJxftDGx+Bca+fKxO+/zjF1CerVD2SF3JEW0+xL+fN2/NbpoxLiam/APpRH+VK8tczKdA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZGX5Hj5sdF72tVBTXUh0R/Xrx3cM3xMJ6mAZRIdjtqc=;
 b=ZcQdBVun4R/2Yur+xI8aPKRV8EC8aI3jsO2sxhMFCYfHl4POaJr1xMTss5cSki/IPYKR5z2IysgYI/NhrlAEe4Q7gMVME+aHIDQk09NsnZ8jWiV4NKTngi5TzaZ1HBeqrc8mhUfVFYm+UbQy0U/aOu49uuCBON0+YMP8DdsaviP79EUcdPOLD++dJbPPxqWCcN9E8Dw1SDxG+beh0QpdjOz4v+25tKLgmXRPKiLgQaJH/9wtJYpQC05/gcdvqZ3MOs3ko/gY4vayLW1hV/V8S+CGVfTXnBdScaanhQZ0aoChgSko+A1sBWOz8zC1IpqdkkY60T5zXIFRnIMZN6o+VA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZGX5Hj5sdF72tVBTXUh0R/Xrx3cM3xMJ6mAZRIdjtqc=;
 b=QdHUbyIT3dLtAOEbB03ZeEpKOltvTm6JJXGnQEcOYJEcDQVojUK4FzbdiZiABJvo7oNkvYyZDsVGWqRxeKn61I54zneVHbuYPw1ngbFzigfIcqlgArPxgbqQapZ04yx+Q94iuu2hhPaAfu/UlHkEwqxjZFAVvlmeOWzthY1Ezp0=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Antonio Caggiano
	<antonio.caggiano@collabora.com>, Huang Rui <ray.huang@amd.com>
Subject: [QEMU PATCH v5 01/13] virtio: Add shared memory capability
Date: Fri, 15 Sep 2023 19:11:18 +0800
Message-ID: <20230915111130.24064-2-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF0001709D:EE_|SA1PR12MB6821:EE_
X-MS-Office365-Filtering-Correlation-Id: 97bd9e2f-f893-4c7b-ead0-08dbb5dca1fd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	148f8cfTnr0zV2+MVq56MzKY/rrA52TUIxkrYXKRJedW1xegN+Y59iHW1xT0X2E684pdJRBsHpz3BQIs7XITbXL1GAjxJNehgDus85aNp/1NprjyZmHfpkUw6KxP5vCIXJtSoF0Cr2HHVYaFT3owlK9zshQI1w3yk3bQqzx3LriGu/mftprQvlKUCoT4wUwvAXQroTGdKJObT2mFF0TJxHFk2hEkImR8vFTNjEPP5hIDn63hwr/2wEGnqIA7GUWwKyVvrOy+UYZ5SxigaQtsqyFHv+ac4+c461Plzg08WG0+H6Xtj/8nH7sFuY3TSk08QZGtg8UHiZYzUIw0oFtesNuUE+H2OT6mSC/gM0LnpFXczbU/IO/jrlpWJoriyIeK7PvZCI7x4L1H20eWfsPo7fEbGPLMSXCVxRBl+uSL42PkLJuDTt8CkHmT+sBN3YCfFwGQS+gV+1k7aOmQtcGF4QC1ZbaHfxfNgdmVxav0+Wn6C4GMtkH5hu75NReD3vQWqFVyJbrOfNWPEJd6nGVFxGlpsDRuBtJVw6M4MB++KV634q82y5sQlADQEiLtw+9qg8y3fRHiXerl9g3wuI145wcd1kXQj0s2Y1aFw/bnXZ0IytyjHa/BRvxXqd7lyaOH9e/PE0Dy0p0nOsAEg9qXDkReKVKzxgw/+AoAW7tBrdC/vU7coPDpNgl3zWWg7BfCAEBRRCPs39Z5zK/eCqVsQr/Syc825udELPaCW7CFS3bQnjqSEQSv6RA2YjyaJaLLu2KbqYYBPHLBCX1NEPUYxy5QTK0OEogm1h6CdprpeYc=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(376002)(396003)(136003)(451199024)(1800799009)(82310400011)(186009)(46966006)(36840700001)(40470700004)(110136005)(921005)(81166007)(7696005)(356005)(86362001)(36756003)(40460700003)(478600001)(47076005)(40480700001)(82740400003)(36860700001)(70206006)(2616005)(5660300002)(336012)(16526019)(426003)(41300700001)(316002)(8936002)(4326008)(8676002)(26005)(54906003)(2906002)(7416002)(70586007)(1076003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:12:21.7012
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 97bd9e2f-f893-4c7b-ead0-08dbb5dca1fd
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF0001709D.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB6821

From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>

Define a new capability type 'VIRTIO_PCI_CAP_SHARED_MEMORY_CFG' to allow
defining shared memory regions with sizes and offsets of 2^32 and more.
Multiple instances of the capability are allowed and distinguished
by a device-specific 'id'.

Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Alyssa Ross <hi@alyssa.is>
Tested-by: Huang Rui <ray.huang@amd.com>
Tested-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Acked-by: Huang Rui <ray.huang@amd.com>
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---

This patch is already under review as part of the "rutabaga_gfx + gfxstream"
series (already in v13) and has been included here because of dependency.

 hw/virtio/virtio-pci.c         | 18 ++++++++++++++++++
 include/hw/virtio/virtio-pci.h |  4 ++++
 2 files changed, 22 insertions(+)

diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
index edbc0daa18..da8c9ea12d 100644
--- a/hw/virtio/virtio-pci.c
+++ b/hw/virtio/virtio-pci.c
@@ -1435,6 +1435,24 @@ static int virtio_pci_add_mem_cap(VirtIOPCIProxy *proxy,
     return offset;
 }
 
+int virtio_pci_add_shm_cap(VirtIOPCIProxy *proxy,
+                           uint8_t bar, uint64_t offset, uint64_t length,
+                           uint8_t id)
+{
+    struct virtio_pci_cap64 cap = {
+        .cap.cap_len = sizeof cap,
+        .cap.cfg_type = VIRTIO_PCI_CAP_SHARED_MEMORY_CFG,
+    };
+
+    cap.cap.bar = bar;
+    cap.cap.length = cpu_to_le32(length);
+    cap.length_hi = cpu_to_le32(length >> 32);
+    cap.cap.offset = cpu_to_le32(offset);
+    cap.offset_hi = cpu_to_le32(offset >> 32);
+    cap.cap.id = id;
+    return virtio_pci_add_mem_cap(proxy, &cap.cap);
+}
+
 static uint64_t virtio_pci_common_read(void *opaque, hwaddr addr,
                                        unsigned size)
 {
diff --git a/include/hw/virtio/virtio-pci.h b/include/hw/virtio/virtio-pci.h
index ab2051b64b..5a3f182f99 100644
--- a/include/hw/virtio/virtio-pci.h
+++ b/include/hw/virtio/virtio-pci.h
@@ -264,4 +264,8 @@ unsigned virtio_pci_optimal_num_queues(unsigned fixed_queues);
 void virtio_pci_set_guest_notifier_fd_handler(VirtIODevice *vdev, VirtQueue *vq,
                                               int n, bool assign,
                                               bool with_irqfd);
+
+int virtio_pci_add_shm_cap(VirtIOPCIProxy *proxy, uint8_t bar, uint64_t offset,
+                           uint64_t length, uint8_t id);
+
 #endif
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:12:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:12:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603000.939862 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6kM-0002xo-19; Fri, 15 Sep 2023 11:12:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603000.939862; Fri, 15 Sep 2023 11:12:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6kL-0002xh-Uj; Fri, 15 Sep 2023 11:12:25 +0000
Received: by outflank-mailman (input) for mailman id 603000;
 Fri, 15 Sep 2023 11:12:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6kK-0002xb-A2
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:12:24 +0000
Received: from NAM04-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam04on20606.outbound.protection.outlook.com
 [2a01:111:f400:7e8c::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bd6076f3-53b8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 13:12:22 +0200 (CEST)
Received: from DM5PR07CA0066.namprd07.prod.outlook.com (2603:10b6:4:ad::31) by
 CH3PR12MB8880.namprd12.prod.outlook.com (2603:10b6:610:17b::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Fri, 15 Sep
 2023 11:12:16 +0000
Received: from DS1PEPF0001709C.namprd05.prod.outlook.com
 (2603:10b6:4:ad:cafe::bd) by DM5PR07CA0066.outlook.office365.com
 (2603:10b6:4:ad::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20 via Frontend
 Transport; Fri, 15 Sep 2023 11:12:16 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF0001709C.mail.protection.outlook.com (10.167.18.106) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Fri, 15 Sep 2023 11:12:16 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:12:09 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bd6076f3-53b8-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iapucUr2vlsSieZWHSWhgcM0TK9cVn0Nmkc99XtKkpxHGX60lLJtTgq1txWaL8T5n++BqOkO1AMRoFalUOuxRFXJ9VS6vS1m3QN4LJZjbi/7eKrkPuY/ElRD2DJtEb8i9cYoXePSVK1kipBiWFl6/QDJvGQWPQL8BHssEw6mcUdz7m8B+N7WP59vrXr30CnrJihVTS5i6tIx/1210Kvbj7rpdrInccKT0SgcGgA0PhA9QLnsUGrjBeQNWf8Qp6buMAhElMGl7YmNMVWvU2s8i0wEVgjgxMeqR6xfYBR+2tw6/J8exv+o38NUzYu6LVW8pUD7C5yfQV2YR/v5p2x7wQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cJxBlYZ1zS11ui7pIdit0J45GPJ0moHkIBTnw8ZAyRY=;
 b=Qg7WF3GEdM1ARipxW25qj3dPS4zdAXmpT34L4k8ToAqjeCfurJKAm4710MKRAqUflkmmzjtVQJQOOXGYS98cRjccYWM1xGquQVdSXrfTIq/raI8l326gKz0mOC8dY3roLK8QmI8PtmwRtPiiem6Yrxgxaj2VmZjclyrxcMP3oan81/TmBxrirMSGa0GLezPRxgK1Dyx6YzmeKbnjfkxLMhPjFJvcsBcW6fwWY1aN8+ryuVauA+ErmB17mGo0m8uEJzoKZ09PE3IU3hJK3LRcSvlYHfhsBBcOvqIw9IAlIaPWoiNhOAPF281pIIkEJkSueGgx/PyGfBw9SSUpV1752w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cJxBlYZ1zS11ui7pIdit0J45GPJ0moHkIBTnw8ZAyRY=;
 b=3pqC6TilCH98HHxsLGJ4di2F/HSFs83Gu5XSQuj4AOWD0Nc4g+3Wc3jNXelaw/8g0zzb3YjtAAJwfB8XsLIcqTIcr6Z+AIMruAT76d/LbHY8VfVg9paCp4+QcY9KxYWaC131FN89q/mZWtgH/HwRUH1oNWvPYOQ+dodUKlv+NHg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Huang Rui <ray.huang@amd.com>
Subject: [QEMU PATCH v5 00/13] Support blob memory and venus on qemu
Date: Fri, 15 Sep 2023 19:11:17 +0800
Message-ID: <20230915111130.24064-1-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF0001709C:EE_|CH3PR12MB8880:EE_
X-MS-Office365-Filtering-Correlation-Id: 2a58cfa1-f60d-4701-bd6f-08dbb5dc9e92
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pV9KmmlUeBWPjtOnAukKAdAT1sVRM68b3XvvENsucR8iNuS0Sz85+pzRLbecU2QdMUmveo6buuw99qQTzZH0l1uEVMSFcP4iztnpHtnlBB2Qw0FtHaJckkMGrH5rxKCUwh84ypb504A/gflCvra/STzL1rJczFGW620xtVqc/s3++tAFL9b8nmK570ZytPdnlYj4qwOuglz18NV8GdyZnj4p/uMmwFUsxB8MnBUrRQxWtQHYyxF7dLApeIU3WV9D4J64xu1Iq42OIJVJ6r/L3d1mx/JC6MdlLpzS82HQTr+763eNOTCcVoWTP2ymSfF1beMMChIQZi8Cw3zNTWZppxZWAQifcja1EAjppEFiIfHqhhgnFf/nGQ1O9YKydoGf7sUv0OPBNafOEjgLozuBTTGSpID7yr6eILi8VuKuNvrS9FogTryh/7N0xSfcNl4cc9ON3n6fXOy7UBfoG1KP41cG6Thc7iWLzsKVJbEBc0DSqStf0arA+ykBmUlkIpowsJ5uQCaEFDJi4yduC6n9rya4yMpHjGVZWPxhfk6Fa3l2qX/DLVOAHFLyl23Um3Fi8aALJfgJquihhG6mtC7hSTnIlAjwmPWhbSiNz71aMcLFtuqvS/QOYbhUDFzA/wdOBACclJyIb3eQKcIWFlcyIRwXhcDTsyFnWK+cRKqb0RRa/hH0q7L0pK+zjWJIslKh4fLsDgC8LjqnKSkpnIlnlVUd1bS0AkXksVP0wolw75hj0C2eIRfeWEZC1njKxH+I2IZIMdGPD7L23iTW3y2+HhrAnRo+UDsRe7qhbbXiE8TBZx9VHKQGOiBb96Nhi6Fz
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(376002)(39860400002)(136003)(346002)(1800799009)(451199024)(82310400011)(186009)(40470700004)(36840700001)(46966006)(40460700003)(66899024)(7696005)(110136005)(2616005)(70206006)(966005)(6666004)(1076003)(478600001)(82740400003)(47076005)(16526019)(83380400001)(70586007)(356005)(86362001)(36860700001)(426003)(921005)(26005)(81166007)(336012)(2906002)(54906003)(41300700001)(7416002)(5660300002)(8936002)(8676002)(36756003)(4326008)(316002)(40480700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:12:16.0125
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2a58cfa1-f60d-4701-bd6f-08dbb5dc9e92
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF0001709C.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8880

Hi all,

Antonio Caggiano made the venus with QEMU on KVM platform last
September[1]. This series are inherited from his original work to support
the features of context init, hostmem, resource uuid, and blob resources
for venus.
At March of this year, we sent out the V1 version[2] for the review. But
those series are included both xen and virtio gpu. Right now, we would like
to divide into two parts, one is to continue the Antonio's work to upstream
virtio-gpu support for blob memory and venus, and another is to upstream
xen specific patches. This series is focusing on virtio-gpu, so we are
marking as V4 version here to continue Antonio's patches[1]. And we will
send xen specific patches separately, because they are hypervisor specific.
Besides of QEMU, these supports also included virglrenderer[3][4] and
mesa[5][6] as well. Right now, virglrenderer and mesa parts are all
accepted by upstream. In this qemu version, we try to address the concerns
around not proper cleanup during blob resource unmap and unref. Appreciate
it if you have any commments.

[1] https://lore.kernel.org/qemu-devel/20220926142422.22325-1-antonio.caggiano@collabora.com/
[2] V1: https://lore.kernel.org/qemu-devel/20230312092244.451465-1-ray.huang@amd.com
[3] https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/1068
[4] https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/1180
[5] https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22108
[6] https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23680

Please note the first 4 patches 1 -> 4 are inlcuded in these series because
the series depends on them and not because we want them to be reviewed
since they are already in the process of review through the "rutabaga_gfx +
gfxstream" series.
- https://lore.kernel.org/qemu-devel/20230829003629.410-1-gurchetansingh@chromium.org/

V4: https://lore.kernel.org/qemu-devel/20230831093252.2461282-1-ray.huang@amd.com

Changes from V4 (virtio gpu V4) to V5

- Inverted patch 5 and 6 because we should configure
  HAVE_VIRGL_CONTEXT_INIT firstly.

- Validate owner of memory region to avoid slowing down DMA.

- Use memory_region_init_ram_ptr() instead of
  memory_region_init_ram_device_ptr().

- Adjust sequence to allocate gpu resource before virglrender resource
  creation

- Add virtio migration handling for uuid.

- Send kernel patch to define VIRTIO_GPU_CAPSET_VENUS.
  https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd.com/

- Add meson check to make sure unstable APIs defined from 0.9.0.

Changes from V1 to V2 (virtio gpu V4)

- Remove unused #include "hw/virtio/virtio-iommu.h"

- Add a local function, called virgl_resource_destroy(), that is used
  to release a vgpu resource on error paths and in resource_unref.

- Remove virtio_gpu_virgl_resource_unmap from
  virtio_gpu_cleanup_mapping(),
  since this function won't be called on blob resources and also because
  blob resources are unmapped via virgl_cmd_resource_unmap_blob().

- In virgl_cmd_resource_create_blob(), do proper cleanup in error paths
  and move QTAILQ_INSERT_HEAD(&g->reslist, res, next) after the resource
  has been fully initialized.

- Memory region has a different life-cycle from virtio gpu resources
  i.e. cannot be released synchronously along with the vgpu resource.
  So, here the field "region" was changed to a pointer and is allocated
  dynamically when the blob is mapped.
  Also, since the pointer can be used to indicate whether the blob
  is mapped, the explicite field "mapped" was removed.

- In virgl_cmd_resource_map_blob(), add check on the value of
  res->region, to prevent beeing called twice on the same resource.

- Add a patch to enable automatic deallocation of memory regions to resolve
  use-after-free memory corruption with a reference.

References

Demo with Venus:
- https://static.sched.com/hosted_files/xen2023/3f/xen_summit_2023_virtgpu_demo.mp4
QEMU repository:
- https://gitlab.freedesktop.org/rui/qemu-xen/-/commits/upstream-for-virtio-gpu

Thanks,
Ray

Antonio Caggiano (6):
  virtio-gpu: CONTEXT_INIT feature
  virtio-gpu: blob prep
  virtio-gpu: Handle resource blob commands
  virtio-gpu: Resource UUID
  virtio-gpu: Support Venus capset
  virtio-gpu: Initialize Venus

Dmitry Osipenko (1):
  virtio-gpu: Don't require udmabuf when blobs and virgl are enabled

Dr. David Alan Gilbert (1):
  virtio: Add shared memory capability

Gerd Hoffmann (1):
  virtio-gpu: hostmem

Huang Rui (3):
  virtio-gpu: Configure context init for virglrenderer
  virtio-gpu: Support context init feature with virglrenderer
  virtio-gpu: Enable virglrenderer render server flag for venus

Xenia Ragiadakou (1):
  softmmu/memory: enable automatic deallocation of memory regions

 hw/display/trace-events              |   1 +
 hw/display/virtio-gpu-base.c         |   5 +
 hw/display/virtio-gpu-pci.c          |  14 ++
 hw/display/virtio-gpu-virgl.c        | 272 ++++++++++++++++++++++++++-
 hw/display/virtio-gpu.c              |  78 +++++++-
 hw/display/virtio-vga.c              |  33 +++-
 hw/virtio/virtio-pci.c               |  18 ++
 include/hw/virtio/virtio-gpu-bswap.h |  15 ++
 include/hw/virtio/virtio-gpu.h       |  24 +++
 include/hw/virtio/virtio-pci.h       |   4 +
 meson.build                          |  13 ++
 softmmu/memory.c                     |   5 +
 12 files changed, 458 insertions(+), 24 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:12:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:12:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603002.939881 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6kX-0003Z2-LK; Fri, 15 Sep 2023 11:12:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603002.939881; Fri, 15 Sep 2023 11:12:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6kX-0003Yq-IH; Fri, 15 Sep 2023 11:12:37 +0000
Received: by outflank-mailman (input) for mailman id 603002;
 Fri, 15 Sep 2023 11:12:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6kW-0003Cy-I6
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:12:36 +0000
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
 (mail-sn1nam02on20629.outbound.protection.outlook.com
 [2a01:111:f400:7ea9::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c4d61815-53b8-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 13:12:34 +0200 (CEST)
Received: from DS0PR17CA0020.namprd17.prod.outlook.com (2603:10b6:8:191::27)
 by PH7PR12MB6468.namprd12.prod.outlook.com (2603:10b6:510:1f4::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.33; Fri, 15 Sep
 2023 11:12:28 +0000
Received: from DS1PEPF0001709D.namprd05.prod.outlook.com
 (2603:10b6:8:191:cafe::54) by DS0PR17CA0020.outlook.office365.com
 (2603:10b6:8:191::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 11:12:28 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF0001709D.mail.protection.outlook.com (10.167.18.107) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Fri, 15 Sep 2023 11:12:28 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:12:21 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c4d61815-53b8-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MV2xAtSQONNzk5CMqBCCnrxu8k7fdOnMiZRRuAm9AY4cB8A+MbbKzRBGlMduZ50IrIUDiEzzG3qP/Ds7vAxBAYqLGV8ZBbx+pNYo2WYHV3OeWTPCcKHnGGoJ6hX6H56ewEW26IAGeTlJaND/4mPW7q8rf3ZPK1iFlNOTLDPA+L5nloNYSN4yCYVCZShcBpV5Gl/sNF5ko4ydy2TG9OsspOPklhTvaoxzK99p3rA6aaag5xvLqfH8q58m6uCJF+5iYmD0i1s4moDYJmYRo3J8fJhKc+IZL82FOAlFBVt42vlVzI1Jvv/hzOnCHQVrUW8Qr5+4bQM1oKHVXBDtNpFwxQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zoU819C3EvFSCxJXSmgKzjiOaCAsYDwvlFmZ/iIX7+s=;
 b=ch8ADWiQbQn9Tam47pwjihxrKb8Zw3j3pGDib7OIFyc+2QSVJO53s4DsC5jz0CQMc5I7GBb8RYGlv8wrQSgxYre8BsX9glgxfL5eYHxWmyPHgsvicrjIb9npCUiEykRuYwbA211BsBfO8+TL5h0Lb4VS8Zb5VN6N4UCOD7GtmKnVaC4yeT+6+OzB0IJjBbBKuwU423wPcN8r4350FsKbzrBdLD0CmvnLnO72ZmCE88HkdrsC6TKCr4AAqXz4XMo5qhsqyeJQT8x3knffPOxHeMUFz67CjUw7x5nouq7b7O4lsKf+JryssddYdVGFnpq8MlX3vY8eq7YoGWHEZvonwQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zoU819C3EvFSCxJXSmgKzjiOaCAsYDwvlFmZ/iIX7+s=;
 b=aVz68SBNUqB3hLflEIkhI2/8PPospZJr6RZ9S1aWuliYt/AzUTFoNZdNBuDp6WFbLJPNSAbMnmtklol1DpOFUL5q+hUq1WP7OwSdW2wGe8fkFyX5pGgu/4eVjT+FPMZBBFWGTeWDpXmlfnE+g4gmnAnA0XXCSqWBALZTMPSITVw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Antonio Caggiano
	<antonio.caggiano@collabora.com>, Huang Rui <ray.huang@amd.com>,
	=?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
Subject: [QEMU PATCH v5 02/13] virtio-gpu: CONTEXT_INIT feature
Date: Fri, 15 Sep 2023 19:11:19 +0800
Message-ID: <20230915111130.24064-3-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF0001709D:EE_|PH7PR12MB6468:EE_
X-MS-Office365-Filtering-Correlation-Id: 5c6a94c9-4ec8-446c-fcd5-08dbb5dca5b9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BNhb3Yb5fru9dUEURHmM4V70UEy7QC3JPfsvQSwv4Zc5olfd2kD84Th6v2l059mQwHlOyZm/gNtJ2keULlc1jna/6UDPqhy62BgjApCgkP49uTzjuaJLywrn2wSLVTNr3ve2OrPbyqD5AaiISp9ckyOc8vIfMFRUyDMG+vIojcVwXsRhcei/h7v2mCdxir4lHlEL+IcXtvWUeBLxvgiwmo83umSw5ChLtNJK+ImLVUF+EvQInnnClSOoD8IXx00vdxZhHd9iiBQdeelRS7xnK4E1ffbGSMfZo2A/TucQ1qByAeiPNtqQHZscsheOQZ7g8ybAL4GENSbJlMVO5Ms95f9cv7LhzOKcj/QmJJq2aF+Jb7NMntJ8vn6Kb0QmBaXGwBhJ9HD+UgJBCAVeoTeBOTUxwhH/woqaPyBAK+jLeFYgGwDOLbiYXk1S3lOFIZpyu+JXcr62LUPK2j/N0x/z0boUM/YeTVhE92nJGsap+WlV607ilF51MvwhPiL18WuAeZi6yMPm6GnlSQFjQBOuDenMD79LG35LVBXtTWJHH3JaXihfW3yPWXk0ImM8GiNVwzW5eyhI/i83U4kATHiCdNj+QyJnfZNjIeY24VTeZ4FEZslYad4zSio56ANT5L2ENpdC3W9FidoV5k/5TusO257D7uJUSrqkd13e6X78+0QRl4aaNgoFHUskfFAa4R42JRzM4uPg2dyYqKySq18RwYDAxcnVfT4WBZI7dnQYPsfU1VAI91QbJ9Gh2nlggT/gM+pSGTNMO7Sx/7phGd5Ab9osTbWwDP4D6eJJifcQCHs=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(39860400002)(376002)(136003)(82310400011)(186009)(451199024)(1800799009)(36840700001)(46966006)(40470700004)(336012)(8676002)(356005)(8936002)(110136005)(4326008)(2906002)(921005)(40480700001)(316002)(16526019)(47076005)(36860700001)(54906003)(1076003)(70206006)(7696005)(426003)(26005)(70586007)(2616005)(41300700001)(40460700003)(82740400003)(5660300002)(81166007)(7416002)(86362001)(36756003)(478600001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:12:28.0138
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5c6a94c9-4ec8-446c-fcd5-08dbb5dca5b9
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF0001709D.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6468

From: Antonio Caggiano <antonio.caggiano@collabora.com>

The feature can be enabled when a backend wants it.

Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Alyssa Ross <hi@alyssa.is>
Tested-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Tested-by: Huang Rui <ray.huang@amd.com>
Acked-by: Huang Rui <ray.huang@amd.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---

This patch is already under review as part of the "rutabaga_gfx + gfxstream"
series (already in v13) and has been included here because of dependency.

 hw/display/virtio-gpu-base.c   | 3 +++
 include/hw/virtio/virtio-gpu.h | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/hw/display/virtio-gpu-base.c b/hw/display/virtio-gpu-base.c
index ca1fb7b16f..4f2b0ba1f3 100644
--- a/hw/display/virtio-gpu-base.c
+++ b/hw/display/virtio-gpu-base.c
@@ -232,6 +232,9 @@ virtio_gpu_base_get_features(VirtIODevice *vdev, uint64_t features,
     if (virtio_gpu_blob_enabled(g->conf)) {
         features |= (1 << VIRTIO_GPU_F_RESOURCE_BLOB);
     }
+    if (virtio_gpu_context_init_enabled(g->conf)) {
+        features |= (1 << VIRTIO_GPU_F_CONTEXT_INIT);
+    }
 
     return features;
 }
diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h
index 390c4642b8..8377c365ef 100644
--- a/include/hw/virtio/virtio-gpu.h
+++ b/include/hw/virtio/virtio-gpu.h
@@ -93,6 +93,7 @@ enum virtio_gpu_base_conf_flags {
     VIRTIO_GPU_FLAG_EDID_ENABLED,
     VIRTIO_GPU_FLAG_DMABUF_ENABLED,
     VIRTIO_GPU_FLAG_BLOB_ENABLED,
+    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED,
 };
 
 #define virtio_gpu_virgl_enabled(_cfg) \
@@ -105,6 +106,8 @@ enum virtio_gpu_base_conf_flags {
     (_cfg.flags & (1 << VIRTIO_GPU_FLAG_DMABUF_ENABLED))
 #define virtio_gpu_blob_enabled(_cfg) \
     (_cfg.flags & (1 << VIRTIO_GPU_FLAG_BLOB_ENABLED))
+#define virtio_gpu_context_init_enabled(_cfg) \
+    (_cfg.flags & (1 << VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED))
 
 struct virtio_gpu_base_conf {
     uint32_t max_outputs;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:12:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:12:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603003.939892 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6ka-0003qk-SV; Fri, 15 Sep 2023 11:12:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603003.939892; Fri, 15 Sep 2023 11:12:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6ka-0003qd-P0; Fri, 15 Sep 2023 11:12:40 +0000
Received: by outflank-mailman (input) for mailman id 603003;
 Fri, 15 Sep 2023 11:12:39 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6kZ-0002xb-4h
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:12:39 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20629.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::629])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c6fd21d4-53b8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 13:12:38 +0200 (CEST)
Received: from DS0PR17CA0020.namprd17.prod.outlook.com (2603:10b6:8:191::27)
 by PH7PR12MB8427.namprd12.prod.outlook.com (2603:10b6:510:242::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Fri, 15 Sep
 2023 11:12:34 +0000
Received: from DS1PEPF0001709D.namprd05.prod.outlook.com
 (2603:10b6:8:191:cafe::40) by DS0PR17CA0020.outlook.office365.com
 (2603:10b6:8:191::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 11:12:34 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF0001709D.mail.protection.outlook.com (10.167.18.107) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Fri, 15 Sep 2023 11:12:34 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:12:27 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c6fd21d4-53b8-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eLu1JnPLyb2+xU5JoNHWlZFepPe9qnHKo/I7v3YOB/CpzRSWa8F3DL9aKRDy8DFH0BLEK1617GSJxr8lui175M7gBAbQTRlRTL/tEQtaqbA2Z+RSDORwho7V+MUqp411e7hUPNcbLjCU6FVEOzKZCjbGgp7EDt+yRI3NSH6x3srAV7WDxGd/cfcBQyIm5ceTwmgPqn0OovahDuafFqd+lx1W/xBH6vdGaKMnVh72c1YBXV5VmUlEBoO7vMrZw6d84/ohFoqHefD69Hq34Z0t8aYyNY5Bbzax4402bI2lwJZXAcFosNal0+3Q5NoszYRl0jc7JzOTTgoOfhftghMNzA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Qr3RAYeUheQV33MWIVHkExHj4snVaxR01Xv6+3mdj/Q=;
 b=MwlmwrpB72kgTs5A0HmocC0X16sXyuqf786Rp9/DIlpk9YwDzSzDWpPCCGHMc5PBdxo1AJKEI3TrW4/MuEqJgAmeScUD4L1qhWljXKkipwr2Hb3uXCU7p2HjCU1YDHt7d14K0B12sGFhoqmC3w01nRR9/BiCDSK7KwmIcWWayjh74YmDhWOXMtowTYP86EgXP+OsoTJeqVozhjqMY+dyuPfcu6OIEdNSJrPrHMGP4cQcf4bXmKRlGRijgSVDOgnR9AnF2p5bikGchG1daRq3kPH3JcT/o0K76GBL8TnN/xoCXizWKx1XxU+rMNlK0L8MBicYfaZ8QoH3LpuK3z99DQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Qr3RAYeUheQV33MWIVHkExHj4snVaxR01Xv6+3mdj/Q=;
 b=FLwnviJVEHgsy7qao54dFWJLzRtPhy7bU54ld0b264aitTa/T7DsDJIex5vAq0tblEpJrBzNg+bKGaUbfpHVRGrkvNasFJ3jJiZP1aB3+K2F5hpxgofsA12wO3af0kmwlXSG9yThTiCWMXerPB7oTLHqaaQ5tZK5r9GBDIyK8vw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Antonio Caggiano
	<antonio.caggiano@collabora.com>, Huang Rui <ray.huang@amd.com>
Subject: [QEMU PATCH v5 03/13] virtio-gpu: hostmem
Date: Fri, 15 Sep 2023 19:11:20 +0800
Message-ID: <20230915111130.24064-4-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF0001709D:EE_|PH7PR12MB8427:EE_
X-MS-Office365-Filtering-Correlation-Id: 92af8e65-8bb8-411a-4b71-08dbb5dca952
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	T/8zGYpfvegyyEORgClCllv3L4xzWi2bSuOpAY2WctE2jxVaBKT38l8bzchHrtS3e0IHZe7ntiNk/1swDXj6BPEZYMJB8D5yXfL/ihdmctJXk9n9o5AMm5/oV+gjnHokzc0a35jYfqfe4Q6GlQYscp5DahQfNRRuZh0ggO3Yg1XLr35Npo4gQ74EtUXOd2tdUW+5DX1BlcUr6HHE+9vFK6C3jLPSik35lkH4quVYl0uC6YCUh7QY/6FpAi15+yz9/goAIbGGpwtlAWWpYiHW1OeW+uEqjR4PpLDhKUSD6GUoMM6iQ6LqYbrOemy6OeLNfSAXtrzJ6gV7iZHQNKTVg2Wy6YFuHsRhKj8YEdU2o8Yzc1JsajBFNDQeVYMH5F4AYS35tWeVJu4UutAK0jOcZmAyvm7cwf35jt2DT3G+4wTsS4OM35IetQC1GCdqlKRKoKAACgisXdJuJVtdZIsorle3noYRb88r2xxgEZRhYD66m3hy5kuTliqgSqdSmOs/1sP6ibySHzezn50qd2QIwfus0ek/sEQGnHdXEVv521MmkbOgfhaAvDNS3fPDWV0geehO+tNR3s3VY5ZYbKS5VmzuXFHq5rTIa/Qcdj79dCCrAUvlFa1kpcKANt5rZZ7CVRZKPQcBmeLx1hstX+8dQXKtkTa0nS9s/w9SDHUPafArPjqUYy/on1wRiIxlPufaNNNJJCs8oAKlpDJSfWnLpk4dWjosctFkJ/yidcmxKGZf7l75iZ/JfBbRRmTDxnMwa6o5x1O7kacj7vdaNvUvLVUE7cYnkbvVbEGU1CmtKrM=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(136003)(346002)(376002)(39860400002)(82310400011)(1800799009)(451199024)(186009)(40470700004)(36840700001)(46966006)(8676002)(5660300002)(16526019)(316002)(54906003)(70586007)(110136005)(70206006)(4326008)(2616005)(7696005)(40480700001)(356005)(82740400003)(921005)(81166007)(8936002)(1076003)(83380400001)(426003)(336012)(6666004)(41300700001)(26005)(478600001)(7416002)(47076005)(2906002)(36860700001)(40460700003)(86362001)(36756003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:12:34.0451
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 92af8e65-8bb8-411a-4b71-08dbb5dca952
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF0001709D.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB8427

From: Gerd Hoffmann <kraxel@redhat.com>

Use VIRTIO_GPU_SHM_ID_HOST_VISIBLE as id for virtio-gpu.

Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Tested-by: Alyssa Ross <hi@alyssa.is>
Tested-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Tested-by: Huang Rui <ray.huang@amd.com>
Acked-by: Huang Rui <ray.huang@amd.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---

This patch is already under review as part of the "rutabaga_gfx + gfxstream"
series (already in v13) and has been included here because of dependency.

 hw/display/virtio-gpu-pci.c    | 14 ++++++++++++++
 hw/display/virtio-gpu.c        |  1 +
 hw/display/virtio-vga.c        | 33 ++++++++++++++++++++++++---------
 include/hw/virtio/virtio-gpu.h |  5 +++++
 4 files changed, 44 insertions(+), 9 deletions(-)

diff --git a/hw/display/virtio-gpu-pci.c b/hw/display/virtio-gpu-pci.c
index 93f214ff58..da6a99f038 100644
--- a/hw/display/virtio-gpu-pci.c
+++ b/hw/display/virtio-gpu-pci.c
@@ -33,6 +33,20 @@ static void virtio_gpu_pci_base_realize(VirtIOPCIProxy *vpci_dev, Error **errp)
     DeviceState *vdev = DEVICE(g);
     int i;
 
+    if (virtio_gpu_hostmem_enabled(g->conf)) {
+        vpci_dev->msix_bar_idx = 1;
+        vpci_dev->modern_mem_bar_idx = 2;
+        memory_region_init(&g->hostmem, OBJECT(g), "virtio-gpu-hostmem",
+                           g->conf.hostmem);
+        pci_register_bar(&vpci_dev->pci_dev, 4,
+                         PCI_BASE_ADDRESS_SPACE_MEMORY |
+                         PCI_BASE_ADDRESS_MEM_PREFETCH |
+                         PCI_BASE_ADDRESS_MEM_TYPE_64,
+                         &g->hostmem);
+        virtio_pci_add_shm_cap(vpci_dev, 4, 0, g->conf.hostmem,
+                               VIRTIO_GPU_SHM_ID_HOST_VISIBLE);
+    }
+
     virtio_pci_force_virtio_1(vpci_dev);
     if (!qdev_realize(vdev, BUS(&vpci_dev->bus), errp)) {
         return;
diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
index bbd5c6561a..48ef0d9fad 100644
--- a/hw/display/virtio-gpu.c
+++ b/hw/display/virtio-gpu.c
@@ -1509,6 +1509,7 @@ static Property virtio_gpu_properties[] = {
                      256 * MiB),
     DEFINE_PROP_BIT("blob", VirtIOGPU, parent_obj.conf.flags,
                     VIRTIO_GPU_FLAG_BLOB_ENABLED, false),
+    DEFINE_PROP_SIZE("hostmem", VirtIOGPU, parent_obj.conf.hostmem, 0),
     DEFINE_PROP_END_OF_LIST(),
 };
 
diff --git a/hw/display/virtio-vga.c b/hw/display/virtio-vga.c
index e6fb0aa876..c8552ff760 100644
--- a/hw/display/virtio-vga.c
+++ b/hw/display/virtio-vga.c
@@ -115,17 +115,32 @@ static void virtio_vga_base_realize(VirtIOPCIProxy *vpci_dev, Error **errp)
     pci_register_bar(&vpci_dev->pci_dev, 0,
                      PCI_BASE_ADDRESS_MEM_PREFETCH, &vga->vram);
 
-    /*
-     * Configure virtio bar and regions
-     *
-     * We use bar #2 for the mmio regions, to be compatible with stdvga.
-     * virtio regions are moved to the end of bar #2, to make room for
-     * the stdvga mmio registers at the start of bar #2.
-     */
-    vpci_dev->modern_mem_bar_idx = 2;
-    vpci_dev->msix_bar_idx = 4;
     vpci_dev->modern_io_bar_idx = 5;
 
+    if (!virtio_gpu_hostmem_enabled(g->conf)) {
+        /*
+         * Configure virtio bar and regions
+         *
+         * We use bar #2 for the mmio regions, to be compatible with stdvga.
+         * virtio regions are moved to the end of bar #2, to make room for
+         * the stdvga mmio registers at the start of bar #2.
+         */
+        vpci_dev->modern_mem_bar_idx = 2;
+        vpci_dev->msix_bar_idx = 4;
+    } else {
+        vpci_dev->msix_bar_idx = 1;
+        vpci_dev->modern_mem_bar_idx = 2;
+        memory_region_init(&g->hostmem, OBJECT(g), "virtio-gpu-hostmem",
+                           g->conf.hostmem);
+        pci_register_bar(&vpci_dev->pci_dev, 4,
+                         PCI_BASE_ADDRESS_SPACE_MEMORY |
+                         PCI_BASE_ADDRESS_MEM_PREFETCH |
+                         PCI_BASE_ADDRESS_MEM_TYPE_64,
+                         &g->hostmem);
+        virtio_pci_add_shm_cap(vpci_dev, 4, 0, g->conf.hostmem,
+                               VIRTIO_GPU_SHM_ID_HOST_VISIBLE);
+    }
+
     if (!(vpci_dev->flags & VIRTIO_PCI_FLAG_PAGE_PER_VQ)) {
         /*
          * with page-per-vq=off there is no padding space we can use
diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h
index 8377c365ef..de4f624e94 100644
--- a/include/hw/virtio/virtio-gpu.h
+++ b/include/hw/virtio/virtio-gpu.h
@@ -108,12 +108,15 @@ enum virtio_gpu_base_conf_flags {
     (_cfg.flags & (1 << VIRTIO_GPU_FLAG_BLOB_ENABLED))
 #define virtio_gpu_context_init_enabled(_cfg) \
     (_cfg.flags & (1 << VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED))
+#define virtio_gpu_hostmem_enabled(_cfg) \
+    (_cfg.hostmem > 0)
 
 struct virtio_gpu_base_conf {
     uint32_t max_outputs;
     uint32_t flags;
     uint32_t xres;
     uint32_t yres;
+    uint64_t hostmem;
 };
 
 struct virtio_gpu_ctrl_command {
@@ -137,6 +140,8 @@ struct VirtIOGPUBase {
     int renderer_blocked;
     int enable;
 
+    MemoryRegion hostmem;
+
     struct virtio_gpu_scanout scanout[VIRTIO_GPU_MAX_SCANOUTS];
 
     int enabled_output_bitmask;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:12:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:12:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603004.939901 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6kh-0004Df-4t; Fri, 15 Sep 2023 11:12:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603004.939901; Fri, 15 Sep 2023 11:12:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6kh-0004DW-1R; Fri, 15 Sep 2023 11:12:47 +0000
Received: by outflank-mailman (input) for mailman id 603004;
 Fri, 15 Sep 2023 11:12:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6kf-0003Cy-Ry
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:12:45 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on20626.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::626])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ca622fe6-53b8-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 13:12:44 +0200 (CEST)
Received: from DM6PR04CA0010.namprd04.prod.outlook.com (2603:10b6:5:334::15)
 by SN7PR12MB8601.namprd12.prod.outlook.com (2603:10b6:806:26e::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Fri, 15 Sep
 2023 11:12:40 +0000
Received: from DS1PEPF00017097.namprd05.prod.outlook.com
 (2603:10b6:5:334:cafe::50) by DM6PR04CA0010.outlook.office365.com
 (2603:10b6:5:334::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 11:12:40 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017097.mail.protection.outlook.com (10.167.18.101) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Fri, 15 Sep 2023 11:12:40 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:12:33 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ca622fe6-53b8-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cFNu9SZdx8Kvyz/3mgNNkkY5Cwydb5AvrZdC1q9+Lk4lerAEhI1lKuU/8LzoFt7TVsNqDTqljIZEE/LaH8K3C7h0QMvnyjTQBIZt+al47GPFmU/GsJDJ9NdkEc7/7EXOE4dasvtTjY5nA07S58Ud7rCsBC0WABe0bEA8CLeD8GAx0Mmy1NTJYByhdW45LHo0EJHTh3H+UtyZFE84WoJgCFGu802Nh9YbaXfZsMabMO8h/+sW/juQairkXl0C3CmGpuXCAgAZXGa4PK1yFLpPt7uOGryS1UQPsqCkzhgBFeaWa8tP1QlsLCxt3WW0xD0S75yD/bt7US4LgH1wmwcivA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3PRb9JumY0H3A+ggxeC4QKp/ezd1/0dFt3HVkyEWsIU=;
 b=M+daDup49UMHEBySiCHQslPZ38Unb4/4aiJnPhl3HCgQW2RxNEX/ELt/L+Z77oA4El45Td5So7CJQLc928H4T+lXHHQDv+Y7ALHMXCCbtyZ+zYMEwif86fKX8ca2Y6MSrJBecdm3nFBdhFx9Ky9PqabMnxQCqrWEVjYgIvzyqXILGnkqhTONEm2snZ5TfoiNZQqH/E+KJJAzF/CFHBoKpNnl0qA6gHY9DbiskNuNiYXsXpNNP4zzW3foZRGfcSaqSlrph+0Zf1foi6nrooW9pBBFAyiuDr2ex+rcYdchBK29JCqTukwU3O7xaveMO73VZzFQo8Lt9Ii7mQK16bIe2Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3PRb9JumY0H3A+ggxeC4QKp/ezd1/0dFt3HVkyEWsIU=;
 b=XmpK6771AwHuStJs/EUxOnxynsKbivNAtj27Rmbk7MWFKYutdTavfLHFP2/T5MrAlXmNbn0UDX5l7S4Ec70WKtmuHs/lrRfnonwkolMFVtKSCgEcq1KabIKbzF5RbIjw2MAnAwsjA/8NmzjVGeYCtfvBSr1QzjtJWsNl0oSheJQ=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Antonio Caggiano
	<antonio.caggiano@collabora.com>, Emmanouil Pitsidianakis
	<manos.pitsidianakis@linaro.org>, Huang Rui <ray.huang@amd.com>
Subject: [QEMU PATCH v5 04/13] virtio-gpu: blob prep
Date: Fri, 15 Sep 2023 19:11:21 +0800
Message-ID: <20230915111130.24064-5-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017097:EE_|SN7PR12MB8601:EE_
X-MS-Office365-Filtering-Correlation-Id: 01b82a7a-26d3-457d-5f72-08dbb5dcad12
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	EwmIelxdkyQ9eQhxOqf668A+CVw+I2DHHvO8BN19fbLSlNhL7ns67oWdoS64TbVuvPTjX21Hh4GzCAZfuTaxpfW7xdNnDI8Tzh5ikl22kIpuxEH28vkgoFLCuamqdudbCAJTPRQg4Hvk56xs2I8mUTLyrmu0tcTe/p5kUkIVtkMMWCNK8rYcLGg1nR130HFIQCpoVtfvMw3kffcxHSEEbMZiH+/Mc6jQSVSOnSLTIKWnXyVgnDvRF+1brdE8KnYQBCmEnu1gVsu/qbDGMoRIRah+riP2u9xFaOGBMEUvP/2EtTnY3RsaesV4eHPBeGK76OXgJpRHw0aKQmG2X+/enDwlKCd/n8cJoC00KrCm5beulhnclvMobPlbab5KMPO09NsMXL/nHC5AtafHEuV4CZfg8Z1Sp2b6V6qlZt8Znb41VvR9OwkhImi38RcLBiJK4fNiLNUk6l1oDyAXIbrw/omJhN+DCzd78gDJ5l82CSUB/nE8SRouNiptySrNP/1aic4HBz7e7rGrR4A8HUxTLZlLUXc66PA/6/rIFN2pvvIYCuYpjjq3kXa9v4fBhFkgk0pS0i1sW9Sxv1coDCQJO8D8FHGBnc1xeZHUAjxs8Lo+nL02ivx/1zS2Rml2K7psJDxvbtjSZkSDI+zc/GYV4YANwUwUAmRYshtXY8MAFFAJYASLXSyeDHoeIHnv69qZmxbYZiY0Ke4X6jLd3t2Famh9PGvlmW4hEgbpA1z3Ij1SXsxXs/8yPK4BaEbdp9H4PeokMztD1L5NP2OFg5ynw9IEvriy8er7Q24Sl8fLbzA=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(39860400002)(136003)(396003)(346002)(82310400011)(451199024)(1800799009)(186009)(46966006)(40470700004)(36840700001)(5660300002)(7696005)(478600001)(8936002)(26005)(426003)(83380400001)(70206006)(70586007)(336012)(16526019)(36860700001)(1076003)(2616005)(54906003)(316002)(8676002)(110136005)(7416002)(47076005)(4326008)(6666004)(2906002)(86362001)(921005)(36756003)(81166007)(82740400003)(356005)(40460700003)(40480700001)(41300700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:12:40.3370
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 01b82a7a-26d3-457d-5f72-08dbb5dcad12
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017097.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB8601

From: Antonio Caggiano <antonio.caggiano@collabora.com>

This adds preparatory functions needed to:

     - decode blob cmds
     - tracking iovecs

Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Alyssa Ross <hi@alyssa.is>
Tested-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
Tested-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Tested-by: Huang Rui <ray.huang@amd.com>
Acked-by: Huang Rui <ray.huang@amd.com>
Reviewed-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---

This patch is already under review as part of the "rutabaga_gfx + gfxstream"
series (already in v13) and has been included here because of dependency.

 hw/display/virtio-gpu.c              | 10 +++-------
 include/hw/virtio/virtio-gpu-bswap.h | 15 +++++++++++++++
 include/hw/virtio/virtio-gpu.h       |  5 +++++
 3 files changed, 23 insertions(+), 7 deletions(-)

diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
index 48ef0d9fad..3e658f1fef 100644
--- a/hw/display/virtio-gpu.c
+++ b/hw/display/virtio-gpu.c
@@ -33,15 +33,11 @@
 
 #define VIRTIO_GPU_VM_VERSION 1
 
-static struct virtio_gpu_simple_resource*
-virtio_gpu_find_resource(VirtIOGPU *g, uint32_t resource_id);
 static struct virtio_gpu_simple_resource *
 virtio_gpu_find_check_resource(VirtIOGPU *g, uint32_t resource_id,
                                bool require_backing,
                                const char *caller, uint32_t *error);
 
-static void virtio_gpu_cleanup_mapping(VirtIOGPU *g,
-                                       struct virtio_gpu_simple_resource *res);
 static void virtio_gpu_reset_bh(void *opaque);
 
 void virtio_gpu_update_cursor_data(VirtIOGPU *g,
@@ -116,7 +112,7 @@ static void update_cursor(VirtIOGPU *g, struct virtio_gpu_update_cursor *cursor)
                   cursor->resource_id ? 1 : 0);
 }
 
-static struct virtio_gpu_simple_resource *
+struct virtio_gpu_simple_resource *
 virtio_gpu_find_resource(VirtIOGPU *g, uint32_t resource_id)
 {
     struct virtio_gpu_simple_resource *res;
@@ -904,8 +900,8 @@ void virtio_gpu_cleanup_mapping_iov(VirtIOGPU *g,
     g_free(iov);
 }
 
-static void virtio_gpu_cleanup_mapping(VirtIOGPU *g,
-                                       struct virtio_gpu_simple_resource *res)
+void virtio_gpu_cleanup_mapping(VirtIOGPU *g,
+                                struct virtio_gpu_simple_resource *res)
 {
     virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
     res->iov = NULL;
diff --git a/include/hw/virtio/virtio-gpu-bswap.h b/include/hw/virtio/virtio-gpu-bswap.h
index 637a0585d0..dd1975e2d4 100644
--- a/include/hw/virtio/virtio-gpu-bswap.h
+++ b/include/hw/virtio/virtio-gpu-bswap.h
@@ -70,6 +70,21 @@ virtio_gpu_create_blob_bswap(struct virtio_gpu_resource_create_blob *cblob)
     le64_to_cpus(&cblob->size);
 }
 
+static inline void
+virtio_gpu_map_blob_bswap(struct virtio_gpu_resource_map_blob *mblob)
+{
+    virtio_gpu_ctrl_hdr_bswap(&mblob->hdr);
+    le32_to_cpus(&mblob->resource_id);
+    le64_to_cpus(&mblob->offset);
+}
+
+static inline void
+virtio_gpu_unmap_blob_bswap(struct virtio_gpu_resource_unmap_blob *ublob)
+{
+    virtio_gpu_ctrl_hdr_bswap(&ublob->hdr);
+    le32_to_cpus(&ublob->resource_id);
+}
+
 static inline void
 virtio_gpu_scanout_blob_bswap(struct virtio_gpu_set_scanout_blob *ssb)
 {
diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h
index de4f624e94..55973e112f 100644
--- a/include/hw/virtio/virtio-gpu.h
+++ b/include/hw/virtio/virtio-gpu.h
@@ -257,6 +257,9 @@ void virtio_gpu_base_fill_display_info(VirtIOGPUBase *g,
 void virtio_gpu_base_generate_edid(VirtIOGPUBase *g, int scanout,
                                    struct virtio_gpu_resp_edid *edid);
 /* virtio-gpu.c */
+struct virtio_gpu_simple_resource *
+virtio_gpu_find_resource(VirtIOGPU *g, uint32_t resource_id);
+
 void virtio_gpu_ctrl_response(VirtIOGPU *g,
                               struct virtio_gpu_ctrl_command *cmd,
                               struct virtio_gpu_ctrl_hdr *resp,
@@ -275,6 +278,8 @@ int virtio_gpu_create_mapping_iov(VirtIOGPU *g,
                                   uint32_t *niov);
 void virtio_gpu_cleanup_mapping_iov(VirtIOGPU *g,
                                     struct iovec *iov, uint32_t count);
+void virtio_gpu_cleanup_mapping(VirtIOGPU *g,
+                                struct virtio_gpu_simple_resource *res);
 void virtio_gpu_process_cmdq(VirtIOGPU *g);
 void virtio_gpu_device_realize(DeviceState *qdev, Error **errp);
 void virtio_gpu_reset(VirtIODevice *vdev);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:13:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:13:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603014.939912 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6kv-0004vg-GN; Fri, 15 Sep 2023 11:13:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603014.939912; Fri, 15 Sep 2023 11:13:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6kv-0004v9-DJ; Fri, 15 Sep 2023 11:13:01 +0000
Received: by outflank-mailman (input) for mailman id 603014;
 Fri, 15 Sep 2023 11:13:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6ku-0003Cy-7l
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:13:00 +0000
Received: from NAM10-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam10on20615.outbound.protection.outlook.com
 [2a01:111:f400:7e88::615])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d3032635-53b8-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 13:12:58 +0200 (CEST)
Received: from DM6PR05CA0060.namprd05.prod.outlook.com (2603:10b6:5:335::29)
 by DM4PR12MB5184.namprd12.prod.outlook.com (2603:10b6:5:397::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Fri, 15 Sep
 2023 11:12:53 +0000
Received: from DS1PEPF00017098.namprd05.prod.outlook.com
 (2603:10b6:5:335:cafe::db) by DM6PR05CA0060.outlook.office365.com
 (2603:10b6:5:335::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 11:12:53 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017098.mail.protection.outlook.com (10.167.18.102) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Fri, 15 Sep 2023 11:12:53 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:12:40 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d3032635-53b8-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CzriP+yOWO2THW1cgtHr4x34QFSqXCrCuQs2K6aeXYVrK/Hv3QHPjRdvtdYfXxCAH6QWJhP1BJ1Rw3rrd4EiXhMktBBdfPGXzGyRX3fFo7ntykh5B316j2cVcE4gfyhFXn3k4btWmCj25mRQYJn8h6+KhKG8CShiM0odWU0/uc/kZqRI+EqLYvhgFuK7HSqF9DkHFVnUDaBBLqIN4ZARV3BmUuaMMRWajFZlOAVcC94cA7nZCSTg9sXEH4RiVoSZn/38Fkyphwc4uVdm09H52W98HSne42BbDOYVqcJNRNwYo8z7WPzjFlTlpC3urkVQzk3O3NUJoULkTNntEuNSRQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/oZk2aW8HC0IURT0X+XD0S8DA/oj3Z2KF9z6UX+B5YM=;
 b=feNa3YuEylihhZ1lx4dMjFqdJxIU1TDkYVdLREie/Lsldmxm79Gv4av4wQ9sH2mYgkYcnVfWb48jh8llB2WglTJcv6WFjpyCteSjUBAlhx4lb3J5D0zGHjsyeRcG/soJyMD+hF1PvLgYzKGBk0msb/oy1szI4uJP9bFs87qwplvKSDHJEjNTqIzqpyFN7SeW3y1OVNefW/5bAlrh7erpqLhIW0nHAubjEOMqdmJHcy3x2qurqxtKZe4JIRh0AbSrCcvrh3DJWCFEnSPIPODG+46IkdT8AI/hnicN+SLqQRrpc9q643aTLWxus692kODIEs7AlCkZ+0ufGk60CbtsqA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/oZk2aW8HC0IURT0X+XD0S8DA/oj3Z2KF9z6UX+B5YM=;
 b=fhFD2ddbYlhbjFMopPhRVVa3ZU3gvHDFklPxkIMRpWZhOSpbH+p3yHxFXuj36lAzEeB9ea+4ukqk8gkrY3ap9ZfsCtGwHp8T44k7IrtMY1cj7WtlMYkyLGmCXwL1bEzjNz5XXD/JhJbc+On5a+T53tXcS0FjRqZA+0O19DpcWD8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Huang Rui <ray.huang@amd.com>, Antonio
 Caggiano <antonio.caggiano@collabora.com>
Subject: [QEMU PATCH v5 05/13] virtio-gpu: Configure context init for virglrenderer
Date: Fri, 15 Sep 2023 19:11:22 +0800
Message-ID: <20230915111130.24064-6-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017098:EE_|DM4PR12MB5184:EE_
X-MS-Office365-Filtering-Correlation-Id: 20d0b8a9-9383-443d-eda5-08dbb5dcb4e4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zNzUyIS7lbmsGprOBH+aQOLUy9boun/CoU4y6FrogIYHsE4X8AVBum4TvLn2E0ci82dp08OgAz0PxZAb000gBV5MBJTwKCQHppAmpkcxaZlEaCIwo7Uu5LA6O+lufULfMOT5ttUi/q0JdLd1NtHM/OqQvB4ZUrl7U7teVK2v95J0f71JJ5KxM3bbYTTqI0P48/KB4jfI2EYkOATQTThcxj4qpIcnLUl7iRWiKIFhAizRVt7mmBjLeTO0tZvU2+B2+VmBwyMI/IgKopeYWeyzfO6Ky2e2dnnZdf2Ip/xqKNBc++yAGRQV8wLblxIFcYt0mDDgLz8xoNa14KitI8ThNJAOjbDVjB8IKA95yw8S3qx+GUVRiDNTKazDtpcos8GoDLKEc2NeTT9UgV08Oa96dyyoy9AryFocixq/QPYMAJJlrVSRZcERAnTjlQvCSFQtmufEL/S5lULeWnjjXEkHKeYpq89hrXsDJvLHVEWHjZZhwQmUPQr74Jz/yT8T1zFqtgUNP3oIOekIJ3V0wtMdo5dLYzr8dOVNFcA7zKtgIINEzxMs0QIPLqODN2CTF7YK17S7hf2bqke7h2Ny2+TtpfShAbAvTI+Jvo1acH/+2HTOBvgcX59igwQWIQKaz9eAsTgc6aW17paF0y7zgEUxx6uLWIiQr/A7BE3yR7lEF/u7+lrWlHbzSxH4vt3UwJq9tk/KfMQWqPVtMxH8T8r6UNKKcN1FDwbswAQsDiUJ9/yV3q7fTbPiyPn3dWkbN2dChR1sCh9S0qVVI+SBD5zdD/vyVQ4LxIk1Hy4hpQHl3zo=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(346002)(136003)(39860400002)(376002)(186009)(1800799009)(82310400011)(451199024)(36840700001)(46966006)(40470700004)(16526019)(5660300002)(26005)(8936002)(1076003)(4326008)(8676002)(40460700003)(2906002)(4744005)(7416002)(86362001)(81166007)(356005)(921005)(82740400003)(83380400001)(36860700001)(47076005)(36756003)(336012)(426003)(40480700001)(7696005)(6666004)(110136005)(2616005)(54906003)(70586007)(70206006)(478600001)(41300700001)(316002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:12:53.4454
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 20d0b8a9-9383-443d-eda5-08dbb5dcb4e4
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017098.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5184

Configure context init feature flag for virglrenderer.

Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---

V4 -> V5:
    - Inverted patch 5 and 6 because we should configure
      HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)

 meson.build | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/meson.build b/meson.build
index 98e68ef0b1..ff20d3c249 100644
--- a/meson.build
+++ b/meson.build
@@ -1068,6 +1068,10 @@ if not get_option('virglrenderer').auto() or have_system or have_vhost_user_gpu
                                        prefix: '#include <virglrenderer.h>',
                                        dependencies: virgl))
   endif
+  config_host_data.set('HAVE_VIRGL_CONTEXT_INIT',
+                       cc.has_function('virgl_renderer_context_create_with_flags',
+                                       prefix: '#include <virglrenderer.h>',
+                                       dependencies: virgl))
 endif
 blkio = not_found
 if not get_option('blkio').auto() or have_block
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:13:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:13:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603020.939921 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6l0-0005Lc-O8; Fri, 15 Sep 2023 11:13:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603020.939921; Fri, 15 Sep 2023 11:13:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6l0-0005LV-LJ; Fri, 15 Sep 2023 11:13:06 +0000
Received: by outflank-mailman (input) for mailman id 603020;
 Fri, 15 Sep 2023 11:13:05 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6kz-0002xb-Jz
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:13:05 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20600.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d6e4d5cd-53b8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 13:13:04 +0200 (CEST)
Received: from DM6PR02CA0038.namprd02.prod.outlook.com (2603:10b6:5:177::15)
 by SA1PR12MB8095.namprd12.prod.outlook.com (2603:10b6:806:33f::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Fri, 15 Sep
 2023 11:12:59 +0000
Received: from DS1PEPF00017099.namprd05.prod.outlook.com
 (2603:10b6:5:177:cafe::63) by DM6PR02CA0038.outlook.office365.com
 (2603:10b6:5:177::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20 via Frontend
 Transport; Fri, 15 Sep 2023 11:12:59 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017099.mail.protection.outlook.com (10.167.18.103) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Fri, 15 Sep 2023 11:12:59 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:12:53 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d6e4d5cd-53b8-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LacU50plnPYPQiL6CHeXCR2jrrXbW/gSO+t2uz93J0u2OQjgGesS8zjgLku2viGbtVPVhhnOyKGzvZ+z4glc5+VwgEAW6VC16a9Oc/qIrqVDeJvsynJZ0k1hEox5nVQN4hZdI8pEODg4N7CQSfB+uthwH8cgKZN/teHg9aU67mUZkHYydM8PZL9WoSAssvBZ9YNRomUqH8cVjngQSALInF2myyydfQkGGw8HVk4swYudzJ7RpL3W4RGgBcEwyahS7C2VFixIsZS8k1iTiV3mX+PfGwvZ+quYYKVmq+xI0dSY9qe+Y038TKgHaxBaz5Iw1LNz+65dWaF5UW4Ax/B8RA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DDKzYMd2SjrX3jhI6nrBvFF+gbF1l4mTQRj0VTPIzeo=;
 b=kPqAevPxKrdjvF0RZryHnjOa9TJUQ5Tz7CZvAUv50bfpbEJ3xP4zTiV4Cc/sqoMCvtQo5/5M0Ijd1H4+ad8ppb03j6Gpyr4gxneOLh4LSbvxZBUalvD7ay4/118LLwTQ0TZw9et/+Z6BZm0W25vCm7TyDmAGy9D5xlvhir+oEcwVJMz2xGUHQSvWck8Z2f8qVZOis3gbVNjKRUtMWGsUQ5rGULlY3/2YB6+JiUgL3S4xC/d3xCl0PIC0yay+5L9k+wlZkRcQxLslFpwwcfFnnWhaOZdomcAQ3XP2r53DwbYzKg4FVt/JezQ3HeQmB9+5OX6x6+2/E7YaeoHRRVrpUg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DDKzYMd2SjrX3jhI6nrBvFF+gbF1l4mTQRj0VTPIzeo=;
 b=qBMdKpDtxGnFolRgmvHSG3E8U+sa7B5bbZYH5wgbbNRdCdG6fNqeAApnmlLcIxgHPZvklwz4cNqxIC2NUMccdY3+B2cUBYEQj9IJkqrpQXUWR6yKT6LwWkgOwuhUbDelkSS/vMSEYxva8JFT/IczCO2mMugcENiLmG2DzDsMf1Q=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Huang Rui <ray.huang@amd.com>, Antonio
 Caggiano <antonio.caggiano@collabora.com>
Subject: [QEMU PATCH v5 06/13] virtio-gpu: Support context init feature with virglrenderer
Date: Fri, 15 Sep 2023 19:11:23 +0800
Message-ID: <20230915111130.24064-7-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017099:EE_|SA1PR12MB8095:EE_
X-MS-Office365-Filtering-Correlation-Id: f959d7d3-ab8a-47d0-b842-08dbb5dcb87d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	SLkza3en713N31+EauxcBDcLOQh5WV8bcKGM6CUb/p7oyPtKr5SwnQ1cebelQJSR8ANTBgst2uzminkL5ZKCL1MTEvBHezY3lknfrUeYzLfA+umnfDpEO8q7S4zdJdB6h9R9x1dBrdlBcFeSg2XihWOOL7J/KTlYUI6J7PBfBiRcEsTFPfJ0unRvVh+KSCIn7RQ1zlwUF+Qugf/7KwYiRvCZAGjmuGtW/eKX/P8lGziS3cBD82mJlt/9ezoSFuruiFdtGLt0AT8byVJ9+JmDW5BQPMBD3wy2Zw8EnBub5roiD29J2GSNrQhIO1sQDeZvYHOcihWrDRvgEuYZLsgWE0PIDNneXgLp0RM9P+BmWNJZPgWz4Puf10feDCRVmXuouM5Fr3jYkdgf2boMS/Kic7iq7Au0v8VPb3CTkD5TiEKRy8VZSFtmYbNJIMkjpC3XwdpWCqvEkEjtGL9n5am/pYHUfvHuhBZKdj9iX89sWvTasvayQ4LFrM+qZ6axDpmDei5bdZnLGVOqJ0DC53K9fYLiuS1B74Xi/9H/3/l7losGGrsIyPdDiJQHcsf/xPnUCY5nesAgZrScC2YNTuuLq04TQl1appEbFn9hB6fkcofg5f6zPVTGsVwWRrs6C63+QmFT9E5vFpUGTCB2KGw8TZjux3GU5YCQdiMsks1hjmgAfG2O8+wxZLtiJA7G/8Vu5NeLRRLhHuctfix8gYkVqux3erpN/vWsZD2Y+gMTNGzxtMXJgDflK3A3N91PmErJZ54EpU9qg9H6g2NgG00sEN0QNXR6wb15vojeftfUcCs=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(396003)(376002)(346002)(451199024)(1800799009)(186009)(82310400011)(46966006)(40470700004)(36840700001)(40460700003)(36756003)(86362001)(40480700001)(5660300002)(316002)(7696005)(26005)(70206006)(8676002)(426003)(70586007)(336012)(110136005)(2616005)(8936002)(54906003)(921005)(41300700001)(4326008)(2906002)(16526019)(6666004)(47076005)(81166007)(36860700001)(478600001)(356005)(1076003)(82740400003)(83380400001)(7416002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:12:59.4955
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f959d7d3-ab8a-47d0-b842-08dbb5dcb87d
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017099.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB8095

Patch "virtio-gpu: CONTEXT_INIT feature" has added the context_init
feature flags.
We would like to enable the feature with virglrenderer, so add to create
virgl renderer context with flags using context_id when valid.

Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---

V4 -> V5:
    - Inverted patch 5 and 6 because we should configure
      HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)

 hw/display/virtio-gpu-virgl.c | 13 +++++++++++--
 hw/display/virtio-gpu.c       |  2 ++
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
index 8bb7a2c21f..312953ec16 100644
--- a/hw/display/virtio-gpu-virgl.c
+++ b/hw/display/virtio-gpu-virgl.c
@@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
     trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
                                     cc.debug_name);
 
-    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
-                                  cc.debug_name);
+    if (cc.context_init) {
+#ifdef HAVE_VIRGL_CONTEXT_INIT
+        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
+                                                 cc.context_init,
+                                                 cc.nlen,
+                                                 cc.debug_name);
+        return;
+#endif
+    }
+
+    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen, cc.debug_name);
 }
 
 static void virgl_cmd_context_destroy(VirtIOGPU *g,
diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
index 3e658f1fef..a66cbd9930 100644
--- a/hw/display/virtio-gpu.c
+++ b/hw/display/virtio-gpu.c
@@ -1506,6 +1506,8 @@ static Property virtio_gpu_properties[] = {
     DEFINE_PROP_BIT("blob", VirtIOGPU, parent_obj.conf.flags,
                     VIRTIO_GPU_FLAG_BLOB_ENABLED, false),
     DEFINE_PROP_SIZE("hostmem", VirtIOGPU, parent_obj.conf.hostmem, 0),
+    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
+                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, false),
     DEFINE_PROP_END_OF_LIST(),
 };
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:13:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:13:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603024.939932 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6l7-0005lT-3b; Fri, 15 Sep 2023 11:13:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603024.939932; Fri, 15 Sep 2023 11:13:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6l7-0005lI-03; Fri, 15 Sep 2023 11:13:13 +0000
Received: by outflank-mailman (input) for mailman id 603024;
 Fri, 15 Sep 2023 11:13:11 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6l5-0003Cy-8P
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:13:11 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on2060d.outbound.protection.outlook.com
 [2a01:111:f400:fe59::60d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d98cba82-53b8-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 13:13:09 +0200 (CEST)
Received: from DS7PR03CA0125.namprd03.prod.outlook.com (2603:10b6:5:3b4::10)
 by BL1PR12MB5240.namprd12.prod.outlook.com (2603:10b6:208:319::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Fri, 15 Sep
 2023 11:13:05 +0000
Received: from DS1PEPF00017096.namprd05.prod.outlook.com
 (2603:10b6:5:3b4:cafe::35) by DS7PR03CA0125.outlook.office365.com
 (2603:10b6:5:3b4::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 11:13:05 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017096.mail.protection.outlook.com (10.167.18.100) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Fri, 15 Sep 2023 11:13:05 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:12:59 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d98cba82-53b8-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ebOp4RsRYYAAUO7G+HFbWeWCGucPSse4Cqf94i8ejKxCZ73shBC26pcnSVYWzoyyZKwaQ7dbAHH1RgN9iJj2BG27V7IWC0dDr3g/U8l/01gd9H67j9w43qpdOylc23DRngb+V9l3VEkaj3mhtPqhVPnBt+hTQmeYyvy617K8DxXoH/E9zahlStGVJkPBsAhrNXU3hA+qrgXJn8aj5S97kIKMa8HnUcIymyVDQmjH7DqSQuW4ALU23KQUAfuFD99yjP8hbGQJdDYfarvTcxLA37er+3ycQSifb2QIA6JOeikeI4lNLZNisqcBv7bDZBOsset8Gv3dayaH/BuJLSAucw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=SviVy3p1SaMQZ+DeOFS4BSuC7/Crlp0rXdVO1dxpWdg=;
 b=iPkBuMlnpYP+N0MFs0N9ieBOv02xnX3mCL+/hno1W0DoCv7OkA81ARudFQA5e9vdT5GusaZTXZahvsiRxkOxGzS1bKptx6C8xD+BAIpYm1v1yT4p/uy6BLI4hLxt14ImhdulYpuGLUaDeGrXi92eoh93XNEIcGTD14iFc3Q15IZSHs28bDT1+PHIL6TCQbCoh91qJB2V2n7lNwaQ4BONU88YtyXTXEc3TAor8z6qKv6dMjeRv2fQQ0LvpQV6aiycU5L9FcAM4txaBDdet3eaQ0TEOSswmEwQhzXmLrIuFRHU9NFpTd29FkfDJC25wJmHTfCg99GlscylblFlpBa6fA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=SviVy3p1SaMQZ+DeOFS4BSuC7/Crlp0rXdVO1dxpWdg=;
 b=U2/ZhPC/2ePWFg5hIRScJactE8ncxRRs9C+OBYg1YTtPoN9c/LzJRxmIxPfv3o1zzmdcE23BlQPwIt/oDhuf4fBKhk0xNjsdey+JcnCtO5y7AK/y+F8s4AzZVDt4SXVQT8S56yHtjCiA4tOzR/4I7cDI/mVe0BOZ6cZkVNJXKgA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Huang Rui <ray.huang@amd.com>
Subject: [QEMU PATCH v5 07/13] softmmu/memory: enable automatic deallocation of memory regions
Date: Fri, 15 Sep 2023 19:11:24 +0800
Message-ID: <20230915111130.24064-8-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017096:EE_|BL1PR12MB5240:EE_
X-MS-Office365-Filtering-Correlation-Id: f9ce3266-f3d1-4ed5-5736-08dbb5dcbc0d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/ySd+YhWxbNTYgniZ4QXeOr6tTNtpYQG3G+qcl9EULXzKb19YRxV/MwdM0YbvpBtN+44yQSiyTI8dP75jZp4euY/kwsOGNDPo/Mm5D0/8zcp5oQceMZgi673aLZpYfrAMOlUni6L5b0w3e0MKy9Y/SDrVRsB5/0/PD7dF9O6q/bCJgb8CFxQOabZ2g8fIUII75yWYjwXBbLNJ2AIVG6WaLELKUNHWvSSWl6dhzVa17qwRfNfaL6+RWddepti3ebtD7+tsF74/zG24qvEBB/6kEMpmSTnlGglmPiFlB8gHooa+lnVlKycvVwHBd2PUd7eQGbNkt1G4JwWRMB2CCPzMjSa6z+piaGQ4J1JLpaxFdI/G4Lze9Z0DYk96NJxoCG7wey6UOry7alEZS7Yv1Tpyio89TewFZRDhMYIr7AAYWzYQ5Y6iEG5fx803LEzXTQAAUqSxRi3tpuF1FehqoGRf0G/AxBnwFT1cXiSbmFpSq97DvfUJMp84hLoel0u6PpquwlB0fOebkXmQgM7sMpZXBXGO35r+FYjDUnUcNbMUS4FvRXqnVuPoODGum4HLBeQMiSXfgNbFNUKdKhdvCSXJPS3yvjpC8Q1aAdYT4bfnV3PhbreX+rVLHvSCyJhHSqDNYsYVzHHjDNqefewa8rqX94Ka843nEMspdHvu1owZBKrN321qpY1X3uRfwcXD+Ti3+zQvns8Z0PI06oyiZsXEFmLIF20FwhCdJGQL/kWDMESl0XMxC6w+js6zYHyH3BSei2qgu1VdXFUGm/YBmub82+xAa6ROD8vwZ1+5MwCmw8=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(39860400002)(396003)(136003)(376002)(451199024)(1800799009)(186009)(82310400011)(46966006)(36840700001)(40470700004)(110136005)(54906003)(6666004)(70586007)(70206006)(40480700001)(7696005)(41300700001)(316002)(478600001)(8676002)(4326008)(2616005)(66899024)(1076003)(8936002)(40460700003)(5660300002)(16526019)(26005)(47076005)(36756003)(921005)(356005)(36860700001)(82740400003)(81166007)(336012)(426003)(2906002)(7416002)(86362001)(83380400001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:13:05.4699
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f9ce3266-f3d1-4ed5-5736-08dbb5dcbc0d
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017096.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5240

From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>

When the memory region has a different life-cycle from that of her parent,
could be automatically released, once has been unparent and once all of her
references have gone away, via the object's free callback.

However, currently, references to the memory region are held by its owner
without first incrementing the memory region object's reference count.
As a result, the automatic deallocation of the object, not taking into
account those references, results in use-after-free memory corruption.

This patch increases the reference count of an owned memory region object
on each memory_region_ref() and decreases it on each memory_region_unref().

Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---

V4 -> V5:
    - ref/unref only owned memory regions (Akihiko)

 softmmu/memory.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/softmmu/memory.c b/softmmu/memory.c
index 7d9494ce70..15e1699750 100644
--- a/softmmu/memory.c
+++ b/softmmu/memory.c
@@ -1800,6 +1800,9 @@ void memory_region_ref(MemoryRegion *mr)
     /* MMIO callbacks most likely will access data that belongs
      * to the owner, hence the need to ref/unref the owner whenever
      * the memory region is in use.
+     * Likewise, the owner keeps references to the memory region,
+     * hence the need to ref/unref the memory region object to prevent
+     * its automatic deallocation while still referenced by its owner.
      *
      * The memory region is a child of its owner.  As long as the
      * owner doesn't call unparent itself on the memory region,
@@ -1808,6 +1811,7 @@ void memory_region_ref(MemoryRegion *mr)
      * we do not ref/unref them because it slows down DMA sensibly.
      */
     if (mr && mr->owner) {
+        object_ref(OBJECT(mr));
         object_ref(mr->owner);
     }
 }
@@ -1816,6 +1820,7 @@ void memory_region_unref(MemoryRegion *mr)
 {
     if (mr && mr->owner) {
         object_unref(mr->owner);
+        object_unref(OBJECT(mr));
     }
 }
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:16:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:16:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603041.939942 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6nr-0000D9-MU; Fri, 15 Sep 2023 11:16:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603041.939942; Fri, 15 Sep 2023 11:16:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6nr-0000D2-JV; Fri, 15 Sep 2023 11:16:03 +0000
Received: by outflank-mailman (input) for mailman id 603041;
 Fri, 15 Sep 2023 11:16:02 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6lP-0002xb-5h
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:13:31 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20620.outbound.protection.outlook.com
 [2a01:111:f400:7eab::620])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e5a23351-53b8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 13:13:30 +0200 (CEST)
Received: from DM6PR02CA0043.namprd02.prod.outlook.com (2603:10b6:5:177::20)
 by LV8PR12MB9406.namprd12.prod.outlook.com (2603:10b6:408:20b::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Fri, 15 Sep
 2023 11:13:24 +0000
Received: from DS1PEPF00017099.namprd05.prod.outlook.com
 (2603:10b6:5:177:cafe::bb) by DM6PR02CA0043.outlook.office365.com
 (2603:10b6:5:177::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.22 via Frontend
 Transport; Fri, 15 Sep 2023 11:13:24 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017099.mail.protection.outlook.com (10.167.18.103) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Fri, 15 Sep 2023 11:13:23 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:13:17 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e5a23351-53b8-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=h+PmToRAZ22IXx9RuQXK2ST3CSDa7hyDTLoWx93wa7o/X3gaHbOoP02DZK8fLR/8uf95KcpzDlHr4Qn2CO87Yp5YxZqiUhoWXQQ7YI6d8nUPjuQVcK8QoAjxlwC/Zje+a0V5ZmSB88RPdKMMqsQAw3ednH8H29OBNy7OieEQVolMYeTeCGYCx+gCzPk3XpwXseatLC/MI9/LsH3vk3ioUQo3d40jL/21mmWbJSPFDRean8YTarpgOwktrHpPb/THTLgQe5j8Of7IdKVI8PBiXYWq4KCPCJUiH+XnjMuXMAZcr8+FhwcDFuWrZczul2NqKgIqq+C71LnKhKvKVpQ3Rg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=quNgyx8sLQYdRUOKh2lHcxSCvwJ/Gs8OZw0KqZsqGkE=;
 b=XQLhNPTxmslh6zAbLmJUrXK/vm0hny5Sn0vLxkY/9YCAHw5To+s79Fa3P0u9xmoIZDAWsdemou0lNTZzME+d4u2lb7/uj2IyJL6NkrT4Nb7N2Bce23GhtEToi3KrY3Rp2TKFH8/pi0BSEJFDGyVtdnktqQOTa8AWeD2yYdohKJf6mQ/FdcrWx/NmzGOs588MMOk8a+x+yn08+RBgBeoqC8poNV9td34fE/+pfBZtOQoHlXMl33/8bHwLdk7qQaex1U8/B1Zo25Fjk7PZcpT1/aYnYZblbg0/ieEpwiy1avWdlGYvVDTLDIlSspO0mSzDcqrT92mq6UD8US1YmQG+Iw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=quNgyx8sLQYdRUOKh2lHcxSCvwJ/Gs8OZw0KqZsqGkE=;
 b=ZEefhonbjcmhC1kokH1o93PVeSxUQ1Yus5QC03UnTFKTuc9Uzg5kB/nGPpCuqp1IgDWEZmCQBdIWfGRBxCJVtRyzS18O6XBRsCH77xDzp8p15nBpMs6llh/S8vCKg5YpaaqQtftv5jSAlf9EicifKbgQLADObOjuy+207a8vILM=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Antonio Caggiano
	<antonio.caggiano@collabora.com>, Huang Rui <ray.huang@amd.com>
Subject: [QEMU PATCH v5 10/13] virtio-gpu: Resource UUID
Date: Fri, 15 Sep 2023 19:11:27 +0800
Message-ID: <20230915111130.24064-11-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017099:EE_|LV8PR12MB9406:EE_
X-MS-Office365-Filtering-Correlation-Id: 415fb7bd-8e7f-4477-9200-08dbb5dcc70e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TV7L0dSpc9+RG+zqytEuk2ScpZm3DXBUQonJ2iaXkpWuhczfNspy7BsdSUdRI4nnrMEPue6Xp3XSSG9eY1aL47xF2ZaEF/J1UhbxnLHDa+wx8cKqiYqs0521J50AkqQ3Dp/+OyDsEpkOLCeviCMBJJHk3Pj1ONYuv98//7F+EDRpGmdrsns9E4Onoa11GfAIKm/B9AACjN0UoFapPhDTSxor02GoPxNJhHzwm4oYcXFrEi8s0ikNunK2eGYlBbAFZIU94Hr2lGc14stTtbqLXGsjQRihBY92WJy3GFOgfh0zhiUuKN4nLUHv5baSoIC3iFoSvCvZ6gRyvMW06Rv4/smoGHirI8d7UkgokS8H0s8lAgtsmiPQuYFzkWKmP+hxCGYocN11swQkQpjrGvZSmcGLKqnO482Tf8MeyNM4Qvx9N71N0myB3aFY/mqbZj0jQ7Q5e8fsToBE8GE7W/xmPEvjJ3Qx2yzDYQd7ISGAX/VEY03HYZTc1PTFrnKc0t/guVUwuRxV1qXfGB2NVLJ/72yX4qlH6DCuzWgSj9fXxkdVIsrkkGJU9iVH3k8+LxC28JLxQAS7kE+Kh5XTK3XQcGOxhKv1pJvUrxat3QekymlfGj6sPSq/Vnh30b8aANrBrxILU1LoHssZOLoVCjQP+OmW/VnxHEMts/HoBEOEtLlSzrNHi/GgRKrUau9wefLUbwF6vxf1c+xwKlDFntSZB5kBz8kveMNAec8LmbiqBnuOxNWE9pVg0u90Qe1y+jnTAYaBnv3lOQu659nGNkBIZF6hBi4ddV8qmiqdxkyb+eY=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(39860400002)(136003)(396003)(376002)(186009)(451199024)(82310400011)(1800799009)(40470700004)(36840700001)(46966006)(83380400001)(70206006)(2906002)(6666004)(36756003)(7416002)(4326008)(54906003)(70586007)(8676002)(8936002)(40460700003)(41300700001)(5660300002)(86362001)(47076005)(81166007)(110136005)(2616005)(356005)(921005)(478600001)(7696005)(336012)(36860700001)(316002)(426003)(26005)(16526019)(82740400003)(1076003)(40480700001)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:13:23.9329
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 415fb7bd-8e7f-4477-9200-08dbb5dcc70e
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017099.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR12MB9406

From: Antonio Caggiano <antonio.caggiano@collabora.com>

Enable resource UUID feature and implement command resource assign UUID.
This is done by introducing a hash table to map resource IDs to their
UUIDs.

Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---

V4 -> V5:
    - Add virtio migration handling for uuid (Akihiko)
    - Adjust sequence to allocate gpu resource before virglrender resource
      creation (Akihiko)
    - Clean up (Akihiko)

 hw/display/trace-events        |  1 +
 hw/display/virtio-gpu-base.c   |  2 ++
 hw/display/virtio-gpu-virgl.c  | 21 ++++++++++++
 hw/display/virtio-gpu.c        | 58 ++++++++++++++++++++++++++++++++++
 include/hw/virtio/virtio-gpu.h |  6 ++++
 5 files changed, 88 insertions(+)

diff --git a/hw/display/trace-events b/hw/display/trace-events
index 2336a0ca15..54d6894c59 100644
--- a/hw/display/trace-events
+++ b/hw/display/trace-events
@@ -41,6 +41,7 @@ virtio_gpu_cmd_res_create_blob(uint32_t res, uint64_t size) "res 0x%x, size %" P
 virtio_gpu_cmd_res_unref(uint32_t res) "res 0x%x"
 virtio_gpu_cmd_res_back_attach(uint32_t res) "res 0x%x"
 virtio_gpu_cmd_res_back_detach(uint32_t res) "res 0x%x"
+virtio_gpu_cmd_res_assign_uuid(uint32_t res) "res 0x%x"
 virtio_gpu_cmd_res_xfer_toh_2d(uint32_t res) "res 0x%x"
 virtio_gpu_cmd_res_xfer_toh_3d(uint32_t res) "res 0x%x"
 virtio_gpu_cmd_res_xfer_fromh_3d(uint32_t res) "res 0x%x"
diff --git a/hw/display/virtio-gpu-base.c b/hw/display/virtio-gpu-base.c
index 4f2b0ba1f3..f44388715c 100644
--- a/hw/display/virtio-gpu-base.c
+++ b/hw/display/virtio-gpu-base.c
@@ -236,6 +236,8 @@ virtio_gpu_base_get_features(VirtIODevice *vdev, uint64_t features,
         features |= (1 << VIRTIO_GPU_F_CONTEXT_INIT);
     }
 
+    features |= (1 << VIRTIO_GPU_F_RESOURCE_UUID);
+
     return features;
 }
 
diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
index 563a6f2f58..8a017dbeb4 100644
--- a/hw/display/virtio-gpu-virgl.c
+++ b/hw/display/virtio-gpu-virgl.c
@@ -36,11 +36,20 @@ static void virgl_cmd_create_resource_2d(VirtIOGPU *g,
 {
     struct virtio_gpu_resource_create_2d c2d;
     struct virgl_renderer_resource_create_args args;
+    struct virtio_gpu_simple_resource *res;
 
     VIRTIO_GPU_FILL_CMD(c2d);
     trace_virtio_gpu_cmd_res_create_2d(c2d.resource_id, c2d.format,
                                        c2d.width, c2d.height);
 
+    res = g_new0(struct virtio_gpu_simple_resource, 1);
+    if (!res) {
+        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
+        return;
+    }
+    res->resource_id = c2d.resource_id;
+    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
+
     args.handle = c2d.resource_id;
     args.target = 2;
     args.format = c2d.format;
@@ -60,11 +69,20 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
 {
     struct virtio_gpu_resource_create_3d c3d;
     struct virgl_renderer_resource_create_args args;
+    struct virtio_gpu_simple_resource *res;
 
     VIRTIO_GPU_FILL_CMD(c3d);
     trace_virtio_gpu_cmd_res_create_3d(c3d.resource_id, c3d.format,
                                        c3d.width, c3d.height, c3d.depth);
 
+    res = g_new0(struct virtio_gpu_simple_resource, 1);
+    if (!res) {
+        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
+        return;
+    }
+    res->resource_id = c3d.resource_id;
+    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
+
     args.handle = c3d.resource_id;
     args.target = c3d.target;
     args.format = c3d.format;
@@ -682,6 +700,9 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
         /* TODO add security */
         virgl_cmd_ctx_detach_resource(g, cmd);
         break;
+    case VIRTIO_GPU_CMD_RESOURCE_ASSIGN_UUID:
+        virtio_gpu_resource_assign_uuid(g, cmd);
+        break;
     case VIRTIO_GPU_CMD_GET_CAPSET_INFO:
         virgl_cmd_get_capset_info(g, cmd);
         break;
diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
index cc4c1f81bb..44414c1c5e 100644
--- a/hw/display/virtio-gpu.c
+++ b/hw/display/virtio-gpu.c
@@ -966,6 +966,38 @@ virtio_gpu_resource_detach_backing(VirtIOGPU *g,
     virtio_gpu_cleanup_mapping(g, res);
 }
 
+void virtio_gpu_resource_assign_uuid(VirtIOGPU *g,
+                                     struct virtio_gpu_ctrl_command *cmd)
+{
+    struct virtio_gpu_simple_resource *res;
+    struct virtio_gpu_resource_assign_uuid assign;
+    struct virtio_gpu_resp_resource_uuid resp;
+    QemuUUID *uuid;
+
+    VIRTIO_GPU_FILL_CMD(assign);
+    virtio_gpu_bswap_32(&assign, sizeof(assign));
+    trace_virtio_gpu_cmd_res_assign_uuid(assign.resource_id);
+
+    res = virtio_gpu_find_check_resource(g, assign.resource_id, false, __func__, &cmd->error);
+    if (!res) {
+        return;
+    }
+
+    memset(&resp, 0, sizeof(resp));
+    resp.hdr.type = VIRTIO_GPU_RESP_OK_RESOURCE_UUID;
+
+    uuid = g_hash_table_lookup(g->resource_uuids, GUINT_TO_POINTER(assign.resource_id));
+    if (!uuid) {
+        uuid = g_new(QemuUUID, 1);
+        qemu_uuid_generate(uuid);
+        g_hash_table_insert(g->resource_uuids, GUINT_TO_POINTER(assign.resource_id), uuid);
+        res->has_uuid = true;
+    }
+
+    memcpy(resp.uuid, uuid, sizeof(QemuUUID));
+    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
+}
+
 void virtio_gpu_simple_process_cmd(VirtIOGPU *g,
                                    struct virtio_gpu_ctrl_command *cmd)
 {
@@ -1014,6 +1046,9 @@ void virtio_gpu_simple_process_cmd(VirtIOGPU *g,
     case VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING:
         virtio_gpu_resource_detach_backing(g, cmd);
         break;
+    case VIRTIO_GPU_CMD_RESOURCE_ASSIGN_UUID:
+        virtio_gpu_resource_assign_uuid(g, cmd);
+        break;
     default:
         cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
         break;
@@ -1208,6 +1243,7 @@ static int virtio_gpu_save(QEMUFile *f, void *opaque, size_t size,
     VirtIOGPU *g = opaque;
     struct virtio_gpu_simple_resource *res;
     int i;
+    QemuUUID *uuid;
 
     /* in 2d mode we should never find unprocessed commands here */
     assert(QTAILQ_EMPTY(&g->cmdq));
@@ -1224,9 +1260,17 @@ static int virtio_gpu_save(QEMUFile *f, void *opaque, size_t size,
         }
         qemu_put_buffer(f, (void *)pixman_image_get_data(res->image),
                         pixman_image_get_stride(res->image) * res->height);
+
+        qemu_put_byte(f, res->has_uuid);
+        if (res->has_uuid) {
+            uuid = g_hash_table_lookup(g->resource_uuids, GUINT_TO_POINTER(res->resource_id));
+            qemu_put_buffer(f, (void *)uuid, sizeof(QemuUUID));
+        }
     }
     qemu_put_be32(f, 0); /* end of list */
 
+    g_hash_table_destroy(g->resource_uuids);
+
     return vmstate_save_state(f, &vmstate_virtio_gpu_scanouts, g, NULL);
 }
 
@@ -1239,9 +1283,12 @@ static int virtio_gpu_load(QEMUFile *f, void *opaque, size_t size,
     uint32_t resource_id, pformat;
     void *bits = NULL;
     int i;
+    QemuUUID *uuid = NULL;
 
     g->hostmem = 0;
 
+    g->resource_uuids = g_hash_table_new_full(NULL, NULL, NULL, g_free);
+
     resource_id = qemu_get_be32(f);
     while (resource_id != 0) {
         res = virtio_gpu_find_resource(g, resource_id);
@@ -1292,6 +1339,12 @@ static int virtio_gpu_load(QEMUFile *f, void *opaque, size_t size,
         qemu_get_buffer(f, (void *)pixman_image_get_data(res->image),
                         pixman_image_get_stride(res->image) * res->height);
 
+        res->has_uuid = qemu_get_byte(f);
+        if (res->has_uuid) {
+            qemu_get_buffer(f, (void *)uuid, sizeof(QemuUUID));
+            g_hash_table_insert(g->resource_uuids, GUINT_TO_POINTER(res->resource_id), uuid);
+        }
+
         /* restore mapping */
         for (i = 0; i < res->iov_cnt; i++) {
             hwaddr len = res->iov[i].iov_len;
@@ -1393,12 +1446,15 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp)
     QTAILQ_INIT(&g->reslist);
     QTAILQ_INIT(&g->cmdq);
     QTAILQ_INIT(&g->fenceq);
+
+    g->resource_uuids = g_hash_table_new_full(NULL, NULL, NULL, g_free);
 }
 
 static void virtio_gpu_device_unrealize(DeviceState *qdev)
 {
     VirtIOGPU *g = VIRTIO_GPU(qdev);
 
+    g_hash_table_destroy(g->resource_uuids);
     g_clear_pointer(&g->ctrl_bh, qemu_bh_delete);
     g_clear_pointer(&g->cursor_bh, qemu_bh_delete);
     g_clear_pointer(&g->reset_bh, qemu_bh_delete);
@@ -1452,6 +1508,8 @@ void virtio_gpu_reset(VirtIODevice *vdev)
         g_free(cmd);
     }
 
+    g_hash_table_remove_all(g->resource_uuids);
+
     virtio_gpu_base_reset(VIRTIO_GPU_BASE(vdev));
 }
 
diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h
index b9adc28071..67b39fccec 100644
--- a/include/hw/virtio/virtio-gpu.h
+++ b/include/hw/virtio/virtio-gpu.h
@@ -63,6 +63,8 @@ struct virtio_gpu_simple_resource {
     MemoryRegion *region;
 #endif
 
+    bool has_uuid;
+
     QTAILQ_ENTRY(virtio_gpu_simple_resource) next;
 };
 
@@ -208,6 +210,8 @@ struct VirtIOGPU {
         QTAILQ_HEAD(, VGPUDMABuf) bufs;
         VGPUDMABuf *primary[VIRTIO_GPU_MAX_SCANOUTS];
     } dmabuf;
+
+    GHashTable *resource_uuids;
 };
 
 struct VirtIOGPUClass {
@@ -285,6 +289,8 @@ void virtio_gpu_cleanup_mapping_iov(VirtIOGPU *g,
                                     struct iovec *iov, uint32_t count);
 void virtio_gpu_cleanup_mapping(VirtIOGPU *g,
                                 struct virtio_gpu_simple_resource *res);
+void virtio_gpu_resource_assign_uuid(VirtIOGPU *g,
+                                     struct virtio_gpu_ctrl_command *cmd);
 void virtio_gpu_process_cmdq(VirtIOGPU *g);
 void virtio_gpu_device_realize(DeviceState *qdev, Error **errp);
 void virtio_gpu_reset(VirtIODevice *vdev);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:16:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:16:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603046.939951 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6oO-0000q8-Uk; Fri, 15 Sep 2023 11:16:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603046.939951; Fri, 15 Sep 2023 11:16:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6oO-0000q1-SB; Fri, 15 Sep 2023 11:16:36 +0000
Received: by outflank-mailman (input) for mailman id 603046;
 Fri, 15 Sep 2023 11:16:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6lZ-0003Cy-4o
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:13:41 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20626.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::626])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id eb941848-53b8-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 13:13:39 +0200 (CEST)
Received: from DS7PR03CA0027.namprd03.prod.outlook.com (2603:10b6:5:3b8::32)
 by BL1PR12MB5362.namprd12.prod.outlook.com (2603:10b6:208:31d::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Fri, 15 Sep
 2023 11:13:36 +0000
Received: from DS1PEPF00017097.namprd05.prod.outlook.com
 (2603:10b6:5:3b8:cafe::ce) by DS7PR03CA0027.outlook.office365.com
 (2603:10b6:5:3b8::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 11:13:36 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017097.mail.protection.outlook.com (10.167.18.101) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Fri, 15 Sep 2023 11:13:36 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:13:29 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: eb941848-53b8-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SRaxgqiAoLzif0lKpmRnD06euhsTfnvVIAfuzxOmWFsV/+pSa33E7v1eRuRLeJ9Juzp+NMexOTyxVhkVK3xziXgTQJhKF9lp0LlY2LRWj6A/WdrbL0LGQOGTqcpk0rgHVp9cK1A6Ty61ZodUMu+07SoNopS7V1KHHc5g3hQ6BDAJLBAQukiEwZ3WLjsamP4qYfObQa8fKSCFW8SJfqiQWcZa0IxnVLakuV0vWOFuoL4wUJrt4+4WUNxgNKqWGTF80QL0a/4bKb2+fv52mgccwSmnUOfVAk4turmIi7UutRszPXSNPRDX9gIOmfEmkCJc/q7dih5IEbT+uf86lSn2Kg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yCctA/d+0Gb5My8OmDqUHYDaathKDBLi1NA3E1Lrd/M=;
 b=U6ZgXko+o2bjDgS8XOakBZTQevApy6+kzm8Gj/UWM4NwEAECFm3ohIVDjIxPa3iYKM38Al5dNEBspYvnFtEYT5hDQ1x2G/iULAvXdlmxe4tExqXWgZ3riTxdrWqmRd2gaXlkLy1Da3BTYVVnNUo5DP0wEKzcAwAwwJVTLZb5jbgtx7Avr04zJwWjxsQvf8yuUAaQ1DPmTTVXtJPkubrqxEpvh383GuyIH7xi/21R10Zw+qJdan4qMXVIMLWWOXeJNe6aTCCTTD932huOx+305S2KJIgm0ANnqx25zlmudgNbgFnOZWjTIgIDMKB83BdFUZJfi/jgjys8Ay3aphAHbg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yCctA/d+0Gb5My8OmDqUHYDaathKDBLi1NA3E1Lrd/M=;
 b=0wvapmN22PNedA7ekcUvo+6kBbWXNKRMMOiVlbMW8/aLLSumEcZSn/rWJUnYF/4z1YEwK2wmwBL7rj2zG0vIMoDd1m3YV9aGIwMbJ+Sepgg7xh7bmIQ+VAGlPU61fvoOAsC5aDzbAdUA7W+XXShOKHJo+YlQAwQDmvYFXtvfzHg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Antonio Caggiano
	<antonio.caggiano@collabora.com>, Huang Rui <ray.huang@amd.com>
Subject: [QEMU PATCH v5 12/13] virtio-gpu: Initialize Venus
Date: Fri, 15 Sep 2023 19:11:29 +0800
Message-ID: <20230915111130.24064-13-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017097:EE_|BL1PR12MB5362:EE_
X-MS-Office365-Filtering-Correlation-Id: ab3bcf85-b9a0-4d55-326f-08dbb5dcce60
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	bxWOhEETmGAmwcLPrzGe/Y27jc3iadxvHmWlqljMAJlOKoSk811V0f+FhFIPnY+BH+xI+xZzU2h7vMaT5UUTB0PhGBzw8RngwmUTJUpgT1vXeAf+VX1lZnR18ChGrgjDgisoe2lkbMEjx+0z9ggPwlQdkNUHj6+PHQglN5zQyWBGAt1LK5nBwsw9Sy/MJqmuv+L2HsHshRTqfb4enocayIQcyjgpdLQHPchVZjhGvjBOe2bCd1lJdmACd+nf3XWHEE/9Sew2d+P2ljIvZ4i9/rVbhjzzgysmRHLY9TIcer+GpPwqiAZX6duLlEY2dX0MgIaCcbleHWm2pMmLvG5vQ2aB8e2PuO4bIo/jwKR3uW4FRxvNzNnOKZoLQdNDqpoK7n3Dvd0esHjsxgEDbnNY9pvJ0Ehf+cLd+3ri39Fqi0lZxS+9jcj1kTXRvvh/1XdxXMI0Fd73uRN2zNQfk/beuJ0aII8/ccISeRcpXUFoA7EPBzUe7Ou/6gxSrWf1tefcAGjx74u9wkBeMRsdDK00x+Vg6L4VQMD532mHO13pNpNlzGSpq7fmvCIiO2VcClm+jOo5VGPfkBBpyGETt9U+55McBC39Y5xl3DJVT4WkxwDi1iWyF8+SAao4LLkziWxxGbWJL6LIXlvAUbMUIcFGR1BQINd3oXCkVmNJOUwLSE0saDkOMazbFlIaMrfXEs0bdZPLEPe4eQgmM4AMPuQXXYpwVwGOirEIPaukeg1XAmOdOTJIRO4TmVAL6fXS9vAVW4pklcgDcEBgCspnIBYwEtCFAPa62+jskw7cbkIiLAU=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(396003)(346002)(376002)(82310400011)(186009)(1800799009)(451199024)(36840700001)(40470700004)(46966006)(5660300002)(8936002)(26005)(16526019)(8676002)(1076003)(4326008)(40460700003)(2616005)(2906002)(83380400001)(7416002)(86362001)(47076005)(81166007)(921005)(356005)(82740400003)(36860700001)(36756003)(426003)(336012)(40480700001)(7696005)(110136005)(54906003)(70586007)(70206006)(478600001)(41300700001)(316002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:13:36.2119
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ab3bcf85-b9a0-4d55-326f-08dbb5dcce60
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017097.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5362

From: Antonio Caggiano <antonio.caggiano@collabora.com>

Request Venus when initializing VirGL.

Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---

V4 -> V5:
    - Add meson check to make sure unstable APIs defined from 0.9.0. (Antonio)

 hw/display/virtio-gpu-virgl.c | 4 ++++
 meson.build                   | 5 +++++
 2 files changed, 9 insertions(+)

diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
index 7f95490e90..39c04d730c 100644
--- a/hw/display/virtio-gpu-virgl.c
+++ b/hw/display/virtio-gpu-virgl.c
@@ -887,6 +887,10 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
     }
 #endif
 
+#ifdef VIRGL_RENDERER_VENUS
+    flags |= VIRGL_RENDERER_VENUS;
+#endif
+
     ret = virgl_renderer_init(g, flags, &virtio_gpu_3d_cbs);
     if (ret != 0) {
         error_report("virgl could not be initialized: %d", ret);
diff --git a/meson.build b/meson.build
index f7b744ab82..e4004d05b1 100644
--- a/meson.build
+++ b/meson.build
@@ -1076,6 +1076,11 @@ if not get_option('virglrenderer').auto() or have_system or have_vhost_user_gpu
                        cc.has_function('virgl_renderer_resource_create_blob',
                                        prefix: '#include <virglrenderer.h>',
                                        dependencies: virgl))
+  if virgl.version().version_compare('>= 0.9.0') and virgl.version().version_compare('< 1.0.0')
+    message('Enabling virglrenderer unstable APIs')
+    virgl = declare_dependency(compile_args: '-DVIRGL_RENDERER_UNSTABLE_APIS',
+                               dependencies: virgl)
+  endif
 endif
 blkio = not_found
 if not get_option('blkio').auto() or have_block
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:18:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:18:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603058.939962 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6pl-0002FV-9v; Fri, 15 Sep 2023 11:18:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603058.939962; Fri, 15 Sep 2023 11:18:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6pl-0002FO-65; Fri, 15 Sep 2023 11:18:01 +0000
Received: by outflank-mailman (input) for mailman id 603058;
 Fri, 15 Sep 2023 11:17:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6lI-0003Cy-RT
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:13:24 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20618.outbound.protection.outlook.com
 [2a01:111:f400:7e89::618])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e130b61b-53b8-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 13:13:22 +0200 (CEST)
Received: from DM6PR05CA0048.namprd05.prod.outlook.com (2603:10b6:5:335::17)
 by IA1PR12MB6042.namprd12.prod.outlook.com (2603:10b6:208:3d6::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Fri, 15 Sep
 2023 11:13:18 +0000
Received: from DS1PEPF00017098.namprd05.prod.outlook.com
 (2603:10b6:5:335:cafe::3) by DM6PR05CA0048.outlook.office365.com
 (2603:10b6:5:335::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 11:13:17 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017098.mail.protection.outlook.com (10.167.18.102) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Fri, 15 Sep 2023 11:13:17 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:13:11 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e130b61b-53b8-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bZNfr4BVueIh4PHR7NbCStSYi9aAXrPneTc/MdrAuxVhJj6MYxtFJ/VZZ62UyqaZJGMMd7ZHvoU6TDZlbOqXbL8k1p9NZ0UjpSc08x2EJdSY4QMT0P1hJSJRqRYFv18/sOuD8gGse+39hYhYQPwNvgxq3o5hzBATl6IzU0B8bBg4amEEfoOkz2yUEGe0sM8GlDrJLXgAiZQRWBg4owzNFeJ928jZYsF4OflXl1K/+6br0vqnmWit2F1b0n5I8AXRV0Oc+l+kTejl3sajQH5sIP3QMUDfPyGUB1/TKT+gfJHr/wl9VXqUuTCpIx5C7oH+BQfFjmkiHJSnFaR1uRHLBQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5A+n0tg9lfupiYAG7f+bqV/V6wXcZMOvvXZrjYMgY6c=;
 b=HgxDr1aL1wes3t9S1u4UEAwgEnhXlLXm/A69ir6mzOD0+AiGljph6I/hXw6CuPb9OW1GMgpYx3lbqLYMud/UkQ+HnGDsuKFZNcchVznP9HdDGFMdq6Dus64KJdk+CLu3GvBByVXDkVLm5VxBOZhR6yU0VII5Vmf+g/1eQ1CXs0apvoSJxcP3i1mn+4ukqm2qPeJonqSCWubfykwzW/khd043sAcxG161oJ7lCYmNrgklUT3QkluO8GmVmlAaHAb5abmPiXPmPkqGonGKqpoSpCig/Mb/mpWgWq37rzHtap5jVX8NKcVu0DkQKUwrJFe0l9bVxj6JayLOGHFDzy5aMQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5A+n0tg9lfupiYAG7f+bqV/V6wXcZMOvvXZrjYMgY6c=;
 b=UZJbDQRUgvoT3Y1XPYFD1AZyFeCIFZqBdMCAqTxP/MkP+iPutaGUGccIVwm29laJtBAqn5WI7EZXSARTdNQtH2q2MrkcVMwxohsVxjMTdXuEBzDHrAXccUfVlfqtC1fn1ULwztm9RgSOYVHOj0zCckPAA4uF3n7wxHa//HhZokA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Antonio Caggiano
	<antonio.caggiano@collabora.com>, Huang Rui <ray.huang@amd.com>
Subject: [QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands
Date: Fri, 15 Sep 2023 19:11:26 +0800
Message-ID: <20230915111130.24064-10-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017098:EE_|IA1PR12MB6042:EE_
X-MS-Office365-Filtering-Correlation-Id: 0300cffa-5fff-4d28-2bae-08dbb5dcc359
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	v7qdDHk5L27yREFo/7Dk/agbSv41FuHTXBO4Bc0YctxexUJ6DL/lUo8Mom9czBoQDOIBORzUXAnNDmETHqepZsMRwtiFu3/fJwwGOoPW/kgkO7NsUPi2D9iuelRtDhFjCfnx70AZ0zVPGYZRoPEFcKtXONXQ1/MWHIRFDQQSpzon4fiiDiiyZzUEq9cwaXFbd6u1tX9UpEiB323WMmltADNm/dH8w2peeanCLdVNl1NTjN5ccopmkyY71u9dBbtrDMVcvjtcpoHAmdPuSWxxgHmZVMHo21YhzsOwyZTONRvqSSZK8GGkhEsXSDlCvs+rQjjqCanMu8abefM7JPLGkTKMpXKiaAJV7vc9BjyVnfc0mPxSkegIH0NRUeNd5qEYzuOsxsBD4GdimcHMkFAvbrqP0avjvFmiFMbYPoD46wG34qsJjjSALOkR2W4tgohqEi8R3pufzzZ3elMDT/z+khqQ3lJZWcvFRE/BmCoK+3TuqRALYOTI231HzutUJBNWqglLguCCp74dliRBzJzpb4aa0kfAtSXFC5eQyoizSlZj/nZK4RRYI1V8SaWGKaoVqbj8hXVhNeyCiD+c5dvUaVLVV4dI/HgINDI7PlVwpe4FsdfbsC5biVdI8jk9w/fsoA2XUjjqcuGX/DvG4uTjfQrnStYbtgVNwAc3wtb4vPu4u878OLonoCWytBlS/s+dyl1BqZH9U9v6DMY77m1eMh/EVSFEg9nU+ljd6yLQQzxAiwk2Xjnbm6rIepCz+YL5qchf2DCdvi3h6y70CZriSYMS8Zp3gxgrpruJ2tlTFIo=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(136003)(376002)(396003)(39860400002)(451199024)(186009)(1800799009)(82310400011)(46966006)(40470700004)(36840700001)(40480700001)(83380400001)(2906002)(5660300002)(36756003)(7416002)(8936002)(86362001)(82740400003)(356005)(4326008)(40460700003)(921005)(8676002)(81166007)(316002)(6666004)(54906003)(47076005)(41300700001)(36860700001)(1076003)(70586007)(110136005)(16526019)(7696005)(26005)(70206006)(478600001)(426003)(2616005)(336012)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:13:17.7109
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0300cffa-5fff-4d28-2bae-08dbb5dcc359
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017098.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6042

From: Antonio Caggiano <antonio.caggiano@collabora.com>

Support BLOB resources creation, mapping and unmapping by calling the
new stable virglrenderer 0.10 interface. Only enabled when available and
via the blob config. E.g. -device virtio-vga-gl,blob=true

Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---

V4 -> V5:
    - Use memory_region_init_ram_ptr() instead of
      memory_region_init_ram_device_ptr() (Akihiko)

 hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
 hw/display/virtio-gpu.c        |   4 +-
 include/hw/virtio/virtio-gpu.h |   5 +
 meson.build                    |   4 +
 4 files changed, 225 insertions(+), 1 deletion(-)

diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
index 312953ec16..563a6f2f58 100644
--- a/hw/display/virtio-gpu-virgl.c
+++ b/hw/display/virtio-gpu-virgl.c
@@ -17,6 +17,7 @@
 #include "trace.h"
 #include "hw/virtio/virtio.h"
 #include "hw/virtio/virtio-gpu.h"
+#include "hw/virtio/virtio-gpu-bswap.h"
 
 #include "ui/egl-helpers.h"
 
@@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
     virgl_renderer_resource_create(&args, NULL, 0);
 }
 
+static void virgl_resource_destroy(VirtIOGPU *g,
+                                   struct virtio_gpu_simple_resource *res)
+{
+    if (!res)
+        return;
+
+    QTAILQ_REMOVE(&g->reslist, res, next);
+
+    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
+    g_free(res->addrs);
+
+    g_free(res);
+}
+
 static void virgl_cmd_resource_unref(VirtIOGPU *g,
                                      struct virtio_gpu_ctrl_command *cmd)
 {
+    struct virtio_gpu_simple_resource *res;
     struct virtio_gpu_resource_unref unref;
     struct iovec *res_iovs = NULL;
     int num_iovs = 0;
@@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
     VIRTIO_GPU_FILL_CMD(unref);
     trace_virtio_gpu_cmd_res_unref(unref.resource_id);
 
+    res = virtio_gpu_find_resource(g, unref.resource_id);
+
     virgl_renderer_resource_detach_iov(unref.resource_id,
                                        &res_iovs,
                                        &num_iovs);
     if (res_iovs != NULL && num_iovs != 0) {
         virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
+        if (res) {
+            res->iov = NULL;
+            res->iov_cnt = 0;
+        }
     }
+
     virgl_renderer_resource_unref(unref.resource_id);
+
+    virgl_resource_destroy(g, res);
 }
 
 static void virgl_cmd_context_create(VirtIOGPU *g,
@@ -426,6 +451,183 @@ static void virgl_cmd_get_capset(VirtIOGPU *g,
     g_free(resp);
 }
 
+#ifdef HAVE_VIRGL_RESOURCE_BLOB
+
+static void virgl_cmd_resource_create_blob(VirtIOGPU *g,
+                                           struct virtio_gpu_ctrl_command *cmd)
+{
+    struct virtio_gpu_simple_resource *res;
+    struct virtio_gpu_resource_create_blob cblob;
+    struct virgl_renderer_resource_create_blob_args virgl_args = { 0 };
+    int ret;
+
+    VIRTIO_GPU_FILL_CMD(cblob);
+    virtio_gpu_create_blob_bswap(&cblob);
+    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
+
+    if (cblob.resource_id == 0) {
+        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
+                      __func__);
+        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
+        return;
+    }
+
+    res = virtio_gpu_find_resource(g, cblob.resource_id);
+    if (res) {
+        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already exists %d\n",
+                      __func__, cblob.resource_id);
+        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
+        return;
+    }
+
+    res = g_new0(struct virtio_gpu_simple_resource, 1);
+    if (!res) {
+        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
+        return;
+    }
+
+    res->resource_id = cblob.resource_id;
+    res->blob_size = cblob.size;
+
+    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
+        ret = virtio_gpu_create_mapping_iov(g, cblob.nr_entries, sizeof(cblob),
+                                            cmd, &res->addrs, &res->iov,
+                                            &res->iov_cnt);
+        if (!ret) {
+            g_free(res);
+            cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
+            return;
+        }
+    }
+
+    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
+
+    virgl_args.res_handle = cblob.resource_id;
+    virgl_args.ctx_id = cblob.hdr.ctx_id;
+    virgl_args.blob_mem = cblob.blob_mem;
+    virgl_args.blob_id = cblob.blob_id;
+    virgl_args.blob_flags = cblob.blob_flags;
+    virgl_args.size = cblob.size;
+    virgl_args.iovecs = res->iov;
+    virgl_args.num_iovs = res->iov_cnt;
+
+    ret = virgl_renderer_resource_create_blob(&virgl_args);
+    if (ret) {
+        virgl_resource_destroy(g, res);
+        qemu_log_mask(LOG_GUEST_ERROR, "%s: virgl blob create error: %s\n",
+                      __func__, strerror(-ret));
+        cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
+    }
+}
+
+static void virgl_cmd_resource_map_blob(VirtIOGPU *g,
+                                        struct virtio_gpu_ctrl_command *cmd)
+{
+    struct virtio_gpu_simple_resource *res;
+    struct virtio_gpu_resource_map_blob mblob;
+    int ret;
+    void *data;
+    uint64_t size;
+    struct virtio_gpu_resp_map_info resp;
+    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
+
+    VIRTIO_GPU_FILL_CMD(mblob);
+    virtio_gpu_map_blob_bswap(&mblob);
+
+    if (mblob.resource_id == 0) {
+        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
+                      __func__);
+        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
+        return;
+    }
+
+    res = virtio_gpu_find_resource(g, mblob.resource_id);
+    if (!res) {
+        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
+                      __func__, mblob.resource_id);
+        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
+        return;
+    }
+    if (res->region) {
+        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already mapped %d\n",
+		      __func__, mblob.resource_id);
+        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
+        return;
+    }
+
+    ret = virgl_renderer_resource_map(res->resource_id, &data, &size);
+    if (ret) {
+        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource map error: %s\n",
+                      __func__, strerror(-ret));
+        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
+        return;
+    }
+
+    res->region = g_new0(MemoryRegion, 1);
+    if (!res->region) {
+        virgl_renderer_resource_unmap(res->resource_id);
+        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
+        return;
+    }
+    memory_region_init_ram_ptr(res->region, OBJECT(g), NULL, size, data);
+    OBJECT(res->region)->free = g_free;
+    memory_region_add_subregion(&b->hostmem, mblob.offset, res->region);
+    memory_region_set_enabled(res->region, true);
+
+    memset(&resp, 0, sizeof(resp));
+    resp.hdr.type = VIRTIO_GPU_RESP_OK_MAP_INFO;
+    virgl_renderer_resource_get_map_info(mblob.resource_id, &resp.map_info);
+    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
+}
+
+static int virtio_gpu_virgl_resource_unmap(VirtIOGPU *g,
+                                           struct virtio_gpu_simple_resource
+                                           *res)
+{
+    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
+
+    if (!res) {
+        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already unmapped %d\n",
+                      __func__, res->resource_id);
+        return VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
+    }
+
+    memory_region_set_enabled(res->region, false);
+    memory_region_del_subregion(&b->hostmem, res->region);
+    object_unparent(OBJECT(res->region));
+    res->region = NULL;
+
+    return virgl_renderer_resource_unmap(res->resource_id);
+}
+
+static void virgl_cmd_resource_unmap_blob(VirtIOGPU *g,
+                                          struct virtio_gpu_ctrl_command *cmd)
+{
+    struct virtio_gpu_simple_resource *res;
+    struct virtio_gpu_resource_unmap_blob ublob;
+    VIRTIO_GPU_FILL_CMD(ublob);
+    virtio_gpu_unmap_blob_bswap(&ublob);
+
+    if (ublob.resource_id == 0) {
+        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
+                      __func__);
+        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
+        return;
+    }
+
+    res = virtio_gpu_find_resource(g, ublob.resource_id);
+    if (!res) {
+        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
+                      __func__, ublob.resource_id);
+        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
+        return;
+    }
+
+    virtio_gpu_virgl_resource_unmap(g, res);
+}
+
+#endif /* HAVE_VIRGL_RESOURCE_BLOB */
+
 void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
                                       struct virtio_gpu_ctrl_command *cmd)
 {
@@ -492,6 +694,17 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
     case VIRTIO_GPU_CMD_GET_EDID:
         virtio_gpu_get_edid(g, cmd);
         break;
+#ifdef HAVE_VIRGL_RESOURCE_BLOB
+    case VIRTIO_GPU_CMD_RESOURCE_CREATE_BLOB:
+        virgl_cmd_resource_create_blob(g, cmd);
+        break;
+    case VIRTIO_GPU_CMD_RESOURCE_MAP_BLOB:
+        virgl_cmd_resource_map_blob(g, cmd);
+        break;
+    case VIRTIO_GPU_CMD_RESOURCE_UNMAP_BLOB:
+        virgl_cmd_resource_unmap_blob(g, cmd);
+        break;
+#endif /* HAVE_VIRGL_RESOURCE_BLOB */
     default:
         cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
         break;
diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
index 5b7a7eab4f..cc4c1f81bb 100644
--- a/hw/display/virtio-gpu.c
+++ b/hw/display/virtio-gpu.c
@@ -1367,10 +1367,12 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp)
             return;
         }
 
+#ifndef HAVE_VIRGL_RESOURCE_BLOB
         if (virtio_gpu_virgl_enabled(g->parent_obj.conf)) {
-            error_setg(errp, "blobs and virgl are not compatible (yet)");
+            error_setg(errp, "Linked virglrenderer does not support blob resources");
             return;
         }
+#endif
     }
 
     if (!virtio_gpu_base_device_realize(qdev,
diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h
index 55973e112f..b9adc28071 100644
--- a/include/hw/virtio/virtio-gpu.h
+++ b/include/hw/virtio/virtio-gpu.h
@@ -58,6 +58,11 @@ struct virtio_gpu_simple_resource {
     int dmabuf_fd;
     uint8_t *remapped;
 
+#ifdef HAVE_VIRGL_RESOURCE_BLOB
+    /* only blob resource needs this region to be mapped as guest mmio */
+    MemoryRegion *region;
+#endif
+
     QTAILQ_ENTRY(virtio_gpu_simple_resource) next;
 };
 
diff --git a/meson.build b/meson.build
index ff20d3c249..f7b744ab82 100644
--- a/meson.build
+++ b/meson.build
@@ -1072,6 +1072,10 @@ if not get_option('virglrenderer').auto() or have_system or have_vhost_user_gpu
                        cc.has_function('virgl_renderer_context_create_with_flags',
                                        prefix: '#include <virglrenderer.h>',
                                        dependencies: virgl))
+  config_host_data.set('HAVE_VIRGL_RESOURCE_BLOB',
+                       cc.has_function('virgl_renderer_resource_create_blob',
+                                       prefix: '#include <virglrenderer.h>',
+                                       dependencies: virgl))
 endif
 blkio = not_found
 if not get_option('blkio').auto() or have_block
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:18:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:18:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603059.939972 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6px-0002jK-Ln; Fri, 15 Sep 2023 11:18:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603059.939972; Fri, 15 Sep 2023 11:18:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6px-0002jD-Hs; Fri, 15 Sep 2023 11:18:13 +0000
Received: by outflank-mailman (input) for mailman id 603059;
 Fri, 15 Sep 2023 11:18:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6lC-0002xb-LU
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:13:18 +0000
Received: from NAM04-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam04on2060d.outbound.protection.outlook.com
 [2a01:111:f400:7e8d::60d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id dec8bfbd-53b8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 13:13:18 +0200 (CEST)
Received: from DS0PR17CA0012.namprd17.prod.outlook.com (2603:10b6:8:191::20)
 by CH3PR12MB8658.namprd12.prod.outlook.com (2603:10b6:610:175::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Fri, 15 Sep
 2023 11:13:11 +0000
Received: from DS1PEPF0001709D.namprd05.prod.outlook.com
 (2603:10b6:8:191:cafe::c4) by DS0PR17CA0012.outlook.office365.com
 (2603:10b6:8:191::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 11:13:11 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF0001709D.mail.protection.outlook.com (10.167.18.107) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Fri, 15 Sep 2023 11:13:11 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:13:05 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dec8bfbd-53b8-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HsCYbgQTcoiBN2BsYnmyfE0oz8lDNMxWDyqr+JGFri0I/t92Ecjz2kxVGXvOHZnJ2KckxZ5DhD0Eq6d5eQ5FQ5Dv5h/bZqFbqpF1WN9N/UnR/jwc7RA4KDaI1CZAzJHG4CFb+D9es6dP8Jo7muuc1/uC3iKhNsj84JJe0z2RjeTNXmIUhnxHW8GRTi36WtRUz3v5VdYKK3DsS9JxblRVOhVurn7eACAjT17MxNLl7zsrIrru2fyDQdTXmW8CjQRZdJJuwTlKurR7JARstq6NcGA/Shi7mdhqPIgP0jpuwpcgwugb1QxXOtIzYboGVRp9hP+FrFdzeAffwDCiNna+Fg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kH4BVXS2a7kr2sDF/vIFP0W3LlCas+dPR/KYhpKBEIU=;
 b=TxsF1RWKdtrMlLjVGPCmFl9MncO2pVhdthR60I8IvwiIukYwaCpF0zLxiQxEW9DwzoK5oZHWrXdoeXKwhF5BiC5iEPsTvgii/XV3aey/VSwAP+80pLI73aW4RdV5ldOiO+HV0WF/hhDOMQkKeww1f8GJOmRv83JaZs4Qx5GkhS7vKNcG2o/xeBSawLjJXvDOueU/3L/4zByZVn1SkJjSbRRR9BHBoNF1/4HNoSvxf7Di49p3nh+X/z4FdwCw0be/zQPgJ4VUbosmZ0ALiURuYH0KC3RMZzJAU6T1209dXBn6Gvs9qhc8yrUlk5MrdtC+InrZJNRaPfbBP5AP+v6UQQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kH4BVXS2a7kr2sDF/vIFP0W3LlCas+dPR/KYhpKBEIU=;
 b=t+HaJqnWoZpVZZVfGJBhnX6D11j2nSXlceS2S4BehX0uBcg9xaFYMCJrubx7Wk7G5Vo0RxuQBUTLV6lg7Tbn9/qLuU6FJuvZxyp+Akp309paLTReJGAIZlc4rPhHAXGtp+9hUfHq9K9WmL30zeI8GnCSLvG+XdNqIASvRHqcKpE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Antonio Caggiano
	<antonio.caggiano@collabora.com>, Huang Rui <ray.huang@amd.com>
Subject: [QEMU PATCH v5 08/13] virtio-gpu: Don't require udmabuf when blobs and virgl are enabled
Date: Fri, 15 Sep 2023 19:11:25 +0800
Message-ID: <20230915111130.24064-9-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF0001709D:EE_|CH3PR12MB8658:EE_
X-MS-Office365-Filtering-Correlation-Id: 8be00e1c-b91c-4655-1b7f-08dbb5dcbf9e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rQ668DS+d2z/m8khygL8WzMnGRx/euIBph+tfKQbCIIF0JRjzq1ITu4MWToO2K8yA3Z6URhJnvvt+cCNJSa/ZhAkYX5aYK6367h/+jZ5d31xs2ulgdoNkaON7jpxB5iPece3QX6AYjsYqbx9ted6+VAF4zwS74HHUdXB8nQHvv9Qctds7of0PFzIPfpYFhOsQ7B44TZsKxkGd8IgyUwOvZtUZC196i8yg1Zw5y5+sRq9Glx8DBwRADMoynZR4AvCubH2Gc2UV8ea7lSCoJBvaab6ubsKGyVJb+8/VH9d7qaXwMFhynWQuEQr7jasz4KFY4Kj7zTTO4QgHtGyjtJcLq0/AtdbdQDStXs3zxPXWE/Bp2TwqbuuhkBMuIKH8MfCDdYSvdbO+yDCXwv8E/5W8ngJpiXUzPMbraVuspXOpcLxhzgBYHZ5/iQN6qRGqzkHJxmNb2Nv+TwhaomeqzQn7RRloCTYXeV9ojw0yv0KPzJAYf8XnqCtI8PAaWeeygrPD4YaePorHF7Xm72C66TvCa3pyCKixLBD36K5IjM0ke49BflWIt/bv36x9ChvmWCO2BCCL0oRnHAVuWTRQM1rds8ZS8ivQ55gVogBNn/UplJG1A/SOGkkQ6ZiyItzdhftkBK5tLVcz8B9/+Zrcn30TTtL6PLhGmNHbh71oDw5tV9twMQNmYJz0mUo6VftudtAUzBzwnIw+4Ip0TSoT3yX1k2KoOSRay+9YZsVqcXy1N6ft/aMi5WYFoXPhePNDe45jv4RjzvHne/055/MSRb46CBk5rSuFQ3+snaF+TwzuEM=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(39860400002)(376002)(136003)(451199024)(1800799009)(186009)(82310400011)(36840700001)(46966006)(40470700004)(8936002)(4326008)(8676002)(16526019)(26005)(83380400001)(5660300002)(1076003)(2616005)(336012)(47076005)(40480700001)(36860700001)(426003)(2906002)(40460700003)(7416002)(7696005)(41300700001)(70206006)(6666004)(70586007)(54906003)(478600001)(316002)(921005)(86362001)(356005)(110136005)(82740400003)(81166007)(36756003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:13:11.4674
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8be00e1c-b91c-4655-1b7f-08dbb5dcbf9e
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF0001709D.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8658

From: Dmitry Osipenko <dmitry.osipenko@collabora.com>

The udmabuf usage is mandatory when virgl is disabled and blobs feature
enabled in the Qemu machine configuration. If virgl and blobs are enabled,
then udmabuf requirement is optional. Since udmabuf isn't widely supported
by a popular Linux distros today, let's relax the udmabuf requirement for
blobs=on,virgl=on. Now, a full-featured virtio-gpu acceleration is
available to Qemu users without a need to have udmabuf available in the
system.

Reviewed-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---
 hw/display/virtio-gpu.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
index a66cbd9930..5b7a7eab4f 100644
--- a/hw/display/virtio-gpu.c
+++ b/hw/display/virtio-gpu.c
@@ -1361,7 +1361,8 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp)
     VirtIOGPU *g = VIRTIO_GPU(qdev);
 
     if (virtio_gpu_blob_enabled(g->parent_obj.conf)) {
-        if (!virtio_gpu_have_udmabuf()) {
+        if (!virtio_gpu_virgl_enabled(g->parent_obj.conf) &&
+            !virtio_gpu_have_udmabuf()) {
             error_setg(errp, "cannot enable blob resources without udmabuf");
             return;
         }
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:18:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:18:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603060.939977 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6px-0002mU-Uf; Fri, 15 Sep 2023 11:18:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603060.939977; Fri, 15 Sep 2023 11:18:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6px-0002lR-Ok; Fri, 15 Sep 2023 11:18:13 +0000
Received: by outflank-mailman (input) for mailman id 603060;
 Fri, 15 Sep 2023 11:18:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6lf-0002xb-ER
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:13:47 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on2060d.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::60d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id efbfcd7b-53b8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 13:13:46 +0200 (CEST)
Received: from DM6PR02CA0047.namprd02.prod.outlook.com (2603:10b6:5:177::24)
 by BL1PR12MB5827.namprd12.prod.outlook.com (2603:10b6:208:396::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Fri, 15 Sep
 2023 11:13:42 +0000
Received: from DS1PEPF00017099.namprd05.prod.outlook.com
 (2603:10b6:5:177:cafe::96) by DM6PR02CA0047.outlook.office365.com
 (2603:10b6:5:177::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 11:13:42 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017099.mail.protection.outlook.com (10.167.18.103) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Fri, 15 Sep 2023 11:13:42 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:13:36 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: efbfcd7b-53b8-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CvoWYV7bTNHPp3a/nfPCl3fdwl2aTAIRxRBg/fIxw+IMkxuzd4zNp6gtuVIbTRl3LshJ1oYRsLCHLFG5QVAjK3xrJyU05rOgUWMOHYZmHBBSKowCuXUTcAKC8MztvSxQOw5W5bSbfV8DCw/CHCB94HPnt45BLkDY+NmURnrhqf/8USyH7Tu4dy9tCY7Sc7rQmmktw3gRzRfPrwPLCIlSMMPgP+WeUTsqcHm6zBy4ll9y1WDpOz6Ak7DedPLl9Nzav5c34SIY4/Naidpw0dRb9/auJg9yqKwIJKB/g+kh9+XI3A5Ea8+lhtzPtjWbXsWTrucD6Qdmvjp5jY6ZBCekxQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=doHo9C4Pm4Ui7n/4etAaiF8HheLBr5YOGc5k2SvIw1c=;
 b=b7t33fBWp9FiP5OgA1G5gyPJbvZ8TdDWO2CyOGaCgJm0hw6vt8B2pXcen4NeWXRBxeFIX1Aqzjp7HGC94m2EkmXHVhEpMIPLdv663ncfhdfg+ZYcfSEeWN2KU8sbaS39a/h4vg4PoR6UtnJh5drwi0F/voNt9IWCFZ8biWa7kqQHH00hsb/0c/da+zGq4U0viyx8+edKj0ZIgooJYtCraRjqAhTCcwBuZTKdM4C2pQZ0TIKWdrWpEzFzj1LN4rvPGTDc/sLyFI/Zed8dy+OGv94FzwQCek7m8ql1r1pVQXOtJdis7kHz70/f7s8u6ZPfgezPhPd1BV4S3upvdfC1Dw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=doHo9C4Pm4Ui7n/4etAaiF8HheLBr5YOGc5k2SvIw1c=;
 b=D3PWJi7T/AJUYP96Gj1muvD/6xCuUnj2MEnB4x8OUf7WydYDbr/KN1V3b490Bxx36YJau32N4NYLRYzOWnXpCCYsmcGPIyK4y5648+meZI84baq+PFP9RxVBt5TIUCIDBC/G5o/VYWMjE/O53ChEJokWpZ22vD6brBY/K5LPbvg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Huang Rui <ray.huang@amd.com>
Subject: [QEMU PATCH v5 13/13] virtio-gpu: Enable virglrenderer render server flag for venus
Date: Fri, 15 Sep 2023 19:11:30 +0800
Message-ID: <20230915111130.24064-14-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017099:EE_|BL1PR12MB5827:EE_
X-MS-Office365-Filtering-Correlation-Id: 9c85e6bb-27ab-488e-994d-08dbb5dcd1de
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/IjleQEDOaKMtBI3MXvY/fI4YUpE7kXeauzblPqd7AZnPMIjJM+QL6aC57xcn6AQZF0SlUkyvEZrhGDKGQUmTdDS6zsZA7hUwxKvhTlntp+ZC74S9GpSbuXMmihfGft2m3QkQZN5Yh+dJDgPRcjwasfg+Q26i4754kTweyM6EtfabuwpamwPNNj3lVoe8Zof32UzQ5DMpjZBjf3Xd0r7wvjferfPLiusx8iOdPQgxtkwvEAyFRZWhUebIAcjmF9V62707lXBIL9JPdtLSVZUfvJYbtVRsGMYQ9pZ0f5fchJCM+ACFVOLIHZbd5v9c+4TsaFaLqldsy+5CE1EDgSeEAZJEDU/whDfh6ILuPmwXYG3yM9FBifpIsgrhSu0L+ozRvdWdsAeTIv/+xA7r55mJZyQebttDzEu/Umre09XTf8F5nnuWQ07aymHDvmmObTR0x1FTOKv8h6XuURYMLgYh6FhMoZGKk+t9Fm1Tu3BtBAPfQWREZsKvS/acgH+YVcHTfzv4MP5pVQOP8MncUZrq+Nv8GRSeG3ytY+hr7nqISaykeorng/cR1lnkcuXCj2GQcBOaYyYjrBWKA1DbpQSvqSMANEZTzAD2/9lq380F8sQTCbzy4D+zC9JtTQ6U8cjRNAXQSArOKlgPXDC0vcJnRzEN6+V+CwqX/9GAOUfqwB8n3C3a59jRKQDE63/4y9698dYNEP826MRUq9CID9L4W7EdCyWhAqAgCwoXieCmetaQM4N9v/GBUGdbmSeOjAQKHHUPg9J3Ddj1nuSdPqZRsHpL65rS5/nEOEip1xkDQE=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(39860400002)(376002)(396003)(136003)(82310400011)(1800799009)(451199024)(186009)(36840700001)(40470700004)(46966006)(426003)(1076003)(2616005)(336012)(40480700001)(26005)(83380400001)(16526019)(40460700003)(82740400003)(86362001)(110136005)(7696005)(70586007)(921005)(478600001)(356005)(81166007)(8676002)(4744005)(7416002)(2906002)(8936002)(36756003)(5660300002)(4326008)(36860700001)(41300700001)(70206006)(54906003)(6666004)(316002)(47076005)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:13:42.0734
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9c85e6bb-27ab-488e-994d-08dbb5dcd1de
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017099.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR12MB5827

Venus in virglrenderer has required render server support.

Signed-off-by: Huang Rui <ray.huang@amd.com>
---
 hw/display/virtio-gpu-virgl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
index 39c04d730c..65ffce85a8 100644
--- a/hw/display/virtio-gpu-virgl.c
+++ b/hw/display/virtio-gpu-virgl.c
@@ -888,7 +888,7 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
 #endif
 
 #ifdef VIRGL_RENDERER_VENUS
-    flags |= VIRGL_RENDERER_VENUS;
+    flags |= VIRGL_RENDERER_VENUS | VIRGL_RENDERER_RENDER_SERVER;
 #endif
 
     ret = virgl_renderer_init(g, flags, &virtio_gpu_3d_cbs);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:18:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:18:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603063.939991 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6q7-0003SR-4V; Fri, 15 Sep 2023 11:18:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603063.939991; Fri, 15 Sep 2023 11:18:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh6q7-0003SK-1c; Fri, 15 Sep 2023 11:18:23 +0000
Received: by outflank-mailman (input) for mailman id 603063;
 Fri, 15 Sep 2023 11:18:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=QGil=E7=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qh6lS-0002xb-KP
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:13:34 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20601.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e857c569-53b8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 13:13:34 +0200 (CEST)
Received: from DM6PR10CA0001.namprd10.prod.outlook.com (2603:10b6:5:60::14) by
 DM4PR12MB6397.namprd12.prod.outlook.com (2603:10b6:8:b4::10) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6745.34; Fri, 15 Sep 2023 11:13:30 +0000
Received: from DS1PEPF0001709A.namprd05.prod.outlook.com
 (2603:10b6:5:60:cafe::c8) by DM6PR10CA0001.outlook.office365.com
 (2603:10b6:5:60::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 11:13:30 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF0001709A.mail.protection.outlook.com (10.167.18.104) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Fri, 15 Sep 2023 11:13:30 +0000
Received: from hr-test6.amd.com (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 15 Sep
 2023 06:13:23 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e857c569-53b8-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Pigl4i3gyS+HEMvXRXxFqo1H8pQQJ6XH2ugszUc1Vi2mzt2KBhADo4DrAO1oUL8YroDZjSXy0gXPHFVj8Dz8kDAZGRjsiOVrBwVC2KmgeBK1dh8TOJDe/PW/M9s0EalwhnS1lrYoNSGToOWU81CXJG4qRbdlgomtsBsxLDNZ9CY9SONXyBxtiafB+KJSpdEg5b+fZE1nCYOATXY1ZZ1N8OtIPHUUlsogmW2mIyEVYRDoAerl+rikOQNkF4MVlNMUQA78TfTlQyh84r7f7pCbIlKq+G2r7Qcaq/yn8I/PUpAwUhgn/Th9Rjp90S6BXaa+H3mOfeGdtiOH8W/jhcuuMQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mSkyHF6vxVVhxr6BksCITEGigkoq1JtKA4LzqMq3d1Q=;
 b=mEo4B7VbkO5F6mJ27RxZ75yHyXlbUATmQujL+GV03gsN3YS5SfNcIXBO00i+Uzs9JCTP2/lg+5DbOJz9PUYhZqEpRql+XW1AhcNQ8gRpUATQutqDN9Q19aZ41ndwyd57eB/Khm3+9ujnColeR7yIYsOXeDDle7OZ9Lz/Ukz6IimKTc4olGuN8A/JYgftbEfBzHQ8I4NFogmpYhSeYXK4U1b+UAFWDk4PqMRkK/z9+pr3SzwRsG1CBAXlViAKllo2kqeYm81PyRddueJ0csjAekvja/sFgyYaS0QBS6UFCwXcEXwJcuZQg4LxXj7DvZNy855SFy6PQbityeUxiQc2YQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=redhat.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mSkyHF6vxVVhxr6BksCITEGigkoq1JtKA4LzqMq3d1Q=;
 b=Mv/l/Lq5sV4kJmLGddBoaRzGDC6o6S4ClRy7qLLCki2XkZrCrGRXEgLBwlLqoM5GMT7SMe83po0MqT0Yby15RqWjtjxEWHTXI60ZeKmLL6WbsNSNV4cL0lZ3TVn4g3E0Ani+LA+eV6nJ8/eWpl3Dc+8CnsQMKoElhIxhGLMeo/M=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Huang Rui <ray.huang@amd.com>
To: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>,
	"Antonio Caggiano" <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert"
	<dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, "Dmitry
 Osipenko" <dmitry.osipenko@collabora.com>, =?UTF-8?q?Alex=20Benn=C3=A9e?=
	<alex.bennee@linaro.org>, <qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?q?Christian=20K=C3=B6nig?=
	<christian.koenig@amd.com>, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, "Honglei
 Huang" <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>, "Chen
 Jiqian" <Jiqian.Chen@amd.com>, Antonio Caggiano
	<antonio.caggiano@collabora.com>, Huang Rui <ray.huang@amd.com>
Subject: [QEMU PATCH v5 11/13] virtio-gpu: Support Venus capset
Date: Fri, 15 Sep 2023 19:11:28 +0800
Message-ID: <20230915111130.24064-12-ray.huang@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230915111130.24064-1-ray.huang@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF0001709A:EE_|DM4PR12MB6397:EE_
X-MS-Office365-Filtering-Correlation-Id: 5039c86c-aa90-42dc-6932-08dbb5dccad2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Np+ABieQKRZO+JP9XsbX9lGtb0zKljyWnPn2FzRMyuJdfXU0eBaiukM5QolIazTrD84oTld5MzeUpPkFz/XU0/zNKkqsh4CzFK4f5Im1pD0qzM2PBJM5WfXZ0svTga/1cyLfvPuk3HfwUTdvw8JZ6lq5MyQorp9CCcHyvtPMhzadgKOkEGHtBEouX+wLNJrfiiMpQ+5Y1qevxJ3Yvsfmzrjh1kLmYf/Q3Nd9VnLFfKUhOF5n1pZi6AKTaAvgOkMuDoqdEmxaRVkhHq84FbB+OyWxXGN7x3zQ3F2ArsNlkTtXBNyumsOceQyPRO/YBiycULgm4xTkJerHFlJ8wKWmj2L5K3x/PZOJryI8SNwAIDCAnHJBHdUY99lNRkQ/kxrQvpysJOvvOAv2M8UvzueEsaTSGgGGQWbu78+Fm2w40vjTm7djDHLIdkLl2pp2cQKNhaj+9WeVi8eF3Wdj8x7CJkXY/4hoC5pzegRZUciB3nGz7ZWVTREHr6ysewCGLCTLnjawl3GtgFtgnWq2t7Ek3k8unlfa/dket8kJQK8iATy4QVNqM+z+wFwwSB/p+RHDxyId/6N0abEKdfncadFB+8V4MWn7iQfUtq0nEVgUSqF3GhmE94qZ/Q5JDeUKLUoxfWvIijGZXd3iddVr+m7pvOiCR/c+yYxsJ4Yr+gU8xNZBCftqrGvIZ5TG58qYRmmeHfvQpFEVTM9J5v6HdNPhBEV4RNmMGWC4YmyQ3qq6V+vXnbzRG2kb3U12B4zqcVlTE3Dlq5gJxP935sLWTFJKkg==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(396003)(376002)(346002)(451199024)(1800799009)(186009)(82310400011)(46966006)(40470700004)(36840700001)(40460700003)(36756003)(86362001)(40480700001)(5660300002)(316002)(7696005)(26005)(966005)(70206006)(8676002)(426003)(70586007)(336012)(110136005)(2616005)(8936002)(54906003)(921005)(41300700001)(4326008)(2906002)(16526019)(47076005)(81166007)(36860700001)(478600001)(356005)(1076003)(82740400003)(83380400001)(7416002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 11:13:30.2495
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5039c86c-aa90-42dc-6932-08dbb5dccad2
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF0001709A.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6397

From: Antonio Caggiano <antonio.caggiano@collabora.com>

Add support for the Venus capset, which enables Vulkan support through
the Venus Vulkan driver for virtio-gpu.

Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---

V4 -> V5:
    - Send kernel patch to define VIRTIO_GPU_CAPSET_VENUS and will use
      another patch to sync up linux headers. (Akihiko)
    - https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd.com/

 hw/display/virtio-gpu-virgl.c | 21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
index 8a017dbeb4..7f95490e90 100644
--- a/hw/display/virtio-gpu-virgl.c
+++ b/hw/display/virtio-gpu-virgl.c
@@ -437,6 +437,11 @@ static void virgl_cmd_get_capset_info(VirtIOGPU *g,
         virgl_renderer_get_cap_set(resp.capset_id,
                                    &resp.capset_max_version,
                                    &resp.capset_max_size);
+    } else if (info.capset_index == 2) {
+        resp.capset_id = VIRTIO_GPU_CAPSET_VENUS;
+        virgl_renderer_get_cap_set(resp.capset_id,
+                                   &resp.capset_max_version,
+                                   &resp.capset_max_size);
     } else {
         resp.capset_max_version = 0;
         resp.capset_max_size = 0;
@@ -901,10 +906,18 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
 
 int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g)
 {
-    uint32_t capset2_max_ver, capset2_max_size;
+    uint32_t capset2_max_ver, capset2_max_size, num_capsets;
+    num_capsets = 1;
+
     virgl_renderer_get_cap_set(VIRTIO_GPU_CAPSET_VIRGL2,
-                              &capset2_max_ver,
-                              &capset2_max_size);
+                               &capset2_max_ver,
+                               &capset2_max_size);
+    num_capsets += capset2_max_ver ? 1 : 0;
+
+    virgl_renderer_get_cap_set(VIRTIO_GPU_CAPSET_VENUS,
+                               &capset2_max_ver,
+                               &capset2_max_size);
+    num_capsets += capset2_max_size ? 1 : 0;
 
-    return capset2_max_ver ? 2 : 1;
+    return num_capsets;
 }
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 11:56:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 11:56:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603102.940001 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh7RB-0001SU-4h; Fri, 15 Sep 2023 11:56:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603102.940001; Fri, 15 Sep 2023 11:56:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh7RB-0001SN-2D; Fri, 15 Sep 2023 11:56:41 +0000
Received: by outflank-mailman (input) for mailman id 603102;
 Fri, 15 Sep 2023 11:56:39 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Xr/F=E7=alien8.de=bp@srs-se1.protection.inumbo.net>)
 id 1qh7R8-0001Nd-Mh
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 11:56:39 +0000
Received: from mail.alien8.de (mail.alien8.de [65.109.113.108])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ecc133ba-53be-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 13:56:37 +0200 (CEST)
Received: from localhost (localhost.localdomain [127.0.0.1])
 by mail.alien8.de (SuperMail on ZX Spectrum 128k) with ESMTP id A47DC40E01A5; 
 Fri, 15 Sep 2023 11:56:36 +0000 (UTC)
Received: from mail.alien8.de ([127.0.0.1])
 by localhost (mail.alien8.de [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id MMcr_PbPERky; Fri, 15 Sep 2023 11:56:35 +0000 (UTC)
Received: from nazgul.tnic (unknown [78.130.214.203])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange ECDHE (P-256) server-signature ECDSA (P-256) server-digest
 SHA256) (No client certificate requested)
 by mail.alien8.de (SuperMail on ZX Spectrum 128k) with ESMTPSA id 99F6E40E01A3;
 Fri, 15 Sep 2023 11:56:24 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ecc133ba-53be-11ee-8788-cb3800f73035
X-Virus-Scanned: Debian amavisd-new at mail.alien8.de
Authentication-Results: mail.alien8.de (amavisd-new); dkim=pass (4096-bit key)
	header.d=alien8.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alien8.de; s=alien8;
	t=1694778994; bh=175g7SJNtbpOYi+dD8u5/4xm31IXiQXwUxLxD1MYjIU=;
	h=Date:From:To:Cc:Subject:References:In-Reply-To:From;
	b=Y8cGtnXKRVnjSChN1O93tW/N8vt0QAh93FG4TQdEexN19JVHu7blFR45aKl0IZE8c
	 vZiSFDoCH5J8Mw7vTJHC3RN6WSxvRNF5gdm0mf3cNCP1K+UeXTrVwOHMg7mcYhPFdN
	 yH/RYP3EydpidbKUe5FvPGa73bw+o01dwTBvXD89DY6Apc+Rd4PaBuxuVGXzv67D+C
	 /YmKJMLjLt46xdkm5Ee1k24SG7MHmsBOypgZayFAJlt9JhO7SDaOKc3MfFGnQhXdmH
	 Eee9EwbdMi9OcWzl2injyZKxSnI2uw//oaw9crg93KYaLs0vmfCGm7L95RBAgbySi5
	 Kg4EEgppr0hbq1T3Zhc7AOL6Tgh2GHvWYqsb7dcRB+FouKvx0Twar5S4GxNmZbfTRG
	 Gt2kUB6bcAfWtFP6hCq2gvu8V/H+fvpuBjJ8dxnyOMse9WIkMwYFMPXKbOkExSVPBQ
	 TaEsRU8VaEgSorXyGofCgd0lakGGQYtrAcyof9HXUWj6j+DChqJUV43SVWrcDl13vF
	 VXM75IbseVEE9danBltA1OPFBaxHwgWPuJELnLnmTSEN72ZBlrQNQ3Iw+oJL8qbv2S
	 wRDFXRABn56akHvNDIpN/wg1c70r30x8ySAqNSRMokqAWH1IU4m+fqkHQiJdo46MKk
	 9snXBFN2o5WwZkjZeLWZNMV8=
Date: Fri, 15 Sep 2023 13:56:31 +0200
From: Borislav Petkov <bp@alien8.de>
To: Elliott Mitchell <ehem+xen@m5p.com>
Cc: "Luck, Tony" <tony.luck@intel.com>,
	Yazen Ghannam <yazen.ghannam@amd.com>,
	smita.koralahallichannabasappa@amd.com, linux-edac@vger.kernel.org,
	linux-kernel@vger.kernel.org, x86@kernel.org,
	xen-devel@lists.xenproject.org, rric@kernel.org,
	james.morse@arm.com
Subject: Re: [PATCH] Revert "EDAC/mce_amd: Do not load edac_mce_amd module on
 guests"
Message-ID: <20230915115631.GAZQRGb0vCmEnUcaZI@fat_crate.local>
References: <20210628172740.245689-1-Smita.KoralahalliChannabasappa@amd.com>
 <ZPqQEHXgmak1LMNh@mattapan.m5p.com>
 <20230908035911.GAZPqcD/EjfKZ0ISrZ@fat_crate.local>
 <ZQM8jRx8uKEbEo00@mattapan.m5p.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <ZQM8jRx8uKEbEo00@mattapan.m5p.com>

On Thu, Sep 14, 2023 at 10:02:05AM -0700, Elliott Mitchell wrote:
> Indeed.  At what point is the lack of information and response long
> enough to simply commit a revert due to those lacks?

At no point.

> Even with the commit message having been rewritten and the link to:
> https://lkml.kernel.org/r/20210628172740.245689-1-Smita.KoralahalliChannabasappa@amd.com
> added, this still reads as roughly:
> 
> "A hypothetical bug on a hypothetivisor"

If "Hypervisors likely do not expose the SMCA feature to the guest"
doesn't explain to you what the problem is this commit is fixing, then
I can't help you.

-- 
Regards/Gruss,
    Boris.

https://people.kernel.org/tglx/notes-about-netiquette


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 12:21:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 12:21:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603118.940012 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh7op-0000b8-AS; Fri, 15 Sep 2023 12:21:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603118.940012; Fri, 15 Sep 2023 12:21:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh7op-0000b1-6J; Fri, 15 Sep 2023 12:21:07 +0000
Received: by outflank-mailman (input) for mailman id 603118;
 Fri, 15 Sep 2023 12:21:05 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=cz4l=E7=gmail.com=jinoh.kang.kr@srs-se1.protection.inumbo.net>)
 id 1qh7on-0000av-Sc
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 12:21:05 +0000
Received: from mail-pf1-x436.google.com (mail-pf1-x436.google.com
 [2607:f8b0:4864:20::436])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 56acff29-53c2-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 14:21:04 +0200 (CEST)
Received: by mail-pf1-x436.google.com with SMTP id
 d2e1a72fcca58-690471b5889so488233b3a.0
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 05:21:04 -0700 (PDT)
Received: from [10.137.0.57] ([14.33.99.107]) by smtp.gmail.com with ESMTPSA id
 j7-20020a62e907000000b0068a2d78890csm2880358pfh.68.2023.09.15.05.21.01
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 15 Sep 2023 05:21:02 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 56acff29-53c2-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1694780463; x=1695385263; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to
         :content-language:user-agent:mime-version:date:message-id:from:to:cc
         :subject:date:message-id:reply-to;
        bh=JJiLAj5J5sVFAB6Sudbt5JOrVFGYXWPrTpyvAmzXaTA=;
        b=cri3QpjQyCMCpaNiGY9pKvHqCNODDBIADlgr7UznUAyfGAk1uMznICJwYps6lr6Yox
         nQVJSmK3cVbVm+lAMukB6BgXQPROJ2k/nATVd6kmdIp9X1gNY0NXhhBXoNjX7RkPyNac
         OQP2WIYTVPB11TIYA0UHN/DDPXDIgGIuLuvvXsJX1Kcl0sVju4B/WGAdtPNfrLrAgDtw
         iN0EzEU7IrEe6LMtCqUQZH7iQ1d/hBmUuguo7dwvTdRnnuMLDWmt46vEHVRMvnmsMb+W
         s11KyhH68ZkliunAOEKgzSs7B3eW1kcVcHwdopbio4s6+wq1vg931Le/18ft3JzQouZ+
         DdQQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694780463; x=1695385263;
        h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to
         :content-language:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=JJiLAj5J5sVFAB6Sudbt5JOrVFGYXWPrTpyvAmzXaTA=;
        b=ZgMshyu+t7R7JvcPmOaLubL1mGUjHWFJInYlbkimRoMxiywmgmOQ0OI+u1ZSs8jS6n
         aEZb7mPZSY4Xir/yS4eHDQiCGCzLbimyZZjQ82dkoVmgYeCB0gwUkwqbbu+u3/U0hvNW
         pjA1NunaZOGARLEwAPSEQmUvDih0n2GTz258fY4tpOX86C1d0NVxdq3NxYRKjwfPwzOL
         yH/RJpCsByw1rkm7dIQu4GKBMCmQwA+6d9/hrn8zl/qmKXVH8VqIsUsT5QCdz+Acz6PN
         UFsZprfodvqW+PSXz0/gF/dDXXtkzfTM5Nn2DZ2PynNOhBiN5STNcJjIvu29R4mwj8rb
         e86Q==
X-Gm-Message-State: AOJu0YzQhbqQecTfxf+9dcPVJRjbZHafMKdqrRNq6L8ojBJ0bweeusCb
	OtivcwY4fKrcxcuQtUBk1RA=
X-Google-Smtp-Source: AGHT+IGjCn/2nPl+bU0z1TIZ+Y13T5D9H7Q0+jF7ne9nm9YCVlGpzexjZfOcNGeOgsIrFWlt+T9BgA==
X-Received: by 2002:a05:6a20:9752:b0:14c:40d1:e911 with SMTP id hs18-20020a056a20975200b0014c40d1e911mr1369852pzc.42.1694780463061;
        Fri, 15 Sep 2023 05:21:03 -0700 (PDT)
Message-ID: <e17dd8a7-91d0-fc30-203e-09058ee5e61d@gmail.com>
Date: Fri, 15 Sep 2023 21:20:58 +0900
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-4-andrew.cooper3@citrix.com>
From: Jinoh Kang <jinoh.kang.kr@gmail.com>
Subject: Re: [PATCH 3/5] x86/emul: Add a pending_dbg field to
 x86_emulate_ctxt.retire
In-Reply-To: <20230912232113.402347-4-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/13/23 08:21, Andrew Cooper wrote:
> diff --git a/xen/arch/x86/x86_emulate/x86_emulate.h b/xen/arch/x86/x86_emulate/x86_emulate.h
> index 698750267a90..f0e74d23c378 100644
> --- a/xen/arch/x86/x86_emulate/x86_emulate.h
> +++ b/xen/arch/x86/x86_emulate/x86_emulate.h
> @@ -588,15 +588,26 @@ struct x86_emulate_ctxt
>      /* Canonical opcode (see below) (valid only on X86EMUL_OKAY). */
>      unsigned int opcode;
>  
> -    /* Retirement state, set by the emulator (valid only on X86EMUL_OKAY). */
> +    /*
> +     * Retirement state, set by the emulator (valid only on X86EMUL_OKAY/DONE).
> +     *
> +     * TODO: all this state should be input/output from the VMCS PENDING_DBG,
> +     * INTERRUPTIBILITY and ACTIVITIY fields.
> +     */
>      union {
> -        uint8_t raw;
> +        unsigned long raw;

Minor nit: this should be uint64_t for clarity.  Otherwise, it's not at all
clear that the raw field covers the entire union, unless you remind myself
that Xen does not support 32-bit host.

>          struct {
> +            /*
> +             * Accumulated %dr6 trap bits, positive polarity.  Should only be
> +             * interpreted in the case of X86EMUL_OKAY/DONE.
> +             */
> +            unsigned int pending_dbg;
> +
>              bool hlt:1;          /* Instruction HLTed. */
>              bool mov_ss:1;       /* Instruction sets MOV-SS irq shadow. */
>              bool sti:1;          /* Instruction sets STI irq shadow. */
>              bool unblock_nmi:1;  /* Instruction clears NMI blocking. */
> -            bool singlestep:1;   /* Singlestepping was active. */
> +            bool singlestep:1;   /* Singlestepping was active. (TODO, merge into pending_dbg) */
>          };
>      } retire;
>  

-- 
Sincerely,
Jinoh Kang



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 12:43:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 12:43:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603125.940022 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh8A1-0000rz-0E; Fri, 15 Sep 2023 12:43:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603125.940022; Fri, 15 Sep 2023 12:43:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh8A0-0000rs-Tn; Fri, 15 Sep 2023 12:43:00 +0000
Received: by outflank-mailman (input) for mailman id 603125;
 Fri, 15 Sep 2023 12:42:59 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qh89z-0000rP-90; Fri, 15 Sep 2023 12:42:59 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qh89z-0003C6-5p; Fri, 15 Sep 2023 12:42:59 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qh89y-0000Bh-9X; Fri, 15 Sep 2023 12:42:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qh89y-0006Cg-8z; Fri, 15 Sep 2023 12:42:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=TEvJg95BZ9AMaIHfERhesJQcdi2dLWRSN86dW/Dg+k4=; b=zV4yCgL9ZzNswFQq+NuIa7N0NW
	3uUjljUBK5RRaUODOhj/Zg5KfaihAl71Ij3GEKUaiZLJtO4bHUueLox3wbQIMqRiRiUi+uaKmBXJL
	FrtZbIrjNc62BxzX3WfQLgYODAJIJTkmlOcWemujzOctPcg8IDofawus1vayheuMtaws=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183005-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183005: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=6aa25c32180ab59081c73bae4c568367d9133a1f
X-Osstest-Versions-That:
    xen=6aa25c32180ab59081c73bae4c568367d9133a1f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 15 Sep 2023 12:42:58 +0000

flight 183005 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183005/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183000
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183000
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183000
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183000
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183000
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183000
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183000
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183000
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183000
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183000
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183000
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183000
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  6aa25c32180ab59081c73bae4c568367d9133a1f
baseline version:
 xen                  6aa25c32180ab59081c73bae4c568367d9133a1f

Last test of basis   183005  2023-09-15 01:53:36 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 12:52:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 12:52:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603133.940031 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh8Ir-00052P-SN; Fri, 15 Sep 2023 12:52:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603133.940031; Fri, 15 Sep 2023 12:52:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh8Ir-00052I-PP; Fri, 15 Sep 2023 12:52:09 +0000
Received: by outflank-mailman (input) for mailman id 603133;
 Fri, 15 Sep 2023 12:52:08 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qh8Iq-00052C-CB
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 12:52:08 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qh8Ip-0003M5-LO; Fri, 15 Sep 2023 12:52:07 +0000
Received: from 54-240-197-224.amazon.com ([54.240.197.224]
 helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qh8Ip-0000Am-93; Fri, 15 Sep 2023 12:52:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:Message-Id:Date:
	Subject:Cc:To:From; bh=TgbWgVqJYFklDRXTfxuDdZGkTlQvmt/ixcBP2ZGtcoY=; b=TNIg38
	PztBXw1shwLa6h+aXlyOwp+L9tkMYvvo0GbRzRjZhV4vsOhErzqSP5qBPIoy0FochebSKOc/v4Tv4
	Q3ncuN+fg19az95KGIuuL4V4ZwafUx/3F51eECgCzWZXqrQ9KanI3bbYoiBSnwl0EZ+p3zMYkP31p
	QUNmO1H4riY=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Juergen Gross <jgross@suse.com>
Subject: [PATCH for-4.18 v2] tools/light: Revoke permissions when a PCI detach for HVM domain
Date: Fri, 15 Sep 2023 13:52:04 +0100
Message-Id: <20230915125204.22719-1-julien@xen.org>
X-Mailer: git-send-email 2.40.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Julien Grall <jgrall@amazon.com>

Currently, libxl will grant IOMEM, I/O port and IRQ permissions when
a PCI is attached (see pci_add_dm_done()) for all domain types. However,
the permissions are only revoked for non-HVM domain (see do_pci_remove()).

This means that HVM domains will be left with extra permissions. While
this look bad on the paper, the IRQ permissions should be revoked
when the Device Model call xc_physdev_unmap_pirq() and such domain
cannot directly mapped I/O port and IOMEM regions. Instead, this has to
be done by a Device Model.

The Device Model can only run in dom0 or PV stubdomain (upstream libxl
doesn't have support for HVM/PVH stubdomain).

For PV/PVH stubdomain, the permission are properly revoked, so there is
no security concern.

This leaves dom0. There are two cases:
  1) Privileged: Anyone gaining access to the Device Model would already
     have large control on the host.
  2) Deprivileged: PCI passthrough require PHYSDEV operations which
     are not accessible when the Device Model is restricted.

So overall, it is believed that the extra permissions cannot be exploited.

Rework the code so the permissions are all removed for HVM domains.
This needs to happen after the QEMU has detached the device. So
the revocation is now moved to pci_remove_detached().

Also add a comment on top of the error message when the PIRQ cannot
be unbind to explain this could be a spurious error as QEMU may have
already done it.

Signed-off-by: Julien Grall <jgrall@amazon.com>

---

    Changes since v1:
        * Move the code to revoke in pci_remove_detached()
        * Add a comment on top of the PIRQ unbind error path
        * Use goto to deal with errors.
---
 tools/libs/light/libxl_pci.c | 137 ++++++++++++++++++++---------------
 1 file changed, 77 insertions(+), 60 deletions(-)

diff --git a/tools/libs/light/libxl_pci.c b/tools/libs/light/libxl_pci.c
index 7f5f170e6eb0..96cb4da0794e 100644
--- a/tools/libs/light/libxl_pci.c
+++ b/tools/libs/light/libxl_pci.c
@@ -1968,7 +1968,6 @@ static void do_pci_remove(libxl__egc *egc, pci_remove_state *prs)
         goto out_fail;
     }
 
-    rc = ERROR_FAIL;
     if (type == LIBXL_DOMAIN_TYPE_HVM) {
         prs->hvm = true;
         switch (libxl__device_model_version_running(gc, domid)) {
@@ -1989,65 +1988,7 @@ static void do_pci_remove(libxl__egc *egc, pci_remove_state *prs)
             rc = ERROR_INVAL;
             goto out_fail;
         }
-    } else {
-        char *sysfs_path = GCSPRINTF(SYSFS_PCI_DEV"/"PCI_BDF"/resource", pci->domain,
-                                     pci->bus, pci->dev, pci->func);
-        FILE *f = fopen(sysfs_path, "r");
-        unsigned int start = 0, end = 0, flags = 0, size = 0;
-        int irq = 0;
-        int i;
-
-        if (f == NULL) {
-            LOGED(ERROR, domid, "Couldn't open %s", sysfs_path);
-            goto skip1;
-        }
-        for (i = 0; i < PROC_PCI_NUM_RESOURCES; i++) {
-            if (fscanf(f, "0x%x 0x%x 0x%x\n", &start, &end, &flags) != 3)
-                continue;
-            size = end - start + 1;
-            if (start) {
-                if (flags & PCI_BAR_IO) {
-                    rc = xc_domain_ioport_permission(ctx->xch, domid, start, size, 0);
-                    if (rc < 0)
-                        LOGED(ERROR, domid,
-                              "xc_domain_ioport_permission error 0x%x/0x%x",
-                              start,
-                              size);
-                } else {
-                    rc = xc_domain_iomem_permission(ctx->xch, domid, start>>XC_PAGE_SHIFT,
-                                                    (size+(XC_PAGE_SIZE-1))>>XC_PAGE_SHIFT, 0);
-                    if (rc < 0)
-                        LOGED(ERROR, domid,
-                              "xc_domain_iomem_permission error 0x%x/0x%x",
-                              start,
-                              size);
-                }
-            }
-        }
-        fclose(f);
-skip1:
-        if (!pci_supp_legacy_irq())
-            goto skip_irq;
-        sysfs_path = GCSPRINTF(SYSFS_PCI_DEV"/"PCI_BDF"/irq", pci->domain,
-                               pci->bus, pci->dev, pci->func);
-        f = fopen(sysfs_path, "r");
-        if (f == NULL) {
-            LOGED(ERROR, domid, "Couldn't open %s", sysfs_path);
-            goto skip_irq;
-        }
-        if ((fscanf(f, "%u", &irq) == 1) && irq) {
-            rc = xc_physdev_unmap_pirq(ctx->xch, domid, irq);
-            if (rc < 0) {
-                LOGED(ERROR, domid, "xc_physdev_unmap_pirq irq=%d", irq);
-            }
-            rc = xc_domain_irq_permission(ctx->xch, domid, irq, 0);
-            if (rc < 0) {
-                LOGED(ERROR, domid, "xc_domain_irq_permission irq=%d", irq);
-            }
-        }
-        fclose(f);
     }
-skip_irq:
     rc = 0;
 out_fail:
     pci_remove_detached(egc, prs, rc); /* must be last */
@@ -2226,7 +2167,11 @@ static void pci_remove_detached(libxl__egc *egc,
                                 int rc)
 {
     STATE_AO_GC(prs->aodev->ao);
-    int stubdomid = 0;
+    libxl_ctx *ctx = libxl__gc_owner(gc);
+    unsigned int start = 0, end = 0, flags = 0, size = 0;
+    int  irq = 0, i, stubdomid = 0;
+    const char *sysfs_path;
+    FILE *f;
     uint32_t domainid = prs->domid;
     bool isstubdom;
 
@@ -2242,6 +2187,78 @@ static void pci_remove_detached(libxl__egc *egc,
     if (rc && !prs->force)
         goto out;
 
+    /* Revoke the permissions */
+    sysfs_path = GCSPRINTF(SYSFS_PCI_DEV"/"PCI_BDF"/resource",
+                           pci->domain, pci->bus, pci->dev, pci->func);
+
+    f = fopen(sysfs_path, "r");
+    if (f == NULL) {
+        LOGED(ERROR, domid, "Couldn't open %s", sysfs_path);
+        goto skip_bar;
+    }
+
+    for (i = 0; i < PROC_PCI_NUM_RESOURCES; i++) {
+        if (fscanf(f, "0x%x 0x%x 0x%x\n", &start, &end, &flags) != 3)
+            continue;
+        size = end - start + 1;
+        if (start) {
+            if (flags & PCI_BAR_IO) {
+                rc = xc_domain_ioport_permission(ctx->xch, domid, start,
+                                                 size, 0);
+                if (rc < 0)
+                    LOGED(ERROR, domid,
+                          "xc_domain_ioport_permission error 0x%x/0x%x",
+                          start,
+                          size);
+            } else {
+                rc = xc_domain_iomem_permission(ctx->xch, domid,
+                                                start >> XC_PAGE_SHIFT,
+                                                (size + (XC_PAGE_SIZE - 1)) >> XC_PAGE_SHIFT,
+                                                0);
+                if (rc < 0)
+                    LOGED(ERROR, domid,
+                          "xc_domain_iomem_permission error 0x%x/0x%x",
+                          start,
+                          size);
+            }
+        }
+    }
+    fclose(f);
+
+skip_bar:
+    if (!pci_supp_legacy_irq())
+        goto skip_legacy_irq;
+
+    sysfs_path = GCSPRINTF(SYSFS_PCI_DEV"/"PCI_BDF"/irq", pci->domain,
+                           pci->bus, pci->dev, pci->func);
+
+    f = fopen(sysfs_path, "r");
+    if (f == NULL) {
+        LOGED(ERROR, domid, "Couldn't open %s", sysfs_path);
+        goto skip_legacy_irq;
+    }
+
+    if ((fscanf(f, "%u", &irq) == 1) && irq) {
+        rc = xc_physdev_unmap_pirq(ctx->xch, domid, irq);
+        if (rc < 0) {
+            /*
+             * QEMU may have already unmapped the IRQ. So the error
+             * may be spurious. For now, still print an error message as
+             * it is not easy to distinguished between valid and
+             * spurious error.
+             */
+            LOGED(ERROR, domid, "xc_physdev_unmap_pirq irq=%d", irq);
+        }
+        rc = xc_domain_irq_permission(ctx->xch, domid, irq, 0);
+        if (rc < 0) {
+            LOGED(ERROR, domid, "xc_domain_irq_permission irq=%d", irq);
+        }
+    }
+
+    fclose(f);
+
+skip_legacy_irq:
+
     isstubdom = libxl_is_stubdom(CTX, domid, &domainid);
 
     /* don't do multiple resets while some functions are still passed through */
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 13:18:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 13:18:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603142.940041 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh8iS-00035S-1H; Fri, 15 Sep 2023 13:18:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603142.940041; Fri, 15 Sep 2023 13:18:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh8iR-00035L-V0; Fri, 15 Sep 2023 13:18:35 +0000
Received: by outflank-mailman (input) for mailman id 603142;
 Fri, 15 Sep 2023 13:18:34 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qh8iP-00035F-Uh
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 13:18:34 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qh8iM-0003ye-8A; Fri, 15 Sep 2023 13:18:30 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qh8iL-0001Rv-MO; Fri, 15 Sep 2023 13:18:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=VYihbhOA3pUgFPfEFlAK13mqDlbZwkOelpg+e6ODB5s=; b=GJYKagUsxGvAjrhHjH0KfpD+RC
	X/dYkd3HViJuzbQO0Pfdahykq6sAJT6HZONz/jX+qA64yXLSYxAoudlxfCgScNBetpRqCMWtbMbfh
	GOGGCT36Qpux2qPb5uJUcjqg1nbXHbNz/gQpofxm+U4fhfBEgVUy7uMMl0/RWF9IojL4=;
Message-ID: <7f896d46-e25a-40f0-bb74-9a471207aa94@xen.org>
Date: Fri, 15 Sep 2023 14:18:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 1/2] xen/x86: io_apic: Introduce a command line option to
 skip timer check
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <20230818134441.45586-1-julien@xen.org>
 <20230818134441.45586-2-julien@xen.org>
 <bb92bc36-db32-322b-569c-a176f08a95a0@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <bb92bc36-db32-322b-569c-a176f08a95a0@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 07/09/2023 15:09, Jan Beulich wrote:
> On 18.08.2023 15:44, Julien Grall wrote:
>> --- a/docs/misc/xen-command-line.pandoc
>> +++ b/docs/misc/xen-command-line.pandoc
>> @@ -1896,6 +1896,13 @@ This option is ignored in **pv-shim** mode.
>>   ### nr_irqs (x86)
>>   > `= <integer>`
>>   
>> +### no_timer_works (x86)
>> +> `=<boolean>`
>> +
>> +> Default: `true`
>> +
>> +Disables the code which tests for broken timer IRQ sources.
> 
> In description and code it's "check", but here it's "works". Likely
> just a typo. But I'd prefer if we didn't introduce any new "no*"
> options which then can be negated to "no-no*". Make it "timer-check"
> (also avoiding the underscore, no matter that Linux uses it), or
> alternatively make it a truly positive option, e.g. "timer-irq-works".

I don't mind too much about using - over _ but it is never clear why you 
strongly push for it (and whether the others agrees). Is this documented 
somewhere? If not, can you do it so everyone can apply it consistently? 
(At least I would not remember to ask for it because I am happy with the _).

I will go for 'timer-irq-works'.

> 
> I also think it wants emphasizing that if this option is used and then
> something doesn't work, people are on their own.

I will do that.

Note that I will only resend a new version after the tree as branched 
because this is not meant for 4.18.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 13:49:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 13:49:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603153.940052 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9CS-0005BE-E2; Fri, 15 Sep 2023 13:49:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603153.940052; Fri, 15 Sep 2023 13:49:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9CS-0005B7-AW; Fri, 15 Sep 2023 13:49:36 +0000
Received: by outflank-mailman (input) for mailman id 603153;
 Fri, 15 Sep 2023 13:49:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jpI5=E7=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qh9CR-0005B1-0J
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 13:49:35 +0000
Received: from mail-lf1-x129.google.com (mail-lf1-x129.google.com
 [2a00:1450:4864:20::129])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b32e3b39-53ce-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 15:49:33 +0200 (CEST)
Received: by mail-lf1-x129.google.com with SMTP id
 2adb3069b0e04-502934c88b7so3665773e87.2
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 06:49:33 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b32e3b39-53ce-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694785772; x=1695390572; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=m2AaeuNQY49wECmrZnl49Ab7iexGpd1eBfz3XX3sCyk=;
        b=OsJ6DIDjoM6y3VAIUcXmmcwaCcbTpOSC1UelWQhGfsCjfVgfrHdt5IrwZFFVs5Txd/
         Oi+Rx6KcL2efgIf1uAURQM0K6/3v3OGIazKMuCMT4W+32gbLSI0LL5/VMhO04SfiEfd+
         50S+kQjQu+fLibacBzxTrsTO4GC0Nrent9Mcw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694785772; x=1695390572;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=m2AaeuNQY49wECmrZnl49Ab7iexGpd1eBfz3XX3sCyk=;
        b=kjFqhguNFolryrJ3uJcpHYbAsA61cyKtSqY1IAM0n5aq0tfTe4PJBQPzh4R02iu1bj
         m9dEgrF+szyQBf3LT22MUdGgYMH1DFFK2QiLFUXecGH85QPv6hbYR9zW+XcQM21DvGzG
         SGJVhSkE+15u79fsG3oy2KT+iHL17Xw+fjpD9Zbmoi6BAtxbiPe1FbPSxJTS0Qe1x2BD
         O5bZnhTtSmoerlPlnl1VZDOFt4bBXTYH94NN5o3Gaz8DztKuxe+X3jhjcyQxxRpBi2QE
         lcSQoD6I/SMVgkA4nY7oXZUHuYCB0pOyV36Kxxdi0NkLiTQGkXSqQZNDxSS8x7xLp3jn
         7JKA==
X-Gm-Message-State: AOJu0YyvPh/7PUZgTXjYOzhwreZHinnd7mucA8WN+J9MLJqMDBut1il0
	WLRZmR1CFNhxnGj9n6FXAEn89c0iqVGCBd9+bHdH/w==
X-Google-Smtp-Source: AGHT+IFvwPWKMXvMNbDxTYP91esCPeCs2Tq5+bjJJn+lH0r9lP3hUSbyljuZUeOCtK14Chgm6BtU1YtJF9O29UCZ1E8=
X-Received: by 2002:a2e:854e:0:b0:2bc:d5ad:2758 with SMTP id
 u14-20020a2e854e000000b002bcd5ad2758mr1622669ljj.5.1694785772507; Fri, 15 Sep
 2023 06:49:32 -0700 (PDT)
MIME-Version: 1.0
References: <20230818134441.45586-1-julien@xen.org> <20230818134441.45586-2-julien@xen.org>
 <bb92bc36-db32-322b-569c-a176f08a95a0@suse.com> <7f896d46-e25a-40f0-bb74-9a471207aa94@xen.org>
In-Reply-To: <7f896d46-e25a-40f0-bb74-9a471207aa94@xen.org>
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 15 Sep 2023 14:49:21 +0100
Message-ID: <CA+zSX=ZoHtiSk0Uxkkd7CPTu_xhCQKqaScN+ZduWbsYiVD4EQQ@mail.gmail.com>
Subject: Re: [PATCH 1/2] xen/x86: io_apic: Introduce a command line option to
 skip timer check
To: Julien Grall <julien@xen.org>
Cc: Jan Beulich <jbeulich@suse.com>, Julien Grall <jgrall@amazon.com>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, 
	=?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, Sep 15, 2023 at 2:18=E2=80=AFPM Julien Grall <julien@xen.org> wrote=
:

> I don't mind too much about using - over _ but it is never clear why you
> strongly push for it (and whether the others agrees). Is this documented
> somewhere? If not, can you do it so everyone can apply it consistently?
> (At least I would not remember to ask for it because I am happy with the =
_).

FWIW I prefer `-` over `_`; I'd Ack a patch that documented it
somewhere (if it's not documented already).

 -George


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 13:55:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 13:55:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603159.940062 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9Ht-0007W7-0h; Fri, 15 Sep 2023 13:55:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603159.940062; Fri, 15 Sep 2023 13:55:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9Hs-0007W0-Th; Fri, 15 Sep 2023 13:55:12 +0000
Received: by outflank-mailman (input) for mailman id 603159;
 Fri, 15 Sep 2023 13:55:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=x70d=E7=citrix.com=prvs=6154552af=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qh9Hr-0007Vu-C4
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 13:55:11 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 79c59850-53cf-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 15:55:08 +0200 (CEST)
Received: from mail-dm6nam11lp2174.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.174])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 15 Sep 2023 09:55:04 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA1PR03MB6419.namprd03.prod.outlook.com (2603:10b6:806:1c2::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Fri, 15 Sep
 2023 13:55:01 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.020; Fri, 15 Sep 2023
 13:55:01 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 79c59850-53cf-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694786108;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=BnAfhvLLKrxZB5jnyrl+HqnzukFIsFf9t02QGbiUT6w=;
  b=hT6ifKrkhPgp/uaodQLyqRkHBDTjPVqg0v0S1QJEPHwmvq3FB0IuZThN
   WaBDXy/GTv7Xe2CK7mNPPOvtThagifuo82v1A67SjpV4cqwTnG8UFL+7T
   k/glyYdeCeBwsKi9Osbb0Uw48zLTmLl8cd7dXJa/oeC8Xo4JdlzQpDLXz
   U=;
X-CSE-ConnectionGUID: gjNf7QmjRI+VyS9sRZcxFg==
X-CSE-MsgGUID: YYq7BYImThSSgNPsu1X3gQ==
X-IronPort-RemoteIP: 104.47.57.174
X-IronPort-MID: 122788333
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:J7FcGK/Cg2SoBDnZR4R5DrUDW3+TJUtcMsCJ2f8bNWPcYEJGY0x3z
 jAfCDrQa/zcZGH2e4xwaYqy8kMP65fTmtNrHAJsry48E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks11BjOkGlA5AdmNKkW5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklB9
 9oWdwkIbCqixNyn++OgcNtnluoseZyD0IM34hmMzBn/JNN/GNXvZvuP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWMilUujNABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVx3yrCNlJT9VU8NZbsUTM7F0yDSEWbmC0h8GilxeOAN1mf
 hl8Fi0G6PJaGFaQZtvgWxy1plaUsxhaXMBfe8Uq5QfIxqfK7gKxAmkfUiUHeNEgrNUxRzEhy
 hmOhdyBLT5gqrSRTVqU876GqjX0Mi8QRUcAbyIZSQoO4/H4vZo+yBnIS75LC7Wph9f4HTXxx
 TGiryUkgbgXy8kR2M2T4lTvkz+q4J/TQWYICh7/W2uk6kZ1YdCjbonxsFzDt68fcMCeU0WLu
 2UCl46G9ucSAJqRlSuLBuIQALWu4PXDOzrZ6bJyI6QcG/2W0ybLVehtDPtWfS+F7u5slefVX
 XLu
IronPort-HdrOrdr: A9a23:SS2blqoczK+oW1xevZG6vjcaV5oueYIsimQD101hICG9E/bo8f
 xG+c5x6faaskd0ZJhNo7C90cq7MBThHPxOjLX5VI3KNGPbUQ2TXeJfBODZsljd8kPFh4xgPJ
 BbH5SW2eeQMbAq5fyV3OHne+xO/OW6
X-Talos-CUID: 9a23:O/99nG53EbgfJt4U9dss+0wyFJ8cd3/n7TTuMnTpElxbQ627RgrF
X-Talos-MUID: =?us-ascii?q?9a23=3A5YEDXg92nhj4UJbtDRwtWz6Qf/ZZ+vuEOWEIrZU?=
 =?us-ascii?q?9gMaiDTdtYgfGgw3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,149,1688443200"; 
   d="scan'208";a="122788333"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=d4PSeN3GBLJsNJlAhZXweQWU8az7aTFczqzvKYsB58sERkEl9+x65n+ShgzW4MtO/whZC37ocHxStGsd/cEm5Ln1ibZR8oGpxXb69S1j1schk3hOMYdMNv9LZRZPC7JOtzRmXhWqcvaPjS9OeVDDabDYU+8BncT5AThDe3ykBxyfRdbzdfchkgZtn9YI5JcSB9KQoz76rSCr5ujalcKPj5YqS5uedXbJTLMk9i+8ag2UGZDr0XG+keUUDTqyF4162J6au9TTtU6E/Z93P3Cjqqz4ul8rXDFWVDp0JGIuhNeCfDij3JyluTX8E2U4JAkWrPLRyep8l44JYxmj4XDBnQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=VqzIqAoJse/aZK/elI2KQubZSp38vs0zYutkw2BpGNM=;
 b=dyAq6p7NTWt6wkhYjNAVWubnYmK3Z/LycxP9Fr7yVxKxgJrZmkBHnQrfQBQa3oti+x7djfv9DKIlsap5fE33s7XNuvv9l3UfPU7Erg+G11nCEtXRSHoikVHYnK8eSCXPZhl77xDb12bAvAbnozJObS8lZiRiqywuaJsjJSPHF2ChzlJ27JPIlthXNuyxsqFqoAIv9qklZm01TTb5+EiLxBVgg1MhHqoNBZhgKTCjpZn2HmgCvo/uwk/BtlC+CyXLwUGUa+Hq8oBEVVrbSfmYGuURtFwqJVo4ZdINS85wOwGzXMY86Zy6hzDhjU1JCc+locL37xEljY2ptfbZALFCPA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=VqzIqAoJse/aZK/elI2KQubZSp38vs0zYutkw2BpGNM=;
 b=fHU8SQSXD9CJ3mMih3kNp9dHDs7v8Y0TK+H08eg7KKbcTo2lJIqtlAgghLEFm6w2wuWuIrH+b2Mk7u1MCYiFScFsmsO2p6l9i0BR6Wfb6VjVjkGEyxh6Yk8Tg6tncjMH4W7FW5hf7joxYC7yVt7IMottK7yoi0VxSWQ174Oabu0=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 15 Sep 2023 15:54:55 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org, Julien Grall <jgrall@amazon.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 1/2] xen/x86: io_apic: Introduce a command line option to
 skip timer check
Message-ID: <ZQRiL0Mf5_5EC8oj@MacBook-MacBook-Pro-de-Roger.local>
References: <20230818134441.45586-1-julien@xen.org>
 <20230818134441.45586-2-julien@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20230818134441.45586-2-julien@xen.org>
X-ClientProxiedBy: LO3P123CA0010.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:ba::15) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB6419:EE_
X-MS-Office365-Filtering-Correlation-Id: 6739f5b9-0f63-4a06-7dd2-08dbb5f35adc
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	fJva94jLXvlliE4SVoszrNvd/VaHfJIFItUwMkq0L9+tPoP/ZnQk2a/McaItJPLCw6fVTawBKZPiO04ewN+s0LodhKenXkTgRsQb8zOAbvK5+tccqv0S54StlvmTyjUjwWI0skDZHN6I+GBkfTqG9rihy8BKZ4oyE39sAnPyZeLfoe21StaoryurD4HMWP5ih8dUEn8EcBHdb7GZkpXxIE7p0UkfxXt6EAjzLqfeUBwIqrpgU8Ms2sN5x1NY3+5ozNJif2NbBLhis9WDecHTZZXuzhd8z9FhUcNuJ/PEWz8a7EOk/grEMpypoabFqxnsSY3kccVJWduM+SP9wQFaXlTcHS+ARGTpHg+0VoT65CPEDqvTrHFVOsr08ETgVKVUdHPvwyszsZEFt6AvsqYV8oSPaUIttKRIm9eXRKbXjp5dmw+G4OMGOACQ9966FpHoWt5exPcb+FD1CBYz2+g+n6CZotKbY+OWrFcRi+PN13M3uiTHpRvLYdDqVR4bGpYT4XmfrhdORJ3zfVlwFcT73h6SUHA30XJcMQPSFcA+Od+9dq6ysqA3V1mc1QV7d74s
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(346002)(366004)(136003)(39860400002)(1800799009)(186009)(451199024)(478600001)(38100700002)(2906002)(316002)(82960400001)(66946007)(66476007)(66556008)(54906003)(6916009)(41300700001)(6512007)(6486002)(6666004)(9686003)(6506007)(26005)(5660300002)(86362001)(8676002)(8936002)(4326008)(85182001)(83380400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bmUybGNlNWxHZzcyZjc3UkI5dXB0V0Y0dzBhUU1SU3NKTGNId2tkcW1UVE5Y?=
 =?utf-8?B?SzVCZ0JYTkFVR3lkSE9OSzlyUkQyTnVkcjR0L0FIQ0tLSTFSV3A1Q2tUNjg3?=
 =?utf-8?B?Ti9ud0Zod3c3OUx4OFBpTjRHVUFRTUJNNm1heGpXZlFQQTRXVkRCWVJmQlJ5?=
 =?utf-8?B?dG9CeWoxWTBpR2xuUnJUZktBaTdWU2pzaFVZbmVhMjFHcHV2WDlEazBmTmRF?=
 =?utf-8?B?OW5oM05Idm90U3YzSVU1TFpPQ29IUmhqTGNXNGRDZkhCeFJ0YkNPQi8wcW1X?=
 =?utf-8?B?cWlsUDhKRXVieUI0b01QblU5dFJEUWdtdHI0ZmJWUVdRKzQyVU1IRCtSSlZi?=
 =?utf-8?B?bUdZdDZXbDgwUStNZDhRLzZnQzIrbDdjYVN0TE5uc1RaWmwyVVhmcmJ3YzFW?=
 =?utf-8?B?WGpqdXcyUk15ZHVyUTZwWmQrY2syUHB5YnF6U1UvUVkxSk45Y1QxdkEwWmhC?=
 =?utf-8?B?V1FZV2ZOOWxEZXhoTVc1djZoTjM2akt0NFRUUmMrSWtsemFvdGVNMk8wcXcw?=
 =?utf-8?B?d1ZwbXRRcjBvaVFFTnpIYXRQRWRHb3hTam4xTEFOVVo3TTNEK1lEVHN0eXZV?=
 =?utf-8?B?NGlRZXNNNG1RbVUyZFFLRGxNWk1qdVVJUFpyWkYrWWZ0dXZmdjlnQmFMMFVr?=
 =?utf-8?B?cGFEWGIvWTF1RW5JNElmaWJITkNwbGF0UGlkNnF2ZmgxRWJiV2hJTy8zS1Ju?=
 =?utf-8?B?QXhZSjJHWGdIV2Q2emFndGNiazE1ZDR5WXo5VVJUcmdmaUVhTG9najJEQ2Iz?=
 =?utf-8?B?V0lBeUtQSWc2K0hJZzZlNG1ZeUROamtSYzFlSXN3QVhqaXh2S3hTc0VmZlBy?=
 =?utf-8?B?OGxGbGJVanJId2RuN1pnS3lTcnlJM1dPQ1VzQXJtZzdMQWptZEtQdGVBa0xD?=
 =?utf-8?B?N0QwS1AvdUwzTzVxaGxmSDJFaFg1WEZtOUsxSnZMTkUvdGZMS2FLemk4TDRE?=
 =?utf-8?B?R3JhdzZOdDNCL25lek5KR0oxMDZNU282QlNnZmRjTnlTa0k0OU00bkR1L0Mx?=
 =?utf-8?B?anFlNFB4UzF2dW1MbGk1TXFLMjhTU0loRnJrelB3VDFwSlBVayswQUc2RENt?=
 =?utf-8?B?S2dyZXJCRS8rVHFTODFtWW94bVpPRjRJOEs4VlowdW9OQW9GWkxObktuQkcr?=
 =?utf-8?B?SFdJZExoeXpJbm05SHcralFjL3V1R2NibnZwZm1Na1hZcWZxWldxVDg1QTBW?=
 =?utf-8?B?Snd1VXlrR2tqQ1B5VE00TkZudjY2bmNXeFZkbzA2Q1RneTBoQURYSzR2aFZG?=
 =?utf-8?B?anpZdDF5VVlSZXRBcTZOakRORVJoS2lSd0dYWVk2dFNadDg4Wm81QWNHRWpJ?=
 =?utf-8?B?dGZYYTJQVEVVRE5ESDJWODVtVlBqUHFUMzJ6dCsweHBFQ1VBQXVjVzV3TEU1?=
 =?utf-8?B?MlJSTVo5MCtraW5PUk5JeHJONmkvQUtLWFZLRjBhd2JQdUlaRG9mZWFWaklI?=
 =?utf-8?B?SHpjYzM5aXhHUkZiNS8rS0RJR0RYTzJGK1owQzVBMTJVNW5oUGJ3eXd2ZEhG?=
 =?utf-8?B?QXFtOUZqK0FqUmhRTGNQUkZ6MmZQdzRiNy9BbjBzTVFFZzhTRWQxby9sbyth?=
 =?utf-8?B?QVZ6LzdVaTFQWEpGSzFiRDBpTy9qUm51K0NvazUxeGFyVllpRlVBNVpUaXBZ?=
 =?utf-8?B?V1R4M3BwUlZoYThoaWlmZytpb1pnbkdlT1ZrejNhdS9kd1Nla1NDeW1aTXpp?=
 =?utf-8?B?QS9vaGtDeU5GL0hoVUl0M041QmJuZFVQNnJJbU15eXhSeGZrdjhHcGxmbDBq?=
 =?utf-8?B?K0xtY2FkMDkwNytFTjdZZ1lIelN4cWlSUzRMTGNVNGUzNFVkZjZZZEZKcHNF?=
 =?utf-8?B?MkpGUjc0L1I2UzdJZitGL0VYc1ZGa0NIUlFHNFNLY1pjcGJ3L2RETXRaQWlZ?=
 =?utf-8?B?ZHRDc0crVnBBQVRCYmFsbUh2M1F2OG5ZeC84bk5abEtJL3JQTEZuTUo3a3VT?=
 =?utf-8?B?Mk1WWFU2S1lkY0VFdGRuZ1NHUWpQdkhvVVFmK2E5VnVKcTNMOHl3bkZVSjVi?=
 =?utf-8?B?ZWlIVlhtYTdlYnFjeWVjMkVLUE92NEMySml2K0pTWGUzN2I5QUdCUVNQL1FU?=
 =?utf-8?B?eCtEYzFydHdGNFNTVmtmR0wvd0R6YW5EblBFUnp1SzUwcHhzb1dlTjdBY2FN?=
 =?utf-8?B?ODVQNUZ6RUQwelgxUDV6VWlVV3VVUFFKR0NHcnhYYUV1aVlUa0lsTWt4TlBP?=
 =?utf-8?B?K1E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	Du2Rcxz5wP2vD19djbqt1KJQjQBgL3a2DlKOIyxXfH7+w/qI1Cu5zLpV3QxGfwmu695AsgkaEnzdFjbRNviKCbBzPbKVTolvqSBTu6DipFXKUu/PHFSsdv+1dcFCorlfYMEkFngN6C8z7ihncovVI5yqDxtO1zHHovilZUBkCkR5B/w820i88kRnz/gjIr3wyn0qC0EDpxC8HvrpVwnwKm+i5NKyhHN52YFqg+ZhZF/6+9ZUCK1XorvXm3GC5EaALW2J8S0LNU7xqS6Zii9W0Iw1g7jaqLhHsmY+in+lbII2Oux4BoTzD0JZueeHNXO9Rj8ECkAHDvnW7pz1MBAkcHHuDjVM2ANsXvg17nZU9Pmmmcp6oiJx+ryuvONFfq+Vzoj4WH9jZb7lSQd7Sw757fZtG1SuGKfhqDX0iqXcHxvF1WzfhuTUkEoot3rgNgN6/hLCNcQLfhVbYmTdMSNWAwopTr8zaJ4xhgjP+CdO/RHdPfdPE+Vab4UtQOmItHj3vzmVAGcTKoS8ieHiRJDoP4nxIBMG4imIknzSEALRKYYh9UHvVQEOshu6Cq4b6aa83fwSVVF509SQEkPhoEige7o521k6kve5sbdCiI0n6Hj3/KuQ5HzDOX2GOa+QGTaoatOG8CVa7zNtdwNytTPrbQe7poCV8i6kUrvtUPCx9Ra8JJrpyNyKNAFfLum2ADQba5WkdP/zj2uX9V6ZJikx2vOg/Q0ozJ6G7TXdbRdzCyyLxzWa2RfeC5eBhTlvS+fRUrTLa0jwIe8WK8Jm0P20DoqnRtJSJcNmLk07d9PYVdCd8MHOt07zsEr7kRjWzXC2RxczfDuFKFpCQN+kcrmKJTatRO86lDsfFvmWG4OgU9ZuFFALQKwN4oivfu2KhCWr
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6739f5b9-0f63-4a06-7dd2-08dbb5f35adc
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 13:55:01.0587
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0xDyhpLqt/G7N9QtJg14HP30A6Cuv/R1PWCdJg3YX180jeWHHbgvp3pG8YVj5gQya4A4Byo0fps6ijiu7fdxtQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6419

On Fri, Aug 18, 2023 at 02:44:40PM +0100, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Currently, Xen will spend ~100ms to check if the timer works. If the
> Admin knows their platform have a working timer, then it would be
> handy to be able to bypass the check.

I'm of the opinion that the current code is at least dubious.

Specifically attempts to test the PIT timer, even when the hypervisor
might be using a different timer.  At which point it mostly attempts
to test that the interrupt routing from the PIT (or it's replacement)
is correct, and that Xen can receive such interrupts.

We go to great lengths in order to attempt to please this piece of
code, even when no PIT is available, at which point we switch the HPET
to legacy replacement mode in order to satisfy the checks.

I think the current code is not useful, and I would be fine if it was
just removed.

> 
> Introduce a command line option 'no_timer_check' (the name is
> matching the Linux parameter) for this purpose.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> ---
>  docs/misc/xen-command-line.pandoc |  7 +++++++
>  xen/arch/x86/io_apic.c            | 11 +++++++++++
>  2 files changed, 18 insertions(+)
> 
> diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
> index 4872b9098e83..1f9d3106383f 100644
> --- a/docs/misc/xen-command-line.pandoc
> +++ b/docs/misc/xen-command-line.pandoc
> @@ -1896,6 +1896,13 @@ This option is ignored in **pv-shim** mode.
>  ### nr_irqs (x86)
>  > `= <integer>`
>  
> +### no_timer_works (x86)

I find the naming confusing, and I would rather avoid negative named
booleans.

Maybe it should be `check_pit_intr` and default to enabled for the
time being?

> +> `=<boolean>`
> +
> +> Default: `true`

I think the default is wrong here?  AFAICT no_timer_check will default
to false.

> +
> +Disables the code which tests for broken timer IRQ sources.

Hm, yes, it does check for one specific source, which doesn't need to
be the currently selected timer.

"Disables the code which tests interrupt injection from the legacy
i8259 timer."

Even that is not fully true, as it would resort to testing the HPET
legacy mode if PIT doesn't work, but one could argue the HPET legacy
mode is just a replacement for the i8254.

> +
>  ### irq-max-guests (x86)
>  > `= <integer>`
>  
> diff --git a/xen/arch/x86/io_apic.c b/xen/arch/x86/io_apic.c
> index b3afef8933d7..4875bb97003f 100644
> --- a/xen/arch/x86/io_apic.c
> +++ b/xen/arch/x86/io_apic.c
> @@ -57,6 +57,14 @@ bool __initdata ioapic_ack_forced;
>  int __read_mostly nr_ioapic_entries[MAX_IO_APICS];
>  int __read_mostly nr_ioapics;
>  
> +/*
> + * The logic to check if the timer is working is expensive. So allow
> + * the admin to bypass it if they know their platform doesn't have
> + * a buggy timer.

I would mention i8254 here, as said this is quite likely not testing
the currently in use timer.

Note that if you don't want to run the test in timer_irq_works() you
can possibly avoid the code in preinit_pit(), as there no need to
setup channel 0 in periodic mode then.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 14:00:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 14:00:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603166.940071 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9NN-0002S9-KM; Fri, 15 Sep 2023 14:00:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603166.940071; Fri, 15 Sep 2023 14:00:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9NN-0002S2-Hf; Fri, 15 Sep 2023 14:00:53 +0000
Received: by outflank-mailman (input) for mailman id 603166;
 Fri, 15 Sep 2023 14:00:52 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qh9NM-0002Rw-5W
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 14:00:52 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qh9NJ-0004wZ-PA; Fri, 15 Sep 2023 14:00:49 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qh9NJ-0003Fu-K5; Fri, 15 Sep 2023 14:00:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=QUV1spqR0JMQKCwaTmDPetRqsUrvpfywVpdbE0IFAQo=; b=e/uMGhSca3lUwnoRwxRIyPMTsA
	xzQdFnoUWf5U11IfC4maAFAZzpkiz1DnNgnxDZLXhvCThoOI2LWqC5uxFoR81bKrYCUIrZGrqp/Q/
	tAKNfrk7wBynvpxVBjU5e3tJ8w2ZNu6VMBaPxqjt0Y19IXlOCRT/QJrcbZAS/oOjstPo=;
Message-ID: <28ada8e1-0b24-4632-8bec-4939405f5d00@xen.org>
Date: Fri, 15 Sep 2023 15:00:48 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 2/2] xen/x86: ioapic: Bail out from timer_irq_works() as
 soon as possible
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20230818134441.45586-1-julien@xen.org>
 <20230818134441.45586-3-julien@xen.org>
 <a198d472-4b1d-1da5-e336-232af98b87aa@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <a198d472-4b1d-1da5-e336-232af98b87aa@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jan,

On 07/09/2023 15:28, Jan Beulich wrote:
> On 18.08.2023 15:44, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> Currently timer_irq_works() will wait the full 100ms before checking
>> that pit0_ticks has been incremented at least 4 times.
>>
>> However, the bulk of the BIOS/platform should not have a buggy timer.
>> So waiting for the full 100ms is a bit harsh.
>>
>> Rework the logic to only wait until 100ms passed or we saw more than
>> 4 ticks. So now, in the good case, this will reduce the wait time
>> to ~50ms.
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> In principle this is all fine. There's a secondary aspect though which
> may call for a slight rework of the patch.
> 
>> --- a/xen/arch/x86/io_apic.c
>> +++ b/xen/arch/x86/io_apic.c
>> @@ -1509,6 +1509,8 @@ static void __init setup_ioapic_ids_from_mpc(void)
>>   static int __init timer_irq_works(void)
>>   {
>>       unsigned long t1, flags;
>> +    /* Wait for maximum 10 ticks */
>> +    unsigned long msec = (10 * 1000) / HZ;
> 
> (Minor remark: I don't think this needs to be unsigned long; unsigned
> in will suffice.)

You are right. I can switch to unsigned int.

> 
>> @@ -1517,19 +1519,25 @@ static int __init timer_irq_works(void)
>>   
>>       local_save_flags(flags);
>>       local_irq_enable();
>> -    /* Let ten ticks pass... */
>> -    mdelay((10 * 1000) / HZ);
>> -    local_irq_restore(flags);
>>   
>> -    /*
>> -     * Expect a few ticks at least, to be sure some possible
>> -     * glue logic does not lock up after one or two first
>> -     * ticks in a non-ExtINT mode.  Also the local APIC
>> -     * might have cached one ExtINT interrupt.  Finally, at
>> -     * least one tick may be lost due to delays.
>> -     */
>> -    if ( (ACCESS_ONCE(pit0_ticks) - t1) > 4 )
>> +    while ( msec-- )
>> +    {
>> +        mdelay(1);
>> +        /*
>> +         * Expect a few ticks at least, to be sure some possible
>> +         * glue logic does not lock up after one or two first
>> +         * ticks in a non-ExtINT mode.  Also the local APIC
>> +         * might have cached one ExtINT interrupt.  Finally, at
>> +         * least one tick may be lost due to delays.
>> +         */
>> +        if ( (ACCESS_ONCE(pit0_ticks) - t1) <= 4 )
>> +            continue;
>> +
>> +        local_irq_restore(flags);
>>           return 1;
>> +    }
>> +
>> +    local_irq_restore(flags);
>>   
>>       return 0;
>>   }
> 
> While Andrew has a patch pending (not sure why it didn't go in yet)
> to simplify local_irq_restore(), and while further it shouldn't really
> need using here (local_irq_disable() ought to be fine)

Skimming through the code, the last call of timer_irq_works() in 
check_timer() happens after the interrupts masking state have been restored:

local_irq_restore(flags);

if ( timer_irq_works() )
   ...


So I think timer_irq_works() can be called with interrupts enabled and 
therefore we can't use local_irq_disable().

> I can see that
> you don't want to make such an adjustment here. But then I'd prefer if
> we got away with just a single instance, adjusting the final return
> statement accordingly (easiest would likely be to go from the value of
> "msec").

I was thinking to use 'msec > 0' as a condition to determine if the test 
passed. However, it would consider a failure if it tooks 10ms for the 
test to pass.

I will see if I can rework the loop.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 14:17:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 14:17:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603173.940082 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9dk-0005Pi-0a; Fri, 15 Sep 2023 14:17:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603173.940082; Fri, 15 Sep 2023 14:17:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9dj-0005Pb-UA; Fri, 15 Sep 2023 14:17:47 +0000
Received: by outflank-mailman (input) for mailman id 603173;
 Fri, 15 Sep 2023 14:17:46 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qh9di-0005PR-NU; Fri, 15 Sep 2023 14:17:46 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qh9di-0005NY-IS; Fri, 15 Sep 2023 14:17:46 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qh9di-0002Wc-2P; Fri, 15 Sep 2023 14:17:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qh9di-0007uG-1v; Fri, 15 Sep 2023 14:17:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=mDP0evtLRu6G4KPfZAB3liucQBPPhQsWlzv3Ov5Oe5o=; b=U4gc0G0sge76oKRv9FgrTYeyoE
	ejYmlnX9fIZ9fRHC2jVjy50HRlIR3ttuItME/Lf6SmWFOk0B1lb4wbq8PFg+dcUGqpzg9Zi/QOjgX
	dJESCHhjIjHvno4ES9ww+VLMgW88iMyZxRtKXGE/5AZeqPiF1HeqxsFvguBsfC0LHFvY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183007-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183007: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=f26c0018ba44730404c0daf2131dc144d1345672
X-Osstest-Versions-That:
    libvirt=1f85f0967b12521f3d7321cb8469393e72d0ce7a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 15 Sep 2023 14:17:46 +0000

flight 183007 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183007/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183001
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183001
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183001
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              f26c0018ba44730404c0daf2131dc144d1345672
baseline version:
 libvirt              1f85f0967b12521f3d7321cb8469393e72d0ce7a

Last test of basis   183001  2023-09-14 04:18:45 Z    1 days
Testing same since   183007  2023-09-15 04:20:23 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Boris Fiuczynski <fiuczy@linux.ibm.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   1f85f0967b..f26c0018ba  f26c0018ba44730404c0daf2131dc144d1345672 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 14:24:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 14:24:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603183.940091 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9kB-0000AM-N6; Fri, 15 Sep 2023 14:24:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603183.940091; Fri, 15 Sep 2023 14:24:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9kB-0000AF-KX; Fri, 15 Sep 2023 14:24:27 +0000
Received: by outflank-mailman (input) for mailman id 603183;
 Fri, 15 Sep 2023 14:24:26 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=cz4l=E7=gmail.com=jinoh.kang.kr@srs-se1.protection.inumbo.net>)
 id 1qh9kA-00008l-I0
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 14:24:26 +0000
Received: from mail-pl1-x636.google.com (mail-pl1-x636.google.com
 [2607:f8b0:4864:20::636])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 90fec5db-53d3-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 16:24:24 +0200 (CEST)
Received: by mail-pl1-x636.google.com with SMTP id
 d9443c01a7336-1c44a25bd0bso301845ad.0
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 07:24:23 -0700 (PDT)
Received: from [10.137.0.57] ([14.33.99.107]) by smtp.gmail.com with ESMTPSA id
 r8-20020a1709028bc800b001bf11cf2e21sm3531228plo.210.2023.09.15.07.24.20
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 15 Sep 2023 07:24:21 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 90fec5db-53d3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1694787862; x=1695392662; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to:from
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=EHTaktzv7bnoZ+Ko6dJsAHaA50L9PLb96lYLjtqY4v0=;
        b=iyYICjsLUcUCK6xs6VDl8QOfv2ke6zwvysEAk8ZGLE+TSRXuUo911+jRFiNHbdyTDu
         rL1ZIc+1YAj9XHDgpHV/17FyY0zb7pAjLo7q2N9nQesAgAQlAgyWLLLYuSDFil1KL61z
         kxIGWMVwxa3K6SlLX2TUdN9ikfm0zqaEsewTmRHTHlIxTfZHHh1vVM6hGOVyYPhRZoj5
         9PtQf3BCKRRYbAylMwCSTFOCpoBQ2/wT2VaKS+9z0AludEJ01F4MOsuGr+c6FlohRkEX
         AaL+4S2oouf0LVmUP700J7WSvVReUzmAji1xVv75SFnSnX6oCPdst7RLYPvyEOHJBTyV
         mV8Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694787862; x=1695392662;
        h=content-transfer-encoding:in-reply-to:references:cc:to:from
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=EHTaktzv7bnoZ+Ko6dJsAHaA50L9PLb96lYLjtqY4v0=;
        b=mwS9jXQaiCljSiJmr5F5j9kn6ZUbAKrYuOeBMm55SqRaxaOVQ4jIvhph4EBLFt0yS6
         I9VplFzu9J/q9s8zvXE33jwrMfA8nnabvP7dRWfEVgAmVH+ukBY9t5FOb+XxIfNu42x9
         ob3vlL0XklJkfLm5jbQ18lrKm5721xxQ626C7zLiQBwRGobFNSNJawdgV1iZGFHsVNWx
         wvElzCBIKoWLvhzPzhwDPr03eojSIdwvbswClQAPL9DysKupqO4V6e6Zboafa3fQ8A7g
         W53zmlB6BIaos7+M4RRo5Bm0xlEq9IfDpgUosPjWmYWdS3+HvJIXSKMSEJ8Kd6j2Dxgj
         UiQA==
X-Gm-Message-State: AOJu0Yxd4I274sXIQBMqYbe9GPClQHBgcfla+BZfkm7uEArGMp0xrIPA
	EKG1wNdvakLTud383K1X5vQ=
X-Google-Smtp-Source: AGHT+IHOC3EoV4PITFfm4nnfvVTEwlIOKsvmT9ctLPJOP0sIRZRuC/Hmt3QQIXlG3iqE7jlcTyMp5Q==
X-Received: by 2002:a17:902:ec8d:b0:1c3:22a9:8643 with SMTP id x13-20020a170902ec8d00b001c322a98643mr1860968plg.31.1694787862337;
        Fri, 15 Sep 2023 07:24:22 -0700 (PDT)
Message-ID: <d4073297-4095-20b2-13f2-e1d6e8bd9c17@gmail.com>
Date: Fri, 15 Sep 2023 23:24:17 +0900
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH 3/5] x86/emul: Add a pending_dbg field to
 x86_emulate_ctxt.retire
Content-Language: en-US
From: Jinoh Kang <jinoh.kang.kr@gmail.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-4-andrew.cooper3@citrix.com>
 <e17dd8a7-91d0-fc30-203e-09058ee5e61d@gmail.com>
In-Reply-To: <e17dd8a7-91d0-fc30-203e-09058ee5e61d@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/15/23 21:20, Jinoh Kang wrote:
> On 9/13/23 08:21, Andrew Cooper wrote:
>> diff --git a/xen/arch/x86/x86_emulate/x86_emulate.h b/xen/arch/x86/x86_emulate/x86_emulate.h
>> index 698750267a90..f0e74d23c378 100644
>> --- a/xen/arch/x86/x86_emulate/x86_emulate.h
>> +++ b/xen/arch/x86/x86_emulate/x86_emulate.h
>> @@ -588,15 +588,26 @@ struct x86_emulate_ctxt
>>      /* Canonical opcode (see below) (valid only on X86EMUL_OKAY). */
>>      unsigned int opcode;
>>  
>> -    /* Retirement state, set by the emulator (valid only on X86EMUL_OKAY). */
>> +    /*
>> +     * Retirement state, set by the emulator (valid only on X86EMUL_OKAY/DONE).
>> +     *
>> +     * TODO: all this state should be input/output from the VMCS PENDING_DBG,
>> +     * INTERRUPTIBILITY and ACTIVITIY fields.
>> +     */
>>      union {
>> -        uint8_t raw;
>> +        unsigned long raw;
> 
> Minor nit: this should be uint64_t for clarity.  Otherwise, it's not at all
> clear that the raw field covers the entire union, unless you remind myself
> that Xen does not support 32-bit host.

you remind yourself*.  What a weird typo to make :-(

-- 
Sincerely,
Jinoh Kang



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 14:27:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 14:27:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603188.940101 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9nM-0001rj-5R; Fri, 15 Sep 2023 14:27:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603188.940101; Fri, 15 Sep 2023 14:27:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9nM-0001rc-2o; Fri, 15 Sep 2023 14:27:44 +0000
Received: by outflank-mailman (input) for mailman id 603188;
 Fri, 15 Sep 2023 14:27:42 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qh9nK-0001rW-NT
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 14:27:42 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qh9nK-0005aU-6X; Fri, 15 Sep 2023 14:27:42 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qh9nJ-0004Ko-Vt; Fri, 15 Sep 2023 14:27:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=xnhn3aKc3YlLSDzkYZp/1f1Nzs9om5x/LxHz3ICgYi0=; b=P4HeswXKEWSd0uDBiIskYohPo4
	X+c6B/HN+ZtOarj61OejSW1qZIBd5hcc62RjnwadgXkW8UXqnJH4d7iQJFB2WI25Cxck0PCNb1dXe
	HhweCi7ocKaKCXAw88ZrycKx7OIj1NRh810UFQQnJzWbfCjldLwWSPCW5onlVuOWllhs=;
Message-ID: <1b85b1fc-72b7-4ed7-9236-3d82671ca44e@xen.org>
Date: Fri, 15 Sep 2023 15:27:40 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 1/2] xen/x86: io_apic: Introduce a command line option to
 skip timer check
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Cc: xen-devel@lists.xenproject.org, Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <20230818134441.45586-1-julien@xen.org>
 <20230818134441.45586-2-julien@xen.org>
 <ZQRiL0Mf5_5EC8oj@MacBook-MacBook-Pro-de-Roger.local>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ZQRiL0Mf5_5EC8oj@MacBook-MacBook-Pro-de-Roger.local>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Roger,

On 15/09/2023 14:54, Roger Pau Monné wrote:
> On Fri, Aug 18, 2023 at 02:44:40PM +0100, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> Currently, Xen will spend ~100ms to check if the timer works. If the
>> Admin knows their platform have a working timer, then it would be
>> handy to be able to bypass the check.
> 
> I'm of the opinion that the current code is at least dubious.
> 
> Specifically attempts to test the PIT timer, even when the hypervisor
> might be using a different timer.  At which point it mostly attempts
> to test that the interrupt routing from the PIT (or it's replacement)
> is correct, and that Xen can receive such interrupts.
> 
> We go to great lengths in order to attempt to please this piece of
> code, even when no PIT is available, at which point we switch the HPET
> to legacy replacement mode in order to satisfy the checks.
> 
> I think the current code is not useful, and I would be fine if it was
> just removed.

I am afraid I don't know enough the code to be able to say if it can be 
removed.

I also have no idea how common are such platforms nowadays (I suspect it 
is rather small). Which I why I went with a command line option.

> 
>>
>> Introduce a command line option 'no_timer_check' (the name is
>> matching the Linux parameter) for this purpose.
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>> ---
>>   docs/misc/xen-command-line.pandoc |  7 +++++++
>>   xen/arch/x86/io_apic.c            | 11 +++++++++++
>>   2 files changed, 18 insertions(+)
>>
>> diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
>> index 4872b9098e83..1f9d3106383f 100644
>> --- a/docs/misc/xen-command-line.pandoc
>> +++ b/docs/misc/xen-command-line.pandoc
>> @@ -1896,6 +1896,13 @@ This option is ignored in **pv-shim** mode.
>>   ### nr_irqs (x86)
>>   > `= <integer>`
>>   
>> +### no_timer_works (x86)
> 
> I find the naming confusing, and I would rather avoid negative named
> booleans.
> 
> Maybe it should be `check_pit_intr` and default to enabled for the
> time being?
Jan suggested to use timer-irq-works. Would you be happy with the name?

> 
>> +> `=<boolean>`
>> +
>> +> Default: `true`
> 
> I think the default is wrong here?  AFAICT no_timer_check will default
> to false.

Ah yes. In the downstream version, I went with setting to true by 
default as we don't support any platform with broken timer. I forgot to 
update the patch before sending.

> 
>> +
>> +Disables the code which tests for broken timer IRQ sources.
> 
> Hm, yes, it does check for one specific source, which doesn't need to
> be the currently selected timer.
> 
> "Disables the code which tests interrupt injection from the legacy
> i8259 timer."

I can update the comment.

> 
> Even that is not fully true, as it would resort to testing the HPET
> legacy mode if PIT doesn't work, but one could argue the HPET legacy
> mode is just a replacement for the i8254.
> 
>> +
>>   ### irq-max-guests (x86)
>>   > `= <integer>`
>>   
>> diff --git a/xen/arch/x86/io_apic.c b/xen/arch/x86/io_apic.c
>> index b3afef8933d7..4875bb97003f 100644
>> --- a/xen/arch/x86/io_apic.c
>> +++ b/xen/arch/x86/io_apic.c
>> @@ -57,6 +57,14 @@ bool __initdata ioapic_ack_forced;
>>   int __read_mostly nr_ioapic_entries[MAX_IO_APICS];
>>   int __read_mostly nr_ioapics;
>>   
>> +/*
>> + * The logic to check if the timer is working is expensive. So allow
>> + * the admin to bypass it if they know their platform doesn't have
>> + * a buggy timer.
> 
> I would mention i8254 here, as said this is quite likely not testing
> the currently in use timer.

Sure.

> Note that if you don't want to run the test in timer_irq_works() you
> can possibly avoid the code in preinit_pit(), as there no need to
> setup channel 0 in periodic mode then.

The channel also seems to be used as a fallback method for calibrating 
the APIC (see calibrate_APIC_clock()). AFAICT, the fallback method 
should only be used when the PIT is enabled.

I think it would still be feasible to avoid running the IRQ tests even 
when PIT is used. So it means, we cannot skip preinit_pit().

As a side note, I noticed that preinit_pit() is called during resume. 
But I can't find any use of channel 0 after boot. So maybe the call 
could be removed?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 14:30:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 14:30:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603196.940112 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9pY-00036n-Hc; Fri, 15 Sep 2023 14:30:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603196.940112; Fri, 15 Sep 2023 14:30:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qh9pY-00036g-EK; Fri, 15 Sep 2023 14:30:00 +0000
Received: by outflank-mailman (input) for mailman id 603196;
 Fri, 15 Sep 2023 14:29:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=upey=E7=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qh9pX-0002yz-CE
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 14:29:59 +0000
Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com
 [2a00:1450:4864:20::32b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5860c2ee-53d4-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 16:29:57 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-403012f276dso24117195e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 07:29:57 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 p14-20020a1c740e000000b003fe407ca05bsm7709831wmc.37.2023.09.15.07.29.56
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 15 Sep 2023 07:29:56 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5860c2ee-53d4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694788197; x=1695392997; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=2xcff1kcxhoz3KcUS9Eu7Vmqb5cn75vy1j5tZzB6S98=;
        b=l3pwbapNl2NQ+ETKlix2NXi6ExyEO29XGnovort2C3mUiy/dvMZd0lmLRvNX/PZRwl
         649Ufni0HaiJdRgwRVX5sZiJabQXwo7PWaFy02UoO/Fu6euho+dDNSfrn7fb5jbsUPAm
         xE99f8KMrld9sKu+TtCSZvgb+Wb6HPRVJNJaQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694788197; x=1695392997;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=2xcff1kcxhoz3KcUS9Eu7Vmqb5cn75vy1j5tZzB6S98=;
        b=S76ZelayDwrIemkQ8DEVViFWAX2kbAmUptjIxho7v5V2nFndMSXFY0xnoJJ5xNw1CX
         hP3xnRa+vIL0aQuqxYIwFEXItyfVNGTIj9a/3o78oV7Ir1oPuscQjk4NxhhCiaq0df38
         RJ8jaBsv9SBCK8ZepT8MDpto6av2rRhER/ZRQ4ySsVvPIrXmCVKgYbxle1Rgom+YBCda
         vp+jmta9J38zVr+wagTcBTvhK5rUCPcAtzFfmlpItAJHpBfcpzpa3sDbqqT6SFDtp8/x
         bdFQuZxQDYzJ2iDOEVV2kHyTn8F1ARocz45RHzF3oGUWhYTqRO+1bRYrvmLpZwvhxuj4
         fUXQ==
X-Gm-Message-State: AOJu0YzCe7/z3O8Wj+ZO2rthycwIfkuT47bjePstuccacQpHOFnffzEn
	GzkUmnRDxot4Ii723pqS5+XGPQ==
X-Google-Smtp-Source: AGHT+IEUFtnp2b6gDLlglWzNcbzFk7OFojOT3v9/f7IOLfsVNqyHECW6lE28HQ3G/VCn7a+ry20PjQ==
X-Received: by 2002:a05:600c:3645:b0:402:ea83:45cf with SMTP id y5-20020a05600c364500b00402ea8345cfmr1909619wmq.2.1694788197138;
        Fri, 15 Sep 2023 07:29:57 -0700 (PDT)
Message-ID: <eacdd0ca-2898-bc50-5982-8620a68a6783@citrix.com>
Date: Fri, 15 Sep 2023 15:29:56 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 3/5] x86/emul: Add a pending_dbg field to
 x86_emulate_ctxt.retire
Content-Language: en-GB
To: Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <20230912232113.402347-4-andrew.cooper3@citrix.com>
 <e17dd8a7-91d0-fc30-203e-09058ee5e61d@gmail.com>
 <d4073297-4095-20b2-13f2-e1d6e8bd9c17@gmail.com>
In-Reply-To: <d4073297-4095-20b2-13f2-e1d6e8bd9c17@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 15/09/2023 3:24 pm, Jinoh Kang wrote:
> On 9/15/23 21:20, Jinoh Kang wrote:
>> On 9/13/23 08:21, Andrew Cooper wrote:
>>> diff --git a/xen/arch/x86/x86_emulate/x86_emulate.h b/xen/arch/x86/x86_emulate/x86_emulate.h
>>> index 698750267a90..f0e74d23c378 100644
>>> --- a/xen/arch/x86/x86_emulate/x86_emulate.h
>>> +++ b/xen/arch/x86/x86_emulate/x86_emulate.h
>>> @@ -588,15 +588,26 @@ struct x86_emulate_ctxt
>>>      /* Canonical opcode (see below) (valid only on X86EMUL_OKAY). */
>>>      unsigned int opcode;
>>>  
>>> -    /* Retirement state, set by the emulator (valid only on X86EMUL_OKAY). */
>>> +    /*
>>> +     * Retirement state, set by the emulator (valid only on X86EMUL_OKAY/DONE).
>>> +     *
>>> +     * TODO: all this state should be input/output from the VMCS PENDING_DBG,
>>> +     * INTERRUPTIBILITY and ACTIVITIY fields.
>>> +     */
>>>      union {
>>> -        uint8_t raw;
>>> +        unsigned long raw;
>> Minor nit: this should be uint64_t for clarity.  Otherwise, it's not at all
>> clear that the raw field covers the entire union, unless you remind myself
>> that Xen does not support 32-bit host.
> you remind yourself*.  What a weird typo to make :-(

For better or worse, this is form preferred by the Xen coding style.

We deleted the 32bit build of the Xen more than a decade ago, and have
been 64bit-only ever since.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 15:00:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 15:00:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603207.940133 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJO-0004fc-G7; Fri, 15 Sep 2023 15:00:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603207.940133; Fri, 15 Sep 2023 15:00:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJO-0004dm-AU; Fri, 15 Sep 2023 15:00:50 +0000
Received: by outflank-mailman (input) for mailman id 603207;
 Fri, 15 Sep 2023 15:00:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhAJN-0004UV-01
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 15:00:49 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a741277f-53d8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 17:00:48 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a741277f-53d8-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694790048;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=TtLZP+3qIQQSlR+qOYXKHN3/07wVBW9kau99ogGnBZk=;
  b=Mkex/qgXmBpIT9rvDQGxQ4NzAr/1lcl5kg5XXxGrZsX6RuawAXJG5ZmJ
   +GLiYXN/VtzkcwTyL1HqSsAc0Ws3h0QiJyy3+kwLCqaFxGJw4dhYZ48LJ
   R5UfibZvlUbH/bdqkdH2XthWxAzAyH9V8S/S5Wt7CWgUZb51t49o4KtWg
   o=;
X-CSE-ConnectionGUID: X/kd13lbTuuvW1qLdo0dGQ==
X-CSE-MsgGUID: eyR7kQ8bR6y6ixMxkAXS4w==
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 123201211
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:hVEh0a96e4iFdMqnzRk6DrUDn36TJUtcMsCJ2f8bNWPcYEJGY0x3x
 jRKWz+Ha6zcNGD1L98kbI6x8x5Q6p7XzNcwSVQ+rno8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks11BjOkGlA5AdmNKkW5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkl+s
 v8UcWsJZCyemvyJmaufRu40iusaeZyD0IM34hmMzBncBPciB5vCX7/L9ZlT2zJYasJmRKiEI
 ZBDMHw2MUqGOkcUUrsUIMtWcOOAr3/zaTBH7nmSorI6+TP7xw1tyrn9dtHSf7RmQO0MxB3C/
 jucpj2R7hcyOc2lljm8oniW2P6RnDPeSIE7JIbk6as/6LGU7jNKU0BHPbehmtGph0j7V99BJ
 kg8/is1sbN05EGtVsP6XRCzvDiDpBF0c/h6HvA+6QqN4rHJ+AvfDW8BJhZebPQ2uclwQiYlv
 mJlhPuwW2Yp6ufMDyvAqPHN92ja1TUpwXEqVWgHQVJe59PfvZwtsUvWatpkSKKat4igcd3v+
 AyioC87jrQVqMcE0aSn4FzK6w6RSoj1oh0dvVuOAD/8hu9tTMv8PtHztwCHhRpVBNzBJmRtq
 kTojCR3AAomKZiW3BKAT+wWdF1Cz6bUaWaM6bKD8nRIythMx5JBVdoAiN2dDB0zWirhRdMOS
 BaJ0T69HLcJYBOXgVZfOupd8fgCw6n6DsjCXfvJdNdIaZUZXFbZrX0xPBDLhDGyyRhEfUQD1
 XGzK57E4ZEyU/8P8dZLb71Fje9DKt4Wmws/uqwXPzz4iOHDNRZ5uJ8OMUeUb/BR0U93iFy9z
 jqrDOPTk083eLSnMkHqHXs7cQhiwY4TWcqn9KS6t4erfmJbJY3WI6SNmel7It0/zvQ9eyWh1
 ijVZ3K0AWHX3RXvQThmoFg6AF8zdf6TdU4GABE=
IronPort-HdrOrdr: A9a23:vbMVKqrjiZtVGwPSTliQoVMaV5rveYIsimQD101hICG9Evb0qy
 nOpoV/6faQslwssR4b9uxoVJPvfZq+z+8W3WByB9eftWDd0QPFEGgL1+DfKlbbak7DH4BmtJ
 uJc8JFeafN5VoRt7eG3OFveexQvOVu88qT9JjjJ28Gd3APV0n5hT0JcjpyFCdNNW57LKt8Lr
 WwzOxdqQGtfHwGB/7LfUXsD4D41rv2fIuNW29+OyIa
X-Talos-CUID: 9a23:cC+Yq27vzzBFUhJF79ssxAkXFpl+dnfh0WrOHBahLWpuELG6cArF
X-Talos-MUID: 9a23:q9Z/AgowkSQu2mPbEvcezzxzDphr2vSkMh4cz5QWntmHHBxLZyjI2Q==
X-IronPort-AV: E=Sophos;i="6.02,149,1688443200"; 
   d="scan'208";a="123201211"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 6/9] x86/entry: Track the IST-ness of an entry for the exit paths
Date: Fri, 15 Sep 2023 16:00:35 +0100
Message-ID: <20230915150038.602577-7-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915150038.602577-1-andrew.cooper3@citrix.com>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
entry/exit asm, so it only needs setting in the IST path.

As this is subtle and fragile, add check_ist_exit() to be used in debugging
builds to cross-check that the ist_exit boolean matches the entry vector.

Write check_ist_exit() it in C, because it's debug only and the logic more
complicated than I care to maintain in asm.

For now, we only need to use this signal in the exit-to-Xen path, but some
exit-to-guest paths happen in IST context too.  Check the correctness in all
exit paths to avoid the logic bitrotting.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>

v2:
 * %r12 -> %r12d
 * Extend commit message
 * Tweak surrounding context
---
 xen/arch/x86/traps.c               | 13 +++++++++++++
 xen/arch/x86/x86_64/compat/entry.S |  9 ++++++++-
 xen/arch/x86/x86_64/entry.S        | 22 ++++++++++++++++++++--
 3 files changed, 41 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index dead728ce329..0a005f088bca 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -2259,6 +2259,19 @@ void asm_domain_crash_synchronous(unsigned long addr)
         do_softirq();
 }
 
+#ifdef CONFIG_DEBUG
+void check_ist_exit(const struct cpu_user_regs *regs, bool ist_exit)
+{
+    const unsigned int ist_mask =
+        (1U << X86_EXC_NMI) | (1U << X86_EXC_DB) |
+        (1U << X86_EXC_DF)  | (1U << X86_EXC_MC);
+    uint8_t ev = regs->entry_vector;
+    bool is_ist = (ev < X86_EXC_NUM) && ((1U << ev) & ist_mask);
+
+    ASSERT(is_ist == ist_exit);
+}
+#endif
+
 /*
  * Local variables:
  * mode: C
diff --git a/xen/arch/x86/x86_64/compat/entry.S b/xen/arch/x86/x86_64/compat/entry.S
index bd5abd8040bd..7504bfb4f326 100644
--- a/xen/arch/x86/x86_64/compat/entry.S
+++ b/xen/arch/x86/x86_64/compat/entry.S
@@ -117,8 +117,15 @@ compat_process_trap:
         call  compat_create_bounce_frame
         jmp   compat_test_all_events
 
-/* %rbx: struct vcpu, interrupts disabled */
+/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
 ENTRY(compat_restore_all_guest)
+
+#ifdef CONFIG_DEBUG
+        mov   %rsp, %rdi
+        mov   %r12, %rsi
+        call  check_ist_exit
+#endif
+
         ASSERT_INTERRUPTS_DISABLED
         mov   $~(X86_EFLAGS_IOPL | X86_EFLAGS_VM), %r11d
         and   UREGS_eflags(%rsp),%r11d
diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S
index 525877e97330..e5055e5bbf9f 100644
--- a/xen/arch/x86/x86_64/entry.S
+++ b/xen/arch/x86/x86_64/entry.S
@@ -142,8 +142,15 @@ process_trap:
 
         .section .text.entry, "ax", @progbits
 
-/* %rbx: struct vcpu, interrupts disabled */
+/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
 restore_all_guest:
+
+#ifdef CONFIG_DEBUG
+        mov   %rsp, %rdi
+        mov   %r12, %rsi
+        call  check_ist_exit
+#endif
+
         ASSERT_INTERRUPTS_DISABLED
 
         /* Stash guest SPEC_CTRL value while we can read struct vcpu. */
@@ -659,8 +666,15 @@ ENTRY(early_page_fault)
         .section .text.entry, "ax", @progbits
 
         ALIGN
-/* No special register assumptions. */
+/* %r12=ist_exit */
 restore_all_xen:
+
+#ifdef CONFIG_DEBUG
+        mov   %rsp, %rdi
+        mov   %r12, %rsi
+        call  check_ist_exit
+#endif
+
         /*
          * Check whether we need to switch to the per-CPU page tables, in
          * case we return to late PV exit code (from an NMI or #MC).
@@ -1087,6 +1101,10 @@ handle_ist_exception:
 .L_ist_dispatch_done:
         mov   %r15, STACK_CPUINFO_FIELD(xen_cr3)(%r14)
         mov   %bl, STACK_CPUINFO_FIELD(use_pv_cr3)(%r14)
+
+        /* This is an IST exit */
+        mov   $1, %r12d
+
         cmpb  $X86_EXC_NMI, UREGS_entry_vector(%rsp)
         jne   ret_from_intr
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 15:00:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 15:00:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603206.940129 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJO-0004YO-8b; Fri, 15 Sep 2023 15:00:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603206.940129; Fri, 15 Sep 2023 15:00:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJO-0004Xp-1p; Fri, 15 Sep 2023 15:00:50 +0000
Received: by outflank-mailman (input) for mailman id 603206;
 Fri, 15 Sep 2023 15:00:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhAJM-0004UV-Mu
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 15:00:48 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a67cbca2-53d8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 17:00:46 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a67cbca2-53d8-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694790046;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=izsyaKGJeUnhPk6j2osd2bXLpPVhEb5F2wtxQKRG81U=;
  b=WHixYv+Xe4E8hpMIAIMP7O1QjxRjIKCQdzOmaSd7YmbIlKAMeew5xnjB
   +cQNF8u1ZfOyBsnUUbwvXm4Kt3ofiIdASb773OsPIw3sy8cuSLH1e7LdW
   cFv32Gz658fyygle7FWwGEMmTeTBYeVuQ02aICkbvZ9giZlbGR1G84pzm
   c=;
X-CSE-ConnectionGUID: X/kd13lbTuuvW1qLdo0dGQ==
X-CSE-MsgGUID: EbxX6fuzQ8a5rCXSy6+RKw==
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 123201210
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:8OAk86NtW1zWR3fvrR26l8FynXyQoLVcMsEvi/4bfWQNrUohhTQAm
 DdLC22CMq3fajGmLtoibI++8EhT6pTTz4BgQQto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/jrRC9H5qyo42tJ5wFmP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0tYwAm0Xr
 vgSFC0QcC/ansa6x+q3ZdA506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI
 ZNEN3w2Nk+ojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXQHp8NxxzB/
 goq+UzUCAEqatKC2wPV+y+2rd/0jH24YqENQejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK
 lcI4Ww+oK4q7kupQ9LhGRqirxasnDQRRt5RGO0S8xyWx+zf5APxLncAZi5MbpohrsBeeNAx/
 gbXxZWzX2Up6eDLDyvHrd94sA9eJwAlamwOPHQARzcY/sfc+ZgXghWXQvlaRfvdYsLOJRn8x
 DWDrS4bjroVjNIW26jTwW0rkw5AtbCSEFdru1y/snaNq1ogOdX7P9DABU3zt64oEWqPcrWWU
 JHoceC65ftGM5yCnTflrA4lTODwvKbt3NExbDdS83gdG9aFoS7LkWN4umsWyKJV3iEsIGWBX
 aMrkVkNjKK/xVPzBUONX6q/Ct4x0Y/rHsn/W/bfY7JmO8YgKFDeono1NBHJjwgBdXTAd4llY
 f93lu72Vh4n5VlPlmLqF4/xL5d1rszB+Y8jbc+ilEn2uVZvTHWUVa0EIDOzghMRtcu5TPHu2
 48HbaOikkwPONASlwGLqeb/23hWdylkbX03wuQLHtO+zv1OQz15UaWIkOlwK+SIXc19z4/1w
 510YWcAoHKXuJENAVzihqxLAF83YatCkA==
IronPort-HdrOrdr: A9a23:UCQYH6k018Pm5S6EpkOjOzXFnSLpDfLo3DAbv31ZSRFFG/Fw9/
 rCoB17726QtN91YhsdcL+7V5VoLUmzyXcX2/hyAV7BZmnbUQKTRekP0WKL+Vbd8kbFh41gPM
 lbEpSXCLfLfCJHZcSR2njELz73quP3jJxBho3lvghQpRkBUdAF0+/gYDzranGfQmN9dP0EPa
 vZ3OVrjRy6d08aa8yqb0N1JNQq97Xw5fTbiQdtPW9f1DWz
X-Talos-CUID: 9a23:bIgqRGMU0z1ZMu5DaG5k+BdPHsoZb2DD8y7JB0O/UWpGcejA
X-Talos-MUID: 9a23:6kwvBgS7jObFTYURRXTBjiFSasl18Z3+AR0XuqU9qpfHDw9vbmI=
X-IronPort-AV: E=Sophos;i="6.02,149,1688443200"; 
   d="scan'208";a="123201210"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 4/9] x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
Date: Fri, 15 Sep 2023 16:00:33 +0100
Message-ID: <20230915150038.602577-5-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915150038.602577-1-andrew.cooper3@citrix.com>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

... to better explain how they're used.

Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
corner case when e.g. an NMI hits late in an exit-to-guest path.

Leave a TODO, which will be addressed in subsequent patches which arrange for
DO_COND_VERW to be safe within SPEC_CTRL_EXIT_TO_XEN.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>

This was decided not to be XSA-worthy, as guests can't usefully control when
IST events occur.

v2:
 * Rewrite.
---
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 36 ++++++++++++++++++++----
 1 file changed, 31 insertions(+), 5 deletions(-)

diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index f768b0f48a0b..8996fe3fc0ef 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -218,7 +218,10 @@
     wrmsr
 .endm
 
-/* Use after an entry from PV context (syscall/sysenter/int80/int82/etc). */
+/*
+ * Used after an entry from PV context: SYSCALL, SYSENTER, INT,
+ * etc.  There is always a guest speculation state in context.
+ */
 .macro SPEC_CTRL_ENTRY_FROM_PV
 /*
  * Requires %rsp=regs/cpuinfo, %rdx=0
@@ -233,7 +236,11 @@
         X86_FEATURE_SC_MSR_PV
 .endm
 
-/* Use in interrupt/exception context.  May interrupt Xen or PV context. */
+/*
+ * Used after an exception or maskable interrupt, hitting Xen or PV context.
+ * There will either be a guest speculation context, or (baring fatal
+ * exceptions) a well-formed Xen speculation context.
+ */
 .macro SPEC_CTRL_ENTRY_FROM_INTR
 /*
  * Requires %rsp=regs, %r14=stack_end, %rdx=0
@@ -248,7 +255,10 @@
         X86_FEATURE_SC_MSR_PV
 .endm
 
-/* Use when exiting to PV guest context. */
+/*
+ * Used when exiting from any entry context, back to PV context.  This
+ * includes from an IST entry which moved onto the primary stack.
+ */
 .macro SPEC_CTRL_EXIT_TO_PV
 /*
  * Requires %rax=spec_ctrl, %rsp=regs/info
@@ -260,7 +270,13 @@
 .endm
 
 /*
- * Use in IST interrupt/exception context.  May interrupt Xen or PV context.
+ * Used after an IST entry hitting Xen or PV context.  Special care is needed,
+ * because when hitting Xen context, there may not a well-formed speculation
+ * context.  (i.e. it can hit in the middle of SPEC_CTRL_{ENTRY,EXIT}_*
+ * regions.)
+ *
+ * An IST entry which hits PV context moves onto the primary stack and leaves
+ * via SPEC_CTRL_EXIT_TO_PV, *not* SPEC_CTRL_EXIT_TO_XEN.
  */
 .macro SPEC_CTRL_ENTRY_FROM_INTR_IST
 /*
@@ -319,7 +335,14 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
     UNLIKELY_END(\@_serialise)
 .endm
 
-/* Use when exiting to Xen context. */
+/*
+ * Use when exiting from any entry context, back to Xen context.  This
+ * includes returning to other SPEC_CTRL_{ENTRY,EXIT}_* regions with an
+ * incomplete speculation context.
+ *
+ * Because we might have interrupted Xen beyond SPEC_CTRL_EXIT_TO_$GUEST, we
+ * need to treat this as if it were an EXIT_TO_$GUEST case too.
+ */
 .macro SPEC_CTRL_EXIT_TO_XEN
 /*
  * Requires %rbx=stack_end
@@ -344,6 +367,9 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
     wrmsr
 
 .L\@_skip_sc_msr:
+
+    /* TODO VERW */
+
 .endm
 
 #endif /* __ASSEMBLY__ */
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 15:00:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 15:00:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603205.940122 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJN-0004Uu-Tb; Fri, 15 Sep 2023 15:00:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603205.940122; Fri, 15 Sep 2023 15:00:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJN-0004Un-Q9; Fri, 15 Sep 2023 15:00:49 +0000
Received: by outflank-mailman (input) for mailman id 603205;
 Fri, 15 Sep 2023 15:00:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhAJM-0004UV-A2
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 15:00:48 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a47306e3-53d8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 17:00:45 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a47306e3-53d8-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694790045;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=xCdonSEcxaU4vwlQq38DDIMhFTLSIUdrwIj+TgYH0mY=;
  b=J+gUtUO1Abd0hiHosLLr/FeGhBT39vYZRXG4fufJ9XKSSmuJTBuDHmWb
   zoELZZg3M2GfYpaqxM+1tM+CuG8jVoHduzeyKNXjknoEQKbUcM4Kifc5x
   srf7wzHwPZ9HLJdUokeju3D7mnzpRDwlb2wjVQWKCSi3zrUhx5GfN1Ukq
   w=;
X-CSE-ConnectionGUID: X/kd13lbTuuvW1qLdo0dGQ==
X-CSE-MsgGUID: qYqSKn0vRF+3Dh3Y+UsXew==
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 123201208
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:+2eaAqLujdG83sdyFE+RG5UlxSXFcZb7ZxGr2PjKsXjdYENSgzMPz
 WNKDWCCb//ZN2H9LY8jPtmy8h5XuJHVnYM3TFdlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrZwP9TlK6q4mhA7wVjPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5HRmJCr
 KccIgwQcw683vuSzLXjRsZV05FLwMnDZOvzu1llxDDdS/0nXYrCU+PB4towMDUY354UW6yEP
 oxANGQpNU6bC/FMEg5/5JYWteGknHTgNRZfr0qYv/Ef6GnP1g1hlrPqNbI5f/TTH54Pxh/C/
 jKuE2LRGyADD/+ZkSS/3DH3qu+UrGDGQ7IfC+jtnhJtqALKnTFCYPEMbnOrrP/8hkOgVtZ3L
 00P5jFovaU07FasTNT2Q1u/unHsljw2VsdUEuY6wBqQ0aeS6AGcbkAbShZRZdpgs9U5LRQv3
 0WMlsnkBhRutqOUUnOX8rqIrTK0NjMRJGVEbigBJSMH6t/vupAujTrAS99iFOi+ididJN3r6
 2nU9m5k3exV1JNVkfzhpjgrng5AuLD5CQ05v17TVF648x1GPZeBa4vw5XfiuKMowJmicnGNu
 30Nms675e8IDI2QmCHlfNjhDI1F9N7ebmSC3AcH840Jsm30piX9Jdw4DCRWfh8BDyoSRdP+j
 KY/Uyt17YQbAnalZLQfj2mZW5VzlviI+TgIu5npgjtyjnpZLl/vEMJGPxT4M4XRfK8EyPtXB
 HtjWZzwZUv28Iw+pNZMe88T0KUw2gc1zn7JSJbwwnyPiOTPOCHMF+xeYQTXPojVCZ9oRi2Pq
 76z0OPQkH1ivBDWOHGLoeb/03hURZTEOXwGg5MOLbPSSuaXMGogF+XQ0dscl39NxsxoehPz1
 ijlACdwkQOv7UAr3C3WMhiPnpuzB8cgxZ/6VARwVWuVN48LOtr3tv1GJsFmLdHKNoVLlJZJc
 hXMQO3Yatwnd9gN0211gUXVxGC6SCmWuA==
IronPort-HdrOrdr: A9a23:U6LJRaHe1nY8ivoQpLqELMeALOsnbusQ8zAXPiBKJCC9E/bo8v
 xG+c5w6faaslkssR0b9+xoW5PwI080l6QU3WB5B97LMDUO0FHCEGgI1/qA/9SPIUzDHu4279
 YbT0B9YueAcGSTW6zBkXWF+9VL+qj5zEix792uq0uE1WtRGtldBwESMHf9LmRGADNoKLAeD5
 Sm6s9Ot1ObCA8qhpTSPAhiYwDbzee77a7bXQ==
X-Talos-CUID: 9a23:NKOnB2xbek+JuNT5Eg/BBgUkXcMpKybZxkvNPlGHUH9NRLrNRXCprfY=
X-Talos-MUID: =?us-ascii?q?9a23=3AsLimug4mqFX8qBCnJEKIsQ0txoxx0r2VK0ZVj68?=
 =?us-ascii?q?o+JKoNXdBeAqGvDmoF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.02,149,1688443200"; 
   d="scan'208";a="123201208"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>,
	=?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?=
	<marmarek@invisiblethingslab.com>, Jason Andryuk <jandryuk@gmail.com>
Subject: [PATCH 0/9] x86/spec-ctrl: AMD DIV fix, and VERW prerequisite bugfixes
Date: Fri, 15 Sep 2023 16:00:29 +0100
Message-ID: <20230915150038.602577-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Patch 9 is the XSA-439 fix for the AMD DIV issue, disclosed insufficiently
ahead of August 8th for us to prepare a fix for the embargo.

Patches 1 thru 8 are prerequisites, identified while trying to write patch 9.

All 9 patches are for all security trees.

Andrew Cooper (9):
  x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
  x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
  x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm
    macros
  x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
  x86/entry: Adjust restore_all_xen to hold stack_end in %r14
  x86/entry: Track the IST-ness of an entry for the exit paths
  x86/spec-ctrl: Issue VERW during IST exit to Xen
  x86/amd: Introduce is_zen{1,2}_uarch() predicates
  x86/spec-ctrl: Mitigate the Zen1 DIV leakge

 docs/misc/xen-command-line.pandoc        |   6 +-
 xen/arch/x86/cpu/amd.c                   |  18 +--
 xen/arch/x86/hvm/svm/entry.S             |   1 +
 xen/arch/x86/include/asm/amd.h           |  11 ++
 xen/arch/x86/include/asm/cpufeatures.h   |   2 +-
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 152 ++++++++++++++++-------
 xen/arch/x86/spec_ctrl.c                 |  49 +++++++-
 xen/arch/x86/traps.c                     |  13 ++
 xen/arch/x86/x86_64/compat/entry.S       |   9 +-
 xen/arch/x86/x86_64/entry.S              |  30 ++++-
 10 files changed, 220 insertions(+), 71 deletions(-)

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 15:01:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 15:01:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603208.940152 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJX-0005Ku-SK; Fri, 15 Sep 2023 15:00:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603208.940152; Fri, 15 Sep 2023 15:00:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJX-0005Kn-NY; Fri, 15 Sep 2023 15:00:59 +0000
Received: by outflank-mailman (input) for mailman id 603208;
 Fri, 15 Sep 2023 15:00:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhAJW-0004UV-80
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 15:00:58 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id abef32b7-53d8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 17:00:57 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: abef32b7-53d8-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694790057;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=mCnqiLXy0cb8cqZh1FcVLN8e9wmVJ7m7NThYBUa7SXs=;
  b=fyXZJFbzx9/XLIDBIyb+yYkoSkKrgptY3/qKpciLjutuD5pSEg5T45sv
   9+JM07j7D1UBPY2nhwM69CqLxWnMfl9qxzg63lWEIBShmjwjINBCyfUG4
   ogaiI1cQ6YCegVWO26mSSRDexHq6T/gvJ4UcQOKxUUm32elq/59wUQjNR
   w=;
X-CSE-ConnectionGUID: T6/GhXioRSe6SFi4s144KQ==
X-CSE-MsgGUID: 7qOK/haVQ8qBVL4Lvh+2eA==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125509273
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:9VNr0qsNzeTluX89C7THC199p+fnVEleMUV32f8akzHdYApBsoF/q
 tZmKT2HOavca2SkfYolb4u2oRxUuZLcndNmTgI9rXw1RC1A+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4lv0gnRkPaoQ5A6HyiFPZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwFG5KQRCzhuWM+7/lccdt2t96cJXIBdZK0p1g5Wmx4fcORJnCR+PB5MNC3Sd2jcdLdRrcT
 5NHM3w1Nk2GOkARfA5NU/rSn8/x7pX7WxRepEiYuuwc5G/LwRYq+LPsLMDUapqBQsA9ckOw/
 zibojyoWE5BXDCZ4WWc1VHrhubxpHPicrw2SJmm9r0wjXTGkwT/DzVJDADm8JFVkHWWS99Zb
 kAZ5Ccqhawz71CwCMnwWQWip3yJtQJaXMBfe8U44gyQzqvf4y6CG3MJCDVGbbQOq8seVTEsk
 FiTkLvU6SdH6ePPDyjHr/HN8G30YHJORYMfWcMaZTdbpPbjkIA0tCnCEO1NEfKu14GpOgill
 lhmsxMCr7kUiMcK0YCy8lbGny+gq/D1c+Il2unEdjn7t10kPeZJc6TtsAGGtqgYcO51W3Hb5
 BA5d96iAPfi5H1nvAiEW60zEb6g/J5p2xWM0Ac0T/HNG9lAkkNPnLy8AhkkdC+F0e5eI1cFh
 XM/XisIv/du0IOCN/MfXm5II51CIVLcPdrkTOvISdFFf4J8cgSKlAk3Ox/Mhjm0zBh0yv1nU
 Xt+TSpKJSxKYUiA5GDqL9rxLJdxnnxurY8tbc+TI+ubPUq2OyfOFOZt3KqmZeEl9qKUyDg5A
 P4GX/ZmPy53CbWkCgGOqN57ELz/BSRjbXwAg5ANJ7Hrz8sPMD1JNsI9Npt6J9Q/xf0EzLaYl
 px/M2cBoGfCabT8AV3iQhhehHnHB/6TcVpT0fQQAGuV
IronPort-HdrOrdr: A9a23:I5YfkaB7wNnMRxflHemW55DYdb4zR+YMi2TDgXoBLiC9Ffbo9P
 xG/c566faasl0ssR0b8+xoW5PgfZq/z/FICNIqTNOftWDd0QOVxedZgLcKqAePJ8SRzIJgPQ
 gLSdkZNDVdZ2IK7/oTQWODYrMd/OU=
X-Talos-CUID: =?us-ascii?q?9a23=3AnMSP/Wl0Ss/lLHOtALZFCWPi+zHXOUGDi1jQE06?=
 =?us-ascii?q?/M11kFoa7SAOLof84sPM7zg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3A7h0LEg6NdKM0iDV68lCoC3T4xow3+oONT0AEr6x?=
 =?us-ascii?q?WouO6EXBUJTfe1jmeF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.02,149,1688443200"; 
   d="scan'208";a="125509273"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<jbeulich@suse.com>, Jan Beulich <JBeulich@suse.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>
Subject: [PATCH 1/9] x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
Date: Fri, 15 Sep 2023 16:00:30 +0100
Message-ID: <20230915150038.602577-2-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915150038.602577-1-andrew.cooper3@citrix.com>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
dropped the only user, leaving behind the (incorrect) implication that Xen had
split exit paths.

Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
to SPEC_CTRL_EXIT_TO_XEN for consistency.

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>

v2:
 * Tweak comment.
---
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 10 ++--------
 xen/arch/x86/x86_64/entry.S              |  2 +-
 2 files changed, 3 insertions(+), 9 deletions(-)

diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index f48f9e75e8dc..cfba35560333 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -67,7 +67,6 @@
  *  - SPEC_CTRL_ENTRY_FROM_PV
  *  - SPEC_CTRL_ENTRY_FROM_INTR
  *  - SPEC_CTRL_ENTRY_FROM_INTR_IST
- *  - SPEC_CTRL_EXIT_TO_XEN_IST
  *  - SPEC_CTRL_EXIT_TO_XEN
  *  - SPEC_CTRL_EXIT_TO_PV
  *
@@ -256,11 +255,6 @@
     ALTERNATIVE "", __stringify(DO_SPEC_CTRL_ENTRY maybexen=1),         \
         X86_FEATURE_SC_MSR_PV
 
-/* Use when exiting to Xen context. */
-#define SPEC_CTRL_EXIT_TO_XEN                                           \
-    ALTERNATIVE "",                                                     \
-        DO_SPEC_CTRL_EXIT_TO_XEN, X86_FEATURE_SC_MSR_PV
-
 /* Use when exiting to PV guest context. */
 #define SPEC_CTRL_EXIT_TO_PV                                            \
     ALTERNATIVE "",                                                     \
@@ -327,8 +321,8 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
     UNLIKELY_END(\@_serialise)
 .endm
 
-/* Use when exiting to Xen in IST context. */
-.macro SPEC_CTRL_EXIT_TO_XEN_IST
+/* Use when exiting to Xen context. */
+.macro SPEC_CTRL_EXIT_TO_XEN
 /*
  * Requires %rbx=stack_end
  * Clobbers %rax, %rcx, %rdx
diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S
index 81dd2c74b876..a1c860f56949 100644
--- a/xen/arch/x86/x86_64/entry.S
+++ b/xen/arch/x86/x86_64/entry.S
@@ -673,7 +673,7 @@ UNLIKELY_START(ne, exit_cr3)
 UNLIKELY_END(exit_cr3)
 
         /* WARNING! `ret`, `call *`, `jmp *` not safe beyond this point. */
-        SPEC_CTRL_EXIT_TO_XEN_IST /* Req: %rbx=end, Clob: acd */
+        SPEC_CTRL_EXIT_TO_XEN     /* Req: %rbx=end, Clob: acd */
 
         RESTORE_ALL adj=8
         iretq
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 15:01:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 15:01:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603209.940162 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJZ-0005bH-2k; Fri, 15 Sep 2023 15:01:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603209.940162; Fri, 15 Sep 2023 15:01:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJZ-0005b8-00; Fri, 15 Sep 2023 15:01:01 +0000
Received: by outflank-mailman (input) for mailman id 603209;
 Fri, 15 Sep 2023 15:00:59 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhAJX-0004UV-MC
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 15:00:59 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ad71710e-53d8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 17:00:58 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ad71710e-53d8-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694790058;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=Pf82kjUXJ6jZJAJI5DPaVOzFlKCNTwtgYRVi04CNhmw=;
  b=WZ6ghBkDxbMesPnGG3WRo9zSvieQB42p83V2eoEcSOR+apHVmVozBPOJ
   383kYrnSKlE8uSkhHoYwHnQ8BGB96PshmIANyqviBXMQvg1VxM2+U7X5b
   EuMgFxRJvBJ1+gNHoU/JBBJEwTmmynJ6AIzkjpj3kfIlgs+JqOKCZuvAI
   A=;
X-CSE-ConnectionGUID: T6/GhXioRSe6SFi4s144KQ==
X-CSE-MsgGUID: XvE0CHgRTJij4wJOTrLyEw==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125509276
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:rnYqYaih39rx7pHhYPaMPSFmX161fxAKZh0ujC45NGQN5FlHY01je
 htvXT/VOvrYM2Gnco1zbd60pEkP78TRy4dkGQRu/CwwHyMb9cadCdqndUqhZCn6wu8v7q5Ex
 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOhTraCYmYoHVMMpB4J0XpLg/Q+jpNjne+3CgaMv
 cKai8DEMRqu1iUc3lg8sspvkzsx+qyo0N8klgZmP6sT7QaDzyN94K83fsldEVOpGuG4IcbiL
 wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ
 OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+
 tQkdncibiCCgNiNzeyAZOgwnZ1/cOrSadZ3VnFIlVk1DN4jSJHHBa7L+cVZzHE7gcUm8fT2P
 pRDL2A1NVKZPkMJYw1MYH49tL7Aan3XWjtUsl+K44Ew5HDe1ldZ27nxKtvFPNeNQK25m27B/
 D+bpzWjXU9y2Nq3+SSoqlmMidXzvyL5BJ0wM4Gi0u9HnwjGroAUIEJPDgbqyRWjsWauVtQaJ
 0EK9y4Gqakp6FftXtT7Rwe/onOPolgbQdU4O+8w5RyJy6HUyx2EHWVCRTlEAPQ5sOcmSDps0
 UWG9+4FHhQ27ufTEyjEsO7J83XrY3N9wXI+iTEscVVCzNnToYYJtR+RdfhiTLXs0oHWIGSlq
 9yVlxQWi7IWhM8N8qy0+1Hbnj6hzqT0oh4JChb/BTz8sF4gDGKxT8nxsAWAs64cRGqMZgPZ1
 EXojfRy+wzn4XulsCWWCNsAE7iyjxpuGG2N2AU/d3XNGtnExpJCQWyyyGsuTKuKGpxeEdMMX
 KM0kVoKjKK/xFPwMcdKj3uZUqzGN5TIG9X/TezzZdFTeJV3fwLv1HgwNBLJhjmxwBB3zflX1
 XKnnSCEVyZy5UNPlmbeegvg+eVzmnBWKZ37GvgXMChLIZLBPSXIGN/pwXOFb/wj7bPsnekm2
 483Cid+8D0GCLeWSnCOoeYuwaUicSBT6Wbe95YGKYZu42NORAkcNhMm6eh9I9Y/xvUPx7egE
 7PUchYw9WcTTEbvcW2iAk2PopuyNXqjhRrX5RARAGs=
IronPort-HdrOrdr: A9a23:y5DG+qnuLm++I8yHzvsl/6B+S4TpDfLT3DAbv31ZSRFFG/Fw9v
 re5cjzuiWE7Qr5NEtQ++xoW5PwIk80l6QFhbX5VI3KNGKN1VdAR7sSircKrQeQfREWNdQz6U
 6jScRD4RHLbGRSvILC2y+fPO8H4P67mZrY/dv2/jNVVgdtZLhn7wBlTiimMmAefng8ObMJUK
 OG4MxJvjyhfmlSSP+aKD0qY8jvzue77q4PR3Y9dmIaAc21/E6VAXfBfXil4is=
X-Talos-CUID: 9a23:NVMriWMKTVk4sO5DZHcg204kG8cfSXCD91nRf1ThVTpKcejA
X-Talos-MUID: 9a23:TXBhhAb5YlfkOOBThyHB3BpCO/1UwaWsVF8vtqkcn9ipKnkl
X-IronPort-AV: E=Sophos;i="6.02,149,1688443200"; 
   d="scan'208";a="125509276"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<jbeulich@suse.com>, Jan Beulich <JBeulich@suse.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>
Subject: [PATCH 2/9] x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
Date: Fri, 15 Sep 2023 16:00:31 +0100
Message-ID: <20230915150038.602577-3-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915150038.602577-1-andrew.cooper3@citrix.com>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.

When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
is going to be too generic shortly.

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 40 ++++++++++--------------
 1 file changed, 16 insertions(+), 24 deletions(-)

diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index cfba35560333..72e7046f70d6 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -199,27 +199,6 @@
     wrmsr
 .endm
 
-.macro DO_SPEC_CTRL_EXIT_TO_XEN
-/*
- * Requires %rbx=stack_end
- * Clobbers %rax, %rcx, %rdx
- *
- * When returning to Xen context, look to see whether SPEC_CTRL shadowing is
- * in effect, and reload the shadow value.  This covers race conditions which
- * exist with an NMI/MCE/etc hitting late in the return-to-guest path.
- */
-    xor %edx, %edx
-
-    testb $SCF_use_shadow, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%rbx)
-    jz .L\@_skip
-
-    mov STACK_CPUINFO_FIELD(shadow_spec_ctrl)(%rbx), %eax
-    mov $MSR_SPEC_CTRL, %ecx
-    wrmsr
-
-.L\@_skip:
-.endm
-
 .macro DO_SPEC_CTRL_EXIT_TO_GUEST
 /*
  * Requires %eax=spec_ctrl, %rsp=regs/cpuinfo
@@ -328,11 +307,24 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
  * Clobbers %rax, %rcx, %rdx
  */
     testb $SCF_ist_sc_msr, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%rbx)
-    jz .L\@_skip
+    jz .L\@_skip_sc_msr
 
-    DO_SPEC_CTRL_EXIT_TO_XEN
+    /*
+     * When returning to Xen context, look to see whether SPEC_CTRL shadowing
+     * is in effect, and reload the shadow value.  This covers race conditions
+     * which exist with an NMI/MCE/etc hitting late in the return-to-guest
+     * path.
+     */
+    xor %edx, %edx
 
-.L\@_skip:
+    testb $SCF_use_shadow, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%rbx)
+    jz .L\@_skip_sc_msr
+
+    mov STACK_CPUINFO_FIELD(shadow_spec_ctrl)(%rbx), %eax
+    mov $MSR_SPEC_CTRL, %ecx
+    wrmsr
+
+.L\@_skip_sc_msr:
 .endm
 
 #endif /* __ASSEMBLY__ */
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 15:01:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 15:01:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603210.940171 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJa-0005sL-AV; Fri, 15 Sep 2023 15:01:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603210.940171; Fri, 15 Sep 2023 15:01:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJa-0005sB-7h; Fri, 15 Sep 2023 15:01:02 +0000
Received: by outflank-mailman (input) for mailman id 603210;
 Fri, 15 Sep 2023 15:01:00 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhAJY-0004UV-S2
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 15:01:00 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ae4d3cbc-53d8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 17:01:00 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ae4d3cbc-53d8-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694790059;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=/u8QeVsYfOmIrdRheduf3X7k6ZQUSH9FsIiCo9BxkLA=;
  b=CfPY0ppBplhvOvn7O3J2038gUwCE4xWlYCNw9VpjcInUavq+VLrj2ryk
   8qQId048x1w22aFZHteyy3Jp74luL9+fytw++zBXRW7T5D/w3Gnrc633X
   D5GLVGl31/VqRHgpUIV02Pjrf0wOW/ye+5mNbNdLU5yMKdtGfBmJfPhyI
   4=;
X-CSE-ConnectionGUID: T6/GhXioRSe6SFi4s144KQ==
X-CSE-MsgGUID: XGE2t4/OQE6ysVOHiFaVsg==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125509277
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:gtXlvas+kuKMG4dtr5Z9gtnTD+fnVEleMUV32f8akzHdYApBsoF/q
 tZmKT3TOKuPY2vxKt4iPY22oUlXvJHRn4UwSgFoqX9jFiNE+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4lv0gnRkPaoQ5A6HyiFPZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwFG5KQRCzhuWM+7/lccdt2t96cJXIBdZK0p1g5Wmx4fcORJnCR+PB5MNC3Sd2jcdLdRrcT
 5NHM3w1Nk2GOkARfA5NU/rSn8/x7pX7WxRepEiYuuwc5G/LwRYq+LPsLMDUapqBQsA9ckOw/
 zibojyoWE5FXDCZ4Qqq3yiw2qjopA6lSZksM5252PdUm1LGkwT/DzVJDADm8JFVkHWWS99Zb
 kAZ5Ccqhawz71CwCMnwWQWip3yJtQJaXMBfe8U44gyQzqvf4y6CG3MJCDVGbbQOq8seVTEsk
 FiTkLvU6SdH6ePPDyjHr/HN8G30YHJORYMfWcMaZTdbpPbjkIA0tCnCEO1NEfKu14GpOgill
 lhmsxMCr7kUiMcK0YCy8lbGny+gq/D1c+Il2unEdjn7t10kPeZJc6TtsAGGtqgYcO51W3Hb5
 BA5d96iAPfi5H1nvAiEW60zEb6g/J5p2xWM0Ac0T/HNG9lAkkNPnLy8AhkkdC+F0e5eI1cFh
 XM/XisIv/du0IOCN/MfXm5II51CIVLcPdrkTOvISdFFf4J8cgSKlAk3Ox/Mhjm0zBh0yv1nU
 Xt+TSpKJSxKYUiA5GDqL9rxLJdxnnxurY8tbc+TI+ubPUq2OyfOFOZt3KqmZeEl9qKUyDg5A
 P4GX/ZmPy53CbWkCgGOqN57ELz/BSRjbXwAg5ANJ7Hrz8sPMD1JNsI9Npt6J9Q/xf0EzLaYl
 px/M2cBoGfCabT8AV3iQhhehHnHAP6TcVpT0fQQAGuV
IronPort-HdrOrdr: A9a23:7VgBSaiZwza4JWTwWCan3Gf5x3BQXiUji2hC6mlwRA09TyX4rb
 HWoB11726QtN98YgBDpTniAtjifZq/z+8Q3WB5B97LN2OKhILCFvAE0WKN+UyHJ8Q8zIFgPG
 VbH5SWxOeQMXFKyf/Axi+WKvAB5+TvytHRuc7ui053Swdkcqdh6Bo8JDq6PyRNNXJ7LKt8LY
 Gb4MVfoTqmZDAwVeSUQlc4f8WrnaywqHrBCSR2eyLPLDP+8A9AIYSVcySl4g==
X-Talos-CUID: =?us-ascii?q?9a23=3A0tIXV2j2HNmrEu3yvd0dKEr+WTJuTiOa43fgIki?=
 =?us-ascii?q?CMms3c5OUFUTJpP9Hqp87?=
X-Talos-MUID: 9a23:jhIdBwoixFhryifEX3cezwFNGZ10v+OJMW1TgI44nOmFGyVOIDjI2Q==
X-IronPort-AV: E=Sophos;i="6.02,149,1688443200"; 
   d="scan'208";a="125509277"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<jbeulich@suse.com>, Jan Beulich <JBeulich@suse.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>
Subject: [PATCH 3/9] x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
Date: Fri, 15 Sep 2023 16:00:32 +0100
Message-ID: <20230915150038.602577-4-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915150038.602577-1-andrew.cooper3@citrix.com>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

These have grown more complex over time, with some already having been
converted.

Provide full Requires/Clobbers comments, otherwise missing at this level of
indirection.

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 37 ++++++++++++++++++------
 1 file changed, 28 insertions(+), 9 deletions(-)

diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index 72e7046f70d6..f768b0f48a0b 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -219,26 +219,45 @@
 .endm
 
 /* Use after an entry from PV context (syscall/sysenter/int80/int82/etc). */
-#define SPEC_CTRL_ENTRY_FROM_PV                                         \
+.macro SPEC_CTRL_ENTRY_FROM_PV
+/*
+ * Requires %rsp=regs/cpuinfo, %rdx=0
+ * Clobbers %rax, %rcx, %rdx
+ */
     ALTERNATIVE "", __stringify(DO_SPEC_CTRL_COND_IBPB maybexen=0),     \
-        X86_FEATURE_IBPB_ENTRY_PV;                                      \
-    ALTERNATIVE "", DO_OVERWRITE_RSB, X86_FEATURE_SC_RSB_PV;            \
+        X86_FEATURE_IBPB_ENTRY_PV
+
+    ALTERNATIVE "", DO_OVERWRITE_RSB, X86_FEATURE_SC_RSB_PV
+
     ALTERNATIVE "", __stringify(DO_SPEC_CTRL_ENTRY maybexen=0),         \
         X86_FEATURE_SC_MSR_PV
+.endm
 
 /* Use in interrupt/exception context.  May interrupt Xen or PV context. */
-#define SPEC_CTRL_ENTRY_FROM_INTR                                       \
+.macro SPEC_CTRL_ENTRY_FROM_INTR
+/*
+ * Requires %rsp=regs, %r14=stack_end, %rdx=0
+ * Clobbers %rax, %rcx, %rdx
+ */
     ALTERNATIVE "", __stringify(DO_SPEC_CTRL_COND_IBPB maybexen=1),     \
-        X86_FEATURE_IBPB_ENTRY_PV;                                      \
-    ALTERNATIVE "", DO_OVERWRITE_RSB, X86_FEATURE_SC_RSB_PV;            \
+        X86_FEATURE_IBPB_ENTRY_PV
+
+    ALTERNATIVE "", DO_OVERWRITE_RSB, X86_FEATURE_SC_RSB_PV
+
     ALTERNATIVE "", __stringify(DO_SPEC_CTRL_ENTRY maybexen=1),         \
         X86_FEATURE_SC_MSR_PV
+.endm
 
 /* Use when exiting to PV guest context. */
-#define SPEC_CTRL_EXIT_TO_PV                                            \
-    ALTERNATIVE "",                                                     \
-        DO_SPEC_CTRL_EXIT_TO_GUEST, X86_FEATURE_SC_MSR_PV;              \
+.macro SPEC_CTRL_EXIT_TO_PV
+/*
+ * Requires %rax=spec_ctrl, %rsp=regs/info
+ * Clobbers %rcx, %rdx
+ */
+    ALTERNATIVE "", DO_SPEC_CTRL_EXIT_TO_GUEST, X86_FEATURE_SC_MSR_PV
+
     DO_SPEC_CTRL_COND_VERW
+.endm
 
 /*
  * Use in IST interrupt/exception context.  May interrupt Xen or PV context.
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 15:01:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 15:01:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603212.940182 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJb-0006AG-P4; Fri, 15 Sep 2023 15:01:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603212.940182; Fri, 15 Sep 2023 15:01:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJb-0006A7-Km; Fri, 15 Sep 2023 15:01:03 +0000
Received: by outflank-mailman (input) for mailman id 603212;
 Fri, 15 Sep 2023 15:01:02 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhAJa-0004UV-8S
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 15:01:02 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id af01a903-53d8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 17:01:01 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: af01a903-53d8-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694790061;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=iqRrxOP3pxe6jZWttoS6DHQOzltrAeSnz0bv2Vp0Iyo=;
  b=eQQAFigzmhqxVeht+7Agb10UcXChbBH4VJ2Z+8oyCHf/kEAqeadxW9Xm
   ++cK0Lnn31fMQ9VT1Jyw5pytyCxjTZqkQbR6jU7g/l6WncEFLziA2olvg
   G2m6jdF7LvQlQbjTutNZZKYKGTSsTBEt13YVVyksisVh10kcJQyigstGJ
   I=;
X-CSE-ConnectionGUID: T6/GhXioRSe6SFi4s144KQ==
X-CSE-MsgGUID: CDhin9m1QGyvT2GKHUBMJQ==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125509279
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:D5UCQ6ysCzvRT1q0Qv16t+coxirEfRIJ4+MujC+fZmUNrF6WrkVRy
 jdOXGrXaareZWfxfd11atvn/E8DvpDUm99mHgdv+SAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EkHUMja4mtC5QRvPK0T5jcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KV0Qs
 tMYGDEKVCuO2dmYwe6gE7Uwpf12eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP
 ZBAL2MyMlKZOUYn1lQ/UfrSmM+BgHXlfiIeg1WSvactuEDYzRBr0airO93QEjCPbZwPwxvA9
 ziZrgwVBDkxGNyez2uAq0uDl/HzxwzYeL84MZ+Bo6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL
 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0efBdDuk74wGl0bfP7kCSAW1sZiFFQMwrsokxXzNC6
 7OSt4q3X3o16uTTEC/DsO7O9lteJBT5M0c+O2grTTsE5OPYrd8IoBOTVY8/TI2M24id9S7L/
 xiGqy03hrM2hMEN1rmm8V2vvw9AtqQlXSZuuFyJAzvNAhdRIdf8Otf2sQSzAeNodt7xc7WXg
 JQTdyFyBsgqBIrFqiGCSf5l8FqBt6fca220bbKC8vAcG9WRF5yLJ9A4DNJWfh0B3iM4ldjBO
 RS7hO+pzMUPVEZGlIcuC25LN+wkzLL7CfPuXe3OY9xFb/BZLVHWoHg3PBLAhzuxyCDAdJ3T3
 7/BIa5A6l5AVcxaIMeeHb9BgdfHOAhhrY8seXwL50v+iufPDJJkYbwELEGPfogEAFCs+W3oH
 yJkH5LSkX13CbSuChQ7BKZPdTjm21BnX8GpwyGWH8bfSjdb9JYJUKOJm+l4KtY0z8y4VI7gp
 xmAZ6OR83Kn7VWvFOlAQi0LhG/HNXqnkU8GAA==
IronPort-HdrOrdr: A9a23:QNS2g63KRC48Pi88Pt/udgqjBJ0kLtp133Aq2lEZdPU1SL37qy
 nKpp536faaslossR0b9uxoQZPwJE80rKQFhbX5Xo3SPzUO2lHIEGgK1+KLqAEIfReOkNK1vp
 0BT0ERMrPN5BdB/KHHCPrTKadY/DD+ytHTuQ4o9QYRcenTAZsQlDuRozzranFLeA==
X-Talos-CUID: =?us-ascii?q?9a23=3AeDw+oGhb2Wh7EEo6TBnavLAYpzJuTiOa43fgIki?=
 =?us-ascii?q?CMms3c5OUFUTJpP9Hqp87?=
X-Talos-MUID: 9a23:h0P4rAiCZpFCuxOzQEOpc8MpH+to4qL/DRk0voQYh5OrFgxNERK/tWHi
X-IronPort-AV: E=Sophos;i="6.02,149,1688443200"; 
   d="scan'208";a="125509279"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 8/9] x86/amd: Introduce is_zen{1,2}_uarch() predicates
Date: Fri, 15 Sep 2023 16:00:37 +0100
Message-ID: <20230915150038.602577-9-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915150038.602577-1-andrew.cooper3@citrix.com>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
introduce a 4th.  Wrap the heuristic into a pair of predictes rather than
opencoding it, and the explaination of the heursitic, at each usage site.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>

v2:
 * New
---
 xen/arch/x86/cpu/amd.c         | 18 ++++--------------
 xen/arch/x86/include/asm/amd.h | 11 +++++++++++
 2 files changed, 15 insertions(+), 14 deletions(-)

diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
index bbf7887f2e1d..4f27187f92ec 100644
--- a/xen/arch/x86/cpu/amd.c
+++ b/xen/arch/x86/cpu/amd.c
@@ -882,15 +882,13 @@ void amd_set_legacy_ssbd(bool enable)
  * non-branch instructions to be ignored.  It is to be set unilaterally in
  * newer microcode.
  *
- * This chickenbit is something unrelated on Zen1, and Zen1 vs Zen2 isn't a
- * simple model number comparison, so use STIBP as a heuristic to separate the
- * two uarches in Fam17h(AMD)/18h(Hygon).
+ * This chickenbit is something unrelated on Zen1.
  */
 void amd_init_spectral_chicken(void)
 {
 	uint64_t val, chickenbit = 1 << 1;
 
-	if (cpu_has_hypervisor || !boot_cpu_has(X86_FEATURE_AMD_STIBP))
+	if (cpu_has_hypervisor || !is_zen2_uarch())
 		return;
 
 	if (rdmsr_safe(MSR_AMD64_DE_CFG2, val) == 0 && !(val & chickenbit))
@@ -939,11 +937,8 @@ void amd_check_zenbleed(void)
 		 * With the Fam17h check above, most parts getting here are
 		 * Zen1.  They're not affected.  Assume Zen2 ones making it
 		 * here are affected regardless of microcode version.
-		 *
-		 * Zen1 vs Zen2 isn't a simple model number comparison, so use
-		 * STIBP as a heuristic to distinguish.
 		 */
-		if (!boot_cpu_has(X86_FEATURE_AMD_STIBP))
+		if (is_zen1_uarch())
 			return;
 		good_rev = ~0U;
 		break;
@@ -1298,12 +1293,7 @@ static int __init cf_check zen2_c6_errata_check(void)
 	 */
 	s_time_t delta;
 
-	/*
-	 * Zen1 vs Zen2 isn't a simple model number comparison, so use STIBP as
-	 * a heuristic to separate the two uarches in Fam17h.
-	 */
-	if (cpu_has_hypervisor || boot_cpu_data.x86 != 0x17 ||
-	    !boot_cpu_has(X86_FEATURE_AMD_STIBP))
+	if (cpu_has_hypervisor || boot_cpu_data.x86 != 0x17 || !is_zen2_uarch())
 		return 0;
 
 	/*
diff --git a/xen/arch/x86/include/asm/amd.h b/xen/arch/x86/include/asm/amd.h
index 09ee52dc1c09..d862cb7972a1 100644
--- a/xen/arch/x86/include/asm/amd.h
+++ b/xen/arch/x86/include/asm/amd.h
@@ -140,6 +140,17 @@
                        AMD_MODEL_RANGE(0x11, 0x0, 0x0, 0xff, 0xf),	\
                        AMD_MODEL_RANGE(0x12, 0x0, 0x0, 0xff, 0xf))
 
+/*
+ * The Zen1 and Zen2 microarchitectures are implemented by AMD (Fam17h) and
+ * Hygon (Fam18h) but without simple model number rules.  Instead, use STIBP
+ * as a heuristic that distinguishes the two.
+ *
+ * The caller is required to perform the appropriate vendor/family checks
+ * first.
+ */
+#define is_zen1_uarch() (!boot_cpu_has(X86_FEATURE_AMD_STIBP))
+#define is_zen2_uarch()   boot_cpu_has(X86_FEATURE_AMD_STIBP)
+
 struct cpuinfo_x86;
 int cpu_has_amd_erratum(const struct cpuinfo_x86 *, int, ...);
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 15:01:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 15:01:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603213.940186 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJc-0006Dm-50; Fri, 15 Sep 2023 15:01:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603213.940186; Fri, 15 Sep 2023 15:01:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJb-0006D0-Tp; Fri, 15 Sep 2023 15:01:03 +0000
Received: by outflank-mailman (input) for mailman id 603213;
 Fri, 15 Sep 2023 15:01:02 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhAJa-0005sI-J8
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 15:01:02 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ad8409d6-53d8-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 17:01:00 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ad8409d6-53d8-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694790059;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=KznqDoscyqMnpcQNfSJy4Gab/IynVVymbTjqUVUKxtA=;
  b=aI8O9h79Gd7i8LSnwgm7YhfgnXuyQ7yr3nwOAbeFOj48kG9/5A6caX8b
   wA9uB97hCXHbZ511KKFyi2oWXg1GxVhwXPq4Uue60Q64cFCA1937jtgDC
   qmoDt05amFYIa1owMbfWkvheZbcA8q8czbgHbO65TrkBndF//gswNCuhl
   c=;
X-CSE-ConnectionGUID: T6/GhXioRSe6SFi4s144KQ==
X-CSE-MsgGUID: LsywUawbQEWBwf9B3F4Crw==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125509278
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:YIwosq3HpgvEUo08mvbD5cxxkn2cJEfYwER7XKvMYLTBsI5bpzBSx
 jdMXjvUP62INzfzeYp1PYrk9h8Fv5aGz9dlTAJopC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb8nuDgNyo4GlD5g1nOKgR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfPT8J2
 vwoKTc3VR3dvMy3nKniFrVPv5F2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP
 ZNfMGcxKk2aOHWjOX9OYH46tM6uimPybHtzr1WNqLBsy2PS0BZwwP7mN9+9ltmiHJ8Iwx7J/
 D2Wl4j/KjUBJcOiwCWPy1+TrPDBzAmgdt45DqLto5aGh3XMnzdOWXX6T2CTsfS/z0KzRd9bA
 0gV4TY167g/8lSxSdvwVAH+p2SL1jYeUddNF+wx6CmW17HZpQ2eAwAsUTppeNEg8sgsSlQXO
 kShxo2zQ2Y16fvMFCzbr+3Pxd+vBcQLBVNcIgAEfQoC2eLu/rodj07UF4o/M5fg27UZBgrM6
 zyNqSE/gZAagsgKy7i38Dj7vt68mnTaZlVrv1uKBwpJ+is8Pdf4PNLwtTA3+N4adO6kok+9U
 G/ociR0xMQHFtmzmSOEW43h95n5tq/eYFUwbbOCdqTNFghBGVb5Lei8Axkkfi+F1/ronhewO
 yfuVft5vsM7AZdTRfYfj3iNI8or17P8Mt/uS+rZaNFDCrAoKl7bpXg3OR7IhDy1+KTJrU3ZE
 c3LGSpLJSxGYZmLMRLsH7tNuVPV7n9WKZzvqWDTkE38jOv2iI+9QrYZKlqeBt3VH4vdyDg5B
 +13bpPQoz0GCb2WX8Ui2dJLRbz8BSRhVM+eRg0+XrLrHzeK70l6V6eLm+pwId0190mX/8+Rl
 kyAtoZj4AKXrRX6xc+iNxiPtJuHsU5DkE8G
IronPort-HdrOrdr: A9a23:yBwV3amg4zxKdk+ZgZeEwzgWYW7pDfLT3DAbv31ZSRFFG/Fw9v
 re5cjzuiWE7Qr5NEtQ++xoW5PwIk80l6QFhbX5VI3KNGKN1VdAR7sSircKrQeQfREWNdQz6U
 6jScRD4RHLbGRSvILC2y+fPO8H4P67mZrY/dv2/jNVVgdtZLhn7wBlTiimMmAefng8ObMJUK
 OG4MxJvjyhfmlSSP+aKD0qY8jvzue77q4PR3Y9dmIaAc21/E6VAXfBfXil4is=
X-Talos-CUID: =?us-ascii?q?9a23=3AtK2yqWielXFeHm3gfnNSoDAFxTJuTiOa43fgIki?=
 =?us-ascii?q?CMms3c5OUFUTJpP9Hqp87?=
X-Talos-MUID: =?us-ascii?q?9a23=3A4HaHKwwurkl3+uDgSWtwXaW7KAyaqIC1GV8wmIo?=
 =?us-ascii?q?MguS7HzN+ah3GomicWJByfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,149,1688443200"; 
   d="scan'208";a="125509278"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<jbeulich@suse.com>, Jan Beulich <JBeulich@suse.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>
Subject: [PATCH 5/9] x86/entry: Adjust restore_all_xen to hold stack_end in %r14
Date: Fri, 15 Sep 2023 16:00:34 +0100
Message-ID: <20230915150038.602577-6-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915150038.602577-1-andrew.cooper3@citrix.com>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
for consistency.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 8 ++++----
 xen/arch/x86/x86_64/entry.S              | 8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index 8996fe3fc0ef..b696033240e4 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -345,10 +345,10 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
  */
 .macro SPEC_CTRL_EXIT_TO_XEN
 /*
- * Requires %rbx=stack_end
+ * Requires %r14=stack_end
  * Clobbers %rax, %rcx, %rdx
  */
-    testb $SCF_ist_sc_msr, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%rbx)
+    testb $SCF_ist_sc_msr, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14)
     jz .L\@_skip_sc_msr
 
     /*
@@ -359,10 +359,10 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
      */
     xor %edx, %edx
 
-    testb $SCF_use_shadow, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%rbx)
+    testb $SCF_use_shadow, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14)
     jz .L\@_skip_sc_msr
 
-    mov STACK_CPUINFO_FIELD(shadow_spec_ctrl)(%rbx), %eax
+    mov STACK_CPUINFO_FIELD(shadow_spec_ctrl)(%r14), %eax
     mov $MSR_SPEC_CTRL, %ecx
     wrmsr
 
diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S
index a1c860f56949..525877e97330 100644
--- a/xen/arch/x86/x86_64/entry.S
+++ b/xen/arch/x86/x86_64/entry.S
@@ -665,15 +665,15 @@ restore_all_xen:
          * Check whether we need to switch to the per-CPU page tables, in
          * case we return to late PV exit code (from an NMI or #MC).
          */
-        GET_STACK_END(bx)
-        cmpb  $0, STACK_CPUINFO_FIELD(use_pv_cr3)(%rbx)
+        GET_STACK_END(14)
+        cmpb  $0, STACK_CPUINFO_FIELD(use_pv_cr3)(%r14)
 UNLIKELY_START(ne, exit_cr3)
-        mov   STACK_CPUINFO_FIELD(pv_cr3)(%rbx), %rax
+        mov   STACK_CPUINFO_FIELD(pv_cr3)(%r14), %rax
         mov   %rax, %cr3
 UNLIKELY_END(exit_cr3)
 
         /* WARNING! `ret`, `call *`, `jmp *` not safe beyond this point. */
-        SPEC_CTRL_EXIT_TO_XEN     /* Req: %rbx=end, Clob: acd */
+        SPEC_CTRL_EXIT_TO_XEN     /* Req: %r14=end, Clob: acd */
 
         RESTORE_ALL adj=8
         iretq
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 15:01:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 15:01:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603214.940192 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJc-0006KH-II; Fri, 15 Sep 2023 15:01:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603214.940192; Fri, 15 Sep 2023 15:01:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJc-0006HS-AW; Fri, 15 Sep 2023 15:01:04 +0000
Received: by outflank-mailman (input) for mailman id 603214;
 Fri, 15 Sep 2023 15:01:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhAJb-0005sI-87
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 15:01:03 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id adc97a79-53d8-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 17:01:00 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: adc97a79-53d8-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694790060;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=/GM8AdBIr2NA9MDy77t7kyfRHQ78VMf2N1XB8hJaZKs=;
  b=UiAxU11rOKC/kl1Di1c7Y6aFSWtmVjfoYJxhIzkEW5KxTUgAYIpFX4F+
   +fo7UPBNQd/Nd++LCE5p9s47jyNRVsS4qcYjnaOWXK3MDxKpWzIQOgOxX
   5Ui2/1dnzWHNGP3v9rN5WKVCJ3D6VmkC0fxVVyvIn4F1iB+ewbmhxAgct
   k=;
X-CSE-ConnectionGUID: vAIIvUM8SCaECUCG0mQOuQ==
X-CSE-MsgGUID: U1c+vOBkTMS643nOsobRsQ==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 121436365
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:fqf5paq9isA7+37WV1E8v4IhgApeBmIHZRIvgKrLsJaIsI4StFCzt
 garIBmPbKmDYzSjL4wnb9vioRwBscLVxt9hTAFk/iE3QiMUopuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GlwUmAWP6gR5wePziRNVvrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXAC4kTzGdusfm+5myZ8JRret7KfDMIbpK7xmMzRmBZRonaZXKQqGM7t5ExjYgwMtJGJ4yZ
 eJAN2ApNk6ZJUQSZBFOUslWcOSA3xETdxVxrl6PqLVxyG/U1AFri5DmMcbPe8zMTsJQ9qqdj
 jucpjiiXEpEabRzzxK4q3nvmMjlnh/eY9xOT7uf7flgukaqkzl75Bo+CgLg/KjRZlSFc8JSL
 QkY9zQjqYA29Ve3VZ/tUhugunmGsxUAHd1KHIUS6guA167V6AaxHXUfQ3hKb9lOnNAybSwn0
 BmOhdyBONB0mOTLEzTHrO7S9G7sf3FPdgfueBPoUyMbyvjCvrwW3inkR/tILYWa1tjMPizJl
 mXiQDcFu50fissC1qOe9F/Bgi6xqpWhcjPZ9jk7TUr+sFonOdfNi5iArAGCsK0edNrxokyp5
 iBspiSI0AwZ4XhhfgSpSf5FIrym7u3t3Nb00Q82RMlJG9hAFheekWFsDNNWfhcB3iUsI2WBj
 KrvVeR5vcU7AZdSRfUrC79d8uxzpUQaKfzrV+rPcv1FaYVreQmM8UlGPBDBgz+0zhN3wP5ma
 f93lPpA615AUcyLKxLsHI8gPUIDnHhilQs/u7ilp/hY7VZuTCHMEupUWLd/Rus48LmFsG3oH
 yV3bqO3J+FkeLSmOEH/qNdDRW3m2FBnXfgaXeQLLL/cSuencUl9Y8LsLUQJINA9xf4Mx72Zr
 hlQmCZwkTLCuJEOEi3SAlgLVV8ldcwXQa4TVcD0AWuV5g==
IronPort-HdrOrdr: A9a23:LgWkGq5y6/toTLUnhgPXwOfXdLJyesId70hD6qkRc202TiX8ra
 rCoB1173PJYVoqN03I4OrwXZVoGEmskaKdgrNhXotKPjOGhILAFugLhrcKpQeQfREWndQ86U
 4PScZD4ZLLfD9HZTWR2njALz9Z+qj8zElev5ai85/UJzsaEJ2IRj0JcjqmLg==
X-Talos-CUID: =?us-ascii?q?9a23=3AyVMdVWkDsvJMbrCPdjcHyC/PDkfXOWP07VbOHmr?=
 =?us-ascii?q?oMk1gZZaoYnDI/ZpDjvM7zg=3D=3D?=
X-Talos-MUID: 9a23:laeG1AR2PZZyoLTXRXTR3TohKuBC4JiLMx5RypMhoM6ODzdJbmI=
X-IronPort-AV: E=Sophos;i="6.02,149,1688443200"; 
   d="scan'208";a="121436365"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<jbeulich@suse.com>, Jan Beulich <JBeulich@suse.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>
Subject: [PATCH 7/9] x86/spec-ctrl: Issue VERW during IST exit to Xen
Date: Fri, 15 Sep 2023 16:00:36 +0100
Message-ID: <20230915150038.602577-8-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915150038.602577-1-andrew.cooper3@citrix.com>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

There is a corner case where e.g. an NMI hitting an exit-to-guest path after
SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
flush to scrub potentially sensitive data from uarch buffers.

In order to compensate, issue VERW when exiting to Xen from an IST entry.

SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
and we're about to add a third.  Load the field into %ebx, and list the
register as clobbered.

%r12 has been arranged to be the ist_exit signal, so add this as an input
dependency and use it to identify when to issue a VERW.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>

Note to reviewers:  .L\@_skip_verw and .L\@_skip_ist_exit are separate to
reduce the churn in the following patch.

v2:
 * Rename .L\@_skip_verw
---
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 20 +++++++++++++++-----
 xen/arch/x86/x86_64/entry.S              |  2 +-
 2 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index b696033240e4..9a27e3170347 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -345,10 +345,12 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
  */
 .macro SPEC_CTRL_EXIT_TO_XEN
 /*
- * Requires %r14=stack_end
- * Clobbers %rax, %rcx, %rdx
+ * Requires %r12=ist_exit, %r14=stack_end
+ * Clobbers %rax, %rbx, %rcx, %rdx
  */
-    testb $SCF_ist_sc_msr, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14)
+    movzbl STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14), %ebx
+
+    testb $SCF_ist_sc_msr, %bl
     jz .L\@_skip_sc_msr
 
     /*
@@ -359,7 +361,7 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
      */
     xor %edx, %edx
 
-    testb $SCF_use_shadow, STACK_CPUINFO_FIELD(spec_ctrl_flags)(%r14)
+    testb $SCF_use_shadow, %bl
     jz .L\@_skip_sc_msr
 
     mov STACK_CPUINFO_FIELD(shadow_spec_ctrl)(%r14), %eax
@@ -368,8 +370,16 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
 
 .L\@_skip_sc_msr:
 
-    /* TODO VERW */
+    test %r12, %r12
+    jz .L\@_skip_ist_exit
+
+    /* Logically DO_SPEC_CTRL_COND_VERW but without the %rsp=cpuinfo dependency */
+    testb $SCF_verw, %bl
+    jz .L\@_skip_verw
+    verw STACK_CPUINFO_FIELD(verw_sel)(%r14)
+.L\@_skip_verw:
 
+.L\@_skip_ist_exit:
 .endm
 
 #endif /* __ASSEMBLY__ */
diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S
index e5055e5bbf9f..988ef6cbc628 100644
--- a/xen/arch/x86/x86_64/entry.S
+++ b/xen/arch/x86/x86_64/entry.S
@@ -687,7 +687,7 @@ UNLIKELY_START(ne, exit_cr3)
 UNLIKELY_END(exit_cr3)
 
         /* WARNING! `ret`, `call *`, `jmp *` not safe beyond this point. */
-        SPEC_CTRL_EXIT_TO_XEN     /* Req: %r14=end, Clob: acd */
+        SPEC_CTRL_EXIT_TO_XEN     /* Req: %r12=ist_exit %r14=end, Clob: abcd */
 
         RESTORE_ALL adj=8
         iretq
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 15:01:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 15:01:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603215.940200 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJd-0006VN-4D; Fri, 15 Sep 2023 15:01:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603215.940200; Fri, 15 Sep 2023 15:01:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAJc-0006Tc-Sn; Fri, 15 Sep 2023 15:01:04 +0000
Received: by outflank-mailman (input) for mailman id 603215;
 Fri, 15 Sep 2023 15:01:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhAJb-0004UV-8R
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 15:01:03 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ae6378ef-53d8-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 17:01:01 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ae6378ef-53d8-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694790061;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=G13uxDI+Vf2EUoeXWUQgkocQAX3E/eken8QVmw9pr80=;
  b=CtnVVfzePCFH5UK/W9icaPHtFN1rgv6w1SJwlnEZmaCX0AnVaPDsDo4j
   7aS8mS9HIH8MX2adzgG4shfC2dZFXdgDY5qcDYBeihzZtmruwmX+dPjLk
   yqjDvwS9+UI9V5Vn63esuhZMVtOgwlm+oVqceT7dO3z7S5bX43YTJqgdt
   k=;
X-CSE-ConnectionGUID: T6/GhXioRSe6SFi4s144KQ==
X-CSE-MsgGUID: 2jZM/k87SiyEhEWEqg5jag==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125509281
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:H+M9LKlYZ4uTeowJepNbCnzo5gyeJkRdPkR7XQ2eYbSJt1+Wr1Gzt
 xIaXzuPbKnbZDD9KItwa47no0pVvJHSmN9kGgJsri0wECMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K6aVA8w5ARkPqga5QKGzRH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 cBGbx8NXhGEvdm7nomVS7V335h/D/C+aevzulk4pd3YJfMvQJSFSKTW/95Imjw3g6iiH96HO
 ZBfM2A2Kk2dPVsWYAx/5JEWxY9EglHWdTFCpU3Tjq0w+2XJlyR60aT3McqTcduPLSlQth/C+
 z+erj6pW3n2MvTFywigtXH82dTOjA77db0/DbLl9Pdl1Qj7Kms7V0RNCArTTeOCol6zXZdTJ
 lIZ/gIqrLMu7wq7Q9/lRRq6rXWY+BkGVLJ4Mcc39QWMwar8+BuCCy4PSTspQMMinN87Q3otz
 FDhoj/yLWUx6vvPEyvbr+rK62roYkD5MFPuewc4E0wq4+nip7sIg0z0YNc/C/fp0v7MTGSYL
 y+xkAAygLAajMgu3qq9/Ezajz/EmqUlXjLZ9S2MADv7s1oRiJqNItXxtAOFtaoowJOxFAHpg
 ZQSpySJAAni57mpnTfFfugCFarBCx2tYGyF2g4H83XMGl2QF5+fkWJ4umEWyKRBaJxsldrVj
 Kj74Fg52XOrFCH2BZKbmqroYyjQ8YDuFM7+StffZcdUb556eWevpX8/ORfJhjy9yBNwycnT3
 Kt3l+72XR727ow9kFKLqxo1i+d3lkjSO0uMLXwE8/hX+eXHPyPEIVv0GFCPcvo4/Mu5TPb9q
 r5i2z+x40wHCoXWO3CHmbP/2HhWdRDX87iq8Z0IHgNCSyI6cFwc5wj5mu95IdY8zv4Exo8lP
 BiVAydl9bY2vlWfQS3iV5ypQOiHsUpXxZ7jARERAA==
IronPort-HdrOrdr: A9a23:mA6Q+KG1BoxfIOWopLqEx8eALOsnbusQ8zAXPiFKOH5om6mj/a
 2TdZsguSMc5Ax/ZJhYo6HkBEDYewK5yXcX2/hzAV7BZmjbUQKTRekI0WKF+UyHJ8SUzI5gPM
 lbHZSWR+eAamSTfqzBkXCF+q4bsaO6GVeT9JrjJ88Gd3AQV0jI1XYANjqm
X-Talos-CUID: 9a23:YP5kG24hxNP8CAXtA9ssyBBTNcAVc3rn93qOGGG5VX0wFOG2cArF
X-Talos-MUID: =?us-ascii?q?9a23=3A7hQ8sA1Wewob9y7Up/v59lNonzUjuaacLQcOwco?=
 =?us-ascii?q?9utipNQFPFi6S0Ta+Tdpy?=
X-IronPort-AV: E=Sophos;i="6.02,149,1688443200"; 
   d="scan'208";a="125509281"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH 9/9] x86/spec-ctrl: Mitigate the Zen1 DIV leakge
Date: Fri, 15 Sep 2023 16:00:38 +0100
Message-ID: <20230915150038.602577-10-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915150038.602577-1-andrew.cooper3@citrix.com>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

In the Zen1 microarchitecure, there is one divider in the pipeline which
services uops from both threads.  In the case of #DE, the latched result from
the previous DIV to execute will be forwarded speculatively.

This is an interesting covert channel that allows two threads to communicate
without any system calls.  In also allows userspace to obtain the result of
the most recent DIV instruction executed (even speculatively) in the core,
which can be from a higher privilege context.

Scrub the result from the divider by executing a non-faulting divide.  This
needs performing on the exit-to-guest paths, and ist_exit-to-Xen.

This is XSA-439 / CVE-2023-20588.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>

No embargo - this is already public.  XSA paperwork to follow.

v2:
 * Rebase over the introduction of is_zen1_uarch().
 * Fix the SC_DIV bit not to alias SC_VERW_IDLE.
 * Extend comments.
---
 docs/misc/xen-command-line.pandoc        |  6 ++-
 xen/arch/x86/hvm/svm/entry.S             |  1 +
 xen/arch/x86/include/asm/cpufeatures.h   |  2 +-
 xen/arch/x86/include/asm/spec_ctrl_asm.h | 17 ++++++++
 xen/arch/x86/spec_ctrl.c                 | 49 +++++++++++++++++++++++-
 5 files changed, 72 insertions(+), 3 deletions(-)

diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
index f88e6a70aed6..7acd68885656 100644
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -2353,7 +2353,7 @@ By default SSBD will be mitigated at runtime (i.e `ssbd=runtime`).
 >              {msr-sc,rsb,md-clear,ibpb-entry}=<bool>|{pv,hvm}=<bool>,
 >              bti-thunk=retpoline|lfence|jmp, {ibrs,ibpb,ssbd,psfd,
 >              eager-fpu,l1d-flush,branch-harden,srb-lock,
->              unpriv-mmio,gds-mit}=<bool> ]`
+>              unpriv-mmio,gds-mit,div-scrub}=<bool> ]`
 
 Controls for speculative execution sidechannel mitigations.  By default, Xen
 will pick the most appropriate mitigations based on compiled in support,
@@ -2475,6 +2475,10 @@ has elected not to lock the configuration, Xen will use GDS_CTRL to mitigate
 GDS with.  Otherwise, Xen will mitigate by disabling AVX, which blocks the use
 of the AVX2 Gather instructions.
 
+On all hardware, the `div-scrub=` option can be used to force or prevent Xen
+from mitigating the DIV-leakage vulnerability.  By default, Xen will mitigate
+DIV-leakage on hardware believed to be vulnerable.
+
 ### sync_console
 > `= <boolean>`
 
diff --git a/xen/arch/x86/hvm/svm/entry.S b/xen/arch/x86/hvm/svm/entry.S
index 9effd2199ba0..c52528fed4cf 100644
--- a/xen/arch/x86/hvm/svm/entry.S
+++ b/xen/arch/x86/hvm/svm/entry.S
@@ -72,6 +72,7 @@ __UNLIKELY_END(nsvm_hap)
 1:          /* No Spectre v1 concerns.  Execution will hit VMRUN imminently. */
         .endm
         ALTERNATIVE "", svm_vmentry_spec_ctrl, X86_FEATURE_SC_MSR_HVM
+        ALTERNATIVE "", DO_SPEC_CTRL_DIV, X86_FEATURE_SC_DIV
 
         pop  %r15
         pop  %r14
diff --git a/xen/arch/x86/include/asm/cpufeatures.h b/xen/arch/x86/include/asm/cpufeatures.h
index da0593de8542..c3aad21c3b43 100644
--- a/xen/arch/x86/include/asm/cpufeatures.h
+++ b/xen/arch/x86/include/asm/cpufeatures.h
@@ -35,7 +35,7 @@ XEN_CPUFEATURE(SC_RSB_HVM,        X86_SYNTH(19)) /* RSB overwrite needed for HVM
 XEN_CPUFEATURE(XEN_SELFSNOOP,     X86_SYNTH(20)) /* SELFSNOOP gets used by Xen itself */
 XEN_CPUFEATURE(SC_MSR_IDLE,       X86_SYNTH(21)) /* Clear MSR_SPEC_CTRL on idle */
 XEN_CPUFEATURE(XEN_LBR,           X86_SYNTH(22)) /* Xen uses MSR_DEBUGCTL.LBR */
-/* Bits 23 unused. */
+XEN_CPUFEATURE(SC_DIV,            X86_SYNTH(23)) /* DIV scrub needed */
 XEN_CPUFEATURE(SC_RSB_IDLE,       X86_SYNTH(24)) /* RSB overwrite needed for idle. */
 XEN_CPUFEATURE(SC_VERW_IDLE,      X86_SYNTH(25)) /* VERW used by Xen for idle */
 XEN_CPUFEATURE(XEN_SHSTK,         X86_SYNTH(26)) /* Xen uses CET Shadow Stacks */
diff --git a/xen/arch/x86/include/asm/spec_ctrl_asm.h b/xen/arch/x86/include/asm/spec_ctrl_asm.h
index 9a27e3170347..5c5b3b6f5324 100644
--- a/xen/arch/x86/include/asm/spec_ctrl_asm.h
+++ b/xen/arch/x86/include/asm/spec_ctrl_asm.h
@@ -165,6 +165,19 @@
 .L\@_verw_skip:
 .endm
 
+.macro DO_SPEC_CTRL_DIV
+/*
+ * Requires nothing
+ * Clobbers %rax
+ *
+ * Issue a DIV for its flushing side effect (Zen1 uarch specific).  Any
+ * non-faulting DIV will do; a byte DIV has least latency, and doesn't clobber
+ * %rdx.
+ */
+    mov $1, %eax
+    div %al
+.endm
+
 .macro DO_SPEC_CTRL_ENTRY maybexen:req
 /*
  * Requires %rsp=regs (also cpuinfo if !maybexen)
@@ -267,6 +280,8 @@
     ALTERNATIVE "", DO_SPEC_CTRL_EXIT_TO_GUEST, X86_FEATURE_SC_MSR_PV
 
     DO_SPEC_CTRL_COND_VERW
+
+    ALTERNATIVE "", DO_SPEC_CTRL_DIV, X86_FEATURE_SC_DIV
 .endm
 
 /*
@@ -379,6 +394,8 @@ UNLIKELY_DISPATCH_LABEL(\@_serialise):
     verw STACK_CPUINFO_FIELD(verw_sel)(%r14)
 .L\@_skip_verw:
 
+    ALTERNATIVE "", DO_SPEC_CTRL_DIV, X86_FEATURE_SC_DIV
+
 .L\@_skip_ist_exit:
 .endm
 
diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c
index 9b8fdb5303ad..4c510094498e 100644
--- a/xen/arch/x86/spec_ctrl.c
+++ b/xen/arch/x86/spec_ctrl.c
@@ -67,6 +67,7 @@ static int8_t __initdata opt_srb_lock = -1;
 static bool __initdata opt_unpriv_mmio;
 static bool __ro_after_init opt_fb_clear_mmio;
 static int8_t __initdata opt_gds_mit = -1;
+static int8_t __initdata opt_div_scrub = -1;
 
 static int __init cf_check parse_spec_ctrl(const char *s)
 {
@@ -121,6 +122,7 @@ static int __init cf_check parse_spec_ctrl(const char *s)
             opt_srb_lock = 0;
             opt_unpriv_mmio = false;
             opt_gds_mit = 0;
+            opt_div_scrub = 0;
         }
         else if ( val > 0 )
             rc = -EINVAL;
@@ -273,6 +275,8 @@ static int __init cf_check parse_spec_ctrl(const char *s)
             opt_unpriv_mmio = val;
         else if ( (val = parse_boolean("gds-mit", s, ss)) >= 0 )
             opt_gds_mit = val;
+        else if ( (val = parse_boolean("div-scrub", s, ss)) >= 0 )
+            opt_div_scrub = val;
         else
             rc = -EINVAL;
 
@@ -473,7 +477,7 @@ static void __init print_details(enum ind_thunk thunk)
                "\n");
 
     /* Settings for Xen's protection, irrespective of guests. */
-    printk("  Xen settings: BTI-Thunk %s, SPEC_CTRL: %s%s%s%s%s, Other:%s%s%s%s%s\n",
+    printk("  Xen settings: BTI-Thunk %s, SPEC_CTRL: %s%s%s%s%s, Other:%s%s%s%s%s%s\n",
            thunk == THUNK_NONE      ? "N/A" :
            thunk == THUNK_RETPOLINE ? "RETPOLINE" :
            thunk == THUNK_LFENCE    ? "LFENCE" :
@@ -498,6 +502,7 @@ static void __init print_details(enum ind_thunk thunk)
            opt_l1d_flush                             ? " L1D_FLUSH" : "",
            opt_md_clear_pv || opt_md_clear_hvm ||
            opt_fb_clear_mmio                         ? " VERW"  : "",
+           opt_div_scrub                             ? " DIV" : "",
            opt_branch_harden                         ? " BRANCH_HARDEN" : "");
 
     /* L1TF diagnostics, printed if vulnerable or PV shadowing is in use. */
@@ -955,6 +960,46 @@ static void __init srso_calculations(bool hw_smt_enabled)
         setup_force_cpu_cap(X86_FEATURE_SRSO_NO);
 }
 
+/*
+ * The Div leakage issue is specific to the AMD Zen1 microarchitecure.
+ *
+ * However, there's no $FOO_NO bit defined, so if we're virtualised we have no
+ * hope of spotting the case where we might move to vulnerable hardware.  We
+ * also can't make any useful conclusion about SMT-ness.
+ *
+ * Don't check the hypervisor bit, so at least we do the safe thing when
+ * booting on something that looks like a Zen1 CPU.
+ */
+static bool __init has_div_vuln(void)
+{
+    if ( !(boot_cpu_data.x86_vendor &
+           (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
+        return false;
+
+    if ( (boot_cpu_data.x86 != 0x17 && boot_cpu_data.x86 != 0x18) ||
+         !is_zen1_uarch() )
+        return false;
+
+    return true;
+}
+
+static void __init div_calculations(bool hw_smt_enabled)
+{
+    bool cpu_bug_div = has_div_vuln();
+
+    if ( opt_div_scrub == -1 )
+        opt_div_scrub = cpu_bug_div;
+
+    if ( opt_div_scrub )
+        setup_force_cpu_cap(X86_FEATURE_SC_DIV);
+
+    if ( opt_smt == -1 && !cpu_has_hypervisor && cpu_bug_div && hw_smt_enabled )
+        warning_add(
+            "Booted on leaky-DIV hardware with SMT/Hyperthreading\n"
+            "enabled.  Please assess your configuration and choose an\n"
+            "explicit 'smt=<bool>' setting.  See XSA-439.\n");
+}
+
 static void __init ibpb_calculations(void)
 {
     bool def_ibpb_entry = false;
@@ -1714,6 +1759,8 @@ void __init init_speculation_mitigations(void)
 
     ibpb_calculations();
 
+    div_calculations(hw_smt_enabled);
+
     /* Check whether Eager FPU should be enabled by default. */
     if ( opt_eager_fpu == -1 )
         opt_eager_fpu = should_use_eager_fpu();
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 15:11:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 15:11:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603259.940222 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhATr-0003ie-GW; Fri, 15 Sep 2023 15:11:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603259.940222; Fri, 15 Sep 2023 15:11:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhATr-0003iX-Dk; Fri, 15 Sep 2023 15:11:39 +0000
Received: by outflank-mailman (input) for mailman id 603259;
 Fri, 15 Sep 2023 15:11:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=cweo=E7=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qhATp-0003iR-B6
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 15:11:37 +0000
Received: from mail-pl1-x631.google.com (mail-pl1-x631.google.com
 [2607:f8b0:4864:20::631])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 28701ae4-53da-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 17:11:35 +0200 (CEST)
Received: by mail-pl1-x631.google.com with SMTP id
 d9443c01a7336-1c336f5b1ffso20096125ad.2
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 08:11:35 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 u6-20020a17090341c600b001c3f7fd1ef7sm3623245ple.12.2023.09.15.08.11.28
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 15 Sep 2023 08:11:32 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 28701ae4-53da-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694790693; x=1695395493; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=KCQqoZ18jpGX1KCrU7S3I3Im0sSOsGzv0y0heQncKU4=;
        b=b+60VPOOc18Rc0vZz0qVv30N2I5F6mEQP6orxrPmaesCk6YDfefq3Y/ajFegYyrioA
         SiorMQga5wCqsdEpVQYgOVtchmwJfJhMAwNlsdbM/7rRLA2+Uf1mfBORShZHC9NN8VDy
         vbK0tWPfHRVJAwo/EM04m4qVopTE+K0QJDl4clAAImJfT+VwjKsYHeou6nEouNrNwri+
         AF5dNFfQoJQnQ7Cs8wmCz5OVU7PEmz5Zl6Lnd+bxgocgdA20mBdqL0j2Mt/YzkWm5d2M
         4qj5JGlO1p0LWQa2biy8iEvYl+MIw0ubpRu2ew2SofYHn6rf/GGiVC0AKMSwW/JMnIrF
         ON4w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694790693; x=1695395493;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=KCQqoZ18jpGX1KCrU7S3I3Im0sSOsGzv0y0heQncKU4=;
        b=NOkAGoXHJiA73R8gmx4Hcq7OijPyOkAk72H7SbfVBAw+Xyohhjfag1XpfmM/YP7ivs
         83TepbhAM2DlqN8ueUTy7X7jAMpDoWKX11YUnRp/AL3s6kvxdmbREDboFIElwcORRsjv
         P8l3Az4GwIqepuV8yJ5SV3agv3ctVopKXgGXescUO76wdjIPBTCcUDpWoawIxyDc+Eya
         ew7UBWBIM5htd8dtmeD2X8ijrXzMdxnii3S58RlihIiCmVueRMNxhTVdfGvUIeWvcqbJ
         N3ErLP0xAxZ7b6RlgqJRRdV5uugWti5mhLXwrkDomhv2xhWwNqRBGSNvjhOwsuHpLBBy
         Rcow==
X-Gm-Message-State: AOJu0Yxe2zemn3BDTqfqOQ0z+qbbV4pVNRqH+/8J9evQk9+Z53lBvlJa
	6Qxyy3rGGmWGNxSIu4I90275Cg==
X-Google-Smtp-Source: AGHT+IFeBqAAw/xZfJOIrv+PMMlVSoIDSLdN/PSNRJYjvS4mbp4KtNnaSSjCRhmZFu3zOoD/wmVTFw==
X-Received: by 2002:a17:902:e552:b0:1c3:3682:f83f with SMTP id n18-20020a170902e55200b001c33682f83fmr2476230plf.30.1694790693438;
        Fri, 15 Sep 2023 08:11:33 -0700 (PDT)
Message-ID: <99fb4575-9f8d-4ab6-bc22-911bbaa7ca55@daynix.com>
Date: Sat, 16 Sep 2023 00:11:27 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 07/13] softmmu/memory: enable automatic
 deallocation of memory regions
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>, qemu-devel@nongnu.org
Cc: xen-devel@lists.xenproject.org,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-8-ray.huang@amd.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <20230915111130.24064-8-ray.huang@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/15 20:11, Huang Rui wrote:
> From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> 
> When the memory region has a different life-cycle from that of her parent,
> could be automatically released, once has been unparent and once all of her
> references have gone away, via the object's free callback.
> 
> However, currently, references to the memory region are held by its owner
> without first incrementing the memory region object's reference count.
> As a result, the automatic deallocation of the object, not taking into
> account those references, results in use-after-free memory corruption.
> 
> This patch increases the reference count of an owned memory region object
> on each memory_region_ref() and decreases it on each memory_region_unref().
> 
> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> Signed-off-by: Huang Rui <ray.huang@amd.com>
> ---
> 
> V4 -> V5:
>      - ref/unref only owned memory regions (Akihiko)
> 
>   softmmu/memory.c | 5 +++++
>   1 file changed, 5 insertions(+)
> 
> diff --git a/softmmu/memory.c b/softmmu/memory.c
> index 7d9494ce70..15e1699750 100644
> --- a/softmmu/memory.c
> +++ b/softmmu/memory.c
> @@ -1800,6 +1800,9 @@ void memory_region_ref(MemoryRegion *mr)
>       /* MMIO callbacks most likely will access data that belongs
>        * to the owner, hence the need to ref/unref the owner whenever
>        * the memory region is in use.
> +     * Likewise, the owner keeps references to the memory region,
> +     * hence the need to ref/unref the memory region object to prevent
> +     * its automatic deallocation while still referenced by its owner.

This comment does not make sense. Traditionally no such automatic 
deallocation happens so the owner has been always required to free the 
memory region when it gets finalized.

"[QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands" 
introduces a different kind of memory region, which can be freed anytime 
before the device gets finalized. Even in this case, the owner removes 
the reference to the memory owner by doing res->region = NULL;

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 15:21:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 15:21:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603288.940232 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAcq-00088s-BX; Fri, 15 Sep 2023 15:20:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603288.940232; Fri, 15 Sep 2023 15:20:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhAcq-00088l-8b; Fri, 15 Sep 2023 15:20:56 +0000
Received: by outflank-mailman (input) for mailman id 603288;
 Fri, 15 Sep 2023 15:20:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=cweo=E7=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qhAcp-00088f-1b
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 15:20:55 +0000
Received: from mail-pf1-x42c.google.com (mail-pf1-x42c.google.com
 [2607:f8b0:4864:20::42c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 75bc6fb2-53db-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 17:20:54 +0200 (CEST)
Received: by mail-pf1-x42c.google.com with SMTP id
 d2e1a72fcca58-68fb2e9ebbfso1866928b3a.2
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 08:20:54 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 n17-20020aa78a51000000b0068bc014f352sm3106609pfa.7.2023.09.15.08.20.47
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 15 Sep 2023 08:20:52 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 75bc6fb2-53db-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694791252; x=1695396052; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=/c8yieboNB6oo1mu8ZkACI0svLfzvvTV7i2vZIioxzw=;
        b=pxx0cMKi+w6CYxRlUnLtX4MpRleFRRY1kyg6/itO4flOCpQPP98lHJNX/U8e2CbHpv
         AaPekEWzcxgrAFJ7bx0O1ttZXAM0MBQHHEUJR8G7Qk/3h6SPv60rDp/KL7LsgRuTiCLq
         2QxOp7PIfM86dFQAsa2Dj1f/Y1dj7ANWztCkwB4cbxmtBvw3iBoOCJRL4UzyDesdI9ub
         24ijXiGQhrlvBch6qC9O+Wqy6XJMd5GH//9WNlIezzgCpJf+cdF9ff1TM/gIOSj5OXEA
         ajYYLGzcs4BiJJuSI6tuWZQ4izgPkdjKD0bTcpurm60MZw9CWYJJi2B7/uo9mH2g8eFi
         jKCA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694791252; x=1695396052;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=/c8yieboNB6oo1mu8ZkACI0svLfzvvTV7i2vZIioxzw=;
        b=FeBuTUufawbfVotFKIpaMtU5Jq+dpCdEDAz2BzSU2NLPsQKN/wtG2eLustEsFZy8D8
         CnIeaW2QgpM+Zdnu5wlhTqddkIZ+pK4vZJPVIkqY5GjA+ObCU4VvSm3+qtb6TcE6Pdfi
         U/bB0i+5Rikqt4QnzmAFW+tt8irZvEo1LGeFyPkW50miCihwAeh+gt8F5b6BLXspJ2Tv
         0gXz0y0O1UwWd02i39aQhz2+INek1L3kwTf0LXTwFrNKr86j97wSHilxlGLR1CA1gF8E
         /AF4cmHDs0xo4MAEYt5lT5SEOOjP7RSYrymM8iEe1fyaMP2mH05MFuEQGmCn6RscnfAi
         /IHQ==
X-Gm-Message-State: AOJu0YzhkbwyLAq5SlSw6SMLOtY4tl19hrGXJBRJraG6vRQX3k9zmZsx
	8hhI7BvC7cnBOe307XLpkK3DSg==
X-Google-Smtp-Source: AGHT+IEGzwW/4d4Bs56A/WRm7j4T8sgYlpdt8z9DxtjMDAWb6/tf9I3QEoiPKszLJbdDXkW5LyBbjg==
X-Received: by 2002:a05:6a00:851:b0:690:42d5:4332 with SMTP id q17-20020a056a00085100b0069042d54332mr2285518pfk.6.1694791252653;
        Fri, 15 Sep 2023 08:20:52 -0700 (PDT)
Message-ID: <561abf48-d72c-467d-94fd-54ffa1dfb512@daynix.com>
Date: Sat, 16 Sep 2023 00:20:46 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 06/13] virtio-gpu: Support context init feature
 with virglrenderer
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>, qemu-devel@nongnu.org
Cc: xen-devel@lists.xenproject.org,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-7-ray.huang@amd.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <20230915111130.24064-7-ray.huang@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/15 20:11, Huang Rui wrote:
> Patch "virtio-gpu: CONTEXT_INIT feature" has added the context_init
> feature flags.
> We would like to enable the feature with virglrenderer, so add to create
> virgl renderer context with flags using context_id when valid.
> 
> Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> Signed-off-by: Huang Rui <ray.huang@amd.com>
> ---
> 
> V4 -> V5:
>      - Inverted patch 5 and 6 because we should configure
>        HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
> 
>   hw/display/virtio-gpu-virgl.c | 13 +++++++++++--
>   hw/display/virtio-gpu.c       |  2 ++
>   2 files changed, 13 insertions(+), 2 deletions(-)
> 
> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> index 8bb7a2c21f..312953ec16 100644
> --- a/hw/display/virtio-gpu-virgl.c
> +++ b/hw/display/virtio-gpu-virgl.c
> @@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
>       trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
>                                       cc.debug_name);
>   
> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
> -                                  cc.debug_name);
> +    if (cc.context_init) {
> +#ifdef HAVE_VIRGL_CONTEXT_INIT
> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
> +                                                 cc.context_init,
> +                                                 cc.nlen,
> +                                                 cc.debug_name);
> +        return;
> +#endif

This should deal with the case when context_init is set while 
HAVE_VIRGL_CONTEXT_INIT is not defined.


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 16:04:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 16:04:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603295.940243 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhBIz-0005Ct-It; Fri, 15 Sep 2023 16:04:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603295.940243; Fri, 15 Sep 2023 16:04:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhBIz-0005Cm-EU; Fri, 15 Sep 2023 16:04:29 +0000
Received: by outflank-mailman (input) for mailman id 603295;
 Fri, 15 Sep 2023 16:04:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=cweo=E7=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qhBIy-0005Cg-B5
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 16:04:28 +0000
Received: from mail-pf1-x436.google.com (mail-pf1-x436.google.com
 [2607:f8b0:4864:20::436])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8a2bfbb4-53e1-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 18:04:25 +0200 (CEST)
Received: by mail-pf1-x436.google.com with SMTP id
 d2e1a72fcca58-68fe39555a0so2082540b3a.3
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 09:04:25 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 a26-20020aa780da000000b0068ff267f094sm3150033pfn.158.2023.09.15.09.04.18
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 15 Sep 2023 09:04:23 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8a2bfbb4-53e1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694793864; x=1695398664; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=7xjJ3MhLzFB/78TdP6TmU291XQqb5tjT3DKBrgO8H54=;
        b=Cdq6/e1ax/hxSjd1FCe/ao9YJvKhErrmc6AMwWgF0a5TBAN2JQScXRcb1UBTMh/8OU
         E3e1YmZoPGTXYf/hC0OMxi2r1vyoALUHME/VjJ7XHXJLN6B4J4SPCPTmd6l/ZHJMcY5f
         kMWv3qB870WJV+9YN1N4/oJGQimhYJVGQNetTyzQ/fHK9N6kqPBE2oepFt3mVeLIXsXj
         KO9Izo0jPUBXhC4tQk1LRNMcO/81aNlXVd95QQ0CVk/FqePSv9/I4Jf8E1RAcLkRbxVg
         K9uUHlXNSsq7bpC/rBGKOsMoC76hDtGun4yMdThIrxce7X6b8ZbqXnJG8FbolnTfn1hP
         Q68g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694793864; x=1695398664;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=7xjJ3MhLzFB/78TdP6TmU291XQqb5tjT3DKBrgO8H54=;
        b=kneoeOi4AxxtZgTcoAZgLStWrKPE8werhr7u9vMBtXgbGiAPaRKDz8QcTSPnImEiX7
         8sdIWt6YXpzJG7tcAeQRKxezf5mZytJwhREzNULHG+ReWdVimGLh7ghh6Z9LDyeiFOAE
         8q9SUbTs3QfIQFb7uMUsAiI2CrQzuqjrnXGXu54+k/DicPA4ijOelediNQI5BbwLLuAJ
         z4NTnIrhihmG3XZfJACh6nlvR//yc9c3xbBUpbELs1XkeKpbPJZ+yYSEkYoq11E8wZA3
         04NeZYFccMVXGNDu38x6xo5cAQR8MiSD909K+1Hs3GkwZuvRxNXXDgrhhMG6VZHLurxR
         QIOA==
X-Gm-Message-State: AOJu0YwNhDNqIFeTLu2SSIJaHOJpT7SUQ6wI9oPm9/qbHnRL042QVELy
	hGXzCyKj2hnUDXm+wAUax2g0iQ==
X-Google-Smtp-Source: AGHT+IHLH1is+UJko0Vbh8oF95stkGXSzkqKgn7kiaS3g+QftQn3FWhjkA2JmUSB343OR7NtN9GNrA==
X-Received: by 2002:a05:6a00:1884:b0:68f:c078:b0b6 with SMTP id x4-20020a056a00188400b0068fc078b0b6mr2439986pfh.10.1694793863749;
        Fri, 15 Sep 2023 09:04:23 -0700 (PDT)
Message-ID: <a14b26dc-c804-4be8-83d5-088e71d37a7b@daynix.com>
Date: Sat, 16 Sep 2023 01:04:17 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>, qemu-devel@nongnu.org
Cc: xen-devel@lists.xenproject.org,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-10-ray.huang@amd.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <20230915111130.24064-10-ray.huang@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/15 20:11, Huang Rui wrote:
> From: Antonio Caggiano <antonio.caggiano@collabora.com>
> 
> Support BLOB resources creation, mapping and unmapping by calling the
> new stable virglrenderer 0.10 interface. Only enabled when available and
> via the blob config. E.g. -device virtio-vga-gl,blob=true
> 
> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> Signed-off-by: Huang Rui <ray.huang@amd.com>
> ---
> 
> V4 -> V5:
>      - Use memory_region_init_ram_ptr() instead of
>        memory_region_init_ram_device_ptr() (Akihiko)
> 
>   hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
>   hw/display/virtio-gpu.c        |   4 +-
>   include/hw/virtio/virtio-gpu.h |   5 +
>   meson.build                    |   4 +
>   4 files changed, 225 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> index 312953ec16..563a6f2f58 100644
> --- a/hw/display/virtio-gpu-virgl.c
> +++ b/hw/display/virtio-gpu-virgl.c
> @@ -17,6 +17,7 @@
>   #include "trace.h"
>   #include "hw/virtio/virtio.h"
>   #include "hw/virtio/virtio-gpu.h"
> +#include "hw/virtio/virtio-gpu-bswap.h"
>   
>   #include "ui/egl-helpers.h"
>   
> @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
>       virgl_renderer_resource_create(&args, NULL, 0);
>   }
>   
> +static void virgl_resource_destroy(VirtIOGPU *g,
> +                                   struct virtio_gpu_simple_resource *res)
> +{
> +    if (!res)
> +        return;
> +
> +    QTAILQ_REMOVE(&g->reslist, res, next);
> +
> +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
> +    g_free(res->addrs);
> +
> +    g_free(res);
> +}
> +
>   static void virgl_cmd_resource_unref(VirtIOGPU *g,
>                                        struct virtio_gpu_ctrl_command *cmd)
>   {
> +    struct virtio_gpu_simple_resource *res;
>       struct virtio_gpu_resource_unref unref;
>       struct iovec *res_iovs = NULL;
>       int num_iovs = 0;
> @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
>       VIRTIO_GPU_FILL_CMD(unref);
>       trace_virtio_gpu_cmd_res_unref(unref.resource_id);
>   
> +    res = virtio_gpu_find_resource(g, unref.resource_id);
> +
>       virgl_renderer_resource_detach_iov(unref.resource_id,
>                                          &res_iovs,
>                                          &num_iovs);
>       if (res_iovs != NULL && num_iovs != 0) {
>           virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
> +        if (res) {
> +            res->iov = NULL;
> +            res->iov_cnt = 0;
> +        }
>       }
> +
>       virgl_renderer_resource_unref(unref.resource_id);
> +
> +    virgl_resource_destroy(g, res);
>   }
>   
>   static void virgl_cmd_context_create(VirtIOGPU *g,
> @@ -426,6 +451,183 @@ static void virgl_cmd_get_capset(VirtIOGPU *g,
>       g_free(resp);
>   }
>   
> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> +
> +static void virgl_cmd_resource_create_blob(VirtIOGPU *g,
> +                                           struct virtio_gpu_ctrl_command *cmd)
> +{
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_create_blob cblob;
> +    struct virgl_renderer_resource_create_blob_args virgl_args = { 0 };
> +    int ret;
> +
> +    VIRTIO_GPU_FILL_CMD(cblob);
> +    virtio_gpu_create_blob_bswap(&cblob);
> +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
> +
> +    if (cblob.resource_id == 0) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> +                      __func__);
> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    res = virtio_gpu_find_resource(g, cblob.resource_id);
> +    if (res) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already exists %d\n",
> +                      __func__, cblob.resource_id);
> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> +    if (!res) {
> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> +        return;
> +    }
> +
> +    res->resource_id = cblob.resource_id;
> +    res->blob_size = cblob.size;
> +
> +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
> +        ret = virtio_gpu_create_mapping_iov(g, cblob.nr_entries, sizeof(cblob),
> +                                            cmd, &res->addrs, &res->iov,
> +                                            &res->iov_cnt);
> +        if (!ret) {
> +            g_free(res);
> +            cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> +            return;
> +        }
> +    }
> +
> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> +
> +    virgl_args.res_handle = cblob.resource_id;
> +    virgl_args.ctx_id = cblob.hdr.ctx_id;
> +    virgl_args.blob_mem = cblob.blob_mem;
> +    virgl_args.blob_id = cblob.blob_id;
> +    virgl_args.blob_flags = cblob.blob_flags;
> +    virgl_args.size = cblob.size;
> +    virgl_args.iovecs = res->iov;
> +    virgl_args.num_iovs = res->iov_cnt;
> +
> +    ret = virgl_renderer_resource_create_blob(&virgl_args);
> +    if (ret) {
> +        virgl_resource_destroy(g, res);
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: virgl blob create error: %s\n",
> +                      __func__, strerror(-ret));
> +        cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> +    }
> +}
> +
> +static void virgl_cmd_resource_map_blob(VirtIOGPU *g,
> +                                        struct virtio_gpu_ctrl_command *cmd)
> +{
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_map_blob mblob;
> +    int ret;
> +    void *data;
> +    uint64_t size;
> +    struct virtio_gpu_resp_map_info resp;
> +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
> +
> +    VIRTIO_GPU_FILL_CMD(mblob);
> +    virtio_gpu_map_blob_bswap(&mblob);
> +
> +    if (mblob.resource_id == 0) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> +                      __func__);
> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    res = virtio_gpu_find_resource(g, mblob.resource_id);
> +    if (!res) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
> +                      __func__, mblob.resource_id);
> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +    if (res->region) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already mapped %d\n",
> +		      __func__, mblob.resource_id);
> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    ret = virgl_renderer_resource_map(res->resource_id, &data, &size);
> +    if (ret) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource map error: %s\n",
> +                      __func__, strerror(-ret));
> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    res->region = g_new0(MemoryRegion, 1);
> +    if (!res->region) {
> +        virgl_renderer_resource_unmap(res->resource_id);
> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> +        return;
> +    }
> +    memory_region_init_ram_ptr(res->region, OBJECT(g), NULL, size, data);
> +    OBJECT(res->region)->free = g_free;
> +    memory_region_add_subregion(&b->hostmem, mblob.offset, res->region);
> +    memory_region_set_enabled(res->region, true);
> +
> +    memset(&resp, 0, sizeof(resp));
> +    resp.hdr.type = VIRTIO_GPU_RESP_OK_MAP_INFO;
> +    virgl_renderer_resource_get_map_info(mblob.resource_id, &resp.map_info);
> +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
> +}
> +
> +static int virtio_gpu_virgl_resource_unmap(VirtIOGPU *g,
> +                                           struct virtio_gpu_simple_resource
> +                                           *res)
> +{
> +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
> +
> +    if (!res) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already unmapped %d\n",
> +                      __func__, res->resource_id);
> +        return VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;

This returns enum virtio_gpu_ctrl_type while 
virgl_renderer_resource_unmap() returns -errno and the returned error 
code is ignored.

I think you can just inline this function into 
virgl_cmd_resource_unmap_blob(). It will be more concise and consistent 
with virgl_cmd_resource_map_blob().

> +    }
> +
> +    memory_region_set_enabled(res->region, false);
> +    memory_region_del_subregion(&b->hostmem, res->region);
> +    object_unparent(OBJECT(res->region));
> +    res->region = NULL;
> +
> +    return virgl_renderer_resource_unmap(res->resource_id);
> +}
> +
> +static void virgl_cmd_resource_unmap_blob(VirtIOGPU *g,
> +                                          struct virtio_gpu_ctrl_command *cmd)
> +{
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_unmap_blob ublob;
> +    VIRTIO_GPU_FILL_CMD(ublob);
> +    virtio_gpu_unmap_blob_bswap(&ublob);
> +
> +    if (ublob.resource_id == 0) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> +                      __func__);
> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    res = virtio_gpu_find_resource(g, ublob.resource_id);
> +    if (!res) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
> +                      __func__, ublob.resource_id);
> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    virtio_gpu_virgl_resource_unmap(g, res);
> +}
> +
> +#endif /* HAVE_VIRGL_RESOURCE_BLOB */
> +
>   void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
>                                         struct virtio_gpu_ctrl_command *cmd)
>   {
> @@ -492,6 +694,17 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
>       case VIRTIO_GPU_CMD_GET_EDID:
>           virtio_gpu_get_edid(g, cmd);
>           break;
> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> +    case VIRTIO_GPU_CMD_RESOURCE_CREATE_BLOB:
> +        virgl_cmd_resource_create_blob(g, cmd);
> +        break;
> +    case VIRTIO_GPU_CMD_RESOURCE_MAP_BLOB:
> +        virgl_cmd_resource_map_blob(g, cmd);
> +        break;
> +    case VIRTIO_GPU_CMD_RESOURCE_UNMAP_BLOB:
> +        virgl_cmd_resource_unmap_blob(g, cmd);
> +        break;
> +#endif /* HAVE_VIRGL_RESOURCE_BLOB */
>       default:
>           cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
>           break;
> diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> index 5b7a7eab4f..cc4c1f81bb 100644
> --- a/hw/display/virtio-gpu.c
> +++ b/hw/display/virtio-gpu.c
> @@ -1367,10 +1367,12 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp)
>               return;
>           }
>   
> +#ifndef HAVE_VIRGL_RESOURCE_BLOB
>           if (virtio_gpu_virgl_enabled(g->parent_obj.conf)) {
> -            error_setg(errp, "blobs and virgl are not compatible (yet)");
> +            error_setg(errp, "Linked virglrenderer does not support blob resources");
>               return;
>           }
> +#endif
>       }
>   
>       if (!virtio_gpu_base_device_realize(qdev,
> diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h
> index 55973e112f..b9adc28071 100644
> --- a/include/hw/virtio/virtio-gpu.h
> +++ b/include/hw/virtio/virtio-gpu.h
> @@ -58,6 +58,11 @@ struct virtio_gpu_simple_resource {
>       int dmabuf_fd;
>       uint8_t *remapped;
>   
> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> +    /* only blob resource needs this region to be mapped as guest mmio */
> +    MemoryRegion *region;
> +#endif
> +

Since this is specific to virgl, let's create a struct that embeds 
virtio_gpu_simple_resource and use it to avoid modifying virtio-gpu 
common code.


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 16:37:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 16:37:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603303.940251 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhBp6-0007EG-6s; Fri, 15 Sep 2023 16:37:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603303.940251; Fri, 15 Sep 2023 16:37:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhBp6-0007E9-3t; Fri, 15 Sep 2023 16:37:40 +0000
Received: by outflank-mailman (input) for mailman id 603303;
 Fri, 15 Sep 2023 16:37:39 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=cweo=E7=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qhBp4-0007Bh-Td
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 16:37:39 +0000
Received: from mail-pl1-x62f.google.com (mail-pl1-x62f.google.com
 [2607:f8b0:4864:20::62f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2d8214f9-53e6-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 18:37:37 +0200 (CEST)
Received: by mail-pl1-x62f.google.com with SMTP id
 d9443c01a7336-1c09673b006so18708255ad.1
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 09:37:37 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 13-20020a170902ee4d00b001aaecc0b6ffsm3708212plo.160.2023.09.15.09.37.30
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 15 Sep 2023 09:37:35 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2d8214f9-53e6-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694795856; x=1695400656; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to:from
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=QvbdwGc2q9ykrPdPA/5vXC1OmEEsdu9JN7M2jZpSlQY=;
        b=zy0tAPcmT95f243WIxUgdket5RNexmVdRSxwu3BRohaBQllLpXuiQPoekt1R7HgqTw
         qvS7AiVunFG3aq/SIcjNxPkJt1AkTGuVGR3nVQzgMbEq9N2ocUScIuqiZVOGPDfFWTmI
         nl/i0Xhy4bWVW8FgUfSXR/Uz3ToLVQAX3VSQSk0DzCX1UVkvdqd6dUKV9Pb3XB9jcEkS
         VoLyb7gpuswv60x6KDKI1ntdC02PH0ZeQzmBI7fNF15o9/G22IAwc+7w1WAC3pixN6ib
         mQuEsZicQfy9nOb+kQilt+T36eBAgOjb7LZA+8uj84exuNWA3tDik0cHbUmwulDKkK9O
         TgYQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694795856; x=1695400656;
        h=content-transfer-encoding:in-reply-to:references:cc:to:from
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=QvbdwGc2q9ykrPdPA/5vXC1OmEEsdu9JN7M2jZpSlQY=;
        b=lvdTUvkZfNmFs73gP7tw/7L3FwfqA/ot0nLHNDEMC/YX1kIqoNjuFA6kJGPFFMJhXY
         H/A7dkYNHn6r8Ov6ZsB54/lFSB2l9/zMNIXn0kOzTLIkyFRe5r5Ha7UGcuWMd28j0vvp
         F435DJSfk/Ej2QAyqN/1fx/JxtzHDXTj2gAI3vEYuO4yUIFk35wE9W1uq1Ai2TJyjvBz
         5cMOdFBZ6hCt9C/1HYq49GmTIGILATbTFbB5WB+c5mn3rhMxJPlyLDQCUIt6ZpQ59pI4
         XhzhFeRmtWMi1RA3oEn3kTgyhQnI7DKdrDHs4Vz8+qdJTquf+3lj9SzYKUR4KfyX55MH
         XJFQ==
X-Gm-Message-State: AOJu0YyzhAOWOMiDF+lLEXP4r5PjH4dac/0hWVR4scNgnMQGcroo+/SH
	WWiCsRFi/jWa+YYLXCY5PW/3BA==
X-Google-Smtp-Source: AGHT+IHbWHKGZmN4Ilxyi7utzfQU0/OWAKabcK7DzJPoXar13eQHnjOLF+Kj6/lxHHwJgWxPUH4Dfw==
X-Received: by 2002:a17:903:2291:b0:1b8:6cae:4400 with SMTP id b17-20020a170903229100b001b86cae4400mr2373071plh.37.1694795855923;
        Fri, 15 Sep 2023 09:37:35 -0700 (PDT)
Message-ID: <9700c2ed-93c5-4bf6-bc6b-d5d33359d9a7@daynix.com>
Date: Sat, 16 Sep 2023 01:37:29 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
To: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>, qemu-devel@nongnu.org
Cc: xen-devel@lists.xenproject.org,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-10-ray.huang@amd.com>
 <a14b26dc-c804-4be8-83d5-088e71d37a7b@daynix.com>
In-Reply-To: <a14b26dc-c804-4be8-83d5-088e71d37a7b@daynix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 2023/09/16 1:04, Akihiko Odaki wrote:
> On 2023/09/15 20:11, Huang Rui wrote:
>> From: Antonio Caggiano <antonio.caggiano@collabora.com>
>>
>> Support BLOB resources creation, mapping and unmapping by calling the
>> new stable virglrenderer 0.10 interface. Only enabled when available and
>> via the blob config. E.g. -device virtio-vga-gl,blob=true
>>
>> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
>> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>> ---
>>
>> V4 -> V5:
>>      - Use memory_region_init_ram_ptr() instead of
>>        memory_region_init_ram_device_ptr() (Akihiko)
>>
>>   hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
>>   hw/display/virtio-gpu.c        |   4 +-
>>   include/hw/virtio/virtio-gpu.h |   5 +
>>   meson.build                    |   4 +
>>   4 files changed, 225 insertions(+), 1 deletion(-)
>>
>> diff --git a/hw/display/virtio-gpu-virgl.c 
>> b/hw/display/virtio-gpu-virgl.c
>> index 312953ec16..563a6f2f58 100644
>> --- a/hw/display/virtio-gpu-virgl.c
>> +++ b/hw/display/virtio-gpu-virgl.c
>> @@ -17,6 +17,7 @@
>>   #include "trace.h"
>>   #include "hw/virtio/virtio.h"
>>   #include "hw/virtio/virtio-gpu.h"
>> +#include "hw/virtio/virtio-gpu-bswap.h"
>>   #include "ui/egl-helpers.h"
>> @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
>>       virgl_renderer_resource_create(&args, NULL, 0);
>>   }
>> +static void virgl_resource_destroy(VirtIOGPU *g,
>> +                                   struct virtio_gpu_simple_resource 
>> *res)
>> +{
>> +    if (!res)
>> +        return;
>> +
>> +    QTAILQ_REMOVE(&g->reslist, res, next);
>> +
>> +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
>> +    g_free(res->addrs);
>> +
>> +    g_free(res);
>> +}
>> +
>>   static void virgl_cmd_resource_unref(VirtIOGPU *g,
>>                                        struct virtio_gpu_ctrl_command 
>> *cmd)
>>   {
>> +    struct virtio_gpu_simple_resource *res;
>>       struct virtio_gpu_resource_unref unref;
>>       struct iovec *res_iovs = NULL;
>>       int num_iovs = 0;
>> @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
>>       VIRTIO_GPU_FILL_CMD(unref);
>>       trace_virtio_gpu_cmd_res_unref(unref.resource_id);
>> +    res = virtio_gpu_find_resource(g, unref.resource_id);
>> +
>>       virgl_renderer_resource_detach_iov(unref.resource_id,
>>                                          &res_iovs,
>>                                          &num_iovs);
>>       if (res_iovs != NULL && num_iovs != 0) {
>>           virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
>> +        if (res) {
>> +            res->iov = NULL;
>> +            res->iov_cnt = 0;
>> +        }
>>       }
>> +
>>       virgl_renderer_resource_unref(unref.resource_id);
>> +
>> +    virgl_resource_destroy(g, res);

This may leak memory region.


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 16:48:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 16:48:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603309.940262 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhBzW-0001kd-4p; Fri, 15 Sep 2023 16:48:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603309.940262; Fri, 15 Sep 2023 16:48:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhBzW-0001kW-29; Fri, 15 Sep 2023 16:48:26 +0000
Received: by outflank-mailman (input) for mailman id 603309;
 Fri, 15 Sep 2023 16:48:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=cweo=E7=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qhBzU-0001kJ-Sf
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 16:48:24 +0000
Received: from mail-pf1-x42f.google.com (mail-pf1-x42f.google.com
 [2607:f8b0:4864:20::42f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id adf9c9f0-53e7-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 18:48:22 +0200 (CEST)
Received: by mail-pf1-x42f.google.com with SMTP id
 d2e1a72fcca58-68fbd5cd0ceso2040283b3a.1
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 09:48:22 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 m17-20020a17090ab79100b00262eccfa29fsm4990545pjr.33.2023.09.15.09.48.15
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 15 Sep 2023 09:48:20 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: adf9c9f0-53e7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694796501; x=1695401301; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=1ABFv1pK71RPcXpZmYjUJAjE3pR/vvyihnbU3LDvHYM=;
        b=i1390cPAXNtV3h2TxMComW+ybl5jYzmWeq6FU2hqcuxB0lo2duAap2XsQHdOSMRpcd
         RVM8pjZ3qm2Qxh82Okk81YI+TQaiyNljvnmo0wCE2VPezXcm2fN29RHLbrQPx+m4AwPo
         kS9GFHLsDqMzCOML3WrZ1DFpjkmBZgFZVCo/DyGfzfX2DaXtfxvqmJxw5FxZSyL1tQ6K
         l9VK1fsFvpgWMqEB0zCOs2ayrNPKjpucsZigfZ4nH6r9Ml0gjXSxOGg5j+3cLgVGxYnL
         jKKOEfLxSHK6nf8sIPyIsf3/t1mn/ucILO0HrHVnjz6I0bqfdgoR3Waf2IdYHEc37Q5E
         w0aQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694796501; x=1695401301;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=1ABFv1pK71RPcXpZmYjUJAjE3pR/vvyihnbU3LDvHYM=;
        b=QVS6OqDubwPgYBfjCb61p4QNGh5WUJ12Y/5gfHlXQ9Gx5u/v5sROxrvA1rPgb4hg7l
         2QIs5F02cY6M3A1iPwmfdmCO0mn1Q5XiSrTMcdxohh1yiIMuZi1KmOqSaOvnA37yRrZz
         Jiy9BXD2mUxghOisf+Sb033dS8Gs1skWh+rfa/kVywPaEiT/8CN5arjLwITgVrA7FjXy
         YI6vxjrYhYsu3UOc1213hdjW08uj/CP3HjylBijfU8iAOPfUwqa56wJOXmbwePz1YuNz
         HQ96e3sIgD0vjCpRQFkAPzYaBzlRCKmUh+89YKxiGuoaebAYYaKhNraKNNF3KPeY1O21
         AzCQ==
X-Gm-Message-State: AOJu0YzKPyqUc/N3negddWuTzFlYC6dvHPX5lhMgMJJcxIx+YrkDus6N
	4wrVKgspI6VEdiaTnxULIM3nyA==
X-Google-Smtp-Source: AGHT+IHli99nSnZrzIK9dwMuLFLoTLYUlA60VSGUBhns+P/ipbmvVaqxTm9+cI83BiSH03TdQVZIsA==
X-Received: by 2002:a17:90a:fb92:b0:274:6a79:17c1 with SMTP id cp18-20020a17090afb9200b002746a7917c1mr2090131pjb.15.1694796500796;
        Fri, 15 Sep 2023 09:48:20 -0700 (PDT)
Message-ID: <a3a46b78-9feb-47f3-bd3e-519ebe899737@daynix.com>
Date: Sat, 16 Sep 2023 01:48:14 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 10/13] virtio-gpu: Resource UUID
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>, qemu-devel@nongnu.org
Cc: xen-devel@lists.xenproject.org,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-11-ray.huang@amd.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <20230915111130.24064-11-ray.huang@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/15 20:11, Huang Rui wrote:
> From: Antonio Caggiano <antonio.caggiano@collabora.com>
> 
> Enable resource UUID feature and implement command resource assign UUID.
> This is done by introducing a hash table to map resource IDs to their
> UUIDs.
> 
> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> Signed-off-by: Huang Rui <ray.huang@amd.com>
> ---
> 
> V4 -> V5:
>      - Add virtio migration handling for uuid (Akihiko)
>      - Adjust sequence to allocate gpu resource before virglrender resource
>        creation (Akihiko)
>      - Clean up (Akihiko)
> 
>   hw/display/trace-events        |  1 +
>   hw/display/virtio-gpu-base.c   |  2 ++
>   hw/display/virtio-gpu-virgl.c  | 21 ++++++++++++
>   hw/display/virtio-gpu.c        | 58 ++++++++++++++++++++++++++++++++++
>   include/hw/virtio/virtio-gpu.h |  6 ++++
>   5 files changed, 88 insertions(+)
> 
> diff --git a/hw/display/trace-events b/hw/display/trace-events
> index 2336a0ca15..54d6894c59 100644
> --- a/hw/display/trace-events
> +++ b/hw/display/trace-events
> @@ -41,6 +41,7 @@ virtio_gpu_cmd_res_create_blob(uint32_t res, uint64_t size) "res 0x%x, size %" P
>   virtio_gpu_cmd_res_unref(uint32_t res) "res 0x%x"
>   virtio_gpu_cmd_res_back_attach(uint32_t res) "res 0x%x"
>   virtio_gpu_cmd_res_back_detach(uint32_t res) "res 0x%x"
> +virtio_gpu_cmd_res_assign_uuid(uint32_t res) "res 0x%x"
>   virtio_gpu_cmd_res_xfer_toh_2d(uint32_t res) "res 0x%x"
>   virtio_gpu_cmd_res_xfer_toh_3d(uint32_t res) "res 0x%x"
>   virtio_gpu_cmd_res_xfer_fromh_3d(uint32_t res) "res 0x%x"
> diff --git a/hw/display/virtio-gpu-base.c b/hw/display/virtio-gpu-base.c
> index 4f2b0ba1f3..f44388715c 100644
> --- a/hw/display/virtio-gpu-base.c
> +++ b/hw/display/virtio-gpu-base.c
> @@ -236,6 +236,8 @@ virtio_gpu_base_get_features(VirtIODevice *vdev, uint64_t features,
>           features |= (1 << VIRTIO_GPU_F_CONTEXT_INIT);
>       }
>   
> +    features |= (1 << VIRTIO_GPU_F_RESOURCE_UUID);
> +
>       return features;
>   }
>   
> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> index 563a6f2f58..8a017dbeb4 100644
> --- a/hw/display/virtio-gpu-virgl.c
> +++ b/hw/display/virtio-gpu-virgl.c
> @@ -36,11 +36,20 @@ static void virgl_cmd_create_resource_2d(VirtIOGPU *g,
>   {
>       struct virtio_gpu_resource_create_2d c2d;
>       struct virgl_renderer_resource_create_args args;
> +    struct virtio_gpu_simple_resource *res;
>   
>       VIRTIO_GPU_FILL_CMD(c2d);
>       trace_virtio_gpu_cmd_res_create_2d(c2d.resource_id, c2d.format,
>                                          c2d.width, c2d.height);
>   
> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> +    if (!res) {
> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> +        return;
> +    }
> +    res->resource_id = c2d.resource_id;
> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> +

The struct virtio_gpu_simple_resource for a resource created with 
virgl_cmd_create_resource_2d() and virgl_resource_attach_backing() will 
not have iov and iov_cnt set, which is inconsistent with 
virgl_cmd_resource_create_blob().

>       args.handle = c2d.resource_id;
>       args.target = 2;
>       args.format = c2d.format;
> @@ -60,11 +69,20 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
>   {
>       struct virtio_gpu_resource_create_3d c3d;
>       struct virgl_renderer_resource_create_args args;
> +    struct virtio_gpu_simple_resource *res;
>   
>       VIRTIO_GPU_FILL_CMD(c3d);
>       trace_virtio_gpu_cmd_res_create_3d(c3d.resource_id, c3d.format,
>                                          c3d.width, c3d.height, c3d.depth);
>   
> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> +    if (!res) {
> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> +        return;
> +    }
> +    res->resource_id = c3d.resource_id;
> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> +
>       args.handle = c3d.resource_id;
>       args.target = c3d.target;
>       args.format = c3d.format;
> @@ -682,6 +700,9 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
>           /* TODO add security */
>           virgl_cmd_ctx_detach_resource(g, cmd);
>           break;
> +    case VIRTIO_GPU_CMD_RESOURCE_ASSIGN_UUID:
> +        virtio_gpu_resource_assign_uuid(g, cmd);
> +        break;
>       case VIRTIO_GPU_CMD_GET_CAPSET_INFO:
>           virgl_cmd_get_capset_info(g, cmd);
>           break;
> diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> index cc4c1f81bb..44414c1c5e 100644
> --- a/hw/display/virtio-gpu.c
> +++ b/hw/display/virtio-gpu.c
> @@ -966,6 +966,38 @@ virtio_gpu_resource_detach_backing(VirtIOGPU *g,
>       virtio_gpu_cleanup_mapping(g, res);
>   }
>   
> +void virtio_gpu_resource_assign_uuid(VirtIOGPU *g,
> +                                     struct virtio_gpu_ctrl_command *cmd)
> +{
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_assign_uuid assign;
> +    struct virtio_gpu_resp_resource_uuid resp;
> +    QemuUUID *uuid;
> +
> +    VIRTIO_GPU_FILL_CMD(assign);
> +    virtio_gpu_bswap_32(&assign, sizeof(assign));
> +    trace_virtio_gpu_cmd_res_assign_uuid(assign.resource_id);
> +
> +    res = virtio_gpu_find_check_resource(g, assign.resource_id, false, __func__, &cmd->error);
> +    if (!res) {
> +        return;
> +    }
> +
> +    memset(&resp, 0, sizeof(resp));
> +    resp.hdr.type = VIRTIO_GPU_RESP_OK_RESOURCE_UUID;
> +
> +    uuid = g_hash_table_lookup(g->resource_uuids, GUINT_TO_POINTER(assign.resource_id));
> +    if (!uuid) {
> +        uuid = g_new(QemuUUID, 1);
> +        qemu_uuid_generate(uuid);
> +        g_hash_table_insert(g->resource_uuids, GUINT_TO_POINTER(assign.resource_id), uuid);
> +        res->has_uuid = true;
> +    }

What about embedding uuid into struct virtio_gpu_simple_resource? You 
will not need to maintain another table in this way.


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 16:58:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 16:58:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603316.940272 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhC9R-0004zn-2s; Fri, 15 Sep 2023 16:58:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603316.940272; Fri, 15 Sep 2023 16:58:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhC9Q-0004zg-Vt; Fri, 15 Sep 2023 16:58:40 +0000
Received: by outflank-mailman (input) for mailman id 603316;
 Fri, 15 Sep 2023 16:58:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=cweo=E7=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qhC9Q-0004za-ID
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 16:58:40 +0000
Received: from mail-pf1-x432.google.com (mail-pf1-x432.google.com
 [2607:f8b0:4864:20::432])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1dca5fe4-53e9-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 18:58:39 +0200 (CEST)
Received: by mail-pf1-x432.google.com with SMTP id
 d2e1a72fcca58-68fbb10dea4so1955779b3a.3
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 09:58:39 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 fm25-20020a056a002f9900b0068782960099sm3185450pfb.22.2023.09.15.09.58.32
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 15 Sep 2023 09:58:37 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1dca5fe4-53e9-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694797118; x=1695401918; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=SuhfdU4PspnFHfisOXH5BuuofTvFKNo2MDW2PD1bi8M=;
        b=uqlymalZGx0UemnQ9CEddvuO/G+eaMFhjv0wPo9vI8qpIw2i9J9OK8h32/zluqVnhB
         C75a/2J274IOXNhFkyb6jPdUjNujRXzDY1jdtVQl6aXoRFnkqzfyTmcr17X+RphMfIZv
         mOe8tZpz0SVYstkvVUr0Ki6JSbFCuz59dymnkMxOeBAnIXfXf40TQOora4/sgqqFDCJB
         Zf77jzxPzsqpJJ22OwfGXb/R9MLk4350oxYg9ZDwkCss7Xo/RPOQC71pGTrmTAuFYXCt
         e/7zAAUl7P/qkUxuyiLaLo6hVRSd7sqvNbrzkvjZ267KplapOLQvdG4cEnRMYCTa9aR9
         zehQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694797118; x=1695401918;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=SuhfdU4PspnFHfisOXH5BuuofTvFKNo2MDW2PD1bi8M=;
        b=gvQcmXwBKA4x/2v7XZizjijXzfFFLPaBvrZUOgP37cA72nYFwiAtQBq7RfeZ/G0/f7
         48nY6s5CZi/LBiKpEvkIGcxnfBY1/irlByzvbA4Pl11QM9jfMiPFmrCPNHg2N0qXTnRs
         kfLJJesB+ZqkOh1kmeL1f5HjmUJTbx+WSlgKuA1nlHT1XfqaQpSNUBZ4KsPEkbBUBolz
         L2fPspFBjQmp/avry2v9VVVkf/Mccm4/3lerQeuTUncPrwklU9NHIOnnu+sraQCqJO+b
         CfM5a1i9+DQxEza3Y2eW0KHFTk/YhuCE7j9Pc0CdgSNVtczeFUZVyckmabOJiH8LkmLJ
         fVow==
X-Gm-Message-State: AOJu0YzzLu12p5vZL7Tb8AleUK+ApFquseR+YSbdVQjoOy+ZOWcvex3t
	cDw9OP6Y0jajBE2fTywb14/2EQ==
X-Google-Smtp-Source: AGHT+IFdIGM6BidTwVLg4yqxDpSenVicZi7FNFdLCOeFim7bvnHJNiyUoQPR1KebsFw6KPvuwdbZBA==
X-Received: by 2002:a05:6a20:3d83:b0:13d:bf07:7444 with SMTP id s3-20020a056a203d8300b0013dbf077444mr2649176pzi.0.1694797117959;
        Fri, 15 Sep 2023 09:58:37 -0700 (PDT)
Message-ID: <37ed7472-428f-4a5a-8ac9-fd2a7ab05691@daynix.com>
Date: Sat, 16 Sep 2023 01:58:31 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 06/13] virtio-gpu: Support context init feature
 with virglrenderer
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>, qemu-devel@nongnu.org
Cc: xen-devel@lists.xenproject.org,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-7-ray.huang@amd.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <20230915111130.24064-7-ray.huang@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/15 20:11, Huang Rui wrote:
> Patch "virtio-gpu: CONTEXT_INIT feature" has added the context_init
> feature flags.
> We would like to enable the feature with virglrenderer, so add to create
> virgl renderer context with flags using context_id when valid.
> 
> Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> Signed-off-by: Huang Rui <ray.huang@amd.com>
> ---
> 
> V4 -> V5:
>      - Inverted patch 5 and 6 because we should configure
>        HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
> 
>   hw/display/virtio-gpu-virgl.c | 13 +++++++++++--
>   hw/display/virtio-gpu.c       |  2 ++
>   2 files changed, 13 insertions(+), 2 deletions(-)
> 
> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> index 8bb7a2c21f..312953ec16 100644
> --- a/hw/display/virtio-gpu-virgl.c
> +++ b/hw/display/virtio-gpu-virgl.c
> @@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
>       trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
>                                       cc.debug_name);
>   
> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
> -                                  cc.debug_name);
> +    if (cc.context_init) {
> +#ifdef HAVE_VIRGL_CONTEXT_INIT
> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
> +                                                 cc.context_init,
> +                                                 cc.nlen,
> +                                                 cc.debug_name);
> +        return;
> +#endif
> +    }
> +
> +    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen, cc.debug_name);
>   }
>   
>   static void virgl_cmd_context_destroy(VirtIOGPU *g,
> diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> index 3e658f1fef..a66cbd9930 100644
> --- a/hw/display/virtio-gpu.c
> +++ b/hw/display/virtio-gpu.c
> @@ -1506,6 +1506,8 @@ static Property virtio_gpu_properties[] = {
>       DEFINE_PROP_BIT("blob", VirtIOGPU, parent_obj.conf.flags,
>                       VIRTIO_GPU_FLAG_BLOB_ENABLED, false),
>       DEFINE_PROP_SIZE("hostmem", VirtIOGPU, parent_obj.conf.hostmem, 0),
> +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
> +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, false),
>       DEFINE_PROP_END_OF_LIST(),
>   };
>   

I think it's more convenient if this feature is enabled by default.


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 17:04:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 17:04:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603323.940281 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhCEh-0007Ko-LM; Fri, 15 Sep 2023 17:04:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603323.940281; Fri, 15 Sep 2023 17:04:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhCEh-0007Kh-Ie; Fri, 15 Sep 2023 17:04:07 +0000
Received: by outflank-mailman (input) for mailman id 603323;
 Fri, 15 Sep 2023 17:04:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DYUW=E7=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qhCEg-0007KZ-Ii
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 17:04:06 +0000
Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com
 [66.111.4.25]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id de210d87-53e9-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 19:04:03 +0200 (CEST)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.46])
 by mailout.nyi.internal (Postfix) with ESMTP id 007BE5C00F7;
 Fri, 15 Sep 2023 13:04:01 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute2.internal (MEProxy); Fri, 15 Sep 2023 13:04:00 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 15 Sep 2023 13:03:59 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: de210d87-53e9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm1; t=
	1694797440; x=1694883840; bh=LVbBNxpAeKgLQAa3HP57HtgBVcAKesVrZi0
	FcBdP+GQ=; b=01AJ+dho/1xrJtILnT1BFvcAQFhPQuV6IY0Nlxk6YI/MTbC9DZT
	gONsTxP23M9cdG+Crvwe2aWlSrBJSWMEIU39lSeqZulmEkGKXQNjz2/etct8Ghld
	2ehSJ1ycIg9EVpVgAMyhIE1wc1VMnEd5hLxFFcNfoMzZIEFsXHJKfsyM4xrsM/eG
	9x4khxMDySP8N78w0If5SwRj5vZo7hFH24Cwc6P1PvRnRPyhKhi0hmUcMlip79qL
	BlFcZfr+OGZaK3VwYBjNjGlNbhWWZhedlXY4Ot0fsDXPfl+BG52IufLhS4wkINKm
	Y4D06tkilSdO2BbhiJVg4yW0Ccy5UQHhxaQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; t=1694797440; x=1694883840; bh=LVbBNxpAeKgLQ
	Aa3HP57HtgBVcAKesVrZi0FcBdP+GQ=; b=DMd8VSTHdy++jeVpic+l1hEUXVO7t
	PdZn901UthHgb9IFV374jyqdkGhTmT7OXeVcD/h4cLjdDfcgmsyifdhbcAvhVu2h
	GZ+CYWmw1dQmgw/JJn+k5NpOADFWl3IsWKc3Ad4Cb8tM8CR9ZJ8B5d2yLMuaEwTX
	n3sgflNdFmY/KBX1id3MFrqO9W4hP3YGJypp7DUg0v5pyebjs6iYXpz81jyCXHZv
	EvTni5ZLQ+bwInHTUlTmAqolYAk1LjzJbMVh2ktE7bhaPa8U/D0MZfo1HZuAz0Zd
	6Ep7nzk1zm9G5rYxBE62i2yOCCQkvHEsPgqWSfOjT3nbWGxkvv46QIv6A==
X-ME-Sender: <xms:gI4EZSuual_D5cDAmKu-83fC0FQciOXxnFunwdsyEi8JJd_6H7rupA>
    <xme:gI4EZXfmgJrn6AQkl9a-Ne1wG7Yi2lqv7F8QulIqAQynqRybpnUJ0zTLF-D3_wX0f
    Og4BEZ0_O56zA>
X-ME-Received: <xmr:gI4EZdxiBTfLKgZGvkI8D0gAMV2k9zQwY7ZaPPv3P547t_oC8V2MVFSSDhuxDchEXI0hZqj3EmkVPKtMK7iWXEb2KYJko0rg5Gk>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudejvddguddthecutefuodetggdotefrod
    ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
    necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
    enucfjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghr
    vghkucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesih
    hnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpefg
    udelteefvefhfeehieetleeihfejhfeludevteetkeevtedtvdegueetfeejudenucevlh
    hushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgv
    khesihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:gI4EZdMr0HOykIdiDPz1p38aL39gHs2HalcZJdk4JuyEwn_SaYF0SQ>
    <xmx:gI4EZS__yfOhw5DbhS5CFb2lRkz7gw4k9Qjg3vaD1thGuQnqzlE2nQ>
    <xmx:gI4EZVV9gMoFkZzYTMwMjTwbRp3Gv-UsbqTjsDa_KToOIIIok2Kovg>
    <xmx:gI4EZUIjHrJZRiTy4iulOVXeoUAcnOrKRPw4zhIMAmHZpYOmKHBoTw>
Feedback-ID: i1568416f:Fastmail
Date: Fri, 15 Sep 2023 19:03:52 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/shutdown: change default reboot method preference
Message-ID: <ZQSOfOvO4xKO/nvz@mail-itl>
References: <20230914152120.92696-1-roger.pau@citrix.com>
 <2d767f96-9f20-e786-9148-cae5c30a41fd@citrix.com>
 <ZQQDthWFElFEOhZ_@MacBook-MacBook-Pro-de-Roger.local>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="naEGlt9VSeCl9SNW"
Content-Disposition: inline
In-Reply-To: <ZQQDthWFElFEOhZ_@MacBook-MacBook-Pro-de-Roger.local>


--naEGlt9VSeCl9SNW
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Fri, 15 Sep 2023 19:03:52 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH] x86/shutdown: change default reboot method preference

On Fri, Sep 15, 2023 at 09:11:50AM +0200, Roger Pau Monn=C3=A9 wrote:
> On Thu, Sep 14, 2023 at 06:42:03PM +0100, Andrew Cooper wrote:
> > On 14/09/2023 4:21 pm, Roger Pau Monne wrote:
> > > The current logic to chose the preferred reboot method is based on th=
e mode Xen
> > > has been booted into, so if the box is booted from UEFI, the preferre=
d reboot
> > > method will be to use the ResetSystem() run time service call.
> > >
> > > However, that call seems to be widely untested once the firmware has =
exited
> > > boot services, and quite often leads to a result similar to:
> >=20
> > I don't know how true this is.=C2=A0 What Xen does differently to most =
of the
> > rest of the world is not calling SetVirtualAddressMap()
>=20
> Hm, but that doesn't seem to affect the rest of the run-time services
> (at least on this box), it's (just?) ResetSystem() that misbehaves.

I've seen (too) many firmwares where also GetVariable crashes without
SetVirtualAddressMap(). That's why we have a build-time option to
actually call SetVirtualAddressMap().

Anyway, I agree that preferring ACPI reboot even when booted through
UEFI is a good idea.

> I can remove that sentence however, it is more of a guess rather than
> a fact.
>=20
> >=20
> > >
> > > Hardware Dom0 shutdown: rebooting machine
> > > ----[ Xen-4.18-unstable  x86_64  debug=3Dy  Tainted:   C    ]----
> > > CPU:    0
> > > RIP:    e008:[<0000000000000017>] 0000000000000017
> > > RFLAGS: 0000000000010202   CONTEXT: hypervisor
> > > [...]
> > > Xen call trace:
> > >    [<0000000000000017>] R 0000000000000017
> > >    [<ffff83207eff7b50>] S ffff83207eff7b50
> > >    [<ffff82d0403525aa>] F machine_restart+0x1da/0x261
> > >    [<ffff82d04035263c>] F apic_wait_icr_idle+0/0x37
> > >    [<ffff82d040233689>] F smp_call_function_interrupt+0xc7/0xcb
> > >    [<ffff82d040352f05>] F call_function_interrupt+0x20/0x34
> > >    [<ffff82d04033b0d5>] F do_IRQ+0x150/0x6f3
> > >    [<ffff82d0402018c2>] F common_interrupt+0x132/0x140
> > >    [<ffff82d040283d33>] F arch/x86/acpi/cpu_idle.c#acpi_idle_do_entry=
+0x113/0x129
> > >    [<ffff82d04028436c>] F arch/x86/acpi/cpu_idle.c#acpi_processor_idl=
e+0x3eb/0x5f7
> > >    [<ffff82d04032a549>] F arch/x86/domain.c#idle_loop+0xec/0xee
> > >
> > > ****************************************
> > > Panic on CPU 0:
> > > FATAL TRAP: vector =3D 6 (invalid opcode)
> > > ****************************************
> > >
> > > Which in most cases does lead to a reboot, however that's unreliable.
> > >
> > > Change the default reboot preference to prefer ACPI over UEFI if avai=
lable and
> > > not in reduced hardware mode.
> > >
> > > This is in line to what Linux does, so it's unlikely to cause issues =
on current
> > > and future hardware, since there's a much higher chance of vendors te=
sting
> > > hardware with Linux rather than Xen.
> > >
> > > I'm not aware of using ACPI reboot causing issues on boxes that do ha=
ve
> > > properly implemented ResetSystem() methods.
> > >
> > > Signed-off-by: Roger Pau Monn=C3=A9 <roger.pau@citrix.com>
> >=20
> > Wording aside, Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
> >=20
> > This is a giant embarrassment to Xen, and needs fixing.
>=20
> Looking at Linux I think we need to add an override for Acer
> TravelMate X514-51T to force it to use UEFI, will send v2 with it.
>=20
> I do wonder if we need to keep the reboot_dmi_table[] entries that
> force systems to use ACPI, as it would now be the default?  My
> thinking is that it's likely better to keep it just in case we change
> the default again in the future.
>=20
> Thanks, Roger.
>=20

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--naEGlt9VSeCl9SNW
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmUEjnwACgkQ24/THMrX
1yyUmgf+KVDSstlk/HfwG36LjiP89S39wNOI7zwy/zzWmnN4qS07BRIhW/muwiKb
li7ckrSDLvngAcdrE1YOHfcPAN1pBbLJoHmV2pJMmGFcSs2T5uiTXs5ORi1418Z0
7dqzUidozSrRcweuHr6V5HOgR+5sgyU8xm1pOvUvcMRwBVDDrjK11ar+QW1WvQz7
lGSPdKzJ45N0EV4M1ERA5ydXmIHbSwM7QANAxXw5JD1lO+EuR7iFlBzi02v6ePwE
i9Mm7u1di6EzbCBvQgGGnd6sB/rBIPxCyoKAWbo63hr5VP1RoMGkM19sBOXb6uKv
t312auwifr4kDK+XfgH0XTjuqBgvcQ==
=4nFk
-----END PGP SIGNATURE-----

--naEGlt9VSeCl9SNW--


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 17:04:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 17:04:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603324.940291 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhCEq-0007cm-0n; Fri, 15 Sep 2023 17:04:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603324.940291; Fri, 15 Sep 2023 17:04:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhCEp-0007cf-UR; Fri, 15 Sep 2023 17:04:15 +0000
Received: by outflank-mailman (input) for mailman id 603324;
 Fri, 15 Sep 2023 17:04:14 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=At8v=E7=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qhCEo-0007bx-Eg
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 17:04:14 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e4bce15a-53e9-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 19:04:13 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id E8E9C8285128;
 Fri, 15 Sep 2023 12:04:11 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id Y7VmE_Ku6Xok; Fri, 15 Sep 2023 12:04:10 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 9ECFE8285141;
 Fri, 15 Sep 2023 12:04:10 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id VChpsDdxOMcX; Fri, 15 Sep 2023 12:04:10 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 35FBD8285128;
 Fri, 15 Sep 2023 12:04:10 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e4bce15a-53e9-11ee-8788-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 9ECFE8285141
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1694797450; bh=mm2gkfQfUL8RmamizAP7u4C3HAm6DBuCTHK+YLxWRFc=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=C1FAK5rxpmZ9l7y6/gmz984CJflN3xZB6GCPdTxYRhTslReMEp10RWNeuJHx7UJGM
	 Bjo88jZO3fsoBtXrMBmYBEJU7KGDC5jYN7DFDYIm79nduUyA+ElJWNZTuSd/sc/jAB
	 Y+lGH7X1+zWU7N7Zf0UNmkn2BJvE3WHa6UOesAME=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <eebaf2d8-2df1-4f22-67d4-2143f029c4b4@raptorengineering.com>
Date: Fri, 15 Sep 2023 12:04:10 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v5 2/5] xen/ppc: Implement bitops.h
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694543103.git.sanastasio@raptorengineering.com>
 <06892692342540b6dc1af4d530fe3c2c25cf4a2e.1694543103.git.sanastasio@raptorengineering.com>
 <60d5d841-29da-519b-057c-18c5796c8f1e@suse.com>
 <fa66a2b5-1364-48cf-dfb0-cc6c2de48bbd@raptorengineering.com>
 <508b6085-50ce-4f1d-1897-a2aea6c3f9d3@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <508b6085-50ce-4f1d-1897-a2aea6c3f9d3@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/15/23 1:50 AM, Jan Beulich wrote:
> On 14.09.2023 20:15, Shawn Anastasio wrote:
>> On 9/13/23 2:29 AM, Jan Beulich wrote:
>>> On 12.09.2023 20:35, Shawn Anastasio wrote:
>>>> --- a/xen/arch/ppc/include/asm/bitops.h
>>>> +++ b/xen/arch/ppc/include/asm/bitops.h
>>>> @@ -1,9 +1,335 @@
>>>> +/* SPDX-License-Identifier: GPL-2.0-or-later */
>>>> +/*
>>>> + * Adapted from Linux's arch/powerpc/include/asm/bitops.h.
>>>> + *
>>>> + * Merged version by David Gibson <david@gibson.dropbear.id.au>.
>>>> + * Based on ppc64 versions by: Dave Engebretsen, Todd Inglett, Don
>>>> + * Reed, Pat McCarthy, Peter Bergner, Anton Blanchard.  They
>>>> + * originally took it from the ppc32 code.
>>>> + */
>>>>  #ifndef _ASM_PPC_BITOPS_H
>>>>  #define _ASM_PPC_BITOPS_H
>>>>
>>>> +#include <asm/memory.h>
>>>> +
>>>> +#define __set_bit(n, p)         set_bit(n, p)
>>>> +#define __clear_bit(n, p)       clear_bit(n, p)
>>>> +
>>>> +#define BITOP_BITS_PER_WORD     32
>>>> +#define BITOP_MASK(nr)          (1U << ((nr) % BITOP_BITS_PER_WORD))
>>>> +#define BITOP_WORD(nr)          ((nr) / BITOP_BITS_PER_WORD)
>>>> +#define BITS_PER_BYTE           8
>>>> +
>>>>  /* PPC bit number conversion */
>>>> -#define PPC_BITLSHIFT(be)	(BITS_PER_LONG - 1 - (be))
>>>> -#define PPC_BIT(bit)		(1UL << PPC_BITLSHIFT(bit))
>>>> -#define PPC_BITMASK(bs, be)	((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
>>>> +#define PPC_BITLSHIFT(be)    (BITS_PER_LONG - 1 - (be))
>>>> +#define PPC_BIT(bit)         (1UL << PPC_BITLSHIFT(bit))
>>>> +#define PPC_BITMASK(bs, be)  ((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs))
>>>> +
>>>> +/* Macro for generating the ***_bits() functions */
>>>> +#define DEFINE_BITOP(fn, op, prefix)                                           \
>>>> +static inline void fn(unsigned int mask,                                      \
>>>> +                      volatile unsigned int *p_)                               \
>>>> +{                                                                              \
>>>> +    unsigned int old;                                                         \
>>>> +    unsigned int *p = (unsigned int *)p_;                                      \
>>>
>>> What use is this, when ...
>>>
>>>> +    asm volatile ( prefix                                                      \
>>>> +                   "1: lwarx %0,0,%3,0\n"                                      \
>>>> +                   #op "%I2 %0,%0,%2\n"                                        \
>>>> +                   "stwcx. %0,0,%3\n"                                          \
>>>> +                   "bne- 1b\n"                                                 \
>>>> +                   : "=&r" (old), "+m" (*p)                                    \
>>>
>>> ... the "+m" operand isn't used and ...
>>>
>>>> +                   : "rK" (mask), "r" (p)                                      \
>>>> +                   : "cc", "memory" );                                         \
>>>
>>> ... there's a memory clobber anyway?
>>>
>>
>> I see what you're saying, and I'm not sure why it was written this way
>> in Linux. That said, this is the kind of thing that I'm hesitant to
>> change without knowing the rationale of the original author. If you are
>> confident that the this can be dropped given that there is already a
>> memory clobber, I could drop it. Otherwise I'm inclined to leave it in a
>> state that matches Linux.
> 
> This being an arch-independent property, I am confident. Yet still you're
> the maintainer, so if you want to keep it like this initially, that'll be
> okay. If I feel bothered enough, I could always send a patch afterwards.
>

Okay, for now then I will leave it as-is.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 18:04:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 18:04:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603344.940302 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhDB1-0006SV-5J; Fri, 15 Sep 2023 18:04:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603344.940302; Fri, 15 Sep 2023 18:04:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhDB1-0006SO-1F; Fri, 15 Sep 2023 18:04:23 +0000
Received: by outflank-mailman (input) for mailman id 603344;
 Fri, 15 Sep 2023 18:04:22 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhDB0-0006SE-0D; Fri, 15 Sep 2023 18:04:22 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhDAz-0003MM-Hl; Fri, 15 Sep 2023 18:04:21 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhDAz-0005Rb-2I; Fri, 15 Sep 2023 18:04:21 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qhDAz-0003sG-1h; Fri, 15 Sep 2023 18:04:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=RgeUIlo40gi18mv7ZNQmrwCRN0c0gYXsl9FJSWwy/3Y=; b=IFVQaT1hn+4dwC63nxyHjWkdDd
	/wiWIUSB1J/OilMPvV3fntVukovJxEhX0c/3clKWGhwnn8PuAVJCBX4yAdTz/qxJEEbeq+rpN8ujW
	XqlmzX0VmMIF1fJU98wYqwswH4k+TLhZHzZ5JLENzc8BzRxJaER2B/nIrGOPTPA3XpHQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183008-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183008: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=9fdfb15a3dbf818e06be514f4abbfc071004cbe7
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 15 Sep 2023 18:04:21 +0000

flight 183008 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183008/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                9fdfb15a3dbf818e06be514f4abbfc071004cbe7
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   18 days
Failing since        182544  2023-08-28 20:42:13 Z   17 days   33 attempts
Testing same since   183004  2023-09-14 22:43:17 Z    0 days    2 attempts

------------------------------------------------------------
2287 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 278620 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 19:56:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 19:56:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603353.940312 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhEvd-0002FE-K8; Fri, 15 Sep 2023 19:56:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603353.940312; Fri, 15 Sep 2023 19:56:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhEvd-0002F7-HJ; Fri, 15 Sep 2023 19:56:37 +0000
Received: by outflank-mailman (input) for mailman id 603353;
 Fri, 15 Sep 2023 19:56:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=upey=E7=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qhEvc-0002F1-CZ
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 19:56:36 +0000
Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com
 [2a00:1450:4864:20::32f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f84b3998-5401-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 21:56:33 +0200 (CEST)
Received: by mail-wm1-x32f.google.com with SMTP id
 5b1f17b1804b1-40472f9db24so23031845e9.2
 for <xen-devel@lists.xenproject.org>; Fri, 15 Sep 2023 12:56:33 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 z20-20020a7bc7d4000000b003feae747ff2sm8303820wmk.35.2023.09.15.12.56.31
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 15 Sep 2023 12:56:32 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f84b3998-5401-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694807792; x=1695412592; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=6TkOterh9fe1/HlzeIQ0N7U+46D332sSrYEkMg1TyLg=;
        b=il/AreYKsGeRf1yYEgm0o0u5EYNotf+JaJAl91kNezNpcihXaXPwVLpOZTOShMRj0S
         742HlGccilgspM0ILKF8MGYYiTtZDfBSAKwRPyvY5y/ffAsFwbsBdQfljaGyzRDbnpiC
         l8Ew0kEbh/0CwpaocsSwedcKFwEcWh2ER+xHs=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694807792; x=1695412592;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=6TkOterh9fe1/HlzeIQ0N7U+46D332sSrYEkMg1TyLg=;
        b=kXWwYL0JIB/dIy44P60w0ZtpaqZlTSXhRVlpO760t23AhJ5hRgdMIbC5SRjVFdNslo
         i2UomkgvMxvb6+1qYGy0gMKCCpUymH50HgZk95Ry94k1zXOZWz07NAZgSyDKtMXZGgwd
         /kJ+EJ0aTtVJIPTS8anozcsQGN3/u4zmgUTkUuPaeKy6jXpErgVoC8Uv8Yxo0u0Uzyw5
         eIASdJLQCak3b373JME3Ok88oarkM7dRFsqE4pKSFnLv2WZ1pKce6Wd6y36dbRKeJwtj
         GlB5dN91HWoOYO7v1EXXpYthHeyqDuzTRR46jtrelRMwaqHCtc3zAnFKFrzHnh+z6nGh
         erSw==
X-Gm-Message-State: AOJu0Yx833WR469pOFW7a3UizMH7b9haACRAMQ5dEEhQr4oCUdrSo6Cr
	P/mWNcYSrpQdYhDErLN/jmmm7j8yuiCTf0fq11Y=
X-Google-Smtp-Source: AGHT+IHi3Z0KeKufclJhjdZShCARhE5XbkKO+ydt2pfOJUJbYhuyxjTSpzzJmfPJICli/DD4Twez4Q==
X-Received: by 2002:a05:600c:d7:b0:401:be77:9a50 with SMTP id u23-20020a05600c00d700b00401be779a50mr2285937wmm.8.1694807792569;
        Fri, 15 Sep 2023 12:56:32 -0700 (PDT)
Message-ID: <7148ecb7-f1b0-754f-ba1c-f8be18cf6bd9@citrix.com>
Date: Fri, 15 Sep 2023 20:56:31 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 0/5] x86/pv: #DB vs %dr6 fixes, part 2
Content-Language: en-GB
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>,
 Jinoh Kang <jinoh.kang.kr@gmail.com>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
In-Reply-To: <20230912232113.402347-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 13/09/2023 12:21 am, Andrew Cooper wrote:
> Slightly RFC.  This is the next chunk of debug fixes from the bug that Jinoh
> reported.

I was trying to do a bit of due diligence before posting v2, and have
made some discoveries.

pv/emul-priv-op SingleStep vs Branch Step
  https://gitlab.com/xen-project/xen/-/work_items/170

HVM IO Breakpoints:
  https://gitlab.com/xen-project/xen/-/work_items/171


A third which I'm on the fence about is about PV guests and General
Detect.  We firmly prohibit PV guests from setting DR7.GD, but we them
play with the DR6.GD bit as if it had been asserted.

It would be easy to put GD back into the set of reserved bits for DR6,
but it also wouldn't be hard to handle GD via dr7_emul and let the PV
guest have a more-normal looking set of debug functionality.

Thoughts?

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 20:36:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 20:36:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603360.940332 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYP-0001Co-Tu; Fri, 15 Sep 2023 20:36:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603360.940332; Fri, 15 Sep 2023 20:36:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYP-0001Ch-R1; Fri, 15 Sep 2023 20:36:41 +0000
Received: by outflank-mailman (input) for mailman id 603360;
 Fri, 15 Sep 2023 20:36:40 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhFYO-0000xj-PQ
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 20:36:40 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 91dfdee2-5407-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 22:36:38 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 91dfdee2-5407-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694810198;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=0efH8BOSizGTOHRB94i57CXHT600TrTwqOEk5f1bQW8=;
  b=KAKrgCbqZvQ0pQp67T2PONKE8SA6gUVZH83X9aKkukUP05AoryQbIXaf
   nVMzfqKT2049jIOvex4dPvz+cytVL2kls1QpOc29rRHERkIa+h1fKJ4Pq
   /LWsZ8bCZIYxKkQsE39lINOdVthWKDrQ0+xEWBOpa0oJ2D+tEcezokPlW
   k=;
X-CSE-ConnectionGUID: 40xdC7HJRICoFGlJfSNwcw==
X-CSE-MsgGUID: MNhrQ7DlQtyNeQeZ9jc8xw==
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 122825025
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:LX78wqj/Dg1MY4UMjzqC9hFpX161VhAKZh0ujC45NGQN5FlHY01je
 htvWGuGP/bZYjPwKYx2b4yyoUMF7ZaHz99nHVc6ry1nRXgb9cadCdqndUqhZCn6wu8v7q5Ex
 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOhTraCYmYoHVMMpB4J0XpLg/Q+jpNjne+3CgaMv
 cKai8DEMRqu1iUc3lg8sspvkzsx+qyo0N8klgZmP6sT7QaDzyJ94K83fsldEVOpGuG4IcbiL
 wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ
 OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+
 tREcCABRU+jpdiX67WVZe1OiP8FM8L0adZ3VnFIlVk1DN4jSJHHBa7L+cVZzHE7gcUm8fT2P
 pRDL2A1NVKZPkMJYw1MYH49tL7Aan3XWjtUsl+K44Ew5HDe1ldZ27nxKtvFPNeNQK25m27B/
 DiWpTmhWExy2Nq37ByF6Evzquv2gTLdVbsfJuy6/a56nwjGroAUIEJPDgbqyRWjsWauVtQaJ
 0EK9y4Gqakp6FftXtT7Rwe/onOPolgbQdU4O88Q5RyJy6HUyx2EHWVCRTlEAPQ5sOcmSDps0
 UWG9/vrBDposPuWQHSSsLSOhTy3MCkRa2QFYEc5oRAtuoe55ttp11SWE4glSfTu5jHoJd3u6
 2zSvCQV2JUxt+8g0IuU+XLJuBSzrYecG2bZ+T7rdm6i6wp4YqusaIqp9UXX4J58EWqJcrWSl
 CNawpbDtYjiGbnIzXXQG7tVQNlF8t7faFXhbUhT847NHthH01qqZshu7T53Py+F2e5UKGayM
 Cc/Ve68jaK/3UdGj4ctM+pd6Oxwl8AM8OgJsdiNNLJzjmBZLlPvwc2XTRf4M5rRuEYti7ojH
 pyQbNyhC30XYYw+kmvqF79Hju92ln1nrY82eXwd507/uVZ5TCTOIYrpzXPUNrxphE96iFq9H
 ylj2zuilEwEDbyWjtj/+o8PN1EaRUXX9rivw/G7gtWre1I8cEl4Uq+5/F/UU9A990ijvruSr
 y7Vt44x4AaXuEAr3i3RMyk5MO6+DMonxZ/5VAR1VWuVN7EYSd7HxM8im1EfJNHLKMQLISZIc
 sQ4
IronPort-HdrOrdr: A9a23:u7mL968T0nbFaF8WR/9uk+DgI+orL9Y04lQ7vn2YSXRuHPBw8P
 re5cjztCWE7gr5N0tBpTntAsW9qDbnhPtICOoqTNCftWvdyQiVxehZhOOIqVDd8m/Fh4pgPM
 9bAtBD4bbLbGSS4/yU3ODBKadD/OW6
X-Talos-CUID: 9a23:ycw0lm6RMsz7AUlWVdssqBYEFut6Ul/n7VzXDWC8K2hSbqKeVgrF
X-Talos-MUID: 9a23:LOFQuAVcJxKOSdHq/BrKhCtba+ts2ri/Lk00nKdXucLUJTMlbg==
X-IronPort-AV: E=Sophos;i="6.02,150,1688443200"; 
   d="scan'208";a="122825025"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Jinoh Kang
	<jinoh.kang.kr@gmail.com>
Subject: [PATCH 6/7] x86: Extend x86_event with a pending_dbg field
Date: Fri, 15 Sep 2023 21:36:27 +0100
Message-ID: <20230915203628.837732-7-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915203628.837732-1-andrew.cooper3@citrix.com>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

... using the Intel VMCS PENDING_DBG semantics, and sharing storage with cr2.

This requires working around anonymous union bugs in obsolete versions of GCC,
which in turn needs to drop unnecessary const qualifiers.

Also introduce a pv_inject_DB() wrapper use this field nicely.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Jinoh Kang <jinoh.kang.kr@gmail.com>

v2:
 * Split out of prior patch.
---
 xen/arch/x86/include/asm/domain.h      | 18 ++++++++++++++++--
 xen/arch/x86/include/asm/hvm/hvm.h     |  3 ++-
 xen/arch/x86/x86_emulate/x86_emulate.h |  5 ++++-
 3 files changed, 22 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/include/asm/domain.h b/xen/arch/x86/include/asm/domain.h
index c2d9fc333be5..fd1f306222be 100644
--- a/xen/arch/x86/include/asm/domain.h
+++ b/xen/arch/x86/include/asm/domain.h
@@ -729,15 +729,29 @@ static inline void pv_inject_hw_exception(unsigned int vector, int errcode)
     pv_inject_event(&event);
 }
 
+static inline void pv_inject_DB(unsigned long pending_dbg)
+{
+    struct x86_event event = {
+        .vector      = X86_EXC_DB,
+        .type        = X86_EVENTTYPE_HW_EXCEPTION,
+        .error_code  = X86_EVENT_NO_EC,
+    };
+
+    event.pending_dbg = pending_dbg;
+
+    pv_inject_event(&event);
+}
+
 static inline void pv_inject_page_fault(int errcode, unsigned long cr2)
 {
-    const struct x86_event event = {
+    struct x86_event event = {
         .vector = X86_EXC_PF,
         .type = X86_EVENTTYPE_HW_EXCEPTION,
         .error_code = errcode,
-        .cr2 = cr2,
     };
 
+    event.cr2 = cr2;
+
     pv_inject_event(&event);
 }
 
diff --git a/xen/arch/x86/include/asm/hvm/hvm.h b/xen/arch/x86/include/asm/hvm/hvm.h
index 6d53713fc3a9..ea966f4429f9 100644
--- a/xen/arch/x86/include/asm/hvm/hvm.h
+++ b/xen/arch/x86/include/asm/hvm/hvm.h
@@ -532,9 +532,10 @@ static inline void hvm_inject_page_fault(int errcode, unsigned long cr2)
         .vector = X86_EXC_PF,
         .type = X86_EVENTTYPE_HW_EXCEPTION,
         .error_code = errcode,
-        .cr2 = cr2,
     };
 
+    event.cr2 = cr2;
+
     hvm_inject_event(&event);
 }
 
diff --git a/xen/arch/x86/x86_emulate/x86_emulate.h b/xen/arch/x86/x86_emulate/x86_emulate.h
index fbc023c37e34..e567a9b635d9 100644
--- a/xen/arch/x86/x86_emulate/x86_emulate.h
+++ b/xen/arch/x86/x86_emulate/x86_emulate.h
@@ -78,7 +78,10 @@ struct x86_event {
     uint8_t       type;         /* X86_EVENTTYPE_* */
     uint8_t       insn_len;     /* Instruction length */
     int32_t       error_code;   /* X86_EVENT_NO_EC if n/a */
-    unsigned long cr2;          /* Only for X86_EXC_PF h/w exception */
+    union {
+        unsigned long cr2;         /* #PF */
+        unsigned long pending_dbg; /* #DB (new DR6 bits, positive polarity) */
+    };
 };
 
 /*
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 20:36:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 20:36:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603359.940321 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYO-0000xw-Mv; Fri, 15 Sep 2023 20:36:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603359.940321; Fri, 15 Sep 2023 20:36:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYO-0000xp-KG; Fri, 15 Sep 2023 20:36:40 +0000
Received: by outflank-mailman (input) for mailman id 603359;
 Fri, 15 Sep 2023 20:36:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhFYN-0000xj-6k
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 20:36:39 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8eb97a50-5407-11ee-9b0d-b553b5be7939;
 Fri, 15 Sep 2023 22:36:35 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8eb97a50-5407-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694810195;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=iVvBxcmH9/frdKV3USiWYWpvNhtBBf3353lMt0BYDpE=;
  b=Y3n1u3phZdSG7QQuZ+fKxnD+ejHHv38oRp1AZcE1VMxwZWDeSUEiL9CU
   0xqqGlNnisJnHsdXew5yokEzmidktkBvNNMVYZL/2zMG7+lAqW3DswWwd
   FMR4v4iaNnyc49GTITnYz0iiJ/g/yhcgWnwjD0jj3zQs3UjjT9U0YN3Uu
   A=;
X-CSE-ConnectionGUID: 40xdC7HJRICoFGlJfSNwcw==
X-CSE-MsgGUID: cCkTKcjLTiaOoIrGwy9qpw==
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 122825024
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:b+Mhb61bLWR7HYCtVvbD5eVxkn2cJEfYwER7XKvMYLTBsI5bpzZWn
 2QYX2jSaKrcYmH0ctx1PNzn9k1UsZ+Dx4dlQAM5pC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb8nuDgNyo4GlD5g1nOKgQ1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfXTle+
 ddHCBI3TzuEqc2y4ryAbPZnmZF2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP
 ZNfMGcxKk2aOHWjOX9OYH46tM6uimPybHtzr1WNqLBsy2PS0BZwwP7mN9+9ltmiHJ8PzhzF/
 jial4j/KhoxN+C8wjihznOloejuhwzkSdMLDKLto5aGh3XMnzdOWXX6T2CTsfS/z0KzRd9bA
 0gV4TY167g/8lSxSdvwVAH+p2SL1jY+cddNF+wx6CmW17HZpQ2eAwAsUTppeNEg8sgsSlQC1
 F6PmNOvBjVpv/uWU1qS876VqXW5Pi19EIMZTXZaF01fuYCl+dxtyEuVFb6PDZJZkPWpQSH86
 G+qjhIfrLI9osop2Z6d4lvY1mfESofyciY54QDeX2SA5wx/ZZK4a4HA1WU3/cqsP67CEADf4
 SFsd9y2qblXUMrTzHDlrPAlRunB2hqTDNHLbbeD9bEF/i/lxXOsdJs4DNpWdBYwaZZsldMEj
 SbuVeJtCH17ZivCgUxfOdjZ5yEWIU/ITI6NaxwsRoASCqWdjSfelM2UWWae3nr2jG8nmrwlN
 JGQfK6EVChLVfQ/lmXmGrdAiNfHIxzSI0uJHfgXKDz9itKjiIO9E+9ZYDNikMhmhE97nOkl2
 4kGbJbbo/mueOb/fjPW4eYuwaMidBAG6WTNg5UPLIare1M2cFzN/teNmdvNjaQ5xfUK/goJl
 1nhMnJlJK3X3iSec13XOyE/MNsCn/9X9BoGAMDlBn7ws1BLXGplxP53m0cfFVX/yNFe8A==
IronPort-HdrOrdr: A9a23:j5UfjK3YOid3pkFeCKv7ZwqjBIokLtp133Aq2lEZdPRUGvb3qy
 nIpoVj6faUskd2ZJhOo7C90cW7LU80sKQFhLX5Xo3SOzUO2lHYT72KhLGKq1aLdhEWtNQtsZ
 uIG5IOcOEYZmIasS+V2maF+q4bsbu6zJw=
X-Talos-CUID: =?us-ascii?q?9a23=3ALlzQHGu/hD9h44L5WVnVX3Ge6It5Km3R5yjwAXW?=
 =?us-ascii?q?ZImFHZ7m3R2S256h7xp8=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3ATaxKyw58tRk5AM7E+Ux2NeaxxoxjyKeSK0sPtak?=
 =?us-ascii?q?Hsu6DFDZfJCbMlSyoF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.02,150,1688443200"; 
   d="scan'208";a="122825024"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Jinoh Kang
	<jinoh.kang.kr@gmail.com>
Subject: [PATCH 1/7] x86/emul: ASSERT that X86EMUL_DONE doesn't escape to callers
Date: Fri, 15 Sep 2023 21:36:22 +0100
Message-ID: <20230915203628.837732-2-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915203628.837732-1-andrew.cooper3@citrix.com>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

This property is far from clear.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Jinoh Kang <jinoh.kang.kr@gmail.com>

v2:
 * New
---
 xen/arch/x86/x86_emulate/x86_emulate.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/xen/arch/x86/x86_emulate/x86_emulate.c b/xen/arch/x86/x86_emulate/x86_emulate.c
index e88245eae9fb..94caec1d142c 100644
--- a/xen/arch/x86/x86_emulate/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -8651,6 +8651,12 @@ int x86_emulate_wrapper(
 
     rc = x86_emulate(ctxt, ops);
 
+    /*
+     * X86EMUL_DONE is an internal signal in the emulator, and is not expected
+     * to ever escape out to callers.
+     */
+    ASSERT(rc != X86EMUL_DONE);
+
     /*
      * Most retire flags should only be set for successful instruction
      * emulation.
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 20:36:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 20:36:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603361.940342 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYW-0001VQ-51; Fri, 15 Sep 2023 20:36:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603361.940342; Fri, 15 Sep 2023 20:36:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYW-0001VH-1i; Fri, 15 Sep 2023 20:36:48 +0000
Received: by outflank-mailman (input) for mailman id 603361;
 Fri, 15 Sep 2023 20:36:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhFYU-0001T8-5e
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 20:36:46 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 94e8f95e-5407-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 22:36:44 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 94e8f95e-5407-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694810204;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=ff/2EofbVuWE4xzAF9UfYfZVRYEZrCslF2ClKTfM04U=;
  b=RFSfLxzTJr4D0sPrH8BtnfT0VLMFyxgo6ItOgPgA5zFusk44NnCrW8Er
   jqjQZ2nl0v+jSznsG2fdnwQlt7FhNISk1GFMh5o/0doQvqxm/Je3S+4vv
   8tT3FyryjWA0eGRwM4/HISRnQe85gRjYsZNOX6ULB5TQGQ0kUl1or5I1S
   I=;
X-CSE-ConnectionGUID: yX2361nNQWCUBRY66Zgs3Q==
X-CSE-MsgGUID: gGehqQ37Tya7O0+Nb3lSjw==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 121464505
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:xRZ9MaryxRbzLJ9BFoOKXBfp4xZeBmIuZRIvgKrLsJaIsI4StFCzt
 garIBnVOP/eZjHxKd5/YI7loU9Q75+Hy9dkTgto+yg1EHsUoJuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GlwUmAWP6gR5wePziRNV/rzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXACE9NEvd3uSQ+Y2Qd8NWt5p9HsbwZ7pK7xmMzRmBZRonaZXKQqGM7t5ExjYgwMtJGJ4yZ
 eJAN2ApNk6ZJUQSZBFOUslWcOSA3xETdxVxrl6PqLVxyG/U1AFri5DmMcbPe8zMTsJQ9qqdj
 jucpjinXkxCabRzzxKK3X+sn9aUwh/qUd01TP6e/KVuu1+Mkzl75Bo+CgLg/KjRZlSFc8JSL
 QkY9zQjqYA29Ve3VZ/tUhugunmGsxUAHd1KHIUS6guA167V6AaxHXUfQ3hKb9lOnNAybSwn0
 BmOhdyBLT5utrqVD3GU8LjSrimaNi0cLGtEbigBJTbp+PG6/tt11EiWCI8+Tujs1Iad9SzML
 y6ivRhk3OtKi+gy6I6G12r23WyeqYOSd1tgjunIZV6N4gR8bY+jQoWn71nH8PpNRLqkokm9U
 GsswJbHsr1XZX2ZvGnUGbhWQun1jxqQGGeE6WODCaXN4NhEF5SLWYlLqA9zK05yWirvUW+4O
 RSD0e+9CXI6AZdLUUOVS9jhYyjJ5fK6fTgAahwzRoMUCqWdjCfdoElTibe4hggBanQEn6AlI
 ou8es2xF3scAqkP5GPoFrtNieV0ln1umDq7qXXHI/KPi+L2iJm9E+xtDbdzRrphsPPsTPv9r
 L6zyPdmOz0ACbajM0E7AKYYLEwQLGhTOHwFg5U/SwJ3GSI/QDtJI6aIkdscl3lNw/w9ehHgo
 ivsBSe1CTPX2RX6FOl9Qis6Mem3AMcu8SpT0O5FFQ/A5kXPqL2HtM83H6bbt5F9nAC/5ZaYl
 8U4Rvg=
IronPort-HdrOrdr: A9a23:NPWp3q1JvOk65HR1HvB/9gqjBHYkLtp133Aq2lEZdPU0SKGlfq
 GV7ZEmPHrP4gr5N0tOpTntAse9qBDnhPxICOsqXYtKNTOO0AeVxelZhrcKqAeQeBEWmNQ96U
 9hGZIOcuEZDzJB/LvHCN/TKadd/DGFmprY+ts31x1WPGVXgzkL1XYANu6ceHcGIzVuNN4CO7
 e3wNFInDakcWR/VLXBOpFUN9KzweEijfjdEGc7OyI=
X-Talos-CUID: =?us-ascii?q?9a23=3AT2KxqWh2nv5e3hC51210I5aTfzJuY02HlymJJWm?=
 =?us-ascii?q?BNk1UYoekFwGi97g/qp87?=
X-Talos-MUID: 9a23:Br8lPAbkRHvgAOBTuBDhhChbb5hU8q3xLxhOt59dv/KGKnkl
X-IronPort-AV: E=Sophos;i="6.02,150,1688443200"; 
   d="scan'208";a="121464505"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<jbeulich@suse.com>, Jan Beulich <JBeulich@suse.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>
Subject: [PATCH 4/7] x86/pv: Drop priv_op_ctxt.bpmatch and use pending_dbg instead
Date: Fri, 15 Sep 2023 21:36:25 +0100
Message-ID: <20230915203628.837732-5-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915203628.837732-1-andrew.cooper3@citrix.com>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

With a full pending_dbg field in x86_emulate_ctxt, use it rather than using a
local bpmatch field.

This simplifies the X86EMUL_OKAY path as singlestep is already accumulated by
x86_emulate() when appropriate.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Jinoh Kang <jinoh.kang.kr@gmail.com>

v2:
 * Tweak commit message to avoid referencing X86EMUL_DONE.
---
 xen/arch/x86/pv/emul-priv-op.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index 0d9f84f458ba..2f73ed0682e1 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -34,7 +34,6 @@ struct priv_op_ctxt {
         unsigned long base, limit;
     } cs;
     char *io_emul_stub;
-    unsigned int bpmatch;
 };
 
 /* I/O emulation helpers.  Use non-standard calling conventions. */
@@ -367,7 +366,8 @@ static int cf_check read_io(
     if ( !guest_io_okay(port, bytes, curr, ctxt->regs) )
         return X86EMUL_UNHANDLEABLE;
 
-    poc->bpmatch = check_guest_io_breakpoint(curr, port, bytes);
+    poc->ctxt.retire.pending_dbg |=
+        check_guest_io_breakpoint(curr, port, bytes);
 
     if ( admin_io_okay(port, bytes, currd) )
     {
@@ -472,7 +472,8 @@ static int cf_check write_io(
     if ( !guest_io_okay(port, bytes, curr, ctxt->regs) )
         return X86EMUL_UNHANDLEABLE;
 
-    poc->bpmatch = check_guest_io_breakpoint(curr, port, bytes);
+    poc->ctxt.retire.pending_dbg |=
+        check_guest_io_breakpoint(curr, port, bytes);
 
     if ( admin_io_okay(port, bytes, currd) )
     {
@@ -636,7 +637,8 @@ static int cf_check rep_ins(
         return X86EMUL_EXCEPTION;
     }
 
-    poc->bpmatch = check_guest_io_breakpoint(curr, port, bytes_per_rep);
+    poc->ctxt.retire.pending_dbg |=
+        check_guest_io_breakpoint(curr, port, bytes_per_rep);
 
     while ( *reps < goal )
     {
@@ -658,7 +660,7 @@ static int cf_check rep_ins(
 
         ++*reps;
 
-        if ( poc->bpmatch || hypercall_preempt_check() )
+        if ( poc->ctxt.retire.pending_dbg || hypercall_preempt_check() )
             break;
 
         /* x86_emulate() clips the repetition count to ensure we don't wrap. */
@@ -703,7 +705,8 @@ static int cf_check rep_outs(
         return X86EMUL_EXCEPTION;
     }
 
-    poc->bpmatch = check_guest_io_breakpoint(curr, port, bytes_per_rep);
+    poc->ctxt.retire.pending_dbg |=
+        check_guest_io_breakpoint(curr, port, bytes_per_rep);
 
     while ( *reps < goal )
     {
@@ -726,7 +729,7 @@ static int cf_check rep_outs(
 
         ++*reps;
 
-        if ( poc->bpmatch || hypercall_preempt_check() )
+        if ( poc->ctxt.retire.pending_dbg || hypercall_preempt_check() )
             break;
 
         /* x86_emulate() clips the repetition count to ensure we don't wrap. */
@@ -1360,12 +1363,9 @@ int pv_emulate_privileged_op(struct cpu_user_regs *regs)
     case X86EMUL_OKAY:
         ASSERT(!curr->arch.pv.trap_bounce.flags);
 
-        if ( ctxt.ctxt.retire.singlestep )
-            ctxt.bpmatch |= DR_STEP;
-
-        if ( ctxt.bpmatch )
+        if ( ctxt.ctxt.retire.pending_dbg )
         {
-            curr->arch.dr6 |= ctxt.bpmatch | DR_STATUS_RESERVED_ONE;
+            curr->arch.dr6 |= ctxt.ctxt.retire.pending_dbg | DR_STATUS_RESERVED_ONE;
             pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
         }
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 20:36:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 20:36:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603362.940348 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYW-0001YQ-HA; Fri, 15 Sep 2023 20:36:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603362.940348; Fri, 15 Sep 2023 20:36:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYW-0001XY-9E; Fri, 15 Sep 2023 20:36:48 +0000
Received: by outflank-mailman (input) for mailman id 603362;
 Fri, 15 Sep 2023 20:36:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhFYU-0001T8-QQ
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 20:36:46 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 96400495-5407-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 22:36:46 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 96400495-5407-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694810205;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=dnP+oePB0vRmA7Ftd/dfzOPN8MOvJT2QivCpHSwftUo=;
  b=NnwB3GwOnO8SvjmeYphhRsOJSoHZLkBM2bPEUwVlcZIS4F18H6udfgJ7
   WGzTRVkdU6Gcv42pW4gZclg6h94DLQAfjU7ljhZTZCelyTzLhTW4NV5Q6
   hxMWaYRKSR4t+bwtDP73V+7X9S8cjhMS7sU12MiCYEr8MmB5IrX391jSR
   o=;
X-CSE-ConnectionGUID: eus45eGnS1utRCA1wDu4og==
X-CSE-MsgGUID: Tom/6qoBRv24WmLJKJR2AQ==
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 121464506
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:CyQJ2ao/F8zo5JUaNgPskv6+nh9eBmIuZRIvgKrLsJaIsI4StFCzt
 garIBmFPfaCZWSke90lOY3j9E1XvsOByYUwHAY+qSBmESoSopuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GlwUmAWP6gR5wePziRNV/rzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXAD0QdUzeis2w++umVtNHr508ANS3O4xK7xmMzRmBZRonaZXKQqGM7t5ExjYgwMtJGJ4yZ
 eJAN2ApNk6ZJUQSZBFOUslWcOSA3xETdxVxrl6PqLVxyG/U1AFri5DmMcbPe8zMTsJQ9qqdj
 jucpjinXkxCarRzzxK59Xfr2PbItxnlAt4tEZma1dxQ2nSqkzl75Bo+CgLg/KjRZlSFc8JSL
 QkY9zQjqYA29Ve3VZ/tUhugunmGsxUAHd1KHIUS6guA167V6AaxHXUfQ3hKb9lOnNAybSwn0
 BmOhdyBLT5utrqVD3GU8LjSrimaNi0cLGtEbigBJTbp+PG6/tt11EiWCI8+Tujs1Iad9SzML
 y6ioTUl2+geosgwjrinx3vu2i2Au8TOQVtgjunIZV6N4gR8bY+jQoWn71nH8PpNRLqkokm9U
 GsswJbHsr1XZX2ZvGnUGbhWQun1jxqQGGeE6WODCaXN4NhEF5SLWYlLqA9zK05yWirvUW+4O
 RSD0e+9CXI6AZdLUUOVS9jhYyjJ5fK6fTgAahwzRoMUCqWdjCfdoElTibe4hggBanQEn6AlI
 ou8es2xF3scAqkP5GPoFrtNieV0ln1umDq7qXXHI/KPi+L2iJm9E+xtDbdzRrphsPPsTPv9r
 L6zyPdmOz0ACbajM0E7AKYYLEwQLGhTOHwFg5U/SwJ3GSI/QDtJI6aIkdscl3lNw/w9ehHgo
 ivsBSe1CTPX2RX6FOl9Qis6Mem3AMcu8SpT0O5FFQ/A5kXPqL2HtM83H6bbt5F+nAC/5ZaYl
 8U4Rvg=
IronPort-HdrOrdr: A9a23:JEtqhKg8ylCL99lmw4/nszRHU3BQXh4ji2hC6mlwRA09TyX5ra
 2TdZUgpHrJYVMqMk3I9uruBEDtex3hHP1OkOss1NWZPDUO0VHARO1fBOPZqAEIcBeOldK1u5
 0AT0B/YueAd2STj6zBkXSF+wBL+qj6zEiq792usEuEVWtRGsVdB58SMHfiLqVxLjM2YqYRJd
 6nyedsgSGvQngTZtTTPAh/YwCSz+e78q4PeHQ9dmca1DU=
X-Talos-CUID: 9a23:6+ZrEW+WPlrdylHpoqiVv0MJAZx4f1Lb9y7NP3WTID92ZKDJTlDFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3ABSAEngwHvJFWDn6KbdPFtN7oKgyaqJipDQdTiJI?=
 =?us-ascii?q?sgdfeaRN1HxW+rg7ta7Zyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,150,1688443200"; 
   d="scan'208";a="121464506"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<jbeulich@suse.com>, Jan Beulich <JBeulich@suse.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>
Subject: [PATCH 3/7] x86/pv: Fix the determiniation of whether to inject #DB
Date: Fri, 15 Sep 2023 21:36:24 +0100
Message-ID: <20230915203628.837732-4-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915203628.837732-1-andrew.cooper3@citrix.com>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

We long ago fixed the emulator to not inject exceptions behind our back.
Therefore, assert that that a PV event (including interrupts, because that
would be buggy too) isn't pending, rather than skipping the #DB injection if
one is.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Jinoh Kang <jinoh.kang.kr@gmail.com>

v2:
 * Drop X86EMUL_DONE adjustment.
---
 xen/arch/x86/pv/emul-priv-op.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index 142bc4818cb5..0d9f84f458ba 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -1358,14 +1358,17 @@ int pv_emulate_privileged_op(struct cpu_user_regs *regs)
     switch ( rc )
     {
     case X86EMUL_OKAY:
+        ASSERT(!curr->arch.pv.trap_bounce.flags);
+
         if ( ctxt.ctxt.retire.singlestep )
             ctxt.bpmatch |= DR_STEP;
+
         if ( ctxt.bpmatch )
         {
             curr->arch.dr6 |= ctxt.bpmatch | DR_STATUS_RESERVED_ONE;
-            if ( !(curr->arch.pv.trap_bounce.flags & TBF_EXCEPTION) )
-                pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
+            pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
         }
+
         /* fall through */
     case X86EMUL_RETRY:
         return EXCRET_fault_fixed;
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 20:36:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 20:36:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603364.940361 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYc-00028b-KK; Fri, 15 Sep 2023 20:36:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603364.940361; Fri, 15 Sep 2023 20:36:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYc-00028U-Hd; Fri, 15 Sep 2023 20:36:54 +0000
Received: by outflank-mailman (input) for mailman id 603364;
 Fri, 15 Sep 2023 20:36:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhFYb-0001T8-Ar
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 20:36:53 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 99829174-5407-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 22:36:52 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 99829174-5407-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694810212;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=6WDc7zyoVsjtMjW1jLq2dlxmIWqlGJOcjLcAUEyxqAo=;
  b=c8aICIqQedDR1EHGCaTle+OYk6o/VUY9KiNiKhcnSss2TsTZnHBMzAkw
   aUWaPRN2wTl3C5F901Yp3KKcUsm6Z4ovKuWLDAlLlkAIyMULyOeGLnFkC
   LVhpJOg/qttxo724a8ct+NGqLEFAgCtOxW6QJyD7g6jaZXEG8eM1TpGSw
   s=;
X-CSE-ConnectionGUID: kAevLBhUSueOHby+POGfdA==
X-CSE-MsgGUID: LNRwdEl4ScWMeCrdwisn/A==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125538998
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:zFtGdqh0zv5rZufLDF5Yi4mEX161VhAKZh0ujC45NGQN5FlHY01je
 htvUTqGO/7YYmTxKdEkYYnipEgDupbWmoA2HQVqqX89Fisb9cadCdqndUqhZCn6wu8v7q5Ex
 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOhTraCYmYoHVMMpB4J0XpLg/Q+jpNjne+3CgaMv
 cKai8DEMRqu1iUc3lg8sspvkzsx+qyo0N8klgZmP6sT7QaDzyJ94K83fsldEVOpGuG4IcbiL
 wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ
 OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+
 tQbAT0TSjqDutmrzZWbQPgvvuMMIsXCadZ3VnFIlVk1DN4jSJHHBa7L+cVZzHE7gcUm8fT2P
 pRDL2A1NVKZPkMJYw1MYH49tL7Aan3XWjtUsl+K44Ew5HDe1ldZ27nxKtvFPNeNQK25m27B/
 D+bpDSoU0Fy2Nq37Ry/7X6BgrP0lhzeVakIGKK57fgtqQjGroAUIEJPDgbqyRWjsWauVtQaJ
 0EK9y4Gqakp6FftXtT7Rwe/onOPolgbQdU4O88Q5RyJy6HUyx2EHWVCRTlEAPQ5sOcmSDps0
 UWG9/vrBDposPuWQHSSsLSOhTy3MCkRa2QFYEc5oRAtuoe55ttp11SWE4glSfTu5jHoJd3u6
 zOjoTYarbUuttMG8IWx7BP/pB2iqrGcG2bZ+T7rdm6i6wp4YqusaIqp9UXX4J58EWqJcrWSl
 CNawpbDtYjiGbnIzXXQG7tVQNlF8t7faFXhbUhT847NHthH01qqZshu7T53Py+F2e5UKGayM
 Cc/Ve68jaK/3UdGj4ctM+pd6Oxwl8AM8OgJsdiNNLJzjmBZLlPvwc2XTRf4M5rRuEYti7ojH
 pyQbNyhC30XYYw+kmvqF79Hju92ln1nrY82eXwd507/uVZ5TCTOIYrpzXPUNrxphE96iFq9H
 ylj2zuilEwEDbyWjtj/+o8PN1EaRUXX9rivw/G7gtWre1I8cEl4Uq+5/F/UU9A990ijvruSr
 y7Vt44x4AaXuEAr3i3RMyk5MO6+DMonxZ/5VAR1VWuVN7EYSd7HxM8im1EfI9HLKMQLISZIc
 sQ4
IronPort-HdrOrdr: A9a23:ps+9m6CySadCT8blHemg55DYdb4zR+YMi2TC1yhKJyC9Ffbo8P
 xG/c5rsSMc5wxwZJhNo7y90cq7MBbhHPxOkOos1N6ZNWGM0gaVxelZnO3fKlbbehEWmNQz6U
 4ZSdkdNOHN
X-Talos-CUID: 9a23:B31/BmMIklbQI+5DWwBq6mo+Gv0eb3D67H3BYHefJmhlYejA
X-Talos-MUID: =?us-ascii?q?9a23=3AZSJV/gxIrx0FK7MqkymBujuqHx+aqICIMl8BvJF?=
 =?us-ascii?q?agMK7ECFbITuCjS+xBaZyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,150,1688443200"; 
   d="scan'208";a="125538998"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Jinoh Kang
	<jinoh.kang.kr@gmail.com>
Subject: [PATCH v2 0/7] x86/pv: #DB vs %dr6 fixes, part 2
Date: Fri, 15 Sep 2023 21:36:21 +0100
Message-ID: <20230915203628.837732-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

This time with a bit of sanity testing.  See patches for details.

Andrew Cooper (7):
  x86/emul: ASSERT that X86EMUL_DONE doesn't escape to callers
  x86/emul: Fix and extend #DB trap handling
  x86/pv: Fix the determiniation of whether to inject #DB
  x86/pv: Drop priv_op_ctxt.bpmatch and use pending_dbg instead
  x86: Introduce x86_merge_dr6()
  x86: Extend x86_event with a pending_dbg field
  x86/pv: Rewrite %dr6 handling

 xen/arch/x86/debug.c                   | 20 +++++++++++++++++
 xen/arch/x86/include/asm/debugreg.h    |  7 ++++++
 xen/arch/x86/include/asm/domain.h      | 18 ++++++++++++++--
 xen/arch/x86/include/asm/hvm/hvm.h     |  3 ++-
 xen/arch/x86/include/asm/x86-defns.h   |  7 ++++++
 xen/arch/x86/pv/emul-priv-op.c         | 30 +++++++++++++-------------
 xen/arch/x86/pv/emulate.c              |  9 ++++++--
 xen/arch/x86/pv/ro-page-fault.c        |  4 ++--
 xen/arch/x86/pv/traps.c                | 17 +++++++++++----
 xen/arch/x86/traps.c                   | 23 ++++++++++----------
 xen/arch/x86/x86_emulate/x86_emulate.c | 26 ++++++++++++++++------
 xen/arch/x86/x86_emulate/x86_emulate.h | 19 ++++++++++++----
 12 files changed, 134 insertions(+), 49 deletions(-)

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 20:36:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 20:36:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603365.940372 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYe-0002Px-1O; Fri, 15 Sep 2023 20:36:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603365.940372; Fri, 15 Sep 2023 20:36:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYd-0002Pj-UT; Fri, 15 Sep 2023 20:36:55 +0000
Received: by outflank-mailman (input) for mailman id 603365;
 Fri, 15 Sep 2023 20:36:54 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhFYc-0001T8-Dn
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 20:36:54 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9abc83a9-5407-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 22:36:53 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9abc83a9-5407-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694810213;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=e8vuaKEQBPD5qLqcwW195bMIeNLY5T3jMc0PDLaok4g=;
  b=IjrFoasuRDanrgL5Oph2CyRAC+dlNVERQgS57PDaLCdyCskKsBzkciii
   bZjZC0YmM4zwN7FHEK7/ad4sieLgKeMiKX3Nd2CD6ly9wyL/QxS8tgrr7
   +Dx0cE44yrSLFJ9XysDL4Yemx8fZ6cYQiiwKM+w58l2a5eCw++T5nvEwl
   U=;
X-CSE-ConnectionGUID: kAevLBhUSueOHby+POGfdA==
X-CSE-MsgGUID: f8gy8O7DSnychYXMSVaPnw==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125538999
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:wnwOZ6scWuH8o0LQ9AbWkFk3WufnVGBeMUV32f8akzHdYApBsoF/q
 tZmKT3UO/iNZDChfYt0YIuxpBwPu5bXzNU1SQJv+C41EXtD+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4lv0gnRkPaoQ5A6HyiFOZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwKxkAcDSph9+N3b+cauN9xfwEA8fnFdZK0p1g5Wmx4fcORJnCR+PB5MNC3Sd2jcdLdRrcT
 5NHM3w1Nk2GOkARfA5NU/rSn8/x7pX7WxRepEiYuuwc5G/LwRYq+LPsLMDUapqBQsA9ckOw/
 ziboj+pU0BLXDCZ4TTV/WP8obDjpiXqU4IjJJiDyPdShkLGkwT/DzVJDADm8JFVkHWWS99Zb
 kAZ5Ccqhawz71CwCMnwWQWip3yJtQJaXMBfe8UYwgyQzqvf4y6CG3MJCDVGbbQOq8seVTEsk
 FiTkLvBBz1pt73TSnub+fGXtxu9PCEUKSkJYipscOcey4C9+sdp1EuJF4s9Vvfv1bUZBA0c3
 RiJhSUgo58TsPUW2oKb90GEuxWDqJTgG1tdChrsYkqp6QZwZYiAboOu6ETG4fsoELt1XmVtr
 1BfxZHAsblm4YWl0XXUHb5TRO3BC+OtamW0vLJ5I3U2G91BEVaHdJsY3jxxLVwB3i0sKW6wO
 x+7Ve+8CfZu0JqWgU1fOdLZ5ycCl/KI+THZuhf8N4AmX3SJXFXblByCnGbJt4wXrGAikLskJ
 bCQetu2AHARBMxPlWTnG7dFi+B7m3BjnAs/oKwXKTz9idJyg1bPEt843KamNLhlvMtoXi2Km
 zqgCyd640oGC7CvCsUm2YUSMUoLPRAG6WPe8qRqmhq4ClM+QgkJUqaBqY7NjqQ5x8y5YM+Up
 CDiMqKZoXKj7UD6xfKiMSk6MuuyDMcj9RrW/0UEZD6V5pTqWq73hI93Snf9VelPGDBLpRKsc
 8Q4Rg==
IronPort-HdrOrdr: A9a23:Gd4WY6o8dI3E2fkAnkkIcCMaV5oTeYIsimQD101hICG8cqSj+f
 xG+85rrCMc6QxhPk3I9urhBEDtex/hHNtOkOws1NSZLW7bUQmTXeJfBOLZqlWKcUDDH6xmpM
 NdmsBFeaXN5DNB7PoSjjPWLz9Z+qjkzJyV
X-Talos-CUID: 9a23:pgvw72/1Sfm/CJ1SFzGVv009F94BWH3g92rdBG+yGCVRb5KbRXbFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3AZg/MLQzd50ihGUtVDSd1Bh2FlYqaqKr+B1Fdtso?=
 =?us-ascii?q?qgM+VPixBCxKmsj2PRJByfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,150,1688443200"; 
   d="scan'208";a="125538999"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Jinoh Kang
	<jinoh.kang.kr@gmail.com>
Subject: [PATCH 2/7] x86/emul: Fix and extend #DB trap handling
Date: Fri, 15 Sep 2023 21:36:23 +0100
Message-ID: <20230915203628.837732-3-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915203628.837732-1-andrew.cooper3@citrix.com>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Lots of this is very very broken, but we need to start somewhere.

First, the bugfix.  Hooks which use X86EMUL_DONE to skip the general emulation
still need to evaluate singlestep as part of completing the instruction.
Defer the logic until X86EMUL_DONE has been converted to X86EMUL_OKAY.

Second, the improvement.  PENDING_DBG, INTERRUPTIBILITY and ACTIVITY are
internal pipeline state which Intel exposed to software in the VMCS, and AMD
exposed a subset of in the VMCB.  Importantly, bits set in PENDING_DBG can
survive across multiple instruction boundaries if e.g. delivery of #DB is
delayed by a MovSS.

For now, introduce a full pending_dbg field into the retire union.  This keeps
the sh_page_fault() and init_context() paths working but in due course the
field will want to lose the "retire" infix.

In addition, set singlestep into pending_dbg as appropriate.  Leave the old
singlestep bitfield in place until we can adjust the callers to the new
scheme.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Jinoh Kang <jinoh.kang.kr@gmail.com>

v2:
 * Only evaluate singlestep on X86EMUL_OKAY, but do so after X86EMUL_DONE has
   been adjusted to X86EMUL_OKAY.
 * Adjust comments in light of X86EMUL_DONE not getting back to callers.
---
 xen/arch/x86/x86_emulate/x86_emulate.c | 20 +++++++++++++-------
 xen/arch/x86/x86_emulate/x86_emulate.h | 14 +++++++++++---
 2 files changed, 24 insertions(+), 10 deletions(-)

diff --git a/xen/arch/x86/x86_emulate/x86_emulate.c b/xen/arch/x86/x86_emulate/x86_emulate.c
index 94caec1d142c..de7f99500e3f 100644
--- a/xen/arch/x86/x86_emulate/x86_emulate.c
+++ b/xen/arch/x86/x86_emulate/x86_emulate.c
@@ -8379,13 +8379,6 @@ x86_emulate(
     if ( !mode_64bit() )
         _regs.r(ip) = (uint32_t)_regs.r(ip);
 
-    /* Should a singlestep #DB be raised? */
-    if ( rc == X86EMUL_OKAY && singlestep && !ctxt->retire.mov_ss )
-    {
-        ctxt->retire.singlestep = true;
-        ctxt->retire.sti = false;
-    }
-
     if ( rc != X86EMUL_DONE )
         *ctxt->regs = _regs;
     else
@@ -8394,6 +8387,19 @@ x86_emulate(
         rc = X86EMUL_OKAY;
     }
 
+    /* Should a singlestep #DB be raised? */
+    if ( rc == X86EMUL_OKAY && singlestep )
+    {
+        ctxt->retire.pending_dbg |= X86_DR6_BS;
+
+        /* BROKEN - TODO, merge into pending_dbg. */
+        if ( !ctxt->retire.mov_ss )
+        {
+            ctxt->retire.singlestep = true;
+            ctxt->retire.sti = false;
+        }
+    }
+
     ctxt->regs->eflags &= ~X86_EFLAGS_RF;
 
  done:
diff --git a/xen/arch/x86/x86_emulate/x86_emulate.h b/xen/arch/x86/x86_emulate/x86_emulate.h
index 698750267a90..fbc023c37e34 100644
--- a/xen/arch/x86/x86_emulate/x86_emulate.h
+++ b/xen/arch/x86/x86_emulate/x86_emulate.h
@@ -588,15 +588,23 @@ struct x86_emulate_ctxt
     /* Canonical opcode (see below) (valid only on X86EMUL_OKAY). */
     unsigned int opcode;
 
-    /* Retirement state, set by the emulator (valid only on X86EMUL_OKAY). */
+    /*
+     * Retirement state, set by the emulator (valid only on X86EMUL_OKAY).
+     *
+     * TODO: all this state should be input/output from the VMCS PENDING_DBG,
+     * INTERRUPTIBILITY and ACTIVITIY fields.
+     */
     union {
-        uint8_t raw;
+        unsigned long raw;
         struct {
+            /* Accumulated %dr6 trap bits, positive polarity. */
+            unsigned int pending_dbg;
+
             bool hlt:1;          /* Instruction HLTed. */
             bool mov_ss:1;       /* Instruction sets MOV-SS irq shadow. */
             bool sti:1;          /* Instruction sets STI irq shadow. */
             bool unblock_nmi:1;  /* Instruction clears NMI blocking. */
-            bool singlestep:1;   /* Singlestepping was active. */
+            bool singlestep:1;   /* Singlestepping was active. (TODO, merge into pending_dbg) */
         };
     } retire;
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 20:36:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 20:36:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603366.940382 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYf-0002hG-9o; Fri, 15 Sep 2023 20:36:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603366.940382; Fri, 15 Sep 2023 20:36:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYf-0002gI-6E; Fri, 15 Sep 2023 20:36:57 +0000
Received: by outflank-mailman (input) for mailman id 603366;
 Fri, 15 Sep 2023 20:36:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhFYd-0001T8-HR
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 20:36:55 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9b631737-5407-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 22:36:54 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9b631737-5407-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694810214;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=jAUwGw9qgvfbuPk5IZDn61zHenZxiG3gXnf6zq3Dydg=;
  b=XnpfeYb0pBLG4djSGrtLdBsRMfoR+CbjHYo1Lci/pwnRvt+hHhjTmvh0
   Cl+SU4Hp720pGYr/fQRcDZ/9TcnXvF52OM0SxvbHIr4jUsbUGV9WzSkhx
   9+FDqOG2lymd/n611spdHrDL4dOMLNczfWmvZHPrHqYK01QfIXIE6MddO
   c=;
X-CSE-ConnectionGUID: kAevLBhUSueOHby+POGfdA==
X-CSE-MsgGUID: TaENPtaxQH6q7WhAYBBy2w==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125539000
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:WfFxs62hjKg3R0OLivbD5eVxkn2cJEfYwER7XKvMYLTBsI5bp2FTz
 GIbXWnSM/uPZmXwKdggboqy9RkC65bQxtcxSgM5pC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb8nuDgNyo4GlD5g1nOKgQ1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfAkhD6
 9gyKA02cx2kp+ing4qcZedgr5F2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP
 ZNfMGcxKk2aOHWjOX9OYH46tM6uimPybHtzr1WNqLBsy2PS0BZwwP7mN9+9ltmiHJ8Iwx3J/
 jqel4j/Ki0TGfqn1TOVy1Lyn7DwnQrKcqgDTqLto5aGh3XMnzdOWXX6T2CTsfS/z0KzRd9bA
 0gV4TY167g/8lSxSdvwVAH+p2SL1jY+cddNF+wx6CmW17HZpQ2eAwAsUTppeNEg8sgsSlQC1
 F6PmNOvBjVpv/uWU1qS876VqXW5Pi19EIMZTXZaF01fuYCl+dxtyEuVFb6PDZJZkPX2MDzu5
 xqKkRMjipIzh99I74KU81zu1mfESofyciY54QDeX2SA5wx/ZZK4a4HA1WU3/cqsP67CEADf4
 SFsd9y2qblXUMrTzHDlrPAlRunB2hqTDNHLbbeD9bEF/i/lxXOsdJs4DNpWdBYwaZZsldMEj
 SbuVeJtCH17ZivCgUxfOdjZ5yEWIU/ITI6NaxwsRoASCqWdjSfelM2UWWae3nr2jG8nmrwlN
 JGQfK6EVChLVfQ/lmXmGrdAiNfHIxzSI0uJHfgXKDz9itKjiIO9E+9ZYDNikMhmhE97nOkl2
 4kGbJbbo/mueOb/fjPW4eYuwaMidBAG6WTNg5UPLIare1M2cFzN/teNmdvNjaQ5xfUK/goJl
 1nhMnJlJK3X3iSec13XOyE/MNsCn/9X9BoGAMDlBn7ws1BLXGplxPZ3m0cfFVX/yNFe8A==
IronPort-HdrOrdr: A9a23:rTndOqoY0r8n8hd7Oxw/ltsaV5oTeYIsimQD101hICG8cqSj+f
 xG+85rrCMc6QxhPk3I9urhBEDtex/hHNtOkOws1NSZLW7bUQmTXeJfBOLZqlWKcUDDH6xmpM
 NdmsBFeaXN5DNB7PoSjjPWLz9Z+qjkzJyV
X-Talos-CUID: =?us-ascii?q?9a23=3ATdXoOGg8zMcPl0/PyersI6OhkTJucVTQ0lP6I3K?=
 =?us-ascii?q?DFGtOaLeECme3161oup87?=
X-Talos-MUID: =?us-ascii?q?9a23=3An4V/Aw3JQkMivFJS+6cmfGSQVzUj362DLngRmIU?=
 =?us-ascii?q?/m5edahNwEga3piXtXdpy?=
X-IronPort-AV: E=Sophos;i="6.02,150,1688443200"; 
   d="scan'208";a="125539000"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Jinoh Kang
	<jinoh.kang.kr@gmail.com>
Subject: [PATCH 5/7] x86: Introduce x86_merge_dr6()
Date: Fri, 15 Sep 2023 21:36:26 +0100
Message-ID: <20230915203628.837732-6-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915203628.837732-1-andrew.cooper3@citrix.com>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

The current logic used to update %dr6 when injecting #DB is buggy.

The SDM/APM documention on %dr6 updates is far from ideal, but does at least
make clear that it's non-trivial.  The actual behaviour is to overwrite
B{0..3} and accumulate all other bits.

Introduce x86_merge_dr6() to perform the operaton properly.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Jinoh Kang <jinoh.kang.kr@gmail.com>

v2:
 * Extend commit message
---
 xen/arch/x86/debug.c                 | 20 ++++++++++++++++++++
 xen/arch/x86/include/asm/debugreg.h  |  7 +++++++
 xen/arch/x86/include/asm/x86-defns.h |  7 +++++++
 3 files changed, 34 insertions(+)

diff --git a/xen/arch/x86/debug.c b/xen/arch/x86/debug.c
index 127fe83021cd..bfcd83ea4d0b 100644
--- a/xen/arch/x86/debug.c
+++ b/xen/arch/x86/debug.c
@@ -3,6 +3,7 @@
  * Copyright (C) 2023 XenServer.
  */
 #include <xen/kernel.h>
+#include <xen/lib.h>
 
 #include <xen/lib/x86/cpu-policy.h>
 
@@ -28,6 +29,25 @@ unsigned int x86_adj_dr6_rsvd(const struct cpu_policy *p, unsigned int dr6)
     return dr6;
 }
 
+unsigned int x86_merge_dr6(const struct cpu_policy *p, unsigned int dr6,
+                           unsigned int new)
+{
+    /* Flip dr6 to have positive polarity. */
+    dr6 ^= X86_DR6_DEFAULT;
+
+    /* Sanity check that only known values are passed in. */
+    ASSERT(!(dr6 & ~X86_DR6_KNOWN_MASK));
+    ASSERT(!(new & ~X86_DR6_KNOWN_MASK));
+
+    /* Breakpoint matches are overridden.  All other bits accumulate. */
+    dr6 = (dr6 & ~X86_DR6_BP_MASK) | new;
+
+    /* Flip dr6 back to having default polarity. */
+    dr6 ^= X86_DR6_DEFAULT;
+
+    return x86_adj_dr6_rsvd(p, dr6);
+}
+
 unsigned int x86_adj_dr7_rsvd(const struct cpu_policy *p, unsigned int dr7)
 {
     unsigned int zeros = X86_DR7_ZEROS;
diff --git a/xen/arch/x86/include/asm/debugreg.h b/xen/arch/x86/include/asm/debugreg.h
index 39ba312b84ee..e98a9ce977fa 100644
--- a/xen/arch/x86/include/asm/debugreg.h
+++ b/xen/arch/x86/include/asm/debugreg.h
@@ -89,4 +89,11 @@ struct cpu_policy;
 unsigned int x86_adj_dr6_rsvd(const struct cpu_policy *p, unsigned int dr6);
 unsigned int x86_adj_dr7_rsvd(const struct cpu_policy *p, unsigned int dr7);
 
+/*
+ * Merge new bits into dr6.  'new' is always given in positive polarity,
+ * matching the Intel VMCS PENDING_DBG semantics.
+ */
+unsigned int x86_merge_dr6(const struct cpu_policy *p, unsigned int dr6,
+                           unsigned int new);
+
 #endif /* _X86_DEBUGREG_H */
diff --git a/xen/arch/x86/include/asm/x86-defns.h b/xen/arch/x86/include/asm/x86-defns.h
index 5838631ef634..edfecc89bd08 100644
--- a/xen/arch/x86/include/asm/x86-defns.h
+++ b/xen/arch/x86/include/asm/x86-defns.h
@@ -116,6 +116,13 @@
 #define X86_DR6_BT              (_AC(1, UL) << 15)   /* Task switch                 */
 #define X86_DR6_RTM             (_AC(1, UL) << 16)   /* #DB/#BP in RTM region (INV) */
 
+#define X86_DR6_BP_MASK                                 \
+    (X86_DR6_B0 | X86_DR6_B1 | X86_DR6_B2 | X86_DR6_B3)
+
+#define X86_DR6_KNOWN_MASK                                      \
+    (X86_DR6_BP_MASK | X86_DR6_BLD | X86_DR6_BD | X86_DR6_BS |  \
+     X86_DR6_BT | X86_DR6_RTM)
+
 #define X86_DR6_ZEROS           _AC(0x00001000, UL)  /* %dr6 bits forced to 0       */
 #define X86_DR6_DEFAULT         _AC(0xffff0ff0, UL)  /* Default %dr6 value          */
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 20:36:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 20:36:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603367.940392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYg-0002yn-KE; Fri, 15 Sep 2023 20:36:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603367.940392; Fri, 15 Sep 2023 20:36:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFYg-0002yG-Dt; Fri, 15 Sep 2023 20:36:58 +0000
Received: by outflank-mailman (input) for mailman id 603367;
 Fri, 15 Sep 2023 20:36:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Zf2R=E7=citrix.com=prvs=615989724=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qhFYe-0001T8-NG
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 20:36:56 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9c0cd3e6-5407-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 22:36:55 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9c0cd3e6-5407-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1694810215;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=7pJYZHPzU8x0uG9Kmv7KnKwz7KvKmzAYE+fSnqR0OLg=;
  b=dzUTd/a9BmKH2fH/IKhsp65KR23mNHMHIqV8DHSjApqlh+skHycmmsMR
   aZs12mPf+G1d7m1yGoB9zXUOcdQ9NXt4ZUDT4joPQ2EStL10E2Kkhwjog
   GRpZVMxvnuQ9pCY5QtVJnY6G4SX9wCxMSvB9FDltC4kP85u+WL1XTsxvZ
   A=;
X-CSE-ConnectionGUID: ppT/OAW6TKudgRIJZBmesA==
X-CSE-MsgGUID: SK/ZAoiLR4Kv18qcewfBKA==
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 125538997
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:MOXGg6rp5hRGHOLW2RlTTxY6xH5eBmIuZRIvgKrLsJaIsI4StFCzt
 garIBnQa/zYamOkfNAiatnno01QusPWzIc1GwJk/3xhQSxBoJuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GlwUmAWP6gR5wePziRNV/rzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXACgVUlekrt3o/JGmRuZWp+YRBszmJ6pK7xmMzRmBZRonaZXKQqGM7t5ExjYgwMtJGJ4yZ
 eJAN2ApNk6ZJUQSZBFOUslWcOSA3xETdxVxrl6PqLVxyG/U1AFri5DmMcbPe8zMTsJQ9qqdj
 jucojmiUkBLa7RzzxK+0TWer+jOuRmne5xLRKSz++Fkqn66kzl75Bo+CgLg/KjRZlSFc8JSL
 QkY9zQjqYA29Ve3VZ/tUhugunmGsxUAHd1KHIUSyiuA167V6AaxHXUfQ3hKb9lOnNAybSwn0
 BmOhdyBLT5utrqVD3GU8LjSrimaNi0cLGtEbigBJTbp+PG6/tt11EiWCI8+Tujs1Iad9SzML
 y6itDACwJI6spA39Li38mrmoQCGo5XSZ1tgjunIZV6N4gR8bY+jQoWn71nH8PpNRLqkokm9U
 GsswJbHsr1XZX2ZvGnUGbhWQun1jxqQGGeE6WODCaXN4NhEF5SLWYlLqA9zK05yWirvUW+4O
 RSD0e+9CXI6AZdLUUOVS9jhYyjJ5fK6fTgAahwzRoMUCqWdjCfdoElTibe4hggBanQEn6AlI
 ou8es2xF3scAqkP5GPoFrtNieV0ln1umDq7qXXHI/KPi+L2iJm9E+xtDbdzRrphsPPsTPv9r
 L6zyPdmOz0ACbajM0E7AKYYLEwQLGhTOHwFg5U/SwJ3GSI/QDtJI6aIkdscl3lNw/w9ehHgo
 ivsBSe1CTPX2RX6FOl9Qis6Mem3AMcu8SpT0O5FFQ/A5kXPqL2HtM83H6bbt5F2nAC/5ZaYl
 8U4Rvg=
IronPort-HdrOrdr: A9a23:kQ2NE6HeRIvr8G9EpLqE0MeALOsnbusQ8zAXP0AYc3Jom6uj5r
 mTdZUgpHnJYVkqOE3I9ertBEDEewK4yXcX2/h3AV7BZniEhILAFugLhuGO/9SjIVybygc079
 YZT0EUMrzN5DZB4voSmDPIceod/A==
X-Talos-CUID: 9a23:7VEG4W8gJmjriPtVbwqVv1YMJocCW0KD8FTNL0CCKERbYriYUnbFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3AXDVQ7Aw4zl8CXK39wcFZWDJAbqqaqJ+NT3IklpQ?=
 =?us-ascii?q?igZWnK3UgIjyQkzqdYaZyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,150,1688443200"; 
   d="scan'208";a="125538997"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Jinoh Kang
	<jinoh.kang.kr@gmail.com>
Subject: [PATCH 7/7] x86/pv: Rewrite %dr6 handling
Date: Fri, 15 Sep 2023 21:36:28 +0100
Message-ID: <20230915203628.837732-8-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <20230915203628.837732-1-andrew.cooper3@citrix.com>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

All #DB exceptions result in an update of %dr6, but this isn't handled
properly by Xen for any guest type.

Remove all ad-hoc dr6 handling, leaving it to pv_inject_event() in most cases
and using the new x86_merge_dr6() helper.

In do_debug(), swap the dr6 to pending_dbg in order to operate entirely with
positive polarity.  Among other things, this helps spot RTM/BLD in the
diagnostic message.

Drop the unconditional v->arch.dr6 adjustment.  pv_inject_event() performs the
adjustment in the common case, but retain the prior behaviour if a debugger is
attached.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Jinoh Kang <jinoh.kang.kr@gmail.com>

v2:
 * Split pieces out into an earlier patch.
 * Extend do_debug() to use pending_dbg entirely, rather than have the same
   variable used with different polarity at different times.
---
 xen/arch/x86/pv/emul-priv-op.c  |  5 +----
 xen/arch/x86/pv/emulate.c       |  9 +++++++--
 xen/arch/x86/pv/ro-page-fault.c |  4 ++--
 xen/arch/x86/pv/traps.c         | 17 +++++++++++++----
 xen/arch/x86/traps.c            | 23 +++++++++++------------
 5 files changed, 34 insertions(+), 24 deletions(-)

diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
index 2f73ed0682e1..fe2011f28e34 100644
--- a/xen/arch/x86/pv/emul-priv-op.c
+++ b/xen/arch/x86/pv/emul-priv-op.c
@@ -1364,10 +1364,7 @@ int pv_emulate_privileged_op(struct cpu_user_regs *regs)
         ASSERT(!curr->arch.pv.trap_bounce.flags);
 
         if ( ctxt.ctxt.retire.pending_dbg )
-        {
-            curr->arch.dr6 |= ctxt.ctxt.retire.pending_dbg | DR_STATUS_RESERVED_ONE;
-            pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
-        }
+            pv_inject_DB(ctxt.ctxt.retire.pending_dbg);
 
         /* fall through */
     case X86EMUL_RETRY:
diff --git a/xen/arch/x86/pv/emulate.c b/xen/arch/x86/pv/emulate.c
index e7a1c0a2cc4f..29425a0a00ec 100644
--- a/xen/arch/x86/pv/emulate.c
+++ b/xen/arch/x86/pv/emulate.c
@@ -71,10 +71,15 @@ void pv_emul_instruction_done(struct cpu_user_regs *regs, unsigned long rip)
 {
     regs->rip = rip;
     regs->eflags &= ~X86_EFLAGS_RF;
+
     if ( regs->eflags & X86_EFLAGS_TF )
     {
-        current->arch.dr6 |= DR_STEP | DR_STATUS_RESERVED_ONE;
-        pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
+        /*
+         * TODO, this should generally use TF from the start of the
+         * instruction.  It's only a latent bug for now, as this path isn't
+         * used for any instruction which modifies eflags.
+         */
+        pv_inject_DB(X86_DR6_BS);
     }
 }
 
diff --git a/xen/arch/x86/pv/ro-page-fault.c b/xen/arch/x86/pv/ro-page-fault.c
index cad28ef928ad..f6bb33556e72 100644
--- a/xen/arch/x86/pv/ro-page-fault.c
+++ b/xen/arch/x86/pv/ro-page-fault.c
@@ -389,8 +389,8 @@ int pv_ro_page_fault(unsigned long addr, struct cpu_user_regs *regs)
 
         /* Fallthrough */
     case X86EMUL_OKAY:
-        if ( ctxt.retire.singlestep )
-            pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
+        if ( ctxt.retire.pending_dbg )
+            pv_inject_DB(ctxt.retire.pending_dbg);
 
         /* Fallthrough */
     case X86EMUL_RETRY:
diff --git a/xen/arch/x86/pv/traps.c b/xen/arch/x86/pv/traps.c
index 74f333da7e1c..553b04bca956 100644
--- a/xen/arch/x86/pv/traps.c
+++ b/xen/arch/x86/pv/traps.c
@@ -13,6 +13,7 @@
 #include <xen/softirq.h>
 
 #include <asm/pv/trace.h>
+#include <asm/debugreg.h>
 #include <asm/shared.h>
 #include <asm/traps.h>
 #include <irq_vectors.h>
@@ -50,9 +51,9 @@ void pv_inject_event(const struct x86_event *event)
     tb->cs    = ti->cs;
     tb->eip   = ti->address;
 
-    if ( event->type == X86_EVENTTYPE_HW_EXCEPTION &&
-         vector == X86_EXC_PF )
+    switch ( vector | -(event->type == X86_EVENTTYPE_SW_INTERRUPT) )
     {
+    case X86_EXC_PF:
         curr->arch.pv.ctrlreg[2] = event->cr2;
         arch_set_cr2(curr, event->cr2);
 
@@ -62,9 +63,17 @@ void pv_inject_event(const struct x86_event *event)
             error_code |= PFEC_user_mode;
 
         trace_pv_page_fault(event->cr2, error_code);
-    }
-    else
+        break;
+
+    case X86_EXC_DB:
+        curr->arch.dr6 = x86_merge_dr6(curr->domain->arch.cpu_policy,
+                                       curr->arch.dr6, event->pending_dbg);
+        /* Fallthrough */
+
+    default:
         trace_pv_trap(vector, regs->rip, use_error_code, error_code);
+        break;
+    }
 
     if ( use_error_code )
     {
diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index dead728ce329..447edc827b3a 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -1887,11 +1887,11 @@ void do_device_not_available(struct cpu_user_regs *regs)
 /* SAF-1-safe */
 void do_debug(struct cpu_user_regs *regs)
 {
-    unsigned long dr6;
+    unsigned long pending_dbg;
     struct vcpu *v = current;
 
-    /* Stash dr6 as early as possible. */
-    dr6 = read_debugreg(6);
+    /* Stash dr6 as early as possible, operating with positive polarity. */
+    pending_dbg = read_debugreg(6) ^ X86_DR6_DEFAULT;
 
     /*
      * At the time of writing (March 2018), on the subject of %dr6:
@@ -1963,13 +1963,13 @@ void do_debug(struct cpu_user_regs *regs)
          * If however we do, safety measures need to be enacted.  Use a big
          * hammer and clear all debug settings.
          */
-        if ( dr6 & (DR_TRAP3 | DR_TRAP2 | DR_TRAP1 | DR_TRAP0) )
+        if ( pending_dbg & X86_DR6_BP_MASK )
         {
             unsigned int bp, dr7 = read_debugreg(7);
 
             for ( bp = 0; bp < 4; ++bp )
             {
-                if ( (dr6 & (1u << bp)) && /* Breakpoint triggered? */
+                if ( (pending_dbg & (1u << bp)) && /* Breakpoint triggered? */
                      (dr7 & (3u << (bp * DR_ENABLE_SIZE))) && /* Enabled? */
                      ((dr7 & (3u << ((bp * DR_CONTROL_SIZE) + /* Insn? */
                                      DR_CONTROL_SHIFT))) == DR_RW_EXECUTE) )
@@ -1990,24 +1990,23 @@ void do_debug(struct cpu_user_regs *regs)
          * so ensure the message is ratelimited.
          */
         gprintk(XENLOG_WARNING,
-                "Hit #DB in Xen context: %04x:%p [%ps], stk %04x:%p, dr6 %lx\n",
+                "Hit #DB in Xen context: %04x:%p [%ps], stk %04x:%p, pending_dbg %lx\n",
                 regs->cs, _p(regs->rip), _p(regs->rip),
-                regs->ss, _p(regs->rsp), dr6);
+                regs->ss, _p(regs->rsp), pending_dbg);
 
         return;
     }
 
-    /* Save debug status register where guest OS can peek at it */
-    v->arch.dr6 |= (dr6 & ~X86_DR6_DEFAULT);
-    v->arch.dr6 &= (dr6 | ~X86_DR6_DEFAULT);
-
     if ( guest_kernel_mode(v, regs) && v->domain->debugger_attached )
     {
+        /* Save debug status register where gdbsx can peek at it */
+        v->arch.dr6 = x86_merge_dr6(v->domain->arch.cpu_policy,
+                                    v->arch.dr6, pending_dbg);
         domain_pause_for_debugger();
         return;
     }
 
-    pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
+    pv_inject_DB(pending_dbg);
 }
 
 /* SAF-1-safe */
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Fri Sep 15 21:05:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 21:05:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603416.940402 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFzw-0002h7-RM; Fri, 15 Sep 2023 21:05:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603416.940402; Fri, 15 Sep 2023 21:05:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhFzw-0002h0-Nd; Fri, 15 Sep 2023 21:05:08 +0000
Received: by outflank-mailman (input) for mailman id 603416;
 Fri, 15 Sep 2023 21:05:07 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qhFzv-0002gu-RT
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 21:05:07 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qhFzq-0007rW-Pr; Fri, 15 Sep 2023 21:05:02 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qhFzq-0000en-H9; Fri, 15 Sep 2023 21:05:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=kTemnMc3rDaEtN0QdmHobWjIlXASyh3yAX3MRSbS8Gc=; b=jBYjOZqawgWjgnLnQwHGIT5rXV
	HIbt4QZVsqJ3P7ZbJt15mC3O4N7ErH3dK3oXcUHrsPry1WO+RBrfQ8UEcufap+q4oowSxDxlDLYAl
	YWDKKhaU1KZj/6yaqUzZxNScQR+kfi4XA5ffL4HgzgaaeWHQDvum5/948/6E6hDgASlk=;
Message-ID: <3edff64e-8c3a-d5d4-b466-d9771c365702@xen.org>
Date: Fri, 15 Sep 2023 22:05:00 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.14.0
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent timing
 mode
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
 <e4ab7415-cf72-4c04-93dd-fd393f49f6f5@xen.org>
 <dfbbf38c-8651-5396-c966-365fe954df48@suse.com>
 <bfe3a681-7dbd-462c-9a8c-969d5a99aaa1@xen.org>
 <e7618567-0108-ce7a-de78-df14f13740fc@suse.com>
 <3c0ce6b3-6b26-4265-b560-11faef768e0f@xen.org>
 <66b6f226-bff9-7d05-33e9-3ee93bf04662@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <66b6f226-bff9-7d05-33e9-3ee93bf04662@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jan,

On 14/09/2023 12:01, Jan Beulich wrote:
> On 14.09.2023 11:18, Julien Grall wrote:
>> On 14/09/2023 10:11, Jan Beulich wrote:
>>> On 14.09.2023 11:04, Julien Grall wrote:
>>>> On 14/09/2023 07:32, Jan Beulich wrote:
>>>>> On 13.09.2023 19:56, Julien Grall wrote:
>>>>>> If not, I think we should taint Xen and/or print a message if the admin
>>>>>> requested to use DIT. This would make clear that the admin is trying to
>>>>>> do something that doesn't work.
>>>>>
>>>>> Tainting Xen on all hardware not exposing the bit would seem entirely
>>>>> unreasonable to me. If we learned of specific cases where the vendor
>>>>> promises are broken, we could taint there, sure. I guess that would be
>>>>> individual XSAs / CVEs then for each instance.
>>>>
>>>> ... we need to somehow let the user know that the HW it is running on
>>>> may not honor DIT. Tainting might be a bit too harsh, but I think
>>>> printing a
>>>> message with warning_add() is necessary.
>>>
>>> But Intel's claim is that with the bit unavailable hardware behaves as
>>> if DIT was in effect.
>>
>> I am confused. Above, you suggested it cannot be guaranteed. So I
>> interpreted we don't know what's happening on any processor.
> 
> Right. We can trust vendors, or not.
> 
>> So where
>> you referring to...
>>
>>
>>    Therefore you're still suggesting to emit a
>>> warning on most of Intel's hardware and on all non-Intel one.
>>
>> ... non-Intel HW?
>>
>>> That's
>>> going too far, imo.
>>
>> We could restrict the warning to non-Intel platform.
> 
> That still goes too far imo. I'm not convinced we should cover for
> vendor uncertainty here. We can't make a system any safer than its
> hardware is, in this regard. We simply have no (or not enough)
> influence on the internal workings of their pipelines.
Fair enough. I would still prefer a message in the log but ...

> 
> What I have done is add a sentence to the command line option's
> documentation:
> 
> "Note that enabling this option cannot guarantee anything beyond what
>   underlying hardware guarantees (with, where available and known to Xen,
>   respective tweaks applied)."
> 
> Plus I've further qualified the option:
> 
> ### dit (x86/Intel)

... I am also happy with these two changes.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 21:16:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 21:16:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603424.940412 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhGAV-0005j2-Tq; Fri, 15 Sep 2023 21:16:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603424.940412; Fri, 15 Sep 2023 21:16:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhGAV-0005iv-Q7; Fri, 15 Sep 2023 21:16:03 +0000
Received: by outflank-mailman (input) for mailman id 603424;
 Fri, 15 Sep 2023 21:16:02 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qhGAU-0005io-6B
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 21:16:02 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qhGAS-0008G4-Vw; Fri, 15 Sep 2023 21:16:00 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qhGAS-00019x-PA; Fri, 15 Sep 2023 21:16:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=QFfaz8pAnCI+7CW1ilThzm/w4MQ86iMpfdgGhZgvfgY=; b=xzKR672s42jqiT/ym7mwfGnq6O
	vG365iuv376jljOcXDr76amKNUEQFL7XbQlqH56XB9Z1DHSrwyzndcptyDLunOw0oeeua6Z+Qqi8f
	rvNR2bAFIMe2YcCCGG7XLoRD9PmC7S2yJ25O+peYfTaCxUd9U5pWiyYmBdNpUchagx3c=;
Message-ID: <41ff8d44-43fc-ac22-73d0-5608b6f0b80d@xen.org>
Date: Fri, 15 Sep 2023 22:15:59 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.14.0
Subject: Re: [PATCH v2] xen/arm: Skip Xen specific nodes/properties from hwdom
 /chosen node
To: Henry Wang <Henry.Wang@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Michal Orzel <michal.orzel@amd.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230912105341.16687-1-michal.orzel@amd.com>
 <alpine.DEB.2.22.394.2309121045570.2080229@ubuntu-linux-20-04-desktop>
 <F80F50C1-4880-4776-8AE1-9552397624F2@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <F80F50C1-4880-4776-8AE1-9552397624F2@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 13/09/2023 01:49, Henry Wang wrote:
> Hi Stefano,
> 
>> On Sep 13, 2023, at 01:46, Stefano Stabellini <sstabellini@kernel.org> wrote:
>>
>> On Tue, 12 Sep 2023, Michal Orzel wrote:
>>> Skip the following Xen specific host device tree nodes/properties
>>> from being included into hardware domain /chosen node:
>>> - xen,static-heap: this property informs Xen about memory regions
>>>    reserved exclusively as static heap,
>>> - xen,domain-shared-memory-v1: node with this compatible informs Xen
>>>    about static shared memory region for a domain. Xen exposes a different
>>>    node (under /reserved-memory with compatible "xen,shared-memory-v1") to
>>>    let domain know about the shared region,
>>> - xen,evtchn-v1: node with this compatible informs Xen about static
>>>    event channel configuration for a domain. Xen does not expose
>>>    information about static event channels to domUs and dom0 case was
>>>    overlooked (by default nodes from host dt are copied to dom0 fdt unless
>>>    explicitly marked to be skipped), since the author's idea was not to
>>>    expose it (refer docs/misc/arm/device-tree/booting.txt, "Static Event
>>>    Channel"). Even if we wanted to expose the static event channel
>>>    information, the current node is in the wrong format (i.e. contains
>>>    phandle to domU node not visible by dom0). Lastly, this feature is
>>>    marked as tech-preview and there is no Linux dt binding in place.
>>>
>>> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
>>
>> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
>>
>> Do we need Henry's explicit approval on bug fixes at this point?
> 
> I think it is a bit too early, we can wait for the code freeze for the release-ack.
> Before code freeze, maintainers/committers can push the patch as usual.
> 
> Anyway, I agree this patch is definitely qualified to be included in 4.18 so feel
> free to add below tag if you want.
> 
> Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Thanks. It is now committed.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 21:41:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 21:41:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603430.940422 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhGZ9-0004oI-TL; Fri, 15 Sep 2023 21:41:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603430.940422; Fri, 15 Sep 2023 21:41:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhGZ9-0004oB-Pl; Fri, 15 Sep 2023 21:41:31 +0000
Received: by outflank-mailman (input) for mailman id 603430;
 Fri, 15 Sep 2023 21:41:30 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qhGZ8-0004o5-4f
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 21:41:30 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qhGZ7-0000SL-PU; Fri, 15 Sep 2023 21:41:29 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qhGZ7-00023L-Ho; Fri, 15 Sep 2023 21:41:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=5V7JyGRlODp4w4Ly1IrA8R7RanPbtNBwEjZzMc2OwSI=; b=c+uiBwx2xaZDzZhJUo3vhyBPTJ
	sJsOYIJv1XyQz7LSVZC374aEdZDJfiYuEJ3V5tZy7H/hL2Ua7SZUlQAfHjQbqpNDCjEloQFnJwwms
	GbjcDmAKl3kTfjMFaJ5v4gusReCt6AN9XsN6U0qer02l17kCwIA48m0TwWq8IMi4poYQ=;
Message-ID: <bfb777cb-77b1-859a-1d4d-d096632c765e@xen.org>
Date: Fri, 15 Sep 2023 22:41:27 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.14.0
Subject: Re: [PATCH v6 03/13] xen/arm64: Split and move MMU-specific head.S to
 mmu/head.S
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Penny Zheng <penny.zheng@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Wei Chen <wei.chen@arm.com>,
 Julien Grall <jgrall@amazon.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-4-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230828013224.669433-4-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

I realize that this was already committed. But something went wrong 
during the code movement.

On 28/08/2023 02:32, Henry Wang wrote:
> +/*
> + * Enable mm (turn on the data cache and the MMU) for the boot CPU.
> + * The function will return to the virtual address provided in LR (e.g. the
> + * runtime mapping).
> + *
> + * Inputs:
> + *   lr : Virtual address to return to.
> + *
> + * Clobbers x0 - x5
> + */
> +ENTRY(enable_boot_cpu_mm)
> +        mov   x5, lr
> +
> +        bl    create_page_tables
> +        load_paddr x0, boot_pgtable
> +
> +        bl    enable_mmu
> +        mov   lr, x5
> +
> +        /*
> +         * The MMU is turned on and we are in the 1:1 mapping. Switch
> +         * to the runtime mapping.
> +         */
> +        ldr   x0, =1f
> +        br    x0
> +1:
> +        /*
> +         * The 1:1 map may clash with other parts of the Xen virtual memory
> +         * layout. As it is not used anymore, remove it completely to
> +         * avoid having to worry about replacing existing mapping
> +         * afterwards. Function will return to primary_switched.
> +         */
> +        b     remove_identity_mapping
> +
> +        /*
> +         * Below is supposed to be unreachable code, as "ret" in
> +         * remove_identity_mapping will use the return address in LR in advance.
> +         */
> +        b     fail

The "b     fail" didn't exist in head.S. I guess this was due to a wrong 
rebase? Can you check if there is something else that went missing?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 21:50:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 21:50:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603437.940432 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhGiA-0007cQ-OA; Fri, 15 Sep 2023 21:50:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603437.940432; Fri, 15 Sep 2023 21:50:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhGiA-0007cJ-LU; Fri, 15 Sep 2023 21:50:50 +0000
Received: by outflank-mailman (input) for mailman id 603437;
 Fri, 15 Sep 2023 21:50:50 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DZw4=E7=oracle.com=boris.ostrovsky@srs-se1.protection.inumbo.net>)
 id 1qhGi9-0007cD-R2
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 21:50:50 +0000
Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com
 [205.220.177.32]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ed64b7ed-5411-11ee-8788-cb3800f73035;
 Fri, 15 Sep 2023 23:50:48 +0200 (CEST)
Received: from pps.filterd (m0246632.ppops.net [127.0.0.1])
 by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38FLNjgr011250; Fri, 15 Sep 2023 21:50:21 GMT
Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com
 (iadpaimrmta01.appoci.oracle.com [130.35.100.223])
 by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3t2y7hgs34-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Fri, 15 Sep 2023 21:50:21 +0000
Received: from pps.filterd
 (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1])
 by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19)
 with ESMTP id 38FKi69K036207; Fri, 15 Sep 2023 21:50:20 GMT
Received: from nam10-bn7-obe.outbound.protection.outlook.com
 (mail-bn7nam10lp2100.outbound.protection.outlook.com [104.47.70.100])
 by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id
 3t0f5gwnnn-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Fri, 15 Sep 2023 21:50:20 +0000
Received: from BLAPR10MB5009.namprd10.prod.outlook.com (2603:10b6:208:321::10)
 by MN0PR10MB5958.namprd10.prod.outlook.com (2603:10b6:208:3ce::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.31; Fri, 15 Sep
 2023 21:50:19 +0000
Received: from BLAPR10MB5009.namprd10.prod.outlook.com
 ([fe80::b5b3:e1e:eca2:7484]) by BLAPR10MB5009.namprd10.prod.outlook.com
 ([fe80::b5b3:e1e:eca2:7484%5]) with mapi id 15.20.6792.021; Fri, 15 Sep 2023
 21:50:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ed64b7ed-5411-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=message-id : date :
 subject : to : cc : references : from : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2023-03-30;
 bh=H74T6+1OtkwapfOHFrqHqwD8gPpXo2sFqK1QM65WfBM=;
 b=FwBVu5kauKO4gCRoAyEktngmNddZv+XH126szAneG+UT32qPERsvBp2STKdRWoMWwt0a
 j5udFaSrGHmhLHxLZywhY39RjFE7iOara2bEHxcEG6bqsTZrdOGHmCR5t/nsTSzFJEEj
 vZHfoSbGrYvrR/+BvtG248g5f/HBJwoc+6ALnXiNSpDiPBa2bcfC+hxl38N4GlvTgWvc
 4lafpovdGizOwVb4JhxIPcL+BxwwVtMzWWTbm0V7flPD1YT4Nb1rlEDty9sfsupBfy0h
 /5jRKb4dlQRnT3kuMTvVLQkspQut0sgV72Vv+h67p5wL7AgHJtfhVXz/jQc7unb7wRpF vg== 
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Gbkv3D/qmdhLqZFkaPgcIQwzV2HplCBQU+oYlmxnOPvGEMUeTHGgKpnWaEi7gDdomQAd+2pi6Vy0A0aqgx14Rl9n6gZohiljDq34VkRMN7sijJqWeZ8vF8MqdIN0fwi6/ykwtfpUjzVjKowkYPj0hka8cTg84ufHa1zhYyJAAwe6sEgSNmGAvOKmBQlOFLFCeuip3vUWFBWZNMZEqO14XQ2//gsolU7zRPhvv81eeeGa7zZRX7UdNRpQgsiNq8m665sZGbwvpAkCMaeAUuMOBqWcjLztZGveGmLzAqrOCzPaD3Lyt1c6LfsgC3uCV8EJlZSczqfTvPuGQ3Jy5txLwQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=H74T6+1OtkwapfOHFrqHqwD8gPpXo2sFqK1QM65WfBM=;
 b=PsqX3+vWjd2vIBcD/gjhAZ/BzHW+mv4+L6xyI54718h5UiyoA516o4RwFWF1Bcw/8jlclAhyIsbfaPSVXstIsDVYipce+AN0190uRX7kOLwMrhD7BJfUfjDVNoLIllAQtGmntr2iI8zNa2zOBAJHJvVPKEQrh6FxqmyIj8eXyTMBJKr4HaYmzm3dU6zO2lKKAgq1fNg2rAPwoS3zoEx8MPHviJiG0ln1J0eIkOfMRsDMi2td1BaFKuf+EHeuZBbrUVXeEwAYzv+XnGmC7ssujXv0YabIgstxlauDSAR4hjUIzgXbcuteXAiGeV5wRYvXdiYaMOS4F/kRu/2YtaeY0g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com;
 dkim=pass header.d=oracle.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=H74T6+1OtkwapfOHFrqHqwD8gPpXo2sFqK1QM65WfBM=;
 b=YcmPUdYQRAPVE68vvEea/kWSi663ISAo9m9Dx0saCHzwQbG/tEkRzJWBqc8JbEvoVsFdXuvV9kgK8uWJdjO8r3GSCuoDOqMlgj3jS5ZJJnnknkseBtXpsxLSHzVw3ZyKobKtqd0cRSm31Yq3Zw5fpa3a854OCOIsRSDqCxxSCUk=
Message-ID: <c243936e-bda3-eb3f-1725-323772ad3a7d@oracle.com>
Date: Fri, 15 Sep 2023 17:50:11 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.1
Subject: Re: [PATCH 3/3] x86/xen: allow nesting of same lazy mode
Content-Language: en-US
To: Juergen Gross <jgross@suse.com>, linux-kernel@vger.kernel.org,
        x86@kernel.org
Cc: Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
        Borislav Petkov <bp@alien8.de>,
        Dave Hansen <dave.hansen@linux.intel.com>,
        "H. Peter Anvin" <hpa@zytor.com>, xen-devel@lists.xenproject.org
References: <20230913113828.18421-1-jgross@suse.com>
 <20230913113828.18421-4-jgross@suse.com>
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
In-Reply-To: <20230913113828.18421-4-jgross@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: SA1P222CA0125.NAMP222.PROD.OUTLOOK.COM
 (2603:10b6:806:3c5::19) To BLAPR10MB5009.namprd10.prod.outlook.com
 (2603:10b6:208:321::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BLAPR10MB5009:EE_|MN0PR10MB5958:EE_
X-MS-Office365-Filtering-Correlation-Id: 910c5d84-237b-4595-371a-08dbb635c0d4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 
	/jFAhKUISjzaSkLGoR7R1RJldG2mp2DanZDLamNPmezhxPUWE0bCuEIgtkjeJZONM4H4krGKDrspDMcKH01AqyvddtB8os/hgU9tvq9N9VjDlTMPjUebH478KOgayLvmUwXXS07dDZwotAOF8nfQMYbGZBozQ+Bu2vJbtNb5Xg+lpCwfKISey5KSBYsoNUVwQfwdUKmjPOyShF47dAFy64HZiNxx356yG8wMVWAEK/DZKSHCnlrV/U8wTE73o0RvExNBSXDSwbnleNQtiGaNRmVRN+FbyDyi4Y+SgZ2Z3u9N/CsIIKTNoscEj19b+ttXPxvQoNzVZLM3wESku/odOD7/mU7NyYvmJA8EX53D1en1bbFsCkK9qs+k9qZ2XOhe7JXN074z7ysLnVnhE+I1lh8wlDuHMJJeSd+zsG6T4yrswldN23ZQu8GHMbzlY5KknVXh0EUarstjS3+RwB4sP3ki4Ax3XQ+XSjJfitCobjKO/HSKfRUgXClKwBDuN/qZUS97M4ZQYCug6ua7szTso8l97NVwiGAs/j133lqfHD3CRNLbnCxIz99DMU9+8MbUc0EbvLhb61N1HJonEbf37QofTP+mr+kN+kxku+45hGsjkAvL8jkOdno4+E9XbMkk8fEUNMIto6hrh5XQEzQEXA==
X-Forefront-Antispam-Report: 
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BLAPR10MB5009.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(136003)(396003)(346002)(376002)(1800799009)(186009)(451199024)(53546011)(86362001)(83380400001)(6512007)(2616005)(31696002)(478600001)(6506007)(38100700002)(6666004)(26005)(4326008)(4744005)(8676002)(66476007)(8936002)(5660300002)(41300700001)(36756003)(54906003)(6486002)(66556008)(44832011)(316002)(2906002)(66946007)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: 
	=?utf-8?B?UmRFekJKR2pkS055aGNxN0hhQXJ0M0orOEFhaFJ5QVJzRzlqbHJ1MWVCeHhR?=
 =?utf-8?B?SG1ZQUZQKzJpVUM2NWFHV1RCWS90d1YrNDRmOElJcWM1Zlp6a3h2dlVrQi9a?=
 =?utf-8?B?SmFrejhoOE8xWW0ya1JVWUd5Y29VN29zekdIVG9NdFY0ZGtseGpkMDFISUNU?=
 =?utf-8?B?UnBna0k0Ynd6cjQyOUNtL1U1cnlFaDFGUGkzdXp5TjQxd0I5dUt4azhwOWVV?=
 =?utf-8?B?SG5iMFJlME0welh2NlJtMjlRQnVLZEZ6TURHc0lwWTlwZ1orVzFMTXk5SVBv?=
 =?utf-8?B?WkhMdVo4WkVlT2lkUjB1TllWRGwvTmY4TlJoWEpJZ1psSGVDRzlHYW1sSGxH?=
 =?utf-8?B?dHMxVWhBZTRBWVBkTTU1V1JUQUMySUpDb1JialQ3ZzFTRDZueDZBNzRzV3BI?=
 =?utf-8?B?YkpVYytBbjdjMDN3aitHVWVicHR5ZWpIQVFTbGdSL1ZyUzRYaWkzcFlUK29V?=
 =?utf-8?B?M2hkaDg3b0NPdHJreitadk5mSGhMZEVYN1hjSC9DWGV0ZEs4cnh0L1NNZzdX?=
 =?utf-8?B?bWU4TG96Rk9xR0poMm5tQ0FLYjIvdkdqK3Q4S09LZy83ZCs4Wno5aS9VaCtM?=
 =?utf-8?B?Q3lnYUFndFQ0OS9FeGVTbjZMdnVBbVNkNHFWY2hMc0RJRlFYT1JIU3E5QWli?=
 =?utf-8?B?T3BudXhjc2FUQ25hZDF5ZnJQU1ZHK1AwT21YUm1tWm10dnFrRGdHbGxuZURV?=
 =?utf-8?B?Rjk2cjVMdTNaQ3d0bFozTmtaOHMzcmowZ1JzWVd0Wm95L0JrWXV1cVNYVDlw?=
 =?utf-8?B?YjRzOGdlVnk3UVVubHNtUUFHTnB3Z2QrUytrdzRzaHFucjNIdTF1NHowTXJH?=
 =?utf-8?B?RU9ta0FYUXEzK0QyL2pMeEdTVnBoTW1yQ2d5RFc1K2syVTJRZFVUUXZMZExG?=
 =?utf-8?B?S3FBU2I1d3J2bkVoUFlGcksrRm9SelFJRm5QN3NXdVd0Y3FmM2ZGSjZhVm51?=
 =?utf-8?B?dVUvUC9oK0V5SW5GSUdqOUVDTjd5eDU3M29oVStZd2NBYnNqREUrOUlKM1VP?=
 =?utf-8?B?bVlDN3BsQkNuNDkycmJpNG96T3pFdk1uYXlPZVliTGMvakJxUXRNTGRKVGhv?=
 =?utf-8?B?WXV0KzhIWFhNbGcwQW05bTVoSC9saDlpRE5XamhjeHRQTzNJMFNYOFZYMnV1?=
 =?utf-8?B?VkErQTJNazlUd0hWUnZYQ2dDWUgrRERtVSttcDd6LzZvNDc0VTBpRUJ5Ujhx?=
 =?utf-8?B?bS9VVkJOYzk5cTZoZFRuNXYyN1JPTUhRK3VHMmdwSmVFZDMvVUhYdjgvL3ZP?=
 =?utf-8?B?U3NkTXBGNzhWY3l0YkJuWG0vV3lSWWp4TXJTRElRcEM1bXZycHVBMis0OWZO?=
 =?utf-8?B?b3RWWWk2UmFvVWJkOXRrUEJQb3hpdWVRRHFUa1lKTkMvVkRWc2dDdUtyOFl5?=
 =?utf-8?B?c3AyZnBLZmN3cnUxMmRLVUJUZ2hCeHRBQksrOWl1UWhUR0YzUFpadjhPd0w1?=
 =?utf-8?B?dER3SktRNVlCZUFGNlhXOXpSRFZqWXlxaVVMcS9mYXIxQ3ZzV3JYZmdncjV5?=
 =?utf-8?B?TGdwRkc1RUZJSmR0T0ZVS1Mzd0g4SGhIL1MwellsanhtU25kWEpaQnBRQWNo?=
 =?utf-8?B?RG9UVzhTdDZMekVyWGRaQjJOWUZmK1RPaVg3Q1hyQVNlQ05Jdk9jZDhkU1BN?=
 =?utf-8?B?emUycmJDUU1rYU5xUzQ1dnZKOEpEdVphWXRhZytUREY2OUwyNUNLV1NRdm5o?=
 =?utf-8?B?aG5DalpSaHJTdi9PMmVUYndsalM1M0w2SzAxa0wvdHZMNnVmcnpQa1Mvayto?=
 =?utf-8?B?VG5wSERhc3FMcUoxcTRzSkZTa3o5YVdWOEI3VmMyYXp2SWJaZ2FWMlhvNTZW?=
 =?utf-8?B?bVNUUEZuVURwcVBhMkROd1d0cGJWeHhsYkxxc3NabkRuaEEyZVZ4QlMycDlm?=
 =?utf-8?B?c3NQQkhjd0pGdi83UUVGS0gyT1cwN1BSSEIrMlRyVllneFU3WnhqS2VGcmtF?=
 =?utf-8?B?aEEzOXI2YS9pdjFaZmFSR0p6WU5za1NoeXJlbVk2RDdOcjZKc3RNME93enVk?=
 =?utf-8?B?bkhzOEg5YnpOTHhrcXFOZ3NNNmRqcEg5OFNDYlUwTm44MkJ5enRsVHRoUVQr?=
 =?utf-8?B?bFFQRytNUW9wdXdCV3RPMThOQTJYR1cxcFZLUHE0eWxsc0NoR1d6VzluWlEz?=
 =?utf-8?B?YTFFMk0vcXlpTVdkMERmc3h4NEdkZitmQWpyYkxWSUowZnkxdUt3dFRicDc5?=
 =?utf-8?B?Mnc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 
	=?utf-8?B?MUlyd2lyNURLT3plajdaazZkUzlxUVZCMzBwS0hjUkF3b3drWWNYZlRoK2w4?=
 =?utf-8?B?dWJtS1NVRUVnL0c2MjBqeUUzV3drMzFveXdkWElHQkJoVVZQdXZvV3lVSDhR?=
 =?utf-8?B?U25zNFRSdHJaY014VU91MkdGajZESzVWbEpyclBjQWU3TXJVS1liSVpVSWZE?=
 =?utf-8?B?Skx2UUdFMjdscjJoLytmNWlmWHNZTXlhT0NYMkg1d25BblVOYTVzUVhTczhn?=
 =?utf-8?B?Rm1UdG8xNExHVHFZUlh3WUJDMWVscDFLei9rRE5LYXdncjFuWjZHT0xNYUhJ?=
 =?utf-8?B?RDV3eWxnQXJKa0RJZnoxdjA1TmtYMzFCOHYybWZFWUhEc204Zkx1aEJqWmRj?=
 =?utf-8?B?MWJVZXIrN1Zxenh2d1BDRGxoenMzVmFiTk9ONEdycE5DbkdhRC8reHZZWmUw?=
 =?utf-8?B?L2hCTEZkbTdLK1hZZCtyakdhdWxZTnJpWVgwRGtiVmpNeGZGMWNPdkMyS3dS?=
 =?utf-8?B?dU1KS1hvK1doVjh1VHRnMmMzR0NLRktrbk95eW9WYTFEQ2c4ejR2UFBiSmJ4?=
 =?utf-8?B?VjhvSU8wTkN2RFhLQjdQaGl3TU9ranBXOXJnSkdkdzIreHlna1lTeUpaSnIy?=
 =?utf-8?B?L0V0M0t0YnlYYjFOQk5OZFhCdUZEbnNEZ0wrYUdES2ZHU0kvU3cySHdkeXhP?=
 =?utf-8?B?Mlo5R2ExcEM2TDJIZzZ1ZHVreE5RNzdCb0h3WGdZMW9wY1piOWVUcnI3ejJw?=
 =?utf-8?B?RDdwWVBONGZqQjBySDk0emovZitxQXJFdzV2NkpxSGhPcithZjU5QTk5cDYy?=
 =?utf-8?B?MkpSL3EvWHYxckdxNTE0WkRkQkNjQlRIZEhzUzJDTVpSdTcwQkpyajFnSDAr?=
 =?utf-8?B?T3dnWEFrOUxyQll0dXIvMUovdEd1OW9qRklIYkdWa0NNd0dvVzFSaEE4MlBI?=
 =?utf-8?B?K3V0MUoyeE5NZjhjNnN1dzBBY1djajRIMmJIQ3JRTEwwTm1QM0x2VFNGZ29a?=
 =?utf-8?B?NnVwWHc2NkhKckxjZU9TL3hheDljcTRSTjFkNDhpaDJqTEVocVJQQjJkeTZq?=
 =?utf-8?B?OWN0clJRWUg4SEg3SmUzN3FESHV3NWk1R3ZyNFgzK3plNk56a1JOTXhLZUVO?=
 =?utf-8?B?NTBnTEFFaVN2RitkWFRTMzByeFc5c2R3d1RvTHozanpUR09ZaTBYM1VYSS9k?=
 =?utf-8?B?WU1yTVJzcW9najVrL1pMZ0wvSXBZbitlZ1hpUzg2dWZPY3VCaEZhejFVRzBP?=
 =?utf-8?B?aDVXRFBrM1haVy9tdU93MzZzbXV2dmx5SkhtNHRpaHF6RFZ2cmtiMkRkbDFP?=
 =?utf-8?B?d1dJU0xYZGx5YmswL2xwbHRDdG5VcWV6RTVvZktCd2t2TlhweU9HeDV0RWxS?=
 =?utf-8?B?MGlPMWdxdGxCK3oxL2RuQjYyMm1JbnFzU2crOVlHWmw3TnNtYThFQzNmWHFL?=
 =?utf-8?B?WDhCaE44Vit2dFE9PQ==?=
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 910c5d84-237b-4595-371a-08dbb635c0d4
X-MS-Exchange-CrossTenant-AuthSource: BLAPR10MB5009.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 21:50:18.9978
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: l3Zk8Ym+H+T33pEGTo9Q3V46mGEpK5BDn1BymIYdAjFyczn4ebcqzNTgQm9MDMlfcyAZHhhQu2OMCVrQNTZXyP1eHPRKTiM+6c/966RC/tg=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR10MB5958
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.601,FMLib:17.11.176.26
 definitions=2023-09-15_19,2023-09-15_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 mlxscore=0 bulkscore=0
 adultscore=0 phishscore=0 spamscore=0 mlxlogscore=999 suspectscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2308100000
 definitions=main-2309150196
X-Proofpoint-ORIG-GUID: ywDPsgA5D0aNXQF4bWb347M1NPXVVaYb
X-Proofpoint-GUID: ywDPsgA5D0aNXQF4bWb347M1NPXVVaYb



On 9/13/23 7:38 AM, Juergen Gross wrote:
> When running as a paravirtualized guest under Xen, Linux is using
> "lazy mode" for issuing hypercalls which don't need to take immediate
> effect in order to improve performance (examples are e.g. multiple
> PTE changes).
> 
> There are two different lazy modes defined: MMU and CPU lazy mode.
> Today it is not possible to nest multiple lazy mode sections, even if
> they are of the same kind. A recent change in memory management added
> nesting of MMU lazy mode sections, resulting in a regression when
> running as Xen PV guest.
> 
> Technically there is no reason why nesting of multiple sections of the
> same kind of lazy mode shouldn't be allowed. So add support for that
> for fixing the regression.
> 
> Fixes: bcc6cc832573 ("mm: add default definition of set_ptes()")
> Signed-off-by: Juergen Gross <jgross@suse.com>

For patches 2 and 3

Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 21:59:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 21:59:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603444.940441 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhGpz-00013c-HV; Fri, 15 Sep 2023 21:58:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603444.940441; Fri, 15 Sep 2023 21:58:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhGpz-00013V-Ex; Fri, 15 Sep 2023 21:58:55 +0000
Received: by outflank-mailman (input) for mailman id 603444;
 Fri, 15 Sep 2023 21:58:54 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qhGpy-00013P-07
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 21:58:54 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qhGpx-0000lo-OL; Fri, 15 Sep 2023 21:58:53 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.102])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qhGpx-0002bG-Gi; Fri, 15 Sep 2023 21:58:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:Subject:
	From:References:Cc:To:MIME-Version:Date:Message-ID;
	bh=LDGyTgn9922NIE2Hb0pRvlpvqTv3uLX7PzT4rmzmZME=; b=NPRYQ/RMvlWQLAiJtrVnFWvABD
	t2ASTUPvOZ4fHKlVLgAu561yALk+KslaZ413olYf4Hko2H5WOfpB4czKqiL74Je3wATlr6k6OGsqJ
	Fyll3cGVEBpnBVwlZQjhmMy8QxMu3H+OfWyvqu6qdU3VNq29UXQdOGR7bakP/etRxyjE=;
Message-ID: <4d7a9849-8990-8ddd-3531-93f4e2e262b1@xen.org>
Date: Fri, 15 Sep 2023 22:58:51 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.14.0
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Wei Chen <wei.chen@arm.com>,
 Penny Zheng <penny.zheng@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-9-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
Subject: Re: [PATCH v6 08/13] xen/arm: Fold mmu_init_secondary_cpu() to head.S
In-Reply-To: <20230828013224.669433-9-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 28/08/2023 02:32, Henry Wang wrote:
> Currently mmu_init_secondary_cpu() only enforces the page table
> should not contain mapping that are both Writable and eXecutables
> after boot. To ease the arch/arm/mm.c split work, fold this function
> to head.S.
> 
> Introduce assembly macro pt_enforce_wxn for both arm32 and arm64.
> For arm64, the macro is called at the end of enable_secondary_cpu_mm().
> For arm32, the macro is called before secondary CPUs jumping into
> the C world.
> 
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> ---
> v6:
> - New patch.
> ---
>   xen/arch/arm/arm32/head.S     | 20 ++++++++++++++++++++
>   xen/arch/arm/arm64/mmu/head.S | 21 +++++++++++++++++++++
>   xen/arch/arm/include/asm/mm.h |  2 --
>   xen/arch/arm/mm.c             |  6 ------
>   xen/arch/arm/smpboot.c        |  2 --
>   5 files changed, 41 insertions(+), 10 deletions(-)
> 
> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
> index 33b038e7e0..39218cf15f 100644
> --- a/xen/arch/arm/arm32/head.S
> +++ b/xen/arch/arm/arm32/head.S
> @@ -83,6 +83,25 @@
>           isb
>   .endm
>   
> +/*
> + * Enforce Xen page-tables do not contain mapping that are both
> + * Writable and eXecutables.
> + *
> + * This should be called on each secondary CPU.
> + */
> +.macro pt_enforce_wxn tmp
> +        mrc   CP32(\tmp, HSCTLR)
> +        orr   \tmp, \tmp, #SCTLR_Axx_ELx_WXN
> +        dsb
> +        mcr   CP32(\tmp, HSCTLR)
> +        /*
> +         * The TLBs may cache SCTLR_EL2.WXN. So ensure it is synchronized
> +         * before flushing the TLBs.
> +         */
> +        isb
> +        flush_xen_tlb_local \tmp
> +.endm
> +
>   /*
>    * Common register usage in this file:
>    *   r0  -
> @@ -254,6 +273,7 @@ secondary_switched:
>           /* Use a virtual address to access the UART. */
>           mov_w r11, EARLY_UART_VIRTUAL_ADDRESS
>   #endif
> +        pt_enforce_wxn r0
>           PRINT("- Ready -\r\n")
>           /* Jump to C world */
>           mov_w r2, start_secondary
> diff --git a/xen/arch/arm/arm64/mmu/head.S b/xen/arch/arm/arm64/mmu/head.S
> index a5271e3880..25028bdf07 100644
> --- a/xen/arch/arm/arm64/mmu/head.S
> +++ b/xen/arch/arm/arm64/mmu/head.S
> @@ -31,6 +31,25 @@
>           isb
>   .endm
>   
> +/*
> + * Enforce Xen page-tables do not contain mapping that are both
> + * Writable and eXecutables.
> + *
> + * This should be called on each secondary CPU.
> + */
> +.macro pt_enforce_wxn tmp
> +       mrs   \tmp, SCTLR_EL2
> +       orr   \tmp, \tmp, #SCTLR_Axx_ELx_WXN
> +       dsb   sy
> +       msr   SCTLR_EL2, \tmp
> +       /*
> +        * The TLBs may cache SCTLR_EL2.WXN. So ensure it is synchronized
> +        * before flushing the TLBs.
> +        */
> +       isb
> +       flush_xen_tlb_local
> +.endm
> +

It would be preferable if we can set the flag right when the MMU is 
initialized enabled configured. This would avoid the extra TLB flush and 
SCTLR dance. How about the following (not compiled/cleaned) code:

diff --git a/xen/arch/arm/arm64/mmu/head.S b/xen/arch/arm/arm64/mmu/head.S
index a5271e388071..6b19d15ff89f 100644
--- a/xen/arch/arm/arm64/mmu/head.S
+++ b/xen/arch/arm/arm64/mmu/head.S
@@ -264,10 +264,11 @@ ENDPROC(create_page_tables)
   * Inputs:
   *   x0 : Physical address of the page tables.
   *
- * Clobbers x0 - x4
+ * Clobbers x0 - x6
   */
  enable_mmu:
          mov   x4, x0
+        mov   x5, x1
          PRINT("- Turning on paging -\r\n")

          /*
@@ -283,6 +284,7 @@ enable_mmu:
          mrs   x0, SCTLR_EL2
          orr   x0, x0, #SCTLR_Axx_ELx_M  /* Enable MMU */
          orr   x0, x0, #SCTLR_Axx_ELx_C  /* Enable D-cache */
+        orr   x0, x0, x5                /* Enable extra flags */
          dsb   sy                     /* Flush PTE writes and finish 
reads */
          msr   SCTLR_EL2, x0          /* now paging is enabled */
          isb                          /* Now, flush the icache */
@@ -297,16 +299,17 @@ ENDPROC(enable_mmu)
   * Inputs:
   *   lr : Virtual address to return to.
   *
- * Clobbers x0 - x5
+ * Clobbers x0 - x6
   */
  ENTRY(enable_secondary_cpu_mm)
-        mov   x5, lr
+        mov   x6, lr

          load_paddr x0, init_ttbr
          ldr   x0, [x0]

+        mov   x1, #SCTLR_Axx_ELx_WXN        /* Enable WxN from the start */
          bl    enable_mmu
-        mov   lr, x5
+        mov   lr, x6

          /* Return to the virtual address requested by the caller. */
          ret
@@ -320,16 +323,17 @@ ENDPROC(enable_secondary_cpu_mm)
   * Inputs:
   *   lr : Virtual address to return to.
   *
- * Clobbers x0 - x5
+ * Clobbers x0 - x6
   */
  ENTRY(enable_boot_cpu_mm)
-        mov   x5, lr
+        mov   x6, lr

          bl    create_page_tables
          load_paddr x0, boot_pgtable

+        mov   x1, #0        /* No extra SCTLR flags */
          bl    enable_mmu
-        mov   lr, x5
+        mov   lr, x6

          /*
           * The MMU is turned on and we are in the 1:1 mapping. Switch

The same logic could be used for arm32.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 23:17:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 23:17:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603452.940451 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhI41-0000iw-91; Fri, 15 Sep 2023 23:17:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603452.940451; Fri, 15 Sep 2023 23:17:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhI41-0000ip-64; Fri, 15 Sep 2023 23:17:29 +0000
Received: by outflank-mailman (input) for mailman id 603452;
 Fri, 15 Sep 2023 23:17:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=X4Zp=E7=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qhI3z-0000bB-Cs
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 23:17:27 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0628.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::628])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 06e3ba1f-541e-11ee-8788-cb3800f73035;
 Sat, 16 Sep 2023 01:17:25 +0200 (CEST)
Received: from AS4P251CA0017.EURP251.PROD.OUTLOOK.COM (2603:10a6:20b:5d3::6)
 by PAWPR08MB9544.eurprd08.prod.outlook.com (2603:10a6:102:2f2::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.43; Fri, 15 Sep
 2023 23:17:19 +0000
Received: from AM7EUR03FT037.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:5d3:cafe::17) by AS4P251CA0017.outlook.office365.com
 (2603:10a6:20b:5d3::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21 via Frontend
 Transport; Fri, 15 Sep 2023 23:17:19 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT037.mail.protection.outlook.com (100.127.140.225) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.21 via Frontend Transport; Fri, 15 Sep 2023 23:17:19 +0000
Received: ("Tessian outbound c99fbc01d472:v175");
 Fri, 15 Sep 2023 23:17:19 +0000
Received: from 080c00d6e9fd.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 28CF8EBB-159A-43D8-8AA4-6494790BED23.1; 
 Fri, 15 Sep 2023 23:17:07 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 080c00d6e9fd.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 15 Sep 2023 23:17:07 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PR3PR08MB5785.eurprd08.prod.outlook.com (2603:10a6:102:89::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Fri, 15 Sep
 2023 23:17:03 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6792.021; Fri, 15 Sep 2023
 23:17:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 06e3ba1f-541e-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=H/yFPuC0VIsMDoCFtboepgMYNu1d5xk/XRvCf8dQtLo=;
 b=t7JMpW77QkOboIf58qevrzI5Ns0RmFsMiUxNazjNCD09rB9GOU0KfVPlKj44GbwqIwva3fn2IaTP/i0XosoDRzMeqClK6NiQy5Zy2HbUHsshyqnLknNk73pm82J/PS4upAYs6oMIDuUbekeTvHuqUC3bvSanbmPaYTRgTcT122A=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 356b11aea9d8e88b
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RzJ9+WYUUakGiYM3W+9zSS5hMMN2A+TuoYjvtWz8koPAqLKAHkqiC5uyfS44LjIUQeZ2bRcD1z6wxoc5JkGmJBDeG5PZudEcCj7X7V0dFhOqAHBwnkgaX6ORDwOdZdzhYefZvKYXQ4sAcnatr2XmELmI+jel7OB4NtkSqODp7N1IIfCAYFZgiQ8fKQcoPYG5sQWHqH4tZTb8ROYe0qogFxD/2c19WriOGrE9Nc2sy2i9QV0YAiwo7QwWUa7KWeLY4vvO+fGEXplJ0qkYPvVMtbjvW6pTyNqIW3auXEgL65Z2dw+hDEsAM1nlXYrsrciGreGHMTHpnJPcSzyG2RRCdg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=H/yFPuC0VIsMDoCFtboepgMYNu1d5xk/XRvCf8dQtLo=;
 b=e8PfDZjXiY7lztrlMTrhAQDSp/uE9Vz1su0hZEyqdeDLz/GLQRa4VfptU9E7/ofi/kPwH4b6fW6mg3S39N/nZcA4nkVpoVsdImSjzAM8ewqQXhXpxwLwqw/DnH+ZgOQv75bWgux77s/EW0zPIFPSnRCNXVByMKv2yBGCGwL06SjeBNb/5L5AVEEzPD8mlqH+arGrxln5Quj8V8pco9L/ypY7ejjdXiddxrjhlt+LIlq4ZOUqQQfwQmWumy7Dl4VA5uL94eiWcf9KQcUO29JkF9iHQnuMVxQKnP2VwruquZYiUeGByD8rBbzFRuOSK5Ln7zY9e/JVNlxp2+xfy/RCtw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=H/yFPuC0VIsMDoCFtboepgMYNu1d5xk/XRvCf8dQtLo=;
 b=t7JMpW77QkOboIf58qevrzI5Ns0RmFsMiUxNazjNCD09rB9GOU0KfVPlKj44GbwqIwva3fn2IaTP/i0XosoDRzMeqClK6NiQy5Zy2HbUHsshyqnLknNk73pm82J/PS4upAYs6oMIDuUbekeTvHuqUC3bvSanbmPaYTRgTcT122A=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>, Penny
 Zheng <Penny.Zheng@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Wei Chen <Wei.Chen@arm.com>, Julien Grall <jgrall@amazon.com>
Subject: Re: [PATCH v6 03/13] xen/arm64: Split and move MMU-specific head.S to
 mmu/head.S
Thread-Topic: [PATCH v6 03/13] xen/arm64: Split and move MMU-specific head.S
 to mmu/head.S
Thread-Index: AQHZ2U+UcSThZeMoaki/TjWLz78rArAciCOAgAAapgA=
Date: Fri, 15 Sep 2023 23:17:01 +0000
Message-ID: <A885C053-D5F7-48E4-8761-61D4EE226A1A@arm.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-4-Henry.Wang@arm.com>
 <bfb777cb-77b1-859a-1d4d-d096632c765e@xen.org>
In-Reply-To: <bfb777cb-77b1-859a-1d4d-d096632c765e@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PR3PR08MB5785:EE_|AM7EUR03FT037:EE_|PAWPR08MB9544:EE_
X-MS-Office365-Filtering-Correlation-Id: 35ab1f4c-1bac-4476-de61-08dbb641e88e
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 XwtyW45hFoj5mJ30BUSnLkdRn95gkNqhU5fB6sXvWAAYmpcXRHsth9pnClA27x+LIybdfVvHGd9OehrC3ZyowlSU93TNBPEpkGtGqAIbB5MJ9R4Thtm2lk7AY+ENNyFxlqUQVBostlAsfhUoaGPDICOO5x00Sy9IIH1lbhF67prrz4YdTlABr12gl76Y1VLClnygGFxYCrkaVRdTWAErjG0cwincxZ8ek2d3mms0E+0q3Q8+YToCTR6ntH/KdzSf0RWIvyRNIFmkCe8ojkNu0Z6Ri+6lohTxIJSdzENo7lRvhv8c5MXEprS2MmK8M56WTYVWOT0RPmFn266SMlrXh00ZlvdK6ILExbdJ6bNCHdNOYC8iLPXjDRHVTYfAIkR6JYcRMHOKe3YxUnAEnNZvlH6PcoXMKzGqxJhQ/OMJFg3oi83lynmdoL/GCWKkubZdgyt8KG2RYfoYUL0JRGWKwyN6aEPylW3DRlVtbTQHpnqDY6zkXyXVumzUWfK5w1qOViy85Vc9ZS40svv/UX4UY4rU94tnHOlDIHz9EQEBEWsUW04XGcELWPeYQ6DsivowZa88ne0w7Ubr2mQ+rN0DRWrfezyZVESKBufe12wHhCBP2AkY+6l1I/mav8jfvTKy80ddpb6hKdlSjrpR+mCqbw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(346002)(39860400002)(136003)(366004)(451199024)(186009)(1800799009)(26005)(2616005)(5660300002)(4326008)(8676002)(8936002)(53546011)(6506007)(6486002)(6512007)(71200400001)(478600001)(122000001)(91956017)(6916009)(316002)(76116006)(41300700001)(66446008)(54906003)(64756008)(66556008)(66476007)(66946007)(38100700002)(86362001)(36756003)(33656002)(2906002)(966005)(38070700005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <00A82883E2E317458BEA1EF27A6C7910@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5785
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT037.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	a5d20f17-f95d-455b-f036-08dbb641dda2
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	LU2u/hJqpd7HzmzW/UsqR8sDqeLG+nOIiDwTmSqBSPRM+foNPXQyMn02p9mNz/R9uah8s4o0XHUoaNCP43SpCcu9taxdXTm3fnwStjCwfeCerX7hr5AMUnoTght8lHEV2owyYhc/PBC4lvzkJKCp6NZPgPxw7XS9IpRTAp4j8lNbSOiz5FMDtx1pAnq8JoDwA+Id6yBXAldhty04s+lsmvph7AYO69yH7omrlFAnrQPqbzhdI35bPy/G4V0Hvy4Lv70Fj11iG4WWiqwrOmwE12wzT4TKdcBwEmn5Bx8z06sh5duu+N1oGS3aZxDuASUkw1lUnBo6MSKXhuYSYNgkvAPtJu3fNNIPdSyOQaHnGJleKHBjsjtgq40n4Sp2vpye+gyZGn9oYnMj3S4hwPJFmducXdo9LckBFt6BBeY8Wij+xtkCmOrGFn08txPfN6Qm5alpzmgUWkQ+/rKcBLj8Ng3QEFkSKkTkuyArXvqPzKBBEayWuV7Y+A4+s5vdwgg3NDMI88HwEqTlKyyGAYTAhDeuMwq8eIjdgE87tuNwZ1Ln9MLuuL/+IGn205l70uyQP2kYaxTXLMhMVbhxlZPSQWMRSwfvlyVFsJUVtALPBWsjbr/d8+jRaIs8oTFvc3xoRrJG9QYiPNpAtratLbB3P8sblzSJhJCe55Rl8sYg7uOVGnvTOuYGlR9yf1eEnjljzoSqug8IPai+TQgVsIjJxl7uu6XeiNU7U1kdBDAFHrI=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(136003)(39860400002)(396003)(376002)(451199024)(186009)(82310400011)(1800799009)(36840700001)(46966006)(40470700004)(40460700003)(6486002)(6512007)(53546011)(2616005)(6506007)(70586007)(70206006)(336012)(966005)(107886003)(478600001)(86362001)(47076005)(36860700001)(82740400003)(81166007)(356005)(26005)(33656002)(316002)(2906002)(5660300002)(40480700001)(6862004)(8676002)(41300700001)(54906003)(8936002)(36756003)(4326008);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 23:17:19.3395
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 35ab1f4c-1bac-4476-de61-08dbb641e88e
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT037.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9544

SGkgSnVsaWVuLA0KDQo+IE9uIFNlcCAxNiwgMjAyMywgYXQgMDU6NDEsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gSGkgSGVucnksDQo+IA0KPiBJIHJlYWxpemUg
dGhhdCB0aGlzIHdhcyBhbHJlYWR5IGNvbW1pdHRlZC4gQnV0IHNvbWV0aGluZyB3ZW50IHdyb25n
IGR1cmluZyB0aGUgY29kZSBtb3ZlbWVudC4NCj4gDQo+IE9uIDI4LzA4LzIwMjMgMDI6MzIsIEhl
bnJ5IFdhbmcgd3JvdGU6DQo+PiArLyoNCj4+ICsgKiBFbmFibGUgbW0gKHR1cm4gb24gdGhlIGRh
dGEgY2FjaGUgYW5kIHRoZSBNTVUpIGZvciB0aGUgYm9vdCBDUFUuDQo+PiArICogVGhlIGZ1bmN0
aW9uIHdpbGwgcmV0dXJuIHRvIHRoZSB2aXJ0dWFsIGFkZHJlc3MgcHJvdmlkZWQgaW4gTFIgKGUu
Zy4gdGhlDQo+PiArICogcnVudGltZSBtYXBwaW5nKS4NCj4+ICsgKg0KPj4gKyAqIElucHV0czoN
Cj4+ICsgKiAgIGxyIDogVmlydHVhbCBhZGRyZXNzIHRvIHJldHVybiB0by4NCj4+ICsgKg0KPj4g
KyAqIENsb2JiZXJzIHgwIC0geDUNCj4+ICsgKi8NCj4+ICtFTlRSWShlbmFibGVfYm9vdF9jcHVf
bW0pDQo+PiArICAgICAgICBtb3YgICB4NSwgbHINCj4+ICsNCj4+ICsgICAgICAgIGJsICAgIGNy
ZWF0ZV9wYWdlX3RhYmxlcw0KPj4gKyAgICAgICAgbG9hZF9wYWRkciB4MCwgYm9vdF9wZ3RhYmxl
DQo+PiArDQo+PiArICAgICAgICBibCAgICBlbmFibGVfbW11DQo+PiArICAgICAgICBtb3YgICBs
ciwgeDUNCj4+ICsNCj4+ICsgICAgICAgIC8qDQo+PiArICAgICAgICAgKiBUaGUgTU1VIGlzIHR1
cm5lZCBvbiBhbmQgd2UgYXJlIGluIHRoZSAxOjEgbWFwcGluZy4gU3dpdGNoDQo+PiArICAgICAg
ICAgKiB0byB0aGUgcnVudGltZSBtYXBwaW5nLg0KPj4gKyAgICAgICAgICovDQo+PiArICAgICAg
ICBsZHIgICB4MCwgPTFmDQo+PiArICAgICAgICBiciAgICB4MA0KPj4gKzE6DQo+PiArICAgICAg
ICAvKg0KPj4gKyAgICAgICAgICogVGhlIDE6MSBtYXAgbWF5IGNsYXNoIHdpdGggb3RoZXIgcGFy
dHMgb2YgdGhlIFhlbiB2aXJ0dWFsIG1lbW9yeQ0KPj4gKyAgICAgICAgICogbGF5b3V0LiBBcyBp
dCBpcyBub3QgdXNlZCBhbnltb3JlLCByZW1vdmUgaXQgY29tcGxldGVseSB0bw0KPj4gKyAgICAg
ICAgICogYXZvaWQgaGF2aW5nIHRvIHdvcnJ5IGFib3V0IHJlcGxhY2luZyBleGlzdGluZyBtYXBw
aW5nDQo+PiArICAgICAgICAgKiBhZnRlcndhcmRzLiBGdW5jdGlvbiB3aWxsIHJldHVybiB0byBw
cmltYXJ5X3N3aXRjaGVkLg0KPj4gKyAgICAgICAgICovDQo+PiArICAgICAgICBiICAgICByZW1v
dmVfaWRlbnRpdHlfbWFwcGluZw0KPj4gKw0KPj4gKyAgICAgICAgLyoNCj4+ICsgICAgICAgICAq
IEJlbG93IGlzIHN1cHBvc2VkIHRvIGJlIHVucmVhY2hhYmxlIGNvZGUsIGFzICJyZXQiIGluDQo+
PiArICAgICAgICAgKiByZW1vdmVfaWRlbnRpdHlfbWFwcGluZyB3aWxsIHVzZSB0aGUgcmV0dXJu
IGFkZHJlc3MgaW4gTFIgaW4gYWR2YW5jZS4NCj4+ICsgICAgICAgICAqLw0KPj4gKyAgICAgICAg
YiAgICAgZmFpbA0KPiANCj4gVGhlICJiICAgICBmYWlsIiBkaWRuJ3QgZXhpc3QgaW4gaGVhZC5T
LiBJIGd1ZXNzIHRoaXMgd2FzIGR1ZSB0byBhIHdyb25nIHJlYmFzZT8gQ2FuIHlvdSBjaGVjayBp
ZiB0aGVyZSBpcyBzb21ldGhpbmcgZWxzZSB0aGF0IHdlbnQgbWlzc2luZz8NCg0KUGxlYXNlIGNv
cnJlY3QgbWUgaWYgSSBhbSB3cm9uZyBidXQgSSB0aGluayB0aGUg4oCcYiBmYWls4oCdIG9mIGVu
YWJsZV9ib290X2NwdV9tbSgpIGlzDQppbiB0aGUgbW11IGhlYWQuUywgc2VlIGxpbmUgMzQ4IFsx
XS4NCg0KWzFdIGh0dHBzOi8veGVuYml0cy54ZW4ub3JnL2dpdHdlYi8/cD14ZW4uZ2l0O2E9Ymxv
YjtmPXhlbi9hcmNoL2FybS9hcm02NC9tbXUvaGVhZC5TO2g9ZDcxZmRjNjlhNTMxNzgwNTAxMzg3
ZmM1YzcxN2I0YzQxYmIxYjY2YTtoYj02NzM0MzI3ZDc2YmUzOGQyMGYyODBlY2M5NjM5MmUzODVm
YmMxZDhiI2wzNDgNCg0KS2luZCByZWdhcmRzLA0KSGVucnkNCg0KDQo+IA0KPiBDaGVlcnMsDQo+
IA0KPiAtLSANCj4gSnVsaWVuIEdyYWxsDQoNCg==


From xen-devel-bounces@lists.xenproject.org Fri Sep 15 23:20:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 15 Sep 2023 23:20:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603458.940462 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhI72-0002Ge-O0; Fri, 15 Sep 2023 23:20:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603458.940462; Fri, 15 Sep 2023 23:20:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhI72-0002GX-K2; Fri, 15 Sep 2023 23:20:36 +0000
Received: by outflank-mailman (input) for mailman id 603458;
 Fri, 15 Sep 2023 23:20:34 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=X4Zp=E7=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qhI70-0002GL-Tv
 for xen-devel@lists.xenproject.org; Fri, 15 Sep 2023 23:20:34 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20621.outbound.protection.outlook.com
 [2a01:111:f400:7d00::621])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7807719e-541e-11ee-8788-cb3800f73035;
 Sat, 16 Sep 2023 01:20:34 +0200 (CEST)
Received: from AS9PR04CA0177.eurprd04.prod.outlook.com (2603:10a6:20b:530::10)
 by AM8PR08MB6386.eurprd08.prod.outlook.com (2603:10a6:20b:362::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.23; Fri, 15 Sep
 2023 23:20:21 +0000
Received: from AM7EUR03FT019.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:530:cafe::d0) by AS9PR04CA0177.outlook.office365.com
 (2603:10a6:20b:530::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.23 via Frontend
 Transport; Fri, 15 Sep 2023 23:20:21 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT019.mail.protection.outlook.com (100.127.140.245) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.21 via Frontend Transport; Fri, 15 Sep 2023 23:20:20 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Fri, 15 Sep 2023 23:20:20 +0000
Received: from 971e44eae07b.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 6C5C083E-D38D-49C0-95D6-4FD568A73DC1.1; 
 Fri, 15 Sep 2023 23:20:09 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 971e44eae07b.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 15 Sep 2023 23:20:09 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PR3PR08MB5785.eurprd08.prod.outlook.com (2603:10a6:102:89::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Fri, 15 Sep
 2023 23:20:06 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6792.021; Fri, 15 Sep 2023
 23:20:06 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7807719e-541e-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zrmbX+fTfgljkhq5vaDFhzvA5WYzGtNvjEu0InxWOho=;
 b=qgZbfqsjJf6k892wWoOqYk0FxYwMtndN0KIRMBb8tuUqiGwLN63+4nCfF9G9Hlo/ga72k/vQC3N1wBb7wC1NruzkVZBDqg5x4lFIQp52/3EE3vHAD9CLGJFE5hiFKLmha/rFeSlJPMxF1MNkVEdGOFPPlkkpHqxKeCrxuFVnVtw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 04183fec7595a983
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OBsL66fv3NZf6soeUF+lHKu/dJOQTxfQr7IYGbHbFc6Qizxvt0R97uOt89kd26YRNn7VrAc//bWTh+oBTZfDibCZuHUnuhUpPnRCgUu/AvzfMBDc6ES4//RKVigDjWRqjLzTZKWJKHYcdbMzG7NoU2gak6U0d7DD7TJAG0rQpXBm+Jl6Q1BNCLq7PKY4TAGGFW5+pq96gyee4+i7NmG8f8wzbNaweEPgmndpjmuPyXQEekxw6Uv56qELyScnugIGiGPQNel9HvijHJ5ygLU1wvs72+gvzIq16/iI8mf9HQSPD1GuR8e3HDqbi7KFHy8TN+cJ0MzrHhEdF7+s7Sqnrg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zrmbX+fTfgljkhq5vaDFhzvA5WYzGtNvjEu0InxWOho=;
 b=ef+SFEvvXjyPGZ8a0F595GlV6gRJYT1giSG6h5sYVFz+oSM8k7e+obcAR4Z5uVJ6jVAhPka5rLe0aVEPNyjfzVo1d+o05fGDpRZ83MQURjOw6ALV8f2AHCd4INM4XAdIp+OXYIHFlvvYsnS7ZT1fcKt7IIE+fOV9meK+Pm9CP/rSIUISc0ieqF5GO6H+R2Vlm8mSDS4K51F3vs8+2f9t2XRKyJoTCzDhCd1MZWMYwViHGQiY4dvz0RXJj6uXHBk57AvCYjT7G6VzaVJIxNN1i2/jlG3bhLUtH0wN9/HwVrO7faz2HdGU0MZHkdtheiiLYM5xmlluN/JC2nKASBQTIw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zrmbX+fTfgljkhq5vaDFhzvA5WYzGtNvjEu0InxWOho=;
 b=qgZbfqsjJf6k892wWoOqYk0FxYwMtndN0KIRMBb8tuUqiGwLN63+4nCfF9G9Hlo/ga72k/vQC3N1wBb7wC1NruzkVZBDqg5x4lFIQp52/3EE3vHAD9CLGJFE5hiFKLmha/rFeSlJPMxF1MNkVEdGOFPPlkkpHqxKeCrxuFVnVtw=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>, Penny
 Zheng <Penny.Zheng@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Wei Chen <Wei.Chen@arm.com>, Julien Grall <jgrall@amazon.com>
Subject: Re: [PATCH v6 03/13] xen/arm64: Split and move MMU-specific head.S to
 mmu/head.S
Thread-Topic: [PATCH v6 03/13] xen/arm64: Split and move MMU-specific head.S
 to mmu/head.S
Thread-Index: AQHZ2U+UcSThZeMoaki/TjWLz78rArAciCOAgAAapgCAAADeAA==
Date: Fri, 15 Sep 2023 23:20:06 +0000
Message-ID: <9F74E271-2F25-47B2-B0C3-73B27501DAEC@arm.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-4-Henry.Wang@arm.com>
 <bfb777cb-77b1-859a-1d4d-d096632c765e@xen.org>
 <A885C053-D5F7-48E4-8761-61D4EE226A1A@arm.com>
In-Reply-To: <A885C053-D5F7-48E4-8761-61D4EE226A1A@arm.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PR3PR08MB5785:EE_|AM7EUR03FT019:EE_|AM8PR08MB6386:EE_
X-MS-Office365-Filtering-Correlation-Id: 6f0ee9a4-def7-47bc-b651-08dbb6425475
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 OvT5NCutROHF/XCS4z6EyC0/enFz4N5xzIhmEHJ7C7FRsqq+kqBchjNYobJVr2De86Dx0fMUDjAv4ymtTZPldCpskFEknIqAJPJb85B+Qc/cIbn3QzMtUegS5a2XA7UH6TSLnAaIUgfamRHHlczTX/abIUdtlqltogAG21lXtF8Rb/PF0cULpxlEw08JY1Im/0NDz+aliwdQop086lmvKpk4e4J60U7bbwFKdM3x1CFqOfrCsuDo2sTLbM6nl9YhIZfdhzJSGV93AfLhGwr5NDbr8Szga7L0fqbejYHQSKL797EQliOODdhlAMvo95RJ/P8eN17mNo8iPcycbnJmhalXZhO5YdLxyShpDLJzIjboD04t0HRTsSJkK/01wSSceXndZzwdmLzo6hzhb1jjvTd3I9yw5kCczreN3x/f4MemscCDYm5gt6IfD76b6l3rtQ5bHkSXynkKxMSWuPlC83zqD2o+WjSEtFL/e2fCby+WNgKVRtPSUbq+/LIHlXvBuQiNBLN+8m3xa03YR/6R9QrszyGd4+ySn4+BeqTUb2mFdbhDgeIhmvC6QeHK3lKJ7vwLKiK2Du4eZGJ8lLV84IH/zDGj0vK3IkOpwZhaJJmOeaVYb2/AMA9dxaF190YOMuS0oh31o0W6pEVp0hbvUg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(346002)(39860400002)(136003)(366004)(451199024)(186009)(1800799009)(26005)(2616005)(5660300002)(4326008)(8676002)(8936002)(53546011)(6506007)(6486002)(6512007)(71200400001)(478600001)(122000001)(91956017)(6916009)(316002)(76116006)(41300700001)(66446008)(54906003)(64756008)(66556008)(66476007)(66946007)(38100700002)(86362001)(36756003)(33656002)(2906002)(966005)(38070700005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <0EC01A41E0EA0F4ABF16A7C0BD7F3616@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5785
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT019.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	1e422768-3c69-4860-b73a-08dbb6424c60
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	i1GW+XYb0Ioad7YLhOKNYlV1VywUNl2J2HTi6YVZWYS+99sQWNWjuhhElo1FqM//nVF7VGSDYlFk3X0qBExP0G1rBVcXeyabiYDKj/JEBhL/On/mNEqp4RZYybuqoqpt8kDNTsWfjCqGTxIMUTvdOZ/t28ISL93s08GXZrqlHTWNAgNPrCJIaaoy5uPzohj5MUkSVlKzsWm3uuY+D1T5pNKCi8lh95feDTON7E42N1e7cwDgc2f7WsKM7vqps4pxXAtwHebudrKw0jOYB5ED63li2/3J+rSInIJ4P5U5AFTTejVV1VqQOdvrCDsg6xQsNA4xBXRWsaT3Xz2Ge7yAHcv0mlhahsqhW3Fs7pbkW8RUJ1FoYzcccFMd7LwDj7sASHojfJajKfNyAxD22mDcLYzxStRY7BE+/7UJAvK9nyg0eDgd/1Gum74wAovRnti7sTbuBV4C6Rt9e1zSawamgEkez0pswDz8GYiERg23aGczMH/HM2dy346yB8QJyqf71CkzGjwGLeV+tEHaFK++f1ZBCGohk+0kMlCtd8OwN835PvaNKeISr36eWETcip6+sEJDtV+Z9LexxcSDhoAxPSoWHoB+PzVy5UrkHnN50TnEvcHyq7fXbEL/OjFUYGS/snzvXvLuvA8f0MiNiAC68pzEb64Wh63mmeFX109NUPFTFrQW9f98e6Sr4J9ykD0l+2btndLDu2AYgZCsM0O2I1rNEF6t9UwrlgXIcYhm+S8=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(376002)(396003)(136003)(346002)(82310400011)(186009)(451199024)(1800799009)(46966006)(36840700001)(40470700004)(6486002)(6506007)(53546011)(6512007)(966005)(478600001)(4326008)(26005)(107886003)(2906002)(47076005)(336012)(70206006)(70586007)(316002)(54906003)(8676002)(5660300002)(41300700001)(8936002)(40460700003)(6862004)(36756003)(40480700001)(36860700001)(2616005)(33656002)(81166007)(86362001)(82740400003)(356005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 23:20:20.3685
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6f0ee9a4-def7-47bc-b651-08dbb6425475
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT019.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6386

SGksDQoNCj4gT24gU2VwIDE2LCAyMDIzLCBhdCAwNzoxNywgSGVucnkgV2FuZyA8SGVucnkuV2Fu
Z0Bhcm0uY29tPiB3cm90ZToNCj4gDQo+IEhpIEp1bGllbiwNCj4gDQo+PiBPbiBTZXAgMTYsIDIw
MjMsIGF0IDA1OjQxLCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4ub3JnPiB3cm90ZToNCj4+IA0K
Pj4gSGkgSGVucnksDQo+PiANCj4+IEkgcmVhbGl6ZSB0aGF0IHRoaXMgd2FzIGFscmVhZHkgY29t
bWl0dGVkLiBCdXQgc29tZXRoaW5nIHdlbnQgd3JvbmcgZHVyaW5nIHRoZSBjb2RlIG1vdmVtZW50
Lg0KPj4gDQo+PiBPbiAyOC8wOC8yMDIzIDAyOjMyLCBIZW5yeSBXYW5nIHdyb3RlOg0KPj4+ICsv
Kg0KPj4+ICsgKiBFbmFibGUgbW0gKHR1cm4gb24gdGhlIGRhdGEgY2FjaGUgYW5kIHRoZSBNTVUp
IGZvciB0aGUgYm9vdCBDUFUuDQo+Pj4gKyAqIFRoZSBmdW5jdGlvbiB3aWxsIHJldHVybiB0byB0
aGUgdmlydHVhbCBhZGRyZXNzIHByb3ZpZGVkIGluIExSIChlLmcuIHRoZQ0KPj4+ICsgKiBydW50
aW1lIG1hcHBpbmcpLg0KPj4+ICsgKg0KPj4+ICsgKiBJbnB1dHM6DQo+Pj4gKyAqICAgbHIgOiBW
aXJ0dWFsIGFkZHJlc3MgdG8gcmV0dXJuIHRvLg0KPj4+ICsgKg0KPj4+ICsgKiBDbG9iYmVycyB4
MCAtIHg1DQo+Pj4gKyAqLw0KPj4+ICtFTlRSWShlbmFibGVfYm9vdF9jcHVfbW0pDQo+Pj4gKyAg
ICAgICAgbW92ICAgeDUsIGxyDQo+Pj4gKw0KPj4+ICsgICAgICAgIGJsICAgIGNyZWF0ZV9wYWdl
X3RhYmxlcw0KPj4+ICsgICAgICAgIGxvYWRfcGFkZHIgeDAsIGJvb3RfcGd0YWJsZQ0KPj4+ICsN
Cj4+PiArICAgICAgICBibCAgICBlbmFibGVfbW11DQo+Pj4gKyAgICAgICAgbW92ICAgbHIsIHg1
DQo+Pj4gKw0KPj4+ICsgICAgICAgIC8qDQo+Pj4gKyAgICAgICAgICogVGhlIE1NVSBpcyB0dXJu
ZWQgb24gYW5kIHdlIGFyZSBpbiB0aGUgMToxIG1hcHBpbmcuIFN3aXRjaA0KPj4+ICsgICAgICAg
ICAqIHRvIHRoZSBydW50aW1lIG1hcHBpbmcuDQo+Pj4gKyAgICAgICAgICovDQo+Pj4gKyAgICAg
ICAgbGRyICAgeDAsID0xZg0KPj4+ICsgICAgICAgIGJyICAgIHgwDQo+Pj4gKzE6DQo+Pj4gKyAg
ICAgICAgLyoNCj4+PiArICAgICAgICAgKiBUaGUgMToxIG1hcCBtYXkgY2xhc2ggd2l0aCBvdGhl
ciBwYXJ0cyBvZiB0aGUgWGVuIHZpcnR1YWwgbWVtb3J5DQo+Pj4gKyAgICAgICAgICogbGF5b3V0
LiBBcyBpdCBpcyBub3QgdXNlZCBhbnltb3JlLCByZW1vdmUgaXQgY29tcGxldGVseSB0bw0KPj4+
ICsgICAgICAgICAqIGF2b2lkIGhhdmluZyB0byB3b3JyeSBhYm91dCByZXBsYWNpbmcgZXhpc3Rp
bmcgbWFwcGluZw0KPj4+ICsgICAgICAgICAqIGFmdGVyd2FyZHMuIEZ1bmN0aW9uIHdpbGwgcmV0
dXJuIHRvIHByaW1hcnlfc3dpdGNoZWQuDQo+Pj4gKyAgICAgICAgICovDQo+Pj4gKyAgICAgICAg
YiAgICAgcmVtb3ZlX2lkZW50aXR5X21hcHBpbmcNCj4+PiArDQo+Pj4gKyAgICAgICAgLyoNCj4+
PiArICAgICAgICAgKiBCZWxvdyBpcyBzdXBwb3NlZCB0byBiZSB1bnJlYWNoYWJsZSBjb2RlLCBh
cyAicmV0IiBpbg0KPj4+ICsgICAgICAgICAqIHJlbW92ZV9pZGVudGl0eV9tYXBwaW5nIHdpbGwg
dXNlIHRoZSByZXR1cm4gYWRkcmVzcyBpbiBMUiBpbiBhZHZhbmNlLg0KPj4+ICsgICAgICAgICAq
Lw0KPj4+ICsgICAgICAgIGIgICAgIGZhaWwNCj4+IA0KPj4gVGhlICJiICAgICBmYWlsIiBkaWRu
J3QgZXhpc3QgaW4gaGVhZC5TLiBJIGd1ZXNzIHRoaXMgd2FzIGR1ZSB0byBhIHdyb25nIHJlYmFz
ZT8gQ2FuIHlvdSBjaGVjayBpZiB0aGVyZSBpcyBzb21ldGhpbmcgZWxzZSB0aGF0IHdlbnQgbWlz
c2luZz8NCj4gDQo+IFBsZWFzZSBjb3JyZWN0IG1lIGlmIEkgYW0gd3JvbmcgYnV0IEkgdGhpbmsg
dGhlIOKAnGIgZmFpbOKAnSBvZiBlbmFibGVfYm9vdF9jcHVfbW0oKSBpcw0KPiBpbiB0aGUgbW11
IGhlYWQuUywgc2VlIGxpbmUgMzQ4IFsxXS4NCj4gDQo+IFsxXSBodHRwczovL3hlbmJpdHMueGVu
Lm9yZy9naXR3ZWIvP3A9eGVuLmdpdDthPWJsb2I7Zj14ZW4vYXJjaC9hcm0vYXJtNjQvbW11L2hl
YWQuUztoPWQ3MWZkYzY5YTUzMTc4MDUwMTM4N2ZjNWM3MTdiNGM0MWJiMWI2NmE7aGI9NjczNDMy
N2Q3NmJlMzhkMjBmMjgwZWNjOTYzOTJlMzg1ZmJjMWQ4YiNsMzQ4DQoNCk9oIEkgcmVhbGl6ZWQg
d2UgYWdyZWVkIHRvIHJlbW92ZSB0aGlzIGxpbmUgYXMgaXQgaXMgdW5yZWFjaGFibGUsIEkgd2ls
bCBzZW5kIGEgcGF0Y2guDQpTb3JyeSBhYm91dCBpdC4NCg0KS2luZCByZWdhcmRzLA0KSGVucnkN
Cg0KDQo+IA0KPiBLaW5kIHJlZ2FyZHMsDQo+IEhlbnJ5DQo+IA0KPiANCj4+IA0KPj4gQ2hlZXJz
LA0KPj4gDQo+PiAtLSANCj4+IEp1bGllbiBHcmFsbA0KPiANCg0K


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 00:11:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 00:11:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603466.940472 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhIuD-0003Rs-RT; Sat, 16 Sep 2023 00:11:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603466.940472; Sat, 16 Sep 2023 00:11:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhIuD-0003Rl-O2; Sat, 16 Sep 2023 00:11:25 +0000
Received: by outflank-mailman (input) for mailman id 603466;
 Sat, 16 Sep 2023 00:11:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aGgT=FA=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qhIuC-0003Rf-DC
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 00:11:24 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20606.outbound.protection.outlook.com
 [2a01:111:f400:fe13::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 91e45008-5425-11ee-8788-cb3800f73035;
 Sat, 16 Sep 2023 02:11:23 +0200 (CEST)
Received: from AS9PR06CA0430.eurprd06.prod.outlook.com (2603:10a6:20b:49e::21)
 by PAVPR08MB9233.eurprd08.prod.outlook.com (2603:10a6:102:30a::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.19; Sat, 16 Sep
 2023 00:11:16 +0000
Received: from AM7EUR03FT031.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:49e:cafe::90) by AS9PR06CA0430.outlook.office365.com
 (2603:10a6:20b:49e::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.23 via Frontend
 Transport; Sat, 16 Sep 2023 00:11:16 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT031.mail.protection.outlook.com (100.127.140.84) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6813.12 via Frontend Transport; Sat, 16 Sep 2023 00:11:15 +0000
Received: ("Tessian outbound d084e965c4eb:v175");
 Sat, 16 Sep 2023 00:11:15 +0000
Received: from 0103d60c841a.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 66F1C8F4-D853-4DA4-8803-3D6DDD1AC75E.1; 
 Sat, 16 Sep 2023 00:11:08 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0103d60c841a.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Sat, 16 Sep 2023 00:11:08 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS2PR08MB8696.eurprd08.prod.outlook.com (2603:10a6:20b:55f::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Sat, 16 Sep
 2023 00:11:07 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6792.021; Sat, 16 Sep 2023
 00:11:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 91e45008-5425-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=sM67iHv0IKbrWuZH9RGW5LwXFiTmFPB3F3UtyiNqnbY=;
 b=pM0g1CncXPcTR5f/vMlS7Z0m/3xj4FAGQluQzFGPtwhMLT/KMi7jBx3M97M1KSrybzqFjcPF3CgVCdliG5HLAbhHAB7zy5aS5qK3S1ifK22wyXJ/6HEPs+4AwBXFaLRjECUuspaFf+ExSvHEVp6+mZLEPuwTGDKVSveSpawO93M=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 90f146efb61cd68f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UYYmju2HrmdrnGSmA1CUlwIoxDHFapCQIYfrBPnGYSq1FYAPLvsxKHDrEXftlduqv7SuYtpOp7xuDR1jEFe/VkIvJZDq5M2yQKCUakVsD5+B1/0UFxDsy+6Jrg6+YsnRm0Peq+nX72kEXKw5ke7HLOkeMChmABHyC0RB20wapFFCmfZ2MASfzswFz2XoWb7c+3LiNiidfBK6wuFTLKcwmJcaRiwAtmaomOZH1D/vf/RIzryZhOZLQLqKtk2VXvzdMWC6L7xTAlzWl1PlBMyncQAhHQ/IXdm8fwBZZGg8m82OOQOt5wCz8kbDQnBLQrz055eE8Z5tuU8Aqe7GHK30cw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=sM67iHv0IKbrWuZH9RGW5LwXFiTmFPB3F3UtyiNqnbY=;
 b=R8cKIVzgiS4M77IWAlDyi3DWS8IK17RxgSRqD8YFWzxEGWyTKGBhB8qMSrraQ3Ul4sKdIx0SYi8KKyxlKU9dIrvP+vaIpzsRoGTVQwwQeL5MHxmbCdlRsD+GJLKO8FBuGw6IfyZJ2mGQp7pQSfm7b10QsOjWEufw+QpZVeKwk141QKb5EeclnLW5ACLkA7fzIvXZbE30o8c+HLMOCHRh9Zzp8Pz4WeDX4Yv0MUePDWY9tfq6eRu7z3NPLVWWVEUt5bdnd+oYHAQxGEb+POtfignTXez/ytYSdC/gKTxrEvTXu5gVug0iQw9f4qRcNx9j/S8Ctxoi6RkF4efpdxZsiw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=sM67iHv0IKbrWuZH9RGW5LwXFiTmFPB3F3UtyiNqnbY=;
 b=pM0g1CncXPcTR5f/vMlS7Z0m/3xj4FAGQluQzFGPtwhMLT/KMi7jBx3M97M1KSrybzqFjcPF3CgVCdliG5HLAbhHAB7zy5aS5qK3S1ifK22wyXJ/6HEPs+4AwBXFaLRjECUuspaFf+ExSvHEVp6+mZLEPuwTGDKVSveSpawO93M=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Julien Grall
	<jgrall@amazon.com>, Wei Liu <wl@xen.org>, Anthony PERARD
	<anthony.perard@citrix.com>, Juergen Gross <jgross@suse.com>
Subject: Re: [PATCH for-4.18 v2] tools/light: Revoke permissions when a PCI
 detach for HVM domain
Thread-Topic: [PATCH for-4.18 v2] tools/light: Revoke permissions when a PCI
 detach for HVM domain
Thread-Index: AQHZ59N2VPLX7/ND60C+IG0RkhZBdLAclN0A
Date: Sat, 16 Sep 2023 00:11:04 +0000
Message-ID: <B61F59E5-C5E5-482E-8F03-3472F976ACDC@arm.com>
References: <20230915125204.22719-1-julien@xen.org>
In-Reply-To: <20230915125204.22719-1-julien@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS2PR08MB8696:EE_|AM7EUR03FT031:EE_|PAVPR08MB9233:EE_
X-MS-Office365-Filtering-Correlation-Id: 49baf7cf-e8f1-4500-0c4e-08dbb6497195
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 2/shq51WKVZEMF/ZeimaTCUMX1qPZnkpfszsWJBKLShZNXq0MOFAUs/TYBmDe4C2NzUb/xpVpb/S52isaIiHfGyaVrDSmbWbKvAu6z2bGs4C9+r7D/m0dO1afZambj5zasEyb8kpZQ4xNv/gP+gF8v2yAEPCb4vBbkdjmUS3u4FAmcndzygsf77X2jUxaJ991i9gwDGawaDF+FyWlJfmV9/DzcIIiIma88yDvfhm6MTV3lEB0H1d9ngB6wvDSCRpE8Y1G/rZwTobEG+3aw3S35FuIzqwnWtFauZ3XHTuMwF9JOr83MIJ5hd8fqFAcUTwCim14KzyctjUhq5/F29yaiWig55/5vTdx+x6HWT/rhEiKB0pvDMtlNouf0UeLQh5Blu8AwjF5ORBU5/dkx85an3WFcB+Qx+L3A6RdnZ2c7KfQAlpQFl23nwvu4+/QsIaUFqQsPOA+MNIO9WxX29Tz3Jx2RPtthvRzM2hk9lHW9HvKpq8cPBrOuYxc740ZBdOekVO9XOpLy8rCHylrY7yRmJ/R97a9Ux1Ch6y8VoFOeaKKIq6iDbJCywpt1exP/ATnSBHte8z+K4atgYV9bUPVym/rm9z3VjeTK5zztkfYJnsb8tTMTpSfirDIENV6GNimkrJwUt1Khajamm1k2hMfg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(376002)(39860400002)(366004)(346002)(396003)(451199024)(1800799009)(186009)(66446008)(2906002)(38100700002)(122000001)(38070700005)(2616005)(26005)(86362001)(4326008)(33656002)(8936002)(8676002)(66476007)(41300700001)(76116006)(36756003)(71200400001)(5660300002)(316002)(54906003)(6916009)(64756008)(66946007)(66556008)(91956017)(83380400001)(6512007)(6506007)(6486002)(53546011)(6666004)(478600001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <D2EDD15D71BACB45ACB2B0FD2545EBE9@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8696
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT031.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	7a996fec-1530-4d1e-e83b-08dbb6496b0f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZnWeMNE9AOcrnUPLCS0AwOeyqp5jmvdy51//mFYwe5iVaEJxAcGDKUmagUbCmyGhw/A5/y839Z64piSawI69DXmm3G4icmZKasE9LZk8nuNRtZmf6OSTLH3LeNHIhkMK6omZXwkMWaoF8xGJvpeVTQtnHtrKB313uGp+/9wSlOszK4rbpP886RaIUj0RBtMLfPiHgrNgVcnIs2dz9U7wNy8hzXqakWB/ek7MsP5AZVPmWlsZH3JE/MpZu9NQojZcSRkWh5xJHfyQX61QkQBXPzMu4KpZaSIFZ1ZpDG0UC1C3XTSUJEKCzynQ662ecmvulYPmedWJEAOQ4v+j1YmXNilDe2yvb87eFOJVnzYTAvLlojlrAqR9hdBrm8E1VBKL6uqa5pQoOlPsTrb5+PNKG15vuiMLPIh+JtcnW9zSKIVgs32XE3anRf0PM8uNOVHYvZHJZJ0lHqFiiCIpqbdvay5AHr5052SsoTmyYsukm4zaY/02zf4xJdcNaQWgY7pxx4ub1/a/AW5Fv5N2cpzDthwInGHnskz+nTQaD9owShXuhIUchbCE0EDEyiNcr21o55s3pExmGU9LSxElK/aDwW+uoxvDZtMUEYCLXwd1o9zM0LlDWk7LNonqmzU/NF7uJe5nVch0Ke8KhbIRjyuH9XA0XfsUet3jGjHZuXZyEMQlCS08UIkLkaO0ykDE+TSRBqLaBmOewgSWYVQr5BJGJX1h9hKFkfonYVAdRbpBE1ROxt3W9Th7IDBRAI/3jq0c
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(376002)(396003)(136003)(186009)(1800799009)(82310400011)(451199024)(40470700004)(36840700001)(46966006)(316002)(336012)(54906003)(70206006)(83380400001)(26005)(70586007)(82740400003)(36756003)(107886003)(6506007)(53546011)(33656002)(6666004)(6486002)(81166007)(40480700001)(356005)(6512007)(36860700001)(47076005)(86362001)(40460700003)(478600001)(2616005)(8676002)(6862004)(4326008)(2906002)(41300700001)(8936002)(5660300002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Sep 2023 00:11:15.6893
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 49baf7cf-e8f1-4500-0c4e-08dbb6497195
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT031.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9233

Hi Julien,

> On Sep 15, 2023, at 20:52, Julien Grall <julien@xen.org> wrote:
>=20
> From: Julien Grall <jgrall@amazon.com>
>=20
> Currently, libxl will grant IOMEM, I/O port and IRQ permissions when
> a PCI is attached (see pci_add_dm_done()) for all domain types. However,
> the permissions are only revoked for non-HVM domain (see do_pci_remove())=
.
>=20
> This means that HVM domains will be left with extra permissions. While
> this look bad on the paper, the IRQ permissions should be revoked
> when the Device Model call xc_physdev_unmap_pirq() and such domain
> cannot directly mapped I/O port and IOMEM regions. Instead, this has to
> be done by a Device Model.
>=20
> The Device Model can only run in dom0 or PV stubdomain (upstream libxl
> doesn't have support for HVM/PVH stubdomain).
>=20
> For PV/PVH stubdomain, the permission are properly revoked, so there is
> no security concern.
>=20
> This leaves dom0. There are two cases:
>  1) Privileged: Anyone gaining access to the Device Model would already
>     have large control on the host.
>  2) Deprivileged: PCI passthrough require PHYSDEV operations which
>     are not accessible when the Device Model is restricted.
>=20
> So overall, it is believed that the extra permissions cannot be exploited=
.
>=20
> Rework the code so the permissions are all removed for HVM domains.
> This needs to happen after the QEMU has detached the device. So
> the revocation is now moved to pci_remove_detached().
>=20
> Also add a comment on top of the error message when the PIRQ cannot
> be unbind to explain this could be a spurious error as QEMU may have
> already done it.
>=20
> Signed-off-by: Julien Grall <jgrall@amazon.com>

As in discussion in v1, it is agreed that this patch should be included in
4.18, although technically my release-ack tag should be effective after
code freeze, I am still providing the tag to avoid possible confusion:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry



From xen-devel-bounces@lists.xenproject.org Sat Sep 16 00:27:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 00:27:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603474.940482 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhJ96-0005xd-5L; Sat, 16 Sep 2023 00:26:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603474.940482; Sat, 16 Sep 2023 00:26:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhJ96-0005xW-2E; Sat, 16 Sep 2023 00:26:48 +0000
Received: by outflank-mailman (input) for mailman id 603474;
 Sat, 16 Sep 2023 00:26:47 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhJ95-0005xM-3d; Sat, 16 Sep 2023 00:26:47 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhJ95-0004wt-0f; Sat, 16 Sep 2023 00:26:47 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhJ94-0000ZJ-Ge; Sat, 16 Sep 2023 00:26:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qhJ94-0006mk-G2; Sat, 16 Sep 2023 00:26:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ef0Yu4klQqmthld79Xrth71sjwNVbt4UlasBMhB9LO8=; b=Cn3aDZtSISUT1i2f8mzPkw+DmB
	xlMtFYNFSZsQtkqO3IUT7Rm5SSFmGl7QTqykdQxhG+CgkxOLpY8MVyjpqWcCVxTy4pDJC1Fxj+n+Z
	UlFXXnukm7VyT86w0DnKf92Qu6Qi7LdzKSJ+G16qs5OdzD8eRvOGNCA5y3hvp0HNl5Fs=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183011-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183011: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=290f82375d828ef93f831a5ef028f1283aa1ea47
X-Osstest-Versions-That:
    xen=b5a601093d1f9d5e96eb74b692f1b6252a2598a2
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 16 Sep 2023 00:26:46 +0000

flight 183011 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183011/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  290f82375d828ef93f831a5ef028f1283aa1ea47
baseline version:
 xen                  b5a601093d1f9d5e96eb74b692f1b6252a2598a2

Last test of basis   183006  2023-09-15 02:00:28 Z    0 days
Testing same since   183011  2023-09-15 22:01:58 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@amd.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   b5a601093d..290f82375d  290f82375d828ef93f831a5ef028f1283aa1ea47 -> smoke


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 03:22:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 03:22:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603484.940496 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhLtB-0001mG-7X; Sat, 16 Sep 2023 03:22:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603484.940496; Sat, 16 Sep 2023 03:22:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhLtB-0001m7-2R; Sat, 16 Sep 2023 03:22:33 +0000
Received: by outflank-mailman (input) for mailman id 603484;
 Sat, 16 Sep 2023 03:22:31 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhLt9-0001ls-5P; Sat, 16 Sep 2023 03:22:31 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhLt9-00082l-3D; Sat, 16 Sep 2023 03:22:31 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhLt8-00078r-Fs; Sat, 16 Sep 2023 03:22:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qhLt8-0006pt-Ev; Sat, 16 Sep 2023 03:22:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=cn0VEs+/FT5t7sUl7yT+pHh/u93TV+ijOuchGAFIyR8=; b=sV0JRZa7YkcslLzYpf7Jww1Lba
	GzNAuTejiiv/CGDBxWgCWjCjNRz47V3ayMxdZASjngkLTk0oxl8w/CD9zwb29iGc9+nvcBLfj3U4b
	ahsZ6u/sppd/cs4xMVaH1whc9jYZXEhLtVAgCkxk7G4ih2iVsEHUyTB+S8h5BIrBQduU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183009-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183009: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b5a601093d1f9d5e96eb74b692f1b6252a2598a2
X-Osstest-Versions-That:
    xen=6aa25c32180ab59081c73bae4c568367d9133a1f
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 16 Sep 2023 03:22:30 +0000

flight 183009 xen-unstable real [real]
flight 183012 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183009/
http://logs.test-lab.xenproject.org/osstest/logs/183012/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail pass in 183012-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop  fail in 183012 like 183005
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183005
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183005
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183005
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183005
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183005
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183005
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183005
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183005
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183005
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183005
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183005
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  b5a601093d1f9d5e96eb74b692f1b6252a2598a2
baseline version:
 xen                  6aa25c32180ab59081c73bae4c568367d9133a1f

Last test of basis   183005  2023-09-15 01:53:36 Z    1 days
Testing same since   183009  2023-09-15 13:10:21 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Stefano Stabellini <stefano.stabellini@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   6aa25c3218..b5a601093d  b5a601093d1f9d5e96eb74b692f1b6252a2598a2 -> master


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 04:07:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 04:07:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603494.940506 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhMaL-0006yT-If; Sat, 16 Sep 2023 04:07:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603494.940506; Sat, 16 Sep 2023 04:07:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhMaL-0006yM-EZ; Sat, 16 Sep 2023 04:07:09 +0000
Received: by outflank-mailman (input) for mailman id 603494;
 Sat, 16 Sep 2023 04:07:07 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aGgT=FA=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qhMaJ-0006yF-KI
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 04:07:07 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 7f258f56-5446-11ee-8788-cb3800f73035;
 Sat, 16 Sep 2023 06:07:05 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 268731FB;
 Fri, 15 Sep 2023 21:07:42 -0700 (PDT)
Received: from a015966.shanghai.arm.com (a015966.shanghai.arm.com
 [10.169.190.5])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 1D91F3F67D;
 Fri, 15 Sep 2023 21:07:01 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7f258f56-5446-11ee-8788-cb3800f73035
From: Henry Wang <Henry.Wang@arm.com>
To: xen-devel@lists.xenproject.org
Cc: Henry Wang <Henry.Wang@arm.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Wei Chen <wei.chen@arm.com>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Julien Grall <jgrall@amazon.com>
Subject: [PATCH] xen/arm64: head.S: Fix wrong enable_boot_cpu_mm() code movement
Date: Sat, 16 Sep 2023 12:06:49 +0800
Message-Id: <20230916040649.1232558-1-Henry.Wang@arm.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Some addressed comments on enable_boot_cpu_mm() were reintroduced
back during the code movement from arm64/head.S to arm64/mmu/head.S.
We should drop the unreachable code, move the 'mov lr, x5' closer to
'b remove_identity_mapping' so it is clearer that it will return,
and update the in-code comment accordingly.

Fixes: 6734327d76be ("xen/arm64: Split and move MMU-specific head.S to mmu/head.S")
Reported-by: Julien Grall <jgrall@amazon.com>
Signed-off-by: Henry Wang <Henry.Wang@arm.com>
---
 xen/arch/arm/arm64/mmu/head.S | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/xen/arch/arm/arm64/mmu/head.S b/xen/arch/arm/arm64/mmu/head.S
index a5271e3880..88075ef083 100644
--- a/xen/arch/arm/arm64/mmu/head.S
+++ b/xen/arch/arm/arm64/mmu/head.S
@@ -329,7 +329,6 @@ ENTRY(enable_boot_cpu_mm)
         load_paddr x0, boot_pgtable
 
         bl    enable_mmu
-        mov   lr, x5
 
         /*
          * The MMU is turned on and we are in the 1:1 mapping. Switch
@@ -338,19 +337,15 @@ ENTRY(enable_boot_cpu_mm)
         ldr   x0, =1f
         br    x0
 1:
+        mov   lr, x5
         /*
          * The 1:1 map may clash with other parts of the Xen virtual memory
          * layout. As it is not used anymore, remove it completely to
          * avoid having to worry about replacing existing mapping
-         * afterwards. Function will return to primary_switched.
+         * afterwards. Function will return to the virtual address requested
+         * by the caller.
          */
         b     remove_identity_mapping
-
-        /*
-         * Below is supposed to be unreachable code, as "ret" in
-         * remove_identity_mapping will use the return address in LR in advance.
-         */
-        b     fail
 ENDPROC(enable_boot_cpu_mm)
 
 /*
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 16 04:15:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 04:15:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603503.940516 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhMii-00006H-Gm; Sat, 16 Sep 2023 04:15:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603503.940516; Sat, 16 Sep 2023 04:15:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhMii-00006A-Dn; Sat, 16 Sep 2023 04:15:48 +0000
Received: by outflank-mailman (input) for mailman id 603503;
 Sat, 16 Sep 2023 04:15:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aGgT=FA=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qhMih-000064-DO
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 04:15:47 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20606.outbound.protection.outlook.com
 [2a01:111:f400:7d00::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b4cd2c4a-5447-11ee-8788-cb3800f73035;
 Sat, 16 Sep 2023 06:15:45 +0200 (CEST)
Received: from DB8PR03CA0035.eurprd03.prod.outlook.com (2603:10a6:10:be::48)
 by AM8PR08MB5795.eurprd08.prod.outlook.com (2603:10a6:20b:1df::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.23; Sat, 16 Sep
 2023 04:15:39 +0000
Received: from DBAEUR03FT054.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:be:cafe::a0) by DB8PR03CA0035.outlook.office365.com
 (2603:10a6:10:be::48) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.23 via Frontend
 Transport; Sat, 16 Sep 2023 04:15:39 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT054.mail.protection.outlook.com (100.127.142.218) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6813.11 via Frontend Transport; Sat, 16 Sep 2023 04:15:39 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Sat, 16 Sep 2023 04:15:39 +0000
Received: from a35a188493b5.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B318679C-A309-4F9E-BB5B-D31D57447ABD.1; 
 Sat, 16 Sep 2023 04:15:32 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a35a188493b5.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Sat, 16 Sep 2023 04:15:32 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS4PR08MB8120.eurprd08.prod.outlook.com (2603:10a6:20b:58c::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Sat, 16 Sep
 2023 04:15:26 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::7083:22dc:6b5f:5965%7]) with mapi id 15.20.6792.021; Sat, 16 Sep 2023
 04:15:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b4cd2c4a-5447-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=naq6YlmwOdh747dPnMEkJt9bEda8CcSEllIubYpZpqY=;
 b=wHrF5/2LUEj39sxkXX+TqZZFHBzb7Sj4BwKlib7Lqz/8BDFVIvNJf/awShKgQNL8tEMO/tnOtLSmPejsC29p4IxBv4D19C8O53uKUcy/CNZ1tR6M3+M2fNzF6n1wVscbOVTRxdIcXXkLEyqtdx1ZhiVrG4gDKO5jfUi49fF+ujg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: b0274883478cda44
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CH7v9QxVkind1ruI6AGIDBbSdwtbeg+4DnhA2R0H7pqimGStHZFqCk4wNc+tYmcXNq0KsOSOhstXErYY2MhSNvwipaGMM7gDKBkFDkYo7ZxxuSqhZ5rjsiDlmNQkjTmXV1AA8ntJjk6DL2OsuOvKjSV3Sjqcn72Bkk7H0OjNwUedcQdXxmgoEyj80tGEJLICwxxxkp1L23r5nzEJ6/n9dO4oc0HONrqb47MQjJzTcoIefrnX53NfsvdQbaghEIQt4xK6Grug+kA7kCXo5diYTpsTqc5aS1v+I3wF55MYpVA75HHjgsn2CjhXKoLFBAQNvIu96mOt2Wi2lP+ODRuaZQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=naq6YlmwOdh747dPnMEkJt9bEda8CcSEllIubYpZpqY=;
 b=PDUHUz9HnJiMwZyqVWdO5bErgMXOK5VIKmhm9duyYS9tBBlypkMQYDiiKl34nfs6LMntVuaLcHr73E3Iglfx5OyLFIvJyekkcHpTEPTRGt/ooDZdKYmt0CQi7VsqUgkQCIQSqaxX4j96Q02NwefsLQrBc4bnvGMtiJEoX+bqRPJrlLuCM3PlKVYDV+roVPXts64RLHlO+hzgo/eq8MFHKIC980MyaX0IXMaa4z+14zoJEoY3vSR0NqgSafhExt1L/EG39p7iFkVJ69phZ2wv7lOoDTPjYRrAQK+HYU4sLVZlfO5u/NefVjdeqOjK4/sKkdY5M/Avj+ITDbhOS5F4kA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=naq6YlmwOdh747dPnMEkJt9bEda8CcSEllIubYpZpqY=;
 b=wHrF5/2LUEj39sxkXX+TqZZFHBzb7Sj4BwKlib7Lqz/8BDFVIvNJf/awShKgQNL8tEMO/tnOtLSmPejsC29p4IxBv4D19C8O53uKUcy/CNZ1tR6M3+M2fNzF6n1wVscbOVTRxdIcXXkLEyqtdx1ZhiVrG4gDKO5jfUi49fF+ujg=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>, Wei
 Chen <Wei.Chen@arm.com>, Penny Zheng <Penny.Zheng@arm.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v6 08/13] xen/arm: Fold mmu_init_secondary_cpu() to head.S
Thread-Topic: [PATCH v6 08/13] xen/arm: Fold mmu_init_secondary_cpu() to
 head.S
Thread-Index: AQHZ2U+hoB0xrFr/oU+WCBP7wHF2i7AcjQCAgABpJ4A=
Date: Sat, 16 Sep 2023 04:15:24 +0000
Message-ID: <E322EB66-C914-4989-A25B-121D41BFC9C5@arm.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-9-Henry.Wang@arm.com>
 <4d7a9849-8990-8ddd-3531-93f4e2e262b1@xen.org>
In-Reply-To: <4d7a9849-8990-8ddd-3531-93f4e2e262b1@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS4PR08MB8120:EE_|DBAEUR03FT054:EE_|AM8PR08MB5795:EE_
X-MS-Office365-Filtering-Correlation-Id: 9ead5007-3650-4214-9460-08dbb66b95a8
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 fmfl4fpHPeroqTZe4sx8XTi/AsB59GYpD76WyoGpmUb3p0fk1gEGXwkYU2Jql5C+b3ROd5dViEe153JdLvm33kWcvWUOuuZGUP8hKedqIg5YZfbjK/JINYP4Nxcuh1ft/3ZeEx+c5pzTaVX2F7cRpmnYDcNiU+WUoOo30HX2LZRK91Ae7wHJ3NzDxLXbHmkX6se/UNYJeqdSAF4Qk9ofvWfthk5i+aAzROVX3UyCSQALi8bSjVkcxPUBS4RUexUEaY5nRJGEWaabb+4Qe9z+EIkZjrx+yGDcibB+7lWlMJuXc266eAZCUtexYmlo9Pv4JQUzObtK9pfaDC2nBKF1ICTSdjqjuiawynj2Og9Qp1R+uXCm+G5rLqmKx2U9rgmPn44/jykwleGl8CSe8YHP8RAy1fE8IFC13OEpWlNVDSAkUEoz3lLoyhc9XRV0GmTzXeNG7IEq/dM4aY3iw4pHQhnjHwBcrfi3bx+5Tta5vBonpaEwDN0LSFrJaTgQlosf5EcPAMMOuYXwVYfhvZ4j4XCJSOwDyVgGUVvfx1BowZrpHAWwJmzVqi9uYz26JSYW2i85Y/f9Fn/T6eEZBFiMqlLv0zksA6owT9w2CakoCnJ7fVeDXFd1S2x5HMSpJ/E0S3j2pWUhoP64p6HDjw764g==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(346002)(396003)(136003)(376002)(186009)(451199024)(1800799009)(316002)(54906003)(64756008)(76116006)(66446008)(66476007)(66556008)(6916009)(91956017)(66946007)(26005)(36756003)(2616005)(83380400001)(6486002)(6506007)(86362001)(38070700005)(38100700002)(33656002)(53546011)(6512007)(478600001)(122000001)(2906002)(71200400001)(8676002)(8936002)(41300700001)(4326008)(5660300002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <569AD40FACF0F44BA420669F67DA6478@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB8120
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	618759bd-8f15-4abc-7919-08dbb66b8d38
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	bHYBRC/QLmmvv7K+ldVwvthSgBv3CNHfhuVKxz+WzMaKpBh2jR9rKbdHJ8qTxuDlTij3S1ek/b8YUV2Yp+9tYxWnZL4Quin04b4v4l17U5DOxI9vQL2o9TSw6oUopCP69L8fW21MrSy3j/Q40bnixdCi5WlZsuoTN0uIT9rYRFAACUrwe95s1z1RQbz5E497Ea16giqhaQJcd0KUUUJ/MMZAT2zEcDL3vj/DGHix/zo3BZMnsQVlZtPdsfCzb/CsfuQLNFJnpIKTgI6uymKw+XBs0pSXKcOywT82zWVTgLh1RyWXmcn5cCuYNumR7dAsyKO84fHNdpzXcsNmSVii03wFtvriMdPFTwF9YxnTAndqN6SK9BEjFY02UeJw61H6j0c8fvEh7RFizsV9YUNJwZkYJlU8EqSuji2GxgP8p/5/3l2c02gsvVU+sRB3LBy9wlba1+8k6rb9pOyP0ANXvBIR4v/1zhmEoFGNbWjue2D0uOkES/Hcm+C8hQL7BggVXE/Ge3AEaW12cC0zhkf349TQGE1bOZYWIu7jt54Q0Z6KZAXJSgJXA6yX52PfDuIbjihxEHsz0/hlurzwf6IUxAjt1H3k99kkTW9/Ps5ie1NsMa2yhYYTZecGsi+bGv4jyHQ36EZNsoZE7YiY5k+fv4z0y6DKgKdJWLfY5Yd0vk4RlNK4m76eZSqV6/JHr0jp9ffvhd8AE40uM1J/NeE49llUM0q64nfF9AeqhbskLOPTgyif0BcJhE2aq1vnY8g3
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(39860400002)(376002)(136003)(451199024)(82310400011)(1800799009)(186009)(36840700001)(40470700004)(46966006)(478600001)(41300700001)(40480700001)(83380400001)(5660300002)(2906002)(8676002)(70206006)(8936002)(6862004)(54906003)(316002)(70586007)(4326008)(6506007)(53546011)(6486002)(6512007)(40460700003)(2616005)(26005)(107886003)(336012)(36860700001)(36756003)(86362001)(356005)(81166007)(33656002)(82740400003)(47076005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Sep 2023 04:15:39.1666
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9ead5007-3650-4214-9460-08dbb66b95a8
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5795

Hi Julien,

> On Sep 16, 2023, at 05:58, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Henry,
>=20
> On 28/08/2023 02:32, Henry Wang wrote:
>> Currently mmu_init_secondary_cpu() only enforces the page table
>> should not contain mapping that are both Writable and eXecutables
>> after boot. To ease the arch/arm/mm.c split work, fold this function
>> to head.S.
>> Introduce assembly macro pt_enforce_wxn for both arm32 and arm64.
>> For arm64, the macro is called at the end of enable_secondary_cpu_mm().
>> For arm32, the macro is called before secondary CPUs jumping into
>> the C world.
>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>> ---
>> v6:
>> - New patch.
>> ---
>>  xen/arch/arm/arm32/head.S     | 20 ++++++++++++++++++++
>>  xen/arch/arm/arm64/mmu/head.S | 21 +++++++++++++++++++++
>>  xen/arch/arm/include/asm/mm.h |  2 --
>>  xen/arch/arm/mm.c             |  6 ------
>>  xen/arch/arm/smpboot.c        |  2 --
>>  5 files changed, 41 insertions(+), 10 deletions(-)
>> diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S
>> index 33b038e7e0..39218cf15f 100644
>> --- a/xen/arch/arm/arm32/head.S
>> +++ b/xen/arch/arm/arm32/head.S
>> @@ -83,6 +83,25 @@
>>          isb
>>  .endm
>>  +/*
>> + * Enforce Xen page-tables do not contain mapping that are both
>> + * Writable and eXecutables.
>> + *
>> + * This should be called on each secondary CPU.
>> + */
>> +.macro pt_enforce_wxn tmp
>> +        mrc   CP32(\tmp, HSCTLR)
>> +        orr   \tmp, \tmp, #SCTLR_Axx_ELx_WXN
>> +        dsb
>> +        mcr   CP32(\tmp, HSCTLR)
>> +        /*
>> +         * The TLBs may cache SCTLR_EL2.WXN. So ensure it is synchroniz=
ed
>> +         * before flushing the TLBs.
>> +         */
>> +        isb
>> +        flush_xen_tlb_local \tmp
>> +.endm
>> +
>>  /*
>>   * Common register usage in this file:
>>   *   r0  -
>> @@ -254,6 +273,7 @@ secondary_switched:
>>          /* Use a virtual address to access the UART. */
>>          mov_w r11, EARLY_UART_VIRTUAL_ADDRESS
>>  #endif
>> +        pt_enforce_wxn r0
>>          PRINT("- Ready -\r\n")
>>          /* Jump to C world */
>>          mov_w r2, start_secondary
>> diff --git a/xen/arch/arm/arm64/mmu/head.S b/xen/arch/arm/arm64/mmu/head=
.S
>> index a5271e3880..25028bdf07 100644
>> --- a/xen/arch/arm/arm64/mmu/head.S
>> +++ b/xen/arch/arm/arm64/mmu/head.S
>> @@ -31,6 +31,25 @@
>>          isb
>>  .endm
>>  +/*
>> + * Enforce Xen page-tables do not contain mapping that are both
>> + * Writable and eXecutables.
>> + *
>> + * This should be called on each secondary CPU.
>> + */
>> +.macro pt_enforce_wxn tmp
>> +       mrs   \tmp, SCTLR_EL2
>> +       orr   \tmp, \tmp, #SCTLR_Axx_ELx_WXN
>> +       dsb   sy
>> +       msr   SCTLR_EL2, \tmp
>> +       /*
>> +        * The TLBs may cache SCTLR_EL2.WXN. So ensure it is synchronize=
d
>> +        * before flushing the TLBs.
>> +        */
>> +       isb
>> +       flush_xen_tlb_local
>> +.endm
>> +
>=20
> It would be preferable if we can set the flag right when the MMU is initi=
alized enabled configured. This would avoid the extra TLB flush and SCTLR d=
ance. How about the following (not compiled/cleaned) code:

Thank you for the detailed information. Sure, I will try below code and kee=
p you
updated about if it works. Will update the patch accordingly.

>=20
> diff --git a/xen/arch/arm/arm64/mmu/head.S b/xen/arch/arm/arm64/mmu/head.=
S
> index a5271e388071..6b19d15ff89f 100644
> --- a/xen/arch/arm/arm64/mmu/head.S
> +++ b/xen/arch/arm/arm64/mmu/head.S
> @@ -264,10 +264,11 @@ ENDPROC(create_page_tables)
>  * Inputs:
>  *   x0 : Physical address of the page tables.
>  *
> - * Clobbers x0 - x4
> + * Clobbers x0 - x6
>  */
> enable_mmu:
>         mov   x4, x0
> +        mov   x5, x1
>         PRINT("- Turning on paging -\r\n")
>=20
>         /*
> @@ -283,6 +284,7 @@ enable_mmu:
>         mrs   x0, SCTLR_EL2
>         orr   x0, x0, #SCTLR_Axx_ELx_M  /* Enable MMU */
>         orr   x0, x0, #SCTLR_Axx_ELx_C  /* Enable D-cache */
> +        orr   x0, x0, x5                /* Enable extra flags */
>         dsb   sy                     /* Flush PTE writes and finish reads=
 */
>         msr   SCTLR_EL2, x0          /* now paging is enabled */
>         isb                          /* Now, flush the icache */
> @@ -297,16 +299,17 @@ ENDPROC(enable_mmu)
>  * Inputs:
>  *   lr : Virtual address to return to.
>  *
> - * Clobbers x0 - x5
> + * Clobbers x0 - x6
>  */
> ENTRY(enable_secondary_cpu_mm)
> -        mov   x5, lr
> +        mov   x6, lr
>=20
>         load_paddr x0, init_ttbr
>         ldr   x0, [x0]
>=20
> +        mov   x1, #SCTLR_Axx_ELx_WXN        /* Enable WxN from the start=
 */
>         bl    enable_mmu
> -        mov   lr, x5
> +        mov   lr, x6
>=20
>         /* Return to the virtual address requested by the caller. */
>         ret
> @@ -320,16 +323,17 @@ ENDPROC(enable_secondary_cpu_mm)
>  * Inputs:
>  *   lr : Virtual address to return to.
>  *
> - * Clobbers x0 - x5
> + * Clobbers x0 - x6
>  */
> ENTRY(enable_boot_cpu_mm)
> -        mov   x5, lr
> +        mov   x6, lr
>=20
>         bl    create_page_tables
>         load_paddr x0, boot_pgtable
>=20
> +        mov   x1, #0        /* No extra SCTLR flags */
>         bl    enable_mmu
> -        mov   lr, x5
> +        mov   lr, x6
>=20
>         /*
>          * The MMU is turned on and we are in the 1:1 mapping. Switch
>=20
> The same logic could be used for arm32.

Sure. Will do that together.

Kind regards,
Henry

>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Sat Sep 16 04:38:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 04:38:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603510.940525 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhN4T-0003Of-3g; Sat, 16 Sep 2023 04:38:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603510.940525; Sat, 16 Sep 2023 04:38:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhN4T-0003OY-0x; Sat, 16 Sep 2023 04:38:17 +0000
Received: by outflank-mailman (input) for mailman id 603510;
 Sat, 16 Sep 2023 04:38:16 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhN4S-0003OO-E1; Sat, 16 Sep 2023 04:38:16 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhN4S-0001lq-94; Sat, 16 Sep 2023 04:38:16 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhN4R-0001I4-JR; Sat, 16 Sep 2023 04:38:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qhN4R-0003Ri-It; Sat, 16 Sep 2023 04:38:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ozGp1Y2GAlIOegl0xGvr1DCxI/dF0Ca8JHLfzCvuF1M=; b=JtihuYhH27oeJQZ0OXawMR68Ac
	59P7ESxhbae93qs2T81iOx0EpM0LqavfVdUjSvskCZe6c4+v0omccqiq9JrD2gFK6wTgLNRDQv02W
	Vy9s33Oao3OsEqaoIcquXFWHTZl7tyav18N//WeNajPFpAyrmzms21INHvAHPcqH96UI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183010-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183010: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=9fdfb15a3dbf818e06be514f4abbfc071004cbe7
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 16 Sep 2023 04:38:15 +0000

flight 183010 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183010/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                9fdfb15a3dbf818e06be514f4abbfc071004cbe7
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   19 days
Failing since        182544  2023-08-28 20:42:13 Z   18 days   34 attempts
Testing same since   183004  2023-09-14 22:43:17 Z    1 days    3 attempts

------------------------------------------------------------
2287 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 278620 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 07:37:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 07:37:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603520.940535 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhPrU-0007bv-2r; Sat, 16 Sep 2023 07:37:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603520.940535; Sat, 16 Sep 2023 07:37:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhPrT-0007bo-W9; Sat, 16 Sep 2023 07:37:04 +0000
Received: by outflank-mailman (input) for mailman id 603520;
 Sat, 16 Sep 2023 07:37:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V1Uw=FA=gmail.com=jinoh.kang.kr@srs-se1.protection.inumbo.net>)
 id 1qhPrT-0007bg-2R
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 07:37:03 +0000
Received: from mail-pg1-x529.google.com (mail-pg1-x529.google.com
 [2607:f8b0:4864:20::529])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d2a28550-5463-11ee-8788-cb3800f73035;
 Sat, 16 Sep 2023 09:37:01 +0200 (CEST)
Received: by mail-pg1-x529.google.com with SMTP id
 41be03b00d2f7-53fa455cd94so2135167a12.2
 for <xen-devel@lists.xenproject.org>; Sat, 16 Sep 2023 00:37:01 -0700 (PDT)
Received: from [10.137.0.57] ([14.33.99.107]) by smtp.gmail.com with ESMTPSA id
 h18-20020a62b412000000b0066684d8115bsm4115010pfn.178.2023.09.16.00.36.57
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 16 Sep 2023 00:36:59 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d2a28550-5463-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1694849820; x=1695454620; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to
         :content-language:user-agent:mime-version:date:message-id:from:to:cc
         :subject:date:message-id:reply-to;
        bh=j0S51/pBUY6hmXFoUgUPjQ7JL3/euyO3Px8Jqn+fpdk=;
        b=Dq/0SAvxQuxglJycLd9dyGmJwn1xYKmstmVlei5x9tZeWRVqcSlorqhvgeJEx1wN9Z
         V3eXeBmKHLCQc4B794oXdfhpvdyWi/648PKiGqnNkPfyQyInMZJ2SmJQZ6L/UbMOOD4I
         QBsjFw8PJAFwmaQd1JBVyE7ZebvCmmQATbrl9xrWlJuQ17PvWxs2W05pobKi4WvCtUYl
         9Q6AvZnqsaoFeu5H7NaExz4MDithqPyIhGSoaUbyiaL6dqsJWYtQ5Ny0Lf4uRFgDVU0h
         a9frhIket0rfdzNJH8jSGOhGTpdTQOD9ZzRwIPnt+9NMRNKpAmHvRk8SN2ENaxeg7g6+
         yfRg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694849820; x=1695454620;
        h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to
         :content-language:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=j0S51/pBUY6hmXFoUgUPjQ7JL3/euyO3Px8Jqn+fpdk=;
        b=Mpidctk7pkB8Yx4QlKwIw2KbhVnTXG9Hb+JbrPFW/bRpoy6RsOz0PahBJa22bPqK8+
         8nNk8FzkbUevFtigqWWqhB9f67vaSbUIJ2GBvy5WYYTjhpBckYVd/b7sW5SHBWTLGIZ4
         UWSHeIg4w7jK0X10UP9o0aGmZXBqQkdPAVwWEXPPc8DIE+4pyhr4qeFdRXAgC+n7LlbX
         Ki88CfHAyeQzgQcAvNOS7xVoJESEjnzWnj+4P0Kx7w0TRhFS8S4c9LL097ggQLLBS9gk
         +iDoGmKuP67TO5KCAFb6WhFA61ZamLSFg+Cv6lz50GiBOVlOYqGTpNRG7d+dG4OFTtDZ
         mlrw==
X-Gm-Message-State: AOJu0YwI1uhF7T3Y3zLnjV6/syjZmYvfOMIAVT2LVg8QTPCbTz81mlVW
	U6nMdQSu/tpjGBj7SaMJNbs=
X-Google-Smtp-Source: AGHT+IFundl9U8Fv5LEXrsFHxSeLqH78IU7tWeqGL1ByLSZ3sVZTgYxaGHwDV/IORmYPln8rlDYegw==
X-Received: by 2002:a05:6a20:320d:b0:14b:8023:33c8 with SMTP id hl13-20020a056a20320d00b0014b802333c8mr3554550pzc.2.1694849819989;
        Sat, 16 Sep 2023 00:36:59 -0700 (PDT)
Message-ID: <095d4737-3728-b1c2-d64d-dc5e9b438b80@gmail.com>
Date: Sat, 16 Sep 2023 16:36:54 +0900
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-5-andrew.cooper3@citrix.com>
From: Jinoh Kang <jinoh.kang.kr@gmail.com>
Subject: Re: [PATCH 4/7] x86/pv: Drop priv_op_ctxt.bpmatch and use pending_dbg
 instead
In-Reply-To: <20230915203628.837732-5-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/16/23 05:36, Andrew Cooper wrote:
> @@ -658,7 +660,7 @@ static int cf_check rep_ins(
>  
>          ++*reps;
>  
> -        if ( poc->bpmatch || hypercall_preempt_check() )
> +        if ( poc->ctxt.retire.pending_dbg || hypercall_preempt_check() )
>              break;
>  
>          /* x86_emulate() clips the repetition count to ensure we don't wrap. */

(snip)

> @@ -726,7 +729,7 @@ static int cf_check rep_outs(
>  
>          ++*reps;
>  
> -        if ( poc->bpmatch || hypercall_preempt_check() )
> +        if ( poc->ctxt.retire.pending_dbg || hypercall_preempt_check() )
>              break;
>  
>          /* x86_emulate() clips the repetition count to ensure we don't wrap. */

These two hunks look like a behavioral change in singlestep mode.

This is actually a fix, assuming the emulator previously did not handle
'rep {in,out}s' in singlestep mode correctly, since it now checks for
PENDING_DBG.BS in addition to PENDING_DBG.B[0-4].

If this is the case, (at least) this part of the patch looks like a stable
candidate.  You might want to edit the commit message to reflect that.

(Ideally all the HWBP handling should be part of the emulator logic, but
 I don't see an easy way to generalize the PV-specific logic.  It could
 be its own patch anyway.)

-- 
Sincerely,
Jinoh Kang



From xen-devel-bounces@lists.xenproject.org Sat Sep 16 07:44:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 07:44:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603526.940545 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhPyN-0000f1-PW; Sat, 16 Sep 2023 07:44:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603526.940545; Sat, 16 Sep 2023 07:44:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhPyN-0000eu-Mp; Sat, 16 Sep 2023 07:44:11 +0000
Received: by outflank-mailman (input) for mailman id 603526;
 Sat, 16 Sep 2023 07:44:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V1Uw=FA=gmail.com=jinoh.kang.kr@srs-se1.protection.inumbo.net>)
 id 1qhPyM-0000eo-BX
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 07:44:10 +0000
Received: from mail-pg1-x52a.google.com (mail-pg1-x52a.google.com
 [2607:f8b0:4864:20::52a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d1807990-5464-11ee-8788-cb3800f73035;
 Sat, 16 Sep 2023 09:44:09 +0200 (CEST)
Received: by mail-pg1-x52a.google.com with SMTP id
 41be03b00d2f7-573ccec985dso2328845a12.2
 for <xen-devel@lists.xenproject.org>; Sat, 16 Sep 2023 00:44:09 -0700 (PDT)
Received: from [10.137.0.57] ([14.33.99.107]) by smtp.gmail.com with ESMTPSA id
 s8-20020a17090a764800b0026b50d9aee6sm3979212pjl.25.2023.09.16.00.44.05
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 16 Sep 2023 00:44:07 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d1807990-5464-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1694850248; x=1695455048; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to
         :content-language:user-agent:mime-version:date:message-id:from:to:cc
         :subject:date:message-id:reply-to;
        bh=RyuT4kdZ2116u9L0YxuBdo/Qb02fPEko0CzEQ4I9mNs=;
        b=Pkz93Bxh5ZKymz6t1AaNqiiu2AYoJ4ibIDLp8aI7DJk6EsIgrR3YTVN5ciCfhMixti
         4JIUxtFHWa6wMMJ/basiGkzb7b637cL4M2THUgzTC6UzVoTP3QSE4KxbqSDwACTJvY+a
         Go0JKWSkSXr/ApK4rDXykd264uMXcBzsb98wekc/4xzHIUkEZPVJz1F2QXO1sxFP6+vp
         efnKP4k+bjgVrT6pS8e+dAYqzyqhI43wEzElPmoFEvti4uejnfUGSvsf4uOoXVHgt0bu
         RQUSYitkv4zCy9Yk6nQja2y96YD2alQW7Xr2yKCVSgVpDvilSx8SphPF1ZP7FLT5Z54l
         frZQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694850248; x=1695455048;
        h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to
         :content-language:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=RyuT4kdZ2116u9L0YxuBdo/Qb02fPEko0CzEQ4I9mNs=;
        b=cLgfn45Yn2GDmYzZ5ZIkBIZkwDGVM+pbpkS2vUlGG8L1/nu5YczwJafr16PGd6uYRJ
         ofUWz/VFthGnjkggGwxUlr/RGa7RDUKZTkIDnxZQjpCibbF8wYu+fT+mbUDyvM27+szn
         wJOqMMfXukAzDF5WRfJ36T8r2dh9brFQGnkSwHpYXXk0KGlzpQ9eXdu3mrvyQADtXljK
         qK6H/GSXi3Y2uG2dHfncfyxV8d6KPeVK7WYU7pDdL9olMqLa/lPIhYtqhWHitK8Z5ODI
         vZqLqv2sUUOUGhvVN9IAfjGuGViidiS7kDVEg34A6TQEvxIF7UdxpCITVhJ53lQxXLCd
         O/1A==
X-Gm-Message-State: AOJu0YyA9Xx55rCi+e+HVlh7fX98RtmFQOC1wlQpLPWCnhaelrgfyMox
	jV8xcs876z7XR8In00NK3X8=
X-Google-Smtp-Source: AGHT+IHAjuXw/InLndBQl1FDBBuA5PKvkcd4Iz+lQlW7CXct74zLZSoJqThu6vEmxX224lwLF0dBSQ==
X-Received: by 2002:a05:6a20:d405:b0:13a:6bca:7a84 with SMTP id il5-20020a056a20d40500b0013a6bca7a84mr4014052pzb.44.1694850247629;
        Sat, 16 Sep 2023 00:44:07 -0700 (PDT)
Message-ID: <b9115a81-f46f-129f-8075-5775f4da56dc@gmail.com>
Date: Sat, 16 Sep 2023 16:44:03 +0900
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-7-andrew.cooper3@citrix.com>
From: Jinoh Kang <jinoh.kang.kr@gmail.com>
Subject: Re: [PATCH 6/7] x86: Extend x86_event with a pending_dbg field
In-Reply-To: <20230915203628.837732-7-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 9/16/23 05:36, Andrew Cooper wrote:
> ... using the Intel VMCS PENDING_DBG semantics, and sharing storage with cr2.
> 
> This requires working around anonymous union bugs in obsolete versions of GCC,
> which in turn needs to drop unnecessary const qualifiers.

I'd write this as a inline comment as long as it doesn't make the code
too verbose.

Please disregard this if it doesn't match our coding style.

> 
> Also introduce a pv_inject_DB() wrapper use this field nicely.

Minor nit: Also introduce a pv_inject_DB() wrapper to* use this field nicely.

> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Roger Pau Monné <roger.pau@citrix.com>
> CC: Wei Liu <wl@xen.org>
> CC: Jinoh Kang <jinoh.kang.kr@gmail.com>
> 
> v2:
>  * Split out of prior patch.
> ---
>  xen/arch/x86/include/asm/domain.h      | 18 ++++++++++++++++--
>  xen/arch/x86/include/asm/hvm/hvm.h     |  3 ++-
>  xen/arch/x86/x86_emulate/x86_emulate.h |  5 ++++-
>  3 files changed, 22 insertions(+), 4 deletions(-)
> 
> diff --git a/xen/arch/x86/include/asm/domain.h b/xen/arch/x86/include/asm/domain.h
> index c2d9fc333be5..fd1f306222be 100644
> --- a/xen/arch/x86/include/asm/domain.h
> +++ b/xen/arch/x86/include/asm/domain.h
> @@ -729,15 +729,29 @@ static inline void pv_inject_hw_exception(unsigned int vector, int errcode)
>      pv_inject_event(&event);
>  }
>  
> +static inline void pv_inject_DB(unsigned long pending_dbg)
> +{
> +    struct x86_event event = {
> +        .vector      = X86_EXC_DB,
> +        .type        = X86_EVENTTYPE_HW_EXCEPTION,
> +        .error_code  = X86_EVENT_NO_EC,
> +    };
> +
> +    event.pending_dbg = pending_dbg;
> +
> +    pv_inject_event(&event);
> +}
> +
>  static inline void pv_inject_page_fault(int errcode, unsigned long cr2)
>  {
> -    const struct x86_event event = {
> +    struct x86_event event = {
>          .vector = X86_EXC_PF,
>          .type = X86_EVENTTYPE_HW_EXCEPTION,
>          .error_code = errcode,
> -        .cr2 = cr2,
>      };
>  
> +    event.cr2 = cr2;
> +
>      pv_inject_event(&event);
>  }
>  
> diff --git a/xen/arch/x86/include/asm/hvm/hvm.h b/xen/arch/x86/include/asm/hvm/hvm.h
> index 6d53713fc3a9..ea966f4429f9 100644
> --- a/xen/arch/x86/include/asm/hvm/hvm.h
> +++ b/xen/arch/x86/include/asm/hvm/hvm.h
> @@ -532,9 +532,10 @@ static inline void hvm_inject_page_fault(int errcode, unsigned long cr2)
>          .vector = X86_EXC_PF,
>          .type = X86_EVENTTYPE_HW_EXCEPTION,
>          .error_code = errcode,
> -        .cr2 = cr2,
>      };
>  
> +    event.cr2 = cr2;
> +
>      hvm_inject_event(&event);
>  }
>  
> diff --git a/xen/arch/x86/x86_emulate/x86_emulate.h b/xen/arch/x86/x86_emulate/x86_emulate.h
> index fbc023c37e34..e567a9b635d9 100644
> --- a/xen/arch/x86/x86_emulate/x86_emulate.h
> +++ b/xen/arch/x86/x86_emulate/x86_emulate.h
> @@ -78,7 +78,10 @@ struct x86_event {
>      uint8_t       type;         /* X86_EVENTTYPE_* */
>      uint8_t       insn_len;     /* Instruction length */
>      int32_t       error_code;   /* X86_EVENT_NO_EC if n/a */
> -    unsigned long cr2;          /* Only for X86_EXC_PF h/w exception */
> +    union {
> +        unsigned long cr2;         /* #PF */
> +        unsigned long pending_dbg; /* #DB (new DR6 bits, positive polarity) */
> +    };
>  };
>  
>  /*

-- 
Sincerely,
Jinoh Kang



From xen-devel-bounces@lists.xenproject.org Sat Sep 16 07:50:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 07:50:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603531.940556 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhQ4m-0002Pi-FO; Sat, 16 Sep 2023 07:50:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603531.940556; Sat, 16 Sep 2023 07:50:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhQ4m-0002Pb-C5; Sat, 16 Sep 2023 07:50:48 +0000
Received: by outflank-mailman (input) for mailman id 603531;
 Sat, 16 Sep 2023 07:50:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V1Uw=FA=gmail.com=jinoh.kang.kr@srs-se1.protection.inumbo.net>)
 id 1qhQ4l-0002PV-47
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 07:50:47 +0000
Received: from mail-oi1-x229.google.com (mail-oi1-x229.google.com
 [2607:f8b0:4864:20::229])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id be0b07df-5465-11ee-8788-cb3800f73035;
 Sat, 16 Sep 2023 09:50:45 +0200 (CEST)
Received: by mail-oi1-x229.google.com with SMTP id
 5614622812f47-3a81154c5f5so1771865b6e.1
 for <xen-devel@lists.xenproject.org>; Sat, 16 Sep 2023 00:50:45 -0700 (PDT)
Received: from [10.137.0.57] ([14.33.99.107]) by smtp.gmail.com with ESMTPSA id
 o9-20020a639a09000000b0056569f7cbd2sm3732786pge.37.2023.09.16.00.50.42
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 16 Sep 2023 00:50:44 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: be0b07df-5465-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1694850644; x=1695455444; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to
         :content-language:user-agent:mime-version:date:message-id:from:to:cc
         :subject:date:message-id:reply-to;
        bh=+9HVghx9ih1sHhqli6LaK+YDMl9UC6o0yeyHYFRKJn4=;
        b=depBcUHxgXlhOi/KmmNkSuGZSEsjWCKlk/4VaNlbMa1MHuawzGKRHzbNRUVOe7k9Nk
         9GZFBURQdL65ri17ch8FNAvutyeWXRynJ5BSE5KHoIncE6+lADLNsBDIM3tlWEIIYZTk
         jvmjqsk3zUoXDb/0lDjcM2RDrDD/ALcQQC/xo4B7bWHfUkoty5pmMXnwNJc8lU5RyRys
         SaAMoKPXOMX//+bh+l6zXWyN06UulQLBWdUYZygi5H0IyZxgmfeTSuEX1EDgH4ManQ2b
         oY4qSJ6vGahlbd2YuwT9XDJd+DiSRJbImX2a8DUDSqj1w9UwkVVRpdYhsEXDuVb6Aq7N
         f2hg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694850644; x=1695455444;
        h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to
         :content-language:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=+9HVghx9ih1sHhqli6LaK+YDMl9UC6o0yeyHYFRKJn4=;
        b=lYb02wx2MhA1BXHmi4F7+Oo6fdyhoTnp+99mQDht3LS8A73nr2iNpFQbLCHxaxUoRW
         1oJd0cu3S7jNgXwCSs94XFFEUPUXNBVEz+hd53h7gg/KhAWV8p3J4OMH7Qb4wJpIRGdS
         CSbm5VUqYXoOrwaEXcVc5dxocwG675CkqfpB9cybhgZat9ANRVKSiSkbtTRb8/RaaXgC
         w2GFlgnv7ZYEV/XCkr/M6loIaagDW6W9kQpgxCOxC3+6gAUUP5w/JYj2Ld1WKHVcB2Lj
         QoNAyVdo+EB8b3hl7KlrCtsqdEc78VNLcsOtn+dvJ34xetgXz7tOsQIS8llkBYH9PkJW
         D7FA==
X-Gm-Message-State: AOJu0YwMTliU1xLdwgAcYcmABCU3nSxSbGFFcPHDLPtl6MnobQlraY98
	qgdc8CPri5r23gKnwZv5GeU=
X-Google-Smtp-Source: AGHT+IE1UGOCVG4WAxdVRLHa2rTvAC9Wx0ucPP6e57fIixwLOx/bAnVffeT1e/497mCPTIOxXJrwQQ==
X-Received: by 2002:a05:6808:2806:b0:3a9:9f9d:90ed with SMTP id et6-20020a056808280600b003a99f9d90edmr3891841oib.23.1694850644563;
        Sat, 16 Sep 2023 00:50:44 -0700 (PDT)
Message-ID: <0aee121e-a2ac-1c6c-be33-59d842419708@gmail.com>
Date: Sat, 16 Sep 2023 16:50:39 +0900
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-8-andrew.cooper3@citrix.com>
From: Jinoh Kang <jinoh.kang.kr@gmail.com>
Subject: Re: [PATCH 7/7] x86/pv: Rewrite %dr6 handling
In-Reply-To: <20230915203628.837732-8-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 9/16/23 05:36, Andrew Cooper wrote:
> All #DB exceptions result in an update of %dr6, but this isn't handled
> properly by Xen for any guest type.
> 
> Remove all ad-hoc dr6 handling, leaving it to pv_inject_event() in most cases
> and using the new x86_merge_dr6() helper.
> 
> In do_debug(), swap the dr6 to pending_dbg in order to operate entirely with
> positive polarity.  Among other things, this helps spot RTM/BLD in the
> diagnostic message.
> 
> Drop the unconditional v->arch.dr6 adjustment.  pv_inject_event() performs the
> adjustment in the common case, but retain the prior behaviour if a debugger is
> attached.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Roger Pau Monné <roger.pau@citrix.com>
> CC: Wei Liu <wl@xen.org>
> CC: Jinoh Kang <jinoh.kang.kr@gmail.com>
> 
> v2:
>  * Split pieces out into an earlier patch.
>  * Extend do_debug() to use pending_dbg entirely, rather than have the same
>    variable used with different polarity at different times.
> ---
>  xen/arch/x86/pv/emul-priv-op.c  |  5 +----
>  xen/arch/x86/pv/emulate.c       |  9 +++++++--
>  xen/arch/x86/pv/ro-page-fault.c |  4 ++--
>  xen/arch/x86/pv/traps.c         | 17 +++++++++++++----
>  xen/arch/x86/traps.c            | 23 +++++++++++------------
>  5 files changed, 34 insertions(+), 24 deletions(-)
> 
> diff --git a/xen/arch/x86/pv/emul-priv-op.c b/xen/arch/x86/pv/emul-priv-op.c
> index 2f73ed0682e1..fe2011f28e34 100644
> --- a/xen/arch/x86/pv/emul-priv-op.c
> +++ b/xen/arch/x86/pv/emul-priv-op.c
> @@ -1364,10 +1364,7 @@ int pv_emulate_privileged_op(struct cpu_user_regs *regs)
>          ASSERT(!curr->arch.pv.trap_bounce.flags);
>  
>          if ( ctxt.ctxt.retire.pending_dbg )
> -        {
> -            curr->arch.dr6 |= ctxt.ctxt.retire.pending_dbg | DR_STATUS_RESERVED_ONE;
> -            pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
> -        }
> +            pv_inject_DB(ctxt.ctxt.retire.pending_dbg);
>  
>          /* fall through */
>      case X86EMUL_RETRY:
> diff --git a/xen/arch/x86/pv/emulate.c b/xen/arch/x86/pv/emulate.c
> index e7a1c0a2cc4f..29425a0a00ec 100644
> --- a/xen/arch/x86/pv/emulate.c
> +++ b/xen/arch/x86/pv/emulate.c
> @@ -71,10 +71,15 @@ void pv_emul_instruction_done(struct cpu_user_regs *regs, unsigned long rip)
>  {
>      regs->rip = rip;
>      regs->eflags &= ~X86_EFLAGS_RF;
> +
>      if ( regs->eflags & X86_EFLAGS_TF )
>      {
> -        current->arch.dr6 |= DR_STEP | DR_STATUS_RESERVED_ONE;
> -        pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
> +        /*
> +         * TODO, this should generally use TF from the start of the
> +         * instruction.  It's only a latent bug for now, as this path isn't
> +         * used for any instruction which modifies eflags.
> +         */
> +        pv_inject_DB(X86_DR6_BS);
>      }
>  }
>  
> diff --git a/xen/arch/x86/pv/ro-page-fault.c b/xen/arch/x86/pv/ro-page-fault.c
> index cad28ef928ad..f6bb33556e72 100644
> --- a/xen/arch/x86/pv/ro-page-fault.c
> +++ b/xen/arch/x86/pv/ro-page-fault.c
> @@ -389,8 +389,8 @@ int pv_ro_page_fault(unsigned long addr, struct cpu_user_regs *regs)
>  
>          /* Fallthrough */
>      case X86EMUL_OKAY:
> -        if ( ctxt.retire.singlestep )
> -            pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
> +        if ( ctxt.retire.pending_dbg )
> +            pv_inject_DB(ctxt.retire.pending_dbg);
>  
>          /* Fallthrough */
>      case X86EMUL_RETRY:
> diff --git a/xen/arch/x86/pv/traps.c b/xen/arch/x86/pv/traps.c
> index 74f333da7e1c..553b04bca956 100644
> --- a/xen/arch/x86/pv/traps.c
> +++ b/xen/arch/x86/pv/traps.c
> @@ -13,6 +13,7 @@
>  #include <xen/softirq.h>
>  
>  #include <asm/pv/trace.h>
> +#include <asm/debugreg.h>
>  #include <asm/shared.h>
>  #include <asm/traps.h>
>  #include <irq_vectors.h>
> @@ -50,9 +51,9 @@ void pv_inject_event(const struct x86_event *event)
>      tb->cs    = ti->cs;
>      tb->eip   = ti->address;
>  
> -    if ( event->type == X86_EVENTTYPE_HW_EXCEPTION &&
> -         vector == X86_EXC_PF )
> +    switch ( vector | -(event->type == X86_EVENTTYPE_SW_INTERRUPT) )
>      {
> +    case X86_EXC_PF:
>          curr->arch.pv.ctrlreg[2] = event->cr2;
>          arch_set_cr2(curr, event->cr2);
>  
> @@ -62,9 +63,17 @@ void pv_inject_event(const struct x86_event *event)
>              error_code |= PFEC_user_mode;
>  
>          trace_pv_page_fault(event->cr2, error_code);
> -    }
> -    else
> +        break;
> +
> +    case X86_EXC_DB:
> +        curr->arch.dr6 = x86_merge_dr6(curr->domain->arch.cpu_policy,
> +                                       curr->arch.dr6, event->pending_dbg);
> +        /* Fallthrough */
> +
> +    default:
>          trace_pv_trap(vector, regs->rip, use_error_code, error_code);
> +        break;
> +    }
>  
>      if ( use_error_code )
>      {
> diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
> index dead728ce329..447edc827b3a 100644
> --- a/xen/arch/x86/traps.c
> +++ b/xen/arch/x86/traps.c
> @@ -1887,11 +1887,11 @@ void do_device_not_available(struct cpu_user_regs *regs)
>  /* SAF-1-safe */
>  void do_debug(struct cpu_user_regs *regs)
>  {
> -    unsigned long dr6;
> +    unsigned long pending_dbg;
>      struct vcpu *v = current;
>  
> -    /* Stash dr6 as early as possible. */
> -    dr6 = read_debugreg(6);
> +    /* Stash dr6 as early as possible, operating with positive polarity. */
> +    pending_dbg = read_debugreg(6) ^ X86_DR6_DEFAULT;

We don't reset DR6 after reading it, and there is no guarantee that the PV guest
will reset it either, so it doesn't match PENDING_DBG exactly IIRC.

On the other hand, nothing will probably care about its double-accumulating
quirk except perhaps monitor users.

Do we want to document that, shadow DR6 for PV (which seems a little overkill
if we don't trap DR6 access from PV already), or just live with that?

>  
>      /*
>       * At the time of writing (March 2018), on the subject of %dr6:
> @@ -1963,13 +1963,13 @@ void do_debug(struct cpu_user_regs *regs)
>           * If however we do, safety measures need to be enacted.  Use a big
>           * hammer and clear all debug settings.
>           */
> -        if ( dr6 & (DR_TRAP3 | DR_TRAP2 | DR_TRAP1 | DR_TRAP0) )
> +        if ( pending_dbg & X86_DR6_BP_MASK )
>          {
>              unsigned int bp, dr7 = read_debugreg(7);
>  
>              for ( bp = 0; bp < 4; ++bp )
>              {
> -                if ( (dr6 & (1u << bp)) && /* Breakpoint triggered? */
> +                if ( (pending_dbg & (1u << bp)) && /* Breakpoint triggered? */
>                       (dr7 & (3u << (bp * DR_ENABLE_SIZE))) && /* Enabled? */
>                       ((dr7 & (3u << ((bp * DR_CONTROL_SIZE) + /* Insn? */
>                                       DR_CONTROL_SHIFT))) == DR_RW_EXECUTE) )
> @@ -1990,24 +1990,23 @@ void do_debug(struct cpu_user_regs *regs)
>           * so ensure the message is ratelimited.
>           */
>          gprintk(XENLOG_WARNING,
> -                "Hit #DB in Xen context: %04x:%p [%ps], stk %04x:%p, dr6 %lx\n",
> +                "Hit #DB in Xen context: %04x:%p [%ps], stk %04x:%p, pending_dbg %lx\n",
>                  regs->cs, _p(regs->rip), _p(regs->rip),
> -                regs->ss, _p(regs->rsp), dr6);
> +                regs->ss, _p(regs->rsp), pending_dbg);
>  
>          return;
>      }
>  
> -    /* Save debug status register where guest OS can peek at it */
> -    v->arch.dr6 |= (dr6 & ~X86_DR6_DEFAULT);
> -    v->arch.dr6 &= (dr6 | ~X86_DR6_DEFAULT);
> -
>      if ( guest_kernel_mode(v, regs) && v->domain->debugger_attached )
>      {
> +        /* Save debug status register where gdbsx can peek at it */
> +        v->arch.dr6 = x86_merge_dr6(v->domain->arch.cpu_policy,
> +                                    v->arch.dr6, pending_dbg);
>          domain_pause_for_debugger();
>          return;
>      }
>  
> -    pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
> +    pv_inject_DB(pending_dbg);
>  }
>  
>  /* SAF-1-safe */

-- 
Sincerely,
Jinoh Kang



From xen-devel-bounces@lists.xenproject.org Sat Sep 16 08:16:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 08:16:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603542.940566 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhQTZ-0006Qs-Rc; Sat, 16 Sep 2023 08:16:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603542.940566; Sat, 16 Sep 2023 08:16:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhQTZ-0006Qj-O5; Sat, 16 Sep 2023 08:16:25 +0000
Received: by outflank-mailman (input) for mailman id 603542;
 Sat, 16 Sep 2023 08:16:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8KG6=FA=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qhQTY-0006Qd-8f
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 08:16:24 +0000
Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com
 [2607:f8b0:4864:20::634])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5208d0fe-5469-11ee-8788-cb3800f73035;
 Sat, 16 Sep 2023 10:16:22 +0200 (CEST)
Received: by mail-pl1-x634.google.com with SMTP id
 d9443c01a7336-1c328b53aeaso25708575ad.2
 for <xen-devel@lists.xenproject.org>; Sat, 16 Sep 2023 01:16:22 -0700 (PDT)
Received: from leoy-huanghe.lan (211-75-219-203.hinet-ip.hinet.net.
 [211.75.219.203]) by smtp.gmail.com with ESMTPSA id
 ob6-20020a17090b390600b00274803c4c90sm3375365pjb.40.2023.09.16.01.16.18
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 16 Sep 2023 01:16:20 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5208d0fe-5469-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1694852181; x=1695456981; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=znzxBn3XMW/AVPV60GAuf3cZnI47t+BFwyFxpeecC1w=;
        b=mSbSRLjsV18Azkbgtid68EhBhkSR+aTWWOrEpIPcH2UP+JxxPlZNzHfPQdS+C27sjs
         rl1NFWdzjSYhcescWW73QpY5JwQue8vPzI26UufOhViYeBKy9gpLNfUKJ6gU6R3svjOx
         VdEoQD5joRGABcAYVfJPozUPec5FDOkn9QrFe3qvonUKTFfHoJwJp1Tr1myBtB4/LCSQ
         ZndGHsN/LMCb2ethfBZ5DkOn+8SVIbk6zdpFagw6AHAfeNPZ7TxR9bMrXx2dYe+hsNDQ
         /eBZX2a3GvugPghZrBcnhuh6+pmzMqVRmO69ddbQY2aPSJ+qNFDZKBzRQcu6J26mnSpP
         OiMQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694852181; x=1695456981;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=znzxBn3XMW/AVPV60GAuf3cZnI47t+BFwyFxpeecC1w=;
        b=xONzSCL3b14LFZGfpS3yg+eJaCpi7TOpk8Qgg0le5wOgFs1zb9POmY8ZQvVi0nqCvx
         Agh63vhnsdayaLioW0O0nJbOC8EkziQ+qhfMMT0dKQVrNJcgTmyskhSOKNrMLQQZEY+5
         P2miIyy2OPq1kp11Vq2tjyogVUtlj3HI4EUMVoFHR/Qlwyf5Tg6z2eLgBkQ39S/9zr3m
         FdePMDxoHiizjFaqDwsovBAsEEfjMUqRZlQafA9pslru4CO25K2Kur0KBJPTvqEQS/LM
         JqDViJ/i6ZDUeZbPeI4vZc7ZoxQze269tfUI+TqesMkME5gQb/AUDxSWjlIKj6FAAoQ8
         03JA==
X-Gm-Message-State: AOJu0YxlXCQuFTJizp9slDzIxVNvOJAlm3pjK1ieZsaWLvxf06HS2UQm
	hZ54l5DgUKMYAEVusyQmkakXO+/sdCUo2Jv9PO8=
X-Google-Smtp-Source: AGHT+IFCGeiJEw8+LJM5viMxzLIJ5dDA6tRJQbOj5AiVpdJzZuNs8IYnYnEUFN09gdvkaXmIESLGpQ==
X-Received: by 2002:a17:90a:1347:b0:274:9823:b481 with SMTP id y7-20020a17090a134700b002749823b481mr3484649pjf.9.1694852181053;
        Sat, 16 Sep 2023 01:16:21 -0700 (PDT)
Date: Sat, 16 Sep 2023 16:16:15 +0800
From: Leo Yan <leo.yan@linaro.org>
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Henry Wang <Henry.Wang@arm.com>, Penny Zheng <penny.zheng@arm.com>
Subject: Re: RFC: arm64: Handling reserved memory nodes
Message-ID: <20230916081541.GA3291774@leoy-huanghe.lan>
References: <20230914081607.GA1400758@leoy-huanghe.lan>
 <23a0185e-428d-496b-96b6-d5082800bfd4@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <23a0185e-428d-496b-96b6-d5082800bfd4@xen.org>

Hi Julien,

On Thu, Sep 14, 2023 at 10:37:05AM +0100, Julien Grall wrote:

[...]

> > This error is caused by kernel using an invalid memory frame number
> > 0x1a02dc, we can convert it to the address:
> > 
> >    0x1a02dc << PAGE_SHIFT = 0x1_a02d_c000
> 
> This error is coming from get_page_from_gva(). The use of the function is
> usually an indication that Xen is trying to access the page. Can you use
> WARN() to provide a full trace?

With adding WARN(), I can get below trace log:

  (XEN) arch/arm/p2m.c:2206: d0v0: Failing to acquire the MFN 0x1a0171
  (XEN) Xen WARN at arch/arm/p2m.c:2208
  (XEN) ----[ Xen-4.18-unstable  arm64  debug=y  Tainted:      S ]----
  (XEN) CPU:    0
  (XEN) PC:     00007f000027540c get_page_from_gva+0x30c/0x334
  (XEN) LR:     00007f000027540c
  (XEN) SP:     00008002ffee7a20
  (XEN) CPSR:   0000000080000249 MODE:64-bit EL2h (Hypervisor, handler)
  (XEN)      X0: 00007f0000318038  X1: 0000000000000000  X2: 0000000000000000
  (XEN)      X3: 0000000000000001  X4: 00007f00002bf956  X5: 0000000000000000
  (XEN)      X6: 00008002ffff2150  X7: 00008002ffff2150  X8: 7f7f7f7f7f7f7f7f
  (XEN)      X9: 0000000000000080 X10: 7f7f7f7f7f7f7f7f X11: 0101010101010101
  (XEN)     X12: 0000000000000008 X13: 0000000000000030 X14: 0000000000000000
  (XEN)     X15: 000000003be6b29d X16: 000000000000000c X17: 000000009c4542e5
  (XEN)     X18: 0000000000000014 X19: 00008002fffcd000 X20: 00008002ffeef000
  (XEN)     X21: 00007f08054050b8 X22: 0000000000000000 X23: 00000000001a0171
  (XEN)     X24: 00000001a0171d80 X25: 0000000000000004 X26: 0000000000000000
  (XEN)     X27: 00008002ffeef000 X28: 0000000000001000  FP: 00008002ffee7a20
  (XEN) 
  (XEN)   VTCR_EL2: 00000000800a3558
  (XEN)  VTTBR_EL2: 00010002fffca000
  (XEN) 
  (XEN)  SCTLR_EL2: 0000000030cd183d
  (XEN)    HCR_EL2: 00000000807c663f
  (XEN)  TTBR0_EL2: 0000000020251000
  (XEN) 
  (XEN)    ESR_EL2: 00000000f2000001
  (XEN)  HPFAR_EL2: 0000000000176800
  (XEN)    FAR_EL2: ffffffc011900000
  (XEN) 
  (XEN) Xen stack trace from sp=00008002ffee7a20:
  (XEN)    00008002ffee7a80 00007f000026cc44 0000000000000d80 0000000000000018
  (XEN)    0000000000000007 0000000000000018 00008002ffee7cf8 ffffffc01187bd80
  (XEN)    00008002ffee7ad0 00000000ffffffc8 00008002ffee7ab0 00007f000032211e
  (XEN)    00008002ffee7b00 00007f000026ce54 ffffffffffffffdf ffffffc01187bd80
  (XEN)    0000000000000007 0000000000000000 00008002fffcd000 ffffffc0117cc000
  (XEN)    00000001a01db000 0000000000000000 0000000000000000 0000000000000000
  (XEN)    0000000000000007 00007f00002b0018 00008002ffeefe16 0000000000000000
  (XEN)    00008002ffee7b10 00007f000021ab3c 00008002ffee7e40 00007f0000277c84
  (XEN)    00008002ffee7ea0 000000005a000ea1 00008002ffee7f20 00008002ffeef000
  (XEN)    000000005a000ea1 ffffffc0117cc000 00007f00003190a4 00007f0000319080
  (XEN)    000000000000001b 00008002ffee7c20 00008002ffee7b90 00007f000026e27c
  (XEN)    0000000000000000 00007f000026e384 00008002ffee7bd0 00007f0000269f88
  (XEN)    000000000000001b 00007f0000329000 00008002ffee7c20 0000000000000000
  (XEN)    0000000000001fff 0000000080000249 00008002ffee7c10 00007f00002797cc
  (XEN)    0000000000000010 000000005a000ea1 00008002ffee7d28 0000000080000249
  (XEN)    000000005a000ea1 ffffffc011603ba8 00008002ffee7d40 00007f000026232c
  (XEN)    00008002ffee7c50 00007f0000270a68 00008002fffcd000 00008002ffeef000
  (XEN)    00007f0800e4d0a8 00008002ffeef000 00008002ffee7c70 00007f0000223f48
  (XEN)    00008002ffee7c90 00007f0000224264 00007f00002bfa20 00008002ffee7dca
  (XEN)    0000000000000000 00008002ffee7dca 00008002ffee7cb0 00007f00002242dc
  (XEN)    00000000000002c0 00007f000024b068 00008002ffee7cd0 00007f000024b0c4
  (XEN)    000000000000000a 00007f000026ce54 00008002ffee7d40 00007f00002484c0
  (XEN)    000000000000000a 000000005a000ea1 00008002ffee7d20 00007f0000224264
  (XEN)    00007f00002bf950 000000005a000ea1 000000000000000a 000000000000000a
  (XEN)    00008002ffee7d40 00007f00002242bc 000000000000000a 00000000000002c0
  (XEN)    00008002ffee7d50 00007f000024946c 00008002ffee7e40 00007f0000277cc0
  (XEN)    00008002ffee7ea0 000000005a000ea1 00008002ffee7f20 00008002ffeef000
  (XEN)    000000005a000ea1 ffffffc011613d40 ffffffc011713878 0000000000000059
  (XEN)    00008002ffee7dc0 00007f0000223f48 00008002ffee7de0 00007f0000224264
  (XEN)    00008002ffee7de0 00007f0000223f48 00008002ffee7e00 00007f0000224264
  (XEN)    00008002ffeefe10 00008002ffeef000 00007f0000318288 0000000000000004
  (XEN)    00008002ffee7e20 00007f00002242dc 0000000000000240 00008002ffeef000
  (XEN)    00008002ffee7e40 00007f000027c484 0000000000000004 0000000000000000
  (XEN)    00008002ffee7e70 00007f0000279400 00008002ffee7ea0 000000005a000ea1
  (XEN)    00008002ffee7fa8 0000000080000005 ffffffc01187bd30 00007f0000262480
  (XEN)    0000000000000000 ffffffc0117d2000 ffffffc01187bd30 00007f0000262474
  (XEN)    0000000000000007 ffffffc01187bd80 00000000001a01db 0000000000000005
  (XEN)    0000000000000005 ffffffc011802880 ffffffc0118028e0 0000000000000018
  (XEN)    0000000020000000 ffffffc010021d1c ffffff81bfcabb90 0000000000000040
  (XEN)    0000000000000000 00000000000003da ffffffffffffffff 000000003be6b29d
  (XEN) Xen call trace:
  (XEN)    [<00007f000027540c>] get_page_from_gva+0x30c/0x334 (PC)
  (XEN)    [<00007f000027540c>] get_page_from_gva+0x30c/0x334 (LR)
  (XEN)    [<00007f000026cc44>] guestcopy.c#copy_guest+0x198/0x2ec
  (XEN)    [<00007f000026ce54>] raw_copy_from_guest+0x20/0x28
  (XEN)    [<00007f000021ab3c>] do_memory_op+0x1104/0x24c0
  (XEN)    [<00007f0000277c84>] traps.c#do_trap_hypercall+0x120/0x288
  (XEN)    [<00007f0000279400>] do_trap_guest_sync+0x448/0x63c
  (XEN)    [<00007f0000262480>] entry.o#guest_sync_slowpath+0xa8/0xd8
  (XEN) 

I can match the hypervisor trap with the Linux kernel function
xen_guest_init() in arch/arm/xen/enlighten.c:

  static int __init xen_guest_init(void)
  {
    struct xen_add_to_physmap xatp;
    ...

    shared_info_page = (struct shared_info *)get_zeroed_page(GFP_KERNEL);

    if (!shared_info_page) {
            pr_err("not enough memory\n");
            return -ENOMEM;
    }
    xatp.domid = DOMID_SELF;
    xatp.idx = 0;
    xatp.space = XENMAPSPACE_shared_info;
    xatp.gpfn = virt_to_gfn(shared_info_page);

    if (HYPERVISOR_memory_op(XENMEM_add_to_physmap, &xatp))
            BUG();
    ...
  }

My understanding is the local variable 'xatp' is located in the stack
and the stack is located in the intermediate physical address
0x1_a017_1000. Thus, when copies the structure 'xatp' from Dom0 to the
Xen hypervisor, the hypervisor detects the IPA is not managed by its
frame table.

This is because the memory range [00000001a0000000 - 00000001bfffffff]
is the reserved region so Xen hypervisor doesn't populate this region
and the frame table doesn't initialize for it.  On the other hand,
this memory range is passed to Dom0 Kernel as _normal_ memory region
and the kernel allocates pages from this memory region, same with
other memory regions.

[...]

> > ## Fixes
> > 
> > I think it's wrong to add the reserved memory regions into the DT
> > binding as normal memory nodes for Dom0 kernel.  On the other hand, we
> > cannot simply remove these reserved memory regions and don't pass to
> > Dom0 kernel - we might reserve memory for specific purpose, for example,
> > ramoops [1] for kernel debugging.
> > 
> > The right thing to do is to keep these reserved memory nodes to Dom0
> > kernel.  So one task is to record properties for these reserved memory
> > node name and properties and pass to Dom0 kernel.
> > 
> > The difficulty is how we can avoid allocate these reserved memory
> > regions in Xen hypervisor.  We cannot register the reserved memory
> > into the boot pages, otherwise, the reserved memory might be allocated
> > in the early phase.  But we need to register these pages into the
> > frame management framework and reserve them in the first place, so
> > that we can allow Dom0 kernel to use them.  (I checked a bit the static
> > memory mechanism, seems to me we cannot use it to resolve this issue).
> 
> From my understanding reserved region are normal RAM which have been carved
> out for specific purpose. They may expect different caching policy (e.g.
> non-cachable).

Yes, I agree, but we cannot assume the mapping attribution is always
non-cachable. It can be mapped as normal type, or device type (with and
different variants, like strong ordered, write-combined, etc).

> AFAIK, Xen doesn't have the capability to know the memory
> attribute (the DT binding only tell whether the region should not mapped.
> See the property "no-map"), hence why they were excluded from the memory
> management.

I think it's right to exclude the reserved memory regions from the
normal memory management.

Here the problem is these reserved memory regions are passed as normal
memory nodes to Dom0 kernel, then Dom0 kernel allocates pages from
these reserved memory regions.  Apparently, this might lead to conflict,
e.g. the reserved memory is used by Dom0 kernel, at the meantime the
memory is used by another purpose (e.g. by MCU in the system).

Here I am a bit confused for "Xen doesn't have the capability to know
the memory attribute".  I looked into the file arch/arm/guest_walk.c,
IIUC, it walks through the stage 1's page tables for the virtual
machine and get the permission for the mapping, we also can get to
know the mapping attribute, right?

Another question for the attribute for MMIO regions. For mapping MMIO
regions, prepare_dtb_hwdom() sets the attribute 'p2m_mmio_direct_c'
for the stage 2, but in the Linux kernel the MMIO's attribute can
be one of below variants:

- ioremap(): device type with nGnRE;
- ioremap_np(): device type with nGnRnE (strong-ordered);
- ioremap_wc(): normal non-cachable.

If Xen hypervisor can handle these MMIO types in stage 2, then we should
can use the same way to map stage 2 tables for the reserved memory.  A
difference for the reserved memory is it can be mapped as normal memory
with cacheable.

> It would be good to understand why Xen may try to get a reference on the
> page.

I think the above log can answer this question.

> Also, can you find the associated reserved-region and content of the
> Device-Tree?

The DT binding is something like (I tweaked a bit for readable):

	memory@20000000 {
		#address-cells = <0x02>;
		#size-cells = <0x02>;
		device_type = "memory";
		reg = <0x00 0x20000000 0x00 0xa0000000>,
                      <0x01 0xa0000000 0x01 0x60000000>;
	};


	reserved-memory {
		#address-cells = <0x02>;
		#size-cells = <0x02>;
		ranges;

		reserved_mem1 {
			reg = <0x00 0x20000000 0x00 0x00010000>;
			no-map;
		};

		reserved_mem2 {
			reg = <0x00 0x40000000 0x00 0x20000000>;
			no-map;
		};

		reserved_mem3 {
			reg = <0x01 0xa0000000 0x00 0x20000000>;
			no-map;
		};

		reserved_mem4 {
			reg = <0x00 0x2e000000 0x00 0x02000000>;
			no-map;
		};
        };

Thanks,
Leo


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 10:33:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 10:33:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603550.940576 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhSc0-0007T2-LM; Sat, 16 Sep 2023 10:33:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603550.940576; Sat, 16 Sep 2023 10:33:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhSc0-0007Sv-Hn; Sat, 16 Sep 2023 10:33:16 +0000
Received: by outflank-mailman (input) for mailman id 603550;
 Sat, 16 Sep 2023 10:33:14 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JNh2=FA=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qhSby-0007SW-M9
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 10:33:14 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20600.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6ea463a2-547c-11ee-9b0d-b553b5be7939;
 Sat, 16 Sep 2023 12:33:11 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by BN9PR12MB5292.namprd12.prod.outlook.com (2603:10b6:408:105::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Sat, 16 Sep
 2023 10:33:06 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Sat, 16 Sep 2023
 10:33:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6ea463a2-547c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=L6MdulTHMjmfnKMNO4ZXElH2eJwLvd5+bJfuaVEqMYPFphACW4rNe7Bov3R2FnnIXHfcIXQ7gZTHMN8cH6Bujx+eamYgNqNUHSR0tJeACdJrPLPv2YqosnuefKiLW3LS74QZl1YPBjXUHixIhr8Pk0vuEOBosvX4rstxVcIqr+FbH6oUHOzB0KUoPZSNGakQUraLxRBtYwvnCGTTA3+8Bbj+Pgwa3ZH+Qxz4lL5lHjPbaaxROBEmDW5DGs3zDa+z8wFD7EIpt3ZN1TJxc3pRTZCBHfSBQgxgssyguJr6H9u4YqTjfYyu2wirbI/b5zxbXruHCWS0YKlP35dBHzBiDw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dsvEVklb27yICg9NOj/RmbVN0fwndIiYt1iCTi16vVU=;
 b=Wf868VRVTl3upXEUNr1iGKNcQRYy5/lCEv4S9nRBVCOp9OFrKqAiDEcfNe0Sa0mYC8Urej2k9D7f/hAKojYkm7xsUj1QVNoj8oSUj34szjWMhPrch9ZvdtzcQUoGJhrGXjInvdx5zLpfiXPx7t9hX0mRcb31XynfcaJSpdUX+Wf6PvY2E1oehg+RMn3AE/X+NBKEwTWUhwNmFOvIS9P7LYEnoFV4RZagdMnHit7biXbI7I74Gzo1LLEl7ERPaLyw1QsP6GEdg1ssRtPM3+6SjOQERafKUEs2AWsy7C7F2usQ1uvI0AEnIWDnxssNvwkXY+29dMY+mAXasgS146GQug==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dsvEVklb27yICg9NOj/RmbVN0fwndIiYt1iCTi16vVU=;
 b=ZFJpmcF+8uWfHty1vDiIziZYbdXQ/RkjVPcVdgUhWtNAz9u3icUpqkYcilGODN3tLIMPTJWDNb2HhmV5LIlbmMMJJVR1j3P39ruG6xH6A8XOjqqRuDyLqtjJC0/FlTre1EVHKa+DWxPb6DwmbryDPCwYcCBrYzzGF1mRlSb5ZCE=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Sat, 16 Sep 2023 18:32:35 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 06/13] virtio-gpu: Support context init feature
 with virglrenderer
Message-ID: <ZQWEQ9ZHkokhKOSA@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-7-ray.huang@amd.com>
 <561abf48-d72c-467d-94fd-54ffa1dfb512@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <561abf48-d72c-467d-94fd-54ffa1dfb512@daynix.com>
X-ClientProxiedBy: SGXP274CA0009.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:b8::21)
 To SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|BN9PR12MB5292:EE_
X-MS-Office365-Filtering-Correlation-Id: c3ef947a-c79d-4977-2f03-08dbb6a04f5a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	CQe0PpzYtiICKJkQ60SA6zaFy0I1J1S+o76I+VLp42nUBhzEdgdf3SZaXSW2TDi1pLGoqa9viyG4RedeLhbi1kiSB9tMRGZDoKM88ox9Te9O/Leh7YqVT4Dxpy3JL1Hc8FTVrXQTtTR5fHh0ZEhHomw/vSrxDCgYG+tRadZHisvCTwRz2C6MaEN7y8Wi3/DiyQp9+8WwN/V2zCC+vzkRe+oTk5GCJWYgh3raHp1r7ukYK1J6ScB9T1X+59tdCfukiphNwN2QWTIK2hOzRDIC7WyMVft6XC2GVqgVSqXj2FaQgEo/ai4ZCAhMzxChOC2+BCq2fGZB3nFk8YnUiV3FImNrcgSqI2ghVGqUSYfTuAG0cOhcAlu59DqQvwOijbwbUPKdlu7BYY7xhf2ZHvZmBY+1KRAzQXiRbcX//iCyrW0reTFkqE4idAbqKu2ZlodApOx5c8Wma2MsuoanPWVply8EaKgi0U0RdcvSyvPG6rmOU2baocJ+e9w+fL1EuL+LsYQa0R9YAN8WQY9QvNn2M0+S3FWqyZ03raXbNvZw6dk=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(366004)(346002)(376002)(136003)(1800799009)(451199024)(186009)(6486002)(6506007)(53546011)(6512007)(6666004)(66899024)(38100700002)(36756003)(83380400001)(26005)(2616005)(2906002)(8936002)(86362001)(41300700001)(7416002)(4326008)(8676002)(316002)(54906003)(66556008)(6916009)(66476007)(66946007)(478600001)(966005)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?olTEiYuHeZvAFqutQtT48QNP3sDv1DKKPc6QI2XfyNjzzatWN6S5YWDZvugK?=
 =?us-ascii?Q?HzCP1GvGce5m4z43Nipd7QfOMXf13fo6V8gZNRvu9Dav+p/ga6hFFJSFpTv9?=
 =?us-ascii?Q?YhE0auUeyVts71sPfa9o0cVYM5QNHSiNoMtwOfQu2LmZw7aHXSqMSmUMjNPL?=
 =?us-ascii?Q?WL3lANDBI9eFx8vf/2A0eAiibMcgPAIZQn4Y0OQwaeorBDewGfavA8cG0Oiy?=
 =?us-ascii?Q?50vXr0TdNBm76EUkdJ9p5M2WTkamKebbTRoVyeZSwKYpb7+0Ezc+vybSZ6Ty?=
 =?us-ascii?Q?c68swv8lawOCivOsw6Fl/iK5f0qMqp++URLbQaMHLnE3Pvccv1QDKPn+/Z2m?=
 =?us-ascii?Q?qyGYV383+2esiR1CVVwuAFtJS3ah1RJzciL+yZht3or0b2fB4hwlpU98j+FW?=
 =?us-ascii?Q?VI6PA7egG0nWt9nnv4diOSG711uvtAl0GvBd/VVKD2xoLC51T6z3/6oqbPLf?=
 =?us-ascii?Q?wNYnf8knwvbvvqnJrrbbJtJr+1FMi3gvHJp6yUvme2cYV1ZDof62fPZCgO8W?=
 =?us-ascii?Q?ZcWnFzbl2xDa/368XRriJE7PUg/pCnZmzWeXHi/Qc7MV8+HrlNZRYGUcgDJd?=
 =?us-ascii?Q?NPcnT4xfPvgNLB6vkpzotDaLTxeDiprKl9IjwgP78SUTPTKpdCOYp1dxVQ+C?=
 =?us-ascii?Q?S6EVRIc9h2vc4VfXhuhb9xjTvdbBCy7X/Wq5NKNA+TbjrOoRJmj5Inl/36F6?=
 =?us-ascii?Q?S0O/5AdkhllTVvulmuTznp7RMUjePs0cL8N/PfDTpYS7pkt+rEuqqWR3NFPV?=
 =?us-ascii?Q?xPI0ylmECY05Lvy0WszOzIhcxtx3FZGDT3nILMecu5yeYs9H7Z9HVHvPBll3?=
 =?us-ascii?Q?kNTwtb7Kx0Chvs2+m1rz7JS+ysWV98UuU0svv1OTf64vnI8kyZxJ6KqDNkDw?=
 =?us-ascii?Q?44xQa9kYrhwYj2lKJoUXLWYO1ykfqmVjlZic41LoqyBTvJzu8UuQsfZDq5l9?=
 =?us-ascii?Q?BeuQFoMfVAEPgVa19P10x8slQOL0tsODnE8vtI/Oh7Iw4fZgmtwe6QHKjFM6?=
 =?us-ascii?Q?gdla0UI+ymQpb5tCJA/o6jZShyX6Tfc5QRMYsmL7bqKdNy4pfRGy887wdJmu?=
 =?us-ascii?Q?hLbQq1TsFRkNLkcs2P3xEiVx6M3Cvd+q4IQDRHMR5CFhXHuSIgq7c35Hpog6?=
 =?us-ascii?Q?e6VK2N2sYWn0ZyaNoOsVgJ8U5FeLBh7vhS97mC4xGs8L5VjPxP7rRmquTjoo?=
 =?us-ascii?Q?JkIP4lon14IcF+nT2BLxHdGKAq9nEePJ7O03dTcuxzYJ9t0R/O5inwO0AHUd?=
 =?us-ascii?Q?xVaZuR7sNuBbyAU6d4OHmUh5y6wwFZdm15X659l21EVY0wldCHeKMCtxwmio?=
 =?us-ascii?Q?JfZrSkcn8ruJxlmNqq9PDl6KRdu6tNtB0eO/51ENQkVXcGy4INbtF22+WeCj?=
 =?us-ascii?Q?yml/PO4tRxN2T/ZEMMyCWuFkOGJA9Vhf+Lbwajcq56W0JY4+LkwNKdeuL7eS?=
 =?us-ascii?Q?ntDKP8T5Xjlf7a4DwN+jfbqfS+pUdKmihG4P5g7XHWj1oTW8da2HZ1WJAZbt?=
 =?us-ascii?Q?keHUXl/0bQdKwj2H31rtGCa//0C7Txq2zUKuthjJTSTsBV9keL45Fv5XOGCe?=
 =?us-ascii?Q?Pz7lJsWyWCGUFRKk87iR5KueLWeUgtDYXEZmQoyk?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c3ef947a-c79d-4977-2f03-08dbb6a04f5a
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Sep 2023 10:33:05.2962
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: cPsaDzpzlLm20+waFZ6jbVF/vfvaKY6URQowGQhYg/pCWiw4XqE75VMAeUw6RkmjUQjWdFx9UesMnB6UZixh3w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5292

On Fri, Sep 15, 2023 at 11:20:46PM +0800, Akihiko Odaki wrote:
> On 2023/09/15 20:11, Huang Rui wrote:
> > Patch "virtio-gpu: CONTEXT_INIT feature" has added the context_init
> > feature flags.
> > We would like to enable the feature with virglrenderer, so add to create
> > virgl renderer context with flags using context_id when valid.
> > 
> > Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> > 
> > V4 -> V5:
> >      - Inverted patch 5 and 6 because we should configure
> >        HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
> > 
> >   hw/display/virtio-gpu-virgl.c | 13 +++++++++++--
> >   hw/display/virtio-gpu.c       |  2 ++
> >   2 files changed, 13 insertions(+), 2 deletions(-)
> > 
> > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> > index 8bb7a2c21f..312953ec16 100644
> > --- a/hw/display/virtio-gpu-virgl.c
> > +++ b/hw/display/virtio-gpu-virgl.c
> > @@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
> >       trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
> >                                       cc.debug_name);
> >   
> > -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
> > -                                  cc.debug_name);
> > +    if (cc.context_init) {
> > +#ifdef HAVE_VIRGL_CONTEXT_INIT
> > +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
> > +                                                 cc.context_init,
> > +                                                 cc.nlen,
> > +                                                 cc.debug_name);
> > +        return;
> > +#endif
> 
> This should deal with the case when context_init is set while 
> HAVE_VIRGL_CONTEXT_INIT is not defined.

Actually, I received the comment below before:

https://lore.kernel.org/qemu-devel/32588d0e-a1f2-30c4-5e9f-e6e7c4190b65@linaro.org/

At original patch set, I have the case while HAVE_VIRGL_CONTEXT_INIT is set
but HAVE_VIRGL_CONTEXT_INIT is not defined. But I think we may encounter
the case that virgl_renderer_context_create_with_flags is not defined in
virglrenderer early version. Should I bring the error message back?

Thanks,
Ray


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 10:37:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 10:37:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603556.940586 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhSfm-0008Kw-4u; Sat, 16 Sep 2023 10:37:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603556.940586; Sat, 16 Sep 2023 10:37:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhSfm-0008Kp-1C; Sat, 16 Sep 2023 10:37:10 +0000
Received: by outflank-mailman (input) for mailman id 603556;
 Sat, 16 Sep 2023 10:37:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JNh2=FA=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qhSfl-0008Kj-Lp
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 10:37:09 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20623.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::623])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fb65ba7e-547c-11ee-9b0d-b553b5be7939;
 Sat, 16 Sep 2023 12:37:07 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by BN9PR12MB5292.namprd12.prod.outlook.com (2603:10b6:408:105::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Sat, 16 Sep
 2023 10:36:58 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Sat, 16 Sep 2023
 10:36:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fb65ba7e-547c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HYSGu3CrWw6gARHce09vOajteZ9S8srHKT1Xe2TzDxFWgA8OoK1E95hYwjJ6NkjWALAVa8URKR0fZ4S3C6lfo2WEfSkmuUpQ/C8Ek68LbhyMr90XxYXh+YV3y4/qp2gAbDAM7pU4l7LeOKxgekNTvKiCsf/SWR9VsFKh+NuFLm/rkjSsKDWPDNF4WAwMamxjTtY6IsGX1uyj431NhNPBn+LsnoVdDhnFFda3QU+9z9yERKnjPTC7BgSG4Yw26LZAgNkSKZGgZ4Sw/jgoacyIHCHOgR6tElrIBDTaqJoGzFnNGELTzPHQta/1hB52+HUON7fAuGFuvi47hhT+jmE1EQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=P+YAeIhE79Tdyh4UChFST6MFzOP1UNgLVHGwu57RtmI=;
 b=cFrItww3QdflLknNQ2/g7KftOICM6UrihyN80XxV3qkYJGuy72Y6WPDeUu3lLA2vMK5pJvGon8t7jjG9lF2QJDYA0L/LDIfpc14QXrgtQGC39JhSFh14UEPMj0QrjbK/cDtP1aKxRD0Oq87+7/VNikE0YRR2Zhavbxe0iN86jBa6jbSROv5sIGWA1UzBZc06k+7gerZSmBlEWaFrYrPWkp94LbMQnYyQZc51lDUlxgm7TvB0Bi5M+y1k1u5YfD16x2uAZfO9bJ+zrIiWCueXHCRjjBUttqV+Tm8fCmC4SIGLzGC5Ne0z58WZZ9hAwDCaUzn+8cMrajVUnD0vNf4urw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=P+YAeIhE79Tdyh4UChFST6MFzOP1UNgLVHGwu57RtmI=;
 b=sdbWjfZtaZQ9gFaNQKmdfAr16uL/O7UwVr4G7LQavuojgEMMIHf8JLmjN36OXgP3IGZFXc/qI+2cr0iMvtSm8gsnWwFPfqaFAAAj7HkdQbVcEQBFO2B0vVZGtxUUJO2pzOZwBEtyqR4bO7WD+CFQ88sCBvmiQDI/2o6/PrsWmgw=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Sat, 16 Sep 2023 18:36:30 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 06/13] virtio-gpu: Support context init feature
 with virglrenderer
Message-ID: <ZQWFLiQk29Z6D1nS@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-7-ray.huang@amd.com>
 <37ed7472-428f-4a5a-8ac9-fd2a7ab05691@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <37ed7472-428f-4a5a-8ac9-fd2a7ab05691@daynix.com>
X-ClientProxiedBy: SGXP274CA0014.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:b8::26)
 To SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|BN9PR12MB5292:EE_
X-MS-Office365-Filtering-Correlation-Id: 7c6ede19-93e8-4724-7b31-08dbb6a0da6c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gkuBJQ41XyyDxXnwsBgZjho7/50plfQuV+3PAYlPl3LvVYqFsNEvLCFGVfOjoLN5i/Gy/g10j72EGxYAnu28K0R3AUwf4yxr0w7JlyiWhMK/SwhlwFrMWf94j3pKifXh0qda7wKunhsKGl+ZBVWRV2aBEyToRQl73pN4pzFFhfjDP2hHxO3Kj5ng9oNHQSvHvVoI5RoC3c9z7CRQ9VbOMYg/Qq1pIC7vpuvH/Iig+deosnMwdt7yeDN7ie2XrVCwhmjEyvdYggBxF4TEIDQI/pcoN23sYAw9/9rKQh7JP27lVGUV+WcY1KN4ShruIzI3k3+xsxybeuY8jkvP59pvK+pkSc22+n1Fz46PjjPVFDEYeZMYzcSPZIpr3Jb3mhucatYLq3e3BrF2C3VohGAECy+WWXmIICIJcFulAJNA7ehBkW9b9JFatgNw1gwLKxBrZ/QCAPyTSg8MKCfAqF75d8Ut4382fDGh4/ZVk6NBof1B6hN0OnAiBUuGCcxIn/ukmZI2KBFsTCDzKiuYYqMAmvfx1sU/bSgcHVg1DUrm7YM7SW4PjgSZ9w+Fxnck8a7B
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(366004)(346002)(376002)(136003)(1800799009)(451199024)(186009)(6486002)(6506007)(53546011)(6512007)(6666004)(38100700002)(36756003)(83380400001)(26005)(2616005)(2906002)(8936002)(86362001)(41300700001)(7416002)(4326008)(8676002)(316002)(54906003)(66556008)(6916009)(66476007)(66946007)(478600001)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?v6b7rycCLR+4bS89xn82xK+4sJuAxgnOfA3+BlUrucMgGbkdRuFrO/aHuCRN?=
 =?us-ascii?Q?3v2sof30lMry14CjJU2m0bT1lg5NFmR7Dy/Qm+mdsfX1vwf6KifLSwfwJQG/?=
 =?us-ascii?Q?BeH7q1p8pnr04Sk2zX3odE35OMhKu1sHMyUJTl+d5M8V2m5RCxRwhpOMgABB?=
 =?us-ascii?Q?iELHzOqgkmS1ZRO2V031NlyNaMJ6ZyTS1eBAFqOTQMFwIbgn5BBhyVa63mwN?=
 =?us-ascii?Q?oGDH6/nIgqMXBMsK4FM0zIX0dM9xPOKol4oqg30SMWM6uDAG9ufT3tV1wEVA?=
 =?us-ascii?Q?EzDyMoFNZEvMOzS1WY7L/R0W0DIIVNzE6A1eRDGj2Dbb2EFtPlx+g4EAd/b7?=
 =?us-ascii?Q?60zEiGpv95/t5cofxahDnOsBAUGyFbl9O8t2rpPP3PyV3mHicEl94K5kh/E+?=
 =?us-ascii?Q?je/pVwASR3UlesDAvYJBSE6Ph9QM2Vu8Ob69r+akB1uYqZaYP56T3X2vHDPB?=
 =?us-ascii?Q?HSA/XGycnxv1jOUa4yGJ04VTKXBDSPSVim1qTVIrvo2ShNVd8FI2gXmcscFH?=
 =?us-ascii?Q?vv/SsqzEyGFrva/3FQq9xd5UwGqni6TuXuILZkOxB8qHKCILM4MYebi7H4iH?=
 =?us-ascii?Q?/jMDDEw+eaMKrPWwk8JZIqD0g1WxG2Wvnh6vSAWCwR2K0HRPJuD04NHUFM3i?=
 =?us-ascii?Q?PSIJou/3LrkxTz49tECeXluDAo6IKlDEiXr3GFdgP4/af5RWXuY21DzPFcM0?=
 =?us-ascii?Q?3Kp9EXcV5WrIyiapXWWtmJQhQtS54tNAXer94iTJu36O9WfDSH8mb/isphtl?=
 =?us-ascii?Q?I+kG9LKikZ38ga+q7XHKsH9zebU+xDynRBUUEcCFO2fiNGb5SXBLUZvrrPvB?=
 =?us-ascii?Q?5+43rflpHRW1Zvj2KdaYKXHQ94pnOuMQqUKYw3ASW96aD2S1f71plDxFs23M?=
 =?us-ascii?Q?TzfnwnN/dmmBCkxupTdkQ8eVPeR/t9h3VDfvj7NCZrMzQqT/KdhoxlOfh74F?=
 =?us-ascii?Q?6RQgW6ysHg0zE5SOP7YDcH0traDQLMl/Exny3YB6F1Ckx1378QprpK4KDi0E?=
 =?us-ascii?Q?U0tyJrRsQRtjAnqJqBu5XUTs9rZwEIod1Pa4MXKXG7dIOo/HC++AQAJc7qYH?=
 =?us-ascii?Q?xhvBFpee9dkZZaURgvanij2Ooh6QHsPlcSanoFkCWx0c5DlVG9GFusLe1CYV?=
 =?us-ascii?Q?JseeqAL9eclYhbhT59mPX8adB/xRGeJn+o1ak0ch9NRRZfS9Z2j2Z9ZncW49?=
 =?us-ascii?Q?GWS6mvteBGaBacM29zzOrkzvYCKXM7p+wNwWGUtOaH0/IAsOFzgDaPrI9bVv?=
 =?us-ascii?Q?l5jTnVCyWLFnKvgkKqRXX1Rd/bF8zErZXqwEs9g35l4CrROMAoJYLinflug3?=
 =?us-ascii?Q?iCaf6c8yBdzl4wODlmXMSRVi3WDuhsLEfFm93lZLVxzeUlkw3/HVDAKZ1vt+?=
 =?us-ascii?Q?Dz3CJmTWFPA3ROHl4UGGkeh3HmiOMSwtFEr2vdnCnWa7wcGE0wTD1/SVC7LK?=
 =?us-ascii?Q?fKwRn8lWAmFtdj5CSY7VdYS6kENcrhYLInH7zQiBwueC9GL4gDXSAbFhlf5Y?=
 =?us-ascii?Q?mrUUVxkmuNWk5xSlb67JbhnCuTlTnYCta5rLLzmtlRoXuQ6fb/sDcFI8kAPG?=
 =?us-ascii?Q?Wp/+BSa+bTlL3+g4GvhUwuSqRNp3sMfUsqLiAxRp?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7c6ede19-93e8-4724-7b31-08dbb6a0da6c
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Sep 2023 10:36:58.1188
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: DO+ey5sHLQKNc0EU5br4Qgvc6YLbdBCI7CWRz+MtWQteJaGG8OcboWNGovgW08Sq2ALAI4xx91HLI/d3a1Gn5g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5292

On Sat, Sep 16, 2023 at 12:58:31AM +0800, Akihiko Odaki wrote:
> On 2023/09/15 20:11, Huang Rui wrote:
> > Patch "virtio-gpu: CONTEXT_INIT feature" has added the context_init
> > feature flags.
> > We would like to enable the feature with virglrenderer, so add to create
> > virgl renderer context with flags using context_id when valid.
> > 
> > Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> > 
> > V4 -> V5:
> >      - Inverted patch 5 and 6 because we should configure
> >        HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
> > 
> >   hw/display/virtio-gpu-virgl.c | 13 +++++++++++--
> >   hw/display/virtio-gpu.c       |  2 ++
> >   2 files changed, 13 insertions(+), 2 deletions(-)
> > 
> > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> > index 8bb7a2c21f..312953ec16 100644
> > --- a/hw/display/virtio-gpu-virgl.c
> > +++ b/hw/display/virtio-gpu-virgl.c
> > @@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
> >       trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
> >                                       cc.debug_name);
> >   
> > -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
> > -                                  cc.debug_name);
> > +    if (cc.context_init) {
> > +#ifdef HAVE_VIRGL_CONTEXT_INIT
> > +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
> > +                                                 cc.context_init,
> > +                                                 cc.nlen,
> > +                                                 cc.debug_name);
> > +        return;
> > +#endif
> > +    }
> > +
> > +    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen, cc.debug_name);
> >   }
> >   
> >   static void virgl_cmd_context_destroy(VirtIOGPU *g,
> > diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> > index 3e658f1fef..a66cbd9930 100644
> > --- a/hw/display/virtio-gpu.c
> > +++ b/hw/display/virtio-gpu.c
> > @@ -1506,6 +1506,8 @@ static Property virtio_gpu_properties[] = {
> >       DEFINE_PROP_BIT("blob", VirtIOGPU, parent_obj.conf.flags,
> >                       VIRTIO_GPU_FLAG_BLOB_ENABLED, false),
> >       DEFINE_PROP_SIZE("hostmem", VirtIOGPU, parent_obj.conf.hostmem, 0),
> > +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
> > +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, false),
> >       DEFINE_PROP_END_OF_LIST(),
> >   };
> >   
> 
> I think it's more convenient if this feature is enabled by default.

Yes, I will update it in next version.

Thanks,
Ray


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 10:42:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 10:42:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603562.940595 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhSkj-0001NA-MP; Sat, 16 Sep 2023 10:42:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603562.940595; Sat, 16 Sep 2023 10:42:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhSkj-0001N3-Jl; Sat, 16 Sep 2023 10:42:17 +0000
Received: by outflank-mailman (input) for mailman id 603562;
 Sat, 16 Sep 2023 10:42:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9p/v=FA=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qhSki-0001Mv-TS
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 10:42:17 +0000
Received: from mail-pf1-x436.google.com (mail-pf1-x436.google.com
 [2607:f8b0:4864:20::436])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b206892f-547d-11ee-9b0d-b553b5be7939;
 Sat, 16 Sep 2023 12:42:13 +0200 (CEST)
Received: by mail-pf1-x436.google.com with SMTP id
 d2e1a72fcca58-68fdd5c1bbbso2150910b3a.1
 for <xen-devel@lists.xenproject.org>; Sat, 16 Sep 2023 03:42:13 -0700 (PDT)
Received: from [192.168.159.125] ([157.82.206.1])
 by smtp.gmail.com with ESMTPSA id
 d24-20020aa78e58000000b0066a4e561beesm4429037pfr.173.2023.09.16.03.42.06
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 16 Sep 2023 03:42:11 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b206892f-547d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694860932; x=1695465732; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=fMlMz/YYNDZAhuao03JJ46ovHxuLEAGPhfUj85JSgJk=;
        b=WB0BYrSRFStvN1cfAFDk67P+2Gnj/jN/+p+p67vKABtAlm4qoRFM5l9mw0ah8Avj5E
         gVww+bpz/dzoD+eq2gLLai6p1MYnofCUXou51XzRnlWbzvFu7tE707P/PSff1fvLZQcD
         6DQZG7a6EcT/2ko7Q7xpM1RlMl6AJVQ3RVv5ee0zTHFgBKA6nN2Ymd8SRljbU91JlpN6
         unJKGcxTBkaKXjrjngBGmUjdwGD8eXyLohB24DE7g4BcFQpesG4M+MlhguAt8WzimLF9
         tuQTWZu72TNXAhMT9iZReOxQxEoUe8c0dNGktASmoBHOqKWaDi8eTr8tVlfc2AnAIWjJ
         23vQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694860932; x=1695465732;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=fMlMz/YYNDZAhuao03JJ46ovHxuLEAGPhfUj85JSgJk=;
        b=qQgMvqDEyXeEePZR/QlQ/ScMY3tZHGiiDZGyhcB434EdxiKHpFZRjkeLK3O+MwnlJ9
         jBaEzSlC/aDbbL2tkXXbKv1OsBM2wE1TQ5CZEfjlpqhn8ucAKL5KPqEOSGiYCYHLo1YW
         VKKtxOnBCwhKUNEtdK59ONfwJYzjYNahoiPBMHYMG9mrx2scLQgqGZxHeQzpbfOSfRAd
         Xl7tQ/DyXW7RVA0L0FasMUFuJNWR09M/B9qJ+ALTH/GQD0ykBppJecw46rkiYdraDgcA
         CeR5H0cU0AIzqU8bt5cErS1MgC13/Byo8n2DgUclabcZvd6h2BFoXBtdNhF3EIjCRdig
         7WFQ==
X-Gm-Message-State: AOJu0YzWIo4ZJgiZsK7DsdtpfFTKcFCguH6ysAyN6zYfAeMTG+QF34j7
	dwFsTeW4ZKwCJIDWl4btWL85qg==
X-Google-Smtp-Source: AGHT+IFfWi26tA9JRMHYNtmN9NsNcAFqAiwUz8BoV78jy4UsxqwdKDvn+41U5SbJAzRkO8+gt4iZgA==
X-Received: by 2002:a05:6a00:8086:b0:68e:16ce:f2e3 with SMTP id eh6-20020a056a00808600b0068e16cef2e3mr10213797pfb.0.1694860932313;
        Sat, 16 Sep 2023 03:42:12 -0700 (PDT)
Message-ID: <d671bfad-7d78-41cf-a6f4-e92bf6ce2bd5@daynix.com>
Date: Sat, 16 Sep 2023 19:42:04 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 06/13] virtio-gpu: Support context init feature
 with virglrenderer
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin"
 <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, "ernunes@redhat.com"
 <ernunes@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?=
 <philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-7-ray.huang@amd.com>
 <561abf48-d72c-467d-94fd-54ffa1dfb512@daynix.com> <ZQWEQ9ZHkokhKOSA@amd.com>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <ZQWEQ9ZHkokhKOSA@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/16 19:32, Huang Rui wrote:
> On Fri, Sep 15, 2023 at 11:20:46PM +0800, Akihiko Odaki wrote:
>> On 2023/09/15 20:11, Huang Rui wrote:
>>> Patch "virtio-gpu: CONTEXT_INIT feature" has added the context_init
>>> feature flags.
>>> We would like to enable the feature with virglrenderer, so add to create
>>> virgl renderer context with flags using context_id when valid.
>>>
>>> Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>> ---
>>>
>>> V4 -> V5:
>>>       - Inverted patch 5 and 6 because we should configure
>>>         HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
>>>
>>>    hw/display/virtio-gpu-virgl.c | 13 +++++++++++--
>>>    hw/display/virtio-gpu.c       |  2 ++
>>>    2 files changed, 13 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
>>> index 8bb7a2c21f..312953ec16 100644
>>> --- a/hw/display/virtio-gpu-virgl.c
>>> +++ b/hw/display/virtio-gpu-virgl.c
>>> @@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
>>>        trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
>>>                                        cc.debug_name);
>>>    
>>> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
>>> -                                  cc.debug_name);
>>> +    if (cc.context_init) {
>>> +#ifdef HAVE_VIRGL_CONTEXT_INIT
>>> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
>>> +                                                 cc.context_init,
>>> +                                                 cc.nlen,
>>> +                                                 cc.debug_name);
>>> +        return;
>>> +#endif
>>
>> This should deal with the case when context_init is set while
>> HAVE_VIRGL_CONTEXT_INIT is not defined.
> 
> Actually, I received the comment below before:
> 
> https://lore.kernel.org/qemu-devel/32588d0e-a1f2-30c4-5e9f-e6e7c4190b65@linaro.org/
> 
> At original patch set, I have the case while HAVE_VIRGL_CONTEXT_INIT is set
> but HAVE_VIRGL_CONTEXT_INIT is not defined. But I think we may encounter
> the case that virgl_renderer_context_create_with_flags is not defined in
> virglrenderer early version. Should I bring the error message back?
> 
> Thanks,
> Ray

I suggest checking VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED instead of 
reporting an error here. Perhaps it may be easier to add #ifdef around:
 > +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
 > +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, false),


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 12:56:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 12:56:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603573.940606 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhUqm-0003NT-DK; Sat, 16 Sep 2023 12:56:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603573.940606; Sat, 16 Sep 2023 12:56:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhUqm-0003NM-9U; Sat, 16 Sep 2023 12:56:40 +0000
Received: by outflank-mailman (input) for mailman id 603573;
 Sat, 16 Sep 2023 12:56:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uTkj=FA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qhUql-0003NE-M7
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 12:56:39 +0000
Received: from mail-lj1-x235.google.com (mail-lj1-x235.google.com
 [2a00:1450:4864:20::235])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 782f977f-5490-11ee-9b0d-b553b5be7939;
 Sat, 16 Sep 2023 14:56:36 +0200 (CEST)
Received: by mail-lj1-x235.google.com with SMTP id
 38308e7fff4ca-2bcb0b973a5so47444931fa.3
 for <xen-devel@lists.xenproject.org>; Sat, 16 Sep 2023 05:56:36 -0700 (PDT)
Received: from [192.168.1.10] (host-92-12-44-130.as13285.net. [92.12.44.130])
 by smtp.gmail.com with ESMTPSA id
 h27-20020a170906111b00b009a1fef32ce6sm3777515eja.177.2023.09.16.05.56.35
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 16 Sep 2023 05:56:35 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 782f977f-5490-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694868996; x=1695473796; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=M7jgxxPuxbWU76KV3Hy7c5QtmjotxJWNHz+7GihJMaQ=;
        b=UfHeAZh0kDEBilKDXq6F4w8xl56K4/Y3F4FLnT16queD+y0WZoW96cpTRxRB1vmNCS
         Hiv6w+dTHXt+zIHAqnsZVSrvNjK2LIZ9FQ2uqcWLLtYxNWtTc9wALwOofCeAoY5c/Wdt
         QpSLu9CWv3kGn2q9yq8L6qCY7vG6TSZF02nJQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694868996; x=1695473796;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=M7jgxxPuxbWU76KV3Hy7c5QtmjotxJWNHz+7GihJMaQ=;
        b=bIYw4h3lW2yPgrtDBk4Uq7w5PiQIFLAbXLcxxTVkshQWxPgoqEsYOEj+AV6CdUdTML
         j9Md+/IPwYOlAaRk8etylfM79gcPf4O2kouAGZJCwWKQia4h+EikvCqH1gz8OrXEzNSk
         dM6twHIM3SxFo0CMESJ+DH3EmnlubXqsf0HknkAsbfAAEYzK0dWk+4GzCYQSSjpAa4ky
         QyxKtvpsVnItF4qOpQIr4I2pyQjhaoCyPpLhoGj3E5659a8Ve8Xcm3xLloVeonEvKeFE
         Z+nzVWB9uFkixHzT4P0Hjv56N/GbDMtXo3t8d1WwLYu96yZ3Rz3vbzeLxR1NSLxQwMCF
         l4Jg==
X-Gm-Message-State: AOJu0YxAfeNPI5BwGEFQPWb7D6qVUFqsrz70ffakPyEuVua7kE7FYPNl
	EvvqJGKNJaZMD6bswQPzLOCaiA==
X-Google-Smtp-Source: AGHT+IE47sHKYccZ3NTUWPcoonVCECEkqb9OHh5RB4wiRjGJTLWewkr/2JcaiCUjaGPs3K+Rbypy0w==
X-Received: by 2002:a2e:9297:0:b0:2b9:f13b:6139 with SMTP id d23-20020a2e9297000000b002b9f13b6139mr3970283ljh.20.1694868995737;
        Sat, 16 Sep 2023 05:56:35 -0700 (PDT)
Message-ID: <17514c61-a561-b5a7-8b8f-8c3d8dbd845f@citrix.com>
Date: Sat, 16 Sep 2023 13:56:34 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 7/7] x86/pv: Rewrite %dr6 handling
Content-Language: en-GB
To: Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-8-andrew.cooper3@citrix.com>
 <0aee121e-a2ac-1c6c-be33-59d842419708@gmail.com>
In-Reply-To: <0aee121e-a2ac-1c6c-be33-59d842419708@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 16/09/2023 8:50 am, Jinoh Kang wrote:
> On 9/16/23 05:36, Andrew Cooper wrote:
>> diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
>> index dead728ce329..447edc827b3a 100644
>> --- a/xen/arch/x86/traps.c
>> +++ b/xen/arch/x86/traps.c
>> @@ -1887,11 +1887,11 @@ void do_device_not_available(struct cpu_user_regs *regs)
>>  /* SAF-1-safe */
>>  void do_debug(struct cpu_user_regs *regs)
>>  {
>> -    unsigned long dr6;
>> +    unsigned long pending_dbg;
>>      struct vcpu *v = current;
>>  
>> -    /* Stash dr6 as early as possible. */
>> -    dr6 = read_debugreg(6);
>> +    /* Stash dr6 as early as possible, operating with positive polarity. */
>> +    pending_dbg = read_debugreg(6) ^ X86_DR6_DEFAULT;
> We don't reset DR6 after reading it, and there is no guarantee that the PV guest
> will reset it either, so it doesn't match PENDING_DBG exactly IIRC.
>
> On the other hand, nothing will probably care about its double-accumulating
> quirk except perhaps monitor users.
>
> Do we want to document that, shadow DR6 for PV (which seems a little overkill
> if we don't trap DR6 access from PV already), or just live with that?

Different DR6's.

This is Xen responding to a real #DB (most likely from a PV guest, but
maybe from debugging activity in Xen itself), and in ...

>>  
>>      /*
>>       * At the time of writing (March 2018), on the subject of %dr6:

... this piece of context missing from the patch, Xen always writes
X86_DR6_DEFAULT back in order to clear the sticky bits.

This behaviour hasn't changed.  Xen always sees a "clean" DR6 on every
new #DB.

For the PV guest, what matters is ...

>> @@ -1963,13 +1963,13 @@ void do_debug(struct cpu_user_regs *regs)
>>           * If however we do, safety measures need to be enacted.  Use a big
>>           * hammer and clear all debug settings.
>>           */
>> -        if ( dr6 & (DR_TRAP3 | DR_TRAP2 | DR_TRAP1 | DR_TRAP0) )
>> +        if ( pending_dbg & X86_DR6_BP_MASK )
>>          {
>>              unsigned int bp, dr7 = read_debugreg(7);
>>  
>>              for ( bp = 0; bp < 4; ++bp )
>>              {
>> -                if ( (dr6 & (1u << bp)) && /* Breakpoint triggered? */
>> +                if ( (pending_dbg & (1u << bp)) && /* Breakpoint triggered? */
>>                       (dr7 & (3u << (bp * DR_ENABLE_SIZE))) && /* Enabled? */
>>                       ((dr7 & (3u << ((bp * DR_CONTROL_SIZE) + /* Insn? */
>>                                       DR_CONTROL_SHIFT))) == DR_RW_EXECUTE) )
>> @@ -1990,24 +1990,23 @@ void do_debug(struct cpu_user_regs *regs)
>>           * so ensure the message is ratelimited.
>>           */
>>          gprintk(XENLOG_WARNING,
>> -                "Hit #DB in Xen context: %04x:%p [%ps], stk %04x:%p, dr6 %lx\n",
>> +                "Hit #DB in Xen context: %04x:%p [%ps], stk %04x:%p, pending_dbg %lx\n",
>>                  regs->cs, _p(regs->rip), _p(regs->rip),
>> -                regs->ss, _p(regs->rsp), dr6);
>> +                regs->ss, _p(regs->rsp), pending_dbg);
>>  
>>          return;
>>      }
>>  
>> -    /* Save debug status register where guest OS can peek at it */
>> -    v->arch.dr6 |= (dr6 & ~X86_DR6_DEFAULT);
>> -    v->arch.dr6 &= (dr6 | ~X86_DR6_DEFAULT);
>> -
>>      if ( guest_kernel_mode(v, regs) && v->domain->debugger_attached )
>>      {
>> +        /* Save debug status register where gdbsx can peek at it */
>> +        v->arch.dr6 = x86_merge_dr6(v->domain->arch.cpu_policy,
>> +                                    v->arch.dr6, pending_dbg);
>>          domain_pause_for_debugger();
>>          return;
>>      }
>>  
>> -    pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
>> +    pv_inject_DB(pending_dbg);

... this, which will merge all new pending bits into the guest's DR6.

If the guest chooses not to clean out DR6 each time, then it will see
content accumulate.

To your earlier point of shadowing, we already have to do that.  DR6 is
just one of many registers we need to context switch for the vCPU.

PV guests, being ring-deprivieged, trap into Xen for every DR access,
and Xen handles every one of their #DB exceptions.  This is one reason
why I split the work into several parts.  PV guests are easier to get
sorted properly, and patch 1,2,5,6 are all common improvements relevant
to HVM too.

~Andrew


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 13:11:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 13:11:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603579.940616 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhV4f-000690-Jg; Sat, 16 Sep 2023 13:11:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603579.940616; Sat, 16 Sep 2023 13:11:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhV4f-00068t-FX; Sat, 16 Sep 2023 13:11:01 +0000
Received: by outflank-mailman (input) for mailman id 603579;
 Sat, 16 Sep 2023 13:11:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V1Uw=FA=gmail.com=jinoh.kang.kr@srs-se1.protection.inumbo.net>)
 id 1qhV4e-00068n-DQ
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 13:11:00 +0000
Received: from mail-pj1-x1029.google.com (mail-pj1-x1029.google.com
 [2607:f8b0:4864:20::1029])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7974ea89-5492-11ee-9b0d-b553b5be7939;
 Sat, 16 Sep 2023 15:10:58 +0200 (CEST)
Received: by mail-pj1-x1029.google.com with SMTP id
 98e67ed59e1d1-273e1aec35aso2505121a91.1
 for <xen-devel@lists.xenproject.org>; Sat, 16 Sep 2023 06:10:58 -0700 (PDT)
Received: from [10.137.0.57] ([14.33.99.107]) by smtp.gmail.com with ESMTPSA id
 mp15-20020a17090b190f00b00265c742a262sm4487186pjb.4.2023.09.16.06.10.54
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 16 Sep 2023 06:10:56 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7974ea89-5492-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1694869857; x=1695474657; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to
         :content-language:user-agent:mime-version:date:message-id:from:to:cc
         :subject:date:message-id:reply-to;
        bh=MddOWg7qs5oTLc0qcBUzZzjKSZeRUr6MsoCHupLyQaM=;
        b=lFJ2kYrRik1WDT70p+f3F1kAlCp7pHXy5NLY/IKVTHQN+I7cNDpsoTFx+3tBMoCiGv
         hCgEfTuwbgSlDkfE1AaM5cKyfSTsLvAzLkpIvBdqdPEpGvREJnDLZYHQOEKJNde+HfbR
         hfpLagzHyax8I5jY/7vkqm8dX3hHCUSdRKbUGdtFgS9qTBTZ25faZUMMvu4lE1RqJihC
         WJHiCdZ/GbV3s42TsBRfMFQFw/0FAR9vERpMfPjkuozxMwWkNQ3xCFSbMeymOMS6vpLA
         QnKMrWDe1GwY1lLya3VRKcnIb4YmUcYwmZgZpcUp8ULMOlGNEEo5+UrXMgDNIjpFFTv5
         hr9w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694869857; x=1695474657;
        h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to
         :content-language:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=MddOWg7qs5oTLc0qcBUzZzjKSZeRUr6MsoCHupLyQaM=;
        b=erWg2hR9SL1AiS5n9PeYKz+hHiXDYZseiZi3vMAn1HzwPPmCMBIlMmD/JGfKssVlW8
         /61EKUaf5TRJILaMptZSzzIbuHHOzRLQa2TTK2jFRasrciQ7NwP7sy0DcssvmZcjqDP5
         4jRY1OtF5JC1vz4cqjC85waTtUoOsBCMcP9a1FlFUQO3kTkBiaBvTUvQR3sOqzHZXE3W
         aukRfRfWgAdgtU1Dx4IYan7v8tX86x2h4bVp+uFHGMA3jTrkRsYFoSGgLb4GuCKr4CKs
         iSU2Vk69NhHGOQFTFOL99PiftjSnYa21abG2UnQWZQlZiyKBi7Q6QWlVHdF/DwC4k/Sw
         gIrQ==
X-Gm-Message-State: AOJu0Yw+XkU2PD0S/auxltRdQLUHc3pTiQT3eyQcWLqTMvNtyZxzfYPj
	dSuDQBEH/9RdDK5XNihZjI8=
X-Google-Smtp-Source: AGHT+IEc5E7pZ5ne4UmyGvgVZXcgqiMrgbxmZOt/VQLspy23NCszKMsWe67zCsiaeTknw4MsVFRQpQ==
X-Received: by 2002:a17:90a:7483:b0:273:f584:40ca with SMTP id p3-20020a17090a748300b00273f58440camr3466936pjk.16.1694869856629;
        Sat, 16 Sep 2023 06:10:56 -0700 (PDT)
Message-ID: <4671299c-0fae-0744-cf53-0cce89bf764c@gmail.com>
Date: Sat, 16 Sep 2023 22:10:52 +0900
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-8-andrew.cooper3@citrix.com>
 <0aee121e-a2ac-1c6c-be33-59d842419708@gmail.com>
 <17514c61-a561-b5a7-8b8f-8c3d8dbd845f@citrix.com>
From: Jinoh Kang <jinoh.kang.kr@gmail.com>
Subject: Re: [PATCH 7/7] x86/pv: Rewrite %dr6 handling
In-Reply-To: <17514c61-a561-b5a7-8b8f-8c3d8dbd845f@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 9/16/23 21:56, Andrew Cooper wrote:
>> We don't reset DR6 after reading it, and there is no guarantee that the PV guest
>> will reset it either, so it doesn't match PENDING_DBG exactly IIRC.
>>
>> On the other hand, nothing will probably care about its double-accumulating
>> quirk except perhaps monitor users.
>>
>> Do we want to document that, shadow DR6 for PV (which seems a little overkill
>> if we don't trap DR6 access from PV already), or just live with that?
> 
> Different DR6's.
> 
> This is Xen responding to a real #DB (most likely from a PV guest, but
> maybe from debugging activity in Xen itself), and in ...
> 
>>>  
>>>      /*
>>>       * At the time of writing (March 2018), on the subject of %dr6:
> 
> ... this piece of context missing from the patch, Xen always writes
> X86_DR6_DEFAULT back in order to clear the sticky bits.

Oh, that'll do.

How come have I not seen this?  Maybe I was in dire need of morning coffee.
I assumed absence just from a missing context...

> 
> This behaviour hasn't changed.  Xen always sees a "clean" DR6 on every
> new #DB.
> 
> For the PV guest, what matters is ...
> 

(snip)

>>> -    /* Save debug status register where guest OS can peek at it */
>>> -    v->arch.dr6 |= (dr6 & ~X86_DR6_DEFAULT);
>>> -    v->arch.dr6 &= (dr6 | ~X86_DR6_DEFAULT);
>>> -
>>>      if ( guest_kernel_mode(v, regs) && v->domain->debugger_attached )
>>>      {
>>> +        /* Save debug status register where gdbsx can peek at it */
>>> +        v->arch.dr6 = x86_merge_dr6(v->domain->arch.cpu_policy,
>>> +                                    v->arch.dr6, pending_dbg);
>>>          domain_pause_for_debugger();
>>>          return;
>>>      }
>>>  
>>> -    pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
>>> +    pv_inject_DB(pending_dbg);
> 
> ... this, which will merge all new pending bits into the guest's DR6.
> 
> If the guest chooses not to clean out DR6 each time, then it will see
> content accumulate.
> 
> To your earlier point of shadowing, we already have to do that.  DR6 is
> just one of many registers we need to context switch for the vCPU.
> 
> PV guests, being ring-deprivieged, trap into Xen for every DR access,
> and Xen handles every one of their #DB exceptions.  This is one reason
> why I split the work into several parts.  PV guests are easier to get
> sorted properly, and patch 1,2,5,6 are all common improvements relevant
> to HVM too.

That confirms my knowledge.  Honestly if I got such a foolish remark
I would question the reviewer's understanding of PV mode (not that you did
anything wrong).  Sorry for wasting your time.

> 
> ~Andrew

-- 
Sincerely,
Jinoh Kang



From xen-devel-bounces@lists.xenproject.org Sat Sep 16 13:11:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 13:11:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603583.940626 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhV57-0006Zz-QY; Sat, 16 Sep 2023 13:11:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603583.940626; Sat, 16 Sep 2023 13:11:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhV57-0006Zs-Nd; Sat, 16 Sep 2023 13:11:29 +0000
Received: by outflank-mailman (input) for mailman id 603583;
 Sat, 16 Sep 2023 13:11:28 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhV56-0006ZY-Bh; Sat, 16 Sep 2023 13:11:28 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhV56-0006aY-94; Sat, 16 Sep 2023 13:11:28 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhV55-0003qj-RL; Sat, 16 Sep 2023 13:11:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qhV55-0001ss-QH; Sat, 16 Sep 2023 13:11:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=BZSIm6/dxyRmGwE3xyglHyw3YP9QJpZ0b0mt9Apik3k=; b=1EOpxKW0bxG4QuTl7Bs2qvkp0+
	vIQB0lEVbL8oA33P3m6fPswVPz5XOichjjhgHpJGuU5rs9pXAabNsgqodzoy4RexOBX7FDF3zetA+
	2QkDrC1KQtMSH5CstCoC44xeKsEgOT4zBD89/HX4PgoJrO9Ld5DmP1iLSQgsabT0027s=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183014-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183014: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=47230842aa6bca1da75cc92c50144f223d1ad1d3
X-Osstest-Versions-That:
    libvirt=f26c0018ba44730404c0daf2131dc144d1345672
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 16 Sep 2023 13:11:27 +0000

flight 183014 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183014/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183007
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183007
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183007
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              47230842aa6bca1da75cc92c50144f223d1ad1d3
baseline version:
 libvirt              f26c0018ba44730404c0daf2131dc144d1345672

Last test of basis   183007  2023-09-15 04:20:23 Z    1 days
Testing same since   183014  2023-09-16 04:20:23 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michal Privoznik <mprivozn@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   f26c0018ba..47230842aa  47230842aa6bca1da75cc92c50144f223d1ad1d3 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 13:39:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 13:39:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603595.940635 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhVWK-00025f-T5; Sat, 16 Sep 2023 13:39:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603595.940635; Sat, 16 Sep 2023 13:39:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhVWK-00025Y-QO; Sat, 16 Sep 2023 13:39:36 +0000
Received: by outflank-mailman (input) for mailman id 603595;
 Sat, 16 Sep 2023 13:39:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uTkj=FA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qhVWJ-00025S-0b
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 13:39:35 +0000
Received: from mail-ej1-x636.google.com (mail-ej1-x636.google.com
 [2a00:1450:4864:20::636])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 774cd4d0-5496-11ee-9b0d-b553b5be7939;
 Sat, 16 Sep 2023 15:39:32 +0200 (CEST)
Received: by mail-ej1-x636.google.com with SMTP id
 a640c23a62f3a-9adc75f6f09so247843166b.0
 for <xen-devel@lists.xenproject.org>; Sat, 16 Sep 2023 06:39:31 -0700 (PDT)
Received: from [192.168.1.10] (host-92-12-44-130.as13285.net. [92.12.44.130])
 by smtp.gmail.com with ESMTPSA id
 w18-20020a170906481200b0099329b3ab67sm3765760ejq.71.2023.09.16.06.39.30
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 16 Sep 2023 06:39:31 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 774cd4d0-5496-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694871571; x=1695476371; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=0WVR1ZfQmnoXTH+rRhZVDJGEv5xsoTIUhGtnLKQdZmM=;
        b=MSbV8oW4twdNCzqkOHuJDVnXO7VRjksaLR5h1aECRxA2n9A9PWuuSaDTS8WDLVguzf
         H2R90Aw7+4uxJW/eSMWLw4qzBthea97PpAOA4/0SllrC7Oxk/eUBCnZMDaHnV12neBie
         8oG2X5jr4fTs+xQWhMgJLiGoS5zY4inD4Np0E=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694871571; x=1695476371;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=0WVR1ZfQmnoXTH+rRhZVDJGEv5xsoTIUhGtnLKQdZmM=;
        b=kEllHjvgXcdcxM8Pe/wsGfIN5JNd4IG+5nl5SvHrmHGo0/epyXAM8L+NU+VTWQKSIC
         DKPv6Sp8inVIuzn3zFo+kMzVpApZ7UPerF/81SxcSbWwhCj8bFqG+adKs5CEdpJGdJvA
         gVsbOHMZBdI1JQknir6ZJK3YnQy5BaxQIVhk8Hs8wQUaDmiKCZcxkOzu2cHArxXn+Mt0
         bgjmQQrBbz4qGKtyliBFDLy/jzg3XWJZLp3mLZQRZDVoteKSsms4rKeFrgY5IwgsidIz
         L4VmhjUP7+iD71iDIcxIpzvemgPK4pGlvcSEpfRNkk9nEi0ZU17SR6+O1atZhjEDvPIe
         pTEg==
X-Gm-Message-State: AOJu0YySsQ9+VD3nHb+Z6VF4JyuPZqAVL/TQe3taYttprosqn2oY4ILj
	mYRmAvfBJU3T9eElfnBo7E7bIw==
X-Google-Smtp-Source: AGHT+IEyZaa0HbBRw1p4liNj89QqQ6EruCz64a+ocP9xOYVi3XS3JiHNWoTL5KRlMld37j/Gom5mHw==
X-Received: by 2002:a17:906:1092:b0:9a9:e5bb:edc5 with SMTP id u18-20020a170906109200b009a9e5bbedc5mr3998326eju.65.1694871571399;
        Sat, 16 Sep 2023 06:39:31 -0700 (PDT)
Message-ID: <67872b7c-4155-1298-9dfe-0b8f5b977606@citrix.com>
Date: Sat, 16 Sep 2023 14:39:30 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 7/7] x86/pv: Rewrite %dr6 handling
Content-Language: en-GB
To: Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-8-andrew.cooper3@citrix.com>
 <0aee121e-a2ac-1c6c-be33-59d842419708@gmail.com>
 <17514c61-a561-b5a7-8b8f-8c3d8dbd845f@citrix.com>
 <4671299c-0fae-0744-cf53-0cce89bf764c@gmail.com>
In-Reply-To: <4671299c-0fae-0744-cf53-0cce89bf764c@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 16/09/2023 2:10 pm, Jinoh Kang wrote:
> On 9/16/23 21:56, Andrew Cooper wrote:
>>>> -    /* Save debug status register where guest OS can peek at it */
>>>> -    v->arch.dr6 |= (dr6 & ~X86_DR6_DEFAULT);
>>>> -    v->arch.dr6 &= (dr6 | ~X86_DR6_DEFAULT);
>>>> -
>>>>      if ( guest_kernel_mode(v, regs) && v->domain->debugger_attached )
>>>>      {
>>>> +        /* Save debug status register where gdbsx can peek at it */
>>>> +        v->arch.dr6 = x86_merge_dr6(v->domain->arch.cpu_policy,
>>>> +                                    v->arch.dr6, pending_dbg);
>>>>          domain_pause_for_debugger();
>>>>          return;
>>>>      }
>>>>  
>>>> -    pv_inject_hw_exception(X86_EXC_DB, X86_EVENT_NO_EC);
>>>> +    pv_inject_DB(pending_dbg);
>> ... this, which will merge all new pending bits into the guest's DR6.
>>
>> If the guest chooses not to clean out DR6 each time, then it will see
>> content accumulate.
>>
>> To your earlier point of shadowing, we already have to do that.  DR6 is
>> just one of many registers we need to context switch for the vCPU.
>>
>> PV guests, being ring-deprivieged, trap into Xen for every DR access,
>> and Xen handles every one of their #DB exceptions.  This is one reason
>> why I split the work into several parts.  PV guests are easier to get
>> sorted properly, and patch 1,2,5,6 are all common improvements relevant
>> to HVM too.
> That confirms my knowledge.  Honestly if I got such a foolish remark
> I would question the reviewer's understanding of PV mode (not that you did
> anything wrong).  Sorry for wasting your time.

Not at all.

This is exceptionally tricky, and as you can see from the v1 series,
don't assume that I know it all perfectly.

The specifics of PV guests are unique to Xen, and there are 0 people who
understand it fully.  For example, doing the sanity testing for this v2
series, I rediscovered the completely undocumented properly that a PV
guests IOPL is separate from an architectural ideal of IOPL, defaults to
0 which has the meaning "guest kernel takes a #GP for access to IO ports".

Please do continue to ask questions like this if you're not sure.  It is
not a waste of time cross-checking that the logic is correct.

~Andrew


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 14:00:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 14:00:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603602.940645 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhVqS-0006Ti-Kf; Sat, 16 Sep 2023 14:00:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603602.940645; Sat, 16 Sep 2023 14:00:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhVqS-0006Tb-I0; Sat, 16 Sep 2023 14:00:24 +0000
Received: by outflank-mailman (input) for mailman id 603602;
 Sat, 16 Sep 2023 14:00:22 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uTkj=FA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qhVqQ-0006TS-NO
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 14:00:22 +0000
Received: from mail-ed1-x536.google.com (mail-ed1-x536.google.com
 [2a00:1450:4864:20::536])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5f99570b-5499-11ee-9b0d-b553b5be7939;
 Sat, 16 Sep 2023 16:00:20 +0200 (CEST)
Received: by mail-ed1-x536.google.com with SMTP id
 4fb4d7f45d1cf-52bd9ddb741so3773592a12.0
 for <xen-devel@lists.xenproject.org>; Sat, 16 Sep 2023 07:00:20 -0700 (PDT)
Received: from [192.168.1.10] (host-92-12-44-130.as13285.net. [92.12.44.130])
 by smtp.gmail.com with ESMTPSA id
 bq14-20020a170906d0ce00b0099ddc81903asm3782205ejb.221.2023.09.16.07.00.19
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 16 Sep 2023 07:00:19 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5f99570b-5499-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694872820; x=1695477620; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=YkOCQGhod07bdR5p9eLW+VGCI29v6mssx/4CABwWhXw=;
        b=pug6hkRniqovsnAjN0MLpEeCZnb6G1SxJJx+q8kPqBT4uuMhQdBq3H2YT2GGBp6IPM
         66EcyhtMD5UO6a0kZWGrwNKEgFfW5RuuyaHbOijYejR2M5DLP36Jm3J/zQ/Jac0Hcxzb
         OsbjPmHwyEAbIv/ZK7MqwuvQnO4dvgAANkVbo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694872820; x=1695477620;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=YkOCQGhod07bdR5p9eLW+VGCI29v6mssx/4CABwWhXw=;
        b=AlxTfB+HU97mJVlH2C6bN+24XMlbB9/wrnQamfpe+y8qVnxlT0gwHsgkgwGFq5rRZY
         iNK3XkyTxGEt4glDHjl+9ZhjEzygU4ckdj8tjwlkRjfwte4KntUMJ6aLzia0wmSe5rMN
         uhdXn1fec0PN9kP3uQ5bsCPRoLbYdEu/eu67i36ftyZL4IBYbkdZ4aGNeXyj0Nq0k8M2
         Ai/BuT9euN496Qc2g3Bi3AZSpXGHim6DnxyAbS01HJaYlkL2Qh7zU3D4DB7baUl/QZyT
         2fU/k6NxI7Otu7ZsNPXU7yjVTjrEf/CB2EH5KvKguYWi9RpGDCZPQGJoyydQu3GG/Eew
         Uang==
X-Gm-Message-State: AOJu0YxEGy7/C5VY37BQTjtNBsNTNLmQPks5N5Znm1APDDndx6o7j22c
	gKi8sUWm9adLCuHg8Udnxwopyg==
X-Google-Smtp-Source: AGHT+IEMLWsFffXjLaEyW+Whp7/IOs7NnfpkMeH7X0bdp2AcnZmtgnkDl1Boz+9cCtZu2ocgSAOSaw==
X-Received: by 2002:a17:906:19:b0:9ad:e351:28bb with SMTP id 25-20020a170906001900b009ade35128bbmr2252483eja.29.1694872820124;
        Sat, 16 Sep 2023 07:00:20 -0700 (PDT)
Message-ID: <d9b5e120-6ba4-896d-1d21-8903bb2b16c2@citrix.com>
Date: Sat, 16 Sep 2023 15:00:19 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 4/7] x86/pv: Drop priv_op_ctxt.bpmatch and use pending_dbg
 instead
Content-Language: en-GB
To: Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-5-andrew.cooper3@citrix.com>
 <095d4737-3728-b1c2-d64d-dc5e9b438b80@gmail.com>
In-Reply-To: <095d4737-3728-b1c2-d64d-dc5e9b438b80@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 16/09/2023 8:36 am, Jinoh Kang wrote:
> On 9/16/23 05:36, Andrew Cooper wrote:
>> @@ -658,7 +660,7 @@ static int cf_check rep_ins(
>>  
>>          ++*reps;
>>  
>> -        if ( poc->bpmatch || hypercall_preempt_check() )
>> +        if ( poc->ctxt.retire.pending_dbg || hypercall_preempt_check() )
>>              break;
>>  
>>          /* x86_emulate() clips the repetition count to ensure we don't wrap. */
> (snip)
>
>> @@ -726,7 +729,7 @@ static int cf_check rep_outs(
>>  
>>          ++*reps;
>>  
>> -        if ( poc->bpmatch || hypercall_preempt_check() )
>> +        if ( poc->ctxt.retire.pending_dbg || hypercall_preempt_check() )
>>              break;
>>  
>>          /* x86_emulate() clips the repetition count to ensure we don't wrap. */
> These two hunks look like a behavioral change in singlestep mode.
>
> This is actually a fix, assuming the emulator previously did not handle
> 'rep {in,out}s' in singlestep mode correctly, since it now checks for
> PENDING_DBG.BS in addition to PENDING_DBG.B[0-4].

The emulator should handle this correctly already.  I had been meaning
to test this, but hadn't so far - guess I should fix that.

x86_emulate.c line 511 in get_rep_prefix() sets max_reps to 1 if
SingleStepping is active.

This in turn causes the emulator to use the io_{read,write}() hook
rather than the rep hook.

This is important, because singlestepping becoming pending is normally
evaluated at the end of the instruction.  i.e. in this example it
wouldn't show up in pending_dbg (yet).

What definitely is broken here is the recognition of a data breakpoint
on the memory operand of the INS/OUTS instruction, but it's broken
everywhere else for PV guest emulation too, so needs to go on the TODO list.

> If this is the case, (at least) this part of the patch looks like a stable
> candidate.  You might want to edit the commit message to reflect that.

We're going to try and get all the %dr6 handling issues sorted, then
decide whether to backport the lot or not.  It will entirely depend on
how invasive the fixes end up being, but I hope they'll be ok to backport.

> (Ideally all the HWBP handling should be part of the emulator logic, but
>  I don't see an easy way to generalize the PV-specific logic.  It could
>  be its own patch anyway.)

The emulator does have HWBP handling for HVM guests, because that's
architectural behaviour to look in the TSS.

PV guests are the odd-ones-out with non-standard behaviour.

~Andrew


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 14:12:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 14:12:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603607.940656 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhW1h-00006M-JW; Sat, 16 Sep 2023 14:12:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603607.940656; Sat, 16 Sep 2023 14:12:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhW1h-00006F-Go; Sat, 16 Sep 2023 14:12:01 +0000
Received: by outflank-mailman (input) for mailman id 603607;
 Sat, 16 Sep 2023 14:11:59 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhW1f-000065-OD; Sat, 16 Sep 2023 14:11:59 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhW1f-00088x-JY; Sat, 16 Sep 2023 14:11:59 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhW1e-0005M8-Oy; Sat, 16 Sep 2023 14:11:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qhW1e-0001mD-OT; Sat, 16 Sep 2023 14:11:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=kJFa29gfylyUzWlK83kPMHhFVvLwoObhYs+101AuFbA=; b=xfpF7IHoiEKmQcsWF3y9GfcvUv
	9IIPSLrCm5s21icfHMhSySr/k2dNNoOu7NkZdBeM7WkfDJGvCjl9gg5/yQY7ia/1dP5XXoqgnxAkL
	D6XNQDoMcyzdKN2xMON48TWFFx37Um9BFAOBoAcNd67NhCQLjntj+NUMyUHbIEy976VI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183013-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183013: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl-xsm:xen-install:fail:regression
    xen-unstable:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=290f82375d828ef93f831a5ef028f1283aa1ea47
X-Osstest-Versions-That:
    xen=b5a601093d1f9d5e96eb74b692f1b6252a2598a2
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 16 Sep 2023 14:11:58 +0000

flight 183013 xen-unstable real [real]
flight 183016 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183013/
http://logs.test-lab.xenproject.org/osstest/logs/183016/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 183009

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt-qcow2 13 guest-start       fail pass in 183016-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 183009
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 183016 like 183009
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 183016 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183009
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183009
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183009
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183009
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183009
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183009
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183009
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183009
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183009
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183009
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  290f82375d828ef93f831a5ef028f1283aa1ea47
baseline version:
 xen                  b5a601093d1f9d5e96eb74b692f1b6252a2598a2

Last test of basis   183009  2023-09-15 13:10:21 Z    1 days
Testing same since   183013  2023-09-16 03:24:56 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       fail    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               fail    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit 290f82375d828ef93f831a5ef028f1283aa1ea47
Author: Michal Orzel <michal.orzel@amd.com>
Date:   Tue Sep 12 12:53:41 2023 +0200

    xen/arm: Skip Xen specific nodes/properties from hwdom /chosen node
    
    Skip the following Xen specific host device tree nodes/properties
    from being included into hardware domain /chosen node:
     - xen,static-heap: this property informs Xen about memory regions
       reserved exclusively as static heap,
     - xen,domain-shared-memory-v1: node with this compatible informs Xen
       about static shared memory region for a domain. Xen exposes a different
       node (under /reserved-memory with compatible "xen,shared-memory-v1") to
       let domain know about the shared region,
     - xen,evtchn-v1: node with this compatible informs Xen about static
       event channel configuration for a domain. Xen does not expose
       information about static event channels to domUs and dom0 case was
       overlooked (by default nodes from host dt are copied to dom0 fdt unless
       explicitly marked to be skipped), since the author's idea was not to
       expose it (refer docs/misc/arm/device-tree/booting.txt, "Static Event
       Channel"). Even if we wanted to expose the static event channel
       information, the current node is in the wrong format (i.e. contains
       phandle to domU node not visible by dom0). Lastly, this feature is
       marked as tech-preview and there is no Linux dt binding in place.
    
    Signed-off-by: Michal Orzel <michal.orzel@amd.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>
    Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
    Acked-by: Julien Grall <jgrall@amazon.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 14:42:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 14:42:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603617.940669 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhWVG-0004tr-TT; Sat, 16 Sep 2023 14:42:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603617.940669; Sat, 16 Sep 2023 14:42:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhWVG-0004tk-Pg; Sat, 16 Sep 2023 14:42:34 +0000
Received: by outflank-mailman (input) for mailman id 603617;
 Sat, 16 Sep 2023 14:42:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V1Uw=FA=gmail.com=jinoh.kang.kr@srs-se1.protection.inumbo.net>)
 id 1qhWVF-0004te-8j
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 14:42:33 +0000
Received: from mail-pf1-x434.google.com (mail-pf1-x434.google.com
 [2607:f8b0:4864:20::434])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 43dec8d0-549f-11ee-8788-cb3800f73035;
 Sat, 16 Sep 2023 16:42:32 +0200 (CEST)
Received: by mail-pf1-x434.google.com with SMTP id
 d2e1a72fcca58-68fcb4dc8a9so2917626b3a.2
 for <xen-devel@lists.xenproject.org>; Sat, 16 Sep 2023 07:42:31 -0700 (PDT)
Received: from [10.137.0.57] ([14.33.99.107]) by smtp.gmail.com with ESMTPSA id
 t19-20020aa79393000000b00686236718d8sm4592966pfe.41.2023.09.16.07.42.28
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 16 Sep 2023 07:42:29 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 43dec8d0-549f-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1694875350; x=1695480150; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to
         :content-language:user-agent:mime-version:date:message-id:from:to:cc
         :subject:date:message-id:reply-to;
        bh=XiBbaTEoR4KdXzrafod1XJetgle5g3jH5UWLbf33Jow=;
        b=CCURVFzEFz1uUu17YYbTBawODsA8onGw1At4ONZMGAqcYHurRACtAwh+HL2QSvRoVL
         2TwZULZzEAK6hSGC6QiPio4EuC/UqLmVebk0BL0Xy6S/0Zyr25yWzUllJElK+e8WSYJk
         KJRQfnVxU9EyXYp3dh2jX7faGHpCYnh/57kBt/iBqX+XDEPyicGSzTy6pYpRA5LkhuiF
         FA87YBwshXx1hxxV2kQz9Dr0ii1cGTSAfQ4PKNVxNzXq3MjuuHnNwJsylTO3TvtIpEfy
         1kS1xYPdYjVJTgKFWrGVHX7zOtmiosq/PQqQZV1witFhc9IqiHjXLygwKodq8/HRkZ75
         7xCw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694875350; x=1695480150;
        h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to
         :content-language:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=XiBbaTEoR4KdXzrafod1XJetgle5g3jH5UWLbf33Jow=;
        b=oBxl0Xpn9Hzfafp2l+AH/S79y5YVaDfyjFhXcM4kVbvib5tUEG9GmyCJGY8ZJbAmxB
         z5tjKcAiv9GVBl7CM+0rseCS2jbblNS0M99Yzi8VpXj9dyLsnCQzjYuYMwHZhGdoHjXU
         5zW6oqyPq+Ylo/pH/6r0lWI0DhJ22lSzT3z4hpJplryCKyWb3/CsB63851PBfJPpBwl/
         STBVQGU0SV6k8xHh+USZbpp6NACIrIxEbYqorKeGu+RMEIrCFIMtFG0R8gu5hJkj0/8Z
         ob1XnvtWxQd9IAOzz3H3Mx1nmiX0mx/txYyItaML0YpmTjNG+DqOI7yIqTNJpKNvyRBA
         jZcA==
X-Gm-Message-State: AOJu0Yy+HgStgpXBz5GECmHdGErQOVJ+4mA5wG9rZVn3vr9enm4PS48m
	/TFw5P3b6smbhN4teAyb6+E=
X-Google-Smtp-Source: AGHT+IGNS3ifciJNU0oa2YYj2ZiDBwuyHZG4A4f7b1/OjKL2Cp7J39BVWMPmrjrNkDT2kvUjVHSafg==
X-Received: by 2002:a05:6a20:2594:b0:15a:290:d833 with SMTP id k20-20020a056a20259400b0015a0290d833mr4102450pzd.53.1694875350288;
        Sat, 16 Sep 2023 07:42:30 -0700 (PDT)
Message-ID: <f0e221b3-8b81-72ca-fc6b-657b3e146fdd@gmail.com>
Date: Sat, 16 Sep 2023 23:42:25 +0900
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-5-andrew.cooper3@citrix.com>
 <095d4737-3728-b1c2-d64d-dc5e9b438b80@gmail.com>
 <d9b5e120-6ba4-896d-1d21-8903bb2b16c2@citrix.com>
From: Jinoh Kang <jinoh.kang.kr@gmail.com>
Subject: Re: [PATCH 4/7] x86/pv: Drop priv_op_ctxt.bpmatch and use pending_dbg
 instead
In-Reply-To: <d9b5e120-6ba4-896d-1d21-8903bb2b16c2@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 9/16/23 23:00, Andrew Cooper wrote:
> On 16/09/2023 8:36 am, Jinoh Kang wrote:

(snip)

>> These two hunks look like a behavioral change in singlestep mode.
>>
>> This is actually a fix, assuming the emulator previously did not handle
>> 'rep {in,out}s' in singlestep mode correctly, since it now checks for
>> PENDING_DBG.BS in addition to PENDING_DBG.B[0-4].
> 
> The emulator should handle this correctly already.  I had been meaning
> to test this, but hadn't so far - guess I should fix that.
> 
> x86_emulate.c line 511 in get_rep_prefix() sets max_reps to 1 if
> SingleStepping is active.

Thanks for informing.  Although that EFLAGS.TF check in the macro now
makes me--almost reflexively--imagine all sort of creative pathological
cases, like "mov ss, ax; rep ins"...

> 
> This in turn causes the emulator to use the io_{read,write}() hook
> rather than the rep hook.

Right.  (Frankly that part of code has too many branches to be readable.
Also the "presumably most efficient" part of the comment hints at perf
optimization sans any profiling attempts...)

> 
> This is important, because singlestepping becoming pending is normally
> evaluated at the end of the instruction.  i.e. in this example it
> wouldn't show up in pending_dbg (yet).
> 
> What definitely is broken here is the recognition of a data breakpoint
> on the memory operand of the INS/OUTS instruction, but it's broken
> everywhere else for PV guest emulation too, so needs to go on the TODO list.

(Another thing definitely broken here is the recognition of I/O breakpoints
 post the first iteration.  Maybe it would be beneficial to do differential
 testing between the {read,write}_io slowpath and rep_{in,out}s fastpath.)

> 
>> If this is the case, (at least) this part of the patch looks like a stable
>> candidate.  You might want to edit the commit message to reflect that.
> 
> We're going to try and get all the %dr6 handling issues sorted, then
> decide whether to backport the lot or not.  It will entirely depend on
> how invasive the fixes end up being, but I hope they'll be ok to backport.
> 
>> (Ideally all the HWBP handling should be part of the emulator logic, but
>>  I don't see an easy way to generalize the PV-specific logic.  It could
>>  be its own patch anyway.)
> 
> The emulator does have HWBP handling for HVM guests, because that's
> architectural behaviour to look in the TSS.

I was under such impression since I didn't immediately notice I/O
breakpoint handling in ins/outs path; maybe I haven't looked into it deeper...

> 
> PV guests are the odd-ones-out with non-standard behaviour.
> 
> ~Andrew

-- 
Sincerely,
Jinoh Kang



From xen-devel-bounces@lists.xenproject.org Sat Sep 16 16:18:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 16:18:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603626.940685 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhXzu-0001Xe-P9; Sat, 16 Sep 2023 16:18:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603626.940685; Sat, 16 Sep 2023 16:18:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhXzu-0001XX-LB; Sat, 16 Sep 2023 16:18:18 +0000
Received: by outflank-mailman (input) for mailman id 603626;
 Sat, 16 Sep 2023 16:18:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uTkj=FA=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qhXzt-0001XA-9y
 for xen-devel@lists.xenproject.org; Sat, 16 Sep 2023 16:18:17 +0000
Received: from mail-ej1-x62b.google.com (mail-ej1-x62b.google.com
 [2a00:1450:4864:20::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a3a2312b-54ac-11ee-8788-cb3800f73035;
 Sat, 16 Sep 2023 18:18:15 +0200 (CEST)
Received: by mail-ej1-x62b.google.com with SMTP id
 a640c23a62f3a-9ad8bba8125so408753766b.3
 for <xen-devel@lists.xenproject.org>; Sat, 16 Sep 2023 09:18:15 -0700 (PDT)
Received: from [192.168.1.10] (host-92-12-44-130.as13285.net. [92.12.44.130])
 by smtp.gmail.com with ESMTPSA id
 eu22-20020a170907299600b009adca8ada29sm2610411ejc.47.2023.09.16.09.18.14
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 16 Sep 2023 09:18:14 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a3a2312b-54ac-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1694881095; x=1695485895; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=U/o43Ty3aOYxFdf8q4FiS9JR1YBAHVgvyHY0uiEeQUs=;
        b=lmkelTk3nAx2Soikys8pb1tI5/6E8gfJJJFJAXULgwFJbKJSPEnXzXDfXLEKMlxgO9
         HH6macrZcCrvaSa7YYR5+P1/llX23S8aLoYBeOVHqt3q+d9edBKPK/M+aZrrw3dn5jr9
         +oackOZBaC/M9HVedXX4wkJD56f7iBVyx5K5k=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694881095; x=1695485895;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=U/o43Ty3aOYxFdf8q4FiS9JR1YBAHVgvyHY0uiEeQUs=;
        b=p8By4/kXHJDz417bmOUQJXr606DkBWEyLmJPBqTIHsnmZwB95JYKB1nC+noWI7F9je
         RRJ+phBOfk/qFJ+MeRqxonLQfL44T0rxp+TXsLph28RA7lp4PjvFHGwq1MfdLGZmoYGL
         5JI/RxFtZSCcnhj+djYj0Mx5CY/a6KGRe5xhAagg6PbiGZ68jNsw6bRqvjISFpXqsRUZ
         HX/XkM2yF1xeyRKScsyZnuvhOt3LgHu5YdWzKm6mm5KiIK/lvZCVZJEdL5Q84Hvpi8h9
         ot3XeSh1oPLBp2esVDaXf5ycL8oB2YYtWtBUtu8ZT3Z9b6EZJ2iErCLa7+6sH7rwNTdX
         Yw2Q==
X-Gm-Message-State: AOJu0Yxv05dq+tei7sDzXOW/DsNu+qzYV2ikiWE4Ot8W385UDacfMfkN
	w7HPBE8jHVWaBF7BUSzoFai56w==
X-Google-Smtp-Source: AGHT+IFeo9jKZR1onB5O7MRz+zFzNh/AGH8G09+sa99TLdKwTR4mEPcGGFbi2toYMgYMzj38IHqHiQ==
X-Received: by 2002:a17:907:2c59:b0:9a1:f10d:9751 with SMTP id hf25-20020a1709072c5900b009a1f10d9751mr4272997ejc.23.1694881094700;
        Sat, 16 Sep 2023 09:18:14 -0700 (PDT)
Message-ID: <9d6f81da-cad3-1627-b503-23cb59615540@citrix.com>
Date: Sat, 16 Sep 2023 17:18:13 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 4/7] x86/pv: Drop priv_op_ctxt.bpmatch and use pending_dbg
 instead
Content-Language: en-GB
To: Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-5-andrew.cooper3@citrix.com>
 <095d4737-3728-b1c2-d64d-dc5e9b438b80@gmail.com>
 <d9b5e120-6ba4-896d-1d21-8903bb2b16c2@citrix.com>
 <f0e221b3-8b81-72ca-fc6b-657b3e146fdd@gmail.com>
In-Reply-To: <f0e221b3-8b81-72ca-fc6b-657b3e146fdd@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 16/09/2023 3:42 pm, Jinoh Kang wrote:
> On 9/16/23 23:00, Andrew Cooper wrote:
>> On 16/09/2023 8:36 am, Jinoh Kang wrote:
> (snip)
>
>>> These two hunks look like a behavioral change in singlestep mode.
>>>
>>> This is actually a fix, assuming the emulator previously did not handle
>>> 'rep {in,out}s' in singlestep mode correctly, since it now checks for
>>> PENDING_DBG.BS in addition to PENDING_DBG.B[0-4].
>> The emulator should handle this correctly already.  I had been meaning
>> to test this, but hadn't so far - guess I should fix that.
>>
>> x86_emulate.c line 511 in get_rep_prefix() sets max_reps to 1 if
>> SingleStepping is active.
> Thanks for informing.  Although that EFLAGS.TF check in the macro now
> makes me--almost reflexively--imagine all sort of creative pathological
> cases, like "mov ss, ax; rep ins"...

Yeah isn't x86 fun...

That's why it's important to accumulate in pending_dbg, which does hold
the breakpoint recognition across point where the blocked-by-movss state
inhibits the generation of #DB, and causes it to generate #DB on the
subsequent instruction boundary.

>> This in turn causes the emulator to use the io_{read,write}() hook
>> rather than the rep hook.
> Right.  (Frankly that part of code has too many branches to be readable.
> Also the "presumably most efficient" part of the comment hints at perf
> optimization sans any profiling attempts...)

Yeah it's not the greatest code.  I cant remember the exact history
there, but IIRC we used to handle the rep looping entirely in
x86_emulate() and there were no rep hooks.

There are two cases where the perf hit did get noticed.  REP OUTSB to
the qemu/bochs/Xen debug port, and Windows which does a REP MOVSB across
the various bits of PCI MMIO.

>> This is important, because singlestepping becoming pending is normally
>> evaluated at the end of the instruction.  i.e. in this example it
>> wouldn't show up in pending_dbg (yet).
>>
>> What definitely is broken here is the recognition of a data breakpoint
>> on the memory operand of the INS/OUTS instruction, but it's broken
>> everywhere else for PV guest emulation too, so needs to go on the TODO list.
> (Another thing definitely broken here is the recognition of I/O breakpoints
>  post the first iteration.  Maybe it would be beneficial to do differential
>  testing between the {read,write}_io slowpath and rep_{in,out}s fastpath.)

PV, or HVM guest?

IO breakpoint recognition is missing generally in HVM guests.  I opened
https://gitlab.com/xen-project/xen/-/work_items/171 yesterday for it,
because it's not 30s work to fix.

But, IO breakpoints are invariant of REP.  The IO port doesn't change,
so the breakpoint(s) either match on every iteration, or not at all. 
(Of course, this doesn't mean that Xen is handling the recognition
correctly.)

In this patch, there is IO breakpoint recognition on all 4 of the PV IO
port hooks, so I think it ought to work properly, whether it's the first
iteration or not.

Obviously if not, I've got another bug to figure out...


It's worth saying that patch 2 does fix a bug (an X86EMUL_OKAY/DONE
confusion), but I'm pretty sure it was only a singlestep on admin-ok PV
IO ports which would be skipped, not the breakpoints.

~Andrew


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 17:25:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 17:25:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603635.940698 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhZ2R-0001nt-Ir; Sat, 16 Sep 2023 17:24:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603635.940698; Sat, 16 Sep 2023 17:24:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhZ2R-0001nm-Ee; Sat, 16 Sep 2023 17:24:59 +0000
Received: by outflank-mailman (input) for mailman id 603635;
 Sat, 16 Sep 2023 17:24:57 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhZ2P-0001nc-Io; Sat, 16 Sep 2023 17:24:57 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhZ2P-0004Zh-GF; Sat, 16 Sep 2023 17:24:57 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhZ2P-0004PJ-4k; Sat, 16 Sep 2023 17:24:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qhZ2P-0000DP-4F; Sat, 16 Sep 2023 17:24:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=zUL2Wk08CUgXZcssfNpoSxaC0HoidvHd16r7+70KSik=; b=AEZNrujlequwKleVYGsSC4fzam
	bfmoVDP1EeDmWdeG52nb1saC0rxMnDH35aomlCrrIYyCQuTao5Wrq8qj8Eironhh3KPeqEyy2rELZ
	VwmpB+EOfUFcyMq0qU6T7gi3jPiTGNIwG6tl9fs0mc9hctPIWLQkSZ2bWIqW+uSyk4L4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183015-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183015: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-armhf-armhf-xl-arndale:host-ping-check-xen:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=57d88e8a5974644039fbc47806bac7bb12025636
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 16 Sep 2023 17:24:57 +0000

flight 183015 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183015/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-armhf-armhf-xl-arndale  10 host-ping-check-xen      fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                57d88e8a5974644039fbc47806bac7bb12025636
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   19 days
Failing since        182544  2023-08-28 20:42:13 Z   18 days   35 attempts
Testing same since   183015  2023-09-16 04:44:08 Z    0 days    1 attempts

------------------------------------------------------------
2308 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 280727 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Sep 16 23:00:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 16 Sep 2023 23:00:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603645.940708 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qheGd-00049v-9H; Sat, 16 Sep 2023 22:59:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603645.940708; Sat, 16 Sep 2023 22:59:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qheGd-00049o-6I; Sat, 16 Sep 2023 22:59:59 +0000
Received: by outflank-mailman (input) for mailman id 603645;
 Sat, 16 Sep 2023 22:59:57 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qheGb-00049e-Eb; Sat, 16 Sep 2023 22:59:57 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qheGb-0004VZ-8p; Sat, 16 Sep 2023 22:59:57 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qheGa-0000Bv-NK; Sat, 16 Sep 2023 22:59:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qheGa-0006q8-M7; Sat, 16 Sep 2023 22:59:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=LfsP3Mcp8sFsd9d5xT7axZhBlaJdGbj7jPp69Ko1WbY=; b=hiQCMX7Vn8EY5DzHN9Wvk02aCr
	P8GJHrmY7xsadW7OFg1MibucQIDR199Kikoic8F1exTucGN65BEOE9I165sqqBRvIwnFXH2lN85kN
	Z83376EhQ77jMEKikenO9BEPez1Md3h0SM9f8jpWSAcCOmJw0xiKzBAzKmuNyoKBEmiQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183018-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183018: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl-xsm:xen-install:fail:regression
    xen-unstable:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    xen-unstable:test-amd64-i386-examine-uefi:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-pair:guest-migrate/dst_host/src_host/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=290f82375d828ef93f831a5ef028f1283aa1ea47
X-Osstest-Versions-That:
    xen=b5a601093d1f9d5e96eb74b692f1b6252a2598a2
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 16 Sep 2023 22:59:56 +0000

flight 183018 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183018/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-xl-xsm        7 xen-install              fail REGR. vs. 183009

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt-qcow2 13 guest-start    fail in 183013 pass in 183018
 test-amd64-i386-examine-uefi  6 xen-install                fail pass in 183013
 test-amd64-i386-pair 28 guest-migrate/dst_host/src_host/debian.repeat fail pass in 183013

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 183009
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183009
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183009
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183009
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183009
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183009
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183009
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183009
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183009
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183009
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183009
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183009
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  290f82375d828ef93f831a5ef028f1283aa1ea47
baseline version:
 xen                  b5a601093d1f9d5e96eb74b692f1b6252a2598a2

Last test of basis   183009  2023-09-15 13:10:21 Z    1 days
Testing same since   183013  2023-09-16 03:24:56 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       fail    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         fail    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 fail    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit 290f82375d828ef93f831a5ef028f1283aa1ea47
Author: Michal Orzel <michal.orzel@amd.com>
Date:   Tue Sep 12 12:53:41 2023 +0200

    xen/arm: Skip Xen specific nodes/properties from hwdom /chosen node
    
    Skip the following Xen specific host device tree nodes/properties
    from being included into hardware domain /chosen node:
     - xen,static-heap: this property informs Xen about memory regions
       reserved exclusively as static heap,
     - xen,domain-shared-memory-v1: node with this compatible informs Xen
       about static shared memory region for a domain. Xen exposes a different
       node (under /reserved-memory with compatible "xen,shared-memory-v1") to
       let domain know about the shared region,
     - xen,evtchn-v1: node with this compatible informs Xen about static
       event channel configuration for a domain. Xen does not expose
       information about static event channels to domUs and dom0 case was
       overlooked (by default nodes from host dt are copied to dom0 fdt unless
       explicitly marked to be skipped), since the author's idea was not to
       expose it (refer docs/misc/arm/device-tree/booting.txt, "Static Event
       Channel"). Even if we wanted to expose the static event channel
       information, the current node is in the wrong format (i.e. contains
       phandle to domU node not visible by dom0). Lastly, this feature is
       marked as tech-preview and there is no Linux dt binding in place.
    
    Signed-off-by: Michal Orzel <michal.orzel@amd.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>
    Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
    Acked-by: Julien Grall <jgrall@amazon.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Sun Sep 17 03:26:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 17 Sep 2023 03:26:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603656.940718 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhiQh-00076z-E5; Sun, 17 Sep 2023 03:26:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603656.940718; Sun, 17 Sep 2023 03:26:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhiQh-00076d-82; Sun, 17 Sep 2023 03:26:39 +0000
Received: by outflank-mailman (input) for mailman id 603656;
 Sun, 17 Sep 2023 03:26:38 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhiQf-00076T-WA; Sun, 17 Sep 2023 03:26:38 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhiQf-0001Yu-Qj; Sun, 17 Sep 2023 03:26:37 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhiQf-0002GZ-BL; Sun, 17 Sep 2023 03:26:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qhiQf-0003pH-A7; Sun, 17 Sep 2023 03:26:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=JvB84gYDklsLvSfOGa5NOO1I4gWtkHzM5zcJgL3YEv4=; b=fXsswyZtj92a+nhmdr9RSbpd1M
	Hsfb0rRk7VlgTTvz7LEQcGsiQRQ5Y0bp/5TdX+DR49Z6IFnTWq76+bHOXyOtNDid+2f1OzXevZ0p1
	cTiLS78PhwrdLYKPLiLhbOiZK2pltzaiJ4qPWLg4hVBkitWPxEKX+uJkNHARvvvl6CAw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183020-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183020: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=57d88e8a5974644039fbc47806bac7bb12025636
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 17 Sep 2023 03:26:37 +0000

flight 183020 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183020/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                57d88e8a5974644039fbc47806bac7bb12025636
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   20 days
Failing since        182544  2023-08-28 20:42:13 Z   19 days   36 attempts
Testing same since   183015  2023-09-16 04:44:08 Z    0 days    2 attempts

------------------------------------------------------------
2308 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 280727 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 17 05:46:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 17 Sep 2023 05:46:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603664.940727 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhkbf-0005mQ-3R; Sun, 17 Sep 2023 05:46:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603664.940727; Sun, 17 Sep 2023 05:46:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhkbf-0005mJ-0n; Sun, 17 Sep 2023 05:46:07 +0000
Received: by outflank-mailman (input) for mailman id 603664;
 Sun, 17 Sep 2023 05:46:05 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=1vuy=FB=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qhkbd-0005mD-H8
 for xen-devel@lists.xenproject.org; Sun, 17 Sep 2023 05:46:05 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20619.outbound.protection.outlook.com
 [2a01:111:f400:7e89::619])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7aa1de08-551d-11ee-8788-cb3800f73035;
 Sun, 17 Sep 2023 07:46:03 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by CH3PR12MB8330.namprd12.prod.outlook.com (2603:10b6:610:12c::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.23; Sun, 17 Sep
 2023 05:45:53 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Sun, 17 Sep 2023
 05:45:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7aa1de08-551d-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=g05UvUZ2gGuJyz9tPvzyjdAX/0uTjJONwkURoQKAqYSz386ce7/L64DxGml1Xpq0b3sNieKarA1rUjaIua6TNiAiBOC/3etWFIf7NOCZOGt6kUpR05g5ZxGZuo9x0SlmjLgvCi/6vRvyud4LU2ofRdU0ZWIcBKXYVOPrMSE3IE/AIqlwZdlEET0q+3CFI4K9pfMyg/c1r8LHDvvUEwMiXpqlcdQqUMb8CBWT627NWXYa5JNs3QNhtMgWQ0qNYNYGgQtQJLsvkqfYLwOJgjLGAVI1gqAPIlhhJkI1rdLSTptBR8LbIuknVEOQpXR9Z2RtTDU2uw5q8lcLWbBDeKZBmA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FXU3qahuBo2iuTfNxhJKRcgHs6rO+mcqu5RSIXYG9pA=;
 b=dH5kbPE8Doi+fyDcsP4cvexexuy410iICBQKMjaryW6wvikV6QaG/xSbyNxaD8cDr+RS2aRNhozGNkOiJ/ukNA+EzsHWuY2BheomwZwDP4D8/NhRxEXA91p1panKHpY1NJVhp/oCpvx5Y6pZwSfTtNdl8IAsxM8Jaok5YkEWjA+EiMWdfdxQV5i3LR3Wa7jexEcB4zGxyCwkXTykWY+p5gpUbMH75sMoAevpnrPmGyk+nhi9gDbdH7EZDlxgvlstS5VGqxBz0AuoBAt66s5rKweBUb+7Arfe9kg55fLpCs8k18YNnnTZs+jtHm/P5E51gnHPD+9BgEcNKjR17fe6fw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FXU3qahuBo2iuTfNxhJKRcgHs6rO+mcqu5RSIXYG9pA=;
 b=HCeigAZIJ0hwQulu34F44/PFm0NVF4HNj9Hm3Cp0L4+alj7hzEC3INmUiTWZLD/xzMqfOLWefbFFQmon5S+raA5loNLLugksaBgN5fTUE6vkn+p5leAv3/FSAvDvW2XsSRKbXxn31Lx9BtPa9foK837y8QCikIxJNNthbYdYYvI=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Sun, 17 Sep 2023 13:45:17 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 06/13] virtio-gpu: Support context init feature
 with virglrenderer
Message-ID: <ZQaSbaCUQ6iiHI/Y@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-7-ray.huang@amd.com>
 <561abf48-d72c-467d-94fd-54ffa1dfb512@daynix.com>
 <ZQWEQ9ZHkokhKOSA@amd.com>
 <d671bfad-7d78-41cf-a6f4-e92bf6ce2bd5@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <d671bfad-7d78-41cf-a6f4-e92bf6ce2bd5@daynix.com>
X-ClientProxiedBy: SGXP274CA0010.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:b8::22)
 To SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|CH3PR12MB8330:EE_
X-MS-Office365-Filtering-Correlation-Id: 694361cd-0d1c-45e3-b351-08dbb7415740
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	u1JFXLUWvXNMHu5jiksWzdN7ZIblNuSb808kpILP5YjShm3FqDllcux5N49Xwf5VlOz5I2lnkGNAX+Nc+XHQC/naAY6qxZR6kE4sYmf0gZ2FKYUewN55cqzQqGxoyNz6r3MbZdcOTjYQJIHxNCt3PAesLlenEn0VlnjpalsKOTitsx/1xXbZ9/oXoa9dMNeMJbqG2vZSCdyXTNKDUxqNi/qmACOpMOj5okk2Z6Bm3CVMfdn6G445WXI/mwQeDBBbKfWBSNvmecDyCugltCFnqycuTX701AnfaMw0+2TX5q8FiA5GsOKY4etruTNwXqK+24VBVBxjqhNWwlni6i/l00iCokJ0Afm9feHmKoVBvaNufI43ymA8sfgfiQTbVh9HhNxvC9ilNnVIMQLSf9UVGHX1mfM5lJ7okE8k/55Om8dfFK4SCTKArf02Faq3+NUjIA8/pvcPcCrRzfShlX0LF16cZZVzYG9qDqNeFHDEHGMozebm2zeNbmb+zuCg3qN0YN8pkuBzZ5cpmQ/N5aB9K3dBMDjgreg3oP5BgELZh5Q=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(136003)(396003)(376002)(39860400002)(346002)(186009)(1800799009)(451199024)(26005)(2616005)(8936002)(8676002)(4326008)(66899024)(7416002)(83380400001)(2906002)(36756003)(5660300002)(86362001)(53546011)(6506007)(6486002)(966005)(478600001)(6666004)(6916009)(316002)(54906003)(6512007)(66946007)(66476007)(66556008)(38100700002)(41300700001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?pMPxUz/X1yuemL+Q9C1t9f0QTKxBDocJ3buxpI90+LPs75gHKif82Rb1u5s4?=
 =?us-ascii?Q?hkvdZ2rSek3t83OYNMShdfVRjDPvL6YPqcUypfwFnNG7okvR+tndQbj4lV2B?=
 =?us-ascii?Q?gAD32fF/LyLUvem/ox6Bh6BkkjwHDtEy4x+rDE83s/AX89jpsppfVdOjjN59?=
 =?us-ascii?Q?lk3i4KE7HBzS7GWZRepaoQy0YOHSPMJxd04ZWt4cHXzDUtshLqqUF9t+zBIR?=
 =?us-ascii?Q?66bOzpDWZ2SGPj7bMjYhz7MDasW0IAQjn4Ot/97ZLOlQ24oEsU60fQcxlHy4?=
 =?us-ascii?Q?/KuDZR+V4x0FHH8aDFSdqdsPiT+uAw8i4zew2rxXzOSjkBbE9G89Y/BKUHtR?=
 =?us-ascii?Q?lQ8XGFMY+I1DWD1Hp2geTSJcOrsvZXqGNFJy/MPiTO3R43jVoxtXQOt2NagV?=
 =?us-ascii?Q?lfbMDZZ0oRIgNN+kk5N9uI9wOnUD89b1lQVYlBXJmlGhdL0ifYNo28D22fsw?=
 =?us-ascii?Q?ygu43oTx9ICx8w1Ggi971GZTPCwXVNu0iQ3EBft+8az+ovpntDHYV4/RGdLy?=
 =?us-ascii?Q?ZLbd8BXTP5SUCPXPBosy8dVfOyCr8EP0JGTZ3VZmHu8jAchH0+UfVF6cXyZO?=
 =?us-ascii?Q?T4B6fGqnnihyUbJzUOQfYsyNX/4IrX+iKMJHWFad1+s4YlTSdPlhcVvCv4sL?=
 =?us-ascii?Q?5b7WVyJCztdcsPjuMg5g/JEKKcqY0hLa3Eo7/XRjc6tX+MUP+3RnclHJr4hy?=
 =?us-ascii?Q?werBniahulS6Br9zA0X/RUhaLMqXHYwHFjBmrFBLJWeKn8GWOX3dvfGSNw12?=
 =?us-ascii?Q?Kz8sEmn3/KVLH0Q3Y0NEDAfUKkJLdAHquubJ3vhUb/en3sC4SBDJXkbBNkWb?=
 =?us-ascii?Q?Saw5GuiCFbymK7u11IilJlpQjXa0LYFKsVWvtk77zlCGw0DoYYYHHg7qs2Nh?=
 =?us-ascii?Q?8BSFmFl45pnwSYs2jiaGMoZqcUVpQgjyC/f9WzRHZPlzHHqCQbGaO55+H6xb?=
 =?us-ascii?Q?hYgj/W+7X0DUc6qcnOTFttewZT2zOWM46s9nS4A3IlPbkXT9emfXsxIs0rkV?=
 =?us-ascii?Q?HStBzr91oiV0vAlZPAt8doxglcQeCPtM56u0V4TlIRazXr5cqjSslFjujUjs?=
 =?us-ascii?Q?fWgUV/l8lafdbZHuZ07xI6xMU+ld5Gx5TjZ7NJ1fVqyAM32HnzvXjjAOp2tP?=
 =?us-ascii?Q?ii+P4+kiA4MsKsycLQ+BJ+Hb9UlfXe2yFES/SyQFezaxzSRaCnQXnCR/e0m4?=
 =?us-ascii?Q?MX4wxHGpnFVnBLh5Pn1JMg1hnQiB9gWDNIKzQxWOgk03RjcGpXp1ehAqJIf3?=
 =?us-ascii?Q?78r2WaD/YZARCJQFCLK62wAXTHlEZRfLX4odcz3Z21PWrZFy1rVzrSre5Q+F?=
 =?us-ascii?Q?0TbXMBoASzWUWX4zlnGW1Qz9YH9slITzKKSFrfFenCOAIRHKv4S15pF5p0Bn?=
 =?us-ascii?Q?5E5jMS9HI545eAg63yGKqEY/zuekwEdkfadAaTOXQUjpizhHxSnENc+03jj0?=
 =?us-ascii?Q?GdfC6UoqDKU3xkgBoDFsfGjaUk5liJqsoJTNnRCwuxf6NElmrJWpIiFTIxVO?=
 =?us-ascii?Q?A4L/4phU4t4Pq0YXaZFDozIX1O4UbVo1thVvMGNuIXaQNrPgFo3jgEApzCGo?=
 =?us-ascii?Q?J9MDaBEzjcnpz6zmAiwguGM3BhomTFL4Z/xOrY8T?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 694361cd-0d1c-45e3-b351-08dbb7415740
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Sep 2023 05:45:47.0377
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9qzMrqX2nvTk1kNDCtLBoa40JcUwbdC0JWSB0xQ8FSODPG1d766XPOHwarU3kKuv/UDHaqXRPCaZ0c+/Md6Zog==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8330

On Sat, Sep 16, 2023 at 06:42:04PM +0800, Akihiko Odaki wrote:
> On 2023/09/16 19:32, Huang Rui wrote:
> > On Fri, Sep 15, 2023 at 11:20:46PM +0800, Akihiko Odaki wrote:
> >> On 2023/09/15 20:11, Huang Rui wrote:
> >>> Patch "virtio-gpu: CONTEXT_INIT feature" has added the context_init
> >>> feature flags.
> >>> We would like to enable the feature with virglrenderer, so add to create
> >>> virgl renderer context with flags using context_id when valid.
> >>>
> >>> Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> >>> Signed-off-by: Huang Rui <ray.huang@amd.com>
> >>> ---
> >>>
> >>> V4 -> V5:
> >>>       - Inverted patch 5 and 6 because we should configure
> >>>         HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
> >>>
> >>>    hw/display/virtio-gpu-virgl.c | 13 +++++++++++--
> >>>    hw/display/virtio-gpu.c       |  2 ++
> >>>    2 files changed, 13 insertions(+), 2 deletions(-)
> >>>
> >>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> >>> index 8bb7a2c21f..312953ec16 100644
> >>> --- a/hw/display/virtio-gpu-virgl.c
> >>> +++ b/hw/display/virtio-gpu-virgl.c
> >>> @@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
> >>>        trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
> >>>                                        cc.debug_name);
> >>>    
> >>> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
> >>> -                                  cc.debug_name);
> >>> +    if (cc.context_init) {
> >>> +#ifdef HAVE_VIRGL_CONTEXT_INIT
> >>> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
> >>> +                                                 cc.context_init,
> >>> +                                                 cc.nlen,
> >>> +                                                 cc.debug_name);
> >>> +        return;
> >>> +#endif
> >>
> >> This should deal with the case when context_init is set while
> >> HAVE_VIRGL_CONTEXT_INIT is not defined.
> > 
> > Actually, I received the comment below before:
> > 
> > https://lore.kernel.org/qemu-devel/32588d0e-a1f2-30c4-5e9f-e6e7c4190b65@linaro.org/
> > 
> > At original patch set, I have the case while HAVE_VIRGL_CONTEXT_INIT is set
> > but HAVE_VIRGL_CONTEXT_INIT is not defined. But I think we may encounter
> > the case that virgl_renderer_context_create_with_flags is not defined in
> > virglrenderer early version. Should I bring the error message back?
> > 
> > Thanks,
> > Ray
> 
> I suggest checking VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED instead of 
> reporting an error here. Perhaps it may be easier to add #ifdef around:
>  > +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
>  > +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, false),

How about below changes:

---
diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
index 8bb7a2c21f..54a3cfe136 100644
--- a/hw/display/virtio-gpu-virgl.c
+++ b/hw/display/virtio-gpu-virgl.c
@@ -106,8 +106,15 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
     trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
                                     cc.debug_name);

-    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
-                                  cc.debug_name);
+    if (cc.context_init && virtio_gpu_context_init_enabled(g->conf)) {
+        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
+                                                 cc.context_init,
+                                                 cc.nlen,
+                                                 cc.debug_name);
+        return;
+    }
+
+    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen, cc.debug_name);
 }

 static void virgl_cmd_context_destroy(VirtIOGPU *g,
diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
index be16efbd38..6ff2c8e92d 100644
--- a/hw/display/virtio-gpu.c
+++ b/hw/display/virtio-gpu.c
@@ -1508,6 +1508,10 @@ static Property virtio_gpu_properties[] = {
     DEFINE_PROP_BIT("blob", VirtIOGPU, parent_obj.conf.flags,
                     VIRTIO_GPU_FLAG_BLOB_ENABLED, false),
     DEFINE_PROP_SIZE("hostmem", VirtIOGPU, parent_obj.conf.hostmem, 0),
+#ifdef HAVE_VIRGL_CONTEXT_INIT
+    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
+                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, true),
+#endif
     DEFINE_PROP_END_OF_LIST(),
 };



From xen-devel-bounces@lists.xenproject.org Sun Sep 17 05:49:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 17 Sep 2023 05:49:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603671.940738 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhkev-0006QS-Ku; Sun, 17 Sep 2023 05:49:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603671.940738; Sun, 17 Sep 2023 05:49:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhkev-0006QL-I4; Sun, 17 Sep 2023 05:49:29 +0000
Received: by outflank-mailman (input) for mailman id 603671;
 Sun, 17 Sep 2023 05:49:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IbiU=FB=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qhkev-0006QF-0b
 for xen-devel@lists.xenproject.org; Sun, 17 Sep 2023 05:49:29 +0000
Received: from mail-pl1-x62e.google.com (mail-pl1-x62e.google.com
 [2607:f8b0:4864:20::62e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f64130bc-551d-11ee-8788-cb3800f73035;
 Sun, 17 Sep 2023 07:49:27 +0200 (CEST)
Received: by mail-pl1-x62e.google.com with SMTP id
 d9443c01a7336-1c4707b1031so3193245ad.2
 for <xen-devel@lists.xenproject.org>; Sat, 16 Sep 2023 22:49:27 -0700 (PDT)
Received: from [157.82.205.33] ([157.82.205.33])
 by smtp.gmail.com with ESMTPSA id
 w6-20020a170902e88600b001c413e216fbsm5716616plg.226.2023.09.16.22.49.21
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 16 Sep 2023 22:49:25 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f64130bc-551d-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1694929766; x=1695534566; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=ftBbZUD9qjL5k9CoM3Lz+rdiUqAl7dEn7UYob6Ef6U8=;
        b=QVv5w1rR87xlZNml5GYqECknQK+f7CZ1hB27UfkP1TYocfqf1XAgr3clBrvsXVoBgL
         BpTPPN3ilbnAAzWh9wFGyRac8GoKONJUiswKeh/RCLhIoJcgtbY944bAsKuAneqT5FYC
         ANesf47ryOfqXoXCekVcKvE3ez8Qi2qL+09uRRSHwiYt6tMHLjAwl/uKc1eSwuWaGT6B
         Hu9Pt/XsFbPWst5DnsmBmh1mAnX+TcVUuxjAWQRmAsq+/EAj1HRy8JMdHhx2EsY8qqWP
         o/hViUH/BCnKWHQ6gw2EKXaOPXdNs0VngryaTkkFR5Y+cX4bn/rJgcN5eCjzsITY7DDC
         Vetw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694929766; x=1695534566;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=ftBbZUD9qjL5k9CoM3Lz+rdiUqAl7dEn7UYob6Ef6U8=;
        b=OrRanGzjEbcrN2BJknZDYZkIQnnQuufI62ZrRNcf2676hIq91/yNZzTY70frRVemUq
         vGLruM2kZqZNj1+K1PppTi5FI9ayzgcCyuV8qpyKzgk3qeaxhkEBp5huBoDz2b1P5Z7Q
         YsqE4U1GVD/nd9NMwCuTL8yeiYO1DkKrfUACoGQnxGNGbXjPspW0KLCI7YAkVtkGS2bR
         M+ATUyBczrmuLxB+0i5Gl7aV+2QrR9H377mcezA3je7HTYtyazOSXbLWHaZY9jIgpzNV
         QmStJEdnMIbFJifKS0+wCOIi/DTV2C8hJ3DhB/Wko7SIZK6LwA7fxLWq8m0QlSzhLSdh
         ldCQ==
X-Gm-Message-State: AOJu0YyTD1qULUf4Dq0YErXPAAwCd2hQSyD2XFW3VP+5/aauo2LdIeHE
	5lsjUbmAr9PLshH66iODvTaG7Q==
X-Google-Smtp-Source: AGHT+IGpb+yRTIEIRaa0k4bX/4nKCq1FpIWGs/TzjLAaCLV7lrAGhOl6+KUo8vw1UbJnYDW7JG9Q3A==
X-Received: by 2002:a17:903:2283:b0:1b9:e81f:fb08 with SMTP id b3-20020a170903228300b001b9e81ffb08mr6622062plh.55.1694929766182;
        Sat, 16 Sep 2023 22:49:26 -0700 (PDT)
Message-ID: <568e9a08-c09c-4695-8165-04d3817b09f3@daynix.com>
Date: Sun, 17 Sep 2023 14:49:19 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 06/13] virtio-gpu: Support context init feature
 with virglrenderer
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin"
 <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, "ernunes@redhat.com"
 <ernunes@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?=
 <philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-7-ray.huang@amd.com>
 <561abf48-d72c-467d-94fd-54ffa1dfb512@daynix.com> <ZQWEQ9ZHkokhKOSA@amd.com>
 <d671bfad-7d78-41cf-a6f4-e92bf6ce2bd5@daynix.com> <ZQaSbaCUQ6iiHI/Y@amd.com>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <ZQaSbaCUQ6iiHI/Y@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/17 14:45, Huang Rui wrote:
> On Sat, Sep 16, 2023 at 06:42:04PM +0800, Akihiko Odaki wrote:
>> On 2023/09/16 19:32, Huang Rui wrote:
>>> On Fri, Sep 15, 2023 at 11:20:46PM +0800, Akihiko Odaki wrote:
>>>> On 2023/09/15 20:11, Huang Rui wrote:
>>>>> Patch "virtio-gpu: CONTEXT_INIT feature" has added the context_init
>>>>> feature flags.
>>>>> We would like to enable the feature with virglrenderer, so add to create
>>>>> virgl renderer context with flags using context_id when valid.
>>>>>
>>>>> Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>>>> ---
>>>>>
>>>>> V4 -> V5:
>>>>>        - Inverted patch 5 and 6 because we should configure
>>>>>          HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
>>>>>
>>>>>     hw/display/virtio-gpu-virgl.c | 13 +++++++++++--
>>>>>     hw/display/virtio-gpu.c       |  2 ++
>>>>>     2 files changed, 13 insertions(+), 2 deletions(-)
>>>>>
>>>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
>>>>> index 8bb7a2c21f..312953ec16 100644
>>>>> --- a/hw/display/virtio-gpu-virgl.c
>>>>> +++ b/hw/display/virtio-gpu-virgl.c
>>>>> @@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
>>>>>         trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
>>>>>                                         cc.debug_name);
>>>>>     
>>>>> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
>>>>> -                                  cc.debug_name);
>>>>> +    if (cc.context_init) {
>>>>> +#ifdef HAVE_VIRGL_CONTEXT_INIT
>>>>> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
>>>>> +                                                 cc.context_init,
>>>>> +                                                 cc.nlen,
>>>>> +                                                 cc.debug_name);
>>>>> +        return;
>>>>> +#endif
>>>>
>>>> This should deal with the case when context_init is set while
>>>> HAVE_VIRGL_CONTEXT_INIT is not defined.
>>>
>>> Actually, I received the comment below before:
>>>
>>> https://lore.kernel.org/qemu-devel/32588d0e-a1f2-30c4-5e9f-e6e7c4190b65@linaro.org/
>>>
>>> At original patch set, I have the case while HAVE_VIRGL_CONTEXT_INIT is set
>>> but HAVE_VIRGL_CONTEXT_INIT is not defined. But I think we may encounter
>>> the case that virgl_renderer_context_create_with_flags is not defined in
>>> virglrenderer early version. Should I bring the error message back?
>>>
>>> Thanks,
>>> Ray
>>
>> I suggest checking VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED instead of
>> reporting an error here. Perhaps it may be easier to add #ifdef around:
>>   > +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
>>   > +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, false),
> 
> How about below changes: >
> ---
> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> index 8bb7a2c21f..54a3cfe136 100644
> --- a/hw/display/virtio-gpu-virgl.c
> +++ b/hw/display/virtio-gpu-virgl.c
> @@ -106,8 +106,15 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
>       trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
>                                       cc.debug_name);
> 
> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
> -                                  cc.debug_name);
> +    if (cc.context_init && virtio_gpu_context_init_enabled(g->conf)) {
> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
> +                                                 cc.context_init,
> +                                                 cc.nlen,
> +                                                 cc.debug_name);
> +        return;
> +    }
> +
> +    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen, cc.debug_name);
>   }
> 
>   static void virgl_cmd_context_destroy(VirtIOGPU *g,
> diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> index be16efbd38..6ff2c8e92d 100644
> --- a/hw/display/virtio-gpu.c
> +++ b/hw/display/virtio-gpu.c
> @@ -1508,6 +1508,10 @@ static Property virtio_gpu_properties[] = {
>       DEFINE_PROP_BIT("blob", VirtIOGPU, parent_obj.conf.flags,
>                       VIRTIO_GPU_FLAG_BLOB_ENABLED, false),
>       DEFINE_PROP_SIZE("hostmem", VirtIOGPU, parent_obj.conf.hostmem, 0),
> +#ifdef HAVE_VIRGL_CONTEXT_INIT
> +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
> +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, true),
> +#endif
>       DEFINE_PROP_END_OF_LIST(),
>   };
> 

It looks better, but not having #ifdef around 
virgl_renderer_context_create_with_flags() will result in a link error 
with old virglrenderer.


From xen-devel-bounces@lists.xenproject.org Sun Sep 17 08:36:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 17 Sep 2023 08:36:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603687.940752 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhnGT-0001Bp-L4; Sun, 17 Sep 2023 08:36:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603687.940752; Sun, 17 Sep 2023 08:36:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhnGT-0001Bi-HU; Sun, 17 Sep 2023 08:36:25 +0000
Received: by outflank-mailman (input) for mailman id 603687;
 Sun, 17 Sep 2023 08:36:23 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhnGR-0001BY-Ne; Sun, 17 Sep 2023 08:36:23 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhnGR-0001Dk-LG; Sun, 17 Sep 2023 08:36:23 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhnGR-0007B7-6N; Sun, 17 Sep 2023 08:36:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qhnGR-0003qu-5r; Sun, 17 Sep 2023 08:36:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=4Dj5M4P+KvaC0Z5Vlk5/Rcc3qR3ydGEvWNZCxcSkGuE=; b=5L7s+9Ra1GzgWKUsTI34jCB3wN
	/JA9Nt2Y26BtVXvkBlUtEVtCMOzd5bdt8Ak16QaNCTmCBEE8V4/Jx/JRGdyEXPsa6PPio4w59+OrG
	gCVWoZAid/TzYrlbNO6fLeibK/BfB4lP7UFT+FtDauOaG9hwiAFN/sygH2ygBbl9jMgY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183021-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183021: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl-xsm:xen-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    xen-unstable:test-amd64-i386-pair:guest-migrate/dst_host/src_host/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-i386-examine-uefi:xen-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=290f82375d828ef93f831a5ef028f1283aa1ea47
X-Osstest-Versions-That:
    xen=b5a601093d1f9d5e96eb74b692f1b6252a2598a2
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 17 Sep 2023 08:36:23 +0000

flight 183021 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183021/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-xsm        7 xen-install      fail in 183013 pass in 183021
 test-armhf-armhf-libvirt-qcow2 13 guest-start    fail in 183013 pass in 183021
 test-amd64-i386-pair 28 guest-migrate/dst_host/src_host/debian.repeat fail in 183018 pass in 183021
 test-amd64-i386-examine-uefi  6 xen-install                fail pass in 183013
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat  fail pass in 183018

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop fail in 183013 blocked in 183009
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183009
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183009
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183009
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183009
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183009
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183009
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183009
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183009
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183009
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183009
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183009
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183009
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  290f82375d828ef93f831a5ef028f1283aa1ea47
baseline version:
 xen                  b5a601093d1f9d5e96eb74b692f1b6252a2598a2

Last test of basis   183009  2023-09-15 13:10:21 Z    1 days
Testing same since   183013  2023-09-16 03:24:56 Z    1 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>
  Michal Orzel <michal.orzel@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 fail    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   b5a601093d..290f82375d  290f82375d828ef93f831a5ef028f1283aa1ea47 -> master


From xen-devel-bounces@lists.xenproject.org Sun Sep 17 14:18:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 17 Sep 2023 14:18:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603700.940761 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhsaq-00026J-Qt; Sun, 17 Sep 2023 14:17:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603700.940761; Sun, 17 Sep 2023 14:17:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhsaq-00026C-OK; Sun, 17 Sep 2023 14:17:48 +0000
Received: by outflank-mailman (input) for mailman id 603700;
 Sun, 17 Sep 2023 14:17:47 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhsap-000262-6X; Sun, 17 Sep 2023 14:17:47 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhsao-0000xY-VX; Sun, 17 Sep 2023 14:17:47 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhsao-0005dR-EH; Sun, 17 Sep 2023 14:17:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qhsao-0007m2-Dl; Sun, 17 Sep 2023 14:17:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=wF8eBmXTAAuAp+PBGvBr28UT7NPCkGoR+yv2ODdTBco=; b=4mX2hjUAXk3EH9GlzQj8OXfIPg
	SkOWYyw5OMA3PfRoC+051ExggwncMffvLQktk4LB1d5m7zC8Um6K/+pYpy00iKh+tepOS2lWZRNyv
	JQc9ztFnLk5dUyLZ2TjAuubnc2j72IfR54tdbilUGXoXTkQ8yrui7kvzar6CSdziiKLQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183022-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183022: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=f0b0d403eabbe135d8dbb40ad5e41018947d336c
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 17 Sep 2023 14:17:46 +0000

flight 183022 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183022/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                f0b0d403eabbe135d8dbb40ad5e41018947d336c
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   20 days
Failing since        182544  2023-08-28 20:42:13 Z   19 days   37 attempts
Testing same since   183022  2023-09-17 03:31:34 Z    0 days    1 attempts

------------------------------------------------------------
2318 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 281801 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 17 18:18:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 17 Sep 2023 18:18:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603708.940772 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhwLI-0001M0-Qe; Sun, 17 Sep 2023 18:18:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603708.940772; Sun, 17 Sep 2023 18:18:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qhwLI-0001Lt-NV; Sun, 17 Sep 2023 18:18:00 +0000
Received: by outflank-mailman (input) for mailman id 603708;
 Sun, 17 Sep 2023 18:17:59 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhwLG-0001Lj-VE; Sun, 17 Sep 2023 18:17:58 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhwLG-0006k6-RN; Sun, 17 Sep 2023 18:17:58 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qhwLG-00044A-DM; Sun, 17 Sep 2023 18:17:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qhwLG-0004sB-Cw; Sun, 17 Sep 2023 18:17:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=paYU0+jfCxMpRgQvUtfKTtDF+xqJVTvye0MeLXtHVA8=; b=DjEIZRgvhnquEcmEpBNxDl/4Hg
	LkgMRfp96zXAQHXoYDwS4wEcKjx/uLbFJWga71QR6BL1ldiKgS/jcLKVJzzHcEYo5LMjmLlzZB+SG
	m7bpP7VC2D7MBNuMCKz3rzTAZDtj8kjWNb8Sx65nAyvFg4uoDWnr3lW5Bq7I+ghPT11Q=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183023-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183023: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-examine-uefi:xen-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=290f82375d828ef93f831a5ef028f1283aa1ea47
X-Osstest-Versions-That:
    xen=290f82375d828ef93f831a5ef028f1283aa1ea47
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 17 Sep 2023 18:17:58 +0000

flight 183023 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183023/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail in 183021 pass in 183023
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 7 xen-install fail pass in 183021

Tests which did not succeed, but are not blocking:
 test-amd64-i386-examine-uefi  6 xen-install         fail in 183021 like 183018
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183021
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183021
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183021
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183021
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183021
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183021
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183021
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183021
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183021
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183021
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183021
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183021
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  290f82375d828ef93f831a5ef028f1283aa1ea47
baseline version:
 xen                  290f82375d828ef93f831a5ef028f1283aa1ea47

Last test of basis   183023  2023-09-17 08:40:34 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              fail    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Sun Sep 17 23:54:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 17 Sep 2023 23:54:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603717.940782 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi1ar-0001lx-UM; Sun, 17 Sep 2023 23:54:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603717.940782; Sun, 17 Sep 2023 23:54:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi1ar-0001lq-Q7; Sun, 17 Sep 2023 23:54:25 +0000
Received: by outflank-mailman (input) for mailman id 603717;
 Sun, 17 Sep 2023 23:54:25 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qi1ar-0001lg-CO; Sun, 17 Sep 2023 23:54:25 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qi1ar-0006BS-9m; Sun, 17 Sep 2023 23:54:25 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qi1aq-0003Qw-MF; Sun, 17 Sep 2023 23:54:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qi1aq-0007B4-Lk; Sun, 17 Sep 2023 23:54:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=g4qs353Ld3Orst5yjU0LRCMY1vEOZBoGZPJvFrY7y2c=; b=sA45AYOvAzvuY/L1Hx0KZCNljG
	Pwvla6IWucKrZA2jaZGl6bT3jrLRNQpq1E7gMFXUUvIkV5GvnlejVrnQ0jE14KHwDLMKF7pcpPhtd
	+Ty+ZbPwIyoL7pmKY+Wgs5b+MTj+3IifWXKES/1JUg7F3ZUKhdkaxug9xX7HUNRw2F7w=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183024-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183024: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-armhf-armhf-xl-credit1:host-ping-check-xen:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=f0b0d403eabbe135d8dbb40ad5e41018947d336c
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 17 Sep 2023 23:54:24 +0000

flight 183024 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183024/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit1  10 host-ping-check-xen        fail pass in 183022

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 183022 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 183022 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                f0b0d403eabbe135d8dbb40ad5e41018947d336c
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   21 days
Failing since        182544  2023-08-28 20:42:13 Z   20 days   38 attempts
Testing same since   183022  2023-09-17 03:31:34 Z    0 days    2 attempts

------------------------------------------------------------
2318 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 281801 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 05:30:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 05:30:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603755.940809 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi6qF-00059U-JT; Mon, 18 Sep 2023 05:30:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603755.940809; Mon, 18 Sep 2023 05:30:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi6qF-00059N-GE; Mon, 18 Sep 2023 05:30:39 +0000
Received: by outflank-mailman (input) for mailman id 603755;
 Mon, 18 Sep 2023 05:30:38 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qi6qE-00059D-Dq; Mon, 18 Sep 2023 05:30:38 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qi6qE-0005y8-81; Mon, 18 Sep 2023 05:30:38 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qi6qD-0008PM-Kf; Mon, 18 Sep 2023 05:30:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qi6qD-00045Z-K1; Mon, 18 Sep 2023 05:30:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=TdBPWLnFl0YyPaStbsC/+sfcM6Eb6Xr12vU6rTlgOwA=; b=ZU57v3bZ4G3AY7/VjlhWUDCb8h
	IMB0CnilMzwiUsa3E1KzL95SCclwGJ7oJYg3z9V+69ogOw9wHll4I6xTFZLYjgnV2OCR+vwrYtjwo
	zFLDlgAos6cRte8y7KGxeqpQablYa3IrKEw9G/5Ea/3xETMqXIzxrTgqPcGS1OEZlX0I=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183027-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183027: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=db38c7de64d4dda2bf3cc6e5d764b027b00afa59
X-Osstest-Versions-That:
    ovmf=29cce3356aec6db878ad318c4abeb63aa9e845aa
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 18 Sep 2023 05:30:37 +0000

flight 183027 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183027/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 db38c7de64d4dda2bf3cc6e5d764b027b00afa59
baseline version:
 ovmf                 29cce3356aec6db878ad318c4abeb63aa9e845aa

Last test of basis   183003  2023-09-14 10:12:23 Z    3 days
Testing same since   183027  2023-09-18 02:43:21 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Anthony PERARD <anthony.perard@citrix.com>
  Zhiguang Liu <zhiguang.liu@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   29cce3356a..db38c7de64  db38c7de64d4dda2bf3cc6e5d764b027b00afa59 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 05:44:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 05:44:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603763.940818 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi736-0006rW-O7; Mon, 18 Sep 2023 05:43:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603763.940818; Mon, 18 Sep 2023 05:43:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi736-0006rP-LQ; Mon, 18 Sep 2023 05:43:56 +0000
Received: by outflank-mailman (input) for mailman id 603763;
 Mon, 18 Sep 2023 05:43:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=5am5=FC=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qi735-0006rJ-2S
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 05:43:55 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20619.outbound.protection.outlook.com
 [2a01:111:f400:fe59::619])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5928f305-55e6-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 07:43:53 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by PH8PR12MB7255.namprd12.prod.outlook.com (2603:10b6:510:224::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Mon, 18 Sep
 2023 05:43:49 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Mon, 18 Sep 2023
 05:43:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5928f305-55e6-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VsMB2gW1KCEt8dj44U0fntkiGnm35FIBYHCD4qgsNftzz+vMbQ5PTA840CALCCSVOo5pv5FXdak+sd5PR8Bf9WwTfLD5fBD1CXPAL9BYba19ywRKCYd6wQqTtuG7GussHSUbFzWyHcA6a9wOOsC5v1OdG1hy765//GqQIBWF1PIt1RY27F6ZPOd9rzejaWtWnbgSmzV0aM34f0EVElgzRoO9WoHAPo6ID7c4VbH5qg+vKTzkv+eM0whZ8L8p7gyjg3UNQLh+yISvr3fgDf1vdfV4OZmHYLYAVASYdNpDXwWkx8Vf6iIn5BHp1C1aPJC2HrWOdpsTmiZwj9HnFAoiww==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CvkDqnlAF7rRETsb5K84Hk+N3n6r/77QPcFyf6zIN/E=;
 b=Tt+gu8QbEcrYBJJ8w4jzCd7gdrFyfKxDbVji80nL+cWP89hZF3BuXMgjYdWtkdoFFXxnEVYFJIWXmpc/EJjrTDwEnhI+a07MTduXZ9/XtPsrEMbV4f/DLfcOhrPGnxacYO/BxvOwBq2BObYM6qwxEEtGbfHWyN3Vf2zidcKfhgB4zQ7Y5AviRTPB0gILaZ3gLYyW5Sujzzr5ecO6/E1nny/R8R8PNG7pOQZ8lRmBc9AC5X411BH7Ycuhpvy6dTZNyqUunH+tzUCENnSgl+c5mBZfxK5Yh1vDbZfA08TOj8nOcpb8/divajZpM0A7FAyKr14g57Id1bT474lKZSQRFA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CvkDqnlAF7rRETsb5K84Hk+N3n6r/77QPcFyf6zIN/E=;
 b=4PFc0UUR64nfsyXwOlFfKniNc2aBwYSs6WOl+zgDT8vFXAq/wolW4ao11smIWLktvJKmlVeMtt67HLcoQfqrJOEOtj3QQhE44VixX0EqeBzXE02HT8+tPBaMaisUxwQyElzpixSEQrTr0KnInG0FwnSA0gxAj79VZiKeM9Yarsc=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Mon, 18 Sep 2023 13:43:19 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 06/13] virtio-gpu: Support context init feature
 with virglrenderer
Message-ID: <ZQfjd9DsMTwxlPKF@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-7-ray.huang@amd.com>
 <561abf48-d72c-467d-94fd-54ffa1dfb512@daynix.com>
 <ZQWEQ9ZHkokhKOSA@amd.com>
 <d671bfad-7d78-41cf-a6f4-e92bf6ce2bd5@daynix.com>
 <ZQaSbaCUQ6iiHI/Y@amd.com>
 <568e9a08-c09c-4695-8165-04d3817b09f3@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <568e9a08-c09c-4695-8165-04d3817b09f3@daynix.com>
X-ClientProxiedBy: SI1PR02CA0004.apcprd02.prod.outlook.com
 (2603:1096:4:1f7::12) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|PH8PR12MB7255:EE_
X-MS-Office365-Filtering-Correlation-Id: 4c843311-5657-4a3a-1889-08dbb80a3afa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ftcUfFM11Q69st5G3GHZdW+bvhniT5e1WaPLnOPfT5QXYE20Dup9fMmBv/UiAWRunIQ3BPOka1L8SFYkwvNx22WHpCZ4T7+H3ux5BqamPFIJcIvoQ0vaqneK+JZzpB+qw7NDysucVvNMS6ukTYSVz7df7GsIhyYrtzWZI4IzaIVPxhOGQNRezZKEP+FkI01TX4YhKyDdDrXoOHgZGLRmKfiGQow11ejvC3UoRD9gHmt34DINapiylzgfS258ydRqqTkDG7rOdh5wqggbRCSq7RZ6/l4tFs38lnHheP7xYmoh2WRnWsvsZ/YLit42NxSWiWYlFuJIUd44q40X44IDN8Adrx+YLiDhhqp/RuH4Sa6Mh+NpinfmREUle3GoXGKZE4kSf8DXHm6h0/0tUCeCFZ8W1KkB0/J/9wFfs51lc8BaL6d/VdUQoYykWjm5utV6eT7NJXupXyE8BdPzE8P50/xeUPo0Zrj6z655Slwy1a+kKTRhMsfi1DW5WqK2WbhFUAZWqDtgI9urnxrc95P2nrM6jCRnZJgDONvS/IlqYIM=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(366004)(376002)(396003)(346002)(1800799009)(186009)(451199024)(6506007)(6666004)(6486002)(53546011)(36756003)(66946007)(7416002)(8936002)(83380400001)(5660300002)(966005)(478600001)(6512007)(66556008)(41300700001)(2906002)(26005)(2616005)(54906003)(66476007)(6916009)(8676002)(316002)(38100700002)(86362001)(4326008)(66899024);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?guc15RriW+bLtVkRh5X1t074X39rTBIHqWRF1jcaVL+VQWnCu9HT8k5KQ0FN?=
 =?us-ascii?Q?v+rHADOVc5WpCYJ8O91Ugq8oEdOjcHFahg22wbXWeouzSuJqYt4r2uZ7XTPb?=
 =?us-ascii?Q?UL/GEyiRe9olDr/3oeUfxcOV6W39gvUygbdkEqCoMuGS8b3bYfsXMM6ehxJf?=
 =?us-ascii?Q?KL02bS8NvJ+btYv1YwD9UwsuO9apbIkp4EU8C9yo1sjPlqtSj/Nyx4pNw9e+?=
 =?us-ascii?Q?JmrXAiiay9sEdcsrdnZtsCuTlrTZzVIAM0Gvm9R60z295bIiRbRfxYW/MEnn?=
 =?us-ascii?Q?/8uqK8MYK4WXzIIHN75c1TLs5rz+vctVyXkt9ZkFmHXKVmUHzCIP/5s8B2zb?=
 =?us-ascii?Q?WZnSYVuSqcBYCE0jAzeBljDKL5R99y3LPhydObRJylFgr+8cN/8jT6/mU+WD?=
 =?us-ascii?Q?+KP7dhstBBrQUBvBQPs3sWFeoYtykar0ZSs0cQvilldTGWTEMEoqARSzBLSg?=
 =?us-ascii?Q?oiz4tvah8ErIDLUWpU8xj1K/3t+mAUgL4eY3TtiJ5iomtVSMR/YkysID3wX7?=
 =?us-ascii?Q?i6CIn7VoSD+0CoFCKMCV/OuAcxAFhPqmK1RqE7hpso3U8PG8J41ViNvkz48M?=
 =?us-ascii?Q?j3WpsEu5mtZ1mhC8CNQEJPT0+kMbW2qaMLc4Gv04l3SAVTm1B7cWRTUcD7Yf?=
 =?us-ascii?Q?dtXBN0Tknx+pB1i2X3SKMjm/mnD79QjQ75RCszH65uCL80sBpJXimIlUA/fh?=
 =?us-ascii?Q?xC5cPaZBeQvVBGUdcgNIGLo5aXCOLY+N+/nlxIWYLp+l1bCz36rvsFc3lHWa?=
 =?us-ascii?Q?iCYwB6M8w9q/uti0FA9TFG4ynqnUS4NryfD1Ng91AoRadQ7QWSUEmytCXew8?=
 =?us-ascii?Q?zzQxM+9eugh0BO1ds1P1SNwyvMpQb1Quo+3U03CZcsc7zg/K9pAnSEJ07wyB?=
 =?us-ascii?Q?v9ZsDxYvd5lkW4zbK1AsblN3LykAvH/5VB6JUeYQ1YghQq7D3IOjToJo1w8t?=
 =?us-ascii?Q?UFAiNkh8cYqJziCSpa5stmQ+Pn0E71wy9xDOPwsggNR1z5x7+S5A2kjnbupu?=
 =?us-ascii?Q?O9NnGbNPRgh4F8A3e06WWLUtPcJYFQHgPxM72uRKpd/8ZiwvvCavFtYN3rkg?=
 =?us-ascii?Q?15eIb+X0id8lBVJBH1LAQZr1XtRhK0N9PBj5Q/NW6BMFRCTbGVCnc1qlG9+E?=
 =?us-ascii?Q?r3m5frdPvSz22elUMsGrk1x2DPlnLMhwBr0aVxd42eWHp8TL8XJOV3qPD7NQ?=
 =?us-ascii?Q?3p0IpmDGp0V3hu9/cNopqa9+8sJNgXRkyT6wdcXcTLFXXPla/inZFKE1HP/N?=
 =?us-ascii?Q?ByDToXhPI9B5iTya1skFYzvmGkT5YjBOddN6MziTkYpz/TJEsMb+drZV/uZN?=
 =?us-ascii?Q?OscLnWOMsDyUfrXmOhMdBAgeiZa9CqNwlyYBujh4g8MG5Fs2sD7EEnZqJPea?=
 =?us-ascii?Q?5RpJK/KqKBZMcHbfrRzhN9INj0hUdQcU82N6C3xbp/2qnn8HFFqDSncQi+ZY?=
 =?us-ascii?Q?E+WDoQJ7CXZHZc2qtAnLDnqfmNMXDT5Jw1JIFC64juopwlh1D4GaPB2wqZgK?=
 =?us-ascii?Q?0D/zV4gTFPaEK33e1KpE9vBS7XhuSLWRvvuKAHplvtElMe1KRIpzz79idt41?=
 =?us-ascii?Q?n8SFLcNMcc/45zV02hr/zh7ZO1SANo3JezrOAKT9?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4c843311-5657-4a3a-1889-08dbb80a3afa
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 05:43:48.6541
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5M2/wBbrH4dtFWN3LL/iEjleo/sZajwNvWAW9taU1SS44HVbOPrKcPNhvZkdboRFcVVE+bk5P/e5+8leWxBgAg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB7255

On Sun, Sep 17, 2023 at 01:49:19PM +0800, Akihiko Odaki wrote:
> On 2023/09/17 14:45, Huang Rui wrote:
> > On Sat, Sep 16, 2023 at 06:42:04PM +0800, Akihiko Odaki wrote:
> >> On 2023/09/16 19:32, Huang Rui wrote:
> >>> On Fri, Sep 15, 2023 at 11:20:46PM +0800, Akihiko Odaki wrote:
> >>>> On 2023/09/15 20:11, Huang Rui wrote:
> >>>>> Patch "virtio-gpu: CONTEXT_INIT feature" has added the context_init
> >>>>> feature flags.
> >>>>> We would like to enable the feature with virglrenderer, so add to create
> >>>>> virgl renderer context with flags using context_id when valid.
> >>>>>
> >>>>> Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> >>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
> >>>>> ---
> >>>>>
> >>>>> V4 -> V5:
> >>>>>        - Inverted patch 5 and 6 because we should configure
> >>>>>          HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
> >>>>>
> >>>>>     hw/display/virtio-gpu-virgl.c | 13 +++++++++++--
> >>>>>     hw/display/virtio-gpu.c       |  2 ++
> >>>>>     2 files changed, 13 insertions(+), 2 deletions(-)
> >>>>>
> >>>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> >>>>> index 8bb7a2c21f..312953ec16 100644
> >>>>> --- a/hw/display/virtio-gpu-virgl.c
> >>>>> +++ b/hw/display/virtio-gpu-virgl.c
> >>>>> @@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
> >>>>>         trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
> >>>>>                                         cc.debug_name);
> >>>>>     
> >>>>> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
> >>>>> -                                  cc.debug_name);
> >>>>> +    if (cc.context_init) {
> >>>>> +#ifdef HAVE_VIRGL_CONTEXT_INIT
> >>>>> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
> >>>>> +                                                 cc.context_init,
> >>>>> +                                                 cc.nlen,
> >>>>> +                                                 cc.debug_name);
> >>>>> +        return;
> >>>>> +#endif
> >>>>
> >>>> This should deal with the case when context_init is set while
> >>>> HAVE_VIRGL_CONTEXT_INIT is not defined.
> >>>
> >>> Actually, I received the comment below before:
> >>>
> >>> https://lore.kernel.org/qemu-devel/32588d0e-a1f2-30c4-5e9f-e6e7c4190b65@linaro.org/
> >>>
> >>> At original patch set, I have the case while HAVE_VIRGL_CONTEXT_INIT is set
> >>> but HAVE_VIRGL_CONTEXT_INIT is not defined. But I think we may encounter
> >>> the case that virgl_renderer_context_create_with_flags is not defined in
> >>> virglrenderer early version. Should I bring the error message back?
> >>>
> >>> Thanks,
> >>> Ray
> >>
> >> I suggest checking VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED instead of
> >> reporting an error here. Perhaps it may be easier to add #ifdef around:
> >>   > +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
> >>   > +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, false),
> > 
> > How about below changes: >
> > ---
> > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> > index 8bb7a2c21f..54a3cfe136 100644
> > --- a/hw/display/virtio-gpu-virgl.c
> > +++ b/hw/display/virtio-gpu-virgl.c
> > @@ -106,8 +106,15 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
> >       trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
> >                                       cc.debug_name);
> > 
> > -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
> > -                                  cc.debug_name);
> > +    if (cc.context_init && virtio_gpu_context_init_enabled(g->conf)) {
> > +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
> > +                                                 cc.context_init,
> > +                                                 cc.nlen,
> > +                                                 cc.debug_name);
> > +        return;
> > +    }
> > +
> > +    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen, cc.debug_name);
> >   }
> > 
> >   static void virgl_cmd_context_destroy(VirtIOGPU *g,
> > diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> > index be16efbd38..6ff2c8e92d 100644
> > --- a/hw/display/virtio-gpu.c
> > +++ b/hw/display/virtio-gpu.c
> > @@ -1508,6 +1508,10 @@ static Property virtio_gpu_properties[] = {
> >       DEFINE_PROP_BIT("blob", VirtIOGPU, parent_obj.conf.flags,
> >                       VIRTIO_GPU_FLAG_BLOB_ENABLED, false),
> >       DEFINE_PROP_SIZE("hostmem", VirtIOGPU, parent_obj.conf.hostmem, 0),
> > +#ifdef HAVE_VIRGL_CONTEXT_INIT
> > +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
> > +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, true),
> > +#endif
> >       DEFINE_PROP_END_OF_LIST(),
> >   };
> > 
> 
> It looks better, but not having #ifdef around 
> virgl_renderer_context_create_with_flags() will result in a link error 
> with old virglrenderer.

Hmm, right, it seems that we have to have a "#ifdef" around here. Or do you
have any better idea?

Thanks,
Ray


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 06:07:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 06:07:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603770.940828 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi7Q0-0001ny-Kp; Mon, 18 Sep 2023 06:07:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603770.940828; Mon, 18 Sep 2023 06:07:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi7Q0-0001nr-IM; Mon, 18 Sep 2023 06:07:36 +0000
Received: by outflank-mailman (input) for mailman id 603770;
 Mon, 18 Sep 2023 06:07:35 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ZGqG=FC=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qi7Pz-0001nl-0C
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 06:07:35 +0000
Received: from mail-pg1-x529.google.com (mail-pg1-x529.google.com
 [2607:f8b0:4864:20::529])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a7afa217-55e9-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 08:07:33 +0200 (CEST)
Received: by mail-pg1-x529.google.com with SMTP id
 41be03b00d2f7-51b4ef5378bso3378490a12.1
 for <xen-devel@lists.xenproject.org>; Sun, 17 Sep 2023 23:07:33 -0700 (PDT)
Received: from [157.82.205.33] ([157.82.205.33])
 by smtp.gmail.com with ESMTPSA id
 k6-20020aa790c6000000b0069028bdd24dsm6446226pfk.34.2023.09.17.23.07.26
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sun, 17 Sep 2023 23:07:31 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a7afa217-55e9-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1695017252; x=1695622052; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=wTP6Zug257B7ooTQC5CAj7GOO7MTggg9HcFBRSUzaoc=;
        b=lsd/Sv+MEvYfy0pNbaDFX1KHl3nhGEUWRqeel2uQ0bhITdYFv83BOJ3GnRwHG3k1FS
         StywzcIp+oDeXTFDPheIV+HAZ1cr9KmbfzO8O7k6v9/l/bc3qHtQn8ZHDFOAa+89DWbD
         1eVwqstKHkAsN9i05He62x5YuUkOmUVMVJQWQDcNJfLJKHbJT6qAW28OmPUImzMQYI5j
         N1jG12zDMdtTTBfFfHyJWN/35HiWU7zB/ixLMHlkuoZliHYeVyHoWduzX8+egrS14vw2
         YENy05UUQB+dC+kVCfBCKjJ9qu3C07wgQkwAFycDIYv04RQfgOfi4zlkq20rbpIrJr7d
         pf5g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695017252; x=1695622052;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=wTP6Zug257B7ooTQC5CAj7GOO7MTggg9HcFBRSUzaoc=;
        b=Wq4LSbkpUokcCb3VXvZUP8HwC73fnD/nEvj7vNzcyQB1QvYmrEISg/4iMbpPvwln1L
         c+Ml5mynfj/UHS1wB1FRz66vkosIYPtCj0wm8fDKCS7QicfHTPp2NofF2YbXNtbOHAFG
         SZyCYf9tRc9vnpPD291N9j0lSOBWo1aBeI7rSwg2TJuY1SLL7Vo5qeEUF+pSVXZ7XH0Z
         pvsproT+DyY/11nKqUju2oUAlkwhdrVa27iUDJGI7IP2JYmRB9bh2GWchGmGIB/GsAT3
         6B2qk1jVxHGBzhsFGf853rR4mlJpd8rGSPe5SCr3jcX9TvM0NqHdTGHpP+Zuid2iEb9H
         kIcw==
X-Gm-Message-State: AOJu0Ywykp75bHVyvXwFDgWfVpXFZ5zRVucgoZ+D0Zsow5Obf9uUZzaU
	AjBixYJ8/Wxxuim92S5afZ4QZQ==
X-Google-Smtp-Source: AGHT+IEHOIOhreXYfLE6SJziVIWdwXdgdAC8dOaIF8C4wtve/e246JOxLw8znC365NulwWPD0HII/g==
X-Received: by 2002:a05:6a21:6da2:b0:153:b245:50ff with SMTP id wl34-20020a056a216da200b00153b24550ffmr11464818pzb.40.1695017251752;
        Sun, 17 Sep 2023 23:07:31 -0700 (PDT)
Message-ID: <6e4887e7-f850-43aa-b9c6-6eb80b37bbc2@daynix.com>
Date: Mon, 18 Sep 2023 15:07:25 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 06/13] virtio-gpu: Support context init feature
 with virglrenderer
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin"
 <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, "ernunes@redhat.com"
 <ernunes@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?=
 <philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-7-ray.huang@amd.com>
 <561abf48-d72c-467d-94fd-54ffa1dfb512@daynix.com> <ZQWEQ9ZHkokhKOSA@amd.com>
 <d671bfad-7d78-41cf-a6f4-e92bf6ce2bd5@daynix.com> <ZQaSbaCUQ6iiHI/Y@amd.com>
 <568e9a08-c09c-4695-8165-04d3817b09f3@daynix.com> <ZQfjd9DsMTwxlPKF@amd.com>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <ZQfjd9DsMTwxlPKF@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/18 14:43, Huang Rui wrote:
> On Sun, Sep 17, 2023 at 01:49:19PM +0800, Akihiko Odaki wrote:
>> On 2023/09/17 14:45, Huang Rui wrote:
>>> On Sat, Sep 16, 2023 at 06:42:04PM +0800, Akihiko Odaki wrote:
>>>> On 2023/09/16 19:32, Huang Rui wrote:
>>>>> On Fri, Sep 15, 2023 at 11:20:46PM +0800, Akihiko Odaki wrote:
>>>>>> On 2023/09/15 20:11, Huang Rui wrote:
>>>>>>> Patch "virtio-gpu: CONTEXT_INIT feature" has added the context_init
>>>>>>> feature flags.
>>>>>>> We would like to enable the feature with virglrenderer, so add to create
>>>>>>> virgl renderer context with flags using context_id when valid.
>>>>>>>
>>>>>>> Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>>>>>> ---
>>>>>>>
>>>>>>> V4 -> V5:
>>>>>>>         - Inverted patch 5 and 6 because we should configure
>>>>>>>           HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
>>>>>>>
>>>>>>>      hw/display/virtio-gpu-virgl.c | 13 +++++++++++--
>>>>>>>      hw/display/virtio-gpu.c       |  2 ++
>>>>>>>      2 files changed, 13 insertions(+), 2 deletions(-)
>>>>>>>
>>>>>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
>>>>>>> index 8bb7a2c21f..312953ec16 100644
>>>>>>> --- a/hw/display/virtio-gpu-virgl.c
>>>>>>> +++ b/hw/display/virtio-gpu-virgl.c
>>>>>>> @@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
>>>>>>>          trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
>>>>>>>                                          cc.debug_name);
>>>>>>>      
>>>>>>> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
>>>>>>> -                                  cc.debug_name);
>>>>>>> +    if (cc.context_init) {
>>>>>>> +#ifdef HAVE_VIRGL_CONTEXT_INIT
>>>>>>> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
>>>>>>> +                                                 cc.context_init,
>>>>>>> +                                                 cc.nlen,
>>>>>>> +                                                 cc.debug_name);
>>>>>>> +        return;
>>>>>>> +#endif
>>>>>>
>>>>>> This should deal with the case when context_init is set while
>>>>>> HAVE_VIRGL_CONTEXT_INIT is not defined.
>>>>>
>>>>> Actually, I received the comment below before:
>>>>>
>>>>> https://lore.kernel.org/qemu-devel/32588d0e-a1f2-30c4-5e9f-e6e7c4190b65@linaro.org/
>>>>>
>>>>> At original patch set, I have the case while HAVE_VIRGL_CONTEXT_INIT is set
>>>>> but HAVE_VIRGL_CONTEXT_INIT is not defined. But I think we may encounter
>>>>> the case that virgl_renderer_context_create_with_flags is not defined in
>>>>> virglrenderer early version. Should I bring the error message back?
>>>>>
>>>>> Thanks,
>>>>> Ray
>>>>
>>>> I suggest checking VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED instead of
>>>> reporting an error here. Perhaps it may be easier to add #ifdef around:
>>>>    > +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
>>>>    > +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, false),
>>>
>>> How about below changes: >
>>> ---
>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
>>> index 8bb7a2c21f..54a3cfe136 100644
>>> --- a/hw/display/virtio-gpu-virgl.c
>>> +++ b/hw/display/virtio-gpu-virgl.c
>>> @@ -106,8 +106,15 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
>>>        trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
>>>                                        cc.debug_name);
>>>
>>> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
>>> -                                  cc.debug_name);
>>> +    if (cc.context_init && virtio_gpu_context_init_enabled(g->conf)) {
>>> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
>>> +                                                 cc.context_init,
>>> +                                                 cc.nlen,
>>> +                                                 cc.debug_name);
>>> +        return;
>>> +    }
>>> +
>>> +    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen, cc.debug_name);
>>>    }
>>>
>>>    static void virgl_cmd_context_destroy(VirtIOGPU *g,
>>> diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
>>> index be16efbd38..6ff2c8e92d 100644
>>> --- a/hw/display/virtio-gpu.c
>>> +++ b/hw/display/virtio-gpu.c
>>> @@ -1508,6 +1508,10 @@ static Property virtio_gpu_properties[] = {
>>>        DEFINE_PROP_BIT("blob", VirtIOGPU, parent_obj.conf.flags,
>>>                        VIRTIO_GPU_FLAG_BLOB_ENABLED, false),
>>>        DEFINE_PROP_SIZE("hostmem", VirtIOGPU, parent_obj.conf.hostmem, 0),
>>> +#ifdef HAVE_VIRGL_CONTEXT_INIT
>>> +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
>>> +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, true),
>>> +#endif
>>>        DEFINE_PROP_END_OF_LIST(),
>>>    };
>>>
>>
>> It looks better, but not having #ifdef around
>> virgl_renderer_context_create_with_flags() will result in a link error
>> with old virglrenderer.
> 
> Hmm, right, it seems that we have to have a "#ifdef" around here. Or do you
> have any better idea?

Having #ifdef is the right direction.


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 06:21:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 06:21:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603776.940839 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi7dS-0004Wl-Rt; Mon, 18 Sep 2023 06:21:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603776.940839; Mon, 18 Sep 2023 06:21:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi7dS-0004We-Oh; Mon, 18 Sep 2023 06:21:30 +0000
Received: by outflank-mailman (input) for mailman id 603776;
 Mon, 18 Sep 2023 06:21:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=5am5=FC=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qi7dR-0004WY-4r
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 06:21:29 +0000
Received: from NAM04-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam04on20629.outbound.protection.outlook.com
 [2a01:111:f400:7e8d::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 97f857e2-55eb-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 08:21:26 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by IA0PR12MB8327.namprd12.prod.outlook.com (2603:10b6:208:40e::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.24; Mon, 18 Sep
 2023 06:21:22 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Mon, 18 Sep 2023
 06:21:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 97f857e2-55eb-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GODwSbYD/TLyhzQtBNlleOJdiKUPVBTQYFDE/uCJ00MrHTZFIGgdlYBU4shmFCFiotK4w4vCf+MXILAOqlmobv4Yr/lpc9d82q6d8FXfIJNJ2ZAZA10WY/8c/lU4ty7sgaCUJcyuQilwH1hsaLOK/550Svcsa6nfXBeIwV8EUH4RbPSEIZL0VENHWeIsU2bg5qGm5XTsg4pRnAvhqPIeZCwaDYQazRDptjC9Ahw6FKfbXeNVeQlpBKa+ieJoe06lQqJCFXnnQvHtN7sqPzP9Co9Kjgb4U45omfsZGVZRWEQZKWVSjzOWJ92Al4d+SqOLDFt4kxR3BLgK3envAxE5Dg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0Da3cTb/vjzR6oWrSblfCyseVniFgVYtKaBzX3Wa7jY=;
 b=N+Z0KXFFkP3Z8k6ZCnWApx51L1ZaehWmwK9AjV00sj6YogTovA9kUPTLC1F1+FYnribCZPnlOb81+aV6Ni1RmHaqGaQZf3vII3HJTyZ1B3JnSMUTo0qRHm76p3YO76VvNKiLKvwpEOiBYJn919VV4kXgKlJROLxxU5T/0Z+sZD6hbTadVUo9OHr1w4LMm4cCHGzDBSu0LMWzNWCmdfnsCLHtcsgfJKZjEEtmclbNB5KmZy0vfj/BNAEiTD0rTIpgKs2X86//dB+WwwdnCygujsL6CmvF4muj9qdo66IzQ2NKVrG4JAU1mbsrQ3rloYhYFolAoPE1RtAWCaoGZfHbPg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0Da3cTb/vjzR6oWrSblfCyseVniFgVYtKaBzX3Wa7jY=;
 b=OthMsbkrLM9VaMg6gYjfTciOpvy3HbyAjcwf64pruahRwhT/ssGl/hwTW9FSlQeRo1VekjLoCMO/WvZEcgwOwhP9Luk/3LPkcvEL+ve8qAklsdsuUKMggFNtOTkq2OtfwbYDNs3pgnDiq2aOR1YEEJv4oNz25T7enNTGmwJqEeE=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Mon, 18 Sep 2023 14:20:52 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 06/13] virtio-gpu: Support context init feature
 with virglrenderer
Message-ID: <ZQfsRDk/H3VMDgw+@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-7-ray.huang@amd.com>
 <561abf48-d72c-467d-94fd-54ffa1dfb512@daynix.com>
 <ZQWEQ9ZHkokhKOSA@amd.com>
 <d671bfad-7d78-41cf-a6f4-e92bf6ce2bd5@daynix.com>
 <ZQaSbaCUQ6iiHI/Y@amd.com>
 <568e9a08-c09c-4695-8165-04d3817b09f3@daynix.com>
 <ZQfjd9DsMTwxlPKF@amd.com>
 <6e4887e7-f850-43aa-b9c6-6eb80b37bbc2@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <6e4887e7-f850-43aa-b9c6-6eb80b37bbc2@daynix.com>
X-ClientProxiedBy: SI2PR01CA0023.apcprd01.prod.exchangelabs.com
 (2603:1096:4:192::17) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|IA0PR12MB8327:EE_
X-MS-Office365-Filtering-Correlation-Id: 9ef990de-969b-499f-b09c-08dbb80f79e1
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YQY+53BVKzHk/Tc4AqYV7/Odmya3S3XWbo9c/9OlhDXyvpoMazOr4H3BVWoPID2s098GhnH0bmRMxSfxaYtngNzIZDiCWgFHcCaTTgEUJyb+JcR/7rjMuy0ms6iGCivH8SYyjqsMgKWrNkop77OBWuqu9K63D6nc6+xzhRPgrcvrF0/3bBRjC7ELDQMT6fqLTdemZIhCuCHk59fvV27hME7UEjtNGvcB6suNgABUS8KLtpGoIboMJXYq3MbXVBWM7EQmbS8SXlvLCJNE54LSC9+2LX8HA2NK6nme5fMeXy9p4V/2mW5kduLNMQb87rsz0nViLKJzyKWTeCUXL7kY8C793JYsMfJXpXjAUGR3FLlbHZhejirO/YYyJBPHObBjdgbYEYAv+tQET2JOpU7BcirqqxHAcveK0urBYtvAcl0uSeLb+juGMOzuJCfDHtBBsizP6A9PMO9RTtQ34pkPoJQU2opp12EPN8PaSdvXYML6z0D6Rm/3s5NrfMNaRJ75KfHtu+NmZCz6q3wyjH2IPxaRbl1pENsuzflc+XoGoU4=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(346002)(396003)(136003)(376002)(451199024)(186009)(1800799009)(66899024)(6486002)(6666004)(6506007)(53546011)(86362001)(38100700002)(36756003)(26005)(2906002)(6512007)(966005)(2616005)(478600001)(83380400001)(5660300002)(8676002)(8936002)(4326008)(41300700001)(7416002)(66946007)(54906003)(316002)(66476007)(66556008)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?TjSvLjFhBcohUCXV9iHCIIqP6uHx+8oOw1wVg/rSPoskjghxxVVW5CwfW0z+?=
 =?us-ascii?Q?fAR0T3ci4qwwJNKzoDmlIxSXIE9wFEGE9WDQcuvWg8c/B+sbyPyhm68+VI6p?=
 =?us-ascii?Q?x4tVcJgNEX59JG0lPuad5mtfacgFNfW87wDRw433vmNfzZMAS9x+1e2/HzX6?=
 =?us-ascii?Q?tjFiptfHzTuVfAcQF2xYjaJLqZWe3Tz2B9k5NTc01pNSCZiuYukKmkWkOaXW?=
 =?us-ascii?Q?nyZcP/YNIXGg20w//CxcNw1HqgHw4XIoj9dygvfG9I0Jn51ih1D3PBECQkQM?=
 =?us-ascii?Q?Hh3wGdcP4zoCr8GYslD2Z8+8sT2lni39JGb2efAYLH13QUj2DeggtpQFCflA?=
 =?us-ascii?Q?XVGbomvVtcbTy8KhrkGX+Y+mAwoX/2jzg4SunTPqS/jUxTm5fU1RboJktjLI?=
 =?us-ascii?Q?OKgbsQXVaYWeyPAm0Ksg5jw+gyH5ZsR1jnkvsP0mufclbsBYq3JObDNj2yn9?=
 =?us-ascii?Q?iku63WsI3zaP/gwmcMR42gvFGLGoXGTteJyB0Kbmm6priYFj6HEGDlHecj90?=
 =?us-ascii?Q?YMj/TKwsGmwQThTAikhhJ4080iwtzRM1mOJ4PT1z2wOTOQf0JyY8SDDC48Dp?=
 =?us-ascii?Q?vCXgczUMGyGDHzm7WOwvJA/4jBImDhNPSKcCVRWbBJDHH9VX0iHSAXSDzYmR?=
 =?us-ascii?Q?PhViKHpVnaY/eGlNMEKeDo0MQSF14kHGVGO1doIdMT2DNNAAT3yLfnAeshPA?=
 =?us-ascii?Q?zsEiam/mlPFg56Far4Ifc//vbzcIabqXHRWNmf1Ml71u69Vm/iYww22QqDJW?=
 =?us-ascii?Q?Zk6gCphgHr5728z/z8GeBTsa2S8wWvjhlvPR/Rvavev7bM14ttDnIn7f88Af?=
 =?us-ascii?Q?tIQzWW2ugI9RJgQ9vjYB3LH69+pqQlMlJgXVejclxhQnayIKRcRb8I0vvSHO?=
 =?us-ascii?Q?X+c71uaM96fR/Z0mGD0kiJ81Dc3/r1ap4exgOSKf15meifkL1/nAY5dheF+d?=
 =?us-ascii?Q?mD0EPNms5srN5xF3CdB4OqnG1ke4lEHVDnlJ/V/bjNmNzwpKOtZ3jaSPI/xq?=
 =?us-ascii?Q?yyFqeCUupweLRnI5T2MKwuLARjBGN5cqXX8OX2/benKQopR1DLCxvr0+T8RC?=
 =?us-ascii?Q?2xQ4U2Vru8HKxVqTdtva9KY6BdZapf2rfSyhPu8jcpuAJb+dul7nVhpmI3pn?=
 =?us-ascii?Q?soO9YsOPf8tg54XXvwwhv+O3Smv36czbPjR4uL7Z596+w7FKHIEGwB0XFqRm?=
 =?us-ascii?Q?+NOd8twi4Wjo1DdF+tdXBIUTIP1N3SRxC6qAc4LC4nshBGqQ6ZmMyKGRGpgu?=
 =?us-ascii?Q?+OB5hhf7q2wboqYepLDAlH0fdtF4tfu5fz7RUsgmVe6ClYt0bkmlS9TnWb7w?=
 =?us-ascii?Q?BVHCOOyaoqhyFsBLW34Jyq7IkSPXscVrVBFMDTfKuPI26A8K7ur9C3MNO7t6?=
 =?us-ascii?Q?66ZszHfwOSJCWL0QQUsBFu9Mkgw9hVi6lX/Bpsdzj1W8oAFpPMrMs2G/3X1U?=
 =?us-ascii?Q?6mn8ZF8fA/TkjmwkNcf9Minve1rWl3KroxHG+wIYE4wMITJg899vT7xsjDeT?=
 =?us-ascii?Q?tVmhMEx/lRdYwiU8OI6sFeXwKwbcHsmBsULuSr983LBlLvaeGx3RvooQvAU2?=
 =?us-ascii?Q?ICzQH3YfK8j+KoF/Ecf0J2tiR3efh92e3bWNX3Qr?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9ef990de-969b-499f-b09c-08dbb80f79e1
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 06:21:21.3478
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: eWb73uo8Ncute3RvT4asX+2NPaB+rxF+aeCj0g79hrHvHygLjphWpGmXziO5aL4UNPwKRicZ3B36I2J06XHRcw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8327

On Mon, Sep 18, 2023 at 02:07:25PM +0800, Akihiko Odaki wrote:
> On 2023/09/18 14:43, Huang Rui wrote:
> > On Sun, Sep 17, 2023 at 01:49:19PM +0800, Akihiko Odaki wrote:
> >> On 2023/09/17 14:45, Huang Rui wrote:
> >>> On Sat, Sep 16, 2023 at 06:42:04PM +0800, Akihiko Odaki wrote:
> >>>> On 2023/09/16 19:32, Huang Rui wrote:
> >>>>> On Fri, Sep 15, 2023 at 11:20:46PM +0800, Akihiko Odaki wrote:
> >>>>>> On 2023/09/15 20:11, Huang Rui wrote:
> >>>>>>> Patch "virtio-gpu: CONTEXT_INIT feature" has added the context_init
> >>>>>>> feature flags.
> >>>>>>> We would like to enable the feature with virglrenderer, so add to create
> >>>>>>> virgl renderer context with flags using context_id when valid.
> >>>>>>>
> >>>>>>> Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> >>>>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
> >>>>>>> ---
> >>>>>>>
> >>>>>>> V4 -> V5:
> >>>>>>>         - Inverted patch 5 and 6 because we should configure
> >>>>>>>           HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
> >>>>>>>
> >>>>>>>      hw/display/virtio-gpu-virgl.c | 13 +++++++++++--
> >>>>>>>      hw/display/virtio-gpu.c       |  2 ++
> >>>>>>>      2 files changed, 13 insertions(+), 2 deletions(-)
> >>>>>>>
> >>>>>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> >>>>>>> index 8bb7a2c21f..312953ec16 100644
> >>>>>>> --- a/hw/display/virtio-gpu-virgl.c
> >>>>>>> +++ b/hw/display/virtio-gpu-virgl.c
> >>>>>>> @@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
> >>>>>>>          trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
> >>>>>>>                                          cc.debug_name);
> >>>>>>>      
> >>>>>>> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
> >>>>>>> -                                  cc.debug_name);
> >>>>>>> +    if (cc.context_init) {
> >>>>>>> +#ifdef HAVE_VIRGL_CONTEXT_INIT
> >>>>>>> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
> >>>>>>> +                                                 cc.context_init,
> >>>>>>> +                                                 cc.nlen,
> >>>>>>> +                                                 cc.debug_name);
> >>>>>>> +        return;
> >>>>>>> +#endif
> >>>>>>
> >>>>>> This should deal with the case when context_init is set while
> >>>>>> HAVE_VIRGL_CONTEXT_INIT is not defined.
> >>>>>
> >>>>> Actually, I received the comment below before:
> >>>>>
> >>>>> https://lore.kernel.org/qemu-devel/32588d0e-a1f2-30c4-5e9f-e6e7c4190b65@linaro.org/
> >>>>>
> >>>>> At original patch set, I have the case while HAVE_VIRGL_CONTEXT_INIT is set
> >>>>> but HAVE_VIRGL_CONTEXT_INIT is not defined. But I think we may encounter
> >>>>> the case that virgl_renderer_context_create_with_flags is not defined in
> >>>>> virglrenderer early version. Should I bring the error message back?
> >>>>>
> >>>>> Thanks,
> >>>>> Ray
> >>>>
> >>>> I suggest checking VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED instead of
> >>>> reporting an error here. Perhaps it may be easier to add #ifdef around:
> >>>>    > +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
> >>>>    > +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, false),
> >>>
> >>> How about below changes: >
> >>> ---
> >>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> >>> index 8bb7a2c21f..54a3cfe136 100644
> >>> --- a/hw/display/virtio-gpu-virgl.c
> >>> +++ b/hw/display/virtio-gpu-virgl.c
> >>> @@ -106,8 +106,15 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
> >>>        trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
> >>>                                        cc.debug_name);
> >>>
> >>> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
> >>> -                                  cc.debug_name);
> >>> +    if (cc.context_init && virtio_gpu_context_init_enabled(g->conf)) {
> >>> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
> >>> +                                                 cc.context_init,
> >>> +                                                 cc.nlen,
> >>> +                                                 cc.debug_name);
> >>> +        return;
> >>> +    }
> >>> +
> >>> +    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen, cc.debug_name);
> >>>    }
> >>>
> >>>    static void virgl_cmd_context_destroy(VirtIOGPU *g,
> >>> diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> >>> index be16efbd38..6ff2c8e92d 100644
> >>> --- a/hw/display/virtio-gpu.c
> >>> +++ b/hw/display/virtio-gpu.c
> >>> @@ -1508,6 +1508,10 @@ static Property virtio_gpu_properties[] = {
> >>>        DEFINE_PROP_BIT("blob", VirtIOGPU, parent_obj.conf.flags,
> >>>                        VIRTIO_GPU_FLAG_BLOB_ENABLED, false),
> >>>        DEFINE_PROP_SIZE("hostmem", VirtIOGPU, parent_obj.conf.hostmem, 0),
> >>> +#ifdef HAVE_VIRGL_CONTEXT_INIT
> >>> +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
> >>> +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, true),
> >>> +#endif
> >>>        DEFINE_PROP_END_OF_LIST(),
> >>>    };
> >>>
> >>
> >> It looks better, but not having #ifdef around
> >> virgl_renderer_context_create_with_flags() will result in a link error
> >> with old virglrenderer.
> > 
> > Hmm, right, it seems that we have to have a "#ifdef" around here. Or do you
> > have any better idea?
> 
> Having #ifdef is the right direction.

OK, so we can use cc.context_init and make sure context_init function
enabled. Please check below:

---
diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
index 8bb7a2c21f..8363674ebc 100644
--- a/hw/display/virtio-gpu-virgl.c
+++ b/hw/display/virtio-gpu-virgl.c
@@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
     trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
                                     cc.debug_name);

-    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
-                                  cc.debug_name);
+    if (cc.context_init && virtio_gpu_context_init_enabled(g->parent_obj.conf)) {
+#ifdef HAVE_VIRGL_CONTEXT_INIT
+        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
+                                                 cc.context_init,
+                                                 cc.nlen,
+                                                 cc.debug_name);
+        return;
+#endif
+    }
+
+    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen, cc.debug_name);
 }

 static void virgl_cmd_context_destroy(VirtIOGPU *g,
diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
index be16efbd38..6ff2c8e92d 100644
--- a/hw/display/virtio-gpu.c
+++ b/hw/display/virtio-gpu.c
@@ -1508,6 +1508,10 @@ static Property virtio_gpu_properties[] = {
     DEFINE_PROP_BIT("blob", VirtIOGPU, parent_obj.conf.flags,
                     VIRTIO_GPU_FLAG_BLOB_ENABLED, false),
     DEFINE_PROP_SIZE("hostmem", VirtIOGPU, parent_obj.conf.hostmem, 0),
+#ifdef HAVE_VIRGL_CONTEXT_INIT
+    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
+                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, true),
+#endif
     DEFINE_PROP_END_OF_LIST(),
 };



From xen-devel-bounces@lists.xenproject.org Mon Sep 18 06:23:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 06:23:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603781.940850 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi7f2-00056n-7B; Mon, 18 Sep 2023 06:23:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603781.940850; Mon, 18 Sep 2023 06:23:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi7f2-00056g-2f; Mon, 18 Sep 2023 06:23:08 +0000
Received: by outflank-mailman (input) for mailman id 603781;
 Mon, 18 Sep 2023 06:23:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ZGqG=FC=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qi7f0-00056Y-T6
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 06:23:06 +0000
Received: from mail-pl1-x633.google.com (mail-pl1-x633.google.com
 [2607:f8b0:4864:20::633])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d2417d85-55eb-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 08:23:03 +0200 (CEST)
Received: by mail-pl1-x633.google.com with SMTP id
 d9443c01a7336-1bf7423ef3eso29368975ad.3
 for <xen-devel@lists.xenproject.org>; Sun, 17 Sep 2023 23:23:03 -0700 (PDT)
Received: from [157.82.205.33] ([157.82.205.33])
 by smtp.gmail.com with ESMTPSA id
 13-20020a170902ee4d00b001c55db80b14sm1791613plo.221.2023.09.17.23.22.57
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sun, 17 Sep 2023 23:23:01 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d2417d85-55eb-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1695018182; x=1695622982; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=u8t9XvJ5MSVjBAztpJwmc9U2NCJ7mEahfpPAcNq8dkI=;
        b=tyk5zBUQ2nAQWFWYsvpexswwP/TfQvQMyk5SBjQVvZE7JEYX862gv/Y9Sa3C1WZdnx
         Zc8NK1Cs0IgMIVed65jERugWxSUgtu+cBZ/3dlUwRVQ4xtqIHuLyfiLT0B/WuWE4L9Jt
         kRZVpEZr11MX2pTGzJ+5NbTDaEMDw0fqKjGUsrfUhzV3YJSdtjnIdDDnVO/jmTWzLQFQ
         erAw3whXrrZG9aHXE+celY0u0yOwd3AP300dXY768tcGasTiYA5z1nVQMjBY9lKsXcie
         4FgB01L/Q9ZSOQAyHHc412P9iBD0VWMhPyeCRZhJ2aZYlyZ4DvoLab5yBCDIlt5v9IlE
         BbXQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695018182; x=1695622982;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=u8t9XvJ5MSVjBAztpJwmc9U2NCJ7mEahfpPAcNq8dkI=;
        b=e4kLk8oE+2m4tkodW5tX2w+ttIKmXYo8PVuLAaEI9viYva/ofqw+Cgt9EtFApszHQc
         DpUHt08nxvW9/LzsdwboDCm9zrfqhmt8FB1an5uIXn7hqNu8VXo+TNVAk3AfA5aAJoHi
         OX1cbGC5K4y6dPU5KVoiITvns5x8Ypb4HcaKdhbXOuIWZrie2aOOVHpEAxMnBMfW3EUm
         ZPd8c4FHHpjGSdGYmee1rJ5QC53vR/dmwo1Xx8pFA6UvO/TsiIBHNXvClYkKCm57lza7
         YvFTaT6xEiapNH+mxBckXp3/25XCdkz4nfOFPOj9XnEfkWHik9knkQPrBXDr/aks4U1B
         fwCQ==
X-Gm-Message-State: AOJu0YxofuDRUgVQPhbiW1P9CkMD6Jxr0jynPv5ILTZL99FoWpStSp9B
	U2xairu5wn+NhQtrgC23LY4i/Q==
X-Google-Smtp-Source: AGHT+IE2vtRE5qBNv54fiMtFDfRwC09+R/a46LYdmyUGIvChiEsj7hQL2uj7L3ABkrfVIYoI54eNdA==
X-Received: by 2002:a17:902:f543:b0:1c3:77cd:653d with SMTP id h3-20020a170902f54300b001c377cd653dmr7731864plf.28.1695018182172;
        Sun, 17 Sep 2023 23:23:02 -0700 (PDT)
Message-ID: <6b1374d2-da8f-4552-a6e5-b05094b0f0a0@daynix.com>
Date: Mon, 18 Sep 2023 15:22:56 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 06/13] virtio-gpu: Support context init feature
 with virglrenderer
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin"
 <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, "ernunes@redhat.com"
 <ernunes@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?=
 <philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-7-ray.huang@amd.com>
 <561abf48-d72c-467d-94fd-54ffa1dfb512@daynix.com> <ZQWEQ9ZHkokhKOSA@amd.com>
 <d671bfad-7d78-41cf-a6f4-e92bf6ce2bd5@daynix.com> <ZQaSbaCUQ6iiHI/Y@amd.com>
 <568e9a08-c09c-4695-8165-04d3817b09f3@daynix.com> <ZQfjd9DsMTwxlPKF@amd.com>
 <6e4887e7-f850-43aa-b9c6-6eb80b37bbc2@daynix.com> <ZQfsRDk/H3VMDgw+@amd.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <ZQfsRDk/H3VMDgw+@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/18 15:20, Huang Rui wrote:
> On Mon, Sep 18, 2023 at 02:07:25PM +0800, Akihiko Odaki wrote:
>> On 2023/09/18 14:43, Huang Rui wrote:
>>> On Sun, Sep 17, 2023 at 01:49:19PM +0800, Akihiko Odaki wrote:
>>>> On 2023/09/17 14:45, Huang Rui wrote:
>>>>> On Sat, Sep 16, 2023 at 06:42:04PM +0800, Akihiko Odaki wrote:
>>>>>> On 2023/09/16 19:32, Huang Rui wrote:
>>>>>>> On Fri, Sep 15, 2023 at 11:20:46PM +0800, Akihiko Odaki wrote:
>>>>>>>> On 2023/09/15 20:11, Huang Rui wrote:
>>>>>>>>> Patch "virtio-gpu: CONTEXT_INIT feature" has added the context_init
>>>>>>>>> feature flags.
>>>>>>>>> We would like to enable the feature with virglrenderer, so add to create
>>>>>>>>> virgl renderer context with flags using context_id when valid.
>>>>>>>>>
>>>>>>>>> Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>>>>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>>>>>>>> ---
>>>>>>>>>
>>>>>>>>> V4 -> V5:
>>>>>>>>>          - Inverted patch 5 and 6 because we should configure
>>>>>>>>>            HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
>>>>>>>>>
>>>>>>>>>       hw/display/virtio-gpu-virgl.c | 13 +++++++++++--
>>>>>>>>>       hw/display/virtio-gpu.c       |  2 ++
>>>>>>>>>       2 files changed, 13 insertions(+), 2 deletions(-)
>>>>>>>>>
>>>>>>>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
>>>>>>>>> index 8bb7a2c21f..312953ec16 100644
>>>>>>>>> --- a/hw/display/virtio-gpu-virgl.c
>>>>>>>>> +++ b/hw/display/virtio-gpu-virgl.c
>>>>>>>>> @@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
>>>>>>>>>           trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
>>>>>>>>>                                           cc.debug_name);
>>>>>>>>>       
>>>>>>>>> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
>>>>>>>>> -                                  cc.debug_name);
>>>>>>>>> +    if (cc.context_init) {
>>>>>>>>> +#ifdef HAVE_VIRGL_CONTEXT_INIT
>>>>>>>>> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
>>>>>>>>> +                                                 cc.context_init,
>>>>>>>>> +                                                 cc.nlen,
>>>>>>>>> +                                                 cc.debug_name);
>>>>>>>>> +        return;
>>>>>>>>> +#endif
>>>>>>>>
>>>>>>>> This should deal with the case when context_init is set while
>>>>>>>> HAVE_VIRGL_CONTEXT_INIT is not defined.
>>>>>>>
>>>>>>> Actually, I received the comment below before:
>>>>>>>
>>>>>>> https://lore.kernel.org/qemu-devel/32588d0e-a1f2-30c4-5e9f-e6e7c4190b65@linaro.org/
>>>>>>>
>>>>>>> At original patch set, I have the case while HAVE_VIRGL_CONTEXT_INIT is set
>>>>>>> but HAVE_VIRGL_CONTEXT_INIT is not defined. But I think we may encounter
>>>>>>> the case that virgl_renderer_context_create_with_flags is not defined in
>>>>>>> virglrenderer early version. Should I bring the error message back?
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Ray
>>>>>>
>>>>>> I suggest checking VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED instead of
>>>>>> reporting an error here. Perhaps it may be easier to add #ifdef around:
>>>>>>     > +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
>>>>>>     > +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, false),
>>>>>
>>>>> How about below changes: >
>>>>> ---
>>>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
>>>>> index 8bb7a2c21f..54a3cfe136 100644
>>>>> --- a/hw/display/virtio-gpu-virgl.c
>>>>> +++ b/hw/display/virtio-gpu-virgl.c
>>>>> @@ -106,8 +106,15 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
>>>>>         trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
>>>>>                                         cc.debug_name);
>>>>>
>>>>> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
>>>>> -                                  cc.debug_name);
>>>>> +    if (cc.context_init && virtio_gpu_context_init_enabled(g->conf)) {
>>>>> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
>>>>> +                                                 cc.context_init,
>>>>> +                                                 cc.nlen,
>>>>> +                                                 cc.debug_name);
>>>>> +        return;
>>>>> +    }
>>>>> +
>>>>> +    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen, cc.debug_name);
>>>>>     }
>>>>>
>>>>>     static void virgl_cmd_context_destroy(VirtIOGPU *g,
>>>>> diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
>>>>> index be16efbd38..6ff2c8e92d 100644
>>>>> --- a/hw/display/virtio-gpu.c
>>>>> +++ b/hw/display/virtio-gpu.c
>>>>> @@ -1508,6 +1508,10 @@ static Property virtio_gpu_properties[] = {
>>>>>         DEFINE_PROP_BIT("blob", VirtIOGPU, parent_obj.conf.flags,
>>>>>                         VIRTIO_GPU_FLAG_BLOB_ENABLED, false),
>>>>>         DEFINE_PROP_SIZE("hostmem", VirtIOGPU, parent_obj.conf.hostmem, 0),
>>>>> +#ifdef HAVE_VIRGL_CONTEXT_INIT
>>>>> +    DEFINE_PROP_BIT("context_init", VirtIOGPU, parent_obj.conf.flags,
>>>>> +                    VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED, true),
>>>>> +#endif
>>>>>         DEFINE_PROP_END_OF_LIST(),
>>>>>     };
>>>>>
>>>>
>>>> It looks better, but not having #ifdef around
>>>> virgl_renderer_context_create_with_flags() will result in a link error
>>>> with old virglrenderer.
>>>
>>> Hmm, right, it seems that we have to have a "#ifdef" around here. Or do you
>>> have any better idea?
>>
>> Having #ifdef is the right direction.
> 
> OK, so we can use cc.context_init and make sure context_init function
> enabled. Please check below:
> 
> ---
> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> index 8bb7a2c21f..8363674ebc 100644
> --- a/hw/display/virtio-gpu-virgl.c
> +++ b/hw/display/virtio-gpu-virgl.c
> @@ -106,8 +106,17 @@ static void virgl_cmd_context_create(VirtIOGPU *g,
>       trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
>                                       cc.debug_name);
> 
> -    virgl_renderer_context_create(cc.hdr.ctx_id, cc.nlen,
> -                                  cc.debug_name);
> +    if (cc.context_init && virtio_gpu_context_init_enabled(g->parent_obj.conf)) {
> +#ifdef HAVE_VIRGL_CONTEXT_INIT
> +        virgl_renderer_context_create_with_flags(cc.hdr.ctx_id,
> +                                                 cc.context_init,
> +                                                 cc.nlen,
> +                                                 cc.debug_name);
> +        return;
> +#endif
> +    }

You can put the if-statement into #ifdef. Otherwise it looks good to me.


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 07:29:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 07:29:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603789.940859 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi8gg-0006RJ-0U; Mon, 18 Sep 2023 07:28:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603789.940859; Mon, 18 Sep 2023 07:28:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi8gf-0006RC-U5; Mon, 18 Sep 2023 07:28:53 +0000
Received: by outflank-mailman (input) for mailman id 603789;
 Mon, 18 Sep 2023 07:28:52 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qi8ge-0006R2-DA; Mon, 18 Sep 2023 07:28:52 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qi8ge-0000Su-2r; Mon, 18 Sep 2023 07:28:52 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qi8gd-0004Ij-K4; Mon, 18 Sep 2023 07:28:51 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qi8gd-0006fO-Jc; Mon, 18 Sep 2023 07:28:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=2w8WME3Lfb6yHTSn8vlqhdYf0zR5LEW2TucVRJGct2w=; b=cNilo65oK5tlGQb1aZEfVoAiHS
	x2iZD69GRY6ARL0oa4S3BkC9diM8cklHE/N4KobmvAATJ1qNcPOabqyLy1frokuO7sS2Oa8A5fp2s
	pEje8XWwqWRozffZdV4Gv+VSR32JL5pkjgx/IPH1KJROtK012qIOFiNbP//L++7IUsJc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183025-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183025: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-armhf-armhf-xl-credit1:host-ping-check-xen:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=ce9ecca0238b140b88f43859b211c9fdfd8e5b70
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 18 Sep 2023 07:28:51 +0000

flight 183025 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183025/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-armhf-armhf-xl-credit1  10 host-ping-check-xen      fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                ce9ecca0238b140b88f43859b211c9fdfd8e5b70
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   21 days
Failing since        182544  2023-08-28 20:42:13 Z   20 days   39 attempts
Testing same since   183025  2023-09-18 00:13:22 Z    0 days    1 attempts

------------------------------------------------------------
2322 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 282623 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 07:55:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 07:55:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603796.940868 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi964-0001tC-0j; Mon, 18 Sep 2023 07:55:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603796.940868; Mon, 18 Sep 2023 07:55:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi963-0001t5-U4; Mon, 18 Sep 2023 07:55:07 +0000
Received: by outflank-mailman (input) for mailman id 603796;
 Mon, 18 Sep 2023 07:55:06 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OhQO=FC=citrix.com=prvs=618330109=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qi962-0001sx-FK
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 07:55:06 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id aaf184d6-55f8-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 09:55:02 +0200 (CEST)
Received: from mail-bn7nam10lp2101.outbound.protection.outlook.com (HELO
 NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.101])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 18 Sep 2023 03:54:58 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB5863.namprd03.prod.outlook.com (2603:10b6:510:39::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Mon, 18 Sep
 2023 07:54:56 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 07:54:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: aaf184d6-55f8-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695023702;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=fpMNtH3WEYNopq8vpldt45VODEcee++Ej3Vyp7QxlUw=;
  b=KHXh2ObYPr7nLRxXcpAxRnVUc6g7gPQPDEYT19siXQeKN/nKFVbENFG5
   hAhgMyXtQs9E+jP1kyMGSmcownP1L7kB2EicqW36THhdDoTQNAxGRAQlw
   3lyZXU3SMMTCLNqs5nGDztRwtYGWhpFQFKUvuyJif5XP4kqgZAUGyKg22
   M=;
X-CSE-ConnectionGUID: luzUzE+VRz+dAKZkXB8xbA==
X-CSE-MsgGUID: nNJgEe7qSLaE/Ym7emG8/Q==
X-IronPort-RemoteIP: 104.47.70.101
X-IronPort-MID: 122954346
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:XGYM/63eH7KyppPbn/bD5Qhwkn2cJEfYwER7XKvMYLTBsI5bp2AOn
 2QXDWiDO62MamOheoglaoW+o04DusfRxtFkQAY/pC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb8nuDgNyo4GlD5g1nNagS1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfBXxcy
 O41aw43fFOPrsGEw4KRGvlmr5F2RCXrFNt3VnBI6xj8VK5ja7acBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxouy6KlFUZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LWewH+gBNx6+LuQ8NhIj3CemXUoLBQ7Emq+/vS8pR75YocKQ
 6AT0m90xUQoz2SpU938UhuQsHOC+BkGVLJ4A+A8rQ2A1KfQywKYHXQfCC5MbsQ8s807TiBs0
 UWG9/vrCiZmtLm9QHeU5LCS6zi1PEA9L2UPeCsFRgst+MT4rcc4iRenZs14DKe/g9nxGDfx6
 zOHti4zg/MUl8Fj/7q/1UDKhXSrvJehc+IuzgDeX2bg5AUmYoegPtSs8QKCta8GK5uFRF6cu
 nRCg9KZ8O0FEZCKkmqKXfkJG7aqof2CNVUwnGJSInXozBz1k1bLQGyayGgWyJtBWircRQLUX
 Q==
IronPort-HdrOrdr: A9a23:a9SrYq5QNI68QV0XfAPXwMzXdLJyesId70hD6qkXc20zTiX4rb
 HLoB1/73TJYVkqNE3I9eruBEDjex3hHO9OgbX5VI3KNGOKhILCFuBfBOXZsl/dMhy72ulB1b
 pxN4hSYeeAaGSSVPyKgzWFLw==
X-Talos-CUID: =?us-ascii?q?9a23=3AUWNZMmkuE7gkTT1fKGC0MtpJluvXOXnA3krCDgy?=
 =?us-ascii?q?GM3QqRJS2e1yg0vN0meM7zg=3D=3D?=
X-Talos-MUID: 9a23:7daxGAV71r+GvyXq/DnKpj5POZhx2ICnJQc8lMoLvubUchUlbg==
X-IronPort-AV: E=Sophos;i="6.02,156,1688443200"; 
   d="scan'208";a="122954346"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XAE2yU4qhr9R1M7WCTBC2Q+bR1/GM4MbSj6YKDKArMGXycQaO1vkHeSmsVqQXcwGDhEtQsWbxCy+Afan8pRhQqVKfk83iEGkFWXDa5w8XLNN9NcpzjLapB7G1oRd2uA9WugRFJZeCSMT/7yLBJMk3L1hC8yLG3W7zpZvTz3SmZ5TaGXyl0VYpMxCUnvunvpuePyjqhgaWYrAogbwQrxna0Rvdv6SXAajloo8upI60PbkgO4/8TwK4XHdBeciQiPv1371wgV4ByAX0bfC2VRnHwYpfZvGHWtYjbBDjKtPxKU5ORY1zn6IFiBJW/opAySb0qoW/wsqLTduTf94VZKYew==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ko0JUAe08HddhzexIKzcPDRIpATwf0Fys2twc6WtFbA=;
 b=B+8EYOCKa9On7D3lNeUhj5hRtfff5guzJZ9F/JVk16XBHnwSqcRcFoAqL3vYkDI8R+k7Gsdcu7MFZ1IZeOnrzZ8iXHQK5UnpJ8gzBO5eYLRCLZZHH3+gBp3pU21CbtpbiKFUzNF3SHqMHOalyJeVy3jjROPTmAQ5LhEhDFNn0O366fvqGVaJRgFJlkJI5ozZ22AGnlgoc0lINDH1TxaYDYD3DYUVr8zg6DuAwDUAb6PfKQn44m45nrSXF/zIDOI2pXKD8Xy80g25MB6GC2xu9v3AByi3Pgfog8V51YakhBxHH9mPGioMi1XDxaQxLurT6HCNKhFoELbiWJO8X9VJGA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ko0JUAe08HddhzexIKzcPDRIpATwf0Fys2twc6WtFbA=;
 b=de2F8E5a8R9lAt3fllKHGR8CFrVoozfOe/9N5yUq28GzDmmkxJh2wW3+NV2ljjK2Mr2ynsv2usCoYHl4wl2JzkUjUDJkYjVvrrPGscRvhhWpYJSBpbAvAQeBXwUW8CELd51ahcJW8jzSsC6WGft4uoUo/sEtveQQkImEDCchf0M=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 18 Sep 2023 09:54:48 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org, Julien Grall <jgrall@amazon.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 1/2] xen/x86: io_apic: Introduce a command line option to
 skip timer check
Message-ID: <ZQgCSKGRZ99YgtSq@MacBookPdeRoger>
References: <20230818134441.45586-1-julien@xen.org>
 <20230818134441.45586-2-julien@xen.org>
 <ZQRiL0Mf5_5EC8oj@MacBook-MacBook-Pro-de-Roger.local>
 <1b85b1fc-72b7-4ed7-9236-3d82671ca44e@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <1b85b1fc-72b7-4ed7-9236-3d82671ca44e@xen.org>
X-ClientProxiedBy: PR3P189CA0026.EURP189.PROD.OUTLOOK.COM
 (2603:10a6:102:52::31) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB5863:EE_
X-MS-Office365-Filtering-Correlation-Id: dfd00bec-0f35-4784-ca40-08dbb81c8c2a
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ybAZtOA0PSQi5sGfK2gAsGbw0z+wL3hEcugdj3tZuVUj4UPnS3JOscDhSfDWI0I4gRUsEV85lldaDDbquwZ33BfFuP++VyXwDD4vhZTBun9/0wcTUzy2mXSZs0L6RfsVLoa5ofPbeBSOG6QF6qFTastIDGDn4PAUxFgKQIkpYxTX9TD9fO0oZleDqL3ixRqwfQgOJDdRAKFHPpK6NjUVXaeffaofpoPSeCbV8VLZT6t9CEht8bHGCB0ccxjBIHz5OioDv2QsVubwHwkhr4VRRDA9S+kLdZad2lBbRtwSs8b0PK+V/GCd6/+7anoA43CG21OGjyQeH7LfLzjCJJJeofZGU2w5a9BwkM6xKolXk2kpCQvsNwlynh9kP3IuYRDTeXdMXgs6jtYDqcpyLDtz0VSXbW84kPGIP+2xvScESshjuRAekmZqeR/kraFnt79FbYSuRRJpBlvYbqTauNeqYWuv3HgTe6Sa9WciU1BsBtnOgnuBpdq0E76C7kKZFlcladBewgQ+BJN2CJq1eTb7k1DIFn7+dS9SLPW7MXzBRtSSOIS5oMqvL+59O7ZxbFO0
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(136003)(376002)(39860400002)(366004)(396003)(346002)(1800799009)(186009)(451199024)(4326008)(2906002)(8936002)(8676002)(6666004)(26005)(478600001)(41300700001)(5660300002)(66946007)(66476007)(66556008)(6486002)(54906003)(6506007)(83380400001)(6916009)(316002)(38100700002)(82960400001)(85182001)(53546011)(86362001)(6512007)(9686003)(33716001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SVNtUEUvWGVwc3JiVGExMDkxNFdDM3BSSFNVaWdmeEFFekcybldTYTVrWkFl?=
 =?utf-8?B?R1l5dGVsUFI1UXBXWFJlWkMrT29xakRlckpWZEtaVXZGRG5PMURqL2ZSOUs3?=
 =?utf-8?B?UGJkWWdibWpBbVhCalJScWh1WmtLZjNjcUtaemsyMXZXOHRhUzJYRXJBbFFU?=
 =?utf-8?B?QnNaZGFjejR5M1ZCby84WWVqay9nYmZhV0FPditCREdTUzdaQml4R2d4ZThD?=
 =?utf-8?B?N2l0ZnBUN3JvMTZ6T0ZZenk2SHpyOUZSbXRkaTFVOXJ6bGo4SFlIZGszWGU2?=
 =?utf-8?B?ajNrZFh0ejRCL045c2k1VEtWTXlIVmJmcGpjS0xqSDdENWtkNUlUQlVjUFd4?=
 =?utf-8?B?ak0rNHhSKzlsTk5pa3Z0ckd6eEhRYzF2MVVTam1Ya0R6U0FSelNpRTlwbVQw?=
 =?utf-8?B?WmpZYXhKc0g5aWJkOTVxcExnYXZvODZQbTRJSnQ5djJWMnBUNVRDenNSUFcv?=
 =?utf-8?B?MndQbHZIZU1Lc2FoZUptWUYzT20wMVdyQzR2eWxzaU8yb3o2dk9vbXgwMFNX?=
 =?utf-8?B?NDZydTNGcCtraFBIUnlRNU4vL3FMTThsV1NtRmlsUUF2ZFJIV3lpTm4rKzRM?=
 =?utf-8?B?Ky94UEF6Y0xsN25NWS8wMDM4WjJ6MkVmb2xaUmZIMllrTnN1Z1hNQkNGNEZr?=
 =?utf-8?B?SU1URWZzZDNkZ2VGclhkTDR1YklCd29hSUJHNjZQRTdpUUxiY0kyQUtXUzBi?=
 =?utf-8?B?REl6anRUTzVtRmlWcmRuRFNwM1RNbzRkcHdDTXNMVnFsZzlMdUwwRERIeEFD?=
 =?utf-8?B?NktraGFGK3lmRWl6a2tJZGZlU2VzRTUvdXEvMFY3NWtQeFJxRU1zVFk5UlZI?=
 =?utf-8?B?TmdqcDB5ZHlkQ2NHODI4L3BtVU41YmhGSkF5cVdiK0xERmIzbUZ0SGhXM01E?=
 =?utf-8?B?RTN3c0JXZWdXQ0tLeGY0Wi9YZGowY21lVFBycW5Rb0NDZDBsOEE2QWkzMmpM?=
 =?utf-8?B?UWl6S0ZUWUhpVXhYZDFUYy9jMWt3VjloaENiMVFBaHBsWU9WRUJoNk5XUXNE?=
 =?utf-8?B?cTNrZUpDNEZLNlBDMUFpOWR4cnJMaUwzMHJFUEIvZzZFbjdnK2ZobnE5Rnd6?=
 =?utf-8?B?ckREbVh4WXV4QzBmRFU3dE1nckN2akRpdnZtMzFSNmwrbFNaSVVVK0t2SjFK?=
 =?utf-8?B?RWt3MnVzMExJYlVWVlNQeXVvMFVVRjdoNzdzQkdYMTIvZ2ZrMmIzSFA4T282?=
 =?utf-8?B?cndlNVg5QmNCZDl1SjBET0pKZU9rN2djRjZ4RUVFbi9DQmVHaGRGZGc0dzVz?=
 =?utf-8?B?QzRrMnZWUHFKUFUwTS85Um9wMjN3Vk05cDBaUzA1Y09HYkRWUmVEQmtUMXBH?=
 =?utf-8?B?UkNrbUFYUVRFNHRSeGNZejU1SDh3UC9RdHk1WUxuOWtUbkpnL3FSYXk2TjZI?=
 =?utf-8?B?OTcwdXFtZlFaOGtoQjllL3ZyQmEva3UzOVB1V29mazVpcmJQbnJxU3o0QmRo?=
 =?utf-8?B?K2JSbDE5b1ZYUWxybkszRnp1dDN4QlZEYUwxZ3d2cUFEOXlnZGh4d0M3NEc5?=
 =?utf-8?B?L2hpK0hBbzJoY2FpOWQwa0NYWm93VGpSY2hZZ2xZSkFkS1g1T1RNYS8rM1Vz?=
 =?utf-8?B?K0JITlFoSkFaMmtTODA4VnRlKzBLakJaZnVkU2pMT3Y0L20vaDVVVWpNSFpI?=
 =?utf-8?B?amdBeWFZOW84YTJnWVJqS2pDYU5lWGpFYndJV3JYa0VITDYyWDJlS0FtM1ZC?=
 =?utf-8?B?U0t0dU1vT0NsOFdhZnUrVjNWMUMzcEh6aSthN1N5R2tTYXozaU84QXRWZGRO?=
 =?utf-8?B?UGtMVkZxQnNOYXVYdXlzSHM1SWNKSENXb0RqQlMrM05naHk2Yitmd1p3bVpl?=
 =?utf-8?B?K1BpeHRXUHB6N3ptM09STFJYZktTdi9pOVAyZnM5cXZOV2lCZ3pZcXVoS293?=
 =?utf-8?B?cFFlMTZVRUYrd3NTeU5iakVvSWUyYmdaekV5ZnRQRk9ZVXFBMUc0NFI4UG1H?=
 =?utf-8?B?NFdBalZwcnpuV2pVM1BvL2NYbGVnTmxuTXBkTE96dVpjaE02MHlTMUlmZXY0?=
 =?utf-8?B?YWc1TGF3ME15Z0tlMko1NmFZVzRjcDFGWno3bzUyYXBFNHQveWRsOE5BVHU3?=
 =?utf-8?B?UjVsdnFmdENxMm0xYkVUNkMvZFE1QktzM2hzb1o2R3paUmRhR09oWlpzdXUv?=
 =?utf-8?Q?I0qEpDPV1vtXxh/GtSLK2t4u9?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	FEzpQKuRtjjcnhUN2ZdmPu3/s6q5kpEGP/A3lgEKuTwQJBSL4KtCjAlsfiL6ZnD/jbEBTqCstnbwEFq4HvzvEsK58Esr2M13g2Tdd+zrWAkYySD10Q56SaqXrnwIoI2hW4qHGfSU2fkL3ubtnsRAjt2fMBMni0fBpmrMZ41Mb0YKmzpfeEumza/jcXIcopenTAyn5y1PdTnQ5YQhbqKXs76Yyj5CLSL973WfASa67vWaJRmjhGo7bzz84DZjN7VTYDNi3mIsfcEWJDxfMrhTsPFNslBMZfU+3ZwhghL1rpyNanYzzb5sr7RJNKAQ6YyI9GM7n+pL0jTg3gqu7QiHW9xUyFUyEuGQBIolh7EimCFKYQjDQxQgOHeLvADDIgZscVZT3DAbKXdBzrOsEfuCan/UiopLVMwEa83YymK3ZlzsFmaZjjn0o2FdCDSwZ3IbCRWKqb2giuCPws0btKr0nVbq3zo/T2A+5j2YsuE4kCsjPare7QgufZB0nQrhZUzcvhmfrDJewBioa5F4otE1zl3LZHllkF14Q1XNiBYaLtUpDWfs/TGPIO3TggffU/XcZGJTLOb3c9qquanAyHOIXqz/Qp9RJV5jzTSAk9T2Xd3s+xUmhPp24oR8VZYEE+DMPJYedTABHwI2k8lL8DYjA8noM1tvSKjGaJYeCTd3eXqyA4vtdklDIQZ2F4nAdamzTohBesyozKaclh5upl99CQTvDEpLVmRzfgbBPdmB7C62Ao3Bnp9vW1/HJp1BF2vvGpFVbVUATLxeBMSJrWgvW88DSvoop5j0pTwjPMQMK8SBvmGv/e56fKY7CcF2qMppy1oMPwKaUtWzByX3zxTYSNLvWfuZyM9U4YTPiJneDs3RsiIpJOv/Q1zINsub2805
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: dfd00bec-0f35-4784-ca40-08dbb81c8c2a
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 07:54:55.6876
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xU0o9xifIngtBSWq1ZxTX7sDNYTcfapyMzdvOZDnkK+WFOY7M5ubr0F14DJeZzY9ufKtHDVjxhqrZkdNgzxiDA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5863

On Fri, Sep 15, 2023 at 03:27:40PM +0100, Julien Grall wrote:
> Hi Roger,
> 
> On 15/09/2023 14:54, Roger Pau Monné wrote:
> > On Fri, Aug 18, 2023 at 02:44:40PM +0100, Julien Grall wrote:
> > > From: Julien Grall <jgrall@amazon.com>
> > > 
> > > Currently, Xen will spend ~100ms to check if the timer works. If the
> > > Admin knows their platform have a working timer, then it would be
> > > handy to be able to bypass the check.
> > 
> > I'm of the opinion that the current code is at least dubious.
> > 
> > Specifically attempts to test the PIT timer, even when the hypervisor
> > might be using a different timer.  At which point it mostly attempts
> > to test that the interrupt routing from the PIT (or it's replacement)
> > is correct, and that Xen can receive such interrupts.
> > 
> > We go to great lengths in order to attempt to please this piece of
> > code, even when no PIT is available, at which point we switch the HPET
> > to legacy replacement mode in order to satisfy the checks.
> > 
> > I think the current code is not useful, and I would be fine if it was
> > just removed.
> 
> I am afraid I don't know enough the code to be able to say if it can be
> removed.
> 
> I also have no idea how common are such platforms nowadays (I suspect it is
> rather small). Which I why I went with a command line option.

It was more of a grumble rather than a request for you to remove the
code.  I've been meaning to look into this myself for some time, as we
just keep accumulating bodges in order to keep the test happy.

We don't seem to perform such tests for any other interrupt sources
that Xen uses (or timer), so I find it kind of odd.  I guess at one
point the PIT was always used, and hence it was relevant to test for
it unconditionally, but that's not the case anymore.

> 
> > 
> > > 
> > > Introduce a command line option 'no_timer_check' (the name is
> > > matching the Linux parameter) for this purpose.
> > > 
> > > Signed-off-by: Julien Grall <jgrall@amazon.com>
> > > ---
> > >   docs/misc/xen-command-line.pandoc |  7 +++++++
> > >   xen/arch/x86/io_apic.c            | 11 +++++++++++
> > >   2 files changed, 18 insertions(+)
> > > 
> > > diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
> > > index 4872b9098e83..1f9d3106383f 100644
> > > --- a/docs/misc/xen-command-line.pandoc
> > > +++ b/docs/misc/xen-command-line.pandoc
> > > @@ -1896,6 +1896,13 @@ This option is ignored in **pv-shim** mode.
> > >   ### nr_irqs (x86)
> > >   > `= <integer>`
> > > +### no_timer_works (x86)
> > 
> > I find the naming confusing, and I would rather avoid negative named
> > booleans.
> > 
> > Maybe it should be `check_pit_intr` and default to enabled for the
> > time being?
> Jan suggested to use timer-irq-works. Would you be happy with the name?

Hm, pit_irq_works might be better IMO, but I could live with
timer_irq_works (with either _ or -).

> > Note that if you don't want to run the test in timer_irq_works() you
> > can possibly avoid the code in preinit_pit(), as there no need to
> > setup channel 0 in periodic mode then.
> 
> The channel also seems to be used as a fallback method for calibrating the
> APIC (see calibrate_APIC_clock()). AFAICT, the fallback method should only
> be used when the PIT is enabled.

Yes, I see.  I think most systems from the last decade will have TSC
deadline timer support, and hence don't engage in the calibration.  We
should see about switching the calibration to use the selected timer,
instead of forcing the usage of the PIT.

> I think it would still be feasible to avoid running the IRQ tests even when
> PIT is used. So it means, we cannot skip preinit_pit().

Yeah, so we seem to have a couple of usages of the Channel 0 counter
that don't rely on the interrupt at all.

> As a side note, I noticed that preinit_pit() is called during resume. But I
> can't find any use of channel 0 after boot. So maybe the call could be
> removed?

See _disable_pit_irq(), there's a relation between the PIT and
cpuidle.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 08:37:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 08:37:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603810.940879 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi9kM-0008TI-Lm; Mon, 18 Sep 2023 08:36:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603810.940879; Mon, 18 Sep 2023 08:36:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi9kM-0008TB-IP; Mon, 18 Sep 2023 08:36:46 +0000
Received: by outflank-mailman (input) for mailman id 603810;
 Mon, 18 Sep 2023 08:36:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=5am5=FC=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qi9kL-0008Sm-2f
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 08:36:45 +0000
Received: from NAM04-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam04on2062b.outbound.protection.outlook.com
 [2a01:111:f400:7e8c::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7baf4faa-55fe-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 10:36:39 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by BN9PR12MB5132.namprd12.prod.outlook.com (2603:10b6:408:119::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Mon, 18 Sep
 2023 08:36:34 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Mon, 18 Sep 2023
 08:36:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7baf4faa-55fe-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FMgdxu93Zb0HZdajuC9rkJuaZ4O1nrkp7u9ATBqZmURkrzX2LrWS/X0NIUrg2WrmB7OlOCXeM9uEOU3h9HSR2vx9y49sgPSpt6EYHncrxM7owKJo51iHEs0HwWNGsKAKF1Se3BVcpsQBqkXgClC0+/kX68bP4rOMR6if0nulIu6vV0mSU1nn5JZhQMo8h8WxE/fUkKiv7/Sp2liN5/mm5G0lG4XUQWixZUh8UJeDPqXP6RRXXu+xvGf3HhPU1toy4hiKpg4T5xIlfQjGfjMwH/dy/DjFyqb1OLBGgdXPurnexYoWrggT5sEmtgDU9idtnQ+oTdnV6USTyMFGY8UC8A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=SOsuO5ct/iDwWYejfSopgB19BUubJlRyyQwEpS6E5DE=;
 b=Sm6ssY1Jh3hWl9ZohVwM5Y69224nVMzwFZdxbYnPZweXxI+pcJo8MMRuig82aN+ly8CMGunz/T7thxlhtuLE9Wv2+nE10a19P+wWrkWK21dUoq3TcRJoM2zmz/tfxBCFjPP7qM8wpa3SF5HQlns9/38Q1cEJ8V4CNWjs3h1W8M4UskeSllwDDizNanWtYkSJZi/hXsA0TfB96BeqIVztPpa0rrPcxhbI68D+4JjiCZh0HwBAlEuXcKOK9rPqfRIHIDFUCvGL/9pbpbSfnGuW/toFVHX71wQvHi/+U2aZm1/Pz1NrrcE5ctczD9elx3i87gH8oQHUFhOuwm0oSeF6mQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=SOsuO5ct/iDwWYejfSopgB19BUubJlRyyQwEpS6E5DE=;
 b=FaDf8YSgsiOCBZs9OWYrgOc1//Ct3JemyjTK+HXqNIiwHV+RJYzyT8Zke6osYaHWqPPB/uM8rcjQdDphdBMqp+XPoRFrxGaLatwxnkDVE+LhRHCF8oBYrWyXoof9DUeddfk0yDThQ3PLPQzFr4gqm76Vbpd5yFVootz2bk3C66A=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Mon, 18 Sep 2023 16:36:03 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands
Message-ID: <ZQgL89xUESe5JZ0o@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-10-ray.huang@amd.com>
 <a14b26dc-c804-4be8-83d5-088e71d37a7b@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <a14b26dc-c804-4be8-83d5-088e71d37a7b@daynix.com>
X-ClientProxiedBy: SI2PR01CA0018.apcprd01.prod.exchangelabs.com
 (2603:1096:4:191::7) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|BN9PR12MB5132:EE_
X-MS-Office365-Filtering-Correlation-Id: 66696a6b-c1e0-4113-c216-08dbb8225cd5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	4ie5MVZx94cOSdrWxj/G9rEvg+nDTCkWTajHmfY1s81VrHzeJpMbAFQgQs/K15HOdMuzK1WNlZjs6/NQDszHr/xJAyKFj03eFCYzVKQivOJJKiqqIvjuG9XSNskMVq8twUUcVYE1zrCU9dgkrQip2jXsyhNUzmkgJMSY/qz3Sd8J/m5J/z3OsE5WxDS1FN6a8ip1S1rYRnrnKDaUtfgWqjeXwHiHPjQ/CkOq5yY6WzX1lbAc85dDk9mMWIrhGInvFjked1wulwZrhgvxc8Pc3AS76FKNEbzoqIvae3jAlegyn8PNCU83t+cS3UG09gQYxtyuMJtgIr9B1EobmSEwa9aO4yHqYIemoDPp4L3UkrfcnD+aNIWI0o6REs3w4kkAAfVZ57CvwIHnjsFIOnxDgtEC2NQHrRMvX+0uv3pa/YR1Rd3RL72pvclMe+TxD2c2YJM/XdoL9SrZnA4B6Cc3gvnBlJidKeQDJ5u14niEeUef3+c4voE/S839ABUwSZ1t4JxTO1IAM13pX+CqupaYbEpUXio2la7pQelYeoifB56+qdPVNPyzPt9yRk7yYS+l
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(136003)(366004)(376002)(346002)(451199024)(186009)(1800799009)(66946007)(53546011)(6506007)(6486002)(66476007)(66556008)(54906003)(6512007)(6916009)(316002)(41300700001)(478600001)(6666004)(4326008)(8936002)(8676002)(26005)(5660300002)(36756003)(38100700002)(83380400001)(2906002)(2616005)(30864003)(7416002)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?Ot1LlgtTjcHsyGAN1WMZY9zm4jLDVuBJydSqTWJ7Tna2Zbe5QmgYeHBjLLjC?=
 =?us-ascii?Q?g1AoIbHp+52tQusQ/+9/rC9aNT6yTUSC23wtr+FprSd8FUeRN8ga6H7I2/0L?=
 =?us-ascii?Q?UWJIvfEMleOALQpAeVrEPSqqZGgNxjsaOMLuW3UQf6zW0JG4nB3kAdpyxcw0?=
 =?us-ascii?Q?qvCH5kXalYEuBfAp/hglNrPC6M1rf5aMAHr9957teo373DsrUyZNT+sURvMH?=
 =?us-ascii?Q?T/b7t1ori/zesYdrpvGVm6XJFV3EtWqqvt7BotIIKJ75egHORaWzTzTp5DJ2?=
 =?us-ascii?Q?w4S0ocD8lAhnyrXEkgWFi3P5SOJ3WORuwxlDQjDFZVx/P7SP+Zf9SGCvz/OW?=
 =?us-ascii?Q?Glo0bR9rR5ujXHwWea/6jOGn23+faViM4oOI4/lgBdkd1hR2uv53grXNBNQo?=
 =?us-ascii?Q?i5BF3uYXNaiCCHKsxs7ZTTQ0OfeTQ7q5kILxgk/zQMmzpFac7lm7PZ00hbIV?=
 =?us-ascii?Q?ZO48+W+5191+ZTOtaXVFRpqfUZpDqwm2Pd3N9IMyBOAUEnrIqpBBqFYA9vSm?=
 =?us-ascii?Q?y73i0Uk9FNTRsr4QfotM+d7PWwbyfutMCW1MYCihZOkBqZXHU458UToK8vFu?=
 =?us-ascii?Q?xc7tC8MmWPLePewsT7qMjCWVxINqgw46nzfgvmyKOxUddXF9FqUGe6I3nQ5q?=
 =?us-ascii?Q?3qgEm4+ZVGp9oVKnXLJeiYH1gOasgiGYlBTy+9KU/YWTSuvErCR9gvzuebrJ?=
 =?us-ascii?Q?2iAy/2QGnIMIbUKn+K02uEt8Zbzya0BTNPL80/JPtU80Rfrr8SzbXuc9BU0W?=
 =?us-ascii?Q?i//mapVsmsKHHf1mbgVEGAUE/foUyIl5NwrHe5ZZRIvv7CubsxEqrs6ol7C0?=
 =?us-ascii?Q?bxuWKbv+5JDYOIzdGVeCbPLPOg6TLW9Fw1aNCvx17st5a3uwFwYbdsUtUBC4?=
 =?us-ascii?Q?0kn1jA2rVOtWHWQp1H+T+VjAmUU4ir5dZQCDBlWeFG3nbuMKqtYbsLBIDG7N?=
 =?us-ascii?Q?fIF59R9RRMXfCYeBDjE+fTLu3Nc5FwsedeP00xdo5hCjdoIB4dGJ41lCCLrB?=
 =?us-ascii?Q?Pyno0wvQkIXm+xphG4WQpm2+zueFu8s19GI6IIibVvgWqOHFQAgmGombf8lK?=
 =?us-ascii?Q?F2V04QWkl0QD8dHbDS1/MnGwETuiHEAxozBqQaJ05eskk4DEBK99tQPkmTkT?=
 =?us-ascii?Q?AD5fsxvS/vXTqer0pgYImWqBqL9wfgPgaVX2gFjhbVHqVaagAqhqWDqvPTGF?=
 =?us-ascii?Q?mG0YBo9fREtdh6DRPFmdkC/1jBTzCiA+LTifNKupwTsF3Jr5cQjJToAFpZAf?=
 =?us-ascii?Q?23JIeNB+n3HFDd0K3IBdfjErDC/rP+5LnUKY2AswI9cDPskcusl95wFcuvyJ?=
 =?us-ascii?Q?ibLm5ngexofrN44k1vj8mKuRL4fbZhRNusvrWn2T29xhV6+pJVUJoCFiJnAU?=
 =?us-ascii?Q?pJesFDTfEwZ5GMolcllb8moWU1jZGc8Ay+85Sqf9EO36bc6TZ7whe5d4E2+S?=
 =?us-ascii?Q?EXD7PurqnaXOlYTV84SfVYjbJ+Bs6PpVwIFki66ZdhcesUemixniB1C0Qyi2?=
 =?us-ascii?Q?0EwXpK2SU4Gr6wIvLmMv+Pl858g1zdAHAj3ND2w2v2ZsIPb8jWmIdlyLm+jU?=
 =?us-ascii?Q?0bTckR4ssX2y34MUk28ExJyKeVg6m8FkZh8/Ocll?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 66696a6b-c1e0-4113-c216-08dbb8225cd5
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 08:36:33.3948
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9XKLYYCYbEIZVmZHB6rBZIwWj88jNgzMtuHagDeI3EFzoAJRq+iRXAo2WrLBRbKaPSOu2CMEaoJL5dxS7ep1vA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5132

On Sat, Sep 16, 2023 at 12:04:17AM +0800, Akihiko Odaki wrote:
> On 2023/09/15 20:11, Huang Rui wrote:
> > From: Antonio Caggiano <antonio.caggiano@collabora.com>
> > 
> > Support BLOB resources creation, mapping and unmapping by calling the
> > new stable virglrenderer 0.10 interface. Only enabled when available and
> > via the blob config. E.g. -device virtio-vga-gl,blob=true
> > 
> > Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
> > Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> > 
> > V4 -> V5:
> >      - Use memory_region_init_ram_ptr() instead of
> >        memory_region_init_ram_device_ptr() (Akihiko)
> > 
> >   hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
> >   hw/display/virtio-gpu.c        |   4 +-
> >   include/hw/virtio/virtio-gpu.h |   5 +
> >   meson.build                    |   4 +
> >   4 files changed, 225 insertions(+), 1 deletion(-)
> > 
> > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> > index 312953ec16..563a6f2f58 100644
> > --- a/hw/display/virtio-gpu-virgl.c
> > +++ b/hw/display/virtio-gpu-virgl.c
> > @@ -17,6 +17,7 @@
> >   #include "trace.h"
> >   #include "hw/virtio/virtio.h"
> >   #include "hw/virtio/virtio-gpu.h"
> > +#include "hw/virtio/virtio-gpu-bswap.h"
> >   
> >   #include "ui/egl-helpers.h"
> >   
> > @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
> >       virgl_renderer_resource_create(&args, NULL, 0);
> >   }
> >   
> > +static void virgl_resource_destroy(VirtIOGPU *g,
> > +                                   struct virtio_gpu_simple_resource *res)
> > +{
> > +    if (!res)
> > +        return;
> > +
> > +    QTAILQ_REMOVE(&g->reslist, res, next);
> > +
> > +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
> > +    g_free(res->addrs);
> > +
> > +    g_free(res);
> > +}
> > +
> >   static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >                                        struct virtio_gpu_ctrl_command *cmd)
> >   {
> > +    struct virtio_gpu_simple_resource *res;
> >       struct virtio_gpu_resource_unref unref;
> >       struct iovec *res_iovs = NULL;
> >       int num_iovs = 0;
> > @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >       VIRTIO_GPU_FILL_CMD(unref);
> >       trace_virtio_gpu_cmd_res_unref(unref.resource_id);
> >   
> > +    res = virtio_gpu_find_resource(g, unref.resource_id);
> > +
> >       virgl_renderer_resource_detach_iov(unref.resource_id,
> >                                          &res_iovs,
> >                                          &num_iovs);
> >       if (res_iovs != NULL && num_iovs != 0) {
> >           virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
> > +        if (res) {
> > +            res->iov = NULL;
> > +            res->iov_cnt = 0;
> > +        }
> >       }
> > +
> >       virgl_renderer_resource_unref(unref.resource_id);
> > +
> > +    virgl_resource_destroy(g, res);
> >   }
> >   
> >   static void virgl_cmd_context_create(VirtIOGPU *g,
> > @@ -426,6 +451,183 @@ static void virgl_cmd_get_capset(VirtIOGPU *g,
> >       g_free(resp);
> >   }
> >   
> > +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> > +
> > +static void virgl_cmd_resource_create_blob(VirtIOGPU *g,
> > +                                           struct virtio_gpu_ctrl_command *cmd)
> > +{
> > +    struct virtio_gpu_simple_resource *res;
> > +    struct virtio_gpu_resource_create_blob cblob;
> > +    struct virgl_renderer_resource_create_blob_args virgl_args = { 0 };
> > +    int ret;
> > +
> > +    VIRTIO_GPU_FILL_CMD(cblob);
> > +    virtio_gpu_create_blob_bswap(&cblob);
> > +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
> > +
> > +    if (cblob.resource_id == 0) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> > +                      __func__);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res = virtio_gpu_find_resource(g, cblob.resource_id);
> > +    if (res) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already exists %d\n",
> > +                      __func__, cblob.resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> > +    if (!res) {
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> > +        return;
> > +    }
> > +
> > +    res->resource_id = cblob.resource_id;
> > +    res->blob_size = cblob.size;
> > +
> > +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
> > +        ret = virtio_gpu_create_mapping_iov(g, cblob.nr_entries, sizeof(cblob),
> > +                                            cmd, &res->addrs, &res->iov,
> > +                                            &res->iov_cnt);
> > +        if (!ret) {
> > +            g_free(res);
> > +            cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> > +            return;
> > +        }
> > +    }
> > +
> > +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> > +
> > +    virgl_args.res_handle = cblob.resource_id;
> > +    virgl_args.ctx_id = cblob.hdr.ctx_id;
> > +    virgl_args.blob_mem = cblob.blob_mem;
> > +    virgl_args.blob_id = cblob.blob_id;
> > +    virgl_args.blob_flags = cblob.blob_flags;
> > +    virgl_args.size = cblob.size;
> > +    virgl_args.iovecs = res->iov;
> > +    virgl_args.num_iovs = res->iov_cnt;
> > +
> > +    ret = virgl_renderer_resource_create_blob(&virgl_args);
> > +    if (ret) {
> > +        virgl_resource_destroy(g, res);
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: virgl blob create error: %s\n",
> > +                      __func__, strerror(-ret));
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> > +    }
> > +}
> > +
> > +static void virgl_cmd_resource_map_blob(VirtIOGPU *g,
> > +                                        struct virtio_gpu_ctrl_command *cmd)
> > +{
> > +    struct virtio_gpu_simple_resource *res;
> > +    struct virtio_gpu_resource_map_blob mblob;
> > +    int ret;
> > +    void *data;
> > +    uint64_t size;
> > +    struct virtio_gpu_resp_map_info resp;
> > +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
> > +
> > +    VIRTIO_GPU_FILL_CMD(mblob);
> > +    virtio_gpu_map_blob_bswap(&mblob);
> > +
> > +    if (mblob.resource_id == 0) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> > +                      __func__);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res = virtio_gpu_find_resource(g, mblob.resource_id);
> > +    if (!res) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
> > +                      __func__, mblob.resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +    if (res->region) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already mapped %d\n",
> > +		      __func__, mblob.resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    ret = virgl_renderer_resource_map(res->resource_id, &data, &size);
> > +    if (ret) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource map error: %s\n",
> > +                      __func__, strerror(-ret));
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res->region = g_new0(MemoryRegion, 1);
> > +    if (!res->region) {
> > +        virgl_renderer_resource_unmap(res->resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> > +        return;
> > +    }
> > +    memory_region_init_ram_ptr(res->region, OBJECT(g), NULL, size, data);
> > +    OBJECT(res->region)->free = g_free;
> > +    memory_region_add_subregion(&b->hostmem, mblob.offset, res->region);
> > +    memory_region_set_enabled(res->region, true);
> > +
> > +    memset(&resp, 0, sizeof(resp));
> > +    resp.hdr.type = VIRTIO_GPU_RESP_OK_MAP_INFO;
> > +    virgl_renderer_resource_get_map_info(mblob.resource_id, &resp.map_info);
> > +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
> > +}
> > +
> > +static int virtio_gpu_virgl_resource_unmap(VirtIOGPU *g,
> > +                                           struct virtio_gpu_simple_resource
> > +                                           *res)
> > +{
> > +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
> > +
> > +    if (!res) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already unmapped %d\n",
> > +                      __func__, res->resource_id);
> > +        return VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> 
> This returns enum virtio_gpu_ctrl_type while 
> virgl_renderer_resource_unmap() returns -errno and the returned error 
> code is ignored.
> 
> I think you can just inline this function into 
> virgl_cmd_resource_unmap_blob(). It will be more concise and consistent 
> with virgl_cmd_resource_map_blob().

OK, will update in V2.

> 
> > +    }
> > +
> > +    memory_region_set_enabled(res->region, false);
> > +    memory_region_del_subregion(&b->hostmem, res->region);
> > +    object_unparent(OBJECT(res->region));
> > +    res->region = NULL;
> > +
> > +    return virgl_renderer_resource_unmap(res->resource_id);
> > +}
> > +
> > +static void virgl_cmd_resource_unmap_blob(VirtIOGPU *g,
> > +                                          struct virtio_gpu_ctrl_command *cmd)
> > +{
> > +    struct virtio_gpu_simple_resource *res;
> > +    struct virtio_gpu_resource_unmap_blob ublob;
> > +    VIRTIO_GPU_FILL_CMD(ublob);
> > +    virtio_gpu_unmap_blob_bswap(&ublob);
> > +
> > +    if (ublob.resource_id == 0) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> > +                      __func__);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res = virtio_gpu_find_resource(g, ublob.resource_id);
> > +    if (!res) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
> > +                      __func__, ublob.resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    virtio_gpu_virgl_resource_unmap(g, res);
> > +}
> > +
> > +#endif /* HAVE_VIRGL_RESOURCE_BLOB */
> > +
> >   void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
> >                                         struct virtio_gpu_ctrl_command *cmd)
> >   {
> > @@ -492,6 +694,17 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
> >       case VIRTIO_GPU_CMD_GET_EDID:
> >           virtio_gpu_get_edid(g, cmd);
> >           break;
> > +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> > +    case VIRTIO_GPU_CMD_RESOURCE_CREATE_BLOB:
> > +        virgl_cmd_resource_create_blob(g, cmd);
> > +        break;
> > +    case VIRTIO_GPU_CMD_RESOURCE_MAP_BLOB:
> > +        virgl_cmd_resource_map_blob(g, cmd);
> > +        break;
> > +    case VIRTIO_GPU_CMD_RESOURCE_UNMAP_BLOB:
> > +        virgl_cmd_resource_unmap_blob(g, cmd);
> > +        break;
> > +#endif /* HAVE_VIRGL_RESOURCE_BLOB */
> >       default:
> >           cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> >           break;
> > diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> > index 5b7a7eab4f..cc4c1f81bb 100644
> > --- a/hw/display/virtio-gpu.c
> > +++ b/hw/display/virtio-gpu.c
> > @@ -1367,10 +1367,12 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp)
> >               return;
> >           }
> >   
> > +#ifndef HAVE_VIRGL_RESOURCE_BLOB
> >           if (virtio_gpu_virgl_enabled(g->parent_obj.conf)) {
> > -            error_setg(errp, "blobs and virgl are not compatible (yet)");
> > +            error_setg(errp, "Linked virglrenderer does not support blob resources");
> >               return;
> >           }
> > +#endif
> >       }
> >   
> >       if (!virtio_gpu_base_device_realize(qdev,
> > diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h
> > index 55973e112f..b9adc28071 100644
> > --- a/include/hw/virtio/virtio-gpu.h
> > +++ b/include/hw/virtio/virtio-gpu.h
> > @@ -58,6 +58,11 @@ struct virtio_gpu_simple_resource {
> >       int dmabuf_fd;
> >       uint8_t *remapped;
> >   
> > +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> > +    /* only blob resource needs this region to be mapped as guest mmio */
> > +    MemoryRegion *region;
> > +#endif
> > +
> 
> Since this is specific to virgl, let's create a struct that embeds 
> virtio_gpu_simple_resource and use it to avoid modifying virtio-gpu 
> common code.

I am thinking should I modify the whole virtio-gpu-virgl.c to use the new
struct like virgl_gpu_resource which has virtio_gpu_simple_resource
embedded? Then in virgl, we can use this structure to indicate the resource
for virglrenderer.

Thanks,
Ray


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 08:39:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 08:39:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603815.940888 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi9mi-0000cl-25; Mon, 18 Sep 2023 08:39:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603815.940888; Mon, 18 Sep 2023 08:39:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi9mh-0000ce-VM; Mon, 18 Sep 2023 08:39:11 +0000
Received: by outflank-mailman (input) for mailman id 603815;
 Mon, 18 Sep 2023 08:39:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ZGqG=FC=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qi9mh-0000cY-CQ
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 08:39:11 +0000
Received: from mail-pl1-x629.google.com (mail-pl1-x629.google.com
 [2607:f8b0:4864:20::629])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d5c719ab-55fe-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 10:39:10 +0200 (CEST)
Received: by mail-pl1-x629.google.com with SMTP id
 d9443c01a7336-1c3d6d88231so32975855ad.0
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 01:39:10 -0700 (PDT)
Received: from [157.82.205.33] ([157.82.205.33])
 by smtp.gmail.com with ESMTPSA id
 jc12-20020a17090325cc00b001bf574dd1fesm4492656plb.141.2023.09.18.01.39.03
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 18 Sep 2023 01:39:08 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d5c719ab-55fe-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1695026348; x=1695631148; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=86S1E2SVzAB27OLsEt+LUsAzMa8JftTI6gWOZFMAcyA=;
        b=Pw912vaO/cWrVKNig8i84z6yxVXo+WDiXc8FHPxEgfFIdDXDWHWhk1SBp6SwJ64Y4o
         Zt3KtvtRO7OiZmGNSkVSrkx1nQCzbQWmxtplP63QhttvbaVFp7XU0bB9rh215XmNIHx9
         0xG7goO5B8gSXYgpMhgh6qnmuxY47tr2M+l4ko5K0aP3HDRqqQqBW9BEYGwf6c3HKkO7
         OVblNfl7qiRLTnv5P15rb1FLVY86eK1xRVgs5b2mK3U2BjfAkLh+q3rtBOD3y9KQ1I5/
         Ndw3nFEYrZ6AY9JZq0N7raMDt0qjfu8OF7H/FiELzGtCPXiPTxszEq7Q8ZI2A918L4KB
         Bdyg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695026348; x=1695631148;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=86S1E2SVzAB27OLsEt+LUsAzMa8JftTI6gWOZFMAcyA=;
        b=p4iWj37ggmi9to0f8EW93JevLtyLdYP1N/d53B5QQ996mhHaR4jY4N8W8geukp0Q7u
         GceEr0xQE41OkZ7vVOhP8wJsMdamH7Zh7LvE3neqkZf20VVOAI8A+HlfLDJ4rAux8Htb
         hZp6/BjDk5AuoUbQLW64+yO3YWmH9zKEFgruLag8V6p517fBYoamK3VC6fZG/gIqnGA6
         dsxwG3PZXz1uOobMjupSXQT2UMPNm7eDcba6fPEetdf3oFRc0bkZSXzxaalwqieffTrv
         mrKXX2P8ULiurZKlPAT+RF+X17XAGqDHyJ0rqwgLzqLK8kazFP71UiD2dYdPN8DEiKgn
         yVCA==
X-Gm-Message-State: AOJu0YyPUTVwVWl0WEkn75muP+6G3/rhOlKxivkvHX/74voNev6ILo5E
	mPoe9VzF9SgAGc2GpBEEM9hwAw==
X-Google-Smtp-Source: AGHT+IFnG4h21bBJscaRI9/WbdBI/7X4MedLqwJ3DeBs2xacVGWKVRE5g8uqOclAUe6SrodK0GpB4g==
X-Received: by 2002:a17:902:e852:b0:1b9:e937:9763 with SMTP id t18-20020a170902e85200b001b9e9379763mr8449574plg.12.1695026348445;
        Mon, 18 Sep 2023 01:39:08 -0700 (PDT)
Message-ID: <b37f1c2d-1655-45b5-a2fb-bd9f3fbabd36@daynix.com>
Date: Mon, 18 Sep 2023 17:39:01 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands
Content-Language: en-US
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin"
 <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, "ernunes@redhat.com"
 <ernunes@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?=
 <philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-10-ray.huang@amd.com>
 <a14b26dc-c804-4be8-83d5-088e71d37a7b@daynix.com> <ZQgL89xUESe5JZ0o@amd.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <ZQgL89xUESe5JZ0o@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/18 17:36, Huang Rui wrote:
> On Sat, Sep 16, 2023 at 12:04:17AM +0800, Akihiko Odaki wrote:
>> On 2023/09/15 20:11, Huang Rui wrote:
>>> From: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>
>>> Support BLOB resources creation, mapping and unmapping by calling the
>>> new stable virglrenderer 0.10 interface. Only enabled when available and
>>> via the blob config. E.g. -device virtio-vga-gl,blob=true
>>>
>>> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
>>> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>> ---
>>>
>>> V4 -> V5:
>>>       - Use memory_region_init_ram_ptr() instead of
>>>         memory_region_init_ram_device_ptr() (Akihiko)
>>>
>>>    hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
>>>    hw/display/virtio-gpu.c        |   4 +-
>>>    include/hw/virtio/virtio-gpu.h |   5 +
>>>    meson.build                    |   4 +
>>>    4 files changed, 225 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
>>> index 312953ec16..563a6f2f58 100644
>>> --- a/hw/display/virtio-gpu-virgl.c
>>> +++ b/hw/display/virtio-gpu-virgl.c
>>> @@ -17,6 +17,7 @@
>>>    #include "trace.h"
>>>    #include "hw/virtio/virtio.h"
>>>    #include "hw/virtio/virtio-gpu.h"
>>> +#include "hw/virtio/virtio-gpu-bswap.h"
>>>    
>>>    #include "ui/egl-helpers.h"
>>>    
>>> @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
>>>        virgl_renderer_resource_create(&args, NULL, 0);
>>>    }
>>>    
>>> +static void virgl_resource_destroy(VirtIOGPU *g,
>>> +                                   struct virtio_gpu_simple_resource *res)
>>> +{
>>> +    if (!res)
>>> +        return;
>>> +
>>> +    QTAILQ_REMOVE(&g->reslist, res, next);
>>> +
>>> +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
>>> +    g_free(res->addrs);
>>> +
>>> +    g_free(res);
>>> +}
>>> +
>>>    static void virgl_cmd_resource_unref(VirtIOGPU *g,
>>>                                         struct virtio_gpu_ctrl_command *cmd)
>>>    {
>>> +    struct virtio_gpu_simple_resource *res;
>>>        struct virtio_gpu_resource_unref unref;
>>>        struct iovec *res_iovs = NULL;
>>>        int num_iovs = 0;
>>> @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
>>>        VIRTIO_GPU_FILL_CMD(unref);
>>>        trace_virtio_gpu_cmd_res_unref(unref.resource_id);
>>>    
>>> +    res = virtio_gpu_find_resource(g, unref.resource_id);
>>> +
>>>        virgl_renderer_resource_detach_iov(unref.resource_id,
>>>                                           &res_iovs,
>>>                                           &num_iovs);
>>>        if (res_iovs != NULL && num_iovs != 0) {
>>>            virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
>>> +        if (res) {
>>> +            res->iov = NULL;
>>> +            res->iov_cnt = 0;
>>> +        }
>>>        }
>>> +
>>>        virgl_renderer_resource_unref(unref.resource_id);
>>> +
>>> +    virgl_resource_destroy(g, res);
>>>    }
>>>    
>>>    static void virgl_cmd_context_create(VirtIOGPU *g,
>>> @@ -426,6 +451,183 @@ static void virgl_cmd_get_capset(VirtIOGPU *g,
>>>        g_free(resp);
>>>    }
>>>    
>>> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
>>> +
>>> +static void virgl_cmd_resource_create_blob(VirtIOGPU *g,
>>> +                                           struct virtio_gpu_ctrl_command *cmd)
>>> +{
>>> +    struct virtio_gpu_simple_resource *res;
>>> +    struct virtio_gpu_resource_create_blob cblob;
>>> +    struct virgl_renderer_resource_create_blob_args virgl_args = { 0 };
>>> +    int ret;
>>> +
>>> +    VIRTIO_GPU_FILL_CMD(cblob);
>>> +    virtio_gpu_create_blob_bswap(&cblob);
>>> +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
>>> +
>>> +    if (cblob.resource_id == 0) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
>>> +                      __func__);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +
>>> +    res = virtio_gpu_find_resource(g, cblob.resource_id);
>>> +    if (res) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already exists %d\n",
>>> +                      __func__, cblob.resource_id);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +
>>> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
>>> +    if (!res) {
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
>>> +        return;
>>> +    }
>>> +
>>> +    res->resource_id = cblob.resource_id;
>>> +    res->blob_size = cblob.size;
>>> +
>>> +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
>>> +        ret = virtio_gpu_create_mapping_iov(g, cblob.nr_entries, sizeof(cblob),
>>> +                                            cmd, &res->addrs, &res->iov,
>>> +                                            &res->iov_cnt);
>>> +        if (!ret) {
>>> +            g_free(res);
>>> +            cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
>>> +            return;
>>> +        }
>>> +    }
>>> +
>>> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
>>> +
>>> +    virgl_args.res_handle = cblob.resource_id;
>>> +    virgl_args.ctx_id = cblob.hdr.ctx_id;
>>> +    virgl_args.blob_mem = cblob.blob_mem;
>>> +    virgl_args.blob_id = cblob.blob_id;
>>> +    virgl_args.blob_flags = cblob.blob_flags;
>>> +    virgl_args.size = cblob.size;
>>> +    virgl_args.iovecs = res->iov;
>>> +    virgl_args.num_iovs = res->iov_cnt;
>>> +
>>> +    ret = virgl_renderer_resource_create_blob(&virgl_args);
>>> +    if (ret) {
>>> +        virgl_resource_destroy(g, res);
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: virgl blob create error: %s\n",
>>> +                      __func__, strerror(-ret));
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
>>> +    }
>>> +}
>>> +
>>> +static void virgl_cmd_resource_map_blob(VirtIOGPU *g,
>>> +                                        struct virtio_gpu_ctrl_command *cmd)
>>> +{
>>> +    struct virtio_gpu_simple_resource *res;
>>> +    struct virtio_gpu_resource_map_blob mblob;
>>> +    int ret;
>>> +    void *data;
>>> +    uint64_t size;
>>> +    struct virtio_gpu_resp_map_info resp;
>>> +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
>>> +
>>> +    VIRTIO_GPU_FILL_CMD(mblob);
>>> +    virtio_gpu_map_blob_bswap(&mblob);
>>> +
>>> +    if (mblob.resource_id == 0) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
>>> +                      __func__);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +
>>> +    res = virtio_gpu_find_resource(g, mblob.resource_id);
>>> +    if (!res) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
>>> +                      __func__, mblob.resource_id);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +    if (res->region) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already mapped %d\n",
>>> +		      __func__, mblob.resource_id);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +
>>> +    ret = virgl_renderer_resource_map(res->resource_id, &data, &size);
>>> +    if (ret) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource map error: %s\n",
>>> +                      __func__, strerror(-ret));
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +
>>> +    res->region = g_new0(MemoryRegion, 1);
>>> +    if (!res->region) {
>>> +        virgl_renderer_resource_unmap(res->resource_id);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
>>> +        return;
>>> +    }
>>> +    memory_region_init_ram_ptr(res->region, OBJECT(g), NULL, size, data);
>>> +    OBJECT(res->region)->free = g_free;
>>> +    memory_region_add_subregion(&b->hostmem, mblob.offset, res->region);
>>> +    memory_region_set_enabled(res->region, true);
>>> +
>>> +    memset(&resp, 0, sizeof(resp));
>>> +    resp.hdr.type = VIRTIO_GPU_RESP_OK_MAP_INFO;
>>> +    virgl_renderer_resource_get_map_info(mblob.resource_id, &resp.map_info);
>>> +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
>>> +}
>>> +
>>> +static int virtio_gpu_virgl_resource_unmap(VirtIOGPU *g,
>>> +                                           struct virtio_gpu_simple_resource
>>> +                                           *res)
>>> +{
>>> +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
>>> +
>>> +    if (!res) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already unmapped %d\n",
>>> +                      __func__, res->resource_id);
>>> +        return VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>
>> This returns enum virtio_gpu_ctrl_type while
>> virgl_renderer_resource_unmap() returns -errno and the returned error
>> code is ignored.
>>
>> I think you can just inline this function into
>> virgl_cmd_resource_unmap_blob(). It will be more concise and consistent
>> with virgl_cmd_resource_map_blob().
> 
> OK, will update in V2.
> 
>>
>>> +    }
>>> +
>>> +    memory_region_set_enabled(res->region, false);
>>> +    memory_region_del_subregion(&b->hostmem, res->region);
>>> +    object_unparent(OBJECT(res->region));
>>> +    res->region = NULL;
>>> +
>>> +    return virgl_renderer_resource_unmap(res->resource_id);
>>> +}
>>> +
>>> +static void virgl_cmd_resource_unmap_blob(VirtIOGPU *g,
>>> +                                          struct virtio_gpu_ctrl_command *cmd)
>>> +{
>>> +    struct virtio_gpu_simple_resource *res;
>>> +    struct virtio_gpu_resource_unmap_blob ublob;
>>> +    VIRTIO_GPU_FILL_CMD(ublob);
>>> +    virtio_gpu_unmap_blob_bswap(&ublob);
>>> +
>>> +    if (ublob.resource_id == 0) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
>>> +                      __func__);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +
>>> +    res = virtio_gpu_find_resource(g, ublob.resource_id);
>>> +    if (!res) {
>>> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
>>> +                      __func__, ublob.resource_id);
>>> +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
>>> +        return;
>>> +    }
>>> +
>>> +    virtio_gpu_virgl_resource_unmap(g, res);
>>> +}
>>> +
>>> +#endif /* HAVE_VIRGL_RESOURCE_BLOB */
>>> +
>>>    void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
>>>                                          struct virtio_gpu_ctrl_command *cmd)
>>>    {
>>> @@ -492,6 +694,17 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
>>>        case VIRTIO_GPU_CMD_GET_EDID:
>>>            virtio_gpu_get_edid(g, cmd);
>>>            break;
>>> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
>>> +    case VIRTIO_GPU_CMD_RESOURCE_CREATE_BLOB:
>>> +        virgl_cmd_resource_create_blob(g, cmd);
>>> +        break;
>>> +    case VIRTIO_GPU_CMD_RESOURCE_MAP_BLOB:
>>> +        virgl_cmd_resource_map_blob(g, cmd);
>>> +        break;
>>> +    case VIRTIO_GPU_CMD_RESOURCE_UNMAP_BLOB:
>>> +        virgl_cmd_resource_unmap_blob(g, cmd);
>>> +        break;
>>> +#endif /* HAVE_VIRGL_RESOURCE_BLOB */
>>>        default:
>>>            cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
>>>            break;
>>> diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
>>> index 5b7a7eab4f..cc4c1f81bb 100644
>>> --- a/hw/display/virtio-gpu.c
>>> +++ b/hw/display/virtio-gpu.c
>>> @@ -1367,10 +1367,12 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp)
>>>                return;
>>>            }
>>>    
>>> +#ifndef HAVE_VIRGL_RESOURCE_BLOB
>>>            if (virtio_gpu_virgl_enabled(g->parent_obj.conf)) {
>>> -            error_setg(errp, "blobs and virgl are not compatible (yet)");
>>> +            error_setg(errp, "Linked virglrenderer does not support blob resources");
>>>                return;
>>>            }
>>> +#endif
>>>        }
>>>    
>>>        if (!virtio_gpu_base_device_realize(qdev,
>>> diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h
>>> index 55973e112f..b9adc28071 100644
>>> --- a/include/hw/virtio/virtio-gpu.h
>>> +++ b/include/hw/virtio/virtio-gpu.h
>>> @@ -58,6 +58,11 @@ struct virtio_gpu_simple_resource {
>>>        int dmabuf_fd;
>>>        uint8_t *remapped;
>>>    
>>> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
>>> +    /* only blob resource needs this region to be mapped as guest mmio */
>>> +    MemoryRegion *region;
>>> +#endif
>>> +
>>
>> Since this is specific to virgl, let's create a struct that embeds
>> virtio_gpu_simple_resource and use it to avoid modifying virtio-gpu
>> common code.
> 
> I am thinking should I modify the whole virtio-gpu-virgl.c to use the new
> struct like virgl_gpu_resource which has virtio_gpu_simple_resource
> embedded? Then in virgl, we can use this structure to indicate the resource
> for virglrenderer.

Yes, that's what I suggest.


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 08:43:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 08:43:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603821.940899 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi9qd-00029a-MB; Mon, 18 Sep 2023 08:43:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603821.940899; Mon, 18 Sep 2023 08:43:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi9qd-00029T-J7; Mon, 18 Sep 2023 08:43:15 +0000
Received: by outflank-mailman (input) for mailman id 603821;
 Mon, 18 Sep 2023 08:43:14 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pP1k=FC=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qi9qc-00029L-Nh
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 08:43:14 +0000
Received: from mail-lf1-x134.google.com (mail-lf1-x134.google.com
 [2a00:1450:4864:20::134])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 66deb130-55ff-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 10:43:12 +0200 (CEST)
Received: by mail-lf1-x134.google.com with SMTP id
 2adb3069b0e04-50079d148aeso6936275e87.3
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 01:43:12 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 r13-20020ac25a4d000000b004ff9bfda9d6sm1713117lfn.212.2023.09.18.01.43.10
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 01:43:11 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 66deb130-55ff-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695026592; x=1695631392; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=sNh+8aGIG6+Vd8reRK1569GS372PTFUt9nPjdKhR0Po=;
        b=N3SO1xu1l45yGfKHdaibayqiKgEZLp3wvzEHmVZozIUP9OMBNWh9xnpB6glpeyDQO+
         An3eIp4nO1M6LsERn2XbDuc0NDFNvRwDI+DO+WOZSs5dZqccqcU7TbufvyL+ac35P9Tz
         OkWGhzthcC8cpnFykjRvqszWbEmNKtwCXiAa2e82+nmYGFxwUmmFx7c9tZKT9sfq99yu
         EPyu3Yu6yrl0hTLA0+RmdJDwCLArBPp8OpTNyWj4XScWAU1iLbySL3SP/0mtFsdBqG1b
         1b0P97VCk87CuVrJq9B251HiMANduktTZc4nTh6mFIgJs+KWCzJovpbrr5bvvZxHURyt
         0eOg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695026592; x=1695631392;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=sNh+8aGIG6+Vd8reRK1569GS372PTFUt9nPjdKhR0Po=;
        b=gKhxTHdYVOXjHdXDSuoZiS8QyRPeQFh+qr+G+bo6XQmwUQLzrFsycEeJ//NyLc9tcg
         5H5pf7zYgKYG7eD0+YLMfJU/Fn7nIUuKmrM9nwXtntxJml5fGGtEpjqjFhgPLuzBR1pU
         sVn+XKMSxWaKUmVvwZlx2Z/KpqOdcIunSrDoQ5B5bSpK9nxq5708RuVBpy0Jve7Bu5NH
         LC/JuZPoYWMLsoyFKIwDalWF3yThCkNPLE9wel0XRSNDszc5qHl1vnCLnH4n/2Pv2bHJ
         IbJ3OEPGe8BrIbL0v8imd0mg4ry69LQCsLhYPWio04KOqCQx5cUcrohiHBY3nGp3G0A3
         upZA==
X-Gm-Message-State: AOJu0YwUz3AHMRPS2xDIYmLFMPUFFjiIgpGKWJrO6B8Tm6np6oxkqwkB
	ng4CtgAbCbDnbSQrVpg+p8BAv/b/Hq8=
X-Google-Smtp-Source: AGHT+IHQ6/zfkx7mYHZ/NQ/A9Pu7xz7BLqJoC8ROtYb5A/rgRuV6lD7IAhVOWxLRwSfocHhkLE6TDA==
X-Received: by 2002:a05:6512:2214:b0:503:175e:f005 with SMTP id h20-20020a056512221400b00503175ef005mr2157970lfu.38.1695026591815;
        Mon, 18 Sep 2023 01:43:11 -0700 (PDT)
Message-ID: <f249f33acf10c3ac8a35fa92c10ddf7f8618d63d.camel@gmail.com>
Subject: Re: [PATCH v1 01/29] xen/asm-generic: introduce stub header
 spinlock.h
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
Date: Mon, 18 Sep 2023 11:43:09 +0300
In-Reply-To: <bffaf38c-551d-b9f4-5060-3803e73bee70@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <30743e7391ad474724258441b7ec83affcf6b230.1694702259.git.oleksii.kurochko@gmail.com>
	 <bffaf38c-551d-b9f4-5060-3803e73bee70@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Thu, 2023-09-14 at 17:35 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > The patch introduces stub header needed for full Xen build.
> >=20
> > Signed-off-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
>=20
> Hmm, looking here I think I need to take back what I said in reply
> to the cover letter, taking this as an example.
>=20
> > --- /dev/null
> > +++ b/xen/include/asm-generic/spinlock.h
> > @@ -0,0 +1,23 @@
> > +/* SPDX-License-Identifier: GPL-2.0-only */
> > +#ifndef __ASM_GENERIC_SPINLOCK_H__
> > +#define __ASM_GENERIC_SPINLOCK_H__
> > +
> > +#define arch_lock_acquire_barrier() smp_mb()
> > +#define arch_lock_release_barrier() smp_mb()
> > +
> > +#define arch_lock_relax() cpu_relax()
> > +#define arch_lock_signal() do { \
> > +} while(0)
>=20
> Slightly easier (and without style violation) as ((void)0)?
Thanks. It is much easier.

>=20
> > +#define arch_lock_signal_wmb() arch_lock_signal()
>=20
> How's the WMB aspect represented in here? I think you need the x86
> variant as the generic fallback.

Agree. I'll take x86 version in the next patch series.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 08:44:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 08:44:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603824.940908 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi9s1-0002hW-0e; Mon, 18 Sep 2023 08:44:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603824.940908; Mon, 18 Sep 2023 08:44:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi9s0-0002hP-UB; Mon, 18 Sep 2023 08:44:40 +0000
Received: by outflank-mailman (input) for mailman id 603824;
 Mon, 18 Sep 2023 08:44:40 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pP1k=FC=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qi9s0-0002hF-4q
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 08:44:40 +0000
Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com
 [2a00:1450:4864:20::231])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 99e90e1f-55ff-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 10:44:38 +0200 (CEST)
Received: by mail-lj1-x231.google.com with SMTP id
 38308e7fff4ca-2bfb12b24e5so66795011fa.0
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 01:44:38 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 z8-20020a2e7e08000000b002b6e77e87fcsm1924199ljc.68.2023.09.18.01.44.36
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 01:44:37 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 99e90e1f-55ff-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695026678; x=1695631478; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date
         :message-id:reply-to;
        bh=vUL5xPIuoEyo3GAuQNvA7dGIheAnKC3PCPb8S5e5C0g=;
        b=TkFTK9asR56RqqVK+IjXjG07Rjm1cKFXsbLh2YPkkTgph1N9H+iT7Vy8bE41pwxh0X
         y8I9hXya8puCjXNOaQLoxCmPLZImSaF/wDJ1CCvgg4N/RkfvsyqKKYcj0QFjg5V6/HuO
         m2XWMOeTuwMBuvdFAkJk7Ug8hdDGgT933zY1H6QkYRTKekznFpPZNVZb0/KtYEieNOB3
         /IjnHvu62J2BNpSWwxMdXqwsuO2jtRUVmF3rq9blTX4+VxeOPWn2XNhLa2J7g+/Sr6RM
         MPjawxvJ8k0jBeYArAkkYzhTaUDBFx8Rd2sjgmV5EmxjFauUAIYO73hDx+CLT/CpI8HV
         v43g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695026678; x=1695631478;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from
         :to:cc:subject:date:message-id:reply-to;
        bh=vUL5xPIuoEyo3GAuQNvA7dGIheAnKC3PCPb8S5e5C0g=;
        b=U15wKeSf9Db6PSevFpSU8NZEOhcIJeJBX0HWvrFix5LVmP67jJoz0zi8Z2TOS5mzPL
         ew3AiB2Gg9ESAinaZJZjZEFwuA7nrre1KP3SA7JE7xQQJRdTvSnnqlaNbHQIdppVMgjL
         dWBOLskrdv9EsO46H+1ciltMUwHOA1506MKSpaOMtHn9SLEI2ZMSbD6VPtfSsNqqAwmB
         I7zPDdbb9FRQj8g+e2ImcsST85/ZrNJ44tpIGhyKPocKOtgqSf8UfrpYX2NfsZDhC+aI
         tOUl56Fr+OS1ux++HcB4kWDaHYt2dll75Ptn/b14+mmDhvZmeQwBLmnEd3Ujq3+CZ9qA
         VnhA==
X-Gm-Message-State: AOJu0YzLO10xy4AONX23cWoeG2OILwimUaB6SIs9clMAIIHeaMxPESAY
	ETUbVIbzbgLzUSdMP9qaIgw=
X-Google-Smtp-Source: AGHT+IExtTMj5zbZ9xonVRjosoUZHfybVcz1dM4K5LA/YB5gQMFWIE8EXHXXA3WbMAGVRBoPO9NfLQ==
X-Received: by 2002:a2e:1f11:0:b0:2bf:f497:52d6 with SMTP id f17-20020a2e1f11000000b002bff49752d6mr4882645ljf.22.1695026677472;
        Mon, 18 Sep 2023 01:44:37 -0700 (PDT)
Message-ID: <cab26d0698d597e2273f2b0ad5ffc2c082440443.camel@gmail.com>
Subject: Re: [PATCH v1 16/29] xen/asm-generic: introduce stub header
 flushtlb.h
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jiamei Xie <jiamei.xie@arm.com>, xen-devel@lists.xenproject.org
Date: Mon, 18 Sep 2023 11:44:36 +0300
In-Reply-To: <db6ea8cc-f9d9-d8cf-39ca-89b1aa364117@arm.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <8f5e2ac850eced2153d68effcb36aca1ed065aee.1694702259.git.oleksii.kurochko@gmail.com>
	 <db6ea8cc-f9d9-d8cf-39ca-89b1aa364117@arm.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

Hello Jiamei,

On Fri, 2023-09-15 at 13:15 +0800, Jiamei Xie wrote:
> Hi Oleksii
...
>=20
> > +/*
> > + * Local variables:
> > + * mode: C
> > + * c-file-style: "BSD"
> > + * c-basic-offset: 4
> > + * indent-tabs-mode: nil
> > + * End:
> > + */
> > +
> > +
> It's duplicated.
Thanks. I'll remove duplication.
> > +/*
> > + * Local variables:
> > + * mode: C
> > + * c-file-style: BSD
> > + * c-basic-offset: 4
> > + * indent-tabs-mode: nil
> > + * End:
> > + */

~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Sep 18 08:51:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 08:51:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603830.940918 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi9yi-0004o5-Mj; Mon, 18 Sep 2023 08:51:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603830.940918; Mon, 18 Sep 2023 08:51:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qi9yi-0004ny-Jd; Mon, 18 Sep 2023 08:51:36 +0000
Received: by outflank-mailman (input) for mailman id 603830;
 Mon, 18 Sep 2023 08:51:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pP1k=FC=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qi9yh-0004ns-CT
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 08:51:35 +0000
Received: from mail-lf1-x12d.google.com (mail-lf1-x12d.google.com
 [2a00:1450:4864:20::12d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9129b0cb-5600-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 10:51:33 +0200 (CEST)
Received: by mail-lf1-x12d.google.com with SMTP id
 2adb3069b0e04-5009d4a4897so6969072e87.0
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 01:51:33 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 t5-20020ac243a5000000b004ff973cb14esm1720528lfl.108.2023.09.18.01.51.31
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 01:51:32 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9129b0cb-5600-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695027092; x=1695631892; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=JgjQrr/bDClIWEtyHtfWT7bNcXAjFtXuTQipZsq38qw=;
        b=K1UePIcB7u85sf7djHOZr1g0dHzr3ZWNP0uWEGS77g6NkKamrJgMtAXIOTITmAoF6R
         mmGFx2lQleSdBpTSBmk6TWo7ysaF9jWyLTyTRUkY3fusLWNqBoikarsbigtjywbHxXsX
         baOPkhOjc807F9GFYL4qECueY4frjN86STXthtLjXdqPKY3+uBvleGH+98Nhu1yK6xSQ
         aDbP45nMstfR+Pfe1DVeIou0OgiVKIeJjr6Ve7d7En9XZLbUCHShxViwjNd7Q6efg8Nd
         dirjiRj/COFDYjolWWR2wDaBtHJACZz0N3FZ7+3Z1lHZ183C8AgE4SGr//m9jkwSqmKs
         B4Sw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695027092; x=1695631892;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=JgjQrr/bDClIWEtyHtfWT7bNcXAjFtXuTQipZsq38qw=;
        b=naevmJJxls30YhmIG+pZ0g5otC8FasQNjiQgHWIeL323cnni//gsQmT7RzVcl+H+99
         dJxqisOQ8cdHAGyOOglhm2uFYzG3h6gbCTAKm/0fmZw5qA8ZI42ooRmR6nh9olQUMEGA
         baqwXY2JsSs4vGyKM28gdU4GXMZxxTxE3KMrm1ybunpjINUPDIwa7g64bINhBfolrF0g
         HDC51+B1qQwk3hpV8hNvFTeZlg5Q4H8fKgAun+JzmtDpHGSu3WYfZnJ3d2omSjBuLpnH
         56k33JTxJ+0wb+dRLgrpD2CUQvXtehVJatiPx46WJeIgumQmbY7yz3zYwzxQlpJVssEV
         aZZg==
X-Gm-Message-State: AOJu0YzwBCz+C64+lmGLcSdqxOFr5Lpttl3QP64IDwDtaB65NZO3mpgo
	gpAbH+Nqj37a47LEvinXjrc=
X-Google-Smtp-Source: AGHT+IHZ2DV7EOWDrqSc43I0Jzj/AsIkUeCiwkTl6LfG1/KXSb2OCJcCjLWTYx3XKAbGH7MLF1FlfA==
X-Received: by 2002:a19:6756:0:b0:502:ffdf:b098 with SMTP id e22-20020a196756000000b00502ffdfb098mr4331955lfj.6.1695027092372;
        Mon, 18 Sep 2023 01:51:32 -0700 (PDT)
Message-ID: <9036713e5a5e67199b78b25ad1607be605b4a812.camel@gmail.com>
Subject: Re: [PATCH v1 00/29] Introduce stub headers necessary for full Xen
 build
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Tamas K Lengyel
 <tamas@tklengyel.com>, Alexandru Isaila <aisaila@bitdefender.com>, Petre
 Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
Date: Mon, 18 Sep 2023 11:51:31 +0300
In-Reply-To: <da588ba7-f22f-9aa2-4346-de75783bd65e@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <da588ba7-f22f-9aa2-4346-de75783bd65e@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Thu, 2023-09-14 at 17:08 +0200, Jan Beulich wrote:
> On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > Based on two patch series [1] and [2], the idea of which is to
> > provide minimal
> > amount of things for a complete Xen build, a large amount of
> > headers are the same
> > or almost the same, so it makes sense to move them to asm-generic.
> >=20
> > Also, providing such stub headers should help future architectures
> > to add
> > a full Xen build.
> >=20
> > [1]
> > https://lore.kernel.org/xen-devel/cover.1694543103.git.sanastasio@rapto=
rengineering.com/
> > [2]
> > https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kurochko=
@gmail.com/
> >=20
> > Oleksii Kurochko (29):
> > =C2=A0 xen/asm-generic: introduce stub header spinlock.h
>=20
> At the example of this, personally I think this goes too far. Headers
> in
> asm-generic should be for the case where an arch elects to not
> implement
> certain functionality. Clearly spinlocks are required uniformly.
It makes sense. Then I will back to the option [2] where I introduced
all this headers as part of RISC-V architecture.=20

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 08:53:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 08:53:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603834.940929 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiA0D-0005OH-0z; Mon, 18 Sep 2023 08:53:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603834.940929; Mon, 18 Sep 2023 08:53:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiA0C-0005OA-Ug; Mon, 18 Sep 2023 08:53:08 +0000
Received: by outflank-mailman (input) for mailman id 603834;
 Mon, 18 Sep 2023 08:53:07 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pP1k=FC=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qiA0B-0005O2-Fm
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 08:53:07 +0000
Received: from mail-lf1-x135.google.com (mail-lf1-x135.google.com
 [2a00:1450:4864:20::135])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c8ed05f7-5600-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 10:53:06 +0200 (CEST)
Received: by mail-lf1-x135.google.com with SMTP id
 2adb3069b0e04-503012f4e71so1995343e87.0
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 01:53:06 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 br41-20020a056512402900b0050300e013f3sm989747lfb.254.2023.09.18.01.53.05
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 01:53:05 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c8ed05f7-5600-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695027186; x=1695631986; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=I6U1T/uZh7pijbrW8VCrRr4TRTvrx0CMN4VgjO/iTbQ=;
        b=bB+mDDq8Zi5eLrbmdlIxOU2uiGfd31SV3N12byaExdMZhNU6gNgv4Z7Ky7j1CLjujG
         JM3G3FXaaft/dnbaJwBjzsEfOzLYNI9N7uUJuu7dYLLqU282I0W2skf0ruVbs8P/oThB
         D1tjf2nRKpFKz5MfNrPmCxXRYbb8RYkWSm9l66X08wgamlDofCokaLOeOajv4ZW6U6Hm
         +HrcjaMgq+aMKgUPA6/bUTsnTGo1FAEulHCKMVULD9knTnnbxCPKAG/5T0Fj1+zgJmoS
         +iGWejoEEU7t+V90rgMxYNkWIIfiFDHtISC03Wngp5uK6hVzGZ9zgz+Mn/AnBnmMmTlr
         f0CQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695027186; x=1695631986;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=I6U1T/uZh7pijbrW8VCrRr4TRTvrx0CMN4VgjO/iTbQ=;
        b=U8ZgZ8hVzb1TWr5B9Dpv0xigMhpUhNW9y9+lI0YuglFzDCxrI0+PIXrV5EGJzQra9X
         tm995P7LTIVj3UXsWzn1JWuMs7l+Fy/sx6cq+swvdqC97I6B1p6VSuK/RsAS1iqNnjJD
         w7F05D24BOmpfAr3Thh+zDDKLD3jvtfE6dGjQDLjcaVyvgArIVpO4ldRR1TzA4V9rSoS
         94H/MQgm9Wwn8f8d5XKC4nUXY+tVAKWaJyJ1FFmqXUoU7+l4tOMFBQiyP1YVvQS2yIlf
         Zs+vqhAsQxSWAFLkQdNdfsbNt12/IZfualuwjgSTZObIUzlrI2uzox29CrGW5nQ/9MGh
         P9Wg==
X-Gm-Message-State: AOJu0YzdkzcxBR/OutA0j5rCUF4nIcqyDBMyxUmf4P+l3fiOyowV0Ajk
	pCi7OUbWk8kf1fkVJb/Tw9c=
X-Google-Smtp-Source: AGHT+IEDVW3adIzfE2FWiWUJkyk2WG8jaqTk6zKFNw9+iY3Z8I4bZiMz3UnDzyMrHFX1qe5ZN6t/CA==
X-Received: by 2002:a05:6512:2396:b0:500:bf44:b2b3 with SMTP id c22-20020a056512239600b00500bf44b2b3mr3857129lfv.21.1695027185881;
        Mon, 18 Sep 2023 01:53:05 -0700 (PDT)
Message-ID: <3c577bbe7cbf103092ae951ba2f1494136fbdc99.camel@gmail.com>
Subject: Re: [PATCH v1 00/29] Introduce stub headers necessary for full Xen
 build
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Tamas K Lengyel
 <tamas@tklengyel.com>, Alexandru Isaila <aisaila@bitdefender.com>, Petre
 Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
Date: Mon, 18 Sep 2023 11:53:05 +0300
In-Reply-To: <9036713e5a5e67199b78b25ad1607be605b4a812.camel@gmail.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <da588ba7-f22f-9aa2-4346-de75783bd65e@suse.com>
	 <9036713e5a5e67199b78b25ad1607be605b4a812.camel@gmail.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Mon, 2023-09-18 at 11:51 +0300, Oleksii wrote:
> On Thu, 2023-09-14 at 17:08 +0200, Jan Beulich wrote:
> > On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > > Based on two patch series [1] and [2], the idea of which is to
> > > provide minimal
> > > amount of things for a complete Xen build, a large amount of
> > > headers are the same
> > > or almost the same, so it makes sense to move them to asm-
> > > generic.
> > >=20
> > > Also, providing such stub headers should help future
> > > architectures
> > > to add
> > > a full Xen build.
> > >=20
> > > [1]
> > > https://lore.kernel.org/xen-devel/cover.1694543103.git.sanastasio@rap=
torengineering.com/
> > > [2]
> > > https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kuroch=
ko@gmail.com/
> > >=20
> > > Oleksii Kurochko (29):
> > > =C2=A0 xen/asm-generic: introduce stub header spinlock.h
> >=20
> > At the example of this, personally I think this goes too far.
> > Headers
> > in
> > asm-generic should be for the case where an arch elects to not
> > implement
> > certain functionality. Clearly spinlocks are required uniformly.
> It makes sense. Then I will back to the option [2] where I introduced
> all this headers as part of RISC-V architecture.
And I will review the current patch series probably it is still can be
something moved to asm-generic.

>=20
> ~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Sep 18 09:24:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 09:24:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603847.940939 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiAUA-0002lJ-HL; Mon, 18 Sep 2023 09:24:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603847.940939; Mon, 18 Sep 2023 09:24:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiAUA-0002l2-9N; Mon, 18 Sep 2023 09:24:06 +0000
Received: by outflank-mailman (input) for mailman id 603847;
 Mon, 18 Sep 2023 09:24:05 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ngl4=FC=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qiAU9-0002kw-3D
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 09:24:05 +0000
Received: from mail-wr1-x42d.google.com (mail-wr1-x42d.google.com
 [2a00:1450:4864:20::42d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1b46ce80-5605-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 11:24:02 +0200 (CEST)
Received: by mail-wr1-x42d.google.com with SMTP id
 ffacd0b85a97d-3214cdb4b27so800407f8f.1
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 02:24:02 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 z2-20020adfd0c2000000b0030ada01ca78sm997095wrh.10.2023.09.18.02.24.01
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 18 Sep 2023 02:24:01 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1b46ce80-5605-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695029042; x=1695633842; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=01bfqL1o9GQf5MGzBnMccgiNsQz/p9A/ecJp+iqhVA8=;
        b=QUhpzhRk4mfp+V/OcvIz3GleknEQ2dpl+FzUs2WQQ1Mgu3eK5y78kFTW+6uUMofgFP
         z3X8cLEQkwsdSA3P+aPdHxV6kY9STX3UVJrx4Wz2Iamwdb1Fwd7z5R35Hhk+tmuLdzk/
         FEMkZ1+JgzLr/aZ6rguB4gTJlreSSTQRfjGvk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695029042; x=1695633842;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=01bfqL1o9GQf5MGzBnMccgiNsQz/p9A/ecJp+iqhVA8=;
        b=KDIoThVFReH7f9y5+b+g8GlD0VcMyqn40nuTy1GjjdvNUH88I5DClQlSQoK+jYdHfK
         X8d/gUVgUcVQBzbanvSjYJ3Fj9ulLmIIjBarEweMMjBoJYs2S3iijUGZ9x+Dd/ZKnbtj
         t/C/cqqMomrL1j2WF+bEKyIQxDMtdLa5F6FeXfM7KWb892x9LMhDlF7B4btewQH1cgKA
         7Txz8gA1ygPDJiAbutZWF+MwPJEfbiCD6GugXEAlSc2zcnq5IS8TKQHNkv37fNqfLaxr
         iyByJDcl/RWGbak1CYPMPOLnGNpAwlt2rGtn89mJyPstqTMHddjmTRFkhGh/zv+l/Mwl
         i+Ew==
X-Gm-Message-State: AOJu0Ywr409zCO6iQtQPNNJuRJs8Ljj60m3YkTkr0laoQW+EbURinoAz
	J8bjTwqjXK2jjaOgbaClBct7gR34loZWbMAJzhI=
X-Google-Smtp-Source: AGHT+IFbx9bRKLwXcfGHGvQyCuydQM/JCAwsXJohhoJQpXZsQALdsC0h6opy2FcSzBzfr2mZkrca3Q==
X-Received: by 2002:adf:e54e:0:b0:317:5e91:5588 with SMTP id z14-20020adfe54e000000b003175e915588mr6685429wrm.3.1695029042177;
        Mon, 18 Sep 2023 02:24:02 -0700 (PDT)
Message-ID: <334fb537-ef7c-97e1-3274-736c4a2549b6@citrix.com>
Date: Mon, 18 Sep 2023 10:24:01 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/7] x86/emul: Fix and extend #DB trap handling
Content-Language: en-GB
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>,
 Jinoh Kang <jinoh.kang.kr@gmail.com>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-3-andrew.cooper3@citrix.com>
In-Reply-To: <20230915203628.837732-3-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 15/09/2023 9:36 pm, Andrew Cooper wrote:
> diff --git a/xen/arch/x86/x86_emulate/x86_emulate.c b/xen/arch/x86/x86_emulate/x86_emulate.c
> index 94caec1d142c..de7f99500e3f 100644
> --- a/xen/arch/x86/x86_emulate/x86_emulate.c
> +++ b/xen/arch/x86/x86_emulate/x86_emulate.c
> @@ -8379,13 +8379,6 @@ x86_emulate(
>      if ( !mode_64bit() )
>          _regs.r(ip) = (uint32_t)_regs.r(ip);
>  
> -    /* Should a singlestep #DB be raised? */
> -    if ( rc == X86EMUL_OKAY && singlestep && !ctxt->retire.mov_ss )
> -    {
> -        ctxt->retire.singlestep = true;
> -        ctxt->retire.sti = false;
> -    }
> -
>      if ( rc != X86EMUL_DONE )
>          *ctxt->regs = _regs;
>      else
> @@ -8394,6 +8387,19 @@ x86_emulate(
>          rc = X86EMUL_OKAY;
>      }
>  
> +    /* Should a singlestep #DB be raised? */
> +    if ( rc == X86EMUL_OKAY && singlestep )
> +    {
> +        ctxt->retire.pending_dbg |= X86_DR6_BS;
> +
> +        /* BROKEN - TODO, merge into pending_dbg. */
> +        if ( !ctxt->retire.mov_ss )
> +        {
> +            ctxt->retire.singlestep = true;
> +            ctxt->retire.sti = false;
> +        }

I occurs to me that setting X86_DR6_BS outside of the !mov_ss case will
break HVM (when HVM swaps from singlestep to pending_dbg) until one of
the further TODOs is addressed.

This will need bringing back within the conditional to avoid regressions
in the short term.

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 09:30:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 09:30:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603852.940949 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiAZo-00049W-6b; Mon, 18 Sep 2023 09:29:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603852.940949; Mon, 18 Sep 2023 09:29:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiAZn-00049A-U7; Mon, 18 Sep 2023 09:29:55 +0000
Received: by outflank-mailman (input) for mailman id 603852;
 Mon, 18 Sep 2023 09:29:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiAZm-000494-QP
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 09:29:54 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on2062b.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ec2d188d-5605-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 11:29:53 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8172.eurprd04.prod.outlook.com (2603:10a6:10:249::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 09:29:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 09:29:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ec2d188d-5605-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=T0AESs3sfp2Lx8vbqjGmxc6uzUQUQjvK52XeyW4iuI4ktcAfTGBA4asYxkCCkZhSvJDCloJMPYJuQmhZw9h4pdCv/6SyhJbJRzDcfoW6NZ7dJT4GHG0txYGx2cLsBpWc6eKUSGVBnX/PSu8P5ex/ZFE6pgYUFp4TkuFOSssyl2DVSoSmcqnZIqqmpNwQw0hvDuwn9XxACv8wVnjLM8TpTd0nbK8Na1BjLFhF6PMi3GDNLoCK8Zixjkx3JCAVMQIWksob6JzyiNgCAB9aGTBwI3nk++fVL0Dw9qOeAHCIAytJeTpzxQDi6BIF+qtqKUA8DHZ7I/rnT+RTAHbkiQmaxA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0BvkfHbyYBZ2ENgsnsxNoJOZF0YHMbHuBBEbvoaXwfQ=;
 b=XUshWUbEXAyrLNMWLQ6i1rGiug7XWvXMLbU7Hy8sGeSsX3DG97JIQxI2SyjWWFotXXk0IIA0qJ/G6DRVWMiFo90mjPiqVTLZlFe3CWU3zbAsjUlgO5EkEs/GnHClamp0tiYpXSVsvuOr9GOrvFYevaLAA+5/lbxInWa2TAPCjy0I0bhR49PEox3y7UkDA4rH5ZFdTK8IF8A4NiA6iRoH75NNITfTsH5wyqAOO8HJvSlTgtgRsGX1QzMINAHxP7BKFWOQhWMEFLs3e5CSJfiWxCR7uXuIPZVZqCceFy9j4d7tK/PEhTtv5af2gVa1k0mwPIWcvdxjcB3OssXZUHGpAQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0BvkfHbyYBZ2ENgsnsxNoJOZF0YHMbHuBBEbvoaXwfQ=;
 b=d3RjKJsGW86dr959urUooQebxCt2y11qVFUx9keVYc0MJ243f9mU8Hh5nSI43zCd1DwheuUqTol6VljX0JGomPnnAyOcV+yOudmFTdNrVca/dyK9mkMXVPADNTm2pcBeuYYCWw00HeE3ndv07j4V/yTT9TGDDhxHBMCY7uUvTvCv0n4X48IVAxfZUvUvfIo1qATaBIComhwgJ6J4l24fCuP7Z/vDaJkQfLUm/EGRI25tA9+ldeb9IJfbkZacdmk0b3RXbfj6vXhXMKYpK8M0oOiMzhXoV1+9ypKzLqcDSNzJJfAZoA3DzxjrOT04ibc4hV8wlJ4SvxUCBs86/V8M5A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3b7ef926-ed06-609f-d443-544bd9125bec@suse.com>
Date: Mon, 18 Sep 2023 11:29:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v1 00/29] Introduce stub headers necessary for full Xen
 build
Content-Language: en-US
To: Oleksii <oleksii.kurochko@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <da588ba7-f22f-9aa2-4346-de75783bd65e@suse.com>
 <9036713e5a5e67199b78b25ad1607be605b4a812.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <9036713e5a5e67199b78b25ad1607be605b4a812.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0059.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:93::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB8172:EE_
X-MS-Office365-Filtering-Correlation-Id: 9f726cfd-a30b-4eb6-6a6b-08dbb829cf1f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Wm01YzNSIZNSYRS4Mn4IlKaVeBrWaYtzydo8QQS7sULmf7G/+pjdXy6hW0Rtydxm7mQASthyjQmiHFT52R7p+QebsDj1J3vkOp9f0b124Um+yhyBc73jcyQlcVPcuZueQRxH3E8CdTjoP9xtfjSXRqYlxSau1fZIwp0B2PXDtiTb9L76lLWXOkdYMu/CW3pkx5dvRV151StArwAgYgLP9SugXKyPNizCUcy/OqkCcignhmpnoHw4fzU9waa74jaLx+EztJQi+Lwc8ras0riEM39TtlQTl01Y0QGLZXnYEhVfuuzmWimScfTMfcPSTohefCet8zOmC8am0gXdaX4JXUShZW1RNubBUkyQHEShFq5uM20VVmwBXEExKvvIsm4GJV+62dqEN1a8D6odX0S32P4ZjbMJA9YDwZoDWjlDe3rq1Ev1eep7sbb3k9jlDz2961ngBDUWodulOcA6+6/KuwZdS5Noo7AuF2UOT68ImgqweohGKBxeAvsTw3GYKQXi1wV4PfqXnjS3HiBZo14eG/WpD3S+/3qZ4x+FzxmRiBAkhxWlO4Fg8pu0dxh3K5zQT3+0FztttpLLXW+IdR6vVhoDjoITRnnJoCu1VGhdoB8izC7viWqYSJkK/fgNutrorLzBMz9g8gp6Xiy1qwTqDQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(136003)(346002)(396003)(39860400002)(186009)(1800799009)(451199024)(2906002)(83380400001)(7416002)(38100700002)(53546011)(478600001)(6506007)(6486002)(6512007)(966005)(5660300002)(4326008)(6916009)(316002)(8676002)(8936002)(66946007)(66556008)(54906003)(66476007)(2616005)(26005)(41300700001)(36756003)(31696002)(86362001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UjBLSU5KaU9qR1hJWHZZelVtRTFYWFVlbThKSHByMkdiWkJiYVBDSDVYcHh5?=
 =?utf-8?B?cWVOelJYY0xrdk9mamFtSyszdE9WK2I0Y3hsMUJaT2RKaS82QjZ6RDI4cFY5?=
 =?utf-8?B?YWlZVkRPQVJPdm5xaUpuN204OTA4RGtsUE41SVZMdGs0bHVROWl3c0IxNU1w?=
 =?utf-8?B?U0VnY3REaFozdUZ1KzFsSE1qYWFoYlZuaWxMbXJMN2lER2JsKzl3bC9BNTVB?=
 =?utf-8?B?dzYvbm1xQUpIQWVSbHFUaDFvYVE2aVQzQmZ3Ti9qTkVUYzVMUnFWUjVSaU9x?=
 =?utf-8?B?bjQwQU4xejZZVSs0Z1V1NlhZN0JkRUs2Q1FTckFWNXdXWjVhWXRHbzBWOU5i?=
 =?utf-8?B?MEtYdWZwbXpSVXpzWW96VVEwMGd4UUhQcXo5djNBeHlPTkdxVE0xbmJiY0ZP?=
 =?utf-8?B?NXFkdUtkbEk3SmJXWmNZZEdMOXAzMXdLSk84Mk8rMWNzRUdidGhJSGQ4NWt0?=
 =?utf-8?B?bFlQMDFwVVN1ZE05d2J6R1daTDBxUEhiWitHb0JObFhCTFRpc1c2RnZ4MEQz?=
 =?utf-8?B?SncvT2Y2VjRaYlRyemwyR3RzNTBKUVRiTlJsNUVQc2tsdXczRk1WNEc5V1gy?=
 =?utf-8?B?cU1PcGdXOG80L2NGSDlNVGV0MzdscTduaVdaR0tDRkUxODNJbkVudWF3MjBP?=
 =?utf-8?B?M2RvVCt4aHlZS1RrN0RBam16VG5zVEU1cWdwdTZzYnlsQXpJVDRWT2lNcXQy?=
 =?utf-8?B?QjBiVDZ6SFRQVnpOTHVrOGRtSlFnWk5aWHJ0cDQxcTV5cEFYTGlIc2lNNEtT?=
 =?utf-8?B?TEhjVjEyZkRFTUVmMk82NDNSeEl4aGw0cGJwNGxBWkU5ak1FWFhRTzVYUGVB?=
 =?utf-8?B?TG85TGR4dkJtVkFJYWcwZG1rZTZrNnh6T2NraUdxdWRBdTlTb1MyNWYwQkpC?=
 =?utf-8?B?QVRnMXphcWh6d2RmMm1oVVlxNnoxbTVycms2YndGQVJNLzVFdVlVQ2F5dEtG?=
 =?utf-8?B?Sm5EYVl5bHNMWCtnUE1RMGJPWC9DcVVVS1YrQWtBVFJZa0x1Y21EU2phalZF?=
 =?utf-8?B?U3ZOTDZuUE1ML1hBK2N2U01WUDVTYlJVb1RPT3VhbGVpMy81Sk9kbVptU21t?=
 =?utf-8?B?WDFDYU5zK3V4dGgyNDkxQVdlTUZGTGhubG8rNVhyUHhnY3gvUENTUmpNU0tL?=
 =?utf-8?B?aHBrTFhSZkFacVdLWkVoNC9GcE5JSkdwNVI3Z1lEZWhXd2krQ0dLMVdXTTdj?=
 =?utf-8?B?TTNIK1AwWFV3ZmFaU2RWbmhub3d5Mk5VeVNTMlhnK1ZGWFRFU1lxMk9FSUtW?=
 =?utf-8?B?UWRwWm5jWCtKUEF6NWZrSGx1ZWdnai9nVGlNRGRzbnFhaE83dmI4WWxENjN6?=
 =?utf-8?B?STUveUxnSUkzNHpXUmxkSzdxSFJmcjlNN01xOVZEY0dXNldxZlRjOGFVWnFB?=
 =?utf-8?B?YllYVFBxbUxzQWx1U1RCbEU0aDJDM1V4QlBtRGhHOVZIQW9MRXJMQW1VS2pU?=
 =?utf-8?B?VG1YSVFiOFV1WVc2RnJ6TzRJM2ZWbVdGYVdjdU1Pdkx0OVQzVXEwcGs1VFhx?=
 =?utf-8?B?OUlXdklab00xT0pKdUVzMjFXUjYvd3NLOVJ4NGhJY2pxK2pXbnJrOU9UUnJq?=
 =?utf-8?B?V3hQVVhQSkFQZ0s1bDBEeE5kRTloODhDZ3NMRFowVTlya3R5ZGxjR0pHWTJH?=
 =?utf-8?B?QjFzRlRVdVZweUd0Nm1qZVdDemcxWjZRdUNXelR2bnYxSG4vUU40SWJSN3N0?=
 =?utf-8?B?VmJxSXd3STVmSmFjWFd2TUdIcEljamFWZnQwWm5SSGpNWXR3WWE3dXhVbGcz?=
 =?utf-8?B?UFAyc2pMQWU0VFJXbE9NdWU5Y1VYWThmdXpJTllkRUxEazFkaW9KUlhlN2JI?=
 =?utf-8?B?eTBXTldUeFgvbGY5OEZMZzFoVzN1NkVLUDNqMHp4SWhIVW9zTWhHSkZpcjNY?=
 =?utf-8?B?Q1lqMHFna25pT1FVU3l2MHoyWWtmeXFVOVBIZG9adjNUWWh6SExIWFpUREUz?=
 =?utf-8?B?TDFYRU9MZEY2YmVzd3pVbi93MjZuQ3NOUGUvRVg2dkFtZDhsUjlLTE93YnBo?=
 =?utf-8?B?UHN1UE1uMEczYlcyNVpRRHZ5bnZFM1NMRzZ2RzNoNzdLRXY5MUdFWlFQQURZ?=
 =?utf-8?B?TStINnFsLzQyU3M2dUIwazZ4UXVsNTJaSmluVmlCM3MxNDlROWxrQlZRcWFQ?=
 =?utf-8?Q?96Xq/8ZZR2TTcn/5zFWCJs0Qh?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9f726cfd-a30b-4eb6-6a6b-08dbb829cf1f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 09:29:51.2598
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: iC8/uR1xhD5ZtJPwG6hzBsDePFitLbn3R3CC76qc5Nh26ix87Dabd38H6/z102XpkQQ7tJEia1KZJM0P1D3azg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8172

On 18.09.2023 10:51, Oleksii wrote:
> On Thu, 2023-09-14 at 17:08 +0200, Jan Beulich wrote:
>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>> Based on two patch series [1] and [2], the idea of which is to
>>> provide minimal
>>> amount of things for a complete Xen build, a large amount of
>>> headers are the same
>>> or almost the same, so it makes sense to move them to asm-generic.
>>>
>>> Also, providing such stub headers should help future architectures
>>> to add
>>> a full Xen build.
>>>
>>> [1]
>>> https://lore.kernel.org/xen-devel/cover.1694543103.git.sanastasio@raptorengineering.com/
>>> [2]
>>> https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kurochko@gmail.com/
>>>
>>> Oleksii Kurochko (29):
>>>   xen/asm-generic: introduce stub header spinlock.h
>>
>> At the example of this, personally I think this goes too far. Headers
>> in
>> asm-generic should be for the case where an arch elects to not
>> implement
>> certain functionality. Clearly spinlocks are required uniformly.
> It makes sense. Then I will back to the option [2] where I introduced
> all this headers as part of RISC-V architecture. 

You did see though that in a reply to my own mail I said I take back the
comment, at least as far as this header (and perhaps several others) are
concerned.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 09:32:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 09:32:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603857.940959 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiAcc-0005fI-QF; Mon, 18 Sep 2023 09:32:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603857.940959; Mon, 18 Sep 2023 09:32:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiAcc-0005ev-Ix; Mon, 18 Sep 2023 09:32:50 +0000
Received: by outflank-mailman (input) for mailman id 603857;
 Mon, 18 Sep 2023 09:32:49 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qiAcb-0005en-BI
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 09:32:49 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiAcU-0003wN-Ga; Mon, 18 Sep 2023 09:32:42 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiAcU-0000mj-8G; Mon, 18 Sep 2023 09:32:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=qmuohTcA4kaQzqVrGbwTyAY5x1G9mjRk5v29EmTQm/c=; b=PH2sfm7I9aRM0ge1eTZ1hxgCis
	GBZp68tczAzQCmVRGOJAFK9M0WUGC/3kdm2QmNkDbPZ1Lq/d39rnwcqmgmDquOxHvLjq5uI1yh//k
	Vy2GzFLCA5nZOUlF/p5ZnnEmnVUS6xQTalW0xnqAiB+4LFtjR4qS9R8udxb1KuZQI+2A=;
Message-ID: <c8e3595f-62e6-4d49-9602-577391f203e9@xen.org>
Date: Mon, 18 Sep 2023 10:32:40 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 00/29] Introduce stub headers necessary for full Xen
 build
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>, Oleksii <oleksii.kurochko@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <da588ba7-f22f-9aa2-4346-de75783bd65e@suse.com>
 <9036713e5a5e67199b78b25ad1607be605b4a812.camel@gmail.com>
 <3b7ef926-ed06-609f-d443-544bd9125bec@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <3b7ef926-ed06-609f-d443-544bd9125bec@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Jan,

On 18/09/2023 10:29, Jan Beulich wrote:
> On 18.09.2023 10:51, Oleksii wrote:
>> On Thu, 2023-09-14 at 17:08 +0200, Jan Beulich wrote:
>>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>>> Based on two patch series [1] and [2], the idea of which is to
>>>> provide minimal
>>>> amount of things for a complete Xen build, a large amount of
>>>> headers are the same
>>>> or almost the same, so it makes sense to move them to asm-generic.
>>>>
>>>> Also, providing such stub headers should help future architectures
>>>> to add
>>>> a full Xen build.
>>>>
>>>> [1]
>>>> https://lore.kernel.org/xen-devel/cover.1694543103.git.sanastasio@raptorengineering.com/
>>>> [2]
>>>> https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kurochko@gmail.com/
>>>>
>>>> Oleksii Kurochko (29):
>>>>    xen/asm-generic: introduce stub header spinlock.h
>>>
>>> At the example of this, personally I think this goes too far. Headers
>>> in
>>> asm-generic should be for the case where an arch elects to not
>>> implement
>>> certain functionality. Clearly spinlocks are required uniformly.
>> It makes sense. Then I will back to the option [2] where I introduced
>> all this headers as part of RISC-V architecture.
> 
> You did see though that in a reply to my own mail I said I take back the
> comment,

I can't find a reply to our own mail in my inbox. Do you have a message-id?

? at least as far as this header (and perhaps several others) are
> concerned.

Do you have a list where you think they should be kept? Or are you 
planning to answer to all you disagree/agree one by one?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 09:34:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 09:34:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603864.940969 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiAeV-0006Ew-5O; Mon, 18 Sep 2023 09:34:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603864.940969; Mon, 18 Sep 2023 09:34:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiAeV-0006Ep-1Q; Mon, 18 Sep 2023 09:34:47 +0000
Received: by outflank-mailman (input) for mailman id 603864;
 Mon, 18 Sep 2023 09:34:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiAeU-0006Ej-CG
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 09:34:46 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20624.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::624])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 99a561a6-5606-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 11:34:44 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB9046.eurprd04.prod.outlook.com (2603:10a6:20b:441::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 09:34:42 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 09:34:41 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 99a561a6-5606-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ahpADbaz6oKUojRZQzIBYSs/JvjwdKqJSbMplh1lxE3vMEhglf8+qRkBt7/+7kaWqnSFwqDEUkzki2uSTIoZw2QpW3ya9Q73Lp36UZcArCDdUmq8vjs0EbXkefDBwKew4NbIwlntrKYRiPqVf+qGYivdJpRpaFxpy7YsTm0BvlHrcmxZGEPtHyrK/AgsIv1f9KX9V+iSBja7HCelkysczoVqxkzVfLHyiul4CHTwKgt+n3cMTM/3XsRRXD3ORPM8n3JhXsNRzcj8DfW1uo0ndRNfxYKVqblLFpxLYI+g2aqM0190vBr15zOZzZM3AVPpSvqkKBWa6YHhwwYtmzZFsg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=opsRYtENuuHQGLovwl3XVFPPf8rBcwNpbaPNzb50/kM=;
 b=So+jafijEbHEqmyEHJ4aN5gDuJdorqrgt8kbyFNr5GxzEn5zHST8YJt177pc69j/D0h7UUP5+ofBJ08LIGmMISuhJqi9fO485s4d4LWid05m39c93cynmsLvnre/ja6FjVu/MBEZc5SmceGqWg8xiipZwAl5B4M+j3oiucirZQmsk5CPZvTLHLKUuUdoY/Kcdc2QcLMenNq/ZDa3jc3TLus6+Z+c9I77r9BkT4ijY+C8Z+L0fklfdgYa5gzSke2/MevHsw7CuPloKOie3SEn5yYvuQ+CpbwlHj0pj83mPuJbgv3b9YAhui+Y0P1EPMdx2YD9kI64vAmBCtPTl8cbng==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=opsRYtENuuHQGLovwl3XVFPPf8rBcwNpbaPNzb50/kM=;
 b=Q9oGmICpyRBY6s1K1IOncRcZSkT6sMWjYDnkiGpycXqNCq9RqzzQSzHfF+qxZfCNtOg9JBFoFcIuUVdbBns1QV/JwHsgB8c4/vJ4ucZKl72hoPf9x4nGGcI9X5xylnCRXwRGQXQ2YR4dIX8ieRyC03zzO2NMy7Jvit5P9PZq5LvoS2SHI4fQeiQhZrav/yWN3VNs+zDXYtvsrW6ItvrZ2dCi00Emn8bovcdL3TvD0pWSKZZF08u+W991cbBm1CWw99QQDwY55wl2C2IuqLmbVaM+GW3oO781w27UVqesYEZ1y02A3ancB435u4oLshQp023KanjB4k1YnJX9TG0Zcw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d290c7a4-e00f-692d-8448-f7ffdaddd595@suse.com>
Date: Mon, 18 Sep 2023 11:34:39 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v1 00/29] Introduce stub headers necessary for full Xen
 build
Content-Language: en-US
To: Julien Grall <julien@xen.org>, Oleksii <oleksii.kurochko@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <da588ba7-f22f-9aa2-4346-de75783bd65e@suse.com>
 <9036713e5a5e67199b78b25ad1607be605b4a812.camel@gmail.com>
 <3b7ef926-ed06-609f-d443-544bd9125bec@suse.com>
 <c8e3595f-62e6-4d49-9602-577391f203e9@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <c8e3595f-62e6-4d49-9602-577391f203e9@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FRYP281CA0005.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::15)
 To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB9046:EE_
X-MS-Office365-Filtering-Correlation-Id: 91b29eb1-439d-4697-9abc-08dbb82a7c64
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	M4GBBmLMkgItQiqyHVH0a0D2Wqy4foeUSFKNpKd6z2cA3ewD1l+/EVJYj1gxIefyodQTVuKGL12gW/TT59jXBQ63/NK4GjlsE9qIGkArxKcogUkE4qC2x942RuCOsNmavUKQbVUQ51VUxFSZ4BApGURNDdpelgYzn3CEvDECSoSVcX1h5QhwgbVJJ4D3sDhwxqkxLf/e6601PVqInj7ALGHaIV44VvIn6m29g7WdrR7XpPu4wD0J+n/SWilR8lBqVpVZilKG+wpCkxJTfpTdqGtRIj+0FJawuWYcHu4gDK3V7uDbQ9odgUpvXRf/sViTcx2GRFe+esRGYHZmHi393WCXBDUN7nY3rHtwt458xfyXNKbpXplFWqH4iMLD6m20fLxOmvbPDpIm09M+Lwcs2nPZENSwVsHvOGPkGkQVhC7ferPn5S52zLqYBl+c1NRhDzaHDjvpDWkJbRQVV+2flixM0jLV8sBogr/xkU1G6CYxZFuWw297bfR98nt8mdRDv4G+ZLGOD+4bZYcD0Yx5afzF/nq6Qc8W5AOzkFWz3XPyi02tbBWNOnXfRV2pPJ9wnra4RbFtR2pXQbTNPZggTfg0WojYPHnngamskYxnl2mvQ7kMBqJFMuFamzq0EG6E209g2iG4zJTdD267K+mz1g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(366004)(346002)(136003)(376002)(1800799009)(186009)(451199024)(966005)(54906003)(66476007)(478600001)(316002)(66946007)(110136005)(26005)(53546011)(6486002)(2616005)(6512007)(66556008)(6506007)(41300700001)(8936002)(8676002)(7416002)(5660300002)(4326008)(38100700002)(2906002)(86362001)(31696002)(83380400001)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WEo3QzJxWXcwVjFIWktOY2NwZTBWL0VySFpueCtyM1BwRWg0T21iVSs3L0dx?=
 =?utf-8?B?dGNBcnNDdzVVUXZJcGxPZWIySFZCRk1sMEhIWWVHUWh5MFRiUkQwNm8rOXJX?=
 =?utf-8?B?UW5MRjhNaEtsQUFHM3lybjNKK2llZHdPNkFhWHpvY1R0a1g5dkgvdGhnaWZo?=
 =?utf-8?B?SmVSWFVVVm5UcjQ2bHkrMUhsOTRXWEdsd2NjN3JkNVBid2RIVmxpZG1QK0pN?=
 =?utf-8?B?d1pzWEdCQWkvT1lucVlPRkVQRlNkVXJHYTZTeXBXRVp5MDRDck9JQlZyemFh?=
 =?utf-8?B?RG82OGRjS25zRDQrczIvNjg4YkoyaXdtQkxYUmdKSG1QcEpiZ2lvbVJScHA0?=
 =?utf-8?B?SU90Q016dngrQURmSC8zYTlpTUFHNnZES3d3YmVhK1dGbWxZb3pyYzZRQ3hq?=
 =?utf-8?B?WGF3NmY3a0RVc0srTFNvbnhBLzFuL2tVZ2YybXpaKzAwYjVERjVhaEV3U2JP?=
 =?utf-8?B?OGNiL3A3L1E5ZVRpVm5TUis2dFNVTzhCY0w3bzJNb2NmUnZCSnJMOC9DQVFO?=
 =?utf-8?B?WjRCUzBCUXFxcTVlSGpPZFpEdEtJNHdNOENXa1FKbk00NWhaSFRFUFZTNktu?=
 =?utf-8?B?U1FTRnIxRTBHQmZHSjlOYzRXaDlkZ1VzODhJb21LaThCTThXeG56U25hakt4?=
 =?utf-8?B?amNpMnRjMEIzRiswR1p2enRWR08wTGVTdExiVDVUUEFDbnlZOGU5Uzh1UFlF?=
 =?utf-8?B?bU9GaGpFVTNtZ3NBSEJCM1BmS2ZIaktuNlViN0NOR0hMVWhjNWtoeExEZFh4?=
 =?utf-8?B?Z3dybFpxclVQVEJDUzIzT01qWVVzSWNOeDZ0N0cvd1JZUWlkWVBZZ0NscG4v?=
 =?utf-8?B?NkJBR0NMMEVwVUJpOXJKTitTaFFFRlQ0dFFOdXlSNGhhc2hZU3BuaEJ3MTRN?=
 =?utf-8?B?ZXhTMmVMZk4zeFM4bTBMc0syRlBhdTExN0RhQ0kzenBOSW1zS0cwbWxIZkk5?=
 =?utf-8?B?Y0J4WTdTdk83bzFjamtXbzRkVFY5Zk1aTG9Ob2x3R3RJUFBKWTlnZkdJRlFE?=
 =?utf-8?B?ZnJjSGlKeUdHZW4xdFZjang4QVVocWFkTnlUaDBLRVI0WitVN3EreENadWVK?=
 =?utf-8?B?WStBRlJ3cExZWk94cFN4YmpqeHFEeG1oaldlM3NDdHpsbDdnVXVYVGFYWGJp?=
 =?utf-8?B?MDk3SzRVUzZwaDJnYmdTSzduaXpyUXNyaTRvbmtUOEltT0RTMDd5cEh6ZEEy?=
 =?utf-8?B?dHUrYkZMYkJUMjZOYUFXclFscXMyUEk4QjUvOVI2MVBidVRnVjZacWFtNmVX?=
 =?utf-8?B?RFh0cXk0ZGo4T0tyZndHenhRNXVWRUxkM2FjS3AycDJja2FTYjRnUjJPOE9r?=
 =?utf-8?B?KzBQQUovekZBNytTK0ozWENOeGhVc3JRbnNXd2RoZmNrMHJCNnFDY3NqaWhN?=
 =?utf-8?B?OGZ6WmV1MzJwME1nS0tLRGZmSFE3OUtvaTdWaFNqRFpSRisycEgvalAvL0dT?=
 =?utf-8?B?ZDlWa0tsYlJBc1hnazlRTlBCano5bUt1MS9QaFduZkhPcmlrK1Y1UmY1QldL?=
 =?utf-8?B?OHltVUN6TGJrUng3RFhiNXMrZytDaEZLbFFWdU8ybmtuQTBTcTlCNndVUmp3?=
 =?utf-8?B?Q0VlNWNhRkU4UDZvS3pqSG40enR5MG9VdkNXelVpdzZta0s3Ky9sVmxJcjNq?=
 =?utf-8?B?UzFzZkxZS3Q3Lzk5MnE0NnFUZTZSUllGZXFabTJhUWpKa1A3azFLUTg0MFlJ?=
 =?utf-8?B?akZad0xkT0JPc05IckUxbXJCN2VNUnd4ai9LWE5WL091SlJnS1lBWENGUkZ1?=
 =?utf-8?B?SmV2cHNtTHZFWCsvZXhxZGlYOGNpTXdKSGtRN0VEU3RycnNYenpiM1RvMW1F?=
 =?utf-8?B?YTZaYnZrcjV1c3Zuc2RIVzNWd2hWcVdMVk1NUDRKS1J4Lzd1aUM3a29MTENW?=
 =?utf-8?B?L05WZUh0Vm9ndzVNejJwNVJUNDQ3QlN6M3F1empsaWtEcnRXODVZY2NleVdE?=
 =?utf-8?B?OG5Rb0xFRjJ5MFJKZCtibU9MUy9xdjQwd0JKeUdPa2NmVCtidmdNb2Q3UWJN?=
 =?utf-8?B?cmdldnU4S0paakNQQk5GNnNZTGU0eVhrZk5ZV0haNzRCZzZxUG5YOXhWTFBx?=
 =?utf-8?B?UWE4Rm9CRFJLOVZWcFhnVmxLSmN5bG51WVJWeHRVc2lrUHNibVJCUnZKdWxy?=
 =?utf-8?Q?7ED73hQ9TbFb087EG73FGQ7gp?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 91b29eb1-439d-4697-9abc-08dbb82a7c64
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 09:34:41.9176
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tz40n+tNsTYozwOeonaeG258KeqpvmDsKGXk14K8WZbi4zaLK9/dnZLseO9XCktJY1sZooAO944A/+COpwwHwA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9046

On 18.09.2023 11:32, Julien Grall wrote:
> Hi Jan,
> 
> On 18/09/2023 10:29, Jan Beulich wrote:
>> On 18.09.2023 10:51, Oleksii wrote:
>>> On Thu, 2023-09-14 at 17:08 +0200, Jan Beulich wrote:
>>>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>>>> Based on two patch series [1] and [2], the idea of which is to
>>>>> provide minimal
>>>>> amount of things for a complete Xen build, a large amount of
>>>>> headers are the same
>>>>> or almost the same, so it makes sense to move them to asm-generic.
>>>>>
>>>>> Also, providing such stub headers should help future architectures
>>>>> to add
>>>>> a full Xen build.
>>>>>
>>>>> [1]
>>>>> https://lore.kernel.org/xen-devel/cover.1694543103.git.sanastasio@raptorengineering.com/
>>>>> [2]
>>>>> https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kurochko@gmail.com/
>>>>>
>>>>> Oleksii Kurochko (29):
>>>>>    xen/asm-generic: introduce stub header spinlock.h
>>>>
>>>> At the example of this, personally I think this goes too far. Headers
>>>> in
>>>> asm-generic should be for the case where an arch elects to not
>>>> implement
>>>> certain functionality. Clearly spinlocks are required uniformly.
>>> It makes sense. Then I will back to the option [2] where I introduced
>>> all this headers as part of RISC-V architecture.
>>
>> You did see though that in a reply to my own mail I said I take back the
>> comment,
> 
> I can't find a reply to our own mail in my inbox. Do you have a message-id?

Oh, sorry, I said so in reply to 01/29.

> ? at least as far as this header (and perhaps several others) are
>> concerned.
> 
> Do you have a list where you think they should be kept? Or are you 
> planning to answer to all you disagree/agree one by one?

I think this can only be one-by-one.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 09:45:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 09:45:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603869.940979 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiAoh-0000Mm-3r; Mon, 18 Sep 2023 09:45:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603869.940979; Mon, 18 Sep 2023 09:45:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiAoh-0000Mf-0P; Mon, 18 Sep 2023 09:45:19 +0000
Received: by outflank-mailman (input) for mailman id 603869;
 Mon, 18 Sep 2023 09:45:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiAof-0000MZ-Ny
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 09:45:17 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20618.outbound.protection.outlook.com
 [2a01:111:f400:7d00::618])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 127c5c87-5608-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 11:45:16 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB6849.eurprd04.prod.outlook.com (2603:10a6:208:181::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 09:45:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 09:45:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 127c5c87-5608-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nSMFfXw2akWEquJmt4N+obW6BUb7R/98+uWhb5IcS+NnB7EtGqUPQHf0T1YnHzzMpTbSRElZ2QVSPHcU+4yPMvG0I8aZGPIoclJOed1CtNjwQ1VMTv2LCe2Fh3KRDk1s3UBQ3nULBwVejNkGCoy1zqP9KJZLdH2oEslC6emMB9o5oZHH6q7+nVFQzHXaq40rhOxs2CM9jvBnJ195aTOwWYXQiZ6ur1xzzcNwvL79bcWqzzYSKSwYS4pG6yC47UQCFHNvYY6BrMPDKvO3x9O5HeNHng/I4n4coqRXcHs/+w9b9aEPbmIOHiZw0M/3gaTkmmQ7VX0fv8v3O9brcvvyMg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PaChuDRNB3CuTbk24ZYE2XSj6r+x++0IdJ3aj/UQips=;
 b=MeXwN0g6CMpEixi5BBdpf9ixZUvQgKre6oEY5Fa1BBlnNJf4LvrR1KdySQh50OTCslJYgCgGpfT3MFddAjBWIma6L2FY8cSYT373Xvaw5Om4jXV4f9SyuGNWas8cnL6ludeOubvOlVPQR9bm2s2IkLQznmBijofVY/NjPteIx9w4iGSAxLWD8bfVSRCgUc885A8+KMmGOXu0eAQ7PoENKTRr6rmsB0ALdusl2qZSprX1+b8G0J3xk4j6+01oNKzw83Z3B4Sw9h+ZxpvRaLxz1ui0oKCu23UytgBMGDvqgtxUlxSVYav/C/9lGHFEeKCIAzG7zgBgOL3M0vvi+2pUfA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=PaChuDRNB3CuTbk24ZYE2XSj6r+x++0IdJ3aj/UQips=;
 b=1ouk9ydKCbYpFSFvAwb1Wg/v/OGJcgCT+GGVTxys+jGUy643SNaowx3qfjcIChOB/leEHcNsi1IXocXu2VdxhCzYFTCDDTBzaipuoFHh8cQ2DAgaostYJdsIbzvtUhO4OWSVK7By68hCpeVacOMOjZRoqbvPd9TbbIzr99TWB5zmhe3ulFQZFaAdlfTYGDbV302/kmLY07tLAWTIhJoE6HhMSCybzPkS/5fNR/WhEiUU0L8QJ6ksLwWtXRMAt+BSCTmpAyfp+BV14CM00gJ6x5cR2kCn0iTX9Lwx9QVpOW2ba3p9xeM7F2HOa8dScPB0sl8yFwM0m/C2rncZLwDTlw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <79108c60-adbc-2dcb-bbc6-afac26cc10a8@suse.com>
Date: Mon, 18 Sep 2023 11:45:10 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 0/5] x86/pv: #DB vs %dr6 fixes, part 2
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230912232113.402347-1-andrew.cooper3@citrix.com>
 <7148ecb7-f1b0-754f-ba1c-f8be18cf6bd9@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7148ecb7-f1b0-754f-ba1c-f8be18cf6bd9@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0044.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4a::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM0PR04MB6849:EE_
X-MS-Office365-Filtering-Correlation-Id: 6626316a-1197-4f39-d766-08dbb82bf4ca
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pvDk1ij7zQdiVG9ELQfVbjnkMTf+V51AYl8wTCxIxkjlTaR9DbMH9sV9N1XMxb6cqNqEzObYDJvMe3aH8GdxHbLxXWpgrYxQaodRCLeipGWoBaxDWH8GXwlVbrmFFy4ENpRFgOCAcxMJQ95sV6mrIdT0OJ0crzo6b3bDV1i5i/99TIp6yqP1eqD2bafcn+/uxCo/9h53mkP/pqLUimo8c0+iOXtFGpuXv6p+NRo7YCPM7xZRqdR8qRbxP8PnWIp9BlMuqFLZDX7Xsie8oWy5gylRaY6wI9vMbTFK6Ps8VLcpjtoVJUACwxCkt9jvsJyhoLVdPWQr/f5cw3ogX9Ur0yTJyQpneof0uQl2SpkmAj6sniEB2TSgysSrrtXH+Z8zjZrDYbltEOcnyU2ttqkjogO89zKYIXx4ynz8SBic94wiHzQhnXQyAjCdM1cwRlFQ2Bd0znUYk47eCSPiy7RGse2yE8BCZH4DhsJiCk1Idk0h9W6mK26DoRkMRLK+5VrlXodWQxm+novyGdmwft6wpzhBuXU3xpxdF2/rombqZssPXIbI2qaPCMiao+ttsqnDJXfa4emPc4cAG0MthKF1F3766Tndq6frJ3lStHNaqaATx2dCAkfjKwLRB8dYZrfn2CPrT2RjIgby+ip5WwHSbg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(366004)(346002)(376002)(39860400002)(186009)(1800799009)(451199024)(53546011)(6486002)(6506007)(6512007)(83380400001)(478600001)(26005)(2616005)(4744005)(2906002)(5660300002)(66556008)(66476007)(54906003)(66946007)(6916009)(8676002)(4326008)(8936002)(316002)(41300700001)(86362001)(31696002)(36756003)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VHF6cEVEVy9wNk0ydml5TXJiTVYxUXJUQlpSRU1vYUhaMHY2VHJRTm4xUngx?=
 =?utf-8?B?eGtIUC9kN1pYTjRpL2RRY1VzcStuYW5yQ2czRlZDT0JxRHR1aCs1bnIwUXlK?=
 =?utf-8?B?VEplb1ErOGJvNmlacm9tSklMa1FocEFlNkROZmQ1OEc5U0RHYjk5UTVLcnVr?=
 =?utf-8?B?Z1R1bUdKWFhGYkhTVTk0dEJKbnNua0V3QzljbE1zdkZyYUJyV2VYZlIvT0dj?=
 =?utf-8?B?Sjg1azNzZVF2WHd1d3FnQ0MzL0xHaTBYWGF2WDlma2dEcHpzWkhXdUJkVXpP?=
 =?utf-8?B?TWM5cVE5cUp1THlzUDc4Q2xJSDR2V0VVYXFKYjlKMEtiSFoybVFUZS9PckFa?=
 =?utf-8?B?M0dBbkw5bGE3NnJjN0o2NGkyTHVCY2pnOEtSampUeTNBVlJDRWxMNmdheDMr?=
 =?utf-8?B?eWliYWV1NGkyTlVjM3JUTkZOcURsMG5EbGNrR2cwUEFYQ08ya3ZWeEhtMkVN?=
 =?utf-8?B?SWs0WUFmMU1xblVTN2JhOVdMKys5RVp5M0dwbWRrODFyVEZOVy9NbS9vMUhv?=
 =?utf-8?B?V0lMY2ZpNi9KV0U5WktQSEprSlJvSGY1ek5UMmNnR1NqY3QzaVUvS0s1Y3Zq?=
 =?utf-8?B?L0h2QUdiRDJGR04wL090QzMxVnZ4UHFMRXhZbG1QdmRqbXpVaHgvUCtncDdt?=
 =?utf-8?B?RGsyZXRxekorMUkxaFpIQlpPOEx5WEUwemhWRnAxWW5GNWoyYkNyc2ZJZkpw?=
 =?utf-8?B?aWVKNyt0bFY3TnlDa0lyWTBpaEwrZTBRTkdubmdZYTdBQm5oVmNTVDNmNzBS?=
 =?utf-8?B?VXRZN0FQYnlnN3ZYRjJoTXdFaEVGYlRJd0YwVXdKRUJ2K01IbkMxK096eUNK?=
 =?utf-8?B?TWl2eThGZnFCS2VrV05WZGpXbFBVYVlKdE5sdjRjb2pOUTNFUytOUEQwNmtw?=
 =?utf-8?B?cVU0K1JMZnYyMXVTdGlsWkxod3o5dWhIUnVnenlsdnlOS1lwNW5rK285Mnoy?=
 =?utf-8?B?eVpTOUUrd1NkZXQ5L0VDZ08wZG5HbDltK3ZLZTdURjk4WGZQU08vZGpoeENz?=
 =?utf-8?B?N1FVWFJnNjZYN0xUQytSNFJ3K1ljM1BrVzdsRkhrL2w4Q2dGbVVNS2F1OEFx?=
 =?utf-8?B?dzBmVjFLWkFFK2Fhc3JSM0NVT25TY3Rtd0dHbmFFOVNCclVreUtIVnF3UHRx?=
 =?utf-8?B?NHBuTVN2NjhtTUpOYSsxV1hQL21mSVdMRGFhQ29mRTgyWDB2dDZ0c2pKdnNz?=
 =?utf-8?B?cEEvbExOcjA0NnNVdzVGMkRaazg0bEIzY1NabHJpM0lscGJaeThHVFVyWHpU?=
 =?utf-8?B?Y21oRThKMzBJMkJDc1JFRjJFWHBGNUNHWEpqRlF1cWhMKzZJT0JoWFVkLzdB?=
 =?utf-8?B?QVhSSmtiZWd1VDBwam4vNHlZMGVYYkdpZEUvbEVaMEVVYXYwZGJyVWJ2WDQx?=
 =?utf-8?B?TXdadW5RV0t2YW9UZTQwc3RMK1FWY0RJS1R1S0RxTjZDTTBnZDdYZG5wakxr?=
 =?utf-8?B?dGJXSVZudWs2M1lSL0dqUFg1NmhMM0gzVllBeGlzV1hOWmVHNGlqM1phd2RC?=
 =?utf-8?B?Y3Nyb0hjRjE1WjV6ajF5V3lJRERLSU9RVzlQUVFSSjAzUUZMN2lwalR6U2JN?=
 =?utf-8?B?a3c2emR5d3RpSjU0UDZLUFRCTnEzT25RQU5NWnVXVjIyKzdEWDJHN1hGTU5a?=
 =?utf-8?B?QzhodEZuYXZobHpPZDFIOEMrQ2JqU2xxZUhvaE5Hb2MvV2lkYXk5L2cvK0xI?=
 =?utf-8?B?dnhjTld0Y01iWlRyd0U2YjZsWTZSSW95cnBPc1NVaVBjallVUUJQWDdlN25x?=
 =?utf-8?B?ajNDQmpGK3AzTTRVNW1ISlByN1BoZEwwNUxNSVhkbFpiSlliMCt4MTJwcXU5?=
 =?utf-8?B?Z0t6RWQyZlNyb3diTmowSnNJTmFmS1JjTjU3S3dMc0Nsek9vZUJjdFJQenRM?=
 =?utf-8?B?dDNPLzEyTmFYRnZxRmdzZHpCeEwwMEpYNTcwbHhvMG5TRjdVNnlCK0JkL2V6?=
 =?utf-8?B?YW1zUTQrN2RxbHNsL05RRFRPTWIrYmMwWmI0UExOalFEVjU1TEs4aFZtbU15?=
 =?utf-8?B?M1hMUnpUY1RxejB4ak84TWpEV2Q4WWNVbnRLRGs3N0xxVGk3WnhrU1VXTlor?=
 =?utf-8?B?ay9jMC9NcFRiTERFYnY1ZkRCK0t6eVZzY3I5Nms3d0Faa1QxejNEa2JVYlFG?=
 =?utf-8?Q?i47HZwrygnoeMVoPKnARqxiyF?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6626316a-1197-4f39-d766-08dbb82bf4ca
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 09:45:13.4823
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: sR6IFfgfz3D78J3igc+2cYxupopvF8gQcQP9Wo3FxECzmQwAakFmUpp16RHAGRi1ywDY2bKTmOiWZGoeQEP7uA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6849

On 15.09.2023 21:56, Andrew Cooper wrote:
> A third which I'm on the fence about is about PV guests and General
> Detect.  We firmly prohibit PV guests from setting DR7.GD, but we them
> play with the DR6.GD bit as if it had been asserted.
> 
> It would be easy to put GD back into the set of reserved bits for DR6,
> but it also wouldn't be hard to handle GD via dr7_emul and let the PV
> guest have a more-normal looking set of debug functionality.

Anything "more-normal looking" is to be preferred, I would say. As long
as, like you say here, it isn't overly hard.

Jan



From xen-devel-bounces@lists.xenproject.org Mon Sep 18 10:24:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 10:24:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603877.940988 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiBQg-0000Lv-0X; Mon, 18 Sep 2023 10:24:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603877.940988; Mon, 18 Sep 2023 10:24:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiBQf-0000Lo-UF; Mon, 18 Sep 2023 10:24:33 +0000
Received: by outflank-mailman (input) for mailman id 603877;
 Mon, 18 Sep 2023 10:24:32 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=3dfG=FC=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qiBQe-0000Lg-1q
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 10:24:32 +0000
Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com
 [2a00:1450:4864:20::329])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8ce99fb9-560d-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 12:24:29 +0200 (CEST)
Received: by mail-wm1-x329.google.com with SMTP id
 5b1f17b1804b1-40413ccdd4cso24905005e9.0
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 03:24:29 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 r6-20020a5d4e46000000b003198a9d758dsm12276482wrt.78.2023.09.18.03.24.28
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 03:24:28 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8ce99fb9-560d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695032669; x=1695637469; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=4csCo98SFPF/t8aNOYFxQ/Pn3qJR+7DUcS4URFBx20Q=;
        b=YhlYStCMasCPh6h0ZS0CHRYsqDDnqVH9DM4jVHXSuVbfhu5KjZOFACJJ52WLQ8uLxH
         ZSQZKCNtgmsDYD5XHUmLJz/YGW3fJDHXgTqk7mdEU3Vbxzxg0Py6WcG3vtwcE04rHIGd
         s+p1pV3CW44KoZSao9GOVTy5JgSuUjm0xYkDI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695032669; x=1695637469;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=4csCo98SFPF/t8aNOYFxQ/Pn3qJR+7DUcS4URFBx20Q=;
        b=Ab5VHvSTL7TbZ4hkNEpC3lUix3zN5uR6fjyG6pywnBzx2HH/kqeeGRoJg0BER3FKRU
         fTVqCyKMRlXr+nwJ5DUDdKjg337PbNMRRk0TfsExPpOrwpf6SIqM4dYAM3ZtG/ueil58
         Gbj2pUEV5O5tjcnESKh5JelwxhlwBKCVaMC+mPukDDSqegusynURyOpmpXuUe0XTOCO3
         O/piQ1/VjikvFW7vtJfEdzgRpARD8Hk2roRIQ/f1VjimjyaMxpFK4aCpFENGoc74UsO/
         DZ80fjnlr/RV9Dnv35mDJmEfbwiVfwXPhK+cZDDnHFbFtWGwxTLqWxwblReyXzCZ26qT
         irVg==
X-Gm-Message-State: AOJu0YySipf5jSwQ9IP1x+38ZIvtnzgCl5mYXAAUDs2p0UAk9ElA3Vrv
	pNG/wU1fxdbrVHK4Sw5U4PLm7g==
X-Google-Smtp-Source: AGHT+IFM8npHhSmftG+6Z8+bNStEJKJ4qX8ihyGhVdRes0QfmvLzU4xSlO71AjWVIxSK3GyzuZ1ARg==
X-Received: by 2002:a5d:65cc:0:b0:314:3e96:bd7e with SMTP id e12-20020a5d65cc000000b003143e96bd7emr9414109wrw.4.1695032669017;
        Mon, 18 Sep 2023 03:24:29 -0700 (PDT)
Date: Mon, 18 Sep 2023 11:24:28 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org, Henry.Wang@arm.com,
	Julien Grall <jgrall@amazon.com>, Wei Liu <wl@xen.org>,
	Juergen Gross <jgross@suse.com>
Subject: Re: [PATCH for-4.18 v2] tools/light: Revoke permissions when a PCI
 detach for HVM domain
Message-ID: <846234c5-c82a-4828-96ab-b41fcc308840@perard>
References: <20230915125204.22719-1-julien@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230915125204.22719-1-julien@xen.org>

On Fri, Sep 15, 2023 at 01:52:04PM +0100, Julien Grall wrote:
> From: Julien Grall <jgrall@amazon.com>
> 
> Currently, libxl will grant IOMEM, I/O port and IRQ permissions when
> a PCI is attached (see pci_add_dm_done()) for all domain types. However,
> the permissions are only revoked for non-HVM domain (see do_pci_remove()).
> 
> This means that HVM domains will be left with extra permissions. While
> this look bad on the paper, the IRQ permissions should be revoked
> when the Device Model call xc_physdev_unmap_pirq() and such domain
> cannot directly mapped I/O port and IOMEM regions. Instead, this has to
> be done by a Device Model.
> 
> The Device Model can only run in dom0 or PV stubdomain (upstream libxl
> doesn't have support for HVM/PVH stubdomain).
> 
> For PV/PVH stubdomain, the permission are properly revoked, so there is
> no security concern.
> 
> This leaves dom0. There are two cases:
>   1) Privileged: Anyone gaining access to the Device Model would already
>      have large control on the host.
>   2) Deprivileged: PCI passthrough require PHYSDEV operations which
>      are not accessible when the Device Model is restricted.
> 
> So overall, it is believed that the extra permissions cannot be exploited.
> 
> Rework the code so the permissions are all removed for HVM domains.
> This needs to happen after the QEMU has detached the device. So
> the revocation is now moved to pci_remove_detached().
> 
> Also add a comment on top of the error message when the PIRQ cannot
> be unbind to explain this could be a spurious error as QEMU may have
> already done it.
> 
> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> ---
> 
>     Changes since v1:
>         * Move the code to revoke in pci_remove_detached()
>         * Add a comment on top of the PIRQ unbind error path
>         * Use goto to deal with errors.

Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 10:24:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 10:24:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603878.940999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiBQm-0000cY-As; Mon, 18 Sep 2023 10:24:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603878.940999; Mon, 18 Sep 2023 10:24:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiBQm-0000cN-81; Mon, 18 Sep 2023 10:24:40 +0000
Received: by outflank-mailman (input) for mailman id 603878;
 Mon, 18 Sep 2023 10:24:38 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiBQk-0000Lg-UP
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 10:24:38 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::61b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 916a9f8e-560d-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 12:24:37 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9212.eurprd04.prod.outlook.com (2603:10a6:10:2fb::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.24; Mon, 18 Sep
 2023 10:24:34 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 10:24:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 916a9f8e-560d-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JOO9ExqXJF5OeqoIDjjykDE8N043ctLEqdwRJQ1XH8M1/ICzdRwp7NBzsyRavxIvKPYFWUNlxgCIFAqRAaW/eKrK6/23YAtdz/X3lEvX6mKTu2pXh2OBH+g46phXkohgVQs7XSVVPlSGCooOvwODSEUqwLF3KL1guOm3KL2K7YzMRXBfw/lMbkH6Vu1OcYovy/u/vD+nNwfXhA/An87p2zxUs3sJsuNebD9s4rGYQdZsCCI064aeI5eDoW0au0LShu8PKpHt6ogvT6EZTWFXUc1bFwaKzaFAB+kOqIJHzt5RBUErJfmUlhc8G8nuERq4XqQVEuMnZn7Sw1/wTlicwQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bopyGyaYwJBkoWh+NJm0lrXbfAsfTdokxew7mr1sJug=;
 b=QuCdypxo0GhBlCCiFRrhgkWeehm6//A0+n9Mmj5P7Pyv7OYCX19X+tKUhFwc06Bk5T4L5lpQ8wyQzlqRRK2bshEc9hUrLsNnId0X1N/bBhIF4D3zFn1SOZ0J0WZzuAwEqscdWN/+qpVwluDk7cQ2Rsu6GTn7Z8JvVy91aWi3sJf4PGApuUL3dDZE4T2X9039pUIqBBR16WDb82nz2F4AMeOLs3FSqCV4suydEw4Yaxpk9YNpshJ+hKFR5llR1q3Hkr42fy71Ba25IMnP7uBF4c51IgKdu0OcX0b7gOAzVJFXH3GBCrXAYlzNdqxqMgjgscwOzzkmC/9xrzcGo9oHuQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bopyGyaYwJBkoWh+NJm0lrXbfAsfTdokxew7mr1sJug=;
 b=oZqfjtYgO6fvg2D5CnCQriwZYFri2H/+uQrnZPRHzuhsWICqYC7zWI5yolRcCCtwTy9PT/jgaIqs8qiJx/BUVtaxtY+pFq0px9pCn1M5/f9cDI5v4LZOlCC3Jn5kie5LqGfzHdspvnkfaYo4her3Bnw8obRk6yDFufX5AQhCx25ZXvme4e36+/PZKVr42ZXSxBWyeJ2uHzxaVvqFjyQn6uOv45HuA0K/bokwv+zetKGpQcsxqvAvJUxYxqWJZYUE33k5p51NYV3/KMS7oy23KEAW2b6A5j0HKsMPbwAoYv1XLHA3JoRC/IT3BFOXkb6776Sjl5wm90BuWY0uXyvFlg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c49be18b-256d-76b6-7d73-800ba40c313f@suse.com>
Date: Mon, 18 Sep 2023 12:24:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v4 1/8] common: assembly entry point type/size annotations
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <e4bf47ca-2ae6-1fd4-56a6-e4e777150b64@suse.com>
 <bfc597f3-c61c-727a-159a-859f57997d02@suse.com>
 <8ed43968-311e-263b-4dd7-9f8a49a394dc@suse.com>
 <7b1582d2-8c1f-4694-995c-c92e83590b3a@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7b1582d2-8c1f-4694-995c-c92e83590b3a@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0087.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB9212:EE_
X-MS-Office365-Filtering-Correlation-Id: 5e662523-52b8-453e-686a-08dbb8317410
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	svB6wZBDfPpfodYwcL9/nW8IxO1TT5gk823+LfmKALG7C9s1GZmMiCm7C6sp3R4jNgyrd7e8n0aiPH2KrPTYxGYH9tCG83ZcSeO6LtYY6n8kKXxM9z+8BHfo38h2hNwwLscFzxT6fnzGPO9FPAsZpQo23FRyXd9qOjObSPfJQxR/g9tY+M2teqdwOkV5ROSm4swE/IzvZ42ygBWKotR0JsUUwh79zg4dqze6GHy06vuWci4h6btsits5cQ6an8MF+bftDcc7UnIAO7N59rMoJe7YoNnNDQouXBvuhXRxo1/OqwGtbwz2p8oqj4B/in5NXGxVRo6AN6XjKrBQ61sGp3agJkb4SuR/1vtrQYcxCIE2EoQch0AfA438WuICVNZQXu4YSCqu5On8QaYd/fZf6A1He1kZVU71P57e6QDyYQcvCPAr1BAYqsGAV5dWMFzjDuJWKFi6Uto7n+6m3Lk4zFOG4T1fFElAotMI4BYouR2zZKYO3ODhMtCJoGIQxb/swKzJ/tZUVs9R2gBQalQrRgcdB+BAlhvSdyRlEEhGMK+sYjF/0COQoU5M9y0T8wAS7JbFgQc80vluiic1YwZLmIjkp+kouO7NXjatEpdRhiJXerkO0k1dBr2vIXoA0GGk1PKhwI+9M5EJRSCb3AhkHA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39850400004)(136003)(376002)(396003)(346002)(1800799009)(186009)(451199024)(31686004)(36756003)(38100700002)(31696002)(86362001)(6486002)(6506007)(53546011)(478600001)(54906003)(5660300002)(66556008)(66476007)(2906002)(4326008)(8936002)(66946007)(8676002)(6512007)(83380400001)(41300700001)(6916009)(316002)(26005)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RXpjLzRhR0l1Sm5lRGdITHBicXlEekorVTFpQk9YdFFYU051UWpFUEFabWJH?=
 =?utf-8?B?SjBTeWZhNm4rSkZZNmgxaTdnSlFqRSs5VWprWWY3ZXM4Y2dOMXd3TGM2THd2?=
 =?utf-8?B?MTlSK01pSkJhRklKWnkvT2p0U2I0aE1lMG1MTkVIRCtwdHN2S2h4cUcwVmxk?=
 =?utf-8?B?eEF4VkR0aTF4SENMRWYwK25VR2lHa2lwakJCT05ITGRiSW1SVStYL0o2ZTJq?=
 =?utf-8?B?eWMzUWd0NWFOejE3TnBlV3BXSi9hc1hHQlZnYmJQWVlyVVBRd2tQYVlGanRy?=
 =?utf-8?B?M2hQTWdlN0FaTnlaVyt2UCs3RGFZMHdoK1pWZzVqaDRsS0ZxSENGVm10Zkpw?=
 =?utf-8?B?Sm43K2lGdk1YMmF5ZThKbXR0ZGsraHJrZFhlcTBEQUhiS2pyS1UrYlN1MENK?=
 =?utf-8?B?RW0vWHQ3ZFErTWNXZmdNR1llWlZQNkVmTjBSdFQrY1pzY2p4cEY5S2hsWndS?=
 =?utf-8?B?bXpEb0ZNS1FuNk1qenVPdXVjNmpHVDQ5V2F4bjFiUjZKUzVNMUdjUUxyZ3J0?=
 =?utf-8?B?cDdxVlk2OUtsY3h1bW9oT08wRGRVMS80cXhCemt5Y2NYYVArbzlCWjMxTElK?=
 =?utf-8?B?MHV2bVVTWDBhWVliRUlhdjBIK2tHS2Qwcm1nTXJLQkJwbU56YjljeVFSU1dD?=
 =?utf-8?B?VVBWVG1ubjJKY2dSL043YVhkM3FkSWY4Z0NCMVE0MEZ1OGJGWWVVVCs5R3k0?=
 =?utf-8?B?Zk5OREoxN2Nna3B2Y1k5dU4yNHNBcWVTNzBBZTNvWVU2eC9nUDlzZ0w3WGNa?=
 =?utf-8?B?YmhOVys5b0tFQVFiSjlBWXFZd0RBMDRWbUhLMlliUlRwL3dQaVJmZldTVWtk?=
 =?utf-8?B?ZVJYZEgzZTVOejhHZTNIMHY1eW9kTVRxNWIxWlV4YzhBUjlpcEloYTlRL3l4?=
 =?utf-8?B?L05wOExQRm04U0Y2NXRaS0txaEFOM2ljVmE4VFdQd3BwL0xUNjFndS9uTk0y?=
 =?utf-8?B?Sk05YWZCamo2ZkJCSUc0cDJFUDFxRzR1eldvdUkrSy93ekplOHFLODBXSEJ4?=
 =?utf-8?B?V0FXTTUxaGNtZGNGeG9pM0pESXlnUFNRYW9YWU01MEp3UUQzOXBXUnc2UjBm?=
 =?utf-8?B?RTdrVXlxTWNGcmQ5L0hLR0JKa3hJcGI1ZGoxQy92M0Y2UVFTVFhpeXovaWx5?=
 =?utf-8?B?eXU4N0prbHNLdGhNRDFVenFzTE5TYzRoSnN3MmdvakpFc3pSeEZ6bWxyMndI?=
 =?utf-8?B?R2lPM1hZVWRONW5UU3R5bDRPeEpTajdTVDVGMnRwL2piRWtzN3BpVDdISWlY?=
 =?utf-8?B?SStJbEVZVmFSMVg0eDBocUw4Y1pidEMwK3Z6YlZHSytqWjVYSEFTN0lXWnVZ?=
 =?utf-8?B?WFMxSWNWcTNQdnNaK2VocGFlaFVJYmVIR3FKdXE1TWZjT3R5d0treG5ocDZC?=
 =?utf-8?B?VlFPTjV2c3RkSzlmVXdweFkrWWs4NmphbnFIeEl6VldRMXNBZ1pmdTRLenM3?=
 =?utf-8?B?dHZpaENaUC8vVzk5ZTlWb3VKYWZTb0I4aUNzOEhISjZRdTBGdHpDdis2K2ZZ?=
 =?utf-8?B?a3lqSzRxSVNOTFFSeDZTYnlCUkVqOUpyTUtuUkVkMHhrelJqblhqOHhaOE5h?=
 =?utf-8?B?dnBKM1NWTVlGR0hBQmVla3d0YXptSzl5K1U1OWdjZUlrdm5iaTFCT2htWlZT?=
 =?utf-8?B?Tm9RUTEzWXRIZk1IajloSlF2cnhsWmdwVjV5NWxPT0xLYkRhRUJaRS8vemI4?=
 =?utf-8?B?VWVVTUJlM3RDWEJWaXE5R1kxRFlDemMxTWlpYzJRQ3dCWGtSc013cFkyV2xs?=
 =?utf-8?B?VlBPTHVmQll0L3Y2bFkrVUdScVhncU81ZERUSjdrU1lhbHEvSFVUNEhTejJv?=
 =?utf-8?B?b2ZZdWVxMjdXR2Q5c3IySXU0ODRyTWIvU1lJMEpXS2JxaFBNN0NMTnk1WCs5?=
 =?utf-8?B?R3hhNGpYbER3alhBS0lqMisxS083LzVwRXNzUDNZTjlOdlZmYTRmUUsza3Ix?=
 =?utf-8?B?R1REaW5hL251bVF2bzRkZEF5eENIT0tZZktMbUlMMnpGZnUrYTZ3WGQ2QjZx?=
 =?utf-8?B?bXluQ0toak13OHp2OWpTakNMeGVDbnQrWHNiY0k5cW9lQXVHL0IzbnRTYzNZ?=
 =?utf-8?B?RkFlUFMwanRqK0M1MFdKZ2dTSWVya0dsd0I0NjdPR0xKNXIzRmwyNUZUeERh?=
 =?utf-8?Q?Iys+vBllWyfq54sE/Yyz0U1Ys?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5e662523-52b8-453e-686a-08dbb8317410
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 10:24:34.4834
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: wpLI/BY+jHBfUN/fJr6XqpBmTEFHiq1Ev0MgnRRiG27Z3T5Pv1o9dAV/MkbOED/bXH9dHxSJhM88N/Y7Snz00Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9212

On 14.09.2023 23:06, Julien Grall wrote:
> On 04/08/2023 07:26, Jan Beulich wrote:
>> TBD: What to set CODE_ALIGN to by default? Or should we requires arch-es
>>       to define that in all cases?
> 
> The code alignment is very specific to an architecture. So I think it 
> would be better if there are no default.
> 
> Otherwise, it will be more difficult for a developper to figure out that 
> CODE_ALIGN may need an update.

Okay, I've dropped the fallback then.

>> --- /dev/null
>> +++ b/xen/include/xen/linkage.h
>> @@ -0,0 +1,56 @@
>> +#ifndef __LINKAGE_H__
>> +#define __LINKAGE_H__
>> +
>> +#ifdef __ASSEMBLY__
>> +
>> +#include <xen/macros.h>
>> +
>> +#ifndef CODE_ALIGN
>> +# define CODE_ALIGN ??
>> +#endif
>> +#ifndef CODE_FILL
>> +# define CODE_FILL ~0
>> +#endif
> 
> What's the value to allow the architecture to override CODE_FILL and ...

What is put between functions may be relevant to control. Without fall-
through to a subsequent label, I think the intention is to use "int3" (0xcc)
filler bytes, for example. (With fall-through to the subsequent label, NOPs
would need using in any event.)

>> +
>> +#ifndef DATA_ALIGN
>> +# define DATA_ALIGN 0
>> +#endif
>> +#ifndef DATA_FILL
>> +# define DATA_FILL ~0
>> +#endif
> 
> ... DATA_FILL?

For data the need is probably less strict; still I could see one arch to
prefer zero filling while another might better like all-ones-filling.

>> +
>> +#define SYM_ALIGN(algn...) .balign algn
> 
> I find the name 'algn' confusing (not even referring to the missing 
> 'i'). Why not naming it 'args'?

I can name it "args", sure. It's just that "algn" is in line with the
naming further down (where "args" isn't reasonable to use as substitution).

>> +#define SYM_L_GLOBAL(name) .globl name
>> +#define SYM_L_WEAK(name)   .weak name
>> +#define SYM_L_LOCAL(name)  /* nothing */
>> +
>> +#define SYM_T_FUNC         STT_FUNC
>> +#define SYM_T_DATA         STT_OBJECT
>> +#define SYM_T_NONE         STT_NOTYPE
> 
> SYM_* will be used only in SYM() below. So why not using STT_* directly?

For one this is how the Linux original has it. And then to me DATA and
NONE are neater to have at the use sites than the ELF-specific terms
OBJECT and NOTYPE. But I'm willing to reconsider provided arguments
towards the two given reasons not being overly relevant for us.

>> +
>> +#define SYM(name, typ, linkage, algn...)          \
>> +        .type name, SYM_T_ ## typ;                \
>> +        SYM_L_ ## linkage(name);                  \
>> +        SYM_ALIGN(algn);                          \
>> +        name:
>> +
>> +#define END(name) .size name, . - name
>> +
>> +#define FUNC(name, algn...) \
>> +        SYM(name, FUNC, GLOBAL, LASTARG(CODE_ALIGN, ## algn), CODE_FILL)
>> +#define LABEL(name, algn...) \
>> +        SYM(name, NONE, GLOBAL, LASTARG(CODE_ALIGN, ## algn), CODE_FILL)
>> +#define DATA(name, algn...) \
>> +        SYM(name, DATA, GLOBAL, LASTARG(DATA_ALIGN, ## algn), DATA_FILL)
> 
> I think the alignment should be explicit for DATA. Otherwise, at least 
> on Arm, we would default to 0 which could lead to unaligned access if 
> not careful.

I disagree. Even for byte-granular data (like strings) it may be desirable
to have some default alignment, without every use site needing to repeat
that specific value.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 10:29:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 10:29:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603888.941009 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiBVR-0002Vk-So; Mon, 18 Sep 2023 10:29:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603888.941009; Mon, 18 Sep 2023 10:29:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiBVR-0002Vd-QF; Mon, 18 Sep 2023 10:29:29 +0000
Received: by outflank-mailman (input) for mailman id 603888;
 Mon, 18 Sep 2023 10:29:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiBVP-0002VV-VK
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 10:29:27 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20615.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::615])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3d70b6aa-560e-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 12:29:25 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB9212.eurprd04.prod.outlook.com (2603:10a6:10:2fb::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.24; Mon, 18 Sep
 2023 10:29:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 10:29:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3d70b6aa-560e-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AD2CKRgP6sfvUBxkQmJ7bB+ABpH4hJrLfi7b/Ln3S0HUEgIfXxQChDdtX9wgarul6jz92aVefyVKu4ur+XcBQLN4DAVLpAWQASTiGh0OQmgfv80yc5vGz9UR6rLfoiPtEJdcCkduQte5mNzahUYXUak7wKoK2LV2X76bzS0mCBG4uXowKK4VYOM3tcYREzJoutWEJu/RRXRPctReon5GEbHOKf14XZGYcTt3xgM9LQoV8SyTpxURMXayh0a8ZDSlbnlOFBx7NkGNgASpMqPDn2aFFq1zNZgIpNP0UyR5dTX2H/dSN9DR9Bj11t79Fe3I+Bm7LVcUgctcUVf9K4sn5Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hJpM2wcyZFCkye6di8twy9KWEZsd85thUaHZaVge6mw=;
 b=nvjNyVYJhIhgRLFcfJQrD/1f1vQ7f+LBjvamAO8X03JOac3a5mIpyNaWeFm+JVW/U+0ksGPbrugvx2uki2PY4sa2WhmCvTtYVuBs8qteHVInlMyA5vzvmJVJOCHXJdYToXOjLMyHuM+PTZMfCd/CdUwKGcR5ZWm4qyLz5Lj8GskX/SsyQ9uulPO6YP2eyecfzWczAr2w7q5jkYNRkYLemuiW7J/fqsnKX6VBfeN8+vb9L7hUGWf/aQPCWEGtzbBA8JMlLXXeKjSc06A+PpwR6Fq6MObAeS0M6aacmokgFo0PukxXLLUFdJTWlFIEnZPba7FwFhkhfEHUUGOJIKYFaQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hJpM2wcyZFCkye6di8twy9KWEZsd85thUaHZaVge6mw=;
 b=jpHZTc2o9xx1pi5KvqrZRYwHIwR2pqg8FKZJg93ZOxaco5lPrtt9MFdnJPGj5W1gYrbWolVky/Qt0rMpT9XorCYy7Fn0C9aBDYWHTg6KWqR8ylFyO0TG2GZctzMXceL7XdBY3nXxfSn+oM6sZo7mgxL6flrBFT7Zw+go8qh4o7Klrkgo036QTyqELcqrr69jS3a5fYx4tcJe7Nie3ipdecxfN50S7rHFPs6SNsT7EdfIqhd+gQaylOKVrNtse1xJ15WH8vtMrW3+9tTw26L+LTf6XMbFjSLCWHL8knFYmiygRyXMObl6rKzsqKKEnfFW8WSREmosp9JtshA9axo4nw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e89b493a-4ec1-3703-f7d7-08b7a14a89b8@suse.com>
Date: Mon, 18 Sep 2023 12:29:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 1/2] xen/x86: io_apic: Introduce a command line option to
 skip timer check
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 xen-devel@lists.xenproject.org
References: <20230818134441.45586-1-julien@xen.org>
 <20230818134441.45586-2-julien@xen.org>
 <bb92bc36-db32-322b-569c-a176f08a95a0@suse.com>
 <7f896d46-e25a-40f0-bb74-9a471207aa94@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7f896d46-e25a-40f0-bb74-9a471207aa94@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0252.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:af::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB9212:EE_
X-MS-Office365-Filtering-Correlation-Id: 1b0f5b7e-76f1-4021-a7cd-08dbb83220b5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	NiQD2sbzG0XqBOCxpfPJQORjizjOubH+fkS+jLKz1cFjCUnjGWZFNySoOOkavWnpJn6kvRYPlzUzC+dZ7Ep5oT531K6xBcTEi/N36Md//6s9zsZSzD3Qo65RwzfpiBdEelb83e6B3ElmjaNP6xGPZe/dd7A3MZ0Ttv7YNIIb2cXTNVYeZ9hNJumQw2ZczujVDqH3fQ9u/lxzCSHI8gHySuC3NDrJjG1mbsiPxcPGquUCgW8jHbLGh9HD6PZN2miOwPlPIwKnTkj0JDW3qyakcqvmvcLOQVWM3mQThFqzZH5dfB4vATnwkUFN6NPtgXi7unMy58hPwMNpc8QpwB7U5eNr1Mj5x20wO5TJthAIF4kZROTt9QOmdOGka/zFyLIFiQCRuIUkQZcrS+DDIn8WvPrE+7mQ1eiRz3PVWkjGoZUz+mZtzqC5PUAOkUfi7kJ6EMrBBd1KGr6ec4CGxT/9Q6WeX6nlMVcDuCu9iaKaARxxkHLDJrWGIQdcMYlJ3fsZJU6srH2JjXhligigurWvGUA+Q/fpyKpE4DfYa0IBI/shAMbZmnW8SfYzbomYp0uKGoquyQHRRdnv+qKwrZv9JfIOphOU71nL6eRtztllC3aAG5zP8VV/a1dmESM01dTMKsIDRim4IuYCadtuAXcL/w==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39850400004)(136003)(376002)(396003)(346002)(1800799009)(186009)(451199024)(31686004)(36756003)(38100700002)(31696002)(86362001)(6486002)(6506007)(53546011)(478600001)(54906003)(5660300002)(66556008)(66476007)(6666004)(2906002)(4326008)(8936002)(66946007)(8676002)(6512007)(41300700001)(6916009)(316002)(26005)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Zk5nbXFCTWdMeWh4Rnk5M1pvbFhSV2dqRlhDd2o4YTZyMU94cTNoMFM5WFM0?=
 =?utf-8?B?ZWhXOUsvQ0lrZjVqSmh3VllTWk5KSGJ0ZmFWRXhmWXNjWHFhSE1qWitoZlZR?=
 =?utf-8?B?ZnpERERST2t0OTZwQml4RktoRG9INUtvdnlhdlppVnhtZkRESnUzS0o1M2F4?=
 =?utf-8?B?RVB2S1JNaEwvNFF4bjhpcHdKLzhRNEUybWVxbUo4c1VGd2lud3YzZ0lKM05L?=
 =?utf-8?B?NmQwT0JYVSttMnhVaWh6S3pacmRhTWhXSEsvcUtRNkRhTUs2dnZ1QWdvVUtw?=
 =?utf-8?B?TmUvb0xKRGpxc3NkbmZDSW10UU1rdGtnL3ZRMDV6WDhZOStRSjBlN2R1L2E4?=
 =?utf-8?B?dk1xZkdaOVhZcTJucDVxWVNmWGlCOEtKdDcrcVNUdStjUlErNDZoS3FSemZZ?=
 =?utf-8?B?UHI2b1B0V2JWMXVIZFhndXo2djMzYW12UjlzcDhqNU56RmJuczh4SnNpcEZp?=
 =?utf-8?B?alRMa2hOMjJlbGRHTGJHNmZzK25ScndvUkcvMWgyNmtQK1pCTysvVzNwRnNm?=
 =?utf-8?B?MEFBMkVEZ2RReXR5ZTQrcVVXdmFqZW1XY0xqbE54d2dwc3BUTWF3cFFEckZt?=
 =?utf-8?B?bUY2c214MmdTUG9oU0YvcU5tUU1VQzJtamJSNk5QOXh0eXhsN1hlbEVjVXdu?=
 =?utf-8?B?OWREdXB2amh5TXI4SlFQbEx1QWNXZ2NnWE5IYjlDR2lseVVpKzRmSUVlOXk5?=
 =?utf-8?B?UWkwcVlSQ0UybTFGQ1VaUkMralVoZ3haU0NuZUVBUHpsNHdUVzgxeEN1cy9U?=
 =?utf-8?B?YmxtUlRjOFJPSUF2Q2VYMEFFSHBnZFVCZ2s3aTUwM2dwQm01dVRiUkdjWm9U?=
 =?utf-8?B?KzB3ZUdXSVllUTRZeDlqWStEVllHbjg2VzBZbXZQdTBjc2s5L1BqZDk3V0sy?=
 =?utf-8?B?dVFrSmYvZkpUY2FRY29ORW45V2xmTXJnS3Fhd0pSb3EyNFlMTFBWR1MvZ2lm?=
 =?utf-8?B?ZUZ3N09LQWNpeW1vTGt5SWRmVkxPVHV4NkpOZGdxczZiWnZJYWRxUzl5SW5r?=
 =?utf-8?B?dnFNVXpLVDdpZ2QrL09nUFM1WmxuOHc1UWtoanlnd1hFWDNpZVBPLytuVGJy?=
 =?utf-8?B?ZHRpeC9XamFibEY0c01WYitJVmc2YUtGaG9OL1JVRmVINC9xdEQ5ZWNzaTNn?=
 =?utf-8?B?TDlQQThsY2NWTkxWVDdORU9DWXkybEt5a2dQTTFnbXJDWlpUV0xOUERPUGVU?=
 =?utf-8?B?VnNoMFh3NEtQOGUySE1ORjRaRm9ZM2s2VFh3WDYyWE9lUEhSRmxPOVh3TjhX?=
 =?utf-8?B?eExEOEFJZk40UGRET2liNzR4cmJSWnFIQWZBUnZTb0FLNHkvV1RLbElmUFNh?=
 =?utf-8?B?TGg4eTNXOHVJa1JFN1Y3MmVUTEpGQlA4UFBHa2FVSStRZU1kWTcxdmdyVGlh?=
 =?utf-8?B?d1U2QWZXNThGN3dpM3Y1MUFHcVRaMzZsWXYxS01MSkZNVHRqYUlJbHlBKzM5?=
 =?utf-8?B?VUw2UG5Gc3NCZzlqNmJ2eUliTDJoZXo2OGdOUlU3eERVTlJubjJVOUtRcmta?=
 =?utf-8?B?Sm9aSWViKzVYNXVVZWhPWTlTYnl5d0ZJQURPUEVFNmdYT0RpVWpRbGxHUHdH?=
 =?utf-8?B?ZHRMZVpncHZBMGNwN01hQUxaQVZTQ2JCT3RnYmhyTzRFb1NxR0pGWjB2UUxC?=
 =?utf-8?B?QTR3MzE0TklXM3NtK2locU11ZEVwYlYwanFGdkxCT2pxR01qZ05sRFBMckJv?=
 =?utf-8?B?UlRETC9iWjV0S0Rrbm40aDBrV2NOTlY2dnIvd24xeEcvcERpUXZCeCtDc0pZ?=
 =?utf-8?B?MmRqa0hPYUR5ZUpFNGJqUFg0S0ZwSmFFVEMzWlV5M3NVMlRxSXBkclZEazBo?=
 =?utf-8?B?T3JXWXh1VjlJTW44d2NHSFBKTXg2VzFtRUNHeFBNdzE1S1NhL1QzUktsUFJy?=
 =?utf-8?B?VFlaeDkzeEU3U2FxUk0zbjMyOUNzRjk1SUNNSEJyZEJ4akNRL1R3QTZKcTBZ?=
 =?utf-8?B?bWg4N0w1MFFKNDlqQm13K05zMW82UDJFd1NhL2daWlVVVm1LR3ZZeGkyaS85?=
 =?utf-8?B?S2xrRXV4dEFwNjRhcjBaNUJUWm5WUGs0SHNrSWR4ODU2U08rYlNCSUhMV2JU?=
 =?utf-8?B?VFpnVDdBa3B6Y1FWYTludXJITXpkbW1DMlFZYVRZa2FWWlVBSExIU1QxaHBh?=
 =?utf-8?Q?HigBXUf3KFc0WnJKtRD58G1v5?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1b0f5b7e-76f1-4021-a7cd-08dbb83220b5
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 10:29:24.1411
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0BaUkIK+TV56w/rHLMh/UO8p9fKfeOhSfxvv9UYLYSYSx0iWCyGDP0pqEH3nptTToeknWBzYQI8XiII4Y4ZBxA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB9212

On 15.09.2023 15:18, Julien Grall wrote:
> On 07/09/2023 15:09, Jan Beulich wrote:
>> On 18.08.2023 15:44, Julien Grall wrote:
>>> --- a/docs/misc/xen-command-line.pandoc
>>> +++ b/docs/misc/xen-command-line.pandoc
>>> @@ -1896,6 +1896,13 @@ This option is ignored in **pv-shim** mode.
>>>   ### nr_irqs (x86)
>>>   > `= <integer>`
>>>   
>>> +### no_timer_works (x86)
>>> +> `=<boolean>`
>>> +
>>> +> Default: `true`
>>> +
>>> +Disables the code which tests for broken timer IRQ sources.
>>
>> In description and code it's "check", but here it's "works". Likely
>> just a typo. But I'd prefer if we didn't introduce any new "no*"
>> options which then can be negated to "no-no*". Make it "timer-check"
>> (also avoiding the underscore, no matter that Linux uses it), or
>> alternatively make it a truly positive option, e.g. "timer-irq-works".
> 
> I don't mind too much about using - over _ but it is never clear why you 
> strongly push for it (and whether the others agrees).

Informal feedback suggested that various people agree and no-one strongly
disagrees to the argument of underscore really only being an auxiliary
separator character, when no better one can be used, and it also being
two keypresses to type on most keyboards, when dash is just one.

> Is this documented 
> somewhere? If not, can you do it so everyone can apply it consistently? 
> (At least I would not remember to ask for it because I am happy with the _).

As to documenting - it's not clear to me where such documentation ought
to go. In a way this is coding style, so it could be ./CODING_STYLE, but
then my experience with proposing changes there has been at best mixed.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 10:34:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 10:34:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603893.941019 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiBa7-0003yh-F0; Mon, 18 Sep 2023 10:34:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603893.941019; Mon, 18 Sep 2023 10:34:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiBa7-0003ya-BH; Mon, 18 Sep 2023 10:34:19 +0000
Received: by outflank-mailman (input) for mailman id 603893;
 Mon, 18 Sep 2023 10:34:18 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qiBa6-0003yS-Aa
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 10:34:18 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiBa3-0005aE-8T; Mon, 18 Sep 2023 10:34:15 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiBa3-0003QT-1j; Mon, 18 Sep 2023 10:34:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=gusPWsGpVLac4AT3P36gm9GD6FhIErT57NBbAKtV/CQ=; b=oH0Ar7QcAY3k+YUzLm5UsivEDu
	E9W+dlE9O4QEWofwbRMYhEz6eOKcVtb6Kit6i2Wju7gD95/kUGsu/fu7YMbEmN19VATi7y6KlfK+N
	mNKZCr/VySK9smNd2ZxGEZnb1OdAkUQX962X5y1N92YeWRQVzhlVkE/SPH+MzYV+c1UE=;
Message-ID: <6acaf6f5-7c55-4165-91f6-a912c058746e@xen.org>
Date: Mon, 18 Sep 2023 11:34:13 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 1/8] common: assembly entry point type/size annotations
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <e4bf47ca-2ae6-1fd4-56a6-e4e777150b64@suse.com>
 <bfc597f3-c61c-727a-159a-859f57997d02@suse.com>
 <8ed43968-311e-263b-4dd7-9f8a49a394dc@suse.com>
 <7b1582d2-8c1f-4694-995c-c92e83590b3a@xen.org>
 <c49be18b-256d-76b6-7d73-800ba40c313f@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <c49be18b-256d-76b6-7d73-800ba40c313f@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 18/09/2023 11:24, Jan Beulich wrote:
> On 14.09.2023 23:06, Julien Grall wrote:
>> On 04/08/2023 07:26, Jan Beulich wrote:
>>> TBD: What to set CODE_ALIGN to by default? Or should we requires arch-es
>>>        to define that in all cases?
>>
>> The code alignment is very specific to an architecture. So I think it
>> would be better if there are no default.
>>
>> Otherwise, it will be more difficult for a developper to figure out that
>> CODE_ALIGN may need an update.
> 
> Okay, I've dropped the fallback then.
> 
>>> --- /dev/null
>>> +++ b/xen/include/xen/linkage.h
>>> @@ -0,0 +1,56 @@
>>> +#ifndef __LINKAGE_H__
>>> +#define __LINKAGE_H__
>>> +
>>> +#ifdef __ASSEMBLY__
>>> +
>>> +#include <xen/macros.h>
>>> +
>>> +#ifndef CODE_ALIGN
>>> +# define CODE_ALIGN ??
>>> +#endif
>>> +#ifndef CODE_FILL
>>> +# define CODE_FILL ~0
>>> +#endif
>>
>> What's the value to allow the architecture to override CODE_FILL and ...
> 
> What is put between functions may be relevant to control. Without fall-
> through to a subsequent label, I think the intention is to use "int3" (0xcc)
> filler bytes, for example. (With fall-through to the subsequent label, NOPs
> would need using in any event.)

I guess for x86 it makes sense. For Arm, the filler is unlikely to be 
used as the instruction size is always fixed.

> 
>>> +
>>> +#ifndef DATA_ALIGN
>>> +# define DATA_ALIGN 0
>>> +#endif
>>> +#ifndef DATA_FILL
>>> +# define DATA_FILL ~0
>>> +#endif
>>
>> ... DATA_FILL?
> 
> For data the need is probably less strict; still I could see one arch to
> prefer zero filling while another might better like all-ones-filling.

It is unclear to me why an architecture would prefer one over the other. 
Can you provide a bit more details?

> 
>>> +
>>> +#define SYM_ALIGN(algn...) .balign algn
>>
>> I find the name 'algn' confusing (not even referring to the missing
>> 'i'). Why not naming it 'args'?
> 
> I can name it "args", sure. It's just that "algn" is in line with the
> naming further down (where "args" isn't reasonable to use as substitution).

If you want to be consistent then, I think it would be best to use 
'align'. I think it should be fine as we don't seem to use '.align'.

> 
>>> +#define SYM_L_GLOBAL(name) .globl name
>>> +#define SYM_L_WEAK(name)   .weak name
>>> +#define SYM_L_LOCAL(name)  /* nothing */
>>> +
>>> +#define SYM_T_FUNC         STT_FUNC
>>> +#define SYM_T_DATA         STT_OBJECT
>>> +#define SYM_T_NONE         STT_NOTYPE
>>
>> SYM_* will be used only in SYM() below. So why not using STT_* directly?
> 
> For one this is how the Linux original has it. And then to me DATA and
> NONE are neater to have at the use sites than the ELF-specific terms
> OBJECT and NOTYPE. But I'm willing to reconsider provided arguments
> towards the two given reasons not being overly relevant for us.
> 
>>> +
>>> +#define SYM(name, typ, linkage, algn...)          \
>>> +        .type name, SYM_T_ ## typ;                \
>>> +        SYM_L_ ## linkage(name);                  \
>>> +        SYM_ALIGN(algn);                          \
>>> +        name:
>>> +
>>> +#define END(name) .size name, . - name
>>> +
>>> +#define FUNC(name, algn...) \
>>> +        SYM(name, FUNC, GLOBAL, LASTARG(CODE_ALIGN, ## algn), CODE_FILL)
>>> +#define LABEL(name, algn...) \
>>> +        SYM(name, NONE, GLOBAL, LASTARG(CODE_ALIGN, ## algn), CODE_FILL)
>>> +#define DATA(name, algn...) \
>>> +        SYM(name, DATA, GLOBAL, LASTARG(DATA_ALIGN, ## algn), DATA_FILL)
>>
>> I think the alignment should be explicit for DATA. Otherwise, at least
>> on Arm, we would default to 0 which could lead to unaligned access if
>> not careful.
> 
> I disagree. Even for byte-granular data (like strings) it may be desirable
> to have some default alignment, without every use site needing to repeat
> that specific value. 

I understand that some cases may want to use a default alignment. But my 
concern is the developer may not realize that alignment is necessary. So 
by making it mandatory, it would at least prompt the developper to think 
whether this is needed.

For the string case, we could introduce a different macro.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 10:42:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 10:42:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603900.941029 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiBiI-0006bF-D1; Mon, 18 Sep 2023 10:42:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603900.941029; Mon, 18 Sep 2023 10:42:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiBiI-0006b8-AM; Mon, 18 Sep 2023 10:42:46 +0000
Received: by outflank-mailman (input) for mailman id 603900;
 Mon, 18 Sep 2023 10:42:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiBiH-0006am-0f
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 10:42:45 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0602.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 18946819-5610-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 12:42:42 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8211.eurprd04.prod.outlook.com (2603:10a6:20b:3ea::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Mon, 18 Sep
 2023 10:42:40 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 10:42:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 18946819-5610-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KiydUngQnPXVDpUaXrjPpnPQyJhfxPK8sdY9z9zp0BH3h8JikF31HDw19tKdmXHIkdDk0nJWxdmI3yqc5CIo8C4Gfkf2aUbWRV56Br5PusFQ00+OcI+c5amFYNdwVx+1+1JTFTGoCORvyFilGMsO4t5zZs5Wz6LLX/zINEtWCW+zy/cw+kdWz1T2xtWV919UjqUyjHxZfBIaKzqdYxgJYV5RKEqbS9wjCuiF9EA3uoS4GpcNDsHQgU9pp2GGtNXJfjFwEYAmgZ3c02EXivHgTNiHu5eNxhaLBcPHP7n1iGf4e+uoMugF59HT44aRVTFp1pxNSqSBpycR1JnJ1qUMwQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CrqXt87LSw4yQx5xhc+P6AgBxr9bV2vdxS+w9LMcXRU=;
 b=Cib9ece24VDH1up5GfQ6RC6kxzPWTfTdSrPvUD7pDnLDwSoAH8yLGGjoMc88FL20wn6WIN3LzzdCb8Yh9c3gG3IOaSklyoNkaY8WQp+8mLwUXCqxYZBbGOgLC0shsOzIvCSTAIDPqikAP6FVXJXq+HOnKyq8tlk8hxZ53qGcid75WwNnXmNv/ceUUiG4sv+Ng6hOU+f+BLDC2OLsih3sE4TTK1GOJIv9jfvkhr5PloFAdMbiptnN+dxXck1O5NoDKJ/KEJzB7FWTAMFOrLQ1YLmcGb+Usx1CBn2fEPEC+kI9ePx3ZWIjhB9GNi/PJwaZCX7phKOyFtuAYmA3O6pX3g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CrqXt87LSw4yQx5xhc+P6AgBxr9bV2vdxS+w9LMcXRU=;
 b=qjye8BaNcqcNgG/ud0n/jOFZ70Rg6RHZj1SiAqmn/57DvJViiq8DeKdryh9ieX86JV92h8n5JKZ4w28o1A0jh1vu/JASKSl9J36EwywLVv+5gN+oiLT8OBnyJXDcs7y/QooB3MhI61+xnSn/0OYAnSb7pDyNUBWh9CRbGqvQI2dXL1ly5rOIK3sy0FxUWRiu88Bmmln/9h4KldQZsfMzfc38cIghzLIwSeWpr61JPpiNO8Fa7hWqdlQe1GQuRwqSUVgjMAwGEmv2fqHgqiwlvDurUy4JdpJL8U9vHpve73Hz3P/7v/xd2cW1NSSbDJ6QfqYMa9eYS8LMUuSdpOlxlw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <63a472ed-8df1-1d5f-191d-b0e3ca2bfcc5@suse.com>
Date: Mon, 18 Sep 2023 12:42:38 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 2/2] xen/x86: ioapic: Bail out from timer_irq_works() as
 soon as possible
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20230818134441.45586-1-julien@xen.org>
 <20230818134441.45586-3-julien@xen.org>
 <a198d472-4b1d-1da5-e336-232af98b87aa@suse.com>
 <28ada8e1-0b24-4632-8bec-4939405f5d00@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <28ada8e1-0b24-4632-8bec-4939405f5d00@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0063.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:49::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8211:EE_
X-MS-Office365-Filtering-Correlation-Id: d3baf81f-eae8-4bfd-e742-08dbb833fb53
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	FYAc/9Wcr0wmL0Xp0uUY+ly511NRi6LVGBLH2/HT0+/aI76nLMOZ3nGEHOZNLXwC1FldNr0LzQT4brYZk7AcxO2U6nzk73HFg/rO6kV3NRt3rfBkhykrc07xkj8xt9QrM++QXNlQdpYYnSRl48vDkjV7nbqnT8ZMmGYaoNND3EkstUT/ohBflU/Zts5FHk0B7H2pbgA0puEKNY0NbK9mpSPJ5tsWYNqKYA0XNqYsAC/ovw/wk/Ql7Tdgz9FdAwsGeu6fuAhOxH0fKUFlc7EUCp/jPBuEE+NWZ7x0jwnmD3wi+w5FuApYBshNuS9KAlgYUvkyJ2gVCd/vcRDqHjXSnptVinCGAyhowfJa0LbRv5cXnf4plNwloeZQxvhnHCp84cBe0Iu3VS/Q2upXv1WDU3tT+mpqdKMBeEkYFRKkHJShorbB0n5TtTJcfwpmWy08i5xLV6kGWU9sIyff2vu14VO7kOsoBFp1nbu6KrtssYtasiQSx0JFQRd7gPCiIAP4I4OjSeYUCUGZr6JdQkwQm+UPV7l9eoICCK54R+Fcm560Vu6k7jm+47sPV3nd8H8QxG1KfiLPfMTJFA8ug8i8KrEtVtz4rKn+hX5u1vFdNd4G+tzDTGrITVY0jCPacIpuhTl223Oj95skwtQ782pzkg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(376002)(346002)(366004)(39860400002)(451199024)(1800799009)(186009)(2906002)(5660300002)(26005)(66556008)(41300700001)(316002)(6916009)(54906003)(66476007)(66946007)(478600001)(8936002)(4326008)(8676002)(31686004)(66899024)(6486002)(6506007)(53546011)(6512007)(2616005)(36756003)(38100700002)(31696002)(86362001)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dExUSGs0cU42NFcwT25OYnoyb2RkWkpXeWI5M2QrQm5xWHJCaWFVRW1Ea0pP?=
 =?utf-8?B?NmJEUTlyNGM3NzlqSGE3WFhaZGdTQzN2Zjk0SExmZmViNnRnZm9vZWVCOGhz?=
 =?utf-8?B?RjZ1S3Q5QThaVy9XQUhqSjZvWTluc3BxaHAvRVMzV2JpZEZiQlBEZTZkSm5I?=
 =?utf-8?B?UGhtbFE4ME5rbWdWWElYUDlEcVlZOHZKTnRaM1dXaGg0Y1lWNGR0dW5pbTRz?=
 =?utf-8?B?L3J1ODJXQWxMZ2RreGVOUDViR0xxK3U4azI1ME1Zc3NmL016Mko3b1hlTWpi?=
 =?utf-8?B?bTd6b0tCZ1d3OE9jZGNGWDVYYktuK2ZneWt1SE94QzgveEZaRmVKREJUdGc2?=
 =?utf-8?B?M21oWjIzRjFheGxOTFFaalpBcm5RUTVYeHlzN05vVXZHZGoveEhhcTV4aVJW?=
 =?utf-8?B?QWVNZ0hNakRJT2piOTVEK0tDMUkwRFZlRVozZS9LdDlWdWl0SFRXRkxLbGF0?=
 =?utf-8?B?ams0Y0Z3NE5menkzUGxZRGdQNFNDUzdzVFA1SU9aTnZyWHJxVmY1aUpLOEFi?=
 =?utf-8?B?a1VUNlloSzNELzVIeVMyODI5ekZwZGxrSm9yMXpJZmVLSi9Lb0ZVSFFSV2Jw?=
 =?utf-8?B?cDl2YUFTbG83cTVpcDdvQkhmRHVBV05HOElKeEE5cFpZbFl1UmZ0M2N0TEJ6?=
 =?utf-8?B?dmluenVpeHIxN01uTDhmNEdwc2w0RDhCV3dPWWIxdEcyNjNjb0I1TWtSZlNo?=
 =?utf-8?B?eTcvWnBQbUQvMTFQTEtqQkJqdWR0RVBQb20zTjBQcTBlbWllQW9RcGsxandC?=
 =?utf-8?B?a1RKQ2JWclpReXQ1dlRqZUtMbi9GYmg4bDVzUnR1R1J0RGlRdWFBVjhnNmNs?=
 =?utf-8?B?UTg2NlhiSzR3RGxYUzlQOWxobUNmOERMeU1ibGJMMTJhUlFGaDBpbjJUNmdl?=
 =?utf-8?B?UGtsMDB4eVNQSWowTlI3NWRWTzBXTVhFNk5XWjU2eFRiZVdSUGlVUmlBemdq?=
 =?utf-8?B?RDFmWnhyRlFMTXlpbnpqUVNJMVIvUjB5ajNLMkF0M1NvU09wVFhQRGdPb3Zk?=
 =?utf-8?B?dllvNERLSTBmZ0NsRDdJdzZHRng0VjZRZ2h5NGVyMzhDYTdHYzdtR1MrZFBC?=
 =?utf-8?B?eGhZdGcrMkxZbmtsUmV4TEMxb0luSVhSV3NVZlZ6OW5kVEZIbmtKMEpOTmd4?=
 =?utf-8?B?WWNQcWZVUTRnWE9XQ1lCa2tMK0thM2JROGROOEJNa3FFUHNmdmV5YjVOUHRj?=
 =?utf-8?B?b2J6WFBzY1B3L3lhNnBJYzJMQitWc2dVTFBkTnpWY2psbzE1cXc0YTdoT2Jk?=
 =?utf-8?B?VXBlTGN0eFl6U0V3TUNUOWlVUXlwbk1pT2xCUUxHeUF2OEU4djlDL0Z3QkVh?=
 =?utf-8?B?cjBBMWdMYzBoRzhaZHlJMk1Eemt2Y0VNR1A4VmRReVNVMnhWQmZxcVl0aWg4?=
 =?utf-8?B?TWhRV2xEd2pQL1BiYWZvaDZVOHNXSUJmKzRRbnRNQzI1dW4wRXBvdzRjc0xt?=
 =?utf-8?B?cEhqMXpYL05PVVllNTdxbnJnakpkUlJ2YmUvUWRTYzdTdGVEV3Z5NmJ1V1Na?=
 =?utf-8?B?NmJTeUpHMXI2RlVrTytZZzM4UWg4Yks0bkxwdEx2YUpDVFFsalpoOE9PM29y?=
 =?utf-8?B?ZUJiRlNVclNFVTdveXlEd01ndzY3alN4UUtTL0RwUTNBajVHNXFoMVU4SVRo?=
 =?utf-8?B?WmVQRVZrVXBRdHZ2N2Y0SWtJclo2dFlvOVRQSzNjNzNRRTA3Qk9JS2NaRlpK?=
 =?utf-8?B?ZVJ3QmNzU09zVWtkaGlneDIvTVJsb1loa1pvaXJCako2cXVkSlFtV1NQZ1FH?=
 =?utf-8?B?NmdYaHBDaVpOWkpHTWZvenVadU5yRkc3Vm45WjNVbW5MeGllRkxYMDVVQjN0?=
 =?utf-8?B?S2FjblRoNDZsVUo4ZXNZN0VaNmhPZm05Q1BIR0syQUNaSG1mSEtYbWtrVk83?=
 =?utf-8?B?d1pCamttK0RacjB5SlZhTytqdFk2MzZ6emZheFQrN3JGdWtSUFd4WGNwbWxt?=
 =?utf-8?B?eFRScmdiV0ZsL2djcUhZMlRDR216TkoyVkUrV3dsME1Lb0hNbTh2WDN1RkY5?=
 =?utf-8?B?NVVNN3RjSEZyTFZMd1l4WktSTG05cG5SYjgrOGprdkJDWFFHMVFDa3NCRWg0?=
 =?utf-8?B?b2JaVTkzNDlhOVl3ajZ0aitCL0l6SU5FMHd3c2V2R2dzbjZzRmRCT0FlNVhw?=
 =?utf-8?Q?Ij02878OsbDi48NSMIobDtBRz?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d3baf81f-eae8-4bfd-e742-08dbb833fb53
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 10:42:40.3687
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: YGhhPlJUzsW01IrFuuG479GcXI2tDNmohYRVqKpVRSkgvElWLE8QjVeJmuaJaIWU+03Fk8UyjLNgaf/hc/A3EQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8211

On 15.09.2023 16:00, Julien Grall wrote:
> Hi Jan,
> 
> On 07/09/2023 15:28, Jan Beulich wrote:
>> On 18.08.2023 15:44, Julien Grall wrote:
>>> From: Julien Grall <jgrall@amazon.com>
>>>
>>> Currently timer_irq_works() will wait the full 100ms before checking
>>> that pit0_ticks has been incremented at least 4 times.
>>>
>>> However, the bulk of the BIOS/platform should not have a buggy timer.
>>> So waiting for the full 100ms is a bit harsh.
>>>
>>> Rework the logic to only wait until 100ms passed or we saw more than
>>> 4 ticks. So now, in the good case, this will reduce the wait time
>>> to ~50ms.
>>>
>>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>>
>> In principle this is all fine. There's a secondary aspect though which
>> may call for a slight rework of the patch.
>>
>>> --- a/xen/arch/x86/io_apic.c
>>> +++ b/xen/arch/x86/io_apic.c
>>> @@ -1509,6 +1509,8 @@ static void __init setup_ioapic_ids_from_mpc(void)
>>>   static int __init timer_irq_works(void)
>>>   {
>>>       unsigned long t1, flags;
>>> +    /* Wait for maximum 10 ticks */
>>> +    unsigned long msec = (10 * 1000) / HZ;
>>
>> (Minor remark: I don't think this needs to be unsigned long; unsigned
>> in will suffice.)
> 
> You are right. I can switch to unsigned int.
> 
>>
>>> @@ -1517,19 +1519,25 @@ static int __init timer_irq_works(void)
>>>   
>>>       local_save_flags(flags);
>>>       local_irq_enable();
>>> -    /* Let ten ticks pass... */
>>> -    mdelay((10 * 1000) / HZ);
>>> -    local_irq_restore(flags);
>>>   
>>> -    /*
>>> -     * Expect a few ticks at least, to be sure some possible
>>> -     * glue logic does not lock up after one or two first
>>> -     * ticks in a non-ExtINT mode.  Also the local APIC
>>> -     * might have cached one ExtINT interrupt.  Finally, at
>>> -     * least one tick may be lost due to delays.
>>> -     */
>>> -    if ( (ACCESS_ONCE(pit0_ticks) - t1) > 4 )
>>> +    while ( msec-- )
>>> +    {
>>> +        mdelay(1);
>>> +        /*
>>> +         * Expect a few ticks at least, to be sure some possible
>>> +         * glue logic does not lock up after one or two first
>>> +         * ticks in a non-ExtINT mode.  Also the local APIC
>>> +         * might have cached one ExtINT interrupt.  Finally, at
>>> +         * least one tick may be lost due to delays.
>>> +         */
>>> +        if ( (ACCESS_ONCE(pit0_ticks) - t1) <= 4 )
>>> +            continue;
>>> +
>>> +        local_irq_restore(flags);
>>>           return 1;
>>> +    }
>>> +
>>> +    local_irq_restore(flags);
>>>   
>>>       return 0;
>>>   }
>>
>> While Andrew has a patch pending (not sure why it didn't go in yet)
>> to simplify local_irq_restore(), and while further it shouldn't really
>> need using here (local_irq_disable() ought to be fine)
> 
> Skimming through the code, the last call of timer_irq_works() in 
> check_timer() happens after the interrupts masking state have been restored:
> 
> local_irq_restore(flags);
> 
> if ( timer_irq_works() )
>    ...
> 
> 
> So I think timer_irq_works() can be called with interrupts enabled and 
> therefore we can't use local_irq_disable().

Hmm, yes, you're right. That's inconsistent, but dealing with that is a
separate task.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 10:52:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 10:52:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603907.941039 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiBrI-0000jW-A3; Mon, 18 Sep 2023 10:52:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603907.941039; Mon, 18 Sep 2023 10:52:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiBrI-0000jP-5v; Mon, 18 Sep 2023 10:52:04 +0000
Received: by outflank-mailman (input) for mailman id 603907;
 Mon, 18 Sep 2023 10:52:02 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiBrG-0000jJ-Ts
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 10:52:02 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2079.outbound.protection.outlook.com [40.107.7.79])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 63eb2d48-5611-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 12:51:58 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9422.eurprd04.prod.outlook.com (2603:10a6:102:2b4::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Mon, 18 Sep
 2023 10:51:29 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 10:51:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 63eb2d48-5611-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IegZBPupIogUuqonH1rOUDGB6uJJtiyaBtoqcEnoLUSiq6AJhvclgNpdgag1jg27ZIobIn+BIPocSBvJjaVICO6Sr3Ywf7gJcLBEQPsndlGkPYCmEKUk5y7l/eDWQ74w5WJywrvXvEo41Om3/WYThoEPh1lI4F8GPMVW0P0g1TtyXHDxoO2aCLG9U8tXFYHBp06USeMtIrlsXpDS7ie+AU4IRg0xSrInGBZySwvoNhSdzWML9/9WDMceBqyJzNQ5WxhVL3jHHS/+4ERkKpckEnyqL1VAukqxOuP6sJ2i11Awydw+yhZ6LfNG67m2tyX3+ibVmSVWCzMZ2ceIr/vGcg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vH0Y9SSwVu3q5r397urDHgTrlVwifdC/Yj0+Vy7Gxis=;
 b=imnUmWFKeS19LIx3nq4zi5OPLnXd5ZxIg7uBgHr0xKXICyXAOzTkvxuRNfEbZpawK0L/67NOQyJDyz7R3kEixv43AUMqlnzg4gBL8QGYvfeeF51o5MtgDQHVcgLZPstDqVBTnUdJRDZ+7V/Aw8YiDUlNeltiQUEeHgS0pyIYK7uIK7UnBsfxipJBUpJgsiZvEkvjhuagI0lPEQnKpMYjW1A1HGgnwYZ/I92GojY7dtJoogG16Elt3LczTK2HdwX8PmGLo46SZ9JJlagN6ObEr6cnVodd7JbJ9myW49/uTOXOabj5WIdTTLbprlyU+d+3aN2bbR4Q0cJF6K1nU7A8Rw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vH0Y9SSwVu3q5r397urDHgTrlVwifdC/Yj0+Vy7Gxis=;
 b=Js526OB7msGFu2YUu0qaV6Hys7U4Z3AsSX4uAFsl+YNZbyJW5x6Qz0lXtzGmXDB9GTSiC7Z6uBUcClURVX0nz52thWzgK8wM79jDl9XwmSdbILdVyt6l5mYNRITHFXP9lU29LdcRZg58B7ob/Q0l9/Fv6q/RSnNffMLMC+VGkX1QSFJrSGZeOs7M3Od3Up8tR4L4inQ05CnycVH2SIR/EJpnHm2AxKDnT4iuduUjbPqrDAWcnsaesEn1rR58ApVirHD4K/eZDxFo3HDcpLVCLnIHGMoNQTdA0gkPippcGdPCK+P88h7KZtX7FVV18dOFC6O0eAyTIDNld1XpDrLIGw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <adcffca2-e8c2-6c31-2f88-72bb2648abc5@suse.com>
Date: Mon, 18 Sep 2023 12:51:27 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v4 1/8] common: assembly entry point type/size annotations
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@citrix.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <e4bf47ca-2ae6-1fd4-56a6-e4e777150b64@suse.com>
 <bfc597f3-c61c-727a-159a-859f57997d02@suse.com>
 <8ed43968-311e-263b-4dd7-9f8a49a394dc@suse.com>
 <7b1582d2-8c1f-4694-995c-c92e83590b3a@xen.org>
 <c49be18b-256d-76b6-7d73-800ba40c313f@suse.com>
 <6acaf6f5-7c55-4165-91f6-a912c058746e@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6acaf6f5-7c55-4165-91f6-a912c058746e@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0038.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:48::21) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB9422:EE_
X-MS-Office365-Filtering-Correlation-Id: 399f8451-84c5-4a1a-3eae-08dbb8353669
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Tc+pNDLGPjkz2H2n/dBnz9J3hAMpNsxIhVpFy7/qYgYmRiReJuDr6e0++e1A7nQAAmFKdKRh1fQhJB6/f1fhU+0W/CFcERup9JSSPtBvLd5ID0DEGRZlPJujENX2yVaO+m8O+J0Vrhh2egkxOQJ6zzmizTt4A4vPruX46p0Zf4m7eSBQH/paylICEu9Lmz3FceeatDABJ4LmB2jykP5CxCspDI92uRqD/KAx3B8mOnblG/yQpB81X81cmOAO2OiUJ4pVU0Av2VHT04wXydXqAwwvnQe+C6k8fNT8WAn5TJXbt/3Ptd6kOobd15Ka1wBMqbnSriMGPPzNQ7Ap3KLYSEN64y9AOAnaqb/Se2+Gw2eR+/wlDKuhXvNoTBf68jxTFfGRC0VdmwNJ7Poil2sJozM0mC2vKeKV2YRPwPDui5eTALK4z4ZhxQMU6NJR99nh2h6XoHObBMaU5KH3vFuLKeJo+oiNV45u0Zx2XURGUQZxXZqo907Jnuq8lUoYB1o+wHcAiOt3Pf6gVIVnJm5vBbTsaKz0QwWP8uHkWnBDOS6kvd+9f5l4fK3XNFDGgrS/VTjd8PdJ6u5mo3/gpMVDTKYSogDSkUhPvYy6LRtUFKGMjqkOadlXsN/J9+f994LTgKEuZfGfAlAiqXX7rRJSGg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(366004)(136003)(396003)(346002)(39860400002)(1800799009)(186009)(451199024)(4326008)(2906002)(8676002)(8936002)(26005)(478600001)(41300700001)(31686004)(5660300002)(66946007)(66476007)(66556008)(54906003)(6506007)(6486002)(83380400001)(6916009)(316002)(38100700002)(2616005)(53546011)(86362001)(36756003)(31696002)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M0lldEpKZ3hEVFBEaGJPdGQ0MEpqQ3NESzFiMjJtZkNUN2FuSjBvMHhYY1FY?=
 =?utf-8?B?TFBGMzZReUJxMUV2N2xiU2tla1R0T3JlM2hHdHNpU0wxdlJOZWlzTXUwUnVo?=
 =?utf-8?B?SnZmODQ2bVpRUlNKRkV0TWxoNG0vNnlNT3VzUndnKytWamhncnhBQXVUYmpP?=
 =?utf-8?B?NjNsSjhrNFFtMDZzSHVPN2czU2VwUm1xdDNET2UyQ0JrQ2N2OGpVd3ZGRGFD?=
 =?utf-8?B?TUpYZGtmSlB3WGRvMWYzc1ZZaXM0S0xTckx2NzNKUXNJcWZmSVY3dmlRR0wx?=
 =?utf-8?B?SGRVajF1T3NIMFE0WWNaTzJ6cmUraEQrbHIwSVl4M3Z1ay9nN21kbkNkY2pB?=
 =?utf-8?B?TnNPTHFrSmhyVTBTTzBXanQrZ3FSRGxreHVtdks2SkZ5c2lnMVJucDhESTFy?=
 =?utf-8?B?QXk2VENpUElhOTdXd0YwSHI0ZkVRMXIzZzF0bTFrQlozanZmNDNQVmR3d3dH?=
 =?utf-8?B?OFQ0Y1lNNTJBSUwvNzNoM1FXRzNpOFpuenlqYUFER1FTbGtzeUFEcDV3N3E1?=
 =?utf-8?B?N1JiUnNhMTZ6dHFuekVCYitkSnZvaU5nbUxKZ3JNMHB3RmoxZTQrV0poRmYz?=
 =?utf-8?B?dXZ5OHlzbS9wQVUzYmNaVVRSaGFNbVpMUmdSdXBQWlU2TnFCWFllZExMOVg2?=
 =?utf-8?B?OXM5RUJtRlNKTkNvQ1E1Y0pyRkZZSFVnOFR0Q3ZKOExqeDhFcnF5REo4MWti?=
 =?utf-8?B?VEgxR0R0WHViQlhReFpXZ05acTZHcUZ5c2lzeGlJcVNqbStyUnhneFFqQXBV?=
 =?utf-8?B?a0xWVDhGS3JtMmd4MmpuNlBaaHQ3RGdKa2NISkZpcTltUVQ4UnVvL0gwVEtu?=
 =?utf-8?B?eSt5Rzd5MWs5d2dBVWQ1bnNPV0dTN1BpL3ZGWGlyVUFYWkMvU2gxUWpVdmZ2?=
 =?utf-8?B?Z0JlUHpNcktjSmJtVXVsVDZ5eGZxbm92MlhHcWxybFRnVEZwamhQMlFPcHpm?=
 =?utf-8?B?dGdZOWRMTU00RTIvbkYyRHZucmpSNmcwd2hTNGI1a2NrNU9La3ZCdTBkQ0tl?=
 =?utf-8?B?SWwyQ2Fwb1doMW44Sm83ZUN4M241bjBNV0VDZzQzcGU4anVObko4aGRtcnRJ?=
 =?utf-8?B?U0Y4emFhblB6MnRjMEc5L0ptcWxWYjExV1d0cW5nUGhnaFZtRHBTMjA0Mi9Q?=
 =?utf-8?B?a0tqcjY5UjR0ejFSejFjM21YRm5nSDZiVDdibXZSNXZHT1pJTHVzaGZXNnRV?=
 =?utf-8?B?KzRCNE8wZG1keFhXYWRaQnVqak1yV01WRWk4ZFpGU1U4ZnBDYTJObU5oNytS?=
 =?utf-8?B?aHZNZlZuMHB4RWpYTG5taEhycXF4ZmlmcmFOcmdkNU1lRTNTcTU2NG84Mk9M?=
 =?utf-8?B?c1NidFFRcTgrUjVTZmlMOFFZRW14aVAxaE85Zi9EUSsrMjluc0JIdkFHNGhZ?=
 =?utf-8?B?ZXdJVEpNbDlMc0RIM2tvSGE0VXZ5OWxBaWMxSUtaVlVhUWN6T3BHUWdhbTU5?=
 =?utf-8?B?TGl5VVVLVXFZbFpXZDdlSVhkaS9GbWxxeGExVFpMc1R3WTFoOUNiRnExbVly?=
 =?utf-8?B?di96M3hmcDJNREZyRWRyd0xFaGR6ZXBqbWlId2tZTUlsZlZuOXBZMndJVjYz?=
 =?utf-8?B?ZFVzS0psa1ZHK2IveDlkQVFsNDBidkFyVkpiQ2U2WXF1a2l1b2JQY0p3ODE3?=
 =?utf-8?B?TTA5T0NCSUN4WG5INU15NDhlSlQ2RU1aNEJrTk8rSXIzMXBTVldWbXpMS2JJ?=
 =?utf-8?B?Vm1Xa1JHc2pXY0svbGhJYlFQeE1yUXd2b3JkcU92VWlZZ0hmQ09maElVdE5N?=
 =?utf-8?B?YWtwbFRmT3VzUVo3T2N6TTZKYnpvSFo4ZWFYOWEza2F6NU9kbC9JTFZZUGdv?=
 =?utf-8?B?NnREcHY3OU0wcVowdkgxTmthREpRTTZ2Z2Fvb1VIa1lJbU15YjA2TmxSbU83?=
 =?utf-8?B?cE5RdWdxT3JwejY1UHlMdXBDaExFc1dYakpUZHFvSHpvTEZ3S21CRWFxZUhz?=
 =?utf-8?B?QVJuc295eHBESW85WFNxeElEdUJ3VHNyY1VzTDlyNEUyMm40b1VGVHZRaUtz?=
 =?utf-8?B?MHdRclBkQ05KaGZmaUxSdWRyNWZVekdRRkZmVFgvYmpuWHhYbjNyYkdqdHlz?=
 =?utf-8?B?cEZ4dUd5MW9VTHVRVTlpZmo4MEI0ZjlSYXA5Q2F5cUdGajQydkdYMWNKYytQ?=
 =?utf-8?Q?ljcCJrn72i1v8PEzZYwBPBe82?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 399f8451-84c5-4a1a-3eae-08dbb8353669
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 10:51:29.0360
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ikwor0FAZSto93ZEiMs34N3Bsk+avyYcyxdOv4nqV6lTdLoixEDlu68QnwY5R7whTkm5HD3vK5QhtxF625UDRQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9422

On 18.09.2023 12:34, Julien Grall wrote:
> Hi,
> 
> On 18/09/2023 11:24, Jan Beulich wrote:
>> On 14.09.2023 23:06, Julien Grall wrote:
>>> On 04/08/2023 07:26, Jan Beulich wrote:
>>>> TBD: What to set CODE_ALIGN to by default? Or should we requires arch-es
>>>>        to define that in all cases?
>>>
>>> The code alignment is very specific to an architecture. So I think it
>>> would be better if there are no default.
>>>
>>> Otherwise, it will be more difficult for a developper to figure out that
>>> CODE_ALIGN may need an update.
>>
>> Okay, I've dropped the fallback then.
>>
>>>> --- /dev/null
>>>> +++ b/xen/include/xen/linkage.h
>>>> @@ -0,0 +1,56 @@
>>>> +#ifndef __LINKAGE_H__
>>>> +#define __LINKAGE_H__
>>>> +
>>>> +#ifdef __ASSEMBLY__
>>>> +
>>>> +#include <xen/macros.h>
>>>> +
>>>> +#ifndef CODE_ALIGN
>>>> +# define CODE_ALIGN ??
>>>> +#endif
>>>> +#ifndef CODE_FILL
>>>> +# define CODE_FILL ~0
>>>> +#endif
>>>
>>> What's the value to allow the architecture to override CODE_FILL and ...
>>
>> What is put between functions may be relevant to control. Without fall-
>> through to a subsequent label, I think the intention is to use "int3" (0xcc)
>> filler bytes, for example. (With fall-through to the subsequent label, NOPs
>> would need using in any event.)
> 
> I guess for x86 it makes sense. For Arm, the filler is unlikely to be 
> used as the instruction size is always fixed.
> 
>>
>>>> +
>>>> +#ifndef DATA_ALIGN
>>>> +# define DATA_ALIGN 0
>>>> +#endif
>>>> +#ifndef DATA_FILL
>>>> +# define DATA_FILL ~0
>>>> +#endif
>>>
>>> ... DATA_FILL?
>>
>> For data the need is probably less strict; still I could see one arch to
>> prefer zero filling while another might better like all-ones-filling.
> 
> It is unclear to me why an architecture would prefer one over the other. 
> Can you provide a bit more details?
> 
>>
>>>> +
>>>> +#define SYM_ALIGN(algn...) .balign algn
>>>
>>> I find the name 'algn' confusing (not even referring to the missing
>>> 'i'). Why not naming it 'args'?
>>
>> I can name it "args", sure. It's just that "algn" is in line with the
>> naming further down (where "args" isn't reasonable to use as substitution).
> 
> If you want to be consistent then, I think it would be best to use 
> 'align'. I think it should be fine as we don't seem to use '.align'.

I think I had a conflict from this somewhere, but that may have been very
early when I hadn't switched to .balign yet. I'll see if renaming works
out.

>>>> +#define SYM(name, typ, linkage, algn...)          \
>>>> +        .type name, SYM_T_ ## typ;                \
>>>> +        SYM_L_ ## linkage(name);                  \
>>>> +        SYM_ALIGN(algn);                          \
>>>> +        name:
>>>> +
>>>> +#define END(name) .size name, . - name
>>>> +
>>>> +#define FUNC(name, algn...) \
>>>> +        SYM(name, FUNC, GLOBAL, LASTARG(CODE_ALIGN, ## algn), CODE_FILL)
>>>> +#define LABEL(name, algn...) \
>>>> +        SYM(name, NONE, GLOBAL, LASTARG(CODE_ALIGN, ## algn), CODE_FILL)
>>>> +#define DATA(name, algn...) \
>>>> +        SYM(name, DATA, GLOBAL, LASTARG(DATA_ALIGN, ## algn), DATA_FILL)
>>>
>>> I think the alignment should be explicit for DATA. Otherwise, at least
>>> on Arm, we would default to 0 which could lead to unaligned access if
>>> not careful.
>>
>> I disagree. Even for byte-granular data (like strings) it may be desirable
>> to have some default alignment, without every use site needing to repeat
>> that specific value. 
> 
> I understand that some cases may want to use a default alignment. But my 
> concern is the developer may not realize that alignment is necessary. So 
> by making it mandatory, it would at least prompt the developper to think 
> whether this is needed.

Forcing people to use a specific value every time, even when none would
be needed. Anyway, if others think your way, then I can certainly change.
But then I need to know whether others perhaps think alignment on functions
(and maybe even labels) should also be explicit in all cases.

> For the string case, we could introduce a different macro.

Hmm, yet one more special thing then (for people to remember to use under
certain circumstances).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 10:59:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 10:59:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603913.941049 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiByB-0002Ky-WA; Mon, 18 Sep 2023 10:59:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603913.941049; Mon, 18 Sep 2023 10:59:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiByB-0002Kr-TH; Mon, 18 Sep 2023 10:59:11 +0000
Received: by outflank-mailman (input) for mailman id 603913;
 Mon, 18 Sep 2023 10:59:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiByA-0002Kl-44
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 10:59:10 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20626.outbound.protection.outlook.com
 [2a01:111:f400:fe13::626])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 64689622-5612-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 12:59:09 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9422.eurprd04.prod.outlook.com (2603:10a6:102:2b4::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Mon, 18 Sep
 2023 10:59:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 10:59:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 64689622-5612-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VxE1gQo52HRpXSHz7xwDasPoymtN0Qsk/6YGVRTneXacFd7yZR287AK5uOcA3pJD/KVEJKhdsIQUxsUxuAMUw0TcTo4Z49AKDyi1DtsGoK0PLXOS+FkneM3SR9RWOC1t0yxwfMF2pl0L1w0bG7sHaodZhm1oiLrkBytjtkMsQG9QBOgy1DvMHuVRLXVt1esGLJqzpsv+FXx4jBdkmqcDu6I0LTssp79R7/BWGovWjYP6RSWhVUMb/E+UWTy+JdBJgss0dQotdly5YfYnW7XOBHHMAB51L00jc8DaTCE0N4KhQ8uIaGeJPNj7WTzJ6kPbXK/LGyZmKBrRfuKJRcExcA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jglYSOER0UZuJiCF0yX64wt8kemfXeBIGJxzN9uRoXc=;
 b=C0mu4WmkSoTQYGgDpSI5iUFLj7jfywFIbNTSbZt6AjMmiKem9qK3zlI3NePUqQjJMwt5y/TR5AngEEWN7AHmPsVvQHWK98F5iIXJ+UADX7GHHfWi5Ff3RkH85Cqf+1l1bhEwwrf2vU193xZ4prx0Vd6rHt0S2bM7zNxbTFYu6i4ptQWy6LH+AFWJmz3ki6sARGn+6U2SFRCVzYKyMwahT8QY3c0BixhLh8+cssBCdhBrZBDRpbyYhHuWPu8D9dEHJB3sBFf57oKtgSN7q3OdFbnJr8kf7gPHl03D13yIX1lTD3rC4WARuB8TC7kLrQ7RZJvnm4W7NjAAE1fYdHkkRA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jglYSOER0UZuJiCF0yX64wt8kemfXeBIGJxzN9uRoXc=;
 b=Bj2uxLblbTh3+2+mIC4PSij1G9iisP58nn1R8qYy4IYeMB+kTeOx4croukKpl8/5eZkY/qAGSv8QuuJpdX+m7Pywz33U7YjANog0QCRO6m/lyQif2SwulgUCS5iyenPEqABW1myuHJk242H5maTzcohCs+czCVHTEEzil5ud5zNQyC42Hthbnrzmb34mfOIoMtSb1Rs3ICiV4MZnE5ki8t3Qr5bGlcYl12X+JG6vm0Qnz4Kno8Yc/x57VE6mgcJewLcCj/ovkM/R5qNZLnskV7YWl3RXCI/y1Jk/yY70crYDamSCq62v0Qr0TOYkfcV7QEZDZSo+WXjupk0wxb+ESA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7eeaaf67-336b-e5a1-6f64-9ad5db14e330@suse.com>
Date: Mon, 18 Sep 2023 12:59:05 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 4/9] x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_*
 comments
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
 <20230915150038.602577-5-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230915150038.602577-5-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0256.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b5::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB9422:EE_
X-MS-Office365-Filtering-Correlation-Id: 3f51002d-ad1a-4576-3c1f-08dbb836475c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	VwcsfKOodmLh9FyF+vJmzfnywDfM2N45kg2zkZDfjSYF1ZBUJ6qbZxCQiLCz1MBUgJ7haVp/W2XjRkBvuRkOWNPHqUomd/rso6MTGsUNFWy7QIx3nzbjNqjOhYa9OlUkHDRxmsa0DcfeTf3WkqoiwbVQqDcEopFyz6ww4NaTjWHv4+SLlaj91e1L3aglg27dNRa6SBydQm3x4PtQwBimkOl6uZTNOWjDWrEMNkEqHGj25Q3Sdb9e7XlwenIBiFcpYHeMKupai1odnu+373Tusp1TzlZngHrW6isMMXQwbI9UhYj9pylVvmz9tSnEuOXiTW1Vzq+Pung5fH5stafJiTyp8nAP9TOdmAPXwQWRxF5uFKLZoHCewDQGDVQr76uAJ6ywkUPfAgvmjSOwROG5rKhJmR0fInfDoDN8Vud3WHWZCA5mwIjLA+ht0ZriJnXREGVZ54l5An5v6TOX11cAxe/J5gqilmbdr+GixwyX/ne6bpUXejGAnKfALbLSEe5ae80zCMotVbV8DKhxsxA4QuruH7SZCjX8E0p1CiVSJ2igHUi/4BNV5RB7cy1HttuTHQi9tdrrklYt8epkie4VwyOuOQDbOiEgZldgvBZpqhrKotS9yFB4Hzlhhp//iX24r4uWFHR/R/fvcogoWbQe3g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(366004)(136003)(396003)(346002)(39860400002)(1800799009)(186009)(451199024)(4326008)(2906002)(8676002)(8936002)(26005)(478600001)(41300700001)(31686004)(5660300002)(66946007)(66476007)(66556008)(54906003)(6506007)(6486002)(6916009)(316002)(38100700002)(2616005)(53546011)(86362001)(36756003)(31696002)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dk1UOE9NaG1kWEZsZm9rN0JjN2FzeExNQ3VTTEhPb2RaUm5lVDdubEErcDVm?=
 =?utf-8?B?QUR0ZnB3Y2grZUlPU0M0U0haOTMxN2pYMk1Nb0trbFRSS3U5UHk2elAvTXRG?=
 =?utf-8?B?TGZ4eWQvd1duT2pOY0lPNjlFYmtqaHVUaktwRHpzYjN2NlM0aCs5V3BlRTVB?=
 =?utf-8?B?RUNCWWNKSnlvUE9MOHo5aWJua1pCSmhFZ1JDaHpLeE5rWU81Nk15bDNMTkh2?=
 =?utf-8?B?bm4rYVcwM0Z5cm00QVVxNEYwV0NtSVc1cGNaVWsyT0QzaDNiOEwvYlFTY0ZL?=
 =?utf-8?B?WmxNellnTHVMTVhpYlJJTW53ajJzaldnZnU2K0d6Y1hmQ2FBMUwrYlBHWGtB?=
 =?utf-8?B?Wm5ITkZUMG4reVRUWVZZTVZBQjJTQmdIa0FzR0tHTUJRaTFkUCs5WWJuRWNL?=
 =?utf-8?B?UHViUlhlbWtRdFFnSU9VUkp1d3lHODdqWUYwcDFqMm9pOS8wK1BwWDJTRXFZ?=
 =?utf-8?B?ZENGNExyZ1ZVdW9HOFFtRVBGNFR6V3loTmlra1FrME9tSEtsbkJLN0dIaXNm?=
 =?utf-8?B?OWd1QWJkamNIZ01kdnVsazFFMlowRWFmWU01TnpDSWZmOWJaTEROb0JOd1c4?=
 =?utf-8?B?TEN1YUJzQWRXMnhTSzNKY0p6eDhUSkExMXNkQ1BuMWtkSG1QQ1ZaUHJiVktF?=
 =?utf-8?B?KzZjeDQyUk5aNVZlNnRYZFk2dXdZS1g0QlNQQVlWMm1mSVczcGVJMEZ3RFc1?=
 =?utf-8?B?OThJRWI0OGFCa28zSy9EZUMyYUhJRllXeGNvUTZRY2VET2UvUHpMbmJzNXI0?=
 =?utf-8?B?UTEzbFBBYjFqTzRxcDBMOVFxaXZCQUxOZTRJUEN2UjNxNXJWd09mcUxad0dM?=
 =?utf-8?B?UVRTRzFwcGVwQ1RzMm5oUE83M0xHU3JuSGhBUXpBYWJJUmFlWVRCT1lULzgw?=
 =?utf-8?B?MmJlM2FqL0JYNHVPU21uWTl3Y3BQcE1oSndHZVFuYmRudDNKTUs1b2VqUmxw?=
 =?utf-8?B?U3p3RFRUY3RrRk9lTUxIUUhHNUlUVjRKRVRDVWsySVNuUXJyeWE2NVpicEtt?=
 =?utf-8?B?eENiWFo1RFp2eHg1M0QwWlE5cENHTmR0dnVqcHNmU1FUcWJIZWloSWlMZmlI?=
 =?utf-8?B?TllHby9XZHJGTWhtbkJNL0F0b3k3N1FQcThTTDVoUUlpQzdwMlVYSWxUVjFH?=
 =?utf-8?B?bzhQMWZTU0pSVEZROUdJSGhHL215aXJWWXlsU1VBUTVqZldIQy8vVDk5YzFm?=
 =?utf-8?B?UGhNU2RPbXRsenpxcDg0cVg4QkxQNm1kRHkyWWFqWkZmYUVORkk0a2cyWFph?=
 =?utf-8?B?Q2N0MXpjZEs3SHpMZU9qeDUxRHFwVWFuMmVlZjBkYU4rSm10R1RRM2VtU3ZE?=
 =?utf-8?B?aCtsR0xaUmU0dEROOWFtK2U5dDU2ZW8xRmpEWFR4OThGejdLV1Nxc0dpL0du?=
 =?utf-8?B?WWtvcjRuZldjYzFWUjVLdTMycFU2T1Y0RmszR05BSFJYcGQ2YkN2cFRsTlFK?=
 =?utf-8?B?YnFXc3dLdHNicFMvR2dFcUh1dURXTDNYZkR1QU5LSm0wUDU3UEdoU2N1NEkw?=
 =?utf-8?B?a3RxNm9BZ3B1RS9tVGN1K1g1UTY5RHNwSk5BZHV4TTY4TTRjRTk2TFlubjRi?=
 =?utf-8?B?WjZxRVZ6RlJ3U0FqbjRwdnE0UVE4S000WTBPV3lXdGMxSVZXUXIrNDEwSnMz?=
 =?utf-8?B?REJMY0tyTE1wRlJEVHFnbk5MU2VYR1REV0dreDUweURXdnQ2ZU16RXdRSWJt?=
 =?utf-8?B?cUZTZDdmdmVQNHcweGtSaEdPRE5UU1p5Q0lWY3dNQ1luK1JGYUxVV0NoczRD?=
 =?utf-8?B?SVhyZXlCeHdvbzVuMXVtSWpsMms1eXdHYzVkYjFnakUxWm1jWVVrR0tJNnlC?=
 =?utf-8?B?Ni9WY2w3TzZLZGFiZ0h5K3pvc0JsNVBzUkFxdkZjWjVtU0wvTFJqdXNJWEpt?=
 =?utf-8?B?enVodUFNTmNQNGRWL0FTWkI3bWcya2FNWW8rdUVDOVJTcGhwUTU4NjJMTkU1?=
 =?utf-8?B?TE5KN3p5RU0vSDJXbWx6azlvam9KV1Y3TFRiamtUUWxGK1ROUXg3cE9DWkUr?=
 =?utf-8?B?UG1IVFpURS95QnpueXdua084UkRvY250MHl6QTZIMlRCaEQ5cVArRTJsVFJt?=
 =?utf-8?B?eWFhcHhTN3dDRnhXbUt4blNJd3VRL0dRWGlFOGR1NkJlUkdSTGswaW1yNzJL?=
 =?utf-8?Q?hM85Ly6g0uNiefXHcwUG9sp/T?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3f51002d-ad1a-4576-3c1f-08dbb836475c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 10:59:07.0437
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ajyB0YioXjEbGXMw2jpJWlplS+KWQ8SlciLB5jRZM/9Rgkeyibv0qfQZRpdr7KMunaYHOZcyW8Wa9oh3TzVCXw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9422

On 15.09.2023 17:00, Andrew Cooper wrote:
> ... to better explain how they're used.
> 
> Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
> corner case when e.g. an NMI hits late in an exit-to-guest path.
> 
> Leave a TODO, which will be addressed in subsequent patches which arrange for
> DO_COND_VERW to be safe within SPEC_CTRL_EXIT_TO_XEN.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>

Two nits though:

> @@ -233,7 +236,11 @@
>          X86_FEATURE_SC_MSR_PV
>  .endm
>  
> -/* Use in interrupt/exception context.  May interrupt Xen or PV context. */
> +/*
> + * Used after an exception or maskable interrupt, hitting Xen or PV context.
> + * There will either be a guest speculation context, or (baring fatal

Isn't this "barring"?

> @@ -260,7 +270,13 @@
>  .endm
>  
>  /*
> - * Use in IST interrupt/exception context.  May interrupt Xen or PV context.
> + * Used after an IST entry hitting Xen or PV context.  Special care is needed,
> + * because when hitting Xen context, there may not a well-formed speculation

Missing "be"?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 11:01:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 11:01:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603919.941059 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiC09-0003pM-F3; Mon, 18 Sep 2023 11:01:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603919.941059; Mon, 18 Sep 2023 11:01:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiC09-0003pF-Bb; Mon, 18 Sep 2023 11:01:13 +0000
Received: by outflank-mailman (input) for mailman id 603919;
 Mon, 18 Sep 2023 11:01:12 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiC08-0003p5-5o; Mon, 18 Sep 2023 11:01:12 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiC07-0006Rd-Vs; Mon, 18 Sep 2023 11:01:12 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiC07-0003Sr-Dj; Mon, 18 Sep 2023 11:01:11 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiC07-0007Bw-DN; Mon, 18 Sep 2023 11:01:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=59gyxc4iQOMqJ/SRnztP07lPZ6koDUw+ia5PnITyIN0=; b=IB6ydUNnT+Ouf+gqqB4jVQHc25
	mYd0UkKO3stkfgKRnQMkLhOPNJO/l9IkKIouMiGa9D8HVgwPOL1TU9IY2WftcbtlCD5rdc/6N2ecz
	Eh47vORTkLOH6CDawwEMVOEGf/SSPQ7md3QCIPn2E1Xf93FTTR6yWKxDn3gQKPWvkdW4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183026-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183026: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=290f82375d828ef93f831a5ef028f1283aa1ea47
X-Osstest-Versions-That:
    xen=290f82375d828ef93f831a5ef028f1283aa1ea47
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 18 Sep 2023 11:01:11 +0000

flight 183026 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183026/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183023
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183023
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183023
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183023
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183023
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183023
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183023
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183023
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183023
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183023
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183023
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183023
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  290f82375d828ef93f831a5ef028f1283aa1ea47
baseline version:
 xen                  290f82375d828ef93f831a5ef028f1283aa1ea47

Last test of basis   183026  2023-09-18 01:52:02 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Mon Sep 18 11:02:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 11:02:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603926.941069 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiC1I-0004Pe-QZ; Mon, 18 Sep 2023 11:02:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603926.941069; Mon, 18 Sep 2023 11:02:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiC1I-0004PX-MG; Mon, 18 Sep 2023 11:02:24 +0000
Received: by outflank-mailman (input) for mailman id 603926;
 Mon, 18 Sep 2023 11:02:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiC1G-0004PQ-LX
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 11:02:22 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20626.outbound.protection.outlook.com
 [2a01:111:f400:7d00::626])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d724596c-5612-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 13:02:21 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8608.eurprd04.prod.outlook.com (2603:10a6:102:21b::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 11:02:19 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 11:02:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d724596c-5612-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LFUmNUhpYzlnll11My8tKcYx8enlgr8gwozaE3fwsviyS8vKiEy3QYCxU1BZXkJHVgfmqs8Mz9lkBraHR+WMrv+f2l8wnMsREjbmOk67h+bOswZ2TugCfvHFGQlEAtfam29mRp9emkm/0p3hL97vopCtou2RoiBkVWuyf3WBLvdzjw8MroWrTtFXPrXtJWTVd4XVHPRAaRfsl05WqSRIZm0EhImkCuKjwrUcNg7sYn+O7/9WzmtZG80eUu0iIxqN8AZgYjsEAn6o2x8s5t2yR6vgTh1sP+co7Ntgk0Kii4Z53PhJGLd00a9MfXqFtlq7FDjdGt37NRhajTi2CQHyLA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FPXTXWpor4RLB+jbE741HdQw0jz98GiGYchyZTXNKO0=;
 b=gJzh/IFmYtQs5O0A3FTZ+flaYdo6NBjXZg/cggP+emu7w2JYo9IVCIqiHGRDGprQnh7c12bc5NR7TMvH/FdKjTpceRl+uRONY72b9tvmbiliYKDXzFsUBKmYMwtW66Yz9Tv2BkE+9S6NMU55HHCMPQUVi7+QMtxuJhHOFoAsLdoYaU9KHCbTchadS/ANBNCC5kF2dfCsIodhxDlSmmruoUIwMPBAKm3bxhtSUn6QKY4tyCYYBeJu8XyLE6I2P1/TJODRDsKCVeBx25MdKDkaj/8fjrFOfje+TEa2plzqlonu4mk5ILZSP77bfqosyTgAb9tqzyl0Mv7OKnJaJtKFuA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FPXTXWpor4RLB+jbE741HdQw0jz98GiGYchyZTXNKO0=;
 b=COoI8LiJCyybsILsVwcAD7KG4lYCBFd9/n1nlsXBLtChVTO6sYNTGDwUcPpwNmsGtaihjBwB5n3QqNgbwJyWzW1NkC/7k/qpFi/04640Mf41A8s2FQXYeDLxXHJ6j93CXWwhJEDLZGqpYnvr2Bb5g7GbM+gkSdVPfTt3mzawhCQjXpC5QmuAOAVBgX8aLoAXtyOKGnIKc+aWBZWF4C3jqRi6mwxXLYOTRpL4dCYCKzGTOKClxPn8JiT05RFDJxXUflW3O3fPq5rDbFq7Tp+qweFdk1Nd7iazPy9mr8T8KksPSgXQeDilX6lZREFczC+U0A3TAJHNHgzw0kYRvVOM1A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d089bc84-40aa-6a71-341c-df934910c2b2@suse.com>
Date: Mon, 18 Sep 2023 13:02:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 6/9] x86/entry: Track the IST-ness of an entry for the
 exit paths
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
 <20230915150038.602577-7-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230915150038.602577-7-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0059.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cc::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8608:EE_
X-MS-Office365-Filtering-Correlation-Id: f56baa9a-6b28-4dec-38e4-08dbb836b9e9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	y2dkogtkvZHtslsvEBCZsABaHhl7xkNWxs1RY3nn2T79raHGWyQUOXVnkRHHq4pAcJPNHfuR+fVNUHyh/lvoMMT9vZA5UBQEOq3suLuXfwq8+bfPaVO2iwl5r57I6foNBCzQhKSxlMyNWY4T2T53b0f/8HPwp6wRhx4utYvJvs142U95ih01TCQxCpAQdf9sLgswX0hpQkaXjBPmzRVAhgZWITpgWN8p0W+GkS+vJwXQbVyRDowZWPYhqGMJSSRWBaZZronRoUCsQrwKsVhNdwr+5bgF9AOT7w5RfIFIFIfmCY+37x5oSxFcvIC+YqoiaAtrxeMiJ/P6V7ED1kBJIROE28D5n20s1W3RTLatJfi/rQMmbY1njD7+lg/yeSdinVkEts/7Wq8h/U9yLXtsDXfRvPQUX04+4LtmxTOzkkrnzD9rpTMjeQl4xvYWQtRT3FEcLMYbE0eBfHXIuuT3CXjkvYvVMM19EHkn8QQQtBd3BqaHXFO6IxuXwBuDR/scPf88eHIGFQFe86McWJLSqQ5nZAaIP/y/h13PM7kM/TxLMxBQJjr/CJhTetOC8KV+8gbiTyFmtI64o0KS7SOQ/O6BcgaxVTrumvruLJNYp46VwTKyJyvRtLIykgh2XRNcEMGLwx3LWCU6lrPiczTp+A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(376002)(346002)(366004)(39860400002)(451199024)(1800799009)(186009)(2906002)(5660300002)(26005)(66556008)(41300700001)(316002)(6916009)(54906003)(66476007)(66946007)(478600001)(8936002)(4326008)(8676002)(31686004)(6486002)(6506007)(53546011)(6512007)(2616005)(36756003)(38100700002)(31696002)(86362001)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MFd6Nzhlcm52SVRSZkFrNUZNVktNbllHQ2FDc1FZMVVjeXQ5TENYQTBLRHYw?=
 =?utf-8?B?WndBUWZxRHBGazBqcVY3Y21DdFNKY1VmaUo2bjFZd0p4MWw0N0xPdVVVUnFB?=
 =?utf-8?B?N29iamh6eWpMdURNWUFvb0YrL3JBMTVHZk1lbURKK3B0dWxVbmR6Yk9tcjFp?=
 =?utf-8?B?ZkVEeUVLRGlURmVxY0VWUXNDWnJjWWJiODdCb3JXZ04rYVk5a1VSeUNkSlJk?=
 =?utf-8?B?VmNPWHJ3ZVpwT0I5dUYrQ0pqVEFJaDlFZ3BmelltMlJuRjlXSWdTWjdqV1BK?=
 =?utf-8?B?a2xsaDUwQVBqZ2VTWDRURzFSM1Q0TW1WTEVLK2xoZGdNMjBtTG13ZTFMZEda?=
 =?utf-8?B?ZitBbnNEQ0hPQm0rdzBNRVJ1SDBHQ3ZmM0VBU1BaNTE5eHMwcXcrczZsU2RK?=
 =?utf-8?B?Tzc1MzZEUjNaS3pEbG10V1p0OGtXZDFidHB4R3EyMENXYU5mQjVDNGZ6dTVp?=
 =?utf-8?B?TzVlY0ZHZlduTFNWM2M0ZEF3RFhaWGtNNDJpVWJHNk1iMlhXSFIwY0F5S2JG?=
 =?utf-8?B?eG1oVnI1UVhuWVdKY3JwdFp4cHh4N1hJZ2Q2UkRkYmh2bXV6Y0c2SThnVWEx?=
 =?utf-8?B?ZHJmQUJ0OUN5cCtvOUk4RHNGcmFKLzdJSVViVWh6QW5ydDhsbnh4RFBrUmJO?=
 =?utf-8?B?NHgxMk9JUk5EanlONFNTNmNLUytwQ0pEVUZEWVduZk1FdW0rZithdFlWRGdI?=
 =?utf-8?B?R1FZdFBmNW9YRWZiV2lIVGlKbHJzMG9XYzVidVBZajBkMjcxbC8zWXFHekVh?=
 =?utf-8?B?a1FtcGNKR0dISThValNDVGo1Ymt6ekVQRU1IYVF5QWlCUC9UM25PVWpteVNv?=
 =?utf-8?B?OXduaUNQWEhoNVd5blp5czVEWDNpUTdDcGJIVGIvN040RHVGZ25rTXZvT2o1?=
 =?utf-8?B?cXJKRWxnWHo3N0t6bk84VTViZWkzcVZtdXJMQkVMbk9KSzNDR0EwNDU5dW5t?=
 =?utf-8?B?dGpWTDdTdzQ1L01XYXRzUG1ubEx2V1NNK21ac3hpcmxSbzluWExnRnFyb3Nn?=
 =?utf-8?B?WFhpbXV3NG5PWkc0QUw2ZzlTeXhvY3RiZC92dUUzQURpSm12dDVPYVFxZzFE?=
 =?utf-8?B?eU5DSjQvZEZzMXdDT0MrUmlBcWJYNU9hSFZGY3BudldQQzMzdkJxWW16M3Bu?=
 =?utf-8?B?YnF6N0pwQXZ3VVFPcWxMZTU0cm1OSjBKT2xha2h0WlJYVVA2aDFua0lhL1Zq?=
 =?utf-8?B?SmE0aC9pM1pnWUd5WnVHcHRtL1FDSTdFRlEzM2Z1YjAwQXNSaE40cEozWVdI?=
 =?utf-8?B?dVJQQUVoeHZtNzcvdVNDWTV2REdHZEJ6ZDB5OEhPVEY5ZEJDbmtGQWxIanA0?=
 =?utf-8?B?NmdUZzNkczM1eXFvT2Z0QkpHNXltYTJlTkMxcGJWN2FkM25Pc3hGWjB3ZEVN?=
 =?utf-8?B?dUwxQWE3dW9ocnJjU3oxY25pUU1KenVLY2FuZGVpb3pFZHRXdndwNFV2K3hO?=
 =?utf-8?B?NitVZFdnM2tRMTYvUFpabTVuVXlCVmJJVVRDUGg4Tk1mOERKb0NmaFZxT1dZ?=
 =?utf-8?B?OWozRG1CRm9tSEhSaCtFL1JnREhKREIvUVZkQ01BTWxjQ29YaExKRENJVGxL?=
 =?utf-8?B?UDMwbGNtcFE3V1FnQjBPQzBYVHRLclFFNDF6VDFycTd1V1VEQm52cFRDSEFW?=
 =?utf-8?B?OHFGaWFuZCt2VzdqR1N6NmJYU0toWDF1V2VQemk1d25NK2VsdUdPcmpFMTZh?=
 =?utf-8?B?Y2EzYkdUeERzcXpCa0k2WDVhSzZUcWIvUnd6WXJENTdsQU94Nm1CbEsvY1Nx?=
 =?utf-8?B?TnlzNHVxYjV4U1FVWDluVW5TREtpNTJyRW1EQjZNNDFFWk1OY21RWDVBUDg4?=
 =?utf-8?B?aHZwMHM4S1h6UHRYaFNvcm0reGFYSDBncGx3dG1UMUxHcmpPYUdUSzQ5czRo?=
 =?utf-8?B?TTlWRDc0TVhKTmJzSzNIck5kZDNxSTRqVERvemFuelpncDFWZXl4ZitCdmox?=
 =?utf-8?B?T2FKdUVCeXJ0OC80Kzk1SFFBelhZZWptT2xYT2g0dVdFdTZVOUt1SGdJVFVk?=
 =?utf-8?B?QWVWVGpPblI0SEliRmRDYm9QUi9mYlBDbllVWWx6MEcxYUFQWHhMVTZJMXZ2?=
 =?utf-8?B?OE9tcUhweTR2MXVOWUZEemZFVlA0SHRMVFNFMmNyTUtPRUlJUktVays5cWI3?=
 =?utf-8?Q?LrM7UHxd3CkAJE+UqdUgEK8ni?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f56baa9a-6b28-4dec-38e4-08dbb836b9e9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 11:02:19.1064
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: NBpe1wT9o98mMo+4KJetgI9bUliglRhc7twueO1wlc0lXmK4JQHZhRSVS7AA62rMXo35bq4+FkIHFm6v1/FGBQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8608

On 15.09.2023 17:00, Andrew Cooper wrote:
> Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
> entry/exit asm, so it only needs setting in the IST path.
> 
> As this is subtle and fragile, add check_ist_exit() to be used in debugging
> builds to cross-check that the ist_exit boolean matches the entry vector.
> 
> Write check_ist_exit() it in C, because it's debug only and the logic more
> complicated than I care to maintain in asm.
> 
> For now, we only need to use this signal in the exit-to-Xen path, but some
> exit-to-guest paths happen in IST context too.  Check the correctness in all
> exit paths to avoid the logic bitrotting.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>

I understand you then didn't like the idea of macro-izing ...

> --- a/xen/arch/x86/x86_64/compat/entry.S
> +++ b/xen/arch/x86/x86_64/compat/entry.S
> @@ -117,8 +117,15 @@ compat_process_trap:
>          call  compat_create_bounce_frame
>          jmp   compat_test_all_events
>  
> -/* %rbx: struct vcpu, interrupts disabled */
> +/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
>  ENTRY(compat_restore_all_guest)
> +
> +#ifdef CONFIG_DEBUG
> +        mov   %rsp, %rdi
> +        mov   %r12, %rsi
> +        call  check_ist_exit
> +#endif
> +
>          ASSERT_INTERRUPTS_DISABLED
>          mov   $~(X86_EFLAGS_IOPL | X86_EFLAGS_VM), %r11d
>          and   UREGS_eflags(%rsp),%r11d
> --- a/xen/arch/x86/x86_64/entry.S
> +++ b/xen/arch/x86/x86_64/entry.S
> @@ -142,8 +142,15 @@ process_trap:
>  
>          .section .text.entry, "ax", @progbits
>  
> -/* %rbx: struct vcpu, interrupts disabled */
> +/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
>  restore_all_guest:
> +
> +#ifdef CONFIG_DEBUG
> +        mov   %rsp, %rdi
> +        mov   %r12, %rsi
> +        call  check_ist_exit
> +#endif
> +
>          ASSERT_INTERRUPTS_DISABLED
>  
>          /* Stash guest SPEC_CTRL value while we can read struct vcpu. */
> @@ -659,8 +666,15 @@ ENTRY(early_page_fault)
>          .section .text.entry, "ax", @progbits
>  
>          ALIGN
> -/* No special register assumptions. */
> +/* %r12=ist_exit */
>  restore_all_xen:
> +
> +#ifdef CONFIG_DEBUG
> +        mov   %rsp, %rdi
> +        mov   %r12, %rsi
> +        call  check_ist_exit
> +#endif

... these three instances of identical code you add, along the lines of
ASSERT_INTERRUPTS_DISABLED?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 11:07:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 11:07:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603933.941078 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiC6A-0005QU-F1; Mon, 18 Sep 2023 11:07:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603933.941078; Mon, 18 Sep 2023 11:07:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiC6A-0005QN-CW; Mon, 18 Sep 2023 11:07:26 +0000
Received: by outflank-mailman (input) for mailman id 603933;
 Mon, 18 Sep 2023 11:07:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiC69-0005QH-DE
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 11:07:25 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2061c.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::61c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8bb189d5-5613-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 13:07:24 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8608.eurprd04.prod.outlook.com (2603:10a6:102:21b::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 11:07:22 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 11:07:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8bb189d5-5613-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fwzfry3lWq3DuT9zHOWjgiuEmppXADva8/AMoTcMkm5RKmgyRxBBNfgphYQfnfKm/p3fOl719cbv5RtS6Ubq1L9z5loA4Zrzrn41UB3tWzkKszWnltKxjzDHf5tOTs+dU4RbGfl14grBXmCL0BhBXikRnRRXzUqhZLU501SYZFsvJJW6ha4fa5r6r0HHGgk0jesun5gQHGG+k7cTECYvAeA2asNpxyKq9g4zUPDsFKWuee2JBMP5GoBTy2j2LCaeT9NBZFT5FxSu0V6kj7ypj3aD6g7UL7uXJaNOj1vqPJE3ROCJ4hIVT8cajuIS2hG8AIrSb+Wv3cn46AcMkays2A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QlLy2xw/iIDJLB3hZJl5DpxPqrnxRAjvgfU0DQKpTdw=;
 b=lWEyzhphJ1fgkVcNmWulPf/+DorvlWPKVHnJI2k2rwNK3KsTBoTceBMqv0iQunuksEG71KjEfqZ2mXyrLJ69Oer9E+aD3qT5RGIikl2EoN6kfNjQLiIVyuKnQkf3Im8FxxrIt/ZLGrbU+6pfBEV4Az5VFcdAz+Hc4LJuHn6Tvc4OPucDwh2BsmlBdQBO3jt1qkDpNqDZibQ3ec1p92CqRfARv/sF9cQRZ0O4n/NsJJ1JOUFB1x7+WfN+2HMyUAOs2W2HYSssHKUDEXsL65/uKG/Gz8y4vYhTYYwFXwqNaSXfnCJmPLKCYHZiucK5PcEWzGdyD5C0GgWcjBBsPB13EA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QlLy2xw/iIDJLB3hZJl5DpxPqrnxRAjvgfU0DQKpTdw=;
 b=Z0m21KiSXmnaEvVPuodH59xK4R0KlcFD3xjrZIlsMn8PmzoLLSYQiMAZ6F80o7K/MrLS00/DB1YJ1XHq//2BF1kkbd9nyD19ZODY+7rJXdZaeCXByOSPfRbxfyEtcbDvx8PlkR0+DjOj4HQdm3qlaRvB27m7zpsSvv8MVCDHWwgrTUN5e/L/Ftep8KTarWvfVqYZaOMTl7p372CMS8kyN98t8jYECt1GvIq92CfYFrKZBJyYl2H7Nz5jTRBS1DozI7ORLL6/ZsfMnm/A965Deg+zWd9RtVLMPf6gLgI3uWjEHaRSpOgaQ1Rph5Jz1HpQ+jORdt1Qo88q/D3hh4WVyw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e28bbdf1-31e7-9500-ca5a-00cf15ceb33d@suse.com>
Date: Mon, 18 Sep 2023 13:07:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 8/9] x86/amd: Introduce is_zen{1,2}_uarch() predicates
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
 <20230915150038.602577-9-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230915150038.602577-9-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0131.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b9::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8608:EE_
X-MS-Office365-Filtering-Correlation-Id: 4b42c268-8811-4fbf-9869-08dbb8376e9e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	J0l0ZB9zidSHo0kAgc8goD1ZC5fwLiM17DvZWDf5BeXjzE97H1kRh7iBV/wDKsERZPERzOLbfYXYoVBuWR3NHTtBCeXBLCIIs6lkCoBnwlWyUU6vbSxN9jfYZmqPn2Bo6EQ5HGAI+uu6kYgbYhEWjLIUtrwIkjwziBclhWBkekM6hz48U95BH8PMylKoZDj2UyT0MrYEx/l1bsF1ELjoE2KVZDoW0x3y3Su1op9gaoia445aK5+bFji3yqFs3xomNesiw8JwvJNBu0LHfChq+aGV+lSkk+xn2NfPXfyKSm7j4w7N560Zabh4qDLkTY0ReScyQRUzDvI5csEKYHCd+C/WPiX+9Ft9AgBhCFeOwMvQJu5lFnucpiQ4mfknKPLINkSg5mvT7+NdbclnVwhJWb/bK70e3eeQ3SOrOl7cEVBrP9Zi3/JqdsKzBbyTUoG62mHJFByunW5tcdHQKkdqbDcbgiNpnxqLCXA36uy8MdSHKmuadfiDsnXqLSXVZ0TjH8wSjS9JOYWvY8lnT4g7221i1H0oL0TjAVUs5kLD5yhAjxHuFJSepEw7y8vhXFfT1fayTUN4fX2p+R6W8ICXnoHVRuESPWLsg+n4Jnv5w2x0W7tkdwHGm/OI4UqaYyUDfdIfE3qSeoeXeC7QVxXUdw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(376002)(346002)(366004)(39860400002)(451199024)(1800799009)(186009)(2906002)(5660300002)(26005)(66556008)(41300700001)(316002)(6916009)(54906003)(66476007)(66946007)(478600001)(8936002)(4326008)(8676002)(31686004)(6486002)(6506007)(53546011)(6512007)(2616005)(36756003)(38100700002)(31696002)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?V0VWVDQ1UG1GWUhxMlhEdzdPekhmck1pMG9YOU9RM2d3MjYvU0hyV25zR3Fs?=
 =?utf-8?B?S3k5TkxvM05PcXorTVNXb25YTXZCeWdrMzNMS2xLWnhYTG9YSHRqR1p0bXB6?=
 =?utf-8?B?L3BWUGtoVXlpZkp0K3BrN1lwd1BGSWw3QlJLVnRSdEJMZTNzb2x0R2lBaURQ?=
 =?utf-8?B?UWJRUjhPWmtYN0Z5ZHlESVh4TTB6S2N4SkUvZ242OFMraFF1MW8zcDNwM2I3?=
 =?utf-8?B?ZTNEaGw4UHppZ0taWWlLd1l1cVd4MlpVVTRzcnkvS1dWcjVTSm1hSWQxakpv?=
 =?utf-8?B?R2tadURGSnZoNGRNMUtOd1ZSSzlkWkYrcVVrNzhrVWFZRGxHOG9UaVEyWndY?=
 =?utf-8?B?aXFxZ0NIdURGTmpIa1VTQS80SXk1WXpzRXFnV2hQb1ZhQW1GVUZhcllHdWlC?=
 =?utf-8?B?Mm5hbngzQjhJODRQREY2TjkwZjUyalJUZEozdGJkNXlpaWJXRnZrc0g0OEcx?=
 =?utf-8?B?Y21qSDJxQmxCaGdBQllXb3JZWjNjWTYrdGJkSDBQWUpRTXY5Z1B6YmhHZkg0?=
 =?utf-8?B?bUxoQmM2aWNmbnlyRnYreFRWdHVFaXFhNmEwNndIWm0vWlkxc0NaVU5teU4z?=
 =?utf-8?B?eUxoVWx3cmpncWtUUGxDWlRiNnR0ZXk5aTg4N09yOFZTZ0lvSFB5d1ZPaWRI?=
 =?utf-8?B?TFZZZnJxUzg1cUFDd2tJcElsUU1xbGFJN24yOHZTSzJVeXNyNGs1dy9rSkJ2?=
 =?utf-8?B?cXpuZG00RTI1MmpVL0JOS1M5cFRIOGZXK1lWNER2SnlHVG1ybDF0RDUvNVFG?=
 =?utf-8?B?RFFqcjhuRDFER0J6cHVnY21XdkxqdFpZZnVoWURNRXBrRVJ5cUszMjZ5c3dm?=
 =?utf-8?B?V1RtellsTlhtcmd4QmdmaFpVdkFoWUJURlVadlV2bmNGSklXdkk5RmJ0Ymsr?=
 =?utf-8?B?WmdySlRuR0wycjZmMkRDOTlMNjJaM3ViMWNDVEljemkrSlBiVzB2cDVLU01C?=
 =?utf-8?B?dXZ2K0xsRkE5WHJHeWdoV2NKc1IxVVpNVkZTMkwxS1Y5WlhwNVdIZ0o1MFI1?=
 =?utf-8?B?NWlDL2hPNm9HcHNLT3p2S2p4L0NWU0ZhN29zR1Y4enB4bnB1b2ZHTkFFaGdI?=
 =?utf-8?B?bUt6UElVQWoyRDNTUC80Y3NJV2YwVll6YmhpdGU0MWx6U1FKR3Y4SVNWL2VF?=
 =?utf-8?B?R0d3MFRlU3RFU2J5bWxLNFZlOFZyYUgrN0VuV0I2dnpUdTJRejVPMjN0bGN1?=
 =?utf-8?B?T0tMVWlrZUxDQis0VnVHZ002V1AzbXArbW96ZTI0UUx0SU5iZ0xVNStPcGd5?=
 =?utf-8?B?eUhpbkJMc2tPZ1U5TnpTbldGczRmT0tmb3VBaWhzUmhqUDV4V3dMb2VwODBv?=
 =?utf-8?B?ck9sd3BtWUhQa2ZPVUg0M1V1VGp3c0RHRm8vaEZsYXNBUmswWFFXaGJDTHIr?=
 =?utf-8?B?SDlMRzE1Nm1zVWVtbXZydy9DelRNZm8zVlhkd3NOZ2FpcFBOV0x6cVlKOTR4?=
 =?utf-8?B?dTVjK25nUnpJTnZzZEhJZzdkM3hUei9mR0ZjNzJoa3VYZEZhQ3pkL21wVEVK?=
 =?utf-8?B?MmRJNmIydTRSYitaaWxwbTNPNWpnL0o0VnMvWDBERStBQVJSZ0RMcFpBNmUz?=
 =?utf-8?B?RFBsUmtDTkhTYVI2TFljejZGQWFOUVdEV1VhN1RZQVJBbDl4YjU2WjNmblFk?=
 =?utf-8?B?QmZWNkdjczhnM3ZWSEZzUHpZM3BNRS8rclM5TUpRZVVLYyt4N1pQNXBXbEMy?=
 =?utf-8?B?eDVQRmVXQzV1WFFOQTgwV21WOW8yK0VXR1l2a0xncTV4QlZyRzdRRW5MTDU3?=
 =?utf-8?B?N2hqWVhmUHFIOTUrbzZhcVpRU1FTdTZnbnMzK2tBcWxER0xocnk0WWtCdWZt?=
 =?utf-8?B?OVgvVkxxTEhpNXhwd21KL1ZwUFpWSTY4Uk16RkJ6RkRXZmdGdmpwUDZkSFdv?=
 =?utf-8?B?Z05IQko1bmRxWmoyanFuYllabVdLRDgyTU9JVVlkSjBkMEpuSjdPa05JcWZk?=
 =?utf-8?B?Z1NJMCtNaVMvY2hPUzQ1UnZHZFlUSTRlSTk5YmhXdGxsWjFucjZXMXlwb3BT?=
 =?utf-8?B?RXBud1RjQ3Mwd0ZDK21mZ3hyMWZxWlBUZHhUQTBnQ1lUaFB6Q0xaVzlWc0di?=
 =?utf-8?B?OVYxUzF0M042WVVCNXFSS3FYVE15KzJSRllmYm5LdnNtd0k0c2p4ZDI4VjAy?=
 =?utf-8?Q?NpZqB0C/2CgASZdv8zHkwh7he?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4b42c268-8811-4fbf-9869-08dbb8376e9e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 11:07:22.3235
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rCVxVTMI6ydzVcEnrsROZyNgv9bilUfYbqWEFCPVwqM+RRNhrAO8aQGvDOE5KvKrFAxByqZ0paNEDqTOPDS3oQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8608

On 15.09.2023 17:00, Andrew Cooper wrote:
> --- a/xen/arch/x86/include/asm/amd.h
> +++ b/xen/arch/x86/include/asm/amd.h
> @@ -140,6 +140,17 @@
>                         AMD_MODEL_RANGE(0x11, 0x0, 0x0, 0xff, 0xf),	\
>                         AMD_MODEL_RANGE(0x12, 0x0, 0x0, 0xff, 0xf))
>  
> +/*
> + * The Zen1 and Zen2 microarchitectures are implemented by AMD (Fam17h) and
> + * Hygon (Fam18h) but without simple model number rules.  Instead, use STIBP
> + * as a heuristic that distinguishes the two.
> + *
> + * The caller is required to perform the appropriate vendor/family checks
> + * first.
> + */
> +#define is_zen1_uarch() (!boot_cpu_has(X86_FEATURE_AMD_STIBP))
> +#define is_zen2_uarch()   boot_cpu_has(X86_FEATURE_AMD_STIBP)
> +
>  struct cpuinfo_x86;
>  int cpu_has_amd_erratum(const struct cpuinfo_x86 *, int, ...);

With one simply the opposite of the other, and with the requirement of a
family check up front, do we really need both? Personally I'd prefer if
we had just the latter. Yet in any event
Reviewed-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 11:15:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 11:15:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603938.941089 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCE1-0007mC-8H; Mon, 18 Sep 2023 11:15:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603938.941089; Mon, 18 Sep 2023 11:15:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCE1-0007m5-4m; Mon, 18 Sep 2023 11:15:33 +0000
Received: by outflank-mailman (input) for mailman id 603938;
 Mon, 18 Sep 2023 11:15:32 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiCE0-0007ly-2z
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 11:15:32 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20623.outbound.protection.outlook.com
 [2a01:111:f400:fe13::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ad932b8a-5614-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 13:15:30 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GV1PR04MB9213.eurprd04.prod.outlook.com (2603:10a6:150:28::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 11:15:28 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 11:15:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ad932b8a-5614-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nx4nAWDXsDB1XEZJFzCQQ5YQpw77/ta8NzyMggHSBrCsxVPWYFeebvbETdCGpdT2vLnM4C6BRRB83lNFoMJKriKOFd68mxrhPN/umupHrMy14uyy1ASuaq4J5geQWPy12IVSOErdmNvvN06bHuAVJOoUNYTGi2xBwc3vRI6mCVuVpTfoepczC56BwPyDEYDKSll/LZdOHTQHE3u5WuB/usGyG4za7Sy3Z4MR7daKIO3L7OpFigzA6gs03rAJvzNESXilEO80cPmwIrM6Bh61nt/B+/ZH4SBISW6wrz9x1ixO++WgE6BxBd9/5HvuGQtLHkjiwWRMaYRN9yPYcZ/gmw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=We2/Sm4p1Sy8kvdJTxK9/X8195fSmiib0HSmoY9alFw=;
 b=CKmlD/s9HEMng+XkmINk1KnkkIsJAE1OCDbztCPeJiH5stbLPesGta7EZNJnZajksjwB1ALUGRS5aj7y7g4CdRR3kQ/asrvbyhOEQC/m0VhOvoZiCkCG+uzfACZeHUuYD82byrwJTRaOYpR32ohZh5PlGPGtgCxmQ7/GM73/nbRW2WxTRsnfQVRfeojSENWNo3mA1uIP9AiZ9ZeLqdzyPIRJ3Rm4GKQ+RH6BkKl1+hNcf/uEHEKTx7RwMxs+dJv3I5wO1Xrflf6Ujm7q7xwAQte76LTApgo/VWuza0+HewYa3M3lmVWCOZD3NZO+bUqCcZwQI6Z4KS5byw2pmaHWBw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=We2/Sm4p1Sy8kvdJTxK9/X8195fSmiib0HSmoY9alFw=;
 b=RBzwMw80xzrMOLWndfnwPAoddETnM4nTbke4rNV+fhsSlbJTE6b9iCr4ATNZrG0FiWXb0Uhf/7oMfBPZO8uHLQjnvQmgzrlHQaaLVEu2NNaJrNxbo3K4NaiyS0S05Q7FXcp7Rp4oBala5HcwtKE2mdVQ22VSa6RCZxt/Oa5BiPZNhHVsVNQFUyMOaK+Ixg+RAKbtKWxr6fW+S91f+HAHijKN29s8TXrlcT0ox4BVwmgq6iH7NheJ9LmvQR5g8xk/dmnZp73XQEnlz4LzeRuby7HthFW9ZWWr6aHSsm/IFmnkE/N18nX570qOiQU1irBTsCTMj0Yur82sKB8n58Hl/g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <13289cc3-c419-0625-06c9-e7ffd79f9890@suse.com>
Date: Mon, 18 Sep 2023 13:15:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 9/9] x86/spec-ctrl: Mitigate the Zen1 DIV leakge
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
 <20230915150038.602577-10-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230915150038.602577-10-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0201.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ad::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|GV1PR04MB9213:EE_
X-MS-Office365-Filtering-Correlation-Id: 748a3475-6bae-4455-0eaa-08dbb8389059
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5F61yeZFM9bzuHfE/LMV9RQTomRjYMPGZoFMy2joiLqiZorWT9c7fy6Q4LsrkypYmNSQjVoPe5elUUUSHH/WSv5NbJYKMYuKbpgOow7fBra9YnxPCFFnRTIb10lKlVj8lGkfFZosLDYbYQ+JS1CttD6p71YGdwhAqPpzsQUoFu3M2TCOgxsN3eFku+0ED7qHEkAg3noiuKcc2jilOVyz5TWiUbpE2NzIamC5GoGanw41ckbYzza5O2JCUn9IhgpMhftvVAN88cLIuk/RNpi/kBoWKgUqZ2LzDyqnzCqrEJiFFtkAUqgKtALi2KFglek5ucbjC2jgj8l3tFvJlk0ZFM2u5mEq+iOsUWFySqH3aNu0GMkAzpiIZOatSKOp59fCkmu3jsXa1jYoAMV2Kwc0R9IFGMo76D0DT4xSScRXDSZPaRk7sksh0F9C2aEcF4Yzwo8VQFPALStgOSTTsIUj+IQyEwSRo9uUWnRMljyfLo3wLVJa1AhgKzQjJ3B702MmA36wgU57sxziL+fzIzeNZEv2LUKBvsa4B2/LssObmSKNazOH7M4Nk6pDT2fGs43Se0Q55LPcFfrzhCfeKpNJg3JWalQiJ6ioP7gdFNq5BTHWmEmFW3rdoOAkT0lbTi0XLO1aUnmWKbOWuhIN1au1yQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(346002)(136003)(366004)(376002)(186009)(1800799009)(451199024)(6512007)(26005)(2616005)(6916009)(316002)(41300700001)(6486002)(66476007)(54906003)(66946007)(66556008)(5660300002)(8676002)(4326008)(8936002)(53546011)(6506007)(2906002)(478600001)(86362001)(31696002)(38100700002)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZXRmaVV6Rk9DT0ZVbHd1bll5azBVenU2NmU0cGpIbjN0c0gveENSVHdwSUVa?=
 =?utf-8?B?RlZjWU50MTlvOTJvbEdlV2lFT2w3bmpzZ0dCVzdrTUZnZVB1UkVWQWJ0djQ1?=
 =?utf-8?B?bys4alcyejZyQWhJQ2ltbkJ0MVV2QnN3bEJFMzB6alNnMkM3SGcyQmtrc3pN?=
 =?utf-8?B?eCtZVGN3WVdHNy8vTVhjd0tDanN0U3d0VERHS1lBR3BOZHBlL3ZESlMzV1FJ?=
 =?utf-8?B?ZmtYaldmUkxPRDRHSGxJNUhvdUhIV3Q1TmthTktLMExIb2dZTHRHQ29MZmtY?=
 =?utf-8?B?U0NmRnNWWTJMSEVpMEwyeFlRQ0ppMVVKSDVQVTl0NzZiZFoxTGN3YW1ST1JV?=
 =?utf-8?B?eGx6ZE5UQnpnTDVQd2FTSlZoVWZkRFcrVnFPYXVUUzQ2OFM5MmgvbkJIV2Rm?=
 =?utf-8?B?cHBTMUpoY3FvaTRzODV5WmZPa2IvOWlHbWIvRTlaN2xtYW9LWVZGUGlueHdy?=
 =?utf-8?B?STNIMVBmemlSbVMwQ0NEaVhKRDZ6aFppd2E1YThpaTZmTUh6RnRvNzJycVVL?=
 =?utf-8?B?R3p4MndzL1h3bys2dmQxamZYTWxPL3VnK2x5OGpmZ1VvRlZ1a0tDS2c3akl2?=
 =?utf-8?B?YUttZTdjakJMdThFVDR4L0FnK3p5N3VlS0QyZE9RL3IyRThzalV3ZnVxeVc1?=
 =?utf-8?B?eFQvUytaY2VTUmNYVTUvaERJdGJPV2FsQnhNVE9PUWw4WFB2WGJxeGpCSGtj?=
 =?utf-8?B?L29OMkZQU3ZQcENZdVByVW1ReVV6cHdFRHEzOTRxWk93NEhCakwrSVBac2E0?=
 =?utf-8?B?aGFKbGtFT0l0NnU2WWcwaENiOFJrQS81Wk1ZNytNS294bWxSZ0oyVFR2d2Z2?=
 =?utf-8?B?ZnVqYU1GcmhYMktaekY4V1U2Ly9EOHpxM0xLb0JKVUllMlVpT1RCQ1BoV2N3?=
 =?utf-8?B?MXR2cC9WVlR4TWplT1prdGtacllGWWdsdk5TK3R6ZytCOFV1Z0U3Zm1xeEk3?=
 =?utf-8?B?ZHY1dk1IcEJQc2QrVHMzOVhDZTg0dFdaenJjV0ZGZjlqVUdQdGtXSGdqUllH?=
 =?utf-8?B?TElDY0xEMFlaZGpOV01xd0lTQW9XRUFBQzY1ZnB3RzlyOCtVeU9hMHJmT29P?=
 =?utf-8?B?MkpKL0tzSnBmUnFJU2ovWmptRUxmeGRldzhmQTBkQkxOWFk0V3ZVRDdJdXZj?=
 =?utf-8?B?NWlyQi91NGp1T2hqS0dUNFo4dVFHY0xxa09uZW9PVkpzLzV1dFFRTjFidndl?=
 =?utf-8?B?Y0xGcVRSR21xN0ZEU2RkZ3FlZ2FDaVJ1UzlsaVFTcUxRdFJYTWF4R1d4Ukgw?=
 =?utf-8?B?L0tKT1QxMG9tNllJcHR0YUIwcTJwTS92cXRWWjZ2UTROd3dsSk5PV0ttNGtu?=
 =?utf-8?B?NUc4MktBUWZNdVR0M083QWxObnRMWVc4NnZpbklQaXY5cG03bmJKYWJGbnlB?=
 =?utf-8?B?SG0wSDQxT3V1WEZtWU51bzVYK1E0dGMxWFJDT1c1VHAzdklJbDNSQlRHWUlk?=
 =?utf-8?B?WlFmYVVra3FKKzVXeWtvc2xoMys2RS9lL0ViOUtmckNvRGp4cDg3K3lNUWhF?=
 =?utf-8?B?S0piSS9VN1I5UVlnS1RwQ0l1cXM3UUY1dHdydVovYWZ2bjRBbTFKSWZLMEY2?=
 =?utf-8?B?dXE2YVNGN0xCdVhQaTVlMWoyZnp2ZXYxTTlvREVYcnowbDNNbkk3UG9ORU84?=
 =?utf-8?B?bVZzT2dZK245Z1p5eXQ4a3MrRklIWmhXUCtvYXJaVXBrdldxb0NObkttcE52?=
 =?utf-8?B?S0JGLzcxbEhKUW1rbnpJSnBBNERiVEpqSTVpOTcrNlV3eFlQcVREbG43MlZF?=
 =?utf-8?B?bVl4QXpNbStYOWZ5aHNUTUU2RVJHK0o1ZHIycU5aNytHVWNxbW9VKzJDVHdu?=
 =?utf-8?B?SzYxa0g4Rko3RVBLaVpPTkhZMm9RNUVTUWIyS2VsMUFFam5TZnR6MHp4bUlQ?=
 =?utf-8?B?ZWNwOFk1dTZxMHQwZWpieXRtQTRPV0FTbE9sUU1ndXJpN2MyODQrc1lUSHpF?=
 =?utf-8?B?M1J3NmV4bGdlNkgyQWFEL211b3h3Q2ZFNWJYc1hUR1ZJb3JOb3Z4VWhDZWY2?=
 =?utf-8?B?UWhZSW5mU1NXVmVCMWk1TkdzWHVBbG1GVXFtYXRadnRtSG9yaDEybWh2TGN5?=
 =?utf-8?B?amkzeUpQcDJvQy9iZVJTTk93czk0a3Fma2lyWTJ6VDRZSmVzQTcrbFJLSUNx?=
 =?utf-8?Q?tNZbtTmFPBfz45vxQ8Tm2LH94?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 748a3475-6bae-4455-0eaa-08dbb8389059
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 11:15:28.3884
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: +NaI5MvSVzJg6HyJ1n19BRMvwaHXJSO3O9BQfsNt9B/7flZFJpFACagBGO2e+HKla9NMEk4v6JthiIG8nU42Aw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9213

On 15.09.2023 17:00, Andrew Cooper wrote:
> In the Zen1 microarchitecure, there is one divider in the pipeline which
> services uops from both threads.  In the case of #DE, the latched result from
> the previous DIV to execute will be forwarded speculatively.
> 
> This is an interesting covert channel that allows two threads to communicate
> without any system calls.  In also allows userspace to obtain the result of
> the most recent DIV instruction executed (even speculatively) in the core,
> which can be from a higher privilege context.
> 
> Scrub the result from the divider by executing a non-faulting divide.  This
> needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
> 
> This is XSA-439 / CVE-2023-20588.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>

Nevertheless I would have hoped you add at least a sentence on the alternatives
patching of the IST path. Hitting #MC while patching is possible, after all
(yes, you will tell me that #MC is almost certainly fatal to the system anyway,
but still).

> @@ -955,6 +960,46 @@ static void __init srso_calculations(bool hw_smt_enabled)
>          setup_force_cpu_cap(X86_FEATURE_SRSO_NO);
>  }
>  
> +/*
> + * The Div leakage issue is specific to the AMD Zen1 microarchitecure.
> + *
> + * However, there's no $FOO_NO bit defined, so if we're virtualised we have no
> + * hope of spotting the case where we might move to vulnerable hardware.  We
> + * also can't make any useful conclusion about SMT-ness.
> + *
> + * Don't check the hypervisor bit, so at least we do the safe thing when
> + * booting on something that looks like a Zen1 CPU.
> + */
> +static bool __init has_div_vuln(void)
> +{
> +    if ( !(boot_cpu_data.x86_vendor &
> +           (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
> +        return false;
> +
> +    if ( (boot_cpu_data.x86 != 0x17 && boot_cpu_data.x86 != 0x18) ||
> +         !is_zen1_uarch() )
> +        return false;
> +
> +    return true;
> +}

Just to mention it - personally I consider

    ...
    if ( ... )
        return true;

    return false;
}

a minor anti-pattern, as a sole return imo makes more clear what's going on.
In a case like this, where you intentionally split return paths anyway, I'd
then go with

static bool __init has_div_vuln(void)
{
    if ( !(boot_cpu_data.x86_vendor &
           (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
        return false;

    if ( boot_cpu_data.x86 != 0x17 && boot_cpu_data.x86 != 0x18 )
        return false;

    return is_zen1_uarch();
}

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 11:17:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 11:17:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603945.941098 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCFh-0000M8-JT; Mon, 18 Sep 2023 11:17:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603945.941098; Mon, 18 Sep 2023 11:17:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCFh-0000M1-GP; Mon, 18 Sep 2023 11:17:17 +0000
Received: by outflank-mailman (input) for mailman id 603945;
 Mon, 18 Sep 2023 11:17:16 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiCFg-0000Iu-6y
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 11:17:16 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20630.outbound.protection.outlook.com
 [2a01:111:f400:fe13::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ebf0bc80-5614-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 13:17:15 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GV1PR04MB9213.eurprd04.prod.outlook.com (2603:10a6:150:28::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 11:17:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 11:17:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ebf0bc80-5614-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=H56rma4ZSA4/igbuW4nmJjG+zh+OdqRwGXIozwsLpcEFH6d5PUjXuUc19kxjyp+Jj2tl4uKgXcS6E1u7/8nJSpGwFN8wd4Qee9jdico0ejaInAFp3KJOl5P34DOFsPWTuRzdIhFivMmnaXix2u40Q7EqC+WW8QmOTxfm9b+4WeUZWfx0zX0/TTF6jZ2aAX++2c1W9D0CP5o9zekPVwjsquN/q+xXpmv7IEFIXC/tQ9sLkn3wfriPLaJTGb34DIaUiHJo2AETz0nCkSGmigwJYfHUCqEyL7ATPmDcty/eDb+qLjEWeT7yRtydpnPhLyplJu+9SxLtB8Sv8nHKUS0Y0g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cpC18uVwtzdSQ/egugNaSS+SFRnkCiOfKCxBJbklJds=;
 b=CfClEurNH/S3z1/mvAuo8BNEZCfgxnJSbQcvx+CwkxWht1u3b7KC4iSmWokC2nuYdN1nVisjQm/jzf8Hn+J+vQZfFbajXpW2IuwNX8INrH+RtN5CWl6xLZLea7ArJ3bVcn5s2b4qbsFmcCkC2S06SPOpFQUgZplC1CGmJdPEEEgVD/V0bJTaVz/a7GYx3CY270F0zqja2fWaSETEXoc+lEzee3atopfJjv5ozFzMd0gWr2MYoCpnB7XfO8Qz6BaHbcfQ7JgFtx/Ai/l19W3TMujUBKWbd4zVA3mktfizkiVgj3+Ln39h0dpR0g2ogpdhxhAJ1tHNPqFlsFWyB9T4VQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cpC18uVwtzdSQ/egugNaSS+SFRnkCiOfKCxBJbklJds=;
 b=vMEspUu0V07dN66V4+0WjWS0NwrRyzDsa4G2IoiA+6QQYvbOmmYYfwuyngUZbg16JpxxVCuWpJXGKvibru8KhR9PFoP4cyGrWpg6G5Aoo8/wEooHgCkpUwcS3rXNPvLs6485uwby3vR00+w7w+8YiX4h+nqMwl19ecF0OX0Dfko2mv9k47IX7Sg6/cM491zTO/6NyyVPspvFm033QiqcpBfJmctwrrruobcKsNBE3J8Gikdgo20mV2HL2+F02F/Y2PGeHPxZRVTiqKZUC5y8/pBovPI+YmfQsT4Yxx4ErQKoYYft+ucNtC2jXJKX/y5v8dXVIDu7GbMzP2YsH61a3g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c4e54b53-1e56-b89e-0be8-bfabf0b459d1@suse.com>
Date: Mon, 18 Sep 2023 13:17:11 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 1/7] x86/emul: ASSERT that X86EMUL_DONE doesn't escape to
 callers
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-2-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230915203628.837732-2-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0155.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b3::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|GV1PR04MB9213:EE_
X-MS-Office365-Filtering-Correlation-Id: 3bdd3940-33cf-48bc-31fd-08dbb838cf06
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	89Pv5lUwRT8jg9A1QUlCyeUNO/NdQ3voeIi13fPWiclE0gZz9pAcHhDBHDDRJ2ZVFRLFoZrrBC148MSVFWjwGEvZjfS4swwxBIbJ4iML37j1FWTYpFqXoLjn4aD/MJCBx4g04yeC5LgVfh7Ha3hyUiWGi4/2ScWyRqjevhBMYVQZg7usoe0VKdbuoAFpFc8Y58GlkxpZWdcs7KS5roOO7a2kT/SQLLom3NOiDIysw+uNft64neNofxKYfdz3itvy7UOn9t8eu1P9M0yvROGcDMq7OOdblFHA2yBSibVljo22IbH0HSkY2LVS/xSJEBfv3+WfEp+LF+F5Y+AL0/Ydc0CfYzT8O6RVfrMPEchPZXEPLpMjiQTn00FS0fu5wcK3v/U4WT0Gv8XHxseepOu2sVyDjRgwZwZ4TUoLlSPppjLoLtWG1G3bL5a11vLYWyeuagEYRoEX6xaerWECjKgPqpu1ErwDf6knDW0sV2Efr8QUjXafab87DJEGXeyZhC+F2SnMhgP5uABUD+l/Its8j01syR2Eckf/jPZ+gNN2ZQcMfImMWQGd1n9EtoHZA8i5HnYy2h8/48OkUs67zLDfPo3lxYNAVgkww7I4OsRBVsYUKHoa7AjzdNZqHkHl8BHRSX3pqbUHfkcLkMCKd//YJw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(346002)(136003)(366004)(376002)(186009)(1800799009)(451199024)(6512007)(26005)(2616005)(6916009)(316002)(41300700001)(6486002)(66476007)(54906003)(66946007)(66556008)(5660300002)(8676002)(4326008)(8936002)(53546011)(6506007)(2906002)(478600001)(86362001)(31696002)(558084003)(38100700002)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QjEyckk2NTBNWURtVEUxSFgyNUs5b2N4endGVGMvTEkxTDBVZ3BHdFJKTGpO?=
 =?utf-8?B?cGliR3pvcTlPUjdxSEdiNmM4am11eXFGaEZ5aWRwR3pWN0RtbWJzWEJqS0dN?=
 =?utf-8?B?Zi9VOCtSYi8yLzJQLzFZVFVNZktRUnZFR3gyNWdUTis2NjBsN3oycUIwQnhD?=
 =?utf-8?B?eWdTYVNQdDd3RFFYeStZTFBqMDJkSjZsTWdRZEplV3Nhdkk1ZHcwbExOWktL?=
 =?utf-8?B?cmVSQnRPVExPQzhmRDN2ZGQ2NXZsVzU5MVIzVUdZTkoxQ3F1MTlwZS8wblZz?=
 =?utf-8?B?L08rMjZac2dBbWgwcFQ2RVY5bnVRcXRsQjhlZ0cyaUYvVHFiMkpSVGd4UFY1?=
 =?utf-8?B?Q2hNMEJPcTlST3R4bElsb0d6VDlEdzhPNVBjR0ROMUZnbk5NVE93L1c1aG9H?=
 =?utf-8?B?ZVVodXdnT0Eyb1ZOUE1kOGlvb3Jva3BpT0hJbjJlWW13dy9xZ2xHb0dMZjVF?=
 =?utf-8?B?dGMxOVh3VkJaNkhFNWdIMTMrb2V2RzdvSEx4a0J5U09rZENHL0lDVXlGUnBM?=
 =?utf-8?B?TWcvTERndEJqTnlWSitUMTBlTWNxcUxVQlNyWldCeUVydGNPRjlUdlJIcFJD?=
 =?utf-8?B?aWNMcUpTWWFjaldxRE5ONXZ3Unc2YlBUcmJMUE4yTHRQUExSTXYwalJ2YzlM?=
 =?utf-8?B?bEhldTlIYWFoUUhwdk40R3g4NmtkOHdTOHFqWGRjWUlEeVJibjBxaVY1Z2pu?=
 =?utf-8?B?TWcreWNKYm5nSDdkRTUvSzJKV1VEMEFaYSsvVHlZMk1lTlVSQUhUMWZQYXVq?=
 =?utf-8?B?aHpIaG91bkY3VVV3Nk5jYU1oYnlJV0hMU0dnSzl3bitkaEhaejJzK2RieFVE?=
 =?utf-8?B?N1liRUZlTEJQMStxNkY3bHRpVHBsMWlHc2EwYW9sYThMa0o0WCs1aXpiVm9x?=
 =?utf-8?B?em5ob1BSNU9ZTlhqSjdpRUtzVUxFam1hbFBwRTVOMmhicjVveHQwVHZnUGJK?=
 =?utf-8?B?L2RmUnY5R1kzaHk1UXJWSWJJV0JIQ2d1T2d6R1l1VGFzRkZ1NHhGOExtMXpR?=
 =?utf-8?B?dGIyNVMrMTdjd0phbFduNk44TXR1dGxsdlhUWFZGTEtPQjZaelVHcnNlTkRw?=
 =?utf-8?B?WGdMU0wvRnA2T1lmbnVkVHQ4aWxUSzB6TnlZNTBEZDFQQ1ZBSENHZSthVmw3?=
 =?utf-8?B?dXJlNlJNWkZBUDZjT0FGeVB2NUNkTkZ5NXhPOVVDQnhQb3VjVzRtUWJ1WnJM?=
 =?utf-8?B?RHVIc3FweHBJTVNTQ2trdjhBTGZZTVhCWXZhelRxK09LZWp5YzBpZWlFa05I?=
 =?utf-8?B?MmdNME40SmYyR0xRNGtjUXcxOUVoRitxRW01YXNJYU04bGtzZmNQbzJBak53?=
 =?utf-8?B?K3AyZERTUzJIYWVZeHJyWE0zRDVHT2JNK2tqbmZWOGtKM1FHc01yYno2K1NE?=
 =?utf-8?B?MDR3TEJhdHFQNHlaUDg0eS9ZeGlTTEZ3WDE4L2VVL2tnVG1LYVpiYjZkZXhu?=
 =?utf-8?B?VjZCRHNWZWtXOTZtb21yZzlzNW1Na0FITnJxUmsvMndQd3h4eFVsL1YybDZF?=
 =?utf-8?B?bm5SVXRLRHV3VlpuZHRFK2V4SUs0T25lZVdrek9LTGoyNTdkOEo5OXQwNjhR?=
 =?utf-8?B?K3RHYXhISElBa0xTVENYdWtTOTQ1VW9jZUF2UDM3VGlUNXA3cjJIcFVmQnFB?=
 =?utf-8?B?bEVxbnIxYnBrd0hSYmo1STE0bXpiVjRzY0JhSC9ZY3ZMeldVUDNJSWdIQmds?=
 =?utf-8?B?N2U4eGlReHpDTkNkby91bHorMXQ1RkhUZ3ZCRUxwN2dGZEx0Ny9wTXN0ZFE4?=
 =?utf-8?B?dytFcGZFc3JINXhWZUdPQ3M3T0RqYmNOdlU4VW1vSGRLRThka2JFYVRZcnN0?=
 =?utf-8?B?dElmUkRTWitMRWpmclRCajEwMXM1MEVtY2ZseXdJd1c3eWdYQTMzcStILzJj?=
 =?utf-8?B?SVBSdjRxSGpTQmVCNzQ0MUcrWU9XWGU4S254ODJ4dzY2OEdwdHVMV3hDdlF3?=
 =?utf-8?B?MkFkUy90c0JDMEVxcmhhYkJFaXJYRG1rK1c0c3haZW5YcVcrdzdKaEpXekZI?=
 =?utf-8?B?U0hXVHZKVy9JMWFrQzd0a2hnQ1FSRnZ2MEpCUk9KbGRCcHN6WWwyZ0FWWmZB?=
 =?utf-8?B?anFpWHliYngwSDhEQkw1NDVuMURUd01KWWRDVVRLclpLaEV5TEkxb0xqV2xS?=
 =?utf-8?Q?YY6Py8XUHoYvEL5OldB00vU5t?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3bdd3940-33cf-48bc-31fd-08dbb838cf06
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 11:17:13.5380
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: SHm1VW0F4yh4LWMUgZ6ZNXcAf2n88i/Cpgw2LIADZudnSm7LDv2fBEqvZ7ffp+LIi2C7n/GUZAtL/LfIHu+xtA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9213

On 15.09.2023 22:36, Andrew Cooper wrote:
> This property is far from clear.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Mon Sep 18 11:29:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 11:29:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603951.941109 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCR6-0003iV-Ji; Mon, 18 Sep 2023 11:29:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603951.941109; Mon, 18 Sep 2023 11:29:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCR6-0003iO-Gh; Mon, 18 Sep 2023 11:29:04 +0000
Received: by outflank-mailman (input) for mailman id 603951;
 Mon, 18 Sep 2023 11:29:02 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiCR4-0003h1-GA
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 11:29:02 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20610.outbound.protection.outlook.com
 [2a01:111:f400:fe13::610])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 90542cc6-5616-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 13:29:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8412.eurprd04.prod.outlook.com (2603:10a6:10:24d::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 11:28:56 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 11:28:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 90542cc6-5616-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ardmNVBHj5CI/XaX0K7HpaN9ROqTt8K1eZfW20UfAXKz/z7cLV2aAuLTCp5flimY5akWpEq6joQ0rqSREDg/g5MBx+eibTrjQMr2E12y1g69jxo2PU5fENDSw8CTqofbPHWL215PYR9N7bIyCbsmSU0t6Byb+PYsMMYCoIk65BBUOdxOi1HR3p7Arq6Y33W7qhm6SCoSMibZiKBnRBFJ6djHvEotaZNv7vt1KVR/AQL/q3UVZO5ANnXdPsVzlvA96XqcAOqpulNZOYuOJUxSJVRadN1b0tBQRZKr6MC3evCDQRgzGwt0mE/0mPedBcMEd0sh21/60GlY/dzEc8ED0A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=2Vp9355iLGkTVXUnf6hvBqzjJYfAaWD4xULBV4BMvK8=;
 b=Zp5vxJe/tYtiWHaNzja473vZpCNoGNOtU3vADpzkoj4Zm/axzmb2WdJO9B7KgRsYwk5TqTt8Ap1eixZzxIgf9ml05VXu5UlvuQwpzgZVQl0njeWTvjISvYHAUTcehtEXftqV4WRtfR86qqBOkHiwtHcZMM2nXhkUD5fKcLqK3aqthDfuD6UrBrkLT84BArohHz3O+3zK5q8ZF0MCmHzxyl5I+8cyg19d4VH6YSYmEXrg7TAyI5xwNLG1Xm3Oo6AQvi+Fk+NWKrFZtyB+DhLtRoRQh7EaKxznFkqJbedsCXV4jNNSlU7jPx8Ksunz5tg6fWdtbz7/2PSg0+p1xFD0LQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2Vp9355iLGkTVXUnf6hvBqzjJYfAaWD4xULBV4BMvK8=;
 b=fIEZ4XHf6uxxWPcfFFLUtg9T04PB07lNPpxgSErqnEb/bd1oEjTHOtK6ptmgGkBhihLxf1TKjyjRs+3uhQlFUHucDUXavDvkunrSJ7i75nxoWb1o5VU9E4KT0R9gTtru5hilzHugmOhxGVV2JZrNrp2bUtWwHIGmRviLQXeO8dSNdIgb+UF/+XKK26Qa7F7BguDD3meTRW0Nh7lhyWS/66RLMPcWgTl7qcWKX9zhBtmyk5Yo7JD9nJZljZnfqof4vxu2AHEjWJSiPXW2MdxGZwTshCezdh46cD/GI20zcRPl1lbTA9Yry7qSuzAW8zC3dNEIFKerX7/oych6d8fmpA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f6b02336-4637-15a5-0c7d-33283c65e090@suse.com>
Date: Mon, 18 Sep 2023 13:28:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 2/7] x86/emul: Fix and extend #DB trap handling
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-3-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230915203628.837732-3-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0076.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9a::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB8412:EE_
X-MS-Office365-Filtering-Correlation-Id: d644998c-42ae-4811-c830-08dbb83a71b9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	EmAS/s1VqlWwbfRbiSEw3WEGxthtT4O7dI9+AxMxDm/pxbvWVkyn8s353AncLeLf99pFpQlx2NH7bBSy734KYzyZcTe6k9l3uWVangNovxw73g/nOPT7aCSaoPnPol83kMEZVsy8umkVbDlgFFcHa9+dUCJRnBcYoBL/icUDQujEe5rSxSFL4M1FMuZ0rZeyQNQoCnVbvKfy3RDFc9yY1cN6bPfKW25n75Uj/H2V4Hxrsb3A+G2ecklzafTjQj7kXNvB0i0ScEpNQkgfMYyjojIlZi73ncafn7tfsoj1Hz333ZV0XfOAi0zOPvtbtu8YzZ+7BZoCsQOWBv3s39+rZpMxUaiXhp+zMq2bz/TvLNjUPzP4NHB+q0Tg80c7QbbmR8rdTKCVTv1RqvkOZ/2x3yAc/pHUrc3lXgYF8FhlmEz/sMl+vUF1bDURyndRkQUEco0vjQ1ZdiwscDE6dEtD7PoYNZ7zJoaCpmF+1+KnNw2//aFxRpJSfH3Wc+RdeD0K510n2Qh/0IaNyVZe1EcrpK4OXVvK5VlK17h8xPCjgVcGntBNRlBoBJdIY/ic89+v5SqYjhLAMkL4v7TqVs8PEBN06XSODBurc8UK65U62QYgvH5pRuX9Oy9B43xr/c1sk32NBpMdYJ/83pFgHEacTQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(39860400002)(396003)(346002)(136003)(451199024)(186009)(1800799009)(66556008)(36756003)(31686004)(2616005)(26005)(2906002)(4744005)(5660300002)(38100700002)(86362001)(31696002)(4326008)(8676002)(8936002)(6916009)(316002)(41300700001)(66946007)(54906003)(66476007)(478600001)(6666004)(6486002)(6506007)(53546011)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MENtcWl5ZS9xL2NmRmZQMEl4cXFqTUZoeS94cThmaFFOY1JBQUJySXVWNWdG?=
 =?utf-8?B?NUI5NHZRYUptaTBPK3dzNUk2VU02Y3RWRjBNemlBMURETzBZUUxXT2pOakla?=
 =?utf-8?B?QzFOdmx0T0Q2UWhJdmlQVE1mSU9IeE5VLzJUWjhrVXpNdTFQYms5ODY4M3NQ?=
 =?utf-8?B?enJxY2p0cUMxSUt6eWYrRm1GRVIzTFhQZTJ6SjZFd3d3alVuNno1cC9Jci9Z?=
 =?utf-8?B?YW9ISk5Ib1ZoMFJyUmhjUTQ1eDFGbGdlRkdhcWh4OTV6eWNETDd4RjZQOVk2?=
 =?utf-8?B?dUVDWjJZZjc4SWsrN2xBUkJqRlhxT2ZLKzU0Z2o2dXBXSXZoYUdwYkFhcXFV?=
 =?utf-8?B?SEgwUjhFT0VVUlh6dnZtWGVQYllRZ1pHVk12WStiY3crTkRmNnFMNTFMQkg3?=
 =?utf-8?B?N2RmNTUyVVNXYi94eVY2VjJZN2hycDcwbFBrZ29tbkRBSnk4dGhlejhNTVpa?=
 =?utf-8?B?bHNRNHN6THdza3ZYVjFGM2JRVVkwQ3lWUzEwaTg2RS9udVFmb0JxdENnK2lS?=
 =?utf-8?B?elFsbWpYa0hZaFZ5eDdZYlF0RWM4eVhXY0FHNWN2WjFVQTc2ZWY1WmkwZ2Z6?=
 =?utf-8?B?RWE2WUdjZzh3UHpwT3c4dlMwMG9vQk45L0ttcUFNNUdrUmR1L1I2MzVlSzFp?=
 =?utf-8?B?R1ZPT2VBMTJHUmNWRkwybXB0VGhFSEk4eXIrWUhjV3RNTWRMS0Z2dFhZa2JT?=
 =?utf-8?B?NWI5SG8xWGQyUjF1TmRpT1ZvbUluRHFRNlkwU3JXaGRqckJRUWhURm44YVdM?=
 =?utf-8?B?RWZIMGhHMlM4NXJKTUJQVm9hbWZvTDQveFpKb0x5ZC95c0ZONmhwa2RWemlK?=
 =?utf-8?B?UE1oWGlER1JzM0Z2cWhyNDgxMXVxUnRsU0xRaTkzZE9yWERJdWYwYjhpckRX?=
 =?utf-8?B?VGVCZkJKYm9DS2xrdHNaaGpVQ0I5Vm55MElOMjIrUmdvRmMzc3dMci8wT0Fw?=
 =?utf-8?B?SktubGxuYzFOaFBsNGVsNUhxOVoveFF2bWEybThwUTVVR2hBSHd3K2pER2pH?=
 =?utf-8?B?Q0ZxNmRIcVBYL3ZaSENFWDVQQ3M3VzVkd1NvZi9MOFE3bXhXMVhZK1lCOWla?=
 =?utf-8?B?a2Z4eUc5QWRiYXdMUlRxT2hSaDF6SFRYaDdXMWo0MC9VSzBxbEtPQStxSVlD?=
 =?utf-8?B?dW1FUGpLYUpTVzI4bDdZRjRTNG9sNDJUT0hwamZDeFkzVkQyQmVCZ2tZT21V?=
 =?utf-8?B?b3RTQnZsWmRXbnJncW1hSEY3dFlRRnREQ3ZMcmwzaXVETWg1UkxWTXNCSVd0?=
 =?utf-8?B?TEYrMndSeHludW45MTlveXJZSFZCd1Z0NWhPL1Q2KytoUFJ3QVY4TlJQRWVR?=
 =?utf-8?B?b3RjSlp4UVcyaVY0eVhoQ1c5R3FNRVIzUnF0NlBxQmI1Y3hDdjdBcVlIR1dQ?=
 =?utf-8?B?dTZaemZiQllDOThwTWwzUDlaS3FVWUltRjNxcTc3Z0tjZno1TlVIN2xUTith?=
 =?utf-8?B?cTF2QWwrTDlMbGc5cW1TYkVncTUzUS9Da2hUd3pDSlY3dHNRaGk5bUxyZkU2?=
 =?utf-8?B?UWdKaEIyZmRyL01lZGcrd0hEMXErUHNuYjZMTTdtV2t0NHdGcWF0WForelUz?=
 =?utf-8?B?ZGhkanpFNTFURzNhbkFyVkQ2bVVXaVMrUURoMHlmZ1Z1VmFWeVVHcXEwMzMx?=
 =?utf-8?B?SVFBMFczWkNVN0laTUhNdDlycGRKYzRVYUtiejc3UUI1MVJMVVk2ak4wTFI3?=
 =?utf-8?B?Q2pPK0c1WUFHY2JkM003SzRrY0RpdVp5RE41TUpQay81WlkxKzhFREpHMGJD?=
 =?utf-8?B?WnlJbkwwaUlqQ2JZbEU4RVVaZWs1dDdWK0ErMWxNcFhHQjBOM3VwYTdnUENL?=
 =?utf-8?B?RmhKeUpKZTJqR003UzFEci85NE9hQ0J5S3NuQU9jdGNuclZYT2JFOWg3U0lM?=
 =?utf-8?B?YzFZVjN3WUtyczlSa2VVekFnY3U0WjU4bWVSOGxGTFkvZURTSmZaTE10eG9a?=
 =?utf-8?B?ODVGVXB6Qk9JaHRSNDlVTURLczdwVHRmSUNkaHVCcEF0N3ZLVmIvOHBSMkp6?=
 =?utf-8?B?ZkpYc1dlSmRxdlR4dStJdUhjaVVXSFliVDgxRTV1T2UxNTYrb0t5R0Fac0Fy?=
 =?utf-8?B?T3duOGY4bi9ZUnQ4TEpTd1o5U2VpTU9TeHdsYjFnd0JIQW82dEw1ejNZanI5?=
 =?utf-8?Q?ACMcl2BHox23JTmoAqy1AArzm?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d644998c-42ae-4811-c830-08dbb83a71b9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 11:28:56.0695
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: x74Ykhl3oRLWwo9PmygNJkyULc9IsRLGq994POyROC2eabFj0m8GJjMPoj8OIU3pzGpmLO+V2kaj82MB3tUEJg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8412

On 15.09.2023 22:36, Andrew Cooper wrote:
> Lots of this is very very broken, but we need to start somewhere.
> 
> First, the bugfix.  Hooks which use X86EMUL_DONE to skip the general emulation
> still need to evaluate singlestep as part of completing the instruction.
> Defer the logic until X86EMUL_DONE has been converted to X86EMUL_OKAY.

Doesn't this warrant a Fixes: tag against 4999bf3e8b4c?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 11:30:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 11:30:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603957.941119 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCSU-0005S7-To; Mon, 18 Sep 2023 11:30:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603957.941119; Mon, 18 Sep 2023 11:30:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCSU-0005S0-QL; Mon, 18 Sep 2023 11:30:30 +0000
Received: by outflank-mailman (input) for mailman id 603957;
 Mon, 18 Sep 2023 11:30:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiCST-0005Ru-Pr
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 11:30:29 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20626.outbound.protection.outlook.com
 [2a01:111:f400:fe16::626])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c42b88c1-5616-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 13:30:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7597.eurprd04.prod.outlook.com (2603:10a6:102:e0::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.24; Mon, 18 Sep
 2023 11:30:26 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 11:30:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c42b88c1-5616-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FbMztNhPewpouHWzdLqzLOIG0jAsDXutlgP9LN0XXpHP/3uHVoPjLHuzRkb3hlnmsfNntlerzap6MG0GdG/Iu/nkpNaFCY23sxx6c1sbf4xOgLSk+GTnMkiyqsmaDaYWfvmQDSwK1ZQ50fj9p+RNi9FP29LjpQ+6cBJWci5jUGE9ifsjOi9cRxsTVlNmoFos2c9AkzGnf9yoHkszJYBlrQXTlre8eOV7g9XHysnYqIE7TsbGwmFgdPjRAiX85VB0Zt2/yqSkgjMKkEncaBfNfgPjTofZvhUsJSH2ymTTzR7oAObfL+yYcJE6hJ9ZTmE4NThztDUX0j8BDeTPXPusPg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6JDSYxVnSlz5lwFX4hWkdv2lsNrn9IqMBRfjug9tiJs=;
 b=ONnF8sjcOVxdHOPNGb3pgO8/plEKvWj84/84FootQUl36kgBmVfubEN0A3BrLsuI/vEK1W00TaBqalJ+dL9p72ImKiSmShXtmHwh4tsCj2qGF+2swDXBFrlx4fMMkstLn7R/YunclAWMA+6v0beWUAQprFKIgD0wJRLQoe9M+J3rTuxPG2STMtXHSUK91zxrXyZhWnEzdlT7Lpv8xCQdGh1xW7mZaeSNXDqyTkROmWt4foCXJMp+Wxyf8nN70153HQwIhuzmw8Q29Ju1Jxb6cYg2UV7eJWXMbhzD9pRQciz92wEO3EZBk0bghQ/4Zrx6dMxm4G/+EviiUBgOKBp7Mg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6JDSYxVnSlz5lwFX4hWkdv2lsNrn9IqMBRfjug9tiJs=;
 b=TGWltdL+7d+ofFoaAoghXCpDRVNjgXTrea9WWRCiat6+5md4K/nCO4f7YPXoplKfIxFnANrw/9K41UA7RrrCxIQ0G67Li8oYRZ0AII1l/1urvAWj1byvsnD8zGT3DcJBRppJ3L639PDrGAgg3rBCt9uXERue6BCm7V7zt1xFpwILNzZiqUw8bhmnlmpWb4zhDsQGw/K7cbSNcb64MKQVD9SdXY9zJAkWM9VY88u5eovUL7UF0t3edtawx33kBCAUs9rjK6jAmjdM7/5ypGTaPlAgJo0tLRauYDesZeiqtyEPMNBdfJTciyjnThX7XnmrNqVmZ149VkBy+hRpNrKdnw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <311e2920-5e91-b9dc-77a7-263272a79a90@suse.com>
Date: Mon, 18 Sep 2023 13:30:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 2/7] x86/emul: Fix and extend #DB trap handling
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-3-andrew.cooper3@citrix.com>
 <334fb537-ef7c-97e1-3274-736c4a2549b6@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <334fb537-ef7c-97e1-3274-736c4a2549b6@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0098.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cb::15) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB7597:EE_
X-MS-Office365-Filtering-Correlation-Id: c026c74d-ee6c-474f-9447-08dbb83aa790
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UHZUfCGYU0RH6akt8hLMZre48zOhiQZCdX4kZ8lvk4kUdY+yNnTVenG3aTldbXkcEt41+98g729BOY6nlbLeiFLiYPRGgEkHux0eQI1k44vEM5n9ysBjGY6kEX7pgCzvPr0kRN0liJB8WcBPg0vA3RnAYunj4QdTJhKdOOP2Q4BS/KPXVSegalJFUnJ0EZJnvw8a8RfEUzkMPzTSIbDi8FCbGqKtzQCij6N+9YD6cCAdztRB8GzEmDeYd8ccBwZ1Alo5h0ydebaO1xfYn9L7T3HvX30LxbUQvI3SznIINOxWUC3KwBaiBFoQeFY7NX6nNkpapai8puziWMT+Xt+ww9J3fr55UzKtKA+Ksleng0ppg/y6u2mRBqLPhhHbqkErGB+jg02veFhFN386a/ikLZM+BSFp3sZ9TkvGGRrtSL/OU+3TJrdUQIvTdtLwwKhYdf31oQesi3Lyfq6+3KZRJpc0art0WQ0zZIQJnr9Hb/na2NUAwSMV+ODFtojeORLcrA0R34HKDH4Jc/pWEdKJpXVRrl9Tyb9MWAcZ2KjbkSbj54G8BOfGb+sT34JEr1wXqLQIuQYFjQunESm2EbNn1zFq10PbslO8pBdyx0xptH/KGzH+/AlobaQyZI9zMDj+HzEM2Kq+5rIxfwvpKJGFFA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(346002)(366004)(396003)(376002)(186009)(1800799009)(451199024)(6512007)(6506007)(6486002)(53546011)(38100700002)(31696002)(86362001)(36756003)(5660300002)(2616005)(26005)(2906002)(41300700001)(31686004)(8676002)(8936002)(4326008)(66946007)(66556008)(66476007)(54906003)(6916009)(316002)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cFR5dlkwbVpyWWp5SmptaG9SaVJhY1JVb2FQQXFmZjU3dUJSS2NyMlptSWgw?=
 =?utf-8?B?dzZ6RmUxOUR2cDc2T3A0ZVBGMFZtU1JLT2ZkenZLY2RrbllYZktWRE90Tm5M?=
 =?utf-8?B?QUhuYjhyaU9RcUYzK2xpcEdzVHBiaTJaMGZwWlArelJNamdVcmtqWk9BWVpr?=
 =?utf-8?B?dDBQSVFxN3dvbFY5WDNJdHpudjFUTFFiS0JSeEJCYmhtUitOUyt0T0ZPZmcw?=
 =?utf-8?B?MkFSdDZFY0hXYjBOd2hUek9wYlQ2RWFFTituKzBkazFEMmRmVVF4QjBJZEJk?=
 =?utf-8?B?eXh0T2J0RW1JdE93ZnBtSE0zSEpkdEJPamJHWmFrMnd1WEVRNkM2NlMvV1Ro?=
 =?utf-8?B?VnVYMDlkaWlDRmRJR3FocDJUZUlJNUk1QTlJUjFIb3piaWpGbkFVRVk0ZTJX?=
 =?utf-8?B?bnNSTlBSMmZRa0RLMldsdzZoYUI2cnBpN1FyY3M0dWMzZFRGbnYwYVRhb0Uz?=
 =?utf-8?B?MGpBbmUzem9KTXFzcGlLajVKbDR3WFZWWDF6VWk0STBhOFdiNGJQTEE3UzUx?=
 =?utf-8?B?Q3liMHhGUG45eFVpeFpXYno0Q2hleVZiOTl3RGdzU0FKbTN1K2lIQ0NZekRt?=
 =?utf-8?B?OVBIZkZJRUpKemhXeTZhMGV6QW1PRmllVmw1bTZLLzZKL2RDaVBYUHFXZUV4?=
 =?utf-8?B?aEFDdkZsTjZHS0o0TlpRaXE1N2YvbG51ZjY2SUExaEg5MVoxMW82MTNHNXBN?=
 =?utf-8?B?UzlpbUZDcVRlb1c2VnZnOFozVWtUUnEwUUJlNlBOUGd5Y0hBVmw5c3dCMTFy?=
 =?utf-8?B?S3BOWjNEQk41VDVsZWtCc1A3enBRSzlURVAvWkVYUWFVcXYzQjl1MWtaYXhL?=
 =?utf-8?B?YjRmN2dwZ0NCT091MTRlQlM2clR5YmtoTjM3TUVmekRyVzV3c2JraHZsVjQ4?=
 =?utf-8?B?WDM0WVY0RGRKTCtVK2lSSnFvY09tRGkxR3FnUEEzczlMa2NKY2JISFlKNUFs?=
 =?utf-8?B?MHdPeHRNekpLNThzd2paZjFCdnk2VnZFM2NqUmkvOXIzOUJSYmVaUktPd3pr?=
 =?utf-8?B?aUJlSnFYcVZMeTBTdWlmYU1GTThSM1J0bGUrc1NabWc1OUZvUEppOFQ0T2VX?=
 =?utf-8?B?UGJLcUl1Q3BUZExoUURqQkVlbEtxeEpJbTdsWlVwNVB5MXNHVHdNMHVvbndV?=
 =?utf-8?B?Mk1LTHBJbjd6RGJIVmlETWJ2WFU4NEZBaWlUaUVISm1uc3h1NU0ybEJ5aWds?=
 =?utf-8?B?ejZwcEtWN2YybkpqY0o2K3BubHNNWjJpcms4MlJTbXlid0RDWDMrWFhEWUFw?=
 =?utf-8?B?KzFyK1VNcUk0cVlBYlluUEF3U1Ywc1NaMUdKNTN4RDlQZDNSUUViMkJBbEIx?=
 =?utf-8?B?RnljMzNHSU5ibkREUU0rSllSb3BtMWgwOTA4MlBXYUVaRDNnZDg2NWNkNDFn?=
 =?utf-8?B?RGRGbXA5RGExWXdyb01XV2xZSGM4TlorbERiUk1nWkxPVDJBcDZpS2NjNWpU?=
 =?utf-8?B?RUN5MHMvOXRHT2RsWkhsRzdVR1RYdE9uemxpVlF3ZW0zVkZSbTcxUVdxTzJU?=
 =?utf-8?B?RjQ0WldYUWQ2R1VrNHpyMWtodGJ3cm8raERhc052QitqS0lNZ2YvSmpsQzB5?=
 =?utf-8?B?eHFDQ2M1bkhNbzZOUmVuQnk4a2h3MEI3R21md1FDT1pDbWQwV29VZmlmdkEw?=
 =?utf-8?B?dFpxT1hXNnhqVEVIR2FNZkxCWGdmckIraC93UjB0SFY1YUxma2pxeVRZRXR5?=
 =?utf-8?B?RWZYMDhlU3FQT3UwMEhyZDVzczdzSDRrWjE5RTQ5S0VwNDNKaXMzNGdLdGxm?=
 =?utf-8?B?U0poM3pKOXZsZUVhcVZqc08wZGlkdlJ2NW5tVTl6T0FTci9UV3RsZjZqTEdo?=
 =?utf-8?B?NDRCWE40RjBnam43Z3haQklpSTRUWU1lNTlYUW9QMXp4b2F5SFM0WWJFTzVz?=
 =?utf-8?B?b2pJeG9JNXlRQytpck05RFZ3ajRxb2g3alhhSWxxVXpkQTBvQkJVK0tMMzFw?=
 =?utf-8?B?YVFSOVp3R3NKNWRvVitBRlVWNnN1U3pGeVROVmJDV0wyWDlKdVp6ZUVKU3F5?=
 =?utf-8?B?K25WVHpZV2NRclZGdmRpOWlIaHpuLzBkblVUZUs0MzFxZUt3VDQ1N1lrUFhW?=
 =?utf-8?B?a1lTMS9VZU5zSEJKRjZhSWd1Q3pCNnFuSXlKVFFuK0kvZ2JLR3drcm9mOTBG?=
 =?utf-8?Q?0qUX2siNpEmY5qMJr3hzGmTi0?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c026c74d-ee6c-474f-9447-08dbb83aa790
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 11:30:26.3215
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xiw1NbArYWmTotT6XXsk6yE52obANPsse+Dgi7KEc6tVf4DPHiTCEDtOqtsLOBqrIPkctZoFML/fzOEfle48cA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7597

On 18.09.2023 11:24, Andrew Cooper wrote:
> On 15/09/2023 9:36 pm, Andrew Cooper wrote:
>> --- a/xen/arch/x86/x86_emulate/x86_emulate.c
>> +++ b/xen/arch/x86/x86_emulate/x86_emulate.c
>> @@ -8379,13 +8379,6 @@ x86_emulate(
>>      if ( !mode_64bit() )
>>          _regs.r(ip) = (uint32_t)_regs.r(ip);
>>  
>> -    /* Should a singlestep #DB be raised? */
>> -    if ( rc == X86EMUL_OKAY && singlestep && !ctxt->retire.mov_ss )
>> -    {
>> -        ctxt->retire.singlestep = true;
>> -        ctxt->retire.sti = false;
>> -    }
>> -
>>      if ( rc != X86EMUL_DONE )
>>          *ctxt->regs = _regs;
>>      else
>> @@ -8394,6 +8387,19 @@ x86_emulate(
>>          rc = X86EMUL_OKAY;
>>      }
>>  
>> +    /* Should a singlestep #DB be raised? */
>> +    if ( rc == X86EMUL_OKAY && singlestep )
>> +    {
>> +        ctxt->retire.pending_dbg |= X86_DR6_BS;
>> +
>> +        /* BROKEN - TODO, merge into pending_dbg. */
>> +        if ( !ctxt->retire.mov_ss )
>> +        {
>> +            ctxt->retire.singlestep = true;
>> +            ctxt->retire.sti = false;
>> +        }
> 
> I occurs to me that setting X86_DR6_BS outside of the !mov_ss case will
> break HVM (when HVM swaps from singlestep to pending_dbg) until one of
> the further TODOs is addressed.
> 
> This will need bringing back within the conditional to avoid regressions
> in the short term.

I'm afraid I don't understand this: Isn't the purpose to latch state no
matter whether it'll be consumed right away, or only on the next insn?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 11:38:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 11:38:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603963.941128 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCZg-0006Fc-J8; Mon, 18 Sep 2023 11:37:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603963.941128; Mon, 18 Sep 2023 11:37:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCZg-0006FV-Fv; Mon, 18 Sep 2023 11:37:56 +0000
Received: by outflank-mailman (input) for mailman id 603963;
 Mon, 18 Sep 2023 11:37:55 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiCZf-0006FP-LE
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 11:37:55 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20628.outbound.protection.outlook.com
 [2a01:111:f400:7d00::628])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cdba85d6-5617-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 13:37:53 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7252.eurprd04.prod.outlook.com (2603:10a6:20b:1da::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 11:37:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 11:37:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cdba85d6-5617-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=h4Mm9UQQ3TBegjQzNxa+czzVjgU46XLYtwuuKSl+0+/BsROYoUfjt6ha4+8rQi79MCxz/Ogbi3q9S02YWYHjfvA7uekQZtBT+osUb2QBZ6nN2qgv1CttTgNXfhvgd9Pk1QlTOq5PV4MJalpjMQ1R23wtDWZwnr3Jcw+eJeECkZ7ZSFRGE4pMubASHN+093K843YvWvw3bFaiwkxU2mQweTDcz2SafNBXuZtdBeTsJ1elqeML0TDt97iHdMNr0ENXpmSKq+arbyO/2oi3CqlcFk0mgK9tABXiu5mW7KlV3EJajysNGckhKLJPYvP9ggIJPijjZ4SBTeeZq/FBjCpvtw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OBBXnKDaDPIgpbRRjEy0lNB7lIJwAP4CIziXqymuf4o=;
 b=eIzaSZUl2PftkjntAdfhHLg8g7GikzcgPUJDRvbTlpYuFQt6rv50fIB3WIdmxipgnoxrNgTZnMqIspETQ6BmvGn9W3VZatyTeRqpIl28zzD7Vmqjss62a+UIS7CxNcqqQ3I2DZsnNLvOTx4xzuD0a/SCaB7CApSUcYnezZ8wU0kKH+6Nn1QXob4zgKgUJSTCfHtW/j4xoJOIb6qKs6Ea8j37xc4gW4l3iW8boRqxy5d4NwLXkwsw6XVXKy43VpiJ1tTUan3vRaQ+vc8Ywy6HcCFEgKNDdtvhaLdhNLbHCtoDBhDVs1xxnvg7x+WzznfDz964mqtQK5AxNrmu0QX4EQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OBBXnKDaDPIgpbRRjEy0lNB7lIJwAP4CIziXqymuf4o=;
 b=1+IY1df/B+xMTZK6VVeBiR76AAEcY6DWavhIZGMj+FX+dIrE5dQ6XwC5Qyzas6Qq1xcXf1AlCw37A3ux71F5s3yUyMUaz1wId8xqjCBTR7490HmvlyallLzEXka1XbbDiQMnhhdLBt08vzR3QFMwBr8YdubM8NUzGMna7dje5TqkKukH9iNtqlFyho9x7siwWEEx+mmOub8mt6SRtsRDQqi8Rky9CAkpoAoz65LBDdQ3yu8jEnk6HDRE1yTwo0phK/hAbCZw6uA+AK2QVplIPH6JyHy/bTWTzjTMnOk/Up6InyGT2c8OjCgJoptm2CjA6VbhvrTjRd1OddIA3UquIw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <943d1d28-08de-3c1a-5a64-6caa98cdba78@suse.com>
Date: Mon, 18 Sep 2023 13:37:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 5/7] x86: Introduce x86_merge_dr6()
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-6-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230915203628.837732-6-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0151.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:98::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7252:EE_
X-MS-Office365-Filtering-Correlation-Id: 2e3eb32a-e5cd-4843-8c80-08dbb83bb0ea
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	skLo+0pDJyGrotqeg0dzIk0Y+Qog9YgO0cmwOXbM/Ou4foPHYbFYfGNuTKCX1gtApJcOog2AVIuL+KaX5zOArKg3OD6uiLAFnWArzf3rqSzwV+Yjfwfa8Zvx4LW5DEcwgIKkYPZ9LEDQ+CWIaq+cUdkD7qo+o1nM4f+U3NHQ6BIFGX1zQ/lJ8oh3hnJcnomrmOTFjrhqFr7AUIceGpjREX7Y1HPVyMfUoYmbbXS5HhZ4sY3pfjbqnEJ+RXWlezRD+8zNRMWTV3rOBgwPbJEHiNt3UvkU7U6SJbKfdjXzFPoRXu8YHJAyL/l0cxc8GLMQzDGIjHeAdSlClrzNTNGXmUZhEG07xLytZl1jQ2GzYUeGf5L5kHV1w8RCyVEEfAwz10y8OAqJhfiTM+nkKfCN64wLrI1KbqJKVCrV1Ps06P9uKFlA46DcrxRaWWAMOIsRDCy7NAR3L7wV3IgfRCGn2SkjWB+Ls5vYsF8r701aVLDBM8ymGcFGpunl/BFYUHRHNya2gLizhqccIGBevzj5FOiXISWqRrUJEjbaomUlDofDqv76fah4tAAfmWhOCtlEHU33uqM/S3/pJt9fvUSks39J+Mfr/nSHGyVxxbSc+xatQTjoqtGcTaoeKyLJq7uQxZ6yYC7RUhm8bxTx8e6PuA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(366004)(376002)(39860400002)(396003)(346002)(1800799009)(186009)(451199024)(31686004)(66899024)(478600001)(6506007)(6486002)(316002)(6512007)(2906002)(2616005)(36756003)(53546011)(4744005)(26005)(31696002)(86362001)(38100700002)(8936002)(4326008)(8676002)(83380400001)(41300700001)(5660300002)(54906003)(6916009)(66556008)(66946007)(66476007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U28vb0RMcytUVDcvUkVQL0JMa1RLS2RrVkNZZzAwT0Z5aWZ6WFB2dk56Nk95?=
 =?utf-8?B?UEFadXZzKzZKY1U3TlZjRDRFU3BjenRSditxVmlwWHRzQzU4MGF4QzNCNU1l?=
 =?utf-8?B?dVZwbzNmRnlBZVE4WE1BMWxnMmNsZW5zMUQ3ano4Z1dkVU02dXFsRXVIcEdL?=
 =?utf-8?B?dW5zN0NuZ3FHaWh4R0RFNGpUdVU4WmplTktodDBqOEpZT28wU0E2Ni90UCs0?=
 =?utf-8?B?T0NJV0lnamVtVEVBc0pqeFFVbkZ4MWhOWWR6SWM2dFhtS3JvaGdjdSt4TE5i?=
 =?utf-8?B?empqeTMvWXZhd3RsemlRZmtrclNXTGtweFJMb0FCcWRQVWZqTEFhdWovRDR5?=
 =?utf-8?B?aUpiWEVMdjBaVkk3bXBWTGVyYUsvK1F4RUtUdkt3NDBDbVV2dm9vOXJUTEZa?=
 =?utf-8?B?R0J5aW1La0lsT0dYTFJmRkdKT0NWWS9EZmc5ai83LzM1cktrazQrRUoxK29F?=
 =?utf-8?B?Z2V4TVNCSFNibEJEeU8ydkxjeGRBTGpMOGNRN1JJb0pQMWlIZFFhZ0pWK05E?=
 =?utf-8?B?NXRwMk96dmowYWhGdjhEaHM0ZHZxbWRwWDlKRU8yQ25OREJqNTltUVhMWHQz?=
 =?utf-8?B?dm1IbDZZODVJWGhsb0NZcGhVbWVlY2NlTnB1VGhUZHR0WjNmUUFlemQwd2ww?=
 =?utf-8?B?RTg1MEVGbjFlYlZGMVdqbEFZWnVpV2NqUC84WGdscEpsd2ErMEZqaXNGYmNh?=
 =?utf-8?B?T1RDbG12UzdFRWVBV1R2Qi8zSnBjTTlXRWJ3TnhwUTN4VE1aMmQ3N3VtZnEw?=
 =?utf-8?B?WldyQW1nS2NPSnZzbHV3OU45ZXM3Lzl1VzdZemtmRW9vZHJDV2VYRWpXQ0tq?=
 =?utf-8?B?UFJOZFJmNGVnd1ptSmN3aTUwNEx3d3Y0TDdCUWwvMlpIT3h0c0plWGt1Tm5h?=
 =?utf-8?B?SXBRSis5UWpMOGVWbTFyb1J3TElaMTlhTkRKQjUvQXFpR0NFTGxaWHZEYUJn?=
 =?utf-8?B?elp2V0pxZVlCR0t5MS9CNFd3Tzh3bHR6ZTRrQWNvMUF1aWNDSHE3bURadlk2?=
 =?utf-8?B?aHNPNytiQVVjbjhRSXJVWTFGTWkySXllaUc4M2VzU2tVaEVwRCtSM0RpcEcv?=
 =?utf-8?B?aUhaUkxyOExmRnhjZDYxRW42TG1PQ2I1VjRESzNIZlpyeFpJT29yV3AzUTRp?=
 =?utf-8?B?WkxLUS9BdFMvOHZ6cnNTcVVqTWlHRFp3UmdJNHpadTcrVjF5ZHpqdUVMR285?=
 =?utf-8?B?cXduRVBESUlTVGY5ODArZWpBUHE0enRQZnR5U0tmV2pFYU9JejJXcDZ3WDNJ?=
 =?utf-8?B?Q3U4MEdjcWE1UHBnYjk1aXVRanc1aDU5TWNQTEdBMXBkeXpjZWtheERCdTE5?=
 =?utf-8?B?cFlYbVY1WUIzODZXaFFYRHM3TlkwWCtwVjAzVlpmcVhtc1c1OVY4bWJYMktp?=
 =?utf-8?B?QVVldFUvejJLa3RqY2drb2xCd0l2aHV3V3hsSUpPalVCaXRQMmtlQnJjaWY3?=
 =?utf-8?B?OWdTSEt6V3A4eE5CekpmbGlEaGN5NUFEbEcwNzk4THBRRjBlVjhQaEpvVmdJ?=
 =?utf-8?B?SlphczZpN2ZhdHlHa2x3bk5Pdmc2OVpCa1dFbXc3RnJPQWhtWTI0Tk5rNDNn?=
 =?utf-8?B?eHB1YmZxaU5FRnh2MUJHdVZ0c2dRdDJPQ3NRRUh2Q3FpRk4rcnpsaUxaU3FR?=
 =?utf-8?B?dGhrWnEwRzRrKzExNUFJcjJ2bi9BZlgzK1hBdU1hYTVwZDNpQW50M0RwVHZy?=
 =?utf-8?B?TTAxT1E1b0JpdndLNmV0YVJlQ2dvL2lJS2t0ZXZwZDQvNXoyUlBWeGV2Tkpl?=
 =?utf-8?B?N2o5ZVE5cVJTY2ZENUxrSlVkWEFwSVhWeFNaUGlIbjdoUHIwSVh2UkFUdmtn?=
 =?utf-8?B?Y2o4ZUhFTE9QUHJrN0NjU3J0RHYvOUhrUGgyVXl0T2hPR21FckxsZ1dITGl0?=
 =?utf-8?B?M0xSNHhXaDNTTk9kaUIveTd3WUhzdTljNGsySWVoTUlnOFNCdEFTem1JUyto?=
 =?utf-8?B?cXRacWpJYkwyMnZQSWJBVjBWUTZ2Q3ZmZ2hvTnUwcFZsNklmV0did1BHVHpw?=
 =?utf-8?B?VFZVbGJGbmJvT2lQMFpxYXY2L1NWYjluS1pHL0N1M1FRRk5hc1NMYUZQY2xt?=
 =?utf-8?B?QmVPdmNqcjEyYU5EdHhIc3ArN25sQUowMDIrRXpSNHUwRUIrdThKQmFlTW5Q?=
 =?utf-8?Q?Q7KK9VSZMxXXdwrQajjk1cu0z?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2e3eb32a-e5cd-4843-8c80-08dbb83bb0ea
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 11:37:51.5839
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: hrb17etKrUsn/2fXiq4UeXz9iEvkByEAR7fdCZIw+EaQDnx2RB6G4lDFYxlhV3zGDQMwPvt+dx28bHqyxHTRQQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7252

On 15.09.2023 22:36, Andrew Cooper wrote:
> The current logic used to update %dr6 when injecting #DB is buggy.
> 
> The SDM/APM documention on %dr6 updates is far from ideal, but does at least
> make clear that it's non-trivial.  The actual behaviour is to overwrite
> B{0..3} and accumulate all other bits.

As mentioned before, I'm okay to ack this patch provided it is explicitly said
where the information is coming from. Just saying that SDM/PM are incomplete
isn't enough, sorry. With that added (can't really be R-b, I'm afraid):
Acked-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 11:39:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 11:39:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603969.941139 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCbE-00077p-35; Mon, 18 Sep 2023 11:39:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603969.941139; Mon, 18 Sep 2023 11:39:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCbE-00077i-0D; Mon, 18 Sep 2023 11:39:32 +0000
Received: by outflank-mailman (input) for mailman id 603969;
 Mon, 18 Sep 2023 11:39:30 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiCbC-000766-NP
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 11:39:30 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20614.outbound.protection.outlook.com
 [2a01:111:f400:fe13::614])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 077a22b6-5618-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 13:39:30 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7252.eurprd04.prod.outlook.com (2603:10a6:20b:1da::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 11:39:28 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 11:39:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 077a22b6-5618-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Vxe2oc6nrinudmoHSweKhU8Yz6tTKMFdRnrOPJ3QwBU947/U/ER79yRslefRioRhKACEBeLamwHyCjZ8OwRSI7zuBheopcJmms4hs5DWSgmWpgZYM/vHa4aAQNDZ+U+mlg32Zrn0ywEXCltAWTxdQa2e0GjmNb671EDFukXk6KE2RTVCNifvQKbtWhZJweR/ShrDG4+pHSR1vi/GA5kAU7lLEskE1RXO8cxR3GqVq4xZ9trVCarxcRJJSkFRkwFwFG6lzYf8d+4QMh0P1lEHI1Y0UrLtoCcv8ri9z1gazBWum9pWrmyYSJ4QpEElOTC9YQLPaRzNf/XtMDwSYj7dBA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+7IJPx1HGFMhf3BOkeVsGK62ciu/3IBNwa9AVeFARr0=;
 b=BJPy6RiV+fjcWIlVqbcDvacRPtcFFcAoo5FGhiSP4Qn7E4GO0rKJUOG3Ym2t9NscWOrFxdsYk+NEnERLp2b5RWaxYb+IvVg4QRGlB4f8oqbw3pIPzhpi4U5BgkzI7+isP1mCt37idk7zBxe328qyCSVx2pYyfMC2l/h0hws5PLl7NWZ9zh1y1P1rPAQfedIp+17/yPRE46yfcCdWdEH6W9Y8HLn3uNJx5gGscNmie6CFUyinVR0y8rBLdXtgTIyyK1RXnmfuJG0zaSdsCFNDfncdJPL0r1Lwn4nrLfJXJubpwl74sx5neW1PB5g3AQU402OQUvqD1eO4gfXKxE0NAA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+7IJPx1HGFMhf3BOkeVsGK62ciu/3IBNwa9AVeFARr0=;
 b=k3+VLCG/zMHvKXJ9ji0whWVJ3Jk/Ky5Id3dafZPcWHsxiZvxk43+DoEFgwKN86KBiIxn8GVHJ9yrWAaevox+9GndVzUZ+QzA0i75hXyR1HugbJZGcSCzuXIPnoIsCMhXbC7BasjCKKAivaBn48K/ZkFsfHwEsIiaciHXHQ4vNhoqwggXgd49fD3CKyBhb5V+B6Pn46r/IHf4D0Gaori68VqJtcsGTD1AgRN/uDFN+nQeJDrWgoKOOyELMh0FROLXjyeO9XH0OwPxFWHRio8oH1EHgjuZNU9YM+7kwk3yInXSNZeiUfDIUDO8RFhclfxK9d+d2Xff+rbu90eNqXR2FQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <01233c16-647d-7acb-cee2-55d6669a35cb@suse.com>
Date: Mon, 18 Sep 2023 13:39:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 6/7] x86: Extend x86_event with a pending_dbg field
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-7-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230915203628.837732-7-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0132.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b9::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7252:EE_
X-MS-Office365-Filtering-Correlation-Id: 2637dc5a-7b22-41a8-4eb5-08dbb83beaaf
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5pIiEYYgtOe+MARIlcTSBQDQ72n7fxJ9Ca9yZQ3w8KvwU1p936WbCM+6cBNVp9wnlyZhWQFPO9Ws3h+eleSNN4PXMm0LCBU4GzlBURShm1BobNNqp33bsjUTKuMEYitysRxG8CgzoZ3U+mR6KNT3wWHWXJojIHNgGx9CtbDybjmSiA4AZmiLLMBKK0QnQ0PgiWOJQiY2s4l80Cm/nitJjA69vSM3V0ObIR+ZCtx70E/brcYL6LKHt2lVmokOqKZjdX2+gKWLoXBb04xP6WHNmfdN1kYQMG3itY78IxTXU+GEvBZFEcAXpNhx5uoxty0KrZxcG9y8BWG2jftd19VF/Q2Xq6+355KiW6tdbXBXS9ilhSYuJAyc5ao443mYPsrbPVEz3Rg71rt5ANHtqQx4Z/g4JDOAnQSiNp8p3pgsFjj7Qhw/3BVG+ntvfxG/DH8hd66UpVw+lzOZDZfJFd5UGEUN6dIKD/kNEuWbX1UD9pfpRCeU7u3v8H52wC1Ua1fZzoQDOH+DzSyj4HdHkk5WbifjX96oGilIb1LcVDk/C8Etp9mlxa/yEWeBu6MB+R19jrELnpIfwHj0glP/icJVIqVEuGBBxyu52od+IDGbdKU5ylnzBswP2gQHXwGBPBR7+svQdYYmh25Z5bEo/hsf8g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(366004)(376002)(39860400002)(396003)(346002)(1800799009)(186009)(451199024)(31686004)(478600001)(6506007)(6486002)(316002)(6512007)(2906002)(2616005)(36756003)(53546011)(4744005)(26005)(31696002)(86362001)(38100700002)(8936002)(4326008)(8676002)(41300700001)(5660300002)(54906003)(6916009)(66556008)(66946007)(66476007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UXI2ek82S0lNN2thM2s4VzhBZ1BnaFFFV2tNcnN2Qk43cFlPUExNdGtaM0RY?=
 =?utf-8?B?anhPVTVvbFZLYnJIUjZkdi82Z3lCWW4zeVF0bkNONHkxeEVINVcyN1lUWDI3?=
 =?utf-8?B?WTBFcmpPUVlMSm1may9vU2dUbjFwMm5IY0M4S0QrS0RubnE0UnQ3bGxHcENy?=
 =?utf-8?B?VDh0VUJyNENWZHRscndYRGdMQ3FvSEJ4d1lpdXczY1pKOVlGdnpWTEUyaXp2?=
 =?utf-8?B?QzF2WCtuaG5kakRLclFiOUd1ZXdOaWJIYmowS3QxajBlb3hMRHpVVWJPeU9s?=
 =?utf-8?B?YWVheGNpVDJMWlJJckczbnhBTWNvM2VKZVQ4aklHS3Z2T2VtZjEyWitibUpO?=
 =?utf-8?B?MFNyZ0djVXdyRVlIUVM3VXJ6V0tjS3o4N3VqM2Z2VEVuT2VnVW1xOEF2T1Zl?=
 =?utf-8?B?WXVwenQ5ZXJxdFBwaFB1MVIzRXd5M0Noa1B3djJGcEY5c2habHJqVWVpSXJq?=
 =?utf-8?B?NDhJRVpqV1g3MExoM3RSRUpwaFlPemtIVzVYelUxSGVKMzJRTHZhSTFkNGpw?=
 =?utf-8?B?ZnRUTXdlc0R0Mm52di9NbFJTbENxQ081THovVjYxbVhZdWNoSkZoNG5HSU8v?=
 =?utf-8?B?KzYwRG9Wd2dRVW9XQWpKNll6QWpZeEtLcnBCdFV3WTZheGx5ZXdZOFJ2NXVm?=
 =?utf-8?B?MGU0dmRidE1ZM25acGlRaXJHVWtIeDV2UVJ1OFAvRDBpM2lzaStEU2phNG5H?=
 =?utf-8?B?RHFObGRkLzZOL1RvTG12QktvbDdtU3VDQUd2cGhWNzhlRWZjdE82bktmTlhh?=
 =?utf-8?B?T25jdXQ3QXlVam5HWXhFc0JyREZXbWNNL3cyRmtEeXRweTFxbzlQRFc0dWJ5?=
 =?utf-8?B?SFA5VDV5dWd1VmplTDlTeDgxV2o4M3pDemxScE96cGZ4UHNxMTFGblZqWndB?=
 =?utf-8?B?NG9Xem1qWTVGTkRYRlpaY3NCbU9TYzJidys2R0JTYXB5T3Q5SzZtTjA2RWIy?=
 =?utf-8?B?d3Ftbm1sbUk1VkNCcjU0YS9pYlpLR3piL0p3UVNTM3A5V0l0ZmVIVHBtQWJF?=
 =?utf-8?B?TGRHV3p0RXI4OGgvdnB1akkzT1Y0Z2xDeUN0aENZM0FCU3NHWnNBZmkvS3pk?=
 =?utf-8?B?MWdLNVNqbHBlUEJickkwdEQySHRWV2tjS0R1UUtmUHBtQ0dPaDZkTDdjWDFm?=
 =?utf-8?B?MWhWMFoxZUdlcjdYdDhUdXROb2tJU2d2TFdoRENuS2lGbTJvVS9KMVo0YW1L?=
 =?utf-8?B?WHZZUlhPeTlJT3o0dTlZUVZKVTF3alRmcG41dlFTZ2lYNzRweU9JWjhoZkE0?=
 =?utf-8?B?UGxpUG9wZmxSWXIvOUE1QWVMdnk3R0J0Tk9CaTE5R1NLTHRRODNZa0ZpUzFH?=
 =?utf-8?B?eUY4eThYN3Z5bHd0VkU2TXJ6SUFDNzBYam9OTHo3S1AwRWF4a2VkeTJhVVF0?=
 =?utf-8?B?S1ZCZEduSkMzcE1zOWMzRnhGR093ekhreEYrZS9BeW9ZWlJqUER2czdXTVB2?=
 =?utf-8?B?NjRqaXZ3ZHAvRDhwTEo5dUd5ZVdZdExsTk9jeUY5aU1QU1dJUFhCRndHTFE0?=
 =?utf-8?B?ZGRuQlQrUjE1VWNENEgzQVNWYmtSRUtjZ1lxZ3BMeHZLZjIxYThVU3BYU3JJ?=
 =?utf-8?B?UWN1QlFRdjVCQngwQXl2VmF6ZjRMMjZBYXhpYlpZNDZGcUQwdjhrenViMzgx?=
 =?utf-8?B?VDh6ZDJVR3lxb3BIUndmZ3BDb243T1J1d3hjNUJLNFRXYjBLTytoSmdJbkgy?=
 =?utf-8?B?S01FR2xiOEFYRFpuN1ZQNnBEaGd0RWswbHhHdVhmWnRlaWpuVmh0ZzA0ZXI4?=
 =?utf-8?B?aEZseXlWOEhFSzhGY1drdC9GSkhoL2MrVG5MY1BDYXNNK1hPMVRTTkVRTzFh?=
 =?utf-8?B?V1BpdEk2a1ZCbEtqUzBNbTVCUjFYajZ0eFFJTGtQVGZOdU1xU2NXWXFOa09C?=
 =?utf-8?B?T1pVVFQwUVhMVkpYaHJEOEJlUDkyaytwRjNabk1mY0djNHh6TVhhcWZPY1dR?=
 =?utf-8?B?c011OEVobDlyZ3NkWHpFTDc2TlA3bkFvSEVmOGd4aGowMEpra2lpaE1ESWRJ?=
 =?utf-8?B?OUpBQk9PSmI4VVo2dEVCcDhvaVdxdXlqQ0dUVGZDRHdkdlZjZVRnQVZ6SmNu?=
 =?utf-8?B?TlpYV2J5QUpaVFVPNG5oRzJ0ZVNzMDVlK3NTZFc2WW9sWGQ5NWpRQzVrck11?=
 =?utf-8?Q?ujORROH+7B/v+O5JGqmXwEvhp?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2637dc5a-7b22-41a8-4eb5-08dbb83beaaf
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 11:39:28.4443
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: qt2SQNqjO/3ZSnpoB4+E3VuamVGbM/AP3/iNjYssIEY9oR23uYqfr/HprDzLOglu9B1m5yZ1brbzqvViFxCsgw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7252

On 15.09.2023 22:36, Andrew Cooper wrote:
> ... using the Intel VMCS PENDING_DBG semantics, and sharing storage with cr2.
> 
> This requires working around anonymous union bugs in obsolete versions of GCC,
> which in turn needs to drop unnecessary const qualifiers.
> 
> Also introduce a pv_inject_DB() wrapper use this field nicely.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Mon Sep 18 11:46:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 11:46:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603974.941149 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiChu-0000kQ-P1; Mon, 18 Sep 2023 11:46:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603974.941149; Mon, 18 Sep 2023 11:46:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiChu-0000kJ-MG; Mon, 18 Sep 2023 11:46:26 +0000
Received: by outflank-mailman (input) for mailman id 603974;
 Mon, 18 Sep 2023 11:46:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiCht-0000kD-3G
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 11:46:25 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2060b.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::60b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fe285423-5618-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 13:46:24 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9382.eurprd04.prod.outlook.com (2603:10a6:20b:4da::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.24; Mon, 18 Sep
 2023 11:46:21 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 11:46:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fe285423-5618-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hDnyX0PGgg1yTK5pUlTiX/+lyUl4TVyiCJfN9bxZOPefepITL/7bcEZfcg+pvQFx+BZmx+StsLIpVsAB4Eo8ngmWn9MVqVokvuXSEzErcTGdi979i7mRwld48W/8STe75R0sG9+VrMxlhrbYWStvkwQhK4Z0sRoLfH9RLv94o3Qd/e2JNLjWqkxGv9lgbEDloRKLhJN8ryJ1UJ8Im7/K5qQarffbiQJ7TDcP72roXE04J9LGGQ0dBPFtoEBehPYWsJIOk4H0mhy/PPJ+1q9jizqlFrHdCMG/seRSYUQWbi6da6XH9DsbUhyZ0EMxlt72ZqPC7DtwPmGKYcPza0hePA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=16/HsGxMSMAYDRdz+AA4pmHjS8iA/+e6BbAGyjHtETU=;
 b=LDGDhFaJe/2sugzj/m7M/vn1PRouVJPJDerntqGunMsZG1y7BaEFJUUVhd1MFeQJ5aHWYF6MoSTKEVVKgoquksitaYUHja6JnoHa2NxMmKN9P8olfOzoqtT1Sa/gNVmbh3NZUnoY0R9hqGgYo0mnijEcWj824exmrAAzdjb4W+PVYFkSMwwFFEY3pWRuvLMkQ4f5vsGBs+SLvaOwEC5Oroz79FYaFm5y12uMEMNAJN5c6s94n/LlOKYYZuj1nc1TOvIkRKje/SENQzOENuhBI3iHLtVbL/dk4tM/11SzNQ4ixGkt7U90t02r+bjJ5XfFjgZtFBYUkQp9vN1q9TiV7w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=16/HsGxMSMAYDRdz+AA4pmHjS8iA/+e6BbAGyjHtETU=;
 b=WYgFxr77FaCVQenTlLTmWrVQB0qMs/NKF5KprBkbn8gbRTZyBlKjc7ZeUvB1eFCPu9GI94YE7RfYQ7nJkEtjt/U2+dJzXpG2Pq/p3nt6Ngu5V9TxUDyzw6leyglAP5FIvfGZDDzbi1Kj+ZJ/d00BtPJb9XVQ65NopdT70s76OV8J9fI+CnuitiOxvzr87sUZjAp/+0f7D9WwNjbApJcHh+bxcjKRAE3B7aUsOWjqpS+fLxaTaD4wXlsYJMPdnTlH9iaU4iqqDcMDiFluLwiHtN07DEj4uYbQgSH/qqGUnnKJ3uXlvnsRAHRaixGfdy4q23IUjekiW3nbOWSqvk7CDw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0723515e-e94b-8560-4b9c-39537637d635@suse.com>
Date: Mon, 18 Sep 2023 13:46:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 7/7] x86/pv: Rewrite %dr6 handling
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-8-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230915203628.837732-8-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0038.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4a::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS1PR04MB9382:EE_
X-MS-Office365-Filtering-Correlation-Id: 37235e53-9131-4a55-6500-08dbb83ce0af
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	o/a3hBMU7YdpEK3EjhGcnEv99T4BzGQfVsNg+plXxvHpeKYH9DkP9MldYEXT/X1wonhywpMpArOiCP0Wy3I7pXNILAZLOCxbRCa/bQPTr7e9l5o502C4IAvNbqj6CMo1c5vE0hRhZkx622P83XBcq4FIiKbiV8vBTT/GOJqB/hK43iM73uCJN2dkSRs1j8SpgjwDiNeg5Zbod6TDPmwimgVbPeSzGKb/fki4G1XI+iijnPm1tj3Km+/V2Cph+A+8UtxuDZtnbOMiodW6L1dh3YuvSlFSQ3Twn8pZ26moX+BqFXYkEDNaIBthsNgSmIQA9LbOtWe9jA7KJygbnBZurIChcTTWwPS+/BVN8/TDDdqyUPlB/nUE2lOr0x/f4FWQvW8+q/8IzpIZS/RaS29/G+zgge9RQklmLkfdqSUbIAaXjLYWU4nHwjEB+D0kFP9LmUwjryMOxO/S/qG3Ecqdbp+NRsBgPrTmG7PdCMYyxP43UCyI3DfvbPdGVBJV76ZJDhhWDmUSQZUWb4QPzlW0GYz20ShZ5YrblBloY1m9QR0bilPCf9dRE/kc3lwo3Po8PHBjZq6FTpBwAeAcc8+frZo99xHQSokgq9XZoyDAs3tMXt32S0acKa1fU5WSLE0ZPGTxLlHVsd7rX8tIPUtTng==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(136003)(396003)(39860400002)(376002)(346002)(1800799009)(186009)(451199024)(83380400001)(31686004)(6506007)(6486002)(53546011)(36756003)(86362001)(38100700002)(31696002)(26005)(2906002)(6512007)(2616005)(478600001)(41300700001)(8676002)(4326008)(5660300002)(8936002)(66946007)(6916009)(66556008)(66476007)(54906003)(316002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZDNJNVNSQys5UllkK1dHOWVURUlSK0JwZWpmQmdrUHpWUFZFWFVIcUtROTdK?=
 =?utf-8?B?WW5JeDkwUGhyNHo4OC96alFXZWJQWndaRkRKUkR4SlgveGRiaUc2cHlEdENz?=
 =?utf-8?B?WkFqY01tTURwRDRHa0pPZkZrOGo1TTk2RnQ1a2pKZnk0OE05d0Noc0d6VmZq?=
 =?utf-8?B?L1ozVE55OEY5Q0tOV01QdUdCa3prblBlOFBva0t3aWtYRERwaDAxc0ZsUHRJ?=
 =?utf-8?B?SWtXOGNzdlBaTDZuTlQya05nODhzb1J1eGZabFd3d2l3NDViNExmbW1WRlR4?=
 =?utf-8?B?aEFPeWpWZTE4Y2NpSXJ6UTk1Kyt1cmtNcXlZRUptWTM0NlFjVnlSN1duZVVj?=
 =?utf-8?B?UjBkejMvU3RtSjZDL1JYbWFkaFBqdUdVMGlHZEFEVHJIZThiMDJFMXJ1TmVv?=
 =?utf-8?B?OFBGT21zS2NMV2IxK2tjM01vOUdEaTVjVmlJSGE5TXhicjVMQU8rWWQvOURL?=
 =?utf-8?B?VHVlempra3R3WnB0RlFuTjEzZzV3TE5pREM4VFNCcjF3aHVORlpjd2lUVm1Y?=
 =?utf-8?B?SUVsbjJVVUF0M1lHSzl1YTFCRXJzdXNGbXBsMW9oL2IrUTMzZjRuVVhKVk0r?=
 =?utf-8?B?VkxnZVQxNGlMT3FMNjh1SW1NZ1dqcmRrNmc0SWd4NlNjWHZ3ZWhJNGFwaW1C?=
 =?utf-8?B?ZjBvcmZnTkdGRHkvNU1pWUJNK1M5ZWF1L2JEYVpRNnJvVlRZTW5wR3dqQktk?=
 =?utf-8?B?bEdBZ1V3dXNsT2drZE5HeVN1cjhYWnp5WlFrSkplOUtGQ3dTbHFwTm9SdXhB?=
 =?utf-8?B?YkxDa016bWt3MFhDYWZ6ZkMyRXdqM084VWg0S0lrbDVkRmxaTmwzeXl3SFQ2?=
 =?utf-8?B?ZSt0YTIvQmRuWGRkOVNUWU9MQU12TmNrSXNzOUE5a1VHNm1LdWdmSjVTcld2?=
 =?utf-8?B?R2ZETW93R2lQSCtjUnZSWlQweDExVzNBM1Z5UWJ2bUdTQUxDc2dSc1crZ1Nr?=
 =?utf-8?B?WCtGVlp4RUlUU0doV0hRN0MzSDZXQ0hKdmI2Nm4rRmRWZ1BvOVBqRVRtNDdC?=
 =?utf-8?B?TytENUZYc3ZZdFRoK0NCSThNNkIvVXcwd2REY2VmU0h5RWhQNktFK0NkSndW?=
 =?utf-8?B?YlQ5dUZZOXNUY292TlBuclplR0lsUGhleFFsSUtvejU3YndlYkdZd1BBRklQ?=
 =?utf-8?B?NUNPci9PQlB3dDFqbTErcVVSQ0hraHpRZ1pibjdRaTRDODQ3ZWN4V3ZNRnZY?=
 =?utf-8?B?d2ZZTGtUd0haK0ltNC9MTWZKMDJlcVNidmMxZ042dFNxTytvbHMvM3VlY3Bl?=
 =?utf-8?B?NlFVY1V0S01sbE4xbENvNTlmaGJ0M1hjWnBQbSt0dFZaYWtabmFFQ25RNVlF?=
 =?utf-8?B?ckFIVHlMRFdEUkwreFVsaUZYQWJUL2U1bThIQ3hubVFFVW9NQUpTbTcvRGYx?=
 =?utf-8?B?T3ZoVUpkeXRGdkIyRGtHWS9EcVM2aFM5anF6R3IwZGE0aDY3Y1FrZUJrRXZZ?=
 =?utf-8?B?elhKOGJyaHdrUk9uOHNiMnVsWmU4OGF4WnBnaUpCOVZqQzZWWmx5UCtrMmxJ?=
 =?utf-8?B?eWFNRHFjUDA5S3RCS1A3d3VUb25KZDg3cVZnY3hqbWtKRmhrZ3huc3dqMzhQ?=
 =?utf-8?B?UWZSU2piRk4yOUZIZ2R2Sk1GR0R4SDRvVFR1SnZFQy9RMmJCSE5sempiZXJj?=
 =?utf-8?B?U1hQQnd2VVNOaVhkRksyekNZVkhiYjJDVWVDQ1JkcUZEeEtWMTdJK0I0WENF?=
 =?utf-8?B?RDZlTk8wbGtOc0tuN2NwWCtyV1NnRno3RVNXb0Z5Q1VsZm8vZGZMNzZvN0hR?=
 =?utf-8?B?OGRwaVdVQjc4YktzUDhSb0poTkxlWGxjcy9RQS9DYXJTSGxMN3JPTWtwdXhP?=
 =?utf-8?B?dlAwNlFpajlab3ByRzJUS29MUmNQZmc0RElPV3ovUUFOSDZsVXlTNXluK1ZL?=
 =?utf-8?B?SkJRL1B6OG4zcDdTU1R6T3Y2RG5DNUF0VW5BZE9KUURPVmFwb1BRUHJDNVUv?=
 =?utf-8?B?M2hCSWNib3p2NnRheVlnNUxkeGJaVnVRN1NvNjBSNU00SC94djhxS1FraTFP?=
 =?utf-8?B?RFZHeGxjUzV4Ky9XMkRMSCswdytGTWF2RFV3Y2Q3eW50T20ra3IzUFNtY1lW?=
 =?utf-8?B?Vk1WVFZGNEhxaHUvZk9SaWFqMncwQlozRklqUDI3dk8xbkxwRFBQOTYvdi8x?=
 =?utf-8?Q?j6YZha8LHHmA5XvC+iYPOGLvD?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 37235e53-9131-4a55-6500-08dbb83ce0af
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 11:46:21.3417
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: y2qicbiVJbUjFvZLL75JoLwtvg24tCScZR7a/a7M+4RKxRMH9BRIibjNTjV/0ZK8gguu+AkbUg2CngGCxm+GDg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9382

On 15.09.2023 22:36, Andrew Cooper wrote:
> All #DB exceptions result in an update of %dr6, but this isn't handled
> properly by Xen for any guest type.
> 
> Remove all ad-hoc dr6 handling, leaving it to pv_inject_event() in most cases
> and using the new x86_merge_dr6() helper.
> 
> In do_debug(), swap the dr6 to pending_dbg in order to operate entirely with
> positive polarity.  Among other things, this helps spot RTM/BLD in the
> diagnostic message.
> 
> Drop the unconditional v->arch.dr6 adjustment.  pv_inject_event() performs the
> adjustment in the common case, but retain the prior behaviour if a debugger is
> attached.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>

One minor aspect to consider:

> @@ -1990,24 +1990,23 @@ void do_debug(struct cpu_user_regs *regs)
>           * so ensure the message is ratelimited.
>           */
>          gprintk(XENLOG_WARNING,
> -                "Hit #DB in Xen context: %04x:%p [%ps], stk %04x:%p, dr6 %lx\n",
> +                "Hit #DB in Xen context: %04x:%p [%ps], stk %04x:%p, pending_dbg %lx\n",

Would you mind shorting to just "pending"?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 11:58:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 11:58:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603978.941159 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCtZ-0004gX-R8; Mon, 18 Sep 2023 11:58:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603978.941159; Mon, 18 Sep 2023 11:58:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiCtZ-0004gQ-NN; Mon, 18 Sep 2023 11:58:29 +0000
Received: by outflank-mailman (input) for mailman id 603978;
 Mon, 18 Sep 2023 11:58:28 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiCtX-0004ew-WB
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 11:58:27 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2061e.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::61e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id acd86f28-561a-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 13:58:26 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8849.eurprd04.prod.outlook.com (2603:10a6:20b:42c::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 11:58:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 11:58:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: acd86f28-561a-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gDiD1kLvJ2wW3pa6BVE8mdwud4vPafRG4aGe4COz92MxXMIWLX9uCH/tT3EhkYOW0mVX8GLUMJ1YuJ0WwLkVnSfG/JoJvWxHUKTMKB8Wxntq33UP8trRFkY6IGa/W+q8V4xR6PIuvR9LOnVw5wy5BColZ7e/BdDDRFZHn1DNfFMM3Buulrf0PvlAX8+K3G3dCMoTxj0o1gDTY4N7T2laeAbL1QHAOJMXXZ7UzTZgsR3LI1wkCdOAcSrwB6dDWaxrseotP4oIo1gX5rgmyfO2YJb5oVSuDcTtDgKlKq5oL3XXPfnD6ERgMZ2SuLHRJvrm3CcrpIUXmGVSSDrTtX42hw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=a4Qr5DCr8WQmHdj2bDKGyVyFLjkgIlPgXF08NC3NmhA=;
 b=OIHyF9yOiZdy45MbxXQoznE4STV+3VrgbhDZnbp8ldKznZXmOCqbdXL3Ilys3EG5vpKKPV1qudQSdS7N96LqMiZ9OBYWf3SgP2D4wRjoxwIYF8jQtGTbflOcocnTgzcv81D7Bkk8nPYKQvSPr+mGGkcYD5GBNksqCIOn2GgsuMILDzM2F9R5z/vbPJbnk4QYffVnTDt/hEsiq9zmFEmcWlFc2qQRY6hiKCzTJrVZ7kRb5JPk4brOpBAH8ekjUcJKeiMmC07tFqd5AM/sGi8qT74bJIdkBkROZdgy4yyCTZjCIOKE/p0vC4cbVfD1t8KmkIeTs6Hypty9jKV0nkDYkw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=a4Qr5DCr8WQmHdj2bDKGyVyFLjkgIlPgXF08NC3NmhA=;
 b=srhtUnvv/c8nbASJt+jt7Kfe1+VfHT/cLDrgl/b5e1iBWK+N0lupxCId9AWQmQeJBzEY6iG/LGNyOwqkFA4z770o6PixbmKfFIKUQyIpyE3cA2K/qy+hvr1k4gxdz60GQOrdFMt4BzUkI+7nnaD/I9Q4FYZ0JA3e01GBBWseBVuOKi6qsjsdKWRU5ndYw8kVkpbT6gfMnSmyG5XZbdPpHVD6ouPqmwSs1IMi1WUOTuTY402pujenJweEz1gUOUW27On/LIpkrGmn+RhWGvk5y9jDd6/wos0tIwtyiDMFXwTJK6t5lJ0mYhf1pZ0YvznamRSKFDaWuIOWpiveEsz9ug==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2458f095-85db-f429-eb0c-20304b403f8c@suse.com>
Date: Mon, 18 Sep 2023 13:58:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] x86/shutdown: change default reboot method preference
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Roger Pau Monne <roger.pau@citrix.com>
Cc: Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <20230914152120.92696-1-roger.pau@citrix.com>
 <2d767f96-9f20-e786-9148-cae5c30a41fd@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <2d767f96-9f20-e786-9148-cae5c30a41fd@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0078.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1f::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8849:EE_
X-MS-Office365-Filtering-Correlation-Id: 394ebff2-812e-4aeb-7aec-08dbb83e8f98
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OriOHic2xeECcJPJMZX5io3HKglBrti1tFw10lbrLEULOm9pfISc7yYSaWOzr3owM+sVRhjh0b0N+4BiIUtrw43cf1Dj6DFnePbbNj/NAfQoEqVwDaPAfbN52fkr5uUxW14YdjCygQ0tv0n/g8eD2+rrYHHSdf+JoZFUCn59gB4o7YjRwGG4HuB39ti2tPaWNoyxVUsD63D1DSLCW56/m0pEszqJoKUsAQHdQxe4f82rMJXkwY2VSHfb+iNC1fniyLOdFdHUM04ub+wVrQZLbQlme7YZyWYQbzZtxyF9TsnODzngWJNMFHZYnvD4K9DYIKqjJRUFv9dewxJLgM/n1D8pKeIG97DBL4Raqwc/P62s68zR6Bp2fK6tA1/Fpx/wKXqWvAid98/z2VOsVR9W6ZX4tDWXttw4zEYpmHbMUeTPyqndZkE0Awljy/Znr4u+BVpZSnMjxtusCm5D6AILrjTDZdVBys7g2TKxo6F1aQUCGTsGHWCRdI5UZvBXKZD7haBrev0fowihAN4FqXE0lNA0k1d1ga+fYd3bS/S9DPOYlpgYYpa5GlKuLUARxxT8NLTLA6TkNy3I5tTW8sW3o2mmUgwDIWR6PToLuW2T1wXLoKKpOQE62UreHQ/FAy72NwwauesAVVcrX9YTt2hkIQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(396003)(376002)(136003)(366004)(1800799009)(186009)(451199024)(6512007)(53546011)(6486002)(6506007)(6666004)(86362001)(31696002)(38100700002)(36756003)(2616005)(26005)(110136005)(66556008)(66946007)(4744005)(66476007)(41300700001)(316002)(2906002)(5660300002)(8676002)(4326008)(8936002)(31686004)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?K3RTYlo1UWRzT2lmbDNpMkh4Mi84ZTQrKzFvVXZIcFVRQ3BJZENDNFAzeGlj?=
 =?utf-8?B?bXJEVkJqeTlJU0lIYkY4V3lIdm5pRllSckVvK3EvUFl0YzEyUjZad0kxZlJ4?=
 =?utf-8?B?RW5hekJ3ODdaaDhBQ0NvUWw5ZXlnTEt0dTBlaERoVjVGRWVIMmF0RmRXcXc4?=
 =?utf-8?B?YmUvMkRFMlpXQTFIOERHYWtpbVRtMjdpbHpscGlkZVhNWU5rck9tNlR0MFpH?=
 =?utf-8?B?bnlSS2NtWTg4ZFJBTXZxNTlUSVE1b1drT3dZdnNrU1NUYldGbDk2U3d0ODlw?=
 =?utf-8?B?SjU5QXl4TUFrTEdmSW1ieWlOVzErTjJ4dHkzVWM2Qkt4YThJU0hsR3BSOWZv?=
 =?utf-8?B?QmhsNDhZRjRDZ3hyT3NZd1RBdUdWZUlmTEFCdWQxdHZsNkZ0VDZQdDhtbGpl?=
 =?utf-8?B?cXhiZzhqdzlvaVRjVUVyWjJzQ3BGSFJUOVNIVHo1dm5JZ21NVm5GWXZUNXgz?=
 =?utf-8?B?cWZ1aU92aXBZVlo0YW15bGgrYzJtQzRpRFNPaTdDNEc4aUowbE5CZ1FyRmo0?=
 =?utf-8?B?TDU3VXdGWndLTEtTTVRzVDZoaUJoR2g1N2JPelFYZWpZNXJMbzZKREhFSTIy?=
 =?utf-8?B?eG1RRFJLOTJvR2pJcmFMd0YyOVFERzVzanp0R1VnV1I2TVJSTE8zRytSTFU1?=
 =?utf-8?B?OWx5Z0lLaFVaa1pIUVhqVVFVRDdLakF5Z25QaUVuMS9MQ2tYZFUzQUVycEMy?=
 =?utf-8?B?aHF2Z09jd3BMTTBrNGVHNUwwaExXWUVwSDlybzdENytISlhpckZvTzFhM25O?=
 =?utf-8?B?UlBkTzhWL09uOHFqdU1NdXZXWnVUSmJ3ZzF3KzVsYlBWQkx6ano5Ym92Mk1V?=
 =?utf-8?B?QmIvUXRiLy82SDBlU3NZcDNDcjZsSjhGOGpEUEtmRm5ML1g4Z0ppN21LbHZp?=
 =?utf-8?B?OC9HQmtpSU1uVnVsUHdOTnNHcVFQc0ZydnFrZjEzVXlNRmhFUE1EOXI2TGhQ?=
 =?utf-8?B?Sk9ZSjZOdFFwY1RjciswWXNTVWRzcmlKL3dhOFBablgwTC9yNHNxeGlSNm5K?=
 =?utf-8?B?K2F2eFQ4dVdJTSt4SXg4NDlzUjl3VEoxL0YycEZYRi9rZXNXeFBsVUcvMDkr?=
 =?utf-8?B?cmlQSUpHeEp4b0ZDM3VOVE5ZZXVWcW83c2x4MHNLQ2N5SEpjdmZjZlFQTUdR?=
 =?utf-8?B?K1RobGxQUW1DanJQcEg0RmVPdUVUTlY4VDNMUlozd0Y3d25VaEh6bXFXQkJI?=
 =?utf-8?B?M0pJdk9RaHFCS0lrU1pnNGdiNmVUdnZyVjl1S1NxREY1V29SMi80UjZsVStS?=
 =?utf-8?B?UEVGdDdteSt5dG1rTzdJcE1IT0o1WXFtd1kyajBHMjVyaGpsUVBPYnl2VnBk?=
 =?utf-8?B?bmJlYVBNRDloVU1reHA3UVJMa2MxOGdHU1NoOTcvb0FMTkpDNGRiRzQ1WTNK?=
 =?utf-8?B?bWdUUzVHR0V0bkM3WjhyNjY2bjcyNjNOZWpQWW9vb3FLdU5TNlVjZnFNYklF?=
 =?utf-8?B?S2xpRjAzY2hJVVE2TmZ4RlpnTGpUS2lRcG1NVERRSSs0UEJObFpGRVErR2ha?=
 =?utf-8?B?UzYxM2JKMkJrRE56VmRwaXRnL0RMYTBOK0lUOCtnK2QrOSszMWh2YTFiTG5L?=
 =?utf-8?B?alNMSTdvMTlTYmlxblVPdnVwYlhXUURtZFVydmhnKzlPTnUxektsakRnZ0sz?=
 =?utf-8?B?WDlzNWdNRzJtKzlsVUxJSWVMQTdySjdzUk04QVlLVjlBNGNzWDRRNHNCNVVP?=
 =?utf-8?B?eUZ4M24vSk1oTmJMOG00TXE5WWNubGZLR2phSEp2SktFVS9ZYk1sS3VIS3Y0?=
 =?utf-8?B?Z2dQaGVoM2hLbk5lNVp1V1ZKSXNFMWx5K1hYdE16L3BpUXlOTE50NHI0Q1Z5?=
 =?utf-8?B?TjI2NnQ1ekVQNnd3WUtpenIwMzNtNnVaNlZRRmJPYjgrWU5YZHZXdVp3UVBr?=
 =?utf-8?B?TEVIYW9ZOHFscDVzQWlQeGlwNjZnaXN2NnBVbWhud3VHSjZHd1I3YVdiclBE?=
 =?utf-8?B?NTlKOXNyWWtmSWJnNGwyOFFVSzRlSitUREJtUlNyc3BlVEpLc0d4ZUtwUUZj?=
 =?utf-8?B?NGRXTDdQbzhGS1NjSENrNSs2anJ5aXB1azlpbDhjSEVqQlpyeTQ1b0JyRDE2?=
 =?utf-8?B?cFhTZWNYWkpudkR1dlAxQWx3ZTFPZ2wzQWo2Q0twSTZhNE5VSGNLK0NQd0la?=
 =?utf-8?Q?1Oqea/+2W1ZdulX7Cem3gPuxk?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 394ebff2-812e-4aeb-7aec-08dbb83e8f98
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 11:58:24.1587
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: TCNjYI7ezxZ2otDZf+b5+9ejKM237deTh3ZuvlQkQz/3mAy9KD/+bEvzMu2uz8iUhvNdUHGkoUZg3d5CUjUS9g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8849

On 14.09.2023 19:42, Andrew Cooper wrote:
> On 14/09/2023 4:21 pm, Roger Pau Monne wrote:
>> I've found a lot of boxes that don't reboot properly using ResetSystem(), and I
>> think our default should attempt to make sure Xen reliably reboots on as much
>> hardware as possible.
> 
> You're supposed to use ResetSystem() so all the value-add can be added
> behind your back, but it's a chocolate teapot when it's so broken that
> none of the OSes use it...

That's only one aspect. Recall that EFI originated from ia64 bringup, where
it wasn't even specified how to reboot a system without using the runtime
services function. Fundamentally under EFI shutdown/reboot shouldn't be an
arch-specific operation in the first place.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 12:05:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 12:05:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.603994.941169 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiD09-00074Z-PM; Mon, 18 Sep 2023 12:05:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 603994.941169; Mon, 18 Sep 2023 12:05:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiD09-00074S-MD; Mon, 18 Sep 2023 12:05:17 +0000
Received: by outflank-mailman (input) for mailman id 603994;
 Mon, 18 Sep 2023 12:05:16 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pP1k=FC=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qiD08-00074M-Mv
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 12:05:16 +0000
Received: from mail-lf1-x12f.google.com (mail-lf1-x12f.google.com
 [2a00:1450:4864:20::12f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a0e955e4-561b-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 14:05:15 +0200 (CEST)
Received: by mail-lf1-x12f.google.com with SMTP id
 2adb3069b0e04-503012f4e71so2207239e87.0
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 05:05:15 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 b23-20020ac25637000000b004ff6fa3f038sm1780122lff.144.2023.09.18.05.05.13
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 05:05:14 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a0e955e4-561b-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695038715; x=1695643515; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=cKmCF3XWTOQdRl++98lYuXTpGeRL6KKlRJY+OxeldBQ=;
        b=bE3Y9TVwb+qB11eAhTTBOZC2r1oquIfNNS+ae8y+JiIK3Ztnc3ZhtKCkq2ie55JCrS
         5v5SYbifIBD8JJ1Iw88BJxTs8b4kFoCk11y+lSz0FPBntLTpXu4ksp6EX1kYwTV4aSte
         QW/fMJrxJcQTPVubG4o2/bV4jwDe8dP2x7o8yahgpVYxQO5Zzba/mXbDf93l77RDb2BW
         0oYb8/g6Rle47Tt5ZCHDm0MMTtU5GVFG8MNaec5EfgSMEuqdTkH1L05LNiRX9fGL2AvL
         nHDzXXw4t9e95koybgAss4TU3xRCG8iP08G2x0GCofy1sMtdG6U3pI0i7+IFon69Gu38
         XUHQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695038715; x=1695643515;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=cKmCF3XWTOQdRl++98lYuXTpGeRL6KKlRJY+OxeldBQ=;
        b=ktMiyzgUM95q5KBqnGQhqREfF5GtN035P2S8wg6W6fNpKTwcnZW0I2XHCqmDbDxMj7
         y2jPA6Xm47x9on6xYOqKpWWC4fosoaL0pImcgwYYBmFYEHjeN9H6YEcNw+d842e1QQDe
         FLF+T753ppc7dN/U2y1Wz54/9QPGfppq5M860WnqCyOZv6TU/txnZotU1lRHERMNOCb4
         jpo9IhnijvKwKpWoKx1yPzvL+WARaEo67Y8s9SWSDnnAtQPX1aO62+2RmPd404HERWL/
         HkV1VdFB1/lnuzVDYphheeXEpZhjC4GSkcAaavGpkvidpNW+3xWex/zJBhw2DEd0t83L
         vbYg==
X-Gm-Message-State: AOJu0YwitBsrPxFDpmxKOsQKR6mEw3iSW1PO+GhQ1KMQz/SuWul0sLll
	Q+vvQOTF2Hh6Y3uoEQSD1ek=
X-Google-Smtp-Source: AGHT+IFnUvdDM/yyDqfrQnWoM4gtwItFXSQVkbM0T9/lvJk+6RyAbL4ZkBRecp9zZFKYN0mcZAQOHw==
X-Received: by 2002:a05:6512:3708:b0:4f9:dac6:2f3d with SMTP id z8-20020a056512370800b004f9dac62f3dmr2876781lfr.13.1695038715055;
        Mon, 18 Sep 2023 05:05:15 -0700 (PDT)
Message-ID: <09d0449004162ccd339e9e8559b7efad3e2335bb.camel@gmail.com>
Subject: Re: [PATCH v1 00/29] Introduce stub headers necessary for full Xen
 build
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Tamas K Lengyel
 <tamas@tklengyel.com>, Alexandru Isaila <aisaila@bitdefender.com>, Petre
 Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
Date: Mon, 18 Sep 2023 15:05:13 +0300
In-Reply-To: <3b7ef926-ed06-609f-d443-544bd9125bec@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <da588ba7-f22f-9aa2-4346-de75783bd65e@suse.com>
	 <9036713e5a5e67199b78b25ad1607be605b4a812.camel@gmail.com>
	 <3b7ef926-ed06-609f-d443-544bd9125bec@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Mon, 2023-09-18 at 11:29 +0200, Jan Beulich wrote:
> On 18.09.2023 10:51, Oleksii wrote:
> > On Thu, 2023-09-14 at 17:08 +0200, Jan Beulich wrote:
> > > On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > > > Based on two patch series [1] and [2], the idea of which is to
> > > > provide minimal
> > > > amount of things for a complete Xen build, a large amount of
> > > > headers are the same
> > > > or almost the same, so it makes sense to move them to asm-
> > > > generic.
> > > >=20
> > > > Also, providing such stub headers should help future
> > > > architectures
> > > > to add
> > > > a full Xen build.
> > > >=20
> > > > [1]
> > > > https://lore.kernel.org/xen-devel/cover.1694543103.git.sanastasio@r=
aptorengineering.com/
> > > > [2]
> > > > https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kuro=
chko@gmail.com/
> > > >=20
> > > > Oleksii Kurochko (29):
> > > > =C2=A0 xen/asm-generic: introduce stub header spinlock.h
> > >=20
> > > At the example of this, personally I think this goes too far.
> > > Headers
> > > in
> > > asm-generic should be for the case where an arch elects to not
> > > implement
> > > certain functionality. Clearly spinlocks are required uniformly.
> > It makes sense. Then I will back to the option [2] where I
> > introduced
> > all this headers as part of RISC-V architecture.=20
>=20
> You did see though that in a reply to my own mail I said I take back
> the
> comment, at least as far as this header (and perhaps several others)
> are
> concerned.
>=20
I missed that comment on the patch about spinlock.

Well, then, I don't fully understand the criteria.

What about empty headers or temporary empty headers?

For example, asm/xenoprof.h is empty for all arches except x86, so it
is a good candidate for asm-generic.
But asm/grant_table.h is empty for PPC and RISC-V for now but won't be
empty in the future. Does it make sense to put them to asm-generic? The
only benefit I see is that in future architecture if they follow the
same way of adding support for the arch to Xen, they will face the same
issue: building full Xen requires this empty header.

So, should I wait for some time on other patches of the patch series?

~ Oleksii



From xen-devel-bounces@lists.xenproject.org Mon Sep 18 12:19:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 12:19:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604001.941179 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDE9-0001w2-Vi; Mon, 18 Sep 2023 12:19:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604001.941179; Mon, 18 Sep 2023 12:19:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDE9-0001vv-Sr; Mon, 18 Sep 2023 12:19:45 +0000
Received: by outflank-mailman (input) for mailman id 604001;
 Mon, 18 Sep 2023 12:19:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ngl4=FC=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qiDE8-0001vn-9X
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 12:19:44 +0000
Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com
 [2a00:1450:4864:20::42f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a5c5b59f-561d-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 14:19:43 +0200 (CEST)
Received: by mail-wr1-x42f.google.com with SMTP id
 ffacd0b85a97d-31ff2ce9d4cso2970078f8f.0
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 05:19:43 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 c13-20020a5d4ccd000000b0030fd03e3d25sm12511601wrt.75.2023.09.18.05.19.42
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 18 Sep 2023 05:19:42 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a5c5b59f-561d-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695039582; x=1695644382; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=WwsRn7RVyi/2zzdBvVmGjZ/Y4zX/BilIFSLU4Qag90A=;
        b=DYNRJp4/iRhUxpD4sDD/YcFVXvPZKIp78Qd9q0c+uQwaXwFVHKZjv7FVKdjMPsQNTj
         TYzUCH1HspsZK9PaxnI0Jbg3Wr/4Gyr06nmm2Ptx29g1NT2EbgLU9giiQMyUFH7twicb
         O+MCsY8tI+liPZMuuy0hglnQqVkOTjoGvH0dY=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695039582; x=1695644382;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=WwsRn7RVyi/2zzdBvVmGjZ/Y4zX/BilIFSLU4Qag90A=;
        b=knqY9jN1NAv9fhN6ZC/dLMVJtHAM0m7hlEeQIvCCn1n3iWexEgBL5h8i1jzxtiE4HK
         h/AAF5eOgsU6F+78FyPRjuknsHupU2f33xd9ErH8IlMow4zvLaL6zOXgoB792ursaAS/
         Wvk1eFaFADouCXrt6P4T9agDu5XuYqozPPmShMmyNihC6t0uk9KPdMhdDhOOGbvb6mVa
         3sfqfHD64hh/luOMTLavPiY5/dUfqLc4WScsmHd3FDaQPi3dGed0912WGJ7AIlfQ5wQI
         xH7tgdI4Kseq0CrVJajWZhL5fGlWOCuGIhZBJ73oFb8xmQP8+9ruEr7pSFJDZFsF8JzC
         znZg==
X-Gm-Message-State: AOJu0Yxf68dtaxska8wHPgxD8qc9eCxRAYvjzmH2zcX/byqCCWWSScZL
	E1uvb+wB5k0wvGCmn7HZqCjqQw==
X-Google-Smtp-Source: AGHT+IGRoQwyV779fwn0k8/O1fpi0zXXj+kFYK4J0lPu01PhiHAcbf9fX+AL7fjsv6t8hAMbwds6mA==
X-Received: by 2002:a5d:5149:0:b0:319:62e0:f2fe with SMTP id u9-20020a5d5149000000b0031962e0f2femr7497845wrt.36.1695039582533;
        Mon, 18 Sep 2023 05:19:42 -0700 (PDT)
Message-ID: <c119c09f-5f87-fb4d-9e73-968dbb4c0ac3@citrix.com>
Date: Mon, 18 Sep 2023 13:19:41 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/7] x86/emul: Fix and extend #DB trap handling
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-3-andrew.cooper3@citrix.com>
 <334fb537-ef7c-97e1-3274-736c4a2549b6@citrix.com>
 <311e2920-5e91-b9dc-77a7-263272a79a90@suse.com>
In-Reply-To: <311e2920-5e91-b9dc-77a7-263272a79a90@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 18/09/2023 12:30 pm, Jan Beulich wrote:
> On 18.09.2023 11:24, Andrew Cooper wrote:
>> On 15/09/2023 9:36 pm, Andrew Cooper wrote:
>>> --- a/xen/arch/x86/x86_emulate/x86_emulate.c
>>> +++ b/xen/arch/x86/x86_emulate/x86_emulate.c
>>> @@ -8379,13 +8379,6 @@ x86_emulate(
>>>      if ( !mode_64bit() )
>>>          _regs.r(ip) = (uint32_t)_regs.r(ip);
>>>  
>>> -    /* Should a singlestep #DB be raised? */
>>> -    if ( rc == X86EMUL_OKAY && singlestep && !ctxt->retire.mov_ss )
>>> -    {
>>> -        ctxt->retire.singlestep = true;
>>> -        ctxt->retire.sti = false;
>>> -    }
>>> -
>>>      if ( rc != X86EMUL_DONE )
>>>          *ctxt->regs = _regs;
>>>      else
>>> @@ -8394,6 +8387,19 @@ x86_emulate(
>>>          rc = X86EMUL_OKAY;
>>>      }
>>>  
>>> +    /* Should a singlestep #DB be raised? */
>>> +    if ( rc == X86EMUL_OKAY && singlestep )
>>> +    {
>>> +        ctxt->retire.pending_dbg |= X86_DR6_BS;
>>> +
>>> +        /* BROKEN - TODO, merge into pending_dbg. */
>>> +        if ( !ctxt->retire.mov_ss )
>>> +        {
>>> +            ctxt->retire.singlestep = true;
>>> +            ctxt->retire.sti = false;
>>> +        }
>> I occurs to me that setting X86_DR6_BS outside of the !mov_ss case will
>> break HVM (when HVM swaps from singlestep to pending_dbg) until one of
>> the further TODOs is addressed.
>>
>> This will need bringing back within the conditional to avoid regressions
>> in the short term.
> I'm afraid I don't understand this: Isn't the purpose to latch state no
> matter whether it'll be consumed right away, or only on the next insn?

Yes, that is the intention in the longterm.

But in the short term, where I'm doing just enough to fix the %dr6 bits,
putting this unconditionally in PENDING_DBG will break the emulation of
mov-to-ss until the bigger todo of "wire INTERRUPTIBILITY/ACTIVITY state
into the emulation context" is complete.

The latter is definitely too big to fit into 4.18, and I can't
intentionally regress mov-to-ss in a series we intend to backport.

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 12:27:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 12:27:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604006.941188 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDL9-00053Q-Lm; Mon, 18 Sep 2023 12:26:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604006.941188; Mon, 18 Sep 2023 12:26:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDL9-00053J-JF; Mon, 18 Sep 2023 12:26:59 +0000
Received: by outflank-mailman (input) for mailman id 604006;
 Mon, 18 Sep 2023 12:26:58 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiDL8-00053D-Fq
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 12:26:58 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0602.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a7f27a42-561e-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 14:26:56 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9450.eurprd04.prod.outlook.com (2603:10a6:10:369::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 12:26:53 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 12:26:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a7f27a42-561e-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DHJVRUkxbadiDBl1D96pVRyvrDsL4dfuSD/HEsS/W9CV+Yv0lFxgiGhZucSA3AOQ2HEqvSCncCP9Epxf8XYF5U6dEOSal9l3d9fwWQvXGinX2apIECUVtYRoNLXPyuuwcchVyxNdHf9yzB8zdCObAmryZovLxQBKCBInBP3c7vgU3dorlgn45OIFX42n310MuPHXhAeIJ4Wd8OonnDQb2K7Dcb95ezI5eHgqhFqCXaZZLCRqmMqcZUBkGMppziqict3Mswx8utHfzfs+ffjet5lrs5X9uf6DswTD5CHE8QH+ocTeqraQDAwaeLFDeaRr59Tht0i3s0ZVp79pBYDLbA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZWp2IpDs0vRp0OtYFPLQOBzJ172L9P4VXQe5K/mK7xU=;
 b=WRByl8mBXHrbAOJwPO3J+sHR9yVdSfEr/MEz9JiG1oLKstAHDB8DtBOCVpYCfqJke8XXRdT4SdrG51ExR4Yk+N/STvuwpzP88MwTWPJ+DBWQg0IEcq/YjQApm9D0d1GewcxBo7HGwg+f7Bh/UKoFP4qshPadQcIG3irAhu+ExMXpYsWwz/pkeFROS/4dxhZunr3XtB/NztrXC4PzFA6yZLO1rikU+BKkEasvs45DQoKIhpiHLQ86CeM98ZOdn8KU7Xjubxn7aeEEVW06tf2ny7J35jHO2nHpCayeNfRtX4pxvjLaNpCVb6vBxPXi16gYEWNDznj9JzU/40ApKnVvvQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZWp2IpDs0vRp0OtYFPLQOBzJ172L9P4VXQe5K/mK7xU=;
 b=J7ygN7pSLRCZyL+JJXxq6sINMypyqDoBhhxhiBmyTIL6g0OK0/IG0Dmm108UGwApIZbPICLh1XGuctI9wMnJF+UIXBbRS/r8iDYmPQWuEAAK4G5H93Pq678jHVYHaTfwJlfR3nWEjMBsYvCFTaPhrTX8aeRY84REKTbfdJnqYD4qaihb1DKbo3KZL4/HAou2nGdyfeAqdbzj8v6dfxwxiVfufFLoFOfqrvgYhbxnprqhgZK4Ys0oVLrcr4onmZ8YZqHNNEDVkRiilfC1Ozo3UjCojsvsx0Q0NOZ7IIyda1o2JDhhpRwe6pvFaKMmzr1Wdt3tWMMbn2IQtOYZiRW+Xg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e22af903-cbdf-dfed-8f69-44e5ea05ef8b@suse.com>
Date: Mon, 18 Sep 2023 14:26:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2] x86/shutdown: change default reboot method preference
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230915074347.94712-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230915074347.94712-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0153.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a2::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB9450:EE_
X-MS-Office365-Filtering-Correlation-Id: 239eb83f-23c0-4c30-1de3-08dbb8428a98
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ovR/jgUY1N0cdIEa/wCCbBtkTFZYKSNshoA6906lm5zanYlegV5k18z0jS8w3yTXspkIlK+4shVxSUEqTb5pJ/f8TJaLZc32YjIipJYiSwlz+TouQhZWyeUl+mnJJlCw9k5pWNZgUlP/gJ2jWqcaShbAOFOune4GWG1c78kkD8YlUrbpZIX9ruC8aW7iFw0hlK4s8NO1KjjnK8fCs94Xm/GLeQgalA+Te1/xDs7z3oO/KRW6sXAODeOALoXI0mUqgjEkeqLNTFKlQJJxCtUXle27LWPMca1hMAIxGifQAjHhIwYwHTtaJvciLQaQhKizzAvhCd9P54tCyhMEiOwGBxzGbBuQpfd1O65JGOP8YRWZtB5QDiwGZLox+C+ZQQApiRtlGm1ESEXDTdhZUOVPKKOS/YE9m1Nqx768sJgIuRnFv6F2CeqVnWybwZshjanyJUYebn6uFf7kS6T/kcPZK3c19m8PAi9BJoeZSyx9KfxQJP7vtUG5LLb/9w7gH+Tkusyr/jcCiYvEz88rC3tEnfc5dmWShB9MAQwUdCALPjQJyIk/OpPTJSYExvWvxfK7okAX88rrVuWlKeIYl+Q7zI4tdLiAJiQvzzWW8zh1M4PsA/cWH3c9rubxu8SOXOeWR3J4rF0EspVlhWz8t1FOLQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(396003)(346002)(366004)(136003)(451199024)(1800799009)(186009)(6486002)(5660300002)(6506007)(53546011)(86362001)(6512007)(54906003)(316002)(66946007)(41300700001)(66556008)(38100700002)(66476007)(31686004)(478600001)(6916009)(2616005)(8936002)(8676002)(26005)(2906002)(31696002)(36756003)(4326008)(83380400001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U3o1ODJRWEplckhUNG01MW1xU2Z5WWdjelZ0cU9jMEdyTXZlYW9vSkRsUDVF?=
 =?utf-8?B?RjFZVDZwYXg5S1o1ZE5vZWJ0RVJPS05YUElCODJlZUt1T2hNRUNTWjM4WE0w?=
 =?utf-8?B?b2pKTnhueWQrbTUwVWExcmxsSkx2ZDRnWllCdEJIVXpHZ1VXeUhITFQ5dzYw?=
 =?utf-8?B?NkZTa21CWk01azkvYmJKWUlGVkZ4K2pvUEFJZGFCMFNlZ3pBWCttVU9jNWNS?=
 =?utf-8?B?U2RScHB6YUdrVURkaytBZGFCOFpMMTFBM3FWbE9wYm8rekxhMUlRNGpST2Z3?=
 =?utf-8?B?cDBoRHI4QzZVRmxtVU5ZN0pYdUF2enhjaDQ0QVVkQlBwSkdMU251ZVhxWlFS?=
 =?utf-8?B?QndBUGNlRUFjMVpmMkhad3ZYblVhaVBVNlhybjVmNThoTTZpc3FyS01sK2t1?=
 =?utf-8?B?cTN6VEd0Wko5K2hsb1NLaGFMYWNNUFE4eSt4TlJPQ2JtbjJtVDhZOVJQNVp4?=
 =?utf-8?B?OHFoUjk5M2pwM2s4ekNOQWR0NER4bkNnYWdHU2FJSGpVcFFYemVGOWI1NW1E?=
 =?utf-8?B?YkVoR25KZlFKQUtDU21sUVN1V3FSQUlPdFFEY1p4c09Ga0FUcGFSLzAzQW41?=
 =?utf-8?B?dEgrWGREWHlRUjVpT20wa2c4OHYrTUNSSFlwQlNLeXJ4VjNHUjJaTHFOOGww?=
 =?utf-8?B?dFdISExtcHlTZFMyQUE4N3d0LzhKMnJ4NkFMNVM5MTgyTkpHL244Q2k3OW9x?=
 =?utf-8?B?c09rSk1yQ2RwMlpmOTVvRkNOT28vdmc5MVhvdUYyam1hc1VKMFdSM1VxVjV2?=
 =?utf-8?B?ZndVbkwzODFJTG0zdHluNGkrRGpKU1hwS1JMYnpGaVVMN2R3SHhEakFhNjA4?=
 =?utf-8?B?QUk0K1luZEljLys2RFZKYWpaVGNreisvVnVXc1VqdXJDcVV6aG5qRlorZTFq?=
 =?utf-8?B?anFYOXhZNmczT0pYWlR6WEV6ZGNQbk9Qemc2MWUrWVVtYnZOVkV6NTE4dkVF?=
 =?utf-8?B?c3ZqQkhCS0ZyN3FuR2dkeHhjRUVkbzY2YkI4NmF0T2JoeWIxMU1qRURPaEJr?=
 =?utf-8?B?ZC9iMS9zNytESVdGQlRGZlRtOFhlcm5HMDZjWURnekptd0x6NEtsajA2WTJ0?=
 =?utf-8?B?QXQvTmFrMkx0ZC9zUlBvSmN3aGRsOTJMQ3pDNTErNzEvTjErTG5vN3RnS1Qv?=
 =?utf-8?B?MGE2Yi9FYUpPQlVkY0NiN05YVEprN0dBTUo2Z3pHMXVSKzlNWUp5cTJkeFA2?=
 =?utf-8?B?MU9Yckl2VHoydmlaeUdQUXFpc2lHTFZkby9yZ1FSY0YvQjkvQ2llN29SWkc3?=
 =?utf-8?B?Tmw3Y0VEUk9rS0tkTFRUWktPTjBoc2dRTjVXQW1LaWoxT3kyUEE1Y3dZWkNL?=
 =?utf-8?B?YkNveGZRaENmSWJTSzBZQWY0aEYyVmZwVk4zekNUK3ZhVDNlZUd0S3JvN3ZH?=
 =?utf-8?B?eUc3RU1QZEtobkhKR000dGdQcUxTakJTeEtUN1dhKzYyTkNraGlUNjhvV2Rq?=
 =?utf-8?B?NTJKSDN0eE83ZDEyTEROblR0eHUzQ2tiZXo3aG9xWGNZTzZKampxRXdYQUJk?=
 =?utf-8?B?MlpQQ0pDL0ZVMVVUK1hBMUh6VXNlM1U2L3l0Mm05QmhQY3N3NXNnUUUvakRU?=
 =?utf-8?B?YUFJQmU1aGwzTVJmOTZkSlNzb2dqUXg4NUQzRzMrV0xHODZ2UGZZY1ZKNS92?=
 =?utf-8?B?K0E4Tldmc2RUTXQrWklVMWF5K2MrTGROR3BtbzdFUDJaSVRvTmo4R2duSk1Y?=
 =?utf-8?B?RzZiWDY5NitBb0RKck4yL0I5QWxNOTg1Q251NTNwZnY2Y0VnOHV5WmNJQ0Zy?=
 =?utf-8?B?Z1dweWlNZTVqQW9RSTBudUIzTmpkcUs1bTVhRExObUtvVjk0S2pYbC9Eclkx?=
 =?utf-8?B?T2hhTU15UGd1WW9HTUtLeHFjUVJCWDBLOXhrK2ZoUElaYm1oRFZmMmg5QUZL?=
 =?utf-8?B?dUx1MXZtamxJS2JMdHZGWkNzTkpSYmZpTDJPZ1NPc2hXd21mUWpDdEgxazVV?=
 =?utf-8?B?VXlsaWFNTGhRWDdqQUNvelJZUC9zampnd3lDZXc5eS83MXp2bmpRczRIdGZC?=
 =?utf-8?B?aFpyNlc0NlZlYXdiOWQ5bklDU0hoR2dXdFJZenpDRXRlRUFxb212a2ZqVXVI?=
 =?utf-8?B?RFlqSFg1NkxYRXNieThXS0JkS1N1akRicGp0d2ZDMlRhbWw3cEgrQy9NalF5?=
 =?utf-8?Q?PoCCViL7M6Rqke4iG8A4Yh+gX?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 239eb83f-23c0-4c30-1de3-08dbb8428a98
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 12:26:53.7190
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: pDYQuOc9RMxMMTaemxcmIepcaG1ZTb6ZV6df2CYPE01ZEvug8uAEN6EYnU6+jBvOEFyDCXwqqIarVVOl7Np40A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9450

On 15.09.2023 09:43, Roger Pau Monne wrote:
> The current logic to chose the preferred reboot method is based on the mode Xen
> has been booted into, so if the box is booted from UEFI, the preferred reboot
> method will be to use the ResetSystem() run time service call.
> 
> However, that method seems to be widely untested, and quite often leads to a
> result similar to:
> 
> Hardware Dom0 shutdown: rebooting machine
> ----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
> CPU:    0
> RIP:    e008:[<0000000000000017>] 0000000000000017
> RFLAGS: 0000000000010202   CONTEXT: hypervisor
> [...]
> Xen call trace:
>    [<0000000000000017>] R 0000000000000017
>    [<ffff83207eff7b50>] S ffff83207eff7b50
>    [<ffff82d0403525aa>] F machine_restart+0x1da/0x261
>    [<ffff82d04035263c>] F apic_wait_icr_idle+0/0x37
>    [<ffff82d040233689>] F smp_call_function_interrupt+0xc7/0xcb
>    [<ffff82d040352f05>] F call_function_interrupt+0x20/0x34
>    [<ffff82d04033b0d5>] F do_IRQ+0x150/0x6f3
>    [<ffff82d0402018c2>] F common_interrupt+0x132/0x140
>    [<ffff82d040283d33>] F arch/x86/acpi/cpu_idle.c#acpi_idle_do_entry+0x113/0x129
>    [<ffff82d04028436c>] F arch/x86/acpi/cpu_idle.c#acpi_processor_idle+0x3eb/0x5f7
>    [<ffff82d04032a549>] F arch/x86/domain.c#idle_loop+0xec/0xee
> 
> ****************************************
> Panic on CPU 0:
> FATAL TRAP: vector = 6 (invalid opcode)
> ****************************************
> 
> Which in most cases does lead to a reboot, however that's unreliable.
> 
> Change the default reboot preference to prefer ACPI over UEFI if available and
> not in reduced hardware mode.
> 
> This is in line to what Linux does, so it's unlikely to cause issues on current
> and future hardware, since there's a much higher chance of vendors testing
> hardware with Linux rather than Xen.

I certainly appreciate this as a goal. However, ...

> Add a special case for one Acer model that does require being rebooted using
> ResetSystem().  See Linux commit 0082517fa4bce for rationale.

... this is precisely what I'd like to avoid: Needing workarounds on spec-
conforming systems.

> I'm not aware of using ACPI reboot causing issues on boxes that do have
> properly implemented ResetSystem() methods.

I'm also puzzled by this statement: That Acer aspect is a clear indication
of there being an issue. Plus it's quite easy to see that hooks may be put
in place by various firmware components that would then be used to make
certain adjustments to the platform, ahead of an orderly reboot / shutdown.

> --- a/xen/arch/x86/shutdown.c
> +++ b/xen/arch/x86/shutdown.c
> @@ -150,19 +150,20 @@ static void default_reboot_type(void)
>  
>      if ( xen_guest )
>          reboot_type = BOOT_XEN;
> +    else if ( !acpi_disabled && !acpi_gbl_reduced_hardware )
> +        reboot_type = BOOT_ACPI;
>      else if ( efi_enabled(EFI_RS) )
>          reboot_type = BOOT_EFI;
> -    else if ( acpi_disabled )
> -        reboot_type = BOOT_KBD;
>      else
> -        reboot_type = BOOT_ACPI;
> +        reboot_type = BOOT_KBD;
>  }
>  
>  static int __init cf_check override_reboot(const struct dmi_system_id *d)
>  {
>      enum reboot_type type = (long)d->driver_data;
>  
> -    if ( type == BOOT_ACPI && acpi_disabled )
> +    if ( (type == BOOT_ACPI && acpi_disabled) ||
> +         (type == BOOT_EFI && !efi_enabled(EFI_RS)) )
>          type = BOOT_KBD;

I guess I don't follow this adjustment: Why would we fall back to KBD
first thing? Wouldn't it make sense to try ACPI first if EFI cannot
be used? And go further to KBD only if ACPI then also turns out
disabled (a mode that Xen quite likely won't correctly operate in
anymore anyway, due to bitrot)?

As an aside, KBD likely is unusable on hw-reduced systems, for there
simply not being a legacy keyboard controller. Instead we may need to
fall back to CF9 in such a case.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 12:28:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 12:28:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604011.941198 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDMX-0005vV-10; Mon, 18 Sep 2023 12:28:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604011.941198; Mon, 18 Sep 2023 12:28:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDMW-0005vO-UZ; Mon, 18 Sep 2023 12:28:24 +0000
Received: by outflank-mailman (input) for mailman id 604011;
 Mon, 18 Sep 2023 12:28:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S4ic=FC=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qiDMV-0005vI-81
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 12:28:23 +0000
Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com
 [2a00:1450:4864:20::336])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id da3285fe-561e-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 14:28:20 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-401f68602a8so48940515e9.3
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 05:28:20 -0700 (PDT)
Received: from CTX-Georges-MBP.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 7-20020a05600c020700b003fe2de3f94fsm12187475wmi.12.2023.09.18.05.28.19
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 05:28:19 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: da3285fe-561e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695040100; x=1695644900; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=0fpCgVjY/UDRsPYgZC1Uh38RaXgYWqjSfswfqVWb528=;
        b=jluUl7mmvXhmz37p9q7gdZCcDGKAwasO8tw8bYUEWgUL7lPW+IEWVdvc7VW72OIFT5
         LZn9MS/B/Le6CiEhvgAET3z/iU/qAMCVesuKqi1k88g4/VcX/45Y28Wo1GE2krdULOmy
         igo3U+Cx4pLjN4mlr/zIbRYU1OKykPFnc6NRs=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695040100; x=1695644900;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=0fpCgVjY/UDRsPYgZC1Uh38RaXgYWqjSfswfqVWb528=;
        b=kp0bb1XumaMgdVGFBsl5YFQFa8+T4VZkiMCMGiyglZjMOo2unHvcMnT+jVrp4/ehAC
         PiweA7QuqmsREzQY8PQzAN2JOrkAkVJHZ64PkzjVsUreDdk38eOjM6BRr5x08h+p6zHE
         tDR09aAotqHgaFowU1WqHPI5i4gV+rj9YPjz4+eAm6cpyOuzB/0BM5tUfAyhczmFaJGW
         +Y0ri+Ueu+EBNPyvHYqwRysmzo5HFU7SxzdzLaAZgFFQ2mQQIJ1c22iqGLw3YDdurove
         VOBKb02fKhZ2ZRGD0MpcYhK8zd/r6bbGp5YXcE9UrieJ/8NoSqQTe94ahP6vIa9+1cjA
         +/uA==
X-Gm-Message-State: AOJu0YzXO71mq0YTmWOKWhCHQbGSazxOTc992gQdklrryjY3X+A6gQ6j
	z2pAjJCfXYjAYi94/pbuxRXNC6bti2uOb5+5Uvw=
X-Google-Smtp-Source: AGHT+IGUTBZZcc3rUxpiPomh2PXvx4Ib8EcuV9+BCL73YaUYEqPRMGG6+1+fIOcURSVfyd6l5HoMvQ==
X-Received: by 2002:a05:600c:225a:b0:401:2ee0:7558 with SMTP id a26-20020a05600c225a00b004012ee07558mr7265745wmm.32.1695040099749;
        Mon, 18 Sep 2023 05:28:19 -0700 (PDT)
From: George Dunlap <george.dunlap@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@cloud.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH] docs: Document a policy for when to deviate from specifications
Date: Mon, 18 Sep 2023 13:28:16 +0100
Message-ID: <20230918122817.6577-1-george.dunlap@cloud.com>
X-Mailer: git-send-email 2.42.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

There is an ongoing disagreement among maintainers for how Xen should
handle deviations to specifications such as ACPI or EFI.

Write up an explicit policy, and include two worked-out examples from
recent discussions.

Signed-off-by: George Dunlap <george.dunlap@cloud.com>
---
NB that the technical descriptions of the costs of the accommodations
or lack thereof I've just gathered from reading the discussions; I'm
not familiar enough with the details to assert things about them.  So
please correct any technical issues.
---
 docs/policy/FollowingSpecifications.md | 219 +++++++++++++++++++++++++
 1 file changed, 219 insertions(+)
 create mode 100644 docs/policy/FollowingSpecifications.md

diff --git a/docs/policy/FollowingSpecifications.md b/docs/policy/FollowingSpecifications.md
new file mode 100644
index 0000000000..a197f01f65
--- /dev/null
+++ b/docs/policy/FollowingSpecifications.md
@@ -0,0 +1,219 @@
+# Guidelines for following specifications
+
+## In general, follow specifications
+
+In general, specifications such as ACPI and EFI should be followed.
+
+## Accommodate non-compliant systems if it doesn't affect compliant systems
+
+Sometimes, however, there occur situations where real systems "in the
+wild" violate these specifications, or at least our interpretation of
+them (henceforth called "non-compliant").  If we can accommodate
+non-compliant systems without affecting any compliant systems, then we
+should do so.
+
+## If accommodation would affect theoretical compliant systems that are
+   not known to exist, and Linux and/or Windows takes the
+   accommodation, take the accommodation unless there's a
+   reason not to.
+
+Sometimes, however, there occur situations where real, non-compliant
+systems "in the wild" cannot be accommodated without affecting
+theoretical compliant systems; but there are no known theoretical
+compliant systems which exist.  If Linux and/or Windows take the
+accommodation, then from a cost/benefits perspective it's probably best
+for us to take the accommodation as well.
+
+This is really a generalization of the next principle; the "reason not
+to" would be in the form of a cost-benefits analysis as described in
+the next section showing why the "special case" doesn't apply to the
+accommodation in question.
+
+## If things aren't clear, do a cost-benefits analysis
+
+Sometimes, however, things are more complicated or less clear.  In
+that case, we should do a cost-benefits analysis for a particular
+accommodation.  Things which should be factored into the analysis:
+
+N-1: The number of non-compliant systems that require the accommodation
+ N-1a: The number of known current systems
+ N-1b: The probable number of unknown current systems
+ N-1c: The probable number of unknown future systems
+
+N-2 The severity of the effect of non-accommodation on these systems
+
+C-1: The number of compliant systems that would be affected by the accommodation
+ C-1a: The number of known current systems
+ C-1b: The probable number of unknown current systems
+ C-1c: The probable number of unknown future systems
+
+C-2 The severity of the effect of accommodation on these systems
+
+Intuitively, N-1 * N-2 gives us N, the cost of not making the
+accommodation, and C-1 * C-2 gives us C, the cost of taking the
+accommodation.  If N > C, then we should take the accommodation; if C >
+N, then we shouldn't.
+
+The idea isn't to come up with actual numbers to plug in here
+(although that's certainly an option if someone wants to), but to
+explain the general idea we're trying to get at.
+
+A couple of other principles to factor in:
+
+Vendors tend to copy themselves and other vendors.  If one or two
+major vendors are known to create compliant or non-compliant systems
+in a particular way, then there are likely to be more unknown and
+future systems which will be affected by / need a similar accommodation
+respectively; that is, we should raise our estimates of N-1{b,c} and
+C-1{b,c}.
+
+Some downstreams already implement accommodations, and test on a
+variety of hardware.  If downstreams such as QubesOS or XenServer /
+XCP-ng implement the accommodations, then N-1 * N-2 is likely to be
+non-negligible, and C-1 * C-2 is likely to be negligible.
+
+Windows and Linux are widely tested.  If Windows and/or Linux make a
+particular accommodation, and that accommodation has remained stable
+without being reverted, then it's likely that the number of unknown
+current systems that are affected by the accommodation is negligible;
+that is, we should lower the C-1b estimate.
+
+Vendors tend to test server hardware on Windows and Linux.  If Windows
+and/or Linux make a particular accommodation, then it's unlikely that
+future systems will be affected by the accommodation; that is, we
+should lower the C-1c estimate.
+
+# Example applications
+
+Here are some examples of how these principles can be applied.
+
+## ACPI MADT tables containing ~0
+
+Xen disables certain kinds of features on CPU hotplug systems; for
+example, it will avoid using TSC, which is faster and more power
+efficient (since on a hot-pluggable system it won't be reliable), and
+instead fall back to other timer sources which are slower and less
+power efficient.
+
+Some hardware vendors have (it seems) begun making a single ACPI table
+image for a range of similar systems, with MADT entries for the number
+of CPUs based on the system with the most CPUs, and then for the
+systems with fewer CPUs, replacing the APIC IDs in the MADT table with
+~0, to indicate that those entries aren't valid.  These systems are
+not hotplug capable.  Sometimes the invalid slots are on a separate
+socket.
+
+One interpretation of the spec is that a system with such MADT entries
+could actually have an extra socket, and that later the system could
+update the MADT table, populating the APIC IDs with real values.
+
+If Xen finds an MADT where all slots are either populated or filled
+with APICID ~0, , should it consider it a multi-socket hotplug system,
+disable features available on single-socket systems?  Or should it
+accommodate the systems above, treating the system as systems
+incapable of hotplug?
+
+N-1a: People have clearly found a number of systems in the wild, from
+different vendors, that exhibit this property; it's a non-negligible
+number of systems.
+
+N-1b,c: Since these systems are from different vendors, and there seem to
+be a fair number of them, there are likely to be many more that we
+don't know about; and likely to be many more produced in the future.
+
+N-2: Xen will use more expensive (both time and power-wise) clock
+sources unless the user manually modifies the Xen command-line.
+
+C-1a,b: There are no known systems that implement phyical CPU hotplug
+whatsoever, much less a system that uses ~0 for APICIDs.
+
+There are hypervisors that implement *virtual* CPU hotplug; but they
+don't use ~0 for APICIDs.
+
+C-1c: It seems that physical CPU hotplug is an unsolved problem: it was
+worked on for quite a while and then abandoned.  So it seems fairly
+unlikely that any physical CPU hotplug systems will come to exist any
+time in the near future.
+
+If any hotplug systems were created, they would only be affected if
+they happened to use ~0 the APIC ID of the empty slots in the MADT
+table.  This by itself seems unlikely, given the number of vendors who
+are now using that to mean "invalid slot", and the fact that virtual
+hotplug systems don't do this.
+
+Furthermore, Linux has been treating such entries as permanently
+invalid since 2016.  If any system were to implement physical CPU
+hotplug in the future, and use ~0 as a placeholder APIC ID, it's very
+likely they would test it on Linux, discover that it doesn't work, and
+modify the system to enable it to work (perhaps copying QEMU's
+behavior).  It seems likely that Windows will do the same thing,
+further reducing the probability that any system like this will make
+it into production.
+
+So the potential number of future systems affected by this before we
+can implement a fix seems very small indeed.
+
+C-2: If such a system did exist, everything would work fine at boot;
+the only issue would be that when an extra CPU was plugged in, nothing
+would happen.  This could be overridden by a command-line argument.
+
+Adding these all together, there's a widespread, moderate cost to not
+accommodating these systems, and an uncertain and small cost to
+accommodating them.  So it makes sense to apply the accommodation.
+
+## Calling EFI Reboot method
+
+One interpretation of the EFI spec is that operating systems should
+call the EFI ResetSystem method in preference to the ACPI reboot
+method.
+
+However, although the ResetSystem method is required by the EFI spec,
+a large number of different systems doesn't actully work, at least
+when called by Xen: a large number of systems don't cleanly reboot
+after calling the EFI REBOOT method, but rather crash or fail in some
+other random way.
+
+(One reason for this is that the Windows EFI test doesn't call the EFI
+ResetSystem method, but calls the ACPI reboot method.  One possibile
+explanation for the repeated pattern is that vendors smoke-test the
+ResetSystem method from the EFI shell, which has its own memory map;
+but fail to test it when running on the OS memory map.)
+
+Should Xen follow our interpretation of the EFI spec, and call the
+ResetSystem method in preference to the ACPI reboot method?  Or should
+Xen accommodate systems with broken ResetSystem methods, and call the
+ACPI reboot method by default?
+
+N-1a: There are clearly a large number of systems which exhibit this
+property.
+
+N-1b,c: Given the large number of diverse vendors who make this
+mistake, it seems likely that there are even more that we don't know
+about, and this will continue into the future.
+
+N-2: Systems are incapable of rebooting cleanly unless the right runes
+are put into the Xen command line to make it prefer using the ACPI
+reboot method.
+
+C-1a: A system would only be negatively affected if 1) an ACPI reboot
+method exists, 2) an EFI method exists, and 3) calling the ACPI method
+in preference to the EFI method causes some sort of issue.  So far
+nobody has run into such a system.
+
+C-1b,c: The Windows EFI test explicitly tests the ACPI reboot method
+on EFI systems.  Linux also prefers calling the ACPI reboot method
+even when an EFI method is available.  The chance of someone shipping
+a system that had a problem while that was the case is very tiny: it
+basically wouldn't run either of the two most important operating
+systems.
+
+C-2: It seems likely that the worst that could happen is what's
+happening now when calling the EFI method: that the ACPI method would
+cause a weird crash, which then would reboot or hang.
+
+XenServer has shipped this accommodation for several years now.
+
+Adding these altogether, the cost of non-accommodation is widespread
+and moderate; that is to say, non-negligible; and the cost of
+accommodation is theoretical and tiny.  So it makes sense to apply the
+accommodation.
\ No newline at end of file
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Mon Sep 18 12:31:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 12:31:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604018.941208 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDPV-0007hU-Ha; Mon, 18 Sep 2023 12:31:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604018.941208; Mon, 18 Sep 2023 12:31:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDPV-0007hN-F4; Mon, 18 Sep 2023 12:31:29 +0000
Received: by outflank-mailman (input) for mailman id 604018;
 Mon, 18 Sep 2023 12:31:28 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ngl4=FC=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qiDPU-0007hH-UV
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 12:31:28 +0000
Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com
 [2a00:1450:4864:20::32f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4979a252-561f-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 14:31:27 +0200 (CEST)
Received: by mail-wm1-x32f.google.com with SMTP id
 5b1f17b1804b1-40476ce8b2fso38048555e9.3
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 05:31:27 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 7-20020a05600c230700b003fefcbe7fa8sm12422668wmo.28.2023.09.18.05.30.51
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 18 Sep 2023 05:31:08 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4979a252-561f-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695040287; x=1695645087; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=Eyq7XKz+Pwc3IHWuGyUogdikjt6N7gbNZGUDPCycHWE=;
        b=kfvuNamhIyVRVTW5HwntsD4Oe53peDtYew5/qMhr1l6V7RTdkf9aBgzJx71unBDXOg
         vKSubAlbmykc/xhT4iUsN4kt/jllD2G7DuNmeZQbIW+O/o2aWZm7fz+YUQlit/NpRfZv
         X4xbEcrzaDP3DAb0eBDpXQ1lTZ4X/NyQB2svQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695040287; x=1695645087;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=Eyq7XKz+Pwc3IHWuGyUogdikjt6N7gbNZGUDPCycHWE=;
        b=aTGGS/PB5oxOkh6Y7efnq0IdV38XBlQaNDBLfgMjuobXHvn18HIoI31yZ1d6ndJa5M
         KNa3SnHtj7Tf2SJgfZFf9tVMjUsSPBOUA63ZfwJUB8ywVHLFzGebtJB3V4v1rMhhPq26
         Qh9sTZ7OFk5/+TeLKIVZApwvtLFyF9E4mvaa+ITVST6qAsPwYpTDuT+yCs/o/f0XiIQN
         lXnIbNipRy7y0NYdiKkUZGuU8Mpw4UKG15XlbQEhh4VOh6ZRrMgHYbcgUTNyYhqMNMK2
         V9aBa8qIDRkU1GNAqyUFK8iAhq13MNi3iIO9Aytqw1Ffayy4ISSYXDcNXkg5Gp5PiNOv
         NK+Q==
X-Gm-Message-State: AOJu0Yzl14FzzCmQ1sjo/NmILU4qlKVFJu0Gl9KcXFdetSta+L0kTYgT
	5S1rU0FP6pW7liXOazputRMTvptwIxpb6zUo+T4=
X-Google-Smtp-Source: AGHT+IGCkzVGmx78iq0Pc4rpUPg8VOyCxqnY4qyMet0vDPgE6Glk0JEQbLxzRDMmaHpTYcM3BdH9dA==
X-Received: by 2002:a05:600c:228c:b0:401:c52c:5ed8 with SMTP id 12-20020a05600c228c00b00401c52c5ed8mr7524727wmf.13.1695040286752;
        Mon, 18 Sep 2023 05:31:26 -0700 (PDT)
Message-ID: <7d1eb0eb-adec-0890-2c30-a99404e0291c@citrix.com>
Date: Mon, 18 Sep 2023 13:30:51 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 4/9] x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_*
 comments
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
 <20230915150038.602577-5-andrew.cooper3@citrix.com>
 <7eeaaf67-336b-e5a1-6f64-9ad5db14e330@suse.com>
In-Reply-To: <7eeaaf67-336b-e5a1-6f64-9ad5db14e330@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 18/09/2023 11:59 am, Jan Beulich wrote:
> On 15.09.2023 17:00, Andrew Cooper wrote:
>> ... to better explain how they're used.
>>
>> Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
>> corner case when e.g. an NMI hits late in an exit-to-guest path.
>>
>> Leave a TODO, which will be addressed in subsequent patches which arrange for
>> DO_COND_VERW to be safe within SPEC_CTRL_EXIT_TO_XEN.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>
> Two nits though:
>
>> @@ -233,7 +236,11 @@
>>          X86_FEATURE_SC_MSR_PV
>>  .endm
>>  
>> -/* Use in interrupt/exception context.  May interrupt Xen or PV context. */
>> +/*
>> + * Used after an exception or maskable interrupt, hitting Xen or PV context.
>> + * There will either be a guest speculation context, or (baring fatal
> Isn't this "barring"?
>
>> @@ -260,7 +270,13 @@
>>  .endm
>>  
>>  /*
>> - * Use in IST interrupt/exception context.  May interrupt Xen or PV context.
>> + * Used after an IST entry hitting Xen or PV context.  Special care is needed,
>> + * because when hitting Xen context, there may not a well-formed speculation
> Missing "be"?

Both fixed, thanks.

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 12:38:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 12:38:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604022.941219 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDWe-0000O1-9Z; Mon, 18 Sep 2023 12:38:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604022.941219; Mon, 18 Sep 2023 12:38:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDWe-0000Nu-5c; Mon, 18 Sep 2023 12:38:52 +0000
Received: by outflank-mailman (input) for mailman id 604022;
 Mon, 18 Sep 2023 12:38:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiDWc-0000No-Us
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 12:38:50 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2060a.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::60a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 50a4c759-5620-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 14:38:48 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB9078.eurprd04.prod.outlook.com (2603:10a6:20b:445::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 12:38:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 12:38:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 50a4c759-5620-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MvxW7icilHHmHVcekEnT512IX0PMZdwBSA8aFzZigUaxFdOqC1br+BC/NGFC/coajf3qyhqgUBZx2TCGLyLok7cVSzsxhc+dAJcMKKI8Q9WJE3O9rnZv8YB+szGpl7vsdFqaM+IHLQwpI6QcROEX29jzQ98dQgvf2p29jY6YynkjikMQf4v9WBmLqtcKQM0uLeDneO5nwFWAGQ/nE1R7sSQw5jEMevZ1CcyCNQqhMJFCY2utFM2CEIlDYtf7h6Nk9r45g5pBFyFpJix4saWmxV9WrtvKRXJgGABuLqo3V+e5FjU+vzghbhJi3G0eldaFM9VfE8Q7f2XDbK9YcIx6cw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yATWy4TPIq9TWYW9FN9Q0A8g7qVkB9cUrYYQDbKnxcA=;
 b=b7aVc7wwQ29vatUDxEWy8IXiAv2JOvldlsScaToNSBkMHANYC7cr9hOoZu20MHeONGTg4tErdaqJY8e+c6wP48p1dn/VJX0RXnj2nPOdO/I/wbfTDxlZW8BQ4GtHWhGt1NAolMOuY+rxtytEe6IlTDk5TlKiPvqDH1IdXnFG2DbCtAsXxd2eP1K5gX57uu6RMr/ol5TWadmP3VNhiYSHxhm7572ztcEwoSSw+MvCY799ZDQ553UdtJqVYGdEuyQ8GbILsp0rtoI8x3BP7tzyNTHlAywp9S3XrsAEU0MBiCTuXCMrmtii4xGNW6gmldG3PlVLNXZTeKlsud8mXfNAZw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yATWy4TPIq9TWYW9FN9Q0A8g7qVkB9cUrYYQDbKnxcA=;
 b=N7VV2ekaVcXlGlGOwedOq15cNdZz9Tf8RXh1styqjqIldZP3OUWwDYpY4fwFkM8cCZR5EFVI7W0IkLKdKKIt0x9hfOudiudRDpB8zCreJJCSaXDSX6YITz85BOT3SOZoel0FkznzYVxrgdrMWIk6jUwyOU73Eem7OrR1PBfq8yKXPK/c3TDVzlwHq88xx3hPd1EKgpxvs+sG8tzwKR636kdjhZ96pXTdMr4RD57Fb4DsMkKh0duNOeeMYnMZJoZUiJKSTb2+2kD1J2jqFrglufmFGNBv0UiBrZ2FtRb+QwbsUJ4TGFjZ8kQvB7MXKI9L5iFHIvxy8dDHJjpWPG4aCA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7d59acfd-26d0-bb9b-568e-d273252d1f2c@suse.com>
Date: Mon, 18 Sep 2023 14:38:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v1 00/29] Introduce stub headers necessary for full Xen
 build
Content-Language: en-US
To: Oleksii <oleksii.kurochko@gmail.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
 <da588ba7-f22f-9aa2-4346-de75783bd65e@suse.com>
 <9036713e5a5e67199b78b25ad1607be605b4a812.camel@gmail.com>
 <3b7ef926-ed06-609f-d443-544bd9125bec@suse.com>
 <09d0449004162ccd339e9e8559b7efad3e2335bb.camel@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <09d0449004162ccd339e9e8559b7efad3e2335bb.camel@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0100.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a1::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB9078:EE_
X-MS-Office365-Filtering-Correlation-Id: 059c80b1-a677-49ff-8c6e-08dbb8443362
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	SRU5XBl+zNL7ohm7HxhXKyxburH0dulgFLXY738EtCvfIgQ/i7gE6eQCvDxfBn4HiVABfOCZiFZRNjzqpSakaTkq7wJ9zpEacnuVq4yEP5tfofgHPduMs+qV8K4p+2k1K81BTo7FRDnJd6uZDXl7c9Xz+AcyqzDKcx2hhxyLlTVNIH5KLweov78zRM1qn/1Rn74+ZXLvv5kgYz7z56G3y2uTwiE8TQ0Dhbehhxi+Aoh6RlCRnBj9w6gakWsW7xWTOMCdPIi6vMR4nAGCeZnqcULIzst12UjUXZubVZf3uB3U/H5l+wOpCE0eFuBfV0ODijLIzNBSkx2ckQbDTUeLfJKX4Hzt7YK/uGhOjUpJMG66QeygsG5iCTUVA7PQF2WMvka8+x0g40Q+fbEc2k8A4XO1a8F24DvPYFts4gi2fBOXEcF61oo0yA0hMbPFwmdOaGd6i+du+ABuVm5hVrcDhqiN59igxKVTKQ8knrNF+iAbyrcWVluV/8W0vf5iqMeXKKkIW97z9c+ho7b5+WbkvOEu+IQGmvdwbNaNLG21z/B1w0ZZHdCtKzJ/B+1OSl2qm9Tkim5vHEnd9o3zkNCAbL2Th/CcFyCe7YbQPuRw8tEEttuMgS5HFyDtGzeSNzFoihbn/dO2RXD1HFLqHqX5oQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(396003)(376002)(136003)(366004)(1800799009)(186009)(451199024)(6512007)(53546011)(6486002)(6506007)(83380400001)(86362001)(31696002)(38100700002)(36756003)(2616005)(26005)(66556008)(66946007)(6916009)(66476007)(54906003)(7416002)(41300700001)(316002)(2906002)(5660300002)(8676002)(4326008)(8936002)(31686004)(966005)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bmt3STU4VzhHZ1BtekNyRXdjaHpZcEVXN3hWYWNLd0c3TEFqY3pvMEQyRkhZ?=
 =?utf-8?B?UG1tVmJPMlFrM3FiMmpld21OdzdqRXdtU2NJOUhIbVJpUUVaVUZNeG1MTXpB?=
 =?utf-8?B?MUZjY2NUMi9GbzlncFFTOFI1RDh1OG9JbmE3Ukl1Tnh0TzlDdk9zU1doUmll?=
 =?utf-8?B?ejIzM3I3TXB4Z3pOQzg5MFVOQW00Z0x0MVFjZHY5T01zcnZJR3E4RGliR1hx?=
 =?utf-8?B?SHR0eXRDdWM4MldsQ2FncVhtMUhxczgvZVdER0FodHNDTHhqQXl1cEkvWjRH?=
 =?utf-8?B?SUFXYjJ5NVZzZVM1UWd6Ky80R1JoQUdlNVBjYkNzS2NqNnZGcGJ2Z3g4SXJw?=
 =?utf-8?B?SitUcGNLRXpmOHpMSEhTaGdRWmVQeFRjdnJzM0RldEVEaWpBSHdWdiszVExq?=
 =?utf-8?B?RzAwREFsZTFUZ1lLWnorVWZ2YWQ4amxTS2l5VHU1OUJnOWNKaURXMk1hTTFW?=
 =?utf-8?B?K0FDL3RTNU5uZzA2UUpsVXdhcmtkRFVoRHRiNGI2a3MvMjc2TDZJTU55MWdS?=
 =?utf-8?B?U3QrSVRzMjVYVUNOdW0yUHROb2dleEVLODRrcHFseGNUQ3JIU0tGS1M2UnVC?=
 =?utf-8?B?OWdsZVNKWFVvaWJPUUtJUHlLbE1IeEY3VE92YUkxcVNjQzFETWhUOW84VVlN?=
 =?utf-8?B?R0JMait1VzY1a1RHOW4xZDZmY0dTRmVKVnZCZkVYWTZxbnhCM2EwS2N4N1Yw?=
 =?utf-8?B?azd6K2g0S1ZFSG9EaENNa2Q1T05TNjZQQmFhSGVCejNKa3c3Vm5KUnZnYWNI?=
 =?utf-8?B?b1RseGhtTEtyRysxUVEyeEliUWRVQXR5dGQ3UzhVR1lmRktDL1gyenpkaEVU?=
 =?utf-8?B?QUZ1S1BveTlOZ25JanZNU0VOVXUwdlh5YXlCUWx0S21aZnQraWtWSEpheXd4?=
 =?utf-8?B?dWQ3TGR5RC81Y3A2eVV5NUVoVWt0cStzY1VydEdiL3RtR0tQZThidUdBZ3I2?=
 =?utf-8?B?dWhTNldrc21mSm90OFg5eE4wS3pMc01jWEE0UmpubWdTeDJneFBXUHBpRzIy?=
 =?utf-8?B?VGtxNy9GeVpjZlZvbU1ySGZNS3MxSWpJTGN6SkwyelRtL3lrRkVocHlRSWJT?=
 =?utf-8?B?a3ZiZUFyWEpkWXJVbXJsckUza0dsc1RTUmZESm5oWkNtS2xQeEVrbitnTmRh?=
 =?utf-8?B?WjRZalpQYlI3MGdPNm8rMW10a2lMRlRBZmNsTFZJT1dzZWZQQlZGNkswT0xI?=
 =?utf-8?B?WmoyaDlzbzBzdy9ydGs0NXlSc1VNM3RDcDQrZnFVMEVOekZpeVVmOW1mbGV6?=
 =?utf-8?B?b1gvTXJxMEltc3RhMTNuUUE0QVpqa3hKM1dnbnZKMStPVk9JVGROcXVUUzZM?=
 =?utf-8?B?WVJTNGwrMVRPNldUQS9hd0N6SU1Od3FFMzdpenBZWER6YTNtaXE5NWhkeFI3?=
 =?utf-8?B?YmtlSXZ6enhiRXE2aDdSZXh4Yi9qVkwxUW13UXpHMWFMM3dMbEQvaWVab05k?=
 =?utf-8?B?VTl2UEYvYXJFaDJNT3dvZ1BZTkNRRExrQm5DNTdJTVJvWk8xWWZqU0Y0eXk4?=
 =?utf-8?B?RVVpcXBFRUt6dkZBSmtzMXpHQzhNYjNZQnVmV1B5NzZDRnE4R0M1K1JvMHBn?=
 =?utf-8?B?ZFgvaTZ4d1g5YkpSaTJ6bkFsTklTQzI1VzMvbDRIL1k5eTcyYUNuQmNDNjdX?=
 =?utf-8?B?QTdES3J4M1l1TnEyaGVCWWdHU0JwMjNoV1F5VEovZ2hxSlJjK04vQUlncGdO?=
 =?utf-8?B?NXMvL1BwWTMrbVZ1UFdQaVp1TExCWTV6aTZNN1p6UkRLWG1pOHgxR3VyemZo?=
 =?utf-8?B?L0dvWEpJNTBSaW00TnhOWGZkdEdndVVYUmhoY1MrcUpBK1BtUTc5c2M0QTRm?=
 =?utf-8?B?cmJ5ajZLUDBYb0RpZktDOXJsZVVOMU1jNzZFOW1iRXc4QTIwTXdEbjJZM3FM?=
 =?utf-8?B?c2RwWWhxcndJZFpRU3E1TEt3MmVySld2bzJFL0lVclhzRE9vTmtiNkx5NnpF?=
 =?utf-8?B?c0RuUHUwWDBwWldodFBLSmkxUC9ia1IyMkgxaGZQa1ErSHlkUHZPdXppMThD?=
 =?utf-8?B?RmowaU5ZeUcwSHArZ3lNQVhLaDVpWkV5ZW93eGE3aGZsTXl4dk5oZ3dtWkdw?=
 =?utf-8?B?b2xqWjc3OXYzR0VhZ2c0TEh2UXd1Y253OERwTTJrY1lvLzQwclVrTTBGcXV3?=
 =?utf-8?Q?fg5eO5iZOsWTvZ5SrceHnQOAG?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 059c80b1-a677-49ff-8c6e-08dbb8443362
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 12:38:46.3729
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: iivqsGNx/BB8YMhdb6oJc+bGVSXAMEmqV66dO9iB3xBeZGDjGqsuolB0RzVxsqjJCao80nTO30niVuwNTDZVFg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9078

On 18.09.2023 14:05, Oleksii wrote:
> On Mon, 2023-09-18 at 11:29 +0200, Jan Beulich wrote:
>> On 18.09.2023 10:51, Oleksii wrote:
>>> On Thu, 2023-09-14 at 17:08 +0200, Jan Beulich wrote:
>>>> On 14.09.2023 16:56, Oleksii Kurochko wrote:
>>>>> Based on two patch series [1] and [2], the idea of which is to
>>>>> provide minimal
>>>>> amount of things for a complete Xen build, a large amount of
>>>>> headers are the same
>>>>> or almost the same, so it makes sense to move them to asm-
>>>>> generic.
>>>>>
>>>>> Also, providing such stub headers should help future
>>>>> architectures
>>>>> to add
>>>>> a full Xen build.
>>>>>
>>>>> [1]
>>>>> https://lore.kernel.org/xen-devel/cover.1694543103.git.sanastasio@raptorengineering.com/
>>>>> [2]
>>>>> https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kurochko@gmail.com/
>>>>>
>>>>> Oleksii Kurochko (29):
>>>>>   xen/asm-generic: introduce stub header spinlock.h
>>>>
>>>> At the example of this, personally I think this goes too far.
>>>> Headers
>>>> in
>>>> asm-generic should be for the case where an arch elects to not
>>>> implement
>>>> certain functionality. Clearly spinlocks are required uniformly.
>>> It makes sense. Then I will back to the option [2] where I
>>> introduced
>>> all this headers as part of RISC-V architecture. 
>>
>> You did see though that in a reply to my own mail I said I take back
>> the
>> comment, at least as far as this header (and perhaps several others)
>> are
>> concerned.
>>
> I missed that comment on the patch about spinlock.
> 
> Well, then, I don't fully understand the criteria.
> 
> What about empty headers or temporary empty headers?
> 
> For example, asm/xenoprof.h is empty for all arches except x86, so it
> is a good candidate for asm-generic.

That's an example where I think it is wrong (or at least unnecessary) for
the xen/ header to include the asm/ one irrespective of the controlling
CONFIG_* setting. From what I can tell common code would build fine with
the #include moved; x86 code may require an adjustment or two. IOW this
is a case where I think preferably presence of an arch header was
required only when XENOPROF can actually be yet to y in Kconfig.

> But asm/grant_table.h is empty for PPC and RISC-V for now but won't be
> empty in the future. Does it make sense to put them to asm-generic? The
> only benefit I see is that in future architecture if they follow the
> same way of adding support for the arch to Xen, they will face the same
> issue: building full Xen requires this empty header.

Here I can see different ways of looking at it. Personally I'd prefer
stub headers to be used only if, for the foreseeable future, they are
intended to remain in use. grant_table.h pretty clearly doesn't fall in
this category. (You may want to peek at what's being done on the PPC
side. Nevertheless some of what's done there could likely benefit from
what you're doing here.)

> So, should I wait for some time on other patches of the patch series?

Well, afaic I'd prefer if I got a chance to look over at least some more
of the patches in this series. But you're of course free to submit a v2
at any time.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 12:47:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 12:47:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604028.941229 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDf1-0003H5-3A; Mon, 18 Sep 2023 12:47:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604028.941229; Mon, 18 Sep 2023 12:47:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDf0-0003Gy-Vt; Mon, 18 Sep 2023 12:47:30 +0000
Received: by outflank-mailman (input) for mailman id 604028;
 Mon, 18 Sep 2023 12:47:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiDez-0003Fg-G3
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 12:47:29 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2061f.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::61f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 858d83b9-5621-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 14:47:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB6975.eurprd04.prod.outlook.com (2603:10a6:803:138::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 12:47:25 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 12:47:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 858d83b9-5621-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KHf22Sstx54HDzBNtCZSL2bAYhohykbaIB0K9YiB93zXn8WlZxEtFO2yswjOv5AnvEPqp8EZsMIkFxI78nVxiYZDcshLLqUSp+nZ2d1dar0mReq5+6/YXUi1a6f8KjpK8Iw6t+p+ave4JFiziCERchb3HhffIARJKw4lqwAPjDpwGgUWi1/MIvVzZJjP2ORO9XTrMF2ejcp4ur2PX4TS52UdlRzjstPeMj7ev1cDptH96JYWNmSXMbz22Z71JxTgj931FiiMq2V1XdZJAdSutNxElE+7yheHUzZls5O+8bOiMt5R9909OaVXK2q1L10PIdOuzcgnqqyQiPvpD7CsOQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Y4oLDHGUZlzoQxIRnoNycqPiSqkuZNuVp7IdQwO2haQ=;
 b=h5SNQqphRZy45CYste7Ukg79L6X53syR3a8sjJrB/dhXCQes4y4Li25+wDG6mr0RcPFmQQsu7wllX5hyOE543D8KSn5PuQGi9r77UYTlvIjdVxdmwQG47Z29knmN6ewFmMrNMLChskI/z6w7AaaDOqweDIEa/B5llb8JYAhDAYMphFqezYDfY/EpYrTE5KkTBL1LmXl6cca5F1xIIj8/ufwMVQ+ze4V4RADMR8eiqCgcS4Zbk16tv1DecABJuoXB8Zl8hJsqI9VLTr89uhvJhxLEUE88oqC3/OHeR7Ka0mJkk56Te15Omaz4j8WaZEoNd2FlIh7zHQZvAne0G0pXuw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Y4oLDHGUZlzoQxIRnoNycqPiSqkuZNuVp7IdQwO2haQ=;
 b=4c3icr8PA5/3x7cDiJp+xtKN/dinanf8KGSUrPBsUqIWu2kCz8yntr+oTeIz1m83dzvJF1Iro8x/tf2ZAsr0DkdbLezL35/JDOqh23KPVYtwYf2bnjY/HyelDeq4SZINT//E6KtrqZ8kZQaPint1nt0EE06HTaybArQ8iC+qPZqQZcuDUtBfXPoxq3sL5ggef30ZrEH0qOiUVAzB6VedaNwsphBq/2klG1Qm9vgdPEltm9UKKyFe3BeFY+SA8rLGZplvr9ACtMwSllQmFWd3MvHaa4Yv7p06jPXtfZgEyqIlLBvdI3s3+DTTm5HNB8y/T8J4Q12C57CPWYNTw1lPFA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <82bc3254-a3eb-30ae-e6ee-71568a686c90@suse.com>
Date: Mon, 18 Sep 2023 14:47:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 2/7] x86/emul: Fix and extend #DB trap handling
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-3-andrew.cooper3@citrix.com>
 <334fb537-ef7c-97e1-3274-736c4a2549b6@citrix.com>
 <311e2920-5e91-b9dc-77a7-263272a79a90@suse.com>
 <c119c09f-5f87-fb4d-9e73-968dbb4c0ac3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <c119c09f-5f87-fb4d-9e73-968dbb4c0ac3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0062.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ce::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB6975:EE_
X-MS-Office365-Filtering-Correlation-Id: 786acae1-1e2c-4670-2d82-08dbb84568ab
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	JL6eDQWGwgM3MoHCCTxB8ey1pbIBSAqGLQxZwpD+fEW+ag1nG7aMVFkIS19meLvufEsL0zIR2qUF+PN6tdwlLE3bD4vDUgK7ajaUyDjF11PVzkx8zPGHMqD6bFbUXh7xsJTrCYRmgCkz3GByC0b2weswz7q9kEagkBcKyOucHxnz2qvRSnwU+r4qAZTU1lyxH/CxtPdhk3/NU4opmM91WI1uqzrp8WLK/MQNZq8x9hKdyc4GCfvWsUHxuBG/WM5/L06fMEJ8kYI/tPIZi9zNaYhryx1ovsQGb7rpqq0nFPxTLpG+euHJ2MJHu1To+B6LuliKvr04J3TIgHw+UcYK3AhHJPGC4JRbDcNMhDaBg9TfKUnkv2T3XM0RtSu4l9/gnZNL6uufzdlL7clqxSGPd6i/l3FKTky106v3MWzK+T3/CU0kGyizRpjZH5bD3Vf5QClAzPDwcKkVkUQvdGp/cGUqkAt2MV7ypw1EmNoMlUIi22PR9l1nINS0epJQ4VkQhK96/5FMFhH0YDy0s+pjiV1itkHOgSzuEHpv3CbYBEVpv2IohBNPqobLg49RUi/M7+cFXMfDpBnD606i06t1QyK0XnTTk3TB5Fg4wYCjO8bgiDSnvBpBUUmrXGMxtSbzd0/X3TU8eiS/6+PZ37uDjQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(39850400004)(366004)(376002)(136003)(186009)(1800799009)(451199024)(53546011)(6486002)(6506007)(6512007)(478600001)(26005)(2616005)(2906002)(5660300002)(66556008)(66476007)(66946007)(54906003)(6916009)(8676002)(4326008)(8936002)(316002)(41300700001)(86362001)(31696002)(36756003)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?emFKWm1PbThJVnEweWFyTUh4N3dVbDNTOS9wTUdNdVZ3QVJUemRxd0diZUMv?=
 =?utf-8?B?eTNET3Q0RlpMbjFmZWUvTHJNTEM1VXA3Tk5sWi9pZ2hRWXNKNDJQU0lSd2xh?=
 =?utf-8?B?NjIybTVoZVhUTGFvSW5WTStJZStOd0o1ak1BUjlMWGh5eXNlNitGZFVrRkRk?=
 =?utf-8?B?ZVRZNWFXRThPclhITjlPL2U3RS9JTWljR2psOTFhTTNuTDdwT3VJSytIai9o?=
 =?utf-8?B?MzlhSmZJa0ovWjhGckYrVVR2Q2s4TlJhaWJoRGxNZGhjRFB2WVZxempCVTJG?=
 =?utf-8?B?ZHNNUWRVNjJXNTdwRmpVTVpZMllEdnBjOTFsdHQ4ekdaVDVCOGIrRFlWOHZr?=
 =?utf-8?B?OEM3NmxWTnl4ZGQ3Mmxmb2xIdTFIYlZvZ0RUYTk3a3ArTjBXOURzazNDYng2?=
 =?utf-8?B?c3NUSDZVMTlPVmxFV2JkZFJRN0dpSndxcG9URnJZVHU5YlArbmNzbTRUdDh4?=
 =?utf-8?B?YXhhSmhGVElUdGdDT1Y0MzRiUDUwelBrU3ZibWpoYWxMZFMxVEdURWZZcUhJ?=
 =?utf-8?B?V3VhbnJoY0QvdGNaRytaMTlIMEwrbWo0OUJCQjI2OXZrNkF4SGhvNnArUkZz?=
 =?utf-8?B?VThoUTFVTUNxRHliSTNXVmk4eEZXUFVXYnh0Z2ZXZDk4d08wbzlxellqa2p1?=
 =?utf-8?B?L09qakVROWpNVHVCTlFhaDlPelZlWFo2NWdWajFmTjZIZjM2b1R5KzMydEI5?=
 =?utf-8?B?ODB1cXlWODlTVWNyN2ROaGt1UkplQ2l1Z3FSUWdoL2xLUzBDbnlOK2dpVHds?=
 =?utf-8?B?emFya3JvZm9hQjl4d3EvUHRCNC9adWs2RUhUS01KdXhlMUdhcVVjVjJYQUFl?=
 =?utf-8?B?WTkvUTd5VkdMaExiVVJjRUJlWjdGTXVoQnVSWnJhK0NnYTZERWQrNVdzMGVq?=
 =?utf-8?B?dkl0NUQ5K3FoSXhPd29nK1JET24wcEZsZ0x2b2t4SmRnWisvR01tSDd6ZE5V?=
 =?utf-8?B?enRsTnBGQyt5d3BVQnF5RHpXUWxVcHkvZSs1MWtIRjJxUGE1NHg3TlpjS0pn?=
 =?utf-8?B?Z3RLbStnNlhyVmZSUUVHWW9QbDN2dkdWV2VGaWFzY3VKK1Nxc1U4YTAxRXhk?=
 =?utf-8?B?R1pTbGhOR3l1eWkwY3JDNHhNMnZId2JDb3ZiK0hRVklYd3BKbUJST292bWRt?=
 =?utf-8?B?eGdkaDRCNkRCbUNiVGlsRkREbm1hZzR6VnlQZXpKaStsWUpqaGd0ZStQVWZa?=
 =?utf-8?B?TlRiY2NmaTV1ZEZyRFI3dUMwVmFCQmJjcUJTYVNHMlNKMFllMzQvWWRnNXF1?=
 =?utf-8?B?RXpYb1dBWXZvR1lvRFNpakVxL1pWanYwQ0JEOE5zNjZEejVzRWNSM0dYNmVs?=
 =?utf-8?B?TVZHOWFScnNpSDRCeXlISGdaWjJURExkMzdCRjZBekR5TXdDaTdWdHhDUVE4?=
 =?utf-8?B?UUVGd2FRcWxpbGI3M1FNR2JjeHZsUlJRbEVYakFyYjhBT1lUamNBZzhTMzFq?=
 =?utf-8?B?MlgxSXVZZCtFNjU5UGFGbXR1d2hYNmt0WmJLY1QydFMrVFNqdzBmMHE0aTV5?=
 =?utf-8?B?TGtsbVh6VzVzbGZpa1lZK24vVE9wRmlKMzZPUGxkNDZCQkczOGhjNEtZRkR5?=
 =?utf-8?B?bE92WFhzWDQxRHVsQzhSOG9HUldzWEYybi96TmhpSlZHbW9zR2N4TnBkQ3ZP?=
 =?utf-8?B?cXBvVzFIUlkzWHZVNmh0OWVlanVrY29PN3I5VUpyd1BqM25PK3VHRFhNYWNy?=
 =?utf-8?B?VFV1V2FVT3JHMEdCUXFidWpwOS84SFpNdVY1K2c4SjlrdFRSRGdnL1Yxb29x?=
 =?utf-8?B?dFloczFyd0Y3aG9mWThDUEVNT2oxNy9VdlVza3VRVmlNWjlPSUpXbVZWaEJh?=
 =?utf-8?B?NEZzMEEyQkdDczNHQUZlWTJlUEtUdmdGbWx3ZUdUZUJTaEhFUjFha0RyQVZ3?=
 =?utf-8?B?Rno3ZWNBUncrdHFia1pxOHRPak9SUWdINDYybk8xTGc1dTY4UEhPczRqQWty?=
 =?utf-8?B?Smp6Skhjc2NjcFpxWjNmbldVNkNCaXdTV0hTMDRpQlJRcXo2RGpQeFh5Njd6?=
 =?utf-8?B?eEphVWtBZXpNc2pWeVFDUXZZQ083SVdTWFN5eEpyQkE1Y0RhV1F1VEVVME1I?=
 =?utf-8?B?bVVld0dBUWFKZzR3SkphV21TcUl0VkxORnhXN29aZnBVL2lmVVFTOXl2UWtw?=
 =?utf-8?Q?3Za851eJRvDszLqL/epnjjexo?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 786acae1-1e2c-4670-2d82-08dbb84568ab
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 12:47:25.2722
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: pJrNFwSBNmk9eEhY4uGefPiDABlaFUxh/CPwAdojUPci1b33G7s0HVrF1tnOT4EY55wB6SGE1RxWSSLQQuevtQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB6975

On 18.09.2023 14:19, Andrew Cooper wrote:
> On 18/09/2023 12:30 pm, Jan Beulich wrote:
>> On 18.09.2023 11:24, Andrew Cooper wrote:
>>> On 15/09/2023 9:36 pm, Andrew Cooper wrote:
>>>> --- a/xen/arch/x86/x86_emulate/x86_emulate.c
>>>> +++ b/xen/arch/x86/x86_emulate/x86_emulate.c
>>>> @@ -8379,13 +8379,6 @@ x86_emulate(
>>>>      if ( !mode_64bit() )
>>>>          _regs.r(ip) = (uint32_t)_regs.r(ip);
>>>>  
>>>> -    /* Should a singlestep #DB be raised? */
>>>> -    if ( rc == X86EMUL_OKAY && singlestep && !ctxt->retire.mov_ss )
>>>> -    {
>>>> -        ctxt->retire.singlestep = true;
>>>> -        ctxt->retire.sti = false;
>>>> -    }
>>>> -
>>>>      if ( rc != X86EMUL_DONE )
>>>>          *ctxt->regs = _regs;
>>>>      else
>>>> @@ -8394,6 +8387,19 @@ x86_emulate(
>>>>          rc = X86EMUL_OKAY;
>>>>      }
>>>>  
>>>> +    /* Should a singlestep #DB be raised? */
>>>> +    if ( rc == X86EMUL_OKAY && singlestep )
>>>> +    {
>>>> +        ctxt->retire.pending_dbg |= X86_DR6_BS;
>>>> +
>>>> +        /* BROKEN - TODO, merge into pending_dbg. */
>>>> +        if ( !ctxt->retire.mov_ss )
>>>> +        {
>>>> +            ctxt->retire.singlestep = true;
>>>> +            ctxt->retire.sti = false;
>>>> +        }
>>> I occurs to me that setting X86_DR6_BS outside of the !mov_ss case will
>>> break HVM (when HVM swaps from singlestep to pending_dbg) until one of
>>> the further TODOs is addressed.
>>>
>>> This will need bringing back within the conditional to avoid regressions
>>> in the short term.
>> I'm afraid I don't understand this: Isn't the purpose to latch state no
>> matter whether it'll be consumed right away, or only on the next insn?
> 
> Yes, that is the intention in the longterm.
> 
> But in the short term, where I'm doing just enough to fix the %dr6 bits,
> putting this unconditionally in PENDING_DBG will break the emulation of
> mov-to-ss until the bigger todo of "wire INTERRUPTIBILITY/ACTIVITY state
> into the emulation context" is complete.

Since I assume we're talking about the tail of _hvm_emulate_one(), my
problem is that I cannot see how setting X86_DR6_BS would lead to a
problem there. Plus you don't touch x86/hvm/ at all in the series, and
the pending_dbg field gets newly introduced in the patch here. Hence it
looks to me as if for HVM the field could take any value, without
breaking the code. But then, from you explicitly pointing out a problem,
I can only infer that I'm overlooking something.

> The latter is definitely too big to fit into 4.18, and I can't
> intentionally regress mov-to-ss in a series we intend to backport.

Of course.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 13:01:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 13:01:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604039.941256 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDsQ-0008Ox-M7; Mon, 18 Sep 2023 13:01:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604039.941256; Mon, 18 Sep 2023 13:01:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiDsQ-0008Oq-JI; Mon, 18 Sep 2023 13:01:22 +0000
Received: by outflank-mailman (input) for mailman id 604039;
 Mon, 18 Sep 2023 13:01:21 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiDsP-0008OM-Gh
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 13:01:21 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on062f.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 750ecb0f-5623-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 15:01:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7353.eurprd04.prod.outlook.com (2603:10a6:102:82::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Mon, 18 Sep
 2023 13:01:16 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 13:01:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 750ecb0f-5623-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dXoCB4Z8ZJ5xv4vo/lcyaQfWAjb/Vkw8nBVLBFJIPgx8FEVDl39QOMYweCed8TFHt4y9eg5ew5BnzeKh9tQXJGqulBTnQDEH1TR0dQpzNLfFPDYcoo8dAA8mnaAj2mAVRtrC+zF13y6EdAOAHdn+As0P07TMphm3uFOW2szFL+YB6UourfYxqbOtYL9gpFGCW/8dJ8lVn4n7PLzDrz/lWj1jNv4RLOV3dqJGv+ngwNxXTIw9/O3XT3H8lD8sIkU2PDSLHfWrXs9SNW5xWBbYJ9anGu096poAVLrf8VI3Wy8V0HuxnZGQzPUpptThAH/ytoOiV7h2WCM1uEDXAnjUHQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GDRTXhyEnove3BzMv0AvHNet2hJFeUKZNxbpuSsxB0k=;
 b=FhbFa6pmlgGsJnNvJ9izAw8dEB9yRNtYR5c9CGCwCvpJXGyLUoXWLaUQJOs2QPDm+8PmAzqM+WnkLmHNspaSIzq8YGyTSAdHtN0FjtrY4RZlUwdLfrPSt6Zhu6TMGQ+E05EmDYAMSgTmeTnyD3gTR3WpGRyEKRhPOS0XkXZ19HnVVof6CY4buMJWW1KXkgCbkIPM6yc40/wv85ME/Bd5jy25a1jtQHQ5Q0KNe10a6ZqldyyGBeyQXiNszbk1cQ7zBL6EqHsHyzvy+buZrpIU8Mbd65HFaC80p0WEBBS1qWjytZg7yAEjFtDwdcp+ff/mUjTvuUxWa3PIaOk4Zi08Vw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GDRTXhyEnove3BzMv0AvHNet2hJFeUKZNxbpuSsxB0k=;
 b=DW8RQUYdmvKjftm70OnFc84PvRPzQpQD5xfeZobnFWtSvbO7+ALyUbqiMdh/yVOCD8kMlPY/gQvbX244cl1qqD2Kjuk0xAEa1UQYks7F+f8NXsj1bOGqxpS+qSRk69DkBwMKxUF/03BgUkDV0l+FYk/d46D7CzEsFhiH3vdidLj7RwFci9fxPzvkTl56VSsngmR6dVSt/4/w8gXhCXZLLX8Pabiqt0YKKLfNw0/Tk090T9yMEwcHCi6zPMjBvpXPCkyXuavReRmnNBZWIF00LQiJlEO28704vqnqTH3karbRN1G+mD9LlurSWvLFcdFwYJj8DkW4M/j9StGYITULOw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ebd99e84-ed89-25c7-62f0-c82de3c4038b@suse.com>
Date: Mon, 18 Sep 2023 15:01:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v6 1/4] xen/ppc: Implement bitops.h
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694717278.git.sanastasio@raptorengineering.com>
 <b0a77fda0c663ecfbf40d177f275a51817efb28e.1694717278.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <b0a77fda0c663ecfbf40d177f275a51817efb28e.1694717278.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0092.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a9::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PR3PR04MB7353:EE_
X-MS-Office365-Filtering-Correlation-Id: 2d1af1f9-0cea-44d1-3f82-08dbb84757d6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	LsEJoFzUQZ2BTkaH/fkY/ZhJuK6E6bSRtz4bFDUzs4jUEIpB8sZpSzPmoD3Umvhl0zngdEhw94816JeTl1npQd8HnPE7zDwx08fK3AryBF+uXv+vIyVDRFBwk6WmiQhvit8olJ9yyM9/CNkZGbgfsdtMVg2denzPVlWxbK1TltAcKe7UdDDekTQAdJu0cvpsyoRVqfZfKcnaKMWFuhg276UWnSS7DON4x/rzN9YRrk+YrJUAlSD22EkIonNWiB50LXNNkc0gAjbordCuUUMQfGmb0PCE6k5YWU9vbjzOjmqgOkYs/LD1XNNZFVkJHuZzK6ENNZe9ih1sjwi6Ms1PuKbjCBfwQujX+WcmE1rllFJAg41A7Ys2meEeyjppxFETMUPGPSDtpJWEOiWR+5+r0W6eNHqk5pzmZymZhK2hrrgcNRz4B2yeYNsua72UHMfOko2AwIl0jCwKbqH7XbsRYxAASoFXBN8MMbhHM4wUVRQmIK8VzU8Y2LqeoBoSSW+JI40DA6WR/QUWuRW388ph3b8Qss0p+s94XFrUYS2n4b2HGCeP5cQprTbADIaN3luBImpbrjxCsUtEjOc3IYrLMrm/3PnSUpOOslyzwGUmCGNtB+B4EasRdTwE+/VGY659mO6zi+ITRBWzQXCi9ku1ig==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(346002)(396003)(366004)(136003)(1800799009)(451199024)(186009)(31686004)(6666004)(6506007)(6486002)(53546011)(31696002)(86362001)(38100700002)(36756003)(26005)(2616005)(4744005)(2906002)(6512007)(478600001)(83380400001)(5660300002)(8676002)(4326008)(316002)(6916009)(8936002)(41300700001)(66556008)(66946007)(66476007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?L3NqSTV5THlRMjk0eWlQemZLcUp6TVpsd2JPdFVPZVdEbmJSQXNZVG5BWUhD?=
 =?utf-8?B?N2p5RVhFMzVKcFlFeVFURkFnL0lGcWp1ODdUY1FyTW5qaG9pTGZMbUNndUxF?=
 =?utf-8?B?SVNtNUVnNzNZOVJTOUhXZEtLS0l4V1hYOFNVek5iQ1QvcEN6STNwQzFhd1ZB?=
 =?utf-8?B?OWVZNStyQ3IraVVGOTRGZTYya1R3RzdlWCtxb3pWZHhnZ0wwU3RjaEFlbEg1?=
 =?utf-8?B?UnU2empUeUllSUZuYnNOdVJ0eDA0ZzRCRWY4cUQzWktPWGtQWWNQV3JEWVcz?=
 =?utf-8?B?K051VWNTQkJvZExJbjQ3eUdxWTllTXVYV3d2U0dhUG1vUk5xY0JDY01kRzJI?=
 =?utf-8?B?V2NCRVhTaUpveUFXb0hZQ3doaVBYYmxUZzdoSkpNQUhZVlZ5bXo4RUdLeFVv?=
 =?utf-8?B?VW4yaWlnZDNjeTNrejJXai84eWkzbG91Sm95d2dLeVMzaENBZXZGNmVhM01W?=
 =?utf-8?B?ejFzTUx6RXNaOFZlbFVveXlCdmY1cUNqbTNpNUx2d1h6TTFrd3VkdGprT29u?=
 =?utf-8?B?RGFVeXV1K3BDU2tDQmxzcXF2N01sT0FzWFZLMG9WRisvNmZMUGR0MUJoUDVM?=
 =?utf-8?B?ZFNlRC9HVk1ybUVzc2lTV0pLRHN4amY2dWhtSVh4aUh0NERhR2RieXkya0xq?=
 =?utf-8?B?VFhMVmhUUGNDclk1anQ3ZFdBOWRMYktSdlNhWGwxRDRQWENsTUQzVXBHcSt1?=
 =?utf-8?B?YUgzczBHNzdFdk5CZ083QTZTcGxHd01aeVFCc2tuUXplUkpWS2dLVVlRMXdl?=
 =?utf-8?B?Q3RNZGQ2QURnakJGdzNTZ3lwQW9mNWdPV0tleUR6dHpUdGM3Sk5WZ3R2ZlN1?=
 =?utf-8?B?UjVXZ0E5MFJSNExldWtteHA4S1p3SFhSVXpVUnB6eEdSSEhFRFI1Z2l0RlB0?=
 =?utf-8?B?VDZFVmNsYWJUa2VBUVlOQmNJSGZUbERBeTBaUjdVYVJoSjQ1RURITDNYMGZN?=
 =?utf-8?B?OFFJRXJYYnBlU2JPN093eWkrU0lJZEhmMCs1U3pWYm52OVdzcmJndmV4RnB0?=
 =?utf-8?B?YUdaZkhSdWUrSTMzbkViRzltNHdHY1VkaG5zeVFkWXJNV3o4R2tWK3JZMkF6?=
 =?utf-8?B?SVE4UWZwSitqZVFaWExtWFh0MWFEZzRUalVMUVpvd2FUVldESHlJRklrd3h2?=
 =?utf-8?B?d08wWG1iQUx5cHJxQ0M5R2xUc1U3N3BpNEVHaUdUdkRJK3E1Wk5yM1lVd1Jz?=
 =?utf-8?B?aldub2RTU1lVYVEzWWp3N1JCVXJQenV1dyt5UUFLQnVRRzlFZXNYK3FVdXFm?=
 =?utf-8?B?VGFxeHJOOTAvRXk4UDVtQlN6R0FSaHRSTGNCQmhaYVo4OUlsUmQvbjZzWitB?=
 =?utf-8?B?WkVMTWttT3M3eDNKOGtySG9NTzZRMzBqaVM0TFdxbnNoS3NGK095cHJrVHQr?=
 =?utf-8?B?VTRKc1dLZFNMQU9VWHZxNVlYRldEZXZHOWhvVTJFVzJtbG4zMFNMeGpzN29w?=
 =?utf-8?B?YUlYVGR0Q3BaS2xQaEZIcHkyclhZU0FmMW0wZUxOb2VTQnJmamlNQXQwZS9r?=
 =?utf-8?B?UkdNTzR6VlpqV1djdE8xYzJGL0ZqNTk5MGYyTVE1NHJBcE1pUjV4eG1KbWNm?=
 =?utf-8?B?NEtlRnl4Qm5QYi9uMUwvUXZvRTBscnZ1Q3BCSTBmcmoyYklNRlB1N0J4WFp6?=
 =?utf-8?B?R2Uvclpnb2l3bXVadXE2amZMNjhZNVRnaWdJZERxa0VFQ2U2US9SQUIrdk54?=
 =?utf-8?B?cmNQVXVDWlptUEttdlZ0NE9YODJIdUxyM1FSL1RheUF0LzN5QUtKcFoyd3I4?=
 =?utf-8?B?WDVIWW9ZL2RYMTZoTUlXVnM4THlwVHRoWWVJbU5rNVR3RGNjMngydktKMkg0?=
 =?utf-8?B?Z2VYUExJUU1QaFZPYUJQMGV4c0taYloxb1lEUEV6M2JxTHMrQmlHbFlGc1lh?=
 =?utf-8?B?U3h3RnhMZ1RMcmtQUEMxemNncUxkNTNML2J2eUVTWjd5N1BJNXFSMzNtcUpa?=
 =?utf-8?B?TEZzdzBvRURDWlhlUUVDUUZTRXNtbXlwbnBrbU1yYVErSHpVMGFuZTFFcGx0?=
 =?utf-8?B?VmNyYlNMRjZWdWZTR28vWDU4WVU1alNOanZ3aW13SDZHellMY1RybG12VFpK?=
 =?utf-8?B?SFZucTEyYWJvY2FCc2JCT2pXdVZ5NjJoZFRtVnhsM3ZVWFJPelBmRW4yWGFo?=
 =?utf-8?Q?ygVEvHOOvZwtQpFodE88cOCaI?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2d1af1f9-0cea-44d1-3f82-08dbb84757d6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 13:01:16.0571
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 8xDzHANzGPEBpxmfIGgwN13jegLx6GgbB1IyiX1wO3CrfoqBmhYxqlkcppAZhC1PAI3HDJLR9PDrkBFHAZq2+w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7353

On 14.09.2023 21:03, Shawn Anastasio wrote:
> Implement bitops.h, based on Linux's implementation as of commit
> 5321d1b1afb9a17302c6cec79f0cbf823eb0d3fc. Though it is based off of
> Linux's implementation, this code diverges significantly in a number of
> ways:
>   - Bitmap entries changed to 32-bit words to match X86 and Arm on Xen
>   - PPC32-specific code paths dropped
>   - Formatting completely re-done to more closely line up with Xen.
>     Including 4 space indentation.
>   - Use GCC's __builtin_popcount* for hweight* implementation
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>

Acked-by: Jan Beulich <jbeulich@suse.com>




From xen-devel-bounces@lists.xenproject.org Mon Sep 18 13:20:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 13:20:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604071.941266 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiEAX-0003hr-7q; Mon, 18 Sep 2023 13:20:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604071.941266; Mon, 18 Sep 2023 13:20:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiEAX-0003hk-32; Mon, 18 Sep 2023 13:20:05 +0000
Received: by outflank-mailman (input) for mailman id 604071;
 Mon, 18 Sep 2023 13:20:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiEAW-0003VP-Ac
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 13:20:04 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0618.outbound.protection.outlook.com
 [2a01:111:f400:fe02::618])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 12b29c67-5626-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 15:20:02 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9365.eurprd04.prod.outlook.com (2603:10a6:102:2a8::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.24; Mon, 18 Sep
 2023 13:19:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 13:19:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 12b29c67-5626-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RYe9FDTJzgopxHbIAw+21oAOYvOxHKJv9TTQeHdxVlZKa/TiTIxCRybLajNa3P8SNImpa4JfuKKaWO9otgkb/Jsrgikw/G3yeES0BK2hsRGg+4VSTfeQeLP9YVCAReHnxSsrMcXI0qF5gJpN5/nk8z7Th5bhpvYgHUvVAZ4sb9Bxlq9tk9LVFxOEFGxxuggucGvSwpCktK4Q3lE3i9enRVYp2uoAvtMY7em2oOSmJQxDQBaI4jXB992L6FMYTOB8Q63zxRwdpuUV3rzIAEe5w94XqSKCE9+XMPliRkvUZLbpaxnNoYMS0VjkwsTr5jzK8aNtf+R1bh8or/+MTOUFrg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7bR5ENB+1t/2VXceZHNPBSmGLFynoA9SKY4pikOrGa4=;
 b=ZgWwC1OfLjtGn0mxKzvS6K1kobr0O1WrYmgNAKsticMeWB6reuepxmUf0JiuAHnxq6xymw3SDAq0d3eaEJ1nKu1wS+cYcdtq9cUyVDit2NztKNMmWTmV5XG7nmgrgVxUdus5txE/sHszZN5EagM36x3AXS/0gYeuuFsbPiiARXVBMWAogDqlC0OlNYKUyT0gFz7Ec1nR5XmWw7s9WoIurXAREaHgR6VSBWFpgqPHyXUmDVOrUllx22ywCqOUzNGh24rW3Y/byiE4yiEpYUfIYi3kvluwnwXeOuddd2nbhc7c1JQ3aZ/lElGdhQKrw6BuKt1qn16bQ9Ngcbj3MWuoDA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7bR5ENB+1t/2VXceZHNPBSmGLFynoA9SKY4pikOrGa4=;
 b=erVR5+fbd+iph1Yt3kXoh0byIZjEDGSKw6QtO18AcaLxXFlp/EkWcmeJrXTM7Blwi23YIcnZ5Sd9igo7ooevE9pd646emXfI5RyrxsA2pvZYgGD9sMA0SdfLZqf7JmdQorSlXDQjZgX9Yx/kfsMhpdCNxoEYB4yBz9aLzfGSYe/Q9j1QgD1lbKFHvzc6zknEC4rxSlK7y9qeXqBGdYvorWoq4gS+heQqNA6w5HQxS44y7tpPBzPllUig2LOw3nIc/iDEp+s7/h1Hfsmnv8CUuDbG7pmLDOOFgUgjbSaEylP4lIX4SN9qw4MaGAbTW7LDwmEeneWpi/D9veRSwVBITQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d3f04552-28d3-8745-3def-b7c341f8b76b@suse.com>
Date: Mon, 18 Sep 2023 15:19:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v6 0/4] ppc: Enable full Xen build
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
References: <cover.1694717278.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <cover.1694717278.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0114.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB9365:EE_
X-MS-Office365-Filtering-Correlation-Id: 949b9b03-0eee-4667-30bf-08dbb849f4dc
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+MYoWjLXgj0duIgzG3c6o2PFEJctuYkeEeZedpgBGbHL4oavv+JpGreHk59g5jrgek8U3qYHkhs2jEhvB92qJRJl1IpJRte2byABopM9LQPVdl1gkf/zoCQokKxcZDjMnlxjLm0uFkYAwE2YXXH97DYm7Wx/BoGsiPI7oXefeIorjU6SdCssBCHBoseBx/CKNpBuJSyFwQnMbaB21f2wiW9XV3PpeYmR9/63l1qIV+bKmBrXK2pmOJ2naEKzoGrupw0d8e/a/K7rhu5OAVngFb7a16n9dVNQcCri8U82NeRf6MKGJ7ojHHQgUUmHg/HPUrFy6gzoC6uZ8FHG/VU8JRs2EoWS8Jj8XUTwoHvlJuvqcDMyTOaGAv5PcQfTw8QPuRAjAOXbPVsaTb1BznTAbB7I41BdGSIZ8ZBN/+0ybAePNMKRUPtibFPjh33qBksOHi3k2s/HQcE0uKGKP7TPBIks4DUl1X35uqNSSQYVRo2QTqpTxT1EuJ8FuJ6lPG/q1iuCOcHLaYRxEIRs+Dwwa9xaNQeFviaxm6Yp454gFMv5Of87IBYqdzY66f7bzCiLVoxAQluBaXDBLCIAAG2PYSKnKMFyLQCBwm6q2YJUPC14HfSF298V5Rfe+ufCgqk5WobrGzRVkp1UQLBBSQfMeA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(396003)(136003)(366004)(346002)(186009)(1800799009)(451199024)(54906003)(66476007)(478600001)(66946007)(53546011)(2616005)(6916009)(6506007)(316002)(26005)(6486002)(66556008)(6512007)(8676002)(8936002)(41300700001)(7416002)(5660300002)(4326008)(4744005)(2906002)(38100700002)(86362001)(31696002)(83380400001)(36756003)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QjE3Wm9LQ0hwbU91SURwd2JTOHhzakp0NkpjSUNmSlRHcWZvY3lWbUZaWmEy?=
 =?utf-8?B?WUlkQjV2Q0tFcUFtcDJLQW1EejdwZy9LM1hEYUxVTkV6T1RQb3QvSDM1eTRO?=
 =?utf-8?B?VFRQUnJPTVBVVE5UMk51WWRBMFFFUno5c1B0akN5cGJ3WUQyUWFObzY3ZjBS?=
 =?utf-8?B?UXduRmpXckJwQUxpMGtuTEcwZ2x3OXBtVnlRZEFDaytnZUd6dzFNTDR6UjdC?=
 =?utf-8?B?VEdVN1NQbCt0UmdQY21SZE1uK284V21KSG9MZlJmZTdFWCs4YVkrTjhIak1C?=
 =?utf-8?B?dWkrTkR6ZUZ1Z2FJSitqb2RjYlpDc3dsMEZBM01Kc1dSempIanh4cUNnK2sz?=
 =?utf-8?B?M09ZSnR6Ty81VEdSY1Y4dFZNdHZNVk9NN2g5S0tabTlxbk1ibnNnZlo4Um43?=
 =?utf-8?B?OC9HR0tITVhQTHMvdDZ6Y1ZzVU9mUk9XN2lIVDdZM29JemZ4cmhncm5QTytB?=
 =?utf-8?B?bTFIckp6cWdHcTVvVTlTOUMwT0s0dlhNbCtyRWxxSDk4ZEhQclZ4a1Bmb0JR?=
 =?utf-8?B?MTlDWWo5clZnL0U5WHRNVm90TDVpNGM2UDRNWDQ2MldxRVlLRlFpb0Rya0Np?=
 =?utf-8?B?amFFM2dDVElqaEdOSUFqbzhjM2R1U3JPZE5CTFF0ZElxUEVEdEk4K25ZaTVp?=
 =?utf-8?B?VWxpR0pvNUhFQWZHalRYbFoxN091SHVvVU9TMit5cUxOSmNyYVpyL0xrZm91?=
 =?utf-8?B?dWpFbVNiR0R6OGFCU0FtNWZiRGc3aWdydUFvM1F1aVkzcml6ajl5OHBUaDNR?=
 =?utf-8?B?VExIMTZJNEM0QWJLNVlhaFI5a25GNUt1dGxHc1RlaC8rQjd5YXFJeHNOQXJt?=
 =?utf-8?B?dFVJZ1JYdGp2cU9Fd1BwM1lkNDFSS3A3WUNScHFQTDVIUmIxdFp2RlYwMlhQ?=
 =?utf-8?B?Z2JjUFF2ZzBycWdPUkEzc1BwcWJlb3ZDSW1OSnJqS0UwQW83L0lwQWFBWE43?=
 =?utf-8?B?RnlDZ0NLZ2FRVHhIakgxV2hEd3dyaDRKRWU5enREcUFaUmRzTUpLNWlKMmRU?=
 =?utf-8?B?M05CNk8ySmNMdlJrcW5maG5iaUkrVC9SWnN4TkhKUlQ2a29rZFBwQUE0eWFt?=
 =?utf-8?B?ZEI5TWFmQ3hQdWlJSjNPNGFhYlpPdkdVaDRyRmpUWkZtRk1GclVKNnhMWjJi?=
 =?utf-8?B?LzJQNkFZVkt0emIwaERQNzNKOXZEYXZqRHNndTRTdzF6bUl4UzJXVExkVDJF?=
 =?utf-8?B?NVVlMi84cmNyQ0tvSEhHTHlYR2ExYnFnbDYwMXZDU25yVkp6alVSaHRoUXRU?=
 =?utf-8?B?Q0x0QUZzRlF5UFdyOUpmYmlsN3Q2cmRhaGVxZER6Q0hrd1pwOEpWRU4wRnpP?=
 =?utf-8?B?YXBwT09Obm9KRUU1WkFpQ2FVaDBFem9BZ1E3ZGl5U2ZkRXRxMWlDNnVCc1No?=
 =?utf-8?B?NlB1elN0NW9CNGI5RnlZd1NUaThJckovRThkOGdQQ0d2NUhQTXBmUjRHUzV5?=
 =?utf-8?B?YXoyRVVCL1NlOVpnbDY4ZTF1UzByZzB1SEF0VEFkcVgwWVhzSUV4VGNMQ2wv?=
 =?utf-8?B?R0RFU0Eyc3R5czhyZ2tBMk4vbUxHTk1GNGVIRGRxU0VPcjM3OGl4dVVxVlYr?=
 =?utf-8?B?SWNHMWwveUxPdUhQZjNmUWZpbzh1YWhLSW9XQ3dRQWZWdkxtSDF3Q2NUVjZx?=
 =?utf-8?B?ang3WlUwMmx3UUhTSWdjWThud3h5YnE1My9jSW5USkFRKy9EejZHYURwRStt?=
 =?utf-8?B?dmZNZTc4Z1ZCZkliQnBiMnM1azlZYmZGSjJicGlyZm5jNWFBN01rMFFYZERF?=
 =?utf-8?B?NkdEaFh2NklXNWxrYmJFdUQrVnM5c0doWDI3U21qQ3R5bjdBQnU2ZDk5Nllx?=
 =?utf-8?B?ZDNSSXNoT0V3MTU2TEJsN2Z0NXo1Rk1oOXZHb1FMMmkzU29ySGR3TGFlMWYz?=
 =?utf-8?B?d1FHbk00SDlwREw1bnBrazMzRkxZbWxFbFJCOEx0RGswN2pKVWRHY3BjZ1lH?=
 =?utf-8?B?Z3IzYzNGbnBaK0VySUhoeUNzR1ZDeUNDeDMzalI0L3Bsa2dKZXNzMDdQdy9X?=
 =?utf-8?B?MHRaajZDaE9ULzlqWE5wVm5IcVo1YWRJNU5lRUxMZHZVYkw4dy8zb1ZNY2lK?=
 =?utf-8?B?MmU2c3ZJYmRJZjFIaDZCTG9RRDMxb2MybVdZTE5yUVUxQ1c3RVpPUWNQOE1H?=
 =?utf-8?Q?O5rosxk6FnHEaDtkIt+1VBa2F?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 949b9b03-0eee-4667-30bf-08dbb849f4dc
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 13:19:58.4809
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: gVG0SL8k3Qah7/smS6kTgUl3vLm9thpFiHCIgeKcN8Q9sL0w3g45kbPfmbQPmYSK3Z708fE9qCV/WiL41wmmEQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9365

On 14.09.2023 21:03, Shawn Anastasio wrote:
> Shawn Anastasio (4):
>   xen/ppc: Implement bitops.h
>   xen/ppc: Define minimal stub headers required for full build

Compilation fails after applying this.

>   xen/ppc: Add stub function and symbol definitions

Continuing nevertheless, linking fails after this.

>   xen/ppc: Enable full Xen build

Things build okay for me when the full series is applied. Generally we
wouldn't deliberately break the build between any two patches; doing so
may be okay here (except I guest CI's build-each-commit would be upset),
but I'll do so only upon explicit request (and with no-one else objecting).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 13:48:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 13:48:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604077.941276 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiEcA-00022O-Bg; Mon, 18 Sep 2023 13:48:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604077.941276; Mon, 18 Sep 2023 13:48:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiEcA-00022H-8O; Mon, 18 Sep 2023 13:48:38 +0000
Received: by outflank-mailman (input) for mailman id 604077;
 Mon, 18 Sep 2023 13:48:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ngl4=FC=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qiEc8-00022B-Oe
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 13:48:37 +0000
Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com
 [2a00:1450:4864:20::336])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0f5eb63c-562a-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 15:48:34 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-40472f9db24so45076015e9.2
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 06:48:34 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 y5-20020a1c4b05000000b0040303a9965asm15382471wma.40.2023.09.18.06.48.32
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 18 Sep 2023 06:48:33 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0f5eb63c-562a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695044914; x=1695649714; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=ZEW1I/dBs+bBINM70hO7ydaAvq0svhRITvjNqbR3G/k=;
        b=MMi2C9vxpaRYClz5lGgXb+3nCOJCPPrHv3GMIuqkJ8vnYzfKWHliNV9gOXAsi9VT5T
         FGmGQBQlj9q0vrl1N0Xi9NLfUsVwHTBVcJg0iiI0UG/B8yi2DYqREsfuTRlPmYYCzxso
         r0xNltolx9YkoJ9S9ktqOBeI+Q/IzDfsOf2/4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695044914; x=1695649714;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=ZEW1I/dBs+bBINM70hO7ydaAvq0svhRITvjNqbR3G/k=;
        b=t/Dp8gw0IW1hCYvFJitl7UqoIzTaAPIqwAn64YZU75CT9z/ews8l8cEUXFKAMbd4v3
         vqXE5YHPPNeMnnvfg4OmdVnV5JjOhrJVy+XGLa6YWlLa4sKksx2j+sUIDxRporSHzRCt
         Dk6vXhLQWhmBS81nf0npewdz5PESniasT+cKmmWRodVhm+Fl0OEdOm78f40apNvyofLL
         zuYYxjjZ7A0LaEic8H4qROkUa1RPPMN1Gb7oXoeRpS73GkcOMvIvzQVJwLMrmULhvzDm
         l6+rNwA3VfbPSDceQ6gKUHBU2LTQD3n/oSDf7lbvgxoxN7tEZjZcvUWaIjFOAY4OfOKX
         Mp/w==
X-Gm-Message-State: AOJu0Yx0DQ+0JnhhO0ES/67Ih9twoIN7i5+2C/3+CS9HEMaQjFNHTezI
	z6fYtWBk43P2kHiZq37NF6oKSg==
X-Google-Smtp-Source: AGHT+IFD176P+Xdf72wka1Cz6/TJn0KP3O40QlFnwf0WCanE4jRrc4/7BMgiJzxnRoGHwReKISVHMQ==
X-Received: by 2002:a1c:790b:0:b0:401:b493:f7c1 with SMTP id l11-20020a1c790b000000b00401b493f7c1mr7276653wme.35.1695044913643;
        Mon, 18 Sep 2023 06:48:33 -0700 (PDT)
Message-ID: <12199b7d-5599-c530-19f2-6dcf2c4bcf77@citrix.com>
Date: Mon, 18 Sep 2023 14:48:32 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 6/9] x86/entry: Track the IST-ness of an entry for the
 exit paths
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
 <20230915150038.602577-7-andrew.cooper3@citrix.com>
 <d089bc84-40aa-6a71-341c-df934910c2b2@suse.com>
In-Reply-To: <d089bc84-40aa-6a71-341c-df934910c2b2@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 18/09/2023 12:02 pm, Jan Beulich wrote:
> On 15.09.2023 17:00, Andrew Cooper wrote:
>> Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
>> entry/exit asm, so it only needs setting in the IST path.
>>
>> As this is subtle and fragile, add check_ist_exit() to be used in debugging
>> builds to cross-check that the ist_exit boolean matches the entry vector.
>>
>> Write check_ist_exit() it in C, because it's debug only and the logic more
>> complicated than I care to maintain in asm.
>>
>> For now, we only need to use this signal in the exit-to-Xen path, but some
>> exit-to-guest paths happen in IST context too.  Check the correctness in all
>> exit paths to avoid the logic bitrotting.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Reviewed-by: Jan Beulich <jbeulich@suse.com>

Thanks.

>
> I understand you then didn't like the idea of macro-izing ...
>
>> --- a/xen/arch/x86/x86_64/compat/entry.S
>> +++ b/xen/arch/x86/x86_64/compat/entry.S
>> @@ -117,8 +117,15 @@ compat_process_trap:
>>          call  compat_create_bounce_frame
>>          jmp   compat_test_all_events
>>  
>> -/* %rbx: struct vcpu, interrupts disabled */
>> +/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
>>  ENTRY(compat_restore_all_guest)
>> +
>> +#ifdef CONFIG_DEBUG
>> +        mov   %rsp, %rdi
>> +        mov   %r12, %rsi
>> +        call  check_ist_exit
>> +#endif
>> +
>>          ASSERT_INTERRUPTS_DISABLED
>>          mov   $~(X86_EFLAGS_IOPL | X86_EFLAGS_VM), %r11d
>>          and   UREGS_eflags(%rsp),%r11d
>> --- a/xen/arch/x86/x86_64/entry.S
>> +++ b/xen/arch/x86/x86_64/entry.S
>> @@ -142,8 +142,15 @@ process_trap:
>>  
>>          .section .text.entry, "ax", @progbits
>>  
>> -/* %rbx: struct vcpu, interrupts disabled */
>> +/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
>>  restore_all_guest:
>> +
>> +#ifdef CONFIG_DEBUG
>> +        mov   %rsp, %rdi
>> +        mov   %r12, %rsi
>> +        call  check_ist_exit
>> +#endif
>> +
>>          ASSERT_INTERRUPTS_DISABLED
>>  
>>          /* Stash guest SPEC_CTRL value while we can read struct vcpu. */
>> @@ -659,8 +666,15 @@ ENTRY(early_page_fault)
>>          .section .text.entry, "ax", @progbits
>>  
>>          ALIGN
>> -/* No special register assumptions. */
>> +/* %r12=ist_exit */
>>  restore_all_xen:
>> +
>> +#ifdef CONFIG_DEBUG
>> +        mov   %rsp, %rdi
>> +        mov   %r12, %rsi
>> +        call  check_ist_exit
>> +#endif
> ... these three instances of identical code you add, along the lines of
> ASSERT_INTERRUPTS_DISABLED?

There's no header that's unique to just the entry.S's, and it's only 3
instructions that need a very specific stack and state layout.

The SPEC_CTRL_* macros are already a giant source of pain, and for 3
instructions I don't think the complexity of the abstraction is worth it.


Furthermore, I've got some fixes to the other ASSERT_* macros which are
going to make them a bit more like this.

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 14:02:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 14:02:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604082.941286 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiEpR-0006q8-GL; Mon, 18 Sep 2023 14:02:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604082.941286; Mon, 18 Sep 2023 14:02:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiEpR-0006q1-Dc; Mon, 18 Sep 2023 14:02:21 +0000
Received: by outflank-mailman (input) for mailman id 604082;
 Mon, 18 Sep 2023 14:02:20 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ngl4=FC=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qiEpQ-0006pv-60
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 14:02:20 +0000
Received: from mail-wr1-x435.google.com (mail-wr1-x435.google.com
 [2a00:1450:4864:20::435])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f9942a3b-562b-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 16:02:16 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-31aeef88a55so4059501f8f.2
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 07:02:16 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 q2-20020adff782000000b00317f70240afsm12648691wrp.27.2023.09.18.07.02.14
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 18 Sep 2023 07:02:15 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f9942a3b-562b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695045736; x=1695650536; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=OhfeKmO1RWl5wsNU7qxZBKetLolm2oO+djeGbzoRX4I=;
        b=l32hRE3+HshK7dlV9QRTdSJtfy8F3UWn8ta1Q/N9N25VtXSjk+dbcP7SuKweomiscD
         5Wu/KwDMW6REvWq27uot9Z79NAF5QR1Md2h2Z9/khfXapiYInDRMechFz0eYmvvgMBis
         5syZBPBR5JbFQeYmxAK/iK/l+uOoqsMPWCrhA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695045736; x=1695650536;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=OhfeKmO1RWl5wsNU7qxZBKetLolm2oO+djeGbzoRX4I=;
        b=nWJtz/3ALGJZejOJm1v604hmm2pHBgRAQGMUfdM4x8RMxcKBScImuvrfcmHtBXQnmp
         +qcep3z8fskGVg1TMQ4104UYSbAqIzGs710M1xOcqlUCY/pKFBK036JQoI7SSLUjUHvt
         85wB9aU8BYzuSZK3EJLCEbTD1T81OeLJ+HoiXzmk4NwempUtSCa2GWuXalP9sTWMaVlj
         /+bL+Fd3PJRySGJWEzASGvVvo1JOlI0TeP/UJhcepSfg5YiuV8ZT0hToXZ1KWVfKirtm
         hZ4bwZLUq+OP1sDnty0njvVrwK3BAR/TTgSANJvHk4bhdkhDXss5GCkSgu/9UkO/0134
         ZD7w==
X-Gm-Message-State: AOJu0YyuVMEnGN81yDUuesRBPV6UL6wezfDwiDuFZm570m4p7jZzcX6k
	O8a7G38leiY+ioYAzVJzkcsNQQ==
X-Google-Smtp-Source: AGHT+IE0Db0PyHNyNmXSWigKJV+XO5YuZNfcfsPbvuK+2miyk8gjVQkDhxuQDIHt3u1RnkBTy3AR8Q==
X-Received: by 2002:a05:6000:1e09:b0:31f:f9fe:e739 with SMTP id bj9-20020a0560001e0900b0031ff9fee739mr9719644wrb.59.1695045735367;
        Mon, 18 Sep 2023 07:02:15 -0700 (PDT)
Message-ID: <9ceb62f4-e625-3fa9-6924-f22522de47a0@citrix.com>
Date: Mon, 18 Sep 2023 15:02:14 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 8/9] x86/amd: Introduce is_zen{1,2}_uarch() predicates
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
 <20230915150038.602577-9-andrew.cooper3@citrix.com>
 <e28bbdf1-31e7-9500-ca5a-00cf15ceb33d@suse.com>
In-Reply-To: <e28bbdf1-31e7-9500-ca5a-00cf15ceb33d@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 18/09/2023 12:07 pm, Jan Beulich wrote:
> On 15.09.2023 17:00, Andrew Cooper wrote:
>> --- a/xen/arch/x86/include/asm/amd.h
>> +++ b/xen/arch/x86/include/asm/amd.h
>> @@ -140,6 +140,17 @@
>>                         AMD_MODEL_RANGE(0x11, 0x0, 0x0, 0xff, 0xf),	\
>>                         AMD_MODEL_RANGE(0x12, 0x0, 0x0, 0xff, 0xf))
>>  
>> +/*
>> + * The Zen1 and Zen2 microarchitectures are implemented by AMD (Fam17h) and
>> + * Hygon (Fam18h) but without simple model number rules.  Instead, use STIBP
>> + * as a heuristic that distinguishes the two.
>> + *
>> + * The caller is required to perform the appropriate vendor/family checks
>> + * first.
>> + */
>> +#define is_zen1_uarch() (!boot_cpu_has(X86_FEATURE_AMD_STIBP))
>> +#define is_zen2_uarch()   boot_cpu_has(X86_FEATURE_AMD_STIBP)
>> +
>>  struct cpuinfo_x86;
>>  int cpu_has_amd_erratum(const struct cpuinfo_x86 *, int, ...);
> With one simply the opposite of the other, and with the requirement of a
> family check up front, do we really need both? Personally I'd prefer if
> we had just the latter. Yet in any event
> Reviewed-by: Jan Beulich <jbeulich@suse.com>

We specifically do want both, because they're use is not symmetric at
callsites.

In particular, having only one would make the following patch illogical
to read.

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 14:05:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 14:05:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604087.941295 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiEry-0007Yr-1z; Mon, 18 Sep 2023 14:04:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604087.941295; Mon, 18 Sep 2023 14:04:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiErx-0007Yk-Vj; Mon, 18 Sep 2023 14:04:57 +0000
Received: by outflank-mailman (input) for mailman id 604087;
 Mon, 18 Sep 2023 14:04:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiErw-0007Yc-Pg
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 14:04:56 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20621.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::621])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 58268658-562c-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 16:04:55 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7203.eurprd04.prod.outlook.com (2603:10a6:20b:1d5::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 14:04:53 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 14:04:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 58268658-562c-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Bxuu+r6qV/gwgqEpu3p01uv1jKh9srH1zr5CtWAP5cKx8sW7QFjrhmdPYGPoa+ZHtLiX+75VNDCQcSAz97Chi9fWi4sC7pnXT+ZgJ1PrLWI4A8ncuJ59CATmywIK9cninWj1Sq0GZ5vEbg5whxZMo3xBHXY10T6dOnM2HJQoIZ3vtmfaSrWdauxvE8rKUCxh9TM41f4bJLzmNT/oERo3KayEoezckeNLEJUY5hr/mE69IU9ZKr1kdWL9sqWKS5NL+Kz5fzCzYpEu6gCrpgwwFn0EQTn3U3k4TIhVL4+WyN45qqFRaio/hl5uTNUHLOI1qe0q1ZtJ0kSM1jebatJRNw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iqs/8aBOJK1uVJy9b1CHkFsfApTouh8hfkPeFn+LrMI=;
 b=UFuP+iyjbgWfvV7TgcILh8W7Bgdfty5NX9cJj6sJ/neaLpE9URAQGAOBn5aP/Smm8xsirwlpWGe2+m8hBR1+7FI+ORgIH/lDYN4Fyj6LmCX4MrpV08WLUo6XLRBqPmvssJA2bGzIhCJDY7P6rbad/6b9ZIICCY+fHfsQTvEvhTLmn/CsMDSTrtPXy1ZPz5cHxvGL4fqweg2mRL+EdOht5iUSZHuPdfpSW97kyUh5Fbm4cTc34t2VFXKgC9QQ7kMEvJOKqMkNVTKy7G01Mp2mo5cXzPUgiUFqNTO8Jdr8+Dbr7Mk4328odjfgsYQIRVOHB4LFqMZC7Eykr1ASlIER3Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iqs/8aBOJK1uVJy9b1CHkFsfApTouh8hfkPeFn+LrMI=;
 b=vYKoJ2iQ/u5x3CohCpdqiE1wEgXZ4/vP0C/4uqKhL6/Z0m1rCYZyspkPzTeXoTUkpDpJCN/wbB58XSsjnG2E3cZAcHJGzjQeyRe2gyjyrLJi46v4M1OQ0X2FGzgZhijnm0lXnGIHZurVE+VcCfdYFec52Y+8slEk6MFMZymUBHwApZdlLtKziZWVtbxE6NDCuFw2hdO62ilIs49K2FFpo8aH3Kcm+lOwRc9Fwv6dx5HDKGe0dU3xcf2bIU23lDdUYDBXQ/0Xcxh+XtjmPKooouJvEzhzOsCuzKzNSWkFP99B3k623pckhlBxkF9e8v+OvyyxTLh266Dk+3s0+Ds79g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a89d0ef6-7f89-1ad0-b1fd-2b74eb9aacc6@suse.com>
Date: Mon, 18 Sep 2023 16:04:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 8/9] x86/amd: Introduce is_zen{1,2}_uarch() predicates
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
 <20230915150038.602577-9-andrew.cooper3@citrix.com>
 <e28bbdf1-31e7-9500-ca5a-00cf15ceb33d@suse.com>
 <9ceb62f4-e625-3fa9-6924-f22522de47a0@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <9ceb62f4-e625-3fa9-6924-f22522de47a0@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0060.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cc::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7203:EE_
X-MS-Office365-Filtering-Correlation-Id: 037c08cf-56f2-41f7-5397-08dbb8503b14
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TQb1H9wC0Vy40R5X/JenR1aMW4+3tiv8LDNA0eZmURic90r6KtXh1YxYbvIDtHOjVhqECo1SMUyDZqe9QxVLhEaobIBS5M4r5ZppPDFvC4gwxnW6H3o+W7QuMg9lSSAwRK5dSy1YeP+pJxTGR4xdOzfsBkYnb4tP7zBpcMrBM5iVJmTbSb1zroNF4OZ8pFIZ5ajXOaSnhKlgVd0bzYXh95cYUXhW3GClR7mtp94X2LBWPAAkHtdH90soxkHK3HzQ8TveaHB4hVx7d1EGnwarfW66P2o4LCNBPwZ+sy39wvOeOfIWxEc+TpodIKVPDeytiVs6jrLb5tVIcbazsVQcgxLNgjvRonv5cwpCKxkNPepSFmXnhKdv0Yi66uqGEfVln6Q9bY5uxzJrPMRtJln0exB9liV8LHqtAn6NLQZi1Drwx///uBJ79Hk8DzE1dL/T4Nq7jPszUeKGyu593RImft8AwJWaYHBknjSmsN9ieVzKcN9Q8o1WB0ugv85ZTmkp85kgTIxYQwklWM0PikuhH2xJ4BJbNccmKDcQuZYjIZUPmPLIc4XaqXwm8y64e0i3l8hRpzd93M0PxgMOKLjpfAerDEJTvzmEmqoU8HPQbxrNKoE0XBJLR+3pmhw/ViU94jD3z1zrtAg7Y4QD1xV71w==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(376002)(39850400004)(136003)(366004)(1800799009)(186009)(451199024)(6512007)(53546011)(6486002)(6506007)(86362001)(31696002)(38100700002)(36756003)(2616005)(26005)(66556008)(66946007)(6916009)(66476007)(54906003)(41300700001)(316002)(2906002)(5660300002)(8676002)(4326008)(8936002)(31686004)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M3NHKzJBdHNDNFQrd2tOU0xMQzlsd1Myd2ZWejlzRjIrZ2wreTd5dklBajBI?=
 =?utf-8?B?YUxLYTh4UWhPMGpNaHhHdzY0eVIvMHB0Y2xLZEMrT1RQenc3RWg5OThTRk1O?=
 =?utf-8?B?MlByWU5Vd21HOWxYM3F4ajlhUlEyZWdqeVp1VTZpcm85VURNMHZzSnBXY2lF?=
 =?utf-8?B?TlNvZVJtSEIzUFVkV1ZCcEpidlFKQjllMGFEMExwcEgxUDR5UFVCTFppY25K?=
 =?utf-8?B?Y3RGaUJLVnVUV0VSVjFFNUdGZERRSFhKM2tkVDdhTHYvckFHc1NYVzZnUHQ0?=
 =?utf-8?B?OXNjS3hIc1ZDcm9LanRoSk1JbEN2aTdPTm81VTdLdW5DWjd0N3Bvd3RSSjdI?=
 =?utf-8?B?SGJiTjlWSVgzbXJHVTR0ai8xUTV1SSsvZ3ljRTQvWmlZdlgvK2tCSHFMbWNJ?=
 =?utf-8?B?Tno0c253ZHVYaHkyQ2RIVm5vMmlFMFAzaGtkSXNvZW5iVEFOOU9UYkhRdVlQ?=
 =?utf-8?B?YUJQTi9oeCtFRGcrVVlvZzBqOWRoVzNRR21LeWMyeEFYSlljV3NHWUpTNUFo?=
 =?utf-8?B?U0tzWlVTTjIrWDhQTTh3ekJua3BjSm92L3N3aHJhb282cGxEeUdIcHFUa0FG?=
 =?utf-8?B?eDZqaW82YmgxMTEyeXdvRUVNdVgxYU9JeExhS1dhNkFncFp4LzNXSW9ScXAr?=
 =?utf-8?B?MlhRemhscFQ1UFo0QThlM0IrOThaL3hraDZWREV3WkhHZVdoWXcwc3JsS3ZJ?=
 =?utf-8?B?TkxHNENWY0FDZUFiVm5LNUZqSEpocUdJTkFqNzkwN0liNzJVbGYxL2diMXEw?=
 =?utf-8?B?UkYwVS93emY5VmVmZTVGaWdTb1VsWkR4azFSbkprVXVmcjRiK0pvUys4MXd6?=
 =?utf-8?B?OWdqekNnLzhYZjArZHBNVTJJRkRYZVZHLzh4WHFHSFBQOE4zY3JNeWpvRmo3?=
 =?utf-8?B?SEt4eU1kOVcwa0Z2Nkh6L2JRcktvSnkzUlV5L0VxYlh6QTNQZkdxeDBacXRF?=
 =?utf-8?B?aDEwUDJMMHJMWlZzbm9sdy9iY2xzeHMySmVGUTZ3NDA3eDJZdERhK1FMRXY2?=
 =?utf-8?B?bHZ3TmhRdVlRSE1lYTQ0cFN3Uks4cUVGL1F0OUJndUgyR1lrN0xrVWlrd2xJ?=
 =?utf-8?B?bllERFF5Q1Z2aElESHBmeUZIK0xEZHpSYnVQMFVocHVMRDMrWG5mcnRhYS8r?=
 =?utf-8?B?TzZPVUNqRnB5Yk5YaERjUk0yeXRGaGpxd3g1L3BTSzBBWDR1WmxYUnpQZ2NG?=
 =?utf-8?B?UWdUMy9MUEJxNjg5ODd3Vll4Wnh4Tkg0Sm1ZMkZNclVBZ0FLbWdYTHl4TE5R?=
 =?utf-8?B?QXlNNjErOEFSbEJSNlN0VG1xMlpNVVEwS0IzQ1FzRTZEYW4yM3VJbU0wdkxu?=
 =?utf-8?B?NzFFcDhQZUZFZTNkZ1A2V1RqZkR0K0Zkb2t4L2IyMFJaRkQ5U1YvUXhGWGtI?=
 =?utf-8?B?dFE4ZDE0WkcxanNRY2Z5cVRvMytOVDFyajM5WVBPcjFhaDJpNG16UFFlVldX?=
 =?utf-8?B?bDIrM0g0bEVzY3RIeUVnbHZHVWhqamV1MXprS3BBbEtocnVqVzM2cThvOWNQ?=
 =?utf-8?B?dW5HcnBhV2lVYlJNQjhJRFlkTnFYdXEyei96S1RBSGIvaFZDM3E2MXJqZ2li?=
 =?utf-8?B?clg1bjBkcWJVU2JVeUxyeVpmRWdMRHdvWHduYndvMHVsWll4RWZhczBnNDY3?=
 =?utf-8?B?czYyMnZxa2dZaVB6cVNIRmVpRjB5Q2Y3Z0FIQ2JiTjk0MlJyRkFqeHBVMHVp?=
 =?utf-8?B?VEpDQmtVRlNQaTUvUmhjRUVOaktBK2RZdk1jMlhzT3JFcm5HeUV3TTNtMlFu?=
 =?utf-8?B?VWQ4b1hGWktyamJlbyttZTZFaUJON3ppajRrcFUrVmxGT3pEU2VNT3NDUlZV?=
 =?utf-8?B?d3dLL3dzVWVKR2ZpSXpMVFFDU0U2RVcwenRkSm9CRGZHT09CV05YN2dmM3Jy?=
 =?utf-8?B?OTBIRWNWK1ZVZW1GbTdPcDY1T0tCdXhBWUQrc2tIQTg2Y1R6NGlaaFpDQWI5?=
 =?utf-8?B?UFNEQXNDTmxqQVBjSDhuNnZmODVuK1hkWXI1aThkdU16b1c5TEdBQTFnSWll?=
 =?utf-8?B?NStHVWQraVljMmUrdG1ETVRpL3NUOEloRW5JUmplZFpYaVl4dVlCMHd3Y3hO?=
 =?utf-8?B?VVpLbHd1VkZvbFlmbUdQMEc2N2FjR0VyTzQ5dFZLUnVPSitwejdOamh2TVNN?=
 =?utf-8?Q?kVBxlt9Bii16gliG5nvBpbtk9?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 037c08cf-56f2-41f7-5397-08dbb8503b14
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 14:04:53.2610
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: vXPWjF3zzSGY+ctN2o4FvwqNoKEmre7kRkSdIywziIhUFo0doCt7CO6QaFSzT9koK9XMe7iuCCMd74/OpnH9Cw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7203

On 18.09.2023 16:02, Andrew Cooper wrote:
> On 18/09/2023 12:07 pm, Jan Beulich wrote:
>> On 15.09.2023 17:00, Andrew Cooper wrote:
>>> --- a/xen/arch/x86/include/asm/amd.h
>>> +++ b/xen/arch/x86/include/asm/amd.h
>>> @@ -140,6 +140,17 @@
>>>                         AMD_MODEL_RANGE(0x11, 0x0, 0x0, 0xff, 0xf),	\
>>>                         AMD_MODEL_RANGE(0x12, 0x0, 0x0, 0xff, 0xf))
>>>  
>>> +/*
>>> + * The Zen1 and Zen2 microarchitectures are implemented by AMD (Fam17h) and
>>> + * Hygon (Fam18h) but without simple model number rules.  Instead, use STIBP
>>> + * as a heuristic that distinguishes the two.
>>> + *
>>> + * The caller is required to perform the appropriate vendor/family checks
>>> + * first.
>>> + */
>>> +#define is_zen1_uarch() (!boot_cpu_has(X86_FEATURE_AMD_STIBP))
>>> +#define is_zen2_uarch()   boot_cpu_has(X86_FEATURE_AMD_STIBP)
>>> +
>>>  struct cpuinfo_x86;
>>>  int cpu_has_amd_erratum(const struct cpuinfo_x86 *, int, ...);
>> With one simply the opposite of the other, and with the requirement of a
>> family check up front, do we really need both? Personally I'd prefer if
>> we had just the latter. Yet in any event
>> Reviewed-by: Jan Beulich <jbeulich@suse.com>
> 
> We specifically do want both, because they're use is not symmetric at
> callsites.
> 
> In particular, having only one would make the following patch illogical
> to read.

I don't think it would, but that's perhaps one more of the many areas where
we take different perspectives.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 14:21:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 14:21:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604094.941306 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiF7G-0002a3-CU; Mon, 18 Sep 2023 14:20:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604094.941306; Mon, 18 Sep 2023 14:20:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiF7G-0002Zw-9o; Mon, 18 Sep 2023 14:20:46 +0000
Received: by outflank-mailman (input) for mailman id 604094;
 Mon, 18 Sep 2023 14:20:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ngl4=FC=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qiF7E-0002Zq-Hl
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 14:20:44 +0000
Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com
 [2a00:1450:4864:20::436])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8ca7f052-562e-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 16:20:42 +0200 (CEST)
Received: by mail-wr1-x436.google.com with SMTP id
 ffacd0b85a97d-3214d4ecd39so1110931f8f.1
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 07:20:42 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 f13-20020a5d568d000000b0031fd849e797sm12632678wrv.105.2023.09.18.07.20.41
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 18 Sep 2023 07:20:41 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8ca7f052-562e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695046842; x=1695651642; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=1tvnMSfJQ0y/S7NaF2xcO4uXI/f0UBKn80Bbhm57+Ds=;
        b=ab1Z1Fu0wkT1eP+80CBkI+VkwCTwIXIBqgKyBer80Gcj+N1b+iiTH7m6Jn0/0s4wbe
         eHDG9Vc/BDEGCLYh/OlPrF405kfoCUMAIC7heF07HbX4ht9VZXJMzA1ZbC59Uz1/6CA5
         U0og4Ka9uafQzISj0Ka7IfDXJ38EAP80FwTuA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695046842; x=1695651642;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=1tvnMSfJQ0y/S7NaF2xcO4uXI/f0UBKn80Bbhm57+Ds=;
        b=AdYCDed1U0CSGy7/MuqZ4vbwY4/4Wh6hndFTW7nQqERgxj/gNlMbYdkXuJxuW8CZQC
         n0DyUJaExErsv9BgnY3QxYdnA9mZk1FPbm/mvqoGklwKQ4/EUoVT0yBtYM9OkHjo/3+K
         JUKObVseXHCgDHVVVp98B2wE9FjlhI98hpD01s/08FF2LysLDkw3UUmH5wMG3JhattiR
         wW2cgpumJ7giSIEYkRdG+s+BPxxLbM8lA9YYITkNvMaKaVrOjfzY1iQP11E3liqGDv7W
         29JHx1+Z1XwGzoO71dH+b3lfrq10NNmvBTdBd3upbtheql+7nuTjS53DOvXMeE5dct0y
         bTQQ==
X-Gm-Message-State: AOJu0Yyh6Aviwy/qA4eGPTfk4q/QV2wqFEavtJCuLVWXpLVr9sTsbtyB
	66NkqbiAbZ2gERP8Uv+mBY+z6w==
X-Google-Smtp-Source: AGHT+IE8lziHllWZxVCf7MtcsN5GAO5vu+kT675UKHzUnhzswe39wIaAArp2ntNMYiTJ9RfUCf/FRA==
X-Received: by 2002:a5d:6309:0:b0:313:f463:9d40 with SMTP id i9-20020a5d6309000000b00313f4639d40mr6746009wru.65.1695046841830;
        Mon, 18 Sep 2023 07:20:41 -0700 (PDT)
Message-ID: <a29c7623-631e-e104-d7d6-2bf97af0bebf@citrix.com>
Date: Mon, 18 Sep 2023 15:20:41 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 9/9] x86/spec-ctrl: Mitigate the Zen1 DIV leakge
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915150038.602577-1-andrew.cooper3@citrix.com>
 <20230915150038.602577-10-andrew.cooper3@citrix.com>
 <13289cc3-c419-0625-06c9-e7ffd79f9890@suse.com>
In-Reply-To: <13289cc3-c419-0625-06c9-e7ffd79f9890@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 18/09/2023 12:15 pm, Jan Beulich wrote:
> On 15.09.2023 17:00, Andrew Cooper wrote:
>> In the Zen1 microarchitecure, there is one divider in the pipeline which
>> services uops from both threads.  In the case of #DE, the latched result from
>> the previous DIV to execute will be forwarded speculatively.
>>
>> This is an interesting covert channel that allows two threads to communicate
>> without any system calls.  In also allows userspace to obtain the result of
>> the most recent DIV instruction executed (even speculatively) in the core,
>> which can be from a higher privilege context.
>>
>> Scrub the result from the divider by executing a non-faulting divide.  This
>> needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
>>
>> This is XSA-439 / CVE-2023-20588.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>
> Nevertheless I would have hoped you add at least a sentence on the alternatives
> patching of the IST path. Hitting #MC while patching is possible, after all
> (yes, you will tell me that #MC is almost certainly fatal to the system anyway,
> but still).

I'll see what I can do.

>
>> @@ -955,6 +960,46 @@ static void __init srso_calculations(bool hw_smt_enabled)
>>          setup_force_cpu_cap(X86_FEATURE_SRSO_NO);
>>  }
>>  
>> +/*
>> + * The Div leakage issue is specific to the AMD Zen1 microarchitecure.
>> + *
>> + * However, there's no $FOO_NO bit defined, so if we're virtualised we have no
>> + * hope of spotting the case where we might move to vulnerable hardware.  We
>> + * also can't make any useful conclusion about SMT-ness.
>> + *
>> + * Don't check the hypervisor bit, so at least we do the safe thing when
>> + * booting on something that looks like a Zen1 CPU.
>> + */
>> +static bool __init has_div_vuln(void)
>> +{
>> +    if ( !(boot_cpu_data.x86_vendor &
>> +           (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>> +        return false;
>> +
>> +    if ( (boot_cpu_data.x86 != 0x17 && boot_cpu_data.x86 != 0x18) ||
>> +         !is_zen1_uarch() )
>> +        return false;
>> +
>> +    return true;
>> +}
> Just to mention it - personally I consider
>
>     ...
>     if ( ... )
>         return true;
>
>     return false;
> }
>
> a minor anti-pattern, as a sole return imo makes more clear what's going on.

Well yes, here is an area where we disagree.

It's the same as trailing commas on lists, or "| 0)" for bitmaps for
making a smaller delta for future changes.

> In a case like this, where you intentionally split return paths anyway, I'd
> then go with
>
> static bool __init has_div_vuln(void)
> {
>     if ( !(boot_cpu_data.x86_vendor &
>            (X86_VENDOR_AMD | X86_VENDOR_HYGON)) )
>         return false;
>
>     if ( boot_cpu_data.x86 != 0x17 && boot_cpu_data.x86 != 0x18 )
>         return false;
>
>     return is_zen1_uarch();
> }

I'll swap to this because there is no realistic chance of the logic
chain needing to expand.

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 14:47:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 14:47:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604099.941317 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiFXN-0002vT-F3; Mon, 18 Sep 2023 14:47:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604099.941317; Mon, 18 Sep 2023 14:47:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiFXN-0002vM-AI; Mon, 18 Sep 2023 14:47:45 +0000
Received: by outflank-mailman (input) for mailman id 604099;
 Mon, 18 Sep 2023 14:47:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=9yUr=FC=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qiFXL-0002s9-Pa
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 14:47:43 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 51cb8c95-5632-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 16:47:42 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-694-ZNSI5qm6NxGEWYqOK2iQsg-1; Mon, 18 Sep 2023 10:47:37 -0400
Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com
 [10.11.54.5])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id BBD30101A53B;
 Mon, 18 Sep 2023 14:47:36 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.127])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id D456A1C554;
 Mon, 18 Sep 2023 14:47:35 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id E818F21E6900; Mon, 18 Sep 2023 16:47:34 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 51cb8c95-5632-11ee-8788-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695048461;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=Rr10BgvxSqJ2B7JFeQPeJKV1bmS3WBpXTQ2eSz0GfVQ=;
	b=MZYyycQFUTmyFTnIVC8Yr/jvD9mA/MatGDzxH0baby5JP9EL29R/Q+PAcpqef97q4Gml2S
	Ri9OO/wj0Epy5QjfMWE2UlHwMzFerIeusjQRYlbe/oVl9M5MwGi6q/eyUqfZE42EZ/IvPC
	NK9rpL+yDLNbubl8VTCNObl1+z9JMT8=
X-MC-Unique: ZNSI5qm6NxGEWYqOK2iQsg-1
From: Markus Armbruster <armbru@redhat.com>
To: Kevin Wolf <kwolf@redhat.com>
Cc: qemu-devel@nongnu.org,  hreitz@redhat.com,  eblake@redhat.com,
  vsementsov@yandex-team.ru,  jsnow@redhat.com,  idryomov@gmail.com,
  pl@kamp.de,  sw@weilnetz.de,  sstabellini@kernel.org,
  anthony.perard@citrix.com,  paul@xen.org,  pbonzini@redhat.com,
  marcandre.lureau@redhat.com,  berrange@redhat.com,  thuth@redhat.com,
  philmd@linaro.org,  stefanha@redhat.com,  fam@euphon.net,
  quintela@redhat.com,  peterx@redhat.com,  leobras@redhat.com,
  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org,
  peter.maydell@linaro.org
Subject: Re: [PATCH 5/7] block/vdi: Clean up local variable shadowing
References: <20230831132546.3525721-1-armbru@redhat.com>
	<20230831132546.3525721-6-armbru@redhat.com>
	<ZQQKsxgrT2mLokFi@redhat.com>
Date: Mon, 18 Sep 2023 16:47:34 +0200
In-Reply-To: <ZQQKsxgrT2mLokFi@redhat.com> (Kevin Wolf's message of "Fri, 15
	Sep 2023 09:41:39 +0200")
Message-ID: <871qevczcp.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.5

Kevin Wolf <kwolf@redhat.com> writes:

> Am 31.08.2023 um 15:25 hat Markus Armbruster geschrieben:
>> Local variables shadowing other local variables or parameters make the
>> code needlessly hard to understand.  Tracked down with -Wshadow=local.
>> Clean up: delete inner declarations when they are actually redundant,
>> else rename variables.
>> 
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>
>> @@ -700,7 +699,7 @@ nonallocating_write:
>>          /* One or more new blocks were allocated. */
>>          VdiHeader *header;
>>          uint8_t *base;
>> -        uint64_t offset;
>> +        uint64_t offs;
>>          uint32_t n_sectors;
>>  
>>          g_free(block);
>> @@ -723,11 +722,11 @@ nonallocating_write:
>>          bmap_first /= (SECTOR_SIZE / sizeof(uint32_t));
>>          bmap_last /= (SECTOR_SIZE / sizeof(uint32_t));
>>          n_sectors = bmap_last - bmap_first + 1;
>> -        offset = s->bmap_sector + bmap_first;
>> +        offs = s->bmap_sector + bmap_first;
>>          base = ((uint8_t *)&s->bmap[0]) + bmap_first * SECTOR_SIZE;
>>          logout("will write %u block map sectors starting from entry %u\n",
>>                 n_sectors, bmap_first);
>> -        ret = bdrv_co_pwrite(bs->file, offset * SECTOR_SIZE,
>> +        ret = bdrv_co_pwrite(bs->file, offs * SECTOR_SIZE,
>>                               n_sectors * SECTOR_SIZE, base, 0);
>>      }
>
> Having two variables 'offset' and 'offs' doesn't really help with
> clarity either. Can we be more specific and use something like
> 'bmap_offset' here?

Sure!



From xen-devel-bounces@lists.xenproject.org Mon Sep 18 14:50:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 14:50:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604105.941326 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiFZh-0004bt-Qr; Mon, 18 Sep 2023 14:50:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604105.941326; Mon, 18 Sep 2023 14:50:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiFZh-0004bm-N4; Mon, 18 Sep 2023 14:50:09 +0000
Received: by outflank-mailman (input) for mailman id 604105;
 Mon, 18 Sep 2023 14:50:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=9yUr=FC=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qiFZg-0004bZ-62
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 14:50:08 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a74df4f5-5632-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 16:50:06 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-110-EY9rAYPIOT21ONJ9DHzY8Q-1; Mon, 18 Sep 2023 10:50:01 -0400
Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com
 [10.11.54.1])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id AC5D1185A78E;
 Mon, 18 Sep 2023 14:49:59 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.127])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 8738140C2064;
 Mon, 18 Sep 2023 14:49:59 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id A15CC21E6900; Mon, 18 Sep 2023 16:49:58 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a74df4f5-5632-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695048604;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=8RIW4UWKLvMYBXNxIynuPCHJKeFvwHJyky2XCo3rAMA=;
	b=hpmkoB9seX3OO95OOvRVxxNZ5HzzGZg43mjLEHS40x+KxMujlksScNSY56pbus8ukWhKc1
	zqpwY7AkxXHrykVtXYGmZ/vsyq8iziUbmvBeQnRKgkUCn3vrEkX/SlJCOO5IJOHjkZUpeh
	r7XJR6eUjGAVoGZ+E8/bvZDi6wiBXhE=
X-MC-Unique: EY9rAYPIOT21ONJ9DHzY8Q-1
From: Markus Armbruster <armbru@redhat.com>
To: Kevin Wolf <kwolf@redhat.com>
Cc: qemu-devel@nongnu.org,  hreitz@redhat.com,  eblake@redhat.com,
  vsementsov@yandex-team.ru,  jsnow@redhat.com,  idryomov@gmail.com,
  pl@kamp.de,  sw@weilnetz.de,  sstabellini@kernel.org,
  anthony.perard@citrix.com,  paul@xen.org,  pbonzini@redhat.com,
  marcandre.lureau@redhat.com,  berrange@redhat.com,  thuth@redhat.com,
  philmd@linaro.org,  stefanha@redhat.com,  fam@euphon.net,
  quintela@redhat.com,  peterx@redhat.com,  leobras@redhat.com,
  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org,
  peter.maydell@linaro.org
Subject: Re: [PATCH 6/7] block: Clean up local variable shadowing
References: <20230831132546.3525721-1-armbru@redhat.com>
	<20230831132546.3525721-7-armbru@redhat.com>
	<ZQQRXR7LP2fVrcMU@redhat.com>
Date: Mon, 18 Sep 2023 16:49:58 +0200
In-Reply-To: <ZQQRXR7LP2fVrcMU@redhat.com> (Kevin Wolf's message of "Fri, 15
	Sep 2023 10:10:05 +0200")
Message-ID: <87v8c7bko9.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.1

Kevin Wolf <kwolf@redhat.com> writes:

> Am 31.08.2023 um 15:25 hat Markus Armbruster geschrieben:
>> Local variables shadowing other local variables or parameters make the
>> code needlessly hard to understand.  Tracked down with -Wshadow=local.
>> Clean up: delete inner declarations when they are actually redundant,
>> else rename variables.
>> 
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> ---
>>  block.c              |  7 ++++---
>>  block/rbd.c          |  2 +-
>>  block/stream.c       |  1 -
>>  block/vvfat.c        | 34 +++++++++++++++++-----------------
>>  hw/block/xen-block.c |  6 +++---
>>  5 files changed, 25 insertions(+), 25 deletions(-)
>
> I wonder why you made vdi a separate patch, but not vvfat, even though
> that has more changes. (Of course, my selfish motivation for asking this
> is that I could have given a R-b for it and wouldn't have to look at it
> again in a v2 :-))

I split by maintainer.  The files changed by this patch are only covered
by "Block layer core".

>> diff --git a/block.c b/block.c
>> index a307c151a8..7f0003d8ac 100644
>> --- a/block.c
>> +++ b/block.c
>> @@ -3001,7 +3001,8 @@ static BdrvChild *bdrv_attach_child_common(BlockDriverState *child_bs,
>>                                             BdrvChildRole child_role,
>>                                             uint64_t perm, uint64_t shared_perm,
>>                                             void *opaque,
>> -                                           Transaction *tran, Error **errp)
>> +                                           Transaction *transaction,
>> +                                           Error **errp)
>>  {
>>      BdrvChild *new_child;
>>      AioContext *parent_ctx, *new_child_ctx;
>> @@ -3088,7 +3089,7 @@ static BdrvChild *bdrv_attach_child_common(BlockDriverState *child_bs,
>>          .old_parent_ctx = parent_ctx,
>>          .old_child_ctx = child_ctx,
>>      };
>> -    tran_add(tran, &bdrv_attach_child_common_drv, s);
>> +    tran_add(transaction, &bdrv_attach_child_common_drv, s);
>>  
>>      if (new_child_ctx != child_ctx) {
>>          aio_context_release(new_child_ctx);
>
> I think I would resolve this one the other way around. 'tran' is the
> typical name for the parameter and it is the transaction that this
> function should add things to.
>
> The other one that shadows it is a local transaction that is completed
> within the function. I think it's better if that one has a different
> name.
>
> As usual, being more specific than just 'tran' vs. 'transaction' would
> be nice. Maybe 'aio_ctx_tran' for the nested one?

Can do.

> The rest looks okay.

Thanks!



From xen-devel-bounces@lists.xenproject.org Mon Sep 18 15:10:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 15:10:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604113.941336 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiFsl-00083T-EV; Mon, 18 Sep 2023 15:09:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604113.941336; Mon, 18 Sep 2023 15:09:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiFsl-00083M-Bn; Mon, 18 Sep 2023 15:09:51 +0000
Received: by outflank-mailman (input) for mailman id 604113;
 Mon, 18 Sep 2023 15:09:50 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OhQO=FC=citrix.com=prvs=618330109=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qiFsk-00082x-3r
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 15:09:50 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 64c02e63-5635-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 17:09:43 +0200 (CEST)
Received: from mail-dm6nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 18 Sep 2023 11:09:28 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BLAPR03MB5380.namprd03.prod.outlook.com (2603:10b6:208:29e::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Mon, 18 Sep
 2023 15:09:24 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 15:09:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 64c02e63-5635-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695049783;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=f6mys5BJ2zNreCi/cZrhpsxfDXzPVydWPUUvEIMTMA8=;
  b=YByzKzH7+liE7CXRVikIBPdHeXlsXODOsoeiz8pxELB72OF0W1dCJFSC
   duUwMmmBLDC0KaUqFI59nPyB+t7N6MyDQDYJtvEVgXdcwszq0LvD4mgfl
   r0yNKsiAgmk0b/TUfZfkTGSvzAUcyF4E5PGDflHSHMgm2h+/MRlzgUIsZ
   8=;
X-CSE-ConnectionGUID: twugktINTlGOIQ4HunfO2A==
X-CSE-MsgGUID: MaINDC9cSTSHOGfZpAHqMw==
X-IronPort-RemoteIP: 104.47.57.168
X-IronPort-MID: 121629498
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:f2TJEKJ+lq7qWpHOFE+R95QlxSXFcZb7ZxGr2PjKsXjdYENS02dWn
 TNMWj2HOq3cY2T9Ko93Oo6zphwO65OAyYRkTlZlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrZwP9TlK6q4mhA7wVuPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5rHnxB9
 uA5DgwJQTeivr6W3bS1bbNF05FLwMnDZOvzu1lG5BSAVLMKZM6GRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dopTGNnGSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv237GVzH+qCOr+EpWd/99MrHbCzVcvMz0xelWJudCZk2uhDoc3x
 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8Ul7Cmdx6yS5ByWbkAUQzgEZNE4ucseQT0xy
 kTPj97vHSZosrCeVTSa7Lj8kN+pES0cLGtHaSpaSwIAuoDnuNtq0EKJSct/GqmoiNGzASv33
 z2BsCk5gfMUkNIP0KK4u1vAhlpAu6T0c+L83S2PNkrN0++zTNfNi1CAgbQD0ct9EQ==
IronPort-HdrOrdr: A9a23:aNdiwaEGM8pKGWtDpLqEGMeALOsnbusQ8zAXPiBKJCC9E/bo8/
 xG+c5w6faaslkssR0b9+xoW5PwJE80l6QFgrX5VI3KNGXbUQ2TTb2KhbGI/9SKIVydygcy78
 ddmtNFebrN5VgRt7eH3OG7eexQv+VuJsqT9JnjJ3QGd3AaV0l5hT0JbDpyiidNNXN77ZxSLu
 vk2uN34wCOVF4wdcqBCnwMT4H41qD2fMKPW29/O/Y/gjP+9g+V1A==
X-Talos-CUID: 9a23:dvkMaWH53CvXFgN7qmJ761MbGdwEVEHZ41DxGhOYFGBnb+e8HAo=
X-Talos-MUID: 9a23:cemQsQSnom5ZVnOWRXTJjRBEGOw56J+SM2Aqvps0o+CkLAlvbmI=
X-IronPort-AV: E=Sophos;i="6.02,156,1688443200"; 
   d="scan'208";a="121629498"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JKAdgL/M72Yemclbrhpt/a5hU1DhcRFASdclJm4Hy6XHYrbEUPxaWA1a1euv/NAW7L0FvVzsGSncEsOtyvDq9WbvWTR5pTomVYUiGd7aYIVx/lZQmIWFGXY4SJkrbz69pEsfFkAv4fJQJD/UTSw0FFXGIvDBWG/F1ES42dbski74UYBhQvo59fT0thU72BO/RmIrfXmumnm+LcLpI+0Ard9ueZs5Yyo9HURXVZZ82fOnSf/cYkbuA/McVt8IxG+5+9Il+a2sNOdOBypauYC+ykIZyXLAu5LIXyn+ZwXAvbQIhSrdFTzvKcjvABJRQv0fwrBqwG4jdxCNVZhK/w6h5A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mjn9/0FlY8u/9J1L5W0VPRgG4dVPwDDwB3/UuSeomd8=;
 b=EogD/aCuyt/l+bhaBMtCHKgErVvZJIPfv6Na3hh+n8dbf3M1BwxAMqKeKniJvNjCKhnHtjIwnW8xOasANTe6+//yjW2e4XbMSxjAVfD3ra6eIHu9dqLWf90nScggE2WbamhUa+5cQQJA6naBcS3sIeRIR417WzDJ+bJ2v5Oy6888C85/wZguNpFC7LLo/e+LefqH0MzLFuKLQD4P+yiUcKqrPCsRExUwawPArbSyxQyUIPEW51JKUjKG6t3FGeBfTZHfwD47PFJhkC7IvfC9A24REVLEWv2fqYafenw2BXhdek9EEYwmeqj5AQbBE/EhCUe0hz8XPlBhEEDx6u4sEA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mjn9/0FlY8u/9J1L5W0VPRgG4dVPwDDwB3/UuSeomd8=;
 b=On8MVSbexn9HEk23xom7hZReMFSq1D5lyN7drnItNSyq7FoXXolHPbKjGMzBychpnUpMalYhmkJeK3IiHXdDHXZkPoWXoQEU1k9qn8HQaw/XcQ0WFfI4OtVRlgS5Cv8E+Tip+fXBioF99jD//kwHp2MrPpELbktCdpYjXxtRn6U=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 18 Sep 2023 17:09:17 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2] x86/shutdown: change default reboot method preference
Message-ID: <ZQhoHZvk7tXfGI2g@MacBookPdeRoger>
References: <20230915074347.94712-1-roger.pau@citrix.com>
 <e22af903-cbdf-dfed-8f69-44e5ea05ef8b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <e22af903-cbdf-dfed-8f69-44e5ea05ef8b@suse.com>
X-ClientProxiedBy: LO4P123CA0154.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:188::15) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BLAPR03MB5380:EE_
X-MS-Office365-Filtering-Correlation-Id: c6379103-c9ef-4c05-6658-08dbb8593e0e
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ClTij1hN0h9mkiqAI1/uJYqfkyF9u2By4mQDWgIOF9WPw031lBKhvPt3J2A7JIrI6IJ3J2gdRhFZpRqftVVirFl8ai2ImAeoVFEIF1PkbUdXQTpe4th2shrHF0gQ+VYgWdcpLjx5+sgYNxq3wDpGVm17ytCW5fDq+EbpAA0OmnGc+yIk8+t3XwNcU0EpKFqqYqo2I2opWiZYqVVh2Ep8CWbYX9q0eNu1ZlsHVGHvpl/ukgcOI002RxFFhnkMD1gTAC/28Qlb8BJgaek9ti9HUnCi0AGYEU3MVtnm20YJylLk0xUcRGnDz//Vz4S/yVyr312rgp7YxQNy1LtFfVk6IotafEb9g8T46ZMesQaIQCKNF2tNtkXhjXTu/sOUGJPIlYtdIBSCRrZBB/3lvwQH93vuxPVbnQWRRyUBOgKRMH4xNXqtaQcQ1ETnD5LQSFXnuuO7PoREx8KjQeXwTThnJgNR62ZDmLabSqOTMyMOmB5srNDbl/OHQfxR4LXk8hZE+e0Pk/fAXZNbYCC+R4uU1WoFL2w4gsJd6OSyXqtX9ELiP9KmtwCpDwBbDKA1D+K+
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(346002)(396003)(366004)(136003)(39860400002)(376002)(1800799009)(186009)(451199024)(6666004)(6486002)(6506007)(478600001)(38100700002)(82960400001)(8676002)(4326008)(8936002)(26005)(86362001)(5660300002)(54906003)(66556008)(66946007)(66476007)(6916009)(83380400001)(41300700001)(33716001)(316002)(6512007)(9686003)(53546011)(2906002)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Y25vYmRnYWt0MGxLZWE3RkM4K2dzTkQ1RVJkaTRlK2NrM2RldmZXcjVqVzk0?=
 =?utf-8?B?TzN2RFVhVVFkUWxZaWtpNnlLeGVnS0phYjg5b2FwZnMxNTNMdERzcEYyUWZr?=
 =?utf-8?B?WXBxd3M3VUk4UnlnOWxkV2Y3WTZMcnN5K0Z2UytCRmkreVQxekU5cHgzUVpX?=
 =?utf-8?B?K0ZoUitINFB4SXNtTDNURmh3QVF3bnBiSGt1amp4TW84a1JuRFEwSlorSnpl?=
 =?utf-8?B?Z3JCSDF5WEZUZnp1K2xTVjh4LzdmRUhxeFdSTVJzWGxtYlhIR3FaVWFNYlU2?=
 =?utf-8?B?OFE4cERYRGdMVnpvaU1HYnBlVVRBY0ZwZnF2TmZxbTBxYU5ZTGp6VzBndURi?=
 =?utf-8?B?R0NEdzhEVDB4QWlCcHNiTVduWHdVVm9NUkpBdTZER21naHpLemp2OExWTmFG?=
 =?utf-8?B?WHM4UEUzaXIxMVA0VDIwRWg3eFJ1RjJFYTJqamp4NGVUazZVdERpOWlCSll5?=
 =?utf-8?B?R3RZY3B4VW5GSjZQeTBPN2Q4RFdMQkxLUmtudnNMZ2RoWmFYOHpYTXBuSTZ1?=
 =?utf-8?B?cHEyRnk1LzVBWHh0Ui96R1FSK2NuZGFvbWs3a0xiSUlTYVlJRnR1SUE1Y05U?=
 =?utf-8?B?Skc2TFdNRnN1dDhSVXo5WkJaMWw0VGNxRElwZEVHWDJVVnJQblA3NEdsSklQ?=
 =?utf-8?B?WitYc3FEbk9rQVgwaHVwOU01bEltdkhIVnlwMjhvemxuL0xDRVRsOVZWcHF5?=
 =?utf-8?B?MHJlSHFndzcreDRrUG9wcFNnUlRnTStMZmJzeGdLOTZRSzdBYmhRbFdtUXdy?=
 =?utf-8?B?Y3NobUd3OEllclRkQ2l2SlVVeWRPcnkrSnJFZmdRTzdUWFRkd3BucHZUK3Az?=
 =?utf-8?B?bTZLTmVCUkFuYXoyL3N6UWR4bm1VSTlMNTlqZFd6VFBPZ1pnQVRiR3BrZ2J5?=
 =?utf-8?B?U1IreEViN01EUVNYWmd1WU9TWU5xZHBPYUVEVzZNKzgxVjFwZStORllxcytK?=
 =?utf-8?B?dndoS2orRTdhb0djNlkraUlNRGEvUDZvQTdJdWZ3UXVyR1JGS2RVUm1UZEdz?=
 =?utf-8?B?VW0zY2JCampQQzBzVXhlb3BkUlQwbVdnSThZSzRhUnhsNjhuUU80K1RmbGZ0?=
 =?utf-8?B?YjZWR1U5Ykk1Nk9STkhUdEF5N0ZkODNTTk44bU1DNDl4OXR5OHExWDlnSUYx?=
 =?utf-8?B?dUdPbGFaRElHYVhOYXFiR096SVBGQWNGRFhCVEU0Z1N6R2xtb2xCc0dkY3Jy?=
 =?utf-8?B?ZXhFQW03U0QyWVQ3dEM2TnVXU1NsRjZNR013SGF3WEJwd0Eyd0Z3eGh5S3JX?=
 =?utf-8?B?bFFjb2VDeVQ1eDcrUGNWeGVwSFRLaS9oQjVSWjNUeFZ2eVBpSGliOTJWMjU5?=
 =?utf-8?B?b0hUaXRvU0xiR3FqaW5sNWUrbGdRUUdONjQ1ZW1Fam85Sk9vdHBhZjhFNDlz?=
 =?utf-8?B?RVBMRUd4WndRYVFqWGZTelBUMytvT3FyT1hhaTNyWXRwN3R5ZXZIVDh6UFBz?=
 =?utf-8?B?TE1Td3hRMXBnMTdVNmlVendvK0dGSzQ5QTNsTW1QYWkrOG4zNit6Vi9iSDk2?=
 =?utf-8?B?alFaYXFpc3VHRFhrNTJWMTYzQzByMkxYeTBVamxCNnoycU42UUg3YzBGdTBS?=
 =?utf-8?B?L0VwSEszeXRVcUwwVUxWcm5tZHVNT1ZvOVczNk5CZ3J6dG1JK2FWYk5tWTVl?=
 =?utf-8?B?WDJ5dHRlZ2tXd29wTzROcGRLUmlxS25ZNExrNnBDOVhVQnJVSTR5YVRoK1RR?=
 =?utf-8?B?by85VGlaUHRDbXFtdURwVWRzbkJPclVPUGgyYkovWUpZVjgzbW5TakhsZDBI?=
 =?utf-8?B?Nms5b09mdWJkcWQ2bkRORzhlblNqVHplMktMemxTSEZqRldFejQyMDdHT3Qy?=
 =?utf-8?B?VnZKSlJXTi96Q2xhUHhkcTF0NTJXSytiaWkzdHdjTUN3elRFakhQdjF2MG9y?=
 =?utf-8?B?ZHVrTWNmQTc4T1l5ejFCZEtGM2hrNFEyQi80Q1NHZ1lUdGJpNmVTS1ZZZGxB?=
 =?utf-8?B?NzR6NklBbGlEVm1TUWhQN1BuaTJ3cWlhVDJEekNSR2FpU2g2emNPRW9UNmhl?=
 =?utf-8?B?bjJaTEdMSUs2ajVPUVdzRk9adXZ4azIzdGNMNVlPQS9pSFg1NDg0Z3pRNGx6?=
 =?utf-8?B?Q09XSkZYWTh4RHJWQUZHeFpJVlgrL3kvcWtLZmZGeU5JdkpMQ3RacjcySE9s?=
 =?utf-8?Q?+x2I/aoXd/FOBU+qOs6d8iiAi?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	M7/OlMXSmzSKRGSr9pRgpJvXZCCXRTNbLbuSLD51COnupeglBplRepNXRX89PHP3hoL3/feY+h482LZ2rhIixfl6E4BjWn2IGZlIPdsjRivktlhg1i38EHvf1w4lhsRZKQmigNLS0q/2D6W5IavF6kdPZEqfeR555seVceI2cZb4N9gP7LjqUl4Tp5ylND+3ca2Lazi/vBN0BfO+3sR83w0Hg1pQAcyET9Yc339+XdDze/G9vJzWyb6pQDgjmwx9wVq3A/OBWqnRjVtcAeQpS2QmWSeaHQNCg8poavuGUgPkRzkGe0HubWDyEyc3Y5eHJ2gYmbDFab71SgQopebYbtF99GyT/3wcLPpHwcBsNVyoV6YL5sZr7imkLj1/wi5WQS5acNnw4ywfiVcTld8CMCG67wiX8FqckcS+RQ5T45badtXJk7oqIq7aEFQl7GuQCqoAkySjGH8B+sg1kcjoa4/9hN1gp4hU4Jlpfunqpl5b4VglSFfWEI0B7fFc5H1YUxvUM5U5kVKMOa6LYXwlqMgvq+nH6opUfscUcYtaSBKQGjECh4URiACFXFBR5rd4AaVZn/RmKVpFppXt40ror1xitu+FtjroQALl0X+tnuNciyQqoUxAh0A2l43r9raOEV+snBhUniWMNXab2IIIxfmE7jHiSqMGs1jf4COOOHdkluiqMjut75Q0BAvStYBTbqrUaT69ZIoNaT2rIJk+7vhzrRaA23iaBJ9ztVyvOwwokQqnDzgXSEpbKSxq9arXsOV6KbknVTuvsdWtNjJyEuuKStD2eE0P3bJYy3rs3Am0M+F1JHxtVXfaecLErL1b
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c6379103-c9ef-4c05-6658-08dbb8593e0e
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 15:09:24.0124
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: fkrWUhppZ2W3nbFUVYqr7LJfj0FtAPBJcIu8ghNXx+PHmBpgK/KPJCs7W8gpKhXxEDpBWvynKP77Ep9RdzpSWA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR03MB5380

On Mon, Sep 18, 2023 at 02:26:51PM +0200, Jan Beulich wrote:
> On 15.09.2023 09:43, Roger Pau Monne wrote:
> > The current logic to chose the preferred reboot method is based on the mode Xen
> > has been booted into, so if the box is booted from UEFI, the preferred reboot
> > method will be to use the ResetSystem() run time service call.
> > 
> > However, that method seems to be widely untested, and quite often leads to a
> > result similar to:
> > 
> > Hardware Dom0 shutdown: rebooting machine
> > ----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
> > CPU:    0
> > RIP:    e008:[<0000000000000017>] 0000000000000017
> > RFLAGS: 0000000000010202   CONTEXT: hypervisor
> > [...]
> > Xen call trace:
> >    [<0000000000000017>] R 0000000000000017
> >    [<ffff83207eff7b50>] S ffff83207eff7b50
> >    [<ffff82d0403525aa>] F machine_restart+0x1da/0x261
> >    [<ffff82d04035263c>] F apic_wait_icr_idle+0/0x37
> >    [<ffff82d040233689>] F smp_call_function_interrupt+0xc7/0xcb
> >    [<ffff82d040352f05>] F call_function_interrupt+0x20/0x34
> >    [<ffff82d04033b0d5>] F do_IRQ+0x150/0x6f3
> >    [<ffff82d0402018c2>] F common_interrupt+0x132/0x140
> >    [<ffff82d040283d33>] F arch/x86/acpi/cpu_idle.c#acpi_idle_do_entry+0x113/0x129
> >    [<ffff82d04028436c>] F arch/x86/acpi/cpu_idle.c#acpi_processor_idle+0x3eb/0x5f7
> >    [<ffff82d04032a549>] F arch/x86/domain.c#idle_loop+0xec/0xee
> > 
> > ****************************************
> > Panic on CPU 0:
> > FATAL TRAP: vector = 6 (invalid opcode)
> > ****************************************
> > 
> > Which in most cases does lead to a reboot, however that's unreliable.
> > 
> > Change the default reboot preference to prefer ACPI over UEFI if available and
> > not in reduced hardware mode.
> > 
> > This is in line to what Linux does, so it's unlikely to cause issues on current
> > and future hardware, since there's a much higher chance of vendors testing
> > hardware with Linux rather than Xen.
> 
> I certainly appreciate this as a goal. However, ...
> 
> > Add a special case for one Acer model that does require being rebooted using
> > ResetSystem().  See Linux commit 0082517fa4bce for rationale.
> 
> ... this is precisely what I'd like to avoid: Needing workarounds on spec-
> conforming systems.

I wouldn't call that platform spec-conforming when ACPI reboot doesn't
work reliably on it either.  I haven't been able to find a wording on
the UEFI specification that mandates using ResetSystem() in order to
reset the platform.  I've only found this wording:

"... then the UEFI OS Loader has taken control of the platform, and
EFI will not regain control of the system until the platform is reset.
One method of resetting the platform is through the EFI Runtime
Service ResetSystem()."

And this reads to me as a mere indication that one option is to use
ResetSystem(), but that there are likely other platform specific reset
methods that are suitable to be used for OSes and still be compliant
with the UEFI spec.

> 
> > I'm not aware of using ACPI reboot causing issues on boxes that do have
> > properly implemented ResetSystem() methods.
> 
> I'm also puzzled by this statement: That Acer aspect is a clear indication
> of there being an issue.

Hm yes, I had that sentence from v1, before realizing the Acer quirk.
So there's one know issue with using ACPI as the default reboot
method vs many issues when using the UEFI one.

> Plus it's quite easy to see that hooks may be put
> in place by various firmware components that would then be used to make
> certain adjustments to the platform, ahead of an orderly reboot / shutdown.

Well, I very much doubt any vendor would rely on this, seeing as both
Linux and Windows both default to ACPI reboot, and the UEFI spec not
mandating the use of ResetSystem() anyway.

> > --- a/xen/arch/x86/shutdown.c
> > +++ b/xen/arch/x86/shutdown.c
> > @@ -150,19 +150,20 @@ static void default_reboot_type(void)
> >  
> >      if ( xen_guest )
> >          reboot_type = BOOT_XEN;
> > +    else if ( !acpi_disabled && !acpi_gbl_reduced_hardware )
> > +        reboot_type = BOOT_ACPI;
> >      else if ( efi_enabled(EFI_RS) )
> >          reboot_type = BOOT_EFI;
> > -    else if ( acpi_disabled )
> > -        reboot_type = BOOT_KBD;
> >      else
> > -        reboot_type = BOOT_ACPI;
> > +        reboot_type = BOOT_KBD;
> >  }
> >  
> >  static int __init cf_check override_reboot(const struct dmi_system_id *d)
> >  {
> >      enum reboot_type type = (long)d->driver_data;
> >  
> > -    if ( type == BOOT_ACPI && acpi_disabled )
> > +    if ( (type == BOOT_ACPI && acpi_disabled) ||
> > +         (type == BOOT_EFI && !efi_enabled(EFI_RS)) )
> >          type = BOOT_KBD;
> 
> I guess I don't follow this adjustment: Why would we fall back to KBD
> first thing? Wouldn't it make sense to try ACPI first if EFI cannot
> be used?

This is IMO a weird corner case, we have a explicit request to use one
reboot method, but we cannot do so because the component is disabled.
I've assumed that falling back to KBD was the safest option.

For example if we have to explicitly reboot using UEFI it's likely
because ACPI (the proposed default method) is not suitable, and hence
falling back to ACPI here won't help.

> And go further to KBD only if ACPI then also turns out
> disabled (a mode that Xen quite likely won't correctly operate in
> anymore anyway, due to bitrot)?
> 
> As an aside, KBD likely is unusable on hw-reduced systems, for there
> simply not being a legacy keyboard controller. Instead we may need to
> fall back to CF9 in such a case.

Hm, I can send a followup patch for that, but not part of this
change.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 15:45:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 15:45:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604123.941346 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiGQg-00077H-25; Mon, 18 Sep 2023 15:44:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604123.941346; Mon, 18 Sep 2023 15:44:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiGQf-00077A-Uu; Mon, 18 Sep 2023 15:44:53 +0000
Received: by outflank-mailman (input) for mailman id 604123;
 Mon, 18 Sep 2023 15:44:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=q4jH=FC=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiGQf-000774-8O
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 15:44:53 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20623.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4e21a9ad-563a-11ee-8788-cb3800f73035;
 Mon, 18 Sep 2023 17:44:51 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBAPR04MB7224.eurprd04.prod.outlook.com (2603:10a6:10:1a8::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Mon, 18 Sep
 2023 15:44:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 15:44:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4e21a9ad-563a-11ee-8788-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fPmbylSIAxW4KicHTBrvlCmNkzWSlrGOpRcMC4oTu7bgAZguA0S2KsoJ0s3XxpO4w5F9ueC69dhVKOf0DVJNzfbKyHWMBvl5foPVL8DXIx3nU4eceolZV4yAWVeeXexwTqqt+vAeMORUFhFRuGavKc0vVLYYO7h25NMD19AfCCfYiS094NPf5PNSx6Zw3JSNi6JTjukB8Vo5j0rqq7Hx+2+HZOArvk4CiOfJjnKdGTZdyexMqFkIkZzD1GQQ3eEP5IqyDyXOsKfTHUh/uJ4ONJbreG58BCQqIp/jWWsQsgAFYyEY5owY1m8mJvpu88zkYAN4xzMxLNLTErSRlfzdQQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zwQWdkpy7cNM015vpddtJN7XF1HvDUm2RuF2Y4NOvko=;
 b=CVcEP4+fatC6vTA5ksjARuwraP4Isintkrc+WLYizTtUX2xNgiy5Om/VvFAFp9TP3y/FrFHpsir7PitD6OqSNDpko9xfo8je/ZF66psArRa0ayT6ghEJN+tSXAVb5QkbovJhC5RsxGAIM068YCWEHyZ7lzK5LVLw7lZmTCOlR6aTnE9eaHO/MDffeAZ8zcSVtfPfPqQ8rWgEbOZG0uUHADk62FtVTytIoYC933qpX2N2STl/2jwvD2OORXjcdWLIPFI1GCBMqp5lI3tpOQOaYRNJ2uNU9zX1yhOy8pxy1Z64hGG8qSBy8yNzi09YK/CymLOeizd12lHebuomYbDZbQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zwQWdkpy7cNM015vpddtJN7XF1HvDUm2RuF2Y4NOvko=;
 b=gSKfthuW/0+WiILKfNiqSn7Qol2A59stt6I+kE3JJ2E7cGURYSyt32UKFFWVBedvwrAJ6gVnho+o3fpT8w/RDLO7NFnDb0IXvp0LGmPalnHEwO0IJPx8LTKeBvvVJnC0rC+9zgWNRDzMRyqBG5b82CwsdQlAzuyF7iVjzrh/yVJOI+IyUiR4kjjTnZYiEJa93Phb1YGU5sSDRY0NE9gpD654WqKV9mMPwFoTK7Rb771L9NBf3lRvu3R1mpjSeon99lRXicQ5qCMa2DL1f+R9KLVeRJHExK235dLLvWy0jHrYCHS4mBWMp030yE6FUAVOi2jmXDQNzYigUCrQZ1Dm1g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b92b994c-a9cd-10c3-033b-3c1aa752fa8e@suse.com>
Date: Mon, 18 Sep 2023 17:44:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2] x86/shutdown: change default reboot method preference
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230915074347.94712-1-roger.pau@citrix.com>
 <e22af903-cbdf-dfed-8f69-44e5ea05ef8b@suse.com>
 <ZQhoHZvk7tXfGI2g@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZQhoHZvk7tXfGI2g@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FRYP281CA0004.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::14)
 To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBAPR04MB7224:EE_
X-MS-Office365-Filtering-Correlation-Id: 26cbf5f9-3341-4317-bb13-08dbb85e310e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	NvBz3Os1ZvWnWUe2BQJE4KPip/dCh/AfUMjpq7TNp5JCPvBUHx2QsVIydPz80NlJSGgO2rjj3Wo96Kl349Oq2aMCbjuKwHu5iUv8ZyosxPxaD7YcjeM96z4zIBuYJNjvART/+HdnuWPZPTlTeQ3kXbtM8u8oGO8ZnY6Rl9nz42CIkvhSWvRZaKfifIPzwN8goVEQOJJU95Zuj7YhZjKsptiYV9wyAq+POwfN+y+EjxyuhIx7X4/JdJ5ADtI44Q8weuyB3oM2i1qiuaP5XK7BMKArpwcwTBGPs+LMBo1Zaa1Dg4LMF/c+Z5WrrPJPH2ovUi6uD78UmEogmvykMuqsnQXLr4uH/NyRoeZ6353WQpMSN9/D1pzs2O+n1YwHd30veHBvszDptkHQ4GotpGlfu9J3wy8WI5q5H7nD94/tntQi/mTsK8K1Cudf12DUO5Tl9/yNtP6LNXH52Kle2j1ftvgktD9bGo5D3h68af/+8csnK7Bf9vYyQa0Oiq7EelqnO0GgrJRw8xFCjKcrHKSscNj+oMfeyL4agn+hrbnmFMrt83S6CVdkArVLuyjMKEhRFGj+F3YrEyAAUlOJoFm/nRRvNkE8yr8O8OOhQbyzyzt+8+cDJjcsQlSi3kSaPMbW2pMsOETrV8qpqEBY5zO1Dw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(136003)(366004)(396003)(346002)(1800799009)(451199024)(186009)(6512007)(53546011)(6486002)(6506007)(83380400001)(86362001)(31696002)(38100700002)(36756003)(2616005)(26005)(66556008)(66946007)(54906003)(6916009)(66476007)(41300700001)(316002)(2906002)(5660300002)(4326008)(8676002)(8936002)(31686004)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aHVvbVZ6eStRelJyOU1lTlo2eHJ5NVpINnN0aVMzQ0pycGtwY1VSUFEyVDVU?=
 =?utf-8?B?eUpwTnNKL1RoN1ZNMXh6MnExeXdNeVVLdDhJWS91SGlmRVVva3doTzJCTngv?=
 =?utf-8?B?dDZaQ2REdk83S2ViQm0zU2VCMW03d2RqQzlUVTRQTGRDYTRwTXZ4Qmc0T2JV?=
 =?utf-8?B?UDJKRmRDTHBRRUttdzd6ZWNQQkNEVFExV2pQN1ltVFU1eEFJOEo1TEl3STZM?=
 =?utf-8?B?bGpqMnhadVQrRm9sTlZSUmNmV3dlNmN5R05yTUxsdUdmNFBLZUJZa2FKczha?=
 =?utf-8?B?R0g2Z0hRMmRLTWdGV3NRZmJvS0hHYVdBcG8yUFZSRTJkdjd2WkJFa0xwRDBp?=
 =?utf-8?B?bk9kdVkzTmtBdjQwZ2F6UHVXQjg3OC93cmhndUlGUkJuNnVZbktFeHZzU1Bo?=
 =?utf-8?B?QVdDMHRYY3ZWYUM0eWFHc09Hb2l3aGlLZXBPQVprTWNkWjZhenRFU3A1Tld4?=
 =?utf-8?B?a3RWazY3MCtCS3lSRFViTmpIdEVIYmlDTWwwaG16aEJTZE1MTE14TmxvcHNw?=
 =?utf-8?B?ZDFUSzlFR3I5SCsxdDViS1J3SzkyWkdqdXRpRURRK0hocmhnYUpCbU9TaDB2?=
 =?utf-8?B?NDk5OWljZldQRVNNakI3Ync4UHRQbVZFYXBVMUtrekhDVUo5WUgvRkdTN1ZF?=
 =?utf-8?B?VGI1RFZYQ2JHNzVFaHQyZTFYY3dydHVLRmdvTFAvV0xMeUpneUZPcVMyNW1v?=
 =?utf-8?B?U0xza0RJVGl4YUdRWUFab2UxU3oyWDFnN0tneGJia1YzYmpZSHZmdHBMY3R3?=
 =?utf-8?B?TVZ0djVhTi80MUtueFRpS1pJc1loM3VFWmVvOXUyTzdTZDJLSWlnVUNsR3Yv?=
 =?utf-8?B?dFZrWWlEbi9UWksyNU91MUNFOGxVSDAweGtJWFZIRDhSU3o4OWhIWU5hT2lr?=
 =?utf-8?B?T2t5eUhrOFFSMU1Jc1JOOUlOSGtXN3oveTI5OXJFUnFOU1R4d1VRZkdUbGdD?=
 =?utf-8?B?dzVtYjVrR3o5d2F4RkN6NWgzdVQ3VjZxc0Q3d2owbWFsQlBqVkVZbVI1bHpi?=
 =?utf-8?B?T2NqTng4QUowRG00SXUxVnc3VFdXbnd4RUo5ZnBvaUhKQmhzNXRwQjdTb2FJ?=
 =?utf-8?B?cTdicFZmZTl6ZGJGVFVjcksxclRTdmdRaTB5STlKeGVCeEYxVE5HR21kTEdv?=
 =?utf-8?B?MG9ORjZRWGZKWDZhTVpVT014ajFmMk54WTlkeSsrQXk3SHFickk3dkd1UHNT?=
 =?utf-8?B?Mk5XQWtpckZCTjBtNVN2QlA1MndWRTg2RENLYVZpZGJvUUlxekJycjJqTEgx?=
 =?utf-8?B?eE91d1FwYU5NNUl6eUNwSFFCV0ZTYmY0Qlg4MGV1UmdpVDBUcENZaWs1ZG5a?=
 =?utf-8?B?RzczTVk5SHpzVkZFTHN6Qk10WVN1THdhdUY5VGl5N1phWHc4dCtDVDczQmM5?=
 =?utf-8?B?eG45VkNkbHEvSncyZzhJM21HV2hzcER5QlF2ZDAwZy9GS1dLZFhBdHlhVFhM?=
 =?utf-8?B?T2o3QzA5NUNyMTVwSGQrUVgvdHZXanZlVWRDMEJDT3V4cy9rZEJiTUp4QXQ5?=
 =?utf-8?B?VW5TL3hFMk9mZjhGNVlwVWpBbXZqZ3M5NW9kUlppclhEV29RSUU0NWVqTEJH?=
 =?utf-8?B?RHdzaDFIc2NKMWdmUlhTaHJVSlo1eG5rWGJIUldrWnBXMUZkcXdwOUlsL2pl?=
 =?utf-8?B?OFgxUXUwUGN1NTNCZ2psSUFKalo5NFg4VjU2bzBIczQ1azZEVWN4bi9YbGpa?=
 =?utf-8?B?bzUzWGdpdnRFeWJraHU1b3lkWGJRSlRXNmh3Q0JnazhocmhGaEpnb2ltM3FV?=
 =?utf-8?B?UE9lbVdiR2VGWG9rL1RCZForNE1id1VIR0dYdUsyS0lrQlFxUVZ0K1NsSGhu?=
 =?utf-8?B?eVVjd3B6Y1I4Vm91dVNvNEVVWmlSL1lMSHJxcWp3M2JWRnNjSXFya24rYjNG?=
 =?utf-8?B?N1RlWnFOQUJnSDhmNi9tVDZ2T2lGQUJ3bE9NQjZpbmtLcE1HUWg5dC9LbkxK?=
 =?utf-8?B?QmF4WDJoSGV5VVdvNlRNQW9YVFYwQ0F4SVE2WHkrak9rbHlBeWtlUFhsMG51?=
 =?utf-8?B?YjJkUndXcENwZ2lzbjNpNVk2bUhZajFUa0hZejZONW1wS0VqL0x6QmtvQ05T?=
 =?utf-8?B?ZGZKeU1YOEJLbFcxUk4xYk9ndlFaS1hBb2tRdDhGemVBZjNmS2dSajdZbUxC?=
 =?utf-8?Q?F/yeYdy0lX2CdSksjfbrKbO72?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 26cbf5f9-3341-4317-bb13-08dbb85e310e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 15:44:49.6402
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: E7QU4TpyHfqpLrlxDF5AaasZEicqWLn5vQ2jFBiZhmHwqml6b7ovKHmP3nG19h9HDSP7T0QjVGLUzEdhHIv3VQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7224

On 18.09.2023 17:09, Roger Pau Monné wrote:
> On Mon, Sep 18, 2023 at 02:26:51PM +0200, Jan Beulich wrote:
>> On 15.09.2023 09:43, Roger Pau Monne wrote:
>>> The current logic to chose the preferred reboot method is based on the mode Xen
>>> has been booted into, so if the box is booted from UEFI, the preferred reboot
>>> method will be to use the ResetSystem() run time service call.
>>>
>>> However, that method seems to be widely untested, and quite often leads to a
>>> result similar to:
>>>
>>> Hardware Dom0 shutdown: rebooting machine
>>> ----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
>>> CPU:    0
>>> RIP:    e008:[<0000000000000017>] 0000000000000017
>>> RFLAGS: 0000000000010202   CONTEXT: hypervisor
>>> [...]
>>> Xen call trace:
>>>    [<0000000000000017>] R 0000000000000017
>>>    [<ffff83207eff7b50>] S ffff83207eff7b50
>>>    [<ffff82d0403525aa>] F machine_restart+0x1da/0x261
>>>    [<ffff82d04035263c>] F apic_wait_icr_idle+0/0x37
>>>    [<ffff82d040233689>] F smp_call_function_interrupt+0xc7/0xcb
>>>    [<ffff82d040352f05>] F call_function_interrupt+0x20/0x34
>>>    [<ffff82d04033b0d5>] F do_IRQ+0x150/0x6f3
>>>    [<ffff82d0402018c2>] F common_interrupt+0x132/0x140
>>>    [<ffff82d040283d33>] F arch/x86/acpi/cpu_idle.c#acpi_idle_do_entry+0x113/0x129
>>>    [<ffff82d04028436c>] F arch/x86/acpi/cpu_idle.c#acpi_processor_idle+0x3eb/0x5f7
>>>    [<ffff82d04032a549>] F arch/x86/domain.c#idle_loop+0xec/0xee
>>>
>>> ****************************************
>>> Panic on CPU 0:
>>> FATAL TRAP: vector = 6 (invalid opcode)
>>> ****************************************
>>>
>>> Which in most cases does lead to a reboot, however that's unreliable.
>>>
>>> Change the default reboot preference to prefer ACPI over UEFI if available and
>>> not in reduced hardware mode.
>>>
>>> This is in line to what Linux does, so it's unlikely to cause issues on current
>>> and future hardware, since there's a much higher chance of vendors testing
>>> hardware with Linux rather than Xen.
>>
>> I certainly appreciate this as a goal. However, ...
>>
>>> Add a special case for one Acer model that does require being rebooted using
>>> ResetSystem().  See Linux commit 0082517fa4bce for rationale.
>>
>> ... this is precisely what I'd like to avoid: Needing workarounds on spec-
>> conforming systems.
> 
> I wouldn't call that platform spec-conforming when ACPI reboot doesn't
> work reliably on it either.  I haven't been able to find a wording on
> the UEFI specification that mandates using ResetSystem() in order to
> reset the platform.  I've only found this wording:
> 
> "... then the UEFI OS Loader has taken control of the platform, and
> EFI will not regain control of the system until the platform is reset.
> One method of resetting the platform is through the EFI Runtime
> Service ResetSystem()."
> 
> And this reads to me as a mere indication that one option is to use
> ResetSystem(), but that there are likely other platform specific reset
> methods that are suitable to be used for OSes and still be compliant
> with the UEFI spec.

See my reference to ia64. With ACPI_FADT_RESET_REGISTER not set, I don't
think there would have been any other non-custom reboot method there. So
while perhaps not mandated, it's still the designated abstraction layer.

>>> --- a/xen/arch/x86/shutdown.c
>>> +++ b/xen/arch/x86/shutdown.c
>>> @@ -150,19 +150,20 @@ static void default_reboot_type(void)
>>>  
>>>      if ( xen_guest )
>>>          reboot_type = BOOT_XEN;
>>> +    else if ( !acpi_disabled && !acpi_gbl_reduced_hardware )
>>> +        reboot_type = BOOT_ACPI;
>>>      else if ( efi_enabled(EFI_RS) )
>>>          reboot_type = BOOT_EFI;
>>> -    else if ( acpi_disabled )
>>> -        reboot_type = BOOT_KBD;
>>>      else
>>> -        reboot_type = BOOT_ACPI;
>>> +        reboot_type = BOOT_KBD;
>>>  }
>>>  
>>>  static int __init cf_check override_reboot(const struct dmi_system_id *d)
>>>  {
>>>      enum reboot_type type = (long)d->driver_data;
>>>  
>>> -    if ( type == BOOT_ACPI && acpi_disabled )
>>> +    if ( (type == BOOT_ACPI && acpi_disabled) ||
>>> +         (type == BOOT_EFI && !efi_enabled(EFI_RS)) )
>>>          type = BOOT_KBD;
>>
>> I guess I don't follow this adjustment: Why would we fall back to KBD
>> first thing? Wouldn't it make sense to try ACPI first if EFI cannot
>> be used?
> 
> This is IMO a weird corner case, we have a explicit request to use one
> reboot method, but we cannot do so because the component is disabled.
> I've assumed that falling back to KBD was the safest option.
> 
> For example if we have to explicitly reboot using UEFI it's likely
> because ACPI (the proposed default method) is not suitable, and hence
> falling back to ACPI here won't help.

Perhaps, but falling back to KBD isn't necessarily going to work either.
And it might well be that on said Acer no reboot method would actually
yield consistent behavior, except for ResetSystem(). The fallback logic
here as well as that in machine_restart() is all based on guesswork
anyway.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 16:01:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 16:01:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604129.941356 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiGgP-00035U-FA; Mon, 18 Sep 2023 16:01:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604129.941356; Mon, 18 Sep 2023 16:01:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiGgP-00035N-C3; Mon, 18 Sep 2023 16:01:09 +0000
Received: by outflank-mailman (input) for mailman id 604129;
 Mon, 18 Sep 2023 16:01:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OhQO=FC=citrix.com=prvs=618330109=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qiGgO-00035H-B9
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 16:01:08 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8eebdf1a-563c-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 18:01:01 +0200 (CEST)
Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 18 Sep 2023 12:00:49 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DS7PR03MB5655.namprd03.prod.outlook.com (2603:10b6:5:2c6::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Mon, 18 Sep
 2023 16:00:47 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Mon, 18 Sep 2023
 16:00:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8eebdf1a-563c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695052861;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=VS5KYQ/9a9yfEVFLY3obnzBb2ps0qsxEBluG1jAApbs=;
  b=B0BzwoMwBaAuvKI/bn/XqO3DL35xxGmOKB8POefnYB3BlLNASMw1h4DJ
   JKnMFgKFYP5/TtomPbHoO5C8+nLt1MbYh5s2uzqAuj1suXhAkGAUh8s+t
   DV/Ttt7cKTUXuPcJQ6K5QPgIZpBUSFoPbdYoMG1+reLovQS2yxI24pPqy
   Y=;
X-CSE-ConnectionGUID: Ih3uThSgTDqBfrVA4xwcbg==
X-CSE-MsgGUID: Bl3EPe8ASU64SfDXwumXAQ==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 125717139
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:bpnmy64KPsXWlQXCK4yEcAxRtB7GchMFZxGqfqrLsTDasY5as4F+v
 mAbDDrUPvjeN2r2f9pwOo6x9BtX65PWx4djT1M+/3tnHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU35pwehBtC5gZlPaES7AeH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m1
 PxDNQwNVR+/q/uczqiFY7V8mc8pI5y+VG8fkikIITDxK98DGMmGaYOaoNhS0XE3m9xEGuvYa
 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnEoojuiF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx36kAd1LT+zQGvhCqlnI61QeWDQtaAXnmveVulGjXuJ2E
 hlBksYphe1onKCxdfH/VRClpH+PvjYHRsFdVeY97Wml1a788wufQG8eQVZpeNEg8cM7WzEu/
 luIhM/yQyxitqWPTnCQ/avSqim9URX5NkcHbC4ACAEDs9/qpdhqigqVF4gzVqmoktfyBDf8h
 SiQqzQzjKkSishN0Lin+VfAgHSnoZ2hohMJ2zg7l1mNtmtRDLNJraTxgbQHxZ6s9Lqkc2Q=
IronPort-HdrOrdr: A9a23:R2jOkqyan+o3YUs5PjXaKrPw6L1zdoMgy1knxilNoHxuH/Bw9v
 re+cjzsCWftN9/Yh4dcLy7VpVoIkmsl6Kdg7NwAV7KZmCP1FdARLsI0WKI+UyCJ8SRzI9gPa
 cLSdkFNDXzZ2IK8PoTNmODYqodKNrsytHWuQ/HpU0dKT2D88tbnn9E4gDwKDwQeCB2QaAXOb
 C7/cR9qz+paR0sH7+G7ilsZZmkmzXT/qiWGCI7Ow==
X-Talos-CUID: =?us-ascii?q?9a23=3ArTCPXmlMvyuoJ0zgdRewJchdBHfXOVzdl2rsI3S?=
 =?us-ascii?q?3NUpwYrOPd3bM6LxvmcU7zg=3D=3D?=
X-Talos-MUID: 9a23:GV5IGAWlEIxgSyzq/BXo3xxaOZdB2JnwVHsDvaUZpsy0HBUlbg==
X-IronPort-AV: E=Sophos;i="6.02,156,1688443200"; 
   d="scan'208";a="125717139"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LcWLH1hH6Uw9bV9W0R6TRKNtUDXSzJHpVHMoCI1HKj5TbJQrR+5Z+PvnG1Z5Ygpsi2TPjzcTG9OUOub7S49Lfo381NNrwLVifBkyPTRIGG2AiXjlvNiaCnC8WvY1vdtOiV8fivK5zgwRC6gusX76AghWl9K/ieXRIND3OfbQLvgJhY30NWw6FRDh5pXpolHl/SJQRIfkdi31EYQkUb73QQTxGOEJGxgcGHvKeHaimJhR6OLCLe2Qc1yr85CjaqE96y6MUrmX31Ad+7PZvl3y4o7WMLq0K4ISunAr0SScbPwJZSaxyt9hCveTJ8TBjM5x5V6XY7t2PUs5ax9S8RyDEg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0+JSiLyydEbaukD5kRGTXd4mxUVTLMmmMm6k8K6qlhc=;
 b=SiHU5IAVCQz8TNvvduFmzITspeawR6BPjxJzrMb1Q0aZ+VgaopJqbj2p1blFwrHVqpdWEqpw077p1cFsKtlLCLsoyC6ehYnrfsN/uLXdq8p/feedXEWCODx4RWk+oHWbYRtbsUG1sy47hDyvJ3heI+dYPi9u1ge1/g3DRrjo/9Dcigffcbs7D/0P/iF+boLGCyPqj7EtA6qN2qF6WGKnmpQYFCdvg52HEer/+txUPuEjwn0b7P2vURJY6sQGDMYF5lSKs2iKdun3ujYGxp3rsvbnDv3OgEpQY89fz02PhNdj+Nr6OSZXiS3VrtyaHVID/GmBdIdJcrX5L0aG6ZDEWA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0+JSiLyydEbaukD5kRGTXd4mxUVTLMmmMm6k8K6qlhc=;
 b=vrk4H8gPeYdnV/Cbx9HwKyi7fgRhz87Yd9bn69JXXTW+Ly53+2nDYqXxTTbNHztBj+c1UQ4eLawwho9RdzAdZH0KLiCfD6PfIrppIqjBZob9INvNBZa8p33ugKrP0RG5gpAoHat6dEd2ByT7xcdjs6uQqlcw4cYaVDdJpKzQfrk=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 18 Sep 2023 18:00:41 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2] x86/shutdown: change default reboot method preference
Message-ID: <ZQh0KXX2yLewO3uV@MacBookPdeRoger>
References: <20230915074347.94712-1-roger.pau@citrix.com>
 <e22af903-cbdf-dfed-8f69-44e5ea05ef8b@suse.com>
 <ZQhoHZvk7tXfGI2g@MacBookPdeRoger>
 <b92b994c-a9cd-10c3-033b-3c1aa752fa8e@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <b92b994c-a9cd-10c3-033b-3c1aa752fa8e@suse.com>
X-ClientProxiedBy: LO4P265CA0107.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2c3::12) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DS7PR03MB5655:EE_
X-MS-Office365-Filtering-Correlation-Id: 35340ce1-6a77-461e-a3cd-08dbb8606bad
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BeXzWkMVE2JOB/lJd6qU6arzUAL7cI5MBle6BTL8ZkoXORrjix7E9uoeK4cmoDk469ylDwJipWbqvX7qBf4XCavOh1Mt/t9+KdENSYwTrdpAjR7SQAGGnQDXJepMKPXvoAFGUiJ7LhpuRjn5vTiSPeYugrtipKy8SzLIE5ZwAhjb6GJxkj1w5pt4KRoMFqG379TMe+Tt1gwDa3xRBKxfVEvJhnH4GwrKbI4nwA31C1o+ybaECTPKLhyd0iTyruKir+oK6Uj1pwcXoXJgRqAJdaIJEZ+b02CHbF7vnd383DaS9fpgedaTKnxCXutVBwi/E8Q0ijlm62tcFSpmRKfDmXRGjE/7Ph+BuBl3o7BP2ojjAtOF39V8PnreVUsG/qpBSHpftNFm0m26eYppfwH3Xv3CzwuiYGYPoJumNstDaL1w1T0VL+pW8E3VD77HuAYgJ5edrkIadOTcgKZ5wWbQHL9os9QIzM7o+WD/dvAEY7gtPQuajTE8jdt9s7sGi+aPUc9+zUurNILBjzzzYNpPFBejt+yx63QXmp0hhWkqiIEo1fOkxVkrw2hudZZ4RirU
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(39860400002)(396003)(366004)(136003)(376002)(346002)(1800799009)(186009)(451199024)(2906002)(66476007)(54906003)(66556008)(66946007)(86362001)(83380400001)(33716001)(478600001)(6666004)(6512007)(6486002)(6506007)(85182001)(8676002)(8936002)(5660300002)(41300700001)(4326008)(6916009)(316002)(9686003)(53546011)(38100700002)(26005)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aGZSeVZOSGpZclF0ZHlsN0taUjVKcXRVOUx0MGx4VUtWZ2N0WkhqTjhPVkVs?=
 =?utf-8?B?bzdKbWtOSXdQMmk5SWdjYkFETlc0aHd4MUdtaFhra0R5NmtkQ1M3dld0eDgx?=
 =?utf-8?B?ck5VcHhnK1JrYm01elpBaFB5U1F1Vkp2a0llVTNWU1RHODEwYVJVVlBBZnZK?=
 =?utf-8?B?SUxPZ2VhcEtiZFZPTElXU25mY3Flc3F1OEVLWmdVVGY0MTZVaHVJYUpVRmFF?=
 =?utf-8?B?V1I3Z1k5cTcvVE9rR3JPZHl5VWZBUXljUHFSYnpaeHUvYjBIb2NubGJURTVR?=
 =?utf-8?B?YjRNMm44dkxsRFF6TWlFSXhzdTRITzhrRVVJWUxTRzdRM2IwZWZPSjEzZ1Q3?=
 =?utf-8?B?clQ5Y3ZlUHk3V3FoT3ZobUkvSkg5eGl5OFBVdU9WUW9mMFBsaGVMbXZTak82?=
 =?utf-8?B?ellwZDFHbHl2YTlaZjZvL0s3SHprRlkyUy9kZU10NHd5dktmUHhwTE5ENjRn?=
 =?utf-8?B?MzkvWnU5Wm9kMStlMTZhandTWEFSVG5Gc2kydXI1aHlBcnRYazNnbXk4aEVM?=
 =?utf-8?B?YTRwdG8zV3pDRjBkSkIrTjdIUGNrUlBTaDJ0UFd1L2N0dXVpWVcxbTJDb3VS?=
 =?utf-8?B?SlhHWTR3MU9rV3RWS0RKd3d4SFZNd1lWTGRMb2s1VzQrcFpHQ29raitnR0h2?=
 =?utf-8?B?UEpHSTdKa29zeUcvVzNHNzgyL1REYmJpbjFSb1cvRmQ2VmpBTEtGSHM2aWxi?=
 =?utf-8?B?K3dwbTh0aGJSek9STmxGOVNGdUU3ekUyMEMrdVVEYnF1QlljVU9LcmtVWGt6?=
 =?utf-8?B?elBuT1VROExWdlV3ZUxTNGN5R1JQeFFqTzE0WTlBbkZLMnVHQlMwUStpN1Rt?=
 =?utf-8?B?bEpmYUExd3h2ZkpKRUsxc3hCaVJtTGh4VkNuNDRhYnZoUEZRTmtMRWgzRHhl?=
 =?utf-8?B?dHNSU3U2M1pyWjF3UkMyMG1xdGluWmFCSTdPUGRlV1VkRko5ZlpPOGtDdm5B?=
 =?utf-8?B?MDNjTHMvb080TkxxRzh4SmN3YmF2WWpJYzNNZHFFTU5yNGowcCsyYXN2RXpx?=
 =?utf-8?B?YWtTMWxxR0xJNE5KbU5KN2pvdkpEeUxSV2U0TUxpQ3oxNU84akRyZmI0WHdS?=
 =?utf-8?B?VHBYUkdsYkpwb3hXRlpWbEhmMjZLOGw4RUVxMjNkM2ZoZlVVaXhzcFBFRVJD?=
 =?utf-8?B?SzJ0cHlSOTltM2NWRmgxblhSa0ZpblpaaWgvRXNyWW5Dc2NPZXpEYmFwL28y?=
 =?utf-8?B?elArc3JaUkh5R0l2NVc0djVqY08zNkZQSXV5R0hLQ3Z1VTZRMXltWkhaWmNU?=
 =?utf-8?B?aUdaV3hMUmduamQ4VjJSSzF2WFU5NmNZT29tQ2ZaZ2piSzZaenhvejZHR2JU?=
 =?utf-8?B?VXd2Z0cxcko0Z0dJV0M0ekovSGNIZ3NYRzFpa0xjam5IaXdsNWsrZUdaQ25D?=
 =?utf-8?B?NmNPWlpHckNZS0l6akVFcWpqbFBROGRaQXQ3Y1ZCZlFjVndNQjA4QnRueHU3?=
 =?utf-8?B?SHdpSVRhdDZ3MDdCYUFaNWNNRE02UFBjU1ZwazJjZDVNSWFPT0pjVEZrTXBq?=
 =?utf-8?B?N2U2MWx3bGQvRHcreEl2eHpOekNNb2QrQzJ5WEpncUt6aTBsNnVGTXhPRXhD?=
 =?utf-8?B?RXBUbHByU1pxUzdwUHRYbmRST0FoVVNCMWdIa1F6dlg0U1JLN2tjU25kNnlH?=
 =?utf-8?B?TkpVSWEzQlZLYmJsOFRaYTV2TTFWYzNzQWlVU0tUVWpFNHRrcWVTeUNDT1B2?=
 =?utf-8?B?N3VDVkdzeVRvc09FRDhhZ1hnSHBubWdZTm4zSlhOK0czQTVpOXVpMlNYTmRB?=
 =?utf-8?B?R1VESXVIdCszeHZ5THZ2N3hUZHNsaVNsT3ZQQW5XR0tKVDJXZGRYbFp3V2RT?=
 =?utf-8?B?NnNEN0FOeWNPVENqUCtJQ1RCWjFnc2t3UUhuSlpBYjU1YmJBcUdyRlpvZzhz?=
 =?utf-8?B?eUdCVUJyeE43dG84QnhheURWeno0eDRpdDROSXJjNXZZTTh3MHludm1ReHRt?=
 =?utf-8?B?ZDF2WjZTejh5cTllMTcrd1dKL1FoRjB1WGlQK045SGNoQytFb0xiQTMyelZU?=
 =?utf-8?B?V01MTHduaXZiOVltekJlKzlPYk5SZnY1aStpNndlcW1Hd01Td0tCc0NCZDlq?=
 =?utf-8?B?OWNKTzdKbG9qcWpaekFGQmNqK1picU9lRHhHR0FjRktEckpIcGtINjduZmo0?=
 =?utf-8?Q?7C/n8frXawKVqF1p3mDk1xZmg?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	QuWOl7/FqACFC/5q54NHH/wK41wkClmKEDuSwJgWYo4duN+ve7fh8j1UKn4+NEbq05WF7JZFCBVY70pQ6l3oWmBZStuDgeF+ZRllAZBAUXB+WqoxhtMvdp6zSsGlcgQUpCm+fKM8OpeSGYZnpnUdFBdTZu4QywWVvpFhQSkfQZZBYonM941AF1SN6SjDNx3glQPdfqkb6AFk8aS20e4c+3o1QyDAHpSrrVHKCzoL3lDNqmvlCT4pIkm2RKgqYXcaTZAqs8FjxgTZ9eyRPmw+DZxz3pL0POLtUP1y1bNsp72ZNNnbSNueZFNNG6IsylrQVQud4GU0DLQxD5BHzHq7rZ9+V6BpGPrmynEd3rXmhVd0BuQbaAMks8kkigNllauHZ6e6Kv/o0txaLTMVrmD1Y4OMCZ6p6HEJ9zb1KUmUhvcf4gnHKOR/hG8Wu0ahc/vJTLP2fa0JO/p5XEX6tlN3lcKv+2cgESCqwzFkbZKNgGUoTw1dzWF9X6jaBTVSzO1FQnKDVWcZpNUfnmy8oCw+d+QuPdouYY/vMZ0YFZ/wFlYG6HSS+Zy8P82HFh/YDik4RMzyA5DVVspiA3mauxhMTINntUoMcUdv5eqiZqd65IzAZg+fwflkUa1zV30r7kE8KMYbw9uHrSyKBTnRdMGQkt2VAZI/gJoY7yC+3/40LnXZlBFtyRf/tCjSE2tgAzuonHWLmKluU9Iv/JWPB0CasSNY5Btxq8Ji+s12xkpsAuCizH330KYMqWmaw9CQpkgLpVH/6aRY7ODB7OPFXVeszaU3eMyU+/xXdIFYM4ymZrSsuR3RlGvIg9wyxkFUy9Ny
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 35340ce1-6a77-461e-a3cd-08dbb8606bad
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2023 16:00:46.8604
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: RXdcl2PWLuYrUwcBpQoCcISbxy0FucTmWMj/+4qADDMPmRJ/EvoG176UvMNMejC7QXKlXmLzxqjhQ8RpUpJQ8g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5655

On Mon, Sep 18, 2023 at 05:44:47PM +0200, Jan Beulich wrote:
> On 18.09.2023 17:09, Roger Pau Monné wrote:
> > On Mon, Sep 18, 2023 at 02:26:51PM +0200, Jan Beulich wrote:
> >> On 15.09.2023 09:43, Roger Pau Monne wrote:
> >>> The current logic to chose the preferred reboot method is based on the mode Xen
> >>> has been booted into, so if the box is booted from UEFI, the preferred reboot
> >>> method will be to use the ResetSystem() run time service call.
> >>>
> >>> However, that method seems to be widely untested, and quite often leads to a
> >>> result similar to:
> >>>
> >>> Hardware Dom0 shutdown: rebooting machine
> >>> ----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
> >>> CPU:    0
> >>> RIP:    e008:[<0000000000000017>] 0000000000000017
> >>> RFLAGS: 0000000000010202   CONTEXT: hypervisor
> >>> [...]
> >>> Xen call trace:
> >>>    [<0000000000000017>] R 0000000000000017
> >>>    [<ffff83207eff7b50>] S ffff83207eff7b50
> >>>    [<ffff82d0403525aa>] F machine_restart+0x1da/0x261
> >>>    [<ffff82d04035263c>] F apic_wait_icr_idle+0/0x37
> >>>    [<ffff82d040233689>] F smp_call_function_interrupt+0xc7/0xcb
> >>>    [<ffff82d040352f05>] F call_function_interrupt+0x20/0x34
> >>>    [<ffff82d04033b0d5>] F do_IRQ+0x150/0x6f3
> >>>    [<ffff82d0402018c2>] F common_interrupt+0x132/0x140
> >>>    [<ffff82d040283d33>] F arch/x86/acpi/cpu_idle.c#acpi_idle_do_entry+0x113/0x129
> >>>    [<ffff82d04028436c>] F arch/x86/acpi/cpu_idle.c#acpi_processor_idle+0x3eb/0x5f7
> >>>    [<ffff82d04032a549>] F arch/x86/domain.c#idle_loop+0xec/0xee
> >>>
> >>> ****************************************
> >>> Panic on CPU 0:
> >>> FATAL TRAP: vector = 6 (invalid opcode)
> >>> ****************************************
> >>>
> >>> Which in most cases does lead to a reboot, however that's unreliable.
> >>>
> >>> Change the default reboot preference to prefer ACPI over UEFI if available and
> >>> not in reduced hardware mode.
> >>>
> >>> This is in line to what Linux does, so it's unlikely to cause issues on current
> >>> and future hardware, since there's a much higher chance of vendors testing
> >>> hardware with Linux rather than Xen.
> >>
> >> I certainly appreciate this as a goal. However, ...
> >>
> >>> Add a special case for one Acer model that does require being rebooted using
> >>> ResetSystem().  See Linux commit 0082517fa4bce for rationale.
> >>
> >> ... this is precisely what I'd like to avoid: Needing workarounds on spec-
> >> conforming systems.
> > 
> > I wouldn't call that platform spec-conforming when ACPI reboot doesn't
> > work reliably on it either.  I haven't been able to find a wording on
> > the UEFI specification that mandates using ResetSystem() in order to
> > reset the platform.  I've only found this wording:
> > 
> > "... then the UEFI OS Loader has taken control of the platform, and
> > EFI will not regain control of the system until the platform is reset.
> > One method of resetting the platform is through the EFI Runtime
> > Service ResetSystem()."
> > 
> > And this reads to me as a mere indication that one option is to use
> > ResetSystem(), but that there are likely other platform specific reset
> > methods that are suitable to be used for OSes and still be compliant
> > with the UEFI spec.
> 
> See my reference to ia64.

Right, I understand that on ia64 things might have been different, due
to the platform lacking any other reboot method, but I don't see how
this applies to x86 where there are other reboot methods.

> With ACPI_FADT_RESET_REGISTER not set, I don't
> think there would have been any other non-custom reboot method there. So
> while perhaps not mandated, it's still the designated abstraction layer.

Again the spec doesn't mention that ResetSystem() must be used, so
while it would make sense if it was reliable, it clearly isn't.  In
which case resorting to the more reliable method should always be
preferred, specially if the spec is so lax as to call ResetSystem()
"One method of resetting the platform".

We should also take into account that vendors are much more likely to
test new hardware with Linux rather than Xen, and hence it's low
probability that the default Linux reboot method doesn't work on a
platform, because that would hurt the vendor.

> >>> --- a/xen/arch/x86/shutdown.c
> >>> +++ b/xen/arch/x86/shutdown.c
> >>> @@ -150,19 +150,20 @@ static void default_reboot_type(void)
> >>>  
> >>>      if ( xen_guest )
> >>>          reboot_type = BOOT_XEN;
> >>> +    else if ( !acpi_disabled && !acpi_gbl_reduced_hardware )
> >>> +        reboot_type = BOOT_ACPI;
> >>>      else if ( efi_enabled(EFI_RS) )
> >>>          reboot_type = BOOT_EFI;
> >>> -    else if ( acpi_disabled )
> >>> -        reboot_type = BOOT_KBD;
> >>>      else
> >>> -        reboot_type = BOOT_ACPI;
> >>> +        reboot_type = BOOT_KBD;
> >>>  }
> >>>  
> >>>  static int __init cf_check override_reboot(const struct dmi_system_id *d)
> >>>  {
> >>>      enum reboot_type type = (long)d->driver_data;
> >>>  
> >>> -    if ( type == BOOT_ACPI && acpi_disabled )
> >>> +    if ( (type == BOOT_ACPI && acpi_disabled) ||
> >>> +         (type == BOOT_EFI && !efi_enabled(EFI_RS)) )
> >>>          type = BOOT_KBD;
> >>
> >> I guess I don't follow this adjustment: Why would we fall back to KBD
> >> first thing? Wouldn't it make sense to try ACPI first if EFI cannot
> >> be used?
> > 
> > This is IMO a weird corner case, we have a explicit request to use one
> > reboot method, but we cannot do so because the component is disabled.
> > I've assumed that falling back to KBD was the safest option.
> > 
> > For example if we have to explicitly reboot using UEFI it's likely
> > because ACPI (the proposed default method) is not suitable, and hence
> > falling back to ACPI here won't help.
> 
> Perhaps, but falling back to KBD isn't necessarily going to work either.
> And it might well be that on said Acer no reboot method would actually
> yield consistent behavior, except for ResetSystem(). The fallback logic
> here as well as that in machine_restart() is all based on guesswork
> anyway.

Indeed, hence it seemed a suitable and less risky option to fallback
to KBD in both cases.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 16:49:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 16:49:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604141.941365 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiHQm-00024U-24; Mon, 18 Sep 2023 16:49:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604141.941365; Mon, 18 Sep 2023 16:49:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiHQl-00024N-VA; Mon, 18 Sep 2023 16:49:03 +0000
Received: by outflank-mailman (input) for mailman id 604141;
 Mon, 18 Sep 2023 16:49:02 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiHQk-00024D-JX; Mon, 18 Sep 2023 16:49:02 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiHQk-0006u6-9z; Mon, 18 Sep 2023 16:49:02 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiHQj-000347-Py; Mon, 18 Sep 2023 16:49:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiHQj-0002qc-PY; Mon, 18 Sep 2023 16:49:01 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=zcMNLN3QTxKDV3IHQ5WXFzn5Mm6/Phi/SvYL003ASf4=; b=OKTMW0+oRtD/6AI5RogaC5RWaA
	FKkYYi6Nfo9QU8ryFkxPZP5GHNSey459CpeKMHpovYXwa3MKJ/pMjMspyAKXsm5Y0sTSEFG7uDmzN
	u1yz53Q9UZyhvOgIBDswZKmO1Z+A0oUWdChdivh6VDZ/ZVpqmo/lfo3PqSH7b6ptdlVo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183030-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183030: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
X-Osstest-Versions-That:
    xen=290f82375d828ef93f831a5ef028f1283aa1ea47
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 18 Sep 2023 16:49:01 +0000

flight 183030 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183030/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273
baseline version:
 xen                  290f82375d828ef93f831a5ef028f1283aa1ea47

Last test of basis   183011  2023-09-15 22:01:58 Z    2 days
Testing same since   183030  2023-09-18 14:02:00 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Federico Serafini <federico.serafini@bugseng.com>
  George Dunlap <george.dunlap@cloud.com>
  Jan Beulich <jbeulich@suse.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   290f82375d..2ea38251eb  2ea38251eb67639be7aa9d7b64084b1be0230273 -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 16:54:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 16:54:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604148.941375 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiHVf-0003Xt-Ja; Mon, 18 Sep 2023 16:54:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604148.941375; Mon, 18 Sep 2023 16:54:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiHVf-0003Xm-H4; Mon, 18 Sep 2023 16:54:07 +0000
Received: by outflank-mailman (input) for mailman id 604148;
 Mon, 18 Sep 2023 16:54:05 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fCDX=FC=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qiHVd-0003Xe-M8
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 16:54:05 +0000
Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com
 [2a00:1450:4864:20::42a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f8fd1386-5643-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 18:54:03 +0200 (CEST)
Received: by mail-wr1-x42a.google.com with SMTP id
 ffacd0b85a97d-31ff1f3cde5so3320079f8f.2
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 09:54:03 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (default-46-102-197-194.interdsl.co.uk. [46.102.197.194])
 by smtp.gmail.com with ESMTPSA id
 j5-20020a5d6045000000b0032008f99216sm6376269wrt.96.2023.09.18.09.54.02
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 09:54:02 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f8fd1386-5643-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695056043; x=1695660843; darn=lists.xenproject.org;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date:from:to
         :cc:subject:date:message-id:reply-to;
        bh=s7yqEkZbpgMkxgWhqF/6axGdM3IiKqD4/BtizMbfhzY=;
        b=Bz4UsMkC1nZDxnf/fInWIRSIUh4SqfIrLGrCeqmYDNGw7PCkrCXk5DjZMv3zjyvh3t
         ocV8K1kuCuYlcfIQhRftJ5lhHSNVGowpwdC8ZOWSm0UHFfho3cMjfCpb2TWuWC5orCEB
         zFad/iYmO+kMYRXliHFEJNc/2P8HfRlhMnaD0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695056043; x=1695660843;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=s7yqEkZbpgMkxgWhqF/6axGdM3IiKqD4/BtizMbfhzY=;
        b=LCtd2nJdZRZVra1BA4UAldwsup+YEh9nwbTRk28IEQdBVh0TQpAB2ilbKTFzMbawdu
         VHuH0f0rAT8mMSJ9qjRbdrXasM3wX011ZgZOVbVVkPpO6XBTy6Fta6LOSTRToISajH3F
         8uyEpeb3cGT2nz5q+fIzWRktRKn9b3n/jAV+M6TrsPx6NLaJ2uGLanc7EwrDMvmpTzdw
         RSKsRoUDdW4Ca/lEAJqMYBXFzrf15bHJOlsaFZX57zP+8+rofBCzinkzJVzDxQhftKUR
         E5w0RUY6nMaOM1AzDVM6X5ubUuoGLORhyFJ/bavuySSXdf74p749YABL0iyR/o/K5Vdq
         cupQ==
X-Gm-Message-State: AOJu0YwLRL9SkTBJFlQuIOVHVyzMWH8d+DxyQbK238ZxTPL3n5xBliY/
	y2jbwJc7unoerJtJ5Z/px5+jUA==
X-Google-Smtp-Source: AGHT+IExmRNfQei7uhB1yd8QzggWHbkw7XRdbTXTJ6L/PyHhRHE3Mj2HNrFy8IEw6qyIDdHPnjdVdw==
X-Received: by 2002:adf:f741:0:b0:317:f714:3be6 with SMTP id z1-20020adff741000000b00317f7143be6mr8027624wrp.61.1695056043102;
        Mon, 18 Sep 2023 09:54:03 -0700 (PDT)
Date: Mon, 18 Sep 2023 17:24:16 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, 
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, Jan Beulich <jbeulich@suse.com>, 
	George Dunlap <george.dunlap@cloud.com>
Subject: Re: [XEN PATCH v2 0/5] python: Use setuptools instead of the
 deprecated distutils
Message-ID: <dgiwbuxtmdu6tn4u3pz52pzqrtm7dsxkqtkdoynskoyrsppfs4@grjqnaqowydd>
References: <cover.1694450145.git.javi.merino@cloud.com>
 <06fbfb18-cc1e-4f73-bdf7-8b2be1f92de5@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <06fbfb18-cc1e-4f73-bdf7-8b2be1f92de5@citrix.com>

On Tue, Sep 12, 2023 at 08:49:04AM +0100, Andrew Cooper wrote:
> On 11/09/2023 5:50 pm, Javi Merino wrote:
> > This series picks up Marek's v1 from
> > https://lore.kernel.org/xen-devel/20230316171634.320626-1-marmarek@invisiblethingslab.com/
> > Changes since v1:
> >   - Update all containers to have setuptools, as python 3.12 depecrates distutils in favour of setuptools
> >   - Keep python2's support by falling back to distutils if setuptools is not installed
> >   - Drop the commit about raising the baseline requirement for python, as we keep supporting python2
> >
> > Javi Merino (2):
> >   automation: add python3's setuptools to containers
> >   README: update to remove old note about the build system's python
> >     expectation
> >
> > Marek Marczykowski-Górecki (3):
> >   tools: convert setup.py to use setuptools
> >   tools: don't use distutils in configure nor Makefile
> >   tools: regenerate configure
> 
> Two general notes.
> 
> First, because you've (re)arranged and posted this series, you need to
> add your own Signed-off-by line to all patches, even unmodified ones
> Marek's that you've included.  SoB needs to be from everyone involved in
> handling the patch.

Sure.

> Second, patch 4 should be dropped, and a note put in patch 2 to the
> committer, who will use autoconf 2.69 and have a far far smaller delta
> to include.

I have regenerated it with 2.69 and the diff for tools/configure is
reduced to:

 tools/configure | 52 ++++++++++++++++++++--------------------------------
 1 file changed, 20 insertions(+), 32 deletions(-)

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 17:27:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 17:27:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604154.941386 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiI1q-0000IW-2c; Mon, 18 Sep 2023 17:27:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604154.941386; Mon, 18 Sep 2023 17:27:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiI1q-0000IP-02; Mon, 18 Sep 2023 17:27:22 +0000
Received: by outflank-mailman (input) for mailman id 604154;
 Mon, 18 Sep 2023 17:27:21 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=D6qG=FC=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qiI1p-0000IE-39
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 17:27:21 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9bfb9e38-5648-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 19:27:16 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 61326828563B;
 Mon, 18 Sep 2023 12:27:14 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id YszbF0qGjcGP; Mon, 18 Sep 2023 12:27:13 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 912E58285708;
 Mon, 18 Sep 2023 12:27:13 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id bfHTCTc1wiXn; Mon, 18 Sep 2023 12:27:13 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id AD494828563B;
 Mon, 18 Sep 2023 12:27:12 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9bfb9e38-5648-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 912E58285708
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695058033; bh=sUVH4tDCN4+gu6lquUx2ptWAO9cS/I0muY3URWeoBJY=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=YOzTi3k9f8l+bNqt614JJzGOVh0XrGR95NO2U/RjyZvRTU71F06GZIbGR2AUXbEBm
	 fGe4hNZAYmTHrrdEZ4CBmoewSX2YMWwsVIfdHwhie8uiZQXWlpy7TQj17a1yPw3cwK
	 KXs1IDqON0Fzz6/GKu87Ut5idDsTVdgv0RvzRxgM=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <daaff015-6da1-8daa-d8b3-3618c89bc799@raptorengineering.com>
Date: Mon, 18 Sep 2023 12:27:12 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v6 0/4] ppc: Enable full Xen build
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
References: <cover.1694717278.git.sanastasio@raptorengineering.com>
 <d3f04552-28d3-8745-3def-b7c341f8b76b@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <d3f04552-28d3-8745-3def-b7c341f8b76b@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/18/23 8:19 AM, Jan Beulich wrote:
> On 14.09.2023 21:03, Shawn Anastasio wrote:
>> Shawn Anastasio (4):
>>   xen/ppc: Implement bitops.h
>>   xen/ppc: Define minimal stub headers required for full build
> 
> Compilation fails after applying this.
> 
>>   xen/ppc: Add stub function and symbol definitions
> 
> Continuing nevertheless, linking fails after this.
> 
>>   xen/ppc: Enable full Xen build
> 
> Things build okay for me when the full series is applied. Generally we
> wouldn't deliberately break the build between any two patches; doing so
> may be okay here (except I guest CI's build-each-commit would be upset),
> but I'll do so only upon explicit request (and with no-one else objecting).
>

Sorry about that. Going forward I'll take more care to ensure that
partially-applied series still build correctly. For this series though,
if you could make an exception it would be appreciated.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 18:49:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 18:49:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604194.941413 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiJJJ-0004Bn-D8; Mon, 18 Sep 2023 18:49:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604194.941413; Mon, 18 Sep 2023 18:49:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiJJJ-0004Bg-AC; Mon, 18 Sep 2023 18:49:29 +0000
Received: by outflank-mailman (input) for mailman id 604194;
 Mon, 18 Sep 2023 18:49:28 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qiJJI-0004Ba-10
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 18:49:28 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiJJH-0001JQ-S3; Mon, 18 Sep 2023 18:49:27 +0000
Received: from 54-240-197-232.amazon.com ([54.240.197.232]
 helo=[192.168.8.227]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiJJH-0005n1-Ls; Mon, 18 Sep 2023 18:49:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:Cc:
	References:To:Subject:MIME-Version:Date:Message-ID;
	bh=p9vVfqJHFuAioEy89TQKyQ3bQ+M/DIoo9EiQsLNSmbk=; b=GU15G+IHDF5t6cne96a5/CHX/3
	ocG5emjaQSPNkNBx6HWVrEAOYlh/fcnStr2W3IAC7z56AQbqoeK6d9X8DR2JsWB3LnXjRiDN4wYzH
	IpfdAip3RZAGRaZxGLTVirk/MARtnoBlu3WZiCOdYyd96RtdAwtYI46f4zKOD6tKvSxo=;
Message-ID: <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
Date: Mon, 18 Sep 2023 19:49:26 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: xl dmesg buffer too small for Xen 4.18?
Content-Language: en-GB
To: Chuck Zmudzinski <brchuckz@netscape.net>
References: <b20bdc7e-4c07-4bde-b206-4142310211d4.ref@netscape.net>
 <b20bdc7e-4c07-4bde-b206-4142310211d4@netscape.net>
 <9baf6bec-49c6-474b-a5e3-5f0473aaffc7@netscape.net>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <9baf6bec-49c6-474b-a5e3-5f0473aaffc7@netscape.net>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

(+Roger and moving to xen-devel)

Hi,

On 18/09/2023 19:17, Chuck Zmudzinski wrote:
> On 9/18/2023 9:00 AM, Chuck Zmudzinski wrote:
>> Hello,
>>
>> I tested Xen 4.18~rc0 on Alma Linux 9 and my first tests indicate it works fine for starting the guests I manage but I notice that immediately after boot and with only dom0 running on the system, I get:
>>
>> [user@Malmalinux ~]$ sudo xl dmesg
>> 00bee72000-00000bee72fff type=7 attr=000000000000000f
>> (XEN)  00000bee73000-00000bef49fff type=4 attr=000000000000000f
>> (XEN)  00000bef4a000-00000bef4bfff type=7 attr=000000000000000f
>> (XEN)  00000bef4c000-00000befbafff type=4 attr=000000000000000f
>> (XEN)  00000befbb000-00000befbbfff type=7 attr=000000000000000f
>> ...
>>
>> I have noticed the buffer fills up quickly on earlier Xen versions, but never have I seen it fill up during boot and with only dom0 running.
>>
>> Can increasing the buffer fix this? How would one do that?
>>
>> Thanks
>>
> 
> I see the setting is the command line option conring_size:
> 
> https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#conring_size
> 
> The default is 16k, I tried 48k and that was big enough to capture all the messages at boot for 4.18 rc0. This is probably not an issue if the release candidate is being more verbose than the actual release will be. But if the release is still this verbose, maybe the default of 16k should be increased.

Thanks for the report. This remind me the series [1] from Roger which 
tries to increase the default size to 32K. @Roger, I am wondering if we 
should revive it?

Cheers,

[1] 
https://lore.kernel.org/xen-devel/20220630082330.82706-1-roger.pau@citrix.com/

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 19:26:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 19:26:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604200.941422 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiJt3-0001Xw-3L; Mon, 18 Sep 2023 19:26:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604200.941422; Mon, 18 Sep 2023 19:26:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiJt3-0001Xp-0d; Mon, 18 Sep 2023 19:26:25 +0000
Received: by outflank-mailman (input) for mailman id 604200;
 Mon, 18 Sep 2023 19:26:24 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qiJt2-0001Xj-Lz
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 19:26:24 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiJt1-00029P-Vf; Mon, 18 Sep 2023 19:26:23 +0000
Received: from 54-240-197-232.amazon.com ([54.240.197.232]
 helo=[192.168.8.227]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiJt1-0007Qy-Nh; Mon, 18 Sep 2023 19:26:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=fdZIBfz6j9lyIDWp9GZj18DP09PMiRNEjqgzevfqqr0=; b=d/lh/uXI8wtTYiWISVq5s+MN0d
	fv4JG5fQAn0bA/QPm+m5cjz0fvLGFMxQu9dGwVvvWFiaQxOpue1wFURTqSa66nL8D1TUabB3m9xV+
	jhH3X9FzkC4ubh+cdQSKnng+SK7piY7vXNr1EThhyUV1noWsIRdrgcxKYoW7NsNlfeYc=;
Message-ID: <561f8b9d-3877-4251-8cf7-7cdf313254bb@xen.org>
Date: Mon, 18 Sep 2023 20:26:21 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: RFC: arm64: Handling reserved memory nodes
Content-Language: en-GB
To: Leo Yan <leo.yan@linaro.org>
Cc: xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Henry Wang
 <Henry.Wang@arm.com>, Penny Zheng <penny.zheng@arm.com>
References: <20230914081607.GA1400758@leoy-huanghe.lan>
 <23a0185e-428d-496b-96b6-d5082800bfd4@xen.org>
 <20230916081541.GA3291774@leoy-huanghe.lan>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230916081541.GA3291774@leoy-huanghe.lan>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 16/09/2023 09:16, Leo Yan wrote:
> Hi Julien,

Hi Leo,

> On Thu, Sep 14, 2023 at 10:37:05AM +0100, Julien Grall wrote:
> My understanding is the local variable 'xatp' is located in the stack
> and the stack is located in the intermediate physical address
> 0x1_a017_1000. Thus, when copies the structure 'xatp' from Dom0 to the
> Xen hypervisor, the hypervisor detects the IPA is not managed by its
> frame table.

Thanks for the log and the analysis (see below).

> 
> This is because the memory range [00000001a0000000 - 00000001bfffffff]
> is the reserved region so Xen hypervisor doesn't populate this region
> and the frame table doesn't initialize for it.

I agree with this statement however...

> On the other hand,
> this memory range is passed to Dom0 Kernel as _normal_ memory region
> and the kernel allocates pages from this memory region, same with
> other memory regions.

... from my understanding reserved-memory are just normal memory that 
are set aside for a specific purpose. So Xen has to create a 'memory' 
node *and* a 'reserved-memory' region.

With that the kernel is supposed to exclude all the 'reserved-memory' 
from normal usage unless they have the node contains the property 
'reusable'. This was more clear before the binding was converted to YAML 
in [1].

> 
> [...]
> 
>>> ## Fixes
>>>
>>> I think it's wrong to add the reserved memory regions into the DT
>>> binding as normal memory nodes for Dom0 kernel.  On the other hand, we
>>> cannot simply remove these reserved memory regions and don't pass to
>>> Dom0 kernel - we might reserve memory for specific purpose, for example,
>>> ramoops [1] for kernel debugging.
>>>
>>> The right thing to do is to keep these reserved memory nodes to Dom0
>>> kernel.  So one task is to record properties for these reserved memory
>>> node name and properties and pass to Dom0 kernel.
>>>
>>> The difficulty is how we can avoid allocate these reserved memory
>>> regions in Xen hypervisor.  We cannot register the reserved memory
>>> into the boot pages, otherwise, the reserved memory might be allocated
>>> in the early phase.  But we need to register these pages into the
>>> frame management framework and reserve them in the first place, so
>>> that we can allow Dom0 kernel to use them.  (I checked a bit the static
>>> memory mechanism, seems to me we cannot use it to resolve this issue).
>>
>>  From my understanding reserved region are normal RAM which have been carved
>> out for specific purpose. They may expect different caching policy (e.g.
>> non-cachable).
> 
> Yes, I agree, but we cannot assume the mapping attribution is always
> non-cachable. It can be mapped as normal type, or device type (with and
> different variants, like strong ordered, write-combined, etc).

For clarification, I didn't suggest it would always be cachable. It can 
be anything and I only provided an example (hence the 'e.g.').

> 
>> AFAIK, Xen doesn't have the capability to know the memory
>> attribute (the DT binding only tell whether the region should not mapped.
>> See the property "no-map"), hence why they were excluded from the memory
>> management.
> 
> I think it's right to exclude the reserved memory regions from the
> normal memory management.
> 
> Here the problem is these reserved memory regions are passed as normal
> memory nodes to Dom0 kernel, then Dom0 kernel allocates pages from
> these reserved memory regions.  Apparently, this might lead to conflict,
> e.g. the reserved memory is used by Dom0 kernel, at the meantime the
> memory is used by another purpose (e.g. by MCU in the system).

See above. I think this is correct to pass both 'memory' and 
'reserved-memory'. Now, it is possible that Xen may not create the 
device-tree correctly.

I would suggest to look how Linux is populating the memory and whether 
it actually skipped the regions.

> 
> Here I am a bit confused for "Xen doesn't have the capability to know
> the memory attribute".  I looked into the file arch/arm/guest_walk.c,
> IIUC, it walks through the stage 1's page tables for the virtual
> machine and get the permission for the mapping, we also can get to
> know the mapping attribute, right?

Most of the time, Xen will use the HW to translate the guest virtual 
address to an intermediation physical address. Looking at the 
specification, it looks like that PAR_EL1 will contain the memory 
attribute which I didn't know.

We would then need to read MAIR_EL1 to find the attribute and also the 
memory attribute in the stage-2 to figure out the final memory 
attribute. This is feasible but the Xen ABI mandates that region passed 
to Xen have a specific memory attributes (see the comment at the top of 
xen/include/public/arch-arm.h).

Anyway, in your case, Linux is using the buffer is on the stack. So the 
region must have been mapped with the proper attribute.

> 
> Another question for the attribute for MMIO regions. For mapping MMIO
> regions, prepare_dtb_hwdom() sets the attribute 'p2m_mmio_direct_c'
> for the stage 2, but in the Linux kernel the MMIO's attribute can
> be one of below variants:
> 
> - ioremap(): device type with nGnRE;
> - ioremap_np(): device type with nGnRnE (strong-ordered);
> - ioremap_wc(): normal non-cachable.

The stage-2 memory attribute is used to restrict the final memory 
attribute. In this case, p2m_mmio_direct_c allows the domain to set 
pretty much any memory attribute.

> 
> If Xen hypervisor can handle these MMIO types in stage 2, then we should
> can use the same way to map stage 2 tables for the reserved memory.  A
> difference for the reserved memory is it can be mapped as normal memory
> with cacheable.

I am a bit confused. I read this as you think the region is not mapped 
in the P2M (aka stage-2 page-tables for Arm). But from the logs you 
provided, the regions are already mapped (you have an MFN in hand). So 
to me the error is most likely in how we create the Device-Tree.

> 
>> It would be good to understand why Xen may try to get a reference on the
>> page.
> 
> I think the above log can answer this question.
> 
>> Also, can you find the associated reserved-region and content of the
>> Device-Tree?
> 
> The DT binding is something like (I tweaked a bit for readable):

Just to confirm this is the host device tree, right? If so...

> 
> 	memory@20000000 {
> 		#address-cells = <0x02>;
> 		#size-cells = <0x02>;
> 		device_type = "memory";
> 		reg = <0x00 0x20000000 0x00 0xa0000000>,
>                        <0x01 0xa0000000 0x01 0x60000000>;
> 	};

... you can see the reserved-regions are described in the normal memory. 
In fact...

> 
> 
> 	reserved-memory {
> 		#address-cells = <0x02>;
> 		#size-cells = <0x02>;
> 		ranges;
> 
> 		reserved_mem1 {
> 			reg = <0x00 0x20000000 0x00 0x00010000>;
> 			no-map;
> 		};
> 
> 		reserved_mem2 {
> 			reg = <0x00 0x40000000 0x00 0x20000000>;
> 			no-map;
> 		};
> 
> 		reserved_mem3 {
> 			reg = <0x01 0xa0000000 0x00 0x20000000>;
> 			no-map;
> 		};

... no-map should tell the kernel to not use the memory at all. So I am 
a bit puzzled why it is trying to use it.

I would suggest to check if somehow Linux doesn't understand the 
reserved-memory nodes we wrote.

Cheers,

[1] https://lore.kernel.org/all/20210901091852.479202-6-maxime@cerno.tech/

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 19:26:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 19:26:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604202.941433 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiJtO-0001v5-BH; Mon, 18 Sep 2023 19:26:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604202.941433; Mon, 18 Sep 2023 19:26:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiJtO-0001uy-82; Mon, 18 Sep 2023 19:26:46 +0000
Received: by outflank-mailman (input) for mailman id 604202;
 Mon, 18 Sep 2023 19:26:45 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiJtN-0001ud-Ae; Mon, 18 Sep 2023 19:26:45 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiJtN-00029h-7d; Mon, 18 Sep 2023 19:26:45 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiJtM-0007n8-Rj; Mon, 18 Sep 2023 19:26:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiJtM-0004qp-RL; Mon, 18 Sep 2023 19:26:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=EDLQKvkkOEo9VQTtPuXlQs9BfHnZzMPAvL3d6G4pdLY=; b=whiluMDECSVcodyL6miplhQu0N
	netQ2zB31K3cNVxKJaeokiZiUvaAssx2puhDD0T9Tz8XXpkvHzrNHtwRxbQpArbKg//Ym9hS1zQG0
	rA2GjP5qNPIODH1nGL0dKlDSOX2IGvDd5Mj02px8gOvMOyp5CR244hXdRtuyKqJfwYCY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183031-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183031: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:xen-boot:fail:regression
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b5926c6ecf05c28ee99c6248c42d691ccbf0c315
X-Osstest-Versions-That:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 18 Sep 2023 19:26:44 +0000

flight 183031 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183031/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 183030
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 183030

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  b5926c6ecf05c28ee99c6248c42d691ccbf0c315
baseline version:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273

Last test of basis   183030  2023-09-18 14:02:00 Z    0 days
Testing same since   183031  2023-09-18 17:01:55 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-libvirt                                     fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 3ee6066bcd737756b0990d417d94eddc0b0d2585
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 45f00557350dc7d0756551069803fc49c29184ca
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 694bb0f280fd08a4377e36e32b84b5062def4de2
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 19:29:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 19:29:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604212.941443 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiJvc-0002mv-O1; Mon, 18 Sep 2023 19:29:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604212.941443; Mon, 18 Sep 2023 19:29:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiJvc-0002mo-LI; Mon, 18 Sep 2023 19:29:04 +0000
Received: by outflank-mailman (input) for mailman id 604212;
 Mon, 18 Sep 2023 19:29:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=5AVA=FC=aim.com=brchuckz@srs-se1.protection.inumbo.net>)
 id 1qiJvb-0002me-L4
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 19:29:04 +0000
Received: from sonic312-24.consmr.mail.gq1.yahoo.com
 (sonic312-24.consmr.mail.gq1.yahoo.com [98.137.69.205])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9c123919-5659-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 21:28:58 +0200 (CEST)
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic312.consmr.mail.gq1.yahoo.com with HTTP; Mon, 18 Sep 2023 19:28:55 +0000
Received: by hermes--production-ne1-6cbd549489-vgq2q (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 37c3c06ffad938951c78619d23a59c3a; 
 Mon, 18 Sep 2023 19:28:50 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9c123919-5659-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netscape.net; s=a2048; t=1695065335; bh=ZBSgQAZ92TmyZLCmaW8NNKPPhDYur2cUlrAqYuxTEKU=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From:Subject:Reply-To; b=IAGjqrl5Hx2p6K539MLT8GSakPiWRcOLduHUVLYW1qAOH3AiwoQrZmItooeWUdiiDdR+WZyoJ4juoFBtd9G6RhTutsLDtawgKGBeB0U97FQ1rFIu0gJhQyqdRk/vhdnfRhe0NOQHGuIpjoO7vH2sGyTAHLrp6eBCJ0UhdaZbDYexJ3hejbjsRt2JWGgUBPoMsQ3qpbo/9h7SOej22gxEMzyOzchvVSzLefLwaccDXB3HfBKV0/jq9LuGPJf2I0WLIu65c84+6+IphcZArHHL6Rxvsji6qUiQSI6J3gbFz9HS+whabcfPZ/q2BP5yMiuKKvZguCZvcSWM5X98lvGgpw==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1695065335; bh=5vzRoq44MKYB4tNj9daDAhfNAIuZ/nuUC+Nx+hDpbbm=; h=X-Sonic-MF:Date:Subject:To:From:From:Subject; b=jN4YKt2xRQ1TzKZMcdzkCP+jkjn9QWzTkpGSTcEURizWwfVH2jxADS9jiTMO/RD6KNz8+CR+58n0cJydVs/ngQHd7Zl4O6ULc+TJ61dWkAuHpcapWnDCx0e9RiLWntJRDxLbkbajtrYtqD3OoQPPd4NOiSbk1e6lctE9plPQoQsGbVgMNZMSjfy4YbCakTD9cO7ny1M8EAy77dvI/X6ovsDYz5nhVGxUOUkon9yfr4hiO2AoNSNY0xn/iLOSXAL/qofSmTNkjXPpObKb39PkN6mYDjaj97Gdgv/YSzqviC98R4qUw+zQiVvbB1EhqyoYe6gm5dDRm4SWZLUzj8/51A==
X-YMail-OSG: tSnEX60VM1k7XeSbkU8xPF3ObHJKV6p8H7zz0pDB7VOTAAeZTUBbmme2QPv6_oo
 dysDTIGg8eWNStVZlF20MpnkU_OvzwPJgq2x4IEFfqqcxx5K1Qcw5p7QxctJrzeiq5i18DB7Bjqn
 MxsZ.vgHorlt0XhLFFVrCyOZyEPmRIqey81IA5_tiYhnshbly3iczbe71JNYzKYVoC6G9T6uipbf
 yYPAVCb3tNwvRulc1baj2uym5rPIt34CNRCIOwTBWwtbfLCTpU9vb6HRT5b5xFJiTEvQnsR5mkhU
 EN3pA996ik6E_8z5tUx3THm.dRJn9ttJfapgmqRaN0iyBEWRlOqPaTpIghSupGRGURRFw4zRqPFY
 8dFqT.apnLR9VZli75JV1Tu6UvBiHW_2LB2_rlp._z90a03yzDOTC63xRlkkAMqvkAUfic3feOfI
 k8OWFGUx6zzuErLoYD5zHAVsQCkY_VZKgm7IFPmw9cYedReP1EqCLSXuWQwPomxxIPCNp4MW37_.
 3YGgPEBbqtmiCnYElx9gsiys94jVJluQA3meqTX75Di_oOqpLePkAQieukyDYtltBE63SpXUKaVb
 8DA.6qX6dA6KxQII2YUP1YxzPU.AFsLrdBpPAy5yRgSX06GtJe3yICGecl7kEswwmrRNmVTx5Ik.
 OI9FlBfShqoHkBebmoaJgAQTncOG5p1wpfE40UQtEKw0XkofvrHBAN5VTDdDs32gqlplql2ofuSz
 REnP6nxfwPoWrL9._XLZMwC4E1leCs3mG_HY6NF3TXGovWIlhzSebeWAwQrCnHO1YNCBDmicMV0J
 8iZEVBvg9cjbRgY56488AGkVnvf.UljYvqAUVWa7cTkGDaGMUtDjm9kyhMX97EQpGzlpuzHjI.MZ
 NQzD6PPhjpRVKlIvfnGwC5UQrdDJyCPkSsBpwE4gohP1uacn_xdqYxgyptM6823FQj7hVKDyPwQC
 HzXkU9Q.AP9ctSQ_s0q2H1ZRliGUAv2GtTqCEJGpv1qGeuq.WNmuPZI.Lvc_k4s7mW7WGyMprLF7
 JPSQqoxMrf.o8Hb45Q8ssVYpbQD9YuydvZRdzHphtpOQLesTkkup7saxEpNpNSh8KhwhYXviQCvw
 GY_olVO0iRKIHnQVFxlRTwrz2k_6Wm0rIzqpqHyjwMhTgnB9GCuyqnDbeOy1B6thykXyMHBuIJKl
 ClooUG.ysGODbHSisTAsH2xidT23OJsg4xeFNMNtNEMqF0zNPKKuMUahFP5MXTXuEYDz4EpzrKR5
 dOp4OiagnxxcBmsBMUcJuZGIGTmiY0i3UxmiRftaccPrBRTPJEoT6I2OfokVFmS3Oe54_deGJefE
 4RWmMhbmpjd0_P_wAQzz_4hZmTkRghUff17Dj18aqUcB8I6i_uLJpkjEkVDjp.WhgGCDnN0ytSjn
 15bsjEja47IRou3F5BQEQH8ZiFhNvIoGKzz2nCfnIPKPpxuBenkPojiwcCE0xeyc0gRGWpYP4NEK
 7Yhmzf8TzdfLeCRxQzh7kzI8Bo63MrgqGiXimYAJXoXjG1SbSZCBPPyVj3FEYHZxwnFe_Km6eWtw
 zolCpySkGtJpMD6u8wgYUoQ95HChJBpHoZl2BxmTtlS7jWD3Q_mDCRK42R_XuRy0QmzNJzF7t0ZG
 Yy_fbhisjdiIZNHZqVwOJ5QIKEoixDxHCWcrQ4qCQXFJ.RMaSrIKwa52oiZsQKv15ZoxQZasIm4w
 DTcedCjkJZBTmV0f3h._3cmNE93yflk8k8mbL4nZgbWxQP4D7cwehSbKBKOOnolqopWSSrxfeIw2
 3uGqDledL_dd2ulC8DcrYHwgNyBqVuWSHDhkPCJVcX7hpr_P3_tr0RnmclUkxi2Eywyj7Fb3lqoc
 xflueDTRWbUPQ63Oa44_alQUyqMdn7kHjr3G8Z7Wg4f08ySBwQQxorBHf1PY2XIYzACMFXcRPJko
 KZVsoUuDcIDvjad9Xo2vWCGLCm173A0cUGHTebOjYESvCsGOeRJSR0ZSXWpDkJkasgGbZ.LuZn3o
 Xw9MJTl09LOKuQlySnIK6gxqAiSC63zT3TBfQIYKmJGFrp5Segy2Dfrvpwm28I8Fk219gDUkJDmf
 k9ih_lU2jBfOouvBxfk32nom8KXLGrkC1aPUgG1qU.wK2dIKIopYAN47nu5eSIMmleB6AfadTOEG
 wewP2XFKh1VIJoWVlYtuEchdP79QrzsmzvOVSLMWufh_fa2HnIDxGbDhe0b2vc5UgHZ3thrAUF4T
 3UnIpK4qbvvMlBuPy
X-Sonic-MF: <brchuckz@aim.com>
X-Sonic-ID: 4e57dd28-2cc4-4f72-8202-7c9886aae99e
Message-ID: <09079b5a-a0b3-4184-aef1-14764fa0ea41@netscape.net>
Date: Mon, 18 Sep 2023 15:28:50 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: xl dmesg buffer too small for Xen 4.18?
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
References: <b20bdc7e-4c07-4bde-b206-4142310211d4.ref@netscape.net>
 <b20bdc7e-4c07-4bde-b206-4142310211d4@netscape.net>
 <9baf6bec-49c6-474b-a5e3-5f0473aaffc7@netscape.net>
 <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
From: Chuck Zmudzinski <brchuckz@netscape.net>
In-Reply-To: <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-Mailer: WebService/1.1.21797 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.aol
Content-Length: 1924

On 9/18/2023 2:49 PM, Julien Grall wrote:
> (+Roger and moving to xen-devel)
> 
> Hi,
> 
> On 18/09/2023 19:17, Chuck Zmudzinski wrote:
>> On 9/18/2023 9:00 AM, Chuck Zmudzinski wrote:
>>> Hello,
>>>
>>> I tested Xen 4.18~rc0 on Alma Linux 9 and my first tests indicate it works fine for starting the guests I manage but I notice that immediately after boot and with only dom0 running on the system, I get:
>>>
>>> [user@Malmalinux ~]$ sudo xl dmesg
>>> 00bee72000-00000bee72fff type=7 attr=000000000000000f
>>> (XEN)  00000bee73000-00000bef49fff type=4 attr=000000000000000f
>>> (XEN)  00000bef4a000-00000bef4bfff type=7 attr=000000000000000f
>>> (XEN)  00000bef4c000-00000befbafff type=4 attr=000000000000000f
>>> (XEN)  00000befbb000-00000befbbfff type=7 attr=000000000000000f
>>> ...
>>>
>>> I have noticed the buffer fills up quickly on earlier Xen versions, but never have I seen it fill up during boot and with only dom0 running.
>>>
>>> Can increasing the buffer fix this? How would one do that?
>>>
>>> Thanks
>>>
>> 
>> I see the setting is the command line option conring_size:
>> 
>> https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#conring_size
>> 
>> The default is 16k, I tried 48k and that was big enough to capture all the messages at boot for 4.18 rc0. This is probably not an issue if the release candidate is being more verbose than the actual release will be. But if the release is still this verbose, maybe the default of 16k should be increased.
> 
> Thanks for the report. This remind me the series [1] from Roger which 
> tries to increase the default size to 32K. @Roger, I am wondering if we 
> should revive it?
> 
> Cheers,
> 
> [1] 
> https://lore.kernel.org/xen-devel/20220630082330.82706-1-roger.pau@citrix.com/
> 

I just tested with 24k, and that is also big enough. So 32k would also be good. But the default of 16k appears to be too small for Xen 4.18 rc0 on my machine.


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 20:26:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 20:26:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604222.941456 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiKos-00039N-WE; Mon, 18 Sep 2023 20:26:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604222.941456; Mon, 18 Sep 2023 20:26:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiKos-00039G-T9; Mon, 18 Sep 2023 20:26:10 +0000
Received: by outflank-mailman (input) for mailman id 604222;
 Mon, 18 Sep 2023 20:26:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fCDX=FC=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qiKor-00039A-TJ
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 20:26:09 +0000
Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com
 [2a00:1450:4864:20::42a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 998338dd-5661-11ee-8789-cb3800f73035;
 Mon, 18 Sep 2023 22:26:08 +0200 (CEST)
Received: by mail-wr1-x42a.google.com with SMTP id
 ffacd0b85a97d-31aeef88a55so4420021f8f.2
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 13:26:08 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (cpc92302-cmbg19-2-0-cust781.5-4.cable.virginm.net. [82.1.211.14])
 by smtp.gmail.com with ESMTPSA id
 q2-20020adfea02000000b003143867d2ebsm13596262wrm.63.2023.09.18.13.26.06
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 13:26:07 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 998338dd-5661-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695068768; x=1695673568; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=XPSSM+M1prGuni2WddGvcumFU/9OPfnn8CrXiy79fCk=;
        b=bsL5gF8A9RGeykeNs8movmDYeLJoOQ3z5vmPZmap60VJuv4f5yb3fJ/MQrikenPQBH
         zERlj2wYxULE35k2sgDdgep5Wz3o5Giy+J1YmYHtYq3q/iOYjgvxsIb+5rymNrm9iXWg
         psIoHzsJbbDzl4dQIpUcCDuFz5UvbVznpWzes=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695068768; x=1695673568;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=XPSSM+M1prGuni2WddGvcumFU/9OPfnn8CrXiy79fCk=;
        b=L3rzkVdqTwoj9hR+afvXbODECDtJmx0FdfawPX2lp5GRa5PRv7WvVdOFnQ6PNsDnfO
         R82Y9VU7xMtDGfe9/OXH1jndBIq4opATAVS5izsW60k4XjytKg/65i1YSXWQasFfmkbQ
         hFpqb2eIf+kqNyvfZEpDEeApoxTAEDCQA8PPGfFhRcVXni+2i767KR03lmTV9paA8PTK
         WZBwghKxypFVr4xSNgAIUfQvYhWI3GwKLXK9KHvwdnEyNpRjttIAvcVj2PYD0exet7dV
         fgO593eqSoqVBZLViv1MYZ0NK7KkiC2fqowQ0j3lZ/hwIfg3HyVRBFSvXhig37ddqPtU
         QRiQ==
X-Gm-Message-State: AOJu0YzFOHOG0inYU8WVk2xQw36JiM7kvvtxWy/f85NQDz2Qep8kxnuU
	er6VGojRymhbCk6FvnnRHXiVgA==
X-Google-Smtp-Source: AGHT+IEsv1CXrN9xmDh8xEp6oyWZfxYSBYUneVty1mbOTJkNd3WKriubcUCSpBolICz0DprPHQ0JMw==
X-Received: by 2002:a5d:46c4:0:b0:31d:cf59:8de with SMTP id g4-20020a5d46c4000000b0031dcf5908demr8725976wrs.19.1695068767942;
        Mon, 18 Sep 2023 13:26:07 -0700 (PDT)
Date: Mon, 18 Sep 2023 21:25:57 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, 
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, Jan Beulich <jbeulich@suse.com>, 
	George Dunlap <george.dunlap@cloud.com>, George Dunlap <george.dunlap@citrix.com>, 
	Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, 
	Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH v2 5/5] README: update to remove old note about the
 build system's python expectation
Message-ID: <ni5iorx7nuxelv2ij6whl4rnecyqngaqfmzjf7nrmsraq7wfum@u3jcu4fozw3q>
References: <cover.1694450145.git.javi.merino@cloud.com>
 <2b98d4409f0220c5b24517c5b230344228717eb8.1694450145.git.javi.merino@cloud.com>
 <3bf11a57-d3f0-7dcc-b31e-8ecb598346bc@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <3bf11a57-d3f0-7dcc-b31e-8ecb598346bc@citrix.com>

On Tue, Sep 12, 2023 at 01:25:06PM +0100, Andrew Cooper wrote:
> On 11/09/2023 5:51 pm, Javi Merino wrote:
> > The configure script tests for the availability of python3, python and
> > python2 in that order and sets PYTHON to the first one found in path.
> > You don't need to have a symlink to python.
> 
> I think this was fixed by 5852ca48526316918cd82fba1033a6a5379fbc4c
> "build: fix tools/configure in case only python3 exists"

Indeed! I should have put it in the commit message.

> > Signed-off-by: Javi Merino <javi.merino@cloud.com>
> 
> Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
> 
> I'm happy to fix the commit message on commit.

Thanks!


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 21:03:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 21:03:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604228.941466 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiLOy-0000pZ-NV; Mon, 18 Sep 2023 21:03:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604228.941466; Mon, 18 Sep 2023 21:03:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiLOy-0000pS-K2; Mon, 18 Sep 2023 21:03:28 +0000
Received: by outflank-mailman (input) for mailman id 604228;
 Mon, 18 Sep 2023 21:03:27 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiLOx-0000pI-Jr; Mon, 18 Sep 2023 21:03:27 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiLOx-0004RI-9a; Mon, 18 Sep 2023 21:03:27 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiLOw-0005jT-Q7; Mon, 18 Sep 2023 21:03:26 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiLOw-0002IQ-Pa; Mon, 18 Sep 2023 21:03:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=thO4BqLthwd10zPu5MzxoAyRLhGsEN9TB9FHlTH5IcA=; b=Iu0AT3TD2pXHjo8fLHhGbjuenZ
	Mopi771whs25nwddLgVm8+KdbBOUiV7pGp4c3eQ3Xd6gOQ3Kmg4hnwAfbSyaNqTEYAuVvq1EtIxrC
	pDGFJ4B++3WF67WZhxbuxZE/+jyeONtvK1SB1K7aYBuT5bJSx4k6efsfd41V6Dlu7Dj4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183028-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183028: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=ce9ecca0238b140b88f43859b211c9fdfd8e5b70
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 18 Sep 2023 21:03:26 +0000

flight 183028 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183028/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                ce9ecca0238b140b88f43859b211c9fdfd8e5b70
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   21 days
Failing since        182544  2023-08-28 20:42:13 Z   21 days   40 attempts
Testing same since   183025  2023-09-18 00:13:22 Z    0 days    2 attempts

------------------------------------------------------------
2322 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 282623 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 21:39:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 21:39:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604240.941482 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiLxO-0005f1-FE; Mon, 18 Sep 2023 21:39:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604240.941482; Mon, 18 Sep 2023 21:39:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiLxO-0005eu-Cb; Mon, 18 Sep 2023 21:39:02 +0000
Received: by outflank-mailman (input) for mailman id 604240;
 Mon, 18 Sep 2023 21:39:00 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fCDX=FC=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qiLxM-0005eo-OO
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 21:39:00 +0000
Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com
 [2a00:1450:4864:20::42a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c64989d1-566b-11ee-8789-cb3800f73035;
 Mon, 18 Sep 2023 23:38:58 +0200 (CEST)
Received: by mail-wr1-x42a.google.com with SMTP id
 ffacd0b85a97d-31c5c06e8bbso4821941f8f.1
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 14:38:58 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (cpc92302-cmbg19-2-0-cust781.5-4.cable.virginm.net. [82.1.211.14])
 by smtp.gmail.com with ESMTPSA id
 j3-20020a056000124300b0031f34a395e7sm13749528wrx.45.2023.09.18.14.38.57
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 14:38:57 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c64989d1-566b-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695073138; x=1695677938; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=DCoqJu0Zhun8wrL1924bhTNlpE7X1nLpU44gfzMAISM=;
        b=RvMmjB6Cj+Ao81pkAak8B0OEQVEC4VnqxaN41GPmbuAct6b+JMXLxinVD7R6plfG0h
         lqx3/LOIpGJVOlTyAZHBAheW35eTezsETsZC15AMjcq07Uh5jN1lEzAuzKj/rVK5ZWny
         RPIXi314fN64AKqew0gMUyhNFCTb+AuURP51s=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695073138; x=1695677938;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=DCoqJu0Zhun8wrL1924bhTNlpE7X1nLpU44gfzMAISM=;
        b=Ci6Z9GB2aY2OZhaSmrz9aCzwKBGKnaEMbSEBAN8q52KmuVXRQz8qqyuuYbQiGCL3jH
         bCFePo6aowiC/7jRaw9K2gmVUFHVtrn+bd4CyPVjwdI7/4MGkbzlTEGkgHxBqjuCUUL3
         Kp1qjnV88jPZXnuc0odn+w1fCR9hPsodbyDNghFMuiakxjeNyquOuCHznN2+yMvNj6uc
         ypR+YwJ4qz261iVvS/qSlyiOI85Wtbi01QG8KXkV9vkDF1mG1TSOFxYCnj/4ovA1171Z
         30xisJYg9+o6NNAAcVJuBQL05EQ3Ju5sPLAWa6ZLgc3mO4dT/TC6+PAeJ7ok0A8hnx1O
         Rl3Q==
X-Gm-Message-State: AOJu0YwdCjNNd6ilx94SllRAq96h+qsIXhL4YvXSkZ40bxmMsJmmG3me
	HpkQN84eIg5Fmp3fqAqTNUj5kA==
X-Google-Smtp-Source: AGHT+IFi/HjIgfPjSpOovc4MaL7TytLdQs3LP2zlG1Y3eNU46c3LDe3kt3/rxqZlbPkKqcGN42adjQ==
X-Received: by 2002:adf:ab0c:0:b0:31f:fedd:83ad with SMTP id q12-20020adfab0c000000b0031ffedd83admr6033525wrc.4.1695073137910;
        Mon, 18 Sep 2023 14:38:57 -0700 (PDT)
Date: Mon, 18 Sep 2023 22:38:55 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, 
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, Jan Beulich <jbeulich@suse.com>, 
	George Dunlap <george.dunlap@cloud.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
	Doug Goldstein <cardoe@cardoe.com>, Bertrand.Marquis@arm.com
Subject: Re: [XEN PATCH v2 1/5] automation: add python3's setuptools to
 containers
Message-ID: <mo3j4l5wynbrb5oz7z6edztqqfhwy5m322hjta72vsoxsz7kce@tej5b2jllgu6>
References: <cover.1694450145.git.javi.merino@cloud.com>
 <4f14ea4aeb44c234d9930578614a35234769fa41.1694450145.git.javi.merino@cloud.com>
 <alpine.DEB.2.22.394.2309111805530.1847660@ubuntu-linux-20-04-desktop>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <alpine.DEB.2.22.394.2309111805530.1847660@ubuntu-linux-20-04-desktop>

On Mon, Sep 11, 2023 at 06:15:03PM -0700, Stefano Stabellini wrote:
> On Mon, 11 Sep 2023, Javi Merino wrote:
> > In preparation of dropping python distutils and moving to setuptools,
> > add the python3 setuptools module to the containers that need it.
> > 
> > The centos7 container was building using python2.  Change it to build
> > python scripts using python3.
> > 
> > Debian Stretch is no longer debian oldstable, so move to the archive
> > repositories.
> > 
> > Signed-off-by: Javi Merino <javi.merino@cloud.com>
> > ---
> >  automation/build/alpine/3.18.dockerfile        |  1 +
> >  automation/build/archlinux/current.dockerfile  |  1 +
> >  automation/build/centos/7.dockerfile           |  3 ++-
> >  automation/build/debian/bookworm.dockerfile    |  1 +
> >  automation/build/debian/stretch.dockerfile     | 11 ++++++++++-
> >  automation/build/suse/opensuse-leap.dockerfile |  1 +
> >  automation/build/ubuntu/bionic.dockerfile      |  1 +
> >  automation/build/ubuntu/focal.dockerfile       |  1 +
> >  automation/build/ubuntu/trusty.dockerfile      |  1 +
> >  automation/build/ubuntu/xenial.dockerfile      |  1 +
> 
> We are missing:
> automation/build/alpine/3.18-arm64v8.dockerfile
> automation/build/suse/opensuse-tumbleweed.dockerfile
> automation/build/debian/bookworm-i386.dockerfile
> automation/build/debian/bookworm-arm64v8.dockerfile
> automation/build/debian/stretch-i386.dockerfile

Of course! I wasn't able to test it using CI and I missed a bunch of
failed tests.  I have now added it to all of these.

> automation/build/suse/opensuse-leap.dockerfile

Leap is already in the list.

> automation/build/fedora/29.dockerfile

Why? It already has setuptools.

> automation/build/debian/jessie-i386.dockerfile
> automation/build/debian/jessie.dockerfile

Why? The jessie container is not run in automation.  Arguably, the
docker files should be deleted instead.

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 21:41:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 21:41:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604247.941492 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiM05-000783-3Q; Mon, 18 Sep 2023 21:41:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604247.941492; Mon, 18 Sep 2023 21:41:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiM04-00077f-Va; Mon, 18 Sep 2023 21:41:48 +0000
Received: by outflank-mailman (input) for mailman id 604247;
 Mon, 18 Sep 2023 21:41:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=dTdg=FC=canb.auug.org.au=sfr@srs-se1.protection.inumbo.net>)
 id 1qiM02-00076b-CK
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 21:41:47 +0000
Received: from gandalf.ozlabs.org (mail.ozlabs.org [2404:9400:2221:ea00::3])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 263b017f-566c-11ee-9b0d-b553b5be7939;
 Mon, 18 Sep 2023 23:41:43 +0200 (CEST)
Received: from authenticated.ozlabs.org (localhost [127.0.0.1])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange ECDHE (prime256v1) server-signature RSA-PSS (4096 bits)
 server-digest SHA256) (No client certificate requested)
 by mail.ozlabs.org (Postfix) with ESMTPSA id 4RqJCN1dznz4wd0;
 Tue, 19 Sep 2023 07:41:36 +1000 (AEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 263b017f-566c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canb.auug.org.au;
	s=201702; t=1695073296;
	bh=Vb4eL9CHfhRBJsfJ0QsA45UJHbqU+38DlbUmYxZcS5Q=;
	h=Date:From:To:Cc:Subject:From;
	b=salWIiGxClYMhB8OJT8bjACqDFCVOL8DX6OpgycRUWdkNdnuyouIHGg9V1rOEqLdA
	 lB3Pkfd/pKTEriamMfKah8I2SvP0jCeHKPAcJ+Wk84Ez9/9tBimh10qf38FNqienPo
	 kVXS6uR7LRze4UN72z8vU/z3+u/A7UGooBJqVUKJfmZKYf85jajrpO9Ug9R3ksByRH
	 tfccSwmEEe2IN210tHsKVDFScaVEQm2psATwDAoqOvnEzAufbEhty/gvZ3U4En6EL6
	 i49BqqrUW6pIo+ppvxUWt9wQAk1cijwhr2KsOlBnHImgnHxEpSo0WOzwQO5Erz0vdp
	 VVLJPsOkjr2jQ==
Date: Tue, 19 Sep 2023 07:41:35 +1000
From: Stephen Rothwell <sfr@canb.auug.org.au>
To: Juergen Gross <jgross@suse.com>, Konrad Rzeszutek Wilk
 <konrad.wilk@oracle.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>, Xen Devel
 <xen-devel@lists.xenproject.org>
Cc: Kees Cook <keescook@chromium.org>, Linux Kernel Mailing List
 <linux-kernel@vger.kernel.org>, Linux Next Mailing List
 <linux-next@vger.kernel.org>
Subject: linux-next: duplicate patch in the xen-tip tree
Message-ID: <20230919074135.3e9b06b0@canb.auug.org.au>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="Sig_/+kF1L/j/yNt5jxoz.jnIOrC";
 protocol="application/pgp-signature"; micalg=pgp-sha256

--Sig_/+kF1L/j/yNt5jxoz.jnIOrC
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

Hi all,

The following commit is also in Linus Torvalds' tree as a different commit
(but the same patch):

  603392995417 ("x86/paravirt: Fix tlb_remove_table function callback proto=
type warning")

This is commit

  fcce1c6cb156 ("x86/paravirt: Fix tlb_remove_table function callback proto=
type warning")

in Linus' tree.

--=20
Cheers,
Stephen Rothwell

--Sig_/+kF1L/j/yNt5jxoz.jnIOrC
Content-Type: application/pgp-signature
Content-Description: OpenPGP digital signature

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEENIC96giZ81tWdLgKAVBC80lX0GwFAmUIxA8ACgkQAVBC80lX
0GympAgAm1mO57c/f5RDekcV0a/MNqPpNNpvhkHZqMAezFHrKmY0STuctRsiqv03
Jd55r/qxXVrpmBPC37dawEn+bF9nJb+KgF/K9pVFFwu7AXqjYUEgbMyGu5Ahe3c5
pksjE9fVVfLIzHqj1EhQOwUngZcKUoVBEoaFzifmbj4yyrYWZOuksAtNKWqgpiTc
F4LYqL8TjPHI4qifm8wxCZCmQZ0FlmpJAOJYC+StZmjLG6WVoMU0PVg6x14zODfk
e6KnNC7f25z2JniTiDlziDpaFgnNqbh1dHdBpitZ2HvqoAscQVQaA/SPZzGQvTfh
MqyoXR3BgGQmUXWipC6tdOGHh0RxDg==
=eOiP
-----END PGP SIGNATURE-----

--Sig_/+kF1L/j/yNt5jxoz.jnIOrC--


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 22:07:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 22:07:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604252.941502 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiMOd-0002LD-00; Mon, 18 Sep 2023 22:07:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604252.941502; Mon, 18 Sep 2023 22:07:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiMOc-0002L6-SG; Mon, 18 Sep 2023 22:07:10 +0000
Received: by outflank-mailman (input) for mailman id 604252;
 Mon, 18 Sep 2023 22:07:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fCDX=FC=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qiMOb-0002L0-PK
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 22:07:09 +0000
Received: from mail-wr1-x435.google.com (mail-wr1-x435.google.com
 [2a00:1450:4864:20::435])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b592c5d1-566f-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 00:07:08 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-31f7638be6eso4767668f8f.3
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 15:07:08 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (cpc92302-cmbg19-2-0-cust781.5-4.cable.virginm.net. [82.1.211.14])
 by smtp.gmail.com with ESMTPSA id
 w11-20020a5d608b000000b0031ad5fb5a0fsm5427233wrt.58.2023.09.18.15.07.06
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 15:07:07 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b592c5d1-566f-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695074828; x=1695679628; darn=lists.xenproject.org;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date:from:to
         :cc:subject:date:message-id:reply-to;
        bh=K0eIuqhVudrLNm7EY4JRjnY0fob2JkaWzkDEU9UXOdA=;
        b=HfTWrtKNdnhocE/rS0S3bCBjDaFBwCyEhdbRdiIxG/VzP3e7zQh0h3IZdzG5FY3raD
         ygLztMna+q8dI108ONEeLtL1yMqD/CEQ+vIXhSdI0VWWlyc/7O5jFFFvF63yF0CtNAB0
         1g0ofW2f//CwutJPI3LYlR8DARGlaYSox5M0E=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695074828; x=1695679628;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=K0eIuqhVudrLNm7EY4JRjnY0fob2JkaWzkDEU9UXOdA=;
        b=vDOq/x8TK/g4LR60rDUcWD7eeD9b3VdoW89BLWWczbMSnmfaiDqLhG4ADdxXo85Bep
         IfyTQVtN+hmN/0P2XPSMZBLvHHd7NUaYoow0B5zi08O/4IXTkX/7kDITo7Jg/HYsa9sf
         OwUJBKE1N31ffMVVW5h714+Y8DI0qIQYoVLW1x1XY5OZkmqphldrTh47jmqmV2grTwGn
         dHoyd7wkJsnNteDIQiaiH7V9XebR1PtHSprVpzYhVzWdZpS0BQSzSEEwD/XLWMuFx6G9
         OH6jiMIWWGOTcpGLz7u6S2JxynZmqs8fDrJkOMHdrTJyrdaPH6sFeTQSvq28nNfTwcbm
         eApQ==
X-Gm-Message-State: AOJu0YzlHW3Uq5Vj87434GeeTXv6Mfcl020ganZWhN7LzpWRZie/5P1h
	6Pteo1QvEw0Yrd4OWNbV5jT6VQ==
X-Google-Smtp-Source: AGHT+IFlRChRv/nuAy3zUZ4vfotVIgUnAxWPMMRplUAiaAHOHX9KH/jmPhq3Z2yqbclF4uK5ThARnA==
X-Received: by 2002:a5d:51c9:0:b0:31f:b9ea:76c with SMTP id n9-20020a5d51c9000000b0031fb9ea076cmr8831172wrv.48.1695074827798;
        Mon, 18 Sep 2023 15:07:07 -0700 (PDT)
Date: Mon, 18 Sep 2023 23:07:05 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, 
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, Jan Beulich <jbeulich@suse.com>, 
	George Dunlap <george.dunlap@cloud.com>, Doug Goldstein <cardoe@cardoe.com>, 
	Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [XEN PATCH v2 1/5] automation: add python3's setuptools to
 containers
Message-ID: <tdjaujfa5g3mc4msfvbicqdfofuccveq2stri33bb5f4nbt6uq@gsswahemejvk>
References: <cover.1694450145.git.javi.merino@cloud.com>
 <4f14ea4aeb44c234d9930578614a35234769fa41.1694450145.git.javi.merino@cloud.com>
 <4a98d2d7-457a-020b-c936-d19b772b626e@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <4a98d2d7-457a-020b-c936-d19b772b626e@citrix.com>

On Tue, Sep 12, 2023 at 11:18:42AM +0100, Andrew Cooper wrote:
> On 11/09/2023 5:51 pm, Javi Merino wrote:
> > In preparation of dropping python distutils and moving to setuptools,
> > add the python3 setuptools module to the containers that need it.
> >
> > The centos7 container was building using python2.  Change it to build
> > python scripts using python3.
> >
> > Debian Stretch is no longer debian oldstable, so move to the archive
> > repositories.
> >
> > Signed-off-by: Javi Merino <javi.merino@cloud.com>
> 
> We are not dropping distutils.  We're moving to support both distutils
> and setuptools, because setuptools doesn't support the minimum version
> of python that Xen supports.

Indeed.  I wrote this when the series was about dropping distutils and
forgot to update the commit message when I change it to support both.

> Therefore, it's important to keep some of the containers on distutils
> rather than switching all to setuptools.
> 
> CenOS can stay as is, as can Stretch and probably Bionic/Focal.

I agree for CentOS and Debian. For Ubuntu we have the following containers:
  * 14.04 (trusty)
  * 16.04 (xenial)
  * 18.04 (bionic)
  * 20.04 (focal)

Following the logic of only moving the new ones, I will leave as is
the old ones (trusty, xenial and bionic) and only move focal to
setuptools.

> Any containers with Py3.10 or later definitely need to move, seeing as
> distuils is formally deprecated there
> 
> It's sadly a little too early to make a Py3.12 container, which will
> lack distutils, but we can come back to that in 4.19.

Yes, even python's own 3.12 release candidate still includes it.

  $ podman run --rm -it docker.io/python:3.12-rc-bookworm
  Python 3.12.0rc2 (main, Sep  8 2023, 03:00:59) [GCC 12.2.0] on linux
  Type "help", "copyright", "credits" or "license" for more information.
  >>> import distutils
  >>>

> As Stefano points out, you should refresh at least some of the arm64
> containers too.  RISC-V and PPC aren't set up for tools builds set, so
> they're fine to leave.

I have refreshed the arm64 containers.

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 22:13:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 22:13:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604257.941511 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiMUk-0004Ae-JF; Mon, 18 Sep 2023 22:13:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604257.941511; Mon, 18 Sep 2023 22:13:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiMUk-0004AX-Gl; Mon, 18 Sep 2023 22:13:30 +0000
Received: by outflank-mailman (input) for mailman id 604257;
 Mon, 18 Sep 2023 22:13:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fCDX=FC=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qiMUj-0004AR-N0
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 22:13:29 +0000
Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com
 [2a00:1450:4864:20::32c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 96baf8b0-5670-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 00:13:26 +0200 (CEST)
Received: by mail-wm1-x32c.google.com with SMTP id
 5b1f17b1804b1-403012f27e1so53806485e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 15:13:26 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (cpc92302-cmbg19-2-0-cust781.5-4.cable.virginm.net. [82.1.211.14])
 by smtp.gmail.com with ESMTPSA id
 hn40-20020a05600ca3a800b003fef19bb55csm13447199wmb.34.2023.09.18.15.13.24
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 15:13:25 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 96baf8b0-5670-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695075205; x=1695680005; darn=lists.xenproject.org;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date:from:to
         :cc:subject:date:message-id:reply-to;
        bh=VufNTtcC8A50tBzWsfIQvIez/o1cGVdBWLqR6oYxSyA=;
        b=Ruos52wFaW1MiwuxE4QutMCdyNqqFT7CQ+vIDt8n0s5o+A8VrIS57/2ZYydPMTDurq
         4hq7KrtDinIuEbVXox0ZEMwCNPcQjcic/JUKwbdC7Sp9dacjcDStQktjKu08H+HMRGB8
         MVcJZ7ZBZm/qlOtEBu7/5Pe5mXnVvVJEexbtA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695075205; x=1695680005;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=VufNTtcC8A50tBzWsfIQvIez/o1cGVdBWLqR6oYxSyA=;
        b=RdXiZdozn/kINhCF+sawGNw+mMmax8UZJWRNNLjqH2XewBSDv8wnBOKqsHCjgLXVB/
         PHR/hU0S26wVKDgjiAIRrcbeidjHq4ZV8egC7jgDZ3kIyF6AxjT14k7MrZsAOEIDw5rv
         pFugrneW1J2yaE3llyxrQh1/j7SaR4wYacp/YOVShiXsrQZctzJzSOEjAxNuC9GKVL7T
         M87gkzVb8d5Ntp2OPBjJ/ZVHTnRvtUgI02hnVvx4/3hE5p0oBNS2n1EcEZXzvgARFwNG
         4UwI0MP8Ra/ih6BPzptg09f84KMSLFfL2ugdO2NQZnF4dbMB0i2ZbtkVIU4rhkb/anEg
         QQ0A==
X-Gm-Message-State: AOJu0YyEGULvDKGfDpgudNSSAilLH17eBd79XVOh3/5wD3ehkKwELb8D
	DPwFmoZElMqDupB24acVcx5Qwg==
X-Google-Smtp-Source: AGHT+IFkszWcElams76AAS21twN4oRF11GGiBy2fp1HfCFrGJVMDbluyo0tFm+SouqSMX5p1b27NWA==
X-Received: by 2002:a05:600c:152:b0:400:57d1:4913 with SMTP id w18-20020a05600c015200b0040057d14913mr8988867wmm.9.1695075205535;
        Mon, 18 Sep 2023 15:13:25 -0700 (PDT)
Date: Mon, 18 Sep 2023 23:13:23 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: xen-devel@lists.xenproject.org, 
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, Jan Beulich <jbeulich@suse.com>, 
	George Dunlap <george.dunlap@cloud.com>, Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>
Subject: Re: [XEN PATCH v2 2/5] tools: convert setup.py to use setuptools
Message-ID: <6qtmcuwngc2edlvyrx5zokr7vscktqptirbi7igvvgrgpvm52b@eyzjhtk73y5k>
References: <cover.1694450145.git.javi.merino@cloud.com>
 <9bbf71efc710dc869baf0c5ba926630e81181620.1694450145.git.javi.merino@cloud.com>
 <93ef8146-c8f5-586f-b754-b28b2b733222@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <93ef8146-c8f5-586f-b754-b28b2b733222@citrix.com>

On Tue, Sep 12, 2023 at 11:22:56AM +0100, Andrew Cooper wrote:
> On 11/09/2023 5:51 pm, Javi Merino wrote:
> > From: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> >
> > Python distutils is deprecated and is going to be removed in Python
> > 3.12. Migrate to setuptools.
> > Setuptools in Python 3.11 complains:
> > SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
> > Keep using setup.py anyway to build C extension.
> >
> > Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> 
> Throughout the commit message, s/use/support/ seeing as we're not
> removing distutils.

Ok.

> Next, this needs a SoB from you because you've changed the patch from
> what Marek originally wrote.

Done

> > diff --git a/tools/pygrub/setup.py b/tools/pygrub/setup.py
> > index 502aa4df2d..f9e8feb2e6 100644
> > --- a/tools/pygrub/setup.py
> > +++ b/tools/pygrub/setup.py
> > @@ -1,5 +1,9 @@
> > -from distutils.core import setup, Extension
> > -from distutils.ccompiler import new_compiler
> > +try:
> > +    from setuptools import setup, Extension
> > +except ImportError:
> > +    # distutils was removed in Python 3.12.  If this import fails,
> > +    # install setuptools.
> > +    from distutils.core import setup, Extension
> 
> Finally, this feels a little unnecessary.  How about just:
> 
> # Prefer setuptools, fall back to distutils
> try:
>     from setuptools import setup, Extension
> except ImportError:
>     from distutils.core import setup, Extension

Done


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 22:37:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 22:37:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604264.941521 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiMro-0008H0-FK; Mon, 18 Sep 2023 22:37:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604264.941521; Mon, 18 Sep 2023 22:37:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiMro-0008Gt-Cf; Mon, 18 Sep 2023 22:37:20 +0000
Received: by outflank-mailman (input) for mailman id 604264;
 Mon, 18 Sep 2023 22:37:18 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fCDX=FC=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qiMrm-0008Gn-P2
 for xen-devel@lists.xenproject.org; Mon, 18 Sep 2023 22:37:18 +0000
Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com
 [2a00:1450:4864:20::32e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id eb57aab7-5673-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 00:37:16 +0200 (CEST)
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-404539209ffso52394375e9.0
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 15:37:16 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (cpc92302-cmbg19-2-0-cust781.5-4.cable.virginm.net. [82.1.211.14])
 by smtp.gmail.com with ESMTPSA id
 a4-20020a05600c068400b004042dbb8925sm13367595wmn.38.2023.09.18.15.37.15
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 15:37:15 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: eb57aab7-5673-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695076636; x=1695681436; darn=lists.xenproject.org;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date:from:to
         :cc:subject:date:message-id:reply-to;
        bh=ant0kuog40rEnX+vpk5qCevwiuCrfL/tfIulEhfmYjk=;
        b=WpjXh3f8b2avcpy1vaLmfqdCA0p7NkNOQOrphAPU1cDrRbyXgv9T8XDGxGddMi5WFf
         D+tUKkk2LAzYPMUaA15xHgZfFfDmkceAvBic/3lLn7yZsvEpyPT4wRz8NGly2RtQTa5G
         G6f0ZfO0gntlBHlcB/x4HJwlnUMBWd+DKil10=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695076636; x=1695681436;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=ant0kuog40rEnX+vpk5qCevwiuCrfL/tfIulEhfmYjk=;
        b=UoZXj4efA+qSgRiPPKrLW49EYuAXfrHK9HAvpvfPDBCE9VMZfzo0cnaK8gcFkaprp7
         8G4BYlM4M+/he63skTRBvlyOV7GEjgZFu9URxBc8mPJmSNGKpy2IQNG3ED8158G1g/Un
         U0W2T8aZXLLhewpvMBkLcR9G2Xpu0yhk32H5g5VwIftUuJ8hLSFno7xwknHjYtvMcYic
         +KrUkX8lx0fb5k2W9PEY4f2ufk3ehJBXYlsucShGsuCXH4ypINbjnHNcT0HoNjEltN4z
         +c9doJB46NyxsIgdXLHuxIjNhHO9vwD5W7b65WRsa8Hatec6AceHqAL0gjp1wTchd/ph
         aj5Q==
X-Gm-Message-State: AOJu0Yxj3OZhDlQtL3fPWl+OBV5emoiqpBrBx0qdwNrGIu+7lrkdc31s
	yj0nLN/xDAjGE/H+MJNFSMll/A==
X-Google-Smtp-Source: AGHT+IF7zNjnMuMTzYcqRkerfIeEs6A9Icckhv7vNoLtpDIvhBr+ojfh0kDboDBhBbaFKVFCWXjDxw==
X-Received: by 2002:a1c:721a:0:b0:3fc:92:73d6 with SMTP id n26-20020a1c721a000000b003fc009273d6mr9456055wmc.11.1695076636132;
        Mon, 18 Sep 2023 15:37:16 -0700 (PDT)
Date: Mon, 18 Sep 2023 23:37:14 +0100
From: Javi Merino <javi.merino@cloud.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: 
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>, 
	George Dunlap <george.dunlap@cloud.com>, Wei Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>, 
	Juergen Gross <jgross@suse.com>
Subject: Re: [XEN PATCH v2 3/5] tools: don't use distutils in configure nor
 Makefile
Message-ID: <lxd2k5zl6oojwukqsqpfep2qyjnwutrs2p4q2az5agga2f3ksp@ehes5ohfjxim>
References: <cover.1694450145.git.javi.merino@cloud.com>
 <7b3ecf211f60e0d6f7a4d146b62f9c28eff003f5.1694450145.git.javi.merino@cloud.com>
 <fdf87d82-aa3c-fd2e-6271-848f1a806fb2@citrix.com>
 <ZQBQnGOU/voT6QcV@mail-itl>
 <ac894d3f-c0f2-3928-c8f8-15f87573211f@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ac894d3f-c0f2-3928-c8f8-15f87573211f@citrix.com>

On Tue, Sep 12, 2023 at 01:17:21PM +0100, Andrew Cooper wrote:
> On 12/09/2023 12:50 pm, Marek Marczykowski-Górecki wrote:
> > On Tue, Sep 12, 2023 at 11:38:04AM +0100, Andrew Cooper wrote:
> >> On 11/09/2023 5:51 pm, Javi Merino wrote:
> >>> From: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> >>>
> >>> Python distutils is deprecated and is going to be removed in Python
> >>> 3.12. The distutils.sysconfig is available as sysconfig module in
> >>> stdlib since Python 3.2, so use that directly.
> >>>
> >>> Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> >> This breaks Py2, doesn't it?
> > I was thinking that too, but "sysconfig" module seems to be in Python
> > 2.7 too.

Yes, I forgot to say it.  I tested this with python2 as well as python3.  I did:

  PYTHON=$(which python) ./configure
  make -C tools/pygrub clean && make -C tools/pygrub
  make -C tools/python clean && make -C tools/python

with python being:

  $ python --version
  Python 2.7.18.6

I did the same test with just `./configure` and python3 being:

  $ python3 --version
  Python 3.12.0rc2

> Oh, so it is.  Lovely that the documentation says this...
> 
> It seems to have appeared in Py2.7 and 3.2 together. 
> https://docs.python.org/2.7/library/sysconfig.html
> 
> I notice that README currently says Py2.6.  We can definitely bump that
> to 2.7, and take this patch as-is.

Marek had a patch that bumped the minimum version to 3.2[0] but I
dropped it from the series as we were going to keep the support for python2.

[0] https://lore.kernel.org/xen-devel/20230316171634.320626-4-marmarek@invisiblethingslab.com/

I will bump the minimum version of python to 2.7 in the README.

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 23:19:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 23:19:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604272.941538 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiNW9-0006jf-LS; Mon, 18 Sep 2023 23:19:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604272.941538; Mon, 18 Sep 2023 23:19:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiNW9-0006jY-Hs; Mon, 18 Sep 2023 23:19:01 +0000
Received: by outflank-mailman (input) for mailman id 604272;
 Mon, 18 Sep 2023 23:19:01 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiNW8-0006jO-Vy; Mon, 18 Sep 2023 23:19:00 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiNW8-0007qj-Q9; Mon, 18 Sep 2023 23:19:00 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiNW8-00024t-EF; Mon, 18 Sep 2023 23:19:00 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiNW8-0002z5-Dl; Mon, 18 Sep 2023 23:19:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=FV5ZEiM6Z+lQgkCM9NKkxff22FRLACdbnZmDYChhNx4=; b=WziaBNE72NoyQcZk9to+Nj81SN
	Y+aJVFIoI9nsf84qO8NdGO2DjdMcNSd/akXzYdvB4H6jrXTiOlJnfzZq7ewh3plSbzduuWtXpkAgB
	0Z4EV6dHWjYK0voYyYnDMcQq9osUd1wnnFj1Ch7BL2vkVDbdo+GIPkmq0rpppD8F6NFQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183034-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183034: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:xen-boot:fail:regression
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b5926c6ecf05c28ee99c6248c42d691ccbf0c315
X-Osstest-Versions-That:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 18 Sep 2023 23:19:00 +0000

flight 183034 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183034/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 183030
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 183030

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  b5926c6ecf05c28ee99c6248c42d691ccbf0c315
baseline version:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273

Last test of basis   183030  2023-09-18 14:02:00 Z    0 days
Testing same since   183031  2023-09-18 17:01:55 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-libvirt                                     fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 3ee6066bcd737756b0990d417d94eddc0b0d2585
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 45f00557350dc7d0756551069803fc49c29184ca
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 694bb0f280fd08a4377e36e32b84b5062def4de2
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Mon Sep 18 23:56:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 18 Sep 2023 23:56:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604281.941547 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiO5z-00045W-GG; Mon, 18 Sep 2023 23:56:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604281.941547; Mon, 18 Sep 2023 23:56:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiO5z-00045P-Cx; Mon, 18 Sep 2023 23:56:03 +0000
Received: by outflank-mailman (input) for mailman id 604281;
 Mon, 18 Sep 2023 23:56:03 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiO5y-00045F-VT; Mon, 18 Sep 2023 23:56:02 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiO5y-0000G6-PJ; Mon, 18 Sep 2023 23:56:02 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiO5y-0003Ao-Cu; Mon, 18 Sep 2023 23:56:02 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiO5y-0000KF-CT; Mon, 18 Sep 2023 23:56:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=phK30cuDqpNZN8Ve5ErJGaq8OCLf3KlgW71ve9XCqxY=; b=XRMDL8VznjKZ8Q1+6hc94y0X/e
	ygIPhuxkd1KHsZ9ccIOq8O4bGhCjYhRd2W7ZPEU4N7Wh5iIgcjj3Zw1AqIuDOUR1SMh32Yic0LLnd
	YhGSL8Y04V68r1d9WglNL9Fg3D8//FIK0i+lZu7fbrhLttEHt0C7HPPjcgjD3m0+Yjo0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183037-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183037: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=408e4631359d3e67633b36f6adf9a13a7cc573d3
X-Osstest-Versions-That:
    ovmf=db38c7de64d4dda2bf3cc6e5d764b027b00afa59
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 18 Sep 2023 23:56:02 +0000

flight 183037 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183037/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 408e4631359d3e67633b36f6adf9a13a7cc573d3
baseline version:
 ovmf                 db38c7de64d4dda2bf3cc6e5d764b027b00afa59

Last test of basis   183027  2023-09-18 02:43:21 Z    0 days
Testing same since   183037  2023-09-18 21:41:56 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Taylor Beebe <t@taylorbeebe.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   db38c7de64..408e463135  408e4631359d3e67633b36f6adf9a13a7cc573d3 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 03:26:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 03:26:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604298.941576 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiRNd-000245-Rs; Tue, 19 Sep 2023 03:26:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604298.941576; Tue, 19 Sep 2023 03:26:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiRNd-00023x-NR; Tue, 19 Sep 2023 03:26:29 +0000
Received: by outflank-mailman (input) for mailman id 604298;
 Tue, 19 Sep 2023 03:26:28 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiRNc-00023n-Eu; Tue, 19 Sep 2023 03:26:28 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiRNc-0004eu-9p; Tue, 19 Sep 2023 03:26:28 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiRNb-0001vI-NZ; Tue, 19 Sep 2023 03:26:27 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiRNb-00063L-NB; Tue, 19 Sep 2023 03:26:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=EsbbOe/M3jIN3y/AimQmZXkjx/X47E57geZVuMBmubE=; b=jsKeJInw2y9DpyjeHFNWiDiEz/
	AfVgPA3ymwXn7AOoQ1rwc7mncPIhfp2uXkhIK1NKa2xiAegLITRvHl8SKnSroJvlRzvLgmbsEFAm+
	Oc80RtOwzXrqBQSDXLVRHLZMCfssnct1MaMhDodpTRhEzxAnt2e0JrhOy5A5MieDDujA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183041-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183041: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=cbcf0428e83bbe8314de47207072b3b4f1557dc6
X-Osstest-Versions-That:
    ovmf=408e4631359d3e67633b36f6adf9a13a7cc573d3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 03:26:27 +0000

flight 183041 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183041/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 cbcf0428e83bbe8314de47207072b3b4f1557dc6
baseline version:
 ovmf                 408e4631359d3e67633b36f6adf9a13a7cc573d3

Last test of basis   183037  2023-09-18 21:41:56 Z    0 days
Testing same since   183041  2023-09-19 01:40:54 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ard Biesheuvel <ardb@kernel.org>
  Michael Kubacki <michael.kubacki@microsoft.com>
  Sami Mujawar <sami.mujawar@arm.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   408e463135..cbcf0428e8  cbcf0428e83bbe8314de47207072b3b4f1557dc6 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 03:46:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 03:46:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604308.941592 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiRgy-0004i6-GK; Tue, 19 Sep 2023 03:46:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604308.941592; Tue, 19 Sep 2023 03:46:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiRgy-0004hz-Dn; Tue, 19 Sep 2023 03:46:28 +0000
Received: by outflank-mailman (input) for mailman id 604308;
 Tue, 19 Sep 2023 03:46:26 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiRgw-0004hn-OG; Tue, 19 Sep 2023 03:46:26 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiRgw-00059C-EY; Tue, 19 Sep 2023 03:46:26 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiRgw-0002T8-6R; Tue, 19 Sep 2023 03:46:26 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiRgw-0002qt-5x; Tue, 19 Sep 2023 03:46:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=B1HuEpr9aj7DBtjLoTGkldnN7hZiuYnO31xrxn6mbK8=; b=sy+/3zOtMSDelwJgTWYM6dsQ1w
	dcpYKP8BOVIZpdPtbyrH/j4e6f3taqsUL9DgJUCu9F0wq8WLrAbXeoaIYctPBDM/uvx2yo0aYQmIc
	k6GocVf//7AOseu7R5G6CJAxNQDU921TLjmQli15a34Dg60fM7UkzrOI8848qhTG5FHw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183039-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183039: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:xen-boot:fail:regression
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b5926c6ecf05c28ee99c6248c42d691ccbf0c315
X-Osstest-Versions-That:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 03:46:26 +0000

flight 183039 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183039/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 183030
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 183030

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  b5926c6ecf05c28ee99c6248c42d691ccbf0c315
baseline version:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273

Last test of basis   183030  2023-09-18 14:02:00 Z    0 days
Testing same since   183031  2023-09-18 17:01:55 Z    0 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-libvirt                                     fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 3ee6066bcd737756b0990d417d94eddc0b0d2585
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 45f00557350dc7d0756551069803fc49c29184ca
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 694bb0f280fd08a4377e36e32b84b5062def4de2
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 04:00:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 04:00:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604319.941618 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiRut-0007Sh-TC; Tue, 19 Sep 2023 04:00:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604319.941618; Tue, 19 Sep 2023 04:00:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiRut-0007Sa-QE; Tue, 19 Sep 2023 04:00:51 +0000
Received: by outflank-mailman (input) for mailman id 604319;
 Tue, 19 Sep 2023 04:00:50 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiRus-0007SI-RO; Tue, 19 Sep 2023 04:00:50 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiRus-0005Vj-PA; Tue, 19 Sep 2023 04:00:50 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiRus-0002nZ-FH; Tue, 19 Sep 2023 04:00:50 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiRus-0007zy-Ep; Tue, 19 Sep 2023 04:00:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=EopiF+3l2dvE7dJo7l9THkF0QCQRR5GWUrbZBtMuWxY=; b=Wxihp+Y34Zlpj/MFAPnyZr2dma
	zeMPgn+uD3zMHrOcXL/46yABL/gLgWYN+zJvv4GAg+7iR/C8Pl39rGfAGaCA9Y3ZL189Ic+YPMCQX
	k6RVHzlUDwSZsYSD/RACmN0kLD0sbMtU0itcLwDip8jRj5SRAVaSdzE37X/hTdrAWz+I=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183032-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183032: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
X-Osstest-Versions-That:
    xen=290f82375d828ef93f831a5ef028f1283aa1ea47
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 04:00:50 +0000

flight 183032 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183032/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183026
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183026
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183026
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183026
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183026
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183026
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183026
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183026
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183026
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183026
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183026
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183026
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273
baseline version:
 xen                  290f82375d828ef93f831a5ef028f1283aa1ea47

Last test of basis   183026  2023-09-18 01:52:02 Z    1 days
Testing same since   183032  2023-09-18 17:07:05 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Federico Serafini <federico.serafini@bugseng.com>
  George Dunlap <george.dunlap@cloud.com>
  Jan Beulich <jbeulich@suse.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   290f82375d..2ea38251eb  2ea38251eb67639be7aa9d7b64084b1be0230273 -> master


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 05:39:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 05:39:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604333.941637 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiTRj-0001AZ-Rw; Tue, 19 Sep 2023 05:38:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604333.941637; Tue, 19 Sep 2023 05:38:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiTRj-0001AS-P7; Tue, 19 Sep 2023 05:38:51 +0000
Received: by outflank-mailman (input) for mailman id 604333;
 Tue, 19 Sep 2023 05:38:50 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=cwwf=FD=gmail.com=alistair23@srs-se1.protection.inumbo.net>)
 id 1qiTRi-0001AM-5C
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 05:38:50 +0000
Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com
 [2607:f8b0:4864:20::634])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ccc9f1b1-56ae-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 07:38:46 +0200 (CEST)
Received: by mail-pl1-x634.google.com with SMTP id
 d9443c01a7336-1c572c9c852so12564945ad.2
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 22:38:46 -0700 (PDT)
Received: from toolbox.wdc.com
 (2403-580b-97e8-0-321-6fb2-58f1-a1b1.ip6.aussiebb.net.
 [2403:580b:97e8:0:321:6fb2:58f1:a1b1])
 by smtp.gmail.com with ESMTPSA id
 z4-20020a170902ee0400b001b88da737c6sm3706068plb.54.2023.09.18.22.38.41
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 22:38:43 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ccc9f1b1-56ae-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695101924; x=1695706724; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=rJbB0gVGUy3t9KnX0VZPhoiQSqpeinwYceuzWEOZmpk=;
        b=JWPMD4xoMZVwPRaaiPiYidslkNY3PAYK/sA8nhemx6SCkGM2c5T5U7obf8d/MOCjCW
         WEfSmxGPf6q+dq8JUOSUPUdO+iKppjt6DYduGpgSzfThpR3w8aXa6rJIf2+CtkFwrLrD
         GktaaaLR9inl/10mXkUncNvoCh+nfei3DaWCMRRN7mETHHy/R53sY77Rx340aPxqPqe6
         TkMZ6J3O7L8DoQp2G79BNP+UaA5zs/TF60Ow+M6rNQ/iEHtfEZzQNCgArDgK1mqkbE6r
         bNkdIHc2pVzXhUuKYOQrL8BfTh9tjGQnKFK3eCHxWFdcOe6w778RBoC/vgB92/TN0zBv
         yVWA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695101924; x=1695706724;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=rJbB0gVGUy3t9KnX0VZPhoiQSqpeinwYceuzWEOZmpk=;
        b=XimeyuXDTarueLQ1wE2T7sJHIY0C4T9cgP5twt5H+zSL2HlTUIhOEy7lNUhRkFfxqm
         aJrmO7ScK7966bc5w6BBPTAQztnLD9K1p6cHtseHJQlFuCLnFwlBaAIL3zydxsZeWt/5
         r5Dj9NcquTJTLSV4HZpCwGHLHs58Fo0tNSoiWlwDzlN3Kk8mjthz0zZ+n1qd4XnBTVly
         /3Vxtgw5esz9QeH+qDm+DmJogBL22kdsA7suyPlGv4SC3bNWduQXkG7ani6VssurUDSx
         /2c71faByYtY8d6w9AyoTmCUcv61snfATns7BQT02VWJV+IckcS5k538a6RrvX78Dc1m
         c72Q==
X-Gm-Message-State: AOJu0YwDdXFJpd/3FP1RS1FYV0Tq+xelMwlXC0ikDnqwI8x+9WIPRGRs
	E6Z6iKzpt/HMZEwM6YIb6mYXNdljzYjZ0a9p
X-Google-Smtp-Source: AGHT+IFgz1J+/C5AR3J+ESj8eMEq0Xf+KtFm+akNHeCBCge++mVPUkzlHcIPl+lDI9juJ4w+z/fBCw==
X-Received: by 2002:a17:903:2581:b0:1c4:5de0:4bb with SMTP id jb1-20020a170903258100b001c45de004bbmr5498248plb.36.1695101924357;
        Mon, 18 Sep 2023 22:38:44 -0700 (PDT)
From: Alistair Francis <alistair23@gmail.com>
X-Google-Original-From: Alistair Francis <alistair.francis@wdc.com>
To: xen-devel@lists.xenproject.org
Cc: alistair23@gmail.com,
	Alistair Francis <alistair.francis@wdc.com>
Subject: [PATCH] MAINTAINERS: Remove myself as RISC-V maintainer
Date: Tue, 19 Sep 2023 15:38:33 +1000
Message-ID: <20230919053833.1410609-1-alistair.francis@wdc.com>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

I unfortunately don't have time to be a Xen maintainer, so remove myself
as the maintainer.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
---
 MAINTAINERS | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 0f227a2f5d..22034bf6e3 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -500,7 +500,7 @@ F:	tools/hotplug/Linux/block-drbd-probe
 
 RISCV
 M:	Bob Eshleman <bobbyeshleman@gmail.com>
-M:	Alistair Francis <alistair.francis@wdc.com>
+R:	Alistair Francis <alistair.francis@wdc.com>
 R:	Connor Davis <connojdavis@gmail.com>
 S:	Supported
 F:	config/riscv64.mk
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 05:40:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 05:40:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604338.941647 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiTTJ-0002X7-4s; Tue, 19 Sep 2023 05:40:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604338.941647; Tue, 19 Sep 2023 05:40:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiTTJ-0002X0-28; Tue, 19 Sep 2023 05:40:29 +0000
Received: by outflank-mailman (input) for mailman id 604338;
 Tue, 19 Sep 2023 05:40:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=L0bg=FD=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qiTTH-0002WC-Hw
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 05:40:27 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 07f3d513-56af-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 07:40:25 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-382-vA5vnuYKMPGzn5wULdrNyg-1; Tue, 19 Sep 2023 01:40:20 -0400
Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com
 [10.11.54.7])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 06EC1185A79B;
 Tue, 19 Sep 2023 05:40:20 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 9ECB2140E950;
 Tue, 19 Sep 2023 05:40:19 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 8BE0821E6900; Tue, 19 Sep 2023 07:40:18 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 07f3d513-56af-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695102024;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=eCtoW5YmugRAOgCVYwI8LazpWJuSKfz0/Y0RnlW+RR8=;
	b=QqmIHdaTOR7CpBCeidedeeHXCkayzW3F0FfUOKKwfSKxYySukDxYQu6K033g3Jx1oexMm/
	/VIyS9GRdX/8abLCy5dzghVIfR//oCPSz2j7m0Qn8+8EEFy9bwH+G8uiyna1XG7P2HAqUv
	eooFxoQ3OqTwN1zH1wlNf07fueHuu1U=
X-MC-Unique: vA5vnuYKMPGzn5wULdrNyg-1
From: Markus Armbruster <armbru@redhat.com>
To: Eric Blake <eblake@redhat.com>
Cc: qemu-devel@nongnu.org,  kwolf@redhat.com,  hreitz@redhat.com,
  vsementsov@yandex-team.ru,  jsnow@redhat.com,  idryomov@gmail.com,
  pl@kamp.de,  sw@weilnetz.de,  sstabellini@kernel.org,
  anthony.perard@citrix.com,  paul@xen.org,  pbonzini@redhat.com,
  marcandre.lureau@redhat.com,  berrange@redhat.com,  thuth@redhat.com,
  philmd@linaro.org,  stefanha@redhat.com,  fam@euphon.net,
  quintela@redhat.com,  peterx@redhat.com,  leobras@redhat.com,
  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org,
  peter.maydell@linaro.org
Subject: Re: [PATCH 1/7] migration/rdma: Fix save_page method to fail on
 polling error
References: <20230831132546.3525721-1-armbru@redhat.com>
	<20230831132546.3525721-2-armbru@redhat.com>
	<npnhurzixjae6schhran3dnicpwozrhkaan5sxcf3gyxviam5y@ofklh25a6wlc>
Date: Tue, 19 Sep 2023 07:40:18 +0200
In-Reply-To: <npnhurzixjae6schhran3dnicpwozrhkaan5sxcf3gyxviam5y@ofklh25a6wlc>
	(Eric Blake's message of "Thu, 31 Aug 2023 08:38:09 -0500")
Message-ID: <87a5ti4t6l.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.7

Eric Blake <eblake@redhat.com> writes:

> On Thu, Aug 31, 2023 at 03:25:40PM +0200, Markus Armbruster wrote:
>> qemu_rdma_save_page() reports polling error with error_report(), then
>> succeeds anyway.  This is because the variable holding the polling
>> status *shadows* the variable the function returns.  The latter
>> remains zero.
>> 
>> Broken since day one, and duplicated more recently.
>> 
>> Fixes: 2da776db4846 (rdma: core logic)
>> Fixes: b390afd8c50b (migration/rdma: Fix out of order wrid)
>
> Alas, the curse of immutable git history preserving typos in commit
> subjects ;)

"wrid" is short for "work request ID", actually.

>             The alternative of rewriting history and breaking SHA
> references is worse.

Rewriting master is a big no-no.

git-note can be used to correct the record, but it has its usability
issues.

>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> ---
>>  migration/rdma.c | 6 ++++--
>>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> Reviewed-by: Eric Blake <eblake@redhat.com>

Thanks!



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 05:49:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 05:49:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604345.941660 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiTap-0003TS-TT; Tue, 19 Sep 2023 05:48:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604345.941660; Tue, 19 Sep 2023 05:48:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiTap-0003TL-Qi; Tue, 19 Sep 2023 05:48:15 +0000
Received: by outflank-mailman (input) for mailman id 604345;
 Tue, 19 Sep 2023 05:48:14 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=L0bg=FD=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qiTao-0003TF-O7
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 05:48:14 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1dd46433-56b0-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 07:48:12 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-683-xHw6_rRWPtevVZjCFt_5Cw-1; Tue, 19 Sep 2023 01:48:07 -0400
Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com
 [10.11.54.8])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 98501811E7B;
 Tue, 19 Sep 2023 05:48:06 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 69AFDC15BB8;
 Tue, 19 Sep 2023 05:48:06 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 5EA2321E6900; Tue, 19 Sep 2023 07:48:05 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1dd46433-56b0-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695102490;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=b/fZBqgWohIXDyoS//C2CQBh2i20NsRptRtuC2Sy1CY=;
	b=iHHS+K9RY52CHvbGbyANylsE2rDicGMj5U8/HDwKVfH01yQxY5JcsJ9fQUiwbma+hUxLQ/
	0fzHwvqf7xQLzj3URGxzBeedL7nLT3vQ812sqFTgyZVLCjb6/UJsHp2y4VR5vtlsd36liU
	z7WZEY+iSNkD41BazejMFhWwtkQH06o=
X-MC-Unique: xHw6_rRWPtevVZjCFt_5Cw-1
From: Markus Armbruster <armbru@redhat.com>
To: Kevin Wolf <kwolf@redhat.com>
Cc: qemu-devel@nongnu.org,  hreitz@redhat.com,  eblake@redhat.com,
  vsementsov@yandex-team.ru,  jsnow@redhat.com,  idryomov@gmail.com,
  pl@kamp.de,  sw@weilnetz.de,  sstabellini@kernel.org,
  anthony.perard@citrix.com,  paul@xen.org,  pbonzini@redhat.com,
  marcandre.lureau@redhat.com,  berrange@redhat.com,  thuth@redhat.com,
  philmd@linaro.org,  stefanha@redhat.com,  fam@euphon.net,
  quintela@redhat.com,  peterx@redhat.com,  leobras@redhat.com,
  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org,
  peter.maydell@linaro.org
Subject: Re: [PATCH 4/7] block/dirty-bitmap: Clean up local variable shadowing
References: <20230831132546.3525721-1-armbru@redhat.com>
	<20230831132546.3525721-5-armbru@redhat.com>
	<ZQQNUjN4Laf+k1Nk@redhat.com>
Date: Tue, 19 Sep 2023 07:48:05 +0200
In-Reply-To: <ZQQNUjN4Laf+k1Nk@redhat.com> (Kevin Wolf's message of "Fri, 15
	Sep 2023 09:52:50 +0200")
Message-ID: <8734za4stm.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.8

Kevin Wolf <kwolf@redhat.com> writes:

> Am 31.08.2023 um 15:25 hat Markus Armbruster geschrieben:
>> Local variables shadowing other local variables or parameters make the
>> code needlessly hard to understand.  Tracked down with -Wshadow=local.
>> Clean up: delete inner declarations when they are actually redundant,
>> else rename variables.
>> 
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> ---
>>  block/monitor/bitmap-qmp-cmds.c | 2 +-
>>  block/qcow2-bitmap.c            | 3 +--
>>  2 files changed, 2 insertions(+), 3 deletions(-)
>> 
>> diff --git a/block/monitor/bitmap-qmp-cmds.c b/block/monitor/bitmap-qmp-cmds.c
>> index 55f778f5af..4d018423d8 100644
>> --- a/block/monitor/bitmap-qmp-cmds.c
>> +++ b/block/monitor/bitmap-qmp-cmds.c
>> @@ -276,7 +276,7 @@ BdrvDirtyBitmap *block_dirty_bitmap_merge(const char *node, const char *target,
>>  
>>      for (lst = bms; lst; lst = lst->next) {
>>          switch (lst->value->type) {
>> -            const char *name, *node;
>> +            const char *name;
>>          case QTYPE_QSTRING:
>>              name = lst->value->u.local;
>>              src = bdrv_find_dirty_bitmap(bs, name);
>
> The names in this function are all over the place... A more ambitious
> patch could rename the parameters to dst_node/dst_bitmap and these
> variables to src_node/src_bitmap to get some more consistency (both with
> each other and with the existing src/dst variables).

What exactly would you like me to consider?  Perhaps:

* Rename parameter @node to @dst_node

* Rename which parameter to @dst_bitmap?

* Rename nested local @node to @src_node

* Rename which local variable to @src_bitmap?

* Move nested locals to function scope

> Preexisting, so I'm not insisting that you should do this.
>
>> diff --git a/block/qcow2-bitmap.c b/block/qcow2-bitmap.c
>> index 037fa2d435..ffd5cd3b23 100644
>> --- a/block/qcow2-bitmap.c
>> +++ b/block/qcow2-bitmap.c
>> @@ -1555,7 +1555,6 @@ bool qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs,
>>      FOR_EACH_DIRTY_BITMAP(bs, bitmap) {
>>          const char *name = bdrv_dirty_bitmap_name(bitmap);
>>          uint32_t granularity = bdrv_dirty_bitmap_granularity(bitmap);
>> -        Qcow2Bitmap *bm;
>>  
>>          if (!bdrv_dirty_bitmap_get_persistence(bitmap) ||
>>              bdrv_dirty_bitmap_inconsistent(bitmap)) {
>> @@ -1625,7 +1624,7 @@ bool qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs,
>>  
>>      /* allocate clusters and store bitmaps */
>>      QSIMPLEQ_FOREACH(bm, bm_list, entry) {
>> -        BdrvDirtyBitmap *bitmap = bm->dirty_bitmap;
>> +        bitmap = bm->dirty_bitmap;
>>  
>>          if (bitmap == NULL || bdrv_dirty_bitmap_readonly(bitmap)) {
>>              continue;
>
> Reviewed-by: Kevin Wolf <kwolf@redhat.com>

Thanks!



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 05:55:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 05:55:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604350.941670 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiTi0-0004wH-Ky; Tue, 19 Sep 2023 05:55:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604350.941670; Tue, 19 Sep 2023 05:55:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiTi0-0004wA-IN; Tue, 19 Sep 2023 05:55:40 +0000
Received: by outflank-mailman (input) for mailman id 604350;
 Tue, 19 Sep 2023 05:55:39 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=0Oxb=FD=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qiThz-0004w1-KQ
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 05:55:39 +0000
Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 286ee577-56b1-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 07:55:38 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id 894AA22839;
 Tue, 19 Sep 2023 05:55:37 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 3293D13458;
 Tue, 19 Sep 2023 05:55:37 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id zoLyCtk3CWVPQwAAMHmgww
 (envelope-from <jgross@suse.com>); Tue, 19 Sep 2023 05:55:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 286ee577-56b1-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695102937; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=NqK2AzLjcSSziUXv/bRsgo92hGjv4vqcHTVq9z+bJUs=;
	b=S6RFLxGsdYKiAAZnCMFAgl0LoF6l1MPDh02afDmCYyAqR5IKsyjHRk7gAUXnIKvT+86FI6
	VFvPtLmxdA7N8e6a0Pfer6jYLuWlPszyR2YBjtnXwKcrqcQgLK0WmXP5U5Lb4zlO+R5FcW
	hapJJwAu6vpuqRkUTq2pf57Ei0T+Os8=
Message-ID: <6ca5e35a-515e-4205-a8f2-13c0176f93cd@suse.com>
Date: Tue, 19 Sep 2023 07:55:36 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/efi: refactor deprecated strncpy
Content-Language: en-US
To: Justin Stitt <justinstitt@google.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, Dave Hansen <dave.hansen@linux.intel.com>,
 x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>
Cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org,
 linux-hardening@vger.kernel.org, Kees Cook <keescook@chromium.org>
References: <20230911-strncpy-arch-x86-xen-efi-c-v1-1-96ab2bba2feb@google.com>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <20230911-strncpy-arch-x86-xen-efi-c-v1-1-96ab2bba2feb@google.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------JLHfp2JVY4v5vNtIURUkIWuZ"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------JLHfp2JVY4v5vNtIURUkIWuZ
Content-Type: multipart/mixed; boundary="------------vs6263xuQCyPAXuihv3xaRux";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Justin Stitt <justinstitt@google.com>,
 Boris Ostrovsky <boris.ostrovsky@oracle.com>,
 Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>,
 Borislav Petkov <bp@alien8.de>, Dave Hansen <dave.hansen@linux.intel.com>,
 x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>
Cc: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org,
 linux-hardening@vger.kernel.org, Kees Cook <keescook@chromium.org>
Message-ID: <6ca5e35a-515e-4205-a8f2-13c0176f93cd@suse.com>
Subject: Re: [PATCH] xen/efi: refactor deprecated strncpy
References: <20230911-strncpy-arch-x86-xen-efi-c-v1-1-96ab2bba2feb@google.com>
In-Reply-To: <20230911-strncpy-arch-x86-xen-efi-c-v1-1-96ab2bba2feb@google.com>

--------------vs6263xuQCyPAXuihv3xaRux
Content-Type: multipart/mixed; boundary="------------P6Yp5JLuOoYDSWVGOGON5fDh"

--------------P6Yp5JLuOoYDSWVGOGON5fDh
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMTEuMDkuMjMgMjA6NTksIEp1c3RpbiBTdGl0dCB3cm90ZToNCj4gYHN0cm5jcHlgIGlz
IGRlcHJlY2F0ZWQgZm9yIHVzZSBvbiBOVUwtdGVybWluYXRlZCBkZXN0aW5hdGlvbiBzdHJp
bmdzIFsxXS4NCj4gDQo+IGBlZmlfbG9hZGVyX3NpZ25hdHVyZWAgaGFzIHNwYWNlIGZvciA0
IGJ5dGVzLiBXZSBhcmUgY29weWluZyAiWGVuIiAoMyBieXRlcykNCj4gcGx1cyBhIE5VTC1i
eXRlIHdoaWNoIG1ha2VzIDQgdG90YWwgYnl0ZXMuIFdpdGggdGhhdCBiZWluZyBzYWlkLCB0
aGVyZSBpcw0KPiBjdXJyZW50bHkgbm90IGEgYnVnIHdpdGggdGhlIGN1cnJlbnQgYHN0cm5j
cHkoKWAgaW1wbGVtZW50YXRpb24gaW4gdGVybXMgb2YNCj4gYnVmZmVyIG92ZXJyZWFkcyBi
dXQgd2Ugc2hvdWxkIGZhdm9yIGEgbW9yZSByb2J1c3Qgc3RyaW5nIGludGVyZmFjZQ0KPiBl
aXRoZXIgd2F5Lg0KPiANCj4gQSBzdWl0YWJsZSByZXBsYWNlbWVudCBpcyBgc3Ryc2NweWAg
WzJdIGR1ZSB0byB0aGUgZmFjdCB0aGF0IGl0IGd1YXJhbnRlZXMNCj4gTlVMLXRlcm1pbmF0
aW9uIG9uIHRoZSBkZXN0aW5hdGlvbiBidWZmZXIgd2hpbGUgYmVpbmcgZnVuY3Rpb25hbGx5
IHRoZQ0KPiBzYW1lIGluIHRoaXMgY2FzZS4NCj4gDQo+IExpbms6IHd3dy5rZXJuZWwub3Jn
L2RvYy9odG1sL2xhdGVzdC9wcm9jZXNzL2RlcHJlY2F0ZWQuaHRtbCNzdHJuY3B5LW9uLW51
bC10ZXJtaW5hdGVkLXN0cmluZ3NbMV0NCj4gTGluazogaHR0cHM6Ly9tYW5wYWdlcy5kZWJp
YW4ub3JnL3Rlc3RpbmcvbGludXgtbWFudWFsLTQuOC9zdHJzY3B5LjkuZW4uaHRtbCBbMl0N
Cj4gTGluazogaHR0cHM6Ly9naXRodWIuY29tL0tTUFAvbGludXgvaXNzdWVzLzkwDQo+IENj
OiBsaW51eC1oYXJkZW5pbmdAdmdlci5rZXJuZWwub3JnDQo+IENjOiBLZWVzIENvb2sgPGtl
ZXNjb29rQGNocm9taXVtLm9yZz4NCj4gU2lnbmVkLW9mZi1ieTogSnVzdGluIFN0aXR0IDxq
dXN0aW5zdGl0dEBnb29nbGUuY29tPg0KDQpQdXNoZWQgdG8geGVuL3RpcC5naXQgZm9yLWxp
bnVzLTYuNmENCg0KDQpKdWVyZ2VuDQoNCg==
--------------P6Yp5JLuOoYDSWVGOGON5fDh
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------P6Yp5JLuOoYDSWVGOGON5fDh--

--------------vs6263xuQCyPAXuihv3xaRux--

--------------JLHfp2JVY4v5vNtIURUkIWuZ
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUJN9gFAwAAAAAACgkQsN6d1ii/Ey9b
Bgf8CTf585RCh50vukpF14vtoVOLQzRwI5l+KakkqgIo2ZZnsFuAx7/VDacR6DEZFv/09CLD349E
+6v1grvdGCORORr8CzFuD5u4Ou1Vmuosze6qwkq7Mmuez738yFLOyMU8XXm+vB1a8FwgpwGyNiq7
sc1rZ2VdNGCqT93m1ykuF2YJjvjsHEQqQ8twmg8FoKh83U8JWQoFphxw3aKcXSZge1rpz/9/4kY+
jVcmKg1QU9M+9HmhrRnz4tnxqMs/sARqxTUd0JqWwiEmf8jn3o5tpYdGcVOujVeN60U/rTLsMYyP
60G1Zhv6TiL+q+Au4qdYW7YdGQRv8Ca6buyUWIS/hg==
=NvJy
-----END PGP SIGNATURE-----

--------------JLHfp2JVY4v5vNtIURUkIWuZ--


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 06:28:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 06:28:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604355.941680 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUDR-0001ey-3G; Tue, 19 Sep 2023 06:28:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604355.941680; Tue, 19 Sep 2023 06:28:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUDQ-0001er-Vm; Tue, 19 Sep 2023 06:28:08 +0000
Received: by outflank-mailman (input) for mailman id 604355;
 Tue, 19 Sep 2023 06:28:08 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiUDQ-0001eh-4j; Tue, 19 Sep 2023 06:28:08 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiUDP-00013N-Sq; Tue, 19 Sep 2023 06:28:07 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiUDP-0008GF-HM; Tue, 19 Sep 2023 06:28:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiUDP-00035k-Gt; Tue, 19 Sep 2023 06:28:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=eo2N5Vp55kz/hLCJ3O5B3jveUHmXwAiQJxYjs0MHpq8=; b=Zu0XWZg3tMZLU9qRDGWEWeIbRu
	Z4kseKmeYywJjEYfC1vulXZtu9DvctNFAwYeaIFeWtzukvHl4WnsqnXZf1X/vr+2E99PvRM4vImob
	LWiCw+ekJi3YzNUgMyRehIKiUV7VBAcaaD0hJxV3aorM8xXyUhLAWmsfiE5VRzmeIPn8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183045-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183045: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:xen-boot:fail:regression
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b5926c6ecf05c28ee99c6248c42d691ccbf0c315
X-Osstest-Versions-That:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 06:28:07 +0000

flight 183045 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183045/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 183030
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 183030

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  b5926c6ecf05c28ee99c6248c42d691ccbf0c315
baseline version:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273

Last test of basis   183030  2023-09-18 14:02:00 Z    0 days
Testing same since   183031  2023-09-18 17:01:55 Z    0 days    4 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-libvirt                                     fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 3ee6066bcd737756b0990d417d94eddc0b0d2585
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 45f00557350dc7d0756551069803fc49c29184ca
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 694bb0f280fd08a4377e36e32b84b5062def4de2
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 06:30:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 06:30:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604365.941689 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUFR-00036P-Kj; Tue, 19 Sep 2023 06:30:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604365.941689; Tue, 19 Sep 2023 06:30:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUFR-00036I-Hz; Tue, 19 Sep 2023 06:30:13 +0000
Received: by outflank-mailman (input) for mailman id 604365;
 Tue, 19 Sep 2023 06:30:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=L0bg=FD=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qiUFQ-000365-1S
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 06:30:12 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fac99e10-56b5-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 08:30:10 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-79-Mbk6CQNmM5-oLzM5NqDO9A-1; Tue, 19 Sep 2023 02:30:00 -0400
Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com
 [10.11.54.7])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 3520C185A78E;
 Tue, 19 Sep 2023 06:30:00 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id C33C014171B6;
 Tue, 19 Sep 2023 06:29:59 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id CC2D721E6900; Tue, 19 Sep 2023 08:29:58 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fac99e10-56b5-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695105009;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=GnEy/R37W9DqVlZ+UU16jlrw13YWmEkRgYevJnbQIhY=;
	b=I3xQnalN61/ctqXcxrNKZT4X56zRhTimGaFZKf+86KKFBkEdonOhbjgrSXkohIsOhhD8EA
	nBCRNs5mLascRB2XJlpd4ji/fgBhuMPeXN13ADbYnPUk/tWG7s7yqvWFM/1hjn7WdbwOPu
	E0t1iLfMFpuYqDsCqdF1uR5+pSli17w=
X-MC-Unique: Mbk6CQNmM5-oLzM5NqDO9A-1
From: Markus Armbruster <armbru@redhat.com>
To: Eric Blake <eblake@redhat.com>
Cc: Markus Armbruster <armbru@redhat.com>,  qemu-devel@nongnu.org,
  kwolf@redhat.com,  hreitz@redhat.com,  vsementsov@yandex-team.ru,
  jsnow@redhat.com,  idryomov@gmail.com,  sw@weilnetz.de,
  sstabellini@kernel.org,  anthony.perard@citrix.com,  paul@xen.org,
  pbonzini@redhat.com,  marcandre.lureau@redhat.com,  berrange@redhat.com,
  thuth@redhat.com,  philmd@linaro.org,  stefanha@redhat.com,
  fam@euphon.net,  quintela@redhat.com,  peterx@redhat.com,
  leobras@redhat.com,  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org,
  peter.maydell@linaro.org
Subject: Re: [PATCH 7/7] qobject atomics osdep: Make a few macros more hygienic
References: <20230831132546.3525721-1-armbru@redhat.com>
	<20230831132546.3525721-8-armbru@redhat.com>
	<vfkfi6uld3gbd4urmqdlzkv6djtws6mkbluc5qvwcla6btszhu@ff66zfyd7smm>
	<87ledqjn39.fsf@pond.sub.org>
	<viam47z5ascty5zluzvj3byrrrp2fe6jh6vevcaggpozxwzabj@avo7fb3gs7bt>
Date: Tue, 19 Sep 2023 08:29:58 +0200
In-Reply-To: <viam47z5ascty5zluzvj3byrrrp2fe6jh6vevcaggpozxwzabj@avo7fb3gs7bt>
	(Eric Blake's message of "Fri, 1 Sep 2023 08:18:38 -0500")
Message-ID: <87v8c63cbd.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.7

Eric Blake <eblake@redhat.com> writes:

> On Fri, Sep 01, 2023 at 10:48:26AM +0200, Markus Armbruster wrote:
>> > Indeed, not fully understanding the preprocessor makes for some
>> > interesting death traps.
>> 
>> We use ALL_CAPS for macros to signal "watch out for traps".
>> 
>
>> >> -#define QOBJECT(obj) ({                                         \
>> >> -    typeof(obj) _obj = (obj);                                   \
>> >> -    _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
>> >> +#define QOBJECT_INTERNAL(obj, l) ({                                     \
>> >> +    typeof(obj) PASTE(_obj, l) = (obj);                                 \
>> >> +    PASTE(_obj, l)                                                      \
>> >> +        ? container_of(&(PASTE(_obj, l))->base, QObject, base) : NULL;  \
>> >>  })
>> >> +#define QOBJECT(obj) QOBJECT_INTERNAL((obj), __COUNTER__)
>> >
>> > Slick!  Every call to QOBJECT() defines a unique temporary variable
>> > name.  But as written, QOBJECT(o) expands to this (when __COUNTER__ is
>> > 1):
>> >
>> > ({
>> >   typeof((o)) _obj1 = ((o));
>> >   _obj1 ? container_of(&(_obj1)->base, QObject, base) : NULL;
>> > })
>> >
>> > which has three sets of redundant parens that could be elided.  Why do
>> > you need to add () around obj when forwarding to QOBJECT_INTERNAL()?
>> 
>> Habit: enclose macro arguments in parenthesis unless there's a specific
>> need not to.
>> 
>> > The only way the expansion of the text passed through the 'obj'
>> > parameter can contain a comma is if the user has already parenthesized
>> > it on their end (not that I expect a comma expression to be a frequent
>> > argument to QOBJECT(), but who knows).  Arguing that it is to silence
>> > a syntax checker is weak; since we must NOT add parens around the
>> > parameters to QOBJECT_INTERNAL (calling PASTE((_obj), (l)) is
>> > obviously wrong).
>> >
>> > Meanwhile, the repetition of three calls to PASTE() is annoying.  How
>> > about:
>> >
>> > #define QOBJECT_INTERNAL_2(_obj, _tmp) ({ \
>> >   typeof _obj _tmp = _obj; \
>> >   _tmp ? container_of(&_tmp->base, QObject, base) : NULL; \
>> >   )}
>> > #define QOBJECT_INTERNAL_1(_arg, _tmp) QOBJECT_INTERNAL_2(_arg, _tmp)
>> > #define QOBJECT_INTERNAL(_arg, _ctr) \
>> >   QOBJECT_INTERNAL_1(_arg, PASTE(_obj, _ctr))
>> > #define QOBJECT(obj) QOBJECT_INTERNAL((obj), __COUNTER__)
>> >
>> > or:
>> >
>> > #define QOBJECT_INTERNAL_2(_obj, _tmp) ({ \
>> >   typeof(_obj) _tmp = (_obj); \
>> >   _tmp ? container_of(&_tmp->base, QObject, base) : NULL; \
>> >   )}
>> > #define QOBJECT_INTERNAL_1(_arg, _tmp) QOBJECT_INTERNAL_2(_arg, _tmp)
>> > #define QOBJECT_INTERNAL(_arg, _ctr) \
>> >   QOBJECT_INTERNAL_1(_arg, PASTE(_obj, _ctr))
>> > #define QOBJECT(obj) QOBJECT_INTERNAL(obj, __COUNTER__)
>> >
>> > where, in either case, QOBJECT(o) should then expand to
>> >
>> > ({
>> >   typeof (o) _obj1 = (o);
>> >   _obj1 ? container_of(&_obj1->base, QObject, base) : NULL;
>> > })
>> 
>> The idea is to have the innermost macro take the variable name instead
>> of the counter.  "PASTE(_obj, l)" then becomes "_tmp" there, which is
>> more legible.  However, we pay for it by going through two more macros.
>> 
>> Can you explain why you need two more?
>
> Likewise habit, on my part (and laziness - I wrote the previous email
> without testing anything). I've learned over the years that pasting is
> hard (you can't mix ## with a macro that you want expanded without 2
> layers of indirection), so I started out by adding two layers of
> QOBJECT_INTERNAL, then wrote QOBJECT to forward to QOBJECT_INTERNAL.
> But now that you asked, I actually spent the time to test with the
> preprocessor, and your hunch is indeed correct: I over-compensated
> becaues of my habit.
>
> $cat foo.c
> #define PASTE(_a, _b) _a##_b
>
> #define QOBJECT_INTERNAL_2(_obj, _tmp) ({       \
>   typeof _obj _tmp = _obj; \
>   _tmp ? container_of(&_tmp->base, QObject, base) : NULL; \
>   )}
> #define QOBJECT_INTERNAL_1(_arg, _tmp) QOBJECT_INTERNAL_2(_arg, _tmp)
> #define QOBJECT_INTERNAL(_arg, _ctr) \
>   QOBJECT_INTERNAL_1(_arg, PASTE(_obj, _ctr))
> #define QOBJECT(obj) QOBJECT_INTERNAL((obj), __COUNTER__)
>
> QOBJECT(o)
>
> #define Q_INTERNAL_1(_obj, _tmp) ({ \
>   typeof _obj _tmp = _obj; \
>   _tmp ? container_of(&_tmp->base, QObject, base) : NULL; \
>   )}
> #define Q_INTERNAL(_arg, _ctr) \
>   Q_INTERNAL_1(_arg, PASTE(_obj, _ctr))
> #define Q(obj) Q_INTERNAL((obj), __COUNTER__)
>
> Q(o)
> $ gcc -E foo.c
> # 0 "foo.c"
> # 0 "<built-in>"
> # 0 "<command-line>"
> # 1 "/usr/include/stdc-predef.h" 1 3 4
> # 0 "<command-line>" 2
> # 1 "foo.c"
> # 12 "foo.c"
> ({ typeof (o) _obj0 = (o); _obj0 ? container_of(&_obj0->base, QObject, base) : NULL; )}
> # 22 "foo.c"
> ({ typeof (o) _obj1 = (o); _obj1 ? container_of(&_obj1->base, QObject, base) : NULL; )}
>
> So the important part was merely ensuring that __COUNTER__ has a
> chance to be expanded PRIOR to the point where ## gets its argument,
> and one less layer of indirection was still sufficient for that.

The version with less indirection is easier to understand for me.

>> 
>> Complication: the innermost macro needs to take all its variable names
>> as arguments.  The macro above has just one.  Macros below have two.
>> 
>> Not quite sure which version is easier to understand.
>
> Proper comments may help; once you realize that you are passing in the
> unique variable name(s) to be used as the temporary identifier(s),
> rather than an integer that still needs to be glued, then separating
> the task of generating name(s) (which is done once per name, instead
> of repeated 3 times) makes sense to me.  I also like minimizing the
> number of times I have to spell out __COUNTER__; wrapping unique name
> generation behind a well-named helper macro gives a better view of why
> it is needed in the first place.

I can add this comment to every instance of the __COUNTER__ trick:

    /*
     * Preprocessor wizardry ahead: glue(_val, l) expands to a new
     * identifier in each macro expansion.  Helps avoid shadowing
     * variables and the unwanted name captures that come with it.
     */

> At any rate, this comment still applies:
>
>> >
>> > I think you are definitely on the right track to have all internal
>> > variable declarations within a macro definition use multi-layered
>> > expansion with the help of __COUNTER__ to ensure that the macro's
>> > temporary variable is globally unique; so if you leave it as written,
>> > I could live with:
>> >
>> > Reviewed-by: Eric Blake <eblake@redhat.com>
>> >
>> > But if you respin it to pick up any of my suggestions, I'll definitely
>> > spend another review cycle on the result.
>> >
>> > If it helps, here's what I ended up using in nbdkit:
>> >
>> > https://gitlab.com/nbdkit/nbdkit/-/blame/master/common/include/unique-name.h#L36
>> > /* https://stackoverflow.com/a/1597129
>> >  * https://stackoverflow.com/a/12711226
>> >  */
>> > #define XXUNIQUE_NAME(name, counter) name ## counter
>> > #define XUNIQUE_NAME(name, counter) XXUNIQUE_NAME (name, counter)
>> > #define NBDKIT_UNIQUE_NAME(name) XUNIQUE_NAME (name, __COUNTER__)
>> >
>> > https://gitlab.com/nbdkit/nbdkit/-/blame/master/common/include/minmax.h#L47
>> > #include "unique-name.h"
>> >
>> > #undef MIN
>> > #define MIN(x, y) \
>> >   MIN_1 ((x), (y), NBDKIT_UNIQUE_NAME (_x), NBDKIT_UNIQUE_NAME (_y))
>> >
>> > ...
>> > #define MIN_1(x, y, _x, _y) ({                 \
>> >       __auto_type _x = (x);                    \
>> >       __auto_type _y = (y);                    \
>> >       _x < _y ? _x : _y;                       \
>> >     })
>> 
>> Thanks!
>
> and so I'm fine leaving it up to you if you want to copy the paradigm
> I've seen elsewhere, or if you want to leave it as you first proposed.
> The end result is the same, and it is more of a judgment call on which
> form is easier for you to reason about.

I need to review the two competing versions once more to decide which I
find easier to read.  Or shall I say less hard; preprocessor wizardry is
never really easy.

> But as other commenters mentioned, we already have a glue() macro, so
> use that instead of PASTE(), no matter what else you choose.
>
> Looking forward to v2!

Thanks again!



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 06:30:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 06:30:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604369.941700 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUG1-0003b3-U0; Tue, 19 Sep 2023 06:30:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604369.941700; Tue, 19 Sep 2023 06:30:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUG1-0003aw-QT; Tue, 19 Sep 2023 06:30:49 +0000
Received: by outflank-mailman (input) for mailman id 604369;
 Tue, 19 Sep 2023 06:30:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=72lO=FD=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qiUG0-0003Oo-E3
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 06:30:48 +0000
Received: from mail-lf1-x12f.google.com (mail-lf1-x12f.google.com
 [2a00:1450:4864:20::12f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 112bfbdd-56b6-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 08:30:46 +0200 (CEST)
Received: by mail-lf1-x12f.google.com with SMTP id
 2adb3069b0e04-50300141a64so4675361e87.0
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 23:30:46 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (cpc92302-cmbg19-2-0-cust781.5-4.cable.virginm.net. [82.1.211.14])
 by smtp.gmail.com with ESMTPSA id
 26-20020a05600c229a00b003fe17901fcdsm17068780wmf.32.2023.09.18.23.30.45
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 23:30:45 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 112bfbdd-56b6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695105046; x=1695709846; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=EDYk+qOA2va4SZvLoIEXCCrvnkUnu0bkO6jAIEslEMw=;
        b=MzkMnKqP2cxVRjYr1ASq08fkgsauMINkCYN1B2cJoR01FsnzSk+AjIBk7jitbieY1Y
         kJkesEL9nSkFjMXSwx4z+9XRqQhMTo+5vJ7CykdxE97cCmSmY+6GBSbJSaAwl96z9YMV
         83KWyC3HHrc48QbOrLrus0Kf2ynRAHz6Z3Wqo=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695105046; x=1695709846;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=EDYk+qOA2va4SZvLoIEXCCrvnkUnu0bkO6jAIEslEMw=;
        b=f5dxsBRkImFP0S8XJmXy04ZVdnjRnEtwVrFW6Satv3Ry0jhYPD6QQN13WLJOO0ixCe
         3BsnZat2nEfP6BmLnqRNamyQwtTConkLVov1/264m+sQG6GSyoEVd1WpbDysNlrYrluZ
         tf9X+O4fvu8GIG9BQW5Nslx4uC0x9S5uCa0vyprAeEVlQ10Ttc64hMdJoU4hLGzwTAa+
         YZ1IBF5gxBpNw7dBqoGEcRJrhiz9k9REBE1ptWVHeMr/dwjx8H0C9kSxPS5jPvcaN8jD
         s4bt9k3ybiFAGNy/W+4DEO/I2pQR1Cb0ypBwcZzwgZ+uA/7q6VXvyy2QEAEH2G49uZdg
         0WiA==
X-Gm-Message-State: AOJu0YwkoqxJ6cZTM85QK8uCnA84lbc941EkOwXSoKag/2LkNgs1GwLv
	xc4sKZ/VfHPwTLzZn2dYsfClRCgBsPVFX19butU=
X-Google-Smtp-Source: AGHT+IFzEwZBjIi/q4ynfAcnblFgcm1mMCjJB44I5iAipvkYIlhxBKOyA5Q1VMRKAFY015LGQONOBg==
X-Received: by 2002:a05:6512:3290:b0:4fd:f77d:5051 with SMTP id p16-20020a056512329000b004fdf77d5051mr7869500lfe.26.1695105045981;
        Mon, 18 Sep 2023 23:30:45 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Javi Merino <javi.merino@cloud.com>
Subject: [XEN PATCH v3 0/4] python: Support setuptools
Date: Tue, 19 Sep 2023 07:30:25 +0100
Message-ID: <cover.1695102101.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.42.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This series adds support for setuptools as distutils will be
deprecated in python 3.12.

Not done for this series:
  - Andrew suggested simplifying the code in m4/python_devel.m4[0] and
    this is not done yet.

[0] https://lore.kernel.org/xen-devel/fdf87d82-aa3c-fd2e-6271-848f1a806fb2@citrix.com/

Changes since v2:
  - These containers used for gitlab ci were missing setuptools in the
    previous series and now they have it:
    * alpine/3.18-arm64v8
    * opensuse-tumbleweed
    * debian/bookworm-i386
    * debian/bookworm-arm64v8
  - These containers used for gitlab ci are being kept without
    setuptools to test installations that don't have it:
    * centos/7
    * debian/stretch
    * ubuntu/trusty
    * ubuntu/xenial
    * ubuntu/bionic
  - Fix commit messages that talked about removing distutils support
    as we are keeping it.
  - Add my Signed-off-by to all commits
  - Clarify in the readme that python's minimum version is 2.7.
  - Fold the changes to the ./configure script into the patch that
    changes `m4/python_devel.m4`.  Create ./configure using autoconf
    2.69.

Changes since v1:
  - Update all containers to have setuptools, as python 3.12
    deprecates distutils in favour of setuptools
  - Keep python2's support by falling back to distutils if setuptools
    is not installed
  - Drop the commit about raising the baseline requirement for python,
    as we keep supporting python2

v1: https://lore.kernel.org/xen-devel/20230316171634.320626-1-marmarek@invisiblethingslab.com/
v2: https://lore.kernel.org/xen-devel/cover.1694450145.git.javi.merino@cloud.com/

Javi Merino (2):
  automation: add python3's setuptools to containers
  README: update to remove old note about the build system's python
    expectation

Marek Marczykowski-Górecki (2):
  tools: convert setup.py to use setuptools
  tools: don't use distutils in configure nor Makefile

 README                                        | 11 +---
 .../build/alpine/3.18-arm64v8.dockerfile      |  1 +
 automation/build/alpine/3.18.dockerfile       |  1 +
 automation/build/archlinux/current.dockerfile |  1 +
 .../build/debian/bookworm-arm64v8.dockerfile  |  1 +
 .../build/debian/bookworm-i386.dockerfile     |  1 +
 automation/build/debian/bookworm.dockerfile   |  1 +
 .../build/suse/opensuse-leap.dockerfile       |  1 +
 .../build/suse/opensuse-tumbleweed.dockerfile |  1 +
 automation/build/ubuntu/focal.dockerfile      |  1 +
 m4/python_devel.m4                            | 28 +++++-----
 tools/configure                               | 52 +++++++------------
 tools/libs/stat/Makefile                      |  4 +-
 tools/pygrub/setup.py                         |  7 ++-
 tools/python/setup.py                         |  7 ++-
 15 files changed, 57 insertions(+), 61 deletions(-)

-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 06:30:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 06:30:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604371.941710 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUG9-0003tb-4E; Tue, 19 Sep 2023 06:30:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604371.941710; Tue, 19 Sep 2023 06:30:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUG9-0003tS-1e; Tue, 19 Sep 2023 06:30:57 +0000
Received: by outflank-mailman (input) for mailman id 604371;
 Tue, 19 Sep 2023 06:30:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=72lO=FD=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qiUG7-000365-77
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 06:30:55 +0000
Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com
 [2a00:1450:4864:20::436])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 15834304-56b6-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 08:30:54 +0200 (CEST)
Received: by mail-wr1-x436.google.com with SMTP id
 ffacd0b85a97d-3216ba1b01eso43069f8f.2
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 23:30:54 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (cpc92302-cmbg19-2-0-cust781.5-4.cable.virginm.net. [82.1.211.14])
 by smtp.gmail.com with ESMTPSA id
 26-20020a05600c229a00b003fe17901fcdsm17068780wmf.32.2023.09.18.23.30.52
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 23:30:53 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 15834304-56b6-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695105053; x=1695709853; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=wbXhdLFbcKxuR4bu4gNNOrR4FaAxxc2YusNyZEuxj94=;
        b=D6wMLE6+JvuGZZrCb9uhp42jYU1uzMX8xGLlsBT8eSUXp3CKhdnqv5bHSjUD0ZlU+Z
         ygmSEYMg+eyiLZwdtiy6mAzFhdm6Xlc5BIp623zrc8YCqbsDuTNZcm1yxjrQH0W5Bju6
         EMsVed/CRDXkg4FbCYSD51oufyJSQKdFDarZE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695105053; x=1695709853;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=wbXhdLFbcKxuR4bu4gNNOrR4FaAxxc2YusNyZEuxj94=;
        b=DZlTE9AW3YGd4OWC/gwGazxKpKgT0SrjOrgEvPJ8jYhSrFYrepz29fhm1I1BXt+HMV
         mKX8pUqzWPYj12/dPCSkQpu873TlHgtBEh8Wnj7QvtZOEx0hUGrHfJSd0EPfe+kWt8xg
         tjx9QUlanB/eqXlsBtEyE1iUeIOPItMa5zdcVh5zwqgmJ9Yuopufr2EoQ5FtqQi9hLeB
         dIZH5+vCMWT60MMZYxDMzDO1ctTy+WrC1EiIEruMg7xGMiydW/c8oXvLhWXdbEhrqXPr
         Gg12dQ5eaUXnp1Ak+z7ggexa8a8iwdaxbWi7kLRCwZD9J8rQvU3fPupJfwcqcTDPBHT4
         F3AQ==
X-Gm-Message-State: AOJu0YwbPljVet7SoLEU/f+IPgMMFKl0vStUmTY+yPZIgzWZ2u0oeNH/
	PqnXnAbn2MXZHUFIRHeA//w+xWZC8AWgYcyfXx4=
X-Google-Smtp-Source: AGHT+IFmQF902aG8kG+pWr5CTNfjQKM3oCoZlzWo8/JW8bbcr9L8kaz2unjZPw+BNhmwgwTxarBiMQ==
X-Received: by 2002:a5d:5091:0:b0:317:dada:2417 with SMTP id a17-20020a5d5091000000b00317dada2417mr8670791wrt.31.1695105053601;
        Mon, 18 Sep 2023 23:30:53 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Javi Merino <javi.merino@cloud.com>,
	Doug Goldstein <cardoe@cardoe.com>
Subject: [XEN PATCH v3 1/4] automation: add python3's setuptools to containers
Date: Tue, 19 Sep 2023 07:30:26 +0100
Message-ID: <3abf37902cb921edabf0882e463e6fa6f8b3dee7.1695104399.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <cover.1695104399.git.javi.merino@cloud.com>
References: <cover.1695104399.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

In preparation of supporting both distutils and setuptools, add the
python3 setuptools module to the containers that have recent python3
installations.

Debian Stretch, Ubuntu trusty (14.04), Ubuntu xenial (16.04) and
Ubuntu bionic (18.04) are kept without setuptools on purpose, to test
installations that don't have it.

Centos 7 in particular is kept with python2 only.

Signed-off-by: Javi Merino <javi.merino@cloud.com>
---
 automation/build/alpine/3.18-arm64v8.dockerfile      | 1 +
 automation/build/alpine/3.18.dockerfile              | 1 +
 automation/build/archlinux/current.dockerfile        | 1 +
 automation/build/debian/bookworm-arm64v8.dockerfile  | 1 +
 automation/build/debian/bookworm-i386.dockerfile     | 1 +
 automation/build/debian/bookworm.dockerfile          | 1 +
 automation/build/suse/opensuse-leap.dockerfile       | 1 +
 automation/build/suse/opensuse-tumbleweed.dockerfile | 1 +
 automation/build/ubuntu/focal.dockerfile             | 1 +
 9 files changed, 9 insertions(+)

diff --git a/automation/build/alpine/3.18-arm64v8.dockerfile b/automation/build/alpine/3.18-arm64v8.dockerfile
index ce198f7d04..470f5d72a9 100644
--- a/automation/build/alpine/3.18-arm64v8.dockerfile
+++ b/automation/build/alpine/3.18-arm64v8.dockerfile
@@ -32,6 +32,7 @@ RUN apk --no-cache add \
   ocaml-findlib \
   patch  \
   python3-dev \
+  py3-setuptools \
   texinfo \
   util-linux-dev \
   xz-dev \
diff --git a/automation/build/alpine/3.18.dockerfile b/automation/build/alpine/3.18.dockerfile
index ca5756955e..5d2a69a060 100644
--- a/automation/build/alpine/3.18.dockerfile
+++ b/automation/build/alpine/3.18.dockerfile
@@ -34,6 +34,7 @@ RUN apk --no-cache add \
   ocaml-findlib \
   patch  \
   python3-dev \
+  py3-setuptools \
   texinfo \
   util-linux-dev \
   xz-dev \
diff --git a/automation/build/archlinux/current.dockerfile b/automation/build/archlinux/current.dockerfile
index 13fb472d9e..47e79637a4 100644
--- a/automation/build/archlinux/current.dockerfile
+++ b/automation/build/archlinux/current.dockerfile
@@ -34,6 +34,7 @@ RUN pacman -S --refresh --sysupgrade --noconfirm --noprogressbar --needed \
         pixman \
         pkgconfig \
         python \
+        python-setuptools \
         sdl \
         sdl2 \
         spice \
diff --git a/automation/build/debian/bookworm-arm64v8.dockerfile b/automation/build/debian/bookworm-arm64v8.dockerfile
index a6d4246d96..640b1e0ead 100644
--- a/automation/build/debian/bookworm-arm64v8.dockerfile
+++ b/automation/build/debian/bookworm-arm64v8.dockerfile
@@ -16,6 +16,7 @@ RUN apt-get update && \
         libncurses5-dev \
         libssl-dev \
         python3-dev \
+        python3-setuptools \
         xorg-dev \
         uuid-dev \
         libyajl-dev \
diff --git a/automation/build/debian/bookworm-i386.dockerfile b/automation/build/debian/bookworm-i386.dockerfile
index eb1c732f53..559bf670f0 100644
--- a/automation/build/debian/bookworm-i386.dockerfile
+++ b/automation/build/debian/bookworm-i386.dockerfile
@@ -18,6 +18,7 @@ RUN apt-get update && \
         libncurses5-dev \
         libssl-dev \
         python3-dev \
+        python3-setuptools \
         xorg-dev \
         uuid-dev \
         libyajl-dev \
diff --git a/automation/build/debian/bookworm.dockerfile b/automation/build/debian/bookworm.dockerfile
index f8415425e6..ae008c8d46 100644
--- a/automation/build/debian/bookworm.dockerfile
+++ b/automation/build/debian/bookworm.dockerfile
@@ -16,6 +16,7 @@ RUN apt-get update && \
         libncurses5-dev \
         libssl-dev \
         python3-dev \
+        python3-setuptools \
         xorg-dev \
         uuid-dev \
         libyajl-dev \
diff --git a/automation/build/suse/opensuse-leap.dockerfile b/automation/build/suse/opensuse-leap.dockerfile
index 98ee42970d..7010b71aca 100644
--- a/automation/build/suse/opensuse-leap.dockerfile
+++ b/automation/build/suse/opensuse-leap.dockerfile
@@ -60,6 +60,7 @@ RUN zypper install -y --no-recommends \
         'pkgconfig(sdl)' \
         'pkgconfig(sdl2)' \
         python3-devel \
+        python3-setuptools \
         systemd-devel \
         tar \
         transfig \
diff --git a/automation/build/suse/opensuse-tumbleweed.dockerfile b/automation/build/suse/opensuse-tumbleweed.dockerfile
index aed81f0240..959e1f6939 100644
--- a/automation/build/suse/opensuse-tumbleweed.dockerfile
+++ b/automation/build/suse/opensuse-tumbleweed.dockerfile
@@ -63,6 +63,7 @@ RUN zypper install -y --no-recommends \
         'pkgconfig(sdl)' \
         'pkgconfig(sdl2)' \
         python3-devel \
+        python3-setuptools \
         systemd-devel \
         tar \
         transfig \
diff --git a/automation/build/ubuntu/focal.dockerfile b/automation/build/ubuntu/focal.dockerfile
index 9c851c0620..e3d11194ee 100644
--- a/automation/build/ubuntu/focal.dockerfile
+++ b/automation/build/ubuntu/focal.dockerfile
@@ -16,6 +16,7 @@ RUN apt-get update && \
         libncurses5-dev \
         libssl-dev \
         python3-dev \
+        python3-setuptools \
         xorg-dev \
         uuid-dev \
         libyajl-dev \
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 06:30:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 06:30:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604372.941719 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUGA-00049m-Bn; Tue, 19 Sep 2023 06:30:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604372.941719; Tue, 19 Sep 2023 06:30:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUGA-00049d-8i; Tue, 19 Sep 2023 06:30:58 +0000
Received: by outflank-mailman (input) for mailman id 604372;
 Tue, 19 Sep 2023 06:30:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=72lO=FD=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qiUG8-000365-7E
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 06:30:56 +0000
Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com
 [2a00:1450:4864:20::330])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 15f4f1f1-56b6-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 08:30:54 +0200 (CEST)
Received: by mail-wm1-x330.google.com with SMTP id
 5b1f17b1804b1-403012f276dso57094825e9.0
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 23:30:55 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (cpc92302-cmbg19-2-0-cust781.5-4.cable.virginm.net. [82.1.211.14])
 by smtp.gmail.com with ESMTPSA id
 26-20020a05600c229a00b003fe17901fcdsm17068780wmf.32.2023.09.18.23.30.53
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 23:30:54 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 15f4f1f1-56b6-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695105054; x=1695709854; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=5qAv5TR4Jv8y9/IqrcBV7oAsUEo56bvO6XuiR+P26ck=;
        b=Dj4Uba0/uO3kgF+0WJkf3KThH9xm58sFemj2Au4nLUjCVFGLZteoMYfNn6D4sQaSwk
         QvB7rdSU7+g5m0aJNqa/MToZKE+PFqVkfEXtN1SF6LApMzSZA5Ta3hQGkJhqymIVU1UH
         Vz/AfrF2fWcTb+6cgYCW9SvjeByX5rctAiJjA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695105054; x=1695709854;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=5qAv5TR4Jv8y9/IqrcBV7oAsUEo56bvO6XuiR+P26ck=;
        b=jXEipjwQUf21wtZqTKb+yqrYG41kn+S7w+gf9xWFq3BZkDbq3LrznSommJmWYlI6V4
         dVNPB5W3S1G7YOT13yICcRfJ5Dp+4Uf8z/dWpb5zMt/sFr4+V7PmWcRW/EdLSlHrPXgF
         lcYKLYp6L/6je9nZO8296Po4z4tPvkKzFI7naOm6glWh6/j+aBtphr/K/uWZMUUSg3ZX
         JMZmaokij0hy7VEGkevk7rO033aTxRBJTvNLPXGiHpOmbuPFLTtxygDmpZMZcW2mDCDr
         qkVlhJmNG9lXjess1292yZRGakAW2mHR94NpY4TLOMpVEfYfFp9nPwlxpfE2Zv8XH1xV
         nhCA==
X-Gm-Message-State: AOJu0YxMjwz2jJ6dVeaqGE7Ykymg3x6KKr225Zcyw/uAAskPMP8Z315O
	9RsAxvus+Sg425BopDsDM+ymafSnKls9S2ivXOo=
X-Google-Smtp-Source: AGHT+IF3F5TicFY2bZaPPfxI3vbGtjet1LnUeRlgKhqZkuTP7saiA9lgz54eojjPaWL++bqqsbFuOA==
X-Received: by 2002:a05:600c:c8:b0:402:f5c2:c6d9 with SMTP id u8-20020a05600c00c800b00402f5c2c6d9mr10181859wmm.37.1695105054480;
        Mon, 18 Sep 2023 23:30:54 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Javi Merino <javi.merino@cloud.com>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>
Subject: [XEN PATCH v3 2/4] tools: convert setup.py to use setuptools if available
Date: Tue, 19 Sep 2023 07:30:27 +0100
Message-ID: <761d876ad8755a98824ed7705afaed2cdb545dd8.1695104399.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <cover.1695104399.git.javi.merino@cloud.com>
References: <cover.1695104399.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>

Python distutils is deprecated and is going to be removed in Python
3.12. Add support for setuptools.

Setuptools in Python 3.11 complains:

  SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.

Keep using setup.py anyway to build the C extension.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Signed-off-by: Javi Merino <javi.merino@cloud.com>
---
 tools/pygrub/setup.py | 7 +++++--
 tools/python/setup.py | 7 +++++--
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/tools/pygrub/setup.py b/tools/pygrub/setup.py
index 502aa4df2d..c9cac47eee 100644
--- a/tools/pygrub/setup.py
+++ b/tools/pygrub/setup.py
@@ -1,5 +1,8 @@
-from distutils.core import setup, Extension
-from distutils.ccompiler import new_compiler
+# Prefer setuptools, fall back to distutils
+try:
+    from setuptools import setup, Extension
+except ImportError:
+    from distutils.core import setup, Extension
 import os
 import sys
 
diff --git a/tools/python/setup.py b/tools/python/setup.py
index 721a3141d7..02354f6986 100644
--- a/tools/python/setup.py
+++ b/tools/python/setup.py
@@ -1,5 +1,8 @@
-
-from distutils.core import setup, Extension
+# Prefer setuptools, fall back to distutils
+try:
+    from setuptools import setup, Extension
+except ImportError:
+    from distutils.core import setup, Extension
 import os, sys
 
 XEN_ROOT = "../.."
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 06:30:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 06:30:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604373.941725 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUGA-0004Gx-Tp; Tue, 19 Sep 2023 06:30:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604373.941725; Tue, 19 Sep 2023 06:30:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUGA-0004EW-OV; Tue, 19 Sep 2023 06:30:58 +0000
Received: by outflank-mailman (input) for mailman id 604373;
 Tue, 19 Sep 2023 06:30:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=72lO=FD=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qiUG9-000365-Ds
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 06:30:57 +0000
Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com
 [2a00:1450:4864:20::331])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 16cf209c-56b6-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 08:30:56 +0200 (CEST)
Received: by mail-wm1-x331.google.com with SMTP id
 5b1f17b1804b1-403012f276dso57094985e9.0
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 23:30:56 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (cpc92302-cmbg19-2-0-cust781.5-4.cable.virginm.net. [82.1.211.14])
 by smtp.gmail.com with ESMTPSA id
 26-20020a05600c229a00b003fe17901fcdsm17068780wmf.32.2023.09.18.23.30.54
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 23:30:55 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 16cf209c-56b6-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695105056; x=1695709856; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=tvhbCNuYjHTCOHSrJQTmuxTZfNtPGxI3jc+wOT5X06U=;
        b=lWXOZVAb3RHD+IuLLUaDWM/wxVc4ppx58ZDN9zc/66UMzIP+aNw1hNqYrRcYPDSwuG
         YB5cspJFKVo3AVF7541/RF4w5aFMapyShNuJQaYEIQzPCyRdjGAN2RqeBZmNqw29lX9o
         oAl2Ue0U72g42Fy80ni9miP0MRvSIwR1BAqB8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695105056; x=1695709856;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=tvhbCNuYjHTCOHSrJQTmuxTZfNtPGxI3jc+wOT5X06U=;
        b=AkBOpfHoysw5E/n4gu+bjJ+CPGbHd7XvDDV1JCM735NApBsKcjGM8GMVABEils2vMd
         E6rbZVGvqaKu4++MvRBZU7A7fAkf3IgUA4N1RpGinqAdD4prsE0q3vlrHapFIPgiHsHl
         IugWQDSZSnD/hfn66YOZsbCWn9M8SxM+fl4ER8VL4hNmHG8UfSFnlFgoTH1sroWdKhIB
         9HI9OI4xv1ArktQYCNcg6tM+uKTQh02VK+qxehnTDEXc8Wj1NGP+560l5Ih9crZ60n1i
         kgEmc2IE0CGfBLKlK3ud8L7rSnlm3tsi2l6ReaXBEFdshwwWVOaCwPyHItE1a5XbqOXR
         c0/A==
X-Gm-Message-State: AOJu0Yw6AoyJ7zT6DErad+dzUaOx1JUrkxx2g4Pp1yEU4RURcM7pceDI
	XbM5goW+h7JsqWyTbE8AhkKodG+CFXqFoEMTHtk=
X-Google-Smtp-Source: AGHT+IFi/Nob+ea/5Pk06GDURe4HI2/PcXwQbwQcWEynA5ihJDMmtRJnRrDqm6ualnJ904MlOMAWyw==
X-Received: by 2002:adf:e181:0:b0:320:9fa:d928 with SMTP id az1-20020adfe181000000b0032009fad928mr7015652wrb.68.1695105055868;
        Mon, 18 Sep 2023 23:30:55 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Javi Merino <javi.merino@cloud.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Juergen Gross <jgross@suse.com>
Subject: [XEN PATCH v3 3/4] tools: don't use distutils in configure nor Makefile
Date: Tue, 19 Sep 2023 07:30:28 +0100
Message-ID: <9647bf6e5ae1f06ed95db3f9bd67920dfb6b613b.1695104399.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <cover.1695104399.git.javi.merino@cloud.com>
References: <cover.1695104399.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>

Python distutils is deprecated and is going to be removed in Python
3.12.  distutils.sysconfig is available as the sysconfig module in
stdlib since Python 2.7 and Python 3.2, so use that directly.

Update the README to reflect that we now depend on Python 2.7.

Regenerate configure after the m4/python_devel.m4 change.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Signed-off-by: Javi Merino <javi.merino@cloud.com>
---
 README                   |  4 ++--
 m4/python_devel.m4       | 28 +++++++++++-----------
 tools/configure          | 52 ++++++++++++++++------------------------
 tools/libs/stat/Makefile |  4 ++--
 4 files changed, 38 insertions(+), 50 deletions(-)

diff --git a/README b/README
index f8cc426f78..f75fa536d9 100644
--- a/README
+++ b/README
@@ -50,7 +50,7 @@ provided by your OS distributor:
         - GNU Binutils 2.24 or later
     * POSIX compatible awk
     * Development install of zlib (e.g., zlib-dev)
-    * Development install of Python 2.6 or later (e.g., python-dev)
+    * Development install of Python 2.7 or later (e.g., python-dev)
     * Development install of curses (e.g., libncurses-dev)
     * Development install of openssl (e.g., openssl-dev)
     * Development install of x11 (e.g. xorg-x11-dev)
@@ -180,7 +180,7 @@ Python Runtime Libraries
 
 Various tools, such as pygrub, have the following runtime dependencies:
 
-    * Python 2.6 or later.
+    * Python 2.7 or later.
           URL:    https://www.python.org/
           Debian: python
 
diff --git a/m4/python_devel.m4 b/m4/python_devel.m4
index bbf1e0354b..bb60857b03 100644
--- a/m4/python_devel.m4
+++ b/m4/python_devel.m4
@@ -5,21 +5,21 @@ ac_previous_libs=$LIBS
 AC_PATH_PROG([pyconfig], [$PYTHON-config], [no])
 AS_IF([test x"$pyconfig" = x"no"], [
     dnl For those that don't have python-config
-    CPPFLAGS="$CFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print("-I" + distutils.sysconfig.get_config_var("INCLUDEPY"))'`"
-    CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("CFLAGS"))'`"
-    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print("-L" + distutils.sysconfig.get_python_lib(plat_specific=1,\
+    CPPFLAGS="$CFLAGS `$PYTHON -c 'import sysconfig; \
+        print("-I" + sysconfig.get_config_var("INCLUDEPY"))'`"
+    CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("CFLAGS"))'`"
+    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
+        print("-L" + sysconfig.get_python_lib(plat_specific=1,\
         standard_lib=1) + "/config")'`"
-    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("LINKFORSHARED"))'`"
-    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("LDFLAGS"))'`"
-    LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("LIBS"))'`"
-    LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("SYSLIBS"))'`"
+    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("LINKFORSHARED"))'`"
+    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("LDFLAGS"))'`"
+    LIBS="$LIBS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("LIBS"))'`"
+    LIBS="$LIBS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("SYSLIBS"))'`"
 ], [
     dnl If python-config is found use it
     CPPFLAGS="$CFLAGS `$PYTHON-config --cflags`"
diff --git a/tools/configure b/tools/configure
index 96218cadc4..ae10f6cecd 100755
--- a/tools/configure
+++ b/tools/configure
@@ -774,7 +774,6 @@ infodir
 docdir
 oldincludedir
 includedir
-runstatedir
 localstatedir
 sharedstatedir
 sysconfdir
@@ -905,7 +904,6 @@ datadir='${datarootdir}'
 sysconfdir='${prefix}/etc'
 sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
-runstatedir='${localstatedir}/run'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -1158,15 +1156,6 @@ do
   | -silent | --silent | --silen | --sile | --sil)
     silent=yes ;;
 
-  -runstatedir | --runstatedir | --runstatedi | --runstated \
-  | --runstate | --runstat | --runsta | --runst | --runs \
-  | --run | --ru | --r)
-    ac_prev=runstatedir ;;
-  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
-  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
-  | --run=* | --ru=* | --r=*)
-    runstatedir=$ac_optarg ;;
-
   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1304,7 +1293,7 @@ fi
 for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
 		datadir sysconfdir sharedstatedir localstatedir includedir \
 		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-		libdir localedir mandir runstatedir
+		libdir localedir mandir
 do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
@@ -1457,7 +1446,6 @@ Fine tuning of the installation directories:
   --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
   --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
   --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
-  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
   --libdir=DIR            object code libraries [EPREFIX/lib]
   --includedir=DIR        C header files [PREFIX/include]
   --oldincludedir=DIR     C header files for non-gcc [/usr/include]
@@ -3397,7 +3385,7 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
@@ -3443,7 +3431,7 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
@@ -3467,7 +3455,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
@@ -3512,7 +3500,7 @@ else
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
@@ -3536,7 +3524,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
@@ -7852,21 +7840,21 @@ fi
 
 if test x"$pyconfig" = x"no"; then :
 
-        CPPFLAGS="$CFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print("-I" + distutils.sysconfig.get_config_var("INCLUDEPY"))'`"
-    CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("CFLAGS"))'`"
-    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print("-L" + distutils.sysconfig.get_python_lib(plat_specific=1,\
+        CPPFLAGS="$CFLAGS `$PYTHON -c 'import sysconfig; \
+        print("-I" + sysconfig.get_config_var("INCLUDEPY"))'`"
+    CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("CFLAGS"))'`"
+    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
+        print("-L" + sysconfig.get_python_lib(plat_specific=1,\
         standard_lib=1) + "/config")'`"
-    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("LINKFORSHARED"))'`"
-    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("LDFLAGS"))'`"
-    LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("LIBS"))'`"
-    LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \
-        print(distutils.sysconfig.get_config_var("SYSLIBS"))'`"
+    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("LINKFORSHARED"))'`"
+    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("LDFLAGS"))'`"
+    LIBS="$LIBS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("LIBS"))'`"
+    LIBS="$LIBS `$PYTHON -c 'import sysconfig; \
+        print(sysconfig.get_config_var("SYSLIBS"))'`"
 
 else
 
diff --git a/tools/libs/stat/Makefile b/tools/libs/stat/Makefile
index ee5c42bf7b..a968eaff48 100644
--- a/tools/libs/stat/Makefile
+++ b/tools/libs/stat/Makefile
@@ -73,8 +73,8 @@ $(PYLIB): $(PYSRC)
 python-bindings: $(PYLIB) $(PYMOD)
 
 pythonlibdir = $(shell $(PYTHON) -c \
-	       'import distutils.sysconfig as cfg; \
-	        print(cfg.get_python_lib(False, False, prefix="$(prefix)"))')
+	       'import sysconfig; \
+	        print(sysconfig.get_python_lib("platlib", vars={"platbase": "$(prefix)"}))')
 
 .PHONY: install-python-bindings
 install-python-bindings: $(PYLIB) $(PYMOD)
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 06:31:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 06:31:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604374.941740 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUGD-0004j0-4S; Tue, 19 Sep 2023 06:31:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604374.941740; Tue, 19 Sep 2023 06:31:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUGD-0004it-18; Tue, 19 Sep 2023 06:31:01 +0000
Received: by outflank-mailman (input) for mailman id 604374;
 Tue, 19 Sep 2023 06:30:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=72lO=FD=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qiUGB-0003Oo-MV
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 06:30:59 +0000
Received: from mail-wm1-x332.google.com (mail-wm1-x332.google.com
 [2a00:1450:4864:20::332])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 17d562e5-56b6-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 08:30:58 +0200 (CEST)
Received: by mail-wm1-x332.google.com with SMTP id
 5b1f17b1804b1-401da71b85eso58487245e9.1
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 23:30:58 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (cpc92302-cmbg19-2-0-cust781.5-4.cable.virginm.net. [82.1.211.14])
 by smtp.gmail.com with ESMTPSA id
 26-20020a05600c229a00b003fe17901fcdsm17068780wmf.32.2023.09.18.23.30.56
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 23:30:56 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 17d562e5-56b6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695105057; x=1695709857; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=g919MIKAx5+o9AO35iGPbruaS4fHlMldEN8yav8BWcE=;
        b=hpratWt2hxDKzaAwAL7070sUHJgWEwWM4F8+d7yHVZr7ejLJniIhy1j7yuspk3vJGl
         7QtssuUQBuxy0Q5v3ojjoKwmYSr4xF1QCWKPkQd+dC9/KaFaksRVuINaPLi3ldyOX4hh
         HHvkOhlK8p92xN5Fla9ju3r7/YxFTRenleVy8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695105057; x=1695709857;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=g919MIKAx5+o9AO35iGPbruaS4fHlMldEN8yav8BWcE=;
        b=wMS95TIz6pV0myGZvA1oScUcAWmwQvsOPc/kbojYlekxGwfwLzatR0Mf0caofr9Oly
         OUtAmvqxMr+iJ/utKLEOWzooVQPjUz22d9TvuILpDSVFcU/Fu0Hgpkg+Et27sv3Xpx6v
         X1NRE5HdyakUWtXNUJdxD4tfirfLFj79YwMY2K0R7THEl4h14GSSHo+Fb1hjnonmBSpz
         5Cso/99Eh6kEWidqJK+2m/QijC/MV6yK5nS5rHkCAbcmo5EkGZuKwIFHfH9U9CQ26k/m
         9k5FapuIL+/Bt/ELnZaYuHdUGjdol2Chc98nB4KZ2S8nEVT9EZK0WOR8SfMX9AvH4m8k
         Msmg==
X-Gm-Message-State: AOJu0YxEmEUiEQdFO+crmAaVIYoaqCi5tOvC4OjOB3XCIX5RFbRJ9J9B
	75DvSm9NuHbkQEDCa3TucL+w9eu58T83kr6RmP8=
X-Google-Smtp-Source: AGHT+IEoOuhldT/ru27XY4+XrosqgpSchXwnBkCf6HQeFWZOdoSoVccmrFmpW4UMah+9ZSKGVPijIg==
X-Received: by 2002:a1c:f204:0:b0:3fe:d57e:d933 with SMTP id s4-20020a1cf204000000b003fed57ed933mr9861362wmc.15.1695105057145;
        Mon, 18 Sep 2023 23:30:57 -0700 (PDT)
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Javi Merino <javi.merino@cloud.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v3 4/4] README: remove old note about the build system's python expectation
Date: Tue, 19 Sep 2023 07:30:29 +0100
Message-ID: <83e6857f16eb000f8368fcd9995e0411f0177c2e.1695104399.git.javi.merino@cloud.com>
X-Mailer: git-send-email 2.42.0
In-Reply-To: <cover.1695104399.git.javi.merino@cloud.com>
References: <cover.1695104399.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

5852ca485263 (build: fix tools/configure in case only python3 exists,
2019-12-11) changed the configure script to test for the availability
of python3, python and python2 in that order.  It sets PYTHON to the
first one found in path.  You don't need to have a symlink to python.

Remove the outdated note from the README.

Signed-off-by: Javi Merino <javi.merino@cloud.com>
---
 README | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/README b/README
index f75fa536d9..a491c8dce5 100644
--- a/README
+++ b/README
@@ -184,13 +184,6 @@ Various tools, such as pygrub, have the following runtime dependencies:
           URL:    https://www.python.org/
           Debian: python
 
-Note that the build system expects `python` to be available. If your system
-only has `python2` or `python3` but not `python` (as in Linux From Scratch),
-you will need to create a symlink for it, or specify PYTHON= when invoking
-make, like (note the position of PYTHON= matters):
-
-    # make PYTHON=/usr/bin/python3
-
 Intel(R) Trusted Execution Technology Support
 =============================================
 
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 06:37:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 06:37:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604395.941750 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUM7-0006qh-Qa; Tue, 19 Sep 2023 06:37:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604395.941750; Tue, 19 Sep 2023 06:37:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUM7-0006qa-MK; Tue, 19 Sep 2023 06:37:07 +0000
Received: by outflank-mailman (input) for mailman id 604395;
 Tue, 19 Sep 2023 06:37:06 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=72lO=FD=cloud.com=javi.merino@srs-se1.protection.inumbo.net>)
 id 1qiUM6-0006qU-Fx
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 06:37:06 +0000
Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com
 [2a00:1450:4864:20::336])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f2a67161-56b6-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 08:37:05 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-403004a96eeso56388285e9.3
 for <xen-devel@lists.xenproject.org>; Mon, 18 Sep 2023 23:37:05 -0700 (PDT)
Received: from EMEAENG6DZjqCfH.citrite.net
 (cpc92302-cmbg19-2-0-cust781.5-4.cable.virginm.net. [82.1.211.14])
 by smtp.gmail.com with ESMTPSA id
 f13-20020a5d568d000000b0031fd849e797sm14441453wrv.105.2023.09.18.23.37.03
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 18 Sep 2023 23:37:04 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f2a67161-56b6-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695105424; x=1695710224; darn=lists.xenproject.org;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date:from:to
         :cc:subject:date:message-id:reply-to;
        bh=YmV6sdTaKR0TrFgSc5YWSd0XWZ7cK6cdDHoIHYLMZ0s=;
        b=GwBl/G8bYeM127EjPElLTp0bLPlplp12/tmm9lOh1EeV43FbCtVXCGJ8Nho8PRVZN9
         u3pTsO8gYebRAj7ACrJWqEJeB61QOC6lsHCl3Sc04DS0VTEAOj4UKNNHMacNoCLjDAd+
         1m2MTDB56CINk/lK3+CtC6B2ahkQEOZGyIYJA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695105424; x=1695710224;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=YmV6sdTaKR0TrFgSc5YWSd0XWZ7cK6cdDHoIHYLMZ0s=;
        b=s4VHhFRH85NahnOGK2uWEi12tbLn5Kbu4xkwLaANkutoITo12sRL5oDGU0kARonsMZ
         WgkW1akM/+EajduXDR+9KiZQRD34g68ArT7lYVhOKnsqkj+UTkjdKW4vQqlk4/7hS4ND
         X14/ObrjHVBi6ciBgGL3UTcod6FvqdJwTiUu/JDQVDanVue2yG8xj7g00beg1UZRlJd5
         UEMi9AxKkDNxQWT1yBDFhU/yCq/OJcn8zdUpP6o5HWMidJI8rCyPVsO6AqLqX52NmLFi
         MocYkGpn2Duyljep5Eyz2n4DfN+gZbxyQQUb5iVd9xOBK+IhotMDnhqDz9pFGY/2NwKl
         JbwQ==
X-Gm-Message-State: AOJu0YyOxGzqFGKfEKUgkt/dao6Qmmz9/0mI3aSFFKMIALq6JdlE5RQ9
	Gr9NUrrIp5UqLslUFVTtIs97rGk0kfWbUXsCu3A=
X-Google-Smtp-Source: AGHT+IE6WPzFgMdAGhyBneLdsYA+QQnJc94Iv2T+2hi6sOcNO6IiKEK/QImU89luROIRIqy2waYA+Q==
X-Received: by 2002:a05:600c:2218:b0:401:be5a:989 with SMTP id z24-20020a05600c221800b00401be5a0989mr9033357wml.23.1695105424616;
        Mon, 18 Sep 2023 23:37:04 -0700 (PDT)
Date: Tue, 19 Sep 2023 07:37:02 +0100
From: Javi Merino <javi.merino@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: 
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, 
	Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, Juergen Gross <jgross@suse.com>
Subject: Re: [XEN PATCH v3 3/4] tools: don't use distutils in configure nor
 Makefile
Message-ID: <sdso5zzhr5ydrydyr6j4hey6ge7ilwu4vntcwjrpy3sd34mz7l@q7tfs53u2kkx>
References: <cover.1695104399.git.javi.merino@cloud.com>
 <9647bf6e5ae1f06ed95db3f9bd67920dfb6b613b.1695104399.git.javi.merino@cloud.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <9647bf6e5ae1f06ed95db3f9bd67920dfb6b613b.1695104399.git.javi.merino@cloud.com>

On Tue, Sep 19, 2023 at 07:30:28AM +0100, Javi Merino wrote:
> From: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> 
> Python distutils is deprecated and is going to be removed in Python
> 3.12.  distutils.sysconfig is available as the sysconfig module in
> stdlib since Python 2.7 and Python 3.2, so use that directly.
> 
> Update the README to reflect that we now depend on Python 2.7.
> 
> Regenerate configure after the m4/python_devel.m4 change.
> 
> Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
> Signed-off-by: Javi Merino <javi.merino@cloud.com>
> ---
>  README                   |  4 ++--
>  m4/python_devel.m4       | 28 +++++++++++-----------
>  tools/configure          | 52 ++++++++++++++++------------------------
>  tools/libs/stat/Makefile |  4 ++--
>  4 files changed, 38 insertions(+), 50 deletions(-)
> 

[...]

> diff --git a/tools/configure b/tools/configure
> index 96218cadc4..ae10f6cecd 100755
> --- a/tools/configure
> +++ b/tools/configure
> @@ -774,7 +774,6 @@ infodir
>  docdir
>  oldincludedir
>  includedir
> -runstatedir
>  localstatedir
>  sharedstatedir
>  sysconfdir
> @@ -905,7 +904,6 @@ datadir='${datarootdir}'
>  sysconfdir='${prefix}/etc'
>  sharedstatedir='${prefix}/com'
>  localstatedir='${prefix}/var'
> -runstatedir='${localstatedir}/run'
>  includedir='${prefix}/include'
>  oldincludedir='/usr/include'
>  docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
> @@ -1158,15 +1156,6 @@ do
>    | -silent | --silent | --silen | --sile | --sil)
>      silent=yes ;;
>  
> -  -runstatedir | --runstatedir | --runstatedi | --runstated \
> -  | --runstate | --runstat | --runsta | --runst | --runs \
> -  | --run | --ru | --r)
> -    ac_prev=runstatedir ;;
> -  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
> -  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
> -  | --run=* | --ru=* | --r=*)
> -    runstatedir=$ac_optarg ;;
> -
>    -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
>      ac_prev=sbindir ;;
>    -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
> @@ -1304,7 +1293,7 @@ fi
>  for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
>  		datadir sysconfdir sharedstatedir localstatedir includedir \
>  		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
> -		libdir localedir mandir runstatedir
> +		libdir localedir mandir
>  do
>    eval ac_val=\$$ac_var
>    # Remove trailing slashes.
> @@ -1457,7 +1446,6 @@ Fine tuning of the installation directories:
>    --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
>    --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
>    --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
> -  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
>    --libdir=DIR            object code libraries [EPREFIX/lib]
>    --includedir=DIR        C header files [PREFIX/include]
>    --oldincludedir=DIR     C header files for non-gcc [/usr/include]
> @@ -3397,7 +3385,7 @@ else
>      We can't simply define LARGE_OFF_T to be 9223372036854775807,
>      since some C++ compilers masquerading as C compilers
>      incorrectly reject 9223372036854775807.  */
> -#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
> +#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
>    int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
>  		       && LARGE_OFF_T % 2147483647 == 1)
>  		      ? 1 : -1];
> @@ -3443,7 +3431,7 @@ else
>      We can't simply define LARGE_OFF_T to be 9223372036854775807,
>      since some C++ compilers masquerading as C compilers
>      incorrectly reject 9223372036854775807.  */
> -#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
> +#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
>    int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
>  		       && LARGE_OFF_T % 2147483647 == 1)
>  		      ? 1 : -1];
> @@ -3467,7 +3455,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
>      We can't simply define LARGE_OFF_T to be 9223372036854775807,
>      since some C++ compilers masquerading as C compilers
>      incorrectly reject 9223372036854775807.  */
> -#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
> +#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
>    int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
>  		       && LARGE_OFF_T % 2147483647 == 1)
>  		      ? 1 : -1];
> @@ -3512,7 +3500,7 @@ else
>      We can't simply define LARGE_OFF_T to be 9223372036854775807,
>      since some C++ compilers masquerading as C compilers
>      incorrectly reject 9223372036854775807.  */
> -#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
> +#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
>    int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
>  		       && LARGE_OFF_T % 2147483647 == 1)
>  		      ? 1 : -1];
> @@ -3536,7 +3524,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
>      We can't simply define LARGE_OFF_T to be 9223372036854775807,
>      since some C++ compilers masquerading as C compilers
>      incorrectly reject 9223372036854775807.  */
> -#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
> +#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
>    int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
>  		       && LARGE_OFF_T % 2147483647 == 1)
>  		      ? 1 : -1];

My copy of autoconf 2.69 generated these hunks that are not related to
the changes in this patch.  I have decided to keep the output of
autoconf untouched for the patch, but I'm happy to remove them if
it is unwanted noise.

> @@ -7852,21 +7840,21 @@ fi
>  
>  if test x"$pyconfig" = x"no"; then :
>  
> -        CPPFLAGS="$CFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> -        print("-I" + distutils.sysconfig.get_config_var("INCLUDEPY"))'`"
> -    CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> -        print(distutils.sysconfig.get_config_var("CFLAGS"))'`"
> -    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> -        print("-L" + distutils.sysconfig.get_python_lib(plat_specific=1,\
> +        CPPFLAGS="$CFLAGS `$PYTHON -c 'import sysconfig; \
> +        print("-I" + sysconfig.get_config_var("INCLUDEPY"))'`"
> +    CPPFLAGS="$CPPFLAGS `$PYTHON -c 'import sysconfig; \
> +        print(sysconfig.get_config_var("CFLAGS"))'`"
> +    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
> +        print("-L" + sysconfig.get_python_lib(plat_specific=1,\
>          standard_lib=1) + "/config")'`"
> -    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> -        print(distutils.sysconfig.get_config_var("LINKFORSHARED"))'`"
> -    LDFLAGS="$LDFLAGS `$PYTHON -c 'import distutils.sysconfig; \
> -        print(distutils.sysconfig.get_config_var("LDFLAGS"))'`"
> -    LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \
> -        print(distutils.sysconfig.get_config_var("LIBS"))'`"
> -    LIBS="$LIBS `$PYTHON -c 'import distutils.sysconfig; \
> -        print(distutils.sysconfig.get_config_var("SYSLIBS"))'`"
> +    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
> +        print(sysconfig.get_config_var("LINKFORSHARED"))'`"
> +    LDFLAGS="$LDFLAGS `$PYTHON -c 'import sysconfig; \
> +        print(sysconfig.get_config_var("LDFLAGS"))'`"
> +    LIBS="$LIBS `$PYTHON -c 'import sysconfig; \
> +        print(sysconfig.get_config_var("LIBS"))'`"
> +    LIBS="$LIBS `$PYTHON -c 'import sysconfig; \
> +        print(sysconfig.get_config_var("SYSLIBS"))'`"
>  
>  else
>  

Cheers,
Javi


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 06:47:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 06:47:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604407.941760 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUWF-0001J8-S3; Tue, 19 Sep 2023 06:47:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604407.941760; Tue, 19 Sep 2023 06:47:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUWF-0001J1-Ou; Tue, 19 Sep 2023 06:47:35 +0000
Received: by outflank-mailman (input) for mailman id 604407;
 Tue, 19 Sep 2023 06:47:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiUWF-0001Iv-9S
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 06:47:35 +0000
Received: from EUR03-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur03on20611.outbound.protection.outlook.com
 [2a01:111:f400:fe1b::611])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 68e964de-56b8-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 08:47:33 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8825.eurprd04.prod.outlook.com (2603:10a6:20b:408::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 06:47:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 06:47:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 68e964de-56b8-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HKCs9UeDoRJvGOLy6CFw6P5rtLrJBH+no0iKHixdsj7PgKDHgEMaAaZV4UGayMqyOu22DBp5eQRjwQlUSQgsQvxYYVoxd3OS2+5E/P600ZfJIRf0CCq/0TNxe7W6STY/MAef6gkOvBerbso4It0L5v1rNdDjRfvZLOV67Bj/avL7nLXRurn1ipMpqEmcXR2b66hi0TuiZ0VDOw1us3M1Bn95EjAHy6y/Bah4dMfWheQ1NJ2VDixEEVcbFyxPR2zFCgfEeSoLhgRj0f4w76Epn2efCFnUPLfMAUCnUyi6m1crW8N5nd6Z1sM+7IXcgMWI2ndCKlVj+/yXclmKihsZsg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=79sXZoYBfnwKNFILBQD5fvtwPml9DKd9rKt1nKZ8gqY=;
 b=IkNdTqXIVP3l8A17Fp69WqY93lsU/Ubeiox/lbgx20il45vco+AumxNOVMwX8vFvIX8Y/vNpnhMrUEOM7rSeJVrnWNWNXQQmtVedot9cM+98rlvv1tRppUOfl24RKMGXZpRU9FXxFptCvGHJzdEqXiDU3Llc+i06WXc6d6Z2nsWxsy/IjfMsITljamVwznCz5+Srr+xAF4+gtY0QsDNfM+S6kwntcoov3cN+y6y4anR4UqWBBLwrBUIcP5ZGR++8N3bwJ3cgqmA0GEqXp3e/tD6JrS4kl52o9K1HT3E+wLK6SjdRVraxAVoebecfoTCfmx5yvmCViduayqoylqQfKw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=79sXZoYBfnwKNFILBQD5fvtwPml9DKd9rKt1nKZ8gqY=;
 b=jlW4r/KUPHhMxyPxbi14roCQ5i3skfc8DQycRqTiQE4ziPQ4wCbNgZQpZmEROW3bwUFhSyKN0yetDRyQ8eqWtVrNbhqgVo69r5o9TBx6OslKHvSCIlfjUwbWdOiBfZcXlJk8IZG6nO179RYXjDnoBZczUQxT52Uxidt60tjwJFsHP+z+VUMpOG4xC+oTTEBuvTYOsuv/ji2ATF/FRmwNpRVIJwDhFeCwuQ/i9d497daJpn37uewzIGsh2CszLQ7en809IiLUa2fNGof8tZB5KSFk5ncbeRNelIoptpkHUkrd7WHdEtqNj6sZf+Rc58rEtPhFlt+cfFCdgFbzhr1iPg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <fa6416e2-330d-4112-5db3-8dea3f541020@suse.com>
Date: Tue, 19 Sep 2023 08:47:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: xl dmesg buffer too small for Xen 4.18?
Content-Language: en-US
To: Chuck Zmudzinski <brchuckz@netscape.net>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Julien Grall <julien@xen.org>
References: <b20bdc7e-4c07-4bde-b206-4142310211d4.ref@netscape.net>
 <b20bdc7e-4c07-4bde-b206-4142310211d4@netscape.net>
 <9baf6bec-49c6-474b-a5e3-5f0473aaffc7@netscape.net>
 <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0145.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:98::17) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8825:EE_
X-MS-Office365-Filtering-Correlation-Id: 0daaedb9-75ca-4bd4-4ad5-08dbb8dc4bb2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	x6kbimtk3MEZ1olUhWfKqxIG9gy1f5rvQqPEds7XAYuWecUpiB8L+dsjHeg3a/prugNOzdIiIcW3kM8mp6XuXFHqY3q4YtaSfhDFKlsgm23TxDGZS0AOf1Mw1NTjBvUdv2QrKkbgj/yPdyZ72bCDKZ5FzzMUv3jrUeNVue1HuUeJDKK8M0WEY4VOnBoRJt5etGM/TtXW9jv6HGto/Gadj/cP24oZ6jKojhNWnK6av39W/CTELz9233cUkBXf8hQG4yUnA9s+zGuo/+HOQ07oglZxgLzmufdW7Bt73W4kKlyz+XUoBHX3vpp9sao717feJI6dtaiox9ODhBmE+GVspAXWPtMoTOi1o8ap1iFZIg05ZVzUFDcnM6rnsuEx7Wder1acz2aKCGZ2XpHdO0IF7h/8XIxDUCQty1naYC/AEysgSZXKxc+PsC+9Lar9lYS6SznDGI9HjqJ/AHDrx8L88KKaYYV31BIoRRK6zheeMZ0xegyMp/owCFI51ozNAnKdfIyvUe2g31mHJd7Lyzick4iSnRHBUia/T6jnqnSpwq+7v4xXL9Ku1HbKhIWqqq2HbaZFn20UL65YHgJRUatlGFUCTDhKQzgIINv/coXxVgGAbSvoQ5E08x4c0XEx9b1um20ksRTwzrBK1ZtOySxrxVqwwxIGyDlXuTguNNpa0F+XY0plJjbrsHlGy7YFflHn
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(396003)(136003)(39860400002)(366004)(186009)(451199024)(1800799009)(316002)(41300700001)(54906003)(66476007)(66556008)(66946007)(6916009)(8676002)(8936002)(4326008)(6486002)(53546011)(6506007)(966005)(6512007)(478600001)(83380400001)(2616005)(26005)(31696002)(86362001)(2906002)(38100700002)(5660300002)(36756003)(31686004)(160913001)(15963001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RUgzUUxUTjk0VmJNVWVteTE3d05LKzRUYnE4TTVXajN3bEdvM1Y5Q2lVVDls?=
 =?utf-8?B?TDNXdHpEL2Z3d0JtZFlCWTJCbzVtbmdieTBFQzNyb3hqS25Vczd5NTRVc1U2?=
 =?utf-8?B?MFZnYkE3Rk1UR21Telpjb3hycDY3azlrNEJidUMzK3VUYmg2QVFadlBWZjV3?=
 =?utf-8?B?MGcwTjVqVkJCWk80c0x2N2dJU0JoV1ZrVENSNWVOeTFMYmtGdEdMbnVXVDRu?=
 =?utf-8?B?MWFWSmVPd0FwMDJybUluT0R1QXY2c2xHdXF5aGRRRkJ1d0ZUMm16SUROK3pK?=
 =?utf-8?B?eGNTQkZhelVFc1ROTXdDMFJ3SytqV01yQmFJVW5pWGkzYzZMZUwyK093djl6?=
 =?utf-8?B?ejMvUjB4RlUxMFBFcDZXQTJZeUF1RjVsdGNkbGpsMnY0Q25aZUNycGVXREhm?=
 =?utf-8?B?MXUraktYUDkvWC8wWVFPWmxmV2N0ME5PRlREdkhwSVZQbUJJMHlDaytsZGtV?=
 =?utf-8?B?TzZVZC9VSkpZeFBrNVF6NXdPMnhiSk1Xb0FlNmNpRUhiem43NCtIZEVuZlNJ?=
 =?utf-8?B?Vk5zOUdOTExKSldXdzFCK25MYTFoenVaZU05bldqRTJxejVWZFY5RVZxRkoz?=
 =?utf-8?B?VEtEN3RnRnB5YVE2azdMTXRHZHNVN2dJVmhIYjBhTDduTEEyczFCRmludFZM?=
 =?utf-8?B?Yy9DSWhVYXpLYWRzNmtKZm12SkZTaFlQU3RCWXB3WDFmbExXUjFpcDEvcVE5?=
 =?utf-8?B?TU5wK1dBTUVHVDNXZHNLLzBuOFpFUDlKOVVwWDZiSEFOcmFwL1RNQTJWTXJW?=
 =?utf-8?B?Mm5LTmtxQ1hjWmRGYVRkY05nOFNuUGJ0V3hSOHVMUXAzVGpYb1BCdEVyUHJ2?=
 =?utf-8?B?czVrS3lnSG9MWndUdlUrU1ZuTTI4LzFucUIzbm1SeHZFVmNISnluZlBpT1lP?=
 =?utf-8?B?Sjd0V0Q0dEZ5ak1ZQSt0OFhaSE9GTEdaVW9GU2ZIRVR3akdvc29hODVWaWtk?=
 =?utf-8?B?eXhHYWIrWXBrVUhVTXpQSWFET2s4cU5jdzdab1pScFFRR0JLVnViSGZ0aW5V?=
 =?utf-8?B?aVovM2VsV3Bhejh3d1dyU3g5VHRjOXhZa3czVDR4eUlJdlhIK04raDZCN0Zk?=
 =?utf-8?B?NXhPNEIrUytMZkgrcS96VXU4YXVnbGZBSFprWkZDYlhoTUtIYWNXT3lKaGhK?=
 =?utf-8?B?bE5obmtaMkp0dXFDdndkNzQxa0loMFE3MXBQaWk5TmxUcXJKVE5CWUc5RjZT?=
 =?utf-8?B?SFNrUnAzRURkYnVYQjlLNzFEVFJHdjJueExIenhUU0ZEL2hCN2hZNENVRkx2?=
 =?utf-8?B?bHlVSyt3ZmNWY25SUE5wMWNmMFpoaW8xRlJ6WVlkSEhsV3pBL1c3QzQvMnpw?=
 =?utf-8?B?N0Y3SkRHNWNMSkVVUU1iMWVzaXE4V0xveXMvaytCYm9zOTVHODhqL29JMXU4?=
 =?utf-8?B?cEp1VCt1cElMcG9CQzZYVnR6WnVLN0lFZDgzQ1FaNTZsUDZHWms2eXlDRlBU?=
 =?utf-8?B?SXZobkdDRk1hUWl6L01aaERJY3hyRkhwNW5BbUhVMDdubmlnMjV4RUJSUkNp?=
 =?utf-8?B?bzhaalVKMTJOVG13RnZsSGlRVGZYNlY4aG93akhjRSs1a2hKTkZBWDVWQjhM?=
 =?utf-8?B?MlV5ZndnZmNWTU1RNEtzWGxXWVo3cHh1NHpyd0NuaFA2anM1VGp1MFZ6b0Iz?=
 =?utf-8?B?NmZKNmZMemxmNjhsVVc1ZGo5K3RqTjArYkFyRnd3bEplMnJjbjA4RTRtNXVq?=
 =?utf-8?B?QVNjSGp5Uzg0S0xhdnVEc0Fzb21NREE4TExFa3grQnJnazJEcUJsbHI1MDNZ?=
 =?utf-8?B?Tk9nNTRXSUEwMFdTdFNJTzk1cVFnQXZQSEh2V0ErdGNnbGZkR1BZYTNFVThV?=
 =?utf-8?B?cWlqUFplV1lRNzZER2M3NUZseU5vMW14S3grK3ZtbGJUbVlXQkdWakh6dUR0?=
 =?utf-8?B?Z2JGbjRWS1BRdzZxcWw4Q2VDRzB5aldOUHpTYlVxKzVQd2Y2bVpGbUY4TzUx?=
 =?utf-8?B?NXkza3FkQlNHYWZOdnFXRU83d3ZHNzNFV1hpdEV4cThYRlk4TGFSWm9XVlo4?=
 =?utf-8?B?MkI2YTFYcnNZYjRqSDVyRjQxTkNZYUhnSU84MlVKczlKQ1ZZaXI0R3JHWUgv?=
 =?utf-8?B?QmNHS1BtaUc2dlE5Qmk3SHRuOGtrbW9mdVpiM3Y4MVdXZmVMczJPOVpMOGYv?=
 =?utf-8?Q?oy7RQ49uXZphTisQSpF3yyjGI?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0daaedb9-75ca-4bd4-4ad5-08dbb8dc4bb2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 06:47:30.7640
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: AjWKbkQbaYRDISKVEioiuuu6287D+3Kvij4RAIsLJdIQCjgwXw/EQwjGXat6IA40YYwaOQFip/kZUC/wTlpfKw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8825

On 18.09.2023 20:49, Julien Grall wrote:
> On 18/09/2023 19:17, Chuck Zmudzinski wrote:
>> On 9/18/2023 9:00 AM, Chuck Zmudzinski wrote:
>>> I tested Xen 4.18~rc0 on Alma Linux 9 and my first tests indicate it works fine for starting the guests I manage but I notice that immediately after boot and with only dom0 running on the system, I get:
>>>
>>> [user@Malmalinux ~]$ sudo xl dmesg
>>> 00bee72000-00000bee72fff type=7 attr=000000000000000f
>>> (XEN)  00000bee73000-00000bef49fff type=4 attr=000000000000000f
>>> (XEN)  00000bef4a000-00000bef4bfff type=7 attr=000000000000000f
>>> (XEN)  00000bef4c000-00000befbafff type=4 attr=000000000000000f
>>> (XEN)  00000befbb000-00000befbbfff type=7 attr=000000000000000f
>>> ...
>>>
>>> I have noticed the buffer fills up quickly on earlier Xen versions, but never have I seen it fill up during boot and with only dom0 running.
>>>
>>> Can increasing the buffer fix this? How would one do that?
>>>
>>> Thanks
>>>
>>
>> I see the setting is the command line option conring_size:
>>
>> https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#conring_size
>>
>> The default is 16k, I tried 48k and that was big enough to capture all the messages at boot for 4.18 rc0. This is probably not an issue if the release candidate is being more verbose than the actual release will be. But if the release is still this verbose, maybe the default of 16k should be increased.

Just to mention it: Log-level defaults are different for debug and release builds,
which means release builds are typically less verbose.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 06:50:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 06:50:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604412.941770 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUZ0-0003BH-8u; Tue, 19 Sep 2023 06:50:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604412.941770; Tue, 19 Sep 2023 06:50:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUZ0-0003BA-5u; Tue, 19 Sep 2023 06:50:26 +0000
Received: by outflank-mailman (input) for mailman id 604412;
 Tue, 19 Sep 2023 06:50:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiUYz-0003B4-DG
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 06:50:25 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20618.outbound.protection.outlook.com
 [2a01:111:f400:fe16::618])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ce2e484f-56b8-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 08:50:24 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7959.eurprd04.prod.outlook.com (2603:10a6:20b:289::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 06:50:20 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 06:50:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ce2e484f-56b8-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AFEg4adyJ8g/ctDtjTW7HXBGzsxVJUOkyIbljLDuJztne7Ziw4Yy5uMq32uiSLiuL1eBkIRSwxvAk0MuZ7A78f4AkPa8NjdAyo0ljkmZ300sFSHvc43uoenl5rz1QX7N6DnMAIWEEi7Ho5NgJvVAk1dr1bniFQVOB8cZvfN1SPKWuPajiRI/2Nk73aQmscOsx6YAdvyiKylyvNmMb6BlRrr+pX7bkILuYrmtMzHvst3k7JYM0KCKbImffKrW+nzEtKJx7M1uLGovCRKJFHMlbGaANnfMwAf041V0hdFEGzIeiMl7tZu7DPw21lr/2A7aB5x3mPu7RwJGtEQrQW2Mjw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CFhp9GM0eXU5zgyUcsybJm4r529sv8FPjU4UvhhI+N8=;
 b=BOoI5aWj+lhvgFCG408ZloL9Sa5pEp+Lwny2DH2g8e4qhj1vB4VGmaB2hSME8NkZxT2JUo4KN9jlXdsQDRXDoH/pXW0s3TaUgLRJkbnaSxuJQWiIQO5Eee3LT2UNfH4+e6XtHetVjmmw8q/u3GH8tREvcAHtaKZVAYYj6w6fa21TuRnJ2j4EZKYtlLQHpIHeBQbu0PNa79cvLQJm3BTiCeuZoWj1sgFznuNebHmVIcfXso8Tupe9Vjk6r7DCKpeInx7u7IQfR/jTPmcUR5oslY6L+4oNUU5SvPzTuW2s+xVhCIZmhE7VJQauNTIld1O/uC5a4CEGn7nol+PLX5QejA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CFhp9GM0eXU5zgyUcsybJm4r529sv8FPjU4UvhhI+N8=;
 b=3Y3v7yd4ImSfZ0+tPxLbBxmRehFI/xHOQQJOD2ynh9+8i2C6E0Wv0saQkfadaegcQovagwgGnR8XG5PVzFk6rFC2KOA9+dR9p2k2Mi8xlSqHdSiB3Sc0SMWJ9zNiEevLzsmLY8OVbbKGGt+0XnXoQxmzWPFeMPY6R5CJ3AnUT7OwTHUz/JgabL0iP2SLpXR2BdqbrOqTFzv9DNCNDfA7J1T26rhf2wMKgprEX2gNbS1tnh2JGErB9qKpco3dTup6uJU89jH84FdHCIewUYK6KQI7iIVoHgvSjsPOX8M5fwdnNfO7ewn5b7ue3r2xxUyr4vV8jXFES//dx3eQh2u+6Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <dff889ef-ec24-2cac-5565-18376f5e331b@suse.com>
Date: Tue, 19 Sep 2023 08:50:18 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH v3 4/4] README: remove old note about the build
 system's python expectation
Content-Language: en-US
To: Javi Merino <javi.merino@cloud.com>
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1695104399.git.javi.merino@cloud.com>
 <83e6857f16eb000f8368fcd9995e0411f0177c2e.1695104399.git.javi.merino@cloud.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <83e6857f16eb000f8368fcd9995e0411f0177c2e.1695104399.git.javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0132.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b9::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB7959:EE_
X-MS-Office365-Filtering-Correlation-Id: 59d14d2f-fec0-471c-56f5-08dbb8dcb0fa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ew3UhRfuWY3reEIwJQB0nRVygS0+UR8gVLpZAKhKrqteAXC9hPtC8ObtPlqRIuxGJCjJYlBuZRz7XBcS49+DMrc+BC9fFxZO/x5k2Eje8SVCbK2GwNeELVfReUnR8Ca98dkKnbTQnpU+dozhrdoSH91rbAoR1t3zb+ph7ZlIu3PAu9K4Scqtj7mWkGmdcGd2fAfZEydmFpk+PmBeZY6gVriK/515Ocu0UnVzVPaGAxlYAlN5zgnsJ/oaNOq4AaZQD87A9B5sUPaPhhyrtfVjAq1EqJC2/FCjWn0bwpJDvc6FoPpLj6WYUURGM++r9HyRIarDcuAMr2ALT+5AjWuPhAaGEc9UW+k4gj0L0Pg5N2XPIgK71BnrGp4Q+c+EN1FVPdgZKyUQxjcvdG1yuSgDzaDhMp1O3qUfl0y9ma6gqPmrhE/Jb5nDKve5xGlbwp2GPq8qBP2ar7OuD3kaA0KdniWh22LmvDwJ9yi6cQ3tCCB7AfdugGfZlBjoXgpR+52o1EQXqFmuPiu0QARY2v8MdMg3ARzfRbrVP4M3Lbb71kG2oY9q2q5inSz3bEgsLqv7/aR+1+CUy14rjlf/P906IqH3/c092Z0aij/2sSPazrUEomnOYJxjdN2d5kkvLQ0ZAySvS4stpT+mhGxGDC9ZUw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(396003)(366004)(376002)(136003)(451199024)(186009)(1800799009)(31686004)(36756003)(38100700002)(86362001)(31696002)(6506007)(4001150100001)(53546011)(478600001)(2906002)(66946007)(66556008)(54906003)(5660300002)(66476007)(8936002)(4326008)(8676002)(6512007)(83380400001)(316002)(41300700001)(4744005)(6486002)(6916009)(26005)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WWoyY3ZWM2xpdzdLZk5OdUtoWEJIaTFaWHNqQVZGZXJHbHAvS2kzdUxKUy9K?=
 =?utf-8?B?SGxjaUxVOTBhcE4rREdDR0dMRG85RGlkMjlWTnVmL2RRalZ0V3lEeGFVZGdr?=
 =?utf-8?B?TUMzYW9zZFlVK0Q4MVF0SjV5YWZ1bk04dnVxdnRqdDhHeHFHUi9aOUJFUWVD?=
 =?utf-8?B?UXZneUYxZ0hpMjcreXpHdXdPWlhNUHlLT2ltaHZYaUczaGlsSldHQ3VXQUlK?=
 =?utf-8?B?eHh1VU9zeWJSVmVTanNEUEdDYkRpM2lKNUpJd0xWcS9GQkxZaU5RYTZRRDM3?=
 =?utf-8?B?SmNSM1JObU9mV1pvV2xSR3ZFUHExY0JVZkhGTDZDOGRnWEh1WkExeVpIanp2?=
 =?utf-8?B?MjlpQkk2R1Z1YUFTZ3BJTnhzWFZHckhXbENhRVJOOVViL0k1N09VOUQ3TlZ6?=
 =?utf-8?B?TDdNK0huWWlGTTRzMVlmVnNQN0JHMVJ2NUJHR1M2OUdZVUJMMXJmejZJWnVo?=
 =?utf-8?B?WnY1cDNLeTZrdnF3K2hPa3NQL3ZWUmdvTEdRSzR1SkR0N0Q0SDNlR1BWblp6?=
 =?utf-8?B?RkJUWU5QYzlkdkVVbnk3NXp0Q1JDbGZPUDZSNWp4and3aTZ1QTdubncrZjR6?=
 =?utf-8?B?RDFkS3l1YnFZV3VWUXlZUmVGa2ZoUDNONzRGdXdrajR4SU4rKzhWeWdaUU1l?=
 =?utf-8?B?V282OEJpUDNBSjZQTkxPd21rK0lPU0s5Ui9SM1prcUxpZitGUG55eENDdUhR?=
 =?utf-8?B?cnMzS1ZXVHc2RGI4MXJWOUJIQVVsclRjOU5yK1UzTVh1UnVrM1BJdS83RTFk?=
 =?utf-8?B?VE5VbFpITUVnb2FsTS9pT29iSUNQVnhtTlVhZjBMSHZIVW1PeEVXVS9zdUUy?=
 =?utf-8?B?WkFnaUNwNDZYcDJSQTh3cjhDc1V2eStiSlpaY2hNUU1lYmMyUUJKVjNCeVRk?=
 =?utf-8?B?K2VWMS9OaVZuVlhpcVNvcEIzMXNtUHA1MTV4UW5meXVYYk91SHRUTG91Yksy?=
 =?utf-8?B?bTZvQ0hWK1g1QkpvVDlxdzUvdFF0Mkh3R3NXSFQzV1NsTG1jZ3hIQ0w4Q04y?=
 =?utf-8?B?YWQvMEFVTFdHb08vNHhRcllEaU9rV2VHbnp1bUh4a0VOWXRKL3NKS2JPY0pR?=
 =?utf-8?B?M1laUS9xblFYaDRLRnNWbUZHTldvZHc3c1lkR21DWWJwd29QS0h1cG96YVZo?=
 =?utf-8?B?bWxnd2FTWDZnWnVrMWtiVjlGZ2c2K2poME9SRlFyYjRWZ0FPYmV3cFZEaVFq?=
 =?utf-8?B?OVdMY1o0bUpVSmdtNG5GSHJlRHVsdlEwTVFvWjd0UVltcUcvUjkwVEY4eUZM?=
 =?utf-8?B?MkRGL3kxWWxNc3lIT2pWcW9HVk9DN003eEpMRXVBUHFUeXltNDdZQ2JNWU5X?=
 =?utf-8?B?cEd4M0ZBSU1HK0VuTWVRMlhmRnAzbVhPeDkvSHBZVDBqQlVaV0sxMW5qRHB4?=
 =?utf-8?B?dlJtMFlqOFc3RmFBWDlDRVlKZ0Y5V2Z0b3pzb3dja3dSZ1Bmb2FONko5aDMv?=
 =?utf-8?B?bXpKYXJXWndtRWd1ZEhEanRqeURLbTZEOVNaNFVMRXh2M1B5cG5QazZVaUl5?=
 =?utf-8?B?cDB2M0JKWWV3N3pEc0lKUlh1WGFYdU54OWJlTitHNU0wMjhJRE9FKzFtVE1y?=
 =?utf-8?B?cml5ZWdlOU1HNDFWVTh3UHpxelcxejZjdmE1bHljcm82RDh1Tmk5cVVIdmUz?=
 =?utf-8?B?Q2FkR3V0NzFPTVJiR2hCaUE0Y1pRMDF5R3BLWDUyS3UzR0ZJdU5tNUlnd050?=
 =?utf-8?B?aVUxb2IveGNhRnVQWmlkdmpLWmhkbTRoNE9DUDhxUythSmhBN1lmdXlYdlJz?=
 =?utf-8?B?M1NtTVI1OG15TUFHdmtCYzB4NEdBa0FVTTcvaDl2Y0xkVTJSU3F1cGZFSU9D?=
 =?utf-8?B?WWptUVJqK2V3UFZtWDRyc0pyK2RWWVZITGQyc0d6bkhzUnVORmt4blpDSnRl?=
 =?utf-8?B?a1k3QUhaOXJibGVNcThYL2JGUnBnNjRpZjRYMWxDRmk5OHRlaUtpTUUyVExs?=
 =?utf-8?B?dXJ2OUtxSlZINjhWWjA5cVM0MHlJUG0zTHVWbjhhODZBVlREMHRzU1YyOUZY?=
 =?utf-8?B?ZGZJMUQvOEgwQk1zWVZDUFpzQXF6bDl4akNQbTJ5NVI2V1kyeXVjVEFZQlcx?=
 =?utf-8?B?RHd6aXdQQkxMSjIwYTVnRWtQKzBtamRHOFV0cHMyclh3TlBXQkpqc3ZJSHBJ?=
 =?utf-8?Q?jDucQfneb1OZidAlLuJYGTs6T?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 59d14d2f-fec0-471c-56f5-08dbb8dcb0fa
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 06:50:20.5630
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tpMDNTUKcT1cEEwzhFS0289dGEt66Enm1PmVbAoQtRSlmtvX3oyTkmpc6mtNpurJqByk0KaeYC1v118tO9nP4Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7959

On 19.09.2023 08:30, Javi Merino wrote:
> 5852ca485263 (build: fix tools/configure in case only python3 exists,
> 2019-12-11) changed the configure script to test for the availability
> of python3, python and python2 in that order.  It sets PYTHON to the
> first one found in path.  You don't need to have a symlink to python.
> 
> Remove the outdated note from the README.

But that note also covers the hypervisor build, which isn't affected by
./configure, and even less so by tools/configure.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 06:51:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 06:51:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604415.941780 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUa1-0003hM-Jn; Tue, 19 Sep 2023 06:51:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604415.941780; Tue, 19 Sep 2023 06:51:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUa1-0003hF-FG; Tue, 19 Sep 2023 06:51:29 +0000
Received: by outflank-mailman (input) for mailman id 604415;
 Tue, 19 Sep 2023 06:51:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiUa0-0003h9-QO
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 06:51:28 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20607.outbound.protection.outlook.com
 [2a01:111:f400:fe16::607])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f42db3c2-56b8-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 08:51:26 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7959.eurprd04.prod.outlook.com (2603:10a6:20b:289::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 06:51:25 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 06:51:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f42db3c2-56b8-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZPeZ855viKnVd1VnKQDnIrXRs3DT+zkXvFowgYtnVVEmx+mgku6HqyMULYdvuMJ+gyDTsxCrScZL2nMI5Xhus+H5n4RGKMFGficlQBkd74GaLK/WaHDpBFRrgGfkMwiihTIAWz7Hw59LZY4BujENgSkkgRmA4zlq9qKHTK40c6DZahsfQb6tfGOgA2EGTsbElziHQivytf55qihnAB9IshLCj1oQBwVlVuxbrPhTAqc9/O7p5c6v6ygXKYboRGotEkeMzNUNFARmv+TGamr2z3rrU00FyEPwjma69/Xb+tHVdDkdgiJxzDk6FMK+DamOC54TxKgnFBzEdYnvD8l9Hw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=uB0Svx5CAOCahCmefviXshc7rJgq5c9YMB1e/qBvLWA=;
 b=ahZ6xptYzN49sLMW4KlZ48b9K8taMLDsLAQ76mtLbB9JLKEC+V33ESOlXulpbqoPT+fJHvCmQvTSpYKisA05DuIQbqNI3C1i9mTTz2Bh/Nsq1kFkCyeItk+syLmVOL6Z4fhzYrfkk0ig7kNX3gzJSHu2BD0L8lDClbQoayHoWDOiDJ2Fl2zKUQgfBkqdBbmTa+dkKznSioIna9SA1H7JvTlEXAcU9wQI/BdNlmR9A/fgnhQA7CJFD81hd8tqDYp25z6vj13U0KljbuGYKJl/l1JHBHTFyseMqDh5Bbx1SsCiRNJldM6ML2JOJtSD6g+9Ayi7EVBs1UgsawL3Ti+faQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uB0Svx5CAOCahCmefviXshc7rJgq5c9YMB1e/qBvLWA=;
 b=eZQHmGJTU/3+fN6HI0+TpDwLTH+1qbbFJPEt3a3J2FMemtth9zIZtLSoVeHJf9pWgm1Vix/ZI8PNiwT/q/G87UjOpUt8tbOc17EMRfez8L73dbeEkBf7Ncd+ZnFLcvyOIhdZ717vKsu3f09W8csyiJ3g0oHCh1ToL0soSqUz6iVC/0nOWVfCaqYiva67tXZPf1NCU0rx3o29TOLM8QIo4MCbqhFS6mk3AQS8DUuVnnjPu4a6f7tpT4s24jSyVisT6n1irUgU/ny4eImizaSqvdOPp8OyYHLc0PZ3Xbr8HYyuLr8bh4BNB44J2zatRh82ZGiu9FlQ72qptTpIe0Hi8w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <88b6839c-ae82-cdbd-b49a-898ada49932c@suse.com>
Date: Tue, 19 Sep 2023 08:51:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] MAINTAINERS: Remove myself as RISC-V maintainer
Content-Language: en-US
To: Alistair Francis <alistair23@gmail.com>
Cc: Alistair Francis <alistair.francis@wdc.com>,
 xen-devel@lists.xenproject.org
References: <20230919053833.1410609-1-alistair.francis@wdc.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230919053833.1410609-1-alistair.francis@wdc.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FRYP281CA0002.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::12)
 To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB7959:EE_
X-MS-Office365-Filtering-Correlation-Id: bc6e6462-f747-4cd0-68fb-08dbb8dcd776
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8jBrJf6y1n3Gw1PLtH48rgYgAr4DEkZ/Df/PLiYteJCG2xpCutXzcZgdO5jPbA9KSq+1AGW73NmB5hGYNg3A/UuT7/Z0a7J+ECnZYKidcGkIgNONW/DOORjzVnf0EoURxONZQydbwQD6lx0D5zv9zhrysKuENTMGh13R6rbliNUIm9J3wkk9E6FYImFSYQvbAC4x9hrQJhq/CDEi0n9MFkZmDb1q8/duBngqsA/UUZluFeGheTiJIT9GxqF7kr1Asi6pQ1peYIowtSWIUdqkgdi3obv3aOIGhQJ+Tk5djLdV4u5k812zN4Fq+Up7AyR4yBjf2T/6jf4n8VtMZtC3hM8O6t2/QHIetsi7mB9FyzUOOSo5zUa8FuTr8neGKNX5noPChDpROEn+Sr97MTO3g3ll7+oYlC4ACkgYyQyUh/QPGGYsiv4F26DmeNy5tv4vPV6om1p2Uh9kv/e34S4fLfgchfHOHBhHjNnY8d1I/sJAri2mt9blLEZ0UzZwxIxneK8Hw1vqryzHlV8GIt/ZudoPmZH0HbaCvn0/JfW0k7Qqz5dInAMEJvOX6MPuR1c3Cs7xtThC55Q1EzBjgG7FvSZUzzFouXSGB33lZ2/pIvxpo6BixEWxvSUug7lOFMt6lQ21WHERsLjb28wZPl7wPQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(396003)(366004)(376002)(136003)(451199024)(186009)(1800799009)(31686004)(36756003)(38100700002)(86362001)(31696002)(558084003)(6506007)(53546011)(478600001)(2906002)(66946007)(66556008)(5660300002)(66476007)(8936002)(4326008)(8676002)(6512007)(316002)(41300700001)(6486002)(6916009)(26005)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bTgrRUp6TkQzZGxCeGdYOVZ4ditocllVOXBaWExrL1JVZjZEcFJtWEs2R0Nu?=
 =?utf-8?B?NkJZQUtRMDJGNWVpNzNhSVZEWG1OU2x3ODJYMFVtcW1BWHIxSTRlZmxmSHp4?=
 =?utf-8?B?RkFGdTd6bUMxSVFnb3krVWFjM0lYaXh4M01SQUlNOVB1MGpRLzBTUWp0Si83?=
 =?utf-8?B?VU1NNWJSQ3FhL3U4REdnVkFKMzdqVFFSZmFFTmVzUWRSWjhMVGl4eXAzMkpw?=
 =?utf-8?B?UWNSS1NSd3FHUTFYZmg4V1hHcXJnSU55bG9ZNGNHT1JiaTBvbG5VQjZHc3kx?=
 =?utf-8?B?MmZUam9leTJGTlByMDJHb3YxVllLVG5NaWQyazZXdlZBUDNJQURob0Z1b2FR?=
 =?utf-8?B?Njd4RVpKWkVEQ3psUU9hOEZIUk5TUjhhZzQ2SGliaHMzYzMycFAvS3duYUJz?=
 =?utf-8?B?ZWl3TWN3TURzRDlvL3BzT3BLc0lSNDZmdDE5WkJDUGFUQUk5V0JNVGw2TG5z?=
 =?utf-8?B?dEg5N0xkN0dTUWxsUWpyZTcrNlQybVlLRlMxckZjL0tkYVJkYWFjY2hlZ2Jq?=
 =?utf-8?B?eVNmNzFjeTNUUnFrSUFaZ1dwS0pYclozMjV0dE1KNEVYdTZmL0ppNUtLK3Z3?=
 =?utf-8?B?Z1RyUStCeWNsNnNQOVVYWFhWbTl0ajZmSXVXaXFRUVVjbUE2anBRMWdyWTZr?=
 =?utf-8?B?Rm03dUJreVNqNlV3bFJiRUEzbmxFNEZLMnRNZERxblVzK2F3NTJ4eXFIUWxv?=
 =?utf-8?B?MC9VUlJITXZianVvWmhMZXVLeSsvUzBHOHdUcFNoRlF6RDJCK05uNTFPVjVU?=
 =?utf-8?B?RXdDK0t4ZTlWZEhPWW0rMzJueS96b05weUxyYVFGQUNlQ3dmWWxXdm5FdG5C?=
 =?utf-8?B?bTByYkhPMTh5N2NDand4MVNSWWZjMGVzRGhEbWg3c2R6TUpUREhNbndOUktZ?=
 =?utf-8?B?OEZhUDZxRldmRk5jc1hWbXNBN0w4YkQ3ZGY4VHlzTGNLT01tbXoxVjduZ1BS?=
 =?utf-8?B?QkJZbDdEdmRMRHIrYnpMc1FMVXd2VGF0Yml2Q2hOU3d2bXFBSDF4dGpWYnE1?=
 =?utf-8?B?a3N1QmcxdHpXWjFoVmVPL0U0d0ljWjNKRUU3Zk1ZK3U4Z3VkSk1OMU1NcmFo?=
 =?utf-8?B?TndXYndMby94Rk1uaFZkUEtZalA0blRiVjkzUU1DaE1QWnQwL3k2dlFWUmJK?=
 =?utf-8?B?RExSMmdWaWlwOEFiTy9SVGZZNDlOTEdWTFNsY212TW5hV1R1eENqRnMrLzdU?=
 =?utf-8?B?WlFyU2xoRE1DK0FyRSs2MjZ4QjQvcEF2eXQySjU1clFhRlNFTVJQeWxINVgz?=
 =?utf-8?B?c2ptUEZhcTNVNVRhVHdYT0E0VGZpVmN0Qzh5L1NGZVN2WlZhdFd1OUdYajBl?=
 =?utf-8?B?Nnd4ZEs1a043eTBKS2g5bGdGcGRUVlZFR1dwaktTV3NnTnRYeDJYcHBsTFRP?=
 =?utf-8?B?S2dlVVBqeEtSZmcrTWEvWk5EZWVHWExUeFFrUUJmVCtwc1AvUVhGWkVrdjJQ?=
 =?utf-8?B?bFQ4Q0xZR1JwTkN3SnN1ZnVQUnpFRkx2QWVCMTdibmFwVXR3VSt3L2R2dk5M?=
 =?utf-8?B?Y1VldXpQNUVLUlJCekFVNW8xTnliVERDRGhHT0lvYnVOSnB1NHFodU9wc3lX?=
 =?utf-8?B?dnp2ZG14T2o5VVgwdkxXRkVHL3F5aENtZDZKOUErbFN2Q2w2V0FLb0hFeENB?=
 =?utf-8?B?SURNcnRRcUhjSDhiNFpBZnFyeTFQZXdyaUd5OUdPWkJ3RERWWnNudzdFMGhz?=
 =?utf-8?B?NmN1aVNzME8zUzV4ZjQ2Mm9TR0xERFZMV1ZoV2c3amo0TlJyVDBwclBKZXpv?=
 =?utf-8?B?MjJka1NweVZpU2I3b0hFTkh5V1dWMnFMaEtJSzhDRCticCt2VHBOd1JxOGll?=
 =?utf-8?B?TTNpTmV6cHppWlVKUU4zQ1FiWk1iRVU1NUcvZzRUZWRWckpaQ2FxakFlbWtS?=
 =?utf-8?B?N3o5Y0V5M0x4bFJpaG16czhhcnlDVFQ2QThlY09DdU1tMWV5S3pwYU5QcEtz?=
 =?utf-8?B?WXBrOHhvNEQ4NERzVlNvREFJV1Y0c0ovQnFrVk9McXZHSFdsSWMxNGVnU1dY?=
 =?utf-8?B?cE1XSStBdEVTbVdUMkRMMTVtZGs1RjFyYmhsV0lrVjRZNEpac2toTlRyUmxs?=
 =?utf-8?B?S0cvQTI4UUlQZ3F5a0JGUEx1Vnd4Yy9pWUcwTmZNNWlXZFZmNHJmQVV3ZGZh?=
 =?utf-8?Q?ZusP45WcTtR0Uj+Awy1mEsflk?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bc6e6462-f747-4cd0-68fb-08dbb8dcd776
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 06:51:25.1535
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xK8gTZce1I7D4eucjBX9PjRa2gjhwyjzaKub/3UWOyscCigDozWUvFPxklDm/rDSUZJuGtadY4nCicErlfQrOA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7959

On 19.09.2023 07:38, Alistair Francis wrote:
> I unfortunately don't have time to be a Xen maintainer, so remove myself
> as the maintainer.
> 
> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

Acked-by: Jan Beulich <jbeulich@suse.com>



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 07:03:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 07:03:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604421.941790 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUlB-0006hJ-Ll; Tue, 19 Sep 2023 07:03:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604421.941790; Tue, 19 Sep 2023 07:03:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiUlB-0006hC-J1; Tue, 19 Sep 2023 07:03:01 +0000
Received: by outflank-mailman (input) for mailman id 604421;
 Tue, 19 Sep 2023 07:03:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ezs9=FD=citrix.com=prvs=619432e5c=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qiUl9-0006gq-Tt
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 07:03:00 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8e9287a1-56ba-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 09:02:57 +0200 (CEST)
Received: from mail-dm6nam11lp2170.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.170])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 19 Sep 2023 03:02:48 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DS7PR03MB7540.namprd03.prod.outlook.com (2603:10b6:5:2cd::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Tue, 19 Sep
 2023 07:02:47 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 07:02:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8e9287a1-56ba-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695106977;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=AZrG1anf1SRwNRzD1jIE9lXsVXZrYNPwBRRqYP5zM14=;
  b=UPZO7PLUNlnYX0msQd5wadF5w/7j88fZ/WqqMf7zo8s0uKsTyd/wXtKV
   GjcNTck75RA+4++IFCGep6VIdduJwnMAhigja98sShkWJHeiKTQwC6aSK
   kHeseH7F3Loe7KQXzbmYowGzX3Qxp6c5BkEv2QVgr0EAntuMrofFSw1ze
   8=;
X-CSE-ConnectionGUID: V6hdm/5NRNqsA1duXbSmcg==
X-CSE-MsgGUID: 1vA1av0tSz+Vpe3TkNYxog==
X-IronPort-RemoteIP: 104.47.57.170
X-IronPort-MID: 121702369
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:td2u0qsR88XT/WEdUkVaXT4KDOfnVHhfMUV32f8akzHdYApBsoF/q
 tZmKWyPP/qDNDP2Ltl3O4Tk9BxS7JfTx4IwGVZtrHw2QiIV+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4lv0gnRkPaoQ5A6HxiFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwFm4NYhXE2sSM5qugY7Bgm/QpF8zgM9ZK0p1g5Wmx4fcOZ7nmGvyPyfoGmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osj/60b4K9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAttNTOfjqK8CbFu7n3I6URQIDUeAs7qHkkPlZ9F5G
 lwT9X97xUQ13AnxJjXnZDW6vXqFsxg0S9dWVeog52mlwLDf4xuSBXosSDNdc9cvrMJwQzE2v
 neZktWsCTFxvbm9TXOG6qzSvT60ITISL2IJeWkDVwRt3jX4iIQ6jxaKQtM9Fqew14TxAWupn
 GjMqzUijbIOi8JNz7+84V3MnzOroN7OUxIx4QLUGGmi62uVebKYWmBh0nCDhd4oEWpTZgDpU
 KQs8yRG0N0zMA==
IronPort-HdrOrdr: A9a23:zcXkqaBmwLVmvmPlHel/55DYdb4zR+YMi2TDtnoBMCC9F/bzqy
 nAppQmPHPP+VEssRIb9+xoWpPwJE80nKQdieIs1NyZLW3bUQWTXedfBEjZrwEI2ReSygeQ78
 hdWpk7L9vsDVd7h87m4A++Cb8bsbq62ZHtouHCz3hsRwl2a6dm9UNTDBqdGEEzZA5IA/MCZf
 ihDwN8xgadRQ==
X-Talos-CUID: =?us-ascii?q?9a23=3Aa+Ip42owKLGTYbVXVF1O7jbmUf57cnHYiyr2GWm?=
 =?us-ascii?q?hEk8wRKClQ2SV86wxxg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3A2l77gg/5uFicR484BF4gN9SQf552yv2nFhgRqod?=
 =?us-ascii?q?FhdGJbhBzHQaNizviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,158,1688443200"; 
   d="scan'208";a="121702369"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=a1lB7WyrD4RspAKGZlsia/nmBOJZczFnSiiap/26NQDs/+XKJYGdV+GH39TJ4I+Nhl9iS1Zy6BVmP/HnwY52x/aoFQKkzFmM8GXghMnArSpiKnyz0rfB1ppE44yEwZp6+8ajzFuKeDLb/3I7MT28hlfABWOHktOlCq2O+QQT2OeXNCGSLJTJseaAgLw3DgLpP72n9dv4gq/qNCBrQ8Nmt6tqnsdqcuwDtpSZD9fVS8C1Y+lJrNGFisg/nuqyCYnWjD27LtiRbFIZBiNvjUz5uTphkkUlEgARJiUSfbofG1yMWXTKOWV6eYbajnGIIJhWqtVoWg6PE3gMJwGmb7uMSQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=SPisFVdhO2HGopvLpB0Hry/neJdRmM/hWa6wto5vS4I=;
 b=Npws00C2lVz25iaNYO+mLyleELlLUj0grJkKAQHIK3Wz5HHlRCNhddHFk+IHOe1cn2WwCZ0XlBY0hS/9ex01QRY9JH6kaJrpmEybvWydscZ3RlZRVXGv1TjeY29X7TnhTbf063t0oucsXwweo5K+qmT+tATPxpbs5aTKt7u6EK/bFA1RnxgCZ6O/99XzK3OmIO+aQCtBKPxk8vqedgzaYDH03wHRwLV2mQoh24imna8mYwVa6UoUf2jP22hI4841gZ1fAlYrlg4AyU1szUIx6TkyWODLCKFsQ6oBd/8klY6j80pxiOQOcUwWrChCnH6mTRijhyvces9CVPUy4f03yw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=SPisFVdhO2HGopvLpB0Hry/neJdRmM/hWa6wto5vS4I=;
 b=oQsG3/GGEe2RqPbPorxzL6n1KDOyFWIHsg3VD0Qj8LZC6UK1XBVfc2lo1fpVjpNfq1ml10TaiH0yNrwnuGxxaGkH8NAlKdGXqEsFQerQNQVaIfji68uML8+yWbPnSZCejwG3QDU9ZyIJZ2F8RE/cgNL3drpAlVGjuwfGFTjFSEs=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 19 Sep 2023 09:02:39 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Julien Grall <julien@xen.org>
Cc: Chuck Zmudzinski <brchuckz@netscape.net>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: xl dmesg buffer too small for Xen 4.18?
Message-ID: <ZQlHj5rjMaYj8Z4e@MacBookPdeRoger>
References: <b20bdc7e-4c07-4bde-b206-4142310211d4.ref@netscape.net>
 <b20bdc7e-4c07-4bde-b206-4142310211d4@netscape.net>
 <9baf6bec-49c6-474b-a5e3-5f0473aaffc7@netscape.net>
 <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
X-ClientProxiedBy: PAZP264CA0152.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:102:1f9::10) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DS7PR03MB7540:EE_
X-MS-Office365-Filtering-Correlation-Id: 63470de6-dd62-4d0f-21f5-08dbb8de6dc9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PJFDOGBQwcnLqhw/1FG/9ZdYjDrsEWHrRn3xIGjrCTqlT5liNXrTrKRc3ypFNGYckAKfVwKr4GMRPOiUFCXrxMjFPCCGWJYv6sNSRrA1dVoEDYQNuIplOV/4mLD7S1JmMxQ8JusBh4JQa4mRYj4VvkYHTcT/tpxQI3+d/S/WDjUFnZYTB2DW50z2O6kyl8Gb8Rd5xF3hL+cJBY4trzKg91pdfeUHB4UklQ6QHoxhkJZRmrOGJABiBn9h+CFCMpV7wzjwcUWtHmdbWvrlYchmsFeujyCgA/n9uCow4BcB8qXkkCfLH+Pr0YAbfaK389veRSfj4RxNLTSxrInUrROx7WdLcm10qsM9F338D2GwnTmIlmvvCIcalKZOSzTijNu4oaeo6H8JISKRfkHIjNrYwnQePZDy8Y7Ci2bXjLTgGZKym3+CM2tuu1YGlS8FEGf4MTVpYA6yFt8fmOvDUpg5zXA6xGdhpizZtcZf8LeIR7FvM5YWz2oGLD5piPcpbIyVK72wOkOEXuTd9tOM2uCdJIYa8ZnZiRiGmeVdi7vGPEb5mbjySGf/5fa4/3rjAgDv5iETbu/hjJsNHdwHkuhzcqVJkzNA8yxmjY93SSk0U3+jeTFz1voJzZoerARma+Tt
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(396003)(346002)(376002)(136003)(39860400002)(366004)(451199024)(186009)(1800799009)(53546011)(41300700001)(82960400001)(38100700002)(6486002)(33716001)(6666004)(6506007)(85182001)(2906002)(478600001)(86362001)(966005)(6512007)(26005)(83380400001)(9686003)(316002)(6916009)(66556008)(66476007)(54906003)(66946007)(8676002)(8936002)(4326008)(5660300002)(160913001)(15963001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UGxRM3JpU1BGK0JPdkNPOXpTTTlEYTNuZDZSQUhMQWcySkRmZ3VEUjRpN1B4?=
 =?utf-8?B?L2xMSVQ5WkdFcVkwVEdYQWdIZnBBRkxJMFk5ZmtEdnRIWEZXekZZR2NWWGM2?=
 =?utf-8?B?eUpRUjM0SjZQUjU4N25Tb3VBV3lPUFFLWVdFL3Ixc3RNOGlEbUtRWWx3aTFp?=
 =?utf-8?B?ZWdHcmVtQjRYZHFpU29zSWwyWUFiNXNGV0NIRTc0eHFubTRod3o4RmdOS3Ru?=
 =?utf-8?B?Q3VmdVBmenFpdXdVdk1waDVDMU9jdFJIaENpUmxSa0xxT0YwbjRaMVc4NWFm?=
 =?utf-8?B?TmVkWE5QMllRaTBtMG5xandTaWl3MmljL2t3anp5bDJyTWdBTXZDOEluejdP?=
 =?utf-8?B?Y2tFUTIxRUhyc2k1T09ydk9EbFBqSzBSamRPZkN5MmdMazFLQWdZWXpLa0V6?=
 =?utf-8?B?a0toVGV4NEt5QnN0dzVzbndDUkJPK3d6cEtOeFBaY1VwK25zNEJWcit6aFJQ?=
 =?utf-8?B?Uk1pSVg0ODhCaFpjTW1YdTBtSTB6VXFNQXBHNnZBcTNCMWVSNElKWCtHZ1B1?=
 =?utf-8?B?clRFeWM4czRqTVRrRW5rOGY2cUFCdnFoMXBNL3J5NXo0TDlrMlhZVU5BUTM1?=
 =?utf-8?B?SU5JQk1nN3pyRDV4NytBSWhwRTBDeCtJU21NR09LMkoranVQeWY2SU1lZExG?=
 =?utf-8?B?UU5meXIvQSs0TDh5aFRpd0FWMCtlbVZGTktTL3NVVEU4SXpxOXpSZFU0R1E2?=
 =?utf-8?B?Ykl1RE84NUlRNE9FUTJkVmdoM0VVdTFiWGVxdks5RTNveldTbHlLRmFvUndY?=
 =?utf-8?B?S0E2ZzVGN2hFOGNkV3BEcC9WdzlLVHBFK2NVMTI2ZzFLVU02SDIySDdkZWFD?=
 =?utf-8?B?OFFabnk0MU1uOHR1M2NXa1Y3aFFrOVlQcXBvdDJvSENUcEdXYjhiZkhJTFRx?=
 =?utf-8?B?Si85U3hha1NjcWRxdWliQ1REQmpPVXlyTGp6WkYva2V3WWcvbWFsMWZ4aG9P?=
 =?utf-8?B?Tm5aMU9sbWdHY1ppbHJnMWFtRVQxRUNlMTlRMldYQmpxRjF6MXhadlhETVRJ?=
 =?utf-8?B?UHRCLzJmNGJiS2FraElRMUt2MVBCQkVGbEdvdjloZTdYSHVJMkx0NkdVUXdn?=
 =?utf-8?B?Wk9ISGZPR0cwTm91NUtwc3dTbnJKSHM0TTN3b2sxZy9rSUNhbnBhVVpEVFAz?=
 =?utf-8?B?dVVKcUYyVXByUVNybVR1K1pMYlVSRm51cFlaY0s1M3I1WHl2Y1ZQRk8yR1Va?=
 =?utf-8?B?TVdJemQzbkdENVFuYkYzMEsrNUVHQlZLSVN3eVUrUWlxU2IyYjNxZ01sRTAw?=
 =?utf-8?B?czFYKzQ1UGRNYkNCVnJHamRQbnJDQmJGdUYxaDZ2MGlBOW90M2VEazkxT1Rk?=
 =?utf-8?B?ZE9NMVhDWVVXNGR6dkcwQU1GQkhENHdtOEZCZmlpU05IQkdHcll3WEE3c1h0?=
 =?utf-8?B?djJtZTgyYzZ0NlpxR0pqMnpHOWtrMTRIdUYvUFNldHk2dWNQVHBGNG5xYjdx?=
 =?utf-8?B?SnZYV1MyWkRYSENiOTlOQ1YvMGhRMGlhY09tSkJuaFNsaHl0eWozTGVGQVk0?=
 =?utf-8?B?SFZLZzNBUFljT0lGT2JSdFFpS2hMWk9tNnVqSGU1WFp5a1JRWHNsSlhueHVG?=
 =?utf-8?B?eVdDNGxEV1hnZUFydmVaeFJHTlRxdUNzeUNVajFQckpyNEN0bWdWNnJvSDFX?=
 =?utf-8?B?S0w0MmVQTGNxdFF2WndvUWJrQ2NSOHRrWnFWTHYvenNCMlZWMGRNT3A3WkRY?=
 =?utf-8?B?OWpuTzcyajE0RElJa1RUckVwdndGU0xtZHV6YWVtY2Q2UG5adjRiekswM1Zv?=
 =?utf-8?B?ZUVvWW9UaUlCUWhjUGpDT0ZCZkJQajhVV0VQTEZ6QlNVWS8xTDV6dmpLOU83?=
 =?utf-8?B?cmlJRm9GS3FFejlOMTByNUxVbjlwZ0lVQkM1MzBkeDAvb3NpQ1FjRnpOakJu?=
 =?utf-8?B?dFppaEk4ZGphT29XWXMvakJnQUxSN09LU0NJWVV1OXhMdUhjeG5YMDIwYlBr?=
 =?utf-8?B?QVY4S092a1BhRUpZMGJrVmtNMkVyUDRWQ05KT0R3UXlVZVVkWnpwRU04c3RM?=
 =?utf-8?B?akV5WUxLQURyVlptS2wxZGNnN1E2SllLdkFQRFQ4KzdKVFVSbEFlSFlFMmM3?=
 =?utf-8?B?aHd0cTlGdlNWSk1wWjNjSHZOUGNUMG1jV2hpWHRJbzRPRXNESGdSSU1HMFg5?=
 =?utf-8?Q?SDcljPqKkXWqripfTQ8nwZjn4?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	31TWZJLgGO559JY27/CtP+SDJIBK9xgdAGdYu2+fTtRHgAwkrmFLl/F7YBTCR8CKfxQzvOCrQ5NNTKvy1PWwQOw90SjiMzOO9Fdv+B5rwGHrZR4KXNlv1HD79dH7Z5PLuP/WW1TSouJU3uZLThX5MgwvvDsUcfRXEJ3GH/e95Fw/5HThC5mYZ3kUHdQf7EMMAdbvq9QT/l+5MnpEcEzFHpOxu/YUpzrhAlrjn85hvZyoTE1lh6JGhyTYxMxNs7nKAEqsFFcq1VtXjDji11bNs2It5k++bYj9SUQYtwfYlplnvI3DDGbaF7P6SvGJyH84gmzxAXJu/M699QEjacngtkW61sL65g/m9Ux0UMNFNGN66+64U0PZomTq8ft78KNitplW/OAlqFFdy4mp93+NN3bcMj1ijhYPUf2CZKLZVDWUDvgXmbrLYCDe5NSw0UorrXOvoEPxJYLT9JoW1iFcnozRaVNiMt6+QxRFgaIeMZEXM0tQoyxykUn4Mu66Eem1nph30n9V9S7qu52mTEHoCs5cmvbv/0+rtTNQqlJ0gB1OUJh+/gmC04QkwrN6YuXpTMyNmO3VmkfXmRbYjJQg9EsYh2PhCRbjmjyY42Jh+5qIFRP6PjVNdoO+ozc0DZVdYNBeBt98lg+4jyEtVxcac1OWL5onjMTG6sshsYGW3m/wzeYudQ9pYubY2TMOmotKI0ykAfDUqglfTYfXs2XegdHzbKsNHNVZ9ZGu3McWuVGrlJhHqJZa/xpdyHw4q5yEm1uO/Mwyp6uYNjgqSD3KvsYdwuEXHOwET+R9vE4uBBEuPoa4s6pD6Y582E5PM+LxbUKwSrwg3CVPA3T6eFffog==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 63470de6-dd62-4d0f-21f5-08dbb8de6dc9
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 07:02:47.0209
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0rr6Rfv6Apvy9s8w691eA/MZZXfgIeuOzyhz84k39A8Oz35WoEQZDwQW0K/pNJ4h+anAC+bcBCSCwZUhqKGbVw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB7540

On Mon, Sep 18, 2023 at 07:49:26PM +0100, Julien Grall wrote:
> (+Roger and moving to xen-devel)
> 
> Hi,
> 
> On 18/09/2023 19:17, Chuck Zmudzinski wrote:
> > On 9/18/2023 9:00 AM, Chuck Zmudzinski wrote:
> > > Hello,
> > > 
> > > I tested Xen 4.18~rc0 on Alma Linux 9 and my first tests indicate it works fine for starting the guests I manage but I notice that immediately after boot and with only dom0 running on the system, I get:
> > > 
> > > [user@Malmalinux ~]$ sudo xl dmesg
> > > 00bee72000-00000bee72fff type=7 attr=000000000000000f
> > > (XEN)  00000bee73000-00000bef49fff type=4 attr=000000000000000f
> > > (XEN)  00000bef4a000-00000bef4bfff type=7 attr=000000000000000f
> > > (XEN)  00000bef4c000-00000befbafff type=4 attr=000000000000000f
> > > (XEN)  00000befbb000-00000befbbfff type=7 attr=000000000000000f
> > > ...
> > > 
> > > I have noticed the buffer fills up quickly on earlier Xen versions, but never have I seen it fill up during boot and with only dom0 running.
> > > 
> > > Can increasing the buffer fix this? How would one do that?
> > > 
> > > Thanks
> > > 
> > 
> > I see the setting is the command line option conring_size:
> > 
> > https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#conring_size
> > 
> > The default is 16k, I tried 48k and that was big enough to capture all the messages at boot for 4.18 rc0. This is probably not an issue if the release candidate is being more verbose than the actual release will be. But if the release is still this verbose, maybe the default of 16k should be increased.
> 
> Thanks for the report. This remind me the series [1] from Roger which tries
> to increase the default size to 32K. @Roger, I am wondering if we should
> revive it?

I think the relevant patch (2/2) will still apply as-is, it's just a
Kconfig one line change.  I'm however thinking it might be better to
bump it even further, to 128K.  From a system point of view it's still
a very small amount of memory.

I'm happy to repost with an increased buffer size, but only if there's
someone willing to Ack it, otherwise it's not worth spending time on
it.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 07:51:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 07:51:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604434.941806 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiVW5-00019o-8L; Tue, 19 Sep 2023 07:51:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604434.941806; Tue, 19 Sep 2023 07:51:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiVW5-00019h-5e; Tue, 19 Sep 2023 07:51:29 +0000
Received: by outflank-mailman (input) for mailman id 604434;
 Tue, 19 Sep 2023 07:51:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiVW3-00019b-EY
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 07:51:27 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on061f.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::61f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 54495b28-56c1-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 09:51:24 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8350.eurprd04.prod.outlook.com (2603:10a6:102:1ce::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Tue, 19 Sep
 2023 07:51:22 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 07:51:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 54495b28-56c1-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=T5bs5oEw6q4+OsIHYmsHMIBbC9Re56Ik9E6gl5C1iFFwhjnjwsrSAqlqw2ZzUG3y1bUd70xWj6E3YbKIa2tLPdz1YPgnou7mSY+nBp3p34NK2iD8FFzmvgifwCXJAyHuwil9xSkErkr69tveQi7/WXxQUnMvoIhtvBrzZKaL9b170hMK66u8nB0ZDNplp9hg2OT6XKRCiBihqFODz1bqP4XdeZCI7mXLJ9tx1Yug0yxdNtJ361nFH4Ya9m2jtElQIdgYvquH+B5T+LKxG/b3AEudxtiO9sPe0vqFWOYKst3ObU540K5Y/EMD8jLGP7ouu6oDDJ/vz40NzesNHOH/tg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3Cy0wZx4mmUTOS1vMY3Ywfz1Y0UFmqjfjaHz6fL+JV4=;
 b=YzNjR1u252BHV/L7PysG9B5N/EzMkl7pPmRMbci2A+XI6idPOMOrUOw/xgQuriVAYpEghg+JsxTzsQ8KUSMVpaQMWkPcJt6xn1xIjBTnpRqkbd0RTLEobTEItt9Yy/KxursLbCK2PLQ/F1ntRDeA7wbJr/bz6kkFqYyF8JSMuxfYnk6zQR6Qw8GZCXkw29J4S78u6Qrol1JUj6KTtD3la5aJmkUPKH2+Om2DU7/EVoHEDOQDN4LxZKe4gFA4K6A979JQgsW/9yun8/5wA/UBqprpO5b9pIgSeIyHGYbUGUGZhRozNIp/6tsJyQVDBX3e3ylz6lKtiAsAuOZVlSNxZg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3Cy0wZx4mmUTOS1vMY3Ywfz1Y0UFmqjfjaHz6fL+JV4=;
 b=3dtGb+HZDtuUVsDkqn0NSSdNXdXxCoi59yrivWmS1sw5+21JUW/0KDL7BVkkERW/NAwdqGIhVM1e2uKUc6s74hbdYyOsVlgB32n2rwuUaDJVWSlPeHTyikY9ymY8h1jOi7rl1y4CmPXaH0/vuT8KGsJtM544h03U/YDxg2iF4UPRToWt7PWDw1SevPvbdmSkK2YQxsXvAbBc9j8vUwH9ETcBAdyDHfA+VhmTSxpJg/8RCM5N1WN/OVs6K06xsH4HlSccLpk/DLGp+i1MkOL7xMtrdwpev/j4W/dxnBHkt7pqK3gYa4nkZX19UUXXy81xLzR/O8wPSrCDq0fU7zLRkA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <838211ca-2eb9-9e0d-243f-f8db6c1756d5@suse.com>
Date: Tue, 19 Sep 2023 09:51:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH] x86/ACPI: Fix logging of MADT entries
Content-Language: en-US
To: Simon Gaiser <simon@invisiblethingslab.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>, xen-devel@lists.xenproject.org
References: <20230913081335.28493-1-simon@invisiblethingslab.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230913081335.28493-1-simon@invisiblethingslab.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0008.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c8::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8350:EE_
X-MS-Office365-Filtering-Correlation-Id: d4bafc1b-0e37-4cc2-7897-08dbb8e53742
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	s4ZialoE6lzr3ngWUDRrTifTy4dWHQridwwedthoKNHNj6AT6aDnNFWm2DuZHc2iliY4a8v+qI3dIWyqL5B9NkL3LQBSx1YJOHwjhGrD3q2zUWXi6uIV+H3jucP9gxXPa/kedRen0OpCHGYAjOjcQKiVFI60rEikCgZWW78v5+w/z5EPi6Iep4zHt7il9TP/kH052IObFp2TlsR/s5SK0HXo4W6QqgHNEFDRArWqtjnUFW8NZo5OFtCcxwgC/AYrwkhbuHJVvAQzlHlVjnCMMSYTe6xMoA8H4U9OEVRc5RzRZa7/ovgvI/xMf8eJ5SuR6AH68b1kB+kGNpVJ40YxTNd3MumnFG9iWGfFxJx7icB6ukYU17DmwB/8EEVBAB93N2yd/cCVt8HtgAjyO3bHgSzUbWLUf/8ZLPcP0wM20ZF4FUF12RADVOqzh+CjziPGOeypaJL3GJRaJDI6Wf0WppCV0UzgByAGPLt42DPYn9+QlbFn6AcoZbzXIrlOPWtKYQC88gAlP8KU0voTVmtBXHYyqzYP8JzKE9G8odcwSxo1osEQbCvv0mPuDfKzHFSpJQuVQlLlZ6ShQsmQ2nabJ4N9anSbJUbnKeeIcms1eERFLABWGxkEFtBxT7N7dbnpoV6JecTr4XMNSVP4L8mmYA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(366004)(396003)(376002)(39860400002)(1800799009)(186009)(451199024)(83380400001)(6512007)(53546011)(6506007)(6486002)(36756003)(41300700001)(2906002)(66946007)(110136005)(31696002)(66476007)(66556008)(316002)(54906003)(4744005)(5660300002)(8676002)(8936002)(4326008)(38100700002)(478600001)(966005)(86362001)(26005)(2616005)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WFJpOHRiRmtQSVk2djhGaVdwUjNia0FJSFU1TVhpQzJpMEVZdzhtMWJwYjlI?=
 =?utf-8?B?T3htUG1yRmhFQml3ekNuOWw4NnpaK3BZM3BBSGdKOHRqQXFueWJMRnV0Z0g3?=
 =?utf-8?B?TEpaSExUOXNCT0FmT3hBTVdzRXFTZk1SSStZOEZZc3R0MG14UWRHN000S3VU?=
 =?utf-8?B?L0hQcHJWQUtob3NvUmNJZFNpVGpkdS8weDRSYUNqKy9vdFNDc2IwejlxR042?=
 =?utf-8?B?WkQxblkyNFBVc2UwbUJhVEptLytQRWp5ZnJtR3ZnRjhwVG9XUDFkaStOdi9o?=
 =?utf-8?B?TWQzYVhsSDQrQU9ERDJtR01lcTNDeEhJUE96VFU2NUlnSDVPc2E1SGFVRnUx?=
 =?utf-8?B?VFFmcDE2QmlaQTQ2UzRmbUVoNVhiSVFZeUNMNDFYZC81Q3hYNEprci9BVzdl?=
 =?utf-8?B?dXRNV045TmJ0Q3FQbDRWeHovTTI0clAxaEI3OVJnL1RiNWxtaTNPR3FJK29R?=
 =?utf-8?B?V200VUkrSCtienBLKzhMZTlNRk1RTEFWMTlhclFEYld1a2pSRmREUmdubWc1?=
 =?utf-8?B?VTJYcjBZeDlJeEJ2d0NCVkh1K1pNTnNmUHNmOVVTTHNoU210VmZIY21CWnND?=
 =?utf-8?B?SmQ0R3pleThDMlZYcXZMdlhlbUZvZXNIbjZNeFlMY3M3Q2VoNXkzVVhSaCtn?=
 =?utf-8?B?Z09mdnpJZFUxd01oZ3NZQW5HRkU0MUtBUnVrd2FSd1lGdExEcGpCSWdKckk4?=
 =?utf-8?B?blY1THpHVTNjODRNeXdqWHg5UkhEWjEzYmJRYnQwTnNpS2NoYjZCOE9iV2pw?=
 =?utf-8?B?ZnRmdTBWbjAyKzJHdmRwTXdsVUtCQ3U5bWV0YWFqUkVQYjlNWHF0cVlPMTJS?=
 =?utf-8?B?Y2Nva3lSckxpei9UdndxTVFQNWRMSU40T3FGaHNKQm1oTGpEVFMyMkVZN1pM?=
 =?utf-8?B?WW9IeUtzTVB5ZVdacFAxdVdpZDRza3dycnhqUGI3dFFUMEkycStmbW9VVWZS?=
 =?utf-8?B?and1TXlzVHJqVVQ4dzd1N2xCVGowTFdjbGsxdnVod1RVUkQ5TzFNTnJQVXFM?=
 =?utf-8?B?NmltS2JYd3J0OGpmYytiK25xS1FZYmxUSk5id2xwVnNZem92dW5JWCs3WU9j?=
 =?utf-8?B?OElKcVFQNEZrQnZxUHg1T2ZyUmpvQTJkdVBaRlBNVExTWXZQdjdrVTNaRlhQ?=
 =?utf-8?B?R1dHWW11K2ZySmpOWTlwMDU4dk9WeXB4WHZSL0g0SVM0bml4aDFIajRiRjNU?=
 =?utf-8?B?UGtnTlc0Ykd6QkFrc1FFbE9UdmlKQmpaVUFHejM2dmg4YUdDbXBYaTJZRzJj?=
 =?utf-8?B?dytvRnpPcGtHaThEa3dJQklQb0dBbFZxMUJZVXg3ZHh0T3ZKczZHV1dGa1pv?=
 =?utf-8?B?c2N4WlRRZFFudFAwZVRRVk42Z1VuNVdpcjVodEkrR3h2Vy9uWUhnVEJQMVp2?=
 =?utf-8?B?UGtqaEs3cDlEdkoySXhrRFRpamczelExdm53Mjc1NUhSRVlWRWpRV3E3MUhU?=
 =?utf-8?B?VnZJYjQyamkyQm53ZFlnbWVSd0hIczh3OUFQcCtJOUtPbUF5RjNPenNuak5Y?=
 =?utf-8?B?VE5oN1lndjNRQnAxMzNmQkpDSHRidE9LeFlGZk12blNCcUo2NVhGdGZtaHNi?=
 =?utf-8?B?M3A2RWdiRDhVbTlXM1BVaUFHaFRVYW56bS9QU21ocDRwdEtZL3pvak9mWHBI?=
 =?utf-8?B?STN6M3hmeXFDSUxsWnpYd0hLck9TRWtSN3BqVjF3b2dXQlZWMFZWeEc4eVNw?=
 =?utf-8?B?Mk1ZWU9UYU4zZ3orTjVRQXZLZFVnaVhJNitzOFNFSjhVdXRtMnJ1VSs4S1Y5?=
 =?utf-8?B?dGxuaEM3a3FsU3o4Z09aYnhqU05DZG9GRVdSNEhyM24zUEFJbm8vYlVzbHhp?=
 =?utf-8?B?NXVOd2c4Nk5rbVlJeVlvczJKNklmSkZYTktlTThtblEvSm04NHVBM1E4OHpD?=
 =?utf-8?B?V1o5dHlWYm5GWnVxcWtMU1NrRGticGx5bmt5MlFpZkdXTGk3THNiRWxDaWNL?=
 =?utf-8?B?THdtY2ZITVNtOU82dS9wQmtPMklRaEVmYmxjRHpqeE93aEVjbE96QVFraGJK?=
 =?utf-8?B?Y29QN282SE5Semp4anFhWW9Hczh2RFZ2a005cGh6OVloTFNRbWE3SEdRN29a?=
 =?utf-8?B?OENjRmM0Vmw4STMzMkFYdU90U3J2QzN2cGZMaGkwSE1FVzhnZGZPeHMxQXE2?=
 =?utf-8?Q?it3KwcIk+WXF7vK7dXOA/KjXH?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d4bafc1b-0e37-4cc2-7897-08dbb8e53742
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 07:51:21.8966
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: m378/Od9f3OA7kxTS2uIUx9WLlPzGQd+dn/rfzGdp+4IN3ilsfG2m/knbLGTGzurFcrzCFB3YcYBJSPiBxf6aQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8350

On 13.09.2023 10:13, Simon Gaiser wrote:
> The recent change to ignore MADT entries with invalid APIC IDs also
> affected logging of MADT entries. That's not desired [1] [2], so restore
> the old behavior.
> 
> Fixes: 47342d8f490c ("x86/ACPI: Ignore entries with invalid APIC IDs when parsing MADT")
> Link: https://lore.kernel.org/xen-devel/0bd3583c-a55d-9a68-55b1-c383499d46d8@suse.com/ # [1]
> Link: https://lore.kernel.org/xen-devel/f780d40e-c828-c57a-b19c-16ee15c1454a@suse.com/ # [2]
> Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>

Reviewed-by: Jan Beulich <jbeulich@suse.com>
with the implied ack assuming that the support status of physical hotplug
is going to be changed, and hence a revert of the earlier commit isn't
going to be necessary. Stefano - what's the status of your respective
patch to SUPPORT.md (which probably wants re-sending as the root of a new
thread anyway)?

Jan



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 08:18:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 08:18:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604446.941815 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiVvh-0006m0-NT; Tue, 19 Sep 2023 08:17:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604446.941815; Tue, 19 Sep 2023 08:17:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiVvh-0006lt-Ky; Tue, 19 Sep 2023 08:17:57 +0000
Received: by outflank-mailman (input) for mailman id 604446;
 Tue, 19 Sep 2023 08:17:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vJAK=FD=gmail.com=marcandre.lureau@srs-se1.protection.inumbo.net>)
 id 1qiVvg-0006ll-Hd
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 08:17:56 +0000
Received: from mail-qk1-x729.google.com (mail-qk1-x729.google.com
 [2607:f8b0:4864:20::729])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 08be296b-56c5-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 10:17:55 +0200 (CEST)
Received: by mail-qk1-x729.google.com with SMTP id
 af79cd13be357-76dbe263c68so240552285a.0
 for <xen-devel@lists.xenproject.org>; Tue, 19 Sep 2023 01:17:55 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 08be296b-56c5-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695111474; x=1695716274; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=g6XmqpxXe+pFJEvymDTF8JR4Ea1fwE1Z3SOQg5pG66Q=;
        b=LOE+4Jxxi9Z9a3Fm+wO6efLVjPscqnvqAM1xF8Udx/jfaO8OuoE7hC4Y4J9cVcy5Go
         5xBitqvIB1nd41yYMxvH1gywC6/w18IY5oA6SWg8yTTdalOn1hzyiyZyzMplDcLKXRn+
         eCqHoLJrQZPFqFs4wvlWM9dBvEPxwJMVZ/mRoTKjPJI4poffeqm5032a+3jj6XhXCxsK
         IMQontsTP0FF+TbYBJ4BBWwrHNw6d8B1dJ6XNU8ZZePHr+ab85kxjQIG1cY3jvzXkfO6
         nAP7KiodVeyhxL+cdHIt9CuJSMUXBhssNXFeldTpsib7EKzt6qpvvCZs2Sf/Yz62ztA/
         WMiQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695111474; x=1695716274;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=g6XmqpxXe+pFJEvymDTF8JR4Ea1fwE1Z3SOQg5pG66Q=;
        b=TiolRxfayje54fui+P8kOfor9R0+c3PD5HftcTDQFlgoSBQrdc1RIiDq6expvDYdc7
         KMRij34EQDUft85X9DmjMoLLnlUBMoEOBDgStaGyEV3FGUKBBnqhj2AuoVQsCf1Pzfq2
         hkSwNJLPjW+ovgmgh2L4PLIaijpwqPkL/0I1Do2bFl61fRaUJyogSG4jhacW2BVNBw3K
         AYiPhvcRkulQHEe4TSvMjAi6olD58TRtdfjGM9zFkl1PAVvm++Td02N4jXpWEVo/HCck
         0KgwCYrBW6Z7OboUW4rpDcG+IX2Nn00GxEIfRDycUsiRyTV2rLM1zSvs+tJlAXqFQbl3
         DZuw==
X-Gm-Message-State: AOJu0YwOvx9EhAy+vqZC50ew/lF2Veitbsh71RCqcCsFjxJdo0euMrpM
	A9/uamca677wfIUjYimS9YWLnVZu6mo/75PVaog=
X-Google-Smtp-Source: AGHT+IFrojAXgVVGst6JFQ0C2v6XMWIlWUwMMsKEePdzd+QZppOC/bSo9UUG0gwct+RD/tgsIxswtt+y5ED36ahcmWw=
X-Received: by 2002:a05:620a:2a15:b0:767:c30:517 with SMTP id
 o21-20020a05620a2a1500b007670c300517mr2947653qkp.3.1695111474434; Tue, 19 Sep
 2023 01:17:54 -0700 (PDT)
MIME-Version: 1.0
References: <20230915111130.24064-1-ray.huang@amd.com> <20230915111130.24064-6-ray.huang@amd.com>
In-Reply-To: <20230915111130.24064-6-ray.huang@amd.com>
From: =?UTF-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= <marcandre.lureau@gmail.com>
Date: Tue, 19 Sep 2023 12:17:43 +0400
Message-ID: <CAJ+F1CK6_vDhh_=2kvHXkba8HYTvTuCP9ov-xW9EJ76SB4toWQ@mail.gmail.com>
Subject: Re: [QEMU PATCH v5 05/13] virtio-gpu: Configure context init for virglrenderer
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>, 
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, Antonio Caggiano <quic_acaggian@quicinc.com>, 
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, 
	Dmitry Osipenko <dmitry.osipenko@collabora.com>, =?UTF-8?B?QWxleCBCZW5uw6ll?= <alex.bennee@linaro.org>, 
	qemu-devel@nongnu.org, xen-devel@lists.xenproject.org, 
	Gurchetan Singh <gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com, 
	=?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= <philmd@linaro.org>, 
	Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	Alex Deucher <alexander.deucher@amd.com>, =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>, 
	Xenia Ragiadakou <xenia.ragiadakou@amd.com>, 
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, Honglei Huang <honglei1.huang@amd.com>, 
	Julia Zhang <julia.zhang@amd.com>, Chen Jiqian <Jiqian.Chen@amd.com>, 
	Antonio Caggiano <antonio.caggiano@collabora.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi

On Fri, Sep 15, 2023 at 6:16=E2=80=AFPM Huang Rui <ray.huang@amd.com> wrote=
:
>
> Configure context init feature flag for virglrenderer.
>
> Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> Signed-off-by: Huang Rui <ray.huang@amd.com>
> ---
>
> V4 -> V5:
>     - Inverted patch 5 and 6 because we should configure
>       HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
>
>  meson.build | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/meson.build b/meson.build
> index 98e68ef0b1..ff20d3c249 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -1068,6 +1068,10 @@ if not get_option('virglrenderer').auto() or have_=
system or have_vhost_user_gpu
>                                         prefix: '#include <virglrenderer.=
h>',
>                                         dependencies: virgl))
>    endif
> +  config_host_data.set('HAVE_VIRGL_CONTEXT_INIT',
> +                       cc.has_function('virgl_renderer_context_create_wi=
th_flags',
> +                                       prefix: '#include <virglrenderer.=
h>',
> +                                       dependencies: virgl))

Move it under the "if virgl.found()" block above.

I suggest to name it after what is actually checked:
HAVE_VIRGL_CONTEXT_CREATE_WITH_FLAGS for ex

>  endif
>  blkio =3D not_found
>  if not get_option('blkio').auto() or have_block
> --
> 2.34.1
>
>


--=20
Marc-Andr=C3=A9 Lureau


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 08:25:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 08:25:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604454.941831 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiW2t-0008Jv-KL; Tue, 19 Sep 2023 08:25:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604454.941831; Tue, 19 Sep 2023 08:25:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiW2t-0008Jo-HZ; Tue, 19 Sep 2023 08:25:23 +0000
Received: by outflank-mailman (input) for mailman id 604454;
 Tue, 19 Sep 2023 08:25:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vY4L=FD=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qiW2s-0008Ji-4Q
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 08:25:22 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 12367e17-56c6-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 10:25:20 +0200 (CEST)
Received: from [192.168.1.15] (host-87-19-206-190.retail.telecomitalia.it
 [87.19.206.190])
 by support.bugseng.com (Postfix) with ESMTPSA id DAC714EE0737;
 Tue, 19 Sep 2023 10:25:19 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 12367e17-56c6-11ee-8789-cb3800f73035
Message-ID: <046797bc-160f-85db-d8c4-f48407cd731c@bugseng.com>
Date: Tue, 19 Sep 2023 10:25:19 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH] xen/vPCI: address violation of MISRA C:2012 Rule 8.3
Content-Language: en-US, it
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>
References: <c0a206c000f475f50d7ee52825567fcd111568ee.1694164323.git.federico.serafini@bugseng.com>
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <c0a206c000f475f50d7ee52825567fcd111568ee.1694164323.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 08/09/23 11:13, Federico Serafini wrote:
> Make function declaration consistent with the corresponding definition.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> ---
>   xen/include/xen/vpci.h | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/include/xen/vpci.h b/xen/include/xen/vpci.h
> index 0b8a2a3c74..d743d96a10 100644
> --- a/xen/include/xen/vpci.h
> +++ b/xen/include/xen/vpci.h
> @@ -26,7 +26,7 @@ typedef int vpci_register_init_t(struct pci_dev *dev);
>                  __used_section(".data.vpci." p) = x
>   
>   /* Add vPCI handlers to device. */
> -int __must_check vpci_add_handlers(struct pci_dev *dev);
> +int __must_check vpci_add_handlers(struct pci_dev *pdev);
>   
>   /* Remove all handlers and free vpci related structures. */
>   void vpci_remove_device(struct pci_dev *pdev);

Are there any chances of getting an ack?

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 08:28:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 08:28:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604461.941842 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiW6H-0001Ev-2Q; Tue, 19 Sep 2023 08:28:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604461.941842; Tue, 19 Sep 2023 08:28:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiW6G-0001Eo-Vd; Tue, 19 Sep 2023 08:28:52 +0000
Received: by outflank-mailman (input) for mailman id 604461;
 Tue, 19 Sep 2023 08:28:50 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SkrE=FD=linutronix.de=tglx@srs-se1.protection.inumbo.net>)
 id 1qiW6E-0001Ei-Jq
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 08:28:50 +0000
Received: from galois.linutronix.de (galois.linutronix.de [193.142.43.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8ea3091c-56c6-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 10:28:49 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8ea3091c-56c6-11ee-8789-cb3800f73035
From: Thomas Gleixner <tglx@linutronix.de>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020; t=1695112128;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=g/J3RiWKdg8c3IzdjWmLh9zLCv7VF76fYepXRQtkHb0=;
	b=U3ecSGCa3F2gvLLwz1Ij5s049fnE+mB8KhUG/kINpG9gVGfyTRvYvyyxoFnM0is9mqZ0Um
	RSFc8r37Ueg5axCqiQW0rdvc8RErKGb7CCXtfrEA+F38yE/AwhQCiw6v622RKTttoTvTCz
	RTJsf6jx1UlOXNAoqOTC/hQxrmZqNEgjEcZByd3DjNjh5CD9r/CIe13PTRRCK31Q+Tjkgd
	HZeL25W9eVSai+S77A3weyQcehuhDyUfqHcTht0GIWMmWmyLC8mi+I7+W8KgGxNCqcw46D
	Q1jY8vAZtTR3H02IWJgTCCmosSGbuL+SzPWJ3XPqStgVHKCRxUiHTGzMUMrnUA==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020e; t=1695112128;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=g/J3RiWKdg8c3IzdjWmLh9zLCv7VF76fYepXRQtkHb0=;
	b=Sl2Ncxcrp84n8qOLd17+QPVSsnJWwjTJhHEW5C5C3dyLrVSuoCsaT/WfyM/4UuDdWtvOxm
	EdqWbhFdtlEDc9Bg==
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, hpa@zytor.com, luto@kernel.org, pbonzini@redhat.com,
 seanjc@google.com, peterz@infradead.org, jgross@suse.com,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, andrew.cooper3@citrix.com,
 jiangshanlai@gmail.com
Subject: Re: [PATCH v10 36/38] x86/fred: Add fred_syscall_init()
In-Reply-To: <20230914044805.301390-37-xin3.li@intel.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-37-xin3.li@intel.com>
Date: Tue, 19 Sep 2023 10:28:47 +0200
Message-ID: <87v8c6woqo.ffs@tglx>
MIME-Version: 1.0
Content-Type: text/plain

On Wed, Sep 13 2023 at 21:48, Xin Li wrote:
> +static inline void fred_syscall_init(void)
> +{
> +	/*
> +	 * Per FRED spec 5.0, FRED uses the ring 3 FRED entrypoint for SYSCALL
> +	 * and SYSENTER, and ERETU is the only legit instruction to return to
> +	 * ring 3, as a result there is _no_ need to setup the SYSCALL and
> +	 * SYSENTER MSRs.
> +	 *
> +	 * Note, both sysexit and sysret cause #UD when FRED is enabled.
> +	 */
> +	wrmsrl(MSR_LSTAR, 0ULL);
> +	wrmsrl_cstar(0ULL);

That write is pointless. See the comment in wrmsrl_cstar().

Thanks,

        tglx


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 08:31:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 08:31:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604466.941851 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiW8z-0002dr-F2; Tue, 19 Sep 2023 08:31:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604466.941851; Tue, 19 Sep 2023 08:31:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiW8z-0002dk-CK; Tue, 19 Sep 2023 08:31:41 +0000
Received: by outflank-mailman (input) for mailman id 604466;
 Tue, 19 Sep 2023 08:31:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ezs9=FD=citrix.com=prvs=619432e5c=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qiW8x-0002de-LI
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 08:31:40 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f157d285-56c6-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 10:31:37 +0200 (CEST)
Received: from mail-mw2nam12lp2044.outbound.protection.outlook.com (HELO
 NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.44])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 19 Sep 2023 04:31:25 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA0PR03MB5449.namprd03.prod.outlook.com (2603:10b6:806:bd::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 08:31:23 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 08:31:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f157d285-56c6-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695112297;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=gi1JTXRA9rmBGvhQl0IE3e0CMwy1ZB+ZR+Ko/Ee2QbY=;
  b=aSQAxnvhWMxrsIoHGCPa0A//PxPnAxHhK6yk7+JS1xg2wQwjYXS46euP
   jgK5OMWG2w7vqt2DFmfXgZdwkhbN+vttrLNgqyn+7FJpafjBpw61XhaXm
   eWKJYfNUQxPr8qnAiTnxOihs8lQc8/+2w/DbcaqGUoRMp7ZOhvIV57KLc
   Y=;
X-CSE-ConnectionGUID: ZS/f9KO5SnyNu/Jni0cv2Q==
X-CSE-MsgGUID: /ySHSVfqSZSOY07nfqinkw==
X-IronPort-RemoteIP: 104.47.66.44
X-IronPort-MID: 121711759
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:2toQGqo7vM3hZO949JxLKSLRIz1eBmInZBIvgKrLsJaIsI4StFCzt
 garIBnQPfqLZ2X9L95waIS390IEu8DVytQ1S1Fo+CFjQnhEpJuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GlwUmAWP6gR5wePzihNVvrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXAAI2KR7SpMXr+7SqbPQrpMIidML1ZrpK7xmMzRmBZRonabbqZvyQoPpnhnI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3juarbIa9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAttNTeTnq68CbFu7gX0oKCYoW0KAk8KeuxbhXdxGK
 koX5X97xUQ13AnxJjXnZDW2rXKJpB8XXJxLHvcz5gCLy4Le/gmCC24LCDVGbbQOpMIwADAny
 FKNt9foHiB09q2YT2qH8bWZpi/0PjIaRUcJYikfUA8Z4t/siIsugQnCSNklG6mw5uAZAhn1y
 jGO6S0h3bMaiJdR073hpQybxTWxupLOUwg5oB3NWX6o5R94Y4jjYJG07V/c7rBLK4PxokS9g
 UXoUvO2tIgmZaxhXgTUKAnRNNlFP8q4DQA=
IronPort-HdrOrdr: A9a23:rqn19K9TtgwG2XgkjLZuk+AuI+orL9Y04lQ7vn2ZKSY5TiVXra
 CTdZUgpHnJYVMqMk3I9uruBEDtex3hHNtOkOss1NSZLW7bUQmTXeJfBOLZqlWNJ8S9zJ856U
 4JScND4bbLfDxHZKjBgTVRE7wbsaa6GKLDv5ah85+6JzsaGp2J7G1Ce3am+lUdfng+OXKgfq
 Dsm/auoVCbCAwqR/X+PFYpdc7ZqebGkZr3CCR2eyLOuGG1/EiVAKeRKWnj4isj
X-Talos-CUID: 9a23:U/gZEGykVPxmT49xsjb4BgUmIYcrI176kUzWMmmlTkRvSeWeVwWprfY=
X-Talos-MUID: 9a23:M7138AgTy4jXhIgEdUA/y8Mpc9ZTw5+QBlk2o64hipHbMyJpOjGek2Hi
X-IronPort-AV: E=Sophos;i="6.02,159,1688443200"; 
   d="scan'208";a="121711759"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kuskropNnC/foeiKhc/6BXWk83n2VfbP2SQqq64UQEJ2QPOBYsaEvcvq+QjXDjdmJGijg+mfpqfUHdB1803XgDPgPvPJLgtZ+4rcymnjmeZogvQhoc3I3Mv2p9CI0s3O1miXz0BPEcnUhT8j7Max4UZyf1CZQejHWFBfJGlS1qATf0isHVY49/idJjRaNvkIM7scoNY7KC7Gajx+ZYH8Q0J5ZyxBb2ceYsM1TQeYLKvSq19bOViPEt2IpC8Q2YYvGQNsnTK8IU/+o7NQbsLNqfopTmAEcz0kKylOzGY2U7ixGMSDNG0yTo1uQdNqs6ng0oOAbokNtYfYiJ9N8h0xfQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=tATRAKhgy61lLSaXLbDX1q9Ae+8ay0WSHnJOxD5lsJ8=;
 b=Nt8CopxrQ8GOq4dxsoglIhjsDOdujYZg/w7nHCCRdmAFCOPu2X8Vwygv/ThNjqEX3zp+1TpAbyyhtdmLME6Cf6I5qoHKsILDWs8+ECRU/dulI2XkYFgQs+66/V6spBrMS18Ilvcq9tNg8VlOmBF04ATvWaum7j4ekXH7YGURyxcpOsc1ILXzjJa2ClGAAzCcY9B7SsfnFdzfjPfdK4+aN87fbj0CBLETRuc9PkxLmOOieqAnGIzIy80PlWpaWmwMjS7llcS6VxxBYsmVlYuQhGaUXQv4h8B6Z7z3qfTpJq6j64gH+FctOfxz0iolS1HBT/PDlPEt5BikzOU2pt+BGw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=tATRAKhgy61lLSaXLbDX1q9Ae+8ay0WSHnJOxD5lsJ8=;
 b=TgorV9iQO6ttC2HRbflJXxCKicSFuVRmACK8QiJu0leAtxtfmaSYVaX8iA9xWf/okS0KoqwgD7QCmas8ZizTPcR7xmfsBAs/De5wINcGnSOAHAnUBD1HHZ/SN8uzIthCHrrc07lXa+T4E2deK7etpNyWBl4RNEO2a74eA02Kka4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 19 Sep 2023 10:31:17 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com
Subject: Re: [XEN PATCH] xen/vPCI: address violation of MISRA C:2012 Rule 8.3
Message-ID: <ZQlcVIgnAx6RNun3@MacBookPdeRoger>
References: <c0a206c000f475f50d7ee52825567fcd111568ee.1694164323.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <c0a206c000f475f50d7ee52825567fcd111568ee.1694164323.git.federico.serafini@bugseng.com>
X-ClientProxiedBy: LO2P265CA0304.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a5::28) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA0PR03MB5449:EE_
X-MS-Office365-Filtering-Correlation-Id: 3d1c8c54-1226-444f-a616-08dbb8eace87
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	B/2T2CUreppm0nPMj06jAII9lplH1ntxd6HIfzhINR050P9d92BvYWyeXIuuJsSGdqzzWTV2qBu95w7yqU8uF9kFex8sUYLZhgLCsXhM9b8CVD6s7y3S5ZxNZjzRoGOvlDjnNqtRwCgM9eYnNDa9v0pFmm2aSLh2OrCBRXTzCA6bvIc4mu44RRj3ENPeupksFcVF/hhq8DW9jMOIH9xVi0x5KtHTRYd6VyJav7fe+PPz57jbEiwQ+2Kzp1jVF6w7JLvUGntSNJBpbbXjYHMez6H94Zx4E33poA5JdoWqHv/5Ri/VOv6l1Iu9XE0FqQv0P9X3ijIWukvW50tgH73tBsm1QYs2vHj/m94aC2+f7Tdmr/GVcbcndYldiZ+9qEa9Gz84NXop0r1HO8FKPrDqddgSTxhLiypk6L8ay1vbi39jD3pbsnqJwKXoxgS0rUDHjfTXDI+b87MyhFL9dM7kB8+pbovV/RiW+SKFGqZQ5mpMLix2OUY8aX+BOuppomOzZ4wK9N9KP0dBLB2HC3Hyhv+AouQ1Att0W8JOrYJRD1vMP0s1HRb1foG/d1wDMlLC
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(376002)(346002)(396003)(136003)(366004)(39860400002)(1800799009)(186009)(451199024)(6512007)(9686003)(41300700001)(33716001)(26005)(316002)(66476007)(85182001)(6916009)(66556008)(66946007)(478600001)(38100700002)(6486002)(6506007)(82960400001)(6666004)(5660300002)(2906002)(558084003)(86362001)(8676002)(4326008)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SkNidmhhMlRsOTh1U0RvN2kyVzlSNWlqby9CYUZqSmxvWkVGbFlEYjRJVndO?=
 =?utf-8?B?SlA1b0Zma3VMVnI4MVJiM1hZZy9DUDl3RzhHQWpPYjlJMVVOQnJFU0N4Mkdx?=
 =?utf-8?B?ZmJkSHE5elc2QTM4RzV2em14dERJRkhLWVhYVm5RVGdIYlhYL0Q1ek9hZ3lt?=
 =?utf-8?B?SUovMHROdkJSOVp3TURsbkdMM3dSZ2FIdG04UWQrcUx3a05KYnZTcG0wdWdI?=
 =?utf-8?B?MmNvdUdIZmhjRVlOeEJKMUVEdWFRVXFQQ3I0eEx6WGRDLzAvWWZRN1AzVTlE?=
 =?utf-8?B?bWJybkF5OVdOblNlM2tMZkhQSlpRcEE5RkgvenRlSHdoY0hVK0hyZGVSL0ti?=
 =?utf-8?B?cWtvd0Q1RlQ1L1ppNVdZUmJRRi9acEI2VTVLRUxDbjFJdFlvakRGSThYVUN3?=
 =?utf-8?B?NU92L3A3dm01aGJWa3VBcy9vQWFYQUZWOGdoc0N4SE9yYW14UkJEZ3hxanFt?=
 =?utf-8?B?a0dZSFNrak96MisxY1dYRGlnMndPWmZmRHFBR0w5R0p0Z0NGM0RadFFhRVZN?=
 =?utf-8?B?T2sxd1E5NEhyUVBhT0F6MGRwN0xXUEZRSldnUm42aEZsYnUzTC9uMm0xR1hS?=
 =?utf-8?B?L3hMazAwNzJaUDRqdWhyNFNnMUh5UVZmdnpDbHJ1YmZwOTAzWmkvMGVRMUNY?=
 =?utf-8?B?cFQ0REgvT2phSXZVdG5NOFNiK2dnUGd3SStpTlZacXEyem44NWNEZ0htcVFD?=
 =?utf-8?B?bk9hYkFCUFFBN2t2Z01vNlNTYTR1QjEzOTFkRUMwNzZjRGFKRlV6VVF4aHl0?=
 =?utf-8?B?MGE5YmxaNTJwSmRBOC9zamExRDNOeFlPdXp4QWxzL0lVVkpqQW5KdFBOSUR0?=
 =?utf-8?B?TkIzQklEa3QyMDBGYnNGdk81L1I5T2hkMkdrcUlSdWRnN2ZvREpiV3lMcGk3?=
 =?utf-8?B?Qnh3eFpnMlhQczljcWpCdjFVemhYL0JGamdGS3N1SUp0eVZldWZLczhMRXRD?=
 =?utf-8?B?dUtUWWZuT2RkbE1mYkowZExLeHo2V2hyWVNDcDBucUtqdzh0cnljMGlodS9y?=
 =?utf-8?B?K2NZMG4zRUgrZjZsSG0yU2xuM1BXTXQxS2VKRWtHOCtOcUNDRFJvM0ozSmh5?=
 =?utf-8?B?N1hDSy9OZEFuR0ZBeFZoMGlTdXdhcFJSVXJKcUhwZzJWU09KY2lPZStDZ3Fh?=
 =?utf-8?B?bEZzK0xyYVFLT3lEL1V6MThMbUxlU0h5bzFhdlRjcUVPZk9Bc3BMc2dPQXNY?=
 =?utf-8?B?Q2Z2UEd1NE9jSG5Na3NCTkVFdDFLTUtyZ2FxOTNXK0RvRE9hY1BMNUE2VXMr?=
 =?utf-8?B?TE5pYndDUjM5TStnTjhHNjM1L0Yxc0Uzd0EyY2NMakQ5ZEdTMXhMSksrcVBS?=
 =?utf-8?B?dkNyNUlCa0JiSS9QQVkzSG1oa3RVazl3K1NTNk15YUp0N0lpbDN1bityQXlI?=
 =?utf-8?B?bm9PY1Y2OGRKYTlCM044aVhZaU5aYVZsanJCZU8zRXlXVFhlUHN1b2hweUg0?=
 =?utf-8?B?eDd4bFhEVUdtdEhEUTB1Tm9zV0YzVnNhUHIzRytWV2FYN3RvSzhJd3NTN0Vx?=
 =?utf-8?B?Q0tzM1F4L3dETkVZVDl5NUhJMEhCRXlzeDFDQjh3U2FKRUYwOTRoTlFrTFpv?=
 =?utf-8?B?R2dYTXZjV25zNklBNGhzSzNNUWszaEpPNWlGbi9kWEZueWZVLzAxaWwvenln?=
 =?utf-8?B?d3VVTkZMZ0FmcmR6RmlyenlVTVg5bFNyNGVvYkVWOFAxRjUvekxlQ2svVWMz?=
 =?utf-8?B?K2RaMmEyeE5oUmMvM01ZSEl3SVlvSG5Ublg0RWVtWnNUa2hDekx3aEdEVGR2?=
 =?utf-8?B?VW96T2ZhNG5KbS9URHR3eDZwMmFrQWR2SzFGTzZLaE84bkRXM2VyS1RNbzJ6?=
 =?utf-8?B?eDRvclZhVnFLM1p1T3hpcVc1S2ZnTGk5NFNGd2QvRGZLVzZ5U1JzL2JyeXls?=
 =?utf-8?B?ZXNsdjZuTVJCOFdhbHVHMDNrdEdqRWV5YlphVExZVHphZ21VanN3RXRKd0RO?=
 =?utf-8?B?RE5udCtJN21pT040c1FKZEY2U0RnQlQwOEFJSXdEMnBVa0YvNW5YanQvNmw5?=
 =?utf-8?B?ZkpuVjlmb2REeW8zSEFrTGo5Vjh4cXRJSStDaTJDQ1RDNGZBMGxqb29uWHJm?=
 =?utf-8?B?bld1YXg2aTFVVW9xc0tUZ1RiZGhidDc3MDNHYlV1NFZQNVg5NC92T2pHN1Uw?=
 =?utf-8?Q?wn3gC5pH5sF4FAgEHHylbFxnK?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	xKFdDsgNYqMxxtRrtE5DcZdXGbDcnNNvcB7XoHZqoU+ukNSK6ZN7yOwgf4f/6ZrTWXNqw2TXYjIXlfpUlOldRQMs10GrmJJ4xQW9MmaY4RLRBuuj6rkbK+Nh8TeqClstYGtsPucp/3/kswj7/xvVM3f2mLH9gFT2iNqn6z40NnXeqWLessx38TMPyAlcKN7oe4f5VLDqQEQWW8m2gwzvBtPzuA1YjeA8GtSOznMI2+o3OrcpYAToE9oa20sk6jP2kVGpSGdRUzouyeMUFCy/nuhMWyZoljAE6b5iCvgvbMNWut8BCFwOMZ6z/uBKCQbBL5jiBMCXOYkbmD0iE14WqFwrIpancsu0ERs79c1VZr/qSqupDC/z2ZDnaNinXCmeXLMA3Pf1c0jpaMLpYUWuDHdvFY2MdA/W50wUYNfx8+TCcCJPHl+8/YGvxzyNb7WlgpLlS+zuk4sgV65W3p9/e7qg0Ehswis/b55u6a7vxADy+GBWCzLt51qk0Uyl+SKN/i4NxUuhCQE/65Fqjc7amMEgoY84YVdO9I4vFJS9GaBmaktl0fX1A7B2CrEOaYsFUNDHQceyhHXMnB6ACk4foB3udWkpYaNA+mHedmuT9U/vhg9cRbCQ9aV6M2wRgYpyo3tuHqAMbjcCaMKcuqr/b+4oOIgRLUpjy/99Tg9gqU1UOnHwNguZUtE6ko1sxV37jVnlmPs7lKh7wNKJCPEs0YsiJDSkHqtBs9ikTkW+KoDfBf19gTrm/WduHMG8GEbacDQfNvEW+DMy47l4z3IkFzJ7ANBgY8Rk/o1fgvYeVy50SK2Vq4hbTlCWE2PzS4Kz
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3d1c8c54-1226-444f-a616-08dbb8eace87
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 08:31:23.1004
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JyipwcKHyJzHTJygLir6XtV/y9qn1vk/TUnSOjpK67dgz5cg/weSoSdpTDk+bOVQ+FiJoL24wb2npx7IfOl6Rw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5449

On Fri, Sep 08, 2023 at 11:13:31AM +0200, Federico Serafini wrote:
> Make function declaration consistent with the corresponding definition.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 08:44:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 08:44:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604471.941861 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiWLB-000567-H8; Tue, 19 Sep 2023 08:44:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604471.941861; Tue, 19 Sep 2023 08:44:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiWLB-000560-Eb; Tue, 19 Sep 2023 08:44:17 +0000
Received: by outflank-mailman (input) for mailman id 604471;
 Tue, 19 Sep 2023 08:44:16 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiWLA-00055o-2v
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 08:44:16 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0618.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::618])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b66d45c3-56c8-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 10:44:15 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB6889.eurprd04.prod.outlook.com (2603:10a6:10:11d::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 08:44:12 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 08:44:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b66d45c3-56c8-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=M1dJzkuRVja2D90uAp74XUu5LN2TT7SHzCubL9yFUIxkq5M9QSUyz4hSaXnrOLnDgIg44Z4GaKQuSIPd7tnsFl5XZ54slXeRtEdbMMFo/bXeQWjVK/tWAsbkBPn8WOXKLpjXxc20IkLhPD9Lns7fRLqb01WlMST6rXLkGcIp9ZZNUAzuBdwa+RSQhz5KTqtggj3vmHwKYHVm9QgfjMgBsaf5JNR/1U+V7DAomNqQOj+ngJk2LhJ9yVOucdAF+buWTqzAmJfwxSDDp6DubMT64ylBD64yCtzbh5c6UKIlAdP5ZPQEnWCDm41VWRitBUSf0JcWHjmbnZ2x9hFCVyUW3g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ohUI3cXFUhetr9WRjFGO0/f3nOBF1PqukznpsDvyA1c=;
 b=DWqqGyazQqGx1yE04/icRixNOUssqvXAdEOZqQ8crAwxlFScQziHxfWameG7FQ/I1XaX0fkQkuTYReHO7CzSnEvVp5ZqWLEukqPUxdxZzZzXu6Jg/phKh+7SydMkqxwRW/xtN0nWjiGqxXWjpb98Pu4eadALU6g4SSzE+OdatJXfUNr5iNh2qQZFLT7bpytYpoNzVvCIOuqjgzZ1JLB/KOUSCbYbL1hZWY+Ot4qpFvZdypRhb+xGI/RFmIxpYYHpe73VigEn0RmCu/DdhMEjwd2Ame7BsxGxGw7iZ6Dq+4XAHstXvqDJfcWgObVqT2ZxnWh7emCoenrjzuuhXOCs7g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ohUI3cXFUhetr9WRjFGO0/f3nOBF1PqukznpsDvyA1c=;
 b=2Xy+kvrm1bTwMZYNQK08hUKAwEvkhp7O32e0XOuyO4XxBWK7YNl5IF8flISisE97YMb5a0RLVgczdCQuypCng4vi/Up2o8rqsv5JrRAuUx+ckRSgjZNySeWgi6uXiTv04DSkM5/B0KDgm8bHj2+RFhKVkOMOqdclB/WFkeFtgCJVK7r7XNNXpKFP7TaFOAb5SdTQULH4x851euh3De1MK3adchPG3heEjUd5BxzuTpm4hUuCHL1Qrpwq3bhFF1vRiZqiNCKyMTrfa4Dhq4Za1wFW/CpVqGe5fWmb8jLg3aQnq6LoX7ux5t3FgUZ178RpFYMfq6bUjTyCyBBJlqgxAw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <af10111b-ea41-1e6a-30bb-0b06d17d5253@suse.com>
Date: Tue, 19 Sep 2023 10:44:10 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2] x86/PV: don't use access_ok() in set_debugreg()
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0126.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b9::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB8PR04MB6889:EE_
X-MS-Office365-Filtering-Correlation-Id: 39d3dc68-afcd-448e-ee7a-08dbb8ec98ff
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xBmn6Fn2jw/LCKVv4bn2itzpN87pRZTIZ9t1oeZ3BmWeb708XnOiDGaeEa7sm5FAz4IQ7uzQq03g9YzS3b+1n4g1g1H/pj2+t1xEPvChPds43n9/GKTEKLtMubBB+miUsMabOk+uqKdgq63fzVjzAUX6SZkydheKOvwM7TMSxlBLZ2Kav0q7TW35f/7WskwgmYQpFrrb91JUOvNcnLhkYrKUbsS73a0QAaxYAifjRzUEZnXo4xnF7+W1dT6AmUqiCyBjZtQgsL0vrQ9Oxdm+GVtOZg2Ei/nOFT7mIOoH+zDRepoFJKPRIyFjJhhBiF2YqMZ/RLkq8M4GA/flxF4hFxjOlq+Xw4hCI8vvdKIKcpROb2rWRPK6CR4tSitBOG1pXIBuLv41f1+NDLaj9X+HKgsinMJVe/3SOB8WAKnEex80g2f2R32jmDeCVp7Qwv68Pjak0XpJsHnJbUIhxGgdpX+OjwEmvtOmnc4+jhiidn40+i+Q0vhVDt1z7itQMcgvWVELjRmOg+xJDYOsqYWMTYsTbxzC9VEgenW8f6iw++2obNFtIfK249u5zAm/DX1dy2VwaB1a8HfYp7wvtCof68b7+sGyf78jZH5/ANiupGz7a462+CYWIXpkWUBgcx5rO5wjrJ609nOXtVHq6PY7MQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(346002)(396003)(136003)(366004)(39860400002)(186009)(451199024)(1800799009)(2906002)(66899024)(38100700002)(83380400001)(36756003)(6486002)(6506007)(86362001)(6512007)(2616005)(31696002)(478600001)(26005)(8936002)(8676002)(4326008)(41300700001)(5660300002)(31686004)(316002)(54906003)(66946007)(6916009)(66556008)(66476007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NWplUk1WNm5sbjltSVkySXR4NENDKzZaQ0xsWCt4VHRwK1c5RTlmTmZBd00y?=
 =?utf-8?B?ZW1xcnVzQ09pS2o1SEVPZXRZbko3T1o4STVBc1U2YXA1Q3ZmRUN1dUZyNnhM?=
 =?utf-8?B?Sy9GR1V1Mko5ZmpsS3haUENPa2tZWXJEVE5HMEJyNkkxcGZ5bHkwTHNtRU5B?=
 =?utf-8?B?Z09pUTZ1K1lCeE1uNW0xMUptVWEycmF5ejFCSjlHVVlxMDNzT1ByQXh4d3pL?=
 =?utf-8?B?cUNFemgwOUJUekNHRHVNQkhROFp1Q3A2MHk1TzlZTEpQYVhIRENpK3R3d01W?=
 =?utf-8?B?Nk1TN2x4c213QU9vT0VjQmcvRWdQOC9sQTBNdTMyM3ZMeTM3ZGFXTUdhQ2J1?=
 =?utf-8?B?eEFKM1JkdVpHR0x5amNmdzhJWHJDZ0krdDVrZG9pU2JzSWNNTi8wcDFoUFIw?=
 =?utf-8?B?V01UdnRseFNKSnRSNmVsckFzNXpYRGc2WldLdEZmSjNOYTI5WndnM0NDY0Jn?=
 =?utf-8?B?YldpWW9YeE5vU3FQeEV1MEprbGxwaTY4MnlTamxrUDJjNHdLdXdPaDdScEYz?=
 =?utf-8?B?WFc4V3pLSTM2MkFzR1oyd05BVlQreVdQd3RIVmZLYktIOUhXU3pvUUQ0dCty?=
 =?utf-8?B?UzByUHZFTmVLWGtvWVNTZ1dsUHV6RUJLZisva0dGdWY5Ly9XQmIvN2FHZTh1?=
 =?utf-8?B?NWp3RFcyZ2I1VjA4QlR5NFFXWCtTV2p1cXVoQVJjQ1NLUDNGRjlKTm9nMEJk?=
 =?utf-8?B?S1kyL1gzM1Fhc3JKLytHeUd6bkpVYm1EeE1nTlhtYnhDSEpnNUlLSHFVbzBO?=
 =?utf-8?B?RXByWGRGZC8xMUc4YVd0bVk5TjQxR2xtNkJPOFhGQTRwcm02ZHpONWJhbGdC?=
 =?utf-8?B?UXlhNmNqUC8wTXpFV2NhUjRudk1xV1gvWEdPV2h6WGJPTVdVcU9hcG4welFD?=
 =?utf-8?B?ak1CTGh2UWw1QmQwK0hGQjg4amVxbVRwV0NMWUxTYXdtT1QwcjJFZTRoZXZy?=
 =?utf-8?B?cG5FWksvakFIdEJWSVd2ekViMnpJUXoxSE95cWk3alR4UGF3dnI3dmkvcllB?=
 =?utf-8?B?dHpTYWp5d3NaM2NFdEhteHBtY3NkN2hJTzNmdExOSGNPL3NhK0t5TDVRNDZW?=
 =?utf-8?B?VSs2RGkrajIyczU2OUdoZERaT2t6YVJIa2FrVEpkUGVrR2VTdkpmVnFncE11?=
 =?utf-8?B?b0x6N1c0eE1CZWs2RkI3NHR5N0FseW5GNWRib0FNVXorYlBtV0FFS25vRExp?=
 =?utf-8?B?MkNvd3RtSzc1R3ZMa0dxR0R3V3VnSG13dnRPZU1hNGd6bCtnRDBGOVJJMUdI?=
 =?utf-8?B?SjNWVG1ZWUdtcVEvWWhQQ01NOUs4Zk1PNzFyanhjWGZVaWRZcWpIdDdoNUU4?=
 =?utf-8?B?amFUUjJZTEl6Yy9kU2NMZ1hNSjYrWGhmZTJycUNBN1JRdjJTR2xtYk5GRTNC?=
 =?utf-8?B?TnYxbHNXZXcrRFMxbHdwVldNU1NQcTNHaXA5dDlTdlYybGhoYVZKbldIZ2dl?=
 =?utf-8?B?aGtUcEJGNDIyclZ0SklDd2tpRG8rY1NORDVkYXFWcmxzUENKNEJUdlNDcWhR?=
 =?utf-8?B?K0dIdVlReFAxdE42WUxWWGZRVkkwUEtEckJ6SFJYRFBOaUMybFUvdjJBQ2ln?=
 =?utf-8?B?ZG9YbGNjcXU1T2ltT1Q1bWxyYUR6c1NwUThPbGUrQUt0aXV4cUV6U09uUHpj?=
 =?utf-8?B?K3NFNUVyQlhWOW02SHM5dmtNaXViTWJTOFhvTnc0QThRaHBVWkpONWNwVTVl?=
 =?utf-8?B?WWdXSTlIUjV1M2o0N2d3M1puSUNZdUxXeEZwNWdWOUs4NWcvbUc2QmVha1hV?=
 =?utf-8?B?bWxVVmliMGNzSWsrS1NYNUIwdk9rOWFIOFVPeVVFZ3lhVnZwRTNtVWN1dFZt?=
 =?utf-8?B?QXlvUDh2ZU5vWUpneUh5Y3E1QU02SmFGWXI0NndnNUp4YW15a2s3UTlkVFN2?=
 =?utf-8?B?VlJPcEIzbkg4b0crYU5YOFlRcW5wQmtLUlQ3aFVPNjlNZitTR1Q0a0FIY3ZJ?=
 =?utf-8?B?aEhPcnMzR1ZoK3hHczlValk3WFN3b1JtbGxoYmp6dEJtZnVRbkczT2FLdVc4?=
 =?utf-8?B?Z0lEbjZWbWtQbm1OTnJ2ZitOSzEzYXJCZHZaNldBTytENWJ1ejNQaTNGY3hE?=
 =?utf-8?B?bWtPSGJaZFJxWHJzMG1XRXlvYWtvazhzWXVNTGxyelgvVHFhVmh2aEFGcVV2?=
 =?utf-8?Q?Pe6amuX1aIIZlEQotfoSIwCjw?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 39d3dc68-afcd-448e-ee7a-08dbb8ec98ff
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 08:44:12.3364
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Kyu8bUlJuTT6Tpg9n0ifv6Y1rTk8YP83Sf4PHs3/5/ZNwL74qsXm2zzizjqtrtfktw6cSZUixgfsiKk3jju1OQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6889

access_ok() is not be applicable here; we really only want a linear
address check for breakpoint addresses, as putting those in debug
register isn't going to result in actual memory accesses. Furthermore
access_ok() assumes to be acting on current, which isn't the case here
when called from arch_set_info_guest().

Note that access_ok() was too lax anyway for 32-bit domains.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
The questionable use of sizeof(long) is left in place for the moment,
as it's not clear how to best deal with the upper bound of breakpoint
covered ranges: We'd like those to not cover Xen space.
---
v2: Duplicate the change to arch_set_info_guest().

--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -1085,8 +1085,15 @@ int arch_set_info_guest(
     if ( is_pv_domain(d) )
     {
         for ( i = 0; i < ARRAY_SIZE(v->arch.dr); i++ )
-            if ( !access_ok(c(debugreg[i]), sizeof(long)) )
+        {
+            unsigned long val = c(debugreg[i]);
+
+            if ( is_pv_32bit_domain(d)
+                 ? val + sizeof(long) > HYPERVISOR_COMPAT_VIRT_START(d)
+                 : val + sizeof(long) > (1UL << (VADDR_BITS - 1)) &&
+                   val < HYPERVISOR_VIRT_END )
                 return -EINVAL;
+        }
         /*
          * Prior to Xen 4.11, dr5 was used to hold the emulated-only
          * subset of dr7, and dr4 was unused.
--- a/xen/arch/x86/pv/misc-hypercalls.c
+++ b/xen/arch/x86/pv/misc-hypercalls.c
@@ -61,7 +61,10 @@ long set_debugreg(struct vcpu *v, unsign
     switch ( reg )
     {
     case 0 ... 3:
-        if ( !access_ok(value, sizeof(long)) )
+        if ( is_pv_32bit_vcpu(v)
+             ? value + sizeof(long) > HYPERVISOR_COMPAT_VIRT_START(v->domain)
+             : value + sizeof(long) > (1UL << (VADDR_BITS - 1)) &&
+               value < HYPERVISOR_VIRT_END )
             return -EPERM;
 
         v->arch.dr[reg] = value;


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 08:44:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 08:44:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604472.941868 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiWLB-00059V-RC; Tue, 19 Sep 2023 08:44:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604472.941868; Tue, 19 Sep 2023 08:44:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiWLB-000593-MP; Tue, 19 Sep 2023 08:44:17 +0000
Received: by outflank-mailman (input) for mailman id 604472;
 Tue, 19 Sep 2023 08:44:16 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vJAK=FD=gmail.com=marcandre.lureau@srs-se1.protection.inumbo.net>)
 id 1qiWLA-00055u-Pn
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 08:44:16 +0000
Received: from mail-qt1-x82a.google.com (mail-qt1-x82a.google.com
 [2607:f8b0:4864:20::82a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b5c60e7d-56c8-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 10:44:14 +0200 (CEST)
Received: by mail-qt1-x82a.google.com with SMTP id
 d75a77b69052e-414b0bdea1cso33409261cf.1
 for <xen-devel@lists.xenproject.org>; Tue, 19 Sep 2023 01:44:14 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b5c60e7d-56c8-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695113053; x=1695717853; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=tSPqPDf8nsvFZaFxwg/g+Umz+SUc9WqZu3/LEnpNQzw=;
        b=nJNnBRjY9qcc5/RmaLKe/q3pVq1aya6liUepZVfxOPHmAudUNziMPd2ME5A9HM9qAQ
         +E1KjiYf3zAkQ3FzZSPThC3nbKUMpSFU32bh6I/5R5/ml/03z9Q5SHFt91p6X2l1xS0g
         0a8qatIeZYHtB33wNJOGG2/4SJHVxbQDkhUZ2DaJs4znTaGm/21gagHHlcMEeaJHZH9H
         4oM13lyl4+vXKSPzB61o+Bv19HjRWPH2xDXHRyk7IssfaYOmcUGXwZDW5AKL82mxq6Hz
         u7LhpAPTccQMALOGNndyTZ9y2ZYyyiYyiqsctcOvtWmenUwMXsKDhgaTWkxkBHY8k08E
         nYZw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695113053; x=1695717853;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=tSPqPDf8nsvFZaFxwg/g+Umz+SUc9WqZu3/LEnpNQzw=;
        b=aQjoS8MFaoXZRvo4md/E3ek5912p1+PjDAmGHR4R1zldoNImUXrs+LU/yGx6XkQ98D
         E9VI1Sp8CU/wP9FIZ42a4AdYRZdEFIGZppOSp4Vo9elnH9lNEHo6M9xGRc1wdn+dvGSH
         mQcjV5eN4I7W2xJNtoeHMk54ElwK4PBxpPJXV6JuWsgpMsirn2gknuNxaqw1JFVsDfcM
         sRZWP+mh6kF3GC5y9F8sxHosVL8ruQSr9ZZU+Q1x/bydT7hWu2FfLZ5fT43yakCtaLtn
         77EOWM1QvBQNR5rgd4UIKbsXVXDA7pUU+SF49ajuDPNfmie7RcS/4VnJcSHM8libOKBw
         lLIw==
X-Gm-Message-State: AOJu0YxgvTsnBxlvOtJJ4ALi/pE95XYKALaYuQYqUVsSIRv9gq/DTc7Q
	qRkZlt0HBHcX8NoEvaZB6BwPwNAjAkxWE7I8uHw=
X-Google-Smtp-Source: AGHT+IG7CfrCudSu55UtNC9g0tpCqpgQhdg07s8gwIFfvPUeEzvt0Y7Lwhg4dccpLwkAzRrKxR+WFwnXO3exR5P8+Ho=
X-Received: by 2002:a05:622a:1208:b0:417:cca3:d0ed with SMTP id
 y8-20020a05622a120800b00417cca3d0edmr1730002qtx.48.1695113053241; Tue, 19 Sep
 2023 01:44:13 -0700 (PDT)
MIME-Version: 1.0
References: <20230915111130.24064-1-ray.huang@amd.com> <20230915111130.24064-10-ray.huang@amd.com>
In-Reply-To: <20230915111130.24064-10-ray.huang@amd.com>
From: =?UTF-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= <marcandre.lureau@gmail.com>
Date: Tue, 19 Sep 2023 12:44:01 +0400
Message-ID: <CAJ+F1CLXqxGKOoOvmXKZWJYENmH6Z3CJhoftvjQBRFO=fhtQuA@mail.gmail.com>
Subject: Re: [QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>, 
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, Antonio Caggiano <quic_acaggian@quicinc.com>, 
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, 
	Dmitry Osipenko <dmitry.osipenko@collabora.com>, =?UTF-8?B?QWxleCBCZW5uw6ll?= <alex.bennee@linaro.org>, 
	qemu-devel@nongnu.org, xen-devel@lists.xenproject.org, 
	Gurchetan Singh <gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com, 
	=?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= <philmd@linaro.org>, 
	Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	Alex Deucher <alexander.deucher@amd.com>, =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>, 
	Xenia Ragiadakou <xenia.ragiadakou@amd.com>, 
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, Honglei Huang <honglei1.huang@amd.com>, 
	Julia Zhang <julia.zhang@amd.com>, Chen Jiqian <Jiqian.Chen@amd.com>, 
	Antonio Caggiano <antonio.caggiano@collabora.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi

On Fri, Sep 15, 2023 at 3:14=E2=80=AFPM Huang Rui <ray.huang@amd.com> wrote=
:
>
> From: Antonio Caggiano <antonio.caggiano@collabora.com>
>
> Support BLOB resources creation, mapping and unmapping by calling the
> new stable virglrenderer 0.10 interface. Only enabled when available and
> via the blob config. E.g. -device virtio-vga-gl,blob=3Dtrue
>
> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> Signed-off-by: Huang Rui <ray.huang@amd.com>
> ---
>
> V4 -> V5:
>     - Use memory_region_init_ram_ptr() instead of
>       memory_region_init_ram_device_ptr() (Akihiko)
>
>  hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
>  hw/display/virtio-gpu.c        |   4 +-
>  include/hw/virtio/virtio-gpu.h |   5 +
>  meson.build                    |   4 +
>  4 files changed, 225 insertions(+), 1 deletion(-)
>
> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.=
c
> index 312953ec16..563a6f2f58 100644
> --- a/hw/display/virtio-gpu-virgl.c
> +++ b/hw/display/virtio-gpu-virgl.c
> @@ -17,6 +17,7 @@
>  #include "trace.h"
>  #include "hw/virtio/virtio.h"
>  #include "hw/virtio/virtio-gpu.h"
> +#include "hw/virtio/virtio-gpu-bswap.h"
>
>  #include "ui/egl-helpers.h"
>
> @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
>      virgl_renderer_resource_create(&args, NULL, 0);
>  }
>
> +static void virgl_resource_destroy(VirtIOGPU *g,
> +                                   struct virtio_gpu_simple_resource *re=
s)
> +{
> +    if (!res)
> +        return;
> +

QEMU coding style imposes braces

> +    QTAILQ_REMOVE(&g->reslist, res, next);
> +
> +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
> +    g_free(res->addrs);
> +
> +    g_free(res);

If you embed virtio_gpu_simple_resource in a new struct, we should
instead call the existing virtio_gpu_resource_destroy() I guess.

> +}
> +
>  static void virgl_cmd_resource_unref(VirtIOGPU *g,
>                                       struct virtio_gpu_ctrl_command *cmd=
)
>  {
> +    struct virtio_gpu_simple_resource *res;
>      struct virtio_gpu_resource_unref unref;
>      struct iovec *res_iovs =3D NULL;
>      int num_iovs =3D 0;
> @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
>      VIRTIO_GPU_FILL_CMD(unref);
>      trace_virtio_gpu_cmd_res_unref(unref.resource_id);
>
> +    res =3D virtio_gpu_find_resource(g, unref.resource_id);
> +
>      virgl_renderer_resource_detach_iov(unref.resource_id,
>                                         &res_iovs,
>                                         &num_iovs);
>      if (res_iovs !=3D NULL && num_iovs !=3D 0) {
>          virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
> +        if (res) {
> +            res->iov =3D NULL;
> +            res->iov_cnt =3D 0;
> +        }
>      }
> +
>      virgl_renderer_resource_unref(unref.resource_id);
> +
> +    virgl_resource_destroy(g, res);
>  }
>
>  static void virgl_cmd_context_create(VirtIOGPU *g,
> @@ -426,6 +451,183 @@ static void virgl_cmd_get_capset(VirtIOGPU *g,
>      g_free(resp);
>  }
>
> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> +
> +static void virgl_cmd_resource_create_blob(VirtIOGPU *g,
> +                                           struct virtio_gpu_ctrl_comman=
d *cmd)
> +{
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_create_blob cblob;
> +    struct virgl_renderer_resource_create_blob_args virgl_args =3D { 0 }=
;
> +    int ret;
> +
> +    VIRTIO_GPU_FILL_CMD(cblob);
> +    virtio_gpu_create_blob_bswap(&cblob);
> +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
> +
> +    if (cblob.resource_id =3D=3D 0) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed=
\n",
> +                      __func__);
> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    res =3D virtio_gpu_find_resource(g, cblob.resource_id);
> +    if (res) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already exists %d\n=
",
> +                      __func__, cblob.resource_id);
> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    res =3D g_new0(struct virtio_gpu_simple_resource, 1);
> +    if (!res) {
> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> +        return;

needless error handling, glib will abort() on OOM.

> +    }
> +
> +    res->resource_id =3D cblob.resource_id;
> +    res->blob_size =3D cblob.size;
> +
> +    if (cblob.blob_mem !=3D VIRTIO_GPU_BLOB_MEM_HOST3D) {
> +        ret =3D virtio_gpu_create_mapping_iov(g, cblob.nr_entries, sizeo=
f(cblob),
> +                                            cmd, &res->addrs, &res->iov,
> +                                            &res->iov_cnt);
> +        if (!ret) {
> +            g_free(res);
> +            cmd->error =3D VIRTIO_GPU_RESP_ERR_UNSPEC;
> +            return;
> +        }
> +    }
> +
> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> +
> +    virgl_args.res_handle =3D cblob.resource_id;
> +    virgl_args.ctx_id =3D cblob.hdr.ctx_id;
> +    virgl_args.blob_mem =3D cblob.blob_mem;
> +    virgl_args.blob_id =3D cblob.blob_id;
> +    virgl_args.blob_flags =3D cblob.blob_flags;
> +    virgl_args.size =3D cblob.size;
> +    virgl_args.iovecs =3D res->iov;
> +    virgl_args.num_iovs =3D res->iov_cnt;
> +
> +    ret =3D virgl_renderer_resource_create_blob(&virgl_args);
> +    if (ret) {
> +        virgl_resource_destroy(g, res);
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: virgl blob create error: %s\=
n",
> +                      __func__, strerror(-ret));
> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_UNSPEC;
> +    }
> +}
> +
> +static void virgl_cmd_resource_map_blob(VirtIOGPU *g,
> +                                        struct virtio_gpu_ctrl_command *=
cmd)
> +{
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_map_blob mblob;
> +    int ret;
> +    void *data;
> +    uint64_t size;
> +    struct virtio_gpu_resp_map_info resp;
> +    VirtIOGPUBase *b =3D VIRTIO_GPU_BASE(g);
> +
> +    VIRTIO_GPU_FILL_CMD(mblob);
> +    virtio_gpu_map_blob_bswap(&mblob);
> +
> +    if (mblob.resource_id =3D=3D 0) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed=
\n",
> +                      __func__);
> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    res =3D virtio_gpu_find_resource(g, mblob.resource_id);
> +    if (!res) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n=
",
> +                      __func__, mblob.resource_id);
> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +    if (res->region) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already mapped %d\n=
",
> +                     __func__, mblob.resource_id);
> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    ret =3D virgl_renderer_resource_map(res->resource_id, &data, &size);
> +    if (ret) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource map error: %s\n",
> +                      __func__, strerror(-ret));
> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    res->region =3D g_new0(MemoryRegion, 1);
> +    if (!res->region) {

no need for OOM handling here too

> +        virgl_renderer_resource_unmap(res->resource_id);
> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> +        return;
> +    }
> +    memory_region_init_ram_ptr(res->region, OBJECT(g), NULL, size, data)=
;
> +    OBJECT(res->region)->free =3D g_free;
> +    memory_region_add_subregion(&b->hostmem, mblob.offset, res->region);
> +    memory_region_set_enabled(res->region, true);
> +
> +    memset(&resp, 0, sizeof(resp));
> +    resp.hdr.type =3D VIRTIO_GPU_RESP_OK_MAP_INFO;
> +    virgl_renderer_resource_get_map_info(mblob.resource_id, &resp.map_in=
fo);
> +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
> +}
> +
> +static int virtio_gpu_virgl_resource_unmap(VirtIOGPU *g,
> +                                           struct virtio_gpu_simple_reso=
urce
> +                                           *res)
> +{
> +    VirtIOGPUBase *b =3D VIRTIO_GPU_BASE(g);
> +
> +    if (!res) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already unmapped %d=
\n",
> +                      __func__, res->resource_id);
> +        return VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +    }
> +
> +    memory_region_set_enabled(res->region, false);
> +    memory_region_del_subregion(&b->hostmem, res->region);
> +    object_unparent(OBJECT(res->region));
> +    res->region =3D NULL;
> +
> +    return virgl_renderer_resource_unmap(res->resource_id);
> +}
> +
> +static void virgl_cmd_resource_unmap_blob(VirtIOGPU *g,
> +                                          struct virtio_gpu_ctrl_command=
 *cmd)
> +{
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_unmap_blob ublob;
> +    VIRTIO_GPU_FILL_CMD(ublob);
> +    virtio_gpu_unmap_blob_bswap(&ublob);
> +
> +    if (ublob.resource_id =3D=3D 0) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed=
\n",
> +                      __func__);
> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    res =3D virtio_gpu_find_resource(g, ublob.resource_id);
> +    if (!res) {
> +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n=
",
> +                      __func__, ublob.resource_id);
> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> +        return;
> +    }
> +
> +    virtio_gpu_virgl_resource_unmap(g, res);
> +}
> +
> +#endif /* HAVE_VIRGL_RESOURCE_BLOB */
> +
>  void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
>                                        struct virtio_gpu_ctrl_command *cm=
d)
>  {
> @@ -492,6 +694,17 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
>      case VIRTIO_GPU_CMD_GET_EDID:
>          virtio_gpu_get_edid(g, cmd);
>          break;
> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> +    case VIRTIO_GPU_CMD_RESOURCE_CREATE_BLOB:
> +        virgl_cmd_resource_create_blob(g, cmd);
> +        break;
> +    case VIRTIO_GPU_CMD_RESOURCE_MAP_BLOB:
> +        virgl_cmd_resource_map_blob(g, cmd);
> +        break;
> +    case VIRTIO_GPU_CMD_RESOURCE_UNMAP_BLOB:
> +        virgl_cmd_resource_unmap_blob(g, cmd);
> +        break;
> +#endif /* HAVE_VIRGL_RESOURCE_BLOB */
>      default:
>          cmd->error =3D VIRTIO_GPU_RESP_ERR_UNSPEC;
>          break;
> diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> index 5b7a7eab4f..cc4c1f81bb 100644
> --- a/hw/display/virtio-gpu.c
> +++ b/hw/display/virtio-gpu.c
> @@ -1367,10 +1367,12 @@ void virtio_gpu_device_realize(DeviceState *qdev,=
 Error **errp)
>              return;
>          }
>
> +#ifndef HAVE_VIRGL_RESOURCE_BLOB
>          if (virtio_gpu_virgl_enabled(g->parent_obj.conf)) {
> -            error_setg(errp, "blobs and virgl are not compatible (yet)")=
;
> +            error_setg(errp, "Linked virglrenderer does not support blob=
 resources");
>              return;
>          }
> +#endif
>      }
>
>      if (!virtio_gpu_base_device_realize(qdev,
> diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gp=
u.h
> index 55973e112f..b9adc28071 100644
> --- a/include/hw/virtio/virtio-gpu.h
> +++ b/include/hw/virtio/virtio-gpu.h
> @@ -58,6 +58,11 @@ struct virtio_gpu_simple_resource {
>      int dmabuf_fd;
>      uint8_t *remapped;
>
> +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> +    /* only blob resource needs this region to be mapped as guest mmio *=
/
> +    MemoryRegion *region;
> +#endif
> +
>      QTAILQ_ENTRY(virtio_gpu_simple_resource) next;
>  };
>
> diff --git a/meson.build b/meson.build
> index ff20d3c249..f7b744ab82 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -1072,6 +1072,10 @@ if not get_option('virglrenderer').auto() or have_=
system or have_vhost_user_gpu
>                         cc.has_function('virgl_renderer_context_create_wi=
th_flags',
>                                         prefix: '#include <virglrenderer.=
h>',
>                                         dependencies: virgl))
> +  config_host_data.set('HAVE_VIRGL_RESOURCE_BLOB',
> +                       cc.has_function('virgl_renderer_resource_create_b=
lob',
> +                                       prefix: '#include <virglrenderer.=
h>',
> +                                       dependencies: virgl))

better moved under the if virgl.found() block

>  endif
>  blkio =3D not_found
>  if not get_option('blkio').auto() or have_block
> --
> 2.34.1
>
>


--=20
Marc-Andr=C3=A9 Lureau


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 09:00:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 09:00:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604488.941888 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiWal-0001rO-AG; Tue, 19 Sep 2023 09:00:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604488.941888; Tue, 19 Sep 2023 09:00:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiWal-0001rH-7U; Tue, 19 Sep 2023 09:00:23 +0000
Received: by outflank-mailman (input) for mailman id 604488;
 Tue, 19 Sep 2023 09:00:22 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vJAK=FD=gmail.com=marcandre.lureau@srs-se1.protection.inumbo.net>)
 id 1qiWak-0001rB-Or
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 09:00:22 +0000
Received: from mail-qt1-x82b.google.com (mail-qt1-x82b.google.com
 [2607:f8b0:4864:20::82b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f45a1b57-56ca-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 11:00:18 +0200 (CEST)
Received: by mail-qt1-x82b.google.com with SMTP id
 d75a77b69052e-4132c2cee1dso36056441cf.2
 for <xen-devel@lists.xenproject.org>; Tue, 19 Sep 2023 02:00:18 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f45a1b57-56ca-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695114017; x=1695718817; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=3ljUCYYbuP9GpQhL89E8rsAlwqC0CQjTBtsNR7rOlS4=;
        b=JGdh+MC7hKNk0M4GQf5bt6ckEIl2MhczTeGi0skNBh4eVi5c9PpWzABMpJE9g6npiA
         ule/fwTn1fYivHU194tyzB8B6tqvjQ9nF9gXb8jiPbk/7F7fsvaJnivKHQ7NUXYg5Bwv
         2fG2/x83y+oc4zzg5QZNUewduS6VltTnn285+L+/kIt09xWty4trKtQ4cmYAdpEifd5B
         Hit4Tu2jCJIaFi7oHF79kW+vv8lZPAMJKunNhwhNtMwjm2qz/J6/Pv/DRCr4lIlzYfIn
         zGOG28ELO1ZayGHX2E9UPH8bxInGzQyEwOfunvHXrsqNrrt2z8CAotUG9mGByUA+yeLL
         wJbw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695114017; x=1695718817;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=3ljUCYYbuP9GpQhL89E8rsAlwqC0CQjTBtsNR7rOlS4=;
        b=RkE3uz7aFyq/23Jl7PN5l66zX3R2WUQV40ZIC0ohOWHAyL5rOcwk0PdqIr8UX0MiSf
         wO4V/AEAWiXJnJo3FndahMooPyPKT6NWhxVSEL9TW10RTLldgnFbY+XNc0sV06HV+9cn
         EqwOJPd4JyuKoEFyPuHUtV1y7f90hFl2rc39L/gDn4AiQnUm8O1sav9W+gCwVdFMx/gH
         aH5nsYjrpGOGBn/PEqRqmIA04Q1CT9Rs16o9PKpp/a/NzUo2ZaZl3WrIGccaT2vuhSdE
         HtD6Whywl8xwe0kFs5W+R7s9beDk5va4eC0BRZOOIPiwsmoll3PpPdqhDrjckXa5ymfa
         BVrg==
X-Gm-Message-State: AOJu0YziaecBuCTATP2QFmTdF2cn/+RluO7PuPtYM0Mlpk4vx1yP+aKs
	gqnVYCItxb6p4lZW3wxDutxrZKxyFIydOw8FfLs=
X-Google-Smtp-Source: AGHT+IEaBC1F65blzpdWd0FLl2Y5hAU4s78EGX/exwZyKoRZhM/z/O5rPWzQCUjCKIZXg6l7uoGlPc0WejaryGV1e4E=
X-Received: by 2002:ac8:5710:0:b0:412:21f4:6f9e with SMTP id
 16-20020ac85710000000b0041221f46f9emr16522087qtw.40.1695114017154; Tue, 19
 Sep 2023 02:00:17 -0700 (PDT)
MIME-Version: 1.0
References: <20230915111130.24064-1-ray.huang@amd.com> <20230915111130.24064-11-ray.huang@amd.com>
In-Reply-To: <20230915111130.24064-11-ray.huang@amd.com>
From: =?UTF-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= <marcandre.lureau@gmail.com>
Date: Tue, 19 Sep 2023 13:00:05 +0400
Message-ID: <CAJ+F1C+aWM+TeoLxEqYqsMUow53rEBGc_qJwNS2pU2T5D2J+xQ@mail.gmail.com>
Subject: Re: [QEMU PATCH v5 10/13] virtio-gpu: Resource UUID
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>, 
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, Antonio Caggiano <quic_acaggian@quicinc.com>, 
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, 
	Dmitry Osipenko <dmitry.osipenko@collabora.com>, =?UTF-8?B?QWxleCBCZW5uw6ll?= <alex.bennee@linaro.org>, 
	qemu-devel@nongnu.org, xen-devel@lists.xenproject.org, 
	Gurchetan Singh <gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com, 
	=?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= <philmd@linaro.org>, 
	Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	Alex Deucher <alexander.deucher@amd.com>, =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>, 
	Xenia Ragiadakou <xenia.ragiadakou@amd.com>, 
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, Honglei Huang <honglei1.huang@amd.com>, 
	Julia Zhang <julia.zhang@amd.com>, Chen Jiqian <Jiqian.Chen@amd.com>, 
	Antonio Caggiano <antonio.caggiano@collabora.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi

On Fri, Sep 15, 2023 at 3:14=E2=80=AFPM Huang Rui <ray.huang@amd.com> wrote=
:
>
> From: Antonio Caggiano <antonio.caggiano@collabora.com>
>
> Enable resource UUID feature and implement command resource assign UUID.
> This is done by introducing a hash table to map resource IDs to their
> UUIDs.
>
> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> Signed-off-by: Huang Rui <ray.huang@amd.com>
> ---
>
> V4 -> V5:
>     - Add virtio migration handling for uuid (Akihiko)
>     - Adjust sequence to allocate gpu resource before virglrender resourc=
e
>       creation (Akihiko)
>     - Clean up (Akihiko)
>
>  hw/display/trace-events        |  1 +
>  hw/display/virtio-gpu-base.c   |  2 ++
>  hw/display/virtio-gpu-virgl.c  | 21 ++++++++++++
>  hw/display/virtio-gpu.c        | 58 ++++++++++++++++++++++++++++++++++
>  include/hw/virtio/virtio-gpu.h |  6 ++++
>  5 files changed, 88 insertions(+)
>
> diff --git a/hw/display/trace-events b/hw/display/trace-events
> index 2336a0ca15..54d6894c59 100644
> --- a/hw/display/trace-events
> +++ b/hw/display/trace-events
> @@ -41,6 +41,7 @@ virtio_gpu_cmd_res_create_blob(uint32_t res, uint64_t s=
ize) "res 0x%x, size %" P
>  virtio_gpu_cmd_res_unref(uint32_t res) "res 0x%x"
>  virtio_gpu_cmd_res_back_attach(uint32_t res) "res 0x%x"
>  virtio_gpu_cmd_res_back_detach(uint32_t res) "res 0x%x"
> +virtio_gpu_cmd_res_assign_uuid(uint32_t res) "res 0x%x"
>  virtio_gpu_cmd_res_xfer_toh_2d(uint32_t res) "res 0x%x"
>  virtio_gpu_cmd_res_xfer_toh_3d(uint32_t res) "res 0x%x"
>  virtio_gpu_cmd_res_xfer_fromh_3d(uint32_t res) "res 0x%x"
> diff --git a/hw/display/virtio-gpu-base.c b/hw/display/virtio-gpu-base.c
> index 4f2b0ba1f3..f44388715c 100644
> --- a/hw/display/virtio-gpu-base.c
> +++ b/hw/display/virtio-gpu-base.c
> @@ -236,6 +236,8 @@ virtio_gpu_base_get_features(VirtIODevice *vdev, uint=
64_t features,
>          features |=3D (1 << VIRTIO_GPU_F_CONTEXT_INIT);
>      }
>
> +    features |=3D (1 << VIRTIO_GPU_F_RESOURCE_UUID);

This changes what is exposed to the guest. We should have an option
for it, and set it to false on older machine types (similar to what is
done for edid).

> +
>      return features;
>  }
>
> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.=
c
> index 563a6f2f58..8a017dbeb4 100644
> --- a/hw/display/virtio-gpu-virgl.c
> +++ b/hw/display/virtio-gpu-virgl.c
> @@ -36,11 +36,20 @@ static void virgl_cmd_create_resource_2d(VirtIOGPU *g=
,
>  {
>      struct virtio_gpu_resource_create_2d c2d;
>      struct virgl_renderer_resource_create_args args;
> +    struct virtio_gpu_simple_resource *res;
>
>      VIRTIO_GPU_FILL_CMD(c2d);
>      trace_virtio_gpu_cmd_res_create_2d(c2d.resource_id, c2d.format,
>                                         c2d.width, c2d.height);
>
> +    res =3D g_new0(struct virtio_gpu_simple_resource, 1);
> +    if (!res) {

needless OOM here too

> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> +        return;
> +    }
> +    res->resource_id =3D c2d.resource_id;
> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> +
>      args.handle =3D c2d.resource_id;
>      args.target =3D 2;
>      args.format =3D c2d.format;
> @@ -60,11 +69,20 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g=
,
>  {
>      struct virtio_gpu_resource_create_3d c3d;
>      struct virgl_renderer_resource_create_args args;
> +    struct virtio_gpu_simple_resource *res;
>
>      VIRTIO_GPU_FILL_CMD(c3d);
>      trace_virtio_gpu_cmd_res_create_3d(c3d.resource_id, c3d.format,
>                                         c3d.width, c3d.height, c3d.depth)=
;
>
> +    res =3D g_new0(struct virtio_gpu_simple_resource, 1);
> +    if (!res) {

same

> +        cmd->error =3D VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> +        return;
> +    }
> +    res->resource_id =3D c3d.resource_id;
> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> +
>      args.handle =3D c3d.resource_id;
>      args.target =3D c3d.target;
>      args.format =3D c3d.format;
> @@ -682,6 +700,9 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
>          /* TODO add security */
>          virgl_cmd_ctx_detach_resource(g, cmd);
>          break;
> +    case VIRTIO_GPU_CMD_RESOURCE_ASSIGN_UUID:
> +        virtio_gpu_resource_assign_uuid(g, cmd);
> +        break;
>      case VIRTIO_GPU_CMD_GET_CAPSET_INFO:
>          virgl_cmd_get_capset_info(g, cmd);
>          break;
> diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> index cc4c1f81bb..44414c1c5e 100644
> --- a/hw/display/virtio-gpu.c
> +++ b/hw/display/virtio-gpu.c
> @@ -966,6 +966,38 @@ virtio_gpu_resource_detach_backing(VirtIOGPU *g,
>      virtio_gpu_cleanup_mapping(g, res);
>  }
>
> +void virtio_gpu_resource_assign_uuid(VirtIOGPU *g,
> +                                     struct virtio_gpu_ctrl_command *cmd=
)
> +{
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_assign_uuid assign;
> +    struct virtio_gpu_resp_resource_uuid resp;
> +    QemuUUID *uuid;
> +
> +    VIRTIO_GPU_FILL_CMD(assign);
> +    virtio_gpu_bswap_32(&assign, sizeof(assign));
> +    trace_virtio_gpu_cmd_res_assign_uuid(assign.resource_id);
> +
> +    res =3D virtio_gpu_find_check_resource(g, assign.resource_id, false,=
 __func__, &cmd->error);
> +    if (!res) {
> +        return;
> +    }
> +
> +    memset(&resp, 0, sizeof(resp));
> +    resp.hdr.type =3D VIRTIO_GPU_RESP_OK_RESOURCE_UUID;
> +
> +    uuid =3D g_hash_table_lookup(g->resource_uuids, GUINT_TO_POINTER(ass=
ign.resource_id));
> +    if (!uuid) {
> +        uuid =3D g_new(QemuUUID, 1);
> +        qemu_uuid_generate(uuid);
> +        g_hash_table_insert(g->resource_uuids, GUINT_TO_POINTER(assign.r=
esource_id), uuid);
> +        res->has_uuid =3D true;
> +    }
> +
> +    memcpy(resp.uuid, uuid, sizeof(QemuUUID));
> +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
> +}
> +
>  void virtio_gpu_simple_process_cmd(VirtIOGPU *g,
>                                     struct virtio_gpu_ctrl_command *cmd)
>  {
> @@ -1014,6 +1046,9 @@ void virtio_gpu_simple_process_cmd(VirtIOGPU *g,
>      case VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING:
>          virtio_gpu_resource_detach_backing(g, cmd);
>          break;
> +    case VIRTIO_GPU_CMD_RESOURCE_ASSIGN_UUID:
> +        virtio_gpu_resource_assign_uuid(g, cmd);
> +        break;
>      default:
>          cmd->error =3D VIRTIO_GPU_RESP_ERR_UNSPEC;
>          break;
> @@ -1208,6 +1243,7 @@ static int virtio_gpu_save(QEMUFile *f, void *opaqu=
e, size_t size,
>      VirtIOGPU *g =3D opaque;
>      struct virtio_gpu_simple_resource *res;
>      int i;
> +    QemuUUID *uuid;
>
>      /* in 2d mode we should never find unprocessed commands here */
>      assert(QTAILQ_EMPTY(&g->cmdq));
> @@ -1224,9 +1260,17 @@ static int virtio_gpu_save(QEMUFile *f, void *opaq=
ue, size_t size,
>          }
>          qemu_put_buffer(f, (void *)pixman_image_get_data(res->image),
>                          pixman_image_get_stride(res->image) * res->heigh=
t);
> +
> +        qemu_put_byte(f, res->has_uuid);
> +        if (res->has_uuid) {
> +            uuid =3D g_hash_table_lookup(g->resource_uuids, GUINT_TO_POI=
NTER(res->resource_id));
> +            qemu_put_buffer(f, (void *)uuid, sizeof(QemuUUID));
> +        }

This is breaking the migration format. It will need to be handled with
an optional subsection instead.

>      }
>      qemu_put_be32(f, 0); /* end of list */
>
> +    g_hash_table_destroy(g->resource_uuids);
> +
>      return vmstate_save_state(f, &vmstate_virtio_gpu_scanouts, g, NULL);
>  }
>
> @@ -1239,9 +1283,12 @@ static int virtio_gpu_load(QEMUFile *f, void *opaq=
ue, size_t size,
>      uint32_t resource_id, pformat;
>      void *bits =3D NULL;
>      int i;
> +    QemuUUID *uuid =3D NULL;
>
>      g->hostmem =3D 0;
>
> +    g->resource_uuids =3D g_hash_table_new_full(NULL, NULL, NULL, g_free=
);

Since it maps int -> uuid, it should probably use g_int_hash() /
g_int_qual() instead of the default (g_direct_hash()).

> +
>      resource_id =3D qemu_get_be32(f);
>      while (resource_id !=3D 0) {
>          res =3D virtio_gpu_find_resource(g, resource_id);
> @@ -1292,6 +1339,12 @@ static int virtio_gpu_load(QEMUFile *f, void *opaq=
ue, size_t size,
>          qemu_get_buffer(f, (void *)pixman_image_get_data(res->image),
>                          pixman_image_get_stride(res->image) * res->heigh=
t);
>
> +        res->has_uuid =3D qemu_get_byte(f);
> +        if (res->has_uuid) {
> +            qemu_get_buffer(f, (void *)uuid, sizeof(QemuUUID));
> +            g_hash_table_insert(g->resource_uuids, GUINT_TO_POINTER(res-=
>resource_id), uuid);
> +        }
> +
>          /* restore mapping */
>          for (i =3D 0; i < res->iov_cnt; i++) {
>              hwaddr len =3D res->iov[i].iov_len;
> @@ -1393,12 +1446,15 @@ void virtio_gpu_device_realize(DeviceState *qdev,=
 Error **errp)
>      QTAILQ_INIT(&g->reslist);
>      QTAILQ_INIT(&g->cmdq);
>      QTAILQ_INIT(&g->fenceq);
> +
> +    g->resource_uuids =3D g_hash_table_new_full(NULL, NULL, NULL, g_free=
);
>  }
>
>  static void virtio_gpu_device_unrealize(DeviceState *qdev)
>  {
>      VirtIOGPU *g =3D VIRTIO_GPU(qdev);
>
> +    g_hash_table_destroy(g->resource_uuids);
>      g_clear_pointer(&g->ctrl_bh, qemu_bh_delete);
>      g_clear_pointer(&g->cursor_bh, qemu_bh_delete);
>      g_clear_pointer(&g->reset_bh, qemu_bh_delete);
> @@ -1452,6 +1508,8 @@ void virtio_gpu_reset(VirtIODevice *vdev)
>          g_free(cmd);
>      }
>
> +    g_hash_table_remove_all(g->resource_uuids);
> +
>      virtio_gpu_base_reset(VIRTIO_GPU_BASE(vdev));
>  }
>
> diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gp=
u.h
> index b9adc28071..67b39fccec 100644
> --- a/include/hw/virtio/virtio-gpu.h
> +++ b/include/hw/virtio/virtio-gpu.h
> @@ -63,6 +63,8 @@ struct virtio_gpu_simple_resource {
>      MemoryRegion *region;
>  #endif
>
> +    bool has_uuid;
> +
>      QTAILQ_ENTRY(virtio_gpu_simple_resource) next;
>  };
>
> @@ -208,6 +210,8 @@ struct VirtIOGPU {
>          QTAILQ_HEAD(, VGPUDMABuf) bufs;
>          VGPUDMABuf *primary[VIRTIO_GPU_MAX_SCANOUTS];
>      } dmabuf;
> +
> +    GHashTable *resource_uuids;
>  };
>
>  struct VirtIOGPUClass {
> @@ -285,6 +289,8 @@ void virtio_gpu_cleanup_mapping_iov(VirtIOGPU *g,
>                                      struct iovec *iov, uint32_t count);
>  void virtio_gpu_cleanup_mapping(VirtIOGPU *g,
>                                  struct virtio_gpu_simple_resource *res);
> +void virtio_gpu_resource_assign_uuid(VirtIOGPU *g,
> +                                     struct virtio_gpu_ctrl_command *cmd=
);
>  void virtio_gpu_process_cmdq(VirtIOGPU *g);
>  void virtio_gpu_device_realize(DeviceState *qdev, Error **errp);
>  void virtio_gpu_reset(VirtIODevice *vdev);
> --
> 2.34.1
>
>


--=20
Marc-Andr=C3=A9 Lureau


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 09:02:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 09:02:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604494.941898 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiWd7-0002Ur-Pt; Tue, 19 Sep 2023 09:02:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604494.941898; Tue, 19 Sep 2023 09:02:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiWd7-0002Uk-N7; Tue, 19 Sep 2023 09:02:49 +0000
Received: by outflank-mailman (input) for mailman id 604494;
 Tue, 19 Sep 2023 09:02:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vJAK=FD=gmail.com=marcandre.lureau@srs-se1.protection.inumbo.net>)
 id 1qiWd7-0002Uc-31
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 09:02:49 +0000
Received: from mail-qt1-x82a.google.com (mail-qt1-x82a.google.com
 [2607:f8b0:4864:20::82a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4dc055ef-56cb-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 11:02:48 +0200 (CEST)
Received: by mail-qt1-x82a.google.com with SMTP id
 d75a77b69052e-414b3da2494so33734491cf.3
 for <xen-devel@lists.xenproject.org>; Tue, 19 Sep 2023 02:02:48 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4dc055ef-56cb-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695114167; x=1695718967; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=ND+2Cd2f8q8DTCVTY8iiypxhEp8aFLppxW2F9VQBRQ4=;
        b=BhkC7IZsi3+2Gka35z3iEQW4J7m36goreyDFyWOGV9kuHRDh1/W4cftqQhPSKAdQI+
         b8jGZoL1F0ZE5mjxjNGSsEee6cfruR7kdlQc4mqTeTGAk2GUU7sYNSjB3RG87xb9L1vo
         s8UTFAlQT094IxCGESLWAgThrCRYAaRb7Fzv+LZmZyzcqLpkGDpX1G/VIRnTJWdaGtMD
         reeEHlNIj/gfhvfeMFjQMjAXjlPGFinickUm7Emp7Ij6ytTmtYezMjJufJY3KP2oEVt6
         A141tmnUqPCdInpWCzU6gdOphaVQJj3DUIh9D70S/7/xzMi2OpH8hg2nxCfIRduwHPww
         8sKQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695114167; x=1695718967;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=ND+2Cd2f8q8DTCVTY8iiypxhEp8aFLppxW2F9VQBRQ4=;
        b=CefBqoNmTbiCaVOd9llTNvEhMQzrcV07t5qvw3YxOCfkDMyZcYz7kJUNsXvDibybbT
         cAsoJL2otlCx2HMG/5jV6lGgQ0Qn5Aw6STRpH3luY9VTXoEzi6WRWa/ydB70K86A/cU0
         OpdemZW4M6IYaMRdYAM4Uoeh3qeXbWDzPeAE3m6QRa2y9+hOk/zSPmgRhR0R8Ik4p6U2
         FkDsuCbkXps1qHFI9ltBsQaGsrZyC9IJsGwVYA3WRdRRYKQLv59LMZbJBsNo1oOztRzn
         6na9OWy6tdGkmFi75L8PoqcPWAersQ6jMu0Dad2RVa4jQRygQqALRoHZSqRM122W/m0E
         TUHQ==
X-Gm-Message-State: AOJu0YwIdBglnqzIBew6XCsK75Mc1ELi7VbBB2MfTVouzoAChwniHe02
	GGPmMY01P3Uympy4AmbfBKOxjIDWv5Xpf+SQUb1Sg3CW74aMJw==
X-Google-Smtp-Source: AGHT+IGChCz4TECfH811U/m/F4mFC9MdWzVWs4DMJgpjYjtS/oH22r6seHdiRpej/iz1PIscZ6RnbPplDdc39F2tjEA=
X-Received: by 2002:a05:622a:1ba4:b0:412:6f:9ead with SMTP id
 bp36-20020a05622a1ba400b00412006f9eadmr12961809qtb.14.1695114167189; Tue, 19
 Sep 2023 02:02:47 -0700 (PDT)
MIME-Version: 1.0
References: <20230915111130.24064-1-ray.huang@amd.com> <20230915111130.24064-12-ray.huang@amd.com>
In-Reply-To: <20230915111130.24064-12-ray.huang@amd.com>
From: =?UTF-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= <marcandre.lureau@gmail.com>
Date: Tue, 19 Sep 2023 13:02:36 +0400
Message-ID: <CAJ+F1CJ8R7j_1k3yC2GsdN_v8CsOQ7R+=n_0CCzFW98tWrSLhA@mail.gmail.com>
Subject: Re: [QEMU PATCH v5 11/13] virtio-gpu: Support Venus capset
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>, 
	Akihiko Odaki <akihiko.odaki@daynix.com>, Stefano Stabellini <sstabellini@kernel.org>, 
	Anthony PERARD <anthony.perard@citrix.com>, Antonio Caggiano <quic_acaggian@quicinc.com>, 
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett <bob.beckett@collabora.com>, 
	Dmitry Osipenko <dmitry.osipenko@collabora.com>, =?UTF-8?B?QWxleCBCZW5uw6ll?= <alex.bennee@linaro.org>, 
	qemu-devel@nongnu.org, xen-devel@lists.xenproject.org, 
	Gurchetan Singh <gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com, 
	=?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= <philmd@linaro.org>, 
	Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	Alex Deucher <alexander.deucher@amd.com>, =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>, 
	Xenia Ragiadakou <xenia.ragiadakou@amd.com>, 
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, Honglei Huang <honglei1.huang@amd.com>, 
	Julia Zhang <julia.zhang@amd.com>, Chen Jiqian <Jiqian.Chen@amd.com>, 
	Antonio Caggiano <antonio.caggiano@collabora.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi

On Fri, Sep 15, 2023 at 3:14=E2=80=AFPM Huang Rui <ray.huang@amd.com> wrote=
:
>
> From: Antonio Caggiano <antonio.caggiano@collabora.com>
>
> Add support for the Venus capset, which enables Vulkan support through
> the Venus Vulkan driver for virtio-gpu.
>
> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> Signed-off-by: Huang Rui <ray.huang@amd.com>
> ---
>
> V4 -> V5:
>     - Send kernel patch to define VIRTIO_GPU_CAPSET_VENUS and will use
>       another patch to sync up linux headers. (Akihiko)
>     - https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd=
.com/

Ok but in the meantime, you should have that header update patch in
the series too, otherwise we can't compile it :)

thanks

>
>  hw/display/virtio-gpu-virgl.c | 21 +++++++++++++++++----
>  1 file changed, 17 insertions(+), 4 deletions(-)
>
> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.=
c
> index 8a017dbeb4..7f95490e90 100644
> --- a/hw/display/virtio-gpu-virgl.c
> +++ b/hw/display/virtio-gpu-virgl.c
> @@ -437,6 +437,11 @@ static void virgl_cmd_get_capset_info(VirtIOGPU *g,
>          virgl_renderer_get_cap_set(resp.capset_id,
>                                     &resp.capset_max_version,
>                                     &resp.capset_max_size);
> +    } else if (info.capset_index =3D=3D 2) {
> +        resp.capset_id =3D VIRTIO_GPU_CAPSET_VENUS;
> +        virgl_renderer_get_cap_set(resp.capset_id,
> +                                   &resp.capset_max_version,
> +                                   &resp.capset_max_size);
>      } else {
>          resp.capset_max_version =3D 0;
>          resp.capset_max_size =3D 0;
> @@ -901,10 +906,18 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
>
>  int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g)
>  {
> -    uint32_t capset2_max_ver, capset2_max_size;
> +    uint32_t capset2_max_ver, capset2_max_size, num_capsets;
> +    num_capsets =3D 1;
> +
>      virgl_renderer_get_cap_set(VIRTIO_GPU_CAPSET_VIRGL2,
> -                              &capset2_max_ver,
> -                              &capset2_max_size);
> +                               &capset2_max_ver,
> +                               &capset2_max_size);
> +    num_capsets +=3D capset2_max_ver ? 1 : 0;
> +
> +    virgl_renderer_get_cap_set(VIRTIO_GPU_CAPSET_VENUS,
> +                               &capset2_max_ver,
> +                               &capset2_max_size);
> +    num_capsets +=3D capset2_max_size ? 1 : 0;
>
> -    return capset2_max_ver ? 2 : 1;
> +    return num_capsets;
>  }
> --
> 2.34.1
>
>


--=20
Marc-Andr=C3=A9 Lureau


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 09:19:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 09:19:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604500.941908 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiWtS-0006FH-6R; Tue, 19 Sep 2023 09:19:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604500.941908; Tue, 19 Sep 2023 09:19:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiWtS-0006FA-2Y; Tue, 19 Sep 2023 09:19:42 +0000
Received: by outflank-mailman (input) for mailman id 604500;
 Tue, 19 Sep 2023 09:19:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lZx6=FD=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qiWtQ-0006F4-Ux
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 09:19:40 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a8f7b7da-56cd-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 11:19:40 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 423284EE0737;
 Tue, 19 Sep 2023 11:19:39 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a8f7b7da-56cd-11ee-8789-cb3800f73035
MIME-Version: 1.0
Date: Tue, 19 Sep 2023 11:19:39 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Jan Beulich <jbeulich@suse.com>, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
In-Reply-To: <alpine.DEB.2.22.394.2309081236360.6458@ubuntu-linux-20-04-desktop>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
 <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
 <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
 <6818e3ac47edca6ba107b8eeff95955a@bugseng.com>
 <a52733a0-ec5a-3b49-ccec-7a7e8e775c4c@suse.com>
 <7d07fc38-14e8-6cc7-2b0c-816bc68c7317@suse.com>
 <3d44b3b0b185418482ab60a693d930a9@bugseng.com>
 <alpine.DEB.2.22.394.2309081236360.6458@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <ed1f468463841e7f3f5bb90de4d9a227@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 08/09/2023 21:37, Stefano Stabellini wrote:
> On Fri, 8 Sep 2023, Nicola Vetrini wrote:
>> On 08/09/2023 13:59, Jan Beulich wrote:
>> > On 08.09.2023 13:57, Jan Beulich wrote:
>> > > On 08.09.2023 10:48, Nicola Vetrini wrote:
>> > > > There is a build error due to -Werror because of a pointer comparison at
>> > > > line 469 of common/numa.c:
>> > > > i = min(PADDR_BITS, BITS_PER_LONG - 1);
>> > > > where
>> > > > #define PADDR_BITS              52
>> > > >
>> > > > I guess PADDR_BITS can become unsigned or gain a cast
>> > >
>> > > While generally converting constants to unsigned comes with a certain
>> > > risk, I think for this (and its siblings) this ought to be okay. As to
>> > > the alternative of a cast - before considering that, please consider
>> > > e.g. adding 0u (as we do elsewhere in the code base to deal with such
>> > > cases).
>> >
>> > And just after sending I realized that this would still be disliked by
>> > Misra's type system. (Much like then aiui the 1 above will need to
>> > become 1u. Which is all pretty horrible.)
>> >
>> > Jan
>> 
>> I have a proposal: in our tests we enabled an ECLAIR configuration 
>> that allows
>> to bypass the
>> constraint imposed by Rule 10.4 that warrants the 1U iff the value is 
>> constant
>> and both types
>> can represent it correctly (in this case BITS_PER_LONG -1). This would 
>> allow
>> using the proposed
>> solution and documenting why it's ok not to respect R10.4. What do you 
>> think?
> 
> I think that would be OK. I think we would want to document this in
> rules.rst. Please send a patch.

I checked: that configuration is already enabled in current staging, so 
perhaps the only
action in that regard would be to send a patch documenting it in 
rules.rst.

I just noticed one further issue with making BYTES_PER_LONG unsigned, in 
that causes
several instances of (1U << 3) to appear inside the file 
xen/arch/x86/xen.lds
produced by the build, which in turn causes ld to fail on that 'U'. For 
reference, the version of ld used by the build is the following:
GNU ld (GNU Binutils for Ubuntu) 2.38

The following is a snippet of the output:

        . = ALIGN((1 << 12));
        __ro_after_init_end = .;
        __start_bug_frames = .;
        *(.bug_frames.0)
        __stop_bug_frames_0 = .;
        *(.bug_frames.1)
        __stop_bug_frames_1 = .;
        *(.bug_frames.2)
        __stop_bug_frames_2 = .;
        *(.bug_frames.3)
        __stop_bug_frames_3 = .;
        *(.rodata)
        *(.rodata.*)
        *(.data.rel.ro)
        *(.data.rel.ro.*)
        . = ALIGN((1U << 3)); __start_vpci_array = .; 
*(SORT(.data.vpci.*)) __end_vpci_array = .;
   } :text
   .note.gnu.build-id : AT(ADDR(".note.gnu.build-id") - (((((((261 >> 8) 
* 0xffff000000000000) | (261 << 39))) + ((1 << 39) / 2)) + (64 << 30)) + 
(1 << 30))) {
        __note_gnu_build_id_start = .;
        *(.note.gnu.build-id)
        __note_gnu_build_id_end = .;


-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 09:31:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 09:31:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604508.941918 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiX4i-0001AR-6Y; Tue, 19 Sep 2023 09:31:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604508.941918; Tue, 19 Sep 2023 09:31:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiX4i-0001AK-2u; Tue, 19 Sep 2023 09:31:20 +0000
Received: by outflank-mailman (input) for mailman id 604508;
 Tue, 19 Sep 2023 09:31:18 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiX4g-0001AB-DS
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 09:31:18 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20629.outbound.protection.outlook.com
 [2a01:111:f400:7d00::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 47c6154a-56cf-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 11:31:16 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB6903.eurprd04.prod.outlook.com (2603:10a6:20b:10d::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 09:31:09 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 09:31:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 47c6154a-56cf-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IenSkWzqWzgMs+sBNfQfzcKCw8PpxefwoJDSzSslH680ZaAVjI0U3yjtvgGiroPfhX801hZK6IdH05QG9kdJTmeaULxDwpFsF0zJU+Y08p7Bk7cAG5Tu1Sbzx7+O02pp3Vm+6GAVCjVuYn5pw8LbrxH7isUHj1fxYmz0sSHayLecGOuFLD/wht97+/Vutb+LeZ2wJaNCSlbtMonCWlJaUg87i/AW7CJu/SL8dHcAdMbDqjoxYmGJG1zZHc47p7UpVMGG0gRPZfGmhdFJpbZi6+lKP+mxd3gN33Q1uP0xI/5umQWrVRRZBFWYTjPsrA6EBi1ITUDxNUtxAKpXwiDrbQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=j6uBuk5YmbYUeu6Hlb5QPRFXW+1ftJIHeQHKCtKfk7o=;
 b=VEMLWTHen8A5QH1CGZch+zxG/MWVGZNnSTUNb/ICdIplce+ysRagYr8p44CIuqFUSLgAAlREYfeeddcXbzFLgTMNnLrrPPO0WkHe/Ul+EadCE9RJsAHfZljjQsh1BMz++qqhU9kWbnwvlrw+8HUrMsDav65WvT1BZUAMBp1yzdheY+fEwHeaihrYN8phoodQWTY7RQWVf870Z/67FDJJImkDvepGqAgxwedLd5rZI4Obc60eMoM/ul/5sPVNob9qOyJqhERyjmdA3alcifgJGni2M7BHpu9geQpnCQO4cOrxOF6QEIKu7S2yHlegt1FBkFVZ9nt8K0AFEaiMh6tUZA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=j6uBuk5YmbYUeu6Hlb5QPRFXW+1ftJIHeQHKCtKfk7o=;
 b=eym6lO1hIZubA0bxMOseFkE0YhrlkhvOAuhPZuuMJVs1LA29nQzKSPAHhwsccMG759efJ+7MfWHbjsyHx3XDnnB043w4MgeAnxh7wH7Pf/3WWJOPHS3VXckx+YwgKo8olEcj9hSpCPKJAmhJ0VcgQWqMmEPTxtl+1iZi0cx4clmyzuJ1HZM3drPa0qBN+ImsVwuWb1KtYlqbHtiGYahMhFib3BdTC7hynK2JjCqo2yY0o7Oa7XafiSfio210AQ9iv8XHZC9NTc2eR06VoyRqyH9YvhrucKWorgFloknNOuLcY+jOi/4QtCSp0xhl3IjcsKcu/o0zHjHvdWmdeShY0A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2d1e6916-b501-e133-1463-fc55e3eaf2c6@suse.com>
Date: Tue, 19 Sep 2023 11:31:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2] x86/shutdown: change default reboot method preference
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230915074347.94712-1-roger.pau@citrix.com>
 <e22af903-cbdf-dfed-8f69-44e5ea05ef8b@suse.com>
 <ZQhoHZvk7tXfGI2g@MacBookPdeRoger>
 <b92b994c-a9cd-10c3-033b-3c1aa752fa8e@suse.com>
 <ZQh0KXX2yLewO3uV@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZQh0KXX2yLewO3uV@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0125.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM7PR04MB6903:EE_
X-MS-Office365-Filtering-Correlation-Id: 2f17dd32-90a3-42a5-7531-08dbb8f3281a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ndrQuWZPUotE09CBvLKpa0CLfc7ANRMICPxPXpHt5dkxemdMsvX7oBkvXK6PcfU5a/kJ6tjqma2p29vAc5bBiXeNIOxvibFEL4EHBlc1sxCphOmbpSuMrKX/hUjnZdAbC/fv+edmKjXhmEswY3pay+N5WYLgEcPh0uSTPS6P3XIcd+pWZDB9t6dw/xNOXuK36Vgeb683eLp2hQKB6ZPn1pBCTKQLnWWZ0hur95SiMpr4BAc4uknSIdztRigdYf5XljTJvTJl7sny7tRigZgtXEj4ccLAaNbQg7qiGWZUZ3pd7aiW8Cm63Dn4Gzy0aY2fc5re2EZ86/h6TP8g5WdIxcqowwp5vBK3kqdMXBE5z3wGEnE4di+nVXgWc4qtm8WhkEYb5IJoSKI/aK7PxOoDjei2rU/FdePvjahijJQNBT8CqsZDzJIHdxVlBatLR8V57RXwzUEVpH9aPSALbsljY4dJ+VkJv0NHje9K/kNYrSJN+TMquLuXmU7oYew25uROQ4ACopBRY0uNSGXnZW71KbD1bEDg24jfJi6iSKwt5uaUFJpLJWwZX4TC4NoJ2tqm3zQeesABdwz5Umkz7BX4wULcCFf3CioikhSL6vEgeZbHmVs4N3BdXwEYrvkUkrRbDAPd7SZCMBK3IClwXe+7LQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(136003)(366004)(376002)(396003)(451199024)(186009)(1800799009)(31686004)(36756003)(86362001)(31696002)(6916009)(66476007)(66556008)(66946007)(478600001)(41300700001)(8936002)(8676002)(316002)(54906003)(38100700002)(6512007)(6486002)(6506007)(2616005)(83380400001)(26005)(2906002)(4326008)(53546011)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WWhzVEVjSFY5SjJ5amUvNkNvN1I5THYyZXBJSkRMdzU4Mm5LelBjWWppRDRZ?=
 =?utf-8?B?R0cxNGNVMGtaeUNmZEJYYk5wOUdMdi9VQ2loQXBLQzl1L0pxZ1dYZ1BpUGFP?=
 =?utf-8?B?QnRLeHQzZHY2QnhFblBIRS9BRFR1dEdoTUZhZU50a2JNYVN2bnBoQWhjSk9r?=
 =?utf-8?B?ckQ5dDZ5ejFJMVNyaGRzN2xucFZTbGc2R09FV2crVC8yTDBEcVgrZlRrdGdu?=
 =?utf-8?B?WFI2bVBJdmJoa0NRNkM1cjhqMStvUUJEbHF5bEFZZHdCK0FLYVFEZlpuYlg0?=
 =?utf-8?B?cjBIUnNQZ3MxM2hSSE5teFpkdmNkd1JLSnNzK0VyY0g4blJQZkJJNFRzVG5x?=
 =?utf-8?B?czdsN2xOSTBBVHNZWmdPWUkwTk85OEFscDlBTEJsUVRTYkNvdUZCUXVzejRj?=
 =?utf-8?B?QnM0d3NnYjFFL1J3ZG9TQ2h5ZkQ0TUs0b0VmMHN1MG96RFVRcUxVOWVHUjY5?=
 =?utf-8?B?Tmpia2YzTk11TXdkVEdHZDZhWWpJZURBcXFuVHQxNGxIdUdFRDh6UUR6SitD?=
 =?utf-8?B?YXg1M2NOalB5aDh6a1JjODRqQmlzaW9tUHEwdVI1YVRJZ3YwdUNNcmNCK2dy?=
 =?utf-8?B?VFcyb2l5ME1DckR0eU5uQVhWNWRpT1pnbk5GWjBnd2dYTDZlalZNRVloS0pv?=
 =?utf-8?B?b2lrRVJwVmN1dUJJb3dPRmpPM0h6RUs0d2h2em1jZjdZN3NYdlFDYkYwQWtN?=
 =?utf-8?B?R3ZneUFlbFRkQTN3Q3VUc2ZJQnc0STdVcWhFUHhySFU0azBXcHZwdHh4OEY1?=
 =?utf-8?B?YWc3QUFYWXZBUE10Y1BZNVZHVVA4Q3BWSkRSakVhV0xjWUUwRzdaNGxEWXM5?=
 =?utf-8?B?NW9LVmlFaE1BN0JRQ2c0SFg5YUxqL3RHYmxodHNxRFRFVE12aS8xUkxMNVZa?=
 =?utf-8?B?YVZWcWNKeGhBT3RjSDNNM2pKOXY1VWQxNG10Ny9GMm9sWmRjSDJTMnErK1pi?=
 =?utf-8?B?VDZ4Y2lSZjl5VWZoMFVPM3liNWRpNTJ2d0dIT28zTW1IRzdQalYvVXpUK0l6?=
 =?utf-8?B?aGx5Zk53dm5xcnpKTVlSMzUwM0RHajBpOFN4TytKTzdNUyswRisrNnpoMVh3?=
 =?utf-8?B?OTN2eEZqeTF4WEQ5R2ZBMGN4ZzRqZFdQYkVYTTNzMFpCdnVKRC9XTzdsd3BW?=
 =?utf-8?B?cWFuYzNETWFiMjcwT3I4OVR0enFPaHRSZEN6Tk05ZU1pSDdBZHlFclQwOFVT?=
 =?utf-8?B?MDJLZmVGcmxMRWJzdmV1azdsdkp4OEE3RFNiMHFQaHJReE9ZZW9iRERZWVU5?=
 =?utf-8?B?elFPOUx0ejVHY0xRNkl5OXRCc0x0ZDc0ZS8vdXdEd2VMbG9NTzVZbnMzb3NW?=
 =?utf-8?B?S1hEamhYYm5uekFaMDNNWE9KcWVibmtZbms1VFBhWHc5U1N2SktsQ1htK2FE?=
 =?utf-8?B?bWg2aXMvaGUxUVJkYzR6c3N4MWcxRU5EZU5vcjRsTGYxTnVqeUhMTEhKdUxy?=
 =?utf-8?B?Z2FFbTV2Vk1ia0grN0RLa0Q1OCt1ZmZJTVFidGQwYWFCY2dlLzZ5cFBpRTRW?=
 =?utf-8?B?RmNwZWx2SHo3OHhHa3dqWFQ0TDZWc3crMDVmNHlSQWUwQ0c0UTY4RjNtSmhv?=
 =?utf-8?B?L01sZFhrWiszQ0RrWHl3ZmF1Ti9ySEtSTjRhek92bFNud0xFSGEyWktkM1hz?=
 =?utf-8?B?eXo0ejVVMkV5aGhnOEpyOWlyVE5OSW1wWTdxMjEydVBDc2JLMG5GNEpLVGl6?=
 =?utf-8?B?Z2RxaG9HZkl6NEl3ZmM3YjhBMGpUUU5VclpDZHg1Y1NvRlg3U1ovU2d3Yk96?=
 =?utf-8?B?Mm5INVZRUUlRTlRER3BjcDV3Zkx0VFhPMjg5ekdlZEwzK2dKMjhLazdKcXlw?=
 =?utf-8?B?b1VMb3VUcDV1d0ZDMGk4K2d2bXRJUWIrMzN0bUM2ZU5ic2FLYTdzamZ6TVNz?=
 =?utf-8?B?b2gyLzlteHFaL0QrdlNmZktwbnIxamJYeWY3UmlodHhvT0dmY0xRTjQwd0FJ?=
 =?utf-8?B?UE04emV6blc1bUpDSGRHNnRZaUZxNEluU2VOWkZZcGk0L1czb1Z4S0QxOVAy?=
 =?utf-8?B?TjF1dnBZUGZnSUtDSkV5cHBzM0cxSEk4ejU1ekt6eExzMHRWMzhXeml4dm42?=
 =?utf-8?B?bjVQcDQrUTArRkhSOUYwMjJEU0ZkcnNWYU45NkRBNzVQcVpxQlhRM2ZRejRB?=
 =?utf-8?Q?j5D5jZGo4Jee4zx4FvEQaGlLG?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2f17dd32-90a3-42a5-7531-08dbb8f3281a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 09:31:09.3546
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: mfLCaUKTV1rUaQppWRKvmWwYy9oCg85pIdj/4HFmaMKwzL8NXqbAle6RBxFRR9qmtHYqSycY58ZoOG8LDaMnHQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB6903

On 18.09.2023 18:00, Roger Pau Monné wrote:
> On Mon, Sep 18, 2023 at 05:44:47PM +0200, Jan Beulich wrote:
>> On 18.09.2023 17:09, Roger Pau Monné wrote:
>>> On Mon, Sep 18, 2023 at 02:26:51PM +0200, Jan Beulich wrote:
>>>> On 15.09.2023 09:43, Roger Pau Monne wrote:
>>>>> The current logic to chose the preferred reboot method is based on the mode Xen
>>>>> has been booted into, so if the box is booted from UEFI, the preferred reboot
>>>>> method will be to use the ResetSystem() run time service call.
>>>>>
>>>>> However, that method seems to be widely untested, and quite often leads to a
>>>>> result similar to:
>>>>>
>>>>> Hardware Dom0 shutdown: rebooting machine
>>>>> ----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
>>>>> CPU:    0
>>>>> RIP:    e008:[<0000000000000017>] 0000000000000017
>>>>> RFLAGS: 0000000000010202   CONTEXT: hypervisor
>>>>> [...]
>>>>> Xen call trace:
>>>>>    [<0000000000000017>] R 0000000000000017
>>>>>    [<ffff83207eff7b50>] S ffff83207eff7b50
>>>>>    [<ffff82d0403525aa>] F machine_restart+0x1da/0x261
>>>>>    [<ffff82d04035263c>] F apic_wait_icr_idle+0/0x37
>>>>>    [<ffff82d040233689>] F smp_call_function_interrupt+0xc7/0xcb
>>>>>    [<ffff82d040352f05>] F call_function_interrupt+0x20/0x34
>>>>>    [<ffff82d04033b0d5>] F do_IRQ+0x150/0x6f3
>>>>>    [<ffff82d0402018c2>] F common_interrupt+0x132/0x140
>>>>>    [<ffff82d040283d33>] F arch/x86/acpi/cpu_idle.c#acpi_idle_do_entry+0x113/0x129
>>>>>    [<ffff82d04028436c>] F arch/x86/acpi/cpu_idle.c#acpi_processor_idle+0x3eb/0x5f7
>>>>>    [<ffff82d04032a549>] F arch/x86/domain.c#idle_loop+0xec/0xee
>>>>>
>>>>> ****************************************
>>>>> Panic on CPU 0:
>>>>> FATAL TRAP: vector = 6 (invalid opcode)
>>>>> ****************************************
>>>>>
>>>>> Which in most cases does lead to a reboot, however that's unreliable.
>>>>>
>>>>> Change the default reboot preference to prefer ACPI over UEFI if available and
>>>>> not in reduced hardware mode.
>>>>>
>>>>> This is in line to what Linux does, so it's unlikely to cause issues on current
>>>>> and future hardware, since there's a much higher chance of vendors testing
>>>>> hardware with Linux rather than Xen.
>>>>
>>>> I certainly appreciate this as a goal. However, ...
>>>>
>>>>> Add a special case for one Acer model that does require being rebooted using
>>>>> ResetSystem().  See Linux commit 0082517fa4bce for rationale.
>>>>
>>>> ... this is precisely what I'd like to avoid: Needing workarounds on spec-
>>>> conforming systems.
>>>
>>> I wouldn't call that platform spec-conforming when ACPI reboot doesn't
>>> work reliably on it either.  I haven't been able to find a wording on
>>> the UEFI specification that mandates using ResetSystem() in order to
>>> reset the platform.  I've only found this wording:
>>>
>>> "... then the UEFI OS Loader has taken control of the platform, and
>>> EFI will not regain control of the system until the platform is reset.
>>> One method of resetting the platform is through the EFI Runtime
>>> Service ResetSystem()."
>>>
>>> And this reads to me as a mere indication that one option is to use
>>> ResetSystem(), but that there are likely other platform specific reset
>>> methods that are suitable to be used for OSes and still be compliant
>>> with the UEFI spec.
>>
>> See my reference to ia64.
> 
> Right, I understand that on ia64 things might have been different, due
> to the platform lacking any other reboot method, but I don't see how
> this applies to x86 where there are other reboot methods.
> 
>> With ACPI_FADT_RESET_REGISTER not set, I don't
>> think there would have been any other non-custom reboot method there. So
>> while perhaps not mandated, it's still the designated abstraction layer.
> 
> Again the spec doesn't mention that ResetSystem() must be used, so
> while it would make sense if it was reliable, it clearly isn't.  In
> which case resorting to the more reliable method should always be
> preferred, specially if the spec is so lax as to call ResetSystem()
> "One method of resetting the platform".

That wording wasn't there in 1.02, but I can see it all the way back to
at least 2.1. So yes, you have a point. Yet - adding onto an earlier
remark of mine - EFI_RESET_NOTIFICATION_PROTOCOL is pretty useless if
use of ResetSystem() was optional.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 09:33:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 09:33:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604514.941928 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiX6U-0001k4-H7; Tue, 19 Sep 2023 09:33:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604514.941928; Tue, 19 Sep 2023 09:33:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiX6U-0001jx-Dr; Tue, 19 Sep 2023 09:33:10 +0000
Received: by outflank-mailman (input) for mailman id 604514;
 Tue, 19 Sep 2023 09:33:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiX6T-0001j3-1h
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 09:33:09 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20612.outbound.protection.outlook.com
 [2a01:111:f400:fe16::612])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8a2d19d2-56cf-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 11:33:07 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS4PR04MB9316.eurprd04.prod.outlook.com (2603:10a6:20b:4e7::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 09:33:04 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 09:33:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8a2d19d2-56cf-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SEjL8KTEuOR7cWTA6alag0gUiC3bse78MUItygEg1xS9mI+/bQUnex/pKhiBUJgmmQE6S/FPnlnbDXOlTQp+BBDSD7uAM5cCt+0kC3i8VvO8pnRlGTNJ1M4TZ5tE16gs1ungEkQ+R42x7TCDP9o/1sgz7pE5ZnO1wPk8S8cFlVdBfHafHjIzZ301EGZ7sim31shwgEBBkEzzHFDBD9Jdsii3CSy12VbKhoxIqwTtHpxSB/qTqwUingC8PYTmY6kBcPg7oQNhSi786DyAu+xgxUHtlmtNng79dlB65ltGrH+Cfii/Z2S5zoaUm+WbHFicUVpGhwsQz8KBhdK+wCfAFA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qZXt98HxqLSuuwVXWNs76uXiXwfhgmUTGTmxcGdlXZ8=;
 b=B5OBva0p5yu08rWNbXkFyZ8rI/PTo1XqdSGCLCY7xINKB02SmpAZuA/cp66tSquFv9g887xRXMNI5MY/jA9S0w4sKy+jFV/7sooxkOxfVaQFCHB1f/d83yceoxlbqLIz9VNdI37CntR17WcK5j1ulzmrbPpagfEKbyD3EWcf57arAwJlSqovDUrySZ/anI5XwaRWrw26h6lG146cE0GDytxVVxM8npwbfnR4YQyzaj0xtTkqZB6gCKcU5EhXCq0wssF9x914mgVJvQUBwgVwR/b3psqvuo0lII8yF03aIOycTJpXuoTXm17ZvtbsNvea/Jqp+yuz6v3sdWAum+chhQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qZXt98HxqLSuuwVXWNs76uXiXwfhgmUTGTmxcGdlXZ8=;
 b=pOm1PzEkwxo3MrUqtJXcHBjY4yGoKmlh49FvisHc9YE9LT4Fawejve00BsXpD/wyf4nHPs9eJlJSoyPOo8Wr2+lVNibIDFSUPHE/UR13NUcqP9yAbuwRw+u/FT2wg9MVNWz3BcZGGIxQpdXX9F/+m78+/MX4pq/jQz/rGFWRFn6XUySbZJ8tMesBzsk1bZhCcDnAzRfYwyrW3DyTkmRgFbiZS2iTZ9QVvJYmI4GYxK8d93m6+MiFR7WPk1MPzpQt8hzPhzC2IyNuZs+MH4fkibKaV3D2IIC0jl8ifsbxpUQ9bzUBtjEJzQArDBBiQ5aQBLeb8WGxLRj/StTmN5TBkw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9c43273a-cf20-73bf-96fb-f3095ce3a122@suse.com>
Date: Tue, 19 Sep 2023 11:33:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
 <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
 <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
 <6818e3ac47edca6ba107b8eeff95955a@bugseng.com>
 <a52733a0-ec5a-3b49-ccec-7a7e8e775c4c@suse.com>
 <7d07fc38-14e8-6cc7-2b0c-816bc68c7317@suse.com>
 <3d44b3b0b185418482ab60a693d930a9@bugseng.com>
 <alpine.DEB.2.22.394.2309081236360.6458@ubuntu-linux-20-04-desktop>
 <ed1f468463841e7f3f5bb90de4d9a227@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ed1f468463841e7f3f5bb90de4d9a227@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0041.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:92::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS4PR04MB9316:EE_
X-MS-Office365-Filtering-Correlation-Id: f3f8976b-1f36-4781-6abc-08dbb8f36cac
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9uYYNgTfB/yzHz2XpT6h3Xgi0J/jEFFCtZZ7ZOlBK+gDpx25tSThkR521fTWpW2eqVsQM4sYPTM10hq/cePDNgarahNAFzALrZVRzRpPirwK6NxuQrGXOH5MbbYiv8NPFUM+T6jz+QdJtvdN7pxXo+HUu2muna6t+HW8qMDFUOX4F8DJQxXbAGBPih9CZ1G9c9JNW1GYXNwn8ZxTE1wgg9K0uD+jrcnpWZaDVZ52/6A+aclGFDypKRC2lv3wA2HncxdC1bp7xTepM73u2bctq6aHN5NSJjshunDV50BmkJ71kM8ou2MDvYYsVZYSsLV4tgJ0MTFYg4kQdUUW9Fb4IKQaZhVDUwXXpYOWtEmfwuQXCbkrFWH92Uhh6FU0RAFRRQUJmxrofIdPHw1VFIPQnpDvctLOW3lEyUJWBA8nm2X8WID8RYCeO4bs9KCtsjNo13Pgej+ikpczD/2WPXCmZ/xtMsqXPfNpp2zSZatlZGq9E3mCS24ZGoFMKzu9xY9W4VUJO/h8TxRXcDPzEwXAN7gj9JuyKTXib0UxoZQmI9IwgjVGibE1SJgtaw/GV6lAVnVZt0FnaxtxOkhf0MXU5/tvBcZ20AVLmUlsACvir3D+Fc10T0oBPTA2Dxmq6SThVUTZlotFzi3q7/w9lmELRw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(396003)(346002)(366004)(136003)(1800799009)(451199024)(186009)(31686004)(2906002)(7416002)(5660300002)(4326008)(8676002)(26005)(41300700001)(6916009)(8936002)(316002)(66476007)(54906003)(66556008)(66946007)(478600001)(6666004)(6506007)(53546011)(36756003)(83380400001)(2616005)(6512007)(38100700002)(6486002)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dmFsYmJrbzBJVmpFUk84b1daaGlhcGpWZGxrRnpZT2taS1ZyMkxQQmkxQ1l6?=
 =?utf-8?B?cnBHaW9zRnVEaTIvdldlUldlNVptR1kxUUhCYjNHbFB1V09iUW5aOUhmTTdY?=
 =?utf-8?B?aVQzOERWYVc1M2VRU3JkN2ROdGNiK0JTTEIvMHNLd2l4V0RJVTQ2REg1WXpE?=
 =?utf-8?B?d1d2Wmd4K3g3VXdmUVVZNEUxR0UrMG1mNGZSZUF0NEQyYkwyTjd0R0c1eWt3?=
 =?utf-8?B?ZHlHSFNXRllSK2IrM1pDM0dMV2ZNdEh2a2NIVnlHdnhoNXRmN0o1dEt0Nmxq?=
 =?utf-8?B?WjdHbUVIeUtEeUc4LzBGaUZWaTgxQXNuWDBjTzdzWlFVNGs1YitXZFVOMEZU?=
 =?utf-8?B?ZWY2RUMyb1RMclZkakhPdXc2eXJRZExScytpTTZEODNsQnBJZ0RiV2lPQUZj?=
 =?utf-8?B?cUhPaE5mYXNlTDFFZzhwbTJyVHptZ0ZxUTJocXExUzRrMlJjb0JJeldRdjNB?=
 =?utf-8?B?K0wrTDgwcmR4akFlYjUrK1hNQlppMlNWT1JLYkVCenpGcCtQVnZVZUlaeWZr?=
 =?utf-8?B?b2EyV3hoUmdJREhIMkFZaTZFTXRlZmVoa05EMGtjWTM1NkkrbVJaRy81ZUZQ?=
 =?utf-8?B?eTdsMVdsa3VNNUhiWHZxc0srRm9naTl4Z0x3SURjais0Z2hJdGJBclBwaTZv?=
 =?utf-8?B?TU1CbWM5UW5YR0dMeFlBem1mWlB5VjNzdTIwb2ZFSUJHdnFQUFhheEV0RzM2?=
 =?utf-8?B?S1JHKzNVbXdzUWd2NVpJcTkwdFNsem04dGpXNzN4TWlpdldZNzA3ZmRVcXRN?=
 =?utf-8?B?QzhoYmVJdWUzY2lIRFk5amhNL2hOMjUvclMrYy9FdkRHWHVTY2NaWnFSWVRL?=
 =?utf-8?B?L2hIRGpveStjd2hFcjQxUEtPOUJQS053LzhUbTJXamVyTGI2Z3VMYXk3T2Rx?=
 =?utf-8?B?QlpEekZJZEF6cFRPMUFhVkYzRVRtU3hPK1g1Y1JkUVZCak96QWpteTl1c3Y4?=
 =?utf-8?B?SDVTMjkwT2dJcGhTQTFZMERxTXJLOU93dDc3K2VqT3IyMnAyS3hjbHA3Y3dJ?=
 =?utf-8?B?VFo1MWhNRzB3SHhaUXRpUjZFL001SkNWZUhtSndWeVViRTg5akQ3bkJYWnVE?=
 =?utf-8?B?USs1eERtRlhWZzdKbktKTjlDMTdITlpRc0ZBMlIzeFFzaW9Pb0puUzJBMExK?=
 =?utf-8?B?WUhBcEJSWTBJKzcyR20wZEJ3VGNVSFBUbmtmM2hJUGZmQjBIaWRMVmhYd1Fx?=
 =?utf-8?B?TldVTjh1NjV1MXJyTk1CckVxOHJvQ3M5UWppbHMzbTlNWlVPdDI0NERHd05q?=
 =?utf-8?B?R2VNK05kTVFjSnBYNlp0MDZDRFJCaVBVeTgxUkYyYlZrcnliL2kxeHBIdUpV?=
 =?utf-8?B?bE1nV1IwU2lJaUxzZFVXVklOSW53OTdKS3lNeXJ1b21UWGdCZjQySFJzeFVw?=
 =?utf-8?B?b2dFWlVFRU5KQyttOHBNMEt1T2NOdFdIWGZvZG9NYUd3UTcraHd1YndYcm1h?=
 =?utf-8?B?bUFYeHYrbVRuLzJUT2J3VFFPZzZ0ejF1WlFXOXhTUThpUWdBY0kwendJcDlR?=
 =?utf-8?B?UkZOZGZDbHJHaUR5d0NYaFQwMXpWQVNEUG04NXVZYUE0V0dTU09VTWhrbmZP?=
 =?utf-8?B?QWFxRjNCZ1JJNFBOR2pxbkdzeTYvU2cyM1M3YXNjOUZGbDh0bFBRNTh5VWZ1?=
 =?utf-8?B?YTFIQ0RMSlNtSlBNZzg1bzFEcDFISGkzaXdZajlyU2hyc0huL3Q2T05Jdmph?=
 =?utf-8?B?QjA1TlBRbGxUUWtxVmg5RTI1OHFkZElUa05MZEs0RmhUdGNtM0hwdm1WcDR2?=
 =?utf-8?B?UDYwNFFlby9oVlhyb1NsTWdublJuV0N6VUQyUEE4WTNieVljdTZUYU04am1Z?=
 =?utf-8?B?MmN6KzBwNXA4RnlrVURJa0VNbW9pV2xNV1Bmc2ZHSEhtelgrTHg5a3hNbXlx?=
 =?utf-8?B?eUc5bVRmVjJqSzRGWkhWaTl4ZGlMU28xREdZWkI2UllMQW0xMVRiQkVFczI3?=
 =?utf-8?B?VHJocGxnSlVjRU5QNHFmcVVjNlZYTnRzZS9XaXlvWER1M2ZrLzJ1RVpqTUJh?=
 =?utf-8?B?MW5KVU9PK201ZUhNek56aW5RamxuOHVQSzdFNE1WdFdjQ0c3SzRRZjhRU3pP?=
 =?utf-8?B?VkhMRUp4OVdnVEpjL0t1d3FlaDczakVhR3haNjhWem9qRk5PZFA3anRQa2Z4?=
 =?utf-8?Q?srhoG3lGIk0PnSPbjAaXko3n3?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f3f8976b-1f36-4781-6abc-08dbb8f36cac
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 09:33:04.7915
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 1AL2ey3RgSGSyl/visZYT0yfLIdqvLf6flseVWO9G2DBk4ACUfPSv2Uz/P2UdGwQ6Mlu6JkYS5PaZz3s5PW7jA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9316

On 19.09.2023 11:19, Nicola Vetrini wrote:
> I just noticed one further issue with making BYTES_PER_LONG unsigned, in 
> that causes
> several instances of (1U << 3) to appear inside the file 
> xen/arch/x86/xen.lds
> produced by the build, which in turn causes ld to fail on that 'U'.

That should be avoidable if _AC() is used in the #define.

Jan

> For 
> reference, the version of ld used by the build is the following:
> GNU ld (GNU Binutils for Ubuntu) 2.38
> 
> The following is a snippet of the output:
> 
>         . = ALIGN((1 << 12));
>         __ro_after_init_end = .;
>         __start_bug_frames = .;
>         *(.bug_frames.0)
>         __stop_bug_frames_0 = .;
>         *(.bug_frames.1)
>         __stop_bug_frames_1 = .;
>         *(.bug_frames.2)
>         __stop_bug_frames_2 = .;
>         *(.bug_frames.3)
>         __stop_bug_frames_3 = .;
>         *(.rodata)
>         *(.rodata.*)
>         *(.data.rel.ro)
>         *(.data.rel.ro.*)
>         . = ALIGN((1U << 3)); __start_vpci_array = .; 
> *(SORT(.data.vpci.*)) __end_vpci_array = .;
>    } :text
>    .note.gnu.build-id : AT(ADDR(".note.gnu.build-id") - (((((((261 >> 8) 
> * 0xffff000000000000) | (261 << 39))) + ((1 << 39) / 2)) + (64 << 30)) + 
> (1 << 30))) {
>         __note_gnu_build_id_start = .;
>         *(.note.gnu.build-id)
>         __note_gnu_build_id_end = .;
> 
> 



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 09:45:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 09:45:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604522.941943 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXIF-0004Sk-PP; Tue, 19 Sep 2023 09:45:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604522.941943; Tue, 19 Sep 2023 09:45:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXIF-0004Sd-Mu; Tue, 19 Sep 2023 09:45:19 +0000
Received: by outflank-mailman (input) for mailman id 604522;
 Tue, 19 Sep 2023 09:45:18 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=FZpu=FD=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qiXIE-0004SV-Sa
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 09:45:18 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3c3b0874-56d1-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 11:45:16 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73])
 by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-134-1ckR902UOiaT0vEMdhORnA-1; Tue, 19 Sep 2023 05:45:10 -0400
Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com
 [10.11.54.7])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id EF7523C0C480;
 Tue, 19 Sep 2023 09:45:09 +0000 (UTC)
Received: from redhat.com (unknown [10.39.194.90])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 47482140E950;
 Tue, 19 Sep 2023 09:45:06 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3c3b0874-56d1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695116715;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=V1mP29WFUX97+g1j0GENZgYcEtjWxZ7dHu7PUEU0WXI=;
	b=MzDyViMLTSP0X2QNOMG7wVHScyyO8ZMa7qaDb2YSFRJsYTE4cR0Wp4PiUyj0QXFYzcJFzF
	2gpm2JirvWlfeRUVQSLVREnx8lAUUMlxrLZI+F+ZBdmgYDyrnBFk0JjVBQhlGSUllGSlSQ
	LMF5+vH7iVWMbEOptdK/wvMUVFj8nKc=
X-MC-Unique: 1ckR902UOiaT0vEMdhORnA-1
Date: Tue, 19 Sep 2023 11:45:05 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, hreitz@redhat.com, eblake@redhat.com,
	vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com,
	pl@kamp.de, sw@weilnetz.de, sstabellini@kernel.org,
	anthony.perard@citrix.com, paul@xen.org, pbonzini@redhat.com,
	marcandre.lureau@redhat.com, berrange@redhat.com, thuth@redhat.com,
	philmd@linaro.org, stefanha@redhat.com, fam@euphon.net,
	quintela@redhat.com, peterx@redhat.com, leobras@redhat.com,
	kraxel@redhat.com, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: Re: [PATCH 4/7] block/dirty-bitmap: Clean up local variable shadowing
Message-ID: <ZQltoZWlnIW/wDi3@redhat.com>
References: <20230831132546.3525721-1-armbru@redhat.com>
 <20230831132546.3525721-5-armbru@redhat.com>
 <ZQQNUjN4Laf+k1Nk@redhat.com>
 <8734za4stm.fsf@pond.sub.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <8734za4stm.fsf@pond.sub.org>
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.7

Am 19.09.2023 um 07:48 hat Markus Armbruster geschrieben:
> Kevin Wolf <kwolf@redhat.com> writes:
> 
> > Am 31.08.2023 um 15:25 hat Markus Armbruster geschrieben:
> >> Local variables shadowing other local variables or parameters make the
> >> code needlessly hard to understand.  Tracked down with -Wshadow=local.
> >> Clean up: delete inner declarations when they are actually redundant,
> >> else rename variables.
> >> 
> >> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> >> ---
> >>  block/monitor/bitmap-qmp-cmds.c | 2 +-
> >>  block/qcow2-bitmap.c            | 3 +--
> >>  2 files changed, 2 insertions(+), 3 deletions(-)
> >> 
> >> diff --git a/block/monitor/bitmap-qmp-cmds.c b/block/monitor/bitmap-qmp-cmds.c
> >> index 55f778f5af..4d018423d8 100644
> >> --- a/block/monitor/bitmap-qmp-cmds.c
> >> +++ b/block/monitor/bitmap-qmp-cmds.c
> >> @@ -276,7 +276,7 @@ BdrvDirtyBitmap *block_dirty_bitmap_merge(const char *node, const char *target,
> >>  
> >>      for (lst = bms; lst; lst = lst->next) {
> >>          switch (lst->value->type) {
> >> -            const char *name, *node;
> >> +            const char *name;
> >>          case QTYPE_QSTRING:
> >>              name = lst->value->u.local;
> >>              src = bdrv_find_dirty_bitmap(bs, name);
> >
> > The names in this function are all over the place... A more ambitious
> > patch could rename the parameters to dst_node/dst_bitmap and these
> > variables to src_node/src_bitmap to get some more consistency (both with
> > each other and with the existing src/dst variables).
> 
> What exactly would you like me to consider?  Perhaps:
> 
> * Rename parameter @node to @dst_node
> 
> * Rename which parameter to @dst_bitmap?

Parameter @target to @dst_bitmap (it's the name of a bitmap in
@node/@dst_node)

> * Rename nested local @node to @src_node
> 
> * Rename which local variable to @src_bitmap?

@name to @src_bitmap (it's the name of a bitmap in the local
@node/@src_node)

> * Move nested locals to function scope

I don't really mind either way, but yes, maybe that would be more
conventional.

That you couldn't tell for two of the variables what they actually are
probably supports the argument that they should be renamed. :-)

Kevin



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 09:54:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 09:54:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604528.941954 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXQp-0007A8-Kw; Tue, 19 Sep 2023 09:54:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604528.941954; Tue, 19 Sep 2023 09:54:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXQp-0007A1-HB; Tue, 19 Sep 2023 09:54:11 +0000
Received: by outflank-mailman (input) for mailman id 604528;
 Tue, 19 Sep 2023 09:54:10 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=lZx6=FD=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qiXQo-00079v-5v
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 09:54:10 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 799d7c5f-56d2-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 11:54:08 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 680A64EE0737;
 Tue, 19 Sep 2023 11:54:07 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 799d7c5f-56d2-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Tue, 19 Sep 2023 11:54:07 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org, Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
In-Reply-To: <9c43273a-cf20-73bf-96fb-f3095ce3a122@suse.com>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
 <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
 <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
 <6818e3ac47edca6ba107b8eeff95955a@bugseng.com>
 <a52733a0-ec5a-3b49-ccec-7a7e8e775c4c@suse.com>
 <7d07fc38-14e8-6cc7-2b0c-816bc68c7317@suse.com>
 <3d44b3b0b185418482ab60a693d930a9@bugseng.com>
 <alpine.DEB.2.22.394.2309081236360.6458@ubuntu-linux-20-04-desktop>
 <ed1f468463841e7f3f5bb90de4d9a227@bugseng.com>
 <9c43273a-cf20-73bf-96fb-f3095ce3a122@suse.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <efe4e781aeefb63b9ac3e1ceecb54f97@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 19/09/2023 11:33, Jan Beulich wrote:
> On 19.09.2023 11:19, Nicola Vetrini wrote:
>> I just noticed one further issue with making BYTES_PER_LONG unsigned, 
>> in
>> that causes
>> several instances of (1U << 3) to appear inside the file
>> xen/arch/x86/xen.lds
>> produced by the build, which in turn causes ld to fail on that 'U'.
> 
> That should be avoidable if _AC() is used in the #define.
> 

I think all instances on x86 are caused  by
. = ALIGN(POINTER_ALIGN);
where, for all arches in xen/arch/<arch>/include/asm/config.h there is
#define POINTER_ALIGN BYTES_PER_LONG

$ grep -B 1 -A 1 "1U" xen.lds
        *(.data.rel.ro.*)
        . = ALIGN((1U << 3)); __start_vpci_array = .; 
*(SORT(.data.vpci.*)) __end_vpci_array = .;
   } :text
--
        *(.init.bss.stack_aligned)
        . = ALIGN((1U << 3));
        __initdata_cf_clobber_start = .;
--
        *(.init.rodata.*)
        . = ALIGN((1U << 3));
        __setup_start = .;
--
        *(.bss .bss.*)
        . = ALIGN((1U << 3));
        __bss_end = .;


Do you think changing the definition of POINTER_ALIGN will break 
something?

--
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 09:59:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 09:59:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604535.941964 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXVt-0008WN-6G; Tue, 19 Sep 2023 09:59:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604535.941964; Tue, 19 Sep 2023 09:59:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXVt-0008WG-3Y; Tue, 19 Sep 2023 09:59:25 +0000
Received: by outflank-mailman (input) for mailman id 604535;
 Tue, 19 Sep 2023 09:59:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiXVr-0008WA-PX
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 09:59:23 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0605.outbound.protection.outlook.com
 [2a01:111:f400:fe02::605])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 34773a55-56d3-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 11:59:21 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB9094.eurprd04.prod.outlook.com (2603:10a6:20b:445::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 09:59:19 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 09:59:18 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 34773a55-56d3-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=k0PRb5luLvuQHbvpS72RulqydZJWftmySC5GeythAssdaoQcBX4mX9gynzUN6KFUFwSe5v6I0T2vwrXs0bP9cWCAfVCoknVnOgDwys0TXL0Yf3ULbaY5Eoz0gO+9FaiuJ6x7QM5HnT9oKLRQnmweX9q76ZlW/Nc1IT8sbXM9Z1FKoO1xp3K6L4oVrnPO5wg3DpSNKj65flvODpRYVoav5H2XpiHVVmjLAuYh0d5t31nnme0gDOHJTXnBYNjX9aoL2xpoGQQYOi0sAYiMKM1kcPMxInIFfeQ0tZ0x2rTn/FzjsaBANt0tTkOaRC2hq5YH47ThLOLW12Lsf7EfIOjnLQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7vkPfv6tHqwQP+MdMC7c82HnAW22ZJ7qxNfGeLESBNU=;
 b=cX0056dh/yaOG4HKsNQh9ISoN08hh5spUq6FRlGAmFMmkDgwlZoGRSPGWJw3YmFn/bt4lvySXkOKajnejuzmmQspKyR8rXRNmr0Oc1Y/c8bKvF9BjTAOAEe7K2uLpQbjGvwfVz764H2xGQfO0I84rGRvxkBmOKuZt58SZM2JW2T+NwNDseLzhd8UA36nMkIubViCEmXxSlWWSG6fuH1KUDdFEAR/r12Aenax0BnoebK81FD2wQTxXLLL6UpiTh2ADSOdciC0MgrobogQzFJxo4LXKICtX9EHauxyFhS5PfiDvx2lpKGwsqP0rHYRVcCXFq9dfMehztvSkK30imXPPA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7vkPfv6tHqwQP+MdMC7c82HnAW22ZJ7qxNfGeLESBNU=;
 b=MYfnMgaYkuMzo3psLmwOUbDnQhPqZxHzzP5xwNovkklVw8Z0784x8b8aouQxycXqpF+44LbJk9TYOx76cE05TSMI0yHvv8lylkRjU/3YeRSVNvPypQbFqYhEYqMuZBSyo1+38ZZzE9nY9BkG6vBZLPFG6uZIRGbQKM12wenyXlDoxsUFWLioRLmch3/rh80RomltP06uEVXzcugljSJ79AGTg+VxjPX9kmsTto7Sa9I80yrcoeWSFq3rqYnOfsov5zedzDkauLOrLgW9tJ/83JbwFYS/I9/lTvLUvlflkKhioAxr+3ks2MR5oKsbIciY6YVZCxiErKbmvZNaJvUMVg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <07144878-5850-d15f-97ba-85b1ec6dc095@suse.com>
Date: Tue, 19 Sep 2023 11:59:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH] xen/types: address Rule 10.1 for macro BITS_TO_LONGS
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>
References: <b3aaaf5265c7e7ce6228ba2146f57aaae09f55e6.1693899008.git.nicola.vetrini@bugseng.com>
 <540ae128-a934-8c4c-6fec-e475dd072c3e@suse.com>
 <aa2084eb925ade9caa4e1dfbfb425537@bugseng.com>
 <9b673dec-f391-9948-3ce9-25ddff8c9d7b@suse.com>
 <948c3c6c0b9dff859df58eab419d01f6@bugseng.com>
 <7937ae31-e511-8e41-9cbb-98d8666e66b8@suse.com>
 <alpine.DEB.2.22.394.2309061828360.6458@ubuntu-linux-20-04-desktop>
 <6818e3ac47edca6ba107b8eeff95955a@bugseng.com>
 <a52733a0-ec5a-3b49-ccec-7a7e8e775c4c@suse.com>
 <7d07fc38-14e8-6cc7-2b0c-816bc68c7317@suse.com>
 <3d44b3b0b185418482ab60a693d930a9@bugseng.com>
 <alpine.DEB.2.22.394.2309081236360.6458@ubuntu-linux-20-04-desktop>
 <ed1f468463841e7f3f5bb90de4d9a227@bugseng.com>
 <9c43273a-cf20-73bf-96fb-f3095ce3a122@suse.com>
 <efe4e781aeefb63b9ac3e1ceecb54f97@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <efe4e781aeefb63b9ac3e1ceecb54f97@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0060.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:93::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB9094:EE_
X-MS-Office365-Filtering-Correlation-Id: a8176816-1f71-4700-9ab5-08dbb8f71719
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	JkqKFviLQA4Ew9ctOrdMPKZn2hCZW/ZslJSur87DOByzi4333SuSZjewr2GMfcz04APodt7HBqnPLktRfKhVUh6pGoXlMK9AwRWAEoW1tEjVjnBp9lyKGQ43B2WKRpCI+7oBEnx6hnQxTUAQ0aU2P6FSGlDYRigl28Cr2gxnTQBAtWu6m4e1XrueicjX4igz5Ya/DbIjp+38gwaf/Xz6gnb1WTHyxwmi5xpmhHjzhMIOaVFoS2OSsLk1Og4tTDed306pQF07JX3htmVCZjls7xHEgiJWWwxwthKivsUuqs0Fsopm9b0PVCRdWZ2RyssRpVlgyVR83RGECClBaKdD/k09q6WW4HDASbaLH47tp8BQdMlWld0A7jhN6uu8L7KOMAho+7vFfwPoQlIOWDippeUJZIN4YI39y6aHZs6ZCtPv1PusYW9p3xR1Q82s76i7wj9JW/knOkrDUt9yNJgC6W7PDrRuz9NxZOrdsD3dWHjPcefepZORFeQYqPeK1yPUUAa1ug1cKfIQo6v67GX8SOfErWmjy0T+PBC/AES5O2TIkUTY5D40uGaJdtlGqPwS0h0bnyqW+PQ3OravdDZB9kjuSF5GjbFZIfFkcFu1DjMQ5Q7X+PhwF5WHvBP7JFNl5lI5ei7ut9wU3ngrxkQ5SA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(366004)(396003)(136003)(346002)(1800799009)(186009)(451199024)(316002)(4326008)(54906003)(6916009)(8676002)(8936002)(41300700001)(2616005)(26005)(83380400001)(6512007)(478600001)(36756003)(53546011)(6486002)(6506007)(86362001)(31696002)(38100700002)(66476007)(66946007)(66556008)(31686004)(2906002)(7416002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?KzNicGhtSFpaT0J0bG5qWldoQkJ3WVIyUmRyOXk2OGJHSTVHNUFJMFVxTVhP?=
 =?utf-8?B?elBBakh0VnROQ0xRRmpUNHpnOSt2VzRIWEtEUjV0VFozZzJ0MUR5S0RMVzFa?=
 =?utf-8?B?QmliN2VzbndKM3pMZWFzZXM0ZG5RL3JoL0laZUc0RWxZLzg4NG4yWU1PSWlm?=
 =?utf-8?B?TlZ5cnFKejBKOVNiekUzazdYb1M5eUZGVUMvTis5eStndVROQldMb0gxWTF6?=
 =?utf-8?B?bXVFVDFFbmRHSWpTUER2V1FLM0JCNkpKVlJRNlFoRWZaUDU4TUZ0Q1llRkJx?=
 =?utf-8?B?ZmkrY0ZKWDRYV3Q2TXpEd0J0ek9lYWk5R0ZQQTBuRjJxTkJhazRGUkpEeUN5?=
 =?utf-8?B?Rlo4dDkyOVpXcmFCcThnWDVnWlVhQVhpU2pNZElJSzZiNThzUi93K3BaQU01?=
 =?utf-8?B?MTBaOUxHSk93T2p2bUE1R2ZRQURwU3Y0bENRN1NuSHlXM1BpZzhYdHYwWHZO?=
 =?utf-8?B?NHZtL1NOMlZJRlJkMTJmcDZ1bFF5aHJNU3hWZW5LWmtYNlNuWmlJQ0o5elkv?=
 =?utf-8?B?OVhhTWk2ekdBQVpEYnBUUWZNUUhZY28vQ0lIVnd5T1Q3dGNHS1ZhNWNLb3hN?=
 =?utf-8?B?NDNPYjd4OG16RkF0Rzc0V1ZLSTFXNVdtTkhaclg5MWZkU04yU003RE9TcVp1?=
 =?utf-8?B?YXpBZjZXaitwdTNMeDJIU25vNnFucS9lNXVWOXU5dXVzZ3c4TjZWaFJLWU5R?=
 =?utf-8?B?Y0ptZDlvNnJBbHFiZEVQZVR4UE54SHVlM3lSYUVBblpmaFJQV3RSZ2ltMXdx?=
 =?utf-8?B?M1NNeWhyRGlXSkE4NWNKZTdSUXVkMVZRcm9tZU1vTXVrbVZQTHo2blhpQ0lO?=
 =?utf-8?B?YVBxSkJXMEdCOEVFSXE3cWNPSlJQaHpaSEdIUk9aQmdIeHJXVGN3d3dWVEpk?=
 =?utf-8?B?RnN2YVJ3a0h1dTFaYm5XOXpIc043dUpqVHhzVWFQZXRYSUNOSlBzRzMwb21w?=
 =?utf-8?B?eFdKYWllazBNY1l5TEFyL3lFczhPaWU1QVR1MG1SU1VsV0cwbXR4QnVJMElx?=
 =?utf-8?B?RWVRZ0lESkdNVzJPa3NzZUUvT0FjajduM0xSamVNS3h5U0wvTy9uQzV0ekVE?=
 =?utf-8?B?K0NyRFFDREJ3YWk1Y1VxY0RIcFVvVy8zeXhTWUFIYlpwMGsycGlSRG4wNS9L?=
 =?utf-8?B?Y0k5dXdTOEhNenBESk1tRWR3RWcvSVJHRDk4ZGhueWxUVE5EYVl6anRIczF5?=
 =?utf-8?B?YzJsa0wyQ0I4VVc2TnlIcWd4M1pmdjlzNWRnSFVRRThvQnRxSDl2S2o4VEht?=
 =?utf-8?B?MzUzVVc2RzBzL3R6aTVIU0J5bkJsYUowU1g2aHBQOVdNMlU5T1ExNXBHS08x?=
 =?utf-8?B?WG82V0VDNWpqeHNZMWZ1Zjk2V3dMWkxpZ3AzSU1qd09kVUZJSzg4WnYxNllS?=
 =?utf-8?B?TkxBdThaSWRLaEFZWG1LdEVjWmludW1qRVZodXZhM3BpTDNBM285ZkNBUmpl?=
 =?utf-8?B?SWNSdFd5RllZcjU1Njd2bUoyN3JYWktTTUpZbmdueWlGQXlpMHlXeFM2Qms4?=
 =?utf-8?B?ZnNSdW5CNEFZMkVVTDR5Q2xaQXFkUFNWNHJHL3REMG5jSnFaR21Kd2NCWFBu?=
 =?utf-8?B?TkVXcisvdVhjanlzSmNFaUNCcmlkREZIQnJkZjV6aFQ1RjVubTNOMmUzQmF5?=
 =?utf-8?B?aWZtRHFTRWhHcnZDYkk2RUJDbDlXN1ZZV3RyQ1VuUEZDaU94OGhIVVM4aVNL?=
 =?utf-8?B?UWhRU2xlZnN0Y0x4aXV6OUZsbmh2dGxyRklmc2FkZDFvM3J5VzRMR0F1cVVz?=
 =?utf-8?B?RVlod29hTlVrRWVMYVBGbXpYVStnblB3eW9NMVVMOGpSOVRoT2FOK2VpSVpz?=
 =?utf-8?B?N2dTcUZab3graWNjM0NleGVrN0ZCZWFKOXN3Y3l6SjlOUUtWUUVodjlIVGg3?=
 =?utf-8?B?eEdqM2tzREtlRlNDRXNiREoydnZ3NzdvTHVRMzE1QmdrUUZaVkNvSjdCNlg1?=
 =?utf-8?B?VXl2WWZNSFp6T2VpVkNpWFloTjFHQ3hPTzY4dUxLMEw3aTByV1k5V3BzWkx6?=
 =?utf-8?B?TllRTWV5bEoxKzVqeDVxUGExcGRGb2c3ZnJEVmdmSTJWMjRoTUpMczJzeENR?=
 =?utf-8?B?Z0hOTUVsSzMwNUx3REZSb3ZOczFXVy9NZXVzakJtRnpHYklObmh2bFpKKzJs?=
 =?utf-8?Q?rqnRVNDY+XAuZN1XJ4ZvrHZvY?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a8176816-1f71-4700-9ab5-08dbb8f71719
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 09:59:18.8516
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: CYDSd3YbjZSLGyzYwVXL9dFx7FaSpHj+OSDkZj6uVKtQOWtSkXJbjpVwsX/f30xdxr02x2cg4C6leNjhPOQ5vw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9094

On 19.09.2023 11:54, Nicola Vetrini wrote:
> On 19/09/2023 11:33, Jan Beulich wrote:
>> On 19.09.2023 11:19, Nicola Vetrini wrote:
>>> I just noticed one further issue with making BYTES_PER_LONG unsigned, 
>>> in
>>> that causes
>>> several instances of (1U << 3) to appear inside the file
>>> xen/arch/x86/xen.lds
>>> produced by the build, which in turn causes ld to fail on that 'U'.
>>
>> That should be avoidable if _AC() is used in the #define.
>>
> 
> I think all instances on x86 are caused  by
> . = ALIGN(POINTER_ALIGN);
> where, for all arches in xen/arch/<arch>/include/asm/config.h there is
> #define POINTER_ALIGN BYTES_PER_LONG
> 
> $ grep -B 1 -A 1 "1U" xen.lds
>         *(.data.rel.ro.*)
>         . = ALIGN((1U << 3)); __start_vpci_array = .; 
> *(SORT(.data.vpci.*)) __end_vpci_array = .;
>    } :text
> --
>         *(.init.bss.stack_aligned)
>         . = ALIGN((1U << 3));
>         __initdata_cf_clobber_start = .;
> --
>         *(.init.rodata.*)
>         . = ALIGN((1U << 3));
>         __setup_start = .;
> --
>         *(.bss .bss.*)
>         . = ALIGN((1U << 3));
>         __bss_end = .;
> 
> 
> Do you think changing the definition of POINTER_ALIGN will break 
> something?

Why (and in which way) would you mean to change POINTER_ALIGN?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 10:06:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 10:06:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604541.941977 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXcG-0001xa-TV; Tue, 19 Sep 2023 10:06:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604541.941977; Tue, 19 Sep 2023 10:06:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXcG-0001xT-Qe; Tue, 19 Sep 2023 10:06:00 +0000
Received: by outflank-mailman (input) for mailman id 604541;
 Tue, 19 Sep 2023 10:05:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiXcF-0001xG-2F
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 10:05:59 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2047.outbound.protection.outlook.com [40.107.13.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1f6b9e74-56d4-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 12:05:55 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBAPR04MB7431.eurprd04.prod.outlook.com (2603:10a6:10:1a1::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Tue, 19 Sep
 2023 10:05:26 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 10:05:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1f6b9e74-56d4-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=S5PCqxu/ck/v9Q+NsOvp5VnreS7/vx2csr+n+nO0HKpEh5fvVqJbLatctQJfSa13V0ZZmddv+663iZqlMl8XLwMTbcNUDWo/BGTrHlmlJ0gfJhqCXB8uc8GLCDVzcCRrlMt4kRVcIeYHwXaolhT0WshAHKFjbCnbXSsd5iTQxzPTft2d/9L4vZ+sCU0NEGzPRSZISVkNr5eq4aSo9W4kv9+NXYb42LVAfpvhsJvMnVNZtKmL4kxQL+pk1HGavldaR6KUIhjmRqQ4aVVW960FtrcWYBfX1D2htCOKCrYOSwXhDg/0f0o/ac0elKsb+bTLMezlaErijcEmLnOoFG7Vdw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3JEVKF6+X594PKHlj11lZsB6Nspq8bL6d0PDZTiWEqc=;
 b=jakOPGoy2caBe8VRSsOMEw9M3K9w/Z2reW9flwUB67VKciPBuprhusAJlyxRt8YLMYdnUiPUWJk3LH3kNawa6/itwJM6KaSh+LX2R2cPikc01UtAtcLlKIT0veM7DUQh6g1d4RNobRHqDzmGxdj5GWL3vVvc2z17gRorjMKFmXULGkLGc7EOtQhEJguXH3OPJS4ri3Xuz7iT2CDJmIUz9a2nDzzdPbGYSpuSkWRAFAc7TUnAXULHBYQTv0MSs5blV0YOp50EHRYF2PDe5Cue8uRiheQX3yFbDtyY4fj8oDk/TR6TgTB+GT8yjHJqvXXKa4P6PCb/mH/vXYkYp89l6g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3JEVKF6+X594PKHlj11lZsB6Nspq8bL6d0PDZTiWEqc=;
 b=YPkgGqiVQJhB0Ozz67MTa7zZZJtZIQ9u/eFbLuUFvl6dbd6wDkKfGxt0JrE6KvyqQRowS31NuGXbxurnGEHbmOxYS2sgOjRqBZCgRFcv+VXU6EaiXIwsKLiGdjy04svKFbJfRA6YSefMv6xuOxWoVL+aOjcnCjMKX7PpZFdljOj3ETXcZyr9ZVxTz+VbUkBHX+Iq3/0VT5MhDFHK++rPVVMZmVSGEKbXUrcJMviqjCFoLJ31+gYnANeOA3jmGWNrjIN9/e6jMZY4FY4ragH1Cn7GV6M4LVvhVHGojcM8pM4OEIGYQ/DAv3CRyguGatP42Sjfw8sjJhwGCQuv/zGTWw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a5a252a7-47b0-3ee2-3157-0b18e5f0b079@suse.com>
Date: Tue, 19 Sep 2023 12:05:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: xen | Failed pipeline for staging | ea36ac0d
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
References: <65096f918e2e5_29a56047619e@gitlab-sidekiq-catchall-v2-84c6ffbc68-bt8nn.mail>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <65096f918e2e5_29a56047619e@gitlab-sidekiq-catchall-v2-84c6ffbc68-bt8nn.mail>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0071.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9a::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBAPR04MB7431:EE_
X-MS-Office365-Filtering-Correlation-Id: 8a3731bd-fccf-4eb3-719a-08dbb8f7f214
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hrBRpvmoehH3myCmCK4oKFG7TCHpikRjoO476k4z+ZvLfIwiXNnNEiv2cfLj0FAMtx6c9E3oUeJnFW9V0Gmvnk5W0IvqX9Z8O3GDtD5U9QbMOLdSTvDDXstBXFeEJfjx0I/Vv/G51mDwj70GPyTlbqEasggufvZfGhmJZqhZ75RiqKNywuPG2C3c9XG23sb4miq9GxlNXldlk61oGLYlZG7eYo+csUU03BIWNhuDly0rgS31WSbZaeZE5IH5oFd9yAqZl3MhhkLE1vHLZyaTA8FKdJnhs5NJDdq0q/bl/BGo+gz+z3DsAdWh7UggrtIRaJaOTdSkUjkcBCf1mWALOhmvrT9yoXFAU/H12et4kbT/f9WgEEnqwirJmi+c1MPPc75eJNHTAYzV862IVo/QNUoPq54CS8POJkRdxtGje2n8K6aspxuj0n7nQyKZwrNT5HE9QzQ9mKcJ0NLie2BGjMhY9tBGDFBn7UDWvfdBNRh498t6v8A57xySyNPHMHPP/Hmj1JV7wRZtoOXyM0XaGG6Hiap5Cyh2AqjUZBeRjuG3YrRUfpjTfJLEr+ZgxEvPBl28TZVxhOEiF0Ef/X6jJGYaPiwlepuf0u6QKb6wrd5Dpab2Bgt/pTXRztyG8+havaBXd9fcWAHV7OEv+Uwe+A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(376002)(366004)(346002)(396003)(1800799009)(186009)(451199024)(83380400001)(6512007)(53546011)(6486002)(6506007)(36756003)(41300700001)(2906002)(31696002)(66556008)(66476007)(6916009)(4744005)(5660300002)(66946007)(4326008)(8676002)(8936002)(38100700002)(966005)(478600001)(86362001)(316002)(26005)(2616005)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?S0s2QldUem5lMU1qeXZLbTcyZkZtdHRLQjZ1SVNVY3BnVEVJTTFtUVNVNlps?=
 =?utf-8?B?L3dscWMzYWsyZGsrTTRKUmFrbzRnb3huaGl6SUs1NmNkV1BkaExPWEc4UmE4?=
 =?utf-8?B?ZUFFRC9zcUlheHc4WFdwcHR3cVdzTzRKUDY1djRPa3hBV3J3NTBCVm9aa1ZE?=
 =?utf-8?B?enFTTU0zT25nU21uaW92V2dTYWU4L1lWOXRuWkcvdWJRbityclFQMGJYMzdz?=
 =?utf-8?B?T0Q4Uy8wck1lSDE0K2RxdGo3cXNaTEk4TGVUek1LZ0NXQ1VidzBhRjBpdDNj?=
 =?utf-8?B?Qk9QeXE1Slkyd2NNanRXRmxGRkZrTVRwdWt5NzFFajBJQUp1K3RrUWxzcEd5?=
 =?utf-8?B?dTZHQ2pZL3RDTE4vUHVrMVlLOHU5M20vOUhpSVhYc3BZT0JxbHc5U01KSDY4?=
 =?utf-8?B?OTRjRmxQd2k5SWloU1VlRjN0M0RrYmdvK0F2SC9Bby8yYVFNcWJyZG5aS0pZ?=
 =?utf-8?B?MVJEVUZBTWNPaWVJdHc0a3R6LytXYi9BYWtnT2ZOUC9CZkRYclNOS2JMM244?=
 =?utf-8?B?Y2gzQUVjR1BvVUxsSEN6Vjh1Sk5uOG13V2tQaWtod0s3cnRNQk9kQUd1aExl?=
 =?utf-8?B?SHNTTjRDdk9UbFBlTXQzSVVONEw1QTNuU1NjNnA4akplR0lCUEprUVdyems3?=
 =?utf-8?B?UmRpVDV1NWh5R2VtbkN4anI0THEvRFV3UFk0MHNyeGV0ZWM1R2c4QmFSM3Zk?=
 =?utf-8?B?THZxREdoM1V4ZkduVkRKeE1FaHEwRlkrK3U3M3ZxdEUrRDdQU3g1MGNVSHMv?=
 =?utf-8?B?N1hWRGJmSDVoL1JLbFMyWGdvdjNGU0dBeFhnUzJRRjdhaFA5OG9OUzNsNk1B?=
 =?utf-8?B?V01FZno4ODNjbFpPMWZqSVlBczJCNlpOYWJFcG9GM1NTOVg2S1VJYTNORzlF?=
 =?utf-8?B?Q3NKMUVqeDFxZk9NVURySWZLcnBseGJESmpub3B0a0F3eC90WUlHYmlMc1hR?=
 =?utf-8?B?UU1mM0ppSkRnYU1qNkRMSm9HMUF6akNFa1hlSCs1WklENjVqemJoaytYRjZp?=
 =?utf-8?B?YXhHOXVrNXVqYy85aVZZODhXUTlYYUZxK1U1aWt3MWhZU3V6OGtjcWRoY1di?=
 =?utf-8?B?TU5nKzdFejQ1OFVjbVRSd1VWTmNoU0syYXdHK0p2ajZyUHB3aTB2cWVSeU92?=
 =?utf-8?B?c0Z4ZW9ZQVVoODRHeFhiUzFpSkNpV3FuWlExVC9EajMwVWhTMkNlb3FHTGRn?=
 =?utf-8?B?VE1XUTJCZ2FvQTVvTGFVWk1LeWUrTnBMZlVqUDk0RFBEV2pNbmFIb3BDTWNP?=
 =?utf-8?B?QkZGaDlnWlg2K2hJK1I0ZHQ2YmZsV2RkUk8yMnpXMmtheC9PME50NmhyM1Jv?=
 =?utf-8?B?eU45M2czQ0t5aDF1VE1UYWtkbC91c2NVOUEyc3BPQnc0aTZKOHJUZ2pYZHNv?=
 =?utf-8?B?bHlWLzFiaHdIL0dQSGhLcDJqdFl2N2dSd0kxQmNucDVnNGNLbFZPWlpZQ1Az?=
 =?utf-8?B?RW5IQzZzbGYvTWw4SFp2MWg1YTdqSHpSY1doTStOTm5HblpQajY3dzE1blpY?=
 =?utf-8?B?M005NVdUTDZCU3pSN21tcFVFTGRhQWdtK3FBdWxjUnE4Y243MzJHK0tkdjJs?=
 =?utf-8?B?T1o5Zm0xT0hEVzZOZDFGRW9TRUhScXo0UEh5VDduUFpYVkpUbUt3Y0FGd01L?=
 =?utf-8?B?d2MwRmlmNGJtVXQrSFNuNk1XVEd2azBGQ3I3bnhpNm9KdXZTaFN1SFZYc2Yy?=
 =?utf-8?B?b3ZXRzNnaEpyYzJ6cmNqS1NEYmlRV1JhQTFJak1hZTVTTWpDMTV2ZlVHY21K?=
 =?utf-8?B?MHlRbWNKcXdzZzNOa2lsSUlqbXMrZWE0bGhkK2ZOTXE3bHpCM1JzVzUwV00y?=
 =?utf-8?B?OUZRRHNoTTNiVTYrZEhWNEVhRVdibTlzWms5YnA5M0ZwZ2loQUxZb0tUMmhs?=
 =?utf-8?B?Z1VjQzE4MnliM1dIaVgyR2REQi9rc2wyYmc4dWsydUMrdjR2a3c3SWZWL1o4?=
 =?utf-8?B?WStBbE9aMThnRXgvcG1mNktiazFWTXFXUHYvTGdEa3F2QVhGL0VZUXQ0cTk2?=
 =?utf-8?B?dDRRdWVndjRXYjFUS25tMWczSVlhYU0wMmx1QVRqU2hucmhSeVRuT2FuNHpt?=
 =?utf-8?B?bVpaVVFkRmtCSEk1UFhyS2c4ZGJwYmVGNk1CcjBhZFBROEc0ekJycUZWVDR6?=
 =?utf-8?Q?2L2HJ0JkfgNb+6tMGpwjxK0Oz?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8a3731bd-fccf-4eb3-719a-08dbb8f7f214
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 10:05:26.2337
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xugEmksxAW+WALrzwPHz7ymZlZ9pzDm8qbK+oQ5GC53hC5dp5uxmlkZY+tq67KlH+jvAMuHmvRMnMWkI5v9ScQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7431

On 19.09.2023 11:53, GitLab wrote:
> Job #5118269256 ( https://gitlab.com/xen-project/xen/-/jobs/5118269256/raw )
> 
> Stage: analyze
> Name: eclair-x86_64

Quoting from the log:

...
Success: No unexpected reports.
...
ENOENT: no such file or directory, mkdir '/var/local/eclair/xen-project.ecdf/xen-project/xen/ECLAIR_normal/staging/X86_64/5118269256'
...

If that's the sole reason for the failure, then it doesn't look to be code
related.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 10:18:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 10:18:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604549.941990 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXoG-0005CY-7O; Tue, 19 Sep 2023 10:18:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604549.941990; Tue, 19 Sep 2023 10:18:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXoG-0005CR-23; Tue, 19 Sep 2023 10:18:24 +0000
Received: by outflank-mailman (input) for mailman id 604549;
 Tue, 19 Sep 2023 10:18:22 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiXoE-0005CH-SY; Tue, 19 Sep 2023 10:18:22 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiXoE-0007Ad-Pj; Tue, 19 Sep 2023 10:18:22 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiXoE-0001dS-IC; Tue, 19 Sep 2023 10:18:22 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiXoE-0002kp-Hm; Tue, 19 Sep 2023 10:18:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=cTtvmPAsTwWHpd597WKD0/CGDG3UzIkobweRjcQ9jWM=; b=g6dv0IxAYOO8vIzP51xZmnZQYC
	Qc1P1rvwB1XhIgGwG6cnSGtgCamP7BpEfpqYV7xeWXX9+kdWGYHyURCkyW8NyoxzJavfFBlF59kQ/
	NUwjW3Y9bftlV4RZQGEJBlG/1ztXGXjAk7CtStVn36kcBjYxqbVenApJrD9+O7nAvQ7A=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183035-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183035: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=2cf0f715623872823a72e451243bbf555d10d032
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 10:18:22 +0000

flight 183035 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183035/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                2cf0f715623872823a72e451243bbf555d10d032
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   22 days
Failing since        182544  2023-08-28 20:42:13 Z   21 days   41 attempts
Testing same since   183035  2023-09-18 21:10:14 Z    0 days    1 attempts

------------------------------------------------------------
2322 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 283021 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 10:21:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 10:21:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604556.942000 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXrE-0007FB-KI; Tue, 19 Sep 2023 10:21:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604556.942000; Tue, 19 Sep 2023 10:21:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXrE-0007F4-Gt; Tue, 19 Sep 2023 10:21:28 +0000
Received: by outflank-mailman (input) for mailman id 604556;
 Tue, 19 Sep 2023 10:21:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiXrD-0007Ey-EA
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 10:21:27 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0606.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4a137268-56d6-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 12:21:26 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB6924.eurprd04.prod.outlook.com (2603:10a6:10:11e::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 10:21:23 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 10:21:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4a137268-56d6-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=I/1Fd/zPJQ4Vym9T1vDxDK7fYAPUiH6276Vw0oVDHWC1RhHl01yc+NGGYyk2HZU2Xuun22sOtT0EN2a2SJtX7WLjefB9GigC4nTEJIdvTuI+VZpZU2YCZiehfmNEdIUDbcVQp6siRQAKue2a9aqiPE1Dxn2uJmii3OewcrzoXSxVUqLEgYUQggTtLxK9lHXOoBwuF/mS3tqmsRTnxTiCzK3JJUA5CfgeEr6Xc3tFLd08YSu/d40ZPiirtjdbV/Iuok3ZeaPb2IIVeTzdcTjbY9sXric+kAhzzdkBh5RjPQ1ZPWH7Pe9twAoAyZFr1Jv/9vDhkV3p2NQ7kBoR1/taWw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=k6UXyCi2RJT+VRcnb7H3dma0yvMwWZGtk9iZyz9IYk0=;
 b=JgfK/xN8JqYozfphBKm3VsqXx8DqrGnUmZrFeRwUwaMNKXd1p6s5yHaDFCR/TeKxpfuMMp9wQTO4jRGR8sZ402FW4vz9mMRP6QWhE9wYsdC2fnTaZTF7cmkav0L9Lxi3m4lNk1+nSQMB1yuXVknu3SZBrN/78mRz0AN9UZxrTv6D206KMSaEIaSN0LqgowKMg3zj9a1uSVTDoul8XprAmvrptoRJ3hlH6qMaj31TBOARBzHTvFmosVk54QF1vJsp7+RwYXVr7vBmIYvflkKGoYK30BqwvLHPGStkDhriO7zWjunkPlDt4WTWZ+NlineAM7xzXV3OvcLSwlsV+75LxA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=k6UXyCi2RJT+VRcnb7H3dma0yvMwWZGtk9iZyz9IYk0=;
 b=26A9P3kovB3Cdjh/U/8TtUir7y21y6fvYw0/xfP0H4q/0vzF8IRvpcTQBlDfATDWYlXcSVRAIajlkGQDtWxeK7rz8Ufx1XpVW14EZ6GjRBzFbJQJJPnZxnH7yEBBh6tcTSGVxKHrUwlHFIEEB5oaTVVuJPvMY9XnakG7+q9lYHQ52xbKaKxSHze7Z4PyR3bRX/vWi2T1Qf9MABfgE3dejEBY8BUwzhw2XoLyMLUKzaIjYmJlktAfyi1JjyVAk6D1SYX60Hi7drIx1moPOqDQAlqURd4tY9X9sWr74LNKBmQUpE5FxLv7roLD+ARb1id4N7FKUfKFFGYy5e/iTTKjDg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9aa0fad3-4132-8444-fb3f-8e1d542652e6@suse.com>
Date: Tue, 19 Sep 2023 12:21:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: xen | Failed pipeline for staging | ea36ac0d
Content-Language: en-US
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <65096f918e2e5_29a56047619e@gitlab-sidekiq-catchall-v2-84c6ffbc68-bt8nn.mail>
Cc: Shawn Anastasio <sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <65096f918e2e5_29a56047619e@gitlab-sidekiq-catchall-v2-84c6ffbc68-bt8nn.mail>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0013.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1d::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB8PR04MB6924:EE_
X-MS-Office365-Filtering-Correlation-Id: 96c88db6-ed66-444b-923d-08dbb8fa2c70
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	De2VejzcbILuzF7cZBpr466DYb5x+kOjK/3ZlX8Fop60Rrdn3QMsGBBW9vgxBtcwElYViBhCOinSre12ZnZ7+2eS+bG+bfHPBiPgLJk3AZhSoXaB0vGxjSN/qLqRx6Hx2zYlqjkGMhDSrnBl0GRYTIp6J2Z2sb8ZSu9fGMuSB7DlRxV9DP//4lxXhe4CnAXcAY763clQq7B6N7eEsIyOPXOHUuUftgmYwTIxRHQThvr7OJIZh1fmwdqbicsAooM8DA7LNDzXnd5pW2nbA3LZ6zWAfFrUugeZQ+hKPsqyfZEFS2i6K6zucYTCH6mlF7317XJax/eyD2ieuyHv44s9VebpWHVf+f87JZLrV96CFHVbCeKZ4voThh7HViTQhjxxWOj09CyU/0u0GObdNaTI8+fB2iXXMjT8a+sHegC9V1RFHIWfMjrEMLPJbHP0KSC8EqHef2zPoBmBaFRawCdxCSvoPtkJdiKnyNvbNuz97zTgNWIXl6e6GhkLfTmzYkq3A01MlR/ghoAbyaURL8muV+oIjqnWvm0jAvC6d/aT1WLf8hzEgu59dSQrzZpApcvnlk3HIVknXx50wPPMKSWYbBch1GanppO1msvsBSgN45PGnE5zrKLkepwtB2lvPHLu
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(366004)(136003)(39860400002)(396003)(451199024)(1800799009)(186009)(6916009)(316002)(66556008)(66476007)(66946007)(478600001)(38100700002)(2906002)(31696002)(966005)(86362001)(8936002)(41300700001)(8676002)(4326008)(5660300002)(83380400001)(2616005)(53546011)(6486002)(6506007)(6512007)(26005)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?di9JamQyUU5EakY0dTJmNEVUaXhlUDl5REJrYjZmV0ZVTzVsVnZUeSsvR1VX?=
 =?utf-8?B?cU83eGFYUUkvY3FaMjBuTjY4V3g0UDExWlNBcERHSTB3N0VXNW5zTTVJMUUv?=
 =?utf-8?B?aWNpYjY2NFQ1WW13ZXVHTm5pSXlVNUE4V2hSUnplSUdqb2dRL0ZnK3NUS3Fn?=
 =?utf-8?B?M2g4Z3piZ2hxdDBWWmFTRjV1UVk0NDlzMXk1VWM5T3UyZElDMlNUYU9DMGZv?=
 =?utf-8?B?K2NpdG5DSUhPVnZBWG5rd01UL0w5c3ZYQzJOb29rVEI5aHp6Y3g3R0tJQUFI?=
 =?utf-8?B?SGx6VWNKdDUyRElhWWlnajJ6SmJ0c0xXZ1phUHByYnNObldRald2Qk1rLzhq?=
 =?utf-8?B?SHIvTHByOGM3WVJ6TmhNZmE3VE00STBkYUVZYVhEMFp3L2JtSEZjd0xTUHVz?=
 =?utf-8?B?c0Npa0VPdWh1TGgrNXlNMG80ZFFzdEVkM01TUnRPd0t1cmVTUXYrR0U5NU54?=
 =?utf-8?B?OS9QOGFQMjY1NXJzUUloZCtXei9JbUwybC9UbTltNnBBQkFpQ1ZZRVV0N1dM?=
 =?utf-8?B?ZGg5YmVqTzhVMWFlK1doMDNOb2tWLytUVWxQUWhHc0JERUkvK2JtaUdyU25l?=
 =?utf-8?B?dCtEVjFUalBGbmFUL01yUm8vUlpFT0dKMVd5aE1FenEwaGdkM3V1T0lFL3Jw?=
 =?utf-8?B?SzB2U2pLN1VlKzJYTEgvOU9HbXhDekRXM25qM1BlRU4xUmRJazFzY3EzcVhV?=
 =?utf-8?B?RjcwaXdBcnNBTWlMSUwwaitLQTdUak9pd0t5VTJjc1BWZ2tIbW9DeGFJby93?=
 =?utf-8?B?UmE2TUQyRGFoZ0ZBL2QxbmtNM0FWQUV2ZXh5M0JIN1RETW9ncHd1eGZ4NHBV?=
 =?utf-8?B?VjNnMVBNSVVhLysvdVd6MzBmclZEbURMRDI2TXh1YmprK1IyeEU5dXliS2pF?=
 =?utf-8?B?WE93ZC9wU2VsaU10Y0owem9UVERwYmJLVjJhZUlxZUFWaEVmSWpNZmpZVVhi?=
 =?utf-8?B?bVhEY0NXcFg4NzFpMksza3VETE55VlgvcXZFMCtzZ2JYeHhOMUF4cHBRc3JV?=
 =?utf-8?B?b29BWVpUK2xlTFU1SFQ3OTEwREVOUURmVFFrU2JnYjY5M3FHN0sycHZHU3h3?=
 =?utf-8?B?UTNheVlYdnQwK2xCQ0E5V0NiaDN4OXZRS2JoQ01jMDRFZVdFTDdqTnNPMWhx?=
 =?utf-8?B?cE5UL3REMXdXU01rWjY1YlNObEkwZ21YTkNiSUpKTFZJb1Q0bmFqWW9GV0ky?=
 =?utf-8?B?Qytwa0tUZUR0dDNZQmlqclNPZVZ4MW1wSUFNMXdHMDFRUCtwRWFKcGV2K0lP?=
 =?utf-8?B?NFZYaEgyNzBDb1d3THRtTTNySUNaUlZQZFNUZTRGeEI1TE1FbnlkcFlPTXZs?=
 =?utf-8?B?VVNqdGVGa01vOE5kT3R0RnU5dG8xbXFRNjZkb0NSNlhmYms1cng3MlNLaTJj?=
 =?utf-8?B?T04waHdpQldOUWxNM1d2SnpYZjZFaXJXZUU4Um1Xbm4xZkxTdjEyWXRITVo1?=
 =?utf-8?B?eUxjTzBqV3dWQ3I4OVZPdUhTaWQ1S0xzVEJ2Vysrb0VuenltdnJGeWdNc1Ft?=
 =?utf-8?B?bHFnU3lOeDJWVE05M3pyTGgrcitBY1AzU0tacVo0MVVSNjNmQ3dOckZTL250?=
 =?utf-8?B?bzlrMEFSb0xESUNMdnlYYkxkVEVsaXZoU25NMm9sNHo5YXM2Z2h0NG02WElN?=
 =?utf-8?B?TkRkU2tIeVpxRW9wU2E3cnFJc0x5ekxJQWg1M0wwUlNTV2xoVEdSQy85SmE4?=
 =?utf-8?B?Z2U2NVZ3bld0eEZjTUQ4NmRmY2czeWFqM3Q3eUVTR3RsbWJBWG5aczF0MDJL?=
 =?utf-8?B?TDBiTS83VmpvZU40VWxnbkZDMDRsOUg0dWsxNlFpVXVJbFVmcFJGVlBadzI5?=
 =?utf-8?B?Mm1yUjFEZlc5S01LL1Nhdjd5OEoxVHBmNy9udVRYdHd6L0szMU02Yy9kdVlI?=
 =?utf-8?B?ZG5SbnlKV3dBN2gvR2hzZDhXMW9USlBCc2J1SkUyangwVzBpRzVGNlhSM0hi?=
 =?utf-8?B?Wko2cmx2WUtzQm5nSW15MkpEWW91VHU3Q0xwQytoenZSMXVqUXlyKzhRc1Z3?=
 =?utf-8?B?ZE45aVZaaGZncVlVNlFTVVFpN1h2aGJYUGgwb09PN3JwdnJCOFJGK3NtSXRx?=
 =?utf-8?B?SmRobkdvQitTV1Q0N1hENG9hRUlCbmhLOTl2N29vQWI3eEZYb0pST3lqQVpm?=
 =?utf-8?Q?/lQQe30HcrL87gizdZRBSGFYh?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 96c88db6-ed66-444b-923d-08dbb8fa2c70
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 10:21:23.0986
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: K80H17aYpQNfhG3yU0uAyzigB9n3Cz8jnk451fUzfOhDGfCHnRqBMKrHD1NBDAoetDc6bNYu+xB2advj5aSMyg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB6924

On 19.09.2023 11:53, GitLab wrote:
> 
> 
> Pipeline #1009404353 has failed!
> 
> Project: xen ( https://gitlab.com/xen-project/xen )
> Branch: staging ( https://gitlab.com/xen-project/xen/-/commits/staging )
> 
> Commit: ea36ac0d ( https://gitlab.com/xen-project/xen/-/commit/ea36ac0de27c2a7c847a2a52c3e0f97a45864d81 )
> Commit Message: xen/ppc: Enable full Xen build
> 
> Bring ppc's Mak...
> Commit Author: Shawn Anastasio
> Committed by: Jan Beulich ( https://gitlab.com/jbeulich )
> 
> 
> Pipeline #1009404353 ( https://gitlab.com/xen-project/xen/-/pipelines/1009404353 ) triggered by Ganis ( https://gitlab.com/ganis )
> had 5 failed jobs.
> 
> Job #5118269375 ( https://gitlab.com/xen-project/xen/-/jobs/5118269375/raw )
> 
> Stage: build
> Name: debian-bullseye-gcc-ppc64le-debug-randconfig

This and ...

> Job #5118269256 ( https://gitlab.com/xen-project/xen/-/jobs/5118269256/raw )
> 
> Stage: analyze
> Name: eclair-x86_64
> Job #5118269373 ( https://gitlab.com/xen-project/xen/-/jobs/5118269373/raw )
> 
> Stage: build
> Name: debian-bullseye-gcc-ppc64le-randconfig

... this imo can't be expected to work. Is it really useful to run randconfig
tests on ports which are only in the process of being brought up?

> Job #5118269370 ( https://gitlab.com/xen-project/xen/-/jobs/5118269370/raw )
> 
> Stage: build
> Name: debian-bullseye-gcc-ppc64le-debug
> Job #5118269369 ( https://gitlab.com/xen-project/xen/-/jobs/5118269369/raw )
> 
> Stage: build
> Name: debian-bullseye-gcc-ppc64le

These two, otoh, look to be a result of the tests pre-seeding xen/.config with
CONFIG_DEBUG settings, followed by making the olddefconfig goal. That, aiui,
isn't picking up xen/arch/*/configs/*_defconfig, which at this point is
mandatory for PPC (and likely is going to be so also for RISC-V once the full
build is enabled there), at least as far as some of the option disables there
go.

I think this wants switching to making the defconfig goal, and substituting
CONFIG_DEBUG in the resulting .config. Due to x86'es and Arm's defconfig-s
all being empty, this ought to be no change in what exactly is being tested
there.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 10:28:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 10:28:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604563.942009 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXyL-0000VS-GZ; Tue, 19 Sep 2023 10:28:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604563.942009; Tue, 19 Sep 2023 10:28:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXyL-0000VL-DQ; Tue, 19 Sep 2023 10:28:49 +0000
Received: by outflank-mailman (input) for mailman id 604563;
 Tue, 19 Sep 2023 10:28:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7tQr=FD=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qiXyK-0000VF-6e
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 10:28:48 +0000
Received: from NAM02-BN1-obe.outbound.protection.outlook.com
 (mail-bn1nam02on20626.outbound.protection.outlook.com
 [2a01:111:f400:7eb2::626])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4f5058d7-56d7-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 12:28:45 +0200 (CEST)
Received: from DM6PR13CA0060.namprd13.prod.outlook.com (2603:10b6:5:134::37)
 by IA0PR12MB8280.namprd12.prod.outlook.com (2603:10b6:208:3df::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.20; Tue, 19 Sep
 2023 10:28:40 +0000
Received: from DS3PEPF000099E0.namprd04.prod.outlook.com
 (2603:10b6:5:134:cafe::65) by DM6PR13CA0060.outlook.office365.com
 (2603:10b6:5:134::37) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28 via Frontend
 Transport; Tue, 19 Sep 2023 10:28:40 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS3PEPF000099E0.mail.protection.outlook.com (10.167.17.203) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Tue, 19 Sep 2023 10:28:40 +0000
Received: from [10.0.2.15] (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 19 Sep
 2023 05:28:33 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4f5058d7-56d7-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GdB9w//K7Bw3QQjxbomV+zw+VDSsVTzE/qGcCQB6kxiQToUhXMxWTMnK5NiFFRP1T3fUaTISbOaCwP5p07nmZ7UBNWSJoSYEgpc1i1z8TCdlpkmVDgOtVxM7ui8Ocj7sJC98kPP88xbd5XuX4ScHu6NgJB9C/ECTt/mH8LfiHtUloFyk/JB6k+KfySV8bBxoZC4o7ENHH9BNj+4e5dJw08XqvbncHx9IFE1jDQ24a6BwdIFzGRdS7fKQ/cyGzopViCvqrkC0Nh/aVYKqq2p36pTwc+gZu8HnOng9qShd4cP85Sxk9RHH2VaTrrYzmHNTyNlEUWoihyoJFseojSI8dg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=S9uf1xrb9kzJVicQ/7BW/Jp6m5fiVAxzzaxgZLSncVI=;
 b=HAkihXKJKH3wustd8d9BIDe7bE3iScpwiteAmwgBex4EbAQ4OHkO9FTTQXxqRmq5bloUUl8ibCQ9aw1DK8WNJ75jJYP3uED8nctOXei4hni5jCvmDOoaKn9/nR2J2kOuP30VFeto2xqC2WucQL27G6bu6bq1M1ezNpwiMksMVrpE/ZJA0C/Gb7lVMCD2z8dGcm4uQePm6RVaXv19uyjHnATH1r99sLH8HzVJRhdatWcYYGnYiPuEsMAvg7jxxa8oNbD0Yc9FI2miw6RV9oTsrpA/V3cfCtFZJTAWrktafK5ZNJole7ZN49kSfK8D4Q8+OMLoP6co3aHLy4NHspfSPA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=daynix.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=S9uf1xrb9kzJVicQ/7BW/Jp6m5fiVAxzzaxgZLSncVI=;
 b=dxqDD0IMNfV5mQ8grgwlCY1uHA+bp1ZhU9j68zFSXZwAxhfZd/sxwk4M9aCfQIkVmGjb/dexZ9wW2P53flynwnJKnYRMPypGEwEHBndORaSKiqtfXy98RDu5VNcm4MoZywRO8heSzhG2v/Cb+diGjMklN3OM6OIJF5K+H1rWRa8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <c0370b6e-c17e-2400-ef8a-7a759d2fc2d7@amd.com>
Date: Tue, 19 Sep 2023 13:28:24 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [QEMU PATCH v5 07/13] softmmu/memory: enable automatic
 deallocation of memory regions
Content-Language: en-US
To: Akihiko Odaki <akihiko.odaki@daynix.com>, Huang Rui <ray.huang@amd.com>,
	Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Anthony PERARD
	<anthony.perard@citrix.com>, Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett
	<bob.beckett@collabora.com>, Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	=?UTF-8?Q?Alex_Benn=c3=a9e?= <alex.bennee@linaro.org>,
	<qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?Q?Christian_K=c3=b6nig?=
	<christian.koenig@amd.com>, Pierre-Eric Pelloux-Prayer
	<pierre-eric.pelloux-prayer@amd.com>, Honglei Huang <honglei1.huang@amd.com>,
	Julia Zhang <julia.zhang@amd.com>, Chen Jiqian <Jiqian.Chen@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-8-ray.huang@amd.com>
 <99fb4575-9f8d-4ab6-bc22-911bbaa7ca55@daynix.com>
From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
In-Reply-To: <99fb4575-9f8d-4ab6-bc22-911bbaa7ca55@daynix.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 8bit
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099E0:EE_|IA0PR12MB8280:EE_
X-MS-Office365-Filtering-Correlation-Id: 97093709-8413-4283-e0e6-08dbb8fb3148
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	NpBwepw1UrZo3jXYTCr/GFwsKvTOLXh556CrFSJrIyu+LT5BZajL2c99a9s0bQ/yhlCSuYu3TjgE4JylMAxq/EhjLNvGEUt76b1MBGR100vSSmMfqIw6eDP47cvzBFnFoo6Jd9LE4oCjyUgaguHjWxEO8EGVjsJnMgThUrqIvLAK4RkMwh+9vQDTydN0jJquIUWy0U4L1uhZxtjYB4Nv8Dbb2ztct9oG0jvuq8TxhN8y06FaporBcCpckaMhdFZ/y/MbnqQXV5r2JABf8huUa3LZ9BczwS0fYZzEghRf/3I5u6YJhdiD/Y/5dhwLcqpSLe2gwY/nZShLihLBFvQBCeQAbHD/Ek42pXRoHZBXuZcBsiFoPbQxtLXDkuLwE0l9BUhMkVvxvgVttTf05U8VhfhO5asWjQGGlHEai3VUZvQeVoPv7YX5uJ3/b+V+fHZGCY+z5J9dAO97/PZIvmKbRiDY9UpHTIZjrjLU2o95+Y1j2JftTcLXTlLcAV8C5VhaaLhWDr8+/fOG0FBSaNsWlFkUiyoyrxbp1vxbVjPcEn/KuEeqGcYaiODcl/CA/DK82nzTvZgBn8paK/hkT0j8803iriIYcfGsSTpeZhQRwLh62g9irHMVgsAB+MtwoArgN7q6pRcz4Kk6bluTnoLF54vPZliksBwgNHCO0Fgv3CtDbYAfV2+b8CUuUZHKpKQ8S0uHFmWSKTEAqYAZIaybph7Dw6qM+bvIQwoX0TbCdbEuNhEJuFpqRZ656rm3gLWRqjs1m05WOFhY7Zuv7sSewTg4u0IS52b+aJv8jwmpkpfGTyjUm4AcboZpJkUcnSuHT9dN6MuhZAl49jJuwTszQw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(396003)(376002)(346002)(136003)(451199024)(82310400011)(1800799009)(186009)(40470700004)(46966006)(36840700001)(70206006)(70586007)(54906003)(53546011)(110136005)(40480700001)(16576012)(316002)(41300700001)(31686004)(478600001)(44832011)(6666004)(66899024)(8936002)(4326008)(8676002)(40460700003)(82740400003)(26005)(5660300002)(16526019)(47076005)(36860700001)(356005)(81166007)(921005)(336012)(83380400001)(426003)(2906002)(2616005)(86362001)(31696002)(7416002)(36756003)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 10:28:40.5437
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 97093709-8413-4283-e0e6-08dbb8fb3148
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS3PEPF000099E0.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8280


On 15/9/23 18:11, Akihiko Odaki wrote:
> On 2023/09/15 20:11, Huang Rui wrote:
>> From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>
>> When the memory region has a different life-cycle from that of her 
>> parent,
>> could be automatically released, once has been unparent and once all 
>> of her
>> references have gone away, via the object's free callback.
>>
>> However, currently, references to the memory region are held by its 
>> owner
>> without first incrementing the memory region object's reference count.
>> As a result, the automatic deallocation of the object, not taking into
>> account those references, results in use-after-free memory corruption.
>>
>> This patch increases the reference count of an owned memory region 
>> object
>> on each memory_region_ref() and decreases it on each 
>> memory_region_unref().
>>
>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>> ---
>>
>> V4 -> V5:
>>      - ref/unref only owned memory regions (Akihiko)
>>
>>   softmmu/memory.c | 5 +++++
>>   1 file changed, 5 insertions(+)
>>
>> diff --git a/softmmu/memory.c b/softmmu/memory.c
>> index 7d9494ce70..15e1699750 100644
>> --- a/softmmu/memory.c
>> +++ b/softmmu/memory.c
>> @@ -1800,6 +1800,9 @@ void memory_region_ref(MemoryRegion *mr)
>>       /* MMIO callbacks most likely will access data that belongs
>>        * to the owner, hence the need to ref/unref the owner whenever
>>        * the memory region is in use.
>> +     * Likewise, the owner keeps references to the memory region,
>> +     * hence the need to ref/unref the memory region object to prevent
>> +     * its automatic deallocation while still referenced by its owner.
>
> This comment does not make sense. Traditionally no such automatic 
> deallocation happens so the owner has been always required to free the 
> memory region when it gets finalized.
>
> "[QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands" 
> introduces a different kind of memory region, which can be freed 
> anytime before the device gets finalized. Even in this case, the owner 
> removes the reference to the memory owner by doing res->region = NULL;

Hi Akihiko,

You are right, the word "owner" is not correct. The issue observed was 
due to the references kept in flatview ranges and the fact that 
flatview_destroy() is asynchronous and was called after memory region's 
destruction.

If I replace the word "owner" with "memory subsystem" in the commit 
message and drop the comment, would that be ok with you? or do want to 
suggest something else?

Xenia

>
>
> Regards,
> Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 10:29:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 10:29:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604568.942020 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXzL-0001DF-QP; Tue, 19 Sep 2023 10:29:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604568.942020; Tue, 19 Sep 2023 10:29:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiXzL-0001D8-NA; Tue, 19 Sep 2023 10:29:51 +0000
Received: by outflank-mailman (input) for mailman id 604568;
 Tue, 19 Sep 2023 10:29:50 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ezs9=FD=citrix.com=prvs=619432e5c=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qiXzJ-0001Cg-U2
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 10:29:50 +0000
Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com
 [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 738c3aa8-56d7-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 12:29:47 +0200 (CEST)
Received: from mail-dm6nam11lp2169.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.169])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 19 Sep 2023 06:29:44 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ2PR03MB7380.namprd03.prod.outlook.com (2603:10b6:a03:567::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.30; Tue, 19 Sep
 2023 10:29:38 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 10:29:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 738c3aa8-56d7-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695119387;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=lxneTlTtDC2nBH0rCoXvwJi5HrU1MDdSg+R4NQ6E2aM=;
  b=OGC7uitDEbmD/axavfywhdZv+hVW0pHMpUunbr73GsfFdOalV4iooiuP
   1TiDWPun/ugMJcwUjcs803pJTxhwvy1wNYwe/hz+J/BG4GsiqDYVBJIGd
   b1N78hl7r86i9kaA0wNf7tSihMwtvaHLeAM+JbHZcr/7IVulzR31BRd2M
   4=;
X-CSE-ConnectionGUID: uw9gq3hISG2z4K5Bx/eWOA==
X-CSE-MsgGUID: kP+dmVRTQ3aJEFgR5JeYYQ==
X-IronPort-RemoteIP: 104.47.57.169
X-IronPort-MID: 122937800
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:66dtSq3hGCcyaMPRSPbD5fVwkn2cJEfYwER7XKvMYLTBsI5bp2MPy
 GBMXG+OP/3bNmSjLdkkPN/l9U1U7JPRn9YySVNkpC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb8nuDgNyo4GlD5g1nNKgR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfHH4f+
 uVDKBE2QUqR28Hr6qL8R9ZLr5F2RCXrFNt3VnBI6xj8VK9jbbWdBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxqvC6Kkl0ZPLvFabI5fvSQQspYhACAr
 3/u9GXlGBAKcteYzFJp91r13LWexnyrANp6+LuQ9cYpjFit/FAqUxQ0eHW0m6Sbh3+PYocKQ
 6AT0m90xUQoz2SpRNTgWxyzoFafowURHdFXFoUS9wWl2qfSpQGDCQAsXjNHLdArqsIybTgrz
 UOS2cPkAyR1t7+YQm7b8a2bxQ5eIgAQJG4GICMBEw0M5oC6pJlp10yeCNF+DKSyk9v5Xynqx
 CyHpzQ/gLNVitMX06K8/hbMhDfESoX1czPZLz7/BgqNhj6Vrqb8D2B0wTA3Ncp9Ebs=
IronPort-HdrOrdr: A9a23:53F2hK8UrbtFgRExoRZuk+AcI+orL9Y04lQ7vn2ZKSY5TiX4rb
 HKoB1/73XJYVkqN03I9ervBEDiewK/yXcW2+ks1N6ZNWGLhILBFupfBODZsl7d8kPFl9K01c
 1bAtJD4N+bNykGsS4tijPIb+rJw7O8gd+Vbf+19QYIcenzAZsQlzuQDGygYypLbTgDP7UVPr
 yG6PFKojKxEE5nFfhSVhE+Lo7+T8SgruOeXSI7
X-Talos-CUID: 9a23:OjBzfGOMlbdri+5DRTY2+1dPGuEeXSfPkFSNCV//BFlOYejA
X-Talos-MUID: =?us-ascii?q?9a23=3A8Qy1aw+iPFVM2IPSXCt+3i6Qf8RQoKirNnoxqM4?=
 =?us-ascii?q?PmeSqOhYtGTqsvQ3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,159,1688443200"; 
   d="scan'208";a="122937800"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AgGCjcZ32GfDcgiO2AQkaD3ElR/Xtvl6/846H4w8Dm/QgelV6tRAisWUlWH4s1Qav+bupzi3Y91KAmUYI2rz0/TawYk9AHFVxhECdWVadKMLBJlawmoaK3MHiCC1GBN9yUMWJl3IOa3upiSsv79ys+qgvxOXJgK5C33tsBE1Lqx+ZLsatFLwPYe1ser8Ae5vhf4KaSEWl8kDwDtpoGuhsXQTSEwhotATKMJJ/cWEnee2xycFp1a3/UEn0Vb8BQvAL5I7BcbZk1lRasMshzfh2CovkT/Ack3XbRrjK7cVd5pprb+O8C1/1RWoRtbAjFxhSCdLzda7Ha/eN3sfuXFqYQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MZtA3MxKhjLEND6BPIhUZ0t7Ora7aXByzy6UnHBCCL4=;
 b=KY9nEZV0yF5Bto6eQ3teycNjHe+lb4G39k9xqLIiCjZx9BnIzesO8B5yT5rC9SvGRXPu2vgfSg7e0yzDAWpRa4N6t8Vh6irjxGILnNV5EE9UZWhiyKNRLUmmYKTbK0wU/hHgB375qDERSfSuhpjl3nzLp4xQ7UOSEb0oT+wjVf40YS6oVj9Vpikk+XMSKfa7mxF6K8FqQKc3eC3uyICeWuHXw8L7lDtP7rB2n8JqsUaU6p03VBW87q/uD9KjQjN7K/ZfkFve97U20okyK4NTOr4QHHNcWP+6+ybtegoMcchzF5dpNckpkqlECd5lDHFRF6oonK1cpkGywYh9C1aLlQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MZtA3MxKhjLEND6BPIhUZ0t7Ora7aXByzy6UnHBCCL4=;
 b=NQ4E9B+Y2bZEb64beiojhg7qAPKPwtzNLAQRhb9LIADzREg3ZsRq9NwZ5mMasTK2oXze9fXuru9ybyBXQ7YvP3koQr80t1XvNzSIo9RQBY0xWrykyJje/KjXkvD+My0DOcevEkRypt/M4SqShQH1896TJd95G340wNfkgd7AnHw=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 19 Sep 2023 12:29:32 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2] x86/shutdown: change default reboot method preference
Message-ID: <ZQl4DKfDuDIyK8Fi@MacBookPdeRoger>
References: <20230915074347.94712-1-roger.pau@citrix.com>
 <e22af903-cbdf-dfed-8f69-44e5ea05ef8b@suse.com>
 <ZQhoHZvk7tXfGI2g@MacBookPdeRoger>
 <b92b994c-a9cd-10c3-033b-3c1aa752fa8e@suse.com>
 <ZQh0KXX2yLewO3uV@MacBookPdeRoger>
 <2d1e6916-b501-e133-1463-fc55e3eaf2c6@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <2d1e6916-b501-e133-1463-fc55e3eaf2c6@suse.com>
X-ClientProxiedBy: LO4P302CA0032.GBRP302.PROD.OUTLOOK.COM
 (2603:10a6:600:317::13) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ2PR03MB7380:EE_
X-MS-Office365-Filtering-Correlation-Id: 1668ebc9-e00a-48e8-d035-08dbb8fb536b
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	LV1Acn6mTkOuMIW5i7dGXAtn+P3Uw+zhfbEqLbO32fwJBIyY5JZ7CL0J9LNtY1ljeQCOsRK4EgotaIZoi4eIpvSaoHGHAVyOgctFNHf/A94NwWUJ63mMVa1QqFKAcdCWzXgaBsYMSWkXCKFiBLzK3LQERm6ttsLu9SAJjThZzVuWEH0uD7oS+Zli9wWDRMwjoZzJ6+Ae8gEjBsZRfbDrcTyfZVaTe5gIISczQdORJ/8KU5fmtFCXMHII8AIopvFht0TqPwj43NK0KRj2dyxNFigQDUADCbgtWSSdlX+R76PrCzx/SqcRHmVTOcB1bcJtaFScZ5vN7dnTZRGaU69T+9x0x6gLX3eedYSWCGihiVqWCrwxJ/KZBrJEoFh0NlrmXrWNnyTNSQXcqe5zM3ZeidJOwHhbWBVE3qGuZPkPGokEiyi4Jd25aX7ORObZ/yZAMvUClB8oIIaVIis3pMZQgQvTevPzd60ar0TVUXlHBq0DFwv5pYLEySmkLU5Y5hVp3c9Jb1ozHr0xbkkgkSR3nOLlMhfpJXLiVC2gGgyI0dXqLx6FtPex66eiNl8gepXW
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(366004)(376002)(346002)(396003)(39860400002)(136003)(451199024)(186009)(1800799009)(6512007)(9686003)(54906003)(66476007)(66946007)(66556008)(316002)(6916009)(6506007)(6486002)(41300700001)(6666004)(8936002)(33716001)(4326008)(8676002)(5660300002)(53546011)(86362001)(478600001)(26005)(83380400001)(85182001)(82960400001)(38100700002)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NSttM0xWb3ZCR0ZJdGd1SnNNOFJrejZraWJ6SStmRDVzSEFrbFFJNXhCdEFM?=
 =?utf-8?B?UTZ1MXBacWpwaXJBenZxWmEyQnBlRE1kSHd2Wit6ekRCamsyYUl5YldYZzFo?=
 =?utf-8?B?WnRxY3NGZVhJQXdIQ2lRcDRFek4xTXNHLzEydkt3S0tPNUp2WUdYbWthK2pW?=
 =?utf-8?B?UVV6M3JUdTB1ZlQrcWFhbC9EaVhJTmw2NXhwZDJOQTRIRmgvYktGYkJrM3B6?=
 =?utf-8?B?YmtubnlBbVFleXRHQWphUk1HSEtNYnNvTWNUUUZMWGJtOEpLcHVOaU1DWkt4?=
 =?utf-8?B?WHIwWXV3UmhScU53U1NLSnBETkRhN2FaMEhBMHNuajA0bURoekJ3SjVvM0ZC?=
 =?utf-8?B?eDVlQXlwYlBORzc0cnNpaGQrOEtwVkpJcDlzVkptM1lZUEVPdXNZcktWdWdQ?=
 =?utf-8?B?M2p1Q2FDdjNId080ajlUMHErYzhvNzV0cTUwRDRmWjNiYlFYSUN5Nm1YT1FS?=
 =?utf-8?B?UEplTzJQaVdhcU5qVmZlOWQ4YnRUOVFBazdXVmNWTVZ2LzNVLzNoZmFud3pN?=
 =?utf-8?B?VEZCZlgwTmpBcmhSaTNyWjh6VXhtald3RUJVUEF4VmxFNWhNMndDaDVxWFFt?=
 =?utf-8?B?bjlsbmxSVGZGcFZhMUtZd0M1WW1sZzdRcHo4ZXZncDRoZjI2cjBjTVNXdkFQ?=
 =?utf-8?B?bWk1d0xZMzVlUlFvbEtFbS9RWUh3YWNqNStDc1Rpa0gwZ3JobktDVXB3ZXR5?=
 =?utf-8?B?SUV4aERIMTlBNmh5TlJjVDhHQ1RxM1V0NVU0UnZjWndiLzVWUUZFOGZKeHMz?=
 =?utf-8?B?a2FzMGMwcmJxU3diUnVOcDVjR2dXc2pyaXNYQys5M01idEZGK3N1QmdlTEFH?=
 =?utf-8?B?L2lHOVVYSWgrRTczbEx3blhZUDNuK3AvWTd4VzNBa3MrZGh0Q3Z1RDkrajNa?=
 =?utf-8?B?OFIveCtqK2d5dG90RkVjWHR0ejFJRHZ1MU5BT0VEMUZ1TFRyZUI1SVRvN0NB?=
 =?utf-8?B?NGxWRDhqcGdPOUpPdzFxU09VaWhYK3dSOXc4UHkzZUdwVU1Dcjhmd2RydHVQ?=
 =?utf-8?B?cHVnVVB4QUN0anRYSFZjQWNqRDYzUy9NNVozZ0xoV2Q5eUpkL2N0V0tUL21G?=
 =?utf-8?B?MVdTN2JnL2VGakRyT21mUEpZRHAyYjJhaEZnZXFsbnFxMXJtdi9ObTVjT2NH?=
 =?utf-8?B?TVdsZ2pqWUI1STJ6UjU2eGJlWkQ0Y0VDdFREVEhSQzZpeVhNaXBlRDJxaGFB?=
 =?utf-8?B?cU9QUTNMaTY5RjJweUZJOTFYckdLYldPQTdzWGdyQlY1eVgxYXZPbWNjd01E?=
 =?utf-8?B?eWlkUHNOU3c2YVNVdW5lQmFUT1QxQVVuNjRqUFgwSVB5THJ2RkdJZVdlcUxk?=
 =?utf-8?B?eXZsVTJIWCtwQ3U5dHMxK3E5d2laS2NHV0RjK0tFMWh2LytxMU9FN2NyT3Vs?=
 =?utf-8?B?cFJUM3FVNWNTeGEvb2JuMFFaZEQ2ZnYyTkYrN1VWUkpibmZCZjhYMDY2ODdJ?=
 =?utf-8?B?dGoveEdXcFdlMDhyajhmR3hEanViOWVqeXpCY1Q3WFQ3ejlHQ0tvQWQ3bGk0?=
 =?utf-8?B?V04wUVJzMmxmSm5INWNFcmFZZTAxOWhHcC80RzlxajV5NmRnb3czUVhvTUNL?=
 =?utf-8?B?a3dFa25XVnhGa0lKK1E4TW5RUnpBWUwxNFcwUElPT3lkSVQ1MUttTnNHWUhU?=
 =?utf-8?B?OHV0WlphaGU4d0FlN3JZOU8vZ0ZpMlVSRHh6MHF3bEtVb0pVeFdyOWs4YkxP?=
 =?utf-8?B?WjEzMHV6aDlOTld6emVYV2NlTnhWV28rcEJrdUJPbm9VNXlwSVg2eWxqangv?=
 =?utf-8?B?cUt4YTdEZHBNZFZmQlBONGw0UmdvVzBRa2RmUUVLaHVsWDNHazlNZGM5MXpI?=
 =?utf-8?B?V3Zic0x3Y2lKY2s4SndhOUdTMlZTVnhiR3k5MTQ2SnZ1TG1XS3YwcFVOTFlK?=
 =?utf-8?B?OTFuTW54aDRaTm14bXkxSFpQb2RyVGxXazJkWmd1Yy9yY0xwdFpYSlFXdXNh?=
 =?utf-8?B?emxXblNBRHdxeVZBdjhxTTRVL2Y3QzQvR0l0NnZxamc4TnNWNk9RK0lMN0dB?=
 =?utf-8?B?OGdEeG1RenhVcVlmWXBPZ3BzRWowOWJKcWdhb3h0cndiQ0V0WHpmVlpmQmtk?=
 =?utf-8?B?K2g3bWpSTXhLN1VBUlJsendCVlZ6SXgrQkVETFVweDJtbklVNERJdmpmeGk5?=
 =?utf-8?Q?Ln0/YVSi9fCTCFvc5sDgDKzr+?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	p6JgvlSl+2890W12w+qiPVj4Rr474G0fFxS+Xm8VjDTwq/DE7RChsn3Efsn5VLc3iY/MYYoAG+7TjWhlae4EWW5kXRLZUlGl/n11pwwHhP6x8VkM+LVQC9Yj+iHg7q2e6WIHj+N1EHMrBU9YzwTn0wCgBHY0/WvfFZnT3Oo58Av+it5pZAXg2JdWQJjm3Iz+n2W8lFlcSJHipaKor97/3Sv6sd0gKLwUhL0eUgAMQDMHxogjqnJ04Q59HpqnjUCZdFazL/SpW6fwtXlyFYWZEuHQCoUexfQKEMXdCXiDEG4jiZsXLId1AqVLm0LyihGD0BcQwRZbh+gOFihb0jsRPLnmwo8PdOJIp20m0D8z6qfCYM1HpFRt4xHVfCInifptfZv5Fg3sgl6Dc007Wt0xG1d34raHofG6Bwm9w7vDyBHI7atWv78Ad7jAkv/k/1U15vNIxabjoKJCWpGmTGwg3HzeIkeKUVGcBBcK8LvKHOt/9y0zVC4vN6i4Fz9yFI7d1lRr0LDC1fT1FANNEmsKonkc2Ocbh/cHYoP/BV+LMX0bdpUNsIEscFINIWBfI+JXbDfN/dmyycRNjuWUP7Au83JAPv1bLXg1GWPJj+SKQly2jPY/C57zpzewjtUKFbmWL0VNevTtl1I9+WGXyQO07/bu+WwO65iD7AhS0lw0DY+cvLNjOJwN4p8SxsP7mB4/ssHSBt2Un5PjdEncLUq2K1NtfOBYj2eFHF8TJrTnGPQ3hv+94LWk1ohnuvA2S1AxeCJH8W4QaQUvcSBTRUZtDSDAMUUTNfitsUhHy+6P2LAA6aV9Wx5UIJ0qAlgCr0hooTmmIRS2zn1icQCdT3V2+w==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1668ebc9-e00a-48e8-d035-08dbb8fb536b
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 10:29:38.0789
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: D55cFkaaEOGFkBmVkSQX3ncdzA7/aCZNmZhtFHxY9JwtFXShNBQZeS4aw7/wZKBkp+NwCyAfO2TTpQ++hfIavQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR03MB7380

On Tue, Sep 19, 2023 at 11:31:07AM +0200, Jan Beulich wrote:
> On 18.09.2023 18:00, Roger Pau Monné wrote:
> > On Mon, Sep 18, 2023 at 05:44:47PM +0200, Jan Beulich wrote:
> >> On 18.09.2023 17:09, Roger Pau Monné wrote:
> >>> On Mon, Sep 18, 2023 at 02:26:51PM +0200, Jan Beulich wrote:
> >>>> On 15.09.2023 09:43, Roger Pau Monne wrote:
> >>>>> The current logic to chose the preferred reboot method is based on the mode Xen
> >>>>> has been booted into, so if the box is booted from UEFI, the preferred reboot
> >>>>> method will be to use the ResetSystem() run time service call.
> >>>>>
> >>>>> However, that method seems to be widely untested, and quite often leads to a
> >>>>> result similar to:
> >>>>>
> >>>>> Hardware Dom0 shutdown: rebooting machine
> >>>>> ----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
> >>>>> CPU:    0
> >>>>> RIP:    e008:[<0000000000000017>] 0000000000000017
> >>>>> RFLAGS: 0000000000010202   CONTEXT: hypervisor
> >>>>> [...]
> >>>>> Xen call trace:
> >>>>>    [<0000000000000017>] R 0000000000000017
> >>>>>    [<ffff83207eff7b50>] S ffff83207eff7b50
> >>>>>    [<ffff82d0403525aa>] F machine_restart+0x1da/0x261
> >>>>>    [<ffff82d04035263c>] F apic_wait_icr_idle+0/0x37
> >>>>>    [<ffff82d040233689>] F smp_call_function_interrupt+0xc7/0xcb
> >>>>>    [<ffff82d040352f05>] F call_function_interrupt+0x20/0x34
> >>>>>    [<ffff82d04033b0d5>] F do_IRQ+0x150/0x6f3
> >>>>>    [<ffff82d0402018c2>] F common_interrupt+0x132/0x140
> >>>>>    [<ffff82d040283d33>] F arch/x86/acpi/cpu_idle.c#acpi_idle_do_entry+0x113/0x129
> >>>>>    [<ffff82d04028436c>] F arch/x86/acpi/cpu_idle.c#acpi_processor_idle+0x3eb/0x5f7
> >>>>>    [<ffff82d04032a549>] F arch/x86/domain.c#idle_loop+0xec/0xee
> >>>>>
> >>>>> ****************************************
> >>>>> Panic on CPU 0:
> >>>>> FATAL TRAP: vector = 6 (invalid opcode)
> >>>>> ****************************************
> >>>>>
> >>>>> Which in most cases does lead to a reboot, however that's unreliable.
> >>>>>
> >>>>> Change the default reboot preference to prefer ACPI over UEFI if available and
> >>>>> not in reduced hardware mode.
> >>>>>
> >>>>> This is in line to what Linux does, so it's unlikely to cause issues on current
> >>>>> and future hardware, since there's a much higher chance of vendors testing
> >>>>> hardware with Linux rather than Xen.
> >>>>
> >>>> I certainly appreciate this as a goal. However, ...
> >>>>
> >>>>> Add a special case for one Acer model that does require being rebooted using
> >>>>> ResetSystem().  See Linux commit 0082517fa4bce for rationale.
> >>>>
> >>>> ... this is precisely what I'd like to avoid: Needing workarounds on spec-
> >>>> conforming systems.
> >>>
> >>> I wouldn't call that platform spec-conforming when ACPI reboot doesn't
> >>> work reliably on it either.  I haven't been able to find a wording on
> >>> the UEFI specification that mandates using ResetSystem() in order to
> >>> reset the platform.  I've only found this wording:
> >>>
> >>> "... then the UEFI OS Loader has taken control of the platform, and
> >>> EFI will not regain control of the system until the platform is reset.
> >>> One method of resetting the platform is through the EFI Runtime
> >>> Service ResetSystem()."
> >>>
> >>> And this reads to me as a mere indication that one option is to use
> >>> ResetSystem(), but that there are likely other platform specific reset
> >>> methods that are suitable to be used for OSes and still be compliant
> >>> with the UEFI spec.
> >>
> >> See my reference to ia64.
> > 
> > Right, I understand that on ia64 things might have been different, due
> > to the platform lacking any other reboot method, but I don't see how
> > this applies to x86 where there are other reboot methods.
> > 
> >> With ACPI_FADT_RESET_REGISTER not set, I don't
> >> think there would have been any other non-custom reboot method there. So
> >> while perhaps not mandated, it's still the designated abstraction layer.
> > 
> > Again the spec doesn't mention that ResetSystem() must be used, so
> > while it would make sense if it was reliable, it clearly isn't.  In
> > which case resorting to the more reliable method should always be
> > preferred, specially if the spec is so lax as to call ResetSystem()
> > "One method of resetting the platform".
> 
> That wording wasn't there in 1.02, but I can see it all the way back to
> at least 2.1. So yes, you have a point. Yet - adding onto an earlier
> remark of mine - EFI_RESET_NOTIFICATION_PROTOCOL is pretty useless if
> use of ResetSystem() was optional.

See the note in
EFI_RESET_NOTIFICATION_PROTOCOL.RegisterResetNotify():

"The list of registered reset notification functions are processed if
ResetSystem() is called before ExitBootServices(). The list of
registered reset notification functions is ignored if ResetSystem() is
called after ExitBootServices()."

Those handlers are only called before ExitBootServices(), so for our
use-case it doesn't make a difference, as we call ResetSystem() after
having exited boot services.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 10:35:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 10:35:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604575.942030 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiY4h-0002hQ-Ci; Tue, 19 Sep 2023 10:35:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604575.942030; Tue, 19 Sep 2023 10:35:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiY4h-0002hJ-9t; Tue, 19 Sep 2023 10:35:23 +0000
Received: by outflank-mailman (input) for mailman id 604575;
 Tue, 19 Sep 2023 10:35:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=+GSz=FD=citrix.com=prvs=61920ccf8=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qiY4f-0002hD-HJ
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 10:35:21 +0000
Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com
 [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3a59dfc3-56d8-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 12:35:20 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3a59dfc3-56d8-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695119720;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=zKZCH9nJHrXn1p8XYZtvRYn8I1OYqaz+OOrt3ynG/W8=;
  b=O4zxLHIMNgLIl0WcH1MoRfrNDL5AvgmVkyY9njGnIUA0euWTwom2xEY6
   FgIG3lu/uTDI2HmDxykTBnIcywQalCjGCUI+mnU1UEBNFO8c6D+dGhA0M
   zFSq/0JnClOb+2ES0K31rnqCl/fxT6N6y8QCVunSr8F6X8cF2M8nQzUwJ
   8=;
X-CSE-ConnectionGUID: CLO9MMtsSBqiBvKCKx9uZQ==
X-CSE-MsgGUID: MY3B9KXPRSuXwiQfbJiiKw==
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 122938254
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:S8N6h61tAdU/laFkEvbD5cVxkn2cJEfYwER7XKvMYLTBsI5bpz0Oy
 2YZCzvSbP2NYWT3eY9/bI3i8RwB75HcnINqSVFopC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb8nuDgNyo4GlD5g1nNKgR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfKkVpp
 Nk9NCs2RAmCrfyV65GrG/Rev5F2RCXrFNt3VnBIyDjYCbAtQIzZQrWM7thdtNsyrpkQR7CEP
 ZNfMGcxKk2aOHWjOX9OYH46tM6uimPybHtzr1WNqLBsy2PS0BZwwP7mN9+9ltmiHJ8Pzx3I/
 D+al4j/KjQrb/bO6gq9yEmxtvDOpC3xeoMTN6Lto5aGh3XMnzdOWXX6T2CTsfS/z0KzRd9bA
 0gV4TY167g/8lSxSdvwVAH+p2SL1jY+cddNF+wx6CmW17HZpQ2eAwAsUTppeNEg8sgsSlQXO
 kShxo2zQ2Y16fvMFCzbr+3Pxd+vBcQLBUQmQn4haBce2PP6oastrTnsXod+Ipfg27UZBgrM6
 zyNqSE/gZAagsgKy7i38Dj7vt68mnTaZlVrv1uKBwpJ+is8Pdf4PNLwtTA3+N4adO6kok+9U
 G/ociR0xMQHFtmzmSOEW43h95n5tq/eYFUwbbOCdqTNFghBGVb5LOi8Axkkfi+F1/ronhe3C
 HI/QSsLuPdu0IKCNMebmb6ZBcUw1rTHHt/4TP3SZdcmSsEvJVLfons2OBbAjjCFfK0QfUYXY
 83zTCpRJSxCVfQPIMSeF4/xLoPHNghhnDiOFPgXPjys0KaEZW79dFv2GALmUwzN14vd+F+92
 48GZ6O3J+B3DLWWjt//rdRCcjjn7BETWfjLliCgXrXfeVo4RT19U6K5LHFIU9UNopm5X9zgp
 hmVMnK0AnKm7ZEbAW1mskxeVY4=
IronPort-HdrOrdr: A9a23:ukDdjKB73R6kbZ7lHejpsceALOsnbusQ8zAXPiFKOGlom6mj/K
 6TdZsgtSMc9wxhJE3I9ergBEDiewKuyXcK2/hyAV7KZmCP0ldAR7sSjrcKrQeQfhEX/YZmpN
 hdm8AVMrHN5TMRt6nHCMbTKbsd6ejCyYTtodr3i05qSwQCUdAT0++6YDzrbHGfgGN9dOoE/F
 /33Ls3m9PaQwVyUu2LQkMdWvTFpZnijYuOW29+OzcXrDOWiC+u6vrQDxic034lIk5y6IZny3
 HBjwv6ooKqt/3T8G6660bjq65OncfnyJ9kGsuBkaEuW1PRozftXp1lR7qB+AoUjYiUmS4Xue
 iJmQ4kI8Nwr0ncZX64ujzk3wWI6kdU11bSjWWAhGflo4jHSCkhC8xH7LgpCCfk1w==
X-Talos-CUID: =?us-ascii?q?9a23=3AUAsBimmbbBX2bYRhAfzsMOR9snnXOVb56yb1BlO?=
 =?us-ascii?q?jMkxwSZeLanSz6PJ5ofM7zg=3D=3D?=
X-Talos-MUID: 9a23:ElNzCwSMPPf+qnydRXTJtWpIZeRY256VFXASkKwIseuFNA9vbmI=
X-IronPort-AV: E=Sophos;i="6.02,159,1688443200"; 
   d="scan'208";a="122938254"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH] x86: Fix check_ist_exit() assertions
Date: Tue, 19 Sep 2023 11:35:14 +0100
Message-ID: <20230919103514.1076888-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

The patch adding check_ist_exit() neglected to consider reset_stack_and_jump()
leaving C and entering one of the Xen exit paths.  The value in %r12 is stale,
and depending on compiler decisions may not be 0.

This shows up in Gitlab CI for the Clang build:

  https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/5112783827

and in OSSTest for GCC 8:

  http://logs.test-lab.xenproject.org/osstest/logs/183045/test-amd64-amd64-xl-qemuu-debianhvm-amd64/serial-pinot0.log

The justification for ensuring ist_exit is accurate in the exit paths still
stands, so zero %r12 in reset_stack_and_jump() to indicate a non-IST exit.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
---
 xen/arch/x86/include/asm/current.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/xen/arch/x86/include/asm/current.h b/xen/arch/x86/include/asm/current.h
index da5e152a10cc..2ce43e275784 100644
--- a/xen/arch/x86/include/asm/current.h
+++ b/xen/arch/x86/include/asm/current.h
@@ -178,6 +178,7 @@ unsigned long get_stack_dump_bottom (unsigned long sp);
             SHADOW_STACK_WORK                                           \
             "mov %[stk], %%rsp;"                                        \
             CHECK_FOR_LIVEPATCH_WORK                                    \
+            "xor %%r12d, %%r12d;" /* non-IST exit */                    \
             instr "[fun]"                                               \
             : [val] "=&r" (tmp),                                        \
               [ssp] "=&r" (tmp)                                         \

base-commit: ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 10:45:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 10:45:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604583.942039 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYDv-0005eh-AX; Tue, 19 Sep 2023 10:44:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604583.942039; Tue, 19 Sep 2023 10:44:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYDv-0005ea-7m; Tue, 19 Sep 2023 10:44:55 +0000
Received: by outflank-mailman (input) for mailman id 604583;
 Tue, 19 Sep 2023 10:44:54 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ckRK=FD=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qiYDt-0005eU-Qw
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 10:44:53 +0000
Received: from mail-pl1-x630.google.com (mail-pl1-x630.google.com
 [2607:f8b0:4864:20::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 900329ef-56d9-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 12:44:52 +0200 (CEST)
Received: by mail-pl1-x630.google.com with SMTP id
 d9443c01a7336-1c3cbfa40d6so49362035ad.1
 for <xen-devel@lists.xenproject.org>; Tue, 19 Sep 2023 03:44:52 -0700 (PDT)
Received: from [157.82.206.151] ([157.82.206.151])
 by smtp.gmail.com with ESMTPSA id
 17-20020a170902ee5100b001bb7a736b4csm3409972plo.77.2023.09.19.03.44.46
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Sep 2023 03:44:50 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 900329ef-56d9-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1695120291; x=1695725091; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=smljqgzosS5OJqCedcK9N/6xUm9qe80j7oWlUug+4Jw=;
        b=VY/SKgmGtgDZajQwl5i0WMHKJ3WNQBhtn5RJxnZu9sCISMdlxH4sNlBYpBylMqowV7
         RBFi/iMcECU/yP7Id7cXNkjKMVLeigBytn72+skDtduT+Xk8yhnykBcKQVOSFSxN51Ht
         zsCMRhPwHlpOl+XnDPpYAxmBEVFV2WplE7m8YQe7iNRrU7sqzEZeBjp8l5k6Ux+RQIJP
         OLussTdvNGbHf3kmaTh8wkXs/oSAbvVxEQmALZac1NpfgtonQDuv1dJNuAdUeNbbv0ic
         xqgRNO6trc/eK3X+ggqggv8KTt7zBUQz90aigtBllK6h1LwzOxDN8L6MNPwts31lJQKY
         MTqA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695120291; x=1695725091;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=smljqgzosS5OJqCedcK9N/6xUm9qe80j7oWlUug+4Jw=;
        b=uz0Tr9MtC/i1zZUEom5c5rApCVCXxdt59fQk0sVZ+KnOal5cf//8lTopCap94VbQ6O
         s+o9wCS50vieC2hh7C5GXy+lttJhDQYYzpTOVOcWNqUKWuFKXuawWN4gSt51w2QW4d/N
         8gOiRQR6BZP5yTYEiSbod1UH/5mHvRwlfpUtV9H2DG3tzp6uWfsUqpxz3LeG8row2HH/
         6Y9K7INqJnn2GHSW2OSen4l4Ag/bYwO1cJjr/rBZ6HVU7TiVDL2pRfFyAOYVRksTcFob
         cWsd0HOwLwn8SSKcOhtfSLklhh1NpTsF5JZA3lfgM6DnFq5JAM6LhjKnyZW8s5nKrnH6
         Zbkg==
X-Gm-Message-State: AOJu0YxvXY5vv66NquVNt1IgO78F8dg+uqT6Q3TFbHRDHAvvbW89dHua
	jdPvQwGdKW1U4k5naPD0t00MNg==
X-Google-Smtp-Source: AGHT+IE1rvQgqf2KfT7I++lA0G6ulx4YIhz3L5ez9EyE2wjGmry5CNVl3i/34lsTkQNO0gf+B6/CXg==
X-Received: by 2002:a17:903:507:b0:1b8:4f93:b210 with SMTP id jn7-20020a170903050700b001b84f93b210mr9965606plb.45.1695120291167;
        Tue, 19 Sep 2023 03:44:51 -0700 (PDT)
Message-ID: <75698621-d210-40eb-872d-f3cfc6e4dbff@daynix.com>
Date: Tue, 19 Sep 2023 19:44:45 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 07/13] softmmu/memory: enable automatic
 deallocation of memory regions
To: Xenia Ragiadakou <xenia.ragiadakou@amd.com>, Huang Rui
 <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>, qemu-devel@nongnu.org
Cc: xen-devel@lists.xenproject.org,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-8-ray.huang@amd.com>
 <99fb4575-9f8d-4ab6-bc22-911bbaa7ca55@daynix.com>
 <c0370b6e-c17e-2400-ef8a-7a759d2fc2d7@amd.com>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <c0370b6e-c17e-2400-ef8a-7a759d2fc2d7@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 2023/09/19 19:28, Xenia Ragiadakou wrote:
> 
> On 15/9/23 18:11, Akihiko Odaki wrote:
>> On 2023/09/15 20:11, Huang Rui wrote:
>>> From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>
>>> When the memory region has a different life-cycle from that of her 
>>> parent,
>>> could be automatically released, once has been unparent and once all 
>>> of her
>>> references have gone away, via the object's free callback.
>>>
>>> However, currently, references to the memory region are held by its 
>>> owner
>>> without first incrementing the memory region object's reference count.
>>> As a result, the automatic deallocation of the object, not taking into
>>> account those references, results in use-after-free memory corruption.
>>>
>>> This patch increases the reference count of an owned memory region 
>>> object
>>> on each memory_region_ref() and decreases it on each 
>>> memory_region_unref().
>>>
>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>> ---
>>>
>>> V4 -> V5:
>>>      - ref/unref only owned memory regions (Akihiko)
>>>
>>>   softmmu/memory.c | 5 +++++
>>>   1 file changed, 5 insertions(+)
>>>
>>> diff --git a/softmmu/memory.c b/softmmu/memory.c
>>> index 7d9494ce70..15e1699750 100644
>>> --- a/softmmu/memory.c
>>> +++ b/softmmu/memory.c
>>> @@ -1800,6 +1800,9 @@ void memory_region_ref(MemoryRegion *mr)
>>>       /* MMIO callbacks most likely will access data that belongs
>>>        * to the owner, hence the need to ref/unref the owner whenever
>>>        * the memory region is in use.
>>> +     * Likewise, the owner keeps references to the memory region,
>>> +     * hence the need to ref/unref the memory region object to prevent
>>> +     * its automatic deallocation while still referenced by its owner.
>>
>> This comment does not make sense. Traditionally no such automatic 
>> deallocation happens so the owner has been always required to free the 
>> memory region when it gets finalized.
>>
>> "[QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands" 
>> introduces a different kind of memory region, which can be freed 
>> anytime before the device gets finalized. Even in this case, the owner 
>> removes the reference to the memory owner by doing res->region = NULL;
> 
> Hi Akihiko,
> 
> You are right, the word "owner" is not correct. The issue observed was 
> due to the references kept in flatview ranges and the fact that 
> flatview_destroy() is asynchronous and was called after memory region's 
> destruction.
> 
> If I replace the word "owner" with "memory subsystem" in the commit 
> message and drop the comment, would that be ok with you? or do want to 
> suggest something else?

This will extend the lifetime of the memory region, but the underlying 
memory is still synchronously freed. Can you show that the flatview 
range will not be used to read the freed memory?

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 10:53:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 10:53:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604590.942050 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYLt-0008Tk-4g; Tue, 19 Sep 2023 10:53:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604590.942050; Tue, 19 Sep 2023 10:53:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYLt-0008Td-0X; Tue, 19 Sep 2023 10:53:09 +0000
Received: by outflank-mailman (input) for mailman id 604590;
 Tue, 19 Sep 2023 10:53:07 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiYLr-0008TT-R9; Tue, 19 Sep 2023 10:53:07 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiYLr-00080Z-I7; Tue, 19 Sep 2023 10:53:07 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiYLr-0002do-1x; Tue, 19 Sep 2023 10:53:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiYLr-0005Rb-1X; Tue, 19 Sep 2023 10:53:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Bh+/bpp8RRYNH0Bxf5xJBA7Y5Adxan2YOtXSt01oAtw=; b=LseHbhA3Ihcy6xwH7GJjlAUhtz
	fSIiBgzo/KmJlgOtHkRgtSR9OMSlEv9ZCtvmzU2UkL8fm9C2ijTcBXitrgwDMaX0XrygYZNh/QNOL
	uBWnCgKdhhvS2/xLIeLn4/smNx2cDLsK8+90y/9TkinCSCyC9UZq/ZJsS/ckOCnKOV4c=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183050-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183050: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:xen-boot:fail:regression
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=b5926c6ecf05c28ee99c6248c42d691ccbf0c315
X-Osstest-Versions-That:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 10:53:07 +0000

flight 183050 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183050/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 183030
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 183030

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  b5926c6ecf05c28ee99c6248c42d691ccbf0c315
baseline version:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273

Last test of basis   183030  2023-09-18 14:02:00 Z    0 days
Testing same since   183031  2023-09-18 17:01:55 Z    0 days    5 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-libvirt                                     fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 3ee6066bcd737756b0990d417d94eddc0b0d2585
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 45f00557350dc7d0756551069803fc49c29184ca
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 694bb0f280fd08a4377e36e32b84b5062def4de2
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 11:07:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 11:07:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604601.942066 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYZG-0003Bk-Bf; Tue, 19 Sep 2023 11:06:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604601.942066; Tue, 19 Sep 2023 11:06:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYZG-0003Bd-8N; Tue, 19 Sep 2023 11:06:58 +0000
Received: by outflank-mailman (input) for mailman id 604601;
 Tue, 19 Sep 2023 11:06:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ezs9=FD=citrix.com=prvs=619432e5c=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qiYZE-0003BX-Sq
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 11:06:57 +0000
Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com
 [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a3245d84-56dc-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 13:06:54 +0200 (CEST)
Received: from mail-bn8nam11lp2169.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.169])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 19 Sep 2023 07:06:50 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DM4PR03MB6158.namprd03.prod.outlook.com (2603:10b6:5:399::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Tue, 19 Sep
 2023 11:06:47 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 11:06:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a3245d84-56dc-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695121614;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=9pmBBFPJzQNYBCaHCZgzrn330g5J9H2WaO5kJqeMN8c=;
  b=INgtW3eQLinoaJ+2bZ6i+eyYUTQm0f/9EkvSwpZJF5KYxgIkKqBcSro9
   sN2bJwklHAwmc2BKE2zuHAGWq2NtKoyHg6e4LeaytRByRFwG/KHkrBTU3
   sOzxLFZX53KR5FES7yiSdjUSgfuhC3GyfuMSoKOaBW6w+Ew+Hdd546Io0
   c=;
X-CSE-ConnectionGUID: 4QDYL1O3RBi2f/XE2ATWpQ==
X-CSE-MsgGUID: uSfOj1pjRUaiMtUtClAsZw==
X-IronPort-RemoteIP: 104.47.58.169
X-IronPort-MID: 122337571
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:T7S4BqOsc2famT3vrR2DlsFynXyQoLVcMsEvi/4bfWQNrUol32dWm
 DQcDGvUO6uMZ2XwctwgOd/gpktUv5TUnIdkHgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/jrRC9H5qyo42tJ5w1mP5ingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0rpOLVBqr
 NtDEhoMNB7Et8/s6Y6EUtA506zPLOGzVG8ekldJ6GiASNwAEdXESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PpxujaCpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyj23bSQwHyiMG4UPKCD+Nlo2UWR/FEaCTgKaEeQpdCiuFHrDrqzL
 GRRoELCt5Ma5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAGRDNcbN0ttOctWCcnk
 FSOmrvBGjhHoLCTD3WH+d+pQSiaPCEUKSoIY38CRA5cut37+tht31TIU8ppF7OzgpvtAzbsz
 juWrS84wbIOkcoM0Kb99lfC696xmqX0oscOzl2/dgqYAslRPeZJu6TABYDn0Mt9
IronPort-HdrOrdr: A9a23:EB5NcaFDip4MTCM1pLqEEseALOsnbusQ8zAXPiBKJCC9vPb5qy
 nOpoV+6faQslwssR4b9uxoVJPvfZq+z+8R3WByB8bAYOCOggLBQL2KhbGI/9SKIVydygcy78
 Zdm6gVMqyMMbB55/yKnDVRxbwbsaa6GKPDv5ah8590JzsaDJ2Jd21Ce32m+ksdfnghObMJUK
 Cyy+BgvDSadXEefq2AdwM4t7iqnayzqHr+CyR2fyIa1A==
X-Talos-CUID: 9a23:8J6ck2Hu+U4IQ0/LqmI7zWIlPpkCKUf3zS3eZH+VU09Vd6WsHAo=
X-Talos-MUID: 9a23:lKyftQowjC+LKC7qYmkezyxZOuBqurysMn0EkLAahtWvMQVrCSjI2Q==
X-IronPort-AV: E=Sophos;i="6.02,159,1688443200"; 
   d="scan'208";a="122337571"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=B+zus5xlfgYeE4xa5K9TNRRjIkbMNjLEQW6REkWFU48+pYyrGsXHAol6cSrF3f4rMnUENqcqooPs85xgtBUSHzpxGMNf+HDs8IME5U3RSGSw72wnXfGbob/Mu9mIn9N94YaseWr7JhtbE4Tg2HbZz+CGtUi8+m/Lja4yyb0g5kCAdMdhdYB17e9Yt1cyJLCgAu8x8UWN+JH4eoV4Fg18L8jOWkzrPygsC7PQ9uFiTOc+oldkAykdQNF6E9ziyMckhlrPcWh+aF9eb477l5RceP6X8NmUSSsxLB4KFPKwsGh35XbnB1GXKPzCmR/axOZu85j/6IZJWjnrcA2bTwJ+bg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UX1eXRHpKe+Hj5+QRAop5/FRgFcMkLQbGSBj77udeCE=;
 b=LcuFoILpgw04FCKjOr4gKttSoHAO0yMSl8i57IHcx70NEkzh8q5crEjZFFBBXpejuyKBNlpRp0TIPEX5RUiXi93uBcS0XRTVrG94PD2JKgxMx+OwTaWnODdngeBDqMPpBi13mw5/GCy3aPWQn3mPzOkg+VsHmefLo+MowANc0pWnU7I+i5ZrtkhQPOEXUERZ6KqD9J91fzPEdAmag0jfBoNE3iolxzk1paDyJ4BLkt6netBVK9vvRkfvzyiohqM5ZDDT1b9QFQwPsjiT5Al+rU/7Gq0G9lHzw2zNzbh4SWLN8WSp+C2alCMTL9oZ5mdJUnX1BtDz10qVcBZQ7PTA4Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UX1eXRHpKe+Hj5+QRAop5/FRgFcMkLQbGSBj77udeCE=;
 b=WaslZwCMepIf5vZRav2IJFtwkoVweFPTsL9g8+pXe7i4a8It4N5QQZrrVMxX8CciFPvb7sO8b+Taag2ztCX9xCZv4oJGFChUyFNb1wIAiVzdX/3CGYGPgYavCRd5k6PJlPt720gMiu4k7nJnOQOoPfuF0MaDi44Luu5jZjUYWQU=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
From: Roger Pau Monne <roger.pau@citrix.com>
To: xen-devel@lists.xenproject.org
Cc: Roger Pau Monne <roger.pau@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [PATCH] x86/i8259: do not assume interrupts always target CPU0
Date: Tue, 19 Sep 2023 13:06:37 +0200
Message-ID: <20230919110637.12078-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0686.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:37b::18) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DM4PR03MB6158:EE_
X-MS-Office365-Filtering-Correlation-Id: e9dcf8a7-04bd-4b58-00dd-08dbb90083c7
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mrhkg3iikizVVlnXOg5S6iGzT1mQRslCdCK77ljKBq76vYAfE7tKh/+5flgdbChZtxNvCUDEn3zcRFrpmXIB8cdWn495AqfQ3GB49pSJuZZxk5bTSA+dWWj7wqG9FDrCiMjvfPrDoleC+Q9P+gecwFjxlLDWbOQBMvWikszKQrwni0/HCLz/Vx83sWWbHzsNV5LQZq8QpUXTITE6a+8edwU+2yNzj1Yb1WVjH6uPh7PjX7jeCilvDjosbQP1SPWldRFxq5Ut/ALVKLSQk5H3FP/fwkf7HY7isEbEFPXup29JwW5IXBxShZtxUbnd0dhLKku3wlo19gKFn9NhR029lKqCxNiaoliRxBw997YToExCSEkXELOfp1Rp1grrzte9xNxabvJr8npvnCtLmlYd+hI3mHOu9nZQx3chdnL73EdhjKdhBmJFr/YkffbvtBS+oklthpyp27umZk3VwJelpAxrckqsWJJRQoOEeVPDkCfnJPXA2L4ppMtItMKnCO2FsDhTEYa2k4E10tTdwuxmrtfgu/NctLZFnF10bS3LHNBUwledZt/srxV5r7j85r/J
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(366004)(396003)(376002)(39860400002)(1800799009)(186009)(451199024)(83380400001)(6512007)(6666004)(82960400001)(6506007)(6486002)(36756003)(41300700001)(2906002)(66946007)(66476007)(66556008)(316002)(54906003)(6916009)(5660300002)(8676002)(8936002)(4326008)(38100700002)(478600001)(86362001)(1076003)(26005)(2616005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aW1vdkJwbGRMUWhTcWVZdXJLTmRXUjhBM2NOaCtxRm83L2FMUzlrY2J6MVRM?=
 =?utf-8?B?Qm14VlZONUlMKzlQVTc1UjNlRTB4dlpVQmVuaUJTcUZ6a0RGckRJWlQvSkpP?=
 =?utf-8?B?OXQwaktobFdiYlVOWUpCTThIN0l3cFd3V3g5K0RmV001RUVWbTN1MWxWMy82?=
 =?utf-8?B?a1JLaDJZYk1rWmp0QVFFY3dHcVhRQzFPM003Y3pnZmhNU2p1ZVVGTml6bk1U?=
 =?utf-8?B?cmIvbUpNa21xcytGcHhZU2pyeVg0UCtReXRTN014YW1SckFRUXVmbTBuWFVK?=
 =?utf-8?B?bFk0VUdVV1lhOTlVZzlyaklCUkVFMlNsQzN1RktheHJNWnZxckhXKzY2eWNY?=
 =?utf-8?B?R1R4MmRsbUJtU1B5dmJ5MHNUb0VoRkFHTFBHYVhKMTF3MU9jSWpZZi8wRXIy?=
 =?utf-8?B?cW9QVkx1SXB4eGxUWUN0b3RWNVZubTBKVVJxa0RPb2VYNmQ3UmVHYzBMc2xB?=
 =?utf-8?B?NjZ0S0RyemVZSi8vaEYvYjZSU2xFL0JZODVvR1hmOXBzTUtwZVA5SVcwVWZ4?=
 =?utf-8?B?WEkzNW83djFZT29sdE1GRTBCcUo1SlpPNU03NGExQWV5bHlLeEFCS3BEQW9y?=
 =?utf-8?B?ck1KZEhtc2NlRTM3cjZsY3J2VTNrcTNFSUYyaUcyNGtYWEdKRERJa3hrZmtp?=
 =?utf-8?B?a1J1SkJmT1grVEpCbUtLdzJwallsZktxZTN4bC9xeGYzOEljK2JtU2Ezc25K?=
 =?utf-8?B?MjFjTWJSN1ZBenh6SGxPT3FCRDNsVXZyMzF1VEtmZDFpMGtPSVRKSzBRK3Yv?=
 =?utf-8?B?NmVyVWdDQ0VTcTE0S2xwK1VGNFFzS0l4cVpCTDRYaTJYZjhxSERsbWttS3VB?=
 =?utf-8?B?UlZSam1xSEtBT3dHQ1FxM05raVU2ZXdXWFlrUG9KeG9KNGZQbmQwQmJPRzlI?=
 =?utf-8?B?TFFBNGEzL2lneU04UXVpdEpWMTdSQ0FvZFFiY3pYZFB4YXZSTUNia1lpclZm?=
 =?utf-8?B?bkpObm12TlQ3UXNtRzJNbDlabEtrVVdnZFovZWU0SStqeXBCbU9XQk1PMC9K?=
 =?utf-8?B?M2M1dm4zcmI3NWt6ZG11Z0JFa0xXOU1kbzF5ZzBmcDFHWkJKUWpYR0NXbHN0?=
 =?utf-8?B?ZUtOL3pRRWx1alYvTVB0WXVXLzgzM3N2bUVTdGczNkk2eGVhNEVzNytwTHJ2?=
 =?utf-8?B?VDJuNmtqL05KMk1UQWEwUnZ3WmtUYlJyM2hYbktXZUZCVk9vcVp6OXNJb0RG?=
 =?utf-8?B?UWU5Y3VKdG5xVUp2Zmx6SFZna1FDeHZxTGxma2RmZVk1ZlFuNWZxMWRoYTVH?=
 =?utf-8?B?QWk2ZmtyTHQrWWhmQ1FUdThHTlRZWi9EWWdxeDdoVzBYVVRxdUg2bEtzQUtw?=
 =?utf-8?B?UGFLRCtKQStkTFl6dlRyd1dyRFNmZHVsQStaaWZrK2xuWS9LMm9pZHNvZ0pm?=
 =?utf-8?B?bEVNSEFHNmRkNk9PZUVpOUVTcE9pLzIvelpNTFJOR3N2MWlFTXpNNHppanFu?=
 =?utf-8?B?YWE1bnhEbCs0L0JqNXJaZXI0Tk5NWTNWb3BNTHplV0NaRGRUWTlmVE50QTM2?=
 =?utf-8?B?L2xsaFhIM3VZQTNKc1ppOE9tWmtzVGlzcVNVU1AzTzBoYkFJYkxlY3JVamxP?=
 =?utf-8?B?OXIwc01GWmhoNStITi9DdUlnck5UaWUxNzFzMUdNaXQwL09Ub2JRQUR5YzRB?=
 =?utf-8?B?WXoyTFQvdlRINlExY2EzWHlsT3RQeWxzbkZmb2o4emlScmYvbG5RYmxLUjJD?=
 =?utf-8?B?bUZkNXZ0Uy9BelJveVQzTDFtRWJ4RjN5YVRxNThiRWlKV3RidG1kOEE4QW4w?=
 =?utf-8?B?NUc3K0E0ZmpiT2JiSldOV3hZRXhLN0JkOXQraWFQODFOMU85QWpyWjB1OFVr?=
 =?utf-8?B?UkJ0aTNTR0RlcWg4b0EzeE5mVDhtZUpVOTN6NlpWRTA2cDdnYTNpZWtsUzBx?=
 =?utf-8?B?T2lCSHQva2J1YVNTSTJVZlpKRjhuQzJad3ZpTXBWM1FEU29FUlByT1BidG1D?=
 =?utf-8?B?dFN3SDkrQTRNd1B3a2JjdHhXUCswUzJMRVlZNjdJdk9panhqanZ0UW5LZzhJ?=
 =?utf-8?B?WnJ1RG9MaERXdnNuUXNWWVgxbUxGVTJLcEEyWHVScGRNUFVkeFRGdWt3TUsz?=
 =?utf-8?B?S1QyNmR2eGtyTjhBREhMOE1oRnJ3S0tsTDVPaGhSSXY1R09nSm1nd3VaTU5m?=
 =?utf-8?B?SWVOKzVnSkVwTDZZRjIzaEJveGpxS3ZDMnpocmFOZzUzSDhZUnNPaU00RG5V?=
 =?utf-8?B?dkE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	5PKF+7xg0SmjTmxv7I3mn3BZeouHMwtW9AQVI9W45PPxNLKWu91wMIsheyJcFfJa96jmFTsXno4RZj3iGlSkrl0caaadIR1Dm+D2MZ5a0+TKRUXaLQm47OezSZ2BingSO+6kBCGuTV9jlul5BkpBeZYZ28Z8JIERbx6YmYa8NOpqhgq7UT2J1+v3k/wt6MfIaJehZz987DZvay3XB4KaO/taltlYRWAMDjic/ZFu+u/HoPFzZA4WIMDdo9rGixHUXKk/WbqP0QFLHLokSa+YR1Gb3B3jeYCdp+KB+4M57PyJhoGVhLpmLN9SsbmyLI0V2dQ2Ye5KXcik9h7tFwRdrxMUsR8rz9kYqgBL8Emv/wL6T9eS/S1lTPEJyR9wvOw3/YSImi10uhyPXqnmBNZLJ3bK5/RyNxsTWuO/zp4Ol/yW0sHRCd3/92x4rbZqCU0BSBCdjr3CJ908alVscQ1CjLdT9fmiP3PXm0ddE+KQzm0zQ4q8VJ8OEqmrOQyCKzWwetrplHPetz4OJlEeLd2w5jfVHqS6c1kNCMjnjSd9wpx5O7IgQSSt+qxArjLgGFj/I0b75wItdOZYv9UqOdkqPbpPfN3EoxPSra5rpg5Obip21PBgZ0CgPqEyaS7WUpJyw5dwE8wEs0CoOQbEyxTwW/TWgsovFY2WQ5fP/FPAz46k+T9qh6QyX0r5+ddcyA3fwdJUPSQwd4rYuqzv5R44cMwfbjLeAgRg2xHTP9pLQC4HqYOp3UB6ZaVaTirFTn4yvQ6FvOq/56MWSJu+AoQmMKZh23tLlWUUXXR3ghK6A7spz0gESQKEPp855tY90uyIAaaY0pcKwUyXjntbHmG6Wg==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e9dcf8a7-04bd-4b58-00dd-08dbb90083c7
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 11:06:46.8249
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JJklJ/mrZ3nhuyCWE0D3fkdoWjdSErNI7R/IAbU/YdI3cnvzfJz9Jj+outKrawa7uV2Uom9gWM9Ot3lCbF6Abg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6158

Sporadically we have seen the following during AP bringup on AMD platforms
only:

microcode: CPU59 updated from revision 0x830107a to 0x830107a, date = 2023-05-17
microcode: CPU60 updated from revision 0x830104d to 0x830107a, date = 2023-05-17
CPU60: No irq handler for vector 27 (IRQ -2147483648)
microcode: CPU61 updated from revision 0x830107a to 0x830107a, date = 2023-05-17

This is similar to the issue raised on Linux commit 36e9e1eab777e, where they
also observed i8259 (active) vectors getting delivered to CPUs different than
0.

Adjust the target CPU mask of i8259 interrupt descriptors to contain all
possible CPUs, so that APs will reserve the vector at startup if any legacy IRQ
is still delivered through the i8259.  Note that if the IO-APIC takes over
those interrupt descriptors the CPU mask will be reset.

Spurious i8259 interrupt vectors however (IRQ7 and IRQ15) can be injected even
when all i8259 pins are masked, and hence need to be handled on all CPUs.
Reserve such vectors in order to prevent dynamic interrupt sources from using
them.

Finally, handle spurious i8259 interrupts on all CPUs and adjust the printed
message to display the CPU where the spurious interrupt has been received, so
it looks like:

microcode: CPU1 updated from revision 0x830107a to 0x830107a, date = 2023-05-17
cpu1: spurious 8259A interrupt: IRQ7
microcode: CPU2 updated from revision 0x830104d to 0x830107a, date = 2023-05-17

Fixes: 3fba06ba9f8b ('x86/IRQ: re-use legacy vector ranges on APs')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
---
One theory I have is that the APs at some point (before jumping into Xen code)
have the local APIC hardware-disabled, and hence are considered valid targets
by the i8259, but by the time the vector is fetched from the i8259 the
interrupt has either been masked, or already consumed by a different CPU.
---
 xen/arch/x86/i8259.c | 18 ++++++++++++++++--
 xen/arch/x86/irq.c   |  9 ++++++++-
 2 files changed, 24 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/i8259.c b/xen/arch/x86/i8259.c
index ed9f55abe51e..ad3bca9895d0 100644
--- a/xen/arch/x86/i8259.c
+++ b/xen/arch/x86/i8259.c
@@ -222,7 +222,8 @@ static bool _mask_and_ack_8259A_irq(unsigned int irq)
         is_real_irq = false;
         /* Report spurious IRQ, once per IRQ line. */
         if (!(spurious_irq_mask & irqmask)) {
-            printk("spurious 8259A interrupt: IRQ%d.\n", irq);
+            printk("cpu%u: spurious 8259A interrupt: IRQ%u\n",
+                   smp_processor_id(), irq);
             spurious_irq_mask |= irqmask;
         }
         /*
@@ -349,7 +350,20 @@ void __init init_IRQ(void)
             continue;
         desc->handler = &i8259A_irq_type;
         per_cpu(vector_irq, cpu)[LEGACY_VECTOR(irq)] = irq;
-        cpumask_copy(desc->arch.cpu_mask, cpumask_of(cpu));
+
+        /*
+         * The interrupt affinity logic never targets interrupts to offline
+         * CPUs, hence it's safe to use cpumask_all here.
+         *
+         * Legacy PIC interrupts are only targeted to CPU0, but depending on
+         * the platform they can be distributed to any online CPU in hardware.
+         * The kernel has no influence on that. So all active legacy vectors
+         * must be installed on all CPUs.
+         *
+         * IO-APIC will change the destination mask if/when taking ownership of
+         * the interrupt.
+         */
+        cpumask_copy(desc->arch.cpu_mask, &cpumask_all);
         desc->arch.vector = LEGACY_VECTOR(irq);
     }
     
diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
index 6abfd8162120..2379fdda3a7e 100644
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -466,6 +466,14 @@ int __init init_irq_data(void)
           vector++ )
         __set_bit(vector, used_vectors);
 
+    /*
+     * Mark i8259 spurious vectors as used to avoid (re)using them.  Otherwise
+     * it won't be possible to distinguish between device triggered interrupts
+     * or spurious i8259 ones.
+     */
+    __set_bit(LEGACY_VECTOR(7), used_vectors);
+    __set_bit(LEGACY_VECTOR(15), used_vectors);
+
     return 0;
 }
 
@@ -1920,7 +1928,6 @@ void do_IRQ(struct cpu_user_regs *regs)
                 kind = "";
             if ( !(vector >= FIRST_LEGACY_VECTOR &&
                    vector <= LAST_LEGACY_VECTOR &&
-                   !smp_processor_id() &&
                    bogus_8259A_irq(vector - FIRST_LEGACY_VECTOR)) )
             {
                 printk("CPU%u: No irq handler for vector %02x (IRQ %d%s)\n",
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 11:29:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 11:29:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604612.942096 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYuo-00012E-LL; Tue, 19 Sep 2023 11:29:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604612.942096; Tue, 19 Sep 2023 11:29:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYuo-000127-ID; Tue, 19 Sep 2023 11:29:14 +0000
Received: by outflank-mailman (input) for mailman id 604612;
 Tue, 19 Sep 2023 11:29:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kB+/=FD=epam.com=prvs=36266dbb07=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qiYun-0000lK-9e
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 11:29:13 +0000
Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com
 [148.163.133.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bff723af-56df-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 13:29:10 +0200 (CEST)
Received: from pps.filterd (m0174677.ppops.net [127.0.0.1])
 by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38JB52cv013085; Tue, 19 Sep 2023 11:28:58 GMT
Received: from eur04-vi1-obe.outbound.protection.outlook.com
 (mail-vi1eur04lp2059.outbound.protection.outlook.com [104.47.14.59])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3t6r9ybe6s-3
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Tue, 19 Sep 2023 11:28:58 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB10084.eurprd03.prod.outlook.com (2603:10a6:20b:628::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Tue, 19 Sep
 2023 11:28:54 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f]) by VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 11:28:54 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bff723af-56df-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YLeCahHStfI3BUHo5C5Y6DTTFKAs/W+Mx+dRjUPEckXxYQySrcToTa/q9hrxuzMV+w5uHtGLTlO3eN4fa4gSDVACn1YYdOFIPAje1sN12loeOXZIIGCIw9Q3mfTiBTLmKzb7m+qmnkMYOti5I7OUimMjWlcvyc6ru943GQAjt8lmdHBpd+a+6OzYwwIgG/gzK/2qbcx1UQYNJV9Xjpl0sEK/dgEkfIemPzZrIE4+gX0qhbWmemN88pso7gCMRpoQCBM+4AbEbzZJsLwQF04dqsBqzEQJmSlO5xAC7a81432yFrLc7VBMZuvI9A9K4rhpgHQjwV1qYE17v5BjrNhIJw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IN0+pTBEp8aKCI0j9DsWywQSvBE4azf66KEfbeD3h7M=;
 b=nZ8pL7YrQB/7b30iXKurwsAz5lvPqMPcDX/Lyymlmnto+jdl9QO1YvzZXD4eq6s1VAOdASn4SuDdollZGnFx/Zfu58cUw85TnpCnXctXecdU+SVh0nEELf1eSbpJGIJ+ILUCd1DtIelfUciHUrDjsizV4C31hcxqaCxrIHA2Ahf/0GioTlrZSuJDXHhQqodoFJaoJ5hNlZEv+Z/1j2M7JYlxIMhK8hddK55A+ED4rUhdYR7gIcbPVMkzykfIdNj0/P3L0QiPj5pbmQaQ7/3m8+lKMkauLCuGCDoiy0b73xTUqHcYZFAZrIt+kNLWcfkeBf11jkGk/Q6EzpAajHCvFQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IN0+pTBEp8aKCI0j9DsWywQSvBE4azf66KEfbeD3h7M=;
 b=c9yqxS4Tl6DWe3GO/inslCtsAAxHaLY4/mB5hRpQ6o69sYrNuFZbJ7lUQbSSri44xU/J9IqFtA1vHEOHTAboKU2+ewaoCq6twWQdKyo/9z+fVdqQUC2iZ4qldXt7gIlCZTiGzea2D4gK+lStECidHA41c5S9WrOyPZBDnU8HmHqHHMZ/kqnnop4i/kzTV6tUNRBjS/8OxVYuAHQrXNAcdQhx70jExeKb84RneNsdcQ4tExGp01d+85c7Z9z7otO9IQdMtAJ/vPro2a7Zpc3A8ieLrr7pvg25BU35EfIPcEj56HQbrmpFuNnxobSsiL6H2vGqJLO3/mBG2PVgY9fMRQ==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>,
        Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>,
        Stefano Stabellini <sstabellini@kernel.org>,
        Julien Grall <julien@xen.org>,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v1 2/3] ARM: GICv3 ITS: do not invalidate memory while sending
 a command
Thread-Topic: [PATCH v1 2/3] ARM: GICv3 ITS: do not invalidate memory while
 sending a command
Thread-Index: AQHZ6ux4LpE3chDIj0mOPudUv9951Q==
Date: Tue, 19 Sep 2023 11:28:54 +0000
Message-ID: <20230919112827.1001484-3-volodymyr_babchuk@epam.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-mailer: git-send-email 2.42.0
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|AS8PR03MB10084:EE_
x-ms-office365-filtering-correlation-id: e72eac27-de73-4ec2-5afe-08dbb9039b2b
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 apRStlg45tQcechXum9w8oTwxIoymv+oUQ3SdvEVzgX4RVzW+29+HdCcqp0tKRAeWR2VUNGOPPyXFWzicOQ0ohcGfcCnEnO5aEtOuw0IZaOHT3M5Pslk23B8/+VzsR5dRWt5kaIIXPdiMG5O+6joGgVbWChdPei5MjUD2nuLAaA4f1gCq8HOIJ/Aeu8HjuexonTYyzvDvYX1DVdxHWzGJCjA86+tNmHxudSjI9ICImmQWA3zj6yUYh9PGjfNgYHYb+jrv9dqKKWUnQfY53QKjFPRMNTGiM8cAJXdoS58MzyV6WsPxwk2uAT8iFp3RN2Puiw4n4/rGc1fsAH3DqvxUFKEI+48Z7e2K+nAucz0/TACfyns+7CG9kXHo1Si2KO6rsJ6iFJ9e4MdJv+uG5c6diRk9CyRG3Qrfa3f8hYLDs0VgS9JDNwkCn+HmpIZsPjOLaIhpD+K+pum5vog7fgbjg7cgQrPjEDv6RZMropv44IWLWupc/+q3jIBDPJuXMGZVIq0VuZouB5xgm5HLqSAKfobrDT38OVNSRIe7JFszLccB/YK7xDR3GTQ7A+j+IRMiZbrNOKmwUIsiJ0rO8PK09mLCbLe6e076CJym54ud298+BVZ6B1bH7OCB3/BoX5Q
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(396003)(346002)(136003)(376002)(186009)(451199024)(1800799009)(66946007)(6486002)(66476007)(6916009)(71200400001)(26005)(107886003)(316002)(2616005)(1076003)(83380400001)(54906003)(41300700001)(76116006)(64756008)(66556008)(91956017)(8936002)(5660300002)(2906002)(55236004)(4744005)(4326008)(6512007)(8676002)(66446008)(6506007)(478600001)(86362001)(122000001)(38070700005)(36756003)(38100700002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?Uc5mL113vJ6X9ZUSHx5Bh9SbrxscIdw0MgzrWk9oqPnM11+fifcwWnKCsl?=
 =?iso-8859-1?Q?Q2ZEOFHVBLGgLKdoyoA60Mk+XO72HVay338WHhOM7UKo5K1t27KQCVVb6N?=
 =?iso-8859-1?Q?AJvx1DU/71ygQtl8BlP0tG+TmaGdvwZWjAtX6Cp5i4byI4kdY1iXCez89s?=
 =?iso-8859-1?Q?4EexTSNayFnUs980vxjHGhaV7nf3z6YIcfju6U0zNPILzL/F7KMo0QFQEM?=
 =?iso-8859-1?Q?FKv284Gc/mchoB2g5n8KEZDnMFKQYHaSZvqDzzYrqrUQlHQ850LS0YwvQ8?=
 =?iso-8859-1?Q?00vYyxvEH89+jZc/TdxgubONx2v+K2biCJXSEZQ4XKUva0M0Lc4otIWPc0?=
 =?iso-8859-1?Q?C3yRH6nBbF2FFcdtw5ZoSTQdP7Fp7haU+6YTgZjdP3/5/svhsXDPNioEJS?=
 =?iso-8859-1?Q?hZp7w9ke+7hrPlp31ayB/Ru+tftHItKfHbxzMLznccXIqMOhNCvuxU8rTg?=
 =?iso-8859-1?Q?3GWfhJWxDAXW5pKA98yvq15OsqabiXk4LshkkgW8N6Nbn2ZYGGCHI5DqeX?=
 =?iso-8859-1?Q?90kyWr6lbA2y9f9Wj+wwyH1shnQ4vJi+KidY9RLYc7oLUqgUgqLI14d9Dz?=
 =?iso-8859-1?Q?7Cs6jlJF6ZfUi7NiKo8TPf/WfHqewN9lb6UmlNbXwnpL3D+lBuAevsKZNz?=
 =?iso-8859-1?Q?HYC/RQK1efxQx6dzZVgmNOTVMoXL++4pzcTdnumYfCw7mrVxILM6eoziUh?=
 =?iso-8859-1?Q?Z4CUWM9sBna86lVVvBuLz0VrkrHlrpN5doQBwwDIkiMEvIOn0HCUDl3yMf?=
 =?iso-8859-1?Q?R7NrpgfzFi+v1rKKJeGQCEHkPf06H5zVG/sQx7zViBfvm6iuSkS4UD18eX?=
 =?iso-8859-1?Q?snAs/0jGP4ePtAsaQ1BTLJmXo/TjWoJxXjoLs3wF0TcvbcRix9Ad6Q+KQq?=
 =?iso-8859-1?Q?Bm73BFr/gg9zFt9TsePOGFnwGBBjPPR6DGzMqJMQf/pwQz4x8EsZsyZwBT?=
 =?iso-8859-1?Q?10bUykhDGTBPJ7k3qWR7s+Ot7PadjSh142x3+6pCjRu+7h3dbRRCnqvGxU?=
 =?iso-8859-1?Q?0xawtKt9kgEbv/mWdkXGDbzLMuWkOgzT1uxZC/PZIKXr4su43JhFXVK8T+?=
 =?iso-8859-1?Q?ZxY9D9VT9LxLRHRaJ8j8sA59om3NqU/NL62hqtTBE1fluXIJFOcbvSk3Pb?=
 =?iso-8859-1?Q?Fixq5iH5WDI5VmPj6lqrtfg+wb4ww1a7re6XWVjel0imZd3SUgMCiA83R2?=
 =?iso-8859-1?Q?zAs5IWZp2uWqXXYbKLLyOkcL0kyfKeXp2udFwdT8m20QFOA5SEQNO4PD/2?=
 =?iso-8859-1?Q?sRVfCR8jfD6m98PYGBALCXZs/RWbA0uPipfsz/dPOICqsUButBRaUVxgHI?=
 =?iso-8859-1?Q?xJoaPi9XhNJ6SyM33ij2mWjoDVGjXHCIKtfTAtDRW8F5gcAlqZ26aGqNaM?=
 =?iso-8859-1?Q?zpBjsCdbiwZuavbB7BLuurivqEukvDz3PTeZnu0s4eRjBeWWnV8dLTdndl?=
 =?iso-8859-1?Q?dJn5q3M4fAW63lKxgPzpiW10Aowx+Rt94vf9o7h8jfJAkGXX7mnvZ5x+QL?=
 =?iso-8859-1?Q?NkUwuuKUXxQZafNmFP1ZmOq/SizCAQQqec83gq8Wm7hP4oU1Se6DRx/MJf?=
 =?iso-8859-1?Q?eaZ36KknNnq604zfpMoAGABe+OvRBD7cyyT9/PaKI1evZs377Pcigyhzd5?=
 =?iso-8859-1?Q?v86dgmDHkpYPQ6EiwUYaONdU53Vz9Az50baxYhC8nX1ev+8rT+Z+O9CA?=
 =?iso-8859-1?Q?=3D=3D?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e72eac27-de73-4ec2-5afe-08dbb9039b2b
X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Sep 2023 11:28:54.1608
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: ePRit3yhhpQuWEeU1Kbu4bVXH4/y9tC47rx2U2bd5d2WqUHCAO3ggWD1LG8AfixrIQcUUoowXvLJ/sMBi25fn/R4wFXBV6jMTx3MAHncx8U=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB10084
X-Proofpoint-ORIG-GUID: Jw3yNeMFe5uQIR9sL1a6Md38rkS6Okg6
X-Proofpoint-GUID: Jw3yNeMFe5uQIR9sL1a6Md38rkS6Okg6
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.601,FMLib:17.11.176.26
 definitions=2023-09-19_06,2023-09-19_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0
 suspectscore=0 bulkscore=0 clxscore=1015 impostorscore=0 mlxscore=0
 spamscore=0 phishscore=0 malwarescore=0 mlxlogscore=885 priorityscore=1501
 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2308100000 definitions=main-2309190097

There is no need to invalidate cache entry because we just wrote into a
memory region. Writing itself guarantees that cache entry is valid.

But we still need to flush cache line to be sure that ITS sees a
command written into a queue.

Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
---
 xen/arch/arm/gic-v3-its.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/xen/arch/arm/gic-v3-its.c b/xen/arch/arm/gic-v3-its.c
index a9c971a55f..72cf318810 100644
--- a/xen/arch/arm/gic-v3-its.c
+++ b/xen/arch/arm/gic-v3-its.c
@@ -108,8 +108,7 @@ static int its_send_command(struct host_its *hw_its, co=
nst void *its_cmd)
=20
     memcpy(hw_its->cmd_buf + writep, its_cmd, ITS_CMD_SIZE);
     if ( hw_its->flags & HOST_ITS_FLUSH_CMD_QUEUE )
-        clean_and_invalidate_dcache_va_range(hw_its->cmd_buf + writep,
-                                             ITS_CMD_SIZE);
+        clean_dcache_va_range(hw_its->cmd_buf + writep, ITS_CMD_SIZE);
     else
         dsb(ishst);
=20
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 11:29:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 11:29:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604611.942086 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYun-0000n9-D8; Tue, 19 Sep 2023 11:29:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604611.942086; Tue, 19 Sep 2023 11:29:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYun-0000my-A5; Tue, 19 Sep 2023 11:29:13 +0000
Received: by outflank-mailman (input) for mailman id 604611;
 Tue, 19 Sep 2023 11:29:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kB+/=FD=epam.com=prvs=36266dbb07=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qiYul-0000Xy-Mr
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 11:29:11 +0000
Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com
 [148.163.133.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bf613ce6-56df-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 13:29:09 +0200 (CEST)
Received: from pps.filterd (m0174677.ppops.net [127.0.0.1])
 by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38JB52cu013085; Tue, 19 Sep 2023 11:28:58 GMT
Received: from eur04-vi1-obe.outbound.protection.outlook.com
 (mail-vi1eur04lp2059.outbound.protection.outlook.com [104.47.14.59])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3t6r9ybe6s-2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Tue, 19 Sep 2023 11:28:57 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB10084.eurprd03.prod.outlook.com (2603:10a6:20b:628::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Tue, 19 Sep
 2023 11:28:53 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f]) by VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 11:28:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bf613ce6-56df-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SrN+YelRVlyAqafvyMDD5UVT1308p/9vQPTTFLIGB6mveq4rumu/KGngfK13mJh8yOMeptsjMhqoCOtePlLEISy3c/MyPNSX1jH2LlvTQ5gfHDjQDtNNEVXbiTR8jy4C9eJ1uCxZ+vSLW7eJTEjB82+My6WutQ8k6ZPIhzx159BhZxFu27Y5EKmkemnbFhs+JZ9rEzUwtxZlOB2yDRLtJplVwDwB0hydmU8pWtrSVav5B7ZEgJWR5YwODjqP6yAcgirffwqC7J9joSMhfxyHZA7/Tj2o8ttz8n1QvqvKPAAZcRZ6MbOjS1QytWUby8SZ8ABJ0kj13iVcuN/LCxxh2Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EL8EW1Wf0smeCmefyJe62z5xVjR7Rx7TyTl1SpuYNzk=;
 b=ns6hNNcTve8T1hnjLJ9pj4DN51MJ+SIxFmPGpthCMcVmDyb+tOscmQdMyRsnat3v8Q9gFLgDCLULy5LiaQpRHm10lxSRGEFSemPCRmm4eJ+fGt//jtsOA9STRBO8HtBow4hsQKbIcn8j7fgoYvrbNQwaX+Q6AYwWwyvAhl7+WzeKlPGAIC9wSLN7JX/ES0NGPQX3Hi30DEgLocshZv0G3TqN2vnR6Cs/8lksBIfLJAeFrvU9uGa/A0T7n8yfV5+ydKxA8aWL7yz5RkYhFHwrYbfb2Yw8ULDeHW8+urCWv+UlmPtd7REoeO1NHpU485ho3RH9lQ0tPr2vJKctojjR4w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EL8EW1Wf0smeCmefyJe62z5xVjR7Rx7TyTl1SpuYNzk=;
 b=ozp+njqRZ1F9/kqX5V+lzsLS40Kum2xXIlI1NOK2t6MfzOZrfbzpKxpMi1vFg1kCv3Lt/EkEjmfNnPLyrtHkT0jGS9AKsWH8dW+9egl1F3DVEkVhUdSxlyzTl9F7xZJ+KYAezIJOKV7KkxihKiVCivb3dlc3ntzZen/byD1jko398AVxMuHh05Zd1Pq0h2cs/6n8FZ7fslKNPKmFn/JcgX+A+04CXtfOGq18/8e8nrgL0vCSSV0QVW9163iGg2jaoZ9yN5igr9Joxrzth7ga5Mx3w2KcLdlapiHHVGfc/qTgXD8Hz+fnAPO8TSYwpbX257NJq1X+EiymE4qrrrYg6Q==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>,
        Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>,
        Stefano Stabellini <sstabellini@kernel.org>,
        Julien Grall <julien@xen.org>,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v1 1/3] ARM: GICv3 ITS: issue INVALL command after mapping
 host events
Thread-Topic: [PATCH v1 1/3] ARM: GICv3 ITS: issue INVALL command after
 mapping host events
Thread-Index: AQHZ6ux4J+vpvrMLBESLD/bhCu4NsQ==
Date: Tue, 19 Sep 2023 11:28:53 +0000
Message-ID: <20230919112827.1001484-2-volodymyr_babchuk@epam.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-mailer: git-send-email 2.42.0
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|AS8PR03MB10084:EE_
x-ms-office365-filtering-correlation-id: 6577df2f-e85d-4595-c12f-08dbb9039aef
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 YfVLOCeP8UaxqJnbbnOeP4v2Gbanw/JOHBXc8uK7MZ3HuVmwDVETc8s+Taa/ECeYz99c96tgRENnHurPNeTrs3Mp3PKIBeGlx4Tx+czIL6CAI97ewrNIbiv/747hj8pnBC0ZJKn/VmiVHENAtdevYoDrcz2xc7jqel0atdu0dk0r4zO39ftQ1gA8bvKgAGq1k3NzRmgP/LVPGD/b1dMFUTHoxTg7yNUDoDMSBEi2qOQSStlUBOkBFuXQJzWx1bnShHl2S1bp2o9XBeHP3Yj/jRo2j+YxfhKwuOWsMxa4PXsfrFL72VUbTvomkun+PcfBMCzT6EKm0A+E0Dyc6Wl4+fceR+m+pwC5ESJvxK4/8wDHXuKcuHO6ckVIe+sxRUkK3gosS0rtEqZR6obQPH3Hxe4q1lG1hsGRWke74DbH86JY1HH9aNKTrM6Pj8PIh9tMekbJIX9kgRgJz+krcxPR1iLZ1KNquICccK5R78y5CqphloMb4gy0FUdzAAdj9rXdixaXkA5MewRu+Ghmd2SeZFnQiwpIQfvMxbXuWLQaQsp8rbOfRbuLvxDMPdDghzomTVvXyQTRS7tTeB9pzSDIhfJu1MzyX4WdGW1wbqmH6PkN9CAlIqmhJLqXR1yngg9o
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(396003)(346002)(136003)(376002)(186009)(451199024)(1800799009)(66946007)(6486002)(66476007)(6916009)(71200400001)(26005)(107886003)(316002)(2616005)(1076003)(83380400001)(54906003)(41300700001)(76116006)(64756008)(66556008)(91956017)(8936002)(5660300002)(2906002)(55236004)(4326008)(6512007)(8676002)(66446008)(6506007)(478600001)(86362001)(122000001)(38070700005)(36756003)(38100700002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?TBnI0gg/SfVIfwvUSsuSlfvIBTcJq6yIEsCOL+qkTOO4U5Y5kzRo1omfCJ?=
 =?iso-8859-1?Q?JIDI6wPvaxS6JZlpY2KhuD50aAQiI8vC2LbNN0HMx6DusZM3+QQyK0xnuM?=
 =?iso-8859-1?Q?xL9n2wp8/R5qCTgqncXC1wzEd+Ptw9GVZJBBrxi1iIUYqQI3Mk8ahSVI0n?=
 =?iso-8859-1?Q?CAoZUZL00t+RVtgA4zPnh1H5K8AYaOAuE5Odd4A5ztwWpq3e3y1JLE3BBu?=
 =?iso-8859-1?Q?f8Mvk8yclQh9nJBSZzaIibFSZkevbLNTCkxi8MXySxrU2ZLVo+5toVZPWz?=
 =?iso-8859-1?Q?g1NOgZnsif7kzkbMabkPXfwfKvOh1A+Z8bcv1L8QtX6gAYmw826AOsJ4+d?=
 =?iso-8859-1?Q?hcFrtEG/NrGvpIrMt/HJXFoKuNkFMwsXy0O06VfSz+pa7TzzOVYVoSj54n?=
 =?iso-8859-1?Q?gm31gw/nKW4WQVt7emybKCyY98R4vGmZ63tcN3t8RyyiIKUjhmWRfdH0a/?=
 =?iso-8859-1?Q?vojSYkr21ijYx8jUXO7ahFSIU7Ncv5qoCaUSREZSNhqchnzTQLTLBJk/Iw?=
 =?iso-8859-1?Q?DvGP2X7VY+ln5k/f2udG+ujdMMBQ9D3lxQnHwb82vIqOpePBjpbG9tOzk1?=
 =?iso-8859-1?Q?5af5CEs4A4+FPcLWUoJBKUads1z04b2DT4INFF2nq5kLegfFi6aSY/6Idh?=
 =?iso-8859-1?Q?axV+1c+EuLX17M41ntUbMFz8YJNioBeOeafzWMy5X87zCTvFUx1GF3bZIp?=
 =?iso-8859-1?Q?7d5xOQAj6cG95vNLGz3yG2vGXx18+q/7/xaYHB0lVu7uGDe4AfJ4ty2oPE?=
 =?iso-8859-1?Q?ZX5eMSjXUjfcFFPeEBd+PS/M+eD36S4SztNSvL4MN92kghhan3p3OdU96T?=
 =?iso-8859-1?Q?u9ktQxcGWp/MAVfCHR1EvC9seTKkdJEWfCPWWCe8myxYbrnSqcbMzhAuKV?=
 =?iso-8859-1?Q?kMDWqzMeuiSWCqsw1qQpBcjMtVCWw58aL+61MWGvIuVQpSqfW6NScTnjn4?=
 =?iso-8859-1?Q?/WfqDgfNoYtaRuymiv8xtrOIhrlkrNdj1rlyKn8Eaq73Mewh56ZyRy7sjh?=
 =?iso-8859-1?Q?GRqeuHoY2N8vqvY8/ZionkAWGrcEn4ICTt6dCazcyu567aqjy6M3h9386J?=
 =?iso-8859-1?Q?U1fmIAQEV395Qt2qLn79aK07tjePhROXvjSb3JDm4O5Cb5BIsKW5tyjHJ1?=
 =?iso-8859-1?Q?PQnhrxJNnau25R3NlvVSkfU2CLs+V4r4a8XiG/jtaAhIX9C0ryjPERig6+?=
 =?iso-8859-1?Q?+VuDd0bo2BqSiPgkCa7aI3ZN7CjBvd7DMidQVGDNUY7f6ybRkecP9W4ZLJ?=
 =?iso-8859-1?Q?t761vjGWTkdzRpbpjYuXOEYj3U5WhSTzpwQOT0y1SE8XIXiHHv0aeh2ar5?=
 =?iso-8859-1?Q?btr+PFh3KUkNgq5HRt7VyYXttQruKYLVEIxLWoxyyr5AA0MrnAQ9T+hqi0?=
 =?iso-8859-1?Q?icvFcpop3HEYVjKBJ1Q3BagABBX4JqUkB5DmsYgKaiQVcenyR9z6+Fbn0S?=
 =?iso-8859-1?Q?c1o8imwOa1/tTlm2BcCEgiJuNG/B7DFsjQlBHEqG3UiC8PybvrtdUBsoYj?=
 =?iso-8859-1?Q?EhekaVzJVHoK4OqsOLWwuoznRBzF52HhH0rcjrPGIG+Z6TYpl5yRwHCQxx?=
 =?iso-8859-1?Q?FuIE1MWv3ebp6XOLoRcpv9OmTt/1hnqsSVRtjPawpPWKX92FutkLw2n7ak?=
 =?iso-8859-1?Q?/eCle50xobkrvvPvy4ANO63e4RhMaFgjiFfjRj8WzHdgVIUdGRujIwzA?=
 =?iso-8859-1?Q?=3D=3D?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6577df2f-e85d-4595-c12f-08dbb9039aef
X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Sep 2023 11:28:53.8237
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: K92H8OL9Nufb0n+xmfRDdiEddF8RuSxzlbmQKix56fbsC0hkCkhMHPRMSLfjETF9s4CwpACpHsezCO5gDPuKs47cQhnJNQMMlostpvoH27c=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB10084
X-Proofpoint-ORIG-GUID: gtLOoZ9TmtNSdCEgTtV2fj7-5iu5rqAU
X-Proofpoint-GUID: gtLOoZ9TmtNSdCEgTtV2fj7-5iu5rqAU
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.601,FMLib:17.11.176.26
 definitions=2023-09-19_06,2023-09-19_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0
 suspectscore=0 bulkscore=0 clxscore=1015 impostorscore=0 mlxscore=0
 spamscore=0 phishscore=0 malwarescore=0 mlxlogscore=999 priorityscore=1501
 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2308100000 definitions=main-2309190097

Implement TODO by calling the INVALL command. It is working on real
HW, so there is no sense in not doing this.

Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
---
 xen/arch/arm/gic-v3-its.c | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/gic-v3-its.c b/xen/arch/arm/gic-v3-its.c
index 3aa4edda10..a9c971a55f 100644
--- a/xen/arch/arm/gic-v3-its.c
+++ b/xen/arch/arm/gic-v3-its.c
@@ -236,6 +236,19 @@ static int its_send_cmd_inv(struct host_its *its,
     return its_send_command(its, cmd);
 }
=20
+static int its_send_cmd_invall(struct host_its *its,
+                               uint32_t collection_id)
+{
+    uint64_t cmd[4];
+
+    cmd[0] =3D GITS_CMD_INVALL;
+    cmd[1] =3D 0x00;
+    cmd[2] =3D collection_id;
+    cmd[3] =3D 0x00;
+
+    return its_send_command(its, cmd);
+}
+
 /* Set up the (1:1) collection mapping for the given host CPU. */
 int gicv3_its_setup_collection(unsigned int cpu)
 {
@@ -593,7 +606,9 @@ static int gicv3_its_map_host_events(struct host_its *i=
ts,
             return ret;
     }
=20
-    /* TODO: Consider using INVALL here. Didn't work on the model, though.=
 */
+    ret =3D its_send_cmd_invall(its, 0);
+    if ( ret )
+        return ret;
=20
     ret =3D its_send_cmd_sync(its, 0);
     if ( ret )
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 11:29:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 11:29:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604613.942106 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYur-0001JJ-0k; Tue, 19 Sep 2023 11:29:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604613.942106; Tue, 19 Sep 2023 11:29:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYuq-0001J4-Tn; Tue, 19 Sep 2023 11:29:16 +0000
Received: by outflank-mailman (input) for mailman id 604613;
 Tue, 19 Sep 2023 11:29:16 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kB+/=FD=epam.com=prvs=36266dbb07=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qiYuq-0000lK-2p
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 11:29:16 +0000
Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com
 [148.163.137.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c23e9537-56df-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 13:29:14 +0200 (CEST)
Received: from pps.filterd (m0174681.ppops.net [127.0.0.1])
 by mx0b-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38J96Sw3020876; Tue, 19 Sep 2023 11:29:01 GMT
Received: from eur04-vi1-obe.outbound.protection.outlook.com
 (mail-vi1eur04lp2052.outbound.protection.outlook.com [104.47.14.52])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3t6svwkjpd-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Tue, 19 Sep 2023 11:29:00 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB10084.eurprd03.prod.outlook.com (2603:10a6:20b:628::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Tue, 19 Sep
 2023 11:28:54 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f]) by VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 11:28:54 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c23e9537-56df-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gLilNPs08Rt5sVq9NO42OZoTSwkgK5uDt4fZnKYKm4+7qnyRZxDQJXhC80Z9mhl28gLZMO4E8e3E1HsWwr/BEPQsfh2c/pIEHfmTxBg6RyzpLBtAw4g4Cwl38pSyLhTqiSq4D2RZ1qyRpmEaRl8ExoEAp/zEoeVSRWTLKMHobhGZCFogCYdJr1PoYDfDhrNU0WKMY05q15qk62jAydi/1kfbnpjBe7MrzHeXgKCkRec31Sf70U3mjMDFzQUdgcvk2rN8P1qWL/49I+ep59rylOhbC3rENMqVSlhB+EuUyn9n9L+vChMkV+wUeocc3Ol3puwbDtRs0ADindPj0ESZMA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vycq55yyF/QobazNLsdJUrh48/zGTDw3M4nyqu5b+3Q=;
 b=feTZZ5s8ZlVbO54lbEIHuEKZM/jSyJVpM75Xx/6T75iNFuQq9SiBdFv5+abn9oYA9OgT29PO3MpP/SRcjhQHCbB2GMTuFOvQlW70f7r+J4AR0szwhVwlbciyANKioa/6KjbfrPiTkKYdv/w51hulTuIFcu1uoct0m0FmJ9ZAJ4U7E9xAKSzhejAdHlID8warX+SX6ydoZg0EwjMhBdRHDK3vCbatyNieEUdpTN/4r1QiCSa80KhqWdSEnNfib1V0au/6q2N5mZAW7yrk+vC8Wh+YkDXr6CsBRAfNF+N8eA+q2lkygwW2CfpSurApO6qvs/iYFStaHFSBulGYHZpA2w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vycq55yyF/QobazNLsdJUrh48/zGTDw3M4nyqu5b+3Q=;
 b=ajSvkxzqSqY85FRBIZEt35GfPuHRtlfLTaOCYCvhmiuVvOyV8PYw7IYjBKcce+R3pCtu07Dnh/wM9tvgXAd3fF4KaO3xqXiAkssSUgWelWs2AeIXzEtXsgKv90AzLosX7Ir8MF2Lx9iODJC0n+s5J1b5d6YdfaM+NBYGeDkCjlFVGazcBjTbUMqmcwwlHF8K63PHZf4P08sU8iF8ivmSJKP3ejQWkSZyaa+MCdTgMfvUBZ2fKVMpAcHWAeElwcZ15CeGrVSXYwgcRXFIiIaHvibq+I6onaYN11jBTanyHCfpHkUy/37K4FQxv680iXk5UgGta114bbruoNTTDuANIA==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>,
        Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>,
        Stefano Stabellini <sstabellini@kernel.org>,
        Julien Grall <julien@xen.org>,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v1 3/3] ARM: GICv3 ITS: flush all buffers, not just command
 queue
Thread-Topic: [PATCH v1 3/3] ARM: GICv3 ITS: flush all buffers, not just
 command queue
Thread-Index: AQHZ6ux4dm5WVFL9oEWSe/DtwdZNSQ==
Date: Tue, 19 Sep 2023 11:28:54 +0000
Message-ID: <20230919112827.1001484-4-volodymyr_babchuk@epam.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
In-Reply-To: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-mailer: git-send-email 2.42.0
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|AS8PR03MB10084:EE_
x-ms-office365-filtering-correlation-id: e2be28a8-fdb2-49e0-6b84-08dbb9039b5d
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 OmDpnRZajfAXFSPnKAUaHQe3riayWjcqt9ur1ZkjxHkqUmguwhwDg+kDhdM4KqXvg5CNglMwjePy0NGOQVa07CRukoGwM8ceVe4J6BnjYx7wfKv52lRF9WvZlSyvdi/LGF/WbqydXUgf89kGCsjQ6rf4ZpO0E2YJ8a/U99pdZo6f30T7txmBfa6N4EJgoWNTcV7jecGRUAZRWz8/XzNuaha5mEkyzXiAlywX6XCx29pM98eptt2eJ+q15DnfI3yuCUYHQdB+nRJ3CXH4PM7irXdyoG8GwoaVvSrA+arIppU7fzc+m4OaHVwalfM35XR2YqugT0XW1YYP/dbq6p8yJIc8YTiPoreGmtKX5453zxC+0h+kedFAm0KA8F7qh/+SiXRMVGPwEdygrzmK79vkIQOl6Qpy425zrc/YAfBxGPAQYtGB4ZZAM1eoMvzY+2Wj/ob2PD19W5rR8C3oAbeuOvNxjl2PBlGWITblMk07/wUCSOkh1F8/8G49pjdHgmbRx9BBOSaHMGj6AoSuKHLWspNxCJDq2jvcDt0bI3mMaecLysqS2ZgZaqaa/6XpLaJO0ZOV/rUfz8PYLMud4qMN+1nA6Z+zHe80FYJK7n2DQnpUzkJ9NbYfOC//CbUlbVmS
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(396003)(346002)(136003)(376002)(186009)(451199024)(1800799009)(66946007)(6486002)(66476007)(6916009)(71200400001)(26005)(107886003)(316002)(2616005)(1076003)(83380400001)(54906003)(41300700001)(76116006)(64756008)(66556008)(91956017)(8936002)(5660300002)(2906002)(55236004)(4326008)(6512007)(8676002)(66446008)(6506007)(478600001)(86362001)(122000001)(38070700005)(36756003)(38100700002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?Fa37Lm0MCmMb/EikYOj/ESEnnK8kwLQ0zEkowfQM4myGFfHHGgXlRNh+Lx?=
 =?iso-8859-1?Q?I6YEs+hRWgdCytSkOlMJBGAaMaE2ZPX9IVSznKDK2HurH6PJ8w1rgbpY4q?=
 =?iso-8859-1?Q?d9nh9YDYhJVDf4CIL4AVTykgA69aqJUQfcv4DL4ifSHVb/NTgR297KBu+Y?=
 =?iso-8859-1?Q?LJ6S7GvJRK66cb+hVBKo/FVnX+vb/6m7W0cNp7797KRpxalVuh1tucj5eN?=
 =?iso-8859-1?Q?1XZNY2hRx4Qvt5yDosvwvHeWCV6rTrR+16hywv85H89qM2S3F2AP5XctLF?=
 =?iso-8859-1?Q?BYs30RXaGgPjB9mZwt/Dvz0FLWRhT3W+ufOEyjRzDNdjHZVRs9mjSW8Jcv?=
 =?iso-8859-1?Q?Fo5iwLtERHIO8qKXz+5p0ymnCZY1mlC05o1vnIYVyvOHHAragXQj+F8a6s?=
 =?iso-8859-1?Q?hE4o1zPbweV+at5hmDTg7gN+4/2RxIaiLSN1qEXE7oaRrjP0IZZSdPvhu0?=
 =?iso-8859-1?Q?EqcqHjpr6msOZEuy4VF97PNOUq8RzGyISrctppo21aEcKf2s6g2zSKr+0U?=
 =?iso-8859-1?Q?kgynwKffmc56b87rKUpJMopgkFow8FHKtBOhKaZVb8Vz9De+G7vy5BVPmq?=
 =?iso-8859-1?Q?EJrkr3i1u49gZbennnSwI4T7/W9EcDxAOBPNCujQJrusZ8BHnwvS5wwrZQ?=
 =?iso-8859-1?Q?gjx5qJWQg0gfw/6J4jiCIjAf++KrtKg6zS1F8vDEvn6KJw1Q+W46KXRL7t?=
 =?iso-8859-1?Q?SwcW51ackjt+XdKdEKFVebkRpDNj6jz94c20lFXg//oeJXqGlF0jMkZSm0?=
 =?iso-8859-1?Q?Obspkj+vAJXeDtqqovsR7Hu5eR8s1C67ctL9jCjghZwiSy2K7WMMl74XYM?=
 =?iso-8859-1?Q?VksKUZnh4ywGMjq3AymEi+TTvaVQ54vfP8VNuQ1ESTWIgAr4OX62V5UNih?=
 =?iso-8859-1?Q?bBzWe3tdYusc20BzOcA2lRcVYJ3bk9dKEmcVkFj1WE/cUf8/IbhJUv5tYv?=
 =?iso-8859-1?Q?vo1sZVCrnmmlSzNGZ3o0LJT+CGIOmd18S8U0Xw7tsSJ72IzE8y7IGuesKI?=
 =?iso-8859-1?Q?Rxro99nYDXW1FcbBwXpS+ALwnKd6K1djNRkmZQGhPlQuknCDWCn6SOENLt?=
 =?iso-8859-1?Q?gLUnfgnaKoBYuHHUkh0+QW8H3CsvUj2CSdnnXG/k7ZI9NBR4Ny/5cdGeuP?=
 =?iso-8859-1?Q?oJ9f7eCCRh+VEG7xzUnIz8gr1ZNzSRfrM6D6d5GCHT25u1Zx/+0MmmLls5?=
 =?iso-8859-1?Q?B2W+KiAQ666Ehye+mpWlgbW8ODnSjQ2YwqOzfCAEZk1P+082J0dLlOkbCC?=
 =?iso-8859-1?Q?FfUcpqYHk9wMeU3c6tw0UUQkQYT7Hc0mZeJIpUbf5/Ss1jVsVLb2E8N/eC?=
 =?iso-8859-1?Q?bRxfXw/7oZsjGtQFLut0l0TMSh7bYZ1UgGPkq7Yu+P4kyhPaMbc9SwG1qC?=
 =?iso-8859-1?Q?8nCgErEaiwTZqh2o+G1n+opB+LQ93zMzX4E5xKT3BKaaapjhnbWgLSRP2U?=
 =?iso-8859-1?Q?HBcjarFlbuv+jE585Ro2FTYOA+A1b7mnIl43roVBABRfRrYkWpiCwKJ3yE?=
 =?iso-8859-1?Q?jEda6PYwUQbbQhexe82Kv2fb7QmVCvBEQo4qvXzCn4chuKJFmWnfXPFV+O?=
 =?iso-8859-1?Q?lwnfx1ce4na75L3x0mJaaYT7LPndHfJZ9xjdkbwzyaBnnOXuW7rO983ubM?=
 =?iso-8859-1?Q?NzRs+Y0+Iate3hZeX0pbyXr0aB29Z8nkJSDyqss++b+x26qxczXdTllg?=
 =?iso-8859-1?Q?=3D=3D?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e2be28a8-fdb2-49e0-6b84-08dbb9039b5d
X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Sep 2023 11:28:54.5092
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: QdavZeij+eUIVipIDoku9YFA8ussAVa7n1jH5Nl9lx7xaatsh6C92uxqwZ1HyKHRBVFA2mLkklRhkE4T6SljDmxXxIHX3z+U4kkHDZDQ7bA=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB10084
X-Proofpoint-GUID: Ve8vldBqljse1F1dPvwJX1gPRQji5fHG
X-Proofpoint-ORIG-GUID: Ve8vldBqljse1F1dPvwJX1gPRQji5fHG
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.601,FMLib:17.11.176.26
 definitions=2023-09-19_06,2023-09-19_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0
 mlxlogscore=999 spamscore=0 suspectscore=0 priorityscore=1501 adultscore=0
 clxscore=1015 impostorscore=0 malwarescore=0 mlxscore=0 phishscore=0
 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2308100000 definitions=main-2309190097

ITS manages Device Tables and Interrupt Translation Tables on its own,
so generally we are not interested which shareability and cacheability
attributes it uses. But there is one exception: ITS requires that DT
and ITT must be initialized with zeroes. If ITS belongs to the Inner
Cacheability domain there is no problem at all.

But in all other cases we need to do clean CPU caches manually, or
otherwise CPU can overwrite DT and ITT entries. From user perspective
this looks like interrupts are not delivered from a device.

Also, we will rename HOST_ITS_FLUSH_CMD_QUEUE flag to
HOST_ITS_FLUSH_BUFFERS because now this flag controls not only command
queue.

Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
---
 xen/arch/arm/gic-v3-its.c             | 7 +++++--
 xen/arch/arm/include/asm/gic_v3_its.h | 2 +-
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/xen/arch/arm/gic-v3-its.c b/xen/arch/arm/gic-v3-its.c
index 72cf318810..63e28a7706 100644
--- a/xen/arch/arm/gic-v3-its.c
+++ b/xen/arch/arm/gic-v3-its.c
@@ -107,7 +107,7 @@ static int its_send_command(struct host_its *hw_its, co=
nst void *its_cmd)
     }
=20
     memcpy(hw_its->cmd_buf + writep, its_cmd, ITS_CMD_SIZE);
-    if ( hw_its->flags & HOST_ITS_FLUSH_CMD_QUEUE )
+    if ( hw_its->flags & HOST_ITS_FLUSH_BUFFERS )
         clean_dcache_va_range(hw_its->cmd_buf + writep, ITS_CMD_SIZE);
     else
         dsb(ishst);
@@ -335,7 +335,7 @@ static void *its_map_cbaser(struct host_its *its)
      */
     if ( !(reg & GITS_BASER_INNER_CACHEABILITY_MASK) )
     {
-        its->flags |=3D HOST_ITS_FLUSH_CMD_QUEUE;
+        its->flags |=3D HOST_ITS_FLUSH_BUFFERS;
         printk(XENLOG_WARNING "using non-cacheable ITS command queue\n");
     }
=20
@@ -699,6 +699,9 @@ int gicv3_its_map_guest_device(struct domain *d,
     if ( !itt_addr )
         goto out_unlock;
=20
+    if ( hw_its->flags & HOST_ITS_FLUSH_BUFFERS )
+        clean_dcache_va_range(itt_addr, nr_events * hw_its->itte_size);
+
     dev =3D xzalloc(struct its_device);
     if ( !dev )
         goto out_unlock;
diff --git a/xen/arch/arm/include/asm/gic_v3_its.h b/xen/arch/arm/include/a=
sm/gic_v3_its.h
index c24d4752d0..460b008db5 100644
--- a/xen/arch/arm/include/asm/gic_v3_its.h
+++ b/xen/arch/arm/include/asm/gic_v3_its.h
@@ -107,7 +107,7 @@
 #include <xen/device_tree.h>
 #include <xen/rbtree.h>
=20
-#define HOST_ITS_FLUSH_CMD_QUEUE        (1U << 0)
+#define HOST_ITS_FLUSH_BUFFERS          (1U << 0)
 #define HOST_ITS_USES_PTA               (1U << 1)
=20
 /* We allocate LPIs on the hosts in chunks of 32 to reduce handling overhe=
ad. */
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 11:29:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 11:29:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604610.942076 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYum-0000YI-53; Tue, 19 Sep 2023 11:29:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604610.942076; Tue, 19 Sep 2023 11:29:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiYum-0000YB-2M; Tue, 19 Sep 2023 11:29:12 +0000
Received: by outflank-mailman (input) for mailman id 604610;
 Tue, 19 Sep 2023 11:29:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kB+/=FD=epam.com=prvs=36266dbb07=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qiYul-0000Xy-1j
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 11:29:11 +0000
Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com
 [148.163.133.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bf3575fe-56df-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 13:29:09 +0200 (CEST)
Received: from pps.filterd (m0174677.ppops.net [127.0.0.1])
 by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38JB52ct013085; Tue, 19 Sep 2023 11:28:57 GMT
Received: from eur04-vi1-obe.outbound.protection.outlook.com
 (mail-vi1eur04lp2059.outbound.protection.outlook.com [104.47.14.59])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3t6r9ybe6s-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Tue, 19 Sep 2023 11:28:56 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS8PR03MB10084.eurprd03.prod.outlook.com (2603:10a6:20b:628::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Tue, 19 Sep
 2023 11:28:53 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f]) by VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 11:28:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bf3575fe-56df-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ieJ4QmfS1xy2WTpNRc9b54WaSU4GHuzJkW9od/a4IzOXoOBV7VM5spjm/wgCT4nHQL2toJb+7tA/Boy76HDDUxcyzY/kVMQCuE8NQWma5A4yibmuWjwfYnBvfcttFRQM+IEVZRygcuUsLdDEd2I9k4CxDb92u133aiuJbqwUoeNMc25h0T+EapGc3aPuB1jQP1goGCjVzlLlr4Nr/J+/4yzH0/JaLJ6MoHG6NEXzK6k8lcqyzBx+qCrMmiVj3RErSbLclThWsxZryNYpjJTjZsoYtN46kKJIrPgWCPXVqrKB1B/r71hML5sEtFg7FDqQMCH+m6jA91xwufzoUV34ew==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=C0H3frrl9g13QRlBhjKELhzhQ8gNK15RDH5chBknLJ4=;
 b=jGFn51KWeALqbshjBrRyz5R3d9rhS6xwy/2wo8bB6Dk4GNJYwvMOeOzzKAcDcpDdR1KPiuHQg0iF5oekJ+eIcoO3jy58AYADd4O2K6tQ6ydYn1Rk+MYC7PwaQEb8jmMfOxeH5ouKbPwniWHYA8WO6/eXGOUbuuCOaWkRj5HLKHs3dc1lwzfA1+JQCuHHWzn/7bnnLkVFt45cNObReY28hTVCwWs256QBgjWAyPXtRWQEHZnkLesxk3Y2y5I8qOGQxPIXvku7yHa5HlmiKtXeYICxmV2/eiZIksHglIvoV8GLczJ4euForNdhGK+1YkL+Op5/ChK0YnUShZTlt9LiEg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=C0H3frrl9g13QRlBhjKELhzhQ8gNK15RDH5chBknLJ4=;
 b=af5q84uBXD8/uwduezc5DlyUBW+hszfgQKabbl1OLjhZNMZ4X4aZZRl1lfayuRuWtx0JXKbNIy0XASpTotxNkr1JckWX2kqMypuNSKWnQr6q4if60a3OLDRale29pVIJOLJvXeYW8MGIuJFLjPCVLM27kFAxgPGfwtGwIoNffR86cX+nRdMfJIcyHcI2G1D0EFBv0fgL6zxopXPte9xBpyH8a4XIRWZCm+6xYeam5wXSFqMoGXLdZmvHpysf3mL+DYnG6xPjscFNzgDEJzVbdxvh3yrzMRI7vVJM7u/a/8IxkF3A7WMtXaaLXcZYXl636nVxhn4AZ3dWlyX4TpsMlg==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>,
        Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>,
        Stefano Stabellini <sstabellini@kernel.org>,
        Julien Grall <julien@xen.org>,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v1 0/3] ARM: ITS: implement TODO and fix issues with cache
Thread-Topic: [PATCH v1 0/3] ARM: ITS: implement TODO and fix issues with
 cache
Thread-Index: AQHZ6ux4FORtu5j2eU+vaSYICEUQjA==
Date: Tue, 19 Sep 2023 11:28:53 +0000
Message-ID: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-mailer: git-send-email 2.42.0
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|AS8PR03MB10084:EE_
x-ms-office365-filtering-correlation-id: 9d81a06c-8640-445e-773f-08dbb9039aa3
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 UPEvL8weTDQQH7T/NfYIclsa1K6pRF7BYooBihXPm6OYivvCLDxmx2cHyzweaMpM9ZSbhsiVeWuxwEIekgJtaKkPl4guP/dphTrJpeAh8ZJm61BlG+Vepch5TwLdORhR8R5sGNDSOU6VuErKXQthjX81vlWN2EMtjy09bZP9bZSCrz2uEjcFJbfSOfq6/m2OMGn6cuFjfdcDzZHbkdYbR5Iklv17ab4qZMWkiZNa6duO9C6iy11xeHMuM4izWTx5RSCC2ccgfc3WPW+29QRJLO1ngt0yLqfqeeZ3i7Q3BHJQbX29yCZjlBuun9tVep2fMSVpbE2yAB2EhcDFk6iz/eB4rUvUah+ZqyuWG/0Y2c1fHdIafpVL6Pez6ngeDZp7dRxc4snOVtuDul5FzAiz4qUt+7NnMmHw67A4EI3XBggKsB/zFmarfuURIwr/xFTQNBi7uyqDW+XLBiUSF1TX56DeTJ/HuwM7133J9P3FMSWk4Gc01TgxJgC6B9lSNKGFaL47XKf42sYSVe9lGbVUuyH9lOz66KAELvTHjnbNSHxDgIr0Jg8BjeBsc+JdMox/Y2cMUMrgEJ2DJPT20LNiiYdLWuOZ3Job7YyDxampwhFE8+NYfXSlLEE8AdDJfFxm
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(396003)(346002)(136003)(376002)(186009)(451199024)(1800799009)(66946007)(6486002)(66476007)(6916009)(71200400001)(26005)(107886003)(316002)(2616005)(1076003)(83380400001)(54906003)(41300700001)(76116006)(64756008)(66556008)(91956017)(8936002)(5660300002)(2906002)(55236004)(4326008)(6512007)(8676002)(66446008)(6506007)(478600001)(86362001)(122000001)(38070700005)(36756003)(38100700002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?DLu49/0jXt6i6hiB9iweLvoYkqFFR+GIhhIY4IOr+LdOncwGj3+OYSLZSR?=
 =?iso-8859-1?Q?HRWMHLoAEj9xgvF1NSpw97u+Lfy4ftwtkfTPcTY1c/R55vU6adr7/WHA/V?=
 =?iso-8859-1?Q?ge0SKJoFvqX6CUCPP6iHh4nQtD1ddM9W8Alhn6nXhtX8AQijgnouv3oCLL?=
 =?iso-8859-1?Q?+bDw95Pj7/Lzsq8yyw8jq0CToEfBQTQ1FVCCo8wr0aLZYlGJUU6WE9mVcG?=
 =?iso-8859-1?Q?dxluDuKz7MlTJOp6m01L8USgbWUL4T44fw5sJsy5+XRfVInA7h+6bSOYQ0?=
 =?iso-8859-1?Q?T7hhzKx8e5JOXl7sjxbemdbYkMJzuPFRCfaXHp88DSx9Oq+Rcz/KChL2ZX?=
 =?iso-8859-1?Q?5YXOSuWmXk7MZGVwGJwsVAi96IaFSpKGDwlysDpucG9RJdWGtkRxjQYGpf?=
 =?iso-8859-1?Q?JoYzGM+FBCoohLCI8qbFUw/Wy3rcEMa0yCvolPguLpusVH5XJzQ1tUZy/E?=
 =?iso-8859-1?Q?LtzA5P3fNGea6Z9U9S22fI49TRu4uPV3KrsUM9BMsa1kyJaZXLYotjIYQH?=
 =?iso-8859-1?Q?01fREsWsu6hENiQk3dSUaUYZa64QrVEAg4YBoKj06To5AM/pU9gHv0Q5yr?=
 =?iso-8859-1?Q?4oNiGJDPyZr947ElqcxOxSdcaqQSeBxdFeFAIbvn8zhXg71dGHdg1cTwh8?=
 =?iso-8859-1?Q?u7B3mc7acs3l6m8T4qx7oY4Kt89w7BPcgUzzpRdFxFj1jGP9oes/zNKHi0?=
 =?iso-8859-1?Q?qjGc6idMsI5JtSZ/dNnl31uIdWoxedFUENz7CApWfXN/IdPhdX0JOikss7?=
 =?iso-8859-1?Q?eFw6lRur1CaLokiVIWbjaXwvUCYzG6uvOkYaqwuyPDcl65V8KEovEOCkh8?=
 =?iso-8859-1?Q?qzQVzo79/GlPBtif3/Skxu4fz7f61E33PjsBs8RfBk4GKz9V+zKkwXEBEO?=
 =?iso-8859-1?Q?l/pzXADYdn8lQzBwx/ihlhCB/xXSany8SY5j901K2OSisudESRUcfaEcpg?=
 =?iso-8859-1?Q?G1RQ9kHpQ7ULF4S0q85iP+07vlo8wk08q1prHGhJgy0iMG3b4/eo7NOOOG?=
 =?iso-8859-1?Q?vqbusfeFNXwrBoN7mMzGgeOrYNXgB9q+N1TuegqDUB+3D8oIASXkeUL8uz?=
 =?iso-8859-1?Q?JgiE7e5zp2No4GJilefdyiZo+ZnnO2w52QKPcc5etCinc1fIedmMwGhpRc?=
 =?iso-8859-1?Q?aV2U2Nf6dpTaiX2Yu0hXowZ2p6LjTTDHkZG5q57ua8w0Bg1K1Zdd+KBf4S?=
 =?iso-8859-1?Q?b4EV1feS0KZx5fawW0VLEUENehMSk9Q/zshKKyfYoRui/VZiMU6wpWhTjS?=
 =?iso-8859-1?Q?rWAAUB2M2KHVWasR2ugWLS9CZZDPCa+TX/m9J4y0NXB7a0i7k0HjGxVSOS?=
 =?iso-8859-1?Q?vGpsGcTz9dYVRGeTLZEc0eEmST0rXl6zMUe13p/BYoI8nrM7By0PO9ar8q?=
 =?iso-8859-1?Q?qV3qQDVi6UvJM7E/qVBJaVUUNenaUAojh97t8YTVEc/HrxaK0E3RIctySx?=
 =?iso-8859-1?Q?ngvRA8yd5MRZ0PoxfwMP9iB2DUToPG2otwu6u0JvcblzCzWMXJHvlT7juQ?=
 =?iso-8859-1?Q?BCVVYeTAOeb2qqpTLD0d9YvcgNbjqNS7TdMEE3QJn076G0qxbVjumgs81j?=
 =?iso-8859-1?Q?qzF39VU2XOCMZmV74eoJYcWI/T5qD3NL1RDzqKzkb1tWJCpQ8X8zBIafy8?=
 =?iso-8859-1?Q?Urd8+gyDzQlzkbt8izQH3cVwyc2ntC3qXryOibAdih+hFhhylyfRIJZw?=
 =?iso-8859-1?Q?=3D=3D?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9d81a06c-8640-445e-773f-08dbb9039aa3
X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Sep 2023 11:28:53.3456
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: bi4dyUnFkmJ+D9xm8lRaQeeWzkhJQmpQBEjNIrhorahAhSXkkcFGqvD4yYmEn9YtJZWJsBKSQ14NgmAa764hNre/6QuCCzOh4o96LNkdCYc=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR03MB10084
X-Proofpoint-ORIG-GUID: CAkP-c2AXg_QKyXymFbOk9zzPkM_k72Z
X-Proofpoint-GUID: CAkP-c2AXg_QKyXymFbOk9zzPkM_k72Z
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.601,FMLib:17.11.176.26
 definitions=2023-09-19_06,2023-09-19_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0
 suspectscore=0 bulkscore=0 clxscore=1015 impostorscore=0 mlxscore=0
 spamscore=0 phishscore=0 malwarescore=0 mlxlogscore=678 priorityscore=1501
 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2308100000 definitions=main-2309190097

Hello,

There were a couple of issues with GICv3 ITS implementation in
Xen. From user perspective it looks like no interrupts are
delivered. I observed those issues when experimented with SR-IOV on
Renesas S4 board. In my case it wasn't a 100% reproducible issue, so
it took some time and couple of tries to fix it. I wasn't sure if my
fix addressed some hardware quirks of S4 board or it was a generic
solution, so I postponed publishing of it.

Later, Stewart Hildebrand had very simmilar issues with his setup. I
shared those 3 patches with him and they fixed his issue as well. So,
I believe we need those changes in Xen mainline.

Second patch ("ARM: GICv3 ITS: do not invalidate memory while sending
a command") is not strictly required, as it just provides a small
optimization, but I believe it would be nice to have it in the code
base.

Volodymyr Babchuk (3):
  ARM: GICv3 ITS: issue INVALL command after mapping host events
  ARM: GICv3 ITS: do not invalidate memory while sending a command
  ARM: GICv3 ITS: flush all buffers, not just command queue

 xen/arch/arm/gic-v3-its.c             | 27 ++++++++++++++++++++++-----
 xen/arch/arm/include/asm/gic_v3_its.h |  2 +-
 2 files changed, 23 insertions(+), 6 deletions(-)

--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 11:46:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 11:46:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604633.942116 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiZBF-00065j-Dk; Tue, 19 Sep 2023 11:46:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604633.942116; Tue, 19 Sep 2023 11:46:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiZBF-00065c-As; Tue, 19 Sep 2023 11:46:13 +0000
Received: by outflank-mailman (input) for mailman id 604633;
 Tue, 19 Sep 2023 11:46:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiZBD-00065W-Sp
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 11:46:11 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20614.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::614])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1f316556-56e2-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 13:46:08 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9406.eurprd04.prod.outlook.com (2603:10a6:20b:4da::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 11:46:05 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 11:46:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1f316556-56e2-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VI27OGNb0/lbYZV1jOYyeFyj7kKu7G/Dobc+5LLKfzrWF5siDoQqkUW85uVqRwZdNGCM5TVDigIUcWGndCLqJxQvXcsufcQ6OWneBjLI2zcnJLGsJLEfYI8Lmvea0ZUby7D4bVfpQDCv7gvztIXTJCc0vBFIAlwBFvxiIV66MZ/jK/FcO4QqUJ2st/9YRgnK/PIXZeFeD1IaKLD0X+HeCCrO4l516DHDQyZzsr0dve3249cKEnJLfgbGRecN5D50DyBPXcQ1v6AywVUX9Fj0fFk5MtHFlLnRcYmqWitUPEzFUpJsjKamQdGrqbRE87n09qurgwTYdpFSEwlI/ozHaw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wN9zawvMhjoZ53DoBECh7cxX9t4/BR8dWT0he8sNyz0=;
 b=i4/V1WGpCq2AYcaP4HBg8muvFXZQSAZ4lPtRljjFX+eWNXyKVFXaPYH5rQg+Kbmsf46v6ImOLRSj+elyYr5b9aPq3IZxK7YOgvmOcSbCHBCbC8agRIE2i6t6QUG+ry3nGZ+LGA5qcX5vcQ1SSGtak41GYBo/hE2OGKHjmKvZEi0bmE54cjY+bTM9LOhr51XixOE6T1oEssRbPB4H+VebWe1h58BxxDyNZXSjgFowSHUCNE2EEyQdam4BCyMgVWx5zfR1UFUvpvvcjojcvs+tnFh7/dF8cBMODSg8u1pS5inXncdZbOJyh6P9lM4LNYrPHVFb3VLbOZEjDdbxk2VV9w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=wN9zawvMhjoZ53DoBECh7cxX9t4/BR8dWT0he8sNyz0=;
 b=sZfOUlrMyrrk3dp1gvC3CBBDMIAQYLjwqYFjNHTqih3NSgtlEpGQmwr5BDiV0DfiNcW7c1c0bZKcNeYanQLAZFzogPoJi8P6i7XvEAoxFqYCZJa4yNbtYjBxKS8UVpJoX0dBehI6hnWN5/PJymhvLsIxM1hn/O75LjmVII8nwj9e2snU0BAmIrDWK5ldX+irhUNFUAsot7eF5JktaBrib+L9i9aBMCIBeITEkfA1q8jN1PhYxLmOw64U9MpBzulCeViQqDaadMKEvtd/C0pkoCJsFj9mj/4BehbpAgzLF/ptpsZkBxDfMeUca7nZn6WbHQ7/WUlD0m9oa/4AU0qkWQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a576bdac-42b2-3d62-dbf5-200fa68d7513@suse.com>
Date: Tue, 19 Sep 2023 13:46:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] x86: Fix check_ist_exit() assertions
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230919103514.1076888-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230919103514.1076888-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0101.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a1::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS1PR04MB9406:EE_
X-MS-Office365-Filtering-Correlation-Id: 53198193-b97e-42dc-2399-08dbb90601cd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pT9gHje5JYBp7mpC5G6fYwrqk7Z03Ei7Qqhqd+GBQdMjYzU4gMx3tK2eIheUTKB0ZC8qgL+QSUrRP+sRHMLyppGbvZS1tIDYtco7I8lcb4NkgKlPlBbshcdIaFeMNOnpIx1pEsk83v33NnIIEVx/5JsfdXYrfiSeE984lpX/P6mPfuvipnYH3XT7+nmp1WvMiiSw5IWsaTPMKcT2LdZCOAj5+LsZPwd2x+kiLG1qUdIJV0DO94aOF10Bin5tXcMhCggyll2XDNZ4eqS65+TfE9oqWxA2+Uf/e5mhzEP4dHfvOvId5Nw20Y8I4CpZ6rDZY3butgSP+36F0hFG4Aki+OA2wPMPKMaQSSvO1z62PmBrW8YFE8hPc4VTM3tg8jo9rH5LUaYkdbYMJoXE9z99CDosOmWibggSHra50AsoIKy+Tt2ix7FKfgI1sZJ3rC0XfUAAzCdSrUXT1R4kWhCAib99Hwaryk2S7xgy9w5o7YJUuJQ4Hz78WJX/Bq0jsl0zUrWgnac5MmvH4tKN+jE8+iioMLqkKczVhB2vJTJmaKSx9c01gSdOhlfhHDDhwFX4TaMcHkl+QVEa3imEyiGNL1glULgwJ8PHg9ZmTHMb1A+NdQWbmiplFmTyu86hgake
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(346002)(376002)(136003)(39860400002)(1800799009)(186009)(451199024)(6916009)(316002)(54906003)(41300700001)(66476007)(66556008)(66946007)(478600001)(966005)(38100700002)(2906002)(86362001)(36756003)(31696002)(4326008)(8936002)(5660300002)(31686004)(2616005)(8676002)(26005)(6486002)(53546011)(6506007)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UXl4cHJuVndVbFozdkRITTZ6VkVrejBrcmZrSGRYckJrTll4aUdjOFNKdUk2?=
 =?utf-8?B?VVlsVlFqVWNmeXRoTGNFSFllTWtjd0RpYWtUcUptWi9GVjVYc1pFSE9PdDZ5?=
 =?utf-8?B?SHhrK1E3MC9Ua21YZEJReDVYVTdQL0xtMk9oaW1GaGVCM3hXNE1ZTTNaYytB?=
 =?utf-8?B?bjFpSFc4bzR1d2hXTFFpMTRHVlVCRU9TbEdBUHozYnpMZU5EcUhadzNwUVQ4?=
 =?utf-8?B?UmljV3FQeTZ5UWxLZjE2Tm1GelJHN1A2NDdkMkt1VHQwa1crRmtyaUR3c1l0?=
 =?utf-8?B?ME9JR1d2ems3Qkc4ZS96S3RYbXJiU2VwMUNUcHVGUnhxS1RyREloS3lhWFZk?=
 =?utf-8?B?TnNEaW1HMWovTHFORGI2SFBnMzUxMGRTT0VoZ2VFeTRsWTJUQ0FMb1VPcDN6?=
 =?utf-8?B?MGYyQVdVSlNHWFZKdFJkM1krME5CL2U0KzVndU11UlV5c3B4R3FYbnJzcmZ6?=
 =?utf-8?B?Z0l3bk9BVUFFeHZNOEl2UkN1TjZvQllwRmNZWnBiNWJLejVxUzEzQTdFLzVq?=
 =?utf-8?B?Y0NoTkpCL1Mvb1pTaTdJcy9VQWxWY2ZiNW1jWkVnUlI3Yk1rZWlrbmxERzd3?=
 =?utf-8?B?ODNNbkpIbEJQZXd2V21Db09YVWNpT1F4a1BXajN1ZVJWOFlCbitsM1JKR0p1?=
 =?utf-8?B?eE4yVHU0QmRzSmFicm5tZlZvYkVEZWZkRGE5UDcwcGE1Yzl4Y05iTjRVTFFS?=
 =?utf-8?B?SlZ0WC9NNWREbkpFRkJpQ2FJc3p0cy9kRThXTkppVDNWNkNxUW5ic3VqZncr?=
 =?utf-8?B?V1ZxVVlvS0JVWmlyVDllOWgyMFF0T1hTRWlnaTU4Zi9Ua2VoUjJiSjg1KzFG?=
 =?utf-8?B?V0pVMURUWks2UG1BWmovRUJ3cjNieFRIS1JWK3dFMzRKUk5hY0dCMGlJRTE1?=
 =?utf-8?B?UjhTcnQwVjhLcXMrUHZEVnNmWFpFVGJzQnZoOEQ0VU8raDUzV2N3dEVJZUwz?=
 =?utf-8?B?SUMxdWZJUWEydGwyWmVUd0pkbTlWRHM2NzNHWGJvOFpuUWtaam5KUytlL2dC?=
 =?utf-8?B?YTFEdUZtbi8ySm50cnFmM1FwRjBnNXl3c1pmbnh3UHJ5cHFQN0NFSloveWRZ?=
 =?utf-8?B?b0NNL01nTFVBZEVJdmE5MzU0Sk40Y3g0TUpPU3JmcWhqMFdiQVdQVTlqbWNw?=
 =?utf-8?B?YmhyUWw5UG95clVhU3lCdG91ZHovWXdwdkVxMGNGR0VQditmQkhXSnN4NTVl?=
 =?utf-8?B?aUZyWlBLL09wMWN5VFlCSGFyOStaVXFENFNBSUVWQXlhK2dLRlNZQ1Z1bEtS?=
 =?utf-8?B?WGVLMWFNZktaajdUUlhtY1Zpa2ZBMUhubnpYaG1WM0x2SlNpWUliTVRwSWl6?=
 =?utf-8?B?U0I2RlZ3SmpjWkVjN2UzdkhnMGdFTkFWblpoeGxBaElFMGVKOUY3M1FKZGp6?=
 =?utf-8?B?Yng5SW1XaUhhbGVzcjNyaVFCYlVqVnJBNlZ0UkVTb0laL25PdDJHVm9ma3ZV?=
 =?utf-8?B?bjFZZEtIMUZCTnhvTUNOMzlwYWZSWC9WYkYwUGNTTDRydFlDQ25uckpRMXRu?=
 =?utf-8?B?SDhqaDFHY09rZDdQN1NsMTZpVzcrNGpqY0N5WElMNUkyN1pNb0JGcktLZU9j?=
 =?utf-8?B?NDcvZy9weGdnR3ZmOXdHRWxsOVlDeTBTM3JEWUpnVTQxUmlMdmZ0VW14Q3R3?=
 =?utf-8?B?a3IvYk05ZkpQMytLYzRyWTNKZUhHeUQrV0FPdVNTQ2o5Rlp0eFkwL0lNeWYw?=
 =?utf-8?B?ZTliOUhRdy8zUlRuQzkwUzFCeE9McU9sd2Yrb0kyMlFXaG1Ic3ZiV2hlcmZK?=
 =?utf-8?B?UXZ1Q25VK01WMzN4SmI4TDJIUG1YZ3praGUzTFVmSnlKY3lST21mMXNZT3U0?=
 =?utf-8?B?SU5uZ0tyekNVZW9pOHY4bFA1TlIzR3BMek5xcGhadlVtMWFETktLdlBEWGls?=
 =?utf-8?B?NjFiblVVQlVyeHN6c095MnU4MDRCeW5OYk1XNWtlZkUrZGZmdzdTRzJnYUI3?=
 =?utf-8?B?Z0N3VkFOSm4rbXdIdm5Hc3ZIWjExUEluY0VXWlBvbXgyR1V6ZFMzSnZDWjNI?=
 =?utf-8?B?c1RZNFVUOEhxY2dhdnloczZ1cVhOZnE3dUJKRnZJUjVlelVqeTlFTDlmd3R6?=
 =?utf-8?B?d3lhd3dLelh0T3kwVUUrZ0RZcFFpTHFQWVRocElPTThNMVBMYVpIdFB1VHdm?=
 =?utf-8?Q?7SdsKjsoZ9BplA/d/El2PGWzM?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 53198193-b97e-42dc-2399-08dbb90601cd
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 11:46:05.5432
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /j8qAvlOHhUllq3UBGpp9v8Mi5hebJ4H3Uk8pJuyYDPQgKRY/1tQOkFjYfZrjeTe3iZAt92NA3F2yOC5wMg6GA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9406

On 19.09.2023 12:35, Andrew Cooper wrote:
> The patch adding check_ist_exit() neglected to consider reset_stack_and_jump()
> leaving C and entering one of the Xen exit paths.  The value in %r12 is stale,
> and depending on compiler decisions may not be 0.
> 
> This shows up in Gitlab CI for the Clang build:
> 
>   https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/5112783827
> 
> and in OSSTest for GCC 8:
> 
>   http://logs.test-lab.xenproject.org/osstest/logs/183045/test-amd64-amd64-xl-qemuu-debianhvm-amd64/serial-pinot0.log
> 
> The justification for ensuring ist_exit is accurate in the exit paths still
> stands, so zero %r12 in reset_stack_and_jump() to indicate a non-IST exit.

I did think of this as an option, but I don't think this covers all cases.
If we take #DB while in a PV guest, that'll be an IST entry. Assume further
that we re-schedule before re-entering the guest. Upon the vCPU being
scheduled back in we'll have %r12 clear with an on-stack indication of
having taken an IST guest exit.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 12:10:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 12:10:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604649.942125 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiZYj-000457-L9; Tue, 19 Sep 2023 12:10:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604649.942125; Tue, 19 Sep 2023 12:10:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiZYj-000450-Ih; Tue, 19 Sep 2023 12:10:29 +0000
Received: by outflank-mailman (input) for mailman id 604649;
 Tue, 19 Sep 2023 12:10:28 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qiZYi-00044p-6M
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 12:10:28 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiZYf-0001dk-GP; Tue, 19 Sep 2023 12:10:25 +0000
Received: from [15.248.3.4] (helo=[10.24.67.44])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiZYf-0000qY-BE; Tue, 19 Sep 2023 12:10:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=OWfa1Hl24jQsCwOo7yz4/pEzmWrUxo8qXxtYCTzH08o=; b=KcTpeWvSsFyyJJSqIy5st3OLdP
	z2DVOeDiqzRNXfIYAWAxXbmRjnkVVNGT7DsS5hXE+LkVJ9PC7eQkuYsTpQOpUqqTqmnLXWd9R3kZV
	StqX2bVPLUg5kBumz9pKuRB4JEivXpyb3K+hBPt3wVvO5OfZxn2J8/u1oLgiSgGO9JAM=;
Message-ID: <41a2cdf9-8fd1-418d-abc9-1fe4f3fd8b5e@xen.org>
Date: Tue, 19 Sep 2023 13:10:23 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: xl dmesg buffer too small for Xen 4.18?
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
Cc: Chuck Zmudzinski <brchuckz@netscape.net>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <b20bdc7e-4c07-4bde-b206-4142310211d4.ref@netscape.net>
 <b20bdc7e-4c07-4bde-b206-4142310211d4@netscape.net>
 <9baf6bec-49c6-474b-a5e3-5f0473aaffc7@netscape.net>
 <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
 <ZQlHj5rjMaYj8Z4e@MacBookPdeRoger>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ZQlHj5rjMaYj8Z4e@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Roger,

On 19/09/2023 08:02, Roger Pau Monné wrote:
> On Mon, Sep 18, 2023 at 07:49:26PM +0100, Julien Grall wrote:
>> (+Roger and moving to xen-devel)
>>
>> Hi,
>>
>> On 18/09/2023 19:17, Chuck Zmudzinski wrote:
>>> On 9/18/2023 9:00 AM, Chuck Zmudzinski wrote:
>>>> Hello,
>>>>
>>>> I tested Xen 4.18~rc0 on Alma Linux 9 and my first tests indicate it works fine for starting the guests I manage but I notice that immediately after boot and with only dom0 running on the system, I get:
>>>>
>>>> [user@Malmalinux ~]$ sudo xl dmesg
>>>> 00bee72000-00000bee72fff type=7 attr=000000000000000f
>>>> (XEN)  00000bee73000-00000bef49fff type=4 attr=000000000000000f
>>>> (XEN)  00000bef4a000-00000bef4bfff type=7 attr=000000000000000f
>>>> (XEN)  00000bef4c000-00000befbafff type=4 attr=000000000000000f
>>>> (XEN)  00000befbb000-00000befbbfff type=7 attr=000000000000000f
>>>> ...
>>>>
>>>> I have noticed the buffer fills up quickly on earlier Xen versions, but never have I seen it fill up during boot and with only dom0 running.
>>>>
>>>> Can increasing the buffer fix this? How would one do that?
>>>>
>>>> Thanks
>>>>
>>>
>>> I see the setting is the command line option conring_size:
>>>
>>> https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#conring_size
>>>
>>> The default is 16k, I tried 48k and that was big enough to capture all the messages at boot for 4.18 rc0. This is probably not an issue if the release candidate is being more verbose than the actual release will be. But if the release is still this verbose, maybe the default of 16k should be increased.
>>
>> Thanks for the report. This remind me the series [1] from Roger which tries
>> to increase the default size to 32K. @Roger, I am wondering if we should
>> revive it?
> 
> I think the relevant patch (2/2) will still apply as-is, it's just a
> Kconfig one line change.  I'm however thinking it might be better to
> bump it even further, to 128K.  From a system point of view it's still
> a very small amount of memory.

I don't have a strong opinion about 128K vs 32K.

> 
> I'm happy to repost with an increased buffer size, but only if there's
> someone willing to Ack it, otherwise it's not worth spending time on
> it.

Sorry that patch fell through the cracks. I would be happy to ack the patch.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 12:22:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 12:22:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604655.942139 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiZk1-0007XX-MP; Tue, 19 Sep 2023 12:22:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604655.942139; Tue, 19 Sep 2023 12:22:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiZk1-0007XQ-JC; Tue, 19 Sep 2023 12:22:09 +0000
Received: by outflank-mailman (input) for mailman id 604655;
 Tue, 19 Sep 2023 12:22:08 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qiZk0-0007XK-Gt
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 12:22:08 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiZjz-0001ss-Py; Tue, 19 Sep 2023 12:22:07 +0000
Received: from [15.248.3.4] (helo=[10.24.67.44])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiZjz-0001OF-KR; Tue, 19 Sep 2023 12:22:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=+HlKPrfN3dbsX+xf8n0wkj+YoqETofBM6Hah/AwTfy0=; b=NxNFUVCEMw47ilaKB5Y5T0lFSz
	OyGUnLTJ86SGdDNHBnqVBuMPKLfZb7YrHMHDcwUt5AA59IRdNESrz1aF4xkpncdY/LLolONYG6k9f
	9Xz5QUytXrfH3AzQvAFMmeIaGsOixsxDSIxVrr4J6TPXUp+qYpy7kY/KVqL1GgsLIyHo=;
Message-ID: <613dc688-0336-4f9e-b0e8-db67e3987a74@xen.org>
Date: Tue, 19 Sep 2023 13:22:06 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 1/3] ARM: GICv3 ITS: issue INVALL command after mapping
 host events
Content-Language: en-GB
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
 <20230919112827.1001484-2-volodymyr_babchuk@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230919112827.1001484-2-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Volodymyr,

On 19/09/2023 12:28, Volodymyr Babchuk wrote:
> Implement TODO by calling the INVALL command.

I think the TODO was meant to be an optimization because AFAICT we are 
already sending an INV command per event.

>  It is working on real
> HW, so there is no sense in not doing this.

A patch should be justified based from the spec or an errata. Not that 
fact it works on a real HW. At the moment, I don't quite understand why 
you need one because as said above, we are technically already sending 
an INV per event so we should be covered.

Removing the INV and using INVALL would make sense as an optimization. 
Yet given the current code doesn't seem to work, I would like to 
understand what's the problem of using INV.

> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> ---
>   xen/arch/arm/gic-v3-its.c | 17 ++++++++++++++++-
>   1 file changed, 16 insertions(+), 1 deletion(-)
> 
> diff --git a/xen/arch/arm/gic-v3-its.c b/xen/arch/arm/gic-v3-its.c
> index 3aa4edda10..a9c971a55f 100644
> --- a/xen/arch/arm/gic-v3-its.c
> +++ b/xen/arch/arm/gic-v3-its.c
> @@ -236,6 +236,19 @@ static int its_send_cmd_inv(struct host_its *its,
>       return its_send_command(its, cmd);
>   }
>   
> +static int its_send_cmd_invall(struct host_its *its,
> +                               uint32_t collection_id)
> +{
> +    uint64_t cmd[4];
> +
> +    cmd[0] = GITS_CMD_INVALL;
> +    cmd[1] = 0x00;
> +    cmd[2] = collection_id;
> +    cmd[3] = 0x00;
> +
> +    return its_send_command(its, cmd);
> +}
> +
>   /* Set up the (1:1) collection mapping for the given host CPU. */
>   int gicv3_its_setup_collection(unsigned int cpu)
>   {
> @@ -593,7 +606,9 @@ static int gicv3_its_map_host_events(struct host_its *its,
>               return ret;
>       }
>   
> -    /* TODO: Consider using INVALL here. Didn't work on the model, though. */
> +    ret = its_send_cmd_invall(its, 0);
> +    if ( ret )
> +        return ret;
>   
>       ret = its_send_cmd_sync(its, 0);
>       if ( ret )

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 12:52:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 12:52:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604663.942151 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaCt-0005hZ-Rf; Tue, 19 Sep 2023 12:51:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604663.942151; Tue, 19 Sep 2023 12:51:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaCt-0005hS-Ox; Tue, 19 Sep 2023 12:51:59 +0000
Received: by outflank-mailman (input) for mailman id 604663;
 Tue, 19 Sep 2023 12:51:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ezs9=FD=citrix.com=prvs=619432e5c=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qiaCs-0005hM-6z
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 12:51:58 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4ea6ff43-56eb-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 14:51:55 +0200 (CEST)
Received: from mail-dm6nam10lp2109.outbound.protection.outlook.com (HELO
 NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.109])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 19 Sep 2023 08:51:31 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6600.namprd03.prod.outlook.com (2603:10b6:a03:389::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 12:51:29 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 12:51:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4ea6ff43-56eb-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695127915;
  h=from:to:cc:subject:date:message-id:
   content-transfer-encoding:mime-version;
  bh=LOVcqu+XxgY0eBNdYiKKZSJYbDqtTpxBVhKhgihp3RQ=;
  b=g/Jm+iKmTejXAZUEI0H0A90GG3ekVoCVQepEqkwUqiOQAKLC0WlMesKB
   3uMVgBpz0xgFtgauV+iCbvp6MQMNFxhZZstu7yq/BUBozM74MEaWF6VC8
   sUNYfZEyb2FOnqTAVnUuC6yw2+zo2trqTOqE/2N9wMpkfitQnsc11y3We
   g=;
X-CSE-ConnectionGUID: 8a2CIi/iR5mC5anWRh7tYg==
X-CSE-MsgGUID: 1MrtRFJSRBmXNsjkRnMCMg==
X-IronPort-RemoteIP: 104.47.58.109
X-IronPort-MID: 123099920
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:HkSB26xGVBQvyDcOK3p6t+f+xyrEfRIJ4+MujC+fZmUNrF6WrkUOm
 mFMCm7VP/rZN2L9LtwjOd/noExVvMOGmtdhGVZpqSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EkHUMja4mtC5QRvPKET5jcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KTFHr
 9c5KXcMVE2GrL+/xo2BSrZwt8t2eaEHPKtH0p1h5RfwKK9+BLzmHeDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjiVlVQguFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WUxXKqCdhKfFG+3qdPmkGp6E4oMjcTZX2go/qDjGuVft0Kf
 iT4/QJr98De7neDXtT7GhG1vnOAlhodQMZLVf037hmXzajZ6BrfAXILJhZDYtE7sM49RRQxy
 0SE2djuAFRHsqCRSH+b3qeZq3W1Iyd9BXQZeSYOQA8B4t/iiII+lBTCSpBkCqHdpsLxMSH9x
 XaNtidWulkIpcsC1qH+8VWZhTup/8DNVlRsvlSRWX+55ARkYoLjf5av9VXQ8fdHKsCeU0WFu
 38H3cOZ6YjiEK2wqcBEe81VdJnB2hpPGGGM6bKzN/HNLwiQxkM=
IronPort-HdrOrdr: A9a23:P/o75aql/rvLohCd0wkrae8aV5tULNV00zEX/kB9WHVpm5Oj+v
 xGzc5w6farsl0ssSkb6KW90Wy7MDrhHZ4c2/htAV7QZniThILIFvAi0WKG+VHd8kLFh59gPM
 tbAtND4ZjLfCpHZKXBkUmF+rQbsam6GcmT7I+woQYPPGMaEtAZ0+pgMGam+w9NNXp77PICZd
 ihD6F81kadkAEsH7qG7w4+Lpf+TrPw5ejbiCo9dlsawTjLoSKj7bb7FxSC/xEFTj9D+7ct9m
 DZjxf0/OGGv+ugwhHR7nTU5ZhNgtfto+EzYfCku4w4Oz/oggataJ9AX6SYvDcpiOuz6FAs+e
 O8xSsIDoBe+nnVdmGwrQDM3xD60DEyznf+xViTkRLY0KvEbQN/J9tKgIpYdhfD0lEnrcFY2L
 9G2GiI3qAnaS8o0R6NvOQhmHlR5wSJiEtntdRWo21UUIMYZrMUhYsD/HlNGJNFJy7+4JBPKp
 giMCmJjsw2TXqqK1Ti+kV/yt2lWXo+Wj2cRFIZh8CT2z9K2Fhk0kox3qUk7yc93aN4b6MBy/
 XPM6xumr0LZNQRd7hBCOAIRtbyInDRQCjLLHmZLT3cZfA60kr22s3KCYgOlb6Xkd0zvccPca
 36IQ5lXLsJChzT4c7n5uwAzvmCehT/LGbQIgc33ek8hlS2fsudDcS5ciFkryN7y89vRPEza8
 zDf66+S8WTW1cGObw5hjEWCKMicUX3pqUuy5kGs6XnmLOGFmStjJ2ATB/6HsukLQoZ
X-Talos-CUID: 9a23:U5knUG6oh43BCbj9qNsspEdOMeEkNXznkXL7fka+NlxpF6GkRgrF
X-Talos-MUID: =?us-ascii?q?9a23=3An4xnEg5c/WJUKVN3u8IX7rAkxowxxr6yMm4vqq8?=
 =?us-ascii?q?svvmiLi5zATG4pxG4F9o=3D?=
X-IronPort-AV: E=Sophos;i="6.02,159,1688443200"; 
   d="scan'208";a="123099920"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=D25jEhPDuoOnqchK7hncWB7FmNc453mEuqiH/4H01sBoaKYwMD8abk4RlTf0SLl0bWyAutAmT0zQ9PmeFZTODsiE2hxyqeDGWrSmw7jQ/3KoOBA0pANtERLA0cHr8lJTCSZ72EURSPkWZOs6aiw0V6Om7BVC5og3duDTpvgWiXN8eO6Xe4HMnMae1aEQ5nXUQkOWE7DlzGgIZAIqKOMcr4pYlZAUFsvDB0qS7sr8u8nXKDTnd14PsVzwPyoTCJ9gIfaj/Nn9T0XawpFT3wsgC3+Sg6j+iT7d3yQ51mPQ1zL3nrneC1QgDQCQLgo/5jzQLf/eg8G6J7Mb5skd6XS9ow==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TrLVvebv+NZb+UF1SZeb7lSiHynKe/N7TNyKlKbc5VQ=;
 b=JERaL9WvL3y/ZdcxkwD6YwjBkT3FLe58jzYu06uwjG5nq7KI1s721l3OlsnOelv1RMwHxas/zjYdMIGf8qtoXK696of151S8repad8LQbWUCMyR/1AofdLf+hoeCeUI1sz3dA7b/ioQxdby1VdOuez1RP9wwTfRE/spTi44kTvLMkqZKemO0vjDHJ871yXq0Vs7NsCeAFlk4Z8K3xdEfyUZCe9zF7RGpuoObIKFgYBRBNqpV7tLNBf2Cw0AFxZPwuKApLU0O/VKKOy3s0OJd+mbsQWGhfegxEYv6il4RtyX7ShBKgtVMUv/UmHbED7U/vVsjc5iZHPdfzATHrKBIYQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TrLVvebv+NZb+UF1SZeb7lSiHynKe/N7TNyKlKbc5VQ=;
 b=my7jIOe2qedWV0qLeXrlWdjsXCz4bekIl5vRBYLTtqmIwECL2c94LoCCeVvJoVu1Vn92/XJl9vC3EAH4nRLUg/lGsIzP9fNY2quGHW7ZTliJaeYd3l9yOBnF8lkkSyitgydgY/yLHFbB+aK0sMjbeYd8Mp2dspMhaqTksvnX9OA=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
From: Roger Pau Monne <roger.pau@citrix.com>
To: xen-devel@lists.xenproject.org
Cc: Roger Pau Monne <roger.pau@citrix.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v3] console/serial: bump buffer from 16K to 128K
Date: Tue, 19 Sep 2023 14:51:18 +0200
Message-ID: <20230919125118.12657-1-roger.pau@citrix.com>
X-Mailer: git-send-email 2.42.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P123CA0268.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:194::21) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6600:EE_
X-MS-Office365-Filtering-Correlation-Id: 1ef7e158-fd12-412d-4a58-08dbb90f2424
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wjnNERmiGB1PpkRLgG3Vi82ifzcYw+N102iYO7xKtomoNRwO/IlDRv7n/Lr/q6Vvs2jxAxpjwrS8OZlj2//2alhbzsDsP2x9MhI/DhYOuudDbXzaDP9gsG5JF0pBRtQDm9L5YKP4zYUaHEOwyZnoSEGBr1tGbL/jbz1az0wTBlflgf1fxGdjQVZxcbSwywjeLTNUPwZ3KjqVwA7+xTO9o801WN2+NR3rp2LQkEEVO/kWT41+ehDjq91kZLKScMq4PSmyVzoQ/Ot/HGcMAoijDJ8lus7/KiJ15X8qY940hBv8iK2Z1BOKc3KtS82P0XA226EruZiUbgB48R8UEPrvBJOXQc2FWDJ7ha0cIHESb/GJwH1wf9mda0+X2m0TObvM+8gQwAVnqOGjWDwHZxwi4wpB6jwVJm4zQe04iJcxZ2S7L+WG1fDij/tPkUuPkxNh9GptVJT0L7KjNF6uYC3ev545Lxu3V5IQ2/a0iR1RR0idyrWRShAtbT4jxaDEr9p8VpcjyTK0UB8SRmjtRZbwu6ErNsxIOjuzhz3NyC5nf7cb91gBiK2ATo4Na0UyYvoK
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(366004)(346002)(376002)(136003)(451199024)(186009)(1800799009)(83380400001)(66946007)(54906003)(6486002)(66556008)(66476007)(38100700002)(82960400001)(6916009)(316002)(36756003)(86362001)(6512007)(6506007)(1076003)(2616005)(478600001)(26005)(8676002)(4326008)(2906002)(8936002)(6666004)(5660300002)(41300700001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QkxIK0ZjK2daV0lZM3cyRlNNQldFRExGdFVIU2R2MzgvbExLN2hEQlhIRzRh?=
 =?utf-8?B?cGxMVEM3YXJkMi9vdE10cnVNd3RCSFpmOWxZZzBoTklyWS9GUytoY2R2MTdZ?=
 =?utf-8?B?bUdlM2tXY2Y5b0FUb043RHlJWGNZeldGLzlndEVKRHU4NG5KVWRrcE4wOXVx?=
 =?utf-8?B?NjhRcG1vMGwzcGE5Y3JBNXBGMFV2TnplMWZiNTFsTXVlVEZPNzUrQ3VwUjE4?=
 =?utf-8?B?cnNsMk1oalZGK0FqRHN5dDl3MUJqSTFtNXlaOURyNStsUnRkVDEzRUgxMmFs?=
 =?utf-8?B?MTRjL0VKUlMwdXlOcncyQUJBTTVnNlkzUEhPRU5XOE5Ta0VlWmpuSWlWaUpM?=
 =?utf-8?B?Yi9pa1ZrdnZOUFpZWWRkSFkvOWRvaWF5a2xPOGg1NjErM0J6WjJmMU9LV0ln?=
 =?utf-8?B?Sk0zZnhianBpS2Y1cXVZNWJsNXV3eWlvczRyYVFxSm5INlU3TVhick1OMHp2?=
 =?utf-8?B?Q3NqNGgzdFVDRjJVSmptTlNNSUY1bmIyZ3ZvajNEN2NjWHMzbXY0aEdyWDZF?=
 =?utf-8?B?TjU2dWhuK1FQWk9yN2c4ckRiQVVhTFJ1Sm4xWFpBalJ4T3ZMM0xwTEN2UzAz?=
 =?utf-8?B?djNYbk56UWRiVlB4RE5Tb0Q2Y2h5ZlFPYlhGbWRRVzNTMHMzV3RKNWtUYjh4?=
 =?utf-8?B?VFZpL1hhYWhRcFYwbHJ4aUZRM21rV080Q01adlR4RWlqS2Zhak5jdzBVRmNM?=
 =?utf-8?B?YmgxUzFFMXVFODlkblc2RFhWTVYrYWV1QjE5aEFHUFl4MVROOVNPUE9EaEk4?=
 =?utf-8?B?RzYxSkJGR2h6MURRL1psclA0dEM0RTB2cy9pZDl1Y1E2UFcxYjR4OUxnNnNO?=
 =?utf-8?B?YzVLREFwRHk0eXE4eDNibjVBNThGV2RKR1pPdWxxemE4TWhERTgvQi9OODBD?=
 =?utf-8?B?REEzcUxzN1BSVjd1VWRyVzlaSnRKeXVJWVpHdVh4cXlkaGp3QVFUdE8zZW1M?=
 =?utf-8?B?L3kwQzlxTU03bUhOSnFsRm9HeG1oaVU5eHZ1bkJ0eDJQUVI0M29zR091VWV3?=
 =?utf-8?B?Smp0amZ4d1I5ZXhJRkx4UTFDQmlPRlNURmQ0eWd3NW85alo5WWJ6NDZqY1U4?=
 =?utf-8?B?WjhMVVFYcVh4Mno0Q1ZYcVVwQnhTdnorQ2tWbysvSStpWmUwcEh4V05FUG1S?=
 =?utf-8?B?blZIdERhbEI0dDZadzlxM2xwcnhnUXAxR1BDM1l6TUJWenIyMDhqaHZHQjQz?=
 =?utf-8?B?STM4TlN6aWZTb0ZPbkZLa2dDeGpOTWd6NDZRV3ZITTNXcm9FWGwxamx2MjlD?=
 =?utf-8?B?aWkzenNtakp2UUEvNHB5MnlvU3EzdjExL3p3Vm52Nm1zOHpRbEc5elY1Wm1U?=
 =?utf-8?B?cXMyVnRUc2lKS29yTXlSV295L3BQYlppMWdySitMUnBud09sMEdtc1o4MUs5?=
 =?utf-8?B?OU1Nd3dIK3EvaWtwTU5PT0tvOEFxVUZ4WTY0TVdsSW43MHlSSmNQNWg3OEFP?=
 =?utf-8?B?S1RXcTRJRENrdWRndlRZQkQzUEdMQnljaTczWHZNazgvZGtxeE5nTi9neUcv?=
 =?utf-8?B?bUg1Qlc4Z2U1cjljMkliMXZmQWppWkJGQ3NUc3l0RFhjQjI5N2g1RXpjb2ti?=
 =?utf-8?B?d2ZoT3VZNmlaMGVOTlBwTEJmQ1p0WnMzd29FdGkvaExpV3BPK1dBRmVQU0pz?=
 =?utf-8?B?RmN1Z0NlL2k5VVQxd2JpSkNhTjQ3Q1Z0dHo0K0ZKSmNuNlFDVlNnWWtKNERr?=
 =?utf-8?B?N1lJZWJ5SVlQSE1QUGxmUGRxNTJaSERXT2pYblZ4RnRydjVHOHVSSDZJWEVo?=
 =?utf-8?B?UXBvSzM4V1VqQ2tvUVZHOW9Nay9BU0lEV3hiOU84dHBab3g3RTFlMjMrQkdF?=
 =?utf-8?B?akcwck1iOC9JVzgxbkx0R3dMVkVDNm44OWRBS1RHaHFTZUpDRlZtNVVvOHVX?=
 =?utf-8?B?Y2ljNGdhbzI0V3FPajByOXpXbzlwNFkwR2FnMyt1SkxGQUFISTBLNTViNmtZ?=
 =?utf-8?B?SjlSTVN5azhOcTMrSzRBRVAzQ3YyZ2RpS0MveXdleFR4akpVY2VsaHp6U1pa?=
 =?utf-8?B?THRrZWFQamtzRlBmRk04Q0xsRFdYdWo4Y0lrSEE0bVpValJJcjVtK2NQRE1J?=
 =?utf-8?B?bnJySHRmVUxjbkMrOVpDajhJc0ZUNmlhaDUzc1VGYUJaV2NRdndhdTdzSkdG?=
 =?utf-8?Q?j5pgAaew6ZG96oCgeBzBDUiEP?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	uwFT9mUYfUxO3GPWZKuztgGiiYs+5jdJ8kv16K6pyxxZb2Hpe4HgRZffJkRMD/7bsPC/sVL7OBoFLNBgHuNSk+4sS9kLYouAgHLjALO/yRlPphSTsuCNzKRFy9P3HuPTXMEbMAeXccUr29Du981oCwFPD7OgZpb1bavMBLOQ4fjD3bK0u0KMHrXa5y//kyt4N4CmDLw9amOMDPQFQy73k5U2g4JJI9BIf1JPh3+F0nXUBL9/1vFAMb8QE+dLVba8xbEP4I8qukCnoSN+ncYBnpojmFh+kYTyscn5Bg0TOm7Pf/txgJniJvHvmnXTB5KFV1wslnmwf8+e1TAzZ6jUQ6Oe5spZVS7RjeoH6dPLUyq/jC8DtUNwNNrokrOFBXMspQfGZSEvLjyckw2CV/KKFlLhk7MMygu8K8zQx835MHw6XscSEkGcDej6cq7+ytgU491jQRhItdmiFh1/8tZ7TQ339EisrXAuhw4+BX3trpVlPIZ1dko91XrWwly0S/imKLxy0Xk9+PIyjWFQqYo0yJD3nbQxsF3oX4ZyLaq9bMMDmVoJtBzThPCYm06cl+k6Xqf8iUi3JKdhrT2bozX2ykMaDSOgTf4XQ0QgTKZBHtd7mjbxuivhxsh1Qg41XEUJ708S4iAwhjGyg/gzscZerr+3uqO0iBdwDmiVjxTq6NegQTskLXihO27EkFPTHwaHsRl/Xqjofqu4dS0dYw0qODHopvJryydN/doF51Z6td/DshRedS066XjZXb87238g41zTknKEdyp2I9vG1NaPgb9F1PBHeX8MHUq8bob+CoD3zXAtgsoFPS4laJ88Z0KBzWzBCinCWKK4eepcEyvGY5jZqWqDWuMe9eLa0qEn1Qw=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1ef7e158-fd12-412d-4a58-08dbb90f2424
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 12:51:28.9406
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tzns041LzU/KcCix4MjhAPplPhu7x6vugj2GePpC+NyLVxeeAqUTarlNBCT8eE+weIvqymDeFRLc5DPr0V+6mw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6600

Testing on a Kaby Lake box with 8 CPUs leads to the serial buffer
being filled halfway during dom0 boot, and thus a non-trivial chunk of
Linux boot messages are dropped.

Increasing the buffer to 128K does fix the issue and Linux boot
messages are no longer dropped.  There's no justification either on
why 16K was chosen, and hence bumping to 128K in order to cope with
current systems generating output faster does seem appropriate to have
a better user experience with the provided defaults.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
--
Changes since v2:
 - Bump to 128K.
---
 xen/drivers/char/Kconfig | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/drivers/char/Kconfig b/xen/drivers/char/Kconfig
index 06350c387371..1cd9cddfe1bf 100644
--- a/xen/drivers/char/Kconfig
+++ b/xen/drivers/char/Kconfig
@@ -77,13 +77,13 @@ config HAS_EHCI
 
 config SERIAL_TX_BUFSIZE
 	int "Size of the transmit serial buffer"
-	default 16384
+	default 131072
 	help
 	  Controls the default size of the transmit buffer (in bytes) used by
 	  the serial driver.  Note the value provided will be rounded down to
 	  the nearest power of 2.
 
-	  Default value is 16384 (16kiB).
+	  Default value is 131072 (128KiB).
 
 config XHCI
 	bool "XHCI DbC UART driver"
-- 
2.42.0



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 12:53:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 12:53:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604668.942162 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaEG-0006F6-5I; Tue, 19 Sep 2023 12:53:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604668.942162; Tue, 19 Sep 2023 12:53:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaEG-0006Ez-2N; Tue, 19 Sep 2023 12:53:24 +0000
Received: by outflank-mailman (input) for mailman id 604668;
 Tue, 19 Sep 2023 12:53:23 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qiaEF-0006Er-Dg
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 12:53:23 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiaEE-0002iF-UJ; Tue, 19 Sep 2023 12:53:22 +0000
Received: from [15.248.3.4] (helo=[10.24.67.44])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiaEE-0003eO-OT; Tue, 19 Sep 2023 12:53:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=8GXwf9VlifAazCCx2lnk//5Ugfr9OwhelbhG+2o7u0c=; b=Q0W5yZypk9t4jJvjIL1GoxMtvb
	UqrHLuxSECcplCH30iIjakRuA5yjBVpUzABwMVNNkYeHZXJXylvFJzoxp8+ZTMK1gKGLVnOS8AFFE
	1X4QnAfJBTNSbk9BLXksADzympiNl6mOnkgbMWFNBVX6K5IQTJH49+E8NhnPx5atrhVg=;
Message-ID: <6b52d9ef-d054-41ba-9b77-059d3e0ead34@xen.org>
Date: Tue, 19 Sep 2023 13:53:21 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3] console/serial: bump buffer from 16K to 128K
Content-Language: en-GB
To: Roger Pau Monne <roger.pau@citrix.com>, xen-devel@lists.xenproject.org
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <20230919125118.12657-1-roger.pau@citrix.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230919125118.12657-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Roger,

On 19/09/2023 13:51, Roger Pau Monne wrote:
> Testing on a Kaby Lake box with 8 CPUs leads to the serial buffer
> being filled halfway during dom0 boot, and thus a non-trivial chunk of
> Linux boot messages are dropped.
> 
> Increasing the buffer to 128K does fix the issue and Linux boot
> messages are no longer dropped.  There's no justification either on
> why 16K was chosen, and hence bumping to 128K in order to cope with
> current systems generating output faster does seem appropriate to have
> a better user experience with the provided defaults.
> 
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>

Acked-by: Julien Grall <jgrall@amazon.com>

I will commit it in a couple of days if there are no objection.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 13:02:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 13:02:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604674.942171 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaN1-0000Ry-VL; Tue, 19 Sep 2023 13:02:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604674.942171; Tue, 19 Sep 2023 13:02:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaN1-0000Rr-Sd; Tue, 19 Sep 2023 13:02:27 +0000
Received: by outflank-mailman (input) for mailman id 604674;
 Tue, 19 Sep 2023 13:02:26 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qiaN0-0000Ri-12
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 13:02:26 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiaMz-00030q-GL; Tue, 19 Sep 2023 13:02:25 +0000
Received: from [15.248.3.4] (helo=[10.24.67.44])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiaMz-0004Ad-8g; Tue, 19 Sep 2023 13:02:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=X8P456VT+2hW4VKsO70wl++oFF8AU9/cTj+m5IhFtbI=; b=XWNBLIE2bCxBzhWlD5lXoqI7w3
	9gGRxGbN0MCUVblC0WYJSSnLKlRKkF4xbPPMlLREMONl9fY5xZauNklPksHHSJTdkpheGdD2P7qSq
	lH49wQRiQX7dF75ZfzhGFH4CDeAut8+szZJ9FO3ynPbmO7rnHMxRS6RdZtRDV7fJKZFY=;
Message-ID: <1614d73f-72b0-44f2-8e34-0e6c58a1a375@xen.org>
Date: Tue, 19 Sep 2023 14:02:23 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 2/3] ARM: GICv3 ITS: do not invalidate memory while
 sending a command
Content-Language: en-GB
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
 <20230919112827.1001484-3-volodymyr_babchuk@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230919112827.1001484-3-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Volodymyr,

On 19/09/2023 12:28, Volodymyr Babchuk wrote:
> There is no need to invalidate cache entry because we just wrote into a
> memory region. Writing itself guarantees that cache entry is valid.

The goal of invalidate is to remove the line from the cache. So I don't 
quite understand the reasoning here.

So I am a little hesitant to remove the invalidate without some 
justification based on the specification.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 13:04:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 13:04:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604679.942182 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaPN-00014a-EX; Tue, 19 Sep 2023 13:04:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604679.942182; Tue, 19 Sep 2023 13:04:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaPN-00014T-BM; Tue, 19 Sep 2023 13:04:53 +0000
Received: by outflank-mailman (input) for mailman id 604679;
 Tue, 19 Sep 2023 13:04:52 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiaPL-00014N-Vb
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 13:04:52 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0615.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::615])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1d5c84df-56ed-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 15:04:49 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7811.eurprd04.prod.outlook.com (2603:10a6:20b:236::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 13:04:46 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 13:04:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1d5c84df-56ed-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=L2RXRpgwO3xH7GAsdjLkGE0Jp6UwDqGZy7UeEcCoB9N7Y62IlAGyZr6I0xIfGZqnMDJsRbU7X3DNGnYfxJslxrzNSNw0nDrLSTE1CTIX/Y3BGiZ3ORW20rVdEcpPDGXAdAOhSGcR5JM+7+G/pwHo9Z0rn/A/VaM4dhbp1YfRnBGW05q9ZDk8vijc5Y4Qu/kgi5pOFez3HniHaxA6b2k5ffOFaqRwI1NGRRrvMQTXWErllvVG8ojKXZ8Zg1Ace6RjQQrImb6kZ3eNK+56hiKorqP5qAG05ZwKD1pKJWbeveArf3ZFSGUgQ6qvX8NRYotAT3SdbVsJqAqPNdjHFWsvww==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/7RCBPrjpI2PF4mb5ps927YTihFgxB3Uj3x1a7Cw/F4=;
 b=Eiy8KDIEfKlzcXIrPmhe4RWhaGlqvmlp7aFUv4Bq4HRyqNjoW071AFtLWtdpZsVu2v2qB2cq7a1YGUbPaMKUvxv1C5knX1ViXffERy8NW2IMDI8mmM8Xmh6BCybOW57WJRnGfgweKQHormFm1zBODyXWgTXxj/tSzvbVKZuE+rieEK3VyfVc6+Us7TOjt7+jR807yYw+PkmIMIPks/JJ4Rxxydiw3zNHALXl/zrq9o3f+ONEtYVzSlXuVcEhcez5Gq3fFu0qt31sheO/Xl+dI9dB/36KZlTbIT1b2ws7B1Hewplom7uRVcaySlRnHYaJVJWv1ArfIMxlQUqH0ttJRQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/7RCBPrjpI2PF4mb5ps927YTihFgxB3Uj3x1a7Cw/F4=;
 b=tYVQFSd3wGd7ZwdoBsRn4PLnPYuuV+gFE96XYxJ/vsUUn535q0ek1qlfYhOBZcFdde3Bau8+wOOuZACx6AHsE09PdhjofcfJRPC3GbaBybkpPxeeNlNqp0Tq0dyGaaVSBZBbD5gRvLXCjfpg4qRiTXdeFCY23mCnX98n1cCMmbuxQKg/V+tDXOIZFrKdD8X+yc/Cclv/gtF6uJuyQggZUYKhOmuW0PS3s6ygvWbxVlQECt0ZZw5fgJnHqnOUQoDdRox5iDMqcJbFikoMdDXrydwyTmRQ0uot3oOqygmUZ6bdzPvzWNFixQAwgDL8Z7Raq40JKiGQggA3yM4RxqGfxA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <891b7e62-c801-4dc8-ac23-7c0aa1666b35@suse.com>
Date: Tue, 19 Sep 2023 15:04:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 01/10] x86 setup: move x86 boot module counting into a new
 boot_info struct
Content-Language: en-US
To: Christopher Clark <christopher.w.clark@gmail.com>
Cc: Daniel Smith <dpsmith@apertussolutions.com>, stefano.stabellini@amd.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Luca Fancellu <luca.fancellu@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rich Persaud <persaur@gmail.com>, xen-devel@lists.xenproject.org
References: <20230701071835.41599-1-christopher.w.clark@gmail.com>
 <20230701071835.41599-2-christopher.w.clark@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230701071835.41599-2-christopher.w.clark@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0191.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ca::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7811:EE_
X-MS-Office365-Filtering-Correlation-Id: d1d3c7d1-ec41-4b91-a03a-08dbb910ffaf
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	r5304Mis1tm+Ma64S5ujiyiPI8kXG9cJ1kVYt6fEQ85AC6a3T6LcwG4j59BZ1EnG4M3AoUVe8khDKOhSvTd/lfyBEY5OYlzmf1pnST1cYJ5tzxs9nxVhuweGvznqiPKWkGjKAdETVo/xLRp6Q67M11g77D+mSWhdiXz81FftNfPXChwjpI5l9JZWeIEZLU9iN3isJUPlsu5Fxm5gQuWGha6gApstTqIypETun4Nd3j01IuOecmUxxKwoF3+Iti8abnXM408ZMngks69JXslzMK5ZF1AaIPpoRCBwLfxm9evpD/zb8ldETlKiYj3kolFJ3sFwaP+ZGgcElYyUyHNL739phMDOw3tIwCnMABayt0pbmK277tE01QzTv6cy8ePNvILKIiPuRgWbwMimwrj5E/nLV8jmb8PZKjcAzERyBEqWvsxmMsSBJ7wFa/ZiUQO32cpgTiRB/qOjGzaVJcbNSly568bhrYr/7PKiDwPEgF2bHCNyXp9uoHeFOfDnu18ygIfF40LwEnYbhmKHcXZEwh00ux2+zcpRP8FbPxixOpTVdJFpa4j3ufNAh/2SEBswGhHOK6k1+TYqIftd+FXmHqey1iiX0NF2XyQ8Sr/GlS6V/65vcQHBIUbRRJN68t9wuigG5s/kr1ECHvdQ2yQ4mw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(366004)(376002)(396003)(136003)(1800799009)(451199024)(186009)(2616005)(6512007)(54906003)(66476007)(66556008)(66946007)(316002)(6916009)(6506007)(41300700001)(31686004)(6486002)(5660300002)(8936002)(31696002)(4326008)(8676002)(53546011)(86362001)(478600001)(26005)(36756003)(83380400001)(7416002)(38100700002)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dXFZUE1jb0ExWXVRMVg4bzBYUFFtamY1MTI5YThWanlLOGlYRC9wWVAzMi9R?=
 =?utf-8?B?ZHJUMGpHN1lLamJsMTdZT2xMdEE5aUV5WUEreURYYWgvQXpyNHZvaFByRHhT?=
 =?utf-8?B?RTQzQndFeXE0bDZqQmRkNktmSEU1Ny9laXgwQTVXWGRVUUhtZWJaZk9HaThy?=
 =?utf-8?B?REtwV21zYjM3SFNTQnRBV0l5cFhMdnZEclk4M2VuYi9RUzBSY2lRMTJTNitX?=
 =?utf-8?B?aUkrNE9FU3pKUEJGeFdXZnk1Rzhsc0VBMlN5c1BodjlGYk50NDVKd3pFclRB?=
 =?utf-8?B?ZE1lNUxjTmhWLzB5bWRNcUFtemxiNlZ0d2Z3bDJ2VURaODBCUXJBcDR0QlNT?=
 =?utf-8?B?OWN6Z1k0ZHFqZU9hdVV0MFVCWFdManZ3ZnZmRWF3RHlJRk94NG90ZWdGaUQy?=
 =?utf-8?B?K1dTMkJjTEJpc2I2UlQ3UExnUHFxVi96QVp1VUdPUVQ0dWdWZGlDN0tDcVBt?=
 =?utf-8?B?NGJWVCt3MWl0SXFyNnRSVURXNEVLdjh3a0JGSkR6NjVaU0xCNmc4RWtXVzM0?=
 =?utf-8?B?K0dMR0FFLzhHbHVNbkRUN0VEZWp2dzloSnhTV1VJMktmd3AxSVZGVStNNkFq?=
 =?utf-8?B?dGZub1dOUzcya1N4Vlgwb25BWDJPM3pUanZKb3ZVZ1hZNUhtemlrYTYwMVBU?=
 =?utf-8?B?Ukh3MGtITVpoMmNnVEJ3N1piNlovN0lqVmN6K3dPeVoxNlJoK3lobncySGd3?=
 =?utf-8?B?Mlp4MXFtUTdYbEk2RmtXdDNNOTlaR1FMUy8wSEl5a1NETTRWNk1nSVpYeUJo?=
 =?utf-8?B?WHRtRHhSRjBTb1JrMmpaNjg4c09mZTZXNVluaENtWWkyRmc3YlRaSi91ZHc5?=
 =?utf-8?B?YnNuZGVNSnJldVRHSzdJQ1RUYmhPU3JJbC9SZE9jRXVHdWc2QTBpalJCTmlx?=
 =?utf-8?B?UXhQc3lGbWUyR05ld0RDQW93VXNiMHpQdzBUYjE0RWE4NFFFajVBTnJ5cUhu?=
 =?utf-8?B?NUN5WVY0SEhzWk41M212SEowejlGajNIK2V1cWpkTEJnUGVMT1Fwc0xHVFFl?=
 =?utf-8?B?UVZ3S0RRa1FXM1pHR0xUQm9Kbkk4Y1pjVkRNc3EyRjI4b2ZsSlpqMmcwZ0tk?=
 =?utf-8?B?MXplV1FvNXZaenJTTDYzNVIxS21xL0traDQ4RENYbms1Q2JZSG9TSGVybkMy?=
 =?utf-8?B?U3Z2WjQwUVd1WTBpRk0yNXlmUDh1TDVRUm13azFCV2hmUnpEcXRHYWZ3dUtY?=
 =?utf-8?B?NXpZeTZIRFRvSS9YYjBMTXlIRkh1SDVOeHJGbUI2MlExM3IyalIzTmJuZWlB?=
 =?utf-8?B?V3ZoZFBSanVUTmxLSDJDR1hqZ0VxN2xsV2Y3UmtESDBNR2FDVmhxN0dlNExs?=
 =?utf-8?B?S3Vic2FIUmRhcFJCN0JXOE9YcDgxbm83dVFXZU4zNElwV3RxdFoyRjQrSEp3?=
 =?utf-8?B?RXRjZ3JsMXNPVkpNMFFpVlJSZk1HQ2xGM3hjcnhGRHlIOGpYMUlQS25ObCs5?=
 =?utf-8?B?R3BWU01IRitFc1U5clllZkhJc3dMeWNXWllOVWNSUXU5UFFGeVI3dHBzamhU?=
 =?utf-8?B?M1RpYTBZdVMzdkdQbjJTMFFRbDBLc0JtUkYxQWJBMzdpbVkzNnNKVnNCYjFl?=
 =?utf-8?B?SGJzOEtBR2VaaGVDVngySFUxR3p6eUZjeVpabGErYWl1TFVTN1B2UlJIRkNw?=
 =?utf-8?B?cEx0c2g5dzNld1QzOU5mWSt4VjlUZlBwZzdnSnhtRXYwUFRUMkdyOEJmaHVC?=
 =?utf-8?B?RUY1eDhGRHV2eSt3ZzRZM1VVcWdRYmduKzFLNUFsek4wUGNvbDlTb2JZbVlv?=
 =?utf-8?B?ajNFcHdGVlFxL1BNYmx1bFdqeW1FUjhOT2NjbHhVdTFFLytVUWVLdE55T1Ex?=
 =?utf-8?B?KzlteFB3T21aTXZIYSsvNk1sK1NMNFd4dVc0Zm5sMEVhaEJJaHFHVHlvN2pL?=
 =?utf-8?B?UHNkOVB1VTkvZmt5TWZDVkhjOFZKempCSDRMOTZKdVE1bmZvdnV2eG9iTVdn?=
 =?utf-8?B?THpPbXNsUE5ZamxQM0dQai9IT3QxSStVVUdHd2pyN3hVdkNjRzFFTWJmSWRZ?=
 =?utf-8?B?cVZuL0srMlB6UHRxYzZFUGt4cTJQRiswc0FibS83bFV0Q1B4YnZCOVBRa0RV?=
 =?utf-8?B?TnVnU3ptOUFUUnhsbHhZWi9jamdyQ1RuKysyZXdoakFCTmpGVjV2OUh1cm1J?=
 =?utf-8?Q?scrzaJJ2fXMq65ZQhQYNdG0bP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d1d3c7d1-ec41-4b91-a03a-08dbb910ffaf
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 13:04:46.5169
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: IHF+6O4MlKadX+Qz+8wBBZYrLyfH3b72BfFVRSif3NxM1MQ3T7c0O7VBQ7/OrlP/snFrKgL6MA0/mzVCIlHAmg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7811

On 01.07.2023 09:18, Christopher Clark wrote:
> @@ -1127,18 +1139,18 @@ void __init noreturn __start_xen(unsigned long mbi_p)
>             bootsym(boot_edd_info_nr));
>  
>      /* Check that we have at least one Multiboot module. */
> -    if ( !(mbi->flags & MBI_MODULES) || (mbi->mods_count == 0) )
> +    if ( !(mbi->flags & MBI_MODULES) || (boot_info->nr_mods == 0) )
>          panic("dom0 kernel not specified. Check bootloader configuration\n");
>  
>      /* Check that we don't have a silly number of modules. */
> -    if ( mbi->mods_count > sizeof(module_map) * 8 )
> +    if ( boot_info->nr_mods > sizeof(module_map) * 8 )
>      {
> -        mbi->mods_count = sizeof(module_map) * 8;
> +        boot_info->nr_mods = sizeof(module_map) * 8;

As long as you don't replace all consumers of mbi->mods_count (see in
particular the call trees down from early_microcode_init() and down from
xsm_multiboot_init()), I don't think you can drop the original assignment.

>          printk("Excessive multiboot modules - using the first %u only\n",
> -               mbi->mods_count);
> +               boot_info->nr_mods);
>      }
>  
> -    bitmap_fill(module_map, mbi->mods_count);
> +    bitmap_fill(module_map, boot_info->nr_mods);
>      __clear_bit(0, module_map); /* Dom0 kernel is always first */
>  
>      if ( pvh_boot )
> @@ -1311,9 +1323,9 @@ void __init noreturn __start_xen(unsigned long mbi_p)
>      kexec_reserve_area(&boot_e820);
>  
>      initial_images = mod;
> -    nr_initial_images = mbi->mods_count;
> +    boot_info->nr_mods = boot_info->nr_mods;

Overly mechanical change? To prevent such going unnoticed, maybe
boot_info should be pointer-to-const? Would of course require the
bounding to occur earlier, so you truly don't need to write the struct
after filling it in multiboot_to_bootinfo(). Or you move the call to
that function down a little. Yet other options also exist.

> -    for ( i = 0; !efi_enabled(EFI_LOADER) && i < mbi->mods_count; i++ )
> +    for ( i = 0; !efi_enabled(EFI_LOADER) && i < boot_info->nr_mods; i++ )

Seeing all sorts of changes of this kind - did you consider naming the
pointer variable (which will become a function parameter as to what I
understood from your reply to Stefano) just "bi"? (I wouldn't suggest
this if the variable was to remain file-scope.)

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 13:06:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 13:06:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604684.942192 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaRI-0001mp-QF; Tue, 19 Sep 2023 13:06:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604684.942192; Tue, 19 Sep 2023 13:06:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaRI-0001mi-MS; Tue, 19 Sep 2023 13:06:52 +0000
Received: by outflank-mailman (input) for mailman id 604684;
 Tue, 19 Sep 2023 13:06:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiaRH-0001ma-Fd
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 13:06:51 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on062a.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::62a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 64a8ca80-56ed-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 15:06:49 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7811.eurprd04.prod.outlook.com (2603:10a6:20b:236::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 13:06:47 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 13:06:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 64a8ca80-56ed-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dkIp4wJn7W+jDtTcbzoCbkUh2aK7h23dzTYsmmCPMe1vcpBMF/YHdHyCOu8HI8w8Pau1Ye74+mrRFIXl6w6P5rD4fjeJgR6P108NBjds0tNeqj2ZsQWjP1uFWz/z8/MDtW+9RFpzck9TFEa7Hxfz05408k8u5nmMdAoROX3HN70t+yZDO1jAi6sERgTWxeXM/ueyPrfB2vL8VJZg+HzTZUMmfstzbZGPwSd2QkHDEEgTruac38bLzjlgcD7r1xa9XzSgwqrSYDhOlAaqfd5H9pzglC3uwNY/jQsrRG92i5v5b4y90sBDakRpLTXjUEEueAB1PcMMK1Tdpk04c1SH0g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xVCEi4nIxHCoCedIiebXPjWYEiv/JkU3+hYP8XtVUBo=;
 b=InBqKqvcTSp5hrgwvCi9XBub78R9Qs4ey4qP4/CsvmLxflCBaXlVQz8ha6HuAI07pNH8Oxp/v9mUceqTZLCpzTCu7NI7dlVJKCIqAHDbhA1AODGowkNsNDBBNkhzc08yQyuFg9kfy/4bVAhCh540M98DE2Ef5lA0iF1gO+cF0JTs6VMGrQWh690etEodPnJOZLh9cWU1qzaAJwmVPTH2+3WQISzL4NUIDtJZc/gM01/FvXpGc4sJ6eI6CJp7HneZhRVh37NxEJzmTxF5Zfyt1X8P+crRsLAGeoHoAmvDJ03wMdC1mrU5J6sV+bOXzmHGIQ1mvVOgLH9o4U956Wlqxw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xVCEi4nIxHCoCedIiebXPjWYEiv/JkU3+hYP8XtVUBo=;
 b=107/PM0Q94YVHajDOm2EIgZwF/KlgBZ5j96HLmyBr8m8oDqd71gM/ctYnmmisUY6kpCx0YFUoIC1WCkaGu2fsfX+r1Jl92ZJ9rrZQebSF7HERkmsTSJ0dsJaKyOfnJLejaicO4bt8HNfHtbONAfhnLnQXqYzl3E7ull2JjqnOSXDvRSTb5lzKJHXS+EnBcnmqJPhNxGIycnAuqhVr2LhgQkqlaG4xdbDhlO1KKnthv8AtcdJeKEreH30Poxevaa0g+lmRaq1MuQdulpFfylaCfrLIJalHDXyBYAQcrf9Q0npPyjRAbBYSUoUdH35H2nwp0ZKT21lWYBoEBpd8+UZdg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <46b0b9e0-29b2-d526-d32f-d03415e621fb@suse.com>
Date: Tue, 19 Sep 2023 15:06:45 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3] console/serial: bump buffer from 16K to 128K
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230919125118.12657-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230919125118.12657-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0067.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ce::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7811:EE_
X-MS-Office365-Filtering-Correlation-Id: 0ab97b41-99b2-4342-2db9-08dbb91147ef
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oG9tmyN1kctK0IdL2H0e2RuGqa9fMYQ6s99JCsfnsDLlOFPLm3BFshQeLoW3h15+CoRn7w7j2XSc0AeKZUGpk9hyoq8h6Kg7QI7EUUuZjb15RDiK12cYdS4mr4GYy1chPVIFdD+hoKwIzEpBzLCPNHLThRB8zZJ+5u97U9F2DwR5I0LmKLJ6PD6sFzSeRnkBzlBABXJg8qWNjKnzBU0ZzMXWRxlNFXA6yWuOIkNXjqD30FMa/fOcgXQ25VTlrgnljl8jPuj3W6DtxeyevzOy/RHT2SBlLmBRxKY102XpbjOVUkF0CI8cCGN3/98ZDFCovo0ttq6KpwYmSBZhTXp3Ix1vchXlEhFYyNbcSKXBSqTzQFb5k/sCxugpi+PLEmWHrqYI9nCNwOt/jSyf5ETjy/FGoXkYVFkFpJ2oYGZn1a4c6L2LLQoEVg/unBbV8Vk2SxCFNa4nkrrHxS/SmSTOZtLk0Wo3xsj/CMVfL/SK2wzSIYn+aIDqbJ51Sw//ok1bJJsA92iKakKFHejVa5L5Vyi3bP0FKHdI5czJiDdJk6s8vCSrIrm3AXoVrX0MYOTNCvEZ5uDf+L7om3CyfQJVLTpLLIgmJUz4nHWEVf5Ho6/a/OtrYvXH52NmsU+P7LnvkQbXpVpU71aIcXVJlq2qMQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(366004)(376002)(396003)(136003)(1800799009)(451199024)(186009)(2616005)(6512007)(54906003)(66476007)(66556008)(66946007)(316002)(6916009)(6506007)(41300700001)(31686004)(6486002)(5660300002)(8936002)(31696002)(4326008)(8676002)(53546011)(86362001)(478600001)(26005)(36756003)(83380400001)(38100700002)(4744005)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Z1dkeGUydnJwSzhISTVlTVdjR0hYa1lkUHpFcFp4QVpIcHBjeGd4azlVblN2?=
 =?utf-8?B?eWl1eEFweUtlN1JnTzhwQVZiZS9MdnhBci9WR2ZVd0RRS2R1Ylh4bWdRNlB3?=
 =?utf-8?B?aldWL2d6SEpwUkFvempyMHMwQW9zR0ExeUxFS1NLbEJwSUJHdUlrZy9uQm93?=
 =?utf-8?B?cVc2d1AvRW9uRXRWdVluWFczenZRdlMwc1h5c3dZS3JYTHRoQjBXL3k5SEZ4?=
 =?utf-8?B?ZlZvNE5CSTlwaUtlNS9vRlZOQ2hEQWVsY1Q5U0NRS0Q2dmdjUjdiZ09IQ3Vz?=
 =?utf-8?B?a3R5aDR6T253NWIzaWw2UXJYVjNrT0IzSWdGeXFTK3FKNy9RSHpMdEgrYW0x?=
 =?utf-8?B?K1Y2NU1sU2tTUnN0QXB0TVhtdnlmc3ZibDJQUzZuanYrQnpQc2dyMloxc3lO?=
 =?utf-8?B?VlkwdlNtN29FUlB5M0xrUEZFMjBENDcvUTM1a0xIZWtxZ1d2OFhodHE1TzVr?=
 =?utf-8?B?VEZpeFk4NFUwUkNVSlUvWDJxWUt1NGN4OTVOQnBlcXdBRmJSWFFhMC90emlT?=
 =?utf-8?B?bktISklwLzB6WVVWS3Q4cU5XdGtYOERyVk45am15a2FvSkJwWmxuWTNBV2RV?=
 =?utf-8?B?R0srVDNXbDVmajBwNStqY1NicUYwM2JLL0czekxEcXJYcVpYRzVMWWxaZFYy?=
 =?utf-8?B?K0NxVFR6Qk1LV1FkanZXU0xwY3A1VHM3cTBNWmViU3V6NkcyeTlsM2d3d29H?=
 =?utf-8?B?OFhxYzZxZENWUzB2SjVMekdaVHVDRUF5WFV2b2I4cSszcGQ0T2NFY0Y1TTNG?=
 =?utf-8?B?QW9LSEQrVVJPSUo3TWdiczMxQlI2QnI5Q1BjOVNFdmZVRDlWUUpxSU9xbVd3?=
 =?utf-8?B?YmtpQ3h2a2MxOFBDTndPdXZ3WFNFaUdUdFcxdzFHbEtVdEsvNTdxWkNRaHds?=
 =?utf-8?B?bVBuSGc5emZSc3NzWGh4dzlyUDZVYlFKcDV5Z3ZzL0NlTDk0bUNrQXk3UFJE?=
 =?utf-8?B?cXlSeHNjTFQ3NGJoeVZaek5QMmpSMXZiYXNYQlc0UGZjdFRtcEx4citrZFFN?=
 =?utf-8?B?SjhxOHJrQkZvSXBZdlFNN0NNSDV1RkxEUndNeTlNRWh4eHRSVFNmS1pIN3kx?=
 =?utf-8?B?bjVUbHFiR1JNaWhBNE9xenlVZnlyU1dwQzNjdXNOODV0YVpnMmdMc1AzMGdS?=
 =?utf-8?B?WlBhZXB2OU4ySWlQVDFOR2YzbnpEdFRTYTQ4WE41cFE0bExuVDhRaXRMZ2JR?=
 =?utf-8?B?aHBPUGlRVmFaZmdYOFVmR3ZWRDRhclMvTzJxRldDUHJBbllqRFVkQmZnczQw?=
 =?utf-8?B?azBidHBSOXZwZzFJYWIxYXp3dUgrTnN4eXlyOVNuVjNKSmpjVGRWbE1FL2FJ?=
 =?utf-8?B?aWdyc21Mc3ZyYmJLZGY3QkpiZnRGY25PVmNVYW9BWEgxVmJ4L3B2dTQ0RUha?=
 =?utf-8?B?Yk9SMWFrdi9RT29VZzNSQjVyR3N0RzV3c1RLc3I0dmhBQWgyeVRqcTRxamJR?=
 =?utf-8?B?MkYrVmt1aHdrNzB3YWd2VWdqVlEyeTVlaGY1WEVNRWJRSnJOVVJoNDZrMmFB?=
 =?utf-8?B?Q2RhWkN0L3lOamVOcUJuS2s4aVM0TlJvdjgySnkyaFNmNzJYNkYrMEpPM3U2?=
 =?utf-8?B?ZmdHZzVhQm9KaVpwaU84RkpndFFwMlEyTDdLNm9Gc1hHNmhkZ3RtVStCOHZ2?=
 =?utf-8?B?c2xzMlJUT3pQcmRjSWVJZ1IwZ0d1dVN6clJCc3pJZ2pFMG9PZ1lxR0dTQ25D?=
 =?utf-8?B?WlN3NTRKMWRxbnBibHd5bmF6VTBhSW5VZE5rSm4vNFZhOXd6ZjNGL3dWamM0?=
 =?utf-8?B?T01MUWhuWUIxOEV5WDY1MFhnMkl0MFlwT3VLNFZLK3d3aERvb2VRbUFuK2VQ?=
 =?utf-8?B?REVPdEh3cjJpODEyaUJKNTlyMUNydnlLZFBzRUZCNTFYRXZycmQ1YUZzYkxh?=
 =?utf-8?B?c2NFVE9KQklGaTYrRzZ0WStkL1dmcVU4UFFTQXNoWSs1cnRZbTlydTlPdDcx?=
 =?utf-8?B?azM0TzQ4RFlDVVZlT0l3NlN4R0JBTVBWeGJmUEJVbGw0OHgvMmdTclNrMlNY?=
 =?utf-8?B?cldSZXNZS3Z3aCsyNzIvMm5Oa3lrNmIwQnlPN21aY3VZZ3RxTTg5VVpFSXlZ?=
 =?utf-8?B?TE93TGE3aktqY1dPQ0xXajgvbm00aUZCMWtKdWlWRkZJcnB1VDNEN1g4clNj?=
 =?utf-8?Q?OEjnMNF+jPp5xkvWnUp5sW4+a?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0ab97b41-99b2-4342-2db9-08dbb91147ef
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 13:06:47.6612
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: fC11jI5Hg0FqGHD+B5A7DI7ZjMRLamA3KAaFsC14XkHIB9AHCQVD+4EYfXqNUAV+MAf6qNBjt3CWxweIJ/k7MA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7811

On 19.09.2023 14:51, Roger Pau Monne wrote:
> Testing on a Kaby Lake box with 8 CPUs leads to the serial buffer
> being filled halfway during dom0 boot, and thus a non-trivial chunk of
> Linux boot messages are dropped.
> 
> Increasing the buffer to 128K does fix the issue and Linux boot
> messages are no longer dropped.  There's no justification either on
> why 16K was chosen, and hence bumping to 128K in order to cope with
> current systems generating output faster does seem appropriate to have
> a better user experience with the provided defaults.
> 
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> --
> Changes since v2:
>  - Bump to 128K.

Wow, I was hesitant about 32k, and now we're going all the way up to 128?
Even the recent report indicated 24k would be fine there ...

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 13:10:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 13:10:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604689.942203 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaUN-0002sg-A4; Tue, 19 Sep 2023 13:10:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604689.942203; Tue, 19 Sep 2023 13:10:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaUN-0002sZ-4Z; Tue, 19 Sep 2023 13:10:03 +0000
Received: by outflank-mailman (input) for mailman id 604689;
 Tue, 19 Sep 2023 13:10:02 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qiaUM-0002iy-D5
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 13:10:02 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiaUL-0003Jr-SW; Tue, 19 Sep 2023 13:10:01 +0000
Received: from [15.248.3.4] (helo=[10.24.67.44])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiaUL-0004Xp-L2; Tue, 19 Sep 2023 13:10:01 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=sHFh1wywUBC4n4ly7yBKcD0Tw34AizwbGApx7yGRwYY=; b=UWSs+LI5Rgkigf27lKUQFCaI35
	3sym3RtZKR+CGQkN5oXhmNLNgJCPN9ojFiQDLSsSOdy271Si860S6nEwoOI2zON+adjLIBq89Ttwi
	x5nvtLc/t9EifyTKOB/RQxIJqse4jrApuVRTor2yo3LO5Mh2BZuDrtWN97LsrmFuzEFo=;
Message-ID: <0cd6a4db-3678-446e-afd8-c99b47945a6a@xen.org>
Date: Tue, 19 Sep 2023 14:10:00 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 3/3] ARM: GICv3 ITS: flush all buffers, not just
 command queue
Content-Language: en-GB
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
 <20230919112827.1001484-4-volodymyr_babchuk@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230919112827.1001484-4-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Volodymyr,

On 19/09/2023 12:28, Volodymyr Babchuk wrote:
> ITS manages Device Tables and Interrupt Translation Tables on its own,
> so generally we are not interested which shareability and cacheability
> attributes it uses. But there is one exception: ITS requires that DT
> and ITT must be initialized with zeroes. If ITS belongs to the Inner
> Cacheability domain there is no problem at all.
> 
> But in all other cases we need to do clean CPU caches manually, or
> otherwise CPU can overwrite DT and ITT entries. From user perspective
> this looks like interrupts are not delivered from a device.
> 
> Also, we will rename HOST_ITS_FLUSH_CMD_QUEUE flag to
> HOST_ITS_FLUSH_BUFFERS because now this flag controls not only command
> queue.

Reading the specification, CBASER will indicate the cacheability for the 
command queue. But I couldn't find any reference saying this will apply 
to the ITT as well.

If such reference doesn't exist then...

> 
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> ---
>   xen/arch/arm/gic-v3-its.c             | 7 +++++--
>   xen/arch/arm/include/asm/gic_v3_its.h | 2 +-
>   2 files changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/arch/arm/gic-v3-its.c b/xen/arch/arm/gic-v3-its.c
> index 72cf318810..63e28a7706 100644
> --- a/xen/arch/arm/gic-v3-its.c
> +++ b/xen/arch/arm/gic-v3-its.c
> @@ -107,7 +107,7 @@ static int its_send_command(struct host_its *hw_its, const void *its_cmd)
>       }
>   
>       memcpy(hw_its->cmd_buf + writep, its_cmd, ITS_CMD_SIZE);
> -    if ( hw_its->flags & HOST_ITS_FLUSH_CMD_QUEUE )
> +    if ( hw_its->flags & HOST_ITS_FLUSH_BUFFERS )
>           clean_dcache_va_range(hw_its->cmd_buf + writep, ITS_CMD_SIZE);
>       else
>           dsb(ishst);
> @@ -335,7 +335,7 @@ static void *its_map_cbaser(struct host_its *its)
>        */
>       if ( !(reg & GITS_BASER_INNER_CACHEABILITY_MASK) )
>       {
> -        its->flags |= HOST_ITS_FLUSH_CMD_QUEUE;
> +        its->flags |= HOST_ITS_FLUSH_BUFFERS;
>           printk(XENLOG_WARNING "using non-cacheable ITS command queue\n");
>       }
>   
> @@ -699,6 +699,9 @@ int gicv3_its_map_guest_device(struct domain *d,
>       if ( !itt_addr )
>           goto out_unlock;
>   
> +    if ( hw_its->flags & HOST_ITS_FLUSH_BUFFERS )
> +        clean_dcache_va_range(itt_addr, nr_events * hw_its->itte_size);

... I think we need to have this flush unconditional like Linux does.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 13:14:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 13:14:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604694.942211 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaYP-0004Gl-NF; Tue, 19 Sep 2023 13:14:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604694.942211; Tue, 19 Sep 2023 13:14:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaYP-0004Ge-Kc; Tue, 19 Sep 2023 13:14:13 +0000
Received: by outflank-mailman (input) for mailman id 604694;
 Tue, 19 Sep 2023 13:14:12 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qiaYO-0004GY-H6
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 13:14:12 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiaYO-0003PQ-6O; Tue, 19 Sep 2023 13:14:12 +0000
Received: from [15.248.3.4] (helo=[10.24.67.44])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiaYN-0004nZ-Ti; Tue, 19 Sep 2023 13:14:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:
	References:Cc:To:From:Subject:MIME-Version:Date:Message-ID;
	bh=rbLaLNUn9O/8lr3+WvsaioFUxTj3/saPkbeO1IMZ7dE=; b=USFzf5kkWLJcR3kUQpvOFozfkN
	FXNIiwUnJeEej9ZASNd6MzzTiHetTY3dCf7QC5876UxyMxa5AZCRPcS/nieqTDOo6i9ju/A91apMS
	YRmour5eILBEXWfpth+A5ZSSendo2XH4rJ+c9M2594fjInEKzHh/ovO3N8Q2qyC473N4=;
Message-ID: <c64d5af5-5d6a-4e97-9b6c-b3f916d32a09@xen.org>
Date: Tue, 19 Sep 2023 14:14:10 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 3/3] ARM: GICv3 ITS: flush all buffers, not just
 command queue
Content-Language: en-GB
From: Julien Grall <julien@xen.org>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
 <20230919112827.1001484-4-volodymyr_babchuk@epam.com>
 <0cd6a4db-3678-446e-afd8-c99b47945a6a@xen.org>
In-Reply-To: <0cd6a4db-3678-446e-afd8-c99b47945a6a@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,

On 19/09/2023 14:10, Julien Grall wrote:
> On 19/09/2023 12:28, Volodymyr Babchuk wrote:
>> ITS manages Device Tables and Interrupt Translation Tables on its own,
>> so generally we are not interested which shareability and cacheability
>> attributes it uses. But there is one exception: ITS requires that DT
>> and ITT must be initialized with zeroes. If ITS belongs to the Inner
>> Cacheability domain there is no problem at all.
>>
>> But in all other cases we need to do clean CPU caches manually, or
>> otherwise CPU can overwrite DT and ITT entries. From user perspective
>> this looks like interrupts are not delivered from a device.
>>
>> Also, we will rename HOST_ITS_FLUSH_CMD_QUEUE flag to
>> HOST_ITS_FLUSH_BUFFERS because now this flag controls not only command
>> queue.
> 
> Reading the specification, CBASER will indicate the cacheability for the 
> command queue. But I couldn't find any reference saying this will apply 
> to the ITT as well.
> 
> If such reference doesn't exist then...
> 
>>
>> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
>> ---
>>   xen/arch/arm/gic-v3-its.c             | 7 +++++--
>>   xen/arch/arm/include/asm/gic_v3_its.h | 2 +-
>>   2 files changed, 6 insertions(+), 3 deletions(-)
>>
>> diff --git a/xen/arch/arm/gic-v3-its.c b/xen/arch/arm/gic-v3-its.c
>> index 72cf318810..63e28a7706 100644
>> --- a/xen/arch/arm/gic-v3-its.c
>> +++ b/xen/arch/arm/gic-v3-its.c
>> @@ -107,7 +107,7 @@ static int its_send_command(struct host_its 
>> *hw_its, const void *its_cmd)
>>       }
>>       memcpy(hw_its->cmd_buf + writep, its_cmd, ITS_CMD_SIZE);
>> -    if ( hw_its->flags & HOST_ITS_FLUSH_CMD_QUEUE )
>> +    if ( hw_its->flags & HOST_ITS_FLUSH_BUFFERS )
>>           clean_dcache_va_range(hw_its->cmd_buf + writep, ITS_CMD_SIZE);
>>       else
>>           dsb(ishst);
>> @@ -335,7 +335,7 @@ static void *its_map_cbaser(struct host_its *its)
>>        */
>>       if ( !(reg & GITS_BASER_INNER_CACHEABILITY_MASK) )
>>       {
>> -        its->flags |= HOST_ITS_FLUSH_CMD_QUEUE;
>> +        its->flags |= HOST_ITS_FLUSH_BUFFERS;
>>           printk(XENLOG_WARNING "using non-cacheable ITS command 
>> queue\n");
>>       }
>> @@ -699,6 +699,9 @@ int gicv3_its_map_guest_device(struct domain *d,
>>       if ( !itt_addr )
>>           goto out_unlock;
>> +    if ( hw_its->flags & HOST_ITS_FLUSH_BUFFERS )
>> +        clean_dcache_va_range(itt_addr, nr_events * hw_its->itte_size);
> 
> ... I think we need to have this flush unconditional like Linux does.

I forgot to mention that this likely want to be a 
clean_dcache_and_invalidate_va_range() (see my comment in patch #2).

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 13:40:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 13:40:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604759.942256 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaxK-0005AM-GN; Tue, 19 Sep 2023 13:39:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604759.942256; Tue, 19 Sep 2023 13:39:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiaxK-0005AF-Cz; Tue, 19 Sep 2023 13:39:58 +0000
Received: by outflank-mailman (input) for mailman id 604759;
 Tue, 19 Sep 2023 13:39:57 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qiaxJ-0005A9-3s
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 13:39:57 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20619.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::619])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0423e52f-56f2-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 15:39:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB8330.eurprd04.prod.outlook.com (2603:10a6:10:241::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 13:39:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 13:39:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0423e52f-56f2-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JkbTNTtZYZQ/dVjEy3KUhyBIsgenpdZQXrMTDFmFkASKxYy2Vvg4hqpgsS5+CDavHbhlpPCgghjIALwj5xmvsu8DjHZyEsjuXHxp27FjDobPV7iOTi/EG3ayGR8T0jNrO5bK8MTxpqaX0Rt8ppShywYYyf4xTVebJO8RhpnJRuYu8w6rn/dKeqgaHffdBzSVzax94ysOXEjCzCB3Qq889e1WmVnYy5iRShZtuofxTdfwdVFaXdsu7g/3uDnjrHOPCtJ3zQFaRRGIyy5rwLVVMxGNp27YQoLRsJuiJ8G/zvwprS0l1G9gOKVN7xpAksVh5d6cbYPachnRvQQiM1tBLQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZE77XIIREE9ECC2hP3WdScR24/fTLYEKuHkJydljJbc=;
 b=HA0ZPrFe0lLKsN65XUnTgFZhNJfLvIGu0zxO22BytMV9nHf1R5IrpibywoZK1Yg4W4v063LdZzesTXWiFgIE0wQfr8bKwQX92PGISt6EfPN1UjONPxjOCO7WVgS9SO0+ivv4MUpkzxHZowbIK1LbaQRMZB/25+H3VEhPA7n4JBGXwi2NzEGCliaplkcb9W5beOA+IYFsp8CPUIJ/jSj2MgAyauY+VIG8N/9lXE0SSFL70mZ5Qmu/YpBFPl7fbxx8V9JtqushgA5e9NERA9+wAJ6PaQesX/EbxxF8uroH/+w7D5dZq2gaEbpwAyEfn+0tO4z+vsakMlYNb1zvyvphfg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZE77XIIREE9ECC2hP3WdScR24/fTLYEKuHkJydljJbc=;
 b=yKJrBuTiLsZ5yV0XrNI6nj05QJCNF15qUGgYjhhYZYyhIPiH+sCpFxUG5uj/1JlCDt832UMavyhKwG0I54i+8vgf1RaG80cx+nbC3iAjYTwG/EC+x1GKYwNSVNzYntPL3A3mEP+3rSTRyDPU1LBv3DsONMTOelo3GHUGVKdCMRORU/ZzQgvcZYWZTJavSLAO09TCY7cnP8ksKCO86sFVf9u/Dh7tw4PniSEPjVlcwaQrOTTs8H9/SLPKl5cprUDaczKJ/fbT7pXzH8tXJD0oBtcyJu0p3Bww663las/l3nZUUUV93vPn1rQl3A9bZKtpgKq1Ip8VYuTNVcD1x7PD6Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b460843b-3dbe-03af-19f4-80e715c8aca0@suse.com>
Date: Tue, 19 Sep 2023 15:39:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 02/10] x86 setup: per-arch bootmodule structure, headroom
 field
Content-Language: en-US
To: Christopher Clark <christopher.w.clark@gmail.com>
Cc: Daniel Smith <dpsmith@apertussolutions.com>, stefano.stabellini@amd.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Luca Fancellu <luca.fancellu@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rich Persaud <persaur@gmail.com>, xen-devel@lists.xenproject.org
References: <20230701071835.41599-1-christopher.w.clark@gmail.com>
 <20230701071835.41599-3-christopher.w.clark@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230701071835.41599-3-christopher.w.clark@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0063.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:93::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB8330:EE_
X-MS-Office365-Filtering-Correlation-Id: 7de2aeb2-7a88-40c9-12c5-08dbb915e65a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	r15ZeOAY9CW59UX9XWVBhh5VpYtMPfGI3hcVpcX7gnO9Wd/Y3jHmI/hecrBlVvGm9ThN9hWvCeQ+yubHojkRqv0rqi4r7+pbwD7Z0y8QqvjgJhD6jVcelR9kGeTNGgjmu3OCia0a7TTQJaso/lqXLLt+v2b6Lmbns6vsjq8YaPG1BoebkdS20UbiQkIURkpRd7nO53mo0/MAqNRQ3h00pMEuWqbv1LRb/uz3IKqK1lqIm88sXMGCNsYN1CkdDr0t3XQTT4+6SeetE2RuNW465580dIQQGrJ4igIMPQpp2eYoOVYI1u+l4k81COWcQOyUvrfax59Dmt9OI3/WcD3R7AZ/+11Zf/8ykO/C7/bqhXt4E4yiyLKkPAo3fFtz0rmZ1fDa8kg6BigYxqaDYTUKVWzRwFOSGFsOrM7PY1wMHKHtR5j2pFKoJhQKkikiAGBean4ZpucuaKEVxU/A1j9tayisgXtD6UwCoq0k5N5NWECrjxxJHab7PTErTwpJhjM5Fh6Bo7yw0GKMNwhWkHJGHxgx9+wMVm58BLidGzgbmKTglGGcZvFWVp+IQJsm9X1rd2RIRJE5EpEuqwa0XjC4LDOMr+rx9vO48anbOk3nb752x3jU4iOTV8pGJrY/uOJyVGMShNuvdq/Nr10RDxXweg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(366004)(396003)(376002)(39860400002)(1800799009)(186009)(451199024)(6512007)(53546011)(6486002)(6506007)(66899024)(6666004)(86362001)(31696002)(38100700002)(2616005)(36756003)(26005)(6916009)(316002)(54906003)(66476007)(66946007)(41300700001)(66556008)(7416002)(2906002)(5660300002)(4326008)(8676002)(8936002)(31686004)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?am50RTZleEhtSGRZZDA4dDdrV1F0a1AraHBkVm1pTWpxbTNCdXNuK2dXKzVN?=
 =?utf-8?B?UXVJUkdrd3RRcFVEZFg2c0toNW5CS1NyVVlkaFlxSmplRmh3YlRmZzJHRFg0?=
 =?utf-8?B?bEFCZzgyTDdsOXNHOGd0cVg2UWdKeEVnaFdlUkNYZTBERW9aL29kTnVQVjJi?=
 =?utf-8?B?eEJLaXhIcXdTeUNGNDN2YUhVbHVOaFl1RHl1SVhVOEx1SFA1Ri9UVmEyaXVN?=
 =?utf-8?B?LzRrRGk3SmJBYUNBdkJ3TlhSck5IMFExK1VRRzJ2VVY4TWV2bk9EVXMwWnpW?=
 =?utf-8?B?RElXRG41ejAzZU5HcjdLZDhNL0VsK3FxZWtJZHpiaFdFNHoybGE2Y0xrWXJp?=
 =?utf-8?B?SHZ2dm5CaForS0grTGlOS2VHN3V0M2xtcWxiVE93QlpUd0k4bWRYTkxUdTBT?=
 =?utf-8?B?RUJ5MUJ6NkpTcjZSUnNyUW9XK2hOQzZDdVJUbk1tUHUrZTBNTGhmNXp1ZW9w?=
 =?utf-8?B?NzNzdWo0a2hUa3JXcU1FOWlwQ3p3ellxNUxQYUtROWRrVGFUN3hiWjVjeWxa?=
 =?utf-8?B?a0V3eE94ZG5oVXF4MElFK1dkaWhQY1JPWVJKZUhrVkdORUl1ME5kMVdUcnQv?=
 =?utf-8?B?TGJQcCszOWFJaXZMbHNzNG4rYjRBZytpTkdva2s5SWZUTDVHaTA5b2pMMVVK?=
 =?utf-8?B?Nk9pQVpWS3cvNjhycFpSQS9aVEdGN1ptZXdMVktSNFVYMHVaZXVYRG5GWXlp?=
 =?utf-8?B?QitXcGhFMEhzOXlzYVhFTGtFVHQrcHVhMjFSYWRrT2xDVmV1bzV3N3BObkFO?=
 =?utf-8?B?ZUlhZVUwQnk2OTgwc0RGUC9vckExWTU2cVNFYWNQU1dCblZOTmZWOVFTNWQy?=
 =?utf-8?B?anFjV2R5bDJ5SjN6OGNLNjFPNzk2bFM0TjJxRjhIOVZHQTRUL1RLMEJ4TVl5?=
 =?utf-8?B?d3FzV0tZZGRISkphQkhsNmVZNkx4U09sSVVFUldXQzl3VkVPQTNmTEZDdjJL?=
 =?utf-8?B?L1ZaYld6SmtNRS9nRE4vTjJQNWxhekx6SWoxaTBYMWt5V3J0REVjSUFGYVNi?=
 =?utf-8?B?dGJoUUVBMFp4VEV2cm9VbHlkYlJSeEovcXd2TEdTS1IwRisrNnRLOHFVbnFi?=
 =?utf-8?B?VjErWXdFUVhtcDAzWDhqcnE4WDdWbzJpRm52NTVrVVdoMDdjVFlLS2UwdVJu?=
 =?utf-8?B?MXVDeDNmTW9jZXR5K0VHZy9wd2pRSWJOQnBtMXhWMVRNRnZzYzJzVmRJeTZp?=
 =?utf-8?B?MnJXVE1KdWdjQjV4MEhLcmprK3VTYm83MHZteUlRLzZmZzd4UGd1RDZtNVUr?=
 =?utf-8?B?ZmtGM1pPZ3VtRzBaZDRwc3pXRk1rLzhsUktOelRpdG1UVjZzb3hjcTlSbXJz?=
 =?utf-8?B?aXBMajMyaDlnQTVRb1c5N3FTeE9lNWtMczd3NFB3UmVqei9LVGY2dmRXRmpZ?=
 =?utf-8?B?NHZmejdCdzdyL0FGY3NTUnVKSjR2TXQzODJ5OTRBU0hYWGRCYmRyNzluWEJx?=
 =?utf-8?B?NGNKUThERVpKYlJVWlZZWWRHdjRZR0JuRUQvaWkwVUlrN01kR3I0NFFFT0Q0?=
 =?utf-8?B?VkQ1TndOb0FaRzhFeHNQR0gzdTNOcUdGU2I4aUtkQXBxUFNuSkYrc1VOOVB6?=
 =?utf-8?B?dG1JVXVyWjJDUWxzTGNjdHNSL281UTVxUXdKMWFsVytRZzNiK2tJT3IzaEkz?=
 =?utf-8?B?bzUrdVBqN05haXYrNnNnbU9td0ZXUnVjZU03enhvcXhXWjhpU0dkc2l0MSs2?=
 =?utf-8?B?ZU1ja3Roc1U2VmZtS0JDbnhPS2tmRzZZK0ExbnZya1lKREJRL0RTclV5bU9B?=
 =?utf-8?B?RnRjZC9QVWdnY3pyZFpacEUxR29STDFhWnJsdnhSY2xzQ3N1VkdXeXR1TDk1?=
 =?utf-8?B?aWFsemw0YWJEV1hPMWkrZlJmaUNtTVJBQVVETVRYbTlyTUd2MHh6OHN5VkRt?=
 =?utf-8?B?UFZXSVVtZXhjNTlEbGdCdk92TXF0UTlOTDFjaFdKM2RkY1pDcmpDbmlVbzNH?=
 =?utf-8?B?REsvRit1ZndLZXJJdXJkQjcxWkVvN3lNNTA2WXp4ekwrbnFBdXpKTWhOSnFw?=
 =?utf-8?B?UDFDS21saUZmaElGTXZSYUROdGxTdDQ3bWNzTzBwREo5WTBSc3c4VG5iQkR4?=
 =?utf-8?B?VW0yRHBaU2RNZnBkSnl3VmhKaG1nTkF3VjFXR0dodCt5N0pVeUI2ZzhZOTM3?=
 =?utf-8?Q?Kwe5bMuz6YCdBwISiMdmAwwdf?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7de2aeb2-7a88-40c9-12c5-08dbb915e65a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 13:39:51.4147
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: NZsu8BiQ8Nrm4/oJkLdV2kKVZewBNAJ4ZQBL3qMdiHzjbaRRT28Nhs1oZIOvNAQRvh+xsFqw9y0OGotzPmJrqg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8330

On 01.07.2023 09:18, Christopher Clark wrote:
> @@ -105,11 +102,14 @@ unsigned long __init bzimage_headroom(void *image_start,
>  }
>  
>  int __init bzimage_parse(void *image_base, void **image_start,
> +                         unsigned int headroom,
>                           unsigned long *image_len)
>  {
>      struct setup_header *hdr = (struct setup_header *)(*image_start);
>      int err = bzimage_check(hdr, *image_len);
> -    unsigned long output_len;
> +    unsigned long output_len, orig_image_len;
> +
> +    orig_image_len = *image_len - headroom;
>  
>      if ( err < 0 )
>          return err;
> @@ -125,7 +125,7 @@ int __init bzimage_parse(void *image_base, void **image_start,
>  
>      BUG_ON(!(image_base < *image_start));
>  
> -    output_len = output_length(*image_start, orig_image_len);
> +    output_len = output_length(*image_start, *image_len);

If this is correct, then I would imply that so far we passed too large a
value (a too small one pretty certainly wouldn't have worked). But I
wonder whether you aren't passing too large a value now. In any event
ideally such a functional change would be split out; otherwise it very
clearly needs mentioning (justifying) in the description.

> --- /dev/null
> +++ b/xen/arch/x86/include/asm/bootinfo.h
> @@ -0,0 +1,18 @@
> +#ifndef __ARCH_X86_BOOTINFO_H__
> +#define __ARCH_X86_BOOTINFO_H__
> +
> +struct arch_bootmodule {
> +    unsigned headroom;
> +};

But this isn't a per-module property, is it?

> @@ -961,7 +967,8 @@ static struct domain *__init create_dom0(const module_t *image,
>          write_cr4(read_cr4() & ~X86_CR4_SMAP);
>      }
>  
> -    if ( construct_dom0(d, image, headroom, initrd, cmdline) != 0 )
> +    if ( construct_dom0(d, image, boot_info->mods[0].arch->headroom, initrd,
> +                        cmdline) != 0 )
>          panic("Could not construct domain 0\n");

This looks to render the function's "headroom" parameter unused.

> --- a/xen/include/xen/bootinfo.h
> +++ b/xen/include/xen/bootinfo.h
> @@ -3,8 +3,19 @@
>  
>  #include <xen/types.h>
>  
> +#ifdef CONFIG_X86
> +#include <asm/bootinfo.h>
> +#else
> +    struct arch_bootmodule { };
> +#endif

This wants making use of include/asm-generic/ now, provided the non-x86
header are going to remain empty. Otherwise arch headers will want
introducing right away; there shouldn't be a CONFIG_X86 use here.

> +struct boot_module {
> +    struct arch_bootmodule *arch;
> +};

Why a pointer? By the names it's a 1:1 relationship, so ...

>  struct boot_info {
>      unsigned int nr_mods;
> +    struct boot_module *mods;

... only the pointer here is what takes care of there being multiple
instances (likely as before represented as an array).

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 13:50:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 13:50:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604766.942266 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qib7I-00089e-E0; Tue, 19 Sep 2023 13:50:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604766.942266; Tue, 19 Sep 2023 13:50:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qib7I-00089X-AQ; Tue, 19 Sep 2023 13:50:16 +0000
Received: by outflank-mailman (input) for mailman id 604766;
 Tue, 19 Sep 2023 13:50:14 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qib7G-00089N-U7; Tue, 19 Sep 2023 13:50:14 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qib7G-0004HA-P8; Tue, 19 Sep 2023 13:50:14 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qib7G-0008PH-GG; Tue, 19 Sep 2023 13:50:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qib7G-0002e4-Fo; Tue, 19 Sep 2023 13:50:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=1bN1WVEzTgQ49wPH7rv4SeWMI6RkdlOLacpKuBsVnJ0=; b=sGkLOh2tYvZKYbWvLSNX7aEPGT
	sycKpsa0U1Vy+ILrwtxc5UJT8WIu8yKYlChbccLTy8fUk2Y0+Z388lhiftKQ2rMOSa6Epctui/Jzp
	yNwzZljDl1mPZ8TjWbzreEJgshogWSXB/A5QVVKMGPIJVACYannEimrZdoaAR50bIb7g=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183058-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183058: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:xen-boot:fail:regression
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
X-Osstest-Versions-That:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 13:50:14 +0000

flight 183058 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183058/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 183030
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 183030

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
baseline version:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273

Last test of basis   183030  2023-09-18 14:02:00 Z    0 days
Failing since        183031  2023-09-18 17:01:55 Z    0 days    6 attempts
Testing same since   183058  2023-09-19 11:03:10 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Simon Gaiser <simon@invisiblethingslab.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-libvirt                                     fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Thu Sep 14 14:03:34 2023 -0500

    xen/ppc: Enable full Xen build
    
    Bring ppc's Makefile and arch.mk in line with arm and x86 to disable the
    build overrides and enable the full Xen build.
    
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 23f2f4a0977503187cd05cbc8963464a25e75eaf
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Thu Sep 14 14:03:33 2023 -0500

    xen/ppc: Add stub function and symbol definitions
    
    Add stub function and symbol definitions required by common code. If the
    file that the definition is supposed to be located in doesn't already
    exist yet, temporarily place its definition in the new stubs.c
    
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit 4a2f68f90930458903589aefa2bef7b368af3df4
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Thu Sep 14 14:03:32 2023 -0500

    xen/ppc: Define minimal stub headers required for full build
    
    Additionally, change inclusion of asm/ headers to corresponding xen/ ones
    throughout arch/ppc now that they work.
    
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit fa6696e63b6e490f3348ad973b30e361d68e366f
Author: Simon Gaiser <simon@invisiblethingslab.com>
Date:   Tue Sep 19 11:02:13 2023 +0200

    x86/ACPI: Fix logging of MADT entries
    
    The recent change to ignore MADT entries with invalid APIC IDs also
    affected logging of MADT entries. That's not desired [1] [2], so restore
    the old behavior.
    
    Fixes: 47342d8f490c ("x86/ACPI: Ignore entries with invalid APIC IDs when parsing MADT")
    Link: https://lore.kernel.org/xen-devel/0bd3583c-a55d-9a68-55b1-c383499d46d8@suse.com/ # [1]
    Link: https://lore.kernel.org/xen-devel/f780d40e-c828-c57a-b19c-16ee15c1454a@suse.com/ # [2]
    Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 93d2ee85f189aab6d8326871b9991469d795fbc9
Author: Federico Serafini <federico.serafini@bugseng.com>
Date:   Tue Sep 19 11:01:56 2023 +0200

    xen/vPCI: address violation of MISRA C:2012 Rule 8.3
    
    Make function declaration consistent with the corresponding definition.
    No functional change.
    
    Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
    Acked-by: Roger Pau Monné <roger.pau@citrix.com>

commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 3ee6066bcd737756b0990d417d94eddc0b0d2585
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 45f00557350dc7d0756551069803fc49c29184ca
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 694bb0f280fd08a4377e36e32b84b5062def4de2
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 13:51:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 13:51:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604773.942276 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qib8t-0000Us-PU; Tue, 19 Sep 2023 13:51:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604773.942276; Tue, 19 Sep 2023 13:51:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qib8t-0000Ul-MM; Tue, 19 Sep 2023 13:51:55 +0000
Received: by outflank-mailman (input) for mailman id 604773;
 Tue, 19 Sep 2023 13:51:54 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qib8s-0000TN-I7
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 13:51:54 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on060b.outbound.protection.outlook.com
 [2a01:111:f400:fe02::60b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b02ac858-56f3-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 15:51:53 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8173.eurprd04.prod.outlook.com (2603:10a6:102:1ca::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 13:51:50 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 13:51:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b02ac858-56f3-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hebtk4cyoeAUAxhjmx6Sl2ee2H2DGIJuF8Xmf8LqoHylzdeaAD0D3ehILgcuJUsD03iIKGTvfSFCkeIsk8oPYsBPUaWfyYAV6gdiCpYBWgCfo6MknuTbueRZ34ypbc5JVzOms7U7drDKykSJMjPs1bpBlbsWkTqYWoEZ4GTRdONe9CeYK5tM0JqmNhCCnnbGeb9/y7j01Bta0Whz3S8pb71OTOhzgcEa8xqDSem4Dk2imQ1EUYrB+Lcq0+r4/M9f5iEyVSEHPi+TDuQ+QQ6w6BJcoyxstSGIoGnSBorzpO5jIc8r4rz+Ud0pp20L+6KtaQcN7xRPcY1Q3BgpC9Hv6A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MTtWIWgqYS5XpeR+XCcErzNBzEjcrGPaQrGDrSJ9sDg=;
 b=dTTMbpqjdO62u3W9pFRo7vKvhQiDNuCKYhBkGiCfJsZ8mHiv7WRxJciPDBgvBQeZp8/yNdA7E5/DrJH8DjMFlUxegAn8utgOYlJ4B8FoTzLTSmr3GFAzEGLJoj1x5toGW2APbWR0qAn/FuuSMCmgMFkmbJ+0RYLCvyHgJAHhhCT/qlb7zvSalXSwqcK3M8itn5K2Fd1/mBC1E72iVOCTtSCYa9nm7qqiYtxns1Qoo+2mL4X6fKfHQoCs6J8vIRPtbFHWYvtPcdk9MAerHwd6wQfWpKRbVIPdYCSgQxC5Rin3ek9ki+Aq/h9W+HxLSqeMqob+7AxYMY7mDWZuAf2+zw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MTtWIWgqYS5XpeR+XCcErzNBzEjcrGPaQrGDrSJ9sDg=;
 b=WREoc44HYI4PGbpmNCUxpwAvIvbOy9aLSdz5nx+agSKT3k8Hes1BnMZeke7ZeEkzAjrg5EURfLJTLknt7rABGNxji100s6oi92/lSaSckP0MatekOgi1obFwYv6F4gDwBZKc5vhuLsT+6ZqnCH8Ox0JAvt3xj5cWO/Gpv+1VgcPYv54GuzIsMG/vUfFOvGUsZuiGyWLqrRXKMAE+7wy5pBJvSUHHznAbpo1lCMBGTb2apqi4YeVBtO3hM2Jlc3TY9PYVNeNBYKP9a2H0egwuYRlgblfVACZervsvhVvhKlU7maOhJktweyFF2ieIQgJWGLVxpbaBz+F6fMTMo1MZPA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f343f3be-c42d-7007-2d65-3465dad03969@suse.com>
Date: Tue, 19 Sep 2023 15:51:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 03/10] x86 setup: change bootstrap map to accept new boot
 module structures
Content-Language: en-US
To: Christopher Clark <christopher.w.clark@gmail.com>
Cc: Daniel Smith <dpsmith@apertussolutions.com>, stefano.stabellini@amd.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Luca Fancellu <luca.fancellu@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rich Persaud <persaur@gmail.com>, xen-devel@lists.xenproject.org
References: <20230701071835.41599-1-christopher.w.clark@gmail.com>
 <20230701071835.41599-4-christopher.w.clark@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230701071835.41599-4-christopher.w.clark@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0075.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1f::23) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8173:EE_
X-MS-Office365-Filtering-Correlation-Id: 35c94f78-e1da-46a1-23bf-08dbb91792c9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mq8+AANnwy7nC/MnJBAhAUsWltZY1JW9K5ay9wF6r1lycNiBEneXQM7WA1oYiX3sd6ZqKp/GE1f0UU2AVBFpPGoAhbUG9xe+DqEHD9K0mOGSEfHvHTFy4bmI3dQsbAk6/7sHyZkC1ctAuyzWlw4764L6B5LaKCL0d7845tVSQaan7gMuKHPLBrh9Ca/vhdXCXe1Z6GMLXFkoBqU3i3lUIbYlQMA5Ou2bgmWD4c0KDe1ZOBxe9S01vpSM8VpIuSWohWIahNKoNKWMoFreHV2LQBG8MV8E7zIsG7oHheu1IDrssktHV+zKEiHNkOREyyRgnkd99wj4rOPC1wMP0tPkhwhPmfdBwI+0rNMXaNxVcU0FI1+10CzPKq0WzKOh8UO85l6UNW8JazxA8cfLSbD5HBbshcO2mY971uwBWl/gQ2PQEg8+0Ae5VU3v3yB/v457Pa/REUqGgJKdhYv2TWgA6Qhki5wFT79T8KYt1dwGJLpZRITS5QcWPA180htXglRuVsnedxKjEYYNWf4EEjf8FRt19IWPntEuJZBR0hOrhkHolqgnHFiNZcctsTS/R5GSHgk0Qfqg3xxNwgS3zRcyUE9HEmv7jSqW+eEzYunVvwaUT2s3NDrnNVMt7D34Ur9CQ9Xy1t40qoJ4xlUAoXNwhg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(346002)(366004)(376002)(39860400002)(451199024)(1800799009)(186009)(4744005)(2906002)(7416002)(31686004)(5660300002)(8936002)(8676002)(66899024)(41300700001)(54906003)(6916009)(316002)(66476007)(66946007)(66556008)(478600001)(53546011)(6666004)(6486002)(36756003)(6506007)(2616005)(26005)(6512007)(38100700002)(4326008)(31696002)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WWdKRS8rT1dEVWhkMFg0TVdHY01zU1ZGUVNSWnpqWWxYQm9JM2plQkkwTXha?=
 =?utf-8?B?dCtqRndjTlNFelFwME9tTGhFTTh5SldHNE5DSFUwdklYUE5mcnBGdjI5L0I5?=
 =?utf-8?B?U2dSWGhYdDhIWGl5amUySHBvUkwrNk9ncEpVWUd3WlZsaUNLbUM2MFR0T00w?=
 =?utf-8?B?WThwa1YxeTYrc3Y5MlFOdmlRMzBwMzczRnNQVDVySGJrSm84VEZzQlRhQ1Bl?=
 =?utf-8?B?Z1hqc1NVWnI4VEh4eFNkS29oU1BIRXYwU0VmNEpYNmZRZWNLc3ZHc3ZhYVRn?=
 =?utf-8?B?bld1Q2Z0UERTbDI3S2plREVDWlI3bTRtRTdORmNHSC9XZm9SQUhRUVh1R2FX?=
 =?utf-8?B?Sy9BNVdzVENlZVF0Mk5Mb2t1ZW5HK2R2dHRBRFlVNzJMM3JuY3BUOFdJSjUv?=
 =?utf-8?B?V3l6ZGQzeENFWmF5ZzBwZFREMEdTaUt0akl1d2t2cHpNNnVtWE9CZmlSS2U2?=
 =?utf-8?B?MDAvWWExUFIySTNmYkx1NFdBWlVTdytNdU5EcU1GVEVoWHV1Vllob1hjVUVa?=
 =?utf-8?B?SFRNWXhiRkRHcG50ZzAxKzlGMmdMWGJHc01BT2lnS2UzN1o1UHVmNHpPTHd2?=
 =?utf-8?B?blNMRE5rRVZaaTQvdVNBandVTjNBM05vTU5nVUIrdDY5TFE5aG9LcmZwSWNW?=
 =?utf-8?B?L0tLbmgyUDVQV1ovQ3Vyd3RvQnNLZkdhZTd4empBeDVkTllOblFLbGdVUmN4?=
 =?utf-8?B?bjNMdmFOQThqbDJVM05YdmQ5TDRNNmtPUUs0WS94b3hPVTBuMjJ3cnFxTmNT?=
 =?utf-8?B?SURra2Rad2FkMzF1VC9DTVZ4MFoxSXpXWHBXR0Nvc2hqM1hQZmp2em8wZWdI?=
 =?utf-8?B?dEIrZnUvMmNqb0pSRGl1L3ZDK0pzM0NNL3RkaVk0bnozbzdheXEweFduVEtp?=
 =?utf-8?B?elRqTUtRc0FZUFNFL1FtRFIyQ2FWT1BJR1FXVlhlZ0pIVmxFRXNtemtCcU9k?=
 =?utf-8?B?ZWdJempwMlhNRE9WaUpXN2FZWXI2ekNmZDlhNHVXN0xhQ3h1aElKbklXSWxL?=
 =?utf-8?B?RmpZZDl6cEhUaXA5eFhNVENJRlhBOTNmWFhYR28zeDdGYmRmSUZYYjFLSWhp?=
 =?utf-8?B?RFhRRzNSdDNuUWwwdzYxWk9kWDk0SWpub1lBRFBNc04wKzBmLzJqY0xVRWEw?=
 =?utf-8?B?M0FCR1phOHRZa1RkWjVxS1JOZ21jd09SbC9GMGs2VWxUTzdJM1hLVTEvemhn?=
 =?utf-8?B?UGNUNGJxblIzK3dEL0EyUlFTM0dUZEc1UjRJb2VQSVNWYkY3eS80SEREZFVh?=
 =?utf-8?B?VXBENHJzNEdtdjNZZ2k5bVdHZ1NxVDdZMkhiK0JIVWV4MEVBNTk1QzQwVitL?=
 =?utf-8?B?Y2JYZStOeXlaeGk5U3o1QzgzOWtDWktTVXNOR3k4ekhsZmRmd0E2cmVPSTYy?=
 =?utf-8?B?cnZ1SWswbS9QVS9JNE1Tc0srUi9RUlJLWVFiZm90TCtQVy81UWpCdy9SYWRw?=
 =?utf-8?B?cEdvdGl0UGJrRXlPK0NhZzFRb1lQVnZVNjQ5S0N0SmlnbXN2NW5tajNZOVhB?=
 =?utf-8?B?NmZkRTJqcG5DbC8xcVlvOE41MEFTRFRqb0JmT0Z2MmxxYndaUDB2VTF1ZHor?=
 =?utf-8?B?SVlod3V3b0ltaTJLdHArdHN4UkFsdzZFVjVsbjJwUzRUZlFTdjJreVp2a2Qw?=
 =?utf-8?B?UnpMbFRkbG9yT3ZtQTQxNGRWNU1Mc2J2OTlQQWhoOHVJUHY5MDJ1MS9vek1Q?=
 =?utf-8?B?dDN0bkhrZVlyTVNyL0N0YmpSUEcwTzcrMDNOTTduSzdxM3dRWWZXcXZXQ0JK?=
 =?utf-8?B?Slcwd3l5VEoyUE9XSWZaT3RCRGNqMWxwdHNzNHF2UjJyVDZQK1BXYlg4VEs5?=
 =?utf-8?B?d2tMTktmQVI3SGp2QklTb2NuVDl0ZmVEdG95ZHZxc3Q2SUR0bUE3dGJPQ1pz?=
 =?utf-8?B?eE8ySDMxeFJyRUtneTZLZVZ6djVhMnJFYnRTbnVDYXZkeWRUVjBTejRVT0do?=
 =?utf-8?B?dUpydFJxTHluQzJKZWZ5SmU2azBPWEt4SWxEbjdOZ2FDdzE0VitWZFB5N2t0?=
 =?utf-8?B?MGNXTnQraWNzd1ZDQjFyUzBNT3ltNk8vUlM2MmJ4dWxJQVpqclIwa1M5NG1m?=
 =?utf-8?B?TjhDYVcwTXdsYWpmTERGL2Q4TFhrYmU0UytWbCtOS0ZUcWRBWjY4WGpvSnlt?=
 =?utf-8?Q?UuhQ8zguNEUWS5gqczxWJpRej?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 35c94f78-e1da-46a1-23bf-08dbb91792c9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 13:51:50.2741
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Ibd+UpYX36qyz9CS9+Znv8VJkx96i7wi2j3Q/ByryvU/lUWCo+j0N0Cb24DYQ9OGdxFx4tmPmqSmKZBcont7Uw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8173

On 01.07.2023 09:18, Christopher Clark wrote:
> To convert the x86 boot logic from multiboot to boot module structures,
> change the bootstrap map function to accept a boot module parameter.
> 
> To allow incremental change from multiboot to boot modules across all
> x86 setup logic, provide a temporary inline wrapper that still accepts a
> multiboot module parameter and use it where necessary.

And all uses of the original function are converted to the new wrapper,
except when passing NULL - am I getting this right? Plus down the road
you'll change all of them back? Too much code churn for my taste, to be
honest, not the least because this undermines easy use of "git blame".

If the above observation is right, and since passing NULL to the wrapper
is fine too, why don't you deal with this by using a macro wrapper
instead, without needing to touch all the call sites:

#define bootstrap_map(m) bootstrap_map_multiboot(m)

Misra won't like that, but as you say it's temporary.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 14:10:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 14:10:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604781.942288 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qibQR-000404-Ch; Tue, 19 Sep 2023 14:10:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604781.942288; Tue, 19 Sep 2023 14:10:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qibQR-0003zx-94; Tue, 19 Sep 2023 14:10:03 +0000
Received: by outflank-mailman (input) for mailman id 604781;
 Tue, 19 Sep 2023 14:10:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qibQP-0003gN-He
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 14:10:01 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20612.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::612])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 381ef2b6-56f6-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 16:10:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8995.eurprd04.prod.outlook.com (2603:10a6:20b:42e::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 14:09:55 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 14:09:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 381ef2b6-56f6-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BAFMzOVDvb6NxRag1LgYuOeHAF8vaAu0Ugx3cJo+hh8C+YeSd0NDc+aLWOLl28OfwBaNgpT6J5JndEC9xh1sB1h6aUCW5fVoVoCwEq0urN6bz1f+uttTUd8q3inaueFi4hapdsoDPF0rrV2sDosmkHFwJEXQYexvw6FkZYmx2/AMr5N+D5zTugTntjFq9NVKTUoqf1ZM14OvCy5bklmYqXRtwh74q7GBfsap2/lWU3rkK+yFCiI6VizH9BKVd+zNw34N12qNNhoK0H7GFct2me5Uf+t5XkxYXZ6ICngTFhHdXDDvxDMiydLLPeQ4jU/SYCmEKDjEJj4kEJdEB1n39g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6D1HEJl/uoWwIh9nm6xb2KWhWxCzcX5yqwyKUCxnNLU=;
 b=g3VRmhJ6m/AW6u7DRZKo2NJ+FYBJ+2uWRSMsjt1k9HZAttfM7GTl5fn9RDFXYVPExwrWNKGkAbh131lzSkn0mFOYmu+Z+AZ8m5Cdy0oVJmH335K6+u/xxsxtoAlvZmgxoZIYJUUlXxOB2O8g/ai671gpKOopBKsvj8vPEdpzN3RJLo1E1tWI6U14pdF0f+LEXfsOHZmqzcTe6M0Whh1mVcYjuwb/6y1zFUyURHuVtAKQSnWQDzpwVtUdwrAnUZvDgGJw73pMhbn5dU24I11GbzBHO/h3PNFFiYy2MTU8puRP1iLhehV2LDL7pTZoVleq4KKr6PJr69UD0kXqqotEZw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6D1HEJl/uoWwIh9nm6xb2KWhWxCzcX5yqwyKUCxnNLU=;
 b=yVVRMW9dQ9fk/4P//MUOsENEUzEl5ByMvVWmdEa2qfD1Ipc8hsbvMD0mS86RDt0Sx4D/9l3dvRlIlgFJ0EInEXsEK5+YZH7TEmS2yIgi2wHa6HbRuVty7vt8eNODQNyHh7xtTdp7ikVgmquh/tAy4fV64FlX4PWnh2wE2bre9J2P8uQGy2/XXkB8l6GSIpub9VF3/yLv4L0jgb5TAexXW8DfNFWBoEnqHLF2Ep4zrON/dUIIUPWLvNuqpswRDFcwfMjXCyIFniX1SXwWs023s/aNfd+BddbmJ0v7pN8WnU/D8ALH990uvpU7FrB4E75XRe05eDYjfxvarXYfA51xNg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <920e0bde-7381-32ef-9fba-bbf058590870@suse.com>
Date: Tue, 19 Sep 2023 16:09:52 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 06/10] x86 setup, microcode: switch to the new bootinfo
 structures
Content-Language: en-US
To: Christopher Clark <christopher.w.clark@gmail.com>
Cc: Daniel Smith <dpsmith@apertussolutions.com>, stefano.stabellini@amd.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Luca Fancellu <luca.fancellu@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rich Persaud <persaur@gmail.com>, xen-devel@lists.xenproject.org
References: <20230701071835.41599-1-christopher.w.clark@gmail.com>
 <20230701071835.41599-7-christopher.w.clark@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230701071835.41599-7-christopher.w.clark@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0072.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4b::23) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8995:EE_
X-MS-Office365-Filtering-Correlation-Id: b548a99c-9f36-4390-dfae-08dbb91a1965
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	N58+8zWuUm5V5dR/o1yttgeFesAjfigvmYMYoQWzpGrdRYo4WZOQ+EBu3oKkh0yoBMoHDjesslJtPx9foeg5i0/mMgGyXDc2OPMeVWMFGLV89g0/aPlZXM0Kx0BU05L2KpEgwoXFQTtu1Mrl9aztxTsZHidX4Dvefle7nJIs9UFdC6MezFjKkB1i9wV8BYd2ZKhaGt7UC4Uj8KxLMvF0Gn3RVBOx4zexvjJ3TEW+/RFMZXzXQ/G3EodSyh5ZNhORUK9wosFfgBacQB4XGSbgRudNzyrEVXlvWJUmr2wVP8D2q3hEDrRVxqZbNCAkpJUIHNmJpkoEHTG/+8nkWJ1IKg9V51eWW/YzCRTtJHWIFJYTd3YsWE/xWUNMdtCPlewy7tMB85baf7iy+2PUUOot4uyivmXNFa+8LhibGjO8CjUrM3M+l2vKqwluNO8iF+G+fJLNbKX0f8v3eFAJ7L5S8HFaVqsWoNupqSpr4aNONBqMooUjm/WioKLCSC3NrvyE85eDI76GtURkUuCKUsPkxbu/Ulx3d9Ck4bGvjK39L1N02Zids7u7lHF7HF8U655Tz36PDGXEwGVO9LtlWh5DJj9t6tWp6AHAID476ffmDf3+XhLyixpBt6YpV9JxAL+D/011n5wsqlzeNQOW+sDmfg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(346002)(136003)(39860400002)(396003)(366004)(451199024)(1800799009)(186009)(36756003)(38100700002)(31696002)(86362001)(31686004)(478600001)(6486002)(53546011)(54906003)(2906002)(66476007)(66556008)(5660300002)(66946007)(8936002)(6666004)(8676002)(4326008)(6506007)(6512007)(83380400001)(26005)(316002)(41300700001)(7416002)(6916009)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OXZNL0tHbitiSTYwajd3MEI3T0gzS1VmTnoybXQ0bEFvWWhVK2JrV2Q0UHJp?=
 =?utf-8?B?YkxIMmZwWnY0WFN0V0NaVTZMNzBHL2taVzhYay84eFc2OVB0N285Qk5FMit2?=
 =?utf-8?B?VWk3cFpLc3g2eU5LMDNWM2xzNnJOeXlKbFRYaGFIeGVpaDVyUWJyME41YUR6?=
 =?utf-8?B?UFhGejdHQXlMRkNPdk5LR2w1TDlENG1tdUJVSHg0QlVhUUIwZDU5SmVkZTBE?=
 =?utf-8?B?TjIxNzdEdXo1bm5MRVF0RUR5SDhFTldQYVNXNHFaM1o0RFRPNTJkWnc3dGx1?=
 =?utf-8?B?RkE5TmFjS0lUZTBqSGt1MzY2YWp5RkVqVVJGY1U3RGlrL1R6dUF0NkRNRXJG?=
 =?utf-8?B?RHU2WTJPMVo3SmV4WnhpdUY1a3RXN3dHRjVxdnRMT0FYK2luYUZZNnFra1pN?=
 =?utf-8?B?SHI5ZHBieTJFOWxxbUJZSjVoTTFJV2xhYk11M3hTaHJTekkwV1YxSEJSb2wv?=
 =?utf-8?B?T2x1ZWNKdEpYUWVjeUtDWDB2MlM4eExSazdiSnBOOEtURWo3UXh6RFlXQnpl?=
 =?utf-8?B?S2RvYURZOW42SWRjWTdhVE9CYVM1RzArTVVKNUwrZ2VZZ0ZrQWEyZitBT09Z?=
 =?utf-8?B?RXFpb0R1Vm12QjhQZkZ2MlRmNCtjcTlSMnNKbWQ0R052VXlPTDRzamxCQ3JZ?=
 =?utf-8?B?dXVnWkh0Tm9GSUtRWXM0SmNTWXozMmpZKzhndjluTXhpWWEzRXNVaStLd3d4?=
 =?utf-8?B?OVdrZWZLWjJHa2JIYWI5RUlEWG82YW9zcStvQjhlaHo4NzR3NGRrWW92Zk5X?=
 =?utf-8?B?cUJXYmlkWDJ3QTk5cUc2a3JWVkFHcFA3Z1FhM2YzTzBQVVRIYThRYzB1MEpu?=
 =?utf-8?B?d0xrNCtaOWVYSUQ2a2p3a01IOUhhTG1tdUEwUXJ6M1IySC9HWXlrY3Q5and5?=
 =?utf-8?B?ZGVBdlIyNlBoRGJEbzNDTFVIamVhalppb0p1eFBCL1c2V0FDTHNscGFjSnJz?=
 =?utf-8?B?QjBLVnp5VWVmSVBucGF5VnJUTWJuWUZvMUM1VWtHZlc3Sm1ONllONGRkQmhB?=
 =?utf-8?B?aGVPT3Z3cTZkd0FhMy9lUGtDbUxmMldpWk5vblN6UUV1azdqN09WbVZhV0Nl?=
 =?utf-8?B?UDkyYnpRWmZ0MFNueE1LWFNGMWJBZ3hMVnVQM0pZU0Q1QnRrYldKRmhKbThG?=
 =?utf-8?B?cXZXQzRvTnhSbzUzZ2k3cEEwZVRTb20zdE4veXFNT1A1eC94aWlYcmt2RW9X?=
 =?utf-8?B?bzZ4TUZxRFNBNDBQOTE5aDNJSDB0V3VZMUQ5RU5BZEQzZ1pvZXdrelJlV3NH?=
 =?utf-8?B?Mm1oZDRqN0pMcjExOUhSYkFZWTljMXYzRG5qdTduOW43RktrbndiSXhJUzBr?=
 =?utf-8?B?bjhnV0E5djg5UW5YZDFKOHBCVng3RkxKNDhkeE9GdUk0cWNMSzFBTHQ3ZHNE?=
 =?utf-8?B?Ui9TUnFtWG5KTUM2NXd3dXlqZzJRYjdKWkZDZjVOWEY1MElWNHJGWU5tZDQ1?=
 =?utf-8?B?cUhVN3pKTkdBZWhUS2ZjT0VGdHU0cVF3clE4YWpHc1ViR0FscW9VV0Z6TnFy?=
 =?utf-8?B?UW83OS94amxMbHFQd0tjZXRjK01FRk4yRHE3eHhrb3Z1M2NvNjJaUkR6Nis2?=
 =?utf-8?B?dDhKd29qV1pzMjg4bk1BZ0E5NXVNRHpiaTJ3T25LbTVXMjh0ZjFvSkVHbjZu?=
 =?utf-8?B?czVobFZHS1QvR3NlZVJoTTF4SXhNN3ZQWnU5UGdPVTd5YjFQdERBT2Z6ZE1I?=
 =?utf-8?B?ZXNSUnFpSitPNWhDbUhoK2tjT2JLSk9QQllWeFE4UXBXUHp2MzhvM1prYlpF?=
 =?utf-8?B?Q2ZMeWM4emNRcHczb1pJZStHcnhlNm1heFprWnZXZzNsQkdQb29zMWFiY2R4?=
 =?utf-8?B?cHdOTWJpdlpXaW5UbDFOaysxUnFTWTZpMzYzTmw5Y1VjNzZCMkVldVV2NUgw?=
 =?utf-8?B?MEQrcThuNS80VUF6dU5MOHArclhHR0FvaWJxbXQ0MDNYWEJkc0xkczFKMWFH?=
 =?utf-8?B?ZXpSdThXbW5lVlFXYWZHY0R2c1V0L1YyT1FOYzBtUG9iQ1NsdHRLVVN2WTdq?=
 =?utf-8?B?RXFCTllMWmlyRGpWei85aHFCN3lIN2p5ZncyZFRpZmgrSkZrNDduTHlXeXRB?=
 =?utf-8?B?SHVnZUhwdzU1Y2Jhb3dzRTVRMVdjSGczcWx4TmVIdkhjU2RpM0lsdjRORzVy?=
 =?utf-8?Q?lLJeoq3hGslawXcZ3s8BevjLq?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b548a99c-9f36-4390-dfae-08dbb91a1965
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 14:09:55.0353
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: l9Vxcrm0RNVHrBkAkq3uRns+xIsuWPmO1N4gx2sVJoJ8ASpi5MsvNGtWk+Cb8FHR7sDs0vLCGC1XpWGGFKXTvA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8995

On 01.07.2023 09:18, Christopher Clark wrote:
> Next step in incremental work towards adding a non-multiboot internal
> representation of boot modules, converting the fields being accessed for
> the startup calculations.
> 
> Move the per-module scan logic into a dedicated function from the
> iteration loop and set the BOOTMOD_UCODE module type when microcode is found.

It's not really clear to me why the split (and the associated code churn)
is needed.

> @@ -150,75 +149,109 @@ static int __init cf_check parse_ucode(const char *s)
>  }
>  custom_param("ucode", parse_ucode);
>  
> -void __init microcode_scan_module(
> -    unsigned long *module_map,
> -    const multiboot_info_t *mbi)
> +#define MICROCODE_MODULE_MATCH 1
> +#define MICROCODE_MODULE_NONMATCH 0
> +
> +static int __init microcode_check_module(struct boot_module *mod)
>  {
> -    module_t *mod = (module_t *)__va(mbi->mods_addr);
>      uint64_t *_blob_start;
>      unsigned long _blob_size;
> -    struct cpio_data cd;
> +    struct cpio_data cd = { NULL, 0 };

Why? You don't ...

>      long offset;
>      const char *p = NULL;
> -    int i;
> -
> -    ucode_blob.size = 0;
> -    if ( !ucode_scan )
> -        return;
>  
>      if ( boot_cpu_data.x86_vendor == X86_VENDOR_AMD )
>          p = "kernel/x86/microcode/AuthenticAMD.bin";
>      else if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL )
>          p = "kernel/x86/microcode/GenuineIntel.bin";
>      else
> +        return -EFAULT;
> +
> +    _blob_start = bootstrap_map(mod);
> +    _blob_size = mod->size;
> +    if ( !_blob_start )
> +    {
> +        printk("Could not map multiboot module (0x%lx) (size: %ld)\n",
> +               mod->start, _blob_size);
> +        /* Non-fatal error, so just say no match */
> +        return MICROCODE_MODULE_NONMATCH;
> +    }
> +
> +    cd = find_cpio_data(p, _blob_start, _blob_size, &offset /* ignore */);

... use the variable ahead of this assignment.

> +    if ( cd.data )
> +    {
> +        ucode_blob.size = cd.size;
> +        ucode_blob.data = cd.data;
> +
> +        mod->bootmod_type = BOOTMOD_UCODE;
> +        return MICROCODE_MODULE_MATCH;
> +    }
> +
> +    bootstrap_map(NULL);
> +
> +    return MICROCODE_MODULE_NONMATCH;
> +}
> +
> +void __init microcode_scan_module(struct boot_info *bootinfo)
> +{
> +    int i;

No plain int please for variables holding only non-negative values.

> +    if ( !ucode_scan )
>          return;
>  
> -    /*
> -     * Try all modules and see whichever could be the microcode blob.
> -     */
> -    for ( i = 1 /* Ignore dom0 kernel */; i < mbi->mods_count; i++ )
> +    i = bootmodule_index(bootinfo, BOOTMOD_UNKNOWN, 0);
> +    while ( i < bootinfo->nr_mods )

Why is the comment going away?

>      {
> -        if ( !test_bit(i, module_map) )
> -            continue;
> +        int ret = microcode_check_module(&bootinfo->mods[i]);
>  
> -        _blob_start = bootstrap_map_multiboot(&mod[i]);
> -        _blob_size = mod[i].mod_end;
> -        if ( !_blob_start )
> +        switch ( ret )
>          {
> -            printk("Could not map multiboot module #%d (size: %ld)\n",
> -                   i, _blob_size);
> +        case MICROCODE_MODULE_MATCH:
> +            return;
> +        case MICROCODE_MODULE_NONMATCH:
> +            i = bootmodule_index(bootinfo, BOOTMOD_UNKNOWN, ++i);
>              continue;
> +        default:
> +            printk("%s: (err: %d) unable to check microcode\n",
> +                   __func__, ret);
> +            return;
>          }
> -        cd.data = NULL;
> -        cd.size = 0;
> -        cd = find_cpio_data(p, _blob_start, _blob_size, &offset /* ignore */);
> -        if ( cd.data )
> -        {
> -            ucode_blob.size = cd.size;
> -            ucode_blob.data = cd.data;
> -            break;
> -        }
> -        bootstrap_map(NULL);
>      }
>  }
>  
> -static void __init microcode_grab_module(
> -    unsigned long *module_map,
> -    const multiboot_info_t *mbi)
> +static void __init microcode_grab_module(struct boot_info *bootinfo)
>  {
> -    module_t *mod = (module_t *)__va(mbi->mods_addr);
> +    ucode_blob.size = 0;
>  
>      if ( ucode_mod_idx < 0 )
> -        ucode_mod_idx += mbi->mods_count;
> -    if ( ucode_mod_idx <= 0 || ucode_mod_idx >= mbi->mods_count ||
> -         !__test_and_clear_bit(ucode_mod_idx, module_map) )
> -        goto scan;
> -    ucode_mod = mod[ucode_mod_idx];
> -scan:
> +        ucode_mod_idx += bootinfo->nr_mods;
> +    if ( ucode_mod_idx >= 0 &&  ucode_mod_idx <= bootinfo->nr_mods &&
> +         bootinfo->mods[ucode_mod_idx].bootmod_type == BOOTMOD_UNKNOWN )
> +    {
> +        int ret = microcode_check_module(&bootinfo->mods[ucode_mod_idx]);
> +
> +        switch ( ret )
> +        {
> +        case MICROCODE_MODULE_MATCH:
> +            return;
> +        case MICROCODE_MODULE_NONMATCH:
> +            break;
> +        default:
> +            printk("%s: (err: %d) unable to check microcode\n",
> +                   __func__, ret);
> +            return;
> +        }
> +    }
> +
>      if ( ucode_scan )
> -        microcode_scan_module(module_map, mbi);
> +        microcode_scan_module(bootinfo);
>  }
>  
> +/* Undefining as they are not needed anymore */
> +#undef MICROCODE_MODULE_MATCH
> +#undef MICROCODE_MODULE_NONMATCH

No need to comment this; we do so elsewhere as well.

> @@ -738,11 +771,6 @@ static int __init cf_check microcode_init(void)
>          ucode_blob.size = 0;
>          ucode_blob.data = NULL;
>      }
> -    else if ( ucode_mod.mod_end )
> -    {
> -        bootstrap_map(NULL);
> -        ucode_mod.mod_end = 0;
> -    }

I can spot why this and ...

> @@ -786,8 +814,7 @@ static int __init early_update_cache(const void *data, size_t len)
>      return rc;
>  }
>  
> -int __init microcode_init_cache(unsigned long *module_map,
> -                                const struct multiboot_info *mbi)
> +int __init microcode_init_cache(struct boot_info *bootinfo)
>  {
>      int rc = 0;
>  
> @@ -796,12 +823,9 @@ int __init microcode_init_cache(unsigned long *module_map,
>  
>      if ( ucode_scan )
>          /* Need to rescan the modules because they might have been relocated */
> -        microcode_scan_module(module_map, mbi);
> +        microcode_scan_module(bootinfo);
>  
> -    if ( ucode_mod.mod_end )
> -        rc = early_update_cache(bootstrap_map_multiboot(&ucode_mod),
> -                                ucode_mod.mod_end);
> -    else if ( ucode_blob.size )
> +    if ( ucode_blob.size )
>          rc = early_update_cache(ucode_blob.data, ucode_blob.size);
>  
>      return rc;
> @@ -819,11 +843,6 @@ static int __init early_microcode_update_cpu(void)
>          len = ucode_blob.size;
>          data = ucode_blob.data;
>      }
> -    else if ( ucode_mod.mod_end )
> -    {
> -        len = ucode_mod.mod_end;
> -        data = bootstrap_map_multiboot(&ucode_mod);
> -    }

... this isn't needed anymore. The code doesn't appear to move elsewhere.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 14:10:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 14:10:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604782.942298 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qibQU-0004hn-Jg; Tue, 19 Sep 2023 14:10:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604782.942298; Tue, 19 Sep 2023 14:10:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qibQU-0004hg-GZ; Tue, 19 Sep 2023 14:10:06 +0000
Received: by outflank-mailman (input) for mailman id 604782;
 Tue, 19 Sep 2023 14:10:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ezs9=FD=citrix.com=prvs=619432e5c=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qibQS-0004MD-I6
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 14:10:04 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 36fe5871-56f6-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 16:10:00 +0200 (CEST)
Received: from mail-co1nam11lp2174.outbound.protection.outlook.com (HELO
 NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.174])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 19 Sep 2023 10:09:51 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CO1PR03MB5859.namprd03.prod.outlook.com (2603:10b6:303:98::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 14:09:45 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 14:09:45 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 36fe5871-56f6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695132600;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=cYJusNWdOzHq2wpHZKob2Mtr0plkVWOcJrgiLUE//MA=;
  b=WgVsc/GUVtwtSq7ioZX50v0DM2sGLXgxYlKAS+Cu3X/HBzF0LAmLlpe9
   CZjy+RXvtjLSBw3qHIlJ1Gj/OlrySOB1EwoE+NP169L13mgbvYTQv+ahA
   nlv/TCLguOY5YAT159QgjJ63KxFSgsWo2PXGQWERSqXYkux95As7R4idD
   4=;
X-CSE-ConnectionGUID: PfIQZX/ATsukkiFvcFwaOg==
X-CSE-MsgGUID: z2pyGF9XSZSJ9T3BAuwnIw==
X-IronPort-RemoteIP: 104.47.56.174
X-IronPort-MID: 125832073
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:ddcs5q+d53T6leAdxqMFDrUDIn+TJUtcMsCJ2f8bNWPcYEJGY0x3y
 2EdXTvSM/nbNmOmeNB2Oduy8R5S7ZWDytNlTlBkrCA8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks11BjOkGlA5AdmNKka5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkl2+
 90hGgBKRyyYmuG1wZylQcdzj+MseZyD0IM34hmMzBn/JNN/GNXoZPyP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWNilUujNABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVwHOgAtpNT9VU8NZ42kWC6UJCOCYkbnnqnaKTo1OhXfNAf
 hl8Fi0G6PJaGFaQZuf6Wxq0sXuVpCk2UtBbE/A5wAyVw6+S6AGcbkAUQzgEZNE4ucseQT0xy
 kTPj97vHSZosrCeVTSa7Lj8hSiuNDccN3NEZS4AQQYP+dDlrKk6ix6JRdFmeIa3hNDoHTD7w
 xiRsTMzwb4UiKYj1bi//F3BqyKhoN7OVAFdzh7MQmuv4wd9ZYikT4+l817W6bBHNonxZkaFl
 GgJnY6Z9u9mJYmEiSilUOgLWraz6J6tMzDCgFgpA5go8Rys/WKuecZb5zQWGatyGsMNeDusa
 0iKvwpUvcZXJCHzMvMxZJ+tAcM3y6SmDc7iSv3fcttJZN52aROD+yZtI0WX2ggBjXQRrE32A
 r/DGe7EMJrQIf4PIOaeLwvF7YIW+w==
IronPort-HdrOrdr: A9a23:tEfX5qpQTZDhJCPMGidtphcaV5tQL9V00zEX/kB9WHVpmwKj5q
 STdZUgpGvJYVMqMx8dcL+7WJVoPkmsiqKdjbNxAV7AZniVhILXFvAB0WKK+VSJcREWndQttp
 uIHZIObeEZBjBB/LjHCGHTKbodKLLsys+VbSi19RpQZDAvUoUlyzpQTj+cFEgefngyOXL6fq
 Dsl/auY1CbCAcqhgHQPAh0YwG5naytqLvWJSQeAgIh6k2nlCrA0s+DLzGomi0GVi9Jw/MI7W
 jBnmXCl9memsD+8AbYy2jQq7NfnNeJ8KokOOW8zvINLynqiEKPeoNsQNS5zUkIidDq0k8ujN
 7P5y0BEq1ImgjsV1DwmwLpxw7jlAwj8GDv0niRhXeLm72CeBsKT/BZgJ5fcF/n51E7vNd6uZ
 g7ol6kiw==
X-Talos-CUID: =?us-ascii?q?9a23=3AnotTLmvKKXlIoSfAColUWKUJ6IsdfFzk/keXCnO?=
 =?us-ascii?q?jFGVqSZOLQnGP8YRrxp8=3D?=
X-Talos-MUID: 9a23:kRu/7gs/VTIKGYa+oc2nlmt6JehGspSVOnsvwKldkeCZKipRJGLI
X-IronPort-AV: E=Sophos;i="6.02,159,1688443200"; 
   d="scan'208";a="125832073"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=go30rtAz/ix7M7ub3tNtg8/miAVuC7JTjMEuXz3wTinYfjxtUHwirXf2xkYG7JyMBfxBqrwwpruXzS7kSxQxJ4yTUGPFb30JYhIIXQMKcPPDUl4fiz6U7X+md/gJwQI+xPyUNwpC3qGNFAj+y9O0JpRFCHi79fpl6HwXHuGQoXsYeVUGmpRKDNe/31TT4TL2EdUFcE5vRqZJfTfE5VRIFAFSk3CxGqhp6He8jwSsqMwMuRLT7eCfyk4Ku7d1n5o3dAssjD2RJcuHa3NnNa6so3HtFRf4++u4Gxj/BLcd6l+KGu7aebD0NGWKdILfm5+vdijJoq2lBc+enBg29A/ZqA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9Wlu/cL8a5sbGwcXL6S4ZPGCSKgPPB297NyQjClZR8w=;
 b=Nrh2bYzwO0VUgdse+Kqwq2mbAcwHs7N+iONrmDSTLEfwvoP3zo4pZk8zJ8G0iXvLPDzzXI/P9ZDyN2g/pgVup7zk6d8wpWXuAxxtdybDRVEIfDgta0c9xr/BzoYr5UMAgGPAZIz3WGUvHgmq+/wxw/xrncewuuDenD2WQ240n3tcIETCGiwAb57+ecIQd/RpgvjEihCpbSrbycPZFLeWNfo2BUmWV3t2YJiyptbSFVDSEIJ280UXOQmRmuLC3MR16uky6ApbMVg7axIZqg1DV8Af/lcME5OZHLeDDCEFqy3zFxOfBwM3dq0j0jaUvYw6PMuLHoJL7f86niUv+ZznKA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9Wlu/cL8a5sbGwcXL6S4ZPGCSKgPPB297NyQjClZR8w=;
 b=s/KhP8Bmzy9iZyLcZYVosOQDCU3022YAVJgnEiUvbrt4R3jz9xkp1LVj42ybK08zzPZbNvwx2qvf3Yv82OGXn9vJB/DjpHZemOsgoXAL7POdv2GA8nhYXQ/gJ7FtQpTdVIXkaVFa/LokhE6psGuQG9x5c9UFoFc400P1ukqe/2Q=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 19 Sep 2023 16:09:39 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Paul Durrant <paul@xen.org>, Kevin Tian <kevin.tian@intel.com>
Subject: Re: [PATCH v9 01/16] pci: introduce per-domain PCI rwlock
Message-ID: <ZQmro968jYGOb5sY@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-2-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20230829231912.4091958-2-volodymyr_babchuk@epam.com>
X-ClientProxiedBy: LO2P265CA0303.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:a5::27) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|CO1PR03MB5859:EE_
X-MS-Office365-Filtering-Correlation-Id: 84b840a6-5e90-4fa4-c26a-08dbb91a1369
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	V5bFuXB3JRGwNSmZcmlVqzssDRlQQy0fG134r7ZYZeEzbIMT3lPXJVbPA/H8oqZY08CIyoJhZu6rFoPixb8GeOEo24HbTdNqtH4JkVZ9UuyTu6MifiLIJ/Y9g/l/jthWM7TAkWej8YdCnb965iDBjaPy8LcaO2jvwRE2e0xhmBLlWef+JkRzIbbgOYCtMut/n6aOd7eNkYELjwyavhU8YXGroIhWk4eJJQQvr+at+E6fuvmd7afXb7prcLr8NhDg/uC9tGreshtk12Kb2CzAnPPc1n1pki2ucpuJgh+gT9bFQj4O0UQqU1yLuXspdRqDDXUBZHpZ51o9zPJvAta27cgdId0jYXlOonQyX6l/8xRs4uJsGwX5unnwtgnFrg+A5D7kUUGxixQHnt6UBS37S6QGp1ytIPdDL4AO/pjPaWuMxdfQ57hcT+zvMSKS2gEO/LPaoNv3sef1L7qgjjBgC0Wpvs1TBX8dXOlBqhIXcAZGejjh2ALOH7dwcZw2NeuZwD8+FjD8bgvjm86kN4Kfs4pUMrkxykBGbPT0cc9XDNzq0Is+778RfGVYFxqVB5AH
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(396003)(39860400002)(366004)(376002)(136003)(346002)(186009)(1800799009)(451199024)(26005)(6506007)(6486002)(9686003)(6512007)(82960400001)(85182001)(38100700002)(86362001)(33716001)(83380400001)(5660300002)(478600001)(7416002)(41300700001)(6916009)(54906003)(66946007)(66476007)(316002)(8676002)(4326008)(8936002)(66556008)(6666004)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T1Y0SXB5a2JRNC9FMmFic0l4T1kwaXlpdXpVeVRNWTVINGtzL09oSW4rVjZF?=
 =?utf-8?B?QlQ4RjZ3dnlaU1Z6ek81blhWZ1lNTnl4V1E2Wk9rMEVYZW82V1F6QXU4SjYr?=
 =?utf-8?B?U1FmSHNDVXowL1Q3ZkFvV3JrY2E5SGtHcFhmUldMVUlvYi9sNnB6akJOMXpy?=
 =?utf-8?B?SXRNWWNML3pGMmRjZGVDaUVmRXQrdDNKeWtwWGMyYjhicnRnemNOOWh3NmVh?=
 =?utf-8?B?RktHWmtYZnMwbm1UVVVDNjBvT3h2RWM0WnYrdi9VR29KTHBXbkR1eHNrMjRS?=
 =?utf-8?B?elhkU2lNZVQvSWMrMnRja25ZUlovQ0lZa3hTUnVtK3IxaWhDS3l2WllvNXE5?=
 =?utf-8?B?bEFEcUdtQkRtakxZZExkckNUN3NNSmcyRE5vYzRHN2tQaXhNSGljNHJhNkdo?=
 =?utf-8?B?V0oxamFRdVFWTkdnc001L2xjSm8wRlF5MW9ZL29Sa3BPTkpHY2hiM0dZaXhG?=
 =?utf-8?B?TGM2eTN0N21qck1kY3k1ZlA2MWFMSzcxY09JU1FvVUdQOTFBLy9VN3Z0bXpG?=
 =?utf-8?B?d0RDVk1Pb3ExbHQrZG9tczlqZTlOWHBYT0NyWmpnMEtiN2pFaXcwYVRLdHNJ?=
 =?utf-8?B?SXRJM0VmOWdyTnNkK25nTjErUVY5M216bWc2SmZYNXRPM2pMRm5JbGFUdFd3?=
 =?utf-8?B?Z0FYc1h2Z1V6WU0yRDFHRUdlRU1NZVNYN05sbWh0MkF4WFpiUXZyR1Fwamlu?=
 =?utf-8?B?blh4bnpESDQxNzl4YTFNVTZjc2VGa0pGSkc2MTAzcHZsN1dsNHBjYnhFdU11?=
 =?utf-8?B?TXQxcVl1UFdybUZiMWZLQkRmY3dFS3RJalJBSXM5VFV5clVQWDhid2dPSkl3?=
 =?utf-8?B?STNwcGZXS3VWSWlENkxzamQyWWY4SnRTNG0vdVB3bUVobmVCczh3VjVPaEJ5?=
 =?utf-8?B?TzU2MWV0N0JBamJBRWtKS0o5cERtQnlSVktNR3dGS1I4VlVYdDlJa0xnbDhy?=
 =?utf-8?B?NWpBY29UUXJuQlQyWCtVempON2xvOW9LWGh4N1M1VkF5Y3RrMDErQzRwN2t3?=
 =?utf-8?B?ZnRUZDVxeTdIRC9SZFdxQUNZUUFsV3BNRk9hYWU5WHVPQW9Xc25vZms2L3RN?=
 =?utf-8?B?dWNqdUR4aTlGY3RLSjZqSnhGSkc4MVhNNG5iZFBWQm1sSUtRWWNFak1xd3JC?=
 =?utf-8?B?OUw4d1ArMm9uZ04rekJyWFdRZ0lJOFJ1SjQwcFo1THdlbWt4OUE1NGhSVktG?=
 =?utf-8?B?clZ2V1k0bU1tMDlDWjlrT2VkMnlCbVBQYmMweFB1dFRSdXh3NEFuT0lCVjh3?=
 =?utf-8?B?bDVQcURBb2ttR2RhWGRITUZMKzlxejdkekVzSlVVOWdVTk1zWGZWQ0RxaC92?=
 =?utf-8?B?c0V4c3pqSGVPSXJ3ckJIS0xveXZTWTZpR0UvRmxxTTl3ZmIxcHd3bE4vMWx2?=
 =?utf-8?B?NTRITm0yWGtQNDlUWS9qNjF3dTV0cTN5Q0hlNlVBdFRPM0Z6Q2F1cE9qNzdj?=
 =?utf-8?B?NGRUY2xtRDdXNDBLY2M3akhSMTltWFc5NVRlZkxOM2RNU2FOL2wwR3VFRHVn?=
 =?utf-8?B?K29OTEoya2I2T1h6YzJhZ2ZOTjJzQVdOWkRSUUdoN0xUb2dVWHpteXJLbTBu?=
 =?utf-8?B?SnNvZFFhWDBsVDl6SXE0MlBzNWdwRE1aRGlRckNPaTVnblFvNDZnY0ZpazJZ?=
 =?utf-8?B?RmZOTjhZdHhTckZhNmNhaFBEMXBEQlRxSnlPaXNMem1ObTcwN1FJRjZsU2ZD?=
 =?utf-8?B?YzRsTG40WVpuYkpkRHo2dlNNU1RneDJOWlB6MStRdk1wODlZUTFJdWxtb044?=
 =?utf-8?B?K1UzSXNGYlo1UDR5QTNUeGpPY2txWEdTb0sveWxLdUV3QzNHWjdpZ0R5M1FP?=
 =?utf-8?B?Yk5JM3l3QUJZS1ZhM1VBOWc5bWtMVUlTdFpCbzBlZGZJbnFJZG9VM2ViVHBw?=
 =?utf-8?B?aHJCYWwyY0NVQ0J4TzNEcUo0MEppSTlkeUhrSGpXSUxZZjZSYmJDVjUwYWhn?=
 =?utf-8?B?c3ZIK1J6QVBrMlpqK3NQU0pPN3RSbHNTTXg3T2R2cXhuNUU0ZVZOTkZicmtD?=
 =?utf-8?B?S3VySVdPTGozejUxTEZFNnVDNFRBbzMyNHZWMWJ3cWhoazBycVNqamgvWXBr?=
 =?utf-8?B?S1EyRldVYVRQV2xNVW42dFhNNHp3TndFT2lsdzh1ekRldVQwanQ3OXFhZWI3?=
 =?utf-8?Q?8NMr1A+saqxezTZlUA7MhOIPp?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	IT088PkaB2DXtT6TohGrIQsBXLDFPVnEnD7WUZb+mOzXHhjmryvimDAkTKcQzxeXWUjsZ5jGrLYhGZbB7EmElbJl08Yii6AZ9lSID4BKWGa+Je6eVIeF0ro/NEuxae5+JQGJ5aIechJMOa7LMbHaRePeIgYQrssqXPfyrKYMoB67S3QXPBwQrmXXi+dq6XCUMkNEZqaG8ILIWRV5z3W/KIezavKzwuv58IASqf8dEqpP+iUztMckhbT9Z9wLwWE9ty1L2zRGJIPdD4+WJ0oOb6vmVuf2x7dM2WiaUlGmfRxhHOy66RWArJFpHXAldrx1sREf1aSyPR8QLiE568hniGE2De3zOPbdBczduFncok1DEDH4Lb2Z2YFZieFBnSlQfT18aOcuLdZ9L3wM0FChN1zT7yR84dPIK3pw5Jyu1pKrEhv6vxyhbDhCS02BSv1e19R9irec0Ll+BH9PdP7m9NFduzBAqKOnC5r54xbsbFD+UaHYxqkjahZzGq9WDsUoYgSJQ++efDKgCW4CNtjSOiatNKbQskcbHqrWV2QH0vL+ePrN+WJ6ncG+rjrYAL7ajbC4jxsJ3+UoTEfbevo1owUEFBFcEd/IrgiJ+/N21NOD4SczwrO8MZlUg6zW+bzM9pGVOejK2s6Oe6JrHa9KhFEN4j08GQB44pU5wo8MftI+g4KhTalMOMleSJc4x+WMUS/ID05WZIMm17QBgAQbfgcxUk4maEPwgCSTEd1E2Ra5NgtftPUbnIeOoy8YKcQ4lMIB6kPcu2rKw8BS8/GAsrQenAKzcSSoGQYh0IPT2/f0fMS708W5tw10PD8QOHMZQW8w+7ezYRD466HnzMsSNwROWFsDKH3aMGvCTaVr3upv4cKCqZ1aDndfPLCKqz5nj2MkCgNUOC/yXDpt1M5R+4/M5WIecGGKh37jPxZOoEg=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 84b840a6-5e90-4fa4-c26a-08dbb91a1369
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 14:09:45.1511
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: S5xynKI6Rqc+XmfOJpLU1H1vwUfutnKIMKuNVw+bsRN1QTud76X/7vHx++ZAq4ofaJqMDIV6V1Qyoefgw8XmKA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR03MB5859

On Tue, Aug 29, 2023 at 11:19:42PM +0000, Volodymyr Babchuk wrote:
> Add per-domain d->pci_lock that protects access to
> d->pdev_list. Purpose of this lock is to give guarantees to VPCI code
> that underlying pdev will not disappear under feet. This is a rw-lock,
> but this patch adds only write_lock()s. There will be read_lock()
> users in the next patches.
> 
> This lock should be taken in write mode every time d->pdev_list is
> altered. This covers both accesses to d->pdev_list and accesses to
> pdev->domain_list fields.

Why do you mention pdev->domain_list here?  I don't think the lock
covers accesses to pdev->domain_list, unless that domain_list field
happens to be part of the linked list in d->pdev_list.  I find it kind
of odd to mention here.

> All write accesses also should be protected
> by pcidevs_lock() as well. Idea is that any user that wants read
> access to the list or to the devices stored in the list should use
> either this new d->pci_lock or old pcidevs_lock(). Usage of any of
> this two locks will ensure only that pdev of interest will not
> disappear from under feet and that the pdev still will be assigned to
> the same domain. Of course, any new users should use pcidevs_lock()
> when it is appropriate (e.g. when accessing any other state that is
> protected by the said lock). In case both the newly introduced
> per-domain rwlock and the pcidevs lock is taken, the later must be
> acquired first.
> 
> Any write access to pdev->domain_list should be protected by both
> pcidevs_lock() and d->pci_lock in the write mode.
> 
> Suggested-by: Roger Pau Monné <roger.pau@citrix.com>
> Suggested-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> 
> ---
> 
> Changes in v9:
>  - returned back "pdev->domain = target;" in AMD IOMMU code
>  - used "source" instead of pdev->domain in IOMMU functions
>  - added comment about lock ordering in the commit message
>  - reduced locked regions
>  - minor changes non-functional changes in various places
> 
> Changes in v8:
>  - New patch
> 
> Changes in v8 vs RFC:
>  - Removed all read_locks after discussion with Roger in #xendevel
>  - pci_release_devices() now returns the first error code
>  - extended commit message
>  - added missing lock in pci_remove_device()
>  - extended locked region in pci_add_device() to protect list_del() calls
> ---
>  xen/common/domain.c                         |  1 +
>  xen/drivers/passthrough/amd/pci_amd_iommu.c |  9 ++-
>  xen/drivers/passthrough/pci.c               | 71 +++++++++++++++++----
>  xen/drivers/passthrough/vtd/iommu.c         |  9 ++-
>  xen/include/xen/sched.h                     |  1 +
>  5 files changed, 78 insertions(+), 13 deletions(-)
> 
> diff --git a/xen/common/domain.c b/xen/common/domain.c
> index 304aa04fa6..9b04a20160 100644
> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -651,6 +651,7 @@ struct domain *domain_create(domid_t domid,
>  
>  #ifdef CONFIG_HAS_PCI
>      INIT_LIST_HEAD(&d->pdev_list);
> +    rwlock_init(&d->pci_lock);
>  #endif
>  
>      /* All error paths can depend on the above setup. */
> diff --git a/xen/drivers/passthrough/amd/pci_amd_iommu.c b/xen/drivers/passthrough/amd/pci_amd_iommu.c
> index bea70db4b7..d219bd9453 100644
> --- a/xen/drivers/passthrough/amd/pci_amd_iommu.c
> +++ b/xen/drivers/passthrough/amd/pci_amd_iommu.c
> @@ -476,7 +476,14 @@ static int cf_check reassign_device(
>  
>      if ( devfn == pdev->devfn && pdev->domain != target )
>      {
> -        list_move(&pdev->domain_list, &target->pdev_list);
> +        write_lock(&source->pci_lock);
> +        list_del(&pdev->domain_list);
> +        write_unlock(&source->pci_lock);
> +
> +        write_lock(&target->pci_lock);
> +        list_add(&pdev->domain_list, &target->pdev_list);
> +        write_unlock(&target->pci_lock);
> +
>          pdev->domain = target;

While I don't think this is strictly an issue right now, it would be
better to set pdev->domain before the device is added to domain_list.
A pattern like:

read_lock(d->pci_lock);
for_each_pdev(d, pdev)
    foo(pdev->domain);
read_unlock(d->pci_lock);

Wouldn't work currently if the pdev is added to domain_list before the
pdev->domain field is updated to reflect the new owner.

>      }
>  
> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
> index 33452791a8..79ca928672 100644
> --- a/xen/drivers/passthrough/pci.c
> +++ b/xen/drivers/passthrough/pci.c
> @@ -454,7 +454,9 @@ static void __init _pci_hide_device(struct pci_dev *pdev)
>      if ( pdev->domain )
>          return;
>      pdev->domain = dom_xen;
> +    write_lock(&dom_xen->pci_lock);
>      list_add(&pdev->domain_list, &dom_xen->pdev_list);
> +    write_unlock(&dom_xen->pci_lock);
>  }
>  
>  int __init pci_hide_device(unsigned int seg, unsigned int bus,
> @@ -748,7 +750,9 @@ int pci_add_device(u16 seg, u8 bus, u8 devfn,
>      if ( !pdev->domain )
>      {
>          pdev->domain = hardware_domain;
> +        write_lock(&hardware_domain->pci_lock);
>          list_add(&pdev->domain_list, &hardware_domain->pdev_list);
> +        write_unlock(&hardware_domain->pci_lock);
>  
>          /*
>           * For devices not discovered by Xen during boot, add vPCI handlers
> @@ -758,7 +762,9 @@ int pci_add_device(u16 seg, u8 bus, u8 devfn,
>          if ( ret )
>          {
>              printk(XENLOG_ERR "Setup of vPCI failed: %d\n", ret);
> +            write_lock(&hardware_domain->pci_lock);
>              list_del(&pdev->domain_list);
> +            write_unlock(&hardware_domain->pci_lock);
>              pdev->domain = NULL;
>              goto out;
>          }
> @@ -766,7 +772,9 @@ int pci_add_device(u16 seg, u8 bus, u8 devfn,
>          if ( ret )
>          {
>              vpci_remove_device(pdev);
> +            write_lock(&hardware_domain->pci_lock);
>              list_del(&pdev->domain_list);
> +            write_unlock(&hardware_domain->pci_lock);
>              pdev->domain = NULL;
>              goto out;
>          }
> @@ -816,7 +824,11 @@ int pci_remove_device(u16 seg, u8 bus, u8 devfn)
>              pci_cleanup_msi(pdev);
>              ret = iommu_remove_device(pdev);
>              if ( pdev->domain )
> +            {
> +                write_lock(&pdev->domain->pci_lock);
>                  list_del(&pdev->domain_list);
> +                write_unlock(&pdev->domain->pci_lock);
> +            }
>              printk(XENLOG_DEBUG "PCI remove device %pp\n", &pdev->sbdf);
>              free_pdev(pseg, pdev);
>              break;
> @@ -887,26 +899,61 @@ static int deassign_device(struct domain *d, uint16_t seg, uint8_t bus,
>  
>  int pci_release_devices(struct domain *d)
>  {
> -    struct pci_dev *pdev, *tmp;
> -    u8 bus, devfn;
> -    int ret;
> +    int combined_ret;
> +    LIST_HEAD(failed_pdevs);
>  
>      pcidevs_lock();
> -    ret = arch_pci_clean_pirqs(d);
> -    if ( ret )
> +
> +    combined_ret = arch_pci_clean_pirqs(d);
> +    if ( combined_ret )
>      {
>          pcidevs_unlock();
> -        return ret;
> +        return combined_ret;
>      }
> -    list_for_each_entry_safe ( pdev, tmp, &d->pdev_list, domain_list )
> +
> +    write_lock(&d->pci_lock);
> +
> +    while ( !list_empty(&d->pdev_list) )
>      {
> -        bus = pdev->bus;
> -        devfn = pdev->devfn;
> -        ret = deassign_device(d, pdev->seg, bus, devfn) ?: ret;
> +        struct pci_dev *pdev = list_first_entry(&d->pdev_list,
> +                                                struct pci_dev,
> +                                                domain_list);
> +        uint16_t seg = pdev->seg;
> +        uint8_t bus = pdev->bus;
> +        uint8_t devfn = pdev->devfn;
> +        int ret;
> +
> +        write_unlock(&d->pci_lock);
> +        ret = deassign_device(d, seg, bus, devfn);
> +        write_lock(&d->pci_lock);
> +        if ( ret )
> +        {
> +            const struct pci_dev *tmp;
> +
> +            /*
> +             * We need to check if deassign_device() left our pdev in
> +             * domain's list. As we dropped the lock, we can't be sure
> +             * that list wasn't permutated in some random way, so we
> +             * need to traverse the whole list.
> +             */
> +            for_each_pdev ( d, tmp )
> +            {
> +                if ( tmp == pdev )
> +                {
> +                    list_move_tail(&pdev->domain_list, &failed_pdevs);
> +                    break;
> +                }
> +            }
> +
> +            combined_ret = combined_ret ?: ret;
> +        }
>      }
> +
> +    list_splice(&failed_pdevs, &d->pdev_list);
> +    write_unlock(&d->pci_lock);
>      pcidevs_unlock();
>  
> -    return ret;
> +    return combined_ret;
>  }
>  
>  #define PCI_CLASS_BRIDGE_HOST    0x0600
> @@ -1125,7 +1172,9 @@ static int __hwdom_init cf_check _setup_hwdom_pci_devices(
>              if ( !pdev->domain )
>              {
>                  pdev->domain = ctxt->d;
> +                write_lock(&ctxt->d->pci_lock);
>                  list_add(&pdev->domain_list, &ctxt->d->pdev_list);
> +                write_unlock(&ctxt->d->pci_lock);
>                  setup_one_hwdom_device(ctxt, pdev);
>              }
>              else if ( pdev->domain == dom_xen )
> diff --git a/xen/drivers/passthrough/vtd/iommu.c b/xen/drivers/passthrough/vtd/iommu.c
> index 0e3062c820..3228900c97 100644
> --- a/xen/drivers/passthrough/vtd/iommu.c
> +++ b/xen/drivers/passthrough/vtd/iommu.c
> @@ -2806,7 +2806,14 @@ static int cf_check reassign_device_ownership(
>  
>      if ( devfn == pdev->devfn && pdev->domain != target )
>      {
> -        list_move(&pdev->domain_list, &target->pdev_list);
> +        write_lock(&source->pci_lock);
> +        list_del(&pdev->domain_list);
> +        write_unlock(&source->pci_lock);
> +
> +        write_lock(&target->pci_lock);
> +        list_add(&pdev->domain_list, &target->pdev_list);
> +        write_unlock(&target->pci_lock);
> +
>          pdev->domain = target;

Same comment as in reassign_device() above.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 14:15:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 14:15:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604796.942312 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qibVG-0006Dx-Ab; Tue, 19 Sep 2023 14:15:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604796.942312; Tue, 19 Sep 2023 14:15:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qibVG-0006Dq-7u; Tue, 19 Sep 2023 14:15:02 +0000
Received: by outflank-mailman (input) for mailman id 604796;
 Tue, 19 Sep 2023 14:15:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ezs9=FD=citrix.com=prvs=619432e5c=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qibVE-0006Dk-Ne
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 14:15:00 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e812e8d5-56f6-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 16:14:56 +0200 (CEST)
Received: from mail-dm6nam04lp2049.outbound.protection.outlook.com (HELO
 NAM04-DM6-obe.outbound.protection.outlook.com) ([104.47.73.49])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 19 Sep 2023 10:14:52 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CO1PR03MB5907.namprd03.prod.outlook.com (2603:10b6:303:6e::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Tue, 19 Sep
 2023 14:14:49 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 14:14:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e812e8d5-56f6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695132896;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=YuMYEG+iGOkX2rKZ3el/4bqIgn/qMGCfyI2B/Y2bkx8=;
  b=bztqMSmuKdRcVCgOukSxCX5Qk6tSd4/YlFwuZ2Lbk0oe5z7dMicXTktf
   0t3OO/q6BYLla/frpj6yBpA/DzStiIkVLVAZkoOsQN2sLNRdskTM5Kc/m
   rNJjywCeCVwiCg7f4j1Zb8yh0/L7LGJ3W6es7SgTimnD/1aMZfJstL5SF
   4=;
X-CSE-ConnectionGUID: XAkISIv5Sc2jY7n/7Q+QWw==
X-CSE-MsgGUID: MVcuoZisS2Ca0i3GaY/miA==
X-IronPort-RemoteIP: 104.47.73.49
X-IronPort-MID: 121747094
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:WRBnOKJqYHkLxZ9RFE+RHpQlxSXFcZb7ZxGr2PjKsXjdYENShjICn
 2seXj+HOPffZDakKNx3Pdyx8BkFusSGmNRrQFRlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrZwP9TlK6q4mhA7wVvPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5HKGJvz
 t0GdQsGNBKy2OTxn4v4c9Zz05FLwMnDZOvzu1lG5BSBUbMKZM6GRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/VspTSCpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyj12bOQxXKnMG4UPJiG/eNtslyI/TY4AUUXDnSykL68i2frDrqzL
 GRRoELCt5Ma9kamU938VB2Qu2Ofs1gXXN84O+8n7ACAzILE7gDfAXILJhZac8AvvsIyQT0s1
 3eKksnvCDgpt6eaIVqC8p+EoDX0PjIaRUcSaClBQQYb7t3LpIAokgmJXttlCLSyjND+BXf32
 T/ikcQlr7AajMpO26Dl+1nC226ovsKREl9z4RjLVGW46A8/fJSie4Gj9Vnc67BHMZqdSV6C+
 nMDnqBy8dwzMH1ErwTVKM1lIV1jz63t3OH06bK3I6Qcyg==
IronPort-HdrOrdr: A9a23:cIOgCqm0Tz59avng+QBcsWmRGsPpDfLo3DAbv31ZSRFFG/Fw9/
 rCoB17726QtN91YhsdcL+7V5VoLUmzyXcX2/hyAV7BZmnbUQKTRekP0WKL+Vbd8kbFh41gPM
 lbEpSXCLfLfCJHZcSR2njELz73quP3jJxBho3lvghQpRkBUdAF0+/gYDzranGfQmN9dP0EPa
 vZ3OVrjRy6d08aa8yqb0N1JNQq97Xw5fTbiQdtPW9f1DWz
X-Talos-CUID: =?us-ascii?q?9a23=3Api+4omvI8dWE1a4gtPDQD9le6IsVW37891bOfnS?=
 =?us-ascii?q?zU2RYF7vSFmbTwZx7xp8=3D?=
X-Talos-MUID: 9a23:HaqHmwqbd4UgMO4XcPsezxRcP9pv0aW1MxommM0H4OaNBGt1Oh7I2Q==
X-IronPort-AV: E=Sophos;i="6.02,159,1688443200"; 
   d="scan'208";a="121747094"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EVUGFn+AEcudLtd/JTGNSeAYe0ktlI+NCZ4459DhShtFzjFXBdjiAuBJhEFifoka98/sIHXKsvusXAVS8IYkrxBus0aUv6TCCbZIGYemESauvgZfUHVm6qdHcWjyASUDPrUidyvdu9FJxgzan3ZWImjzR3cybd6XklhPRkJmhdnD3/1mRxGK3J+GR9sarYDSUkj/iWCjmfrjj9g5DPnkn4VVF2aVCxX0D5yb45NwvN+2bxw07MmPr4+tKWC+0KfVOI/PPY5QSK3ByxIOMXg62ngnRHMZEzHjPDohXpECwy4AEya5PuAOaHrdp9hWKwMr4YGQ9WRbGtG2Uck3FORF7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=2ajS2uRO6wnVyggQd4OqE5WGtuU97nQyAI7MNbKCh70=;
 b=QVFY6uwEDSyTbYDrkK6CKhr6iRMtgktkwexw5jxz01tk09siYYnDwrB2nYut1WvqMWzzqc/bcLxUTgMsg5RjmsCRUhIo+q2BVrLnGsQ49EUDwq0cGc5+0LahGiywxG74Mk16JUbmYLPtZc/y8DnIjeK5x22vmINW39Jm9vKbXSS4imlc+ydkG5Hi19y4+C/B5nIz8MaudmPl9IZRLtmth8bRB36+Jx5oi/qW9CPYAKnawFEp1ajMf3K9YMcD/eSFJRI9gSQaTD6SrbwAVMGyxN++gCEQDF+EARrEe237cZrhV685p3ioqVgb5CfpW2UdZwipw+2lXzjzitURvfGXcg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2ajS2uRO6wnVyggQd4OqE5WGtuU97nQyAI7MNbKCh70=;
 b=XqoyAI3WItsNqbgSNA8zNtrKmiQtsv0wt83bB5xfV/bmeljBWyc878/YmCgrzK2mNtBszG4c2YmJvNENWnNl/YvuGKBsiDJnfP6OWYjqpDOGMJ6UGPQLr2hyXXmWLXxRJtFWSAFvAQufNmW6D3N22u8lTwefWhhSt0gBrvoweYg=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 19 Sep 2023 16:14:43 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v3] console/serial: bump buffer from 16K to 128K
Message-ID: <ZQms01Wq62yMzGDg@MacBookPdeRoger>
References: <20230919125118.12657-1-roger.pau@citrix.com>
 <46b0b9e0-29b2-d526-d32f-d03415e621fb@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <46b0b9e0-29b2-d526-d32f-d03415e621fb@suse.com>
X-ClientProxiedBy: LO4P123CA0587.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:295::15) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|CO1PR03MB5907:EE_
X-MS-Office365-Filtering-Correlation-Id: 8a3c7586-4c41-477c-5e41-08dbb91ac883
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dJen2QbhelGgBq877xzG+WbvKX/navGG3CES39ASeev33ZhT3Qqind+p26kN4w3wQMUCmfsdJi3hUC4XZhJGqfGQFi0FZsUIv4los/UltwNfdNHTXpVRA0kLCs9LD1M7adOfuIZ/L+66AZvq9dY/MxCG3NuPlk6vsh19EcvMG0f6y6KnNDPm5V8p7fRp0/M6LwAar+zYLZZwKpnsdS8PteseufJyHITy/Hytaupv0gZqiMlG/6meoCQXUudtNq1yG9o16xio9svoJf7KjCrA3THzxPpJswSS+a6CBHNpE6a9KDRgn/TpK90WpxRM52/c6Ywo3FMHZPzBouXKQDEs5KkBX/laB0VBijam4G0/seRh7h07QamimB7UI0Mhk+E/6q0TFsANVd1VGfkCwb43IRgCPVPXUy0ojfnNSQNtDSzrrSqFX9wdsk9+ye/vKkVYlp9CSFvIXc0qGPPe2tBaC3h5kKkr2JiDnTbbZDJD3vBiVFhXCTiAmpK5FrIupTrxqjs1Yj21XDBdXEXEzTZ+y/9K5kc9L4OORZI7BTn+mr1Z9Hi87UX0s5qhUNMCZ03r
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(366004)(346002)(136003)(376002)(396003)(39860400002)(451199024)(186009)(1800799009)(316002)(4326008)(41300700001)(6916009)(5660300002)(9686003)(6506007)(6486002)(6666004)(6512007)(53546011)(2906002)(8676002)(8936002)(54906003)(66556008)(66476007)(66946007)(478600001)(86362001)(33716001)(83380400001)(26005)(85182001)(82960400001)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SGJJRVFGeXlTOHFqOCtTZm0zNkx2SVBIblNmZUZKOU5yOHlvQit5KzQwWkNp?=
 =?utf-8?B?dmV5Nmx2QjcyQ29CVnlnc2ttNTdmMEZCOGpSZUhGQks1OEhZak50ekd6QWF1?=
 =?utf-8?B?Q3I3ajdTeXZnSE5XUGZqK1Jvenp1OVhlWmQzZDlOa1J1TTlJTmgySmo3NUhj?=
 =?utf-8?B?cnNzMEhSd0hpUEZGY1NtQ0RUcUdyRWhNcjREcEE2YWE3cWNndXJ5KzhURFNG?=
 =?utf-8?B?L2xqQzJ6S3YzYWVWTkErdnk3dzVxOUYzblJqTzZIOERQekZPNTBaVkkwWmc1?=
 =?utf-8?B?SXpZUk1NbUcwQmF6ZVlrSFpaTjhxODZkbVcva0IwREhkbFZuYUE0eWxtSm5s?=
 =?utf-8?B?eU9iRWdwNHMweGFMdDRPOFJFL3pza0NFUy9JTlhuQkNjN283WGpPQmRRbGlM?=
 =?utf-8?B?UTdYdkVrV2p3THRJVWJaSHFpYk9Uc21NaGJKdzRreDhmVzFXZW5MSnpsR3Rj?=
 =?utf-8?B?MUY0ZkVFR2RXSW5Tc2x5NVF5OUpURmo2V0hNZFVjdW5qRXVuSXRGZCtNOXR3?=
 =?utf-8?B?SWNvK2g1MXB1Nm1lZXp0YVZXbjdzaDZTKzZsN3A4N2wzeVM3aHA4ZGdtQVI2?=
 =?utf-8?B?TnNlK0FhL3JGY0M4Q2NKL0xVcjZOYS9YU3ptRmdKR0hSdGtjUWtyRXJnNlla?=
 =?utf-8?B?YWZ1a2drcitNTFFHb0IzU1BpY2xYSDg0Zkc4cE5tTTNESFViZHpjcG1WeXZr?=
 =?utf-8?B?cDk1ZkFpbnJRUHRIMnd1LzZENlNjZEhwMWpTRWc4VDRuUlJCdDExbFh5Vkhu?=
 =?utf-8?B?Tno1NHpyaThsM2E4ZHcvYkZoL2d0RnJiL1B6eW1rSk5GZUxpMGRrMGt2eFJM?=
 =?utf-8?B?cjBhdEsrZWVNeFZ2ZnhtekF0YjJnajFIdlBrNFlGZHVEU2owUFFxV2xTdVpT?=
 =?utf-8?B?N2o2UTdCQUxLSjMyQmZZTitUNzBDNUs5UWtGZGtNREF4UEkxUXRMYm8zMEpn?=
 =?utf-8?B?ZUlFdVJaQThpQ2JHU2FGVU8wa2VWbStqV3FpRmYzUS9VTENKVlorS3E2Q3Er?=
 =?utf-8?B?VzZhK2hGSzNXYWFlMW5GbElQOFFKZ2RvM3Y1YjVsYW11YmRvUU1nQm5mRTVv?=
 =?utf-8?B?SUs3RkxxcUVUN2xDWDZyUmlRcUxxMG94R2FWU1RJYWNYK0tjaWM5R1JNd3p3?=
 =?utf-8?B?QXR4YVhUeHRRS1Z0a2VkeVV6a29BRWxPNE5UaVhrWXhZTEkwM1pvVjFGb2ls?=
 =?utf-8?B?S1hXazl0dENCQTRQOGVqK1dqczVkaXVUNlR2bDMrVVZ0dndhYmZzWUlHckRD?=
 =?utf-8?B?ZFNROHF4S05UMmdBQkcwWjZwN0tmWEdTRHdSNWEwLzFEdXpqcU1mbWpkN2th?=
 =?utf-8?B?alFhUlE4b25YTVpING5VL1Q2SXlnbVFjVnhFSEprdDFBUitKUmNXY0U3NVN1?=
 =?utf-8?B?VlF6UXdrQWsrNFBhYjI3WXkvSDc1QVhRdnJibHFKTVIwT3JJSGZMR292V2Nl?=
 =?utf-8?B?Y3MzS0pFNVAyK1pmdkJHSG91SkhHdkZlbWZZZzAxbHpseFlOdEZrUzkybUVw?=
 =?utf-8?B?Y0srb1d0bUlJY3pvSVl0N2MwSnJKdE00dmRxQXo5TktiK0lKb1ZsQjJQSFVv?=
 =?utf-8?B?ZzVGVDREYURqMGRCRUEvc0pmenlnYVUrUENrMVREVE5PZUJmTFZqb1ZKRGpr?=
 =?utf-8?B?U0ptVlB4b1M1V1VOeTBrYlg4bk1OaVl1UTF6TitjOWFqRVU3V0lySHp3dW9v?=
 =?utf-8?B?eU90WUpOY1BCQ0lzc1pha3JiN092aE1VeDdnYVZaTzBJK2l5ZGs1RU9rc2hD?=
 =?utf-8?B?c0NIQUM4S2d2bkVFdHd0NGw4K1AxdkNBWlBzRWlYRU14N0ZaOHl2cHZKWlpK?=
 =?utf-8?B?VkwxbXVTWVVjenByWDlqbVNXeXVJSEhmcDYyc1JKb1BHT09DMWkzUGtrb01p?=
 =?utf-8?B?R3dpakpiOWtuZkp4QUwxU1IxM3ZvUFh5WVhxNmdOQUErUXMzeXlMNEJQcThU?=
 =?utf-8?B?OVR2bkxiVEFDdElXUlJvQXBTZmVMK0VXY0pwS1MwZU9JQTVxQnlXUzhWd1Jh?=
 =?utf-8?B?SjlvNWVHSGEvN216SU9nTTZCclNBclh5ZHRZR0VJSGlNVE1YUHMvUEdoNkw0?=
 =?utf-8?B?RkRlbDhpdlNCdnl1bzN6Q0lKRjNnWW45MVQ4MU1hcGszZXVsd3FBUktEMWVh?=
 =?utf-8?B?b1pLZnZPT21mL0VFeTRjRWJBcnBPVkh5STdxaVpqYUpJaDArVDFUaGdsWTha?=
 =?utf-8?B?UlE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	350zwEBw+zcSWzhALHYELxyu5JZrkqU55kmjeLlqvXF9UmdG+lH2d+2MLZSTOIgmPnK9crN8aqiNb9t399na102s42P5qbrmBSflnSfh7HQ73MviIUMBrO9kkh5npYylYoKowaNjwhXPyFZuykRDbvKNQIBc6n2ypcDOosKxV9NmK5Kkj4ocLcuHM7/A2eYGxKtZzwWkHb1EgMQRVKgPljDKx2aLF+NhchuRKX7qIViMSujTvMulSTMKpj+MGSvDeK1Ny9EuNk+NjieHx28x8gO3VHb1YeO7+yb8IuqEopVf6AangvcmMJ7QJRfXlc7Dcj2YavmGreMN3Ony3Q18wYz2ZEyHysyrwUCOkWqLavTKdmqN1OILypdXxHr0wP6ZcSryxYY/L/gVr5OFs78Efas6T+LRlctseKu/Sn/K8dmH6katcVzIJZviAky/v2xi1ZC+4f2qmw5zkeWMsnhF3Z8/U+ejCHXH90hBRRHeEPjMNgxm+wIG6PjiuZ/5fCIoixRZHjyEnBkw4yY3veRG+EAPsDTjJkjl5hEvRnPTSxUimZudbGV1mMX9dq7QPNESZmMr8DmqvuGuGb2EsLl5EL6/0jZU2jHmwmQVYCg1oEsZCDS8GTqXSMXZFp+n7i3/1HFLTFpGwImTpQxuuiYiF4epR1PxTNlbR09glT4WE38q1ZrwA/9dfLZbEjG1bthFxQP6a3Fw4rtkCuohkqkhwmy42i3WxKPB/rnIuv4o1SjMe4sXc1q7c6EChXa8fPQAdk1Hn9NR6TmhktaKSuZQqxn1yRwY8PNLBHfTqVY2UQs++YGI3zA1UlOCJoPubqr/FfhOcVcwoE3aCUzvdiilLKIcWvonMdRnAz2uTgfnJw4=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8a3c7586-4c41-477c-5e41-08dbb91ac883
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 14:14:49.0772
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: wrw796zXX0pIrYxMdBUMt92LicEbxQXmZsK3Gd81CSV50axXtYLxTC+LxDE7G+mllkNBvqbYB61sEEu/csza1w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR03MB5907

On Tue, Sep 19, 2023 at 03:06:45PM +0200, Jan Beulich wrote:
> On 19.09.2023 14:51, Roger Pau Monne wrote:
> > Testing on a Kaby Lake box with 8 CPUs leads to the serial buffer
> > being filled halfway during dom0 boot, and thus a non-trivial chunk of
> > Linux boot messages are dropped.
> > 
> > Increasing the buffer to 128K does fix the issue and Linux boot
> > messages are no longer dropped.  There's no justification either on
> > why 16K was chosen, and hence bumping to 128K in order to cope with
> > current systems generating output faster does seem appropriate to have
> > a better user experience with the provided defaults.
> > 
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > --
> > Changes since v2:
> >  - Bump to 128K.
> 
> Wow, I was hesitant about 32k, and now we're going all the way up to 128?
> Even the recent report indicated 24k would be fine there ...

24k would be rounded to 32k anyway.

I don't think 32k vs 128k makes that much difference, it's still an
infinitesimal part of the memory on any modern computer.  Simply the
risk of loosing output is IMO not worth us being conservative with
the amount here, specially if we are speaking about KiB, not even MiB.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 14:22:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 14:22:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604801.942322 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qibcM-0000iZ-3H; Tue, 19 Sep 2023 14:22:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604801.942322; Tue, 19 Sep 2023 14:22:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qibcL-0000iS-W5; Tue, 19 Sep 2023 14:22:21 +0000
Received: by outflank-mailman (input) for mailman id 604801;
 Tue, 19 Sep 2023 14:22:20 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7tQr=FD=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qibcK-0000iK-8U
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 14:22:20 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on2060f.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::60f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id eec85700-56f7-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 16:22:16 +0200 (CEST)
Received: from DM6PR06CA0065.namprd06.prod.outlook.com (2603:10b6:5:54::42) by
 CY5PR12MB6251.namprd12.prod.outlook.com (2603:10b6:930:21::5) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.27; Tue, 19 Sep 2023 14:22:11 +0000
Received: from DS1PEPF00017093.namprd03.prod.outlook.com
 (2603:10b6:5:54:cafe::e3) by DM6PR06CA0065.outlook.office365.com
 (2603:10b6:5:54::42) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28 via Frontend
 Transport; Tue, 19 Sep 2023 14:22:11 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017093.mail.protection.outlook.com (10.167.17.136) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Tue, 19 Sep 2023 14:22:11 +0000
Received: from [10.0.2.15] (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 19 Sep
 2023 09:22:05 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: eec85700-56f7-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IDHMcx5/RpWpKAUnHaA99meZcKmx6/+TGbORYXMQ9tn2sGQ6YDcFmJ5m/coXuwdz+74tfYERKPDWikW3YBbtPex0sjb+T4bdxRTp24FJsgZKqWkLfNXGfutlLCoAco1VOlSWTAkwbDqrCPMjGDcnWYcUDm4nD7auwSUl5uEuHTHq/eu1deqoku9lqBgcMC3ikCCWsezQLW1qw8dcK2Wu/Kllm3tTPcUVrxqyqSKI0dUT3JBjRRN4YK85pOAXb47+8K7pbY2NJKg5mP7l7XzVD5LHQRD5wBjSGuhRf4OR8eogsdDZLR9fMyUGxl4LXLy96Bs3HqdAbfuspX+yerFxUg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=wgvsZjqkleztQTOBKHxfCGMxUvKR3l93bJ2rH6pP8a4=;
 b=BW4BDohT07ijpbOoXzcYnj+RRBmDrkrqSmtzSRf3hJwAMICIba+j50q+nTD9cpEcSbIAhK3S6bLmnlGlOziNf/TaXYnUfI1t1N6uWZ3G5RQtCirWN/9EdXEx6rxPm3G6xtAHg1NmXjPT9A0DuNEJAJMCUl0lIz3IsjudEtub44h2rxP6UwFnca7Fa8GxXlCl7TR2Ar4/h8j3XBG3IZjDXzPKisidQibUsW7AydOfBODJbJRVBOM6/2+0OAb2q/jpDMXTAKUgEyu7/Oba+dnMXLGTa/4j+RbkBiaifVMy9aE7OoPZvetRagNpX+MaBw4gvm/gRH63HyImEX8XVkUWPA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=daynix.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=wgvsZjqkleztQTOBKHxfCGMxUvKR3l93bJ2rH6pP8a4=;
 b=ZbByqPwRUc5c509LNKo+6FfT6TelHuP3rBfo4/epYEJMukxmWV1xoyoQbhdCjn6eBpTttLprquj9Lj2QfuROOvD8v0apn+YoYEp7CvakXOY7KHPCU96zxGVr74q6Zt47YMakc/Zjob8rqGTT4GYTfn19S27YSHMuPhQP5pcu1k0=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <32a68715-201b-9923-9600-fe5ae49e4b7b@amd.com>
Date: Tue, 19 Sep 2023 17:21:49 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [QEMU PATCH v5 07/13] softmmu/memory: enable automatic
 deallocation of memory regions
Content-Language: en-US
To: Akihiko Odaki <akihiko.odaki@daynix.com>, Huang Rui <ray.huang@amd.com>,
	Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Anthony PERARD
	<anthony.perard@citrix.com>, Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett
	<bob.beckett@collabora.com>, Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	=?UTF-8?Q?Alex_Benn=c3=a9e?= <alex.bennee@linaro.org>,
	<qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?Q?Christian_K=c3=b6nig?=
	<christian.koenig@amd.com>, Pierre-Eric Pelloux-Prayer
	<pierre-eric.pelloux-prayer@amd.com>, Honglei Huang <honglei1.huang@amd.com>,
	Julia Zhang <julia.zhang@amd.com>, Chen Jiqian <Jiqian.Chen@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-8-ray.huang@amd.com>
 <99fb4575-9f8d-4ab6-bc22-911bbaa7ca55@daynix.com>
 <c0370b6e-c17e-2400-ef8a-7a759d2fc2d7@amd.com>
 <75698621-d210-40eb-872d-f3cfc6e4dbff@daynix.com>
From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
In-Reply-To: <75698621-d210-40eb-872d-f3cfc6e4dbff@daynix.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 8bit
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017093:EE_|CY5PR12MB6251:EE_
X-MS-Office365-Filtering-Correlation-Id: 0beb3c87-a39e-4b35-24b3-08dbb91bd084
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	NQR+Tjn51ujPzVk9ZHQ84nE+EUKnf4FODiVoEnM5g2+KGbK9tvE3N3AoP8YDF0mJQc4N0kVVa1JRXOP7wJVy1yElJwmTAoHFzkXj8mjbq2midAkHhv5QeQKLvfZiAsaCbSHBnLuLUi3MxP9sYFZMTH2L3efacfGT6UvObwy+LlJkERS1gXtV4e/unT/tB+P27Ck2u0BSvXxY6qQraauqmuik/F0RgZ44mVi2OXNITVs0huzxI3lsOJCoziQUqEKHkc2TP4RRckwqQTmyBMx/lTnj6xOqMY70XkwDNzPqs17MVuS0Muv844fALf5DXtT+oiuHhHVnPf9fV8wIhWyyI1/OvO8zB+ifXxQFj1DJ0D4zsImksoeOfDmQjMkR7zvim6peDUQt8yAImRmQHGNR50OaXlduIo3jCsCCXFUVvsCyx8KZ7GmrZd989frQyMRh5tIvlyarfgfCjtLvrVoR9901ePQBQklq6M4c8uBpfo4Y8iSGHmLvzq7JCacXr2v6LNl8nr2OJNO1Dz2S8INiD2uZML/yaiUEMhwxrdZr0YYVeOfiP3CDO5DH7FHbwAG0vuL510VCFuNWnenUasA2ziHrpVdXhFc5KdL6HVjniSRYe0hm+sRmP/0UxbgudL5ItjyDbSl68Oj709IKnkhcrfFcqijmI1h6eQ/pT7nfCDEWkZRo2B3Xl0hEhvQomqTNJJdxNZDgKaLrQbPA77cSO1DFsqF6yeRLOaii03l9LVu0gCMWVHxbdNEaws5sSB8mAwdMN6WqCbH67mUC2OCEoWTV7apmIdaZwPoBJa7ioDgKgbXlmWtjEhAViyQor7urHpDDP3gvnkgQ63YnDP+qFQ==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(396003)(39860400002)(346002)(376002)(82310400011)(451199024)(1800799009)(186009)(40470700004)(46966006)(36840700001)(66899024)(356005)(921005)(82740400003)(81166007)(36756003)(40480700001)(40460700003)(86362001)(31696002)(478600001)(54906003)(70206006)(16576012)(2906002)(70586007)(110136005)(6666004)(53546011)(8676002)(8936002)(44832011)(5660300002)(4326008)(7416002)(31686004)(41300700001)(316002)(47076005)(36860700001)(26005)(16526019)(2616005)(426003)(336012)(83380400001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 14:22:11.5071
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0beb3c87-a39e-4b35-24b3-08dbb91bd084
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017093.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6251


On 19/9/23 13:44, Akihiko Odaki wrote:
> On 2023/09/19 19:28, Xenia Ragiadakou wrote:
>>
>> On 15/9/23 18:11, Akihiko Odaki wrote:
>>> On 2023/09/15 20:11, Huang Rui wrote:
>>>> From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>>
>>>> When the memory region has a different life-cycle from that of her 
>>>> parent,
>>>> could be automatically released, once has been unparent and once 
>>>> all of her
>>>> references have gone away, via the object's free callback.
>>>>
>>>> However, currently, references to the memory region are held by its 
>>>> owner
>>>> without first incrementing the memory region object's reference count.
>>>> As a result, the automatic deallocation of the object, not taking into
>>>> account those references, results in use-after-free memory corruption.
>>>>
>>>> This patch increases the reference count of an owned memory region 
>>>> object
>>>> on each memory_region_ref() and decreases it on each 
>>>> memory_region_unref().
>>>>
>>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>>> ---
>>>>
>>>> V4 -> V5:
>>>>      - ref/unref only owned memory regions (Akihiko)
>>>>
>>>>   softmmu/memory.c | 5 +++++
>>>>   1 file changed, 5 insertions(+)
>>>>
>>>> diff --git a/softmmu/memory.c b/softmmu/memory.c
>>>> index 7d9494ce70..15e1699750 100644
>>>> --- a/softmmu/memory.c
>>>> +++ b/softmmu/memory.c
>>>> @@ -1800,6 +1800,9 @@ void memory_region_ref(MemoryRegion *mr)
>>>>       /* MMIO callbacks most likely will access data that belongs
>>>>        * to the owner, hence the need to ref/unref the owner whenever
>>>>        * the memory region is in use.
>>>> +     * Likewise, the owner keeps references to the memory region,
>>>> +     * hence the need to ref/unref the memory region object to 
>>>> prevent
>>>> +     * its automatic deallocation while still referenced by its 
>>>> owner.
>>>
>>> This comment does not make sense. Traditionally no such automatic 
>>> deallocation happens so the owner has been always required to free 
>>> the memory region when it gets finalized.
>>>
>>> "[QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands" 
>>> introduces a different kind of memory region, which can be freed 
>>> anytime before the device gets finalized. Even in this case, the 
>>> owner removes the reference to the memory owner by doing res->region 
>>> = NULL;
>>
>> Hi Akihiko,
>>
>> You are right, the word "owner" is not correct. The issue observed 
>> was due to the references kept in flatview ranges and the fact that 
>> flatview_destroy() is asynchronous and was called after memory 
>> region's destruction.
>>
>> If I replace the word "owner" with "memory subsystem" in the commit 
>> message and drop the comment, would that be ok with you? or do want 
>> to suggest something else?
>
> This will extend the lifetime of the memory region, but the underlying 
> memory is still synchronously freed. Can you show that the flatview 
> range will not be used to read the freed memory?

Yes, the intention of this patch is to delay the mr object finalization 
until all memory_region_unref() on this mr have been taken place.

What do you mean by "the underlying memory is still synchronously freed"?



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 14:26:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 14:26:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604806.942332 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qibgn-00028U-L6; Tue, 19 Sep 2023 14:26:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604806.942332; Tue, 19 Sep 2023 14:26:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qibgn-00028N-Hm; Tue, 19 Sep 2023 14:26:57 +0000
Received: by outflank-mailman (input) for mailman id 604806;
 Tue, 19 Sep 2023 14:26:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qibgl-00025h-O3
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 14:26:55 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20605.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 94f55382-56f8-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 16:26:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBBPR04MB7882.eurprd04.prod.outlook.com (2603:10a6:10:1e7::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 14:26:53 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 14:26:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 94f55382-56f8-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FHLbt3PtoOMah0cUsaS/SGePOUIpA0JJNmB5NkCjgnI2o9e8XerRmZpePgnjHztaU4d5W/5hcUqp0VKVtQTsCj8yuTfo4BXS4KZ033vhrzFZqvLVW5xDi2dyV8F+/MOruB2Y30s894qUyOq2XeDOtXYe+i2mKOayQS70EUjf8InOddNrgLM1A/usM5jbQiUyzcRV+P32/czauJ/Mqgh+7d75apxeTVc2NjcTagVlU998OIQJWzz2y+NpPLkHDC45fwpcJ75GzaDnJf+7+vV/z3CVTnsV2UQNItD3tSHL+jbWf7CDGBCco889Tfpqcf0xuccO+r9V0dsz9t9hynkptg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0GbH8bWOJJa1yFfE45qKdFl1iSuGi8m0vptsYPig3aA=;
 b=Pj+dL8YgoyDOW5Pf3sDARZX8JK+Ar0hp4f8hqL3CaIi018M3svRn1CQFLK/g4NdZCg+wB2djt0sXTOq2f1CyoV88sMhshktGTzYqjHzfiNdq+CQ8o8+qWQQo0ktDfbYRaf41O+sZj757/RK3NV/9G20nWEKIkcfF8Ye/ivexIMBl1HfeE7wChtU0PysVJ6DE3omJwyDah72wu4Y6UHSZQ4lH2J0Bzf33nggalexyKNZ87prcCoW5R1HvNMPGRT8T4z2uD3vDthTs75hTa/ZXzK1CtJuNYduizvmQKRKSGMjZ/NNlYVuXqAp5TG02vYOSSMkID5zvNfTBpfSJwrhrBg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0GbH8bWOJJa1yFfE45qKdFl1iSuGi8m0vptsYPig3aA=;
 b=obS3Mz4tZg0dsyTycMQe8fvlwUm2nwU5vbJ3h3FLLdClIaNT/0NgdMmwV65BZDuFFrpadYMEmw27YCZWKNhF/ToiNOZ4ux48VrnZzlDRwTqlUuJ8bFA0/VuNlcElZdPXUkeBETD4LZf62NxlLhcWt2FWezisaRQ47YT5yjN4DxKXU4JAlPuwWLoi5tXdN7f0QlS5O+kL5BeHI+VLpqxRoSQin+N23gpE6JMOdDe7YrKxbteGlGRiC56p3Oc2Iyn7ysluv5xTW93JFYBkwf4agOvAHRQwbr6BwfvinOpUmdzaAKIptugXnKLHQBQPvovzaGxenrQ4qENQrvyPp27F3g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3d5d4e74-5e3e-bdd5-a37f-c4dc9f418ab3@suse.com>
Date: Tue, 19 Sep 2023 16:26:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3] console/serial: bump buffer from 16K to 128K
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230919125118.12657-1-roger.pau@citrix.com>
 <46b0b9e0-29b2-d526-d32f-d03415e621fb@suse.com>
 <ZQms01Wq62yMzGDg@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZQms01Wq62yMzGDg@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0192.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ca::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBBPR04MB7882:EE_
X-MS-Office365-Filtering-Correlation-Id: b00546c2-074f-498e-958c-08dbb91c782a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KRUJGpXLJpL/SbrQFnWTQ1V14MSgjlIjjtqABTRNHY0tJA6rEsV/bottaCgc1YvIQ5ppeydbcEur/vaLfW2Hy2OWiTgXF2NNXD5VGrV/p3qTvA8iH4PONtyFDuKkrGxjiDVvVzSF97fVll+sl1v6aIlvR2GioajAfzI1Minazjbi98HmrhGGhMdy5WikQgDOaoVqo+I7G4UlcDwwL7Kgz5PyWibBaG3ydzEpilHgkR0Q4/BAScybeBPRWECrWj3c0nKLAxGCEd/o2X+vAODFQCmiYPha0OfR2ZEK0WZ4LAiYnIu/3B9X297rLGrIwOKTUtyAu5UGpT1ccXX9m1GxE9wFPmX8zo5OkyanunhaiQCs4lR4KSG5AC1nk5iCbASd4z06ssENnd+EG//tgFVAp2ZnLq9dYnA/w/YimPYkENVqMbSn1OuTDP7hSy6Qd/cTXvoj/gb69dAcUni6zXN+Zs27QKTAfNTocg8JF4KaIvfhvR8Su6U1TOf+vtUk+LJLzURdGd5i93Lh2BNCbk/gj5G5Hg+RK1CySBZtKNvvM0KLdO/1HGM9CiqKOeFo3FoN46CR6NIOizSRj4paQqXZrWEq9OSjKXnfalQrySLCkrqq0nfIlyqo1uHTcq3QfG+MffNUpcesDtkB3qz3Km3NtQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(376002)(366004)(136003)(396003)(451199024)(186009)(1800799009)(31686004)(36756003)(38100700002)(86362001)(31696002)(6506007)(53546011)(2906002)(478600001)(66946007)(66556008)(54906003)(5660300002)(66476007)(8936002)(4326008)(8676002)(6512007)(83380400001)(316002)(41300700001)(6486002)(6916009)(26005)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?V2o0cXZRemVtckZGRjlJSFM3NVFIZGdUTno1K0VBbnQ2T0YxcXkxRTErbXJQ?=
 =?utf-8?B?ME40SlZ5dWlUbzRTU1V3K3lPZlJnaEZ4TFF0cE52eWg0N2R4cVpFdEtHcm5u?=
 =?utf-8?B?ZGRrcFdJN1hJSGtKMGhGZzJucXVuWjJHdHFNMnpTSDBiMDVwTkFua05yOW96?=
 =?utf-8?B?czFRY09PWXRtRXF2RVBnRDRUQm5HQS9sbDZZUUZsTnZwN2swZ29jc3MraUts?=
 =?utf-8?B?TFFQQ2Q4S21Dbm1kMUhuNzhkRDlaNEhEL2F5UEdvZnQ0ZUthdHA0YnNjWWJp?=
 =?utf-8?B?Rm05VWpHcmFVZnZPZDVuRkdpZ1UyNHZmc2xzSk1SRVk1YVhwS2lnalRtazlX?=
 =?utf-8?B?U3N4elp3QUlhZXNQZDVacThWN01CN2t4MWRiZDZDOXg1TDZsNHU3UUlnN2Nq?=
 =?utf-8?B?aXk2dVlKakZ0bEorR0RMN29xNVFPdldJNFVwems1OCtoTkZ3UnVzYjA4OHJn?=
 =?utf-8?B?TTg1OUttSE4yMzBwTVBHVnAxakhyT29LdEdGZ3kyS1ZpdGlOSk5LZTdTWGlX?=
 =?utf-8?B?SDlnTGE3dUxNalVGbjBPemNDekFiU2JWcUZkaTNxWkZrUkJ3QjFPOTFUb3U3?=
 =?utf-8?B?Y1dlZzVzc3JielFyOGUvSHE5WFpJZ1YrU0tIWnF0c2hsOUw4L3l0VFFXQ1VY?=
 =?utf-8?B?eG03WG9BYW5yYnNwemZUVzdZL2RqeTdQWlkrMXFYb2dkTU0zN1RsYWNVdjdG?=
 =?utf-8?B?cjR0eUtzUmZMTmdvNkNyQjV2c1M5WmtNRmtFWmlKbW1NRFQxWUpKa2JIWTRI?=
 =?utf-8?B?a2R1YWhnZ1dML0twejRmZ2hPN3dhVGp6ZnlTUkJsTXlBSjllb2VJSTFGZU5R?=
 =?utf-8?B?WjlndlFzQTM1aUJWQ1RoOUt6b1pEUHFWcVJvTllNV0J6YXEyeXVOQjVGWng2?=
 =?utf-8?B?S296cUJNdWFpbzV4ZDEvYnZLL2VWK2dteGkrUkRmMXd6OURNYi9XclpjT09T?=
 =?utf-8?B?cTgrTW51ZmlITHUxQUVyYTFjaktja1FRUHFncGp3SjZFNDAwVkI5dkFQdHBn?=
 =?utf-8?B?SW5CUFR3WlowdXFFUjN5bTh3cFlYSTdIc3FKbWxMc3BiS2VCQTdDMTQ1YUEy?=
 =?utf-8?B?WWJRK0pUY2M4UkYzRFI2cndLemo4M2o0U3FVeWRaSkhnWUxDTzNJZkY4dHoz?=
 =?utf-8?B?bmM2RFk2RUxKVUwxc2VReXpFZEhHQkM5NnNMd2JydWNCR1YxcHZUTnhmZVE4?=
 =?utf-8?B?VEdTOTl6aExoY0wxeElLYkNQemIrTHZ6Z2dZTVhuejJMTjNvbXJGRm1TRng3?=
 =?utf-8?B?RXBTbU54c1JrOUszbTM4elRUNkpIVzFZai9uUjJ6eDFYN08zVHJLZTBaYVRW?=
 =?utf-8?B?Mmp1Wm8xKzVUMXVZdDllL3FldXZJWktlUWNHb2t3eUpGSk1Ra0Z0UEg4djhY?=
 =?utf-8?B?UVBlTE8xOXFWWnYwYVUrT25wSlg4Q09JN1ZBTjVJMEVQQ29mM0V5OFNEMVcv?=
 =?utf-8?B?NGNWM0tQZllNM1RBZlFNbGlZY0wxYk12a1NaQmRqVHp1eFJvM3RKTHlrWWdV?=
 =?utf-8?B?NUw1aTdZKysxdWV0RTg3MStCVWFOTk9KOFQ4aTVRQ2JoNkovdEhmcFdpTWxX?=
 =?utf-8?B?U20zZ1ZwZGZadEZqK3JZbmQzcUZSUURnSitEL0d0V2lxNkRHN0J6bEZndlZm?=
 =?utf-8?B?Vk1QU2JOdlA4R2RFdVBTOGErb0RpYkY5eHZrbVVMMkJybW9hemw1bkplVXNU?=
 =?utf-8?B?NVhlN1pubkMzeS9DTTg4b2ZRNHIwWXl6VzRER2NweFVlR3F1YWpnTXNQVU9i?=
 =?utf-8?B?NDgxSlNxSHIzSnZOWWptTVZJUUViamF3UnlpOC9MbWtyUUJZZjZFbGJJaEJH?=
 =?utf-8?B?UTdGbXZTdDBTMlpVblpvbmlYV3RsQVFvcFV6RVFHVGQxL1RnYUlySFFudk5o?=
 =?utf-8?B?M3F4Wis5bFhNdE9sVnR1UDN3aWR1N2N6ZjVLUk14bXMxblI2ajJONy9iaU9h?=
 =?utf-8?B?WnhvMy8vdHUyZ0pSNWI5bFlLd3Q0WVNzM3FtRXZDQXdmVE9qSWhlQnA4dS9E?=
 =?utf-8?B?MWhaWmtSbDdiUDhVWmNnWWcydnZLZ0VLaEs5aHZmVnNNemh1emFtcEhFRUxJ?=
 =?utf-8?B?NXNITDVLNHZsZHJQTUR4Rm4zMnRHZm9Wc2ZHeFJyWHBEVWhQaHV6THhGWTRr?=
 =?utf-8?Q?BH8Pe712e6d8byC+GONDDP74U?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b00546c2-074f-498e-958c-08dbb91c782a
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 14:26:53.0607
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ygvk4viXhPHck3Z8xWByxtEJJ0529TIJ3dfjhYGFSw6mVUUPYPEvaE7NbK+uC8Xl3e82MgSXPLZVpWV7GfVY8Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7882

On 19.09.2023 16:14, Roger Pau Monné wrote:
> On Tue, Sep 19, 2023 at 03:06:45PM +0200, Jan Beulich wrote:
>> On 19.09.2023 14:51, Roger Pau Monne wrote:
>>> Testing on a Kaby Lake box with 8 CPUs leads to the serial buffer
>>> being filled halfway during dom0 boot, and thus a non-trivial chunk of
>>> Linux boot messages are dropped.
>>>
>>> Increasing the buffer to 128K does fix the issue and Linux boot
>>> messages are no longer dropped.  There's no justification either on
>>> why 16K was chosen, and hence bumping to 128K in order to cope with
>>> current systems generating output faster does seem appropriate to have
>>> a better user experience with the provided defaults.
>>>
>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>> --
>>> Changes since v2:
>>>  - Bump to 128K.
>>
>> Wow, I was hesitant about 32k, and now we're going all the way up to 128?
>> Even the recent report indicated 24k would be fine there ...
> 
> 24k would be rounded to 32k anyway.
> 
> I don't think 32k vs 128k makes that much difference, it's still an
> infinitesimal part of the memory on any modern computer.  Simply the
> risk of loosing output is IMO not worth us being conservative with
> the amount here, specially if we are speaking about KiB, not even MiB.

Well, I've voiced my view on the underlying principle of this before. I
don't mean to block the increase, but I wanted to express that when I
was halfway okay with 32k, I find 128k excessive.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 14:36:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 14:36:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604827.942359 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qibpn-0005Cf-09; Tue, 19 Sep 2023 14:36:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604827.942359; Tue, 19 Sep 2023 14:36:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qibpm-0005CY-TS; Tue, 19 Sep 2023 14:36:14 +0000
Received: by outflank-mailman (input) for mailman id 604827;
 Tue, 19 Sep 2023 14:36:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kB+/=FD=epam.com=prvs=36266dbb07=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qibpl-00051T-7L
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 14:36:13 +0000
Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com
 [148.163.133.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dfd78967-56f9-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 16:36:11 +0200 (CEST)
Received: from pps.filterd (m0174679.ppops.net [127.0.0.1])
 by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38JEKthQ021480; Tue, 19 Sep 2023 14:36:04 GMT
Received: from eur01-db5-obe.outbound.protection.outlook.com
 (mail-db5eur01lp2051.outbound.protection.outlook.com [104.47.2.51])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3t7dax01x3-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Tue, 19 Sep 2023 14:36:04 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by VI1PR03MB6286.eurprd03.prod.outlook.com (2603:10a6:800:139::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Tue, 19 Sep
 2023 14:36:01 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f]) by VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 14:36:01 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dfd78967-56f9-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=f+q7bqyu+q/H4Z9gFL3a+PbgFHnDoVvnNah1hhzjrXG8SUDoYmkeSYOAHTtf2B3iagkvWqgoaak3FGZEI0dCx7XueH1pz5ieE9cZLEpOvr7VKopMJIqxlEzmLBaRQGrsMr/XK+W15ipqPtjP8DFKh/BCs4EA113AFblespM2ZMFzMmAoetgQYyK8Y3XqyO09xr5YpgFmoCaFeIsfCCi9Z9TfdKDDDT0PCpFbhTQn5RIi4pX2eQ0W/3R/CQupdyvoZ7ughibAJlqnGQ2hcgyAp1upgkoCENQcxJtYM2yh+LODW7j4P9vtSiNoEXYhVCKtnmcUJmOt7lsxKfLLPErx4A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/iSMQ1521gnKBZJGAA8o3+xeV321nTPUFqxGO0Qppso=;
 b=ZMGBXGDb2ab7XyYq00c0fPcqYN1xSBV8ikY+IuO/LV78Xjz9thid3q4YR+ubVU7R6OR9wrrlngScN40GmPyghr9HgK/hz2sFjE8DsAU/JLnDu0jWMNrG3JaGBrBqFBlAf+xhLfhzgywjz0W8Lur5bUXZLCyBnSGu4+eD8672HTvR59gSwOtBgtkuUQHFnupFrnhBV829ON6VeRIshSzv1MaMxrndvdftQ39MItMo2IA5Pi/mvnPEzpulZx9ApA+aRSGPikG4HVdeeTnjZSGWSnjFHAy6z6iYac7ZZSasUVhvCGbmmJCwLHG8bZr6U2f+6YjFF+S5bxpC4VSODMyNvg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/iSMQ1521gnKBZJGAA8o3+xeV321nTPUFqxGO0Qppso=;
 b=L0RNjMB0O45XZKcaXYRY3WfoYkf2kUiXnih9XMmhUEuvr79H0CrNJ78gG7lbGX8NbijJuZhJLgEuuimGjf35eNajTx5QB5VjyQeXr9mu/5mfHdrwfy4O0RlRjfgHEOXIWMUEihDAg6nb8OSiDocMqCPSq61L47CktTqiioRPAHH9TLOuxcMeQehqs0HGdmDcDbKn7CDA3mdDDoXlQ8prdgnum/S2yGUguTambAeWN1tgUCjEvPwdkVvYG/PHN55jSmCQvNbDA3pHzp0gUKCSMMEYwsQ+SI/aZoTAIQIyVEDvlxvHHeehE0ntdKxf9shggQuPtoey8Y8+R1Tccrv92w==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: Julien Grall <julien@xen.org>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
        Stewart
 Hildebrand <stewart.hildebrand@amd.com>,
        Stefano Stabellini
	<sstabellini@kernel.org>,
        Bertrand Marquis <bertrand.marquis@arm.com>
Subject: Re: [PATCH v1 2/3] ARM: GICv3 ITS: do not invalidate memory while
 sending a command
Thread-Topic: [PATCH v1 2/3] ARM: GICv3 ITS: do not invalidate memory while
 sending a command
Thread-Index: AQHZ6ux4LpE3chDIj0mOPudUv9951bAiHTaAgAAZXIA=
Date: Tue, 19 Sep 2023 14:36:01 +0000
Message-ID: <87fs3afcxb.fsf@epam.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
 <20230919112827.1001484-3-volodymyr_babchuk@epam.com>
 <1614d73f-72b0-44f2-8e34-0e6c58a1a375@xen.org>
In-Reply-To: <1614d73f-72b0-44f2-8e34-0e6c58a1a375@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: mu4e 1.10.7; emacs 29.1
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|VI1PR03MB6286:EE_
x-ms-office365-filtering-correlation-id: 3d2ec12a-8848-48a2-8fc8-08dbb91dbef1
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 JGf84xraH6rRXWIDTsthxOh9CnyQh+naPXE0TCu6wxqzepirSrtYWj9hJUezq0oOapjyywStpm11TgCm/bEBWmVA08hVCbMUU52qoo/LJKx9EUaDaXn7JbKjzHeUvxtGWlpKksZiBhJDQm2v7+zAJSZ2/a1nfWRImvce/SjA/C0ceS+HUT0Wz6qn6NO5X4IKF8CGlV1qiUaXggNWRdanmwZHis2ggwgFl6uFnH4cf9To3yrSRE0kYNBZZcDBbew2VTXSgMm5tAPQs1L6KbYafQNhR0eMEKAvI0HGHleqDydYegOd+Id7F2yJ6wD8VXWXR5L0i94F1k9aDC4y+KhBy5mF5JslOluFCD5CbIRLoYmVO4gC8vsb6QPgxvxBys+G8mozi8W91xkHlCYMiVbSS2XvJM4ZYdXJsdZPe5P+rjVj1xz6obY2Z6+aFmmrfAmz3c56Da74b7tq3nXuq3rGbt9nB4OWl1wKHsqM+l76BG9Touqe+ZT0ygW4hEqKpI9gpysCku7UxWLcDsS3j65dk8pDXiGFxgTWxOQmLqZPlrit8CRnes+zT//wvyAHA4+gNuHeysNs9aNJFx2l6ZlSwixgos/bmabI/VnkRUE+P686Vu0TQ5sX0cOvr9crBG81
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(396003)(376002)(366004)(346002)(186009)(451199024)(1800799009)(6512007)(6486002)(55236004)(38070700005)(76116006)(38100700002)(53546011)(478600001)(66446008)(2616005)(66556008)(66476007)(64756008)(91956017)(6506007)(71200400001)(86362001)(83380400001)(122000001)(26005)(66946007)(8936002)(54906003)(41300700001)(2906002)(6916009)(5660300002)(36756003)(316002)(4326008)(8676002)(4744005);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?whAJb+hm5PE8p40QWdV5gzdviCI39apARwUxPwMK1MgFTkrc/Grc+jdITv?=
 =?iso-8859-1?Q?fINFNKWkXqbtPKuK1zjG79DH0blDr1m2FcyHEqjiRIp0cHLep0dR5sYIEl?=
 =?iso-8859-1?Q?WjH6qAKuXHrjPsvw5NhqTWCpZI6foVqmvchQ9XoiCwhZky6z4RflrQ+r3j?=
 =?iso-8859-1?Q?zXpjZD6b4Dxw3rI1dvSD3PiX4RnLBqCPoM7neMJcrl1kQoLeC/7RK0wOrK?=
 =?iso-8859-1?Q?jc22QrNf05Ar/AV3zI/1Nq9I2sfzW6xEFc2jGXidVbpnD+hXLCA79ZykjU?=
 =?iso-8859-1?Q?BScZNtHxnxNTi9iZUlTGGAq9H82mJlPAo5KpLbgGV3XsjKNzLM4iWiR8X9?=
 =?iso-8859-1?Q?HXc/kdQlRzNmRnhnLiP5VgdSFs/15RSICBaBuP5Cr59jb9/4VMxD8yANjr?=
 =?iso-8859-1?Q?TOtu0e+gKDVve2sQOE+QVY7Dh/AGgkRlqs2GF0YO9t9ynqZIBG28DKCHW/?=
 =?iso-8859-1?Q?CkXoXKNwX9H06V9MvUrldmqkkVQPNnDrrIN5myUvubrqCJOr3a1DWq15ms?=
 =?iso-8859-1?Q?D3AC2wXYXZtk/uJm85adX0litns3ZZTUr1HdB96a+HUBwtuFYg4xuULsCn?=
 =?iso-8859-1?Q?tb6nR0KsjKegxqBiRWSHkI5BjA86pXxxZfMhDp/9bFdMxcJ9UFNTl4Udn4?=
 =?iso-8859-1?Q?np+2OH72lDuy3NcKaGwzPwGzBcRsiopFuzppJlWswMbpqjWL/GlKqswfpw?=
 =?iso-8859-1?Q?N7q0IXrdjS4Jhj1lKQiEZCIEBf3wuve5XAOXWevHHJTfLwa2qXbuhBqY/j?=
 =?iso-8859-1?Q?TjZXspCoRDDZ453kKfCfbMI8iWnOkSqvq3b/SXlDIuFwqRiUPXfGfD/wY9?=
 =?iso-8859-1?Q?Pem6NDPCxtbntqYHisJ5WsVEu/P/otwXWh4nFY6AvWNOJ35THhoE1PFZTh?=
 =?iso-8859-1?Q?SdxNw82mjga+GytDI0zOjKUEtN2U02iMLIBWR3stnT09J9ekIEZSdbomge?=
 =?iso-8859-1?Q?+UTmIFN9fQfIu1NSC8T0Cv9FUplrLR7CyKFU0idxLCHC8GeYcCiPWgVRYv?=
 =?iso-8859-1?Q?Qem95GuOXHOKUJhQ7XCZx/tiasSUsdG1yloawDnLXdTUif4/IeCqdfnm1v?=
 =?iso-8859-1?Q?Ikh0477hsPv5b7EoOmk0Vl8ZdsSCZx5LIx+csGN9fhkDguQNAPQasvqhKv?=
 =?iso-8859-1?Q?EfKkXj4j2wzEUbTAO8LFqHNaWRt4BibUvqK7q6rho7c8Y+5yZWZbjZo3GB?=
 =?iso-8859-1?Q?b6abe4zdXqjqL6CfAjwh+uXdaQMo6rmEZs3vRnlBWG/sX2LgVd3BsU263I?=
 =?iso-8859-1?Q?1VqNFY8m41LPf8l4rty2RzzL5HVavbsKujOMwY9HXKX82qxMF8MGGf7bgQ?=
 =?iso-8859-1?Q?JeL8g2Ybk1wIAFvSSB0M2y+nE3WUf3PQX5ATOfcjXpGLfV3Fg2GqLh+0R9?=
 =?iso-8859-1?Q?JcHD+ExKBMkUgguMtGp0Mespx+gzRZacsLrgN533yhpzRxFwKvGq0vYCFB?=
 =?iso-8859-1?Q?6qk9gEVGddhW30ThnCiqi5Vd4ZH/K6gX3E8QJTqEU8BNJrFdqzTZ0PtG4r?=
 =?iso-8859-1?Q?S8zmU6YVnQS0udPoGVCIjn3rlciltU1wZgdAueokbfoA8JB+/13KIaXKAp?=
 =?iso-8859-1?Q?g5yuFoQduyWAKR+EBjvHe7ZoC1DJSKaEZsecFnEPOROgu936W5syOCOUc9?=
 =?iso-8859-1?Q?ho8t4KDPtZTfeiO/sUYnu6UQbh2YO349iIz/rP2eUkEG5026qStiJnag?=
 =?iso-8859-1?Q?=3D=3D?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3d2ec12a-8848-48a2-8fc8-08dbb91dbef1
X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Sep 2023 14:36:01.1346
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: SfMGMyGOccD/w3BjjqL8MW9F/GjCuw0W07Hb22srLnjXMogouEJH2OIW/x49mI96wUKrBqCJJxkq+ZCo1JECS/x+c6qQWIvmtfMhJ26IlJA=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR03MB6286
X-Proofpoint-GUID: o8keAZ_xJ1dGjwaxvH4rjiKqi_0kMkB-
X-Proofpoint-ORIG-GUID: o8keAZ_xJ1dGjwaxvH4rjiKqi_0kMkB-
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.601,FMLib:17.11.176.26
 definitions=2023-09-19_06,2023-09-19_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015
 lowpriorityscore=0 phishscore=0 mlxlogscore=569 mlxscore=0 suspectscore=0
 bulkscore=0 priorityscore=1501 adultscore=0 malwarescore=0 impostorscore=0
 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2308100000 definitions=main-2309190125


Hi Julien,

Julien Grall <julien@xen.org> writes:

> Hi Volodymyr,
>
> On 19/09/2023 12:28, Volodymyr Babchuk wrote:
>> There is no need to invalidate cache entry because we just wrote into a
>> memory region. Writing itself guarantees that cache entry is valid.
>
> The goal of invalidate is to remove the line from the cache. So I
> don't quite understand the reasoning here.
>

Well, I may be wrong, but what is the goal in removing line from the
cache? As I see this, we want to be sure that ITS sees data written in
the memory, so we should flush a cache line. But why do we need to
remove it from CPU's cache?

--=20
WBR, Volodymyr=


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 14:50:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 14:50:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604853.942371 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qic38-00011r-6a; Tue, 19 Sep 2023 14:50:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604853.942371; Tue, 19 Sep 2023 14:50:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qic38-00011R-3t; Tue, 19 Sep 2023 14:50:02 +0000
Received: by outflank-mailman (input) for mailman id 604853;
 Tue, 19 Sep 2023 14:50:00 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rlr/=FD=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qic36-0000us-Ij
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 14:50:00 +0000
Received: from mail-wr1-x42d.google.com (mail-wr1-x42d.google.com
 [2a00:1450:4864:20::42d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ce51a708-56fb-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 16:49:59 +0200 (CEST)
Received: by mail-wr1-x42d.google.com with SMTP id
 ffacd0b85a97d-31dcf18f9e2so5472013f8f.0
 for <xen-devel@lists.xenproject.org>; Tue, 19 Sep 2023 07:49:59 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 l26-20020a056000023a00b0031ff1ef7dc0sm12886307wrz.66.2023.09.19.07.49.58
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Sep 2023 07:49:58 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ce51a708-56fb-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695134999; x=1695739799; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=Y4hE7bwPjWW4X/BXoz7Ezkh4KFlLquy1qrkixf+YZYQ=;
        b=GxkW7useXSV0XygSeexhJHoNABDuORBr+BK/bTkYlOahxY+gylnsxkdanDSMnu7g1x
         9Xe2yKf8odTzqwPeZUl0/BXl5cT/6TabLwF/uot3GHCsE8uI/o7/C835e+KwD2cBiI2w
         8VM/OVlXDl7pF9emPhsZ4dcMQsNa6tdWODTOw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695134999; x=1695739799;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=Y4hE7bwPjWW4X/BXoz7Ezkh4KFlLquy1qrkixf+YZYQ=;
        b=R8I3HIButds9nssebZwerO3OpekOxFrjlhf7F1+IaVH0KTNuMTKtKDXZV79dn36asQ
         WnZLuFucNH3dDmVTt9Vxt+OzKnGuO0R5nu7tXGKnB09Tdw93LSlQq9tXgdLvrns6UWLp
         6QridASOUukimsK93CeNdahq3fc7/LA8DM4Ka7shUjLT9pPlHU5TZ8lFTXQ2Fh6mZqzk
         lANes1bU8HatI8cD9WitKWHPyifNcVSqeh3dH0K2k/6tzU6r0jSOp+boOHuCrmfU4PHf
         /xjuVPJANJd01ooJqmsvq0vup0gFJ5MkwmIoXcvK6DPHavg/cwQyAzAKwwwB29cd58Cb
         gA5Q==
X-Gm-Message-State: AOJu0YwOfGBVklC/m6KQNGNKgsGYbMsaQ/F3jGBhOIATPl2uU/k6Tppc
	lK4cqbeE6I9zDIepu6lf3gI2Rg==
X-Google-Smtp-Source: AGHT+IF4t5bbsDnDoaMWQpzZ8I5rR/QKzhBcUBaoS+MutVbtLB96PcF22KvUnvLpX3aKflMf3tuMyA==
X-Received: by 2002:a5d:6dcd:0:b0:31a:ea9a:b602 with SMTP id d13-20020a5d6dcd000000b0031aea9ab602mr9631228wrz.1.1695134998920;
        Tue, 19 Sep 2023 07:49:58 -0700 (PDT)
Message-ID: <855377db-18c7-47ee-27b6-a6dcbd586cbc@citrix.com>
Date: Tue, 19 Sep 2023 15:49:58 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86: Fix check_ist_exit() assertions
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230919103514.1076888-1-andrew.cooper3@citrix.com>
 <a576bdac-42b2-3d62-dbf5-200fa68d7513@suse.com>
In-Reply-To: <a576bdac-42b2-3d62-dbf5-200fa68d7513@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 19/09/2023 12:46 pm, Jan Beulich wrote:
> On 19.09.2023 12:35, Andrew Cooper wrote:
>> The patch adding check_ist_exit() neglected to consider reset_stack_and_jump()
>> leaving C and entering one of the Xen exit paths.  The value in %r12 is stale,
>> and depending on compiler decisions may not be 0.
>>
>> This shows up in Gitlab CI for the Clang build:
>>
>>   https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/5112783827
>>
>> and in OSSTest for GCC 8:
>>
>>   http://logs.test-lab.xenproject.org/osstest/logs/183045/test-amd64-amd64-xl-qemuu-debianhvm-amd64/serial-pinot0.log
>>
>> The justification for ensuring ist_exit is accurate in the exit paths still
>> stands, so zero %r12 in reset_stack_and_jump() to indicate a non-IST exit.
> I did think of this as an option, but I don't think this covers all cases.
> If we take #DB while in a PV guest, that'll be an IST entry. Assume further
> that we re-schedule before re-entering the guest. Upon the vCPU being
> scheduled back in we'll have %r12 clear with an on-stack indication of
> having taken an IST guest exit.

This is nasty, and we would easily have that behaviour if e.g. GDBSX was
attached to the vCPU in question.

In that case, technically it's the other scheduled vCPU which is
undergoing the ist_exit, but regs->entry_vector will be different and
invalidate the check.

I guess for now I'll have to relent on checking on the exit-to-guest
paths.  I don't see any other feasible option.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 15:01:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 15:01:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604862.942384 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicET-0004hx-7S; Tue, 19 Sep 2023 15:01:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604862.942384; Tue, 19 Sep 2023 15:01:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicET-0004hq-4M; Tue, 19 Sep 2023 15:01:45 +0000
Received: by outflank-mailman (input) for mailman id 604862;
 Tue, 19 Sep 2023 15:01:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=+GSz=FD=citrix.com=prvs=61920ccf8=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qicER-0004hk-SD
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 15:01:43 +0000
Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com
 [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6e5c92cc-56fd-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 17:01:41 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6e5c92cc-56fd-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695135701;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=XiBujX9PNvgiTmmue4/CPkKhzecl8JFFLO6da/m2ZtI=;
  b=Cc83lbpJcwkRe3a3s3wBeaEM+6jqZg6mjvlwitQbM2eb6KP9h9m1mW5Z
   BHVRtkvrh1XTppQuo6YsknQUuucS7K8yQjthz7kRbhA9Pp4sdZ1hGy56d
   kY4VPnJaUOSgUDmBkDnGw6+dlsSwuIhk76j+SiG/1Da1cqCTqOlCh/Iub
   Y=;
X-CSE-ConnectionGUID: /dOcb3KHQy+W9g9JxBCISA==
X-CSE-MsgGUID: kE9WnLUcSQSGI9gZ2yUYXg==
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 122969720
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:tOWcLq8JJmXdLk0Y+diGDrUDkH6TJUtcMsCJ2f8bNWPcYEJGY0x3n
 GtLWjqGaK7bM2LyfIh/PIm180lXsJTSzNIyQVZppCE8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks11BjOkGlA5AdmNKka5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkkJ+
 dsTImsuTimSxN3nz+OZWsNHp/8KeZyD0IM34hmMzBncBPciB5vCX7/L9ZlT2zJYasJmRKiEI
 ZBDMHw2MUqGOkcUUrsUIMtWcOOAr3/zaTBH7nmSorI6+TP7xw1tyrn9dtHSf7RmQO0MxBzJ+
 DOZpTyR7hcyN/HO9jyhz3mXv9TgvHL0atgDKYyI+as/6LGU7jNKU0BHPbehmtGph0j7V99BJ
 kg8/is1sbN05EGtVsP6XRCzvDiDpBF0c/h6HvA+6QqN4rHJ+AvfDW8BJhZebPQ2uclwQiYlv
 mJlhPuwW2Yp6ufMDyvAqPHN92ja1TUpwXEqIiMjRgFewPnascIM3x2ebMZJO4+Op4igcd3v+
 AyioC87jrQVqMcE0aSn4FzK6w6RSoj1oh0dvVuOAD/8hu9tTMv8PtHztwCHhRpVBNzBJmRtq
 kTojCR3AAomKZiW3BKAT+wWdF1Cz6bUaWaM6bKD8nRIythMx5JBVdoBiN2dDB0zWirhRdMOS
 BG7hO+pzMUPVEZGlIcuC25LN+wkzLL7CfPuXe3OY9xFb/BZLVHWoXkwPxbNhzC8wCDAdJ3T3
 r/BK66R4YsyU/w7nFJauc9NuVPU+szO7TyKHs2qp/hW+bGfeGSUWd843KimN4gEAFe/iFyNq
 b53bpLaoyizpcWiOkE7B6ZPdwFVRZX6bLiqw/FqmhmreVY/RDt9V6KPn9vMueVNxsxoqwsBx
 VnlMmcw9bY1rSScdW1mtlgLhGvTYKtC
IronPort-HdrOrdr: A9a23:6cjZFalpWhvnHGV4rLgy/+sXDXHpDfLo3DAbv31ZSRFFG/Fw9/
 rCoB17726QtN91YhsdcL+7V5VoLUmzyXcX2/hyAV7BZmnbUQKTRekP0WKL+Vbd8kbFh41gPM
 lbEpSXCLfLfCJHZcSR2njELz73quP3jJxBho3lvghQpRkBUdAF0+/gYDzranGfQmN9dP0EPa
 vZ3OVrjRy6d08aa8yqb0N1JNQq97Xw5fTbiQdtPW9f1DWz
X-Talos-CUID: =?us-ascii?q?9a23=3AwHde6msOa1t2L9aGRF9CGSmS6ItiflrWxizzA3a?=
 =?us-ascii?q?pSlk4R+y3WXW72ZhNxp8=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3A1+gD7Q9GR8GCEfyykYxWrs2Qf8RFspuoLH0Gqqw?=
 =?us-ascii?q?9lOjVOh4qKgqsvDviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,159,1688443200"; 
   d="scan'208";a="122969720"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich
	<JBeulich@suse.com>, =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>
Subject: [PATCH v2] x86/entry: Partially revert IST-exit checks
Date: Tue, 19 Sep 2023 16:01:08 +0100
Message-ID: <20230919150108.1233582-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

The patch adding check_ist_exit() neglected to consider reset_stack_and_jump()
leaving C and entering one of the Xen exit paths.  The value in %r12 is stale,
and depending on compiler decisions may not be 0.

This shows up in Gitlab CI for the Clang build:

  https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/5112783827

and in OSSTest for GCC 8:

  http://logs.test-lab.xenproject.org/osstest/logs/183045/test-amd64-amd64-xl-qemuu-debianhvm-amd64/serial-pinot0.log

There's no straightforward way to reconstruct the IST-exit-ness on the
exit-to-guest path after a context switch.  For now, we only need IST-exit on
the return-to-Xen path.

Fixes: 21bdc25b05a0 ("x86/entry: Track the IST-ness of an entry for the exit paths")
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>

v2:
 * Rewrite.
---
 xen/arch/x86/x86_64/compat/entry.S | 9 +--------
 xen/arch/x86/x86_64/entry.S        | 9 +--------
 2 files changed, 2 insertions(+), 16 deletions(-)

diff --git a/xen/arch/x86/x86_64/compat/entry.S b/xen/arch/x86/x86_64/compat/entry.S
index 7504bfb4f326..bd5abd8040bd 100644
--- a/xen/arch/x86/x86_64/compat/entry.S
+++ b/xen/arch/x86/x86_64/compat/entry.S
@@ -117,15 +117,8 @@ compat_process_trap:
         call  compat_create_bounce_frame
         jmp   compat_test_all_events
 
-/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
+/* %rbx: struct vcpu, interrupts disabled */
 ENTRY(compat_restore_all_guest)
-
-#ifdef CONFIG_DEBUG
-        mov   %rsp, %rdi
-        mov   %r12, %rsi
-        call  check_ist_exit
-#endif
-
         ASSERT_INTERRUPTS_DISABLED
         mov   $~(X86_EFLAGS_IOPL | X86_EFLAGS_VM), %r11d
         and   UREGS_eflags(%rsp),%r11d
diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S
index 988ef6cbc628..5ca74f5f62b2 100644
--- a/xen/arch/x86/x86_64/entry.S
+++ b/xen/arch/x86/x86_64/entry.S
@@ -142,15 +142,8 @@ process_trap:
 
         .section .text.entry, "ax", @progbits
 
-/* %rbx: struct vcpu, %r12: ist_exit, interrupts disabled */
+/* %rbx: struct vcpu, interrupts disabled */
 restore_all_guest:
-
-#ifdef CONFIG_DEBUG
-        mov   %rsp, %rdi
-        mov   %r12, %rsi
-        call  check_ist_exit
-#endif
-
         ASSERT_INTERRUPTS_DISABLED
 
         /* Stash guest SPEC_CTRL value while we can read struct vcpu. */

base-commit: ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 15:09:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 15:09:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604869.942394 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicM6-0006LC-U1; Tue, 19 Sep 2023 15:09:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604869.942394; Tue, 19 Sep 2023 15:09:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicM6-0006L5-RR; Tue, 19 Sep 2023 15:09:38 +0000
Received: by outflank-mailman (input) for mailman id 604869;
 Tue, 19 Sep 2023 15:09:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=G4hl=FD=aim.com=brchuckz@srs-se1.protection.inumbo.net>)
 id 1qicM5-0006Jk-MC
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 15:09:37 +0000
Received: from sonic312-23.consmr.mail.gq1.yahoo.com
 (sonic312-23.consmr.mail.gq1.yahoo.com [98.137.69.204])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8a263f3d-56fe-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 17:09:35 +0200 (CEST)
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic312.consmr.mail.gq1.yahoo.com with HTTP; Tue, 19 Sep 2023 15:09:32 +0000
Received: by hermes--production-ne1-6cbd549489-lrnsj (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 1543966a54d5c59c750f7868feceeb33; 
 Tue, 19 Sep 2023 15:09:29 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8a263f3d-56fe-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netscape.net; s=a2048; t=1695136172; bh=iwI3VEUXakqH6uEjw2EE0kc37L4DFboeyRPCXkrOT/A=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From:Subject:Reply-To; b=mAQjo/OnZ7CjLmLlsNAd81TNGAsXT63gnpLNaX0pEpyaHveE8Vdg945lxjuJwLdpYeWZTm0DceUTUdiFGFI+UHu1B/ku0RuIXcKkdcuIwfttVmohQ8B+mzSt1pq9hxjDMQ3f4HJq10G0F/3XQq/WsGQKiszRiPx6q8cHsUlZUxHGJTuOe09p99EQ43Gqnq0NinfWFiX9cBjhIJhH7Q/ILhjSZpIceI0ui7GqEI03oDAy5bIT1TI9UvdBgAGdIuQ8Wb5kxGnYnwm4dt12j30EycLyaIFch9uYBDqJzCVOhh+iurZ/g21e7KfZo3pCogNVRf8lHFY2dC4Y3Enp276HKw==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1695136172; bh=vMWAl6AUzD7OA4OddbTaHheDP3ZdcC+GJiwcCWdv8BA=; h=X-Sonic-MF:Date:Subject:To:From:From:Subject; b=BLjIPZA3zdtR6e5xMrLLy+uqF6KVcKRLZEtvcsQTYSgtsnrj+9BJPI6x+UH5zMVNRQJ5UBmwVH5QrzrzNT7Bj2ug+lnFD9ZpINUc2EEmzDCFf6mCGog0fYrVrye2AUvnkbk3Th74UYUf0o0rCuLFzR36mnt1R3X/fZcMgb8t/XZSdnKJPBGf8iEL1tJqkC0IP2w/1/AKOm3lMLnh5GObvZtBCTY2KniVtydYNYiarX6PIx1269T7+XgMzirFzo1XPdFaCrgwNx++0/R00NpoqYlRwgC61+rEBxq2R164o27n7UzIfXqIU8h5ah6CTrvOBx/nTN+InUDBd2MlnAOmtQ==
X-YMail-OSG: OQgSAy4VM1nxeoLrVcoOv.b8wzOuxMOdlg8QPU1XekZQnVuP4w4I8SE5eU4VBif
 yyzjxTHQqSEvo5pjEJzLmhyiRwMohSd_V0rGqwib58yfJGDmLC.7boVK.B3EluNdVbOF0GhqLtmq
 XFOTFMB0CnHNV27JxQna5rj_T_JeqK7I_.i7USb6r4oB0z1SUGoneEp7r1G3W4BAkK0JYhqlDTDH
 qQ9zQ5FTU8J3X7XRSmpkHa84j8aSpbMgIuvDNkGzkMMs5ytx7koTC1vqHO88Lr3_RUFxXAANKBmq
 uEFz0..pz3phwST13MfWU093VqrXJneJkYK4l4Kmq.fMct_PFrZx36gSoFcRLvKcEtVfl5TjJqFb
 XqBUxhMBVzQJcjs8YNEQJdi2N7i.DKAYb9RmTfNUwGoP0KSlcExUuhkWtfdJBUgZnsJ_mcR5Y3wM
 uxDmEBl7mi9jX3ipGX_M3Oly3BKTE3nXllZzZogALTrrvn5xQlCmrMwq1WZYHvNMRHcucwW3cM6q
 QpJ1tmrQcDYtbQjFOSXIStp2DXYrmiFiUU2uCPrOY6Ssg1MLhC3aZlTJ4Pzi4tFneTmsmg9OeNsc
 .iRjRo8BKiwRZOiUSoYACiYA.VetFCzbKYCmTsppKnke_nnxPnRGf2pSRRnS3b_Jkg0UwQx.8jL2
 57u2oQ7HJxjjDFSBlqPF60AXnEJdJEasvywT5784UFtZG8yAPdt9x1Shj7Hd_GnZdEjixhiJebm5
 nCsWHquzFFJ.IO_cvVu0nCFg5ew6J6QzAGYWK5h7KlecXYnHWMSp0Al2gGqPPK04cQPEhAii4umT
 KeABl8Pju_5iRVNqjuNjiXXIVUCmPXiKfLlvhLmwhsJgjlmUoCK5CIsvQZGMEXFrSDrAIiEBozSO
 kmaPNkF1Sv2wy.XRucBPdet4he46i_V4moJV_OSC3EnCipVksbNSY.7ORpgZTsTPBYrmRRH8dXKi
 E9CFHDV1QG.swE4alGJgBaH1VyIKgIhOToWrjpd3pX1w95.GOZPHFEbBfqdMgI1MYezQ0oMdrCvW
 0kKBmxN6h4nGHfVPRTtXJoi0I4xMgYKunUdbAlyf1ad2P_6_PRInnG6eSVA2yBXzuTIcdxS0Mn12
 O.dqSvuNIOruLuZiTypkKqDFgEU_t9aR0GXr2e4cxjssg2gaCWW6JuC1XBlCtEaqPj6wXDLkJ_gm
 4jnUhcpBDmGrlBso7gZ2VOaY1ArUVWyGJUPaXTpYTk6vFft6faXDgN90AvT.mUJ0KAtQ2IQrqY7E
 VuTRgTcl2Fb7gz3VWuCbdB6aChhQtN7_if_2RBv.RPDzqr4SmWTPPvqS1eo.aOUNgebmwHldrqLW
 JxZTn1Q9GKfdnNI3zpxCyrtHMiRqzCeHT3EopMf7UVzAIXINGbVBk7ePh6b0J9sPVXFCLl6d9fWp
 uv4w9cl9Q2mN745XpPfI0S_ynKyWtlunv6_FhQsm1YzJVSsGQOIhVg2tWZUIZhztbRG0wanrPnwS
 aS_xfpzJ6jCDDW88t3wSHR7NXU34Sso9rkwlSEEc2qzhF6IH2Zp2dl8esd75juwi8YBsbuSb.jTX
 vaho5N2dWtGAx1JZQOhh_k.2KFa9KdjO3EHsybOV3GcDugBn9NjgMZHO6A9SEmww2LxtS3JI1v_Z
 fHN9QDhJHAY6k2hben..4PYjV1aaTVHXEeHIL6Gb030C1i1zAgl4CHSjmfiUQCrjZrA26uXTpnmF
 IaFntEIQNWuGStjgC_epyJP5sVBZaNSaeoEe6PhzONE9XHH20Kc8VRA4JMDNdog_MENkKL.ljXxO
 KU3YF6XIpQcha7HwUKtyrAa2okZ5qR.TD67GurAg48S40kkBRTtAnO1TIcgK1jMzFrV.hE1udtWa
 hg6zDhah6G1MJMFUPoiaP9HVcHDeDFjqedZimwR44.Unq6BM3pBvYMRzwRncT23Lgxv9936JElDw
 aPeihx6XK5lHi2ZrZaSW3mfHtLDRLOBJFEM_3V5oIpkxvmVKzamriY0i3eeQE1TT22WHrNRSBWaa
 jpWp2AiykdFE8wduCSTrPkmNVkWHUlJS5x.9tPuqVO7HsMtftC0okUtQSGKW4Q76tJPSArHuNt.T
 I8TnyV01t8CCCN9__NnjECPDNhZUApyZfaWJd4q4LloB6rMqcvDxIxVVSPUlB9og_61S09ldLILu
 5lOr8B23qWnJ882UV1OxRHL4Q_ZfvA2m.NUIZM7TbABu8RamXlypb01F8zuYIUZOIt7p9eV62JhG
 1Wb6cxBvIAbHE_ClpIfiEOTg-
X-Sonic-MF: <brchuckz@aim.com>
X-Sonic-ID: c2a8add0-a901-4f54-818e-45be881d9193
Message-ID: <232644f5-b0ad-414f-a4b5-03724f5ac053@netscape.net>
Date: Tue, 19 Sep 2023 11:09:26 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: xl dmesg buffer too small for Xen 4.18?
To: Julien Grall <julien@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <b20bdc7e-4c07-4bde-b206-4142310211d4.ref@netscape.net>
 <b20bdc7e-4c07-4bde-b206-4142310211d4@netscape.net>
 <9baf6bec-49c6-474b-a5e3-5f0473aaffc7@netscape.net>
 <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
 <ZQlHj5rjMaYj8Z4e@MacBookPdeRoger>
 <41a2cdf9-8fd1-418d-abc9-1fe4f3fd8b5e@xen.org>
Content-Language: en-US
From: Chuck Zmudzinski <brchuckz@netscape.net>
In-Reply-To: <41a2cdf9-8fd1-418d-abc9-1fe4f3fd8b5e@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Mailer: WebService/1.1.21797 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.aol
Content-Length: 2729

On 9/19/2023 8:10 AM, Julien Grall wrote:
> Hi Roger,
> 
> On 19/09/2023 08:02, Roger Pau Monné wrote:
>> On Mon, Sep 18, 2023 at 07:49:26PM +0100, Julien Grall wrote:
>>> (+Roger and moving to xen-devel)
>>>
>>> Hi,
>>>
>>> On 18/09/2023 19:17, Chuck Zmudzinski wrote:
>>>> On 9/18/2023 9:00 AM, Chuck Zmudzinski wrote:
>>>>> Hello,
>>>>>
>>>>> I tested Xen 4.18~rc0 on Alma Linux 9 and my first tests indicate it works fine for starting the guests I manage but I notice that immediately after boot and with only dom0 running on the system, I get:
>>>>>
>>>>> [user@Malmalinux ~]$ sudo xl dmesg
>>>>> 00bee72000-00000bee72fff type=7 attr=000000000000000f
>>>>> (XEN)  00000bee73000-00000bef49fff type=4 attr=000000000000000f
>>>>> (XEN)  00000bef4a000-00000bef4bfff type=7 attr=000000000000000f
>>>>> (XEN)  00000bef4c000-00000befbafff type=4 attr=000000000000000f
>>>>> (XEN)  00000befbb000-00000befbbfff type=7 attr=000000000000000f
>>>>> ...
>>>>>
>>>>> I have noticed the buffer fills up quickly on earlier Xen versions, but never have I seen it fill up during boot and with only dom0 running.
>>>>>
>>>>> Can increasing the buffer fix this? How would one do that?
>>>>>
>>>>> Thanks
>>>>>
>>>>
>>>> I see the setting is the command line option conring_size:
>>>>
>>>> https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#conring_size
>>>>
>>>> The default is 16k, I tried 48k and that was big enough to capture all the messages at boot for 4.18 rc0. This is probably not an issue if the release candidate is being more verbose than the actual release will be. But if the release is still this verbose, maybe the default of 16k should be increased.
>>>
>>> Thanks for the report. This remind me the series [1] from Roger which tries
>>> to increase the default size to 32K. @Roger, I am wondering if we should
>>> revive it?
>> 
>> I think the relevant patch (2/2) will still apply as-is, it's just a
>> Kconfig one line change.  I'm however thinking it might be better to
>> bump it even further, to 128K.  From a system point of view it's still
>> a very small amount of memory.
> 
> I don't have a strong opinion about 128K vs 32K.

I am sure 32k will be big enough on my system, and based on Jan's comment
about release builds being less verbose, the current default of 16k may
still work on my system once the release is out. I am willing to defer to
whatever the developers decide according to the ordinary process for deciding
such questions.

> 
>> 
>> I'm happy to repost with an increased buffer size, but only if there's
>> someone willing to Ack it, otherwise it's not worth spending time on
>> it.
> 
> Sorry that patch fell through the cracks. I would be happy to ack the patch.
> 
> Cheers,
> 



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 15:16:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 15:16:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604876.942404 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicSz-0000Vz-Mk; Tue, 19 Sep 2023 15:16:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604876.942404; Tue, 19 Sep 2023 15:16:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicSz-0000Vk-K1; Tue, 19 Sep 2023 15:16:45 +0000
Received: by outflank-mailman (input) for mailman id 604876;
 Tue, 19 Sep 2023 15:16:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qicSy-0000Vc-Ew
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 15:16:44 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2058.outbound.protection.outlook.com [40.107.13.58])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 89c3eda5-56ff-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 17:16:42 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9201.eurprd04.prod.outlook.com (2603:10a6:102:232::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Tue, 19 Sep
 2023 15:16:10 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 15:16:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 89c3eda5-56ff-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mMNbw3SYh0ifZXqJwkQt9Bo+KkOQ/sVSqCbNuSRjrPJCL5cs9fnrfDgVrLX6xw4rL67uTyNSoSEErNa2cADjie+GuULSbFgS8FjAHWBJdNynxw7Ez3Qhu+mejgX/R46dTwpOujNpDid7Tt6QT9CdfWD04lyJmVb6jUZWYqqQ3OPCfHkI4T7+T6bhFgwThKS54SX6hNRnjhlxjcqCfitkCmf8prx48LyknZXmiJiVmj9K7O8+Rc+wLtZ22sc5SNpXH7W7alIivwoOKZakEXCcPi+B63jicSju9dTRUaa03RXshkxGK9YaOaZk5wzQMNTUxYLsH838DKiR3PoAgiLreg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+biRC43RtJaJPNPS+CrzW2LbFXmlEJbVAG3TcDRo2hE=;
 b=Z5gzRy75Blu5IY0T2JDawkA+stABiNAkP7jDZWiX9MOtTN6oCaMnyCXQD5Na7p1z068cfewMctFzqSh0d7K8TkPHXMW4nJh5NBbkWpM9cH5Ct7wrdluQE+2HjRr3w4HH+FDpIjCqbozPdKtXuhaddnFpLvdIoh7HEBn+SbDuQjzr6lHqykkSjanXsCzXzFVHwkB0K9Lruu8ygJAY2UijXDs0o2om0yOtVvFurCVUjyxBUN+08alb/FYuiHYqWQPopl0QsUUle8tOgb7j7L9QNnA+JC5pPfJr8bsc6JMvAGBAuzCWfq+4y9jmZGmhuiCI5TUdL6d/15U73ezy9R48jQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+biRC43RtJaJPNPS+CrzW2LbFXmlEJbVAG3TcDRo2hE=;
 b=Jh0lObapRmeDYNuRYYTdwA2n0YqxW4A4tvCwiaO5/Du5yANfRwArwBnbukRQKv6C3yYcezPlUZs/fqnCSzVttJg8vuYWesYlaf7N3XK8obbkFkA0oezCzokuqaYIjUlmkPSZE/1vyWGoAo/7q8n65kBSYrH83btLC8OTI8k02V6iZMhyUErv8O4f8sIv+2o9f2y9vqgTxsf3iZkBJJz1ZPjOWgRn80cYr1xD8mistRELxLKN28ljqvJkd+LiEFK/h8hkd9YbPay8NGZx01/2IYyZZANEB9NZaVHO1Nbh/Hkn/HNFi95jGcDnhKXf6f9FG10QxRzARlKdEfxBSWNIOg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <64161126-f1e1-1b5d-8491-947e2cb041e2@suse.com>
Date: Tue, 19 Sep 2023 17:16:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 04/10] x86 setup: porting dom0 construction logic to boot
 module structures
Content-Language: en-US
To: Christopher Clark <christopher.w.clark@gmail.com>
Cc: Daniel Smith <dpsmith@apertussolutions.com>, stefano.stabellini@amd.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Luca Fancellu <luca.fancellu@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rich Persaud <persaur@gmail.com>, xen-devel@lists.xenproject.org
References: <20230701071835.41599-1-christopher.w.clark@gmail.com>
 <20230701071835.41599-5-christopher.w.clark@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230701071835.41599-5-christopher.w.clark@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0042.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:92::15) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB9201:EE_
X-MS-Office365-Filtering-Correlation-Id: fb662bd3-a600-4d42-bf16-08dbb9235a81
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KtWHet+gLAT1pAhzfxeDuJTOwQvSF5I+akZpgJk8SS7oU39c7oHjo3ZRIrxSErC8CSh2/HluNRLOmmNy7V5IbSqiwFbdlo7ZaOCXQOzkTH3F6WwVgtMomOZd6Jxk41SIWsi8ho1S49cuj4j7iM4nsxpMiiZdYhy/qDxsj/efR4X+pE9nllN9ZI7jtTqqMgmJj42d1Hb4VQ/fWSeruJa72/Ogiza+OHA2BBb9MGtHcejEavlWhaxaUg89WoojA2aI5NA8xh97/zL6a3he7fW98wJr1NPMUzQobW2Cy3dekFtFWd5tVX2W6ayl/lBDHQLzRRWHZV+xGWaYx76MIhFqdHOTlilm5ZKn3B+xkLeF0aDPyw7PC1h317H5mhg/SuFn+qNMrRo0ZeKQGep2d4Wz1h4ESFVRMnydwck4ERonvbKEfswvEIuy+pzVeRAzlZ71iRaW0MWpk6TTXNe3+r1iBbQCATN4/of+WDwIgqZBraxNw55UFmyTrWKcbmEVgEXI5n3fw5FQtHf1xV+Orz+ICIfEQQwNf1CNTKPLB50SWMEhFGeKnDzCxnIXp9h0upMLvthjOpZIvlFiHzFg6Olyph3Kg6xZp8eisUvVM7WlxFN6vnZHBfo4yAITX9gWPyQ2CLAk75r76Df4pK/44KFnQA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(346002)(396003)(39860400002)(136003)(451199024)(186009)(1800799009)(6512007)(54906003)(66476007)(66946007)(66556008)(316002)(6916009)(6506007)(6486002)(31686004)(41300700001)(8936002)(31696002)(4326008)(8676002)(5660300002)(53546011)(86362001)(478600001)(2616005)(26005)(83380400001)(36756003)(7416002)(38100700002)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TFNoODdyVG04aEozOC8rQ1l4aVcyQWVuRkNsZXpBK1YvZVhOSU5QUFhGeS9L?=
 =?utf-8?B?NVNJZkRKK2FzNHhhZHhEV2J1L2lMNnVsT3FiN3J4dVBSR01Ca2hsZ3dhcjhn?=
 =?utf-8?B?R0pVVG05S3hhMHp0Q0xZNEtLNEI0Si9FbWpLMGIzNldBazlzcml2alJENGFw?=
 =?utf-8?B?eFhzSmFEVWpaaDBKUFRVYTNmcE9xaXB5cGdyRmpaN3RKQnhhZ1pJMnpMVUJB?=
 =?utf-8?B?OG1qT2NseTRDbEJCQ3RuVGxCa01tZU92Qkx2SURRam9PbmUzVTRZaVVMaHVr?=
 =?utf-8?B?YWNPcHc5MVM3MXArM2l5MGRuK0w5eDRIZWRsL1BYUUpmZ3NQRnR2YzkxRExF?=
 =?utf-8?B?K2U0QzFoVk96MkJzc1pDdmJjUUxPNys2TkRXT0pIcnl6b1hKVXQ0TkpISjlN?=
 =?utf-8?B?Vkh2SXpOSU00MmlHelYvK2tSelhpS1VLQVNacUgyWjZPMWUzVUU0Mi85eHhq?=
 =?utf-8?B?UEdjSzJjYk5nR3ZpTGdMckZjWnlTK2Vid2lTRXl2ZHd4cXEvNGFCNERzeGww?=
 =?utf-8?B?QUp5RTNXeFE1a3d1b1d5cGxELzk2YS83U0pweW1JZG9PSzBYeUQzQ2dCZmZy?=
 =?utf-8?B?WTlKTXlQNENVVFZyMGhaOE82d3lDQlg4L3pXd3ZIbjRuQUpWbU1FSGlTOUp0?=
 =?utf-8?B?TVVyREh5LzBxcC9RUTlmL2lBSUZjWnd3SmFFZW9scmt6bGlIOWgrMHY5MCtO?=
 =?utf-8?B?bC8xamQyZ0F0WjB6aGp5c2xzRnBMRUVGbDNMaW1oc0xja2dTTC9GMEZnN2V1?=
 =?utf-8?B?NGpzMnNzZDdKbjFFSm44UHZkbUNlOWlvUnNieWRuUC9oVTFpaUpCUm1mYUoy?=
 =?utf-8?B?b2pXK21YdE5tbngxSm5iSTRDVmx3dWlJYTdiT05EVlFjQk1makF1TWRPTHRm?=
 =?utf-8?B?bnM3UmhpaHBaR1dBWHFHQWQ2N3RHcjVYYWRRdTBxUlhleFhMRGVvdEo3Tjky?=
 =?utf-8?B?Ymg1QjVKRWFVK3VmTlVtYWMxQU53aXFjTklrektqd3VvTm1JMEl0WHJlSWQ2?=
 =?utf-8?B?c0pGZitrUC9tYUhqRkhiTFpKVG03cTFWbEo1V3hIMmlJcXFFZ210TVBYckpy?=
 =?utf-8?B?ZGMybktWTy83NGN4YnAyYUc2c25GNk5qc3d6SE1WWTFsL0MzZXRpS0Fzdmlj?=
 =?utf-8?B?aEtwT3dsdVJDTTRvS0U4emRiTStiZkM5M2dLM2NyUzVFd0djaVQvMXVYS3lU?=
 =?utf-8?B?L1NyOXVldlhGU0Nvd292TDRkZUhnc3FTRzdLdERSK05aSlJRdldZZ2hxMkp6?=
 =?utf-8?B?MTRPZE9ZMytQTUJ4Zml4L3pzeVZvajVmSnZ5cmorNmUyOHpMMHNFYjE0N3d6?=
 =?utf-8?B?THFRNGY3Yk1ZMHBYR3YyM0hPMmlweUUxdG8valNEUk5FekJETjVrekQ4Wnhj?=
 =?utf-8?B?VVhRVjBVYURyMml5c2NkRjA2WjNZU2tVcGs3T01DZEJNb2VDcjRjN3BXaVdV?=
 =?utf-8?B?dTFIWmpuQW9WQXJyNGw2S0xqdHg0ZmtMQWFGRVdqbUhkNklJb212eU1PL1Q1?=
 =?utf-8?B?QkNWNkVmS0g4SVJwc2U3RVZPMkd4eFFWeTdMUHdBWldhMHlXSkhlU0NqMzBn?=
 =?utf-8?B?cHI4UVJMQ2xxc1psSllMdm02NDFXaTNxdWdaY1V5MysrUnRSSGF6ZU5PQkkx?=
 =?utf-8?B?bTJLUUFFd3E0NFRkc0o5ODVXalZKRUZzR2pIQmhKbFlUS0IyU1pvcDlXVWJU?=
 =?utf-8?B?SVhNbHlzenc4ZWhpRVdLT2xMdlpSODhyVGdaeGVEOHhOM2s5TzQ5ZlNEcmJo?=
 =?utf-8?B?TCtjNkc5dGRHTHJDMWpYNk5CVFFPWGc3YWhqdngwY1BNeGhvenhIcEhQNjkz?=
 =?utf-8?B?YWtIV2hsVUtUSk1KcDBXV1kyc3hnbndzZnV4Yzd0ZXhXcThXV0E0c1pMZm9L?=
 =?utf-8?B?bkpOcmNFMFBYa3I0VmFKdkwwRVluSW95ZkNZSzcyM3o1OWcxRjhZVGNMUVRG?=
 =?utf-8?B?NXlrT1N3WVFaV2dYNmlMV2IwSjRTRWh3R3FEYUJ2bXRlMjJVVm01V1d3TGJT?=
 =?utf-8?B?cGp2S3lKalF5VmN0U1BhMFZ0SmdGODFqaVcwZUpDRkxwL3dPeXVYZ0tBQ0o1?=
 =?utf-8?B?T00zcXorbkRBRlBVd0N0WGdqbm4rQ1NhTmpOQnpTdGhJcDh0RmpIZUxJVHZs?=
 =?utf-8?Q?MH2tnLuiRcZk5lQYa4N0izB9G?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fb662bd3-a600-4d42-bf16-08dbb9235a81
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 15:16:09.7659
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: MAtru28bFqorJyXUYV9yegGf8sh3XYSNBmCvJsUO2ESnmOhYIV29ywgfbBS14q+LdWoEbrknnEW5Bdd+iqUy4A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9201

On 01.07.2023 09:18, Christopher Clark wrote:
> --- a/xen/arch/x86/include/asm/boot.h
> +++ b/xen/arch/x86/include/asm/boot.h
> @@ -19,6 +19,42 @@ static inline void *bootstrap_map_multiboot(const module_t *mod)
>      return bootstrap_map(&bm);
>  }
>  
> +static inline unsigned long bootmodule_index(
> +    const struct boot_info *info, bootmod_type_t bootmod_type,
> +    unsigned long start)

unsigned int?

> +{
> +    for ( ; start < info->nr_mods; start++ )
> +        if ( info->mods[start].bootmod_type == bootmod_type )
> +            return start;
> +
> +    return info->nr_mods + 1;
> +}
> +
> +static inline struct boot_module *bootmodule_next(
> +    const struct boot_info *info, bootmod_type_t bootmod_type)
> +{
> +    unsigned long i;

Again.

> +    for ( i = 0; i < info->nr_mods; i++ )
> +        if ( info->mods[i].bootmod_type == bootmod_type )
> +            return &info->mods[i];
> +
> +    return NULL;
> +}

What is "next" meant to express here? You always return the first module
of the requested type.

> +static inline void bootmodule_update_start(struct boot_module *bm,
> +    paddr_t new_start)
> +{
> +    bm->start = new_start;
> +    bm->mfn = maddr_to_mfn(new_start);
> +}
> +
> +static inline void bootmodule_update_mfn(struct boot_module *bm, mfn_t new_mfn)
> +{
> +    bm->mfn = new_mfn;
> +    bm->start = mfn_to_maddr(new_mfn);
> +}

Why two functions setting the same data and overriding each other?

> --- a/xen/arch/x86/include/asm/bootinfo.h
> +++ b/xen/arch/x86/include/asm/bootinfo.h
> @@ -2,9 +2,33 @@
>  #define __ARCH_X86_BOOTINFO_H__
>  
>  struct arch_bootmodule {
> +#define BOOTMOD_FLAG_X86_RELOCATED     1U << 0
> +    uint32_t flags;
>      unsigned headroom;
>  };
>  
> +struct arch_boot_info {
> +    uint32_t flags;
> +#define BOOTINFO_FLAG_X86_CMDLINE      1U << 2
> +#define BOOTINFO_FLAG_X86_MODULES      1U << 3
> +#define BOOTINFO_FLAG_X86_MEMMAP       1U << 6
> +#define BOOTINFO_FLAG_X86_LOADERNAME   1U << 9

In how far are all of these x86-specific? And are they needed at all?
Can't you internally use respective fields being NULL as good enough
indicator (looking at e.g. the places where LOADERNAME and CMDLINE
are inspected).

Also the values are all missing parentheses.

> +    char *boot_loader_name;

const char * ?

> +    uint32_t mmap_length;
> +    paddr_t mmap_addr;
> +};
> +
> +struct __packed mb_memmap {
> +    uint32_t size;
> +    uint32_t base_addr_low;
> +    uint32_t base_addr_high;
> +    uint32_t length_low;
> +    uint32_t length_high;
> +    uint32_t type;
> +};

This looks to duplicate an existing structure, without removing the
original, and without annotating both places to mention that they need
to remain in sync. Question of course is why you need a 2nd struct
definition in the first place.

> @@ -269,20 +273,44 @@ static int __init cf_check parse_acpi_param(const char *s)
>  }
>  custom_param("acpi", parse_acpi_param);
>  
> -static const module_t *__initdata initial_images;
>  static struct boot_info __initdata *boot_info;
>  
> -static void __init multiboot_to_bootinfo(multiboot_info_t *mbi)
> +static void __init multiboot_to_bootinfo(multiboot_info_t *mbi, module_t *mods)
>  {
>      static struct boot_info       __initdata info;
> -    static struct boot_module     __initdata boot_mods[1];
> -    static struct arch_bootmodule __initdata arch_boot_mods[1];
> +    static struct arch_boot_info  __initdata arch_info;
> +    static struct boot_module     __initdata boot_mods[MAX_NR_BOOTMODS + 1];
> +    static struct arch_bootmodule __initdata arch_boot_mods[
> +                                                       MAX_NR_BOOTMODS + 1];
>  
> +    int i;
> +
> +    info.arch = &arch_info;
>      info.mods = boot_mods;
>  
> +    info.cmdline = __va(mbi->cmdline);
> +
> +    /* The BOOTINFO_FLAG_X86_* flags are a 1-1 map to MBI_* */

I would say the comment should go in the header and here you want to
check the property via a set of BUILD_BUG_ON().

> @@ -1147,19 +1177,22 @@ void __init noreturn __start_xen(unsigned long mbi_p)
>             bootsym(boot_edd_info_nr));
>  
>      /* Check that we have at least one Multiboot module. */
> -    if ( !(mbi->flags & MBI_MODULES) || (boot_info->nr_mods == 0) )
> +    if ( !(boot_info->arch->flags & BOOTINFO_FLAG_X86_MODULES) ||
> +         (boot_info->nr_mods == 0) )
>          panic("dom0 kernel not specified. Check bootloader configuration\n");
>  
>      /* Check that we don't have a silly number of modules. */
> -    if ( boot_info->nr_mods > sizeof(module_map) * 8 )
> +    if ( boot_info->nr_mods > MAX_NR_BOOTMODS + 1 )
>      {
> -        boot_info->nr_mods = sizeof(module_map) * 8;
> +        boot_info->nr_mods = MAX_NR_BOOTMODS + 1;

This makes for a transient disconnect between module_map's size and
MAX_NR_BOOTMODS (which only so happens to be 63; it could well be
another value).

> @@ -1459,14 +1486,14 @@ void __init noreturn __start_xen(unsigned long mbi_p)
>  
>              if ( s < end &&
>                   (headroom ||
> -                  ((end - size) >> PAGE_SHIFT) > mod[j].mod_start) )
> +                  ((end - size) >> PAGE_SHIFT) > mfn_x(boot_mod[j].mfn)) )
>              {
>                  move_memory(end - size + headroom,
> -                            (uint64_t)mod[j].mod_start << PAGE_SHIFT,
> -                            mod[j].mod_end);
> -                mod[j].mod_start = (end - size) >> PAGE_SHIFT;
> -                mod[j].mod_end += headroom;
> -                mod[j].reserved = 1;
> +                            (uint64_t)boot_mod[j].start,

Another case where you no longer need a cast afaict.

> @@ -1492,13 +1520,14 @@ void __init noreturn __start_xen(unsigned long mbi_p)
>  #endif
>      }
>  
> -    if ( boot_info->mods[0].arch->headroom && !mod->reserved )
> +    if ( boot_info->mods[0].arch->headroom &&
> +         !(boot_info->mods[0].arch->flags & BOOTMOD_FLAG_X86_RELOCATED) )
>          panic("Not enough memory to relocate the dom0 kernel image\n");
>      for ( i = 0; i < boot_info->nr_mods; ++i )
>      {
> -        uint64_t s = (uint64_t)mod[i].mod_start << PAGE_SHIFT;
> +        uint64_t s = (uint64_t)boot_info->mods[i].start;

Yet one more.

> --- a/xen/include/xen/bootinfo.h
> +++ b/xen/include/xen/bootinfo.h
> @@ -2,23 +2,50 @@
>  #define __XEN_BOOTINFO_H__
>  
>  #include <xen/types.h>
> +#include <xen/compiler.h>
> +#include <xen/mm-frame.h>
>  
>  #ifdef CONFIG_X86
>  #include <asm/bootinfo.h>
>  #else
>      struct arch_bootmodule { };
> +    struct arch_boot_info { };
>  #endif
>  
> +/* Boot module binary type / purpose */
> +#define BOOTMOD_UNKNOWN     0
> +#define BOOTMOD_XEN         1
> +#define BOOTMOD_FDT         2
> +#define BOOTMOD_KERNEL      3
> +#define BOOTMOD_RAMDISK     4
> +#define BOOTMOD_XSM         5
> +#define BOOTMOD_UCODE       6
> +#define BOOTMOD_GUEST_DTB   7

Not all of the constants are used here (and I don't mean Arm-only ones), so
I wonder how they're reliably assigned. Without assignment ahead of use
(via e.g. bootmodule_next()) it's not entirely clear what the purpose is.

> +typedef unsigned int bootmod_type_t;
> +
> +#define BOOTMOD_STRING_MAX_LEN 1024

Is there any chance of getting away with a hard-coded upper bound? You have
...

> +struct boot_string {
> +    char bytes[BOOTMOD_STRING_MAX_LEN];
> +    size_t len;

... a size field, after all.

> +};
> +
>  struct boot_module {
> +    bootmod_type_t bootmod_type;
>      paddr_t start;
> +    mfn_t mfn;
>      size_t size;
>  
>      struct arch_bootmodule *arch;
> +    struct boot_string string;
>  };
>  
>  struct boot_info {
> +    char *cmdline;
> +
>      unsigned int nr_mods;
>      struct boot_module *mods;
> +
> +    struct arch_boot_info *arch;

Along the lines of the question on the earlier patch: Why a pointer?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 15:19:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 15:19:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604881.942414 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicVf-0001UF-3d; Tue, 19 Sep 2023 15:19:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604881.942414; Tue, 19 Sep 2023 15:19:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicVf-0001U8-13; Tue, 19 Sep 2023 15:19:31 +0000
Received: by outflank-mailman (input) for mailman id 604881;
 Tue, 19 Sep 2023 15:19:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qicVd-0001U0-MP
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 15:19:29 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on060d.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::60d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ec22995a-56ff-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 17:19:27 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM0PR04MB7107.eurprd04.prod.outlook.com (2603:10a6:208:1a0::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 15:19:25 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 15:19:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ec22995a-56ff-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ldYhESAKjYrdcnx1PYmRMyhCULJ4CR6uQfYrrStopVlIS1qcepBOEOakE3vBgadGfKIZIsLQgEjdXz/K9/9XV88g/xebbUc7rf3ecZNBOQ0T0Ch41mBy614tqkzUjQy70/scpg42vCMxLOBT+7IZFAK3guxz39kWx5tcmsQklKLkFP1dMX3Z/pmXQ0YxHcmnEn62ycfj2ayqlslEkyIDDyM/0aMAtBbnx3bb8EUUQusVJFkK/F09eGs8SWiffIQSzh1sjiM5KdmGWF9sltWniMt6z3iBbtAvSZYMYRukpnh1NOX5aD0r7yOz/H4mnZ+kUlLks9RYoQac/G2N7RbEWA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cwQ/77f2HwI4YE4l1+opbRe7CbBa5Kl5pUJ+LjrDpJU=;
 b=idjYwJnXexaucMnWcYvpIcAzyBHL4795J5E3XAx5OMiIHk3BRy4zeyG3zwYGQV4eukEFFwXxnzkc/ImnT6PPr57DN5Podw9jqBpuFAPkMaN6onPg530kqWaI4jv/h4qFenbu/B9AgFnz9obffpN24r33U0vi3kTd1W82krqZM9FC/gE+ucsLsQ92YQHCaJ5olarGw8aqC5+NwmB1nSqpvrkeA5Zi3kcJTHsjJ1OBYq6fWx778LwS9kk8JCM2sSaYhXdDBDKlc9kBPSX7u8Uurw1VIePme25/jJGY40YjfbuQSXnDy1aga1qF0dX54E7z/vSaFLSJZ4WZ+rM1KwTGlA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cwQ/77f2HwI4YE4l1+opbRe7CbBa5Kl5pUJ+LjrDpJU=;
 b=uytHEmDHxH0vXZ3jwPslMXcKlkbhnGFMR9tQyhof/g3Eet0VFKyAMxsbxZFtOsEiBf7i03sRUV9CYYCE92DUDd+tA/uP1m7VLxqXONv5+Ej/AV3LkKDqxxAq2pASKvAG6w6c9wGn5Tr9SemiRPmp+4QaPK7m7BBzb7MtWY0bSYSHkfIFXBohtzmZM/ep9617DFR7iMwTZKWFIG5oG99HGj5kpfQeSSt7xz69C22Mi/jUj1Q+FEEZ61viHW3vge+3WnHDcnA2jgz05OJBwYv1YbViRPzhB9k1h97hl1TNlamZDuCQmHG4Ohx3Fun2qwn9ofGPtEcRfsItnjN+ZoHlyA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a4d85b38-5dcc-891d-27d3-24ae3dd5e533@suse.com>
Date: Tue, 19 Sep 2023 17:19:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2] x86/entry: Partially revert IST-exit checks
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230919150108.1233582-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230919150108.1233582-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0163.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:99::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM0PR04MB7107:EE_
X-MS-Office365-Filtering-Correlation-Id: a44803ab-1d50-4965-b392-08dbb923cf37
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	w+k5CLPH8ry4lM6bcyVeZLqJyWrkfAALQE2r2905Vl/8B6DvdBVKm5sQopFaNvQe2duLp7f5RY1NfAO1DdZ31T0R3XLdIt7GtDiYkmD286pbDesYagkOntWIvMGh07Xr8IDW09mVK2DGPJFzIhEwkFRSMwScN1k1Qd4zPoiDdRORC/cIUN+B7VKoc1UTPkl21Mqd+afOOuLE+WGFpOrmPlPguupU1yeuIfMtnkubl24vHS2m89O4X/5mSzcC+DtiIr/7HTVwG+g1ojIqG+uLVE1ymNFdPF31hoPAn9NsZy0QrxscBwpdMYxR6VisIDBGqL2EKqfJRagJlyTzrSN+Qr4BwklUKlvkcy9Y2jIPz+Fvg6l94WlEcim7CnZ5Fk/h2R8SBcAkMcg3/kY+U6qWABSTBBZ/ohHXJQ5TfqjgpOt6BRAo/vzzXCHFbdZ0HJLK9rNfEw+0q4mGeC8At/EufrPAqdwFR3Sc4E7HCxDka9D8aJkESyGl8gAf/1y69lulDUU1qR8m0vDwFp5w8xdhwso2y/inyY1XCHVV43NtyYyGSWqJdxztKBORc2W99/7FitfM/iQJ6m4DCLE3HMsnBOh6Q3DW9WQx9XPzquKEMB4VWNwjRF1avHbK7c5l3cTem8pwo6nmnedtBR+NPJKRlA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(136003)(39860400002)(346002)(376002)(396003)(1800799009)(451199024)(186009)(5660300002)(41300700001)(8936002)(8676002)(4326008)(66946007)(54906003)(66476007)(66556008)(6916009)(31686004)(316002)(38100700002)(2906002)(31696002)(966005)(478600001)(26005)(53546011)(6486002)(6506007)(2616005)(86362001)(6512007)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RGxLamtMNE84b0dDL3grbzNKbUhLTUFZRjFVSmZpR25CZTJ4c21ockdtRGRE?=
 =?utf-8?B?dkdPd2NlTVIxR0FqQ2I2MDVLbWFxTFdiL0VPV1U2VEN1Mm9VekluOTlKYUlW?=
 =?utf-8?B?QkFxMm0rTUMrMXFKVWNsM0Evek5xSkVkTWJVWFduVGRoZ3IzbmZNdzFLNms5?=
 =?utf-8?B?dk5aeFFwSi9kWlRUT2Y0K1M3SnZ4c0hyRjF3d2hPN0QxNEl2WVB1cXhwTDRo?=
 =?utf-8?B?YW91dC8zbVJvNDJ1WjZldDh5MHVNNGg3dHE2RDEzY1lJVEpJVG5HRkw4NldC?=
 =?utf-8?B?WjM4ZEd0YXRuRFgwN0ErUW5OMUtMMlF4Y1poQ3Fnb0RicjcvZWhScWR6aFRQ?=
 =?utf-8?B?R0dnZUxmUTNrSDgvUWs2V1kreC9SbUR4bHY1VCtMeGU5dkJyb0NhVlFYeVR4?=
 =?utf-8?B?WHVhMkVLZHhmYUNxWXRkZzdwa3ovVTRmTnZhamd2ek9jREdNcEw2SjBBMzlM?=
 =?utf-8?B?TG1STm5MeStnTGdGMmx0ZDQ0RG5ndkc5N0lDN3NkMzR3bUcwRW81ajFGcklO?=
 =?utf-8?B?Qm5pZ0lBOWNEaDNxMGprYXd3TmdkekJZUC90dm1hVFd6NmpEWU1lc3JkNVBT?=
 =?utf-8?B?S1UvaEhUZkZ1OXhIdWw0NEsrY0FtNXU1OEZIZVRVTmMyY2p2bldTMUE2akha?=
 =?utf-8?B?WkRxQjNBT0tUbTJEd2pTYTVPa1E0ZHJSRmVWbWlXV0hmS1UzZjlvUTFVcDdY?=
 =?utf-8?B?OWEwSTQ4dDVTTkZ3VnFGc05oRkd4Z0J0QndKaUxJL25vNEN4L0dnMW5BU1dM?=
 =?utf-8?B?a0s2M2VnUXhJVUhHSzRLL0VDTDdBWjJQV1dOeFUwVitxa3FRSjM4eFAvbEpa?=
 =?utf-8?B?ZjdSSU91c3BERmNwZE0rQUdXUnRlMDBLZHNPc1JyMTI2SEl5WjgvcS9jbkRs?=
 =?utf-8?B?NWJhbndaT0dNdExwNkFpU0g2aE5SQlg2cXBMbmRnYXBvSUprZFRRNkJtd0Ft?=
 =?utf-8?B?M2VUWDE4ZXFWaDZpczM1UDNsVTdqaTdvZExWQ1B2U3g5M1BvUU5mQU1POHRI?=
 =?utf-8?B?NlBoSkxDZVRRSVY3RkhkMUdxR2poRGpxalQ3Smw2UDV3RVBNUWdSSEdEUG1j?=
 =?utf-8?B?UWtJZ2xaVWFpNWxBb0orUTV4cGpacVlqM2VsUlRYUENXMXkxbXZEMEhOQ3R1?=
 =?utf-8?B?bVp3cnowcytqQThEOVhGUFpqb0lmUjlxOHh1Zk1zSFA2Q1l6ZFcyZVVqVnEw?=
 =?utf-8?B?N2kwaGE1OEFPUmtsTkdsY3BrZXNyNUVBRmFDVGp2YVg4cDkxaUt0RjI5SkVm?=
 =?utf-8?B?MUpCa3BpZUtkUEJZcUg0NExNY2g4NTRmMEluSnZDMU84SWVoajlNTk5tM2lo?=
 =?utf-8?B?ZjBqRkN2bFVKNExKVHZVT01BamdiU2FJVU9QdlNMcGNOTkNSM3JmRkEybm9k?=
 =?utf-8?B?YmxORWJRREUybXJhUitZL21RNmo1MW1pUEJ4SGR3U3lRYWZZZEduZU1NVHly?=
 =?utf-8?B?SkY1VkVIYnFzYXI4SDlJYUxFNFlOVFZKV2xBSkdPZytnTmNOK2lPSTJiOUJF?=
 =?utf-8?B?ZjdlUUx0VnErbjZoczR4R3loSDJhRSt0ajg0cjdqMVVnNnNiY3QwTjcrU0tt?=
 =?utf-8?B?Sk52SnMyT3lrTWRxemRvaHg4ajUzVS9ZejFpTEZxc1pSdXc2eXBqeVgxVm5j?=
 =?utf-8?B?SWxMNkZpWTBKTXpLbEc0VzN0ZGM5MlFab242bmJBWHdjS1hxRml0bTZLSHhq?=
 =?utf-8?B?WTI0U29haCtubW1wNmxoRUdXbEkzdVpzbjBwQStPSExzN2VUcldpWnZkWlpP?=
 =?utf-8?B?MEF0aFVkc0syNUtDcWJQSENOcGpFYTQ4VHFKSEtxakU4Y0xuemlMRzNXeG9O?=
 =?utf-8?B?d1FmOXBLV1Q5V1RoRmNiTDZERm54bnNUa1BLTzNwMXFnc2V3bmdOTXRvTWM0?=
 =?utf-8?B?TUtoOGJNcUppME5wUnBRanRtNkRobXZHaFd1cUpiRDJ3eWFTZE1MRW0waExp?=
 =?utf-8?B?bUhiU3laTGp2RkcrMWxibnQxVjB6Ly9kUkMvMVpMRUJTK0Q5MmpPZHk1TGQ2?=
 =?utf-8?B?aExSL3RIY0sraFNzcU9NczhBVG9vSjRPdGJzeTRQOHkzSE1JWmRueDZhQkV3?=
 =?utf-8?B?VWk3NWRLMDhLRmRxckMxMURZVnd3dEtaY2dUM2JCQm5KNkhOekRRNGFaZkhs?=
 =?utf-8?Q?W5znu1tSRzm7vYPZlZ9LRuOgJ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a44803ab-1d50-4965-b392-08dbb923cf37
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 15:19:25.5591
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: uK72I1rlaE59Izo9e5hN2/fHdPWcaxX6/+SzEX7FInbBB/yLE0cwz9bh+MpNZipOLzCQ91hm9W2zfrP76kR2NQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB7107

On 19.09.2023 17:01, Andrew Cooper wrote:
> The patch adding check_ist_exit() neglected to consider reset_stack_and_jump()
> leaving C and entering one of the Xen exit paths.  The value in %r12 is stale,
> and depending on compiler decisions may not be 0.

And it may also not be zero that we would be looking for. I think this
wants expressing differently. The value in %r12 simply doesn't survive,
and this has at best little to do with compiler decisions.

> This shows up in Gitlab CI for the Clang build:
> 
>   https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/5112783827
> 
> and in OSSTest for GCC 8:
> 
>   http://logs.test-lab.xenproject.org/osstest/logs/183045/test-amd64-amd64-xl-qemuu-debianhvm-amd64/serial-pinot0.log
> 
> There's no straightforward way to reconstruct the IST-exit-ness on the
> exit-to-guest path after a context switch.  For now, we only need IST-exit on
> the return-to-Xen path.
> 
> Fixes: 21bdc25b05a0 ("x86/entry: Track the IST-ness of an entry for the exit paths")
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Code change itself:
Reviewed-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 15:19:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 15:19:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604882.942425 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicVw-0001rw-AX; Tue, 19 Sep 2023 15:19:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604882.942425; Tue, 19 Sep 2023 15:19:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicVw-0001rn-7y; Tue, 19 Sep 2023 15:19:48 +0000
Received: by outflank-mailman (input) for mailman id 604882;
 Tue, 19 Sep 2023 15:19:47 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qicVv-0001rF-3y
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 15:19:47 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qicVu-0006YU-HW; Tue, 19 Sep 2023 15:19:46 +0000
Received: from [15.248.3.4] (helo=[10.24.67.44])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qicVu-0001N3-8D; Tue, 19 Sep 2023 15:19:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=Z2lx6ONGQm2uS+X+WAnyQzXiR1Ccu298NDollx8pxf8=; b=7FoawOrRFvbCQahLmkk+V1sulj
	UY0UOhLRmefImiMA9gH+vh1IOMiRTsXxtNICcVEUhlZjqGWkyZR0PXNqNceqk1J1Jd71GgSXN75SV
	4l+I+le5j6N1n0ZV0ToMWwXpxe8XdBEdibvd4hFtsHWYC34rNF62RtFtG3Sren9CunxQ=;
Message-ID: <597db9f5-b959-4b75-9410-0d0c16e3acda@xen.org>
Date: Tue, 19 Sep 2023 16:19:44 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v1 2/3] ARM: GICv3 ITS: do not invalidate memory while
 sending a command
Content-Language: en-GB
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Stewart Hildebrand <stewart.hildebrand@amd.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
 <20230919112827.1001484-3-volodymyr_babchuk@epam.com>
 <1614d73f-72b0-44f2-8e34-0e6c58a1a375@xen.org> <87fs3afcxb.fsf@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <87fs3afcxb.fsf@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 19/09/2023 15:36, Volodymyr Babchuk wrote:
> Julien Grall <julien@xen.org> writes:
>> On 19/09/2023 12:28, Volodymyr Babchuk wrote:
>>> There is no need to invalidate cache entry because we just wrote into a
>>> memory region. Writing itself guarantees that cache entry is valid.
>>
>> The goal of invalidate is to remove the line from the cache. So I
>> don't quite understand the reasoning here.
>>
> 
> Well, I may be wrong, but what is the goal in removing line from the
> cache? As I see this, we want to be sure that ITS sees data written in
> the memory, so we should flush a cache line. But why do we need to
> remove it from CPU's cache?

I don't exactly know. From a brief look I agree with you. However, our 
driver is based on Linux where the clean & invalidate is also used. So I 
am a little be cautious to remove it.

The way forward would be to ask the Marc Zyngier (GICv3 maintainer) why 
it was added in Linux. Then we can decide whether this can be removed in 
Xen.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 15:29:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 15:29:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604896.942435 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicfA-0005pi-9y; Tue, 19 Sep 2023 15:29:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604896.942435; Tue, 19 Sep 2023 15:29:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicfA-0005p5-73; Tue, 19 Sep 2023 15:29:20 +0000
Received: by outflank-mailman (input) for mailman id 604896;
 Tue, 19 Sep 2023 15:29:18 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qicf8-0005oC-41
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 15:29:18 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20608.outbound.protection.outlook.com
 [2a01:111:f400:fe13::608])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4ad8b772-5701-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 17:29:16 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7936.eurprd04.prod.outlook.com (2603:10a6:102:c6::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 15:29:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 15:29:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4ad8b772-5701-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VnDLBX7YDODactbo18wHMCqveD7r7E9XhJhZ8Ug6t8pUVhYIPn5eS/QKynoYusVjkoCl1Ey3N+9KsuVNnGpeCgxk4+eh54hWu3QeBFBl/hyPZ36Xb5S3Sepmtpl6dEVJSD9xiBPrzuIg93570Jnwl84jRyQdaBhKZWBI7QpLYTyQDNjfacn3PLwxpf6iydJaDGcXEqqa2x69cRekbcEPgpJ97ov3vQsxlxFy8KFV+4tnGRTNj3Ec0yIFEcOIW1HO6cZTCAVoGaSRUG79IvXM3zInoRJgL72m8C/p+esiO27VQGvkWHwf4cVtskarrWfbjwaOocCULY5Kj3JcVftnSA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dMqZy+T5qTOGeRKLRLiMg+Wra17qmp3hrEr0XqpH/Bo=;
 b=l5+NtD7miNV71HXpJdQcf3qXitUHioh+1/HqPBh1vq0PW/wd50esb1bTcDGfSxAAuEgaRXeF79hXE9WMHtvxGk4ghS7eC1TqJyTzcoCfrqEMVWPur9eLulaKXBOpI/n8N0zeG57SuZLtTjAtxwT25U1UBv9P9UPI5D7w6j97/EdrNWr3+7NNRJOkz8+Xmudyvatrk+HGrKfqy27h0TaQ83OYrF44eb+VnyonuvbAMPVkq4o7Vc5uVS2RXBg4XVsjQcRFXGiNlVe5sPTCl7cuv4PKyIvRmC+0chchn/5KVMbFEHaDRh8Gb+8+uzueuj5yKP23ZixlPTzrTzHUpCZ/lw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dMqZy+T5qTOGeRKLRLiMg+Wra17qmp3hrEr0XqpH/Bo=;
 b=XqTWoFwM3CWo0cr57TDZ7TbeTYIVJTvo3SAon9QaKmIk41tf6X0l3UifQH49bVcEc7sdLctJifTbepIkzZ5Inr0a1Ztk1hQnrlMcDWRScW4ws2Pd7VbyvpROJKvNp+z+ZA8H1c00TyQV+t/fkETcd4UwruIRuIpDZFPRtOw7xorVjG+kCy+C/NsQ4EzTuB2mmfNQDsSRUUjeG2shrDnpD9iNfRTCY1gMuYkXLjfnKxsUhjs35mkDASQXRCFdDUPRXnpGVriMZz5ocUwQ6WJtJq9lineLF1dotSthoo87WGh04O1brr+Cwpr6epUGrG+Ro+tSK+Cluvv+pESyUd1hAg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <86c67d27-865f-3abe-7b04-4c0eeffe2eaf@suse.com>
Date: Tue, 19 Sep 2023 17:29:10 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 00/10] v3: Boot modules for Hyperlaunch
Content-Language: en-US
To: Christopher Clark <christopher.w.clark@gmail.com>
Cc: Daniel Smith <dpsmith@apertussolutions.com>, stefano.stabellini@amd.com,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Luca Fancellu <luca.fancellu@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Rich Persaud <persaur@gmail.com>, xen-devel@lists.xenproject.org
References: <20230701071835.41599-1-christopher.w.clark@gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230701071835.41599-1-christopher.w.clark@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0183.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9f::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB7936:EE_
X-MS-Office365-Filtering-Correlation-Id: 82f3f95f-ab96-4c24-b214-08dbb9252d97
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TarQ+1qhtYUAvQ+7s6vUsx8tk8yVTJa2kq7vwY1i2xmu9phKXXm9XIrRNsOF/xhzRTjseRgac6o17Vb3mUCH0NB9XoI+LHplLeijzaFUcugy+PgBtrGsxjpTEaOuR5PgL/UPgfjj5yxbnpJCsL6V8RLHWFe6sLD3e4GZZqNlW3RRO2RuWzyrzrmIJEKZVmrXV090m0l2lxmGLHdIlWdOGTR6DgZjXTbRawT2cvlTZUuDOcaBYdALBTnpNclOKQiN/gph3jX7Q7CQ5y8MFXa9iYGbPCow3okddaw8CCKrE907t85QjIK5mmiSX48iIae8Dk3saw+bH38wSz970urXIteRcv58igZzhgxlVCtSLWkPqDExXBw+I3YPpi5Ghg44q8YXY+J5S+bdq9Xv3XCQSdDyF8bPj36cCP4eYOMbA2Zcyf8ikBEJdYcFpAMcJ3uPnIwwNbMPQjddvlrUd/3BvGva3TjQVgkoW3gqF17kHgwCpwqM1kd8vdWspVQSOOs4/XKTQCegvzzm++zLwi2wPE1FiOMrchwlsWBVMYGo1vk4I1NR7+zbWx2sAeUWEgYHqNNoaFTlemEIzsSe49u2BpLswPEE+lFgfaH2mYtaFZ5QOERKjpzElUffUrhkL+ziSAclBoQMSWwQ5+8TAz4RZQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(366004)(396003)(346002)(136003)(451199024)(186009)(1800799009)(26005)(2616005)(31686004)(83380400001)(6916009)(54906003)(5660300002)(316002)(66556008)(66476007)(31696002)(66946007)(8936002)(7416002)(8676002)(41300700001)(2906002)(4326008)(86362001)(38100700002)(478600001)(966005)(36756003)(6506007)(6486002)(6512007)(53546011)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MWRSK0o4ZWxwdjlnVnF1Z2Y5NnM2bi84OGFjUjk4OG1KK0MzeHA1RDU3MUNF?=
 =?utf-8?B?bEp1R1UwMjZRM0RyWFJVMkJsMzkwUWNRNk16WW5RLzVvUGJ6ZENTLzBJNWp2?=
 =?utf-8?B?a3dNbTJCaTZTd1F0aUFma05xd0VyR21HNWk0T1N3WGg3QkZIcmZ4ME5qZThN?=
 =?utf-8?B?cDJWYnRzMWlnODJ6RHJsMlBCUDFDcGZESXBjNTl4WmxJTnNOWm5KbE43c1F5?=
 =?utf-8?B?ZndjK2h5MEo5eDRVejdkRGlFREhub2RFaEJKMDg2cGRWNXZ1RDFWV3IrMXNp?=
 =?utf-8?B?RTN1SzdTdml1TzhkNi8rTmlROVZ4bnIrMGVMOExDRjZnWkZ3aExYcGdkVUZY?=
 =?utf-8?B?cGFXanBvQlYrQ25UOEdoTDExR0NoY2dmbXBpYlRGN2ZxTkV6VDJTVk5XbVRU?=
 =?utf-8?B?d0tLcmZudTNHd0kzZWtQQWVRT3VsNXBMalAxUW5oL1AyUGdSRnM3QlBxQmRx?=
 =?utf-8?B?NmMvc04wa1doNGRYOEdnaUdiTURZWlZpK1I1MldpY053SkdHZWhveHdzSmtn?=
 =?utf-8?B?M24vUVBPVnp3bzdsSHZMKzNlOUE2R2RWZDFFdk1BUXBTZFhPOC9IczJBRDNs?=
 =?utf-8?B?a0J2NEIrYnl1dzQ2cHJNRTNocE5FcWZEcU4zRFBRczZVdGtsVHFtM09laito?=
 =?utf-8?B?dHFtYWNQbURVVVQxeUJwTWgyUzFwdktELzFpZitrSVZRMnVlK3pyWlJ3aUds?=
 =?utf-8?B?MDBWTkN0K1Ixci9RNmtKYVVvTUVEdW12YzVGKzhPWWFwM2FmRWw5QzAvQ3Mv?=
 =?utf-8?B?SFFnN1Y5VGJBZFRScGIrSU5UOFRRR1V3dGE1RE5ScUVsV0htT05TZi9ETS9n?=
 =?utf-8?B?M2JWbzRNUTgxc3d6RVhHMXVFQmZ6SE43VjB3cWVJekV3UmlqMUVENDlCUiti?=
 =?utf-8?B?dGVxTUVEYjM4UHZPTTlYaytsZWwxUjUwajRKaGdsakE1cHUzUm42d0k2eGZB?=
 =?utf-8?B?SGovNTlvNmxCQ3l1VFlyb083cVZmSnBmQm4rbDlwb3lBcWdJL0xLblBuSzEy?=
 =?utf-8?B?cTB2N25aejBzZnExNlMwYmtrQnI2eTNyZUtNeDMyVy91VC84UE9NSCsyWWh1?=
 =?utf-8?B?TG5FT2J5Z29iUWRhNTFjbkVGeVc5Yng3TERTMHJwY1dCb3JDYWNxM1pwbFRq?=
 =?utf-8?B?dnBKK0ZTSnI4K2xWTXRUMGNJblBtSkE4TnZPN1MrVUNPU1hlczJkcmptRms4?=
 =?utf-8?B?WGYvWXNkOHlsZjFXY0htN0NhQmF5WnZwK2V4RS93UzJjeHVCWmYyeXRhY0dn?=
 =?utf-8?B?OEUzL011Y1IxU1dTOXVRejNTV0Vzcmpvc21IZzBWWG5HVTFUS2RrZHF2N29s?=
 =?utf-8?B?c2JxU05kYXZhSFBpeS9qQ25QVmZkWXpyRkFYazI3bG8wT295SFVuMjF3aWk2?=
 =?utf-8?B?czA3YUMvWW9CMDkzdkxXQ09zNGhQTE1hNFJhRDZUQlpCd0dHNEFyMGxuSGdU?=
 =?utf-8?B?a3JBUWhqb21GWVFoOUhRZmo5eDJhZmtSaHlMTXRsZktrNFFLNEt1L2tScEpU?=
 =?utf-8?B?d0FlSVBmOWRkTWlRaWl3ZmxOeUVLSUQxZHg4Zkw4M0cyT2NZdkgyUXV4NEth?=
 =?utf-8?B?RFlwOEhZMXg0VW1KZy84S0Vqa1BhSW9Ta25GTXNBUlpzYjl4L2Z6SDZQNW8w?=
 =?utf-8?B?N0hJWXlzVGpHSzVKN3IxSWdWdGhHdVpDL2NNa0d4NDc3OEhIRHdlTlNTckJj?=
 =?utf-8?B?bThHb3RIU1c0YS8wbVk3R200bHNtZGcxZ1hGYUE1bWdJaGtPRkFsTnZKRDBr?=
 =?utf-8?B?bjBQUTBEMlhTMzczN1AxNG1HWlpRZDI2MFF6SHFzeEtWM3l6Nmk5S1YwZ0hw?=
 =?utf-8?B?OStycmlEaGFUN29sM3h5YnNURFRsUTk1a1BwNmlqeXNDOEdjK2VJaVlXbCsy?=
 =?utf-8?B?M1llTW1JMGZ2UFMzUFJBVGk4dmlHUlE5Y002SDhhQ3p0ZjVJTldUN3F0OGxi?=
 =?utf-8?B?Sy92Zlk0WVhWRVFvWFc0N1ZCcXNDaGt6R2ZkSmdNNUJxM3RTTEpya1c4SHVz?=
 =?utf-8?B?VG56Qys1S3pUMWNaTUQ1S0RydkRPTyt6SDh3eFZGdFdlMXJCVzcyK0Z3NTBx?=
 =?utf-8?B?SU55QVpjYzRoRlBRWnNQRzRVcDlyRE9La1VVQXJmZUJkZ1AzZ3g1aXVTSC9V?=
 =?utf-8?Q?LN6BchYR6Yv1VOM5g4ju+SNkz?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 82f3f95f-ab96-4c24-b214-08dbb9252d97
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 15:29:13.3933
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: LgxwDatg0kVmml94V0/fAoWH6ZpxL+K+l7lYdA6/iLm7/jy+cy/ozKamQBo4YFkLINm0Opnnx4hFJWa5juMMtg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7936

On 01.07.2023 09:18, Christopher Clark wrote:
> This is a v3 series of work for Hyperlaunch for the Xen hypervisor,
> an update to v2 and implementing a subset of the v1 series and functionality,
> with changes made to address the community feedback provided on the patches.
> Changes since the earlier versions of the series are described below.
> 
> The patches in this series are primarily derived from patches 2-4 of the
> v1 full series, in a series of smaller patches for ease of review.
> 
> Thanks to AMD for supporting this work.
> 
> Documentation on Hyperlaunch:
> https://wiki.xenproject.org/wiki/Hyperlaunch
> 
> v1 Hyperlaunch patch series:
> https://lists.xenproject.org/archives/html/xen-devel/2022-07/msg00345.html
> 
> thanks
> 
> Christopher
> 
> Changes since v2:
> - combined v2 patches 7 and 8 for common review
> - rebased the v2 series onto the current tip of staging (sorry)
> - fixed the placement of the patch changelogs
> - provided the changes description in the cover letter
> 
> Changes since v1:
> - the v2 and v3 series implement functionality from v1 patches 2-4
>     - v2 series objective is to enable efficient patch review in support
>       of merging the functionality into the hypervisor. It implements a
>       subset of the v1 series, incorporating changes from community
>       feedback.
> - the bootstrap map is made accessible early in the v2 series via both
>   multiboot and boot module arguments until later in the series where
>   multiboot use is retired. This allows for incremental conversion across
>   several patches from multiboot to boot modules.
> - the 32-bit x86 boot environment header is removed, and changes are
>   made to allow the new common bootinfo headers to be used instead.
> - Arm and RISC-V architecture bootinfo headers are added to ensure that
>   builds on those architectures can complete correctly.
> - The KConfig patch to set the maximum number of boot modules allowed
>   is not included in this series, replaced with a static maximum define.
> 
> Christopher Clark (10):
>   x86 setup: move x86 boot module counting into a new boot_info struct
>   x86 setup: per-arch bootmodule structure, headroom field
>   x86 setup: change bootstrap map to accept new boot module structures
>   x86 setup: porting dom0 construction logic to boot module structures
>   xsm: switch XSM init to boot info structures
>   x86 setup, microcode: switch to the new bootinfo structures

While up to here things are an integral part of your hyperlaunch work, ...

>   x86 boot: define paddr_t and add macros for typedefing struct pointers
>   x86, arm, riscv: add per-arch bootinfo headers
>   arm setup: use common integer-typed bootmod definition
>   x86 setup: refactor efi, pvh and multiboot entrypoints to new boot
>     info

... I'm getting the impression that the rest is unrelated tidying. I
wonder if we really want to take that churn right now; besides this
needlessly bloating the series and pulling away attention from the
functionally important parts, I could also see there being a need for
changes later in the course of your hyperlaunch work, which might then
have a knock-on effect on what's being carried through here to very
early boot code. Early boot code, tending to be fragile, would perhaps
best not be altered more than necessary. I wonder what the other x86
maintainers think ...

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 15:40:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 15:40:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604903.942445 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicpv-0001RU-BF; Tue, 19 Sep 2023 15:40:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604903.942445; Tue, 19 Sep 2023 15:40:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qicpv-0001RN-6l; Tue, 19 Sep 2023 15:40:27 +0000
Received: by outflank-mailman (input) for mailman id 604903;
 Tue, 19 Sep 2023 15:40:26 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ezs9=FD=citrix.com=prvs=619432e5c=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qicpu-0001RF-Fe
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 15:40:26 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d6e085ba-5702-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 17:40:22 +0200 (CEST)
Received: from mail-sn1nam02lp2045.outbound.protection.outlook.com (HELO
 NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.45])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 19 Sep 2023 11:40:18 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA0PR03MB5627.namprd03.prod.outlook.com (2603:10b6:806:b2::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 15:39:46 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 15:39:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d6e085ba-5702-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695138022;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=2IEwfVGPwRpi5Wtx749oUKufeQ52fjA0AN0cQCZknVg=;
  b=Cb9w10ooUTySBm+9ZS3p7NOi80V6dG0YDLw7ps88qTDflQEq9M+cLsR/
   jsjZ8/Xhtag8OI7A4TV/LS87xfpUiBAPExLFEh02Ow2DStH1f0IVoKmyh
   FN03pj/wbnITxZ2Y2RYCOaXH/BotzO4mIFmPivPKyekkaKGf+06ueF7iz
   0=;
X-CSE-ConnectionGUID: LykoRsIwRhCs2i4bH3BWKA==
X-CSE-MsgGUID: yPHodJk5Qu2RcphJ/gppGg==
X-IronPort-RemoteIP: 104.47.57.45
X-IronPort-MID: 123123137
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:UvY/uaqKMqAnclqfH0rqjbMyT9heBmKlZBIvgKrLsJaIsI4StFCzt
 garIBmDb62MZ2v2fI9+YNm//RkP6pOAyoRjQQc/pSgzRCgR9JuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GlwUmAWP6gR5wePzihNVvrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXABQcbRe5nMOp+rKQUbNt2s4Dd+PUH6pK7xmMzRmBZRonabbqZv2QoOR+hXI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeerbIe9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAtlLTubhraECbFu711QzDxE0VgaCvKODgVa+eZVQM
 1Q79X97xUQ13AnxJjXnZDWGp3qDsg8ZSsBnOeQw4wGQyYLZ+w+cQGMDS1ZpeNEg8cM7WzEu/
 luIhM/yQyxitqWPTnCQ/avSqim9UQAOMWIdbDUYCwsE59Xuqps6iB7nR9NvVqWyi7XdPjX9w
 CuDqiQksJwVgdQWzKWw/V3BgDWEq4DAS0g+4QC/dmCv4x59ZYWlT5e18lWd5vFFRK6GSnGRs
 X5CnNKRhMgMEJfLkiWOSecMGbiB5vCZPTmaillqd7Ei+iqs/Ti/fIlWyDB4OEptdM0DfFfBe
 EbOvStB6ZkVO2GlBZKbeKq0AsUuiLPmTNLsU6iOasIUOsQsMgia4CtpeEicmXj3l1Qhmr0+P
 pHddtuwCXEdCuJsyz/eq/oh7ILHDxsWnQv7La0XBTz+uVZCTBZ5kYs4DWY=
IronPort-HdrOrdr: A9a23:US0uYa22QpdQnXerH3d3fQqjBHYkLtp133Aq2lEZdPU0SKGlfq
 GV7ZEmPHrP4gr5N0tOpTntAse9qBDnhPxICOsqXYtKNTOO0AeVxelZhrcKqAeQeBEWmNQ96U
 9hGZIOcuEZDzJB/LvHCN/TKadd/DGFmprY+ts31x1WPGVXgzkL1XYANu6ceHcGIzVuNN4CO7
 e3wNFInDakcWR/VLXBOpFUN9KzweEijfjdEGc7OyI=
X-Talos-CUID: 9a23:W2TI+G7UKRkCcAvk3dss0F8XHfo+U2LnzFzLeU7kA0YyYoK2YArF
X-Talos-MUID: 9a23:PQ5a+wQKJ2JN/+uhRXT9vBFlOOVrvp2zUnoGiZUk/MacLQN/bmI=
X-IronPort-AV: E=Sophos;i="6.02,159,1688443200"; 
   d="scan'208";a="123123137"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=H0ax4oJOzkApGeoDH72PES74Q09DSsexBwuuMhjWecsBjmp9sS+2k84nZOkKTxpkyBDaCWLv9ZPK7D0PrIZkw1ojSzcLjSWZUO39Zo0ZRCUwbmFfda0mMTZA9K5WypDsbxh47mbQwfkLU8uaBLLklowdPSGAaekqBKhLyfEtTSs8K/3ckWTFBZBI14Pt9U5IjGM+3l0qGsumeN4wxNg8y1mTOLSVGxrlaTmxe4UxA04CZYpQCXM2APnLqR16j2ybt5WwsDNt04KBjaurb3JA0xeilY3+Sfil8udCjzfhfY0OWzXNszekLp58TIRDjkabo/2r2qkkZCgHiRObVaabVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gLTwhBtM3ragJDvcqylor7Np7othjzZhN5b1k6Xl3+k=;
 b=hdkVkPYxqYE55YMRRLKYiAbl5Vxap5rTALb55tTmCsswF23oiDHrXsDNeOiESIgeaaR+cvon/dzXJQBhisBPTSDhKJvb6QYsWCoo/XvdmpHEkcfG6xAIhS5shyfJYYD4HQ7gVfOKatYL1pnbuD3raQGnsU/hBwpkgGY6lyp24ewcN222hxMRKI2wswDJ9yZbkj6MiG5MH87TpNRi1dOruX4/oNaukvTm6W++q170ecLfg7ghlVQRpBEHx1VOyE/3oAKhJ4zjoJaSdMpOKipDyalsTE1aHdvdZueHQQ0l9jaSwoGDw1Zf5x4qfstK+oXAliNpQ/KgPuKiESI9jbBJ6Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gLTwhBtM3ragJDvcqylor7Np7othjzZhN5b1k6Xl3+k=;
 b=pb4k1L07tK+w2U3d8nfPJuXfLFW+hSK4wBj5H1Y7BWSLqyGIcQkWwZuxWbaMffHfj+jX2GXD3xQ4BUPrjBfXHTLWHZeDjj7OWcU8EMgZPAb0bBn9a+qhECBv3LSvUwH9NfMmfAaqSkG0b2HXrYhZqOYqEkYzqpiIYGT7QFUEBu8=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 19 Sep 2023 17:39:40 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>, Paul Durrant <paul@xen.org>
Subject: Re: [PATCH v9 02/16] vpci: use per-domain PCI lock to protect vpci
 structure
Message-ID: <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-3-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20230829231912.4091958-3-volodymyr_babchuk@epam.com>
X-ClientProxiedBy: LO0P265CA0015.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:355::6) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA0PR03MB5627:EE_
X-MS-Office365-Filtering-Correlation-Id: db1abd9b-0e35-4614-31fb-08dbb926a6ec
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oiqhb/nh35VfWknOVScV3TccIKv9nXI57QMUTkjf/8TQRxdxFYtvHb/kJP3yxZHltPQDIU6S9oQex8//JG2QshNxNH3MH3lKekW//f3hEmrxhWV38aT1o4S9uwxe0k2EUil5AFXf6wpj/bdxrWt/twWYA0IKiU6u0Jq9An8eQoY0/i9rsaoG0qzgmM0jnIj9lQnBb3nT3JlfWsxBIJeg3hKJ2H3ydSZVWKobQFoMU3JR7RRX4vKxLSZ9rNs68BwJsjzwoz8BWC0po3iV4fGc4qC7TzNxiIwhlO6bzziiCDyQk3LGM+oxafP/iqHffsa/kaxI5d1IUpd5xYsMtMJWuWAfzl6msx+H5NlCFizleN6NFnwA4bcCL5tWwK53c2GnqPRi0/SM6J+/9WZOkzY66cjlfMXl8OiC2YO0Abe+U+OCKuxB1ovaAAeVMh8ujtNqAilxxW9HJByfageUKfNvJLbJYyQTdkc/0B2IyZiPy7wSP4+dancNgiFiyxuaixFkWKO6u5RWXj7j2Q2BMFFpUm2hiO0x9zkmy4+NhBSQPf3ClEtqmYYOGBW3T3gvshkMpFAVNdOHJvU/Db2htNCtOE8oET1Pk0aVrTu8u9cZXPidr19A+y65Ey6eaTyzbwjp
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(346002)(366004)(136003)(376002)(39860400002)(396003)(1800799009)(186009)(451199024)(26005)(82960400001)(8676002)(8936002)(4326008)(7416002)(83380400001)(33716001)(30864003)(2906002)(85182001)(5660300002)(86362001)(6506007)(6486002)(478600001)(6666004)(6916009)(316002)(54906003)(9686003)(6512007)(66946007)(41300700001)(38100700002)(66476007)(66556008)(309714004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bjdoNElLbmxnSXZLSW9CVXpsZ2oyMjlTSWE3bUl2QXRqTzdYZUo2YUFSdzRQ?=
 =?utf-8?B?QkQ1V3c4K3B6V0dlMTZvMFVxUWxaZklNNG9YVGlVZjZRZTdwTys0U0Rtd2lm?=
 =?utf-8?B?cm9JZnhuN0o0emJ1K0RNZ0tyenhoSjBETmJUenlBM1pkb2ZvcGI3czdoWTlQ?=
 =?utf-8?B?VWRSaXkydWtNcFdnWXlGYnlqY1JHbkV5NWJGcmRtNU82bkNlSllCNTYxMkUv?=
 =?utf-8?B?SWxIMHovTE5KS2k4RVRZODh6VkdqRTE3aGFjdFhJSzF6ZlFqZXhOcVJWdlRM?=
 =?utf-8?B?dVB3Z1JFc1VCM3BFUVVoaDYveUlsVWNyTTU3SWZrUllqWGFpQytpMVBOWDln?=
 =?utf-8?B?RGdiVXM4cTFjTzc3dE5OOUFXZytnNTZSUGpteml3Ti9tSHJITDl0TWQ0VGto?=
 =?utf-8?B?VjVvR3ZnK2ZEZWc5eVhpV0YxS3FhTGl1WXZueVExRHhBV3REcFB4TjZybHdZ?=
 =?utf-8?B?UDV2WllPckVrUGNuVXJVdEhLK0R4U2lNY21jRmNoV0ZSS3ljZU0wTHFjeCtv?=
 =?utf-8?B?WDNPdEpSRHJIR2d0cnUxZW84djFLWmVQUXVydWlXRFIrcVA1RG9JKzMvb3NP?=
 =?utf-8?B?SWptMVUwVHp6aW8vTC9rdWVFVlIra3hKMDVRRnZlbFpvSVZxRXdpNll3TWxv?=
 =?utf-8?B?cU5ZTzlaR0tjNnkrRnRaa3F0S1dUZnRvSVFycS9qeWVqek9JbU40SmxwSFVG?=
 =?utf-8?B?cWZlamV1VitrYnNoelVXNVpXdnZscUVGU0FyMDQzY3g3azVaMlVscmQveFZZ?=
 =?utf-8?B?V01EYm92TStoNzNmYXYwVHZFYS9hNVpDRm0vYzRGZUZuYWxaNWNTMzJXVU94?=
 =?utf-8?B?Wm1PdzNJL3ZCbmVwcUMrYmlIVVVEaUIvS2swaFQxcWdYajh2MGdjZWtmVUxP?=
 =?utf-8?B?SlNvY3VVTnl2K2h4TEg5T3lpVE9JRHY2R0xOQlFSTmhiQW04VWIyZDBTM3RB?=
 =?utf-8?B?RmlTSEt5dE8yb0xSQkFvWDA3L24wQkRkMXhXYWFiMGxqZFJBNXcvVmJaNHlB?=
 =?utf-8?B?a3ZTRU1mU242cGEvalRIR2FuMGQ0M2NrNW1kd0NQK2ZuYk1RVVhoc3dXY0ZZ?=
 =?utf-8?B?Q04zWFkycjhRRlRrZkRsa3NUdjZvMzBzVW4xcUNSc0VtckY0b3I2Z1l0d09m?=
 =?utf-8?B?UXlKNGFCbXV0eEt1REZOYm5Ob3hpZjlxeFg2ajhaVXdhb0dtVEo0ZWZUeDNE?=
 =?utf-8?B?UXlUVTVibFRjYW9Xb1BjUElBT0ROYzRramRtYzVKRkdHY0FMVi9NdkQrODk2?=
 =?utf-8?B?cklEYVNrQzN6RlliMzc3UERxUkxZOEh3OC8wUm1nblNtTkVpQ1NMVkFMa0VG?=
 =?utf-8?B?VDB1N0MxQk9PTVZnak41WTQ1OVYyR01OckRMMnd1VE5iRjFGbThrOE5Ib3Zv?=
 =?utf-8?B?RzhZODhTdlM4Wmpwb3E3emlLMi9BOHhhdi9PTTg3dUxDWEtUWFZLK3BMdmF3?=
 =?utf-8?B?OS84TWkrS0pwdENyeWdIUit2dkpLMENYbjhMNUNaM1dKRHJPKzE2cVBkbGdr?=
 =?utf-8?B?a0thaHFteVM3dE1tTXdLTFBsTjUyYW5SOERGaUlsTlhaK0JLeFJjV0dwamdp?=
 =?utf-8?B?Yk5tejBpaGJhc1QzS2lDTnhZY3dkQ09Cc3R3akRRa3VnUUQ0d05ZNUpaeFBp?=
 =?utf-8?B?SWw1NlltYzNqajFJdkJmN0wyWDROSFdmaG1pdjJFamRvUHBubEhMMkNteDNR?=
 =?utf-8?B?YThJN0lQLzM5blFqUEZuVVZzOGlwSUNmZjNFREtEZGI3dDZBYjlzTzhJbzg2?=
 =?utf-8?B?TEpLdWVXQkZnU1FEalo3bk5HWnZkOXZyVkNuWXpPd0RSbjVUZGdabUludXM0?=
 =?utf-8?B?VVNXU2IvT09UcFpBM0t4dDB5L2ZSVjhyNGVpRGcwdTRwWUU4MmtmOVF1Ynoz?=
 =?utf-8?B?cXA2TVJyMHMrbzhyYUNEMlROWUU1c0xMY1YyM2tpclRoOG9xRVZLcXd1ejI5?=
 =?utf-8?B?Y253dXpGbEtMb2ZCK29lWUZ5NW1pdDdyVVBhYktLNDFYUzhNVHN2V1pRZTBI?=
 =?utf-8?B?NkZvaUlxc0NsdnloMklxYlFPd2dwVTRZdzdZbW5aTzNpbFFPMGF6SUVhOHpC?=
 =?utf-8?B?S2drblVQS3FNRndJMlh6RjFld1pSQUl5VGVSTklJb1Q0dW1oek5ReW95OC9t?=
 =?utf-8?Q?rLTRLx+U5rJUsBsTLymotc3xQ?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	yuawLtp9TncwSbGP/sA1UaC5L2xeqDhKBmRcsNGbdeWBbRFDrNJNq697Oo9L6ZiINV1ZjiPSx0PCL6L2ZC57LSFiLB8G7um7nc/7RGhCYBR7vlHyHqe5QuG1EEYtGRyxpybSUJ8Tb1irDHMktNmL/sUfNdT9wAqi8cprauCNcnaL7eLbI+pv3qywZyjputwavCA8XwMMz0BkI1y27lfKZeCIqW61kBxy+J7+6j8i8oIsoBuZB35/pQ9W4rRvLGNIeu4dGwlCLNQLNL4HiqPUgOIjc6jS3n93bM83JfsGKvAAUdnfkTkfDJd0i7/DMRnrL+BD5MyCY7Q9z7uraqXwBOT5DjmxV2I50WVFWeGszDb7B73e+F47J8xE6wGzj4B/6vabby7/hNiiAh/FifPnGQqo/Qsizq0O6nUAe8ANh9q4LwScG88n6eisgJSt4ti1+OxaSHbkAyLjSxXpi99tpDIeO1V9o5bY3dMjxRXlaBVK5DJqzjmm0j/N4fOMVMxO8HYDTdl2//BqNQysRpCViI5gp4WZQfvjBiJHJPjDiLJy2/PPgqaunRhsQYNBZbM+yJaQRdiZm0rCmhKZoddp5WehwM9F8GTf4jZZqZ00O1E+QfSow8EeX24I3BLyhRX1gU/tci2IhPYwl08QSejJ/dQ4vyh0lfLCQ/jXcqlq7xJ52+VtomOxyfSveXdn+LKQ1rC2fRRsHy8emNTdG8bYf9tFpTHGX+w65MSQZBb4RZ5G3OCQk/VW8rtYev16l1XOgGXQolHws4C9MsjHEYtPmL5eIaBQrjPJiuSds5cka/lltpwez8hjhEIQA5uFeFhXI03kVC2v5USmCRv8QGlCC/u6nY/64Rgy+NMELOTQS05LNdygX0pVdCdsdKOcJcR9EAR9N9EGSxbgVSazABkdFA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: db1abd9b-0e35-4614-31fb-08dbb926a6ec
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 15:39:46.6956
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: CBK6E7lw0dUW1YsGGhOPn/o5dD0/BKYNMDUCjaoiwq8g3iq3UaWPr6boe4HAU+6zQGpI2BF9J974wuAyxqSaHw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5627

On Tue, Aug 29, 2023 at 11:19:42PM +0000, Volodymyr Babchuk wrote:
> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> 
> Use a previously introduced per-domain read/write lock to check
> whether vpci is present, so we are sure there are no accesses to the
> contents of the vpci struct if not. This lock can be used (and in a
> few cases is used right away) so that vpci removal can be performed
> while holding the lock in write mode. Previously such removal could
> race with vpci_read for example.
> 
> When taking both d->pci_lock and pdev->vpci->lock they are should be

When taking both d->pci_lock and pdev->vpci->lock the order should be
...

> taken in this exact order: d->pci_lock then pdev->vpci->lock to avoid
> possible deadlock situations.
> 
> 1. Per-domain's pci_rwlock is used to protect pdev->vpci structure
> from being removed.
> 
> 2. Writing the command register and ROM BAR register may trigger
> modify_bars to run, which in turn may access multiple pdevs while
> checking for the existing BAR's overlap. The overlapping check, if
> done under the read lock, requires vpci->lock to be acquired on both
> devices being compared, which may produce a deadlock. It is not
> possible to upgrade read lock to write lock in such a case. So, in
> order to prevent the deadlock, use d->pci_lock instead. To prevent
> deadlock while locking both hwdom->pci_lock and dom_xen->pci_lock,
> always lock hwdom first.
> 
> All other code, which doesn't lead to pdev->vpci destruction and does
> not access multiple pdevs at the same time, can still use a
> combination of the read lock and pdev->vpci->lock.
> 
> 3. Drop const qualifier where the new rwlock is used and this is
> appropriate.
> 
> 4. Do not call process_pending_softirqs with any locks held. For that
> unlock prior the call and re-acquire the locks after. After
> re-acquiring the lock there is no need to check if pdev->vpci exists:
>  - in apply_map because of the context it is called (no race condition
>    possible)
>  - for MSI/MSI-X debug code because it is called at the end of
>    pdev->vpci access and no further access to pdev->vpci is made
> 
> 5. Use d->pci_lock around for_each_pdev and pci_get_pdev_by_domain
> while accessing pdevs in vpci code.
> 
> There is a possible lock inversion in MSI code, as some parts of it
> acquire pcidevs_lock() while already holding d->pci_lock.

Those would as a minimum need to be pointed out with TODO comments of
some kind in order to be aware of them.

> 
> Suggested-by: Roger Pau Monné <roger.pau@citrix.com>
> Suggested-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> 
> ---
> Changes in v9:
>  - extended locked region to protect vpci_remove_device and
>    vpci_add_handlers() calls
>  - vpci_write() takes lock in the write mode to protect
>    potential call to modify_bars()
>  - renamed lock releasing function
>  - removed ASSERT()s from msi code
>  - added trylock in vpci_dump_msi
> 
> Changes in v8:
>  - changed d->vpci_lock to d->pci_lock
>  - introducing d->pci_lock in a separate patch
>  - extended locked region in vpci_process_pending
>  - removed pcidevs_lockis vpci_dump_msi()
>  - removed some changes as they are not needed with
>    the new locking scheme
>  - added handling for hwdom && dom_xen case
> ---
>  xen/arch/x86/hvm/vmsi.c       | 24 ++++++++--------
>  xen/arch/x86/hvm/vmx/vmx.c    |  2 --
>  xen/arch/x86/irq.c            | 15 +++++++---
>  xen/arch/x86/msi.c            |  8 ++----
>  xen/drivers/passthrough/pci.c |  7 +++--
>  xen/drivers/vpci/header.c     | 18 ++++++++++++
>  xen/drivers/vpci/msi.c        | 22 +++++++++++++--
>  xen/drivers/vpci/msix.c       | 52 ++++++++++++++++++++++++++++++-----
>  xen/drivers/vpci/vpci.c       | 46 +++++++++++++++++++++++++++++--
>  9 files changed, 154 insertions(+), 40 deletions(-)
> 
> diff --git a/xen/arch/x86/hvm/vmsi.c b/xen/arch/x86/hvm/vmsi.c
> index 128f236362..fde76cc6b4 100644
> --- a/xen/arch/x86/hvm/vmsi.c
> +++ b/xen/arch/x86/hvm/vmsi.c
> @@ -468,7 +468,7 @@ int msixtbl_pt_register(struct domain *d, struct pirq *pirq, uint64_t gtable)
>      struct msixtbl_entry *entry, *new_entry;
>      int r = -EINVAL;
>  
> -    ASSERT(pcidevs_locked());
> +    ASSERT(pcidevs_locked() || rw_is_locked(&d->pci_lock));
>      ASSERT(rw_is_write_locked(&d->event_lock));
>  
>      if ( !msixtbl_initialised(d) )
> @@ -538,7 +538,7 @@ void msixtbl_pt_unregister(struct domain *d, struct pirq *pirq)
>      struct pci_dev *pdev;
>      struct msixtbl_entry *entry;
>  
> -    ASSERT(pcidevs_locked());
> +    ASSERT(pcidevs_locked() || rw_is_locked(&d->pci_lock));
>      ASSERT(rw_is_write_locked(&d->event_lock));
>  
>      if ( !msixtbl_initialised(d) )
> @@ -684,7 +684,7 @@ static int vpci_msi_update(const struct pci_dev *pdev, uint32_t data,
>  {
>      unsigned int i;
>  
> -    ASSERT(pcidevs_locked());
> +    ASSERT(rw_is_locked(&pdev->domain->pci_lock));
>  
>      if ( (address & MSI_ADDR_BASE_MASK) != MSI_ADDR_HEADER )
>      {
> @@ -725,8 +725,8 @@ void vpci_msi_arch_update(struct vpci_msi *msi, const struct pci_dev *pdev)
>      int rc;
>  
>      ASSERT(msi->arch.pirq != INVALID_PIRQ);
> +    ASSERT(rw_is_locked(&pdev->domain->pci_lock));
>  
> -    pcidevs_lock();
>      for ( i = 0; i < msi->vectors && msi->arch.bound; i++ )
>      {
>          struct xen_domctl_bind_pt_irq unbind = {
> @@ -745,7 +745,6 @@ void vpci_msi_arch_update(struct vpci_msi *msi, const struct pci_dev *pdev)
>  
>      msi->arch.bound = !vpci_msi_update(pdev, msi->data, msi->address,
>                                         msi->vectors, msi->arch.pirq, msi->mask);
> -    pcidevs_unlock();
>  }
>  
>  static int vpci_msi_enable(const struct pci_dev *pdev, unsigned int nr,
> @@ -778,15 +777,13 @@ int vpci_msi_arch_enable(struct vpci_msi *msi, const struct pci_dev *pdev,
>      int rc;
>  
>      ASSERT(msi->arch.pirq == INVALID_PIRQ);
> +    ASSERT(rw_is_locked(&pdev->domain->pci_lock));
>      rc = vpci_msi_enable(pdev, vectors, 0);
>      if ( rc < 0 )
>          return rc;
>      msi->arch.pirq = rc;
> -
> -    pcidevs_lock();
>      msi->arch.bound = !vpci_msi_update(pdev, msi->data, msi->address, vectors,
>                                         msi->arch.pirq, msi->mask);
> -    pcidevs_unlock();
>  
>      return 0;
>  }
> @@ -797,8 +794,8 @@ static void vpci_msi_disable(const struct pci_dev *pdev, int pirq,
>      unsigned int i;
>  
>      ASSERT(pirq != INVALID_PIRQ);
> +    ASSERT(rw_is_locked(&pdev->domain->pci_lock));
>  
> -    pcidevs_lock();
>      for ( i = 0; i < nr && bound; i++ )
>      {
>          struct xen_domctl_bind_pt_irq bind = {
> @@ -814,7 +811,6 @@ static void vpci_msi_disable(const struct pci_dev *pdev, int pirq,
>      write_lock(&pdev->domain->event_lock);
>      unmap_domain_pirq(pdev->domain, pirq);
>      write_unlock(&pdev->domain->event_lock);
> -    pcidevs_unlock();
>  }
>  
>  void vpci_msi_arch_disable(struct vpci_msi *msi, const struct pci_dev *pdev)
> @@ -854,6 +850,8 @@ int vpci_msix_arch_enable_entry(struct vpci_msix_entry *entry,
>      int rc;
>  
>      ASSERT(entry->arch.pirq == INVALID_PIRQ);
> +    ASSERT(rw_is_locked(&pdev->domain->pci_lock));
> +
>      rc = vpci_msi_enable(pdev, vmsix_entry_nr(pdev->vpci->msix, entry),
>                           table_base);
>      if ( rc < 0 )
> @@ -861,7 +859,6 @@ int vpci_msix_arch_enable_entry(struct vpci_msix_entry *entry,
>  
>      entry->arch.pirq = rc;
>  
> -    pcidevs_lock();
>      rc = vpci_msi_update(pdev, entry->data, entry->addr, 1, entry->arch.pirq,
>                           entry->masked);
>      if ( rc )
> @@ -869,7 +866,6 @@ int vpci_msix_arch_enable_entry(struct vpci_msix_entry *entry,
>          vpci_msi_disable(pdev, entry->arch.pirq, 1, false);
>          entry->arch.pirq = INVALID_PIRQ;
>      }
> -    pcidevs_unlock();
>  
>      return rc;
>  }
> @@ -895,6 +891,8 @@ int vpci_msix_arch_print(const struct vpci_msix *msix)
>  {
>      unsigned int i;
>  
> +    ASSERT(rw_is_locked(&msix->pdev->domain->pci_lock));
> +
>      for ( i = 0; i < msix->max_entries; i++ )
>      {
>          const struct vpci_msix_entry *entry = &msix->entries[i];
> @@ -913,7 +911,9 @@ int vpci_msix_arch_print(const struct vpci_msix *msix)
>              struct pci_dev *pdev = msix->pdev;
>  
>              spin_unlock(&msix->pdev->vpci->lock);
> +            read_unlock(&pdev->domain->pci_lock);
>              process_pending_softirqs();
> +            read_lock(&pdev->domain->pci_lock);
>              /* NB: we assume that pdev cannot go away for an alive domain. */
>              if ( !pdev->vpci || !spin_trylock(&pdev->vpci->lock) )
>                  return -EBUSY;
> diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
> index 1edc7f1e91..545a27796e 100644
> --- a/xen/arch/x86/hvm/vmx/vmx.c
> +++ b/xen/arch/x86/hvm/vmx/vmx.c
> @@ -413,8 +413,6 @@ static int cf_check vmx_pi_update_irte(const struct vcpu *v,
>  
>      spin_unlock_irq(&desc->lock);
>  
> -    ASSERT(pcidevs_locked());
> -

Hm, this removal seems dubious, same with some of the removal below.
And I don't see any comment in the log message as to why removing the
asserts here and in __pci_enable_msi{,x}(), pci_prepare_msix() is
safe.

>      return iommu_update_ire_from_msi(msi_desc, &msi_desc->msg);
>  
>   unlock_out:
> diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c
> index 6abfd81621..cb99ae5392 100644
> --- a/xen/arch/x86/irq.c
> +++ b/xen/arch/x86/irq.c
> @@ -2157,7 +2157,7 @@ int map_domain_pirq(
>          struct pci_dev *pdev;
>          unsigned int nr = 0;
>  
> -        ASSERT(pcidevs_locked());
> +        ASSERT(pcidevs_locked() || rw_is_locked(&d->pci_lock));
>  
>          ret = -ENODEV;
>          if ( !cpu_has_apic )
> @@ -2314,7 +2314,7 @@ int unmap_domain_pirq(struct domain *d, int pirq)
>      if ( (pirq < 0) || (pirq >= d->nr_pirqs) )
>          return -EINVAL;
>  
> -    ASSERT(pcidevs_locked());
> +    ASSERT(pcidevs_locked() || rw_is_locked(&d->pci_lock));
>      ASSERT(rw_is_write_locked(&d->event_lock));
>  
>      info = pirq_info(d, pirq);
> @@ -2908,7 +2908,13 @@ int allocate_and_map_msi_pirq(struct domain *d, int index, int *pirq_p,
>  
>      msi->irq = irq;
>  
> -    pcidevs_lock();
> +    /*
> +     * If we are called via vPCI->vMSI path, we already are holding
> +     * d->pci_lock so there is no need to take pcidevs_lock, as it
> +     * will cause lock inversion.
> +     */
> +    if ( !rw_is_locked(&d->pci_lock) )
> +        pcidevs_lock();

This is not a safe expression to use, rw_is_locked() just returns
whether the lock is taken, but not if it's taken by the current CPU.
This is fine to use in assertions and debug code, but not in order to
take lock ordering decisions I'm afraid.

You will likely need to move the locking to the callers of the
function.

>      /* Verify or get pirq. */
>      write_lock(&d->event_lock);
>      pirq = allocate_pirq(d, index, *pirq_p, irq, type, &msi->entry_nr);
> @@ -2924,7 +2930,8 @@ int allocate_and_map_msi_pirq(struct domain *d, int index, int *pirq_p,
>  
>   done:
>      write_unlock(&d->event_lock);
> -    pcidevs_unlock();
> +    if ( !rw_is_locked(&d->pci_lock) )
> +        pcidevs_unlock();
>      if ( ret )
>      {
>          switch ( type )
> diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
> index d0bf63df1d..ba2963b7d2 100644
> --- a/xen/arch/x86/msi.c
> +++ b/xen/arch/x86/msi.c
> @@ -613,7 +613,7 @@ static int msi_capability_init(struct pci_dev *dev,
>      u8 slot = PCI_SLOT(dev->devfn);
>      u8 func = PCI_FUNC(dev->devfn);
>  
> -    ASSERT(pcidevs_locked());
> +    ASSERT(pcidevs_locked() || rw_is_locked(&dev->domain->pci_lock));
>      pos = pci_find_cap_offset(seg, bus, slot, func, PCI_CAP_ID_MSI);
>      if ( !pos )
>          return -ENODEV;
> @@ -783,7 +783,7 @@ static int msix_capability_init(struct pci_dev *dev,
>      if ( !pos )
>          return -ENODEV;
>  
> -    ASSERT(pcidevs_locked());
> +    ASSERT(pcidevs_locked() || rw_is_locked(&dev->domain->pci_lock));
>  
>      control = pci_conf_read16(dev->sbdf, msix_control_reg(pos));
>      /*
> @@ -1000,7 +1000,6 @@ static int __pci_enable_msi(struct msi_info *msi, struct msi_desc **desc)
>      struct pci_dev *pdev;
>      struct msi_desc *old_desc;
>  
> -    ASSERT(pcidevs_locked());
>      pdev = pci_get_pdev(NULL, msi->sbdf);
>      if ( !pdev )
>          return -ENODEV;
> @@ -1055,7 +1054,6 @@ static int __pci_enable_msix(struct msi_info *msi, struct msi_desc **desc)
>      struct pci_dev *pdev;
>      struct msi_desc *old_desc;
>  
> -    ASSERT(pcidevs_locked());
>      pdev = pci_get_pdev(NULL, msi->sbdf);
>      if ( !pdev || !pdev->msix )
>          return -ENODEV;
> @@ -1170,8 +1168,6 @@ int pci_prepare_msix(u16 seg, u8 bus, u8 devfn, bool off)
>   */
>  int pci_enable_msi(struct msi_info *msi, struct msi_desc **desc)
>  {
> -    ASSERT(pcidevs_locked());
> -
>      if ( !use_msi )
>          return -EPERM;
>  
> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
> index 79ca928672..4f18293900 100644
> --- a/xen/drivers/passthrough/pci.c
> +++ b/xen/drivers/passthrough/pci.c
> @@ -752,7 +752,6 @@ int pci_add_device(u16 seg, u8 bus, u8 devfn,
>          pdev->domain = hardware_domain;
>          write_lock(&hardware_domain->pci_lock);
>          list_add(&pdev->domain_list, &hardware_domain->pdev_list);
> -        write_unlock(&hardware_domain->pci_lock);
>  
>          /*
>           * For devices not discovered by Xen during boot, add vPCI handlers
> @@ -762,17 +761,17 @@ int pci_add_device(u16 seg, u8 bus, u8 devfn,
>          if ( ret )
>          {
>              printk(XENLOG_ERR "Setup of vPCI failed: %d\n", ret);

You likely want to move the printk after the unlock now.

> -            write_lock(&hardware_domain->pci_lock);
>              list_del(&pdev->domain_list);
>              write_unlock(&hardware_domain->pci_lock);
>              pdev->domain = NULL;
>              goto out;
>          }
> +        write_unlock(&hardware_domain->pci_lock);
>          ret = iommu_add_device(pdev);
>          if ( ret )
>          {
> -            vpci_remove_device(pdev);
>              write_lock(&hardware_domain->pci_lock);
> +            vpci_remove_device(pdev);
>              list_del(&pdev->domain_list);
>              write_unlock(&hardware_domain->pci_lock);
>              pdev->domain = NULL;
> @@ -1147,7 +1146,9 @@ static void __hwdom_init setup_one_hwdom_device(const struct setup_hwdom *ctxt,
>      } while ( devfn != pdev->devfn &&
>                PCI_SLOT(devfn) == PCI_SLOT(pdev->devfn) );
>  
> +    write_lock(&ctxt->d->pci_lock);
>      err = vpci_add_handlers(pdev);
> +    write_unlock(&ctxt->d->pci_lock);
>      if ( err )
>          printk(XENLOG_ERR "setup of vPCI for d%d failed: %d\n",
>                 ctxt->d->domain_id, err);
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index 60f7049e34..177a6b57a5 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -172,6 +172,7 @@ bool vpci_process_pending(struct vcpu *v)
>          if ( rc == -ERESTART )
>              return true;
>  
> +        write_lock(&v->domain->pci_lock);
>          spin_lock(&v->vpci.pdev->vpci->lock);
>          /* Disable memory decoding unconditionally on failure. */
>          modify_decoding(v->vpci.pdev,
> @@ -190,6 +191,7 @@ bool vpci_process_pending(struct vcpu *v)
>               * failure.
>               */
>              vpci_remove_device(v->vpci.pdev);
> +        write_unlock(&v->domain->pci_lock);

vpci_process_pending() is problematic wrt vpci_remove_device(), as the
removal of a device with pending map operations would render such
operations stale, effectively leaking the mappings to a device MMIO
area that's no longer owned by the domain.

In the same sense vpci_remove_device() should take care of removing
any MMIO mappings created, which is not currently the case.  I guess
such problem warrant at least some kind of comment in
vpci_process_pending() and/or vpci_remove_device().

>      }
>  
>      return false;
> @@ -201,8 +203,20 @@ static int __init apply_map(struct domain *d, const struct pci_dev *pdev,
>      struct map_data data = { .d = d, .map = true };
>      int rc;
>  
> +    ASSERT(rw_is_locked(&d->pci_lock));

You want rw_is_write_locked(), as that check for exclusive ownership
of the lock (like you have in modify_bars()).

> +
>      while ( (rc = rangeset_consume_ranges(mem, map_range, &data)) == -ERESTART )
> +    {
> +        /*
> +         * It's safe to drop and reacquire the lock in this context
> +         * without risking pdev disappearing because devices cannot be
> +         * removed until the initial domain has been started.
> +         */
> +        read_unlock(&d->pci_lock);
>          process_pending_softirqs();
> +        read_lock(&d->pci_lock);
> +    }
> +
>      rangeset_destroy(mem);
>      if ( !rc )
>          modify_decoding(pdev, cmd, false);
> @@ -243,6 +257,8 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>      unsigned int i;
>      int rc;
>  
> +    ASSERT(rw_is_write_locked(&pdev->domain->pci_lock));
> +
>      if ( !mem )
>          return -ENOMEM;
>  
> @@ -522,6 +538,8 @@ static int cf_check init_bars(struct pci_dev *pdev)
>      struct vpci_bar *bars = header->bars;
>      int rc;
>  
> +    ASSERT(rw_is_locked(&pdev->domain->pci_lock));

Same here, initialization should be done with the lock exclusively
held.

> +
>      switch ( pci_conf_read8(pdev->sbdf, PCI_HEADER_TYPE) & 0x7f )
>      {
>      case PCI_HEADER_TYPE_NORMAL:
> diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c
> index 8f2b59e61a..a0733bb2cb 100644
> --- a/xen/drivers/vpci/msi.c
> +++ b/xen/drivers/vpci/msi.c
> @@ -265,7 +265,7 @@ REGISTER_VPCI_INIT(init_msi, VPCI_PRIORITY_LOW);
>  
>  void vpci_dump_msi(void)
>  {
> -    const struct domain *d;
> +    struct domain *d;
>  
>      rcu_read_lock(&domlist_read_lock);
>      for_each_domain ( d )
> @@ -277,6 +277,9 @@ void vpci_dump_msi(void)
>  
>          printk("vPCI MSI/MSI-X d%d\n", d->domain_id);
>  
> +        if ( !read_trylock(&d->pci_lock) )
> +            continue;
> +
>          for_each_pdev ( d, pdev )
>          {
>              const struct vpci_msi *msi;
> @@ -318,15 +321,28 @@ void vpci_dump_msi(void)
>                       * holding the lock.
>                       */
>                      printk("unable to print all MSI-X entries: %d\n", rc);
> -                    process_pending_softirqs();
> -                    continue;
> +                    goto pdev_done;
>                  }
>              }
>  
>              spin_unlock(&pdev->vpci->lock);
> + pdev_done:
> +            /*
> +             * Unlock lock to process pending softirqs. This is
> +             * potentially unsafe, as d->pdev_list can be changed in
> +             * meantime.
> +             */
> +            read_unlock(&d->pci_lock);
>              process_pending_softirqs();
> +            if ( !read_trylock(&d->pci_lock) )
> +            {
> +                printk("unable to access other devices for the domain\n");
> +                goto domain_done;

Shouldn't the domain_done label be after the read_unlock(), so that we
can proceed to try to dump the devices for the next domain?  With the
proposed code a failure to acquire one of the domains pci_lock
terminates the dump.

> +            }
>          }
> +        read_unlock(&d->pci_lock);
>      }
> + domain_done:
>      rcu_read_unlock(&domlist_read_lock);
>  }
>  
> diff --git a/xen/drivers/vpci/msix.c b/xen/drivers/vpci/msix.c
> index f9df506f29..f8c5bd393b 100644
> --- a/xen/drivers/vpci/msix.c
> +++ b/xen/drivers/vpci/msix.c
> @@ -147,6 +147,8 @@ static struct vpci_msix *msix_find(const struct domain *d, unsigned long addr)
>  {
>      struct vpci_msix *msix;
>  
> +    ASSERT(rw_is_locked(&d->pci_lock));
> +
>      list_for_each_entry ( msix, &d->arch.hvm.msix_tables, next )
>      {
>          const struct vpci_bar *bars = msix->pdev->vpci->header.bars;
> @@ -163,7 +165,13 @@ static struct vpci_msix *msix_find(const struct domain *d, unsigned long addr)
>  
>  static int cf_check msix_accept(struct vcpu *v, unsigned long addr)
>  {
> -    return !!msix_find(v->domain, addr);
> +    int rc;
> +
> +    read_lock(&v->domain->pci_lock);
> +    rc = !!msix_find(v->domain, addr);
> +    read_unlock(&v->domain->pci_lock);
> +
> +    return rc;
>  }
>  
>  static bool access_allowed(const struct pci_dev *pdev, unsigned long addr,
> @@ -358,21 +366,35 @@ static int adjacent_read(const struct domain *d, const struct vpci_msix *msix,
>  static int cf_check msix_read(
>      struct vcpu *v, unsigned long addr, unsigned int len, unsigned long *data)
>  {
> -    const struct domain *d = v->domain;
> -    struct vpci_msix *msix = msix_find(d, addr);
> +    struct domain *d = v->domain;
> +    struct vpci_msix *msix;
>      const struct vpci_msix_entry *entry;
>      unsigned int offset;
>  
>      *data = ~0ul;
>  
> +    read_lock(&d->pci_lock);
> +
> +    msix = msix_find(d, addr);
>      if ( !msix )
> +    {
> +        read_unlock(&d->pci_lock);
>          return X86EMUL_RETRY;
> +    }
>  
>      if ( adjacent_handle(msix, addr) )
> -        return adjacent_read(d, msix, addr, len, data);
> +    {
> +        int rc = adjacent_read(d, msix, addr, len, data);
> +
> +        read_unlock(&d->pci_lock);
> +        return rc;
> +    }
>  
>      if ( !access_allowed(msix->pdev, addr, len) )
> +    {
> +        read_unlock(&d->pci_lock);
>          return X86EMUL_OKAY;
> +    }
>  
>      spin_lock(&msix->pdev->vpci->lock);
>      entry = get_entry(msix, addr);
> @@ -404,6 +426,7 @@ static int cf_check msix_read(
>          break;
>      }
>      spin_unlock(&msix->pdev->vpci->lock);
> +    read_unlock(&d->pci_lock);
>  
>      return X86EMUL_OKAY;
>  }
> @@ -491,19 +514,33 @@ static int adjacent_write(const struct domain *d, const struct vpci_msix *msix,
>  static int cf_check msix_write(
>      struct vcpu *v, unsigned long addr, unsigned int len, unsigned long data)
>  {
> -    const struct domain *d = v->domain;
> -    struct vpci_msix *msix = msix_find(d, addr);
> +    struct domain *d = v->domain;
> +    struct vpci_msix *msix;
>      struct vpci_msix_entry *entry;
>      unsigned int offset;
>  
> +    read_lock(&d->pci_lock);
> +
> +    msix = msix_find(d, addr);
>      if ( !msix )
> +    {
> +        read_unlock(&d->pci_lock);
>          return X86EMUL_RETRY;
> +    }
>  
>      if ( adjacent_handle(msix, addr) )
> -        return adjacent_write(d, msix, addr, len, data);
> +    {
> +        int rc = adjacent_write(d, msix, addr, len, data);
> +
> +        read_unlock(&d->pci_lock);
> +        return rc;
> +    }
>  
>      if ( !access_allowed(msix->pdev, addr, len) )
> +    {
> +        read_unlock(&d->pci_lock);
>          return X86EMUL_OKAY;
> +    }
>  
>      spin_lock(&msix->pdev->vpci->lock);
>      entry = get_entry(msix, addr);
> @@ -579,6 +616,7 @@ static int cf_check msix_write(
>          break;
>      }
>      spin_unlock(&msix->pdev->vpci->lock);
> +    read_unlock(&d->pci_lock);
>  
>      return X86EMUL_OKAY;
>  }
> diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
> index d73fa76302..34fff2ef2d 100644
> --- a/xen/drivers/vpci/vpci.c
> +++ b/xen/drivers/vpci/vpci.c
> @@ -38,6 +38,8 @@ extern vpci_register_init_t *const __end_vpci_array[];
>  
>  void vpci_remove_device(struct pci_dev *pdev)
>  {
> +    ASSERT(rw_is_write_locked(&pdev->domain->pci_lock));
> +
>      if ( !has_vpci(pdev->domain) || !pdev->vpci )
>          return;
>  
> @@ -73,6 +75,8 @@ int vpci_add_handlers(struct pci_dev *pdev)
>      const unsigned long *ro_map;
>      int rc = 0;
>  
> +    ASSERT(rw_is_write_locked(&pdev->domain->pci_lock));
> +
>      if ( !has_vpci(pdev->domain) )
>          return 0;
>  
> @@ -326,11 +330,12 @@ static uint32_t merge_result(uint32_t data, uint32_t new, unsigned int size,
>  
>  uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size)
>  {
> -    const struct domain *d = current->domain;
> +    struct domain *d = current->domain;
>      const struct pci_dev *pdev;
>      const struct vpci_register *r;
>      unsigned int data_offset = 0;
>      uint32_t data = ~(uint32_t)0;
> +    rwlock_t *lock;
>  
>      if ( !size )
>      {
> @@ -342,11 +347,21 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size)
>       * Find the PCI dev matching the address, which for hwdom also requires
>       * consulting DomXEN.  Passthrough everything that's not trapped.
>       */
> +    lock = &d->pci_lock;
> +    read_lock(lock);
>      pdev = pci_get_pdev(d, sbdf);
>      if ( !pdev && is_hardware_domain(d) )
> +    {
> +        read_unlock(lock);
> +        lock = &dom_xen->pci_lock;
> +        read_lock(lock);
>          pdev = pci_get_pdev(dom_xen, sbdf);
> +    }
>      if ( !pdev || !pdev->vpci )
> +    {
> +        read_unlock(lock);
>          return vpci_read_hw(sbdf, reg, size);
> +    }
>  
>      spin_lock(&pdev->vpci->lock);
>  
F> @@ -392,6 +407,7 @@ uint32_t vpci_read(pci_sbdf_t sbdf, unsigned int reg, unsigned int size)
>          ASSERT(data_offset < size);
>      }
>      spin_unlock(&pdev->vpci->lock);
> +    read_unlock(lock);
>  
>      if ( data_offset < size )
>      {
> @@ -431,10 +447,23 @@ static void vpci_write_helper(const struct pci_dev *pdev,
>               r->private);
>  }
>  
> +/* Helper function to unlock locks taken by vpci_write in proper order */
> +static void release_domain_locks(struct domain *d)

release_domain_write_locks() might be more descriptive in case we ever
need a similar helper for reads also.

> +{
> +    ASSERT(rw_is_write_locked(&d->pci_lock));
> +
> +    if ( is_hardware_domain(d) )
> +    {
> +        ASSERT(rw_is_write_locked(&dom_xen->pci_lock));
> +        write_unlock(&dom_xen->pci_lock);
> +    }
> +    write_unlock(&d->pci_lock);
> +}
> +
>  void vpci_write(pci_sbdf_t sbdf, unsigned int reg, unsigned int size,
>                  uint32_t data)
>  {
> -    const struct domain *d = current->domain;
> +    struct domain *d = current->domain;
>      const struct pci_dev *pdev;
>      const struct vpci_register *r;
>      unsigned int data_offset = 0;
> @@ -447,8 +476,16 @@ void vpci_write(pci_sbdf_t sbdf, unsigned int reg, unsigned int size,
>  
>      /*
>       * Find the PCI dev matching the address, which for hwdom also requires
> -     * consulting DomXEN.  Passthrough everything that's not trapped.
> +     * consulting DomXEN. Passthrough everything that's not trapped.
> +     * If this is hwdom, we need to hold locks for both domain in case if
> +     * modify_bars() is called
>       */
> +    write_lock(&d->pci_lock);
> +
> +    /* dom_xen->pci_lock always should be taken second to prevent deadlock */
> +    if ( is_hardware_domain(d) )
> +        write_lock(&dom_xen->pci_lock);

Strictly speaking we only need the pci_lock in exclusive mode when
enabling/disabling the BARs AFAICT?  For the rest of the operations
the per-device vPCI lock already protects against concurrent accesses.
Might be worth to mention that the write lock is only required for
those accesses, but that such improvement is left as a TODO.

> +
>      pdev = pci_get_pdev(d, sbdf);
>      if ( !pdev && is_hardware_domain(d) )
>          pdev = pci_get_pdev(dom_xen, sbdf);
> @@ -459,6 +496,8 @@ void vpci_write(pci_sbdf_t sbdf, unsigned int reg, unsigned int size,
>  
>          if ( !ro_map || !test_bit(sbdf.bdf, ro_map) )
>              vpci_write_hw(sbdf, reg, size, data);
> +
> +        release_domain_locks(d);

You can release the lock before the vpci_write_hw() call.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 15:56:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 15:56:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604914.942466 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qid5K-0006ZU-3y; Tue, 19 Sep 2023 15:56:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604914.942466; Tue, 19 Sep 2023 15:56:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qid5J-0006ZN-Vf; Tue, 19 Sep 2023 15:56:21 +0000
Received: by outflank-mailman (input) for mailman id 604914;
 Tue, 19 Sep 2023 15:56:20 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qid5I-0006Ys-AS
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 15:56:20 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qid5H-0007gg-3W; Tue, 19 Sep 2023 15:56:19 +0000
Received: from [15.248.3.4] (helo=[10.24.67.44])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qid5G-0002kF-RP; Tue, 19 Sep 2023 15:56:18 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=0Kz4wqDoYP99UAEdjloGBPUCShQsMMpuik6TcPg4JJk=; b=WRQChwANN8g7iyVlWor3QeJ2jc
	3AMq2hRGm8xFfOdbwzDlswTGn7Nomy3Ev/ktWdW7dps0ZXfEAOmyLK/+T4lB2ix0mo75aNReUIDav
	Q29P5Ylv7Jl/nKXhLrWaSXc6aU+AMSY+Pgj1uZXpRIAAbNZYynd90Wb0ExVhQW1amohI=;
Message-ID: <f40ce805-b6b7-46c5-87b2-3fe8c331072d@xen.org>
Date: Tue, 19 Sep 2023 16:56:17 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: xl dmesg buffer too small for Xen 4.18?
Content-Language: en-GB
To: Chuck Zmudzinski <brchuckz@netscape.net>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <b20bdc7e-4c07-4bde-b206-4142310211d4.ref@netscape.net>
 <b20bdc7e-4c07-4bde-b206-4142310211d4@netscape.net>
 <9baf6bec-49c6-474b-a5e3-5f0473aaffc7@netscape.net>
 <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
 <ZQlHj5rjMaYj8Z4e@MacBookPdeRoger>
 <41a2cdf9-8fd1-418d-abc9-1fe4f3fd8b5e@xen.org>
 <232644f5-b0ad-414f-a4b5-03724f5ac053@netscape.net>
From: Julien Grall <julien@xen.org>
In-Reply-To: <232644f5-b0ad-414f-a4b5-03724f5ac053@netscape.net>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Chuck,

On 19/09/2023 16:09, Chuck Zmudzinski wrote:
> On 9/19/2023 8:10 AM, Julien Grall wrote:
>> Hi Roger,
>>
>> On 19/09/2023 08:02, Roger Pau Monné wrote:
>>> On Mon, Sep 18, 2023 at 07:49:26PM +0100, Julien Grall wrote:
>>>> (+Roger and moving to xen-devel)
>>>>
>>>> Hi,
>>>>
>>>> On 18/09/2023 19:17, Chuck Zmudzinski wrote:
>>>>> On 9/18/2023 9:00 AM, Chuck Zmudzinski wrote:
>>>>>> Hello,
>>>>>>
>>>>>> I tested Xen 4.18~rc0 on Alma Linux 9 and my first tests indicate it works fine for starting the guests I manage but I notice that immediately after boot and with only dom0 running on the system, I get:
>>>>>>
>>>>>> [user@Malmalinux ~]$ sudo xl dmesg
>>>>>> 00bee72000-00000bee72fff type=7 attr=000000000000000f
>>>>>> (XEN)  00000bee73000-00000bef49fff type=4 attr=000000000000000f
>>>>>> (XEN)  00000bef4a000-00000bef4bfff type=7 attr=000000000000000f
>>>>>> (XEN)  00000bef4c000-00000befbafff type=4 attr=000000000000000f
>>>>>> (XEN)  00000befbb000-00000befbbfff type=7 attr=000000000000000f
>>>>>> ...
>>>>>>
>>>>>> I have noticed the buffer fills up quickly on earlier Xen versions, but never have I seen it fill up during boot and with only dom0 running.
>>>>>>
>>>>>> Can increasing the buffer fix this? How would one do that?
>>>>>>
>>>>>> Thanks
>>>>>>
>>>>>
>>>>> I see the setting is the command line option conring_size:
>>>>>
>>>>> https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#conring_size
>>>>>
>>>>> The default is 16k, I tried 48k and that was big enough to capture all the messages at boot for 4.18 rc0. This is probably not an issue if the release candidate is being more verbose than the actual release will be. But if the release is still this verbose, maybe the default of 16k should be increased.
>>>>
>>>> Thanks for the report. This remind me the series [1] from Roger which tries
>>>> to increase the default size to 32K. @Roger, I am wondering if we should
>>>> revive it?
>>>
>>> I think the relevant patch (2/2) will still apply as-is, it's just a
>>> Kconfig one line change.  I'm however thinking it might be better to
>>> bump it even further, to 128K.  From a system point of view it's still
>>> a very small amount of memory.
>>
>> I don't have a strong opinion about 128K vs 32K.
> 
> I am sure 32k will be big enough on my system, and based on Jan's comment
> about release builds being less verbose, the current default of 16k may
> still work on my system once the release is out. 

I think it is quite (actually more) important to capture all the logs 
even in non-release build. So it would makes sense to increase the 
buffer to 32KB.

An alternative option would be to have a different limit for debug and 
production build. Not sure what the others thinks.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 15:56:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 15:56:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604913.942455 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qid5F-0006Ec-Rf; Tue, 19 Sep 2023 15:56:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604913.942455; Tue, 19 Sep 2023 15:56:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qid5F-0006Dp-Nm; Tue, 19 Sep 2023 15:56:17 +0000
Received: by outflank-mailman (input) for mailman id 604913;
 Tue, 19 Sep 2023 15:56:16 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qid5E-0006Ce-HH
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 15:56:16 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2048.outbound.protection.outlook.com [40.107.7.48])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0f8372be-5705-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 17:56:14 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9463.eurprd04.prod.outlook.com (2603:10a6:102:2ab::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Tue, 19 Sep
 2023 15:55:45 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 15:55:45 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0f8372be-5705-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jHrzlItGfPiY0lZWzuRDhuDJOBQeguUyuQUNVoDClN20/8x1lhOESH6G9SrZIerCSRQzOD9HSaBbJALI8oNHCpKOC6Wv76TljZIFju+4rCuep7mJKATFypay4IDXWnwsn8jmAVE670fDYdHfVpWyx86AO6K7TFRZo71m/Djkfqcv4fDC0zb683PRilZLiHn8zZcM6pETfyFoOA7n7vbd4Bv2sWUmiSV9U4RTKcGMbdW+eBDFBDw7OOy7s0fCyIOAX8wVm5Bkp6wF81wppbky8Jh+o31BPIoDhbTW+YBkO6E3bpG2wWIhpWGy/9L0mNLfV5GWDoeXlEIPY9adF5TytQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=p0ZPEyw7aeGQ7+pn2Et2gUiel0EI+zK3LZNm12STbD0=;
 b=RYOLRwlvHSltC3kd2i80UHIVL1SnodBhJNMXOKajFxNtemaliMrNFarIHsAamNHyMqjmO6df+2w2ePtJX7unPQp5uZP575GvRFQJeClMoqfKPhDYpGSyMRrKcSxx+Aiqcm1ErRQnN+cN6vyuA26ZLb8N8MQ+Jb+Slo4pR2KVtV2DRLHnMKMTsoinB1e/LGSWbWbZDZY9ceITu1DwXnMsjxQnTNbtj2JGctGUh5AE82+cAdbME1E3q1w887+F+9oVTigT1v4IGplg70Y9J5cCPUC1q+bsP/NcoR0FDmrVxKyJ2VQ1Z6Cp/c0NWVreyp1ptsnVfLEPPKzvYIwtHiIk+Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=p0ZPEyw7aeGQ7+pn2Et2gUiel0EI+zK3LZNm12STbD0=;
 b=CLf4gx8Gx3yGpy27COMQt8ToLAZLCQ/uqHVSxmFJ7VBhUKn6TBZ3UDlvf5aKIgpLdonBp05IO1XQfjVwToSm8mLmBpcsVXjQRIgUD01WmEd4fgwFDEg6Rx0KcBJPPbmCTn4erhGIbR24V9oF5F6N7qOGWmRgLgbS2c1tD9ul9a02vwFaeXTwtoBuD6bvgBuu7h1NTKCEzhVPkKwkh797VXzf6QmgAEzmogeBxFlyFuLdBdi1I2uthNw+lXHY7BqSPTj2GcKvZnAbqccmLvLZGLAv51f7Qo3S6BFLZcmt1Tyg3ndkL2eCMN6qoAhvTBXGnLa8/MDO3D3zZRSFIBcTPw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <5cf73ef3-3ec5-9539-3a29-b8535a73d9cc@suse.com>
Date: Tue, 19 Sep 2023 17:55:42 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v9 02/16] vpci: use per-domain PCI lock to protect vpci
 structure
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Stewart Hildebrand <stewart.hildebrand@amd.com>,
 Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>,
 Paul Durrant <paul@xen.org>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-3-volodymyr_babchuk@epam.com>
 <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0061.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4b::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB9463:EE_
X-MS-Office365-Filtering-Correlation-Id: 75f9ddfe-998f-48e8-879f-08dbb928e24c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	eNNo8Ms01xGdXlOwmcKza0WsdfbB8FgYElZqvieZkaQX68Hy/hnt1teqw/VRBL4mg9M//WGuGRRUllfbcO84VsUA/77XRZI+P1UZLdTC4dXVgPkIq+tHMI3qCCoDaeYXSjOWNdzuBHimU123XhKT3KBuUwNXc0hsHNYNaBiSvdRhYqTPX0S60fyGh2pLuN1qAXsTuZPa2nrqiMK+cumU1jVdVYye7rGnK3cyMZEz09ns5SGJxXGRQ43nM60Q0IXXYyhwnRS/HMY05j8fPVodgTblxTjo1QiN9x71qlX+7pygpkyPmBffPIqPtcqfD7QTyTPSpsDBzmU+qvgVuUCaspSKgWpA1ZhW8Tt2Zui5cGTgJ3Hi+t5d9rjXuboeccxvokmQjZwNodgDxUejuziyMFlQ4Loy4lRkEhbG75max9fZWvRxXEJD7zRJ3y4s68CWscOZmrvvUTvndyiL9U3cKwXPpXQjFQYfBMqmdaP3C/QP4rHHDZT1R68Fvc8a8iBsY5iyxnDiwixW6x/C/Y3QuRnixZK3ZIs0tnEUfDyjwVT6GGpQCrUEmEi2olRGxxMDwIsdlV7TIjkZwLnDOw8BMhz0hAnKj74VgY2Aq0lDhyzS/64/gXs4LxUjHSO8cZ91pEbklVPd7hpIQm7XG2Nq0Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(136003)(396003)(39860400002)(346002)(1800799009)(186009)(451199024)(5660300002)(26005)(8936002)(4326008)(8676002)(2616005)(2906002)(7416002)(31696002)(36756003)(86362001)(38100700002)(83380400001)(66476007)(66946007)(6506007)(6486002)(66556008)(53546011)(54906003)(110136005)(31686004)(6666004)(478600001)(6512007)(41300700001)(316002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ODVzRi9iN0l1SlVBU3hzSEZJNGdBSFZQcnNLMGFRSmp0UnhrZGhFRmZkNWsz?=
 =?utf-8?B?dFpuQncyT0pXZmF0MVZKa3p3VnVVTm9XNDIzNWhKeGZoUUpOVlVPRHdXbWZz?=
 =?utf-8?B?emlvcnpZNEV5UjFyYm9FNFVNRnMyVVg3MlpZcWkyeVkvZmJiNlhpZk4zZi9N?=
 =?utf-8?B?UXdRaTQ1NTcrY2pzYWJiTFFqMTM0TVJMM2tsRmRsOHV6WnlUWUxGcm9SamRD?=
 =?utf-8?B?YUxxZk9ObjhSNTZMQnJFMEZnMEV5cGo3K3MxRkFrSlBSOUt2dGhKdUh4ay8z?=
 =?utf-8?B?TnZ5dFI0VmZPcXRwU2xzRVFyMzZCQkdoRDZ6eGVHekxZWUIvYzJ2Q0toZUIw?=
 =?utf-8?B?QndSMndHNHdRRUh2dHVjVDdQTm9BUVhEME1WR0hmWGhnT2pnWTNnMExpTC9Q?=
 =?utf-8?B?VTllcU8yQmFMOWpCcUV5K3laTGFIMFVZUW51blRsT0QxVmZxM3U4SmlYTm13?=
 =?utf-8?B?YURlVFh2NkViVE1kczhkdnRvTDlNWDFDejNVcnZLNVFKTm5ON1ZRMFlmSjRy?=
 =?utf-8?B?NjhqY0FwVzZ1OS9UMktrY3Z4U3VsLzNNQXVseUZmRzJ6Q28rNkhDTHhkY2FB?=
 =?utf-8?B?dXdoZHVHWEFTWnFWOUJ4QmlLTU9PWXBQSlltWHAxRlQxUkFxU3VOdlJrUFk2?=
 =?utf-8?B?U2ZxRzJLdGV4ZVAvM1MzbmVtWDJ5cHFlYnZLMjdQOEV2MnUyQXJtbE5MK3RG?=
 =?utf-8?B?a1JmQnVvUElBN09SM1hxRjZEand5Z2NyRDBhSXlBeDl1ZWFydWNhMUp5OXBi?=
 =?utf-8?B?Nm9aYUVQaTg1QWRHOEtoRlQyaVJxQi9QaDE4N3pBOVFvM2ZWdXNzVW9wZllz?=
 =?utf-8?B?VnozdnR4cVJUSE5WQmgyd1JVYVptWlFYQ2lmczloSW5MaGoxOTg0TGRzWG44?=
 =?utf-8?B?d1VKN0MvK2lNR21peXhKTWl5b1pkQW5nSUxBWm9VWmpsRzZKWVVtSGh0QUxU?=
 =?utf-8?B?UlRUdDh0S3J1bjVuSW5Gb25EL2d4Zk1HdWVkaS9sMEhQOW1jamtYOGlVMFd3?=
 =?utf-8?B?RGN3OVZDeFBYYVVISk9hcTcrNVRDd25xYkc1TDhpTFpQNHRTS3psMXpFT0Vi?=
 =?utf-8?B?dUFMY0RkalgzZWxNME0wbUpibTdEclBrcTRCUWhFUFRuRFppSTVrYU1paFpq?=
 =?utf-8?B?akZLb05rN2t3TU5Xb3Z6RVJhdzJGWTk3Vlc1eDhYY0NpNEZuR2JKT2NVdFc1?=
 =?utf-8?B?Wi9MRXJ6UXZpNjNjT2tyUFMvUEd0MFJDNnhTZkwvSFBHd1Nwc2FRaGlOeUZK?=
 =?utf-8?B?ZndyNERQLzBxOFVJbFZ3bG9ZNzhuMnJoV2hEbUFyYi8wZ0dqQmxFQ2ZsRVJX?=
 =?utf-8?B?QzZubENDaU43VWc5Yk5iWUtDU3BPd2tyamZkWlI1NTBVdWhSeWdyT0NldGNH?=
 =?utf-8?B?MW1GWURWemtibHdWQ2RYM2lqY2ljNWJ4VWNEOVBBaklsUTFxNUNBdXNZcU1t?=
 =?utf-8?B?SUptbk1GeXd1Y0NDTndHU1BFUWE2YkxmTTFYQTVtdjQyYlVrRGFqMk5sRW9I?=
 =?utf-8?B?YUJjYmsyQ01DTFNGbEJLZ3loc21qNGkzR2VDdnBSd0NzYUcwUnJPU1Zkd2V1?=
 =?utf-8?B?VjBuNm96dDlGRWdGQ2RWV2dENlVmV0JLM1FVdEJoTWprbU1LNHZ6UE5jQkZX?=
 =?utf-8?B?M1VUL1JUUUw0WEJsZHNMb3loNmlBTi9XMTdBOWlvQmwzVlVFdFdrNHNWRjl2?=
 =?utf-8?B?QVdnUHNnUTczeDRjYU5hcXZMK2JWSmNnQVpzQ2xJYWJCTjZzYzBnN21RZXRH?=
 =?utf-8?B?bXlTam9Hc25XSHBxdElMTlV5Q1JHazBicDVsUWFyYW56Q29wMmg0VFd3cjBy?=
 =?utf-8?B?ZGM3MFVrT0g0aUZrWE8xeVR5cCtzbjg1cGVwUVZYbUpJazJhcmllaU9oSlhz?=
 =?utf-8?B?clBPR2IzTUcxK3dkT2JVWTBBamI0cERrOGg4OXFDQ01zMFFDazFqU3Fyc1c5?=
 =?utf-8?B?a1U4aDF4ME5KNnBrNVFWaUJKOEg4SnVJbExva0RXdXFGWk1GR3E0dEt2TDFQ?=
 =?utf-8?B?TVBVcUk1d2V0RDl3UFEvZXgyM1M4UW05eW9YMFkrUVB2U2Zkam9JcDJZWlZ1?=
 =?utf-8?B?L09nb2VaaWVkR1ZUQjU5aGJTY254UElkUW5uNE1lR2N0WVYvd24vWWhkZTFn?=
 =?utf-8?Q?Tp1zhws7NNLYuWDT/oZxC0zb/?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 75f9ddfe-998f-48e8-879f-08dbb928e24c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 15:55:45.0523
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 1P3sTO/sIhqkuNTDpVkcvN0hE7W9TJexGNvXaMQTW3dUw0eHx6Q5r3I7VM+NUfsvJfcKH7D/3OKiC/wKvngd8g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9463

On 19.09.2023 17:39, Roger Pau Monné wrote:
> On Tue, Aug 29, 2023 at 11:19:42PM +0000, Volodymyr Babchuk wrote:
>> @@ -2908,7 +2908,13 @@ int allocate_and_map_msi_pirq(struct domain *d, int index, int *pirq_p,
>>  
>>      msi->irq = irq;
>>  
>> -    pcidevs_lock();
>> +    /*
>> +     * If we are called via vPCI->vMSI path, we already are holding
>> +     * d->pci_lock so there is no need to take pcidevs_lock, as it
>> +     * will cause lock inversion.
>> +     */
>> +    if ( !rw_is_locked(&d->pci_lock) )
>> +        pcidevs_lock();
> 
> This is not a safe expression to use, rw_is_locked() just returns
> whether the lock is taken, but not if it's taken by the current CPU.
> This is fine to use in assertions and debug code, but not in order to
> take lock ordering decisions I'm afraid.
> 
> You will likely need to move the locking to the callers of the
> function.

Along the lines of a later comment, I think it would by rw_is_write_locked()
here anyway. Noting that xen/rwlock.h already has an internal
_is_write_locked_by_me(), it would in principle be possible to construct
something along the lines of what the comment says. But it would certainly
be better if that could be avoided.

As to the comment: A lock inversion cannot be used to justify not
acquiring a necessary lock. The wording therefore wants adjusting (if the
logic was to stay).

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 16:00:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 16:00:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604924.942474 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qid9X-0000o9-Jq; Tue, 19 Sep 2023 16:00:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604924.942474; Tue, 19 Sep 2023 16:00:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qid9X-0000o2-H1; Tue, 19 Sep 2023 16:00:43 +0000
Received: by outflank-mailman (input) for mailman id 604924;
 Tue, 19 Sep 2023 16:00:41 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Lmoc=FD=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qid9V-0000nw-BY
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 16:00:41 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0621.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ad6add1b-5705-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 18:00:39 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8098.eurprd04.prod.outlook.com (2603:10a6:20b:3ef::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 16:00:34 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 16:00:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ad6add1b-5705-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MTAGPbKYryr/qXOrlKws9QpZa0rLR8tf6/33DWbXD+j9OeYo6170KFRnxV4prQ6ds5rf/CJUM2MnDlFk5Io8PydXesDMZs+MkFSLz8GDHHujFClremoxBSJjtUajkRVrdPam8bGFvGUJOAodGsq0dVsyVuW6moIPNXT5BGQt6902XxZKv2iQGflTqFbJm/jRlKNlb9d9vlYG451QvjbqQUbHwX45lp6W8iEyFPNOn30rfNNDjMCr2lH7zVcKkc3JsiHWnbKibbIJV2I+s0gRd9hDIaGMpr5M0YLmJcaupSvGpQjVPB0TiF9bIbnRR52hVg2b4Svcs1Oh2Scd6B+IdA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GjCrAgWlyvI5Uvxzc0UklKUXmA77zIQqSDflY5FDbDo=;
 b=SXYMT14cEOYR1Y6bF3YJ0Ps0iWRZ8cGUgH3R4s87Y9ri+rO56YNiu9gP3LRvRFXVSo66SSllhMlqV7bFJKA2dk4SWdnYRInnQOaQqqAvEGRMgX5h6mCBLNwGwjCd9DcswzCfZQIW8/S8vDF2zipMMCb0pascKVL66RyNrAxJhHUZrgHgBOLuUqf6Vk8qmN2vJnZQvl/6PBto2dNvNterxqL+RMWJyxUKbn7IHVIlYZIk9351Qjp+85a1OUrMwckCRio6OU207J7Wn36lWnx6YcnNmex/rOpva121P/KW0mbtrixPk32muh+8uNOFRi24TYQxeHtT+ZmRQ2OXAW/nEw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GjCrAgWlyvI5Uvxzc0UklKUXmA77zIQqSDflY5FDbDo=;
 b=yu0owtTYGNZ/IXtY9Q0anX8Qs6kF4SBGxe+JGLYI+SMzqsBggDBih7b7sTomrwi1acHWXBRZJ1MlCjw0WZ8XvwIIKavHNwFiw1/6I3jdw8BzKWzEV75dIECo/iPRmO/M9WFL+t86DaMfbAr0C13TWKEqWsW/RZAQjl0vE0P4RMp8Ij2tY8B92zwZVC3zTcB/iTNMPC/SjlPodtuLd94u5MRsl+c3umnd5+OgwcVLUqZGFuCu8tAhjCxoyOW1oYwtNuiKi8Pjx4qUVr79MgTYOChkmg/Ffv9GZgUqfUS/8GMnSwnyE9ixTydlKMgVwc9NaQyLfEl/6q0DuwueTh6j6Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <62c98f14-1559-16c9-f070-e3e6112a6dd4@suse.com>
Date: Tue, 19 Sep 2023 18:00:32 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: xl dmesg buffer too small for Xen 4.18?
Content-Language: en-US
To: Julien Grall <julien@xen.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Chuck Zmudzinski <brchuckz@netscape.net>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <b20bdc7e-4c07-4bde-b206-4142310211d4.ref@netscape.net>
 <b20bdc7e-4c07-4bde-b206-4142310211d4@netscape.net>
 <9baf6bec-49c6-474b-a5e3-5f0473aaffc7@netscape.net>
 <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
 <ZQlHj5rjMaYj8Z4e@MacBookPdeRoger>
 <41a2cdf9-8fd1-418d-abc9-1fe4f3fd8b5e@xen.org>
 <232644f5-b0ad-414f-a4b5-03724f5ac053@netscape.net>
 <f40ce805-b6b7-46c5-87b2-3fe8c331072d@xen.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f40ce805-b6b7-46c5-87b2-3fe8c331072d@xen.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0094.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cb::11) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8098:EE_
X-MS-Office365-Filtering-Correlation-Id: fc9bb227-7368-4b76-f4a4-08dbb9298eec
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Cv/NE9Yq3y0T9k+kfYHThqMz2Ifn6r+t8AZwYhe+hUGQZUk+cuMpF/aOgE1SYHcVtEUou4sTJKX6/phoni0SvXPvcj/jq5xGzwYr2Q/AwxouoRlQ9NbeD2os1zBwsfqbXsGlcBbSIGxYSd7fO0+aeieVzroQm4cEOuVTgjDbN1oR3Aso2Vd41liz6Agrwx4T/QKnOlUxMtj59gzYfe5wDlFe2T2cJ3NhVmD5GcIRF6cxMofq3DGTi3fqmt6YEjsAB+maGXBQGGUlu6exZXIIJSIMRrshUx4fhcZrwoyfLYoGSxgYJky61T5haS320DvjH+ugaH0csWVC2UFHflCByj/hg7gqizn4lRTnzceSsx3j7aAgYOE5i1nKF4va9ZXJPnuMzvy5ik0OAnSo5ho2dhH7GBetzJ0+zqJsgMdkWHKDvR9I9tzqkvCH6Lc/3xpriISECqzwsG8Q8psaIo5J/RKgx2qGPAM/0rAqX5LvMlxvsD7OKBRoMB7vgtX6zY0D9BEQp5duisRhV0SdzLIbaumw/36m1Imt2jrg2tivP+DwmK8ZQNV8g4pwO2ck48DJsHqZJWOwJsWxqhmIedJUXjEahvG3ZBM0E8eeACRwfC68UrcAaapKQYIn3sGyohaDcEvxOgsCMLzAdQ2SP4EaGpA+QtxF3lD6tSt4Ja4qR7QqkCWFTk+hKLRIxHsGPdaF
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(136003)(39860400002)(346002)(376002)(186009)(1800799009)(451199024)(6512007)(83380400001)(2616005)(26005)(41300700001)(6916009)(316002)(66476007)(66556008)(66946007)(54906003)(5660300002)(8936002)(4326008)(8676002)(6486002)(53546011)(2906002)(478600001)(6506007)(966005)(31696002)(86362001)(36756003)(38100700002)(31686004)(160913001)(15963001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R2I2UVorYXFZK2p5VldBU0pyeTlLYjBPeGFqVUlpbk9CTUJVV2F5MHczejVW?=
 =?utf-8?B?ckhQV096eHNNVU1DcUpyemVlU2RxQ29ld0szb1FYQmthQXcvcmQrOEhoYjVr?=
 =?utf-8?B?NVNOcG16MGd5TjBBTmpHM2dkcUZoNzByR2dzcDZldW4vbVk0ZzlidXdZUHJz?=
 =?utf-8?B?T0hIQko5R2NGemVoUWI5bFR3NG9xbVlCRlVoWXV5dzArMXg3dXR6VkhVdVBn?=
 =?utf-8?B?RDdIdi93MlBUbFk1Mi9LQTd4MDhVOVhXWnJlWVlxYnNZMXRadmJFYXZISE5u?=
 =?utf-8?B?RExRZnNzRVZKYms0NVE3S0t6ZGRGaFpEbUhVbG5NSzNkdzUxZjZzZk1FNjJG?=
 =?utf-8?B?ajRoRkZsQ2psOEVQNDBMYkJMU1hodXJHWWRoYTNKT2xRL2hJSHRuZU5QL2hH?=
 =?utf-8?B?RlhyZXdOeUZJUVFsWlg1MjJhTVQwTW5ZaDJpaGFnQnpCVlAvOXI3REJZbnIz?=
 =?utf-8?B?Q08zMVNPYjVTTk50ZmZ0NkplNU5hdkd0aUdRWXJ0b2RKY3RQV3Z5V1VURU1U?=
 =?utf-8?B?MjE0NmFyeDdtV3dDNnBRa1I5ZjIxY3ErVzZuNWlsUjBkSVpud3pSa29MZkw2?=
 =?utf-8?B?dVFhQ1k0NmYzOHBac3BpWFpINDZKN3dQZ0tuWWF1MUtmdkpicDdGYnQ1RlZs?=
 =?utf-8?B?SWQ2TVhWcDUxeWpQcjdUOTlyd1RBK1ZqVWZXN1M2MWs4bEJ3NGRpK1pGSE9n?=
 =?utf-8?B?MzRsZ2x5UWdhV1NSR3l2dnVqTWFhdk9DaWlWWTJvNW85NitDTThSVmdtckJQ?=
 =?utf-8?B?NmpkdmNPTlMzZFVmdnVCbERLdjZzVFhpM3pPWFpHKzNmSkJSK3NrSm9uOTM3?=
 =?utf-8?B?MEFPeFprQ3dIamdsb0dQdEFGQnh3YkV1Vkc2RHNZTmduWTVaeWtRWk8yUklU?=
 =?utf-8?B?QWIwcDVxbVdSQSsvclBxdXloNlVBT1VkaEprZ1hYNE8zT0V1aWpWckd4OE9Y?=
 =?utf-8?B?em9WdzBXOGNrU0RYa2g2SlJxa2l5cFFlb3U5YndyMjR1Y2cyaXdVUXRxUTNh?=
 =?utf-8?B?UXc2VDVxb1lWdDNrTWVydUI0MlIwNWRFNHR3K1RHY0pmanJkWENLOFp4WDFN?=
 =?utf-8?B?VzY0RG9ERlV6RHpsL3pYamoyd0NHd0hoc3BoV1FWbTNRQ2lBVW9vdkN0c2h5?=
 =?utf-8?B?ZEVkVnkrd0RlZTRDa0JVM2QxWitETHBIaThZTlhyZktBTFlKNzhZV3hmRE53?=
 =?utf-8?B?bE5hV3VuWVdkdWptVFJpU3lMeG9mVTBZdHFBaXBaQWplVnc2TVZZZExCeWdN?=
 =?utf-8?B?NFNsY003Z0ZGeXRmMk5YWVQxczVxUWdXZGNyU1g1U1pMTW5BUGtTd3M1UFF5?=
 =?utf-8?B?bU9teHdrTkVnTWpsdU9VNzhPVlRKYkdMWVo1VktMSFpZbHVSd0JsaTFwcjVr?=
 =?utf-8?B?MEs0bUVDWHFvdktpdktGQ1V2NVpMTTNMenRTRE4zZkNMemdJaXR1ajF2Vm5M?=
 =?utf-8?B?bmJzNWRwQ1RYNzBwNDJjMzlBSm01SE5ZN0N2NW1LbnFvVjhXWDIrOWhVTGY0?=
 =?utf-8?B?NkNGamoyYVpZNzJ2TFQ0eHU2VWxzbDNUbVBJdlpadXN0TldxbzlpYmEyaksz?=
 =?utf-8?B?RUdJdHJYY3BPODNUWG51aWhWRDNiaDRaWE5QWkg1eWpwOTA5TzZNVFl3V3V5?=
 =?utf-8?B?bkhwL2pzc0xUU3BwVnRxRXZ1YlczQTMxMXJtak9tb3kzYTJlNXBsS0FFQTZ4?=
 =?utf-8?B?cElnd1RlMVh1N3luMFBZNllVeWRUaWVDWWFqc0IyZzdVczRCRVBOQnhhak5K?=
 =?utf-8?B?WHRteFpJVDBYekNtdUlmby93YlRISkZEV1g4Z3loQURhTjRHMnhoQjF1RnhZ?=
 =?utf-8?B?SHpGalZFbXFubVZJWFJQbUVjWmlzYkRod0ZEaTNzbDNxcU5NczNDT0dWY2tO?=
 =?utf-8?B?UkRxUGl5RC9YTk1nT3J0SVBRc09TMG15UFI3Um5Ca1JUaExicGVaSWc2YVcz?=
 =?utf-8?B?cXNDbEZDVWpJVkZmRWo5OTdkeCt0NjNUK2NjdkJ0Ui9LS1NLRVYyV3Q4UDQ4?=
 =?utf-8?B?bGJWRVVBOXllMmxzaWJwc1EwY2JIK1hkVmF0M2tZS0ZHQVk3RHhQZDdCcXNY?=
 =?utf-8?B?RXJweTNVbDFSQ1BwMlprdVpCQ29FelNwMmRvV2p0MDJaejlPZEpTRiswZGsv?=
 =?utf-8?Q?UavfOIx3O0v3rsYawuZUds6I5?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fc9bb227-7368-4b76-f4a4-08dbb9298eec
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 16:00:34.6828
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7NQWZNzr49GM9omwx586/nRjvTUYzy2SIXwD/1vya9LVZFW0xtMiW0cPtIrOmbcLSBF//l/FPWxqqLcGN/MXiw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8098

On 19.09.2023 17:56, Julien Grall wrote:
> On 19/09/2023 16:09, Chuck Zmudzinski wrote:
>> On 9/19/2023 8:10 AM, Julien Grall wrote:
>>> On 19/09/2023 08:02, Roger Pau Monné wrote:
>>>> On Mon, Sep 18, 2023 at 07:49:26PM +0100, Julien Grall wrote:
>>>>> (+Roger and moving to xen-devel)
>>>>> On 18/09/2023 19:17, Chuck Zmudzinski wrote:
>>>>>> On 9/18/2023 9:00 AM, Chuck Zmudzinski wrote:
>>>>>>> I tested Xen 4.18~rc0 on Alma Linux 9 and my first tests indicate it works fine for starting the guests I manage but I notice that immediately after boot and with only dom0 running on the system, I get:
>>>>>>>
>>>>>>> [user@Malmalinux ~]$ sudo xl dmesg
>>>>>>> 00bee72000-00000bee72fff type=7 attr=000000000000000f
>>>>>>> (XEN)  00000bee73000-00000bef49fff type=4 attr=000000000000000f
>>>>>>> (XEN)  00000bef4a000-00000bef4bfff type=7 attr=000000000000000f
>>>>>>> (XEN)  00000bef4c000-00000befbafff type=4 attr=000000000000000f
>>>>>>> (XEN)  00000befbb000-00000befbbfff type=7 attr=000000000000000f
>>>>>>> ...
>>>>>>>
>>>>>>> I have noticed the buffer fills up quickly on earlier Xen versions, but never have I seen it fill up during boot and with only dom0 running.
>>>>>>>
>>>>>>> Can increasing the buffer fix this? How would one do that?
>>>>>>>
>>>>>>> Thanks
>>>>>>>
>>>>>>
>>>>>> I see the setting is the command line option conring_size:
>>>>>>
>>>>>> https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#conring_size
>>>>>>
>>>>>> The default is 16k, I tried 48k and that was big enough to capture all the messages at boot for 4.18 rc0. This is probably not an issue if the release candidate is being more verbose than the actual release will be. But if the release is still this verbose, maybe the default of 16k should be increased.
>>>>>
>>>>> Thanks for the report. This remind me the series [1] from Roger which tries
>>>>> to increase the default size to 32K. @Roger, I am wondering if we should
>>>>> revive it?
>>>>
>>>> I think the relevant patch (2/2) will still apply as-is, it's just a
>>>> Kconfig one line change.  I'm however thinking it might be better to
>>>> bump it even further, to 128K.  From a system point of view it's still
>>>> a very small amount of memory.
>>>
>>> I don't have a strong opinion about 128K vs 32K.
>>
>> I am sure 32k will be big enough on my system, and based on Jan's comment
>> about release builds being less verbose, the current default of 16k may
>> still work on my system once the release is out. 
> 
> I think it is quite (actually more) important to capture all the logs 
> even in non-release build. So it would makes sense to increase the 
> buffer to 32KB.
> 
> An alternative option would be to have a different limit for debug and 
> production build. Not sure what the others thinks.

I would certainly like a two-way default better than the uniform bumping
to 128k.

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 16:08:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 16:08:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604930.942485 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qidGY-00026a-8k; Tue, 19 Sep 2023 16:07:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604930.942485; Tue, 19 Sep 2023 16:07:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qidGY-00026T-5t; Tue, 19 Sep 2023 16:07:58 +0000
Received: by outflank-mailman (input) for mailman id 604930;
 Tue, 19 Sep 2023 16:07:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=G4hl=FD=aim.com=brchuckz@srs-se1.protection.inumbo.net>)
 id 1qidGW-00024y-RI
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 16:07:57 +0000
Received: from sonic309-21.consmr.mail.gq1.yahoo.com
 (sonic309-21.consmr.mail.gq1.yahoo.com [98.137.65.147])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b02868b4-5706-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 18:07:55 +0200 (CEST)
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic309.consmr.mail.gq1.yahoo.com with HTTP; Tue, 19 Sep 2023 16:07:52 +0000
Received: by hermes--production-bf1-678f64c47b-bjrhv (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 344e1be807ae29426be548fd5113e1d2; 
 Tue, 19 Sep 2023 16:07:47 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b02868b4-5706-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netscape.net; s=a2048; t=1695139672; bh=wWrVFE7k6bF//p7lQmk9q8x+ld+1v3EgcPkuyMuy/xE=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From:Subject:Reply-To; b=PUehx6qKi6xOXbJtwJSHcPAMVMHMX635CMzReTu4kZE6yWYtd/b9nU46i0Q1O70XcJqfSu1LKG6Uajx/QowUrFRGwCvsqL5X9QCbwWF4stentBFf/IewzfIA0I03BqSkwIu0NRJjUKus+Ja66XrvAn6FaGp6jDALGBUcIj6SRAgy9aSi5c3XQ5m3MgXp9N13PzTDBug1QaQhG3uBDSYOVbcgbz4TjpnRpH2iDaxs9c0eqGydsWulOLu6Uvjh7QNOHPTMDAsXm/Pr2WwtQcbUxLcrBL7v9/efR2CY57tQVsXOM49Omx1/ll7ff5aR/+XGsavZdnuUgrzAIZSKb9ZnMA==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1695139672; bh=dXNbg+FBsVkV0/VdBZLGhhiowQx4qYOmHdJeY/WndMZ=; h=X-Sonic-MF:Date:Subject:To:From:From:Subject; b=f7jO5qV9nY4m9LJBi+0Ot5zYdzGXmJdJ3QI9RNVTMYoZEM99HYrdkT+v/b3FazZp6SNr22Bzbr2kmDuB5T9O6wJWNKi3XvNLbFla9QTT+Lu/hhBnGLg7umlxAGlkDMkUFJMk+FT8xN8PZfsE1djTPqqMvnd16/YDlr9yjBrC7eZreXnN6J9uhCS7wNSmJtA2nbRCTHk/aZzqghkkex6Ny+sza2piRk6PkWIbDM+tHxfLE0tlp3NXasX5EH+HyRLk1cT3neie4aOlyYTFkFssgGnSmNAFU1lGg+BLHPK6s9v/Ok1yxBgS3VHq4MqlX19P0ydjYBeVs+UWYuTq1oXKUA==
X-YMail-OSG: AolAysYVM1kWIsuCob8L3ckwVw_mPpdajlkWHE0Fq1bYBkrZvKeRWnCY_xr.W3m
 nt.taGDbu2CLZyTuBxOpVoaagzwjASRp8a2OvdsAkBl1IyWZAUAhV3aDKm3iBNpGl1_V0VRsC.Dm
 jesXk5G6xK8LliTBVh7nFuMETG9V3WVCDMPuwCxDsuk.KnSE9BW0YEawg08DY.gz4hr0rc1K.3hV
 rRPVmVknWTSNCJJxJvP6H6cmRUwR3uRkQKtS.h7vPv0qjerP_BFjd4Cs8QGNgeXH5ncqRZidv6lV
 tisYfbNSI6ZhQAVslkqHYACSRNYbRSSqkyS.jY1roSfcQdvHKMVJqlgJHwFJokfUA44n86vXkYV7
 PhOg3cG4JKdHiptomBC8ROmSzBt4cTAT99yX1s6NvaCePVGDjmqyZyf_H7LF63acb.iZmYs4dQWR
 wuRc.kKzL2zOIeSA5TGFjd.xblWj4RvjXaHRGdREyqvKmonklzVp_m3aeguEFC6X225j0uSmHjvd
 67cxDozrdMy1zL9nU5qcOhLjtnkDwGdcDbXoRoMko4fHhIom9bpUyIV0i9AVBkWqvc_v4O3v.yQH
 UQd497BgBMc82JECXvxxoF0ZrM8_nzepecNaAMGEOntiH5DzPM6ZXNQVrTyT5t7vAu.Etd.B5HdK
 8ukdW4H.9YA15Febm8o1b6f9y0uuFz6LRfJ8vsZt70PwXbb4XzFN8l2itet8.ChkMdZAlftN7VX1
 NLWPhj88TYnKYfIQ7RrSl_P1BKu29SsdFgbM_ukQHvcEH855hD.DDLBEUsTXG489.WTGV9qN_uZV
 ZIWSChCPj6N_9EGXLWBaSnjGPhtuX8rR_CP19x9ch6P5VQed3EOWu1jjqe6cfo.7H_MM.uWOeVl6
 iaM2TF5x4um0vknL6bmAOQ6Qf7jhFEvsw_MOR9TeOtnJS6xdznfKrNirhk0sfKS9iYTShc3vA_Xg
 R7esWn_foWvez9DQMMHgmNiIeoYN0cOMr4zevJybgksTSdJih0NpP5dUPJQuUUkhR.pmGgEuZzw9
 A2nS4ReqFzPx.qnbzHwCUygsfRQlIuFBo9_pbglTLNTTNPobFsyepFe9AiHfB6Prp8m4eXMW0PrV
 7BDBeQM1QSBhLUlrsI8OlmmHm55fL2xx2tatwLgT7MH5l1zCAdUcR23KUSWUu4AU4TalUFwTR6.b
 fzcjqvwW7ll_i.zhcXuXI5Uj9_xi_t4qvIauYot6rna5HaE4baChqTjawSt3bhCqe17W4hOHxRlf
 d0ZldYsNYV9Iac5z9G37iYWIs4OpuM7YQyCqAR9XijMgE_m5JY_AGU5mpOBgktFLbbRLE36KW47K
 WFeDEEHlEB145tQzXbFrRvrI9Lkl7jBN51syKRsPX8u7nC4LuuFzcWMchf98YhAIjtogflTkqtaT
 9TaLcyBYebpshyuEVfiNA5Efzr9Zkxyn1_Y3JThxmOIvQ0tzDWSC0aBmOgGjaFblxBV.4sl72RhJ
 gHteu6PBE9WeMSGfP00ebKBZakoiocDQ4Qs16tD2sOwejoUS23j7Et9cnlwTUMvNrjBeF6P7nKXB
 xsxCwZjhkND_tvnS1gEQSAyXQlPLd_cWLuFKkw_XdsIr8Ey.KiWsGL_t_T3y_hbEAZxchLVtm8se
 mg7sgTmWIlK89KhfYyQxzkSUJRI7iS3z5wq0_dXZ60LuzNB61Ba1I5cv.k.yfTjgJAwqlBLjqGGZ
 RrXkgqN1kSgVvHarhVwlFQAtSaJtGD.qDfFZjzNCH4OdQkjS6HWv2YjgkLXutbRoOAArFOzPHUY1
 1rp0sMyOKUO6dU3btMddEZeZUr1rb9DMCEk8xa_28TtbN2xdiN3ZdjoaVnnWnYJjSG8a33CGG4Yq
 rIpMudvEMaEWOiKquM.dXvEkbuIMO523Ak5hthgRKj1JpCwkSTSVcxHzC4zZnwf7nJRKJYitxIQm
 hQsC7XF9GBiVz94yD1wW733Otf8Q6oRJShNcyulSYFpERYx5VRI8AvwfrHvStc2zpMF3xsUyLT2_
 zsQAy6I_IWDxRVlwPZ27VZblfvEHNPq0rXs6DHloJOS9Ixz_S4BsAcp3L17am2AJnF0s7.gk1jYL
 8j2C_jiCOfCTIYVziGtweqr4539wiEzaDjNgUyaLbDCTjBBSlZVtrLzQAOio5tUdkrl_VTgJIP9t
 uejeGHu3sb1G4Ror4K_pJCBjEmTt6mXW.H.ojD2gLLlvvvbleZYhR8F22RjXPtnb57jKyXXso6..
 jSJMsFXNLQ_beT4VQUyhiIRTH4FfB0A--
X-Sonic-MF: <brchuckz@aim.com>
X-Sonic-ID: dafd4106-399d-4e8d-a4ee-9a93db7a99ce
Message-ID: <307db0cc-f31c-40e6-9f91-cbb83298f04b@netscape.net>
Date: Tue, 19 Sep 2023 12:07:45 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: xl dmesg buffer too small for Xen 4.18?
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
References: <b20bdc7e-4c07-4bde-b206-4142310211d4.ref@netscape.net>
 <b20bdc7e-4c07-4bde-b206-4142310211d4@netscape.net>
 <9baf6bec-49c6-474b-a5e3-5f0473aaffc7@netscape.net>
 <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
 <ZQlHj5rjMaYj8Z4e@MacBookPdeRoger>
 <41a2cdf9-8fd1-418d-abc9-1fe4f3fd8b5e@xen.org>
 <232644f5-b0ad-414f-a4b5-03724f5ac053@netscape.net>
 <f40ce805-b6b7-46c5-87b2-3fe8c331072d@xen.org>
 <62c98f14-1559-16c9-f070-e3e6112a6dd4@suse.com>
From: Chuck Zmudzinski <brchuckz@netscape.net>
In-Reply-To: <62c98f14-1559-16c9-f070-e3e6112a6dd4@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Mailer: WebService/1.1.21797 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.aol
Content-Length: 3179

On 9/19/2023 12:00 PM, Jan Beulich wrote:
> On 19.09.2023 17:56, Julien Grall wrote:
>> On 19/09/2023 16:09, Chuck Zmudzinski wrote:
>>> On 9/19/2023 8:10 AM, Julien Grall wrote:
>>>> On 19/09/2023 08:02, Roger Pau Monné wrote:
>>>>> On Mon, Sep 18, 2023 at 07:49:26PM +0100, Julien Grall wrote:
>>>>>> (+Roger and moving to xen-devel)
>>>>>> On 18/09/2023 19:17, Chuck Zmudzinski wrote:
>>>>>>> On 9/18/2023 9:00 AM, Chuck Zmudzinski wrote:
>>>>>>>> I tested Xen 4.18~rc0 on Alma Linux 9 and my first tests indicate it works fine for starting the guests I manage but I notice that immediately after boot and with only dom0 running on the system, I get:
>>>>>>>>
>>>>>>>> [user@Malmalinux ~]$ sudo xl dmesg
>>>>>>>> 00bee72000-00000bee72fff type=7 attr=000000000000000f
>>>>>>>> (XEN)  00000bee73000-00000bef49fff type=4 attr=000000000000000f
>>>>>>>> (XEN)  00000bef4a000-00000bef4bfff type=7 attr=000000000000000f
>>>>>>>> (XEN)  00000bef4c000-00000befbafff type=4 attr=000000000000000f
>>>>>>>> (XEN)  00000befbb000-00000befbbfff type=7 attr=000000000000000f
>>>>>>>> ...
>>>>>>>>
>>>>>>>> I have noticed the buffer fills up quickly on earlier Xen versions, but never have I seen it fill up during boot and with only dom0 running.
>>>>>>>>
>>>>>>>> Can increasing the buffer fix this? How would one do that?
>>>>>>>>
>>>>>>>> Thanks
>>>>>>>>
>>>>>>>
>>>>>>> I see the setting is the command line option conring_size:
>>>>>>>
>>>>>>> https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#conring_size
>>>>>>>
>>>>>>> The default is 16k, I tried 48k and that was big enough to capture all the messages at boot for 4.18 rc0. This is probably not an issue if the release candidate is being more verbose than the actual release will be. But if the release is still this verbose, maybe the default of 16k should be increased.
>>>>>>
>>>>>> Thanks for the report. This remind me the series [1] from Roger which tries
>>>>>> to increase the default size to 32K. @Roger, I am wondering if we should
>>>>>> revive it?
>>>>>
>>>>> I think the relevant patch (2/2) will still apply as-is, it's just a
>>>>> Kconfig one line change.  I'm however thinking it might be better to
>>>>> bump it even further, to 128K.  From a system point of view it's still
>>>>> a very small amount of memory.
>>>>
>>>> I don't have a strong opinion about 128K vs 32K.
>>>
>>> I am sure 32k will be big enough on my system, and based on Jan's comment
>>> about release builds being less verbose, the current default of 16k may
>>> still work on my system once the release is out. 
>> 
>> I think it is quite (actually more) important to capture all the logs 
>> even in non-release build. So it would makes sense to increase the 
>> buffer to 32KB.
>> 
>> An alternative option would be to have a different limit for debug and 
>> production build. Not sure what the others thinks.
> 
> I would certainly like a two-way default better than the uniform bumping
> to 128k.
> 
> Jan

I think for release builds (production) minimize it as much as possible without
losing the less verbose logs. For debug builds, make it as big as needed for
the convenience of developers and the more verbose logs.


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 16:11:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 16:11:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604936.942495 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qidJT-0004Gw-Pw; Tue, 19 Sep 2023 16:10:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604936.942495; Tue, 19 Sep 2023 16:10:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qidJT-0004Gp-N3; Tue, 19 Sep 2023 16:10:59 +0000
Received: by outflank-mailman (input) for mailman id 604936;
 Tue, 19 Sep 2023 16:10:58 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ezs9=FD=citrix.com=prvs=619432e5c=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qidJR-0004FO-Mk
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 16:10:58 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1ab15c48-5707-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 18:10:54 +0200 (CEST)
Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 19 Sep 2023 12:10:50 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SN7PR03MB7036.namprd03.prod.outlook.com (2603:10b6:806:32d::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Tue, 19 Sep
 2023 16:10:44 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023
 16:10:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1ab15c48-5707-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695139854;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=BClnk62efXhUX9q/EK0ASo3cPTglOlJAbi2useegzE4=;
  b=V8BCUvIqaRKidTnnJgUUKmzeLVNdRKnCWcTtOz7Jl1W586dVWYD/zz0H
   rb9tSwEiC7vj0B5ht+kxxddxHh3Epr8EHoJeDbWjeLYhinfMxCiwDYUzb
   RglLFMsFM6cO0ve3IcgmghTsQ8nfexkv2fVpyvemG7PkL9N+oMUoryiB/
   4=;
X-CSE-ConnectionGUID: BzNkNXrFTr6ZneI5QFn0Rw==
X-CSE-MsgGUID: Qegpk4p7Rom3qekOlnHP/Q==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 123533925
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:0gkVUqK39ta6isPGFE+R6pQlxSXFcZb7ZxGr2PjKsXjdYENS1DcCy
 2IZX2+Caf6MZ2L8LY1zadyw8BlU7ZCHn98yHQVlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrZwP9TlK6q4mhA7wVvPasjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5dE0dN0
 8wCBgwXMCKFisPr+Zy9EtNz05FLwMnDZOvzu1lG5BSAVLMMZ8CGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dnpTGNnGSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv23bKUxnKhBer+EpWB+/FygwGLmVYUDUYPWFicpf+ZsgmHDoc3x
 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8U49QWMx6z88wufQG8eQVZpeNEg8cM7WzEu/
 luIhM/yQyxitqWPTnCQ/avSqim9UQAfN2QCeCQHXyMD7sX4q4grg1TJQ8oLLUKuptj8GDW1y
 TbaqiE73uwXlZRSifX9+k3biTWxoJSPVhQy+gjcQmOi6EV+eZKhYIurr1Pc6J6sMbqkc7VIh
 1Bc8+D20QzEJcjlePClKAnVIIyU2g==
IronPort-HdrOrdr: A9a23:LDear61V/fRYaMGDs9j3dwqjBEIkLtp133Aq2lEZdPUMSL3lqy
 iv9M5rsCMc+wxhJ03I+OrwSpVoJEm3yXcb2/hoAV7PZniEhILsFvAe0WKA+UyUJ8SdzJ8n6U
 4IScEXY73N5BpB/LzHCWGDcurIq+P3lJxA8N2uqUuFOjsaDJ2IgT0JaDpz0XcbeOCFP/cE/V
 anifauzlGbCA0qhqXSPAh3YwGfnay7qHusW295O/du0nj/sdpg0tDHLyQ=
X-Talos-CUID: 9a23:akJE+G1WGXZ+prwmR1gthLxfMNIDcVvt1lnsORGKD2tIFYS7Tweq5/Yx
X-Talos-MUID: 9a23:OxEKzwtI628RqcIRq82nvTxtLMQ0+/uUD0VWiJgFnM2CFRQ3AmLI
X-IronPort-AV: E=Sophos;i="6.02,160,1688443200"; 
   d="scan'208";a="123533925"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WyU2AqH9iv+/bS58sgy7/hfQGJK8dZmeZ3Pn8Y6gk6U20T9sYBzAwtITprrzXuJMd2D7yRW1Ty6Gdj2+0HLQSF6ld8eXFO9cqFmTio5X+dW6LFtB6TbvknThtZ61e6GMQID1YypV1LqzAneVCw1WHu6LqPJ7XrJ7o++Tv5vK8q7V4cGHATdzzVqgPo2zLVsMhQnKWBvcZQG1Oxm785bQZlUpxWD1Nq01AFdmlTkG7L35b0LI/hmnapc509XuhvY40QGneKDyzZtBtFGQipwfGbNkfOawW3ET38k88g1xOg90erEt63RYVxcySS5b+cb1zASZDt8Y0JN64D3X4YT+uQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LzB52rPHSHlGYQSwoPjilvSJKKIzILBLeWefDBCTDgQ=;
 b=GvbMSMX9dSczPEWQdIWq9NNqUYqaxUgN/r7/wbi8XUPg0E+SgF2H8LfFNlvupmMkHcKu6too6wKeIb7JBX8E2y66zsAFB1SPe74BHxm/QMkPxOUvtHddxqndpZ8jxIwSvXWo8baLWintJQV4wEyBjjdYWVub50EtJK92ird9SwA3oQ4N9++7B92yphTtyToxF8eqAqXgGWQIp5Io93aeLEr+nECdgSsl6xp5BoMIoyW+SJW+yNSIHMctoU0u+l9TiUac3ja8bPjJHFAROW/+lDvsk9ed1lMBiLgGK7OvnipS2WWMp41MCgDuyu1i3vTAYvnLWFA5xH4LoKJ0s2y8RQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LzB52rPHSHlGYQSwoPjilvSJKKIzILBLeWefDBCTDgQ=;
 b=irsXWkrL05EKrMkl09yaVb/TxaDMu1lRuYnqKtlITYETNRmWFAM2lgXZLOInsktoHSCSQTknSe25jw2R6Lsb6FP1eH+lWM8g2fKwG+x/BXDQ9QRd6EkCf9Vz5dZZ2lRwBzBf6fHDX0bJtTgYjNnrVI5TvCIkfNzCVXG28h4x7uU=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 19 Sep 2023 18:10:38 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Julien Grall <julien@xen.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Chuck Zmudzinski <brchuckz@netscape.net>
Subject: Re: xl dmesg buffer too small for Xen 4.18?
Message-ID: <ZQnH_mbXgiqLFX6T@MacBookPdeRoger>
References: <b20bdc7e-4c07-4bde-b206-4142310211d4.ref@netscape.net>
 <b20bdc7e-4c07-4bde-b206-4142310211d4@netscape.net>
 <9baf6bec-49c6-474b-a5e3-5f0473aaffc7@netscape.net>
 <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
 <ZQlHj5rjMaYj8Z4e@MacBookPdeRoger>
 <41a2cdf9-8fd1-418d-abc9-1fe4f3fd8b5e@xen.org>
 <232644f5-b0ad-414f-a4b5-03724f5ac053@netscape.net>
 <f40ce805-b6b7-46c5-87b2-3fe8c331072d@xen.org>
 <62c98f14-1559-16c9-f070-e3e6112a6dd4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <62c98f14-1559-16c9-f070-e3e6112a6dd4@suse.com>
X-ClientProxiedBy: PR0P264CA0126.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:100:1a::18) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SN7PR03MB7036:EE_
X-MS-Office365-Filtering-Correlation-Id: 75acf3f4-3d86-4001-ca13-08dbb92af9ff
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	S+vJQgJ7/T99P0+9DYOp6y/K4YD76VsrSxsDMjrwr9DVLKRDA9wztjNikddMzrU03SRdRttN76j+ffFmAZ7XWPvCs56MRo4r5swcPkpR3MmLGtYBxqISbRikVlAUkNaLyalCc4niZ5QtHpWb0GncxhqVSL2lYgUez16fkpLMdwwgfl7NRwTTYNhT/8B8z2sEkjNGoTo/fpfh+GG26KVe9E6BjHca34pxWkP4hpHECsarvDUkIIg4Ypl8LubSTKpwvbUc+PQCYxQiGCFRExeqxGfV3WzDo0di/xAmqTWe3lF/W8l6pqCEYOJ54JyGSa27QBWPW9YXXd50m7BGA92EEwUTZqIu47DX+Vu/m4oP08P31q18C6M8+fZLfkLDpzPScDcsqvIEZ7hjniQw1Gr5ae8II8c0tT3XdTQg59C6rNFmeDaSKw9cSBvlyav22pCpeOdq++jDrK4nvUi7tXa2isdG6Kf5G3UPzT3xaJ71f5jgrSguF99QDgAVn/9HNIcyIxLU0lP+Kvqsry0Ot0uOf56f+GRl2t6aoxdMjitfrIZYkZ1J/5H2AU4zOEHJXa/18q3exLCgI5KwSkQR1TIBJyHMeA/qBeQG5iAvQ/4LmZyblz6SeUgY2kGReFmPnTKm
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(346002)(366004)(376002)(136003)(396003)(39860400002)(1800799009)(451199024)(186009)(54906003)(41300700001)(66476007)(66946007)(6916009)(316002)(8936002)(8676002)(478600001)(9686003)(6486002)(6506007)(6512007)(53546011)(6666004)(966005)(4326008)(83380400001)(26005)(33716001)(86362001)(38100700002)(82960400001)(2906002)(5660300002)(85182001)(66556008)(160913001)(15963001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RTBpQW95WWpra0JWT1JvRlpPajdYeFlwK1RrTHRBb3lRVDI3bW9YRFpYV1lu?=
 =?utf-8?B?S2NNV0ZpNWhDMFFZRTF0L214M0k3SDQ3QkowY3FFOFpCTjVjVk1icG1aQ0t6?=
 =?utf-8?B?ek1LMkgzZkhpZWprRDk0Uy8xeFFoczhXOEwzbUgwMENCUEhrWkRVMmMyOWZ5?=
 =?utf-8?B?MmFQd1paYVVqdGF2SWtkeEJOSUdOcXRRT3liclBoOUFRaUliZzkzY1JTK0wv?=
 =?utf-8?B?R29GNjE4UE1DbG9ITDBTQzdaQ0hxZjBaSXBoTkw4S2RWYjViMXNTODNMczIx?=
 =?utf-8?B?QzZvKzVBcXdEc281QXNTaEFpYzBScFNaYTdrU3kvbXk0clcreHc5RlNXMmto?=
 =?utf-8?B?TzRzM0dLWFpkOGplLytmeVJMZUtYWlFZckkvZDZUbkdXd1R6ck1reFdjL051?=
 =?utf-8?B?NDNXVVREaHpjQVFQK1lPcHIxNThrWFE0VlluWkRldWNVb1JGSHI5UExyMEdV?=
 =?utf-8?B?SGY5SXhFeWRFV2dIQWhSaU5sek9PRVRVdmRrRWFmRlRoRUFOZE5rRUNXWEJu?=
 =?utf-8?B?RjJkNXgrUDhabmltd1R0clc2N2ljTVBWcUE4cFhDcGtTK1FWVy9mek5LQ3du?=
 =?utf-8?B?cVBDcVg5UDFVbnF0ZEZiVWNnQS9oR3I5WnpWK3BsSHJ0MFUrUDUzREtGVEVC?=
 =?utf-8?B?dWhGaVpacXo0K0p1UXdrUFU4aktVMjJ3RUVFUkJwWGNHVVNJZnVLYmkzQW5O?=
 =?utf-8?B?QkovYU1heEdCdXdvNXRnYVBKK2FTNFBLSnlKVG9BcHNxV1VXR3BLTTdPdzJW?=
 =?utf-8?B?dC9GRzM5OStub2x2b2NUTGNGOWZIa1dGL3N2VThRZTBwL2JiRFE2UUJJQjY3?=
 =?utf-8?B?SnFCOFVITGZYU2VleVNSVHYzOW5kTnJycFd4NlhGTnAwa1hJUVlCTkU1L2pm?=
 =?utf-8?B?bkRKT0p1ZXpCSzU5Vk9BTFlORjAyU3lvT0N3aUp5WHl3ek0rOUQ5Q3RpREph?=
 =?utf-8?B?Sm9SbzFsRERreXF1T0ZVVUoxNG5Oc1NBZlpsSE1NbVNFT0RRREM4TitjSTNl?=
 =?utf-8?B?cEk3a1NwVGlwNEN5aDQyYy9Hc2F6cG0zSEN3TXg0YVRoNFpvRm0velV6VW5Y?=
 =?utf-8?B?c3Vyck1CUWdlS3NXU2lrdWhSays3MFBQTW1uQ0c0WEVTcHFVNmFXUXN4VnhH?=
 =?utf-8?B?NTIzZEhtMTNLVTFkWTNrVituR2tWZFpZQUtMSEFkMHRLQzNUR0haR3kvSS9R?=
 =?utf-8?B?Wmdqc2tscjBJR25URDhYOXJ3U1hUNGVUOTV0eUMxcG5XNklpYVJWWk0zeVJM?=
 =?utf-8?B?cUtJMnZkbFVTVndjQUY5am84VmdjSEowbXRnOHFzbDB2RG5EbXBEYlYvdlR0?=
 =?utf-8?B?WG1DU09QR0gzLzc2TG1sWTc5OER2d0lqTjdodzZZM3FwZ2UxaWp3WXl6NUZF?=
 =?utf-8?B?S2h4OWRpbWdSL016SEFZUWt2VkZkV2c0czh1eW1GK3ljYjBIeTltaW5yUWlV?=
 =?utf-8?B?Z0RyNXBhMGt4RVZEcEYzejNIbmZEZHpNUU9aQ092TWx2ajRhZFpoUGJ4R0JV?=
 =?utf-8?B?WjJUZjBXRXUvV1VhT1gvMmlDU2VsM1lUZDczOFNyZnBrNnJYaDNueWxVWjBt?=
 =?utf-8?B?OGk3ODBsQVdReHZSaTRwUGYvckVlS3NkNHhTTkdvUzl4WUlWK1pYb2NseVZF?=
 =?utf-8?B?U3doQ1NUdXRVcjUyczUxcUpWVFZtOElmYkYzVGlyWk51VVhaWFk1V21DNzJX?=
 =?utf-8?B?QmZlSzlHOHZUL0xrRU56OXNtRlVYdkpVSnNTbnRMSXZlZG53ZmZCTUIxUHQr?=
 =?utf-8?B?WGgvRUFYWCtIVW9tUWZ1UXZKQndnMXhUbk5qMU5IODE1NzlhdWNJMmlkcmM4?=
 =?utf-8?B?WHArTUtwMHNId2w4Tkdvdyt4bmlQeGlxdEhicDhDNlVQcGsrVWE0bUVET3ZI?=
 =?utf-8?B?K2U1Q01HMXRDM2JCcGRQSUhFR082OFJyUEp5T1A3T1lXcEhrWG0xWEpsQlNQ?=
 =?utf-8?B?RGJsanJ5eVRHMk1XVXIvbDgyT3NmeDd4T1gzN0xCSkJad0pMYkg1ZkZFb2Ra?=
 =?utf-8?B?YksxUzZvVDRTQTNnOXV3NTJ1QjlHbjYxeU1mOTFaT3FPNjFTQmgwend6SHEy?=
 =?utf-8?B?TUlmbEFUYUoxM2VMZlZxZUJ6ZFNsYnhZY3hxdlVORDhsZEk4Q1BvVm8xK3lG?=
 =?utf-8?B?amJaNEpwQ3ZaUTEvZmhnQ212UWE0aFRJVmtFdG9qcFRsV04vOERPbjFDUlFQ?=
 =?utf-8?B?bGc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	xkltK+Aa5LXAKtL0pBRw5ZwTs1x8cKzqOGg76WJi9XXrBS8SYOK4FdGTw0DydWUkcFODtapJ63uo4O8UKScjC+C9Rxdc4XsIf0Tgdbi7XEc+OgB+9FjI2B7dJi4FigBkph67kifBPPuuZ9EZg6U49Wzr+jSYO8ytp/mvNEK4uIV7oCDxXP5WPtuWQZelfK3jUhPYv4erLkaHyiuHLMBimWCYRfGWq/CJpEc1/VGq16dB3eeCE0KLNF0zig2pE91xzYcU7R/pLTWwlpK9cv5y/aaG6B8zvPYO1FixRX70Xq4JmHIbTn4oHkDuCwPqXkh7XY/PZVAYJ8i9+VgK3MCBCEEFgl5K7EVwyP/tjiY1vPZG+UMM1NWXvFdooos7SFcxbrTjIbSG8SmcE1NYJ8X6NgACjOlHc/Lin8Eio3sUKUxwsB8B72YqlUEGYfOAirmk5tp/PcezMlemvvd4H8GwsF14VmmSp1zciIsV7qkPU/gidbDzNdtqRvxrdYInu8YLd4fCZyEafXzSQxix891lKvCcR8iBbC4of5MS9SKsHI93kod32kTyMf2ozXTITriDBdkZzxc0UP6UIizfnG/+Z9A0L5GXYFmA4ACegKcQWBp/f2TI1dBjwe6tXVSPutRadKyDLZw1KByPk+4mLpfUQeID9QiNg6GK3S4OOvYnJOw+PJSfJLXBBrKp8asjBoPuPLdXF0lyhkhILmQ4jtPVD0YE9WDFmTHHtz7+P2018oLZ0C4FfcjTP+T5m0Z0FAp4F+WAlDRwnGfmX9xd91NuouLMIeHY8MEpambYKF7pl5lvOqYRfVGY3ppmJD/9dQj22GoyCdSq58ZbJD6R6rekbJMTE7Sgf4e13wtmEzLsPqI=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 75acf3f4-3d86-4001-ca13-08dbb92af9ff
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 16:10:43.9632
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: L5g1gB+V7iqpUp5l8yDbT2AbBRw9GoDPFVNkhdUcNMCZ/bNWyhvBkErkiYQ0E5xZUHqAUzcViu3SiZ/pZiPOOA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR03MB7036

On Tue, Sep 19, 2023 at 06:00:32PM +0200, Jan Beulich wrote:
> On 19.09.2023 17:56, Julien Grall wrote:
> > On 19/09/2023 16:09, Chuck Zmudzinski wrote:
> >> On 9/19/2023 8:10 AM, Julien Grall wrote:
> >>> On 19/09/2023 08:02, Roger Pau Monné wrote:
> >>>> On Mon, Sep 18, 2023 at 07:49:26PM +0100, Julien Grall wrote:
> >>>>> (+Roger and moving to xen-devel)
> >>>>> On 18/09/2023 19:17, Chuck Zmudzinski wrote:
> >>>>>> On 9/18/2023 9:00 AM, Chuck Zmudzinski wrote:
> >>>>>>> I tested Xen 4.18~rc0 on Alma Linux 9 and my first tests indicate it works fine for starting the guests I manage but I notice that immediately after boot and with only dom0 running on the system, I get:
> >>>>>>>
> >>>>>>> [user@Malmalinux ~]$ sudo xl dmesg
> >>>>>>> 00bee72000-00000bee72fff type=7 attr=000000000000000f
> >>>>>>> (XEN)  00000bee73000-00000bef49fff type=4 attr=000000000000000f
> >>>>>>> (XEN)  00000bef4a000-00000bef4bfff type=7 attr=000000000000000f
> >>>>>>> (XEN)  00000bef4c000-00000befbafff type=4 attr=000000000000000f
> >>>>>>> (XEN)  00000befbb000-00000befbbfff type=7 attr=000000000000000f
> >>>>>>> ...
> >>>>>>>
> >>>>>>> I have noticed the buffer fills up quickly on earlier Xen versions, but never have I seen it fill up during boot and with only dom0 running.
> >>>>>>>
> >>>>>>> Can increasing the buffer fix this? How would one do that?
> >>>>>>>
> >>>>>>> Thanks
> >>>>>>>
> >>>>>>
> >>>>>> I see the setting is the command line option conring_size:
> >>>>>>
> >>>>>> https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#conring_size
> >>>>>>
> >>>>>> The default is 16k, I tried 48k and that was big enough to capture all the messages at boot for 4.18 rc0. This is probably not an issue if the release candidate is being more verbose than the actual release will be. But if the release is still this verbose, maybe the default of 16k should be increased.
> >>>>>
> >>>>> Thanks for the report. This remind me the series [1] from Roger which tries
> >>>>> to increase the default size to 32K. @Roger, I am wondering if we should
> >>>>> revive it?
> >>>>
> >>>> I think the relevant patch (2/2) will still apply as-is, it's just a
> >>>> Kconfig one line change.  I'm however thinking it might be better to
> >>>> bump it even further, to 128K.  From a system point of view it's still
> >>>> a very small amount of memory.
> >>>
> >>> I don't have a strong opinion about 128K vs 32K.
> >>
> >> I am sure 32k will be big enough on my system, and based on Jan's comment
> >> about release builds being less verbose, the current default of 16k may
> >> still work on my system once the release is out. 
> > 
> > I think it is quite (actually more) important to capture all the logs 
> > even in non-release build. So it would makes sense to increase the 
> > buffer to 32KB.
> > 
> > An alternative option would be to have a different limit for debug and 
> > production build. Not sure what the others thinks.
> 
> I would certainly like a two-way default better than the uniform bumping
> to 128k.

It's not just the output from Xen that goes into such buffer, but also
the output from dom0.  Hence making the decision based on Xen release
vs debug builds doesn't seem reliable to me.

Again 128K is a trivial amount of memory on current systems, I'm quite
sure 32K is already not enough on some of the systems I test with, but
anyway.  Feel free to pick and adjust the patch to 32K if that's the
only option, in any case it's better than the current default of 16K.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 16:21:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 16:21:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604946.942505 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qidSz-0007b6-Nu; Tue, 19 Sep 2023 16:20:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604946.942505; Tue, 19 Sep 2023 16:20:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qidSz-0007az-KY; Tue, 19 Sep 2023 16:20:49 +0000
Received: by outflank-mailman (input) for mailman id 604946;
 Tue, 19 Sep 2023 16:20:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=iEDo=FD=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qidSx-0007at-Kj
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 16:20:47 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on2060b.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::60b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7bc430b7-5708-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 18:20:45 +0200 (CEST)
Received: from BL1PR13CA0300.namprd13.prod.outlook.com (2603:10b6:208:2bc::35)
 by MN2PR12MB4157.namprd12.prod.outlook.com (2603:10b6:208:1db::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep
 2023 16:20:42 +0000
Received: from BL6PEPF0001AB57.namprd02.prod.outlook.com
 (2603:10b6:208:2bc:cafe::9) by BL1PR13CA0300.outlook.office365.com
 (2603:10b6:208:2bc::35) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28 via Frontend
 Transport; Tue, 19 Sep 2023 16:20:41 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB57.mail.protection.outlook.com (10.167.241.9) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Tue, 19 Sep 2023 16:20:41 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 19 Sep
 2023 11:20:41 -0500
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 19 Sep 2023 11:20:40 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7bc430b7-5708-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RqfLgmJJF2mw2I9RWxXYeNV1inCX/TxBXfbW4VychdQp9xuGsCpDI7bXi2kU2mkXphITpgAIL3kBVSZDOcTGkRhvFJAsTbOtK+n0izE3/C9lJ5/okS9lGwmzgjhAwK/vfDJSxXOg0TegsUh5IxWqZO8vkWI+bRjLxyAbQokqxFlCfZEGfrK9xcCtPCOxf5SkpTrXMAU1smO/hAc1ezu46pEaSO+iTQ9RzWUHPmjoEe/b+qC00Ly3AnHK39sJ1Q/R2hAjKB9YlWaVPpr/nNZJv1xfI4iK4vdcS84gAPwbJqurrwIBjvf6qfSxfKSTm0yTwZo7wpX8iH7+xmBMA2DjZQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hCFtHw+l00lMpqOWl4dOGG1vK2c6cExOe765SyYgVIM=;
 b=AjzOg9YVEhy9SOk5D1CPmMfpsg3NEmOpfprUEF1S02eU4RH/d079KyWlRxw5dtuCvtRd7uipMRWsl2kWvMOf+tCvxl5qmIWTSHUuk70amsqqr81BQkUhz28KMxTtXDOGklAk6vkoFWSnYZ2zXigshnJw0lHS2/Sv7rmxyWUib8tdvizWRGaiKdOekjjCneV5YA32IdDXFlxJa/uISRCst5N2qLmuUlmElbk/PdJhvjmnylqbPoqONhIgonWAvRySqS7MA9bKdZDCzIN2GFuihtUlWK6yN9+dQkpGwE2bhji8fSCRJrDA2EIc/pSMSmstEkB8aQoOa93hl1pKhDa72w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=citrix.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hCFtHw+l00lMpqOWl4dOGG1vK2c6cExOe765SyYgVIM=;
 b=EqeQ25lY0kggJ+yQu/gl0JU4xNXs8CGhqmAYikO+cuaqIqDXcZW589alUiUjJpfGRFEbME5/gCmax4WrkXUTZCXdUpfUa1/LkC8714PFpMDbAVuGG4l1FVs2sWrLkFTfWBeopVLKVMQSvum+yONjWTR/hCT376E8Rb01C/bNDes=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <98b8c131-b0b9-f46c-5f46-c2136f2e3b4e@amd.com>
Date: Tue, 19 Sep 2023 12:20:39 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v9 02/16] vpci: use per-domain PCI lock to protect vpci
 structure
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu
	<wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian
	<kevin.tian@intel.com>, Paul Durrant <paul@xen.org>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-3-volodymyr_babchuk@epam.com>
 <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB57:EE_|MN2PR12MB4157:EE_
X-MS-Office365-Filtering-Correlation-Id: 333c0733-536b-4dae-249f-08dbb92c5e85
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dmFaa5N3usYbCwSU6yjO6kIpCNd4BCdZPA+hNHAqYeTXVk+5DCY5f4MjUIfLrJ26NKMfrDE3sNKWVGPTV1E0PAR7GXHP6XDK8MNJ28BYqPUhp0LSbuEjF950ORmARYqIZlioEzb2xaaj0C1sW33s9diyb3v5UtVXeyaOwMTIfjlKT+TKCiovACgudvtYAcnmCmY1DhtTInT197aCOlDMf484WDpc9LZRpD72kYKXZY47lUKfHvFUhIsObdRBxQOt3Q1MQhQ40Q0m/DjaAsZzHuZJB/HGrCbNoFLQsAG2Ae9gpT7yQExeKBJKBwPGS7v+4on1ckjso0EBY+GxVm5U0wqR8vbx/JTOTg3O3TDw29uYGTdQZQhRTxjdtJ4cpPObH99AHLz94BXJmbu+dlSElpYxrB+Nwz3QU2fkPwxqkJKQ+McPHVv4vkmzgqx+k/qGtJ8dgql1oKS0knqKs6rJxNHxVLRDSeg4OA9ML7StHcI8LQ997tosLuOofeAKKCJGWfQMS50u6XBLu2E9xEymCr37buHuV/cl00eu4C2mYqzHaom2VbdMJ8dphFGkGFLAmZrtCP/lM+oqY6NcAPz0dhoO2QbXJyUnsAGYFInGew6mky5dos0cg7PUQV3L2ZFPnIYvWs/Y7SF1IM6kPwhNsdoj9LS5Y9nOavzO7MFLZ7s3toSLInFQKrnUGGPw+n4oGVfkVA0Jj9jynyEZz69LJ0/Cwck8f5Unud3p2rSNGG90SOpQ8S09DLeEPjVnnz+lTlLXcIffprG92Urln5LmYWQMTVyYJiVqgm9Xj9RFWhM=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(346002)(136003)(376002)(82310400011)(186009)(1800799009)(451199024)(46966006)(40470700004)(36840700001)(53546011)(40460700003)(83380400001)(82740400003)(81166007)(356005)(86362001)(31696002)(36860700001)(47076005)(36756003)(2616005)(426003)(40480700001)(26005)(336012)(31686004)(4326008)(16576012)(7416002)(41300700001)(316002)(8936002)(8676002)(2906002)(70586007)(70206006)(54906003)(110136005)(478600001)(5660300002)(44832011)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 16:20:41.8071
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 333c0733-536b-4dae-249f-08dbb92c5e85
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL6PEPF0001AB57.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4157

On 9/19/23 11:39, Roger Pau Monné wrote:
> On Tue, Aug 29, 2023 at 11:19:42PM +0000, Volodymyr Babchuk wrote:
>> diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c
>> index 8f2b59e61a..a0733bb2cb 100644
>> --- a/xen/drivers/vpci/msi.c
>> +++ b/xen/drivers/vpci/msi.c
>> @@ -318,15 +321,28 @@ void vpci_dump_msi(void)
>>                       * holding the lock.
>>                       */
>>                      printk("unable to print all MSI-X entries: %d\n", rc);
>> -                    process_pending_softirqs();
>> -                    continue;
>> +                    goto pdev_done;
>>                  }
>>              }
>>
>>              spin_unlock(&pdev->vpci->lock);
>> + pdev_done:
>> +            /*
>> +             * Unlock lock to process pending softirqs. This is
>> +             * potentially unsafe, as d->pdev_list can be changed in
>> +             * meantime.
>> +             */
>> +            read_unlock(&d->pci_lock);
>>              process_pending_softirqs();
>> +            if ( !read_trylock(&d->pci_lock) )
>> +            {
>> +                printk("unable to access other devices for the domain\n");
>> +                goto domain_done;
> 
> Shouldn't the domain_done label be after the read_unlock(), so that we
> can proceed to try to dump the devices for the next domain?  With the
> proposed code a failure to acquire one of the domains pci_lock
> terminates the dump.
> 
>> +            }
>>          }
>> +        read_unlock(&d->pci_lock);
>>      }
>> + domain_done:
>>      rcu_read_unlock(&domlist_read_lock);
>>  }
>>

With the label moved, a no-op expression after the label is needed to make the compiler happy:

            }
        }
        read_unlock(&d->pci_lock);
 domain_done:
        (void)0;
    }
    rcu_read_unlock(&domlist_read_lock);
}


If the no-op is omitted, the compiler may complain (gcc 9.4.0):

drivers/vpci/msi.c: In function ‘vpci_dump_msi’:
drivers/vpci/msi.c:351:2: error: label at end of compound statement
  351 |  domain_done:
      |  ^~~~~~~~~~~


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 16:44:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 16:44:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604955.942521 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qidpf-0005yo-Kw; Tue, 19 Sep 2023 16:44:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604955.942521; Tue, 19 Sep 2023 16:44:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qidpf-0005yh-Hd; Tue, 19 Sep 2023 16:44:15 +0000
Received: by outflank-mailman (input) for mailman id 604955;
 Tue, 19 Sep 2023 16:44:14 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qidpd-0005yX-U3; Tue, 19 Sep 2023 16:44:13 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qidpd-0000zD-Lr; Tue, 19 Sep 2023 16:44:13 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qidpd-000498-DL; Tue, 19 Sep 2023 16:44:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qidpd-000451-Cn; Tue, 19 Sep 2023 16:44:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=V3c6NJWL2XcDrpCNgL/Of+hkWCoTkQOTXm96zxWfC+w=; b=QslE5vxrS+gdJQWmhK7ggACwnN
	8iG4GAvTf6lkn9c2vVmTIe3TM70B6EVA97N1xC2GkbAmVvAUiGKjA+CyegCq5bquK8YYa3rbz2KhI
	06gRtlq0ZOi1cyXuJefaG6VrUjMyZZLdVJnMWNJjcBBBzjBrNYab72vcxPqEuegjxc2c=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183060-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183060: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:xen-boot:fail:regression
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
X-Osstest-Versions-That:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 16:44:13 +0000

flight 183060 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183060/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 183030
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 183030

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
baseline version:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273

Last test of basis   183030  2023-09-18 14:02:00 Z    1 days
Failing since        183031  2023-09-18 17:01:55 Z    0 days    7 attempts
Testing same since   183058  2023-09-19 11:03:10 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Simon Gaiser <simon@invisiblethingslab.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-libvirt                                     fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Thu Sep 14 14:03:34 2023 -0500

    xen/ppc: Enable full Xen build
    
    Bring ppc's Makefile and arch.mk in line with arm and x86 to disable the
    build overrides and enable the full Xen build.
    
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 23f2f4a0977503187cd05cbc8963464a25e75eaf
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Thu Sep 14 14:03:33 2023 -0500

    xen/ppc: Add stub function and symbol definitions
    
    Add stub function and symbol definitions required by common code. If the
    file that the definition is supposed to be located in doesn't already
    exist yet, temporarily place its definition in the new stubs.c
    
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit 4a2f68f90930458903589aefa2bef7b368af3df4
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Thu Sep 14 14:03:32 2023 -0500

    xen/ppc: Define minimal stub headers required for full build
    
    Additionally, change inclusion of asm/ headers to corresponding xen/ ones
    throughout arch/ppc now that they work.
    
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit fa6696e63b6e490f3348ad973b30e361d68e366f
Author: Simon Gaiser <simon@invisiblethingslab.com>
Date:   Tue Sep 19 11:02:13 2023 +0200

    x86/ACPI: Fix logging of MADT entries
    
    The recent change to ignore MADT entries with invalid APIC IDs also
    affected logging of MADT entries. That's not desired [1] [2], so restore
    the old behavior.
    
    Fixes: 47342d8f490c ("x86/ACPI: Ignore entries with invalid APIC IDs when parsing MADT")
    Link: https://lore.kernel.org/xen-devel/0bd3583c-a55d-9a68-55b1-c383499d46d8@suse.com/ # [1]
    Link: https://lore.kernel.org/xen-devel/f780d40e-c828-c57a-b19c-16ee15c1454a@suse.com/ # [2]
    Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 93d2ee85f189aab6d8326871b9991469d795fbc9
Author: Federico Serafini <federico.serafini@bugseng.com>
Date:   Tue Sep 19 11:01:56 2023 +0200

    xen/vPCI: address violation of MISRA C:2012 Rule 8.3
    
    Make function declaration consistent with the corresponding definition.
    No functional change.
    
    Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
    Acked-by: Roger Pau Monné <roger.pau@citrix.com>

commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 3ee6066bcd737756b0990d417d94eddc0b0d2585
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 45f00557350dc7d0756551069803fc49c29184ca
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 694bb0f280fd08a4377e36e32b84b5062def4de2
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 18:24:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 18:24:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604968.942543 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qifOU-0008Ix-Nn; Tue, 19 Sep 2023 18:24:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604968.942543; Tue, 19 Sep 2023 18:24:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qifOU-0008Iq-Jy; Tue, 19 Sep 2023 18:24:18 +0000
Received: by outflank-mailman (input) for mailman id 604968;
 Tue, 19 Sep 2023 18:24:17 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qifOT-0008Ig-Bl; Tue, 19 Sep 2023 18:24:17 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qifOT-0003PM-9R; Tue, 19 Sep 2023 18:24:17 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qifOT-0006fw-1U; Tue, 19 Sep 2023 18:24:17 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qifOT-0007M9-14; Tue, 19 Sep 2023 18:24:17 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=zlLOfZwGwls+lSx8NANYeqMXhHpRJkngmLwRsOZ0sjc=; b=uBWxtOsm+zBUmkjQ+cOccMDV3s
	/ttrvD7uFJDvuqQe1gH97OEUpJs6oxnmq8C9ej01GVJzerjEOkv0yf7GG9axFzm0ebv5O3WHJTLRO
	6XTRpwHto1Ew+lc9X5tJIGplb1U4pja+97t6CDPHaVzayw4WoVPsCD0ZU0FTJwzRwTHo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183063-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183063: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=7275993dc64481b1c21d7d70af434bfaafe86e81
X-Osstest-Versions-That:
    ovmf=cbcf0428e83bbe8314de47207072b3b4f1557dc6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 18:24:17 +0000

flight 183063 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183063/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 7275993dc64481b1c21d7d70af434bfaafe86e81
baseline version:
 ovmf                 cbcf0428e83bbe8314de47207072b3b4f1557dc6

Last test of basis   183041  2023-09-19 01:40:54 Z    0 days
Testing same since   183063  2023-09-19 16:10:46 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Mike Maslenkin <mike.maslenkin@gmail.com>
  Nickle Wang <nicklew@nvidia.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   cbcf0428e8..7275993dc6  7275993dc64481b1c21d7d70af434bfaafe86e81 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 19:07:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 19:07:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604978.942559 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qig46-0006Q1-Vp; Tue, 19 Sep 2023 19:07:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604978.942559; Tue, 19 Sep 2023 19:07:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qig46-0006Pu-S3; Tue, 19 Sep 2023 19:07:18 +0000
Received: by outflank-mailman (input) for mailman id 604978;
 Tue, 19 Sep 2023 19:07:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=iEDo=FD=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qig44-0006Po-TK
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 19:07:17 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on20624.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::624])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bdd59c25-571f-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 21:07:15 +0200 (CEST)
Received: from MW4P223CA0017.NAMP223.PROD.OUTLOOK.COM (2603:10b6:303:80::22)
 by DS0PR12MB7993.namprd12.prod.outlook.com (2603:10b6:8:14b::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Tue, 19 Sep
 2023 19:07:09 +0000
Received: from MWH0EPF000989E7.namprd02.prod.outlook.com
 (2603:10b6:303:80:cafe::aa) by MW4P223CA0017.outlook.office365.com
 (2603:10b6:303:80::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.29 via Frontend
 Transport; Tue, 19 Sep 2023 19:07:09 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 MWH0EPF000989E7.mail.protection.outlook.com (10.167.241.134) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Tue, 19 Sep 2023 19:07:09 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 19 Sep
 2023 14:07:07 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 19 Sep
 2023 14:07:07 -0500
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 19 Sep 2023 14:07:06 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bdd59c25-571f-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ic9WcLezYNiJB9CIKjtvo/zn9UZsnZo2gKR4K3Pki9D9V9ohmPhjePvdWfM/y4u/P2VLTKX3RYRWCY0BGNV6F1XNz4g66csFb7wx7dVpShf2MBfHmKwjeQo0n1Ip3YQY98HIGz4BRgHiymL5v8dPYG5q8sxieo2f6cl10pG+Osz6F9ED2ov/IRudwkrDqjL7QIaTPFfMWT2wF9ywc5A3BGbFck/OQHQIEkHCC5sUPsWG4+nYGUsnPeRk4AivwHU4GYRA/jmaZG/o2KpxNmIlq0s/qryAUEz/cueX6eC+7kHLS8xCwDxycww8Z9ms2fxKSX9PABgORiSW8qyOXIgFYg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Cei34lTLgJxE2ujWYeUw9/Bk1Q2jBkN7uBm8FIeCSDk=;
 b=kLY5MI4SkGvP47w2Av5LTuJWUoySnQbGWRkhPY8PKe5uV08vqvq1L4FckaB2a3T0YaCOCqnuMRX0yoQt/MHWIc6g2/x+a8nriSWtUiIKutLLh4oTMB0l3M00eDSOI1gZCi8RT1gVOHDToIu8dUHvgIXLyt613U7rTRCt4zWP/wNwBtQfYwFbATXxk8bBCXF9cnCFO9aGSTYaNADLkgihKWS0US3TVFFZE85IkPJiu/RQS36mkJNZ5IXzTLyNm20vmncT2rnAQOaBmHSDiRlcLC8vRF8NrgnnA5AHlxcFHgW5bi3qWxCvVqJADGQJccLDxXvM+0FydAvVJTURJavrlA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=epam.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Cei34lTLgJxE2ujWYeUw9/Bk1Q2jBkN7uBm8FIeCSDk=;
 b=x8fBFnkp9vauCS4PiCT/kcj9MVfOxG/7rAmMAHwxUMWOckFd1qNgvT8nZlorqXNPeWKeciI5pc/ARs8rb59E7ll9sFq/vw7SfIzIB5lhVLFqoge7jvsk4O8ysHyxMJJvJfdOxl6bsFQGo2NtgvQVM6E4I4zRpvESlnGgJAkX3Sk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <22c69940-8eb1-81bf-0c6a-0987712564eb@amd.com>
Date: Tue, 19 Sep 2023 15:07:05 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v1 0/3] ARM: ITS: implement TODO and fix issues with cache
Content-Language: en-US
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
	<julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MWH0EPF000989E7:EE_|DS0PR12MB7993:EE_
X-MS-Office365-Filtering-Correlation-Id: 76b49d53-074b-4123-8bfd-08dbb9439fad
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	l59idxqvzsQ40zEow48Q5Glc8EB7N5uacyVpHEKkU0TcO3WErjXnQgr07dfGTsrZ/ymhq/Jgk6CZJ2o61el5pJb5TesJlPuXEKb2uzgZCVN6eTcS7Qq1wIUdkO/qpIQQaHRPOtFMdkf6+iiYYY/VfeGDa9nhQsJIkNCUXGBRAFudy0o5pIYf7OPtyDVVNzzXG97OvKjwcge5xA0/XPD49o1lKptHp1uzcnTt8GOThI1G3BLHjD8RqvSyUMHTuHV+NFlKACr6m0cOXGfEcD09MgGor3hw/T0v7wnX5DK2zUGEGA6IX7UQ01iyOWrfXHAiZYZFV1KEdk6Pr9if4lA93XVQELwcyFDIoZPRMNuV3trbIpDrj3+5yxxEozZ2EeYvWwBAjUMWS7mHhHPS7d0cUrRLL74NnQu6gtEFuAu89750P08c3BsISJ7D6majvs4GYx+2a+O6mnVvT7CKO/XkUGoB+0f/8Y8vzXi/jE4/D2fTmUYDLzNuP7AT8moXT995n+TyVwhOS5RpIqjo+L+JhXI8uF9sjomkzCO2fZvQqI/iU7VOLCZratbthieV5JkF3HJfSEyEi6u4Xqai7Ci/ZKEpJ70sADmbHo4VTIWrppvNEaottXQb7QV8kdpWYshKhM7eq+Sh41/bETRZq415B8HDtP9N4ZeaSW9O44io7lxf+6R5e3pfJC4uArj/cpzISkSwTkul5+AOtztk923ZKJw9G0iBE3ZWPEyqn7F8sh7oz/o3hlHgUSlOF2x0TvTLxE3d9Td5R/45mXoEkA1sc5pnWswXRaUOZFrN+INBBWQ=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(136003)(376002)(39860400002)(82310400011)(186009)(1800799009)(451199024)(36840700001)(46966006)(40470700004)(53546011)(83380400001)(26005)(336012)(47076005)(426003)(8676002)(2906002)(44832011)(70586007)(54906003)(16576012)(316002)(70206006)(110136005)(5660300002)(8936002)(41300700001)(966005)(4326008)(2616005)(40460700003)(86362001)(31696002)(36860700001)(36756003)(40480700001)(82740400003)(356005)(81166007)(478600001)(31686004)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 19:07:09.4549
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 76b49d53-074b-4123-8bfd-08dbb9439fad
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	MWH0EPF000989E7.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7993

On 9/19/23 07:28, Volodymyr Babchuk wrote:
> Hello,
> 
> There were a couple of issues with GICv3 ITS implementation in
> Xen. From user perspective it looks like no interrupts are
> delivered. I observed those issues when experimented with SR-IOV on
> Renesas S4 board. In my case it wasn't a 100% reproducible issue, so
> it took some time and couple of tries to fix it. I wasn't sure if my
> fix addressed some hardware quirks of S4 board or it was a generic
> solution, so I postponed publishing of it.
> 
> Later, Stewart Hildebrand had very simmilar issues with his setup. I
> shared those 3 patches with him and they fixed his issue as well. So,
> I believe we need those changes in Xen mainline.
> 
> Second patch ("ARM: GICv3 ITS: do not invalidate memory while sending
> a command") is not strictly required, as it just provides a small
> optimization, but I believe it would be nice to have it in the code
> base.

I did a bit more experimentation, and the first patch ("ARM: GICv3 ITS: issue INVALL command after mapping host events") is not strictly required either for my particular test case. But the third one ("ARM: GICv3 ITS: flush all buffers, not just command queue") indeed appears to fix a real bug.

> 
> Volodymyr Babchuk (3):
>   ARM: GICv3 ITS: issue INVALL command after mapping host events
>   ARM: GICv3 ITS: do not invalidate memory while sending a command
>   ARM: GICv3 ITS: flush all buffers, not just command queue
> 

For the curious, here are a few more details about my test case. While testing the ("SMMU handling for PCIe Passthrough on ARM") [1] series on an AMD Versal VCK190 board, I discovered an issue with MSIs in dom0. The driver for the PCIe device has multiple IRQs, but only one of them was being raised in dom0: nvme0q0 was working, but not nvme0q1/2:

xilinx-vck190-20231:~$ cat /proc/interrupts
           CPU0       CPU1
  0:          0         92   xen-dyn     Edge    -event     xenbus
 11:      18084      11575     GICv3  27 Level     arch_timer
 12:         61         90     GICv3  16 Level     events
 13:          0          0     GICv3  62 Level     zynqmp_ipi
 15:          0          0  RC-Event   0 Level     LINK_DOWN
 16:          0          0  RC-Event   3 Level     HOT_RESET
 17:          0          0  RC-Event   4 Level     CFG_PCIE_TIMEOUT
 18:          0          0  RC-Event   8 Level     CFG_TIMEOUT
 19:          0          0  RC-Event   9 Level     CORRECTABLE
 20:          0          0  RC-Event  10 Level     NONFATAL
 21:          0          0  RC-Event  11 Level     FATAL
 22:          0          0  RC-Event  12 Level     CFG_ERR_POISON
 23:          0          0  RC-Event  15 Level     PME_TO_ACK_RCVD
 24:          0          0  RC-Event  17 Level     PM_PME_RCVD
 25:          0          0  RC-Event  20 Level     SLV_UNSUPP
 26:          0          0  RC-Event  21 Level     SLV_UNEXP
 27:          0          0  RC-Event  22 Level     SLV_COMPL
 28:          0          0  RC-Event  23 Level     SLV_ERRP
 29:          0          0  RC-Event  24 Level     SLV_CMPABT
 30:          0          0  RC-Event  25 Level     SLV_ILLBUR
 31:          0          0  RC-Event  26 Level     MST_DECERR
 32:          0          0  RC-Event  27 Level     MST_SLVERR
 33:          0          0  RC-Event  28 Level     SLV_PCIE_TIMEOUT
 35:         41          0   xen-dyn     Edge    -virq      hvc_console
 37:         17          0   ITS-MSI 524288 Edge      nvme0q0
 38:          0          0     GICv3 176 Level     sysmon-irq
 40:          0          0   ITS-MSI 524289 Edge      nvme0q1
 41:          0          0   ITS-MSI 524290 Edge      nvme0q2
 42:          0          0  xen-dyn-lateeoi     Edge    -event     evtchn:xenstored
 43:         19          0  xen-dyn-lateeoi     Edge    -event     evtchn:xenstored
IPI0:        30        101       Rescheduling interrupts
IPI1:      1888       1458       Function call interrupts
IPI2:         0          0       CPU stop interrupts
IPI3:         0          0       CPU stop (for crash dump) interrupts
IPI4:         0          0       Timer broadcast interrupts
IPI5:         0          0       IRQ work interrupts
IPI6:         0          0       CPU wake-up interrupts
Err:          0

After applying the patch ("ARM: GICv3 ITS: flush all buffers, not just command queue") all the ITS-MSI irqs work:

xilinx-vck190-20231:~$ cat /proc/interrupts
           CPU0       CPU1
  0:          0         94   xen-dyn     Edge    -event     xenbus
 11:       4928       3938     GICv3  27 Level     arch_timer
 12:         56         95     GICv3  16 Level     events
 13:          0          0     GICv3  62 Level     zynqmp_ipi
 15:          0          0  RC-Event   0 Level     LINK_DOWN
 16:          0          0  RC-Event   3 Level     HOT_RESET
 17:          0          0  RC-Event   4 Level     CFG_PCIE_TIMEOUT
 18:          0          0  RC-Event   8 Level     CFG_TIMEOUT
 19:          0          0  RC-Event   9 Level     CORRECTABLE
 20:          0          0  RC-Event  10 Level     NONFATAL
 21:          0          0  RC-Event  11 Level     FATAL
 22:          0          0  RC-Event  12 Level     CFG_ERR_POISON
 23:          0          0  RC-Event  15 Level     PME_TO_ACK_RCVD
 24:          0          0  RC-Event  17 Level     PM_PME_RCVD
 25:          0          0  RC-Event  20 Level     SLV_UNSUPP
 26:          0          0  RC-Event  21 Level     SLV_UNEXP
 27:          0          0  RC-Event  22 Level     SLV_COMPL
 28:          0          0  RC-Event  23 Level     SLV_ERRP
 29:          0          0  RC-Event  24 Level     SLV_CMPABT
 30:          0          0  RC-Event  25 Level     SLV_ILLBUR
 31:          0          0  RC-Event  26 Level     MST_DECERR
 32:          0          0  RC-Event  27 Level     MST_SLVERR
 33:          0          0  RC-Event  28 Level     SLV_PCIE_TIMEOUT
 35:         42          0   xen-dyn     Edge    -virq      hvc_console
 37:         10          0   ITS-MSI 524288 Edge      nvme0q0
 38:         48          0   ITS-MSI 524289 Edge      nvme0q1
 39:          0         66   ITS-MSI 524290 Edge      nvme0q2
 40:          0          0     GICv3 176 Level     sysmon-irq
 42:          0          0  xen-dyn-lateeoi     Edge    -event     evtchn:xenstored
 43:         13          0  xen-dyn-lateeoi     Edge    -event     evtchn:xenstored
IPI0:        78         77       Rescheduling interrupts
IPI1:      2513       2512       Function call interrupts
IPI2:         0          0       CPU stop interrupts
IPI3:         0          0       CPU stop (for crash dump) interrupts
IPI4:         0          0       Timer broadcast interrupts
IPI5:         0          0       IRQ work interrupts
IPI6:         0          0       CPU wake-up interrupts
Err:          0

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-06/msg00353.html


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 19:17:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 19:17:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604983.942569 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qigE2-0008DN-Sk; Tue, 19 Sep 2023 19:17:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604983.942569; Tue, 19 Sep 2023 19:17:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qigE2-0008DG-PZ; Tue, 19 Sep 2023 19:17:34 +0000
Received: by outflank-mailman (input) for mailman id 604983;
 Tue, 19 Sep 2023 19:17:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=iEDo=FD=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qigE1-0008DA-Mb
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 19:17:33 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::61b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2df971ee-5721-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 21:17:32 +0200 (CEST)
Received: from MW4PR03CA0208.namprd03.prod.outlook.com (2603:10b6:303:b8::33)
 by PH7PR12MB5784.namprd12.prod.outlook.com (2603:10b6:510:1d3::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Tue, 19 Sep
 2023 19:17:28 +0000
Received: from CO1PEPF000044FC.namprd21.prod.outlook.com
 (2603:10b6:303:b8:cafe::42) by MW4PR03CA0208.outlook.office365.com
 (2603:10b6:303:b8::33) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28 via Frontend
 Transport; Tue, 19 Sep 2023 19:17:28 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CO1PEPF000044FC.mail.protection.outlook.com (10.167.241.202) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.0 via Frontend Transport; Tue, 19 Sep 2023 19:17:27 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 19 Sep
 2023 14:17:26 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 19 Sep
 2023 12:17:26 -0700
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 19 Sep 2023 14:17:25 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2df971ee-5721-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OdcZHCsg81DbtvqkODlYCVFb8poqQ9LN9WyeFHmPRO+oVqNvf+iTmNY/bmifIA5n2kzzXpgyyFUzqoNRH5u9LEJw2DyI45dzBpTNdN2gN5WWyr01egwdUk4WBhw+3HFzZkvXbeVuHYo26858RlH11PBp9TX34GKHMQFZ8anzEYi6xNhUaBBz+zMEkFnP+/4JXPmVagQwT+/iagqL6vC7+RllKPocZ1USf/elaeWVeMHVsW6NZcIMS48R74ZDEYXDKacWoIO/hmzRO51mQqx7vSHcWqxjPx6mjbJZGz/Afrdlm2JmcHswY7AOtyQowpKFDSsWRzwIIUdbqMcYV9nOVQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rAjYIMDdlwHnbIhGnxSqSYCuhOn90sWgFRJSdr+6UHw=;
 b=P5s7id+SF8r/KtBIkWhgIksESbAk+DnfdQjArakRSeXX3WmCUqvYjiUddFYvLHM/TMqnC6AP9xwQZut5eIBv29a1umd/h5J1N0MpCrzuFlGJxPwrQU3uaCGpZ6rId2BBCyBzYofQnsS7h1suk1CjnpBCIqdD/M2Ax56qk543U+3bK0E+kKCyjS5MEUvk/0IGSZYWDuZJ38YwajR/C7jNH3D8eqkFZpNQSeoHQAAnDBRbQZMaJw39zqQYbYRpIhYDOvfwI07x0gn/l9k+6P3pdOJzbCF3l/dwYsrsCM/Yss6a7QpQsYW1LozEFjC6eYSqyM8e/7BpzO+m/STjhlUSqw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rAjYIMDdlwHnbIhGnxSqSYCuhOn90sWgFRJSdr+6UHw=;
 b=dx5LmdPaNGD1INaOzlGukmImBrxILOuk92CiMSPN0othv4RkpRunRtEvJzBLcJUm5Lm3Dn9cwUoxRd6Pi3MqSvpDiTPpmtZBZAJCQ+2mrjCoNoP0KPDSqEGLi0Y7pgP1M2ecoCZDb2pt1xEA6LBMwcKQ90AGItKBR+X7LVh7knY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <8f7bce50-2a30-087a-16c8-fd795131bc49@amd.com>
Date: Tue, 19 Sep 2023 15:17:24 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v1 3/3] ARM: GICv3 ITS: flush all buffers, not just
 command queue
Content-Language: en-US
To: Julien Grall <julien@xen.org>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
 <20230919112827.1001484-4-volodymyr_babchuk@epam.com>
 <0cd6a4db-3678-446e-afd8-c99b47945a6a@xen.org>
 <c64d5af5-5d6a-4e97-9b6c-b3f916d32a09@xen.org>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <c64d5af5-5d6a-4e97-9b6c-b3f916d32a09@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044FC:EE_|PH7PR12MB5784:EE_
X-MS-Office365-Filtering-Correlation-Id: 7e0660a0-bd74-4f08-7e58-08dbb945102a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BSioJmWaro64iLHL7CwDEh30nhegYXbdFxidwzdv7qtt3VhKNvLImtZaWlseMrTOMrVobYq7sl511dql+uMuOZSPP1lHILFa0HU0Eslujk8RxthFTblyE0kbKQ+XZpf5AI7w1+ONwcwBAggId9xnOMN9jyhnHmiT+t6CxJepH1pHqFgyNy3cAwqwM6+XvmbKYXQqr/YpnSgEaXNgdUD+HiHGRLc8hne9NUkFGPLJWyeXccdVIpoHisucnzRkjZEMh950I2jz9eaoRZtfkcMO8yKryd536lhf3iR+HVOojmACuyR5djFq4O0xea6N8vGPM/M0wc04Ezo6KtPwiMFhuJnqJZinnxf5M2hUcZuZoFHTvCi+gncHaCBZlX3ku5XRf3aQtAvVyaKBvyaKPfo8RLKxXaa5y/eAtVJ0I/01ETLY+Itg7dHMzr9AmnRf8dpMl3inG9RL2LRtKSCXBxU9d53bBHB5aKDe5tlGY2gUnMmuj0YawdDyAVzE9xpIxU90EAM13A0ZPkq7z0ayHEmjKmaY4Xf3VtCvbZZjAzFbPKafXQ0QgUT2vjkFuN+hQ7oeTjlzSNFVJ8O5ETYDoZ1pxTLB6jsn9Ua6pJ7/9SWbo4AAWulwuKLAZqYE8qy7AAhENNySWNxKIomky23JZmnHwqoXoANmxi2zUmgXlNJHkkY3jvmsDFhOO/FOboSWAO6B3oxhZcIv5NZu59goCEpFWAQI6Lk4SIBG2J+8kDkFFQQNHZgLIqtIES8Fx8c5cnmtfArl2wLv4gCysIFEGpuyoWiE81x5WvleCpbU0tdDKXVOafMOFcVwYHzldu8cDRBt
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(346002)(376002)(39860400002)(136003)(451199024)(82310400011)(1800799009)(186009)(36840700001)(46966006)(40470700004)(41300700001)(70586007)(54906003)(16576012)(316002)(40480700001)(70206006)(110136005)(81166007)(40460700003)(2906002)(478600001)(86362001)(31696002)(36756003)(8936002)(4326008)(44832011)(5660300002)(8676002)(336012)(426003)(26005)(83380400001)(2616005)(82740400003)(53546011)(31686004)(356005)(36860700001)(47076005)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 19:17:27.6596
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7e0660a0-bd74-4f08-7e58-08dbb945102a
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000044FC.namprd21.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB5784

On 9/19/23 09:14, Julien Grall wrote:
> Hi,
> 
> On 19/09/2023 14:10, Julien Grall wrote:
>> On 19/09/2023 12:28, Volodymyr Babchuk wrote:
>>> ITS manages Device Tables and Interrupt Translation Tables on its own,
>>> so generally we are not interested which shareability and cacheability
>>> attributes it uses. But there is one exception: ITS requires that DT
>>> and ITT must be initialized with zeroes. If ITS belongs to the Inner
>>> Cacheability domain there is no problem at all.
>>>
>>> But in all other cases we need to do clean CPU caches manually, or
>>> otherwise CPU can overwrite DT and ITT entries. From user perspective
>>> this looks like interrupts are not delivered from a device.
>>>
>>> Also, we will rename HOST_ITS_FLUSH_CMD_QUEUE flag to
>>> HOST_ITS_FLUSH_BUFFERS because now this flag controls not only command
>>> queue.
>>
>> Reading the specification, CBASER will indicate the cacheability for the
>> command queue. But I couldn't find any reference saying this will apply
>> to the ITT as well.
>>
>> If such reference doesn't exist then...
>>
>>>
>>> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
>>> ---
>>>   xen/arch/arm/gic-v3-its.c             | 7 +++++--
>>>   xen/arch/arm/include/asm/gic_v3_its.h | 2 +-
>>>   2 files changed, 6 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/xen/arch/arm/gic-v3-its.c b/xen/arch/arm/gic-v3-its.c
>>> index 72cf318810..63e28a7706 100644
>>> --- a/xen/arch/arm/gic-v3-its.c
>>> +++ b/xen/arch/arm/gic-v3-its.c
>>> @@ -107,7 +107,7 @@ static int its_send_command(struct host_its
>>> *hw_its, const void *its_cmd)
>>>       }
>>>       memcpy(hw_its->cmd_buf + writep, its_cmd, ITS_CMD_SIZE);
>>> -    if ( hw_its->flags & HOST_ITS_FLUSH_CMD_QUEUE )
>>> +    if ( hw_its->flags & HOST_ITS_FLUSH_BUFFERS )
>>>           clean_dcache_va_range(hw_its->cmd_buf + writep, ITS_CMD_SIZE);
>>>       else
>>>           dsb(ishst);
>>> @@ -335,7 +335,7 @@ static void *its_map_cbaser(struct host_its *its)
>>>        */
>>>       if ( !(reg & GITS_BASER_INNER_CACHEABILITY_MASK) )
>>>       {
>>> -        its->flags |= HOST_ITS_FLUSH_CMD_QUEUE;
>>> +        its->flags |= HOST_ITS_FLUSH_BUFFERS;
>>>           printk(XENLOG_WARNING "using non-cacheable ITS command
>>> queue\n");
>>>       }
>>> @@ -699,6 +699,9 @@ int gicv3_its_map_guest_device(struct domain *d,
>>>       if ( !itt_addr )
>>>           goto out_unlock;
>>> +    if ( hw_its->flags & HOST_ITS_FLUSH_BUFFERS )
>>> +        clean_dcache_va_range(itt_addr, nr_events * hw_its->itte_size);
>>
>> ... I think we need to have this flush unconditional like Linux does.
> 
> I forgot to mention that this likely want to be a
> clean_dcache_and_invalidate_va_range() (see my comment in patch #2).

I turned it into an unconditional clean_and_invalidate_dcache_va_range() and did a quick test, and it still fixes my test case on VCK190. So feel free to add:

Tested-by: Stewart Hildebrand <stewart.hildebrand@amd.com>


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 19:38:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 19:38:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.604992.942584 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qigXt-0003SC-Mw; Tue, 19 Sep 2023 19:38:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 604992.942584; Tue, 19 Sep 2023 19:38:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qigXt-0003S5-KC; Tue, 19 Sep 2023 19:38:05 +0000
Received: by outflank-mailman (input) for mailman id 604992;
 Tue, 19 Sep 2023 19:38:04 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qigXs-0003Rv-F4; Tue, 19 Sep 2023 19:38:04 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qigXs-0005Ia-CK; Tue, 19 Sep 2023 19:38:04 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qigXs-0008UG-58; Tue, 19 Sep 2023 19:38:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qigXs-00083z-4d; Tue, 19 Sep 2023 19:38:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=8Dp9M8nmDkTd1T/514oMPEqLgJ8laMEhLiawjFSQGBg=; b=YO21avFEqH6mpCkr1qCc5akPga
	zUi5T3xzrED6xkYQE/W1UoRzq8rAE2nhLTHHel3KMWPFEubbCOphECYfb/OPDrzBsAwG7BT9lEgK+
	ZEW/O8O/EWu3NssqvsyYPZIsv81V2ESRyfM3opWCrvjPZwpvoPYXx4fryb0VuMXdTHhY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183065-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183065: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:xen-boot:fail:regression
    xen-unstable-smoke:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
X-Osstest-Versions-That:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 19:38:04 +0000

flight 183065 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183065/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 183030
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 183030

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
baseline version:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273

Last test of basis   183030  2023-09-18 14:02:00 Z    1 days
Failing since        183031  2023-09-18 17:01:55 Z    1 days    8 attempts
Testing same since   183058  2023-09-19 11:03:10 Z    0 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Simon Gaiser <simon@invisiblethingslab.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-libvirt                                     fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Thu Sep 14 14:03:34 2023 -0500

    xen/ppc: Enable full Xen build
    
    Bring ppc's Makefile and arch.mk in line with arm and x86 to disable the
    build overrides and enable the full Xen build.
    
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 23f2f4a0977503187cd05cbc8963464a25e75eaf
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Thu Sep 14 14:03:33 2023 -0500

    xen/ppc: Add stub function and symbol definitions
    
    Add stub function and symbol definitions required by common code. If the
    file that the definition is supposed to be located in doesn't already
    exist yet, temporarily place its definition in the new stubs.c
    
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit 4a2f68f90930458903589aefa2bef7b368af3df4
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Thu Sep 14 14:03:32 2023 -0500

    xen/ppc: Define minimal stub headers required for full build
    
    Additionally, change inclusion of asm/ headers to corresponding xen/ ones
    throughout arch/ppc now that they work.
    
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit fa6696e63b6e490f3348ad973b30e361d68e366f
Author: Simon Gaiser <simon@invisiblethingslab.com>
Date:   Tue Sep 19 11:02:13 2023 +0200

    x86/ACPI: Fix logging of MADT entries
    
    The recent change to ignore MADT entries with invalid APIC IDs also
    affected logging of MADT entries. That's not desired [1] [2], so restore
    the old behavior.
    
    Fixes: 47342d8f490c ("x86/ACPI: Ignore entries with invalid APIC IDs when parsing MADT")
    Link: https://lore.kernel.org/xen-devel/0bd3583c-a55d-9a68-55b1-c383499d46d8@suse.com/ # [1]
    Link: https://lore.kernel.org/xen-devel/f780d40e-c828-c57a-b19c-16ee15c1454a@suse.com/ # [2]
    Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 93d2ee85f189aab6d8326871b9991469d795fbc9
Author: Federico Serafini <federico.serafini@bugseng.com>
Date:   Tue Sep 19 11:01:56 2023 +0200

    xen/vPCI: address violation of MISRA C:2012 Rule 8.3
    
    Make function declaration consistent with the corresponding definition.
    No functional change.
    
    Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
    Acked-by: Roger Pau Monné <roger.pau@citrix.com>

commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 3ee6066bcd737756b0990d417d94eddc0b0d2585
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 45f00557350dc7d0756551069803fc49c29184ca
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 694bb0f280fd08a4377e36e32b84b5062def4de2
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 20:02:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 20:02:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605001.942595 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qigvW-0007lf-MB; Tue, 19 Sep 2023 20:02:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605001.942595; Tue, 19 Sep 2023 20:02:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qigvW-0007lY-IO; Tue, 19 Sep 2023 20:02:30 +0000
Received: by outflank-mailman (input) for mailman id 605001;
 Tue, 19 Sep 2023 20:02:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=H+fT=FD=gmail.com=shentey@srs-se1.protection.inumbo.net>)
 id 1qigvV-0007lS-4q
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 20:02:29 +0000
Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com
 [2a00:1450:4864:20::42f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 74a9f3d6-5727-11ee-9b0d-b553b5be7939;
 Tue, 19 Sep 2023 22:02:26 +0200 (CEST)
Received: by mail-wr1-x42f.google.com with SMTP id
 ffacd0b85a97d-31fe2c8db0dso5349692f8f.3
 for <xen-devel@lists.xenproject.org>; Tue, 19 Sep 2023 13:02:27 -0700 (PDT)
Received: from [127.0.0.1] (dynamic-077-183-084-126.77.183.pool.telefonica.de.
 [77.183.84.126]) by smtp.gmail.com with ESMTPSA id
 r2-20020adfe682000000b0031fe0576460sm6771659wrm.11.2023.09.19.13.02.25
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Sep 2023 13:02:25 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 74a9f3d6-5727-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695153746; x=1695758546; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:references
         :in-reply-to:subject:cc:to:from:date:from:to:cc:subject:date
         :message-id:reply-to;
        bh=O4MvxlwOAuFe9rdoF6HBbC/2fx9cp5v+GhJrBkfXYUs=;
        b=bi+k7NhvZe+OFvBX2SBqo1DrStULjvYr6wny2OkdwYKMS1FKsMb+a5VNMLWyLEJAr0
         Kx8dP0iz87EEQtfFCB9+b+wbHIcd/xViUGFER0OxdMahPtFvUS5XkVNpJnSfZQ2jS+0u
         wLhZ85Ka9jM8AkKI/7c1ToXTvd6MYoxCMgKskd8EnfRhgztna16gdkE9j1g6iyEnY5ap
         XpLB/aPd7PzHHh2Xi1E7v2QIKOow7jjEqVrhen6h9hferwyQGzvjtZdfmC1Px2qGu2TY
         2ZlrMXBqpeGud7c4+vvFrhWzAq/mnkRweqyayElPTGa2eUjjxUKHgVWFQf0H9tiL2gNH
         aosg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695153746; x=1695758546;
        h=content-transfer-encoding:mime-version:message-id:references
         :in-reply-to:subject:cc:to:from:date:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=O4MvxlwOAuFe9rdoF6HBbC/2fx9cp5v+GhJrBkfXYUs=;
        b=OBErUgdgJiApXj1o9MKMIPYeV34GnhWI3oIcssZI7gR/2Zy/OakW2tcvR/UT3ugvfR
         ldYHbavTTgnH2esS6rioLwjbBnZr3mNT5gxhaEVE3fkqgMiHaoNNxjcHkNFpv5ne/CLw
         dCr5L/ZpYZQ0gJtAoAUrpkoDFqk+kLXkj3s5n/1nZFS6jxcDLS07xl3TIxdywT8iVHad
         3V29ClI3FNjE2ffY0k3xzy3Vgdzx78V/OwapCukdbYOZql6rug1fiCE2fPKliPYCUJaM
         Wrbw0y/Z554w0VBKS9gNyi6aFN0+asIFK0FdOK/MIn8TCM72GFKd6vNnuF93dVzJEtnH
         mRLA==
X-Gm-Message-State: AOJu0YwMCmvSln2TYtm2C3vn14PWbjLy3Ak0mE78fpanf17+cFgsEgxv
	9gFt+2yh16apiY7e24WIuLM=
X-Google-Smtp-Source: AGHT+IHA3Rcz/q54UukTkrot0NmdG02c+UqNugRafaiM1sEG/EUtJ2udAeBzQyZALWCxc0HNDpODHQ==
X-Received: by 2002:a5d:6a8c:0:b0:31f:f72c:dfa3 with SMTP id s12-20020a5d6a8c000000b0031ff72cdfa3mr512869wru.68.1695153746122;
        Tue, 19 Sep 2023 13:02:26 -0700 (PDT)
Date: Tue, 19 Sep 2023 20:02:19 +0000
From: Bernhard Beschow <shentey@gmail.com>
To: Jason Andryuk <jandryuk@gmail.com>,
 Anthony PERARD <anthony.perard@citrix.com>
CC: qemu-devel@nongnu.org, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Paolo Bonzini <pbonzini@redhat.com>, David Woodhouse <dwmw@amazon.co.uk>,
 =?ISO-8859-1?Q?Herv=E9_Poussineau?= <hpoussin@reactos.org>,
 Aurelien Jarno <aurelien@aurel32.net>, Eduardo Habkost <eduardo@habkost.net>,
 Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org,
 "Michael S. Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Richard Henderson <richard.henderson@linaro.org>,
 =?ISO-8859-1?Q?Philippe_Mathieu-Daud=E9?= <philmd@linaro.org>,
 Chuck Zmudzinski <brchuckz@aol.com>
Subject: =?US-ASCII?Q?Re=3A_=5BPATCH_v3_2/6=5D_hw/isa/piix3=3A_Reuse?= =?US-ASCII?Q?_piix3=5Frealize=28=29_in_piix3=5Fxen=5Frealize=28=29?=
In-Reply-To: <CAKf6xpvxf=F52etJ8o3eLQV4JVD5WM57znGoP3ctONRf7uPisA@mail.gmail.com>
References: <20230312120221.99183-1-shentey@gmail.com> <20230312120221.99183-3-shentey@gmail.com> <f52c41f7-e662-4afd-8ac9-ce2c0da2b1be@perard> <7F45B51F-F1E3-4F04-A46F-4C80509C7195@gmail.com> <622b9674-fffd-4634-ac30-d0db3230478e@perard> <CAKf6xpvxf=F52etJ8o3eLQV4JVD5WM57znGoP3ctONRf7uPisA@mail.gmail.com>
Message-ID: <B0FF78F4-1193-495B-919C-84A1FF8ADF12@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable



Am 3=2E April 2023 12:27:14 UTC schrieb Jason Andryuk <jandryuk@gmail=2Eco=
m>:
>On Mon, Apr 3, 2023 at 5:33=E2=80=AFAM Anthony PERARD <anthony=2Eperard@c=
itrix=2Ecom> wrote:
>>
>> On Sat, Apr 01, 2023 at 10:36:45PM +0000, Bernhard Beschow wrote:
>> >
>> >
>> > Am 30=2E M=C3=A4rz 2023 13:00:25 UTC schrieb Anthony PERARD <anthony=
=2Eperard@citrix=2Ecom>:
>> > >On Sun, Mar 12, 2023 at 01:02:17PM +0100, Bernhard Beschow wrote:
>> > >> This is a preparational patch for the next one to make the followi=
ng
>> > >> more obvious:
>> > >>
>> > >> First, pci_bus_irqs() is now called twice in case of Xen where the
>> > >> second call overrides the pci_set_irq_fn with the Xen variant=2E
>> > >
>> > >pci_bus_irqs() does allocates pci_bus->irq_count, so the second call=
 in
>> > >piix3_xen_realize() will leak `pci_bus->irq_count`=2E Could you look=
 if
>> > >pci_bus_irqs_cleanup() can be called before the second pci_bus_irqs(=
)
>> > >call, or maybe some other way to avoid the leak?
>> >
>> > Thanks for catching this! I'll post a v4=2E
>> >
>> > I think the most fool-proof way to fix this is to free irq_count just=
 before the assignment=2E pci_bus_irqs_cleanup() would then have to NULL th=
e attribute such that pci_bus_irqs() can be called afterwards=2E
>> >
>> > BTW: I tried running qemu-system-x86_64 with PIIX4 rather than PIIX3 =
as Xen guest with my pc-piix4 branch without success=2E This branch essenti=
ally just provides slightly different PCI IDs for PIIX=2E Does xl or someth=
ing else in Xen check these? If not then this means I'm still missing somet=
hing=2E Under KVM this branch works just fine=2E Any idea?
>>
>> Maybe the ACPI tables provided by libxl needs to be updated=2E
>> Or maybe something in the firmware (SeaBIOS or OVMF/OvmfXen) check the
>> id (I know that the PCI id of the root bus is checked, but I don't know
>> if that's the one that's been changed)=2E
>
>Xen also has hvmloader, which runs before SeaBIOS/OVMF=2E  Looking at
>tools/firmware/hvmloader/pci=2Ec, it has
>        ASSERT((devfn !=3D PCI_ISA_DEVFN) ||
>               ((vendor_id =3D=3D 0x8086) && (device_id =3D=3D 0x7000)));
>
>From QEMU, it looks like 0x7000 is PCI_DEVICE_ID_INTEL_82371SB_0, but
>PIIX4 uses 0x7110 (PCI_DEVICE_ID_INTEL_82371AB_0)=2E  Maybe try removing
>that check?

I was finally able to build Xen successfully (without my distribution prov=
iding too recent dependencies that prevent compilation)=2E With 0x7110 adde=
d in the line above I could indeed run a Xen guest with PIIX4=2E Yay!

Now I just need to respin my PIIX consolidation series=2E=2E=2E

Best regards,
Bernhard

>
>Regards,
>Jason


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 20:35:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 20:35:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605007.942604 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qihRM-0004EQ-4q; Tue, 19 Sep 2023 20:35:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605007.942604; Tue, 19 Sep 2023 20:35:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qihRM-0004EJ-2K; Tue, 19 Sep 2023 20:35:24 +0000
Received: by outflank-mailman (input) for mailman id 605007;
 Tue, 19 Sep 2023 20:35:22 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qihRK-0004E6-Lq; Tue, 19 Sep 2023 20:35:22 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qihRK-0006cI-Ft; Tue, 19 Sep 2023 20:35:22 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qihRK-0001Oe-8E; Tue, 19 Sep 2023 20:35:22 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qihRK-0002vH-7q; Tue, 19 Sep 2023 20:35:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Message-Id:Subject:To;
	bh=f8I6H2OjG+/81gPZiCt9tKCdNQEQzNSqvBH4vvsbSTk=; b=CMvOofrpN+za0I9C+janhZejBT
	QRStUYPYn2wmXtx12R0bNfP1FB6NX2fWk3/GMIqgjSj0zFWzD9LYz6vP7/xZNIP4xMZWQZ9GJEvOX
	RL8FZdWLdBAwc74J2V4QSsQUG/9YJwqh7z/Zh3KY/hVsnrk0B497i//yY/c6zuf9qco4=;
To: xen-devel@lists.xenproject.org
Subject: [xen-unstable-smoke bisection] complete test-amd64-amd64-libvirt
Message-Id: <E1qihRK-0002vH-7q@osstest.test-lab.xenproject.org>
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 20:35:22 +0000

branch xen-unstable-smoke
xenbranch xen-unstable-smoke
job test-amd64-amd64-libvirt
testid xen-boot

Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  21bdc25b05a0f8ab6bc73520a9ca01327360732c
  Bug not present: 7aa28849a1155d856e214e9a80a7e65fffdc3e58
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/183055/


  commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c
  Author: Andrew Cooper <andrew.cooper3@citrix.com>
  Date:   Wed Sep 13 12:20:12 2023 +0100
  
      x86/entry: Track the IST-ness of an entry for the exit paths
      
      Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
      entry/exit asm, so it only needs setting in the IST path.
      
      As this is subtle and fragile, add check_ist_exit() to be used in debugging
      builds to cross-check that the ist_exit boolean matches the entry vector.
      
      Write check_ist_exit() it in C, because it's debug only and the logic more
      complicated than I care to maintain in asm.
      
      For now, we only need to use this signal in the exit-to-Xen path, but some
      exit-to-guest paths happen in IST context too.  Check the correctness in all
      exit paths to avoid the logic bit-rotting.
      
      Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
      Reviewed-by: Jan Beulich <jbeulich@suse.com>


For bisection revision-tuple graph see:
   http://logs.test-lab.xenproject.org/osstest/results/bisect/xen-unstable-smoke/test-amd64-amd64-libvirt.xen-boot.html
Revision IDs in each graph node refer, respectively, to the Trees above.

----------------------------------------
Running cs-bisection-step --graph-out=/home/logs/results/bisect/xen-unstable-smoke/test-amd64-amd64-libvirt.xen-boot --summary-out=tmp/183069.bisection-summary --basis-template=183030 --blessings=real,real-bisect,real-retry xen-unstable-smoke test-amd64-amd64-libvirt xen-boot
Searching for failure / basis pass:
 183065 fail [host=godello0] / 183030 ok.
Failure / basis pass flights: 183065 / 183030
(tree with no url: minios)
(tree with no url: ovmf)
(tree with no url: seabios)
Tree: libvirt git://xenbits.xen.org/libvirt.git
Tree: libvirt_keycodemapdb https://gitlab.com/keycodemap/keycodemapdb.git
Tree: linux git://xenbits.xen.org/linux-pvops.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git
Tree: qemuu git://xenbits.xen.org/qemu-xen.git
Tree: xen git://xenbits.xen.org/xen.git
Latest 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
Basis pass 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 2ea38251eb67639be7aa9d7b64084b1be0230273
Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.org/libvirt.git#47230842aa6bca1da75cc92c50144f223d1ad1d3-47230842aa6bca1da75cc92c50144f223d1ad1d3 https://gitlab.com/keycodemap/keycodemapdb.git#22b8996dba9041874845c7446ce89ec4ae2b713d-22b8996dba9041874845c7446ce89ec4ae2b713d git://xenbits.xen.org/linux-pvops.git#c3038e718a19fc596f7b1baba0f83d5146dc7784-c3038e718a19fc596f7b1baba0f83d5146dc7784 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0\
 dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/qemu-xen-traditional.git#3d273dd05e51e5a1ffba3d98c7437ee84e8f8764-3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 git://xenbits.xen.org/qemu-xen.git#0df9387c8983e1b1e72d8c574356f572342c03e6-0df9387c8983e1b1e72d8c574356f572342c03e6 git://xenbits.xen.org/xen.git#2ea38251eb67639be7aa9d7b64084b1be0230273-ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
Loaded 5001 nodes in revision graph
Searching for test results:
 183030 pass 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 2ea38251eb67639be7aa9d7b64084b1be0230273
 183031 fail 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 b5926c6ecf05c28ee99c6248c42d691ccbf0c315
 183033 pass 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 2ea38251eb67639be7aa9d7b64084b1be0230273
 183036 fail 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 b5926c6ecf05c28ee99c6248c42d691ccbf0c315
 183034 [host=debina1]
 183038 pass 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 45f00557350dc7d0756551069803fc49c29184ca
 183040 [host=debina1]
 183042 [host=debina1]
 183043 [host=debina1]
 183039 fail 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 b5926c6ecf05c28ee99c6248c42d691ccbf0c315
 183044 [host=debina1]
 183047 fail 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 21bdc25b05a0f8ab6bc73520a9ca01327360732c
 183045 fail 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 b5926c6ecf05c28ee99c6248c42d691ccbf0c315
 183049 pass 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 7aa28849a1155d856e214e9a80a7e65fffdc3e58
 183051 fail 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 21bdc25b05a0f8ab6bc73520a9ca01327360732c
 183052 pass 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 7aa28849a1155d856e214e9a80a7e65fffdc3e58
 183053 fail 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 21bdc25b05a0f8ab6bc73520a9ca01327360732c
 183054 pass 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 7aa28849a1155d856e214e9a80a7e65fffdc3e58
 183050 [host=albana1]
 183055 fail 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 21bdc25b05a0f8ab6bc73520a9ca01327360732c
 183057 [host=albana1]
 183058 [host=debina0]
 183059 [host=albana1]
 183061 [host=debina0]
 183062 [host=debina0]
 183060 [host=pinot1]
 183064 [host=debina0]
 183066 [host=pinot1]
 183067 [host=pinot1]
 183068 [host=pinot1]
 183065 fail 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
 183069 [host=pinot1]
Searching for interesting versions
 Result found: flight 183030 (pass), for basis pass
 For basis failure, parent search stopping at 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 7aa28849a1155d856e214e9a80a7e65fffdc3e58, results HASH(0x55ab122b27c8) HASH(0x55ab1230bfc0) HASH(0x55ab12338bf0) For basis failure, parent search stopping at 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996db\
 a9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 45f00557350dc7d0756551069803fc49c29184ca, results HASH(0x55ab122a9858) For basis failure, parent search stopping at 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98\
 c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 2ea38251eb67639be7aa9d7b64084b1be0230273, results HASH(0x55ab122a59c8) HASH(0x55ab122ae010) Result found: flight 183031 (fail), for basis failure (at ancestor ~2128)
 Repro found: flight 183033 (pass), for basis pass
 Repro found: flight 183065 (fail), for basis failure
 0 revisions at 47230842aa6bca1da75cc92c50144f223d1ad1d3 22b8996dba9041874845c7446ce89ec4ae2b713d c3038e718a19fc596f7b1baba0f83d5146dc7784 c530a75c1e6a472b0eb9558310b518f0dfcd8860 3d273dd05e51e5a1ffba3d98c7437ee84e8f8764 0df9387c8983e1b1e72d8c574356f572342c03e6 7aa28849a1155d856e214e9a80a7e65fffdc3e58
No revisions left to test, checking graph state.
 Result found: flight 183049 (pass), for last pass
 Result found: flight 183051 (fail), for first failure
 Repro found: flight 183052 (pass), for last pass
 Repro found: flight 183053 (fail), for first failure
 Repro found: flight 183054 (pass), for last pass
 Repro found: flight 183055 (fail), for first failure

*** Found and reproduced problem changeset ***

  Bug is in tree:  xen git://xenbits.xen.org/xen.git
  Bug introduced:  21bdc25b05a0f8ab6bc73520a9ca01327360732c
  Bug not present: 7aa28849a1155d856e214e9a80a7e65fffdc3e58
  Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/183055/


  commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c
  Author: Andrew Cooper <andrew.cooper3@citrix.com>
  Date:   Wed Sep 13 12:20:12 2023 +0100
  
      x86/entry: Track the IST-ness of an entry for the exit paths
      
      Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
      entry/exit asm, so it only needs setting in the IST path.
      
      As this is subtle and fragile, add check_ist_exit() to be used in debugging
      builds to cross-check that the ist_exit boolean matches the entry vector.
      
      Write check_ist_exit() it in C, because it's debug only and the logic more
      complicated than I care to maintain in asm.
      
      For now, we only need to use this signal in the exit-to-Xen path, but some
      exit-to-guest paths happen in IST context too.  Check the correctness in all
      exit paths to avoid the logic bit-rotting.
      
      Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
      Reviewed-by: Jan Beulich <jbeulich@suse.com>

Revision graph left in /home/logs/results/bisect/xen-unstable-smoke/test-amd64-amd64-libvirt.xen-boot.{dot,ps,png,html,svg}.
----------------------------------------
183069: truncated

flight 183069 xen-unstable-smoke real-bisect [real]
http://logs.test-lab.xenproject.org/osstest/logs/183069/

Perfect :-)
All tests in this flight passed as required

jobs:
 build-amd64                                                  pass    
 build-amd64-libvirt                                          pass    
 test-amd64-amd64-libvirt                                     truncated


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 20:53:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 20:53:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605017.942619 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qihiy-0007aY-U9; Tue, 19 Sep 2023 20:53:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605017.942619; Tue, 19 Sep 2023 20:53:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qihiy-0007aR-P2; Tue, 19 Sep 2023 20:53:36 +0000
Received: by outflank-mailman (input) for mailman id 605017;
 Tue, 19 Sep 2023 20:53:35 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rlr/=FD=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qihix-0007aJ-Bg
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 20:53:35 +0000
Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com
 [2a00:1450:4864:20::32b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 988a73f4-572e-11ee-8789-cb3800f73035;
 Tue, 19 Sep 2023 22:53:33 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-401187f8071so1563365e9.0
 for <xen-devel@lists.xenproject.org>; Tue, 19 Sep 2023 13:53:33 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 n12-20020a05600c294c00b0040303a9965asm40842wmd.40.2023.09.19.13.53.32
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Sep 2023 13:53:32 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 988a73f4-572e-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695156813; x=1695761613; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=/8v+fLBjzDchcY3KEo/X8Cz0FYTTYDqEFVcitrjtkZE=;
        b=ofERRzx5Tno0sYi69s7ej3K2GtZWGgP/4OomNrJpLvxKa6foqRBFLVel9/LwBA1Ruo
         zd8hFx6v9QwR51evdLWBdJm1lDWfVtuPeEwDejQWkkcDXOBeVq7czdFRfZMdhkCf08gq
         xwl526D9sdj85IoIVFynPDXDrzpfuRAWNUniE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695156813; x=1695761613;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=/8v+fLBjzDchcY3KEo/X8Cz0FYTTYDqEFVcitrjtkZE=;
        b=sIYW06V/5zEpIg9Z2qOropAYBTwNvCm5ap84VDA2l+DKldPaqOZO11ab0vf/tpnrWk
         tjAwTAzt2JNfuW4Uzarx2qXiJm7X+BJJBQVXTsUrlrgxsKIvnM8SdXKnQbA2m/n1pPYr
         WUNGPzHMZktGkVi2M066S3zzY3P9erL1IadXqY3r3Siftfpb+FC/OqB3zS1Q/KpbhMSQ
         pGLXIketyoiYjemwknjFbIYc7o/T+Tzp2Iguq9hQkp/jehH7xmE6wUg4pIKrrsdINuYX
         uNTW/NoGjeMOqX8EeOs7r4bWnktWaWsFGM+bS8bHfR75yeiv025vy2vNV31e9VwygXnU
         7maA==
X-Gm-Message-State: AOJu0YxnMCEwbQ85bcsUfqnoGjUohf04vRpup5D8ICR+rRTAnk2X44lk
	iygW4bV4y+3eQ22mvKZBhLfnKEx3cBZG6UthBIEDeQ==
X-Google-Smtp-Source: AGHT+IHPALjSqpBEMOPHY2jCaanelpsapTy/3wwM/rUipwBV1i8kvqrH/3dnQavwDZ3CALKBQxMSxA==
X-Received: by 2002:a05:600c:1e20:b0:401:bd94:f45b with SMTP id ay32-20020a05600c1e2000b00401bd94f45bmr3147473wmb.4.1695156812885;
        Tue, 19 Sep 2023 13:53:32 -0700 (PDT)
Message-ID: <7de1e96f-a867-e5e2-45d5-3c64cd01ea3a@citrix.com>
Date: Tue, 19 Sep 2023 21:53:32 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2 0/7] x86/pv: #DB vs %dr6 fixes, part 2
Content-Language: en-GB
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <JBeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Wei Liu <wl@xen.org>,
 Jinoh Kang <jinoh.kang.kr@gmail.com>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
In-Reply-To: <20230915203628.837732-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 15/09/2023 9:36 pm, Andrew Cooper wrote:
> This time with a bit of sanity testing.  See patches for details.
>
> Andrew Cooper (7):
>   x86/emul: ASSERT that X86EMUL_DONE doesn't escape to callers
>   x86/emul: Fix and extend #DB trap handling
>   x86/pv: Fix the determiniation of whether to inject #DB
>   x86/pv: Drop priv_op_ctxt.bpmatch and use pending_dbg instead
>   x86: Introduce x86_merge_dr6()
>   x86: Extend x86_event with a pending_dbg field
>   x86/pv: Rewrite %dr6 handling

I've found even more PV debug bugs.

1) The MSR leak fix stopped MSR_DEBUGCTL leaking into PV guests, and
even "broke" my XTF test (still not blocking in CI because of bisector
interaction issues).  Really, this was one buggy case swapped for
another, but it needs resolving nevertheless.

2) activate_debugregs() has a misleading dr7 check in it (the caller is
gated on the same condition, making it tautological).  Worse however, it
loads %dr6 which interferes with with the #DB handler trying to get a
clean view of "new bits".  PV guests can't access %dr6 at all, so I'm
reasonably sure it's state we simply don't need to load at all.

3) The comment in paravirt_ctxt_switch_from() about debug regs is
buggy.  The logic is correct, but the reasoning is false.

4) set_debugreg() doesn't account for the dr7 state before loading
dr{0..3} in current context.  This manifests as spuriously loading
breakpoint registers despite not having debugging "active".  I think
it's benign.

5) The order of operations in activate_debugregs() is wrong.  There's a
period of time where we've got the new vCPU's breakpoints active using
the old vCPU's mask registers.  Again, I think it's benign.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 21:09:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 21:09:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605022.942628 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qihy0-0001bi-4n; Tue, 19 Sep 2023 21:09:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605022.942628; Tue, 19 Sep 2023 21:09:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qihy0-0001bb-1x; Tue, 19 Sep 2023 21:09:08 +0000
Received: by outflank-mailman (input) for mailman id 605022;
 Tue, 19 Sep 2023 21:09:06 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qihxx-0001bR-VI; Tue, 19 Sep 2023 21:09:05 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qihxx-0007YT-Jx; Tue, 19 Sep 2023 21:09:05 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qihxx-0002DY-7i; Tue, 19 Sep 2023 21:09:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qihxx-0000wq-7I; Tue, 19 Sep 2023 21:09:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=RKIhwKhLCqxqFj5f4K/QQkdVF6xzacJ0bWioCsZcGao=; b=2h+sMJuT9kURGIEUBToWkY+6rm
	94R90dfzMI4uPm7NzJnkrVUcTktw37+y+Z1P+CwXvkiQ86jgCKXFHcsTlrvI/Xt+IiXiMXY9xbyyG
	nIcs5lFtl6xBuD4qRQ1LUwSsGVnSy+qVmWcHzTWQvvXeBTE+2H2mtPXlM6IEx3SwGzoY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183046-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183046: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-amd64-i386-pair:xen-install/src_host:fail:heisenbug
    xen-unstable:test-amd64-i386-freebsd10-i386:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-pair:xen-install/dst_host:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
X-Osstest-Versions-That:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 21:09:05 +0000

flight 183046 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183046/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail in 183032 pass in 183046
 test-amd64-i386-pair         10 xen-install/src_host       fail pass in 183032
 test-amd64-i386-freebsd10-i386  7 xen-install              fail pass in 183032
 test-amd64-i386-pair         11 xen-install/dst_host       fail pass in 183032

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 183032
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183032
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183032
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183032
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183032
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183032
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183032
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183032
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183032
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183032
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183032
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183032
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273
baseline version:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273

Last test of basis   183046  2023-09-19 04:03:13 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               fail    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         fail    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Tue Sep 19 22:18:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 22:18:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605032.942644 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qij3I-0003TL-39; Tue, 19 Sep 2023 22:18:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605032.942644; Tue, 19 Sep 2023 22:18:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qij3I-0003TE-06; Tue, 19 Sep 2023 22:18:40 +0000
Received: by outflank-mailman (input) for mailman id 605032;
 Tue, 19 Sep 2023 22:18:38 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ckRK=FD=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qij3G-0003T8-Lk
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 22:18:38 +0000
Received: from mail-pf1-x42e.google.com (mail-pf1-x42e.google.com
 [2607:f8b0:4864:20::42e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 773c9bf1-573a-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 00:18:32 +0200 (CEST)
Received: by mail-pf1-x42e.google.com with SMTP id
 d2e1a72fcca58-690d2e13074so682149b3a.1
 for <xen-devel@lists.xenproject.org>; Tue, 19 Sep 2023 15:18:32 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 v3-20020a62a503000000b00682bec0b680sm9034527pfm.89.2023.09.19.15.18.25
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Sep 2023 15:18:30 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 773c9bf1-573a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1695161911; x=1695766711; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=3/WBAKiVVTIZTUnUZcCI6R2zaD2HeHs6ef/lTYwk9Cs=;
        b=SmJFj+cFMDEAyVyfkBHx7l6/ZdJ77M3wxVHOCLmobzW7aNUC7BdEhPLsc3wZ9osQgZ
         HL0iNYMJ2QJXom8MJMCe4HVmMUIFlwYzdLE26Mu8Xo9Z01Gh/TOhr1Uctp9ER9Gp2eoj
         uQdIsFnrm/AId7lZOLkyyeOFQy2tzHd823xqIbXeMaw4DzUae7owH21QT9f/jxCydAb6
         veQzPi7B36n/Fxf0IQiA9tskZA/ZMo8RZvSNrRHSE9k+UYKArGcgqkwoQVa+txmqco0h
         fN3mA3AIGqCzdkM3Eode/IMMZz2KoNX2MWkIkKWXOJL6nECLVjTOLFWCSyJHyNs5FXPD
         vLSg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695161911; x=1695766711;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=3/WBAKiVVTIZTUnUZcCI6R2zaD2HeHs6ef/lTYwk9Cs=;
        b=dH1gh0pBLN24PDn8LuofWjkn66uW51dwhufw20g8XCrZH5Zt4jbu4R7E3mK4q+M6C8
         9+VG7F8ioVIR1EDApIAEL6a67a5pCHGoZyZ+2ok3Xq/0FsAEnwIb97yckoHGmspaaKyW
         kuhGrrHBv/o5zHm3yajYRifYL1kLIfS34RGZMWTEht9DdKIMV703yw7xDJoBct6lJeAO
         Mnc0GdX7ZAkTrds6wtDRihjyKGsoT5U4SKeh/TVzVR1EGHa7W4Y4qWBvlksWO20MtGQ8
         mqAO0W3YQCfoYJ4kVTrcgO2PczGI6Zk2qAA8+OrbQdXIfgLFuK3kf0Vw7eE499zPv9Tj
         JF9A==
X-Gm-Message-State: AOJu0Yz0OcfpdLVhkATAdlZVyQgWOXIienTvNLPKdghJGem3hCAQgS4A
	wLNczEyOFqTiHqhxj4IqPbaRLA==
X-Google-Smtp-Source: AGHT+IGCTM5ajgY5J1AFb3CtixVMVLw6zdcujmSjeiV0hK1rQ20clhkJcshSrSIKpJN+HiDrOS5rdw==
X-Received: by 2002:a05:6a00:1950:b0:68e:4955:c405 with SMTP id s16-20020a056a00195000b0068e4955c405mr910424pfk.27.1695161910722;
        Tue, 19 Sep 2023 15:18:30 -0700 (PDT)
Message-ID: <73a35fbb-c9a4-41dc-a6c7-26037b0e412f@daynix.com>
Date: Wed, 20 Sep 2023 07:18:24 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 07/13] softmmu/memory: enable automatic
 deallocation of memory regions
Content-Language: en-US
To: Xenia Ragiadakou <xenia.ragiadakou@amd.com>, Huang Rui
 <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>, qemu-devel@nongnu.org
Cc: xen-devel@lists.xenproject.org,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-8-ray.huang@amd.com>
 <99fb4575-9f8d-4ab6-bc22-911bbaa7ca55@daynix.com>
 <c0370b6e-c17e-2400-ef8a-7a759d2fc2d7@amd.com>
 <75698621-d210-40eb-872d-f3cfc6e4dbff@daynix.com>
 <32a68715-201b-9923-9600-fe5ae49e4b7b@amd.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <32a68715-201b-9923-9600-fe5ae49e4b7b@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 2023/09/19 23:21, Xenia Ragiadakou wrote:
> 
> On 19/9/23 13:44, Akihiko Odaki wrote:
>> On 2023/09/19 19:28, Xenia Ragiadakou wrote:
>>>
>>> On 15/9/23 18:11, Akihiko Odaki wrote:
>>>> On 2023/09/15 20:11, Huang Rui wrote:
>>>>> From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>>>
>>>>> When the memory region has a different life-cycle from that of her 
>>>>> parent,
>>>>> could be automatically released, once has been unparent and once 
>>>>> all of her
>>>>> references have gone away, via the object's free callback.
>>>>>
>>>>> However, currently, references to the memory region are held by its 
>>>>> owner
>>>>> without first incrementing the memory region object's reference count.
>>>>> As a result, the automatic deallocation of the object, not taking into
>>>>> account those references, results in use-after-free memory corruption.
>>>>>
>>>>> This patch increases the reference count of an owned memory region 
>>>>> object
>>>>> on each memory_region_ref() and decreases it on each 
>>>>> memory_region_unref().
>>>>>
>>>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>>>> ---
>>>>>
>>>>> V4 -> V5:
>>>>>      - ref/unref only owned memory regions (Akihiko)
>>>>>
>>>>>   softmmu/memory.c | 5 +++++
>>>>>   1 file changed, 5 insertions(+)
>>>>>
>>>>> diff --git a/softmmu/memory.c b/softmmu/memory.c
>>>>> index 7d9494ce70..15e1699750 100644
>>>>> --- a/softmmu/memory.c
>>>>> +++ b/softmmu/memory.c
>>>>> @@ -1800,6 +1800,9 @@ void memory_region_ref(MemoryRegion *mr)
>>>>>       /* MMIO callbacks most likely will access data that belongs
>>>>>        * to the owner, hence the need to ref/unref the owner whenever
>>>>>        * the memory region is in use.
>>>>> +     * Likewise, the owner keeps references to the memory region,
>>>>> +     * hence the need to ref/unref the memory region object to 
>>>>> prevent
>>>>> +     * its automatic deallocation while still referenced by its 
>>>>> owner.
>>>>
>>>> This comment does not make sense. Traditionally no such automatic 
>>>> deallocation happens so the owner has been always required to free 
>>>> the memory region when it gets finalized.
>>>>
>>>> "[QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands" 
>>>> introduces a different kind of memory region, which can be freed 
>>>> anytime before the device gets finalized. Even in this case, the 
>>>> owner removes the reference to the memory owner by doing res->region 
>>>> = NULL;
>>>
>>> Hi Akihiko,
>>>
>>> You are right, the word "owner" is not correct. The issue observed 
>>> was due to the references kept in flatview ranges and the fact that 
>>> flatview_destroy() is asynchronous and was called after memory 
>>> region's destruction.
>>>
>>> If I replace the word "owner" with "memory subsystem" in the commit 
>>> message and drop the comment, would that be ok with you? or do want 
>>> to suggest something else?
>>
>> This will extend the lifetime of the memory region, but the underlying 
>> memory is still synchronously freed. Can you show that the flatview 
>> range will not be used to read the freed memory?
> 
> Yes, the intention of this patch is to delay the mr object finalization 
> until all memory_region_unref() on this mr have been taken place.
> 
> What do you mean by "the underlying memory is still synchronously freed"?
> 

A pointer is passed to memory_region_init_ram_ptr() with the ptr 
parameter when initializing the memory region and the memory region 
keeps the pointer.

In virtio_gpu_virgl_resource_unmap(), the memory pointed with the 
pointer is unmapped with virgl_renderer_resource_unmap() and makes the 
pointer kept by the memory region dangling though the lifetime of the 
memory region is extended with this patch. Can you show that the 
dangling pointer the memory region has will never be referenced?


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 22:25:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 22:25:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605038.942654 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qij9W-0004zj-Rz; Tue, 19 Sep 2023 22:25:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605038.942654; Tue, 19 Sep 2023 22:25:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qij9W-0004zc-OT; Tue, 19 Sep 2023 22:25:06 +0000
Received: by outflank-mailman (input) for mailman id 605038;
 Tue, 19 Sep 2023 22:25:05 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qij9V-0004zS-KJ; Tue, 19 Sep 2023 22:25:05 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qij9V-0000rl-B9; Tue, 19 Sep 2023 22:25:05 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qij9U-00047N-Su; Tue, 19 Sep 2023 22:25:04 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qij9U-0007Ts-SU; Tue, 19 Sep 2023 22:25:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=AfjHMpB227wAJGnC6ecvDbNmGla8XpNxA3z97WVGjO8=; b=EJIFFkBraCsMta3RcyS51HmdJj
	d9YMOs9vcW2oUcFeIjQH4CYNmo49X+F16IEPn+z6FIJ6LwBgdj3+O2FzqliXwCmKpFfrA24QbBIs9
	ocKyRiebym2nlQKfkhkTfkJxDrXtxGK1pGjTH/SpUD2COGANRt/TLI8WpwNFjsw7p7bA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183070-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183070: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=9b57c800b79b96769ea3dcd6468578fa664d19f9
X-Osstest-Versions-That:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 22:25:04 +0000

flight 183070 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183070/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  9b57c800b79b96769ea3dcd6468578fa664d19f9
baseline version:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273

Last test of basis   183030  2023-09-18 14:02:00 Z    1 days
Failing since        183031  2023-09-18 17:01:55 Z    1 days    9 attempts
Testing same since   183070  2023-09-19 20:00:24 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Simon Gaiser <simon@invisiblethingslab.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   2ea38251eb..9b57c800b7  9b57c800b79b96769ea3dcd6468578fa664d19f9 -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 22:48:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 22:48:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605049.942666 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qijW3-0000T4-N4; Tue, 19 Sep 2023 22:48:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605049.942666; Tue, 19 Sep 2023 22:48:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qijW3-0000Sx-Jr; Tue, 19 Sep 2023 22:48:23 +0000
Received: by outflank-mailman (input) for mailman id 605049;
 Tue, 19 Sep 2023 22:48:22 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qijW2-0000Sn-Ia; Tue, 19 Sep 2023 22:48:22 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qijW2-0001Pu-Cp; Tue, 19 Sep 2023 22:48:22 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qijW2-0004jM-4k; Tue, 19 Sep 2023 22:48:22 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qijW2-0004ue-4I; Tue, 19 Sep 2023 22:48:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=9Q8DK5c4kk9LmjFFil6RhFfj4gXKisOYupT3Bt+I+g0=; b=N36m63p/Za/KGqh9gsLzDK7ppv
	C7dQaIZWBSriCT8YEYVf6tOiJu0mosZAzZZWxbUb/ZZ9sS0op/Oz1mX7fxAW7NxDjM3Ex9EN96jbk
	/ZOhcvvfL3GN6sx7KU9NEHsOAA3OJkhFKEVchF8VjY5v4HJZES4UxufqDGHQe1+u6TKY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183072-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183072: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=eb485b6438f488db5300b56949d9dad460c9f2d4
X-Osstest-Versions-That:
    ovmf=7275993dc64481b1c21d7d70af434bfaafe86e81
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 22:48:22 +0000

flight 183072 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183072/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 eb485b6438f488db5300b56949d9dad460c9f2d4
baseline version:
 ovmf                 7275993dc64481b1c21d7d70af434bfaafe86e81

Last test of basis   183063  2023-09-19 16:10:46 Z    0 days
Testing same since   183072  2023-09-19 20:45:49 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Leif Lindholm <quic_llindhol@quicinc.com>
  Peter Maydell <peter.maydell@linaro.org>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   7275993dc6..eb485b6438  eb485b6438f488db5300b56949d9dad460c9f2d4 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 23:12:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 23:12:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605057.942677 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qijtf-0004jU-G4; Tue, 19 Sep 2023 23:12:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605057.942677; Tue, 19 Sep 2023 23:12:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qijtf-0004jN-DR; Tue, 19 Sep 2023 23:12:47 +0000
Received: by outflank-mailman (input) for mailman id 605057;
 Tue, 19 Sep 2023 23:12:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=L6Xq=FD=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qijtd-0004jF-PH
 for xen-devel@lists.xenproject.org; Tue, 19 Sep 2023 23:12:45 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0982ad58-5742-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 01:12:44 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 06C1C617F5;
 Tue, 19 Sep 2023 23:12:43 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9A2C8C433C7;
 Tue, 19 Sep 2023 23:12:41 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0982ad58-5742-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695165162;
	bh=ER/MW0AO0tMMbIQ4m0c/4J4loJuEhut9fmSuNw6jfM4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=hrzLyJJJbbB+Mchs/w/0Rf0p23hTP67dDgNxbpqVK/mXP+RPTxxODUrOemp0fCOV3
	 dAGrFIau8+aHM/E4WLgRtEo8jM+iLImIhryPze2vqKd5ZkiTRuU/TuHwNd22w/BrQK
	 nflDdK/mW2mQGzIrpHXpukJNiSLGT7DRVHGkXut0Cgr0FNDc9EmbdPmZ1GFausp1n/
	 fRizz+r449npv+tgGPLkIueRXPBZplv2iYjAa4u+tXw5Zn1SDxOJKvvEJAZGzg5MwV
	 m7YgmSycUidVPoUUCbZJNJlT3z1hGDdoEz8q9T5gVT6D2SUzlHm1m6JmnpKZssNmqb
	 DnNUn8lkl9sug==
Date: Tue, 19 Sep 2023 16:12:40 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
    simone.ballarin@bugseng.com, nicola.vetrini@bugseng.com, 
    sanastasio@raptorengineering.com
Subject: Re: xen | Failed pipeline for staging | ea36ac0d
In-Reply-To: <a5a252a7-47b0-3ee2-3157-0b18e5f0b079@suse.com>
Message-ID: <alpine.DEB.2.22.394.2309191609280.3563@ubuntu-linux-20-04-desktop>
References: <65096f918e2e5_29a56047619e@gitlab-sidekiq-catchall-v2-84c6ffbc68-bt8nn.mail> <a5a252a7-47b0-3ee2-3157-0b18e5f0b079@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 19 Sep 2023, Jan Beulich wrote:
> On 19.09.2023 11:53, GitLab wrote:
> > Job #5118269256 ( https://gitlab.com/xen-project/xen/-/jobs/5118269256/raw )
> > 
> > Stage: analyze
> > Name: eclair-x86_64
> 
> Quoting from the log:
> 
> ...
> Success: No unexpected reports.
> ...
> ENOENT: no such file or directory, mkdir '/var/local/eclair/xen-project.ecdf/xen-project/xen/ECLAIR_normal/staging/X86_64/5118269256'
> ...
> 
> If that's the sole reason for the failure, then it doesn't look to be code
> related.

That is one issue, I am CCing Simone and Nicola. Please send a quick fix
for the "ENOENT" error from the eclair-x86_64 job.

There is a second unrelated issue breaking staging. The PPC builds are
failing. I am CCing Shawn. Please send a quick fix if you can to unblock
gitlab-ci if you can.

https://gitlab.com/xen-project/xen/-/jobs/5122987281
https://gitlab.com/xen-project/xen/-/pipelines/1010095539


From xen-devel-bounces@lists.xenproject.org Tue Sep 19 23:46:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 19 Sep 2023 23:46:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605063.942687 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qikPl-00019q-Vg; Tue, 19 Sep 2023 23:45:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605063.942687; Tue, 19 Sep 2023 23:45:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qikPl-00019j-Sj; Tue, 19 Sep 2023 23:45:57 +0000
Received: by outflank-mailman (input) for mailman id 605063;
 Tue, 19 Sep 2023 23:45:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qikPk-00019Z-NK; Tue, 19 Sep 2023 23:45:56 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qikPk-0002oQ-Gj; Tue, 19 Sep 2023 23:45:56 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qikPk-00062i-2G; Tue, 19 Sep 2023 23:45:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qikPk-0000bY-1t; Tue, 19 Sep 2023 23:45:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Qn6k5UPlAbgbLspiG9OU6MSQ+ajVLMWJGzCgcaAKO+U=; b=basgEo9H1jIbrWokcw3C0p6MTu
	d37h8/NS6FasS1NdcLNtHimHxabz1sysevGJuODO6LXUkfZ5e1BzARMBp9s/Ad+QG/blN+XYSJ4fK
	RRnBDr2XZy4Cef7VWTXPoWhWUF/EhymAx9/Mf9yzc/IqIqlQ4R5SOHnAkkiTZHk447QU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183048-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183048: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=732c5f42704259b239f9533c31d43799054f184b
X-Osstest-Versions-That:
    libvirt=47230842aa6bca1da75cc92c50144f223d1ad1d3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 19 Sep 2023 23:45:56 +0000

flight 183048 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183048/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183014
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183014
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183014
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              732c5f42704259b239f9533c31d43799054f184b
baseline version:
 libvirt              47230842aa6bca1da75cc92c50144f223d1ad1d3

Last test of basis   183014  2023-09-16 04:20:23 Z    3 days
Testing same since   183048  2023-09-19 04:18:53 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  K Shiva Kiran <shiva_kr@riseup.net>
  Michal Privoznik <mprivozn@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   47230842aa..732c5f4270  732c5f42704259b239f9533c31d43799054f184b -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 04:34:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 04:34:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605071.942697 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiouQ-0001Lc-EO; Wed, 20 Sep 2023 04:33:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605071.942697; Wed, 20 Sep 2023 04:33:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiouQ-0001LU-8n; Wed, 20 Sep 2023 04:33:54 +0000
Received: by outflank-mailman (input) for mailman id 605071;
 Wed, 20 Sep 2023 04:33:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3b5T=FE=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qiouO-0001LO-GQ
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 04:33:52 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.115])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e38cfe33-576e-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 06:33:48 +0200 (CEST)
Received: from fmsmga003.fm.intel.com ([10.253.24.29])
 by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 19 Sep 2023 21:33:41 -0700
Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16])
 by FMSMGA003.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 19 Sep 2023 21:33:41 -0700
Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by
 ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Tue, 19 Sep 2023 21:33:41 -0700
Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by
 orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Tue, 19 Sep 2023 21:33:41 -0700
Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.43) by
 edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Tue, 19 Sep 2023 21:33:40 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by CH3PR11MB8187.namprd11.prod.outlook.com (2603:10b6:610:160::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Wed, 20 Sep
 2023 04:33:38 +0000
Received: from SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61]) by SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61%5]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 04:33:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e38cfe33-576e-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695184428; x=1726720428;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=KodWI222Ne4KcR+J4h7jJIpwYezt6mL7WzTywnyFLHo=;
  b=NKzUE7M1DtOLH/PSq6DhIt6NaPbBrp1NQq1l5WCyNsVrxybvIJZL0a0U
   Aff5jbPYqFcMcTsFo5CkOwtsX7qWj3ospIgZ7fzpsbTCmtfZuA7/cCyT4
   WdfnFr1czW/6xauJX6FByKgb9dOIZgd7cERWA9E+GG7JIvjCnxmN0xhR/
   q7EMcbGIZRoJ+tMDjvwW3TpplNKAlznS1pB/b9WABueJVUs+SkM0Wtqyw
   Vfa0MAOG5ELqAvotv0B0WYJJU4AhjnZbH5bcPXaUWkm0amBOk+DEBWQhr
   dD4wTfG7PU47vwo9FVjZnDQUsrreJR6wsYYW5OuNRFAB8TE2bhedcCt4p
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10838"; a="380020871"
X-IronPort-AV: E=Sophos;i="6.02,161,1688454000"; 
   d="scan'208";a="380020871"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10838"; a="836695527"
X-IronPort-AV: E=Sophos;i="6.02,161,1688454000"; 
   d="scan'208";a="836695527"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GDGdrb+ENySOSoaJwFbw7TvyFIbnqaTP8IP40GnC2Ulga0UvZKEfvRIVJwHjXVsAzYHuJSp9m8u9qrhNzRWgJiUu/u8bZAv36Cpbd8Ny1ImyCdIz8giK6bIu6UrqMp250UTCM30io5a+c29ronDjWWdSxwJbxQIJPLR/tXY8fMY/CUBrnBR2NPQ7fWok52VyK7ag27HIBSLIqj01w0fw7PdF5zp8wcj5q4O0hYLT1YkfLmz+Xd54KCV6pZiIID/+8cBVMMk5WimrfgVwgLcl8aHJ3m/8JPEurF/Ee/wAbjXb0Am4VZzuiyVl0rpbqVgdYWEWnP8pnxEgOEvC6wae5Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cuWtYsNSV45fWFoOBKicjRCIAtGyvumISLu68v8Tnfw=;
 b=UwqzdeYdSGLKU4z2foRy/kpYEqkZ8JwwcOv5KKxve7edM1IpzozjbIPX7JyifsUpfIrLARDIKjGSHHX4/EAjYLvMWLhi4EgxSCggbBcK5Q0D3EgkWkRF9p1lFyxeY2US5mgz/5d5P8Uow8e7JpbnsErbyzj067ugsR0JjZBz/uEu7gmGugk8UsWBSZ5/+uAM0hZNyMhNVdpoDEHrBEtOUvP7E2O6KwQDcmt2LZg6YOAKQZ/SA9ZY926YG6xx52PKIdEbeeoZG15IOcX+tw5cEAS0dhZ1g1bekwFtB5irj3TNK41y8X7JCrFfgLOXEbw+plt0Pfmdm9qgqhxp11FRaQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Li, Xin3" <xin3.li@intel.com>
To: Thomas Gleixner <tglx@linutronix.de>, "linux-doc@vger.kernel.org"
	<linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
	<linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
	<linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
	<linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "mingo@redhat.com" <mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>, "x86@kernel.org"
	<x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>, "Lutomirski, Andy"
	<luto@kernel.org>, "pbonzini@redhat.com" <pbonzini@redhat.com>,
	"Christopherson,, Sean" <seanjc@google.com>, "peterz@infradead.org"
	<peterz@infradead.org>, "Gross, Jurgen" <jgross@suse.com>, "Shankar, Ravi V"
	<ravi.v.shankar@intel.com>, "mhiramat@kernel.org" <mhiramat@kernel.org>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"jiangshanlai@gmail.com" <jiangshanlai@gmail.com>
Subject: RE: [PATCH v10 36/38] x86/fred: Add fred_syscall_init()
Thread-Topic: [PATCH v10 36/38] x86/fred: Add fred_syscall_init()
Thread-Index: AQHZ5strXMSQ17oxYk2by6W1B7FxqLAh2QeAgAFNrPA=
Date: Wed, 20 Sep 2023 04:33:38 +0000
Message-ID: <SA1PR11MB6734C02FFB973B2074EC6CC8A8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-37-xin3.li@intel.com> <87v8c6woqo.ffs@tglx>
In-Reply-To: <87v8c6woqo.ffs@tglx>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SA1PR11MB6734:EE_|CH3PR11MB8187:EE_
x-ms-office365-filtering-correlation-id: c40c0e54-f61e-4c4f-7255-08dbb992c296
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: khPSh9PhOUeMIRmEw4KIle6Rf8sOG8VwkEu2VnURKMnAICdS9+mt1eUdVSS2cafnVDyKS0tFtQQSmp7Fib4DZYOobmiukEGiAqCDNX5XNx6dPKJfO/CJsrN19Qov80o5qSeqdAlRdvIbY+N+WlIeP8KFSokZO7aCVsMnO4G/lgxazUNZrj+a450O/DDrUfTlKen/l7sZpgcz3gq5MY6u1NWj2eoir8GVpVV3ujfbUOCQnOxOynUA3JAqr4g84OksuOb2HJ8AUuwPEiz4aEMasYXmoGavXxMu/29s7yr3RKj9dkMMTT/PIcH6LHZJHh499izxOgi65n3LeqS73eEb17IbeQKIE+fauLH4rAJg6XQSPIdEyjSfLIqwktE/frhqFQmlF/YfiD9iF3vzMtwT0ZIDSMzuUzz7HTxDGcDIEPwGKVH1Q7UQteoLTZPCNlbhIkHrdasfhf2J2aLJdOaC5kSq0SYDXb15hSiC+W8K1+Aev50yhEswlwtWAE3l+MR+tQMcqmwbmkeNTlCZ0v2L4hxO80t+GRiVil8CspzAtkHbHny+Y3r2zO9P8GasgKahnwCLogd6EhHqPjYLBMLFxNqVAfeCEi/uIeDWZMH+PDLoYItU9avgLD9LlAua7TM1
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6734.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(136003)(346002)(366004)(376002)(186009)(451199024)(1800799009)(26005)(52536014)(33656002)(8676002)(4326008)(8936002)(7416002)(2906002)(4744005)(66476007)(5660300002)(55016003)(86362001)(9686003)(71200400001)(6506007)(7696005)(122000001)(38070700005)(38100700002)(82960400001)(41300700001)(110136005)(76116006)(66946007)(66556008)(316002)(478600001)(64756008)(54906003)(66446008);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?jZ6ohgHOzvXsD6IYtOKwm9p/axEO9d/fyVqePdBFmr/1y1yiGkLHAr8PIBYG?=
 =?us-ascii?Q?wT1efeGaLkeHQ9qIMw5lrRR6quIMkiIBdGVvlyzlt0rCmgHqyDa/AVdi1tGg?=
 =?us-ascii?Q?i2qnmeEgZmoeM/A2uLtoOQNj7cfjTe5GlsWgHSZ3boxDnM8U+Myqw9rb/rHd?=
 =?us-ascii?Q?fYSASLigfqu1p1UwGl58x4/DMMz0Gyxx2Oq2vXSQnvdQkcqPMV6pE3GVwPFk?=
 =?us-ascii?Q?EhzQJFKNWmFLV6jv3W2QAQJ984ty09YjsqQ7esDMNLuDzy4hEhXJRvoCa9yS?=
 =?us-ascii?Q?2N0SSzALvJvlBqS6F4U1MITb9Cp1eXNDzDh1Ji9UPJf4/8vMOQsfiuNQgz94?=
 =?us-ascii?Q?3SoHMb6B8H6x18YwhXH0CNBj9czoUaT57MAdfu68ww51Uoce5FFbo+BwJ0kM?=
 =?us-ascii?Q?K/iMKTpvAq4NPz5cpdwtRfV1A3KojQWoPIBdP2buV2lvgUiqkbak6my1Xj+N?=
 =?us-ascii?Q?bO+sxDXIS5JVhu+PG57PCCytJewputXFT9RDOfJDQJ/5RTV+WcgJYGQYTSTj?=
 =?us-ascii?Q?f5kf0Ci2zc+LU7iHl4b92xsNCtLOEeOlUz2UeNTAWrmSFv3yczcBxHgzW7ya?=
 =?us-ascii?Q?JGEI4JyLHnu8LDewB3SGBTOSd3h2ASDp9fZz3Vmw1m6Uq4u8ZqcyqCGCgeVS?=
 =?us-ascii?Q?mor6DT+e5qpeSVbyh5XR4l6w5JVyjiYkY+P9FoYCqTQqPP/LQjFL5ZxuKLy2?=
 =?us-ascii?Q?lB7eUfjCKcxrE6x371W4u8cqPfquOA4S+CbCMTfTnGqG8DnNE/+yeqmo1AH5?=
 =?us-ascii?Q?0V5ZwEjEFoslpkuvfCcZpuTjLVGspRaqmdGt3hwCwK5cYzAann3cK+LYMuhe?=
 =?us-ascii?Q?bXSYlkgD8MKSNMdRjk9rImOZ2604+2rlJD0Kk2PvR9cInM/yw8eN5RD/Fo+5?=
 =?us-ascii?Q?HRaBq1bRoehr3GyY9UtJQIhVygtoyhfZRFDQLnDOw/f1vcIoaQ/W+SYzB5or?=
 =?us-ascii?Q?jSVLKQA8NOow3l0N9mQwPGsn0q0Vqt9iU54zpfV6F8Rad9MOcki9op8aKB57?=
 =?us-ascii?Q?HbYGMAOfN6+P3pmkczBDLTbrLVkN0Q336ITpbT5yEMZAnAqPE4csMuS+OS5t?=
 =?us-ascii?Q?cTYqR74VW2Lqlz4WmuAK/Oleo2L3B29KmaUCIt+A/KoVc9LlrAEl5cX+tEXG?=
 =?us-ascii?Q?ygrmQ44DrAWbHrxzGy2uL1BivUPKS2v0tkGopp2b90XZCpM5c+fuaA4fOWck?=
 =?us-ascii?Q?8qO2Y70Z76lbUAR5lrbw/P8/xC7YQIqLw8xl08IDBNHRUaiJBqgCXVswm+px?=
 =?us-ascii?Q?8WzM3gxPdlhAAIuJ87KSXANYULGk7pSaTo9sWGf/CUSVhi0Ve3966jBRL1Kx?=
 =?us-ascii?Q?hw+PHDkSNyDM67aY8mccqstPlpVhOuaf1FfrQM30HOAAFYpsXzGwREP+IaNV?=
 =?us-ascii?Q?jJpvoWilQCAr59Qe1q0BWL6EXJJJ4qp35BOnGcbCRIbIKxt3neCs1Alh7FO6?=
 =?us-ascii?Q?jdjQCIcbtnJqQ3oVTjLXXQ5ssMEzzT85orUauR//KK4vUbwWciUAVi5rD+3/?=
 =?us-ascii?Q?cH4O+qogp1db1dqBsoaUn2H1TvBdcuS+G7JdKnpLo1rJqVCYgdHF/J/o41s2?=
 =?us-ascii?Q?Sej5cA8gCWV+b25DTqU=3D?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6734.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c40c0e54-f61e-4c4f-7255-08dbb992c296
X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Sep 2023 04:33:38.3441
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: KIdLu7r7wJ74jFtFEdlCvuzKRT84bG+qv3nJ0V30Fcf2ryKHYN9rOKCDbpFuBYkE4e+J9fkJcJF7y0cJuSi9Sw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR11MB8187
X-OriginatorOrg: intel.com

> > +static inline void fred_syscall_init(void) {
> > +	/*
> > +	 * Per FRED spec 5.0, FRED uses the ring 3 FRED entrypoint for SYSCAL=
L
> > +	 * and SYSENTER, and ERETU is the only legit instruction to return to
> > +	 * ring 3, as a result there is _no_ need to setup the SYSCALL and
> > +	 * SYSENTER MSRs.
> > +	 *
> > +	 * Note, both sysexit and sysret cause #UD when FRED is enabled.
> > +	 */
> > +	wrmsrl(MSR_LSTAR, 0ULL);
> > +	wrmsrl_cstar(0ULL);
>=20
> That write is pointless. See the comment in wrmsrl_cstar().

What I heard is that AMD is going to support FRED.

Both LSTAR and CSTAR have no function when FRED is enabled, so maybe
just do NOT write to them?

Thanks!
    Xin



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 05:51:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 05:51:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605077.942706 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiq6y-0002vb-2t; Wed, 20 Sep 2023 05:50:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605077.942706; Wed, 20 Sep 2023 05:50:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiq6y-0002vU-0D; Wed, 20 Sep 2023 05:50:56 +0000
Received: by outflank-mailman (input) for mailman id 605077;
 Wed, 20 Sep 2023 05:50:54 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=7N78=FE=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qiq6w-0002vO-3F
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 05:50:54 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::61b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a5f29d7a-5779-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 07:50:51 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by CH3PR12MB9395.namprd12.prod.outlook.com (2603:10b6:610:1ce::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Wed, 20 Sep
 2023 05:50:45 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Wed, 20 Sep 2023
 05:50:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a5f29d7a-5779-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ys0lpzkEi+cVhB5EGv2MZzyoaBtj16KI+sNh9u3vkitSwP/hxC18WzxkBSujYK8OUbIwOM/SmYGLFcwZqVqN7q9pwouwF+Vs/CjO9f/Ps+Fh3lJ8OpD8tn1bj54HYkCBh5JCarSt+roDlLiGOgCgkArwOWuXq38sYei3IAxSZpRfXN1QYRyVQBVNZ6Cs1VEeITZsaIccbQzbil2uF1/p9sxTP/iEoQhHtT7skH+RTAJQfPlcYrVPKePFrDE3RXAQOpPkYKCjzB0OIN/fHDY/PM7UiVstEbyKj06lInmYoThFrxBRomMHIEjibRO/JBW55FvDMLDQ2jB0BrZsQkgGuQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cOENW9ZRlU3jJ/R6OMg5kD9FD0q5D10zilIfopN6BvU=;
 b=j1jjziGVuOcVjW4CXS4UYPkYhPn5cqr6atECSTwWDvqP0gIU8XwjF7JO4umtvORAAGWmrMypGSHwIU9yFDmuXY334rNA5nGSJii1QwAu/StYfu/YA8g5LNxi8/4lzrYCz/CQOHTxFYCItz57XdgwnFcLda3xhmePqDhqmMjEWrxzrWWV9KroS2S2hZFsKJ6+QbRPrIfZUPU/OaFCTHFL6DngqwK8TYuydhw4juDAyQArqwuTAgrEKSw7fdQkChc5D5mSlkxrZAMFiwd+vvF1ST1E8fZMbRdmkSXtU+WXdI/73aywpxinzxD9hyEttPh4Q1MdQLnqBvNW2ZPPSrr79w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cOENW9ZRlU3jJ/R6OMg5kD9FD0q5D10zilIfopN6BvU=;
 b=ttkNQDuKCbKB6h6m4NhrP5N5AsrsWiUyAK2RJB5Ro720RtSsrhJH2v3EAg4nPZFwAe9Sj6ps3KDpNmviSkHC7Kg4eM18ZHO1MeLQwFjOBWDus3q43N5VQ8lCq7U/HOheA58jsb1NeXBovbE0QKZF5DJKrUDo85jh1vUadOGhryk=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Wed, 20 Sep 2023 13:50:14 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands
Message-ID: <ZQqIFvasHD+Y8TSa@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-10-ray.huang@amd.com>
 <a14b26dc-c804-4be8-83d5-088e71d37a7b@daynix.com>
 <9700c2ed-93c5-4bf6-bc6b-d5d33359d9a7@daynix.com>
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <9700c2ed-93c5-4bf6-bc6b-d5d33359d9a7@daynix.com>
X-ClientProxiedBy: SG3P274CA0014.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:be::26)
 To SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|CH3PR12MB9395:EE_
X-MS-Office365-Filtering-Correlation-Id: 155186ab-1ebd-40d3-93c7-08dbb99d8782
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qVJB5ABwUqUa7maxL4ckIVOov/BrNkIOGtA8EAydqx5kqVqt5fVjP6IkpuFqo1FwPGasQDS38ZDteNL/T5N+ZRibdWDUJmnFcRUOaiJHRW0Hc/NOgChXw5IT6KMbO9wIk3jgK+O46sWvjOoL7XRLv3UwteDumSQcr7qEAvm0tTRGpL+6Pjeh38bEGsrY2RTEfirWBOQJxPp52HxNDoX74j3PlHnllk+K2UBs1fqAlcxCiUUSxIMUemLSlZkERO1vDv/tzARPbai1S2V45KR3yWgBlCYs1sZQKMx3WNq7dlL5JSDd2q1q6h3k9XF8i7p9VPuabEFRjDXW7y/Y5gMGA9PH0kPak47Q+KzncVnUCINfrQWHlJXXhrSvc9Z+ZHvzUc7J6hbwRzdoXEWGyfec7991EVrdjW+JX+ZCNW8fRbrdfGImjBNjkLLpFUMS/Q+pOOZSQjzjPiRSmlfcJviAd5wMHvQ4R7xIEHgGBvj8M+CeEjFDFz3ijUAS/8rW1NWPEBfnMIUFr7djoUrwIcUQUwthuyFyVJuKPfyIF0c5gLuV8Bvj1AvzhzWEyo73ktmP4wD5tsDSutdKTRIiu+hQxurU2EBLVqdRAdx5KxbmOoo=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(366004)(346002)(396003)(39860400002)(1800799009)(186009)(451199024)(26005)(5660300002)(8936002)(8676002)(4326008)(2616005)(2906002)(86362001)(36756003)(7416002)(38100700002)(83380400001)(66476007)(6486002)(6506007)(53546011)(54906003)(66556008)(66946007)(6666004)(478600001)(6512007)(41300700001)(6916009)(316002)(67856001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?iso-8859-1?Q?1WdgHF0bDDafafAGaTtq/DF8R2omXBKwFHybpqZElkxZsA8sKvKJ+f6HWB?=
 =?iso-8859-1?Q?z7e1N0+2fmW9uqmSxnclJMmJ1O9Mu9NuO3uc5HtXigdEdYX7ct7+cw1dne?=
 =?iso-8859-1?Q?0yzLvqiDFCXoH3OUtFi6Txpih67zYL2zD28GMSltswo/gRtOA0B9nuajwK?=
 =?iso-8859-1?Q?C7GLf5YpKPyJJsjHGhhnlSHM8b4VgOZIM1sed1BBWwjcvFdEBszyIcDmyT?=
 =?iso-8859-1?Q?sFdgvOIBTayD4SNYDIjOMwK9KB6Mv4Dae4CPTe9DeIzOxSBeUzgr38lRPi?=
 =?iso-8859-1?Q?u4scPqJroFvEDGX86I1kW4i7U9h+111cMOZSoPhNnUrozPRiUkOQjJ+q0C?=
 =?iso-8859-1?Q?4x8JuH9AkWudV97zUtmVA1FZox0T61v3ceKz5pXB3OL7R791cSEoza5LH5?=
 =?iso-8859-1?Q?yoycJoaN/CFcgmXPOoKKNy2jbEWMLHV50SsZ7OhpqfBHJkxGy3rZFddVVg?=
 =?iso-8859-1?Q?vIxOUaniqZv/RK7FfpmqNTVRAvIn62EAjbsWwDiamcTC2n9VCYLp/36liB?=
 =?iso-8859-1?Q?hGpo7dxRFwV/oqU2Uut1rY6wEc+oiI8g0GPyPUp5CRnE+akN47kkye+LV0?=
 =?iso-8859-1?Q?PDIOVClp0OfHiwVhP2OZYZHRmxt1u09DKL/MZFmx9Lp+boTLV9kvOgHCIH?=
 =?iso-8859-1?Q?N0bZrZYqwCAqixKyK2d2Onvo5YmvUCWBtWknv+enDdF1WQS+5eI5Bm3lxR?=
 =?iso-8859-1?Q?EfemEnDji6CXvfNNw5sgTlpZW5OzVcXK3biCM0h0xZPrOSoZ1c0jusbYDB?=
 =?iso-8859-1?Q?Dv8o0k+Yv/nApxEvposhAswNQ6QQLfnRdoOXjwfS8EGkopqL6VSmPZ8O7Y?=
 =?iso-8859-1?Q?/5bhDYxItMbYgBu9oYTAe5F0Zc0AI59LbOTQZHvt9gN73I3LrzhnB6WwVs?=
 =?iso-8859-1?Q?jXyfni+19y5HnZfzPoPuxV7ena4SbZdgessqWmPxmNI6wYuHpkcGDj4V8e?=
 =?iso-8859-1?Q?n2FvT34HGQ4M2/eMPV8499oU2DG/KEs6vv9hbjnuaG8xbDoSCGqAt8QkbJ?=
 =?iso-8859-1?Q?Uc6yMdq22e6HDci8PLciEEfw0na7KPFqCaaDm3nh7uIM6gz0/X7B0Y2TmY?=
 =?iso-8859-1?Q?CSjqmxrpFfczAkzrqJTGToosPSOtajkjzHzCVvRlqzFPSAjQkHYi3SAxAM?=
 =?iso-8859-1?Q?/GgmlnVmiFWXHbV3yU0enn0msfrUNQpFMmOeSk5suAIHSfugjE6YP6QdZi?=
 =?iso-8859-1?Q?zlZzk54fwqtc/rdlewA70PSR5fsuSSdyafcioeAtxECpYm1YdQvUkPLiqS?=
 =?iso-8859-1?Q?tCuzQwrrYgL22ICRp8xEjvt91rNJAgIoEKq2CmNdnBv8gq4osd0bde77/l?=
 =?iso-8859-1?Q?V3LtRWl49zaN3XBXPHm6VL48+NanVHSdV8OOKZHzlSBDhlL25K+6tAcfkc?=
 =?iso-8859-1?Q?pgpYQffKMkRZiuj9DrdPlLgvh+9VrQ/qLRRY4nhyEgJTvP/B63Vu/kPB9N?=
 =?iso-8859-1?Q?xOkpH6jAH5eVd1OVIKrrBZjV9XPB8prP+NfwHraFDyX8BIPyXf7XzwenAA?=
 =?iso-8859-1?Q?2AtCc28t456P/0KlgvhOjFnQXYjlFgXKisSRJMPOW00UJghNjpZAbv3uN9?=
 =?iso-8859-1?Q?ujvklIKdha5vijhyBDHaQQg9UYPfKokuw7herPsLbk9XVdBSVTpBe8B0F7?=
 =?iso-8859-1?Q?krZc+27ofgSNtBiRiW0ug+c2k5oYt5N+LY?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 155186ab-1ebd-40d3-93c7-08dbb99d8782
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 05:50:43.9317
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: gP4RfMYalkPHtrICygaRghxSM5pJsqC1rS3SlF2A2wYJpLWl4M0rjBHkPMPGHY1MTu79y+M0AQpFNNh3A0dWUA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB9395

On Sat, Sep 16, 2023 at 12:37:29AM +0800, Akihiko Odaki wrote:
> On 2023/09/16 1:04, Akihiko Odaki wrote:
> > On 2023/09/15 20:11, Huang Rui wrote:
> >> From: Antonio Caggiano <antonio.caggiano@collabora.com>
> >>
> >> Support BLOB resources creation, mapping and unmapping by calling the
> >> new stable virglrenderer 0.10 interface. Only enabled when available and
> >> via the blob config. E.g. -device virtio-vga-gl,blob=true
> >>
> >> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> >> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
> >> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> >> Signed-off-by: Huang Rui <ray.huang@amd.com>
> >> ---
> >>
> >> V4 -> V5:
> >>  - Use memory_region_init_ram_ptr() instead of
> >>  memory_region_init_ram_device_ptr() (Akihiko)
> >>
> >>  hw/display/virtio-gpu-virgl.c | 213 +++++++++++++++++++++++++++++++++
> >>  hw/display/virtio-gpu.c | 4 +-
> >>  include/hw/virtio/virtio-gpu.h | 5 +
> >>  meson.build | 4 +
> >>  4 files changed, 225 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/hw/display/virtio-gpu-virgl.c 
> >> b/hw/display/virtio-gpu-virgl.c
> >> index 312953ec16..563a6f2f58 100644
> >> --- a/hw/display/virtio-gpu-virgl.c
> >> +++ b/hw/display/virtio-gpu-virgl.c
> >> @@ -17,6 +17,7 @@
> >>  #include "trace.h"
> >>  #include "hw/virtio/virtio.h"
> >>  #include "hw/virtio/virtio-gpu.h"
> >> +#include "hw/virtio/virtio-gpu-bswap.h"
> >>  #include "ui/egl-helpers.h"
> >> @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
> >>  virgl_renderer_resource_create(&args, NULL, 0);
> >>  }
> >> +static void virgl_resource_destroy(VirtIOGPU *g,
> >> + struct virtio_gpu_simple_resource 
> >> *res)
> >> +{
> >> + if (!res)
> >> + return;
> >> +
> >> + QTAILQ_REMOVE(&g->reslist, res, next);
> >> +
> >> + virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
> >> + g_free(res->addrs);
> >> +
> >> + g_free(res);
> >> +}
> >> +
> >>  static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >>  struct virtio_gpu_ctrl_command 
> >> *cmd)
> >>  {
> >> + struct virtio_gpu_simple_resource *res;
> >>  struct virtio_gpu_resource_unref unref;
> >>  struct iovec *res_iovs = NULL;
> >>  int num_iovs = 0;
> >> @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >>  VIRTIO_GPU_FILL_CMD(unref);
> >>  trace_virtio_gpu_cmd_res_unref(unref.resource_id);
> >> + res = virtio_gpu_find_resource(g, unref.resource_id);
> >> +
> >>  virgl_renderer_resource_detach_iov(unref.resource_id,
> >>  &res_iovs,
> >>  &num_iovs);
> >>  if (res_iovs != NULL && num_iovs != 0) {
> >>  virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
> >> + if (res) {
> >> + res->iov = NULL;
> >> + res->iov_cnt = 0;
> >> + }
> >>  }
> >> +
> >>  virgl_renderer_resource_unref(unref.resource_id);
> >> +
> >> + virgl_resource_destroy(g, res);
> 
> This may leak memory region.

The memory region should be freed under virgl_cmd_resource_unmap_blob()
which is calling memory_region_del_subregion(&b->hostmem, res->region).
Because this region is created by map_blob(). Do we have the case to call
virgl_cmd_resource_unref() without calling virgl_cmd_resource_unmap_blob()
for blob memory?

Thanks,
Ray


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 05:54:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 05:54:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605082.942717 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiqA8-0003WJ-HS; Wed, 20 Sep 2023 05:54:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605082.942717; Wed, 20 Sep 2023 05:54:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiqA8-0003WC-EF; Wed, 20 Sep 2023 05:54:12 +0000
Received: by outflank-mailman (input) for mailman id 605082;
 Wed, 20 Sep 2023 05:54:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rvvO=FE=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qiqA7-0003W6-RU
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 05:54:11 +0000
Received: from mail-ot1-x32e.google.com (mail-ot1-x32e.google.com
 [2607:f8b0:4864:20::32e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1e2cd836-577a-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 07:54:10 +0200 (CEST)
Received: by mail-ot1-x32e.google.com with SMTP id
 46e09a7af769-6bd04558784so4073476a34.3
 for <xen-devel@lists.xenproject.org>; Tue, 19 Sep 2023 22:54:10 -0700 (PDT)
Received: from [157.82.207.45] ([157.82.207.45])
 by smtp.gmail.com with ESMTPSA id
 14-20020a17090a004e00b002609cadc56esm594933pjb.11.2023.09.19.22.54.04
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 19 Sep 2023 22:54:09 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1e2cd836-577a-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1695189249; x=1695794049; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=xMWeF2HhGZEWc0W+5GSi6sL68pIB2U4XVLduYOYAG9A=;
        b=fHF5TJgCnrZRw0L672xOCwPQIguC0VZbVR0NX91deWN8AjxEPAVOu3MjpU9qdh8JXm
         BojvWNOpLZ07Z4JQpJesBP5TlMwkBqnIPBI7kcmRXfnDJhsztw7/OQ1ygtoH3ToL3R/4
         6zir2ekhulHRggYH6eFLQywhXlaNSqBialJ5s5wi8UcaqmMAcCFWawLtCbAuRo+0+u6k
         srbT5RSbzkcXCUmZSXCWXLUKAF/NcOeP51gFmlgIFNStCapauaoWmBLvhC2EFHKQKrm/
         ZnqzR7ABYbW9gJ2V3uFjZbY/lGWc+PDAewQc1dcok/EcSW3FzmlOFpb1lJCRu4hhJmK7
         +sFg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695189249; x=1695794049;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=xMWeF2HhGZEWc0W+5GSi6sL68pIB2U4XVLduYOYAG9A=;
        b=tjzqtLijoJIjWER9eXlHMesRT+PuS1bCP60Vht7hlMMwddh0/1ZafbNCupMPmbx4pq
         RKln8SIL7mKGmu0niyLyfSMPC7Gurq2ANSVpPZo8uWXUFfnRzqGnfbXzl0gb2wpemz9S
         pNv+JKWcaqZKye40SXsnUhEl+Vr8Mn04I20y1JSwc+6J9jsE50TXYvxqqY7tFIAwFDTo
         tHoygTqZ9b2nKQR9czymWkAXTeI/kjvSjkR6aAU8UPwPFLtUEpWrlJaY4UENccjCQvCQ
         W8aqTpuEbRgycvVC/T8irdbW9CdeDERo82SLKqRtg+Ni4rO1/jfio7/2iHWv+7sSOVL3
         Irtw==
X-Gm-Message-State: AOJu0Yw03N26n8AS2l8EldsCvR/xGCQZSLBzJPUpjaI9p9/cSOyoClHF
	wPGXVbJEdzz/b2qq6Gr/YWX+SQ==
X-Google-Smtp-Source: AGHT+IHSnmwNDAcIECGG0e9lrMrXi65An+rcs2Anr48VT3xg5CLb1z5c35tqPfVv2JWWozOjj1lmWA==
X-Received: by 2002:a05:6358:2490:b0:135:57d0:d173 with SMTP id m16-20020a056358249000b0013557d0d173mr1915328rwc.20.1695189249348;
        Tue, 19 Sep 2023 22:54:09 -0700 (PDT)
Message-ID: <8d1f6b30-795e-418e-aeb5-3823680ea70a@daynix.com>
Date: Wed, 20 Sep 2023 14:54:03 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands
To: Huang Rui <ray.huang@amd.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin"
 <mst@redhat.com>, Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, "ernunes@redhat.com"
 <ernunes@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?=
 <philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 "Deucher, Alexander" <Alexander.Deucher@amd.com>,
 "Koenig, Christian" <Christian.Koenig@amd.com>,
 "Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
 "Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
 "Huang, Honglei1" <Honglei1.Huang@amd.com>,
 "Zhang, Julia" <Julia.Zhang@amd.com>, "Chen, Jiqian" <Jiqian.Chen@amd.com>,
 Antonio Caggiano <antonio.caggiano@collabora.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-10-ray.huang@amd.com>
 <a14b26dc-c804-4be8-83d5-088e71d37a7b@daynix.com>
 <9700c2ed-93c5-4bf6-bc6b-d5d33359d9a7@daynix.com> <ZQqIFvasHD+Y8TSa@amd.com>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <ZQqIFvasHD+Y8TSa@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 2023/09/20 14:50, Huang Rui wrote:
> On Sat, Sep 16, 2023 at 12:37:29AM +0800, Akihiko Odaki wrote:
>> On 2023/09/16 1:04, Akihiko Odaki wrote:
>>> On 2023/09/15 20:11, Huang Rui wrote:
>>>> From: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>>
>>>> Support BLOB resources creation, mapping and unmapping by calling the
>>>> new stable virglrenderer 0.10 interface. Only enabled when available and
>>>> via the blob config. E.g. -device virtio-vga-gl,blob=true
>>>>
>>>> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
>>>> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
>>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>>> ---
>>>>
>>>> V4 -> V5:
>>>>       - Use memory_region_init_ram_ptr() instead of
>>>>         memory_region_init_ram_device_ptr() (Akihiko)
>>>>
>>>>    hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
>>>>    hw/display/virtio-gpu.c        |   4 +-
>>>>    include/hw/virtio/virtio-gpu.h |   5 +
>>>>    meson.build                    |   4 +
>>>>    4 files changed, 225 insertions(+), 1 deletion(-)
>>>>
>>>> diff --git a/hw/display/virtio-gpu-virgl.c
>>>> b/hw/display/virtio-gpu-virgl.c
>>>> index 312953ec16..563a6f2f58 100644
>>>> --- a/hw/display/virtio-gpu-virgl.c
>>>> +++ b/hw/display/virtio-gpu-virgl.c
>>>> @@ -17,6 +17,7 @@
>>>>    #include "trace.h"
>>>>    #include "hw/virtio/virtio.h"
>>>>    #include "hw/virtio/virtio-gpu.h"
>>>> +#include "hw/virtio/virtio-gpu-bswap.h"
>>>>    #include "ui/egl-helpers.h"
>>>> @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
>>>>        virgl_renderer_resource_create(&args, NULL, 0);
>>>>    }
>>>> +static void virgl_resource_destroy(VirtIOGPU *g,
>>>> +                                   struct virtio_gpu_simple_resource
>>>> *res)
>>>> +{
>>>> +    if (!res)
>>>> +        return;
>>>> +
>>>> +    QTAILQ_REMOVE(&g->reslist, res, next);
>>>> +
>>>> +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
>>>> +    g_free(res->addrs);
>>>> +
>>>> +    g_free(res);
>>>> +}
>>>> +
>>>>    static void virgl_cmd_resource_unref(VirtIOGPU *g,
>>>>                                         struct virtio_gpu_ctrl_command
>>>> *cmd)
>>>>    {
>>>> +    struct virtio_gpu_simple_resource *res;
>>>>        struct virtio_gpu_resource_unref unref;
>>>>        struct iovec *res_iovs = NULL;
>>>>        int num_iovs = 0;
>>>> @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
>>>>        VIRTIO_GPU_FILL_CMD(unref);
>>>>        trace_virtio_gpu_cmd_res_unref(unref.resource_id);
>>>> +    res = virtio_gpu_find_resource(g, unref.resource_id);
>>>> +
>>>>        virgl_renderer_resource_detach_iov(unref.resource_id,
>>>>                                           &res_iovs,
>>>>                                           &num_iovs);
>>>>        if (res_iovs != NULL && num_iovs != 0) {
>>>>            virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
>>>> +        if (res) {
>>>> +            res->iov = NULL;
>>>> +            res->iov_cnt = 0;
>>>> +        }
>>>>        }
>>>> +
>>>>        virgl_renderer_resource_unref(unref.resource_id);
>>>> +
>>>> +    virgl_resource_destroy(g, res);
>>
>> This may leak memory region.
> 
> The memory region should be freed under virgl_cmd_resource_unmap_blob()
> which is calling memory_region_del_subregion(&b->hostmem, res->region).
> Because this region is created by map_blob(). Do we have the case to call
> virgl_cmd_resource_unref() without calling virgl_cmd_resource_unmap_blob()
> for blob memory?

Calling virgl_cmd_resource_unmap_blob() and virgl_cmd_resource_unref() 
in order is a guest's responsibility, and we are required to prepare for 
broken guests.


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 06:01:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 06:01:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605087.942726 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiqH9-0005KK-8U; Wed, 20 Sep 2023 06:01:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605087.942726; Wed, 20 Sep 2023 06:01:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiqH9-0005KD-5k; Wed, 20 Sep 2023 06:01:27 +0000
Received: by outflank-mailman (input) for mailman id 605087;
 Wed, 20 Sep 2023 06:01:26 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiqH7-0005K2-Uk; Wed, 20 Sep 2023 06:01:25 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiqH7-000359-Lz; Wed, 20 Sep 2023 06:01:25 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiqH7-0005mc-24; Wed, 20 Sep 2023 06:01:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiqH7-0008QM-0C; Wed, 20 Sep 2023 06:01:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=WFH9ra9jifEX8OUYvKnLPXvOECzGAYoYGfef5hNrY9I=; b=DeLUesPwOTxtOrymrwvJfk42xe
	MDBebgTO2Vt7eFsn2ohhRn9sC3RiQyz38K49FZeL6+3AwA+nzfXMICBXYR1y64T3jXP24YSSehllH
	9qvvMK2f9n5E1xaC8O27fUcztJgCtASn61qr4/qjqKvBOqjnd5xY8HaS9Fq15auF6nBE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183056-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183056: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=2cf0f715623872823a72e451243bbf555d10d032
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 20 Sep 2023 06:01:25 +0000

flight 183056 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183056/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-vhd       8 xen-boot                   fail pass in 183035

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 183035 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 183035 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 linux                2cf0f715623872823a72e451243bbf555d10d032
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   23 days
Failing since        182544  2023-08-28 20:42:13 Z   22 days   42 attempts
Testing same since   183035  2023-09-18 21:10:14 Z    1 days    2 attempts

------------------------------------------------------------
2322 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 283021 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 06:12:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 06:12:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605098.942737 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiqS2-0007AE-BB; Wed, 20 Sep 2023 06:12:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605098.942737; Wed, 20 Sep 2023 06:12:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiqS2-0007A7-7t; Wed, 20 Sep 2023 06:12:42 +0000
Received: by outflank-mailman (input) for mailman id 605098;
 Wed, 20 Sep 2023 06:12:41 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=7N78=FE=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qiqS1-0007A1-6d
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 06:12:41 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on20628.outbound.protection.outlook.com
 [2a01:111:f400:fe59::628])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b27f8af8-577c-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 08:12:38 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by MW6PR12MB8898.namprd12.prod.outlook.com (2603:10b6:303:246::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.24; Wed, 20 Sep
 2023 06:12:32 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Wed, 20 Sep 2023
 06:12:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b27f8af8-577c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aX69hGmWRJMhNFVfSqEh5pDxG3IF2Bqj6g2JFKdHwlSbykw+wCqw0FI3LWacfnWzJnH840wY5NoRHXWGV6le8JexvIhoMFOOg7UjyibIpO8dl95hPdrVkS4TU0bMWDSWTOHuthqvqdFgTjlkIVFPZGnEO16iKtHChhi1Fu49/APwHaB+Obe/LSCMVX2YO9DOxF2uekkNoxSZxsx3RFVtc4PAuUovqQbYSvUN6HqkAbEwnO+Y5UP8jIuXx01qJEHaPvye26uZ/EL+E3a3nDYJEdgeQNRSiPPjVd+y48o1X+F1+3WHsOWuMLTFYGcNOuufopnBvv4eqsyXRwNHi/mZ/w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ykT79Jrjb3ULMEMcPcuqI5yQR+285A/pj+Vh16cB0GQ=;
 b=WLB03mv+0Ld5+1kLw9U9SVoEZhsL8LOj5ZtnYOyDRAD21c8VlmZzmsP+t8TC5nWZL/ljeQZZD7wInHW++X/qYQzjZt9pOdMJkbhMZSWPN3YmX3HydsYNwLmVqY2zFY1EpnRC0wZXHrOvX2HRQTE0CxYRHnQ+q1tOJ/5JxTJjWl7n9hyas7QN70GvC5ZrvJalyPG6XnqNbUgpM21VpBTyjJBQfOR1ISnp98U6m5diiL20PVsHZju5AjEyqA3ucTNHcDLjKLcxmHKF2gZHSGHVWyOHJ6Kd3unOJKIkoWWFMJhS7P7JdNEIBR4LynYAORYvB0gfR/qezC8o03ZI44t/bg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ykT79Jrjb3ULMEMcPcuqI5yQR+285A/pj+Vh16cB0GQ=;
 b=p5VQjz0F7qMzv9pxFMT7/Bswt0HvPH33HKUQ09V9cOejjw5FE/R2zXSrUfJZ4+mFiLofDnDoR2L21bxcXW/UW66NjG0mLJ/yfKvS5k0W7ayJ53mXEPaZVOxRcb1BPfC9Lg9H4E+rNYfUpfudPlCvjsEfuJtKNVpjr9pWpJsYlro=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Wed, 20 Sep 2023 14:11:58 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands
Message-ID: <ZQqNLrgfmIjqhVXE@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-10-ray.huang@amd.com>
 <a14b26dc-c804-4be8-83d5-088e71d37a7b@daynix.com>
 <9700c2ed-93c5-4bf6-bc6b-d5d33359d9a7@daynix.com>
 <ZQqIFvasHD+Y8TSa@amd.com>
 <8d1f6b30-795e-418e-aeb5-3823680ea70a@daynix.com>
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <8d1f6b30-795e-418e-aeb5-3823680ea70a@daynix.com>
X-ClientProxiedBy: SI1PR02CA0012.apcprd02.prod.outlook.com
 (2603:1096:4:1f7::8) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|MW6PR12MB8898:EE_
X-MS-Office365-Filtering-Correlation-Id: d4efb445-4ef2-4921-c698-08dbb9a092b5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+O6zxtE3JEXbVrsxgGJ6bGjljSwPv9ma1QKw92v5EET2/mgA1uFpqhDDQuHJOSNF4B029pSBSgV3w6/Z8zWy+RDUVbeegpBA4BbBXq+69fyf6gEPHwYXRd51DTUeWSH/x3eWyZiXfHl7rjKfkaaCywPxm5HlKLusHu/dclYFY/8Av8/04E3GdduHGcGQ1dR9hJRXKrJfTS/h/s6DiiARnrAFgTgkHXSWQGOJ0YmR3Ty60DxiMTWG35BntaKqXnKMXzroSlFNt6tsMIQmxzCJlJSD/bm1G8Z1DTEERnj1QRatECnONFJdyAPgzqINW+3wSyhhjSpt9VshjpK0kZxbdQLiCp+CrSTdhbTTFo/3s5p7tmy0SJ8xx6OJAnFrwEEuEw8Hv+W1BcQDacZPkgdpCTnYB833y0wpQbCqjG7hUtnlbs2fJRPdTFvunFiUyGc9CWh410o0NKFAZjyLK+yaoFx4rkqy2LvCVt5p3ESvTQuo4Xc/xhduoR1mRapS4c3c+5pRIfrasD+PzNTylnYUFW8I/IOrWcxyd5GhSf8g2BrcgiaGiz4jEggWe4BtJ73D
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(136003)(376002)(39860400002)(346002)(1800799009)(186009)(451199024)(26005)(2616005)(8936002)(8676002)(4326008)(7416002)(83380400001)(2906002)(36756003)(6666004)(53546011)(6506007)(86362001)(6486002)(478600001)(5660300002)(6916009)(316002)(6512007)(54906003)(66556008)(38100700002)(41300700001)(66476007)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?iso-8859-1?Q?RbJh2UU2+2Q+hSFN1NPkM+E6yvDI9k67fnXQVAuz1cf3r60KJpqeHhssEX?=
 =?iso-8859-1?Q?7F3H19vdez6HLWHtvv/DaLg1mFoaL70TzOkJdWXrJ3VAT19ztSdFIHSvCk?=
 =?iso-8859-1?Q?uOUA3kRkfi/9OBwPfa2XLL/2XEIdql8bflW2vdhA/p75JSFZ7/wTcPPxPF?=
 =?iso-8859-1?Q?P5BTJ8Tw1s6otELqj47hpID9SaImuw/dyNPvkJ9ApmFZJnESmXg9zgxczB?=
 =?iso-8859-1?Q?cGFC4TeJmVvw6hpe3iYQHjVnlKaSRqLqc/kgUcshKWLVsJ0ko3oQ1eG471?=
 =?iso-8859-1?Q?xMx2KTk16zGYwKMk9wc3rh8LStZjnnBg6nPSB72IslhJeSlEw+dxYjfBfm?=
 =?iso-8859-1?Q?XmKkW74VRsibBIUBl6knNrZ6Yz5unBykeKOKtDxY24MnTYlMm4nQf3KjyM?=
 =?iso-8859-1?Q?I20dKImEjAWruXph5XrN6vL38yEJUgRyZt7a7ZBm/GogZsU7kQLrXeW4Qu?=
 =?iso-8859-1?Q?gMBXT8tYTrSKN3lsDE3OQJEz+rEft82GTq/dazlk3BknqoEKdeoBYQkq2K?=
 =?iso-8859-1?Q?Brt2DAgNv5ZTLuvy6N/DebNfvO7gxLhhLiJBf52ePwrD+b2Bz7jYCFCnPS?=
 =?iso-8859-1?Q?eZvbKHwhpTFOCPjDad5oKCdwHkU02B5S9+eDNGe0VYMsuvXyaUUV02uOoN?=
 =?iso-8859-1?Q?jyE1NGeWIKalQpyj0zyrf0LIe1npR+jCWyFroojcCl3OO7AqU8HRdfE4kc?=
 =?iso-8859-1?Q?xnLcL229eGHb4gUn0wEWh8HY9apkOVEP8vplT2kZiqn9IHMXjZ+Z1wJz/A?=
 =?iso-8859-1?Q?hAJJ2l1lpZaJb3xNmPadk3UNlJpm3H4Th4PRatE9DkGf21A+E7mPTNoqoE?=
 =?iso-8859-1?Q?DuDzQbDkiF4ndff4hqZvxjZGgs1yJl/5NzY6GXNuF7hYEg44Jw5NchktJL?=
 =?iso-8859-1?Q?H/2b1UOf+RHyh7KlgLpXZATgU+uVT5hQbbJnxHqKF/+cWCpJXzDiFFqhc6?=
 =?iso-8859-1?Q?7Le7KKjx94KKgm4bPMWQ3Pu92fd6TBXnfgQcU9/96MJguMyFbQeankRvM4?=
 =?iso-8859-1?Q?rv+8e2xgPZWJyWK35HiRoxQm832XtjDSM8d87TfknycOtTmNWh6Xut9zOT?=
 =?iso-8859-1?Q?pWHb+QDEU0g+2XY7d+IcNmrPJiGGHIQcKOLuzHaC+V+ocZyZ03cmmKpCId?=
 =?iso-8859-1?Q?+Y1eYxu6S3dLJtRGeDXV9CPcq56n4OiTZXCr27bOrk6M9Wx16ZnlnfBqZ1?=
 =?iso-8859-1?Q?J932qUvxdHgZiXycaurfYVoR7TBL/KMU8AKbyLZpvG1hPP0qYGkx2e2VCn?=
 =?iso-8859-1?Q?fO96hwtnYUy7+VeccTSyN0OQmU1lDwKVgveSi/K/kR03kAv3vs4vOWvJaQ?=
 =?iso-8859-1?Q?pN2O1rSBotjnUNRkT5/HqBxtH3vjsVyxZWY+16lV+6i66BqzldXlaAS26U?=
 =?iso-8859-1?Q?gwTWSFxkk+ba+Lph90h/J+UQW08oa3qB9KxPi5DRAoOjBqi7tTL7JgkvA0?=
 =?iso-8859-1?Q?kOlomvgcziWNNRz2Grbxl5OofSd8sDY29jWlGl+uAS3E1VKuQ14/9Nu6kV?=
 =?iso-8859-1?Q?NihFJDyvu1gbgy4++KfgDajuLjuxAXo8CSVZ2QJZJyplLooLQbM3f0bdFb?=
 =?iso-8859-1?Q?+jVZKzjeIhcv0bJRVX3qyqwR+TIxUOrfBQF5QehdlXh76As/H/TPtXrUWB?=
 =?iso-8859-1?Q?EfIP9v8AvkvfsLlTP3sUV7kD1g5cKSqv22?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d4efb445-4ef2-4921-c698-08dbb9a092b5
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 06:12:31.1751
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 8tV7MOfrfSo8sPQ7ZubAi6DM1DYwqZPi+hD7wsZuUU9CgNCvevh4wtXz6bMTIcXP5s4/sv1Tq4sjfCck+FtJyQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW6PR12MB8898

On Wed, Sep 20, 2023 at 01:54:03PM +0800, Akihiko Odaki wrote:
> On 2023/09/20 14:50, Huang Rui wrote:
> > On Sat, Sep 16, 2023 at 12:37:29AM +0800, Akihiko Odaki wrote:
> >> On 2023/09/16 1:04, Akihiko Odaki wrote:
> >>> On 2023/09/15 20:11, Huang Rui wrote:
> >>>> From: Antonio Caggiano <antonio.caggiano@collabora.com>
> >>>>
> >>>> Support BLOB resources creation, mapping and unmapping by calling the
> >>>> new stable virglrenderer 0.10 interface. Only enabled when available and
> >>>> via the blob config. E.g. -device virtio-vga-gl,blob=true
> >>>>
> >>>> Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> >>>> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
> >>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> >>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
> >>>> ---
> >>>>
> >>>> V4 -> V5:
> >>>>   - Use memory_region_init_ram_ptr() instead of
> >>>>   memory_region_init_ram_device_ptr() (Akihiko)
> >>>>
> >>>>   hw/display/virtio-gpu-virgl.c | 213 +++++++++++++++++++++++++++++++++
> >>>>   hw/display/virtio-gpu.c | 4 +-
> >>>>   include/hw/virtio/virtio-gpu.h | 5 +
> >>>>   meson.build | 4 +
> >>>>   4 files changed, 225 insertions(+), 1 deletion(-)
> >>>>
> >>>> diff --git a/hw/display/virtio-gpu-virgl.c
> >>>> b/hw/display/virtio-gpu-virgl.c
> >>>> index 312953ec16..563a6f2f58 100644
> >>>> --- a/hw/display/virtio-gpu-virgl.c
> >>>> +++ b/hw/display/virtio-gpu-virgl.c
> >>>> @@ -17,6 +17,7 @@
> >>>>   #include "trace.h"
> >>>>   #include "hw/virtio/virtio.h"
> >>>>   #include "hw/virtio/virtio-gpu.h"
> >>>> +#include "hw/virtio/virtio-gpu-bswap.h"
> >>>>   #include "ui/egl-helpers.h"
> >>>> @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
> >>>>   virgl_renderer_resource_create(&args, NULL, 0);
> >>>>   }
> >>>> +static void virgl_resource_destroy(VirtIOGPU *g,
> >>>> + struct virtio_gpu_simple_resource
> >>>> *res)
> >>>> +{
> >>>> + if (!res)
> >>>> + return;
> >>>> +
> >>>> + QTAILQ_REMOVE(&g->reslist, res, next);
> >>>> +
> >>>> + virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
> >>>> + g_free(res->addrs);
> >>>> +
> >>>> + g_free(res);
> >>>> +}
> >>>> +
> >>>>   static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >>>>   struct virtio_gpu_ctrl_command
> >>>> *cmd)
> >>>>   {
> >>>> + struct virtio_gpu_simple_resource *res;
> >>>>   struct virtio_gpu_resource_unref unref;
> >>>>   struct iovec *res_iovs = NULL;
> >>>>   int num_iovs = 0;
> >>>> @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >>>>   VIRTIO_GPU_FILL_CMD(unref);
> >>>>   trace_virtio_gpu_cmd_res_unref(unref.resource_id);
> >>>> + res = virtio_gpu_find_resource(g, unref.resource_id);
> >>>> +
> >>>>   virgl_renderer_resource_detach_iov(unref.resource_id,
> >>>>   &res_iovs,
> >>>>   &num_iovs);
> >>>>   if (res_iovs != NULL && num_iovs != 0) {
> >>>>   virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
> >>>> + if (res) {
> >>>> + res->iov = NULL;
> >>>> + res->iov_cnt = 0;
> >>>> + }
> >>>>   }
> >>>> +
> >>>>   virgl_renderer_resource_unref(unref.resource_id);
> >>>> +
> >>>> + virgl_resource_destroy(g, res);
> >>
> >> This may leak memory region.
> > 
> > The memory region should be freed under virgl_cmd_resource_unmap_blob()
> > which is calling memory_region_del_subregion(&b->hostmem, res->region).
> > Because this region is created by map_blob(). Do we have the case to call
> > virgl_cmd_resource_unref() without calling virgl_cmd_resource_unmap_blob()
> > for blob memory?
> 
> Calling virgl_cmd_resource_unmap_blob() and virgl_cmd_resource_unref() 
> in order is a guest's responsibility, and we are required to prepare for 
> broken guests.

OK, no problem. I will update this in V6.

Thanks,
Ray


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 07:55:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 07:55:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605165.942781 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qis3f-0005mc-Px; Wed, 20 Sep 2023 07:55:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605165.942781; Wed, 20 Sep 2023 07:55:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qis3f-0005mV-M0; Wed, 20 Sep 2023 07:55:39 +0000
Received: by outflank-mailman (input) for mailman id 605165;
 Wed, 20 Sep 2023 07:55:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=7N78=FE=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qis3e-0005mP-3j
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 07:55:38 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on2062b.outbound.protection.outlook.com
 [2a01:111:f400:fe59::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 14473773-578b-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 09:55:36 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by SA0PR12MB4509.namprd12.prod.outlook.com (2603:10b6:806:9e::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Wed, 20 Sep
 2023 07:55:30 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Wed, 20 Sep 2023
 07:55:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 14473773-578b-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LgNEdvu7O0YLwfIG6dK8mdpvQh2isfGdZY5CUoTW9RIoKBZ8yXPyIL5SPPL2Pdp8KhRBDjVH53kwgxFMLkoWgnQh5v2lIdLSIm6pAtxM8MCSl1CorPCIloO8DmadHxdWPmg40nizWvjJ7NlQcnUl6BcAp1REsFclfNumE07TL9pFljjJSlMxRERw8eJuEQ/NnNTXgdY4UefifTi1moxEKP9XJ4Gj4C8fu4e05nrHRf9V6KGkQVNBzbTQT5E/JBFbLdrjksCrPY5mqVtg6VWnz8r0ImCqDSaaB7xOM8w3cs6QJ0FyOrUh9NqulDWILCiuR2Y+QJq31jTFPy0LkainIA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EZC9e/00KCrbeZtSyy5KNo8IzsuMGsxSe1NO2WXh7t8=;
 b=hfdGdMUcsflEQt+qjnICCv2JV/AZCYkgokGLr+a8PFiNUm1TbpK4xHOxRVRbJjPKdWNldALxDtg+/Ph4F2DNr1uPE9nWV/MJkNrFfgFPYV4rV+VcuA1PM+zbDa1niaXS+a3dGxJNvC1TZMTEab/DHLKhvTdiAqgvEeqlrvaeLsdiE91tKv7y8e3EYZpZIragsDAuwtFrvXId5MmbuYg1hyuY7PZ5SaWHQfKERiU5McCTBiUgLuA3Rti80VvLS3wysvQh0bLjfscrGJs3BHm52xrBXDs7t1RYodx+MXKxkjvrVUsEkn6jMTfpmSwfJJBkT2PY/RlGlnR8+qxPQ6wBTQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=EZC9e/00KCrbeZtSyy5KNo8IzsuMGsxSe1NO2WXh7t8=;
 b=3Rv5WGWa3Thr3ST5Ix2r5XvG7J4xPGx28C1qpSzyipjU1WRzXwqLzU7ppZ/S4Ymx9WZJSsRliMZW8WnWFGfF8asVBxCHHUeFPV9SJW8/EHV5bhl0WsjaVrq5InNBVMdnJeUPDV0iZven+ZXkgwXFVDt2nLw3oTFuKZLlV73zUEk=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Wed, 20 Sep 2023 15:55:01 +0800
From: Huang Rui <ray.huang@amd.com>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 10/13] virtio-gpu: Resource UUID
Message-ID: <ZQqlVb2PkRMjMaKF@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-11-ray.huang@amd.com>
 <a3a46b78-9feb-47f3-bd3e-519ebe899737@daynix.com>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <a3a46b78-9feb-47f3-bd3e-519ebe899737@daynix.com>
X-ClientProxiedBy: SI2PR01CA0027.apcprd01.prod.exchangelabs.com
 (2603:1096:4:192::7) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|SA0PR12MB4509:EE_
X-MS-Office365-Filtering-Correlation-Id: 699ec20f-3535-4111-04c9-08dbb9aef57f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	l5xgTjxY70F9McTm16eFNxnlRlVDwtRqz+xhClO8DW1PseXNgJrNasuI374VPif1CzF5BjnD8kS2Vw++Wt2zcWN7W85XvtT9TI3ua+4Lo58JK2ukN0/FvKRpkcYs/siSpNAp9teXmPbZ6Vg9Sae05QyRO8nA/QLBzy8mgXnJtLwKdZgdzKVc3r3kaY9e3orwxJuOZWgtAo4FF2W+xFRcFjzejUOMZ6Enk4G19rfmT0NQGMi8OeMPFWPrftkYz04o/EGc+mPnSjqn7/+BbsSVplMQKF8js18f9N4cYCjPyfjVz8rTNmihQU7J9w6d4gpNVvrKr4mjvVWufXZN+yaxWweweN3Nr9osICjFxSw3iCqI2y02VzDFzzaPCGHcZkinqKMxa21BUUqSsve6WCK1z3SFJQOW1KIXRbST03LgKtd2nDhseKQM5O1pPJkYbwo+rhetg9Frc2JfV+EO2kTv/vjO6hhrUsO5kvjx1JBlWZsr+SUsX98e321MCSuQpgUAcqzKV72B9DXxxiVKaBgD45sjQJe5tJzROiQ2/U8yEvH8tK7g1BQyeBrjlpB5gdwZWr0bREl/LN8TQRzeEl514Uue5yP3neuYAlFgIas1nMw=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(396003)(366004)(39860400002)(376002)(186009)(1800799009)(451199024)(6506007)(53546011)(6666004)(6486002)(6512007)(478600001)(83380400001)(26005)(2616005)(2906002)(7416002)(66476007)(54906003)(66556008)(66946007)(316002)(4326008)(8676002)(5660300002)(8936002)(41300700001)(6916009)(86362001)(36756003)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?us-ascii?Q?i9RqqPUYszmjlm8yH5TITR/4/CDLQkcv1z3b7wJpYf2OOWWVZzHMrDp+b1cE?=
 =?us-ascii?Q?JTzmUvHXZQclrisZXRdIa4DCjff8eyunGmCHbZOjN0Ne29lOEoYOil3mmwvx?=
 =?us-ascii?Q?JdwqBkBm6bVb8F7iUOhQtWiNn0UxAmcEgEFdsETHD7JUXoql/BG5yKQycQOz?=
 =?us-ascii?Q?2/sPwqlrmAYgtPGzNFA/HPd0Kken91/477m00QnDNJf/plvks8XDnpAeaENm?=
 =?us-ascii?Q?qCpHR/CoyQekTmzf/Wn2YeZR3tHnHRo5XYxXBqv/7x4IeAeUPz9XQPQdTGkt?=
 =?us-ascii?Q?vlvIsD3VjV2vXJDB9HiJpYjtIi/KTNIkjfOYV3tvosrXfuGWTxjIa5Nkhrsr?=
 =?us-ascii?Q?diI38Mv16cPdZxnXFnR4ZNvE9XPnOo/+QIJL8YF2Wt0Y00Ry3FIS6qfHCX8z?=
 =?us-ascii?Q?HZyb1erQwy9+UZc6RwvjtkgWcG/iFGy6Bh8XRGyjKuTq5hfl4cj3xFEqRg5J?=
 =?us-ascii?Q?VzcDRx9uBzu/sZbGs5/WDtso9zCrJVwgs5azFYzCk1VXsQIuqHUjbZC5icrz?=
 =?us-ascii?Q?QPvGaLiG+SAltuWsEr6b19m1ppLTz8VHMHIr0odylqs+/aICu/U93jIZHQvH?=
 =?us-ascii?Q?4Dh4cy5lj00NximOlxEWgU/LjSSymuJG0L4dDQ7seyICXkXErvSb4U0OyWfu?=
 =?us-ascii?Q?5sSMLoeRx8+cD0D6JNG+wDb8G2IZRnjskSPz6HpZ9e7SvsJna49fafWUxvVN?=
 =?us-ascii?Q?ehkKSJM0+5lp48i/sxxyd6C5hNDBhS4jP8riY6XeKgtxCyQd68lUoISS7u58?=
 =?us-ascii?Q?uZN7GEHmSFb+pKtgJuegoQOiEUG6NOHqwdfE32X4L/Q12JalBsqOORzHr5gK?=
 =?us-ascii?Q?1Eyd5cg6f2COkMKPAizOxIEsPcs5FgSGEfNgkzwdKpWVVMuq26a6W3JdBQD4?=
 =?us-ascii?Q?LG/udHfZnYWQEKA67XoQvRLAzW42eNGdxwSeb4zuL0JyjJuO4DY8hybW0Vlq?=
 =?us-ascii?Q?arDaTFbrjISbBAWMUHF8b+AE3DlEAhaptjdYiHqeDFxu8WGqXWHCuwOiTX0X?=
 =?us-ascii?Q?2iBG9Jd7lT4C4WAVkM6mq6mET6XOx+QxmKWlqOND4qWtRuCNxtsmakcV+XiT?=
 =?us-ascii?Q?LKDIWu1PGXyRnuhUUCRXLKrvGx8T4vrx/E+CV3FV4L8nqVZvLAxocDfzjExX?=
 =?us-ascii?Q?yQoVHgQ3sd+xFbZWw0ORvx1O8wqdZ4RzmJVHNHFEo/BlyAatKWNj6EJb+7uL?=
 =?us-ascii?Q?Wc47SypSYa1OMksRzyolZmKx9piSJN4Oqd+JaxYrQRUttbSNQ6fdB+LhoCh/?=
 =?us-ascii?Q?fi8QosVchl89aoZFPOya8QTi6Cv3atDROjc0hSsFe8MotTkd/98JnU/Ugk1G?=
 =?us-ascii?Q?5ZHYaqeZhx0XFSJ417bEplmkkYOD2iwwSvraKVZCH8nMCenGSS/MJoYODATK?=
 =?us-ascii?Q?NL+y6AUbJ2K8TQX/P/+hx5WcQRCG6lKb9sNo45Jx4fI0ag9xBMZlT1FdrzHa?=
 =?us-ascii?Q?dF3euV+Bds3lyBlB+tqvbyNoa+UPSzULEYJ12jBMusbymLvA7vnmyOPjMbU/?=
 =?us-ascii?Q?Raiwn3RpF6bwAT1eLyvqhh6ggibPUEIrh9F3BYnr6zZhoNLG6U5GRjmB7UTG?=
 =?us-ascii?Q?5ZXeXS8shhjSixDpjpArDxIRdlrQofRsuB/+UXrM?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 699ec20f-3535-4111-04c9-08dbb9aef57f
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 07:55:29.9335
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: b1ouNsWGxpPsVYasmyotbcHsd2AIe32gMUh6ThBh1/WIQERYq9bT0KIECBd852y1qvT9ZxYME7T0Ygnvu+1AMQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4509

On Sat, Sep 16, 2023 at 12:48:14AM +0800, Akihiko Odaki wrote:
> On 2023/09/15 20:11, Huang Rui wrote:
> > From: Antonio Caggiano <antonio.caggiano@collabora.com>
> > 
> > Enable resource UUID feature and implement command resource assign UUID.
> > This is done by introducing a hash table to map resource IDs to their
> > UUIDs.
> > 
> > Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> > 
> > V4 -> V5:
> >      - Add virtio migration handling for uuid (Akihiko)
> >      - Adjust sequence to allocate gpu resource before virglrender resource
> >        creation (Akihiko)
> >      - Clean up (Akihiko)
> > 
> >   hw/display/trace-events        |  1 +
> >   hw/display/virtio-gpu-base.c   |  2 ++
> >   hw/display/virtio-gpu-virgl.c  | 21 ++++++++++++
> >   hw/display/virtio-gpu.c        | 58 ++++++++++++++++++++++++++++++++++
> >   include/hw/virtio/virtio-gpu.h |  6 ++++
> >   5 files changed, 88 insertions(+)
> > 
> > diff --git a/hw/display/trace-events b/hw/display/trace-events
> > index 2336a0ca15..54d6894c59 100644
> > --- a/hw/display/trace-events
> > +++ b/hw/display/trace-events
> > @@ -41,6 +41,7 @@ virtio_gpu_cmd_res_create_blob(uint32_t res, uint64_t size) "res 0x%x, size %" P
> >   virtio_gpu_cmd_res_unref(uint32_t res) "res 0x%x"
> >   virtio_gpu_cmd_res_back_attach(uint32_t res) "res 0x%x"
> >   virtio_gpu_cmd_res_back_detach(uint32_t res) "res 0x%x"
> > +virtio_gpu_cmd_res_assign_uuid(uint32_t res) "res 0x%x"
> >   virtio_gpu_cmd_res_xfer_toh_2d(uint32_t res) "res 0x%x"
> >   virtio_gpu_cmd_res_xfer_toh_3d(uint32_t res) "res 0x%x"
> >   virtio_gpu_cmd_res_xfer_fromh_3d(uint32_t res) "res 0x%x"
> > diff --git a/hw/display/virtio-gpu-base.c b/hw/display/virtio-gpu-base.c
> > index 4f2b0ba1f3..f44388715c 100644
> > --- a/hw/display/virtio-gpu-base.c
> > +++ b/hw/display/virtio-gpu-base.c
> > @@ -236,6 +236,8 @@ virtio_gpu_base_get_features(VirtIODevice *vdev, uint64_t features,
> >           features |= (1 << VIRTIO_GPU_F_CONTEXT_INIT);
> >       }
> >   
> > +    features |= (1 << VIRTIO_GPU_F_RESOURCE_UUID);
> > +
> >       return features;
> >   }
> >   
> > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> > index 563a6f2f58..8a017dbeb4 100644
> > --- a/hw/display/virtio-gpu-virgl.c
> > +++ b/hw/display/virtio-gpu-virgl.c
> > @@ -36,11 +36,20 @@ static void virgl_cmd_create_resource_2d(VirtIOGPU *g,
> >   {
> >       struct virtio_gpu_resource_create_2d c2d;
> >       struct virgl_renderer_resource_create_args args;
> > +    struct virtio_gpu_simple_resource *res;
> >   
> >       VIRTIO_GPU_FILL_CMD(c2d);
> >       trace_virtio_gpu_cmd_res_create_2d(c2d.resource_id, c2d.format,
> >                                          c2d.width, c2d.height);
> >   
> > +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> > +    if (!res) {
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> > +        return;
> > +    }
> > +    res->resource_id = c2d.resource_id;
> > +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> > +
> 
> The struct virtio_gpu_simple_resource for a resource created with 
> virgl_cmd_create_resource_2d() and virgl_resource_attach_backing() will 
> not have iov and iov_cnt set, which is inconsistent with 
> virgl_cmd_resource_create_blob().
> 

OK, so we should find out the resource in virgl_resource_attach_backing(),
and set the related iov and iov_cnt for this resource to align with blob
memory.

> >       args.handle = c2d.resource_id;
> >       args.target = 2;
> >       args.format = c2d.format;
> > @@ -60,11 +69,20 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
> >   {
> >       struct virtio_gpu_resource_create_3d c3d;
> >       struct virgl_renderer_resource_create_args args;
> > +    struct virtio_gpu_simple_resource *res;
> >   
> >       VIRTIO_GPU_FILL_CMD(c3d);
> >       trace_virtio_gpu_cmd_res_create_3d(c3d.resource_id, c3d.format,
> >                                          c3d.width, c3d.height, c3d.depth);
> >   
> > +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> > +    if (!res) {
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> > +        return;
> > +    }
> > +    res->resource_id = c3d.resource_id;
> > +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> > +
> >       args.handle = c3d.resource_id;
> >       args.target = c3d.target;
> >       args.format = c3d.format;
> > @@ -682,6 +700,9 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
> >           /* TODO add security */
> >           virgl_cmd_ctx_detach_resource(g, cmd);
> >           break;
> > +    case VIRTIO_GPU_CMD_RESOURCE_ASSIGN_UUID:
> > +        virtio_gpu_resource_assign_uuid(g, cmd);
> > +        break;
> >       case VIRTIO_GPU_CMD_GET_CAPSET_INFO:
> >           virgl_cmd_get_capset_info(g, cmd);
> >           break;
> > diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> > index cc4c1f81bb..44414c1c5e 100644
> > --- a/hw/display/virtio-gpu.c
> > +++ b/hw/display/virtio-gpu.c
> > @@ -966,6 +966,38 @@ virtio_gpu_resource_detach_backing(VirtIOGPU *g,
> >       virtio_gpu_cleanup_mapping(g, res);
> >   }
> >   
> > +void virtio_gpu_resource_assign_uuid(VirtIOGPU *g,
> > +                                     struct virtio_gpu_ctrl_command *cmd)
> > +{
> > +    struct virtio_gpu_simple_resource *res;
> > +    struct virtio_gpu_resource_assign_uuid assign;
> > +    struct virtio_gpu_resp_resource_uuid resp;
> > +    QemuUUID *uuid;
> > +
> > +    VIRTIO_GPU_FILL_CMD(assign);
> > +    virtio_gpu_bswap_32(&assign, sizeof(assign));
> > +    trace_virtio_gpu_cmd_res_assign_uuid(assign.resource_id);
> > +
> > +    res = virtio_gpu_find_check_resource(g, assign.resource_id, false, __func__, &cmd->error);
> > +    if (!res) {
> > +        return;
> > +    }
> > +
> > +    memset(&resp, 0, sizeof(resp));
> > +    resp.hdr.type = VIRTIO_GPU_RESP_OK_RESOURCE_UUID;
> > +
> > +    uuid = g_hash_table_lookup(g->resource_uuids, GUINT_TO_POINTER(assign.resource_id));
> > +    if (!uuid) {
> > +        uuid = g_new(QemuUUID, 1);
> > +        qemu_uuid_generate(uuid);
> > +        g_hash_table_insert(g->resource_uuids, GUINT_TO_POINTER(assign.resource_id), uuid);
> > +        res->has_uuid = true;
> > +    }
> 
> What about embedding uuid into struct virtio_gpu_simple_resource? You 
> will not need to maintain another table in this way.

Yes, agree. Will update it in V6.

Thanks,
Ray


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 08:05:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 08:05:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605231.942824 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisD4-0001ym-Qd; Wed, 20 Sep 2023 08:05:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605231.942824; Wed, 20 Sep 2023 08:05:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisD4-0001yf-O1; Wed, 20 Sep 2023 08:05:22 +0000
Received: by outflank-mailman (input) for mailman id 605231;
 Wed, 20 Sep 2023 08:05:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=7N78=FE=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qisD3-0001wb-7T
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 08:05:21 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20611.outbound.protection.outlook.com
 [2a01:111:f400:7e89::611])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 70811274-578c-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 10:05:20 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by MN0PR12MB5857.namprd12.prod.outlook.com (2603:10b6:208:378::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Wed, 20 Sep
 2023 08:05:14 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Wed, 20 Sep 2023
 08:05:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 70811274-578c-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dVcOyn0YPOsg9O097dxS/TXYKb0HCvJRRTiCAzTNblL9P4JBjE8JL+XYslU7VRXgDdM9kJvIZW7b2QcrksDhZXKcPnqZWRswm8AUjLwScmuTjf+2Q+vFW4WBK1Vj5IAUY1cfPuIzJ7AqUIrWLZ8wA5OsdPBcAs3xJI22vLb8n97pvxX8OqDWHX4Sfh5aXHq4xs9nurrBUJlF+xmk0szICJwxGcr8lwa2NK1yVIDMgy7RC7xhoD8ub1iRZetym8tBuJhGojkqdvSU0Ksf87WenoeQ4ay+BddcTdCHhoGojjlMFZeKSekYkuvqkWL1jliGj+E5L8oKQJw5u8z5cLNfjQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Lc1mPKgHSrEnW8uCDILbkS1PUINl6k97rGjvS0guXbI=;
 b=HQ3ZWoa6LX5S8ynxBIxT2hFg8VVdPgVu0EgoYFzOYEq7IgCxGZriK11MAoOpGvF7qyJB4ZeugSCy9XR8LTFLZqEWtOZinSJAQBrQtrajH6dEzJYrzpau4WLhFwoe3Ylp+AXGrKBZwH7NO1z9SyfkUbvsDYWrGoRV6PsMzfupJSiJJ9nPcNaMfDTO928KjmTcmeUB+lqJ5MSR2XiSknOVJ6kGGfywveG5Su30IgbtZH3vPwKBpuWFn2jimCZYDtFrbw4kz3gGgX81gcVQ9b+jloW3N91QY6HxD0XKmj9qOh/wQryd8nMCRw7eGIqVOaNoBrvpQF85WLIACjCtmBUERg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Lc1mPKgHSrEnW8uCDILbkS1PUINl6k97rGjvS0guXbI=;
 b=zN1XCg7SFQ8uAEiBhfByHjC8+J09ebne6VqxMj2X+CaUsRhOj3siGl+UTz6AF+C1JnMq8yLnS4RycFDn4Y2EKRjsXqFy4c9SycTAGSyc45sftaOgpO65Yuwq1Yv02SmKgngMYJviCbSzn5I5fhFdx7gGFUEbtf/MEFJWJcFLDuw=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Wed, 20 Sep 2023 16:04:39 +0800
From: Huang Rui <ray.huang@amd.com>
To: =?iso-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@gmail.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 05/13] virtio-gpu: Configure context init for
 virglrenderer
Message-ID: <ZQqnl7tXDWaGcOcf@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-6-ray.huang@amd.com>
 <CAJ+F1CK6_vDhh_=2kvHXkba8HYTvTuCP9ov-xW9EJ76SB4toWQ@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CAJ+F1CK6_vDhh_=2kvHXkba8HYTvTuCP9ov-xW9EJ76SB4toWQ@mail.gmail.com>
X-ClientProxiedBy: SG2PR04CA0191.apcprd04.prod.outlook.com
 (2603:1096:4:14::29) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|MN0PR12MB5857:EE_
X-MS-Office365-Filtering-Correlation-Id: c0301cf2-d471-4416-c45e-08dbb9b05192
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	C3uLZLW5MihmSblvNoWLd8uSxjYUdJKMNnt6HyForEpF58vz1r2Jvl+YBZsJbwiY29gcUS9VgMMbvHW4tU+Y3RFUB/QPLEu+4qrCRz4KveOPiMjvKbWE18wm0EJrPDmCNmA0/WgZti/Q+N6rAG/QTfKRxs3UDPjeiy9PHRy/vA4ud/I+XtTil/0ms3whftzUcz+wnuX5L/e41EQ+2DJf1cT7hDuFCZPbsv12IMnP7/IrJYRv3e0g6vOV27doSDpsF+Xj0zqbJP2sQPXOc9+hF4rXwKpa/WNxS3IFRIiMWfx5pUBws96SzHK/rBEjZV/R92SH+dkA2nf8Rzkc9GTNL817GEamW/XpXKPg7JTIC3cIsN/w6em332o/dNXs02HcWIYzfPEJ/sQ0CVJkkEosAIkPxq0YVDxC/uPoH/gmlYBYBa0sdGJ+t1hOhbScpSizJmk6KTXBOTDh4Tu7MhJyDvOcm9gbFEVqhllqwkt/8WoU8u36rdnErgrUhf42VRcNxnUuoeVontA9z5pQQiBx8/jdt4kUoxFmsT2QrZbBtCJgrlb3hx3H8GijxIrMcvjO
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(136003)(346002)(39860400002)(366004)(1800799009)(186009)(451199024)(6506007)(53546011)(6486002)(6666004)(6512007)(478600001)(83380400001)(26005)(4326008)(2616005)(2906002)(6916009)(66476007)(66556008)(54906003)(316002)(66946007)(5660300002)(8676002)(8936002)(41300700001)(7416002)(38100700002)(36756003)(86362001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MmNzTWNtRnNlOWZDR0dZYjZ5cmhxSkN1ME5uZ0JHUU9lUWJCeEVyUTl4b21F?=
 =?utf-8?B?SzA1WVJKbHdjK2N0b2ZZSU0wcWFyMDhIV1VRUzNKbnF2aFR1K25BRytacUhF?=
 =?utf-8?B?cHgxL1Nnelk3K3h3ejBxUnNWcVpXQTY2aWRTb3ZJbjNIWVkxbUhFV2p4aUFx?=
 =?utf-8?B?bVN0NkVKazRMLzlYeFBuNEVDa3B1bkpXSVlpTjlGbTUxdCtESWpMV2tKNGtk?=
 =?utf-8?B?NmlsNVBrQlhPdUJTbUE4bktkdzJPOTRxdnpleFZlOXV0aC9OSGVCTGhsY3Rr?=
 =?utf-8?B?OVJnNHREaHNPdXYxSE5pSkFyN0kwbExQdU1icWprTksyVklsN2FtV2ZYTkhw?=
 =?utf-8?B?eGlaSVNFQ0JPK3ZPU2pJTUJzQysyZGQrMjhraEUyVnkxZyt2WmZrdmlVTEY1?=
 =?utf-8?B?UUpkNHhieit0ekQ0cHpadTN5UEN0alVaNGEwL2gyMlVMRmNpY3lGYUtobXBY?=
 =?utf-8?B?QUlWdkZlRXBXSFZHQld5eWZHTnlORTR2M0N3clcvK1JITjRpUFp2ZmpIaTZJ?=
 =?utf-8?B?andLOGIrQmRCU044UU1yM0ZZaWxxUkxDU3ZvK2xkanExdVM2Q1ptbmZGVzVq?=
 =?utf-8?B?QmRPYlE2VUsvNUV5WXNZNUZnWXBwTllabnI3amNuUytVNFVzSjdrRXRhQWVm?=
 =?utf-8?B?OTJoSlFXM25tTmFmUGxsY21ObXZ3UWJCVTUyRm9hVWh0SGZUZThwY2R2TVR6?=
 =?utf-8?B?SmVHVk0xRUg2YTVkWHBVNVFCNE9Td3JQT0RsZ1lrSlEvQmhrYlRJRElpMEMv?=
 =?utf-8?B?bkd3dDA3Y2JWQzBEUml0US9qSkdwTUl1R2lxS3kzSHF3eEswN056bmFpc0tI?=
 =?utf-8?B?YUhBeGhwTW9OMVgzMllMaGc0Nnp4b3RWVy9sRjBkeXhWZitIbUNLSEZ6MFdh?=
 =?utf-8?B?Y1kySEppaUJVekNjcjRRQ2NWM3diRW1oYXRFeHRncFA4bHcxbXlObitSbXdV?=
 =?utf-8?B?a3oxRDUyZlNqanROejJmSStjRlZpOVdXV3AxcEMvbkZwUWQ2UDQ4SFhGNEla?=
 =?utf-8?B?N3BxNytLdFA3b2p3L1BjNUJoWitzcWVQdDdDc1FLdm1wZTBnVDJReXpPNm5V?=
 =?utf-8?B?SGhua3BSRXpwYmFLRmRwLzVmTDE4MUErWWFkeks2c3Aza1dVQnUvdmpqU0Vi?=
 =?utf-8?B?aE9wZHN4dFNRT29pMGtZOVpUc3N6cjlNa1l0YThPa1dwb2FpZWZwZW9qS1Nh?=
 =?utf-8?B?TzNtZDlpSUZkb3AvanJYSi9BcFpUYndmdzBmbEtpTXV1U3hLSUxNZDMrMHpE?=
 =?utf-8?B?M25OVnV2Y3IrN05HRFhTcGNKM1hYWTF1QWxIRU9GV3lsOXRDb0lhSUlYaWFr?=
 =?utf-8?B?UFJ0dGNDUVRVRjZZR09UaTJhWktWUi9sNW83RUQvWFAvYVk1TU44dnNqQkpy?=
 =?utf-8?B?Y1RONmlzNGxFdm0weVdISmxxRFQxbWs1enJJdjhxOWUwbzQ4SzFLK0ttMi9j?=
 =?utf-8?B?bWl5QlcvUkZsc1BqaTBUWEkvS1RPdU5DMGN0NDFOamwxYktjaVFpcHBCbHRE?=
 =?utf-8?B?eTlrQU5tdHNySXV6dWFYc3NpTzBtSGVZVlovSzNIWkY1ZGNoMXc0VHBjUXBE?=
 =?utf-8?B?TTBGemNnem1hNWhYa21WNldSQThZRFBVbG5GZnBqTGlkM20rMTlQWlBjV3p1?=
 =?utf-8?B?cFZETDBMWGs5blJ6YnRGQks5bUU5c0phcXNPL2lXZlI0bEx1TTZOTU9ZZ2xE?=
 =?utf-8?B?d3JqQ0VDOHA5bldKa0owczdzZ0wwOXIvajJFUUJhSnlnbnhldVM3ODQzcVJv?=
 =?utf-8?B?YzVHblcwZzgrSTRJdTkwTksyYVI4NkxHcmhvK2tEMUxaYm9PWGJYdkdKejVz?=
 =?utf-8?B?RzczeVRlSkxZYWVxMEE2cG8ybGlYWTdSNHp4dHU1UGpUUWdsc1FkR2hoajFv?=
 =?utf-8?B?S3orY1Y5TkVGbE1hUTZ3S0wzOVFJV0o5a3BZUzVJZWZCR1pMRXo0aFByK3d4?=
 =?utf-8?B?QmY0b3FTbXhRNnAyZUloazdMQVJadXdLTTNKam9RcEZEMGZvZEJwdjgvZXY5?=
 =?utf-8?B?NFVOejc4dGRNdjRadHpsUjV4UTYyZEZ6OHBCazZ1YjVGbDdkMlN4RGhERHJY?=
 =?utf-8?B?TWo2UHM3ZnRjOFpPUzNva1NQRnd2VXl3N1VxR21xMHQ2K0JiN3Z3ZTRFdW9K?=
 =?utf-8?Q?9AJLqq7BTPbmydKF0A1xPM5ko?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c0301cf2-d471-4416-c45e-08dbb9b05192
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 08:05:13.8376
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: mGnIB0yUL8N1lAg1iIEg2wPLbkfgcCwa/Xrm/CXAAkKQiPq51UZqN087i3w00RFQzBmD0mxc6KZccU43nIxxMA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB5857

On Tue, Sep 19, 2023 at 04:17:43PM +0800, Marc-André Lureau wrote:
> Hi
> 
> On Fri, Sep 15, 2023 at 6:16 PM Huang Rui <ray.huang@amd.com> wrote:
> >
> > Configure context init feature flag for virglrenderer.
> >
> > Originally-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> >
> > V4 -> V5:
> >     - Inverted patch 5 and 6 because we should configure
> >       HAVE_VIRGL_CONTEXT_INIT firstly. (Philippe)
> >
> >  meson.build | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/meson.build b/meson.build
> > index 98e68ef0b1..ff20d3c249 100644
> > --- a/meson.build
> > +++ b/meson.build
> > @@ -1068,6 +1068,10 @@ if not get_option('virglrenderer').auto() or have_system or have_vhost_user_gpu
> >                                         prefix: '#include <virglrenderer.h>',
> >                                         dependencies: virgl))
> >    endif
> > +  config_host_data.set('HAVE_VIRGL_CONTEXT_INIT',
> > +                       cc.has_function('virgl_renderer_context_create_with_flags',
> > +                                       prefix: '#include <virglrenderer.h>',
> > +                                       dependencies: virgl))
> 
> Move it under the "if virgl.found()" block above.
> 
> I suggest to name it after what is actually checked:
> HAVE_VIRGL_CONTEXT_CREATE_WITH_FLAGS for ex
> 

OK, will update it in V6.

Thanks,
Ray

> >  endif
> >  blkio = not_found
> >  if not get_option('blkio').auto() or have_block
> > --
> > 2.34.1
> >
> >
> 
> 
> -- 
> Marc-André Lureau


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 08:09:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 08:09:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605242.942834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisHA-0003ZX-Fi; Wed, 20 Sep 2023 08:09:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605242.942834; Wed, 20 Sep 2023 08:09:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisHA-0003ZQ-D6; Wed, 20 Sep 2023 08:09:36 +0000
Received: by outflank-mailman (input) for mailman id 605242;
 Wed, 20 Sep 2023 08:09:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=f1ZV=FE=citrix.com=prvs=6207273cf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qisH8-0003ZK-WB
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 08:09:35 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0649e53a-578d-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 10:09:31 +0200 (CEST)
Received: from mail-dm6nam04lp2047.outbound.protection.outlook.com (HELO
 NAM04-DM6-obe.outbound.protection.outlook.com) ([104.47.73.47])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 20 Sep 2023 04:09:28 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BL1PR03MB5992.namprd03.prod.outlook.com (2603:10b6:208:30a::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Wed, 20 Sep
 2023 08:09:20 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 08:09:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0649e53a-578d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695197371;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=F3lAlQnmKK1XtpR9quzAb8HH0LpX7ROzptC6db0g7r8=;
  b=NtShoKWYTKaVw8eX1hW1TZIWCmUFRUi+VDY3c4QQAa15+6KWdbNrOgRw
   ngyj/d4sSVVh5Cw8e2D+SqqpvUZxnd3DVFKqfSc2PorZ0Di/ryHB0eSbT
   2YNtF6TTKt5lllq5BJrZsVboPY4ZaINDTPpC6bIVq9396uadiU1NYdXlk
   E=;
X-CSE-ConnectionGUID: yqicCY+aTYyM3bdNvAEqDg==
X-CSE-MsgGUID: gWRWWll3Ttu/D604saKvmA==
X-IronPort-RemoteIP: 104.47.73.47
X-IronPort-MID: 123607672
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:96Dv1aIP8VUaG+8PFE+RbJQlxSXFcZb7ZxGr2PjKsXjdYENSgTUFz
 zYcD22BbvjfMDfyKt4nPIWzo00BvJKBztI1TVNlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrZwP9TlK6q4mhA7wZmPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5mGGBF3
 s1bIQw8fzXYje6Q3puWU8Vj05FLwMnDZOvzu1lG5BSBUbMKZM6GRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/VspTSMpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyj32LeQw3yhMG4UPLKHzMFVhFnI+nAOTzFIDQegqNqnj2frDrqzL
 GRRoELCt5Ma71CmUdDnQ1u4oXqIsxQGUtxcO+Q/5EeGza+8yzieAm8IXztQcusMvcU9RSEp/
 lKRltavDjtq2JWFRHTY+rqKoDeaPSkOMXREdSICVREC4dTovMc0lB2nZvFnHa2uh9v5AwbZx
 TyQsTM+jLUei80M/6ij9FWBiDWpzrDLRAMo4gTcXkq+8xh0IoWiYuSA9lzz/ftGaoGDQTGpv
 mUC3c6X7+kMDJSEvC2LXOgJWrqu4p6tMzDCgFgpA5go8Rys/WKuecZb5zQWDF9gL8IsaTLvJ
 kjJtmtsCIR7OXKraep7Zty3AsFykaz4T4y5CbbTc8ZEZYV3eEmf5iZyaEWM3mfr1k8xjaU4P
 pTdesGpZZoHNZlaIPONb791+dcWKuoWnws/mbiTI8yb7Iej
IronPort-HdrOrdr: A9a23:v6Qbc6o3Fpt42Sv4YW6wq58aV5oJeYIsimQD101hICG9E/bo8v
 xG+c5wuCMc5wx8ZJhNo7+90dC7MBThHP1OkOss1NWZPDUO0VHARL2Ki7GN/9SKIVycygcy78
 Zdmp9FebnN5AhB5voSODPIaerIGuP3iJxAWN2uqUuFkTsaEJ2IMT0JdzpyfSVNNXB7OaY=
X-Talos-CUID: =?us-ascii?q?9a23=3Aj1wzNWr9ZoMWGRELEJtVkr7mUdE8c3b2/TTZH36?=
 =?us-ascii?q?pLD1jRJuLYHKJ1Kwxxg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3Apn/aPg6Hzkq82nb7Loa3rg9Cxoxn3J6RN0QJyqk?=
 =?us-ascii?q?apo6oa3QsID6+kjGeF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.02,161,1688443200"; 
   d="scan'208";a="123607672"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YUp8yR+J9AwdhHT1n+AS6ycKVhjZhuO/h93qE1RDPYZz+G1DZO/flPhvHOHgJgztxC3d3ecaXQWBljm1psw/kk/KoU/ttoFt22qoFfemVyN7KpuPSgdMfO2PDmvh20kqk/Me5tVkhtdIbFnvcoTikrS9TGPF5J/a0My0c1/YB3hDmm1Y6jp7AZtM0atS8K+RW721JqBej9l+NXo9WHoEPVrMcBklhLaaCIbAzB+o+sLe77xJpOcZ9QxFInHrN86cywpiviyJUk6w4DRR0oRG/guTFSw7UoXQqJgK5X6X+B2Ag6g2eYEl5hgBbXy3pfYYKXxsFF74hE2Bl2XGoIN+Qg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FiCVSrzuV0cihNYsA+nq97bZjh6d/A8HmUwpLWcWz28=;
 b=a2x624R0NynmQdR8bSBUIMEELRbcJ+sc9wk6aLDmDD0ycDmPlOpQRGABIt5OjEMJ8LszthEMpOotiCrB4mIUNVTzZUdB55ZThauZpr0BEMxWgOuX2g8bjIC5QrUBwYmDe9PU5MAu6lBTI1mA5Kc8GvEVDMkvAqUlk06jSilxsqZowhCequwAYq2O2i+v6MIERToVcTCeBRQGx5KmxbDi6lecqK/tuEyNmlmYjfK3vz00U/tqPYdWsc48IbRN4BXro3eKTMahmWaQOGOJNF087rqLpxeHfD5xTvXTVM9Kpp4BSsxSHBgM4PR3kFkTv2eTltpl5m3x02jzqTgtvdkcsg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FiCVSrzuV0cihNYsA+nq97bZjh6d/A8HmUwpLWcWz28=;
 b=T4PY948BTrXvN9LNVVW3g2CJL3EQ+L6vZNwpjyKupROZIofmPEZtybzDFfFlj9aFdfR8yVdmL5oRQRReVKnylmDr/pa2vrukEPq8xcNx3kcp9bhULcHRX6Ozh9tjC/nxbpsQjaB9ocAwOgRqkPcETdJ9T/8A/UHohp+fmnzGPxc=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 20 Sep 2023 10:09:14 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>, Paul Durrant <paul@xen.org>
Subject: Re: [PATCH v9 02/16] vpci: use per-domain PCI lock to protect vpci
 structure
Message-ID: <ZQqoqrmDr2jY_bMu@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-3-volodymyr_babchuk@epam.com>
 <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
 <98b8c131-b0b9-f46c-5f46-c2136f2e3b4e@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <98b8c131-b0b9-f46c-5f46-c2136f2e3b4e@amd.com>
X-ClientProxiedBy: LO2P265CA0120.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:c::36) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BL1PR03MB5992:EE_
X-MS-Office365-Filtering-Correlation-Id: b85c42e2-dc7a-40d7-40e3-08dbb9b0e4a6
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9vNAWLU+CVnGdD2q7hOoCwioKTBCtrpRM358jYHyib5NB6H1RN9MRqRg+tk7ogLmN8vQgleK1zVZFM/tiQWrXdLH1ueAoKEffLA1sAMDmaE+FcFXbOlp2Wwwnc17yqT0mOhN1a6TQoPAiAxmXyyM7W009ifXzyiQHPU9K5PAWTcKRhqOJuFkzXPKmuu5akWn9ZgMuAaIHRAONwbE/IjSC1f+OB+9IvdPlFLmcBvhpzbhbzBGkd8PGUrZ22rEn0+9bBy90GyqCeJgX33RJwVDZmC1voY89VnU7Lb0qZNTNAtjf9LwsUDqj8SVlqSo8cBhmD/StxEdS8LSfztC5RgUtyDBy2in2SyW9J1rvjc65qEQsRPPL4gDb0QcsQvRAvK1tMN9m7MUhzy3/sKyWKHxHqdlU3gdfpyKpRG+G6H08DPmbbgPbIGanZfojsKyQmjaX7RQ8aFiAE67ZllNv415yUVp/+kwJUPaU0snibcLc4odLRPTyCuj8UrqmeokUm1gzQzNDXh38bQ2XqKllbWJyWUa2ejQWnG8cc1jc4/kT6T7a6YJrqrjNB3nsJiOw3t9
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(39860400002)(346002)(396003)(376002)(136003)(366004)(451199024)(1800799009)(186009)(6486002)(6666004)(53546011)(6506007)(478600001)(85182001)(86362001)(38100700002)(82960400001)(2906002)(26005)(9686003)(6512007)(83380400001)(8676002)(5660300002)(4326008)(8936002)(7416002)(41300700001)(6916009)(33716001)(316002)(54906003)(66946007)(66556008)(66476007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aDE4ckFqamg1TlZBWERvZGM2dVRoeVFJNGxrOGViRFhxMG81ZXBzMU1MTmVu?=
 =?utf-8?B?dDJYQmNiR0J5RFo3V0lKYzhuK0tpdmMvTXpOMTFqeFp5dmNqaDZOcWYzS3pI?=
 =?utf-8?B?VnViQjMvMlVTTExOT0w4dmhtMkFkMFNHZDRvbmlIelprbm9MUEFoNzZWWmIw?=
 =?utf-8?B?MGQvK3ZvTy9Td2RhaGFnS3dLLzJySzBOK1V6V1pvTzBmRU9kdU5XTStIWm52?=
 =?utf-8?B?S3ZZOS80bjVScU8yeGFmMVJTeVB2OThKc3lmYmJubTlIc3RlTFpFWW1hWE9r?=
 =?utf-8?B?cjlJbmp1Tk5odldJMlI1Q0E1S3VFMlByd3JiQ3dpMm1xRDlZWHFmaEJCcHlS?=
 =?utf-8?B?WUxFRTF4VzcyY0RlY0hydE9peHFweXBlS1piY3Y2bldGaEhUTzYycXo2RTBU?=
 =?utf-8?B?Kyt6Sk1Yay9KZ3k2ODQ2OGlIN3k0UXVNWUJ3cnNWbHRwRWJBNXY5RVhkNHlZ?=
 =?utf-8?B?THNsdXdDcTFzUUJWbloxeTQ1dkJZTzIwbW83UlpXd2RhbXZJMzJka1FUOXhq?=
 =?utf-8?B?YXljeUdZblozcC9icjVHL1IxUEJnRldEaXNPdjd0UkU4dUN5NExWcnMxMWpZ?=
 =?utf-8?B?S1NaV08yWEhFektlVDBXYktKVXBNNjZYbSsxT2NEWjB1b1p1R1loeTcxZ2hq?=
 =?utf-8?B?ZXJhTGVBUGlUM3lMNlRSL0g2VW1kWmkzdTBKZkdyWEgraXh6R1BmRmx6WjZL?=
 =?utf-8?B?enhndTBFZ1BBRS9nVkZrY1pxQUdPQ3g5aXl1Sk92bGtsVmxIY0xENUlEa2ZF?=
 =?utf-8?B?Zll5b2sxY0YxTzBpNXE4djNlVnZKNWlMU25PYnFkQjc4eEVHdDJSVWgrRlN0?=
 =?utf-8?B?YTlYQmRQRzg5MDZVMEQ0c2J6cm56N1drR3MxZERPOTBBVU5UeldwUXFLb0Rn?=
 =?utf-8?B?ODZyMzJEb1ZWRm9ZbktmM25ES1g1UXdSRGVGMkkvRVhBSThNQXErUm1PcGoy?=
 =?utf-8?B?N3dTQ2lhczVMc0hXb3lTcCsyem1vRkQzS2RtZXFrenYvYVg0cUM5czJrUEww?=
 =?utf-8?B?SmdRVVNBLzFZUDBFdFRUTk1kQ2tzb1ZwcXY1UUhzOUF4MW5NS0Ixc0cxWUhP?=
 =?utf-8?B?ZVFZRVpQVVJEbkx0cjRIa1VEK2ZVZWhoa3BxOFN3Um5hOHU4bEtpYmRaS2JH?=
 =?utf-8?B?Y2RkdmZCWnhKaUttdzVyMGhjb0wrWVo1Tk12aElkTkpuZE9XcFBwSHFMWG00?=
 =?utf-8?B?Ynp3OUthRWVYNVA2NGRxbWwvWTRBM0MveldpbkkwVnZSMEdVNFkxSGZwYzV3?=
 =?utf-8?B?VUtTZ3A3MGladUxzbUtYaFpFeVZQM3htRjhtS094UXZiMStLMjByNUdETkwy?=
 =?utf-8?B?MlMrLzJEY0JPeEFicHFUZHhmTm1JY3J4TGYyTnQ2d0UweWRvQjdOUDdjZ2dm?=
 =?utf-8?B?Vi9WNFNsTXJaMnRBdVlDcHNPQkxCR1pHV2VHbnY5cHYxdDFsVWxDbE9MV2RY?=
 =?utf-8?B?NHFUUGhrUlpxMkh5a3dxWElYMXhuS3U2NEc3MnptZmc2aWZNaWJPSU1KUDJS?=
 =?utf-8?B?NWVRc2hKL1RSSFcvRzVQZmhjUm5TZmd3SjAxOTNOcG9qQ1hlSnRUYlkyNW5x?=
 =?utf-8?B?b0NkaW5hdlFWTUF4SU4vS0xteFRmS1VEeVB4T04zNDVMeldxS1BCa2JNV1BE?=
 =?utf-8?B?dWttRWpBb20yenJ0dHVsMWtObkRtTm1iQVRrNTc4ZWI4cFM2ZUtMczY2Kyt3?=
 =?utf-8?B?cEtnVWx3WUlObTZ0SlYwSmtLKzZLQi8rU3Fka0FydDBaeVYraXkrZ0dhZkZk?=
 =?utf-8?B?TzN0NTRxNDJ2U3pzdlBTRXB1Q0FlRDkxN1hrRGtjblhuNWNwelNpYUtOQVhS?=
 =?utf-8?B?cVVjQlhxT1NpR2I2VXpNRHBVeTlnVDZkYnIrd2d0aEFyWmpJclpjZWdSa0xI?=
 =?utf-8?B?UnNRZFFZM1EzbUhzV0VHR2tLdmExcFV2YVFJUkdjMWxXMEV2b21TL1plS2dH?=
 =?utf-8?B?cUJCdC9UVlAvbjEwZ0wwVmpwRDZiVFc1Zk9DaDNqdXZtRHphN1ZmRDRSVHRu?=
 =?utf-8?B?eWVhWmpOTkhnbDM4L0lhU1pjclVTT3dNYnNvNW1xRVRyRFdKMm1qZUN0TlpX?=
 =?utf-8?B?OVlKMGlKUTVDQU8yelNLb25kTTVEYkM4ekJyd3NBVThDbjhjSzFzai9TcjlB?=
 =?utf-8?Q?oxAKcqeo9N3k7prbZuoKzncvA?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	M4VJwbY10sdchlB4a4H3uRz3ZaAw1a5lvAn8K5jt9pRscMllyLXbAkkSXZiWZD+stjLi+gOxDh09k2Vz6vEKuira3Ax5vypvL7L4kCGJTCsuX+EuSxDSiln/gWzlTOAOruM9yxJ+6ei4/XCebJ/0mYnjKl6VetkrPXwPfeo+c5hH0HTrFHyiB7vHPlC2fShX3hlHCCSwq1wAaIUmp6UrHqcDXU+itPDuoGBkUIDfFIpkhD238Azs7j9bcsFHY/znchShLZPglvZ0iiKWi+8PDWUel0fzDkpdWbi4PPQzFGz97uC3N8KSo97RrSoeY4UcsFFwLZDF9dNUeKhWVTdaNydT1uEgM/QpFJgwmd/a5JCc2ddfFk1k+fiLOsf/FXxp51JkQBlTN6nI0OuX9RQTuLwR62pU2KrE2gq9YBGhwsQIQLW0aRbrrzuRPMrQ94j6phaMGZ3d4QQ7tbmKsk9g87c2Xh2GsFnrCj8dqxGD0XmjwL9Q+KJYg97CP9tGzA2eN3NDniV9F4LmFyV01LNAzfNC67nRMLYKEUY2YmCumLHfJqvi7rkpvQZPctC9RU/ZUtDlqJp2BlV1yO+WdG+IxGTdwu6ooM3txl6PQjve4yJI8wKKYajWB/3gnXNDBXawe6q7NjSocwnJ500J+Z/ekY+Zxzv1GEOFHPfxwvGPbQ71sDRA4diRLBcAlgWoxGZPzx2kLdJDpkcmlgDqWDwu3PbioSQB24sEOmLnECN3PAV3eh1g+pX+WAOCYjzmSGCeF3opt8mbw1I9WT4JW8pvIT96Bmb2LtCEOC+dDLM9wmxLCkZmD4vk2niG9uVA6ZizeFLpK6iWLDrF1+De6DAvNvMFHoXFGgw+HPxoHY8vsanI3dW9/zwckTs8bqBcucjYoMqjV6yYhU8QQ3W4N0R2Ag==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b85c42e2-dc7a-40d7-40e3-08dbb9b0e4a6
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 08:09:20.6905
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: +g1H0Vulu7K/aZ5orJH/gw8LWqt7wBUK20a1qexhmfsnVOwLqeXIa9MeEh1FrytLWsubpF7B+tmNqKfxFlJmmQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB5992

On Tue, Sep 19, 2023 at 12:20:39PM -0400, Stewart Hildebrand wrote:
> On 9/19/23 11:39, Roger Pau Monné wrote:
> > On Tue, Aug 29, 2023 at 11:19:42PM +0000, Volodymyr Babchuk wrote:
> >> diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c
> >> index 8f2b59e61a..a0733bb2cb 100644
> >> --- a/xen/drivers/vpci/msi.c
> >> +++ b/xen/drivers/vpci/msi.c
> >> @@ -318,15 +321,28 @@ void vpci_dump_msi(void)
> >>                       * holding the lock.
> >>                       */
> >>                      printk("unable to print all MSI-X entries: %d\n", rc);
> >> -                    process_pending_softirqs();
> >> -                    continue;
> >> +                    goto pdev_done;
> >>                  }
> >>              }
> >>
> >>              spin_unlock(&pdev->vpci->lock);
> >> + pdev_done:
> >> +            /*
> >> +             * Unlock lock to process pending softirqs. This is
> >> +             * potentially unsafe, as d->pdev_list can be changed in
> >> +             * meantime.
> >> +             */
> >> +            read_unlock(&d->pci_lock);
> >>              process_pending_softirqs();
> >> +            if ( !read_trylock(&d->pci_lock) )
> >> +            {
> >> +                printk("unable to access other devices for the domain\n");
> >> +                goto domain_done;
> > 
> > Shouldn't the domain_done label be after the read_unlock(), so that we
> > can proceed to try to dump the devices for the next domain?  With the
> > proposed code a failure to acquire one of the domains pci_lock
> > terminates the dump.
> > 
> >> +            }
> >>          }
> >> +        read_unlock(&d->pci_lock);
> >>      }
> >> + domain_done:
> >>      rcu_read_unlock(&domlist_read_lock);
> >>  }
> >>
> 
> With the label moved, a no-op expression after the label is needed to make the compiler happy:
> 
>             }
>         }
>         read_unlock(&d->pci_lock);
>  domain_done:
>         (void)0;
>     }
>     rcu_read_unlock(&domlist_read_lock);
> }
> 
> 
> If the no-op is omitted, the compiler may complain (gcc 9.4.0):
> 
> drivers/vpci/msi.c: In function ‘vpci_dump_msi’:
> drivers/vpci/msi.c:351:2: error: label at end of compound statement
>   351 |  domain_done:
>       |  ^~~~~~~~~~~


Might be better to place the label at the start of the loop, and
likely rename to next_domain.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 08:12:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 08:12:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605250.942845 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisJs-00056n-T5; Wed, 20 Sep 2023 08:12:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605250.942845; Wed, 20 Sep 2023 08:12:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisJs-00056g-QP; Wed, 20 Sep 2023 08:12:24 +0000
Received: by outflank-mailman (input) for mailman id 605250;
 Wed, 20 Sep 2023 08:12:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=f1ZV=FE=citrix.com=prvs=6207273cf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qisJr-00056Y-Qy
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 08:12:23 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6b1c8c37-578d-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 10:12:21 +0200 (CEST)
Received: from mail-bn7nam10lp2102.outbound.protection.outlook.com (HELO
 NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.102])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 20 Sep 2023 04:12:17 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BY5PR03MB5013.namprd03.prod.outlook.com (2603:10b6:a03:1e3::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Wed, 20 Sep
 2023 08:12:15 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 08:12:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6b1c8c37-578d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695197541;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=jnj17YXjPEWPkfHQ/BK8rkXYvmxP2A3IjRDoACu+3ok=;
  b=HOaUooQTfCfTC7Rj+vyufcIEFxBRTZENviXEMLig/fYUUn2qtOO1oBug
   i+I/D65+pW33CJFzXNJBi0eiqb4sFl3PSJyasmcFwv6WogwCU5DAWaObS
   /RLzH2dPD87Mh9aTZcKRtgkIPh+k9Xvn/o3+Z3MyzH2OcgpN+pWLV+h2G
   o=;
X-CSE-ConnectionGUID: WDA0YQFWTGSOe/3oMsWcRQ==
X-CSE-MsgGUID: SexDv8YOS5qNfm1QDLW+cg==
X-IronPort-RemoteIP: 104.47.70.102
X-IronPort-MID: 123200707
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:EE1vM6uP729d6+S6DUOEk7/HBOfnVOpfMUV32f8akzHdYApBsoF/q
 tZmKWHXOK7cZGT1ctknbIuwoxkHupSBzNU1SAY5qCs8FHgU+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4lv0gnRkPaoQ5A6EzyFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwFxwkNiG6qd2K74mcR643geE4E8LRBdZK0p1g5Wmx4fcOZ7nmGv2Pz/kHmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0ouiP60aIC9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAtlITOXnrqECbFu7/WEDJANGZHyA/OCfhEvnYv57F
 A8f9X97xUQ13AnxJjXnZDW6qnOZuh8XW/JLDvY3rgqKz8L83QGdAWQVSy9bX/YvvsQ2WD8C2
 0eAmpXiAjkHmK2YTzeR+6mZqRu2ODMJNikSaCkcVwwH7tL/5oYpgXrnVcpuD6evkpv1GDX8z
 jqQpS4yr7wWgYgA0KDT1XfDjjG3r57FVDkc4AnNQ3ml5QN0Yo2iT4Gw4F2d5vFFRK6GSnGRs
 X5CnNKRhMgMEJfLkiWOSecMGbiB5vCZPTmaillqd7Ei+iqs/Ti/fIlWyDB4OEptdM0DfFfBe
 EbOvStB6ZkVO2GlBZKbeKq0AsUuiKLmStLsU6mMasIUO8ArMgia4CtpeEicmXj3l1Qhmr0+P
 pHddtuwCXEdCuJsyz/eq/oh7ILHDxsWnQv7La0XBTz9uVZCTBZ5kYs4DWY=
IronPort-HdrOrdr: A9a23:5eLSTqHKCu+zcx/TpLqE98eALOsnbusQ8zAXPiFKKSC9Hfbyqy
 nDpp4mPHzP6Qr5OktOpTlRAtjifZq0z/cc3WB2B9qftWLd1ldAQrsP0WKY+UyDJxHD
X-Talos-CUID: =?us-ascii?q?9a23=3A4cBzn2oFXxiqVVRaQQRdlejmUf8JWyXs9VnvH2C?=
 =?us-ascii?q?DLmsuE7qwUmCbwpoxxg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3AaqJlsg1V4nIlNw6Nam6VZEtHujUj2Km+JF5doLI?=
 =?us-ascii?q?95tCiOykpAhu5s3e8Tdpy?=
X-IronPort-AV: E=Sophos;i="6.02,161,1688443200"; 
   d="scan'208";a="123200707"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HVwT+4wlq6fWRK++z2+hXSAYsfKJTkIkGkIgW4RCFKgCp+b+JAi0JN0iMDvJy1YTXJ1DKAGZszecTiDCt+kModwZvZPeQNtOywbrlfr1cxQw3msqJO61izbiBT+laqhcKk/C8h1Svy5x6njSVhQUjLHNfzgjYWq9icWEB0I8mlXZ7bq3i/c635cg4gzVfw3mfqOTPoVzaol1k2iOwthKWjrF2xbf4pT2Tinh8LvM+I2oGrif+CuhC6KMaOODawtOfJeFxQoC/EXqUKVSp0HPwuWy0luVOzK55gFARjOr/Uax/OM2mp+QsJ7f0Yhx/E87wBOFLxs/eoHExZ8VshbwJQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jCIr2BTrdjBwf8JwussqK1yt2W6NAgWjxI2uXKZS1us=;
 b=S5ltXKazBl9NZX8CzLrt/5MSHnDGFyUDIbZHiYrGKxRuDtvN255JonrA8FxxaKAR3aJkAMGYqaBYAwOUM0El/aNoo8wI8sAJg+Bn4KYb8LBg1zNM6/KeZ12XmoMOleuOxuzz9hSrhtaArqxxdYmfoX2iMTAsXjP0KfhwPj7dvXA4485wxRRTUirDCsMJvXVetyGR2Kj60eDtvoOuo1Kpk0lUvvgt+D0gTp/Cmty+6YdU6H27dlRpcisqAC9Z0ZGCwuGVxn6gkT5Hjvu1pgSxl9CZoVpHwWGJdp/3bfwQZhHGaSbeTKplQjsHUkqHXoKiVgLkWqWDTPVj7lS72jZ0Rg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jCIr2BTrdjBwf8JwussqK1yt2W6NAgWjxI2uXKZS1us=;
 b=UMugf6ner1wL62mFoWX4pK2DOKCoSSLE9g0+itXvwdG2qjt/VgikhxPbLs68N+f4b5x3qG0wqlhyfvRqUi6rz1+c1BBj7qFyMMdoFNJrRImpBEX0ocWTU4H640igJQk+3KkeLMurROZFXxIzoj0QhwFr7BwYZt7/J61zm8H0tLk=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 20 Sep 2023 10:12:09 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>, Paul Durrant <paul@xen.org>
Subject: Re: [PATCH v9 02/16] vpci: use per-domain PCI lock to protect vpci
 structure
Message-ID: <ZQqpWTT5SoY5Lt2q@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-3-volodymyr_babchuk@epam.com>
 <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
 <5cf73ef3-3ec5-9539-3a29-b8535a73d9cc@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <5cf73ef3-3ec5-9539-3a29-b8535a73d9cc@suse.com>
X-ClientProxiedBy: LNXP265CA0067.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:5d::31) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BY5PR03MB5013:EE_
X-MS-Office365-Filtering-Correlation-Id: ff7d8c14-2846-4316-6735-08dbb9b14c87
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MvjtQzMMqiCA6Pp3TYXcWSZWiProyI8TpoG7gJL7dKy4tbjHiePi1LSS66w/Cxh12+b5tK/6q6J09hayP8zhHLVYOa11tu5O0PkICD6xz8PShQHUEIhW+zb6+4JoaCNkQsU2vPiL4yhAyn8yXs2wx7IAZH4lwru9rbYCp3RSoPkAWZc3pLPGxrBW0zbDwteczczUTGgDekcHIi0XauMsMz5cf6uj134Xx4xK7HbrmIdzzAYlVAKnULEt1aogLq6hE5V4vYkBvIJz/bsIyGzVn90+gxzEJLjPdPlePUt/E1fnhHtyLeq6Wzrsv/K6rfSJSb/dATVqiLqYCyxPmAoOptT+Fpeobzo7H5Pr1yrauF1KmVaHR56b7xKWXRgou3aBkMSTwzkKU1G005/QYSBgl6GyYvj7lB8r3OLs5RKMdsPf5xmJE5tnVOWvkBKsuROHEVFY5J5CFMmAjI+JYVA9dPlt8Li2de813PQ4vawGDwk5tP5scn45myvuQww3QYVeAxAKRWxa5smQwnFHxoE/kuvyAIBfCz4Uzz0Bszg1JiaX4F0ZjAx1ZsNm7bWxG3G3
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(136003)(346002)(396003)(366004)(39860400002)(376002)(186009)(1800799009)(451199024)(6506007)(53546011)(6666004)(6486002)(6512007)(9686003)(478600001)(83380400001)(26005)(2906002)(7416002)(33716001)(66476007)(54906003)(66556008)(66946007)(316002)(4326008)(8676002)(5660300002)(8936002)(41300700001)(6916009)(86362001)(85182001)(82960400001)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VzJ6Uk82ZDB2cTdHVjIzbjVtWldOV1ZWMlNCNzNYOVlzNlpVWVlHYUZabHhZ?=
 =?utf-8?B?U01Ha09RUEZnaUhFTXBiU1ZrTVdIUHU5aDVPZC9vOG1oL1k2MDg2dDM1Y1FR?=
 =?utf-8?B?eVBhK3duZlZQcXNWdEkzRDBOWlphU1R1emY1dVd6VVJkV2tmZ2RacXpDRFli?=
 =?utf-8?B?T3JRbVRiU3psMGhDNHVYYkFOamJUUUdnV0xyQTFSUjMzbFREbGQyTjZxNkVD?=
 =?utf-8?B?OFdnRVBidmg4SmIzMUVuNm80cVNzK2pzUFVvL2tzaGVqeHl1WU1rNHErZXVG?=
 =?utf-8?B?WmtWd21pZkR6RElWRWJCRTFpZlo0M3BUc1crOWVGQXJKSTZaVDNndmxNZm16?=
 =?utf-8?B?MmZlQVMxTktjZ0Z0SlZHN25mUTVFUjl0dDlYMVU1bUlTQjBlV004SW5hdW1Y?=
 =?utf-8?B?eEw3VGROcWVONzFCOVVkT210ci9WUk50aXNqZkgrSHVtay8xVVplbFZ5enEz?=
 =?utf-8?B?WitBRUxXaklaUWcydTFaRmI0aFR4a0N2dDNkR0trbC94MnJ3RC9aZTlrTzRG?=
 =?utf-8?B?WWJJT1drdnFWeWhPTllYdGh5bTFIdUh0M1dFL1Nqc2JjcTVyWGZ3cUI4SVZj?=
 =?utf-8?B?RjZvSzBOaHhHWXB3NTN0MVR2bWdRdTFuMUVXS0lTdFBhVS9XcEkreUtVbXJW?=
 =?utf-8?B?Y3VGQ2wrWHN3dGdtU1BBV0pMb2IwSGpQWkVBZDZ4SDU3TGRSKzNLZVhvU0NB?=
 =?utf-8?B?Qm9XSEhvcjRWcmhvd2Y2ZUd6ckZ0ZHphbkpNQkZWUUFSUGNFOHhvMHR4LzNz?=
 =?utf-8?B?MXR3RUNLMlAzQ0grSlpyOEpENDZQbk56VDNTY2MraFpBNThTZmI1anAzU0dI?=
 =?utf-8?B?VFhYcHNLODdOa1B2TXlEMGNzTUtpMGVZVGFZVVE1TFc0UmdWRmdaeFhJSEYv?=
 =?utf-8?B?QUhrSzJNaGNqME83ZWxCeVY0aWtHdEllek5yV2Uxak9NbkhpSlZjeTdGMnZH?=
 =?utf-8?B?a0NTb2FYem50SnZpL2hjNTBPNDBDWi9TNE9sVW1sc1BhQUZ6WGV5L3hLS0FI?=
 =?utf-8?B?S1NuQlEyYStmVE9VZHFhM2M4SXpGT0ZSUmFaYzZ0d21nRDc2SmRNdEZZWnVC?=
 =?utf-8?B?UG92K01HRklPdnhUR3BCNFQ4UU5aOFVzd25LMUc0dFJQdm53dXhIYktqeFdN?=
 =?utf-8?B?eFpTeklYTFA4OXRKdUpyb2M5amlUSjZ4WW43V3J6dmlkeXNzc1J2L3NFK0Zs?=
 =?utf-8?B?SDZVY3BIVDA1aEJVZ1U4TlpOOTIxWjUxQ3lCUWwzWVE5ZEFpcWd1TjgwcTNQ?=
 =?utf-8?B?SWZjLzlEck5IUjFDWFlQZUNZYnJ6cHJ5VlFmd3E3ZWF4UDcrNlNrL3k5Q2RC?=
 =?utf-8?B?eENjQUkrc2R5ajFzbXZJNWl3NEtHamo5VzFnRHpIanplT3hvSVBHT2RUYTVT?=
 =?utf-8?B?TUZpaGZVNmxGU05vWjUrRGM0dHRkQVE0OGdZL2MwUHNnRElmN2JDZ2FNdUZX?=
 =?utf-8?B?Mmc5Zzc1K29VekFjVTRpcWJSYWYya3VoSnZqK3cxeWtZeXZVOUZJWVBVcnFy?=
 =?utf-8?B?UFZ5Um9uc1J3N21zWWYxUnRVQnFBVktSZVNmQXduZ1VhaE9FaS9YNGJOa3BB?=
 =?utf-8?B?MnZUTFV3SFVPWkdQUVVSVitFMk1EMnZzT0RHL1pDQUlYcldMNUNoeFRFZnQw?=
 =?utf-8?B?Zy9VeHdyZGNtT1NLL2dLdVA2RHFWbDJlaW1keS9Ec3podUc2bzd6a3daSVU5?=
 =?utf-8?B?WGl3am8xT1l4b3hXU0dMcXVMZVcyU1FGU2VJN2F6b1RFRG8xbFdtVnZRT0Nu?=
 =?utf-8?B?dFZEM1dhdVNpZjBlVDBhNVNUakJ1cC92MVJBQklYMHJTeS9kMHdQVURHZ2V4?=
 =?utf-8?B?RnNqcmc5SWxvQ3lkbHY0Vm1pYW5VeDMySHFFVzFwVWErUFhJN1dwdUdYWXFQ?=
 =?utf-8?B?YXh5amxhZjNrWTkzK1U4Uy93dnk3cFduOXN1aGp6N3p6RmlTQUp4UElPUVJu?=
 =?utf-8?B?QVR5SHVQYWlpMUJxNlZPQ3VUK1pIOU1Nd2ZMRVBkMk8yQjZXSEdjQTBvTTY3?=
 =?utf-8?B?dDkvRE9qM0Zrem9NSDhJdFIvdDJJWGZ5dk1LQmZocnNiTXpOc3B6WUE4Qncr?=
 =?utf-8?B?YUdwRkt2czVEMmg1K3VlTlRXOFZtdUtDOE0vTHJRdTZvejFUT0ZQMHV0bSsz?=
 =?utf-8?Q?T2t5pNu7X1n1rMGXZvXVAYe8i?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	IWuEJCaK5zOop6M052xNsuVZcVzW+pKXOECVLuWsLsBBIAcM4wgJXHRHSEWqwY3QdVLKULJmrkp3/oO+EOlKDr2dATXvuSSd+5dLFbc8vYVdf/4GP2IOjtt0GXYVBT7l7i11vuYMnYBaKgsEXyAp0mecpktfHGo+O4tIJLGli6XA5oYO3qjhqre2qJ3e69RFYGpJBXoPKPxyS0TNF7ICRqaltxFSFxIizJa7uCuluxGqAM6gKoR8R9HuTe8ey1vdbJIlrcG5WhfxxsK3DZ1Jzcj4buSJJ2Zq1ZP674k+sR15DuFJCY8OCLQyoGMQLTocivLuKEf1ydNImcF6MgEaCWs0rnNy0ku6fyoTHoWBjeeQSbqHzuD0FWufercSENSXiIG/cMzWB90OTogxB6tGTUY9YHiufc7ZD1mlBMBqaG6zNjIHpGPYMFesh0Jv9itWDVjU9oZgXlFDSrXNgwCb5wtOzK1eQ+OYl0ToUBcyVTxAlQHJXtyHJ1xLYj/A3vo4CzJ27Q0pv1lZTcd8Sy6hgHLRUoybughpsvIHxFHvsJmioNrpzgPKLAQpg+xi0Rh2B+nyzZKycms+1uvbHkNLSGsz861OFcG8eDkgmANdEZE/MnUB0ddCL0LInrwed/s/aNtkO1oT8+c10SOe0YPV2kwZulS5ws5y/8lxazvbq6pzDnKjnODms4ufmMbrjCMa/VEXDoxtZMzfRsaUANp2QrQ1bJPdYHmbQyjhmTnPt4nJ4wSLYMj5dWl7L68TplaMOEdE/9xCBlgkk8GQkYZKGDxSsWwLHITbN8Q+fyHV2jI7U0pXbGDo3OPvZ2a2BQkaH2qcl/JDgaCs0Y5haMn4Q/up0p4qwH5eUSvJTCEIEKaOdhRhz/XP4UdFa6DL6Z4pIa1MqPkZZw0boA52hz4L/Q==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ff7d8c14-2846-4316-6735-08dbb9b14c87
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 08:12:14.9993
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Dg//BZQz4ir5X4RKw1VVO4ESbdCgjmfBjNamIGRMRSEAnA1K0rap4Orcbsli7k68R84gBUnsDCymqdA2qfvPJQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5013

On Tue, Sep 19, 2023 at 05:55:42PM +0200, Jan Beulich wrote:
> On 19.09.2023 17:39, Roger Pau Monné wrote:
> > On Tue, Aug 29, 2023 at 11:19:42PM +0000, Volodymyr Babchuk wrote:
> >> @@ -2908,7 +2908,13 @@ int allocate_and_map_msi_pirq(struct domain *d, int index, int *pirq_p,
> >>  
> >>      msi->irq = irq;
> >>  
> >> -    pcidevs_lock();
> >> +    /*
> >> +     * If we are called via vPCI->vMSI path, we already are holding
> >> +     * d->pci_lock so there is no need to take pcidevs_lock, as it
> >> +     * will cause lock inversion.
> >> +     */
> >> +    if ( !rw_is_locked(&d->pci_lock) )
> >> +        pcidevs_lock();
> > 
> > This is not a safe expression to use, rw_is_locked() just returns
> > whether the lock is taken, but not if it's taken by the current CPU.
> > This is fine to use in assertions and debug code, but not in order to
> > take lock ordering decisions I'm afraid.
> > 
> > You will likely need to move the locking to the callers of the
> > function.
> 
> Along the lines of a later comment, I think it would by rw_is_write_locked()
> here anyway. Noting that xen/rwlock.h already has an internal
> _is_write_locked_by_me(), it would in principle be possible to construct
> something along the lines of what the comment says. But it would certainly
> be better if that could be avoided.

I personally don't like construct like the above, they are fragile and
should be avoided.

It might be better to introduce some wrappers around
allocate_and_map_msi_pirq() for the different locking contexts of
callers if possible.

Regards, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 08:18:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 08:18:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605284.942872 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisPc-0007ge-1Y; Wed, 20 Sep 2023 08:18:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605284.942872; Wed, 20 Sep 2023 08:18:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisPb-0007gV-Uh; Wed, 20 Sep 2023 08:18:19 +0000
Received: by outflank-mailman (input) for mailman id 605284;
 Wed, 20 Sep 2023 08:18:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=+DLO=FE=linutronix.de=tglx@srs-se1.protection.inumbo.net>)
 id 1qisPZ-0007gP-VS
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 08:18:18 +0000
Received: from galois.linutronix.de (galois.linutronix.de
 [2a0a:51c0:0:12e:550::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3fb5c12a-578e-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 10:18:16 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3fb5c12a-578e-11ee-8789-cb3800f73035
From: Thomas Gleixner <tglx@linutronix.de>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020; t=1695197895;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=q8uz0fUswbzg4UfjUJDAWIyPtio4hXNctFhBDoWkw/I=;
	b=kE/H84Nol6C9LIOlDt6z28xGW+kuawtQTv4FXD6iVW+kmib/dyQry2HI8I77EmhgQxDLZN
	qEgTzgAv1sc4W8HrHuYKBXOEmd8iy0FrKPG0MFuz1/fda8E0rqXYkyIrrou5ubORAkaYRw
	p/nmM4quiOpVL9qhS6zLuMV3cIchMR6hkqbICxaE2zL+k7xlPk9j6ykjGGBeLVRZLYxq9d
	0yAWuJ54kFHbV4NDCNTZcx3eiPlzoAXMv/tX0K20Ws4eVdY8naRzGbrZMxHDQrwNOmAl0h
	eNDf8z882Z8cKy1r7YZcGyfp0iUOwDRibsCZp79oHbYnnohNl6oaYDjetCot7g==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020e; t=1695197895;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=q8uz0fUswbzg4UfjUJDAWIyPtio4hXNctFhBDoWkw/I=;
	b=mIUwG0wXtMRC39Lg+Y7W8a/xQn0/l7mkpzZwYbL3zGlQ4h/qPTWoa7xXLmtN9Dgsu0o4pK
	pbN9cV12I/qCJfAw==
To: "Li, Xin3" <xin3.li@intel.com>, "linux-doc@vger.kernel.org"
 <linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
 <linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
 <linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
 <linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org"
 <kvm@vger.kernel.org>, "xen-devel@lists.xenproject.org"
 <xen-devel@lists.xenproject.org>
Cc: "mingo@redhat.com" <mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
 "dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>,
 "x86@kernel.org" <x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>,
 "Lutomirski, Andy" <luto@kernel.org>, "pbonzini@redhat.com"
 <pbonzini@redhat.com>, "Christopherson,, Sean" <seanjc@google.com>,
 "peterz@infradead.org" <peterz@infradead.org>, "Gross, Jurgen"
 <jgross@suse.com>, "Shankar, Ravi V" <ravi.v.shankar@intel.com>,
 "mhiramat@kernel.org" <mhiramat@kernel.org>, "andrew.cooper3@citrix.com"
 <andrew.cooper3@citrix.com>, "jiangshanlai@gmail.com"
 <jiangshanlai@gmail.com>
Subject: RE: [PATCH v10 36/38] x86/fred: Add fred_syscall_init()
In-Reply-To: <SA1PR11MB6734C02FFB973B2074EC6CC8A8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-37-xin3.li@intel.com> <87v8c6woqo.ffs@tglx>
 <SA1PR11MB6734C02FFB973B2074EC6CC8A8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
Date: Wed, 20 Sep 2023 10:18:14 +0200
Message-ID: <87h6npuuk9.ffs@tglx>
MIME-Version: 1.0
Content-Type: text/plain

On Wed, Sep 20 2023 at 04:33, Li, Xin3 wrote:
>> > +static inline void fred_syscall_init(void) {
>> > +	/*
>> > +	 * Per FRED spec 5.0, FRED uses the ring 3 FRED entrypoint for SYSCALL
>> > +	 * and SYSENTER, and ERETU is the only legit instruction to return to
>> > +	 * ring 3, as a result there is _no_ need to setup the SYSCALL and
>> > +	 * SYSENTER MSRs.
>> > +	 *
>> > +	 * Note, both sysexit and sysret cause #UD when FRED is enabled.
>> > +	 */
>> > +	wrmsrl(MSR_LSTAR, 0ULL);
>> > +	wrmsrl_cstar(0ULL);
>> 
>> That write is pointless. See the comment in wrmsrl_cstar().
>
> What I heard is that AMD is going to support FRED.
>
> Both LSTAR and CSTAR have no function when FRED is enabled, so maybe
> just do NOT write to them?

Right. If AMD needs to clear it then it's trivial enough to add a
wrmsrl_cstar(0) to it.


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 08:19:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 08:19:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605290.942881 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisQK-0008UN-AP; Wed, 20 Sep 2023 08:19:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605290.942881; Wed, 20 Sep 2023 08:19:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisQK-0008UG-7V; Wed, 20 Sep 2023 08:19:04 +0000
Received: by outflank-mailman (input) for mailman id 605290;
 Wed, 20 Sep 2023 08:19:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3b5T=FE=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qisQJ-0008U2-AX
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 08:19:03 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.115])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 58e39a47-578e-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 10:19:00 +0200 (CEST)
Received: from fmsmga007.fm.intel.com ([10.253.24.52])
 by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 20 Sep 2023 01:18:47 -0700
Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16])
 by fmsmga007.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 20 Sep 2023 01:18:47 -0700
Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by
 ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Wed, 20 Sep 2023 01:18:46 -0700
Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by
 ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Wed, 20 Sep 2023 01:18:46 -0700
Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by
 orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Wed, 20 Sep 2023 01:18:46 -0700
Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.176)
 by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Wed, 20 Sep 2023 01:18:46 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by PH0PR11MB5659.namprd11.prod.outlook.com (2603:10b6:510:ea::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Wed, 20 Sep
 2023 08:18:44 +0000
Received: from SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61]) by SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61%5]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 08:18:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 58e39a47-578e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695197940; x=1726733940;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=ZhWMOChsCZxUb6si/Tzng9Pk/ALO9A+UEzdgmdBxZi8=;
  b=CdQVUc+VW7rR6+mrT+2k+Gc6qykzBTAJWXZh12+Ogvo+DCST7xav3gXa
   Rfom39blDFYU3fCjqttrrxQu9VEsk3iLGO5SKudQRe3cXj6qrV4VtOBYv
   /1ZpgcYV3d8uPYX4t4eZ2zlxEtav5cvQJ/XBvCNAIEqGRDYti/7oOo3BJ
   PmFFg/SkEfqflyqN05dyu7AKgss2TfoLK9tGbnreApJgLRx1zpm/n5Ew1
   sfLlG34FWax4U+8phruJTHPMO0SOI4qZpAQ+MhqHPambkSJcI8yZjeO+G
   sTw3zCwmxOw9YQsM29GTeChaQkZ9B+HeRxqsztJpJatdO23XBYH3HtBHu
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10838"; a="380064540"
X-IronPort-AV: E=Sophos;i="6.02,161,1688454000"; 
   d="scan'208";a="380064540"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10838"; a="749800944"
X-IronPort-AV: E=Sophos;i="6.02,161,1688454000"; 
   d="scan'208";a="749800944"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BnoQFKx4vtu/hDKNKuqIXj2lhzX0H6QDCe+LV422t4w43U1Fe7rbTGv0Jy9JA8ZlxQEqCeEcSgPGLWOrdToG0p24BlwfRpwqtoWs88gF3EiJLn91xJJnfjkDMoEflDblyP2tHky+s/H21Wqokg1gychx+tZbYvSyFJ7zxYEsPrGv7SxbdfpxSWYaj9qJCA0l6uMoKJK4je94HXYkMR8NMAeqkk22whsLSd/6NUhzeb0ybvJuDGJ42z7PVpwlXo6CHgK/lsKKOIeU1lzAiFUnZvOxmW3ehQsEG3w5hkuTGl8LSj9q+arsAze3QCQq3MdMO95Xa2ZN+93Ph922EKy+iQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZhWMOChsCZxUb6si/Tzng9Pk/ALO9A+UEzdgmdBxZi8=;
 b=aR5lCQSDh5KQ6H3L5+wnl478BdMM/Rlkdi8qlTMTlyh/OCeZgEKw6nDQxitaIlYxfxXNmATCg6GHvFROzl4IGWwUpfVzxae9YkGNtCnHrRIlmHsj3ZNvRw7q6nw2S4Fy+oKmB0U0AHuW+hhCJL2XqgHhm0FsyxPV3V/aXS8l5RGoFeQFrPxSodxvNjClKlvwUG7wZxfuxsDHfYPOFtMIQu8KOdEVnXeuKPL870cgm2HJtXzLMt7wj0zJgSikMBddXKUj2+YfO5i2xvIh+vxAsIUwVCgj9CPCc9W1EUhHJ8H/+EXC4rmVK/QJ9jAfLVzshK2kjVuuZf227P1QR9xVjQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Li, Xin3" <xin3.li@intel.com>
To: Nikolay Borisov <nik.borisov@suse.com>, "linux-doc@vger.kernel.org"
	<linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
	<linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
	<linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
	<linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "tglx@linutronix.de" <tglx@linutronix.de>, "mingo@redhat.com"
	<mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>, "x86@kernel.org"
	<x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>, "Lutomirski, Andy"
	<luto@kernel.org>, "pbonzini@redhat.com" <pbonzini@redhat.com>,
	"Christopherson,, Sean" <seanjc@google.com>, "peterz@infradead.org"
	<peterz@infradead.org>, "Gross, Jurgen" <jgross@suse.com>, "Shankar, Ravi V"
	<ravi.v.shankar@intel.com>, "mhiramat@kernel.org" <mhiramat@kernel.org>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"jiangshanlai@gmail.com" <jiangshanlai@gmail.com>
Subject: RE: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Thread-Topic: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Thread-Index: AQHZ5ssSXb894LHEBkqZUWtDh9samLAjYtKAgAADDuA=
Date: Wed, 20 Sep 2023 08:18:44 +0000
Message-ID: <SA1PR11MB6734F205C2171425415E4F00A8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <dda01248-f456-d8d7-5021-ef6b2e7ade2c@suse.com>
In-Reply-To: <dda01248-f456-d8d7-5021-ef6b2e7ade2c@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SA1PR11MB6734:EE_|PH0PR11MB5659:EE_
x-ms-office365-filtering-correlation-id: c5cfb639-8560-47d4-801b-08dbb9b23499
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: Kj++hWDUjB1kERo6XUk7wmzS/0+HA2vnsL9f0LradaEmCvTZkosNoNTBm55tU1kxGglrFClquIRjFCD185l6yBZc1cbhz6MCiHRMzTTH5iYNsk4NcvYlrkQOxbne8Q7lpopPc9yDroTCdV3pqO54ABa6MP6DCwEU7S467fGNdaPoTq6/Um9vVy4CXwvayVEtt/eS2i9v/YF7KljEYvfYWWEcqpqW0WtejZhk5nrMeu++rHyUCFWLytnMNJfGi/mbMe/FDe/CSGAKveUrO7t0MPqTbZwI4VoP1Hr7sk4j5b/0mP+ef/RbWh1B/i2DAF72PWrIMmM7xL8z42Nt2Q9UUPcmctZ+m3bN/XXA2UXDPpnt+gSbfF036m1RE8Wmy1sUKgH/AM19cANDg4yEwxxsEO3qDFFwDvAUrNRzkL11JZfQZe23yx52OvAAIVjGfDZYp0crD2gWKWi51iL2IbCMIzN6CeIiKUjQfpyzZqNKALnWIi/X/tQnNGHV1qH0IdO8Qs5xyKbFj1YD8ObZ1y5XmdLMHPEd2TDgJQnyuBXE8eINDugjMrO+Ga/p7dpIzO4a7kNhfZTbZatXPr8211+0cuK20LS501JHU5siobdAWAjhKvHDkf2M1lw6j0h5gfIu4oaE/TJbTK/5YJ+zDgU9mw==
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6734.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(346002)(39860400002)(136003)(376002)(451199024)(1800799009)(186009)(316002)(4326008)(5660300002)(6506007)(9686003)(7696005)(41300700001)(110136005)(2906002)(64756008)(8676002)(8936002)(54906003)(66446008)(66556008)(66476007)(66946007)(76116006)(4744005)(52536014)(7416002)(478600001)(33656002)(55016003)(86362001)(122000001)(71200400001)(26005)(38100700002)(38070700005)(82960400001)(133343001);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NjhVVHB3aUpiU0huVk1oMXJwWll3dHFvenRDYmZqWW5waEpGeG5CUC94WGNF?=
 =?utf-8?B?aWdhOU8vUldrRzJibW0vZk9TWXVrNjkwZnVmbU50ZFVyQmNjbEZaWDVDMnlw?=
 =?utf-8?B?cktDeEIxaUcvVWVxZ3RWWjBBWGNLN05lSWhuOFJzaytYallrSDlDQWRaY1Zq?=
 =?utf-8?B?TjB1bHlQRXQ0VlpBcW9iVjloMzZna09RVmdWSUNQRnF1aXllWUlZMkk5SHlq?=
 =?utf-8?B?dHdHa0tTL1lhSCt5V0xmUENNb2xEbmMvUS9QU08yZTl1YUR2MTdHWGN0cllZ?=
 =?utf-8?B?YVdnUElmTVJSMmhBVHZncGU4T0hwSFo5ajlsT2tVU01ORExGaEdsYzdlNkh4?=
 =?utf-8?B?UUNleFRMQ1RSYkVndnhxa0lRK1FTU0s2Y1puMGw0bmFxdU8wZEQrY1dtSnBK?=
 =?utf-8?B?Y2dZU2Rhd1pNM25aSVBQUFlmSFBla0dqN2tYSlgvazlmN0dicHhYb0lhOTF5?=
 =?utf-8?B?VGorUjNjZldVY0M5aGJYYlpDVnRQKzBFQkcrN05nelhYd29JeFRQNng3NkMx?=
 =?utf-8?B?ckxIUjNORFNCZ1IvRDRoSzltcXhPL0hwaUg5T1Qvd0ZxNFdDbExyZGRybkVu?=
 =?utf-8?B?dnhFWGNrTnZXNzB5UnN2bDNnY05zeENBZFlvNHplcEdnUDlUZTFrckRBWlRh?=
 =?utf-8?B?Q2dhWG4xbFNwNGFGMWk1WENIV1RRWGJmNzBzYU5nVmpXWEFOaHNSMVROMXZn?=
 =?utf-8?B?a05DMGY5UkVTakxQNGxQdjcwaHVFYWprK3lmTHNtUHY0VHN4VUs1cnhIMW81?=
 =?utf-8?B?VnJpNDU1b3EwOWozK2tzMW9YLzMxT0s4V3JCMWN5OGxNTldIT3oyLzFxcERo?=
 =?utf-8?B?YjNPckpBZlFSb3hBL0hEM3dNSUNkSWRPN1ZkVEV5QTZJRHl0UnMrZGJqSTdj?=
 =?utf-8?B?NTRBRlgxbHpFNE4wdkJuUUt5dzBQNmk1MlFwL3o3QVBJUVhRcXFOZHB5ZnBx?=
 =?utf-8?B?MzZFNXBZbFN1M2NRZXl6ZWk1RHEzaXg5TGlKbnFiVHZJMzFXSk9uSlhDUkdS?=
 =?utf-8?B?ZEwvdHI5dEVYc2dNUG04bm1ubWh4dWZTRzBzSHVUNUFGaFFIMGhJWGsvQ3JN?=
 =?utf-8?B?NW8rNERsM01zOTJKdk1SdHB1U1Vka0pVTXZrTG1YQWVXTm9CK1dyQXRQQ2NC?=
 =?utf-8?B?NmhycUVxZTdQZXhjK0gxRVF2MTBZV0Q5K3EvUG1ISkxXWkZmSG5XZVV1amFE?=
 =?utf-8?B?NSt3UzNmdnhYbUZ3eVZmU3VSTnNmVVFVNlFoSHd2UHJaMGM4c000ZHUvWU1v?=
 =?utf-8?B?MkdkdTJQVHZIQzloaWNXbm9Dc1hOcXV6bGFmVVVUNjdqWEZsOWI4ajlSTWV3?=
 =?utf-8?B?aFpERkFKc3hvcEFqSWtuSTJkUmFibkpXK2tYSmdzWjVGYWdMTnZoZGU3YzNp?=
 =?utf-8?B?SDgxR3lMTzd5TGlzOVFmOFV6WVZSUFJUMHdZcm1rS0NaU3ZuSUh4SnJkQWc0?=
 =?utf-8?B?ZGtFdC9mRHJ6SzFtUWtoL2dNN3pETW5BbnhIUW5rMWozSGlTUVMyR0I0VHFQ?=
 =?utf-8?B?VUc4cE1zbWNld3ZhVFRZWGRyVWJPVVlpVXdoeXpIUmwvb2hGOWkySmtGZTJX?=
 =?utf-8?B?Z01GZ1BrOCtXZ2t2NWYyTDNaNGtxOTFrcVJxM0VyNCtKQU5OeWZ1T3RRRVdq?=
 =?utf-8?B?ZG1vb2d4ODlFd2NRcmtObDVQaWdTM1hXUU5EZVI3TUZCWVd1d3Y0bDUvcE1a?=
 =?utf-8?B?MHRkL1Y5YzI3aUZ2RUdmaThOdjNCUy9udWw4c0RBVUhMZWFvRGFNaEZybms2?=
 =?utf-8?B?R2ExQmgvMmo4Q3JMNENFNDdIZlNoeitBdFViUERuVHVmakZBQjJOQ1FHL3hu?=
 =?utf-8?B?a0xkaG0weVp3cms2Ulc1dzlrRlk4ZHNCVG9KZVJodlpheDIra1Rxa09ZY01z?=
 =?utf-8?B?enBrcHZpYm1aL2xjeEw4VVpmak9aTTkrZ1RrNk0rWjB0cG9SbGs3TnJROEo1?=
 =?utf-8?B?SkI1Q1RPUmJVcFl6T3prbGc0WXUyODNhMXBaVnBpeFgyVXVSaGxteTdxVGhw?=
 =?utf-8?B?VVVrWkxCOFl6ejVqRnY4U282RG04Z0Q0Y1VyT0o5ZlRQeWhBYWJLNDNqTVA4?=
 =?utf-8?B?NmFlakNLTU51Y1RzRjdicWVxRHN0WWxrTzBlWlU3d0RnRk5SK0ZCOVR6L3FS?=
 =?utf-8?Q?UWubnnhQrK7EkXs4bODhpyjbF?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6734.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c5cfb639-8560-47d4-801b-08dbb9b23499
X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Sep 2023 08:18:44.0368
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: wWT6le60h0yJoVf/hI2kPwb+KN8e3Tczz+1WKb9BSIm/CXNBdBXjgCcrsV+R9F4aI+QS0GNR5pdDw7HTmC/vyA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5659
X-OriginatorOrg: intel.com

PiA+ICtzdGF0aWMgX19hbHdheXNfaW5saW5lIHZvaWQgX193cm1zcm5zKHUzMiBtc3IsIHUzMiBs
b3csIHUzMiBoaWdoKQ0KPiANCj4gU2hvdWxkbid0IHRoaXMgYmUgbmFtZWQgd3Jtc3Juc19zYWZl
IHNpbmNlIGl0IGhhcyBleGNlcHRpb24gaGFuZGxpbmcsIHNpbWlsYXIgdG8NCj4gdGhlIGN1cnJl
bnQgd3Jtc3JsX3NhZmUuDQo+IA0KDQpCb3RoIHNhZmUgYW5kIHVuc2FmZSB2ZXJzaW9ucyBoYXZl
IGV4Y2VwdGlvbiBoYW5kbGluZywgd2hpbGUgdGhlIHNhZmUNCnZlcnNpb24gcmV0dXJucyBhbiBp
bnRlZ2VyIHRvIGl0cyBjYWxsZXIgdG8gaW5kaWNhdGUgYW4gZXhjZXB0aW9uIGRpZA0KaGFwcGVu
IG9yIG5vdC4NCg0KRXhjZXB0aW9uIGhhbmRsaW5nIGlzIGEgbXVzdCBmb3IgV1JNU1IvUkRNU1Ig
YW5kIHJlbGF0ZWQgaW5zdHJ1Y3Rpb25zLg0KDQpUaGFua3MhDQogICAgWGluDQo=


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 08:26:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 08:26:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605170.942892 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisXR-0001lN-0f; Wed, 20 Sep 2023 08:26:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605170.942892; Wed, 20 Sep 2023 08:26:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisXQ-0001lG-U6; Wed, 20 Sep 2023 08:26:24 +0000
Received: by outflank-mailman (input) for mailman id 605170;
 Wed, 20 Sep 2023 07:58:22 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DGJ5=FE=suse.com=nik.borisov@srs-se1.protection.inumbo.net>)
 id 1qis6I-0006wc-LU
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 07:58:22 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20624.outbound.protection.outlook.com
 [2a01:111:f400:fe16::624])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 76d8032c-578b-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 09:58:20 +0200 (CEST)
Received: from DBBPR04MB7788.eurprd04.prod.outlook.com (2603:10a6:10:1e4::15)
 by GV1PR04MB9119.eurprd04.prod.outlook.com (2603:10a6:150:26::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Wed, 20 Sep
 2023 07:58:17 +0000
Received: from DBBPR04MB7788.eurprd04.prod.outlook.com
 ([fe80::5b25:12c8:9f51:9b31]) by DBBPR04MB7788.eurprd04.prod.outlook.com
 ([fe80::5b25:12c8:9f51:9b31%4]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 07:58:17 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 76d8032c-578b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WxQxgMpahAsdJhjj6Zpzme7qltUysMHyyhQWSxF07SEm4SOdtHUlG0eIS3LyYhbbPAHsjMHvvNvhUkMtxKl8hSEMrp4fA46kJnHvD9p56K75ryTK79K/HW3KfkkJFyiMgcg51r3iFsJ4ZbHWSVMrBbELnxoqllWrUCO6dwdOXwiOLisIcujhiAh59LR54zpQwXi5R2l0mtcXkPl3xVVZcr/xAZZzM6CTXdAWuX21vOHWiYqC9F3OC8WChd9UBqIr4H5yOuZ30B0PSdSJerD7Ml9AmDkWoDqBoktOZ+2OQW/z4CTHxad+0BxNw0LS4TnTg9UkciQBYgv9v3cIq/hcXA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gqzAt/nNndS6ciIZ4al8oV2o0FAUsbEZseqb83RuJbY=;
 b=ZzpV7venmCETmrcC575+F8ProTW9iWSXvq/Kg18MDOfoopLDFZvQY3NIuoUezA3bTCOXa1x/x3l3KbpUYsEd04xi9vZRqTH8FqO++y05XyYvDmJaFBzvJ7JB9Wiy1mNaoFiSkWVUiCaj9G6bcGT/QiPkC1qfnfVL4s+8OXT3XzXlv90g/NTzaoPOUBB7f4HjAlVsZn9UyXnXOh2e0r0CoGwP1NJJnbcDZ6bGOKgj4c1gZuZXBl90j4p/RSDmTCmndlFku7GmmbqHCXkd6Czq0UQqonSOToajCUXBpCyNBJ0AVv1estUOKzkUeom+qdaGF0eZFCEjdWUYEW5QOLLXMw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gqzAt/nNndS6ciIZ4al8oV2o0FAUsbEZseqb83RuJbY=;
 b=Z6K5PspWofMMzxJjTH29VNThvPJV4VMJaZHvn0dadR4lKWftTVS45g53vitPdJf9OGByVmN8EP4CWCZL2+Ydo5mprLhfFn9puFyP1gZ69GS5J8vm2XsiYc9nOk61VIHW8rIqL0UjYZr1vwHXtWue01hPMrLBMfi6GdM/u49eC2qoGR9wCkctxePoBT8KWppAF9ByHYm/eeMHBBlncitdYO07jIFC9LJ/SrI4jUf+7aVHsu9QhTmDOubm3Qvb4aUsP8IACYCTOz/Ebx01YQmlmxN4f82jpCb4n2aqM+0JGXwGYpv2mvolJc89deuLG/CLZmZ2M3MibghesFcIoBRbWg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <dda01248-f456-d8d7-5021-ef6b2e7ade2c@suse.com>
Date: Wed, 20 Sep 2023 10:58:13 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-US
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 andrew.cooper3@citrix.com, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
From: Nikolay Borisov <nik.borisov@suse.com>
In-Reply-To: <20230914044805.301390-4-xin3.li@intel.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0135.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b9::20) To DBBPR04MB7788.eurprd04.prod.outlook.com
 (2603:10a6:10:1e4::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DBBPR04MB7788:EE_|GV1PR04MB9119:EE_
X-MS-Office365-Filtering-Correlation-Id: 80bc802f-28ef-4998-92a9-08dbb9af5916
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1TwKv3hP2KwjHU2HAp8pXPgTzzxfoEMMnje/TPsKF40rw3SNrcbP/GoeeNh5rZEW8td982q+7MmRUKwVgwbaMXMewPp2mxuYOEVQCvBNdyuAyLxFn+u2uWE/4ytW8iQlOY6OY+mVIE7TYIKsC65axnfniyRILU4TJaf2bfYWOmtElxbQ9KFr0smdYmdRUciNVkX2TrpDvTlbnbrN/zMcRGQFyD6iE0uJvRAJsNUGoVooLqdojviExyE5zSPd2V82jtvKIS/k2LCun6lj5Fwe8KjV1p73lcs0uC1/vUbVjfBMI+7OOTkRM42zr6fKz+1VUMiJw6kH2vIx/Qflt+u5Df6ava+T9FqfT0NS+8sWnZ8139c7fV8Sj/4KPBs7ozcjx7BjyxXZq8iB8VLTZix16DA/nFXJeYDdlKN9yzjWrNZVnLRn8QKIvSts/nF9goMiky5hlzxqv5zhoCAVTWHwCBq1FMLBX8iTS6pWO1ti6z44D99PFTyO0eH//8AZ07uBiE7koBX39Qy5S2RJgaTY1PjB7zlvVRvRxvyaLw4qSRsCspUGawuMpJ2sQbHgSQMmS+fdgm/RrVcDpZI0HYxjfbVyOr7XP70IVW0MlvNrQZxbMAXKVy4YZbRrbBN00jkY/CH8I3kMqAoGO+Jl10smieb+Fnx13Yc4I6T7KoFh2iGADdjMeY6StkXfAi1UHxOC
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DBBPR04MB7788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(39860400002)(346002)(366004)(396003)(451199024)(186009)(1800799009)(36756003)(38100700002)(31696002)(86362001)(31686004)(8676002)(66946007)(6486002)(2906002)(5660300002)(66476007)(66556008)(8936002)(478600001)(6666004)(4326008)(6512007)(316002)(7416002)(41300700001)(26005)(2616005)(6506007)(133343001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RFB2K1NlQTg3UFRaVzN2a3J1WmpqMEJETVV5aC9yMlkwWTJiZjJhK1AzQ0xB?=
 =?utf-8?B?NGZEYkw2UXhEQ2tVRlBSUEJvdzdTMUNQNlpVcU5xSzlGK2dZUlhuTDVWOS8x?=
 =?utf-8?B?em5EQXlMaVQwbVJiSDVvSmZTWlBPaTFjSkw1NjNyUy83RUl1MmNLeGJTNkty?=
 =?utf-8?B?OWJBWmNRSUlOZzN0TS9PdHBEVVBNL0VNYVFLbFhGSVFNNXFZVGRROVBPSDEv?=
 =?utf-8?B?ajA2UXhTUXNaWWJMem9waDBQV3RHNzZGaVdpZ3JwTlRxandhelhvdFlFKzE5?=
 =?utf-8?B?K292TGYzc3RVZ0ZtZGlNQVM4aTlEeE1jazA3d3N5RHgzVkR3UjQ3b0ZOSzdS?=
 =?utf-8?B?eElpdHRSWDVsZWZhWjM3MUxOYnJQcEdyL1ByK01tSXVxdC9GZitTV3VwUnV4?=
 =?utf-8?B?STJSUVFZSnpPTDBZc3BFQnB0QWhGTXI4Mnl0R1J0SHlJUTBHVlBpWUVOeTlZ?=
 =?utf-8?B?Z3paZUhXYmtpWmxWbnFZRWh2R05EQ2VlSTZRRG1zUFdqNDdadTlmR1VFd1Rr?=
 =?utf-8?B?WVNsRFRYd2hrK1NYZUozRjZVZzFvMEdoQjRkOUM3K0pCTTFrR3FYaGpyYzJZ?=
 =?utf-8?B?WU81M2R5VSt1VG5zRC9vWHdKVWZhd3lUaUpSODJuVnZXZkgzWnZ3THNQRk00?=
 =?utf-8?B?ZlJwUkcyZExwNm9yU25MVXQwT21sUWYzUERBQktwbkk1MTdHdnJDQ1pKYjhm?=
 =?utf-8?B?ZG9sUEh3dWluT0tYRkpsbWxUT3BoZkk4T0FPNGtnbnBRQVVkZXBlckhrZlNn?=
 =?utf-8?B?aFgwNHBKS1NFcDF4UDNhaXpLbExoM1czelBXbThNakRLSklVR0EvdE55ZW5x?=
 =?utf-8?B?N1JRbHRWTmk5dVNmbXlxQXM4UncvVXNkR2N5Q01xWXRrL1Q4bEZJUXdrYlJq?=
 =?utf-8?B?M2pTT213K1JaR2RsNUc3MW9GU2NqYVQ4cEdDNEczQWg3bHZ5MnZKalAxNGUw?=
 =?utf-8?B?b2svNjVnU3RGU2MvVU94TExWWlRWdXQ3Vzg3Um9XcjBra1JmNjVkSjAvaUwx?=
 =?utf-8?B?bThMNTV6a1hQWjFrRXpXcTRTYnhYOUt6cTY5c2NCYnF3azR5aEJQODQxZVJJ?=
 =?utf-8?B?ekh0Y0R4R29yR0lneHpNRzZVVnJmcnRPTlpOZFJNN20zci8yRkdJd2ZEUGM0?=
 =?utf-8?B?Qm5YTExYaGN2RlRGRVRpVXMyb1k0TFB1OW5lY3UwVFpOanRsSzhsSEw5UzRP?=
 =?utf-8?B?VUk1M25nWSt4N1l2Z2pMY2dTNWhPbzVrSHlQYkNlZ2dTQURDVGlpKzEwWm1h?=
 =?utf-8?B?RG82cHNLVmd5eGlQTHJVcjdoVkRaSFpQZzB4Z3lheW5ZcTFrUktXRk9nME9n?=
 =?utf-8?B?MXUyZUdNWGFNaW9YcmdjdFBJZTVoNWM2akw1WlRwRWtFdEg5cXQwNFcxWTVo?=
 =?utf-8?B?VUpGcVA4dTM3K21nVXA2SFBGdHhOWkVqbnRHVHl4djlJUWw3SXQ5aGlkSFNs?=
 =?utf-8?B?M0FURmZ5TXVjS01FSmdEalQ1Q2tzMHVOdFh6bVJlait4NndiUUdHZ20wT24w?=
 =?utf-8?B?ZXk2aXZKYVJqT3JEUWdSbDRPT2Joa1l1Y1M5aERXUE9tSm5YUkhFeGZ5YUFN?=
 =?utf-8?B?eUt6OTRGUjZaK241Y1RBV2UxM0ozNEdKUVR6aUNjZlpoSENsdmVCcmdLVjF1?=
 =?utf-8?B?cmlEZkpVdEVUbmJDcllBdUFzWDRrcEdTVjJTM1ZBSXJaY1dyMG0xZ3ZqbUs2?=
 =?utf-8?B?R2I3N01pMEFGRk1XeDRwL0VuQ1cvZGxta0k4ZFpGci9YYlAzWDNFN3RETm4v?=
 =?utf-8?B?VVBSdDlrQk5VcldlL1k0OXVONkVpa1NmL2lPMkpacUFDTStCK0ZHallTRU9G?=
 =?utf-8?B?Y0xUWUpaVlUrVEYvUHBnKzg4cVRtK1JrTVllRUxwTklPT1c1VEMyd0xVSXU5?=
 =?utf-8?B?QnQvYjRKMjArNEpSdTcrOG1nZ2t3b0lRUkdvWWY5Ulp2WDA3aW1DR3l0NXB4?=
 =?utf-8?B?b1VFdVpWUUJQaURMQjQzcFVZTnZGanRKTWRueTNJK0VCWngwb0xZVUhKeldW?=
 =?utf-8?B?dlFydVV3cEl0TEV5UkdacWJaQjBiRW1VVlowVVJkYXEvWExsNUlaM0x5Nlhq?=
 =?utf-8?B?RWc1bTZJMFJHT1R3L1orQ0VVSWZ5UkZSR0tPaTVXUm0xM2d6dmRmN1V3RnY2?=
 =?utf-8?Q?9gThm3uUYxbFA8RsK86lryaBt?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 80bc802f-28ef-4998-92a9-08dbb9af5916
X-MS-Exchange-CrossTenant-AuthSource: DBBPR04MB7788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 07:58:16.9751
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: IYzkTC0I3XnKs4KQJ5OEe+Q2UhWjQUVM1QgyLdI0Aacy3lDhSCgCYPGMZWZxdgC1q3dHv4M+7HUs2kgPqEJaMA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9119



On 14.09.23 г. 7:47 ч., Xin Li wrote:
> Add an always inline API __wrmsrns() to embed the WRMSRNS instruction
> into the code.
> 
> Tested-by: Shan Kang <shan.kang@intel.com>
> Signed-off-by: Xin Li <xin3.li@intel.com>
> ---
>   arch/x86/include/asm/msr.h | 18 ++++++++++++++++++
>   1 file changed, 18 insertions(+)
> 
> diff --git a/arch/x86/include/asm/msr.h b/arch/x86/include/asm/msr.h
> index 65ec1965cd28..c284ff9ebe67 100644
> --- a/arch/x86/include/asm/msr.h
> +++ b/arch/x86/include/asm/msr.h
> @@ -97,6 +97,19 @@ static __always_inline void __wrmsr(unsigned int msr, u32 low, u32 high)
>   		     : : "c" (msr), "a"(low), "d" (high) : "memory");
>   }
>   
> +/*
> + * WRMSRNS behaves exactly like WRMSR with the only difference being
> + * that it is not a serializing instruction by default.
> + */
> +static __always_inline void __wrmsrns(u32 msr, u32 low, u32 high)

Shouldn't this be named wrmsrns_safe since it has exception handling, 
similar to the current wrmsrl_safe.

> +{
> +	/* Instruction opcode for WRMSRNS; supported in binutils >= 2.40. */
> +	asm volatile("1: .byte 0x0f,0x01,0xc6\n"
> +		     "2:\n"
> +		     _ASM_EXTABLE_TYPE(1b, 2b, EX_TYPE_WRMSR)
> +		     : : "c" (msr), "a"(low), "d" (high));
> +}
> +


<snip>


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 08:39:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 08:39:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605302.942901 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisk6-0005fb-38; Wed, 20 Sep 2023 08:39:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605302.942901; Wed, 20 Sep 2023 08:39:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisk6-0005fU-0R; Wed, 20 Sep 2023 08:39:30 +0000
Received: by outflank-mailman (input) for mailman id 605302;
 Wed, 20 Sep 2023 08:39:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=f1ZV=FE=citrix.com=prvs=6207273cf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qisk4-0005e8-M5
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 08:39:28 +0000
Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com
 [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3355228a-5791-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 10:39:25 +0200 (CEST)
Received: from mail-dm3nam02lp2041.outbound.protection.outlook.com (HELO
 NAM02-DM3-obe.outbound.protection.outlook.com) ([104.47.56.41])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 20 Sep 2023 04:39:22 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6326.namprd03.prod.outlook.com (2603:10b6:a03:390::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Wed, 20 Sep
 2023 08:39:13 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 08:39:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3355228a-5791-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695199165;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=1BRW4VuYePBwiJIDzbK4U8+0+aphNdsQpbvRrESzcaU=;
  b=DGi9urfjIHrLhkuwMUI4sH25clolPQ+NhOJN2q3bNuA20zZEWJB00U2b
   250LPxu2urJbS8Xnnt5lYkG5ioynGNoUUoxZWLtV+DwhVz2LutZZP6zOz
   ivW69qxZuzRdeKmWnzk8sqkSN7UVnlttxDr6MzvdeCx6PurlSP1ZPSUFZ
   E=;
X-CSE-ConnectionGUID: p/4uQM4rQ7SVLKcUQGc/Mg==
X-CSE-MsgGUID: ocnJm4pWTdKc10O/l19a/A==
X-IronPort-RemoteIP: 104.47.56.41
X-IronPort-MID: 123054172
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:IiGxpKNUOlvBp3DvrR0SlsFynXyQoLVcMsEvi/4bfWQNrUpx0WcDm
 DQWWzuHOa6KY2X9KY9/bY+xoE8GucWHn4IwQAto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/jrRC9H5qyo42tJ5ARmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0v4wXXx30
 KACEW82UDSgjN+P77n8b+Y506zPLOGzVG8ekldJ6GmDSNoDGtXESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PRxvzG7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqCn027OWwnmTtIQ6E7a+1Ps2mGKvyk8YUUUxEl/i8PD+oxvrMz5YA
 wlOksY0loAM80isQsj4TgePineOtR4BWPJdC+Q/rgqKz8L88wufQ2QJUDNFQNgnr9MtAywn0
 EeTmNHkDiApt6eaIVqG6rqLpCmufygUKWMPbzUNSwct6tzv5oo0i3rnadJuE7W8iNHvLhj2z
 yqXtyg1h7gVjskj2r2y+BbMhDfEjprDQxMx5w7Xdnm49Q4/b4mgD6Sq9Fza4PBoPIufCF6bs
 xAsgNOC5eoDCZWMki2lQ+gXGrytofGfP1X0nlpHD5QnsTO39BaLZYlN5BluKUEvNdwLEQIFe
 2fWsAJVoZNWZ32jaPctZ5rrU5hzi6/9Cd7iS/bYKMJUZYR8fxOG+ycoYlOM22fqkw4nlqRX1
 YqnTPtAxE0yUcxPpAdajc9EuVP37kjSHV/ueK0=
IronPort-HdrOrdr: A9a23:maYS1qvF+7C2B/LU9GcnRgGY7skDWdV00zEX/kB9WHVpm6uj5q
 KTdZUgpHzJYVMqM03I9urgBED+ewK7yXcY2+Ys1M6ZLXHbUTKTXfpfBOjZowEIeReOjNK1vJ
 0IG8JD4bbLY2SS4/yX3OFte+xQueVuKc2T9ILjJg9WID2DlslbnmNE4hzxKDwQeDV7
X-Talos-CUID: =?us-ascii?q?9a23=3AOZMiyGmp9OjIpt8fxaWrl0mMfpDXOWWakGrpBhO?=
 =?us-ascii?q?iMDlSdpm2QmKp16gjtsU7zg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3Avqx16w+2FRO1UpoY+AeJjjCQf8Bj5YarVFgyrZk?=
 =?us-ascii?q?lsJDcEmt0YmaUyx3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.02,161,1688443200"; 
   d="scan'208";a="123054172"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YtnJUeqw4pHMl+cWip2Kb20YPXuKlgit47rVRTowJKOlKXMUecEs9rLixsl3pzy5pyr42atKa7Nh01+SHEWj9vXMc+fPt0X02X9tQWTyXJ5OSFYCdY/LXcskSq/r/qOVFm20Gs7fyOeNd7qFlJrOI5vv7mIYl5Xk+khtBRtuAxnM0KwPy9sUZFNRq+vTBjoN8YZMkph+8DLD10+wDQcsa7WQL4SBmEu0+Z8cD2sB9l0LSpZ411D8TgyFnlrXtBnxvQh02+1IgeJEQnE8lWMNNccojQxPZ1cFwz48J4oE6qX4K5VXEqHhSnHsBX42Qj6w9R0BdZ/xsWUz+dSK6p2Rpw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=j22sGOJzmYFfaFHf0BAuMPnSwOdzz8XnncNM1sZxYLg=;
 b=Vgl0/hpXYZhF62NG1qYiGb3vLsdDHnwYV2YFXStaqx8xEhWxEfNpMwes+A6940rPCYTS0vExvd1Qz1XRW7oe7Q4FkLOZz+PZ2pNdQUHRavfkRNmAj0shK4E/IpxYBfDSa7TaSU0p6jR8LHJiBFlXHuQK2dvNCEvZ+dyjQj2KOp7u7EDZ4KdVx6KPsek975u+UZoyvBnysCVYQoE6WYw3PNF/7TLGcAsIqJGqkTZBCFBLdunCYTfMOo5Fq/fLDlbSZVDm+bPF4tXbUCXOaXN83OdcU/BFO9G1PFirzX+rPOKblvvXgKC/4WE6a4O0TqWzM3lW4k3LuRlE38DVKcI3hw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=j22sGOJzmYFfaFHf0BAuMPnSwOdzz8XnncNM1sZxYLg=;
 b=DzdC/0uDZahWUEQhjAsA/IgM/c46TMNdmiC8pzkpMA2KRTmSovMERbFKdJTvNo7XXkyEtRx8Q0K15gv8PQVGsyy+e/UljbE+lhCHipQvZ/v/jqSv/4P4xYtngRqfAzXdUjm2ELOVF/DI5algBmlTPLRKfsChqHWvKsDcuGX9+mQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 20 Sep 2023 10:39:08 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Paul Durrant <paul@xen.org>
Subject: Re: [PATCH v9 04/16] vpci: add hooks for PCI device assign/de-assign
Message-ID: <ZQqvrDGH6Qxxgrjp@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-5-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20230829231912.4091958-5-volodymyr_babchuk@epam.com>
X-ClientProxiedBy: LO2P265CA0041.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:61::29) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6326:EE_
X-MS-Office365-Filtering-Correlation-Id: 7395119c-094a-4a79-5497-08dbb9b51166
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9bbFmmFEMNMyfdiSjbE3ne2woMsRkWwuhzovX7kMM1SQRTQwQ/HGiObKIDq31SewTiFEr9UXW0seO9dyvXIkmsVMDlagV/gSdnmKtpYnIOfugovePTkvq4DgXLutp+HxgxUmnKm8rlnwchvlxmhCYjwvhTP34rDOycSaivOWfydNO9/0yMbvTpa0P3sx0lFsz9pMoZy1/KxI++22UQEn+zGtR8Fg4GCL4NjbsJ75elCmZtM+PlAje2RyhKtsCLUJwXHj5UyqUl67ptwdWMFRlANzHmDKAF8J14Q09HhQH23k2YDEY05pcHtnElyyO6OPtHL5iXvVglEKdTcp8Zfl40Yzf72abLW3ljA6RuTLEFVSBvhwUedkJbZEjvl/q+5xlyowlS64fiSthBYJ7HvdG9USBRQw3Tgr9lpZ8yf8bpSDOaLMVuUd4qnj+8YjulYgDounA6zdaEDsPOTZkARAa68boipXz6AryzVepk+Rg5YaJ9vv0oNvHI2KJHVMkeHiC4YJl1t05qCM6OeVVKK9UNgWV97Np64ARpwhCdYiVo2sT5ZGLRsmkjBC2ntu4fN/
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(396003)(346002)(136003)(376002)(366004)(39860400002)(186009)(1800799009)(451199024)(38100700002)(6666004)(6506007)(6486002)(86362001)(82960400001)(85182001)(2906002)(26005)(6512007)(9686003)(83380400001)(478600001)(5660300002)(8936002)(6916009)(4326008)(8676002)(41300700001)(33716001)(316002)(7416002)(66556008)(54906003)(66476007)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?c0h1Q0F2WU9BczByNlR6ckZMMlBoSmJaYzIvRkxEcUVjUXJWZ2JCblRseTFk?=
 =?utf-8?B?c1psSVVmb2NiRlhEajIwcGoyNEtEQUpJZDhJSWlyL1dZbFRlQ1IvZjMvT05P?=
 =?utf-8?B?MkE3YzFxSUxuNU5FUC9wRmZCSlVDc0lqMVh1Nm1nS1RvWk9EdklhSklKVXpq?=
 =?utf-8?B?Z3l5OFdiam9CM0R0VVU3MEI4a0tIMldsQ08yTUd5UldnT2syVGFFUFlkSVNn?=
 =?utf-8?B?Yjg0dWx3aEVad0JoMEUybjFBS0hQcm5JQjB1QjFrT0J2Z0pwbFhVTzlGcWxZ?=
 =?utf-8?B?MURlRlE1ZU80cDhjNVVSczNhYzVPcGtOeUZlZmlGNnpGZHQraGlyR0RNTHZy?=
 =?utf-8?B?azIzTXh3MUVhNEVkTEdiUGQrMlZ2YlRISVN4RVl2QTRlTXY4bFlWOS9aNHo4?=
 =?utf-8?B?QTRIaGw1bVFGczVFTUVpOWJxODlyNUR3MHdxL1Q3T01ndVVCOEZkZTlROGRF?=
 =?utf-8?B?ZlZ3MUpldUtGcHJSQ0dabnlrcUtQQkRCcEVzU2VNbnFrcTZBVk05VU9CVzF5?=
 =?utf-8?B?ZThSem5zdGxZTXpGaGVHNlBNSlNiU240VmVIOFNqRER5Y0RQKytSRDRPN3R1?=
 =?utf-8?B?Risvb3h4NDZmWTlLeGlabXdIU3NZcmdidHZKZGZTK0dGZUVaRlBiMFYyRjRO?=
 =?utf-8?B?a3JHbVR2KzAwaDRmb3p1R1h6L3NnL3QvQjBEUVk2RmVxZ1I1dG13blIrRXNu?=
 =?utf-8?B?dFE1Q1FvQ2RWbGNyOGJwTjFwMzlucGFyb1FVdnYxWnlYYTI1U0dVUWxLbnJr?=
 =?utf-8?B?WVg4cmd3WGI0WUJRNVFmbW9RaFJXbThaZXBKbFFGV1pzZU02S3NZWFoxT1ZP?=
 =?utf-8?B?NG5aREwxalpsRVFIUEVNbU9sMFVlYmJWaUkvY3NlU3lDYmE0L210QWYrSjUy?=
 =?utf-8?B?Mk1tN2szYU9lQ20rSHE4V01WNmtMNlUwekFSa2FZbk9VaS91M0lFQ09WNzds?=
 =?utf-8?B?TW1oWHlTcUJjamZydzlhLzJGSkllZUJPUGVWQnFlclpkclVIc0xrN1RGMktO?=
 =?utf-8?B?SFZiRlNnWkVnZEFNNFFHeElOdC9WaVc1STRHeDRwUjkzQkhyY2JZblhZYXo0?=
 =?utf-8?B?ckpZdlIyRE12dkkxWFFZbWxSV3dJV0V2eWRKVENrM0FsQTAwbk5OWitzZUdR?=
 =?utf-8?B?MkxWTWZCMWFiZnltckU5eVgxTVc3SlUwZFErdk1HTzVHdjdyYlBnMmVFTjUx?=
 =?utf-8?B?T1pMU3k1dWczNU16cWVDc01lU3ZoZGloZ2JiaFZCOTA2Q1VLSFNWYjRvcXRP?=
 =?utf-8?B?ZjNXYyt6YWNIMkNPMUp1OFcyeE9oNHdRWXMvTklzREZBbVhvcFNKMWJZU1Mx?=
 =?utf-8?B?MFcza1RnbTAyZlpVL1l0UGtmdEJtRWNYZDhLSkhaZnc5MlpGQ3FwWWdUN1J3?=
 =?utf-8?B?Q0djY1dnYVNxcnpmWkxoRWxqR3E1dGJ6ZnU5THcybmREVXNFdXdlSmJnbWlR?=
 =?utf-8?B?dTNjT0JuWnpUNVkyOEFWQ01CY1RMdE9FR3VITXVZR2dQVlpJbVgzMXR4NXMv?=
 =?utf-8?B?eGNIOThmdUVndS9DdUxVbjlVRmRaOFVsK2ZaZG5GQmdRRTJZN0YycnVNQWcz?=
 =?utf-8?B?T3lhWVR1eEFRcDNqb0ZEQXo4QUhlQzdFcVc4T2xWOVZORG5lcnQ4NExTZlhn?=
 =?utf-8?B?YmJ5U1doNHdnaS9Pem1kUUZ1SXpTbHMvcW5rNjAwMHJ1K3FkV0xHTWVwaDlR?=
 =?utf-8?B?bHE2b1dZZjg3Yit2bDA0MDUxS0RWM3Z4Nmsvd0l1Rktmc3pTMExHU1g2YW0z?=
 =?utf-8?B?djkybE5VZUoxN0hNOWpNM2xraUR4RFlBYnRIZDhLYWZsQTRsMjBwQnVzUDVh?=
 =?utf-8?B?djdqMWhBSjA3TCtPVUhSZ1UrYXZKMkxxeEcwMWx0UmJQWG9iQnVrd2lhK0dz?=
 =?utf-8?B?MjFqUVNITG0vRHJNcElCM1ltSXdSL2dDNk5GeFdqd1N5SUlhcmVGTjVlWndX?=
 =?utf-8?B?TWtBVHhpTXM5YnJlY1VGUjZHSmNmbXk1TDlqSEFacnp1VWtOSFhtaHVMZ2dq?=
 =?utf-8?B?MGlPQUIvbDBhazM3TnAzNk1vbEF3SVhaanFrMC93TVBoQkJPbDVEeWxpUXNH?=
 =?utf-8?B?SXRXK2tBdGxvWG5XcXRYSGZ4RGQwTXdITUd5bkgzaDYwZFhqRTdlcHZkRHBa?=
 =?utf-8?Q?kEUzfurmRepe6Ljf5QXOKO9Ds?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	qwoIeG62CRlNXUnaMbVn2PFJ1/hwM4RWRwv2390wishUeyKImpCV9k8eYAP1PPwcBg0fRIxRDI2jY2PsREBss/Yz+h53ou9S0bv/Sx2Ta6T8acfjo2apQWYCTIp6m+LZhhpLSxFKhSQt2eXXGtPxh/TK/LeYy+f+rOIPe4gVszTI9PWnRqJ8j0mrUbBPxt5inh+0BfOBOq7MKr9Td/+Kt8B4Q2mhA+5z++oh5FSoiMD+0Dc5ntGZ9kbFfcLPepw/Q8s6hMyR2Hnan4ULmRH3QTGFQVTUaCBUe7oHBMIdOPRC3syc0DEYnipkPdPGY+4FhxLxmbMRIFd3XSu4B26IW8iBlQ42vYYS30xFFgi9Hn/FCWX+V0lfteQsUFtoRr2XIz8YVi4lY4Bvs5p4lxRFrfikMf/I3EXhXPFaVR4VhfwMwkT+a8HO4cakYv+5TbtIFBJKzvI6LyR0GnDszAi3W2wV4QLdyVFYd9FPbS9z/z400ykUmTOKU4ACqGMlrMrTJ7tRQj15vpTMf09+DYJIr09jWrx7zZEs1dBZQGbuTf5El9afMdpjG91MhkIMoFYwq1oM3IwgJKHAUQrBeh+uV77a/wjNehuii+OIhhiRR3UdMpeRd969tyPpJlcmiJdMiR9B0RH1txuRRqbS/SPhfYzzXGUUkPA+PIcA8RyR10G9/dt2IzqhqaSbk6KAJGdp45ndjHmPXmMumyVLOA/pAsb6zrNQhJkqEglSyephwakozlAhApoh4yuccKV6G5E5e8BIjOt+Br/FDw87ylPMdrW2e6aeWxzCaJzyfIX+egUVX/OyWLwXFCDUSOWvB95dnDhsW3AEGz/tpuT5ATPsT2FEJ8a0vLVNj5ynbmrmlLmFIQcHsC4yecWQJzkdTrYcBis5Osw1I8/v0gFE00JMdw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7395119c-094a-4a79-5497-08dbb9b51166
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 08:39:13.7893
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: pQN+uTzjlrgpSYxDdnRkFqPj90e2qxNb+NtQ/kNjm1DV8KMGNyDjxVmtNy1NQx886mzDlPiSzw/2Lwwl/BQ6DQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6326

On Tue, Aug 29, 2023 at 11:19:43PM +0000, Volodymyr Babchuk wrote:
> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> 
> When a PCI device gets assigned/de-assigned we need to
> initialize/de-initialize vPCI state for the device.
> 
> Also, rename vpci_add_handlers() to vpci_assign_device() and
> vpci_remove_device() to vpci_deassign_device() to better reflect role
> of the functions.
> 
> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> ---
> Since v9:
> - removed previous  vpci_[de]assign_device function and renamed
>   existing handlers
> - dropped attempts to handle errors in assign_device() function
> - do not call vpci_assign_device for dom_io
> - use d instead of pdev->domain
> - use IS_ENABLED macro
> Since v8:
> - removed vpci_deassign_device
> Since v6:
> - do not pass struct domain to vpci_{assign|deassign}_device as
>   pdev->domain can be used
> - do not leave the device assigned (pdev->domain == new domain) in case
>   vpci_assign_device fails: try to de-assign and if this also fails, then
>   crash the domain
> Since v5:
> - do not split code into run_vpci_init
> - do not check for is_system_domain in vpci_{de}assign_device
> - do not use vpci_remove_device_handlers_locked and re-allocate
>   pdev->vpci completely
> - make vpci_deassign_device void
> Since v4:
>  - de-assign vPCI from the previous domain on device assignment
>  - do not remove handlers in vpci_assign_device as those must not
>    exist at that point
> Since v3:
>  - remove toolstack roll-back description from the commit message
>    as error are to be handled with proper cleanup in Xen itself
>  - remove __must_check
>  - remove redundant rc check while assigning devices
>  - fix redundant CONFIG_HAS_VPCI check for CONFIG_HAS_VPCI_GUEST_SUPPORT
>  - use REGISTER_VPCI_INIT machinery to run required steps on device
>    init/assign: add run_vpci_init helper
> Since v2:
> - define CONFIG_HAS_VPCI_GUEST_SUPPORT so dead code is not compiled
>   for x86
> Since v1:
>  - constify struct pci_dev where possible
>  - do not open code is_system_domain()
>  - extended the commit message
> ---
>  xen/drivers/Kconfig           |  4 ++++
>  xen/drivers/passthrough/pci.c | 31 +++++++++++++++++++++++++++----
>  xen/drivers/vpci/header.c     |  2 +-
>  xen/drivers/vpci/vpci.c       |  6 +++---
>  xen/include/xen/vpci.h        | 10 +++++-----
>  5 files changed, 40 insertions(+), 13 deletions(-)
> 
> diff --git a/xen/drivers/Kconfig b/xen/drivers/Kconfig
> index db94393f47..780490cf8e 100644
> --- a/xen/drivers/Kconfig
> +++ b/xen/drivers/Kconfig
> @@ -15,4 +15,8 @@ source "drivers/video/Kconfig"
>  config HAS_VPCI
>  	bool
>  
> +config HAS_VPCI_GUEST_SUPPORT
> +	bool
> +	depends on HAS_VPCI
> +
>  endmenu
> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
> index 4f18293900..64281f2d5e 100644
> --- a/xen/drivers/passthrough/pci.c
> +++ b/xen/drivers/passthrough/pci.c
> @@ -757,7 +757,7 @@ int pci_add_device(u16 seg, u8 bus, u8 devfn,
>           * For devices not discovered by Xen during boot, add vPCI handlers
>           * when Dom0 first informs Xen about such devices.
>           */
> -        ret = vpci_add_handlers(pdev);
> +        ret = vpci_assign_device(pdev);
>          if ( ret )
>          {
>              printk(XENLOG_ERR "Setup of vPCI failed: %d\n", ret);
> @@ -771,7 +771,7 @@ int pci_add_device(u16 seg, u8 bus, u8 devfn,
>          if ( ret )
>          {
>              write_lock(&hardware_domain->pci_lock);
> -            vpci_remove_device(pdev);
> +            vpci_deassign_device(pdev);
>              list_del(&pdev->domain_list);
>              write_unlock(&hardware_domain->pci_lock);
>              pdev->domain = NULL;
> @@ -819,7 +819,7 @@ int pci_remove_device(u16 seg, u8 bus, u8 devfn)
>      list_for_each_entry ( pdev, &pseg->alldevs_list, alldevs_list )
>          if ( pdev->bus == bus && pdev->devfn == devfn )
>          {
> -            vpci_remove_device(pdev);
> +            vpci_deassign_device(pdev);
>              pci_cleanup_msi(pdev);
>              ret = iommu_remove_device(pdev);
>              if ( pdev->domain )
> @@ -877,6 +877,13 @@ static int deassign_device(struct domain *d, uint16_t seg, uint8_t bus,
>              goto out;
>      }
>  
> +    if ( IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) )
> +    {
> +        write_lock(&d->pci_lock);
> +        vpci_deassign_device(pdev);
> +        write_unlock(&d->pci_lock);
> +    }

I'm confused by this one, shouldn't the code rely on has_vpci()
instead?  (which is already checked for in vpci_deassign_device()).

If you have a system without CONFIG_HAS_VPCI_GUEST_SUPPORT but vPCI is
used by dom0 you likely still need the hooks in {,de}assign_device()
so that vPCI status is properly handled for dom0 as the devices get
deassigned to dom0 and assigned to a guest? (and maybe moved back to
dom0 at a later point).

> +
>      devfn = pdev->devfn;
>      ret = iommu_call(hd->platform_ops, reassign_device, d, target, devfn,
>                       pci_to_dev(pdev));
> @@ -1147,7 +1154,7 @@ static void __hwdom_init setup_one_hwdom_device(const struct setup_hwdom *ctxt,
>                PCI_SLOT(devfn) == PCI_SLOT(pdev->devfn) );
>  
>      write_lock(&ctxt->d->pci_lock);
> -    err = vpci_add_handlers(pdev);
> +    err = vpci_assign_device(pdev);
>      write_unlock(&ctxt->d->pci_lock);
>      if ( err )
>          printk(XENLOG_ERR "setup of vPCI for d%d failed: %d\n",
> @@ -1481,6 +1488,13 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
>      if ( pdev->broken && d != hardware_domain && d != dom_io )
>          goto done;
>  
> +    if ( IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) )
> +    {
> +        write_lock(&pdev->domain->pci_lock);
> +        vpci_deassign_device(pdev);
> +        write_unlock(&pdev->domain->pci_lock);
> +    }
> +
>      rc = pdev_msix_assign(d, pdev);
>      if ( rc )
>          goto done;
> @@ -1506,6 +1520,15 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
>          rc = iommu_call(hd->platform_ops, assign_device, d, devfn,
>                          pci_to_dev(pdev), flag);
>      }
> +    if ( rc )
> +        goto done;

rc can't be != 0 here, as the increment statement in the for loop
above will zero rc at each iteration.

> +
> +    if ( IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) && d != dom_io)
> +    {
> +        write_lock(&d->pci_lock);
> +        rc = vpci_assign_device(pdev);
> +        write_unlock(&d->pci_lock);
> +    }

Why do you need the extra d != dom_io check here?  has_vpci() will
fail for dom_io, no need to special case it here.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 08:42:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 08:42:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605310.942913 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qismh-0007lp-Lm; Wed, 20 Sep 2023 08:42:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605310.942913; Wed, 20 Sep 2023 08:42:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qismh-0007li-HZ; Wed, 20 Sep 2023 08:42:11 +0000
Received: by outflank-mailman (input) for mailman id 605310;
 Wed, 20 Sep 2023 08:42:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=f1ZV=FE=citrix.com=prvs=6207273cf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qismg-0007lX-61
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 08:42:10 +0000
Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com
 [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 93f5e6b1-5791-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 10:42:08 +0200 (CEST)
Received: from mail-bn7nam10lp2100.outbound.protection.outlook.com (HELO
 NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.100])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 20 Sep 2023 04:41:56 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6326.namprd03.prod.outlook.com (2603:10b6:a03:390::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Wed, 20 Sep
 2023 08:41:54 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 08:41:54 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 93f5e6b1-5791-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695199328;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=Qz/s9mqoZvzaMk9cmBf1qBY25nbsPuCN8mm/RFoSAHw=;
  b=C0SJrJoG3S/uYf60I5UMr5sW6Vc8neK7S9GzKPTOOWPS9VvHnP7LuA1L
   bdFKRR+cNlcS0+h6tSTMhSVTrp4tzQu/uMvVJdeOcovlQqMICQF3JNiNw
   cC3UHVLFFEYfyp8n8hoJ+BFrVfqiWtXEadV44aqgWxacSPnROyJJQqjJT
   A=;
X-CSE-ConnectionGUID: U3NASulVTq2+22Fcpc6jpw==
X-CSE-MsgGUID: tHDX5Cq8T4Wfe8WZl1xqKg==
X-IronPort-RemoteIP: 104.47.70.100
X-IronPort-MID: 122451231
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:RKTAWKmX01MFsnDSJPg5+GXo5gw3J0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xJOD2COaKnZMWejeY1+PYy/9kxXvpHSz9VhTlQ/pC9jEyMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K6aVA8w5ARkPqga5geGzhH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 cFDDhk2cxS9u/vsg+jhZOJ0jZohNNa+aevzulk4pd3YJdAPZMmbBo/suppf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVk1Q3ieC1WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmhBN9LTubhnhJsqEGz6lxOIwRGaQeEr/TptXy6AsJGC
 ENBr0LCqoB3riRHVOLVYRq8p3KVuw8GbPBZGeY69QKlx7Ld5kCSAW1sZjxLZcEitcQ2bSc3z
 VLPlNTsbRR0rLCKQGiBsLeVqT+/MzIcK2MqbCoICwAC5rHLh4U+jQnGSNp5J4ezgsfoAjH7w
 z2Mry8Wiq0aiIgA0KDT1VLahzOhoLDZQwhz4R/YNkq+9R9wboOhY42u6HDY4OxGIYLfSUOO1
 FAbn+CO4eZICouC/ASVSfgJNKGk4bCCKjK0qU5iGdwt+iqg/1anfJtM+3duKUFxKMEGdDT1J
 kjJtmtsCIR7OXKraep9Zd23AsFzlaz4T429DrbTc8ZEZYV3eEmf5iZyaEWM3mfr1k8xjaU4P
 pTdesGpZZoHNZlaIPONb791+dcWKuoWngs/mbiTI8yb7Iej
IronPort-HdrOrdr: A9a23:cggROa6W/ObU3Hp8ZgPXwDjXdLJyesId70hD6qkQc3Fom62j5q
 STdZEgvyMc5wx/ZJhNo7690cq7MBbhHPxOkOos1N6ZNWGLhILPFuBfBOPZqAEIcBeOlNK1u5
 0BT0EEMqyWMbB75/yKnDVREbwbsaa6GHbDv5ah859vJzsaGp2J921Ce2Cm+tUdfng9OXI+fq
 Dsn/Zvln6bVlk8SN+0PXUBV/irnay3qHq3CSR2fyLO8WO1/EiV1II=
X-Talos-CUID: 9a23:Er+2zG3P71SAWR05HkpCUrxfJ5sDW0bAyEnsOhX7UzxHQ6WeF12I5/Yx
X-Talos-MUID: 9a23:DCvswwsNNDcnSoYJLM2nmBFOBJpD+vSSVH8DnMU5ic3dJTVTNGLI
X-IronPort-AV: E=Sophos;i="6.02,161,1688443200"; 
   d="scan'208";a="122451231"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kJtv4m5/cJWC3xCcU0CU3eS44JHgGAruxSv63+t5Ahg0aHNlZGcyHTLCs7F6mUUrlMW11S8GztdJeLq48dMAHFK57ELcR4ZpyBwpzo5EqUBkwNcZCm+ZosqH4sGIoH8w0g2y4JgK87FuznVtiYSh8nl0bbB4a25H1HnGRxq+6CnCsbpmyR2ArFc7LJtw+abODUOeOVijLFx8KsFqvZlTLgJV7db/8hW0bHwQ0j7t5IpZdPRhMiZkQoORkr5Mo9ON2pmKFTh1E2kTkEcRK+ilBU3UoCmbWqfG7X7joae1D7bPd3f5hi8xJX4cX2ls7IFkQTIqxAvBOPctsXLtTDeg3w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=SLYPG3+XLKX87aX2BNbt6XEVI1IvRqOgNNa1Ts87+XY=;
 b=nLG85DVcEmeJfjIVYLro3GkCfQwF0C2+PovAPpgYG7+txaiygB9ub8tplmqV8+5fsWcsPqlbHon8QBMDmMXWiLQIEyhrCm2MJHTy6oe+ShudA/OkB83qH57/46zxWIUyKOs78eI9rXt8xb3G/vTT8b1ET+n6Soq5O7UvC9smwhsrOX/SYNHs4gKBbBeNdwsIgNwbUG70kQ70eQMKSbwaflfQhpzqlABX2UB046wh9Hh4RDTmt8MPm2X6/NAaaRtdxAhpmS1xJb4CPGzWk7JLn4prgPLZRJP2Pg9kKgKfB4uekliO5Bs/dZdZueDtglwKbZONMvph8wNuqPxxKQignA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=SLYPG3+XLKX87aX2BNbt6XEVI1IvRqOgNNa1Ts87+XY=;
 b=j7L72aueMExgNVhzDVEO6ems2vfYXQ6jPxZmEXHz/wA+7ZPld0duhhHZ0WE9mssvi1MU49hlbOHTr94id806nTqVEPnNmQyX2h6tC2p6BfAMQ0jo2drZTl/3hhXTlMLtwDr9t025ppUUxAdMKihR/2oozfSLF03NtSlgrcAFkzA=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 20 Sep 2023 10:41:49 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: Jan Beulich <jbeulich@suse.com>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Paul Durrant <paul@xen.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v9 04/16] vpci: add hooks for PCI device assign/de-assign
Message-ID: <ZQqwTWdOqXnDYjvM@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-5-volodymyr_babchuk@epam.com>
 <77e2dbc0-c224-4c1e-72a0-5b19aa76ba0b@suse.com>
 <874jjzhsd4.fsf@epam.com>
 <1f57bbf2-d6f3-2e3d-61e0-049b8e2e070a@suse.com>
 <87wmwthbos.fsf@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <87wmwthbos.fsf@epam.com>
X-ClientProxiedBy: LO4P123CA0619.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:294::19) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6326:EE_
X-MS-Office365-Filtering-Correlation-Id: c7e2889b-91b1-4cf0-8b78-08dbb9b5711a
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KcoZj47OD2l5ZrZNt/MLRQ9uxR4mJKn41HMz8g5xQMQMd0lYZs545D247P4QY8Z4xLdFMtpHC1VfivpDArUOPmreb458TqggorjFuzn5CoKzeS/F+D8Fze2ssMs4oxkY6q4UccZxRkgPT6tR2kwLxNg7QQ//+3k1H0CDIJZGNgFcFdr7ks/JtVonbHInnNEZAUKzIaPIDP8ehxG21joQqv9daDiLe4XqsnEHXZ0bddkduYg9bXQ3JaRWVb+UUjSEbeI6Zu3bcVFmv/41exrh8G2uY4QOtY3HOGRUNUhLZ+kZ4Gqo8prrLtmvL5S0eCDKAq8B8UHo4CWe2TunL9PuKbMWjeDXHUzrnvZvZxnsTxKKnli1Tq0GjZnZDziWxyahrOkXsmbHaX3hZ6p7OBFzb6OqnL+XKlUKEbHB6XoAv9FgiAWqwtfn/7TErqHE55rZEE6Lk8x5beDVj/Nk3Z0qfHfrRdCd39Q0GWRj3XmnqDC6U9J/LjA3FcnaYGHm3wuCzLpYpi93r2SW/8L2bEhbz9tdEv2vew8LGsZsTahhN3AuM942kQQKlr9UwgxB7w6P
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(396003)(346002)(136003)(376002)(366004)(39860400002)(186009)(1800799009)(451199024)(38100700002)(6666004)(6506007)(53546011)(6486002)(86362001)(82960400001)(85182001)(2906002)(26005)(6512007)(9686003)(83380400001)(478600001)(5660300002)(8936002)(6916009)(4326008)(8676002)(41300700001)(33716001)(316002)(7416002)(66556008)(54906003)(66476007)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?S3dMYjVNOUhiRUZMbHBqd3ZuUGFQclIyNmNVOWdZV0E1YnN0WW5qK0VRbDNj?=
 =?utf-8?B?cFRuSVRweDgvVnNPaE51OEFSbHl0R0FBbW4zdUFqWFdYS21CSEl6Zm1DbVJ3?=
 =?utf-8?B?OGp1QXJvMDZQdkpZUWR5R3dmVFo3K0k1anp0cTZuS1czT3VJZ0dwempiTTF4?=
 =?utf-8?B?NVRZMzVrTVQvQ0diNkdrSjFic3JWNndhRHovdEZBelpGTXBuTVdYL3hPRDY0?=
 =?utf-8?B?cUR3ZExCaVZra0hrZHVTenRYVGl0bXRoRFhaQmpoeEw2bnBmeGdxZ0dOTTlG?=
 =?utf-8?B?TkNyU09qQWczNW1IbHBDRmNYZXNyOU03UUl3emk2UWtPM01ld2Y2R2lxblpQ?=
 =?utf-8?B?RUVuQkZ5aGxQRjJLVFNzb1gyOEdzdmpJMXNKODVqaUcvOGNEM0tZVHV4N3RS?=
 =?utf-8?B?K2FHQ3YwZzU0RTdYVjJia1NHd2VVNGxIVDVuRjZsUXo3ZU5jNFV4a2hRbjZN?=
 =?utf-8?B?d3FtS1NkTXhZTHlBaDVmT1F2aVdpd3h2ZjVsUU1lS1ZFMmhaQ1FWYm5EVDd1?=
 =?utf-8?B?bVdhWE9hN2VueG1YTWJ6VUhlcVFVdGw1YXNUbGZGZ1ltSXhSS1Mxa3NVZCt4?=
 =?utf-8?B?V1B2N1ZHM3RteHZFOGo4R0d4dFJMM1RoTlB0UDd0MTFrY2Jac25mV2dIejNV?=
 =?utf-8?B?VUVpSk91aGw5UlRhc0RiMURCUnJ6QWZVK0dQd1pNQnlUbjgrUnhLYkNrK1FN?=
 =?utf-8?B?TTdjcHgrQjgyMldhUWVRVTBRdUEycmtha2RUbkU0R3ZXZUZXTktkMkpJQ0pH?=
 =?utf-8?B?ZEpTUXFNQS9ZQWUzN0dESXFDY0dkYkk4Vm5BUHRvSS9CZ0J6NlBmbVgwUHRP?=
 =?utf-8?B?MVc3L1liRDZFWG9ZN1E5SG0xd3kwdG9tMFQxV1dJb3c4RHdNR2wvS1RaR0hO?=
 =?utf-8?B?Yk43eWZMblp1YVN1QldvZHhTQk52L1g0SW5QZFc5QStUSGtucTd2ejIvTFFw?=
 =?utf-8?B?VVh0STFpc3NtOXZYeFFVK3JrN00rRTAzSXFnUWhXek9aVFp0L3Z4VEtXSTgz?=
 =?utf-8?B?a2ZTcEJiWjYrTVRJRmZRWlR1eWJ4eUJFZE9iSWFjUDVFU2xmZUZUV0JYc0Np?=
 =?utf-8?B?VTlpNWdZUUxEVEFFMDhJQUthV2NmUlhtNGl2cm5sVHpyTjNtOWZwN1NwR1Zs?=
 =?utf-8?B?TWJvZHphWk1iQ2NDakNjT3JBN0Vlekk5Y2FLOHZXM3NIdzlITm9ZSVZGMkFp?=
 =?utf-8?B?Mmk3ZmtERHp4QVBMeHMzMFFua2xLNjVQRkhFZjlqcmVhZm5NNWcxWjV6Tlhz?=
 =?utf-8?B?dkFmbm8vaDZmQ3ZNSFlVMFJUeW1sR3ZMOFV2ZlRaazYrbTdNSlB4Q3JuQjM2?=
 =?utf-8?B?TlpYZFdzM2FGTTNEQk43YjRVNWhWZ1YzaWxCQzdXOEhrYzh2MDltamt3aURm?=
 =?utf-8?B?NWd0ZEl3WDlLVFZaWi9xT1R4OWNOekZQZE1QaTQ1TFZzZkRNeTNiSFdldmJO?=
 =?utf-8?B?NkY3OHJmdHBiWS80UXc2UzM4d21qR1R4UFpJUFJIMzJaTDZFdUtKVDZRazhL?=
 =?utf-8?B?bnFEVDh4VlVKcm9JTnhMVE1qZW1oa2txWDZuRVhMcDRsdUF4NGI1YVhUcVpa?=
 =?utf-8?B?TnBvbU02SGpCT3FQdkNsMVRqTWhsT0Z6Y09uMHQ5Z0FIMk5kQWRGRjFJTDdV?=
 =?utf-8?B?VjRZVm96bnM1dzIrNFVrQjFualNiNlE4enQzbjhIdzlRV2x0TWNhL0RVVkR0?=
 =?utf-8?B?VDRJdnFBZG9TZkVJWEowY0Mzc0pXMU9lTG5zNzVPRm9PbGFINXVJMFhXUnNL?=
 =?utf-8?B?Q1JnMC92OXFHK3oyT0o0K1hCb0oyMkIxY0ZKZDEzUnFGY1p6RlV5dDBmcnlx?=
 =?utf-8?B?OEJTZU94WTFmMEZpb1VDZDd4dVVRbnJWR2RlRlAxU2dQaklsUm1zUm5TSkVi?=
 =?utf-8?B?VlZQUk9JUVRmUGgzOGpka0VuQm1YZ1l6dStQOUVuZnBpdURFeUF6b3ZHTnFU?=
 =?utf-8?B?ZFR0bC9velg3bHRleEMvQ1BOL2J5cW5LcGtXcmU4dzdYUEJ6b05ZanJ2M0hU?=
 =?utf-8?B?UURxNlRwZUhnVFZ6N2d2allYK1R1VURETkV5Q1lYR1JCLzdiQmU5dWNKNUZZ?=
 =?utf-8?B?U1hSZlFmRW1VMzViV1FDWHBPUDBtTEdYcXN6c2g5WGNmWHhEVG9rWXMvd2w5?=
 =?utf-8?B?blhKQjR0dUdub3FPbFVldEdhTWJ0TjhSTGhrL2hCQVZHOHZpRmxYWVJIamdt?=
 =?utf-8?B?UEE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	Wn3jzYgRkafx55nMB9rioWIVxCISjLseFNhyXsFs6SRvUJRbi3RR2PEwCQd+FhNRNHjfUEF6biphjL0Szs5GJrswaX+qozFQK4NeWZUyhti6G/6LH3aSY5t49Y1WwbCVZo4XNYRPTW3xwTu0LHCk/EIJ5uA09O5zKtP7AtLwxLpI0MSVvv200ER3czqR+0Cx5nSNKuoLYBESydezntTBv/Vhd2Nq84x+mhu9FvdZ4H2eeZC3wubWPF1fIhrsvhN03kSZx0zEw7xgDWH9NmND868xW6lwNKmT9/ZqlHJHqLAetMXXBRYtWbiN9dwiT97lio4EsMgBvSxmjHrO1uC/W6y50VZ+k6gxrEVSJ2XPCMwHQgV4A5jKcdab396+5N0pZIC+Xyu2c4YV5QQEGNlkQZ+GKPqCZpiQaC1/8OItMxPt4GW3+JNOnnL/eUgG87kkKFlz9wxUapWFfgyGGgbIBr4A0mRk6wybivS07FEQ3ary5kInecCG4uUNhii/AH1hxmjGU3+3R4a1JPQyQqRiKu08c+YFI9i2kEY/bbjyAt+skbSGIkhwNbSi7Evx0Wk0tppeSZKugoY/c3Eshi4vymRvJdBFkaINWXovFChQm5mJrQp0vo6Py/ywb1R13INOc8q+qBjybAW4N59RK61qQCXTftB6/73Hm5XKDAZ0buB5bdAnW43pM1aaq46wtyRwuV0u5jRLZfXnacBuzWZ4DeErpEjHY3dUuLKlFjoIAeT47XSf6bwu+EFr4YSe4IUTQElr+uRJ1AEWKLGZRMEpOzmcPgeiILzALaqvDSSmbPx8UiSxm7DRLj/l10655nChzHJAq9UFzCOoitvEzEeTJMDgrssC4iX8bpofnzN9RKNOflI1yklApD2WDGPBE/FPOZkkrPj2dTv+7aGZGQYoZg==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c7e2889b-91b1-4cf0-8b78-08dbb9b5711a
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 08:41:54.3284
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: HU/mzaksAO2FkC0aKU62cjzrvRHmmghB54AR5eVrw11biShyi2o5coYklhzfdsrZ0NFj1zj+S2apTKLSbChXOg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6326

On Wed, Sep 13, 2023 at 11:53:56PM +0000, Volodymyr Babchuk wrote:
> 
> Hi,
> 
> Jan Beulich <jbeulich@suse.com> writes:
> 
> > On 13.09.2023 01:41, Volodymyr Babchuk wrote:
> >> Jan Beulich <jbeulich@suse.com> writes:
> >>> On 30.08.2023 01:19, Volodymyr Babchuk wrote:
> >>>> @@ -1481,6 +1488,13 @@ static int assign_device(struct domain *d, u16 seg, u8 bus, u8 devfn, u32 flag)
> >>>>      if ( pdev->broken && d != hardware_domain && d != dom_io )
> >>>>          goto done;
> >>>>  
> >>>> +    if ( IS_ENABLED(CONFIG_HAS_VPCI_GUEST_SUPPORT) )
> >>>> +    {
> >>>> +        write_lock(&pdev->domain->pci_lock);
> >>>> +        vpci_deassign_device(pdev);
> >>>> +        write_unlock(&pdev->domain->pci_lock);
> >>>> +    }
> >>>
> >>> Why is the DomIO special case ...
> >> 
> >> vpci_deassign_device() does nothing if vPCI was initialized for a
> >> domain. So it not wrong to call this function even if pdev belongs to dom_io.
> >
> > Well, okay, but then you acquire a lock just to do nothing (apart
> > from the apparent asymmetry).
> 
> Yes, I agree. I'll add the same check as below. Thanks for the review.

Hm, no, I would rather rely on the has_vpci check inside of
vpci_{,de}assign_device() than open coding dom_io checks elsewhere.

This is not a hot path, the extra lock taking is likely negligible
compared to the cost of assign operations.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 08:42:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 08:42:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605311.942922 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qismw-00085v-Tp; Wed, 20 Sep 2023 08:42:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605311.942922; Wed, 20 Sep 2023 08:42:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qismw-00085o-PE; Wed, 20 Sep 2023 08:42:26 +0000
Received: by outflank-mailman (input) for mailman id 605311;
 Wed, 20 Sep 2023 08:42:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=7N78=FE=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qismu-00084Y-Dq
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 08:42:24 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20622.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::622])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9cd10bbc-5791-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 10:42:21 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by IA0PR12MB8421.namprd12.prod.outlook.com (2603:10b6:208:40f::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Wed, 20 Sep
 2023 08:42:13 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Wed, 20 Sep 2023
 08:42:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9cd10bbc-5791-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=lRwBUJ1LjrkF0nqL8wqiZ0+MS7UD5PEkOpNdTkaWZnWKqUy8593P7UraIn5mLrwv4UMQNePEVxuCwv0mJX4J9v9V5fAV8gIcUsE9uFLaUpdHaCNTZFw4uEhj15swGJYQzdnnCkI0bVHwquntuztOxGLo1W3MKF4A873Q34zalWb6Hmjmcuxp3dTWzzz4n8IqDLDRcYEr8ZDkksBA2zepimNbPP+lwqWEAn9I6H5Q8jQxwzdytS8FA++BvUVX2Q5gODWiFiJQcq4gfI8+Hme9mbPPoSiZc4iAutlSNktU5xMUkVUiluYlI7Awlitv7IU0bvMlViukfN2fiVIVWEjKWg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Bncs6D0qnZ2rxd1tro+efyJlKkvljoFGVx34A2/aCPU=;
 b=ez693Fg+y0+MXiB9q0yVTDo2XAUIQ/ViFxPYA0vy63Sk8WfsJebdzRa7pMFCbcLgv+kkpgk1vxcOwpOFYY38nU5l3ebZB4ewziw327TiN3yxjcmxDLVuhllZZYZxoFxta592jwS8ni0lUOt5RL1HLa3tFG5KPnNUENZGjkBWeHiM/W1o+aKRAUEdkcZe8UjcZtVj0uJahIDoV0jLxKXfskin0dvrafq574jrxXSWE6BdiCU5hZldQMloueJ1rRdfmmNjgIyFc48bZsu14dt1QEVsecfan+sW6oipb+arQl6jj99dc+MMU8gZfyTbks1ijJdmv9QeUN2IyLdVW0pBTw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Bncs6D0qnZ2rxd1tro+efyJlKkvljoFGVx34A2/aCPU=;
 b=5UJP5zteQS1L83WbWchJVhAfLfAGapKz0AQ3PFt40CI/NlP9DwsYtbDX78TmY0qOMd0APjf2gUh0e8+dylOiaI0FbFoDWEIE+NTHpI21HcjgY/jb4EclAd1Z5JPL0RFkBnQPE/8ZfbfJR2qz9pD9bZh45Ing+wgF3DBrmnbLjcI=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Wed, 20 Sep 2023 16:41:44 +0800
From: Huang Rui <ray.huang@amd.com>
To: =?iso-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@gmail.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands
Message-ID: <ZQqwSN7OaFfTlCZP@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-10-ray.huang@amd.com>
 <CAJ+F1CLXqxGKOoOvmXKZWJYENmH6Z3CJhoftvjQBRFO=fhtQuA@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CAJ+F1CLXqxGKOoOvmXKZWJYENmH6Z3CJhoftvjQBRFO=fhtQuA@mail.gmail.com>
X-ClientProxiedBy: SI2P153CA0026.APCP153.PROD.OUTLOOK.COM
 (2603:1096:4:190::18) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|IA0PR12MB8421:EE_
X-MS-Office365-Filtering-Correlation-Id: fac9a002-6c27-4f43-61e8-08dbb9b57bdd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YUnUIcTuXmlUEwQfjJ4nkN+Xw/D0EVWbEgwI/61PXLy3HBZo8mKC1OZAOEhyAkSd3JSUHTHzkI8UhrAp+vNGTfyXRuH1r2HVo7+XE+Vzcii1hSHmomnnr27QoIXYLP5jRhhZDF1BwXDv8NS7LcakoUdLftDiRGFQkgi9wFysF8TJ7luPj3twAgPtdjl3Jko3h48CPzFd7dPrdQ3+yjGFPjenam/0K4lTz6eirUaY8/98CTmwMuse0prU4stF5ilwJI3IOX4kX2SNkGK3jxnCERvzJ1vvLdNFC119kirSzzH/CrFus2RKreo8ARgo0taFma8zEdIKfw1Q3LVCAYmoAoQr7U9M4tHb0OhRlpBBWdWavtKfjZvwrLWc1erfLD1SCrgRj+jKnDtNOwmgIKopcjp3/fVLPS/49CG4IrsLu9v7m8ZRhdKMfJcO/MyKcnveCscKm2+wz897xnQ9F03xMOWWh9/81YKv7fecNGieXBGDh0jHlarh1F2WNY+JpT1wvmF4sxNY5cU8bYsV/qDp6GLey1oH9WgDMtEBcC3D0KVbDsQ74ayP3bDH54QSdYjC
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(346002)(376002)(136003)(39860400002)(451199024)(1800799009)(186009)(53546011)(6486002)(6506007)(6666004)(6512007)(478600001)(83380400001)(26005)(2616005)(30864003)(2906002)(7416002)(54906003)(66946007)(66476007)(66556008)(316002)(6916009)(4326008)(8676002)(8936002)(5660300002)(41300700001)(36756003)(86362001)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Rm9VaDBiVVhhdDIyUWxkZFdJK0RCTEZ2RE9yREY4UWhmOTU1YUJsK29LSndx?=
 =?utf-8?B?OWRxSXFzNnpnVDdoOVN2SzJDcXZWUHVMS3dqeUorbmNac3J3djlzQW01eC9R?=
 =?utf-8?B?YzBsd2M3cDRVVC9TakFqZ2R0cDV5QzZvVWlSS2tkZFZQaHo2U0huVW9VbDc1?=
 =?utf-8?B?SjJZWUFZSEtaUk5yekZWc0I5MUxGOWMxY01oYzhnTmVKbTBTMnVTWndveFd1?=
 =?utf-8?B?OGVCcE1aY3lYOUV1elNGdG5vODFkb3h5S3RMOWdzbk1EcFdKOWo3Yjgwb254?=
 =?utf-8?B?RzJKWk1HbXpRTW9tVGtIUXFicmNqa0lKZ1FKYkF2U2orYlV2Z3BHTXMwYW5v?=
 =?utf-8?B?T2I4VGhxTTBjSXQ0aGxTaWQrMGlwRGtTQmZtMmVQMDJJZFhRUzJzaXdrcGNH?=
 =?utf-8?B?NlYvcDZSRTJnUjkySnJwdkRvM3cxczk0eStKUjhvVTNsdGxoUTBLYmtMOGtp?=
 =?utf-8?B?ckJWTkliRFp3Wnd0N1orR1ZnQmlqWTR1REIyYVJNMDFNdmc5b2pRZlpINWVh?=
 =?utf-8?B?TzdBaitGYjg4c1dqN2V1TWNrMDNJWTA4Q1NmblBweEVEZTUrbG5Ob1NROG1Z?=
 =?utf-8?B?WllHdXRaU1lXU1hlYjhIM056TkR5NXZMT3g4T3hPQnhCczQ3a1hHczlqZFV2?=
 =?utf-8?B?eW54QTFYSTdRRjhiejBuTG5qa0lPZ3dHaTFveHlRbVhDRDdjdXlwZjdQV0hB?=
 =?utf-8?B?RE15U200MXViU2ZHdVdEaU1POTNUL2piaStkT05hM1hQOGhTOUx4TEpXa3h1?=
 =?utf-8?B?cEZCdCtLMklMcWZhazFzK2QyaWwwd3N5RVl1NUphODB1THltanZlalByZSs0?=
 =?utf-8?B?ZE5BS3hQVHRVUkxsenk5ckg0UmVFL1pyZlZlOUgybXQyV2ZVMlBFblo2eDNa?=
 =?utf-8?B?ZUk1Tm1IL3U4TlR1cm1PbDFwWU56UjQ5T2FSeHNFdkNoSnA5MFJQUjZ3U3FQ?=
 =?utf-8?B?VE1KL0IwYit2WnJkMW4xZlNHL2hKSE1rdmpJNys3RlYrOWk3L2M1WkFuMlRt?=
 =?utf-8?B?YjdxVmIzYlorUk1zM094MnlsZDhVbjBYQk5WUXpzaFFzTWQycFBleVpCeU5x?=
 =?utf-8?B?MlFPWlBzTmhTT05UaWdpQUdBTWRiZHg2am4yNmRHNmVrdUdUTVREMWpNNkJr?=
 =?utf-8?B?czZZUnJnNE9hZ2x0Uk1GUkhoU1IvWFgxUWlQRjJveTVFcjR4YU5YU1VSMkFk?=
 =?utf-8?B?WTd4amF2N1Y0WGdiZklWb0tpbW5NNE9HZVNIa21EOHdHVWZkNTFVeUFwUTRL?=
 =?utf-8?B?SEtLeW9nbXR3VDhCd1JWMVQ0MURGWHVCRGt4aFFGNXJLdk5aNGpzcnNVV1pi?=
 =?utf-8?B?VGNPRm9DWmhFVU9qdkVSOXg1MXkxa3Fhb1Vid08wK2xBWllhZWg4bWEyWVRp?=
 =?utf-8?B?dUlXa1F0Y3JURWZRejN5ZGFVVWRvWUxwMzlIMUgwTjJFSTdiaUJuSnRySUZY?=
 =?utf-8?B?ejZBRDl5eGV1KytXOG5McC8reUpRZzh2VHpRRDdGYi9aK2ZYMGpnQkhjY0Ro?=
 =?utf-8?B?T2g4RGJSRUFaN0FmbHRaeFhsMjZ3OERsN1RGZ2FwWVE3dDNnem9qaUI2NzVh?=
 =?utf-8?B?SHFGbFlxSlJXK1AvUEFLUzZHN25LUmhoMHNSRlMydUltYjV5T2RtU1NsSEFP?=
 =?utf-8?B?czBNQWNiTTJIdzFxVG42dlVUc0xsdCtIUUowOTcrUXNTSmM1MmdBU2NGZ01S?=
 =?utf-8?B?MURhWjd0ZmJvNmhaenVJY2pNbVpCRElKaW5uN0Q0aXlQcWJUcU5ZckV6RzJH?=
 =?utf-8?B?OUpmazJ1UWJnbUx0QStHRnJQdWxDSkJ4dzZDMmE5aFhua1ZRVlVmOVVHNEk5?=
 =?utf-8?B?dWRoOXJlM2REL0pVTjNmWW03cjFyZzR0cjlNcEpmSTdYaGdiTm93TWs0d3Q3?=
 =?utf-8?B?VjluOHNrYzNsQW5ydm4xb2hVN1JySER0SFZNTjMraitGODFwd3FtRFlqSjFv?=
 =?utf-8?B?VWJNUXpwTUhhaklraXBvZG5iVng0M1BheThLd2x6V0tBQjFQc0FVNXpMQU5G?=
 =?utf-8?B?WFFZa2ErdXJkY0k4aERYbUkwREpFRzV1TGRySWU3QlpnOTJCRGhWK1BjS1Rt?=
 =?utf-8?B?WnRUSE03R0JpY040UHR3QnNLM3RrdytEV2xvclFKaThrU3NqWlBDbHlNZk9T?=
 =?utf-8?Q?Iv3nnyMN8YQNVzp2B41UluzH1?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fac9a002-6c27-4f43-61e8-08dbb9b57bdd
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 08:42:12.3905
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: z28u8TB4F4tYpi+couiZFvp0NT8PYBVzqrFbjHL9uKy5T6TfTG+w5+wKTzjEieFMUDXywuzCH5eCDhB9PqQqSw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8421

On Tue, Sep 19, 2023 at 04:44:01PM +0800, Marc-André Lureau wrote:
> Hi
> 
> On Fri, Sep 15, 2023 at 3:14 PM Huang Rui <ray.huang@amd.com> wrote:
> >
> > From: Antonio Caggiano <antonio.caggiano@collabora.com>
> >
> > Support BLOB resources creation, mapping and unmapping by calling the
> > new stable virglrenderer 0.10 interface. Only enabled when available and
> > via the blob config. E.g. -device virtio-vga-gl,blob=true
> >
> > Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
> > Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> >
> > V4 -> V5:
> >     - Use memory_region_init_ram_ptr() instead of
> >       memory_region_init_ram_device_ptr() (Akihiko)
> >
> >  hw/display/virtio-gpu-virgl.c  | 213 +++++++++++++++++++++++++++++++++
> >  hw/display/virtio-gpu.c        |   4 +-
> >  include/hw/virtio/virtio-gpu.h |   5 +
> >  meson.build                    |   4 +
> >  4 files changed, 225 insertions(+), 1 deletion(-)
> >
> > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> > index 312953ec16..563a6f2f58 100644
> > --- a/hw/display/virtio-gpu-virgl.c
> > +++ b/hw/display/virtio-gpu-virgl.c
> > @@ -17,6 +17,7 @@
> >  #include "trace.h"
> >  #include "hw/virtio/virtio.h"
> >  #include "hw/virtio/virtio-gpu.h"
> > +#include "hw/virtio/virtio-gpu-bswap.h"
> >
> >  #include "ui/egl-helpers.h"
> >
> > @@ -78,9 +79,24 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
> >      virgl_renderer_resource_create(&args, NULL, 0);
> >  }
> >
> > +static void virgl_resource_destroy(VirtIOGPU *g,
> > +                                   struct virtio_gpu_simple_resource *res)
> > +{
> > +    if (!res)
> > +        return;
> > +
> 
> QEMU coding style imposes braces
> 

Thanks for reminder.

> > +    QTAILQ_REMOVE(&g->reslist, res, next);
> > +
> > +    virtio_gpu_cleanup_mapping_iov(g, res->iov, res->iov_cnt);
> > +    g_free(res->addrs);
> > +
> > +    g_free(res);
> 
> If you embed virtio_gpu_simple_resource in a new struct, we should
> instead call the existing virtio_gpu_resource_destroy() I guess.

Yes, but I didn't call virtio_gpu_resource_destroy() here, I am using the
virgl_resource_destroy() and the input should be the virgl resource in next
version. May I know whether I miss understood your point?

> 
> > +}
> > +
> >  static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >                                       struct virtio_gpu_ctrl_command *cmd)
> >  {
> > +    struct virtio_gpu_simple_resource *res;
> >      struct virtio_gpu_resource_unref unref;
> >      struct iovec *res_iovs = NULL;
> >      int num_iovs = 0;
> > @@ -88,13 +104,22 @@ static void virgl_cmd_resource_unref(VirtIOGPU *g,
> >      VIRTIO_GPU_FILL_CMD(unref);
> >      trace_virtio_gpu_cmd_res_unref(unref.resource_id);
> >
> > +    res = virtio_gpu_find_resource(g, unref.resource_id);
> > +
> >      virgl_renderer_resource_detach_iov(unref.resource_id,
> >                                         &res_iovs,
> >                                         &num_iovs);
> >      if (res_iovs != NULL && num_iovs != 0) {
> >          virtio_gpu_cleanup_mapping_iov(g, res_iovs, num_iovs);
> > +        if (res) {
> > +            res->iov = NULL;
> > +            res->iov_cnt = 0;
> > +        }
> >      }
> > +
> >      virgl_renderer_resource_unref(unref.resource_id);
> > +
> > +    virgl_resource_destroy(g, res);
> >  }
> >
> >  static void virgl_cmd_context_create(VirtIOGPU *g,
> > @@ -426,6 +451,183 @@ static void virgl_cmd_get_capset(VirtIOGPU *g,
> >      g_free(resp);
> >  }
> >
> > +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> > +
> > +static void virgl_cmd_resource_create_blob(VirtIOGPU *g,
> > +                                           struct virtio_gpu_ctrl_command *cmd)
> > +{
> > +    struct virtio_gpu_simple_resource *res;
> > +    struct virtio_gpu_resource_create_blob cblob;
> > +    struct virgl_renderer_resource_create_blob_args virgl_args = { 0 };
> > +    int ret;
> > +
> > +    VIRTIO_GPU_FILL_CMD(cblob);
> > +    virtio_gpu_create_blob_bswap(&cblob);
> > +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
> > +
> > +    if (cblob.resource_id == 0) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> > +                      __func__);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res = virtio_gpu_find_resource(g, cblob.resource_id);
> > +    if (res) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already exists %d\n",
> > +                      __func__, cblob.resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> > +    if (!res) {
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> > +        return;
> 
> needless error handling, glib will abort() on OOM.

OK, I will remove all simliar error handling in next version.

> 
> > +    }
> > +
> > +    res->resource_id = cblob.resource_id;
> > +    res->blob_size = cblob.size;
> > +
> > +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
> > +        ret = virtio_gpu_create_mapping_iov(g, cblob.nr_entries, sizeof(cblob),
> > +                                            cmd, &res->addrs, &res->iov,
> > +                                            &res->iov_cnt);
> > +        if (!ret) {
> > +            g_free(res);
> > +            cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> > +            return;
> > +        }
> > +    }
> > +
> > +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> > +
> > +    virgl_args.res_handle = cblob.resource_id;
> > +    virgl_args.ctx_id = cblob.hdr.ctx_id;
> > +    virgl_args.blob_mem = cblob.blob_mem;
> > +    virgl_args.blob_id = cblob.blob_id;
> > +    virgl_args.blob_flags = cblob.blob_flags;
> > +    virgl_args.size = cblob.size;
> > +    virgl_args.iovecs = res->iov;
> > +    virgl_args.num_iovs = res->iov_cnt;
> > +
> > +    ret = virgl_renderer_resource_create_blob(&virgl_args);
> > +    if (ret) {
> > +        virgl_resource_destroy(g, res);
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: virgl blob create error: %s\n",
> > +                      __func__, strerror(-ret));
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> > +    }
> > +}
> > +
> > +static void virgl_cmd_resource_map_blob(VirtIOGPU *g,
> > +                                        struct virtio_gpu_ctrl_command *cmd)
> > +{
> > +    struct virtio_gpu_simple_resource *res;
> > +    struct virtio_gpu_resource_map_blob mblob;
> > +    int ret;
> > +    void *data;
> > +    uint64_t size;
> > +    struct virtio_gpu_resp_map_info resp;
> > +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
> > +
> > +    VIRTIO_GPU_FILL_CMD(mblob);
> > +    virtio_gpu_map_blob_bswap(&mblob);
> > +
> > +    if (mblob.resource_id == 0) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> > +                      __func__);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res = virtio_gpu_find_resource(g, mblob.resource_id);
> > +    if (!res) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
> > +                      __func__, mblob.resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +    if (res->region) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already mapped %d\n",
> > +                     __func__, mblob.resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    ret = virgl_renderer_resource_map(res->resource_id, &data, &size);
> > +    if (ret) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource map error: %s\n",
> > +                      __func__, strerror(-ret));
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res->region = g_new0(MemoryRegion, 1);
> > +    if (!res->region) {
> 
> no need for OOM handling here too
> 
> > +        virgl_renderer_resource_unmap(res->resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> > +        return;
> > +    }
> > +    memory_region_init_ram_ptr(res->region, OBJECT(g), NULL, size, data);
> > +    OBJECT(res->region)->free = g_free;
> > +    memory_region_add_subregion(&b->hostmem, mblob.offset, res->region);
> > +    memory_region_set_enabled(res->region, true);
> > +
> > +    memset(&resp, 0, sizeof(resp));
> > +    resp.hdr.type = VIRTIO_GPU_RESP_OK_MAP_INFO;
> > +    virgl_renderer_resource_get_map_info(mblob.resource_id, &resp.map_info);
> > +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
> > +}
> > +
> > +static int virtio_gpu_virgl_resource_unmap(VirtIOGPU *g,
> > +                                           struct virtio_gpu_simple_resource
> > +                                           *res)
> > +{
> > +    VirtIOGPUBase *b = VIRTIO_GPU_BASE(g);
> > +
> > +    if (!res) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource already unmapped %d\n",
> > +                      __func__, res->resource_id);
> > +        return VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +    }
> > +
> > +    memory_region_set_enabled(res->region, false);
> > +    memory_region_del_subregion(&b->hostmem, res->region);
> > +    object_unparent(OBJECT(res->region));
> > +    res->region = NULL;
> > +
> > +    return virgl_renderer_resource_unmap(res->resource_id);
> > +}
> > +
> > +static void virgl_cmd_resource_unmap_blob(VirtIOGPU *g,
> > +                                          struct virtio_gpu_ctrl_command *cmd)
> > +{
> > +    struct virtio_gpu_simple_resource *res;
> > +    struct virtio_gpu_resource_unmap_blob ublob;
> > +    VIRTIO_GPU_FILL_CMD(ublob);
> > +    virtio_gpu_unmap_blob_bswap(&ublob);
> > +
> > +    if (ublob.resource_id == 0) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource id 0 is not allowed\n",
> > +                      __func__);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    res = virtio_gpu_find_resource(g, ublob.resource_id);
> > +    if (!res) {
> > +        qemu_log_mask(LOG_GUEST_ERROR, "%s: resource does not exist %d\n",
> > +                      __func__, ublob.resource_id);
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;
> > +        return;
> > +    }
> > +
> > +    virtio_gpu_virgl_resource_unmap(g, res);
> > +}
> > +
> > +#endif /* HAVE_VIRGL_RESOURCE_BLOB */
> > +
> >  void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
> >                                        struct virtio_gpu_ctrl_command *cmd)
> >  {
> > @@ -492,6 +694,17 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
> >      case VIRTIO_GPU_CMD_GET_EDID:
> >          virtio_gpu_get_edid(g, cmd);
> >          break;
> > +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> > +    case VIRTIO_GPU_CMD_RESOURCE_CREATE_BLOB:
> > +        virgl_cmd_resource_create_blob(g, cmd);
> > +        break;
> > +    case VIRTIO_GPU_CMD_RESOURCE_MAP_BLOB:
> > +        virgl_cmd_resource_map_blob(g, cmd);
> > +        break;
> > +    case VIRTIO_GPU_CMD_RESOURCE_UNMAP_BLOB:
> > +        virgl_cmd_resource_unmap_blob(g, cmd);
> > +        break;
> > +#endif /* HAVE_VIRGL_RESOURCE_BLOB */
> >      default:
> >          cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> >          break;
> > diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> > index 5b7a7eab4f..cc4c1f81bb 100644
> > --- a/hw/display/virtio-gpu.c
> > +++ b/hw/display/virtio-gpu.c
> > @@ -1367,10 +1367,12 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp)
> >              return;
> >          }
> >
> > +#ifndef HAVE_VIRGL_RESOURCE_BLOB
> >          if (virtio_gpu_virgl_enabled(g->parent_obj.conf)) {
> > -            error_setg(errp, "blobs and virgl are not compatible (yet)");
> > +            error_setg(errp, "Linked virglrenderer does not support blob resources");
> >              return;
> >          }
> > +#endif
> >      }
> >
> >      if (!virtio_gpu_base_device_realize(qdev,
> > diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h
> > index 55973e112f..b9adc28071 100644
> > --- a/include/hw/virtio/virtio-gpu.h
> > +++ b/include/hw/virtio/virtio-gpu.h
> > @@ -58,6 +58,11 @@ struct virtio_gpu_simple_resource {
> >      int dmabuf_fd;
> >      uint8_t *remapped;
> >
> > +#ifdef HAVE_VIRGL_RESOURCE_BLOB
> > +    /* only blob resource needs this region to be mapped as guest mmio */
> > +    MemoryRegion *region;
> > +#endif
> > +
> >      QTAILQ_ENTRY(virtio_gpu_simple_resource) next;
> >  };
> >
> > diff --git a/meson.build b/meson.build
> > index ff20d3c249..f7b744ab82 100644
> > --- a/meson.build
> > +++ b/meson.build
> > @@ -1072,6 +1072,10 @@ if not get_option('virglrenderer').auto() or have_system or have_vhost_user_gpu
> >                         cc.has_function('virgl_renderer_context_create_with_flags',
> >                                         prefix: '#include <virglrenderer.h>',
> >                                         dependencies: virgl))
> > +  config_host_data.set('HAVE_VIRGL_RESOURCE_BLOB',
> > +                       cc.has_function('virgl_renderer_resource_create_blob',
> > +                                       prefix: '#include <virglrenderer.h>',
> > +                                       dependencies: virgl))
> 
> better moved under the if virgl.found() block

Yes, will update.

> 
> >  endif
> >  blkio = not_found
> >  if not get_option('blkio').auto() or have_block
> > --
> > 2.34.1
> >
> >
> 
> 
> -- 
> Marc-André Lureau


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 08:46:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 08:46:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605325.942932 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisrA-0000rN-HC; Wed, 20 Sep 2023 08:46:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605325.942932; Wed, 20 Sep 2023 08:46:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisrA-0000rG-Dy; Wed, 20 Sep 2023 08:46:48 +0000
Received: by outflank-mailman (input) for mailman id 605325;
 Wed, 20 Sep 2023 08:46:47 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qisr9-0000r6-Fp; Wed, 20 Sep 2023 08:46:47 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qisr9-0007a7-6T; Wed, 20 Sep 2023 08:46:47 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qisr8-0001fu-PP; Wed, 20 Sep 2023 08:46:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qisr8-0005eN-Ox; Wed, 20 Sep 2023 08:46:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=eSKBP72qfvcEO2K8o17NLAJ3fiQSLbkrFuRhSJJ/ShE=; b=xTor4aanz3fQMZkOvkYe3atbAS
	Tfx8Q0cOpSvDFUQRpmCs5SjAFoH/Ls+fBn+R5SkNPtw6OMe9Lo9xC8QQicH3D7/4grIjyDdERDR4J
	N4kqpdLtRj2NQClTgMY5M7CO1UY3XTNC/KpJQxPZzJvdTnFI6uBgYq/16Kvy+60drYso=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183077-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183077: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=4fb69c2bee3006b08ca2abba58843f7573e0c5c6
X-Osstest-Versions-That:
    ovmf=eb485b6438f488db5300b56949d9dad460c9f2d4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 20 Sep 2023 08:46:46 +0000

flight 183077 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183077/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 4fb69c2bee3006b08ca2abba58843f7573e0c5c6
baseline version:
 ovmf                 eb485b6438f488db5300b56949d9dad460c9f2d4

Last test of basis   183072  2023-09-19 20:45:49 Z    0 days
Testing same since   183077  2023-09-20 06:11:08 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ranbir Singh <Ranbir.Singh3@Dell.com>
  Ranbir Singh <rsingh@ventanamicro.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   eb485b6438..4fb69c2bee  4fb69c2bee3006b08ca2abba58843f7573e0c5c6 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 08:50:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 08:50:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605332.942942 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisuM-0003EG-Vz; Wed, 20 Sep 2023 08:50:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605332.942942; Wed, 20 Sep 2023 08:50:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qisuM-0003E9-SO; Wed, 20 Sep 2023 08:50:06 +0000
Received: by outflank-mailman (input) for mailman id 605332;
 Wed, 20 Sep 2023 08:50:05 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=f1ZV=FE=citrix.com=prvs=6207273cf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qisuL-00037a-Oj
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 08:50:05 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id af96c6e6-5792-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 10:50:03 +0200 (CEST)
Received: from mail-bn7nam10lp2104.outbound.protection.outlook.com (HELO
 NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.104])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 20 Sep 2023 04:50:00 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA2PR03MB5722.namprd03.prod.outlook.com (2603:10b6:806:110::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Wed, 20 Sep
 2023 08:49:58 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 08:49:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: af96c6e6-5792-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695199803;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=bKsiO8S3/FCAAs4k53sSlu7YUWSKTQOMwi2IzEQmXDg=;
  b=dkcykiG91RumrY6+0+vEyZlT6SBtXNUOCzyBafamgORQd5GO+PQ9hSGH
   UGP3FMknswhj2yMRYle43HeLAsMoD7hnXh3ou7Z0S+dAArD51i31cW0IQ
   S57zQdTmNKvA3UHznTtMpOoXiEyey9hW+29wERgV3CUMA0nZJfo05e10K
   4=;
X-CSE-ConnectionGUID: qCf5QH9JT02aK5qznyM82Q==
X-CSE-MsgGUID: eUR5U9zYSxKkHtALnUsCcQ==
X-IronPort-RemoteIP: 104.47.70.104
X-IronPort-MID: 123612205
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:1LnF/q6IBFub8Gn3oNKT/QxRtAHGchMFZxGqfqrLsTDasY5as4F+v
 modDWGGOviOZjakKtB3at++9RwC7Z7Qy4RhTQU9+SBmHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU35pwehBtC5gZlPaER5AeH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m7
 NcWdQktPzK/37i/4++iWO99o5R5FZy+VG8fkikIITDxK98DGMiGaYOVoNhS0XE3m9xEGuvYa
 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6MlEooiOSF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx3ilAdhITODQGvhCjWCpm1FCGiwtRXi4geWQrkiDQPlUE
 hlBksYphe1onKCxdfHDWBm/rG+BrwQrcdNaGO0n6ymA0qPRpQ2eAwAsXjNHLdArqsIybTgrz
 UOS2cPkAyR1t7+YQm7b8a2bxRupJSUKJHUeIy8FSQcI6cPqpo0bhxfDCN1kFcaIYsbdHDjxx
 3WAqnc4jrBK1coTjfzjoRbAni6moYXPQkgt/ALLU2m57wR/Iom4e4iv7lud5vFFRGqEcmS8U
 LE/s5D2xIgz4VulzkRhnM1l8GmV2su4
IronPort-HdrOrdr: A9a23:NROAb6/j2su5U2fG609uk+DWI+orL9Y04lQ7vn2ZKCY4TiX8ra
 uTdZsguiMc5Ax+ZJhDo7C90di7IE80nKQdieN9AV7IZniEhILHFvAG0aLShxHmBi3i5qp8+M
 5bAsxD4QTLfDpHsfo=
X-Talos-CUID: =?us-ascii?q?9a23=3Afd5q+GoFvaZGZbu9MpJlSN/mUdkOfCDk7CbyHxf?=
 =?us-ascii?q?iAEU0Ua+TWHrAopoxxg=3D=3D?=
X-Talos-MUID: 9a23:YZkMCQmLqFNfrs2fMTwVdnpvCf013vW8OXsdspYmp+CgMxFrEDyk2WE=
X-IronPort-AV: E=Sophos;i="6.02,161,1688443200"; 
   d="scan'208";a="123612205"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GDedsowe+/j/pgoDuGIHILxauZgKfcP+hqvjhBjFsBLgQnGgjE3uFAdavfvSrY9yJv4cl+USShTk+BICALs5+g5u8DpQRRRaiP6Zg1OXolytxIGwe/icZGcL1Myfd2Pn/WqK0dlsaW1vyxFoRpPPeOXWcXRoS1tI/4QHj9QySYuqIAPc/6HuynTPZO0deU76f7XBxtKObcYAr8WX4cdv1rthtnRPm1vcl+4c4hEUgys1Qz7/c4cs1hg6NPipvV3nyKepAHrpdsbF9z8kFtpCyfM+uTe6O6uN6V5Y8K/gDE5YowRuH7EhhVyhK3s14otXpQNrrWzq57YMMMTIXWD5sg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HEfNjB83SoK3B+/q8Gn85XQ+4AIz7pDO5meLctimCr4=;
 b=KlVAz+lHYhIkUEBZF7O6x7z95NSUmuaLtKKnZQlLQSZXELAcQMhzkC9YGcLqNroOMbGwWkD4lrDEQWmw1C3kv1NEqSe/APbr4G3rLB7vwy6F04yTPKx/BQe3W0qYw3AcNWkZpMykj4P5+A/IENwecFZE1r+cSreaEQ0iG7Y0siC0ZtCFff8H5u20f1Sj2Lw8ynQs9WnBAZ3bw75muyyQFH0SeMDksPXLgxC7wTAa6IeViU/ans8slbtAD5scmglnIj12U+o9aojAGfSv5Yl1eWWi/c/Z52T4j3Bo/1DOnVz7HzN+L7iX7v6+R5SBxaAcKo7KFFP2wbwmTA+1zVXlug==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HEfNjB83SoK3B+/q8Gn85XQ+4AIz7pDO5meLctimCr4=;
 b=UlGyrxRkdVCUyvMy/NH8dEKsTRNrxAMObaqcpoajnKkxcO1FR4nXtNlECEd2X2niiLweuJlOHzbJdmHEeVD5xeHVT4T7ZrKgP3fdCjsdyeHn9PNXFS7mTKMd5RP31uWS4tbyIJVGbkBR5iuwjmIgTRNSy6/NfwUUcE0mKG0wCE8=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 20 Sep 2023 10:49:52 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>
Subject: Re: [PATCH v9 05/16] vpci/header: rework exit path in init_bars
Message-ID: <ZQqyMG1eQMUTrRo-@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-6-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20230829231912.4091958-6-volodymyr_babchuk@epam.com>
X-ClientProxiedBy: LO4P123CA0054.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:152::23) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA2PR03MB5722:EE_
X-MS-Office365-Filtering-Correlation-Id: 5dd83cc2-b911-48d9-3747-08dbb9b69193
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hZ9B9dUfRqiS7MWd1mk9S0e/+EApkv9f2KBp8HHvUfI8aOkUgpmc72YQOa328g7uZce5dMo/dbtx5UhcRCTQB6xUHvorHBjE/YbIyiSjEIZEsf9iFXF+QBR8ZSgIv+tFsBgwgNtOLXKORST9eps5lBkHy/IDrrzrzpxmV/PzZwdLuFv9aSdXhk/qqJtIIOELyST1o8j2KfNl2+NNEkiS0Z8rm4sPXkoFvQ1nytbzmzKJL+bTpcT9MbnTnHawwhxlKXTcah1UIJ9aDy1mcXth6kZZRCszzCoaRlWaFdJkfoVfK+zEqoS2IBoiVaUN5GmYIOAkzeYhJXfgEiq+MOHiPzUnn3vbeB6wjRG/q2cDNag73iYtFpEWDoP8U0BrJ+0dI7VesXmdwTVezx9Aec+gCTtUJGsaYThtLjxMnnyHgmSOxle93L256zTyJ5kn9Ac128eg/ORSyJJqdGjPeF9CyaVHJUCHLOoVhdTvkmVSlV2/FpMJTvERy1DPZnR07KssM4dNrSPkjuTPJFQQYdkZCzpGuPlEZ50pfcMjktboMo3GbFN9G9DoAcO9ePzm7FMc
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(396003)(376002)(346002)(136003)(366004)(39860400002)(186009)(451199024)(1800799009)(54906003)(66556008)(41300700001)(316002)(66476007)(8936002)(8676002)(66946007)(6916009)(6486002)(6506007)(9686003)(6512007)(4326008)(6666004)(478600001)(82960400001)(33716001)(38100700002)(2906002)(86362001)(26005)(5660300002)(4744005)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SlRiRHNSRVRwdWVjeDhmSjBIcEEyY1lCeXh6VDRyWVk1VStlbEgxQkVEM0NK?=
 =?utf-8?B?OWYwOXBaMk1Na3pXOG5ZK3c0cnVDdXJicnJoR2dQMDFFMnVYTytPR01xaGk4?=
 =?utf-8?B?QU50OGZiMnN1SjhCd1E5VEgwVXUxWmRDVUMrdW50cWUwM1hDN0FnNlhBeDAx?=
 =?utf-8?B?TTZ1amVhbko5VVc0a3ZPV3FzSC9wWnBRdGIybzdneFJTb3daTFJoYUk5bHRW?=
 =?utf-8?B?SUw4bEtWYmE0Q3RjTW94T2tWSTJzWURqSU5zaEw0bGNjQUlZOHBxMEdRcnZ0?=
 =?utf-8?B?YW83d2lBOSs5K21DQTdqaTNCMHF1YXFmVjFvSmg1a2NHOGNkMkZDcC8rQWRo?=
 =?utf-8?B?Ty85Ym5nVEpYQzBrOXJJUUxwaGt1QmVzT3ZVbE1oanRZOG9lZzlJQnRCUDBP?=
 =?utf-8?B?YUw1c29RL0FOY1NnY2xTUGxjNUE5ZGJwVUtIa25QZ3lkenRUbDQ1UFErNHhn?=
 =?utf-8?B?aUpMNDQwVkJZZVdIWnU5eVhsMVVQazFPZEc0SG50UE9UaFRCdGFweFZzZXBw?=
 =?utf-8?B?RjRud0lRREFEZmJHMnpxVXAwcS9vSWJQY0FvYWJyS2VVUE5CUlBFZElaSTJR?=
 =?utf-8?B?dHlYa1MvSTZZQmpnOU1jbnhFam1FK1BSR3RWTEZZR21CczFaRnJIckJFUjgz?=
 =?utf-8?B?SjVDa1UzcGlFcUdQMWYxMm1IeFZiN0N6T2h6TjNDaVhDMjhOdWtjdHAwZmZ2?=
 =?utf-8?B?SlRCR3ZzNktidnBNZVBVZG9MR3pqUGErdngwSlc5RlYwSHU2S1h4L1RzbENL?=
 =?utf-8?B?VTNHMkliOTIyVGxQY3ZYVjB4VURubHp4UVFXNXhnak9PRzVyTDJGUy9TTE5Y?=
 =?utf-8?B?bmZPbkFmSGJtclc5elJwbVNTZ05WdGl2MVgvbDErWGw2NUJLOWNRcTRubDh5?=
 =?utf-8?B?bWUxVFdTZjhaakpyL1pHa3BVTWZCSHRiNHF6ZW11M2xmU05IQXMzN2ZOVHh4?=
 =?utf-8?B?TC9wK2xISHpGdjN4SXQvdlFXQlRvbkZvS3BCelBWZVFLS0t5MktGZmVMTVVB?=
 =?utf-8?B?QWg4MGhlNDZBZGNKM3pmRWJ1S1FaK3p5NUVUdzJNSkVBcWpicUFUWjM1L3BV?=
 =?utf-8?B?YlhyUTJRTG8wcGU1KysrclhMY2dHcUs1bUFyN25CNlVsUWUwdWFEOWIzdzlT?=
 =?utf-8?B?NE40ZFlKOEVKVFUvQzl5aTAveWJ5RVRhUnd3QW5vN3ExY2ZnR2FQdmZEVGRl?=
 =?utf-8?B?Q3ZZYWExRDNRQWF5T3ZhSzZmU0NxY3ZYMXdDYnhQQmxjQkVrWFBUZ2k2eHVv?=
 =?utf-8?B?VlZiVU5WNjNRemVYL2NPdXRpUjZJWmRtelhWaUFQamhVUjhwK05aZlRTeStE?=
 =?utf-8?B?WktnbDlXY0FMeTZmaUJmdExLQUQ0Y21PeWYraU13QWRMRHhKZlBYRXdXTkFp?=
 =?utf-8?B?YVRPNFc2TkdIcVNYZDgwSUtsWnNkMkdyV243aWFVYUViMEdoZFRLL1d6MFk0?=
 =?utf-8?B?UmNtYm1kYzlja2s1d3NhSmlXcXUxSFJpdDl3ZEtvUlpBQ2MzY2RXZ0gzUXFD?=
 =?utf-8?B?ZFpobExrMzR1L3lGTlB5UW1BKy9pWlM2RjdTbWxSa3FUYmVhRGV1RENyU0p4?=
 =?utf-8?B?TmRudnFmbjZVeXBSU3U0RzF3YThLSWtpMFg3YVBZQTdmMys1NERhTGtVSTB2?=
 =?utf-8?B?RTdGN1hFQzhsbEc1aUdzbEpJU2YyUW1Ga0ltQmx1Z1BwRVhOYTFsYWpSSG4w?=
 =?utf-8?B?TWVSMmZGUG0zQXRObFJ6QmdUQzZxcUlXWFB3N3R6Q1FXM3hPb1JSdjJ0Q1l1?=
 =?utf-8?B?RURXaXNJV1drZEhQR3kzUDJ3cEF5V0hzWThhRlI5V2dzUVZVY1BWVm4wRzVD?=
 =?utf-8?B?QitHWEhxYTBtOXBzOHZFZDFrSXFrSDBwYTBKVkN3RzdhMWRqVzNRT09LdUlT?=
 =?utf-8?B?UDI4VFdMNE5STkxrZFFUZk5JL3RVa0xncElTTzNtN2NRS3N6ZWM0c3NGY3B5?=
 =?utf-8?B?aEg5by9tOWZHVHViSWZIbnVjbHBuZGNQY0dudVdxQ1FGWUhsbHdwUC9ZdFlI?=
 =?utf-8?B?NE1ERmVMWFRqNFJvYkh0YWQrZi9YMkNWa2QwTTBFZkVCMTVxd2hFQ2Z3bEth?=
 =?utf-8?B?aHN5eld6ZzFkcEUvK1hkS2l6a0JkZVhSRkRxQUxvaDBIdkVTK1RPdHNYRTV4?=
 =?utf-8?B?QUtTdzRLVUVJMWkyY3dNdnBOdXZsZFBVMjJSY2dnV1ZOYWtqanFidkJtWEhJ?=
 =?utf-8?B?WEE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	dpIh41ELivT+S82UIF/OoQ+rvaz85AUl7myaLmXbspzZuE2raRs9C+mTnL0M43rd7Gw+FWeO+lE9kxUsUBet5vwW3Qp9U5nbJBLFHVOxDtCNrROc6FTIws4hOO0vO81zlSn5mgxmoOOHClM1Mbu3B0e01qXnFxMjNeyRAioDEi+EUn8ujCIjbUQtdRMgxyTvL5OUYlmfgtwazgxNmJu6QYRIZSL8QSnuXWxUdogJqpEsKnOSDj9xzeyyJgICJgCXafLtBlnC8Hcnxc7ZLTjhqT4L98ftq1ZCP04ZLq6/oUkjpF3VgFyb6jssE456mkK2xBef7t7Uzs06bJMe5F33Gij5gAA7HQfVp6MGbkywLPJziZmquk/PEt5sPb0U2QlWtPOjj3D22rknroJfk4b/n3KIQGRuXVyXn+GXGX9dcUesLECkoU36X/U0Wnbs9EPDZa6NkBSuufFsLXOET29AM5I4/GSEL2gQOIQghxN+WwmZvkiqGEqxNJ/XCOayXUj6Fu5KrxZFprO0dBGLz1pQ5v7mtu0Rl5Twyi0cyD2LgI9+FsEe7lyTMWabNk9v6IK6lEUs2oKYu5Gqbn+pJiJp/W0ANNH0fFGQU6y92Vf/LHyDdmxQtIPYD16nSmeUCnQcwp3js8zEUPVNdSCGLJ2fu2pfYUwyXNn790jpfXOUZipcqvU2K5SX4jZXnB3bGg/YFBuqL7y8L3Vd9quF5IBDiCn6aK1z3tv+cTyv3Br6kpuepMcuN48LpHA5SqSDvitxLd9J3DYSvkKURzww76IbpWB7J2h/QICdS1k37kqQcfioj9jqeuz8kcPPGzmm9Pgy
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5dd83cc2-b911-48d9-3747-08dbb9b69193
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 08:49:58.2512
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: J657CyAt/807163WhAyVeUMPWTxlcUfNfKVecD3soZ/uZ+QnxgXxxc934NBXKa9UjHhtBDKd4nD7DTIWcHlx3w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR03MB5722

On Tue, Aug 29, 2023 at 11:19:43PM +0000, Volodymyr Babchuk wrote:
> Introduce "fail" label in init_bars() function to have the centralized
> error return path. This is the pre-requirement for the future changes
> in this function.
> 
> This patch does not introduce functional changes.
> 
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> Suggested-by: Roger Pau Monné <roger.pau@citrix.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 08:58:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 08:58:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605338.942952 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qit26-000594-NT; Wed, 20 Sep 2023 08:58:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605338.942952; Wed, 20 Sep 2023 08:58:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qit26-00058x-Kb; Wed, 20 Sep 2023 08:58:06 +0000
Received: by outflank-mailman (input) for mailman id 605338;
 Wed, 20 Sep 2023 08:58:05 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=w30U=FE=amd.com=Xenia.Ragiadakou@srs-se1.protection.inumbo.net>)
 id 1qit25-00057g-Qo
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 08:58:05 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20621.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ce11a2b5-5793-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 10:58:03 +0200 (CEST)
Received: from MN2PR01CA0012.prod.exchangelabs.com (2603:10b6:208:10c::25) by
 CH2PR12MB5513.namprd12.prod.outlook.com (2603:10b6:610:68::13) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.28; Wed, 20 Sep 2023 08:57:59 +0000
Received: from BL6PEPF0001AB55.namprd02.prod.outlook.com
 (2603:10b6:208:10c:cafe::cf) by MN2PR01CA0012.outlook.office365.com
 (2603:10b6:208:10c::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28 via Frontend
 Transport; Wed, 20 Sep 2023 08:57:59 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB55.mail.protection.outlook.com (10.167.241.7) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Wed, 20 Sep 2023 08:57:59 +0000
Received: from [10.0.2.15] (10.180.168.240) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 20 Sep
 2023 03:57:53 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ce11a2b5-5793-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Dmh5Aqynf1mkcG/xXtE9K2sAqufwe8IDGH4gz+VGHphc6l4c63hyymhiz9easWKc2jl5s0c/LJfGEjg1zq611jL9VoHOuKBAoucdF9RodUeB8939lcRGw/TDWChUWYPDRVf/O4xe3sEbleV8FwWSnK2770X3OzR9wcdLNPt5Zzt7mDSO/wnIgh/nK4SBt1zciWMgXGKdFNqEye4uy6oPjSG0vwvwTiUzvkpeDPzG6YB4zO3gADy9efjo4c0vTX1WNvXzBLkpIvEHBNQtNVi92tL6M0hTw1Ix7GNiQ0yDhoZsHHEbFd59sntHKZGFYx1vZuTPb0zsw/inojNw4RaNxQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=74tPTW4ioZVLVy0YvoVINl98cFQeriV1oowMGyshdMU=;
 b=NqkK/z3pEp0YTIqjdGvPWwGx4yExNtusBH44Rc1wgs0y50Rx4cChYfSzSYyNS5tljxZXqU1tCp9jCHSFs+sQdbAs+6rhVLwQ7BEAur1VMSiNZO7tf2sfiW9hL6zvc5bh1Id6rH+f8j9tZWGCO8g65nyoCC9iV6R82pXsmZ4VyRDP/wvic5eqo0MJvZpehp0X90FGT7RBMDi+hsvzpnw9SwfHsn7cRobIyseAv7YMEwUfeMlL2TkKS2GzZRwNJiLEzj8G7BL1UY8SRTWw5i5Vfp9pNAOXvEmkeHby0inUWfriy9vOgrIPXOwyEQ2yIxEDDkjZLDa5oJQmGBmSc6qScA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=daynix.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=74tPTW4ioZVLVy0YvoVINl98cFQeriV1oowMGyshdMU=;
 b=Mp1tYltDndF7D7o2VaiGeBM0vCsFBhBvvcD+L1BTNFY4SuMGjWnEJcOWZdsIFVeCq+k2Wh9xL1EjyJRVaxb3GarBRfhX8JFGK0DII59DJgwAR3S7SdGU5p2fVCehIzepCV1AgGfbswTxr59LtScP4gLlYRu2D5trUOXQT3yVP3Y=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <1f8863da-fad1-f983-8ed0-d6bf8d9544b8@amd.com>
Date: Wed, 20 Sep 2023 11:57:33 +0300
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [QEMU PATCH v5 07/13] softmmu/memory: enable automatic
 deallocation of memory regions
Content-Language: en-US
To: Akihiko Odaki <akihiko.odaki@daynix.com>, Huang Rui <ray.huang@amd.com>,
	Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Anthony PERARD
	<anthony.perard@citrix.com>, Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>, Robert Beckett
	<bob.beckett@collabora.com>, Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	=?UTF-8?Q?Alex_Benn=c3=a9e?= <alex.bennee@linaro.org>,
	<qemu-devel@nongnu.org>
CC: <xen-devel@lists.xenproject.org>, Gurchetan Singh
	<gurchetansingh@chromium.org>, Albert Esteve <aesteve@redhat.com>,
	<ernunes@redhat.com>, =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?=
	<philmd@linaro.org>, Alyssa Ross <hi@alyssa.is>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Alex Deucher
	<alexander.deucher@amd.com>, =?UTF-8?Q?Christian_K=c3=b6nig?=
	<christian.koenig@amd.com>, Pierre-Eric Pelloux-Prayer
	<pierre-eric.pelloux-prayer@amd.com>, Honglei Huang <honglei1.huang@amd.com>,
	Julia Zhang <julia.zhang@amd.com>, Chen Jiqian <Jiqian.Chen@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-8-ray.huang@amd.com>
 <99fb4575-9f8d-4ab6-bc22-911bbaa7ca55@daynix.com>
 <c0370b6e-c17e-2400-ef8a-7a759d2fc2d7@amd.com>
 <75698621-d210-40eb-872d-f3cfc6e4dbff@daynix.com>
 <32a68715-201b-9923-9600-fe5ae49e4b7b@amd.com>
 <73a35fbb-c9a4-41dc-a6c7-26037b0e412f@daynix.com>
From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
In-Reply-To: <73a35fbb-c9a4-41dc-a6c7-26037b0e412f@daynix.com>
Content-Type: text/plain; charset="UTF-8"; format=flowed
Content-Transfer-Encoding: 8bit
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com
 (10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB55:EE_|CH2PR12MB5513:EE_
X-MS-Office365-Filtering-Correlation-Id: 91fcf1ae-1335-4cb6-ec21-08dbb9b7b05b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	CjvLctolLrLVkDtK0zLnKiT2urWiLMn+EvulXxVcmT/AbsFN2JZ13mXISgWw8EvBrYYg7ChMomEEKURDzQ+epvCmXcxgGzF8pTwz9L4OGXQ/znc2WNdpZ3Tzj/vGx1qnooSV6eyprR9YqPcqny84Xy22vghQbd+2gO8EhwxwNJ521YgkDzPxTk3nXls7BrIedL3Zp7ZYnDg+Cmv1qzaLblopnIYUdg+hSoYinm4ugQSSbxXxlqMQ0YIDWGI1FV4BgdZDD8/HLBI5Anxce4Yo78fghYnFfur5asmoR1PINsWPJ6mDYC7vfpnA1H5MvMvXLqux0hvuAERpTLzUyf9uWUABt2nAzN3IXpfGnbVNbto1ojaWm5ym5006T7VVYx3nDzYpao5HwHNroJ2F0g2NyX2MAuKfBAp1jHqeL9tRBBBIuO5BUSRRIDzBTCoEHWO3hYlOJPttKsUG5WrE/RVXAem3JOKU8AiJD1yXozPmFBo0tOqO2389mOgiJ8pyd430/3fcT8tCPCbI0KcKLI2dPRQk9rHJ2iWewO2vnQD4RjplozOAfsic/julQ9wcCmNu93DTphIJUvxfP0Yl7oO+ONCQKxtHEcIbMqZbz+TI6s8ueKf1QJ9sr8EM7HsiaUjCtjndpGU1AlO5YjdwiD2M9Rew2nDJDcbCcXj43am6btAyyh/4Uierc3F9RgDTjlhIyCqIFTnCnoakGTJtT3aQYdB3WOZOFVGt8d3noGHPPpc9yl1ELtxzCVRW+ePdC2yfKdExTtD81dhrIjJSw1x88l2Z1M4KYXHGS21NDg/YX2ySpVEc6+sjpi4hZfzmCeta0Y1mHV2xiX5qiyy7P/g0Nw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(136003)(396003)(376002)(39860400002)(82310400011)(451199024)(1800799009)(186009)(46966006)(40470700004)(36840700001)(5660300002)(31686004)(7416002)(2906002)(44832011)(4326008)(8676002)(41300700001)(8936002)(316002)(54906003)(70206006)(70586007)(66899024)(26005)(16526019)(426003)(336012)(110136005)(16576012)(478600001)(40460700003)(356005)(6666004)(2616005)(83380400001)(82740400003)(36756003)(36860700001)(47076005)(86362001)(40480700001)(921005)(81166007)(31696002)(53546011)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 08:57:59.1556
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 91fcf1ae-1335-4cb6-ec21-08dbb9b7b05b
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL6PEPF0001AB55.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR12MB5513


On 20/9/23 01:18, Akihiko Odaki wrote:
> On 2023/09/19 23:21, Xenia Ragiadakou wrote:
>>
>> On 19/9/23 13:44, Akihiko Odaki wrote:
>>> On 2023/09/19 19:28, Xenia Ragiadakou wrote:
>>>>
>>>> On 15/9/23 18:11, Akihiko Odaki wrote:
>>>>> On 2023/09/15 20:11, Huang Rui wrote:
>>>>>> From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>>>>
>>>>>> When the memory region has a different life-cycle from that of 
>>>>>> her parent,
>>>>>> could be automatically released, once has been unparent and once 
>>>>>> all of her
>>>>>> references have gone away, via the object's free callback.
>>>>>>
>>>>>> However, currently, references to the memory region are held by 
>>>>>> its owner
>>>>>> without first incrementing the memory region object's reference 
>>>>>> count.
>>>>>> As a result, the automatic deallocation of the object, not taking 
>>>>>> into
>>>>>> account those references, results in use-after-free memory 
>>>>>> corruption.
>>>>>>
>>>>>> This patch increases the reference count of an owned memory 
>>>>>> region object
>>>>>> on each memory_region_ref() and decreases it on each 
>>>>>> memory_region_unref().
>>>>>>
>>>>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>>>>> ---
>>>>>>
>>>>>> V4 -> V5:
>>>>>>      - ref/unref only owned memory regions (Akihiko)
>>>>>>
>>>>>>   softmmu/memory.c | 5 +++++
>>>>>>   1 file changed, 5 insertions(+)
>>>>>>
>>>>>> diff --git a/softmmu/memory.c b/softmmu/memory.c
>>>>>> index 7d9494ce70..15e1699750 100644
>>>>>> --- a/softmmu/memory.c
>>>>>> +++ b/softmmu/memory.c
>>>>>> @@ -1800,6 +1800,9 @@ void memory_region_ref(MemoryRegion *mr)
>>>>>>       /* MMIO callbacks most likely will access data that belongs
>>>>>>        * to the owner, hence the need to ref/unref the owner 
>>>>>> whenever
>>>>>>        * the memory region is in use.
>>>>>> +     * Likewise, the owner keeps references to the memory region,
>>>>>> +     * hence the need to ref/unref the memory region object to 
>>>>>> prevent
>>>>>> +     * its automatic deallocation while still referenced by its 
>>>>>> owner.
>>>>>
>>>>> This comment does not make sense. Traditionally no such automatic 
>>>>> deallocation happens so the owner has been always required to free 
>>>>> the memory region when it gets finalized.
>>>>>
>>>>> "[QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands" 
>>>>> introduces a different kind of memory region, which can be freed 
>>>>> anytime before the device gets finalized. Even in this case, the 
>>>>> owner removes the reference to the memory owner by doing 
>>>>> res->region = NULL;
>>>>
>>>> Hi Akihiko,
>>>>
>>>> You are right, the word "owner" is not correct. The issue observed 
>>>> was due to the references kept in flatview ranges and the fact that 
>>>> flatview_destroy() is asynchronous and was called after memory 
>>>> region's destruction.
>>>>
>>>> If I replace the word "owner" with "memory subsystem" in the commit 
>>>> message and drop the comment, would that be ok with you? or do want 
>>>> to suggest something else?
>>>
>>> This will extend the lifetime of the memory region, but the 
>>> underlying memory is still synchronously freed. Can you show that 
>>> the flatview range will not be used to read the freed memory?
>>
>> Yes, the intention of this patch is to delay the mr object 
>> finalization until all memory_region_unref() on this mr have been 
>> taken place.
>>
>> What do you mean by "the underlying memory is still synchronously 
>> freed"?
>>
>
> A pointer is passed to memory_region_init_ram_ptr() with the ptr 
> parameter when initializing the memory region and the memory region 
> keeps the pointer.
>
> In virtio_gpu_virgl_resource_unmap(), the memory pointed with the 
> pointer is unmapped with virgl_renderer_resource_unmap() and makes the 
> pointer kept by the memory region dangling though the lifetime of the 
> memory region is extended with this patch. Can you show that the 
> dangling pointer the memory region has will never be referenced?

I see your point but I think it is not directly related to this patch. 
IMHO, it is related to the implementation of 
virtio_gpu_virgl_resource_unmap(). Maybe the unmapping should be done in 
the free callback. However, I would expect the pointer to a disabled 
memory region to not be used, not sure though.




From xen-devel-bounces@lists.xenproject.org Wed Sep 20 09:20:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 09:20:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605351.942973 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qitNh-0004jF-6k; Wed, 20 Sep 2023 09:20:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605351.942973; Wed, 20 Sep 2023 09:20:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qitNh-0004gc-04; Wed, 20 Sep 2023 09:20:25 +0000
Received: by outflank-mailman (input) for mailman id 605351;
 Wed, 20 Sep 2023 09:20:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/Op+=FE=xenbits.xen.org=julieng@srs-se1.protection.inumbo.net>)
 id 1qitNg-0004a8-0H
 for xen-devel@lists.xen.org; Wed, 20 Sep 2023 09:20:24 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e972de7e-5796-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 11:20:20 +0200 (CEST)
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julieng@xenbits.xen.org>)
 id 1qitNQ-0008Pb-6d; Wed, 20 Sep 2023 09:20:08 +0000
Received: from julieng by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <julieng@xenbits.xen.org>)
 id 1qitNQ-0001Pu-0K; Wed, 20 Sep 2023 09:20:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e972de7e-5796-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Date:Message-Id:Subject:CC:From:To:MIME-Version:
	Content-Transfer-Encoding:Content-Type;
	bh=Y8vjJzY/zssAeDoHSd4YfTt60nArCUTnCrO4OkUiR+o=; b=ENmajgd6ocqHz/DTUB5nOHglzv
	lE1yZzQBmTWlqkhWMe0QFedr02Q+TCd4yJ2pupgM1Viq0LqrbvVlQYn3QxG+gBalKu6zY0eAbU7TM
	CUAHACWpmjJZch4skVwzh0Jcv6W+kt6uC06kh2GybPpYG8gQXGhHfAf11BW3zeU09joA=;
Content-Type: multipart/mixed; boundary="=separator"; charset="utf-8"
Content-Transfer-Encoding: binary
MIME-Version: 1.0
X-Mailer: MIME-tools 5.509 (Entity 5.509)
To: xen-announce@lists.xen.org, xen-devel@lists.xen.org,
 xen-users@lists.xen.org, oss-security@lists.openwall.com
From: Xen.org security team <security@xen.org>
CC: Xen.org security team <security-team-members@xen.org>
Subject: Xen Security Advisory 438 v2 (CVE-2023-34322) - top-level shadow
 reference dropped too early for 64-bit PV guests
Message-Id: <E1qitNQ-0001Pu-0K@xenbits.xenproject.org>
Date: Wed, 20 Sep 2023 09:20:08 +0000

--=separator
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

            Xen Security Advisory CVE-2023-34322 / XSA-438
                               version 2

   top-level shadow reference dropped too early for 64-bit PV guests

UPDATES IN VERSION 2
====================

Public release.

ISSUE DESCRIPTION
=================

For migration as well as to work around kernels unaware of L1TF (see
XSA-273), PV guests may be run in shadow paging mode.  Since Xen itself
needs to be mapped when PV guests run, Xen and shadowed PV guests run
directly the respective shadow page tables.  For 64-bit PV guests this
means running on the shadow of the guest root page table.

In the course of dealing with shortage of memory in the shadow pool
associated with a domain, shadows of page tables may be torn down.  This
tearing down may include the shadow root page table that the CPU in
question is presently running on.  While a precaution exists to
supposedly prevent the tearing down of the underlying live page table,
the time window covered by that precaution isn't large enough.

IMPACT
======

Privilege escalation, Denial of Service (DoS) affecting the entire host,
and information leaks all cannot be ruled out.

VULNERABLE SYSTEMS
==================

All Xen versions from at least 3.2 onwards are vulnerable.  Earlier
versions have not been inspected.

Only x86 systems are vulnerable.  Only 64-bit PV guests can leverage the
vulnerability, and only when running in shadow mode.  Shadow mode would
be in use when migrating guests or as a workaround for XSA-273 (L1TF).

MITIGATION
==========

Running only HVM or PVH guests will avoid the vulnerability.

Running PV guests in the PV shim will also avoid the vulnerability.

CREDITS
=======

This issue was discovered by Tim Deegan, and Jan Beulich of SUSE.

RESOLUTION
==========

Applying the appropriate attached patch resolves this issue.

Note that patches for released versions are generally prepared to
apply to the stable branches, and may not apply cleanly to the most
recent release tarball.  Downstreams are encouraged to update to the
tip of the stable branch before applying these patches.

xsa438.patch           xen-unstable
xsa438-4.17.patch      Xen 4.17.x
xsa438-4.16.patch      Xen 4.16.x
xsa438-4.15.patch      Xen 4.15.x

$ sha256sum xsa438*
f30067fa3732fb52042b14a2836b610c29af47461425f1a1ccec21cb8a5a48b1  xsa438.patch
a2e7d7c12ea19fb95e2d825fda5f7d0124cbb5c4a369cb58ab6036d266b7e297  xsa438-4.15.patch
eb75fbeb4aa635d6104c12acd5f7311e477f7c159f2ec4eca8a345327a9aee24  xsa438-4.16.patch
f3a305c86124e48b9afa14f3ba76b81d1f5d8d472e2412ae3d014305c749a86a  xsa438-4.17.patch
$

DEPLOYMENT DURING EMBARGO
=========================

Deployment of the patches and/or mitigations described above (or
others which are substantially similar) is permitted during the
embargo, even on public-facing systems with untrusted guest users and
administrators.

But: Distribution of updated software is prohibited (except to other
members of the predisclosure list).

Predisclosure list members who wish to deploy significantly different
patches and/or mitigations, please contact the Xen Project Security
Team.

(Note: this during-embargo deployment notice is retained in
post-embargo publicly released Xen Project advisories, even though it
is then no longer applicable.  This is to enable the community to have
oversight of the Xen Project Security Team's decisionmaking.)

For more information about permissible uses of embargoed information,
consult the Xen Project community's agreed Security Policy:
  http://www.xenproject.org/security-policy.html
-----BEGIN PGP SIGNATURE-----

iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAmUKuSAMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZtL0IAL3mXsj7Q5Xfu/Tof0a1ie7TnpvZ2qXxzoLlyiFR
Vra9gs83Nw7n45yXFFVLSzTjmz2bCbCmUowPp6TxF9Nawt0JocbF80JpYKEojEko
6B2BAdUFhPXtx1D6NruzG2gVr5qn/eNJjIIos0o7tzxtBPLKX9qzLh3FmZK5BJm2
HyKMLIEZuVipb3Qtb+avUDHvLjee6p4eaaWOk08g3sSWhtSfwxlS4IF9j1G2Oejj
QKZ1XILCP8miXmuUZJ/L/7CzFvOm+DKNVFZYhFT0fjDWk3vNhtLcBv5s36Z65gKK
MvKe7owffmclQLWjOekYNm8dG5gQ/OkWRAPbxiwRMegT22g=
=L3du
-----END PGP SIGNATURE-----

--=separator
Content-Type: application/octet-stream; name="xsa438.patch"
Content-Disposition: attachment; filename="xsa438.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvc2hhZG93OiBkZWZlciByZWxlYXNpbmcgb2YgUFYncyB0b3AtbGV2
ZWwgc2hhZG93IHJlZmVyZW5jZQoKc2hfc2V0X3RvcGxldmVsX3NoYWRvdygp
IHJlLXBpbm5pbmcgdGhlIHRvcC1sZXZlbCBzaGFkb3cgd2UgbWF5IGJlCnJ1
bm5pbmcgb24gaXMgbm90IGVub3VnaCAoYW5kIGF0IHRoZSBzYW1lIHRpbWUg
dW5uZWNlc3Nhcnkgd2hlbiB0aGUKc2hhZG93IGlzbid0IHdoYXQgd2UncmUg
cnVubmluZyBvbik6IFRoYXQgc2hhZG93IGJlY29tZXMgZWxpZ2libGUgZm9y
CmJsb3dpbmcgYXdheSAoZnJvbSBlLmcuIHNoYWRvd19wcmVhbGxvYygpKSBp
bW1lZGlhdGVseSBhZnRlciB0aGUKcGFnaW5nIGxvY2sgd2FzIGRyb3BwZWQu
IFlldCBpdCBuZWVkcyB0byByZW1haW4gdmFsaWQgdW50aWwgdGhlIGFjdHVh
bApwYWdlIHRhYmxlIHN3aXRjaCBvY2N1cnJlZC4KClByb3BhZ2F0ZSB1cCB0
aGUgY2FsbCBjaGFpbiB0aGUgc2hhZG93IGVudHJ5IHRoYXQgbmVlZHMgcmVs
ZWFzaW5nCmV2ZW50dWFsbHksIGFuZCBjYXJyeSBvdXQgdGhlIHJlbGVhc2Ug
aW1tZWRpYXRlbHkgYWZ0ZXIgc3dpdGNoaW5nIHBhZ2UKdGFibGVzLiBIYW5k
bGUgdXBkYXRlX2NyMygpIGZhaWx1cmVzIGJ5IHN3aXRjaGluZyB0byBpZGxl
IHBhZ2V0YWJsZXMuCk5vdGUgdGhhdCB2YXJpb3VzIGZ1cnRoZXIgdXNlcyBv
ZiB1cGRhdGVfY3IzKCkgYXJlIEhWTS1vbmx5IG9yIG9ubHkgYWN0Cm9uIHBh
dXNlZCB2Q1BVLXMsIGluIHdoaWNoIGNhc2Ugc2hfc2V0X3RvcGxldmVsX3No
YWRvdygpIHdpbGwgbm90IGRlZmVyCnJlbGVhc2luZyBvZiB0aGUgcmVmZXJl
bmNlLgoKV2hpbGUgY2hhbmdpbmcgdGhlIHVwZGF0ZV9jcjMoKSBob29rLCBh
bHNvIGNvbnZlcnQgdGhlICJkb19sb2NraW5nIgpwYXJhbWV0ZXIgdG8gYm9v
bGVhbi4KClRoaXMgaXMgQ1ZFLTIwMjMtMzQzMjIgLyBYU0EtNDM4LgoKUmVw
b3J0ZWQtYnk6IFRpbSBEZWVnYW4gPHRpbUB4ZW4ub3JnPgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNsb3VkLmNvbT4K
LS0tClRoZSBidWJibGluZyB1cCBvZiB0aGUgc2hhZG93IGVudHJ5IGNvdWxk
IGxpa2VseSBiZSBhdm9pZGVkIChieQppbnNwZWN0aW5nIHYtPmFyY2guY3Iz
IGFuZCB0aGUgY29ycmVzcG9uZGluZyBmcmFtZV90YWJsZVtdIGVudHJ5KSwg
YnV0CmdvaW5nIHRoYXQgcm91dGUgc2VlbWVkIHF1aXRlIGEgYml0IG1vcmUg
ZnJhZ2lsZSB0byBtZS4KCkluIF90b2dnbGVfZ3Vlc3RfcHQoKSBJIHdhcyBo
ZWF2aWx5IGluY2xpbmVkIHRvIGFsc28gbW92ZSB1cCBjcjMncwppbml0aWFs
aXplcjogVGhpcyB3b3VsZG4ndCBncm93IHRoZSBkaWZmLCBidXQgc2luY2Ug
aXQgd291bGQgc3RpbGwgYmUKc2xpZ2h0bHkgbW9yZSBjb2RlIGNodXJuLCBJ
IHRoZW4gZGlkbid0IGRvIHNvLgotLS0KdjQ6IENvbnZlcnQgYSBjb25kaXRp
b24gb3BlcmF0b3IgdXNlIHRvIGlmKCkuIEV4dGVuZCBjb21tZW50cy4KdjM6
IEluIF90b2dnbGVfZ3Vlc3RfcHQoKSBkb24ndCBtaXN0YWtlbmx5IHBhc3Mg
dGhlIGlkbGUgZG9tYWluIHRvCiAgICBzaGFkb3dfcHV0X3RvcF9sZXZlbCgp
LiBBZGQgbG9ja2luZyB0byBzaGFkb3dfcHV0X3RvcF9sZXZlbCgpLgogICAg
QWx3YXlzIGNvbnN1bWUgc2hfc2V0X3RvcGxldmVsX3NoYWRvdygpJ3MgcmV0
dXJuIHZhbHVlLiBBZGQKICAgIGFzc2VydGlvbnMuIE1hc3NhZ2UgZGVzY3Jp
cHRpb24uCnYyOiBGaXggIVNIQURPV19QQUdJTkcgYnVpbGQuCgotLS0gYS94
ZW4vYXJjaC94ODYvaW5jbHVkZS9hc20vbW0uaAorKysgYi94ZW4vYXJjaC94
ODYvaW5jbHVkZS9hc20vbW0uaApAQCAtNTU2LDcgKzU1Niw3IEBAIHZvaWQg
YXVkaXRfZG9tYWlucyh2b2lkKTsKICNlbmRpZgogCiB2b2lkIG1ha2VfY3Iz
KHN0cnVjdCB2Y3B1ICp2LCBtZm5fdCBtZm4pOwotdm9pZCB1cGRhdGVfY3Iz
KHN0cnVjdCB2Y3B1ICp2KTsKK3BhZ2V0YWJsZV90IHVwZGF0ZV9jcjMoc3Ry
dWN0IHZjcHUgKnYpOwogaW50IHZjcHVfZGVzdHJveV9wYWdldGFibGVzKHN0
cnVjdCB2Y3B1ICopOwogdm9pZCAqZG9fcGFnZV93YWxrKHN0cnVjdCB2Y3B1
ICp2LCB1bnNpZ25lZCBsb25nIGFkZHIpOwogCi0tLSBhL3hlbi9hcmNoL3g4
Ni9pbmNsdWRlL2FzbS9wYWdpbmcuaAorKysgYi94ZW4vYXJjaC94ODYvaW5j
bHVkZS9hc20vcGFnaW5nLmgKQEAgLTExOCw3ICsxMTgsNyBAQCBzdHJ1Y3Qg
cGFnaW5nX21vZGUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwYWRkcl90IGdhLCB1aW50MzJfdCAqcGZlYywKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z
aWduZWQgaW50ICpwYWdlX29yZGVyKTsKICNlbmRpZgotICAgIHZvaWQgICAg
ICAgICAgKCp1cGRhdGVfY3IzICAgICAgICAgICAgKShzdHJ1Y3QgdmNwdSAq
diwgaW50IGRvX2xvY2tpbmcsCisgICAgcGFnZXRhYmxlX3QgICAoKnVwZGF0
ZV9jcjMgICAgICAgICAgICApKHN0cnVjdCB2Y3B1ICp2LCBib29sIGRvX2xv
Y2tpbmcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJvb2wgbm9mbHVzaCk7CiAKICAgICB1bnNpZ25lZCBpbnQgZ3Vl
c3RfbGV2ZWxzOwpAQCAtMjk0LDkgKzI5NCw5IEBAIHN0YXRpYyBpbmxpbmUg
Ym9vbCBwYWdpbmdfZmx1c2hfdGxiKGNvbnMKIC8qIFVwZGF0ZSBhbGwgdGhl
IHRoaW5ncyB0aGF0IGFyZSBkZXJpdmVkIGZyb20gdGhlIGd1ZXN0J3MgQ1Iz
LgogICogQ2FsbGVkIHdoZW4gdGhlIGd1ZXN0IGNoYW5nZXMgQ1IzOyB0aGUg
Y2FsbGVyIGNhbiB0aGVuIHVzZSB2LT5hcmNoLmNyMwogICogYXMgdGhlIHZh
bHVlIHRvIGxvYWQgaW50byB0aGUgaG9zdCBDUjMgdG8gc2NoZWR1bGUgdGhp
cyB2Y3B1ICovCi1zdGF0aWMgaW5saW5lIHZvaWQgcGFnaW5nX3VwZGF0ZV9j
cjMoc3RydWN0IHZjcHUgKnYsIGJvb2wgbm9mbHVzaCkKK3N0YXRpYyBpbmxp
bmUgcGFnZXRhYmxlX3QgcGFnaW5nX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUg
KnYsIGJvb2wgbm9mbHVzaCkKIHsKLSAgICBwYWdpbmdfZ2V0X2hvc3Rtb2Rl
KHYpLT51cGRhdGVfY3IzKHYsIDEsIG5vZmx1c2gpOworICAgIHJldHVybiBw
YWdpbmdfZ2V0X2hvc3Rtb2RlKHYpLT51cGRhdGVfY3IzKHYsIDEsIG5vZmx1
c2gpOwogfQogCiAvKiBVcGRhdGUgYWxsIHRoZSB0aGluZ3MgdGhhdCBhcmUg
ZGVyaXZlZCBmcm9tIHRoZSBndWVzdCdzIENSMC9DUjMvQ1I0LgotLS0gYS94
ZW4vYXJjaC94ODYvaW5jbHVkZS9hc20vc2hhZG93LmgKKysrIGIveGVuL2Fy
Y2gveDg2L2luY2x1ZGUvYXNtL3NoYWRvdy5oCkBAIC05NCw2ICs5NCw5IEBA
IHZvaWQgc2hhZG93X2Jsb3dfdGFibGVzX3Blcl9kb21haW4oc3RydWMKIGlu
dCBzaGFkb3dfc2V0X2FsbG9jYXRpb24oc3RydWN0IGRvbWFpbiAqZCwgdW5z
aWduZWQgaW50IHBhZ2VzLAogICAgICAgICAgICAgICAgICAgICAgICAgICBi
b29sICpwcmVlbXB0ZWQpOwogCisvKiBIZWxwZXIgdG8gaW52b2tlIGZvciBk
ZWZlcnJlZCByZWxlYXNpbmcgb2YgYSB0b3AtbGV2ZWwgc2hhZG93J3MgcmVm
ZXJlbmNlLiAqLwordm9pZCBzaGFkb3dfcHV0X3RvcF9sZXZlbChzdHJ1Y3Qg
ZG9tYWluICpkLCBwYWdldGFibGVfdCBvbGQpOworCiAjZWxzZSAvKiAhQ09O
RklHX1NIQURPV19QQUdJTkcgKi8KIAogI2RlZmluZSBzaGFkb3dfdmNwdV90
ZWFyZG93bih2KSBBU1NFUlQoaXNfcHZfdmNwdSh2KSkKQEAgLTExNCw2ICsx
MTcsMTEgQEAgc3RhdGljIGlubGluZSB2b2lkIHNoYWRvd19wcmVwYXJlX3Bh
Z2VfdAogCiBzdGF0aWMgaW5saW5lIHZvaWQgc2hhZG93X2Jsb3dfdGFibGVz
X3Blcl9kb21haW4oc3RydWN0IGRvbWFpbiAqZCkge30KIAorc3RhdGljIGlu
bGluZSB2b2lkIHNoYWRvd19wdXRfdG9wX2xldmVsKHN0cnVjdCBkb21haW4g
KmQsIHBhZ2V0YWJsZV90IG9sZCkKK3sKKyAgICBBU1NFUlRfVU5SRUFDSEFC
TEUoKTsKK30KKwogc3RhdGljIGlubGluZSBpbnQgc2hhZG93X2RvbWN0bChz
dHJ1Y3QgZG9tYWluICpkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzdHJ1Y3QgeGVuX2RvbWN0bF9zaGFkb3dfb3AgKnNjLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBYRU5fR1VFU1RfSEFORExFX1BB
UkFNKHhlbl9kb21jdGxfdCkgdV9kb21jdGwpCi0tLSBhL3hlbi9hcmNoL3g4
Ni9tbS9oYXAvaGFwLmMKKysrIGIveGVuL2FyY2gveDg2L21tL2hhcC9oYXAu
YwpAQCAtNzA3LDExICs3MDcsMTMgQEAgc3RhdGljIGJvb2wgY2ZfY2hlY2sg
aGFwX2ludmxwZyhzdHJ1Y3QgdgogICAgIHJldHVybiAxOwogfQogCi1zdGF0
aWMgdm9pZCBjZl9jaGVjayBoYXBfdXBkYXRlX2NyMygKLSAgICBzdHJ1Y3Qg
dmNwdSAqdiwgaW50IGRvX2xvY2tpbmcsIGJvb2wgbm9mbHVzaCkKK3N0YXRp
YyBwYWdldGFibGVfdCBjZl9jaGVjayBoYXBfdXBkYXRlX2NyMygKKyAgICBz
dHJ1Y3QgdmNwdSAqdiwgYm9vbCBkb19sb2NraW5nLCBib29sIG5vZmx1c2gp
CiB7CiAgICAgdi0+YXJjaC5odm0uaHdfY3JbM10gPSB2LT5hcmNoLmh2bS5n
dWVzdF9jclszXTsKICAgICBodm1fdXBkYXRlX2d1ZXN0X2NyMyh2LCBub2Zs
dXNoKTsKKworICAgIHJldHVybiBwYWdldGFibGVfbnVsbCgpOwogfQogCiBz
dGF0aWMgYm9vbCBmbHVzaF92Y3B1KGNvbnN0IHN0cnVjdCB2Y3B1ICp2LCBj
b25zdCB1bnNpZ25lZCBsb25nICp2Y3B1X2JpdG1hcCkKLS0tIGEveGVuL2Fy
Y2gveDg2L21tL3NoYWRvdy9jb21tb24uYworKysgYi94ZW4vYXJjaC94ODYv
bW0vc2hhZG93L2NvbW1vbi5jCkBAIC0yNTI2LDEzICsyNTI2LDEzIEBAIHN0
YXRpYyB2b2lkIGNmX2NoZWNrIHNoYWRvd191cGRhdGVfcGFnaW4KIH0KIAog
LyogU2V0IHVwIHRoZSB0b3AtbGV2ZWwgc2hhZG93IGFuZCBpbnN0YWxsIGl0
IGluIHNsb3QgJ3Nsb3QnIG9mIHNoYWRvd190YWJsZSAqLwotdm9pZCBzaF9z
ZXRfdG9wbGV2ZWxfc2hhZG93KHN0cnVjdCB2Y3B1ICp2LAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBzbG90LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHJvb3RfdHlwZSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCAoKm1ha2Vfc2hhZG93
KShzdHJ1Y3QgdmNwdSAqdiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCBnbWZuLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQz
Ml90IHNoYWRvd190eXBlKSkKK3BhZ2V0YWJsZV90IHNoX3NldF90b3BsZXZl
bF9zaGFkb3coc3RydWN0IHZjcHUgKnYsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBzbG90LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCBnbWZuLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgcm9v
dF90eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBt
Zm5fdCAoKm1ha2Vfc2hhZG93KShzdHJ1Y3QgdmNwdSAqdiwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgbWZuX3QgZ21mbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc2hhZG93X3R5
cGUpKQogewogICAgIG1mbl90IHNtZm47CiAgICAgcGFnZXRhYmxlX3Qgb2xk
X2VudHJ5LCBuZXdfZW50cnk7CkBAIC0yNTg5LDIwICsyNTg5LDM3IEBAIHZv
aWQgc2hfc2V0X3RvcGxldmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdQogICAgICAg
ICAgICAgICAgICAgbWZuX3goZ21mbiksIG1mbl94KHBhZ2V0YWJsZV9nZXRf
bWZuKG5ld19lbnRyeSkpKTsKICAgICB2LT5hcmNoLnBhZ2luZy5zaGFkb3cu
c2hhZG93X3RhYmxlW3Nsb3RdID0gbmV3X2VudHJ5OwogCi0gICAgLyogRGVj
cmVtZW50IHRoZSByZWZjb3VudCBvZiB0aGUgb2xkIGNvbnRlbnRzIG9mIHRo
aXMgc2xvdCAqLwotICAgIGlmICggIXBhZ2V0YWJsZV9pc19udWxsKG9sZF9l
bnRyeSkgKQorICAgIC8qCisgICAgICogRGVjcmVtZW50IHRoZSByZWZjb3Vu
dCBvZiB0aGUgb2xkIGNvbnRlbnRzIG9mIHRoaXMgc2xvdCwgdW5sZXNzCisg
ICAgICogd2UncmUgc3RpbGwgcnVubmluZyBvbiB0aGF0IHNoYWRvdyAtIGlu
IHRoYXQgY2FzZSBpdCdsbCBuZWVkIGhvbGRpbmcKKyAgICAgKiBvbiB0byB1
bnRpbCB0aGUgYWN0dWFsIHBhZ2UgdGFibGUgc3dpdGNoIGRpZCBvY2N1ci4K
KyAgICAgKi8KKyAgICBpZiAoICFwYWdldGFibGVfaXNfbnVsbChvbGRfZW50
cnkpICYmICh2ICE9IGN1cnJlbnQgfHwgIWlzX3B2X2RvbWFpbihkKSkgKQog
ICAgIHsKLSAgICAgICAgbWZuX3Qgb2xkX3NtZm4gPSBwYWdldGFibGVfZ2V0
X21mbihvbGRfZW50cnkpOwotICAgICAgICAvKiBOZWVkIHRvIHJlcGluIHRo
ZSBvbGQgdG9wbGV2ZWwgc2hhZG93IGlmIGl0J3MgYmVlbiB1bnBpbm5lZAot
ICAgICAgICAgKiBieSBzaGFkb3dfcHJlYWxsb2MoKTogaW4gUFYgbW9kZSB3
ZSdyZSBzdGlsbCBydW5uaW5nIG9uIHRoaXMKLSAgICAgICAgICogc2hhZG93
IGFuZCBpdCdzIG5vdCBzYWZlIHRvIGZyZWUgaXQgeWV0LiAqLwotICAgICAg
ICBpZiAoICFtZm5fdG9fcGFnZShvbGRfc21mbiktPnUuc2gucGlubmVkICYm
ICFzaF9waW4oZCwgb2xkX3NtZm4pICkKLSAgICAgICAgewotICAgICAgICAg
ICAgcHJpbnRrKFhFTkxPR19HX0VSUiAiY2FuJ3QgcmUtcGluICUiUFJJX21m
biJcbiIsIG1mbl94KG9sZF9zbWZuKSk7Ci0gICAgICAgICAgICBkb21haW5f
Y3Jhc2goZCk7Ci0gICAgICAgIH0KLSAgICAgICAgc2hfcHV0X3JlZihkLCBv
bGRfc21mbiwgMCk7CisgICAgICAgIHNoX3B1dF9yZWYoZCwgcGFnZXRhYmxl
X2dldF9tZm4ob2xkX2VudHJ5KSwgMCk7CisgICAgICAgIG9sZF9lbnRyeSA9
IHBhZ2V0YWJsZV9udWxsKCk7CiAgICAgfQorCisgICAgLyoKKyAgICAgKiAy
LSBhbmQgMy1sZXZlbCBzaGFkb3cgbW9kZSBpcyB1c2VkIGZvciBIVk0gb25s
eS4gVGhlcmVmb3JlIHdlIG5ldmVyIHJ1bgorICAgICAqIG9uIHN1Y2ggYSBz
aGFkb3csIHNvIG9ubHkgY2FsbCBzaXRlcyByZXF1ZXN0aW5nIGFuIEw0IHNo
YWRvdyBuZWVkIHRvIHBheQorICAgICAqIGF0dGVudGlvbiB0byB0aGUgcmV0
dXJuZWQgdmFsdWUuCisgICAgICovCisgICAgQVNTRVJUKHBhZ2V0YWJsZV9p
c19udWxsKG9sZF9lbnRyeSkgfHwgcm9vdF90eXBlID09IFNIX3R5cGVfbDRf
NjRfc2hhZG93KTsKKworICAgIHJldHVybiBvbGRfZW50cnk7Cit9CisKKy8q
CisgKiBIZWxwZXIgaW52b2tlZCB3aGVuIHJlbGVhc2luZyBvZiBhIHRvcC1s
ZXZlbCBzaGFkb3cncyByZWZlcmVuY2Ugd2FzCisgKiBkZWZlcnJlZCBpbiBz
aF9zZXRfdG9wbGV2ZWxfc2hhZG93KCkgYWJvdmUuCisgKi8KK3ZvaWQgc2hh
ZG93X3B1dF90b3BfbGV2ZWwoc3RydWN0IGRvbWFpbiAqZCwgcGFnZXRhYmxl
X3Qgb2xkX2VudHJ5KQoreworICAgIEFTU0VSVCghcGFnZXRhYmxlX2lzX251
bGwob2xkX2VudHJ5KSk7CisgICAgcGFnaW5nX2xvY2soZCk7CisgICAgc2hf
cHV0X3JlZihkLCBwYWdldGFibGVfZ2V0X21mbihvbGRfZW50cnkpLCAwKTsK
KyAgICBwYWdpbmdfdW5sb2NrKGQpOwogfQogCiAvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKiovCi0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9zaGFkb3cv
bXVsdGkuYworKysgYi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L211bHRpLmMK
QEAgLTMxNTYsNyArMzE1Niw4IEBAIHNoX3VwZGF0ZV9saW5lYXJfZW50cmll
cyhzdHJ1Y3QgdmNwdSAqdikKICAgICBzaF9mbHVzaF9sb2NhbChkKTsKIH0K
IAotc3RhdGljIHZvaWQgY2ZfY2hlY2sgc2hfdXBkYXRlX2NyMyhzdHJ1Y3Qg
dmNwdSAqdiwgaW50IGRvX2xvY2tpbmcsIGJvb2wgbm9mbHVzaCkKK3N0YXRp
YyBwYWdldGFibGVfdCBjZl9jaGVjayBzaF91cGRhdGVfY3IzKHN0cnVjdCB2
Y3B1ICp2LCBib29sIGRvX2xvY2tpbmcsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBib29sIG5vZmx1c2gpCiAvKiBVcGRh
dGVzIHZjcHUtPmFyY2guY3IzIGFmdGVyIHRoZSBndWVzdCBoYXMgY2hhbmdl
ZCBDUjMuCiAgKiBQYXJhdmlydHVhbCBndWVzdHMgc2hvdWxkIHNldCB2LT5h
cmNoLmd1ZXN0X3RhYmxlIChhbmQgZ3Vlc3RfdGFibGVfdXNlciwKICAqIGlm
IGFwcHJvcHJpYXRlKS4KQEAgLTMxNzAsNiArMzE3MSw3IEBAIHN0YXRpYyB2
b2lkIGNmX2NoZWNrIHNoX3VwZGF0ZV9jcjMoc3RydWMKIHsKICAgICBzdHJ1
Y3QgZG9tYWluICpkID0gdi0+ZG9tYWluOwogICAgIG1mbl90IGdtZm47Cisg
ICAgcGFnZXRhYmxlX3Qgb2xkX2VudHJ5ID0gcGFnZXRhYmxlX251bGwoKTsK
ICNpZiBHVUVTVF9QQUdJTkdfTEVWRUxTID09IDMKICAgICBjb25zdCBndWVz
dF9sM2VfdCAqZ2wzZTsKICAgICB1bnNpZ25lZCBpbnQgaSwgZ3Vlc3RfaWR4
OwpAQCAtMzE3OSw3ICszMTgxLDcgQEAgc3RhdGljIHZvaWQgY2ZfY2hlY2sg
c2hfdXBkYXRlX2NyMyhzdHJ1YwogICAgIGlmICggIWlzX2h2bV9kb21haW4o
ZCkgJiYgIXYtPmlzX2luaXRpYWxpc2VkICkKICAgICB7CiAgICAgICAgIEFT
U0VSVCh2LT5hcmNoLmNyMyA9PSAwKTsKLSAgICAgICAgcmV0dXJuOworICAg
ICAgICByZXR1cm4gb2xkX2VudHJ5OwogICAgIH0KIAogICAgIGlmICggZG9f
bG9ja2luZyApIHBhZ2luZ19sb2NrKHYtPmRvbWFpbik7CkBAIC0zMjUyLDEx
ICszMjU0LDEyIEBAIHN0YXRpYyB2b2lkIGNmX2NoZWNrIHNoX3VwZGF0ZV9j
cjMoc3RydWMKICNpZiBHVUVTVF9QQUdJTkdfTEVWRUxTID09IDQKICAgICBp
ZiAoIHNoX3JlbW92ZV93cml0ZV9hY2Nlc3MoZCwgZ21mbiwgNCwgMCkgIT0g
MCApCiAgICAgICAgIGd1ZXN0X2ZsdXNoX3RsYl9tYXNrKGQsIGQtPmRpcnR5
X2NwdW1hc2spOwotICAgIHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgMCwg
Z21mbiwgU0hfdHlwZV9sNF9zaGFkb3csIHNoX21ha2Vfc2hhZG93KTsKKyAg
ICBvbGRfZW50cnkgPSBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIDAsIGdt
Zm4sIFNIX3R5cGVfbDRfc2hhZG93LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2hfbWFrZV9zaGFkb3cpOwogICAgIGlmICgg
dW5saWtlbHkocGFnZXRhYmxlX2lzX251bGwodi0+YXJjaC5wYWdpbmcuc2hh
ZG93LnNoYWRvd190YWJsZVswXSkpICkKICAgICB7CiAgICAgICAgIEFTU0VS
VChkLT5pc19keWluZyB8fCBkLT5pc19zaHV0dGluZ19kb3duKTsKLSAgICAg
ICAgcmV0dXJuOworICAgICAgICByZXR1cm4gb2xkX2VudHJ5OwogICAgIH0K
ICAgICBpZiAoICFzaGFkb3dfbW9kZV9leHRlcm5hbChkKSAmJiAhaXNfcHZf
MzJiaXRfZG9tYWluKGQpICkKICAgICB7CkBAIC0zMzAwLDI0ICszMzAzLDMw
IEBAIHN0YXRpYyB2b2lkIGNmX2NoZWNrIHNoX3VwZGF0ZV9jcjMoc3RydWMK
ICAgICAgICAgICAgICAgICBnbDJnZm4gPSBndWVzdF9sM2VfZ2V0X2dmbihn
bDNlW2ldKTsKICAgICAgICAgICAgICAgICBnbDJtZm4gPSBnZXRfZ2ZuX3F1
ZXJ5X3VubG9ja2VkKGQsIGdmbl94KGdsMmdmbiksICZwMm10KTsKICAgICAg
ICAgICAgICAgICBpZiAoIHAybV9pc19yYW0ocDJtdCkgKQotICAgICAgICAg
ICAgICAgICAgICBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIGksIGdsMm1m
biwgU0hfdHlwZV9sMl9zaGFkb3csCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2hfbWFrZV9zaGFkb3cpOworICAgICAg
ICAgICAgICAgICAgICBvbGRfZW50cnkgPSBzaF9zZXRfdG9wbGV2ZWxfc2hh
ZG93KHYsIGksIGdsMm1mbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTSF90eXBlX2wyX3NoYWRv
dywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzaF9tYWtlX3NoYWRvdyk7CiAgICAgICAgICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgICAgICAgICBzaF9zZXRfdG9wbGV2ZWxf
c2hhZG93KHYsIGksIElOVkFMSURfTUZOLCAwLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93KTsK
KyAgICAgICAgICAgICAgICAgICAgb2xkX2VudHJ5ID0gc2hfc2V0X3RvcGxl
dmVsX3NoYWRvdyh2LCBpLCBJTlZBTElEX01GTiwgMCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
aF9tYWtlX3NoYWRvdyk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBl
bHNlCi0gICAgICAgICAgICAgICAgc2hfc2V0X3RvcGxldmVsX3NoYWRvdyh2
LCBpLCBJTlZBTElEX01GTiwgMCwgc2hfbWFrZV9zaGFkb3cpOworICAgICAg
ICAgICAgICAgIG9sZF9lbnRyeSA9IHNoX3NldF90b3BsZXZlbF9zaGFkb3co
diwgaSwgSU5WQUxJRF9NRk4sIDAsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaF9tYWtlX3NoYWRvdyk7
CisKKyAgICAgICAgICAgIEFTU0VSVChwYWdldGFibGVfaXNfbnVsbChvbGRf
ZW50cnkpKTsKICAgICAgICAgfQogICAgIH0KICNlbGlmIEdVRVNUX1BBR0lO
R19MRVZFTFMgPT0gMgogICAgIGlmICggc2hfcmVtb3ZlX3dyaXRlX2FjY2Vz
cyhkLCBnbWZuLCAyLCAwKSAhPSAwICkKICAgICAgICAgZ3Vlc3RfZmx1c2hf
dGxiX21hc2soZCwgZC0+ZGlydHlfY3B1bWFzayk7Ci0gICAgc2hfc2V0X3Rv
cGxldmVsX3NoYWRvdyh2LCAwLCBnbWZuLCBTSF90eXBlX2wyX3NoYWRvdywg
c2hfbWFrZV9zaGFkb3cpOworICAgIG9sZF9lbnRyeSA9IHNoX3NldF90b3Bs
ZXZlbF9zaGFkb3codiwgMCwgZ21mbiwgU0hfdHlwZV9sMl9zaGFkb3csCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaF9tYWtl
X3NoYWRvdyk7CisgICAgQVNTRVJUKHBhZ2V0YWJsZV9pc19udWxsKG9sZF9l
bnRyeSkpOwogICAgIGlmICggdW5saWtlbHkocGFnZXRhYmxlX2lzX251bGwo
di0+YXJjaC5wYWdpbmcuc2hhZG93LnNoYWRvd190YWJsZVswXSkpICkKICAg
ICB7CiAgICAgICAgIEFTU0VSVChkLT5pc19keWluZyB8fCBkLT5pc19zaHV0
dGluZ19kb3duKTsKLSAgICAgICAgcmV0dXJuOworICAgICAgICByZXR1cm4g
b2xkX2VudHJ5OwogICAgIH0KICNlbHNlCiAjZXJyb3IgVGhpcyBzaG91bGQg
bmV2ZXIgaGFwcGVuCkBAIC0zNDA1LDYgKzM0MTQsOCBAQCBzdGF0aWMgdm9p
ZCBjZl9jaGVjayBzaF91cGRhdGVfY3IzKHN0cnVjCiAKICAgICAvKiBSZWxl
YXNlIHRoZSBsb2NrLCBpZiB3ZSB0b29rIGl0IChvdGhlcndpc2UgaXQncyB0
aGUgY2FsbGVyJ3MgcHJvYmxlbSkgKi8KICAgICBpZiAoIGRvX2xvY2tpbmcg
KSBwYWdpbmdfdW5sb2NrKHYtPmRvbWFpbik7CisKKyAgICByZXR1cm4gb2xk
X2VudHJ5OwogfQogCiAKLS0tIGEveGVuL2FyY2gveDg2L21tL3NoYWRvdy9u
b25lLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3NoYWRvdy9ub25lLmMKQEAg
LTU1LDkgKzU1LDExIEBAIHN0YXRpYyB1bnNpZ25lZCBsb25nIGNmX2NoZWNr
IF9ndmFfdG9fZ2YKIH0KICNlbmRpZgogCi1zdGF0aWMgdm9pZCBjZl9jaGVj
ayBfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgaW50IGRvX2xvY2tpbmcs
IGJvb2wgbm9mbHVzaCkKK3N0YXRpYyBwYWdldGFibGVfdCBjZl9jaGVjayBf
dXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBkb19sb2NraW5nLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wg
bm9mbHVzaCkKIHsKICAgICBBU1NFUlRfVU5SRUFDSEFCTEUoKTsKKyAgICBy
ZXR1cm4gcGFnZXRhYmxlX251bGwoKTsKIH0KIAogc3RhdGljIGNvbnN0IHN0
cnVjdCBwYWdpbmdfbW9kZSBzaF9wYWdpbmdfbm9uZSA9IHsKLS0tIGEveGVu
L2FyY2gveDg2L21tL3NoYWRvdy9wcml2YXRlLmgKKysrIGIveGVuL2FyY2gv
eDg2L21tL3NoYWRvdy9wcml2YXRlLmgKQEAgLTM4MywxMyArMzgzLDEzIEBA
IG1mbl90IHNoYWRvd19hbGxvYyhzdHJ1Y3QgZG9tYWluICpkLAogdm9pZCAg
c2hhZG93X2ZyZWUoc3RydWN0IGRvbWFpbiAqZCwgbWZuX3Qgc21mbik7CiAK
IC8qIFNldCB1cCB0aGUgdG9wLWxldmVsIHNoYWRvdyBhbmQgaW5zdGFsbCBp
dCBpbiBzbG90ICdzbG90JyBvZiBzaGFkb3dfdGFibGUgKi8KLXZvaWQgc2hf
c2V0X3RvcGxldmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdSAqdiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgc2xvdCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCBnbWZuLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCByb290X3R5cGUsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3QgKCptYWtlX3NoYWRv
dykoc3RydWN0IHZjcHUgKnYsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3QgZ21mbiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50
MzJfdCBzaGFkb3dfdHlwZSkpOworcGFnZXRhYmxlX3Qgc2hfc2V0X3RvcGxl
dmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdSAqdiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHNsb3QsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBy
b290X3R5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG1mbl90ICgqbWFrZV9zaGFkb3cpKHN0cnVjdCB2Y3B1ICp2LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBtZm5fdCBnbWZuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzaGFkb3df
dHlwZSkpOwogCiAvKiBVcGRhdGUgdGhlIHNoYWRvd3MgaW4gcmVzcG9uc2Ug
dG8gYSBwYWdldGFibGUgd3JpdGUgZnJvbSBYZW4gKi8KIGludCBzaF92YWxp
ZGF0ZV9ndWVzdF9lbnRyeShzdHJ1Y3QgdmNwdSAqdiwgbWZuX3QgZ21mbiwg
dm9pZCAqZW50cnksIHUzMiBzaXplKTsKLS0tIGEveGVuL2FyY2gveDg2L21t
LmMKKysrIGIveGVuL2FyY2gveDg2L21tLmMKQEAgLTU0OSwxNSArNTQ5LDEy
IEBAIHZvaWQgd3JpdGVfcHRiYXNlKHN0cnVjdCB2Y3B1ICp2KQogICoKICAq
IFVwZGF0ZSByZWYgY291bnRzIHRvIHNoYWRvdyB0YWJsZXMgYXBwcm9wcmlh
dGVseS4KICAqLwotdm9pZCB1cGRhdGVfY3IzKHN0cnVjdCB2Y3B1ICp2KQor
cGFnZXRhYmxlX3QgdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdikKIHsKICAg
ICBtZm5fdCBjcjNfbWZuOwogCiAgICAgaWYgKCBwYWdpbmdfbW9kZV9lbmFi
bGVkKHYtPmRvbWFpbikgKQotICAgIHsKLSAgICAgICAgcGFnaW5nX3VwZGF0
ZV9jcjModiwgZmFsc2UpOwotICAgICAgICByZXR1cm47Ci0gICAgfQorICAg
ICAgICByZXR1cm4gcGFnaW5nX3VwZGF0ZV9jcjModiwgZmFsc2UpOwogCiAg
ICAgaWYgKCAhKHYtPmFyY2guZmxhZ3MgJiBURl9rZXJuZWxfbW9kZSkgKQog
ICAgICAgICBjcjNfbWZuID0gcGFnZXRhYmxlX2dldF9tZm4odi0+YXJjaC5n
dWVzdF90YWJsZV91c2VyKTsKQEAgLTU2NSw2ICs1NjIsOCBAQCB2b2lkIHVw
ZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYpCiAgICAgICAgIGNyM19tZm4gPSBw
YWdldGFibGVfZ2V0X21mbih2LT5hcmNoLmd1ZXN0X3RhYmxlKTsKIAogICAg
IG1ha2VfY3IzKHYsIGNyM19tZm4pOworCisgICAgcmV0dXJuIHBhZ2V0YWJs
ZV9udWxsKCk7CiB9CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBzZXRfdGxiZmx1
c2hfdGltZXN0YW1wKHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UpCkBAIC0zMjY5
LDYgKzMyNjgsNyBAQCBpbnQgbmV3X2d1ZXN0X2NyMyhtZm5fdCBtZm4pCiAg
ICAgc3RydWN0IGRvbWFpbiAqZCA9IGN1cnItPmRvbWFpbjsKICAgICBpbnQg
cmM7CiAgICAgbWZuX3Qgb2xkX2Jhc2VfbWZuOworICAgIHBhZ2V0YWJsZV90
IG9sZF9zaGFkb3c7CiAKICAgICBpZiAoIGlzX3B2XzMyYml0X2RvbWFpbihk
KSApCiAgICAgewpAQCAtMzMzNiw5ICszMzM2LDIyIEBAIGludCBuZXdfZ3Vl
c3RfY3IzKG1mbl90IG1mbikKICAgICBpZiAoICFWTV9BU1NJU1QoZCwgbTJw
X3N0cmljdCkgKQogICAgICAgICBmaWxsX3JvX21wdChtZm4pOwogICAgIGN1
cnItPmFyY2guZ3Vlc3RfdGFibGUgPSBwYWdldGFibGVfZnJvbV9tZm4obWZu
KTsKLSAgICB1cGRhdGVfY3IzKGN1cnIpOworICAgIG9sZF9zaGFkb3cgPSB1
cGRhdGVfY3IzKGN1cnIpOworCisgICAgLyoKKyAgICAgKiBJbiBzaGFkb3cg
bW9kZSB1cGRhdGVfY3IzKCkgY2FuIGZhaWwsIGluIHdoaWNoIGNhc2UgaGVy
ZSB3ZSdyZSBzdGlsbAorICAgICAqIHJ1bm5pbmcgb24gdGhlIHByaW9yIHRv
cC1sZXZlbCBzaGFkb3cgKHdoaWNoIHdlJ3JlIGFib3V0IHRvIHJlbGVhc2Up
LgorICAgICAqIFN3aXRjaCB0byB0aGUgaWRsZSBwYWdlIHRhYmxlcyBpbiBz
dWNoIGFuIGV2ZW50OyB0aGUgZ3Vlc3Qgd2lsbCBoYXZlCisgICAgICogYmVl
biBjcmFzaGVkIGFscmVhZHkuCisgICAgICovCisgICAgaWYgKCBsaWtlbHko
IW1mbl9lcShwYWdldGFibGVfZ2V0X21mbihvbGRfc2hhZG93KSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgIG1hZGRyX3RvX21mbihjdXJyLT5hcmNoLmNy
MyAmIH5YODZfQ1IzX05PRkxVU0gpKSkgKQorICAgICAgICB3cml0ZV9wdGJh
c2UoY3Vycik7CisgICAgZWxzZQorICAgICAgICB3cml0ZV9wdGJhc2UoaWRs
ZV92Y3B1W2N1cnItPnByb2Nlc3Nvcl0pOwogCi0gICAgd3JpdGVfcHRiYXNl
KGN1cnIpOworICAgIGlmICggIXBhZ2V0YWJsZV9pc19udWxsKG9sZF9zaGFk
b3cpICkKKyAgICAgICAgc2hhZG93X3B1dF90b3BfbGV2ZWwoZCwgb2xkX3No
YWRvdyk7CiAKICAgICBpZiAoIGxpa2VseShtZm5feChvbGRfYmFzZV9tZm4p
ICE9IDApICkKICAgICB7Ci0tLSBhL3hlbi9hcmNoL3g4Ni9wdi9kb21haW4u
YworKysgYi94ZW4vYXJjaC94ODYvcHYvZG9tYWluLmMKQEAgLTQyNCwxMCAr
NDI0LDEzIEBAIGJvb2wgX19pbml0IHhwdGlfcGNpZF9lbmFibGVkKHZvaWQp
CiAKIHN0YXRpYyB2b2lkIF90b2dnbGVfZ3Vlc3RfcHQoc3RydWN0IHZjcHUg
KnYpCiB7CisgICAgYm9vbCBndWVzdF91cGRhdGU7CisgICAgcGFnZXRhYmxl
X3Qgb2xkX3NoYWRvdzsKICAgICB1bnNpZ25lZCBsb25nIGNyMzsKIAogICAg
IHYtPmFyY2guZmxhZ3MgXj0gVEZfa2VybmVsX21vZGU7Ci0gICAgdXBkYXRl
X2NyMyh2KTsKKyAgICBndWVzdF91cGRhdGUgPSB2LT5hcmNoLmZsYWdzICYg
VEZfa2VybmVsX21vZGU7CisgICAgb2xkX3NoYWRvdyA9IHVwZGF0ZV9jcjMo
dik7CiAKICAgICAvKgogICAgICAqIERvbid0IGZsdXNoIHVzZXIgZ2xvYmFs
IG1hcHBpbmdzIGZyb20gdGhlIFRMQi4gRG9uJ3QgdGljayBUTEIgY2xvY2su
CkBAIC00MzYsMTMgKzQzOSwzMSBAQCBzdGF0aWMgdm9pZCBfdG9nZ2xlX2d1
ZXN0X3B0KHN0cnVjdCB2Y3B1CiAgICAgICogVExCIGZsdXNoIChmb3IganVz
dCB0aGUgaW5jb21pbmcgUENJRCksIGFzIHRoZSB0b3AgbGV2ZWwgcGFnZSB0
YWJsZSBtYXkKICAgICAgKiBoYXZlIGNoYW5nZWQgYmVoaW5kIG91ciBiYWNr
cy4gVG8gYmUgb24gdGhlIHNhZmUgc2lkZSwgc3VwcHJlc3MgdGhlCiAgICAg
ICogbm8tZmx1c2ggdW5jb25kaXRpb25hbGx5IGluIHRoaXMgY2FzZS4KKyAg
ICAgKgorICAgICAqIEZ1cnRoZXJtb3JlIGluIHNoYWRvdyBtb2RlIHVwZGF0
ZV9jcjMoKSBjYW4gZmFpbCwgaW4gd2hpY2ggY2FzZSBoZXJlCisgICAgICog
d2UncmUgc3RpbGwgcnVubmluZyBvbiB0aGUgcHJpb3IgdG9wLWxldmVsIHNo
YWRvdyAod2hpY2ggd2UncmUgYWJvdXQKKyAgICAgKiB0byByZWxlYXNlKS4g
U3dpdGNoIHRvIHRoZSBpZGxlIHBhZ2UgdGFibGVzIGluIHN1Y2ggYW4gZXZl
bnQ7IHRoZQorICAgICAqIGd1ZXN0IHdpbGwgaGF2ZSBiZWVuIGNyYXNoZWQg
YWxyZWFkeS4KICAgICAgKi8KICAgICBjcjMgPSB2LT5hcmNoLmNyMzsKICAg
ICBpZiAoIHNoYWRvd19tb2RlX2VuYWJsZWQodi0+ZG9tYWluKSApCisgICAg
ewogICAgICAgICBjcjMgJj0gflg4Nl9DUjNfTk9GTFVTSDsKKworICAgICAg
ICBpZiAoIHVubGlrZWx5KG1mbl9lcShwYWdldGFibGVfZ2V0X21mbihvbGRf
c2hhZG93KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFkZHJf
dG9fbWZuKGNyMykpKSApCisgICAgICAgIHsKKyAgICAgICAgICAgIGNyMyA9
IGlkbGVfdmNwdVt2LT5wcm9jZXNzb3JdLT5hcmNoLmNyMzsKKyAgICAgICAg
ICAgIC8qIEFsc28gc3VwcHJlc3MgcnVuc3RhdGUvdGltZSBhcmVhIHVwZGF0
ZXMgYmVsb3cuICovCisgICAgICAgICAgICBndWVzdF91cGRhdGUgPSBmYWxz
ZTsKKyAgICAgICAgfQorICAgIH0KICAgICB3cml0ZV9jcjMoY3IzKTsKIAot
ICAgIGlmICggISh2LT5hcmNoLmZsYWdzICYgVEZfa2VybmVsX21vZGUpICkK
KyAgICBpZiAoICFwYWdldGFibGVfaXNfbnVsbChvbGRfc2hhZG93KSApCisg
ICAgICAgIHNoYWRvd19wdXRfdG9wX2xldmVsKHYtPmRvbWFpbiwgb2xkX3No
YWRvdyk7CisKKyAgICBpZiAoICFndWVzdF91cGRhdGUgKQogICAgICAgICBy
ZXR1cm47CiAKICAgICBpZiAoIHYtPmFyY2gucHYubmVlZF91cGRhdGVfcnVu
c3RhdGVfYXJlYSAmJiB1cGRhdGVfcnVuc3RhdGVfYXJlYSh2KSApCg==

--=separator
Content-Type: application/octet-stream; name="xsa438-4.15.patch"
Content-Disposition: attachment; filename="xsa438-4.15.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvc2hhZG93OiBkZWZlciByZWxlYXNpbmcgb2YgUFYncyB0b3AtbGV2
ZWwgc2hhZG93IHJlZmVyZW5jZQoKc2hfc2V0X3RvcGxldmVsX3NoYWRvdygp
IHJlLXBpbm5pbmcgdGhlIHRvcC1sZXZlbCBzaGFkb3cgd2UgbWF5IGJlCnJ1
bm5pbmcgb24gaXMgbm90IGVub3VnaCAoYW5kIGF0IHRoZSBzYW1lIHRpbWUg
dW5uZWNlc3Nhcnkgd2hlbiB0aGUKc2hhZG93IGlzbid0IHdoYXQgd2UncmUg
cnVubmluZyBvbik6IFRoYXQgc2hhZG93IGJlY29tZXMgZWxpZ2libGUgZm9y
CmJsb3dpbmcgYXdheSAoZnJvbSBlLmcuIHNoYWRvd19wcmVhbGxvYygpKSBp
bW1lZGlhdGVseSBhZnRlciB0aGUKcGFnaW5nIGxvY2sgd2FzIGRyb3BwZWQu
IFlldCBpdCBuZWVkcyB0byByZW1haW4gdmFsaWQgdW50aWwgdGhlIGFjdHVh
bApwYWdlIHRhYmxlIHN3aXRjaCBvY2N1cnJlZC4KClByb3BhZ2F0ZSB1cCB0
aGUgY2FsbCBjaGFpbiB0aGUgc2hhZG93IGVudHJ5IHRoYXQgbmVlZHMgcmVs
ZWFzaW5nCmV2ZW50dWFsbHksIGFuZCBjYXJyeSBvdXQgdGhlIHJlbGVhc2Ug
aW1tZWRpYXRlbHkgYWZ0ZXIgc3dpdGNoaW5nIHBhZ2UKdGFibGVzLiBIYW5k
bGUgdXBkYXRlX2NyMygpIGZhaWx1cmVzIGJ5IHN3aXRjaGluZyB0byBpZGxl
IHBhZ2V0YWJsZXMuCk5vdGUgdGhhdCB2YXJpb3VzIGZ1cnRoZXIgdXNlcyBv
ZiB1cGRhdGVfY3IzKCkgYXJlIEhWTS1vbmx5IG9yIG9ubHkgYWN0Cm9uIHBh
dXNlZCB2Q1BVLXMsIGluIHdoaWNoIGNhc2Ugc2hfc2V0X3RvcGxldmVsX3No
YWRvdygpIHdpbGwgbm90IGRlZmVyCnJlbGVhc2luZyBvZiB0aGUgcmVmZXJl
bmNlLgoKV2hpbGUgY2hhbmdpbmcgdGhlIHVwZGF0ZV9jcjMoKSBob29rLCBh
bHNvIGNvbnZlcnQgdGhlICJkb19sb2NraW5nIgpwYXJhbWV0ZXIgdG8gYm9v
bGVhbi4KClRoaXMgaXMgQ1ZFLTIwMjMtMzQzMjIgLyBYU0EtNDM4LgoKUmVw
b3J0ZWQtYnk6IFRpbSBEZWVnYW4gPHRpbUB4ZW4ub3JnPgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNsb3VkLmNvbT4K
Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFwLmMKKysrIGIveGVuL2Fy
Y2gveDg2L21tL2hhcC9oYXAuYwpAQCAtNzI4LDEwICs3MjgsMTIgQEAgc3Rh
dGljIGJvb2xfdCBoYXBfaW52bHBnKHN0cnVjdCB2Y3B1ICp2LAogICAgIHJl
dHVybiAxOwogfQogCi1zdGF0aWMgdm9pZCBoYXBfdXBkYXRlX2NyMyhzdHJ1
Y3QgdmNwdSAqdiwgaW50IGRvX2xvY2tpbmcsIGJvb2wgbm9mbHVzaCkKK3N0
YXRpYyBwYWdldGFibGVfdCBoYXBfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAq
diwgYm9vbCBkb19sb2NraW5nLCBib29sIG5vZmx1c2gpCiB7CiAgICAgdi0+
YXJjaC5odm0uaHdfY3JbM10gPSB2LT5hcmNoLmh2bS5ndWVzdF9jclszXTsK
ICAgICBodm1fdXBkYXRlX2d1ZXN0X2NyMyh2LCBub2ZsdXNoKTsKKworICAg
IHJldHVybiBwYWdldGFibGVfbnVsbCgpOwogfQogCiAvKgotLS0gYS94ZW4v
YXJjaC94ODYvbW0vc2hhZG93L2NvbW1vbi5jCisrKyBiL3hlbi9hcmNoL3g4
Ni9tbS9zaGFkb3cvY29tbW9uLmMKQEAgLTI2NDEsMTMgKzI2NDEsMTMgQEAg
dm9pZCBzaGFkb3dfdXBkYXRlX3BhZ2luZ19tb2RlcyhzdHJ1Y3QgdgogfQog
CiAvKiBTZXQgdXAgdGhlIHRvcC1sZXZlbCBzaGFkb3cgYW5kIGluc3RhbGwg
aXQgaW4gc2xvdCAnc2xvdCcgb2Ygc2hhZG93X3RhYmxlICovCi12b2lkIHNo
X3NldF90b3BsZXZlbF9zaGFkb3coc3RydWN0IHZjcHUgKnYsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHNsb3QsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3QgZ21mbiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgcm9vdF90eXBlLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90ICgqbWFrZV9zaGFk
b3cpKHN0cnVjdCB2Y3B1ICp2LAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDMyX3Qgc2hhZG93X3R5cGUpKQorcGFnZXRhYmxlX3Qgc2hfc2V0X3RvcGxl
dmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdSAqdiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHNsb3QsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBy
b290X3R5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG1mbl90ICgqbWFrZV9zaGFkb3cpKHN0cnVjdCB2Y3B1ICp2LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBtZm5fdCBnbWZuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzaGFkb3df
dHlwZSkpCiB7CiAgICAgbWZuX3Qgc21mbjsKICAgICBwYWdldGFibGVfdCBv
bGRfZW50cnksIG5ld19lbnRyeTsKQEAgLTI3MDQsMjAgKzI3MDQsMzcgQEAg
dm9pZCBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHN0cnVjdCB2Y3B1CiAgICAg
ICAgICAgICAgICAgICBtZm5feChnbWZuKSwgbWZuX3gocGFnZXRhYmxlX2dl
dF9tZm4obmV3X2VudHJ5KSkpOwogICAgIHYtPmFyY2gucGFnaW5nLnNoYWRv
dy5zaGFkb3dfdGFibGVbc2xvdF0gPSBuZXdfZW50cnk7CiAKLSAgICAvKiBE
ZWNyZW1lbnQgdGhlIHJlZmNvdW50IG9mIHRoZSBvbGQgY29udGVudHMgb2Yg
dGhpcyBzbG90ICovCi0gICAgaWYgKCAhcGFnZXRhYmxlX2lzX251bGwob2xk
X2VudHJ5KSApCisgICAgLyoKKyAgICAgKiBEZWNyZW1lbnQgdGhlIHJlZmNv
dW50IG9mIHRoZSBvbGQgY29udGVudHMgb2YgdGhpcyBzbG90LCB1bmxlc3MK
KyAgICAgKiB3ZSdyZSBzdGlsbCBydW5uaW5nIG9uIHRoYXQgc2hhZG93IC0g
aW4gdGhhdCBjYXNlIGl0J2xsIG5lZWQgaG9sZGluZworICAgICAqIG9uIHRv
IHVudGlsIHRoZSBhY3R1YWwgcGFnZSB0YWJsZSBzd2l0Y2ggZGlkIG9jY3Vy
LgorICAgICAqLworICAgIGlmICggIXBhZ2V0YWJsZV9pc19udWxsKG9sZF9l
bnRyeSkgJiYgKHYgIT0gY3VycmVudCB8fCAhaXNfcHZfZG9tYWluKGQpKSAp
CiAgICAgewotICAgICAgICBtZm5fdCBvbGRfc21mbiA9IHBhZ2V0YWJsZV9n
ZXRfbWZuKG9sZF9lbnRyeSk7Ci0gICAgICAgIC8qIE5lZWQgdG8gcmVwaW4g
dGhlIG9sZCB0b3BsZXZlbCBzaGFkb3cgaWYgaXQncyBiZWVuIHVucGlubmVk
Ci0gICAgICAgICAqIGJ5IHNoYWRvd19wcmVhbGxvYygpOiBpbiBQViBtb2Rl
IHdlJ3JlIHN0aWxsIHJ1bm5pbmcgb24gdGhpcwotICAgICAgICAgKiBzaGFk
b3cgYW5kIGl0J3Mgbm90IHNhZmUgdG8gZnJlZSBpdCB5ZXQuICovCi0gICAg
ICAgIGlmICggIW1mbl90b19wYWdlKG9sZF9zbWZuKS0+dS5zaC5waW5uZWQg
JiYgIXNoX3BpbihkLCBvbGRfc21mbikgKQotICAgICAgICB7Ci0gICAgICAg
ICAgICBwcmludGsoWEVOTE9HX0dfRVJSICJjYW4ndCByZS1waW4gJSJQUklf
bWZuIlxuIiwgbWZuX3gob2xkX3NtZm4pKTsKLSAgICAgICAgICAgIGRvbWFp
bl9jcmFzaChkKTsKLSAgICAgICAgfQotICAgICAgICBzaF9wdXRfcmVmKGQs
IG9sZF9zbWZuLCAwKTsKKyAgICAgICAgc2hfcHV0X3JlZihkLCBwYWdldGFi
bGVfZ2V0X21mbihvbGRfZW50cnkpLCAwKTsKKyAgICAgICAgb2xkX2VudHJ5
ID0gcGFnZXRhYmxlX251bGwoKTsKICAgICB9CisKKyAgICAvKgorICAgICAq
IDItIGFuZCAzLWxldmVsIHNoYWRvdyBtb2RlIGlzIHVzZWQgZm9yIEhWTSBv
bmx5LiBUaGVyZWZvcmUgd2UgbmV2ZXIgcnVuCisgICAgICogb24gc3VjaCBh
IHNoYWRvdywgc28gb25seSBjYWxsIHNpdGVzIHJlcXVlc3RpbmcgYW4gTDQg
c2hhZG93IG5lZWQgdG8gcGF5CisgICAgICogYXR0ZW50aW9uIHRvIHRoZSBy
ZXR1cm5lZCB2YWx1ZS4KKyAgICAgKi8KKyAgICBBU1NFUlQocGFnZXRhYmxl
X2lzX251bGwob2xkX2VudHJ5KSB8fCByb290X3R5cGUgPT0gU0hfdHlwZV9s
NF82NF9zaGFkb3cpOworCisgICAgcmV0dXJuIG9sZF9lbnRyeTsKK30KKwor
LyoKKyAqIEhlbHBlciBpbnZva2VkIHdoZW4gcmVsZWFzaW5nIG9mIGEgdG9w
LWxldmVsIHNoYWRvdydzIHJlZmVyZW5jZSB3YXMKKyAqIGRlZmVycmVkIGlu
IHNoX3NldF90b3BsZXZlbF9zaGFkb3coKSBhYm92ZS4KKyAqLwordm9pZCBz
aGFkb3dfcHV0X3RvcF9sZXZlbChzdHJ1Y3QgZG9tYWluICpkLCBwYWdldGFi
bGVfdCBvbGRfZW50cnkpCit7CisgICAgQVNTRVJUKCFwYWdldGFibGVfaXNf
bnVsbChvbGRfZW50cnkpKTsKKyAgICBwYWdpbmdfbG9jayhkKTsKKyAgICBz
aF9wdXRfcmVmKGQsIHBhZ2V0YWJsZV9nZXRfbWZuKG9sZF9lbnRyeSksIDAp
OworICAgIHBhZ2luZ191bmxvY2soZCk7CiB9CiAKIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKi8KLS0tIGEveGVuL2FyY2gveDg2L21tL3NoYWRv
dy9tdWx0aS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9zaGFkb3cvbXVsdGku
YwpAQCAtMzYwNCw4ICszNjA0LDggQEAgc2hfZGV0YWNoX29sZF90YWJsZXMo
c3RydWN0IHZjcHUgKnYpCiAgICAgfQogfQogCi1zdGF0aWMgdm9pZAotc2hf
dXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgaW50IGRvX2xvY2tpbmcsIGJv
b2wgbm9mbHVzaCkKK3N0YXRpYyBwYWdldGFibGVfdAorc2hfdXBkYXRlX2Ny
MyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBkb19sb2NraW5nLCBib29sIG5vZmx1
c2gpCiAvKiBVcGRhdGVzIHZjcHUtPmFyY2guY3IzIGFmdGVyIHRoZSBndWVz
dCBoYXMgY2hhbmdlZCBDUjMuCiAgKiBQYXJhdmlydHVhbCBndWVzdHMgc2hv
dWxkIHNldCB2LT5hcmNoLmd1ZXN0X3RhYmxlIChhbmQgZ3Vlc3RfdGFibGVf
dXNlciwKICAqIGlmIGFwcHJvcHJpYXRlKS4KQEAgLTM2MTksNiArMzYxOSw3
IEBAIHNoX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGludCBkb19sb2MK
IHsKICAgICBzdHJ1Y3QgZG9tYWluICpkID0gdi0+ZG9tYWluOwogICAgIG1m
bl90IGdtZm47CisgICAgcGFnZXRhYmxlX3Qgb2xkX2VudHJ5ID0gcGFnZXRh
YmxlX251bGwoKTsKICNpZiBHVUVTVF9QQUdJTkdfTEVWRUxTID09IDMgJiYg
ZGVmaW5lZChDT05GSUdfSFZNKQogICAgIGNvbnN0IGd1ZXN0X2wzZV90ICpn
bDNlOwogICAgIHVuc2lnbmVkIGludCBpLCBndWVzdF9pZHg7CkBAIC0zNjI4
LDcgKzM2MjksNyBAQCBzaF91cGRhdGVfY3IzKHN0cnVjdCB2Y3B1ICp2LCBp
bnQgZG9fbG9jCiAgICAgaWYgKCBpc19wdl9kb21haW4oZCkgJiYgIXYtPmlz
X2luaXRpYWxpc2VkICkKICAgICB7CiAgICAgICAgIEFTU0VSVCh2LT5hcmNo
LmNyMyA9PSAwKTsKLSAgICAgICAgcmV0dXJuOworICAgICAgICByZXR1cm4g
b2xkX2VudHJ5OwogICAgIH0KIAogICAgIGlmICggZG9fbG9ja2luZyApIHBh
Z2luZ19sb2NrKHYtPmRvbWFpbik7CkBAIC0zNzAxLDExICszNzAyLDEyIEBA
IHNoX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGludCBkb19sb2MKICNp
ZiBHVUVTVF9QQUdJTkdfTEVWRUxTID09IDQKICAgICBpZiAoIHNoX3JlbW92
ZV93cml0ZV9hY2Nlc3MoZCwgZ21mbiwgNCwgMCkgIT0gMCApCiAgICAgICAg
IGd1ZXN0X2ZsdXNoX3RsYl9tYXNrKGQsIGQtPmRpcnR5X2NwdW1hc2spOwot
ICAgIHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgMCwgZ21mbiwgU0hfdHlw
ZV9sNF9zaGFkb3csIHNoX21ha2Vfc2hhZG93KTsKKyAgICBvbGRfZW50cnkg
PSBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIDAsIGdtZm4sIFNIX3R5cGVf
bDRfc2hhZG93LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc2hfbWFrZV9zaGFkb3cpOwogICAgIGlmICggdW5saWtlbHkocGFn
ZXRhYmxlX2lzX251bGwodi0+YXJjaC5wYWdpbmcuc2hhZG93LnNoYWRvd190
YWJsZVswXSkpICkKICAgICB7CiAgICAgICAgIEFTU0VSVChkLT5pc19keWlu
ZyB8fCBkLT5pc19zaHV0dGluZ19kb3duKTsKLSAgICAgICAgcmV0dXJuOwor
ICAgICAgICByZXR1cm4gb2xkX2VudHJ5OwogICAgIH0KICAgICBpZiAoICFz
aGFkb3dfbW9kZV9leHRlcm5hbChkKSAmJiAhaXNfcHZfMzJiaXRfZG9tYWlu
KGQpICkKICAgICB7CkBAIC0zNzUxLDI2ICszNzUzLDMyIEBAIHNoX3VwZGF0
ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGludCBkb19sb2MKICAgICAgICAgICAg
ICAgICBnbDJnZm4gPSBndWVzdF9sM2VfZ2V0X2dmbihnbDNlW2ldKTsKICAg
ICAgICAgICAgICAgICBnbDJtZm4gPSBnZXRfZ2ZuX3F1ZXJ5X3VubG9ja2Vk
KGQsIGdmbl94KGdsMmdmbiksICZwMm10KTsKICAgICAgICAgICAgICAgICBp
ZiAoIHAybV9pc19yYW0ocDJtdCkgKQotICAgICAgICAgICAgICAgICAgICBz
aF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIGksIGdsMm1mbiwgKGkgPT0gMykK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/
IFNIX3R5cGVfbDJoX3NoYWRvdwotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDogU0hfdHlwZV9sMl9zaGFkb3csCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hfbWFr
ZV9zaGFkb3cpOworICAgICAgICAgICAgICAgICAgICBvbGRfZW50cnkgPSBz
aF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIGksIGdsMm1mbiwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAoaSA9PSAzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgID8gU0hfdHlwZV9sMmhfc2hhZG93Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDogU0hfdHlwZV9sMl9zaGFkb3cpLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNo
X21ha2Vfc2hhZG93KTsKICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAg
ICAgICAgICAgICAgIHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgaSwgSU5W
QUxJRF9NRk4sIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc2hfbWFrZV9zaGFkb3cpOworICAgICAgICAgICAgICAg
ICAgICBvbGRfZW50cnkgPSBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIGks
IElOVkFMSURfTUZOLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93KTsK
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAg
ICAgICBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIGksIElOVkFMSURfTUZO
LCAwLCBzaF9tYWtlX3NoYWRvdyk7CisgICAgICAgICAgICAgICAgb2xkX2Vu
dHJ5ID0gc2hfc2V0X3RvcGxldmVsX3NoYWRvdyh2LCBpLCBJTlZBTElEX01G
TiwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93KTsKKworICAgICAgICAgICAg
QVNTRVJUKHBhZ2V0YWJsZV9pc19udWxsKG9sZF9lbnRyeSkpOwogICAgICAg
ICB9CiAgICAgfQogI2VsaWYgR1VFU1RfUEFHSU5HX0xFVkVMUyA9PSAyCiAg
ICAgaWYgKCBzaF9yZW1vdmVfd3JpdGVfYWNjZXNzKGQsIGdtZm4sIDIsIDAp
ICE9IDAgKQogICAgICAgICBndWVzdF9mbHVzaF90bGJfbWFzayhkLCBkLT5k
aXJ0eV9jcHVtYXNrKTsKLSAgICBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYs
IDAsIGdtZm4sIFNIX3R5cGVfbDJfc2hhZG93LCBzaF9tYWtlX3NoYWRvdyk7
CisgICAgb2xkX2VudHJ5ID0gc2hfc2V0X3RvcGxldmVsX3NoYWRvdyh2LCAw
LCBnbWZuLCBTSF90eXBlX2wyX3NoYWRvdywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93KTsKKyAgICBB
U1NFUlQocGFnZXRhYmxlX2lzX251bGwob2xkX2VudHJ5KSk7CiAgICAgaWYg
KCB1bmxpa2VseShwYWdldGFibGVfaXNfbnVsbCh2LT5hcmNoLnBhZ2luZy5z
aGFkb3cuc2hhZG93X3RhYmxlWzBdKSkgKQogICAgIHsKICAgICAgICAgQVNT
RVJUKGQtPmlzX2R5aW5nIHx8IGQtPmlzX3NodXR0aW5nX2Rvd24pOwotICAg
ICAgICByZXR1cm47CisgICAgICAgIHJldHVybiBvbGRfZW50cnk7CiAgICAg
fQogI2Vsc2UKICNlcnJvciBUaGlzIHNob3VsZCBuZXZlciBoYXBwZW4KQEAg
LTM4NjQsNiArMzg3Miw4IEBAIHNoX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUg
KnYsIGludCBkb19sb2MKIAogICAgIC8qIFJlbGVhc2UgdGhlIGxvY2ssIGlm
IHdlIHRvb2sgaXQgKG90aGVyd2lzZSBpdCdzIHRoZSBjYWxsZXIncyBwcm9i
bGVtKSAqLwogICAgIGlmICggZG9fbG9ja2luZyApIHBhZ2luZ191bmxvY2so
di0+ZG9tYWluKTsKKworICAgIHJldHVybiBvbGRfZW50cnk7CiB9CiAKIAot
LS0gYS94ZW4vYXJjaC94ODYvbW0vc2hhZG93L25vbmUuYworKysgYi94ZW4v
YXJjaC94ODYvbW0vc2hhZG93L25vbmUuYwpAQCAtNTAsOSArNTAsMTAgQEAg
c3RhdGljIHVuc2lnbmVkIGxvbmcgX2d2YV90b19nZm4oc3RydWN0CiAgICAg
cmV0dXJuIGdmbl94KElOVkFMSURfR0ZOKTsKIH0KIAotc3RhdGljIHZvaWQg
X3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGludCBkb19sb2NraW5nLCBi
b29sIG5vZmx1c2gpCitzdGF0aWMgcGFnZXRhYmxlX3QgX3VwZGF0ZV9jcjMo
c3RydWN0IHZjcHUgKnYsIGJvb2wgZG9fbG9ja2luZywgYm9vbCBub2ZsdXNo
KQogewogICAgIEFTU0VSVF9VTlJFQUNIQUJMRSgpOworICAgIHJldHVybiBw
YWdldGFibGVfbnVsbCgpOwogfQogCiBzdGF0aWMgdm9pZCBfdXBkYXRlX3Bh
Z2luZ19tb2RlcyhzdHJ1Y3QgdmNwdSAqdikKLS0tIGEveGVuL2FyY2gveDg2
L21tL3NoYWRvdy9wcml2YXRlLmgKKysrIGIveGVuL2FyY2gveDg2L21tL3No
YWRvdy9wcml2YXRlLmgKQEAgLTM2MCwxMyArMzYwLDEzIEBAIG1mbl90IHNo
YWRvd19hbGxvYyhzdHJ1Y3QgZG9tYWluICpkLAogdm9pZCAgc2hhZG93X2Zy
ZWUoc3RydWN0IGRvbWFpbiAqZCwgbWZuX3Qgc21mbik7CiAKIC8qIFNldCB1
cCB0aGUgdG9wLWxldmVsIHNoYWRvdyBhbmQgaW5zdGFsbCBpdCBpbiBzbG90
ICdzbG90JyBvZiBzaGFkb3dfdGFibGUgKi8KLXZvaWQgc2hfc2V0X3RvcGxl
dmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdSAqdiwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1bnNpZ25lZCBpbnQgc2xvdCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBtZm5fdCBnbWZuLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVuc2lnbmVkIGludCByb290X3R5cGUsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgbWZuX3QgKCptYWtlX3NoYWRvdykoc3RydWN0
IHZjcHUgKnYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbWZuX3QgZ21mbiwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzaGFk
b3dfdHlwZSkpOworcGFnZXRhYmxlX3Qgc2hfc2V0X3RvcGxldmVsX3NoYWRv
dyhzdHJ1Y3QgdmNwdSAqdiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdW5zaWduZWQgaW50IHNsb3QsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCByb290X3R5cGUs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90ICgq
bWFrZV9zaGFkb3cpKHN0cnVjdCB2Y3B1ICp2LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZm5f
dCBnbWZuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzaGFkb3dfdHlwZSkpOwog
CiAvKiBVcGRhdGUgdGhlIHNoYWRvd3MgaW4gcmVzcG9uc2UgdG8gYSBwYWdl
dGFibGUgd3JpdGUgZnJvbSBYZW4gKi8KIGludCBzaF92YWxpZGF0ZV9ndWVz
dF9lbnRyeShzdHJ1Y3QgdmNwdSAqdiwgbWZuX3QgZ21mbiwgdm9pZCAqZW50
cnksIHUzMiBzaXplKTsKLS0tIGEveGVuL2FyY2gveDg2L21tLmMKKysrIGIv
eGVuL2FyY2gveDg2L21tLmMKQEAgLTU2NCwxNSArNTY0LDEyIEBAIHZvaWQg
d3JpdGVfcHRiYXNlKHN0cnVjdCB2Y3B1ICp2KQogICoKICAqIFVwZGF0ZSBy
ZWYgY291bnRzIHRvIHNoYWRvdyB0YWJsZXMgYXBwcm9wcmlhdGVseS4KICAq
Lwotdm9pZCB1cGRhdGVfY3IzKHN0cnVjdCB2Y3B1ICp2KQorcGFnZXRhYmxl
X3QgdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdikKIHsKICAgICBtZm5fdCBj
cjNfbWZuOwogCiAgICAgaWYgKCBwYWdpbmdfbW9kZV9lbmFibGVkKHYtPmRv
bWFpbikgKQotICAgIHsKLSAgICAgICAgcGFnaW5nX3VwZGF0ZV9jcjModiwg
ZmFsc2UpOwotICAgICAgICByZXR1cm47Ci0gICAgfQorICAgICAgICByZXR1
cm4gcGFnaW5nX3VwZGF0ZV9jcjModiwgZmFsc2UpOwogCiAgICAgaWYgKCAh
KHYtPmFyY2guZmxhZ3MgJiBURl9rZXJuZWxfbW9kZSkgKQogICAgICAgICBj
cjNfbWZuID0gcGFnZXRhYmxlX2dldF9tZm4odi0+YXJjaC5ndWVzdF90YWJs
ZV91c2VyKTsKQEAgLTU4MCw2ICs1NzcsOCBAQCB2b2lkIHVwZGF0ZV9jcjMo
c3RydWN0IHZjcHUgKnYpCiAgICAgICAgIGNyM19tZm4gPSBwYWdldGFibGVf
Z2V0X21mbih2LT5hcmNoLmd1ZXN0X3RhYmxlKTsKIAogICAgIG1ha2VfY3Iz
KHYsIGNyM19tZm4pOworCisgICAgcmV0dXJuIHBhZ2V0YWJsZV9udWxsKCk7
CiB9CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBzZXRfdGxiZmx1c2hfdGltZXN0
YW1wKHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UpCkBAIC0zMjQxLDYgKzMyNDAs
NyBAQCBpbnQgbmV3X2d1ZXN0X2NyMyhtZm5fdCBtZm4pCiAgICAgc3RydWN0
IGRvbWFpbiAqZCA9IGN1cnItPmRvbWFpbjsKICAgICBpbnQgcmM7CiAgICAg
bWZuX3Qgb2xkX2Jhc2VfbWZuOworICAgIHBhZ2V0YWJsZV90IG9sZF9zaGFk
b3c7CiAKICAgICBpZiAoIGlzX3B2XzMyYml0X2RvbWFpbihkKSApCiAgICAg
ewpAQCAtMzMwOCw5ICszMzA4LDIyIEBAIGludCBuZXdfZ3Vlc3RfY3IzKG1m
bl90IG1mbikKICAgICBpZiAoICFWTV9BU1NJU1QoZCwgbTJwX3N0cmljdCkg
KQogICAgICAgICBmaWxsX3JvX21wdChtZm4pOwogICAgIGN1cnItPmFyY2gu
Z3Vlc3RfdGFibGUgPSBwYWdldGFibGVfZnJvbV9tZm4obWZuKTsKLSAgICB1
cGRhdGVfY3IzKGN1cnIpOworICAgIG9sZF9zaGFkb3cgPSB1cGRhdGVfY3Iz
KGN1cnIpOworCisgICAgLyoKKyAgICAgKiBJbiBzaGFkb3cgbW9kZSB1cGRh
dGVfY3IzKCkgY2FuIGZhaWwsIGluIHdoaWNoIGNhc2UgaGVyZSB3ZSdyZSBz
dGlsbAorICAgICAqIHJ1bm5pbmcgb24gdGhlIHByaW9yIHRvcC1sZXZlbCBz
aGFkb3cgKHdoaWNoIHdlJ3JlIGFib3V0IHRvIHJlbGVhc2UpLgorICAgICAq
IFN3aXRjaCB0byB0aGUgaWRsZSBwYWdlIHRhYmxlcyBpbiBzdWNoIGFuIGV2
ZW50OyB0aGUgZ3Vlc3Qgd2lsbCBoYXZlCisgICAgICogYmVlbiBjcmFzaGVk
IGFscmVhZHkuCisgICAgICovCisgICAgaWYgKCBsaWtlbHkoIW1mbl9lcShw
YWdldGFibGVfZ2V0X21mbihvbGRfc2hhZG93KSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgIG1hZGRyX3RvX21mbihjdXJyLT5hcmNoLmNyMyAmIH5YODZf
Q1IzX05PRkxVU0gpKSkgKQorICAgICAgICB3cml0ZV9wdGJhc2UoY3Vycik7
CisgICAgZWxzZQorICAgICAgICB3cml0ZV9wdGJhc2UoaWRsZV92Y3B1W2N1
cnItPnByb2Nlc3Nvcl0pOwogCi0gICAgd3JpdGVfcHRiYXNlKGN1cnIpOwor
ICAgIGlmICggIXBhZ2V0YWJsZV9pc19udWxsKG9sZF9zaGFkb3cpICkKKyAg
ICAgICAgc2hhZG93X3B1dF90b3BfbGV2ZWwoZCwgb2xkX3NoYWRvdyk7CiAK
ICAgICBpZiAoIGxpa2VseShtZm5feChvbGRfYmFzZV9tZm4pICE9IDApICkK
ICAgICB7Ci0tLSBhL3hlbi9hcmNoL3g4Ni9wdi9kb21haW4uYworKysgYi94
ZW4vYXJjaC94ODYvcHYvZG9tYWluLmMKQEAgLTQwOCwxMCArNDA4LDEzIEBA
IGJvb2wgX19pbml0IHhwdGlfcGNpZF9lbmFibGVkKHZvaWQpCiAKIHN0YXRp
YyB2b2lkIF90b2dnbGVfZ3Vlc3RfcHQoc3RydWN0IHZjcHUgKnYpCiB7Cisg
ICAgYm9vbCBndWVzdF91cGRhdGU7CisgICAgcGFnZXRhYmxlX3Qgb2xkX3No
YWRvdzsKICAgICB1bnNpZ25lZCBsb25nIGNyMzsKIAogICAgIHYtPmFyY2gu
ZmxhZ3MgXj0gVEZfa2VybmVsX21vZGU7Ci0gICAgdXBkYXRlX2NyMyh2KTsK
KyAgICBndWVzdF91cGRhdGUgPSB2LT5hcmNoLmZsYWdzICYgVEZfa2VybmVs
X21vZGU7CisgICAgb2xkX3NoYWRvdyA9IHVwZGF0ZV9jcjModik7CiAKICAg
ICAvKgogICAgICAqIERvbid0IGZsdXNoIHVzZXIgZ2xvYmFsIG1hcHBpbmdz
IGZyb20gdGhlIFRMQi4gRG9uJ3QgdGljayBUTEIgY2xvY2suCkBAIC00MjAs
MTMgKzQyMywzMSBAQCBzdGF0aWMgdm9pZCBfdG9nZ2xlX2d1ZXN0X3B0KHN0
cnVjdCB2Y3B1CiAgICAgICogVExCIGZsdXNoIChmb3IganVzdCB0aGUgaW5j
b21pbmcgUENJRCksIGFzIHRoZSB0b3AgbGV2ZWwgcGFnZSB0YWJsZSBtYXkK
ICAgICAgKiBoYXZlIGNoYW5nZWQgYmVoaW5kIG91ciBiYWNrcy4gVG8gYmUg
b24gdGhlIHNhZmUgc2lkZSwgc3VwcHJlc3MgdGhlCiAgICAgICogbm8tZmx1
c2ggdW5jb25kaXRpb25hbGx5IGluIHRoaXMgY2FzZS4KKyAgICAgKgorICAg
ICAqIEZ1cnRoZXJtb3JlIGluIHNoYWRvdyBtb2RlIHVwZGF0ZV9jcjMoKSBj
YW4gZmFpbCwgaW4gd2hpY2ggY2FzZSBoZXJlCisgICAgICogd2UncmUgc3Rp
bGwgcnVubmluZyBvbiB0aGUgcHJpb3IgdG9wLWxldmVsIHNoYWRvdyAod2hp
Y2ggd2UncmUgYWJvdXQKKyAgICAgKiB0byByZWxlYXNlKS4gU3dpdGNoIHRv
IHRoZSBpZGxlIHBhZ2UgdGFibGVzIGluIHN1Y2ggYW4gZXZlbnQ7IHRoZQor
ICAgICAqIGd1ZXN0IHdpbGwgaGF2ZSBiZWVuIGNyYXNoZWQgYWxyZWFkeS4K
ICAgICAgKi8KICAgICBjcjMgPSB2LT5hcmNoLmNyMzsKICAgICBpZiAoIHNo
YWRvd19tb2RlX2VuYWJsZWQodi0+ZG9tYWluKSApCisgICAgewogICAgICAg
ICBjcjMgJj0gflg4Nl9DUjNfTk9GTFVTSDsKKworICAgICAgICBpZiAoIHVu
bGlrZWx5KG1mbl9lcShwYWdldGFibGVfZ2V0X21mbihvbGRfc2hhZG93KSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFkZHJfdG9fbWZuKGNy
MykpKSApCisgICAgICAgIHsKKyAgICAgICAgICAgIGNyMyA9IGlkbGVfdmNw
dVt2LT5wcm9jZXNzb3JdLT5hcmNoLmNyMzsKKyAgICAgICAgICAgIC8qIEFs
c28gc3VwcHJlc3MgcnVuc3RhdGUvdGltZSBhcmVhIHVwZGF0ZXMgYmVsb3cu
ICovCisgICAgICAgICAgICBndWVzdF91cGRhdGUgPSBmYWxzZTsKKyAgICAg
ICAgfQorICAgIH0KICAgICB3cml0ZV9jcjMoY3IzKTsKIAotICAgIGlmICgg
ISh2LT5hcmNoLmZsYWdzICYgVEZfa2VybmVsX21vZGUpICkKKyAgICBpZiAo
ICFwYWdldGFibGVfaXNfbnVsbChvbGRfc2hhZG93KSApCisgICAgICAgIHNo
YWRvd19wdXRfdG9wX2xldmVsKHYtPmRvbWFpbiwgb2xkX3NoYWRvdyk7CisK
KyAgICBpZiAoICFndWVzdF91cGRhdGUgKQogICAgICAgICByZXR1cm47CiAK
ICAgICBpZiAoIHYtPmFyY2gucHYubmVlZF91cGRhdGVfcnVuc3RhdGVfYXJl
YSAmJiB1cGRhdGVfcnVuc3RhdGVfYXJlYSh2KSApCi0tLSBhL3hlbi9pbmNs
dWRlL2FzbS14ODYvbW0uaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L21t
LmgKQEAgLTU2OSw3ICs1NjksNyBAQCB2b2lkIGF1ZGl0X2RvbWFpbnModm9p
ZCk7CiAjZW5kaWYKIAogdm9pZCBtYWtlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwg
bWZuX3QgbWZuKTsKLXZvaWQgdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdik7
CitwYWdldGFibGVfdCB1cGRhdGVfY3IzKHN0cnVjdCB2Y3B1ICp2KTsKIGlu
dCB2Y3B1X2Rlc3Ryb3lfcGFnZXRhYmxlcyhzdHJ1Y3QgdmNwdSAqKTsKIHZv
aWQgKmRvX3BhZ2Vfd2FsayhzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgbG9u
ZyBhZGRyKTsKIAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L3BhZ2luZy5o
CisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcGFnaW5nLmgKQEAgLTEzNiw3
ICsxMzYsNyBAQCBzdHJ1Y3QgcGFnaW5nX21vZGUgewogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25n
IGNyMywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcGFkZHJfdCBnYSwgdWludDMyX3QgKnBmZWMsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGlu
dCAqcGFnZV9vcmRlcik7Ci0gICAgdm9pZCAgICAgICAgICAoKnVwZGF0ZV9j
cjMgICAgICAgICAgICApKHN0cnVjdCB2Y3B1ICp2LCBpbnQgZG9fbG9ja2lu
ZywKKyAgICBwYWdldGFibGVfdCAgICgqdXBkYXRlX2NyMyAgICAgICAgICAg
ICkoc3RydWN0IHZjcHUgKnYsIGJvb2wgZG9fbG9ja2luZywKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBub2Zs
dXNoKTsKICAgICB2b2lkICAgICAgICAgICgqdXBkYXRlX3BhZ2luZ19tb2Rl
cyAgICkoc3RydWN0IHZjcHUgKnYpOwogICAgIGJvb2wgICAgICAgICAgKCpm
bHVzaF90bGIgICAgICAgICAgICAgKShib29sICgqZmx1c2hfdmNwdSkodm9p
ZCAqY3R4dCwKQEAgLTMwOSw5ICszMDksOSBAQCBzdGF0aWMgaW5saW5lIHVu
c2lnbmVkIGxvbmcgcGFnaW5nX2dhX3RvCiAvKiBVcGRhdGUgYWxsIHRoZSB0
aGluZ3MgdGhhdCBhcmUgZGVyaXZlZCBmcm9tIHRoZSBndWVzdCdzIENSMy4K
ICAqIENhbGxlZCB3aGVuIHRoZSBndWVzdCBjaGFuZ2VzIENSMzsgdGhlIGNh
bGxlciBjYW4gdGhlbiB1c2Ugdi0+YXJjaC5jcjMKICAqIGFzIHRoZSB2YWx1
ZSB0byBsb2FkIGludG8gdGhlIGhvc3QgQ1IzIHRvIHNjaGVkdWxlIHRoaXMg
dmNwdSAqLwotc3RhdGljIGlubGluZSB2b2lkIHBhZ2luZ191cGRhdGVfY3Iz
KHN0cnVjdCB2Y3B1ICp2LCBib29sIG5vZmx1c2gpCitzdGF0aWMgaW5saW5l
IHBhZ2V0YWJsZV90IHBhZ2luZ191cGRhdGVfY3IzKHN0cnVjdCB2Y3B1ICp2
LCBib29sIG5vZmx1c2gpCiB7Ci0gICAgcGFnaW5nX2dldF9ob3N0bW9kZSh2
KS0+dXBkYXRlX2NyMyh2LCAxLCBub2ZsdXNoKTsKKyAgICByZXR1cm4gcGFn
aW5nX2dldF9ob3N0bW9kZSh2KS0+dXBkYXRlX2NyMyh2LCAxLCBub2ZsdXNo
KTsKIH0KIAogLyogVXBkYXRlIGFsbCB0aGUgdGhpbmdzIHRoYXQgYXJlIGRl
cml2ZWQgZnJvbSB0aGUgZ3Vlc3QncyBDUjAvQ1IzL0NSNC4KLS0tIGEveGVu
L2luY2x1ZGUvYXNtLXg4Ni9zaGFkb3cuaAorKysgYi94ZW4vaW5jbHVkZS9h
c20teDg2L3NoYWRvdy5oCkBAIC05Nyw2ICs5Nyw5IEBAIHZvaWQgc2hhZG93
X2Jsb3dfdGFibGVzX3Blcl9kb21haW4oc3RydWMKIGludCBzaGFkb3dfc2V0
X2FsbG9jYXRpb24oc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50IHBh
Z2VzLAogICAgICAgICAgICAgICAgICAgICAgICAgICBib29sICpwcmVlbXB0
ZWQpOwogCisvKiBIZWxwZXIgdG8gaW52b2tlIGZvciBkZWZlcnJlZCByZWxl
YXNpbmcgb2YgYSB0b3AtbGV2ZWwgc2hhZG93J3MgcmVmZXJlbmNlLiAqLwor
dm9pZCBzaGFkb3dfcHV0X3RvcF9sZXZlbChzdHJ1Y3QgZG9tYWluICpkLCBw
YWdldGFibGVfdCBvbGQpOworCiAjZWxzZSAvKiAhQ09ORklHX1NIQURPV19Q
QUdJTkcgKi8KIAogI2RlZmluZSBzaGFkb3dfdmNwdV90ZWFyZG93bih2KSBB
U1NFUlQoaXNfcHZfdmNwdSh2KSkKQEAgLTExOCw2ICsxMjEsMTEgQEAgc3Rh
dGljIGlubGluZSB2b2lkIHNoYWRvd19wcmVwYXJlX3BhZ2VfdAogCiBzdGF0
aWMgaW5saW5lIHZvaWQgc2hhZG93X2Jsb3dfdGFibGVzX3Blcl9kb21haW4o
c3RydWN0IGRvbWFpbiAqZCkge30KIAorc3RhdGljIGlubGluZSB2b2lkIHNo
YWRvd19wdXRfdG9wX2xldmVsKHN0cnVjdCBkb21haW4gKmQsIHBhZ2V0YWJs
ZV90IG9sZCkKK3sKKyAgICBBU1NFUlRfVU5SRUFDSEFCTEUoKTsKK30KKwog
c3RhdGljIGlubGluZSBpbnQgc2hhZG93X2RvbWN0bChzdHJ1Y3QgZG9tYWlu
ICpkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qg
eGVuX2RvbWN0bF9zaGFkb3dfb3AgKnNjLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBYRU5fR1VFU1RfSEFORExFX1BBUkFNKHhlbl9kb21j
dGxfdCkgdV9kb21jdGwpCg==

--=separator
Content-Type: application/octet-stream; name="xsa438-4.16.patch"
Content-Disposition: attachment; filename="xsa438-4.16.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvc2hhZG93OiBkZWZlciByZWxlYXNpbmcgb2YgUFYncyB0b3AtbGV2
ZWwgc2hhZG93IHJlZmVyZW5jZQoKc2hfc2V0X3RvcGxldmVsX3NoYWRvdygp
IHJlLXBpbm5pbmcgdGhlIHRvcC1sZXZlbCBzaGFkb3cgd2UgbWF5IGJlCnJ1
bm5pbmcgb24gaXMgbm90IGVub3VnaCAoYW5kIGF0IHRoZSBzYW1lIHRpbWUg
dW5uZWNlc3Nhcnkgd2hlbiB0aGUKc2hhZG93IGlzbid0IHdoYXQgd2UncmUg
cnVubmluZyBvbik6IFRoYXQgc2hhZG93IGJlY29tZXMgZWxpZ2libGUgZm9y
CmJsb3dpbmcgYXdheSAoZnJvbSBlLmcuIHNoYWRvd19wcmVhbGxvYygpKSBp
bW1lZGlhdGVseSBhZnRlciB0aGUKcGFnaW5nIGxvY2sgd2FzIGRyb3BwZWQu
IFlldCBpdCBuZWVkcyB0byByZW1haW4gdmFsaWQgdW50aWwgdGhlIGFjdHVh
bApwYWdlIHRhYmxlIHN3aXRjaCBvY2N1cnJlZC4KClByb3BhZ2F0ZSB1cCB0
aGUgY2FsbCBjaGFpbiB0aGUgc2hhZG93IGVudHJ5IHRoYXQgbmVlZHMgcmVs
ZWFzaW5nCmV2ZW50dWFsbHksIGFuZCBjYXJyeSBvdXQgdGhlIHJlbGVhc2Ug
aW1tZWRpYXRlbHkgYWZ0ZXIgc3dpdGNoaW5nIHBhZ2UKdGFibGVzLiBIYW5k
bGUgdXBkYXRlX2NyMygpIGZhaWx1cmVzIGJ5IHN3aXRjaGluZyB0byBpZGxl
IHBhZ2V0YWJsZXMuCk5vdGUgdGhhdCB2YXJpb3VzIGZ1cnRoZXIgdXNlcyBv
ZiB1cGRhdGVfY3IzKCkgYXJlIEhWTS1vbmx5IG9yIG9ubHkgYWN0Cm9uIHBh
dXNlZCB2Q1BVLXMsIGluIHdoaWNoIGNhc2Ugc2hfc2V0X3RvcGxldmVsX3No
YWRvdygpIHdpbGwgbm90IGRlZmVyCnJlbGVhc2luZyBvZiB0aGUgcmVmZXJl
bmNlLgoKV2hpbGUgY2hhbmdpbmcgdGhlIHVwZGF0ZV9jcjMoKSBob29rLCBh
bHNvIGNvbnZlcnQgdGhlICJkb19sb2NraW5nIgpwYXJhbWV0ZXIgdG8gYm9v
bGVhbi4KClRoaXMgaXMgQ1ZFLTIwMjMtMzQzMjIgLyBYU0EtNDM4LgoKUmVw
b3J0ZWQtYnk6IFRpbSBEZWVnYW4gPHRpbUB4ZW4ub3JnPgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNsb3VkLmNvbT4K
Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFwLmMKKysrIGIveGVuL2Fy
Y2gveDg2L21tL2hhcC9oYXAuYwpAQCAtNzI4LDEwICs3MjgsMTIgQEAgc3Rh
dGljIGJvb2xfdCBoYXBfaW52bHBnKHN0cnVjdCB2Y3B1ICp2LAogICAgIHJl
dHVybiAxOwogfQogCi1zdGF0aWMgdm9pZCBoYXBfdXBkYXRlX2NyMyhzdHJ1
Y3QgdmNwdSAqdiwgaW50IGRvX2xvY2tpbmcsIGJvb2wgbm9mbHVzaCkKK3N0
YXRpYyBwYWdldGFibGVfdCBoYXBfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAq
diwgYm9vbCBkb19sb2NraW5nLCBib29sIG5vZmx1c2gpCiB7CiAgICAgdi0+
YXJjaC5odm0uaHdfY3JbM10gPSB2LT5hcmNoLmh2bS5ndWVzdF9jclszXTsK
ICAgICBodm1fdXBkYXRlX2d1ZXN0X2NyMyh2LCBub2ZsdXNoKTsKKworICAg
IHJldHVybiBwYWdldGFibGVfbnVsbCgpOwogfQogCiAvKgotLS0gYS94ZW4v
YXJjaC94ODYvbW0vc2hhZG93L2NvbW1vbi5jCisrKyBiL3hlbi9hcmNoL3g4
Ni9tbS9zaGFkb3cvY29tbW9uLmMKQEAgLTI1NzQsMTMgKzI1NzQsMTMgQEAg
dm9pZCBzaGFkb3dfdXBkYXRlX3BhZ2luZ19tb2RlcyhzdHJ1Y3QgdgogfQog
CiAvKiBTZXQgdXAgdGhlIHRvcC1sZXZlbCBzaGFkb3cgYW5kIGluc3RhbGwg
aXQgaW4gc2xvdCAnc2xvdCcgb2Ygc2hhZG93X3RhYmxlICovCi12b2lkIHNo
X3NldF90b3BsZXZlbF9zaGFkb3coc3RydWN0IHZjcHUgKnYsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHNsb3QsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3QgZ21mbiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgcm9vdF90eXBlLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90ICgqbWFrZV9zaGFk
b3cpKHN0cnVjdCB2Y3B1ICp2LAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDMyX3Qgc2hhZG93X3R5cGUpKQorcGFnZXRhYmxlX3Qgc2hfc2V0X3RvcGxl
dmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdSAqdiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHNsb3QsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBy
b290X3R5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG1mbl90ICgqbWFrZV9zaGFkb3cpKHN0cnVjdCB2Y3B1ICp2LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBtZm5fdCBnbWZuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzaGFkb3df
dHlwZSkpCiB7CiAgICAgbWZuX3Qgc21mbjsKICAgICBwYWdldGFibGVfdCBv
bGRfZW50cnksIG5ld19lbnRyeTsKQEAgLTI2MzcsMjAgKzI2MzcsMzcgQEAg
dm9pZCBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHN0cnVjdCB2Y3B1CiAgICAg
ICAgICAgICAgICAgICBtZm5feChnbWZuKSwgbWZuX3gocGFnZXRhYmxlX2dl
dF9tZm4obmV3X2VudHJ5KSkpOwogICAgIHYtPmFyY2gucGFnaW5nLnNoYWRv
dy5zaGFkb3dfdGFibGVbc2xvdF0gPSBuZXdfZW50cnk7CiAKLSAgICAvKiBE
ZWNyZW1lbnQgdGhlIHJlZmNvdW50IG9mIHRoZSBvbGQgY29udGVudHMgb2Yg
dGhpcyBzbG90ICovCi0gICAgaWYgKCAhcGFnZXRhYmxlX2lzX251bGwob2xk
X2VudHJ5KSApCisgICAgLyoKKyAgICAgKiBEZWNyZW1lbnQgdGhlIHJlZmNv
dW50IG9mIHRoZSBvbGQgY29udGVudHMgb2YgdGhpcyBzbG90LCB1bmxlc3MK
KyAgICAgKiB3ZSdyZSBzdGlsbCBydW5uaW5nIG9uIHRoYXQgc2hhZG93IC0g
aW4gdGhhdCBjYXNlIGl0J2xsIG5lZWQgaG9sZGluZworICAgICAqIG9uIHRv
IHVudGlsIHRoZSBhY3R1YWwgcGFnZSB0YWJsZSBzd2l0Y2ggZGlkIG9jY3Vy
LgorICAgICAqLworICAgIGlmICggIXBhZ2V0YWJsZV9pc19udWxsKG9sZF9l
bnRyeSkgJiYgKHYgIT0gY3VycmVudCB8fCAhaXNfcHZfZG9tYWluKGQpKSAp
CiAgICAgewotICAgICAgICBtZm5fdCBvbGRfc21mbiA9IHBhZ2V0YWJsZV9n
ZXRfbWZuKG9sZF9lbnRyeSk7Ci0gICAgICAgIC8qIE5lZWQgdG8gcmVwaW4g
dGhlIG9sZCB0b3BsZXZlbCBzaGFkb3cgaWYgaXQncyBiZWVuIHVucGlubmVk
Ci0gICAgICAgICAqIGJ5IHNoYWRvd19wcmVhbGxvYygpOiBpbiBQViBtb2Rl
IHdlJ3JlIHN0aWxsIHJ1bm5pbmcgb24gdGhpcwotICAgICAgICAgKiBzaGFk
b3cgYW5kIGl0J3Mgbm90IHNhZmUgdG8gZnJlZSBpdCB5ZXQuICovCi0gICAg
ICAgIGlmICggIW1mbl90b19wYWdlKG9sZF9zbWZuKS0+dS5zaC5waW5uZWQg
JiYgIXNoX3BpbihkLCBvbGRfc21mbikgKQotICAgICAgICB7Ci0gICAgICAg
ICAgICBwcmludGsoWEVOTE9HX0dfRVJSICJjYW4ndCByZS1waW4gJSJQUklf
bWZuIlxuIiwgbWZuX3gob2xkX3NtZm4pKTsKLSAgICAgICAgICAgIGRvbWFp
bl9jcmFzaChkKTsKLSAgICAgICAgfQotICAgICAgICBzaF9wdXRfcmVmKGQs
IG9sZF9zbWZuLCAwKTsKKyAgICAgICAgc2hfcHV0X3JlZihkLCBwYWdldGFi
bGVfZ2V0X21mbihvbGRfZW50cnkpLCAwKTsKKyAgICAgICAgb2xkX2VudHJ5
ID0gcGFnZXRhYmxlX251bGwoKTsKICAgICB9CisKKyAgICAvKgorICAgICAq
IDItIGFuZCAzLWxldmVsIHNoYWRvdyBtb2RlIGlzIHVzZWQgZm9yIEhWTSBv
bmx5LiBUaGVyZWZvcmUgd2UgbmV2ZXIgcnVuCisgICAgICogb24gc3VjaCBh
IHNoYWRvdywgc28gb25seSBjYWxsIHNpdGVzIHJlcXVlc3RpbmcgYW4gTDQg
c2hhZG93IG5lZWQgdG8gcGF5CisgICAgICogYXR0ZW50aW9uIHRvIHRoZSBy
ZXR1cm5lZCB2YWx1ZS4KKyAgICAgKi8KKyAgICBBU1NFUlQocGFnZXRhYmxl
X2lzX251bGwob2xkX2VudHJ5KSB8fCByb290X3R5cGUgPT0gU0hfdHlwZV9s
NF82NF9zaGFkb3cpOworCisgICAgcmV0dXJuIG9sZF9lbnRyeTsKK30KKwor
LyoKKyAqIEhlbHBlciBpbnZva2VkIHdoZW4gcmVsZWFzaW5nIG9mIGEgdG9w
LWxldmVsIHNoYWRvdydzIHJlZmVyZW5jZSB3YXMKKyAqIGRlZmVycmVkIGlu
IHNoX3NldF90b3BsZXZlbF9zaGFkb3coKSBhYm92ZS4KKyAqLwordm9pZCBz
aGFkb3dfcHV0X3RvcF9sZXZlbChzdHJ1Y3QgZG9tYWluICpkLCBwYWdldGFi
bGVfdCBvbGRfZW50cnkpCit7CisgICAgQVNTRVJUKCFwYWdldGFibGVfaXNf
bnVsbChvbGRfZW50cnkpKTsKKyAgICBwYWdpbmdfbG9jayhkKTsKKyAgICBz
aF9wdXRfcmVmKGQsIHBhZ2V0YWJsZV9nZXRfbWZuKG9sZF9lbnRyeSksIDAp
OworICAgIHBhZ2luZ191bmxvY2soZCk7CiB9CiAKIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKi8KLS0tIGEveGVuL2FyY2gveDg2L21tL3NoYWRv
dy9tdWx0aS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9zaGFkb3cvbXVsdGku
YwpAQCAtMzIxOSw4ICszMjE5LDggQEAgc2hfZGV0YWNoX29sZF90YWJsZXMo
c3RydWN0IHZjcHUgKnYpCiAgICAgfQogfQogCi1zdGF0aWMgdm9pZAotc2hf
dXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgaW50IGRvX2xvY2tpbmcsIGJv
b2wgbm9mbHVzaCkKK3N0YXRpYyBwYWdldGFibGVfdAorc2hfdXBkYXRlX2Ny
MyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBkb19sb2NraW5nLCBib29sIG5vZmx1
c2gpCiAvKiBVcGRhdGVzIHZjcHUtPmFyY2guY3IzIGFmdGVyIHRoZSBndWVz
dCBoYXMgY2hhbmdlZCBDUjMuCiAgKiBQYXJhdmlydHVhbCBndWVzdHMgc2hv
dWxkIHNldCB2LT5hcmNoLmd1ZXN0X3RhYmxlIChhbmQgZ3Vlc3RfdGFibGVf
dXNlciwKICAqIGlmIGFwcHJvcHJpYXRlKS4KQEAgLTMyMzQsNiArMzIzNCw3
IEBAIHNoX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGludCBkb19sb2MK
IHsKICAgICBzdHJ1Y3QgZG9tYWluICpkID0gdi0+ZG9tYWluOwogICAgIG1m
bl90IGdtZm47CisgICAgcGFnZXRhYmxlX3Qgb2xkX2VudHJ5ID0gcGFnZXRh
YmxlX251bGwoKTsKICNpZiBHVUVTVF9QQUdJTkdfTEVWRUxTID09IDMgJiYg
ZGVmaW5lZChDT05GSUdfSFZNKQogICAgIGNvbnN0IGd1ZXN0X2wzZV90ICpn
bDNlOwogICAgIHVuc2lnbmVkIGludCBpLCBndWVzdF9pZHg7CkBAIC0zMjQz
LDcgKzMyNDQsNyBAQCBzaF91cGRhdGVfY3IzKHN0cnVjdCB2Y3B1ICp2LCBp
bnQgZG9fbG9jCiAgICAgaWYgKCAhaXNfaHZtX2RvbWFpbihkKSAmJiAhdi0+
aXNfaW5pdGlhbGlzZWQgKQogICAgIHsKICAgICAgICAgQVNTRVJUKHYtPmFy
Y2guY3IzID09IDApOwotICAgICAgICByZXR1cm47CisgICAgICAgIHJldHVy
biBvbGRfZW50cnk7CiAgICAgfQogCiAgICAgaWYgKCBkb19sb2NraW5nICkg
cGFnaW5nX2xvY2sodi0+ZG9tYWluKTsKQEAgLTMzMTYsMTEgKzMzMTcsMTIg
QEAgc2hfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgaW50IGRvX2xvYwog
I2lmIEdVRVNUX1BBR0lOR19MRVZFTFMgPT0gNAogICAgIGlmICggc2hfcmVt
b3ZlX3dyaXRlX2FjY2VzcyhkLCBnbWZuLCA0LCAwKSAhPSAwICkKICAgICAg
ICAgZ3Vlc3RfZmx1c2hfdGxiX21hc2soZCwgZC0+ZGlydHlfY3B1bWFzayk7
Ci0gICAgc2hfc2V0X3RvcGxldmVsX3NoYWRvdyh2LCAwLCBnbWZuLCBTSF90
eXBlX2w0X3NoYWRvdywgc2hfbWFrZV9zaGFkb3cpOworICAgIG9sZF9lbnRy
eSA9IHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgMCwgZ21mbiwgU0hfdHlw
ZV9sNF9zaGFkb3csCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzaF9tYWtlX3NoYWRvdyk7CiAgICAgaWYgKCB1bmxpa2VseShw
YWdldGFibGVfaXNfbnVsbCh2LT5hcmNoLnBhZ2luZy5zaGFkb3cuc2hhZG93
X3RhYmxlWzBdKSkgKQogICAgIHsKICAgICAgICAgQVNTRVJUKGQtPmlzX2R5
aW5nIHx8IGQtPmlzX3NodXR0aW5nX2Rvd24pOwotICAgICAgICByZXR1cm47
CisgICAgICAgIHJldHVybiBvbGRfZW50cnk7CiAgICAgfQogICAgIGlmICgg
IXNoYWRvd19tb2RlX2V4dGVybmFsKGQpICYmICFpc19wdl8zMmJpdF9kb21h
aW4oZCkgKQogICAgIHsKQEAgLTMzNjYsMjQgKzMzNjgsMzAgQEAgc2hfdXBk
YXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgaW50IGRvX2xvYwogICAgICAgICAg
ICAgICAgIGdsMmdmbiA9IGd1ZXN0X2wzZV9nZXRfZ2ZuKGdsM2VbaV0pOwog
ICAgICAgICAgICAgICAgIGdsMm1mbiA9IGdldF9nZm5fcXVlcnlfdW5sb2Nr
ZWQoZCwgZ2ZuX3goZ2wyZ2ZuKSwgJnAybXQpOwogICAgICAgICAgICAgICAg
IGlmICggcDJtX2lzX3JhbShwMm10KSApCi0gICAgICAgICAgICAgICAgICAg
IHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgaSwgZ2wybWZuLCBTSF90eXBl
X2wyX3NoYWRvdywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzaF9tYWtlX3NoYWRvdyk7CisgICAgICAgICAgICAgICAg
ICAgIG9sZF9lbnRyeSA9IHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgaSwg
Z2wybWZuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFNIX3R5cGVfbDJfc2hhZG93LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNoX21ha2Vfc2hhZG93KTsKICAgICAgICAgICAgICAgICBlbHNlCi0g
ICAgICAgICAgICAgICAgICAgIHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwg
aSwgSU5WQUxJRF9NRk4sIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2hfbWFrZV9zaGFkb3cpOworICAgICAgICAg
ICAgICAgICAgICBvbGRfZW50cnkgPSBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93
KHYsIGksIElOVkFMSURfTUZOLCAwLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hh
ZG93KTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKLSAgICAg
ICAgICAgICAgICBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIGksIElOVkFM
SURfTUZOLCAwLCBzaF9tYWtlX3NoYWRvdyk7CisgICAgICAgICAgICAgICAg
b2xkX2VudHJ5ID0gc2hfc2V0X3RvcGxldmVsX3NoYWRvdyh2LCBpLCBJTlZB
TElEX01GTiwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93KTsKKworICAgICAg
ICAgICAgQVNTRVJUKHBhZ2V0YWJsZV9pc19udWxsKG9sZF9lbnRyeSkpOwog
ICAgICAgICB9CiAgICAgfQogI2VsaWYgR1VFU1RfUEFHSU5HX0xFVkVMUyA9
PSAyCiAgICAgaWYgKCBzaF9yZW1vdmVfd3JpdGVfYWNjZXNzKGQsIGdtZm4s
IDIsIDApICE9IDAgKQogICAgICAgICBndWVzdF9mbHVzaF90bGJfbWFzayhk
LCBkLT5kaXJ0eV9jcHVtYXNrKTsKLSAgICBzaF9zZXRfdG9wbGV2ZWxfc2hh
ZG93KHYsIDAsIGdtZm4sIFNIX3R5cGVfbDJfc2hhZG93LCBzaF9tYWtlX3No
YWRvdyk7CisgICAgb2xkX2VudHJ5ID0gc2hfc2V0X3RvcGxldmVsX3NoYWRv
dyh2LCAwLCBnbWZuLCBTSF90eXBlX2wyX3NoYWRvdywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93KTsK
KyAgICBBU1NFUlQocGFnZXRhYmxlX2lzX251bGwob2xkX2VudHJ5KSk7CiAg
ICAgaWYgKCB1bmxpa2VseShwYWdldGFibGVfaXNfbnVsbCh2LT5hcmNoLnBh
Z2luZy5zaGFkb3cuc2hhZG93X3RhYmxlWzBdKSkgKQogICAgIHsKICAgICAg
ICAgQVNTRVJUKGQtPmlzX2R5aW5nIHx8IGQtPmlzX3NodXR0aW5nX2Rvd24p
OwotICAgICAgICByZXR1cm47CisgICAgICAgIHJldHVybiBvbGRfZW50cnk7
CiAgICAgfQogI2Vsc2UKICNlcnJvciBUaGlzIHNob3VsZCBuZXZlciBoYXBw
ZW4KQEAgLTM0NzcsNiArMzQ4NSw4IEBAIHNoX3VwZGF0ZV9jcjMoc3RydWN0
IHZjcHUgKnYsIGludCBkb19sb2MKIAogICAgIC8qIFJlbGVhc2UgdGhlIGxv
Y2ssIGlmIHdlIHRvb2sgaXQgKG90aGVyd2lzZSBpdCdzIHRoZSBjYWxsZXIn
cyBwcm9ibGVtKSAqLwogICAgIGlmICggZG9fbG9ja2luZyApIHBhZ2luZ191
bmxvY2sodi0+ZG9tYWluKTsKKworICAgIHJldHVybiBvbGRfZW50cnk7CiB9
CiAKIAotLS0gYS94ZW4vYXJjaC94ODYvbW0vc2hhZG93L25vbmUuYworKysg
Yi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L25vbmUuYwpAQCAtNTIsOSArNTIs
MTAgQEAgc3RhdGljIHVuc2lnbmVkIGxvbmcgX2d2YV90b19nZm4oc3RydWN0
CiB9CiAjZW5kaWYKIAotc3RhdGljIHZvaWQgX3VwZGF0ZV9jcjMoc3RydWN0
IHZjcHUgKnYsIGludCBkb19sb2NraW5nLCBib29sIG5vZmx1c2gpCitzdGF0
aWMgcGFnZXRhYmxlX3QgX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGJv
b2wgZG9fbG9ja2luZywgYm9vbCBub2ZsdXNoKQogewogICAgIEFTU0VSVF9V
TlJFQUNIQUJMRSgpOworICAgIHJldHVybiBwYWdldGFibGVfbnVsbCgpOwog
fQogCiBzdGF0aWMgdm9pZCBfdXBkYXRlX3BhZ2luZ19tb2RlcyhzdHJ1Y3Qg
dmNwdSAqdikKLS0tIGEveGVuL2FyY2gveDg2L21tL3NoYWRvdy9wcml2YXRl
LmgKKysrIGIveGVuL2FyY2gveDg2L21tL3NoYWRvdy9wcml2YXRlLmgKQEAg
LTM5MSwxMyArMzkxLDEzIEBAIG1mbl90IHNoYWRvd19hbGxvYyhzdHJ1Y3Qg
ZG9tYWluICpkLAogdm9pZCAgc2hhZG93X2ZyZWUoc3RydWN0IGRvbWFpbiAq
ZCwgbWZuX3Qgc21mbik7CiAKIC8qIFNldCB1cCB0aGUgdG9wLWxldmVsIHNo
YWRvdyBhbmQgaW5zdGFsbCBpdCBpbiBzbG90ICdzbG90JyBvZiBzaGFkb3df
dGFibGUgKi8KLXZvaWQgc2hfc2V0X3RvcGxldmVsX3NoYWRvdyhzdHJ1Y3Qg
dmNwdSAqdiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l
ZCBpbnQgc2xvdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZm5f
dCBnbWZuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk
IGludCByb290X3R5cGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
bWZuX3QgKCptYWtlX3NoYWRvdykoc3RydWN0IHZjcHUgKnYsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWZu
X3QgZ21mbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1aW50MzJfdCBzaGFkb3dfdHlwZSkpOworcGFnZXRh
YmxlX3Qgc2hfc2V0X3RvcGxldmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdSAqdiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
aW50IHNsb3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG1mbl90IGdtZm4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVuc2lnbmVkIGludCByb290X3R5cGUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG1mbl90ICgqbWFrZV9zaGFkb3cpKHN0cnVj
dCB2Y3B1ICp2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCBnbWZuLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1aW50MzJfdCBzaGFkb3dfdHlwZSkpOwogCiAvKiBVcGRhdGUgdGhlIHNo
YWRvd3MgaW4gcmVzcG9uc2UgdG8gYSBwYWdldGFibGUgd3JpdGUgZnJvbSBY
ZW4gKi8KIGludCBzaF92YWxpZGF0ZV9ndWVzdF9lbnRyeShzdHJ1Y3QgdmNw
dSAqdiwgbWZuX3QgZ21mbiwgdm9pZCAqZW50cnksIHUzMiBzaXplKTsKLS0t
IGEveGVuL2FyY2gveDg2L21tLmMKKysrIGIveGVuL2FyY2gveDg2L21tLmMK
QEAgLTU2NSwxNSArNTY1LDEyIEBAIHZvaWQgd3JpdGVfcHRiYXNlKHN0cnVj
dCB2Y3B1ICp2KQogICoKICAqIFVwZGF0ZSByZWYgY291bnRzIHRvIHNoYWRv
dyB0YWJsZXMgYXBwcm9wcmlhdGVseS4KICAqLwotdm9pZCB1cGRhdGVfY3Iz
KHN0cnVjdCB2Y3B1ICp2KQorcGFnZXRhYmxlX3QgdXBkYXRlX2NyMyhzdHJ1
Y3QgdmNwdSAqdikKIHsKICAgICBtZm5fdCBjcjNfbWZuOwogCiAgICAgaWYg
KCBwYWdpbmdfbW9kZV9lbmFibGVkKHYtPmRvbWFpbikgKQotICAgIHsKLSAg
ICAgICAgcGFnaW5nX3VwZGF0ZV9jcjModiwgZmFsc2UpOwotICAgICAgICBy
ZXR1cm47Ci0gICAgfQorICAgICAgICByZXR1cm4gcGFnaW5nX3VwZGF0ZV9j
cjModiwgZmFsc2UpOwogCiAgICAgaWYgKCAhKHYtPmFyY2guZmxhZ3MgJiBU
Rl9rZXJuZWxfbW9kZSkgKQogICAgICAgICBjcjNfbWZuID0gcGFnZXRhYmxl
X2dldF9tZm4odi0+YXJjaC5ndWVzdF90YWJsZV91c2VyKTsKQEAgLTU4MSw2
ICs1NzgsOCBAQCB2b2lkIHVwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYpCiAg
ICAgICAgIGNyM19tZm4gPSBwYWdldGFibGVfZ2V0X21mbih2LT5hcmNoLmd1
ZXN0X3RhYmxlKTsKIAogICAgIG1ha2VfY3IzKHYsIGNyM19tZm4pOworCisg
ICAgcmV0dXJuIHBhZ2V0YWJsZV9udWxsKCk7CiB9CiAKIHN0YXRpYyBpbmxp
bmUgdm9pZCBzZXRfdGxiZmx1c2hfdGltZXN0YW1wKHN0cnVjdCBwYWdlX2lu
Zm8gKnBhZ2UpCkBAIC0zMjU0LDYgKzMyNTMsNyBAQCBpbnQgbmV3X2d1ZXN0
X2NyMyhtZm5fdCBtZm4pCiAgICAgc3RydWN0IGRvbWFpbiAqZCA9IGN1cnIt
PmRvbWFpbjsKICAgICBpbnQgcmM7CiAgICAgbWZuX3Qgb2xkX2Jhc2VfbWZu
OworICAgIHBhZ2V0YWJsZV90IG9sZF9zaGFkb3c7CiAKICAgICBpZiAoIGlz
X3B2XzMyYml0X2RvbWFpbihkKSApCiAgICAgewpAQCAtMzMyMSw5ICszMzIx
LDIyIEBAIGludCBuZXdfZ3Vlc3RfY3IzKG1mbl90IG1mbikKICAgICBpZiAo
ICFWTV9BU1NJU1QoZCwgbTJwX3N0cmljdCkgKQogICAgICAgICBmaWxsX3Jv
X21wdChtZm4pOwogICAgIGN1cnItPmFyY2guZ3Vlc3RfdGFibGUgPSBwYWdl
dGFibGVfZnJvbV9tZm4obWZuKTsKLSAgICB1cGRhdGVfY3IzKGN1cnIpOwor
ICAgIG9sZF9zaGFkb3cgPSB1cGRhdGVfY3IzKGN1cnIpOworCisgICAgLyoK
KyAgICAgKiBJbiBzaGFkb3cgbW9kZSB1cGRhdGVfY3IzKCkgY2FuIGZhaWws
IGluIHdoaWNoIGNhc2UgaGVyZSB3ZSdyZSBzdGlsbAorICAgICAqIHJ1bm5p
bmcgb24gdGhlIHByaW9yIHRvcC1sZXZlbCBzaGFkb3cgKHdoaWNoIHdlJ3Jl
IGFib3V0IHRvIHJlbGVhc2UpLgorICAgICAqIFN3aXRjaCB0byB0aGUgaWRs
ZSBwYWdlIHRhYmxlcyBpbiBzdWNoIGFuIGV2ZW50OyB0aGUgZ3Vlc3Qgd2ls
bCBoYXZlCisgICAgICogYmVlbiBjcmFzaGVkIGFscmVhZHkuCisgICAgICov
CisgICAgaWYgKCBsaWtlbHkoIW1mbl9lcShwYWdldGFibGVfZ2V0X21mbihv
bGRfc2hhZG93KSwKKyAgICAgICAgICAgICAgICAgICAgICAgIG1hZGRyX3Rv
X21mbihjdXJyLT5hcmNoLmNyMyAmIH5YODZfQ1IzX05PRkxVU0gpKSkgKQor
ICAgICAgICB3cml0ZV9wdGJhc2UoY3Vycik7CisgICAgZWxzZQorICAgICAg
ICB3cml0ZV9wdGJhc2UoaWRsZV92Y3B1W2N1cnItPnByb2Nlc3Nvcl0pOwog
Ci0gICAgd3JpdGVfcHRiYXNlKGN1cnIpOworICAgIGlmICggIXBhZ2V0YWJs
ZV9pc19udWxsKG9sZF9zaGFkb3cpICkKKyAgICAgICAgc2hhZG93X3B1dF90
b3BfbGV2ZWwoZCwgb2xkX3NoYWRvdyk7CiAKICAgICBpZiAoIGxpa2VseSht
Zm5feChvbGRfYmFzZV9tZm4pICE9IDApICkKICAgICB7Ci0tLSBhL3hlbi9h
cmNoL3g4Ni9wdi9kb21haW4uYworKysgYi94ZW4vYXJjaC94ODYvcHYvZG9t
YWluLmMKQEAgLTQyNCwxMCArNDI0LDEzIEBAIGJvb2wgX19pbml0IHhwdGlf
cGNpZF9lbmFibGVkKHZvaWQpCiAKIHN0YXRpYyB2b2lkIF90b2dnbGVfZ3Vl
c3RfcHQoc3RydWN0IHZjcHUgKnYpCiB7CisgICAgYm9vbCBndWVzdF91cGRh
dGU7CisgICAgcGFnZXRhYmxlX3Qgb2xkX3NoYWRvdzsKICAgICB1bnNpZ25l
ZCBsb25nIGNyMzsKIAogICAgIHYtPmFyY2guZmxhZ3MgXj0gVEZfa2VybmVs
X21vZGU7Ci0gICAgdXBkYXRlX2NyMyh2KTsKKyAgICBndWVzdF91cGRhdGUg
PSB2LT5hcmNoLmZsYWdzICYgVEZfa2VybmVsX21vZGU7CisgICAgb2xkX3No
YWRvdyA9IHVwZGF0ZV9jcjModik7CiAKICAgICAvKgogICAgICAqIERvbid0
IGZsdXNoIHVzZXIgZ2xvYmFsIG1hcHBpbmdzIGZyb20gdGhlIFRMQi4gRG9u
J3QgdGljayBUTEIgY2xvY2suCkBAIC00MzYsMTMgKzQzOSwzMSBAQCBzdGF0
aWMgdm9pZCBfdG9nZ2xlX2d1ZXN0X3B0KHN0cnVjdCB2Y3B1CiAgICAgICog
VExCIGZsdXNoIChmb3IganVzdCB0aGUgaW5jb21pbmcgUENJRCksIGFzIHRo
ZSB0b3AgbGV2ZWwgcGFnZSB0YWJsZSBtYXkKICAgICAgKiBoYXZlIGNoYW5n
ZWQgYmVoaW5kIG91ciBiYWNrcy4gVG8gYmUgb24gdGhlIHNhZmUgc2lkZSwg
c3VwcHJlc3MgdGhlCiAgICAgICogbm8tZmx1c2ggdW5jb25kaXRpb25hbGx5
IGluIHRoaXMgY2FzZS4KKyAgICAgKgorICAgICAqIEZ1cnRoZXJtb3JlIGlu
IHNoYWRvdyBtb2RlIHVwZGF0ZV9jcjMoKSBjYW4gZmFpbCwgaW4gd2hpY2gg
Y2FzZSBoZXJlCisgICAgICogd2UncmUgc3RpbGwgcnVubmluZyBvbiB0aGUg
cHJpb3IgdG9wLWxldmVsIHNoYWRvdyAod2hpY2ggd2UncmUgYWJvdXQKKyAg
ICAgKiB0byByZWxlYXNlKS4gU3dpdGNoIHRvIHRoZSBpZGxlIHBhZ2UgdGFi
bGVzIGluIHN1Y2ggYW4gZXZlbnQ7IHRoZQorICAgICAqIGd1ZXN0IHdpbGwg
aGF2ZSBiZWVuIGNyYXNoZWQgYWxyZWFkeS4KICAgICAgKi8KICAgICBjcjMg
PSB2LT5hcmNoLmNyMzsKICAgICBpZiAoIHNoYWRvd19tb2RlX2VuYWJsZWQo
di0+ZG9tYWluKSApCisgICAgewogICAgICAgICBjcjMgJj0gflg4Nl9DUjNf
Tk9GTFVTSDsKKworICAgICAgICBpZiAoIHVubGlrZWx5KG1mbl9lcShwYWdl
dGFibGVfZ2V0X21mbihvbGRfc2hhZG93KSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbWFkZHJfdG9fbWZuKGNyMykpKSApCisgICAgICAgIHsK
KyAgICAgICAgICAgIGNyMyA9IGlkbGVfdmNwdVt2LT5wcm9jZXNzb3JdLT5h
cmNoLmNyMzsKKyAgICAgICAgICAgIC8qIEFsc28gc3VwcHJlc3MgcnVuc3Rh
dGUvdGltZSBhcmVhIHVwZGF0ZXMgYmVsb3cuICovCisgICAgICAgICAgICBn
dWVzdF91cGRhdGUgPSBmYWxzZTsKKyAgICAgICAgfQorICAgIH0KICAgICB3
cml0ZV9jcjMoY3IzKTsKIAotICAgIGlmICggISh2LT5hcmNoLmZsYWdzICYg
VEZfa2VybmVsX21vZGUpICkKKyAgICBpZiAoICFwYWdldGFibGVfaXNfbnVs
bChvbGRfc2hhZG93KSApCisgICAgICAgIHNoYWRvd19wdXRfdG9wX2xldmVs
KHYtPmRvbWFpbiwgb2xkX3NoYWRvdyk7CisKKyAgICBpZiAoICFndWVzdF91
cGRhdGUgKQogICAgICAgICByZXR1cm47CiAKICAgICBpZiAoIHYtPmFyY2gu
cHYubmVlZF91cGRhdGVfcnVuc3RhdGVfYXJlYSAmJiB1cGRhdGVfcnVuc3Rh
dGVfYXJlYSh2KSApCi0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbW0uaAor
KysgYi94ZW4vaW5jbHVkZS9hc20teDg2L21tLmgKQEAgLTU2NCw3ICs1NjQs
NyBAQCB2b2lkIGF1ZGl0X2RvbWFpbnModm9pZCk7CiAjZW5kaWYKIAogdm9p
ZCBtYWtlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgbWZuX3QgbWZuKTsKLXZvaWQg
dXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdik7CitwYWdldGFibGVfdCB1cGRh
dGVfY3IzKHN0cnVjdCB2Y3B1ICp2KTsKIGludCB2Y3B1X2Rlc3Ryb3lfcGFn
ZXRhYmxlcyhzdHJ1Y3QgdmNwdSAqKTsKIHZvaWQgKmRvX3BhZ2Vfd2Fsayhz
dHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgbG9uZyBhZGRyKTsKIAotLS0gYS94
ZW4vaW5jbHVkZS9hc20teDg2L3BhZ2luZy5oCisrKyBiL3hlbi9pbmNsdWRl
L2FzbS14ODYvcGFnaW5nLmgKQEAgLTEzOCw3ICsxMzgsNyBAQCBzdHJ1Y3Qg
cGFnaW5nX21vZGUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwYWRkcl90IGdhLCB1aW50MzJfdCAqcGZlYywKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z
aWduZWQgaW50ICpwYWdlX29yZGVyKTsKICNlbmRpZgotICAgIHZvaWQgICAg
ICAgICAgKCp1cGRhdGVfY3IzICAgICAgICAgICAgKShzdHJ1Y3QgdmNwdSAq
diwgaW50IGRvX2xvY2tpbmcsCisgICAgcGFnZXRhYmxlX3QgICAoKnVwZGF0
ZV9jcjMgICAgICAgICAgICApKHN0cnVjdCB2Y3B1ICp2LCBib29sIGRvX2xv
Y2tpbmcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJvb2wgbm9mbHVzaCk7CiAgICAgdm9pZCAgICAgICAgICAoKnVw
ZGF0ZV9wYWdpbmdfbW9kZXMgICApKHN0cnVjdCB2Y3B1ICp2KTsKICAgICBi
b29sICAgICAgICAgICgqZmx1c2hfdGxiICAgICAgICAgICAgICkoYm9vbCAo
KmZsdXNoX3ZjcHUpKHZvaWQgKmN0eHQsCkBAIC0zMTUsOSArMzE1LDkgQEAg
c3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHBhZ2luZ19nYV90bwogLyog
VXBkYXRlIGFsbCB0aGUgdGhpbmdzIHRoYXQgYXJlIGRlcml2ZWQgZnJvbSB0
aGUgZ3Vlc3QncyBDUjMuCiAgKiBDYWxsZWQgd2hlbiB0aGUgZ3Vlc3QgY2hh
bmdlcyBDUjM7IHRoZSBjYWxsZXIgY2FuIHRoZW4gdXNlIHYtPmFyY2guY3Iz
CiAgKiBhcyB0aGUgdmFsdWUgdG8gbG9hZCBpbnRvIHRoZSBob3N0IENSMyB0
byBzY2hlZHVsZSB0aGlzIHZjcHUgKi8KLXN0YXRpYyBpbmxpbmUgdm9pZCBw
YWdpbmdfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBub2ZsdXNo
KQorc3RhdGljIGlubGluZSBwYWdldGFibGVfdCBwYWdpbmdfdXBkYXRlX2Ny
MyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBub2ZsdXNoKQogewotICAgIHBhZ2lu
Z19nZXRfaG9zdG1vZGUodiktPnVwZGF0ZV9jcjModiwgMSwgbm9mbHVzaCk7
CisgICAgcmV0dXJuIHBhZ2luZ19nZXRfaG9zdG1vZGUodiktPnVwZGF0ZV9j
cjModiwgMSwgbm9mbHVzaCk7CiB9CiAKIC8qIFVwZGF0ZSBhbGwgdGhlIHRo
aW5ncyB0aGF0IGFyZSBkZXJpdmVkIGZyb20gdGhlIGd1ZXN0J3MgQ1IwL0NS
My9DUjQuCi0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvc2hhZG93LmgKKysr
IGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9zaGFkb3cuaApAQCAtOTcsNiArOTcs
OSBAQCB2b2lkIHNoYWRvd19ibG93X3RhYmxlc19wZXJfZG9tYWluKHN0cnVj
CiBpbnQgc2hhZG93X3NldF9hbGxvY2F0aW9uKHN0cnVjdCBkb21haW4gKmQs
IHVuc2lnbmVkIGludCBwYWdlcywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYm9vbCAqcHJlZW1wdGVkKTsKIAorLyogSGVscGVyIHRvIGludm9rZSBm
b3IgZGVmZXJyZWQgcmVsZWFzaW5nIG9mIGEgdG9wLWxldmVsIHNoYWRvdydz
IHJlZmVyZW5jZS4gKi8KK3ZvaWQgc2hhZG93X3B1dF90b3BfbGV2ZWwoc3Ry
dWN0IGRvbWFpbiAqZCwgcGFnZXRhYmxlX3Qgb2xkKTsKKwogI2Vsc2UgLyog
IUNPTkZJR19TSEFET1dfUEFHSU5HICovCiAKICNkZWZpbmUgc2hhZG93X3Zj
cHVfdGVhcmRvd24odikgQVNTRVJUKGlzX3B2X3ZjcHUodikpCkBAIC0xMTgs
NiArMTIxLDExIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBzaGFkb3dfcHJlcGFy
ZV9wYWdlX3QKIAogc3RhdGljIGlubGluZSB2b2lkIHNoYWRvd19ibG93X3Rh
Ymxlc19wZXJfZG9tYWluKHN0cnVjdCBkb21haW4gKmQpIHt9CiAKK3N0YXRp
YyBpbmxpbmUgdm9pZCBzaGFkb3dfcHV0X3RvcF9sZXZlbChzdHJ1Y3QgZG9t
YWluICpkLCBwYWdldGFibGVfdCBvbGQpCit7CisgICAgQVNTRVJUX1VOUkVB
Q0hBQkxFKCk7Cit9CisKIHN0YXRpYyBpbmxpbmUgaW50IHNoYWRvd19kb21j
dGwoc3RydWN0IGRvbWFpbiAqZCwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc3RydWN0IHhlbl9kb21jdGxfc2hhZG93X29wICpzYywKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWEVOX0dVRVNUX0hBTkRM
RV9QQVJBTSh4ZW5fZG9tY3RsX3QpIHVfZG9tY3RsKQo=

--=separator
Content-Type: application/octet-stream; name="xsa438-4.17.patch"
Content-Disposition: attachment; filename="xsa438-4.17.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvc2hhZG93OiBkZWZlciByZWxlYXNpbmcgb2YgUFYncyB0b3AtbGV2
ZWwgc2hhZG93IHJlZmVyZW5jZQoKc2hfc2V0X3RvcGxldmVsX3NoYWRvdygp
IHJlLXBpbm5pbmcgdGhlIHRvcC1sZXZlbCBzaGFkb3cgd2UgbWF5IGJlCnJ1
bm5pbmcgb24gaXMgbm90IGVub3VnaCAoYW5kIGF0IHRoZSBzYW1lIHRpbWUg
dW5uZWNlc3Nhcnkgd2hlbiB0aGUKc2hhZG93IGlzbid0IHdoYXQgd2UncmUg
cnVubmluZyBvbik6IFRoYXQgc2hhZG93IGJlY29tZXMgZWxpZ2libGUgZm9y
CmJsb3dpbmcgYXdheSAoZnJvbSBlLmcuIHNoYWRvd19wcmVhbGxvYygpKSBp
bW1lZGlhdGVseSBhZnRlciB0aGUKcGFnaW5nIGxvY2sgd2FzIGRyb3BwZWQu
IFlldCBpdCBuZWVkcyB0byByZW1haW4gdmFsaWQgdW50aWwgdGhlIGFjdHVh
bApwYWdlIHRhYmxlIHN3aXRjaCBvY2N1cnJlZC4KClByb3BhZ2F0ZSB1cCB0
aGUgY2FsbCBjaGFpbiB0aGUgc2hhZG93IGVudHJ5IHRoYXQgbmVlZHMgcmVs
ZWFzaW5nCmV2ZW50dWFsbHksIGFuZCBjYXJyeSBvdXQgdGhlIHJlbGVhc2Ug
aW1tZWRpYXRlbHkgYWZ0ZXIgc3dpdGNoaW5nIHBhZ2UKdGFibGVzLiBIYW5k
bGUgdXBkYXRlX2NyMygpIGZhaWx1cmVzIGJ5IHN3aXRjaGluZyB0byBpZGxl
IHBhZ2V0YWJsZXMuCk5vdGUgdGhhdCB2YXJpb3VzIGZ1cnRoZXIgdXNlcyBv
ZiB1cGRhdGVfY3IzKCkgYXJlIEhWTS1vbmx5IG9yIG9ubHkgYWN0Cm9uIHBh
dXNlZCB2Q1BVLXMsIGluIHdoaWNoIGNhc2Ugc2hfc2V0X3RvcGxldmVsX3No
YWRvdygpIHdpbGwgbm90IGRlZmVyCnJlbGVhc2luZyBvZiB0aGUgcmVmZXJl
bmNlLgoKV2hpbGUgY2hhbmdpbmcgdGhlIHVwZGF0ZV9jcjMoKSBob29rLCBh
bHNvIGNvbnZlcnQgdGhlICJkb19sb2NraW5nIgpwYXJhbWV0ZXIgdG8gYm9v
bGVhbi4KClRoaXMgaXMgQ1ZFLTIwMjMtMzQzMjIgLyBYU0EtNDM4LgoKUmVw
b3J0ZWQtYnk6IFRpbSBEZWVnYW4gPHRpbUB4ZW4ub3JnPgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNsb3VkLmNvbT4K
Ci0tLSBhL3hlbi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9tbS5oCisrKyBiL3hl
bi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9tbS5oCkBAIC01NTIsNyArNTUyLDcg
QEAgdm9pZCBhdWRpdF9kb21haW5zKHZvaWQpOwogI2VuZGlmCiAKIHZvaWQg
bWFrZV9jcjMoc3RydWN0IHZjcHUgKnYsIG1mbl90IG1mbik7Ci12b2lkIHVw
ZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYpOworcGFnZXRhYmxlX3QgdXBkYXRl
X2NyMyhzdHJ1Y3QgdmNwdSAqdik7CiBpbnQgdmNwdV9kZXN0cm95X3BhZ2V0
YWJsZXMoc3RydWN0IHZjcHUgKik7CiB2b2lkICpkb19wYWdlX3dhbGsoc3Ry
dWN0IHZjcHUgKnYsIHVuc2lnbmVkIGxvbmcgYWRkcik7CiAKLS0tIGEveGVu
L2FyY2gveDg2L2luY2x1ZGUvYXNtL3BhZ2luZy5oCisrKyBiL3hlbi9hcmNo
L3g4Ni9pbmNsdWRlL2FzbS9wYWdpbmcuaApAQCAtMTM4LDcgKzEzOCw3IEBA
IHN0cnVjdCBwYWdpbmdfbW9kZSB7CiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHBhZGRyX3QgZ2EsIHVpbnQzMl90ICpw
ZmVjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1bnNpZ25lZCBpbnQgKnBhZ2Vfb3JkZXIpOwogI2VuZGlmCi0gICAg
dm9pZCAgICAgICAgICAoKnVwZGF0ZV9jcjMgICAgICAgICAgICApKHN0cnVj
dCB2Y3B1ICp2LCBpbnQgZG9fbG9ja2luZywKKyAgICBwYWdldGFibGVfdCAg
ICgqdXBkYXRlX2NyMyAgICAgICAgICAgICkoc3RydWN0IHZjcHUgKnYsIGJv
b2wgZG9fbG9ja2luZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYm9vbCBub2ZsdXNoKTsKICAgICB2b2lkICAgICAg
ICAgICgqdXBkYXRlX3BhZ2luZ19tb2RlcyAgICkoc3RydWN0IHZjcHUgKnYp
OwogICAgIGJvb2wgICAgICAgICAgKCpmbHVzaF90bGIgICAgICAgICAgICAg
KShjb25zdCB1bnNpZ25lZCBsb25nICp2Y3B1X2JpdG1hcCk7CkBAIC0zMTAs
OSArMzEwLDkgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHBhZ2lu
Z19nYV90bwogLyogVXBkYXRlIGFsbCB0aGUgdGhpbmdzIHRoYXQgYXJlIGRl
cml2ZWQgZnJvbSB0aGUgZ3Vlc3QncyBDUjMuCiAgKiBDYWxsZWQgd2hlbiB0
aGUgZ3Vlc3QgY2hhbmdlcyBDUjM7IHRoZSBjYWxsZXIgY2FuIHRoZW4gdXNl
IHYtPmFyY2guY3IzCiAgKiBhcyB0aGUgdmFsdWUgdG8gbG9hZCBpbnRvIHRo
ZSBob3N0IENSMyB0byBzY2hlZHVsZSB0aGlzIHZjcHUgKi8KLXN0YXRpYyBp
bmxpbmUgdm9pZCBwYWdpbmdfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwg
Ym9vbCBub2ZsdXNoKQorc3RhdGljIGlubGluZSBwYWdldGFibGVfdCBwYWdp
bmdfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBub2ZsdXNoKQog
ewotICAgIHBhZ2luZ19nZXRfaG9zdG1vZGUodiktPnVwZGF0ZV9jcjModiwg
MSwgbm9mbHVzaCk7CisgICAgcmV0dXJuIHBhZ2luZ19nZXRfaG9zdG1vZGUo
diktPnVwZGF0ZV9jcjModiwgMSwgbm9mbHVzaCk7CiB9CiAKIC8qIFVwZGF0
ZSBhbGwgdGhlIHRoaW5ncyB0aGF0IGFyZSBkZXJpdmVkIGZyb20gdGhlIGd1
ZXN0J3MgQ1IwL0NSMy9DUjQuCi0tLSBhL3hlbi9hcmNoL3g4Ni9pbmNsdWRl
L2FzbS9zaGFkb3cuaAorKysgYi94ZW4vYXJjaC94ODYvaW5jbHVkZS9hc20v
c2hhZG93LmgKQEAgLTk5LDYgKzk5LDkgQEAgaW50IHNoYWRvd19zZXRfYWxs
b2NhdGlvbihzdHJ1Y3QgZG9tYWluCiAKIGludCBzaGFkb3dfZ2V0X2FsbG9j
YXRpb25fYnl0ZXMoc3RydWN0IGRvbWFpbiAqZCwgdWludDY0X3QgKnNpemUp
OwogCisvKiBIZWxwZXIgdG8gaW52b2tlIGZvciBkZWZlcnJlZCByZWxlYXNp
bmcgb2YgYSB0b3AtbGV2ZWwgc2hhZG93J3MgcmVmZXJlbmNlLiAqLwordm9p
ZCBzaGFkb3dfcHV0X3RvcF9sZXZlbChzdHJ1Y3QgZG9tYWluICpkLCBwYWdl
dGFibGVfdCBvbGQpOworCiAjZWxzZSAvKiAhQ09ORklHX1NIQURPV19QQUdJ
TkcgKi8KIAogI2RlZmluZSBzaGFkb3dfdmNwdV90ZWFyZG93bih2KSBBU1NF
UlQoaXNfcHZfdmNwdSh2KSkKQEAgLTEyMSw2ICsxMjQsMTEgQEAgc3RhdGlj
IGlubGluZSB2b2lkIHNoYWRvd19wcmVwYXJlX3BhZ2VfdAogCiBzdGF0aWMg
aW5saW5lIHZvaWQgc2hhZG93X2Jsb3dfdGFibGVzX3Blcl9kb21haW4oc3Ry
dWN0IGRvbWFpbiAqZCkge30KIAorc3RhdGljIGlubGluZSB2b2lkIHNoYWRv
d19wdXRfdG9wX2xldmVsKHN0cnVjdCBkb21haW4gKmQsIHBhZ2V0YWJsZV90
IG9sZCkKK3sKKyAgICBBU1NFUlRfVU5SRUFDSEFCTEUoKTsKK30KKwogc3Rh
dGljIGlubGluZSBpbnQgc2hhZG93X2RvbWN0bChzdHJ1Y3QgZG9tYWluICpk
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgeGVu
X2RvbWN0bF9zaGFkb3dfb3AgKnNjLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBYRU5fR1VFU1RfSEFORExFX1BBUkFNKHhlbl9kb21jdGxf
dCkgdV9kb21jdGwpCi0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFwLmMK
KysrIGIveGVuL2FyY2gveDg2L21tL2hhcC9oYXAuYwpAQCAtNzM5LDExICs3
MzksMTMgQEAgc3RhdGljIGJvb2wgY2ZfY2hlY2sgaGFwX2ludmxwZyhzdHJ1
Y3QgdgogICAgIHJldHVybiAxOwogfQogCi1zdGF0aWMgdm9pZCBjZl9jaGVj
ayBoYXBfdXBkYXRlX2NyMygKLSAgICBzdHJ1Y3QgdmNwdSAqdiwgaW50IGRv
X2xvY2tpbmcsIGJvb2wgbm9mbHVzaCkKK3N0YXRpYyBwYWdldGFibGVfdCBj
Zl9jaGVjayBoYXBfdXBkYXRlX2NyMygKKyAgICBzdHJ1Y3QgdmNwdSAqdiwg
Ym9vbCBkb19sb2NraW5nLCBib29sIG5vZmx1c2gpCiB7CiAgICAgdi0+YXJj
aC5odm0uaHdfY3JbM10gPSB2LT5hcmNoLmh2bS5ndWVzdF9jclszXTsKICAg
ICBodm1fdXBkYXRlX2d1ZXN0X2NyMyh2LCBub2ZsdXNoKTsKKworICAgIHJl
dHVybiBwYWdldGFibGVfbnVsbCgpOwogfQogCiBzdGF0aWMgYm9vbCBmbHVz
aF92Y3B1KGNvbnN0IHN0cnVjdCB2Y3B1ICp2LCBjb25zdCB1bnNpZ25lZCBs
b25nICp2Y3B1X2JpdG1hcCkKLS0tIGEveGVuL2FyY2gveDg2L21tL3NoYWRv
dy9jb21tb24uYworKysgYi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L2NvbW1v
bi5jCkBAIC0yNTkwLDEzICsyNTkwLDEzIEBAIHZvaWQgY2ZfY2hlY2sgc2hh
ZG93X3VwZGF0ZV9wYWdpbmdfbW9kZXMKIH0KIAogLyogU2V0IHVwIHRoZSB0
b3AtbGV2ZWwgc2hhZG93IGFuZCBpbnN0YWxsIGl0IGluIHNsb3QgJ3Nsb3Qn
IG9mIHNoYWRvd190YWJsZSAqLwotdm9pZCBzaF9zZXRfdG9wbGV2ZWxfc2hh
ZG93KHN0cnVjdCB2Y3B1ICp2LAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVuc2lnbmVkIGludCBzbG90LAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIG1mbl90IGdtZm4sCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdW5zaWduZWQgaW50IHJvb3RfdHlwZSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBtZm5fdCAoKm1ha2Vfc2hhZG93KShzdHJ1Y3QgdmNwdSAq
diwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBtZm5fdCBnbWZuLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHNoYWRvd190eXBl
KSkKK3BhZ2V0YWJsZV90IHNoX3NldF90b3BsZXZlbF9zaGFkb3coc3RydWN0
IHZjcHUgKnYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVuc2lnbmVkIGludCBzbG90LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBtZm5fdCBnbWZuLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgcm9vdF90eXBlLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCAoKm1ha2Vfc2hh
ZG93KShzdHJ1Y3QgdmNwdSAqdiwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3QgZ21mbiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdWludDMyX3Qgc2hhZG93X3R5cGUpKQogewogICAgIG1m
bl90IHNtZm47CiAgICAgcGFnZXRhYmxlX3Qgb2xkX2VudHJ5LCBuZXdfZW50
cnk7CkBAIC0yNjUzLDIwICsyNjUzLDM3IEBAIHZvaWQgc2hfc2V0X3RvcGxl
dmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdQogICAgICAgICAgICAgICAgICAgbWZu
X3goZ21mbiksIG1mbl94KHBhZ2V0YWJsZV9nZXRfbWZuKG5ld19lbnRyeSkp
KTsKICAgICB2LT5hcmNoLnBhZ2luZy5zaGFkb3cuc2hhZG93X3RhYmxlW3Ns
b3RdID0gbmV3X2VudHJ5OwogCi0gICAgLyogRGVjcmVtZW50IHRoZSByZWZj
b3VudCBvZiB0aGUgb2xkIGNvbnRlbnRzIG9mIHRoaXMgc2xvdCAqLwotICAg
IGlmICggIXBhZ2V0YWJsZV9pc19udWxsKG9sZF9lbnRyeSkgKQorICAgIC8q
CisgICAgICogRGVjcmVtZW50IHRoZSByZWZjb3VudCBvZiB0aGUgb2xkIGNv
bnRlbnRzIG9mIHRoaXMgc2xvdCwgdW5sZXNzCisgICAgICogd2UncmUgc3Rp
bGwgcnVubmluZyBvbiB0aGF0IHNoYWRvdyAtIGluIHRoYXQgY2FzZSBpdCds
bCBuZWVkIGhvbGRpbmcKKyAgICAgKiBvbiB0byB1bnRpbCB0aGUgYWN0dWFs
IHBhZ2UgdGFibGUgc3dpdGNoIGRpZCBvY2N1ci4KKyAgICAgKi8KKyAgICBp
ZiAoICFwYWdldGFibGVfaXNfbnVsbChvbGRfZW50cnkpICYmICh2ICE9IGN1
cnJlbnQgfHwgIWlzX3B2X2RvbWFpbihkKSkgKQogICAgIHsKLSAgICAgICAg
bWZuX3Qgb2xkX3NtZm4gPSBwYWdldGFibGVfZ2V0X21mbihvbGRfZW50cnkp
OwotICAgICAgICAvKiBOZWVkIHRvIHJlcGluIHRoZSBvbGQgdG9wbGV2ZWwg
c2hhZG93IGlmIGl0J3MgYmVlbiB1bnBpbm5lZAotICAgICAgICAgKiBieSBz
aGFkb3dfcHJlYWxsb2MoKTogaW4gUFYgbW9kZSB3ZSdyZSBzdGlsbCBydW5u
aW5nIG9uIHRoaXMKLSAgICAgICAgICogc2hhZG93IGFuZCBpdCdzIG5vdCBz
YWZlIHRvIGZyZWUgaXQgeWV0LiAqLwotICAgICAgICBpZiAoICFtZm5fdG9f
cGFnZShvbGRfc21mbiktPnUuc2gucGlubmVkICYmICFzaF9waW4oZCwgb2xk
X3NtZm4pICkKLSAgICAgICAgewotICAgICAgICAgICAgcHJpbnRrKFhFTkxP
R19HX0VSUiAiY2FuJ3QgcmUtcGluICUiUFJJX21mbiJcbiIsIG1mbl94KG9s
ZF9zbWZuKSk7Ci0gICAgICAgICAgICBkb21haW5fY3Jhc2goZCk7Ci0gICAg
ICAgIH0KLSAgICAgICAgc2hfcHV0X3JlZihkLCBvbGRfc21mbiwgMCk7Cisg
ICAgICAgIHNoX3B1dF9yZWYoZCwgcGFnZXRhYmxlX2dldF9tZm4ob2xkX2Vu
dHJ5KSwgMCk7CisgICAgICAgIG9sZF9lbnRyeSA9IHBhZ2V0YWJsZV9udWxs
KCk7CiAgICAgfQorCisgICAgLyoKKyAgICAgKiAyLSBhbmQgMy1sZXZlbCBz
aGFkb3cgbW9kZSBpcyB1c2VkIGZvciBIVk0gb25seS4gVGhlcmVmb3JlIHdl
IG5ldmVyIHJ1bgorICAgICAqIG9uIHN1Y2ggYSBzaGFkb3csIHNvIG9ubHkg
Y2FsbCBzaXRlcyByZXF1ZXN0aW5nIGFuIEw0IHNoYWRvdyBuZWVkIHRvIHBh
eQorICAgICAqIGF0dGVudGlvbiB0byB0aGUgcmV0dXJuZWQgdmFsdWUuCisg
ICAgICovCisgICAgQVNTRVJUKHBhZ2V0YWJsZV9pc19udWxsKG9sZF9lbnRy
eSkgfHwgcm9vdF90eXBlID09IFNIX3R5cGVfbDRfNjRfc2hhZG93KTsKKwor
ICAgIHJldHVybiBvbGRfZW50cnk7Cit9CisKKy8qCisgKiBIZWxwZXIgaW52
b2tlZCB3aGVuIHJlbGVhc2luZyBvZiBhIHRvcC1sZXZlbCBzaGFkb3cncyBy
ZWZlcmVuY2Ugd2FzCisgKiBkZWZlcnJlZCBpbiBzaF9zZXRfdG9wbGV2ZWxf
c2hhZG93KCkgYWJvdmUuCisgKi8KK3ZvaWQgc2hhZG93X3B1dF90b3BfbGV2
ZWwoc3RydWN0IGRvbWFpbiAqZCwgcGFnZXRhYmxlX3Qgb2xkX2VudHJ5KQor
eworICAgIEFTU0VSVCghcGFnZXRhYmxlX2lzX251bGwob2xkX2VudHJ5KSk7
CisgICAgcGFnaW5nX2xvY2soZCk7CisgICAgc2hfcHV0X3JlZihkLCBwYWdl
dGFibGVfZ2V0X21mbihvbGRfZW50cnkpLCAwKTsKKyAgICBwYWdpbmdfdW5s
b2NrKGQpOwogfQogCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9zaGFkb3cvbXVsdGkuYworKysgYi94
ZW4vYXJjaC94ODYvbW0vc2hhZG93L211bHRpLmMKQEAgLTMyMjQsNyArMzIy
NCw4IEBAIHN0YXRpYyB2b2lkIGNmX2NoZWNrIHNoX2RldGFjaF9vbGRfdGFi
bGUKICAgICB9CiB9CiAKLXN0YXRpYyB2b2lkIGNmX2NoZWNrIHNoX3VwZGF0
ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGludCBkb19sb2NraW5nLCBib29sIG5v
Zmx1c2gpCitzdGF0aWMgcGFnZXRhYmxlX3QgY2ZfY2hlY2sgc2hfdXBkYXRl
X2NyMyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBkb19sb2NraW5nLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBub2Zs
dXNoKQogLyogVXBkYXRlcyB2Y3B1LT5hcmNoLmNyMyBhZnRlciB0aGUgZ3Vl
c3QgaGFzIGNoYW5nZWQgQ1IzLgogICogUGFyYXZpcnR1YWwgZ3Vlc3RzIHNo
b3VsZCBzZXQgdi0+YXJjaC5ndWVzdF90YWJsZSAoYW5kIGd1ZXN0X3RhYmxl
X3VzZXIsCiAgKiBpZiBhcHByb3ByaWF0ZSkuCkBAIC0zMjM4LDYgKzMyMzks
NyBAQCBzdGF0aWMgdm9pZCBjZl9jaGVjayBzaF91cGRhdGVfY3IzKHN0cnVj
CiB7CiAgICAgc3RydWN0IGRvbWFpbiAqZCA9IHYtPmRvbWFpbjsKICAgICBt
Zm5fdCBnbWZuOworICAgIHBhZ2V0YWJsZV90IG9sZF9lbnRyeSA9IHBhZ2V0
YWJsZV9udWxsKCk7CiAjaWYgR1VFU1RfUEFHSU5HX0xFVkVMUyA9PSAzCiAg
ICAgY29uc3QgZ3Vlc3RfbDNlX3QgKmdsM2U7CiAgICAgdW5zaWduZWQgaW50
IGksIGd1ZXN0X2lkeDsKQEAgLTMyNDcsNyArMzI0OSw3IEBAIHN0YXRpYyB2
b2lkIGNmX2NoZWNrIHNoX3VwZGF0ZV9jcjMoc3RydWMKICAgICBpZiAoICFp
c19odm1fZG9tYWluKGQpICYmICF2LT5pc19pbml0aWFsaXNlZCApCiAgICAg
ewogICAgICAgICBBU1NFUlQodi0+YXJjaC5jcjMgPT0gMCk7Ci0gICAgICAg
IHJldHVybjsKKyAgICAgICAgcmV0dXJuIG9sZF9lbnRyeTsKICAgICB9CiAK
ICAgICBpZiAoIGRvX2xvY2tpbmcgKSBwYWdpbmdfbG9jayh2LT5kb21haW4p
OwpAQCAtMzMyMCwxMSArMzMyMiwxMiBAQCBzdGF0aWMgdm9pZCBjZl9jaGVj
ayBzaF91cGRhdGVfY3IzKHN0cnVjCiAjaWYgR1VFU1RfUEFHSU5HX0xFVkVM
UyA9PSA0CiAgICAgaWYgKCBzaF9yZW1vdmVfd3JpdGVfYWNjZXNzKGQsIGdt
Zm4sIDQsIDApICE9IDAgKQogICAgICAgICBndWVzdF9mbHVzaF90bGJfbWFz
ayhkLCBkLT5kaXJ0eV9jcHVtYXNrKTsKLSAgICBzaF9zZXRfdG9wbGV2ZWxf
c2hhZG93KHYsIDAsIGdtZm4sIFNIX3R5cGVfbDRfc2hhZG93LCBzaF9tYWtl
X3NoYWRvdyk7CisgICAgb2xkX2VudHJ5ID0gc2hfc2V0X3RvcGxldmVsX3No
YWRvdyh2LCAwLCBnbWZuLCBTSF90eXBlX2w0X3NoYWRvdywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93
KTsKICAgICBpZiAoIHVubGlrZWx5KHBhZ2V0YWJsZV9pc19udWxsKHYtPmFy
Y2gucGFnaW5nLnNoYWRvdy5zaGFkb3dfdGFibGVbMF0pKSApCiAgICAgewog
ICAgICAgICBBU1NFUlQoZC0+aXNfZHlpbmcgfHwgZC0+aXNfc2h1dHRpbmdf
ZG93bik7Ci0gICAgICAgIHJldHVybjsKKyAgICAgICAgcmV0dXJuIG9sZF9l
bnRyeTsKICAgICB9CiAgICAgaWYgKCAhc2hhZG93X21vZGVfZXh0ZXJuYWwo
ZCkgJiYgIWlzX3B2XzMyYml0X2RvbWFpbihkKSApCiAgICAgewpAQCAtMzM2
OCwyNCArMzM3MSwzMCBAQCBzdGF0aWMgdm9pZCBjZl9jaGVjayBzaF91cGRh
dGVfY3IzKHN0cnVjCiAgICAgICAgICAgICAgICAgZ2wyZ2ZuID0gZ3Vlc3Rf
bDNlX2dldF9nZm4oZ2wzZVtpXSk7CiAgICAgICAgICAgICAgICAgZ2wybWZu
ID0gZ2V0X2dmbl9xdWVyeV91bmxvY2tlZChkLCBnZm5feChnbDJnZm4pLCAm
cDJtdCk7CiAgICAgICAgICAgICAgICAgaWYgKCBwMm1faXNfcmFtKHAybXQp
ICkKLSAgICAgICAgICAgICAgICAgICAgc2hfc2V0X3RvcGxldmVsX3NoYWRv
dyh2LCBpLCBnbDJtZm4sIFNIX3R5cGVfbDJfc2hhZG93LAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hh
ZG93KTsKKyAgICAgICAgICAgICAgICAgICAgb2xkX2VudHJ5ID0gc2hfc2V0
X3RvcGxldmVsX3NoYWRvdyh2LCBpLCBnbDJtZm4sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU0hf
dHlwZV9sMl9zaGFkb3csCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hfbWFrZV9zaGFkb3cpOwog
ICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgc2hf
c2V0X3RvcGxldmVsX3NoYWRvdyh2LCBpLCBJTlZBTElEX01GTiwgMCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaF9t
YWtlX3NoYWRvdyk7CisgICAgICAgICAgICAgICAgICAgIG9sZF9lbnRyeSA9
IHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgaSwgSU5WQUxJRF9NRk4sIDAs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc2hfbWFrZV9zaGFkb3cpOwogICAgICAgICAgICAgfQog
ICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHNoX3NldF90b3Bs
ZXZlbF9zaGFkb3codiwgaSwgSU5WQUxJRF9NRk4sIDAsIHNoX21ha2Vfc2hh
ZG93KTsKKyAgICAgICAgICAgICAgICBvbGRfZW50cnkgPSBzaF9zZXRfdG9w
bGV2ZWxfc2hhZG93KHYsIGksIElOVkFMSURfTUZOLCAwLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hf
bWFrZV9zaGFkb3cpOworCisgICAgICAgICAgICBBU1NFUlQocGFnZXRhYmxl
X2lzX251bGwob2xkX2VudHJ5KSk7CiAgICAgICAgIH0KICAgICB9CiAjZWxp
ZiBHVUVTVF9QQUdJTkdfTEVWRUxTID09IDIKICAgICBpZiAoIHNoX3JlbW92
ZV93cml0ZV9hY2Nlc3MoZCwgZ21mbiwgMiwgMCkgIT0gMCApCiAgICAgICAg
IGd1ZXN0X2ZsdXNoX3RsYl9tYXNrKGQsIGQtPmRpcnR5X2NwdW1hc2spOwot
ICAgIHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgMCwgZ21mbiwgU0hfdHlw
ZV9sMl9zaGFkb3csIHNoX21ha2Vfc2hhZG93KTsKKyAgICBvbGRfZW50cnkg
PSBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIDAsIGdtZm4sIFNIX3R5cGVf
bDJfc2hhZG93LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc2hfbWFrZV9zaGFkb3cpOworICAgIEFTU0VSVChwYWdldGFibGVf
aXNfbnVsbChvbGRfZW50cnkpKTsKICAgICBpZiAoIHVubGlrZWx5KHBhZ2V0
YWJsZV9pc19udWxsKHYtPmFyY2gucGFnaW5nLnNoYWRvdy5zaGFkb3dfdGFi
bGVbMF0pKSApCiAgICAgewogICAgICAgICBBU1NFUlQoZC0+aXNfZHlpbmcg
fHwgZC0+aXNfc2h1dHRpbmdfZG93bik7Ci0gICAgICAgIHJldHVybjsKKyAg
ICAgICAgcmV0dXJuIG9sZF9lbnRyeTsKICAgICB9CiAjZWxzZQogI2Vycm9y
IFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbgpAQCAtMzQ3Myw2ICszNDgyLDgg
QEAgc3RhdGljIHZvaWQgY2ZfY2hlY2sgc2hfdXBkYXRlX2NyMyhzdHJ1Ywog
CiAgICAgLyogUmVsZWFzZSB0aGUgbG9jaywgaWYgd2UgdG9vayBpdCAob3Ro
ZXJ3aXNlIGl0J3MgdGhlIGNhbGxlcidzIHByb2JsZW0pICovCiAgICAgaWYg
KCBkb19sb2NraW5nICkgcGFnaW5nX3VubG9jayh2LT5kb21haW4pOworCisg
ICAgcmV0dXJuIG9sZF9lbnRyeTsKIH0KIAogCi0tLSBhL3hlbi9hcmNoL3g4
Ni9tbS9zaGFkb3cvbm9uZS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9zaGFk
b3cvbm9uZS5jCkBAIC01Miw5ICs1MiwxMSBAQCBzdGF0aWMgdW5zaWduZWQg
bG9uZyBjZl9jaGVjayBfZ3ZhX3RvX2dmCiB9CiAjZW5kaWYKIAotc3RhdGlj
IHZvaWQgY2ZfY2hlY2sgX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGlu
dCBkb19sb2NraW5nLCBib29sIG5vZmx1c2gpCitzdGF0aWMgcGFnZXRhYmxl
X3QgY2ZfY2hlY2sgX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGJvb2wg
ZG9fbG9ja2luZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBib29sIG5vZmx1c2gpCiB7CiAgICAgQVNTRVJUX1VOUkVBQ0hB
QkxFKCk7CisgICAgcmV0dXJuIHBhZ2V0YWJsZV9udWxsKCk7CiB9CiAKIHN0
YXRpYyB2b2lkIGNmX2NoZWNrIF91cGRhdGVfcGFnaW5nX21vZGVzKHN0cnVj
dCB2Y3B1ICp2KQotLS0gYS94ZW4vYXJjaC94ODYvbW0vc2hhZG93L3ByaXZh
dGUuaAorKysgYi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L3ByaXZhdGUuaApA
QCAtMzkxLDEzICszOTEsMTMgQEAgbWZuX3Qgc2hhZG93X2FsbG9jKHN0cnVj
dCBkb21haW4gKmQsCiB2b2lkICBzaGFkb3dfZnJlZShzdHJ1Y3QgZG9tYWlu
ICpkLCBtZm5fdCBzbWZuKTsKIAogLyogU2V0IHVwIHRoZSB0b3AtbGV2ZWwg
c2hhZG93IGFuZCBpbnN0YWxsIGl0IGluIHNsb3QgJ3Nsb3QnIG9mIHNoYWRv
d190YWJsZSAqLwotdm9pZCBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHN0cnVj
dCB2Y3B1ICp2LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2ln
bmVkIGludCBzbG90LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1m
bl90IGdtZm4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu
ZWQgaW50IHJvb3RfdHlwZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBtZm5fdCAoKm1ha2Vfc2hhZG93KShzdHJ1Y3QgdmNwdSAqdiwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBt
Zm5fdCBnbWZuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVpbnQzMl90IHNoYWRvd190eXBlKSk7CitwYWdl
dGFibGVfdCBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHN0cnVjdCB2Y3B1ICp2
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l
ZCBpbnQgc2xvdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgbWZuX3QgZ21mbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdW5zaWduZWQgaW50IHJvb3RfdHlwZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgbWZuX3QgKCptYWtlX3NoYWRvdykoc3Ry
dWN0IHZjcHUgKnYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVpbnQzMl90IHNoYWRvd190eXBlKSk7CiAKIC8qIFVwZGF0ZSB0aGUg
c2hhZG93cyBpbiByZXNwb25zZSB0byBhIHBhZ2V0YWJsZSB3cml0ZSBmcm9t
IFhlbiAqLwogaW50IHNoX3ZhbGlkYXRlX2d1ZXN0X2VudHJ5KHN0cnVjdCB2
Y3B1ICp2LCBtZm5fdCBnbWZuLCB2b2lkICplbnRyeSwgdTMyIHNpemUpOwot
LS0gYS94ZW4vYXJjaC94ODYvbW0uYworKysgYi94ZW4vYXJjaC94ODYvbW0u
YwpAQCAtNTY3LDE1ICs1NjcsMTIgQEAgdm9pZCB3cml0ZV9wdGJhc2Uoc3Ry
dWN0IHZjcHUgKnYpCiAgKgogICogVXBkYXRlIHJlZiBjb3VudHMgdG8gc2hh
ZG93IHRhYmxlcyBhcHByb3ByaWF0ZWx5LgogICovCi12b2lkIHVwZGF0ZV9j
cjMoc3RydWN0IHZjcHUgKnYpCitwYWdldGFibGVfdCB1cGRhdGVfY3IzKHN0
cnVjdCB2Y3B1ICp2KQogewogICAgIG1mbl90IGNyM19tZm47CiAKICAgICBp
ZiAoIHBhZ2luZ19tb2RlX2VuYWJsZWQodi0+ZG9tYWluKSApCi0gICAgewot
ICAgICAgICBwYWdpbmdfdXBkYXRlX2NyMyh2LCBmYWxzZSk7Ci0gICAgICAg
IHJldHVybjsKLSAgICB9CisgICAgICAgIHJldHVybiBwYWdpbmdfdXBkYXRl
X2NyMyh2LCBmYWxzZSk7CiAKICAgICBpZiAoICEodi0+YXJjaC5mbGFncyAm
IFRGX2tlcm5lbF9tb2RlKSApCiAgICAgICAgIGNyM19tZm4gPSBwYWdldGFi
bGVfZ2V0X21mbih2LT5hcmNoLmd1ZXN0X3RhYmxlX3VzZXIpOwpAQCAtNTgz
LDYgKzU4MCw4IEBAIHZvaWQgdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdikK
ICAgICAgICAgY3IzX21mbiA9IHBhZ2V0YWJsZV9nZXRfbWZuKHYtPmFyY2gu
Z3Vlc3RfdGFibGUpOwogCiAgICAgbWFrZV9jcjModiwgY3IzX21mbik7CisK
KyAgICByZXR1cm4gcGFnZXRhYmxlX251bGwoKTsKIH0KIAogc3RhdGljIGlu
bGluZSB2b2lkIHNldF90bGJmbHVzaF90aW1lc3RhbXAoc3RydWN0IHBhZ2Vf
aW5mbyAqcGFnZSkKQEAgLTMyODUsNiArMzI4NCw3IEBAIGludCBuZXdfZ3Vl
c3RfY3IzKG1mbl90IG1mbikKICAgICBzdHJ1Y3QgZG9tYWluICpkID0gY3Vy
ci0+ZG9tYWluOwogICAgIGludCByYzsKICAgICBtZm5fdCBvbGRfYmFzZV9t
Zm47CisgICAgcGFnZXRhYmxlX3Qgb2xkX3NoYWRvdzsKIAogICAgIGlmICgg
aXNfcHZfMzJiaXRfZG9tYWluKGQpICkKICAgICB7CkBAIC0zMzUyLDkgKzMz
NTIsMjIgQEAgaW50IG5ld19ndWVzdF9jcjMobWZuX3QgbWZuKQogICAgIGlm
ICggIVZNX0FTU0lTVChkLCBtMnBfc3RyaWN0KSApCiAgICAgICAgIGZpbGxf
cm9fbXB0KG1mbik7CiAgICAgY3Vyci0+YXJjaC5ndWVzdF90YWJsZSA9IHBh
Z2V0YWJsZV9mcm9tX21mbihtZm4pOwotICAgIHVwZGF0ZV9jcjMoY3Vycik7
CisgICAgb2xkX3NoYWRvdyA9IHVwZGF0ZV9jcjMoY3Vycik7CisKKyAgICAv
KgorICAgICAqIEluIHNoYWRvdyBtb2RlIHVwZGF0ZV9jcjMoKSBjYW4gZmFp
bCwgaW4gd2hpY2ggY2FzZSBoZXJlIHdlJ3JlIHN0aWxsCisgICAgICogcnVu
bmluZyBvbiB0aGUgcHJpb3IgdG9wLWxldmVsIHNoYWRvdyAod2hpY2ggd2Un
cmUgYWJvdXQgdG8gcmVsZWFzZSkuCisgICAgICogU3dpdGNoIHRvIHRoZSBp
ZGxlIHBhZ2UgdGFibGVzIGluIHN1Y2ggYW4gZXZlbnQ7IHRoZSBndWVzdCB3
aWxsIGhhdmUKKyAgICAgKiBiZWVuIGNyYXNoZWQgYWxyZWFkeS4KKyAgICAg
Ki8KKyAgICBpZiAoIGxpa2VseSghbWZuX2VxKHBhZ2V0YWJsZV9nZXRfbWZu
KG9sZF9zaGFkb3cpLAorICAgICAgICAgICAgICAgICAgICAgICAgbWFkZHJf
dG9fbWZuKGN1cnItPmFyY2guY3IzICYgflg4Nl9DUjNfTk9GTFVTSCkpKSAp
CisgICAgICAgIHdyaXRlX3B0YmFzZShjdXJyKTsKKyAgICBlbHNlCisgICAg
ICAgIHdyaXRlX3B0YmFzZShpZGxlX3ZjcHVbY3Vyci0+cHJvY2Vzc29yXSk7
CiAKLSAgICB3cml0ZV9wdGJhc2UoY3Vycik7CisgICAgaWYgKCAhcGFnZXRh
YmxlX2lzX251bGwob2xkX3NoYWRvdykgKQorICAgICAgICBzaGFkb3dfcHV0
X3RvcF9sZXZlbChkLCBvbGRfc2hhZG93KTsKIAogICAgIGlmICggbGlrZWx5
KG1mbl94KG9sZF9iYXNlX21mbikgIT0gMCkgKQogICAgIHsKLS0tIGEveGVu
L2FyY2gveDg2L3B2L2RvbWFpbi5jCisrKyBiL3hlbi9hcmNoL3g4Ni9wdi9k
b21haW4uYwpAQCAtNDI0LDEwICs0MjQsMTMgQEAgYm9vbCBfX2luaXQgeHB0
aV9wY2lkX2VuYWJsZWQodm9pZCkKIAogc3RhdGljIHZvaWQgX3RvZ2dsZV9n
dWVzdF9wdChzdHJ1Y3QgdmNwdSAqdikKIHsKKyAgICBib29sIGd1ZXN0X3Vw
ZGF0ZTsKKyAgICBwYWdldGFibGVfdCBvbGRfc2hhZG93OwogICAgIHVuc2ln
bmVkIGxvbmcgY3IzOwogCiAgICAgdi0+YXJjaC5mbGFncyBePSBURl9rZXJu
ZWxfbW9kZTsKLSAgICB1cGRhdGVfY3IzKHYpOworICAgIGd1ZXN0X3VwZGF0
ZSA9IHYtPmFyY2guZmxhZ3MgJiBURl9rZXJuZWxfbW9kZTsKKyAgICBvbGRf
c2hhZG93ID0gdXBkYXRlX2NyMyh2KTsKIAogICAgIC8qCiAgICAgICogRG9u
J3QgZmx1c2ggdXNlciBnbG9iYWwgbWFwcGluZ3MgZnJvbSB0aGUgVExCLiBE
b24ndCB0aWNrIFRMQiBjbG9jay4KQEAgLTQzNiwxMyArNDM5LDMxIEBAIHN0
YXRpYyB2b2lkIF90b2dnbGVfZ3Vlc3RfcHQoc3RydWN0IHZjcHUKICAgICAg
KiBUTEIgZmx1c2ggKGZvciBqdXN0IHRoZSBpbmNvbWluZyBQQ0lEKSwgYXMg
dGhlIHRvcCBsZXZlbCBwYWdlIHRhYmxlIG1heQogICAgICAqIGhhdmUgY2hh
bmdlZCBiZWhpbmQgb3VyIGJhY2tzLiBUbyBiZSBvbiB0aGUgc2FmZSBzaWRl
LCBzdXBwcmVzcyB0aGUKICAgICAgKiBuby1mbHVzaCB1bmNvbmRpdGlvbmFs
bHkgaW4gdGhpcyBjYXNlLgorICAgICAqCisgICAgICogRnVydGhlcm1vcmUg
aW4gc2hhZG93IG1vZGUgdXBkYXRlX2NyMygpIGNhbiBmYWlsLCBpbiB3aGlj
aCBjYXNlIGhlcmUKKyAgICAgKiB3ZSdyZSBzdGlsbCBydW5uaW5nIG9uIHRo
ZSBwcmlvciB0b3AtbGV2ZWwgc2hhZG93ICh3aGljaCB3ZSdyZSBhYm91dAor
ICAgICAqIHRvIHJlbGVhc2UpLiBTd2l0Y2ggdG8gdGhlIGlkbGUgcGFnZSB0
YWJsZXMgaW4gc3VjaCBhbiBldmVudDsgdGhlCisgICAgICogZ3Vlc3Qgd2ls
bCBoYXZlIGJlZW4gY3Jhc2hlZCBhbHJlYWR5LgogICAgICAqLwogICAgIGNy
MyA9IHYtPmFyY2guY3IzOwogICAgIGlmICggc2hhZG93X21vZGVfZW5hYmxl
ZCh2LT5kb21haW4pICkKKyAgICB7CiAgICAgICAgIGNyMyAmPSB+WDg2X0NS
M19OT0ZMVVNIOworCisgICAgICAgIGlmICggdW5saWtlbHkobWZuX2VxKHBh
Z2V0YWJsZV9nZXRfbWZuKG9sZF9zaGFkb3cpLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBtYWRkcl90b19tZm4oY3IzKSkpICkKKyAgICAgICAg
eworICAgICAgICAgICAgY3IzID0gaWRsZV92Y3B1W3YtPnByb2Nlc3Nvcl0t
PmFyY2guY3IzOworICAgICAgICAgICAgLyogQWxzbyBzdXBwcmVzcyBydW5z
dGF0ZS90aW1lIGFyZWEgdXBkYXRlcyBiZWxvdy4gKi8KKyAgICAgICAgICAg
IGd1ZXN0X3VwZGF0ZSA9IGZhbHNlOworICAgICAgICB9CisgICAgfQogICAg
IHdyaXRlX2NyMyhjcjMpOwogCi0gICAgaWYgKCAhKHYtPmFyY2guZmxhZ3Mg
JiBURl9rZXJuZWxfbW9kZSkgKQorICAgIGlmICggIXBhZ2V0YWJsZV9pc19u
dWxsKG9sZF9zaGFkb3cpICkKKyAgICAgICAgc2hhZG93X3B1dF90b3BfbGV2
ZWwodi0+ZG9tYWluLCBvbGRfc2hhZG93KTsKKworICAgIGlmICggIWd1ZXN0
X3VwZGF0ZSApCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICggdi0+YXJj
aC5wdi5uZWVkX3VwZGF0ZV9ydW5zdGF0ZV9hcmVhICYmIHVwZGF0ZV9ydW5z
dGF0ZV9hcmVhKHYpICkK

--=separator--


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 09:42:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 09:42:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605433.943004 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qitix-0004Cq-G8; Wed, 20 Sep 2023 09:42:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605433.943004; Wed, 20 Sep 2023 09:42:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qitix-0004Cj-DQ; Wed, 20 Sep 2023 09:42:23 +0000
Received: by outflank-mailman (input) for mailman id 605433;
 Wed, 20 Sep 2023 09:42:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=KN1t=FE=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qitiw-0004BM-8e
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 09:42:22 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fe76fa6e-5799-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 11:42:20 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 23E484EE073A;
 Wed, 20 Sep 2023 11:42:20 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fe76fa6e-5799-11ee-8789-cb3800f73035
MIME-Version: 1.0
Date: Wed, 20 Sep 2023 11:42:20 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Jan Beulich <jbeulich@suse.com>, xen-devel@lists.xenproject.org,
 simone.ballarin@bugseng.com, sanastasio@raptorengineering.com
Subject: Re: xen | Failed pipeline for staging | ea36ac0d
In-Reply-To: <alpine.DEB.2.22.394.2309191609280.3563@ubuntu-linux-20-04-desktop>
References: <65096f918e2e5_29a56047619e@gitlab-sidekiq-catchall-v2-84c6ffbc68-bt8nn.mail>
 <a5a252a7-47b0-3ee2-3157-0b18e5f0b079@suse.com>
 <alpine.DEB.2.22.394.2309191609280.3563@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <3d00ccd4fc326fd2daa86be8897f8589@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 20/09/2023 01:12, Stefano Stabellini wrote:
> On Tue, 19 Sep 2023, Jan Beulich wrote:
>> On 19.09.2023 11:53, GitLab wrote:
>> > Job #5118269256 ( https://gitlab.com/xen-project/xen/-/jobs/5118269256/raw )
>> >
>> > Stage: analyze
>> > Name: eclair-x86_64
>> 
>> Quoting from the log:
>> 
>> ...
>> Success: No unexpected reports.
>> ...
>> ENOENT: no such file or directory, mkdir 
>> '/var/local/eclair/xen-project.ecdf/xen-project/xen/ECLAIR_normal/staging/X86_64/5118269256'
>> ...
>> 
>> If that's the sole reason for the failure, then it doesn't look to be 
>> code
>> related.
> 
> That is one issue, I am CCing Simone and Nicola. Please send a quick 
> fix
> for the "ENOENT" error from the eclair-x86_64 job.
> 
> There is a second unrelated issue breaking staging. The PPC builds are
> failing. I am CCing Shawn. Please send a quick fix if you can to 
> unblock
> gitlab-ci if you can.
> 
> https://gitlab.com/xen-project/xen/-/jobs/5122987281
> https://gitlab.com/xen-project/xen/-/pipelines/1010095539

There was an issue on our infrastructure. Now the analysis should be 
working.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 09:44:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 09:44:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605439.943015 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qitlE-00058t-TS; Wed, 20 Sep 2023 09:44:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605439.943015; Wed, 20 Sep 2023 09:44:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qitlE-00058m-PZ; Wed, 20 Sep 2023 09:44:44 +0000
Received: by outflank-mailman (input) for mailman id 605439;
 Wed, 20 Sep 2023 09:44:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DGJ5=FE=suse.com=nik.borisov@srs-se1.protection.inumbo.net>)
 id 1qitlE-00058e-4C
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 09:44:44 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on062b.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 531db77a-579a-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 11:44:43 +0200 (CEST)
Received: from DBBPR04MB7788.eurprd04.prod.outlook.com (2603:10a6:10:1e4::15)
 by AM9PR04MB8132.eurprd04.prod.outlook.com (2603:10a6:20b:3eb::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Wed, 20 Sep
 2023 09:44:38 +0000
Received: from DBBPR04MB7788.eurprd04.prod.outlook.com
 ([fe80::5b25:12c8:9f51:9b31]) by DBBPR04MB7788.eurprd04.prod.outlook.com
 ([fe80::5b25:12c8:9f51:9b31%4]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 09:44:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 531db77a-579a-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bVvKZIsC0e3cKTuIVD1pCshC/K6pE82ujA8i/GBe28wm1DKRqrXi7kJfpMZ1PjTI2/mCUno1E/vz+bO4k/5j9iSECCU4zKZo+jj4p5xHTARSX+yKqEvxItfQjbX66A9CYgCzlCHcMP95EoTP5J4waE8o64Z8B+YSOIHIA4oJJvaj5X5GRyrTAAaw6N+AGnwX4SthZZ2G7MB1xSA+RKYd+5at3OpEj9hxpAIMfPoXUW/kB66bGUOpfKewRHdDuCS6JKxeVtXbL4rWFaVB9eZ7Vata6gb+bJUm4gXvS82rnlpPDR7Oa9eorGuHHydyLRriYmDbnFryeUrx20N6wu/l7A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5UtxivITkJkOtaPuJj7c32JRnWGOu72fRn859bMMgK8=;
 b=noMzkIeB77uM0h9ZYPMDXxRoTqbk+lxO4xDeJuzVVVO/G0mE93sR+eGki1VoxLcZFMT17FUYr6CS7yESPofRO/cspJuBKr7C+Fo20+rTsJ2tJm64fS9mgGcDUPW05UlOPgV7m7biLDdQuyvhxzH/yOpvDr0QGGKOlgwwci2BGOKjGO4ln4SLJGTYRHjG8Tbj9hHHA5yM8WoQzNQ59w5GRx3BGRwMI20v8ZNVW9jJt+ar0Qh9NKHjxbYRyK/YglquYUUzL1fv9QqJ27mn66+Ev2W9lUpHXjt0NmZJfik2blwOXPx7kcZbS+281/IPpTEdgFm3Ytsf3fuerx9qTli6gw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5UtxivITkJkOtaPuJj7c32JRnWGOu72fRn859bMMgK8=;
 b=OEc6dkzJUEFYROlXBQI2n9DW+N+xZmMREPNfVS2hBlHdmz5WWBRM+r2uMGGpvD2thyXhUkkVIXhZxg0P5IqM8GJpEY0wCEZ/2G+bKQEa9v39SnruAITJNz6uS+GTK/GG6MOrpsNayhylG4Cmz9djBumdj1SzozYQyh/gTKpKaKWAFf9c/9NCAhctbjSIuzd6vxLoVu++uciLvpdSZg4i8BhMmOVOGVKne5c90wHwOnLDCFYhMjPV3a1iaZ9Xlq/8tVGKiA/X30d0NozoufV2Kj0jtpmZRzABL5ET0On1HwAeX9d2mknu+KTxfdHG1hFr35LoNt/LspIMdS8EqBRDXA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b28b68ec-b86d-6641-e303-41747b9b5c10@suse.com>
Date: Wed, 20 Sep 2023 12:44:33 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v10 06/38] Documentation/x86/64: Add a documentation for
 FRED
Content-Language: en-US
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 andrew.cooper3@citrix.com, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-7-xin3.li@intel.com>
From: Nikolay Borisov <nik.borisov@suse.com>
In-Reply-To: <20230914044805.301390-7-xin3.li@intel.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: VE1PR03CA0032.eurprd03.prod.outlook.com
 (2603:10a6:803:118::21) To DBBPR04MB7788.eurprd04.prod.outlook.com
 (2603:10a6:10:1e4::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DBBPR04MB7788:EE_|AM9PR04MB8132:EE_
X-MS-Office365-Filtering-Correlation-Id: 007d6d41-c1c3-459f-c13f-08dbb9be3484
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/820x9R7hkhc/SawfUZtrBxb7wgHZN0RAYHKWqZZpr3GDoEmZ+WpPPtv531UHqsK2eTX/AP2eiV3xBJbSbtj56cQgX74KxWZKUkJVIaW+4AeF+3JIR8pSdaEh+w9aS+wiAOsrdqwdUaSunkL89OYjt4orPFiVWbikQ9X7NP8oA3GO1H0w26RVjLI63d8fbgRVeghV1fiODxi161Wu8ErXgmhNDrn2BO5GbnYMzixtgzgUZ/9xCE08BI5Cdp0lbaUtoNz7YjLGX/0oceeFHNsW8pAVBCOmZWL4UlslB9mUW2qHKW7x7uylnwo08uyba+WsrjpZP5MqXeutioW3QWJuEO73gS3A+aN4CdMaQ+Ej7JNt3eHqmsBeVQYHkpR3e0eZx/O9ZtMdwpBYBMOOSQs4ijUOa8H3k44soZy3K1B0vLfJfmU/9mmPw2Th3lx0IDTNpGXilcr91VG9IVvOYbsrUzl+o/xTZ6i5a5nfKt5NimS+BZfuV/ckV8HWKGNtC1OLKgSvyfR/YS2ZBSlKEEs9aD6pHN8Cnn+wxBp1EpgHhhmGK2hNZp8u7+lOfleaM0zWH6pPnNBClUhbMTt6q8Q9TpmeyCqLYH5YfJfKc1YuQq6OrCieTmnwuusHLCJXhpIzIhqA1NQLDtea1luj6Rk0Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DBBPR04MB7788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(396003)(366004)(136003)(346002)(186009)(1800799009)(451199024)(8676002)(6486002)(83380400001)(6512007)(26005)(7416002)(316002)(41300700001)(2616005)(66556008)(66476007)(8936002)(5660300002)(66946007)(4326008)(6666004)(6506007)(2906002)(478600001)(31696002)(86362001)(38100700002)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Qm9nSldNZzNqcVdJcWd1YURUcThiNXdxb0MwaFZ3a1FqUXgxOVV4OTdvUEtX?=
 =?utf-8?B?S0ZxcW9TMEpTMlk1Tk04SlExT2Rqbm1pOWR3YUNabDVwRXJFWmhTUzlTNVF5?=
 =?utf-8?B?Sm9kNUtWb2ZZMU9QanFHRk5WT1gxbzBKRTh0S3dMdkV6amNodmZ6OWR0cnJR?=
 =?utf-8?B?WDFzMFZ0dEhwV1RTdzlqOUdwc1hsZUNQcU15a0RTL2dqbWE0S0VkV2NZT005?=
 =?utf-8?B?QnpSZW83S2ZaTWdtUWc0MmNOWDJjeGJ1UWhFdktkYzZoMWFacTVyWlk3cEtu?=
 =?utf-8?B?cUxQeUhkcjd0bURSVWgzMkMvaGZwL0FaQzFQdnY1cTd3ZHBkaW1Pd00wS3Vq?=
 =?utf-8?B?ZkpQMlZ5VlIxYVVReWlad3padjQzOWFIbE03aVJRa042T3pxVmtWNzQ3WThI?=
 =?utf-8?B?VjFHTHBmV0h3aGQ3dzJPZEN0ZWpkZ2pCaW9kRUVKZm92RHduUHY5NFRmMXFR?=
 =?utf-8?B?aFhRZ1h1MmV3UXJZU0VPcEUvYVZvZWFSaEJFRGxXbzcwMkQrcVNXYUdsWHAz?=
 =?utf-8?B?YnBqSXprazB6YnYvL3FIRXI0RnUyVUJoS2x0NXR5ZkcwU3Vud1VjRXlMaUly?=
 =?utf-8?B?YTFleUZkdnhOQjJCTTAwMW1sS0tQWFNjdFV6clA1ZGxrM3REV1FwVE1xd1Jj?=
 =?utf-8?B?VVBQRkNNWTloRmFyZFBCYmxhbUJkd2RZZ2xBSTlQSWpoL29CNHZxQUFFTU44?=
 =?utf-8?B?OXNWeStmL0I4Ui9ZaStNbzQxTkVsMHB6YWVJeERQMHJOSkplam50UW5VN1BW?=
 =?utf-8?B?WlZhTkVxcGZNYzRLY2tORURKYkdyZFJJbDdHTEtTaldSazRRcTdWcUZNRkEv?=
 =?utf-8?B?TE9ucHlzTy9ma2dDVjEvRUNoam1VTnRqTDZ3ZnE0NTkrVGlCeDVXZHFYWVd6?=
 =?utf-8?B?aXF6WTBOQ3huYzdKeng1MEZ5ZFF0azZ5VkxEdis4TTZxREVROFBSK3Q1R3k0?=
 =?utf-8?B?L2RYOUlDTXVsTmNmOTU2TVZaUXpKNlhzd2NpU0dTMzZPZEEzN0RmL1RjcFVB?=
 =?utf-8?B?OVVBK0xGRVpuMEJSVHVoNjNNbEZTTlN2TmFIcEczZ2QwZWYrcUpmN3pEZEhK?=
 =?utf-8?B?SDNZcjFJSGZ4VGptSmhjM3ZsSDhsamw0L1B4bXJBS0RvYytqd2xuL3BkK1RJ?=
 =?utf-8?B?ZE5kRDBvaFdoanhKeStnckhVVmdlekxxSmI3bm5KUk40Z3ZrRHdQTWtlYmpK?=
 =?utf-8?B?MjhnYTUvNXVScXdSV0pxWm9NeWVuSVJCSEZLRGQwNUZ3UlJBb0tPaFVIbGxN?=
 =?utf-8?B?aERMK0JHMkk2RHd5WUhtSU1NT24vbTM2aTBNcUcwRDBzd1NVMXJQR1hRSGI4?=
 =?utf-8?B?VEVibkRMZzI0SjAxOVpCWXdlV0Y1VHlnUW9uKzJHQTA3SWJhcS9TdDRhS3FW?=
 =?utf-8?B?c1lZSFZaVDRRU2lYajBHOFRWS3ppUGUrbklyU0MzbWpjQ0NiM2tEOHVkVnpu?=
 =?utf-8?B?NVJOVmlyT0RINk1LTzFWUXB4ZE14MmNIQmEyL0JlRjJCVWZvMjRwUzVDZnNT?=
 =?utf-8?B?NG4rYWtCSHpENy9mYXdqTVVLaVpGZklMaWhodzlQdlIrSVlJTllQZVlsbjlk?=
 =?utf-8?B?QllLc3Z5SlVvRldpc3UyRlpjV0FIbU8xZm9mRnUzMUg3SjdHalhpYlZzVGJy?=
 =?utf-8?B?Z0Uya0NZSnp1TVBMWkQrOUxFRDJIL01hVlBhWlB0d05DamdBWFJLb3Nsdm5I?=
 =?utf-8?B?ZnB1VU5UUTFEb3h6bmdwSTJtSHhZdFVkMmpLU3RjVEVFQytma3A2V25DWTNl?=
 =?utf-8?B?Rmp0ZDBnMzVCS1NmeEF0RVE4QS9jR0hoVWdPRXJ5T0N4VC9nRlp5L1B4VWVM?=
 =?utf-8?B?OGwyalBTOVNCemxVOWpCS3h2QlNPOFFpZ3FvWXQzbnN0TDF4U3J0U2xraTli?=
 =?utf-8?B?VE9ObFhJc3BPcTZFdGtFNnlqOHhFZXQ2OTc3Nm1WWGoxTnVzWDV6c2dtcDhZ?=
 =?utf-8?B?a3NSd0xxTFEwTzg4K1dVWklJZ1pCR2Y1dlplbEFreDZEbzJpYXJiQ1RCWFVX?=
 =?utf-8?B?VGNHZU1nUGJQUVhkcFZkaWVxWEdnT2dPK3NSOUYvaTByOUdTeENsV3BzdnJq?=
 =?utf-8?B?MVA2UEhnTndVQ1dkY0NuNklGeG96d3k3QW8rL1JkbzBaT2dmVDFPSXM1ZThQ?=
 =?utf-8?Q?9bQg/GoKF8dfNw8GdV5kbP/Sm?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 007d6d41-c1c3-459f-c13f-08dbb9be3484
X-MS-Exchange-CrossTenant-AuthSource: DBBPR04MB7788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 09:44:38.2383
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 2XMekrE4+SoCTkFVNs/qagiRU44pYDYVD0SoV2WR4VN+qkAjWlrAIfM73A6wOPqieUCnZEX4x8Y7lY6xQbbLQw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8132



On 14.09.23 г. 7:47 ч., Xin Li wrote:
> Briefly introduce FRED, and its advantages compared to IDT.
> 
> Signed-off-by: Xin Li <xin3.li@intel.com>
> ---
>   Documentation/arch/x86/x86_64/fred.rst  | 98 +++++++++++++++++++++++++
>   Documentation/arch/x86/x86_64/index.rst |  1 +
>   2 files changed, 99 insertions(+)
>   create mode 100644 Documentation/arch/x86/x86_64/fred.rst
> 
> diff --git a/Documentation/arch/x86/x86_64/fred.rst b/Documentation/arch/x86/x86_64/fred.rst
> new file mode 100644
> index 000000000000..a4ebb95f92c8
> --- /dev/null
> +++ b/Documentation/arch/x86/x86_64/fred.rst
> @@ -0,0 +1,98 @@
> +.. SPDX-License-Identifier: GPL-2.0
> +
> +=========================================
> +Flexible Return and Event Delivery (FRED)
> +=========================================
> +
> +Overview
> +========
> +
> +The FRED architecture defines simple new transitions that change
> +privilege level (ring transitions). The FRED architecture was
> +designed with the following goals:
> +
> +1) Improve overall performance and response time by replacing event
> +   delivery through the interrupt descriptor table (IDT event
> +   delivery) and event return by the IRET instruction with lower
> +   latency transitions.
> +
> +2) Improve software robustness by ensuring that event delivery
> +   establishes the full supervisor context and that event return
> +   establishes the full user context.
> +
> +The new transitions defined by the FRED architecture are FRED event
> +delivery and, for returning from events, two FRED return instructions.
> +FRED event delivery can effect a transition from ring 3 to ring 0, but
> +it is used also to deliver events incident to ring 0. One FRED
> +instruction (ERETU) effects a return from ring 0 to ring 3, while the
> +other (ERETS) returns while remaining in ring 0. Collectively, FRED
> +event delivery and the FRED return instructions are FRED transitions.
> +
> +In addition to these transitions, the FRED architecture defines a new
> +instruction (LKGS) for managing the state of the GS segment register.
> +The LKGS instruction can be used by 64-bit operating systems that do
> +not use the new FRED transitions.
> +
> +Furthermore, the FRED architecture is easy to extend for future CPU
> +architectures.
> +
> +Software based event dispatching
> +================================
> +
> +FRED operates differently from IDT in terms of event handling. Instead
> +of directly dispatching an event to its handler based on the event
> +vector, FRED requires the software to dispatch an event to its handler
> +based on both the event's type and vector. Therefore, an event dispatch
> +framework must be implemented to facilitate the event-to-handler
> +dispatch process. The FRED event dispatch framework takes control
> +once an event is delivered, and employs a two-level dispatch.
> +
> +The first level dispatching is event type based, and the second level
> +dispatching is event vector based.
> +
> +Full supervisor/user context
> +============================
> +
> +FRED event delivery atomically save and restore full supervisor/user
> +context upon event delivery and return. Thus it avoids the problem of
> +transient states due to %cr2 and/or %dr6, and it is no longer needed
> +to handle all the ugly corner cases caused by half baked entry states.
> +
> +FRED allows explicit unblock of NMI with new event return instructions
> +ERETS/ERETU, avoiding the mess caused by IRET which unconditionally
> +unblocks NMI, e.g., when an exception happens during NMI handling.
> +
> +FRED always restores the full value of %rsp, thus ESPFIX is no longer
> +needed when FRED is enabled.
> +
> +LKGS
> +====
> +
> +LKGS behaves like the MOV to GS instruction except that it loads the
> +base address into the IA32_KERNEL_GS_BASE MSR instead of the GS
> +segment’s descriptor cache. With LKGS, it ends up with avoiding
> +mucking with kernel GS, i.e., an operating system can always operate
> +with its own GS base address.
> +
> +Because FRED event delivery from ring 3 swaps the value of the GS base
> +address and that of the IA32_KERNEL_GS_BASE MSR, and ERETU swaps the
> +value of the GS base address and that of the IA32_KERNEL_GS_BASE MSR,
> +plus the introduction of LKGS instruction, the SWAPGS instruction is
> +no longer needed when FRED is enabled, thus is disallowed (#UD).

nit: This will be more clear if rewritten: "Because FRED event delivery 
from ring 3 and ERETU both swap the value of the GS base, plus the..." .

The idea is to remove the duplicate statement that IA32_KERNEL_GS_BASE 
and the GS registers are swapped as it makes the sentence somewhat hard 
to read.


<snip>


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 09:49:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 09:49:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605468.943041 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qitqG-0007cE-QR; Wed, 20 Sep 2023 09:49:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605468.943041; Wed, 20 Sep 2023 09:49:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qitqG-0007c7-Nm; Wed, 20 Sep 2023 09:49:56 +0000
Received: by outflank-mailman (input) for mailman id 605468;
 Wed, 20 Sep 2023 09:49:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=f1ZV=FE=citrix.com=prvs=6207273cf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qitqE-0007c1-Sn
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 09:49:55 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0b2773b5-579b-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 11:49:52 +0200 (CEST)
Received: from mail-dm6nam12lp2170.outbound.protection.outlook.com (HELO
 NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.170])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 20 Sep 2023 05:49:43 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6777.namprd03.prod.outlook.com (2603:10b6:a03:40c::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.34; Wed, 20 Sep
 2023 09:49:38 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 09:49:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0b2773b5-579b-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695203392;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=kPB6DbYidbp6fu9uBXlb5gXEyF4w51KljK6FpnwDGjw=;
  b=NcmE5KfNu6bi84+L3GZ4eiA4qDuZDFUvHH3fAADfOhteWdERn9OeFysy
   3RvooC8xI/sCK/QNyLzVKTPyj4Y8S19MV7zg2DxtPVnZmiuVuXH4QHYM2
   N/BXUjzXjSz3kzevIBA/OkHuTgOTii8xE9cVaRJWAzuGKmmnlMsj2VbSL
   w=;
X-CSE-ConnectionGUID: 6HtUucXmQmelgBhPrEfJEQ==
X-CSE-MsgGUID: dx3qRFJGRpSSSGnmIeuVdQ==
X-IronPort-RemoteIP: 104.47.59.170
X-IronPort-MID: 121843946
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:Tu2pZ6tI6hewDKEwus2R4KFxg+fnVI1fMUV32f8akzHdYApBsoF/q
 tZmKT3UPf7YamLwfthzbIXgoEIFv8fTm9BrTAA9rH83FiIb+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq4lv0gnRkPaoQ5A6EzyFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwdhARUw2It+ePxb+/RcNsvt4OIuvGBdZK0p1g5Wmx4fcOZ7nmGv+PyfoGmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgf60b4K9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAttCSObpqqACbFu7ynxIESc4d3SBucKCsWG4XvNSN
 nIYw397xUQ13AnxJjXnZDWGp3qDsg8ZSsBnOeQw4wGQyYLZ+w+cQGMDS1ZpeNEg8cM7WzEu/
 luIhM/yQyxitqWPTnCQ/avSqim9UQAOMWIdbDUYCwsE59Xuqps6iB7nR9NvVqWyi7XdPjX9w
 CuDqiQksJwVgdQWzKWw/V3BgDWEq4DAS0g+4QC/Y46+xgZwZYrga4n271HetKxENNzAEQHHu
 2UYkc+D6uxIFYuKiCGGXOQKGveu+uqBNzrfx1VoGvHN6giQxpJqRqgIiBkWGaujGp9slePBC
 KMLhT5s2Q==
IronPort-HdrOrdr: A9a23:0dXVVqpSgVAKEvz08jk60tYaV5tlLNV00zEX/kB9WHVpm5Oj+f
 xGzc516farslossSkb6K290KnpewK4yXcH2/hsAV7CZnithILMFutfBOTZskTd8kHFh41gPO
 JbAtJD4b7LfBVHZKTBkXGF+r8bqbHtncHJuQ6d9QYXcegAUdAF0+4NMHf8LqQAfnggOXNWLu
 v/2uN34x6bPVgHZMWyAXcIG8LZocfQqZ7gaRkaQzY69Qinl1qTmfHHOind+i1bfyJEwL8k/2
 SAuRf+/L+fv/ayzQKZ/3PP7q5RhMDqxrJ4dYKxY4kuW3TRYzSTFcdcso65zXIISSaUmRMXee
 z30lcd1gJImjfsly+O0FzQMkLboUkTAjfZuCGlaD3Y0IDEbQN/MtFGg41BdBvf9g4PgPFQuZ
 g7hl6xht5vFhXHkz3659/UEzdQtmTxj0YDvIco/jpiua13Us4LkWXaxjIMLL4QWC3984wpC+
 9oEYXV4+tXa0qTazTDsnBo28HEZAV7Iv4oeDlxhiW56UkgoJlC9Tpv+OUP2nMbsJ4tQZhN4O
 rJdqxuibFVV8cTKaZwHv0IT8e7AnHEBUukChPYHX33UKUcf37doZ/+57s4oOmsZZwT1ZM33J
 DMSklRu2I+c1/nTceOwJpI+BbQR3jVZ0Wk9uhOo5xi/rHsTrviNiOODFgojsu7uv0aRtbWXv
 6iUagmd8ML7VGebLqh8zeOKKW6c0NuIfH9kuxLK26zng==
X-Talos-CUID: 9a23:fA22126cZwqjeLupBNssqm4IJ90uQnjkyXrULGW4MXxERp+4cArF
X-Talos-MUID: 9a23:QdctawgYYljiWYn3pS9vo8MpONcz+p6AKm83ia49gOaCMA19JgmRtWHi
X-IronPort-AV: E=Sophos;i="6.02,161,1688443200"; 
   d="scan'208";a="121843946"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oWF5ADe25Hmcm3zdcwmsPw14OXMV0075JBk7wcZMYWTXWtYVcqJQIhUNKwgzDTcYeRhMM/2GWoduq16tZkD0ANexmPTdPRGfOI1UNWFu3tMqdVHkU/bsfg/+74CvrLSAlZG0WvSu+kxT0bk7ee31rVpC8MPt4Ecz4sGOT6FDQ7eKw1bAt3smta1GED19r1DdBz96D6Qa0hWbyirTfRzgnZ5MLZ3dCV/SygCY0OJejetMJbz+Jd/bG712vi/GIzHIsMQjHIFwUTRYKUlpEmWN11rVPzGrgxEW5Z+PzMmc37ZTCO57fxSBpRMyhoOoAEhuHqEWkCVGj37IWXdzRkrzgA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dDDowD9H8w+aIqHSiMv4jxBQmSjDbOAEQIF92F2dLNY=;
 b=itP+LejvDFxweDYy6FDUsl54CWRAFWmflvjUIHh+bRh3H52BfAGQJuc7kNDApsRC3B2C29+LypruhfjNy8tdBQPuh9dZ2b/GT4/Gn33H3DYvaPL2Hcuuv0+4pY5wHsT0PxnnK/ZiMyDt23vtms1d2V0/w9WskWgpr3Ey4EVCcDGFd5ksIj5RhEkGy5U5vJdj4eb1VSXV1CK+jplfKIsv/3RszT2DD9R7mEmdO08JX4hlgSz5dFIFxybJIDBbpkPdkyeXObwrnNzLQUqtXmJ4SbUK3kcXfGY8aJJg3a+hwuoYPML5ziLiQEXrkt+7VtHlu+0pxtvx0CkaO2m/t+bwvQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dDDowD9H8w+aIqHSiMv4jxBQmSjDbOAEQIF92F2dLNY=;
 b=cRlTljJ3XZ7AiBcxZinoUIdTyZ7M75KgSHQRztPFwAuGAuc0R/O4/0s/J3sVVoYHFSL+7onZFuG2omd/ntq/h/pU9YH4rN4wD40m2RMa+culVJrlZ6BbRIBI0rx4dCtdSJCIjM/4Vq8BdVtB6i0aEZJ4TJh+zaJCG9DWXYPAIf0=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 20 Sep 2023 11:49:31 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>
Subject: Re: [PATCH v9 06/16] vpci/header: implement guest BAR register
 handlers
Message-ID: <ZQrAK-XgKQwEPVED@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-7-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20230829231912.4091958-7-volodymyr_babchuk@epam.com>
X-ClientProxiedBy: MRXP264CA0009.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:15::21) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6777:EE_
X-MS-Office365-Filtering-Correlation-Id: 36d7de99-5c94-45f8-c34e-08dbb9bee784
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mSK4lP3551o/gTgPUEb8kEszXI1CeL2zGNUzcqfAUhgdd0LMNSdMRSwinUaK6k9QlzhWWDxnSYvnQErxg5N4F6KxWx/fpH0oeQ3s/zL7Kus0VnITEZjP/9xW/McbJl6gRcchr9rL0LMiSlgE2nQU6XTg6t69JikTtcwCzWSVmUL/nkLQNuqv/lpEfzSuwZuxI5HHqlIOFPGYasmbdCGgL/WGfRtHK2z+CYxnbYuIEZnuxxQ06Tl3cstbebAcFBHShDb5v15YA00LWIuFRnASv6DLWPli9SfjFrxux+OSoAkVpFTsKVsWwV+pQxpT3QxpMGjgcTO5nVBUi+crwcZUX2T0Bgrtcwsnc6gSYOmS4WBNVhulGSJN1r76dnWxvF6ED53epuMgh83r9EqZV2Q5V19dkyQ4pF2a2eeJdKVFD3LmZ+2T/uXJ4Wst5m6jF6cwavwUMiCZtLWt68pwrU4AQu8V84rauvcXXh/9Nona6PMja2mxqp3PJtcGGm3IHtmcpwCkBXt+jabBQrrKHB0ARzO5fvKi6vy/ohot/3ME4FVLe+ca1U/q8SZ0rB6iQ6js
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(376002)(396003)(366004)(39860400002)(136003)(346002)(451199024)(1800799009)(186009)(2906002)(5660300002)(26005)(66556008)(41300700001)(54906003)(66476007)(316002)(6916009)(66946007)(478600001)(8936002)(8676002)(4326008)(6666004)(6486002)(6506007)(9686003)(6512007)(85182001)(33716001)(38100700002)(82960400001)(86362001)(83380400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bmV2TnFlRnlhWkx0RG9qTHVueWRUaU1zRzJlNWs2SEpyNC9NWDdzVzRISVM1?=
 =?utf-8?B?V0RjNW5MeStzK2dJY2VGaDJpMzJ4T1h3Z1Y1am56cjZhc2dNWFBJRHkrR3I1?=
 =?utf-8?B?NHVqSENJSUVrRUk1QllCcmJQYWlxS2QrVFd4YitFZUMyK1J5WThJV1RSVS94?=
 =?utf-8?B?eCtqenZIOHJsR1RnOEtwSUY4bTMvTzU1am52SEJITisxUkd5MS94ZzlPYUlC?=
 =?utf-8?B?L1FmVUpzak0xSzFyUHB2Ni9lWGNoYlZnSS9JNHZnbjVyUWV3VDJaWmU4TnBH?=
 =?utf-8?B?eStMNjhhMTNucy9FeXFLVWVpaDlpRVJSWW52TG1yZVFkZklmUllvVFNJUi9w?=
 =?utf-8?B?dm9Ib1RkeDgrT3NTbHRBN1NUWXVKSiszckpCT2hnL0NiMFVkSy8vZklMTTBk?=
 =?utf-8?B?SXJLaXduZzJWZS9xR2dFc09rS1dDU3VsTDRHYjdYZVN4Z2hYSkNYaUx6UVp4?=
 =?utf-8?B?WXBFb1BkQWsyTE1VWW92SlErTkdpU2VTb0s2NTVIN2ZpREk3K2lwSlpFNVdN?=
 =?utf-8?B?bEtQZTdwQlNZcXIxYWx0R3pvWWZsVXc4SkNuWDl1MGNobVQ1VzJFRjNSOUlG?=
 =?utf-8?B?Ym9xdlJtSE5iQjBnQjZhNXlpUnZyU2RCYXFIaTV6WHI0SGRCdUErTUJqSHpH?=
 =?utf-8?B?STBYZk1uT1lCT0tmMm5IZS8wWSt6dmpFTlFuLytUWlhvL0lVa243MnVCOFI3?=
 =?utf-8?B?SjVwU2xBUDZxZWpYd2tBRXNvYVNzU1pBd3hGSENNQzV3OEVQaG9MMndnVkx4?=
 =?utf-8?B?NlNCOE5POGw5aEZlMlZublppaWdmN3Jyb3BVVG5OOUtmdUF2K09MTVpSdG1s?=
 =?utf-8?B?d3hhUk5xaEVHTmNhNWVwMzNJbklPYTF1WFVqejJuVmVDN0ZRYWQ3U1F0YVpK?=
 =?utf-8?B?K2dHVjN4ZjJpUGpUeTJ4RllMVHI2QUw0YWUxZmRnSDV4R2NvcHFFYm4yZ09B?=
 =?utf-8?B?ek80aXgxRGtHN2N2ck5HTnhQYTQyb2xKdm8xcGIycnVSKzdKdWtuQUZuMldG?=
 =?utf-8?B?dEJRK1NBeVdSWENTTkhkSXpnTW9QUDhVL3QwVXc1eURlTnFiaTE1VkRhanlC?=
 =?utf-8?B?L3pZTUo1bDB1VWZxRHJqem82TWdicDRiNS9NY1J2c2twMmlPNUp0VHY2ejZJ?=
 =?utf-8?B?ZlJLcGdjYmVGNlZCTjdEZmphUXhPc2lOY0xSUitCMzdsYlozMW9saXRrSWRm?=
 =?utf-8?B?bmhnWC9hNmtPS2VDRWppd0FFYlhNWlNFQ3B0NmU1eVVwc3N1YVhsZUx4UTNa?=
 =?utf-8?B?R1JlRUdzbzVwK3E3d2xvb0hxeTVOeFNFUFEzVmZmeTR2eER0a2hDT2ExWmZ4?=
 =?utf-8?B?NXBIbTlsc3pGRDhHaGRFSmtGNmg3MSs5MmI1dWpTcG1nQmlkRmZKRUUwQWJM?=
 =?utf-8?B?bmVHT3p3REVoUkFvaTA1bFVOalIveXQ1d2VScEJYRjJ0cEJmUDJZVDNMenBK?=
 =?utf-8?B?YnJSQWlaVi85RlVsdFdDei9Tb2RBVTRmdkpGeTZWYXZvbTY3eTdXbzF1b1Jl?=
 =?utf-8?B?WWRsOStSVWhuT0EzUzVISmFXK2ZiR0E4MXZmbkVlYVhQODZ2djJQTC9IZ05u?=
 =?utf-8?B?VHBpWCtldmZ4bVI2ajQrNUFaa25FcVhsU2ZBQU9BUnpWeXlrQXRMbC94My85?=
 =?utf-8?B?RERQUjhDOXROdEl2QUJWVUhjclZsN1o0Z2dCRHBvZGwvYUhIWWJlY3VkQitw?=
 =?utf-8?B?L1pQc0tZNExFaEYzdXp5WkVjUis1RUx5d0tEaGZiSWl4dWg1REZ1WFBkbUpk?=
 =?utf-8?B?aWQ2dStuR2oxWmxFY1IzTGxWUUZCOFpaZ3E2aW9xOGVObFhDNFhDVGo5TVF4?=
 =?utf-8?B?WFI1eGtBenhCT0s3OG5PN3RVQkwydlhGRmNlTUIzeEtiWU5RV0Z6ODYzWitQ?=
 =?utf-8?B?SnBzL2JmQ2RCdGhFaTh3WkNsQktHdHhKSEhKUHhyR2ZJT2R3YnR2N082YWdp?=
 =?utf-8?B?Nk9DK3lOVXRmakpNUEpLeitST2dkYlJ6U1N4N0wwdTBNcjNxaFdoUzdvazhC?=
 =?utf-8?B?c05JTm5XVTJyWS9kSTV1Z3IrWFBub2NuanMxWVVxT2xza1kzbjRZSEYxNjQz?=
 =?utf-8?B?ZW8zbnoySUVBRjl6UExCMS9QVXl1NkxFTmdDT2tqK3JWelFkUUU0RWRCZXMv?=
 =?utf-8?B?YnBmREhRSTNSZkhnRll2R3k2ZDFrM2QrRDU2U3hWSWU5bVlrYlp1NlZKT1d1?=
 =?utf-8?B?c0E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	qkPH1J/fnOc9uMzYnNEPj3LKCIFPa2X6xJOoESwSRcP2mnRMOZ4oDxO3MI0YFFPL988W4ri1E6m304RqSYiRZZh4Lfc7Smy0SZNeybrZzGeUNdhWzXwCRX3PZyZq88VPNhWI1qP0YK5qhGTvj/bT5v5ZI938iuGZ+/DeNBONPty2YaPbxUZ/UktqJiiNL95eI1Ztul/lxK+S8Gmfv52pmHXHjufkixddqV5j4tgAiZIBF6ES8oPauWiYRGKtuKHFyNMkAn7DvijsVMO/aAigiwumR8AO8ccY/SQ9nZpl2e5dKcsfKw6Qun+zsUVJtOwmtI4NEGPN7d99gAkj6nS1Sr2t1iLmNsfoh6UpjnGhYZLKrt+prcohXwlPqQdRVp8oVRdW48AKS3u3u23giwyB6BrzSTZC95kSMxvnWhGOVsZSqf3xzKNLSq81kYqVXNE6uaXzAYJ5aeggH2RkiHYqyyauC3K8XxURVf1ojeq3cMIgFZ0FCjYiB61IllR86NFTZOwbQRjHu1RGGaejbFGRlrHM5n7CbGbsWIemdiRELCWVPPZ1JTCKcTcLkUyOZqEWtX3tSzj22Eum5fgmKo8bGWvKv92hAN3wnQ0fXETzaw0wNT1rR0jhZRdapxzl8V65CUWA+TpKZDgAI+5RMriAktRBZ0nZr1H5Ha1tQCI67yWRxU0HmY08MTg2P3iRf7c2MyZYjuKS0OajZwzyc1a7qJ7NOJBq46F5OjftnuEEh00jGALZrV4AxLEB5Z/irGumCdqCiLR1d8HaDkPeHIepkjUdr+D48trX5fz/e0KwAKzAZnv/lLn6dSD32G4qNEHN
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 36d7de99-5c94-45f8-c34e-08dbb9bee784
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 09:49:38.3700
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: XOKfsJ6I181XNs9W5QBz/BaacIcGqfwavCOcQg/0AIS0PNrg7739bBIE//ownt9HkrDIqEtKKsO79SvbcEqSvg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6777

On Tue, Aug 29, 2023 at 11:19:43PM +0000, Volodymyr Babchuk wrote:
> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> 
> Add relevant vpci register handlers when assigning PCI device to a domain
> and remove those when de-assigning. This allows having different
> handlers for different domains, e.g. hwdom and other guests.
> 
> Emulate guest BAR register values: this allows creating a guest view
> of the registers and emulates size and properties probe as it is done
> during PCI device enumeration by the guest.
> 
> All empty, IO and ROM BARs for guests are emulated by returning 0 on
> reads and ignoring writes: this BARs are special with this respect as
> their lower bits have special meaning, so returning default ~0 on read
> may confuse guest OS.
> 
> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> ---
> Since v9:
> - factored-out "fail" label introduction in init_bars()
> - replaced #ifdef CONFIG_X86 with IS_ENABLED()
> - do not pass bars[i] to empty_bar_read() handler
> - store guest's BAR address instead of guests BAR register view
> Since v6:
> - unify the writing of the PCI_COMMAND register on the
>   error path into a label
> - do not introduce bar_ignore_access helper and open code
> - s/guest_bar_ignore_read/empty_bar_read
> - update error message in guest_bar_write
> - only setup empty_bar_read for IO if !x86
> Since v5:
> - make sure that the guest set address has the same page offset
>   as the physical address on the host
> - remove guest_rom_{read|write} as those just implement the default
>   behaviour of the registers not being handled
> - adjusted comment for struct vpci.addr field
> - add guest handlers for BARs which are not handled and will otherwise
>   return ~0 on read and ignore writes. The BARs are special with this
>   respect as their lower bits have special meaning, so returning ~0
>   doesn't seem to be right
> Since v4:
> - updated commit message
> - s/guest_addr/guest_reg
> Since v3:
> - squashed two patches: dynamic add/remove handlers and guest BAR
>   handler implementation
> - fix guest BAR read of the high part of a 64bit BAR (Roger)
> - add error handling to vpci_assign_device
> - s/dom%pd/%pd
> - blank line before return
> Since v2:
> - remove unneeded ifdefs for CONFIG_HAS_VPCI_GUEST_SUPPORT as more code
>   has been eliminated from being built on x86
> Since v1:
>  - constify struct pci_dev where possible
>  - do not open code is_system_domain()
>  - simplify some code3. simplify
>  - use gdprintk + error code instead of gprintk
>  - gate vpci_bar_{add|remove}_handlers with CONFIG_HAS_VPCI_GUEST_SUPPORT,
>    so these do not get compiled for x86
>  - removed unneeded is_system_domain check
>  - re-work guest read/write to be much simpler and do more work on write
>    than read which is expected to be called more frequently
>  - removed one too obvious comment
> ---
>  xen/drivers/vpci/header.c | 131 +++++++++++++++++++++++++++++++++-----
>  xen/include/xen/vpci.h    |   3 +
>  2 files changed, 118 insertions(+), 16 deletions(-)
> 
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index e58bbdf68d..e96d7b2b37 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -477,6 +477,72 @@ static void cf_check bar_write(
>      pci_conf_write32(pdev->sbdf, reg, val);
>  }
>  
> +static void cf_check guest_bar_write(const struct pci_dev *pdev,
> +                                     unsigned int reg, uint32_t val, void *data)
> +{
> +    struct vpci_bar *bar = data;
> +    bool hi = false;
> +    uint64_t guest_addr = bar->guest_addr;
> +
> +    if ( bar->type == VPCI_BAR_MEM64_HI )
> +    {
> +        ASSERT(reg > PCI_BASE_ADDRESS_0);
> +        bar--;
> +        hi = true;
> +    }
> +    else
> +    {
> +        val &= PCI_BASE_ADDRESS_MEM_MASK;
> +    }
> +
> +    guest_addr &= ~(0xffffffffull << (hi ? 32 : 0));
> +    guest_addr |= (uint64_t)val << (hi ? 32 : 0);
> +
> +    guest_addr &= ~(bar->size - 1) | ~PCI_BASE_ADDRESS_MEM_MASK;

I don't think you need to mask out PCI_BASE_ADDRESS_MEM_MASK here, as
you already do it if bar->type != VPCI_BAR_MEM64_HI for val.

> +
> +    /*
> +     * Make sure that the guest set address has the same page offset
> +     * as the physical address on the host or otherwise things won't work as
> +     * expected.
> +     */
> +    if ( (guest_addr & (~PAGE_MASK)) != (bar->addr & ~PAGE_MASK) )

PAGE_OFFSET() would be easier to read.

> +    {
> +        gprintk(XENLOG_WARNING,
> +                "%pp: ignored BAR %zu write attempting to change page offset\n",
> +                &pdev->sbdf, bar - pdev->vpci->header.bars + hi);
> +        return;
> +    }
> +
> +    bar->guest_addr = guest_addr;
> +}
> +
> +static uint32_t cf_check guest_bar_read(const struct pci_dev *pdev,
> +                                        unsigned int reg, void *data)
> +{
> +    const struct vpci_bar *bar = data;
> +    uint32_t reg_val;
> +
> +    if ( bar->type == VPCI_BAR_MEM64_HI )
> +    {
> +        ASSERT(reg > PCI_BASE_ADDRESS_0);
> +        bar--;
> +        return bar->guest_addr >> 32;
> +    }
> +
> +    reg_val = bar->guest_addr;
> +    reg_val |= bar->type == VPCI_BAR_MEM32 ? PCI_BASE_ADDRESS_MEM_TYPE_32 :
> +                                             PCI_BASE_ADDRESS_MEM_TYPE_64;
> +    reg_val |= bar->prefetchable ? PCI_BASE_ADDRESS_MEM_PREFETCH : 0;
> +
> +    return reg_val;
> +}
> +
> +static uint32_t cf_check empty_bar_read(const struct pci_dev *pdev,
> +                                        unsigned int reg, void *data)
> +{
> +    return 0;
> +}

If we are going to gain a lot of helpers that return a fixed value it
might be worthwhile to introduce a helper that returns what gets
passed as 'data'.  Let's leave it as you propose for now.

> +
>  static void cf_check rom_write(
>      const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data)
>  {
> @@ -537,6 +603,7 @@ static int cf_check init_bars(struct pci_dev *pdev)
>      struct vpci_header *header = &pdev->vpci->header;
>      struct vpci_bar *bars = header->bars;
>      int rc;
> +    bool is_hwdom = is_hardware_domain(pdev->domain);
>  
>      ASSERT(rw_is_locked(&pdev->domain->pci_lock));
>  
> @@ -578,8 +645,10 @@ static int cf_check init_bars(struct pci_dev *pdev)
>          if ( i && bars[i - 1].type == VPCI_BAR_MEM64_LO )
>          {
>              bars[i].type = VPCI_BAR_MEM64_HI;
> -            rc = vpci_add_register(pdev->vpci, vpci_hw_read32, bar_write, reg,
> -                                   4, &bars[i]);
> +            rc = vpci_add_register(pdev->vpci,
> +                                   is_hwdom ? vpci_hw_read32 : guest_bar_read,
> +                                   is_hwdom ? bar_write : guest_bar_write,
> +                                   reg, 4, &bars[i]);
>              if ( rc )
>                  goto fail;
>              continue;
> @@ -589,6 +658,15 @@ static int cf_check init_bars(struct pci_dev *pdev)
>          if ( (val & PCI_BASE_ADDRESS_SPACE) == PCI_BASE_ADDRESS_SPACE_IO )
>          {
>              bars[i].type = VPCI_BAR_IO;
> +
> +            if ( !IS_ENABLED(CONFIG_X86) && !is_hwdom )
> +            {
> +                rc = vpci_add_register(pdev->vpci, empty_bar_read, NULL,
> +                                       reg, 4, NULL);
> +                if ( rc )
> +                    goto fail;

For consistency you should also set bars[i].type = VPCI_BAR_EMPTY
here.

> +            }
> +
>              continue;
>          }
>          if ( (val & PCI_BASE_ADDRESS_MEM_TYPE_MASK) ==
> @@ -605,6 +683,15 @@ static int cf_check init_bars(struct pci_dev *pdev)
>          if ( size == 0 )
>          {
>              bars[i].type = VPCI_BAR_EMPTY;
> +
> +            if ( !is_hwdom )
> +            {
> +                rc = vpci_add_register(pdev->vpci, empty_bar_read, NULL,
> +                                       reg, 4, NULL);
> +                if ( rc )
> +                    goto fail;
> +            }
> +
>              continue;
>          }
>  
> @@ -612,28 +699,40 @@ static int cf_check init_bars(struct pci_dev *pdev)
>          bars[i].size = size;
>          bars[i].prefetchable = val & PCI_BASE_ADDRESS_MEM_PREFETCH;
>  
> -        rc = vpci_add_register(pdev->vpci, vpci_hw_read32, bar_write, reg, 4,
> -                               &bars[i]);
> +        rc = vpci_add_register(pdev->vpci,
> +                               is_hwdom ? vpci_hw_read32 : guest_bar_read,
> +                               is_hwdom ? bar_write : guest_bar_write,
> +                               reg, 4, &bars[i]);
>          if ( rc )
>              goto fail;
>      }
>  
> -    /* Check expansion ROM. */
> -    rc = pci_size_mem_bar(pdev->sbdf, rom_reg, &addr, &size, PCI_BAR_ROM);
> -    if ( rc > 0 && size )
> +    /* TODO: Check expansion ROM, we do not handle ROM for guests for now. */
> +    if ( is_hwdom )
>      {
> -        struct vpci_bar *rom = &header->bars[num_bars];
> +        rc = pci_size_mem_bar(pdev->sbdf, rom_reg, &addr, &size, PCI_BAR_ROM);
> +        if ( rc > 0 && size )
> +        {
> +            struct vpci_bar *rom = &header->bars[num_bars];
>  
> -        rom->type = VPCI_BAR_ROM;
> -        rom->size = size;
> -        rom->addr = addr;
> -        header->rom_enabled = pci_conf_read32(pdev->sbdf, rom_reg) &
> -                              PCI_ROM_ADDRESS_ENABLE;
> +            rom->type = VPCI_BAR_ROM;
> +            rom->size = size;
> +            rom->addr = addr;
> +            header->rom_enabled = pci_conf_read32(pdev->sbdf, rom_reg) &
> +                                  PCI_ROM_ADDRESS_ENABLE;
>  
> -        rc = vpci_add_register(pdev->vpci, vpci_hw_read32, rom_write, rom_reg,
> -                               4, rom);
> +            rc = vpci_add_register(pdev->vpci, vpci_hw_read32, rom_write,
> +                                   rom_reg, 4, rom);
> +            if ( rc )
> +                rom->type = VPCI_BAR_EMPTY;
> +        }
> +    }
> +    else
> +    {
> +        rc = vpci_add_register(pdev->vpci, empty_bar_read, NULL,
> +                               rom_reg, 4, NULL);

You should set the BAR type to VPCI_BAR_EMPTY here.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 10:01:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 10:01:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605484.943051 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiu1b-0004pt-UX; Wed, 20 Sep 2023 10:01:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605484.943051; Wed, 20 Sep 2023 10:01:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiu1b-0004pm-Rv; Wed, 20 Sep 2023 10:01:39 +0000
Received: by outflank-mailman (input) for mailman id 605484;
 Wed, 20 Sep 2023 10:01:38 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=7N78=FE=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qiu1Z-0004pg-TB
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 10:01:38 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on20619.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::619])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ade0cb94-579c-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 12:01:34 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by DS0PR12MB7995.namprd12.prod.outlook.com (2603:10b6:8:14e::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Wed, 20 Sep
 2023 10:01:26 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Wed, 20 Sep 2023
 10:01:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ade0cb94-579c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=adih42crd0Dy8b377n+dSqi3tnHJcwvQmUkTGvpF4yso/hMQOSb/5/NEuhSzf0BrH89kTDUK1mrwmvOgtu0QSPBxoVJpTnRei0relqr0xPLIA0SOlV2cDUtIn2ui47wzz0XzoLBp4k5JfLDrRAvaxBVAI/329evIKtkUZfIzjezz7Fy4SiKzKxnkCNPn1ans9W/eklpdG/wO+CvF1b2RPOUH+XQi91x04PaDgvcVlG6ZzmOZKGJAdBbDLZc2R1l3F3QCGmiOl+85ud0jkI64bDooW+Qgc+4YAKhBgWm5VrZ0xqNCz8cLuWpDhuff1ln6057TLbzCJHCWO7jiZUgMZQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=imc0rNTMZq86xYdsy4fjYXqwQVAR4XrkSY8MU8QvQO4=;
 b=JuVAfWd89qH7fcNKfQFl1k7OoWgIJavdk6i+c+ID6dTpS7+dAdmak+HiV/ikCCxj5ACJ9sv8f6OWRgxzWIzidOyHr+Br7OAsx7uZcnAlxX9G9YP/U9IeduHskIi80o4zdV4/2/nnqQOqajDlzg2bjHpYEkVPGe3vb2Lmsw6/Y8m0yQErfFAS1i8nRPiKxltVFTS2f5UPxhxWOIN9K2HrpGoWB8L9SNWSKfE54CWoPlzZN/VXvltrHOGvphxmQj6XZnUBzmkNRLHsgi7A697b1gTPb7MPvIp6rU9bYqSjewKdB8cpvN9e9UTqtMsWBMAQpcwz5NDp/3NaOeqnU/+SVA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=imc0rNTMZq86xYdsy4fjYXqwQVAR4XrkSY8MU8QvQO4=;
 b=nmHTxJIJo+Wqu6n+Z+QeE81tz/0NJ8TmqNAzYJuJBMjqws98oG8Yg8BGKtBwymvZ30MdPqudOlajXdzXIs5iteDJf/NwYZXcUAHgwRwrVF+SucgGdOrZnClEvVCnphnigdqt8C9fw7HqZTxwewfUSmcVSsIqaFFB1hbTv+5keY4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Wed, 20 Sep 2023 18:00:55 +0800
From: Huang Rui <ray.huang@amd.com>
To: =?iso-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@gmail.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 10/13] virtio-gpu: Resource UUID
Message-ID: <ZQrC1xzMIUOqRhm3@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-11-ray.huang@amd.com>
 <CAJ+F1C+aWM+TeoLxEqYqsMUow53rEBGc_qJwNS2pU2T5D2J+xQ@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CAJ+F1C+aWM+TeoLxEqYqsMUow53rEBGc_qJwNS2pU2T5D2J+xQ@mail.gmail.com>
X-ClientProxiedBy: SG3P274CA0005.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:be::17)
 To SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|DS0PR12MB7995:EE_
X-MS-Office365-Filtering-Correlation-Id: 7e114393-d2c7-4848-84ad-08dbb9c08d20
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	183tc36QTM167KIMTKrvJbwQxWI8kpAo5HJ8E2sP97k5YRWI8p29vQcv6wikG/nEVAZj+8b33D/0/UQ/nMq+WHmbLQUpSCUb3+z30WIPe3fxUoYu15XTtyYrGPP+ovzAxKRbWDUz5RSmV5/+jLnwp1nwyxkcSX8L1G+LoqAovwU8P0hN5d9unbPFoyci4qyC7lqXWR4fTf8SDqS89JPsUTPaybmG0fmwV6Iu2lIsrLoCyZ8V7tBfYoCVpXQoTIkQOLIkK0ptkfRlCr3VpwJbl+SyUahj2lEVI7136PWyinX0ufP2oUZX9o2v7jvLN0YAYh9nvShNjMuIX+uZ9J40GalcdPpvLTJwjs/o4eF8uTEgDODWpV+qeZbRpWmBBTxB7bPNeSBGc/pEWEnFQrogLEzfh6puiyRXzfqCAO/wVXGoyAxsaHawVcaHco9wj795hbNt5IG+xc1vA+jXKDKtpYvWTKxMYCvaf16Oj+LGndSrbwsMZzOyLrJNWOufb2ecduE7cemkPLt3+jTWpv9B7dON8potXoeLPvIJv/ARlNZ5eEEKDf5AOioOG5xzjYJ9
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(136003)(376002)(346002)(396003)(1800799009)(186009)(451199024)(478600001)(6506007)(6486002)(53546011)(6666004)(86362001)(36756003)(38100700002)(8676002)(26005)(2906002)(30864003)(6512007)(83380400001)(8936002)(5660300002)(2616005)(4326008)(41300700001)(66556008)(54906003)(7416002)(316002)(66946007)(66476007)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SEJrT0cyR0tNUG44TFNNQ2VhWlUyUXFRQ2JUazlqWUR1SEFieGp4bzlWSkI4?=
 =?utf-8?B?SmpCRUExN09IZ3Qza2lCT1Z5WmZqNjRpV1czcUFaczh3TWZlYWkrcXRBRSt5?=
 =?utf-8?B?UDVva0NFZWZ0RCtiMHE2b2cwdDFXUnNjSDdHZUlsQVNtVDUwbDVTN3VVUzlj?=
 =?utf-8?B?NXNzVEFEcVU2dVZZTjBTTHBaTzBHRHgrdXlVcU1lOWpIWER5NklraGllcWdw?=
 =?utf-8?B?OWE1SGg5aC9sZGM1bjNJWFJjemJEVmI1aFVLV1hra1FycU5ocGZ0Qzc1RjN1?=
 =?utf-8?B?eWtoZDJDdDQyZFg0NHdVZVpwZzNBcFV3K2E3ZlBWUitKMk1HWkVLak5XUkNR?=
 =?utf-8?B?Yk41U043bENHdlJmVW1UT2IwWWpycHdKUWtFWjdXNmx2S2NiNnRDOHh1U0N2?=
 =?utf-8?B?cXJPcndoOEFHQlJCamlESjU5cHV6RUI5d2t6bk1XdGl6WEZNWnUrV1B6cVdj?=
 =?utf-8?B?TFJTd0hrQ2pIdHhpVXVRb0ZVaTlOTDN3OVd2cTZ6TGZoWWlsZGkvV0FOVEs4?=
 =?utf-8?B?ZUd0RGFjMU95enVYNFJlbzVtNldFUDZRVlBibVY1ZVVFOTJ0MnFsVVZuTU82?=
 =?utf-8?B?MUV2SGd1d0dsMmVsRzNuU3YrdGEyZ1djM0RWZlVDakJ0dGxicG14bEh1RTky?=
 =?utf-8?B?cFJ5VnJRT3NETUlmc1FrWjBtSUI1YWpKVWRQYS96MlBGZEdnd0doZzFkNnJs?=
 =?utf-8?B?QlZHZUFEYVR1VWhmVTJpR252UDVrRTRrMkYveFFWT2tIUnRIbno2eHVXZjJt?=
 =?utf-8?B?VzlvcHN3UmdhTnhxWnZiRHVYRThsblJtVXlIWFJ0NEtyMllHUXpHdEg1SVFT?=
 =?utf-8?B?aVlnUlYySGxDTnl3cDExZkVoajZSODJpSjYzSTNNVytxWFdkcGMwWWFobmhI?=
 =?utf-8?B?bnF6VjJIK3hIWHZsRThabzQxVVZQTlF5OGZYaHd1VEY2WkR0WG85aE92V042?=
 =?utf-8?B?U1owWmFnRkNsQjVoL3Nxbk5acS9aL1pzNml2NVhQc1RlbUtKSmhFWE1Rckdh?=
 =?utf-8?B?czZiSytZS2RPVmhHMVlKcmtjUjhwak1TN1hrV0NOWkkwY0JoRlVHNWhuTmtx?=
 =?utf-8?B?RHl0dVNXRHdTVktMdUdaTjYxTGxIRzd1OWFRbzlIbkI1bUYyMnFnWjZraGxQ?=
 =?utf-8?B?QnNSVENGU0p6eFlzN3dkRDJGQjVJWDN1R1RZMDJlZURSanpncU5Ra3Z5eFEx?=
 =?utf-8?B?MldmeGk2dGZFS3dsNXpLd1J1VHB2R2lxQlh3WWVOQVE4TlVSekM5T3FnbmMv?=
 =?utf-8?B?MkVzUG9JRHpGRHJxUmdrWHpzTitNZHNpQ3lzWk94aVVKTytJelhSYnptVW5T?=
 =?utf-8?B?YXJ1NVVtbndFV0F3bjhINUJua1ZyeHV5NDJaa0wzaUFPMk1iUVlKbjFocERB?=
 =?utf-8?B?RjltRVI4UUVKSTlDUlUreVFYRHhVT2hyM09WaGw0SHE4d0RHR05pWk5rUGkr?=
 =?utf-8?B?RFZ1S3hlTlYwTU9najZtclo0YStidHBxWENzMkFHNmRHaEVjY291aHBidDE1?=
 =?utf-8?B?dGU1OW0wUVdGVjV5Sm96ZVhjc0hkQkREeC8wYjNZVDVOTUZMamE5aTAxU01K?=
 =?utf-8?B?bjJYMk0rTVJiYUVkYm8wM0lYckN2bHdOSUt6b3BTcTR4RjVYWjJQTmkwOGsz?=
 =?utf-8?B?WFN1Q202a05tYk41S3NUWE4waWRuZkF6dnpQbkswcmdIRC8xZmV6R2QvU3pG?=
 =?utf-8?B?enlNYmdUaFc2SjFuRG10dzVsSEg2dGk2VWRHYVl0TWZ3MUdqaEJEZkQxaEUx?=
 =?utf-8?B?K2JXaXZOT284Y2hGcUVES0lRUE5xL1NIUDJocWlxeWRzOG5sRlNIWGh5L04w?=
 =?utf-8?B?b3J0RDZWT2x6MjgrMTFaT3gybTBESjhKRjBJZFlMTnh6UStZcGE0RzVyNStG?=
 =?utf-8?B?SEwwaDB2MTlIKzF3bndPRWtqOCtYRk5UMm4wNWxUZUl1NURhRUY4TGpYYmVz?=
 =?utf-8?B?dEJNWTNLUHRoYkpVK2RFV2FoTnkxcUxVZ29wcUNWVEUyT0d4amhabTVBb29U?=
 =?utf-8?B?eENaRGhDWkd2WDBlczRlRytnYkFWakZwaDVPZzI3N3Erc3JGcGJpMTZmQ2hx?=
 =?utf-8?B?enJTTkczcFF4Y2l3cDhjSGdMY3FuOUsyNXdHSTRjaUwwOG81NVc5RW02SFBE?=
 =?utf-8?Q?85NBFvat1jUMcrGFFGA8B4cuU?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7e114393-d2c7-4848-84ad-08dbb9c08d20
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 10:01:25.8791
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 6TXq9l/O/hMlLZhlRAQxuUGaSjsT+56UXLuEAyqB33lkUVGMAK1ZuSaBbksc983u58YSen3GSt6uBaE3VyaROg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7995

On Tue, Sep 19, 2023 at 05:00:05PM +0800, Marc-André Lureau wrote:
> Hi
> 
> On Fri, Sep 15, 2023 at 3:14 PM Huang Rui <ray.huang@amd.com> wrote:
> >
> > From: Antonio Caggiano <antonio.caggiano@collabora.com>
> >
> > Enable resource UUID feature and implement command resource assign UUID.
> > This is done by introducing a hash table to map resource IDs to their
> > UUIDs.
> >
> > Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> >
> > V4 -> V5:
> >     - Add virtio migration handling for uuid (Akihiko)
> >     - Adjust sequence to allocate gpu resource before virglrender resource
> >       creation (Akihiko)
> >     - Clean up (Akihiko)
> >
> >  hw/display/trace-events        |  1 +
> >  hw/display/virtio-gpu-base.c   |  2 ++
> >  hw/display/virtio-gpu-virgl.c  | 21 ++++++++++++
> >  hw/display/virtio-gpu.c        | 58 ++++++++++++++++++++++++++++++++++
> >  include/hw/virtio/virtio-gpu.h |  6 ++++
> >  5 files changed, 88 insertions(+)
> >
> > diff --git a/hw/display/trace-events b/hw/display/trace-events
> > index 2336a0ca15..54d6894c59 100644
> > --- a/hw/display/trace-events
> > +++ b/hw/display/trace-events
> > @@ -41,6 +41,7 @@ virtio_gpu_cmd_res_create_blob(uint32_t res, uint64_t size) "res 0x%x, size %" P
> >  virtio_gpu_cmd_res_unref(uint32_t res) "res 0x%x"
> >  virtio_gpu_cmd_res_back_attach(uint32_t res) "res 0x%x"
> >  virtio_gpu_cmd_res_back_detach(uint32_t res) "res 0x%x"
> > +virtio_gpu_cmd_res_assign_uuid(uint32_t res) "res 0x%x"
> >  virtio_gpu_cmd_res_xfer_toh_2d(uint32_t res) "res 0x%x"
> >  virtio_gpu_cmd_res_xfer_toh_3d(uint32_t res) "res 0x%x"
> >  virtio_gpu_cmd_res_xfer_fromh_3d(uint32_t res) "res 0x%x"
> > diff --git a/hw/display/virtio-gpu-base.c b/hw/display/virtio-gpu-base.c
> > index 4f2b0ba1f3..f44388715c 100644
> > --- a/hw/display/virtio-gpu-base.c
> > +++ b/hw/display/virtio-gpu-base.c
> > @@ -236,6 +236,8 @@ virtio_gpu_base_get_features(VirtIODevice *vdev, uint64_t features,
> >          features |= (1 << VIRTIO_GPU_F_CONTEXT_INIT);
> >      }
> >
> > +    features |= (1 << VIRTIO_GPU_F_RESOURCE_UUID);
> 
> This changes what is exposed to the guest. We should have an option
> for it, and set it to false on older machine types (similar to what is
> done for edid).
> 

Did you mean we can add "resource_uuid" in virtio_gpu_properties[] like
below, user can set it to false on older types with the param?

DEFINE_PROP_BIT("resource_uuid", VirtIOGPU, parent_obj.conf.flags,
                VIRTIO_GPU_FLAG_RESOURCE_UUID, true);

> > +
> >      return features;
> >  }
> >
> > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> > index 563a6f2f58..8a017dbeb4 100644
> > --- a/hw/display/virtio-gpu-virgl.c
> > +++ b/hw/display/virtio-gpu-virgl.c
> > @@ -36,11 +36,20 @@ static void virgl_cmd_create_resource_2d(VirtIOGPU *g,
> >  {
> >      struct virtio_gpu_resource_create_2d c2d;
> >      struct virgl_renderer_resource_create_args args;
> > +    struct virtio_gpu_simple_resource *res;
> >
> >      VIRTIO_GPU_FILL_CMD(c2d);
> >      trace_virtio_gpu_cmd_res_create_2d(c2d.resource_id, c2d.format,
> >                                         c2d.width, c2d.height);
> >
> > +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> > +    if (!res) {
> 
> needless OOM here too
> 
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> > +        return;
> > +    }
> > +    res->resource_id = c2d.resource_id;
> > +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> > +
> >      args.handle = c2d.resource_id;
> >      args.target = 2;
> >      args.format = c2d.format;
> > @@ -60,11 +69,20 @@ static void virgl_cmd_create_resource_3d(VirtIOGPU *g,
> >  {
> >      struct virtio_gpu_resource_create_3d c3d;
> >      struct virgl_renderer_resource_create_args args;
> > +    struct virtio_gpu_simple_resource *res;
> >
> >      VIRTIO_GPU_FILL_CMD(c3d);
> >      trace_virtio_gpu_cmd_res_create_3d(c3d.resource_id, c3d.format,
> >                                         c3d.width, c3d.height, c3d.depth);
> >
> > +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> > +    if (!res) {
> 
> same
> 
> > +        cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
> > +        return;
> > +    }
> > +    res->resource_id = c3d.resource_id;
> > +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> > +
> >      args.handle = c3d.resource_id;
> >      args.target = c3d.target;
> >      args.format = c3d.format;
> > @@ -682,6 +700,9 @@ void virtio_gpu_virgl_process_cmd(VirtIOGPU *g,
> >          /* TODO add security */
> >          virgl_cmd_ctx_detach_resource(g, cmd);
> >          break;
> > +    case VIRTIO_GPU_CMD_RESOURCE_ASSIGN_UUID:
> > +        virtio_gpu_resource_assign_uuid(g, cmd);
> > +        break;
> >      case VIRTIO_GPU_CMD_GET_CAPSET_INFO:
> >          virgl_cmd_get_capset_info(g, cmd);
> >          break;
> > diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c
> > index cc4c1f81bb..44414c1c5e 100644
> > --- a/hw/display/virtio-gpu.c
> > +++ b/hw/display/virtio-gpu.c
> > @@ -966,6 +966,38 @@ virtio_gpu_resource_detach_backing(VirtIOGPU *g,
> >      virtio_gpu_cleanup_mapping(g, res);
> >  }
> >
> > +void virtio_gpu_resource_assign_uuid(VirtIOGPU *g,
> > +                                     struct virtio_gpu_ctrl_command *cmd)
> > +{
> > +    struct virtio_gpu_simple_resource *res;
> > +    struct virtio_gpu_resource_assign_uuid assign;
> > +    struct virtio_gpu_resp_resource_uuid resp;
> > +    QemuUUID *uuid;
> > +
> > +    VIRTIO_GPU_FILL_CMD(assign);
> > +    virtio_gpu_bswap_32(&assign, sizeof(assign));
> > +    trace_virtio_gpu_cmd_res_assign_uuid(assign.resource_id);
> > +
> > +    res = virtio_gpu_find_check_resource(g, assign.resource_id, false, __func__, &cmd->error);
> > +    if (!res) {
> > +        return;
> > +    }
> > +
> > +    memset(&resp, 0, sizeof(resp));
> > +    resp.hdr.type = VIRTIO_GPU_RESP_OK_RESOURCE_UUID;
> > +
> > +    uuid = g_hash_table_lookup(g->resource_uuids, GUINT_TO_POINTER(assign.resource_id));
> > +    if (!uuid) {
> > +        uuid = g_new(QemuUUID, 1);
> > +        qemu_uuid_generate(uuid);
> > +        g_hash_table_insert(g->resource_uuids, GUINT_TO_POINTER(assign.resource_id), uuid);
> > +        res->has_uuid = true;
> > +    }
> > +
> > +    memcpy(resp.uuid, uuid, sizeof(QemuUUID));
> > +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
> > +}
> > +
> >  void virtio_gpu_simple_process_cmd(VirtIOGPU *g,
> >                                     struct virtio_gpu_ctrl_command *cmd)
> >  {
> > @@ -1014,6 +1046,9 @@ void virtio_gpu_simple_process_cmd(VirtIOGPU *g,
> >      case VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING:
> >          virtio_gpu_resource_detach_backing(g, cmd);
> >          break;
> > +    case VIRTIO_GPU_CMD_RESOURCE_ASSIGN_UUID:
> > +        virtio_gpu_resource_assign_uuid(g, cmd);
> > +        break;
> >      default:
> >          cmd->error = VIRTIO_GPU_RESP_ERR_UNSPEC;
> >          break;
> > @@ -1208,6 +1243,7 @@ static int virtio_gpu_save(QEMUFile *f, void *opaque, size_t size,
> >      VirtIOGPU *g = opaque;
> >      struct virtio_gpu_simple_resource *res;
> >      int i;
> > +    QemuUUID *uuid;
> >
> >      /* in 2d mode we should never find unprocessed commands here */
> >      assert(QTAILQ_EMPTY(&g->cmdq));
> > @@ -1224,9 +1260,17 @@ static int virtio_gpu_save(QEMUFile *f, void *opaque, size_t size,
> >          }
> >          qemu_put_buffer(f, (void *)pixman_image_get_data(res->image),
> >                          pixman_image_get_stride(res->image) * res->height);
> > +
> > +        qemu_put_byte(f, res->has_uuid);
> > +        if (res->has_uuid) {
> > +            uuid = g_hash_table_lookup(g->resource_uuids, GUINT_TO_POINTER(res->resource_id));
> > +            qemu_put_buffer(f, (void *)uuid, sizeof(QemuUUID));
> > +        }
> 
> This is breaking the migration format. It will need to be handled with
> an optional subsection instead.

I am using one byte to store res->has_uuid after pixman data, if check this
field is true, then have UUID data.

Would you mind to elaborate the optional subsection?

> 
> >      }
> >      qemu_put_be32(f, 0); /* end of list */
> >
> > +    g_hash_table_destroy(g->resource_uuids);
> > +
> >      return vmstate_save_state(f, &vmstate_virtio_gpu_scanouts, g, NULL);
> >  }
> >
> > @@ -1239,9 +1283,12 @@ static int virtio_gpu_load(QEMUFile *f, void *opaque, size_t size,
> >      uint32_t resource_id, pformat;
> >      void *bits = NULL;
> >      int i;
> > +    QemuUUID *uuid = NULL;
> >
> >      g->hostmem = 0;
> >
> > +    g->resource_uuids = g_hash_table_new_full(NULL, NULL, NULL, g_free);
> 
> Since it maps int -> uuid, it should probably use g_int_hash() /
> g_int_qual() instead of the default (g_direct_hash()).
> 

Thanks to reminder, will update it in V6.

> > +
> >      resource_id = qemu_get_be32(f);
> >      while (resource_id != 0) {
> >          res = virtio_gpu_find_resource(g, resource_id);
> > @@ -1292,6 +1339,12 @@ static int virtio_gpu_load(QEMUFile *f, void *opaque, size_t size,
> >          qemu_get_buffer(f, (void *)pixman_image_get_data(res->image),
> >                          pixman_image_get_stride(res->image) * res->height);
> >
> > +        res->has_uuid = qemu_get_byte(f);
> > +        if (res->has_uuid) {
> > +            qemu_get_buffer(f, (void *)uuid, sizeof(QemuUUID));
> > +            g_hash_table_insert(g->resource_uuids, GUINT_TO_POINTER(res->resource_id), uuid);
> > +        }
> > +
> >          /* restore mapping */
> >          for (i = 0; i < res->iov_cnt; i++) {
> >              hwaddr len = res->iov[i].iov_len;
> > @@ -1393,12 +1446,15 @@ void virtio_gpu_device_realize(DeviceState *qdev, Error **errp)
> >      QTAILQ_INIT(&g->reslist);
> >      QTAILQ_INIT(&g->cmdq);
> >      QTAILQ_INIT(&g->fenceq);
> > +
> > +    g->resource_uuids = g_hash_table_new_full(NULL, NULL, NULL, g_free);
> >  }
> >
> >  static void virtio_gpu_device_unrealize(DeviceState *qdev)
> >  {
> >      VirtIOGPU *g = VIRTIO_GPU(qdev);
> >
> > +    g_hash_table_destroy(g->resource_uuids);
> >      g_clear_pointer(&g->ctrl_bh, qemu_bh_delete);
> >      g_clear_pointer(&g->cursor_bh, qemu_bh_delete);
> >      g_clear_pointer(&g->reset_bh, qemu_bh_delete);
> > @@ -1452,6 +1508,8 @@ void virtio_gpu_reset(VirtIODevice *vdev)
> >          g_free(cmd);
> >      }
> >
> > +    g_hash_table_remove_all(g->resource_uuids);
> > +
> >      virtio_gpu_base_reset(VIRTIO_GPU_BASE(vdev));
> >  }
> >
> > diff --git a/include/hw/virtio/virtio-gpu.h b/include/hw/virtio/virtio-gpu.h
> > index b9adc28071..67b39fccec 100644
> > --- a/include/hw/virtio/virtio-gpu.h
> > +++ b/include/hw/virtio/virtio-gpu.h
> > @@ -63,6 +63,8 @@ struct virtio_gpu_simple_resource {
> >      MemoryRegion *region;
> >  #endif
> >
> > +    bool has_uuid;
> > +
> >      QTAILQ_ENTRY(virtio_gpu_simple_resource) next;
> >  };
> >
> > @@ -208,6 +210,8 @@ struct VirtIOGPU {
> >          QTAILQ_HEAD(, VGPUDMABuf) bufs;
> >          VGPUDMABuf *primary[VIRTIO_GPU_MAX_SCANOUTS];
> >      } dmabuf;
> > +
> > +    GHashTable *resource_uuids;
> >  };
> >
> >  struct VirtIOGPUClass {
> > @@ -285,6 +289,8 @@ void virtio_gpu_cleanup_mapping_iov(VirtIOGPU *g,
> >                                      struct iovec *iov, uint32_t count);
> >  void virtio_gpu_cleanup_mapping(VirtIOGPU *g,
> >                                  struct virtio_gpu_simple_resource *res);
> > +void virtio_gpu_resource_assign_uuid(VirtIOGPU *g,
> > +                                     struct virtio_gpu_ctrl_command *cmd);
> >  void virtio_gpu_process_cmdq(VirtIOGPU *g);
> >  void virtio_gpu_device_realize(DeviceState *qdev, Error **errp);
> >  void virtio_gpu_reset(VirtIODevice *vdev);
> > --
> > 2.34.1
> >
> >
> 
> 
> -- 
> Marc-André Lureau


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 10:03:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 10:03:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605490.943061 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiu3h-0005QH-9q; Wed, 20 Sep 2023 10:03:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605490.943061; Wed, 20 Sep 2023 10:03:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiu3h-0005QA-7H; Wed, 20 Sep 2023 10:03:49 +0000
Received: by outflank-mailman (input) for mailman id 605490;
 Wed, 20 Sep 2023 10:03:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=w83i=FE=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qiu3f-0005Q2-WA
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 10:03:48 +0000
Received: from mail-ej1-x62c.google.com (mail-ej1-x62c.google.com
 [2a00:1450:4864:20::62c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fd1e1d16-579c-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 12:03:46 +0200 (CEST)
Received: by mail-ej1-x62c.google.com with SMTP id
 a640c23a62f3a-9a64619d8fbso881104466b.0
 for <xen-devel@lists.xenproject.org>; Wed, 20 Sep 2023 03:03:46 -0700 (PDT)
Received: from leoy-huanghe (static-212-193-78-212.thenetworkfactory.nl.
 [212.78.193.212]) by smtp.gmail.com with ESMTPSA id
 y20-20020a17090668d400b009a5f7fb51d1sm9022626ejr.40.2023.09.20.03.03.45
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 20 Sep 2023 03:03:45 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fd1e1d16-579c-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1695204226; x=1695809026; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=mH8oro0gX6C/T+mH7vLzIvCCp2IR3zSkF7vdY4iq0mE=;
        b=s514wVFOYTOJWbA5dvjALvctk3euL/T0LxMDLknaczLuoUU1bcN5r0+xtUCu5yVfTc
         Yap7JhR9XUEZAbsDoPnfhLPJKfgxUq5tWqJLl74oassy2aL01rtvUHUuRLMTrrb3Ta83
         sMSAybgl2cVSdQau8B6gfvw7ifEmdNPNrWnunEyvGerEpRxddd0MXzZL/bUR++zO4N+o
         ar1/uMY5XzJ4Jz7X4+EhTGLhg/05aqistJ6My++DEVhzKT3Yfk1wXe+Ae5LhFaZqB3+d
         +KC5zwQwn6LZQFe3drcIQNMfSNSZIEFYwV9snDfOCo/XN1Kfgz3ZDJEvH3yIyrDD1t5Z
         GLYA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695204226; x=1695809026;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=mH8oro0gX6C/T+mH7vLzIvCCp2IR3zSkF7vdY4iq0mE=;
        b=tIopoSWRzEK6R8893uoJXLK7yQPAFAp5/3hWftlRzS64oYLi97lTHEsHORF+tE/1+b
         PQ64e0Q9aSP62qSw0yO8aUXkrEvIR5f5VQ21M11Qau45hw18hry1hz+m5ljjU/W/T5wO
         U9dyB2gYXr9H5kEugjOQ56eyJy4Dy9YHUertRyI0q7d8djP3gRInr8mmynf4pxNh4hGW
         7Xa+/QNrXafkLZzoo6CxPYNyD9VqFKyxrR4RixU33aXMzqwrtsipaVG19zz/YSsQXdeB
         wWpSIiMiTTV/X90iuU4WOFZa6dQUimIG/LNu24Hq45+Rj7OGO61RBjS6ieVocC0PWWig
         Pb5Q==
X-Gm-Message-State: AOJu0YzpHvHj0dBi3C2/geTllxYVaTZ5zO7/LQL5gQiYN2jv+d+4qy4P
	wBTIEUnRtBNLaJGoMBwx7NMM4g==
X-Google-Smtp-Source: AGHT+IE1Aj0gPeRJkrHVwdqKnmgP72yxcjqO9vEWFJXptvaf+nTSL0YOiZ5l1+EiLb8oVw+JTWNykw==
X-Received: by 2002:a17:907:a087:b0:9aa:186:959a with SMTP id hu7-20020a170907a08700b009aa0186959amr1532805ejc.31.1695204226271;
        Wed, 20 Sep 2023 03:03:46 -0700 (PDT)
Date: Wed, 20 Sep 2023 18:03:44 +0800
From: Leo Yan <leo.yan@linaro.org>
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Henry Wang <Henry.Wang@arm.com>, Penny Zheng <penny.zheng@arm.com>
Subject: Re: RFC: arm64: Handling reserved memory nodes
Message-ID: <20230920100344.GA71044@leoy-huanghe>
References: <20230914081607.GA1400758@leoy-huanghe.lan>
 <23a0185e-428d-496b-96b6-d5082800bfd4@xen.org>
 <20230916081541.GA3291774@leoy-huanghe.lan>
 <561f8b9d-3877-4251-8cf7-7cdf313254bb@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <561f8b9d-3877-4251-8cf7-7cdf313254bb@xen.org>

Hi Julien,

On Mon, Sep 18, 2023 at 08:26:21PM +0100, Julien Grall wrote:

[...]

> ... from my understanding reserved-memory are just normal memory that are
> set aside for a specific purpose. So Xen has to create a 'memory' node *and*
> a 'reserved-memory' region.

To be clear, Xen passes the 'reserved-memory' regions as normal memory
nodes, see [1].

> With that the kernel is supposed to exclude all the 'reserved-memory' from
> normal usage unless they have the node contains the property 'reusable'.
> This was more clear before the binding was converted to YAML in [1].

Linux kernel reserves pages for memory ranges in the 'reserved-memory'
node, no matter the 'no-map' property for a range is set or not (see the
function memmap_init_reserved_pages() -> __SetPageReserved() in Linux
kernel).

If a reserved memory range is set with 'no-map' property, the memory
region will be not mapped in the kernel's identical address space.  This
avoids the data corruption caused between the memory speculative fetch
with cachable mapping and the same memory region is used by devices
(e.g. for DMA transferring).

[...]

> > Here the problem is these reserved memory regions are passed as normal
> > memory nodes to Dom0 kernel, then Dom0 kernel allocates pages from
> > these reserved memory regions.  Apparently, this might lead to conflict,
> > e.g. the reserved memory is used by Dom0 kernel, at the meantime the
> > memory is used by another purpose (e.g. by MCU in the system).
> 
> See above. I think this is correct to pass both 'memory' and
> 'reserved-memory'. Now, it is possible that Xen may not create the
> device-tree correctly.

Agreed that now Xen wrongly create DT binding for 'reserved-memory'
node, more specific, the reserved memory nodes are wrongly passed as
normal memory nodes (again, see [1]).

> I would suggest to look how Linux is populating the memory and whether it
> actually skipped the regions.

The Linux kernel reserves the corresponding pages for all reserved
memory regions, which means the kernel page management (buddy
alrogithm) doesn't allocate these pages at all.

With 'no-map' property, the memory range will not be mapped into the
kernel identical address space.

> > Here I am a bit confused for "Xen doesn't have the capability to know
> > the memory attribute".  I looked into the file arch/arm/guest_walk.c,
> > IIUC, it walks through the stage 1's page tables for the virtual
> > machine and get the permission for the mapping, we also can get to
> > know the mapping attribute, right?
> 
> Most of the time, Xen will use the HW to translate the guest virtual address
> to an intermediation physical address. Looking at the specification, it
> looks like that PAR_EL1 will contain the memory attribute which I didn't
> know.
> 
> We would then need to read MAIR_EL1 to find the attribute and also the
> memory attribute in the stage-2 to figure out the final memory attribute.

> This is feasible but the Xen ABI mandates that region passed to Xen have a
> specific memory attributes (see the comment at the top of
> xen/include/public/arch-arm.h).

If you refer to the comment "All memory which is shared with other
entities in the system ... which is mapped as Normal Inner Write-Back
Outer Write-Back Inner-Shareable", I don't think it's relevant with
current issue.  I will explain in details in below.

> Anyway, in your case, Linux is using the buffer is on the stack. So the
> region must have been mapped with the proper attribute.

I think you may misunderstand the issue.  I would like to divide the
issue into two parts:

- The first question is about how to pass reserved memory node from Xen
  hypervisor to Dom0 Linux kernel.  Currently, Xen hypervisor coverts
  the reserved memory ranges and add them into the normal memory node.

  Xen hypervisor should keep the reserved memory node and pass it to
  Dom0 Linux kernel.  With this change, the Dom0 kernel will only
  allocate pages from normal memory node and the data in these pages
  can be shared by Xen hypervisor and Dom0 Linux kernel.

- The second question is for memory attribute for the reserved memory
  node.  Note, the reserved memory ranges are not necessarily _shared_
  between the Xen hypervisor and Dom0 Linux kernel.  I think in most
  cases, the reserved memory will be ioremaped by drivers (for stage-1);
  and the Xen hypervisor should map P2M with the attribute
  p2m_mmio_direct_c, or we can explore a bit based on different
  properties, e.g. for 'no-map' memory range, we map P2M with
  p2m_mmio_direct_c; for 'reusable' memory range, we map with
  attribute 'p2m_ram_rw'.

To simplify the discussion, I think we can firstly finalize the fixing
for the fist question and hold on the second question.  After we fix
the first one, we can come back to think about the second issue.

> > Another question for the attribute for MMIO regions. For mapping MMIO
> > regions, prepare_dtb_hwdom() sets the attribute 'p2m_mmio_direct_c'
> > for the stage 2, but in the Linux kernel the MMIO's attribute can
> > be one of below variants:
> > 
> > - ioremap(): device type with nGnRE;
> > - ioremap_np(): device type with nGnRnE (strong-ordered);
> > - ioremap_wc(): normal non-cachable.
> 
> The stage-2 memory attribute is used to restrict the final memory attribute.
> In this case, p2m_mmio_direct_c allows the domain to set pretty much any
> memory attribute.

Thanks for confirmation.  If so, I think the Xen hypervisor should
follow the same attribute to map the reserved regions with attribute
p2m_mmio_direct_c.

> > If Xen hypervisor can handle these MMIO types in stage 2, then we should
> > can use the same way to map stage 2 tables for the reserved memory.  A
> > difference for the reserved memory is it can be mapped as normal memory
> > with cacheable.
> 
> I am a bit confused. I read this as you think the region is not mapped in
> the P2M (aka stage-2 page-tables for Arm). But from the logs you provided,
> the regions are already mapped (you have an MFN in hand).

You are right.  The reserved memory regions have been mapped in P2M.

> So to me the error is most likely in how we create the Device-Tree.

Yeah, let's firstly focus on the DT binding for reserved memory nodes.

> > The DT binding is something like (I tweaked a bit for readable):
> 
> Just to confirm this is the host device tree, right? If so...

Yes.

> > 	memory@20000000 {
> > 		#address-cells = <0x02>;
> > 		#size-cells = <0x02>;
> > 		device_type = "memory";
> > 		reg = <0x00 0x20000000 0x00 0xa0000000>,
> >                        <0x01 0xa0000000 0x01 0x60000000>;
> > 	};
> 
> ... you can see the reserved-regions are described in the normal memory. In
> fact...
> 
> > 
> > 
> > 	reserved-memory {
> > 		#address-cells = <0x02>;
> > 		#size-cells = <0x02>;
> > 		ranges;
> > 
> > 		reserved_mem1 {
> > 			reg = <0x00 0x20000000 0x00 0x00010000>;
> > 			no-map;
> > 		};
> > 
> > 		reserved_mem2 {
> > 			reg = <0x00 0x40000000 0x00 0x20000000>;
> > 			no-map;
> > 		};
> > 
> > 		reserved_mem3 {
> > 			reg = <0x01 0xa0000000 0x00 0x20000000>;
> > 			no-map;
> > 		};
> 
> ... no-map should tell the kernel to not use the memory at all. So I am a
> bit puzzled why it is trying to use it.

No, 'no-map' doesn't mean the Linux kernel doesn't use it, I quote from
the kernel documentation
Documentation/devicetree/bindings/reserved-memory/reserved-memory.yaml:
'no-map' means the kernel "must not create a virtual mapping of the
region". The reserved memory regions are still "under the control of the
device driver using the region".

> I would suggest to check if somehow Linux doesn't understand the
> reserved-memory nodes we wrote.

Could you confirm the Xen does write reserved memory nodes?  Or Xen
converts the reserved memory nodes to normal memory nodes as I
describe above :)

Thanks,
Leo

[1] https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/arm/domain_build.c;h=24c9019cc43ca2d4963c3a6f8645939e26056cd0;hb=HEAD#l2476


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 10:07:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 10:07:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605496.943071 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiu6u-00068C-SV; Wed, 20 Sep 2023 10:07:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605496.943071; Wed, 20 Sep 2023 10:07:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiu6u-000685-Px; Wed, 20 Sep 2023 10:07:08 +0000
Received: by outflank-mailman (input) for mailman id 605496;
 Wed, 20 Sep 2023 10:07:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=7N78=FE=amd.com=Ray.Huang@srs-se1.protection.inumbo.net>)
 id 1qiu6t-00067z-A7
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 10:07:07 +0000
Received: from NAM12-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam12on20624.outbound.protection.outlook.com
 [2a01:111:f400:fe5a::624])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7272a911-579d-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 12:07:05 +0200 (CEST)
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com (2603:10b6:a03:540::10)
 by DS0PR12MB7995.namprd12.prod.outlook.com (2603:10b6:8:14e::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Wed, 20 Sep
 2023 10:07:00 +0000
Received: from SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e]) by SJ2PR12MB8690.namprd12.prod.outlook.com
 ([fe80::c3b:811:fd1d:c33e%6]) with mapi id 15.20.6792.021; Wed, 20 Sep 2023
 10:06:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7272a911-579d-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dRQMGj0V2TaYhz/z8q6W/UQKt8arS9T3fP5peGE3oq1KLcwaE0b408nFOH2HV4u9nHtjCJKqE77jl9ZZhk76yuIAsmz30n54hITAFg4x8B8ET/ag3QrByHvYITdDjnDXiMD3k36xojSh1C2tZuxe4mT7y8WWb/kCJJEbRaQbMRZjyDk6Fvce/1oPgIB5gflwhkTF9LlnK4IXW6Zybks3qpnSo1/OIqe1BV+Xf6d98V/8Qzif0KHjQr+NM6VP8vAsn1nLrRVKsCcn4Pvy6qV1cxW7HJLEXqvIx8iBuK+3LS3MECydSAKL1G//dHbB+nc7uY+rVYZuyWDcOBVG6RJcYw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WG2ShA0TW/uvDFg8Ah3SXBYvGLpB9OARGazeOn9BBik=;
 b=Z7KJkisQYpuXpcq6y2Zp20BIMeZZchlgrlvJ4uk/pDMCLhEyR63RmaettxWHBr/CFBC0jdTFXK9nDWy+CYSIQaHeiDY3tbr8ku7xdxDD/gn6CWh1CTdpi2ppiEbQHLJhBfdKXqfg3Onw7CfTn5lg7Dxs+a6+czxFxEn00I7YTJ3fGe2MQcyhuERa4K2lETxB+yLo6PPBxvxiazcOT/+EJUOC2nMAHSQ1fkKWoQhJNlEL85Lo58HKZbgDPEm2b+ajQDnuGReuxKVz0cqVpRA5NVkV4be9ZNkxGgPsOFJmN5lQMgiunwPQRlj6ds+Pc5YlWBr0sw8oUwmh1gf6Rsxv8Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WG2ShA0TW/uvDFg8Ah3SXBYvGLpB9OARGazeOn9BBik=;
 b=JlvoJIYzNTdsAa0oz/hJ9z7nqWi19X5Sc2L9KtwrnGE4DQzluRP50R0MvqDaR+FL4m8X7586zu+/qv4eTDDN+IPrt51dEhK3bKqnPcCU+BuvWXaK5ZrKdZ3Gy4CGpL2jlZNrhmCxGkXJJoC6uMsdhNl4CXgX6pxf6CBSzV+zgS4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Date: Wed, 20 Sep 2023 18:06:32 +0800
From: Huang Rui <ray.huang@amd.com>
To: =?iso-8859-1?Q?Marc-Andr=E9?= Lureau <marcandre.lureau@gmail.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <akihiko.odaki@daynix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Antonio Caggiano <quic_acaggian@quicinc.com>,
	"Dr . David Alan Gilbert" <dgilbert@redhat.com>,
	Robert Beckett <bob.beckett@collabora.com>,
	Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	Alex =?iso-8859-1?Q?Benn=E9e?= <alex.bennee@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Gurchetan Singh <gurchetansingh@chromium.org>,
	Albert Esteve <aesteve@redhat.com>,
	"ernunes@redhat.com" <ernunes@redhat.com>,
	Philippe =?iso-8859-1?Q?Mathieu-Daud=E9?= <philmd@linaro.org>,
	Alyssa Ross <hi@alyssa.is>,
	Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Ragiadakou, Xenia" <Xenia.Ragiadakou@amd.com>,
	"Pelloux-Prayer, Pierre-Eric" <Pierre-eric.Pelloux-prayer@amd.com>,
	"Huang, Honglei1" <Honglei1.Huang@amd.com>,
	"Zhang, Julia" <Julia.Zhang@amd.com>,
	"Chen, Jiqian" <Jiqian.Chen@amd.com>,
	Antonio Caggiano <antonio.caggiano@collabora.com>
Subject: Re: [QEMU PATCH v5 11/13] virtio-gpu: Support Venus capset
Message-ID: <ZQrEKKHYVMXWFRQj@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-12-ray.huang@amd.com>
 <CAJ+F1CJ8R7j_1k3yC2GsdN_v8CsOQ7R+=n_0CCzFW98tWrSLhA@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CAJ+F1CJ8R7j_1k3yC2GsdN_v8CsOQ7R+=n_0CCzFW98tWrSLhA@mail.gmail.com>
X-ClientProxiedBy: SI2PR01CA0054.apcprd01.prod.exchangelabs.com
 (2603:1096:4:193::22) To SJ2PR12MB8690.namprd12.prod.outlook.com
 (2603:10b6:a03:540::10)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8690:EE_|DS0PR12MB7995:EE_
X-MS-Office365-Filtering-Correlation-Id: 6f8c7598-6538-4762-fd13-08dbb9c1544d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7TFHxc4i7HwA/u/MySC00IIHV6nl1trKRusjt6ixVGrwSGth/jFBR+ropYSXT17RuHZxJmUIhuBvOMA0zLsbGdtuJ83u6jxLjiNtuZu3kkfRT/rn/Gj2Eyk9TjLqz3BxWZkmuXeUrcP763DW6XsWP9CNQDzJxaMcEcqdPDM+o55PLW9vgVzxa6MfxpG9tVT3lx/PyPpedOhGC2Bp7Wq4lsgd1+LyZGRF8ASxoWon7koY7gbrRyxbQZAZOhaRh9uieX/z8idJZGF91sVcelhEOZmJ8chscUPTsotFmIg5avE5KysKnKCWXL30uCMw2MVag+7Yji2XBCZo3N1uZbOfveaYNSn4/4CR/FHmLwyOdHTOZBcaD6EqS7i/uA8Mc9pl3K4bkmu7+uZ4xQFoxVm497geXf5nB0qUv6ip2U0AUvP1280BcZFpooLd90dYc3R+Jt2VEripTNhE1DYv4RsvGyVJmM+8QP/FTt5gQCcapMWoDIpF29GQp7ViprN43nFzWbDSBlg4Zre6AAMGtC5duby4tYH1z8NAa6aMiuKt1jOvjys5ccfBxOydyOgdIXmHROKR2o/cyPgznn0Ap2UHuw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR12MB8690.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(136003)(376002)(346002)(396003)(1800799009)(186009)(451199024)(478600001)(6506007)(6486002)(53546011)(6666004)(86362001)(36756003)(38100700002)(8676002)(26005)(2906002)(6512007)(83380400001)(8936002)(5660300002)(2616005)(4326008)(966005)(41300700001)(66556008)(54906003)(7416002)(316002)(66946007)(66476007)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YisvMDJqUTBOYTQ5ZnlxNkRxSG1OWE1KbDFSVlN1VmFOeWZDc3Z6dEhaSmtJ?=
 =?utf-8?B?cTFwNUF0ZVV6cDJ0Q1Z4UDQ1dGI5dzRDYWg0TUdPNTJZRnF4YzFtLy9VOE9p?=
 =?utf-8?B?ZkhJZ2VDWVRvdjdHL0l3dkpaOXR6akhjY2xtYUdpdVQrd0tIRVhRZk1CUlQy?=
 =?utf-8?B?M1BGekJOVGpoWVRVUUsycDdpYlAzN29ZQUtjaEQvMkc3eUdhYXprNHVMZ2FK?=
 =?utf-8?B?bmpxN2lTdElBMUZhM3JsaTc5bk9LbWxtSnlzbVRvWldDSFovSTlyenFxditH?=
 =?utf-8?B?OE00Ukg0SGtGbGVsejFOc0JsOXIvRlZ2TklERVBqQVBMS21mNStZZ3FPb0Vi?=
 =?utf-8?B?SXZPd3FOSHdGNnErT1RyUFZRdVIzdTBHTjhQdStmTjJUTzI4R1FvWXdBQkdp?=
 =?utf-8?B?QW1EWEorMFJqNXNMWFp3d2FHYzZ4cUh2eGl1RmIyR0ovK3hZbDJkcWlJV08y?=
 =?utf-8?B?V0FUa3ZXeUJKRUdhMjhaeHlmRThOb0NibVlVbzhxeVlhbDYyWTVqQWRQV3Ey?=
 =?utf-8?B?R1dVRVVqY2x0eUhML0tXODNUWkp6UE1ha1o0OXUxeFp1Skw4VWo4Q29KSU5V?=
 =?utf-8?B?V2FvZ2JsUkdHQmNoZUpPMk0yM0Zhbnljd1ZFZnFuVzNnM0xIZkhpcU5BT3E2?=
 =?utf-8?B?Z1lETEsreUNEVk1LZ2xVY1NiZDU3QnBrMlNBZXQvYnZGU3hjSk5pcmFxbS9C?=
 =?utf-8?B?Y09Cd0tybVlmZkhpU0VJTThQaHpVZU1ESjZqRkU4bFJpYWx2YWtyUTVoRWpi?=
 =?utf-8?B?SjNZSnFCK0pLaDRmb1pYS0dwaDJaN1dwZGJqajE1bXRyay90UkFCUkhTWUpw?=
 =?utf-8?B?NDJ0bFR6T0hScWR5VFU3QlpZU2VTQnhucitMTVB5TnlvZ29MOTlWL2ZGZ25z?=
 =?utf-8?B?Mk1nd2pjd0JTQmJjckh1MXByWXcrcjkvUUxDVENiNE5LZ2hKWHh5WHkyWHJO?=
 =?utf-8?B?bCszenBJTVdDbFRIRGFmQVREZmg1QWRibmZkTHlKVjFYNG1aUWxnZFg2dWIx?=
 =?utf-8?B?akU3d3pHK0dKUzlybTdIN1hVanV6c0xqZUY0S3A2ZHVaLzFSbkpSNVlacEth?=
 =?utf-8?B?cXN0UVg4TnZDZ0Y3Z1ZuRHhSTlNqczY2R0J6ZG5wQ3FRQk5oTGhCcW95UEVC?=
 =?utf-8?B?NDh6KzhRenhXV0pvM1Q3UVFzQlhwUWg4OGcxSTlxTVRUbmJwUDhaaUZnc0RE?=
 =?utf-8?B?RHE4azJ6NGNTM1h3dG9vSXVma1ZacTdndTY1UWNpYzBTbFAzckJDOU1vR0Np?=
 =?utf-8?B?NklvUEFUNjRyelc5bklsQW9LeEJqMjdXS0hHN2RMZURhR0V2aFJmRWdWbmNp?=
 =?utf-8?B?aTR5VDY4c25FcFBFcytyeFlqMnBOc29sbHVPYnllbEV6SUhGcExJR0Q2cGlF?=
 =?utf-8?B?Vmd4eGY2L2xLd0kxNzRYamR6eDV3NkUyT1lVZFg5RVJYbzYwUlBJMThLK25J?=
 =?utf-8?B?Zk1NakhWVU0rbW9xcnVjTitqTzF0UEc4cjdDZ1JZOTBXRktqdG83M0NDLzUz?=
 =?utf-8?B?cTk2RndTeGt2MEdxRkFNOUJyN3N0NGNyNG4vR0F6dkNqbWhLUzJVR1hYUk4z?=
 =?utf-8?B?WmdsMi9EcjhwK3NMaGFWTmhzaTRhRk1rSHNuMmE0NXJoZ0JDdU9SRG5kajk2?=
 =?utf-8?B?YlhxL21kbUZSZy81MjlWRzNHR2JvcTRYbDlRZENaZkJJd2p0SlQyY1hTVWpU?=
 =?utf-8?B?NWdFd1lwVDJNQU9kMVZrNTRxRGthM2Z6VWp4T210dnJIdGxjd2NPOGUxZHF1?=
 =?utf-8?B?TGpFRy9rQ1B2S2pEVm9XeVpwY25vUU01cWMvSk5vR25URExjZEVTRTVBN3R2?=
 =?utf-8?B?S25wN0psRmgvNG9iMS9NMithdlhCUVRXNjgyOVYyUnpiOU5PWUpIOFJGQ2xL?=
 =?utf-8?B?cUZEMVlGeUtIU0N6c1ZqZVhpajB5bWFGNHowaFIya3JDTjRjZ3RWZnRHaGs1?=
 =?utf-8?B?blZQM0EzcnhLRDJnK0tCbXU3dklRU3p5elBpNjVDcjM3dXFzRkNVcUg1ZFlu?=
 =?utf-8?B?K2pla21zRkp0V3NYK1pGWGZqK1VnV28wTGZ2YWpQSWIzUys4bEZjODZucDhJ?=
 =?utf-8?B?a0dGcnJtN2RrZStnKzNQVVZXVDhnb3ZtUGd4ZXlvTHhtc2RDZWNXcFZPYkVJ?=
 =?utf-8?Q?PuLAWOTH1VON7AgERPAD4fpAF?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6f8c7598-6538-4762-fd13-08dbb9c1544d
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8690.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 10:06:59.8907
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ajXqokqYqYoAjlQ5zeXn7Lq+2qmePy3fFUqmK2ohcFE7vnNrK7R+5LovX8StBaR2poGKLSTgnG7gbvvtKoC5Yg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7995

On Tue, Sep 19, 2023 at 05:02:36PM +0800, Marc-André Lureau wrote:
> Hi
> 
> On Fri, Sep 15, 2023 at 3:14 PM Huang Rui <ray.huang@amd.com> wrote:
> >
> > From: Antonio Caggiano <antonio.caggiano@collabora.com>
> >
> > Add support for the Venus capset, which enables Vulkan support through
> > the Venus Vulkan driver for virtio-gpu.
> >
> > Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> >
> > V4 -> V5:
> >     - Send kernel patch to define VIRTIO_GPU_CAPSET_VENUS and will use
> >       another patch to sync up linux headers. (Akihiko)
> >     - https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd.com/
> 
> Ok but in the meantime, you should have that header update patch in
> the series too, otherwise we can't compile it :)
> 

In fact, it's in my repo. :-)
I am waiting for it to be merged into kernel mainline and then update the
commit id.

https://gitlab.freedesktop.org/rui/qemu-xen/-/commit/4ae9d078f9242890769c98162caf32f95df42529

I will include it in next series.

Thanks,
Ray

> thanks
> 
> >
> >  hw/display/virtio-gpu-virgl.c | 21 +++++++++++++++++----
> >  1 file changed, 17 insertions(+), 4 deletions(-)
> >
> > diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
> > index 8a017dbeb4..7f95490e90 100644
> > --- a/hw/display/virtio-gpu-virgl.c
> > +++ b/hw/display/virtio-gpu-virgl.c
> > @@ -437,6 +437,11 @@ static void virgl_cmd_get_capset_info(VirtIOGPU *g,
> >          virgl_renderer_get_cap_set(resp.capset_id,
> >                                     &resp.capset_max_version,
> >                                     &resp.capset_max_size);
> > +    } else if (info.capset_index == 2) {
> > +        resp.capset_id = VIRTIO_GPU_CAPSET_VENUS;
> > +        virgl_renderer_get_cap_set(resp.capset_id,
> > +                                   &resp.capset_max_version,
> > +                                   &resp.capset_max_size);
> >      } else {
> >          resp.capset_max_version = 0;
> >          resp.capset_max_size = 0;
> > @@ -901,10 +906,18 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
> >
> >  int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g)
> >  {
> > -    uint32_t capset2_max_ver, capset2_max_size;
> > +    uint32_t capset2_max_ver, capset2_max_size, num_capsets;
> > +    num_capsets = 1;
> > +
> >      virgl_renderer_get_cap_set(VIRTIO_GPU_CAPSET_VIRGL2,
> > -                              &capset2_max_ver,
> > -                              &capset2_max_size);
> > +                               &capset2_max_ver,
> > +                               &capset2_max_size);
> > +    num_capsets += capset2_max_ver ? 1 : 0;
> > +
> > +    virgl_renderer_get_cap_set(VIRTIO_GPU_CAPSET_VENUS,
> > +                               &capset2_max_ver,
> > +                               &capset2_max_size);
> > +    num_capsets += capset2_max_size ? 1 : 0;
> >
> > -    return capset2_max_ver ? 2 : 1;
> > +    return num_capsets;
> >  }
> > --
> > 2.34.1
> >
> >
> 
> 
> -- 
> Marc-André Lureau


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 10:18:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 10:18:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605501.943082 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiuI2-000225-Rv; Wed, 20 Sep 2023 10:18:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605501.943082; Wed, 20 Sep 2023 10:18:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiuI2-00021y-P1; Wed, 20 Sep 2023 10:18:38 +0000
Received: by outflank-mailman (input) for mailman id 605501;
 Wed, 20 Sep 2023 10:18:38 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rvvO=FE=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qiuI1-00021s-O4
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 10:18:38 +0000
Received: from mail-oa1-x2a.google.com (mail-oa1-x2a.google.com
 [2001:4860:4864:20::2a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0e39e541-579f-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 12:18:35 +0200 (CEST)
Received: by mail-oa1-x2a.google.com with SMTP id
 586e51a60fabf-1d6a7354533so2480855fac.0
 for <xen-devel@lists.xenproject.org>; Wed, 20 Sep 2023 03:18:35 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 v17-20020aa78091000000b00687fcb1e609sm9900008pff.116.2023.09.20.03.18.29
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 20 Sep 2023 03:18:33 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0e39e541-579f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1695205114; x=1695809914; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=wGNXVPxGii/1OrruCGR9o+G35rIoyKM+zE3Q4kluY2o=;
        b=V/wiBZOkUhIwaqBAmRvTj6ircbnQr8bc0Y8pZQTOecm53U8kT0qWAWqwaHyobM9xiK
         CztD6VBHgfkXJA9JI9vv4XSWSJ3kzjIt0zZhyV2YpzaFGhNsjfZi2+YkBJ5RKv55/ff6
         OKoE/Yt56u7KAYCAIe9mRQfI3muXga5ahURzUEHtUJ7hMdEyNNGbqkJWd46SFh/3otrt
         GlA05V506XjrnzsdTBhqHwKVQaBm5C1S4Zz4++SV0ZNHBk/2MRsM+A3oUn+lg+srmr87
         Znkf/vtzckV60TDqBnZKdDSePX7ml3x5qVFjR4ITf18OQrbQNuv0q2LBFhUE0/k92jTn
         p7xQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695205114; x=1695809914;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=wGNXVPxGii/1OrruCGR9o+G35rIoyKM+zE3Q4kluY2o=;
        b=o6nfox14RWbtuu5Q+lk8Q5DE6ePyfSjsLes5f11mKTpeiBMdOcPFMYV+jg3ofZJDTt
         vS8lLeQeuSbFgvj8BqOkdPpPQtoa956mdyYZ8oEiiqpKvMt8WUEge2TT11TeAiOQlaJu
         HxX8Ln7riW1xWT55Je2zvAyA9yXivAsi505Vo0TCu4slmgwI1gMNdi3AYEmTtECJYM5q
         11x4itWTPDJIjzb2Hsn1U7B+Ffyca8+GVm1M6OvVB6ldgZa6rPr+60AvPG8pjpUWmDhX
         yGw/uwAX5AtW84E4SInXHlQR//020LrHAq6Ni5oJDf3UgzdwDIac/tF74g2WxOI0W8VV
         dddw==
X-Gm-Message-State: AOJu0YxRVnvnCm1yLqifBjeSFU1HGhJq5tw5YN/M7mHqlqJq/3621Jbb
	mWsYD7xNQTLzpHX2xxurL7ebZw==
X-Google-Smtp-Source: AGHT+IETjZDCEEs66uqF++esmIHFfY2g6LKNY3dRSbU1y5F6WeIuUIjbS0tRfk5rD7INdlVSaQGKgg==
X-Received: by 2002:a05:6870:8a29:b0:1bb:753d:e6db with SMTP id p41-20020a0568708a2900b001bb753de6dbmr2230286oaq.3.1695205114050;
        Wed, 20 Sep 2023 03:18:34 -0700 (PDT)
Message-ID: <610ae949-89e7-4722-951d-ba0e8427919d@daynix.com>
Date: Wed, 20 Sep 2023 19:18:27 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [QEMU PATCH v5 07/13] softmmu/memory: enable automatic
 deallocation of memory regions
To: Xenia Ragiadakou <xenia.ragiadakou@amd.com>, Huang Rui
 <ray.huang@amd.com>, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>, qemu-devel@nongnu.org
Cc: xen-devel@lists.xenproject.org,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>
References: <20230915111130.24064-1-ray.huang@amd.com>
 <20230915111130.24064-8-ray.huang@amd.com>
 <99fb4575-9f8d-4ab6-bc22-911bbaa7ca55@daynix.com>
 <c0370b6e-c17e-2400-ef8a-7a759d2fc2d7@amd.com>
 <75698621-d210-40eb-872d-f3cfc6e4dbff@daynix.com>
 <32a68715-201b-9923-9600-fe5ae49e4b7b@amd.com>
 <73a35fbb-c9a4-41dc-a6c7-26037b0e412f@daynix.com>
 <1f8863da-fad1-f983-8ed0-d6bf8d9544b8@amd.com>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <1f8863da-fad1-f983-8ed0-d6bf8d9544b8@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 2023/09/20 17:57, Xenia Ragiadakou wrote:
> 
> On 20/9/23 01:18, Akihiko Odaki wrote:
>> On 2023/09/19 23:21, Xenia Ragiadakou wrote:
>>>
>>> On 19/9/23 13:44, Akihiko Odaki wrote:
>>>> On 2023/09/19 19:28, Xenia Ragiadakou wrote:
>>>>>
>>>>> On 15/9/23 18:11, Akihiko Odaki wrote:
>>>>>> On 2023/09/15 20:11, Huang Rui wrote:
>>>>>>> From: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>>>>>
>>>>>>> When the memory region has a different life-cycle from that of 
>>>>>>> her parent,
>>>>>>> could be automatically released, once has been unparent and once 
>>>>>>> all of her
>>>>>>> references have gone away, via the object's free callback.
>>>>>>>
>>>>>>> However, currently, references to the memory region are held by 
>>>>>>> its owner
>>>>>>> without first incrementing the memory region object's reference 
>>>>>>> count.
>>>>>>> As a result, the automatic deallocation of the object, not taking 
>>>>>>> into
>>>>>>> account those references, results in use-after-free memory 
>>>>>>> corruption.
>>>>>>>
>>>>>>> This patch increases the reference count of an owned memory 
>>>>>>> region object
>>>>>>> on each memory_region_ref() and decreases it on each 
>>>>>>> memory_region_unref().
>>>>>>>
>>>>>>> Signed-off-by: Xenia Ragiadakou <xenia.ragiadakou@amd.com>
>>>>>>> Signed-off-by: Huang Rui <ray.huang@amd.com>
>>>>>>> ---
>>>>>>>
>>>>>>> V4 -> V5:
>>>>>>>      - ref/unref only owned memory regions (Akihiko)
>>>>>>>
>>>>>>>   softmmu/memory.c | 5 +++++
>>>>>>>   1 file changed, 5 insertions(+)
>>>>>>>
>>>>>>> diff --git a/softmmu/memory.c b/softmmu/memory.c
>>>>>>> index 7d9494ce70..15e1699750 100644
>>>>>>> --- a/softmmu/memory.c
>>>>>>> +++ b/softmmu/memory.c
>>>>>>> @@ -1800,6 +1800,9 @@ void memory_region_ref(MemoryRegion *mr)
>>>>>>>       /* MMIO callbacks most likely will access data that belongs
>>>>>>>        * to the owner, hence the need to ref/unref the owner 
>>>>>>> whenever
>>>>>>>        * the memory region is in use.
>>>>>>> +     * Likewise, the owner keeps references to the memory region,
>>>>>>> +     * hence the need to ref/unref the memory region object to 
>>>>>>> prevent
>>>>>>> +     * its automatic deallocation while still referenced by its 
>>>>>>> owner.
>>>>>>
>>>>>> This comment does not make sense. Traditionally no such automatic 
>>>>>> deallocation happens so the owner has been always required to free 
>>>>>> the memory region when it gets finalized.
>>>>>>
>>>>>> "[QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands" 
>>>>>> introduces a different kind of memory region, which can be freed 
>>>>>> anytime before the device gets finalized. Even in this case, the 
>>>>>> owner removes the reference to the memory owner by doing 
>>>>>> res->region = NULL;
>>>>>
>>>>> Hi Akihiko,
>>>>>
>>>>> You are right, the word "owner" is not correct. The issue observed 
>>>>> was due to the references kept in flatview ranges and the fact that 
>>>>> flatview_destroy() is asynchronous and was called after memory 
>>>>> region's destruction.
>>>>>
>>>>> If I replace the word "owner" with "memory subsystem" in the commit 
>>>>> message and drop the comment, would that be ok with you? or do want 
>>>>> to suggest something else?
>>>>
>>>> This will extend the lifetime of the memory region, but the 
>>>> underlying memory is still synchronously freed. Can you show that 
>>>> the flatview range will not be used to read the freed memory?
>>>
>>> Yes, the intention of this patch is to delay the mr object 
>>> finalization until all memory_region_unref() on this mr have been 
>>> taken place.
>>>
>>> What do you mean by "the underlying memory is still synchronously 
>>> freed"?
>>>
>>
>> A pointer is passed to memory_region_init_ram_ptr() with the ptr 
>> parameter when initializing the memory region and the memory region 
>> keeps the pointer.
>>
>> In virtio_gpu_virgl_resource_unmap(), the memory pointed with the 
>> pointer is unmapped with virgl_renderer_resource_unmap() and makes the 
>> pointer kept by the memory region dangling though the lifetime of the 
>> memory region is extended with this patch. Can you show that the 
>> dangling pointer the memory region has will never be referenced?
> 
> I see your point but I think it is not directly related to this patch. 
> IMHO, it is related to the implementation of 
> virtio_gpu_virgl_resource_unmap(). Maybe the unmapping should be done in 
> the free callback. However, I would expect the pointer to a disabled 
> memory region to not be used, not sure though.

Unmapping in the free callback sounds good.


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 10:20:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 10:20:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605507.943092 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiuJR-0004Bb-6S; Wed, 20 Sep 2023 10:20:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605507.943092; Wed, 20 Sep 2023 10:20:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiuJR-0004B3-2v; Wed, 20 Sep 2023 10:20:05 +0000
Received: by outflank-mailman (input) for mailman id 605507;
 Wed, 20 Sep 2023 10:20:04 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DGJ5=FE=suse.com=nik.borisov@srs-se1.protection.inumbo.net>)
 id 1qiuJP-0003G7-Uf
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 10:20:03 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2060d.outbound.protection.outlook.com
 [2a01:111:f400:fe13::60d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 43055a7f-579f-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 12:20:03 +0200 (CEST)
Received: from DBBPR04MB7788.eurprd04.prod.outlook.com (2603:10a6:10:1e4::15)
 by DB9PR04MB9703.eurprd04.prod.outlook.com (2603:10a6:10:302::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Wed, 20 Sep
 2023 10:20:00 +0000
Received: from DBBPR04MB7788.eurprd04.prod.outlook.com
 ([fe80::5b25:12c8:9f51:9b31]) by DBBPR04MB7788.eurprd04.prod.outlook.com
 ([fe80::5b25:12c8:9f51:9b31%4]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 10:20:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 43055a7f-579f-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=O5HQwT670UVX8mnI0ax+FZj9EsuY4esnkzbGJCLSr3sgHEbv+A0PtTLSObG5YKXPWqmENTjruN0bIPsmLSaZ7Xdgi4lD2Y0EvL7wf1ZFGOHk958e2ZNomWAC0aTkT3fwjCEJpB92qw3diCmSzea+Si8AwyhXJ3LFbgg9CAATA6UrImQajy33h/WZYLst+Z/K+58SNHKO4NdvvGvygugCOSF4ZSjd4bmMcsgJeVq8YSqHer8Q27SYBuYaLZihmlX9lzB8payeJ2SpJYwBGcYoyQJLRrjkc3arM3eksbvAYB8+G30T/7N+Lr39dwxTOBHdH6YkGJRk0hhPtvU5v2mdPg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YAINhEdYTcENyXk8OY5ai9zN5pJCicyvFXeYrjOYSPk=;
 b=Tk055o/G+0dcH5nVVPu9VlH1hxH7IhX5z7RJXT5M0BCw21Lw9/E3Hi41eI6rEfUGOZGGybO9QWdVrY0HKfa2us17bC4/kndQh24Xv6G/AZ2QdnUv4P7F5ijRCr6NSbc7xVcchYjzS3+Pi52ePlvQw5il0i7xBmDoNO9KQd63Hl3f5JwN+18eCHkGvV7OWbrHMRsuzO5RPVnTfx6dmdqVGeW8CVboANe2qZP7tGhl3U3ofPMZDNInd7q+OWy17yYMlSwrCoSSMerTK4LmrU3YLX+3pucK1sonCwvPp3qne8ycMKWXWDCGWW2GpJxlxoaMDZwEy/WsU/f8ErwbVkT6qw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YAINhEdYTcENyXk8OY5ai9zN5pJCicyvFXeYrjOYSPk=;
 b=4dMO9RPLB8esifBXGX+b69aSKwYBMKuuu9SbliM2w+93wU3sv8Wh0ypn6QH1p5e2pLrGGsGlX5zBguqFOfjixxMG6DNB/LhVhz9ujtqLtoow8uZliP2SgPIs9SUAImRtiHdt7K82+QRBgNyEBhSQHbl2H18jtGyoffTOd49SNCHhFmIqnv51HMK4cpDXI0B9+zhDzbcsfZRYLPTq6Q5t+o5vKOsEZVOWieQtE7F9ovHr+BAEd2L2dO92Lb+6M3vdXY7OswSe9uFRZ2ER4YhpDzXBz91uKTRKFkmdaQV+MvypNYOVKX087sx6eZ6L7BRHgwbPnUpYBXMkFhQktqlnNA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <aaed79d5-d683-d1bc-7ba1-b33c8d6db618@suse.com>
Date: Wed, 20 Sep 2023 13:19:56 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v10 09/38] x86/fred: Disable FRED support if
 CONFIG_X86_FRED is disabled
Content-Language: en-US
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 andrew.cooper3@citrix.com, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-10-xin3.li@intel.com>
From: Nikolay Borisov <nik.borisov@suse.com>
In-Reply-To: <20230914044805.301390-10-xin3.li@intel.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0098.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cb::15) To DBBPR04MB7788.eurprd04.prod.outlook.com
 (2603:10a6:10:1e4::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DBBPR04MB7788:EE_|DB9PR04MB9703:EE_
X-MS-Office365-Filtering-Correlation-Id: 5e38e81a-8c4e-4991-7042-08dbb9c32549
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZbyrK9C+nN2sIcAa9U8A4mG00Z/bAaHO+AuovHU6defTCjOQsINvYY6lphvwL0TupGeSiieGz/Jg3WyX2rp8veexmyXx4Tz8KgWFzTm0rYAbgWmwivrGvLMgn0jPuYS7q5IklfIhkYrUYtUleH8ejqAZNpj2k0gtYK7pmuP3Ds+3277tuBgv6anaALRNczHIlJU6kJY0NTVzCPxyGetMn5mMFIBoZIOTaFsGR8UySX7rg1LjpHw0zOa3YXs6MriIb/8fltt5zHFk97Xdz+eoVwlq7BkTMCDp+5LWWRRl70HmwyYqy/+9t5f3u8yQHN/uP17w2SLDjAooROBR8SwrdOtiOQV5HIVQyIRxW/zucBlLwAt9dhWIKRsmvT4Cq2E8AHusYguWNs6el1oMkHBRntcxelM0k1fnffndSLb2Aif1XQFTESChf3rGxkqPewgS3uA0I4ogsns/n3nkaoIlp9Uy5VQKwLidtK3538JzuupBYfFw3hvmJRd3ihWuAKRiOGMS8tylKQnUJAuwrQ1W9FWAeIdTwca7ouCh/r0q3Gi7WeFxxuIokus/XoikFSUpaxLk7/aJYPDv0CNfZonsPkqEZ+65qSM3KPaB97V2Xvzs1a9jv6pmMzE/vByQ9Ndh0KrqQhM/q1wG/56fXMTipg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DBBPR04MB7788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(396003)(376002)(39860400002)(136003)(1800799009)(186009)(451199024)(26005)(2616005)(8676002)(8936002)(4326008)(7416002)(83380400001)(2906002)(31696002)(36756003)(86362001)(6506007)(6486002)(31686004)(5660300002)(6666004)(316002)(6512007)(478600001)(66946007)(66556008)(41300700001)(38100700002)(66476007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dGUzUzVlT09tVWt4cTltMXQ3cEZnME5OUmJqUFJnUXgzRlBBa3dGbmdMVDVV?=
 =?utf-8?B?ZFZhZWhLdU9ZWFlKQ2FiUFVnNXZhN2QyK2I3clBxN2dsWDV2clZ3aWRsKzEr?=
 =?utf-8?B?dzd6WUhlSC9ick1uSG9teFR2eGVwb0cxK1lNVTRVY1pTaDNQdzRjaDh4NkJl?=
 =?utf-8?B?VDF5d3BHank3dnFKUGtCQmgzVk5uTmhJR01MMHVDZ3pjNm9QczZqQU9TeHJn?=
 =?utf-8?B?K1owVitaaVU3bUNuYWwvdGlhZDFxell4UEtHVmtvejgyV3VTYlhUSk9kRkht?=
 =?utf-8?B?ejl1Q1FrYlVPeFlubTBDTFhzMHhqNi9EVjJVOWRNNnMwdzVIR0hFbU8vSExm?=
 =?utf-8?B?dWZ5U2V3WWhDRy9wZVU3Sk13T25XSTdjWVh1V3dZeThsbE5TRTJ3WFArUXdR?=
 =?utf-8?B?QVNXRlFFb3R3TDg0Z1ZXUlU4ZUgvU1QyQmdJS05BTEhlL1BPeUtEQWU5WDFP?=
 =?utf-8?B?QmVzb3VKSTJLcVlSSnVpWDNIZjBEZ0I5eVVGOHVPUjZXSGRseWo3TXhDMDN4?=
 =?utf-8?B?MElteE9mTFhoNkdrZmJSM3FVcm9pTzBnelFNaHhEbVF2cVFRZW5KK1pqQith?=
 =?utf-8?B?QU1wZ0dqdW9CQ2o3ZExaOGQzbGE2RHFpRFVRd21JOGhYTHBOTzRSd0QvYkZJ?=
 =?utf-8?B?MkZ0dEdpYmswd3BDSFc4ZVZ1bnE0SS9QanZZbTVORm9sSVVSQkE5empUdHpz?=
 =?utf-8?B?dlFVa0pyTlY1WUZZb01JblRoSDRhU09nMjZQUXNMZ3diK1NiRFovK2FKenhC?=
 =?utf-8?B?V2lyeklWUGUxampJdXNvZTFxRXBGVExJOEpRV3NQZWhseHZNZ0ZyTkMzNE5C?=
 =?utf-8?B?cVFRcXlSTGlPcitERWRENmF0bDY1WUZPeVFqQ3YxclVzZGVMUjVReTFiMThO?=
 =?utf-8?B?bGdqenJNZXNIV05RSC9IaWwrY01jVHpFTmp0bDJuYUl2NG1CakRUWVI1OEtX?=
 =?utf-8?B?T3N2UFFXY2lDUFU4NVNWODJVOEdlYUxOUDdRcXcra2lKd3IyTnVuUTRRRWIv?=
 =?utf-8?B?cTRvUjRoOHVMdkpPUkZzUGlDK2p1MlhDRFMwbldoaTAraE0zQklIcWhlQmp1?=
 =?utf-8?B?OWZjdUx6M0d0NmtDQmhhVlVjNUxmakcxbnl5UzBJUmJmM0tKVXZ4cGQ4bUQv?=
 =?utf-8?B?clJwZ0U0Z1dqN24vbFFLY2orZDFpMEtncENMdkMrdDZxa0lXYzc0Q1dzUkp0?=
 =?utf-8?B?STlCdlIwVUVUTG50TWU2UUJhRllVTENPWlQzNi8vVnNYTWNQeWdveHB6blpl?=
 =?utf-8?B?OUNWemkxbnpHd05JK3dnNUttSVJzazNGNUtjWjh2VGJWa2RjVENpV2xYTmFT?=
 =?utf-8?B?SU9FV3J5QlNGMDF6UnVWUTlyU2J1bkpRcWVLbFNVYzRhWXJsbmRpZGRpd2s0?=
 =?utf-8?B?U0Z2NExTSWFIclNoZzBtL1dud3dxQ2RGOTZ3NE8rc0Z6UGR1YmVrRjMyRHFT?=
 =?utf-8?B?Q29JNk5CdjR4K2kyUUZGZEt1eHJ3QTBDTXJzQ0FSSVArT0hLR24zYkg1cVR4?=
 =?utf-8?B?M3B5VWVJUmJCT2FCbVBEbWxXWk1pNUl6ZXY5blowYkg2ekpscVNIaFcrQkts?=
 =?utf-8?B?N1RYcXJ3T2dEZ0ZLYnhHN2FZODI0V05idjdvL1NxTFZPN1RoQnhPSDJidy94?=
 =?utf-8?B?ZTdwYnVEajIwd0dFRzdjNjZMYUNBbzRhSnJNU1BCNmVZZjdkc3ZFanZnMUZU?=
 =?utf-8?B?RmoxOWtIYks5anJVdlRQQkh1N0kxTnRUTk9Vd0IxTkJXaTk4MGVuM2xuQ3NB?=
 =?utf-8?B?T1hLcm9oMnNQWlN6RVlYQ3lUNnFqQVlreVVzNGlrNVJ2TzhFd2k2cEYvVlJQ?=
 =?utf-8?B?QXg2d2REWGRjcUpRMzNDc3RVUVMvNExPbHBpTXA1SHRsbnByZW02ajQ5azNG?=
 =?utf-8?B?TUNTaC80L3E3cjZQUW10dlI2Ni9pbDNyUmJYZVhmYzdsNmlsSkN0em5rV1BS?=
 =?utf-8?B?Q2xPTDdGQ1pPZXdpNmhkb3lwTUdDTWtwVDhIT1BUSXV4Yjh3L3FmWXBlUXpU?=
 =?utf-8?B?YWJIMDdVM2ZKbFlab3YwUzZWU3Q2VXlEa3FiMlNNN1FFeTgwNVlpM3I3Tmw5?=
 =?utf-8?B?Zit2VWhlTWU5MWlHRkdRRjIybHNJY2p4NUFNM3JuU3hZeVFaRnpWZVJ6aTRL?=
 =?utf-8?Q?gkjQgbXLoUdX8YFCFNLsh28bJ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5e38e81a-8c4e-4991-7042-08dbb9c32549
X-MS-Exchange-CrossTenant-AuthSource: DBBPR04MB7788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 10:20:00.0455
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Gw/P3fDnlhKg24u3Qd13vdZu029a/Zv4oqik/MLVWTKMPaHSo3OcXBRu7GKof8FbiJ6sBXov8DVqEYMP+/5FNA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9703



On 14.09.23 г. 7:47 ч., Xin Li wrote:
> From: "H. Peter Anvin (Intel)" <hpa@zytor.com>
> 
> Add CONFIG_X86_FRED to <asm/disabled-features.h> to make
> cpu_feature_enabled() work correctly with FRED.
> 
> Originally-by: Megha Dey <megha.dey@intel.com>
> Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
> Tested-by: Shan Kang <shan.kang@intel.com>
> Signed-off-by: Xin Li <xin3.li@intel.com>
> ---
>   arch/x86/include/asm/disabled-features.h       | 8 +++++++-
>   tools/arch/x86/include/asm/disabled-features.h | 8 +++++++-
>   2 files changed, 14 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/x86/include/asm/disabled-features.h b/arch/x86/include/asm/disabled-features.h
> index 702d93fdd10e..3cde57cb5093 100644
> --- a/arch/x86/include/asm/disabled-features.h
> +++ b/arch/x86/include/asm/disabled-features.h
> @@ -117,6 +117,12 @@
>   #define DISABLE_IBT	(1 << (X86_FEATURE_IBT & 31))
>   #endif
>   
> +#ifdef CONFIG_X86_FRED
> +# define DISABLE_FRED	0
> +#else
> +# define DISABLE_FRED	(1 << (X86_FEATURE_FRED & 31))
> +#endif
> +
>   /*
>    * Make sure to add features to the correct mask
>    */
> @@ -134,7 +140,7 @@
>   #define DISABLED_MASK11	(DISABLE_RETPOLINE|DISABLE_RETHUNK|DISABLE_UNRET| \
>   			 DISABLE_CALL_DEPTH_TRACKING|DISABLE_USER_SHSTK)
>   #define DISABLED_MASK12	(DISABLE_LAM)
> -#define DISABLED_MASK13	0
> +#define DISABLED_MASK13	(DISABLE_FRED)
>   #define DISABLED_MASK14	0
>   #define DISABLED_MASK15	0
>   #define DISABLED_MASK16	(DISABLE_PKU|DISABLE_OSPKE|DISABLE_LA57|DISABLE_UMIP| \
> diff --git a/tools/arch/x86/include/asm/disabled-features.h b/tools/arch/x86/include/asm/disabled-features.h
> index fafe9be7a6f4..d540ecdd8812 100644
> --- a/tools/arch/x86/include/asm/disabled-features.h
> +++ b/tools/arch/x86/include/asm/disabled-features.h
> @@ -105,6 +105,12 @@
>   # define DISABLE_TDX_GUEST	(1 << (X86_FEATURE_TDX_GUEST & 31))
>   #endif
>   
> +#ifdef CONFIG_X86_FRED
> +# define DISABLE_FRED	0
> +#else
> +# define DISABLE_FRED	(1 << (X86_FEATURE_FRED & 31))
> +#endif
> +
>   /*
>    * Make sure to add features to the correct mask
>    */
> @@ -122,7 +128,7 @@
>   #define DISABLED_MASK11	(DISABLE_RETPOLINE|DISABLE_RETHUNK|DISABLE_UNRET| \
>   			 DISABLE_CALL_DEPTH_TRACKING)
>   #define DISABLED_MASK12	(DISABLE_LAM)
> -#define DISABLED_MASK13	0
> +#define DISABLED_MASK13	(DISABLE_FRED)

FRED feature is defined in cpuid word 12, not 13

>   #define DISABLED_MASK14	0
>   #define DISABLED_MASK15	0
>   #define DISABLED_MASK16	(DISABLE_PKU|DISABLE_OSPKE|DISABLE_LA57|DISABLE_UMIP| \


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 10:26:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 10:26:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605514.943102 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiuPO-00057x-VZ; Wed, 20 Sep 2023 10:26:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605514.943102; Wed, 20 Sep 2023 10:26:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiuPO-00057q-Rq; Wed, 20 Sep 2023 10:26:14 +0000
Received: by outflank-mailman (input) for mailman id 605514;
 Wed, 20 Sep 2023 10:26:14 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qiuPO-00057k-CC
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 10:26:14 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiuPN-0001qd-N4; Wed, 20 Sep 2023 10:26:13 +0000
Received: from [15.248.3.0] (helo=[10.24.67.40])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiuPN-00078F-Ge; Wed, 20 Sep 2023 10:26:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=QertMNZc4hn/X+C68xafxNcO77qxWSGmKHf7Wa59S2c=; b=goyQ5E4aNm1uBp5ALSSsMZFuYo
	FjNa8N4CDS2SHr7qnxh9B7DaE2+A1CB0q/5MDV+1Wzx5CQrqqrFCKa/g/cId0jIi5bteQrnjfLvBm
	4clVrl4K8OquxoEatJbD3qb62mOIdhk5VGZCgru2qAWH+GG8/b2UymJ9JI29CL2p8t2c=;
Message-ID: <d1b9a3a1-6e0e-4c1b-9f7a-5190d6535f24@xen.org>
Date: Wed, 20 Sep 2023 11:26:11 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: RFC: arm64: Handling reserved memory nodes
Content-Language: en-GB
To: Leo Yan <leo.yan@linaro.org>
Cc: xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Henry Wang
 <Henry.Wang@arm.com>, Penny Zheng <penny.zheng@arm.com>
References: <20230914081607.GA1400758@leoy-huanghe.lan>
 <23a0185e-428d-496b-96b6-d5082800bfd4@xen.org>
 <20230916081541.GA3291774@leoy-huanghe.lan>
 <561f8b9d-3877-4251-8cf7-7cdf313254bb@xen.org>
 <20230920100344.GA71044@leoy-huanghe>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230920100344.GA71044@leoy-huanghe>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 20/09/2023 11:03, Leo Yan wrote:
> On Mon, Sep 18, 2023 at 08:26:21PM +0100, Julien Grall wrote:
> 
> [...]
> 
>> ... from my understanding reserved-memory are just normal memory that are
>> set aside for a specific purpose. So Xen has to create a 'memory' node *and*
>> a 'reserved-memory' region.
> 
> To be clear, Xen passes the 'reserved-memory' regions as normal memory
> nodes, see [1].

The memory nodes need to be explicitely written because they are 
excluded in handle_node(). If a node is not excluded, then it should be 
created in the dom0 Device-Tree.

AFAICT, the 'reserved-memory' node is not excluded and therefore should 
be copied to the dom0 DT.

[...]

>>> Here the problem is these reserved memory regions are passed as normal
>>> memory nodes to Dom0 kernel, then Dom0 kernel allocates pages from
>>> these reserved memory regions.  Apparently, this might lead to conflict,
>>> e.g. the reserved memory is used by Dom0 kernel, at the meantime the
>>> memory is used by another purpose (e.g. by MCU in the system).
>>
>> See above. I think this is correct to pass both 'memory' and
>> 'reserved-memory'. Now, it is possible that Xen may not create the
>> device-tree correctly.
> 
> Agreed that now Xen wrongly create DT binding for 'reserved-memory'
> node, more specific, the reserved memory nodes are wrongly passed as
> normal memory nodes (again, see [1]).

See above. You could dump the dom0 Device-Tree to confirm that 
'reserved-memory' is created.

> 
>> I would suggest to look how Linux is populating the memory and whether it
>> actually skipped the regions.
> 
> The Linux kernel reserves the corresponding pages for all reserved
> memory regions, which means the kernel page management (buddy
> alrogithm) doesn't allocate these pages at all.
> 
> With 'no-map' property, the memory range will not be mapped into the
> kernel identical address space.
> 
>>> Here I am a bit confused for "Xen doesn't have the capability to know
>>> the memory attribute".  I looked into the file arch/arm/guest_walk.c,
>>> IIUC, it walks through the stage 1's page tables for the virtual
>>> machine and get the permission for the mapping, we also can get to
>>> know the mapping attribute, right?
>>
>> Most of the time, Xen will use the HW to translate the guest virtual address
>> to an intermediation physical address. Looking at the specification, it
>> looks like that PAR_EL1 will contain the memory attribute which I didn't
>> know.
>>
>> We would then need to read MAIR_EL1 to find the attribute and also the
>> memory attribute in the stage-2 to figure out the final memory attribute.
> 
>> This is feasible but the Xen ABI mandates that region passed to Xen have a
>> specific memory attributes (see the comment at the top of
>> xen/include/public/arch-arm.h).
> 
> If you refer to the comment "All memory which is shared with other
> entities in the system ... which is mapped as Normal Inner Write-Back
> Outer Write-Back Inner-Shareable", I don't think it's relevant with
> current issue.  I will explain in details in below.

It is relevant if you intend to allocate hypercall buffer in a 
non-reusable reserved-region.

> 
>> Anyway, in your case, Linux is using the buffer is on the stack. So the
>> region must have been mapped with the proper attribute.
> 
> I think you may misunderstand the issue.  I would like to divide the
> issue into two parts:
> 
> - The first question is about how to pass reserved memory node from Xen
>    hypervisor to Dom0 Linux kernel.  Currently, Xen hypervisor coverts
>    the reserved memory ranges and add them into the normal memory node.
> 
>    Xen hypervisor should keep the reserved memory node and pass it to
>    Dom0 Linux kernel.  With this change, the Dom0 kernel will only
>    allocate pages from normal memory node and the data in these pages
>    can be shared by Xen hypervisor and Dom0 Linux kernel.

This should be the case. See above.

[...]

>>> Another question for the attribute for MMIO regions. For mapping MMIO
>>> regions, prepare_dtb_hwdom() sets the attribute 'p2m_mmio_direct_c'
>>> for the stage 2, but in the Linux kernel the MMIO's attribute can
>>> be one of below variants:
>>>
>>> - ioremap(): device type with nGnRE;
>>> - ioremap_np(): device type with nGnRnE (strong-ordered);
>>> - ioremap_wc(): normal non-cachable.
>>
>> The stage-2 memory attribute is used to restrict the final memory attribute.
>> In this case, p2m_mmio_direct_c allows the domain to set pretty much any
>> memory attribute.
> 
> Thanks for confirmation.  If so, I think the Xen hypervisor should
> follow the same attribute to map the reserved regions with attribute
> p2m_mmio_direct_c.
> 
>>> If Xen hypervisor can handle these MMIO types in stage 2, then we should
>>> can use the same way to map stage 2 tables for the reserved memory.  A
>>> difference for the reserved memory is it can be mapped as normal memory
>>> with cacheable.
>>
>> I am a bit confused. I read this as you think the region is not mapped in
>> the P2M (aka stage-2 page-tables for Arm). But from the logs you provided,
>> the regions are already mapped (you have an MFN in hand).
> 
> You are right.  The reserved memory regions have been mapped in P2M.
> 
>> So to me the error is most likely in how we create the Device-Tree.
> 
> Yeah, let's firstly focus on the DT binding for reserved memory nodes.
> 
>>> The DT binding is something like (I tweaked a bit for readable):
>>
>> Just to confirm this is the host device tree, right? If so...
> 
> Yes.
> 
>>> 	memory@20000000 {
>>> 		#address-cells = <0x02>;
>>> 		#size-cells = <0x02>;
>>> 		device_type = "memory";
>>> 		reg = <0x00 0x20000000 0x00 0xa0000000>,
>>>                         <0x01 0xa0000000 0x01 0x60000000>;
>>> 	};
>>
>> ... you can see the reserved-regions are described in the normal memory. In
>> fact...
>>
>>>
>>>
>>> 	reserved-memory {
>>> 		#address-cells = <0x02>;
>>> 		#size-cells = <0x02>;
>>> 		ranges;
>>>
>>> 		reserved_mem1 {
>>> 			reg = <0x00 0x20000000 0x00 0x00010000>;
>>> 			no-map;
>>> 		};
>>>
>>> 		reserved_mem2 {
>>> 			reg = <0x00 0x40000000 0x00 0x20000000>;
>>> 			no-map;
>>> 		};
>>>
>>> 		reserved_mem3 {
>>> 			reg = <0x01 0xa0000000 0x00 0x20000000>;
>>> 			no-map;
>>> 		};
>>
>> ... no-map should tell the kernel to not use the memory at all. So I am a
>> bit puzzled why it is trying to use it.
> 
> No, 'no-map' doesn't mean the Linux kernel doesn't use it, I quote from
> the kernel documentation
I am under the impression that we have a different meaning for 'using' 
here. I am referring to the fact that when 'no-map' is specificed, then 
the kernel cannot use the region for other purpose (e.g. stack).

So the fact that the stack seemsm to resides in a reserved-region 
implies that Linux didn't detect the 'no-map'.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 10:32:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 10:32:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605520.943111 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiuVK-00088W-JU; Wed, 20 Sep 2023 10:32:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605520.943111; Wed, 20 Sep 2023 10:32:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiuVK-00088P-Gl; Wed, 20 Sep 2023 10:32:22 +0000
Received: by outflank-mailman (input) for mailman id 605520;
 Wed, 20 Sep 2023 10:32:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uJQT=FE=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qiuVJ-00088J-JC
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 10:32:21 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20601.outbound.protection.outlook.com
 [2a01:111:f400:7eae::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f9abdc28-57a0-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 12:32:19 +0200 (CEST)
Received: from DM6PR07CA0120.namprd07.prod.outlook.com (2603:10b6:5:330::10)
 by DM4PR12MB5844.namprd12.prod.outlook.com (2603:10b6:8:67::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Wed, 20 Sep
 2023 10:32:01 +0000
Received: from DS1PEPF00017091.namprd03.prod.outlook.com
 (2603:10b6:5:330:cafe::63) by DM6PR07CA0120.outlook.office365.com
 (2603:10b6:5:330::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.30 via Frontend
 Transport; Wed, 20 Sep 2023 10:32:01 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF00017091.mail.protection.outlook.com (10.167.17.133) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Wed, 20 Sep 2023 10:32:00 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 20 Sep
 2023 05:31:57 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 20 Sep
 2023 03:31:40 -0700
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 20 Sep 2023 05:31:38 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f9abdc28-57a0-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VCzBnFibti7smYJiVyp1K1vepNQU/NrycRpPgBLIuoPzT7JncUTighLtcgqY8QD7q/t81x5ZGlAPEHxN8b9IvDJmp6F/C3uip+RSb6F7Pk5MGDmS/2NU6Kj9AfFWLO2QQzFyqXZDpRsUcJJBVCTSH8CX42sFWj+0bnvkWhCEs9tgOIEf7nXyB8kG3uyIVIMDKkETcoG2lIAzP17CiXcxe2NgsVuTbQ3NURHSAjYTpuJ75UEXAKaVrSgSH0Wta9VLwvUtnNoaZRY2QUdmqFiZyipgTid6DSuSXBvcM99WjX+fGxNy0ajbA8lU975Nthp66TXzqeScYx6UR22YpBPUxg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rQ3UqlTwNaGsFpptNp2ZFomxaCbBAtVt0GvsqRflZHo=;
 b=ekuQ5TBc1q58aTgdN+x00IIcbjMknsV93jDyu/U77ZAa9OlM6dB3UkSF3SjzA8Is+SIJDVWR6+hTsQSzcO2u2O/2b8b0IBBMTna8ev1gprjkcMk/uCZGUP4Lt58JbxaTEpANdGUdcAPKavQKw6Q7Q6M8EJEvp4R/K4d1XFb61otsbwm1euZd3s+P65p0Y3OGIYc0Meo+0ysAloKBQlow+LYL8CwIT/d2rEDuwi7t/B0PngR1TLqZ4B+QC5W3aUvNEyTHtDfob69/xpKj9OZlFe6NlIm61uWvCvHsugK4vpqsHGmXpXE6Ah2hR9F+uLpt+k0R2+BstFU3TSnrLxIa7g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=linaro.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rQ3UqlTwNaGsFpptNp2ZFomxaCbBAtVt0GvsqRflZHo=;
 b=xIdQTgu+kRQsLXTyaTF38wF1aaJzAwwtaBOLOKgdfXJaW8HEBB5X/WRSBsqCZ5w24FH5M7BHhJFhNRX4tnpimDbP+YjjwcNOnHHxlPIVlr/wCMIS+EbKX8WLmOfO7kWAjDwPmRv3V3XyaZNTgh4KfPLaFIraxAVwWpyljgh3SCw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <6c59477f-d133-4cab-4f4e-afd8e710453c@amd.com>
Date: Wed, 20 Sep 2023 12:31:38 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: RFC: arm64: Handling reserved memory nodes
Content-Language: en-US
To: Leo Yan <leo.yan@linaro.org>, Julien Grall <julien@xen.org>
CC: <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>, "Henry
 Wang" <Henry.Wang@arm.com>, Penny Zheng <penny.zheng@arm.com>
References: <20230914081607.GA1400758@leoy-huanghe.lan>
 <23a0185e-428d-496b-96b6-d5082800bfd4@xen.org>
 <20230916081541.GA3291774@leoy-huanghe.lan>
 <561f8b9d-3877-4251-8cf7-7cdf313254bb@xen.org>
 <20230920100344.GA71044@leoy-huanghe>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20230920100344.GA71044@leoy-huanghe>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF00017091:EE_|DM4PR12MB5844:EE_
X-MS-Office365-Filtering-Correlation-Id: 0bd86273-78c2-4275-1d53-08dbb9c4d322
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	y15tlox76IJPnZ5I9h4/hcNLwdHO6IrepBnJ2jrjnB0J5jDl2y+Dv6JWMtY3B5xxvK4YDuNnSMR7cfHXGkxMxO9oOeP1MQVA9IDY5oHcbbv84KFK7c9O6AckZ5QHtBByLSnVq2gmuKMTBvNLqkmnOT+jmxFy4Uywnkfl/MpOBKnH04iFslx3iK2WvFOn8UQ9Xjjg8IRomKHXvQ0F8jwfnleXxwk0elksTIIAVwKWBmIkv7oo6joKXSSOzkoM7zscsjpMXwWUrP6BsuWe82+JjwL7Rc3L+w20HOsESdpZZSTwZTz9pk/z8BaZxzb4qim5/N189Yp5RWmlsmFlQEl3RS4kDV7W0Qq80LA61LlLAlg/NzAq4CqHHGKoZ7Q57Bg8BXgfTKGoS9iCg91/ConcVPwS9DILuHNTcBWfVnDjbKmaEJZpaVtffBvU8otvpgUkVorNBPEcky/imCYJcd2BHFiO5l4BVDmPq69SCgRUNQ2JUnFEi9Rv4x48cdPCt4x/ObggchMGFmAolZrV05qQT4TZm63OL+06ENLyEmvKsF43Cxkojzrylj+rK8X28zOynreSYnc4mhT0l9KJPlTXEDpKMq1tYb+YvH+Q0Nez/HF+5eGktHU3rbF98nLM1FCF53sx5D4XppM48lJhoLJdieHtLn8Wmc+2ps55croFu81wyGVBzkwTPORSvXgZ3V6DXKRkggkZ0ruw9G8Z9vx0lly5agtxQbcWv2odGf/VQLAcefBoAF0te6uSwqdyoSoqEsn0n5InJkDRCp//yeKiPJc7xNyEyFGj1eaI6/B438QI9iOp2PQE+z43aLlhqSls
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(346002)(136003)(376002)(451199024)(1800799009)(82310400011)(186009)(40470700004)(36840700001)(46966006)(31686004)(53546011)(40460700003)(356005)(86362001)(82740400003)(40480700001)(81166007)(36756003)(36860700001)(31696002)(2616005)(26005)(2906002)(426003)(336012)(47076005)(83380400001)(44832011)(478600001)(4326008)(8676002)(110136005)(5660300002)(8936002)(316002)(41300700001)(70206006)(16576012)(54906003)(70586007)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 10:32:00.9232
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0bd86273-78c2-4275-1d53-08dbb9c4d322
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF00017091.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5844

Hello,

On 20/09/2023 12:03, Leo Yan wrote:
> 
> 
> Hi Julien,
> 
> On Mon, Sep 18, 2023 at 08:26:21PM +0100, Julien Grall wrote:
> 
> [...]
> 
>> ... from my understanding reserved-memory are just normal memory that are
>> set aside for a specific purpose. So Xen has to create a 'memory' node *and*
>> a 'reserved-memory' region.
> 
> To be clear, Xen passes the 'reserved-memory' regions as normal memory
> nodes, see [1].
> 
>> With that the kernel is supposed to exclude all the 'reserved-memory' from
>> normal usage unless they have the node contains the property 'reusable'.
>> This was more clear before the binding was converted to YAML in [1].
> 
> Linux kernel reserves pages for memory ranges in the 'reserved-memory'
> node, no matter the 'no-map' property for a range is set or not (see the
> function memmap_init_reserved_pages() -> __SetPageReserved() in Linux
> kernel).
> 
> If a reserved memory range is set with 'no-map' property, the memory
> region will be not mapped in the kernel's identical address space.  This
> avoids the data corruption caused between the memory speculative fetch
> with cachable mapping and the same memory region is used by devices
> (e.g. for DMA transferring).
> 
> [...]
> 
>>> Here the problem is these reserved memory regions are passed as normal
>>> memory nodes to Dom0 kernel, then Dom0 kernel allocates pages from
>>> these reserved memory regions.  Apparently, this might lead to conflict,
>>> e.g. the reserved memory is used by Dom0 kernel, at the meantime the
>>> memory is used by another purpose (e.g. by MCU in the system).
>>
>> See above. I think this is correct to pass both 'memory' and
>> 'reserved-memory'. Now, it is possible that Xen may not create the
>> device-tree correctly.
> 
> Agreed that now Xen wrongly create DT binding for 'reserved-memory'
> node, more specific, the reserved memory nodes are wrongly passed as
> normal memory nodes (again, see [1]).
> 
>> I would suggest to look how Linux is populating the memory and whether it
>> actually skipped the regions.
> 
> The Linux kernel reserves the corresponding pages for all reserved
> memory regions, which means the kernel page management (buddy
> alrogithm) doesn't allocate these pages at all.
> 
> With 'no-map' property, the memory range will not be mapped into the
> kernel identical address space.
> 
>>> Here I am a bit confused for "Xen doesn't have the capability to know
>>> the memory attribute".  I looked into the file arch/arm/guest_walk.c,
>>> IIUC, it walks through the stage 1's page tables for the virtual
>>> machine and get the permission for the mapping, we also can get to
>>> know the mapping attribute, right?
>>
>> Most of the time, Xen will use the HW to translate the guest virtual address
>> to an intermediation physical address. Looking at the specification, it
>> looks like that PAR_EL1 will contain the memory attribute which I didn't
>> know.
>>
>> We would then need to read MAIR_EL1 to find the attribute and also the
>> memory attribute in the stage-2 to figure out the final memory attribute.
> 
>> This is feasible but the Xen ABI mandates that region passed to Xen have a
>> specific memory attributes (see the comment at the top of
>> xen/include/public/arch-arm.h).
> 
> If you refer to the comment "All memory which is shared with other
> entities in the system ... which is mapped as Normal Inner Write-Back
> Outer Write-Back Inner-Shareable", I don't think it's relevant with
> current issue.  I will explain in details in below.
> 
>> Anyway, in your case, Linux is using the buffer is on the stack. So the
>> region must have been mapped with the proper attribute.
> 
> I think you may misunderstand the issue.  I would like to divide the
> issue into two parts:
> 
> - The first question is about how to pass reserved memory node from Xen
>   hypervisor to Dom0 Linux kernel.  Currently, Xen hypervisor coverts
>   the reserved memory ranges and add them into the normal memory node.
> 
>   Xen hypervisor should keep the reserved memory node and pass it to
>   Dom0 Linux kernel.  With this change, the Dom0 kernel will only
>   allocate pages from normal memory node and the data in these pages
>   can be shared by Xen hypervisor and Dom0 Linux kernel.
> 
> - The second question is for memory attribute for the reserved memory
>   node.  Note, the reserved memory ranges are not necessarily _shared_
>   between the Xen hypervisor and Dom0 Linux kernel.  I think in most
>   cases, the reserved memory will be ioremaped by drivers (for stage-1);
>   and the Xen hypervisor should map P2M with the attribute
>   p2m_mmio_direct_c, or we can explore a bit based on different
>   properties, e.g. for 'no-map' memory range, we map P2M with
>   p2m_mmio_direct_c; for 'reusable' memory range, we map with
>   attribute 'p2m_ram_rw'.
> 
> To simplify the discussion, I think we can firstly finalize the fixing
> for the fist question and hold on the second question.  After we fix
> the first one, we can come back to think about the second issue.
> 
>>> Another question for the attribute for MMIO regions. For mapping MMIO
>>> regions, prepare_dtb_hwdom() sets the attribute 'p2m_mmio_direct_c'
>>> for the stage 2, but in the Linux kernel the MMIO's attribute can
>>> be one of below variants:
>>>
>>> - ioremap(): device type with nGnRE;
>>> - ioremap_np(): device type with nGnRnE (strong-ordered);
>>> - ioremap_wc(): normal non-cachable.
>>
>> The stage-2 memory attribute is used to restrict the final memory attribute.
>> In this case, p2m_mmio_direct_c allows the domain to set pretty much any
>> memory attribute.
> 
> Thanks for confirmation.  If so, I think the Xen hypervisor should
> follow the same attribute to map the reserved regions with attribute
> p2m_mmio_direct_c.
> 
>>> If Xen hypervisor can handle these MMIO types in stage 2, then we should
>>> can use the same way to map stage 2 tables for the reserved memory.  A
>>> difference for the reserved memory is it can be mapped as normal memory
>>> with cacheable.
>>
>> I am a bit confused. I read this as you think the region is not mapped in
>> the P2M (aka stage-2 page-tables for Arm). But from the logs you provided,
>> the regions are already mapped (you have an MFN in hand).
> 
> You are right.  The reserved memory regions have been mapped in P2M.
> 
>> So to me the error is most likely in how we create the Device-Tree.
> 
> Yeah, let's firstly focus on the DT binding for reserved memory nodes.
> 
>>> The DT binding is something like (I tweaked a bit for readable):
>>
>> Just to confirm this is the host device tree, right? If so...
> 
> Yes.
> 
>>>     memory@20000000 {
>>>             #address-cells = <0x02>;
>>>             #size-cells = <0x02>;
>>>             device_type = "memory";
>>>             reg = <0x00 0x20000000 0x00 0xa0000000>,
>>>                        <0x01 0xa0000000 0x01 0x60000000>;
>>>     };
>>
>> ... you can see the reserved-regions are described in the normal memory. In
>> fact...
>>
>>>
>>>
>>>     reserved-memory {
>>>             #address-cells = <0x02>;
>>>             #size-cells = <0x02>;
>>>             ranges;
>>>
>>>             reserved_mem1 {
>>>                     reg = <0x00 0x20000000 0x00 0x00010000>;
>>>                     no-map;
>>>             };
>>>
>>>             reserved_mem2 {
>>>                     reg = <0x00 0x40000000 0x00 0x20000000>;
>>>                     no-map;
>>>             };
>>>
>>>             reserved_mem3 {
>>>                     reg = <0x01 0xa0000000 0x00 0x20000000>;
>>>                     no-map;
>>>             };
>>
>> ... no-map should tell the kernel to not use the memory at all. So I am a
>> bit puzzled why it is trying to use it.
> 
> No, 'no-map' doesn't mean the Linux kernel doesn't use it, I quote from
> the kernel documentation
> Documentation/devicetree/bindings/reserved-memory/reserved-memory.yaml:
> 'no-map' means the kernel "must not create a virtual mapping of the
> region". The reserved memory regions are still "under the control of the
> device driver using the region".
> 
>> I would suggest to check if somehow Linux doesn't understand the
>> reserved-memory nodes we wrote.
> 
> Could you confirm the Xen does write reserved memory nodes?  Or Xen
> converts the reserved memory nodes to normal memory nodes as I
> describe above :)

Xen passes the /reserved-memory node unchanged from host device tree to dom0 fdt.
Apart from that it creates an additional memory node covering the reserved ranges.
Take a look at this example run(based on qemu):

Host dt:
memory@40000000 {
    reg = <0x00 0x40000000 0x01 0x00>;
    device_type = "memory";
};

reserved-memory {
    #size-cells = <0x02>;
    #address-cells = <0x02>;
    ranges;

    test@50000000 {
        reg = <0x00 0x50000000 0x00 0x10000000>;
        no-map;
    };
};

Xen:
(XEN) MODULE[0]: 000000004ac00000 - 000000004ad65000 Xen
(XEN) MODULE[1]: 000000004ae00000 - 000000004ae03000 Device Tree
(XEN) MODULE[2]: 0000000042c00000 - 000000004aa8ea8b Ramdisk
(XEN) MODULE[3]: 0000000040400000 - 0000000042b30000 Kernel
(XEN)  RESVD[0]: 0000000050000000 - 000000005fffffff
...
(XEN) BANK[0] 0x000000c0000000-0x00000100000000 (1024MB)

Linux dom0:
[    0.000000] OF: reserved mem: 0x0000000050000000..0x000000005fffffff (262144 KiB) nomap non-reusable test@50000000

cat /proc/iomem:
50000000-5fffffff : reserved
c0000000-ffffffff : System RAM

dtc from Linux dom0:

memory@c0000000 {
    device_type = "memory";
    reg = <0x00 0xc0000000 0x00 0x40000000>;
};

memory@50000000 {
    device_type = "memory";
    reg = <0x00 0x50000000 0x00 0x10000000>;
};

reserved-memory {
    #address-cells = <0x02>;
    #size-cells = <0x02>;
    ranges;

    test@50000000 {
        reg = <0x00 0x50000000 0x00 0x10000000>;
        no-map;
    };
};


~Michal


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 10:36:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 10:36:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605526.943122 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiuZI-0000Ou-3v; Wed, 20 Sep 2023 10:36:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605526.943122; Wed, 20 Sep 2023 10:36:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiuZI-0000On-0G; Wed, 20 Sep 2023 10:36:28 +0000
Received: by outflank-mailman (input) for mailman id 605526;
 Wed, 20 Sep 2023 10:36:27 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qiuZH-0000Oh-9e
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 10:36:27 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiuZG-00026s-7U; Wed, 20 Sep 2023 10:36:26 +0000
Received: from [15.248.3.0] (helo=[10.24.67.40])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qiuZG-0007dm-1Y; Wed, 20 Sep 2023 10:36:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=E1cElALzOSAynhrVwlD4bnBgBg2KQa/MNHgyIhyMOo0=; b=AwpIRNLnVk7Rm1hAh6KgjSQ+O7
	zDXUWkG5+meu8yPS+N/qjBtZ95xmE3bEwGP2RRX8O1j2uvxaoYmyLsBYfhFT7VqR+GuFKJ2cPNrib
	3pk/Idm5NMxPkjyaHh2JxdTS97RV+cNATvTgeEfMTTfNGB6PL5Vp12HQvd2C4CIklBMI=;
Message-ID: <6bfbf707-cfc8-4cf3-80d0-eeaba0e5865a@xen.org>
Date: Wed, 20 Sep 2023 11:36:24 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: RFC: arm64: Handling reserved memory nodes
Content-Language: en-GB
To: Michal Orzel <michal.orzel@amd.com>, Leo Yan <leo.yan@linaro.org>
Cc: xen-devel@lists.xenproject.org,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Henry Wang
 <Henry.Wang@arm.com>, Penny Zheng <penny.zheng@arm.com>
References: <20230914081607.GA1400758@leoy-huanghe.lan>
 <23a0185e-428d-496b-96b6-d5082800bfd4@xen.org>
 <20230916081541.GA3291774@leoy-huanghe.lan>
 <561f8b9d-3877-4251-8cf7-7cdf313254bb@xen.org>
 <20230920100344.GA71044@leoy-huanghe>
 <6c59477f-d133-4cab-4f4e-afd8e710453c@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <6c59477f-d133-4cab-4f4e-afd8e710453c@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 20/09/2023 11:31, Michal Orzel wrote:
> Hello,

Hi Michal,

> On 20/09/2023 12:03, Leo Yan wrote:
>>
>>
>> Hi Julien,
>>
>> On Mon, Sep 18, 2023 at 08:26:21PM +0100, Julien Grall wrote:
>>
>> [...]
>>
>>> ... from my understanding reserved-memory are just normal memory that are
>>> set aside for a specific purpose. So Xen has to create a 'memory' node *and*
>>> a 'reserved-memory' region.
>>
>> To be clear, Xen passes the 'reserved-memory' regions as normal memory
>> nodes, see [1].
>>
>>> With that the kernel is supposed to exclude all the 'reserved-memory' from
>>> normal usage unless they have the node contains the property 'reusable'.
>>> This was more clear before the binding was converted to YAML in [1].
>>
>> Linux kernel reserves pages for memory ranges in the 'reserved-memory'
>> node, no matter the 'no-map' property for a range is set or not (see the
>> function memmap_init_reserved_pages() -> __SetPageReserved() in Linux
>> kernel).
>>
>> If a reserved memory range is set with 'no-map' property, the memory
>> region will be not mapped in the kernel's identical address space.  This
>> avoids the data corruption caused between the memory speculative fetch
>> with cachable mapping and the same memory region is used by devices
>> (e.g. for DMA transferring).
>>
>> [...]
>>
>>>> Here the problem is these reserved memory regions are passed as normal
>>>> memory nodes to Dom0 kernel, then Dom0 kernel allocates pages from
>>>> these reserved memory regions.  Apparently, this might lead to conflict,
>>>> e.g. the reserved memory is used by Dom0 kernel, at the meantime the
>>>> memory is used by another purpose (e.g. by MCU in the system).
>>>
>>> See above. I think this is correct to pass both 'memory' and
>>> 'reserved-memory'. Now, it is possible that Xen may not create the
>>> device-tree correctly.
>>
>> Agreed that now Xen wrongly create DT binding for 'reserved-memory'
>> node, more specific, the reserved memory nodes are wrongly passed as
>> normal memory nodes (again, see [1]).
>>
>>> I would suggest to look how Linux is populating the memory and whether it
>>> actually skipped the regions.
>>
>> The Linux kernel reserves the corresponding pages for all reserved
>> memory regions, which means the kernel page management (buddy
>> alrogithm) doesn't allocate these pages at all.
>>
>> With 'no-map' property, the memory range will not be mapped into the
>> kernel identical address space.
>>
>>>> Here I am a bit confused for "Xen doesn't have the capability to know
>>>> the memory attribute".  I looked into the file arch/arm/guest_walk.c,
>>>> IIUC, it walks through the stage 1's page tables for the virtual
>>>> machine and get the permission for the mapping, we also can get to
>>>> know the mapping attribute, right?
>>>
>>> Most of the time, Xen will use the HW to translate the guest virtual address
>>> to an intermediation physical address. Looking at the specification, it
>>> looks like that PAR_EL1 will contain the memory attribute which I didn't
>>> know.
>>>
>>> We would then need to read MAIR_EL1 to find the attribute and also the
>>> memory attribute in the stage-2 to figure out the final memory attribute.
>>
>>> This is feasible but the Xen ABI mandates that region passed to Xen have a
>>> specific memory attributes (see the comment at the top of
>>> xen/include/public/arch-arm.h).
>>
>> If you refer to the comment "All memory which is shared with other
>> entities in the system ... which is mapped as Normal Inner Write-Back
>> Outer Write-Back Inner-Shareable", I don't think it's relevant with
>> current issue.  I will explain in details in below.
>>
>>> Anyway, in your case, Linux is using the buffer is on the stack. So the
>>> region must have been mapped with the proper attribute.
>>
>> I think you may misunderstand the issue.  I would like to divide the
>> issue into two parts:
>>
>> - The first question is about how to pass reserved memory node from Xen
>>    hypervisor to Dom0 Linux kernel.  Currently, Xen hypervisor coverts
>>    the reserved memory ranges and add them into the normal memory node.
>>
>>    Xen hypervisor should keep the reserved memory node and pass it to
>>    Dom0 Linux kernel.  With this change, the Dom0 kernel will only
>>    allocate pages from normal memory node and the data in these pages
>>    can be shared by Xen hypervisor and Dom0 Linux kernel.
>>
>> - The second question is for memory attribute for the reserved memory
>>    node.  Note, the reserved memory ranges are not necessarily _shared_
>>    between the Xen hypervisor and Dom0 Linux kernel.  I think in most
>>    cases, the reserved memory will be ioremaped by drivers (for stage-1);
>>    and the Xen hypervisor should map P2M with the attribute
>>    p2m_mmio_direct_c, or we can explore a bit based on different
>>    properties, e.g. for 'no-map' memory range, we map P2M with
>>    p2m_mmio_direct_c; for 'reusable' memory range, we map with
>>    attribute 'p2m_ram_rw'.
>>
>> To simplify the discussion, I think we can firstly finalize the fixing
>> for the fist question and hold on the second question.  After we fix
>> the first one, we can come back to think about the second issue.
>>
>>>> Another question for the attribute for MMIO regions. For mapping MMIO
>>>> regions, prepare_dtb_hwdom() sets the attribute 'p2m_mmio_direct_c'
>>>> for the stage 2, but in the Linux kernel the MMIO's attribute can
>>>> be one of below variants:
>>>>
>>>> - ioremap(): device type with nGnRE;
>>>> - ioremap_np(): device type with nGnRnE (strong-ordered);
>>>> - ioremap_wc(): normal non-cachable.
>>>
>>> The stage-2 memory attribute is used to restrict the final memory attribute.
>>> In this case, p2m_mmio_direct_c allows the domain to set pretty much any
>>> memory attribute.
>>
>> Thanks for confirmation.  If so, I think the Xen hypervisor should
>> follow the same attribute to map the reserved regions with attribute
>> p2m_mmio_direct_c.
>>
>>>> If Xen hypervisor can handle these MMIO types in stage 2, then we should
>>>> can use the same way to map stage 2 tables for the reserved memory.  A
>>>> difference for the reserved memory is it can be mapped as normal memory
>>>> with cacheable.
>>>
>>> I am a bit confused. I read this as you think the region is not mapped in
>>> the P2M (aka stage-2 page-tables for Arm). But from the logs you provided,
>>> the regions are already mapped (you have an MFN in hand).
>>
>> You are right.  The reserved memory regions have been mapped in P2M.
>>
>>> So to me the error is most likely in how we create the Device-Tree.
>>
>> Yeah, let's firstly focus on the DT binding for reserved memory nodes.
>>
>>>> The DT binding is something like (I tweaked a bit for readable):
>>>
>>> Just to confirm this is the host device tree, right? If so...
>>
>> Yes.
>>
>>>>      memory@20000000 {
>>>>              #address-cells = <0x02>;
>>>>              #size-cells = <0x02>;
>>>>              device_type = "memory";
>>>>              reg = <0x00 0x20000000 0x00 0xa0000000>,
>>>>                         <0x01 0xa0000000 0x01 0x60000000>;
>>>>      };
>>>
>>> ... you can see the reserved-regions are described in the normal memory. In
>>> fact...
>>>
>>>>
>>>>
>>>>      reserved-memory {
>>>>              #address-cells = <0x02>;
>>>>              #size-cells = <0x02>;
>>>>              ranges;
>>>>
>>>>              reserved_mem1 {
>>>>                      reg = <0x00 0x20000000 0x00 0x00010000>;
>>>>                      no-map;
>>>>              };
>>>>
>>>>              reserved_mem2 {
>>>>                      reg = <0x00 0x40000000 0x00 0x20000000>;
>>>>                      no-map;
>>>>              };
>>>>
>>>>              reserved_mem3 {
>>>>                      reg = <0x01 0xa0000000 0x00 0x20000000>;
>>>>                      no-map;
>>>>              };
>>>
>>> ... no-map should tell the kernel to not use the memory at all. So I am a
>>> bit puzzled why it is trying to use it.
>>
>> No, 'no-map' doesn't mean the Linux kernel doesn't use it, I quote from
>> the kernel documentation
>> Documentation/devicetree/bindings/reserved-memory/reserved-memory.yaml:
>> 'no-map' means the kernel "must not create a virtual mapping of the
>> region". The reserved memory regions are still "under the control of the
>> device driver using the region".
>>
>>> I would suggest to check if somehow Linux doesn't understand the
>>> reserved-memory nodes we wrote.
>>
>> Could you confirm the Xen does write reserved memory nodes?  Or Xen
>> converts the reserved memory nodes to normal memory nodes as I
>> describe above :)
> 
> Xen passes the /reserved-memory node unchanged from host device tree to dom0 fdt.
> Apart from that it creates an additional memory node covering the reserved ranges.
> Take a look at this example run(based on qemu):

Thanks for providing an example! This is quite handy.

> 
> Host dt:
> memory@40000000 {
>      reg = <0x00 0x40000000 0x01 0x00>;
>      device_type = "memory";
> };
> 
> reserved-memory {
>      #size-cells = <0x02>;
>      #address-cells = <0x02>;
>      ranges;
> 
>      test@50000000 {
>          reg = <0x00 0x50000000 0x00 0x10000000>;
>          no-map;
>      };
> };
> 
> Xen:
> (XEN) MODULE[0]: 000000004ac00000 - 000000004ad65000 Xen
> (XEN) MODULE[1]: 000000004ae00000 - 000000004ae03000 Device Tree
> (XEN) MODULE[2]: 0000000042c00000 - 000000004aa8ea8b Ramdisk
> (XEN) MODULE[3]: 0000000040400000 - 0000000042b30000 Kernel
> (XEN)  RESVD[0]: 0000000050000000 - 000000005fffffff
> ...
> (XEN) BANK[0] 0x000000c0000000-0x00000100000000 (1024MB)
> 
> Linux dom0:
> [    0.000000] OF: reserved mem: 0x0000000050000000..0x000000005fffffff (262144 KiB) nomap non-reusable test@50000000

So Linux should tell whether a region has been reserved. @Leo, can you 
share with us the serial console? Can you confirm the version of Xen you 
are using?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 10:51:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 10:51:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605566.943148 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiunP-0007fA-RD; Wed, 20 Sep 2023 10:51:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605566.943148; Wed, 20 Sep 2023 10:51:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiunP-0007f3-OZ; Wed, 20 Sep 2023 10:51:03 +0000
Received: by outflank-mailman (input) for mailman id 605566;
 Wed, 20 Sep 2023 10:51:02 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DGJ5=FE=suse.com=nik.borisov@srs-se1.protection.inumbo.net>)
 id 1qiunO-0007dK-GD
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 10:51:02 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20606.outbound.protection.outlook.com
 [2a01:111:f400:fe13::606])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 95e062b3-57a3-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 12:51:00 +0200 (CEST)
Received: from DBBPR04MB7788.eurprd04.prod.outlook.com (2603:10a6:10:1e4::15)
 by AS1PR04MB9697.eurprd04.prod.outlook.com (2603:10a6:20b:480::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Wed, 20 Sep
 2023 10:50:57 +0000
Received: from DBBPR04MB7788.eurprd04.prod.outlook.com
 ([fe80::5b25:12c8:9f51:9b31]) by DBBPR04MB7788.eurprd04.prod.outlook.com
 ([fe80::5b25:12c8:9f51:9b31%4]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 10:50:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 95e062b3-57a3-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mRwNMxBxr5L2Gy6QsNvOdh+bMiuQPG0dfXJXa1q5XnPBYHvvkZ++inBkDdnaaenmRY4wc1qhs41VsQD7XO77iIkd5fhTVJ9NmmIg8dawiLr29DVeIsN+kI6bykRdohZx4109euTkLwf0grTvy80ZJXq3PW9Gms6B2LFpvy6TMb+OXarQp8gkHdSZ73IW2cqWI76wE1AW4+QFlQG90lrpmxCXE9qg6B/XVNoI/CRHoT6qxwPHovGc9f4wtFyomT7j6ppOFVY7nDTF67S2DXNym1BA9XmZxnlFIT5YNTP9fqTXmCIqebtHKTGiB0afmhgxCt34R5puTKJclF6DsqkTqw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7mn48O79cCJUHPDmHf5UU3FL2KFU9vaaPc5Rcjmf5v4=;
 b=awFkq182LhHFar7MkwgPIksVv6nUSnHBj/kWomi/14S08SZSq9Fc3/mqqnqurEztfdhd+xvHqo9RH8yQ0ezy+b7THAldpIZV8VBulog4N54tPL09pwezHUMVgEdPjcMI9jVuLuq+gG24wkYeC5lQxkcqK7EVZG39Y1zaEWsWOWLbSMH301RYZnoW+15yIzE2m/RUl/IoL4Py245BZoidHDsNJEqeYszXLQCPAt0dAnauo5GJcNvWtm/WZkMO4PayZLdzzkmKafziONJH5u2QznpDWrsmuuQIRXHmOX1iL/825DSAQqfoyz1hWtKSS8jH3CHOEp5HjWlQXuxrX9gkbw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7mn48O79cCJUHPDmHf5UU3FL2KFU9vaaPc5Rcjmf5v4=;
 b=xvCSw0qU3Wncbc9h17hm9HBWqhMBFabuQ5pAMKU7p4/+tZGQzcA2h/jYAVlZG9oxlAkLS8GNaT9ZAtsQ+DAP6zRgGnVh/UK9ACvGDZGpXFHAu43zxW0znd6BW1oyeBTNDH3jlMFC2c8KFp7RJhXWdJp23eGOwahod1p5thrR58ctEzZmwOZ70E1QsYwMDkB+AAnIYGQYFwaQiceMhKzFXTkaeY5CMntJMRDawP+N828//RBpORLPGaQHNX6aeZYx8C80mB949Lcd0lpOWagwOHUrFiJP+nw3Wue0cMNMcvaI3BCKsEVvS6BVXQx3Gu5P2fGv8CimesgjNL6DyeQ07Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <085176da-924e-8d6d-1c56-8bfc9d457b0b@suse.com>
Date: Wed, 20 Sep 2023 13:50:53 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Content-Language: en-US
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 andrew.cooper3@citrix.com, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-14-xin3.li@intel.com>
From: Nikolay Borisov <nik.borisov@suse.com>
Subject: Re: [PATCH v10 13/38] x86/cpu: Add X86_CR4_FRED macro
In-Reply-To: <20230914044805.301390-14-xin3.li@intel.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: VI1PR06CA0113.eurprd06.prod.outlook.com
 (2603:10a6:803:8c::42) To DBBPR04MB7788.eurprd04.prod.outlook.com
 (2603:10a6:10:1e4::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DBBPR04MB7788:EE_|AS1PR04MB9697:EE_
X-MS-Office365-Filtering-Correlation-Id: 315d7862-073f-4fde-51e0-08dbb9c77872
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	fHYxRv9+gqf7o8sRdcd6/eZzkDX1Beo0yXUyTzHw0+uHfyARhX+uEd8BWiN+benYIxURj1+YboOrusNvBezSBVe3LYbquziWpqeSt35TDYZFe8OEn80WiNSAsnvUCe5YFhCCdm1WYiPcWNhnH1cgu9BtjcUlIwo2sYHteOtTvSasfuQyPMOG7KXyEkvYWylx7mUXTWUv1tvJdH2gyfcxv2FAFBbaN0GYbO+AUpDgO9WTx8h9CfXpCUmRqjcWQnLDl+9AzXW2s1Lvhwik5TolotcOJEm6Nm+ON9uW73nEoehGGo2l9iWp8eYo3K8EGldxDYLfvsPzoh1r4Iuw+IQz28wkf6Rgt7c2kWPWyZcO9Omgq1mhmVz0g9Hh5nerbYt8XbhEnXzcuc8QLP+sGKF8OQI2/Ca9oOTpoUn6nJzUPY4ouEkljFGhjKHENVMSzj7zcfLfFyp7/lQaVD/fwx3E0niwGXqXovBZqGOV3KjhwP4AR04kYPZDCEn2l0sjkcQFH4IilMJzIdysbQ/YYiqtOV/lK2/2Wra/q+/xnvupOSelMftxGf2fwG/NSoqgVIC/DQmxB4S8SEfTseK/Q+hSHwphNmbPAmQI58Wxrv0UDM3uVWh0FOv4nVwoyyOce42pJ5iHge8ACLWGlc4QZ6jqPA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DBBPR04MB7788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(136003)(366004)(396003)(346002)(1800799009)(186009)(451199024)(6506007)(2616005)(31686004)(26005)(5660300002)(8936002)(8676002)(4326008)(6486002)(6512007)(83380400001)(478600001)(6666004)(316002)(66946007)(41300700001)(66476007)(66556008)(86362001)(31696002)(36756003)(7416002)(2906002)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SzJMV0h1cnZSSWswWGJQbk8vcGFOUS9NK0FRbEFqcnhzSnVPYVZHV0pzSFZX?=
 =?utf-8?B?ajhKTXhEaS8vOUZpdi9oV2hBbnVJN1AzRUUrSllrbDNGbVpmYys0Y29mM3lQ?=
 =?utf-8?B?VTczZ3g2VzVETlRaYTFRSHNjK2ZPZktZWURxbzFtcitWbUhtMWwxM2QvaXRW?=
 =?utf-8?B?WTVjc2pJb3NJaGxENTZmTzY1cFhqVGUxMHQyaVBvek5tRjJwaUd0RUVoQzdh?=
 =?utf-8?B?czIzZkpmOXlSWnJQd3pnUWFHNllJMlYzRWEzUlV3MEZXdTZDVEFWWm13MnAv?=
 =?utf-8?B?OGtSbVYwemJSMWxQZVIzQTF2VHVaWDdnYWRyOWZmNlllQnlEdU5iSmpvamlt?=
 =?utf-8?B?dk5DTkcrbzEwWmJxdGZtNXNZbS9EdFdXaFhOb3RGWFdNLy9NUHVqNG1Ock1M?=
 =?utf-8?B?VjB4Y3BMMWRObjlmUGdFYXN3WlQxT1JDdmRlRXQ0L2V6WWF4UjN2RWNlbjRB?=
 =?utf-8?B?MS9UY29hOVlESWVMTFVwM2F0Vk1La1U3TFJnVzBXdHdqRUZiYURyR0NpOU45?=
 =?utf-8?B?cjhYUlBPR3BMNStqa2t3Z1FzZ2lRRDMxRWxXQTBsTjlDaklZVEZVN2MzMmtt?=
 =?utf-8?B?V0FEMzZJQU93YzNWSEdrMUsxWnFyRXdCc1ppaGhPTmI2dmRXV1Z3c2FWa09P?=
 =?utf-8?B?SmwzYnBUdWdPUi9WZjM2bWlsU1E0VWhKdDBWd1BvVzN2UzBwWERSU1hpUVVY?=
 =?utf-8?B?S2NmRWxLQkhMbjZOakZtK2liWUZ0QTBFeDhyZGxFUWJvdUdLeEJuenNBL25O?=
 =?utf-8?B?UnlUVlF3dWF5czhIcFdheVlRSkIxUEJYbVVOWEdGM1dSWlNGSVpMQ0QzSVM1?=
 =?utf-8?B?Wmd1cjdIMUtnL2E3bzkvWkJ4U0FWM0sremhOTFFFT2lJYTVsN0ZvT1JvYmR2?=
 =?utf-8?B?dXJSSURyQkx1eTZJazcxZnh6Q0JQYmtQeFYrWlluQ1pNemFYS09kQlJRQTB4?=
 =?utf-8?B?bUVybWZGN2F5QUdqWFZMRC9ScmpQWTR6Y0QzZHd2QmtKaC8xb2U4eldqRnpr?=
 =?utf-8?B?cHo0N3ZnSFRURitlTDFrRnhqTlU5d2NlQXJySXhwSVl6bmVpbXNXSHk1dktT?=
 =?utf-8?B?Y3dIOXJ6K1piUGpHU0Y2Vm94dUMyNnlUdFVRRlBjM1RnZEVNK0JkVXFLOGxK?=
 =?utf-8?B?Zk1uRFJvYTJYcVBSaW9lVjh2MEJtcDU3ZjR0V3Y1YUxGcGMxWm9qN1hkdldi?=
 =?utf-8?B?SVVaV1ZlOVpFN0g4ZG0vVFhzOTdMZStpQ1pCaGp2NDRVb3F3bFVJdUlzUC90?=
 =?utf-8?B?bC9ZTEVlMHQ2YVZYZ1Nab2dEUHRLUU91U1N4UU0wUHU3QWFBTDRwcEQrZ1dS?=
 =?utf-8?B?Qzc2MzZwS3ZvZlEvTmwrbkFjaVJWVVZFK1ZMdnkwa29BZk9UYm5YUUcyMFRR?=
 =?utf-8?B?Q1FoQjYzcEJkUkdiOEdjTmFsd2VkeHJPSmNMb1FOTXd1eXkyZ0txMWdKeml6?=
 =?utf-8?B?bUx1WmRrODZjcm9rSnQzWDZsblhnSFVKNHV0cG55dmUrWG5zcjFmbDBJRjNp?=
 =?utf-8?B?Q3pHNVRmRURWVDYzdXNKczFMR0UyUDNtaVNFa0hFNVpXUk11ZklSZ3BrejNs?=
 =?utf-8?B?SXFJdmsrbTQ1eUNGNzd2c3ZXYW9tdXBOVkVjMVdkeDE1b1FGZlJUTUtLWWk1?=
 =?utf-8?B?eDNFdWZOWEtYMVI1aFF0WmkyZ1duNzQya1VzUDkzS3VGZDh3TEY3eFlzK0Fx?=
 =?utf-8?B?cU9nYWhyWENYRng0OVZva3ZzaGNFd2RuSkUyY0cxRlppY2tKdXFHWjBJakhI?=
 =?utf-8?B?MXcwQUNQb2hIcUk4dHNPNWZxTVY1NzJUU1Y2Qi9iQmZPdGhrenZZN0tkSXp1?=
 =?utf-8?B?empWQWhHWVRnYkFTUjdEN1psQzVneGRPZzBvK2hQWFJMblhkOEZjdzFyUWlv?=
 =?utf-8?B?VTlKN0xUczMyTHhnTTFmYk8yclE3eGVWdm16bUR0UW9FMUdOWEREZk5qRk1m?=
 =?utf-8?B?SlZac2swRkdKQjhHTnpvTmdZYXo0bG0wenVuV05ISThDbFphd1EwYXk0RmVE?=
 =?utf-8?B?TUZpU1Q4TU0rWVdtWVpVdEcydWZrZmc1U0xvZDA1RVcwaE44V3FGVVRZSXVD?=
 =?utf-8?B?QWt0dUc2NzVyV0Q1UHNrc3liNVlpSzg3Y1RoeE5VWGZJS0hkdVUwd0JnYjJt?=
 =?utf-8?Q?HLy8YoQUSgE+KJTM2BFuapYYY?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 315d7862-073f-4fde-51e0-08dbb9c77872
X-MS-Exchange-CrossTenant-AuthSource: DBBPR04MB7788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 10:50:57.5825
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Qwkcv/VyZxNurR2292Q8b5NzmCjdzC5pRDe7q64nr4B31dfPUo90H1Zgp3AYkuNC0gyfr0R3b9Z0t1dNBYSw4g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9697



On 14.09.23 г. 7:47 ч., Xin Li wrote:
> From: "H. Peter Anvin (Intel)" <hpa@zytor.com>
> 
> Add X86_CR4_FRED macro for the FRED bit in %cr4. This bit must not be
> changed after initialization, so add it to the pinned CR4 bits.
> 
> Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
> Tested-by: Shan Kang <shan.kang@intel.com>
> Signed-off-by: Xin Li <xin3.li@intel.com>
> ---
> 
> Changes since v9:
> * Avoid a type cast by defining X86_CR4_FRED as 0 on 32-bit (Thomas
>    Gleixner).
> ---
>   arch/x86/include/uapi/asm/processor-flags.h | 7 +++++++
>   arch/x86/kernel/cpu/common.c                | 5 ++---
>   2 files changed, 9 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/x86/include/uapi/asm/processor-flags.h b/arch/x86/include/uapi/asm/processor-flags.h
> index d898432947ff..f1a4adc78272 100644
> --- a/arch/x86/include/uapi/asm/processor-flags.h
> +++ b/arch/x86/include/uapi/asm/processor-flags.h
> @@ -139,6 +139,13 @@
>   #define X86_CR4_LAM_SUP_BIT	28 /* LAM for supervisor pointers */
>   #define X86_CR4_LAM_SUP		_BITUL(X86_CR4_LAM_SUP_BIT)
>   
> +#ifdef __x86_64__
> +#define X86_CR4_FRED_BIT	32 /* enable FRED kernel entry */
> +#define X86_CR4_FRED		_BITUL(X86_CR4_FRED_BIT)

nit: s/BITUL/BITULL I guess if __x86_64__ is defined then we are 
guaranteed that unsigned long will be a 64 bit, but for the sake of 
clarity I'd rather have this spelled out explicitly by using BITULL


> +#else
> +#define X86_CR4_FRED		(0)
> +#endif
> +
>   /*
>    * x86-64 Task Priority Register, CR8
>    */
> diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
> index 317b4877e9c7..42511209469b 100644
> --- a/arch/x86/kernel/cpu/common.c
> +++ b/arch/x86/kernel/cpu/common.c
> @@ -400,9 +400,8 @@ static __always_inline void setup_umip(struct cpuinfo_x86 *c)
>   }
>   
>   /* These bits should not change their value after CPU init is finished. */
> -static const unsigned long cr4_pinned_mask =
> -	X86_CR4_SMEP | X86_CR4_SMAP | X86_CR4_UMIP |
> -	X86_CR4_FSGSBASE | X86_CR4_CET;
> +static const unsigned long cr4_pinned_mask = X86_CR4_SMEP | X86_CR4_SMAP | X86_CR4_UMIP |
> +					     X86_CR4_FSGSBASE | X86_CR4_CET | X86_CR4_FRED;
>   static DEFINE_STATIC_KEY_FALSE_RO(cr_pinning);
>   static unsigned long cr4_pinned_bits __ro_after_init;
>   


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 10:59:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 10:59:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605574.943159 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiuvh-0001rb-LM; Wed, 20 Sep 2023 10:59:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605574.943159; Wed, 20 Sep 2023 10:59:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiuvh-0001rU-IV; Wed, 20 Sep 2023 10:59:37 +0000
Received: by outflank-mailman (input) for mailman id 605574;
 Wed, 20 Sep 2023 10:59:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=atm2=FE=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qiuvg-0001rO-TJ
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 10:59:36 +0000
Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com
 [2a00:1450:4864:20::233])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c8a1cc17-57a4-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 12:59:34 +0200 (CEST)
Received: by mail-lj1-x233.google.com with SMTP id
 38308e7fff4ca-2bff936e10fso8989761fa.1
 for <xen-devel@lists.xenproject.org>; Wed, 20 Sep 2023 03:59:34 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c8a1cc17-57a4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695207574; x=1695812374; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=OX2RWp9HhmgAb5GMmVeXa354t6dsLsLefC1I8hAsqLU=;
        b=IA6zu1Q0wsUQmE5j2B9VJHWsFWNWDkoCrKnWMhT3T02UrzKqlYyq+AB1GWeCIrsJQH
         KhxLR3fJFKuyPOzn/xIJifJAOL2NVSOKn3rbybu7elVI+oz2OxB4dcYTsoNjsjAG5EDl
         D8GI5VWEV1soZm66/uaIHkJOjrQ/ip6BdFDXI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695207574; x=1695812374;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=OX2RWp9HhmgAb5GMmVeXa354t6dsLsLefC1I8hAsqLU=;
        b=eCPbBYN7D1gPgBfNDYzAGaP4yimvDONo/v7xctWK3/mbflg/IyG7J+rsjrWrahD7hy
         A0crPGHVRRQPxmAu5O5eR5epmTxZTX/dW+Qji2gq5G3h/mtNPDbVmxVA4lmKW6+PSR3g
         YDk0SywJ+XNt3OLG4/5wLe7jyZHOZyhXd0RKE2D6+qO7LsMGIoaDjz5AduttWorc3L4v
         JDxt8rnkKsVxeXSx3FZb1QLogIbOKQdxcy70je/4XKGU/wB0+I6RO94hwuKoFfSL9+Rb
         lq4O+CNsMGrWOYUJwzKPiRUCyv/x2hxgmh2qZrUyaVmnxhtGk88edoLMyJ75ruvcEbki
         9duw==
X-Gm-Message-State: AOJu0YykAtn23zzPhwIoqlsyo56OczmfRgQIV7kTGfUOVhkJnSoI4GSv
	7jO4LS+k4oAFNsDOLxe2FzjgzCW9D0EuCfmcdHZlsg==
X-Google-Smtp-Source: AGHT+IGgIOesCa0OBftqcrvxeb0fNrD+sXxhhCRrYy0fWowDWFXt1l/r0IYQNUvVrZBJRMakSm9G3+q2HYDVfuy0q6Q=
X-Received: by 2002:a05:651c:48e:b0:2b9:aad7:9d89 with SMTP id
 s14-20020a05651c048e00b002b9aad79d89mr1829193ljc.15.1695207574141; Wed, 20
 Sep 2023 03:59:34 -0700 (PDT)
MIME-Version: 1.0
References: <cover.1694717278.git.sanastasio@raptorengineering.com>
 <d3f04552-28d3-8745-3def-b7c341f8b76b@suse.com> <daaff015-6da1-8daa-d8b3-3618c89bc799@raptorengineering.com>
In-Reply-To: <daaff015-6da1-8daa-d8b3-3618c89bc799@raptorengineering.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Wed, 20 Sep 2023 11:59:23 +0100
Message-ID: <CA+zSX=a6U5Ox-uS8EO7A2c4QPF06Ua007hCkyimwU-nKdsnxbQ@mail.gmail.com>
Subject: Re: [PATCH v6 0/4] ppc: Enable full Xen build
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Jan Beulich <jbeulich@suse.com>, Timothy Pearson <tpearson@raptorengineering.com>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>, 
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, 
	Tamas K Lengyel <tamas@tklengyel.com>, Alexandru Isaila <aisaila@bitdefender.com>, 
	Petre Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Sep 18, 2023 at 6:27=E2=80=AFPM Shawn Anastasio
<sanastasio@raptorengineering.com> wrote:
>
> On 9/18/23 8:19 AM, Jan Beulich wrote:
> > On 14.09.2023 21:03, Shawn Anastasio wrote:
> >> Shawn Anastasio (4):
> >>   xen/ppc: Implement bitops.h
> >>   xen/ppc: Define minimal stub headers required for full build
> >
> > Compilation fails after applying this.
> >
> >>   xen/ppc: Add stub function and symbol definitions
> >
> > Continuing nevertheless, linking fails after this.
> >
> >>   xen/ppc: Enable full Xen build
> >
> > Things build okay for me when the full series is applied. Generally we
> > wouldn't deliberately break the build between any two patches; doing so
> > may be okay here (except I guest CI's build-each-commit would be upset)=
,
> > but I'll do so only upon explicit request (and with no-one else objecti=
ng).
> >
>
> Sorry about that. Going forward I'll take more care to ensure that
> partially-applied series still build correctly. For this series though,
> if you could make an exception it would be appreciated.

What would be the reason for the exception?

We don't want to follow the rules just for the rules' sake, but the
rule is there for a reason: primarily to keep bisection working.  Not
sure of osstest is testing the PPC build yet, but if it were, then
this sort of thing would make it more difficult for the automatic
bisector to find regressions in other parts of the code.  Having
non-building patches can also confuse "archaeologists" -- people a few
years hence who are trying to understand what the code does.

Is there a reason that this series would be particularly difficult to
reorganize in a way that would keep it building?  (Haven't looked at
it in detail.)

 -George


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 11:04:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 11:04:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605579.943169 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiv0j-0003ux-6h; Wed, 20 Sep 2023 11:04:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605579.943169; Wed, 20 Sep 2023 11:04:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiv0j-0003uq-4D; Wed, 20 Sep 2023 11:04:49 +0000
Received: by outflank-mailman (input) for mailman id 605579;
 Wed, 20 Sep 2023 11:04:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=atm2=FE=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qiv0h-0003uk-TT
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 11:04:47 +0000
Received: from mail-lj1-x22d.google.com (mail-lj1-x22d.google.com
 [2a00:1450:4864:20::22d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 82b1db30-57a5-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 13:04:46 +0200 (CEST)
Received: by mail-lj1-x22d.google.com with SMTP id
 38308e7fff4ca-2b974031aeaso110270861fa.0
 for <xen-devel@lists.xenproject.org>; Wed, 20 Sep 2023 04:04:46 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 82b1db30-57a5-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695207886; x=1695812686; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=BikAyLF7ovnOyW7JMU17zAcfOptTXGIUu5keLaSMNaY=;
        b=k29SREJdJGzOe+JxS+JZc5oRWGVoA5J3BZPuMrefly9JcKjXBaSv8Xxo2J3wz+xHQ0
         YQqGWCwvEb//6RD0uU9hW0VClIkJjS2JyAzPm1ykUGJB1d+GcLFpT2m7mHv9RHunadBb
         5Cs7BbOWgTYHA+2GSi4IJqT78iAiQzScaHHd0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695207886; x=1695812686;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=BikAyLF7ovnOyW7JMU17zAcfOptTXGIUu5keLaSMNaY=;
        b=psvuU1+4GYuSZP0Vajcbmi9Rru38bPysy4GaFrJvrM6nGgrRJFULoMG0YYD7Yvn2q/
         E4bned0Qx/zV2mPLaN1S59UQuiprugKsT3jaa6kOsfQzCqXvaDJf+J9EaEh0AE288TZ4
         YDq9oeCbf/7T2viUtqlG4tWDrpVccw4sBOP4Z87JXWwggXIE/ZJb/Tb6SMYzZ8rydss5
         afhQHnix2A2sTymlEgxbQOT2YtVIGm1ZyDUMSttYM6vH4BsfRAbXrH0yW5EtUiVKuYWi
         5ER4h/9Z8WCd4XBjUpbiaJps+53b5P79j62bLMo+E5wHrXgpnM2zLF6fEHXMAMWiFxDE
         XosA==
X-Gm-Message-State: AOJu0YxeeTqoSQ6DVTsdKkViS/vKqPCiLC3KWAwPr9sft254J0nWF6Gg
	ixCZRExKe0brODixhZW3+QgnOZMyqz2hUHggoN9frw==
X-Google-Smtp-Source: AGHT+IFuFP5DPlMD6NLHprdWT5f2YQbkYcXuioZaADmzzvucJyPSBJ9JlAXClWi9dS9yvmOFH076PFFzrZ+wIdiSjHM=
X-Received: by 2002:a05:651c:1714:b0:2bc:b448:b8c0 with SMTP id
 be20-20020a05651c171400b002bcb448b8c0mr1711312ljb.34.1695207886320; Wed, 20
 Sep 2023 04:04:46 -0700 (PDT)
MIME-Version: 1.0
References: <cover.1694717278.git.sanastasio@raptorengineering.com>
 <d3f04552-28d3-8745-3def-b7c341f8b76b@suse.com> <daaff015-6da1-8daa-d8b3-3618c89bc799@raptorengineering.com>
 <CA+zSX=a6U5Ox-uS8EO7A2c4QPF06Ua007hCkyimwU-nKdsnxbQ@mail.gmail.com>
In-Reply-To: <CA+zSX=a6U5Ox-uS8EO7A2c4QPF06Ua007hCkyimwU-nKdsnxbQ@mail.gmail.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Wed, 20 Sep 2023 12:04:35 +0100
Message-ID: <CA+zSX=arnS5deiNgHcV2SpGRB9B+nQy8eE040YmxUAotSJ-=iQ@mail.gmail.com>
Subject: Re: [PATCH v6 0/4] ppc: Enable full Xen build
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Jan Beulich <jbeulich@suse.com>, Timothy Pearson <tpearson@raptorengineering.com>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>, 
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, 
	Tamas K Lengyel <tamas@tklengyel.com>, Alexandru Isaila <aisaila@bitdefender.com>, 
	Petre Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Sep 20, 2023 at 11:59=E2=80=AFAM George Dunlap <george.dunlap@cloud=
.com> wrote:
>
> On Mon, Sep 18, 2023 at 6:27=E2=80=AFPM Shawn Anastasio
> <sanastasio@raptorengineering.com> wrote:
> >
> > On 9/18/23 8:19 AM, Jan Beulich wrote:
> > > On 14.09.2023 21:03, Shawn Anastasio wrote:
> > >> Shawn Anastasio (4):
> > >>   xen/ppc: Implement bitops.h
> > >>   xen/ppc: Define minimal stub headers required for full build
> > >
> > > Compilation fails after applying this.
> > >
> > >>   xen/ppc: Add stub function and symbol definitions
> > >
> > > Continuing nevertheless, linking fails after this.
> > >
> > >>   xen/ppc: Enable full Xen build
> > >
> > > Things build okay for me when the full series is applied. Generally w=
e
> > > wouldn't deliberately break the build between any two patches; doing =
so
> > > may be okay here (except I guest CI's build-each-commit would be upse=
t),
> > > but I'll do so only upon explicit request (and with no-one else objec=
ting).
> > >
> >
> > Sorry about that. Going forward I'll take more care to ensure that
> > partially-applied series still build correctly. For this series though,
> > if you could make an exception it would be appreciated.
>
> What would be the reason for the exception?
>
> We don't want to follow the rules just for the rules' sake, but the
> rule is there for a reason: primarily to keep bisection working.  Not
> sure of osstest is testing the PPC build yet, but if it were, then
> this sort of thing would make it more difficult for the automatic
> bisector to find regressions in other parts of the code.  Having
> non-building patches can also confuse "archaeologists" -- people a few
> years hence who are trying to understand what the code does.
>
> Is there a reason that this series would be particularly difficult to
> reorganize in a way that would keep it building?  (Haven't looked at
> it in detail.)

Sorry, didn't notice that Jan had said it "might be okay here".  Jan,
don't count this as an objection.

 -George


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 11:09:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 11:09:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605584.943179 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiv5O-000529-Ns; Wed, 20 Sep 2023 11:09:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605584.943179; Wed, 20 Sep 2023 11:09:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiv5O-000522-LL; Wed, 20 Sep 2023 11:09:38 +0000
Received: by outflank-mailman (input) for mailman id 605584;
 Wed, 20 Sep 2023 11:09:37 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiv5N-00050i-IQ; Wed, 20 Sep 2023 11:09:37 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiv5N-00036z-C2; Wed, 20 Sep 2023 11:09:37 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiv5N-0005O0-36; Wed, 20 Sep 2023 11:09:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiv5N-0004jg-2V; Wed, 20 Sep 2023 11:09:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=GeIrD77gcwKQhDVUsay9CgpmaxAmBQd1gykwPpbF1Rc=; b=LPd+shYjOO6eFq1qZTMewOSGwj
	i/HK1qNUKV+p2YZuG4pBg9LGTy9hglzuM+ZUmKVAsLjLKxTshkml/ZN87qaN7v0l1CeyyhxUIsfLv
	eYsHMmAzd46dsP3QjLc/wrVW/k6zzvAK4IwxzdQEGnVegYiM3l+bWWtKZkJJQjySn7GQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183079-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183079: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=4317b4824bc881fe6079d04b7ee5b0f6bddf62ca
X-Osstest-Versions-That:
    ovmf=4fb69c2bee3006b08ca2abba58843f7573e0c5c6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 20 Sep 2023 11:09:37 +0000

flight 183079 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183079/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 4317b4824bc881fe6079d04b7ee5b0f6bddf62ca
baseline version:
 ovmf                 4fb69c2bee3006b08ca2abba58843f7573e0c5c6

Last test of basis   183077  2023-09-20 06:11:08 Z    0 days
Testing same since   183079  2023-09-20 09:11:11 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ranbir Singh <Ranbir.Singh3@Dell.com>
  Ranbir Singh <rsingh@ventanamicro.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   4fb69c2bee..4317b4824b  4317b4824bc881fe6079d04b7ee5b0f6bddf62ca -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 11:35:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 11:35:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605622.943206 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qivUW-0006ov-2t; Wed, 20 Sep 2023 11:35:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605622.943206; Wed, 20 Sep 2023 11:35:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qivUV-0006oo-VT; Wed, 20 Sep 2023 11:35:35 +0000
Received: by outflank-mailman (input) for mailman id 605622;
 Wed, 20 Sep 2023 11:35:34 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=f1ZV=FE=citrix.com=prvs=6207273cf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qivUT-0006oh-Np
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 11:35:34 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cc6ea2b2-57a9-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 13:35:31 +0200 (CEST)
Received: from mail-mw2nam12lp2047.outbound.protection.outlook.com (HELO
 NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.47])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 20 Sep 2023 07:35:27 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BL1PR03MB6168.namprd03.prod.outlook.com (2603:10b6:208:319::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Wed, 20 Sep
 2023 11:35:13 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 11:35:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cc6ea2b2-57a9-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695209731;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=Dh0BfuhdfdtiPi74v6j7+V024uUypGoCqx8chXi80as=;
  b=IKxJHJCG1cqj+cxuqtDI66lijq8+iyTrH1sZUslVylfDr561i1kTn/8g
   K9B5tEh2Wyc8WNQeE8EGBDyxsAF+WEmKm9aOy8kha/UDf0P8BKV0fSx4L
   iUGNRZjATjsxBxHaK3UcZfxWGfpQBImy2SZITcO2c6WwE+ADpOkradNbk
   U=;
X-CSE-ConnectionGUID: BBDMwFY6QHO/bRgPQFuUjA==
X-CSE-MsgGUID: pYpRekUvTAyUIzjSH7zFwA==
X-IronPort-RemoteIP: 104.47.66.47
X-IronPort-MID: 123220503
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:P8U6t6Lhk+d8UG0BFE+RCZQlxSXFcZb7ZxGr2PjKsXjdYENS3jBWy
 WMdC2GAPfeMMGf2Kd13O4jj80MCsMLRnd9gGVFlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrZwP9TlK6q4mhA7wZmPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5dK01r6
 tIpdgktSVeJve2O+Zymd+tF05FLwMnDZOvzu1lG5BSAV7MDfsqGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/RppTSMpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyj33LWXwHugMG4UPKWJ7sRng2CN+kUCNTwEV2Cb/uuXlWfrDrqzL
 GRRoELCt5MaykuvSdXsWgyil1SNtBUcRtl4HvUz7UeGza+8yxaUAC0IQyBMbPQitdQqXno62
 1mRhdTrCDdz9rqPRhq17auZsjqoJW4VLGsOaCUeRA0Jy9DmrMc4iRenZvFnHa2uh9v5AwbZx
 TyQsTM+jLUei80M/6ij9FWBiDWpzqUlVSYw7wTTG2e6tAVwYdf/Y5TysQSEq/FdMIyeU1+N+
 mAenNST5/wPCpfLkzGRROIKH/ei4PPt3CDgvGOD1qIJr1yFk0NPt6gKiN2iDC+F6vo5RAI=
IronPort-HdrOrdr: A9a23:6fauvqHW4bjMTwQVpLqEEseALOsnbusQ8zAXPiBKJCC9vPb5qy
 nOpoV+6faQslwssR4b9uxoVJPvfZq+z+8R3WByB8bAYOCOggLBQL2KhbGI/9SKIVydygcy78
 Zdm6gVMqyMMbB55/yKnDVRxbwbsaa6GKPDv5ah8590JzsaDJ2Jd21Ce32m+ksdfnghObMJUK
 Cyy+BgvDSadXEefq2AdwM4t7iqnayzqHr+CyR2fyIa1A==
X-Talos-CUID: =?us-ascii?q?9a23=3AX09jOGvKY/fBDm7+6iNFU27E6IsPWFH401nhfXa?=
 =?us-ascii?q?YLiFjcrKtcHGNxaFNxp8=3D?=
X-Talos-MUID: 9a23:lMIVBAQwjOoNaVVRRXT0tSlYOcRV/ZiHGX0sg5c9m5aWGzNZbmI=
X-IronPort-AV: E=Sophos;i="6.02,161,1688443200"; 
   d="scan'208";a="123220503"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=STH4Ypr+mbKUuu2f4nz99mxPcyFVl1QK0SKaA4jzC4BSg/zp+O4jF2nCHcr65TrOvrx6AVMucer8Vvy8GWUyRvj8mWLNONeDmoxhPBReboo2XO+H1jM8AFBEiaxRylESuI5Dt2Fnp3gG2YEOb6SoazS4nL2cFOm/mW/Hs1e4hVq5QN1WfljpIqtpOAa2vMSXEJIWqEb2FZpsH/7zAIFahRtW7WQH9sjQ05fS3NFWLurL+pxygdla7P7ZtcYqxFyGy/MffPArPIsLwN6CsqemPmducdsiPnLA48DGT0tFqRwfMuqWsjCKBWmKAqw3TyEbB9Uup4gAUTFzvAHf9jpmtQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=j4MRD6gNFNJh61LVyeuvy3dTlHcFfDyJli0rfl97l1M=;
 b=Ong3YpJHv7+s9NkNPoB0683G+9zzN4PoZOTHyepiAlXOtYdc0TjYRjBvAlhq5BUwjyZHpu0U8ciAFYB+eJSkB+BSTSXb0o5/r/Yi32t0BZ8YB+c0HnkoOOyRZwCw720/pdZLMECynPl2NkJ8gLHUJwCPdAodlpUW5yCxeuPwwZavNvwB2NapuLQ/24+cNRx4IVc/I6oqPdX24wGvxWaY9N6UOXR05ereiEJMQzmhzUpLWZtokhilAtj1vh6+SSR7iIVVbXYvCsoH21CBQKEDcvU8b6G5f9Y34zhHMTx95A+SmMuKUpagf5UCWjP+8gYdttGg5q8UdpEsGGwjkoNuWA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=j4MRD6gNFNJh61LVyeuvy3dTlHcFfDyJli0rfl97l1M=;
 b=W47cZ8AP5gbLzKddIH8G+vkJd1qI5vV8dLRD2YoPCq0GG17TqWaWMdTJzCFuTL0srNReBZ8wI91TQUBPKVYAu/+vGByoIqrmKIOn/z2BMbYVtj8QGZLCb1MTEzdCCvF/RkvSVuZ4yeoPVmHWqoaXPSuGlemDmT7qkcJuDDfPEyo=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 20 Sep 2023 13:35:06 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>
Subject: Re: [PATCH v9 08/16] vpci/header: handle p2m range sets per BAR
Message-ID: <ZQrY6q4WXkAq1cAm@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-9-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20230829231912.4091958-9-volodymyr_babchuk@epam.com>
X-ClientProxiedBy: LO4P123CA0293.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:196::10) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BL1PR03MB6168:EE_
X-MS-Office365-Filtering-Correlation-Id: 205e13c8-f74d-4d89-542d-08dbb9cda6f9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	b1fQ7uHLekBmQX5faYugPPSFVucFOYQdOo0RjEniuUmVS4nd+E/galtvwFo4eLAw7a74brpxLjnvD4di4kMKzGTzrHTpzrVJNzGDBv31KzHotjMreVzOnF3QVh2OVnSocp1wedFGMwt6MLL+0/Wl3kW53kwjfjnREFSwRvJLBcrM0QJ8eBpHbZjifd2ngTPGUZoq/SONm8lNqp1xuU49xdkxeWAtVeAEQ6h2i7a7PbuG7hIylvDw6bxMnL2qiddoNa8UWZEDM1hLVYUuzF8pfUe1VDsEWNDOHNcOTgfApsBFDCeqRMXOjMApftnf1PRGs0DaAWtCqZ3cOCeA4zCEzPDKgx2CCdqgE4VsdnIagVblaDHgIQksFKKLoMOp3+wq6wCmMih4+BYDPt/X4ojKuLgNinKRa7+OwnFa7RX4EA/zVPqwfO6FQR/9F0rckVwmUpi2dFIy7BNvcQJH11kT7+lQk2AhHyoS4nCB8b2Rf6UtXJ5OaepHJ2M74uZMWbrgVGyOpJo7ColzKR2qQ5xQtiNu+AjBjbnqbPQMX3cPlTayU4a99O+uRdxcCKkNk/Ns
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(346002)(366004)(39860400002)(136003)(376002)(396003)(186009)(451199024)(1800799009)(41300700001)(8676002)(4326008)(8936002)(6916009)(82960400001)(38100700002)(316002)(66476007)(54906003)(66556008)(66946007)(9686003)(6512007)(83380400001)(478600001)(5660300002)(26005)(6486002)(6506007)(6666004)(30864003)(2906002)(33716001)(66899024)(86362001)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MmNVZlFmUTNpaWE0eGNURUMwRklHdnpCWFB3R1lvRmVzelpkb0dSOFZLUnRZ?=
 =?utf-8?B?aHhqSzEwV1Zudk5SclZ5SGJzU1ZvWVJrK2lhOXQwUitMQ2xxN3c0YThBbVFZ?=
 =?utf-8?B?QUtYUWFnVVQxSklqUXl5cjRLN1pQSjJBcnpwelk2MXVtYVlWWG9NUzhiYXhU?=
 =?utf-8?B?Rzd5dUUwb01maW9ISDRVZ2I4ZElqbXVLcEh2UlVzU0lQUkc5UzVST3Fkemcw?=
 =?utf-8?B?RkJnaUU5VnY5ZFl0dVhlQlJjQ1NMbjdvUmprZG5WaW9acVR5ZTRQVm1MZmVs?=
 =?utf-8?B?YU1BL21oL1g2R3RYTUZpeWg1Y2NwVGhwcDN6U2dsL0xoaTJjbXNvU0hVd3BX?=
 =?utf-8?B?RlI2UHpCT2NXOVFjejJCVytMVXJJRnBmWW5hRHF5M0RCRVZ0KzlobzcyZ0o4?=
 =?utf-8?B?YW1jNS9YS05SWmRBTU5NOExhcksxUkQ5cUk0YVlvVU0wMXRkVDJRbnBvYURq?=
 =?utf-8?B?UlM5aXUyZkZiY3lNMmlJejk4Y0tselBsZkFoTGRkdlpDQVJaSUNjQSs4cHVi?=
 =?utf-8?B?MXBvTnplS3p4S0NPZ21UY1V5TXpKT25ldlFJUVcwSVRhdWJndFgvV1kzWEhM?=
 =?utf-8?B?SWRaUitvWWw1bVMvbjJSV1pyeEJacTlUcW0zOU5wUVZNMDZadFhWN2ZqWGFV?=
 =?utf-8?B?V0JDYnhnNWN5TEhzL2hIeTE3VWtUZ0ZrVnlpYitKY1Rjb25sdDRIcFZJOTRu?=
 =?utf-8?B?MXVVaElQRklpcFd2cDQ5WHdaeUVNOG9xVFJHK3pzeGJMcXgzcmJEK05FZk02?=
 =?utf-8?B?VEg5VWk3a0lnR0tWeGFUdDZTNFIzUkM5OGZUcDdRTEFlSURETjFrbnp5ZWEr?=
 =?utf-8?B?NkxoS2tCMWRFeVBkVzd1M3VZMjBlTUVSdFBtL0phRGhZQ1p6UDA2RkpKNG5Z?=
 =?utf-8?B?TGJLSkNzQVBDcmF4Z2FQdDcxSHhnRGRsZ1hCaFhwK21LcjhZU203T2NzS2xB?=
 =?utf-8?B?QVJ5ZE5sVnlQUDNCcVU0ZG5hbng3dThWZjNnazlYT29yR05IQVdRUTNLdGJV?=
 =?utf-8?B?R1J2c0hYMjkzZGVVQUkvQ2ZSQTJDUGpsWmdsSFN1ZWRKVVVpV2R4TjRFYU1n?=
 =?utf-8?B?TUdvSnF6Y0p0MERHdmN6bWpwZE1lNlRpTWNHRlFYa2drbUtPV29JdzNlaTBj?=
 =?utf-8?B?VWIxZ0FvQXN3SjJjR2J2Um1PdzI2c0Z6ZjFBYVNvSE9OR3QxRDM0Rm8yaVhE?=
 =?utf-8?B?cXdBQkNTbkhieERYc0NSOWRQaUtXTFZLWGlpSmZ1dW8xbmNPUXlzWksva0RL?=
 =?utf-8?B?cGhpeHM4L0R6V3RkRThySmx0eGFVNlhSUEE0U01wTlBlaExOMURXNEd5TE5p?=
 =?utf-8?B?bC9HQkxaR2tKTDRGbndldllRTGFKWWN5bmdPMzVCWDAyNWFFbDVnUms3QUM5?=
 =?utf-8?B?SHlZdlBjN2YwUTFjVkVvL0xaK3o0SndNQXlTNlMxTFpEUDlWcGF5czlCb0hK?=
 =?utf-8?B?WjFyYWlSK1hhR0RKS3dGZG1wU0NpMGNxdDBLRUxhd0Y2elg3RWxsTTBRU1hi?=
 =?utf-8?B?bFdiV05sRlpKUTJRSkx6WlNzL3NValh4aExoYk52eUtNdUZ0SVFvcHhBQjAw?=
 =?utf-8?B?aXFsTm15UVlxdFB6VXpOS2xOaGxvOWh3a0FWYkJoNXBwZ3ZqZmUvTjB4Wlpy?=
 =?utf-8?B?NkhvSWNtemFlS2V1KzFnYzlCOTRUWjE2VExka2tONlNmUkFiNm9PZ0VmNi92?=
 =?utf-8?B?ZmdlaC9KYnJBdnJ6L0FWL3h5ekJlbjVadDJJZmhwdjhxdTRJVDFnSFlYNEZn?=
 =?utf-8?B?bmZtckZCeWRYakdiNE9TQThQUmVxaTkvN3UyUERTYTdlSmxFL2E4S2xXNDI4?=
 =?utf-8?B?Uy9mcVg4WXBLSmpwbEJ2RVhpTytkKzhadHVnZDV4eUxYZFI0L1NVV3JuckZQ?=
 =?utf-8?B?bWZvaDhQODZaekh5SXI3MUhkRTB0NnpvNjlhU3V5bmdYOUVXU2dIRitjbzN1?=
 =?utf-8?B?ZmhidEZqT2JIdVJxblR0dER1MzdadHdmUDNrK1hreCs2WFArYXVsSElwYlAx?=
 =?utf-8?B?SlkyOGw0eEVvdkdyNXpkd2hTbjZlSUwwcHplZW0yV0g2aUsyT1VwVDBLMXg5?=
 =?utf-8?B?R3ZYTmdmTlZBQnpFRkZmamh5Q09scFB6dHlYa0Q1T2RFckhPUkN0NHI3aHR3?=
 =?utf-8?B?bVZRZ09nK0w1K3VVSnNrUUtnRkhUVVZJSzVleXUzNDRnY3ptYVB6czErMzRt?=
 =?utf-8?B?ZEE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	mQeZldiapKZQQ0bx1Qw3m4t9dot6ZK94oZQKbQpMrfMTptcPMfEJUCa0IKipF1lld9uPedqSwIuaNMtUKI4r3N8kOncBYF/nf3s+ZkWA64l+JVSr42WSpArBJuS/HpokHGBEqjdUWqBPVBIthzM3VroPEpowtpEyaHSGZnEKNqqqljxKZE333Cy9g9aqpTt2PT5buhwHrj4poT4BWshpcTnRLJno2NSnQOW07UVWJSgo9wlSMqczSMI/mms87vPFWVJGiMJSJOBEtaukZVlqWzW1KRyxaztolWEQLATe3Sh6WWqN9lBBzqfgoGkJTbelU8uM+9EUYzpJQKuNrD6z1GKQYzX0cVufU79Woi5GB89SSaAIeAwKIjftO7rlJjhq6PhtYbyyKC9wL7752lsSv4JTsyaR8eNMrbEAmo35MwRdo8VYHud2a941OFp5LMCzFd6iC3OzFne7Yev+st1VoKGPU4cooPch1Tv14SRkiGx1WoUNMYpQ3VJBMeoHValplhel8n+AUxp72hgia6X9f0ZJD+4475tGWzjvGfV7m1Bie+JVso/QAn4/zDI//RAl/1xlAfYDmOd7SE7KBYA+0lVDZB8Gi5pL0dWFmvM5vuftGYV/qO4qt++STkSxEOO5DCEokjpfHSrHeoMmzwL5/wdY92OV2BbabqCJCA0g3iOZty0hv6w0euC06wQ8To/5qp1Y2Qbqvhcr2SmzPCTMR4U5AVZzvjKSy3UVDfqwJT9129kJnoAFnm418pJ2p4h1vgkrhjg4l2IAAs+1hzwShKB3fs1nSpWLnLkQbRBW/MekcLw8rD1jQ0fOZI0NYicE4xNp337PxaIjDDH5Y2NSNQ==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 205e13c8-f74d-4d89-542d-08dbb9cda6f9
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 11:35:12.5812
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: hEL3Wff4salxDx1DUNQC7RMNize9cXUL83kdYZyDspEtOPDZ6uZvmzmtzwIaiI0ufEM1kLwjYuJZ+INmhRyQgg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB6168

On Tue, Aug 29, 2023 at 11:19:44PM +0000, Volodymyr Babchuk wrote:
> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> 
> Instead of handling a single range set, that contains all the memory
> regions of all the BARs and ROM, have them per BAR.
> As the range sets are now created when a PCI device is added and destroyed
> when it is removed so make them named and accounted.
> 
> Note that rangesets were chosen here despite there being only up to
> 3 separate ranges in each set (typically just 1). But rangeset per BAR
> was chosen for the ease of implementation and existing code re-usability.
> 
> This is in preparation of making non-identity mappings in p2m for the MMIOs.
> 
> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> 
> ---
> Since v9:
> - removed d->vpci.map_pending in favor of checking v->vpci.pdev !=
> NULL
> - printk -> gprintk
> - renamed bar variable to fix shadowing
> - fixed bug with iterating on remote device's BARs
> - relaxed lock in vpci_process_pending
> - removed stale comment
> Since v6:
> - update according to the new locking scheme
> - remove odd fail label in modify_bars
> Since v5:
> - fix comments
> - move rangeset allocation to init_bars and only allocate
>   for MAPPABLE BARs
> - check for overlap with the already setup BAR ranges
> Since v4:
> - use named range sets for BARs (Jan)
> - changes required by the new locking scheme
> - updated commit message (Jan)
> Since v3:
> - re-work vpci_cancel_pending accordingly to the per-BAR handling
> - s/num_mem_ranges/map_pending and s/uint8_t/bool
> - ASSERT(bar->mem) in modify_bars
> - create and destroy the rangesets on add/remove
> ---
>  xen/drivers/vpci/header.c | 252 ++++++++++++++++++++++++++------------
>  xen/drivers/vpci/vpci.c   |   6 +
>  xen/include/xen/vpci.h    |   2 +-
>  3 files changed, 180 insertions(+), 80 deletions(-)
> 
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index e96d7b2b37..3cc6a96849 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -161,63 +161,101 @@ static void modify_decoding(const struct pci_dev *pdev, uint16_t cmd,
>  
>  bool vpci_process_pending(struct vcpu *v)
>  {
> -    if ( v->vpci.mem )
> +    struct pci_dev *pdev = v->vpci.pdev;
> +    struct map_data data = {
> +        .d = v->domain,
> +        .map = v->vpci.cmd & PCI_COMMAND_MEMORY,
> +    };
> +    struct vpci_header *header = NULL;
> +    unsigned int i;
> +
> +    if ( !pdev )
> +        return false;
> +
> +    read_lock(&v->domain->pci_lock);
> +    header = &pdev->vpci->header;

You should likely check that pdev->vpci != NULL before accessing it,
and that the device is still assigned to the domain, v->domain ==
pdev->domain.

> +    for ( i = 0; i < ARRAY_SIZE(header->bars); i++ )
>      {
> -        struct map_data data = {
> -            .d = v->domain,
> -            .map = v->vpci.cmd & PCI_COMMAND_MEMORY,
> -        };
> -        int rc = rangeset_consume_ranges(v->vpci.mem, map_range, &data);
> +        struct vpci_bar *bar = &header->bars[i];
> +        int rc;
> +
> +        if ( rangeset_is_empty(bar->mem) )
> +            continue;
> +
> +        rc = rangeset_consume_ranges(bar->mem, map_range, &data);
>  
>          if ( rc == -ERESTART )
> +        {
> +            read_unlock(&v->domain->pci_lock);
>              return true;
> +        }
>  
> -        write_lock(&v->domain->pci_lock);
> -        spin_lock(&v->vpci.pdev->vpci->lock);
> -        /* Disable memory decoding unconditionally on failure. */
> -        modify_decoding(v->vpci.pdev,
> -                        rc ? v->vpci.cmd & ~PCI_COMMAND_MEMORY : v->vpci.cmd,
> -                        !rc && v->vpci.rom_only);
> -        spin_unlock(&v->vpci.pdev->vpci->lock);
> -
> -        rangeset_destroy(v->vpci.mem);
> -        v->vpci.mem = NULL;
>          if ( rc )
> -            /*
> -             * FIXME: in case of failure remove the device from the domain.
> -             * Note that there might still be leftover mappings. While this is
> -             * safe for Dom0, for DomUs the domain will likely need to be
> -             * killed in order to avoid leaking stale p2m mappings on
> -             * failure.
> -             */
> -            vpci_deassign_device(v->vpci.pdev);
> -        write_unlock(&v->domain->pci_lock);
> +        {
> +            spin_lock(&pdev->vpci->lock);
> +            /* Disable memory decoding unconditionally on failure. */
> +            modify_decoding(pdev, v->vpci.cmd & ~PCI_COMMAND_MEMORY,
> +                            false);
> +            spin_unlock(&pdev->vpci->lock);
> +
> +            v->vpci.pdev = NULL;
> +
> +            read_unlock(&v->domain->pci_lock);
> +
> +            if ( is_hardware_domain(v->domain) )
> +            {
> +                write_lock(&v->domain->pci_lock);

This unlock/lock dance is racy, and I'm not sure there's much point in
removing the vPCI handlers for the device, it's not likely to be
helpful to dom0.  It might be better to just unconditionally disable
memory decoding and empty all the rangesets.  Not sure whether there's
more cached state that would need dealing with in pdev->vpci.

Maybe as a bodge you could leave the current vpci_deassign_device()
call and check that pdev->domain == v->domain after having taken the
pci_lock.

> +                vpci_deassign_device(v->vpci.pdev);
> +                write_unlock(&v->domain->pci_lock);
> +            }
> +            else
> +            {
> +                domain_crash(v->domain);
> +            }
> +            return false;
> +        }
>      }
> +    read_unlock(&v->domain->pci_lock);
> +
> +    v->vpci.pdev = NULL;
> +
> +    spin_lock(&pdev->vpci->lock);
> +    modify_decoding(pdev, v->vpci.cmd, v->vpci.rom_only);
> +    spin_unlock(&pdev->vpci->lock);

Why do you drop the pci_lock before calling modify_decoding()?  It
needs to stay locked until operations on pdev have finished, iow:
after modify_decoding(), or else accessing the contents of pdev->vpci
is not safe, and the device could be deassigned in the meantime.

>  
>      return false;
>  }
>  
>  static int __init apply_map(struct domain *d, const struct pci_dev *pdev,
> -                            struct rangeset *mem, uint16_t cmd)
> +                            uint16_t cmd)
>  {
>      struct map_data data = { .d = d, .map = true };
> -    int rc;
> +    struct vpci_header *header = &pdev->vpci->header;
> +    int rc = 0;
> +    unsigned int i;
>  
>      ASSERT(rw_is_locked(&d->pci_lock));
>  
> -    while ( (rc = rangeset_consume_ranges(mem, map_range, &data)) == -ERESTART )
> +    for ( i = 0; i < ARRAY_SIZE(header->bars); i++ )
>      {
> -        /*
> -         * It's safe to drop and reacquire the lock in this context
> -         * without risking pdev disappearing because devices cannot be
> -         * removed until the initial domain has been started.
> -         */
> -        read_unlock(&d->pci_lock);
> -        process_pending_softirqs();
> -        read_lock(&d->pci_lock);
> -    }
> +        struct vpci_bar *bar = &header->bars[i];
>  
> -    rangeset_destroy(mem);
> +        if ( rangeset_is_empty(bar->mem) )
> +            continue;
> +
> +        while ( (rc = rangeset_consume_ranges(bar->mem, map_range,
> +                                              &data)) == -ERESTART )
> +        {
> +            /*
> +             * It's safe to drop and reacquire the lock in this context
> +             * without risking pdev disappearing because devices cannot be
> +             * removed until the initial domain has been started.
> +             */
> +            write_unlock(&d->pci_lock);
> +            process_pending_softirqs();
> +            write_lock(&d->pci_lock);
> +        }
> +    }
>      if ( !rc )
>          modify_decoding(pdev, cmd, false);
>  
> @@ -225,10 +263,12 @@ static int __init apply_map(struct domain *d, const struct pci_dev *pdev,
>  }
>  
>  static void defer_map(struct domain *d, struct pci_dev *pdev,
> -                      struct rangeset *mem, uint16_t cmd, bool rom_only)
> +                      uint16_t cmd, bool rom_only)
>  {
>      struct vcpu *curr = current;
>  
> +    ASSERT(rw_is_write_locked(&pdev->domain->pci_lock));
> +
>      /*
>       * FIXME: when deferring the {un}map the state of the device should not
>       * be trusted. For example the enable bit is toggled after the device
> @@ -236,7 +276,6 @@ static void defer_map(struct domain *d, struct pci_dev *pdev,
>       * started for the same device if the domain is not well-behaved.
>       */
>      curr->vpci.pdev = pdev;
> -    curr->vpci.mem = mem;
>      curr->vpci.cmd = cmd;
>      curr->vpci.rom_only = rom_only;
>      /*
> @@ -250,33 +289,33 @@ static void defer_map(struct domain *d, struct pci_dev *pdev,
>  static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>  {
>      struct vpci_header *header = &pdev->vpci->header;
> -    struct rangeset *mem = rangeset_new(NULL, NULL, 0);
>      struct pci_dev *tmp, *dev = NULL;
>      const struct domain *d;
>      const struct vpci_msix *msix = pdev->vpci->msix;
> -    unsigned int i;
> +    unsigned int i, j;
>      int rc;
>  
>      ASSERT(rw_is_write_locked(&pdev->domain->pci_lock));
>  
> -    if ( !mem )
> -        return -ENOMEM;
> -
>      /*
> -     * Create a rangeset that represents the current device BARs memory region
> -     * and compare it against all the currently active BAR memory regions. If
> -     * an overlap is found, subtract it from the region to be mapped/unmapped.
> +     * Create a rangeset per BAR that represents the current device memory
> +     * region and compare it against all the currently active BAR memory
> +     * regions. If an overlap is found, subtract it from the region to be
> +     * mapped/unmapped.
>       *
> -     * First fill the rangeset with all the BARs of this device or with the ROM
> +     * First fill the rangesets with the BAR of this device or with the ROM
>       * BAR only, depending on whether the guest is toggling the memory decode
>       * bit of the command register, or the enable bit of the ROM BAR register.
>       */
>      for ( i = 0; i < ARRAY_SIZE(header->bars); i++ )
>      {
> -        const struct vpci_bar *bar = &header->bars[i];
> +        struct vpci_bar *bar = &header->bars[i];
>          unsigned long start = PFN_DOWN(bar->addr);
>          unsigned long end = PFN_DOWN(bar->addr + bar->size - 1);
>  
> +        if ( !bar->mem )
> +            continue;
> +
>          if ( !MAPPABLE_BAR(bar) ||
>               (rom_only ? bar->type != VPCI_BAR_ROM
>                         : (bar->type == VPCI_BAR_ROM && !header->rom_enabled)) ||
> @@ -292,14 +331,31 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>              continue;
>          }
>  
> -        rc = rangeset_add_range(mem, start, end);
> +        rc = rangeset_add_range(bar->mem, start, end);
>          if ( rc )
>          {
>              printk(XENLOG_G_WARNING "Failed to add [%lx, %lx]: %d\n",
>                     start, end, rc);
> -            rangeset_destroy(mem);
>              return rc;
>          }
> +
> +        /* Check for overlap with the already setup BAR ranges. */
> +        for ( j = 0; j < i; j++ )
> +        {
> +            struct vpci_bar *prev_bar = &header->bars[j];
> +
> +            if ( rangeset_is_empty(prev_bar->mem) )
> +                continue;
> +
> +            rc = rangeset_remove_range(prev_bar->mem, start, end);
> +            if ( rc )
> +            {
> +                gprintk(XENLOG_WARNING,
> +                       "%pp: failed to remove overlapping range [%lx, %lx]: %d\n",
> +                        &pdev->sbdf, start, end, rc);
> +                return rc;
> +            }
> +        }
>      }
>  
>      /* Remove any MSIX regions if present. */
> @@ -309,14 +365,21 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>          unsigned long end = PFN_DOWN(vmsix_table_addr(pdev->vpci, i) +
>                                       vmsix_table_size(pdev->vpci, i) - 1);
>  
> -        rc = rangeset_remove_range(mem, start, end);
> -        if ( rc )
> +        for ( j = 0; j < ARRAY_SIZE(header->bars); j++ )
>          {
> -            printk(XENLOG_G_WARNING
> -                   "Failed to remove MSIX table [%lx, %lx]: %d\n",
> -                   start, end, rc);
> -            rangeset_destroy(mem);
> -            return rc;
> +            const struct vpci_bar *bar = &header->bars[j];
> +
> +            if ( rangeset_is_empty(bar->mem) )
> +                continue;
> +
> +            rc = rangeset_remove_range(bar->mem, start, end);
> +            if ( rc )
> +            {
> +                gprintk(XENLOG_WARNING,
> +                       "%pp: failed to remove MSIX table [%lx, %lx]: %d\n",
> +                        &pdev->sbdf, start, end, rc);
> +                return rc;
> +            }
>          }
>      }
>  
> @@ -356,27 +419,34 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>  
>              for ( i = 0; i < ARRAY_SIZE(tmp->vpci->header.bars); i++ )
>              {
> -                const struct vpci_bar *bar = &tmp->vpci->header.bars[i];
> -                unsigned long start = PFN_DOWN(bar->addr);
> -                unsigned long end = PFN_DOWN(bar->addr + bar->size - 1);
> -
> -                if ( !bar->enabled ||
> -                     !rangeset_overlaps_range(mem, start, end) ||
> -                     /*
> -                      * If only the ROM enable bit is toggled check against
> -                      * other BARs in the same device for overlaps, but not
> -                      * against the same ROM BAR.
> -                      */
> -                     (rom_only && tmp == pdev && bar->type == VPCI_BAR_ROM) )
> +                const struct vpci_bar *remote_bar = &tmp->vpci->header.bars[i];
> +                unsigned long start = PFN_DOWN(remote_bar->addr);
> +                unsigned long end = PFN_DOWN(remote_bar->addr +
> +                                             remote_bar->size - 1);
> +
> +                if ( !remote_bar->enabled )
>                      continue;
>  
> -                rc = rangeset_remove_range(mem, start, end);
> -                if ( rc )
> +                for ( j = 0; j < ARRAY_SIZE(header->bars); j++)
>                  {
> -                    printk(XENLOG_G_WARNING "Failed to remove [%lx, %lx]: %d\n",
> -                           start, end, rc);
> -                    rangeset_destroy(mem);
> -                    return rc;
> +                    const struct vpci_bar *bar = &header->bars[j];
> +                    if ( !rangeset_overlaps_range(bar->mem, start, end) ||

Missing newline between local variable definition and code.

> +                         /*
> +                          * If only the ROM enable bit is toggled check against
> +                          * other BARs in the same device for overlaps, but not
> +                          * against the same ROM BAR.
> +                          */
> +                         (rom_only && tmp == pdev && bar->type == VPCI_BAR_ROM) )
> +                        continue;
> +
> +                    rc = rangeset_remove_range(bar->mem, start, end);
> +                    if ( rc )
> +                    {
> +                        gprintk(XENLOG_WARNING,
> +                                "%pp: failed to remove [%lx, %lx]: %d\n",
> +                                &pdev->sbdf, start, end, rc);
> +                        return rc;
> +                    }
>                  }
>              }
>          }
> @@ -400,10 +470,10 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>           * will always be to establish mappings and process all the BARs.
>           */
>          ASSERT((cmd & PCI_COMMAND_MEMORY) && !rom_only);
> -        return apply_map(pdev->domain, pdev, mem, cmd);
> +        return apply_map(pdev->domain, pdev, cmd);
>      }
>  
> -    defer_map(dev->domain, dev, mem, cmd, rom_only);
> +    defer_map(dev->domain, dev, cmd, rom_only);
>  
>      return 0;
>  }
> @@ -595,6 +665,20 @@ static void cf_check rom_write(
>          rom->addr = val & PCI_ROM_ADDRESS_MASK;
>  }
>  
> +static int bar_add_rangeset(const struct pci_dev *pdev, struct vpci_bar *bar,
> +                            unsigned int i)
> +{
> +    char str[32];
> +
> +    snprintf(str, sizeof(str), "%pp:BAR%d", &pdev->sbdf, i);

%u for i.

> +
> +    bar->mem = rangeset_new(pdev->domain, str, RANGESETF_no_print);
> +    if ( !bar->mem )
> +        return -ENOMEM;
> +
> +    return 0;

Could be simplified as:

return !bar->mem ? -ENOMEM : 0;

But I don't have a strong opinion, I understand some people might find
this obscure.

> +}
> +
>  static int cf_check init_bars(struct pci_dev *pdev)
>  {
>      uint16_t cmd;
> @@ -675,6 +759,10 @@ static int cf_check init_bars(struct pci_dev *pdev)
>          else
>              bars[i].type = VPCI_BAR_MEM32;
>  
> +        rc = bar_add_rangeset(pdev, &bars[i], i);
> +        if ( rc )
> +            return rc;

Don't you need to use the fail label in order to restore the previous
command register value on the device? (here and below)

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 11:42:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 11:42:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605657.943233 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qivbP-0002Ly-9d; Wed, 20 Sep 2023 11:42:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605657.943233; Wed, 20 Sep 2023 11:42:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qivbP-0002Lr-6j; Wed, 20 Sep 2023 11:42:43 +0000
Received: by outflank-mailman (input) for mailman id 605657;
 Wed, 20 Sep 2023 11:42:42 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IStA=FE=gmail.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qivbO-0002F3-4e
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 11:42:42 +0000
Received: from mail-pf1-x433.google.com (mail-pf1-x433.google.com
 [2607:f8b0:4864:20::433])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ccacc27c-57aa-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 13:42:39 +0200 (CEST)
Received: by mail-pf1-x433.google.com with SMTP id
 d2e1a72fcca58-68c576d35feso6154101b3a.2
 for <xen-devel@lists.xenproject.org>; Wed, 20 Sep 2023 04:42:39 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 q20-20020a170902e31400b001b8baa83639sm11707841plc.200.2023.09.20.04.42.31
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 20 Sep 2023 04:42:37 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ccacc27c-57aa-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695210158; x=1695814958; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=QqdVtuvv/bute/5FjIyf0NTlHLXavZRB/wxJnfabUaA=;
        b=DmQlzTEKXnqUynfxjWtIqJTdE3wi0ORW42wvEGkQw9FlYnHrFtY7RE8VzbQME8Yf9S
         uxsr1f8ZqLMi245y46IYWoFpm6rLEK8vtZkcSNtMu2p7G/nXymS2RKLZ0pd98nqdJwfc
         LkU4doH/j5odPEZ2zWdl9AwMLF6zr7OJqdvYKkFJk/XoJYdwld4WDnPSq/tfUGeRGoFO
         A2DpfncIMogAhCZaRe0/XeSX7rELCTRfKLrzMA3m70AaqMP/Sjox7AT7ERaBikuGjvPM
         zy2Ky8105v8mQZoRr6OOTR7dmXTWKdnqOXei+TDVup9/dd/302izZmjQ0KqbeXfdM1hb
         rrqA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695210158; x=1695814958;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=QqdVtuvv/bute/5FjIyf0NTlHLXavZRB/wxJnfabUaA=;
        b=TrehQSQlaAgkrzurhhhOBkctii2Arlnjv0gpxuk3ukR4NSitp77nVc11JKAoasey4R
         e+b8SUvj2ND9qeUiHJzrT3Mhl/os63+TYsTWqKCl3vwKB6iaDDTKPUtljJ9fGQTPX/6e
         10paQ3M1ieWzZU2rStKM0budW4M45JXEkjegTNjdwgfsCf4hyiVqo0fUvK5UiUigrRoP
         UkRFvUjeBx689L0BLvJ6YeHaBCd0a3nfoGlNZvY/q8g4MmTJ6k901xMhxOFNl/sJUzhk
         JU7tczoUIlzu4cXSkECiXMdwZw6ScLFpTOkxdDvLCnBDAkms2zohWof9hkcxmQxcHk4a
         Bmjg==
X-Gm-Message-State: AOJu0Yy4UsJdgKhblL/M2SeKhUpklfLKOvW71QbRhJv+3jKTrTqHLxTJ
	/morfB9keLIFKPC4ZBWQuoU=
X-Google-Smtp-Source: AGHT+IFU4kVBzIIMmYjkGMEHZZ1wtdu16GpwbD287TEMcTUn1TqlNt/npV6L90GNttyhyolk5AZTyA==
X-Received: by 2002:a05:6a20:394e:b0:138:2fb8:6b42 with SMTP id r14-20020a056a20394e00b001382fb86b42mr2465679pzg.14.1695210157627;
        Wed, 20 Sep 2023 04:42:37 -0700 (PDT)
Message-ID: <2620fca0-a5b4-49d0-bf91-fd359ee4999b@gmail.com>
Date: Wed, 20 Sep 2023 20:42:30 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v13 6/9] gfxstream + rutabaga: add initial support for
 gfxstream
Content-Language: en-US
To: Gurchetan Singh <gurchetansingh@chromium.org>, qemu-devel@nongnu.org,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Cc: marcandre.lureau@redhat.com, ray.huang@amd.com, alex.bennee@linaro.org,
 shentey@gmail.com, hi@alyssa.is, ernunes@redhat.com,
 manos.pitsidianakis@linaro.org, philmd@linaro.org,
 mark.cave-ayland@ilande.co.uk, Huang Rui <ray.huang@amd.com>,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>, Huang Rui <ray.huang@amd.com>,
 Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 qemu-devel@nongnu.org, xen-devel@lists.xenproject.org,
 Gurchetan Singh <gurchetansingh@chromium.org>,
 Albert Esteve <aesteve@redhat.com>, ernunes@redhat.com,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,
 Alyssa Ross <hi@alyssa.is>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>
References: <20230829003629.410-1-gurchetansingh@chromium.org>
 <20230829003629.410-7-gurchetansingh@chromium.org>
From: Akihiko Odaki <akihiko.odaki@gmail.com>
In-Reply-To: <20230829003629.410-7-gurchetansingh@chromium.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/08/29 9:36, Gurchetan Singh wrote:
> This adds initial support for gfxstream and cross-domain.  Both
> features rely on virtio-gpu blob resources and context types, which
> are also implemented in this patch.
> 
> gfxstream has a long and illustrious history in Android graphics
> paravirtualization.  It has been powering graphics in the Android
> Studio Emulator for more than a decade, which is the main developer
> platform.
> 
> Originally conceived by Jesse Hall, it was first known as "EmuGL" [a].
> The key design characteristic was a 1:1 threading model and
> auto-generation, which fit nicely with the OpenGLES spec.  It also
> allowed easy layering with ANGLE on the host, which provides the GLES
> implementations on Windows or MacOS enviroments.
> 
> gfxstream has traditionally been maintained by a single engineer, and
> between 2015 to 2021, the goldfish throne passed to Frank Yang.
> Historians often remark this glorious reign ("pax gfxstreama" is the
> academic term) was comparable to that of Augustus and both Queen
> Elizabeths.  Just to name a few accomplishments in a resplendent
> panoply: higher versions of GLES, address space graphics, snapshot
> support and CTS compliant Vulkan [b].
> 
> One major drawback was the use of out-of-tree goldfish drivers.
> Android engineers didn't know much about DRM/KMS and especially TTM so
> a simple guest to host pipe was conceived.
> 
> Luckily, virtio-gpu 3D started to emerge in 2016 due to the work of
> the Mesa/virglrenderer communities.  In 2018, the initial virtio-gpu
> port of gfxstream was done by Cuttlefish enthusiast Alistair Delva.
> It was a symbol compatible replacement of virglrenderer [c] and named
> "AVDVirglrenderer".  This implementation forms the basis of the
> current gfxstream host implementation still in use today.
> 
> cross-domain support follows a similar arc.  Originally conceived by
> Wayland aficionado David Reveman and crosvm enjoyer Zach Reizner in
> 2018, it initially relied on the downstream "virtio-wl" device.
> 
> In 2020 and 2021, virtio-gpu was extended to include blob resources
> and multiple timelines by yours truly, features gfxstream/cross-domain
> both require to function correctly.
> 
> Right now, we stand at the precipice of a truly fantastic possibility:
> the Android Emulator powered by upstream QEMU and upstream Linux
> kernel.  gfxstream will then be packaged properfully, and app
> developers can even fix gfxstream bugs on their own if they encounter
> them.
> 
> It's been quite the ride, my friends.  Where will gfxstream head next,
> nobody really knows.  I wouldn't be surprised if it's around for
> another decade, maintained by a new generation of Android graphics
> enthusiasts.
> 
> Technical details:
>    - Very simple initial display integration: just used Pixman
>    - Largely, 1:1 mapping of virtio-gpu hypercalls to rutabaga function
>      calls
> 
> Next steps for Android VMs:
>    - The next step would be improving display integration and UI interfaces
>      with the goal of the QEMU upstream graphics being in an emulator
>      release [d].
> 
> Next steps for Linux VMs for display virtualization:
>    - For widespread distribution, someone needs to package Sommelier or the
>      wayland-proxy-virtwl [e] ideally into Debian main. In addition, newer
>      versions of the Linux kernel come with DRM_VIRTIO_GPU_KMS option,
>      which allows disabling KMS hypercalls.  If anyone cares enough, it'll
>      probably be possible to build a custom VM variant that uses this display
>      virtualization strategy.
> 
> [a] https://android-review.googlesource.com/c/platform/development/+/34470
> [b] https://android-review.googlesource.com/q/topic:%22vulkan-hostconnection-start%22
> [c] https://android-review.googlesource.com/c/device/generic/goldfish-opengl/+/761927
> [d] https://developer.android.com/studio/releases/emulator
> [e] https://github.com/talex5/wayland-proxy-virtwl
> 
> Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org>
> Tested-by: Alyssa Ross <hi@alyssa.is>
> Tested-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
> Tested-by: Akihiko Odaki <akihiko.odaki@daynix.com>
> Reviewed-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
> Reviewed-by: Antonio Caggiano <quic_acaggian@quicinc.com>
> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
> ---
>   hw/display/virtio-gpu-pci-rutabaga.c |   47 ++
>   hw/display/virtio-gpu-rutabaga.c     | 1119 ++++++++++++++++++++++++++
>   hw/display/virtio-vga-rutabaga.c     |   50 ++
>   3 files changed, 1216 insertions(+)
>   create mode 100644 hw/display/virtio-gpu-pci-rutabaga.c
>   create mode 100644 hw/display/virtio-gpu-rutabaga.c
>   create mode 100644 hw/display/virtio-vga-rutabaga.c
> 
> diff --git a/hw/display/virtio-gpu-pci-rutabaga.c b/hw/display/virtio-gpu-pci-rutabaga.c
> new file mode 100644
> index 0000000000..c96729e198
> --- /dev/null
> +++ b/hw/display/virtio-gpu-pci-rutabaga.c
> @@ -0,0 +1,47 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +
> +#include "qemu/osdep.h"
> +#include "qapi/error.h"
> +#include "qemu/module.h"
> +#include "hw/pci/pci.h"
> +#include "hw/qdev-properties.h"
> +#include "hw/virtio/virtio.h"
> +#include "hw/virtio/virtio-bus.h"
> +#include "hw/virtio/virtio-gpu-pci.h"
> +#include "qom/object.h"
> +
> +#define TYPE_VIRTIO_GPU_RUTABAGA_PCI "virtio-gpu-rutabaga-pci"
> +OBJECT_DECLARE_SIMPLE_TYPE(VirtIOGPURutabagaPCI, VIRTIO_GPU_RUTABAGA_PCI)
> +
> +struct VirtIOGPURutabagaPCI {
> +    VirtIOGPUPCIBase parent_obj;
> +
> +    VirtIOGPURutabaga vdev;
> +};
> +
> +static void virtio_gpu_rutabaga_initfn(Object *obj)
> +{
> +    VirtIOGPURutabagaPCI *dev = VIRTIO_GPU_RUTABAGA_PCI(obj);
> +
> +    virtio_instance_init_common(obj, &dev->vdev, sizeof(dev->vdev),
> +                                TYPE_VIRTIO_GPU_RUTABAGA);
> +    VIRTIO_GPU_PCI_BASE(obj)->vgpu = VIRTIO_GPU_BASE(&dev->vdev);
> +}
> +
> +static const TypeInfo virtio_gpu_rutabaga_pci_info[] = {
> +    {
> +        .name = TYPE_VIRTIO_GPU_RUTABAGA_PCI,
> +        .parent = TYPE_VIRTIO_GPU_PCI_BASE,
> +        .instance_size = sizeof(VirtIOGPURutabagaPCI),
> +        .instance_init = virtio_gpu_rutabaga_initfn,
> +        .interfaces = (InterfaceInfo[]) {
> +            { INTERFACE_CONVENTIONAL_PCI_DEVICE },
> +        }
> +    },
> +};
> +
> +DEFINE_TYPES(virtio_gpu_rutabaga_pci_info)
> +
> +module_obj(TYPE_VIRTIO_GPU_RUTABAGA_PCI);
> +module_kconfig(VIRTIO_PCI);
> +module_dep("hw-display-virtio-gpu-pci");
> diff --git a/hw/display/virtio-gpu-rutabaga.c b/hw/display/virtio-gpu-rutabaga.c
> new file mode 100644
> index 0000000000..a105e06214
> --- /dev/null
> +++ b/hw/display/virtio-gpu-rutabaga.c
> @@ -0,0 +1,1119 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +
> +#include "qemu/osdep.h"
> +#include "qapi/error.h"
> +#include "qemu/error-report.h"
> +#include "qemu/iov.h"
> +#include "trace.h"
> +#include "hw/virtio/virtio.h"
> +#include "hw/virtio/virtio-gpu.h"
> +#include "hw/virtio/virtio-gpu-pixman.h"
> +#include "hw/virtio/virtio-iommu.h"
> +
> +#include <glib/gmem.h>
> +#include <rutabaga_gfx/rutabaga_gfx_ffi.h>
> +
> +#define CHECK(condition, cmd)                                                 \
> +    do {                                                                      \
> +        if (!(condition)) {                                                   \
> +            error_report("CHECK failed in %s() %s:" "%d", __func__,           \
> +                         __FILE__, __LINE__);                                 \
> +            (cmd)->error = VIRTIO_GPU_RESP_ERR_UNSPEC;                        \
> +            return;                                                           \
> +       }                                                                      \
> +    } while (0)
> +
> +/*
> + * This is the size of the char array in struct sock_addr_un. No Wayland socket
> + * can be created with a path longer than this, including the null terminator.
> + */
> +#define UNIX_PATH_MAX sizeof((struct sockaddr_un) {} .sun_path)
> +
> +struct rutabaga_aio_data {
> +    struct VirtIOGPURutabaga *vr;
> +    struct rutabaga_fence fence;
> +};
> +
> +static void
> +virtio_gpu_rutabaga_update_cursor(VirtIOGPU *g, struct virtio_gpu_scanout *s,
> +                                  uint32_t resource_id)
> +{
> +    struct virtio_gpu_simple_resource *res;
> +    struct rutabaga_transfer transfer = { 0 };
> +    struct iovec transfer_iovec;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    res = virtio_gpu_find_resource(g, resource_id);
> +    if (!res) {
> +        return;
> +    }
> +
> +    if (res->width != s->current_cursor->width ||
> +        res->height != s->current_cursor->height) {
> +        return;
> +    }
> +
> +    transfer.x = 0;
> +    transfer.y = 0;
> +    transfer.z = 0;
> +    transfer.w = res->width;
> +    transfer.h = res->height;
> +    transfer.d = 1;
> +
> +    transfer_iovec.iov_base = s->current_cursor->data;
> +    transfer_iovec.iov_len = res->width * res->height * 4;
> +
> +    rutabaga_resource_transfer_read(vr->rutabaga, 0,
> +                                    resource_id, &transfer,
> +                                    &transfer_iovec);
> +}
> +
> +static void
> +virtio_gpu_rutabaga_gl_flushed(VirtIOGPUBase *b)
> +{
> +    VirtIOGPU *g = VIRTIO_GPU(b);
> +    virtio_gpu_process_cmdq(g);
> +}
> +
> +static void
> +rutabaga_cmd_create_resource_2d(VirtIOGPU *g,
> +                                struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct rutabaga_create_3d rc_3d = { 0 };
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_create_2d c2d;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(c2d);
> +    trace_virtio_gpu_cmd_res_create_2d(c2d.resource_id, c2d.format,
> +                                       c2d.width, c2d.height);
> +
> +    rc_3d.target = 2;
> +    rc_3d.format = c2d.format;
> +    rc_3d.bind = (1 << 1);
> +    rc_3d.width = c2d.width;
> +    rc_3d.height = c2d.height;
> +    rc_3d.depth = 1;
> +    rc_3d.array_size = 1;
> +    rc_3d.last_level = 0;
> +    rc_3d.nr_samples = 0;
> +    rc_3d.flags = VIRTIO_GPU_RESOURCE_FLAG_Y_0_TOP;
> +
> +    result = rutabaga_resource_create_3d(vr->rutabaga, c2d.resource_id, &rc_3d);
> +    CHECK(!result, cmd);
> +
> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> +    res->width = c2d.width;
> +    res->height = c2d.height;
> +    res->format = c2d.format;
> +    res->resource_id = c2d.resource_id;
> +
> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> +}
> +
> +static void
> +rutabaga_cmd_create_resource_3d(VirtIOGPU *g,
> +                                struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct rutabaga_create_3d rc_3d = { 0 };
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_create_3d c3d;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(c3d);
> +
> +    trace_virtio_gpu_cmd_res_create_3d(c3d.resource_id, c3d.format,
> +                                       c3d.width, c3d.height, c3d.depth);
> +
> +    rc_3d.target = c3d.target;
> +    rc_3d.format = c3d.format;
> +    rc_3d.bind = c3d.bind;
> +    rc_3d.width = c3d.width;
> +    rc_3d.height = c3d.height;
> +    rc_3d.depth = c3d.depth;
> +    rc_3d.array_size = c3d.array_size;
> +    rc_3d.last_level = c3d.last_level;
> +    rc_3d.nr_samples = c3d.nr_samples;
> +    rc_3d.flags = c3d.flags;
> +
> +    result = rutabaga_resource_create_3d(vr->rutabaga, c3d.resource_id, &rc_3d);
> +    CHECK(!result, cmd);
> +
> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> +    res->width = c3d.width;
> +    res->height = c3d.height;
> +    res->format = c3d.format;
> +    res->resource_id = c3d.resource_id;
> +
> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> +}
> +
> +static void
> +rutabaga_cmd_resource_unref(VirtIOGPU *g,
> +                            struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_unref unref;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(unref);
> +
> +    trace_virtio_gpu_cmd_res_unref(unref.resource_id);
> +
> +    res = virtio_gpu_find_resource(g, unref.resource_id);
> +    CHECK(res, cmd);
> +
> +    result = rutabaga_resource_unref(vr->rutabaga, unref.resource_id);
> +    CHECK(!result, cmd);
> +
> +    if (res->image) {
> +        pixman_image_unref(res->image);
> +    }
> +
> +    QTAILQ_REMOVE(&g->reslist, res, next);
> +    g_free(res);
> +}
> +
> +static void
> +rutabaga_cmd_context_create(VirtIOGPU *g,
> +                            struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct virtio_gpu_ctx_create cc;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(cc);
> +    trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
> +                                    cc.debug_name);
> +
> +    result = rutabaga_context_create(vr->rutabaga, cc.hdr.ctx_id,
> +                                     cc.context_init, cc.debug_name, cc.nlen);
> +    CHECK(!result, cmd);
> +}
> +
> +static void
> +rutabaga_cmd_context_destroy(VirtIOGPU *g,
> +                             struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct virtio_gpu_ctx_destroy cd;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(cd);
> +    trace_virtio_gpu_cmd_ctx_destroy(cd.hdr.ctx_id);
> +
> +    result = rutabaga_context_destroy(vr->rutabaga, cd.hdr.ctx_id);
> +    CHECK(!result, cmd);
> +}
> +
> +static void
> +rutabaga_cmd_resource_flush(VirtIOGPU *g, struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result, i;
> +    struct virtio_gpu_scanout *scanout = NULL;
> +    struct virtio_gpu_simple_resource *res;
> +    struct rutabaga_transfer transfer = { 0 };
> +    struct iovec transfer_iovec;
> +    struct virtio_gpu_resource_flush rf;
> +    bool found = false;
> +
> +    VirtIOGPUBase *vb = VIRTIO_GPU_BASE(g);
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +    if (vr->headless) {
> +        return;
> +    }
> +
> +    VIRTIO_GPU_FILL_CMD(rf);
> +    trace_virtio_gpu_cmd_res_flush(rf.resource_id,
> +                                   rf.r.width, rf.r.height, rf.r.x, rf.r.y);
> +
> +    res = virtio_gpu_find_resource(g, rf.resource_id);
> +    CHECK(res, cmd);
> +
> +    for (i = 0; i < vb->conf.max_outputs; i++) {
> +        scanout = &vb->scanout[i];
> +        if (i == res->scanout_bitmask) {
> +            found = true;
> +            break;
> +        }
> +    }
> +
> +    if (!found) {
> +        return;
> +    }
> +
> +    transfer.x = 0;
> +    transfer.y = 0;
> +    transfer.z = 0;
> +    transfer.w = res->width;
> +    transfer.h = res->height;
> +    transfer.d = 1;
> +
> +    transfer_iovec.iov_base = pixman_image_get_data(res->image);
> +    transfer_iovec.iov_len = res->width * res->height * 4;
> +
> +    result = rutabaga_resource_transfer_read(vr->rutabaga, 0,
> +                                             rf.resource_id, &transfer,
> +                                             &transfer_iovec);
> +    CHECK(!result, cmd);
> +    dpy_gfx_update_full(scanout->con);
> +}
> +
> +static void
> +rutabaga_cmd_set_scanout(VirtIOGPU *g, struct virtio_gpu_ctrl_command *cmd)
> +{
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_scanout *scanout = NULL;
> +    struct virtio_gpu_set_scanout ss;
> +
> +    VirtIOGPUBase *vb = VIRTIO_GPU_BASE(g);
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +    if (vr->headless) {
> +        return;
> +    }
> +
> +    VIRTIO_GPU_FILL_CMD(ss);
> +    trace_virtio_gpu_cmd_set_scanout(ss.scanout_id, ss.resource_id,
> +                                     ss.r.width, ss.r.height, ss.r.x, ss.r.y);
> +
> +    CHECK(ss.scanout_id < VIRTIO_GPU_MAX_SCANOUTS, cmd);
> +    scanout = &vb->scanout[ss.scanout_id];
> +
> +    if (ss.resource_id == 0) {
> +        dpy_gfx_replace_surface(scanout->con, NULL);
> +        dpy_gl_scanout_disable(scanout->con);
> +        return;
> +    }
> +
> +    res = virtio_gpu_find_resource(g, ss.resource_id);
> +    CHECK(res, cmd);
> +
> +    if (!res->image) {
> +        pixman_format_code_t pformat;
> +        pformat = virtio_gpu_get_pixman_format(res->format);
> +        CHECK(pformat, cmd);
> +
> +        res->image = pixman_image_create_bits(pformat,
> +                                              res->width,
> +                                              res->height,
> +                                              NULL, 0);
> +        CHECK(res->image, cmd);
> +        pixman_image_ref(res->image);
> +    }
> +
> +    vb->enable = 1;
> +
> +    /* realloc the surface ptr */
> +    scanout->ds = qemu_create_displaysurface_pixman(res->image);
> +    dpy_gfx_replace_surface(scanout->con, NULL);
> +    dpy_gfx_replace_surface(scanout->con, scanout->ds);
> +    res->scanout_bitmask = ss.scanout_id;
> +}
> +
> +static void
> +rutabaga_cmd_submit_3d(VirtIOGPU *g,
> +                       struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct virtio_gpu_cmd_submit cs;
> +    struct rutabaga_command rutabaga_cmd = { 0 };
> +    g_autofree uint8_t *buf = NULL;
> +    size_t s;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(cs);
> +    trace_virtio_gpu_cmd_ctx_submit(cs.hdr.ctx_id, cs.size);
> +
> +    buf = g_new0(uint8_t, cs.size);
> +    s = iov_to_buf(cmd->elem.out_sg, cmd->elem.out_num,
> +                   sizeof(cs), buf, cs.size);
> +    CHECK(s == cs.size, cmd);
> +
> +    rutabaga_cmd.ctx_id = cs.hdr.ctx_id;
> +    rutabaga_cmd.cmd = buf;
> +    rutabaga_cmd.cmd_size = cs.size;
> +
> +    result = rutabaga_submit_command(vr->rutabaga, &rutabaga_cmd);
> +    CHECK(!result, cmd);
> +}
> +
> +static void
> +rutabaga_cmd_transfer_to_host_2d(VirtIOGPU *g,
> +                                 struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct rutabaga_transfer transfer = { 0 };
> +    struct virtio_gpu_transfer_to_host_2d t2d;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(t2d);
> +    trace_virtio_gpu_cmd_res_xfer_toh_2d(t2d.resource_id);
> +
> +    transfer.x = t2d.r.x;
> +    transfer.y = t2d.r.y;
> +    transfer.z = 0;
> +    transfer.w = t2d.r.width;
> +    transfer.h = t2d.r.height;
> +    transfer.d = 1;
> +
> +    result = rutabaga_resource_transfer_write(vr->rutabaga, 0, t2d.resource_id,
> +                                              &transfer);
> +    CHECK(!result, cmd);
> +}
> +
> +static void
> +rutabaga_cmd_transfer_to_host_3d(VirtIOGPU *g,
> +                                 struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct rutabaga_transfer transfer = { 0 };
> +    struct virtio_gpu_transfer_host_3d t3d;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(t3d);
> +    trace_virtio_gpu_cmd_res_xfer_toh_3d(t3d.resource_id);
> +
> +    transfer.x = t3d.box.x;
> +    transfer.y = t3d.box.y;
> +    transfer.z = t3d.box.z;
> +    transfer.w = t3d.box.w;
> +    transfer.h = t3d.box.h;
> +    transfer.d = t3d.box.d;
> +    transfer.level = t3d.level;
> +    transfer.stride = t3d.stride;
> +    transfer.layer_stride = t3d.layer_stride;
> +    transfer.offset = t3d.offset;
> +
> +    result = rutabaga_resource_transfer_write(vr->rutabaga, t3d.hdr.ctx_id,
> +                                              t3d.resource_id, &transfer);
> +    CHECK(!result, cmd);
> +}
> +
> +static void
> +rutabaga_cmd_transfer_from_host_3d(VirtIOGPU *g,
> +                                   struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct rutabaga_transfer transfer = { 0 };
> +    struct virtio_gpu_transfer_host_3d t3d;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(t3d);
> +    trace_virtio_gpu_cmd_res_xfer_fromh_3d(t3d.resource_id);
> +
> +    transfer.x = t3d.box.x;
> +    transfer.y = t3d.box.y;
> +    transfer.z = t3d.box.z;
> +    transfer.w = t3d.box.w;
> +    transfer.h = t3d.box.h;
> +    transfer.d = t3d.box.d;
> +    transfer.level = t3d.level;
> +    transfer.stride = t3d.stride;
> +    transfer.layer_stride = t3d.layer_stride;
> +    transfer.offset = t3d.offset;
> +
> +    result = rutabaga_resource_transfer_read(vr->rutabaga, t3d.hdr.ctx_id,
> +                                             t3d.resource_id, &transfer, NULL);
> +    CHECK(!result, cmd);
> +}
> +
> +static void
> +rutabaga_cmd_attach_backing(VirtIOGPU *g, struct virtio_gpu_ctrl_command *cmd)
> +{
> +    struct rutabaga_iovecs vecs = { 0 };
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_attach_backing att_rb;
> +    int ret;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(att_rb);
> +    trace_virtio_gpu_cmd_res_back_attach(att_rb.resource_id);
> +
> +    res = virtio_gpu_find_resource(g, att_rb.resource_id);
> +    CHECK(res, cmd);
> +    CHECK(!res->iov, cmd);
> +
> +    ret = virtio_gpu_create_mapping_iov(g, att_rb.nr_entries, sizeof(att_rb),
> +                                        cmd, NULL, &res->iov, &res->iov_cnt);
> +    CHECK(!ret, cmd);
> +
> +    vecs.iovecs = res->iov;
> +    vecs.num_iovecs = res->iov_cnt;
> +
> +    ret = rutabaga_resource_attach_backing(vr->rutabaga, att_rb.resource_id,
> +                                           &vecs);
> +    if (ret != 0) {
> +        virtio_gpu_cleanup_mapping(g, res);
> +    }
> +
> +    CHECK(!ret, cmd);
> +}
> +
> +static void
> +rutabaga_cmd_detach_backing(VirtIOGPU *g, struct virtio_gpu_ctrl_command *cmd)
> +{
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_detach_backing detach_rb;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(detach_rb);
> +    trace_virtio_gpu_cmd_res_back_detach(detach_rb.resource_id);
> +
> +    res = virtio_gpu_find_resource(g, detach_rb.resource_id);
> +    CHECK(res, cmd);
> +
> +    rutabaga_resource_detach_backing(vr->rutabaga,
> +                                     detach_rb.resource_id);
> +
> +    virtio_gpu_cleanup_mapping(g, res);
> +}
> +
> +static void
> +rutabaga_cmd_ctx_attach_resource(VirtIOGPU *g,
> +                                 struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct virtio_gpu_ctx_resource att_res;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(att_res);
> +    trace_virtio_gpu_cmd_ctx_res_attach(att_res.hdr.ctx_id,
> +                                        att_res.resource_id);
> +
> +    result = rutabaga_context_attach_resource(vr->rutabaga, att_res.hdr.ctx_id,
> +                                              att_res.resource_id);
> +    CHECK(!result, cmd);
> +}
> +
> +static void
> +rutabaga_cmd_ctx_detach_resource(VirtIOGPU *g,
> +                                 struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct virtio_gpu_ctx_resource det_res;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(det_res);
> +    trace_virtio_gpu_cmd_ctx_res_detach(det_res.hdr.ctx_id,
> +                                        det_res.resource_id);
> +
> +    result = rutabaga_context_detach_resource(vr->rutabaga, det_res.hdr.ctx_id,
> +                                              det_res.resource_id);
> +    CHECK(!result, cmd);
> +}
> +
> +static void
> +rutabaga_cmd_get_capset_info(VirtIOGPU *g, struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct virtio_gpu_get_capset_info info;
> +    struct virtio_gpu_resp_capset_info resp;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(info);
> +
> +    result = rutabaga_get_capset_info(vr->rutabaga, info.capset_index,
> +                                      &resp.capset_id, &resp.capset_max_version,
> +                                      &resp.capset_max_size);
> +    CHECK(!result, cmd);
> +
> +    resp.hdr.type = VIRTIO_GPU_RESP_OK_CAPSET_INFO;
> +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
> +}
> +
> +static void
> +rutabaga_cmd_get_capset(VirtIOGPU *g, struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    struct virtio_gpu_get_capset gc;
> +    struct virtio_gpu_resp_capset *resp;
> +    uint32_t capset_size, capset_version;
> +    uint32_t current_id, i;
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(gc);
> +    for (i = 0; i < vr->num_capsets; i++) {
> +        result = rutabaga_get_capset_info(vr->rutabaga, i,
> +                                          &current_id, &capset_version,
> +                                          &capset_size);
> +        CHECK(!result, cmd);
> +
> +        if (current_id == gc.capset_id) {
> +            break;
> +        }
> +    }
> +
> +    CHECK(i < vr->num_capsets, cmd);
> +
> +    resp = g_malloc0(sizeof(*resp) + capset_size);
> +    resp->hdr.type = VIRTIO_GPU_RESP_OK_CAPSET;
> +    rutabaga_get_capset(vr->rutabaga, gc.capset_id, gc.capset_version,
> +                        resp->capset_data, capset_size);
> +
> +    virtio_gpu_ctrl_response(g, cmd, &resp->hdr, sizeof(*resp) + capset_size);
> +    g_free(resp);
> +}
> +
> +static void
> +rutabaga_cmd_resource_create_blob(VirtIOGPU *g,
> +                                  struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int result;
> +    struct rutabaga_iovecs vecs = { 0 };
> +    g_autofree struct virtio_gpu_simple_resource *res = NULL;
> +    struct virtio_gpu_resource_create_blob cblob;
> +    struct rutabaga_create_blob rc_blob = { 0 };
> +
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(cblob);
> +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
> +
> +    CHECK(cblob.resource_id != 0, cmd);
> +
> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
> +
> +    res->resource_id = cblob.resource_id;
> +    res->blob_size = cblob.size;
> +
> +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
> +        result = virtio_gpu_create_mapping_iov(g, cblob.nr_entries,
> +                                               sizeof(cblob), cmd, &res->addrs,
> +                                               &res->iov, &res->iov_cnt);
> +        CHECK(!result, cmd);
> +    }
> +
> +    rc_blob.blob_id = cblob.blob_id;
> +    rc_blob.blob_mem = cblob.blob_mem;
> +    rc_blob.blob_flags = cblob.blob_flags;
> +    rc_blob.size = cblob.size;
> +
> +    vecs.iovecs = res->iov;
> +    vecs.num_iovecs = res->iov_cnt;
> +
> +    result = rutabaga_resource_create_blob(vr->rutabaga, cblob.hdr.ctx_id,
> +                                           cblob.resource_id, &rc_blob, &vecs,
> +                                           NULL);
> +
> +    if (result && cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
> +        virtio_gpu_cleanup_mapping(g, res);
> +    }
> +
> +    CHECK(!result, cmd);
> +
> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> +    res = NULL;
> +}
> +
> +static void
> +rutabaga_cmd_resource_map_blob(VirtIOGPU *g,
> +                               struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    uint32_t map_info = 0;
> +    uint32_t slot = 0;
> +    struct virtio_gpu_simple_resource *res;
> +    struct rutabaga_mapping mapping = { 0 };
> +    struct virtio_gpu_resource_map_blob mblob;
> +    struct virtio_gpu_resp_map_info resp = { 0 };
> +
> +    VirtIOGPUBase *vb = VIRTIO_GPU_BASE(g);
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(mblob);
> +
> +    CHECK(mblob.resource_id != 0, cmd);
> +
> +    res = virtio_gpu_find_resource(g, mblob.resource_id);
> +    CHECK(res, cmd);
> +
> +    result = rutabaga_resource_map_info(vr->rutabaga, mblob.resource_id,
> +                                        &map_info);
> +    CHECK(!result, cmd);
> +
> +    /*
> +     * RUTABAGA_MAP_ACCESS_* flags are not part of the virtio-gpu spec, but do
> +     * exist to potentially allow the hypervisor to restrict write access to
> +     * memory. QEMU does not need to use this functionality at the moment.
> +     */
> +    resp.map_info = map_info & RUTABAGA_MAP_CACHE_MASK;
> +
> +    result = rutabaga_resource_map(vr->rutabaga, mblob.resource_id, &mapping);
> +    CHECK(!result, cmd);
> +
> +    for (slot = 0; slot < MAX_SLOTS; slot++) {
> +        if (vr->memory_regions[slot].used) {
> +            continue;
> +        }
> +
> +        MemoryRegion *mr = &(vr->memory_regions[slot].mr);
> +        memory_region_init_ram_ptr(mr, OBJECT(vr), "blob", mapping.size,
> +                                   mapping.ptr);
> +        memory_region_add_subregion(&vb->hostmem, mblob.offset, mr);
> +        vr->memory_regions[slot].resource_id = mblob.resource_id;
> +        vr->memory_regions[slot].used = 1;
> +        break;
> +    }
> +
> +    if (slot >= MAX_SLOTS) {
> +        result = rutabaga_resource_unmap(vr->rutabaga, mblob.resource_id);
> +        CHECK(!result, cmd);
> +    }
> +
> +    CHECK(slot < MAX_SLOTS, cmd);
> +
> +    resp.hdr.type = VIRTIO_GPU_RESP_OK_MAP_INFO;
> +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
> +}
> +
> +static void
> +rutabaga_cmd_resource_unmap_blob(VirtIOGPU *g,
> +                                 struct virtio_gpu_ctrl_command *cmd)
> +{
> +    int32_t result;
> +    uint32_t slot = 0;
> +    struct virtio_gpu_simple_resource *res;
> +    struct virtio_gpu_resource_unmap_blob ublob;
> +
> +    VirtIOGPUBase *vb = VIRTIO_GPU_BASE(g);
> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
> +
> +    VIRTIO_GPU_FILL_CMD(ublob);
> +
> +    CHECK(ublob.resource_id != 0, cmd);
> +
> +    res = virtio_gpu_find_resource(g, ublob.resource_id);
> +    CHECK(res, cmd);
> +
> +    for (slot = 0; slot < MAX_SLOTS; slot++) {
> +        if (vr->memory_regions[slot].resource_id != ublob.resource_id) {
> +            continue;
> +        }
> +
> +        MemoryRegion *mr = &(vr->memory_regions[slot].mr);
> +        memory_region_del_subregion(&vb->hostmem, mr);
> +
> +        vr->memory_regions[slot].resource_id = 0;
> +        vr->memory_regions[slot].used = 0;
> +        break;
> +    }
> +
> +    CHECK(slot < MAX_SLOTS, cmd);
> +    result = rutabaga_resource_unmap(vr->rutabaga, res->resource_id);

Hi,

After the discussion with Xenia Ragiadakou regarding their patch for 
Venus, I found a bug present in the Venus implementation also affects 
Rutabaga.

The problem is that the memory region may not immediately go away with 
memory_region_del_subregion(), but it may be kept a bit after that. The 
memory region has a pointer to the mapped memory so the unmapping call 
that immediately follows will make it dangling.

Xenia raised a question whether the dangling pointer can be actually 
dereferenced and result in use-after-free, but the answer is 
unfortunately yes. For example, consider the following call chain:
kvm_cpu_exec -> address_space_rw -> address_space_write -> 
flatview_write -> flatview_write_continue

address_space_write() holds a RCU read lock so that the flatview it 
refers to will not go away during the operation even if it becomes 
obsolete and will be used for writes. It is possible that the obsolete 
flatview contains the memory region for the memory that is concurrently 
unmapped by virtio-gpu-rutabaga/virgl.  Note that the function can be 
called without holding BQL, and KVM actually does so.

Another case is address_space_map(). It acquires the reference to the 
memory with memory_region_ref() and expects it will be available until 
memory_region_unref() gets called with address_space_unmap().

In conclusion, both of Rutabaga and Virgl need to ensure to wait until 
all refrences to memory region will be gone before unmapping the 
underlying memory. The patch "[QEMU PATCH v5 07/13] softmmu/memory: 
enable automatic deallocation of memory regions" in the venus patch 
series is useful to know when that happens.

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 12:05:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 12:05:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605675.943243 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qivxL-0000mG-9O; Wed, 20 Sep 2023 12:05:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605675.943243; Wed, 20 Sep 2023 12:05:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qivxL-0000lK-5o; Wed, 20 Sep 2023 12:05:23 +0000
Received: by outflank-mailman (input) for mailman id 605675;
 Wed, 20 Sep 2023 12:05:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=0XE2=FE=ilande.co.uk=mark.cave-ayland@srs-se1.protection.inumbo.net>)
 id 1qivxI-0000j9-TN
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 12:05:21 +0000
Received: from mail.ilande.co.uk (mail.ilande.co.uk [2001:41c9:1:41f::167])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f7a1f2a0-57ad-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 14:05:19 +0200 (CEST)
Received: from [2a00:23c4:8baf:5f00:4f7d:f5b:6c8a:d0af]
 by mail.ilande.co.uk with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.92) (envelope-from <mark.cave-ayland@ilande.co.uk>)
 id 1qivwo-0003aW-E8; Wed, 20 Sep 2023 13:04:54 +0100
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f7a1f2a0-57ad-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=ilande.co.uk; s=20220518; h=Subject:Content-Transfer-Encoding:Content-Type:
	In-Reply-To:From:References:Cc:To:MIME-Version:Date:Message-ID:Sender:
	Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender
	:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
	List-Subscribe:List-Post:List-Owner:List-Archive;
	bh=bvzZ6YO3NfrwYDtoLLCFvff75aA96ccGIRXZpm71PHE=; b=QtmnVKnfAJNaeGa9iGH+gARGGX
	FoYNF6Kaf9eeh1Hju+/H2FZwosQEw68Hly0L82CwciV14aGefA9mm7ZQQ+ROmpE/zCe3Ri9xq30HA
	oUy4Ms/ORPvAyV6dyDwmtsSqi2Iw626BJu1GB68UAiOHpipmMcZDDVcKAhgX/YyaR6Wsup4LPkm31
	1GXdk2+4NVyGKg4FI5L3nh2ZT9P4EV3sBbZv/C+C7wHgx34bOSI+zfyxwl50PIS6oJtu7tX5/APub
	pqezB9GiE7MKMIGOIlUhDIElpMSu5ArDEgCz5zKNMHCjBKcu7D5YwHhbtyQylRiiL8YmxtGsj7JQc
	E+5ZMkqqXRaJYHczoq1WcwkSn2TZOkxLNpe3Kek5Dc1DqC5WA8/p9zxq/6e5Sn//2sJyvteiK301M
	dF6s0Kb/EEx2p7mA/156Cu/Optvifn5XJ0no/opSs832dS8PahSmUbp07OtwyR3KFSuYtQjjLY/qr
	pJP6vTSo/4p16MCngtTooqU7FHb89fHcojllY2IVicGP6Z8Uh6pjYgZGlUKK0JHszm5SwMae3+KwX
	nDaH5qLaksNXUS+2mEFoGtB3f9a6r4K7IOo19SHwX2H0ZZllAZHS9PK0Z/J0u/edwnyaX1KeX0Ikb
	+frU9InrDCCvBDkVFg7ACRXF2JkCGhT/Xb/5S8yRc=;
Message-ID: <3830bf8d-8c25-950c-f901-8d70dbfc06a6@ilande.co.uk>
Date: Wed, 20 Sep 2023 13:04:51 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
To: Akihiko Odaki <akihiko.odaki@gmail.com>,
 Gurchetan Singh <gurchetansingh@chromium.org>, qemu-devel@nongnu.org,
 Xenia Ragiadakou <xenia.ragiadakou@amd.com>
Cc: marcandre.lureau@redhat.com, ray.huang@amd.com, alex.bennee@linaro.org,
 shentey@gmail.com, hi@alyssa.is, ernunes@redhat.com,
 manos.pitsidianakis@linaro.org, philmd@linaro.org,
 Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 xen-devel@lists.xenproject.org, Albert Esteve <aesteve@redhat.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=c3=b6nig?= <christian.koenig@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>
References: <20230829003629.410-1-gurchetansingh@chromium.org>
 <20230829003629.410-7-gurchetansingh@chromium.org>
 <2620fca0-a5b4-49d0-bf91-fd359ee4999b@gmail.com>
Content-Language: en-US
From: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
In-Reply-To: <2620fca0-a5b4-49d0-bf91-fd359ee4999b@gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-SA-Exim-Connect-IP: 2a00:23c4:8baf:5f00:4f7d:f5b:6c8a:d0af
X-SA-Exim-Mail-From: mark.cave-ayland@ilande.co.uk
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on
	mail.default.ilande.bv.iomart.io
X-Spam-Level: 
X-Spam-Status: No, score=-2.8 required=5.0 tests=ALL_TRUSTED,BAYES_00,
	URIBL_BLOCKED,URIBL_SBL_A autolearn=no autolearn_force=no version=3.4.2
Subject: Re: [PATCH v13 6/9] gfxstream + rutabaga: add initial support for
 gfxstream
X-SA-Exim-Version: 4.2.1 (built Wed, 08 May 2019 21:11:16 +0000)
X-SA-Exim-Scanned: Yes (on mail.ilande.co.uk)

On 20/09/2023 12:42, Akihiko Odaki wrote:

> On 2023/08/29 9:36, Gurchetan Singh wrote:
>> This adds initial support for gfxstream and cross-domain.  Both
>> features rely on virtio-gpu blob resources and context types, which
>> are also implemented in this patch.
>>
>> gfxstream has a long and illustrious history in Android graphics
>> paravirtualization.  It has been powering graphics in the Android
>> Studio Emulator for more than a decade, which is the main developer
>> platform.
>>
>> Originally conceived by Jesse Hall, it was first known as "EmuGL" [a].
>> The key design characteristic was a 1:1 threading model and
>> auto-generation, which fit nicely with the OpenGLES spec.  It also
>> allowed easy layering with ANGLE on the host, which provides the GLES
>> implementations on Windows or MacOS enviroments.
>>
>> gfxstream has traditionally been maintained by a single engineer, and
>> between 2015 to 2021, the goldfish throne passed to Frank Yang.
>> Historians often remark this glorious reign ("pax gfxstreama" is the
>> academic term) was comparable to that of Augustus and both Queen
>> Elizabeths.  Just to name a few accomplishments in a resplendent
>> panoply: higher versions of GLES, address space graphics, snapshot
>> support and CTS compliant Vulkan [b].
>>
>> One major drawback was the use of out-of-tree goldfish drivers.
>> Android engineers didn't know much about DRM/KMS and especially TTM so
>> a simple guest to host pipe was conceived.
>>
>> Luckily, virtio-gpu 3D started to emerge in 2016 due to the work of
>> the Mesa/virglrenderer communities.  In 2018, the initial virtio-gpu
>> port of gfxstream was done by Cuttlefish enthusiast Alistair Delva.
>> It was a symbol compatible replacement of virglrenderer [c] and named
>> "AVDVirglrenderer".  This implementation forms the basis of the
>> current gfxstream host implementation still in use today.
>>
>> cross-domain support follows a similar arc.  Originally conceived by
>> Wayland aficionado David Reveman and crosvm enjoyer Zach Reizner in
>> 2018, it initially relied on the downstream "virtio-wl" device.
>>
>> In 2020 and 2021, virtio-gpu was extended to include blob resources
>> and multiple timelines by yours truly, features gfxstream/cross-domain
>> both require to function correctly.
>>
>> Right now, we stand at the precipice of a truly fantastic possibility:
>> the Android Emulator powered by upstream QEMU and upstream Linux
>> kernel.  gfxstream will then be packaged properfully, and app
>> developers can even fix gfxstream bugs on their own if they encounter
>> them.
>>
>> It's been quite the ride, my friends.  Where will gfxstream head next,
>> nobody really knows.  I wouldn't be surprised if it's around for
>> another decade, maintained by a new generation of Android graphics
>> enthusiasts.
>>
>> Technical details:
>>    - Very simple initial display integration: just used Pixman
>>    - Largely, 1:1 mapping of virtio-gpu hypercalls to rutabaga function
>>      calls
>>
>> Next steps for Android VMs:
>>    - The next step would be improving display integration and UI interfaces
>>      with the goal of the QEMU upstream graphics being in an emulator
>>      release [d].
>>
>> Next steps for Linux VMs for display virtualization:
>>    - For widespread distribution, someone needs to package Sommelier or the
>>      wayland-proxy-virtwl [e] ideally into Debian main. In addition, newer
>>      versions of the Linux kernel come with DRM_VIRTIO_GPU_KMS option,
>>      which allows disabling KMS hypercalls.  If anyone cares enough, it'll
>>      probably be possible to build a custom VM variant that uses this display
>>      virtualization strategy.
>>
>> [a] https://android-review.googlesource.com/c/platform/development/+/34470
>> [b] https://android-review.googlesource.com/q/topic:%22vulkan-hostconnection-start%22
>> [c] https://android-review.googlesource.com/c/device/generic/goldfish-opengl/+/761927
>> [d] https://developer.android.com/studio/releases/emulator
>> [e] https://github.com/talex5/wayland-proxy-virtwl
>>
>> Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org>
>> Tested-by: Alyssa Ross <hi@alyssa.is>
>> Tested-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
>> Tested-by: Akihiko Odaki <akihiko.odaki@daynix.com>
>> Reviewed-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
>> Reviewed-by: Antonio Caggiano <quic_acaggian@quicinc.com>
>> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
>> ---
>>   hw/display/virtio-gpu-pci-rutabaga.c |   47 ++
>>   hw/display/virtio-gpu-rutabaga.c     | 1119 ++++++++++++++++++++++++++
>>   hw/display/virtio-vga-rutabaga.c     |   50 ++
>>   3 files changed, 1216 insertions(+)
>>   create mode 100644 hw/display/virtio-gpu-pci-rutabaga.c
>>   create mode 100644 hw/display/virtio-gpu-rutabaga.c
>>   create mode 100644 hw/display/virtio-vga-rutabaga.c
>>
>> diff --git a/hw/display/virtio-gpu-pci-rutabaga.c 
>> b/hw/display/virtio-gpu-pci-rutabaga.c
>> new file mode 100644
>> index 0000000000..c96729e198
>> --- /dev/null
>> +++ b/hw/display/virtio-gpu-pci-rutabaga.c
>> @@ -0,0 +1,47 @@
>> +/* SPDX-License-Identifier: GPL-2.0-or-later */
>> +
>> +#include "qemu/osdep.h"
>> +#include "qapi/error.h"
>> +#include "qemu/module.h"
>> +#include "hw/pci/pci.h"
>> +#include "hw/qdev-properties.h"
>> +#include "hw/virtio/virtio.h"
>> +#include "hw/virtio/virtio-bus.h"
>> +#include "hw/virtio/virtio-gpu-pci.h"
>> +#include "qom/object.h"
>> +
>> +#define TYPE_VIRTIO_GPU_RUTABAGA_PCI "virtio-gpu-rutabaga-pci"
>> +OBJECT_DECLARE_SIMPLE_TYPE(VirtIOGPURutabagaPCI, VIRTIO_GPU_RUTABAGA_PCI)
>> +
>> +struct VirtIOGPURutabagaPCI {
>> +    VirtIOGPUPCIBase parent_obj;
>> +
>> +    VirtIOGPURutabaga vdev;
>> +};
>> +
>> +static void virtio_gpu_rutabaga_initfn(Object *obj)
>> +{
>> +    VirtIOGPURutabagaPCI *dev = VIRTIO_GPU_RUTABAGA_PCI(obj);
>> +
>> +    virtio_instance_init_common(obj, &dev->vdev, sizeof(dev->vdev),
>> +                                TYPE_VIRTIO_GPU_RUTABAGA);
>> +    VIRTIO_GPU_PCI_BASE(obj)->vgpu = VIRTIO_GPU_BASE(&dev->vdev);
>> +}
>> +
>> +static const TypeInfo virtio_gpu_rutabaga_pci_info[] = {
>> +    {
>> +        .name = TYPE_VIRTIO_GPU_RUTABAGA_PCI,
>> +        .parent = TYPE_VIRTIO_GPU_PCI_BASE,
>> +        .instance_size = sizeof(VirtIOGPURutabagaPCI),
>> +        .instance_init = virtio_gpu_rutabaga_initfn,
>> +        .interfaces = (InterfaceInfo[]) {
>> +            { INTERFACE_CONVENTIONAL_PCI_DEVICE },
>> +        }
>> +    },
>> +};
>> +
>> +DEFINE_TYPES(virtio_gpu_rutabaga_pci_info)
>> +
>> +module_obj(TYPE_VIRTIO_GPU_RUTABAGA_PCI);
>> +module_kconfig(VIRTIO_PCI);
>> +module_dep("hw-display-virtio-gpu-pci");
>> diff --git a/hw/display/virtio-gpu-rutabaga.c b/hw/display/virtio-gpu-rutabaga.c
>> new file mode 100644
>> index 0000000000..a105e06214
>> --- /dev/null
>> +++ b/hw/display/virtio-gpu-rutabaga.c
>> @@ -0,0 +1,1119 @@
>> +/* SPDX-License-Identifier: GPL-2.0-or-later */
>> +
>> +#include "qemu/osdep.h"
>> +#include "qapi/error.h"
>> +#include "qemu/error-report.h"
>> +#include "qemu/iov.h"
>> +#include "trace.h"
>> +#include "hw/virtio/virtio.h"
>> +#include "hw/virtio/virtio-gpu.h"
>> +#include "hw/virtio/virtio-gpu-pixman.h"
>> +#include "hw/virtio/virtio-iommu.h"
>> +
>> +#include <glib/gmem.h>
>> +#include <rutabaga_gfx/rutabaga_gfx_ffi.h>
>> +
>> +#define CHECK(condition, cmd)                                                 \
>> +    do {                                                                      \
>> +        if (!(condition)) {                                                   \
>> +            error_report("CHECK failed in %s() %s:" "%d", __func__,           \
>> +                         __FILE__, __LINE__);                                 \
>> +            (cmd)->error = VIRTIO_GPU_RESP_ERR_UNSPEC;                        \
>> +            return;                                                           \
>> +       }                                                                      \
>> +    } while (0)
>> +
>> +/*
>> + * This is the size of the char array in struct sock_addr_un. No Wayland socket
>> + * can be created with a path longer than this, including the null terminator.
>> + */
>> +#define UNIX_PATH_MAX sizeof((struct sockaddr_un) {} .sun_path)
>> +
>> +struct rutabaga_aio_data {
>> +    struct VirtIOGPURutabaga *vr;
>> +    struct rutabaga_fence fence;
>> +};
>> +
>> +static void
>> +virtio_gpu_rutabaga_update_cursor(VirtIOGPU *g, struct virtio_gpu_scanout *s,
>> +                                  uint32_t resource_id)
>> +{
>> +    struct virtio_gpu_simple_resource *res;
>> +    struct rutabaga_transfer transfer = { 0 };
>> +    struct iovec transfer_iovec;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    res = virtio_gpu_find_resource(g, resource_id);
>> +    if (!res) {
>> +        return;
>> +    }
>> +
>> +    if (res->width != s->current_cursor->width ||
>> +        res->height != s->current_cursor->height) {
>> +        return;
>> +    }
>> +
>> +    transfer.x = 0;
>> +    transfer.y = 0;
>> +    transfer.z = 0;
>> +    transfer.w = res->width;
>> +    transfer.h = res->height;
>> +    transfer.d = 1;
>> +
>> +    transfer_iovec.iov_base = s->current_cursor->data;
>> +    transfer_iovec.iov_len = res->width * res->height * 4;
>> +
>> +    rutabaga_resource_transfer_read(vr->rutabaga, 0,
>> +                                    resource_id, &transfer,
>> +                                    &transfer_iovec);
>> +}
>> +
>> +static void
>> +virtio_gpu_rutabaga_gl_flushed(VirtIOGPUBase *b)
>> +{
>> +    VirtIOGPU *g = VIRTIO_GPU(b);
>> +    virtio_gpu_process_cmdq(g);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_create_resource_2d(VirtIOGPU *g,
>> +                                struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct rutabaga_create_3d rc_3d = { 0 };
>> +    struct virtio_gpu_simple_resource *res;
>> +    struct virtio_gpu_resource_create_2d c2d;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(c2d);
>> +    trace_virtio_gpu_cmd_res_create_2d(c2d.resource_id, c2d.format,
>> +                                       c2d.width, c2d.height);
>> +
>> +    rc_3d.target = 2;
>> +    rc_3d.format = c2d.format;
>> +    rc_3d.bind = (1 << 1);
>> +    rc_3d.width = c2d.width;
>> +    rc_3d.height = c2d.height;
>> +    rc_3d.depth = 1;
>> +    rc_3d.array_size = 1;
>> +    rc_3d.last_level = 0;
>> +    rc_3d.nr_samples = 0;
>> +    rc_3d.flags = VIRTIO_GPU_RESOURCE_FLAG_Y_0_TOP;
>> +
>> +    result = rutabaga_resource_create_3d(vr->rutabaga, c2d.resource_id, &rc_3d);
>> +    CHECK(!result, cmd);
>> +
>> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
>> +    res->width = c2d.width;
>> +    res->height = c2d.height;
>> +    res->format = c2d.format;
>> +    res->resource_id = c2d.resource_id;
>> +
>> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_create_resource_3d(VirtIOGPU *g,
>> +                                struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct rutabaga_create_3d rc_3d = { 0 };
>> +    struct virtio_gpu_simple_resource *res;
>> +    struct virtio_gpu_resource_create_3d c3d;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(c3d);
>> +
>> +    trace_virtio_gpu_cmd_res_create_3d(c3d.resource_id, c3d.format,
>> +                                       c3d.width, c3d.height, c3d.depth);
>> +
>> +    rc_3d.target = c3d.target;
>> +    rc_3d.format = c3d.format;
>> +    rc_3d.bind = c3d.bind;
>> +    rc_3d.width = c3d.width;
>> +    rc_3d.height = c3d.height;
>> +    rc_3d.depth = c3d.depth;
>> +    rc_3d.array_size = c3d.array_size;
>> +    rc_3d.last_level = c3d.last_level;
>> +    rc_3d.nr_samples = c3d.nr_samples;
>> +    rc_3d.flags = c3d.flags;
>> +
>> +    result = rutabaga_resource_create_3d(vr->rutabaga, c3d.resource_id, &rc_3d);
>> +    CHECK(!result, cmd);
>> +
>> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
>> +    res->width = c3d.width;
>> +    res->height = c3d.height;
>> +    res->format = c3d.format;
>> +    res->resource_id = c3d.resource_id;
>> +
>> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_resource_unref(VirtIOGPU *g,
>> +                            struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct virtio_gpu_simple_resource *res;
>> +    struct virtio_gpu_resource_unref unref;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(unref);
>> +
>> +    trace_virtio_gpu_cmd_res_unref(unref.resource_id);
>> +
>> +    res = virtio_gpu_find_resource(g, unref.resource_id);
>> +    CHECK(res, cmd);
>> +
>> +    result = rutabaga_resource_unref(vr->rutabaga, unref.resource_id);
>> +    CHECK(!result, cmd);
>> +
>> +    if (res->image) {
>> +        pixman_image_unref(res->image);
>> +    }
>> +
>> +    QTAILQ_REMOVE(&g->reslist, res, next);
>> +    g_free(res);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_context_create(VirtIOGPU *g,
>> +                            struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct virtio_gpu_ctx_create cc;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(cc);
>> +    trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
>> +                                    cc.debug_name);
>> +
>> +    result = rutabaga_context_create(vr->rutabaga, cc.hdr.ctx_id,
>> +                                     cc.context_init, cc.debug_name, cc.nlen);
>> +    CHECK(!result, cmd);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_context_destroy(VirtIOGPU *g,
>> +                             struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct virtio_gpu_ctx_destroy cd;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(cd);
>> +    trace_virtio_gpu_cmd_ctx_destroy(cd.hdr.ctx_id);
>> +
>> +    result = rutabaga_context_destroy(vr->rutabaga, cd.hdr.ctx_id);
>> +    CHECK(!result, cmd);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_resource_flush(VirtIOGPU *g, struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result, i;
>> +    struct virtio_gpu_scanout *scanout = NULL;
>> +    struct virtio_gpu_simple_resource *res;
>> +    struct rutabaga_transfer transfer = { 0 };
>> +    struct iovec transfer_iovec;
>> +    struct virtio_gpu_resource_flush rf;
>> +    bool found = false;
>> +
>> +    VirtIOGPUBase *vb = VIRTIO_GPU_BASE(g);
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +    if (vr->headless) {
>> +        return;
>> +    }
>> +
>> +    VIRTIO_GPU_FILL_CMD(rf);
>> +    trace_virtio_gpu_cmd_res_flush(rf.resource_id,
>> +                                   rf.r.width, rf.r.height, rf.r.x, rf.r.y);
>> +
>> +    res = virtio_gpu_find_resource(g, rf.resource_id);
>> +    CHECK(res, cmd);
>> +
>> +    for (i = 0; i < vb->conf.max_outputs; i++) {
>> +        scanout = &vb->scanout[i];
>> +        if (i == res->scanout_bitmask) {
>> +            found = true;
>> +            break;
>> +        }
>> +    }
>> +
>> +    if (!found) {
>> +        return;
>> +    }
>> +
>> +    transfer.x = 0;
>> +    transfer.y = 0;
>> +    transfer.z = 0;
>> +    transfer.w = res->width;
>> +    transfer.h = res->height;
>> +    transfer.d = 1;
>> +
>> +    transfer_iovec.iov_base = pixman_image_get_data(res->image);
>> +    transfer_iovec.iov_len = res->width * res->height * 4;
>> +
>> +    result = rutabaga_resource_transfer_read(vr->rutabaga, 0,
>> +                                             rf.resource_id, &transfer,
>> +                                             &transfer_iovec);
>> +    CHECK(!result, cmd);
>> +    dpy_gfx_update_full(scanout->con);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_set_scanout(VirtIOGPU *g, struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    struct virtio_gpu_simple_resource *res;
>> +    struct virtio_gpu_scanout *scanout = NULL;
>> +    struct virtio_gpu_set_scanout ss;
>> +
>> +    VirtIOGPUBase *vb = VIRTIO_GPU_BASE(g);
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +    if (vr->headless) {
>> +        return;
>> +    }
>> +
>> +    VIRTIO_GPU_FILL_CMD(ss);
>> +    trace_virtio_gpu_cmd_set_scanout(ss.scanout_id, ss.resource_id,
>> +                                     ss.r.width, ss.r.height, ss.r.x, ss.r.y);
>> +
>> +    CHECK(ss.scanout_id < VIRTIO_GPU_MAX_SCANOUTS, cmd);
>> +    scanout = &vb->scanout[ss.scanout_id];
>> +
>> +    if (ss.resource_id == 0) {
>> +        dpy_gfx_replace_surface(scanout->con, NULL);
>> +        dpy_gl_scanout_disable(scanout->con);
>> +        return;
>> +    }
>> +
>> +    res = virtio_gpu_find_resource(g, ss.resource_id);
>> +    CHECK(res, cmd);
>> +
>> +    if (!res->image) {
>> +        pixman_format_code_t pformat;
>> +        pformat = virtio_gpu_get_pixman_format(res->format);
>> +        CHECK(pformat, cmd);
>> +
>> +        res->image = pixman_image_create_bits(pformat,
>> +                                              res->width,
>> +                                              res->height,
>> +                                              NULL, 0);
>> +        CHECK(res->image, cmd);
>> +        pixman_image_ref(res->image);
>> +    }
>> +
>> +    vb->enable = 1;
>> +
>> +    /* realloc the surface ptr */
>> +    scanout->ds = qemu_create_displaysurface_pixman(res->image);
>> +    dpy_gfx_replace_surface(scanout->con, NULL);
>> +    dpy_gfx_replace_surface(scanout->con, scanout->ds);
>> +    res->scanout_bitmask = ss.scanout_id;
>> +}
>> +
>> +static void
>> +rutabaga_cmd_submit_3d(VirtIOGPU *g,
>> +                       struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct virtio_gpu_cmd_submit cs;
>> +    struct rutabaga_command rutabaga_cmd = { 0 };
>> +    g_autofree uint8_t *buf = NULL;
>> +    size_t s;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(cs);
>> +    trace_virtio_gpu_cmd_ctx_submit(cs.hdr.ctx_id, cs.size);
>> +
>> +    buf = g_new0(uint8_t, cs.size);
>> +    s = iov_to_buf(cmd->elem.out_sg, cmd->elem.out_num,
>> +                   sizeof(cs), buf, cs.size);
>> +    CHECK(s == cs.size, cmd);
>> +
>> +    rutabaga_cmd.ctx_id = cs.hdr.ctx_id;
>> +    rutabaga_cmd.cmd = buf;
>> +    rutabaga_cmd.cmd_size = cs.size;
>> +
>> +    result = rutabaga_submit_command(vr->rutabaga, &rutabaga_cmd);
>> +    CHECK(!result, cmd);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_transfer_to_host_2d(VirtIOGPU *g,
>> +                                 struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct rutabaga_transfer transfer = { 0 };
>> +    struct virtio_gpu_transfer_to_host_2d t2d;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(t2d);
>> +    trace_virtio_gpu_cmd_res_xfer_toh_2d(t2d.resource_id);
>> +
>> +    transfer.x = t2d.r.x;
>> +    transfer.y = t2d.r.y;
>> +    transfer.z = 0;
>> +    transfer.w = t2d.r.width;
>> +    transfer.h = t2d.r.height;
>> +    transfer.d = 1;
>> +
>> +    result = rutabaga_resource_transfer_write(vr->rutabaga, 0, t2d.resource_id,
>> +                                              &transfer);
>> +    CHECK(!result, cmd);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_transfer_to_host_3d(VirtIOGPU *g,
>> +                                 struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct rutabaga_transfer transfer = { 0 };
>> +    struct virtio_gpu_transfer_host_3d t3d;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(t3d);
>> +    trace_virtio_gpu_cmd_res_xfer_toh_3d(t3d.resource_id);
>> +
>> +    transfer.x = t3d.box.x;
>> +    transfer.y = t3d.box.y;
>> +    transfer.z = t3d.box.z;
>> +    transfer.w = t3d.box.w;
>> +    transfer.h = t3d.box.h;
>> +    transfer.d = t3d.box.d;
>> +    transfer.level = t3d.level;
>> +    transfer.stride = t3d.stride;
>> +    transfer.layer_stride = t3d.layer_stride;
>> +    transfer.offset = t3d.offset;
>> +
>> +    result = rutabaga_resource_transfer_write(vr->rutabaga, t3d.hdr.ctx_id,
>> +                                              t3d.resource_id, &transfer);
>> +    CHECK(!result, cmd);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_transfer_from_host_3d(VirtIOGPU *g,
>> +                                   struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct rutabaga_transfer transfer = { 0 };
>> +    struct virtio_gpu_transfer_host_3d t3d;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(t3d);
>> +    trace_virtio_gpu_cmd_res_xfer_fromh_3d(t3d.resource_id);
>> +
>> +    transfer.x = t3d.box.x;
>> +    transfer.y = t3d.box.y;
>> +    transfer.z = t3d.box.z;
>> +    transfer.w = t3d.box.w;
>> +    transfer.h = t3d.box.h;
>> +    transfer.d = t3d.box.d;
>> +    transfer.level = t3d.level;
>> +    transfer.stride = t3d.stride;
>> +    transfer.layer_stride = t3d.layer_stride;
>> +    transfer.offset = t3d.offset;
>> +
>> +    result = rutabaga_resource_transfer_read(vr->rutabaga, t3d.hdr.ctx_id,
>> +                                             t3d.resource_id, &transfer, NULL);
>> +    CHECK(!result, cmd);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_attach_backing(VirtIOGPU *g, struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    struct rutabaga_iovecs vecs = { 0 };
>> +    struct virtio_gpu_simple_resource *res;
>> +    struct virtio_gpu_resource_attach_backing att_rb;
>> +    int ret;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(att_rb);
>> +    trace_virtio_gpu_cmd_res_back_attach(att_rb.resource_id);
>> +
>> +    res = virtio_gpu_find_resource(g, att_rb.resource_id);
>> +    CHECK(res, cmd);
>> +    CHECK(!res->iov, cmd);
>> +
>> +    ret = virtio_gpu_create_mapping_iov(g, att_rb.nr_entries, sizeof(att_rb),
>> +                                        cmd, NULL, &res->iov, &res->iov_cnt);
>> +    CHECK(!ret, cmd);
>> +
>> +    vecs.iovecs = res->iov;
>> +    vecs.num_iovecs = res->iov_cnt;
>> +
>> +    ret = rutabaga_resource_attach_backing(vr->rutabaga, att_rb.resource_id,
>> +                                           &vecs);
>> +    if (ret != 0) {
>> +        virtio_gpu_cleanup_mapping(g, res);
>> +    }
>> +
>> +    CHECK(!ret, cmd);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_detach_backing(VirtIOGPU *g, struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    struct virtio_gpu_simple_resource *res;
>> +    struct virtio_gpu_resource_detach_backing detach_rb;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(detach_rb);
>> +    trace_virtio_gpu_cmd_res_back_detach(detach_rb.resource_id);
>> +
>> +    res = virtio_gpu_find_resource(g, detach_rb.resource_id);
>> +    CHECK(res, cmd);
>> +
>> +    rutabaga_resource_detach_backing(vr->rutabaga,
>> +                                     detach_rb.resource_id);
>> +
>> +    virtio_gpu_cleanup_mapping(g, res);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_ctx_attach_resource(VirtIOGPU *g,
>> +                                 struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct virtio_gpu_ctx_resource att_res;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(att_res);
>> +    trace_virtio_gpu_cmd_ctx_res_attach(att_res.hdr.ctx_id,
>> +                                        att_res.resource_id);
>> +
>> +    result = rutabaga_context_attach_resource(vr->rutabaga, att_res.hdr.ctx_id,
>> +                                              att_res.resource_id);
>> +    CHECK(!result, cmd);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_ctx_detach_resource(VirtIOGPU *g,
>> +                                 struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct virtio_gpu_ctx_resource det_res;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(det_res);
>> +    trace_virtio_gpu_cmd_ctx_res_detach(det_res.hdr.ctx_id,
>> +                                        det_res.resource_id);
>> +
>> +    result = rutabaga_context_detach_resource(vr->rutabaga, det_res.hdr.ctx_id,
>> +                                              det_res.resource_id);
>> +    CHECK(!result, cmd);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_get_capset_info(VirtIOGPU *g, struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct virtio_gpu_get_capset_info info;
>> +    struct virtio_gpu_resp_capset_info resp;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(info);
>> +
>> +    result = rutabaga_get_capset_info(vr->rutabaga, info.capset_index,
>> +                                      &resp.capset_id, &resp.capset_max_version,
>> +                                      &resp.capset_max_size);
>> +    CHECK(!result, cmd);
>> +
>> +    resp.hdr.type = VIRTIO_GPU_RESP_OK_CAPSET_INFO;
>> +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
>> +}
>> +
>> +static void
>> +rutabaga_cmd_get_capset(VirtIOGPU *g, struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    struct virtio_gpu_get_capset gc;
>> +    struct virtio_gpu_resp_capset *resp;
>> +    uint32_t capset_size, capset_version;
>> +    uint32_t current_id, i;
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(gc);
>> +    for (i = 0; i < vr->num_capsets; i++) {
>> +        result = rutabaga_get_capset_info(vr->rutabaga, i,
>> +                                          &current_id, &capset_version,
>> +                                          &capset_size);
>> +        CHECK(!result, cmd);
>> +
>> +        if (current_id == gc.capset_id) {
>> +            break;
>> +        }
>> +    }
>> +
>> +    CHECK(i < vr->num_capsets, cmd);
>> +
>> +    resp = g_malloc0(sizeof(*resp) + capset_size);
>> +    resp->hdr.type = VIRTIO_GPU_RESP_OK_CAPSET;
>> +    rutabaga_get_capset(vr->rutabaga, gc.capset_id, gc.capset_version,
>> +                        resp->capset_data, capset_size);
>> +
>> +    virtio_gpu_ctrl_response(g, cmd, &resp->hdr, sizeof(*resp) + capset_size);
>> +    g_free(resp);
>> +}
>> +
>> +static void
>> +rutabaga_cmd_resource_create_blob(VirtIOGPU *g,
>> +                                  struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int result;
>> +    struct rutabaga_iovecs vecs = { 0 };
>> +    g_autofree struct virtio_gpu_simple_resource *res = NULL;
>> +    struct virtio_gpu_resource_create_blob cblob;
>> +    struct rutabaga_create_blob rc_blob = { 0 };
>> +
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(cblob);
>> +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id, cblob.size);
>> +
>> +    CHECK(cblob.resource_id != 0, cmd);
>> +
>> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
>> +
>> +    res->resource_id = cblob.resource_id;
>> +    res->blob_size = cblob.size;
>> +
>> +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
>> +        result = virtio_gpu_create_mapping_iov(g, cblob.nr_entries,
>> +                                               sizeof(cblob), cmd, &res->addrs,
>> +                                               &res->iov, &res->iov_cnt);
>> +        CHECK(!result, cmd);
>> +    }
>> +
>> +    rc_blob.blob_id = cblob.blob_id;
>> +    rc_blob.blob_mem = cblob.blob_mem;
>> +    rc_blob.blob_flags = cblob.blob_flags;
>> +    rc_blob.size = cblob.size;
>> +
>> +    vecs.iovecs = res->iov;
>> +    vecs.num_iovecs = res->iov_cnt;
>> +
>> +    result = rutabaga_resource_create_blob(vr->rutabaga, cblob.hdr.ctx_id,
>> +                                           cblob.resource_id, &rc_blob, &vecs,
>> +                                           NULL);
>> +
>> +    if (result && cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
>> +        virtio_gpu_cleanup_mapping(g, res);
>> +    }
>> +
>> +    CHECK(!result, cmd);
>> +
>> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
>> +    res = NULL;
>> +}
>> +
>> +static void
>> +rutabaga_cmd_resource_map_blob(VirtIOGPU *g,
>> +                               struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    uint32_t map_info = 0;
>> +    uint32_t slot = 0;
>> +    struct virtio_gpu_simple_resource *res;
>> +    struct rutabaga_mapping mapping = { 0 };
>> +    struct virtio_gpu_resource_map_blob mblob;
>> +    struct virtio_gpu_resp_map_info resp = { 0 };
>> +
>> +    VirtIOGPUBase *vb = VIRTIO_GPU_BASE(g);
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(mblob);
>> +
>> +    CHECK(mblob.resource_id != 0, cmd);
>> +
>> +    res = virtio_gpu_find_resource(g, mblob.resource_id);
>> +    CHECK(res, cmd);
>> +
>> +    result = rutabaga_resource_map_info(vr->rutabaga, mblob.resource_id,
>> +                                        &map_info);
>> +    CHECK(!result, cmd);
>> +
>> +    /*
>> +     * RUTABAGA_MAP_ACCESS_* flags are not part of the virtio-gpu spec, but do
>> +     * exist to potentially allow the hypervisor to restrict write access to
>> +     * memory. QEMU does not need to use this functionality at the moment.
>> +     */
>> +    resp.map_info = map_info & RUTABAGA_MAP_CACHE_MASK;
>> +
>> +    result = rutabaga_resource_map(vr->rutabaga, mblob.resource_id, &mapping);
>> +    CHECK(!result, cmd);
>> +
>> +    for (slot = 0; slot < MAX_SLOTS; slot++) {
>> +        if (vr->memory_regions[slot].used) {
>> +            continue;
>> +        }
>> +
>> +        MemoryRegion *mr = &(vr->memory_regions[slot].mr);
>> +        memory_region_init_ram_ptr(mr, OBJECT(vr), "blob", mapping.size,
>> +                                   mapping.ptr);
>> +        memory_region_add_subregion(&vb->hostmem, mblob.offset, mr);
>> +        vr->memory_regions[slot].resource_id = mblob.resource_id;
>> +        vr->memory_regions[slot].used = 1;
>> +        break;
>> +    }
>> +
>> +    if (slot >= MAX_SLOTS) {
>> +        result = rutabaga_resource_unmap(vr->rutabaga, mblob.resource_id);
>> +        CHECK(!result, cmd);
>> +    }
>> +
>> +    CHECK(slot < MAX_SLOTS, cmd);
>> +
>> +    resp.hdr.type = VIRTIO_GPU_RESP_OK_MAP_INFO;
>> +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
>> +}
>> +
>> +static void
>> +rutabaga_cmd_resource_unmap_blob(VirtIOGPU *g,
>> +                                 struct virtio_gpu_ctrl_command *cmd)
>> +{
>> +    int32_t result;
>> +    uint32_t slot = 0;
>> +    struct virtio_gpu_simple_resource *res;
>> +    struct virtio_gpu_resource_unmap_blob ublob;
>> +
>> +    VirtIOGPUBase *vb = VIRTIO_GPU_BASE(g);
>> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>> +
>> +    VIRTIO_GPU_FILL_CMD(ublob);
>> +
>> +    CHECK(ublob.resource_id != 0, cmd);
>> +
>> +    res = virtio_gpu_find_resource(g, ublob.resource_id);
>> +    CHECK(res, cmd);
>> +
>> +    for (slot = 0; slot < MAX_SLOTS; slot++) {
>> +        if (vr->memory_regions[slot].resource_id != ublob.resource_id) {
>> +            continue;
>> +        }
>> +
>> +        MemoryRegion *mr = &(vr->memory_regions[slot].mr);
>> +        memory_region_del_subregion(&vb->hostmem, mr);
>> +
>> +        vr->memory_regions[slot].resource_id = 0;
>> +        vr->memory_regions[slot].used = 0;
>> +        break;
>> +    }
>> +
>> +    CHECK(slot < MAX_SLOTS, cmd);
>> +    result = rutabaga_resource_unmap(vr->rutabaga, res->resource_id);
> 
> Hi,
> 
> After the discussion with Xenia Ragiadakou regarding their patch for Venus, I found a 
> bug present in the Venus implementation also affects Rutabaga.
> 
> The problem is that the memory region may not immediately go away with 
> memory_region_del_subregion(), but it may be kept a bit after that. The memory region 
> has a pointer to the mapped memory so the unmapping call that immediately follows 
> will make it dangling.
> 
> Xenia raised a question whether the dangling pointer can be actually dereferenced and 
> result in use-after-free, but the answer is unfortunately yes. For example, consider 
> the following call chain:
> kvm_cpu_exec -> address_space_rw -> address_space_write -> flatview_write -> 
> flatview_write_continue
> 
> address_space_write() holds a RCU read lock so that the flatview it refers to will 
> not go away during the operation even if it becomes obsolete and will be used for 
> writes. It is possible that the obsolete flatview contains the memory region for the 
> memory that is concurrently unmapped by virtio-gpu-rutabaga/virgl.  Note that the 
> function can be called without holding BQL, and KVM actually does so.
> 
> Another case is address_space_map(). It acquires the reference to the memory with 
> memory_region_ref() and expects it will be available until memory_region_unref() gets 
> called with address_space_unmap().
> 
> In conclusion, both of Rutabaga and Virgl need to ensure to wait until all refrences 
> to memory region will be gone before unmapping the underlying memory. The patch 
> "[QEMU PATCH v5 07/13] softmmu/memory: enable automatic deallocation of memory 
> regions" in the venus patch series is useful to know when that happens.

FWIW this sounds exactly the same as the issue I had with unmapping ioports in commit 
690705ca0b ("softmmu/ioport.c: make MemoryRegionPortioList owner of portio_list 
MemoryRegions").

The solution in that commit is to assign the MemoryRegion reference to a new QOM 
object using memory_region_init(), but then re-parent the MR back onto its original 
device owner (so the QOM tree in "info qom-tree" remains unchanged). This means that 
the new QOM object receives the unref notification from the flatview instead of the 
MemoryRegion, which then manually unmaps the MemoryRegion from the device when it is 
safe.


ATB,

Mark.



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 12:06:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 12:06:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605683.943253 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qivyO-0001P3-P4; Wed, 20 Sep 2023 12:06:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605683.943253; Wed, 20 Sep 2023 12:06:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qivyO-0001Ow-Kt; Wed, 20 Sep 2023 12:06:28 +0000
Received: by outflank-mailman (input) for mailman id 605683;
 Wed, 20 Sep 2023 12:06:27 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qivyN-0001Ol-5t
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 12:06:27 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qivyL-0004P5-QS; Wed, 20 Sep 2023 12:06:25 +0000
Received: from 54-240-197-238.amazon.com ([54.240.197.238]
 helo=[10.95.133.176]) by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qivyL-0003FI-Gb; Wed, 20 Sep 2023 12:06:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=eCsbxTY3f5F7baMJhPv5gpN5XXwgxiGsMcAKpBW6t0k=; b=H40eOxfJofH4VzsfdfzaOVQnhR
	xigR/Hu7ez26usDRNE5nWc8+itO1HCayOTlPEZK1sDStfboh5lbOVib/G+LeSQfkeiYBJmw9bQg1Y
	U8Yp6cUjyXAXXrhFUGQ6gMZv501+TwbyCbwEpFX7t/JzpTNtkMyxf9+ikCZ3JYthkaqg=;
Message-ID: <55d92655-6fd8-430a-8b16-3f56693def9c@xen.org>
Date: Wed, 20 Sep 2023 13:06:23 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: xl dmesg buffer too small for Xen 4.18?
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Chuck Zmudzinski <brchuckz@netscape.net>
References: <b20bdc7e-4c07-4bde-b206-4142310211d4.ref@netscape.net>
 <b20bdc7e-4c07-4bde-b206-4142310211d4@netscape.net>
 <9baf6bec-49c6-474b-a5e3-5f0473aaffc7@netscape.net>
 <640f5a9d-913e-494b-b2c6-c9b3694f7cd3@xen.org>
 <ZQlHj5rjMaYj8Z4e@MacBookPdeRoger>
 <41a2cdf9-8fd1-418d-abc9-1fe4f3fd8b5e@xen.org>
 <232644f5-b0ad-414f-a4b5-03724f5ac053@netscape.net>
 <f40ce805-b6b7-46c5-87b2-3fe8c331072d@xen.org>
 <62c98f14-1559-16c9-f070-e3e6112a6dd4@suse.com>
 <ZQnH_mbXgiqLFX6T@MacBookPdeRoger>
From: Julien Grall <julien@xen.org>
In-Reply-To: <ZQnH_mbXgiqLFX6T@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Roger,

On 19/09/2023 17:10, Roger Pau Monné wrote:
> On Tue, Sep 19, 2023 at 06:00:32PM +0200, Jan Beulich wrote:
>> On 19.09.2023 17:56, Julien Grall wrote:
>>> On 19/09/2023 16:09, Chuck Zmudzinski wrote:
>>>> On 9/19/2023 8:10 AM, Julien Grall wrote:
>>>>> On 19/09/2023 08:02, Roger Pau Monné wrote:
>>>>>> On Mon, Sep 18, 2023 at 07:49:26PM +0100, Julien Grall wrote:
>>>>>>> (+Roger and moving to xen-devel)
>>>>>>> On 18/09/2023 19:17, Chuck Zmudzinski wrote:
>>>>>>>> On 9/18/2023 9:00 AM, Chuck Zmudzinski wrote:
>>>>>>>>> I tested Xen 4.18~rc0 on Alma Linux 9 and my first tests indicate it works fine for starting the guests I manage but I notice that immediately after boot and with only dom0 running on the system, I get:
>>>>>>>>>
>>>>>>>>> [user@Malmalinux ~]$ sudo xl dmesg
>>>>>>>>> 00bee72000-00000bee72fff type=7 attr=000000000000000f
>>>>>>>>> (XEN)  00000bee73000-00000bef49fff type=4 attr=000000000000000f
>>>>>>>>> (XEN)  00000bef4a000-00000bef4bfff type=7 attr=000000000000000f
>>>>>>>>> (XEN)  00000bef4c000-00000befbafff type=4 attr=000000000000000f
>>>>>>>>> (XEN)  00000befbb000-00000befbbfff type=7 attr=000000000000000f
>>>>>>>>> ...
>>>>>>>>>
>>>>>>>>> I have noticed the buffer fills up quickly on earlier Xen versions, but never have I seen it fill up during boot and with only dom0 running.
>>>>>>>>>
>>>>>>>>> Can increasing the buffer fix this? How would one do that?
>>>>>>>>>
>>>>>>>>> Thanks
>>>>>>>>>
>>>>>>>>
>>>>>>>> I see the setting is the command line option conring_size:
>>>>>>>>
>>>>>>>> https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#conring_size
>>>>>>>>
>>>>>>>> The default is 16k, I tried 48k and that was big enough to capture all the messages at boot for 4.18 rc0. This is probably not an issue if the release candidate is being more verbose than the actual release will be. But if the release is still this verbose, maybe the default of 16k should be increased.
>>>>>>>
>>>>>>> Thanks for the report. This remind me the series [1] from Roger which tries
>>>>>>> to increase the default size to 32K. @Roger, I am wondering if we should
>>>>>>> revive it?
>>>>>>
>>>>>> I think the relevant patch (2/2) will still apply as-is, it's just a
>>>>>> Kconfig one line change.  I'm however thinking it might be better to
>>>>>> bump it even further, to 128K.  From a system point of view it's still
>>>>>> a very small amount of memory.
>>>>>
>>>>> I don't have a strong opinion about 128K vs 32K.
>>>>
>>>> I am sure 32k will be big enough on my system, and based on Jan's comment
>>>> about release builds being less verbose, the current default of 16k may
>>>> still work on my system once the release is out.
>>>
>>> I think it is quite (actually more) important to capture all the logs
>>> even in non-release build. So it would makes sense to increase the
>>> buffer to 32KB.
>>>
>>> An alternative option would be to have a different limit for debug and
>>> production build. Not sure what the others thinks.
>>
>> I would certainly like a two-way default better than the uniform bumping
>> to 128k.
> 
> It's not just the output from Xen that goes into such buffer, but also
> the output from dom0.  Hence making the decision based on Xen release
> vs debug builds doesn't seem reliable to me.

Fair point. It seems to me you want to have a size that cover pretty 
much everyone. Which is fine, but may have unintented impact on user 
that want to reduce the footprint of Xen.

> 
> Again 128K is a trivial amount of memory on current systems

I am not sure I would call it trivial. For Arm, this is about 12% of the 
size of Xen (currently about 1MB). Right now, I am not aware of users 
that may try to have a very slim down Xen. But I wouldn't suprised if 
this will come up in the future and therefore reserving 128K for the 
console may not be desirable.

Admittly those users would likely try to tailor Xen. So a bigger default 
would not matter. But this is showing that there are conflicting 
requirements and we need to find a middle ground.

> , I'm quite
> sure 32K is already not enough on some of the systems I test with, but
> anyway.  Feel free to pick and adjust the patch to 32K if that's the
> only option, in any case it's better than the current default of 16K.

Jan seems to be more happy with 32K. So I will adjust the patch to 32K. 
We can refine it if we notice that this is not sufficient for most of 
the systems.

Cheers,

---
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 12:24:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 12:24:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605688.943263 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiwFl-00009H-6C; Wed, 20 Sep 2023 12:24:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605688.943263; Wed, 20 Sep 2023 12:24:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiwFl-00009A-2p; Wed, 20 Sep 2023 12:24:25 +0000
Received: by outflank-mailman (input) for mailman id 605688;
 Wed, 20 Sep 2023 12:24:23 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiwFj-00008v-KX; Wed, 20 Sep 2023 12:24:23 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiwFj-0004s1-6X; Wed, 20 Sep 2023 12:24:23 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiwFi-0000nX-KQ; Wed, 20 Sep 2023 12:24:22 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiwFi-0005QJ-Jl; Wed, 20 Sep 2023 12:24:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=I7WnoKaNfejuH4p61N/s0RneJbIaDEkkJEUp2sGMLsw=; b=feNIRqLPMbM8PjOEoa3Z/uoLrE
	D3lW/xTB0n5dAUfy4HsTnlvY2K2ANT4UZDIERhrG8UehtKvsH3pgwKLddP3J/XGH87rERCiW1X1fL
	zzdLkEAHjb86u+/b+p+5Lebixjm4R4Dyi/2K4swTIfhfqOd8C+43hg0Onjqnw2JOcmHA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183074-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183074: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-qemuu-rhel6hvm-amd:xen-install:fail:regression
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:regression
    xen-unstable:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=9b57c800b79b96769ea3dcd6468578fa664d19f9
X-Osstest-Versions-That:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 20 Sep 2023 12:24:22 +0000

flight 183074 xen-unstable real [real]
flight 183078 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183074/
http://logs.test-lab.xenproject.org/osstest/logs/183078/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-qemuu-rhel6hvm-amd  7 xen-install        fail REGR. vs. 183046
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail REGR. vs. 183046

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail pass in 183078-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183046
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183046
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183046
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183046
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183046
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183046
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183046
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183046
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183046
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183046
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183046
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183046
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  9b57c800b79b96769ea3dcd6468578fa664d19f9
baseline version:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273

Last test of basis   183046  2023-09-19 04:03:13 Z    1 days
Testing same since   183074  2023-09-19 22:37:00 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Simon Gaiser <simon@invisiblethingslab.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           fail    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit 9b57c800b79b96769ea3dcd6468578fa664d19f9
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 19 11:23:34 2023 +0100

    x86/entry: Partially revert IST-exit checks
    
    The patch adding check_ist_exit() didn't account for the fact that
    reset_stack_and_jump() is not an ABI-preserving boundary.  The IST-ness in
    %r12 doesn't survive into the next context, and is a stale value C.
    
    This shows up in Gitlab CI for the Clang build:
    
      https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/5112783827
    
    and in OSSTest for GCC 8:
    
      http://logs.test-lab.xenproject.org/osstest/logs/183045/test-amd64-amd64-xl-qemuu-debianhvm-amd64/serial-pinot0.log
    
    There's no straightforward way to reconstruct the IST-exit-ness on the
    exit-to-guest path after a context switch.  For now, we only need IST-exit on
    the return-to-Xen path.
    
    Fixes: 21bdc25b05a0 ("x86/entry: Track the IST-ness of an entry for the exit paths")
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit ea36ac0de27c2a7c847a2a52c3e0f97a45864d81
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Thu Sep 14 14:03:34 2023 -0500

    xen/ppc: Enable full Xen build
    
    Bring ppc's Makefile and arch.mk in line with arm and x86 to disable the
    build overrides and enable the full Xen build.
    
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 23f2f4a0977503187cd05cbc8963464a25e75eaf
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Thu Sep 14 14:03:33 2023 -0500

    xen/ppc: Add stub function and symbol definitions
    
    Add stub function and symbol definitions required by common code. If the
    file that the definition is supposed to be located in doesn't already
    exist yet, temporarily place its definition in the new stubs.c
    
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit 4a2f68f90930458903589aefa2bef7b368af3df4
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Thu Sep 14 14:03:32 2023 -0500

    xen/ppc: Define minimal stub headers required for full build
    
    Additionally, change inclusion of asm/ headers to corresponding xen/ ones
    throughout arch/ppc now that they work.
    
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>

commit fa6696e63b6e490f3348ad973b30e361d68e366f
Author: Simon Gaiser <simon@invisiblethingslab.com>
Date:   Tue Sep 19 11:02:13 2023 +0200

    x86/ACPI: Fix logging of MADT entries
    
    The recent change to ignore MADT entries with invalid APIC IDs also
    affected logging of MADT entries. That's not desired [1] [2], so restore
    the old behavior.
    
    Fixes: 47342d8f490c ("x86/ACPI: Ignore entries with invalid APIC IDs when parsing MADT")
    Link: https://lore.kernel.org/xen-devel/0bd3583c-a55d-9a68-55b1-c383499d46d8@suse.com/ # [1]
    Link: https://lore.kernel.org/xen-devel/f780d40e-c828-c57a-b19c-16ee15c1454a@suse.com/ # [2]
    Signed-off-by: Simon Gaiser <simon@invisiblethingslab.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 93d2ee85f189aab6d8326871b9991469d795fbc9
Author: Federico Serafini <federico.serafini@bugseng.com>
Date:   Tue Sep 19 11:01:56 2023 +0200

    xen/vPCI: address violation of MISRA C:2012 Rule 8.3
    
    Make function declaration consistent with the corresponding definition.
    No functional change.
    
    Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
    Acked-by: Roger Pau Monné <roger.pau@citrix.com>

commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 3ee6066bcd737756b0990d417d94eddc0b0d2585
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 45f00557350dc7d0756551069803fc49c29184ca
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 694bb0f280fd08a4377e36e32b84b5062def4de2
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 12:37:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 12:37:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605698.943272 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiwS6-0003cz-Ay; Wed, 20 Sep 2023 12:37:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605698.943272; Wed, 20 Sep 2023 12:37:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiwS6-0003cs-8N; Wed, 20 Sep 2023 12:37:10 +0000
Received: by outflank-mailman (input) for mailman id 605698;
 Wed, 20 Sep 2023 12:37:09 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiwS5-0003ci-CJ; Wed, 20 Sep 2023 12:37:09 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiwS5-00055e-4l; Wed, 20 Sep 2023 12:37:09 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qiwS4-0001WQ-Ny; Wed, 20 Sep 2023 12:37:08 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qiwS4-0001Ym-Ln; Wed, 20 Sep 2023 12:37:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=n8PzD0TCBibnDHtG/FiEt/W6/RNZ9VDA2D47oOA1OSo=; b=hbBOfhWyscJbnLhV+GmJX3UDrJ
	GGvkuFXwylP6rpovlHRX/WC/9cF9QENGJ3Z1maggABS/yP4CHPgEVNKFWGRUeDj1IQA7VOp1fne2J
	FQzVMWO9bP9jQefBn2bEwR/AgxS2IFn4Q7W6jbxqVvfMufgUB1CRaebWzRYzMcOnpFcA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183080-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183080: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=fb0ff49fe9f784bfee0370c2a3c5f20e39d7a1cb
X-Osstest-Versions-That:
    xen=9b57c800b79b96769ea3dcd6468578fa664d19f9
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 20 Sep 2023 12:37:08 +0000

flight 183080 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183080/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  fb0ff49fe9f784bfee0370c2a3c5f20e39d7a1cb
baseline version:
 xen                  9b57c800b79b96769ea3dcd6468578fa664d19f9

Last test of basis   183070  2023-09-19 20:00:24 Z    0 days
Testing same since   183080  2023-09-20 10:00:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   9b57c800b7..fb0ff49fe9  fb0ff49fe9f784bfee0370c2a3c5f20e39d7a1cb -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 12:51:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 12:51:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605707.943285 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiwfV-0000JJ-Hw; Wed, 20 Sep 2023 12:51:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605707.943285; Wed, 20 Sep 2023 12:51:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiwfV-0000JC-F2; Wed, 20 Sep 2023 12:51:01 +0000
Received: by outflank-mailman (input) for mailman id 605707;
 Wed, 20 Sep 2023 12:51:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=w83i=FE=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qiwfU-0000HT-8P
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 12:51:00 +0000
Received: from mail-ed1-x535.google.com (mail-ed1-x535.google.com
 [2a00:1450:4864:20::535])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5831f998-57b4-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 14:50:58 +0200 (CEST)
Received: by mail-ed1-x535.google.com with SMTP id
 4fb4d7f45d1cf-530c9980556so5340294a12.2
 for <xen-devel@lists.xenproject.org>; Wed, 20 Sep 2023 05:50:58 -0700 (PDT)
Received: from leoy-huanghe (static-212-193-78-212.thenetworkfactory.nl.
 [212.78.193.212]) by smtp.gmail.com with ESMTPSA id
 g16-20020a056402321000b00530cf354746sm5953419eda.48.2023.09.20.05.50.56
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 20 Sep 2023 05:50:57 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5831f998-57b4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1695214257; x=1695819057; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=H+WEjqRAWQbUZ0/OPjyy4ihAFTjMbPxdHBnTj3QRTms=;
        b=n/YIkXcUB3CNWPvQ7zpXhMIVaiIa5pW4BH5TgdvVKtl4+Qy4v9jrddN3ennrEIeIaO
         93xWxIMGFrrQhwverWdbUgb+NVmF2qz7evAfjXyzVxkLT/6daVo4yjdzGnhT0ycrY5nW
         5QpiH8psS3C6KANtSS8ZxmgrUfhEgcGY8zKottYN+b/Gw/iW5zn/ntv/DYWbpdB10FLk
         76pGg30NygHds3/1s7sJYZlAbpagQlQAcyah7TbNp3qtt7h0YojFG7hXu0xmwTq8BjQR
         2hu+urzMkwFOeLV1pBq30TE1Xtuw9FIFwdgdvz+y3UJhDu7sGx9txgxrC0K7s6aZKZGl
         aowQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695214257; x=1695819057;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=H+WEjqRAWQbUZ0/OPjyy4ihAFTjMbPxdHBnTj3QRTms=;
        b=QYxYlCkGh4NYHbIuyEk+dhQXKVrlRb/un+QBkSn/S/p7nzV4BfKBG+4JgRWlle7OEf
         kUJ6Pdh+cJrf0oM3tEvvrNKqGNdsficJfiVPpLzForptY0ixSVEj5a5YPGcymVHFNKqR
         z4TBPKtxhsIhUfaqkQHJSBQt/96sarhIBUu8nbw0M8Mh1+72ORDlSjFufEI/0pPQ1XL3
         bnsPPb0+s6lDNz3y1Nxh3iCc6Zq1Y88GOhOWECX7dcE4ufwD1T4rrmUQvoMm+1i3IvJi
         PZSE8Emkan5Ro3bPWo+nBeIPCWI28py8ilJ+j5xe9XEVsjAycYm/f2+kaFg9xI/cOy0j
         QyIg==
X-Gm-Message-State: AOJu0Yw5c11U3QNyw9b98lTLWxSDxFNvNBqFRWrDHjV8ifpmYpc/CM6V
	KRp7rllhu169H0S037w44KNx/A==
X-Google-Smtp-Source: AGHT+IEwUhkbYVnIfs3kBmWLulLdqdFmaKFPiqaBNEzGO7y4HfesS8nEIEw6xJWOatGvlxMBInxb+A==
X-Received: by 2002:aa7:c2cb:0:b0:525:7234:52b7 with SMTP id m11-20020aa7c2cb000000b00525723452b7mr2273291edp.19.1695214257604;
        Wed, 20 Sep 2023 05:50:57 -0700 (PDT)
Date: Wed, 20 Sep 2023 20:50:55 +0800
From: Leo Yan <leo.yan@linaro.org>
To: Julien Grall <julien@xen.org>
Cc: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Henry Wang <Henry.Wang@arm.com>, Penny Zheng <penny.zheng@arm.com>
Subject: Re: RFC: arm64: Handling reserved memory nodes
Message-ID: <20230920125055.GA143839@leoy-huanghe>
References: <20230914081607.GA1400758@leoy-huanghe.lan>
 <23a0185e-428d-496b-96b6-d5082800bfd4@xen.org>
 <20230916081541.GA3291774@leoy-huanghe.lan>
 <561f8b9d-3877-4251-8cf7-7cdf313254bb@xen.org>
 <20230920100344.GA71044@leoy-huanghe>
 <6c59477f-d133-4cab-4f4e-afd8e710453c@amd.com>
 <6bfbf707-cfc8-4cf3-80d0-eeaba0e5865a@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <6bfbf707-cfc8-4cf3-80d0-eeaba0e5865a@xen.org>

On Wed, Sep 20, 2023 at 11:36:24AM +0100, Julien Grall wrote:

[...]

> > > Could you confirm the Xen does write reserved memory nodes?  Or Xen
> > > converts the reserved memory nodes to normal memory nodes as I
> > > describe above :)
> > 
> > Xen passes the /reserved-memory node unchanged from host device tree to dom0 fdt.
> > Apart from that it creates an additional memory node covering the reserved ranges.
> > Take a look at this example run(based on qemu):
> 
> Thanks for providing an example! This is quite handy.

Yeah, thanks a lot for sharing the DT binding, Michal!

> > Host dt:
> > memory@40000000 {
> >      reg = <0x00 0x40000000 0x01 0x00>;
> >      device_type = "memory";
> > };
> > 
> > reserved-memory {
> >      #size-cells = <0x02>;
> >      #address-cells = <0x02>;
> >      ranges;
> > 
> >      test@50000000 {
> >          reg = <0x00 0x50000000 0x00 0x10000000>;
> >          no-map;
> >      };
> > };
> > 
> > Xen:
> > (XEN) MODULE[0]: 000000004ac00000 - 000000004ad65000 Xen
> > (XEN) MODULE[1]: 000000004ae00000 - 000000004ae03000 Device Tree
> > (XEN) MODULE[2]: 0000000042c00000 - 000000004aa8ea8b Ramdisk
> > (XEN) MODULE[3]: 0000000040400000 - 0000000042b30000 Kernel
> > (XEN)  RESVD[0]: 0000000050000000 - 000000005fffffff
> > ...
> > (XEN) BANK[0] 0x000000c0000000-0x00000100000000 (1024MB)
> > 
> > Linux dom0:
> > [    0.000000] OF: reserved mem: 0x0000000050000000..0x000000005fffffff (262144 KiB) nomap non-reusable test@50000000
> 
> So Linux should tell whether a region has been reserved. @Leo, can you share
> with us the serial console? Can you confirm the version of Xen you are
> using?

Sure, I will share the logs and DTS in Dom0 kernel when I can access
my machine in next week (due to I am on vacation in this week).

I am a bit suspicious that I am not aware something in my working
kernel. If have any finding, I will share back.

Thanks,
Leo


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 12:57:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 12:57:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605713.943296 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiwlp-0002EA-78; Wed, 20 Sep 2023 12:57:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605713.943296; Wed, 20 Sep 2023 12:57:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiwlp-0002E3-3j; Wed, 20 Sep 2023 12:57:33 +0000
Received: by outflank-mailman (input) for mailman id 605713;
 Wed, 20 Sep 2023 12:57:31 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DGJ5=FE=suse.com=nik.borisov@srs-se1.protection.inumbo.net>)
 id 1qiwln-0002Cj-OP
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 12:57:31 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20605.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::605])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4154c126-57b5-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 14:57:29 +0200 (CEST)
Received: from DBBPR04MB7788.eurprd04.prod.outlook.com (2603:10a6:10:1e4::15)
 by DB9PR04MB10035.eurprd04.prod.outlook.com (2603:10a6:10:4ed::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Wed, 20 Sep
 2023 12:57:25 +0000
Received: from DBBPR04MB7788.eurprd04.prod.outlook.com
 ([fe80::5b25:12c8:9f51:9b31]) by DBBPR04MB7788.eurprd04.prod.outlook.com
 ([fe80::5b25:12c8:9f51:9b31%4]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 12:57:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4154c126-57b5-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YAZVgqnoySM1SFPM72YJjzQGGbWBVNLbEdbKsHX3g9Pbfa1zVS7u9FE86jxte9HYaoGV2EqpLkEhMp933VkXaSo9rpHMJXOneRW7qWVe5fgv8s8l4FgYm3tTDJZD22x/gDQaHzsOZRQ0QuPn70H/RLCm0cuFVyQ2fHME/sqfXPDRyD2M+N+wN7CHKzidS2w7K7dC1L1+++IuASsiP527PcbybM0C8nAp4sLmmp0aWcjydwRu7cn/ccY7yr09k6ZpqBwgKl8EWeLCXUd4lGu3ug4fVMJBeuC3C7lZMDobRo30AujIsHkaEFH0Pt5hltuX1diA31MQ9FU6A2xC/KloNg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rsfk6HkGCqPcF9+Kkje7EojINs0xmHo2oq3TsscSXGQ=;
 b=NNXaukbWObrLJe3AD2f2O/fDYt1hqquUdfrviFmZBzqU0ok9TzreOp/Ci/ROXWEyC5XvAn2YulGEFIADtFMZpIK9FknK/O8Xrp+o0X14AuWyJ89FzBW6LlDB39QAvmo8esHSrlyvUyS4mE5EZWyN/zTsWe+VB0gJ7qSvnPpeVuwvmLBkaBU7BZB2zhWMKaEZzdGIyppftZnWgF1jc7J8jJup/G+HIIaL66PhS1aoZ7SgAL5ksmICPzF8KCaI4RTuGL0KZODpLagQZmu3II36J3HbwMHSL/5zwRQHk1kv3gNeCi12c04+GyadRf3fp/RsXFsRsxOeRvaPO7TOlHobZw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rsfk6HkGCqPcF9+Kkje7EojINs0xmHo2oq3TsscSXGQ=;
 b=SjkEMDdwNKB96U61G+2zoBR+qiXYCMc3sqzJ9gtPMM6ALYO0XaN3Wcz2QasuEK42CJRsKPWS4SdADh/srSc17lUu1poBpAPo/KorxKz8LFseQGN06W6k0VFq28sDVDWKPbghZZkm7QjGfmJ1cI+rt43BRdnvMY8KOD1P6UmDJ6A7VLWVf5wrzqLfwJRZoohCrqFfL/svPELLjcxeXTVIlIxVRuZsBwb69x8GpT8KArW3BaClSCxHDZWNyGVoATcJT3DvZspzhNT3Q5xmoJBfOjIlgzhFzzbLB6E31xHkWP4EyKluKUIg1ra7w2COuKYhnlDv1vLPcmuswo6+OE781g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <336f77d6-1d94-d2b7-f429-855bfbc3f271@suse.com>
Date: Wed, 20 Sep 2023 15:57:20 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Content-Language: en-US
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 andrew.cooper3@citrix.com, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-17-xin3.li@intel.com>
From: Nikolay Borisov <nik.borisov@suse.com>
Subject: Re: [PATCH v10 16/38] x86/ptrace: Add FRED additional information to
 the pt_regs structure
In-Reply-To: <20230914044805.301390-17-xin3.li@intel.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: VI1PR06CA0116.eurprd06.prod.outlook.com
 (2603:10a6:803:8c::45) To DBBPR04MB7788.eurprd04.prod.outlook.com
 (2603:10a6:10:1e4::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DBBPR04MB7788:EE_|DB9PR04MB10035:EE_
X-MS-Office365-Filtering-Correlation-Id: 8111326e-af4d-4c67-ddc8-08dbb9d922e6
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	MTxmR9O25KOptguzvwqgjJEdy+F4lYPo/mQ1M6ZEvUSNjfv9QrXdBz70j4HtPlvu1VepXu2UjkagOKmXtRi8BgQW1hyxmX+YPSLBxTzPrQ8sTe+zYrlwNiGEFlGGy5SDnhcx8k50hXCAOFfjr5NsNj3asfQiH94I7q0nRe39TCW0K8sH3/0AQ6Xfk3wYkQUdC/SOq+kxFSc2Qtf/MWSmIkCyZJgmZwd1rbO6FtS25q7VtUADmfK5M8cZTqzGHCP8XbPVo7uI5Xpg27ab/V1QeKxttAsqbQS21z3A1khIaFnwh3lxa1yZh263jAnC2ym1vngFgQ2JUZIrQoLTiaRcA9qaurfJsWjppQHn9GeM8xGmGQaLayqT4PkKwPqlwEIUGFvVLrsXj9TYJUKEvDMuYmvAMVz1cAqwJXFUi9QIP+SDqvdW1xdzNMzD+ffijd14L7mXfMTtQkuCy34e/WSz95xm/iXUfhuBtzC9m4soYXB2FMeb9DCUVCm2ZVlQcrV4yQdQ+0dwhPPN66HgemmnksVKudAAb3gFzxkHiEqusQO1XF1qUzWjeCRSuZ4FUW6V8Aq0PIYJzAdW0euLJH07Dnr67QoeKTAmLMTW7RAoItzx/edqUZ211X4y9dGvxCR99iMW1APg0DrGluPpq4pBYQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DBBPR04MB7788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(136003)(376002)(346002)(396003)(39860400002)(451199024)(186009)(1800799009)(2906002)(31686004)(5660300002)(26005)(66556008)(66476007)(7416002)(41300700001)(316002)(66946007)(478600001)(4326008)(8676002)(8936002)(6666004)(6506007)(6486002)(6512007)(2616005)(36756003)(38100700002)(86362001)(31696002)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dWJmd0xzUUZiR0M4c2RvemNUTm53ZTB4UjZya2hub1RmVi8yWlJpWXUxaTli?=
 =?utf-8?B?c3BKVkROQXp6TDV0djJPWjN6Y29xTVEwRWdZRDhCckJGU2djSU9Cd04vWnYz?=
 =?utf-8?B?dGR5M3ZyT3dmc0RWN1dBYnhaWXl0d3pTc3ZTYWZWSWd2TDY2aUo2dlV0UVpu?=
 =?utf-8?B?WWNUM2FvRlQ1TzhOdzNmSVdnV2FDRTdCaGpYRWhoVDVvVGpWWVJxam52Tk1x?=
 =?utf-8?B?SW5WOGtnMVhrQ0VxT0VmQjBSMDlEVWluN2kwQUlBQWFjVFBCWit6dktTb3JR?=
 =?utf-8?B?RkREck9pZzNZRHYvY21GZEUvdjhDWDR5OFFuc21WNUE3TzNWWUxtR20vN3Mr?=
 =?utf-8?B?UDQ2b0lKdW5NSmZJVGltU1p2dXRTV0FlTHBRd1lCZ1A1SnQ2MUNFTHBGdWcr?=
 =?utf-8?B?YTZmU1dJVXp6ZmJtYllpMVhQUzdKaW1JMk9OaS9LL1FEckd6STJHMk9Dek5q?=
 =?utf-8?B?YWowcDV5L05TeEdqOVhRcGlNV3NZdTNhcTRtV1owTEFUbXZqaE45QW9SdjZY?=
 =?utf-8?B?WEIyY2xCYVhTVGJXWTZUcDBKeFYvTjZQVEVpU0VER0NYYnpnSDRqWDRLbm5L?=
 =?utf-8?B?MEJodkM4OXQxSUZqVlpBL1lhVmthZjMwV2Y4M3JDM1BPQ3BUVGNCSjFLOWx6?=
 =?utf-8?B?ZUlRcGlsSFdieC9NQVJpQkNielkwa1NVYmdwT1Vtb1dlYlNmTmtaREMyZ2lp?=
 =?utf-8?B?WmxXeTRIeUdaZWRnNExyanpwYmxYUmdIQ09IS2xWZGVhU1RXZGRockRpSkxC?=
 =?utf-8?B?bXFhSndkcytXb1k1UTAvd1B4WU1iZmZWOGh1cll0Q3IyWlhhZzJZZ3BWUUxF?=
 =?utf-8?B?MlRpWEl4MUdDZlU3TXhhRW4vYnNqN2lMbVQvM3BWbzhBTENKSjVZRE4rVW5l?=
 =?utf-8?B?dlU1WmMwNXZ3OEJ2RHZpdHljdHU5bFNoUy9TQllDaUJ5N2dCY3E5aGFUUzBN?=
 =?utf-8?B?Ti9WNzkwYzFQN0ZUVTh5OFpGeWxmL0MrZ3FPZjhuUnpMTXJYL1lSbGo1ZkE2?=
 =?utf-8?B?VWlLWlhobDVEZytoQTY0ckN5bDhoNDRYVlpsSkprNnFpU2dYOHZVK3F0aUhv?=
 =?utf-8?B?MEJYODZHcmRYU3hhMVU2V1NUVkNpcitQNEN6S0NpMGJGazdSUW04QjgrQTg1?=
 =?utf-8?B?QWJWT1RSYmZiR05sY0cwRnZnVThUQXorenJxM2k2T2Z0aFhMbUpZeE9GUXhl?=
 =?utf-8?B?MndmQzBhR3piVk45TG1pWTErYWNSYXRxaW1UeHdpbjF0TFZjcm96VGE0S3lY?=
 =?utf-8?B?K1BCRGp6SC9PYkhGZXNyaG56UUxFUDRyNWhPVnYwTHpwWTV6VXd0emw1TXhW?=
 =?utf-8?B?d2ZuUE52SFZGam5tT1VQK24wSGFpMENMMitGc056NnRzdzJaNHhVbjIzZWxs?=
 =?utf-8?B?WWUreXdOL21IT1YvN3diY0pmR0srai8wMVFEOWhOOXBYTDBxYldVZG5PRGtn?=
 =?utf-8?B?Qm9vcFdoUERJbTA0NTcvWFZ4NmlOZVpkRlVNWitsUHQ3NjYyUlpWNjF4cG8v?=
 =?utf-8?B?dTNiMmdJYVJzU1hrbFNCdnh5R0RZMTVnK2VtejA3MTBXb1VzRjF3T3NVR3Ja?=
 =?utf-8?B?bWpndytkaFordHBhRy9TK2s5dVFpekVPeVdVMDlNOHk5clFYcjlFWUptdytE?=
 =?utf-8?B?emUyT1RUZUl2VUIzUGdsNzZPTmordDljN1B2WjFSYUM2SnpKUjEranNXcUFz?=
 =?utf-8?B?cEZ6eTJpN1MyQUxWR09KK1E5YkdLRXVtc1V5Qmh3SXJvZVpKcTYxT2ZJQnJq?=
 =?utf-8?B?d1FXN3N1VDRpZVhEOUFRMDg4aEZKcXBETTZuZ1hUY2Nmd09mTklPM2F5SzNo?=
 =?utf-8?B?K2tNd2Q3Z2RBNXBQZkcvbndMN0E0MU9HQXN5dWYxTDNKbjFoYS9zNnFINGpI?=
 =?utf-8?B?ejdRREFvMThwTjZjWVV0eUhWelpkVllDQUEwcmhMRUdWVmFoZDdOUGx3UUtp?=
 =?utf-8?B?UW1nVzFWZGo0ZGhtWTNLQVg4enNPclBrVzA3U3pKS002T1cvd3p6N2NyS2hW?=
 =?utf-8?B?UDRLaW9LclhzNEM0QUEzUnFJVGUzczEvMlc2cFFTcnVKRXRhcVZQWm9CNUxn?=
 =?utf-8?B?OUx6aVhwNjUzQmJGdlMyUkc2cDlrOUxJZUVKZG5tWHlTaFUrNTlHNDJ4cFpB?=
 =?utf-8?Q?zsH57f4DgrdsglAao7XlnE08g?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8111326e-af4d-4c67-ddc8-08dbb9d922e6
X-MS-Exchange-CrossTenant-AuthSource: DBBPR04MB7788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 12:57:24.9866
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: DXhOY7ixChTVihr5+RJ+9ZoTH3AgeseEFNtnEN/BP+vUyQg4PQ1lOOX3hn/CW0ibYWa87aEN5V8AvV/qVdp1Bw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB10035



On 14.09.23 г. 7:47 ч., Xin Li wrote:
> FRED defines additional information in the upper 48 bits of cs/ss
> fields. Therefore add the information definitions into the pt_regs
> structure.
> 
> Specially introduce a new structure fred_ss to denote the FRED flags
> above SS selector, which avoids FRED_SSX_ macros and makes the code
> simpler and easier to read.
> 
> Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
> Tested-by: Shan Kang <shan.kang@intel.com>
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
> Signed-off-by: Xin Li <xin3.li@intel.com>
> ---
> 
> Changes since v9:
> * Introduce a new structure fred_ss to denote the FRED flags above SS
>    selector, which avoids FRED_SSX_ macros and makes the code simpler
>    and easier to read (Thomas Gleixner).
> * Use type u64 to define FRED bit fields instead of type unsigned int
>    (Thomas Gleixner).
> 
> Changes since v8:
> * Reflect stack frame definition changes from FRED spec 3.0 to 5.0.
> * Use __packed instead of __attribute__((__packed__)) (Borislav Petkov).
> * Put all comments above the members, like the rest of the file does
>    (Borislav Petkov).
> 
> Changes since v3:
> * Rename csl/ssl of the pt_regs structure to csx/ssx (x for extended)
>    (Andrew Cooper).
> ---
>   arch/x86/include/asm/ptrace.h | 51 +++++++++++++++++++++++++++++++----
>   1 file changed, 46 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/x86/include/asm/ptrace.h b/arch/x86/include/asm/ptrace.h
> index f08ea073edd6..5786c8ca5f4c 100644
> --- a/arch/x86/include/asm/ptrace.h
> +++ b/arch/x86/include/asm/ptrace.h
> @@ -56,6 +56,25 @@ struct pt_regs {
>   
>   #else /* __i386__ */
>   
> +struct fred_ss {
> +	u64	ss	: 16,	// SS selector

Is this structure conformant to the return state as described in FRED 5.0?

— The stack segment of the interrupted context, 64 bits formatted as follows:

• Bits 15:0 contain the SS selector. < - WE HAVE THIS

• Bits 31:16 are not currently defined and will be zero until they are. < - MISSING hole?


> +		sti	:  1,	// STI state < -
> +		swevent	:  1,	// Set if syscall, sysenter or INT n
> +		nmi	:  1,	// Event is NMI type
> +			: 13,
> +		vector	:  8,	// Event vector
> +			:  8,
> +		type	:  4,	// Event type
> +			:  4,
> +		enclave	:  1,	// Event was incident to enclave execution
> +		lm	:  1,	// CPU was in long mode
> +		nested	:  1,	// Nested exception during FRED delivery
> +				// not set for #DF
> +			:  1,
> +		insnlen	:  4;	// The length of the instruction causing the event
> +				// Only set for INT0, INT1, INT3, INT n, SYSCALL
> +};				// and SYSENTER. 0 otherwise.
> +

<Snip>
   


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 13:03:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 13:03:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605718.943305 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiwrM-0004QV-Pz; Wed, 20 Sep 2023 13:03:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605718.943305; Wed, 20 Sep 2023 13:03:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiwrM-0004QO-NU; Wed, 20 Sep 2023 13:03:16 +0000
Received: by outflank-mailman (input) for mailman id 605718;
 Wed, 20 Sep 2023 13:03:15 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=w83i=FE=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qiwrL-0004QI-L3
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 13:03:15 +0000
Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com
 [2a00:1450:4864:20::430])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0f11d1c9-57b6-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 15:03:14 +0200 (CEST)
Received: by mail-wr1-x430.google.com with SMTP id
 ffacd0b85a97d-32164a6af64so2058498f8f.2
 for <xen-devel@lists.xenproject.org>; Wed, 20 Sep 2023 06:03:14 -0700 (PDT)
Received: from leoy-huanghe (static-212-193-78-212.thenetworkfactory.nl.
 [212.78.193.212]) by smtp.gmail.com with ESMTPSA id
 cf21-20020a170906b2d500b009ad8d444be4sm9252230ejb.43.2023.09.20.06.03.13
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 20 Sep 2023 06:03:13 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0f11d1c9-57b6-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1695214994; x=1695819794; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=umEBqPbrvP0g0jC9qeLh6KG1xA0mXPS1YoVtY6Ta6lU=;
        b=MMVIunvwvUhl9L3WkTkHVpY9/JPwcTY0BFkAyV/VKLboIHPRX97jLpMpHxFrRapDOC
         uDsGWwie85Xv+vDNm4DNW8ljMAxc+4B0qjFieEqBERvb79ILPRr9oxbH1rdy3kFps4rR
         SUvWw+4DvOB1qoMVVQAZGwLt0TGbDLI3nT8z4KMGLtcGimD6n/ZIicRe27hZxImfQcwb
         Gge58UNCzrhMGi766ONPl04VnEWRnlyAmPTDjUNbJdMJjzsgYZbHTzObTWWj2SnJdMKY
         KD2LyJihoKvknAZacnDBVof9iG2vq0Ox/w0NL9e8QMGqIt6dcXuUJAWU0HvW/7E5WjQ/
         zxww==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695214994; x=1695819794;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=umEBqPbrvP0g0jC9qeLh6KG1xA0mXPS1YoVtY6Ta6lU=;
        b=tblReJEYAMj3er6ljiLDVQ4gg4JffOoWGA1oYE00KSpYCMKbJqwegalqtBz1NW/vG4
         x9N1qhVcE50VOFMctjz1i302kwrAW3HmcphXcgfZr2VwLsRbelDR9cRxXI9K+banQ7YL
         cB9cDVPrRUzEx+ayOFb9yo4qaIm6sDlEkpR5b6HhfzZ6GdAp/baWZsYMVBcLPHdRibMm
         f4JIJtU4Z2I0qBM+tTGnroPW6HoTu2HXYxh/NnlAwKbFnyTQWpjxRApeFD0IMl+xxH3q
         6y1d9ahhVvA5vLIPziS/WqWzlA/CXn5sWt1/UYybIWIlbVQBnWiD8d+3T+ZlktB29ZrR
         mGlQ==
X-Gm-Message-State: AOJu0Yww4yj/vYNbVZ41s0iyHxe77S3PHoIlQF6soaRPxbuF6SqODFOd
	UL8t6CxmD53RaRM0iaziI8jR2Q==
X-Google-Smtp-Source: AGHT+IGPMZMEZqbYMgwf5SzzTa18y5nDAvg0As6HbOHDO+wgxN41BtTi67eb7TMrFcC61K2MIaojoQ==
X-Received: by 2002:adf:fac3:0:b0:309:1532:8287 with SMTP id a3-20020adffac3000000b0030915328287mr2333821wrs.19.1695214993840;
        Wed, 20 Sep 2023 06:03:13 -0700 (PDT)
Date: Wed, 20 Sep 2023 21:03:11 +0800
From: Leo Yan <leo.yan@linaro.org>
To: Julien Grall <julien@xen.org>
Cc: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Henry Wang <Henry.Wang@arm.com>, Penny Zheng <penny.zheng@arm.com>
Subject: Re: RFC: arm64: Handling reserved memory nodes
Message-ID: <20230920130311.GB143839@leoy-huanghe>
References: <20230914081607.GA1400758@leoy-huanghe.lan>
 <23a0185e-428d-496b-96b6-d5082800bfd4@xen.org>
 <20230916081541.GA3291774@leoy-huanghe.lan>
 <561f8b9d-3877-4251-8cf7-7cdf313254bb@xen.org>
 <20230920100344.GA71044@leoy-huanghe>
 <6c59477f-d133-4cab-4f4e-afd8e710453c@amd.com>
 <6bfbf707-cfc8-4cf3-80d0-eeaba0e5865a@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <6bfbf707-cfc8-4cf3-80d0-eeaba0e5865a@xen.org>

On Wed, Sep 20, 2023 at 11:36:24AM +0100, Julien Grall wrote:

[...]

> Can you confirm the version of Xen you are using?

For this question, I use a very new Xen repo with staging branch which
I git pulled at last week.

Thanks,
Leo


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 13:38:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 13:38:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605727.943316 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qixPc-0004ro-Gk; Wed, 20 Sep 2023 13:38:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605727.943316; Wed, 20 Sep 2023 13:38:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qixPc-0004rh-Do; Wed, 20 Sep 2023 13:38:40 +0000
Received: by outflank-mailman (input) for mailman id 605727;
 Wed, 20 Sep 2023 13:38:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wKQE=FE=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qixPa-0004rb-K2
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 13:38:38 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ff69d4de-57ba-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 15:38:36 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73])
 by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-508-6h0EOFiwNjSXxjptxJGmoA-1; Wed, 20 Sep 2023 09:38:30 -0400
Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com
 [10.11.54.5])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 17D8A3C11C66;
 Wed, 20 Sep 2023 13:38:29 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 4B4DA28FD;
 Wed, 20 Sep 2023 13:38:28 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 3262C21E6900; Wed, 20 Sep 2023 15:38:27 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ff69d4de-57ba-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695217115;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=q/aHPKhvpgi6eZaXOTzZzxU74NwtDAlDI9nUfRDIWkQ=;
	b=dG7r8l5c3cV+qNodm97R0UDBCxBfaOVad+77qupRavJoiMVvsp+EJrY1RG57S4dnZeZPJ3
	R5Ku9D7ZxfOSRvvHCS3olvZOYTJnCPvEgM1A75neJnazRRjDSHrJ9z1GZ3/JFrH0eEtLtB
	xU5agp09fR0X8xh82cfSeYgcgqC04PM=
X-MC-Unique: 6h0EOFiwNjSXxjptxJGmoA-1
From: Markus Armbruster <armbru@redhat.com>
To: Kevin Wolf <kwolf@redhat.com>
Cc: qemu-devel@nongnu.org,  hreitz@redhat.com,  eblake@redhat.com,
  vsementsov@yandex-team.ru,  jsnow@redhat.com,  idryomov@gmail.com,
  pl@kamp.de,  sw@weilnetz.de,  sstabellini@kernel.org,
  anthony.perard@citrix.com,  paul@xen.org,  pbonzini@redhat.com,
  marcandre.lureau@redhat.com,  berrange@redhat.com,  thuth@redhat.com,
  philmd@linaro.org,  stefanha@redhat.com,  fam@euphon.net,
  quintela@redhat.com,  peterx@redhat.com,  leobras@redhat.com,
  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org,
  peter.maydell@linaro.org
Subject: Re: [PATCH 4/7] block/dirty-bitmap: Clean up local variable shadowing
References: <20230831132546.3525721-1-armbru@redhat.com>
	<20230831132546.3525721-5-armbru@redhat.com>
	<ZQQNUjN4Laf+k1Nk@redhat.com> <8734za4stm.fsf@pond.sub.org>
	<ZQltoZWlnIW/wDi3@redhat.com>
Date: Wed, 20 Sep 2023 15:38:27 +0200
In-Reply-To: <ZQltoZWlnIW/wDi3@redhat.com> (Kevin Wolf's message of "Tue, 19
	Sep 2023 11:45:05 +0200")
Message-ID: <87bkdxdkx8.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.5

Kevin Wolf <kwolf@redhat.com> writes:

> Am 19.09.2023 um 07:48 hat Markus Armbruster geschrieben:
>> Kevin Wolf <kwolf@redhat.com> writes:
>> 
>> > Am 31.08.2023 um 15:25 hat Markus Armbruster geschrieben:
>> >> Local variables shadowing other local variables or parameters make the
>> >> code needlessly hard to understand.  Tracked down with -Wshadow=local.
>> >> Clean up: delete inner declarations when they are actually redundant,
>> >> else rename variables.
>> >> 
>> >> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> >> ---
>> >>  block/monitor/bitmap-qmp-cmds.c | 2 +-
>> >>  block/qcow2-bitmap.c            | 3 +--
>> >>  2 files changed, 2 insertions(+), 3 deletions(-)
>> >> 
>> >> diff --git a/block/monitor/bitmap-qmp-cmds.c b/block/monitor/bitmap-qmp-cmds.c
>> >> index 55f778f5af..4d018423d8 100644
>> >> --- a/block/monitor/bitmap-qmp-cmds.c
>> >> +++ b/block/monitor/bitmap-qmp-cmds.c
>> >> @@ -276,7 +276,7 @@ BdrvDirtyBitmap *block_dirty_bitmap_merge(const char *node, const char *target,
>> >>  
>> >>      for (lst = bms; lst; lst = lst->next) {
>> >>          switch (lst->value->type) {
>> >> -            const char *name, *node;
>> >> +            const char *name;
>> >>          case QTYPE_QSTRING:
>> >>              name = lst->value->u.local;
>> >>              src = bdrv_find_dirty_bitmap(bs, name);
>> >
>> > The names in this function are all over the place... A more ambitious
>> > patch could rename the parameters to dst_node/dst_bitmap and these
>> > variables to src_node/src_bitmap to get some more consistency (both with
>> > each other and with the existing src/dst variables).
>> 
>> What exactly would you like me to consider?  Perhaps:
>> 
>> * Rename parameter @node to @dst_node
>> 
>> * Rename which parameter to @dst_bitmap?
>
> Parameter @target to @dst_bitmap (it's the name of a bitmap in
> @node/@dst_node)
>
>> * Rename nested local @node to @src_node
>> 
>> * Rename which local variable to @src_bitmap?
>
> @name to @src_bitmap (it's the name of a bitmap in the local
> @node/@src_node)
>
>> * Move nested locals to function scope
>
> I don't really mind either way, but yes, maybe that would be more
> conventional.

Done for v2.

> That you couldn't tell for two of the variables what they actually are
> probably supports the argument that they should be renamed. :-)

Fair point!



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 13:56:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 13:56:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605734.943325 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qixh6-0000nW-3F; Wed, 20 Sep 2023 13:56:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605734.943325; Wed, 20 Sep 2023 13:56:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qixh6-0000nP-0T; Wed, 20 Sep 2023 13:56:44 +0000
Received: by outflank-mailman (input) for mailman id 605734;
 Wed, 20 Sep 2023 13:56:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7wrp=FE=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qixh4-0000nJ-CE
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 13:56:42 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::61b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 857e3312-57bd-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 15:56:40 +0200 (CEST)
Received: from DM6PR11CA0059.namprd11.prod.outlook.com (2603:10b6:5:14c::36)
 by DM4PR12MB5963.namprd12.prod.outlook.com (2603:10b6:8:6a::8) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.28; Wed, 20 Sep 2023 13:56:37 +0000
Received: from DS2PEPF00003447.namprd04.prod.outlook.com
 (2603:10b6:5:14c:cafe::c2) by DM6PR11CA0059.outlook.office365.com
 (2603:10b6:5:14c::36) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.29 via Frontend
 Transport; Wed, 20 Sep 2023 13:56:37 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS2PEPF00003447.mail.protection.outlook.com (10.167.17.74) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Wed, 20 Sep 2023 13:56:36 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 20 Sep
 2023 08:56:36 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 20 Sep
 2023 06:56:36 -0700
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 20 Sep 2023 08:56:34 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 857e3312-57bd-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PXTXk3DnOXVsCeIlJyyM3V9Nwpq3hnMyye8zAmYn9GyNIZO4Nv/Im04MalI91AUfPd2H6QRrYkDRIZOWAWrZE7M+u4BIsfpLt39c+kzg0+nrJbTD+i4FmPx3R+9OQVc1mD00L/5E1pNafI2g+rygSvpDP+14fjQo2+Kd+UcDC13oVqBOb8wo577ihmXveXNibcsGMsl13WUYsNrBR5AiojVJWU8u3ZySUjU4lEr2ZwZRusQ6/gK4aPHrEpuSs4XAF6j4QnZFH4szeLZwZuMyCKQXNFeY2MKjmbdHuOlhJcXQRF07h4ugPUjHDTQKq8qjTy5t9dik1PdJZtcsQv/n3g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=XQJh4EW+gXVDVoVOEtiegw9LowjMpw7R7YalCQsWz78=;
 b=dl13YtBAaH8Iqc7hS0ufiflt7nKJZV4mYFSN/35JhPoxdNs55i//UiPKYFYBSkja37PG2Dp7UJUHzQMRp47tbGu54nUgOyYOUU+AilXc93H/5Pz+dDtGuOHFRzo7I7mtbMEHA7UxOKrYSJKzXKPvfZvWwLFg5gCJRO88akBj8GO7v6wSBT3NU7XokScv3H2bUeqQFqUsvWrDF4Y7xE5bUitFNNI8cKgXisybnfc/lsUomTBEgtR5CdCJfPzKJSIWcOsZ3T/St0dZU01FkYo2wbRjYmHVV6qLpUt6U0PHkiEj7ficeW+c+Q0BnN6PJN5FtfuFSsAVgVesDPMWUIdnwQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=citrix.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XQJh4EW+gXVDVoVOEtiegw9LowjMpw7R7YalCQsWz78=;
 b=jtQNi2l8Y//tGaBhOFLttn/BI8YE9dtzi2HXvgSeyYjzMtM49kS+0DPFGIhf7uUrk3WLZuBQBGvSIt7LuljTjTr1ZzUUYVeOO5wKq8PPL5k/NKRSf5j788bvD4ZWeXVKcD+2YM3apu2DRV+KSaJAu5obSPfqOmBWhC4xfkVBjAk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <8f8e293c-80a9-03e0-0c19-e641dc42d42e@amd.com>
Date: Wed, 20 Sep 2023 09:56:28 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v9 02/16] vpci: use per-domain PCI lock to protect vpci
 structure
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
CC: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, "Oleksandr
 Andrushchenko" <Oleksandr_Andrushchenko@epam.com>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu
	<wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian
	<kevin.tian@intel.com>, Paul Durrant <paul@xen.org>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-3-volodymyr_babchuk@epam.com>
 <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
 <98b8c131-b0b9-f46c-5f46-c2136f2e3b4e@amd.com>
 <ZQqoqrmDr2jY_bMu@MacBookPdeRoger>
Content-Language: en-US
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <ZQqoqrmDr2jY_bMu@MacBookPdeRoger>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF00003447:EE_|DM4PR12MB5963:EE_
X-MS-Office365-Filtering-Correlation-Id: 9bf3ec5b-0624-425d-fc3d-08dbb9e16836
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vu7ZZqkkiQC1Nt0HHbbRCXAQvJ+amX/hH//jgMzbJBIbapULzH8Z1SZ1B1WmgpuFtA9HD6Wi9KXyn9Kjt8K6nES3p+LCR74fYLFxU1q2YHTX89uZ35wZIr1Zj2lhpri3qe9EveC3smHbck4PZ1DPPXPAu4t80yYLgb93z3/ePrPw1+3rw6PZQ9HCvmtAVqu4/g+YS8RKoT0z1adKhjjUQv5hGxTJ9Dk3ZvFxxtR19ww9ZQzeH1/EnOJqYfqTl44c2k6Xr0Tz97dyeu+UAVZQsCgyye+ljLVr5hLZSvE+XTE4lYMJHODVRqhOR71o2twmeaK06gtWFvQWLt84Ysl5TVadsbq7FfdOAdkY8g706xtA/l1Snkp48dtKZAbRXI92TPqav7DmvfD7vYgf5qUrQy9IdqvHx7bgwGAR5sUbtmjSsnDo6wJkX7hcIimpYM6OdPLw0AtU5yQ18JZKI1uP98l8AQybayBbqArMqJ3Sz+XiniIL4FjgCxc1c3IaF6NjmJnVqFxRnbiR4CubIHO6t/5WAuQ82yXz7RU8fNtQ8W8a3qQZjoDPkEyu2kXmEebBTjHY3YUyX3t3QPI0UTFPbWJL8smyI77SmZZ2HUIsTtHr0Brn+7Yo2XPmUjq5y28Q4igJGKgV/dhsmGZHcahjyoKxXRThy4D+L9bNZw9os2p8k9Hp2KocihtITx1Gh1AD7gXoYFVuo09r79s4rX5OYLY6Zmzm3v5G7NRstmkfw0eFKK0Rb7IkM20kF9e6nZKHxyKeGJ8+jen91UC8Ws9wz4ww9ZDfiuMRQTyS6EEOOdZq9w2Uoz7myfpU/0cgJTMC
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(376002)(39860400002)(136003)(346002)(451199024)(186009)(1800799009)(82310400011)(40470700004)(36840700001)(46966006)(40480700001)(4326008)(7416002)(40460700003)(83380400001)(70586007)(16576012)(54906003)(316002)(6916009)(70206006)(478600001)(81166007)(2906002)(8936002)(8676002)(41300700001)(356005)(86362001)(31696002)(44832011)(5660300002)(36860700001)(47076005)(2616005)(82740400003)(6666004)(53546011)(336012)(26005)(426003)(36756003)(31686004)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 13:56:36.9490
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9bf3ec5b-0624-425d-fc3d-08dbb9e16836
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS2PEPF00003447.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5963

On 9/20/23 04:09, Roger Pau Monné wrote:
> On Tue, Sep 19, 2023 at 12:20:39PM -0400, Stewart Hildebrand wrote:
>> On 9/19/23 11:39, Roger Pau Monné wrote:
>>> On Tue, Aug 29, 2023 at 11:19:42PM +0000, Volodymyr Babchuk wrote:
>>>> diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c
>>>> index 8f2b59e61a..a0733bb2cb 100644
>>>> --- a/xen/drivers/vpci/msi.c
>>>> +++ b/xen/drivers/vpci/msi.c
>>>> @@ -318,15 +321,28 @@ void vpci_dump_msi(void)
>>>>                       * holding the lock.
>>>>                       */
>>>>                      printk("unable to print all MSI-X entries: %d\n", rc);
>>>> -                    process_pending_softirqs();
>>>> -                    continue;
>>>> +                    goto pdev_done;
>>>>                  }
>>>>              }
>>>>
>>>>              spin_unlock(&pdev->vpci->lock);
>>>> + pdev_done:
>>>> +            /*
>>>> +             * Unlock lock to process pending softirqs. This is
>>>> +             * potentially unsafe, as d->pdev_list can be changed in
>>>> +             * meantime.
>>>> +             */
>>>> +            read_unlock(&d->pci_lock);
>>>>              process_pending_softirqs();
>>>> +            if ( !read_trylock(&d->pci_lock) )
>>>> +            {
>>>> +                printk("unable to access other devices for the domain\n");
>>>> +                goto domain_done;
>>>
>>> Shouldn't the domain_done label be after the read_unlock(), so that we
>>> can proceed to try to dump the devices for the next domain?  With the
>>> proposed code a failure to acquire one of the domains pci_lock
>>> terminates the dump.
>>>
>>>> +            }
>>>>          }
>>>> +        read_unlock(&d->pci_lock);
>>>>      }
>>>> + domain_done:
>>>>      rcu_read_unlock(&domlist_read_lock);
>>>>  }
>>>>
>>
>> With the label moved, a no-op expression after the label is needed to make the compiler happy:
>>
>>             }
>>         }
>>         read_unlock(&d->pci_lock);
>>  domain_done:
>>         (void)0;
>>     }
>>     rcu_read_unlock(&domlist_read_lock);
>> }
>>
>>
>> If the no-op is omitted, the compiler may complain (gcc 9.4.0):
>>
>> drivers/vpci/msi.c: In function ‘vpci_dump_msi’:
>> drivers/vpci/msi.c:351:2: error: label at end of compound statement
>>   351 |  domain_done:
>>       |  ^~~~~~~~~~~
> 
> 
> Might be better to place the label at the start of the loop, and
> likely rename to next_domain.

That would bypass the loop condition and increment statements.


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 14:18:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 14:18:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605772.943353 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiy20-0007yj-43; Wed, 20 Sep 2023 14:18:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605772.943353; Wed, 20 Sep 2023 14:18:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiy20-0007yc-1X; Wed, 20 Sep 2023 14:18:20 +0000
Received: by outflank-mailman (input) for mailman id 605772;
 Wed, 20 Sep 2023 14:18:18 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7wrp=FE=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qiy1y-0007yU-EN
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 14:18:18 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20613.outbound.protection.outlook.com
 [2a01:111:f400:7eab::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8964f27f-57c0-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 16:18:16 +0200 (CEST)
Received: from MW4PR04CA0077.namprd04.prod.outlook.com (2603:10b6:303:6b::22)
 by BL0PR12MB4964.namprd12.prod.outlook.com (2603:10b6:208:1c7::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Wed, 20 Sep
 2023 14:18:11 +0000
Received: from CO1PEPF000044F1.namprd05.prod.outlook.com
 (2603:10b6:303:6b:cafe::ef) by MW4PR04CA0077.outlook.office365.com
 (2603:10b6:303:6b::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.30 via Frontend
 Transport; Wed, 20 Sep 2023 14:18:11 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CO1PEPF000044F1.mail.protection.outlook.com (10.167.241.71) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Wed, 20 Sep 2023 14:18:11 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 20 Sep
 2023 09:18:10 -0500
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 20 Sep 2023 09:18:09 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8964f27f-57c0-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XpCRpooaEAXaAqFDt2gUtgeGcCTUYpNtbfDwAOweUM7+PXd47FDOCW5sZhHvr+Glb8/ThZfPkTbfGKvndCrlL6y0hVCqR/XCYn0AifABlEubp5dT7qwO+SO7QotNs4D8zIfm1CvxJBZO5o1itEAUr2INf7ES2qBGxMDBQyfViQ+O9qt1BFhPXSTZwCRnithcBrCzJuIa7JCrUbf3NGybi4o3BySBugaj96DrKMYdiVEs6WvBnXGkiilwzWhBVc6TB5TOmXf0/0eD6lucglMOm5SUFubaTNnes5phNeSL4OuCHyqpKTQOyi57NlEs9AU2UUaZkGNJidUTUtZ80kw/LQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AOkWYrKVa4rWt3ZBaP3oVAkeSEsIxBth2zVbNviXskI=;
 b=jcJ22Ng7qJahYZo4Qa6SSzZX548QT6GXN9nf2BFulFrO3xMs3rktdC2s4Qt/P0xgiqGzoI7bvOEEaAispfSujQ3+5hRNpCo2S0uAycEQXkZTUFihx9Ir27a5PUSTaznkXFFN/YtvHzk39r8hTFquJjjug075AOwqCxZ1QIB4XvMbMIKk8W+ye+cIbXE9ohdbjS7XaKYYbQQfKzWzvxjAJIulKnH2VTT8A9w7YSYnv4M5l76fT8uA55oeAS7+r7Dn7gflwX5YkWakKwvCSTG7Pcfj55qOashAtN9aqhHssXWYfG0ULGMK3N9m5h3It3Nj8IZh3DHFG4umFWJtQ2fsxw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=citrix.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AOkWYrKVa4rWt3ZBaP3oVAkeSEsIxBth2zVbNviXskI=;
 b=ZWkNiscrkW2ka5v0Vo4HaWqxjTZEOE92gktQlCnFf77QR0QPqqo8rdv1JCz6lh0IWMNuKLzfO8DvhF++L3YJJS7ZAtURr1jDaqY5ZQcwe9YbgZ3nPhGVBl/I1zhxlUh++hE0rP7KruQHDUWYHBCtBZExsq6xo3mMgyJzE3/Am04=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <dfe31cee-8cc5-0ae1-dd23-f96bd6f00427@amd.com>
Date: Wed, 20 Sep 2023 10:18:08 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v9 06/16] vpci/header: implement guest BAR register
 handlers
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-7-volodymyr_babchuk@epam.com>
 <ZQrAK-XgKQwEPVED@MacBookPdeRoger>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <ZQrAK-XgKQwEPVED@MacBookPdeRoger>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044F1:EE_|BL0PR12MB4964:EE_
X-MS-Office365-Filtering-Correlation-Id: 720acdeb-b10e-47e5-359e-08dbb9e46baf
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/FgtsQkplXbrwBMLdKEmLdJxb71Dir4m7hOeXq/jrmdzo8/6wALtBU5QD2k3V/E+Iv6clNGbDYaRaK0YPi9dOpKbusjZiVBING7q4GCjJavCti2jCo6wx01LnGXaAO7aZbIYp3WO/j/5f0d5DZP4AE5mHeuk4lwhgqhynRxOAerE0kmr8wYUMFzEKwEV/OJr/E9sRZYxwqxh18mv21X4RY5uvDetwWK1GVIV5zAMcrD/6POqvZwzfj6HAO/iJcEDgRA9lqKuafT3uOimit6B9InuLQABz7E4+nkTD0Bs0RverFUNw2BMpFAovkj3OIkHcLd3pFeVORgnBQi8KmBU8YsWuIKeA2yb2CQFykTZqPb/zlUrvBk8Fno39iQX6bRajdtNbuSpdsVMVE9ovfCdIS6hQpSpU7hm8OWIf9l5VfHNKLYqH091pPCqR35Hi5cuQOGhGgue6WJAMEyi7t3X7MPzZEloUBsVTYYHOpK9FPkLgnLAGqNuTQnp79qeztUuQteMRhAE1Nu0fEYhSk4djUUagga4KklVov38XWOcmPMOoJLeSokksWjRVa40g4jAiH71+FtAxL7/EQZ0j2rbcXT+T1w3qtsXgjHFaM/BwgtFtPYNGp6UBWcU2nc/nA6A4rLDmYZxfWoY5nT/aDYr+OTQD1debL/PLQJ7xL0qIn3s3rGYlOQja3x5mbyqYUJeB89j7gO9YgWGewdFAFI/LXzlofBoqBMLiK+V7PEUp3CxqzXf+ppsa38pw59YafyemAS0tMlzmQ41sxSwPo6q73VDGEkapteTngfjzKU3ml4=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(346002)(39860400002)(136003)(376002)(82310400011)(1800799009)(186009)(451199024)(46966006)(40470700004)(36840700001)(53546011)(478600001)(8936002)(8676002)(44832011)(70586007)(31686004)(70206006)(966005)(16576012)(110136005)(316002)(54906003)(5660300002)(40460700003)(2616005)(36860700001)(36756003)(82740400003)(31696002)(86362001)(40480700001)(4326008)(47076005)(2906002)(4744005)(336012)(26005)(41300700001)(426003)(81166007)(356005)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 14:18:11.1977
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 720acdeb-b10e-47e5-359e-08dbb9e46baf
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000044F1.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR12MB4964

On 9/20/23 05:49, Roger Pau Monné wrote:
> On Tue, Aug 29, 2023 at 11:19:43PM +0000, Volodymyr Babchuk wrote:
>> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
>> index e58bbdf68d..e96d7b2b37 100644
>> --- a/xen/drivers/vpci/header.c
>> +++ b/xen/drivers/vpci/header.c
>> +static uint32_t cf_check empty_bar_read(const struct pci_dev *pdev,
>> +                                        unsigned int reg, void *data)
>> +{
>> +    return 0;
>> +}
> 
> If we are going to gain a lot of helpers that return a fixed value it
> might be worthwhile to introduce a helper that returns what gets
> passed as 'data'.  Let's leave it as you propose for now.

For future reference, I introduce such a helper in the vPCI capabilities filtering series [1]. If that series happens gets committed before this one, it could be worthwhile making the switch. But since the helper is not upstream yet, +1 for leaving as is for now.

[1] https://lists.xenproject.org/archives/html/xen-devel/2023-09/msg00796.html


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 14:44:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 14:44:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605778.943363 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiyRS-0005bg-6s; Wed, 20 Sep 2023 14:44:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605778.943363; Wed, 20 Sep 2023 14:44:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiyRS-0005bZ-46; Wed, 20 Sep 2023 14:44:38 +0000
Received: by outflank-mailman (input) for mailman id 605778;
 Wed, 20 Sep 2023 14:44:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=KFvK=FE=aim.com=brchuckz@srs-se1.protection.inumbo.net>)
 id 1qiyRR-0005bT-5I
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 14:44:37 +0000
Received: from sonic310-21.consmr.mail.gq1.yahoo.com
 (sonic310-21.consmr.mail.gq1.yahoo.com [98.137.69.147])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3522054f-57c4-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 16:44:32 +0200 (CEST)
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic310.consmr.mail.gq1.yahoo.com with HTTP; Wed, 20 Sep 2023 14:44:30 +0000
Received: by hermes--production-ne1-6cbd549489-84thk (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 25f55bca556ea028f0a42f54df88281a; 
 Wed, 20 Sep 2023 14:44:25 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3522054f-57c4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aol.com; s=a2048; t=1695221070; bh=XijLq0YSqnbK496MfIb79/fWIh7B6yNruOyf40BE6qc=; h=Date:From:Subject:To:Cc:References:In-Reply-To:From:Subject:Reply-To; b=T6Nuia+7IYdO/N2oL/i18bxl8UOwMZVVLrgCCjw9cbNSwqVvGU3phLdUVT6lvZkxGJm90IXjaAFSRMB+/of4Y/tVLajBvwFJmWZ8wQm45ZlKAIeUb2clwB4B6YBFpfDoUNjvF0rcKHAAUZ3ja0l5dMUH8jIwvWGddOOQiNMQoeFfkc356yvb9GUwbBC6ic0tL8vjUkupUpes/RnPgiV6BoFz6ZtelK6bVNtOCQhUi3PdGvrXmz/Q1heajgF+KyB3qmcF8ZOVRTvUFAv30/q08Gs/BLhgbZ9dE1G0xs4R0oB3J1oFFWlpUWg5J6K5aW6U/z86jfpNunIgcl9/clhzWg==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1695221070; bh=4c4lC1v68u+I+Wt7Cuj9L2lAfhigVlQETv6LsH3QlSV=; h=X-Sonic-MF:Date:From:Subject:To:From:Subject; b=gS2jmeS/FgPGusT0zwC/Dh59Ardkfg0Kr5uEfU499BFGo30ntSNSZQW8p3uW0ZYGyawxpEUSq9oucjbABdOgh0jFhPsGDA3sDeMlXP3o/ser+yIgaxxHmpxC3UClhdigcyZjTRfrHpsm71GHX7B1WbKB7p2pC6w349Y9fp/Mj6mC1Brj6tldJhOP9+pTPrewO9D9E6CDeYLMOBXvduH0YuqbTrx8iZ8ukuEZ6Eil9CKzk5er3EcwXulUqfGQ7UpEISgjujAv9Deh/nkAEBFZhkaXr7JGX1ghtSKDbAtGv76AaCCPPBb2seUltnVhZ1lPLLkPJuFxhrTpfgNUm/kLyA==
X-YMail-OSG: AU922YAVM1l6OB7xoRirelMQZYVALkclBUK8gX196Cec0Q38m1glfY1uYRZkP5d
 tiX2sCjVl5Urp9n1B8ivdvzgaIHXXKfAioBUayzEb6nwUPtZ4v0MfouDVkBf0NXCJoMf0tUnE7Zb
 BgtynytOsY.qaGo6b1Nw4NX.mmaI1bJ1K7UbMIOWADV5mUGl75RWk0uyIfO1EU.5OfMB5ZQOEL5l
 oQaMbBJ8oCuioBZKuPJV4SR5rt9JWK7hNRhug7qPQ0ngQKM5XiJhzE7DNjNXLmwG7e0Oy.2A8h1a
 .5_N5bMoEVWPry5YyxaPFjfnNo6h.KCeI7gcV9i0imZYO665VJnXVuMjYoRTPbcgfNGQyPkFCPzu
 1X3Q2bbG0d1weTzmUkPcYmevT3ddq2Cx6usKwLmS.sKrfxZ4UyWPUWFp1kw7FdRadGkZqMmxe_Vv
 u_q2hVtle4K2Yo03Bv7B.AKYGxluBXtgDhn_pKTD6VBhKKCL4hCFZ_BLhrMvkTjvCrHODGZK3d0A
 OcYQRIHSlw2gSc1u7o0TTLFIpW7bSvc6vPj5N_m9KxvGwNgub_e065rTMPcaimGlVJrb.Oh0pqym
 rnUWM51NUq0H_..q4GpeHix69zJKphNXgLzr1TefFVGjBj7IebJ6vs4qnsRfPGr0UMPTyjMHx1Eh
 e570YyuXmn2uMa0OrlJFu9_PC6TCGY5_fI.3JzY4MoPI8EIaJvdJBGm6Gxnnq5vbRSDdAl6Y4vvg
 yQxUorQCUECCOt8UpzC6fFU893o7eE_wxHx2Jj0P3qx8KdoBh9gkUxQLL90z8Mdg.DA.tf8pUwdY
 QnfYOrIS3odmgiuwkOSe9b83n6S.MhiDKr4E1Biqihv_0.yuWen4LIhVkKZEpLMMHJcM1OJvQwUO
 kYktyQma_FmrPPhoTaWaw9ziWl7sSYvO6aIGfHwekwV2mpItaRauy8LwQHn2H0jPd3QwLZug1BiV
 RGIAj7xDvOrxRKZD7tCTUOEw5dm1Cb.R3doZMKkHsNF91Z8w0Efu27o2ZYwQ6hWXc7OwQ6_L4PIU
 QL7cLjWsJs6aO9wDyxWWRwjXFlJf1V1eQwAm_4AtjVJuRW9kCQdJRLYsWeGNCHrbMnI4pOF8T1Ul
 50Z3BzUxjjDkmVs8ibPZ1A56B6YUPHwnS0HgRAMeN4NtkjZ67KiGNbDA12rxXnLzdVeBoCrxzHu9
 l_Faq_J.cD6F12t_gbn5GlTpgWKvgywf7JpRDKPIbMF9g3o9iFEiO5RlcZkcVkuv4pbbNX9dA3nD
 0MskXloyNnvVyJUR3VqJh4d1XRWMg4qIXIDFX2v8NWwqiohN4mUodQj8dFETXJRsBBVuemryqiCv
 F5UqEr8BUDySfnYfXwe8iFWVIKr8Oe4i1n5FwJ2AT_g.JTtvEYvpKc0fdLvpFcXxYoeBH1lHBe7v
 mxSA.HlLxDvQSF7Us46syvM9yVHVbHvQw8jqRM_eVvSLEdX5ebW9wiQsSmri5rqN1A.V5YHbodag
 hXV5Bpk6o9nZ5dOxuLa.2rc7qMsCvKrksu2PXHE.zLnEL4HZFac9kAIfFeTBhIaRiHp2SladMhXL
 S5CHi9t.6m44Yf7QpR5gb6JHYeFOYZtAhzRdSk5HuOkV2X0VJBEL0QaZB0IsTCnoUDdgeDbjpd5h
 hd0JeM95i7yZs1mwV2CM.8W6VoLEK43f4mbwl1CQZ6Se5B5KyycBq3cnmZI_UcO.7dsrgYY_j4VV
 FScynXEM.qxg2dACE.rVUO1UUWRLxbzKpPeJziXiHih3OQgyf_FEEk1_oN9CyfpAsO7ChVaDE1aI
 rW7Ykh8GoCR_3r5kuvgtNUOOtqCNaSMnjpWI2IGlGNdL3Tc3A3a3x7lLjjWAh7u71ZpM9uqTucJo
 BUUB6qG29KgzGRggMIpPfJrwSCxYsejUDU3IWIn6nXdiU8Dw2QDWEVHyLbaLpFgqNVislDcZgSkE
 OYR16XddgLtfTuZq9Wh7tLwgZBBYn4Zaa3IxSIjmCwlLrzTX7NVcdW1PN6aitwPIp.N3HpVfDG8E
 GMXgql6CszcOaw2LKrw3KrsXdqIcwkpFStL.xTxIshFvW5Z198kV6ODOlDZjPM61c20rJkIBhXrG
 8XMTNbQo76t3.G8oJiRaXkq7DQt1_mi37Yt0NuBBRMxsGDidLLbC_RSmSeipvtnl3qQaYPJylwJ.
 WUpqRa0jgNrN0DBn6tiM5uS3xcQ6nmWJFWKAF7UwZTvWNXjodKOUOQsFyM_FCnhNyA1iwV6ozAf5
 mdVw1Ibs3lT2Th24UC55DcLWKo4PTa8Y-
X-Sonic-MF: <brchuckz@aim.com>
X-Sonic-ID: e5e70465-c2df-41c0-81bf-a8fcd2dc0a37
Message-ID: <6cd8d49f-2b69-471c-84b7-890f31f585b5@aol.com>
Date: Wed, 20 Sep 2023 10:44:23 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Chuck Zmudzinski <brchuckz@aol.com>
Subject: Re: [PATCH v3 2/6] hw/isa/piix3: Reuse piix3_realize() in
 piix3_xen_realize()
To: Bernhard Beschow <shentey@gmail.com>, Jason Andryuk <jandryuk@gmail.com>,
 Anthony PERARD <anthony.perard@citrix.com>
Cc: qemu-devel@nongnu.org, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Paolo Bonzini <pbonzini@redhat.com>, David Woodhouse <dwmw@amazon.co.uk>,
 =?UTF-8?Q?Herv=C3=A9_Poussineau?= <hpoussin@reactos.org>,
 Aurelien Jarno <aurelien@aurel32.net>, Eduardo Habkost
 <eduardo@habkost.net>, Paul Durrant <paul@xen.org>,
 xen-devel@lists.xenproject.org, "Michael S. Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Richard Henderson <richard.henderson@linaro.org>,
 =?UTF-8?Q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>
References: <20230312120221.99183-1-shentey@gmail.com>
 <20230312120221.99183-3-shentey@gmail.com>
 <f52c41f7-e662-4afd-8ac9-ce2c0da2b1be@perard>
 <7F45B51F-F1E3-4F04-A46F-4C80509C7195@gmail.com>
 <622b9674-fffd-4634-ac30-d0db3230478e@perard>
 <CAKf6xpvxf=F52etJ8o3eLQV4JVD5WM57znGoP3ctONRf7uPisA@mail.gmail.com>
 <B0FF78F4-1193-495B-919C-84A1FF8ADF12@gmail.com>
Content-Language: en-US
In-Reply-To: <B0FF78F4-1193-495B-919C-84A1FF8ADF12@gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Mailer: WebService/1.1.21797 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.aol
Content-Length: 3057

On 9/19/2023 4:02 PM, Bernhard Beschow wrote:
> 
> 
> Am 3. April 2023 12:27:14 UTC schrieb Jason Andryuk <jandryuk@gmail.com>:
>>On Mon, Apr 3, 2023 at 5:33 AM Anthony PERARD <anthony.perard@citrix.com> wrote:
>>>
>>> On Sat, Apr 01, 2023 at 10:36:45PM +0000, Bernhard Beschow wrote:
>>> >
>>> >
>>> > Am 30. März 2023 13:00:25 UTC schrieb Anthony PERARD <anthony.perard@citrix.com>:
>>> > >On Sun, Mar 12, 2023 at 01:02:17PM +0100, Bernhard Beschow wrote:
>>> > >> This is a preparational patch for the next one to make the following
>>> > >> more obvious:
>>> > >>
>>> > >> First, pci_bus_irqs() is now called twice in case of Xen where the
>>> > >> second call overrides the pci_set_irq_fn with the Xen variant.
>>> > >
>>> > >pci_bus_irqs() does allocates pci_bus->irq_count, so the second call in
>>> > >piix3_xen_realize() will leak `pci_bus->irq_count`. Could you look if
>>> > >pci_bus_irqs_cleanup() can be called before the second pci_bus_irqs()
>>> > >call, or maybe some other way to avoid the leak?
>>> >
>>> > Thanks for catching this! I'll post a v4.
>>> >
>>> > I think the most fool-proof way to fix this is to free irq_count just before the assignment. pci_bus_irqs_cleanup() would then have to NULL the attribute such that pci_bus_irqs() can be called afterwards.
>>> >
>>> > BTW: I tried running qemu-system-x86_64 with PIIX4 rather than PIIX3 as Xen guest with my pc-piix4 branch without success. This branch essentially just provides slightly different PCI IDs for PIIX. Does xl or something else in Xen check these? If not then this means I'm still missing something. Under KVM this branch works just fine. Any idea?
>>>
>>> Maybe the ACPI tables provided by libxl needs to be updated.
>>> Or maybe something in the firmware (SeaBIOS or OVMF/OvmfXen) check the
>>> id (I know that the PCI id of the root bus is checked, but I don't know
>>> if that's the one that's been changed).
>>
>>Xen also has hvmloader, which runs before SeaBIOS/OVMF.  Looking at
>>tools/firmware/hvmloader/pci.c, it has
>>        ASSERT((devfn != PCI_ISA_DEVFN) ||
>>               ((vendor_id == 0x8086) && (device_id == 0x7000)));
>>
>>From QEMU, it looks like 0x7000 is PCI_DEVICE_ID_INTEL_82371SB_0, but
>>PIIX4 uses 0x7110 (PCI_DEVICE_ID_INTEL_82371AB_0).  Maybe try removing
>>that check?
> 
> I was finally able to build Xen successfully (without my distribution providing too recent dependencies that prevent compilation). With 0x7110 added in the line above I could indeed run a Xen guest with PIIX4. Yay!
> 
> Now I just need to respin my PIIX consolidation series...

Welcome to the world of running guests on Xen! I am the one who tested your earlier patches with Xen guests, and I just wanted to say thanks for keeping me in the loop. Please Cc me when you post your respin of the PIIX consolidation series since I would like to also test it in my Xen environment. I understand I will also need to patch hvmloader.c on the Xen side to set the correct device id.

Kind regards,

Chuck

> 
> Best regards,
> Bernhard
> 
>>
>>Regards,
>>Jason



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 14:53:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 14:53:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605783.943373 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiyaD-0008Q9-0S; Wed, 20 Sep 2023 14:53:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605783.943373; Wed, 20 Sep 2023 14:53:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiyaC-0008Q2-Te; Wed, 20 Sep 2023 14:53:40 +0000
Received: by outflank-mailman (input) for mailman id 605783;
 Wed, 20 Sep 2023 14:53:39 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=GbOY=FE=infradead.org=peterz@srs-se1.protection.inumbo.net>)
 id 1qiyaA-0008Pu-Jv
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 14:53:39 +0000
Received: from casper.infradead.org (casper.infradead.org
 [2001:8b0:10b:1236::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 79c22d9c-57c5-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 16:53:37 +0200 (CEST)
Received: from j130084.upc-j.chello.nl ([24.132.130.84]
 helo=noisy.programming.kicks-ass.net)
 by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux))
 id 1qiyZT-006Oz0-BC; Wed, 20 Sep 2023 14:52:55 +0000
Received: by noisy.programming.kicks-ass.net (Postfix, from userid 1000)
 id 04996300348; Wed, 20 Sep 2023 16:52:55 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 79c22d9c-57c5-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version:
	References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=GyiHhTkxOm0E3nJZzmdSc55EE6M80FFoZ8Fg8eF69QI=; b=qal6/LGdy1+KLISPaYnZD8Qx03
	0sPsW4Hb98j/QISugyJf8X+fjehOvS9Ll09sNhQBGt4zYCqJLS05+5zcypr1lxzUUBMMzVD94e3dM
	WsEbCy3MXmjjSIbGTjummdcpDaTg/Q5P6+27Ache2MDt+PDg7wvaaYBxEqYwmH7IH6z3v4Nrab3kH
	jumgDPBEh8iwGY7QxhMaZVdU9o7YOZ+lp8opCiziKvMXLydIfARsPghjuMR+QFMMUTvGJiINVUWkL
	bzeShoJxnjyr3LqxNC1fTfMdieOivUFEv0jhy8CMnJm5sqI4skd6Rbs5aAGT9J8EfMFToJBwbaylz
	Z9nmpmCw==;
Date: Wed, 20 Sep 2023 16:52:54 +0200
From: Peter Zijlstra <peterz@infradead.org>
To: Juergen Gross <jgross@suse.com>
Cc: linux-kernel@vger.kernel.org, x86@kernel.org,
	virtualization@lists.linux-foundation.org, kvm@vger.kernel.org,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"H. Peter Anvin" <hpa@zytor.com>,
	"Srivatsa S. Bhat (VMware)" <srivatsa@csail.mit.edu>,
	Alexey Makhalov <amakhalov@vmware.com>,
	VMware PV-Drivers Reviewers <pv-drivers@vmware.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Wanpeng Li <wanpengli@tencent.com>,
	Vitaly Kuznetsov <vkuznets@redhat.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	xen-devel@lists.xenproject.org
Subject: Re: [RFC PATCH 1/3] x86/paravirt: move some functions and defines to
 alternative
Message-ID: <20230920145254.GC6687@noisy.programming.kicks-ass.net>
References: <20230608140333.4083-1-jgross@suse.com>
 <20230608140333.4083-2-jgross@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230608140333.4083-2-jgross@suse.com>

On Thu, Jun 08, 2023 at 04:03:31PM +0200, Juergen Gross wrote:
> As a preparation for replacing paravirt patching completely by
> alternative patching, move some backend functions and #defines to
> alternative code and header.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 15:01:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 15:01:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605789.943383 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiyhJ-0002KE-RI; Wed, 20 Sep 2023 15:01:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605789.943383; Wed, 20 Sep 2023 15:01:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiyhJ-0002K7-NI; Wed, 20 Sep 2023 15:01:01 +0000
Received: by outflank-mailman (input) for mailman id 605789;
 Wed, 20 Sep 2023 15:01:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=GbOY=FE=infradead.org=peterz@srs-se1.protection.inumbo.net>)
 id 1qiyhI-0002Jz-9h
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 15:01:00 +0000
Received: from desiato.infradead.org (desiato.infradead.org
 [2001:8b0:10b:1:d65d:64ff:fe57:4e05])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 80cc9386-57c6-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 17:00:57 +0200 (CEST)
Received: from j130084.upc-j.chello.nl ([24.132.130.84]
 helo=noisy.programming.kicks-ass.net)
 by desiato.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux))
 id 1qiygf-00Efi6-1Z; Wed, 20 Sep 2023 15:00:24 +0000
Received: by noisy.programming.kicks-ass.net (Postfix, from userid 1000)
 id 8FF67300348; Wed, 20 Sep 2023 17:00:22 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 80cc9386-57c6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=infradead.org; s=desiato.20200630; h=In-Reply-To:Content-Type:MIME-Version:
	References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To:
	Content-Transfer-Encoding:Content-ID:Content-Description;
	bh=rWkB7EDNng9M39a7Z5ofZ+3H/5SPbGNHhMrFP2dtGbY=; b=gbBwTJ41KAmMXmjfJHdJuM7m3X
	hExgqa3hFHE8oGJcBGAwWV1T/3bCar8Q/4J6kCFh3lPc6C1w5JSzk0t/sppfTeuOuPqbkwJYbcQCA
	Msu0ZRdMcoOovrESWX3e875PmIMIBSrS4FtQ6mkCe/JdrliuRxauJrt0MJcZjPdo7EqSm+fAmOhwe
	trz1GroFYHwCKDYsYL97k/F/mFR5NvDSXdmntjJExEs8ifO6+1NTZod2ifPXoYaZVSZxEMeqngWfs
	NrrhUFV7r0Gl9W5Rr7JEAOnQhVOOIU0Ua8nWwf0A1uLrrKzCuLGBjfkYGwTe+kgu4Pq9ruGUQXJ33
	qvYYaX6A==;
Date: Wed, 20 Sep 2023 17:00:22 +0200
From: Peter Zijlstra <peterz@infradead.org>
To: andrew.cooper3@citrix.com
Cc: "H. Peter Anvin" <hpa@zytor.com>, Thomas Gleixner <tglx@linutronix.de>,
	Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org, mingo@redhat.com, bp@alien8.de,
	dave.hansen@linux.intel.com, x86@kernel.org, luto@kernel.org,
	pbonzini@redhat.com, seanjc@google.com, jgross@suse.com,
	ravi.v.shankar@intel.com, mhiramat@kernel.org,
	jiangshanlai@gmail.com
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Message-ID: <20230920150022.GH424@noisy.programming.kicks-ass.net>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com>
 <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
 <0e7d37db-e1af-ac40-6eca-5565d1bebcde@zytor.com>
 <6575702e-fea5-61b2-dd61-7b556a8603e8@citrix.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <6575702e-fea5-61b2-dd61-7b556a8603e8@citrix.com>

On Fri, Sep 15, 2023 at 02:16:50AM +0100, andrew.cooper3@citrix.com wrote:

> Juergen has already done the work to delete one of these two patching
> mechanisms and replace it with the other.
> 
> https://lore.kernel.org/lkml/a32e211f-4add-4fb2-9e5a-480ae9b9bbf2@suse.com/
> 
> Unfortunately, it's only collecting pings and tumbleweeds.

Fixed that...


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 15:04:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 15:04:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605795.943392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiykH-00037b-4a; Wed, 20 Sep 2023 15:04:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605795.943392; Wed, 20 Sep 2023 15:04:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qiykH-00037U-24; Wed, 20 Sep 2023 15:04:05 +0000
Received: by outflank-mailman (input) for mailman id 605795;
 Wed, 20 Sep 2023 15:04:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=NUdD=FE=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qiykF-00037J-Ad
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 15:04:03 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ef1ef802-57c6-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 17:04:02 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 863A820121;
 Wed, 20 Sep 2023 15:04:01 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id EABDF132C7;
 Wed, 20 Sep 2023 15:04:00 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id UheJN+AJC2X5NwAAMHmgww
 (envelope-from <jgross@suse.com>); Wed, 20 Sep 2023 15:04:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ef1ef802-57c6-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695222241; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=jhwvy1bp86gje66T0zgnWteCCUaFAwIi1HMTZqN1nBg=;
	b=f9zvoVoNuvOSHxLREISRnzT5i9A//F5vt7Ap/fL4304tzIw5FJKLFL5MilulzsAplsV2Fn
	ME77Wyz8yooq4qOByF1O9GWewSFQme/OGbnXDH+GTQU/u2sYFYvYqN2amcMNxM9hEr80Dw
	EB0ddYipgwItpQKLEmq8VM0Y0TKK9w8=
Message-ID: <60901bed-9101-4545-b8f8-30110c57b5f7@suse.com>
Date: Wed, 20 Sep 2023 17:04:00 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Content-Language: en-US
To: Peter Zijlstra <peterz@infradead.org>, andrew.cooper3@citrix.com
Cc: "H. Peter Anvin" <hpa@zytor.com>, Thomas Gleixner <tglx@linutronix.de>,
 Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, ravi.v.shankar@intel.com,
 mhiramat@kernel.org, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
 <0e7d37db-e1af-ac40-6eca-5565d1bebcde@zytor.com>
 <6575702e-fea5-61b2-dd61-7b556a8603e8@citrix.com>
 <20230920150022.GH424@noisy.programming.kicks-ass.net>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <20230920150022.GH424@noisy.programming.kicks-ass.net>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------RVpxGTyREcthBDWOR8O1ivR5"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------RVpxGTyREcthBDWOR8O1ivR5
Content-Type: multipart/mixed; boundary="------------C07rRAI3IhEhj8qtRuziLenv";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Peter Zijlstra <peterz@infradead.org>, andrew.cooper3@citrix.com
Cc: "H. Peter Anvin" <hpa@zytor.com>, Thomas Gleixner <tglx@linutronix.de>,
 Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, ravi.v.shankar@intel.com,
 mhiramat@kernel.org, jiangshanlai@gmail.com
Message-ID: <60901bed-9101-4545-b8f8-30110c57b5f7@suse.com>
Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx>
 <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com>
 <0e7d37db-e1af-ac40-6eca-5565d1bebcde@zytor.com>
 <6575702e-fea5-61b2-dd61-7b556a8603e8@citrix.com>
 <20230920150022.GH424@noisy.programming.kicks-ass.net>
In-Reply-To: <20230920150022.GH424@noisy.programming.kicks-ass.net>

--------------C07rRAI3IhEhj8qtRuziLenv
Content-Type: multipart/mixed; boundary="------------E2bQmzXzNCZykNFZVGazG22b"

--------------E2bQmzXzNCZykNFZVGazG22b
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjAuMDkuMjMgMTc6MDAsIFBldGVyIFppamxzdHJhIHdyb3RlOg0KPiBPbiBGcmksIFNl
cCAxNSwgMjAyMyBhdCAwMjoxNjo1MEFNICswMTAwLCBhbmRyZXcuY29vcGVyM0BjaXRyaXgu
Y29tIHdyb3RlOg0KPiANCj4+IEp1ZXJnZW4gaGFzIGFscmVhZHkgZG9uZSB0aGUgd29yayB0
byBkZWxldGUgb25lIG9mIHRoZXNlIHR3byBwYXRjaGluZw0KPj4gbWVjaGFuaXNtcyBhbmQg
cmVwbGFjZSBpdCB3aXRoIHRoZSBvdGhlci4NCj4+DQo+PiBodHRwczovL2xvcmUua2VybmVs
Lm9yZy9sa21sL2EzMmUyMTFmLTRhZGQtNGZiMi05ZTVhLTQ4MGFlOWI5YmJmMkBzdXNlLmNv
bS8NCj4+DQo+PiBVbmZvcnR1bmF0ZWx5LCBpdCdzIG9ubHkgY29sbGVjdGluZyBwaW5ncyBh
bmQgdHVtYmxld2VlZHMuDQo+IA0KPiBGaXhlZCB0aGF0Li4uDQoNClRoYW5rcy4gOi0pDQoN
Cg0KSnVlcmdlbg0K
--------------E2bQmzXzNCZykNFZVGazG22b
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------E2bQmzXzNCZykNFZVGazG22b--

--------------C07rRAI3IhEhj8qtRuziLenv--

--------------RVpxGTyREcthBDWOR8O1ivR5
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmULCeAFAwAAAAAACgkQsN6d1ii/Ey8x
ugf/XVkGaQBYLrzcVnRMf46PQbRj6BvHUsCw4UR+1iqNi9DicNgvlw5k6IXjInLXXt60rakJtdIq
n2IR1/UQGQ+zovM3O228k33+2WUY/qBMGeq/LjJ7fBgx1YXfKyuZAx2XNE16AqsSMdJEqoJxpjZQ
mqO7NHVGtG+ZEQyaBtCP5BsygXEQmawzgdCdlt06+QBY4f7F45F/i1qLrfM26PeTXv4A9Iq8q8oP
vgKTQ2uuxInOPp7uZ9NuXjtQnFMPgE5FmPk5Iopjysr6ZPkWGLll4ifOZOHRUPobMpri26vaJ0fS
36SWqXNfEICWqe67J3W7fp5xiupWGwnn5+wAHnCSEQ==
=doxl
-----END PGP SIGNATURE-----

--------------RVpxGTyREcthBDWOR8O1ivR5--


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 15:49:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 15:49:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605805.943405 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qizRa-0004RU-Jn; Wed, 20 Sep 2023 15:48:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605805.943405; Wed, 20 Sep 2023 15:48:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qizRa-0004RN-HH; Wed, 20 Sep 2023 15:48:50 +0000
Received: by outflank-mailman (input) for mailman id 605805;
 Wed, 20 Sep 2023 15:48:48 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qizRY-0004RD-DG; Wed, 20 Sep 2023 15:48:48 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qizRY-00018j-1h; Wed, 20 Sep 2023 15:48:48 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qizRX-00042b-Km; Wed, 20 Sep 2023 15:48:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qizRX-00041i-Jj; Wed, 20 Sep 2023 15:48:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=G1a0JCUr1CQ1qSXnwTrnQwq61BvPZtYFEksJWzh4jE4=; b=bttE3P99WOrX/FHMpaBXpaIZz3
	5b3xeRI4fZymRNi/g/aUaHcpayeFZLtVw2f0pY8hCvjeniNLWYk6C/qqrRIZg3UG65ZhoiSKTPR2Q
	8ms5qGUSOGbhsLZ1+9x2NpjtYi/ekwOq5QEqgNTP8DoHOvFZj9jH0cgOzQDGJAoq/OB0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183075-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183075: tolerable FAIL - PUSHED
X-Osstest-Failures:
    libvirt:test-arm64-arm64-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    libvirt:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:heisenbug
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=b74fd210b37bfb31dc1e4b99fa64849d0f91541e
X-Osstest-Versions-That:
    libvirt=732c5f42704259b239f9533c31d43799054f184b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 20 Sep 2023 15:48:47 +0000

flight 183075 libvirt real [real]
flight 183086 libvirt real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183075/
http://logs.test-lab.xenproject.org/osstest/logs/183086/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-arm64-arm64-libvirt-qcow2 17 guest-start/debian.repeat fail pass in 183086-retest
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail pass in 183086-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183048
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183048
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183048
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              b74fd210b37bfb31dc1e4b99fa64849d0f91541e
baseline version:
 libvirt              732c5f42704259b239f9533c31d43799054f184b

Last test of basis   183048  2023-09-19 04:18:53 Z    1 days
Testing same since   183075  2023-09-20 04:21:45 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Erik Skultety <eskultet@redhat.com>
  Jim Fehlig <jfehlig@suse.com>
  Jonathon Jongsma <jjongsma@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   732c5f4270..b74fd210b3  b74fd210b37bfb31dc1e4b99fa64849d0f91541e -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 16:26:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 16:26:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605813.943415 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj01R-0003yu-8J; Wed, 20 Sep 2023 16:25:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605813.943415; Wed, 20 Sep 2023 16:25:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj01R-0003yn-5l; Wed, 20 Sep 2023 16:25:53 +0000
Received: by outflank-mailman (input) for mailman id 605813;
 Wed, 20 Sep 2023 16:25:52 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=KN1t=FE=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qj01P-0003yh-Ve
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 16:25:51 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5bf25cb2-57d2-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 18:25:49 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id E4C994EE073F;
 Wed, 20 Sep 2023 18:25:48 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5bf25cb2-57d2-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Wed, 20 Sep 2023 18:25:48 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <jbeulich@suse.com>, consulting@bugseng.com, Stefano
 Stabellini <sstabellini@kernel.org>, Andrew Cooper
 <andrew.cooper3@citrix.com>, roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 George Dunlap <george.dunlap@citrix.com>
Subject: New MISRA C:2012 R10.3 violations due to XSA-438 fix
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <94f7aad4a3e6629fe947883ab0fca53f@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

Hi all,

In light of the recent changes introduced by commit 
fb0ff49fe9f784bfee0370c2a3c5f20e39d7a1cb,
as part of XSA-438 [1], the signature of function pointer 'update_cr3' 
in
'xen/arch/x86/include/asm/paging.h', line 121, changed its second 
parameter to a boolean.
Consequently, all calls to that function should use a boolean to comply 
with MISRA C:2012
Rule 10.3 ("The value of an expression shall not be assigned to an 
object with a narrower
essential type or of a different essential type category"), but they 
still use integers.
These were the ones I can find:
xen/arch/x86/include/asm/paging.h:299:    return 
paging_get_hostmode(v)->update_cr3(v, 1, noflush);
xen/arch/x86/mm/hap/hap.c:797:    hap_update_cr3(v, 0, false);
xen/arch/x86/mm/shadow/common.c:2513:    
v->arch.paging.mode->update_cr3(v, 0, false);
xen/arch/x86/mm/shadow/multi.c:2478:        
v->arch.paging.mode->update_cr3(v, 0, false);

[1] 
https://lore.kernel.org/xen-devel/E1qitNQ-0001Pu-0K@xenbits.xenproject.org/

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 17:24:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 17:24:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605852.943443 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj0vp-0007jw-Te; Wed, 20 Sep 2023 17:24:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605852.943443; Wed, 20 Sep 2023 17:24:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj0vp-0007jp-QX; Wed, 20 Sep 2023 17:24:09 +0000
Received: by outflank-mailman (input) for mailman id 605852;
 Wed, 20 Sep 2023 17:24:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3b5T=FE=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qj0vo-0007jh-Jv
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 17:24:08 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.120])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7d9eed5a-57da-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 19:24:03 +0200 (CEST)
Received: from fmsmga001.fm.intel.com ([10.253.24.23])
 by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 20 Sep 2023 10:24:00 -0700
Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81])
 by fmsmga001.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 20 Sep 2023 10:23:11 -0700
Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by
 fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Wed, 20 Sep 2023 10:23:59 -0700
Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by
 fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Wed, 20 Sep 2023 10:23:59 -0700
Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.105)
 by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Wed, 20 Sep 2023 10:23:59 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by CH3PR11MB7179.namprd11.prod.outlook.com (2603:10b6:610:142::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Wed, 20 Sep
 2023 17:23:48 +0000
Received: from SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61]) by SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61%5]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 17:23:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7d9eed5a-57da-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695230643; x=1726766643;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=iKoow6Tdt+p1gT55GuUjOKUy4B07DzdExnBYDMgYgu0=;
  b=ARh8dbFn02iXBD0MG/Zy1fJl06NAm2o1qWslG0q7bMRXA5u08dMZa9VZ
   vl3FL1JCWwR64kz+Frn+POy+rQOUQMCxKGGZNyZ1pNe3C4gcjQhii3nEw
   sqa42LnRnUbUD3GfiTuxd9P9lEd7fYqhLRjcq9cwiv2qgBp2iRbxuaubh
   pmxg5Wt9bc9LU66gCqp6uPnDUqwRpXJhVXdazqfJi5RUMF9EwhJ7tyzpD
   rUCzpVWaojhaX1TUagsmsotcgdy0ba1DIQ24eGGmUnv4JEHgbvvJ1U4mc
   2mg9eT5piNHUaVUjKq4JoVIrJ2j+G1HdgsyJZeVTeb65CP0kdOlxArcKs
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10839"; a="379174624"
X-IronPort-AV: E=Sophos;i="6.03,162,1694761200"; 
   d="scan'208";a="379174624"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10839"; a="890017227"
X-IronPort-AV: E=Sophos;i="6.03,162,1694761200"; 
   d="scan'208";a="890017227"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nABNNYOjCg3uNj+88AiNEhMRcKlSJYOoeIqKo1n9YqKejbfm7bEpX+tBpFXiwuUEF6H2fl08LLaL/kPPzIMeNjRmgNRes49XAVeqmGhiD8gwKgvFUzhHJxvWCAXbbEry2xD2v3kQl53j/85AlCZALhldnNzgOVl7R7PQmG36wAKOjeK7d5GvwBZ6FtaPseNb8Nn7OkZOONl+4ljItVey6GbFsFXMqEqZJw+LXdNf45U8hSyWF4+VXNJMGeMNheUbpJzd63QKI18JxgRlrwkHPTCWqRJJKmn0fQz7H/SFRcrez4aVBitdpp2R0vuUZggrF0MLgc6RGYCXx5EwAeCKmQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iKoow6Tdt+p1gT55GuUjOKUy4B07DzdExnBYDMgYgu0=;
 b=c3TwP56a5c2BnPWnkp1tNKYFtb3KeoVteRFtzUeJEa0wxDLZ1aoHVKjqIaN8uC8Gnqs/s2iHZ3Wi8wLvTU5mQ2KCxxVSXEgM/em9+Pc6by8J0kKAzVctKd7pUScW4zUdy4WXiCTpOdBxUrHiZ+v/LoHkVENAfQ7KUAyLP/VNHW4JUXv0Qk0TypfLbMhgFe04JB6CQm5Ptn7xEAb3TcuEAMAsythB1zfnzY50ya60I7VvzEmcvMVZRha5TGZWCaksBU6boAO5TcpEcPGJ1c9kkNEgVWHG3RrptOQ/XFXPM/sRk58kzDyittJFHDZZf5gURJeGoV5wBfLj6AdVXM/CLA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Li, Xin3" <xin3.li@intel.com>
To: Nikolay Borisov <nik.borisov@suse.com>, "linux-doc@vger.kernel.org"
	<linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
	<linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
	<linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
	<linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "tglx@linutronix.de" <tglx@linutronix.de>, "mingo@redhat.com"
	<mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>, "x86@kernel.org"
	<x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>, "Lutomirski, Andy"
	<luto@kernel.org>, "pbonzini@redhat.com" <pbonzini@redhat.com>,
	"Christopherson,, Sean" <seanjc@google.com>, "peterz@infradead.org"
	<peterz@infradead.org>, "Gross, Jurgen" <jgross@suse.com>, "Shankar, Ravi V"
	<ravi.v.shankar@intel.com>, "mhiramat@kernel.org" <mhiramat@kernel.org>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"jiangshanlai@gmail.com" <jiangshanlai@gmail.com>
Subject: RE: [PATCH v10 16/38] x86/ptrace: Add FRED additional information to
 the pt_regs structure
Thread-Topic: [PATCH v10 16/38] x86/ptrace: Add FRED additional information to
 the pt_regs structure
Thread-Index: AQHZ5ss6vttMEsm+OUmXJJK/yPurx7AjtmQAgABJenA=
Date: Wed, 20 Sep 2023 17:23:48 +0000
Message-ID: <SA1PR11MB6734182B172E9204CD11688CA8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-17-xin3.li@intel.com>
 <336f77d6-1d94-d2b7-f429-855bfbc3f271@suse.com>
In-Reply-To: <336f77d6-1d94-d2b7-f429-855bfbc3f271@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SA1PR11MB6734:EE_|CH3PR11MB7179:EE_
x-ms-office365-filtering-correlation-id: d56e26c8-a579-40b4-7b08-08dbb9fe59cc
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: rrrZeJhRf65aUKIytRbmdcJ6B43Uvoz3LCi2sGJiiDBaB9F7hZ83ZdGPQ+V8GLGFGWHR6zVfrtoi9WSpKWrieFByFOeXPYrYYO3rFEyieQC2ueSHYpDnKiErLOJT/Lezr6MfWkFlSISGYtXHj6c0FlY5kwbwrkeGxTBTA3HgaHZfeuIAQq8GpMnUdkGMS+fwuYcrOgdqf7DlBCXmY/i0Wv8XjzTFqRIyNuzxRpvEl2LTQ1myCkMKeyCg5mUbm6rVjt25b+wVR7NYEbVbZgKGdDiEx2teU4wnj7jl6ut8J+NCPWXAxUUCcWVydeG48JQrsMpaHPHsDq3wH01/zp2mG6fB7UubtcxHxVo7hp9nheZFXCmo7EMQ6A+nZboQMCrYCc2vSc3E6F34g/ZBSAyy0SXTURH0YQMijf08lfhEltKdeErkvwcPHBH6Fy7IWPHxutKctVCUcRhVPUNoE5d2vFU1UHfQwLiu4zdDWNkdiz2cuz2v/rbR5MzO3bHoVO32jUcR7DRdvvtIHalLi/YPE6juI8BprNkX2biWCxqXvyvGjF0KSPw7Qb4gFDaagnrvh1FoqhHzu/LaVI2ug6JENJQLcP4crpLcERLZv3SxzjQrSSFlH9WVrbc1KlO7PtMU
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6734.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(366004)(376002)(396003)(39860400002)(186009)(1800799009)(451199024)(478600001)(9686003)(71200400001)(7696005)(6506007)(83380400001)(4326008)(5660300002)(4744005)(2906002)(26005)(52536014)(76116006)(316002)(54906003)(66476007)(66446008)(66556008)(64756008)(66946007)(41300700001)(8936002)(8676002)(110136005)(7416002)(55016003)(38100700002)(33656002)(38070700005)(122000001)(86362001)(82960400001);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?L3JEd3RqcUhsR1ZvSFNSRFM0QUpaemt6VGJLUTU2U0lBNHRHMlU4QUNzaSth?=
 =?utf-8?B?WitiZEpYRHR3THk4WmQ4NmJPNGdGYytoUlZXSkt0VytMY3Z1UjhhZzlCNkg5?=
 =?utf-8?B?L2dweGtaR3A1S2dsdDdQeTgxaUMwRFk0Sk5WZjIrUG96cStrWWVJejVLZ1V5?=
 =?utf-8?B?SFJHVXBORHdwbG9oYitwTi96Y04zWGRqbkltQW9VaWRncDdPc2hOV0ZEOUZr?=
 =?utf-8?B?Z0NtQVNjWmppSndGdzJRbnA5RWJ6QVBUS2k2RUFFdXZDZS9EcVhwQWhSSlMz?=
 =?utf-8?B?TjRJQjNERWVaWTNOc1lSZ3dkY0hreXhwR0hSSE1XbmFrakpYY1ZKbEhhK2pO?=
 =?utf-8?B?a3A5NDErT0crSVBWRmh2N3gyZUQ0NkpLSFdwamptTHlKd2N1NGhwZ2lIOHpv?=
 =?utf-8?B?TzJNdFlHb2xkRVgyVUR1K0I5VVRTd3djSlVodTJtNXJmL2JKZDM0SnlTOFEy?=
 =?utf-8?B?aFZmMy9TVm9WR0x3L3NvN2lHVHhRaDRQMFlhYk56OWxJWTR6VDF4enEyVURU?=
 =?utf-8?B?bEp4Ym52d3VQUkNReUxlN1pZUzBCeTNpcFozTklCZmR4NDRadGFMOWxsbUZa?=
 =?utf-8?B?ZEJudXI4WWE4K1AydTU4V05UdVNjNUZlSXJGMTVUNDh3eEV5WCtFMkk3ZzlG?=
 =?utf-8?B?czRJZjZHZ2NxVm9BNkF2WHVncnRySkxaaXFGMllYeW83OVNJMFh0NjhxVUlu?=
 =?utf-8?B?Q1Qvek1KcThsb0t2VkVFbkdwR3ZaUk8yOHhBb3h3UTVjaENuN21EWG9Yd1kz?=
 =?utf-8?B?R2Z0NWhENDRuQzB5dnJrRTZWRndYa2M4VHdqV0IxcmRhZHRhNHhTTHVqbEw0?=
 =?utf-8?B?c0JTS2dYWmN4SGxWaTZieWJZU0REUTZRdTc1ZzMwWlJBYzJab0xEdnVEVUVJ?=
 =?utf-8?B?ZzAvUzFFMXRoUHdUT1d1cU1nNCtKbTNwZDN6NlRkajFvcDkxKzdKdGFDMER5?=
 =?utf-8?B?VW9FRVhHUGFpVDJleU5DNllKZFhRQlVDT1pSM2I5UVRnOU1SSVFzUGlHalAy?=
 =?utf-8?B?MHp6V2huNUNKZ3hmdXJ1RjB0bXQxd3AvZW5FeVhmclB4OEowQVZwWVZ5MWVQ?=
 =?utf-8?B?Y2FGM05ON0t0YUdLVUl2SDJZcDA5aXhlVStMQ1RIUHBESDBRRFJrSXFteld4?=
 =?utf-8?B?RVQrTThJWkZ4UnM5QWRiM2xoNVlROTlyR1NyWWxVeXN4dDdyZ0trVXRPN04v?=
 =?utf-8?B?TWpCVXRWQk5TWE02SFNRaG5LTkM1Qk5xU01Yb3hmS082ZDBZcUg1Z1RnZnMz?=
 =?utf-8?B?MXJldmhrclB4L3RsdG83S1FtSmg3SGV3d1dhb08wTDJqMmpudk1QL2RQY0ds?=
 =?utf-8?B?NFJWa2tSRGRNb1RoQU1LOXRzSzkyeSszWFk5NWhyMVpOdHdjbkMxV2F2R0N6?=
 =?utf-8?B?LzlTQVplejZiS294T2dBUTUrdDZSdEVIMkVXVDNWKzdyaGt0NnlCU1h1UEpZ?=
 =?utf-8?B?NVNDdzhnblEvVGFZSE1FSk5lNktlWWthOGlRSzIwSG04TXpoKzFZUmRxUjUz?=
 =?utf-8?B?ZzlITHBLelRtQ1NldjA3RkhseGVpK3U2Zk9YRnVCRzVpbmJEQUJ4em5zMEU1?=
 =?utf-8?B?QVY2cDFtQXBGNm1JaVJ1Qks3cFpySy9Na1dmTzJXVU9Ta2JPRUxOUnJhZEI3?=
 =?utf-8?B?OHYyYU1yVjNSMTNDViswYzVNNXU3TjhWNlpoZGRNblc0UHpiaVdUa0kzdmx6?=
 =?utf-8?B?ajVZcWc3MVNXZ1pYa2pkcS9MdnhPY0lWV3RoNFhLU1piYSttSGd3Nmx1cCti?=
 =?utf-8?B?RjQxa3NrMGVDd3pWUStSQlZhSnFjaFQ0NkdRYUVLaDJRb1BXTWppM1dzN2Mw?=
 =?utf-8?B?dkVlcHZFUTVLUUVKWmlwWWdVaWZFdFM3NmZrVWlOcG4wdTFQR1Buamc0OENE?=
 =?utf-8?B?TVNaMXpXMzR1cC9lRmp5NkxwT091UEhndkxja2t1Z01Idk92cEtuT0d0QTYw?=
 =?utf-8?B?YjNZaXQ0TlRYTFRuekdpT2kvNENSdWtZYzBqZjcwL2lyQUlZYS9iNjVHUm53?=
 =?utf-8?B?TGVpYUk1b2wyUnlLZjFoRXFUcFU4b2xEbmZjazcvTGZ2WlB0clNxd1BFcS9P?=
 =?utf-8?B?ek1nczljYVNUWGNGeTlkMjN2WGlsdVlCbDIyc000OG1ic0tTaVQvMit1V3M0?=
 =?utf-8?Q?xBa5f2vPvEFruH4JZk0WC2Sdf?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6734.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d56e26c8-a579-40b4-7b08-08dbb9fe59cc
X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Sep 2023 17:23:48.2140
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: Q3Wq3CF2mMJkMIG9ikbqCOAWD4a1xlLvgpYbczFv0FH7A0GzvRnQgO0Q03B9ywiGgSq3A/Wx5ElTwV+juAtYAA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR11MB7179
X-OriginatorOrg: intel.com

PiA+ICtzdHJ1Y3QgZnJlZF9zcyB7DQo+ID4gKwl1NjQJc3MJOiAxNiwJLy8gU1Mgc2VsZWN0b3IN
Cj4gDQo+IElzIHRoaXMgc3RydWN0dXJlIGNvbmZvcm1hbnQgdG8gdGhlIHJldHVybiBzdGF0ZSBh
cyBkZXNjcmliZWQgaW4gRlJFRCA1LjA/DQo+IA0KPiDigJQgVGhlIHN0YWNrIHNlZ21lbnQgb2Yg
dGhlIGludGVycnVwdGVkIGNvbnRleHQsIDY0IGJpdHMgZm9ybWF0dGVkIGFzIGZvbGxvd3M6DQo+
IA0KPiDigKIgQml0cyAxNTowIGNvbnRhaW4gdGhlIFNTIHNlbGVjdG9yLiA8IC0gV0UgSEFWRSBU
SElTDQo+IA0KPiDigKIgQml0cyAzMToxNiBhcmUgbm90IGN1cnJlbnRseSBkZWZpbmVkIGFuZCB3
aWxsIGJlIHplcm8gdW50aWwgdGhleSBhcmUuDQoNCldoZXJlIGRpZCB5b3UgZG93bmxvYWQgdGhl
IEZSRUQgNS4wIHNwZWMgZnJvbT8NCg0KTWluZSBzYXlzIGJpdCAxNiBpcyBzdGksIGJpdCAxNyBm
b3Igc3cgaW5pdGlhdGVkIGV2ZW50cyBhbmQgYml0IDE4IGlzIE5NSS4NCg0KSSBndWVzcyB5b3Ug
aGF2ZSBGUkVEIDMuMCBzcGVjLCBubz8NCg0KPiAgPCAtIE1JU1NJTkcgPiBob2xlPw0KPiANCj4g
PiArCQlzdGkJOiAgMSwJLy8gU1RJIHN0YXRlIDwgLQ0KPiA+ICsJCXN3ZXZlbnQJOiAgMSwJLy8g
U2V0IGlmIHN5c2NhbGwsIHN5c2VudGVyIG9yIElOVCBuDQo+ID4gKwkJbm1pCTogIDEsCS8vIEV2
ZW50IGlzIE5NSSB0eXBlDQo+ID4gKwkJCTogMTMsDQogDQo=


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 17:25:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 17:25:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605857.943453 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj0x9-0008KB-CJ; Wed, 20 Sep 2023 17:25:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605857.943453; Wed, 20 Sep 2023 17:25:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj0x9-0008K4-90; Wed, 20 Sep 2023 17:25:31 +0000
Received: by outflank-mailman (input) for mailman id 605857;
 Wed, 20 Sep 2023 17:25:30 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3b5T=FE=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qj0x8-0008Jv-6F
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 17:25:30 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.88])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b02aae38-57da-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 19:25:28 +0200 (CEST)
Received: from fmsmga007.fm.intel.com ([10.253.24.52])
 by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 20 Sep 2023 10:25:25 -0700
Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82])
 by fmsmga007.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 20 Sep 2023 10:25:25 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by
 fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Wed, 20 Sep 2023 10:25:24 -0700
Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by
 fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Wed, 20 Sep 2023 10:25:24 -0700
Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.173)
 by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Wed, 20 Sep 2023 10:25:24 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by SN7PR11MB7420.namprd11.prod.outlook.com (2603:10b6:806:328::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Wed, 20 Sep
 2023 17:25:21 +0000
Received: from SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61]) by SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61%5]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 17:25:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b02aae38-57da-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695230728; x=1726766728;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=HnsJ6gEOmNnvj/71iTWup15VcRue1W537zLLPwS1Xog=;
  b=YHTnHiBldtwa6G/Mfy/pnpZUirzfCncTRD2/0JMZ/JXPC1HbE0uPI6As
   rm35x4bh35azCoQo/hRSzv7k4J3IKEMc+bWjjeTNHX3fmIEDmf6+zoG+K
   ugsxPc0qdYDCe33Nh+eMde0ttU589vYZusRWSij1wuy70FMGHyRTE7FMZ
   ujnLP8TCi+ZSjYTDdd+rZLOV7hsaFlQHX6IlxXveY8mVgegwVXqXlmFIq
   5Askw/g1UbSVZq3TeUY9+0RotwH+xsdPa8yMb/wxBt9Igxg9J6XtRPz/u
   KTmbKHPX3UykEob7gJ39SEJaZF+XLOI2D/oej6KInoGpUFXsUh6YJIAMo
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10839"; a="411235437"
X-IronPort-AV: E=Sophos;i="6.03,162,1694761200"; 
   d="scan'208";a="411235437"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10839"; a="750005306"
X-IronPort-AV: E=Sophos;i="6.03,162,1694761200"; 
   d="scan'208";a="750005306"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BEZkxLsy+/FtV7Gd61jl4NpgMRe1e2n4/HUsFXebsMIyZsOUiEC58GXRUsM2QdA353VVof2KWhjpupF+MRJZ2T6mcEbcQDL51r3e73xRaai6F23o14Bvv70j7IEeXXBty6otYVNGQuUfOotCQY06901JfX7D5o6p2VHTscQ+dpVh9iiOAjo/GVG3WHEJ9Mkx6vuhGAGJEEwpEzmjYyarJkV8UhYvxn8tCIHeW4IDTAsXjsjL+lIpqhGlG/D1P8PJRAWX+FTNEa6iu8KxMGuA8BOLhWKBPi43A9CRoY8tFNhNuLc2eQKaOoMFgPklEIbDhZoCtcOGCOo9u/6tHqIGZg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HnsJ6gEOmNnvj/71iTWup15VcRue1W537zLLPwS1Xog=;
 b=PXvZupnhJnWDtMq4PVjqXEZQU1EcoLW4qK7IcGoivD/WQFG5vp/3Zm16qmFtijzB24KgC2bCHILA7GmPje/EZRDu3+Z9gFUuMBeLcUU+nqg2V66wLxlpGeGTyZvw7whp1HgpOB0nepMbP7rl6SBAm4QXhEbPe7qZwCYbfPcXayYr+p/btiOXDayHchVLkaQXDi16XSlaaoZJ7isDajFemmuG7cdDxcGVydTC4Mz0MTvoBdsV3ql7B3H1D30SNqMHmcIIelSCjUcT6AW/A/xg03tFQb4Xlhr3oG21lzLiYrhiYqarFdTanSDhlNQLVnZbPjtNn9Qbyp+QI6yVpH1kFw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Li, Xin3" <xin3.li@intel.com>
To: Nikolay Borisov <nik.borisov@suse.com>, "linux-doc@vger.kernel.org"
	<linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
	<linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
	<linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
	<linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "tglx@linutronix.de" <tglx@linutronix.de>, "mingo@redhat.com"
	<mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>, "x86@kernel.org"
	<x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>, "Lutomirski, Andy"
	<luto@kernel.org>, "pbonzini@redhat.com" <pbonzini@redhat.com>,
	"Christopherson,, Sean" <seanjc@google.com>, "peterz@infradead.org"
	<peterz@infradead.org>, "Gross, Jurgen" <jgross@suse.com>, "Shankar, Ravi V"
	<ravi.v.shankar@intel.com>, "mhiramat@kernel.org" <mhiramat@kernel.org>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"jiangshanlai@gmail.com" <jiangshanlai@gmail.com>
Subject: RE: [PATCH v10 13/38] x86/cpu: Add X86_CR4_FRED macro
Thread-Topic: [PATCH v10 13/38] x86/cpu: Add X86_CR4_FRED macro
Thread-Index: AQHZ5ss+SatJUnh9UkGHEM3ubXu/u7AjkxCAgABt1KA=
Date: Wed, 20 Sep 2023 17:25:21 +0000
Message-ID: <SA1PR11MB6734F4A44B17516178ECD31CA8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-14-xin3.li@intel.com>
 <085176da-924e-8d6d-1c56-8bfc9d457b0b@suse.com>
In-Reply-To: <085176da-924e-8d6d-1c56-8bfc9d457b0b@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SA1PR11MB6734:EE_|SN7PR11MB7420:EE_
x-ms-office365-filtering-correlation-id: 7c171b03-49db-4e67-3c16-08dbb9fe9180
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: HJs1+AcZJEF0t7AsF2NzfL5vsBM8Xvp3Y0aMZ+k9CjdjwzAbprc90B1Swx9tDN0H3AfRBMAyNpQmmWkAXz4fkw75NwG3Ws6rO49dHcTiK8CMdqIhMFltxYodYPrNMdaEMzn/Ib66MjpYQsAJOniWy4YkCy0YINy47rw90XJRGKKIAOHkxzgUgPgSXIBrotGTKRNhrCkfYiKWQvGnk4o+mirLRZzQmPOni6ophqogj032Gk/rU3bJaDLXx9UVQAzWnr9lrWLYunTKUH+PArbgt8zEyYux1zBLw7Wc9ONnoRgaVVLrR425K2ikclL0bpe856j+nkN8Wl+b3rqkmxkluLgYijzH5xw0IEFOWrfKVGTkShdtNyUHbdDpkqtWLpKdTt1xICy8Jl4HTMuGOuXe3555Jdjj7pCMHfe/HvXln54D0Zb0i/Y1mysifIzFt8VzhggMQaRhB8Uv9vWXlCT5CdPsB1E4esIPHY+mQ0Lq3hya+0HjrEb+zXwhhQFp5cWnniYOLJtpplgIAPFXUcCLY/owlf2W43j8olhRakbQh4/gov8982GLvoqtybh0vbbFLdTR4w1K3OdIluhdHZzRaAFl1J1smWOFls5advPl3oeY95r/WpwIP2EuqzfdMm2a
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6734.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(396003)(346002)(136003)(39860400002)(186009)(451199024)(1800799009)(7696005)(6506007)(478600001)(71200400001)(9686003)(54906003)(64756008)(26005)(4744005)(2906002)(316002)(66446008)(76116006)(66946007)(66476007)(66556008)(7416002)(4326008)(110136005)(8676002)(8936002)(52536014)(5660300002)(41300700001)(38070700005)(86362001)(38100700002)(82960400001)(33656002)(122000001)(55016003);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?eWJZRGFTSlFlMGdEUHllakl5S2d0THl6cE1WYmtzTmhZVlhKc2tuVksvL3d3?=
 =?utf-8?B?UWZxRFZOMlBCdHJmM2x2WmFnQjduQzVEMXljbWNxd0JNeFpCdXBIMndFWU1N?=
 =?utf-8?B?SzFzb2VoN0VoYW9IRTdnQTRsdXdncFZHQ3J6NFF1NWN5WVViL0NSMEhyZDkz?=
 =?utf-8?B?V2I2ZlIwaEtMQWdpNFZST1RiblA0TzhuSzQySlZNc2tQTEd0NllHcnhQNmZ1?=
 =?utf-8?B?YTZ4RU82UERqRW13WlZWN1Rqcm9rQkdDRTl2ZlpQK0lManI5YnpyRmlyZUNZ?=
 =?utf-8?B?WGxUYUhtWUI4aDZ0K1BXVURmZ0VVbytxM3FkNGtIVXhjZ1dtL1ZELzlvMUZ2?=
 =?utf-8?B?dk1YM290OUFtRi9iRW9nTVBGRmdxbmFUYktQeHQwSjdnc0hWSjBQUEl1cFRU?=
 =?utf-8?B?MlFjMnhBZUhhQ1F4bWtON2VlSThYb1Y4dlRmb0NKL1BPcFYxMHBtYWoxOENs?=
 =?utf-8?B?WkJlWTZ4TDZJUTlDcVY3QUJ1RVVtNzl1VTVDVWxwSDhMZEE3NWp1MEJ1d01r?=
 =?utf-8?B?SURBaU04bEdXRGQ0MkpPZ05ydkFVTHFCRjBYckxrcm81Q3JTUm1jSnNnamdT?=
 =?utf-8?B?VEZYbTJKVVNYNDk2bXhZdXJJMVIycTRWVEVid1hVaklSM0tHM21IKzRaVkpN?=
 =?utf-8?B?SStqVkoreGdJQkpIaTN4U0d0YVZYVkcrRG0wR0F4cDkrU3c5MVJqOENyTE1Z?=
 =?utf-8?B?QWxMQUNJTmU0UVNhNXJjaUxaRWJ0dXRPeS9LQm1rNE4wcWQzNllLTTJuTjFW?=
 =?utf-8?B?UHR5T1VYZVhtVDRVWjBWL0hocjZLVklQdWs1VzZ2OFVnNlY0ZXNFYUVzYm9U?=
 =?utf-8?B?RkZNM1ZnVWpNdzlZYlplbWVQSnRZSjdrSFd2RVdEek9SbGxaY0Q1VDkrdjcx?=
 =?utf-8?B?THZydERVUjQ2bVIvYlg5Uzh6NnA1T0dyeEI3WUNnaWVOL2Z1cnZNb01tWjRm?=
 =?utf-8?B?alFSTEU0WWUxMkRJSlRuZFZZMUZGeXhDOHYvVlJQTHNPczJBbThNVnJKQ2Qw?=
 =?utf-8?B?Y2lLZXE1eVE4TzdMbTNIQlJHbDhYSFc0bVY4NnkrZVRKNnl0OXZBMUdieWFN?=
 =?utf-8?B?cFZBdHl3UlRkNjUzaUJQL3p4VDIySmZNUHJham8rQ3doRmJhbW1iR1FqUFZD?=
 =?utf-8?B?VERHVVJKRkdCM2NUVGw0dTUvRUx2R2JQSjBkQnh5K1MvcWlUKzh5T0RpU1lP?=
 =?utf-8?B?eDNDNkxpNnVWQWNzUWFFbG1iMnJwOGhZTFVXWUlFOC9vNW1ibTNCcnhzUDRj?=
 =?utf-8?B?alV1aDZhQW1pRG54U1pFRk82d0hDVDFXcU0xWVZFTUFoVk01QWVFK01oQWto?=
 =?utf-8?B?OHJZQjRsMEowbzd5Z0ZlYWNhRWsvUVNkUC85T0lGQllSTFpjVTQwbkZrZXRU?=
 =?utf-8?B?RWxRcGc4dkZaeFRYVkhiWE10alZ4cnRVMmpOZkpiT1RpT21OWFllNVZzd3c3?=
 =?utf-8?B?YmRqUzh0MnBUNkgxSnprOWR5ZSs3Rzk3ZUZhTjdzaWVsVDE5dEFLUXpNM0dw?=
 =?utf-8?B?RUN0KzUzc29HTTBqaVdJdFpldmdyQUlaeHprNEZvWjg4NXBCazdZU1lJUUtN?=
 =?utf-8?B?N09wWStHQksvclNCTXdDbUZnM0RiL1B4RXpoczQwb3dKZWNHTHhJY2IyT2VW?=
 =?utf-8?B?NCs3OW1rWU9sL1ZJSm1uNk95VnFMWlVVdTN5eUlMOE1tUnpKZUNzaTBNOG1a?=
 =?utf-8?B?T09CSG8za2RXR0JhN3lHbXQ4NFh3aVFPN0dabzdORWRyV0VoOWVJWjBUbmUx?=
 =?utf-8?B?MFU1ZURDSWNQeGxMVXRuSXc3Zm9EQU9zVGJycVA4Y1JnOThZSkpwbW5LL2hW?=
 =?utf-8?B?WGRmMXlBNE1scW9rOTN2ZHRZSzhKY2R2RFJ6bm1NZDA5Umw4Y24vZ1pxUVJp?=
 =?utf-8?B?SFVRbU1WVEs5Tndaek9rRnBKcjdhOVFhcEpqQ3hQbEJiWGdlYmI1L1praHIx?=
 =?utf-8?B?QkhhaHlZdWw0dGpqWkhUdHRzdUhqblJMek44Q0pZNWJEVm05eFZNdjFaS3B0?=
 =?utf-8?B?RzVndVl6RmNaZW50RUtVeWR2TUpSaDNScHJuSHc4YXZBVkR5bGZRdWYxbTA0?=
 =?utf-8?B?SEY1WW5paWgwTUZaZ0RaS0xSbWh3QTJEUGttYW9PRVptaXo4RERmZXdiVVhS?=
 =?utf-8?Q?q5TPutQYgHVcl1EZNaC5UQ9Pf?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6734.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7c171b03-49db-4e67-3c16-08dbb9fe9180
X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Sep 2023 17:25:21.6722
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: TnFMPI/bxUCYLZQBlUROthuR+cyZhhGH5R8TH1ocvL7ajHoAxdV8LevZ4QWkSHz3WMwHbU03ju/9IfjsrltMwQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR11MB7420
X-OriginatorOrg: intel.com

PiA+ICsjaWZkZWYgX194ODZfNjRfXw0KPiA+ICsjZGVmaW5lIFg4Nl9DUjRfRlJFRF9CSVQJMzIg
LyogZW5hYmxlIEZSRUQga2VybmVsIGVudHJ5ICovDQo+ID4gKyNkZWZpbmUgWDg2X0NSNF9GUkVE
CQlfQklUVUwoWDg2X0NSNF9GUkVEX0JJVCkNCj4gDQo+IG5pdDogcy9CSVRVTC9CSVRVTEwgSSBn
dWVzcyBpZiBfX3g4Nl82NF9fIGlzIGRlZmluZWQgdGhlbiB3ZSBhcmUNCj4gZ3VhcmFudGVlZCB0
aGF0IHVuc2lnbmVkIGxvbmcgd2lsbCBiZSBhIDY0IGJpdCwgYnV0IGZvciB0aGUgc2FrZSBvZg0K
PiBjbGFyaXR5IEknZCByYXRoZXIgaGF2ZSB0aGlzIHNwZWxsZWQgb3V0IGV4cGxpY2l0bHkgYnkg
dXNpbmcgQklUVUxMDQo+DQoNClVMIGlzIGJldHRlciBiZWNhdXNlIENSNCBpcyBhIG1hY2hpbmUg
d29yZC4NCg0KPiANCj4gDQo+ID4gKyNlbHNlDQo+ID4gKyNkZWZpbmUgWDg2X0NSNF9GUkVECQko
MCkNCj4gPiArI2VuZGlmDQoNCg==


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 17:55:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 17:55:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605864.943473 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1Pr-0005og-RV; Wed, 20 Sep 2023 17:55:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605864.943473; Wed, 20 Sep 2023 17:55:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1Pr-0005oZ-Ob; Wed, 20 Sep 2023 17:55:11 +0000
Received: by outflank-mailman (input) for mailman id 605864;
 Wed, 20 Sep 2023 17:55:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=tFM0=FE=redhat.com=pbonzini@srs-se1.protection.inumbo.net>)
 id 1qj1Pr-0005Yn-7J
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 17:55:11 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d6c97069-57de-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 19:55:10 +0200 (CEST)
Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com
 [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-632-nCC5Brl2MNOSRX0tqr0uag-1; Wed, 20 Sep 2023 13:55:05 -0400
Received: by mail-wm1-f69.google.com with SMTP id
 5b1f17b1804b1-401bdff6bc5so769885e9.1
 for <xen-devel@lists.xenproject.org>; Wed, 20 Sep 2023 10:55:05 -0700 (PDT)
Received: from ?IPV6:2001:b07:6468:f312:9af8:e5f5:7516:fa89?
 ([2001:b07:6468:f312:9af8:e5f5:7516:fa89])
 by smtp.googlemail.com with ESMTPSA id
 w11-20020a5d608b000000b0031ad5fb5a0fsm10876963wrt.58.2023.09.20.10.55.00
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 20 Sep 2023 10:55:03 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d6c97069-57de-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695232509;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=NnqOeIozWLoSx9J0xtQeCKdqhemo3EjzKycC15MNaXI=;
	b=BCbggvbfYaWm9q1Yn9nt9xdLO3ZQMJRTyiMMbKKGAqwkRivXu0dJyinBCc96TMddS5l/XZ
	x04gfDmU0iyn1fOWdhsxCFXULExjQ6T2GgrNVIEHnX6gxxMzlIsYmZb5Jqmt4Lcnk5uLMf
	dh+4uAi0iSmz0Q2YFKhWuioiPeAcS44=
X-MC-Unique: nCC5Brl2MNOSRX0tqr0uag-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695232504; x=1695837304;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=NnqOeIozWLoSx9J0xtQeCKdqhemo3EjzKycC15MNaXI=;
        b=megpqMnTGRRCM6RFvjKw45lMgAGQSyhC3wYOwcMLzQT8H+3jE57lkfyoU0kfWgCemy
         h15o7HVoNzzkBAOZhGZLRAk9s/8pkTjF1LEUeMS+yq07F3lXI8AbMugAGUXLY0RNEDtk
         1pWmUb0eQLDmvPmGgYs7SNFROazMhRMkVfpdDPB9dZ+3xtnWCFG6H+8WYFm+oCinpbxt
         Dq9YESRMlOylMRkZUz/E+RPqJSxpOpHajdVnzeoTJKhwKSDDIia1JX1d5ZUz+HEqOFpL
         Xr9Qxj+B0aGnWWXpzAaUATdW2HaKL+YTL5mv6TNAMOAdjA/LsMLT2bLZj+w7ljEMthTE
         Xabg==
X-Gm-Message-State: AOJu0YxkMU5VkW7TbxrVuehPMbEI5XkuoTolT5v1MPm6+3lQAnwl74CI
	yidEp/3HbcpFJ8oKGQ3VqS6m8meL2QXV3pwysGOQZ+8uHLvmR9W5XI9Q0jvdNij5muCimzEkUBn
	2BMvL9XWwn9loFEeyPjyJKUB1YRs=
X-Received: by 2002:adf:ee88:0:b0:313:ecd3:7167 with SMTP id b8-20020adfee88000000b00313ecd37167mr2737766wro.42.1695232504616;
        Wed, 20 Sep 2023 10:55:04 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IG0pIzmkmEwrfJkDIWYrHXNUyhISLDh7IqFEh0BjNiUe37zgzv0CZuijHzQCZR9e7yYqC6CoA==
X-Received: by 2002:adf:ee88:0:b0:313:ecd3:7167 with SMTP id b8-20020adfee88000000b00313ecd37167mr2737745wro.42.1695232504286;
        Wed, 20 Sep 2023 10:55:04 -0700 (PDT)
Message-ID: <26b92bbb-0519-8b94-07fc-75d900fde600@redhat.com>
Date: Wed, 20 Sep 2023 19:54:59 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH v10 34/38] KVM: VMX: Call fred_entry_from_kvm() for
 IRQ/NMI handling
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 seanjc@google.com, peterz@infradead.org, jgross@suse.com,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, andrew.cooper3@citrix.com,
 jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-35-xin3.li@intel.com>
From: Paolo Bonzini <pbonzini@redhat.com>
In-Reply-To: <20230914044805.301390-35-xin3.li@intel.com>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 9/14/23 06:48, Xin Li wrote:
> When FRED is enabled, call fred_entry_from_kvm() to handle IRQ/NMI in
> IRQ/NMI induced VM exits.
> 
> Tested-by: Shan Kang <shan.kang@intel.com>
> Signed-off-by: Xin Li <xin3.li@intel.com>

Acked-by: Paolo Bonzini <pbonzini@redhat.com>

> ---
>   arch/x86/kvm/vmx/vmx.c | 12 +++++++++---
>   1 file changed, 9 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c
> index 72e3943f3693..db55b8418fa3 100644
> --- a/arch/x86/kvm/vmx/vmx.c
> +++ b/arch/x86/kvm/vmx/vmx.c
> @@ -38,6 +38,7 @@
>   #include <asm/desc.h>
>   #include <asm/fpu/api.h>
>   #include <asm/fpu/xstate.h>
> +#include <asm/fred.h>
>   #include <asm/idtentry.h>
>   #include <asm/io.h>
>   #include <asm/irq_remapping.h>
> @@ -6962,14 +6963,16 @@ static void handle_external_interrupt_irqoff(struct kvm_vcpu *vcpu)
>   {
>   	u32 intr_info = vmx_get_intr_info(vcpu);
>   	unsigned int vector = intr_info & INTR_INFO_VECTOR_MASK;
> -	gate_desc *desc = (gate_desc *)host_idt_base + vector;
>   
>   	if (KVM_BUG(!is_external_intr(intr_info), vcpu->kvm,
>   	    "unexpected VM-Exit interrupt info: 0x%x", intr_info))
>   		return;
>   
>   	kvm_before_interrupt(vcpu, KVM_HANDLING_IRQ);
> -	vmx_do_interrupt_irqoff(gate_offset(desc));
> +	if (cpu_feature_enabled(X86_FEATURE_FRED))
> +		fred_entry_from_kvm(EVENT_TYPE_EXTINT, vector);
> +	else
> +		vmx_do_interrupt_irqoff(gate_offset((gate_desc *)host_idt_base + vector));
>   	kvm_after_interrupt(vcpu);
>   
>   	vcpu->arch.at_instruction_boundary = true;
> @@ -7262,7 +7265,10 @@ static noinstr void vmx_vcpu_enter_exit(struct kvm_vcpu *vcpu,
>   	if ((u16)vmx->exit_reason.basic == EXIT_REASON_EXCEPTION_NMI &&
>   	    is_nmi(vmx_get_intr_info(vcpu))) {
>   		kvm_before_interrupt(vcpu, KVM_HANDLING_NMI);
> -		vmx_do_nmi_irqoff();
> +		if (cpu_feature_enabled(X86_FEATURE_FRED))
> +			fred_entry_from_kvm(EVENT_TYPE_NMI, NMI_VECTOR);
> +		else
> +			vmx_do_nmi_irqoff();
>   		kvm_after_interrupt(vcpu);
>   	}
>   



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 17:55:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 17:55:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605863.943463 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1Pm-0005Z0-Jo; Wed, 20 Sep 2023 17:55:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605863.943463; Wed, 20 Sep 2023 17:55:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1Pm-0005Yt-GP; Wed, 20 Sep 2023 17:55:06 +0000
Received: by outflank-mailman (input) for mailman id 605863;
 Wed, 20 Sep 2023 17:55:06 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=tFM0=FE=redhat.com=pbonzini@srs-se1.protection.inumbo.net>)
 id 1qj1Pm-0005Yn-4s
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 17:55:06 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d2e4f336-57de-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 19:55:03 +0200 (CEST)
Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com
 [209.85.128.70]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-669-JviK83i-NoeIcukGngaZAg-1; Wed, 20 Sep 2023 13:54:59 -0400
Received: by mail-wm1-f70.google.com with SMTP id
 5b1f17b1804b1-3f5df65f9f4so570605e9.2
 for <xen-devel@lists.xenproject.org>; Wed, 20 Sep 2023 10:54:58 -0700 (PDT)
Received: from ?IPV6:2001:b07:6468:f312:9af8:e5f5:7516:fa89?
 ([2001:b07:6468:f312:9af8:e5f5:7516:fa89])
 by smtp.googlemail.com with ESMTPSA id
 g7-20020a05600c310700b003fe15ac0934sm1501378wmo.1.2023.09.20.10.54.51
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 20 Sep 2023 10:54:54 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d2e4f336-57de-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695232502;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=h5xYFinNZipHsHGmHUqZFR1epFlz8wPv/8ryGu1Ybe8=;
	b=RUdhs6NCZArzN5tmhbMls6Ei3DrhYhtrd+xrjh63tN8PIUL4cBIEIXXGCVrPQuBFu8t1/+
	3rtTKT2y5jXsUDpxtoaoLBmkvxBoXJ4qW7niW+XLJNbyFM0EbD9ElnFHW1A7Oq7aOgDjOM
	816KRapTtghDKkr5frY7YmJNF3f5W/4=
X-MC-Unique: JviK83i-NoeIcukGngaZAg-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695232498; x=1695837298;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=h5xYFinNZipHsHGmHUqZFR1epFlz8wPv/8ryGu1Ybe8=;
        b=FrPzlPrreDTyQcR1SIgMI3TndC43TYmBeNvMXjHu2jO5NH8AeCey+oDXmOmURafY3h
         v5UtLUWgXL9xC95x+kY5pCndJONybVyNUpHVndwhDjY7FZVyGMPCAx09Yow4D6aI3B3O
         TrCA+2Gsaq4e68szN23iOPuLDT51adqlECDW8WKGrBWCgNYslsiU+JUGGvcP8HEeMpkm
         MFcx01/xqpkIdnNS8ac37f+I5IJgmc+RTRt1QHWm5b1w6Zc5qGcjqqE8YUY3k74gc3NI
         WHnpxG2NE2sjmMOWcI5OM+RKi/uM5mKWADzoruYq3n5wubKsE51B3hUHimzpZ0VLwtvq
         HEWw==
X-Gm-Message-State: AOJu0YxVS3tnK+UkOsd+PEuFBjTyBOTxXynAjJ8kOZBQ4o855Idq+VJi
	BMTpy5aUQqkhDIIS6F5jTroSMkTObwC/hTO7/009U1ELzpg6LJEApMTttYShIA+cjAI7U0TAsG+
	MvxOxiij90os591FWLBEW7TjNhAY=
X-Received: by 2002:a7b:ce88:0:b0:400:57d1:4910 with SMTP id q8-20020a7bce88000000b0040057d14910mr3302432wmj.17.1695232497846;
        Wed, 20 Sep 2023 10:54:57 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IHnadv5Rrllbv+1DebvWmStjUdr36msQ4bItIjpfqmG73HPxauN1Zj4NCrq5iVMGFuoky2thA==
X-Received: by 2002:a7b:ce88:0:b0:400:57d1:4910 with SMTP id q8-20020a7bce88000000b0040057d14910mr3302418wmj.17.1695232497523;
        Wed, 20 Sep 2023 10:54:57 -0700 (PDT)
Message-ID: <facdf62c-d0b4-597d-a85d-5772ecaa2b86@redhat.com>
Date: Wed, 20 Sep 2023 19:54:48 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH v10 33/38] x86/entry: Add fred_entry_from_kvm() for VMX to
 handle IRQ/NMI
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 seanjc@google.com, peterz@infradead.org, jgross@suse.com,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, andrew.cooper3@citrix.com,
 jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-34-xin3.li@intel.com>
From: Paolo Bonzini <pbonzini@redhat.com>
In-Reply-To: <20230914044805.301390-34-xin3.li@intel.com>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 9/14/23 06:48, Xin Li wrote:
> +	/*
> +	 * Don't check the FRED stack level, the call stack leading to this
> +	 * helper is effectively constant and shallow (relatively speaking).

It's more that we don't need to protect from reentrancy.  The external 
interrupt uses stack level 0 so no adjustment would be needed anyway, 
and NMI does not use an IST even in the non-FRED case.

> +	 * Emulate the FRED-defined redzone and stack alignment.
> +	 */
> +	sub $(FRED_CONFIG_REDZONE_AMOUNT << 6), %rsp
> +	and $FRED_STACK_FRAME_RSP_MASK, %rsp



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 18:15:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 18:15:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605876.943483 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1jJ-0002r0-EJ; Wed, 20 Sep 2023 18:15:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605876.943483; Wed, 20 Sep 2023 18:15:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1jJ-0002qt-At; Wed, 20 Sep 2023 18:15:17 +0000
Received: by outflank-mailman (input) for mailman id 605876;
 Wed, 20 Sep 2023 18:15:16 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qj1jI-0002qh-Dv; Wed, 20 Sep 2023 18:15:16 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qj1jI-00054j-1K; Wed, 20 Sep 2023 18:15:16 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qj1jH-0006AB-J5; Wed, 20 Sep 2023 18:15:15 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qj1jH-0002pK-Ic; Wed, 20 Sep 2023 18:15:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=S5N40L+526LdmyTm82eK3KI+ozrpYGO/yYdnz+fdihE=; b=ssO5/nCWFdwE9/VuUw/ZWVOrpC
	ad8szpWNvkEAEjOjRYeddv+/7tkwzUzVa3HJ20zkEsdD+IiUtOdLesdOUHWxjU3HdX8soUytU+9Jf
	7RjVWckBD6jh5ATxp60NQFUFwxsR6wPHe2ci9ebYLYbZCZBwfOQI/RFWYrysc1STimVw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183076-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183076: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=2cf0f715623872823a72e451243bbf555d10d032
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 20 Sep 2023 18:15:15 +0000

flight 183076 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183076/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-vhd       8 xen-boot         fail in 183056 pass in 183076
 test-armhf-armhf-libvirt-qcow2 13 guest-start              fail pass in 183056

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 183056 like 182531
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 183056 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                2cf0f715623872823a72e451243bbf555d10d032
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   23 days
Failing since        182544  2023-08-28 20:42:13 Z   22 days   43 attempts
Testing same since   183035  2023-09-18 21:10:14 Z    1 days    3 attempts

------------------------------------------------------------
2322 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               fail    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 283021 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 18:32:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 18:32:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605890.943549 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zX-0000VE-RD; Wed, 20 Sep 2023 18:32:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605890.943549; Wed, 20 Sep 2023 18:32:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zX-0000Tq-NC; Wed, 20 Sep 2023 18:32:03 +0000
Received: by outflank-mailman (input) for mailman id 605890;
 Wed, 20 Sep 2023 18:32:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wKQE=FE=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qj1zV-0007W9-Mu
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 18:32:01 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fc14cb8e-57e3-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 20:32:00 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-427-808l8HYfOgienFfKcIOyhQ-1; Wed, 20 Sep 2023 14:31:53 -0400
Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com
 [10.11.54.3])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 8CF9E803499;
 Wed, 20 Sep 2023 18:31:52 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 640F710F1BE7;
 Wed, 20 Sep 2023 18:31:52 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 42D7721E690B; Wed, 20 Sep 2023 20:31:49 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fc14cb8e-57e3-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695234719;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=+5HnhXslRnnQFRfuqW4Y4SlAYwtvks6K50kIclYSCcI=;
	b=eXAeWvcT4XRzVCzWScztHqouVvfBTe7WeJWmiu/hDHh6O1pNWLHJCh0qcIJdpuJwxIXlbT
	3Fc8Ip+M7BAUG8vrrBodxIIDOEQGlRCcL2G+HNj68RiRavfDmfFumdtWEXuSzIoLWynZtA
	/nd5A4qRrOVG+QLnjh1x+IlzLkF+rLM=
X-MC-Unique: 808l8HYfOgienFfKcIOyhQ-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v2 5/7] block/vdi: Clean up local variable shadowing
Date: Wed, 20 Sep 2023 20:31:47 +0200
Message-ID: <20230920183149.1105333-6-armbru@redhat.com>
In-Reply-To: <20230920183149.1105333-1-armbru@redhat.com>
References: <20230920183149.1105333-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.3

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand.  Tracked down with -Wshadow=local.
Clean up: delete inner declarations when they are actually redundant,
else rename variables.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 block/vdi.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/block/vdi.c b/block/vdi.c
index 6c35309e04..934e1b849b 100644
--- a/block/vdi.c
+++ b/block/vdi.c
@@ -634,7 +634,6 @@ vdi_co_pwritev(BlockDriverState *bs, int64_t offset, int64_t bytes,
         bmap_entry = le32_to_cpu(s->bmap[block_index]);
         if (!VDI_IS_ALLOCATED(bmap_entry)) {
             /* Allocate new block and write to it. */
-            uint64_t data_offset;
             qemu_co_rwlock_upgrade(&s->bmap_lock);
             bmap_entry = le32_to_cpu(s->bmap[block_index]);
             if (VDI_IS_ALLOCATED(bmap_entry)) {
@@ -700,7 +699,7 @@ nonallocating_write:
         /* One or more new blocks were allocated. */
         VdiHeader *header;
         uint8_t *base;
-        uint64_t offset;
+        uint64_t bmap_offset;
         uint32_t n_sectors;
 
         g_free(block);
@@ -723,11 +722,11 @@ nonallocating_write:
         bmap_first /= (SECTOR_SIZE / sizeof(uint32_t));
         bmap_last /= (SECTOR_SIZE / sizeof(uint32_t));
         n_sectors = bmap_last - bmap_first + 1;
-        offset = s->bmap_sector + bmap_first;
+        bmap_offset = s->bmap_sector + bmap_first;
         base = ((uint8_t *)&s->bmap[0]) + bmap_first * SECTOR_SIZE;
         logout("will write %u block map sectors starting from entry %u\n",
                n_sectors, bmap_first);
-        ret = bdrv_co_pwrite(bs->file, offset * SECTOR_SIZE,
+        ret = bdrv_co_pwrite(bs->file, bmap_offset * SECTOR_SIZE,
                              n_sectors * SECTOR_SIZE, base, 0);
     }
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 18:32:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 18:32:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605886.943513 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zV-00084G-Bi; Wed, 20 Sep 2023 18:32:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605886.943513; Wed, 20 Sep 2023 18:32:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zV-000847-8W; Wed, 20 Sep 2023 18:32:01 +0000
Received: by outflank-mailman (input) for mailman id 605886;
 Wed, 20 Sep 2023 18:31:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wKQE=FE=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qj1zT-0007WV-PQ
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 18:31:59 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f97d791f-57e3-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 20:31:56 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73])
 by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-218-JcQHjH95P3CD4dmJL6uCEg-1; Wed, 20 Sep 2023 14:31:52 -0400
Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com
 [10.11.54.3])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 51E423816D80;
 Wed, 20 Sep 2023 18:31:51 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 5EA811055466;
 Wed, 20 Sep 2023 18:31:50 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 3466821E6901; Wed, 20 Sep 2023 20:31:49 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f97d791f-57e3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695234714;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=7+kvih7WUVKTB4fICaTU1GrKP7IsuBZJAWKDMqRyWBI=;
	b=K0LZd91GXcfb1f0UDcEL3MNO7XQM+8XA0ukpOfWG5+l10w4/8OEf3cJ4P8J7FlgVwO9oHS
	DTtWA01G50Nk2zyDId32mdpCz07OWaiwlIohwfZEgEJe6PORephvfpxPnl4UVsrywHBJYb
	PtZfVMj4GMpfYjFM1l9gv6ZmUYlfB58=
X-MC-Unique: JcQHjH95P3CD4dmJL6uCEg-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org,
	Li Zhijian <lizhijian@fujitsu.com>
Subject: [PATCH v2 1/7] migration/rdma: Fix save_page method to fail on polling error
Date: Wed, 20 Sep 2023 20:31:43 +0200
Message-ID: <20230920183149.1105333-2-armbru@redhat.com>
In-Reply-To: <20230920183149.1105333-1-armbru@redhat.com>
References: <20230920183149.1105333-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.3

qemu_rdma_save_page() reports polling error with error_report(), then
succeeds anyway.  This is because the variable holding the polling
status *shadows* the variable the function returns.  The latter
remains zero.

Broken since day one, and duplicated more recently.

Fixes: 2da776db4846 (rdma: core logic)
Fixes: b390afd8c50b (migration/rdma: Fix out of order wrid)
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Li Zhijian <lizhijian@fujitsu.com>
---
 migration/rdma.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/migration/rdma.c b/migration/rdma.c
index a2a3db35b1..3915d1d7c9 100644
--- a/migration/rdma.c
+++ b/migration/rdma.c
@@ -3282,7 +3282,8 @@ static size_t qemu_rdma_save_page(QEMUFile *f,
      */
     while (1) {
         uint64_t wr_id, wr_id_in;
-        int ret = qemu_rdma_poll(rdma, rdma->recv_cq, &wr_id_in, NULL);
+        ret = qemu_rdma_poll(rdma, rdma->recv_cq, &wr_id_in, NULL);
+
         if (ret < 0) {
             error_report("rdma migration: polling error! %d", ret);
             goto err;
@@ -3297,7 +3298,8 @@ static size_t qemu_rdma_save_page(QEMUFile *f,
 
     while (1) {
         uint64_t wr_id, wr_id_in;
-        int ret = qemu_rdma_poll(rdma, rdma->send_cq, &wr_id_in, NULL);
+        ret = qemu_rdma_poll(rdma, rdma->send_cq, &wr_id_in, NULL);
+
         if (ret < 0) {
             error_report("rdma migration: polling error! %d", ret);
             goto err;
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 18:32:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 18:32:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605887.943517 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zV-00087r-Kk; Wed, 20 Sep 2023 18:32:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605887.943517; Wed, 20 Sep 2023 18:32:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zV-00086y-Fe; Wed, 20 Sep 2023 18:32:01 +0000
Received: by outflank-mailman (input) for mailman id 605887;
 Wed, 20 Sep 2023 18:32:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wKQE=FE=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qj1zU-0007WV-03
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 18:32:00 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fa143f16-57e3-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 20:31:57 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73])
 by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-483-9l76hlgDNpCT7j8zv7yFEw-1; Wed, 20 Sep 2023 14:31:52 -0400
Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com
 [10.11.54.6])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 77E0E1C09A4C;
 Wed, 20 Sep 2023 18:31:51 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 5E968215670B;
 Wed, 20 Sep 2023 18:31:50 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 3BBC921E6905; Wed, 20 Sep 2023 20:31:49 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fa143f16-57e3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695234715;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=eRiwxpdA+MVBek+OK2IN4IV4BhmaUPfwd9cfv4fQ8qc=;
	b=YDOHGUngq6hM8w2uBMvMCx3GTD0da+upE+M2LQDA4OTEB2/xKBxaUuKUAE5rXAEz+X3qOG
	iyOHyoW9arlMCG18vwBW4jdzhhO6sJC+ayV1i9YTOAPnoIEV8UFWB6w3Y8Nttj6x1zprS+
	AwAO0UPa13je8lft7HB0s+RCCAuVrls=
X-MC-Unique: 9l76hlgDNpCT7j8zv7yFEw-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v2 3/7] ui: Clean up local variable shadowing
Date: Wed, 20 Sep 2023 20:31:45 +0200
Message-ID: <20230920183149.1105333-4-armbru@redhat.com>
In-Reply-To: <20230920183149.1105333-1-armbru@redhat.com>
References: <20230920183149.1105333-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand.  Tracked down with -Wshadow=local.
Clean up: delete inner declarations when they are actually redundant,
else rename variables.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
---
 ui/gtk.c              | 14 +++++++-------
 ui/spice-display.c    |  9 +++++----
 ui/vnc-palette.c      |  2 --
 ui/vnc.c              | 12 ++++++------
 ui/vnc-enc-zrle.c.inc |  9 ++++-----
 5 files changed, 22 insertions(+), 24 deletions(-)

diff --git a/ui/gtk.c b/ui/gtk.c
index e09f97a86b..3373427c9b 100644
--- a/ui/gtk.c
+++ b/ui/gtk.c
@@ -930,8 +930,8 @@ static gboolean gd_motion_event(GtkWidget *widget, GdkEventMotion *motion,
         GdkMonitor *monitor = gdk_display_get_monitor_at_window(dpy, win);
         GdkRectangle geometry;
 
-        int x = (int)motion->x_root;
-        int y = (int)motion->y_root;
+        int xr = (int)motion->x_root;
+        int yr = (int)motion->y_root;
 
         gdk_monitor_get_geometry(monitor, &geometry);
 
@@ -942,13 +942,13 @@ static gboolean gd_motion_event(GtkWidget *widget, GdkEventMotion *motion,
          * may still be only half way across the screen. Without
          * this warp, the server pointer would thus appear to hit
          * an invisible wall */
-        if (x <= geometry.x || x - geometry.x >= geometry.width - 1 ||
-            y <= geometry.y || y - geometry.y >= geometry.height - 1) {
+        if (xr <= geometry.x || xr - geometry.x >= geometry.width - 1 ||
+            yr <= geometry.y || yr - geometry.y >= geometry.height - 1) {
             GdkDevice *dev = gdk_event_get_device((GdkEvent *)motion);
-            x = geometry.x + geometry.width / 2;
-            y = geometry.y + geometry.height / 2;
+            xr = geometry.x + geometry.width / 2;
+            yr = geometry.y + geometry.height / 2;
 
-            gdk_device_warp(dev, screen, x, y);
+            gdk_device_warp(dev, screen, xr, yr);
             s->last_set = FALSE;
             return FALSE;
         }
diff --git a/ui/spice-display.c b/ui/spice-display.c
index 5cc47bd668..6eb98a5a5c 100644
--- a/ui/spice-display.c
+++ b/ui/spice-display.c
@@ -1081,15 +1081,16 @@ static void qemu_spice_gl_update(DisplayChangeListener *dcl,
     }
 
     if (render_cursor) {
-        int x, y;
+        int ptr_x, ptr_y;
+
         qemu_mutex_lock(&ssd->lock);
-        x = ssd->ptr_x;
-        y = ssd->ptr_y;
+        ptr_x = ssd->ptr_x;
+        ptr_y = ssd->ptr_y;
         qemu_mutex_unlock(&ssd->lock);
         egl_texture_blit(ssd->gls, &ssd->blit_fb, &ssd->guest_fb,
                          !y_0_top);
         egl_texture_blend(ssd->gls, &ssd->blit_fb, &ssd->cursor_fb,
-                          !y_0_top, x, y, 1.0, 1.0);
+                          !y_0_top, ptr_x, ptr_y, 1.0, 1.0);
         glFlush();
     }
 
diff --git a/ui/vnc-palette.c b/ui/vnc-palette.c
index dc7c0ba997..4e88c412f0 100644
--- a/ui/vnc-palette.c
+++ b/ui/vnc-palette.c
@@ -86,8 +86,6 @@ int palette_put(VncPalette *palette, uint32_t color)
         return 0;
     }
     if (!entry) {
-        VncPaletteEntry *entry;
-
         entry = &palette->pool[palette->size];
         entry->color = color;
         entry->idx = idx;
diff --git a/ui/vnc.c b/ui/vnc.c
index 6fd86996a5..ecb75ff8c8 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -1584,15 +1584,15 @@ static void vnc_jobs_bh(void *opaque)
  */
 static int vnc_client_read(VncState *vs)
 {
-    size_t ret;
+    size_t sz;
 
 #ifdef CONFIG_VNC_SASL
     if (vs->sasl.conn && vs->sasl.runSSF)
-        ret = vnc_client_read_sasl(vs);
+        sz = vnc_client_read_sasl(vs);
     else
 #endif /* CONFIG_VNC_SASL */
-        ret = vnc_client_read_plain(vs);
-    if (!ret) {
+        sz = vnc_client_read_plain(vs);
+    if (!sz) {
         if (vs->disconnecting) {
             vnc_disconnect_finish(vs);
             return -1;
@@ -3118,8 +3118,8 @@ static int vnc_refresh_server_surface(VncDisplay *vd)
     cmp_bytes = MIN(VNC_DIRTY_PIXELS_PER_BIT * VNC_SERVER_FB_BYTES,
                     server_stride);
     if (vd->guest.format != VNC_SERVER_FB_FORMAT) {
-        int width = pixman_image_get_width(vd->server);
-        tmpbuf = qemu_pixman_linebuf_create(VNC_SERVER_FB_FORMAT, width);
+        int w = pixman_image_get_width(vd->server);
+        tmpbuf = qemu_pixman_linebuf_create(VNC_SERVER_FB_FORMAT, w);
     } else {
         int guest_bpp =
             PIXMAN_FORMAT_BPP(pixman_image_get_format(vd->guest.fb));
diff --git a/ui/vnc-enc-zrle.c.inc b/ui/vnc-enc-zrle.c.inc
index a8ca37d05e..2ef7501d52 100644
--- a/ui/vnc-enc-zrle.c.inc
+++ b/ui/vnc-enc-zrle.c.inc
@@ -153,11 +153,12 @@ static void ZRLE_ENCODE_TILE(VncState *vs, ZRLE_PIXEL *data, int w, int h,
     }
 
     if (use_rle) {
-        ZRLE_PIXEL *ptr = data;
-        ZRLE_PIXEL *end = ptr + w * h;
         ZRLE_PIXEL *run_start;
         ZRLE_PIXEL pix;
 
+        ptr = data;
+        end = ptr + w * h;
+
         while (ptr < end) {
             int len;
             int index = 0;
@@ -198,7 +199,7 @@ static void ZRLE_ENCODE_TILE(VncState *vs, ZRLE_PIXEL *data, int w, int h,
         }
     } else if (use_palette) { /* no RLE */
         int bppp;
-        ZRLE_PIXEL *ptr = data;
+        ptr = data;
 
         /* packed pixels */
 
@@ -241,8 +242,6 @@ static void ZRLE_ENCODE_TILE(VncState *vs, ZRLE_PIXEL *data, int w, int h,
 #endif
         {
 #ifdef ZRLE_COMPACT_PIXEL
-            ZRLE_PIXEL *ptr;
-
             for (ptr = data; ptr < data + w * h; ptr++) {
                 ZRLE_WRITE_PIXEL(vs, *ptr);
             }
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 18:32:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 18:32:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605891.943558 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zY-0000eC-FO; Wed, 20 Sep 2023 18:32:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605891.943558; Wed, 20 Sep 2023 18:32:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zY-0000cn-6f; Wed, 20 Sep 2023 18:32:04 +0000
Received: by outflank-mailman (input) for mailman id 605891;
 Wed, 20 Sep 2023 18:32:02 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wKQE=FE=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qj1zV-0007WV-Vy
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 18:32:01 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fc059d0c-57e3-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 20:32:00 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73])
 by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-588-xMfiEogbMbSUk9DdrqY6Qw-1; Wed, 20 Sep 2023 14:31:52 -0400
Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com
 [10.11.54.9])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 54CE91C09A47;
 Wed, 20 Sep 2023 18:31:51 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 5ECE2711282;
 Wed, 20 Sep 2023 18:31:50 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 3207221E6900; Wed, 20 Sep 2023 20:31:49 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fc059d0c-57e3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695234719;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=xM3wAYFzQP3gxuYWUEVSWgPQWfxSd8/nVZzQqU4x75o=;
	b=dKogQBXSULDZf12xC/TE84VsjhDPWSV3+ixJxIsNBtUDUHLbIte53WL/iJoAkKxbmgy8aJ
	vRfJeq79bsXc2EEX9p0vpQAtQkO+tG8nsOhareTPzeQwEcgWVvLuwOA8YT8AGxsmnI28AK
	9u/dwjnQj6Hs3G1/RvGOmU8MCJcZZAk=
X-MC-Unique: xMfiEogbMbSUk9DdrqY6Qw-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v2 0/7] Steps towards enabling -Wshadow=local
Date: Wed, 20 Sep 2023 20:31:42 +0200
Message-ID: <20230920183149.1105333-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.9

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand.  Bugs love to hide in such code.
Evidence: PATCH 1.

Enabling -Wshadow would prevent bugs like this one.  But we'd have to
clean up all the offenders first.  We got a lot of them.

Enabling -Wshadow=local should be less work for almost as much gain.
I took a stab at it.  There's a small, exciting part, and a large,
boring part.

The exciting part is dark preprocessor sorcery to let us nest macro
calls without shadowing: PATCH 7.

The boring part is cleaning up all the other warnings.  I did some
[PATCH 2-6], but ran out of steam long before finishing the job.  Some
160 unique warnings remain.

To see them, enable -Wshadow=local like so:

diff --git a/meson.build b/meson.build
index 98e68ef0b1..9fc4c7ac9d 100644
--- a/meson.build
+++ b/meson.build
@@ -466,6 +466,9 @@ warn_flags = [
   '-Wno-tautological-type-limit-compare',
   '-Wno-psabi',
   '-Wno-gnu-variable-sized-type-not-at-end',
+  '-Wshadow=local',
+  '-Wno-error=shadow=local',
+  '-Wno-error=shadow=compatible-local',
 ]
 
 if targetos != 'darwin'

You may want to drop the -Wno-error lines.

v2:
* PATCH 3+6: Mollify checkpatch
* PATCH 4: Redo for clearer code, R-bys dropped [Kevin]
* PATCH 5: Rename tweaked [Kevin]
* PATCH 6: Rename local @tran instead of the parameter [Kevin]
* PATCH 7: Drop PASTE(), use glue() instead [Richard]; pass
  identifiers instead of __COUNTER__ for readability [Eric]; add
  comments

Markus Armbruster (7):
  migration/rdma: Fix save_page method to fail on polling error
  migration: Clean up local variable shadowing
  ui: Clean up local variable shadowing
  block/dirty-bitmap: Clean up local variable shadowing
  block/vdi: Clean up local variable shadowing
  block: Clean up local variable shadowing
  qobject atomics osdep: Make a few macros more hygienic

 include/qapi/qmp/qobject.h      | 11 +++++++++--
 include/qemu/atomic.h           | 17 +++++++++++-----
 include/qemu/compiler.h         |  3 +++
 include/qemu/osdep.h            | 31 +++++++++++++++++++++--------
 block.c                         |  9 +++++----
 block/monitor/bitmap-qmp-cmds.c | 19 +++++++++---------
 block/qcow2-bitmap.c            |  3 +--
 block/rbd.c                     |  2 +-
 block/stream.c                  |  1 -
 block/vdi.c                     |  7 +++----
 block/vvfat.c                   | 35 +++++++++++++++++----------------
 hw/block/xen-block.c            |  6 +++---
 migration/block.c               |  4 ++--
 migration/ram.c                 |  8 +++-----
 migration/rdma.c                | 14 ++++++++-----
 migration/vmstate.c             |  2 +-
 ui/gtk.c                        | 14 ++++++-------
 ui/spice-display.c              |  9 +++++----
 ui/vnc-palette.c                |  2 --
 ui/vnc.c                        | 12 +++++------
 ui/vnc-enc-zrle.c.inc           |  9 ++++-----
 21 files changed, 125 insertions(+), 93 deletions(-)

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 18:32:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 18:32:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605885.943503 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zT-0007nW-5k; Wed, 20 Sep 2023 18:31:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605885.943503; Wed, 20 Sep 2023 18:31:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zT-0007nP-1Q; Wed, 20 Sep 2023 18:31:59 +0000
Received: by outflank-mailman (input) for mailman id 605885;
 Wed, 20 Sep 2023 18:31:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wKQE=FE=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qj1zR-0007W9-Ag
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 18:31:57 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f97017b6-57e3-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 20:31:56 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-319-klMOH7FoOeqRVhW53sYvwQ-1; Wed, 20 Sep 2023 14:31:52 -0400
Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com
 [10.11.54.9])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 54B2B811E86;
 Wed, 20 Sep 2023 18:31:51 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 5ECAC711281;
 Wed, 20 Sep 2023 18:31:50 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 3F49821E6906; Wed, 20 Sep 2023 20:31:49 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f97017b6-57e3-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695234714;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=zyO5+9rvw3/TPsjhMiZIDwj15IvwxhUWLb/O9InaZZU=;
	b=aE/l9RXxp+nH5rzGXz7sZVh0l2WGE79DC5LqYSeLM2S1wuEPcEEZpbTbekvqt/UN5US02B
	ZQ7PqnweXcFq2jExNgtcN62MA8n555syvIoUASo8EUovXQRMxppcQ0mqRzw8fpwk5mAIBE
	ons3R+NgPlHbf0b+aXm4BiOIMLlN33Y=
X-MC-Unique: klMOH7FoOeqRVhW53sYvwQ-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v2 4/7] block/dirty-bitmap: Clean up local variable shadowing
Date: Wed, 20 Sep 2023 20:31:46 +0200
Message-ID: <20230920183149.1105333-5-armbru@redhat.com>
In-Reply-To: <20230920183149.1105333-1-armbru@redhat.com>
References: <20230920183149.1105333-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.9

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand.  Tracked down with -Wshadow=local.
Clean up: rename both the pair of parameters and the pair of local
variables.  While there, move the local variables to function scope.

Suggested-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
 block/monitor/bitmap-qmp-cmds.c | 19 ++++++++++---------
 block/qcow2-bitmap.c            |  3 +--
 2 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/block/monitor/bitmap-qmp-cmds.c b/block/monitor/bitmap-qmp-cmds.c
index 55f778f5af..70d01a3776 100644
--- a/block/monitor/bitmap-qmp-cmds.c
+++ b/block/monitor/bitmap-qmp-cmds.c
@@ -258,37 +258,38 @@ void qmp_block_dirty_bitmap_disable(const char *node, const char *name,
     bdrv_disable_dirty_bitmap(bitmap);
 }
 
-BdrvDirtyBitmap *block_dirty_bitmap_merge(const char *node, const char *target,
+BdrvDirtyBitmap *block_dirty_bitmap_merge(const char *dst_node,
+                                          const char *dst_bitmap,
                                           BlockDirtyBitmapOrStrList *bms,
                                           HBitmap **backup, Error **errp)
 {
     BlockDriverState *bs;
     BdrvDirtyBitmap *dst, *src;
     BlockDirtyBitmapOrStrList *lst;
+    const char *src_node, *src_bitmap;
     HBitmap *local_backup = NULL;
 
     GLOBAL_STATE_CODE();
 
-    dst = block_dirty_bitmap_lookup(node, target, &bs, errp);
+    dst = block_dirty_bitmap_lookup(dst_node, dst_bitmap, &bs, errp);
     if (!dst) {
         return NULL;
     }
 
     for (lst = bms; lst; lst = lst->next) {
         switch (lst->value->type) {
-            const char *name, *node;
         case QTYPE_QSTRING:
-            name = lst->value->u.local;
-            src = bdrv_find_dirty_bitmap(bs, name);
+            src_bitmap = lst->value->u.local;
+            src = bdrv_find_dirty_bitmap(bs, src_bitmap);
             if (!src) {
-                error_setg(errp, "Dirty bitmap '%s' not found", name);
+                error_setg(errp, "Dirty bitmap '%s' not found", src_bitmap);
                 goto fail;
             }
             break;
         case QTYPE_QDICT:
-            node = lst->value->u.external.node;
-            name = lst->value->u.external.name;
-            src = block_dirty_bitmap_lookup(node, name, NULL, errp);
+            src_node = lst->value->u.external.node;
+            src_bitmap = lst->value->u.external.name;
+            src = block_dirty_bitmap_lookup(src_node, src_bitmap, NULL, errp);
             if (!src) {
                 goto fail;
             }
diff --git a/block/qcow2-bitmap.c b/block/qcow2-bitmap.c
index 037fa2d435..ffd5cd3b23 100644
--- a/block/qcow2-bitmap.c
+++ b/block/qcow2-bitmap.c
@@ -1555,7 +1555,6 @@ bool qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs,
     FOR_EACH_DIRTY_BITMAP(bs, bitmap) {
         const char *name = bdrv_dirty_bitmap_name(bitmap);
         uint32_t granularity = bdrv_dirty_bitmap_granularity(bitmap);
-        Qcow2Bitmap *bm;
 
         if (!bdrv_dirty_bitmap_get_persistence(bitmap) ||
             bdrv_dirty_bitmap_inconsistent(bitmap)) {
@@ -1625,7 +1624,7 @@ bool qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs,
 
     /* allocate clusters and store bitmaps */
     QSIMPLEQ_FOREACH(bm, bm_list, entry) {
-        BdrvDirtyBitmap *bitmap = bm->dirty_bitmap;
+        bitmap = bm->dirty_bitmap;
 
         if (bitmap == NULL || bdrv_dirty_bitmap_readonly(bitmap)) {
             continue;
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 18:32:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 18:32:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605888.943524 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zW-0008DF-25; Wed, 20 Sep 2023 18:32:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605888.943524; Wed, 20 Sep 2023 18:32:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zV-0008AP-OA; Wed, 20 Sep 2023 18:32:01 +0000
Received: by outflank-mailman (input) for mailman id 605888;
 Wed, 20 Sep 2023 18:32:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wKQE=FE=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qj1zU-0007WV-6w
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 18:32:00 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fadc242b-57e3-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 20:31:58 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73])
 by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-616-JMOR339hPOO4Fkf-bHeIMg-1; Wed, 20 Sep 2023 14:31:53 -0400
Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com
 [10.11.54.8])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id AE28B3816D8E;
 Wed, 20 Sep 2023 18:31:52 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 63FB1C185EF;
 Wed, 20 Sep 2023 18:31:52 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 467D921E690C; Wed, 20 Sep 2023 20:31:49 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fadc242b-57e3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695234717;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=p9yrL6sfTg7uK2lAJ2dhNnzI9tHwDDSYk4qrcqZO5/I=;
	b=bB1evOPB8TLO70v62TtAF41vcFPPPAPBLfcb2dRUcfZfisQJV3eQIz7nCP4BIkGLY0Vjq0
	+JB72Fe6oBUc3mZE4dxjLBd/2vYxUCZkrmeDowpSq2t5YfAAzCPb7drYeBpMV5yKv+lWA2
	oz3H/A7iPMNDGTlR56e7nctXUQQd8TA=
X-MC-Unique: JMOR339hPOO4Fkf-bHeIMg-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v2 6/7] block: Clean up local variable shadowing
Date: Wed, 20 Sep 2023 20:31:48 +0200
Message-ID: <20230920183149.1105333-7-armbru@redhat.com>
In-Reply-To: <20230920183149.1105333-1-armbru@redhat.com>
References: <20230920183149.1105333-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.8

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand.  Tracked down with -Wshadow=local.
Clean up: delete inner declarations when they are actually redundant,
else rename variables.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Acked-by: Anthony PERARD <anthony.perard@citrix.com>
Acked-by: Ilya Dryomov <idryomov@gmail.com>
---
 block.c              |  9 +++++----
 block/rbd.c          |  2 +-
 block/stream.c       |  1 -
 block/vvfat.c        | 35 ++++++++++++++++++-----------------
 hw/block/xen-block.c |  6 +++---
 5 files changed, 27 insertions(+), 26 deletions(-)

diff --git a/block.c b/block.c
index 8da89aaa62..bb5dd17e9c 100644
--- a/block.c
+++ b/block.c
@@ -3035,18 +3035,19 @@ static BdrvChild *bdrv_attach_child_common(BlockDriverState *child_bs,
                                               &local_err);
 
         if (ret < 0 && child_class->change_aio_ctx) {
-            Transaction *tran = tran_new();
+            Transaction *aio_ctx_tran = tran_new();
             GHashTable *visited = g_hash_table_new(NULL, NULL);
             bool ret_child;
 
             g_hash_table_add(visited, new_child);
             ret_child = child_class->change_aio_ctx(new_child, child_ctx,
-                                                    visited, tran, NULL);
+                                                    visited, aio_ctx_tran,
+                                                    NULL);
             if (ret_child == true) {
                 error_free(local_err);
                 ret = 0;
             }
-            tran_finalize(tran, ret_child == true ? 0 : -1);
+            tran_finalize(aio_ctx_tran, ret_child == true ? 0 : -1);
             g_hash_table_destroy(visited);
         }
 
@@ -6077,12 +6078,12 @@ void bdrv_iterate_format(void (*it)(void *opaque, const char *name),
     QLIST_FOREACH(drv, &bdrv_drivers, list) {
         if (drv->format_name) {
             bool found = false;
-            int i = count;
 
             if (use_bdrv_whitelist && !bdrv_is_whitelisted(drv, read_only)) {
                 continue;
             }
 
+            i = count;
             while (formats && i && !found) {
                 found = !strcmp(formats[--i], drv->format_name);
             }
diff --git a/block/rbd.c b/block/rbd.c
index 978671411e..472ca05cba 100644
--- a/block/rbd.c
+++ b/block/rbd.c
@@ -1290,7 +1290,7 @@ static int coroutine_fn qemu_rbd_start_co(BlockDriverState *bs,
          * operations that exceed the current size.
          */
         if (offset + bytes > s->image_size) {
-            int r = qemu_rbd_resize(bs, offset + bytes);
+            r = qemu_rbd_resize(bs, offset + bytes);
             if (r < 0) {
                 return r;
             }
diff --git a/block/stream.c b/block/stream.c
index e522bbdec5..007253880b 100644
--- a/block/stream.c
+++ b/block/stream.c
@@ -282,7 +282,6 @@ void stream_start(const char *job_id, BlockDriverState *bs,
     /* Make sure that the image is opened in read-write mode */
     bs_read_only = bdrv_is_read_only(bs);
     if (bs_read_only) {
-        int ret;
         /* Hold the chain during reopen */
         if (bdrv_freeze_backing_chain(bs, above_base, errp) < 0) {
             return;
diff --git a/block/vvfat.c b/block/vvfat.c
index 0ddc91fc09..856b479c91 100644
--- a/block/vvfat.c
+++ b/block/vvfat.c
@@ -777,7 +777,6 @@ static int read_directory(BDRVVVFATState* s, int mapping_index)
     while((entry=readdir(dir))) {
         unsigned int length=strlen(dirname)+2+strlen(entry->d_name);
         char* buffer;
-        direntry_t* direntry;
         struct stat st;
         int is_dot=!strcmp(entry->d_name,".");
         int is_dotdot=!strcmp(entry->d_name,"..");
@@ -857,7 +856,7 @@ static int read_directory(BDRVVVFATState* s, int mapping_index)
 
     /* fill with zeroes up to the end of the cluster */
     while(s->directory.next%(0x10*s->sectors_per_cluster)) {
-        direntry_t* direntry=array_get_next(&(s->directory));
+        direntry = array_get_next(&(s->directory));
         memset(direntry,0,sizeof(direntry_t));
     }
 
@@ -1962,24 +1961,24 @@ get_cluster_count_for_direntry(BDRVVVFATState* s, direntry_t* direntry, const ch
                  * This is horribly inefficient, but that is okay, since
                  * it is rarely executed, if at all.
                  */
-                int64_t offset = cluster2sector(s, cluster_num);
+                int64_t offs = cluster2sector(s, cluster_num);
 
                 vvfat_close_current_file(s);
                 for (i = 0; i < s->sectors_per_cluster; i++) {
                     int res;
 
                     res = bdrv_is_allocated(s->qcow->bs,
-                                            (offset + i) * BDRV_SECTOR_SIZE,
+                                            (offs + i) * BDRV_SECTOR_SIZE,
                                             BDRV_SECTOR_SIZE, NULL);
                     if (res < 0) {
                         return -1;
                     }
                     if (!res) {
-                        res = vvfat_read(s->bs, offset, s->cluster_buffer, 1);
+                        res = vvfat_read(s->bs, offs, s->cluster_buffer, 1);
                         if (res) {
                             return -1;
                         }
-                        res = bdrv_co_pwrite(s->qcow, offset * BDRV_SECTOR_SIZE,
+                        res = bdrv_co_pwrite(s->qcow, offs * BDRV_SECTOR_SIZE,
                                              BDRV_SECTOR_SIZE, s->cluster_buffer,
                                              0);
                         if (res < 0) {
@@ -2467,8 +2466,9 @@ commit_direntries(BDRVVVFATState* s, int dir_index, int parent_mapping_index)
 
     for (c = first_cluster; !fat_eof(s, c); c = modified_fat_get(s, c)) {
         direntry_t *first_direntry;
-        void* direntry = array_get(&(s->directory), current_dir_index);
-        int ret = vvfat_read(s->bs, cluster2sector(s, c), direntry,
+
+        direntry = array_get(&(s->directory), current_dir_index);
+        ret = vvfat_read(s->bs, cluster2sector(s, c), (uint8_t *)direntry,
                 s->sectors_per_cluster);
         if (ret)
             return ret;
@@ -2690,12 +2690,12 @@ static int handle_renames_and_mkdirs(BDRVVVFATState* s)
                 direntry_t* direntry = array_get(&(s->directory),
                         mapping->info.dir.first_dir_index);
                 uint32_t c = mapping->begin;
-                int i = 0;
+                int j = 0;
 
                 /* recurse */
                 while (!fat_eof(s, c)) {
                     do {
-                        direntry_t* d = direntry + i;
+                        direntry_t *d = direntry + j;
 
                         if (is_file(d) || (is_directory(d) && !is_dot(d))) {
                             int l;
@@ -2716,8 +2716,8 @@ static int handle_renames_and_mkdirs(BDRVVVFATState* s)
 
                             schedule_rename(s, m->begin, new_path);
                         }
-                        i++;
-                    } while((i % (0x10 * s->sectors_per_cluster)) != 0);
+                        j++;
+                    } while (j % (0x10 * s->sectors_per_cluster) != 0);
                     c = fat_get(s, c);
                 }
             }
@@ -2804,16 +2804,16 @@ static int coroutine_fn GRAPH_RDLOCK handle_commits(BDRVVVFATState* s)
             int begin = commit->param.new_file.first_cluster;
             mapping_t* mapping = find_mapping_for_cluster(s, begin);
             direntry_t* entry;
-            int i;
+            int j;
 
             /* find direntry */
-            for (i = 0; i < s->directory.next; i++) {
-                entry = array_get(&(s->directory), i);
+            for (j = 0; j < s->directory.next; j++) {
+                entry = array_get(&(s->directory), j);
                 if (is_file(entry) && begin_of_direntry(entry) == begin)
                     break;
             }
 
-            if (i >= s->directory.next) {
+            if (j >= s->directory.next) {
                 fail = -6;
                 continue;
             }
@@ -2833,8 +2833,9 @@ static int coroutine_fn GRAPH_RDLOCK handle_commits(BDRVVVFATState* s)
             mapping->mode = MODE_NORMAL;
             mapping->info.file.offset = 0;
 
-            if (commit_one_file(s, i, 0))
+            if (commit_one_file(s, j, 0)) {
                 fail = -7;
+            }
 
             break;
         }
diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
index 3906b9058b..a07cd7eb5d 100644
--- a/hw/block/xen-block.c
+++ b/hw/block/xen-block.c
@@ -369,7 +369,7 @@ static void xen_block_get_vdev(Object *obj, Visitor *v, const char *name,
     case XEN_BLOCK_VDEV_TYPE_XVD:
     case XEN_BLOCK_VDEV_TYPE_HD:
     case XEN_BLOCK_VDEV_TYPE_SD: {
-        char *name = disk_to_vbd_name(vdev->disk);
+        char *vbd_name = disk_to_vbd_name(vdev->disk);
 
         str = g_strdup_printf("%s%s%lu",
                               (vdev->type == XEN_BLOCK_VDEV_TYPE_XVD) ?
@@ -377,8 +377,8 @@ static void xen_block_get_vdev(Object *obj, Visitor *v, const char *name,
                               (vdev->type == XEN_BLOCK_VDEV_TYPE_HD) ?
                               "hd" :
                               "sd",
-                              name, vdev->partition);
-        g_free(name);
+                              vbd_name, vdev->partition);
+        g_free(vbd_name);
         break;
     }
     default:
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 18:32:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 18:32:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605884.943492 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zR-0007WR-TW; Wed, 20 Sep 2023 18:31:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605884.943492; Wed, 20 Sep 2023 18:31:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zR-0007WK-QS; Wed, 20 Sep 2023 18:31:57 +0000
Received: by outflank-mailman (input) for mailman id 605884;
 Wed, 20 Sep 2023 18:31:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wKQE=FE=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qj1zQ-0007W9-N0
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 18:31:56 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f908b429-57e3-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 20:31:55 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-319-lOVAYoqTP7-l3Mnpz4ACwQ-1; Wed, 20 Sep 2023 14:31:52 -0400
Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com
 [10.11.54.1])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 52CC285A5BA;
 Wed, 20 Sep 2023 18:31:51 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 5EB9840C2064;
 Wed, 20 Sep 2023 18:31:50 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 3818521E6904; Wed, 20 Sep 2023 20:31:49 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f908b429-57e3-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695234714;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=Cua8FyWSMnOBRwAouMn6v8fHUxBoBkJqqrwS0ytd8G4=;
	b=EmYk/8+o7uiB0B1nTOpRFRemNOMG5osx/RuX+l5R+87LwBhsUu+7Z3qhZOIHAabJ27X6IO
	sqZvJPF4b7qVuLggG6qVhPND0+y6q2co1KalF1k2DP4Pa7+E4P9gCvd4iSQQsIxowFUDXS
	sgrhMfeGF97P+YQpr979fySCR0k9ybI=
X-MC-Unique: lOVAYoqTP7-l3Mnpz4ACwQ-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v2 2/7] migration: Clean up local variable shadowing
Date: Wed, 20 Sep 2023 20:31:44 +0200
Message-ID: <20230920183149.1105333-3-armbru@redhat.com>
In-Reply-To: <20230920183149.1105333-1-armbru@redhat.com>
References: <20230920183149.1105333-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.1

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand.  Tracked down with -Wshadow=local.
Clean up: delete inner declarations when they are actually redundant,
else rename variables.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
---
 migration/block.c   | 4 ++--
 migration/ram.c     | 8 +++-----
 migration/rdma.c    | 8 +++++---
 migration/vmstate.c | 2 +-
 4 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/migration/block.c b/migration/block.c
index 86c2256a2b..eb6aafeb9e 100644
--- a/migration/block.c
+++ b/migration/block.c
@@ -440,8 +440,8 @@ static int init_blk_migration(QEMUFile *f)
     /* Can only insert new BDSes now because doing so while iterating block
      * devices may end up in a deadlock (iterating the new BDSes, too). */
     for (i = 0; i < num_bs; i++) {
-        BlkMigDevState *bmds = bmds_bs[i].bmds;
-        BlockDriverState *bs = bmds_bs[i].bs;
+        bmds = bmds_bs[i].bmds;
+        bs = bmds_bs[i].bs;
 
         if (bmds) {
             ret = blk_insert_bs(bmds->blk, bs, &local_err);
diff --git a/migration/ram.c b/migration/ram.c
index 9040d66e61..0c202f8109 100644
--- a/migration/ram.c
+++ b/migration/ram.c
@@ -3517,8 +3517,6 @@ int colo_init_ram_cache(void)
     * we use the same name 'ram_bitmap' as for migration.
     */
     if (ram_bytes_total()) {
-        RAMBlock *block;
-
         RAMBLOCK_FOREACH_NOT_IGNORED(block) {
             unsigned long pages = block->max_length >> TARGET_PAGE_BITS;
             block->bmap = bitmap_new(pages);
@@ -3998,12 +3996,12 @@ static int ram_load_precopy(QEMUFile *f)
                         }
                     }
                     if (migrate_ignore_shared()) {
-                        hwaddr addr = qemu_get_be64(f);
+                        hwaddr addr2 = qemu_get_be64(f);
                         if (migrate_ram_is_ignored(block) &&
-                            block->mr->addr != addr) {
+                            block->mr->addr != addr2) {
                             error_report("Mismatched GPAs for block %s "
                                          "%" PRId64 "!= %" PRId64,
-                                         id, (uint64_t)addr,
+                                         id, (uint64_t)addr2,
                                          (uint64_t)block->mr->addr);
                             ret = -EINVAL;
                         }
diff --git a/migration/rdma.c b/migration/rdma.c
index 3915d1d7c9..c78ddfcb74 100644
--- a/migration/rdma.c
+++ b/migration/rdma.c
@@ -1902,9 +1902,11 @@ static int qemu_rdma_exchange_send(RDMAContext *rdma, RDMAControlHeader *head,
      * by waiting for a READY message.
      */
     if (rdma->control_ready_expected) {
-        RDMAControlHeader resp;
-        ret = qemu_rdma_exchange_get_response(rdma,
-                                    &resp, RDMA_CONTROL_READY, RDMA_WRID_READY);
+        RDMAControlHeader resp_ignored;
+
+        ret = qemu_rdma_exchange_get_response(rdma, &resp_ignored,
+                                              RDMA_CONTROL_READY,
+                                              RDMA_WRID_READY);
         if (ret < 0) {
             return ret;
         }
diff --git a/migration/vmstate.c b/migration/vmstate.c
index 31842c3afb..438ea77cfa 100644
--- a/migration/vmstate.c
+++ b/migration/vmstate.c
@@ -97,7 +97,7 @@ int vmstate_load_state(QEMUFile *f, const VMStateDescription *vmsd,
         return -EINVAL;
     }
     if (vmsd->pre_load) {
-        int ret = vmsd->pre_load(opaque);
+        ret = vmsd->pre_load(opaque);
         if (ret) {
             return ret;
         }
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 18:32:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 18:32:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605889.943531 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zW-0008Ke-IP; Wed, 20 Sep 2023 18:32:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605889.943531; Wed, 20 Sep 2023 18:32:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj1zW-0008Hp-77; Wed, 20 Sep 2023 18:32:02 +0000
Received: by outflank-mailman (input) for mailman id 605889;
 Wed, 20 Sep 2023 18:32:00 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wKQE=FE=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qj1zU-0007W9-Me
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 18:32:00 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fbee1a60-57e3-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 20:31:59 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73])
 by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-461-hrEPizR0PjKkhEZ8z8iLZA-1; Wed, 20 Sep 2023 14:31:54 -0400
Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com
 [10.11.54.2])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id AC7CE28EC10E;
 Wed, 20 Sep 2023 18:31:52 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 64D8A40C6EBF;
 Wed, 20 Sep 2023 18:31:52 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 4A41521E690E; Wed, 20 Sep 2023 20:31:49 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fbee1a60-57e3-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695234718;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=4d8o9jVLRrQAC/C156ADyMbZ06/G9fhC8Of9ewcXqM0=;
	b=ZzpS1voN6BMlmA59e3w/qgCeAJucXXblcAJrlVOpu4y6grOPlr8NNW9lgqq0IaHDjim0Gk
	sABq3ZNzcWiW/LO2+caenfahGCFeCbjEzvpFWH1uNsxhqHLgdy8mkW99YaPNp/yyLD8VGB
	FX+TJPxex0ve/vvktKcA5lgbHuovSME=
X-MC-Unique: hrEPizR0PjKkhEZ8z8iLZA-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v2 7/7] qobject atomics osdep: Make a few macros more hygienic
Date: Wed, 20 Sep 2023 20:31:49 +0200
Message-ID: <20230920183149.1105333-8-armbru@redhat.com>
In-Reply-To: <20230920183149.1105333-1-armbru@redhat.com>
References: <20230920183149.1105333-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2

Variables declared in macros can shadow other variables.  Much of the
time, this is harmless, e.g.:

    #define _FDT(exp)                                                  \
        do {                                                           \
            int ret = (exp);                                           \
            if (ret < 0) {                                             \
                error_report("error creating device tree: %s: %s",   \
                        #exp, fdt_strerror(ret));                      \
                exit(1);                                               \
            }                                                          \
        } while (0)

Harmless shadowing in h_client_architecture_support():

        target_ulong ret;

        [...]

        ret = do_client_architecture_support(cpu, spapr, vec, fdt_bufsize);
        if (ret == H_SUCCESS) {
            _FDT((fdt_pack(spapr->fdt_blob)));
            [...]
        }

        return ret;

However, we can get in trouble when the shadowed variable is used in a
macro argument:

    #define QOBJECT(obj) ({                                 \
        typeof(obj) o = (obj);                              \
        o ? container_of(&(o)->base, QObject, base) : NULL; \
     })

QOBJECT(o) expands into

    ({
--->    typeof(o) o = (o);
        o ? container_of(&(o)->base, QObject, base) : NULL;
    })

Unintended variable name capture at --->.  We'd be saved by
-Winit-self.  But I could certainly construct more elaborate death
traps that don't trigger it.

To reduce the risk of trapping ourselves, we use variable names in
macros that no sane person would use elsewhere.  Here's our actual
definition of QOBJECT():

    #define QOBJECT(obj) ({                                         \
        typeof(obj) _obj = (obj);                                   \
        _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
    })

Works well enough until we nest macro calls.  For instance, with

    #define qobject_ref(obj) ({                     \
        typeof(obj) _obj = (obj);                   \
        qobject_ref_impl(QOBJECT(_obj));            \
        _obj;                                       \
    })

the expression qobject_ref(obj) expands into

    ({
        typeof(obj) _obj = (obj);
        qobject_ref_impl(
            ({
--->            typeof(_obj) _obj = (_obj);
                _obj ? container_of(&(_obj)->base, QObject, base) : NULL;
            }));
        _obj;
    })

Unintended variable name capture at --->.

The only reliable way to prevent unintended variable name capture is
-Wshadow.

One blocker for enabling it is shadowing hiding in function-like
macros like

     qdict_put(dict, "name", qobject_ref(...))

qdict_put() wraps its last argument in QOBJECT(), and the last
argument here contains another QOBJECT().

Use dark preprocessor sorcery to make the macros that give us this
problem use different variable names on every call.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
---
 include/qapi/qmp/qobject.h | 11 +++++++++--
 include/qemu/atomic.h      | 17 ++++++++++++-----
 include/qemu/compiler.h    |  3 +++
 include/qemu/osdep.h       | 31 +++++++++++++++++++++++--------
 4 files changed, 47 insertions(+), 15 deletions(-)

diff --git a/include/qapi/qmp/qobject.h b/include/qapi/qmp/qobject.h
index 9003b71fd3..d36cc97805 100644
--- a/include/qapi/qmp/qobject.h
+++ b/include/qapi/qmp/qobject.h
@@ -45,10 +45,17 @@ struct QObject {
     struct QObjectBase_ base;
 };
 
-#define QOBJECT(obj) ({                                         \
+/*
+ * Preprocessory sorcery ahead: use a different identifier for the
+ * local variable in each expansion, so we can nest macro calls
+ * without shadowing variables.
+ */
+#define QOBJECT_INTERNAL(obj, _obj) ({                          \
     typeof(obj) _obj = (obj);                                   \
-    _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
+    _obj                                                        \
+        ? container_of(&(_obj)->base, QObject, base) : NULL;    \
 })
+#define QOBJECT(obj) QOBJECT_INTERNAL((obj), MAKE_IDENTFIER(_obj))
 
 /* Required for qobject_to() */
 #define QTYPE_CAST_TO_QNull     QTYPE_QNULL
diff --git a/include/qemu/atomic.h b/include/qemu/atomic.h
index d95612f7a0..d4cbd01909 100644
--- a/include/qemu/atomic.h
+++ b/include/qemu/atomic.h
@@ -157,13 +157,20 @@
     smp_read_barrier_depends();
 #endif
 
-#define qatomic_rcu_read(ptr)                          \
-    ({                                                 \
+/*
+ * Preprocessory sorcery ahead: use a different identifier for the
+ * local variable in each expansion, so we can nest macro calls
+ * without shadowing variables.
+ */
+#define qatomic_rcu_read_internal(ptr, _val)            \
+    ({                                                  \
     qemu_build_assert(sizeof(*ptr) <= ATOMIC_REG_SIZE); \
-    typeof_strip_qual(*ptr) _val;                      \
-    qatomic_rcu_read__nocheck(ptr, &_val);             \
-    _val;                                              \
+    typeof_strip_qual(*ptr) _val;                       \
+    qatomic_rcu_read__nocheck(ptr, &_val);              \
+    _val;                                               \
     })
+#define qatomic_rcu_read(ptr) \
+    qatomic_rcu_read_internal((ptr), MAKE_IDENTFIER(_val))
 
 #define qatomic_rcu_set(ptr, i) do {                   \
     qemu_build_assert(sizeof(*ptr) <= ATOMIC_REG_SIZE); \
diff --git a/include/qemu/compiler.h b/include/qemu/compiler.h
index a309f90c76..03236d830c 100644
--- a/include/qemu/compiler.h
+++ b/include/qemu/compiler.h
@@ -37,6 +37,9 @@
 #define tostring(s) #s
 #endif
 
+/* Expands into an identifier stemN, where N is another number each time */
+#define MAKE_IDENTFIER(stem) glue(stem, __COUNTER__)
+
 #ifndef likely
 #define likely(x)   __builtin_expect(!!(x), 1)
 #define unlikely(x)   __builtin_expect(!!(x), 0)
diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
index 2897720fac..0d39bb1876 100644
--- a/include/qemu/osdep.h
+++ b/include/qemu/osdep.h
@@ -383,19 +383,28 @@ void QEMU_ERROR("code path is reachable")
  * determined by the pre-processor instead of the compiler, you'll
  * have to open-code it.  Sadly, Coverity is severely confused by the
  * constant variants, so we have to dumb things down there.
+ *
+ * Preprocessory sorcery ahead: use different identifiers for the
+ * local variables in each expansion, so we can nest macro calls
+ * without shadowing variables.
  */
-#undef MIN
-#define MIN(a, b)                                       \
+#define MIN_INTERNAL(a, b, _a, _b)                      \
     ({                                                  \
         typeof(1 ? (a) : (b)) _a = (a), _b = (b);       \
         _a < _b ? _a : _b;                              \
     })
-#undef MAX
-#define MAX(a, b)                                       \
+#undef MIN
+#define MIN(a, b) \
+    MIN_INTERNAL((a), (b), MAKE_IDENTFIER(_a), MAKE_IDENTFIER(_b))
+
+#define MAX_INTERNAL(a, b, _a, _b)                      \
     ({                                                  \
         typeof(1 ? (a) : (b)) _a = (a), _b = (b);       \
         _a > _b ? _a : _b;                              \
     })
+#undef MAX
+#define MAX(a, b) \
+    MAX_INTERNAL((a), (b), MAKE_IDENTFIER(_a), MAKE_IDENTFIER(_b))
 
 #ifdef __COVERITY__
 # define MIN_CONST(a, b) ((a) < (b) ? (a) : (b))
@@ -416,14 +425,20 @@ void QEMU_ERROR("code path is reachable")
 /*
  * Minimum function that returns zero only if both values are zero.
  * Intended for use with unsigned values only.
+ *
+ * Preprocessory sorcery ahead: use different identifiers for the
+ * local variables in each expansion, so we can nest macro calls
+ * without shadowing variables.
  */
-#ifndef MIN_NON_ZERO
-#define MIN_NON_ZERO(a, b)                              \
+#define MIN_NON_ZERO_INTERNAL(a, b, _a, _b)             \
     ({                                                  \
         typeof(1 ? (a) : (b)) _a = (a), _b = (b);       \
-        _a == 0 ? _b : (_b == 0 || _b > _a) ? _a : _b;  \
+        _a == 0 ? _b                                    \
+        : (_b == 0 || _b > _a) ? _a                     \
+        : _b;                                           \
     })
-#endif
+#define MIN_NON_ZERO(a, b) \
+    MIN_NON_ZERO_INTERNAL((a), (b), MAKE_IDENTFIER(_a), MAKE_IDENTFIER(_b))
 
 /*
  * Round number down to multiple. Safe when m is not a power of 2 (see
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 18:59:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 18:59:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605933.943573 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj2PU-00026x-DO; Wed, 20 Sep 2023 18:58:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605933.943573; Wed, 20 Sep 2023 18:58:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj2PU-00026q-9k; Wed, 20 Sep 2023 18:58:52 +0000
Received: by outflank-mailman (input) for mailman id 605933;
 Wed, 20 Sep 2023 18:58:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2cdA=FE=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qj2PT-00026h-Bt
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 18:58:51 +0000
Received: from mail-wr1-x42d.google.com (mail-wr1-x42d.google.com
 [2a00:1450:4864:20::42d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bb912e3d-57e7-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 20:58:49 +0200 (CEST)
Received: by mail-wr1-x42d.google.com with SMTP id
 ffacd0b85a97d-31ff1f3cde5so139685f8f.2
 for <xen-devel@lists.xenproject.org>; Wed, 20 Sep 2023 11:58:49 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 e1-20020a5d65c1000000b00315af025098sm19288379wrw.46.2023.09.20.11.58.48
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 20 Sep 2023 11:58:48 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bb912e3d-57e7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695236329; x=1695841129; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=TDCsVEQXVvB1dzVrirmLD8hzugcckZVxRhko0DzKviU=;
        b=WaXVoMwd3jKSpkNgD5jAZHEh8Oe1I9Fvt2kXlF88/AiWGMyQqJLyAjoCE7i8VzGrz1
         PRjV9t8WHlHdzErYTXBRtturQhSc+fgV0G9Fp52ylqO+ixdP2TL9jHFa1fd+VvLni2wv
         uY9YSXpe4U2rzIjyqT+M4m54OaSIxP3fgvkcA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695236329; x=1695841129;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=TDCsVEQXVvB1dzVrirmLD8hzugcckZVxRhko0DzKviU=;
        b=nWdP+rPoDRwEvSCcv74ZlQqPlbDDZitm7RHxM6dYPBiPWUk2INOHpMBVf0eH5JfKcu
         LhKbqMVv+LkNzVsNfnwxChEHKgrv/FAP32ReC1JPhFHPtKswgvMDuqKJvdunFenz6g/H
         1EkJ9doQiVopq7e1zjVwPulLbmcRbJ527Wjj55xK86i7oTpx4W3QRmwuAMUJ6XQ/LH2Q
         fPGRhW60L7gkdWdfKaseifGgzDTwIyUAaSEcQUEKjC+WPGn8j8c8FWyphTE2O/Beckh9
         IXOVeBrLjpqB331pZ/LnQf+skyrzT18dmWz+rSvAj5FbtIls98+UCQClyZrkGxARgXFW
         K/Fw==
X-Gm-Message-State: AOJu0Yz1tgkiHXRGSQV4Lfnt8mfN8qtfF66llK+Qh1CLh9R1k3Dx4D24
	HBlNGIaCPlDvUxgRIJ/e73QoSg==
X-Google-Smtp-Source: AGHT+IHEMDgsHfcTbZbImvmLSGKjb8kXZjl8OKnf6F9owdz1AAQt2hRCrUQQ8LfqOL21ze5uNBo8mw==
X-Received: by 2002:a05:6000:10c7:b0:321:5d9f:2da0 with SMTP id b7-20020a05600010c700b003215d9f2da0mr3074023wrx.13.1695236328641;
        Wed, 20 Sep 2023 11:58:48 -0700 (PDT)
Message-ID: <640f6b3f-7a57-a53c-fd43-c120ac6d7f44@citrix.com>
Date: Wed, 20 Sep 2023 19:58:47 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: New MISRA C:2012 R10.3 violations due to XSA-438 fix
Content-Language: en-GB
To: Nicola Vetrini <nicola.vetrini@bugseng.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <jbeulich@suse.com>, consulting@bugseng.com,
 Stefano Stabellini <sstabellini@kernel.org>, roger.pau@citrix.com,
 Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>
References: <94f7aad4a3e6629fe947883ab0fca53f@bugseng.com>
In-Reply-To: <94f7aad4a3e6629fe947883ab0fca53f@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 20/09/2023 5:25 pm, Nicola Vetrini wrote:
> Hi all,
> 
> In light of the recent changes introduced by commit fb0ff49fe9f784bfee0370c2a3c5f20e39d7a1cb,
> as part of XSA-438 [1], the signature of function pointer 'update_cr3' in
> 'xen/arch/x86/include/asm/paging.h', line 121, changed its second parameter to a boolean.
> Consequently, all calls to that function should use a boolean to comply with MISRA C:2012
> Rule 10.3 ("The value of an expression shall not be assigned to an object with a narrower
> essential type or of a different essential type category"), but they still use integers.
> These were the ones I can find:
> xen/arch/x86/include/asm/paging.h:299:    return paging_get_hostmode(v)->update_cr3(v, 1, noflush);
> xen/arch/x86/mm/hap/hap.c:797:    hap_update_cr3(v, 0, false);
> xen/arch/x86/mm/shadow/common.c:2513:    v->arch.paging.mode->update_cr3(v, 0, false);
> xen/arch/x86/mm/shadow/multi.c:2478:        v->arch.paging.mode->update_cr3(v, 0, false);
> 
> [1]
> https://lore.kernel.org/xen-devel/E1qitNQ-0001Pu-0K@xenbits.xenproject.org/
> 

Hmm yes - the int->bool conversion is not relevant to the rest of the
change, and shouldn't have been part of a security fix even before
taking MISRA into consideration.

I truly detest APIs like this - whether it's 0/1 or true/false, the
callsites are unreadable due to the obfuscation.

However, Xen even has paging_lock_recursive() for the cases where the
paging lock may or may not be held, and needs to be.  So I'm fairly sure
the do_locking parameter is bogus in the first place.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 19:16:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 19:16:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605940.943584 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj2gn-00060x-UL; Wed, 20 Sep 2023 19:16:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605940.943584; Wed, 20 Sep 2023 19:16:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj2gn-00060q-PS; Wed, 20 Sep 2023 19:16:45 +0000
Received: by outflank-mailman (input) for mailman id 605940;
 Wed, 20 Sep 2023 19:16:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7wrp=FE=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qj2gm-00060k-3b
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 19:16:44 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20620.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::620])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 39e59255-57ea-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 21:16:42 +0200 (CEST)
Received: from DM5PR07CA0107.namprd07.prod.outlook.com (2603:10b6:4:ae::36) by
 SJ2PR12MB8927.namprd12.prod.outlook.com (2603:10b6:a03:547::9) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6768.31; Wed, 20 Sep 2023 19:16:36 +0000
Received: from DS3PEPF000099E0.namprd04.prod.outlook.com
 (2603:10b6:4:ae:cafe::49) by DM5PR07CA0107.outlook.office365.com
 (2603:10b6:4:ae::36) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.30 via Frontend
 Transport; Wed, 20 Sep 2023 19:16:36 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS3PEPF000099E0.mail.protection.outlook.com (10.167.17.203) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.19 via Frontend Transport; Wed, 20 Sep 2023 19:16:36 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 20 Sep
 2023 14:16:35 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 20 Sep
 2023 12:16:08 -0700
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 20 Sep 2023 14:16:07 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 39e59255-57ea-11ee-8789-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EqO80CXtnzygGBmGh3xihMP49EoFez6DuIHQnIz2avsNwcKaQSrUf0teTHoLVVgM3LPqh0M5GOXb3pLKQcDuQErx4eoO/k07juSqwpJOIQ2NL7SDk+jANDX15Fsd0PQYGp8i8YJ+4t+Ri59WTvuSnHFda8xB2+T4lvPS73rNFRb4VNEFDl2RtkfrvacMqUL5Vq8QKZj7EgcPUdAUcyRqEONRjxiIVOoKh3V+d5im3LI8l+0hT5ug3HCjsuVUPBZH9X52yv9cooEYaLsMfMfDfSRzEkTedrjIoUkJ0AsfrDc0n9Agc2NT/QgY4Lv5urO2rNJ9mlutWDSW7SGxVro2Ng==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9ckBs+Zta/aFzOpiZrgS/9p0qOXINKLnaonKuVI205g=;
 b=bbAlNKxBylmObE+d0fHyvYO9c2VCVBJ6gmTJ9N0/kSTI4MXdTIU9wQTxU3/6igEyy89mo3Oi7a+sBtfopJ+ORGvm4n86KqIPRfCFJ/9RgHAhu6aWADsdIehCBin5L0WtbN9o5OR9kq24zcKmIKlW8XysFqOdujXgzDmR1LC2o8fO5w7wk0W15sklQGTZjSVl32HgUhuHY8mQu9LZWo15o2bCnJMAANGgFg8vFZwaILanc5BGLfyC1/wg/N5YQYmATWSMuEkeQA20NbCEXdIJW1rjABjxq61QCRKiDMXmIjPIF/7xYtAqD/in6yzYLSNQ6T0T0ptXuF46BNJ7QEpWgg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=citrix.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9ckBs+Zta/aFzOpiZrgS/9p0qOXINKLnaonKuVI205g=;
 b=AZb05DPPRpllGoK4z7SuhM2Z/aNn7Q6tBaZcood36TeyIsGb4L28onZFcfThNeA6S85Wus+wOtTfNZ4BPLOynSPL7vikUq6CmaIaDuJrvt8GcOe8cpszbRDWmavgFxP1Xu8Pr0InYTGFvRasLILq+82eetFAWoQVoUPeQwqZA+4=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <0ee1b11b-17d8-0d53-6836-2c09bc083fd2@amd.com>
Date: Wed, 20 Sep 2023 15:16:00 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v9 02/16] vpci: use per-domain PCI lock to protect vpci
 structure
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu
	<wl@xen.org>, Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian
	<kevin.tian@intel.com>, Paul Durrant <paul@xen.org>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-3-volodymyr_babchuk@epam.com>
 <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099E0:EE_|SJ2PR12MB8927:EE_
X-MS-Office365-Filtering-Correlation-Id: 417b1c75-b509-446e-dd87-08dbba0e1bc7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QE/if/tcqDbLgMQXCWLHfBA7Bwm22NDBsc2+Zbp9YlmDT/g573V7OH5KLz9Lh/N5QcQHTppUcz1DuYvYgCCGYpcYwdBorDHgzyc90Lrm6sm0PzqdPBaJkEP//jp1a2X6smNo4WJSnKsPjOvTwTIcqaW64NjhypksOPd91sTuJhtzokIIj5Rk1v0zN38mJNK2JllRjG5aqSHL8WSJaJAZlXLpKuzdWbxryWXwyki9bYWfhe/msoFfPciY60G0gCQSD2/CXBh8nSadrtP/lrGzotyBA4oJG0X6CbO1nShWoR8wRo39jlvGS4ZeVZm0g7Nx+/JJ2/lkOuG3AJpyMStDOqsUbgS2CM2jhbyqYZ4xt3zSeqbx5hDdO7qBzwbOB1mRpczHidNd6otUSigWhCKoTlEdm2IgysfxCqb7hVmfLpX3wAjsNDauC8nLetIQj6PYFmJMF67krj+QgfWOQzJsYZyhEdTMVhyaIwY7cRru/nRvjzY1EH20Jf9ALVE2hXmTgtPuuuboNioVRl5OSQOc+pzEX4hPX/Y84wDkpOoCXBAMVhgrPrQ3WNkDMq3F0B2XUkm6sCPC4lwncz+2M3bNxixKv+lxwVBvtE4Hy93b+edGaQos2TjCbZnkbNzj1Kn2iNXGVLTHipoS2HqrjJFcvECsvo67fwUr96aXf4/k9Q4uW0ekJEeqV5BKO85QI+Iun/E/pvJXVQ8cDrUGCbx3K+ioyKK7xX66yeKz5RCwobcZHMvWUOfRjsX/SE8ONBiEd1KkVKUmzvf+EM3UYJT19xJWjKyHipI8q5dzCnwRBbVBq7uqj8QmbaowBJ0n+vKl
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(39860400002)(376002)(136003)(396003)(186009)(451199024)(1800799009)(82310400011)(46966006)(40470700004)(36840700001)(36756003)(16576012)(70206006)(54906003)(110136005)(70586007)(336012)(26005)(426003)(6666004)(83380400001)(2616005)(356005)(82740400003)(81166007)(86362001)(53546011)(40480700001)(36860700001)(47076005)(31696002)(316002)(40460700003)(478600001)(2906002)(7416002)(4326008)(31686004)(8676002)(41300700001)(8936002)(44832011)(5660300002)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Sep 2023 19:16:36.0667
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 417b1c75-b509-446e-dd87-08dbba0e1bc7
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS3PEPF000099E0.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8927

On 9/19/23 11:39, Roger Pau Monné wrote:
> On Tue, Aug 29, 2023 at 11:19:42PM +0000, Volodymyr Babchuk wrote:
>> diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
>> index 1edc7f1e91..545a27796e 100644
>> --- a/xen/arch/x86/hvm/vmx/vmx.c
>> +++ b/xen/arch/x86/hvm/vmx/vmx.c
>> @@ -413,8 +413,6 @@ static int cf_check vmx_pi_update_irte(const struct vcpu *v,
>>
>>      spin_unlock_irq(&desc->lock);
>>
>> -    ASSERT(pcidevs_locked());
>> -
> 
> Hm, this removal seems dubious, same with some of the removal below.
> And I don't see any comment in the log message as to why removing the
> asserts here and in __pci_enable_msi{,x}(), pci_prepare_msix() is
> safe.
> 

I suspect we may want:

    ASSERT(pcidevs_locked() || rw_is_locked(&d->pci_lock));

However, we don't have d. Using v->domain here is tricky because v may be NULL. How about passing struct domain *d as an arg to {hvm,vmx}_pi_update_irte()? Or ensuring that all callers pass a valid v?

>>      return iommu_update_ire_from_msi(msi_desc, &msi_desc->msg);
>>
>>   unlock_out:
>> diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
>> index d0bf63df1d..ba2963b7d2 100644
>> --- a/xen/arch/x86/msi.c
>> +++ b/xen/arch/x86/msi.c
>> @@ -613,7 +613,7 @@ static int msi_capability_init(struct pci_dev *dev,
>>      u8 slot = PCI_SLOT(dev->devfn);
>>      u8 func = PCI_FUNC(dev->devfn);
>>
>> -    ASSERT(pcidevs_locked());
>> +    ASSERT(pcidevs_locked() || rw_is_locked(&dev->domain->pci_lock));
>>      pos = pci_find_cap_offset(seg, bus, slot, func, PCI_CAP_ID_MSI);
>>      if ( !pos )
>>          return -ENODEV;
>> @@ -783,7 +783,7 @@ static int msix_capability_init(struct pci_dev *dev,
>>      if ( !pos )
>>          return -ENODEV;
>>
>> -    ASSERT(pcidevs_locked());
>> +    ASSERT(pcidevs_locked() || rw_is_locked(&dev->domain->pci_lock));
>>
>>      control = pci_conf_read16(dev->sbdf, msix_control_reg(pos));
>>      /*
>> @@ -1000,7 +1000,6 @@ static int __pci_enable_msi(struct msi_info *msi, struct msi_desc **desc)
>>      struct pci_dev *pdev;
>>      struct msi_desc *old_desc;
>>
>> -    ASSERT(pcidevs_locked());
>>      pdev = pci_get_pdev(NULL, msi->sbdf);
>>      if ( !pdev )
>>          return -ENODEV;

I think we can move the ASSERT here, after we obtain the pdev. Then we can add the pdev->domain->pci_lock check into the mix:

    ASSERT(pcidevs_locked() || rw_is_locked(&pdev->domain->pci_lock));

>> @@ -1055,7 +1054,6 @@ static int __pci_enable_msix(struct msi_info *msi, struct msi_desc **desc)
>>      struct pci_dev *pdev;
>>      struct msi_desc *old_desc;
>>
>> -    ASSERT(pcidevs_locked());
>>      pdev = pci_get_pdev(NULL, msi->sbdf);
>>      if ( !pdev || !pdev->msix )
>>          return -ENODEV;

Same here

>> @@ -1170,8 +1168,6 @@ int pci_prepare_msix(u16 seg, u8 bus, u8 devfn, bool off)
>>   */
>>  int pci_enable_msi(struct msi_info *msi, struct msi_desc **desc)
>>  {
>> -    ASSERT(pcidevs_locked());
>> -

This removal inside pci_enable_msi() may be okay if both __pci_enable_msi() and __pci_enable_msix() have an appropriate ASSERT.

>>      if ( !use_msi )
>>          return -EPERM;
>>

Related: in xen/drivers/passthrough/pci.c:pci_get_pdev() I run into an ASSERT with a PVH dom0:

(XEN) Assertion 'd || pcidevs_locked()' failed at drivers/passthrough/pci.c:534
(XEN) ----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
...
(XEN) Xen call trace:
(XEN)    [<ffff82d040285a3b>] R pci_get_pdev+0x4c/0xab
(XEN)    [<ffff82d04034742e>] F arch/x86/msi.c#__pci_enable_msi+0x1d/0xb4
(XEN)    [<ffff82d0403477b5>] F pci_enable_msi+0x20/0x28
(XEN)    [<ffff82d04034cfa4>] F map_domain_pirq+0x2b0/0x718
(XEN)    [<ffff82d04034e37c>] F allocate_and_map_msi_pirq+0xff/0x26b
(XEN)    [<ffff82d0402e088b>] F arch/x86/hvm/vmsi.c#vpci_msi_enable+0x53/0x9d
(XEN)    [<ffff82d0402e19d5>] F vpci_msi_arch_enable+0x36/0x6c
(XEN)    [<ffff82d04026f49d>] F drivers/vpci/msi.c#control_write+0x71/0x114
(XEN)    [<ffff82d04026d050>] F drivers/vpci/vpci.c#vpci_write_helper+0x6f/0x7c
(XEN)    [<ffff82d04026de39>] F vpci_write+0x249/0x2f9
...

With the patch applied, it's valid to call pci_get_pdev() with only d->pci_lock held, so the ASSERT in pci_get_pdev() needs to be reworked too. Inside pci_get_pdev(), d may be null, so we can't easily add || rw_is_locked(&d->pci_lock) into the ASSERT. Instead I propose something like the following, which resolves the observed assertion failure:

diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
index 572643abe412..2b4ad804510c 100644
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -531,8 +531,6 @@ struct pci_dev *pci_get_pdev(const struct domain *d, pci_sbdf_t sbdf)
 {
     struct pci_dev *pdev;

-    ASSERT(d || pcidevs_locked());
-
     /*
      * The hardware domain owns the majority of the devices in the system.
      * When there are multiple segments, traversing the per-segment list is
@@ -549,12 +547,18 @@ struct pci_dev *pci_get_pdev(const struct domain *d, pci_sbdf_t sbdf)
         list_for_each_entry ( pdev, &pseg->alldevs_list, alldevs_list )
             if ( pdev->sbdf.bdf == sbdf.bdf &&
                  (!d || pdev->domain == d) )
+            {
+                ASSERT(d || pcidevs_locked() || rw_is_locked(&pdev->domain->pci_lock));
                 return pdev;
+            }
     }
     else
         list_for_each_entry ( pdev, &d->pdev_list, domain_list )
             if ( pdev->sbdf.sbdf == sbdf.sbdf )
+            {
+                ASSERT(d || pcidevs_locked() || rw_is_locked(&pdev->domain->pci_lock));
                 return pdev;
+            }

     return NULL;
 }


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 19:22:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 19:22:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605945.943593 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj2m0-0000pn-HT; Wed, 20 Sep 2023 19:22:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605945.943593; Wed, 20 Sep 2023 19:22:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj2m0-0000pg-EP; Wed, 20 Sep 2023 19:22:08 +0000
Received: by outflank-mailman (input) for mailman id 605945;
 Wed, 20 Sep 2023 19:22:07 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=mCP7=FE=citrix.com=prvs=620374269=Andrew.Cooper3@srs-se1.protection.inumbo.net>)
 id 1qj2lz-0000pY-4O
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 19:22:07 +0000
Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com
 [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fa3f7eb8-57ea-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 21:22:05 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fa3f7eb8-57ea-11ee-8789-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695237725;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=hZ0NqDsXLXdLrTDn16BiwH9dyJsRu0Xn2cSQo7YCeas=;
  b=azGg/b6r3wRm8HWLYNdan6+RqOxfw2MfxQiUWfPLem302CmE9RrJwbw1
   Fw0YQo2XV+/AIlxSmeNdRfGF3/HpE7H5kMwshVsLflLbTDsySjpfFwE40
   BgRDFCx4ueJYrst6xPqgNqO9+9hscYqg2URHd+aLnN0ulQkcMkAkYjtTX
   I=;
X-CSE-ConnectionGUID: ITBTD5KVS0+nteeusPYlSQ==
X-CSE-MsgGUID: 1R3G3IF7Sw2RE/kfIkMzqA==
Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
X-SBRS: 4.0
X-MesageID: 122558542
X-Ironport-Server: esa6.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.123
X-Policy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:4BMu8awyvjR4lEWv9Kt6t+fmxirEfRIJ4+MujC+fZmUNrF6WrkUFz
 WVMDDjQP/2LNjPwc90jO47k8EpT7J7czIcxTANq/CAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QRvP6gT4DcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KUBy3
 8A0dRMzVUjAgf67za+gcthovf12eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP
 ZBAL2MyMlKZOUYn1lQ/UfrSmM+BgHXlfiIeg1WSvactuEDYzRBr0airO93QEjCPbZwPxBvF9
 j+apQwVBDlDDoewkhurrUmz3NXi2iD1eYE3BqSRo6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL
 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0XdtbFOkzrh+A1rDV5QexDHULVTNHZ5ots8pebR4A2
 0KNntjpLSdyq7DTQnWYnp+LqRuiNC5TKnUNDQcYTA4t89Tl5oYpgXrnVc1/GaS4itn0HzDYw
 D2QqiU6wbIJgqY2O76TpA6dxWj2/96QE1Bzv1+MNo640u9nTK+ZTbCEtHvl1q4DKpqUQ0Sah
 EkAoPHLuYjiEqqxvCCKRewMGpSg6PCELCDQjDZTInUxy9i+0yX9JN4NuVmSMG8sa59ZImGxP
 Cc/rCsLvPdu0G2Wgbibim5bI+Aj1uDeGNvsTZg4hfIeM8EqJGdrEMyDDHN8PlwBcmB2wcnT2
 r/BK65A6Er27ow5pAdav89HjdcWKtkWnAs/v6zTwRW9yqa5b3WIU7oDO1bmRrlnvf7d/FWJr
 IwPbZfiJ/BjvArWOHO/zGLuBQpScShT6W7e+6S7idJv0iI5QTp8Wpc9MJsqepB/nrQ9qws71
 ijVZ6Os83Km3SevAVzTOhhehEbHAc4XQYQTYXZ9Yj5FGhELPe6S0UvoX8JoJeh5rLQ4k68co
 jtsU5zoP8mjgw/vo1w1BaQRZqQ+HPh3rWpi5xaYXQU=
IronPort-HdrOrdr: A9a23:co7ihaBCi0YKoJzlHelV55DYdb4zR+YMi2TDGXoBLiC9Ffbo6P
 xG+c516faaskdpZJhNo6HkBEDEewKnyXc32/hjAV7AZnibhILLFvAb0WK4+UyRJ8SWzIc0vs
 0MH9kdNDSzNykGsS+Q2njfLz9P+qjizElqv4bjJrVWIz2Cp5sB0+4AMHfhLmRGAC1PBZ84E5
 TZw8pculObCAYqhw2Adxo4tvD41qz2fYzdEGA7OyI=
X-Talos-CUID: =?us-ascii?q?9a23=3AAP01AGrcSPxkFmO1lEz2UU7mUeEZWEHxkVTuGBf?=
 =?us-ascii?q?7D3pkRaCOcW6Uw5oxxg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3AF7oQdQ0cwH/S9vKOE8EuasGGbDUjup71Jxssv8o?=
 =?us-ascii?q?9pJO+GGtzNRaeqSaua9py?=
X-IronPort-AV: E=Sophos;i="6.03,162,1694750400"; 
   d="scan'208";a="122558542"
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Nicola Vetrini
	<nicola.vetrini@bugseng.com>, Jan Beulich <JBeulich@suse.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, George Dunlap <george.dunlap@eu.citrix.com>, Tim Deegan
	<tim@xen.org>, Stefano Stabellini <sstabellini@kernel.org>
Subject: [PATCH] x86/paging: Delete update_cr3()'s do_locking parameter
Date: Wed, 20 Sep 2023 20:21:53 +0100
Message-ID: <20230920192153.1967618-1-andrew.cooper3@citrix.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit

Nicola reports that the XSA-438 fix introduced new MISRA violations because of
some incidental tidying it tried to do.  The parameter is useless, so resolve
the MISRA regression by removing it.

hap_update_cr3() discards the parameter entirely, while sh_update_cr3() uses
it to distinguish internal and external callers and therefore whether the
paging lock should be taken.

However, we have paging_lock_recursive() for this purpose, which also avoids
the ability for the shadow internal callers to accidentally not hold the lock.

Fixes: fb0ff49fe9f7 ("x86/shadow: defer releasing of PV's top-level shadow reference")
Reported-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: George Dunlap <george.dunlap@eu.citrix.com>
CC: Tim Deegan <tim@xen.org>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>

Slightly RFC.  Only compile tested so far.
---
 xen/arch/x86/include/asm/paging.h |  5 ++---
 xen/arch/x86/mm/hap/hap.c         |  5 ++---
 xen/arch/x86/mm/shadow/common.c   |  2 +-
 xen/arch/x86/mm/shadow/multi.c    | 17 ++++++++---------
 4 files changed, 13 insertions(+), 16 deletions(-)

diff --git a/xen/arch/x86/include/asm/paging.h b/xen/arch/x86/include/asm/paging.h
index 8fad4cfc1823..f291f2f9a21f 100644
--- a/xen/arch/x86/include/asm/paging.h
+++ b/xen/arch/x86/include/asm/paging.h
@@ -118,8 +118,7 @@ struct paging_mode {
                                             paddr_t ga, uint32_t *pfec,
                                             unsigned int *page_order);
 #endif
-    pagetable_t   (*update_cr3            )(struct vcpu *v, bool do_locking,
-                                            bool noflush);
+    pagetable_t   (*update_cr3            )(struct vcpu *v, bool noflush);
 
     unsigned int guest_levels;
 
@@ -296,7 +295,7 @@ static inline bool paging_flush_tlb(const unsigned long *vcpu_bitmap)
  * as the value to load into the host CR3 to schedule this vcpu */
 static inline pagetable_t paging_update_cr3(struct vcpu *v, bool noflush)
 {
-    return paging_get_hostmode(v)->update_cr3(v, 1, noflush);
+    return paging_get_hostmode(v)->update_cr3(v, noflush);
 }
 
 /* Update all the things that are derived from the guest's CR0/CR3/CR4.
diff --git a/xen/arch/x86/mm/hap/hap.c b/xen/arch/x86/mm/hap/hap.c
index e30f543d2cc5..9f964c1d878f 100644
--- a/xen/arch/x86/mm/hap/hap.c
+++ b/xen/arch/x86/mm/hap/hap.c
@@ -707,8 +707,7 @@ static bool cf_check hap_invlpg(struct vcpu *v, unsigned long linear)
     return 1;
 }
 
-static pagetable_t cf_check hap_update_cr3(
-    struct vcpu *v, bool do_locking, bool noflush)
+static pagetable_t cf_check hap_update_cr3(struct vcpu *v, bool noflush)
 {
     v->arch.hvm.hw_cr[3] = v->arch.hvm.guest_cr[3];
     hvm_update_guest_cr3(v, noflush);
@@ -794,7 +793,7 @@ static void cf_check hap_update_paging_modes(struct vcpu *v)
     }
 
     /* CR3 is effectively updated by a mode change. Flush ASIDs, etc. */
-    hap_update_cr3(v, 0, false);
+    hap_update_cr3(v, false);
 
  unlock:
     paging_unlock(d);
diff --git a/xen/arch/x86/mm/shadow/common.c b/xen/arch/x86/mm/shadow/common.c
index 8211e77cc7ff..8aa7b698f879 100644
--- a/xen/arch/x86/mm/shadow/common.c
+++ b/xen/arch/x86/mm/shadow/common.c
@@ -2510,7 +2510,7 @@ static void sh_update_paging_modes(struct vcpu *v)
     }
 #endif /* OOS */
 
-    v->arch.paging.mode->update_cr3(v, 0, false);
+    v->arch.paging.mode->update_cr3(v, false);
 }
 
 /*
diff --git a/xen/arch/x86/mm/shadow/multi.c b/xen/arch/x86/mm/shadow/multi.c
index 447512870d21..90cf0ceaa367 100644
--- a/xen/arch/x86/mm/shadow/multi.c
+++ b/xen/arch/x86/mm/shadow/multi.c
@@ -2475,7 +2475,7 @@ static int cf_check sh_page_fault(
          * In any case, in the PAE case, the ASSERT is not true; it can
          * happen because of actions the guest is taking. */
 #if GUEST_PAGING_LEVELS == 3
-        v->arch.paging.mode->update_cr3(v, 0, false);
+        v->arch.paging.mode->update_cr3(v, false);
 #else
         ASSERT(d->is_shutting_down);
 #endif
@@ -3156,17 +3156,13 @@ sh_update_linear_entries(struct vcpu *v)
     sh_flush_local(d);
 }
 
-static pagetable_t cf_check sh_update_cr3(struct vcpu *v, bool do_locking,
-                                          bool noflush)
+static pagetable_t cf_check sh_update_cr3(struct vcpu *v, bool noflush)
 /* Updates vcpu->arch.cr3 after the guest has changed CR3.
  * Paravirtual guests should set v->arch.guest_table (and guest_table_user,
  * if appropriate).
  * HVM guests should also make sure hvm_get_guest_cntl_reg(v, 3) works;
  * this function will call hvm_update_guest_cr(v, 3) to tell them where the
  * shadow tables are.
- * If do_locking != 0, assume we are being called from outside the
- * shadow code, and must take and release the paging lock; otherwise
- * that is the caller's responsibility.
  */
 {
     struct domain *d = v->domain;
@@ -3184,7 +3180,11 @@ static pagetable_t cf_check sh_update_cr3(struct vcpu *v, bool do_locking,
         return old_entry;
     }
 
-    if ( do_locking ) paging_lock(v->domain);
+    /*
+     * This is used externally (with the paging lock not taken) and internally
+     * by the shadow code (with the lock already taken).
+     */
+    paging_lock_recursive(v->domain);
 
 #if (SHADOW_OPTIMIZATIONS & SHOPT_OUT_OF_SYNC)
     /* Need to resync all the shadow entries on a TLB flush.  Resync
@@ -3412,8 +3412,7 @@ static pagetable_t cf_check sh_update_cr3(struct vcpu *v, bool do_locking,
     shadow_sync_other_vcpus(v);
 #endif
 
-    /* Release the lock, if we took it (otherwise it's the caller's problem) */
-    if ( do_locking ) paging_unlock(v->domain);
+    paging_unlock(v->domain);
 
     return old_entry;
 }

base-commit: fb0ff49fe9f784bfee0370c2a3c5f20e39d7a1cb
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 19:40:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 19:40:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605955.943603 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj33i-0007G7-3S; Wed, 20 Sep 2023 19:40:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605955.943603; Wed, 20 Sep 2023 19:40:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj33i-0007G0-0V; Wed, 20 Sep 2023 19:40:26 +0000
Received: by outflank-mailman (input) for mailman id 605955;
 Wed, 20 Sep 2023 19:40:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2cdA=FE=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qj33g-0007Fs-Sp
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 19:40:25 +0000
Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com
 [2a00:1450:4864:20::336])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 89d09194-57ed-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 21:40:22 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-4018af103bcso745785e9.1
 for <xen-devel@lists.xenproject.org>; Wed, 20 Sep 2023 12:40:22 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 o5-20020a05600c510500b004052093a8f6sm2877228wms.25.2023.09.20.12.40.21
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 20 Sep 2023 12:40:21 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 89d09194-57ed-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695238822; x=1695843622; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=V6erepfC0BGUXfMlGteVyy1mUrgncnvunw9VqXOpwzg=;
        b=SGz6eNoK2fdMoZ3Rs5+FhYDZNxuCx/9Y/MOkpVDOCFe7iH9ncQrjELaTvGeyXPh4ov
         57pz8M38skNjxRlv1fzMFH0tDJYHv9il1e0oeWyLJee7BniiAlrRGEFHNQL9Nnj2lPmr
         czbce5b+AHMTk9m9JcE+TNTMoWKrPBHqSPmAQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695238822; x=1695843622;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=V6erepfC0BGUXfMlGteVyy1mUrgncnvunw9VqXOpwzg=;
        b=QgfYi6F2pthYJcE81eQTQ9tvt5xfe/NZ0UmXE+7WUn8ooF4krjDC1bppxL0KqZ98jb
         OyCqqQ7xNeDEH3ZYParUzH2TwFc5NaqxK4jJWN7kX7/Nch/wlkut4WkLsHYjl/FpzeDW
         pT8gG4IbfTMOwibjzB9rXU67LAhyem4bNC5kqklb3asnBOJOk/i8hJ6n66tElA9TLM9H
         alOmDSOI/uEa10AdtltT590+yzjpt/BlE7kbZFB13mCO5eYmkvkRtk6pLpXumCnxs2SJ
         JSxWEpe8AS3PtJ/S47NLKdDnsPPUjevTpEOutvDYp69GGSXuSTmfDAT1exTjlgGoJTmq
         sfVw==
X-Gm-Message-State: AOJu0Yzv5J+mT+2TXtr6WeZgU4iaaeMiNIKSe7fH/kLMM9lww6GY/aKn
	zst2SE8HG/ntKropg1PJWPrfhg==
X-Google-Smtp-Source: AGHT+IEPm4hfp5bUd0onFREco4y6pzuu6/zP/ve650/Uejvso0KdOeJrvg7o1dZ/m/wjFSPoMbYQgQ==
X-Received: by 2002:a05:600c:2ed2:b0:405:2d29:1648 with SMTP id q18-20020a05600c2ed200b004052d291648mr138018wmn.19.1695238822198;
        Wed, 20 Sep 2023 12:40:22 -0700 (PDT)
Message-ID: <e878bca9-74cc-d16a-134e-e4728ad0212d@citrix.com>
Date: Wed, 20 Sep 2023 20:40:21 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v3 4/4] README: remove old note about the build
 system's python expectation
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>, Javi Merino <javi.merino@cloud.com>
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org
References: <cover.1695104399.git.javi.merino@cloud.com>
 <83e6857f16eb000f8368fcd9995e0411f0177c2e.1695104399.git.javi.merino@cloud.com>
 <dff889ef-ec24-2cac-5565-18376f5e331b@suse.com>
In-Reply-To: <dff889ef-ec24-2cac-5565-18376f5e331b@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 19/09/2023 7:50 am, Jan Beulich wrote:
> On 19.09.2023 08:30, Javi Merino wrote:
>> 5852ca485263 (build: fix tools/configure in case only python3 exists,
>> 2019-12-11) changed the configure script to test for the availability
>> of python3, python and python2 in that order.  It sets PYTHON to the
>> first one found in path.  You don't need to have a symlink to python.
>>
>> Remove the outdated note from the README.
> But that note also covers the hypervisor build, which isn't affected by
> ./configure, and even less so by tools/configure.

The hypervisor build equally doesn't python= specifying.

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 19:42:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 19:42:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605959.943612 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj35v-00080x-GE; Wed, 20 Sep 2023 19:42:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605959.943612; Wed, 20 Sep 2023 19:42:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj35v-00080q-DU; Wed, 20 Sep 2023 19:42:43 +0000
Received: by outflank-mailman (input) for mailman id 605959;
 Wed, 20 Sep 2023 19:42:42 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2cdA=FE=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qj35u-00080h-5b
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 19:42:42 +0000
Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com
 [2a00:1450:4864:20::32b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dbcbea38-57ed-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 21:42:40 +0200 (CEST)
Received: by mail-wm1-x32b.google.com with SMTP id
 5b1f17b1804b1-401d6f6b2e0so9015435e9.1
 for <xen-devel@lists.xenproject.org>; Wed, 20 Sep 2023 12:42:40 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 l18-20020a5d4112000000b0031c6e1ea4c7sm19358510wrp.90.2023.09.20.12.42.39
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 20 Sep 2023 12:42:39 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dbcbea38-57ed-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695238960; x=1695843760; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=acycBaUVRbKczSMSNKZl09qAe9XOfy7bYXC098UYWks=;
        b=Zk+Lu0XjvbGQGmb4owO84qZREqrxYBCMaGG45BFHDakIiULiDOPktaItOGqQvWK9dm
         yCUTk9a0fLgJ7u0bNvOmVASORGL4LVpf7GjAQFPS5f9kQyVDjsGnal8vWQiXp/dTfGOM
         GYs0xRdVylYdSysCeNw3nT0DD2/t1AZtPlrqc=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695238960; x=1695843760;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=acycBaUVRbKczSMSNKZl09qAe9XOfy7bYXC098UYWks=;
        b=JGxIZ/K1PpgZBhFZgxYmC6hhJYbNbqmK9vRfYGJSS1ogskhmUr/cS/HUcjE2zM16dg
         yoKCS7vpTQ8LpSWaJgdJtTNwShWuJ2JoEPomNKW+KdoMKYKW6z832qIpTPfKHEQq3q9l
         7Gcc8GOlJlm+bQhFDMC/wMxBJbIoS9nEHXL0CYXIQip+7Wh3IWFF3LXlpTncTUyPAz7f
         e94dXeH8isk4F0AhYsbQ9GBTAYHEBXqWgYHw9U10ssxwhGIUP8m4WMt+YWSNzVMr+lY8
         Zl2b+TMdTqRlQJXYaMLIjm6JTDTrzB2XK3rSzJe9qP+heO0a9tGdg30xbt1SbUG165ov
         GvFA==
X-Gm-Message-State: AOJu0YzaLL62n2A1Q8pxbSPxeA4ziWGFBjHMWkT8JJjQnwlxMxS91GRc
	paXLQajtkC1iv/vWmiEo4y9aBUH0LpecfPiXu/Q=
X-Google-Smtp-Source: AGHT+IH/HMFAxydrkEMFYuxK9he3HouJeVXMyhbN/52ouLgwyOM/DT9fH8WGP4znmOkhTzfFxyuOvw==
X-Received: by 2002:a05:6000:1817:b0:319:5234:5c92 with SMTP id m23-20020a056000181700b0031952345c92mr2363364wrh.35.1695238959777;
        Wed, 20 Sep 2023 12:42:39 -0700 (PDT)
Message-ID: <1967aed1-3c46-963c-687b-50feb09781aa@citrix.com>
Date: Wed, 20 Sep 2023 20:42:39 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v3 0/4] python: Support setuptools
Content-Language: en-GB
To: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Stefano Stabellini <sstabellini@kernel.org>
References: <cover.1695102101.git.javi.merino@cloud.com>
In-Reply-To: <cover.1695102101.git.javi.merino@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 19/09/2023 7:30 am, Javi Merino wrote:
> This series adds support for setuptools as distutils will be
> deprecated in python 3.12.
>
> Not done for this series:
>   - Andrew suggested simplifying the code in m4/python_devel.m4[0] and
>     this is not done yet.
>
> [0] https://lore.kernel.org/xen-devel/fdf87d82-aa3c-fd2e-6271-848f1a806fb2@citrix.com/
>
> Changes since v2:
>   - These containers used for gitlab ci were missing setuptools in the
>     previous series and now they have it:
>     * alpine/3.18-arm64v8
>     * opensuse-tumbleweed
>     * debian/bookworm-i386
>     * debian/bookworm-arm64v8
>   - These containers used for gitlab ci are being kept without
>     setuptools to test installations that don't have it:
>     * centos/7
>     * debian/stretch
>     * ubuntu/trusty
>     * ubuntu/xenial
>     * ubuntu/bionic
>   - Fix commit messages that talked about removing distutils support
>     as we are keeping it.
>   - Add my Signed-off-by to all commits
>   - Clarify in the readme that python's minimum version is 2.7.
>   - Fold the changes to the ./configure script into the patch that
>     changes `m4/python_devel.m4`.  Create ./configure using autoconf
>     2.69.
>
> Changes since v1:
>   - Update all containers to have setuptools, as python 3.12
>     deprecates distutils in favour of setuptools
>   - Keep python2's support by falling back to distutils if setuptools
>     is not installed
>   - Drop the commit about raising the baseline requirement for python,
>     as we keep supporting python2
>
> v1: https://lore.kernel.org/xen-devel/20230316171634.320626-1-marmarek@invisiblethingslab.com/
> v2: https://lore.kernel.org/xen-devel/cover.1694450145.git.javi.merino@cloud.com/
>
> Javi Merino (2):
>   automation: add python3's setuptools to containers
>   README: update to remove old note about the build system's python
>     expectation
>
> Marek Marczykowski-Górecki (2):
>   tools: convert setup.py to use setuptools
>   tools: don't use distutils in configure nor Makefile

Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>

I'll rebuild the containers and regenerate autoconf.


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 20:11:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 20:11:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606000.943640 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj3XT-0008Sd-4G; Wed, 20 Sep 2023 20:11:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606000.943640; Wed, 20 Sep 2023 20:11:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj3XT-0008SW-1T; Wed, 20 Sep 2023 20:11:11 +0000
Received: by outflank-mailman (input) for mailman id 606000;
 Wed, 20 Sep 2023 20:11:10 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=MBGo=FE=redhat.com=eblake@srs-se1.protection.inumbo.net>)
 id 1qj3XS-0008SE-Ix
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 20:11:10 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d5115b38-57f1-11ee-9b0d-b553b5be7939;
 Wed, 20 Sep 2023 22:11:07 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-232-rRZj9kNcNqGVfV692jvxlw-1; Wed, 20 Sep 2023 16:11:03 -0400
Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com
 [10.11.54.7])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 42BE38001EA;
 Wed, 20 Sep 2023 20:11:02 +0000 (UTC)
Received: from redhat.com (unknown [10.2.16.65])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id B256D140E950;
 Wed, 20 Sep 2023 20:10:59 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d5115b38-57f1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695240666;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=JzgvNJzY/68WUln+4ygEgcbphW7zrzD8/5OdQWeLmIw=;
	b=B4DWnVI9QORlb9+vMdkSMMVxIL+gZMRXoSNxkiyfO8T2MgfUkqCXK3UPBPxdD4D75OP634
	O8YkDK22xywFoturFEDXwSAFzwbb3LoNQhd+NOuCadnSZ1FFB+vjCOWxMCkNydMbU9vBnF
	AqHoifg/5tBjLGsk+vA+lJauUaC0iSw=
X-MC-Unique: rRZj9kNcNqGVfV692jvxlw-1
Date: Wed, 20 Sep 2023 15:10:58 -0500
From: Eric Blake <eblake@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, kwolf@redhat.com, hreitz@redhat.com, 
	vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com, pl@kamp.de, sw@weilnetz.de, 
	sstabellini@kernel.org, anthony.perard@citrix.com, paul@xen.org, pbonzini@redhat.com, 
	marcandre.lureau@redhat.com, berrange@redhat.com, thuth@redhat.com, philmd@linaro.org, 
	stefanha@redhat.com, fam@euphon.net, quintela@redhat.com, peterx@redhat.com, 
	leobras@redhat.com, kraxel@redhat.com, qemu-block@nongnu.org, 
	xen-devel@lists.xenproject.org, alex.bennee@linaro.org, peter.maydell@linaro.org
Subject: Re: [PATCH v2 7/7] qobject atomics osdep: Make a few macros more
 hygienic
Message-ID: <3gjitlytxqobntg4fluip365s5ijwt3h2zvf3tjbmtiifikv53@xxrl7slw5tjt>
References: <20230920183149.1105333-1-armbru@redhat.com>
 <20230920183149.1105333-8-armbru@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230920183149.1105333-8-armbru@redhat.com>
User-Agent: NeoMutt/20230517
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.7

On Wed, Sep 20, 2023 at 08:31:49PM +0200, Markus Armbruster wrote:
...
> The only reliable way to prevent unintended variable name capture is
> -Wshadow.
> 
> One blocker for enabling it is shadowing hiding in function-like
> macros like
> 
>      qdict_put(dict, "name", qobject_ref(...))
> 
> qdict_put() wraps its last argument in QOBJECT(), and the last
> argument here contains another QOBJECT().
> 
> Use dark preprocessor sorcery to make the macros that give us this
> problem use different variable names on every call.
> 
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> Reviewed-by: Eric Blake <eblake@redhat.com>

It's changed (for the better) since v1, so I'm re-reviewing.

> ---
>  include/qapi/qmp/qobject.h | 11 +++++++++--
>  include/qemu/atomic.h      | 17 ++++++++++++-----
>  include/qemu/compiler.h    |  3 +++
>  include/qemu/osdep.h       | 31 +++++++++++++++++++++++--------
>  4 files changed, 47 insertions(+), 15 deletions(-)
> 
> diff --git a/include/qapi/qmp/qobject.h b/include/qapi/qmp/qobject.h
> index 9003b71fd3..d36cc97805 100644
> --- a/include/qapi/qmp/qobject.h
> +++ b/include/qapi/qmp/qobject.h
> @@ -45,10 +45,17 @@ struct QObject {
>      struct QObjectBase_ base;
>  };
>  
> -#define QOBJECT(obj) ({                                         \
> +/*
> + * Preprocessory sorcery ahead: use a different identifier for the

s/Preprocessory/Preprocessor/ (multiple times in the patch)

> + * local variable in each expansion, so we can nest macro calls
> + * without shadowing variables.
> + */
> +#define QOBJECT_INTERNAL(obj, _obj) ({                          \
>      typeof(obj) _obj = (obj);                                   \
> -    _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
> +    _obj                                                        \
> +        ? container_of(&(_obj)->base, QObject, base) : NULL;    \

As pointed out before, you can write &_obj->base instead of
&(_obj)->base, now that we know _obj is a single identifier rather
than an arbitrary expression.  Not strictly necessary since the extra
() doesn't change semantics...

>  })
> +#define QOBJECT(obj) QOBJECT_INTERNAL((obj), MAKE_IDENTFIER(_obj))
>  
>  /* Required for qobject_to() */
>  #define QTYPE_CAST_TO_QNull     QTYPE_QNULL
> diff --git a/include/qemu/atomic.h b/include/qemu/atomic.h
> index d95612f7a0..d4cbd01909 100644
> --- a/include/qemu/atomic.h
> +++ b/include/qemu/atomic.h
> @@ -157,13 +157,20 @@
>      smp_read_barrier_depends();
>  #endif
>  
> -#define qatomic_rcu_read(ptr)                          \
> -    ({                                                 \
> +/*
> + * Preprocessory sorcery ahead: use a different identifier for the
> + * local variable in each expansion, so we can nest macro calls
> + * without shadowing variables.
> + */
> +#define qatomic_rcu_read_internal(ptr, _val)            \
> +    ({                                                  \
>      qemu_build_assert(sizeof(*ptr) <= ATOMIC_REG_SIZE); \
> -    typeof_strip_qual(*ptr) _val;                      \
> -    qatomic_rcu_read__nocheck(ptr, &_val);             \
> -    _val;                                              \
> +    typeof_strip_qual(*ptr) _val;                       \
> +    qatomic_rcu_read__nocheck(ptr, &_val);              \

...but it looks odd for the patch to not be consistent on that front.

> +    _val;                                               \
>      })
> +#define qatomic_rcu_read(ptr) \
> +    qatomic_rcu_read_internal((ptr), MAKE_IDENTFIER(_val))
>  
>  #define qatomic_rcu_set(ptr, i) do {                   \
>      qemu_build_assert(sizeof(*ptr) <= ATOMIC_REG_SIZE); \
> diff --git a/include/qemu/compiler.h b/include/qemu/compiler.h
> index a309f90c76..03236d830c 100644
> --- a/include/qemu/compiler.h
> +++ b/include/qemu/compiler.h
> @@ -37,6 +37,9 @@
>  #define tostring(s) #s
>  #endif
>  
> +/* Expands into an identifier stemN, where N is another number each time */
> +#define MAKE_IDENTFIER(stem) glue(stem, __COUNTER__)

I like how this turned out.

With the spelling fix, and optionally with the redundant () dropped,
you can keep my R-b.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.
Virtualization:  qemu.org | libguestfs.org



From xen-devel-bounces@lists.xenproject.org Wed Sep 20 23:10:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 23:10:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606012.943662 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj6L8-0006ff-OJ; Wed, 20 Sep 2023 23:10:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606012.943662; Wed, 20 Sep 2023 23:10:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj6L8-0006fY-LR; Wed, 20 Sep 2023 23:10:38 +0000
Received: by outflank-mailman (input) for mailman id 606012;
 Wed, 20 Sep 2023 23:10:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3b5T=FE=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qj6L7-0006fM-8w
 for xen-devel@lists.xenproject.org; Wed, 20 Sep 2023 23:10:37 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.20])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e549eeba-580a-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 01:10:33 +0200 (CEST)
Received: from orsmga006.jf.intel.com ([10.7.209.51])
 by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 20 Sep 2023 16:10:30 -0700
Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83])
 by orsmga006.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 20 Sep 2023 16:10:30 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by
 fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Wed, 20 Sep 2023 16:10:29 -0700
Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by
 fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Wed, 20 Sep 2023 16:10:29 -0700
Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.45) by
 edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Wed, 20 Sep 2023 16:10:26 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by PH0PR11MB4790.namprd11.prod.outlook.com (2603:10b6:510:40::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Wed, 20 Sep
 2023 23:10:24 +0000
Received: from SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61]) by SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61%5]) with mapi id 15.20.6792.026; Wed, 20 Sep 2023
 23:10:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e549eeba-580a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695251433; x=1726787433;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=kBcnxzNYWizXmc7YAUEPT5ExgluuwvJK+IEqtUpDNCY=;
  b=XuThtLhsQVFL0MZhWaPvO4LcEKX7pRBZ5vY82iDJXqzwDPhj3cJMZyZU
   hYmkbofE1tdW1jFoh2o8RFo1KsurLQxasj6vcsBUTm+Qemlq82nQEQmZP
   pF3hX8oZ5hql0q/mH7nEQsedfHaUP3zwPSr4Y6PS+iGWHJQNb3Vyz6dQI
   1tC7nsygSBzq1qTYGiq+R3XOyviXYw1mhOJwO48COYwk8yksXaf4I4n5q
   ioTWLnM0kC6Ke3nQK0dBv1GYRFGSWvfbuZfF+HfvYy2gE1mrTyV/z9YO2
   cJ0imbFoBanJC6WVo0ne9Ljm4RPvdgwDB0+EtqEP0NoUD/mJ4rROi5ud/
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10839"; a="370681007"
X-IronPort-AV: E=Sophos;i="6.03,162,1694761200"; 
   d="scan'208";a="370681007"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10839"; a="723500382"
X-IronPort-AV: E=Sophos;i="6.03,162,1694761200"; 
   d="scan'208";a="723500382"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LfxjTU2HqFMenpMtfz+8mwAiNFrS9H3UMXopj4AyYfUwmZMjE5sFpnYuTIXcEfLPyj1YFHLJZHsX4ajquijcmUdKLn31tR+iY+Imy3Yo8aTZrIT9f/hAlbcsXvKmFV6i52fNdnYOS2dnjza7bNriNQki/feUIsxSYg0pcvPJlETPAcQXmpaXbO3gUSh7ugQENWsrPR8fZjqtCJYcElcyA3QSxTpKtRFJ5oKgxMCwuw6tdU+NRUI84xy6Y1QMBuf+zZ/7aBCfWZps2ueoE6GD5GXnECDbGZJKINl2iWwGBGvINlXBZmXj6tUmcubIOF56HWVzlyhwc4wy35xPc4gJ1Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kBcnxzNYWizXmc7YAUEPT5ExgluuwvJK+IEqtUpDNCY=;
 b=A6KCax7G8emxApzl2L5lTNABDRf5a1cho4tQyFqDFgkwUgNtaeXw/bNF9aEh+ZDslcMoot1H6UytFg20Mw1ggKRowr7LsIvQsFCfbp/F1VUREvLtezFB5mIpGncWm6Z7WQTfiQ+QDb4bPdOaZLYuDen3CtdJDY8+ugievR99LGvWZLn0EpJpAzWf5876u48JUogM6ifU6WYbjwJ2PbGfdcNe0wQLE7ZD3lbgXBHOxyU001r0Jq9nao7UQdmsCHgEKaHTZ7d61Eb6sJPnr3PkSb+I5qide0vcsAv6avmWkBMfvyhMqceQ6zytF6AeiXD9xh/izcjhpAVGfbbzjmUhuA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Li, Xin3" <xin3.li@intel.com>
To: Paolo Bonzini <pbonzini@redhat.com>, "linux-doc@vger.kernel.org"
	<linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
	<linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
	<linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
	<linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "tglx@linutronix.de" <tglx@linutronix.de>, "mingo@redhat.com"
	<mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>, "x86@kernel.org"
	<x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>, "Lutomirski, Andy"
	<luto@kernel.org>, "Christopherson,, Sean" <seanjc@google.com>,
	"peterz@infradead.org" <peterz@infradead.org>, "Gross, Jurgen"
	<jgross@suse.com>, "Shankar, Ravi V" <ravi.v.shankar@intel.com>,
	"mhiramat@kernel.org" <mhiramat@kernel.org>, "andrew.cooper3@citrix.com"
	<andrew.cooper3@citrix.com>, "jiangshanlai@gmail.com"
	<jiangshanlai@gmail.com>
Subject: RE: [PATCH v10 33/38] x86/entry: Add fred_entry_from_kvm() for VMX to
 handle IRQ/NMI
Thread-Topic: [PATCH v10 33/38] x86/entry: Add fred_entry_from_kvm() for VMX
 to handle IRQ/NMI
Thread-Index: AQHZ5stu3Ky8BNMeNUmgCzRftfqUcrAkCYAAgABH7XA=
Date: Wed, 20 Sep 2023 23:10:23 +0000
Message-ID: <SA1PR11MB6734FED6128A0D32243DB118A8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-34-xin3.li@intel.com>
 <facdf62c-d0b4-597d-a85d-5772ecaa2b86@redhat.com>
In-Reply-To: <facdf62c-d0b4-597d-a85d-5772ecaa2b86@redhat.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SA1PR11MB6734:EE_|PH0PR11MB4790:EE_
x-ms-office365-filtering-correlation-id: 8a676b44-425b-4eaf-e7d1-08dbba2ec4fa
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 6gFPOhPhrdNPZwpt5TXGuUx/OyvyhjPaUZKUda0iPH+jcPUK7KkEO3IxzTINdFuY0ABXYX6oYhavwLlbwgveNPXIy3cQlo4GOff3EPwCjzePkdrWKHtFLmkS0Ua6IfWL08o+dN4oMPQWxjRWuEDcTEQoOTDh9DcDeNmMqPZex1YxbdfGRHo56pk/44QlAhiEothQNzQBfv07TiM//la1bdR3wFGTOjYMEO4SHYYX4e+nmYq0WrVpz1vcvWEJFgXHy4A7aQ0VBPTXskKLrchocSNvQ0+oyOw92HV71SLpG8mcwPplPo3TGoOfQ5sDYQooybYOtmXGHmqCZYh33M3jV39FUqsma5P4uV6zDYErVZjnAp9HGEjxua/i7psEv8sxrsDkyCZGlpeYRMdUcecERubILVaNGhYUTkNqRb8BSpztdEJxfstmLkmOSCg7ewFuivfqtI436Jvzdkyq0UAM3R38q4ZU3DBvOs2yaX9LlNB877VAM12CyH9V/isVl1XXoaX9W7u1cGW3D7dmQfbjoZ4QijLpK1CbwRyLS8zzjGY7Dp4hHV71MUrRQZlpVNMoSnqbb36eO4GE2Z06x8LtCN+qLCXdCyRGNjULjKDGaAPd6N++2eOui+FpE3bVAMus
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6734.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(396003)(39860400002)(366004)(136003)(186009)(451199024)(1800799009)(55016003)(5660300002)(41300700001)(26005)(7416002)(2906002)(4744005)(122000001)(33656002)(82960400001)(86362001)(38070700005)(4326008)(38100700002)(8936002)(8676002)(7696005)(478600001)(6506007)(9686003)(52536014)(110136005)(316002)(66946007)(66556008)(66446008)(66476007)(76116006)(64756008)(71200400001)(54906003);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SjQ3MUplSUJqUnRrNzZhMkY4cHFqbUp1SVIzUUtpbUc0ZWcwLzdaY1BvbFpW?=
 =?utf-8?B?aEdVbFkrU1JFQkpORExXblA3dVBIQzczZFNtZDFPTWZCWmZsNDRBTGNiVUpx?=
 =?utf-8?B?NjNBZ04vN1ZLVmw2cnZySnRuVE9Cb3FFazI5WFkxTFZnM2ozUGdONjdOdDRy?=
 =?utf-8?B?S3NFeE4rYnZaaDFnL1dJOWpoUExXMWRUOHVLY0xLN215NjVPN1k2RmJUUFk0?=
 =?utf-8?B?V0JkQ2trOW5NT3d0dFFXS3FDMStvSXVBK3VxeWRld2dPdWFKNWdIWjJUeUtO?=
 =?utf-8?B?VUx6MUJ3dHlFRUY1bldHbHp3Snc0TnEvRXRqcXFwbno0VnVhaDVWSmJtUHVO?=
 =?utf-8?B?bTF3ZFljeTZqay9nUHZRdXc3RGtvR2VldjRjaUxoaW5VS1N4VjNCT0I0SEdx?=
 =?utf-8?B?bW5HUW9wd3NrQUhrUWlOdjdrb00rZmY3WXpyaHN5N3JGMDVBblhTbmJ2M2Zy?=
 =?utf-8?B?NGFsMWZkQUlhUTdtdC9kWHIrZ1lyNFlYVE5POGFrQTUxWEZHZEZuenc5R0tl?=
 =?utf-8?B?WnJEOFhpbjFGaXVaWkVEVHMzOGk2UE01RGNvcmQ1d0RhZm1nRUoyMDA2N2tr?=
 =?utf-8?B?T2kyMUcyTU1yamluTHRWZ1JjN3o4YkRISWZMSmNDZUw4QmtoUE5uemZQQjZE?=
 =?utf-8?B?ZUQwbEIxRlg1elpoUGp5Y0dUOUlUQWJBN0ZhSHFoa1ppZUovbHBsUXZmKzN2?=
 =?utf-8?B?bWozZk5lMEo4c0hTTEdCT2NGK005ZUdhditRUVFoWk00QXBSTTU3VzBWM0dJ?=
 =?utf-8?B?T1VuNEc2dGF6WmhKL1ZVcVZQQ3FvakkycG1PaFpzakk4OE9rbXpwam1qWUpO?=
 =?utf-8?B?VlU0NU5lTmgxZzhNMTFmMDhTbTNlT2w1UlVwY2ZJN084UndvNTZHVjdsdnV1?=
 =?utf-8?B?bXpBbGJlOGZEcEdIcmZMR1BzL1JkcFFIejYxUjBrQjUrMWxQSll0T2N1aUl3?=
 =?utf-8?B?ckc2S1RtU3BKOGRaNHpsTkFZSlJKWGVhK0RYT0RUUXlnYTFZWERjNmJ1TjZl?=
 =?utf-8?B?djJWS0JLMHBSKzYvVXFhZE1rL3ZWdWlzV3RlSHlZbXVpYlhJWGx6NExtQUdT?=
 =?utf-8?B?dEk2cEtBTlRqRG1McEFyMnhsQXBNOHQyM21MTzBJNHN5RGJmelhydGNZMG50?=
 =?utf-8?B?UThMaDEwVUw3WDFMZFZDOUxsaVFyZjNxTHN2Rkdjd2FqTjZqSXNONkxFUW8x?=
 =?utf-8?B?U1FDV0lVVEt0M05iNmN4WUU1L1JVKyswYjFsMWM2ZEZPN0V6REo1MS9uMS9B?=
 =?utf-8?B?UjliemxocHUvT28vUkQwbzJLR210Y3gzMyt3VzJOYlloUFlPRmVtZG1GL1Rr?=
 =?utf-8?B?QWp6L0U3QTB5NHNKSVBxY01oRUszRXhoV3B3aXAzUmw5NlNHQk14VFZCZUlk?=
 =?utf-8?B?U2dxYkNoSS96Sm0wRmFuZjhIbG9PdjZjVVhteFZsL3B1U05XVlRETVhrWGhr?=
 =?utf-8?B?c3M3L09DL3FtMmhOcHRsSXEwQUs1NmpTN25VZVk3WGU5eFpjb3NYR1ZuQjRV?=
 =?utf-8?B?aFM3RTN3Mk56ZjI1NnVERUtYeWhTOWNzNnVUWjlOMHpXQzByckgwMDhjZ1du?=
 =?utf-8?B?RUE5OGF6TU0rSm5iUWZjNUJaMHlzU3ZVUG1oaTFaRWVUMkk3N2JCYkd3SDR0?=
 =?utf-8?B?cXpSQzg1aHVIS09yOXZCU1E4V1J4WVlUaU5NMDIvMUlnYzlzbTZqYVc5WkRU?=
 =?utf-8?B?YXBUeGZILzMvc1dNMnk3azRWb0NTUy9MMVRHU0E5L0d3MVBkZmhLNWdEUExS?=
 =?utf-8?B?UU9Ja01PdElPMXNKSHRsRS9URGNBY3lXalZHQzFnOWNDLy9rVkw0SnlFUkF1?=
 =?utf-8?B?QlpsVi9GOEsvQ2htTVJ3SFVJRFVaZHQrT2h4RVI1Y0NHQkxiTWFjYjl4eitB?=
 =?utf-8?B?QXBxM29Yd2M1VjZZaFcxWmlqT1VQd0QxWjFqMHVLclQyMU93UzBCV0V1dEYr?=
 =?utf-8?B?Y08vZ0Yzc05BQVNaaVI0eXB2Ylp4MG1ReU11WjRtZnlWaVlBVm05ZmUwb20x?=
 =?utf-8?B?ZU5vVk4xL09TenJENk1PeVlMSmdXcjAwb1dTQjEvZitVenFUOEVKeDZ0dkVJ?=
 =?utf-8?B?SUVJUEptWUIyQmYrejg5RXhFTlo3bjZyMjlDenZ1M3J4ZWxVMWhqWjUwcWxh?=
 =?utf-8?Q?V74o4bM+Jmyuub0ULjFUxv/bP?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6734.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8a676b44-425b-4eaf-e7d1-08dbba2ec4fa
X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Sep 2023 23:10:23.8926
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: J3BWrONtoB8mLnOewBT+ZdFGZk15EUT76mBeUgiEe7y979qmI+ywJXF0WMtqyGjE8E/AW6ePEtC3JH2rgNTh2g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB4790
X-OriginatorOrg: intel.com

PiA+ICsJLyoNCj4gPiArCSAqIERvbid0IGNoZWNrIHRoZSBGUkVEIHN0YWNrIGxldmVsLCB0aGUg
Y2FsbCBzdGFjayBsZWFkaW5nIHRvIHRoaXMNCj4gPiArCSAqIGhlbHBlciBpcyBlZmZlY3RpdmVs
eSBjb25zdGFudCBhbmQgc2hhbGxvdyAocmVsYXRpdmVseSBzcGVha2luZykuDQo+IA0KPiBJdCdz
IG1vcmUgdGhhdCB3ZSBkb24ndCBuZWVkIHRvIHByb3RlY3QgZnJvbSByZWVudHJhbmN5LiAgVGhl
IGV4dGVybmFsDQo+IGludGVycnVwdCB1c2VzIHN0YWNrIGxldmVsIDAgc28gbm8gYWRqdXN0bWVu
dCB3b3VsZCBiZSBuZWVkZWQgYW55d2F5LA0KPiBhbmQgTk1JIGRvZXMgbm90IHVzZSBhbiBJU1Qg
ZXZlbiBpbiB0aGUgbm9uLUZSRUQgY2FzZS4NCg0KSSB3aWxsIGluY29ycG9yYXRlIHRoaXMgY29t
bWVudC4NCg0KSSB0aGluayBhIFZNWCBOTUkgaXMga2luZCBvZiBsaWtlIGEgdXNlciBsZXZlbCBO
TUksIGFuZCB3ZSBkb24ndCBuZWVkDQp0byB3b3JyeSBhYm91dCBuZXN0ZWQgTk1Jcy4NCg0KPiAN
Cj4gPiArCSAqIEVtdWxhdGUgdGhlIEZSRUQtZGVmaW5lZCByZWR6b25lIGFuZCBzdGFjayBhbGln
bm1lbnQuDQo+ID4gKwkgKi8NCj4gPiArCXN1YiAkKEZSRURfQ09ORklHX1JFRFpPTkVfQU1PVU5U
IDw8IDYpLCAlcnNwDQo+ID4gKwlhbmQgJEZSRURfU1RBQ0tfRlJBTUVfUlNQX01BU0ssICVyc3AN
Cg0K


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 23:30:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 23:30:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606017.943671 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj6dv-0001ts-9i; Wed, 20 Sep 2023 23:30:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606017.943671; Wed, 20 Sep 2023 23:30:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj6dv-0001tM-75; Wed, 20 Sep 2023 23:30:03 +0000
Received: by outflank-mailman (input) for mailman id 606017;
 Wed, 20 Sep 2023 23:30:01 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qj6dt-0001bj-N4; Wed, 20 Sep 2023 23:30:01 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qj6dt-0004XT-Is; Wed, 20 Sep 2023 23:30:01 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qj6dt-00085o-Bn; Wed, 20 Sep 2023 23:30:01 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qj6dt-0004d7-BF; Wed, 20 Sep 2023 23:30:01 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=y8tVgL/HbK0Wfo7Yeibikb2QfsfvQwjxmmnHLaa/QYI=; b=nlc/NUtjeJqBpCI+ALwZ50D6wN
	ArvHuosaEIKveNeIYH+Qex16rg6RG9Rgp2N7nWjoBJQBYj+ZPWWsjL4MplWJZioDqm6yfPdonOxbC
	9dPfxnkS5gfrF6a8+dmU7y0+wlGD3hnEf+K89R/jIAXESMq4qVUYZNZ+IWpz0HxJtpOE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183090-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183090: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=932c3c8b4bd5cb7e3a2fe78105a80928307c9858
X-Osstest-Versions-That:
    xen=fb0ff49fe9f784bfee0370c2a3c5f20e39d7a1cb
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 20 Sep 2023 23:30:01 +0000

flight 183090 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183090/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  932c3c8b4bd5cb7e3a2fe78105a80928307c9858
baseline version:
 xen                  fb0ff49fe9f784bfee0370c2a3c5f20e39d7a1cb

Last test of basis   183080  2023-09-20 10:00:27 Z    0 days
Testing same since   183090  2023-09-20 20:02:05 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Javi Merino <javi.merino@cloud.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Roger Pau Monné <roger.pau@citrix.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   fb0ff49fe9..932c3c8b4b  932c3c8b4bd5cb7e3a2fe78105a80928307c9858 -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Sep 20 23:36:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 23:36:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606024.943682 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj6jw-0003Hn-Sh; Wed, 20 Sep 2023 23:36:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606024.943682; Wed, 20 Sep 2023 23:36:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj6jw-0003Hg-Pm; Wed, 20 Sep 2023 23:36:16 +0000
Received: by outflank-mailman (input) for mailman id 606024;
 Wed, 20 Sep 2023 23:36:15 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qj6jv-0003HW-Bd; Wed, 20 Sep 2023 23:36:15 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qj6jv-0004fu-0F; Wed, 20 Sep 2023 23:36:15 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qj6ju-0008IT-L0; Wed, 20 Sep 2023 23:36:14 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qj6ju-0000BM-KT; Wed, 20 Sep 2023 23:36:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=TPCPRFAf3DM+chjowNiTSZ4G4LzrH4fofKmW09ua6IY=; b=Q6xNarmbbr/FP4iX/GE/nJAs8R
	CuMrmMj0LPEGUT3UJnpXXur6gUBcPkJDY3n7x787R4ULnKbu/Im0mUWKug24hRiEmsxO4mlZwuC4s
	9Y0dgaoPtGpI8+zHelaqlOOE8VvYQo3hM+aQbYwILEzzbgZeLyzYkWvD39Jy6Q4zFjb4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183087-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183087: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=89dad77cfbffda0303383a11026d854008c1b731
X-Osstest-Versions-That:
    ovmf=4317b4824bc881fe6079d04b7ee5b0f6bddf62ca
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 20 Sep 2023 23:36:14 +0000

flight 183087 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183087/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 89dad77cfbffda0303383a11026d854008c1b731
baseline version:
 ovmf                 4317b4824bc881fe6079d04b7ee5b0f6bddf62ca

Last test of basis   183079  2023-09-20 09:11:11 Z    0 days
Testing same since   183087  2023-09-20 15:10:51 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Leif Lindholm <quic_llindhol@quicinc.com>
  Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   4317b4824b..89dad77cfb  89dad77cfbffda0303383a11026d854008c1b731 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 00:56:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 00:56:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606036.943699 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj7z7-0001c1-1I; Thu, 21 Sep 2023 00:56:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606036.943699; Thu, 21 Sep 2023 00:56:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj7z6-0001bu-SW; Thu, 21 Sep 2023 00:56:00 +0000
Received: by outflank-mailman (input) for mailman id 606036;
 Thu, 21 Sep 2023 00:55:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Fi77=FF=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qj7z5-0001Xo-SB
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 00:55:59 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9e78f5c6-5819-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 02:55:56 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id AEFEF61D9D;
 Thu, 21 Sep 2023 00:55:54 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 59052C433CA;
 Thu, 21 Sep 2023 00:55:53 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9e78f5c6-5819-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695257754;
	bh=tjOxBymd6v+ZCkaH5zR2nm02vOudmydPHsbAMqVrnRM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=jobD05phliXnrb1R0yGjQQls14candWkNLmUZhMQva5mWo89HLESeUFnG1DU3S8+c
	 qkiLy5tolSiRy24JUcJIW1qDmcOCNIxC9If3xi7wQWGwQQZ8XTfCHTbyn0RwJGL7Dy
	 GjevE2ayDOoeNOOiU72le7IChjJqeYXj/sKWMznkSbkPj0eGe66QZKHhTAKncPS8Bj
	 qwtrB7K7jEI4cNzQyZt6XZWoGcWSzjgazis65T7aTCocmdRPwiip3UmvMdWdZaaf1e
	 Eymr9+nap9WLgpUIA37xcqmvgH7dkKedvSKUPEYW4+zyiAvoGSR2EOMFT6BDbf4+II
	 SgzwnTT1T1oeg==
Date: Wed, 20 Sep 2023 17:55:52 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Andrew Cooper <andrew.cooper3@citrix.com>
cc: Javi Merino <javi.merino@cloud.com>, xen-devel@lists.xenproject.org, 
    =?UTF-8?Q?Marek_Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>, 
    Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [XEN PATCH v3 0/4] python: Support setuptools
In-Reply-To: <1967aed1-3c46-963c-687b-50feb09781aa@citrix.com>
Message-ID: <alpine.DEB.2.22.394.2309201755320.3563@ubuntu-linux-20-04-desktop>
References: <cover.1695102101.git.javi.merino@cloud.com> <1967aed1-3c46-963c-687b-50feb09781aa@citrix.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-604739729-1695257754=:3563"

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-604739729-1695257754=:3563
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Wed, 20 Sep 2023, Andrew Cooper wrote:
> On 19/09/2023 7:30 am, Javi Merino wrote:
> > This series adds support for setuptools as distutils will be
> > deprecated in python 3.12.
> >
> > Not done for this series:
> >   - Andrew suggested simplifying the code in m4/python_devel.m4[0] and
> >     this is not done yet.
> >
> > [0] https://lore.kernel.org/xen-devel/fdf87d82-aa3c-fd2e-6271-848f1a806fb2@citrix.com/
> >
> > Changes since v2:
> >   - These containers used for gitlab ci were missing setuptools in the
> >     previous series and now they have it:
> >     * alpine/3.18-arm64v8
> >     * opensuse-tumbleweed
> >     * debian/bookworm-i386
> >     * debian/bookworm-arm64v8
> >   - These containers used for gitlab ci are being kept without
> >     setuptools to test installations that don't have it:
> >     * centos/7
> >     * debian/stretch
> >     * ubuntu/trusty
> >     * ubuntu/xenial
> >     * ubuntu/bionic
> >   - Fix commit messages that talked about removing distutils support
> >     as we are keeping it.
> >   - Add my Signed-off-by to all commits
> >   - Clarify in the readme that python's minimum version is 2.7.
> >   - Fold the changes to the ./configure script into the patch that
> >     changes `m4/python_devel.m4`.  Create ./configure using autoconf
> >     2.69.
> >
> > Changes since v1:
> >   - Update all containers to have setuptools, as python 3.12
> >     deprecates distutils in favour of setuptools
> >   - Keep python2's support by falling back to distutils if setuptools
> >     is not installed
> >   - Drop the commit about raising the baseline requirement for python,
> >     as we keep supporting python2
> >
> > v1: https://lore.kernel.org/xen-devel/20230316171634.320626-1-marmarek@invisiblethingslab.com/
> > v2: https://lore.kernel.org/xen-devel/cover.1694450145.git.javi.merino@cloud.com/
> >
> > Javi Merino (2):
> >   automation: add python3's setuptools to containers
> >   README: update to remove old note about the build system's python
> >     expectation
> >
> > Marek Marczykowski-Górecki (2):
> >   tools: convert setup.py to use setuptools
> >   tools: don't use distutils in configure nor Makefile
> 
> Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
> 
> I'll rebuild the containers and regenerate autoconf.

Thanks Andrew, go ahead
--8323329-604739729-1695257754=:3563--


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 02:03:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 02:03:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606043.943711 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj91m-00047p-NL; Thu, 21 Sep 2023 02:02:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606043.943711; Thu, 21 Sep 2023 02:02:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj91m-00047i-JW; Thu, 21 Sep 2023 02:02:50 +0000
Received: by outflank-mailman (input) for mailman id 606043;
 Thu, 21 Sep 2023 02:02:49 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qj91l-00047W-De; Thu, 21 Sep 2023 02:02:49 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qj91l-0007YX-67; Thu, 21 Sep 2023 02:02:49 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qj91k-0004my-Ol; Thu, 21 Sep 2023 02:02:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qj91k-000618-OF; Thu, 21 Sep 2023 02:02:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=5IjAQzEIS7xSmHpbdHVoXpELZwfAZ3kdjl1TftbSIlI=; b=w9yLcMrP4FVWKFBeKTLSVQCVM0
	G+9ts8JAbAaUTPA2+8IFRhudBamBhCYv5uBGsuWj4XPw1Nu4rgJaspoTMJJcb4OTyOtCi3BjedOpK
	v+5eQ7fj3y1McYij/Q2dSUEBtmJyqCQOVknzNoK8yrVh8XuRSCfwvgKBTc76j0tD3o1o=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183081-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.15-testing test] 183081: regressions - FAIL
X-Osstest-Failures:
    xen-4.15-testing:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    xen-4.15-testing:test-amd64-amd64-xl-shadow:guest-localmigrate/x10:fail:heisenbug
    xen-4.15-testing:test-amd64-i386-migrupgrade:xen-install/src_host:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47
X-Osstest-Versions-That:
    xen=0517763e771f2e2582bc492fafa42a86400ab957
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 21 Sep 2023 02:02:48 +0000

flight 183081 xen-4.15-testing real [real]
flight 183094 xen-4.15-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183081/
http://logs.test-lab.xenproject.org/osstest/logs/183094/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 182658

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-shadow 20 guest-localmigrate/x10 fail pass in 183094-retest

Tests which did not succeed, but are not blocking:
 test-amd64-i386-migrupgrade  10 xen-install/src_host         fail  like 182633
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182658
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182658
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182658
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182658
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182658
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182658
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182658
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182658
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47
baseline version:
 xen                  0517763e771f2e2582bc492fafa42a86400ab957

Last test of basis   182658  2023-09-06 09:50:17 Z   14 days
Testing same since   183081  2023-09-20 10:06:38 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   fail    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit 3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47
Author: Jan Beulich <JBeulich@suse.com>
Date:   Wed Sep 20 10:36:06 2023 +0100

    x86/shadow: defer releasing of PV's top-level shadow reference
    
    sh_set_toplevel_shadow() re-pinning the top-level shadow we may be
    running on is not enough (and at the same time unnecessary when the
    shadow isn't what we're running on): That shadow becomes eligible for
    blowing away (from e.g. shadow_prealloc()) immediately after the
    paging lock was dropped. Yet it needs to remain valid until the actual
    page table switch occurred.
    
    Propagate up the call chain the shadow entry that needs releasing
    eventually, and carry out the release immediately after switching page
    tables. Handle update_cr3() failures by switching to idle pagetables.
    Note that various further uses of update_cr3() are HVM-only or only act
    on paused vCPU-s, in which case sh_set_toplevel_shadow() will not defer
    releasing of the reference.
    
    While changing the update_cr3() hook, also convert the "do_locking"
    parameter to boolean.
    
    This is CVE-2023-34322 / XSA-438.
    
    Reported-by: Tim Deegan <tim@xen.org>
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: George Dunlap <george.dunlap@cloud.com>
    (cherry picked from commit fb0ff49fe9f784bfee0370c2a3c5f20e39d7a1cb)

commit d7b78041dc819efde0350f27754a61cb01a93496
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315)

commit b007f82a708bb5119314677168318e301038b0f8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705)

commit dac906062088f11a0577e9d7ef2642c5d8663432
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 3ee6066bcd737756b0990d417d94eddc0b0d2585)

commit d39e5cf76f2a15120491b3b020d973d04c181388
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c)
    
    x86/entry: Partially revert IST-exit checks
    
    The patch adding check_ist_exit() didn't account for the fact that
    reset_stack_and_jump() is not an ABI-preserving boundary.  The IST-ness in
    %r12 doesn't survive into the next context, and is a stale value C.
    
    This shows up in Gitlab CI for the Clang build:
    
      https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/5112783827
    
    and in OSSTest for GCC 8:
    
      http://logs.test-lab.xenproject.org/osstest/logs/183045/test-amd64-amd64-xl-qemuu-debianhvm-amd64/serial-pinot0.log
    
    There's no straightforward way to reconstruct the IST-exit-ness on the
    exit-to-guest path after a context switch.  For now, we only need IST-exit on
    the return-to-Xen path.
    
    Fixes: 21bdc25b05a0 ("x86/entry: Track the IST-ness of an entry for the exit paths")
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 9b57c800b79b96769ea3dcd6468578fa664d19f9)

commit d75cb6dab86763b65210d69a40ac59bce90e1bb8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58)

commit 93504b3a6c92a1f2821af5e0960be8fda066ad77
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 45f00557350dc7d0756551069803fc49c29184ca)

commit 67b97438604c6a7ff7ee3dd5c98fff3f5669f6d7
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8)

commit 806893afb66fe7fa96ec495f2b7561bb396053ee
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 694bb0f280fd08a4377e36e32b84b5062def4de2)

commit 094cd5cb851d267feda3681d034ad46e91c60532
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7)

commit db3386e6cad6065c2a9155d4056b59164edb64dd
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Aug 23 09:26:36 2023 +0200

    x86/AMD: extend Zenbleed check to models "good" ucode isn't known for
    
    Reportedly the AMD Custom APU 0405 found on SteamDeck, models 0x90 and
    0x91, (quoting the respective Linux commit) is similarly affected. Put
    another instance of our Zen1 vs Zen2 distinction checks in
    amd_check_zenbleed(), forcing use of the chickenbit irrespective of
    ucode version (building upon real hardware never surfacing a version of
    0xffffffff).
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
    (cherry picked from commit 145a69c0944ac70cfcf9d247c85dee9e99d9d302)
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 02:25:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 02:25:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606053.943724 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj9Nw-0007vq-MX; Thu, 21 Sep 2023 02:25:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606053.943724; Thu, 21 Sep 2023 02:25:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qj9Nw-0007vj-JN; Thu, 21 Sep 2023 02:25:44 +0000
Received: by outflank-mailman (input) for mailman id 606053;
 Thu, 21 Sep 2023 02:25:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=OXC+=FF=zytor.com=hpa@srs-se1.protection.inumbo.net>)
 id 1qj9Nv-0007vd-MU
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 02:25:43 +0000
Received: from mail.zytor.com (unknown [2607:7c80:54:3::138])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 283e5f1a-5826-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 04:25:42 +0200 (CEST)
Received: from [127.0.0.1] ([98.35.210.218]) (authenticated bits=0)
 by mail.zytor.com (8.17.1/8.17.1) with ESMTPSA id 38L2Ojrq2878666
 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO);
 Wed, 20 Sep 2023 19:24:46 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 283e5f1a-5826-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 38L2Ojrq2878666
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com;
	s=2023091101; t=1695263088;
	bh=WciaewRbFVCG7f/TWCqOhh4NlX/euw7ehl3BKDv4D2s=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=Ljqz95c2+2ctrUrqDTYh4QJqwX6aq8mwwAySkJYOLB/rmPNr+SnxWAYlU/KQSCT5Y
	 tz1ezsYWqK0Q4cbXNch6WmSJ06yICbg3IW6efg/D3UscvInNuY+tdrl12AD0aOeABS
	 jJnQKYPibz2ODD7CuZvST50wrsGNzOQdvKs4ffKVf6+Dzir4Me4tyjJ9yIDffI8iep
	 PiaHLNeUMu9OkEdAJ0K0iskn+vI9N9gg/LhElcG3QQu2b49nd1vPLUf+lmlguTs+9v
	 aCY/LfiHWkB5ORkGwlNjhb+7FcMKMnOnZzBWQVPbPpuDO2ZZDvqBIwYYvhyazgjB9h
	 NhSAU3+MJhZIw==
Date: Wed, 20 Sep 2023 19:24:43 -0700
From: "H. Peter Anvin" <hpa@zytor.com>
To: Thomas Gleixner <tglx@linutronix.de>, "Li, Xin3" <xin3.li@intel.com>,
        "linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
        "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
        "linux-edac@vger.kernel.org" <linux-edac@vger.kernel.org>,
        "linux-hyperv@vger.kernel.org" <linux-hyperv@vger.kernel.org>,
        "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
        "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "mingo@redhat.com" <mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
        "dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>,
        "x86@kernel.org" <x86@kernel.org>,
        "Lutomirski, Andy" <luto@kernel.org>,
        "pbonzini@redhat.com" <pbonzini@redhat.com>,
        "Christopherson,, Sean" <seanjc@google.com>,
        "peterz@infradead.org" <peterz@infradead.org>,
        "Gross, Jurgen" <jgross@suse.com>,
        "Shankar, Ravi V" <ravi.v.shankar@intel.com>,
        "mhiramat@kernel.org" <mhiramat@kernel.org>,
        "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
        "jiangshanlai@gmail.com" <jiangshanlai@gmail.com>
Subject: RE: [PATCH v10 36/38] x86/fred: Add fred_syscall_init()
User-Agent: K-9 Mail for Android
In-Reply-To: <87h6npuuk9.ffs@tglx>
References: <20230914044805.301390-1-xin3.li@intel.com> <20230914044805.301390-37-xin3.li@intel.com> <87v8c6woqo.ffs@tglx> <SA1PR11MB6734C02FFB973B2074EC6CC8A8F9A@SA1PR11MB6734.namprd11.prod.outlook.com> <87h6npuuk9.ffs@tglx>
Message-ID: <4578F690-1501-46C3-9048-5AED97EAD001@zytor.com>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable

On September 20, 2023 1:18:14 AM PDT, Thomas Gleixner <tglx@linutronix=2Ede=
> wrote:
>On Wed, Sep 20 2023 at 04:33, Li, Xin3 wrote:
>>> > +static inline void fred_syscall_init(void) {
>>> > +	/*
>>> > +	 * Per FRED spec 5=2E0, FRED uses the ring 3 FRED entrypoint for S=
YSCALL
>>> > +	 * and SYSENTER, and ERETU is the only legit instruction to return=
 to
>>> > +	 * ring 3, as a result there is _no_ need to setup the SYSCALL and
>>> > +	 * SYSENTER MSRs=2E
>>> > +	 *
>>> > +	 * Note, both sysexit and sysret cause #UD when FRED is enabled=2E
>>> > +	 */
>>> > +	wrmsrl(MSR_LSTAR, 0ULL);
>>> > +	wrmsrl_cstar(0ULL);
>>>=20
>>> That write is pointless=2E See the comment in wrmsrl_cstar()=2E
>>
>> What I heard is that AMD is going to support FRED=2E
>>
>> Both LSTAR and CSTAR have no function when FRED is enabled, so maybe
>> just do NOT write to them?
>
>Right=2E If AMD needs to clear it then it's trivial enough to add a
>wrmsrl_cstar(0) to it=2E

Just to clarify: the only reason I added the writes here was to possibly m=
ake bugs easier to track down=2E There is indeed no functional reason=2E


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 03:29:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 03:29:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606058.943734 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjAN7-0001J7-6A; Thu, 21 Sep 2023 03:28:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606058.943734; Thu, 21 Sep 2023 03:28:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjAN7-0001J0-3S; Thu, 21 Sep 2023 03:28:57 +0000
Received: by outflank-mailman (input) for mailman id 606058;
 Thu, 21 Sep 2023 03:28:56 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjAN6-0001Iq-63; Thu, 21 Sep 2023 03:28:56 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjAN5-0001Ea-Ls; Thu, 21 Sep 2023 03:28:55 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjAN5-0006x0-BR; Thu, 21 Sep 2023 03:28:55 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjAN5-0001d0-Ar; Thu, 21 Sep 2023 03:28:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=MIK/bH8rDXL2pe7QtiSAWKJepRd/VlSbrR2+LnP1oBo=; b=Uimvdf6b+guNObbHa3my5J7wrY
	Nh0JrBYzg28cAdO+AuWMaQFZNaMwq4z47Xlj59qg8raSOVLWHWoCZCsvwifACglKFlD+cmdGG6RNu
	o7+m1pLQqvybcObMeblENUJcK/8M0V/IAv7Ss89F86V0UfBD+JrS6s4EeJIzX4khH0D0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183082-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.16-testing test] 183082: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    xen-4.16-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.16-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-4.16-testing:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=c450a4bc11e97eabe97dcefe06f510d7acea8d6d
X-Osstest-Versions-That:
    xen=d720c2310a7ac8878c01fe9d9fdc13f43cb266b3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 21 Sep 2023 03:28:55 +0000

flight 183082 xen-4.16-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183082/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182634
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182634
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182634
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182634
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182634
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182634
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182634
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182634
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182634
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182634
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182634
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182634
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit2   3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  c450a4bc11e97eabe97dcefe06f510d7acea8d6d
baseline version:
 xen                  d720c2310a7ac8878c01fe9d9fdc13f43cb266b3

Last test of basis   182634  2023-09-05 12:36:55 Z   15 days
Testing same since   183082  2023-09-20 10:06:51 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  starved 
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  starved 
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   d720c2310a..c450a4bc11  c450a4bc11e97eabe97dcefe06f510d7acea8d6d -> stable-4.16


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 05:15:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 05:15:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606080.943794 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjC1l-0001k3-79; Thu, 21 Sep 2023 05:15:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606080.943794; Thu, 21 Sep 2023 05:15:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjC1l-0001jv-2g; Thu, 21 Sep 2023 05:15:01 +0000
Received: by outflank-mailman (input) for mailman id 606080;
 Thu, 21 Sep 2023 05:14:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x4Y2=FF=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qjC1j-0001jp-IE
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 05:14:59 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ccf161fd-583d-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 07:14:56 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73])
 by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-649-f9bjcqYzMn-wyOCa4wcWbg-1; Thu, 21 Sep 2023 01:14:51 -0400
Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com
 [10.11.54.9])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id A93261C01E96;
 Thu, 21 Sep 2023 05:14:50 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 7BFE8711282;
 Thu, 21 Sep 2023 05:14:49 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 5408221E6900; Thu, 21 Sep 2023 07:14:48 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ccf161fd-583d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695273294;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=hx9+KIwAjLK1jnKVdQOUCTEgU0GYm+uRgFTbQHY6/Js=;
	b=KMUVruviCkBBoY42QtAORbyXay6qBT0cSq2xvgNhkwlWFGGDh2bgdQPMPD6KktbxWZ5SLx
	3zo3YLgbOiXqLM57mywoupBkhLz/9IQ+67lfoY7yZNAEv+pp9OMisTTFezGA7h7BJqF/pg
	O6eUvcDM3f83AiVu8SxULmHkhkMJdjk=
X-MC-Unique: f9bjcqYzMn-wyOCa4wcWbg-1
From: Markus Armbruster <armbru@redhat.com>
To: Eric Blake <eblake@redhat.com>
Cc: qemu-devel@nongnu.org,  kwolf@redhat.com,  hreitz@redhat.com,
  vsementsov@yandex-team.ru,  jsnow@redhat.com,  idryomov@gmail.com,
  pl@kamp.de,  sw@weilnetz.de,  sstabellini@kernel.org,
  anthony.perard@citrix.com,  paul@xen.org,  pbonzini@redhat.com,
  marcandre.lureau@redhat.com,  berrange@redhat.com,  thuth@redhat.com,
  philmd@linaro.org,  stefanha@redhat.com,  fam@euphon.net,
  quintela@redhat.com,  peterx@redhat.com,  leobras@redhat.com,
  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org,
  peter.maydell@linaro.org
Subject: Re: [PATCH v2 7/7] qobject atomics osdep: Make a few macros more
 hygienic
References: <20230920183149.1105333-1-armbru@redhat.com>
	<20230920183149.1105333-8-armbru@redhat.com>
	<3gjitlytxqobntg4fluip365s5ijwt3h2zvf3tjbmtiifikv53@xxrl7slw5tjt>
Date: Thu, 21 Sep 2023 07:14:48 +0200
In-Reply-To: <3gjitlytxqobntg4fluip365s5ijwt3h2zvf3tjbmtiifikv53@xxrl7slw5tjt>
	(Eric Blake's message of "Wed, 20 Sep 2023 15:10:58 -0500")
Message-ID: <87zg1g9kfr.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.9

Eric Blake <eblake@redhat.com> writes:

> On Wed, Sep 20, 2023 at 08:31:49PM +0200, Markus Armbruster wrote:
> ...
>> The only reliable way to prevent unintended variable name capture is
>> -Wshadow.
>> 
>> One blocker for enabling it is shadowing hiding in function-like
>> macros like
>> 
>>      qdict_put(dict, "name", qobject_ref(...))
>> 
>> qdict_put() wraps its last argument in QOBJECT(), and the last
>> argument here contains another QOBJECT().
>> 
>> Use dark preprocessor sorcery to make the macros that give us this
>> problem use different variable names on every call.
>> 
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> Reviewed-by: Eric Blake <eblake@redhat.com>
>
> It's changed (for the better) since v1, so I'm re-reviewing.
>
>> ---
>>  include/qapi/qmp/qobject.h | 11 +++++++++--
>>  include/qemu/atomic.h      | 17 ++++++++++++-----
>>  include/qemu/compiler.h    |  3 +++
>>  include/qemu/osdep.h       | 31 +++++++++++++++++++++++--------
>>  4 files changed, 47 insertions(+), 15 deletions(-)
>> 
>> diff --git a/include/qapi/qmp/qobject.h b/include/qapi/qmp/qobject.h
>> index 9003b71fd3..d36cc97805 100644
>> --- a/include/qapi/qmp/qobject.h
>> +++ b/include/qapi/qmp/qobject.h
>> @@ -45,10 +45,17 @@ struct QObject {
>>      struct QObjectBase_ base;
>>  };
>>  
>> -#define QOBJECT(obj) ({                                         \
>> +/*
>> + * Preprocessory sorcery ahead: use a different identifier for the
>
> s/Preprocessory/Preprocessor/ (multiple times in the patch)

Dang!  Will fix.

>> + * local variable in each expansion, so we can nest macro calls
>> + * without shadowing variables.
>> + */
>> +#define QOBJECT_INTERNAL(obj, _obj) ({                          \
>>      typeof(obj) _obj = (obj);                                   \
>> -    _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
>> +    _obj                                                        \
>> +        ? container_of(&(_obj)->base, QObject, base) : NULL;    \
>
> As pointed out before, you can write &_obj->base instead of
> &(_obj)->base, now that we know _obj is a single identifier rather
> than an arbitrary expression.  Not strictly necessary since the extra
> () doesn't change semantics...

Makes sense, I just forgot here.

>>  })
>> +#define QOBJECT(obj) QOBJECT_INTERNAL((obj), MAKE_IDENTFIER(_obj))
>>  
>>  /* Required for qobject_to() */
>>  #define QTYPE_CAST_TO_QNull     QTYPE_QNULL
>> diff --git a/include/qemu/atomic.h b/include/qemu/atomic.h
>> index d95612f7a0..d4cbd01909 100644
>> --- a/include/qemu/atomic.h
>> +++ b/include/qemu/atomic.h
>> @@ -157,13 +157,20 @@
>>      smp_read_barrier_depends();
>>  #endif
>>  
>> -#define qatomic_rcu_read(ptr)                          \
>> -    ({                                                 \
>> +/*
>> + * Preprocessory sorcery ahead: use a different identifier for the
>> + * local variable in each expansion, so we can nest macro calls
>> + * without shadowing variables.
>> + */
>> +#define qatomic_rcu_read_internal(ptr, _val)            \
>> +    ({                                                  \
>>      qemu_build_assert(sizeof(*ptr) <= ATOMIC_REG_SIZE); \
>> -    typeof_strip_qual(*ptr) _val;                      \
>> -    qatomic_rcu_read__nocheck(ptr, &_val);             \
>> -    _val;                                              \
>> +    typeof_strip_qual(*ptr) _val;                       \
>> +    qatomic_rcu_read__nocheck(ptr, &_val);              \
>
> ...but it looks odd for the patch to not be consistent on that front.
>
>> +    _val;                                               \
>>      })
>> +#define qatomic_rcu_read(ptr) \
>> +    qatomic_rcu_read_internal((ptr), MAKE_IDENTFIER(_val))
>>  
>>  #define qatomic_rcu_set(ptr, i) do {                   \
>>      qemu_build_assert(sizeof(*ptr) <= ATOMIC_REG_SIZE); \
>> diff --git a/include/qemu/compiler.h b/include/qemu/compiler.h
>> index a309f90c76..03236d830c 100644
>> --- a/include/qemu/compiler.h
>> +++ b/include/qemu/compiler.h
>> @@ -37,6 +37,9 @@
>>  #define tostring(s) #s
>>  #endif
>>  
>> +/* Expands into an identifier stemN, where N is another number each time */
>> +#define MAKE_IDENTFIER(stem) glue(stem, __COUNTER__)
>
> I like how this turned out.
>
> With the spelling fix, and optionally with the redundant () dropped,
> you can keep my R-b.

Thanks!



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 05:55:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 05:55:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606086.943804 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjCee-0008WK-Ah; Thu, 21 Sep 2023 05:55:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606086.943804; Thu, 21 Sep 2023 05:55:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjCee-0008WD-7e; Thu, 21 Sep 2023 05:55:12 +0000
Received: by outflank-mailman (input) for mailman id 606086;
 Thu, 21 Sep 2023 05:55:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=KrUB=FF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qjCed-0008W7-8w
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 05:55:11 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20613.outbound.protection.outlook.com
 [2a01:111:f400:fe16::613])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6c5b2aae-5843-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 07:55:10 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by GV1PR04MB9151.eurprd04.prod.outlook.com (2603:10a6:150:26::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Thu, 21 Sep
 2023 05:55:07 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 05:55:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6c5b2aae-5843-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aFtrr/97jmDMAu4dKRxHAju7c+WnH8ZFaPK/V2kteo60NiY+eReDZVhwrJ9P/FplGdiqbybW2kn/iHJSgJew5KaAVJXJLNKf/AZhKBFsFAubFALCcZtxG4mgwSrefjqxLoEdS6BTFfDt859c39wkU89YY5zV0dF47grHozrSlkbFiFtQSCV2WESNRFJiR5BWCmpV74E1YzS2u7R9MzJ65v3nWvMC7YW5YPtxOPZ53kPNKpSouGp511Tq9BS26vypiZlr02poIWk1q+KAfIQsLphL7w7hfXJma8lhFsEKnIjy5dx8qCE0x7Ty0/g5F6tm7cXPt+Nz3pdUgIaeNbQFQQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=cwDOF0KLI/NjX3R9cTZSSDe+phdzACtSF9+2umXAX8o=;
 b=QWzCTPwN13qM/8swPCJOiwYK+EllsL+dKJDFZ6ZGJfX0xWylV4x6zaKNWiFKt8S5Ly18ezJdCLSSCzoogLakh9r9lZQp0mvpSu7GrM7WB8w6Ifk3rg0GCb3vJNbVHPMNetXtJNLn2L0aKbl2by2MQa/uzISxCV6VyDm/ZNLrVQ6xy6QFAfDwf3zrnE+ALSPitGa4+0+/CsxGS0PxaN2JZGQxuR+XEPY7TywhPpsPxt7DX6vzZSptW+gGPs2vpBpMeuzzd7nk6JlUQXcd0YQBiozCBY2djaDZTpZxirXkeuJ7d15mRT/Df4SK3QK/Vr+EiUpb6RtjGXP4PvKJY0TLhQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cwDOF0KLI/NjX3R9cTZSSDe+phdzACtSF9+2umXAX8o=;
 b=NwCLCH8Pmy3ZvzZfDqTitHzs3f1Ug79qDClBXmS+bVVat9evoaZL4dYFX2PfwnUcuf/b440jM7ORTDGeFhMOhWe8VzvGtn4axt81+hS4PtpzhrxBAib3gDTKI6lZ8mN/f6qc22HoJehALP53BH04bv00lCDvU+wJTebZJFmeYDi6st/joU021yA6rFyTd5DZkrDtIXXV+hXD2ur+BnmJIx06ym+eFSGuFKy30/NfJMtpF1fNwnRyAsM50w/oYneE6RGr5J313E6rWCU9fdyixTK9Z4QPsNZzVWpldWKXxbxPu31m2rv8pEnYV5QK2FcNFrGJ7BqMnUsMb7WS6GVGDA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <229cca8a-60fc-89e1-8ab1-568fe855be8e@suse.com>
Date: Thu, 21 Sep 2023 07:55:04 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: xen | Failed pipeline for staging | ea36ac0d
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 simone.ballarin@bugseng.com, nicola.vetrini@bugseng.com,
 sanastasio@raptorengineering.com
References: <65096f918e2e5_29a56047619e@gitlab-sidekiq-catchall-v2-84c6ffbc68-bt8nn.mail>
 <a5a252a7-47b0-3ee2-3157-0b18e5f0b079@suse.com>
 <alpine.DEB.2.22.394.2309191609280.3563@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309191609280.3563@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FRYP281CA0004.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::14)
 To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|GV1PR04MB9151:EE_
X-MS-Office365-Filtering-Correlation-Id: 3f9b3c25-0407-489b-31a3-08dbba674f31
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	SKg9mky4nnrU4SIF4Eez5WXz72TVYZMH0lKFba0qZXAP0NU8GjtxYO29iZ6xMFcMMD+rr7EVHyVGlXX4gU6i4OhsxlSjUZ95ZgajPN4TFMJE7QoNdoWrmJ6i1/M+ytpXm+En4gdG513VA9qYXQ0f8FDIhg0EzBn6wMeAA2Mbp2qlVIw1zwsVmXhzR9yPvdDkJ0D1cC/Wk2M8eYXoADabVPuctR+yXO1EWr3BRQ2haiAA1zaWWyUrPka2Ac4CuDuepibtBkySpENVt1daqi5E31wSu3NwVyXhsPh2dnINGhUv+BeGUGaQshMT8JqpFLpgZZRkvhegFUBCUttrcXln/Mbs6wT+mY0qs2+1Gm+/vI7rOzVkrrGdsJ985BXFhsL3gLtrtYXtIQs1O+PY1wy1NhOamE7+aBDR86cDSeyrPaxHoqftrwN5DsTxlyIEoO4uEPnKRVzlyxA3AVJNeYiYpLa4QWhp206+9bA7h8kxkTbH5EiODdztsngZ3FEdMdGZp0VMWYgR3ZuFdZVkXRgWQx7ZexlRYspE9w3F6qrLiKyKuSEgEjyKD9QLDSKB0iGoJYVbpDI8OHGyMeb5heWWTiomalZeUi9P4U3dwVYR1Zgxot2vH9ofAsKL6sbYXEvapxGN4DIrggBox10pe/kUkg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(136003)(376002)(346002)(39860400002)(451199024)(1800799009)(186009)(478600001)(2906002)(5660300002)(26005)(66476007)(41300700001)(6916009)(316002)(66946007)(31686004)(66556008)(4744005)(8936002)(8676002)(4326008)(66899024)(6666004)(6506007)(6486002)(53546011)(6512007)(31696002)(36756003)(2616005)(38100700002)(83380400001)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QU9ZWCtZNUx0Y0VUWTQrY25MZG1IeC9BVFV6T3l0NVgwYVlXQVQ2ZHZkbzhz?=
 =?utf-8?B?TmtrYUg0QjkyRXh6S0w2MUExSXl4T0pyQzhMcEdDcCt5b1FKaCtnMzZzOEp1?=
 =?utf-8?B?Qk5vUmxlUnBRdk9HL2NiSTg0QkhVRi9nenFuYmEzSVEzckVDcE5WVGxkRW5U?=
 =?utf-8?B?dzdja3RxZDJoRVFWMEVLWndHT2xKbnpQSU9aNDI0UVpIWnQ1Q3FVa01pVHJY?=
 =?utf-8?B?Qkp2ZVF1Q3FQcHM0Nk8xYnR2aVdmTTVCTTBOOC9ldWFpZFJOSlhwREFHcUlV?=
 =?utf-8?B?R01PMGc5SHdlTnRTWGM4RUJPNGIzYUtCU2lBY3VKdVJHK1VJdUNrL1E2NE9r?=
 =?utf-8?B?UUdYVVNDMFVJMHVtbXBGd05CdFVFblArYjVuQWdHSkdkaGNtbTlWanZLWFkv?=
 =?utf-8?B?NkN2b0ZxaWNDbnpMVDJiM2YrQ2s5YzFpUWVEOEZWRXlZaUJDeTFyYmRrYlkz?=
 =?utf-8?B?QldHTjJpcHJTQXF5bjAvMnF2VU9vUUJyOFNtbzlHM2doM29CTDk0SXRtVHJR?=
 =?utf-8?B?cFJ2UXpYcjBSK1ExUm5KWkpjWWFRbFNtanBOZnM0MzdQYzdib3RoZjVQTG1B?=
 =?utf-8?B?SkQwcVptZjlUN1gxdFU0djk2MFdpOE1uSzgwZkdMNTlUTGdSRXphVXBUQWVw?=
 =?utf-8?B?cXc1YmNlRDZYNTVvcTNzVXh6T1pjNHVlQlB0TzVTdlhia1lRaFdzc0pWYTYy?=
 =?utf-8?B?YVBoVFdUYUNLdDFLbWlmYXFDTXlvQm8vRlA5Vkp6a2l5RURxOS91UnRiYURG?=
 =?utf-8?B?VCs5NnRESXBxcnBDbE9ORk1tMEg4dXVWOTB3R0tWeUNuRFlJOHlzQzRocXMw?=
 =?utf-8?B?ZG4zQzBOSWFoaEl6c3hwZU9USGNCSFZpeG1zck52Zm1tTXZ5cVdTRzZRNHJX?=
 =?utf-8?B?dDIwMUtOZXEwN3pkRXlubEtqVTNLVG1tb3lEampENktmN2drU2tjdjhHN3c3?=
 =?utf-8?B?VktxcTRQRk9yUnJSSVJuVkhFaFAxSXRkNVVvUEt1cWtHMzREWDhVMEZjTCsy?=
 =?utf-8?B?c0hRUXNmb2d3amw1cGtlSUlBUjJBbFU4MEY2dHI4TXdxVFN2RVRmSjI2NGh4?=
 =?utf-8?B?NTFMNjU4YUt4eS9tYWZxcGM0WktNRmg1Vi95NGlha1JTbXFOQXlaWHpGUjVn?=
 =?utf-8?B?T3dEWTF2eURtNzJNakFXZy9iRzFMYldsbk0yOXk4K3V4cDMvZ2JZL3FLakNG?=
 =?utf-8?B?NDZpS1FQUnZ6d3dwbVhOOTlSWEFNdWwzL0lOWWFJdnRQNHJ6THIrQ3hCYmNz?=
 =?utf-8?B?MVB6ZWpOYWcyMHhMcDRTcjVpTU9tQnpOZWJ4emJPNjliSFJSR0VYYkZ4MCs1?=
 =?utf-8?B?cUxDRzBEdW4rY1BSWEk2aXdBVDgzSU1lOXV3WURGc1MyVldQQlVqbnVjQ2Qy?=
 =?utf-8?B?US96TGtSa2tjeGlLOWhxa1gwZDFVVlVST25rWlUwTnJ5dVNtQlNzYVMyY2dI?=
 =?utf-8?B?RE5rV0pmUlVOUmdPQU9scVdBQmlyYWZncEF4dS8wdHVaSkh3Q2kyNkJpUVVY?=
 =?utf-8?B?QnBOaEJQdnJCajJJM0MwSjNXUmQ3L3owTFBsNTFtckFCaHMvVzJnZm55UWV2?=
 =?utf-8?B?MXh0UDNKWUFKcHFzK3gvMjNwN0ViYnRZbkg1NVJ1aGFFY1ViUXhGbmlGOHZY?=
 =?utf-8?B?MU9GclNGVjQ1UitITUViWXdhMEpDd0RPcFJBZExqSGNGREt2RUZ3ZElWKzkx?=
 =?utf-8?B?NTJ0MnBnMjFRWXZDNFUwa1NyWG83S21LWVJYSDlLTkUxR1RuQnFpVmNtbVh1?=
 =?utf-8?B?ODhnTUhTbWFtaDFwNkFCVklBQ2prODJPUzFkYXRGTjRiQXRSdDJMRGloZnJJ?=
 =?utf-8?B?cktScGZyYUtMcVVleUdVSUJWTEFtVnBya3FWSURqTGVMbEFlVENwU2dzYldH?=
 =?utf-8?B?Z2JPdTV4NnZleTlTRUFIaWJwdDdldHNGTVBWMEl6bjF3a1JXcUNVZ3NjcllC?=
 =?utf-8?B?a0R1ZnpMTVZNSmoyRW5COXBaV1FQNmRpUmZPM3VZV2QzMWtsalMvblQvSEkv?=
 =?utf-8?B?Uk1jUm55Z1ZMR3MwbFYzMFc3NUZ5VndKWmM0ZFBsUVMzK1hmM25RR0NXdjVQ?=
 =?utf-8?B?aXBMT0pVdzRWS1l0dytNV1U0MS9PN3o0NjNQaVBYUFJNaFIrNlJCb1pQYkYv?=
 =?utf-8?Q?sVZh4kZI0K1K1W+5ns1hVwax4?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3f9b3c25-0407-489b-31a3-08dbba674f31
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 05:55:07.8377
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: SllqqorWgMg5/oK2OtPJWiuJA4XnPC61SRuDcVt39MICLLxSJLnqWTWY8xVKtToafAVQfZ+MLThwXmn8y3FEeg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR04MB9151

On 20.09.2023 01:12, Stefano Stabellini wrote:
> There is a second unrelated issue breaking staging. The PPC builds are
> failing. I am CCing Shawn. Please send a quick fix if you can to unblock
> gitlab-ci if you can.

I did send a separate reply for these. I'm not convinced it is Shawn to
deal with those issues.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 06:00:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 06:00:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606091.943814 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjCjT-0002IW-TT; Thu, 21 Sep 2023 06:00:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606091.943814; Thu, 21 Sep 2023 06:00:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjCjT-0002IP-PS; Thu, 21 Sep 2023 06:00:11 +0000
Received: by outflank-mailman (input) for mailman id 606091;
 Thu, 21 Sep 2023 06:00:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=KrUB=FF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qjCjL-0001mO-Sh
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 06:00:03 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20621.outbound.protection.outlook.com
 [2a01:111:f400:7d00::621])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1af6f5ab-5844-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 08:00:03 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS4PR04MB9459.eurprd04.prod.outlook.com (2603:10a6:20b:4eb::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Thu, 21 Sep
 2023 06:00:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 06:00:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1af6f5ab-5844-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OhAQqOVna0nDVTXX1MQ9uLP3lXIVLQwbDDN3wuK6zZwAKlPaDHjlGneP/0pnwnkxzdyH3q+EGJ6Q9OVK1JmkC2rW/24ypICBIVzEkdfz+sSWg5WVQkhjek3vkZ/i0yaSjr/S8e6mj3jBKKs68XRiXXXo1VyslaLyQTAmyc/UpXopfHm+PzcBpIBDvb5QWCpQxVnsRv3Oh2A76U3K/hYdu00ahpqicUnK+MOWLgQYGM5c9YSFdNs3fQpePRbO+O+3sLTFfFw/D2d2VamCJ8t+ZAxpDx1QBAb22gfnTJ1w9uDYJRUWtHbobapMDcDi5R/KPHIM7WcKIps4AWcaEhgEgA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LdYFjE6lfyMnuzb7cPNolUuMZ69GngNquA7wT44buaM=;
 b=nEB47hMzGvpJOJOzi8dpCtTdjrXKENFYk00hmnnAMtnT9hHJ7HX191428GT+Uics/ioe+iKao/Aos5DYqaxIN4sRq45LvP/I3uZJdzxwtB20ulTeZoxcOxjJYGGMlZNwnG+doP6itPSY+boRvsA6ARpKl53J2aM6Ey1Bn3ttd/LRReJxZlJ4qRwl3YnfDHu4d76wy/xH4HYagDglsh7wbpk/bj4A/Todo+wKGhxMrCchbo8HRcWZ6dpWu+3/xOqywbeXyIfz+cmuy4x5Bu5tPBmnww+668ZyGLGipooI2uwVMDuw0QVEHphX9G4ojJdx5yeoVWEtBFVwlmXfwbuxJg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LdYFjE6lfyMnuzb7cPNolUuMZ69GngNquA7wT44buaM=;
 b=FH3BQD+JZ0qnSQmFRGV398ATTO2umihsByd40ADLRY3uZIxvMU/GukvHNI1uwYmGm1s9R9cup2MUMA2NzjpF1qBhQsJtu3VWv4Y3S7Uc6tjTaDowgj4erELSEa76pQt/1nwL7vK7WRYIAoMJUOzB8I9mx/wsylwAdLdJJpEZPZWJPr3qyh1tF8XMiO2dWBQebEKyAzMTyFnq4FNX7T8D4SfQxKXAc9dqRECa3JZ7I35CLw9CFzbx04iaihBW9872YUp0C22xP3bEZEBBQ109HcjcotK+DCb3CJbd3JxT40JzINkTz2VyE5zQHUoWPYwfoD8WwoACrVw5afMt/PQv2w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9003c40a-a9e9-4552-71c0-b5b6ea50c1d9@suse.com>
Date: Thu, 21 Sep 2023 07:59:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH v3 4/4] README: remove old note about the build
 system's python expectation
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org,
 Javi Merino <javi.merino@cloud.com>
References: <cover.1695104399.git.javi.merino@cloud.com>
 <83e6857f16eb000f8368fcd9995e0411f0177c2e.1695104399.git.javi.merino@cloud.com>
 <dff889ef-ec24-2cac-5565-18376f5e331b@suse.com>
 <e878bca9-74cc-d16a-134e-e4728ad0212d@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <e878bca9-74cc-d16a-134e-e4728ad0212d@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0083.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1e::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS4PR04MB9459:EE_
X-MS-Office365-Filtering-Correlation-Id: ac6a64fc-37d3-420e-69a8-08dbba67fd7c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	4Q+HMdbMOgeG7Rygt2WTl0yKXoVMIqz4bS1y9i7bwo/f7ETovNRqkWzisOzJ4IjtLd5F1VuT5aQiPkpKO6R6TDHAUTndhW9W9rJ5Ir+3nf5flyjlBf2FyDhjuAhrkjj5pa+67pzVJ52RsmJHcV6qcXXm3iaIcHjd5qHv3tEyf8+YwOiO5Z14P4lc9hLLKxflKV9SipVOjnvoyW6riA0WRGa6c3mttm4WpyWXn8bsjAZdJEDE4/GK+TbIo5sRhEn7yxYNe0knE9QLdFbTlLG2reQk3EkLMyGcO53rDrF/2QWzFPCQtJPtmge37INTUxokN6UcE5KaEeX2BQ+pEHRonArQADp2Q9eBioA07K7bHYkxEadSzM6o5hC44RsFe7jsrZpopxzXagTqzrSwiEE+nZ52lQFU+/C+BILxbbREoA5Zt3TXq0lDaFtlNfDP1aV5de+oxWGxIywDrmFUQGS2z+pS5YbAlPQ7ldRYbzC1ftlG9+3wA33pwNN5g/QW+88uF7YeqqhRfMbzBqm3lHxBKXIOMGWnplFmnnDYtBosOeLx4l8at/0uHvf2fXBypw3BdXThd+LKdz6p1krFlRYBJbdBidTxOaslu6pM5dL7WnIU1ggsgI5tlkrPt9+uI2tvh9sqKV12uqKJybi0e58CaQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(346002)(136003)(366004)(396003)(39860400002)(186009)(451199024)(1800799009)(2616005)(5660300002)(26005)(4001150100001)(41300700001)(4744005)(2906002)(31696002)(86362001)(36756003)(4326008)(38100700002)(8936002)(8676002)(53546011)(478600001)(6486002)(6506007)(6666004)(6512007)(83380400001)(6916009)(316002)(66556008)(66946007)(31686004)(66476007)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R3QwdWFUd096alMvQnRmQUozcS9QVm9QcFhCSy96V2JIOTZSNloxamRNT1VT?=
 =?utf-8?B?QUdzZnR3bUthOWE4SWp2M2V2a3BCQU5heWNHbWJCN1ZmUGZraW90MUlJd1Zi?=
 =?utf-8?B?TjRmZXhWMlFWNmlYK0c1VzNpRGNVVlRwQ1FnUHVESXM1NUpWbGt1VnlUdXpi?=
 =?utf-8?B?MkVKdzlFS2E2UFdsWHBoTUJrcUhldk1MRk9Pck84WEFsbFhna3NzQlhsbnpI?=
 =?utf-8?B?TUtuaEM5SHVPMkswdGN1emxXQXdsZ2lwMkNURjN2WHplYm52dmJjcGlQcEUz?=
 =?utf-8?B?WGlCNWJJaWY5cHc0aHpoWmlxdmk3V0hNd3V2R2lyNldobkc5QnI0UGl3NVhJ?=
 =?utf-8?B?SnU0djMzSmp1SHJucEdveEFPV29Cd2FHdmtjQ1dtQ2FDUWNwNUVXZ3psQkYx?=
 =?utf-8?B?UkZTV0pCQ3J4a1FFdWxDcHhnNHI4Vkt3RWMwOTlHOUlmWW54cjZtZUxFbWdV?=
 =?utf-8?B?SmNBb0tkRjJ1SEtBSGJ1TThvSWdUSW5CeGtuUVdOb0lkQkc5Sm11QmMyZFpl?=
 =?utf-8?B?YXhMS0Z2STY4eDVjVmUvZjk1aGVmZjE4VkNPd1FzblFQSkxBd3ByOUZHWXNt?=
 =?utf-8?B?S1hnOS82QnlTdXB2UGtYb1pMV3hDeFU3d0hWNlRVM2pQNkpVRWM1cG43TGs5?=
 =?utf-8?B?eSszeWlSQWVmSXpObENMZjRmZmRYeFlHc1dCU1dPd0E5ZXU0ZHVrRHJZdlUv?=
 =?utf-8?B?SlZNdlppdFlrRnUwcjhvMFhVdVI3SzNBR3FEb3U0d0tuTm00bWRKdC9ML1VP?=
 =?utf-8?B?bUZ4dzMvc2FYalVwSmRaWEhMczRxR2c2blZYb1pIbE5FcUdOcUxSTVJ4SWgr?=
 =?utf-8?B?NzQxelc4a2I0YjZDaEErNVFZWFVVK1R5anBpbDQ4RjV4MW44aVMwOUJWVlNx?=
 =?utf-8?B?KzZ3MDBYYnc2VHkzd1hJeFRiWjNSeTc0ZUcrNnRHMlJkUDREcEwyT2tYNFBX?=
 =?utf-8?B?N0Z6dnZLVHhqeVQ5Ukl3Zm5KSmZmY0M1TnVUc3IzbG93MGlxazVlbzFiaEJR?=
 =?utf-8?B?ejJBdUwvQ3dKMVlod0ZkYVhHb1FyeVNVOUxGQkZPd0s3TUc0MUNnckNhVXNw?=
 =?utf-8?B?U0xvZVZOYko2cWtyL3JHSlpPVENmbSt4aDd5STlIOFhBeFlHZzVQdVV1Q2hU?=
 =?utf-8?B?STB5U25XdzhDdjhjVTIwUTE2M0JUVE9uTlpkdTZCUXJHNlQvL1JCQ1lXQlN6?=
 =?utf-8?B?Z2NMMGxOVjZCeDRQTkZaV0grQ25ickVNWnVYWFV5Y0grS3VKYVB4ZVZMeDI3?=
 =?utf-8?B?YjY1S2YxMHhsaEdkaVU2eWRxanFpa29oYVF6eUE2cXdGM1ZGRTBxZ1lQQmtS?=
 =?utf-8?B?MWhlUDJTN0NlcFJNdmpzNjlsbVBheENDb0tvSWhyZytaR0ZFSXAraTZjN0Fj?=
 =?utf-8?B?K0ZzdlRDdkozdHlWZDF5cmNZVDhqWHkzT2VRbjlydTExWkU0OEVTK2NoN3I5?=
 =?utf-8?B?YUE3aGdQS1laMnJLbHBLMFhHaFAvZ0xLd0phaTRxUHhESHFBRDU1cmMvS3V3?=
 =?utf-8?B?OGRBVkJEVjAvU2FJdWsvOG1uS0VyczhiOHRKQUhhbmNkelU5M05NSm02TGZV?=
 =?utf-8?B?QitFTTU0RDJPVkZKMkViR2w2UnB5V2hod3hTVmFxb3gzd3NaanJmM0s0OXZH?=
 =?utf-8?B?ZlNLeC92emJtMmlPdUNwVm42dUpwb1NjaUVCT29QLytYNDliZmNxSFBNblNX?=
 =?utf-8?B?VEtSd3JnaDBtK2xlbzd4TGJzc1pVLzJ4aUVzRDgyOXpFdU1aREpLRnpyWERK?=
 =?utf-8?B?R0szb2UwK0lkMGpWTSszd3l6QWtUZ2w0eW9JTkpmTXRWeWZGSTlmenk3WUpN?=
 =?utf-8?B?cGVOTXdyb0NLWnhvVHNRaTBMMlBxbXlCWmZKUEZvcVcvdjY1dmUreEhNUTNu?=
 =?utf-8?B?TUpQUWpYT1FQY3hyTEQ5dVd1OXhiUEprYkxzYUZwTGo1TXI5ejE3V3NGVHpl?=
 =?utf-8?B?cDcxU0J2UzJDNlBZcStsekJVdEh3OUZCRnlNM3Fmb2VCWTJYa0pKM0kyb1Ux?=
 =?utf-8?B?bGlFQ0RpVFBLWTVodUR6UWFTUjIyamJzdjJBcFp3YmFFcDVxYnhhOXNwVjl6?=
 =?utf-8?B?Vk5hV1RxaS9pVmhpSWozWFlTQWhpZ0lqYk16K21TWW5DZ2JmRVBaRWc4NjVT?=
 =?utf-8?Q?M7SqbcgOrtdqrQGgbSUr1NqKZ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ac6a64fc-37d3-420e-69a8-08dbba67fd7c
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 06:00:00.6546
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: yOY9UObEg6lij6sKf16X0iLoJPTejUczfYZ+jIcgrh4n3Yjuptex8XT9hWRCFNVFLSxqQ8mPZl2qToyaJypt1w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9459

On 20.09.2023 21:40, Andrew Cooper wrote:
> On 19/09/2023 7:50 am, Jan Beulich wrote:
>> On 19.09.2023 08:30, Javi Merino wrote:
>>> 5852ca485263 (build: fix tools/configure in case only python3 exists,
>>> 2019-12-11) changed the configure script to test for the availability
>>> of python3, python and python2 in that order.  It sets PYTHON to the
>>> first one found in path.  You don't need to have a symlink to python.
>>>
>>> Remove the outdated note from the README.
>> But that note also covers the hypervisor build, which isn't affected by
>> ./configure, and even less so by tools/configure.
> 
> The hypervisor build equally doesn't python= specifying.

I'm pretty sure that on at least one of my systems I need PYTHON=python3
when building the hypervisor.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 06:07:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 06:07:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606096.943824 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjCqJ-0003io-K6; Thu, 21 Sep 2023 06:07:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606096.943824; Thu, 21 Sep 2023 06:07:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjCqJ-0003ih-Ff; Thu, 21 Sep 2023 06:07:15 +0000
Received: by outflank-mailman (input) for mailman id 606096;
 Thu, 21 Sep 2023 06:07:14 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rTyL=FF=fujitsu.com=lizhijian@srs-se1.protection.inumbo.net>)
 id 1qjCqI-0003ib-6n
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 06:07:14 +0000
Received: from esa17.fujitsucc.c3s2.iphmx.com (esa17.fujitsucc.c3s2.iphmx.com
 [216.71.158.34]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1a2bb233-5845-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 08:07:12 +0200 (CEST)
Received: from mail-os0jpn01lp2112.outbound.protection.outlook.com (HELO
 JPN01-OS0-obe.outbound.protection.outlook.com) ([104.47.23.112])
 by ob1.fujitsucc.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 21 Sep 2023 15:07:02 +0900
Received: from OS7PR01MB11664.jpnprd01.prod.outlook.com (2603:1096:604:247::6)
 by TYWPR01MB9807.jpnprd01.prod.outlook.com (2603:1096:400:235::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Thu, 21 Sep
 2023 06:06:58 +0000
Received: from OS7PR01MB11664.jpnprd01.prod.outlook.com
 ([fe80::1a61:2227:a0de:2c53]) by OS7PR01MB11664.jpnprd01.prod.outlook.com
 ([fe80::1a61:2227:a0de:2c53%4]) with mapi id 15.20.6813.018; Thu, 21 Sep 2023
 06:06:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1a2bb233-5845-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=fujitsu.com; i=@fujitsu.com; q=dns/txt; s=fj1;
  t=1695276433; x=1726812433;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-id:content-transfer-encoding:
   mime-version;
  bh=Czt4Vqpqpa8teNewGt1ClwS8K2U8gOZZ2ifKnLuwLlk=;
  b=oC2ZuumP7MWAdx/ZB2EAyR8WLqWqM9O5nKOe+BLptLTGxyIJDV6Mgb+w
   DoR/gQJo4mRkCpuDBdacCKh5+sFD6tIzVguFEfrn1ygM21zCojv9FfY2R
   NN95hkBg76mMrtWkXS7cz1wNUfcFIgihxGpkHo77Zmw0RiLYSCw3iFy3O
   L2f2xf0l1s4SQpNetAfwFYtlRuvKZumsMy6idNIWmyJHm8BJXBowJzDKQ
   OvgqZqmK6yXVYVl3bi0KHrUD0dBgF064aPLjyiOI/AhDNSuRyOZokqVgn
   Rl1eWv/l94MX7ci+DfPCoFSf7R4sdPMYUosKSfKIacRxKhkqp9lXSHVBO
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10839"; a="95949117"
X-IronPort-AV: E=Sophos;i="6.03,164,1694703600"; 
   d="scan'208";a="95949117"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oS84lbm1VkLQLa1v0tWXgF7+S5W5BjnNDbn8V8V8OMcrkeMF/4R1aOFHs7YnVLkPeD2VmU/AGkNxzHH4wFxXHnpq0mAWaeGWX1tTQT4F8XNTX64aEGxkq3LIzWuuF99Dzly7/TMsNRapJ+116GXbPEM3J+wkATFI3i+8tp6W98WvlRblXjiPSa6XqCZedZU6lEROhrA+cHdF4BAbauoEqj3XvbsMnTXyQ2yhWpJbEy2GAjO0Od50X2pWrI/OHwGu32KSxqHJF1FZ95BXWHzztFQL50Edv4cfKxZMaN3t5eYr/S/sm29qdJDc0Ai2h+zMUp06yXcRmxNHng0cQSI+PA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Czt4Vqpqpa8teNewGt1ClwS8K2U8gOZZ2ifKnLuwLlk=;
 b=oQCV8B/zu27Yn/cMabHC4FFy/PFwL6n6PkEn5Z+3oTPYciWEKJJReM9tTibNA5dw9B+R1SPCvkQOYYiUkEKG20FxnZUB4BjJAB1IjPUBHUmlK2Ffjl3bKj7Yb/9pFt3yx7Wla1v4GSU8dGKdv4W1ueU+2xVXthxUYygkzRC+7+rtXcMQ9Y1AZSbtBo20vub7jxBcuDfhMOcONF8AA7gi8WqDxvIAKGekWRSwpTXxj/EwU4862M5bzWwCfurxfFOyUx10E4avRf3e5Dtl++I8jQ8ByGF26jhKwLaSEwUWW9E89Swx6Z0X+T/J81v5jyedU25D7ABNgak6lbRisNnzZg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=fujitsu.com; dmarc=pass action=none header.from=fujitsu.com;
 dkim=pass header.d=fujitsu.com; arc=none
From: "Zhijian Li (Fujitsu)" <lizhijian@fujitsu.com>
To: Markus Armbruster <armbru@redhat.com>, "qemu-devel@nongnu.org"
	<qemu-devel@nongnu.org>
CC: "kwolf@redhat.com" <kwolf@redhat.com>, "hreitz@redhat.com"
	<hreitz@redhat.com>, "eblake@redhat.com" <eblake@redhat.com>,
	"vsementsov@yandex-team.ru" <vsementsov@yandex-team.ru>, "jsnow@redhat.com"
	<jsnow@redhat.com>, "idryomov@gmail.com" <idryomov@gmail.com>, "pl@kamp.de"
	<pl@kamp.de>, "sw@weilnetz.de" <sw@weilnetz.de>, "sstabellini@kernel.org"
	<sstabellini@kernel.org>, "anthony.perard@citrix.com"
	<anthony.perard@citrix.com>, "paul@xen.org" <paul@xen.org>,
	"pbonzini@redhat.com" <pbonzini@redhat.com>, "marcandre.lureau@redhat.com"
	<marcandre.lureau@redhat.com>, "berrange@redhat.com" <berrange@redhat.com>,
	"thuth@redhat.com" <thuth@redhat.com>, "philmd@linaro.org"
	<philmd@linaro.org>, "stefanha@redhat.com" <stefanha@redhat.com>,
	"fam@euphon.net" <fam@euphon.net>, "quintela@redhat.com"
	<quintela@redhat.com>, "peterx@redhat.com" <peterx@redhat.com>,
	"leobras@redhat.com" <leobras@redhat.com>, "kraxel@redhat.com"
	<kraxel@redhat.com>, "qemu-block@nongnu.org" <qemu-block@nongnu.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	"alex.bennee@linaro.org" <alex.bennee@linaro.org>, "peter.maydell@linaro.org"
	<peter.maydell@linaro.org>
Subject: Re: [PATCH v2 2/7] migration: Clean up local variable shadowing
Thread-Topic: [PATCH v2 2/7] migration: Clean up local variable shadowing
Thread-Index: AQHZ6/D0hSSeiTIhfkazdX4/frS54bAky8QA
Date: Thu, 21 Sep 2023 06:06:58 +0000
Message-ID: <2d279657-572a-db86-d227-849b41c14436@fujitsu.com>
References: <20230920183149.1105333-1-armbru@redhat.com>
 <20230920183149.1105333-3-armbru@redhat.com>
In-Reply-To: <20230920183149.1105333-3-armbru@redhat.com>
Accept-Language: en-US, zh-CN
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=fujitsu.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: OS7PR01MB11664:EE_|TYWPR01MB9807:EE_
x-ms-office365-filtering-correlation-id: 2d03fedc-aa92-4ee1-25d4-08dbba68f6fd
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 obbt+cWNczQSMpk+W147i+qK8Kbp0IkdmxMGRSP45u07maDYTn2dbN3qrfVD9QRAG4RSYxNarrA/Ay1490LzY9tqoNgScq8XAxqw/5QjwyYjOyF8oFDrdcV9PXxs2nbeJLvXueR6LvDN8lFP9DEiro6HUchMNnnFhHLRaWMyzEBHMw5uOKwBvew+9xGEdfkByd/L0/OsgysBAtKf1rVGkt/b7Qlmxcfwg6i6/BEAN0WUTW7WWoxHNkxCISBf9mZO1q2SUOgVlP1oY8fDhodCgu510oMxjTpkDNzuY065bT2JowH9CA/7gIlvG3/CWEFwhve0Wjxv5wwD+A7qHsziFnXtRm+iwmBNFuZdAQIFW8NuRWTnMNbwyq7PykebpllxJdEYvmUHyKlcxDQLHiy2OlN4shMw7c9CG4AT8Cp3WC/Pr9YxePV8PiY53oIKsRyz0NLORj4KXL1auYcwu7ncS4T2TsRCUZvjA5huRjtAmEnvJ9D7Z4Z7B0akU8M1DdAOt606B1hDhA0N2lAoIpJl5PT7yxIoDdzCgLJPRMY4Y7EBUIDyLYPaOahA+CtRfNaSTqDG+PKk6Z52CvJgd6maYaIBc2bgj1RV60SWRbYEdZAgec4+eJ6QvwGbAxhvrjpreldktImZ/yIjg/sdGThexxzaLKsHl4h4jETRGVEwnYsr6KfdL1AEmfFMIQa8W7rUFXvBRXE7zxdCjYLYfztlzQ==
x-forefront-antispam-report:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:OS7PR01MB11664.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(346002)(366004)(376002)(396003)(186009)(1590799021)(451199024)(1800799009)(38070700005)(83380400001)(4744005)(2906002)(26005)(1580799018)(478600001)(86362001)(316002)(41300700001)(36756003)(66476007)(85182001)(31696002)(5660300002)(8676002)(4326008)(71200400001)(54906003)(64756008)(66556008)(91956017)(76116006)(66946007)(110136005)(66446008)(31686004)(2616005)(7416002)(8936002)(38100700002)(122000001)(82960400001)(6512007)(6506007)(53546011)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?utf-8?B?d1RTVDhvQ0FIb3JENWVZQ0NMYjIzSm9pbUdZbE45L282dVVneWl0Z0xQR09w?=
 =?utf-8?B?cHhDWVM0eU93bTNlZmptYzZTc3NkS09KTVFXaGRpMEV1dlpDR0kybU40VlRn?=
 =?utf-8?B?MGh6UmNiNmVIbVczTnMybVZIWmZNTWpLN0hMU2x4ZVcyS2NlRXNGNS9tU3hG?=
 =?utf-8?B?UDBrZmdxMnNhdmM4b2ttc0txRVIzeDFIUnJxUUR6QnhVNVBERVdKU3JlNkVv?=
 =?utf-8?B?eVByc2dxcTFaMkprTEMvMDNXUEljZ2lKZ2hVQUFuQnd0MzVrcEVKK3dvcDRR?=
 =?utf-8?B?VkxtWE1pZW4zcG9BM0NUcHBUVlA4ZkI3bWpVZ1lDRUlMeDY0U1doeEZyUEx0?=
 =?utf-8?B?YjBjbWV5bk41eE54UWNnN1B3Mjd3QnJlR0hDT1VOVm9hRWZJUzQ1a0ZScHNm?=
 =?utf-8?B?UTYydFNxckd4NFJrdXZVNCtLVmFXTlZjSWMzaHRUZnhQaUZKQ3BQSmlTUmlK?=
 =?utf-8?B?ekMzcmlTNnV1Q3pOazZkbXhRcTl5NUlUVWdPbEpsVlJIMTJvUmRuaUhBc3o3?=
 =?utf-8?B?b2NmRWhGYkFWbmJQTnpKcFo2TmlUMk1QSW50VXpOMmxuTTZJTUJmRFJMT093?=
 =?utf-8?B?R2N5L0ZQSjVwS0RsekRFTFBVV2VxMzRvQUJuOXdKL3hsTlZGRms3SHhBbU1R?=
 =?utf-8?B?Y3JjMUN5SWRPY2F6eFkramxIVU91ZUFMb1JTcDVlZk5IQS95dnhYeDdIeEhE?=
 =?utf-8?B?bGdiUGkrNG1vUWp2TGZHVnNuVTRnYUNBYlcwV2QzVU8ySVJUYTJSTGdmWXNz?=
 =?utf-8?B?WXQwWVpTUGttanV4WVVSdGRoZmo1aWF5UXhKc3VQVFhJVHN0R01OVG01Nk9s?=
 =?utf-8?B?b3owN3RCMWdEVTZJVmI0R1BEL1NXNURET3gwZFh5am0rTTB6WHNOUjh2VEtV?=
 =?utf-8?B?cndHR0txSjUvYXg2NVpBcmdKYkZzTkhlbmI0VW5MYmprV2pITzBNZTJuUkhs?=
 =?utf-8?B?a0drUTQ3SXBxWklhc2hLdEpHc2g4NHd0eVlhZ2JsTFR3ZkNIdDVBVXAvS0wr?=
 =?utf-8?B?Ump0L1QyMVJFMWpRUHJ3WjEyRUIvaVlYZ2dla3crZHJlTzZiY1JQT3JheFF0?=
 =?utf-8?B?VnRYQkptc0EvRHFVOHpmc1gvMDE0YTQwanppUW9mN3JZVVQyZkl4dGZMeklh?=
 =?utf-8?B?em5JVDVCMHJBR2xVMm5MMzVJTzVqSDhpQVFUNXdYNTY1MktxRSttVFJpQ3Rm?=
 =?utf-8?B?U1daN2NTbDNSdWNtWit0eGMrdlhXZlF6NkJYSUdLdHJ6Y3JDU0gycU9MVGRJ?=
 =?utf-8?B?SlNhblYwMGhETUxzQXJxTlJpN00xazkzZERsby91eDBFVEFIMWFSVHJYS3ly?=
 =?utf-8?B?OE1iWU5pUXg5RG8vdVMrOTcxLzVpT3o1d2hFNFVvRWlTaTB0cFozUEl6elRP?=
 =?utf-8?B?S1ZabVRmVkhHOStoMkFHNUZTL2dscjNnME9sY0pjMEF0d0VnajNqb1JMQU5T?=
 =?utf-8?B?dDE0ekw4bGtoV2JXTkZ0V25RMkdybXB2ZVozWVRJaXFHOEFKcS9NOHovM254?=
 =?utf-8?B?VGdMUHBHaStjZExZcXdPc25HQ0J3ZVJ0dlJwNmRMdlhrV0VXbVNhU3E1SlFu?=
 =?utf-8?B?SDAvOWhqeWtTUWVuT1IrZVhxbStKNG1IcDB2ajI3QUpRbGJNZXdyRmMyM3ZI?=
 =?utf-8?B?eDVEeTV1VmRnVGRoeDFoT29NdTNOSW9DL1lyT0pIWExSb1lRVkpPcURvTThj?=
 =?utf-8?B?Z3JseWMyWTcxTTAxay9VMUY2SUw0eWw2WjdiR1ErcVh5Vkw5TnZNYzZoLzha?=
 =?utf-8?B?WGRUYVNRWCtYai9rY29ndUVHOTF1Yy9xeGIvRUVNaC9Xd0ExNm83cVhNa3FD?=
 =?utf-8?B?bVFIdFVnRWl6RXNIcFdUR0xCVDFmTW1CRncydUM1N1pTbWJiNEpWUmtPTHlF?=
 =?utf-8?B?Tmc3SEdzYllWZnY1ZjBIQzV3R2lBbng1QThvZ2FrZUFHSEdMTVJ5NU01WmxG?=
 =?utf-8?B?ZXRSdGhzWnI4R0s5MzBuSWtXRHNkU1l5b0UyUmFWZG9DYTZ6KzdhbkJGdWxR?=
 =?utf-8?B?ZU5SRUJaNDFZZjZMY1N4bisyMUNyZHMxNjBOeHZjQzFiaER3M285dzdDSlBI?=
 =?utf-8?B?TzVjQUZCRFhJSzdJQ2M5eVVBZVViQWc1aTYrNXBkdjdpNVltNEdadTRqY0sz?=
 =?utf-8?B?bUs2bHRPR1lER3pIUzU1MnROejB0Y0RoWStnSzZlbUxjYyt0NEdmQkk1VVlP?=
 =?utf-8?B?ZHc9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <E7F75A53AE1AAD4AA5E8CC2D8659E53C@jpnprd01.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?NkpBZ3FyYjJjQTVTUnVHaXNMdUJITno1RGdGRzJpa0lvVm5CZU0rNWFTNzI0?=
 =?utf-8?B?ek9ITFRWQkM1VElWc3FtNEJGTjFKMEk1MzMrQVlWOE9rTFJWZ2JCL0dWRmVB?=
 =?utf-8?B?YS9ncmdxbDZGdStRZG54MnUwWDZVUk44ZzFnMktpZ0I3Z3RQdFRNQ29MM00x?=
 =?utf-8?B?M25UNktpNW9DYWtLYXQvdW9nMXdjQktFQUd5Ujh0aTduV2dZVnZTRnhwMzhS?=
 =?utf-8?B?L3U1ci9ZWVdWaUJrSDhNc2dEaDE1YU45U0syY3l0Qy8wZFhWajMxdFZXd25x?=
 =?utf-8?B?dGc3SnJwSE5mTUFPdGN5N1ZHOXlYTzZYSzdjTENYZmp0Z3hsNnVYbzM0eUJa?=
 =?utf-8?B?c0ZNODY1bXlJb1Y3dy9FRWxpNy85T1p3emZ2RGVnME1qRThDbXVYdnNweW1s?=
 =?utf-8?B?MTlPWVBlZi9LVGJHY3BhUzRIaHljb21aTWd2UGpkbExQT3pMek9GaitycHJp?=
 =?utf-8?B?NDhhT2llQnV4Vmk2MzRneWYzbzBvZk14elUxWHM2UXZraEt5YlRVTWJ0MlRX?=
 =?utf-8?B?OGlEcVUycG5GeVgwK3d2eWJyM2NBRzQwZTlCWWdBN1dwTHJNMEVFcFlmQTdO?=
 =?utf-8?B?L0laVTVVcXlzRmw3K2ZPM0F4bDgyVWNIT2FiNmNrbllrenlydndTaTJWRk1I?=
 =?utf-8?B?bnlOd2N3a2JWU1lGU0ZUbHM0KzNrNk9rT0xEZm5UK2RUZXFjNFA2UmNsQjF2?=
 =?utf-8?B?NWhmaEJ1cmY2SkZzTnhab3U2cVBnSFNHUDJ3M1MrK1NQc0NaVW9rVWxVUGhk?=
 =?utf-8?B?N2lxQTA4Sk00SVhVQ2paUERHZ1dCbmdTbFdpVnBhaEtlRXJxdEdSTGxaYXhD?=
 =?utf-8?B?V1VsNXVqcXhLTGNQSkxQU1Q4dmFLVlBoTXBEODRidVpRWEpqM0JhT254WW5E?=
 =?utf-8?B?ak95d0EySSsyNi9nR2gwU2lwUDNzcUtia1g1U0MzZ2JLM09NS0l6d1pjd01B?=
 =?utf-8?B?cUFLVlAwN29zVHFQSlF6OTN3QjI4QWRJaktac0ZHTjJwUmxLVWFpdnJ2M2I0?=
 =?utf-8?B?dmxrS2FxNjJwaUM3OEwwSkJrRWJKUnpUQVg2YkZnYnpaNFNiNi9OdzcrUDBZ?=
 =?utf-8?B?dTk4d1FabVZMb1NCT1c1WXFNRDZDWWp1YXVaUE9DL3UwR21GOUp1VE1zMWND?=
 =?utf-8?B?R09sZ01Wcm51eDl4U2VBZjVxUDdPMWZ0STE4ZWR3dVhISjl2eFowZklFSW8z?=
 =?utf-8?B?TlB1cXU1MW5xZ3oxRmF1NWlKRVQ2Z09EVHl3ai9VQThUOS9YVHZpcXdNZnpU?=
 =?utf-8?B?SUJjOHhndnpBVldweVdDWE9XdU13ZXJxYkx4WnNjYzVIb3ZwUko4Wnh3QzI1?=
 =?utf-8?B?NXFIcDlsVUNvK0RYOC9YcENOZnlaazRua3FMYVZpRFpDZWYrQnBJanFmYzg2?=
 =?utf-8?B?ZXp5UnZrWk01MjNwV2wzNW0zYVJua1lkOUpYOGZkbzZRREZwSDUyekdwYXR0?=
 =?utf-8?B?VlM0MWsrdDU1NnYyOW5mRDFWNFdTZldhUDFsalFDUG90M2o1NW5GU2t6MWds?=
 =?utf-8?Q?DilPQc=3D?=
X-OriginatorOrg: fujitsu.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: OS7PR01MB11664.jpnprd01.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2d03fedc-aa92-4ee1-25d4-08dbba68f6fd
X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Sep 2023 06:06:58.6099
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: a19f121d-81e1-4858-a9d8-736e267fd4c7
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: FY9H3lkZJ7cYyQaO10B1u8zz/CZtqYsTQTIwOmLftF0w2Tritil07xd5fV67Si0B6N/zhJeIchlrgpmZvrzQqA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYWPR01MB9807

DQoNCk9uIDIxLzA5LzIwMjMgMDI6MzEsIE1hcmt1cyBBcm1icnVzdGVyIHdyb3RlOg0KPiBMb2Nh
bCB2YXJpYWJsZXMgc2hhZG93aW5nIG90aGVyIGxvY2FsIHZhcmlhYmxlcyBvciBwYXJhbWV0ZXJz
IG1ha2UgdGhlDQo+IGNvZGUgbmVlZGxlc3NseSBoYXJkIHRvIHVuZGVyc3RhbmQuICBUcmFja2Vk
IGRvd24gd2l0aCAtV3NoYWRvdz1sb2NhbC4NCj4gQ2xlYW4gdXA6IGRlbGV0ZSBpbm5lciBkZWNs
YXJhdGlvbnMgd2hlbiB0aGV5IGFyZSBhY3R1YWxseSByZWR1bmRhbnQsDQo+IGVsc2UgcmVuYW1l
IHZhcmlhYmxlcy4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IE1hcmt1cyBBcm1icnVzdGVyIDxhcm1i
cnVAcmVkaGF0LmNvbT4NCj4gUmV2aWV3ZWQtYnk6IFBldGVyIFh1IDxwZXRlcnhAcmVkaGF0LmNv
bT4NCg0KUmV2aWV3ZWQtYnk6IExpIFpoaWppYW4gPGxpemhpamlhbkBmdWppdHN1LmNvbT4=


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 06:07:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 06:07:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606101.943834 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjCqu-0004Ew-Ur; Thu, 21 Sep 2023 06:07:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606101.943834; Thu, 21 Sep 2023 06:07:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjCqu-0004Ep-S0; Thu, 21 Sep 2023 06:07:52 +0000
Received: by outflank-mailman (input) for mailman id 606101;
 Thu, 21 Sep 2023 06:07:51 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4TUc=FF=suse.com=nik.borisov@srs-se1.protection.inumbo.net>)
 id 1qjCqt-0003ib-5m
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 06:07:51 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20612.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::612])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 31891735-5845-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 08:07:50 +0200 (CEST)
Received: from PA4PR04MB7790.eurprd04.prod.outlook.com (2603:10a6:102:cc::8)
 by PAXPR04MB8376.eurprd04.prod.outlook.com (2603:10a6:102:1bf::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Thu, 21 Sep
 2023 06:07:48 +0000
Received: from PA4PR04MB7790.eurprd04.prod.outlook.com
 ([fe80::edd3:f00:3088:6e61]) by PA4PR04MB7790.eurprd04.prod.outlook.com
 ([fe80::edd3:f00:3088:6e61%4]) with mapi id 15.20.6813.017; Thu, 21 Sep 2023
 06:07:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 31891735-5845-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aZxRD2j797bEs4bd1mIG7D3F2lOb92s4MIxWp+NlxLGI2Qy0B2KKvFPHe1UKwvOSK2EZUTkJNsVY3yTix8T1UajQiqbNurdDJQF6PhbO511o0d0/zi6H7GmSG/3pt5TlgxufdaYFjltF19L1cCKu/tEan62cQzpD706q1HKTjUVVhhnzbkALNrclKVndlO5yUOv1iwxl9kyQcK42D0MBPXU3oyIVT4BT9KI6cWJwLWgXW4pgUU0MviUPnPNLgla7s7WjTnzYI18AGyKP+TUSDBFE0BzyvCNYkKEN2pLAarkUnIg4LEY16MgXgvcRwN1LjrOEAALqz2GKCHClo0CFhg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/w4+6L5OnO0MSGurjdET7KtBJjK42HGTO+AkrCjCYtE=;
 b=nc2OfAot6FHIwzPpWuf4/xX4+YaoDxQ4PmdmU6kJGv4077jCxWlkceb4rrxZPVahXWzBXIPw70g1EOPsygjAjqtVNKpv1R2+axRLdaaQBs2m2PHuVa+pcYc8qBAbJ3JoqJjXJEjrEc9eH0eMOfwpotpZgjAxLF5NzNTsPVE4m5lYGVYaUGI19SV+n0H5aWwWQJD8X/yXNF2+R/khRrTWJ9/SdOdHmR5+na92KDXhy1jVotvDyN9KiKlku6lWU4Id6GAAyxBrgac0XOfOy0BVorRkbbbZvzFZA/QVLhaYGLKHR1jTE0KcPBBrOo6D3bEXM00kD8VH7uow9GyA8a+XHg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/w4+6L5OnO0MSGurjdET7KtBJjK42HGTO+AkrCjCYtE=;
 b=kXoW6m0EGo4k7g7o7xVIab97k8p8Skx7JEAQNzcu6cXslgkvlnxaCmctDWaAzPC821dqDUzi7QzioJ1idoQLPo3R6gHVtAnFxQjWC1WB83WzKGInp3BQ5dqMeA17t/hrVhkmoZ64/ylUXTpSHZRjFc7kDeGS7EFP5urtFoahIXgeA+CGY6Xxr3S4hO7IKpDzFrFXQKNsUbkw556hXAXkU/SCVVtFA7x8g/+hMQWT0G98B5xJmojM8+jmpkK0/4ZnQ3noQtUj16K6BLF12qfEd3CpO+7Y744h53FIOV/FlOeUfLApo7qqydFZN1uWcRbMYf9HZmPxZR1Wrm7L5El/aQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <587bcb4e-dc09-4c89-3c8d-ab2b7b75e40e@suse.com>
Date: Thu, 21 Sep 2023 09:07:44 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v10 16/38] x86/ptrace: Add FRED additional information to
 the pt_regs structure
Content-Language: en-US
To: "Li, Xin3" <xin3.li@intel.com>,
 "linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
 "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
 "linux-edac@vger.kernel.org" <linux-edac@vger.kernel.org>,
 "linux-hyperv@vger.kernel.org" <linux-hyperv@vger.kernel.org>,
 "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: "tglx@linutronix.de" <tglx@linutronix.de>,
 "mingo@redhat.com" <mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
 "dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>,
 "x86@kernel.org" <x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>,
 "Lutomirski, Andy" <luto@kernel.org>,
 "pbonzini@redhat.com" <pbonzini@redhat.com>,
 "Christopherson,, Sean" <seanjc@google.com>,
 "peterz@infradead.org" <peterz@infradead.org>,
 "Gross, Jurgen" <jgross@suse.com>, "Shankar, Ravi V"
 <ravi.v.shankar@intel.com>, "mhiramat@kernel.org" <mhiramat@kernel.org>,
 "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
 "jiangshanlai@gmail.com" <jiangshanlai@gmail.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-17-xin3.li@intel.com>
 <336f77d6-1d94-d2b7-f429-855bfbc3f271@suse.com>
 <SA1PR11MB6734182B172E9204CD11688CA8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
From: Nikolay Borisov <nik.borisov@suse.com>
In-Reply-To: <SA1PR11MB6734182B172E9204CD11688CA8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: VE1PR08CA0032.eurprd08.prod.outlook.com
 (2603:10a6:803:104::45) To PA4PR04MB7790.eurprd04.prod.outlook.com
 (2603:10a6:102:cc::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: PA4PR04MB7790:EE_|PAXPR04MB8376:EE_
X-MS-Office365-Filtering-Correlation-Id: bbbad59e-4526-496a-92a9-08dbba69144d
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9rxboVQCj+gtokA45ZnPVyBxkkioB8gnKUGxYl/zFbqafDvUqga4juKE9zlUT/lVyiEpT06mYViFgTzrBdj92Vp82rzmj/QVb+PKJKXi2wwb3m+j5sXFoDKwi1pDNuIZ7NW4z4SqcQzA8XRv2unu43kwukRjWwTP9SsTnXdJXywnG9netSyFpLcY61Hf6Ld+RsHOs1d2xnlvqR6r3dCWNXhTu4IM5udl/02oXh3CIHKCtkTzmGnAME+Y0wqK8GnOlicPo4Hd1pJ3oxcZK+8B7VUhsguCB2YFOtbA/MLSuP1Of6dzvB+tVkUaWpagjidj7zofiB0VxlS/jJ0jlB0P2kQLD0HIHTqOktuut/O6nGXdUWo+2OSzsr5sscXnCauhJ3ebXdjItr9K2bR32s2xE1VdnVEw5Ynm6fodWn7NzzamrQ/lcj5EaYDWRVPGQJouuM/WQdMvC06Cp9DAcPajNI37ithETy+QjOB88wgYmTS44S1qnmSKY8S4L3BUZzG24hdtJDMGijQxjc4poY5gcFdDxELbZmbBzGCuJToj64deAcTf6ZyA6z3f2XD2D1rr55s6mOI2EhiL3HPcMPLjUZyYVZEoKrsOdNyUgeL8OwF8NOaEMyULhMyRguOZBJJhT+zpUBd+yYjhF5RJDXDnMg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PA4PR04MB7790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(346002)(136003)(366004)(396003)(451199024)(186009)(1800799009)(41300700001)(2616005)(5660300002)(4744005)(26005)(2906002)(7416002)(86362001)(31696002)(36756003)(38100700002)(4326008)(8936002)(8676002)(83380400001)(6506007)(478600001)(6512007)(6666004)(6486002)(110136005)(316002)(31686004)(66476007)(66556008)(66946007)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bzVoa3ZKbm9VbWcrWGdjbk5JU09OOHF1Q1dyeXdnT3UyclFGSW4zMDJHQlJX?=
 =?utf-8?B?Z2tOOU0wTitsYWpOTk0wcTRJbnAyU0VsOEVJb1lITmk4KzZqdWVMNkVZL3FJ?=
 =?utf-8?B?STRjYW1aazlsSEw1RFZTS1VkeVdNQlQ5Ykx6TTlCbG9DWTQrQkV2SjFSaTJi?=
 =?utf-8?B?cnU0Y2hURVVhS3hzbmswdHRBT3UvR0NBbm1RbEk2U2l6bzh2UVdkZHpmSEtt?=
 =?utf-8?B?VkhlQ0lGQi9BdXJQcXZyVUpyLysxZ3BQOUxFRE9CR0xONUpWMys3a2lhUFl4?=
 =?utf-8?B?SStqWFVTQVdNbngyUlRHdVRRa3p4cnJvY3Y3SGFremxRNjViRWVCOGNsaGhD?=
 =?utf-8?B?RGFLL2lLR2REQzYvZnl4eTd5N1BJbisyMUZndVZuU1pRVm5EemM3cmUzMGsr?=
 =?utf-8?B?bUxpNG9kcDVmSXdxOFNNSXRLeTM5eEVpUHVzNUw3T0NaVlh6V3NCRkpmNDEr?=
 =?utf-8?B?bk9VMG5JMERmTnFDZGtVUDg1LzVXakY3eW13VFJLNnZuY29Qam5kSWd3V0ZY?=
 =?utf-8?B?UWRKeXpVY0syMHBHZEhJWkpvTjQ5OE5zVEZ1elJJNllNVWIwVEliUlhJdUQ1?=
 =?utf-8?B?ekk3aU51WHZ4V2M2cW8xOExVd2xKemdCdnFaME50MURQdkNlV0c3VlNobEtO?=
 =?utf-8?B?WVFvNFpXdWtrTlNDVDVYenhRSi9pSnBBbzJXTk9McUdFN0hSaFQ5R3J1aWJJ?=
 =?utf-8?B?WkJWWDE4VUFuWWVQU1ZFajdabzNsUEZqc0xlVWhObC93K1NTbThiS05wUkow?=
 =?utf-8?B?RXpSS3dKWVkwM0JiQ21Ea1VyNUtQeWl3ZjZuZDIwQVBSYzVpRU1acUpIQkxE?=
 =?utf-8?B?ZlZvQitNVXFCQjE3ZUtIT2w3RGhkekVSZFpWTnFzUkQwa2dvVW9Nd3hCTGxE?=
 =?utf-8?B?ZEs2TEl6L1ozdVJtU1hIQjZTY1JhR015ZFF6MjBVa2xta1RFaHlsRitVSzJV?=
 =?utf-8?B?aE9wTXppcHZ5VG11SldCVHdWdUhqajUwZTBMK2JlK2h0dE0zZUlxdVlPR1c3?=
 =?utf-8?B?UEpkeU01TkZnYTZpODZEQU00M3ZRNUxHMStGUHlTc29TOXNsUncvWGVTYWVh?=
 =?utf-8?B?VDJLYStSVTlYcE9NellJcE05UEtJeTZRNzVleFphRHo2VStQVE40c2c4cmxQ?=
 =?utf-8?B?empubmk1QjRHcHRPZHFqS1diREQ5eUhNYmhoVGNXMmRXYlZoSGRTUzlod004?=
 =?utf-8?B?c2VqT1lWR2haS0h3bWFVYkhpSTdDWXk5NVBTd3A5ZC9pSFMrbTdnUnlOci9h?=
 =?utf-8?B?b1lPNUg3WU15MVlHVXZZelJqL25vMEk0UHQwOUZvaENCL1pndFlrNmQ3U1hR?=
 =?utf-8?B?YkpiNzJIQVpaSUZQUlo4YU5TbmpsbzBHK0ptUmFoaE8zRkhCSXQzTnlia3kx?=
 =?utf-8?B?VjNIVUE5WmRjRE5tRFBjemd6RklsODFDd0MzQ2k1YnpsMkJyZWNUZjdaa3A2?=
 =?utf-8?B?Vm5FWDM3U01qUWJ6aWhYalhoaTk0YktPVHRnSHFGVytvaDh5d29KMzM3YXBp?=
 =?utf-8?B?Ym5lTEZTWm9nSmFJY1hIcjI2VFVUMFZ0RTh6M3RwRlFKM3JjaXEzOGNDVFBa?=
 =?utf-8?B?S3RGaUtOYzVPemRIUyt2M1EyU1B4OFA4RVZaMWgrVTErd1RxSEZvRWpJWThJ?=
 =?utf-8?B?QjJCS203Sm9BdVdWVFVQaDhBbHV6U2dtVkh1YzNqRmFadGtSTG9vOEZUeEJX?=
 =?utf-8?B?dGFVaE5xRmhvZ0NFU0RjOVZKWWx2RGJMWEhyTDU1UHd1TU1rRks5aXUwbmpX?=
 =?utf-8?B?MHBmMHhHU3dtZ1ZCbnIvSEUwTkcxRnNza3pwbitoWU9hbU1mTCt2UnB5M04v?=
 =?utf-8?B?dEx3QlRvWThWMGRlUjdJRWp6cUxLQW1OS296MVJKQmxvTzZFanFXNGZCUGls?=
 =?utf-8?B?dzljNFdPNmYzSThyYWplL2RWWGFUbTJibDNyOGRVYVJCcFRnQ3dBdDE0UEY0?=
 =?utf-8?B?aWFBdXp5alBwQlo0a083VWprbEF6emNkVU9kYWRHVXh1YVlxQzVHYjc3R1Iz?=
 =?utf-8?B?YWxuVXY2UTd5K3IvRlRDY3RlUjFkZ1Fqa25qOTRXaEVOejBYcUdwdUdpSG5j?=
 =?utf-8?B?dzN1SG4vVnpOOXBNN1hCTTdyMUZBcXNRWm9ia2s5Sm5CNmcwZjZhekN3M0pV?=
 =?utf-8?Q?kFF+xE79XfvOhYdsRGRdkpe68?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bbbad59e-4526-496a-92a9-08dbba69144d
X-MS-Exchange-CrossTenant-AuthSource: PA4PR04MB7790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 06:07:47.9543
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rsAdWXztiG7H8jg7+cjILghyegTFb/fSi+fAL8klpbiiOUnNa0hs3cL8rf8PFJ0YloUcfSlV/4n5eUl/DyZliA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8376



On 20.09.23 г. 20:23 ч., Li, Xin3 wrote:
>>> +struct fred_ss {
>>> +	u64	ss	: 16,	// SS selector
>>
>> Is this structure conformant to the return state as described in FRED 5.0?
>>
>> — The stack segment of the interrupted context, 64 bits formatted as follows:
>>
>> • Bits 15:0 contain the SS selector. < - WE HAVE THIS
>>
>> • Bits 31:16 are not currently defined and will be zero until they are.
> 
> Where did you download the FRED 5.0 spec from?
> 
> Mine says bit 16 is sti, bit 17 for sw initiated events and bit 18 is NMI.
> 
> I guess you have FRED 3.0 spec, no?
Doh you are right, I was looking at the wrong version of the document 
.... sorry for the noise.
> 
>>   < - MISSING > hole?
>>
>>> +		sti	:  1,	// STI state < -
>>> +		swevent	:  1,	// Set if syscall, sysenter or INT n
>>> +		nmi	:  1,	// Event is NMI type
>>> +			: 13,
>   


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 06:24:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 06:24:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606109.943844 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjD77-0007jV-Bh; Thu, 21 Sep 2023 06:24:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606109.943844; Thu, 21 Sep 2023 06:24:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjD77-0007jO-6r; Thu, 21 Sep 2023 06:24:37 +0000
Received: by outflank-mailman (input) for mailman id 606109;
 Thu, 21 Sep 2023 06:24:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=9GIt=FF=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjD75-0007jI-Fs
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 06:24:35 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8369cb80-5847-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 08:24:32 +0200 (CEST)
Received: from orsmga005.jf.intel.com ([10.7.209.41])
 by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 20 Sep 2023 23:24:25 -0700
Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83])
 by orsmga005.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 20 Sep 2023 23:24:24 -0700
Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by
 fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Wed, 20 Sep 2023 23:24:23 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by
 fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Wed, 20 Sep 2023 23:24:23 -0700
Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by
 fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Wed, 20 Sep 2023 23:24:23 -0700
Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.168)
 by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Wed, 20 Sep 2023 23:24:22 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by CH0PR11MB5252.namprd11.prod.outlook.com (2603:10b6:610:e3::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Thu, 21 Sep
 2023 06:24:04 +0000
Received: from SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61]) by SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61%5]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 06:24:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8369cb80-5847-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695277472; x=1726813472;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=iya22aIXqo9qxoYt/F43jMnOU1MX3WL2D2CN7UrXIq8=;
  b=Nun7IW4eOLB0y+TUnetw1sFxvCSlGJEb1pfxgYUJw8yJNyjacoOR0LW9
   bmi6mL5y6awf+OthkErfBKN6xx31hWMdu5DTzRGYbUM8pwXUlBMg1ZUUx
   t5jaAN+c3rHIUjABGZju9Cn4tXPbSExMusBIAhX0FT4LCdNSmk3gCFFDp
   eVMBynGX/NCtZJA17rhMFulwP/h7n7XceA3ffhvk1EjlUJMcl6KfORhNq
   0mGCYH5BI6ys00A3ZShYt6ffYkB9flupxb4SJW2jDllWB6f2b3aozWi70
   d3XbJ4sHxKEQIpWgn+R9NRKBwWcMwOrb5n6inKSbDvhQq9dj9e5yZOT3K
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10839"; a="384274171"
X-IronPort-AV: E=Sophos;i="6.03,164,1694761200"; 
   d="scan'208";a="384274171"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10839"; a="920605779"
X-IronPort-AV: E=Sophos;i="6.03,164,1694761200"; 
   d="scan'208";a="920605779"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=C+ADQZvj06NmFt7nxcpFMejj02AEPumvM3eKz4qKe/HPSJkPyWiFrvml4+3J2zdLo30lv/3Q/xQVdk+PTwo4b3xkXOg8vvCMPiJJMwYzIVCwEJpEFKhtASQVKnEAQpysiOvh4ldYWmC4MuxFqVgO08Hcwugf5tOgIhIMqvrSQfbuG66jPHIUqpNkh5pX5TqdTZFd8AjM/MzGShYJBNDd822E8Loa4IZCEXJviBGN11o61n7wLWdpSDVobA+QNF8bHlPcTr2hWYlVUghB2r3epH+78zWqigM7q/7aY9JTTMkmS5fX7dzAKVJInBSIpOAiczROp/54v7WAK75FDyOlpw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iya22aIXqo9qxoYt/F43jMnOU1MX3WL2D2CN7UrXIq8=;
 b=i8fB2Czyl5aCgEUQFVvLg28lDFzPJKFDzkaMSJAAFPFg27bU8GT8IXwXM4TwQJjhC+H+3PkKhmdTAsK940hy1xek4t+krOBkKN5YzH3QsvVVUjeEIkJLd76QT9l+XdQBhBmR2uun8/zlPp35vAgXY79OiGaETGesCdOQvN1IMEWz4Zj0N7bSPvhbzKSu6+P6hG95hQ62qNticpsvNczTdPYe1qWVPtGhsPl64rT8sT6ScnIlbE0SJ7GeSBnU6LNTK5Upf8D6vxi3Z7xhaXzWk0ydPbQ5dQB0ljkDzLcIv+9bU51t1tAyzlk6xHUHcAcSpS8Rywk8IjOt7kYOES3Rdw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Li, Xin3" <xin3.li@intel.com>
To: Nikolay Borisov <nik.borisov@suse.com>, "linux-doc@vger.kernel.org"
	<linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
	<linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
	<linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
	<linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "tglx@linutronix.de" <tglx@linutronix.de>, "mingo@redhat.com"
	<mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>, "x86@kernel.org"
	<x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>, "Lutomirski, Andy"
	<luto@kernel.org>, "pbonzini@redhat.com" <pbonzini@redhat.com>,
	"Christopherson,, Sean" <seanjc@google.com>, "peterz@infradead.org"
	<peterz@infradead.org>, "Gross, Jurgen" <jgross@suse.com>, "Shankar, Ravi V"
	<ravi.v.shankar@intel.com>, "mhiramat@kernel.org" <mhiramat@kernel.org>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"jiangshanlai@gmail.com" <jiangshanlai@gmail.com>
Subject: RE: [PATCH v10 16/38] x86/ptrace: Add FRED additional information to
 the pt_regs structure
Thread-Topic: [PATCH v10 16/38] x86/ptrace: Add FRED additional information to
 the pt_regs structure
Thread-Index: AQHZ5ss6vttMEsm+OUmXJJK/yPurx7AjtmQAgABJenCAANZqAIAABEEw
Date: Thu, 21 Sep 2023 06:24:03 +0000
Message-ID: <SA1PR11MB67340B4A2473585039129129A8F8A@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-17-xin3.li@intel.com>
 <336f77d6-1d94-d2b7-f429-855bfbc3f271@suse.com>
 <SA1PR11MB6734182B172E9204CD11688CA8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
 <587bcb4e-dc09-4c89-3c8d-ab2b7b75e40e@suse.com>
In-Reply-To: <587bcb4e-dc09-4c89-3c8d-ab2b7b75e40e@suse.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SA1PR11MB6734:EE_|CH0PR11MB5252:EE_
x-ms-office365-filtering-correlation-id: bd939e1d-4276-473a-f1d8-08dbba6b5a0e
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: gA3yuQ/5UHJSG7BcZ9lzzSFQFriiP9/i6duWo76sKvK77XongWP27EVIAjJw/iSKpF1K2RCebVQULFJIUmKXZom7LtkdeGoTgU/NQJCFndrIBBGDOKIDtv3vM88qm5qTNkKxh4qZQgDPv04J1ApbcolIabEzJbnLJXadLSV+IITg774V1dFHl1iX8a/4ax8fOLvLQ7EfW1uhEPQYeIyxIcsuB9ocV/z7D1Ou0swoZuxDkXnctZ+WmxUHw0/1BTJJ2o+wj9nJ41m0Ym7zMhiIbWuEHGx/V2GpQ49gtkafsooHn0aqaCGtYFnhzOMvZ/TUEvUIXc9oZcRSC0F/pYQXEFTjYd1rAxcvfU82FBEaR6L+yJl7N/obKrm9yXrgn93EtTXiNQ2aBUFTwm/D3gRGWzoHsk/NeLTsTdEKaPCGn7klqWtFzc4ddZjIYRCfaZb/Pzrsd8z7iLsmKpIKSX4nIJ+RrKpqXxdl5syrmOofvAfhFqnQq+3lCnVz6OoI4wg1KY45p7wVKZun8aPQ8iLWzPg1vzez2Oicg9kQqWmIZXsFH6Zce8z+uQCCvhtRKpjwi74PPF4nMoKjVz+OlvkdPI6Z5cgWXAwfclkE61tAo8jNia6v1BeloZcqXoaU6gye
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6734.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(136003)(346002)(39860400002)(366004)(451199024)(186009)(1800799009)(2906002)(5660300002)(52536014)(55016003)(26005)(54906003)(66476007)(66446008)(64756008)(7416002)(41300700001)(316002)(66556008)(66946007)(76116006)(110136005)(8936002)(8676002)(4326008)(478600001)(71200400001)(6506007)(7696005)(9686003)(38100700002)(122000001)(33656002)(86362001)(558084003)(38070700005)(83380400001)(82960400001);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ZEY1MGYrT0lxYjVlRXdZTUV2TUJTelBlblZUZFo1RERzMzBsYWxEdllXOXNV?=
 =?utf-8?B?L09ZcGo0S0YwM2x6RWF0aGJLWGVmaXVYN0lSNW1QSEFvZDRKNi9YUlVadDNE?=
 =?utf-8?B?d1ZXNHIvSmp1a3VOdnF3cDYxeGwySFh5OWkyWnNJNk5DOHZKQ1dCTC9YZDEr?=
 =?utf-8?B?aWE4WmsxTDhESGpicHVpRCtKRVBFMHBYVXBnc3hqUFlkelVmSTR5UVo2b1Fo?=
 =?utf-8?B?V2NCRXJqMGZiZzZyd1pGemMwcFA5YWhBL2E5STZsVERMcjRkZW45K2tsNXpj?=
 =?utf-8?B?WUYrK0o1b3N4cldSRVdUaU10UXpueDM4RGQ1R0JWdEZteDBWTmZhU2xGSm10?=
 =?utf-8?B?UkdQTVpDQ0pPbVBMMUhDWWJnQzV4SjhMZzdMK3REWHlRYndYNFJwL0owMCtu?=
 =?utf-8?B?NkNiMmRqeHpNaTFsa0VOWUZaSE1kRWl2Tml3N2ZUWTB5OEpUOU9tRVRVNXdw?=
 =?utf-8?B?MVdiM3BlZC9TVkN0dm1Rc0JKeXBzMXVUL29Kb0p6c1JQVFRINWgwZ0RpSGl5?=
 =?utf-8?B?anZlTmFsUVE3Q3hGZExObzlJWWxJYmhLb09NM1NpUHBZMG5VbnZSSytkWFVl?=
 =?utf-8?B?eHdhRXRkSDNZbEpxTU1wd1FxUTZVeFF3Wm1rN0tjTXhIOUpnNlNXUmRMbnJH?=
 =?utf-8?B?KzNEZ21CeUdmODh5NUFtaUpnZGhvVFk5N2g3OHBrME0waGZ6ZGxSTlpKSWY2?=
 =?utf-8?B?d1ZrT2c5WmxQRFBiWTl4djVRRlZnMmN2NHRQbkpZaXhRREhFQlJxRlhEQXdn?=
 =?utf-8?B?ajFrenp1SngydXNpdFhvdVcwQXJ3bVZsM29ES0ZEeGlFYnlFRTAzMGl3bDFu?=
 =?utf-8?B?Tmp6cGI5eDdHQWJHV1kzL2I3R2FkUFo0cHhISENwajVjMUdiUUl2S2h4TjN0?=
 =?utf-8?B?N1dydzg0RVRPZzJqdWh6ZU5vR0hYMlFSSVR5NnM4T003TFcvM09jMkIvczhi?=
 =?utf-8?B?andpdkZnNUJTOS9DY01FZVR5MFR4a01CcWhjOFRmT2o2UjhMWnhsWlF5R1hN?=
 =?utf-8?B?QkUrMDNmQ2FKbE9iTGdPOExUVXo4MVBIcXBYK2REZ0hnU3F6bFE3ZVl5N3ov?=
 =?utf-8?B?NE9aYUZlVXZBSjUvR0RvNmpqTmU2RjRvb2xYRCtRYXpOYmd6K0hRaUVyTEdm?=
 =?utf-8?B?MzZkd29mSTlhWWpZeUx5TGQzNm9hc0RpSkZxL3hUY0pIUUdRVlNCZnhwNzNa?=
 =?utf-8?B?VVNoZWhRMzJrQ0c4ZGcwK1FEeUh2T1V6YWxkek5rMlNlcmZBbTJzcEdRTWtI?=
 =?utf-8?B?dklxOGlMUTRIbWRUekVSOWt6MzROblRQWFZnTk4yaS9aYmJuVWpCV2UwNzBs?=
 =?utf-8?B?anhpMjRkTG1SbVNHbkZjTEZCcjdqOGg2cEMzRE1yUUpOcDFHVW9yZCtqRG8y?=
 =?utf-8?B?cmxmWXBCL3YxSitBcjNwUHhVTDJmeVduaU5EOHJLWmYxTk9obTBucmdVblhs?=
 =?utf-8?B?NnIxS011VWFoRG03UjRwZ25kYU5hYUJrR1BWZm9Pc1hPRXhHSjFpa1NRYkd4?=
 =?utf-8?B?VDFEN2poTUJqelVOTHNoSGs2T2tQZEY3dzhjNWlrbU9SZlczUW1zQmdGNjVZ?=
 =?utf-8?B?S0JtdFExU0tNbXVabDd0S0p2QkZDYTJJSjN2eUxabVNKNlBVNjI2MURQakdI?=
 =?utf-8?B?aWwxZW1lc0dTcTdMeXhmOGlmZWNMd0RqMHpEUWd1cG5ITS9UYmRkSnBKN0RS?=
 =?utf-8?B?aEo5UVEvaTNnUWk4YXBrVnhxTGw5WTdvTlpXblF2TS91RmpKVmpsUUlycXZZ?=
 =?utf-8?B?RW9Cak55OVZTelZRQnBPYmYvQ3QvR2VnT0VOSUhOK1NtNlZHSDJsQ1lwK2Zs?=
 =?utf-8?B?Vk0vK20rc0xLWWwyU2oyQmQvSTJ0dlBVL3FWQTBiZjd0SEcwNXUxNW9uUFQ4?=
 =?utf-8?B?MWNodE5KUVhTMW1SM29mc3R4RWM3dTRxQWE2TG8xU2xReW1GN0ptVTBDMkhD?=
 =?utf-8?B?T0lKaFhaVVFCcjBlU01RYUpUUnU1OHVTYXdHL1pUNEx0S2UxTW9sT0hkd2lj?=
 =?utf-8?B?ZTZHeVpCa2ppc0Y2a0xCNit1Z1hBQ05la1loc2R3Vm1SUldkVjg3MS9vcTlO?=
 =?utf-8?B?MzcvU0Z2MS9OektNbmhNQnBTZ0lwRE9aTlNOZkp5ZmREZ3I2bktwMHErUkNW?=
 =?utf-8?Q?hC7I=3D?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6734.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bd939e1d-4276-473a-f1d8-08dbba6b5a0e
X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Sep 2023 06:24:03.7682
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: vRttKikSvq5+c0cI7K4SKwVdekcLXiLauau2DaAmsaeYxTQGCov5HSxbmBGBHpvq/Lqt0Ndox+tmGKXyPihXRA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR11MB5252
X-OriginatorOrg: intel.com

PiA+IEkgZ3Vlc3MgeW91IGhhdmUgRlJFRCAzLjAgc3BlYywgbm8/DQo+IERvaCB5b3UgYXJlIHJp
Z2h0LCBJIHdhcyBsb29raW5nIGF0IHRoZSB3cm9uZyB2ZXJzaW9uIG9mIHRoZSBkb2N1bWVudCAu
Li4uIHNvcnJ5IGZvcg0KPiB0aGUgbm9pc2UuDQoNCkFjdHVhbGx5IEkgYXBwcmVjaWF0ZSB5b3Vy
IHJldmlldyBzbyBtdWNoIQ0K


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 07:08:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 07:08:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606115.943854 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjDnj-0000N0-JZ; Thu, 21 Sep 2023 07:08:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606115.943854; Thu, 21 Sep 2023 07:08:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjDnj-0000Mt-GE; Thu, 21 Sep 2023 07:08:39 +0000
Received: by outflank-mailman (input) for mailman id 606115;
 Thu, 21 Sep 2023 07:08:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=KrUB=FF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qjDni-0000Mn-8n
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 07:08:38 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20619.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::619])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ae4184e2-584d-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 09:08:35 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7758.eurprd04.prod.outlook.com (2603:10a6:102:c4::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Thu, 21 Sep
 2023 07:08:34 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 07:08:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ae4184e2-584d-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BC8A2MLOjaLj30ABSpoVqlq+xf0VghqFweeJGNt4m9oke8Ho1yQ02HahW6T6sfTFBd/eJEeU7S0dB2wG7ihK7ankZSCpWLBeCRAHl/8yHban1+305Cl1AQNdqHkoQjJoGOOAHOIsdcYfEhRvfbPzrCMZmZ70ZqWsDniTjybfzKmTOJN4r5t6IASOd/dWTY291S/uNipDq1SFxSAshGGTOrb1zg3wO+7EBRJb55GDLHQQG6rKLiUulkTJCBSeyxs5N2KYmILCkZNITUAkScz/3w80H8TYVFP0yk0BKAbancCX7nKima3mwMAhn8/PbpO0P/EE3AhDij9O6Ojy7jCDHg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nTVUuaHhvoDDSz+OYNieLdgJjxPwfOd6DYB4fY5lPVw=;
 b=B6Dk5O4TvNBLQz2DQC/QfPhO9CA7zWQFceWrJz7sMKn/WraaeX0CerYR4SnsHDJ++Js5A6zNaUmYSntF50kI21VBKC7SL8B6kDgE3KNXl8ATrsQFoX5eRVpeEXVCGoq46UgsEpmJORJ9Qzu/+vxiC0sPxDB4BgPNkstdRcPyEdu9Cm99jvqAO5zoLe1zy1dArjrPI1JyPf8SnZjos+mL+SE2zbroIbFtW/yoxdfw03Jl26zQwWXK0Thpp5ilRukg6lTapgb0IJ/E2iTDDYuZhbPHlIGXgYmm3v7wQZ4XqIf8NCXoiLcPiv34iD8GPFntNHno1My6BNiXfkvJ6NZVtA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nTVUuaHhvoDDSz+OYNieLdgJjxPwfOd6DYB4fY5lPVw=;
 b=GAdbpUhtfwBGvR1WGo3TNaCTk/CcvvmCR+AsTOqw5Ni8kJ72cUpCxA8vlB7+cU41r/8HHj+NadGv4AdQNTu9cIdBA+x9dihA01424pp4IE4d7iBatqQd3VCTAvsKsM12OZo5pZTTuk4M+Jkadulg1NRLPhZO+1hZ1uphqGxzom4IWcXiAQgTld1MPh61gSbtM8usk0dlFag0JgdISs2x6jRGSSXyx3sPcbR39DivIIQTsM7KfEagnxHcICToyHjo1SE0JBFHOwZhwGip7SHpyYKe9sNj1+EMOe9U75vkzZJu49c8+L/L/zF9G/iJTD2N5xi2TLNwhRN90/D+31T8DA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <fcff9af9-3abd-2d0a-f40c-826f6b1de815@suse.com>
Date: Thu, 21 Sep 2023 09:08:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: xen | Failed pipeline for staging-4.15 | 3a9a2901
Content-Language: en-US
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <650ace63a5321_28a55b478157@gitlab-sidekiq-catchall-v2-86b648d56d-wk4kh.mail>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <650ace63a5321_28a55b478157@gitlab-sidekiq-catchall-v2-86b648d56d-wk4kh.mail>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0014.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:15::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB7758:EE_
X-MS-Office365-Filtering-Correlation-Id: 0ad616b2-dcc1-468a-5e26-08dbba719172
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RXzybS4kU2uITNErx+94T3obHhxMDAZhC700gdHCDTJX/DYMY9cjTxs5Xj6AfLVUNgwaBE8+hu3WaI2CBqxInGkGoIS99CY2RP5lYyjjozX/W8p3UR8ueoSTqeYgIHEFnz1cUH/8skrOwzbNBzvAx8j9R+PVnR6KXp6lRqO31HBuyWvCb9fgmgvGc7+8mloR6Px8ksUMew+8oZddTLYwDUftSRtUa89mpyWBbT8M65PUrqyqF3xJQ7lZxdCIjMM5Q2XOyhLRN2B/VB98ZHdODyj/Z40hVkswKxrD4R8aTdwGqh2iHQUvO/W2tX05PZtrs/BkDvpz0xua8se2xkzmxBtPj6DgPaoLmH2sWV6+S/ql59MhfHz+6stvy/Z6ddrZDgDtuCAVvoUAnvVYm0bqT2dHNLUz4gA0PNUrguHTZvND0GA4vbG2wYF3gC1BB5kRTyyu8BrWQ5qwk96zjNY+6zyaxWDv4H6nWWblPsWusA8kBw25aNRbyBtdo7Ulw+ni5abAqu1P6G3PSTnJP7AOz2hM6m/Wtaatpd0KblN07oXN81gNJZ3CrevbMMJvVI0jfabWsSurQ+wK9enRhGnvGoCGJ55NYmjK8xQMKAs4WopeK8zsV2g0cOgng5woph7jaAvTMNoKo1/9aMiaqpSgRQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(366004)(136003)(396003)(376002)(186009)(1800799009)(451199024)(83380400001)(2906002)(86362001)(31696002)(36756003)(31686004)(26005)(2616005)(38100700002)(966005)(478600001)(316002)(8676002)(5660300002)(66946007)(66556008)(6916009)(66476007)(8936002)(41300700001)(53546011)(6666004)(6512007)(6506007)(6486002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YTRYT0R0TFRRK3pzSFF2S3VvSjJmQ1VwTEFqNTFOWFUrOVMvVzFCeTgrTXNs?=
 =?utf-8?B?b2llODd0UmNZNU4wWGdSVzBZRzk1YVlrbFhuZU1mQ3REdjk4dXB5Y0pHTklz?=
 =?utf-8?B?eVRmLzI3QWJSb0RCY29iUVdXbzhqOTJtci9xTHdtTFhRVUJkbHVGdDVsRUdF?=
 =?utf-8?B?SW5CeTFzUGNSSU0wYmRNOU01d2J0RXI1aWdiSzc1bm9XSjNrbk9KRnJIeFBO?=
 =?utf-8?B?VGg3WjV3S2FnM1krUlpncHpxRXgxOHgwdHBXUUlQKzdoUjZTMzY5VDZiM1JW?=
 =?utf-8?B?LzVlSTVKMWZjUklTSWNGakJJOXpuV3dueEt0anQyNzNGaXZzQnoyQVdYUDNk?=
 =?utf-8?B?VGo4UElHN0FBdHpJQlNRYWdFN3d1YTZJMllObVJMOVJmOCtKQ1FNN3UwY3I3?=
 =?utf-8?B?R1BxQXNONnJtZzVQSUxhWllXS2hucDZVcXcwdDZ5T2plV2gwTDhRbEVVbHd5?=
 =?utf-8?B?dXBMOUoyTGtlTW1kZVovMkRGYWZaZ00zUUNjS0s0c1FlMlpibnVpNnlhSWFB?=
 =?utf-8?B?cHdtZzlJeEd0VjhYUE1QWjJWdHZsazR1eUZEdThva05CUmVJZERyU1VOb3pL?=
 =?utf-8?B?VEYyTXZxcS9lMWxYdmM5QWc2WVUzWkV2OE5Lczhmb05IL2szazVPWHViT1J2?=
 =?utf-8?B?WWRCZ3RLT0dqRytpdVJrODhyUU1QU2E1M3J4OHNpWCsvWjJRdW1ZWmVTemVy?=
 =?utf-8?B?bUhyM201My81QWptUlg5cWxUZTBXTzhxN0RmYjJPc3BUR1F6dWdHQk1iV2Ft?=
 =?utf-8?B?YVpiUXI0OGJ1NHNTUmdOTm4vWXhmazlVZ2R1UmsrVFZBeThwUWtSaTYzb3Jr?=
 =?utf-8?B?YkcrOWVucTVtTXFUcnBEaWlGclFneUZadEpUMmNHeGZPREdYZ1BPdGJDdHUv?=
 =?utf-8?B?bTBxVDhPYzdiaS9GTEpvM2hIT1hOaFM3cW5MWFFXRlBDWlIrTTZrU1FQOUNQ?=
 =?utf-8?B?bXVMbVVXRmt5dmVlZ0ptZDF4SCsxRkQvY1dkOEFtbjBBMGZrL3FOQ1k4RitH?=
 =?utf-8?B?NVFEbHgwYVZqRlFoQzErQUh4Y0RxQ3MwNnNoVnlCUWZyeUhpeW9GZ2ovdjhk?=
 =?utf-8?B?WnhkZWNTWDUzdmhmVGsrWUd1T0JYTE1ZUW9IY09VUXhwUGZkTzlwQXRtQ0pP?=
 =?utf-8?B?Mlh4cE5udzRWdUFJaS9SaDcyREpvUW5wajJ6WE9CTDlBaFA4aC85Z1JHcGFN?=
 =?utf-8?B?SWxXalQ1Vkdsc3E5dERBcGtUU01PWkZ6ZjVHaU1nVlByNmcxQUVUeVZqc3FJ?=
 =?utf-8?B?VUdtTHI0dWZ0dzRPOHF1enUvbjQ3aERtTm9SeGp6U2t1bWwyN1RTK3oreEhr?=
 =?utf-8?B?NGhCdzBLSUtlSkpXa2ZCZWlVQ0pzemMvTWE5ZEx6ZWRtdk1NMW9JTTdKSzdW?=
 =?utf-8?B?Z0tDMGdzUXZxVWVqazY1K1ZPYTQ5NW9ucUk5UFFEanRlSGlMbjBMUW9QUHl3?=
 =?utf-8?B?Q3hibkFpSXcrSGFTQjhPRS9mUGZrb3hQcjBTaVl5emw5UVhoOFo0VDlSUTVX?=
 =?utf-8?B?TGFjZjlrQ1Bma0t1cHR6b0hnM1JtTnZFWUg1MXc5MUxqZlBJWkdJWUVaUW1O?=
 =?utf-8?B?ckk0eVM0WFNEWkVOampBZU5BTnJjbGJ3Tm5uM0VGcE05bTgydGs2WkV3NzBz?=
 =?utf-8?B?N3ZuM2xqcG51SHdjaXVOSUNNdW95N3JkdzVLT1VxNkkyVENFcUkrUVNzL0xK?=
 =?utf-8?B?eFovU2lJaFg0RnhNN0JybW5RRWVIdTNaeDE4dndjU1NxT1I3Y0JZSGU4Lzky?=
 =?utf-8?B?bXNCaFloSWxibVlJK1UyRHhreFhZK2V6U3NvTmdjNndpdkd1TUNURDQ0Wlhj?=
 =?utf-8?B?OU0ySEI5RXdselpGWXFybjFmallzNzY3bjdMN3gvRzNFNThDS3J6Um5YUUx4?=
 =?utf-8?B?dDJEYm0zVnliMmtrRmxPSTA4cXVaaFVGenFIeHJ1WUQzV0lUMTNhc1NMWlNr?=
 =?utf-8?B?dWp4RTFyTFV4MzNDNjBsVE44OEtPK0xCeHVackQ0UzlHclZ1U3FLeU94SnMz?=
 =?utf-8?B?L2kvN2NFaUtwd2U0bGg3cys2dEtRVUYxeFVjMVJhcE16T2F3dlhKYVVTdUda?=
 =?utf-8?B?TjdlT2FuUzQzS0Zmak9NODNMZUdET1EwT0Z3bndCN2MwTXhtVXgwamU1K3ZI?=
 =?utf-8?Q?RIzIPpK2jF1tcNE40DYHpxELz?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0ad616b2-dcc1-468a-5e26-08dbba719172
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 07:08:34.0004
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xQIR4uidFF4aQiuNmTZc0F3Mt8JUrO+I+fH6eD3SpwxyUSH/kVXvng1jSPkEtzJTdMMFoiexTILU4J1RxTulLg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7758

On 20.09.2023 12:50, GitLab wrote:
> 
> 
> Pipeline #1010772231 has failed!
> 
> Project: xen ( https://gitlab.com/xen-project/xen )
> Branch: staging-4.15 ( https://gitlab.com/xen-project/xen/-/commits/staging-4.15 )
> 
> Commit: 3a9a2901 ( https://gitlab.com/xen-project/xen/-/commit/3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47 )
> Commit Message: x86/shadow: defer releasing of PV's top-level s...
> Commit Author: Jan Beulich ( https://gitlab.com/jbeulich )
> Committed by: Andrew Cooper ( https://gitlab.com/andyhhp )
> 
> 
> Pipeline #1010772231 ( https://gitlab.com/xen-project/xen/-/pipelines/1010772231 ) triggered by Ganis ( https://gitlab.com/ganis )
> had 19 failed jobs.

I'm somewhat puzzled here, in two ways:

> Job #5127621914 ( https://gitlab.com/xen-project/xen/-/jobs/5127621914/raw )
> 
> Stage: build
> Name: debian-stretch-clang-debug
> Job #5127621916 ( https://gitlab.com/xen-project/xen/-/jobs/5127621916/raw )
> 
> Stage: build
> Name: debian-stretch-gcc

This one failed with

In file included from /builds/xen-project/xen/tools/qemu-xen-dir/include/qemu/timer.h:4:0,
                 from /builds/xen-project/xen/tools/qemu-xen-dir/include/qemu/timed-average.h:29,
                 from /builds/xen-project/xen/tools/qemu-xen-dir/include/block/accounting.h:28,
                 from /builds/xen-project/xen/tools/qemu-xen-dir/include/block/block_int.h:27,
                 from /builds/xen-project/xen/tools/qemu-xen-dir/block/file-posix.c:30:
/usr/include/linux/swab.h: In function '__swab':
/builds/xen-project/xen/tools/qemu-xen-dir/include/qemu/bitops.h:20:34: error: "sizeof" is not defined [-Werror=undef]
 #define BITS_PER_LONG           (sizeof (unsigned long) * BITS_PER_BYTE)
                                  ^
/builds/xen-project/xen/tools/qemu-xen-dir/include/qemu/bitops.h:20:41: error: missing binary operator before token "("
 #define BITS_PER_LONG           (sizeof (unsigned long) * BITS_PER_BYTE)
                                         ^
cc1: all warnings being treated as errors

What? How can "sizeof" no be "defined"?

> Job #5127621965 ( https://gitlab.com/xen-project/xen/-/jobs/5127621965/raw )
> 
> Stage: build
> Name: opensuse-leap-clang-debug
> Job #5127621939 ( https://gitlab.com/xen-project/xen/-/jobs/5127621939/raw )
> 
> Stage: build
> Name: debian-unstable-32-gcc-debug
> Job #5127621913 ( https://gitlab.com/xen-project/xen/-/jobs/5127621913/raw )
> 
> Stage: build
> Name: debian-stretch-clang
> Job #5127621924 ( https://gitlab.com/xen-project/xen/-/jobs/5127621924/raw )
> 
> Stage: build
> Name: debian-unstable-clang-debug
> Job #5127621934 ( https://gitlab.com/xen-project/xen/-/jobs/5127621934/raw )
> 
> Stage: build
> Name: debian-unstable-gcc-debug-randconfig
> Job #5127621930 ( https://gitlab.com/xen-project/xen/-/jobs/5127621930/raw )
> 
> Stage: build
> Name: debian-unstable-gcc-debug
> Job #5127621928 ( https://gitlab.com/xen-project/xen/-/jobs/5127621928/raw )
> 
> Stage: build
> Name: debian-unstable-gcc
> Job #5127621937 ( https://gitlab.com/xen-project/xen/-/jobs/5127621937/raw )
> 
> Stage: build
> Name: debian-unstable-32-clang-debug
> Job #5127621974 ( https://gitlab.com/xen-project/xen/-/jobs/5127621974/raw )
> 
> Stage: build
> Name: debian-unstable-gcc-arm64
> Job #5127621975 ( https://gitlab.com/xen-project/xen/-/jobs/5127621975/raw )
> 
> Stage: build
> Name: debian-unstable-gcc-debug-arm64
> Job #5127621964 ( https://gitlab.com/xen-project/xen/-/jobs/5127621964/raw )
> 
> Stage: build
> Name: opensuse-leap-clang
> Job #5127621892 ( https://gitlab.com/xen-project/xen/-/jobs/5127621892/raw )
> 
> Stage: build
> Name: archlinux-gcc-debug
> Job #5127621889 ( https://gitlab.com/xen-project/xen/-/jobs/5127621889/raw )
> 
> Stage: build
> Name: archlinux-gcc

This one exhibits what e35138a2ffbe ("rombios: Work around GCC issue 99578")
addresses, yet 4.16, which also doesn't have that backport, succeeded earlier
on.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 07:16:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 07:16:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606122.943864 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjDvH-0001zw-En; Thu, 21 Sep 2023 07:16:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606122.943864; Thu, 21 Sep 2023 07:16:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjDvH-0001zp-Bs; Thu, 21 Sep 2023 07:16:27 +0000
Received: by outflank-mailman (input) for mailman id 606122;
 Thu, 21 Sep 2023 07:16:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4vX/=FF=daynix.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qjDvG-0001zj-0n
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 07:16:26 +0000
Received: from mail-pl1-x62e.google.com (mail-pl1-x62e.google.com
 [2607:f8b0:4864:20::62e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c3b4dcd0-584e-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 09:16:21 +0200 (CEST)
Received: by mail-pl1-x62e.google.com with SMTP id
 d9443c01a7336-1c0ecb9a075so4904415ad.2
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 00:16:21 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 jk12-20020a170903330c00b001bc930d4517sm688691plb.42.2023.09.21.00.16.13
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 21 Sep 2023 00:16:20 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c3b4dcd0-584e-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1695280580; x=1695885380; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:to:references:cc
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=gtZnJWNLETty86cmt5G3BLku52AJOJobMcOTxivz8yE=;
        b=Q9i0zM6hhYtFwsRoMB1oOG4a8RkOxYpxA8ysF1Nj+0KrfnD+hjWkO51GsJHc/N1K4i
         HO3w06REnySAH0QC2tMBweuT3ItOMIHLEh8mPs360PVSoSSdedJlSpjNBDmOSLY0cwbR
         E5vUkkeEzONlENY8mBiYD8fJSvZ8u1Vg425orZh+I6aY7jcE+DaHD+zP4AaeHN+TqAr3
         y/0E7fDuYPXGHbePe5gwwoQvzugAnxpkcE0uBlgYqqmHlRlmSvqhI1uEoVqq2fvgguT+
         sU/pCT03qo5f2ZSs8Z0HFvpiXWcFPXYcQEcRrmJCmMm6y9gOYhczZC9y/7XLG8ItvYn5
         D/LQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695280580; x=1695885380;
        h=content-transfer-encoding:in-reply-to:from:to:references:cc
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=gtZnJWNLETty86cmt5G3BLku52AJOJobMcOTxivz8yE=;
        b=KAqIq796S5T3/52UgGFCfXdXQzIGhP2zmth+OKq0Os4APmVXb8QQ2VcOq67IsdKMgf
         hvVSPTVXmgcEXTmFimO+jpxYXjk+pgdWT8c5aKdEM6zp9o+4sBbQNHFlRltz1KKZ7lDx
         XUYqEsNV4ujxIOc6vJBVSCOimaHSKGxZlGfo154rYvoOJzcE7jl9V2pFr1Q6zeDX4WsU
         AuDjwuwXdE/3pGM1f4ubVqYW4op9OrB7x9qgXHplHt7+yzHOoXEqZzQgXeBAq60hiQpe
         D6zY4xyP9wqtSGWY5dg5526VhD98l8BjlDaIUTH+tKsWkNr8TPEMPJxLUQH3tQLo3net
         IQOg==
X-Gm-Message-State: AOJu0YziWsZ8snHZXls+c7N8GBw5FhmCUERdrdNGoHUtvPclu8CoQ1my
	M9nAHoobsFvf7NMFiCDfPuTs3g==
X-Google-Smtp-Source: AGHT+IFp8SmlgBP8c+mRMAyR0w6VTD2Eh6KSEGcXkimXFn/Frnpi2Y+TlrFoKGccEOT8tgcZe9KSJQ==
X-Received: by 2002:a17:902:dac4:b0:1c3:fa9a:1e41 with SMTP id q4-20020a170902dac400b001c3fa9a1e41mr5409577plx.45.1695280580336;
        Thu, 21 Sep 2023 00:16:20 -0700 (PDT)
Message-ID: <a2cb6356-18b1-44d1-90a8-d137e8a25227@daynix.com>
Date: Thu, 21 Sep 2023 16:16:12 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 0/2] net: Update MemReentrancyGuard for NIC
Content-Language: en-US
Cc: Mauro Matteo Cascella <mcascell@redhat.com>, P J P
 <pj.pandit@yahoo.co.in>, Alexander Bulekov <alxndr@bu.edu>,
 Dmitry Fleytman <dmitry.fleytman@gmail.com>,
 Beniamino Galvani <b.galvani@gmail.com>,
 Peter Maydell <peter.maydell@linaro.org>,
 Strahinja Jankovic <strahinja.p.jankovic@gmail.com>,
 "Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
 Alistair Francis <alistair@alistair23.me>, Stefan Weil <sw@weilnetz.de>,
 =?UTF-8?Q?C=C3=A9dric_Le_Goater?= <clg@kaod.org>,
 Andrew Jeffery <andrew@aj.id.au>, Joel Stanley <joel@jms.id.au>,
 Richard Henderson <richard.henderson@linaro.org>,
 Helge Deller <deller@gmx.de>, Sriram Yagnaraman
 <sriram.yagnaraman@est.tech>, Thomas Huth <huth@tuxfamily.org>,
 Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>,
 Subbaraya Sundeep <sundeep.lkml@gmail.com>, Jan Kiszka <jan.kiszka@web.de>,
 Tyrone Ting <kfting@nuvoton.com>, Hao Wu <wuhaotsh@google.com>,
 Max Filippov <jcmvbkbc@gmail.com>, Jiri Pirko <jiri@resnulli.us>,
 Daniel Henrique Barboza <danielhb413@gmail.com>,
 David Gibson <david@gibson.dropbear.id.au>, Greg Kurz <groug@kaod.org>,
 Harsh Prateek Bora <harshpb@linux.ibm.com>,
 Sven Schnelle <svens@stackframe.org>, "Michael S. Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony Perard <anthony.perard@citrix.com>, Paul Durrant <paul@xen.org>,
 Rob Herring <robh@kernel.org>, Gerd Hoffmann <kraxel@redhat.com>,
 qemu-arm@nongnu.org, qemu-devel@nongnu.org, qemu-ppc@nongnu.org,
 xen-devel@lists.xenproject.org
References: <20230601031859.7115-1-akihiko.odaki@daynix.com>
To: Jason Wang <jasowang@redhat.com>
From: Akihiko Odaki <akihiko.odaki@daynix.com>
In-Reply-To: <20230601031859.7115-1-akihiko.odaki@daynix.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/06/01 12:18, Akihiko Odaki wrote:
> Recently MemReentrancyGuard was added to DeviceState to record that the
> device is engaging in I/O. The network device backend needs to update it
> when delivering a packet to a device.
> 
> This implementation follows what bottom half does, but it does not add
> a tracepoint for the case that the network device backend started
> delivering a packet to a device which is already engaging in I/O. This
> is because such reentrancy frequently happens for
> qemu_flush_queued_packets() and is insignificant.
> 
> This series consists of two patches. The first patch makes a bulk change to
> add a new parameter to qemu_new_nic() and does not contain behavioral changes.
> The second patch actually implements MemReentrancyGuard update.
> 
> V1 -> V2: Added the 'Fixes: CVE-2023-3019' tag
> 
> Akihiko Odaki (2):
>    net: Provide MemReentrancyGuard * to qemu_new_nic()
>    net: Update MemReentrancyGuard for NIC
> 
>   include/net/net.h             |  2 ++
>   hw/net/allwinner-sun8i-emac.c |  3 ++-
>   hw/net/allwinner_emac.c       |  3 ++-
>   hw/net/cadence_gem.c          |  3 ++-
>   hw/net/dp8393x.c              |  3 ++-
>   hw/net/e1000.c                |  3 ++-
>   hw/net/e1000e.c               |  2 +-
>   hw/net/eepro100.c             |  4 +++-
>   hw/net/etraxfs_eth.c          |  3 ++-
>   hw/net/fsl_etsec/etsec.c      |  3 ++-
>   hw/net/ftgmac100.c            |  3 ++-
>   hw/net/i82596.c               |  2 +-
>   hw/net/igb.c                  |  2 +-
>   hw/net/imx_fec.c              |  2 +-
>   hw/net/lan9118.c              |  3 ++-
>   hw/net/mcf_fec.c              |  3 ++-
>   hw/net/mipsnet.c              |  3 ++-
>   hw/net/msf2-emac.c            |  3 ++-
>   hw/net/mv88w8618_eth.c        |  3 ++-
>   hw/net/ne2000-isa.c           |  3 ++-
>   hw/net/ne2000-pci.c           |  3 ++-
>   hw/net/npcm7xx_emc.c          |  3 ++-
>   hw/net/opencores_eth.c        |  3 ++-
>   hw/net/pcnet.c                |  3 ++-
>   hw/net/rocker/rocker_fp.c     |  4 ++--
>   hw/net/rtl8139.c              |  3 ++-
>   hw/net/smc91c111.c            |  3 ++-
>   hw/net/spapr_llan.c           |  3 ++-
>   hw/net/stellaris_enet.c       |  3 ++-
>   hw/net/sungem.c               |  2 +-
>   hw/net/sunhme.c               |  3 ++-
>   hw/net/tulip.c                |  3 ++-
>   hw/net/virtio-net.c           |  6 ++++--
>   hw/net/vmxnet3.c              |  2 +-
>   hw/net/xen_nic.c              |  4 ++--
>   hw/net/xgmac.c                |  3 ++-
>   hw/net/xilinx_axienet.c       |  3 ++-
>   hw/net/xilinx_ethlite.c       |  3 ++-
>   hw/usb/dev-network.c          |  3 ++-
>   net/net.c                     | 15 +++++++++++++++
>   40 files changed, 90 insertions(+), 41 deletions(-)
> 

Hi Jason,

Can you review this series?

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 07:37:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 07:37:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606128.943874 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjEFF-0006ee-40; Thu, 21 Sep 2023 07:37:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606128.943874; Thu, 21 Sep 2023 07:37:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjEFE-0006eX-WA; Thu, 21 Sep 2023 07:37:04 +0000
Received: by outflank-mailman (input) for mailman id 606128;
 Thu, 21 Sep 2023 07:37:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=KrUB=FF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qjEFD-0006eR-5X
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 07:37:03 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2048.outbound.protection.outlook.com [40.107.7.48])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a75f45e3-5851-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 09:37:02 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB6927.eurprd04.prod.outlook.com (2603:10a6:803:139::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Thu, 21 Sep
 2023 07:36:31 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 07:36:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a75f45e3-5851-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EdWf4BHieZ2OqOT2kzFKIaOex5bYKJA3vxYKvA49c90aNz+9WHpiBoo2cpYPQJe8g/n/3l8P20D2imIPs6y3Mcxn/V2h2gIQDPHi3NdBVXf/HLlUwXTEEhl4lN72Shsu8Gc9go2wu01lbBZazmAvw0UH8es0eaj45rrAB6ufzMH2meGXi/9ad0b2PrOh8HCYBI9D97Epy6ioqGMTEWbW1wgMRxBLMyptB9Q/+JLpXnA/jlNmt4AiF80IOyyAH2Nh6Vn/gvVzUE7tzZEroaSek5BLjaKlU9q8Etr1nbWlD8gGszmuwfy86YRPPpem0dqyrL1dBAroJ0Jg4KOigPtWJg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vU1qO2VbaqWuw6po3P6mtmQRTlrEIuuh7T5grhPhVw4=;
 b=lTg3iJJ3vWUJs/LTorayJMMvIHfGFrgBYj3/SLczJo88sGN+ldUqRleD+x1Ti/m9dxNONcppxjlXWkwx5UNuSPDgWdL4BAZdOwimrktpFRTvZ6KlnjhT4u0WRJdJzd97NTJSwf+01Q+GMBuET497d2FYrojoFivGK2j+GYkYl9yxCaVXrDpiH53/Lg/MGKYigebnmC/EGbwiESzknIXiZQoYj+kXYTra8MA5enFdRUwvDMjBK39W+DCmETSb17G1e6S0dJNsCrMoP9GRoNI0+gzxEcLSez3LlE8orem5hTGDWeb8XkCNkbWIvUnA38vJh7+lCKwhTovi9LnNpU6Rxw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vU1qO2VbaqWuw6po3P6mtmQRTlrEIuuh7T5grhPhVw4=;
 b=YanMeMl03CSyie55Df4BRA1HKLaNr86DOuCXZoJJGGP3970SZx6wL2hxs0ji/nEuNEab+1LVkn91WULyNykoOe0EYnj43zSzBil8UW9qasjGjGw6dciq3T3sFjYUEKNtyzRLGC9akeZjiG3S+SW7bs8UHPSC2AoXDBPcd7NMFGqzAknUTbKKlcKXra9IosykUb2RBm4WDu61SoAFZxE0ALlV88OhPc+dx9Jf7QKlyl4yE3hp0z6DL3lLgY7hacvTzZ6FNb/ooW8rXfZrS5gFPdpsqwBQk2Pg2Bo2xwPQd8cCXi+ud5m69sY/9pbJkkDxyZRWHJVP1JXF3H6hJB1/LQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1fa2ff17-08a7-42ec-375e-783efd2a71c8@suse.com>
Date: Thu, 21 Sep 2023 09:36:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v6 0/4] ppc: Enable full Xen build
Content-Language: en-US
To: George Dunlap <george.dunlap@cloud.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Tamas K Lengyel <tamas@tklengyel.com>,
 Alexandru Isaila <aisaila@bitdefender.com>,
 Petre Pircalabu <ppircalabu@bitdefender.com>,
 xen-devel@lists.xenproject.org,
 Shawn Anastasio <sanastasio@raptorengineering.com>
References: <cover.1694717278.git.sanastasio@raptorengineering.com>
 <d3f04552-28d3-8745-3def-b7c341f8b76b@suse.com>
 <daaff015-6da1-8daa-d8b3-3618c89bc799@raptorengineering.com>
 <CA+zSX=a6U5Ox-uS8EO7A2c4QPF06Ua007hCkyimwU-nKdsnxbQ@mail.gmail.com>
 <CA+zSX=arnS5deiNgHcV2SpGRB9B+nQy8eE040YmxUAotSJ-=iQ@mail.gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <CA+zSX=arnS5deiNgHcV2SpGRB9B+nQy8eE040YmxUAotSJ-=iQ@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0056.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4b::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB6927:EE_
X-MS-Office365-Filtering-Correlation-Id: 0b2a7fae-74d9-4053-d7d7-08dbba75793e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	AftPAOSVvnR67eGF5/Y++KKKvzK8l3YK7Pedm8w8HeV1SwmWxC1y02CnhrR3lsNZbRlWgN/iEj3e+5XfxGhKqUDFfJsYRJktG1yvOA5cCPC+HT3FJG6Ktx6XeTkR8Fyrc6d3hCGRUYWhzk9vA8NU6EGy/A5GuiOG0Za33o47/OGdykibtyTwWpHfeYq/kHk24Rxg89JelU9o59qJdFdMsoLKSViqWn5SxB32tfuP/l9+phLogquxsHpLON8MbC7AMSd4kEmF7H6Wo1a/wbnf+wC24ILP8ImW2S6eUNRT6GVFI+CR+ZpvT0nYTseFqVKxAopLo+2GlqOlhXcPG0AP7axDO9Xsct0hP3Fy2NXDD8j+UGqURGWN/49YPzX5nTIRaAJxr5269fTr83iXmVPY7+k+dnI+ZW0iaJw4TPRjnxXkOiRxeed+JnSRLRTqktBuc4R6hTPW6gbZA07jIKhRbvrGNN/WDOtELvCk3Iogfh7yFOKnE7NKlVO3Wcv2R6eoYfjv5IFH/mKgC7clZeLaa24bECPGF13l4mw9/sb8ctrjI48dmwTLeP3ioao8qylx5AdHpmkmaaSFyqwyNsgZsM8YRZ6Poz+nrSXU/OcO6ddZ0LhS+4oBynMx6zsOjJ5fvIBC3IApvCTKDoC4ENoJrA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(396003)(346002)(366004)(39860400002)(451199024)(186009)(1800799009)(31686004)(6666004)(53546011)(6506007)(6486002)(38100700002)(86362001)(31696002)(36756003)(26005)(2616005)(83380400001)(478600001)(5660300002)(8676002)(316002)(66476007)(7416002)(41300700001)(8936002)(6916009)(6512007)(2906002)(4326008)(54906003)(66556008)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Wi9YMVJBZW1wZnYwUEtFeStsSWdZRVZSWFJVRkhJd0oxeFZsdWdiN3FkQnY3?=
 =?utf-8?B?cHI3dVplUS82dHpSeGZXR3pVUFhmOW9CSTB2aThGWXBQY3VYZFN3RDdIbGFL?=
 =?utf-8?B?ZHQ2ZkFQajFIcnNlZ3lGeEtWWW5FbFExazY1eDRvL3AwaHpBeTl6RzVqTDJD?=
 =?utf-8?B?cUpaT3lRWXFCOXk0eVhZVEJjZ0VoWEt0bUhOY1UwRkRFRUU4aFl4dVltTlVQ?=
 =?utf-8?B?M1g4L3J3N2ZtNkh1Z3M0NXRMZ2JWWFRmNkQzY0ZBZ2I5dk9uM2pzV0xrWEJ4?=
 =?utf-8?B?bG8yZ1RDTWJ2aDF6bGpYanRvb1N4Z0pmQUxjLzdsYjRSTXRVR0daQTQybmVT?=
 =?utf-8?B?ams3aExJa3VSZ1k2dVpjNHNnYUtoWTVUQjZGVVBheXIxNEVUdmlzbFJvMnZl?=
 =?utf-8?B?ZDMxVUhPQVFLa252a1RON1hJeFVnWEJHdmVKMzJVZzZjK2k4N0xrMkhMRjls?=
 =?utf-8?B?NStvK2c4QWZGQ01BSlNjSzk1Q1FqUUpMQU1pYmZwVllheGJZUTc3ODREUnE2?=
 =?utf-8?B?K0V0VWNFOUVQMUtyWjIzM3pHY00vaSsvd3F4VS8ydFVMZm5nKzJ2V1ByQXN0?=
 =?utf-8?B?OEhkZGw3Z0dSUHFoWlRsbnZWRFdua3JzSnZuWjhwa2tyeEdLUFpoMnZJendy?=
 =?utf-8?B?ZGpEVjNHR1doSE1TZXZSMmhmV1ZjVDV5eXlxVUl1bVhhb2F1Z2p3QW1hVFZp?=
 =?utf-8?B?dHJHMjFmWWtFRXl0WkVCWWwzSjhQbGFvbTRyTTlhWUFIcmRLZ0dvTzRzTDBR?=
 =?utf-8?B?U2EzVnh6RHNPRGpERXhiamZIbkxqN1A0cDRIcitFd0NwckcvRk55RFBpUnc5?=
 =?utf-8?B?S0ZQek5YZ3FaUk1VZE5YclJYS0dZUDcvN0hEWEdpeHV1VGcyNFYxeUordnpw?=
 =?utf-8?B?dGFPc1l0OVB4UmdQZ1JYUlBlVTRMWWF2cmhRRXA4UWoveHh6VE01aGdzN2lF?=
 =?utf-8?B?dVhOU2RRclJxWmhZcmVEVmozWEZuNk5mRThkMVF2VmpobjVvOGZiMGp4a3k2?=
 =?utf-8?B?QTBKQkhxblB5ZzVDL2lSa3J2K3R1dE5iY3BVdkRmUFpULzVHc2h2YUp2V0pY?=
 =?utf-8?B?dzNUeWc4WjRpU3ZjRVYwTzBiZnZ2cW43RW0rR2VDUFA3eTN5U3JFQVRCbE5h?=
 =?utf-8?B?NnlweVZPR3ZGUGNIWTRqbjFsTzJSYTJ6eVBsT1VVSDZGZ1VTb3JWTHBRTGxR?=
 =?utf-8?B?MFlXSkVlSEdxZEFGVCtIQ0N4ODlOUFg2cm1UbWJrYW8zMDNxRktXS1VwclAz?=
 =?utf-8?B?ZjRwTFhjcWhDc0RZZWVBYVliSDR4RSt3bXU4RjJpcHpDZWhUZHZoTzc2WWZn?=
 =?utf-8?B?YmZoeXdGREFCdzNIcXRXeHFuaEMvaWNES25aY1M1U0JheWRKeVpyaDdSR21C?=
 =?utf-8?B?bnFRUWlDNE9ZaU1jcTJyRjQ1Z01vVTFGZXI4QzJwZHNsM0tqbFY5MCtraEtM?=
 =?utf-8?B?VmN5YldvYjMyb1RHYlVNOVhwNFArS1drM2U0Rnl5L2xUZTRhMjNiT0FZamZu?=
 =?utf-8?B?a2drMkMvUk53cmxLaWUzUDVBVkJZb2J1Wm5MaFVzOXdWaXhvdE1peTZFejBZ?=
 =?utf-8?B?SVRIYmZtUmE4RUR2bDAyN1FLY2x1WXh2Q1pKUTUwUmpJcWU3bkFnTDlUUTd6?=
 =?utf-8?B?VjRMbFlEQ2RHa1plRlJhSmVac0U1dkZDT2tjNmZ5VDc4YlNyVXkwOE1DQm5T?=
 =?utf-8?B?dG81UGYzb1JrTEVJajdjSlJoZ294Q21hblEyYmpLL1U5MGUrYjhsUmF4clhB?=
 =?utf-8?B?SjhKTHhySXdoSjJZSVorNyt3S1RtWnd4emw1alQrellzWVlDTHdYRXJLTUJ2?=
 =?utf-8?B?M3hLSHpHeTFENW5QTXRMWlRlQUNMTll1WFJ5UlpKWDNncVhnQmdxM3ZvOHRH?=
 =?utf-8?B?S1ZDS3J0citBZHhVMy9KZ0J6RDg0a0ZhY2p1Y05DdU5Id2daMGhCMklVZjFN?=
 =?utf-8?B?MEpuU0RDZHI5WUk4Nms3UXZyWW9zVzg3VG1XUkdXL3dCencvWnhTVkNGWkpx?=
 =?utf-8?B?VVhuQU50K0RzR3h4WWhLcjZWQTcwL2syWnpFem1ld3JVZ1RwNHBVRU41dlkr?=
 =?utf-8?B?bEFIOTdjYzRTWXUxLyswUnFLOEdFVytIZHpPVXNLejRvZ1dTV3c5K1BkdmdT?=
 =?utf-8?Q?/SZEVDBsY9ZFcv8YzPM3r6aNn?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0b2a7fae-74d9-4053-d7d7-08dbba75793e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 07:36:31.2952
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: aa7aftCSENB1eCu0biOfAGqgNYMTYoBVDql6Tqdf1MNRjSc/oSsXkzqZvXwwKYHeHsIMU/EDrNVWBkr+ha2ARA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB6927

On 20.09.2023 13:04, George Dunlap wrote:
> On Wed, Sep 20, 2023 at 11:59 AM George Dunlap <george.dunlap@cloud.com> wrote:
>>
>> On Mon, Sep 18, 2023 at 6:27 PM Shawn Anastasio
>> <sanastasio@raptorengineering.com> wrote:
>>>
>>> On 9/18/23 8:19 AM, Jan Beulich wrote:
>>>> On 14.09.2023 21:03, Shawn Anastasio wrote:
>>>>> Shawn Anastasio (4):
>>>>>   xen/ppc: Implement bitops.h
>>>>>   xen/ppc: Define minimal stub headers required for full build
>>>>
>>>> Compilation fails after applying this.
>>>>
>>>>>   xen/ppc: Add stub function and symbol definitions
>>>>
>>>> Continuing nevertheless, linking fails after this.
>>>>
>>>>>   xen/ppc: Enable full Xen build
>>>>
>>>> Things build okay for me when the full series is applied. Generally we
>>>> wouldn't deliberately break the build between any two patches; doing so
>>>> may be okay here (except I guest CI's build-each-commit would be upset),
>>>> but I'll do so only upon explicit request (and with no-one else objecting).
>>>>
>>>
>>> Sorry about that. Going forward I'll take more care to ensure that
>>> partially-applied series still build correctly. For this series though,
>>> if you could make an exception it would be appreciated.
>>
>> What would be the reason for the exception?
>>
>> We don't want to follow the rules just for the rules' sake, but the
>> rule is there for a reason: primarily to keep bisection working.  Not
>> sure of osstest is testing the PPC build yet, but if it were, then
>> this sort of thing would make it more difficult for the automatic
>> bisector to find regressions in other parts of the code.  Having
>> non-building patches can also confuse "archaeologists" -- people a few
>> years hence who are trying to understand what the code does.
>>
>> Is there a reason that this series would be particularly difficult to
>> reorganize in a way that would keep it building?  (Haven't looked at
>> it in detail.)
> 
> Sorry, didn't notice that Jan had said it "might be okay here".  Jan,
> don't count this as an objection.

Just to mention it (besides the fact that I did the commits already
before your reply) - at this stage I'm not sure bisection of PPC alone
is particularly important, yet. Hence why I said "might be okay".

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 07:42:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 07:42:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606133.943884 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjEKG-0000SA-MX; Thu, 21 Sep 2023 07:42:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606133.943884; Thu, 21 Sep 2023 07:42:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjEKG-0000S3-JJ; Thu, 21 Sep 2023 07:42:16 +0000
Received: by outflank-mailman (input) for mailman id 606133;
 Thu, 21 Sep 2023 07:42:14 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=KrUB=FF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qjEKE-0000Rx-HQ
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 07:42:14 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2062e.outbound.protection.outlook.com
 [2a01:111:f400:fe13::62e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 60d297ce-5852-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 09:42:13 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM9PR04MB8440.eurprd04.prod.outlook.com (2603:10a6:20b:3df::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Thu, 21 Sep
 2023 07:42:12 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 07:42:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 60d297ce-5852-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PbxZ3OYr47p+vIPIPLsOr7Dw+0N8V0yh5AsZAAvQsRp0a9QNjtE0q4Xj40hYJmx0CRVjxA3F/sC0KaUr+PJMnChpBmdf6+ZTu76JVeVf6YK9WNJov9p6vywQxmFb0UMNt1L6AytgF5OugJwEz/kBRaP8AKVGM7Ol5bBKqMUt+KqHzksgn4kUU9cMPqcucNVAKJ1UULmpn5IMe0oxk7pFFFytvn6Z/uYHMw1sg6GnlAiXtwzu67K/GRA+P9c5Kl9mof6840zDqzwMgQdJ2s99XSipce0RdB/mNb/Zhv1yTH//JNyG1DMtL+trxP2YfNaNlSVwVCrKxM6A/RW21pvU5Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=66IYN27JxVO1SeIztLIsxgVrFKtvVD42qff1GK4SzFc=;
 b=V6U6Bq3VaFBJcg2GYkHcCCrkzDZl3s+FMb2qMh73MawDHtd0Ai0WGWkJ0M0oHBbFN/CHaMxhFTfnKZE4hStB8eNkqvEvwwWwgZkpMS9p+CwFUUs3cq6J7XTuffwniu+h5/BgCvd50lZgxaDgQqoIgalkLXnazutjm5WIq6QcMiUgR2w8hRlnGx8gR3BbEV0Upkbwhoekl6imNfxmHL5UqjtEllTlaKOqCf/G2m7DcL84ank/3wM7o/kMC7DXLSVpbkhw+hZz4tm1W7cmsZk+FUQB6Wo3nt4jgh83ss8Knh9sre9V4FYfzG3bbKu9rrCPaaDrcxdLvreyWqzDpYJK9A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=66IYN27JxVO1SeIztLIsxgVrFKtvVD42qff1GK4SzFc=;
 b=KgDyANvaUhGjRvyv7AqMw906fTAEX3DwpyiYnIYRhoDl4l30dssjP5guNJz7OLHcB4ssIDLE/pd8QNqxYG0AZgIfxCWKaCy+FiGkJOqaEAf25kH7n+0l4XwCKAoKlWVuPkH5sESxXpslzmqHUgfcHj9IbcGFIlirm7Cw5IAJMe+6a8j/d8dwdeseoD8p1/ncX3Ro1sjdBEMROtVAlJV568pfv5oxLL8m6Kz28a1tz/kWBOLgROI4s3Vx/O/UNdTAi7mXB8iu3NO1HGdZ/xkzcclOsQar6VqDqRE4b/x0qvqHr8IuXDbpJyNSya2biLZjjXmzKYtN8DobKagQWGfiUA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c1f0f3cf-a5de-5f90-e153-c523665eba0f@suse.com>
Date: Thu, 21 Sep 2023 09:42:08 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v9 02/16] vpci: use per-domain PCI lock to protect vpci
 structure
Content-Language: en-US
To: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 Jun Nakajima <jun.nakajima@intel.com>, Kevin Tian <kevin.tian@intel.com>,
 Paul Durrant <paul@xen.org>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-3-volodymyr_babchuk@epam.com>
 <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
 <98b8c131-b0b9-f46c-5f46-c2136f2e3b4e@amd.com>
 <ZQqoqrmDr2jY_bMu@MacBookPdeRoger>
 <8f8e293c-80a9-03e0-0c19-e641dc42d42e@amd.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <8f8e293c-80a9-03e0-0c19-e641dc42d42e@amd.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0058.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:93::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM9PR04MB8440:EE_
X-MS-Office365-Filtering-Correlation-Id: 4f71571b-8ae4-4449-5c9b-08dbba764446
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7BckOQo724g3UIX68F23FsaZDfnlljVMctIeJTaUMmV1pJNQpHX30VPngH01j94A6lWX6Wo/a9mTgGddrggVN5wheO0up09f+UOst6ilWr93JqESbLujMCH5OP6nmPIEIZV/C3p9JU1/F5QmSHQzYjhnvSDagVVR/7l41Ke3IFP7Fs2+sD6pTXk58kAM6P0MdeUiorF27RvUgi+Y1jUvNHwWUvI+696ZNqMV7kJscg8uKZ/lLZ83m5AMtoMQa+i4STWkmz81+me8lzGs+xjokFmF6nBWBCM2+U2XavPIi0ZtYMzxPs9U1+DmkydojwUUMoIRlD1PrwQA21L+UzWkquFxYLxZiGxv9NBAWoGKH1QZEo1SyM9irWR7dAUP51q1GEuvQER5MdeVb1t9F1EWHh5pDg9dFvcsp9ROs1POFvHn28W70RZgG/DkMzAoUmSqpU8vOw6Ix77F4atXgv29bV2dUkBqRNv6L/NQZ/wqBajpebKzT/4CDaEx/NiXuOTN73a9tlQuc+oKDbjdGtNncipez73f5XdUjQgpQdSbb+DsRwHtfpjdnGw+e6glwjjq/2odGM6AceDTDeGI1xw1uwiaqsTOuC/V8QuI5y4BvH1xWhNW2bFStPzRHzwCjB+GGwBZkHSgCG9lwLzuqiDINg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(136003)(376002)(39860400002)(396003)(186009)(451199024)(1800799009)(478600001)(7416002)(86362001)(41300700001)(2906002)(5660300002)(31696002)(110136005)(8676002)(38100700002)(4326008)(8936002)(54906003)(66946007)(66476007)(66556008)(316002)(83380400001)(53546011)(31686004)(36756003)(26005)(2616005)(6506007)(6486002)(6666004)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VVFTVytQS0xiV3NZcEpnRmJra1FKK2hpaXpwVFdXTklTL2JxakJPeVQ0U2xC?=
 =?utf-8?B?L1kvYnhuSGRmbXZBcDN1eHZueWt5RUIwRHBEUllmREsrQlJobEJtVjhYWnBm?=
 =?utf-8?B?L1V4VDVEMjBoZzdiWm1LNXBib0NTejFZWVlnSFNEb2Q4UFBReGVFOVpnN1NJ?=
 =?utf-8?B?bSszR1FZZUlkOFg5ZENReVVkeVV0Y3JqS2pMNExjODd6WWpFdkFiU2FKNSs0?=
 =?utf-8?B?ZUdDZ0d1S1BCaTV6U21aVi81UjIwRGxlbElnNDV0WGhHaUo4emdFbUtzRGg4?=
 =?utf-8?B?T2NmWVpNTk8rWUlYZ1lUbHR2NjFoY09GZjI5SHNycE05UDE2NVYrdVhhVWcz?=
 =?utf-8?B?dlgvaDlsQmxwR1JDWDhSNFNyVGJqOHNlYXZzTGhZQnVTZW1zN0Q1SmZucGhz?=
 =?utf-8?B?ZUJVSUtVd1BsYkRGS2xTQjMzcnJoekFLK1ZxbGMzWFV6aEQ3Mmo5aFhLTGZY?=
 =?utf-8?B?WnpCTldKaXdLM2owc0g2ZnhNLzhDMXNLdGtIMFdnK1NMSEJJWGxyUzFGK3VM?=
 =?utf-8?B?OUdsQlpOWG91SXk3aUkxRDBCeTlETzJ1SDFrNHJjekpiV2ZYdXNzTFUyZUFv?=
 =?utf-8?B?bk4vV2psZEVOanl3TzFMUXFTVU54OURpaVc5ZUtLNDl6NURtMVcrWXpPR0wy?=
 =?utf-8?B?cTZpQWwzak9FRWU1VWZXTzVEblgxbmJ2SHoyZlBMVVlFM0xoWmxRZG4rcTFI?=
 =?utf-8?B?UGE5SzF6WFJzeDFVTHBrdGhBWmFoREhrZllORmxNNzdWM0pzd2VsQXc1TnFh?=
 =?utf-8?B?eHZJcHNGRW0xZ215ZllSbVJFeVd0S2JRZXJPbmxUeGhPTndsYVlNZHJONWhO?=
 =?utf-8?B?WWpXQjhHaDVkRHdtK3Q4YVh1YW1NNHd0VHRpZlZJbTk4R2diVEdqejhEaDMx?=
 =?utf-8?B?UHk3UUhqNkJ3OHkrRHlGSzVweXlhVU1weHNwY2JMdXg3TnkyWnN2TXl5akpF?=
 =?utf-8?B?MjNJcldJWUw2SXo5eTNCcFRCc0l0T05YSHNyempqSFlmTnVNUk84ZURPWDBX?=
 =?utf-8?B?ZWJyUkF6V3c1Z056VU9WTWxJSVUrZElyek9pYWlXdU8wMHF4Wi84ZzNoZXF1?=
 =?utf-8?B?SVA4S1k2UnB1SXM1Y085ZjU2VFlITytCcWlZNXhRaEhBbVIxd1JnbTFKRlpo?=
 =?utf-8?B?YU5xaFVKMnRKaTNNcHBZVlRYOGJOMTdlMnB2OFE4VndVK1ZCUDdlRWZESmZC?=
 =?utf-8?B?cVBmNXdSQURoNVR5YnlLUTNrTExzRWlqcWJyT1k4K1AxMVkwM1BWZUd2K0lN?=
 =?utf-8?B?MjJIYVVzMjV2K3dGRW5qNzFDeDVmZTJTeGJLbG9JZGNqSlBOL3pYdmpNZElQ?=
 =?utf-8?B?Rm52OTVZeXFFdk95ZFIwSFZYb3YxSGRPbnhaNFpCNGZnSU8reWpIc2c5T01O?=
 =?utf-8?B?SUt5VElMa3dRWkdZWStVZDFnWWFJL29aVWROZXBLVlA1SjhDdU1xb2JTbDMr?=
 =?utf-8?B?Mko0b0VDRmhkUUdxeTdHVUVRdS85UlVVaWNZYVBtKzJnZzZaV3I3bVFaRVow?=
 =?utf-8?B?SnE4ZmcrZmE5K1FGUytHQVdGY3R3L3B0RGlVSlBnTDlHbUJ4Y252YXVaK2VO?=
 =?utf-8?B?V2dlaENYSGhkRlZHK3pTeloxaG9nTWc1V2pqMW1Fa2h3Zlh0bHlsYWpITDJn?=
 =?utf-8?B?eGRWQ0tFLzhKd3BzYnZqOFIvRmdPV2xieXRyUWNlYzV6V0EreHNmbW5aampt?=
 =?utf-8?B?T1lTRnFURjFSc2pMTUZ4NTU0a2VYWFFoT2lvTWh0M2x6Y1cxUXVBZjIrNkZW?=
 =?utf-8?B?Y3dsandudXFUZXpaN3ZqcTRIc3NMVnRkcGFGbFZSbjNaWEtNVUp2cU5XWGsw?=
 =?utf-8?B?VmwyOVFXZDBLUURqMklwNnMzSWVyQk0xOFZkdkxpYVkrMEIzUHJjVGZuamNi?=
 =?utf-8?B?MEo5Yk4raFAxMVpIZFFwa1NNTDFEdEYxUS8rNEY2MklZbitQQ3Joc0o3VEdk?=
 =?utf-8?B?UzVlbmlST3pXY05ZZUVRR0Z5cEFIeGxFa1lGbTJLb1J6aFJ2WmZ5M05BWGZO?=
 =?utf-8?B?QS8vdmxIWnZjWFNOdFlaK0hYWU96NzZrWlNMUmhUR1c2UDVEd3BGVHc1OHJl?=
 =?utf-8?B?QTczOFlQT3NRejlvOUlHSDlWWXhSclZWdmtRSWZiT3BnLzh4K2RPYWVSVmt2?=
 =?utf-8?Q?KJdJ2CgK+w6bbk9Lbb0y0sexV?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4f71571b-8ae4-4449-5c9b-08dbba764446
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 07:42:11.8579
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /2kEi65998x2BMX6ZUIms+Fio2sAhzLflRxAL7jBp2dUpIP5xoTT1xkaNjliJGW7vCso3IIh0L9IDINIFjUC6g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8440

On 20.09.2023 15:56, Stewart Hildebrand wrote:
> On 9/20/23 04:09, Roger Pau Monné wrote:
>> On Tue, Sep 19, 2023 at 12:20:39PM -0400, Stewart Hildebrand wrote:
>>> On 9/19/23 11:39, Roger Pau Monné wrote:
>>>> On Tue, Aug 29, 2023 at 11:19:42PM +0000, Volodymyr Babchuk wrote:
>>>>> diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c
>>>>> index 8f2b59e61a..a0733bb2cb 100644
>>>>> --- a/xen/drivers/vpci/msi.c
>>>>> +++ b/xen/drivers/vpci/msi.c
>>>>> @@ -318,15 +321,28 @@ void vpci_dump_msi(void)
>>>>>                       * holding the lock.
>>>>>                       */
>>>>>                      printk("unable to print all MSI-X entries: %d\n", rc);
>>>>> -                    process_pending_softirqs();
>>>>> -                    continue;
>>>>> +                    goto pdev_done;
>>>>>                  }
>>>>>              }
>>>>>
>>>>>              spin_unlock(&pdev->vpci->lock);
>>>>> + pdev_done:
>>>>> +            /*
>>>>> +             * Unlock lock to process pending softirqs. This is
>>>>> +             * potentially unsafe, as d->pdev_list can be changed in
>>>>> +             * meantime.
>>>>> +             */
>>>>> +            read_unlock(&d->pci_lock);
>>>>>              process_pending_softirqs();
>>>>> +            if ( !read_trylock(&d->pci_lock) )
>>>>> +            {
>>>>> +                printk("unable to access other devices for the domain\n");
>>>>> +                goto domain_done;
>>>>
>>>> Shouldn't the domain_done label be after the read_unlock(), so that we
>>>> can proceed to try to dump the devices for the next domain?  With the
>>>> proposed code a failure to acquire one of the domains pci_lock
>>>> terminates the dump.
>>>>
>>>>> +            }
>>>>>          }
>>>>> +        read_unlock(&d->pci_lock);
>>>>>      }
>>>>> + domain_done:
>>>>>      rcu_read_unlock(&domlist_read_lock);
>>>>>  }
>>>>>
>>>
>>> With the label moved, a no-op expression after the label is needed to make the compiler happy:
>>>
>>>             }
>>>         }
>>>         read_unlock(&d->pci_lock);
>>>  domain_done:
>>>         (void)0;
>>>     }
>>>     rcu_read_unlock(&domlist_read_lock);
>>> }
>>>
>>>
>>> If the no-op is omitted, the compiler may complain (gcc 9.4.0):
>>>
>>> drivers/vpci/msi.c: In function ‘vpci_dump_msi’:
>>> drivers/vpci/msi.c:351:2: error: label at end of compound statement
>>>   351 |  domain_done:
>>>       |  ^~~~~~~~~~~
>>
>>
>> Might be better to place the label at the start of the loop, and
>> likely rename to next_domain.
> 
> That would bypass the loop condition and increment statements.

Right, such a label would be bogus even without that; instead of "goto"
the use site then simply should use "continue".

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 08:22:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 08:22:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606180.943914 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjExF-0002Eg-LH; Thu, 21 Sep 2023 08:22:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606180.943914; Thu, 21 Sep 2023 08:22:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjExF-0002EZ-Gz; Thu, 21 Sep 2023 08:22:33 +0000
Received: by outflank-mailman (input) for mailman id 606180;
 Thu, 21 Sep 2023 08:22:32 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjExE-0002EP-R9; Thu, 21 Sep 2023 08:22:32 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjExE-0000tG-Gn; Thu, 21 Sep 2023 08:22:32 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjExE-0004Ra-4w; Thu, 21 Sep 2023 08:22:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjExE-0006Wk-4T; Thu, 21 Sep 2023 08:22:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=IHWYjdYIyzidwYMnFqouQQHGtlH8BlFVIivSiR6PezY=; b=aef0z2/xXGfACJNBvUM0HPpHm4
	wwxKEb1igg7232xg1pLFZ7Dp6KR8AG3Ai6ImOlDcVPCA6KcYjKDalOdftiml3X++JGXb1eLIqeiZ4
	5708uj6qbh1TyJLluSlCtk3jhAvF7UA38j9OIcR0Sta/RHhYCGB2nVBxE1PiBRRTjFDE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183083-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.17-testing test] 183083: regressions - FAIL
X-Osstest-Failures:
    xen-4.17-testing:test-amd64-i386-libvirt:xen-install:fail:regression
    xen-4.17-testing:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:regression
    xen-4.17-testing:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=90c540c58985dc774cf0a1d2dc423473d3f37267
X-Osstest-Versions-That:
    xen=d31e5b2a9c39816a954d1088d4cfc782f0006f39
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 21 Sep 2023 08:22:32 +0000

flight 183083 xen-4.17-testing real [real]
flight 183100 xen-4.17-testing real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183083/
http://logs.test-lab.xenproject.org/osstest/logs/183100/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-libvirt       7 xen-install              fail REGR. vs. 182639
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail REGR. vs. 182639

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host         fail  like 182639
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182639
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182639
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182639
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182639
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182639
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182639
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182639
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182639
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182639
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt   16 saverestore-support-check fail starved in 182639
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail starved in 182639
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail starved in 182639

version targeted for testing:
 xen                  90c540c58985dc774cf0a1d2dc423473d3f37267
baseline version:
 xen                  d31e5b2a9c39816a954d1088d4cfc782f0006f39

Last test of basis   182639  2023-09-05 22:40:32 Z   15 days
Testing same since   183083  2023-09-20 10:06:57 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      fail    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit 90c540c58985dc774cf0a1d2dc423473d3f37267
Author: Jan Beulich <JBeulich@suse.com>
Date:   Wed Sep 20 10:33:26 2023 +0100

    x86/shadow: defer releasing of PV's top-level shadow reference
    
    sh_set_toplevel_shadow() re-pinning the top-level shadow we may be
    running on is not enough (and at the same time unnecessary when the
    shadow isn't what we're running on): That shadow becomes eligible for
    blowing away (from e.g. shadow_prealloc()) immediately after the
    paging lock was dropped. Yet it needs to remain valid until the actual
    page table switch occurred.
    
    Propagate up the call chain the shadow entry that needs releasing
    eventually, and carry out the release immediately after switching page
    tables. Handle update_cr3() failures by switching to idle pagetables.
    Note that various further uses of update_cr3() are HVM-only or only act
    on paused vCPU-s, in which case sh_set_toplevel_shadow() will not defer
    releasing of the reference.
    
    While changing the update_cr3() hook, also convert the "do_locking"
    parameter to boolean.
    
    This is CVE-2023-34322 / XSA-438.
    
    Reported-by: Tim Deegan <tim@xen.org>
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: George Dunlap <george.dunlap@cloud.com>
    (cherry picked from commit fb0ff49fe9f784bfee0370c2a3c5f20e39d7a1cb)

commit 9ac2f49f5fa3a5159409241d4f74fb0d721dd4c5
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315)

commit 19ee1e1faa32b79274b3484cb1170a5970f1e602
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705)

commit 2e2c3efcfc9f183674a8de6ed954ffbe7188b70d
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 3ee6066bcd737756b0990d417d94eddc0b0d2585)

commit e4a71bc0da0baf7464bb0d8e33053f330e5ea366
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c)
    
    x86/entry: Partially revert IST-exit checks
    
    The patch adding check_ist_exit() didn't account for the fact that
    reset_stack_and_jump() is not an ABI-preserving boundary.  The IST-ness in
    %r12 doesn't survive into the next context, and is a stale value C.
    
    This shows up in Gitlab CI for the Clang build:
    
      https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/5112783827
    
    and in OSSTest for GCC 8:
    
      http://logs.test-lab.xenproject.org/osstest/logs/183045/test-amd64-amd64-xl-qemuu-debianhvm-amd64/serial-pinot0.log
    
    There's no straightforward way to reconstruct the IST-exit-ness on the
    exit-to-guest path after a context switch.  For now, we only need IST-exit on
    the return-to-Xen path.
    
    Fixes: 21bdc25b05a0 ("x86/entry: Track the IST-ness of an entry for the exit paths")
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 9b57c800b79b96769ea3dcd6468578fa664d19f9)

commit 5f7efd47c8273fde972637d0360851802f76eca9
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58)

commit ba023e93d0b1e60b80251bf080bab694efb9f8e3
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 45f00557350dc7d0756551069803fc49c29184ca)

commit 3952c73bdbd05f0e666986fce633a591237b3c88
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8)

commit 84690fb82c4f4aecb72a6789d8994efa74841e09
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 694bb0f280fd08a4377e36e32b84b5062def4de2)

commit dc28aba565f226f9bec24cfde993e78478acfb4e
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7)

commit d2d2dcae879c6cc05227c9620f0a772f35fe6886
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Aug 23 09:26:36 2023 +0200

    x86/AMD: extend Zenbleed check to models "good" ucode isn't known for
    
    Reportedly the AMD Custom APU 0405 found on SteamDeck, models 0x90 and
    0x91, (quoting the respective Linux commit) is similarly affected. Put
    another instance of our Zen1 vs Zen2 distinction checks in
    amd_check_zenbleed(), forcing use of the chickenbit irrespective of
    ucode version (building upon real hardware never surfacing a version of
    0xffffffff).
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
    (cherry picked from commit 145a69c0944ac70cfcf9d247c85dee9e99d9d302)
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 08:30:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 08:30:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606188.943924 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjF4P-0003oj-Hk; Thu, 21 Sep 2023 08:29:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606188.943924; Thu, 21 Sep 2023 08:29:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjF4P-0003oc-EU; Thu, 21 Sep 2023 08:29:57 +0000
Received: by outflank-mailman (input) for mailman id 606188;
 Thu, 21 Sep 2023 08:29:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=BtKi=FF=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qjF4O-0003oW-S5
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 08:29:56 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0a9a9e5f-5859-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 10:29:55 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-562-VD5JH4anOqu_0X0mEjd2EQ-1; Thu, 21 Sep 2023 04:29:47 -0400
Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com
 [10.11.54.9])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 33308811E8E;
 Thu, 21 Sep 2023 08:29:46 +0000 (UTC)
Received: from redhat.com (dhcp-192-199.str.redhat.com [10.33.192.199])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id B6618711282;
 Thu, 21 Sep 2023 08:29:42 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0a9a9e5f-5859-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695284994;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=VOZZoa3ULPZ/NwlEeRYqCJI8eDfdRv+ZpCW8+MuKxjg=;
	b=SIlf3f/qmgWa0x9gDZ52IHUewpMxPRJ9Am/loK+AJrz3gpZEBehK0G/ac0teTLvG+Qjj20
	/3EeiEW3f8fM73uhUM3Rbd1fQmjVJ/th72af/XhX8LAp29qlYcJwe0TDiZ4NUmwfK/3jQS
	KW8bkNakRq0laP3jYTY4BdlnyOElLV8=
X-MC-Unique: VD5JH4anOqu_0X0mEjd2EQ-1
Date: Thu, 21 Sep 2023 10:29:41 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, hreitz@redhat.com, eblake@redhat.com,
	vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com,
	pl@kamp.de, sw@weilnetz.de, sstabellini@kernel.org,
	anthony.perard@citrix.com, paul@xen.org, pbonzini@redhat.com,
	marcandre.lureau@redhat.com, berrange@redhat.com, thuth@redhat.com,
	philmd@linaro.org, stefanha@redhat.com, fam@euphon.net,
	quintela@redhat.com, peterx@redhat.com, leobras@redhat.com,
	kraxel@redhat.com, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: Re: [PATCH v2 5/7] block/vdi: Clean up local variable shadowing
Message-ID: <ZQv+9cf9QivEQHQD@redhat.com>
References: <20230920183149.1105333-1-armbru@redhat.com>
 <20230920183149.1105333-6-armbru@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230920183149.1105333-6-armbru@redhat.com>
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.9

Am 20.09.2023 um 20:31 hat Markus Armbruster geschrieben:
> Local variables shadowing other local variables or parameters make the
> code needlessly hard to understand.  Tracked down with -Wshadow=local.
> Clean up: delete inner declarations when they are actually redundant,
> else rename variables.
> 
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>

Reviewed-by: Kevin Wolf <kwolf@redhat.com>



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 08:30:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 08:30:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606190.943934 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjF4h-0004y7-Oa; Thu, 21 Sep 2023 08:30:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606190.943934; Thu, 21 Sep 2023 08:30:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjF4h-0004xy-Ld; Thu, 21 Sep 2023 08:30:15 +0000
Received: by outflank-mailman (input) for mailman id 606190;
 Thu, 21 Sep 2023 08:30:15 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=95bz=FF=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qjF4h-0004xS-3W
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 08:30:15 +0000
Received: from mail-ed1-x532.google.com (mail-ed1-x532.google.com
 [2a00:1450:4864:20::532])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 155f8149-5859-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 10:30:13 +0200 (CEST)
Received: by mail-ed1-x532.google.com with SMTP id
 4fb4d7f45d1cf-52889bc61b6so716354a12.0
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 01:30:13 -0700 (PDT)
Received: from [192.168.1.10] (host-92-12-62-212.as13285.net. [92.12.62.212])
 by smtp.gmail.com with ESMTPSA id
 h22-20020aa7c956000000b005224f840130sm491058edt.60.2023.09.21.01.30.11
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 21 Sep 2023 01:30:12 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 155f8149-5859-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695285012; x=1695889812; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=Fx1l2NcpPZpV+hg7CDGanVJrZbXMjIKBFinY1Qg7LkQ=;
        b=ad2KmQ9JT8//swuu8AH2p2WD2FkIEctIKBKkCaeJcOu/tlYx0ALq8fd4brgy6Okpfg
         ZU0VGfhaCdUzdIIIjCSBM/W9nbB5LA7RPa6D/UpNa6jRV4FSLNxQb+HcZZub/Ph/jpCA
         oJAfoDCLNYuNqGU2VJpHl4y/+K3hqIQP2lGp4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695285012; x=1695889812;
        h=content-transfer-encoding:in-reply-to:from:references:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=Fx1l2NcpPZpV+hg7CDGanVJrZbXMjIKBFinY1Qg7LkQ=;
        b=wvvFZ8QHMMb4aC+AZ3ECq9sKBRU8izQCOR9xVaVcqqC32Ks5wYxnDk4YFNAG6XARXk
         F9HajO3y4l7qv9Z4Q8jpo1M2k6Dq+zEH8mk0vjJdDFrm4wyd9jQQXjCgIDu4SQ9fm+ki
         oIsb7fptgU09YXd25Ffd+PqNI6NdgtJddJ8L55v5BxyKjnF+ARk2aQXXSj5vylmaMMqb
         2je41EYwn8Dxu9zVfXg3zUv2Uv0b6/bQeeQJaNRQBK5KR//X7br+Zo/c2v/qxLP5qOGG
         eTFVEpEiYeaTlcmiilTSivYl0lU2STgn/fk81o5YEUCpxPdmOZbFgb0kK6ms0fVjdpUH
         M+8w==
X-Gm-Message-State: AOJu0YzyvnIINSfKQjCroaeuPF1G6DNJHhPnUEGrtBWYdBDfh8mk7qVO
	JB+n5MlbkZUZKod8FW6jfc6b9NE/Q7A/tcNzZxA=
X-Google-Smtp-Source: AGHT+IE85vtc3uC/F6DsL2DwB6EdzlC3G+7efIB845IyOod4HXUXFhibN6XBkNrWP227QpW+tw0L9Q==
X-Received: by 2002:aa7:c0c6:0:b0:52c:b469:bb00 with SMTP id j6-20020aa7c0c6000000b0052cb469bb00mr4393721edp.22.1695285012477;
        Thu, 21 Sep 2023 01:30:12 -0700 (PDT)
Message-ID: <433092cd-2a0e-08b8-b846-be33983b6349@citrix.com>
Date: Thu, 21 Sep 2023 09:30:10 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: xen | Failed pipeline for staging-4.15 | 3a9a2901
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <650ace63a5321_28a55b478157@gitlab-sidekiq-catchall-v2-86b648d56d-wk4kh.mail>
 <fcff9af9-3abd-2d0a-f40c-826f6b1de815@suse.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
In-Reply-To: <fcff9af9-3abd-2d0a-f40c-826f6b1de815@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 21/09/2023 8:08 am, Jan Beulich wrote:
> On 20.09.2023 12:50, GitLab wrote:
>>
>> Pipeline #1010772231 has failed!
>>
>> Project: xen ( https://gitlab.com/xen-project/xen )
>> Branch: staging-4.15 ( https://gitlab.com/xen-project/xen/-/commits/staging-4.15 )
>>
>> Commit: 3a9a2901 ( https://gitlab.com/xen-project/xen/-/commit/3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47 )
>> Commit Message: x86/shadow: defer releasing of PV's top-level s...
>> Commit Author: Jan Beulich ( https://gitlab.com/jbeulich )
>> Committed by: Andrew Cooper ( https://gitlab.com/andyhhp )
>>
>>
>> Pipeline #1010772231 ( https://gitlab.com/xen-project/xen/-/pipelines/1010772231 ) triggered by Ganis ( https://gitlab.com/ganis )
>> had 19 failed jobs.
> I'm somewhat puzzled here, in two ways:
>
>> Job #5127621914 ( https://gitlab.com/xen-project/xen/-/jobs/5127621914/raw )
>>
>> Stage: build
>> Name: debian-stretch-clang-debug
>> Job #5127621916 ( https://gitlab.com/xen-project/xen/-/jobs/5127621916/raw )
>>
>> Stage: build
>> Name: debian-stretch-gcc
> This one failed with
>
> In file included from /builds/xen-project/xen/tools/qemu-xen-dir/include/qemu/timer.h:4:0,
>                  from /builds/xen-project/xen/tools/qemu-xen-dir/include/qemu/timed-average.h:29,
>                  from /builds/xen-project/xen/tools/qemu-xen-dir/include/block/accounting.h:28,
>                  from /builds/xen-project/xen/tools/qemu-xen-dir/include/block/block_int.h:27,
>                  from /builds/xen-project/xen/tools/qemu-xen-dir/block/file-posix.c:30:
> /usr/include/linux/swab.h: In function '__swab':
> /builds/xen-project/xen/tools/qemu-xen-dir/include/qemu/bitops.h:20:34: error: "sizeof" is not defined [-Werror=undef]
>  #define BITS_PER_LONG           (sizeof (unsigned long) * BITS_PER_BYTE)
>                                   ^
> /builds/xen-project/xen/tools/qemu-xen-dir/include/qemu/bitops.h:20:41: error: missing binary operator before token "("
>  #define BITS_PER_LONG           (sizeof (unsigned long) * BITS_PER_BYTE)
>                                          ^
> cc1: all warnings being treated as errors
>
> What? How can "sizeof" no be "defined"?

Because the expression is

#if (sizeof (unsigned long) * BITS_PER_BYTE) = 64

combined with -Werror=undef saying that it can't figure out out what
sizeof is supposed to be here as a preprocessor token.

This needs a bump to qemu in order to fix, like we did on the newer
branches.

>
>> Job #5127621965 ( https://gitlab.com/xen-project/xen/-/jobs/5127621965/raw )
>>
>> Stage: build
>> Name: opensuse-leap-clang-debug
>> Job #5127621939 ( https://gitlab.com/xen-project/xen/-/jobs/5127621939/raw )
>>
>> Stage: build
>> Name: debian-unstable-32-gcc-debug
>> Job #5127621913 ( https://gitlab.com/xen-project/xen/-/jobs/5127621913/raw )
>>
>> Stage: build
>> Name: debian-stretch-clang
>> Job #5127621924 ( https://gitlab.com/xen-project/xen/-/jobs/5127621924/raw )
>>
>> Stage: build
>> Name: debian-unstable-clang-debug
>> Job #5127621934 ( https://gitlab.com/xen-project/xen/-/jobs/5127621934/raw )
>>
>> Stage: build
>> Name: debian-unstable-gcc-debug-randconfig
>> Job #5127621930 ( https://gitlab.com/xen-project/xen/-/jobs/5127621930/raw )
>>
>> Stage: build
>> Name: debian-unstable-gcc-debug
>> Job #5127621928 ( https://gitlab.com/xen-project/xen/-/jobs/5127621928/raw )
>>
>> Stage: build
>> Name: debian-unstable-gcc
>> Job #5127621937 ( https://gitlab.com/xen-project/xen/-/jobs/5127621937/raw )
>>
>> Stage: build
>> Name: debian-unstable-32-clang-debug
>> Job #5127621974 ( https://gitlab.com/xen-project/xen/-/jobs/5127621974/raw )
>>
>> Stage: build
>> Name: debian-unstable-gcc-arm64
>> Job #5127621975 ( https://gitlab.com/xen-project/xen/-/jobs/5127621975/raw )
>>
>> Stage: build
>> Name: debian-unstable-gcc-debug-arm64
>> Job #5127621964 ( https://gitlab.com/xen-project/xen/-/jobs/5127621964/raw )
>>
>> Stage: build
>> Name: opensuse-leap-clang
>> Job #5127621892 ( https://gitlab.com/xen-project/xen/-/jobs/5127621892/raw )
>>
>> Stage: build
>> Name: archlinux-gcc-debug
>> Job #5127621889 ( https://gitlab.com/xen-project/xen/-/jobs/5127621889/raw )
>>
>> Stage: build
>> Name: archlinux-gcc
> This one exhibits what e35138a2ffbe ("rombios: Work around GCC issue 99578")
> addresses, yet 4.16, which also doesn't have that backport, succeeded earlier
> on.

I rebuilt the archlinux container yesterday evening for the Py3
changes.  It's just possible that 4.15 ran with a newer container than 4.16

Nevertheless, I should backport the fix to reduce the noise here.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 08:34:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 08:34:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606198.943944 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjF8V-0005oR-A0; Thu, 21 Sep 2023 08:34:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606198.943944; Thu, 21 Sep 2023 08:34:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjF8V-0005oK-5v; Thu, 21 Sep 2023 08:34:11 +0000
Received: by outflank-mailman (input) for mailman id 606198;
 Thu, 21 Sep 2023 08:34:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=BtKi=FF=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qjF8T-0005oC-MM
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 08:34:09 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a0a6e719-5859-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 10:34:07 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-537-7-Fog8l-Mk6ZO1q97GGl_A-1; Thu, 21 Sep 2023 04:33:59 -0400
Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com
 [10.11.54.8])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id E3B17185A797;
 Thu, 21 Sep 2023 08:33:58 +0000 (UTC)
Received: from redhat.com (dhcp-192-199.str.redhat.com [10.33.192.199])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id ADA08C15BB8;
 Thu, 21 Sep 2023 08:33:55 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a0a6e719-5859-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695285246;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=eh8zyjzBG7qqI/Mc2UKyIQjPyEugXboyG0F/C5omL3o=;
	b=HXIcYFZXgSBvnXS9mE94ucbABpEs1Jwa31sSko+GhsTCaMmtF5T61t38PH3ic2WRSsrw13
	Sb69cr8vIjNaz7AWwbC9PmJj3ygjNS1v9S19fyyU1jpArXQbXfvLp9/DrnjHvR7Wa1LxAB
	I2KGkoO5k6854mbfXQ9OVzKLVuYAAOM=
X-MC-Unique: 7-Fog8l-Mk6ZO1q97GGl_A-1
Date: Thu, 21 Sep 2023 10:33:54 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, hreitz@redhat.com, eblake@redhat.com,
	vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com,
	pl@kamp.de, sw@weilnetz.de, sstabellini@kernel.org,
	anthony.perard@citrix.com, paul@xen.org, pbonzini@redhat.com,
	marcandre.lureau@redhat.com, berrange@redhat.com, thuth@redhat.com,
	philmd@linaro.org, stefanha@redhat.com, fam@euphon.net,
	quintela@redhat.com, peterx@redhat.com, leobras@redhat.com,
	kraxel@redhat.com, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: Re: [PATCH v2 6/7] block: Clean up local variable shadowing
Message-ID: <ZQv/8k97W49sK3e1@redhat.com>
References: <20230920183149.1105333-1-armbru@redhat.com>
 <20230920183149.1105333-7-armbru@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230920183149.1105333-7-armbru@redhat.com>
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.8

Am 20.09.2023 um 20:31 hat Markus Armbruster geschrieben:
> Local variables shadowing other local variables or parameters make the
> code needlessly hard to understand.  Tracked down with -Wshadow=local.
> Clean up: delete inner declarations when they are actually redundant,
> else rename variables.
> 
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
> Acked-by: Anthony PERARD <anthony.perard@citrix.com>
> Acked-by: Ilya Dryomov <idryomov@gmail.com>

Reviewed-by: Kevin Wolf <kwolf@redhat.com>



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 08:37:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 08:37:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606203.943954 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjFBV-00070r-N3; Thu, 21 Sep 2023 08:37:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606203.943954; Thu, 21 Sep 2023 08:37:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjFBV-00070k-Jx; Thu, 21 Sep 2023 08:37:17 +0000
Received: by outflank-mailman (input) for mailman id 606203;
 Thu, 21 Sep 2023 08:37:16 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=BtKi=FF=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qjFBU-00070e-Ia
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 08:37:16 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 10d0a6c9-585a-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 10:37:15 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73])
 by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-678-OdemBF2yPLKauHOI-1M1KA-1; Thu, 21 Sep 2023 04:37:11 -0400
Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com
 [10.11.54.5])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 530DE3C0F66F;
 Thu, 21 Sep 2023 08:37:10 +0000 (UTC)
Received: from redhat.com (dhcp-192-199.str.redhat.com [10.33.192.199])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 2CE6551E3;
 Thu, 21 Sep 2023 08:37:07 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 10d0a6c9-585a-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695285434;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=EA0RJ+IxzSvsZ2thl58X6wMjKC0Rx0Zni7KaXfz8A7U=;
	b=gyRCkA6GuKWfPp32jPQwOlGJNhjaUn4kxzyvQRjbnV1lQudqtP5Xt6SGyZLCARgzPneNKT
	ymujrvAs6JRiIeBKjwDLGiAMJw0mFHbezH8B1O+gQyry3zOldzvTqKR+YughFzZ7pTJ2lp
	+9JK1PRbj10qFAB39N849JNtzjGJOr4=
X-MC-Unique: OdemBF2yPLKauHOI-1M1KA-1
Date: Thu, 21 Sep 2023 10:37:06 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, hreitz@redhat.com, eblake@redhat.com,
	vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com,
	pl@kamp.de, sw@weilnetz.de, sstabellini@kernel.org,
	anthony.perard@citrix.com, paul@xen.org, pbonzini@redhat.com,
	marcandre.lureau@redhat.com, berrange@redhat.com, thuth@redhat.com,
	philmd@linaro.org, stefanha@redhat.com, fam@euphon.net,
	quintela@redhat.com, peterx@redhat.com, leobras@redhat.com,
	kraxel@redhat.com, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: Re: [PATCH v2 4/7] block/dirty-bitmap: Clean up local variable
 shadowing
Message-ID: <ZQwAsh/vBb1mlzMm@redhat.com>
References: <20230920183149.1105333-1-armbru@redhat.com>
 <20230920183149.1105333-5-armbru@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230920183149.1105333-5-armbru@redhat.com>
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.5

Am 20.09.2023 um 20:31 hat Markus Armbruster geschrieben:
> Local variables shadowing other local variables or parameters make the
> code needlessly hard to understand.  Tracked down with -Wshadow=local.
> Clean up: rename both the pair of parameters and the pair of local
> variables.  While there, move the local variables to function scope.
> 
> Suggested-by: Kevin Wolf <kwolf@redhat.com>
> Signed-off-by: Markus Armbruster <armbru@redhat.com>

Reviewed-by: Kevin Wolf <kwolf@redhat.com>



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 08:41:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 08:41:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606209.943966 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjFFL-0000Z1-66; Thu, 21 Sep 2023 08:41:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606209.943966; Thu, 21 Sep 2023 08:41:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjFFL-0000Yu-39; Thu, 21 Sep 2023 08:41:15 +0000
Received: by outflank-mailman (input) for mailman id 606209;
 Thu, 21 Sep 2023 08:41:13 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=UECe=FF=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qjFFJ-0000Yo-Ah
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 08:41:13 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9e304c7c-585a-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 10:41:12 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 80AE51FF34;
 Thu, 21 Sep 2023 08:41:11 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 5AC46134B0;
 Thu, 21 Sep 2023 08:41:11 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id akXPFKcBDGUAHwAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 21 Sep 2023 08:41:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9e304c7c-585a-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695285671; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:  content-transfer-encoding:content-transfer-encoding;
	bh=xLSmJHDOAeyr0SNBhUaYyjXJCesrWfX5ksP2B3zrsxU=;
	b=B2CSIf4qD3ZjJ0wqPhaMGHT0itCWrwZjCQgE+TIXmStBYXtryLkbOTz9SFudLoT7xdPCXm
	HSJv/8Nh/O8EgTibNN19rNjR6Eck1TYHt/fOxHYUUuo4x4XH0vZfPWPkgero80M0VLA0ct
	Vzmq6PNT1w3cMYecKGkvhcS2lm9130E=
From: Juergen Gross <jgross@suse.com>
To: torvalds@linux-foundation.org
Cc: linux-kernel@vger.kernel.org,
	xen-devel@lists.xenproject.org,
	sstabellini@kernel.org
Subject: [GIT PULL] xen: branch for v6.6-rc3
Date: Thu, 21 Sep 2023 10:41:10 +0200
Message-Id: <20230921084110.31633-1-jgross@suse.com>
X-Mailer: git-send-email 2.35.3
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Linus,

Please git pull the following tag:

 git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-6.6a-rc3-tag

xen: branch for v6.6-rc3

It contains:

- a cleanup patch removing some unused functions in the Xen event
  channel handling

- a 3 patch series fixing a regression (introduced in 6.6 merge window)
  when booting as Xen PV guest

- a small cleanup patch removing another strncpy() instance


Thanks.

Juergen

 arch/arm/xen/enlighten.c              |  2 +-
 arch/x86/entry/common.c               |  2 +-
 arch/x86/include/asm/paravirt_types.h | 15 --------
 arch/x86/include/asm/xen/hypervisor.h | 37 +++++++++++++++++++
 arch/x86/kernel/paravirt.c            | 67 -----------------------------------
 arch/x86/xen/efi.c                    |  2 +-
 arch/x86/xen/enlighten.c              |  2 +-
 arch/x86/xen/enlighten_hvm.c          |  2 +-
 arch/x86/xen/enlighten_pv.c           | 40 +++++++++++++++++----
 arch/x86/xen/mmu_pv.c                 | 55 ++++++++++++++++++----------
 arch/x86/xen/multicalls.h             |  4 +--
 drivers/xen/events/events_base.c      | 21 ++---------
 drivers/xen/platform-pci.c            |  2 +-
 include/trace/events/xen.h            | 12 +++----
 include/xen/arm/hypervisor.h          | 12 -------
 include/xen/events.h                  |  3 +-
 16 files changed, 123 insertions(+), 155 deletions(-)

Juergen Gross (4):
      xen: simplify evtchn_do_upcall() call maze
      arm/xen: remove lazy mode related definitions
      x86/xen: move paravirt lazy code
      x86/xen: allow nesting of same lazy mode

Justin Stitt (1):
      xen/efi: refactor deprecated strncpy


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 08:43:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 08:43:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606214.943977 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjFHE-00019o-Hm; Thu, 21 Sep 2023 08:43:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606214.943977; Thu, 21 Sep 2023 08:43:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjFHE-00019h-Ej; Thu, 21 Sep 2023 08:43:12 +0000
Received: by outflank-mailman (input) for mailman id 606214;
 Thu, 21 Sep 2023 08:43:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=BtKi=FF=redhat.com=kwolf@srs-se1.protection.inumbo.net>)
 id 1qjFHC-00019Y-S2
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 08:43:10 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e393fc64-585a-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 10:43:09 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-287-y9yC9AFJMomrr9msxjQjNg-1; Thu, 21 Sep 2023 04:43:02 -0400
Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com
 [10.11.54.4])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id AB882803497;
 Thu, 21 Sep 2023 08:43:01 +0000 (UTC)
Received: from redhat.com (dhcp-192-199.str.redhat.com [10.33.192.199])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 7471020268D5;
 Thu, 21 Sep 2023 08:42:58 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e393fc64-585a-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695285788;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=ZWLMZ+X5Hd+F/5mLyFftJEP9/PMaQw/y62tEWzEwLSU=;
	b=URz39XSosnRz5kYYbUZ5XxJKnbp3WuM0aXZSnj/9wWIzYMiOeim/Iim0boMdTHueywgdFF
	64IpaxgZWMmTXBqxJo3U/G5c2T9KdyS/GP+6fDYGmvK9akkqU8x+vgpYcFeiMVU257UrEl
	LeNFLym/KvoX+LUR7UkzjOAKi05Q6zc=
X-MC-Unique: y9yC9AFJMomrr9msxjQjNg-1
Date: Thu, 21 Sep 2023 10:42:57 +0200
From: Kevin Wolf <kwolf@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, hreitz@redhat.com, eblake@redhat.com,
	vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com,
	pl@kamp.de, sw@weilnetz.de, sstabellini@kernel.org,
	anthony.perard@citrix.com, paul@xen.org, pbonzini@redhat.com,
	marcandre.lureau@redhat.com, berrange@redhat.com, thuth@redhat.com,
	philmd@linaro.org, stefanha@redhat.com, fam@euphon.net,
	quintela@redhat.com, peterx@redhat.com, leobras@redhat.com,
	kraxel@redhat.com, qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org, alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: Re: [PATCH v2 7/7] qobject atomics osdep: Make a few macros more
 hygienic
Message-ID: <ZQwCEW4SBpI9f1Yx@redhat.com>
References: <20230920183149.1105333-1-armbru@redhat.com>
 <20230920183149.1105333-8-armbru@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230920183149.1105333-8-armbru@redhat.com>
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4

Am 20.09.2023 um 20:31 hat Markus Armbruster geschrieben:
> Variables declared in macros can shadow other variables.  Much of the
> time, this is harmless, e.g.:
> 
>     #define _FDT(exp)                                                  \
>         do {                                                           \
>             int ret = (exp);                                           \
>             if (ret < 0) {                                             \
>                 error_report("error creating device tree: %s: %s",   \
>                         #exp, fdt_strerror(ret));                      \
>                 exit(1);                                               \
>             }                                                          \
>         } while (0)
> 
> Harmless shadowing in h_client_architecture_support():
> 
>         target_ulong ret;
> 
>         [...]
> 
>         ret = do_client_architecture_support(cpu, spapr, vec, fdt_bufsize);
>         if (ret == H_SUCCESS) {
>             _FDT((fdt_pack(spapr->fdt_blob)));
>             [...]
>         }
> 
>         return ret;
> 
> However, we can get in trouble when the shadowed variable is used in a
> macro argument:
> 
>     #define QOBJECT(obj) ({                                 \
>         typeof(obj) o = (obj);                              \
>         o ? container_of(&(o)->base, QObject, base) : NULL; \
>      })
> 
> QOBJECT(o) expands into
> 
>     ({
> --->    typeof(o) o = (o);
>         o ? container_of(&(o)->base, QObject, base) : NULL;
>     })
> 
> Unintended variable name capture at --->.  We'd be saved by
> -Winit-self.  But I could certainly construct more elaborate death
> traps that don't trigger it.
> 
> To reduce the risk of trapping ourselves, we use variable names in
> macros that no sane person would use elsewhere.  Here's our actual
> definition of QOBJECT():
> 
>     #define QOBJECT(obj) ({                                         \
>         typeof(obj) _obj = (obj);                                   \
>         _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
>     })
> 
> Works well enough until we nest macro calls.  For instance, with
> 
>     #define qobject_ref(obj) ({                     \
>         typeof(obj) _obj = (obj);                   \
>         qobject_ref_impl(QOBJECT(_obj));            \
>         _obj;                                       \
>     })
> 
> the expression qobject_ref(obj) expands into
> 
>     ({
>         typeof(obj) _obj = (obj);
>         qobject_ref_impl(
>             ({
> --->            typeof(_obj) _obj = (_obj);
>                 _obj ? container_of(&(_obj)->base, QObject, base) : NULL;
>             }));
>         _obj;
>     })
> 
> Unintended variable name capture at --->.
> 
> The only reliable way to prevent unintended variable name capture is
> -Wshadow.
> 
> One blocker for enabling it is shadowing hiding in function-like
> macros like
> 
>      qdict_put(dict, "name", qobject_ref(...))
> 
> qdict_put() wraps its last argument in QOBJECT(), and the last
> argument here contains another QOBJECT().
> 
> Use dark preprocessor sorcery to make the macros that give us this
> problem use different variable names on every call.
> 
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> Reviewed-by: Eric Blake <eblake@redhat.com>
> ---
>  include/qapi/qmp/qobject.h | 11 +++++++++--
>  include/qemu/atomic.h      | 17 ++++++++++++-----
>  include/qemu/compiler.h    |  3 +++
>  include/qemu/osdep.h       | 31 +++++++++++++++++++++++--------
>  4 files changed, 47 insertions(+), 15 deletions(-)
> 
> diff --git a/include/qapi/qmp/qobject.h b/include/qapi/qmp/qobject.h
> index 9003b71fd3..d36cc97805 100644
> --- a/include/qapi/qmp/qobject.h
> +++ b/include/qapi/qmp/qobject.h
> @@ -45,10 +45,17 @@ struct QObject {
>      struct QObjectBase_ base;
>  };
>  
> -#define QOBJECT(obj) ({                                         \
> +/*
> + * Preprocessory sorcery ahead: use a different identifier for the
> + * local variable in each expansion, so we can nest macro calls
> + * without shadowing variables.
> + */
> +#define QOBJECT_INTERNAL(obj, _obj) ({                          \
>      typeof(obj) _obj = (obj);                                   \
> -    _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
> +    _obj                                                        \
> +        ? container_of(&(_obj)->base, QObject, base) : NULL;    \

What happened here? The code in this line (or now two lines) seems to be
unchanged apart from a strange looking newline.

>  })
> +#define QOBJECT(obj) QOBJECT_INTERNAL((obj), MAKE_IDENTFIER(_obj))

Kevin



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 08:44:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 08:44:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606221.943987 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjFIP-0001m5-Vm; Thu, 21 Sep 2023 08:44:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606221.943987; Thu, 21 Sep 2023 08:44:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjFIP-0001ly-Rk; Thu, 21 Sep 2023 08:44:25 +0000
Received: by outflank-mailman (input) for mailman id 606221;
 Thu, 21 Sep 2023 08:44:25 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjFIP-0001lj-12; Thu, 21 Sep 2023 08:44:25 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjFIP-0001SU-0I; Thu, 21 Sep 2023 08:44:25 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjFIO-00056j-O4; Thu, 21 Sep 2023 08:44:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjFIO-00075S-Ne; Thu, 21 Sep 2023 08:44:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=mP9Fx5FcFrNXj/iFNYJd5ygA6V71mk5MMs9SdofClZk=; b=5m/+9rfHnZfa3uvnNtpJkJ2BI7
	xxNkDyPCVkc5YlkkvXI2jmCfDgmv0tKkR7rwqqa13KkPRPWqj+X/ZPVWGRXNmhE/tJnWzr5djIVoz
	TQslzm7AFs799T6hCgJxuDMF/i9F3+6bUweLaT9x8gfdC0wogwMHj4ifoZzV94TMc7hs=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183099-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183099: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=ea628f28e59849ee7b91e6660c0ecd1a5c6e0884
X-Osstest-Versions-That:
    ovmf=89dad77cfbffda0303383a11026d854008c1b731
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 21 Sep 2023 08:44:24 +0000

flight 183099 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183099/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 ea628f28e59849ee7b91e6660c0ecd1a5c6e0884
baseline version:
 ovmf                 89dad77cfbffda0303383a11026d854008c1b731

Last test of basis   183087  2023-09-20 15:10:51 Z    0 days
Testing same since   183099  2023-09-21 05:10:53 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrei Warkentin <andrei.warkentin@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   89dad77cfb..ea628f28e5  ea628f28e59849ee7b91e6660c0ecd1a5c6e0884 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 08:45:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 08:45:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606228.943998 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjFJY-0002Ll-Ce; Thu, 21 Sep 2023 08:45:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606228.943998; Thu, 21 Sep 2023 08:45:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjFJY-0002Le-5z; Thu, 21 Sep 2023 08:45:36 +0000
Received: by outflank-mailman (input) for mailman id 606228;
 Thu, 21 Sep 2023 08:45:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SdLE=FF=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qjFJW-0002Go-Sx
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 08:45:35 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on2060a.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::60a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 390e9fe9-585b-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 10:45:32 +0200 (CEST)
Received: from SA0PR12CA0016.namprd12.prod.outlook.com (2603:10b6:806:6f::21)
 by CH0PR12MB5044.namprd12.prod.outlook.com (2603:10b6:610:e3::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Thu, 21 Sep
 2023 08:45:29 +0000
Received: from SN1PEPF0002BA50.namprd03.prod.outlook.com
 (2603:10b6:806:6f:cafe::26) by SA0PR12CA0016.outlook.office365.com
 (2603:10b6:806:6f::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.30 via Frontend
 Transport; Thu, 21 Sep 2023 08:45:29 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF0002BA50.mail.protection.outlook.com (10.167.242.73) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Thu, 21 Sep 2023 08:45:29 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 21 Sep
 2023 03:45:28 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Thu, 21 Sep 2023 03:45:27 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 390e9fe9-585b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=OpPiQy6+2sjqspW1pTozmANCiEsNxovN6ik6ieN0gdcvzEd2itbB/B9qcX1AxraB3b+H1DxWz/3HzXRMMCauTAE2bdZKFi3nLowmXwzIHoegXyJ5TRdVpfwPcUFZud67JrsfqjCpr1CvdN+QvxGgeyUaV8lX9YYmf3ch3xzCaC85tPuk0Wqbr3dpd6iNKirTRtx+P3q5plO/rlnZ/JTjamMZqx4fgRMxgEfPPWhwqQH9Nv/BN1jcjbNhODNbuLhhssUX8IV0RQNe2WJJFxf2jbO3BH4dK1ivFNAmxI7MyejKxgXdWz6b3s9oXSMrNk1w/ZJWDzn8EsSWvoKsDSavCw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xTSwUhLDNiaGxn8lPQ2UhgyTGHOVy2wTToLeu9ndwRo=;
 b=Cc/T4ie+WPQPy4vwAAf0l5Hqgs/LcrsfEy4FGHmKjSrI34p/GlBocusI8Ks3vNcfh3dZuawoWYzDf5FbWUAxbvRA8ayxZH4kM5idgc4qXTHJsJMDGJcBxQ+AZESntnAuJM12HEC6baWJt7G5gWJ+s7LU5egFlwt0m1tDw247JxbRO9C+CtmDe5gkQH1ow0sxXQ0X0DosulQnXDydCtQesV7+TsyPPmuIfP808SYc0aGCEIG9br5bCsWg5dTRTNk1GIA4E7BRr81lXbPgumlx81zeCU2AyX2hqDMOux6qFOBbgzb2jrBBAkIv6dDN5snw+NBc69Ftv1uaCw/pudFbrw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xTSwUhLDNiaGxn8lPQ2UhgyTGHOVy2wTToLeu9ndwRo=;
 b=jgYEsuoqLx3oalHRcD3sg77ttk9RjkBSfi1pPI/6eQJqsFmPtIVfclMxYGZsjKy1SIPTqBEGz4xGcLfPa1bcPnnkuiS3x9Qqs4lDQt9Y5xI1LxgkwZX0ZQcD9SMENbtcTMhqef5y+xEdxqjuZeDQ3icTO6EiviGU0cilGR2/pkk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <d820dd39-f4d1-c599-a2e2-a50bb5b66abd@amd.com>
Date: Thu, 21 Sep 2023 10:45:27 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: xen | Failed pipeline for staging | ea36ac0d
To: Jan Beulich <jbeulich@suse.com>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: Shawn Anastasio <sanastasio@raptorengineering.com>
References: <65096f918e2e5_29a56047619e@gitlab-sidekiq-catchall-v2-84c6ffbc68-bt8nn.mail>
 <9aa0fad3-4132-8444-fb3f-8e1d542652e6@suse.com>
Content-Language: en-US
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <9aa0fad3-4132-8444-fb3f-8e1d542652e6@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002BA50:EE_|CH0PR12MB5044:EE_
X-MS-Office365-Filtering-Correlation-Id: 8796a994-307d-4f85-ed58-08dbba7f1bab
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	J11yLuwuqESjbDYlXKQijZRQ4Bm2hH5vmYiKMfV4GbIAAPNCR9297ZcN68v6Q490E5VBRWq0s+mQ5CJUdnkK93lq+VrkNj3OWlBMwvaUFKUT1EYFWGhUOeERw9+XzQ8+iwcoFrVHoP8hGQu6rg0xH6WkJN2fN4IBE1HafyEyoO5eUTJdswDQbXb088MI17teZlya58L1lkpAWVCCzSePgc2tWE9o1lcgNxWDhGoY8u2PTCxbuS8qynkSPS5QL5HovkEKTi9Kx/6EmhHt312SPxLnhPindENGZqWH3u7bxixJyuRVOwEZTRhaQIe9At7uEn/SW1OnCODOg9c17eB2mrfErVZgGCztweqaG5Pf6LkTo+uvLGL4XAnyyekdP6kSD9HhzG3RQuO0VUm/+4SfMPPUVO7ioWzqgjsMzoflAoSD1tN7mMeSS3ghLs/+V1b1G5v1W9yWyBFey3W+NMUwCcBmWYE6rU/2E8FDV2CypbI/9kcESXIcRt9w/CybLzj0zMzkSjk/utyikyCyyaRYPtt59rpI3mRwQoLG3nZuBx0yog/CzXzf8j17NsaEdiaR8uAB6crLEStDsnL+9GkMMO4gnycnFWlmkPb031kY9l0uRBEnme/caTxR3l4WTEGnYCey4pmL+3dMT3oZaRcgYG2ofT9PlrfFgBXP+kQsHsybiGXv6qUm0bNtH/atW5HGuiURG4zrobA4Jh0IOrcMX7h9cqsmpfZtlf+YzEhM8BCf5HRdRjtsJYt2EApFPKOm9wLNMd2sPDvil2yIj4CKqNrH/edlmDBV0hqxNZ+iNvEGnl2mcSi9XAPLmjUKlyId55zYOc0z6AELhaPWPGAviA==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(376002)(346002)(136003)(396003)(82310400011)(451199024)(1800799009)(186009)(46966006)(36840700001)(40470700004)(26005)(2616005)(36860700001)(31686004)(47076005)(40460700003)(83380400001)(40480700001)(336012)(426003)(70586007)(44832011)(8936002)(70206006)(4326008)(31696002)(316002)(110136005)(41300700001)(2906002)(8676002)(478600001)(966005)(86362001)(36756003)(5660300002)(16576012)(356005)(82740400003)(53546011)(81166007)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 08:45:29.0296
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8796a994-307d-4f85-ed58-08dbba7f1bab
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002BA50.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5044



On 19/09/2023 12:21, Jan Beulich wrote:
> 
> 
> On 19.09.2023 11:53, GitLab wrote:
>>
>>
>> Pipeline #1009404353 has failed!
>>
>> Project: xen ( https://gitlab.com/xen-project/xen )
>> Branch: staging ( https://gitlab.com/xen-project/xen/-/commits/staging )
>>
>> Commit: ea36ac0d ( https://gitlab.com/xen-project/xen/-/commit/ea36ac0de27c2a7c847a2a52c3e0f97a45864d81 )
>> Commit Message: xen/ppc: Enable full Xen build
>>
>> Bring ppc's Mak...
>> Commit Author: Shawn Anastasio
>> Committed by: Jan Beulich ( https://gitlab.com/jbeulich )
>>
>>
>> Pipeline #1009404353 ( https://gitlab.com/xen-project/xen/-/pipelines/1009404353 ) triggered by Ganis ( https://gitlab.com/ganis )
>> had 5 failed jobs.
>>
>> Job #5118269375 ( https://gitlab.com/xen-project/xen/-/jobs/5118269375/raw )
>>
>> Stage: build
>> Name: debian-bullseye-gcc-ppc64le-debug-randconfig
> 
> This and ...
> 
>> Job #5118269256 ( https://gitlab.com/xen-project/xen/-/jobs/5118269256/raw )
>>
>> Stage: analyze
>> Name: eclair-x86_64
>> Job #5118269373 ( https://gitlab.com/xen-project/xen/-/jobs/5118269373/raw )
>>
>> Stage: build
>> Name: debian-bullseye-gcc-ppc64le-randconfig
> 
> ... this imo can't be expected to work. Is it really useful to run randconfig
> tests on ports which are only in the process of being brought up?
> 
>> Job #5118269370 ( https://gitlab.com/xen-project/xen/-/jobs/5118269370/raw )
>>
>> Stage: build
>> Name: debian-bullseye-gcc-ppc64le-debug
>> Job #5118269369 ( https://gitlab.com/xen-project/xen/-/jobs/5118269369/raw )
>>
>> Stage: build
>> Name: debian-bullseye-gcc-ppc64le
> 
> These two, otoh, look to be a result of the tests pre-seeding xen/.config with
> CONFIG_DEBUG settings, followed by making the olddefconfig goal. That, aiui,
> isn't picking up xen/arch/*/configs/*_defconfig, which at this point is
> mandatory for PPC (and likely is going to be so also for RISC-V once the full
> build is enabled there), at least as far as some of the option disables there
> go.
> 
> I think this wants switching to making the defconfig goal, and substituting
> CONFIG_DEBUG in the resulting .config. Due to x86'es and Arm's defconfig-s
> all being empty, this ought to be no change in what exactly is being tested
> there.
Apart from CONFIG_DEBUG there are other options we add using EXTRA_XEN_CONFIG
that might result in new options becoming visible and thus triggering a prompt
without olddefconfig.
So if at all, I think the flow should be:
defconfig
replacements
olddefconfig
make

~Michal


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 09:00:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 09:00:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606238.944006 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjFYI-0007a9-Ey; Thu, 21 Sep 2023 09:00:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606238.944006; Thu, 21 Sep 2023 09:00:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjFYI-0007a2-CS; Thu, 21 Sep 2023 09:00:50 +0000
Received: by outflank-mailman (input) for mailman id 606238;
 Thu, 21 Sep 2023 09:00:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wI4U=FF=citrix.com=prvs=62171ef32=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qjFYG-0007Zw-ST
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 09:00:49 +0000
Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com
 [216.71.145.153]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5935fd77-585d-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 11:00:46 +0200 (CEST)
Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 21 Sep 2023 05:00:43 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BL1PR03MB6088.namprd03.prod.outlook.com (2603:10b6:208:311::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Thu, 21 Sep
 2023 09:00:40 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 09:00:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5935fd77-585d-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695286846;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=JbyXrH1sw/2Kr1DeUlrirl0fJAeUXQA7yzw8/xnM8Og=;
  b=NQNJo+a6lxpwfZQ4+0046xm95ZX3G9pU5uWOo61ajY/M7D4e4h9f8P74
   IJXkbr6qvkys/1LUX0fOhQnFOUSGTY1NBWpzCpXCjPeBWONY0l6umoLDT
   i4GtT/arQrpz4LtOkTrG7WzXKLEFLFXbda32pSzib9QjbJC/oHa2mXI9x
   U=;
X-CSE-ConnectionGUID: xPWFch8FSOWZuHRbqIGWWw==
X-CSE-MsgGUID: yzDf7qXMSRusgC6nvcT24A==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 123217230
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:HdwswqCgiFJ2zRVW/5Xiw5YqxClBgxIJ4kV8jS/XYbTApGwk0zMPn
 WIfDG2FOarbNjekKoh3OdvgpkhQvZHXydRgQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4GJC5wRkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw6t5IL2pOp
 dIjDw8/czC5jfuX742EVbw57igjBJGD0II3nFhFlGicJ9B2BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9exuvTi7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqCn237CVxnuTtIQ6Ba+U+KFzsHio/HEIBzZIU0WwnaPloxvrMz5YA
 wlOksY0loAw/kG2Stj2XzWjvWWJ+BUbXrJ4CPE39wiX1uzU4gKVC2IeRzhNQNUjuIk9QjlC/
 mGOm9TlFDl+qoq/QHiW9qqXhT6qMC1TJmgHDQcUQA1A79T9rYUbihPUUs0lAKOzlsfyGzz73
 3aNtidWr5IXgM0Q3qO352fuhT62u4PJRQ444AbQdm+95wY/b4mgD6S37XDL4PAGK5yWJnGDo
 X5CncGd5eIPCJillSqRTeFLF7asj96GPSPdhxhzHpAn3zWr53OnO4tX5VlWPE50Nu4UdDmvZ
 1Xc0T69/7dWNXquKKVxM4S4Dp1zybC6TIq1EPfJctBJf559Mhed+z1jblKR2Garl1UwlaY4O
 tGQdsPE4WsmNJmLBQGeH481uYLHDAhlrY8PbfgXFyia7Ic=
IronPort-HdrOrdr: A9a23:JhFUVaCygbS7peblHel255DYdb4zR+YMi2TDsHoBLCC9E/bo9f
 xG+c5w6faaskdzZJhNo6H6BECgewK7yXcW2/hqAV+iNDOWwFdARbsKheCD/9SJIUzDH4VmpM
 BdmsZFebnN5JtB4foSIjPULz/t+ra6GduT9J7jJr5WIz1Cb6Fl40NnBh2AEktwLTM2eKYEKA
 ==
X-Talos-CUID: 9a23:rVxadmwT8jmSc0dQL0EEBgUEIv8LeX2N4kz3HH2lKVxjUZy6dmCPrfY=
X-Talos-MUID: 9a23:30yAXgQ/Y6ybv+VNRXT9lh1sa95Yxp+UFVsCussApcK4b3BZbmI=
X-IronPort-AV: E=Sophos;i="6.03,165,1694750400"; 
   d="scan'208";a="123217230"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=W6WEwHoenIkYIFUSysaTeBhmCTxqoHzaLXKhUS3qx2wexsJWQ6V1rhVZE/XDexXDHGkRZeNylI4IZvuGRuG2b8xCei0d2zP70ZEUiIDfc/No+WtqJXqzBA0GgTWni0UDGQclwac4JCLlb94QVcXgVcuKtYJ89HxdhspQ8DS/qUhwYlTv+qKsoo6R+lttNDu8iOhgbOlwMzef/f9K69qjYmlmq3mApJfAMYF3Gj/rP2x926/iDB0OvppaoIyayY7K+CtQF4oJUdcZiZ3ph334U+85onl6hyIeczTaI1HBE5qMEOK0buR/R+IESej7d5fehWRrLBvz2/sL9kpvk145BQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+8VjF2VLMh6+vOqzB3Jn3ItVhF8Uw5bSo8wDav7Q69o=;
 b=P/MymKeqk7v3dF5/Cbf6HclJ2KPoGoXftjGjJI34t5qYrECxmA3yJMEkdmqyw0ocRdqNgsENT5fAQLo4Bi/fPce4SRaflPywp87bo2EmN2aJDkysjtJxwdDmrkzfsNX/7kH2/tHPid7bqaI5WYQnN/a+kXBMqshtqI+XvIJ1UmOKhrM380nn7RQ0YKCJBTkR+REtd+fzel1Ik+D0NPwe8Lo/2PFPviMQr1+loykaoxv4R7W2xAeyet5Pn++nZOEAsUMBHji4F0ppZWIWMBZBTQCLe8NjjAghGgTk7+2YGh+dnt3IlwfQx8qXLyJgYC1nT8v01rAGdcgbYIaqOqOGgg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+8VjF2VLMh6+vOqzB3Jn3ItVhF8Uw5bSo8wDav7Q69o=;
 b=xFCstaxVAhsjE1Kd+QppR2NKEtQxBdDQ1tG/lsor1feshm448nKcoECsNhPzKFKL74SP7/mvtSuiSOtCBenAlDBL5R0oIz9yxIoIw717c/wOYEd2aTBldYx+nK1fBwMLy6l+hscEL09YiiPkNXo7nExy0ZxdCgsS8dZAwy9ptd4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 21 Sep 2023 11:00:34 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>, Paul Durrant <paul@xen.org>
Subject: Re: [PATCH v9 02/16] vpci: use per-domain PCI lock to protect vpci
 structure
Message-ID: <ZQwGMmTG47fi1hwO@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-3-volodymyr_babchuk@epam.com>
 <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
 <98b8c131-b0b9-f46c-5f46-c2136f2e3b4e@amd.com>
 <ZQqoqrmDr2jY_bMu@MacBookPdeRoger>
 <8f8e293c-80a9-03e0-0c19-e641dc42d42e@amd.com>
 <c1f0f3cf-a5de-5f90-e153-c523665eba0f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <c1f0f3cf-a5de-5f90-e153-c523665eba0f@suse.com>
X-ClientProxiedBy: LO4P265CA0304.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:391::12) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BL1PR03MB6088:EE_
X-MS-Office365-Filtering-Correlation-Id: 24d5d834-ed26-4210-4fd8-08dbba813ab2
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rYVcm4/lNK8PsAQ5Zo2rSw0VUvDwNwe2YINMLh0iCeMMf6CHhZK8I9PjvBzQQSrvqBwy+FnK9hvrVnYIFd51jM6k6+VYML0d0SSD9yGnG5CjBh1HiyMyQjHUtcoHWVi6xMwGYGjNeOOwY2XD7N0zvfdTHS2NlrpkJ05R7uEqImSDGX1zvN/CkNu4KFRud7V+iVIcFa2YXbQUhWlNbkWKDO+eQveYeUGwycEqp1XFU8vYKq1YRu+nnmeo5AhFWmo70rQtFZcBW4hqQj5DQzVlR/XBtBkyLBLQL9kVHSKbQoijl2YVtBiles/k4mI+TsoL80XNpCqfptBWCmH6nmAqyos8Ae2chhVOEBCDgBJlBEhfwaqm3w6XY+QGtl3K6uKzE0ycNMMB+vWPlvyRIfWh71YhHOY/uIagLzG9yqmpcYGxPtnGK7z5mvoufRpa+t40uSeTKZ+iY+mv/5Pm9SjxlqBB1MmDvB0sWUHD2IgfEg7xuebqq9xE3ZVToPxoUPIRqBcq8mSCX9vk0OgFe9Q5OjyJ9dApmbmPPDLZGsjl8RufSXIL68Y2Ko3b2AqqXXdA
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(376002)(136003)(396003)(39860400002)(366004)(346002)(186009)(1800799009)(451199024)(83380400001)(508600001)(6486002)(6506007)(6666004)(53546011)(9686003)(6512007)(2906002)(26005)(54906003)(66946007)(66556008)(66476007)(41300700001)(4326008)(5660300002)(316002)(8676002)(33716001)(8936002)(7416002)(6916009)(82960400001)(86362001)(85182001)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?S1lxWEdQRFdldGQwbGVEY2VXWkNWVHl3L09YdFh1NWRGUDhnOUFsVk9ZbEJY?=
 =?utf-8?B?SzZFbXVzdjFwblVVRFY2RitodWJVck9XbVM0NXpWanp3c3NWNkNmcmd6M1BQ?=
 =?utf-8?B?RnRzREhLdEdOLzF5ZW5rZHJwZC9RcXFnT1U0am1BV2xSUi83dW1QV1ZSVDU5?=
 =?utf-8?B?WUFxV0dHL3p6WHVWS28vbS9QMmtaMlYxMERLM3dDbXhTb1lDakg0SEQ5aFBs?=
 =?utf-8?B?MDJtQlBUYlcvWTRJWTNlcUdtUWMzZStUYVlmQjJxN2xSaWxsUnBza0w2TEs3?=
 =?utf-8?B?U29wTnNpdVZFNnpKVThsdUNIMldaZk1NNmpYL1RCUW9OL3FVeFpOSitRdlAx?=
 =?utf-8?B?dGhJd3lrWDM3K0Roek9NcW5IQWVhcjVyaWw0SXBxaXkrUThFU2dwdnVGdFJ1?=
 =?utf-8?B?T1FPRmlNNUZuZUhqMDh4RVBTUjF5Q3N2SVR2QVlwS1Qxd05RRy9IViszWGJ0?=
 =?utf-8?B?dkZibUwvRmdTaXlxZUt3eCtxQ2c4S2ZVRnRYUkVGWkJqalpsQ3ZDYnhISjNR?=
 =?utf-8?B?aThUaUhmM1Nyak1NMVpLUVlJWGpucEgvOHRmYXpEZWl4OWpOSUY0WDl6VkZ1?=
 =?utf-8?B?NFpPODFaZjc5SG9vQTd3SFFNZDRlQUNBVnNuUDBQbnNiUUFtR1ZKWTIvaVVo?=
 =?utf-8?B?RG4xallnVzRuVHFGUGlPNEtIcWtOZDVWbTRERnowWXNaTmhwV1hBL05rYWRa?=
 =?utf-8?B?Wmk1OVVKMm56dTZHU1JZSjJiNVJCZm1PN1laMVNmTU44dUhVNlpNdjB3U1Yr?=
 =?utf-8?B?c2Zjc0RyQ3VESmk2Znprb2V4U2czVlA4U05iZXpwYmNuOTljWDByUFFHeEY1?=
 =?utf-8?B?Tjcyb0ZaVGV1bWNmZGRFVm05dmRGK2FTQzFrcnR3Qi9JaDdPYVRpZ0kvcEZu?=
 =?utf-8?B?SHQxUXVHVm45ZjRvRVAydDhva3N3eGxUaTlXKzVTZENWbTFDY1dPRVExWWlo?=
 =?utf-8?B?RjVOVVptTWE3RU1GYjVJcE1SUjBTTUQ2WHJaOENsUW9JUXUvb2tMTys0Qmt0?=
 =?utf-8?B?ODRONHVxVldVM1pFUW1XUzN6dE9vU3BwdGNRZk5EREtCbTNNbEZJL0QyMGdt?=
 =?utf-8?B?eHdUdUtCaElNTmFoeFZXbW10WmQrSi93Z0plQ1lYd2xIL2tZQmtKRzNWMnda?=
 =?utf-8?B?RlRnNVRqcDlxc3NScHhkWGduTC83WVZoTnJGeVkwQi9zbzV4ZEJnK3V3MjRO?=
 =?utf-8?B?YSsrWlRvUXZVT2tXREYwVU5OOWw0bGR6cXpmZ3FUNGlqVHl6R2t4YUs1bE5v?=
 =?utf-8?B?VlhHSENXVEVka0E5Y3I1RUE4VEJ6YWoxZmlOL1FVM2tyZ2lPMFJTRnYvR0Ra?=
 =?utf-8?B?ZXhoUEpLN1hkWS9WaFFZZDNIdjAyY1ViWC8xcmdwaFZzem5wWUtUcnFSZGhI?=
 =?utf-8?B?RGs1MlRqZjBYd21oTUYxS1plVUxCZ2trWVZsREdjMDlBcGIxNEw0V2RURkxO?=
 =?utf-8?B?SlNwdjhxOFJCcW8vb2drbENLUlkxZGMzQWprL0R2aTBLZDQwWHpDWE43WXlF?=
 =?utf-8?B?c2RUS0dqWFk1T29YU1p4WEhyMCtVRmdvc3A5R3dkNDRRVFdieWc2UVUxc0ds?=
 =?utf-8?B?Vk5DYkJiNXdoekRLVlVnQmpaMHhZdndwUC9nYkRUOWQrL0I1UWdiOFl3WDJm?=
 =?utf-8?B?MHlsR1d0aytLOXY4K0VzampBNk1tS25DUlZhWTRWeE51UzFOR1lRTDl0WG5x?=
 =?utf-8?B?VDBqaWtlOHZHakQvL3daVzlvNWtKWVJWOHVKelNUdG01VUNsbStSakJBaUZn?=
 =?utf-8?B?Z0xHWDhEUGNIbG1FSE1JVlRZblA1TFVzUXRyY0k2Rm1YQTZGWTU2czE1VDR0?=
 =?utf-8?B?RXc0eHFQeDNrcWlFUDlDcDZyRHNkNmx0Z2RyOTBZRHE2Y1ZsRjF2d3pBRm9G?=
 =?utf-8?B?SVNKTy9hN2pTclRMeklEU3M3bUlzbXVhbGpsTkFwQ1R5RWxDTjVyZE9zRmFG?=
 =?utf-8?B?OGhJVlZ2L2N6ZnlMQzJPVnlNY2pMRWlWQm1sZVNuN2ZEQmYyMFJuZlV2ajV5?=
 =?utf-8?B?L2ZFNnMwMXNBYWhIMTdFQ2V0WmZESkJTRmxSSkRYSFlSTHV4WURzMlJTaDNn?=
 =?utf-8?B?VHdXRklzWVh4dzk4Q0FhNFFIalZHNjZ4YlkyNDRFM3hYL0h1VVJobGtlaVVp?=
 =?utf-8?Q?MNYL37kQ59Coyaw50AUOOW1LF?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	itWAwxnuW9zIjxJN+KMzRiYiR1TTlSv5S5rWlL10bTsKi0SWmOxcrsWcPJRBDD9639AKf9QCILIrkfkpwy6Nwqr2QO3cWkD1hFQognW0wvxMbyP5SSlABozqWbH8juECnTFYwNMjshceq9hlIwT1dU7C9PscW4Fqx8sHmOFl/SeWVrfhqvRhCsZXDvLDbexOej2Ehq0qi6OPZnjSYwQPvhT2nSjcl2qn6uMWuDFV0JqBQG55KBBN6SSlJHvjTUEBMQCKUzMXcLMTK2Wbgm6gKC2QIJaHeDxAO3CSXjWXUVUNimb83Q02Fjhib4AzB3UL1BK7Guk/sg/v8g8xLS6197c+eG8LsTUD/IBjiPBTe339PpN4SfP8SboGgwHd+wSd+8WTjWAisjsOkqipunCbdwdyZ5k36g/dRq7hFlPVqOW/Y25lOIg2SOwAMF1uj/Bln5uaRh4iZT1gWhmFbaNk17GZullUqKtoFCczN9GWeJOWIJF5oCDPZNlnYxhtscGP6ARGSk9Lv+6vnXuWQAYc4j6YlRusukfbaWxQ1da6/mi9UdPqTi0iKaQ+NN+Dl1dZfWTMO82xVIzRwn17eCXJ54IbBCeXx9JN2uHKWmU/382tOEbxeip01kz102SADXcyHXGcQkRc4sHnqB09iVTlY4UumbrlpRVaYPWdOGufkboiyOQvmJ1c60r4xHeJfHZ6UieqMUh+VbLlsjBQU43RjDx5xZ6tJaP+S9K7EINECts6js0IpGdgbBisN55UNijovGWMPTk9qR+ICfjI16RgIfpJdqRNz/kmDI1FPW1xm61ZcSMF+FpAbOGg7Amt8nPJPkEuJ2j5C55Go4+68E/PYe0qt7Kno/ojwHE/QWjxSDegt0ZVECuRKcqcY0PkrWa17T+ZXpD5qal1IuHZrLU7Yg==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 24d5d834-ed26-4210-4fd8-08dbba813ab2
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 09:00:40.4643
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rsSSj/uXes46VmzCiJzZGt1oKMo1HVNOzIf7FYFDJrU1irMN30nD6bLNnEIPq8FnXfyaMJoHhds5VJGkLtKzGg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR03MB6088

On Thu, Sep 21, 2023 at 09:42:08AM +0200, Jan Beulich wrote:
> On 20.09.2023 15:56, Stewart Hildebrand wrote:
> > On 9/20/23 04:09, Roger Pau Monné wrote:
> >> On Tue, Sep 19, 2023 at 12:20:39PM -0400, Stewart Hildebrand wrote:
> >>> On 9/19/23 11:39, Roger Pau Monné wrote:
> >>>> On Tue, Aug 29, 2023 at 11:19:42PM +0000, Volodymyr Babchuk wrote:
> >>>>> diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c
> >>>>> index 8f2b59e61a..a0733bb2cb 100644
> >>>>> --- a/xen/drivers/vpci/msi.c
> >>>>> +++ b/xen/drivers/vpci/msi.c
> >>>>> @@ -318,15 +321,28 @@ void vpci_dump_msi(void)
> >>>>>                       * holding the lock.
> >>>>>                       */
> >>>>>                      printk("unable to print all MSI-X entries: %d\n", rc);
> >>>>> -                    process_pending_softirqs();
> >>>>> -                    continue;
> >>>>> +                    goto pdev_done;
> >>>>>                  }
> >>>>>              }
> >>>>>
> >>>>>              spin_unlock(&pdev->vpci->lock);
> >>>>> + pdev_done:
> >>>>> +            /*
> >>>>> +             * Unlock lock to process pending softirqs. This is
> >>>>> +             * potentially unsafe, as d->pdev_list can be changed in
> >>>>> +             * meantime.
> >>>>> +             */
> >>>>> +            read_unlock(&d->pci_lock);
> >>>>>              process_pending_softirqs();
> >>>>> +            if ( !read_trylock(&d->pci_lock) )
> >>>>> +            {
> >>>>> +                printk("unable to access other devices for the domain\n");
> >>>>> +                goto domain_done;
> >>>>
> >>>> Shouldn't the domain_done label be after the read_unlock(), so that we
> >>>> can proceed to try to dump the devices for the next domain?  With the
> >>>> proposed code a failure to acquire one of the domains pci_lock
> >>>> terminates the dump.
> >>>>
> >>>>> +            }
> >>>>>          }
> >>>>> +        read_unlock(&d->pci_lock);
> >>>>>      }
> >>>>> + domain_done:
> >>>>>      rcu_read_unlock(&domlist_read_lock);
> >>>>>  }
> >>>>>
> >>>
> >>> With the label moved, a no-op expression after the label is needed to make the compiler happy:
> >>>
> >>>             }
> >>>         }
> >>>         read_unlock(&d->pci_lock);
> >>>  domain_done:
> >>>         (void)0;
> >>>     }
> >>>     rcu_read_unlock(&domlist_read_lock);
> >>> }
> >>>
> >>>
> >>> If the no-op is omitted, the compiler may complain (gcc 9.4.0):
> >>>
> >>> drivers/vpci/msi.c: In function ‘vpci_dump_msi’:
> >>> drivers/vpci/msi.c:351:2: error: label at end of compound statement
> >>>   351 |  domain_done:
> >>>       |  ^~~~~~~~~~~
> >>
> >>
> >> Might be better to place the label at the start of the loop, and
> >> likely rename to next_domain.
> > 
> > That would bypass the loop condition and increment statements.
> 
> Right, such a label would be bogus even without that; instead of "goto"
> the use site then simply should use "continue".

IIRC continue is not suitable because the code would reach the
read_unlock() without having the lock held.

Anyway, I would leave to the submitter to find a suitable way to
continue the domain iteration.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 09:42:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 09:42:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606247.944017 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjGC3-00016t-N0; Thu, 21 Sep 2023 09:41:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606247.944017; Thu, 21 Sep 2023 09:41:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjGC3-00016m-K0; Thu, 21 Sep 2023 09:41:55 +0000
Received: by outflank-mailman (input) for mailman id 606247;
 Thu, 21 Sep 2023 09:41:54 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wI4U=FF=citrix.com=prvs=62171ef32=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qjGC2-00016g-2s
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 09:41:54 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1531c866-5863-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 11:41:49 +0200 (CEST)
Received: from mail-bn8nam12lp2168.outbound.protection.outlook.com (HELO
 NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 21 Sep 2023 05:41:45 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB5486.namprd03.prod.outlook.com (2603:10b6:a03:28d::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Thu, 21 Sep
 2023 09:41:43 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 09:41:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1531c866-5863-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695289309;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=LO1NPurSuH1q5HMW7jiw4dZYkVSDMqT9K8I+A9WTMtI=;
  b=ey0B0R56MRZtI9Rbl0j/WbbRj6D2f+ThIOuUEapmqKXNT6jGb8UX+4jc
   huzU13Npw1/5yF/B0DyHE5TN6ie6kpKGOPs80eh49o6Ch2ku0OZXKwyfD
   xj2PmnIlElU4PxCq2v/GjSVsiDmZnxeWNt3QluWg6nI7phmICRiuECpBN
   M=;
X-CSE-ConnectionGUID: ehi558caQy+ANt1F+3SDcA==
X-CSE-MsgGUID: K36mXPDuQkyPb5kp95Xs5Q==
X-IronPort-RemoteIP: 104.47.55.168
X-IronPort-MID: 123776067
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:MiLvH6ArJyLDiRVW/5Xiw5YqxClBgxIJ4kV8jS/XYbTApD1w0j0Ay
 WZNDWCDP/iCYDemf9tyOo/npEsAsJeAy9JgQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4GJC5wRkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw9+Z2XDwe/
 vUhOXMkSAzaqaHt+56wY7w57igjBJGD0II3nFhFlGucJ9B2BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI+OxuvTi7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqCnz2bGXw3yTtIQ6N+bm885SrECqxX0rAkAVTQrmkeLksxvrMz5YA
 wlOksY0loAp6EG0R8PhGR25pHKJtAQVXdZ4Gug2rgqKz8L83QGdAWQVSy9bX/YvvsQ2WD8C2
 0eAmpXiAjkHmK2YTzeR+6mZqRu2ODMJNikSaCkcVwwH7tL/5oYpgXrnadJuE7W8iNHvLhj2z
 yqXtyg1h7gVjskj2r2y+BbMhDfEjprDQxMx5w7Xdnm49Q4/b4mgD6S37XDL4PAGK5yWJnGDo
 X5CncGd5eIPCJillSqRTeFLF7asj96GPSPdhxhzHpAn3zWr53OnO4tX5VlWPE50Nu4UdDmvZ
 1Xc0T69/7dWNXquKKVxM4S4Dp1wybC6TIq1EPfJctBJf559Mhed+z1jblKR2Garl1UwlaY4O
 tGQdsPE4WsmNJmLBQGeH481uYLHDAhkrY8PbfgXFyia7Ic=
IronPort-HdrOrdr: A9a23:h5rYlq06aykMFnALMr1jpgqjBEQkLtp133Aq2lEZdPU0SKGlfg
 6V/MjztCWE7gr5PUtLpTnuAsa9qB/nm6KdpLNhX4tKPzOW31dATrsSjrcKqgeIc0HDH6xmpM
 JdmsBFY+EYZmIK6foSjjPYLz4hquP3j5xBh43lvglQpdcBUdAQ0+97YDzrYnGfXGN9dOME/A
 L33Ls7m9KnE05nFviTNz0+cMXogcbEr57iaQ5uPW9a1OHf5QnYk4ITCnKjr20jbw8=
X-Talos-CUID: =?us-ascii?q?9a23=3AuDqPPWnG8Rc4vO4XcTR6b7aTgsfXOXDdzSqNc0S?=
 =?us-ascii?q?xMHcqYZuJEHHTo5hImOM7zg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3AhLyhcw4KgV2sOwgyoev5s7zaxoxLuPqrOHghjKw?=
 =?us-ascii?q?FqvGOaC9oamqtl2mOF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,165,1694750400"; 
   d="scan'208";a="123776067"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ezLrA1TD3HfmDS5IcNvwj7l5RhupPquAmFu8ZRxwjM/mzAOdOXTcOplrK96BZtZxLcqMxjcx5ZF3+yGJ3t5yzgG7MRELmQQMBXIcyEfC98cZKZvhj0NJ30fY6rg5Sri+u0vO9P9H8J19e/O+YOOqqbab3KYkpHDw/cT4fVBufOB75wiR5LJZ5/VOmhEXph18a8EyvFmCtZMRPzHbEPDJnmfPaa7a/ouoXTS5QNz/Ffnz1J/ov5a59qoiMOaNiOYgIqmYnfXckoGwIwGu3a3qA6goKuEqIY4G5yH4/fGTtAavSU89rEpBpB/pqJCwc+9hG4784kVbVv8/wCe/OR85mQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=58EkMiYuvw2X/nDSz9T5cQ4eBqI1y2kpolAtQxlah6A=;
 b=e3zKRXoJ7DWlwStzb9xfMEKrxgKlN5XJV7WekIZQqQaIlvTt+/NUVUnDp29H+nd/8mNQn99PxPyinZJ/HmbCJPCg48GAVpQcZq/hlA9UGc3FQgO4G7qGR1uLERUFregNynxraKyLpMaK8QCSCZcrZgCLBUK+xoviU6REpd7v81CMiUWh0JwWACJ3wvCJY12YNr9wvMIce2O2X2UJoEMtZwZ+TQMOmjflM8hML4hbeoklWLwsXxMLTNE2oIktJ3GumaO0pdzh0VJr3SOTKRIhSJFRCcSHk6YKqnEQnFRktFdEAMWhUU3XwqSwH7MUZLD1pwBff0iNEN+fUEEukojoJA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=58EkMiYuvw2X/nDSz9T5cQ4eBqI1y2kpolAtQxlah6A=;
 b=WPOcUANTnZCkVXV9eRAAqjQ4bfTeHYsjJHIS/un6SHZcNzFl/oKoXQgfMa1jMSSKmx39uUfb/U4FLfShQY2yC3mFFRRpv3HcRt0wodLQWv0eEcYQ5cy2ncF85xxyJDjQaC8QlRqgkNZeqziVQxCUdJp+QC4+GFRNVaYDclmEEvo=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 21 Sep 2023 11:41:37 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>, Paul Durrant <paul@xen.org>
Subject: Re: [PATCH v9 02/16] vpci: use per-domain PCI lock to protect vpci
 structure
Message-ID: <ZQwP0YpgnGqt0X2Q@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-3-volodymyr_babchuk@epam.com>
 <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
 <0ee1b11b-17d8-0d53-6836-2c09bc083fd2@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <0ee1b11b-17d8-0d53-6836-2c09bc083fd2@amd.com>
X-ClientProxiedBy: LO4P123CA0325.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18c::6) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB5486:EE_
X-MS-Office365-Filtering-Correlation-Id: a2f23164-7e02-4ed7-3b1d-08dbba86f68e
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/LVuu3LwAiJ0d96begokLwz7C61PrvNeTvYrLOkNxefBLAXNLXNWu45fvHVmZ2oliokcLqnG5hZivHd0NRG4nNnTYZYuzVE/CvdcV0TUjRoFc/e4u18Nrr+89dwVJu/iRPBh724/jWEumB0/6JuNHB7zrDq3PECbiR5kTiV8n1Jotsnq7nXxmIYYh8GokaFluweivYNT0pmMFOPuOorr1JrOVysoXo5gej5npCq1BgoQoPox+KZLcS1RFJqkvT61sN3ME4Gph4DYdGJEbHmVMB3o1r1eTHNe+IxslDhqhotK2j2YTr9KaADXzRPo2zJ49ZbD/UR6Q51/zkmYDFREclkRa7wrMXzugTim+knapLXVIubpdUAzK7Z/x/COB4AbiRCNpqfJS3XfuRwcdRlL16R9ZUSFCdv7NSEHAq9UC30pRmYM2sCo6hSOGxjdNDT0VuHmCDtbX5g28OvJgeeSu6NEqVhaFUOPchPiBG3RHbFCDehPaelBhMevJ3dvv2xpth7feDX4c4mcTEoNAi0OEEU8uNFFAlOgWNHAekf2Oq0NWMMMNd90oEMXU6gAeIgr
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(396003)(366004)(376002)(136003)(346002)(39860400002)(186009)(451199024)(1800799009)(86362001)(9686003)(53546011)(6512007)(33716001)(6486002)(6666004)(6506007)(82960400001)(2906002)(38100700002)(85182001)(7416002)(316002)(6916009)(54906003)(66556008)(66476007)(66946007)(508600001)(83380400001)(26005)(8676002)(4326008)(5660300002)(8936002)(41300700001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MUh0T2s0VW9QeGk1WG5ER2wxbzk3WUZhMUtObzdUQ3pHUlFxR0VSVTBnblJq?=
 =?utf-8?B?TTgzQ2J5bDR1S0ZmMjVlS2JvZ05xMmdxLzI1ZEVOK0lONjY3cGo3RHBmaVdH?=
 =?utf-8?B?Uy9XaHhYSEplWHExRjNZczdIUUd2bGFDbFdHOTRFM0FwUzc1Z0R5MkxFYUpv?=
 =?utf-8?B?MlgraDFpdTIvMWhoOG13aEt4QTYycUVKTW94WDlpQW1EYy9aajNlcytqVm1u?=
 =?utf-8?B?SHFraU1XREdsQW0rWlhLVEZPYzhReTRyNXVrQ0dnTnZMRE00djRGRTVUR3kw?=
 =?utf-8?B?bGZ4SmtiZDhpcDFqZGVmajV2bXlXMmlqYU1rNGlEckVpdVJyTzRrQ08rcVhx?=
 =?utf-8?B?NGdRcGloQmJCZkVHRWlYQ3lrTGoxeEZJbzBlY1RGN1pUdlFWZDI0ekhUa0M2?=
 =?utf-8?B?TWE0WWd2UVN6QXFGVkF1clRlcjdPUmQ4TWFkU1JaNlErRGx5UFIvajMxNUw3?=
 =?utf-8?B?SmkyVVFUeXEvYlkyOUYrVWl3NzdRMVhvbFFBOGxYdkZUZGRNeGxuTnA2d01U?=
 =?utf-8?B?VmZhU1licTA0Nmk5bzNCeHRIa1FkQlExY2d2UlNLQ0E3WkxwY2t5OHY2ejFM?=
 =?utf-8?B?cW5RcWdaWnl1R3pjUjVxU2xtRGJqUDl3NEsvOWtMQWd2VWlYMG53czlpNlFj?=
 =?utf-8?B?OTU5MWZPSkFLK2hla2V3anRXUVVsUHEzUjgzOVd3RkMzRmZudjRXR2NmbUFL?=
 =?utf-8?B?OWRYRE5nY3M1L1B2akcwd1pWM3d4RU9JaldaMVQ5d2hIU0Y0anFLZm1NUWx6?=
 =?utf-8?B?eDBrWWp6NnZwZHNRWEZGaGh0Wk5yUVUyUjQwQ21nMmxXODE4TlFHWGdHMVdB?=
 =?utf-8?B?QzJ0Rm0xSE9DZS8yVmp5VnRQSUZxZC91bE9tS3YrWlhOaUZhYTNuQWljNld0?=
 =?utf-8?B?QkxEZUJLcUdtR1l6ajlzZXFvVWowVVZQL1VwdmFCeVF6ZVNWa0I1MlVxSlB2?=
 =?utf-8?B?M1VjY21PRmdheEsyNm92amNqVTFSY1ErS2lrL0pGYmVZbEE4YWNLTmFYd0xm?=
 =?utf-8?B?ZzlBZGRJb2hDYUFqdFRuaUtTUEQ3c0VMTHFGZzcvazdYcVUxRUtBUmNlNUo4?=
 =?utf-8?B?dVdTRHI5aStFamlaS2ZsRGJycUdvcGloVGMwcUJZUHNjQzhxNzd3c1NOOWdC?=
 =?utf-8?B?Tjl2UkNpKzJwOEZydU5rQWJGNW1HMXdBNnhTRTFUci9vMC9MMkxYTHF5SWpR?=
 =?utf-8?B?OHVBYTIzejhYQ085Qk1OTmU1elhMZ1NybjExaXhKYnFGUkZ3QXFuZktlSTlZ?=
 =?utf-8?B?cUFlNnJTd2RiYnVJNDc4aTUvNXdlUUg3dWNRUHBHbG41ZXY2WVRnQnlKUG1I?=
 =?utf-8?B?KzJLNEhtSUgzWVduV0p1b3NjTjBraEQ3WlY4SzMzOVBPZkdFRjg2a2tEck9O?=
 =?utf-8?B?NWlnYm9ZK3JjSjJJKy8zTGQ2elZNYzA1dnRHQ2d5dXdkZ3RtZnhNaFZIVjA3?=
 =?utf-8?B?V1RNaWE5MUxITEsybnlldTdyWVV0VXIwWCt1Q25IQW12SUozQmV6Q1h5ZTdi?=
 =?utf-8?B?enAxZWlPWW5tbkY3eU9HTlFRZmdlV050NXZSSTVqQ0ZjTTJPbVp1b0d1YmVU?=
 =?utf-8?B?SnNjWnZGbHdHSzVLQkMvcGdXcWNMWm5hdDBXRTFNS3hwSENZeVk5MHR2UWdt?=
 =?utf-8?B?Y2g5YVJncExLN0hQeHI0aGlwWERLR1R5M283cHpmdjdCVGFidWlGaEl5YlRK?=
 =?utf-8?B?eURIUGhvQ2FPUndlcC9aQWJqY2NLT0VuZXBCMm4rZ1ROZXBVSGZJT1BnZUwx?=
 =?utf-8?B?YW9wbk1LUmxOMjM2QjhTVEMySEUxZ2pwbFhydEVxZk9YeURtVFFmYVZURkph?=
 =?utf-8?B?Rk5XbjNGT1J6K24wanNHUzNUNXBKNTgwR3RvcDVJQ0RtRDhRT3BCNUdtcEl1?=
 =?utf-8?B?SHZkSzJ0QUJFTzFjUU85a0F2MFhzRG91ZkYwdk5MUXBVV2o5YVVFcGwwcmFH?=
 =?utf-8?B?TmtzN0xuZTFjZGkxeE9qNnRTd0plM1ZXbEpWUWt3cFFSWnNCOUdsTk1DSzYx?=
 =?utf-8?B?blZNVUp1V3A1ZGhWRjlMYXVaT1VFUTBnMnIrQ1RXaFc5RXp2Yk1FR2VYT29p?=
 =?utf-8?B?WndFTVhEVDRGNjZEc3Z0STFXSXpWVkh0MUNEdzJ6SFhYYTJyalBvbDhsSzRh?=
 =?utf-8?Q?vEwRxhheIjvPFloR5Gt5zyB3V?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	U0BvmOmwVIzntOgS4M3F/hs1fk5iVwzA/WJXSFx2BUo90JxgHXAI9JB2mL8NBpoTzjYT01Ve9a67ye9+7QugsdzWFUndz9qMm7ynoAbQUEwGpF3LQTJLq8E0dfK8DGzTNsJuS3tqbyJiSe8+zO2IdbDEw+nC7fkt1G/1buVvPAEDBTyNssIc+VdWwvfycuRbWmmgK8yaHdxCBn/02nSZDAWu6S0ZoxQhxOg7/+rHgKQUoDMvnbRm01fXU1Ei8DIy1ZgLciGCsObHNWmwR9K2dYqqXsHYd3AEKzx9L8X+s42PJn1fNVCJZzLhV9ZK/kCX+jeh5VGf50s27radHA1h9Xw9FokihUU+aeRTnNaehInfEiVDXCEICDN6ejwRuLhZ1tsyR4mTH0l9cWEZmKd4JW7kwIfVR8EM6kIxy/BVhU8s8AaomgGAWfevTQ3EOvJMi5bpnrV80m/1snKeBeOfZm534kcNJpf/d4Ug7hw2DxHLAauSoj99I3cGhZ5OQGvjqIX5R+oAUkI5Dj7aqMxLxjZ/8BkAZP0SFS28rkR7svZBiiKJIXRoXE9hYT+ptb5KDk8ulvFFA2Cak1hwwG7A5Vw2wyFPwXR3mDCv/T9ShWsab1Y7TbIub8g07OwoNBpwqZV+wwcP5yCFm3vJlbQ2GB8Fu7x0ShoHbOsZ7XRCJBUaG7AVojFxjSpa3Si/kCe49Rux7cWXzxH88d+RlaYXIDvLbLLx7DuOAMPtjhA46azMPIlX4s+Yz41mmsq89ts3MPvay2pReTQexO5LkcPjSihYr0t7OXiEObVmlzqIhc2Ytmc3mDgR+6w8v4KvDmRcPXduIBrXO6Unwtz2tEzoI/PV6fsSdlqYU+qBdoAxBrGERnj3gXeH+5AE+wtOlHghFipGzQaPdZU1H8t4MaBM+w==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a2f23164-7e02-4ed7-3b1d-08dbba86f68e
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 09:41:42.9561
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: HKOOhvBfDh6CXebRn/6EYGl8+nizFFbL2dt/juLUYHcc3TBIfA3B17f7hEuwq1YON9zEM4YfifiG7A9Zj8qjRA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5486

On Wed, Sep 20, 2023 at 03:16:00PM -0400, Stewart Hildebrand wrote:
> On 9/19/23 11:39, Roger Pau Monné wrote:
> > On Tue, Aug 29, 2023 at 11:19:42PM +0000, Volodymyr Babchuk wrote:
> >> diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
> >> index 1edc7f1e91..545a27796e 100644
> >> --- a/xen/arch/x86/hvm/vmx/vmx.c
> >> +++ b/xen/arch/x86/hvm/vmx/vmx.c
> >> @@ -413,8 +413,6 @@ static int cf_check vmx_pi_update_irte(const struct vcpu *v,
> >>
> >>      spin_unlock_irq(&desc->lock);
> >>
> >> -    ASSERT(pcidevs_locked());
> >> -
> > 
> > Hm, this removal seems dubious, same with some of the removal below.
> > And I don't see any comment in the log message as to why removing the
> > asserts here and in __pci_enable_msi{,x}(), pci_prepare_msix() is
> > safe.
> > 
> 
> I suspect we may want:
> 
>     ASSERT(pcidevs_locked() || rw_is_locked(&d->pci_lock));
> 
> However, we don't have d. Using v->domain here is tricky because v may be NULL. How about passing struct domain *d as an arg to {hvm,vmx}_pi_update_irte()? Or ensuring that all callers pass a valid v?

I guess there was a reason to expect a path with v == NULL, but would
need to go trough the call paths that lead here.

Another option might be use use:

ASSERT(pcidevs_locked() || (v && rw_is_locked(&v->domain->pci_lock)));

But we would need some understanding of the call site of
vmx_pi_update_irte().

> 
> >>      return iommu_update_ire_from_msi(msi_desc, &msi_desc->msg);
> >>
> >>   unlock_out:
> >> diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
> >> index d0bf63df1d..ba2963b7d2 100644
> >> --- a/xen/arch/x86/msi.c
> >> +++ b/xen/arch/x86/msi.c
> >> @@ -613,7 +613,7 @@ static int msi_capability_init(struct pci_dev *dev,
> >>      u8 slot = PCI_SLOT(dev->devfn);
> >>      u8 func = PCI_FUNC(dev->devfn);
> >>
> >> -    ASSERT(pcidevs_locked());
> >> +    ASSERT(pcidevs_locked() || rw_is_locked(&dev->domain->pci_lock));
> >>      pos = pci_find_cap_offset(seg, bus, slot, func, PCI_CAP_ID_MSI);
> >>      if ( !pos )
> >>          return -ENODEV;
> >> @@ -783,7 +783,7 @@ static int msix_capability_init(struct pci_dev *dev,
> >>      if ( !pos )
> >>          return -ENODEV;
> >>
> >> -    ASSERT(pcidevs_locked());
> >> +    ASSERT(pcidevs_locked() || rw_is_locked(&dev->domain->pci_lock));
> >>
> >>      control = pci_conf_read16(dev->sbdf, msix_control_reg(pos));
> >>      /*
> >> @@ -1000,7 +1000,6 @@ static int __pci_enable_msi(struct msi_info *msi, struct msi_desc **desc)
> >>      struct pci_dev *pdev;
> >>      struct msi_desc *old_desc;
> >>
> >> -    ASSERT(pcidevs_locked());
> >>      pdev = pci_get_pdev(NULL, msi->sbdf);
> >>      if ( !pdev )
> >>          return -ENODEV;
> 
> I think we can move the ASSERT here, after we obtain the pdev. Then we can add the pdev->domain->pci_lock check into the mix:
> 
>     ASSERT(pcidevs_locked() || rw_is_locked(&pdev->domain->pci_lock));

Hm, it would be better to perform the ASSERT before possibly accessing
the pdev list without holding any locks, but it's just an assert so
that might be the best option.

> 
> >> @@ -1055,7 +1054,6 @@ static int __pci_enable_msix(struct msi_info *msi, struct msi_desc **desc)
> >>      struct pci_dev *pdev;
> >>      struct msi_desc *old_desc;
> >>
> >> -    ASSERT(pcidevs_locked());
> >>      pdev = pci_get_pdev(NULL, msi->sbdf);
> >>      if ( !pdev || !pdev->msix )
> >>          return -ENODEV;
> 
> Same here
> 
> >> @@ -1170,8 +1168,6 @@ int pci_prepare_msix(u16 seg, u8 bus, u8 devfn, bool off)
> >>   */
> >>  int pci_enable_msi(struct msi_info *msi, struct msi_desc **desc)
> >>  {
> >> -    ASSERT(pcidevs_locked());
> >> -
> 
> This removal inside pci_enable_msi() may be okay if both __pci_enable_msi() and __pci_enable_msix() have an appropriate ASSERT.

Hm, yes, that's likely fine, but would want a small mention in the
commit message.

> >>      if ( !use_msi )
> >>          return -EPERM;
> >>
> 
> Related: in xen/drivers/passthrough/pci.c:pci_get_pdev() I run into an ASSERT with a PVH dom0:
> 
> (XEN) Assertion 'd || pcidevs_locked()' failed at drivers/passthrough/pci.c:534
> (XEN) ----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
> ...
> (XEN) Xen call trace:
> (XEN)    [<ffff82d040285a3b>] R pci_get_pdev+0x4c/0xab
> (XEN)    [<ffff82d04034742e>] F arch/x86/msi.c#__pci_enable_msi+0x1d/0xb4
> (XEN)    [<ffff82d0403477b5>] F pci_enable_msi+0x20/0x28
> (XEN)    [<ffff82d04034cfa4>] F map_domain_pirq+0x2b0/0x718
> (XEN)    [<ffff82d04034e37c>] F allocate_and_map_msi_pirq+0xff/0x26b
> (XEN)    [<ffff82d0402e088b>] F arch/x86/hvm/vmsi.c#vpci_msi_enable+0x53/0x9d
> (XEN)    [<ffff82d0402e19d5>] F vpci_msi_arch_enable+0x36/0x6c
> (XEN)    [<ffff82d04026f49d>] F drivers/vpci/msi.c#control_write+0x71/0x114
> (XEN)    [<ffff82d04026d050>] F drivers/vpci/vpci.c#vpci_write_helper+0x6f/0x7c
> (XEN)    [<ffff82d04026de39>] F vpci_write+0x249/0x2f9
> ...
> 
> With the patch applied, it's valid to call pci_get_pdev() with only d->pci_lock held, so the ASSERT in pci_get_pdev() needs to be reworked too. Inside pci_get_pdev(), d may be null, so we can't easily add || rw_is_locked(&d->pci_lock) into the ASSERT. Instead I propose something like the following, which resolves the observed assertion failure:
> 
> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
> index 572643abe412..2b4ad804510c 100644
> --- a/xen/drivers/passthrough/pci.c
> +++ b/xen/drivers/passthrough/pci.c
> @@ -531,8 +531,6 @@ struct pci_dev *pci_get_pdev(const struct domain *d, pci_sbdf_t sbdf)
>  {
>      struct pci_dev *pdev;
> 
> -    ASSERT(d || pcidevs_locked());
> -
>      /*
>       * The hardware domain owns the majority of the devices in the system.
>       * When there are multiple segments, traversing the per-segment list is
> @@ -549,12 +547,18 @@ struct pci_dev *pci_get_pdev(const struct domain *d, pci_sbdf_t sbdf)
>          list_for_each_entry ( pdev, &pseg->alldevs_list, alldevs_list )
>              if ( pdev->sbdf.bdf == sbdf.bdf &&
>                   (!d || pdev->domain == d) )
> +            {
> +                ASSERT(d || pcidevs_locked() || rw_is_locked(&pdev->domain->pci_lock));

Hm, strictly speaking iterating over the pseg list while just holding
the d->pci_lock is not safe, we should instead iterate over d->pdev_list.

We might have to slightly modify pci_enable_msi() to take a pdev so
that the search can be done by the caller (holding the right lock).

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 09:48:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 09:48:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606254.944027 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjGIP-0001qG-BZ; Thu, 21 Sep 2023 09:48:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606254.944027; Thu, 21 Sep 2023 09:48:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjGIP-0001q9-8f; Thu, 21 Sep 2023 09:48:29 +0000
Received: by outflank-mailman (input) for mailman id 606254;
 Thu, 21 Sep 2023 09:48:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4TUc=FF=suse.com=nik.borisov@srs-se1.protection.inumbo.net>)
 id 1qjGIN-0001oZ-Dp
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 09:48:27 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0604.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::604])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 018d448f-5864-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 11:48:26 +0200 (CEST)
Received: from PA4PR04MB7790.eurprd04.prod.outlook.com (2603:10a6:102:cc::8)
 by AS8PR04MB8372.eurprd04.prod.outlook.com (2603:10a6:20b:3b3::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Thu, 21 Sep
 2023 09:48:20 +0000
Received: from PA4PR04MB7790.eurprd04.prod.outlook.com
 ([fe80::edd3:f00:3088:6e61]) by PA4PR04MB7790.eurprd04.prod.outlook.com
 ([fe80::edd3:f00:3088:6e61%4]) with mapi id 15.20.6813.017; Thu, 21 Sep 2023
 09:48:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 018d448f-5864-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Cz4aKIUi+IRUoFZMpKUTnvuhfrHrua6gv2KuTZaluP+m5/8MV5mnp8f/IozduEPs7PDZienKFryI93yiZZQcvrSNbpgSNkOuz+rhk09uq4BF77gqqglEmVv0UK2YqOoMbIS1zED4dFdJdNyLu0M+XPQUkvKg0bxWCh+mh/4H7KD7FW6Bo712DOOld/AJoCjZiRe9Gxx31tN2kJoIUNo8V5evgcJFzHiHpkMyf1W9XicfETvxYIbo8RefgLt+FbwcMLbgMcY7d0gYh2siIYD+cxogx8Sf0XG05czv9bRlhi/9oX7HJxDRo0lg8hEtoKKMW4VcDir2nK6nimCOvtmWkg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=tteY01czoQxqLsrAQIn/17VJLh97CKwm9ZSf1j+VPDg=;
 b=cO+U7Hig+ztMeshLsvKEewwoT1sJLvm1bnUJSfGYaNZ/FNbotfrYVkjKDMY+Y3K8BdQqdfuKC7TRsQvpf1DalotHTff1TStDd84nNE3If2Ye9Cff06Y1ijUEe3OkujDfMgM130fMCcZ4ZQWhwOkS3LjDIoOJPlI82+PEVYfBKMb0vkopNSeblwni5NVeO47B2KcijGVHrfiAi4iLa8O4fgawAElYzAae+/kS80r+agf+BYSLjGgulxfEoKMFP5CARFJpg1SU3tQILynLctAENLw+lsBXf4GXy0S3BE1wHO2MD8wjVfLr3yD8cKCmz0DLBxkW5+dTyucbwH4KIfct3A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=tteY01czoQxqLsrAQIn/17VJLh97CKwm9ZSf1j+VPDg=;
 b=KIY0oPafEbWXSbW20fqs+W0S03S5/Ek6AOIeC6VTnBSAehnTM8aKc2Ghkae5Z2XJ68hFskOq7cDnpMDIk1qO+8R+dLfNiAevNJVKMA0CKIo/EiknUYIcniGirUzUkmJcOU3NcMM4KIQZIH52t9HhMdexpqkJOyRovrwiiIdF8jHxpYFMX9nXosNkOeWvEDbHqUeb3dfLO3B7Gra8E4b3G7L4oLBiEvpAEH+FtUANIkLal4oYoAcPXXKB5FwWz7X/ykMgUN8wSYY390ri8kB1iZb2Q30Bha0BwQHfVYas6LthO5aKJylvEdUOX8NnZoNONovBDbWbBhoVmzWPbGx4JQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <22921663-0e5e-58c0-c6c8-c45f991790ea@suse.com>
Date: Thu, 21 Sep 2023 12:48:17 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Content-Language: en-US
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 andrew.cooper3@citrix.com, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-29-xin3.li@intel.com>
From: Nikolay Borisov <nik.borisov@suse.com>
Subject: Re: [PATCH v10 28/38] x86/fred: FRED entry/exit and dispatch code
In-Reply-To: <20230914044805.301390-29-xin3.li@intel.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: VI1PR0902CA0059.eurprd09.prod.outlook.com
 (2603:10a6:802:1::48) To PA4PR04MB7790.eurprd04.prod.outlook.com
 (2603:10a6:102:cc::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: PA4PR04MB7790:EE_|AS8PR04MB8372:EE_
X-MS-Office365-Filtering-Correlation-Id: 8b1b8fa2-cbbb-4088-1fd6-08dbba87e39a
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KOMQkc9HYTkoe2RETAgiqf0V7BcqNeddf3VQGum57sbjxkxQeg9qRXou0QiB5a15nOR84haqA33XxrHzerCvYRQI4BD36Wk3Nf0B7aAAFaCAy5Jdls37EnIajbA8+7wO4b+bavf1Gsc+VHC0bM2YtNCNyHh2O7Aqkl3erfRdP9QIf6OxgxpupnKDsHaUcSjR6STOvE4IXyUltkujmfaDZPLTVGaMnq1p2u1D6oBwbcKm13uiwIAkPI/G+c8M++P3asPWbEEddLZ7LSkHl5e8Ka8llKUUfngBtvPYKIath33vx/vWChMluX0Nc75Jn0Li5MLPAL39q71EfDyjaATVy4S/gA1uDBWCU+LEY4XRuN9z35BSxx5t8haxxl+2dXWaUJKb2VvDiQQyfDIQTT/ezOo9HphFxQPrQt2KQ48+VWudhj7815NUa8yZv7KyLQ9AJFc8uIut4auAmd99/F9QiJSMsjtyp09GyHN8izQSfwiVHcL5CK6uK5Fp92RYyW4lPuZwCc615hH9557g8uuK/QpthkFkWOU4DA9D5wE4qXASrvw/fQnMvLbiM+jAS88zqs3ciVaTw8vIXd5hp/m0bMdUSvkTWfaMSPDc3wRvRZc1bZUBqrL8AoigOg+OUzNvaQvRJN2/AQ7jE3li125iWQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PA4PR04MB7790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(136003)(396003)(39860400002)(366004)(451199024)(1800799009)(186009)(26005)(2616005)(31686004)(2906002)(5660300002)(83380400001)(8936002)(316002)(31696002)(66476007)(7416002)(66556008)(4326008)(8676002)(41300700001)(86362001)(38100700002)(966005)(478600001)(36756003)(66946007)(6506007)(6486002)(6666004)(6512007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Y2JnV01GSm5Zb1dvbGQ3Q3FrWUhWV1lOeThvSUNmM1dsMUVqbVhVRDZaaWdl?=
 =?utf-8?B?MjhhYWVJNjV0RXRtT3VZc1p1WFN5RWdRWStPL01laDFQZlY2MHAyemozU2Fa?=
 =?utf-8?B?L0w2anJMZERzbWNSQkZyaVp6V3Jxd3VLVVFoYlk5QWVTcWF6MmNFR2xVckR2?=
 =?utf-8?B?Zitvc0NGQnpVc0NSZmdQbXMvcEpWb0tmQy9ZRDZObFJWeGwvcHFBM21QQ00z?=
 =?utf-8?B?aWFaU3JoTEdhVGJpMnBvbFhrcEIwczhGcDhyN0lVa1Nhajk0YmprK0ZzYVNW?=
 =?utf-8?B?aS9uS0tmcXZGK1VlV1FqcWZ2MEoyUVdxZFNPcHlKV3FZLzl6djl5V21pYWZt?=
 =?utf-8?B?a2tSZGRQMFEvLy9MQUl4bXRuUU1saGFta1daNU5FMGJsMDhoMHhPUlc3N0w0?=
 =?utf-8?B?R0ZPeEtLR2pzek53Z2s1WlJvM1Ara3B4Q0g1OVdOQ3VqeFp4MW96SmZjNDR3?=
 =?utf-8?B?NE1xeFN6czM1Q1ZkMnBGQWRnZDlTd3h0QmJmSGJCWnluZDNwSjhabVpWaStV?=
 =?utf-8?B?bm1XZkNXU0k2aDFPcDNLRmowa3psempVMVJvTlJUOGs2T2RoVjdGaG1rdzFI?=
 =?utf-8?B?dW1waTZuczFJaFRUUjcvWkpCWnBqOHpFREtNOVpFTk05QVIxRHVQczFGUnNK?=
 =?utf-8?B?a2RpMklvOHF2VDE1aXZJb3JKY2FqSUN0cnZtR3J4SkJGU0VnYWU1WmpyTmYv?=
 =?utf-8?B?QWY2UE5GZDZHQ01ydFkzR0E0UDQ4UzQybFdSM1V0Qjl5T3JIMGM1VkNERWp4?=
 =?utf-8?B?NXFrTklDUjloZUJpMlpyY0ppTVhpTFYxS3BmUXVHVHV6ZUI1cmNDNiswQXpT?=
 =?utf-8?B?L3hDSUtUMGs4TzNPenNLSk55QmFTZllBTWhCTzU1SW90ejVpeE1ZbTNQTzN1?=
 =?utf-8?B?aHU0RmZXejFwNHdObnBDSzdXTnVUN1NyZUsrOEo5NzBsTm43WDVocE5URnc2?=
 =?utf-8?B?Z1pmcnlML0t3R2ErNXU2VFdUT1JqNUNYOUVZbXJSc0Qzb1o1cWQrMFcvelE0?=
 =?utf-8?B?RjlMbHd5WlV1SHVhMWN0NjRkdVB6UE8renJ1Yk1veDRQODR3V3ZNR0Rxa2Q3?=
 =?utf-8?B?K3VYSENvMm8zclVoME53Q21lU1lVWW9jaE1GNThOQUZ3M0ZPQ1Q1VjFIM2tr?=
 =?utf-8?B?cVl1dEhPOWcvU25oblQ3SER2QXlRZDVFY1EwMDBVNmF0V2paNjF6cm9sNnZ2?=
 =?utf-8?B?aXluakw1WUJGd0RrVnM0WjBhWmhaRzRCaWxGK1BmZDAzV1pzUGhnVExZcGZk?=
 =?utf-8?B?dng0c1J0VmZSRU83N0QwTGFuaWsvMlZmNHlaK3lQTjVaZGU0YTcrS1VaNXRo?=
 =?utf-8?B?SE5UQ3RRMnJwREVid1VuY0grdnVkbXdOOHNOeW5DK0RIaCthVWt3Ym8zbjlL?=
 =?utf-8?B?ajVmSzFOTG1xcVN5RStkQ1dmVTl6VmlYRFpQYTZ2dVRXL3dUTXF2VCsrbVRM?=
 =?utf-8?B?TVlVUWcvRXl2TjI2RTJzaGhMK2g3cllvcVRxcHEyc25QRzg1dnlkeWVuOG90?=
 =?utf-8?B?anFTQTdXVFpsdDNPWi9nNGQ4QkxiL1Z4YXVGdUgwK2dTaWU2cnlaVENLcHVw?=
 =?utf-8?B?K1dtd3Rrb2pQbTNLcGJ2QkN3ZzB2cXdUTDZLWCtVSTVIMG1PU3RpK0VycVBr?=
 =?utf-8?B?a24xSFl1M3lqWUZjbTNFT0VscFpIZ2lQVUUvbVIzalo3VWZIR1NtVXhvdThQ?=
 =?utf-8?B?NmhtVnZzOG43VldQNHJzbkhHQmQwMm1tTENYUmpjb2diTXk5ZzZZWnVSME1r?=
 =?utf-8?B?TUc5QmdYcklDUFNTYVlBM3VsdHFNUldmTElaL3V0MzRpNUdSSU1JRFh3N1Zl?=
 =?utf-8?B?R2lkdFRPdERhaWhzQzBsYTdGV3AvTURBeWdIb3FjUDRCUFNDOVZzcUpHb3hS?=
 =?utf-8?B?bFJHU0NqZXkzZWd6cHc2WTlnQjZESlZlYVA4NXBKcHNpcDJiQWU2NEZOaWRP?=
 =?utf-8?B?dk1ydk1rQ29ubmhkeGxGbkRtWmRxczdKOHU0TzJCc3gwRXlzek1DNmIxaHlB?=
 =?utf-8?B?Z2RsYXVUdVFFWWIyL1huSG5EZWhud1VYekhWdjBIdzVNRW9rci82NzhNY2xH?=
 =?utf-8?B?bFRNMFhaZlYzVk42akRoZTB4OVcvcWNrdVNoOEpPbVRGd2ViVDRDSnRoQkk4?=
 =?utf-8?Q?MCItzrkc8EjMAQoSeb188ZAIV?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8b1b8fa2-cbbb-4088-1fd6-08dbba87e39a
X-MS-Exchange-CrossTenant-AuthSource: PA4PR04MB7790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 09:48:20.6861
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: tfHyb3jA4LxAPzHm6Ad2rv1ExUj8mdshAfWKSYyD60NtpHZTrRXvvnzMsEf1JtcdG4UChwFSElA1TxfQEDXQgA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8372



On 14.09.23 г. 7:47 ч., Xin Li wrote:
> From: "H. Peter Anvin (Intel)" <hpa@zytor.com>
> 
> The code to actually handle kernel and event entry/exit using
> FRED. It is split up into two files thus:
> 
> - entry_64_fred.S contains the actual entrypoints and exit code, and
>    saves and restores registers.
> - entry_fred.c contains the two-level event dispatch code for FRED.
>    The first-level dispatch is on the event type, and the second-level
>    is on the event vector.
> 
> Originally-by: Megha Dey <megha.dey@intel.com>
> Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
> Co-developed-by: Xin Li <xin3.li@intel.com>
> Tested-by: Shan Kang <shan.kang@intel.com>
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
> Signed-off-by: Xin Li <xin3.li@intel.com>
> ---
> 
> Changes since v9:
> * Don't use jump tables, indirect jumps are expensive (Thomas Gleixner).
> * Except NMI/#DB/#MCE, FRED really can share the exception handlers
>    with IDT (Thomas Gleixner).
> * Avoid the sysvec_* idt_entry muck, do it at a central place, reuse code
>    instead of blindly copying it, which breaks the performance optimized
>    sysvec entries like reschedule_ipi (Thomas Gleixner).
> * Add asm_ prefix to FRED asm entry points (Thomas Gleixner).
> 
> Changes since v8:
> * Don't do syscall early out in fred_entry_from_user() before there are
>    proper performance numbers and justifications (Thomas Gleixner).
> * Add the control exception handler to the FRED exception handler table
>    (Thomas Gleixner).
> * Add ENDBR to the FRED_ENTER asm macro.
> * Reflect the FRED spec 5.0 change that ERETS and ERETU add 8 to %rsp
>    before popping the return context from the stack.
> 
> Changes since v1:
> * Initialize a FRED exception handler to fred_bad_event() instead of NULL
>    if no FRED handler defined for an exception vector (Peter Zijlstra).
> * Push calling irqentry_{enter,exit}() and instrumentation_{begin,end}()
>    down into individual FRED exception handlers, instead of in the dispatch
>    framework (Peter Zijlstra).
> ---
>   arch/x86/entry/Makefile               |   5 +-
>   arch/x86/entry/entry_64_fred.S        |  52 ++++++
>   arch/x86/entry/entry_fred.c           | 230 ++++++++++++++++++++++++++
>   arch/x86/include/asm/asm-prototypes.h |   1 +
>   arch/x86/include/asm/fred.h           |   6 +
>   5 files changed, 293 insertions(+), 1 deletion(-)
>   create mode 100644 arch/x86/entry/entry_64_fred.S
>   create mode 100644 arch/x86/entry/entry_fred.c
>


<snip>

> +
> +static noinstr void fred_intx(struct pt_regs *regs)
> +{
> +	switch (regs->fred_ss.vector) {
> +	/* INT0 */
> +	case X86_TRAP_OF:
> +		exc_overflow(regs);
> +		return;
> +
> +	/* INT3 */
> +	case X86_TRAP_BP:
> +		exc_int3(regs);
> +		return;
> +
> +	/* INT80 */
> +	case IA32_SYSCALL_VECTOR:
> +		if (likely(IS_ENABLED(CONFIG_IA32_EMULATION))) {

Since future kernels will support boottime toggling of whether 32bit 
syscall interface should be enabled or not as per:
https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?h=x86/entry&id=1da5c9bc119d3a749b519596b93f9b2667e93c4a

It will make more sense to replace this with ia32_enabled() invocation. 
I guess this could be done as a follow-up patch based on when this is 
merged as the ia32_enbaled changes are going to be merged in 6.7.


> +			/* Save the syscall number */
> +			regs->orig_ax = regs->ax;
> +			regs->ax = -ENOSYS;
> +			do_int80_syscall_32(regs);
> +			return;
> +		}
> +		fallthrough;
> +
> +	default:
> +		exc_general_protection(regs, 0);
> +		return;
> +	}
> +}
> +
> +static __always_inline void fred_other(struct pt_regs *regs)
> +{
> +	/* The compiler can fold these conditions into a single test */
> +	if (likely(regs->fred_ss.vector == FRED_SYSCALL && regs->fred_ss.lm)) {
> +		regs->orig_ax = regs->ax;
> +		regs->ax = -ENOSYS;
> +		do_syscall_64(regs, regs->orig_ax);
> +		return;
> +	} else if (likely(IS_ENABLED(CONFIG_IA32_EMULATION) &&

Ditto

> +			  regs->fred_ss.vector == FRED_SYSENTER &&
> +			  !regs->fred_ss.lm)) {
> +		regs->orig_ax = regs->ax;
> +		regs->ax = -ENOSYS;
> +		do_fast_syscall_32(regs);
> +		return;
> +	} else {
> +		exc_invalid_op(regs);
> +		return;
> +	}
> +}
> +

<snip>


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 10:04:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 10:04:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606261.944037 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjGXJ-0006nV-Nj; Thu, 21 Sep 2023 10:03:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606261.944037; Thu, 21 Sep 2023 10:03:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjGXJ-0006nO-Jq; Thu, 21 Sep 2023 10:03:53 +0000
Received: by outflank-mailman (input) for mailman id 606261;
 Thu, 21 Sep 2023 10:03:52 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qjGXI-0006nI-Cz
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 10:03:52 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qjGXG-0003FZ-5h; Thu, 21 Sep 2023 10:03:50 +0000
Received: from [54.239.6.189] (helo=[192.168.8.60])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qjGXF-0003Zm-V3; Thu, 21 Sep 2023 10:03:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=eR/8ui2NxiU3kMNySF32gy/gNmcgcYZK6nFbLOvgmNc=; b=GvNdfBM/dDhnVpQCdCMMfo063C
	Bhnx8v1YofOAG29osFpsrhyl66h/9cnyVNvoqe24k9iciVYmfWSVuJpRTaF6MhnMQrtBpONE9Z1Ei
	3LLa0+UNwZskfVY3gxlXU2VQiiCt8RCOVkFrjSFezugCKcqU4aOCC96z2J5uDp1u9oWY=;
Message-ID: <c9fedc61-ab24-4d3e-8104-dd2280cfaddf@xen.org>
Date: Thu, 21 Sep 2023 11:03:47 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH for-4.18 v2] tools/light: Revoke permissions when a PCI
 detach for HVM domain
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
 Julien Grall <jgrall@amazon.com>, Wei Liu <wl@xen.org>,
 Anthony PERARD <anthony.perard@citrix.com>, Juergen Gross <jgross@suse.com>
References: <20230915125204.22719-1-julien@xen.org>
 <B61F59E5-C5E5-482E-8F03-3472F976ACDC@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <B61F59E5-C5E5-482E-8F03-3472F976ACDC@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

On 16/09/2023 01:11, Henry Wang wrote:
>> On Sep 15, 2023, at 20:52, Julien Grall <julien@xen.org> wrote:
>>
>> From: Julien Grall <jgrall@amazon.com>
>>
>> Currently, libxl will grant IOMEM, I/O port and IRQ permissions when
>> a PCI is attached (see pci_add_dm_done()) for all domain types. However,
>> the permissions are only revoked for non-HVM domain (see do_pci_remove()).
>>
>> This means that HVM domains will be left with extra permissions. While
>> this look bad on the paper, the IRQ permissions should be revoked
>> when the Device Model call xc_physdev_unmap_pirq() and such domain
>> cannot directly mapped I/O port and IOMEM regions. Instead, this has to
>> be done by a Device Model.
>>
>> The Device Model can only run in dom0 or PV stubdomain (upstream libxl
>> doesn't have support for HVM/PVH stubdomain).
>>
>> For PV/PVH stubdomain, the permission are properly revoked, so there is
>> no security concern.
>>
>> This leaves dom0. There are two cases:
>>   1) Privileged: Anyone gaining access to the Device Model would already
>>      have large control on the host.
>>   2) Deprivileged: PCI passthrough require PHYSDEV operations which
>>      are not accessible when the Device Model is restricted.
>>
>> So overall, it is believed that the extra permissions cannot be exploited.
>>
>> Rework the code so the permissions are all removed for HVM domains.
>> This needs to happen after the QEMU has detached the device. So
>> the revocation is now moved to pci_remove_detached().
>>
>> Also add a comment on top of the error message when the PIRQ cannot
>> be unbind to explain this could be a spurious error as QEMU may have
>> already done it.
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
> 
> As in discussion in v1, it is agreed that this patch should be included in
> 4.18, although technically my release-ack tag should be effective after
> code freeze, I am still providing the tag to avoid possible confusion:
> 
> Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Thanks. I have committed the patch with Anthony's reviewed-by tag.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 10:08:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 10:08:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606268.944046 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjGbj-0007rZ-7x; Thu, 21 Sep 2023 10:08:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606268.944046; Thu, 21 Sep 2023 10:08:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjGbj-0007rS-5E; Thu, 21 Sep 2023 10:08:27 +0000
Received: by outflank-mailman (input) for mailman id 606268;
 Thu, 21 Sep 2023 10:08:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=r6la=FF=linutronix.de=tglx@srs-se1.protection.inumbo.net>)
 id 1qjGbh-0007rI-Oj
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 10:08:26 +0000
Received: from galois.linutronix.de (galois.linutronix.de [193.142.43.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ccec859b-5866-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 12:08:24 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ccec859b-5866-11ee-878a-cb3800f73035
From: Thomas Gleixner <tglx@linutronix.de>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020; t=1695290903;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=MGuV725+A52UkxEuSgzeQeAhaGDz2ANft+qmFiacDG8=;
	b=Uc1XkSaloHBlxYQ1zN6hh9geAvtQDrA6rzrrOm0XEDhASCCuiOJd0ZUQDVk5pu7smVlZfM
	YcyVj5MIlW6dCw0gZAVps0Rws2yHAHtHT3yI0KmpTXMdgnz/3Z1IfNIMpPSXeG2C1xVIZa
	RVC8GvYWzw2wNPbssRcVWZprhIJD5GCzDZQZel4mnlA7NNIdTJN8FZXnfD5refPia6Z4Ep
	NvWaLlqsVp24Afci/BqY4B8bDTeZUFFOfG/ZbjsHOCaUcJSGcTEfuO29KH+o6OntuQsdt1
	Yeu0DTomo1WSKteeMcOT97KH0jVECo7ht6Xx698kxrEZHO2MRgqhLwxglLtcag==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020e; t=1695290903;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=MGuV725+A52UkxEuSgzeQeAhaGDz2ANft+qmFiacDG8=;
	b=YhxFLYB1hUEgCK9ZzqoixCOcdsJ9EkBa/RsLR3qBRdXVZTcXsEUrSFZvzIKcv5QclewR1g
	FaT5gQjP7YRGAsBA==
To: Nikolay Borisov <nik.borisov@suse.com>, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, hpa@zytor.com, luto@kernel.org, pbonzini@redhat.com,
 seanjc@google.com, peterz@infradead.org, jgross@suse.com,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, andrew.cooper3@citrix.com,
 jiangshanlai@gmail.com
Subject: Re: [PATCH v10 28/38] x86/fred: FRED entry/exit and dispatch code
In-Reply-To: <22921663-0e5e-58c0-c6c8-c45f991790ea@suse.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-29-xin3.li@intel.com>
 <22921663-0e5e-58c0-c6c8-c45f991790ea@suse.com>
Date: Thu, 21 Sep 2023 12:08:23 +0200
Message-ID: <871qerj0tk.ffs@tglx>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 21 2023 at 12:48, Nikolay Borisov wrote:
> On 14.09.23 =D0=B3. 7:47 =D1=87., Xin Li wrote:
>> +
>> +	/* INT80 */
>> +	case IA32_SYSCALL_VECTOR:
>> +		if (likely(IS_ENABLED(CONFIG_IA32_EMULATION))) {
>
> Since future kernels will support boottime toggling of whether 32bit=20
> syscall interface should be enabled or not as per:
> https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?h=3Dx=
86/entry&id=3D1da5c9bc119d3a749b519596b93f9b2667e93c4a
>
> It will make more sense to replace this with ia32_enabled() invocation.=20
> I guess this could be done as a follow-up patch based on when this is=20
> merged as the ia32_enbaled changes are going to be merged in 6.7.

The simplest solution is to rebase the series to tip x86/entry and just
do it right away :)


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 10:31:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 10:31:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606273.944057 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjGxP-00061I-0B; Thu, 21 Sep 2023 10:30:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606273.944057; Thu, 21 Sep 2023 10:30:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjGxO-00061B-SV; Thu, 21 Sep 2023 10:30:50 +0000
Received: by outflank-mailman (input) for mailman id 606273;
 Thu, 21 Sep 2023 10:30:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=95bz=FF=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qjGxN-000615-Da
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 10:30:49 +0000
Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com
 [2a00:1450:4864:20::333])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ecd6fe9e-5869-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 12:30:46 +0200 (CEST)
Received: by mail-wm1-x333.google.com with SMTP id
 5b1f17b1804b1-401187f8071so4687665e9.0
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 03:30:46 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 y12-20020adffa4c000000b0031f5f0d0be0sm1367459wrr.31.2023.09.21.03.30.45
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 21 Sep 2023 03:30:45 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ecd6fe9e-5869-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695292246; x=1695897046; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=Cx8f/wRxGT2iXMS9T3APWIU29IB93CmsXP0o+iTo1/M=;
        b=nKSVrxp5dVPm2a/h1RWPKrvI1Un6yOcR2M75cZetZ7Eg/0JA+SgwqOd2ZL7dVqMb3u
         4IkckSmNpyNtkg/CsVf/wTnC29GqYQX9nr3+ipWVrnt3SSU8AQ7DLGNwCHQqVoDGPnyK
         lIBMURl9B6a+hmTbgWkPJMeXWNMCFMiQrVMwE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695292246; x=1695897046;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=Cx8f/wRxGT2iXMS9T3APWIU29IB93CmsXP0o+iTo1/M=;
        b=b5B+rBuFU17JsMWoxuCYKuxHLruv68oNWJFrUgGV2uJiHwOZ/b9CT5SCNlBeF1Soo6
         WljT0MgQzYCHMEtTOsY1uBVflD+BQ+NUGbo0zAvFY9QDu2uO8VoDM5FtUoMDMvelXPNN
         HT/DJwZ3iweyPr6EYYoSMERvGfacoLMcfIeFkEp/x7Ruy19Dfzg5rq6q9/rbKK3J3XNa
         arsL3IXrlYEQiL/zdiph3y+MQedNgBeFmZReGt1ZlZS1H8U+PE5n/LFT2/0UN7x5oJyr
         ena9pTlHYk4t5oeT12iVb9Rdhg/aLTjY581zR/rSxmJtKWPhhFVa23znKXuTSd2J2XL0
         eO6A==
X-Gm-Message-State: AOJu0YzNC2f70oYrBt/I4jetl0IoaOFvyabuAhHaCGrnvs0meLVLXRqd
	yCXamU9bVjZhAlLKCu0zwIFnPA==
X-Google-Smtp-Source: AGHT+IE6GyFgp3lu5F0dt009bOw8H7PtHiCdsBOcft0Dcfq01nTjnR0ivyTMMocewgLbt26c5E6Dnw==
X-Received: by 2002:a05:600c:3011:b0:405:3622:382c with SMTP id j17-20020a05600c301100b004053622382cmr842860wmh.17.1695292246153;
        Thu, 21 Sep 2023 03:30:46 -0700 (PDT)
Message-ID: <842864d5-8b31-8329-7929-27453813ffd0@citrix.com>
Date: Thu, 21 Sep 2023 11:30:45 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [XEN PATCH v3 4/4] README: remove old note about the build
 system's python expectation
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?=
 <marmarek@invisiblethingslab.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, xen-devel@lists.xenproject.org,
 Javi Merino <javi.merino@cloud.com>
References: <cover.1695104399.git.javi.merino@cloud.com>
 <83e6857f16eb000f8368fcd9995e0411f0177c2e.1695104399.git.javi.merino@cloud.com>
 <dff889ef-ec24-2cac-5565-18376f5e331b@suse.com>
 <e878bca9-74cc-d16a-134e-e4728ad0212d@citrix.com>
 <9003c40a-a9e9-4552-71c0-b5b6ea50c1d9@suse.com>
In-Reply-To: <9003c40a-a9e9-4552-71c0-b5b6ea50c1d9@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 21/09/2023 6:59 am, Jan Beulich wrote:
> On 20.09.2023 21:40, Andrew Cooper wrote:
>> On 19/09/2023 7:50 am, Jan Beulich wrote:
>>> On 19.09.2023 08:30, Javi Merino wrote:
>>>> 5852ca485263 (build: fix tools/configure in case only python3 exists,
>>>> 2019-12-11) changed the configure script to test for the availability
>>>> of python3, python and python2 in that order.  It sets PYTHON to the
>>>> first one found in path.  You don't need to have a symlink to python.
>>>>
>>>> Remove the outdated note from the README.
>>> But that note also covers the hypervisor build, which isn't affected by
>>> ./configure, and even less so by tools/configure.
>> The hypervisor build equally doesn't python= specifying.
> I'm pretty sure that on at least one of my systems I need PYTHON=python3
> when building the hypervisor.

Not since c8a8645f1efe you haven't.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 10:35:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 10:35:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606277.944067 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjH1g-0006cx-GJ; Thu, 21 Sep 2023 10:35:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606277.944067; Thu, 21 Sep 2023 10:35:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjH1g-0006cq-Cr; Thu, 21 Sep 2023 10:35:16 +0000
Received: by outflank-mailman (input) for mailman id 606277;
 Thu, 21 Sep 2023 10:35:14 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wI4U=FF=citrix.com=prvs=62171ef32=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qjH1e-0006ck-Ao
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 10:35:14 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8a18ef48-586a-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 12:35:11 +0200 (CEST)
Received: from mail-dm6nam12lp2171.outbound.protection.outlook.com (HELO
 NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.171])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 21 Sep 2023 06:35:08 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DM4PR03MB6912.namprd03.prod.outlook.com (2603:10b6:8:47::6) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.23; Thu, 21 Sep 2023 10:35:00 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 10:35:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8a18ef48-586a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695292511;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=mlx3sDKPjB5Rgz++19lHJxuBR/bD/5PA9MMcTp5j1Yo=;
  b=Qo9Hj4ma6q92faaaBUNgySn+uDDNkGCwxNMCxdM7LzmUJA+9YUfzRonw
   b4jUCgt/6EBOMOstJ+lg0/qUghUJfM08MkLKlzyF/YydqMMME+6kBamXN
   Aj8dEyPZGTcYFMjFhglnVTlRoP/rxwHH3c3jj2jUTuBt2VgEx724MTjZs
   E=;
X-CSE-ConnectionGUID: MiGCPN5aSPqJMQ5KrlZ+0Q==
X-CSE-MsgGUID: LyyoJ6tEQsq9G2dL53cGIg==
X-IronPort-RemoteIP: 104.47.59.171
X-IronPort-MID: 123781050
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:IfDzoqLEbgO48k4IFE+RCpQlxSXFcZb7ZxGr2PjKsXjdYENS1zUGz
 zAXDz3SOqqDZWX8edogbo2190lQvZ/dzoJgHQFlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhA7wZnPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5SAE5lz
 dpFIQs1dzKmvr+V2raJCbFV05FLwMnDZOvzu1lG5BSAV7MKZM6GRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dmpTGMlWSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv23bCfxHumAOr+EpWc5+9togOP61UIEUw5D1ef/KKypW+xDoc3x
 0s8v3BGQbIJ3HKsSt7xThipukmutxQXW8dTO+Ai4QTLwa3Riy6JC25BQjNfZdgOsM4tWSdsx
 lKPh8nuBzFkrPuSU3313qyIoCy7IzRTLW4GaSIOVwID7/HqpY11hRXKJv5EFKO2ldTzFSvH6
 jaGtjUlh74TgMgI0I225VnCxTmro/D0ohUd4wzWWiep611/bYv8PYiwswGEtLBHMZqTSUSHs
 D4cgc+C4esSDJaL0iuQXOEKG7Lv7PGAWNHBvWNS81Aa32zF0xaekUp4ulmS+G8B3h44RALU
IronPort-HdrOrdr: A9a23:+CsDEqF/1GUxTlfnpLqELMeALOsnbusQ8zAXPiBKJCC9E/bo8v
 xG+c5w6faaslkssR0b9+xoW5PwI080l6QU3WB5B97LMDUO0FHCEGgI1/qA/9SPIUzDHu4279
 YbT0B9YueAcGSTW6zBkXWF+9VL+qj5zEix792uq0uE1WtRGtldBwESMHf9LmRGADNoKLAeD5
 Sm6s9Ot1ObCA8qhpTSPAhiYwDbzee77a7bXQ==
X-Talos-CUID: 9a23:mUEPDGOaFmXWJO5DfShI33YyR8keSmT/6U6NAFW8OyUxcejA
X-Talos-MUID: 9a23:rjwMCASt6rBaKMk1RXTIlSBlFpl0zp21EREiy5ki5pKPGg1/bmI=
X-IronPort-AV: E=Sophos;i="6.03,165,1694750400"; 
   d="scan'208";a="123781050"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UyW6Hw7YqxsQJoddVNBaEQDrBXXyElK8BbiEdR1yNDMPDzX0IKX2oDDAQzxMrFFX006Nv3C4VCHdFOoBvbEsIRd/EnEqOrpNWtcL00ApTrnp5AtWKpDfkySKDGosZRif8y1uxv+4mvCQDVnmavnjIjYCFZ5NAyutFgfSU6kbKm7OaNEHwGvOdIXXJVAt/EJBh8JYWnWFg3gc6Hxun2Hhgd7zcXVIOoKK7ZGlweoLtHe1V4dEnB9SVmtfbEv4C/NgZTxevNc1RVHW+SGuZ7gtvUciZif4K3e7IHTdFZJYO6k/SijiOgYBS8guQVzuE/CLzMyI9EXAvji3gRtA2Nh0uQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UN/7qGC5S1MpI+QDA5ODcJ6g1SSckQpPQYBpfiLkuaE=;
 b=WsOXmHmQe7HqkHKHFoqipY+SeOjW26aMpCiaMwOMlEr63IfC1raCd0X4oSrmMWRhPs7OMtE0Uuuherse+YlYbwykqj4tehccemYam4H8bY8Grcnk6y5CGZ8seIv/UMxUuxldPf+qMS32plo78GPMhYE7LQk5RpKn6oPtsjPttTFGJ7Oa4XSPGEh0z7BMOLVSs2i4fSXQsO235ffgH+t1i1vw5L4tFdzROyKTizimHOevKRZXTFpvn5gFdHGWiJXLisrrEPAa3DL0lnTXKG0VZBpka5GRJoyHKAtWzEJ/J+xdKgewFg04RITIMxb6VwqomNcalsid+1Js7u7KU3HNXg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UN/7qGC5S1MpI+QDA5ODcJ6g1SSckQpPQYBpfiLkuaE=;
 b=Bmes0atJ2U6fmz3D3xABR75lEi8oyyPZ4i7dt8JPWBGWvm+73NLd3ZmMIFDdMEKiowCvvi/ZmAdY+iiM4R94gKoD9Y5qOO3djZZli1WTsobgEREyVPNeURCDtj6KHpPw7BaEQLGIqVLv9OSQJl1WcDyHNNmasfeH0ZA/+VbGaj8=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 21 Sep 2023 12:34:54 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>
Subject: Re: [PATCH v9 09/16] vpci/header: program p2m with guest BAR view
Message-ID: <ZQwcTlV4_cBLH0-K@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-10-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20230829231912.4091958-10-volodymyr_babchuk@epam.com>
X-ClientProxiedBy: LO4P265CA0165.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:312::8) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DM4PR03MB6912:EE_
X-MS-Office365-Filtering-Correlation-Id: 4c9100d4-ccd0-489c-90f5-08dbba8e680e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3OzBVFdrtneeF3Ur5EnygOlveNBC9wq1vlvewS/levsEh53NxnnQUjTBFQxcN153L2/L4Y1Dh86p0Huo9O+/W3f4+sfegkXt43zU1Itl9B1W+17dxtMmGWY7XJ0np7csV/838c0e2bvHQvzB41BlydkglpGubulGagEtQzjuxfE6Zyiz1eraQ5TghZXob+pkL0BagCdRNCvinDNe4F8uD2xtqQCgGFwgRkI4HquJ2PqrxS3KSLAC6DGHVaIphNCYAUKyr0lQ3HZbqnoMNb813oVg/eCB/aBYzrKyqiuueAKQui3sDHyINyFHfCa2RaMV+Zw7Kn/xO9c0OsooL3HeaJ8p1xqIRidE/w7yGxxVaZos6Iy8YMQjaSz/Z2YXpb+2pMLQ/u5YPZHYqI2UdmB06zvGLshznGXXJVrAK/R2pyvRTxNtJtqVIlNviGWn0aJYvEA3fSdmd98JGijUnRR5nivvsoCMEtvFtlH9pwN1TckxlMbhPk6WTXS+gDHdE7hCls+w/d8vQIJFSaVrHDW4NGpskLFjAtsMIc/RQAJDSZ49Wu3ALlkHB5FgoF/gwElv
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(39860400002)(136003)(396003)(346002)(376002)(366004)(451199024)(1800799009)(186009)(6506007)(6486002)(6666004)(9686003)(85182001)(5660300002)(38100700002)(86362001)(2906002)(8936002)(41300700001)(316002)(83380400001)(508600001)(6512007)(82960400001)(8676002)(4326008)(6916009)(66476007)(33716001)(54906003)(26005)(66946007)(66556008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?N1Z5dm9wOEdOR1hibGVnNjBBWW9ENlBUU0JqVWJ6RWJENHE0d3BzMjEvU2Vo?=
 =?utf-8?B?MTRuek8wZDZYWGdiMXRIcTJUcC9tZnZpZTdhUVpOT2VGdXFKUjBlbFRxamcz?=
 =?utf-8?B?eUs3VTFTZ2UxVWlWSndybStWeGYzMEFYVDhUR2V2ZlhxeTNTaHltSjgrQmVY?=
 =?utf-8?B?NUs2TjNUNnFoQnJWajRTR1B4MzBERytJUW02V3lDTUxyQzlDcmJnc0o1MVg5?=
 =?utf-8?B?Sld4a0tYMWw3c1N4WWlUVXhyWHptT1hEVkFlenpCa1AzQXc1SjFXOXYxSjRt?=
 =?utf-8?B?NjkyTVFhUmk1Y2YxZEJuazFTUHdoWU1jNitXdVlYTWt1NThyODdNQUF0bitZ?=
 =?utf-8?B?K2lsNS9NNDVsTUVOWm1HbG1xL2lHWWU4VmlWS2ttbWpVdkJhSGk5Z1FiRndV?=
 =?utf-8?B?WDlLYzdvMVdEcHJ0SlA5cWNIU1R1citoTlViMEphRzlUNHFLMGRoRWFtUzdS?=
 =?utf-8?B?S29jcSs4RWp3aUtWWFovVWszVWpkS2p6YTVkUFYrYWRmWjBJUjFCMUxFVHI0?=
 =?utf-8?B?MUUrdFYyVjk1TVJFM3Y1VXpGQ3llZjNOMWlIZ1VReitPRGlrRzlvbXJkVzV2?=
 =?utf-8?B?VFU0Q2IrbWRkUm56ZndCSmNxSGRIZmFRckNmK1hUTFJMaHdIb1MvUVVrMnU4?=
 =?utf-8?B?VFB0S1JIOEFSR2VOa3lPRTR0K2VwV2RVcllONjMzejNDSUFjckVpRVVFL2Nw?=
 =?utf-8?B?d2l0WW05c1Q4U0JCNnpFeFNhSDlNZUFHcTFZRVQ2UC9yTTNDUDlrL1E0Q2p2?=
 =?utf-8?B?ZUJZMlV1cmhuK1F5K0RvYlVpWXRsRjMzZVFjOWZvekJVMVVBaExMcXZNV0Fy?=
 =?utf-8?B?amdSN0dyMW9QL2pyYlRsTlJvdHd3OU56NG9ON0s2QUNyeHE5UVNLT3pWandP?=
 =?utf-8?B?RDBWNGkwalBxem9XVCtDZXdxZ0hYR25kSFNrRG1PODdvZmpXU1NUcUYxQnVr?=
 =?utf-8?B?d096YVNwaXUvWnVtZEFqcUVqUGdaMXIrbW5jdysxTkM3MEdQeWVtMVdmUVZN?=
 =?utf-8?B?b2x1Q3dYVzg5T2pQVUJRRUlYR3Bnd1RVLzBRUC8wbnd5Njd2MnppeGRoSkJi?=
 =?utf-8?B?Rzl0YU1nb1BLN1RaaHVUWFI0N2h6ZlVRNnR1N3grM0x0WWpoWEpWSDJ2SHpJ?=
 =?utf-8?B?ditObDB4NGxyaVZicStjVE9kNkYwb3V5TFRvbmRsaXN0citQZVVIdE5zd0ls?=
 =?utf-8?B?a1paVmhmb1NpOCtBQmlWKzhONkRFR0xTTnBSWXZqelNsUFVHbEt6Nmx1N0g1?=
 =?utf-8?B?WGcreUVDT2NmU0hWSXdpWDl6MUZyc0RMS2Vza25WRUFsYWU0WHhQTmFuK3FL?=
 =?utf-8?B?cEhSbkFIT0ZvYVZqMysxYnd1eW9rVGRVSzJvZ0d6S3gyek9tc3N6R1Jpby9P?=
 =?utf-8?B?OGJLUDBUdVorOEpxeU41SllkMUZ2UWVxNlNUZ0ZRZDBFbGdtT044WUF2TjY5?=
 =?utf-8?B?d0hWMXRDVmRkbjRlU29vMDd0bGxudzBSSU5TL1pmN2JIZ1FLRURwYXFUMW9W?=
 =?utf-8?B?NTd4OTVOZ01WWE1CZHFVemgza0tPQUtqQ3V2WGo3aEExMVBUdDFHb2tML3FM?=
 =?utf-8?B?ci9nY3lYNG1NN2VHR25iR3VRN3E4UHk5R0x4T1k2N2h5MXVwMTBKL3FWeDNN?=
 =?utf-8?B?aEtPTVhXdDBCd3BiYXA0c29qc3lGUWtpUUR6M3JKRVA2N0ZGeGdsVjdwRk1a?=
 =?utf-8?B?dHFISElvZ3ZGTlljOUF4VnBwbkFrQUNSRFFjOTJueTBWaGxOOGZNRS9lcHhy?=
 =?utf-8?B?eGVBMFVXZmNRMWMxMFgwR1hLdTZYeXVCSWw2eXEvNCtsQkEyY3dHdUM5dEI1?=
 =?utf-8?B?VTAxOUFEdUxETHFCMGVjQi9UNnBXK0VwZFlpNWlxTnE0ZlBtdHJuWURsbWpB?=
 =?utf-8?B?cUh4akZKQ1NHNVJsajE1N0NzdThiTHM2cGtmTW9IZmJXKzBoMy9KZmVIbzFC?=
 =?utf-8?B?bEN1N1pwZlhkajFwRGFDUkV5KzJkNnBWQnZmdC82TGpnY2VuckNnTmFvNXh4?=
 =?utf-8?B?NE4xQVZsdjVSV1pXMUdJazlESFFSRWo2c3hOZS9rS2tJQzVuZS83MjBRY2g4?=
 =?utf-8?B?VlBmaXAvMndqQkdtRnpDN1htTk9vNXcxR245cGJlZnBmWFgwQWpZWjRrQ0pl?=
 =?utf-8?B?SFNsbEcwSkJGTE4zMHhlbmJtNlRFL21rN29DTklTTEZSNDVZcEFndGlibEZj?=
 =?utf-8?B?Z0E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	77HXB7scJ6qKltvhNERwTAXEab8gQCwdVuuxbQ6+zISkDlVS/lN3aNDSDOxUDEQJ2NxEZh9TaTT+Q9NBJJCILMTQFu0Qure+OHdIl/eTWb1HZ9OeHuzmjZ0Im3YWTXIRt4XlRFjm5glQjeb6Rt9jgYvcP+rHXF+JwpVd9vkbpwWXlSMOOLN0gUyIwGZ4+dmsj/PgdGGTJ+IPDcDOeQSdRKTbfSzPBp8p6x+eE85xxVE2whFsbFD7aJXD282e4aXuzhX44yvBIsgunuBU141RqJ8tMiUPdgKHX4WTYESLqk1p0gS41Aev/9wspypAmCaG8h+xk2exQRWHTsEmKK19/2vRAlSxKBQEmf9uljJKShk51Lp9jnaHOr8SXPZNVUA24Ps+CP87KYF0RlgcJUBwMjt7LnBF4hMTKofyif2UPbk/YKxV82AvEurRv0nmPeVLoe3lNnrU26bZQm4uYSNYZj97ItIU+BP99S40R6vdcuAxJ5E24YRtgKWcPrEayiUYQJfVkX6vBmG4cCEjtxBhA9GeTNB6FWXm8b2tZAZ8A3gzqg2L88+Zsc9hLgHJVu7TIaZ6TyEz1G97Ee/+VPPwssxFL9Y9SfKy6sa3rKP1pHrN1yXEa6LQSMStHoUfukSVA6iH+jRh2+oxuRQWSx3av228xg1jdBN/6Fu0GUirAcQDofvyQnZvn7187RFpdNvUIVkZEw2i2iaetssmcQI9fFFiK0MUpRqyNrtE2egCqkgoWAw4HMzR4RgiaBYVYvzt2OF02ZzuHsLPDkVae34uIVMCE4ezlcRvp34dLdYQcl51HlM7du9+A9KSEpgp2ffpBrDWx3UeVWA6Rp88irk8RA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4c9100d4-ccd0-489c-90f5-08dbba8e680e
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 10:35:00.0143
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0oRVwfLw29RsIWQDJu+r+So5A/SQTtMPVIaaZsJNP6N8smFwIzZZRJBqHYxgu1/o3uiL0JjsiVRZ+EI0rgfi7A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6912

On Tue, Aug 29, 2023 at 11:19:44PM +0000, Volodymyr Babchuk wrote:
> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> 
> Take into account guest's BAR view and program its p2m accordingly:
> gfn is guest's view of the BAR and mfn is the physical BAR value.
> This way hardware domain sees physical BAR values and guest sees
> emulated ones.
> 
> Hardware domain continues getting the BARs identity mapped, while for
> domUs the BARs are mapped at the requested guest address without
> modifying the BAR address in the device PCI config space.
> 
> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> ---
> Since v9:
> - Extended the commit message
> - Use bar->guest_addr in modify_bars
> - Extended printk error message in map_range
> - Moved map_data initialization so .bar can be initialized during declaration
> Since v5:
> - remove debug print in map_range callback
> - remove "identity" from the debug print
> Since v4:
> - moved start_{gfn|mfn} calculation into map_range
> - pass vpci_bar in the map_data instead of start_{gfn|mfn}
> - s/guest_addr/guest_reg
> Since v3:
> - updated comment (Roger)
> - removed gfn_add(map->start_gfn, rc); which is wrong
> - use v->domain instead of v->vpci.pdev->domain
> - removed odd e.g. in comment
> - s/d%d/%pd in altered code
> - use gdprintk for map/unmap logs
> Since v2:
> - improve readability for data.start_gfn and restructure ?: construct
> Since v1:
>  - s/MSI/MSI-X in comments
> ---
>  xen/drivers/vpci/header.c | 52 ++++++++++++++++++++++++++++-----------
>  1 file changed, 38 insertions(+), 14 deletions(-)
> 
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index 3cc6a96849..1e82217200 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -33,6 +33,7 @@
>  
>  struct map_data {
>      struct domain *d;
> +    const struct vpci_bar *bar;
>      bool map;
>  };
>  
> @@ -44,6 +45,12 @@ static int cf_check map_range(
>  
>      for ( ; ; )
>      {
> +        /* Start address of the BAR as seen by the guest. */
> +        gfn_t start_gfn = _gfn(PFN_DOWN(is_hardware_domain(map->d)
> +                                        ? map->bar->addr
> +                                        : map->bar->guest_addr));
> +        /* Physical start address of the BAR. */
> +        mfn_t start_mfn = _mfn(PFN_DOWN(map->bar->addr));

Both of those should be declared outside of the loop, as there's no
need to (re)calculate them at each iteration.

Also start_gfn likely wants to be unsigned long?  All the usages of it
in the patch convert it to integer by using gfn_x().

>          unsigned long size = e - s + 1;
>  
>          if ( !iomem_access_permitted(map->d, s, e) )
> @@ -63,6 +70,13 @@ static int cf_check map_range(
>              return rc;
>          }
>  
> +        /*
> +         * Ranges to be mapped don't always start at the BAR start address, as
> +         * there can be holes or partially consumed ranges. Account for the
> +         * offset of the current address from the BAR start.
> +         */
> +        start_mfn = mfn_add(start_mfn, s - gfn_x(start_gfn));

This should then be a local loop variable with a different name.

> +
>          /*
>           * ARM TODOs:
>           * - On ARM whether the memory is prefetchable or not should be passed
> @@ -72,8 +86,8 @@ static int cf_check map_range(
>           * - {un}map_mmio_regions doesn't support preemption.
>           */
>  
> -        rc = map->map ? map_mmio_regions(map->d, _gfn(s), size, _mfn(s))
> -                      : unmap_mmio_regions(map->d, _gfn(s), size, _mfn(s));
> +        rc = map->map ? map_mmio_regions(map->d, _gfn(s), size, start_mfn)
> +                      : unmap_mmio_regions(map->d, _gfn(s), size, start_mfn);
>          if ( rc == 0 )
>          {
>              *c += size;
> @@ -82,8 +96,9 @@ static int cf_check map_range(
>          if ( rc < 0 )
>          {
>              printk(XENLOG_G_WARNING
> -                   "Failed to identity %smap [%lx, %lx] for d%d: %d\n",
> -                   map->map ? "" : "un", s, e, map->d->domain_id, rc);
> +                   "Failed to %smap [%lx (%lx), %lx (%lx)] for %pd: %d\n",

I think we would usually write such mapping messages as:

[start gfn, end gfn] -> [start mfn, end mfn]

So:

"Failed to %smap [%lx, %lx] -> [%lx, %lx] for %pd: %d\n"

> +                   map->map ? "" : "un", s,  mfn_x(start_mfn), e,
> +                   mfn_x(start_mfn) + size, map->d, rc);
>              break;
>          }
>          ASSERT(rc < size);
> @@ -162,10 +177,6 @@ static void modify_decoding(const struct pci_dev *pdev, uint16_t cmd,
>  bool vpci_process_pending(struct vcpu *v)
>  {
>      struct pci_dev *pdev = v->vpci.pdev;
> -    struct map_data data = {
> -        .d = v->domain,
> -        .map = v->vpci.cmd & PCI_COMMAND_MEMORY,
> -    };
>      struct vpci_header *header = NULL;
>      unsigned int i;
>  
> @@ -177,6 +188,11 @@ bool vpci_process_pending(struct vcpu *v)
>      for ( i = 0; i < ARRAY_SIZE(header->bars); i++ )
>      {
>          struct vpci_bar *bar = &header->bars[i];
> +        struct map_data data = {
> +            .d = v->domain,
> +            .map = v->vpci.cmd & PCI_COMMAND_MEMORY,
> +            .bar = bar,
> +        };
>          int rc;
>  
>          if ( rangeset_is_empty(bar->mem) )
> @@ -229,7 +245,6 @@ bool vpci_process_pending(struct vcpu *v)
>  static int __init apply_map(struct domain *d, const struct pci_dev *pdev,
>                              uint16_t cmd)
>  {
> -    struct map_data data = { .d = d, .map = true };
>      struct vpci_header *header = &pdev->vpci->header;
>      int rc = 0;
>      unsigned int i;
> @@ -239,6 +254,7 @@ static int __init apply_map(struct domain *d, const struct pci_dev *pdev,
>      for ( i = 0; i < ARRAY_SIZE(header->bars); i++ )
>      {
>          struct vpci_bar *bar = &header->bars[i];
> +        struct map_data data = { .d = d, .map = true, .bar = bar };
>  
>          if ( rangeset_is_empty(bar->mem) )
>              continue;
> @@ -306,12 +322,18 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>       * First fill the rangesets with the BAR of this device or with the ROM
>       * BAR only, depending on whether the guest is toggling the memory decode
>       * bit of the command register, or the enable bit of the ROM BAR register.
> +     *
> +     * For non-hardware domain we use guest physical addresses.
>       */
>      for ( i = 0; i < ARRAY_SIZE(header->bars); i++ )
>      {
>          struct vpci_bar *bar = &header->bars[i];
>          unsigned long start = PFN_DOWN(bar->addr);
>          unsigned long end = PFN_DOWN(bar->addr + bar->size - 1);
> +        unsigned long start_guest = PFN_DOWN(is_hardware_domain(pdev->domain) ?
> +                                             bar->addr : bar->guest_addr);
> +        unsigned long end_guest = PFN_DOWN((is_hardware_domain(pdev->domain) ?
> +                                  bar->addr : bar->guest_addr) + bar->size - 1);
>  
>          if ( !bar->mem )
>              continue;
> @@ -331,11 +353,11 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>              continue;
>          }
>  
> -        rc = rangeset_add_range(bar->mem, start, end);
> +        rc = rangeset_add_range(bar->mem, start_guest, end_guest);
>          if ( rc )
>          {
>              printk(XENLOG_G_WARNING "Failed to add [%lx, %lx]: %d\n",
> -                   start, end, rc);
> +                   start_guest, end_guest, rc);
>              return rc;
>          }
>  
> @@ -352,7 +374,7 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>              {
>                  gprintk(XENLOG_WARNING,
>                         "%pp: failed to remove overlapping range [%lx, %lx]: %d\n",
> -                        &pdev->sbdf, start, end, rc);
> +                        &pdev->sbdf, start_guest, end_guest, rc);
>                  return rc;
>              }
>          }

I think you are missing a change to adjust vmsix_table_base() to also
return the MSI-X table position in guest address space for domUs, or
else the MSI-X overlapping range checks for domUs are wrong.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 10:49:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 10:49:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606300.944137 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjHFO-00037k-FB; Thu, 21 Sep 2023 10:49:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606300.944137; Thu, 21 Sep 2023 10:49:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjHFO-00037d-CX; Thu, 21 Sep 2023 10:49:26 +0000
Received: by outflank-mailman (input) for mailman id 606300;
 Thu, 21 Sep 2023 10:49:25 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjHFN-00037T-CH; Thu, 21 Sep 2023 10:49:25 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjHFN-0004XG-0L; Thu, 21 Sep 2023 10:49:25 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjHFM-0002eH-IL; Thu, 21 Sep 2023 10:49:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjHFM-0003ro-Hv; Thu, 21 Sep 2023 10:49:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=0F8wVkCvCSfAXuj8ZdM93SLhO5WQbZp/L82gWfURBW8=; b=SCbGIqHeOOQZVUg5U5TprPp8fp
	pfkXFgw0aqrB1qvkjbWZnF3+Y2nwyZjQ1ZuH3xTxFl9ZqfbrVcbEZu+jxAe5iJ9fD5smv/7/VPlvw
	YI7cq1FzFC9uGPSWVfqLwdqdw+jR8ID2PklX0PELLcrrD4MdQ1qumQ6RLNc918CHqF4w=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183085-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183085: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=9b57c800b79b96769ea3dcd6468578fa664d19f9
X-Osstest-Versions-That:
    xen=2ea38251eb67639be7aa9d7b64084b1be0230273
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 21 Sep 2023 10:49:24 +0000

flight 183085 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183085/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183032
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183046
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183046
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183046
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183046
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183046
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183046
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183046
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183046
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183046
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183046
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183046
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  9b57c800b79b96769ea3dcd6468578fa664d19f9
baseline version:
 xen                  2ea38251eb67639be7aa9d7b64084b1be0230273

Last test of basis   183046  2023-09-19 04:03:13 Z    2 days
Testing same since   183074  2023-09-19 22:37:00 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>
  Roger Pau Monné <roger.pau@citrix.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Simon Gaiser <simon@invisiblethingslab.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   2ea38251eb..9b57c800b7  9b57c800b79b96769ea3dcd6468578fa664d19f9 -> master


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 10:50:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 10:50:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606307.944147 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjHGR-0004Ss-QR; Thu, 21 Sep 2023 10:50:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606307.944147; Thu, 21 Sep 2023 10:50:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjHGR-0004Sl-Mh; Thu, 21 Sep 2023 10:50:31 +0000
Received: by outflank-mailman (input) for mailman id 606307;
 Thu, 21 Sep 2023 10:50:30 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=KrUB=FF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qjHGQ-0004Rq-G8
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 10:50:30 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20622.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::622])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ad6ae48e-586c-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 12:50:28 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS5PR04MB9729.eurprd04.prod.outlook.com (2603:10a6:20b:650::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Thu, 21 Sep
 2023 10:50:26 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 10:50:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ad6ae48e-586c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VR8eGh7PCAzCShlpSc1Ve6MlX9wfmv/Ba/0qMzdEnrSgDYE6hSbCMQAfijGje27K79rjp9cQoivn5SYHFb4qVIM8b9jQF+NMNjWhBd+P065CYcothAEQGPQCkegLswqIHFoPBJn4HvoBXI0SaH1D6RGmiMJjZEFi4W98w3vCIIElvUsSgwTEl+u5mJ34fbxSqK6bsbHd4h8uLcVWBEp/K+iZk1PFdwF6YK5M3HgQ4AexpsPqRL/T96UJdY4P2Je46sluCpVimBSSUP7gLnRGstfr85LtbH/0aazoOKzTO/zSxt8slN0r9TdBSnbCamzg0SXNPTKWTKZ4DolH3My+QA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=m9//nNcEyIV5V/9QhjJUDXIQZ6/tFiuR7aZn8iLv/CU=;
 b=HF9evIYgPyG30Pu0zdSkdVNhgX5YleMwtW8ijCdtIMjSFnO7pTjECchXoyOPkxNcSgTp/xBs3EkaOXkBk6NgUY7elrRrDB7Zj+/6nzha4s40ibWkPVfYU/2G7/luw7kUTprvbJTY5IdwX7JS3YEOI4+vTv8utPwnGkkj+PLRrG+nsaWcyt3AMpCDsCuJoKu4a4/IVUyn+ci4/cmbxrTjm42mYTu0bqxYhRi1ijMeYpX+q31w4flRdCAZrh3lvibq2PDXtGY2YT8ESFyUPTB4O9dvd0f4Nst/Nl2xajwuN9AexVI5e8UeAcIAJJ3YHsoX8N7gVqzNbYVJEiiGhMZfag==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=m9//nNcEyIV5V/9QhjJUDXIQZ6/tFiuR7aZn8iLv/CU=;
 b=YOIR91n9r5pfKz2OCkEpJTUdzUBGZ7O5OhYYYJaJnmeYC22scuLgzaKOFMJLVLpgX1yeZeNpuOjiki2VvF9a+vVD5PH5opz299sG+s9rlecXgevwoMkcUTSa96R/bePbVAWmNmNI6EjoTThEOfx02H6+5+C29V3RVWSj46o19z4H5/PZaarGOCQq1WWtgjsCIY9RpDWF3dhoUVagLUd+e8eoGLHuydvNlMlc66A1Um7+P/PUhJ9hFFlfWhgpmpc/rJDKt5L9BPMIMA4Khhn6Iq56baHi9evmbwKDbs/BdrEJmyW2Ht/KEgSmIFop+xQ61j2UTnp//YWONePAWETnWQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1b4fe9e3-504a-bec6-c98d-74f797dd2f5a@suse.com>
Date: Thu, 21 Sep 2023 12:50:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: xen | Failed pipeline for staging-4.15 | 3a9a2901
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
References: <650ace63a5321_28a55b478157@gitlab-sidekiq-catchall-v2-86b648d56d-wk4kh.mail>
 <fcff9af9-3abd-2d0a-f40c-826f6b1de815@suse.com>
 <433092cd-2a0e-08b8-b846-be33983b6349@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <433092cd-2a0e-08b8-b846-be33983b6349@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0232.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b2::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS5PR04MB9729:EE_
X-MS-Office365-Filtering-Correlation-Id: bf044f87-0826-41f8-ce88-08dbba90902f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wHkGIkBpoaTN1G2N8mja0wAM6GvzNBN6gGDnrO5rlrt+b1qLndBfHGSS+QjVnFLAVfNMx7ILnkdvR3tmUCpuxwmUjT/H6P2lw2/cZ9q0gQraYpcWAIRJB3UU6UE/Vr9nSt6LiHdgsRZE7IFwgPGmQzlB8XRgRgGir8ViKjNrXItRdcfv8LpmPlSox/GMp3p17LBJVG45Q5eNvc9mPzTOfzcay96O60+qpRb00szWA++XI+1rcHNENBy+zgqJEgV8/2f7TerUBc0uqvIAkXCAGJBjtt1Pk21rsEpcQrVHEVkNbX3MZz0QEjjbSI84szzhZDPzoprUJV7UMoO07ZOqL+CeVSlQCkDowpht6Yu8HZKCJ1BYDA/VrVhi9PmUnZ16fsqo+GvJyX/+jxhEUvGqswY6cY6+wCdXriViTJnULO5U/tGOY84arDyiyeziKgUlKI+1CGJ589kYcEFvZaaloxt7foGscLkqA/f3gjUGs09kV+hF5hOkxtlPcSaWMqaolbGiBwArKTy1aD+lTf20qWgW+9pSl/W/JtvZBESPQKAW+eTOIRWF/X1eDyXZWOp1Arbn8hBse81YMC2r+XphN+zYdooYj2Ekj11TqmXdhH1z0l7gCebDK8RfZqkIZ1H82vooVNBmh353ybLnMJLV3A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(346002)(39860400002)(376002)(136003)(1800799009)(451199024)(186009)(6486002)(53546011)(6506007)(6512007)(478600001)(8936002)(83380400001)(6666004)(66946007)(31686004)(66476007)(66556008)(8676002)(966005)(316002)(6916009)(5660300002)(2616005)(41300700001)(36756003)(31696002)(86362001)(38100700002)(2906002)(4326008)(26005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TXk3Tjdrdmlsd2I5RjZSWWFzNVRJaFp5L0dmQXZQamlZS241TVNOWlptRldK?=
 =?utf-8?B?dTVaRFhaTEZsUWJjcGpJNStqNVdQaTNLMkIrWDBjVGFpMSt3RGU2WTVMQ2dM?=
 =?utf-8?B?bmxkdEppVTZ6cnQwVGd0YUtqZlYrTXc5Ull2dkV3aEJoTmJxOStLM2NuaS9I?=
 =?utf-8?B?SHg3czRPQ01kU0pVSVZxdEZoZ2duWVBkNVVuU3FBRWdJRFRDbVV4cjBtYytr?=
 =?utf-8?B?cVJ2N24zNFJLR1dwVzVmeTh1ZWt6WUZtWUlBYk44SE85WiswWWtFbUY4dnRs?=
 =?utf-8?B?SHZXRUJKVDNRVmVHYzhTNW9UQ3VXMkpSMFBoY3VNdUpOMzNRWXhsKzlvajZ5?=
 =?utf-8?B?K1VLKzN0aHFzdDJPRkRNWm9aRlpncEpVSG5wdHFqNk92bGhpYWlZaFNaNnl1?=
 =?utf-8?B?L0QzbkZ0Vnd0M3BxOE03T1huSURVR2g2VTZVMEwvTERsQjZWOFBDdktNWFgx?=
 =?utf-8?B?MGoyVGUwYXhXWlpWcm1HOG16TjhJazNOL2NtSTRhb09SSkY0SkdwaStQMEhk?=
 =?utf-8?B?Q1dhSGI4SWNrbXJVOENyTWVjamJ1VTJhZWVFQnU2Nms5TGxqZUFSbm4xRmcr?=
 =?utf-8?B?cC9MVnBtdVNEM1E2R2lwNUdrd1RCR3NoTHRUZEhIYTE1M3h6ZUpWaUE0ejBM?=
 =?utf-8?B?VzA2WDRZQXFsU05yYjFUclRiWWpNV21CMS9OUTlFcDZvaGtSKzRHZDgxcFFp?=
 =?utf-8?B?SDE0dDVkVWVuSW91bnFxZm5lTVUrTEJtV0lFd2JpT1UxNkxjRXdBcm5oM3li?=
 =?utf-8?B?WFJraWJ2SUR5QldtS0VCTWU3TGlPTmJ2V2J1UjZTQ1dlNXVsdm9MTUhiUCtM?=
 =?utf-8?B?UGxIZkdtY1JmakwwVk14cjY4b2kwcnQ5SzNxYWI4cTNGWUdzeTcwb2p1ekpM?=
 =?utf-8?B?eS9mdU8yMHcwM0Q2VU0wTFlZWWxlRjlNVm5URWx4SXp6TWdlQnpPK2JvL2hm?=
 =?utf-8?B?QUdxY3Z0c3dlMTdTKzNHUlhEcjREbWFVRFZaRm45YXdKVm9zUWVFaTZDM3cr?=
 =?utf-8?B?M0hIZ0hjOFcvcUE1UmVXcjBCVm5Cbm9mVW5EbjVRdlZWYjFuZHNSOEV0UUZV?=
 =?utf-8?B?aUd5SGtBNldjN0twS2xmSXQvODlYNEFJUGJLMU9lbXFsNTYwejlZZU1zYWtW?=
 =?utf-8?B?clNZeVgvMklKUDZ0TnpPWkJmMEVlK2xTZEtWanV4RXlJSTYwMmVWVzhKaERy?=
 =?utf-8?B?aFVCWVpzbkRXdHJ0dVJzSERFQy9rQm8vZDlGaTBOZmJpNDJLamt4QVYzejBZ?=
 =?utf-8?B?dERnU2c2ckxxT2lKWUdzQmdOYmJzcytER1NuMWRtb1V2QVBIS2RyRW4zREtS?=
 =?utf-8?B?bWRtcDJLK1p1RlJVSmNMT01Sdlo2Q2dkTXNGbE9JcjNsNTI0MFpBY0haN2NM?=
 =?utf-8?B?OVRBQW1RV2hmVEdpZ3A0dCs3Y1Jjbzk5VldqSGFYVzByRUdUbEpyWjNqY0Fq?=
 =?utf-8?B?WkpkS0txNTZ1N1ptNERweWFnVEcrNXppZFcxUDVRR1ZQbzNYQmY1cXBsNFN3?=
 =?utf-8?B?WU05RTNQdVZabGFjaGhMZGpRQzJ3ZlhwTHU4ZVpyMGtTQnRiWmIwdWwxeWFS?=
 =?utf-8?B?VlVhTnZId3Z3TzFSRDlsU0NlLzdKeWJsUFJCWlF6RnZpci9Ga2ZxaXBwY3E2?=
 =?utf-8?B?L2REZXN4RE9PNi9PcEtXNVZ3dWplTzV5REpxVW9IZElzWjRhMUdXYS9TRWw4?=
 =?utf-8?B?aXhNbm9lQUQ5WlYyalZ2VnZadWRHVCs0cUNHKzNJKzZPT0JpODR3QWpxTmZl?=
 =?utf-8?B?OGp2eW4rY3JDK3RIMWd1dDRWWDdmNnZ0NGdLV2NOcVptTkdtYS9UL2JWSnJm?=
 =?utf-8?B?ZWhFb1VueTV4TFIvKzc2L3JxcGFnNEdPbnlPZXFHQ0pheWNwUFI0bEd5QUlC?=
 =?utf-8?B?Wm9BMmJDSHFJMnpUZm9LcmZaM09Kbno4TjZTb1JnRk9rSHNyRVAvcksrRStR?=
 =?utf-8?B?SC80cXJjdVh2d1FGbkc5bjFqMXFHODE0ckJhYUFhVXZlN2lSWk55c1lOVWhi?=
 =?utf-8?B?eDBXUGYzU2FFMnJlQ1Y0K1lGdzhNRW1iMENESzh1ODgxcVMvdTZralJVTHEr?=
 =?utf-8?B?L0JkUE5SOExuY1lMeHIwMTU4cU1KQkFxMEZZOVRTbDFwbUx5eG5iVjRPREFu?=
 =?utf-8?Q?WtubZUszBOWglUptX/myuiDuv?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bf044f87-0826-41f8-ce88-08dbba90902f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 10:50:26.1935
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: luAPxqfFHQwh0+DHefo0boxWMGS2NC+aS7UlS3d1KaM2laMIMAprKNSBDyXhAKM7juLzotXnGhnXQS9T9d55hA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB9729

On 21.09.2023 10:30, Andrew Cooper wrote:
> On 21/09/2023 8:08 am, Jan Beulich wrote:
>> On 20.09.2023 12:50, GitLab wrote:
>>> Job #5127621916 ( https://gitlab.com/xen-project/xen/-/jobs/5127621916/raw )
>>>
>>> Stage: build
>>> Name: debian-stretch-gcc
>> This one failed with
>>
>> In file included from /builds/xen-project/xen/tools/qemu-xen-dir/include/qemu/timer.h:4:0,
>>                  from /builds/xen-project/xen/tools/qemu-xen-dir/include/qemu/timed-average.h:29,
>>                  from /builds/xen-project/xen/tools/qemu-xen-dir/include/block/accounting.h:28,
>>                  from /builds/xen-project/xen/tools/qemu-xen-dir/include/block/block_int.h:27,
>>                  from /builds/xen-project/xen/tools/qemu-xen-dir/block/file-posix.c:30:
>> /usr/include/linux/swab.h: In function '__swab':
>> /builds/xen-project/xen/tools/qemu-xen-dir/include/qemu/bitops.h:20:34: error: "sizeof" is not defined [-Werror=undef]
>>  #define BITS_PER_LONG           (sizeof (unsigned long) * BITS_PER_BYTE)
>>                                   ^
>> /builds/xen-project/xen/tools/qemu-xen-dir/include/qemu/bitops.h:20:41: error: missing binary operator before token "("
>>  #define BITS_PER_LONG           (sizeof (unsigned long) * BITS_PER_BYTE)
>>                                          ^
>> cc1: all warnings being treated as errors
>>
>> What? How can "sizeof" no be "defined"?
> 
> Because the expression is
> 
> #if (sizeof (unsigned long) * BITS_PER_BYTE) = 64
> 
> combined with -Werror=undef saying that it can't figure out out what
> sizeof is supposed to be here as a preprocessor token.

I still don't get it, I'm afraid. Qemu only #define-s BITS_PER_LONG this
way, while __BITS_PER_LONG is a plain constant. Yet it's the latter that
Linux'es swab.h uses in the #if (from its introduction in 5.6). Hence ...

> This needs a bump to qemu in order to fix, like we did on the newer
> branches.

... I can't see yet how doing so would help.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 11:24:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 11:24:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606318.944163 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjHmq-0003CL-Fe; Thu, 21 Sep 2023 11:24:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606318.944163; Thu, 21 Sep 2023 11:24:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjHmq-0003CE-Bc; Thu, 21 Sep 2023 11:24:00 +0000
Received: by outflank-mailman (input) for mailman id 606318;
 Thu, 21 Sep 2023 11:23:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x4Y2=FF=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qjHmo-0003C8-WE
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 11:23:59 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 59d0b56b-5871-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 13:23:56 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-183-caWjci2_PU2vrCR-xOsTNg-1; Thu, 21 Sep 2023 07:23:51 -0400
Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com
 [10.11.54.9])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 41D80101A550;
 Thu, 21 Sep 2023 11:23:50 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id DF48D71128D;
 Thu, 21 Sep 2023 11:23:49 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id D40E621E6900; Thu, 21 Sep 2023 13:23:48 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 59d0b56b-5871-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695295435;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=I+FZ1HLn1enArtG6hbpwub79OeJ+adjJG7s+VPyKwac=;
	b=eARDPBfx3Ao88UdjygNNeOgMq8pnRY6WKVXcFOL1wnlif0SrWCFG8+R7wDKYipyvK1jDof
	qlxIOnzG0HcxbbL3XMrDVsRevUJOu3e04Af+7hpli7fJ2Rkw6dlAdmBnsqBqD18gUNW7iO
	QHJPaisIZ57l9hrLCHK1zRG2tfNx33g=
X-MC-Unique: caWjci2_PU2vrCR-xOsTNg-1
From: Markus Armbruster <armbru@redhat.com>
To: Kevin Wolf <kwolf@redhat.com>
Cc: qemu-devel@nongnu.org,  hreitz@redhat.com,  eblake@redhat.com,
  vsementsov@yandex-team.ru,  jsnow@redhat.com,  idryomov@gmail.com,
  pl@kamp.de,  sw@weilnetz.de,  sstabellini@kernel.org,
  anthony.perard@citrix.com,  paul@xen.org,  pbonzini@redhat.com,
  marcandre.lureau@redhat.com,  berrange@redhat.com,  thuth@redhat.com,
  philmd@linaro.org,  stefanha@redhat.com,  fam@euphon.net,
  quintela@redhat.com,  peterx@redhat.com,  leobras@redhat.com,
  kraxel@redhat.com,  qemu-block@nongnu.org,
  xen-devel@lists.xenproject.org,  alex.bennee@linaro.org,
  peter.maydell@linaro.org
Subject: Re: [PATCH v2 7/7] qobject atomics osdep: Make a few macros more
 hygienic
References: <20230920183149.1105333-1-armbru@redhat.com>
	<20230920183149.1105333-8-armbru@redhat.com>
	<ZQwCEW4SBpI9f1Yx@redhat.com>
Date: Thu, 21 Sep 2023 13:23:48 +0200
In-Reply-To: <ZQwCEW4SBpI9f1Yx@redhat.com> (Kevin Wolf's message of "Thu, 21
	Sep 2023 10:42:57 +0200")
Message-ID: <87sf776a7v.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.9

Kevin Wolf <kwolf@redhat.com> writes:

> Am 20.09.2023 um 20:31 hat Markus Armbruster geschrieben:

[...]

>> diff --git a/include/qapi/qmp/qobject.h b/include/qapi/qmp/qobject.h
>> index 9003b71fd3..d36cc97805 100644
>> --- a/include/qapi/qmp/qobject.h
>> +++ b/include/qapi/qmp/qobject.h
>> @@ -45,10 +45,17 @@ struct QObject {
>>      struct QObjectBase_ base;
>>  };
>>  
>> -#define QOBJECT(obj) ({                                         \
>> +/*
>> + * Preprocessory sorcery ahead: use a different identifier for the
>> + * local variable in each expansion, so we can nest macro calls
>> + * without shadowing variables.
>> + */
>> +#define QOBJECT_INTERNAL(obj, _obj) ({                          \
>>      typeof(obj) _obj = (obj);                                   \
>> -    _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
>> +    _obj                                                        \
>> +        ? container_of(&(_obj)->base, QObject, base) : NULL;    \
>
> What happened here? The code in this line (or now two lines) seems to be
> unchanged apart from a strange looking newline.

Accident, will fix, thanks!

>>  })
>> +#define QOBJECT(obj) QOBJECT_INTERNAL((obj), MAKE_IDENTFIER(_obj))
>
> Kevin



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:11:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:11:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606333.944183 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIX1-0005Aw-Dl; Thu, 21 Sep 2023 12:11:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606333.944183; Thu, 21 Sep 2023 12:11:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIX1-0005Ap-9p; Thu, 21 Sep 2023 12:11:43 +0000
Received: by outflank-mailman (input) for mailman id 606333;
 Thu, 21 Sep 2023 12:11:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=iWz/=FF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qjIX0-0004uB-0F
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:11:42 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 055763e4-5878-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 14:11:40 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-82-50-59-70.retail.telecomitalia.it [82.50.59.70])
 by support.bugseng.com (Postfix) with ESMTPSA id A9FFB4EE073F;
 Thu, 21 Sep 2023 14:11:39 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 055763e4-5878-11ee-878a-cb3800f73035
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v3] xen/hypercalls: address violations of MISRA C:2012 Rule 8.3
Date: Thu, 21 Sep 2023 14:11:24 +0200
Message-Id: <2c3e9469b3e59c7c4d0128320515f2b3df2b4c1c.1695297383.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function declarations and definitions consistent.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
Changes in v3:
- removed changes involving types with fixed/unfixed width;
- uniformed parameter names of compat_memory_op() with {do,hvm}_memory_op().
---
Changes in v2:
- change compat_grant_table_op() definition instead of the declaration;
- use unsigned int for multicall()'s parameter in accordance with XEN
  coding style.
---
---
 xen/common/compat/grant_table.c | 22 +++++++++---------
 xen/common/compat/memory.c      | 40 ++++++++++++++++-----------------
 2 files changed, 31 insertions(+), 31 deletions(-)

diff --git a/xen/common/compat/grant_table.c b/xen/common/compat/grant_table.c
index f8177c84c0..e00bc24a34 100644
--- a/xen/common/compat/grant_table.c
+++ b/xen/common/compat/grant_table.c
@@ -57,7 +57,7 @@ CHECK_gnttab_cache_flush;
 #undef xen_gnttab_cache_flush
 
 int compat_grant_table_op(
-    unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) cmp_uop, unsigned int count)
+    unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) uop, unsigned int count)
 {
     int rc = 0;
     unsigned int i, cmd_op;
@@ -71,7 +71,7 @@ int compat_grant_table_op(
     {
 #define CASE(name) \
     case GNTTABOP_##name: \
-        if ( unlikely(!guest_handle_okay(guest_handle_cast(cmp_uop, \
+        if ( unlikely(!guest_handle_okay(guest_handle_cast(uop, \
                                                            gnttab_##name##_compat_t), \
                                          count)) ) \
             rc = -EFAULT; \
@@ -119,7 +119,7 @@ int compat_grant_table_op(
 
 #undef CASE
     default:
-        return do_grant_table_op(cmd, cmp_uop, count);
+        return do_grant_table_op(cmd, uop, count);
     }
 
     if ( (int)count < 0 )
@@ -148,7 +148,7 @@ int compat_grant_table_op(
         case GNTTABOP_setup_table:
             if ( unlikely(count > 1) )
                 rc = -EINVAL;
-            else if ( unlikely(__copy_from_guest(&cmp.setup, cmp_uop, 1)) )
+            else if ( unlikely(__copy_from_guest(&cmp.setup, uop, 1)) )
                 rc = -EFAULT;
             else if ( unlikely(!compat_handle_okay(cmp.setup.frame_list, cmp.setup.nr_frames)) )
                 rc = -EFAULT;
@@ -193,7 +193,7 @@ int compat_grant_table_op(
                 } while (0)
                 XLAT_gnttab_setup_table(&cmp.setup, nat.setup);
 #undef XLAT_gnttab_setup_table_HNDL_frame_list
-                if ( unlikely(__copy_to_guest(cmp_uop, &cmp.setup, 1)) )
+                if ( unlikely(__copy_to_guest(uop, &cmp.setup, 1)) )
                     rc = -EFAULT;
                 else
                     i = 1;
@@ -203,7 +203,7 @@ int compat_grant_table_op(
         case GNTTABOP_transfer:
             for ( n = 0; n < COMPAT_ARG_XLAT_SIZE / sizeof(*nat.xfer) && i < count && rc == 0; ++i, ++n )
             {
-                if ( unlikely(__copy_from_guest_offset(&cmp.xfer, cmp_uop, i, 1)) )
+                if ( unlikely(__copy_from_guest_offset(&cmp.xfer, uop, i, 1)) )
                     rc = -EFAULT;
                 else
                 {
@@ -222,7 +222,7 @@ int compat_grant_table_op(
             {
                 XEN_GUEST_HANDLE_PARAM(gnttab_transfer_compat_t) xfer;
 
-                xfer = guest_handle_cast(cmp_uop, gnttab_transfer_compat_t);
+                xfer = guest_handle_cast(uop, gnttab_transfer_compat_t);
                 guest_handle_add_offset(xfer, i);
                 cnt_uop = guest_handle_cast(xfer, void);
                 while ( n-- )
@@ -237,7 +237,7 @@ int compat_grant_table_op(
         case GNTTABOP_copy:
             for ( n = 0; n < COMPAT_ARG_XLAT_SIZE / sizeof(*nat.copy) && i < count && rc == 0; ++i, ++n )
             {
-                if ( unlikely(__copy_from_guest_offset(&cmp.copy, cmp_uop, i, 1)) )
+                if ( unlikely(__copy_from_guest_offset(&cmp.copy, uop, i, 1)) )
                     rc = -EFAULT;
                 else
                 {
@@ -267,7 +267,7 @@ int compat_grant_table_op(
             {
                 XEN_GUEST_HANDLE_PARAM(gnttab_copy_compat_t) copy;
 
-                copy = guest_handle_cast(cmp_uop, gnttab_copy_compat_t);
+                copy = guest_handle_cast(uop, gnttab_copy_compat_t);
                 guest_handle_add_offset(copy, i);
                 cnt_uop = guest_handle_cast(copy, void);
                 while ( n-- )
@@ -285,7 +285,7 @@ int compat_grant_table_op(
                 rc = -EINVAL;
                 break;
             }
-            if ( unlikely(__copy_from_guest(&cmp.get_status, cmp_uop, 1) ||
+            if ( unlikely(__copy_from_guest(&cmp.get_status, uop, 1) ||
                           !compat_handle_okay(cmp.get_status.frame_list,
                                               cmp.get_status.nr_frames)) )
             {
@@ -303,7 +303,7 @@ int compat_grant_table_op(
             if ( rc >= 0 )
             {
                 XEN_GUEST_HANDLE_PARAM(gnttab_get_status_frames_compat_t) get =
-                    guest_handle_cast(cmp_uop,
+                    guest_handle_cast(uop,
                                       gnttab_get_status_frames_compat_t);
 
                 if ( unlikely(__copy_field_to_guest(get, nat.get_status,
diff --git a/xen/common/compat/memory.c b/xen/common/compat/memory.c
index 8c34f201c2..45e5fb0e5d 100644
--- a/xen/common/compat/memory.c
+++ b/xen/common/compat/memory.c
@@ -54,7 +54,7 @@ static int cf_check get_reserved_device_memory(
 }
 #endif
 
-int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
+int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
 {
     struct vcpu *curr = current;
     struct domain *currd = curr->domain;
@@ -96,7 +96,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
         case XENMEM_increase_reservation:
         case XENMEM_decrease_reservation:
         case XENMEM_populate_physmap:
-            if ( copy_from_guest(&cmp.rsrv, compat, 1) )
+            if ( copy_from_guest(&cmp.rsrv, arg, 1) )
                 return start_extent;
 
             /* Is size too large for us to encode a continuation? */
@@ -158,7 +158,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
         {
             int order_delta;
 
-            if ( copy_from_guest(&cmp.xchg, compat, 1) )
+            if ( copy_from_guest(&cmp.xchg, arg, 1) )
                 return -EFAULT;
 
             order_delta = cmp.xchg.out.extent_order - cmp.xchg.in.extent_order;
@@ -241,14 +241,14 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
         case XENMEM_maximum_reservation:
         case XENMEM_maximum_gpfn:
         case XENMEM_maximum_ram_page:
-            nat.hnd = compat;
+            nat.hnd = arg;
             break;
 
         case XENMEM_add_to_physmap:
             BUILD_BUG_ON((typeof(cmp.atp.size))-1 >
                          (UINT_MAX >> MEMOP_EXTENT_SHIFT));
 
-            if ( copy_from_guest(&cmp.atp, compat, 1) )
+            if ( copy_from_guest(&cmp.atp, arg, 1) )
                 return -EFAULT;
 
             XLAT_add_to_physmap(nat.atp, &cmp.atp);
@@ -271,7 +271,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
             enum XLAT_add_to_physmap_batch_u u =
                 XLAT_add_to_physmap_batch_u_res0;
 
-            if ( copy_from_guest(&cmp.atpb, compat, 1) )
+            if ( copy_from_guest(&cmp.atpb, arg, 1) )
                 return -EFAULT;
             size = cmp.atpb.size;
             if ( !compat_handle_okay(cmp.atpb.idxs, size) ||
@@ -322,7 +322,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
 
         case XENMEM_remove_from_physmap:
         {
-            if ( copy_from_guest(&cmp.xrfp, compat, 1) )
+            if ( copy_from_guest(&cmp.xrfp, arg, 1) )
                 return -EFAULT;
 
             XLAT_remove_from_physmap(nat.xrfp, &cmp.xrfp);
@@ -331,7 +331,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
         }
 
         case XENMEM_access_op:
-            if ( copy_from_guest(&cmp.mao, compat, 1) )
+            if ( copy_from_guest(&cmp.mao, arg, 1) )
                 return -EFAULT;
             
 #define XLAT_mem_access_op_HNDL_pfn_list(_d_, _s_)                      \
@@ -355,7 +355,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
             enum XLAT_vnuma_topology_info_vmemrange vmemrange =
                 XLAT_vnuma_topology_info_vmemrange_h;
 
-            if ( copy_from_guest(&cmp.vnuma, compat, 1) )
+            if ( copy_from_guest(&cmp.vnuma, arg, 1) )
                 return -EFAULT;
 
 #define XLAT_vnuma_topology_info_HNDL_vdistance_h(_d_, _s_)		\
@@ -381,7 +381,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
             if ( unlikely(start_extent) )
                 return -EINVAL;
 
-            if ( copy_from_guest(&grdm.map, compat, 1) ||
+            if ( copy_from_guest(&grdm.map, arg, 1) ||
                  !compat_handle_okay(grdm.map.buffer, grdm.map.nr_entries) )
                 return -EFAULT;
 
@@ -395,7 +395,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
             if ( !rc && grdm.map.nr_entries < grdm.used_entries )
                 rc = -ENOBUFS;
             grdm.map.nr_entries = grdm.used_entries;
-            if ( __copy_to_guest(compat, &grdm.map, 1) )
+            if ( __copy_to_guest(arg, &grdm.map, 1) )
                 rc = -EFAULT;
 
             return rc;
@@ -406,7 +406,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
         {
             xen_pfn_t *xen_frame_list = NULL;
 
-            if ( copy_from_guest(&cmp.mar, compat, 1) )
+            if ( copy_from_guest(&cmp.mar, arg, 1) )
                 return -EFAULT;
 
             /* Marshal the frame list in the remainder of the xlat space. */
@@ -470,7 +470,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
             break;
         }
         default:
-            return compat_arch_memory_op(cmd, compat);
+            return compat_arch_memory_op(cmd, arg);
         }
 
         rc = do_memory_op(cmd, nat.hnd);
@@ -481,14 +481,14 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
                 cmp.vnuma.nr_vnodes = nat.vnuma->nr_vnodes;
                 cmp.vnuma.nr_vcpus = nat.vnuma->nr_vcpus;
                 cmp.vnuma.nr_vmemranges = nat.vnuma->nr_vmemranges;
-                if ( __copy_to_guest(compat, &cmp.vnuma, 1) )
+                if ( __copy_to_guest(arg, &cmp.vnuma, 1) )
                     rc = -EFAULT;
             }
             break;
         }
 
         cmd = 0;
-        if ( hypercall_xlat_continuation(&cmd, 2, 0x02, nat.hnd, compat) )
+        if ( hypercall_xlat_continuation(&cmd, 2, 0x02, nat.hnd, arg) )
         {
             BUG_ON(rc != __HYPERVISOR_memory_op);
             BUG_ON((cmd & MEMOP_CMD_MASK) != op);
@@ -573,7 +573,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
             }
 
             cmp.xchg.nr_exchanged = nat.xchg->nr_exchanged;
-            if ( __copy_field_to_guest(guest_handle_cast(compat,
+            if ( __copy_field_to_guest(guest_handle_cast(arg,
                                                          compat_memory_exchange_t),
                                        &cmp.xchg, nr_exchanged) )
                 rc = -EFAULT;
@@ -605,7 +605,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
             cmp.vnuma.nr_vnodes = nat.vnuma->nr_vnodes;
             cmp.vnuma.nr_vcpus = nat.vnuma->nr_vcpus;
             cmp.vnuma.nr_vmemranges = nat.vnuma->nr_vmemranges;
-            if ( __copy_to_guest(compat, &cmp.vnuma, 1) )
+            if ( __copy_to_guest(arg, &cmp.vnuma, 1) )
                 rc = -EFAULT;
             break;
 
@@ -618,7 +618,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
             {
                 ASSERT(split == 0 && rc == 0);
                 if ( __copy_field_to_guest(
-                         guest_handle_cast(compat,
+                         guest_handle_cast(arg,
                                            compat_mem_acquire_resource_t),
                          nat.mar, nr_frames) )
                     return -EFAULT;
@@ -707,7 +707,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
             if ( done < nat.mar->nr_frames )
                 return hypercall_create_continuation(
                     __HYPERVISOR_memory_op, "ih",
-                    op | (start_extent << MEMOP_EXTENT_SHIFT), compat);
+                    op | (start_extent << MEMOP_EXTENT_SHIFT), arg);
 
             /*
              * Well... Somethings gone wrong with the two levels of chunking.
@@ -728,7 +728,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
         cmd = op | (start_extent << MEMOP_EXTENT_SHIFT);
         if ( split > 0 && hypercall_preempt_check() )
             return hypercall_create_continuation(
-                __HYPERVISOR_memory_op, "ih", cmd, compat);
+                __HYPERVISOR_memory_op, "ih", cmd, arg);
     } while ( split > 0 );
 
     if ( unlikely(rc > INT_MAX) )
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:11:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:11:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606332.944173 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIWr-0004uO-5e; Thu, 21 Sep 2023 12:11:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606332.944173; Thu, 21 Sep 2023 12:11:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIWr-0004uH-2F; Thu, 21 Sep 2023 12:11:33 +0000
Received: by outflank-mailman (input) for mailman id 606332;
 Thu, 21 Sep 2023 12:11:31 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=4TUc=FF=suse.com=nik.borisov@srs-se1.protection.inumbo.net>)
 id 1qjIWp-0004uB-GF
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:11:31 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20605.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ff0de995-5877-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 14:11:30 +0200 (CEST)
Received: from PA4PR04MB7790.eurprd04.prod.outlook.com (2603:10a6:102:cc::8)
 by AM0PR04MB6801.eurprd04.prod.outlook.com (2603:10a6:208:18d::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Thu, 21 Sep
 2023 12:11:27 +0000
Received: from PA4PR04MB7790.eurprd04.prod.outlook.com
 ([fe80::edd3:f00:3088:6e61]) by PA4PR04MB7790.eurprd04.prod.outlook.com
 ([fe80::edd3:f00:3088:6e61%4]) with mapi id 15.20.6813.017; Thu, 21 Sep 2023
 12:11:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ff0de995-5877-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LO42/PrvKoII8kw5Wxe6N/3e196hE2RagyBqIp7qvhVW57fvxr44E8jQzBG21RaIaHhkU6fEoItJ8svX3eBjKhhmHk24ClMR6dsluaIZ1LE0bZWAd7q2RAz68HZkhz5hFaWwD2/ABa1Tzm+D/b1IdIXi7S1WJyZsAURkjFsqxScMaR5rAUtGSvVDnN4n2vH8NweeRuzV1bShU1Kirstix1QAJyBqiv+OwoWvYG6KOrIgH9ZEjTVVvtFEssT28d+BcK11l7zXh0CMkKx69ryjazEoZhwhzGNJmERTIBWM1+/tH6w2gfMzFeJptytKh6MI1Ipw23n+SgUuzy41QNqeDg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=H9IV9WD6UoE+UWKkaa5daXyJPGea+Ww6mWdg7JHay50=;
 b=TC3cHOpUMcLosovSArjiG7N3ZsXlxfA8Wmcr4wKtRYSKa4Ewnh55D6J33Qn9UYGfsLXRIbXr6v0IcY3+m6ptuURJjB4fjLXyzFIi9QurVI0giXEfpSZLBhjRSiXj32uw7wRu3kn6T25WbYhaGokIT6M2pEwooIwlmslMUPpEIv9wTZwwIY6VP202VHVddxWQXPZ31CFkHMZUjiI2wTMNVlcvA7iL2LDOCLZot+EcXqzD4m8ah9V8rt3f1yMrcdNS8Mbqh8dAhsdapV/z1kC2gRvtJ/LfYq5K/vK8s+i9Bi3eqYP2Va/rbeAPPsVRjl3CaJdAwTyIqY5qusadgRl4PA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=H9IV9WD6UoE+UWKkaa5daXyJPGea+Ww6mWdg7JHay50=;
 b=Uqg9Vq3KoSd7gphRgPNghZ4jpjiZcpXv70UocHAZTL4aia6YoOoz6RquxMWVcery9xCpXPzjodfTjhX1LzngMg5c0Nh2Fh6XSrI49t91ramDTM1DlB7QOFCPZnLVjUN8F0iZ7Gd1lb6t0XFDK3oE2L4xCc34LcBlCUfGliL+nE1SQtcs4wxpm0AhyFuDBTNMtS290h0zP6cn9x9l7Vz7Mb2UUxpjZ3PWkVHp/pHaVnP+/QsYoOV8hfx3wcXUTu/yRxWB0mOln/nnRlwdRFqiTdO/1NezXc3gmr469qTWU0ncXRnYYzIj5hbjTssMx5HTYH7V5F4WAiLqTltJD3W8Jw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <8163cf98-8968-72a4-4193-1ca9f019d9ff@suse.com>
Date: Thu, 21 Sep 2023 15:11:23 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v10 33/38] x86/entry: Add fred_entry_from_kvm() for VMX to
 handle IRQ/NMI
Content-Language: en-US
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 andrew.cooper3@citrix.com, jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-34-xin3.li@intel.com>
From: Nikolay Borisov <nik.borisov@suse.com>
In-Reply-To: <20230914044805.301390-34-xin3.li@intel.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: VI1PR08CA0253.eurprd08.prod.outlook.com
 (2603:10a6:803:dc::26) To PA4PR04MB7790.eurprd04.prod.outlook.com
 (2603:10a6:102:cc::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: PA4PR04MB7790:EE_|AM0PR04MB6801:EE_
X-MS-Office365-Filtering-Correlation-Id: f3ebf7a5-5cdd-4cd4-e24d-08dbba9be140
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YNLHD63wczbh8HeKxfw2i8WE0xaGtFTTWDIFZir5GzGUnBy12mRbcpkXcLvldydJZqpTVuYGV4XFMfFRGVfvs9dJevUIU4VY+Z3B7rGix0QAVm8AuPEvlpkgpVXPFAIYN3ej3I//EX0yA6hOQoWPOiIgWb0MTSYlx5fj052lHRMur+UjnO+B2N7ZcDJbPvXwJHcsX/SqcfV/We0isp9/HNg4LlD7ixWAwWXfi1MEksEI0OyQLIsaRc/nsLgr5hnfsPhzAVN3+rczKvd16KhisyS3VmFhukuJIsmt5pOmvL3LKI5E3uE2K3f5uCBS22Xl5gLPzgLq4HuFR7qZAcV3VMoRvx2r/HiUmNnl5bGnU3qHKJJ7qULyRtELRgokuI9bX2j7IW2UPhFZht3QWVj0l7L2C67thTb0IgqSgw1LcGu/dVylUeLgZq7ZbBeUn3SZRu0xWG1YfxRmZlvwtdP4ZECPnRl5yOa8KVK5a/HxHyqI+9luKyvO5uUsft0J7VsNra5jqyAQhB5VB9+zBhwu8yEgZV0nu4D/U60LmlFf4P8RQimLnu52W3Nq3IjN7P5ygMX5Ef4G8qf/hHETGQxHNyiUxxYOOqGl8tJbN0l9s+uCA8dl8kB9+8y6eCAOGKtul8Un7JtpXCcFbhZCR7GHmQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PA4PR04MB7790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(396003)(346002)(39860400002)(366004)(451199024)(186009)(1800799009)(31686004)(6486002)(6666004)(6506007)(38100700002)(478600001)(36756003)(31696002)(86362001)(316002)(83380400001)(7416002)(2906002)(4326008)(41300700001)(5660300002)(8676002)(66476007)(8936002)(66556008)(26005)(6512007)(2616005)(66946007)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RUR4RmtBclduM3llNFA2SkpxODRNcFlSZkRVYW5HR0RqN1JkSUFWUm1tandB?=
 =?utf-8?B?Z1VUbUhhUGRCOWNvSWorS1l2REltcDFTOENZY1luNFRJUU54bTY0Tlgwb1Bw?=
 =?utf-8?B?dmpqcXk4MGtDSTdDVFd1NmZUM0l1VUFYVWF3di9MWkh6QWltUjRJc09OU2tP?=
 =?utf-8?B?MUhJa0I1Nnl2SmZoOXlUUkJtK2RxTm1hYmgvbmhpOHR1ejBZNU1tM3dHdmlH?=
 =?utf-8?B?NXhjNHcwYnN4RVBZTytMZG9zTXBFZFVzQ1EvVzRPc2JwT3JBTFlzWkJJVnQy?=
 =?utf-8?B?MkdEZVZzRm9tcGEvMlI4QVp5Z1lFWEluSVdNQmxvNTBWRys3T3NQWjlnbmFz?=
 =?utf-8?B?UXNTUDluRXdSTXBoODNGWGNKR1NCVFlKN2JuYTdlaWpuTjhFUzJLdjNWbW9L?=
 =?utf-8?B?aHpBbGxCTEZuaFJGcEFQZzZkcWV5d0F4UVo3MHU4bm96WkNBL29Zb1RwWGlR?=
 =?utf-8?B?QUtnMFdDU2ZWSFFKVHZNUHVkZHNIYjFIdCtKcjFXTVVKM2xIZjFnWXhML2dL?=
 =?utf-8?B?Y3NVay9mdXZLR3NpUisyWkZBbWpTbkJRM2E1UnNaalV1cTNydEhDUWdaQit6?=
 =?utf-8?B?dDFKTTFIekIwUVZXWG5FV0o0WjJNM0UvYzZqbFBkU3pEUEZKM2V3N0xWNmlo?=
 =?utf-8?B?MDBROGtqRFlHM0pLaGxvaFFjaFNoU09OTmZ5N3BMYXRuUEJGQnhnbWtSci90?=
 =?utf-8?B?Q3Z6ejFnZnJhek1MTytLcG5aU3BITzAxSWREV1E4N2l5RDlNbHltN1BFTFpD?=
 =?utf-8?B?Z3VTVmp0eHEwbEpOSW53RlFKUXAyU0J4bVB3anQ0WTUvQUNJdGo4VytmT2hk?=
 =?utf-8?B?MDRsNDJ0Y1J4SS83bm9VR1JWd3lIZkl5algzYUoxN3NYNDZqeGx0U0EveENo?=
 =?utf-8?B?cVJGbFhwaXVsVnUyU3JxU3VXNlVvUXhmdjlRcUNWUmR6M3NQMFNBZjB3a00z?=
 =?utf-8?B?TzZ4RWtOY3VFY0xmbC9wYmg5QSs0ZHFnQ2FSa1lVZXNpeFYvR1hlclRTMTRU?=
 =?utf-8?B?VlFLWDB4UnNmbUM5dU03OUphaGo1LzJRZjIvbkZOMkYvd1BvM3B4dEZsS1RW?=
 =?utf-8?B?a0xpblZkMTVZRlRVeG4zSkFxREJBK2ZUdEFUMG9zNWpUTzdkNTBZNkYydVpN?=
 =?utf-8?B?QzdkejFPYnkxdE9mMWRLWjBSZUE1SjJ1Q3MrNjZJTUJmMG9mQWc5Y2laend0?=
 =?utf-8?B?a2ZPQ2c1cFlEbFhTRTB6M212aHg1TmZmZEQ1Wm83T2lycXlNY2NBTGViNWlO?=
 =?utf-8?B?eElYMjdHM0lHWjlpbTNWNDRvaTQrekFwWVorMVVyaG9hOTVrTWVDNjI2V0kx?=
 =?utf-8?B?aFZLbGVDSUR1QXRDQ0k0L29Na3p5RU1zYlhqVkJOUUdTd3VWc3p6SEpHOStQ?=
 =?utf-8?B?anF1c1RLVlRDWjNvYlBpakR2cGg2V25xb3pka1Z6L1NwazRmWTU2azNqZ2Za?=
 =?utf-8?B?bVdYb0hSSVRJalp0U3VKa21GQkRtQjFyU3Q4RENwUDllajFYazlnSFNxR0JB?=
 =?utf-8?B?cFEvVEp4ajNxTWhJV01vM1hZWUtUWnpNY3BqcncvcjduYWFNVE5PZ1ZhZjli?=
 =?utf-8?B?Kzc2R2NvaUtPT3FZQzZiUW5FdnZsQ3FZem05R0Ztdm5KMDJ4WHl4UXJjZFdN?=
 =?utf-8?B?Vk03OUt1RDhHZEJHTC82SW85R1FIWEYwTFg1amI5MUxQSkZReCtJckZBWGgw?=
 =?utf-8?B?c3RjUVlwRXlMZXBpNm9WVWRqeDBjYnIyNlZuMmZsdUxhc2FpKzNXd0pBYnBX?=
 =?utf-8?B?dTh1TTFGbjlGOXBtc3YyZVNGaFNWR3ZtTDNSUlpUNHVYVkR0MW8wTkJVYTFE?=
 =?utf-8?B?VUxnSTVIUmpzN0V6Z0VVQVM2bjRDc3pPSklJMUFQbXFCUFpOempiT2R0WGZr?=
 =?utf-8?B?Qk9LZ3JRdXhmemJBUEVpdldZUURRbTZ6SG9GY1hJeUFOOFIvV0UrWjI1Z1ow?=
 =?utf-8?B?VWdDL2VKdXdHMXp5cFBzdEpkTEJwdU1VVEdQbFpWTFVjUVN4cklQeWRIUmlv?=
 =?utf-8?B?djA2U1VmVWQzSXBPTEJRZzU1eHVKNE1FL1VCNHU1Q0NhTFRoWkFFUTVqWmNE?=
 =?utf-8?B?aVY0MW5VNldPaWRwQkJ5dFlZRE9rb2tFUlpzV0kycUZ2RStkU2hoWlVkSU04?=
 =?utf-8?Q?6YchFrjPBqpcK6VZ3u/9bj57B?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f3ebf7a5-5cdd-4cd4-e24d-08dbba9be140
X-MS-Exchange-CrossTenant-AuthSource: PA4PR04MB7790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 12:11:26.7228
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: QG6kBdutwZxJJYRWXoPMa9WDXMLFB2mf+GLKTzKfZN5Bi32rOz9/VM+u2/KIL10SiDHeSWKfFgb8vOGsNsEDrQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB6801



On 14.09.23 г. 7:48 ч., Xin Li wrote:
> In IRQ/NMI induced VM exits, KVM VMX needs to execute the respective
> handlers, which requires the software to create a FRED stack frame,
> and use it to invoke the handlers. Add fred_irq_entry_from_kvm() for
> this job.
> 
> Export fred_entry_from_kvm() because VMX can be compiled as a module.
> 
> Suggested-by: Sean Christopherson <seanjc@google.com>
> Tested-by: Shan Kang <shan.kang@intel.com>
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
> Signed-off-by: Xin Li <xin3.li@intel.com>
> ---
> 
> Changes since v9:
> * Shove the whole thing into arch/x86/entry/entry_64_fred.S for invoking
>    external_interrupt() and fred_exc_nmi() (Sean Christopherson).
> * Correct and improve a few comments (Sean Christopherson).
> * Merge the two IRQ/NMI asm entries into one as it's fine to invoke
>    noinstr code from regular code (Thomas Gleixner).
> * Setup the long mode and NMI flags in the augmented SS field of FRED
>    stack frame in C instead of asm (Thomas Gleixner).
> * Add UNWIND_HINT_{SAVE,RESTORE} to get rid of the warning: "objtool:
>    asm_fred_entry_from_kvm+0x0: unreachable instruction" (Peter Zijlstra).
> 
> Changes since v8:
> * Add a new macro VMX_DO_FRED_EVENT_IRQOFF for FRED instead of
>    refactoring VMX_DO_EVENT_IRQOFF (Sean Christopherson).
> * Do NOT use a trampoline, just LEA+PUSH the return RIP, PUSH the error
>    code, and jump to the FRED kernel entry point for NMI or call
>    external_interrupt() for IRQs (Sean Christopherson).
> * Call external_interrupt() only when FRED is enabled, and convert the
>    non-FRED handling to external_interrupt() after FRED lands (Sean
>    Christopherson).
> ---
>   arch/x86/entry/entry_64_fred.S | 73 ++++++++++++++++++++++++++++++++++
>   arch/x86/entry/entry_fred.c    | 14 +++++++
>   arch/x86/include/asm/fred.h    | 18 +++++++++
>   3 files changed, 105 insertions(+)
> 
> diff --git a/arch/x86/entry/entry_64_fred.S b/arch/x86/entry/entry_64_fred.S
> index d1c2fc4af8ae..f1088d6f2054 100644
> --- a/arch/x86/entry/entry_64_fred.S
> +++ b/arch/x86/entry/entry_64_fred.S
> @@ -4,7 +4,9 @@
>    */
>   
>   #include <asm/asm.h>
> +#include <asm/export.h>
>   #include <asm/fred.h>
> +#include <asm/segment.h>
>   
>   #include "calling.h"
>   
> @@ -54,3 +56,74 @@ SYM_CODE_START_NOALIGN(asm_fred_entrypoint_kernel)
>   	FRED_EXIT
>   	ERETS
>   SYM_CODE_END(asm_fred_entrypoint_kernel)
> +
> +#if IS_ENABLED(CONFIG_KVM_INTEL)
> +SYM_FUNC_START(asm_fred_entry_from_kvm)
> +	push %rbp
> +	mov %rsp, %rbp

use FRAME_BEGIN/FRAME_END macros to ommit this code if 
CONFIG_FRAME_POINTER is disabled.

> +
> +	UNWIND_HINT_SAVE
> +
> +	/*
> +	 * Don't check the FRED stack level, the call stack leading to this
> +	 * helper is effectively constant and shallow (relatively speaking).
> +	 *
> +	 * Emulate the FRED-defined redzone and stack alignment.
> +	 */
> +	sub $(FRED_CONFIG_REDZONE_AMOUNT << 6), %rsp
> +	and $FRED_STACK_FRAME_RSP_MASK, %rsp
> +
> +	/*
> +	 * Start to push a FRED stack frame, which is always 64 bytes:
> +	 *
> +	 * +--------+-----------------+
> +	 * | Bytes  | Usage           |
> +	 * +--------+-----------------+
> +	 * | 63:56  | Reserved        |
> +	 * | 55:48  | Event Data      |
> +	 * | 47:40  | SS + Event Info |
> +	 * | 39:32  | RSP             |
> +	 * | 31:24  | RFLAGS          |
> +	 * | 23:16  | CS + Aux Info   |
> +	 * |  15:8  | RIP             |
> +	 * |   7:0  | Error Code      |
> +	 * +--------+-----------------+
> +	 */
> +	push $0				/* Reserved, must be 0 */
> +	push $0				/* Event data, 0 for IRQ/NMI */
> +	push %rdi			/* fred_ss handed in by the caller */
> +	push %rbp
> +	pushf
> +	mov $__KERNEL_CS, %rax
> +	push %rax
> +
> +	/*
> +	 * Unlike the IDT event delivery, FRED _always_ pushes an error code
> +	 * after pushing the return RIP, thus the CALL instruction CANNOT be
> +	 * used here to push the return RIP, otherwise there is no chance to
> +	 * push an error code before invoking the IRQ/NMI handler.
> +	 *
> +	 * Use LEA to get the return RIP and push it, then push an error code.
> +	 */
> +	lea 1f(%rip), %rax
> +	push %rax				/* Return RIP */
> +	push $0					/* Error code, 0 for IRQ/NMI */
> +
> +	PUSH_AND_CLEAR_REGS clear_bp=0 unwind_hint=0
> +	movq %rsp, %rdi				/* %rdi -> pt_regs */
> +	call __fred_entry_from_kvm		/* Call the C entry point */
> +	POP_REGS
> +	ERETS
> +1:
> +	/*
> +	 * Objtool doesn't understand what ERETS does, this hint tells it that
> +	 * yes, we'll reach here and with what stack state. A save/restore pair
> +	 * isn't strictly needed, but it's the simplest form.
> +	 */
> +	UNWIND_HINT_RESTORE
> +	pop %rbp

FRAME_END

> +	RET
> +
> +SYM_FUNC_END(asm_fred_entry_from_kvm)
> +EXPORT_SYMBOL_GPL(asm_fred_entry_from_kvm);
> +#endif


<snip>


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:13:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:13:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606344.944197 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYd-000636-0x; Thu, 21 Sep 2023 12:13:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606344.944197; Thu, 21 Sep 2023 12:13:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYc-00062P-T5; Thu, 21 Sep 2023 12:13:22 +0000
Received: by outflank-mailman (input) for mailman id 606344;
 Thu, 21 Sep 2023 12:13:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x4Y2=FF=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qjIYb-0005zb-DP
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:13:21 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3fff6405-5878-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 14:13:20 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-182-5_X9raAMNZ-nWO8uzwjdzg-1; Thu, 21 Sep 2023 08:13:17 -0400
Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com
 [10.11.54.9])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id ED0F718811DB;
 Thu, 21 Sep 2023 12:13:13 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 7751771128B;
 Thu, 21 Sep 2023 12:13:13 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 6C8D721E6901; Thu, 21 Sep 2023 14:13:12 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3fff6405-5878-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695298398;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=7+kvih7WUVKTB4fICaTU1GrKP7IsuBZJAWKDMqRyWBI=;
	b=dEym07gGYKpYDtyyzh3seW+tDvfzXmdCQGIjDvWG1RY0qIfE1xCaeNBskMbw0dOuCrUbx2
	+XFxXI5KjTFQOr8J8esiosnEpr8xEt4DiO8T8qwqlsBhQ7CB3ZX5E19TgSasA0Ts5xVCg9
	zfTcoNpFJAjDS6UE52VD1/O6yEluT4c=
X-MC-Unique: 5_X9raAMNZ-nWO8uzwjdzg-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org,
	Li Zhijian <lizhijian@fujitsu.com>
Subject: [PATCH v3 1/7] migration/rdma: Fix save_page method to fail on polling error
Date: Thu, 21 Sep 2023 14:13:06 +0200
Message-ID: <20230921121312.1301864-2-armbru@redhat.com>
In-Reply-To: <20230921121312.1301864-1-armbru@redhat.com>
References: <20230921121312.1301864-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.9

qemu_rdma_save_page() reports polling error with error_report(), then
succeeds anyway.  This is because the variable holding the polling
status *shadows* the variable the function returns.  The latter
remains zero.

Broken since day one, and duplicated more recently.

Fixes: 2da776db4846 (rdma: core logic)
Fixes: b390afd8c50b (migration/rdma: Fix out of order wrid)
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Li Zhijian <lizhijian@fujitsu.com>
---
 migration/rdma.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/migration/rdma.c b/migration/rdma.c
index a2a3db35b1..3915d1d7c9 100644
--- a/migration/rdma.c
+++ b/migration/rdma.c
@@ -3282,7 +3282,8 @@ static size_t qemu_rdma_save_page(QEMUFile *f,
      */
     while (1) {
         uint64_t wr_id, wr_id_in;
-        int ret = qemu_rdma_poll(rdma, rdma->recv_cq, &wr_id_in, NULL);
+        ret = qemu_rdma_poll(rdma, rdma->recv_cq, &wr_id_in, NULL);
+
         if (ret < 0) {
             error_report("rdma migration: polling error! %d", ret);
             goto err;
@@ -3297,7 +3298,8 @@ static size_t qemu_rdma_save_page(QEMUFile *f,
 
     while (1) {
         uint64_t wr_id, wr_id_in;
-        int ret = qemu_rdma_poll(rdma, rdma->send_cq, &wr_id_in, NULL);
+        ret = qemu_rdma_poll(rdma, rdma->send_cq, &wr_id_in, NULL);
+
         if (ret < 0) {
             error_report("rdma migration: polling error! %d", ret);
             goto err;
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:13:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:13:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606343.944193 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYc-000603-P1; Thu, 21 Sep 2023 12:13:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606343.944193; Thu, 21 Sep 2023 12:13:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYc-0005zw-Ka; Thu, 21 Sep 2023 12:13:22 +0000
Received: by outflank-mailman (input) for mailman id 606343;
 Thu, 21 Sep 2023 12:13:20 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x4Y2=FF=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qjIYa-0005zb-Nu
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:13:20 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3febeacc-5878-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 14:13:19 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-450-IeFTCVl4MGS6yFAGtgTaNg-1; Thu, 21 Sep 2023 08:13:15 -0400
Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com
 [10.11.54.6])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 15619811E96;
 Thu, 21 Sep 2023 12:13:14 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 793E62156702;
 Thu, 21 Sep 2023 12:13:13 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 73C8021E6905; Thu, 21 Sep 2023 14:13:12 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3febeacc-5878-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695298398;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=eRiwxpdA+MVBek+OK2IN4IV4BhmaUPfwd9cfv4fQ8qc=;
	b=QFVqLC7P3ziyBpRZnnsJmrgXV/+v65qShZxXpIFuKsyuXEbiggV6XKL+Xf/PSNJwuwSNpC
	w147qQ35IpSrVRzxInYsXf2c2Bq5I8oOv0E5T4v0yuqduHvOjo98UeGKw0fsjGggOh91gi
	1h30D+xMVNzqLPqLl37pCK7uYM1yICA=
X-MC-Unique: IeFTCVl4MGS6yFAGtgTaNg-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v3 3/7] ui: Clean up local variable shadowing
Date: Thu, 21 Sep 2023 14:13:08 +0200
Message-ID: <20230921121312.1301864-4-armbru@redhat.com>
In-Reply-To: <20230921121312.1301864-1-armbru@redhat.com>
References: <20230921121312.1301864-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand.  Tracked down with -Wshadow=local.
Clean up: delete inner declarations when they are actually redundant,
else rename variables.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
---
 ui/gtk.c              | 14 +++++++-------
 ui/spice-display.c    |  9 +++++----
 ui/vnc-palette.c      |  2 --
 ui/vnc.c              | 12 ++++++------
 ui/vnc-enc-zrle.c.inc |  9 ++++-----
 5 files changed, 22 insertions(+), 24 deletions(-)

diff --git a/ui/gtk.c b/ui/gtk.c
index e09f97a86b..3373427c9b 100644
--- a/ui/gtk.c
+++ b/ui/gtk.c
@@ -930,8 +930,8 @@ static gboolean gd_motion_event(GtkWidget *widget, GdkEventMotion *motion,
         GdkMonitor *monitor = gdk_display_get_monitor_at_window(dpy, win);
         GdkRectangle geometry;
 
-        int x = (int)motion->x_root;
-        int y = (int)motion->y_root;
+        int xr = (int)motion->x_root;
+        int yr = (int)motion->y_root;
 
         gdk_monitor_get_geometry(monitor, &geometry);
 
@@ -942,13 +942,13 @@ static gboolean gd_motion_event(GtkWidget *widget, GdkEventMotion *motion,
          * may still be only half way across the screen. Without
          * this warp, the server pointer would thus appear to hit
          * an invisible wall */
-        if (x <= geometry.x || x - geometry.x >= geometry.width - 1 ||
-            y <= geometry.y || y - geometry.y >= geometry.height - 1) {
+        if (xr <= geometry.x || xr - geometry.x >= geometry.width - 1 ||
+            yr <= geometry.y || yr - geometry.y >= geometry.height - 1) {
             GdkDevice *dev = gdk_event_get_device((GdkEvent *)motion);
-            x = geometry.x + geometry.width / 2;
-            y = geometry.y + geometry.height / 2;
+            xr = geometry.x + geometry.width / 2;
+            yr = geometry.y + geometry.height / 2;
 
-            gdk_device_warp(dev, screen, x, y);
+            gdk_device_warp(dev, screen, xr, yr);
             s->last_set = FALSE;
             return FALSE;
         }
diff --git a/ui/spice-display.c b/ui/spice-display.c
index 5cc47bd668..6eb98a5a5c 100644
--- a/ui/spice-display.c
+++ b/ui/spice-display.c
@@ -1081,15 +1081,16 @@ static void qemu_spice_gl_update(DisplayChangeListener *dcl,
     }
 
     if (render_cursor) {
-        int x, y;
+        int ptr_x, ptr_y;
+
         qemu_mutex_lock(&ssd->lock);
-        x = ssd->ptr_x;
-        y = ssd->ptr_y;
+        ptr_x = ssd->ptr_x;
+        ptr_y = ssd->ptr_y;
         qemu_mutex_unlock(&ssd->lock);
         egl_texture_blit(ssd->gls, &ssd->blit_fb, &ssd->guest_fb,
                          !y_0_top);
         egl_texture_blend(ssd->gls, &ssd->blit_fb, &ssd->cursor_fb,
-                          !y_0_top, x, y, 1.0, 1.0);
+                          !y_0_top, ptr_x, ptr_y, 1.0, 1.0);
         glFlush();
     }
 
diff --git a/ui/vnc-palette.c b/ui/vnc-palette.c
index dc7c0ba997..4e88c412f0 100644
--- a/ui/vnc-palette.c
+++ b/ui/vnc-palette.c
@@ -86,8 +86,6 @@ int palette_put(VncPalette *palette, uint32_t color)
         return 0;
     }
     if (!entry) {
-        VncPaletteEntry *entry;
-
         entry = &palette->pool[palette->size];
         entry->color = color;
         entry->idx = idx;
diff --git a/ui/vnc.c b/ui/vnc.c
index 6fd86996a5..ecb75ff8c8 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -1584,15 +1584,15 @@ static void vnc_jobs_bh(void *opaque)
  */
 static int vnc_client_read(VncState *vs)
 {
-    size_t ret;
+    size_t sz;
 
 #ifdef CONFIG_VNC_SASL
     if (vs->sasl.conn && vs->sasl.runSSF)
-        ret = vnc_client_read_sasl(vs);
+        sz = vnc_client_read_sasl(vs);
     else
 #endif /* CONFIG_VNC_SASL */
-        ret = vnc_client_read_plain(vs);
-    if (!ret) {
+        sz = vnc_client_read_plain(vs);
+    if (!sz) {
         if (vs->disconnecting) {
             vnc_disconnect_finish(vs);
             return -1;
@@ -3118,8 +3118,8 @@ static int vnc_refresh_server_surface(VncDisplay *vd)
     cmp_bytes = MIN(VNC_DIRTY_PIXELS_PER_BIT * VNC_SERVER_FB_BYTES,
                     server_stride);
     if (vd->guest.format != VNC_SERVER_FB_FORMAT) {
-        int width = pixman_image_get_width(vd->server);
-        tmpbuf = qemu_pixman_linebuf_create(VNC_SERVER_FB_FORMAT, width);
+        int w = pixman_image_get_width(vd->server);
+        tmpbuf = qemu_pixman_linebuf_create(VNC_SERVER_FB_FORMAT, w);
     } else {
         int guest_bpp =
             PIXMAN_FORMAT_BPP(pixman_image_get_format(vd->guest.fb));
diff --git a/ui/vnc-enc-zrle.c.inc b/ui/vnc-enc-zrle.c.inc
index a8ca37d05e..2ef7501d52 100644
--- a/ui/vnc-enc-zrle.c.inc
+++ b/ui/vnc-enc-zrle.c.inc
@@ -153,11 +153,12 @@ static void ZRLE_ENCODE_TILE(VncState *vs, ZRLE_PIXEL *data, int w, int h,
     }
 
     if (use_rle) {
-        ZRLE_PIXEL *ptr = data;
-        ZRLE_PIXEL *end = ptr + w * h;
         ZRLE_PIXEL *run_start;
         ZRLE_PIXEL pix;
 
+        ptr = data;
+        end = ptr + w * h;
+
         while (ptr < end) {
             int len;
             int index = 0;
@@ -198,7 +199,7 @@ static void ZRLE_ENCODE_TILE(VncState *vs, ZRLE_PIXEL *data, int w, int h,
         }
     } else if (use_palette) { /* no RLE */
         int bppp;
-        ZRLE_PIXEL *ptr = data;
+        ptr = data;
 
         /* packed pixels */
 
@@ -241,8 +242,6 @@ static void ZRLE_ENCODE_TILE(VncState *vs, ZRLE_PIXEL *data, int w, int h,
 #endif
         {
 #ifdef ZRLE_COMPACT_PIXEL
-            ZRLE_PIXEL *ptr;
-
             for (ptr = data; ptr < data + w * h; ptr++) {
                 ZRLE_WRITE_PIXEL(vs, *ptr);
             }
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:13:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:13:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606345.944206 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYd-0006DK-GX; Thu, 21 Sep 2023 12:13:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606345.944206; Thu, 21 Sep 2023 12:13:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYd-0006B9-Br; Thu, 21 Sep 2023 12:13:23 +0000
Received: by outflank-mailman (input) for mailman id 606345;
 Thu, 21 Sep 2023 12:13:22 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x4Y2=FF=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qjIYc-0005zm-3J
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:13:22 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 401e35f3-5878-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 14:13:19 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-396-xdN0rCWLNfSurkC_jiAUDQ-1; Thu, 21 Sep 2023 08:13:16 -0400
Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com
 [10.11.54.1])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 0774D85A5BA;
 Thu, 21 Sep 2023 12:13:15 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id D4A8C40C2070;
 Thu, 21 Sep 2023 12:13:14 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 7B0BB21E690B; Thu, 21 Sep 2023 14:13:12 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 401e35f3-5878-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695298398;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=RfNxVgNpRH4D92+qQc1/DlhdvElkkvzgQCLXKMX0L98=;
	b=RGLmrFSLk2XDRRBSoAZs9crYX9zp8PnHj2y87rotvBCxt2PZYIaTY6vKRoU36Bu7NGLX7e
	p2dxx9OuKRkRoQHF1r1RZEy+qTW06roKAtpLTVYFH66ZpWCILwmpc7lvgBnAEXEk9u3OH8
	zttVVGPfE7buiF8q+mzqnsJHSRZC2Zc=
X-MC-Unique: xdN0rCWLNfSurkC_jiAUDQ-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v3 5/7] block/vdi: Clean up local variable shadowing
Date: Thu, 21 Sep 2023 14:13:10 +0200
Message-ID: <20230921121312.1301864-6-armbru@redhat.com>
In-Reply-To: <20230921121312.1301864-1-armbru@redhat.com>
References: <20230921121312.1301864-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.1

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand.  Tracked down with -Wshadow=local.
Clean up: delete inner declarations when they are actually redundant,
else rename variables.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
---
 block/vdi.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/block/vdi.c b/block/vdi.c
index 6c35309e04..934e1b849b 100644
--- a/block/vdi.c
+++ b/block/vdi.c
@@ -634,7 +634,6 @@ vdi_co_pwritev(BlockDriverState *bs, int64_t offset, int64_t bytes,
         bmap_entry = le32_to_cpu(s->bmap[block_index]);
         if (!VDI_IS_ALLOCATED(bmap_entry)) {
             /* Allocate new block and write to it. */
-            uint64_t data_offset;
             qemu_co_rwlock_upgrade(&s->bmap_lock);
             bmap_entry = le32_to_cpu(s->bmap[block_index]);
             if (VDI_IS_ALLOCATED(bmap_entry)) {
@@ -700,7 +699,7 @@ nonallocating_write:
         /* One or more new blocks were allocated. */
         VdiHeader *header;
         uint8_t *base;
-        uint64_t offset;
+        uint64_t bmap_offset;
         uint32_t n_sectors;
 
         g_free(block);
@@ -723,11 +722,11 @@ nonallocating_write:
         bmap_first /= (SECTOR_SIZE / sizeof(uint32_t));
         bmap_last /= (SECTOR_SIZE / sizeof(uint32_t));
         n_sectors = bmap_last - bmap_first + 1;
-        offset = s->bmap_sector + bmap_first;
+        bmap_offset = s->bmap_sector + bmap_first;
         base = ((uint8_t *)&s->bmap[0]) + bmap_first * SECTOR_SIZE;
         logout("will write %u block map sectors starting from entry %u\n",
                n_sectors, bmap_first);
-        ret = bdrv_co_pwrite(bs->file, offset * SECTOR_SIZE,
+        ret = bdrv_co_pwrite(bs->file, bmap_offset * SECTOR_SIZE,
                              n_sectors * SECTOR_SIZE, base, 0);
     }
 
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:13:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:13:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606346.944222 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYe-0006ib-PS; Thu, 21 Sep 2023 12:13:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606346.944222; Thu, 21 Sep 2023 12:13:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYe-0006h0-KP; Thu, 21 Sep 2023 12:13:24 +0000
Received: by outflank-mailman (input) for mailman id 606346;
 Thu, 21 Sep 2023 12:13:22 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x4Y2=FF=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qjIYc-0005zm-PY
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:13:22 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3fdba246-5878-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 14:13:19 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-492-NyX3vEfCOqSYhFypna-S0Q-1; Thu, 21 Sep 2023 08:13:16 -0400
Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com
 [10.11.54.9])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id EB08880D09A;
 Thu, 21 Sep 2023 12:13:13 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 78A4571128D;
 Thu, 21 Sep 2023 12:13:13 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 6A38121E6900; Thu, 21 Sep 2023 14:13:12 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3fdba246-5878-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695298398;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=LHmiermdl6RPWlPPPWfGL90MXuUtrZGZhe9H8fs+5EQ=;
	b=gAKSFL3MB2UnkKjWIllSMNM7yx0q00egv6wn0b8Ia/aFuMooFmO4DMfpqAppWnYXkn6D9m
	+RsyXGRjV496w6047PWWzVoksUbDTMgXdBgmqipSic0HAQ2l9t2tzHYgAPrbMLtNteiTh7
	xrjWpyHstdZVFCIYlYYwDG48JeMtmt4=
X-MC-Unique: NyX3vEfCOqSYhFypna-S0Q-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v3 0/7] Steps towards enabling -Wshadow=local
Date: Thu, 21 Sep 2023 14:13:05 +0200
Message-ID: <20230921121312.1301864-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.9

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand.  Bugs love to hide in such code.
Evidence: PATCH 1.

Enabling -Wshadow would prevent bugs like this one.  But we'd have to
clean up all the offenders first.  We got a lot of them.

Enabling -Wshadow=local should be less work for almost as much gain.
I took a stab at it.  There's a small, exciting part, and a large,
boring part.

The exciting part is dark preprocessor sorcery to let us nest macro
calls without shadowing: PATCH 7.

The boring part is cleaning up all the other warnings.  I did some
[PATCH 2-6], but ran out of steam long before finishing the job.  Some
160 unique warnings remain.

To see them, enable -Wshadow=local like so:

diff --git a/meson.build b/meson.build
index 98e68ef0b1..9fc4c7ac9d 100644
--- a/meson.build
+++ b/meson.build
@@ -466,6 +466,9 @@ warn_flags = [
   '-Wno-tautological-type-limit-compare',
   '-Wno-psabi',
   '-Wno-gnu-variable-sized-type-not-at-end',
+  '-Wshadow=local',
+  '-Wno-error=shadow=local',
+  '-Wno-error=shadow=compatible-local',
 ]
 
 if targetos != 'darwin'

You may want to drop the -Wno-error lines.

v3:
* PATCH 7: Comment typo [Eric], peel off a pair of parenthesis [Eric],
  revert accidental line breaks [Kevin]

v2:
* PATCH 3+6: Mollify checkpatch
* PATCH 4: Redo for clearer code, R-bys dropped [Kevin]
* PATCH 5: Rename tweaked [Kevin]
* PATCH 6: Rename local @tran instead of the parameter [Kevin]
* PATCH 7: Drop PASTE(), use glue() instead [Richard]; pass
  identifiers instead of __COUNTER__ for readability [Eric]; add
  comments

Markus Armbruster (7):
  migration/rdma: Fix save_page method to fail on polling error
  migration: Clean up local variable shadowing
  ui: Clean up local variable shadowing
  block/dirty-bitmap: Clean up local variable shadowing
  block/vdi: Clean up local variable shadowing
  block: Clean up local variable shadowing
  qobject atomics osdep: Make a few macros more hygienic

 include/qapi/qmp/qobject.h      | 10 ++++++++--
 include/qemu/atomic.h           | 17 +++++++++++-----
 include/qemu/compiler.h         |  3 +++
 include/qemu/osdep.h            | 27 ++++++++++++++++++-------
 block.c                         |  9 +++++----
 block/monitor/bitmap-qmp-cmds.c | 19 +++++++++---------
 block/qcow2-bitmap.c            |  3 +--
 block/rbd.c                     |  2 +-
 block/stream.c                  |  1 -
 block/vdi.c                     |  7 +++----
 block/vvfat.c                   | 35 +++++++++++++++++----------------
 hw/block/xen-block.c            |  6 +++---
 migration/block.c               |  4 ++--
 migration/ram.c                 |  8 +++-----
 migration/rdma.c                | 14 ++++++++-----
 migration/vmstate.c             |  2 +-
 ui/gtk.c                        | 14 ++++++-------
 ui/spice-display.c              |  9 +++++----
 ui/vnc-palette.c                |  2 --
 ui/vnc.c                        | 12 +++++------
 ui/vnc-enc-zrle.c.inc           |  9 ++++-----
 21 files changed, 121 insertions(+), 92 deletions(-)

-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:13:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:13:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606347.944228 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYf-0006mj-6w; Thu, 21 Sep 2023 12:13:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606347.944228; Thu, 21 Sep 2023 12:13:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYf-0006lh-0h; Thu, 21 Sep 2023 12:13:25 +0000
Received: by outflank-mailman (input) for mailman id 606347;
 Thu, 21 Sep 2023 12:13:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x4Y2=FF=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qjIYd-0005zm-Pr
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:13:23 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 40c91f55-5878-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 14:13:21 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73])
 by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-641-4KqdsblxO7KC9h3VyFTycA-1; Thu, 21 Sep 2023 08:13:16 -0400
Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com
 [10.11.54.9])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 2405D381458F;
 Thu, 21 Sep 2023 12:13:15 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id D55F171128B;
 Thu, 21 Sep 2023 12:13:14 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 7EAB321E690C; Thu, 21 Sep 2023 14:13:12 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 40c91f55-5878-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695298399;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=yBatzSuAuhmbfH888wEatA9vflyhInrP780Sek2BQn4=;
	b=R5S4PgzhISmYs/e8x37XqPWM3goDhJprqBR64dFDi9pJ0ZeqgDUrJTnO7jTblotxXfC5hu
	qNCRAx4C2IgTPVTRikWaw6PHdSPLrR94xg7RHowRar4sSIYHT/BzGjEBYlcLX1X+aGOJpw
	jg+y8hngiTTVK2Of/FHM4Tt8pc9VZeY=
X-MC-Unique: 4KqdsblxO7KC9h3VyFTycA-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v3 6/7] block: Clean up local variable shadowing
Date: Thu, 21 Sep 2023 14:13:11 +0200
Message-ID: <20230921121312.1301864-7-armbru@redhat.com>
In-Reply-To: <20230921121312.1301864-1-armbru@redhat.com>
References: <20230921121312.1301864-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.9

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand.  Tracked down with -Wshadow=local.
Clean up: delete inner declarations when they are actually redundant,
else rename variables.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Acked-by: Anthony PERARD <anthony.perard@citrix.com>
Acked-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
---
 block.c              |  9 +++++----
 block/rbd.c          |  2 +-
 block/stream.c       |  1 -
 block/vvfat.c        | 35 ++++++++++++++++++-----------------
 hw/block/xen-block.c |  6 +++---
 5 files changed, 27 insertions(+), 26 deletions(-)

diff --git a/block.c b/block.c
index 8da89aaa62..bb5dd17e9c 100644
--- a/block.c
+++ b/block.c
@@ -3035,18 +3035,19 @@ static BdrvChild *bdrv_attach_child_common(BlockDriverState *child_bs,
                                               &local_err);
 
         if (ret < 0 && child_class->change_aio_ctx) {
-            Transaction *tran = tran_new();
+            Transaction *aio_ctx_tran = tran_new();
             GHashTable *visited = g_hash_table_new(NULL, NULL);
             bool ret_child;
 
             g_hash_table_add(visited, new_child);
             ret_child = child_class->change_aio_ctx(new_child, child_ctx,
-                                                    visited, tran, NULL);
+                                                    visited, aio_ctx_tran,
+                                                    NULL);
             if (ret_child == true) {
                 error_free(local_err);
                 ret = 0;
             }
-            tran_finalize(tran, ret_child == true ? 0 : -1);
+            tran_finalize(aio_ctx_tran, ret_child == true ? 0 : -1);
             g_hash_table_destroy(visited);
         }
 
@@ -6077,12 +6078,12 @@ void bdrv_iterate_format(void (*it)(void *opaque, const char *name),
     QLIST_FOREACH(drv, &bdrv_drivers, list) {
         if (drv->format_name) {
             bool found = false;
-            int i = count;
 
             if (use_bdrv_whitelist && !bdrv_is_whitelisted(drv, read_only)) {
                 continue;
             }
 
+            i = count;
             while (formats && i && !found) {
                 found = !strcmp(formats[--i], drv->format_name);
             }
diff --git a/block/rbd.c b/block/rbd.c
index 978671411e..472ca05cba 100644
--- a/block/rbd.c
+++ b/block/rbd.c
@@ -1290,7 +1290,7 @@ static int coroutine_fn qemu_rbd_start_co(BlockDriverState *bs,
          * operations that exceed the current size.
          */
         if (offset + bytes > s->image_size) {
-            int r = qemu_rbd_resize(bs, offset + bytes);
+            r = qemu_rbd_resize(bs, offset + bytes);
             if (r < 0) {
                 return r;
             }
diff --git a/block/stream.c b/block/stream.c
index e522bbdec5..007253880b 100644
--- a/block/stream.c
+++ b/block/stream.c
@@ -282,7 +282,6 @@ void stream_start(const char *job_id, BlockDriverState *bs,
     /* Make sure that the image is opened in read-write mode */
     bs_read_only = bdrv_is_read_only(bs);
     if (bs_read_only) {
-        int ret;
         /* Hold the chain during reopen */
         if (bdrv_freeze_backing_chain(bs, above_base, errp) < 0) {
             return;
diff --git a/block/vvfat.c b/block/vvfat.c
index 0ddc91fc09..856b479c91 100644
--- a/block/vvfat.c
+++ b/block/vvfat.c
@@ -777,7 +777,6 @@ static int read_directory(BDRVVVFATState* s, int mapping_index)
     while((entry=readdir(dir))) {
         unsigned int length=strlen(dirname)+2+strlen(entry->d_name);
         char* buffer;
-        direntry_t* direntry;
         struct stat st;
         int is_dot=!strcmp(entry->d_name,".");
         int is_dotdot=!strcmp(entry->d_name,"..");
@@ -857,7 +856,7 @@ static int read_directory(BDRVVVFATState* s, int mapping_index)
 
     /* fill with zeroes up to the end of the cluster */
     while(s->directory.next%(0x10*s->sectors_per_cluster)) {
-        direntry_t* direntry=array_get_next(&(s->directory));
+        direntry = array_get_next(&(s->directory));
         memset(direntry,0,sizeof(direntry_t));
     }
 
@@ -1962,24 +1961,24 @@ get_cluster_count_for_direntry(BDRVVVFATState* s, direntry_t* direntry, const ch
                  * This is horribly inefficient, but that is okay, since
                  * it is rarely executed, if at all.
                  */
-                int64_t offset = cluster2sector(s, cluster_num);
+                int64_t offs = cluster2sector(s, cluster_num);
 
                 vvfat_close_current_file(s);
                 for (i = 0; i < s->sectors_per_cluster; i++) {
                     int res;
 
                     res = bdrv_is_allocated(s->qcow->bs,
-                                            (offset + i) * BDRV_SECTOR_SIZE,
+                                            (offs + i) * BDRV_SECTOR_SIZE,
                                             BDRV_SECTOR_SIZE, NULL);
                     if (res < 0) {
                         return -1;
                     }
                     if (!res) {
-                        res = vvfat_read(s->bs, offset, s->cluster_buffer, 1);
+                        res = vvfat_read(s->bs, offs, s->cluster_buffer, 1);
                         if (res) {
                             return -1;
                         }
-                        res = bdrv_co_pwrite(s->qcow, offset * BDRV_SECTOR_SIZE,
+                        res = bdrv_co_pwrite(s->qcow, offs * BDRV_SECTOR_SIZE,
                                              BDRV_SECTOR_SIZE, s->cluster_buffer,
                                              0);
                         if (res < 0) {
@@ -2467,8 +2466,9 @@ commit_direntries(BDRVVVFATState* s, int dir_index, int parent_mapping_index)
 
     for (c = first_cluster; !fat_eof(s, c); c = modified_fat_get(s, c)) {
         direntry_t *first_direntry;
-        void* direntry = array_get(&(s->directory), current_dir_index);
-        int ret = vvfat_read(s->bs, cluster2sector(s, c), direntry,
+
+        direntry = array_get(&(s->directory), current_dir_index);
+        ret = vvfat_read(s->bs, cluster2sector(s, c), (uint8_t *)direntry,
                 s->sectors_per_cluster);
         if (ret)
             return ret;
@@ -2690,12 +2690,12 @@ static int handle_renames_and_mkdirs(BDRVVVFATState* s)
                 direntry_t* direntry = array_get(&(s->directory),
                         mapping->info.dir.first_dir_index);
                 uint32_t c = mapping->begin;
-                int i = 0;
+                int j = 0;
 
                 /* recurse */
                 while (!fat_eof(s, c)) {
                     do {
-                        direntry_t* d = direntry + i;
+                        direntry_t *d = direntry + j;
 
                         if (is_file(d) || (is_directory(d) && !is_dot(d))) {
                             int l;
@@ -2716,8 +2716,8 @@ static int handle_renames_and_mkdirs(BDRVVVFATState* s)
 
                             schedule_rename(s, m->begin, new_path);
                         }
-                        i++;
-                    } while((i % (0x10 * s->sectors_per_cluster)) != 0);
+                        j++;
+                    } while (j % (0x10 * s->sectors_per_cluster) != 0);
                     c = fat_get(s, c);
                 }
             }
@@ -2804,16 +2804,16 @@ static int coroutine_fn GRAPH_RDLOCK handle_commits(BDRVVVFATState* s)
             int begin = commit->param.new_file.first_cluster;
             mapping_t* mapping = find_mapping_for_cluster(s, begin);
             direntry_t* entry;
-            int i;
+            int j;
 
             /* find direntry */
-            for (i = 0; i < s->directory.next; i++) {
-                entry = array_get(&(s->directory), i);
+            for (j = 0; j < s->directory.next; j++) {
+                entry = array_get(&(s->directory), j);
                 if (is_file(entry) && begin_of_direntry(entry) == begin)
                     break;
             }
 
-            if (i >= s->directory.next) {
+            if (j >= s->directory.next) {
                 fail = -6;
                 continue;
             }
@@ -2833,8 +2833,9 @@ static int coroutine_fn GRAPH_RDLOCK handle_commits(BDRVVVFATState* s)
             mapping->mode = MODE_NORMAL;
             mapping->info.file.offset = 0;
 
-            if (commit_one_file(s, i, 0))
+            if (commit_one_file(s, j, 0)) {
                 fail = -7;
+            }
 
             break;
         }
diff --git a/hw/block/xen-block.c b/hw/block/xen-block.c
index 3906b9058b..a07cd7eb5d 100644
--- a/hw/block/xen-block.c
+++ b/hw/block/xen-block.c
@@ -369,7 +369,7 @@ static void xen_block_get_vdev(Object *obj, Visitor *v, const char *name,
     case XEN_BLOCK_VDEV_TYPE_XVD:
     case XEN_BLOCK_VDEV_TYPE_HD:
     case XEN_BLOCK_VDEV_TYPE_SD: {
-        char *name = disk_to_vbd_name(vdev->disk);
+        char *vbd_name = disk_to_vbd_name(vdev->disk);
 
         str = g_strdup_printf("%s%s%lu",
                               (vdev->type == XEN_BLOCK_VDEV_TYPE_XVD) ?
@@ -377,8 +377,8 @@ static void xen_block_get_vdev(Object *obj, Visitor *v, const char *name,
                               (vdev->type == XEN_BLOCK_VDEV_TYPE_HD) ?
                               "hd" :
                               "sd",
-                              name, vdev->partition);
-        g_free(name);
+                              vbd_name, vdev->partition);
+        g_free(vbd_name);
         break;
     }
     default:
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:13:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:13:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606348.944242 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYg-0007Ef-KZ; Thu, 21 Sep 2023 12:13:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606348.944242; Thu, 21 Sep 2023 12:13:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYg-0007Dj-Fg; Thu, 21 Sep 2023 12:13:26 +0000
Received: by outflank-mailman (input) for mailman id 606348;
 Thu, 21 Sep 2023 12:13:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x4Y2=FF=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qjIYe-0005zm-Pt
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:13:24 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 40df2d60-5878-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 14:13:21 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-599-DVpCR_Y-MZ-tlYAScjD49w-1; Thu, 21 Sep 2023 08:13:16 -0400
Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com
 [10.11.54.1])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id EBF0918811D2;
 Thu, 21 Sep 2023 12:13:13 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 75F3340C2064;
 Thu, 21 Sep 2023 12:13:13 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 7042821E6904; Thu, 21 Sep 2023 14:13:12 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 40df2d60-5878-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695298400;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=108epAKJ/cown4P+DWZfKKbavCzIwae9nCYkDdtjrH4=;
	b=cWW2iU2yC8+hAKRi5NoirCJbVnsTbFuPtdyQ/eeOYRgR9Jt8kETmQbMwf/ft+udQPLmFYN
	Gl7zcUAJs/hkvcyJinyACxurFtuyGKWS92aDNCw/9p22ZZ4W4YFVu9K1Tb9bn7cDi7AoUw
	nDtuWKzTQkxdovfXA6bfpfEU8rVHP8k=
X-MC-Unique: DVpCR_Y-MZ-tlYAScjD49w-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org,
	Li Zhijian <lizhijian@fujitsu.com>
Subject: [PATCH v3 2/7] migration: Clean up local variable shadowing
Date: Thu, 21 Sep 2023 14:13:07 +0200
Message-ID: <20230921121312.1301864-3-armbru@redhat.com>
In-Reply-To: <20230921121312.1301864-1-armbru@redhat.com>
References: <20230921121312.1301864-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.1

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand.  Tracked down with -Wshadow=local.
Clean up: delete inner declarations when they are actually redundant,
else rename variables.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Li Zhijian <lizhijian@fujitsu.com>
---
 migration/block.c   | 4 ++--
 migration/ram.c     | 8 +++-----
 migration/rdma.c    | 8 +++++---
 migration/vmstate.c | 2 +-
 4 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/migration/block.c b/migration/block.c
index 86c2256a2b..eb6aafeb9e 100644
--- a/migration/block.c
+++ b/migration/block.c
@@ -440,8 +440,8 @@ static int init_blk_migration(QEMUFile *f)
     /* Can only insert new BDSes now because doing so while iterating block
      * devices may end up in a deadlock (iterating the new BDSes, too). */
     for (i = 0; i < num_bs; i++) {
-        BlkMigDevState *bmds = bmds_bs[i].bmds;
-        BlockDriverState *bs = bmds_bs[i].bs;
+        bmds = bmds_bs[i].bmds;
+        bs = bmds_bs[i].bs;
 
         if (bmds) {
             ret = blk_insert_bs(bmds->blk, bs, &local_err);
diff --git a/migration/ram.c b/migration/ram.c
index 9040d66e61..0c202f8109 100644
--- a/migration/ram.c
+++ b/migration/ram.c
@@ -3517,8 +3517,6 @@ int colo_init_ram_cache(void)
     * we use the same name 'ram_bitmap' as for migration.
     */
     if (ram_bytes_total()) {
-        RAMBlock *block;
-
         RAMBLOCK_FOREACH_NOT_IGNORED(block) {
             unsigned long pages = block->max_length >> TARGET_PAGE_BITS;
             block->bmap = bitmap_new(pages);
@@ -3998,12 +3996,12 @@ static int ram_load_precopy(QEMUFile *f)
                         }
                     }
                     if (migrate_ignore_shared()) {
-                        hwaddr addr = qemu_get_be64(f);
+                        hwaddr addr2 = qemu_get_be64(f);
                         if (migrate_ram_is_ignored(block) &&
-                            block->mr->addr != addr) {
+                            block->mr->addr != addr2) {
                             error_report("Mismatched GPAs for block %s "
                                          "%" PRId64 "!= %" PRId64,
-                                         id, (uint64_t)addr,
+                                         id, (uint64_t)addr2,
                                          (uint64_t)block->mr->addr);
                             ret = -EINVAL;
                         }
diff --git a/migration/rdma.c b/migration/rdma.c
index 3915d1d7c9..c78ddfcb74 100644
--- a/migration/rdma.c
+++ b/migration/rdma.c
@@ -1902,9 +1902,11 @@ static int qemu_rdma_exchange_send(RDMAContext *rdma, RDMAControlHeader *head,
      * by waiting for a READY message.
      */
     if (rdma->control_ready_expected) {
-        RDMAControlHeader resp;
-        ret = qemu_rdma_exchange_get_response(rdma,
-                                    &resp, RDMA_CONTROL_READY, RDMA_WRID_READY);
+        RDMAControlHeader resp_ignored;
+
+        ret = qemu_rdma_exchange_get_response(rdma, &resp_ignored,
+                                              RDMA_CONTROL_READY,
+                                              RDMA_WRID_READY);
         if (ret < 0) {
             return ret;
         }
diff --git a/migration/vmstate.c b/migration/vmstate.c
index 31842c3afb..438ea77cfa 100644
--- a/migration/vmstate.c
+++ b/migration/vmstate.c
@@ -97,7 +97,7 @@ int vmstate_load_state(QEMUFile *f, const VMStateDescription *vmsd,
         return -EINVAL;
     }
     if (vmsd->pre_load) {
-        int ret = vmsd->pre_load(opaque);
+        ret = vmsd->pre_load(opaque);
         if (ret) {
             return ret;
         }
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:13:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:13:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606349.944246 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYh-0007Jo-0m; Thu, 21 Sep 2023 12:13:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606349.944246; Thu, 21 Sep 2023 12:13:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYg-0007Ip-Ql; Thu, 21 Sep 2023 12:13:26 +0000
Received: by outflank-mailman (input) for mailman id 606349;
 Thu, 21 Sep 2023 12:13:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x4Y2=FF=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qjIYf-0005zm-QH
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:13:25 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 41791a23-5878-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 14:13:22 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-492-lD3FZUg5OvirQbt6roxuWg-1; Thu, 21 Sep 2023 08:13:15 -0400
Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com
 [10.11.54.1])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id ED1CA803498;
 Thu, 21 Sep 2023 12:13:13 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 7D8AF40C2009;
 Thu, 21 Sep 2023 12:13:13 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 7767C21E6906; Thu, 21 Sep 2023 14:13:12 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 41791a23-5878-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695298401;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=Mwr7GTlLamuUBetYM4cTDB5jrT8sCTIuILXwtjEAGAo=;
	b=DBrAJiDPLEZsFJYfJC8AH5AF5ico8b2t73pRrA5PbtwTVIXk7+eD+EpXu8GiS86XccW0yH
	b6Yz7i2ko1VC3HAavNGFfahbU5VijcbIno+wY91g5d+qZUG1+8qyGU/HImwW1d16tfTRDW
	LJFjvraARX4n7d8cwqckKwZJnIOeVYw=
X-MC-Unique: lD3FZUg5OvirQbt6roxuWg-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v3 4/7] block/dirty-bitmap: Clean up local variable shadowing
Date: Thu, 21 Sep 2023 14:13:09 +0200
Message-ID: <20230921121312.1301864-5-armbru@redhat.com>
In-Reply-To: <20230921121312.1301864-1-armbru@redhat.com>
References: <20230921121312.1301864-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.1

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand.  Tracked down with -Wshadow=local.
Clean up: rename both the pair of parameters and the pair of local
variables.  While there, move the local variables to function scope.

Suggested-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
---
 block/monitor/bitmap-qmp-cmds.c | 19 ++++++++++---------
 block/qcow2-bitmap.c            |  3 +--
 2 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/block/monitor/bitmap-qmp-cmds.c b/block/monitor/bitmap-qmp-cmds.c
index 55f778f5af..70d01a3776 100644
--- a/block/monitor/bitmap-qmp-cmds.c
+++ b/block/monitor/bitmap-qmp-cmds.c
@@ -258,37 +258,38 @@ void qmp_block_dirty_bitmap_disable(const char *node, const char *name,
     bdrv_disable_dirty_bitmap(bitmap);
 }
 
-BdrvDirtyBitmap *block_dirty_bitmap_merge(const char *node, const char *target,
+BdrvDirtyBitmap *block_dirty_bitmap_merge(const char *dst_node,
+                                          const char *dst_bitmap,
                                           BlockDirtyBitmapOrStrList *bms,
                                           HBitmap **backup, Error **errp)
 {
     BlockDriverState *bs;
     BdrvDirtyBitmap *dst, *src;
     BlockDirtyBitmapOrStrList *lst;
+    const char *src_node, *src_bitmap;
     HBitmap *local_backup = NULL;
 
     GLOBAL_STATE_CODE();
 
-    dst = block_dirty_bitmap_lookup(node, target, &bs, errp);
+    dst = block_dirty_bitmap_lookup(dst_node, dst_bitmap, &bs, errp);
     if (!dst) {
         return NULL;
     }
 
     for (lst = bms; lst; lst = lst->next) {
         switch (lst->value->type) {
-            const char *name, *node;
         case QTYPE_QSTRING:
-            name = lst->value->u.local;
-            src = bdrv_find_dirty_bitmap(bs, name);
+            src_bitmap = lst->value->u.local;
+            src = bdrv_find_dirty_bitmap(bs, src_bitmap);
             if (!src) {
-                error_setg(errp, "Dirty bitmap '%s' not found", name);
+                error_setg(errp, "Dirty bitmap '%s' not found", src_bitmap);
                 goto fail;
             }
             break;
         case QTYPE_QDICT:
-            node = lst->value->u.external.node;
-            name = lst->value->u.external.name;
-            src = block_dirty_bitmap_lookup(node, name, NULL, errp);
+            src_node = lst->value->u.external.node;
+            src_bitmap = lst->value->u.external.name;
+            src = block_dirty_bitmap_lookup(src_node, src_bitmap, NULL, errp);
             if (!src) {
                 goto fail;
             }
diff --git a/block/qcow2-bitmap.c b/block/qcow2-bitmap.c
index 037fa2d435..ffd5cd3b23 100644
--- a/block/qcow2-bitmap.c
+++ b/block/qcow2-bitmap.c
@@ -1555,7 +1555,6 @@ bool qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs,
     FOR_EACH_DIRTY_BITMAP(bs, bitmap) {
         const char *name = bdrv_dirty_bitmap_name(bitmap);
         uint32_t granularity = bdrv_dirty_bitmap_granularity(bitmap);
-        Qcow2Bitmap *bm;
 
         if (!bdrv_dirty_bitmap_get_persistence(bitmap) ||
             bdrv_dirty_bitmap_inconsistent(bitmap)) {
@@ -1625,7 +1624,7 @@ bool qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs,
 
     /* allocate clusters and store bitmaps */
     QSIMPLEQ_FOREACH(bm, bm_list, entry) {
-        BdrvDirtyBitmap *bitmap = bm->dirty_bitmap;
+        bitmap = bm->dirty_bitmap;
 
         if (bitmap == NULL || bdrv_dirty_bitmap_readonly(bitmap)) {
             continue;
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:13:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:13:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606350.944263 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYl-00080C-Bu; Thu, 21 Sep 2023 12:13:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606350.944263; Thu, 21 Sep 2023 12:13:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIYl-0007zw-8Q; Thu, 21 Sep 2023 12:13:31 +0000
Received: by outflank-mailman (input) for mailman id 606350;
 Thu, 21 Sep 2023 12:13:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=x4Y2=FF=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qjIYj-0005zm-TO
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:13:29 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.129.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 44f7ffa1-5878-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 14:13:28 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-641-zZ3TtG8EPVuYsO7sGpTg5g-1; Thu, 21 Sep 2023 08:13:21 -0400
Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com
 [10.11.54.5])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 22AFD101B047;
 Thu, 21 Sep 2023 12:13:15 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id D468751E3;
 Thu, 21 Sep 2023 12:13:14 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 824C621E690E; Thu, 21 Sep 2023 14:13:12 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 44f7ffa1-5878-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695298407;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=NwdQRx9eHHEXA/94dHOQriykfQNAQJKQnyavt6LfIyk=;
	b=irdxbfXeWbj5tu0vB5p1diBw5wBaYiXzb2BTo+EaP3zKGIBEYxBZvbLKtxyGBdGn/ul8Zy
	UTKAmO6uTgD0VRNig5ZoqZhIf5OCYhFq/kYo+eXEptK4495st9PXE7rnPX1i3C5prA3197
	sFs0z1gfqC734AlfkPNR4ingZuxyoOo=
X-MC-Unique: zZ3TtG8EPVuYsO7sGpTg5g-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,
	hreitz@redhat.com,
	eblake@redhat.com,
	vsementsov@yandex-team.ru,
	jsnow@redhat.com,
	idryomov@gmail.com,
	pl@kamp.de,
	sw@weilnetz.de,
	sstabellini@kernel.org,
	anthony.perard@citrix.com,
	paul@xen.org,
	pbonzini@redhat.com,
	marcandre.lureau@redhat.com,
	berrange@redhat.com,
	thuth@redhat.com,
	philmd@linaro.org,
	stefanha@redhat.com,
	fam@euphon.net,
	quintela@redhat.com,
	peterx@redhat.com,
	leobras@redhat.com,
	kraxel@redhat.com,
	qemu-block@nongnu.org,
	xen-devel@lists.xenproject.org,
	alex.bennee@linaro.org,
	peter.maydell@linaro.org
Subject: [PATCH v3 7/7] qobject atomics osdep: Make a few macros more hygienic
Date: Thu, 21 Sep 2023 14:13:12 +0200
Message-ID: <20230921121312.1301864-8-armbru@redhat.com>
In-Reply-To: <20230921121312.1301864-1-armbru@redhat.com>
References: <20230921121312.1301864-1-armbru@redhat.com>
MIME-Version: 1.0
Content-type: text/plain
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.5

Variables declared in macros can shadow other variables.  Much of the
time, this is harmless, e.g.:

    #define _FDT(exp)                                                  \
        do {                                                           \
            int ret = (exp);                                           \
            if (ret < 0) {                                             \
                error_report("error creating device tree: %s: %s",   \
                        #exp, fdt_strerror(ret));                      \
                exit(1);                                               \
            }                                                          \
        } while (0)

Harmless shadowing in h_client_architecture_support():

        target_ulong ret;

        [...]

        ret = do_client_architecture_support(cpu, spapr, vec, fdt_bufsize);
        if (ret == H_SUCCESS) {
            _FDT((fdt_pack(spapr->fdt_blob)));
            [...]
        }

        return ret;

However, we can get in trouble when the shadowed variable is used in a
macro argument:

    #define QOBJECT(obj) ({                                 \
        typeof(obj) o = (obj);                              \
        o ? container_of(&(o)->base, QObject, base) : NULL; \
     })

QOBJECT(o) expands into

    ({
--->    typeof(o) o = (o);
        o ? container_of(&(o)->base, QObject, base) : NULL;
    })

Unintended variable name capture at --->.  We'd be saved by
-Winit-self.  But I could certainly construct more elaborate death
traps that don't trigger it.

To reduce the risk of trapping ourselves, we use variable names in
macros that no sane person would use elsewhere.  Here's our actual
definition of QOBJECT():

    #define QOBJECT(obj) ({                                         \
        typeof(obj) _obj = (obj);                                   \
        _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
    })

Works well enough until we nest macro calls.  For instance, with

    #define qobject_ref(obj) ({                     \
        typeof(obj) _obj = (obj);                   \
        qobject_ref_impl(QOBJECT(_obj));            \
        _obj;                                       \
    })

the expression qobject_ref(obj) expands into

    ({
        typeof(obj) _obj = (obj);
        qobject_ref_impl(
            ({
--->            typeof(_obj) _obj = (_obj);
                _obj ? container_of(&(_obj)->base, QObject, base) : NULL;
            }));
        _obj;
    })

Unintended variable name capture at --->.

The only reliable way to prevent unintended variable name capture is
-Wshadow.

One blocker for enabling it is shadowing hiding in function-like
macros like

     qdict_put(dict, "name", qobject_ref(...))

qdict_put() wraps its last argument in QOBJECT(), and the last
argument here contains another QOBJECT().

Use dark preprocessor sorcery to make the macros that give us this
problem use different variable names on every call.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
---
 include/qapi/qmp/qobject.h | 10 ++++++++--
 include/qemu/atomic.h      | 17 ++++++++++++-----
 include/qemu/compiler.h    |  3 +++
 include/qemu/osdep.h       | 27 ++++++++++++++++++++-------
 4 files changed, 43 insertions(+), 14 deletions(-)

diff --git a/include/qapi/qmp/qobject.h b/include/qapi/qmp/qobject.h
index 9003b71fd3..89b97d88bc 100644
--- a/include/qapi/qmp/qobject.h
+++ b/include/qapi/qmp/qobject.h
@@ -45,10 +45,16 @@ struct QObject {
     struct QObjectBase_ base;
 };
 
-#define QOBJECT(obj) ({                                         \
+/*
+ * Preprocessor sorcery ahead: use a different identifier for the
+ * local variable in each expansion, so we can nest macro calls
+ * without shadowing variables.
+ */
+#define QOBJECT_INTERNAL(obj, _obj) ({                          \
     typeof(obj) _obj = (obj);                                   \
-    _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
+    _obj ? container_of(&_obj->base, QObject, base) : NULL;     \
 })
+#define QOBJECT(obj) QOBJECT_INTERNAL((obj), MAKE_IDENTFIER(_obj))
 
 /* Required for qobject_to() */
 #define QTYPE_CAST_TO_QNull     QTYPE_QNULL
diff --git a/include/qemu/atomic.h b/include/qemu/atomic.h
index d95612f7a0..f1d3d1702a 100644
--- a/include/qemu/atomic.h
+++ b/include/qemu/atomic.h
@@ -157,13 +157,20 @@
     smp_read_barrier_depends();
 #endif
 
-#define qatomic_rcu_read(ptr)                          \
-    ({                                                 \
+/*
+ * Preprocessor sorcery ahead: use a different identifier for the
+ * local variable in each expansion, so we can nest macro calls
+ * without shadowing variables.
+ */
+#define qatomic_rcu_read_internal(ptr, _val)            \
+    ({                                                  \
     qemu_build_assert(sizeof(*ptr) <= ATOMIC_REG_SIZE); \
-    typeof_strip_qual(*ptr) _val;                      \
-    qatomic_rcu_read__nocheck(ptr, &_val);             \
-    _val;                                              \
+    typeof_strip_qual(*ptr) _val;                       \
+    qatomic_rcu_read__nocheck(ptr, &_val);              \
+    _val;                                               \
     })
+#define qatomic_rcu_read(ptr) \
+    qatomic_rcu_read_internal((ptr), MAKE_IDENTFIER(_val))
 
 #define qatomic_rcu_set(ptr, i) do {                   \
     qemu_build_assert(sizeof(*ptr) <= ATOMIC_REG_SIZE); \
diff --git a/include/qemu/compiler.h b/include/qemu/compiler.h
index a309f90c76..03236d830c 100644
--- a/include/qemu/compiler.h
+++ b/include/qemu/compiler.h
@@ -37,6 +37,9 @@
 #define tostring(s) #s
 #endif
 
+/* Expands into an identifier stemN, where N is another number each time */
+#define MAKE_IDENTFIER(stem) glue(stem, __COUNTER__)
+
 #ifndef likely
 #define likely(x)   __builtin_expect(!!(x), 1)
 #define unlikely(x)   __builtin_expect(!!(x), 0)
diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
index 2897720fac..a80f49d1ab 100644
--- a/include/qemu/osdep.h
+++ b/include/qemu/osdep.h
@@ -383,19 +383,28 @@ void QEMU_ERROR("code path is reachable")
  * determined by the pre-processor instead of the compiler, you'll
  * have to open-code it.  Sadly, Coverity is severely confused by the
  * constant variants, so we have to dumb things down there.
+ *
+ * Preprocessor sorcery ahead: use different identifiers for the local
+ * variables in each expansion, so we can nest macro calls without
+ * shadowing variables.
  */
-#undef MIN
-#define MIN(a, b)                                       \
+#define MIN_INTERNAL(a, b, _a, _b)                      \
     ({                                                  \
         typeof(1 ? (a) : (b)) _a = (a), _b = (b);       \
         _a < _b ? _a : _b;                              \
     })
-#undef MAX
-#define MAX(a, b)                                       \
+#undef MIN
+#define MIN(a, b) \
+    MIN_INTERNAL((a), (b), MAKE_IDENTFIER(_a), MAKE_IDENTFIER(_b))
+
+#define MAX_INTERNAL(a, b, _a, _b)                      \
     ({                                                  \
         typeof(1 ? (a) : (b)) _a = (a), _b = (b);       \
         _a > _b ? _a : _b;                              \
     })
+#undef MAX
+#define MAX(a, b) \
+    MAX_INTERNAL((a), (b), MAKE_IDENTFIER(_a), MAKE_IDENTFIER(_b))
 
 #ifdef __COVERITY__
 # define MIN_CONST(a, b) ((a) < (b) ? (a) : (b))
@@ -416,14 +425,18 @@ void QEMU_ERROR("code path is reachable")
 /*
  * Minimum function that returns zero only if both values are zero.
  * Intended for use with unsigned values only.
+ *
+ * Preprocessor sorcery ahead: use different identifiers for the local
+ * variables in each expansion, so we can nest macro calls without
+ * shadowing variables.
  */
-#ifndef MIN_NON_ZERO
-#define MIN_NON_ZERO(a, b)                              \
+#define MIN_NON_ZERO_INTERNAL(a, b, _a, _b)             \
     ({                                                  \
         typeof(1 ? (a) : (b)) _a = (a), _b = (b);       \
         _a == 0 ? _b : (_b == 0 || _b > _a) ? _a : _b;  \
     })
-#endif
+#define MIN_NON_ZERO(a, b) \
+    MIN_NON_ZERO_INTERNAL((a), (b), MAKE_IDENTFIER(_a), MAKE_IDENTFIER(_b))
 
 /*
  * Round number down to multiple. Safe when m is not a power of 2 (see
-- 
2.41.0



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:24:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:24:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606388.944273 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIir-0004nA-Cy; Thu, 21 Sep 2023 12:23:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606388.944273; Thu, 21 Sep 2023 12:23:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIir-0004n3-9J; Thu, 21 Sep 2023 12:23:57 +0000
Received: by outflank-mailman (input) for mailman id 606388;
 Thu, 21 Sep 2023 12:23:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gqFj=FF=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qjIiq-0004mx-0E
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:23:56 +0000
Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com
 [2a00:1450:4864:20::436])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bb13c40b-5879-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 14:23:54 +0200 (CEST)
Received: by mail-wr1-x436.google.com with SMTP id
 ffacd0b85a97d-3214cdb4b27so860126f8f.1
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 05:23:54 -0700 (PDT)
Received: from georged-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 n5-20020a5d4005000000b0031c5dda3aedsm1620901wrp.95.2023.09.21.05.23.53
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 21 Sep 2023 05:23:53 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bb13c40b-5879-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695299034; x=1695903834; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=saA8fJ2ZeQlapnn4EiEmFDuuaSgwbsaBe1MiDOt4CaE=;
        b=lWiHw+MJgiPOn0B0nXwr+A9EG370AH7EsjUaCfFywuPim3LgAuQaeFQrj97SmOcs9/
         Ug1Nic7JyGKs9VMtDyJRpB8quvlKzlVU7Jjdbbxhs+FSiLXtVoPva3P1iYFFY3si80Gq
         RBXp7EJx1iE2tYaXLga2HoI8XN760gkWRZgxg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695299034; x=1695903834;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=saA8fJ2ZeQlapnn4EiEmFDuuaSgwbsaBe1MiDOt4CaE=;
        b=BUBUr6l5N+aqyA3EbKj1EhQVWtVyJwsAHtG65qonlt2ZExjl15vE8IRMMZQrPPGRx2
         7N8n3y798MDUCxCF9IKkxvu3bYXZzSzOk510aU99QnFVEeK0jTi/UHf4BRlnPEzO0iA1
         2DwhwZGGvp54KfB+mv6U4OjOrLs38ztA1PriOvRXM2k+HUhS3P5bv/w8Ywh6y/S4/86E
         +wsIUnuicLV+2cQYN6pP5FbErb9dH1fEPu4V6+aUSgZR0yyK8Uh8Q3oX/YEpd+PWQTex
         4+VHCmhGz0cyB4F+nT/r1XEgby7Uq0VrJS0VbN/LffRtsi+MtkRqR/4+jTWMlpCawkGo
         02OA==
X-Gm-Message-State: AOJu0YxMdTM18kLTLkFrivl9vm/v7Hd1AdDIAc8giMvf6wh/U+sOze0d
	pRhhis/EpeDpOuZ9atw64SpAUvqkLbrHsl1nWgw=
X-Google-Smtp-Source: AGHT+IHFPWiFzBwbxJRb3ZpsZQyu2i+rjOazfrsiQY+q3qLKekKZm05U42crXBzHqqK7nm8NelYElw==
X-Received: by 2002:a5d:554e:0:b0:319:775f:d553 with SMTP id g14-20020a5d554e000000b00319775fd553mr5568232wrw.9.1695299034021;
        Thu, 21 Sep 2023 05:23:54 -0700 (PDT)
From: George Dunlap <george.dunlap@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@cloud.com>,
	Dario Faggioli <dfaggioli@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2 1/2] credit: Limit load balancing to once per millisecond
Date: Thu, 21 Sep 2023 13:23:51 +0100
Message-Id: <20230921122352.2307574-1-george.dunlap@cloud.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The credit scheduler tries as hard as it can to ensure that it always
runs scheduling units with positive credit (PRI_TS_UNDER) before
running those with negative credit (PRI_TS_OVER).  If the next
runnable scheduling unit is of priority OVER, it will always run the
load balancer, which will scour the system looking for another
scheduling unit of the UNDER priority.

Unfortunately, as the number of cores on a system has grown, the cost
of the work-stealing algorithm has dramatically increased; a recent
trace on a system with 128 cores showed this taking over 50
microseconds.

Add a parameter, load_balance_ratelimit, to limit the frequency of
load balance operations on a given pcpu.  Default this to 1
millisecond.

Invert the load balancing conditional to make it more clear, and line
up more closely with the comment above it.

Overall it might be cleaner to have the last_load_balance checking
happen inside csched_load_balance(), but that would require either
passing both now and spc into the function, or looking them up again;
both of which seemed to be worse than simply checking and setting the
values before calling it.

On a system with a vcpu:pcpu ratio of 2:1, running Windows guests
(which will end up calling YIELD during spinlock contention), this
patch increased performance significantly.

Signed-off-by: George Dunlap <george.dunlap@cloud.com>
---
Changes since v1:
- Fix editing mistake in commit message
- Improve documentation
- global var is __ro_after_init
- Remove sysctl, as it's not used.  Define max value in credit.c.
- Fix some style issues
- Move comment tweak to the right patch
- In the event that the commandline-parameter value is too high, clip
  to the maximum value rather than setting to the default.

CC: Dario Faggioli <dfaggioli@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>
CC: George Dunlap <george.dunlap@citrix.com>
CC: Jan Beulich <jbeulich@suse.com>
CC: Julien Grall <julien@xen.org>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Wei Liu <wl@xen.org>
---
 docs/misc/xen-command-line.pandoc |  8 ++++++
 xen/common/sched/credit.c         | 47 +++++++++++++++++++++++++------
 2 files changed, 46 insertions(+), 9 deletions(-)

diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
index f88e6a70ae..9c3c72a7f9 100644
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -1884,6 +1884,14 @@ By default, Xen will use the INVPCID instruction for TLB management if
 it is available.  This option can be used to cause Xen to fall back to
 older mechanisms, which are generally slower.
 
+### load-balance-ratelimit
+> `= <integer>`
+
+The minimum interval between load balancing events on a given pcpu, in
+microseconds.  A value of '0' will disable rate limiting.  Maximum
+value 1 second. At the moment only credit honors this parameter.
+Default 1ms.
+
 ### noirqbalance (x86)
 > `= <boolean>`
 
diff --git a/xen/common/sched/credit.c b/xen/common/sched/credit.c
index f2cd3d9da3..5c06f596d2 100644
--- a/xen/common/sched/credit.c
+++ b/xen/common/sched/credit.c
@@ -50,6 +50,10 @@
 #define CSCHED_TICKS_PER_TSLICE     3
 /* Default timeslice: 30ms */
 #define CSCHED_DEFAULT_TSLICE_MS    30
+/* Default load balancing ratelimit: 1ms */
+#define CSCHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US 1000
+/* Max load balancing ratelimit: 1s */
+#define CSCHED_MAX_LOAD_BALANCE_RATELIMIT_US     1000000
 #define CSCHED_CREDITS_PER_MSEC     10
 /* Never set a timer shorter than this value. */
 #define CSCHED_MIN_TIMER            XEN_SYSCTL_SCHED_RATELIMIT_MIN
@@ -153,6 +157,7 @@ struct csched_pcpu {
 
     unsigned int idle_bias;
     unsigned int nr_runnable;
+    s_time_t last_load_balance;
 
     unsigned int tick;
     struct timer ticker;
@@ -218,7 +223,7 @@ struct csched_private {
 
     /* Period of master and tick in milliseconds */
     unsigned int tick_period_us, ticks_per_tslice;
-    s_time_t ratelimit, tslice, unit_migr_delay;
+    s_time_t ratelimit, tslice, unit_migr_delay, load_balance_ratelimit;
 
     struct list_head active_sdom;
     uint32_t weight;
@@ -612,6 +617,8 @@ init_pdata(struct csched_private *prv, struct csched_pcpu *spc, int cpu)
     BUG_ON(!is_idle_unit(curr_on_cpu(cpu)));
     cpumask_set_cpu(cpu, prv->idlers);
     spc->nr_runnable = 0;
+
+    spc->last_load_balance = NOW();
 }
 
 static void cf_check
@@ -1676,9 +1683,17 @@ csched_runq_steal(int peer_cpu, int cpu, int pri, int balance_step)
     return NULL;
 }
 
+/*
+ * Minimum delay, in microseconds, between load balance operations.
+ * This prevents spending too much time doing load balancing, particularly
+ * when the system has a high number of YIELDs due to spinlock priority inversion.
+ */
+static unsigned int __ro_after_init load_balance_ratelimit_us = CSCHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US;
+integer_param("load-balance-ratelimit", load_balance_ratelimit_us);
+
 static struct csched_unit *
 csched_load_balance(struct csched_private *prv, int cpu,
-    struct csched_unit *snext, bool *stolen)
+                    struct csched_unit *snext, bool *stolen)
 {
     const struct cpupool *c = get_sched_res(cpu)->cpupool;
     struct csched_unit *speer;
@@ -1958,15 +1973,19 @@ static void cf_check csched_schedule(
         /*
          * SMP Load balance:
          *
-         * If the next highest priority local runnable UNIT has already eaten
-         * through its credits, look on other PCPUs to see if we have more
-         * urgent work... If not, csched_load_balance() will return snext, but
-         * already removed from the runq.
+         * If the next highest priority local runnable UNIT has
+         * already eaten through its credits (and we're below the
+         * balancing ratelimit), look on other PCPUs to see if we have
+         * more urgent work... If we don't, csched_load_balance() will
+         * return snext, but already removed from the runq.
          */
-        if ( snext->pri > CSCHED_PRI_TS_OVER )
-            __runq_remove(snext);
-        else
+        if ( snext->pri <= CSCHED_PRI_TS_OVER
+             && now - spc->last_load_balance > prv->load_balance_ratelimit) {
+            spc->last_load_balance = now;
             snext = csched_load_balance(prv, sched_cpu, snext, &migrated);
+        }
+        else
+            __runq_remove(snext);
 
     } while ( !unit_runnable_state(snext->unit) );
 
@@ -2181,6 +2200,14 @@ csched_global_init(void)
                XEN_SYSCTL_CSCHED_MGR_DLY_MAX_US, vcpu_migration_delay_us);
     }
 
+    if ( load_balance_ratelimit_us > CSCHED_MAX_LOAD_BALANCE_RATELIMIT_US )
+    {
+        load_balance_ratelimit_us = CSCHED_MAX_LOAD_BALANCE_RATELIMIT_US;
+        printk("WARNING: load-balance-ratelimit outside of valid range [0,%d]us.\n"
+               "Setting to max.\n",
+               CSCHED_MAX_LOAD_BALANCE_RATELIMIT_US);
+    }
+
     return 0;
 }
 
@@ -2223,6 +2250,8 @@ csched_init(struct scheduler *ops)
 
     prv->unit_migr_delay = MICROSECS(vcpu_migration_delay_us);
 
+    prv->load_balance_ratelimit = MICROSECS(load_balance_ratelimit_us);
+
     return 0;
 }
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:24:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:24:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606389.944283 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIit-00052Q-MN; Thu, 21 Sep 2023 12:23:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606389.944283; Thu, 21 Sep 2023 12:23:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIit-00052J-JL; Thu, 21 Sep 2023 12:23:59 +0000
Received: by outflank-mailman (input) for mailman id 606389;
 Thu, 21 Sep 2023 12:23:58 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gqFj=FF=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qjIis-0004xy-7l
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:23:58 +0000
Received: from mail-wr1-x435.google.com (mail-wr1-x435.google.com
 [2a00:1450:4864:20::435])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bb718365-5879-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 14:23:55 +0200 (CEST)
Received: by mail-wr1-x435.google.com with SMTP id
 ffacd0b85a97d-32179d3c167so755909f8f.1
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 05:23:55 -0700 (PDT)
Received: from georged-x-u.eng.citrite.net ([185.25.67.249])
 by smtp.gmail.com with ESMTPSA id
 n5-20020a5d4005000000b0031c5dda3aedsm1620901wrp.95.2023.09.21.05.23.54
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 21 Sep 2023 05:23:54 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bb718365-5879-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695299035; x=1695903835; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:from:to:cc:subject:date
         :message-id:reply-to;
        bh=ND6JjdDALXmgUMQ6eVlffEnK99gwZtTIG42TlqB7sOk=;
        b=GDd7DlMzly7unkahiNv1p9gD70jWIKCcCwe3co9olUZoYUthQx3bhn7MLwMMvqcUF6
         F9lCHOoZPqRmeH9X/xyLA3konPT5hYnqgZfqEeXMNBhdbUz++BXPQVm6vs30NBpE7zNG
         HWJhevp1S7tlim64xIR6pi5Lb87K/OESgQv8o=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695299035; x=1695903835;
        h=content-transfer-encoding:mime-version:references:in-reply-to
         :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=ND6JjdDALXmgUMQ6eVlffEnK99gwZtTIG42TlqB7sOk=;
        b=KsTC5v900+Am7xxTd/ExVrQSYZuu+Smqh28KOZEXE9plH9qNaq8av7jZC6ctudvJy6
         Tx1vjDtpH2r+QJTpi2gy1zSQir3DrHAmlhcNoy4USh5jsLAXYeisagkD4QEM74S6rhM/
         g+P9gPMpzkSzGovkjflULIqs5vmuoioh8pGYPtpLU0NcAXyFUQmwN5lvZa0jSB/P/TLs
         4j3SorPG859Oo/OQpELs4z5Qf3QQttBQt02C7GUL/6w+odcDHNcDWsqRQf3b8cqKXWuS
         ow35JLmzkWR+sUq1Did8OVw8nusuXHfS7upVnXNPQFlhuQKnQzEMv/KCJJ3l+PokYFYe
         sOLQ==
X-Gm-Message-State: AOJu0YxgXd1pI5F+09nUW++6FPltmALEWvByIEY6857/5Xt+DPD1T6qL
	pBdXkfQyJxwnKSqdfV1et1KmP7GgMVh/ATAShAg=
X-Google-Smtp-Source: AGHT+IGjwxRe2ylX66/0bx/FQE0r6xzF2bdDMVP4PCeaXLq53QDiJu9bRg6SNSp3yo0ySblFUN4cFw==
X-Received: by 2002:a5d:61cd:0:b0:31f:91ae:4509 with SMTP id q13-20020a5d61cd000000b0031f91ae4509mr5096426wrv.40.1695299034566;
        Thu, 21 Sep 2023 05:23:54 -0700 (PDT)
From: George Dunlap <george.dunlap@cloud.com>
To: xen-devel@lists.xenproject.org
Cc: George Dunlap <george.dunlap@cloud.com>,
	Dario Faggioli <dfaggioli@suse.com>
Subject: [PATCH v2 2/2] credit: Don't steal vcpus which have yielded
Date: Thu, 21 Sep 2023 13:23:52 +0100
Message-Id: <20230921122352.2307574-2-george.dunlap@cloud.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230921122352.2307574-1-george.dunlap@cloud.com>
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

On large systems with many vcpus yielding due to spinlock priority
inversion, it's not uncommon for a vcpu to yield its timeslice, only
to be immediately stolen by another pcpu looking for higher-priority
work.

To prevent this:

* Keep the YIELD flag until a vcpu is removed from a runqueue

* When looking for work to steal, skip vcpus which have yielded

NB that this does mean that sometimes a VM is inserted into an empty
runqueue; handle that case.

Signed-off-by: George Dunlap <george.dunlap@cloud.com>
---
Changes since v1:
- Moved a comment tweak to the right patch

CC: Dario Faggioli <dfaggioli@suse.com>
---
 xen/common/sched/credit.c | 25 ++++++++++++++-----------
 1 file changed, 14 insertions(+), 11 deletions(-)

diff --git a/xen/common/sched/credit.c b/xen/common/sched/credit.c
index 5c06f596d2..38a6f6fa6d 100644
--- a/xen/common/sched/credit.c
+++ b/xen/common/sched/credit.c
@@ -298,14 +298,10 @@ __runq_insert(struct csched_unit *svc)
      * runnable unit if we can.  The next runq_sort will bring it forward
      * within 30ms if the queue too long. */
     if ( test_bit(CSCHED_FLAG_UNIT_YIELD, &svc->flags)
-         && __runq_elem(iter)->pri > CSCHED_PRI_IDLE )
-    {
+         && __runq_elem(iter)->pri > CSCHED_PRI_IDLE
+         && iter->next != runq)
         iter=iter->next;
 
-        /* Some sanity checks */
-        BUG_ON(iter == runq);
-    }
-
     list_add_tail(&svc->runq_elem, iter);
 }
 
@@ -321,6 +317,11 @@ __runq_remove(struct csched_unit *svc)
 {
     BUG_ON( !__unit_on_runq(svc) );
     list_del_init(&svc->runq_elem);
+
+    /*
+     * Clear YIELD flag when scheduling back in
+     */
+    clear_bit(CSCHED_FLAG_UNIT_YIELD, &svc->flags);
 }
 
 static inline void
@@ -1637,6 +1638,13 @@ csched_runq_steal(int peer_cpu, int cpu, int pri, int balance_step)
         if ( speer->pri <= pri )
             break;
 
+        /*
+         * Don't steal a UNIT which has yielded; it's waiting for a
+         * reason
+         */
+        if (test_bit(CSCHED_FLAG_UNIT_YIELD, &speer->flags))
+            continue;
+
         /* Is this UNIT runnable on our PCPU? */
         unit = speer->unit;
         BUG_ON( is_idle_unit(unit) );
@@ -1954,11 +1962,6 @@ static void cf_check csched_schedule(
         dec_nr_runnable(sched_cpu);
     }
 
-    /*
-     * Clear YIELD flag before scheduling out
-     */
-    clear_bit(CSCHED_FLAG_UNIT_YIELD, &scurr->flags);
-
     do {
         snext = __runq_elem(runq->next);
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:39:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:39:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606407.944293 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIxQ-0000uK-0N; Thu, 21 Sep 2023 12:39:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606407.944293; Thu, 21 Sep 2023 12:38:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIxP-0000uD-Sd; Thu, 21 Sep 2023 12:38:59 +0000
Received: by outflank-mailman (input) for mailman id 606407;
 Thu, 21 Sep 2023 12:38:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=k/An=FF=redhat.com=pbonzini@srs-se1.protection.inumbo.net>)
 id 1qjIxO-0000u7-Et
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:38:58 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d44073b5-587b-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 14:38:57 +0200 (CEST)
Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com
 [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
 us-mta-68-66Xh11FxNqiEJpGAa8yxWw-1; Thu, 21 Sep 2023 08:38:52 -0400
Received: by mail-wm1-f72.google.com with SMTP id
 5b1f17b1804b1-3fd0fa4d08cso6886865e9.1
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 05:38:52 -0700 (PDT)
Received: from ?IPV6:2001:b07:6468:f312:9af8:e5f5:7516:fa89?
 ([2001:b07:6468:f312:9af8:e5f5:7516:fa89])
 by smtp.googlemail.com with ESMTPSA id
 c12-20020adfed8c000000b0032179c4a46dsm1650846wro.100.2023.09.21.05.38.49
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 21 Sep 2023 05:38:50 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d44073b5-587b-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695299935;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=jkSn+PxPk9HUDFePBeJ+qJj/mQ3EC7rJPAPt5aKMVQM=;
	b=Zqkwp7dX9YxjJ4LSgYDDprHVAhqJcqGt+EFJ3KDvfm2eeHmnlZoymxfAryo/ERkgVyF1Iv
	Rqh34QN2cokEMFmPfauR3ipwwIXT+zhpZjnZrafcrlXKTJkWA0yoTlOK5lX+hDTiMFvtcU
	C7d7JyubVmO7U/UbnI08TvnkubxGSfw=
X-MC-Unique: 66Xh11FxNqiEJpGAa8yxWw-1
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695299931; x=1695904731;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=jkSn+PxPk9HUDFePBeJ+qJj/mQ3EC7rJPAPt5aKMVQM=;
        b=D1gYhqGxQ+DjVN8aDhipq2AW1iWSZNaX/HW/6g4xwhL57x1qUvCKrYJ/0AEk8T35Km
         mJbu3gV8ukyUwpimfL95MA7Bvpmkv5z3+H8pAVwjN5hGxu6kFkZlX0nckMse0uAp+ZyG
         WIFSLtoA54iYXcBv838xBo1G8iiR7ch50WXw0AHQFe4cAsEelDl6kaF71bTdmrtPN+mU
         brYfbBdx3DghpoSbTvdp4GBxZxHVHnP3tTikmHwXnKLegi9uxFZGV6yApFZUYpjIhPpW
         Oxkx9XeVp7Jw5PnXwh4ST6L/DiUwbrPlqVsUbBpEpUCUG4NUHEhCa9MU9JWwqopcr/pw
         KeYw==
X-Gm-Message-State: AOJu0Ywu5DeqEMTLInr4/Cg7DtczvRtgSWbTBC6YT5LNQX8PFRZxEzGA
	HgVvbJvLBEuig5Tu2Z/l0Nr1Q32HxbDwxTPA97RMtOyNat6WxvPZuULyi5wbVaOZ35EAia7WzHb
	RiR5hDd1G39jEDeb+qceSx3Bp17g=
X-Received: by 2002:a05:600c:2218:b0:3fe:d7c8:e0d with SMTP id z24-20020a05600c221800b003fed7c80e0dmr5342826wml.34.1695299931204;
        Thu, 21 Sep 2023 05:38:51 -0700 (PDT)
X-Google-Smtp-Source: AGHT+IFiI3gcW3I+u5Eo8SPNcaANg2683MWXN2khdedOCHDWhlltohFDz1lgyBkB4z+3k5LCX1UlHw==
X-Received: by 2002:a05:600c:2218:b0:3fe:d7c8:e0d with SMTP id z24-20020a05600c221800b003fed7c80e0dmr5342805wml.34.1695299930876;
        Thu, 21 Sep 2023 05:38:50 -0700 (PDT)
Message-ID: <9d2cccad-16ee-abcf-5a34-7e513a050229@redhat.com>
Date: Thu, 21 Sep 2023 14:38:48 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
Subject: Re: [PATCH v10 33/38] x86/entry: Add fred_entry_from_kvm() for VMX to
 handle IRQ/NMI
To: Nikolay Borisov <nik.borisov@suse.com>, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 seanjc@google.com, peterz@infradead.org, jgross@suse.com,
 ravi.v.shankar@intel.com, mhiramat@kernel.org, andrew.cooper3@citrix.com,
 jiangshanlai@gmail.com
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-34-xin3.li@intel.com>
 <8163cf98-8968-72a4-4193-1ca9f019d9ff@suse.com>
From: Paolo Bonzini <pbonzini@redhat.com>
In-Reply-To: <8163cf98-8968-72a4-4193-1ca9f019d9ff@suse.com>
X-Mimecast-Spam-Score: 0
X-Mimecast-Originator: redhat.com
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 9/21/23 14:11, Nikolay Borisov wrote:
>>
>> +SYM_FUNC_START(asm_fred_entry_from_kvm)
>> +    push %rbp
>> +    mov %rsp, %rbp
> 
> use FRAME_BEGIN/FRAME_END macros to ommit this code if 
> CONFIG_FRAME_POINTER is disabled.

No, the previous stack pointer is used below, so the code might as well 
use %rbp for that; but it must do so unconditionally.

Paolo

>> +
>> +    UNWIND_HINT_SAVE
>> +
>> +    /*
>> +     * Don't check the FRED stack level, the call stack leading to this
>> +     * helper is effectively constant and shallow (relatively speaking).
>> +     *
>> +     * Emulate the FRED-defined redzone and stack alignment.
>> +     */
>> +    sub $(FRED_CONFIG_REDZONE_AMOUNT << 6), %rsp
>> +    and $FRED_STACK_FRAME_RSP_MASK, %rsp
>> +
>> +    /*
>> +     * Start to push a FRED stack frame, which is always 64 bytes:
>> +     *
>> +     * +--------+-----------------+
>> +     * | Bytes  | Usage           |
>> +     * +--------+-----------------+
>> +     * | 63:56  | Reserved        |
>> +     * | 55:48  | Event Data      |
>> +     * | 47:40  | SS + Event Info |
>> +     * | 39:32  | RSP             |
>> +     * | 31:24  | RFLAGS          |
>> +     * | 23:16  | CS + Aux Info   |
>> +     * |  15:8  | RIP             |
>> +     * |   7:0  | Error Code      |
>> +     * +--------+-----------------+
>> +     */
>> +    push $0                /* Reserved, must be 0 */
>> +    push $0                /* Event data, 0 for IRQ/NMI */
>> +    push %rdi            /* fred_ss handed in by the caller */
>> +    push %rbp

^^ here

Paolo

>> +    pushf
>> +    mov $__KERNEL_CS, %rax
>> +    push %rax 



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:39:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:39:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606411.944303 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIxx-0001Sq-8A; Thu, 21 Sep 2023 12:39:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606411.944303; Thu, 21 Sep 2023 12:39:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjIxx-0001Sj-5R; Thu, 21 Sep 2023 12:39:33 +0000
Received: by outflank-mailman (input) for mailman id 606411;
 Thu, 21 Sep 2023 12:39:32 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=KrUB=FF=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qjIxw-0001Sb-A8
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:39:32 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2042.outbound.protection.outlook.com [40.107.13.42])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e864badd-587b-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 14:39:30 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7276.eurprd04.prod.outlook.com (2603:10a6:102:8c::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Thu, 21 Sep
 2023 12:39:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 12:39:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e864badd-587b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YsG/LkzaiCDn1pWzVBdTN05CPi90BYhAXFjLdQ+lpMEcfIxp1IjHzJ+BJ8gxKwlY3edSpitvlRnN7pyYyjoh6AaDESVFdKDqOJ7LyycTvhSDpy08AiaJa6biBRXzJdCoezS51QY2N8QYpk+xlNcjmmAhhn/XL7Rprj4z9kZkgGcGdig6gt03xCnf7YEV/dcyLKRxXl6IYG/tkafMiRmnuqeY6wfDTK9nHr3MzVcMIGYKgw6mk1WY/+9rkNcjH6Z0cgze8naxCFhk9NsPF4XG6on+vaije4akQhpXi1toE//jcEZ32cIcBFkgiPNeLYe/JJ71ierUgEgydbykN6cUHg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=re3sTetQCopVB3sggpRZXgo3/Dc/Naj2hY1hygO3it4=;
 b=doLJnrljyVjhRHM2miOAiEEqIeLgwAhNB23Be3dbgzuMr6T0CQJ1QHswCdZ5p4kSAc89uoEegWBC9PXCLqVP8iGvq5z9ZyxwEdIWzIEV59igu+MAlxAAp00nZI4n0EvzpsR0G+/X7vxDmMkzdHpNFpLw4OPqokVoqEsW4/xAVHs2urzoxdOJtwKCDswyiyt2lL226YnGGZ9Sy0u5+BygbOjgHwYgUaSgXFPuGKLTLJscSnCYaZrRDdx8kZHSsshZWfwM90xs/rbS4W1Syn+f7sGrPzslxztUtC4xUtP9sSro2lXSi4pyDWHHPAS6969INpMpC72nNHA9aBJ5DEgxYw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=re3sTetQCopVB3sggpRZXgo3/Dc/Naj2hY1hygO3it4=;
 b=IpI8rZL5faxOxiar7uHAEmBF+rw8v8199EqInyVXejVGz8Tzfzg8hgfK3lIMuJv1BZ+rL3wYO7Fo+kVh1IuySMXZAVUJb0kYzbYKnc3bBZS27+j7nBMJ8h6AHWIe4MYEdDDjIRteS0/q9utk3aCTRSR23+pfhMHJh/wzFUd+rJ659AFYNDgOHxju7axcL2hMxpvCaeNnyJTFjzf1oV2XIYqy5UwLGKu4JDGDFn76F+EV8/K3Egh/5wB0r1xQUG1TwaucRmChVR5+q7RraUslLTh/73pol5xnzjZoFgpN9wH5gDImPaIDdsT2R8AO4en5k0ifIMDGwy8FPgzpXmX66A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0ba4e387-5f58-6828-9168-cab0ae3b3698@suse.com>
Date: Thu, 21 Sep 2023 14:38:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] x86/paging: Delete update_cr3()'s do_locking parameter
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Nicola Vetrini <nicola.vetrini@bugseng.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, George Dunlap <george.dunlap@eu.citrix.com>,
 Tim Deegan <tim@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230920192153.1967618-1-andrew.cooper3@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230920192153.1967618-1-andrew.cooper3@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0008.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:c8::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PR3PR04MB7276:EE_
X-MS-Office365-Filtering-Correlation-Id: 58489dd3-27eb-4418-c9cb-08dbba9fbb03
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	o6eGC5YPCSvumLn4kRYeZvcj3LP4fb75Qe+3RCT8vEu8zFZzHgI2g/9vKmuGComc659ooyihLwB0ljvFrQgQ7dXkAOZY2Jq4GoZW6m6/RcLkK6yJbNXaxwp2VMZlm6gM2w+gYtaz0k4ajtm7Td/H/8jjsMMrNkDxGoUDTdwV5Fr1VRDAvqNsZaXDvqlrmPETwbiADTifz3ofFaxASoE+PH5gBcEYOFaXYI059I087ymIv1UoZEp+KBGO0WgZ/ADZP0K2pX7vzUAML8azMGCQb2QYRoMk1BY5CfkgrvlXrb5UG2l4iCx5xax2cs7GatSK9D7hiaZJT5RskvTG14j5UXzBFTV3mdTmh3cVG7ahK3mFf5hY8h9qujJ1YkT6B9SN344Pdv1UrlCOLK99VQElU97c3YX+9saLy1GtIvMPm9OIZI/zg2HAZzSCPIpJG+NRTF44HqzN7ZptDI4cvbbL4Oa9clb4OsRiIoot0x3IM04wkA+zei7HGPocx4K5q3YaGLwu3JWG6DkUcul/ga92hvRJQ8EdxDSMj7GOzfjkDXL/e7GQ52AncRPq5/xhqdnLK569DV9azuceIBz77sb9g9/iFfJLup51WU5UIrylCApGTPPRoRAKuILwO++FwIak8/efu4OOBoAQU/r3qV5qTA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(366004)(346002)(376002)(136003)(451199024)(186009)(1800799009)(6666004)(6512007)(53546011)(6506007)(83380400001)(26005)(478600001)(2616005)(2906002)(8676002)(4326008)(66476007)(8936002)(66556008)(66946007)(54906003)(5660300002)(6916009)(41300700001)(316002)(6486002)(86362001)(38100700002)(36756003)(31696002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bWdlS2I5elB4RWRhbmVjZnF4RFFmcjVnU2Y5Uk9rTzNoWER1V0lZYU9pNVJY?=
 =?utf-8?B?YWtiVEpRMU9aUmE5Wnk0RTRxMnZCMGE2Y3JjU0FscWxqRWpGT1pzMllJV2tX?=
 =?utf-8?B?akx4YkJnQktsaG5QWVZkZU4yUExNTlFqNnVQOVgzbnUyaEdXb2ozTHRyd1JY?=
 =?utf-8?B?bjl0UTlyWGgrc2xoQzlPbVlNT2E2bklYL3UzSFVNZWhDc1h2YkswNDFHOS9N?=
 =?utf-8?B?UlE1L2J5alNYTWlRZjJ3Wnd5ZW9aN085NDlPZThjdWRoRkNHT3p1TmlwQzRq?=
 =?utf-8?B?Szlwd3pMYkFtY05nODdpN0lBWitIcnlEUmVKYTRvcFNhc1hQOHJ6NHRXVzlJ?=
 =?utf-8?B?Y29DQ2JWMTdFTkNMa3VTRDcwN0F2UHlMRkZ2WWZRTHBEVDFqL1k1NEduVDFO?=
 =?utf-8?B?WlVlTWdSd0FucVdFUGhiMGdobGE2V3BiTVplZmpwdzVTOFB0OWo3S0pXRm85?=
 =?utf-8?B?VWdUblp2MXFhODhJTjVmT2lKYjdLdHRWS1BjOGRua2RoVlhPN05GeTNOTW1G?=
 =?utf-8?B?OWxKK1BkYzJWcFc5UjdBekZXck5nTDNhTVd3eTlsL3NaMmlaMnZHcm9QdG1n?=
 =?utf-8?B?TXB3anhRVDNWR1p0ZW9uZDlEdm93RnNtNy9DS2xVQUxFOFEwVGVVTW9QV0dE?=
 =?utf-8?B?elV3QlJRK3hMK2FCdWt2MzRjemVoeHBMTUhIcFJtWlc4U2RQWTNqTFo2bXRv?=
 =?utf-8?B?ekR4OTRzaHExOE9vMkFYcTlEQTY0MHN0ZnVRQ2NoeVAraFFtYi9HNkxGc2xy?=
 =?utf-8?B?U09LbWVpRUNibkYvM1A1U2xPVlN2NEhYb3gzU0JBUVBUelJLSFFvbUcxRHIz?=
 =?utf-8?B?YkZMUGZaT2JxWmlZaTI2THphWldLdFdxN3YxeFZRZzZSSVEyc0RUZm5BNE9x?=
 =?utf-8?B?M01yRjhTZlUrbU9YcVVaNDR1NzRmektwRytOS2k3dUt2UTV3SXVacHU3bDEr?=
 =?utf-8?B?bUhhdThCQmlaRFVDaDNjdnFLblZPZ1hUNTF1VlhZWDF6WFB4REpaTGgxN2lv?=
 =?utf-8?B?ZVRsdS90NDRvcUxSdlk5STdqWHU0aHVYWE1XeEtpUUxxYVRnUkEvUzZtMHZs?=
 =?utf-8?B?UHRqVEd3bEF6WVlWVElqYXZlRFYrWVY0UG9aRTlPYytmUjgyQTdwdFlWSmZk?=
 =?utf-8?B?UGVoSUFzdWVRSHYzTzVOeEpEZ0Jkd0tMM0djSWF4eFRZUFdwMmVZb280dG5j?=
 =?utf-8?B?RTBtU1RCS0d1cHZua2pqRXV3dTVUUTdweVpKNm9nQ1VXL1h1QUVPWmpnUXFr?=
 =?utf-8?B?cERDRFd5bzk0SWs5T1c5aHpETTNyelI1RTJsU21id0pUdFBiSUxobmgrRXVi?=
 =?utf-8?B?SmRZUzZvTDNWSHJRSmhnTkF5SGVxWHIwYVRSWWQ0N2QwVVo0SVlHcmNzUzNW?=
 =?utf-8?B?M3BzbFZIeUdTWDRVeFdUZTU0eStRNE9GZmFsSVNMdHM2Ui91OGtMNFl6WGhJ?=
 =?utf-8?B?Qi9kTnNGK3d6QTU4OTFxb2NCK29QMWZ6Z1NkQ2dpdEM1SjF2cmlyemRhZmZ6?=
 =?utf-8?B?QzBtaGprNFZJN0wyeGlNQTBpaHFNeWR3NFNpS2d3d01XbHFNZnBHSnh1c2la?=
 =?utf-8?B?OERPak91RDNJU2tpM1FrY2pSd2E0VkVUdVh6NVk2VFNBQ1JPbnllZFNkUWhw?=
 =?utf-8?B?Vkl2ZFlLVnlvTjBzS2tLK1hQZFFsem5wZHQ2YWdlSHg1ZDA5dnNpelNRNm9N?=
 =?utf-8?B?cDFCM2ViYXA5eC8wdno4SzE0Z0lyT0FMMjJWQzNmaVQ5RzZ2RXg3amtGcjNL?=
 =?utf-8?B?Q285YWJYNzB3c1NXelNSWUozRVJELzNCU1dKZ2c0NzJhWk5DdVFpaDMrU2NH?=
 =?utf-8?B?UFQ0SjJabXpJM3VTckhKKzkxMlhwdXZIajVmOUpjUzVJelBYRnhhZ2hSUWdQ?=
 =?utf-8?B?MEwwbk1na3pNTngyK0JDejI5YmVtbHZiNW1ySk01SXprTTBQSlBSek1nRlNu?=
 =?utf-8?B?MGVOTEcrZ0hnWHVYOGpRM3RwL2R5Y09ISnNFekt6WEJoT0MrVytFc1BZdkwv?=
 =?utf-8?B?d0V0bDZVZ09CcEE0d0NGbkRRZEUxbU1yN0lJVW5zcDVnOUdQaG1RZjhNWWoy?=
 =?utf-8?B?S01HOWF2WjgrdmdEeVBLSWR0Vlk5MlgvVjBjWWV6Vll3b0h4ZmIzbmhMalRS?=
 =?utf-8?Q?fhWOeD2AX6f1Jpdxdc8OU8soZ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 58489dd3-27eb-4418-c9cb-08dbba9fbb03
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 12:39:00.5816
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: eQguunx8FTGaBczvC9UZs8k+wnK16ypoIM+3PG8EudJtjfTjmLPhtWariB3fK7BO1f8J3NycUZf0hv92Me4iBg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7276

On 20.09.2023 21:21, Andrew Cooper wrote:
> Nicola reports that the XSA-438 fix introduced new MISRA violations because of
> some incidental tidying it tried to do.  The parameter is useless, so resolve
> the MISRA regression by removing it.
> 
> hap_update_cr3() discards the parameter entirely, while sh_update_cr3() uses
> it to distinguish internal and external callers and therefore whether the
> paging lock should be taken.
> 
> However, we have paging_lock_recursive() for this purpose, which also avoids
> the ability for the shadow internal callers to accidentally not hold the lock.
> 
> Fixes: fb0ff49fe9f7 ("x86/shadow: defer releasing of PV's top-level shadow reference")
> Reported-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> CC: Jan Beulich <JBeulich@suse.com>
> CC: Roger Pau Monné <roger.pau@citrix.com>
> CC: Wei Liu <wl@xen.org>
> CC: George Dunlap <george.dunlap@eu.citrix.com>
> CC: Tim Deegan <tim@xen.org>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Nicola Vetrini <nicola.vetrini@bugseng.com>
> 
> Slightly RFC.  Only compile tested so far.

With shadow/none.c also suitably edited
Reviewed-by: Jan Beulich <jbeulich@suse.com>

I'm a little surprised you introduce new uses of the (kind of odd) recursive lock,
when previously you voiced your dislike for our use of such. ("Kind of odd" because
unlike spin_lock_recursive(), only the potentially inner caller needs to use the
recursive form of the acquire.)

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 12:42:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 12:42:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606418.944312 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjJ0L-0003fs-Lf; Thu, 21 Sep 2023 12:42:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606418.944312; Thu, 21 Sep 2023 12:42:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjJ0L-0003fl-J9; Thu, 21 Sep 2023 12:42:01 +0000
Received: by outflank-mailman (input) for mailman id 606418;
 Thu, 21 Sep 2023 12:42:00 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wlCU=FF=linaro.org=philmd@srs-se1.protection.inumbo.net>)
 id 1qjJ0K-0003ff-Mt
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 12:42:00 +0000
Received: from mail-ed1-x529.google.com (mail-ed1-x529.google.com
 [2a00:1450:4864:20::529])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 418bc264-587c-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 14:41:59 +0200 (CEST)
Received: by mail-ed1-x529.google.com with SMTP id
 4fb4d7f45d1cf-52889bc61b6so1055169a12.0
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 05:41:59 -0700 (PDT)
Received: from [172.20.41.70] (static-212-193-78-212.thenetworkfactory.nl.
 [212.78.193.212]) by smtp.gmail.com with ESMTPSA id
 r21-20020aa7c155000000b005227e53cec2sm787038edp.50.2023.09.21.05.41.57
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 21 Sep 2023 05:41:58 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 418bc264-587c-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1695300119; x=1695904919; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=hzHv5wRRxnGLl33iiUbNmV1KkzNxk+do0fTlDHKrnPg=;
        b=SFL3+lJK+ZCQAIABa8xyll4sryvbR+vr6fcpR73vO0pUDIn/ecKGzmx4xFapS3aBme
         ibR845UBj4JFLnv+p5o5tDvwf3g4tKPSWer51L1Hd+2yuqHMdSGIwcsiN9aCEMoCPHA1
         tUR1AuyGCChBD405VnZ9gRtTXd4SYeZt5dGXK43dXVmsNMNPMPdtXo9r0nwLYDqhRrsO
         SBpKYtKkNMprb6Dp0dpls9gwL990ONiE+I8D+DoDEvAuuCzSROgyfh2qKa+SSvghupCA
         eFNmUffDO8KsOUnC/GaOokPFcNXO3RKVuDuBi5NhckPqHDdX5h2Nx/O97GtnKysCQ44i
         8wgw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695300119; x=1695904919;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=hzHv5wRRxnGLl33iiUbNmV1KkzNxk+do0fTlDHKrnPg=;
        b=ZjvYELJcUZu/3LEH4tyzg9GQ/Chh2yQX+MZY68Gzsb9dc299AuzBhxIgxPX5qe1I4H
         DAGChTnmTHZL83KdIypSIC/Cfi2HX6QfyylT1NZBtG3qIug9Sr30F3pxfIzSpKLSKedr
         XHrJXmcAdYem7porKJIyWVQ49DxUOhnF1EpNfyblk1ShplTB2OgfSWAt2SNoj5iXQ+7K
         hbGVkw1WIEY7ru1PY5bjNWS5UyCubby1najnfEHdCluAupSP6gHidJhbtgMH/wetJn0b
         m35U5EPsw258Bh3MrNoPTQMivJnOtfgTO44w8Le1d0E6pgh35w1ab+qAKpUfSZzfluw5
         zCAQ==
X-Gm-Message-State: AOJu0YwXGkaMbN3wdsDQzLcnHnQqemLkF63Fh8di97X/TwcQF5ZF3f0i
	GlIaP1XThRGeBoTYd9mAGc6vjw==
X-Google-Smtp-Source: AGHT+IFq6Gkfx1rvH/W76kLaY8mfGpbiX5vLzomsHrnI36knR+WJY/4ipOIpGsVRwTRwCx55YJKgNw==
X-Received: by 2002:a05:6402:1489:b0:52b:c980:43f3 with SMTP id e9-20020a056402148900b0052bc98043f3mr4352474edv.28.1695300119124;
        Thu, 21 Sep 2023 05:41:59 -0700 (PDT)
Message-ID: <e0d25860-9fdb-cd56-1d2a-b886af2e3297@linaro.org>
Date: Thu, 21 Sep 2023 14:41:55 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.1
Subject: Re: [PATCH v3 7/7] qobject atomics osdep: Make a few macros more
 hygienic
Content-Language: en-US
To: Markus Armbruster <armbru@redhat.com>, qemu-devel@nongnu.org
Cc: kwolf@redhat.com, hreitz@redhat.com, eblake@redhat.com,
 vsementsov@yandex-team.ru, jsnow@redhat.com, idryomov@gmail.com, pl@kamp.de,
 sw@weilnetz.de, sstabellini@kernel.org, anthony.perard@citrix.com,
 paul@xen.org, pbonzini@redhat.com, marcandre.lureau@redhat.com,
 berrange@redhat.com, thuth@redhat.com, stefanha@redhat.com, fam@euphon.net,
 quintela@redhat.com, peterx@redhat.com, leobras@redhat.com,
 kraxel@redhat.com, qemu-block@nongnu.org, xen-devel@lists.xenproject.org,
 alex.bennee@linaro.org, peter.maydell@linaro.org
References: <20230921121312.1301864-1-armbru@redhat.com>
 <20230921121312.1301864-8-armbru@redhat.com>
From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= <philmd@linaro.org>
In-Reply-To: <20230921121312.1301864-8-armbru@redhat.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 21/9/23 14:13, Markus Armbruster wrote:
> Variables declared in macros can shadow other variables.  Much of the
> time, this is harmless, e.g.:
> 
>      #define _FDT(exp)                                                  \
>          do {                                                           \
>              int ret = (exp);                                           \
>              if (ret < 0) {                                             \
>                  error_report("error creating device tree: %s: %s",   \
>                          #exp, fdt_strerror(ret));                      \
>                  exit(1);                                               \
>              }                                                          \
>          } while (0)
> 
> Harmless shadowing in h_client_architecture_support():
> 
>          target_ulong ret;
> 
>          [...]
> 
>          ret = do_client_architecture_support(cpu, spapr, vec, fdt_bufsize);
>          if (ret == H_SUCCESS) {
>              _FDT((fdt_pack(spapr->fdt_blob)));
>              [...]
>          }
> 
>          return ret;
> 
> However, we can get in trouble when the shadowed variable is used in a
> macro argument:
> 
>      #define QOBJECT(obj) ({                                 \
>          typeof(obj) o = (obj);                              \
>          o ? container_of(&(o)->base, QObject, base) : NULL; \
>       })
> 
> QOBJECT(o) expands into
> 
>      ({
> --->    typeof(o) o = (o);
>          o ? container_of(&(o)->base, QObject, base) : NULL;
>      })
> 
> Unintended variable name capture at --->.  We'd be saved by
> -Winit-self.  But I could certainly construct more elaborate death
> traps that don't trigger it.
> 
> To reduce the risk of trapping ourselves, we use variable names in
> macros that no sane person would use elsewhere.  Here's our actual
> definition of QOBJECT():
> 
>      #define QOBJECT(obj) ({                                         \
>          typeof(obj) _obj = (obj);                                   \
>          _obj ? container_of(&(_obj)->base, QObject, base) : NULL;   \
>      })
> 
> Works well enough until we nest macro calls.  For instance, with
> 
>      #define qobject_ref(obj) ({                     \
>          typeof(obj) _obj = (obj);                   \
>          qobject_ref_impl(QOBJECT(_obj));            \
>          _obj;                                       \
>      })
> 
> the expression qobject_ref(obj) expands into
> 
>      ({
>          typeof(obj) _obj = (obj);
>          qobject_ref_impl(
>              ({
> --->            typeof(_obj) _obj = (_obj);
>                  _obj ? container_of(&(_obj)->base, QObject, base) : NULL;
>              }));
>          _obj;
>      })
> 
> Unintended variable name capture at --->.
> 
> The only reliable way to prevent unintended variable name capture is
> -Wshadow.
> 
> One blocker for enabling it is shadowing hiding in function-like
> macros like
> 
>       qdict_put(dict, "name", qobject_ref(...))
> 
> qdict_put() wraps its last argument in QOBJECT(), and the last
> argument here contains another QOBJECT().
> 
> Use dark preprocessor sorcery to make the macros that give us this
> problem use different variable names on every call.
> 
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> Reviewed-by: Eric Blake <eblake@redhat.com>
> ---
>   include/qapi/qmp/qobject.h | 10 ++++++++--
>   include/qemu/atomic.h      | 17 ++++++++++++-----
>   include/qemu/compiler.h    |  3 +++
>   include/qemu/osdep.h       | 27 ++++++++++++++++++++-------
>   4 files changed, 43 insertions(+), 14 deletions(-)

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 13:03:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 13:03:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606427.944322 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjJKp-0001Mz-By; Thu, 21 Sep 2023 13:03:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606427.944322; Thu, 21 Sep 2023 13:03:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjJKp-0001Ms-9P; Thu, 21 Sep 2023 13:03:11 +0000
Received: by outflank-mailman (input) for mailman id 606427;
 Thu, 21 Sep 2023 13:03:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=UECe=FF=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qjJKo-0001Mm-3e
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 13:03:10 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 35c8fc4b-587f-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 15:03:08 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id A89341F37C;
 Thu, 21 Sep 2023 13:03:07 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 68A36134B0;
 Thu, 21 Sep 2023 13:03:07 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id V4taGAs/DGX7KwAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 21 Sep 2023 13:03:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 35c8fc4b-587f-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695301387; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=5wPes3WFjwB8hbN4DT/6xAg/60Wobb6sl2oFbPH7Rs8=;
	b=N+K8Eta/DLC6q31ZV793O7j8P/+uYaiftuMfg7lPRtTo0mhmVfNKRqv7HtxGuy2DkalHFw
	CLZ57JnCaXGVJedCFDNJIUIK2IKfSxJpgdhc/MKf25HCbiq65Ztf1wxQvURToSXpbZe5JR
	/L0Vbr6wu0EI8tMDgRrVZMetqWpyYWY=
Message-ID: <06de9352-fa8e-4727-b3ab-93adcfc066de@suse.com>
Date: Thu, 21 Sep 2023 15:03:06 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 1/2] credit: Limit load balancing to once per
 millisecond
Content-Language: en-US
To: George Dunlap <george.dunlap@cloud.com>, xen-devel@lists.xenproject.org
Cc: Dario Faggioli <dfaggioli@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <20230921122352.2307574-1-george.dunlap@cloud.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------s2SuwTSbGZbcZK615QeImcw6"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------s2SuwTSbGZbcZK615QeImcw6
Content-Type: multipart/mixed; boundary="------------ixmco0aWLsc2A02yL7yXNJV1";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: George Dunlap <george.dunlap@cloud.com>, xen-devel@lists.xenproject.org
Cc: Dario Faggioli <dfaggioli@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
Message-ID: <06de9352-fa8e-4727-b3ab-93adcfc066de@suse.com>
Subject: Re: [PATCH v2 1/2] credit: Limit load balancing to once per
 millisecond
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
In-Reply-To: <20230921122352.2307574-1-george.dunlap@cloud.com>

--------------ixmco0aWLsc2A02yL7yXNJV1
Content-Type: multipart/mixed; boundary="------------pjhagsKMRPuSNb0iNkCvQkvh"

--------------pjhagsKMRPuSNb0iNkCvQkvh
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjEuMDkuMjMgMTQ6MjMsIEdlb3JnZSBEdW5sYXAgd3JvdGU6DQo+IFRoZSBjcmVkaXQg
c2NoZWR1bGVyIHRyaWVzIGFzIGhhcmQgYXMgaXQgY2FuIHRvIGVuc3VyZSB0aGF0IGl0IGFs
d2F5cw0KPiBydW5zIHNjaGVkdWxpbmcgdW5pdHMgd2l0aCBwb3NpdGl2ZSBjcmVkaXQgKFBS
SV9UU19VTkRFUikgYmVmb3JlDQo+IHJ1bm5pbmcgdGhvc2Ugd2l0aCBuZWdhdGl2ZSBjcmVk
aXQgKFBSSV9UU19PVkVSKS4gIElmIHRoZSBuZXh0DQo+IHJ1bm5hYmxlIHNjaGVkdWxpbmcg
dW5pdCBpcyBvZiBwcmlvcml0eSBPVkVSLCBpdCB3aWxsIGFsd2F5cyBydW4gdGhlDQo+IGxv
YWQgYmFsYW5jZXIsIHdoaWNoIHdpbGwgc2NvdXIgdGhlIHN5c3RlbSBsb29raW5nIGZvciBh
bm90aGVyDQo+IHNjaGVkdWxpbmcgdW5pdCBvZiB0aGUgVU5ERVIgcHJpb3JpdHkuDQo+IA0K
PiBVbmZvcnR1bmF0ZWx5LCBhcyB0aGUgbnVtYmVyIG9mIGNvcmVzIG9uIGEgc3lzdGVtIGhh
cyBncm93biwgdGhlIGNvc3QNCj4gb2YgdGhlIHdvcmstc3RlYWxpbmcgYWxnb3JpdGhtIGhh
cyBkcmFtYXRpY2FsbHkgaW5jcmVhc2VkOyBhIHJlY2VudA0KPiB0cmFjZSBvbiBhIHN5c3Rl
bSB3aXRoIDEyOCBjb3JlcyBzaG93ZWQgdGhpcyB0YWtpbmcgb3ZlciA1MA0KPiBtaWNyb3Nl
Y29uZHMuDQo+IA0KPiBBZGQgYSBwYXJhbWV0ZXIsIGxvYWRfYmFsYW5jZV9yYXRlbGltaXQs
IHRvIGxpbWl0IHRoZSBmcmVxdWVuY3kgb2YNCj4gbG9hZCBiYWxhbmNlIG9wZXJhdGlvbnMg
b24gYSBnaXZlbiBwY3B1LiAgRGVmYXVsdCB0aGlzIHRvIDENCj4gbWlsbGlzZWNvbmQuDQo+
IA0KPiBJbnZlcnQgdGhlIGxvYWQgYmFsYW5jaW5nIGNvbmRpdGlvbmFsIHRvIG1ha2UgaXQg
bW9yZSBjbGVhciwgYW5kIGxpbmUNCj4gdXAgbW9yZSBjbG9zZWx5IHdpdGggdGhlIGNvbW1l
bnQgYWJvdmUgaXQuDQo+IA0KPiBPdmVyYWxsIGl0IG1pZ2h0IGJlIGNsZWFuZXIgdG8gaGF2
ZSB0aGUgbGFzdF9sb2FkX2JhbGFuY2UgY2hlY2tpbmcNCj4gaGFwcGVuIGluc2lkZSBjc2No
ZWRfbG9hZF9iYWxhbmNlKCksIGJ1dCB0aGF0IHdvdWxkIHJlcXVpcmUgZWl0aGVyDQo+IHBh
c3NpbmcgYm90aCBub3cgYW5kIHNwYyBpbnRvIHRoZSBmdW5jdGlvbiwgb3IgbG9va2luZyB0
aGVtIHVwIGFnYWluOw0KPiBib3RoIG9mIHdoaWNoIHNlZW1lZCB0byBiZSB3b3JzZSB0aGFu
IHNpbXBseSBjaGVja2luZyBhbmQgc2V0dGluZyB0aGUNCj4gdmFsdWVzIGJlZm9yZSBjYWxs
aW5nIGl0Lg0KPiANCj4gT24gYSBzeXN0ZW0gd2l0aCBhIHZjcHU6cGNwdSByYXRpbyBvZiAy
OjEsIHJ1bm5pbmcgV2luZG93cyBndWVzdHMNCj4gKHdoaWNoIHdpbGwgZW5kIHVwIGNhbGxp
bmcgWUlFTEQgZHVyaW5nIHNwaW5sb2NrIGNvbnRlbnRpb24pLCB0aGlzDQo+IHBhdGNoIGlu
Y3JlYXNlZCBwZXJmb3JtYW5jZSBzaWduaWZpY2FudGx5Lg0KPiANCj4gU2lnbmVkLW9mZi1i
eTogR2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1bmxhcEBjbG91ZC5jb20+DQoNClJldmlld2Vk
LWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+DQoNCg0KSnVlcmdlbg0KDQo=

--------------pjhagsKMRPuSNb0iNkCvQkvh
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------pjhagsKMRPuSNb0iNkCvQkvh--

--------------ixmco0aWLsc2A02yL7yXNJV1--

--------------s2SuwTSbGZbcZK615QeImcw6
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUMPwoFAwAAAAAACgkQsN6d1ii/Ey8+
Hwf+OCeCChT9S7MQUxl1ciY/UxlqQH8K7dghn2sumAwQsqMbUagxllcxUuPAxWYE7ifNuArCrfR6
QW+IuHqlAD0zq5eVNDAE1ReFFp0urTyQIlbGKXzFuddZnji7GSHkmn+EVj6xHs//PdEN/rg4Xmtb
zKwMI4dTIWlGRc6jJTLZbJt4EylE2MeHwT+IZ8Xv2nrHmRJGKypqERNZA2arPWTXF41ZWp63phMH
3Thl6LXbUI9y1YW5u4JM3X3EnkUuuXdkXROUOiREMFENGLOjfwwzlGd02tbCrxqnirmER0cZJ70q
hnIngiQ0LJKdEkxr6CpmJOY7e6giEGfy9DyM+Plk5w==
=IBLr
-----END PGP SIGNATURE-----

--------------s2SuwTSbGZbcZK615QeImcw6--


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 13:13:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 13:13:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606432.944333 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjJUE-0003qJ-9C; Thu, 21 Sep 2023 13:12:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606432.944333; Thu, 21 Sep 2023 13:12:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjJUE-0003qC-6P; Thu, 21 Sep 2023 13:12:54 +0000
Received: by outflank-mailman (input) for mailman id 606432;
 Thu, 21 Sep 2023 13:12:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=UECe=FF=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qjJUC-0003q6-8d
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 13:12:52 +0000
Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9123d2e2-5880-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 15:12:51 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id 82161338A8;
 Thu, 21 Sep 2023 13:12:50 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 39417134B0;
 Thu, 21 Sep 2023 13:12:50 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id pE9vDFJBDGWXMAAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 21 Sep 2023 13:12:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9123d2e2-5880-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695301970; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=F00ZY1GODIhjcfGRjVzuCF/yeKD99OkmjsAQO2nmlOE=;
	b=rPbwuMNZ0MOVmUCWkss3RnJzFbjb8XYXTUmtX3/mXv1r1zA2ZQs1ZzUt+dG4HNIjygyjoq
	3XddmQvEGt6i4KPHTMXVpaV8HHAV6Bu0XD+9wBmvNVbCrFQG+uoHZUEUDuQuRBYaN8Fn4b
	s71SL8RtwISno6G220B7JqqfKB147pc=
Message-ID: <9456c563-dfbb-4592-a4cb-c11b75f1c27f@suse.com>
Date: Thu, 21 Sep 2023 15:12:49 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 1/2] credit: Limit load balancing to once per
 millisecond
Content-Language: en-US
To: George Dunlap <george.dunlap@cloud.com>, xen-devel@lists.xenproject.org
Cc: Dario Faggioli <dfaggioli@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <20230921122352.2307574-1-george.dunlap@cloud.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------C1WAj2SR0Wa6Olm6Qrn07Qce"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------C1WAj2SR0Wa6Olm6Qrn07Qce
Content-Type: multipart/mixed; boundary="------------BQC5WHf1B8Aq6QntdLaEzxsx";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: George Dunlap <george.dunlap@cloud.com>, xen-devel@lists.xenproject.org
Cc: Dario Faggioli <dfaggioli@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
Message-ID: <9456c563-dfbb-4592-a4cb-c11b75f1c27f@suse.com>
Subject: Re: [PATCH v2 1/2] credit: Limit load balancing to once per
 millisecond
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
In-Reply-To: <20230921122352.2307574-1-george.dunlap@cloud.com>

--------------BQC5WHf1B8Aq6QntdLaEzxsx
Content-Type: multipart/mixed; boundary="------------mJVia0vtVuagv0eTU5ph3klU"

--------------mJVia0vtVuagv0eTU5ph3klU
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjEuMDkuMjMgMTQ6MjMsIEdlb3JnZSBEdW5sYXAgd3JvdGU6DQo+IFRoZSBjcmVkaXQg
c2NoZWR1bGVyIHRyaWVzIGFzIGhhcmQgYXMgaXQgY2FuIHRvIGVuc3VyZSB0aGF0IGl0IGFs
d2F5cw0KPiBydW5zIHNjaGVkdWxpbmcgdW5pdHMgd2l0aCBwb3NpdGl2ZSBjcmVkaXQgKFBS
SV9UU19VTkRFUikgYmVmb3JlDQo+IHJ1bm5pbmcgdGhvc2Ugd2l0aCBuZWdhdGl2ZSBjcmVk
aXQgKFBSSV9UU19PVkVSKS4gIElmIHRoZSBuZXh0DQo+IHJ1bm5hYmxlIHNjaGVkdWxpbmcg
dW5pdCBpcyBvZiBwcmlvcml0eSBPVkVSLCBpdCB3aWxsIGFsd2F5cyBydW4gdGhlDQo+IGxv
YWQgYmFsYW5jZXIsIHdoaWNoIHdpbGwgc2NvdXIgdGhlIHN5c3RlbSBsb29raW5nIGZvciBh
bm90aGVyDQo+IHNjaGVkdWxpbmcgdW5pdCBvZiB0aGUgVU5ERVIgcHJpb3JpdHkuDQo+IA0K
PiBVbmZvcnR1bmF0ZWx5LCBhcyB0aGUgbnVtYmVyIG9mIGNvcmVzIG9uIGEgc3lzdGVtIGhh
cyBncm93biwgdGhlIGNvc3QNCj4gb2YgdGhlIHdvcmstc3RlYWxpbmcgYWxnb3JpdGhtIGhh
cyBkcmFtYXRpY2FsbHkgaW5jcmVhc2VkOyBhIHJlY2VudA0KPiB0cmFjZSBvbiBhIHN5c3Rl
bSB3aXRoIDEyOCBjb3JlcyBzaG93ZWQgdGhpcyB0YWtpbmcgb3ZlciA1MA0KPiBtaWNyb3Nl
Y29uZHMuDQo+IA0KPiBBZGQgYSBwYXJhbWV0ZXIsIGxvYWRfYmFsYW5jZV9yYXRlbGltaXQs
IHRvIGxpbWl0IHRoZSBmcmVxdWVuY3kgb2YNCj4gbG9hZCBiYWxhbmNlIG9wZXJhdGlvbnMg
b24gYSBnaXZlbiBwY3B1LiAgRGVmYXVsdCB0aGlzIHRvIDENCj4gbWlsbGlzZWNvbmQuDQo+
IA0KPiBJbnZlcnQgdGhlIGxvYWQgYmFsYW5jaW5nIGNvbmRpdGlvbmFsIHRvIG1ha2UgaXQg
bW9yZSBjbGVhciwgYW5kIGxpbmUNCj4gdXAgbW9yZSBjbG9zZWx5IHdpdGggdGhlIGNvbW1l
bnQgYWJvdmUgaXQuDQo+IA0KPiBPdmVyYWxsIGl0IG1pZ2h0IGJlIGNsZWFuZXIgdG8gaGF2
ZSB0aGUgbGFzdF9sb2FkX2JhbGFuY2UgY2hlY2tpbmcNCj4gaGFwcGVuIGluc2lkZSBjc2No
ZWRfbG9hZF9iYWxhbmNlKCksIGJ1dCB0aGF0IHdvdWxkIHJlcXVpcmUgZWl0aGVyDQo+IHBh
c3NpbmcgYm90aCBub3cgYW5kIHNwYyBpbnRvIHRoZSBmdW5jdGlvbiwgb3IgbG9va2luZyB0
aGVtIHVwIGFnYWluOw0KPiBib3RoIG9mIHdoaWNoIHNlZW1lZCB0byBiZSB3b3JzZSB0aGFu
IHNpbXBseSBjaGVja2luZyBhbmQgc2V0dGluZyB0aGUNCj4gdmFsdWVzIGJlZm9yZSBjYWxs
aW5nIGl0Lg0KPiANCj4gT24gYSBzeXN0ZW0gd2l0aCBhIHZjcHU6cGNwdSByYXRpbyBvZiAy
OjEsIHJ1bm5pbmcgV2luZG93cyBndWVzdHMNCj4gKHdoaWNoIHdpbGwgZW5kIHVwIGNhbGxp
bmcgWUlFTEQgZHVyaW5nIHNwaW5sb2NrIGNvbnRlbnRpb24pLCB0aGlzDQo+IHBhdGNoIGlu
Y3JlYXNlZCBwZXJmb3JtYW5jZSBzaWduaWZpY2FudGx5Lg0KPiANCj4gU2lnbmVkLW9mZi1i
eTogR2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1bmxhcEBjbG91ZC5jb20+DQo+IC0tLQ0KPiBD
aGFuZ2VzIHNpbmNlIHYxOg0KPiAtIEZpeCBlZGl0aW5nIG1pc3Rha2UgaW4gY29tbWl0IG1l
c3NhZ2UNCj4gLSBJbXByb3ZlIGRvY3VtZW50YXRpb24NCj4gLSBnbG9iYWwgdmFyIGlzIF9f
cm9fYWZ0ZXJfaW5pdA0KPiAtIFJlbW92ZSBzeXNjdGwsIGFzIGl0J3Mgbm90IHVzZWQuICBE
ZWZpbmUgbWF4IHZhbHVlIGluIGNyZWRpdC5jLg0KPiAtIEZpeCBzb21lIHN0eWxlIGlzc3Vl
cw0KPiAtIE1vdmUgY29tbWVudCB0d2VhayB0byB0aGUgcmlnaHQgcGF0Y2gNCj4gLSBJbiB0
aGUgZXZlbnQgdGhhdCB0aGUgY29tbWFuZGxpbmUtcGFyYW1ldGVyIHZhbHVlIGlzIHRvbyBo
aWdoLCBjbGlwDQo+ICAgIHRvIHRoZSBtYXhpbXVtIHZhbHVlIHJhdGhlciB0aGFuIHNldHRp
bmcgdG8gdGhlIGRlZmF1bHQuDQo+IA0KPiBDQzogRGFyaW8gRmFnZ2lvbGkgPGRmYWdnaW9s
aUBzdXNlLmNvbT4NCj4gQ0M6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJp
eC5jb20+DQo+IENDOiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNpdHJpeC5jb20+
DQo+IENDOiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+DQo+IENDOiBKdWxpZW4g
R3JhbGwgPGp1bGllbkB4ZW4ub3JnPg0KPiBDQzogU3RlZmFubyBTdGFiZWxsaW5pIDxzc3Rh
YmVsbGluaUBrZXJuZWwub3JnPg0KPiBDQzogV2VpIExpdSA8d2xAeGVuLm9yZz4NCj4gLS0t
DQo+ICAgZG9jcy9taXNjL3hlbi1jb21tYW5kLWxpbmUucGFuZG9jIHwgIDggKysrKysrDQo+
ICAgeGVuL2NvbW1vbi9zY2hlZC9jcmVkaXQuYyAgICAgICAgIHwgNDcgKysrKysrKysrKysr
KysrKysrKysrKysrKy0tLS0tLQ0KPiAgIDIgZmlsZXMgY2hhbmdlZCwgNDYgaW5zZXJ0aW9u
cygrKSwgOSBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS9kb2NzL21pc2MveGVu
LWNvbW1hbmQtbGluZS5wYW5kb2MgYi9kb2NzL21pc2MveGVuLWNvbW1hbmQtbGluZS5wYW5k
b2MNCj4gaW5kZXggZjg4ZTZhNzBhZS4uOWMzYzcyYTdmOSAxMDA2NDQNCj4gLS0tIGEvZG9j
cy9taXNjL3hlbi1jb21tYW5kLWxpbmUucGFuZG9jDQo+ICsrKyBiL2RvY3MvbWlzYy94ZW4t
Y29tbWFuZC1saW5lLnBhbmRvYw0KPiBAQCAtMTg4NCw2ICsxODg0LDE0IEBAIEJ5IGRlZmF1
bHQsIFhlbiB3aWxsIHVzZSB0aGUgSU5WUENJRCBpbnN0cnVjdGlvbiBmb3IgVExCIG1hbmFn
ZW1lbnQgaWYNCj4gICBpdCBpcyBhdmFpbGFibGUuICBUaGlzIG9wdGlvbiBjYW4gYmUgdXNl
ZCB0byBjYXVzZSBYZW4gdG8gZmFsbCBiYWNrIHRvDQo+ICAgb2xkZXIgbWVjaGFuaXNtcywg
d2hpY2ggYXJlIGdlbmVyYWxseSBzbG93ZXIuDQo+ICAgDQo+ICsjIyMgbG9hZC1iYWxhbmNl
LXJhdGVsaW1pdA0KPiArPiBgPSA8aW50ZWdlcj5gDQo+ICsNCj4gK1RoZSBtaW5pbXVtIGlu
dGVydmFsIGJldHdlZW4gbG9hZCBiYWxhbmNpbmcgZXZlbnRzIG9uIGEgZ2l2ZW4gcGNwdSwg
aW4NCj4gK21pY3Jvc2Vjb25kcy4gIEEgdmFsdWUgb2YgJzAnIHdpbGwgZGlzYWJsZSByYXRl
IGxpbWl0aW5nLiAgTWF4aW11bQ0KPiArdmFsdWUgMSBzZWNvbmQuIEF0IHRoZSBtb21lbnQg
b25seSBjcmVkaXQgaG9ub3JzIHRoaXMgcGFyYW1ldGVyLg0KPiArRGVmYXVsdCAxbXMuDQo+
ICsNCj4gICAjIyMgbm9pcnFiYWxhbmNlICh4ODYpDQo+ICAgPiBgPSA8Ym9vbGVhbj5gDQo+
ICAgDQo+IGRpZmYgLS1naXQgYS94ZW4vY29tbW9uL3NjaGVkL2NyZWRpdC5jIGIveGVuL2Nv
bW1vbi9zY2hlZC9jcmVkaXQuYw0KPiBpbmRleCBmMmNkM2Q5ZGEzLi41YzA2ZjU5NmQyIDEw
MDY0NA0KPiAtLS0gYS94ZW4vY29tbW9uL3NjaGVkL2NyZWRpdC5jDQo+ICsrKyBiL3hlbi9j
b21tb24vc2NoZWQvY3JlZGl0LmMNCj4gQEAgLTUwLDYgKzUwLDEwIEBADQo+ICAgI2RlZmlu
ZSBDU0NIRURfVElDS1NfUEVSX1RTTElDRSAgICAgMw0KPiAgIC8qIERlZmF1bHQgdGltZXNs
aWNlOiAzMG1zICovDQo+ICAgI2RlZmluZSBDU0NIRURfREVGQVVMVF9UU0xJQ0VfTVMgICAg
MzANCj4gKy8qIERlZmF1bHQgbG9hZCBiYWxhbmNpbmcgcmF0ZWxpbWl0OiAxbXMgKi8NCj4g
KyNkZWZpbmUgQ1NDSEVEX0RFRkFVTFRfTE9BRF9CQUxBTkNFX1JBVEVMSU1JVF9VUyAxMDAw
DQo+ICsvKiBNYXggbG9hZCBiYWxhbmNpbmcgcmF0ZWxpbWl0OiAxcyAqLw0KPiArI2RlZmlu
ZSBDU0NIRURfTUFYX0xPQURfQkFMQU5DRV9SQVRFTElNSVRfVVMgICAgIDEwMDAwMDANCj4g
ICAjZGVmaW5lIENTQ0hFRF9DUkVESVRTX1BFUl9NU0VDICAgICAxMA0KPiAgIC8qIE5ldmVy
IHNldCBhIHRpbWVyIHNob3J0ZXIgdGhhbiB0aGlzIHZhbHVlLiAqLw0KPiAgICNkZWZpbmUg
Q1NDSEVEX01JTl9USU1FUiAgICAgICAgICAgIFhFTl9TWVNDVExfU0NIRURfUkFURUxJTUlU
X01JTg0KPiBAQCAtMTUzLDYgKzE1Nyw3IEBAIHN0cnVjdCBjc2NoZWRfcGNwdSB7DQo+ICAg
DQo+ICAgICAgIHVuc2lnbmVkIGludCBpZGxlX2JpYXM7DQo+ICAgICAgIHVuc2lnbmVkIGlu
dCBucl9ydW5uYWJsZTsNCj4gKyAgICBzX3RpbWVfdCBsYXN0X2xvYWRfYmFsYW5jZTsNCj4g
ICANCj4gICAgICAgdW5zaWduZWQgaW50IHRpY2s7DQo+ICAgICAgIHN0cnVjdCB0aW1lciB0
aWNrZXI7DQo+IEBAIC0yMTgsNyArMjIzLDcgQEAgc3RydWN0IGNzY2hlZF9wcml2YXRlIHsN
Cj4gICANCj4gICAgICAgLyogUGVyaW9kIG9mIG1hc3RlciBhbmQgdGljayBpbiBtaWxsaXNl
Y29uZHMgKi8NCj4gICAgICAgdW5zaWduZWQgaW50IHRpY2tfcGVyaW9kX3VzLCB0aWNrc19w
ZXJfdHNsaWNlOw0KPiAtICAgIHNfdGltZV90IHJhdGVsaW1pdCwgdHNsaWNlLCB1bml0X21p
Z3JfZGVsYXk7DQo+ICsgICAgc190aW1lX3QgcmF0ZWxpbWl0LCB0c2xpY2UsIHVuaXRfbWln
cl9kZWxheSwgbG9hZF9iYWxhbmNlX3JhdGVsaW1pdDsNCj4gICANCj4gICAgICAgc3RydWN0
IGxpc3RfaGVhZCBhY3RpdmVfc2RvbTsNCj4gICAgICAgdWludDMyX3Qgd2VpZ2h0Ow0KPiBA
QCAtNjEyLDYgKzYxNyw4IEBAIGluaXRfcGRhdGEoc3RydWN0IGNzY2hlZF9wcml2YXRlICpw
cnYsIHN0cnVjdCBjc2NoZWRfcGNwdSAqc3BjLCBpbnQgY3B1KQ0KPiAgICAgICBCVUdfT04o
IWlzX2lkbGVfdW5pdChjdXJyX29uX2NwdShjcHUpKSk7DQo+ICAgICAgIGNwdW1hc2tfc2V0
X2NwdShjcHUsIHBydi0+aWRsZXJzKTsNCj4gICAgICAgc3BjLT5ucl9ydW5uYWJsZSA9IDA7
DQo+ICsNCj4gKyAgICBzcGMtPmxhc3RfbG9hZF9iYWxhbmNlID0gTk9XKCk7DQo+ICAgfQ0K
PiAgIA0KPiAgIHN0YXRpYyB2b2lkIGNmX2NoZWNrDQo+IEBAIC0xNjc2LDkgKzE2ODMsMTcg
QEAgY3NjaGVkX3J1bnFfc3RlYWwoaW50IHBlZXJfY3B1LCBpbnQgY3B1LCBpbnQgcHJpLCBp
bnQgYmFsYW5jZV9zdGVwKQ0KPiAgICAgICByZXR1cm4gTlVMTDsNCj4gICB9DQo+ICAgDQo+
ICsvKg0KPiArICogTWluaW11bSBkZWxheSwgaW4gbWljcm9zZWNvbmRzLCBiZXR3ZWVuIGxv
YWQgYmFsYW5jZSBvcGVyYXRpb25zLg0KPiArICogVGhpcyBwcmV2ZW50cyBzcGVuZGluZyB0
b28gbXVjaCB0aW1lIGRvaW5nIGxvYWQgYmFsYW5jaW5nLCBwYXJ0aWN1bGFybHkNCj4gKyAq
IHdoZW4gdGhlIHN5c3RlbSBoYXMgYSBoaWdoIG51bWJlciBvZiBZSUVMRHMgZHVlIHRvIHNw
aW5sb2NrIHByaW9yaXR5IGludmVyc2lvbi4NCj4gKyAqLw0KPiArc3RhdGljIHVuc2lnbmVk
IGludCBfX3JvX2FmdGVyX2luaXQgbG9hZF9iYWxhbmNlX3JhdGVsaW1pdF91cyA9IENTQ0hF
RF9ERUZBVUxUX0xPQURfQkFMQU5DRV9SQVRFTElNSVRfVVM7DQo+ICtpbnRlZ2VyX3BhcmFt
KCJsb2FkLWJhbGFuY2UtcmF0ZWxpbWl0IiwgbG9hZF9iYWxhbmNlX3JhdGVsaW1pdF91cyk7
DQo+ICsNCj4gICBzdGF0aWMgc3RydWN0IGNzY2hlZF91bml0ICoNCj4gICBjc2NoZWRfbG9h
ZF9iYWxhbmNlKHN0cnVjdCBjc2NoZWRfcHJpdmF0ZSAqcHJ2LCBpbnQgY3B1LA0KPiAtICAg
IHN0cnVjdCBjc2NoZWRfdW5pdCAqc25leHQsIGJvb2wgKnN0b2xlbikNCj4gKyAgICAgICAg
ICAgICAgICAgICAgc3RydWN0IGNzY2hlZF91bml0ICpzbmV4dCwgYm9vbCAqc3RvbGVuKQ0K
PiAgIHsNCj4gICAgICAgY29uc3Qgc3RydWN0IGNwdXBvb2wgKmMgPSBnZXRfc2NoZWRfcmVz
KGNwdSktPmNwdXBvb2w7DQo+ICAgICAgIHN0cnVjdCBjc2NoZWRfdW5pdCAqc3BlZXI7DQo+
IEBAIC0xOTU4LDE1ICsxOTczLDE5IEBAIHN0YXRpYyB2b2lkIGNmX2NoZWNrIGNzY2hlZF9z
Y2hlZHVsZSgNCj4gICAgICAgICAgIC8qDQo+ICAgICAgICAgICAgKiBTTVAgTG9hZCBiYWxh
bmNlOg0KPiAgICAgICAgICAgICoNCj4gLSAgICAgICAgICogSWYgdGhlIG5leHQgaGlnaGVz
dCBwcmlvcml0eSBsb2NhbCBydW5uYWJsZSBVTklUIGhhcyBhbHJlYWR5IGVhdGVuDQo+IC0g
ICAgICAgICAqIHRocm91Z2ggaXRzIGNyZWRpdHMsIGxvb2sgb24gb3RoZXIgUENQVXMgdG8g
c2VlIGlmIHdlIGhhdmUgbW9yZQ0KPiAtICAgICAgICAgKiB1cmdlbnQgd29yay4uLiBJZiBu
b3QsIGNzY2hlZF9sb2FkX2JhbGFuY2UoKSB3aWxsIHJldHVybiBzbmV4dCwgYnV0DQo+IC0g
ICAgICAgICAqIGFscmVhZHkgcmVtb3ZlZCBmcm9tIHRoZSBydW5xLg0KPiArICAgICAgICAg
KiBJZiB0aGUgbmV4dCBoaWdoZXN0IHByaW9yaXR5IGxvY2FsIHJ1bm5hYmxlIFVOSVQgaGFz
DQo+ICsgICAgICAgICAqIGFscmVhZHkgZWF0ZW4gdGhyb3VnaCBpdHMgY3JlZGl0cyAoYW5k
IHdlJ3JlIGJlbG93IHRoZQ0KPiArICAgICAgICAgKiBiYWxhbmNpbmcgcmF0ZWxpbWl0KSwg
bG9vayBvbiBvdGhlciBQQ1BVcyB0byBzZWUgaWYgd2UgaGF2ZQ0KPiArICAgICAgICAgKiBt
b3JlIHVyZ2VudCB3b3JrLi4uIElmIHdlIGRvbid0LCBjc2NoZWRfbG9hZF9iYWxhbmNlKCkg
d2lsbA0KPiArICAgICAgICAgKiByZXR1cm4gc25leHQsIGJ1dCBhbHJlYWR5IHJlbW92ZWQg
ZnJvbSB0aGUgcnVucS4NCj4gICAgICAgICAgICAqLw0KPiAtICAgICAgICBpZiAoIHNuZXh0
LT5wcmkgPiBDU0NIRURfUFJJX1RTX09WRVIgKQ0KPiAtICAgICAgICAgICAgX19ydW5xX3Jl
bW92ZShzbmV4dCk7DQo+IC0gICAgICAgIGVsc2UNCj4gKyAgICAgICAgaWYgKCBzbmV4dC0+
cHJpIDw9IENTQ0hFRF9QUklfVFNfT1ZFUg0KPiArICAgICAgICAgICAgICYmIG5vdyAtIHNw
Yy0+bGFzdF9sb2FkX2JhbGFuY2UgPiBwcnYtPmxvYWRfYmFsYW5jZV9yYXRlbGltaXQpIHsN
Cg0KXiBKdXN0IGZvdW5kIGEgc3R5bGUgaXNzdWUgKGFmdGVyIEFuZHJldyBwb2ludGluZyBv
dXQgdGhlIG9uZXMgaW4gcGF0Y2ggMikuDQoNCk15IFItYiBzdGFuZHMgd2l0aCB0aGF0IGZp
eGVkLg0KDQoNCkp1ZXJnZW4NCg==
--------------mJVia0vtVuagv0eTU5ph3klU
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------mJVia0vtVuagv0eTU5ph3klU--

--------------BQC5WHf1B8Aq6QntdLaEzxsx--

--------------C1WAj2SR0Wa6Olm6Qrn07Qce
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUMQVEFAwAAAAAACgkQsN6d1ii/Ey/6
6gf/UNpwH3hhxKt0dwScyZYObQ1Cpv1SIlM9DBekr8BMO/7UG0ABjwgqIVAYuRdkxOm8otHFdbEi
FrKqveu8LQDahbkocC1iVcD1c6tacMy94aovc8W6FCh2xSAjZ8G5LsLqNtVPbNnsAmaJ/YmZgG5B
3cJ0ti+eroF0CrBJXI3rF1boZ4aj4ENHZgLhVQNHCuAot8zbJeg0JniX8TkDLDVFXWQTbza1kYQT
rmm72Zg15QD7GJgfYUU6NDdyQMKu3upaJ9VmfRk0ygpmCwqGdd7MQKz5pXBt9GJSZXvNkdFdmjao
FddXpm8HWTw0jkXNOmO3yupiaZPvIcoMeBqt94SKAQ==
=YRSV
-----END PGP SIGNATURE-----

--------------C1WAj2SR0Wa6Olm6Qrn07Qce--


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 13:19:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 13:19:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606439.944343 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjJa2-0006ao-1p; Thu, 21 Sep 2023 13:18:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606439.944343; Thu, 21 Sep 2023 13:18:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjJa1-0006ah-V7; Thu, 21 Sep 2023 13:18:53 +0000
Received: by outflank-mailman (input) for mailman id 606439;
 Thu, 21 Sep 2023 13:18:52 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wI4U=FF=citrix.com=prvs=62171ef32=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qjJZz-0006ab-Kp
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 13:18:52 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 649c823d-5881-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 15:18:47 +0200 (CEST)
Received: from mail-bn1nam02lp2048.outbound.protection.outlook.com (HELO
 NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.48])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 21 Sep 2023 09:18:25 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH8PR03MB7306.namprd03.prod.outlook.com (2603:10b6:510:252::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Thu, 21 Sep
 2023 13:18:23 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 13:18:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 649c823d-5881-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695302327;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=vguYYU7iJIBUSBpc+xenvWUVt761GadOUHBefiQpPxo=;
  b=FQ+RSaYXPwKjckJ3omzTLRR5cpEKauXkDE5k4uwwOcMGzx8PiTE+qOJS
   VqLcaDRVlbGqWXhu6PSShH/6wH3+3Nu+OBsA2iXJAal7H0rnJQerJnwdA
   egCen00ALyt+7nJwl6uFz0yzEwEdCXl7iYrEHWm3E24dJLbgN1SiKB6n9
   0=;
X-CSE-ConnectionGUID: UZiQYvX4QsicCTf/yuueqQ==
X-CSE-MsgGUID: 71llPG3nTAS8N2vYBS7F7A==
X-IronPort-RemoteIP: 104.47.51.48
X-IronPort-MID: 122028095
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:0QNR8KDnUNAKcRVW//Liw5YqxClBgxIJ4kV8jS/XYbTApDIq12QPy
 TQbCmrQaP6PY2LzKt8ka42+oBhSsJWEzoAyQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4GJC5wRkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwx9R2OFBQx
 aAhMzEGRSyNwPOr3b+ic7w57igjBJGD0II3nFhFlWucJ9B/BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI/OxrswA/zyQouFTpGMDSddGQA91cg26Tp
 37c/nS/CRYfXDCa4WPfqCr21reewEsXXqpNTbm8ztExhmG6/Tw1UgMnf2Dkj6aQ3xvWt9V3b
 hZ8FjAVhZY18EunX9zsRSqSqXSPvgMfc9dIGuh84waIooLE7gDcCmUaQzppbN09qNRwVTEsz
 kWOnd7iGXpoqrL9YWmB+6idty/0OSkRIWIIfyYCQSMM5tWlq4Y25jroSttgC6ezgsfCMDf82
 S2RrCM+irMQiuYGz6y+u1vAhlqRSoPhSwc04kDdWDuj5wYhPoq9PdT0uR7c8OpKK5ufQh+Zp
 n8YlsOC7ecIS5aQiCiKR+ZLF7asjxqYDADhbZdUN8FJ31yQF7SLJtk4DO1WTKuxDvs5RA==
IronPort-HdrOrdr: A9a23:naSgn6FA1rM7+vQLpLqFgpLXdLJyesId70hD6qkvc3Fom52j/f
 xGws5x6faVslkssb8b6LW90Y27MAvhHP9OkPAs1NKZMDUO11HJEGgP1/qA/9SkIVyEygc/79
 YdT0EdMqyWMbESt6+TjmiF+pQbsb+6GciT9JrjJhxWPGVXgs9bnmVE4lHxKDwNeOAKP+tPKL
 Osou584xawc3Ueacq2QlEDQuj4vtXO0L72fBIcABYjyQ+WyRel8qTzHRS01goXF2on+8ZozU
 H11yjCoomzufCyzRHRk0fV8pRtgdPkjvdTGcCWjcARCzP0ziKlfp5oVbGutC085Muv9FEput
 /RpApIBbU611rhOkWO5Tf90Qjp1zgjr1fk1F+jmHPm5ej0XigzBcZtjZ9QNkKx0TtogPhMlI
 Zwm06JvZteCh3N2Az7+tjzThlv0m65u2Arn+I/h2FWFaEedLhSh4oC+149KuZ3IAvKrKQcVM
 V+BsDV4/hbNXuccnDip2FqhOehW3widy32MHQqi4iw6Xx7jXp5x0wXyIg0hXEb7q8wTJFC+q
 DtLrlovKsmdL5YUYtNQMM6BeenAG3ERhzBdEiIJ078Ka0BM3XR77bq/bQO4v2wcpBg9up/pH
 34aiIYiYcOQTOvNSXXt6c7sSwlAV/NEAgF8/suqaSQ4dbHNfjW2S7qciFcryLvmYRbPiThYY
 fDBHtnOY6dEYLQI/c24+TfYegmFZBMarxghv8LH3Szn+nsFqrG8sTmTde7HsucLd9jYBK0Pk
 c+
X-Talos-CUID: 9a23:eRPR4WGUUL7IDIZ6qmJaxk8tK94VLkTGzXz7H0H/GHt0RaSsHAo=
X-Talos-MUID: 9a23:UhwFSAn5Jxf2hLkTRPC2dno9bcNs24v1DnwkqsUg4de1HxcvFWi02WE=
X-IronPort-AV: E=Sophos;i="6.03,165,1694750400"; 
   d="scan'208";a="122028095"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=WbFh4PCcDwxkOKOxKGL9HRMnkqOLWYG0CoiHk5lhWU1xEaSJkhZq5o8cT/D5sHp+wdYYs3KozfUak0chSKpiU7qbxdgqr7LcoySSpQWCDtprPuR/WPdhlSWe9QnT+m737vWLx0baawSG+iK+jMzmSCjgs9u8XIPGedSZW/mgbNwvrUyXuecxkBQ/47NlM9ITJedgD8QJtb1A8FmHiTlNnKPnn1GEnalcsM2AnWZ6iNGNItF1RPf+cO7BcW+gigcDdu8iMKkTQynMTqh3UhcvebznA32wAtoVKEiN9pArTmjKynSOYTR8gbnwHZIZ95S3qL5za3ZrHjrJBUriedwbnw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iTvr8ivJCkVHFmvpdahbV+Z3n6GpQtE+mw6m1OxmvXU=;
 b=KtyfDSCarsqimhhdbMG6x3bLOZgKPF+3kT+b19hkRIRG5gmY5R5pPqv+CUCJY9UfHYhKgiY7OzTPeVPnIs96EtO/ORorW4o721obzzK5KwFZFa2Xf1Uz0MeH3CRszhYhrlQT5jZR1LT9613oK1H4qvDGI8YEM7sGtgQ2apmu5UEOcUpLBvMwBFWC4EC91EVq8G0oWi0QPeHSPYg7iwD9ivEWtGujIgcOKbD5nyaTBhy3JYmnoZwwfnfWVenTRBEle6Jii+p5ps+QZkd3ZlGfJPPu8HEbmljoGAxoA0rBzYD8H6nhBiHVVItac9YC77Ut5joNvlsLeykxLeB8qc9Y5Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iTvr8ivJCkVHFmvpdahbV+Z3n6GpQtE+mw6m1OxmvXU=;
 b=xmEOojKarZ8ynC/o3HQRWPcoMa6+jGNjyxY2EbsirLr6YxCYc2q4aTkOPIuepxIqqb7UvkcNRxdDvPgbONCtez8w5x0OohPGiwm56Uu5QBFXAyFVAhuJEwbzM3fNonQaxYB6yiILKfa9kTwGTBksI3Jbb5KfK9VHIkWi144jZu4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 21 Sep 2023 15:18:15 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>
Subject: Re: [PATCH v9 10/16] vpci/header: emulate PCI_COMMAND register for
 guests
Message-ID: <ZQxCl7rjAgJb2eDz@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-11-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20230829231912.4091958-11-volodymyr_babchuk@epam.com>
X-ClientProxiedBy: PA7P264CA0321.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:102:395::24) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH8PR03MB7306:EE_
X-MS-Office365-Filtering-Correlation-Id: 448a6380-acb7-419c-b5a4-08dbbaa53a84
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wXGPnZYICpZTv05Sfn4hErZkwV6/gmfQfQsAJlHMDGj+IdNyNwcO+KElZN/QkDzsfQm+zggvVziegJ8fMeo5b7CZ4nVKWrRQjd8hCQ6n3/y0bpBS9wXOq78VxvJGdkWjX+1bWbFTPABVHtShB3VO6jSZqv9oQKzjxSaAiim5EP0uQYSlwvASCjklwKwcuMJKBeUKYAm6QmaL8wowHfeICjmxdUQjC8Oxta+2sTDPCVrqwktsoCJOyGIPCx/Q4nV6GqNUlE23NjXaf5j4iJ178GNQFiNDpTBlLOdkJ1BrfuHrfXB1Xky2yP6kRPUHXGQUTsJhneCRB4TRqG8aYfnASCCQMGmjteGMQy+zKwB3BIh/esynpETwv7Osjva+qY1XcCofPnVDTyeEfqNZUnigPTBh7yx69isrCtS9Sp/mKja0/fEglch9bWOtpTDeTvQsXEc33R1iXH1pYkFOSj4JQx0IZm+1K6MitTsm9IAEsmATcySoOmfX+nB1Kh4DWR1JLqtjkXzqjKtBmaXffR1/E0W2LIOy0Bv0TZL4glX3PWhNdIxSCkCMe6bdCFYmAag3
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(39860400002)(396003)(376002)(366004)(346002)(136003)(186009)(451199024)(1800799009)(86362001)(478600001)(38100700002)(82960400001)(6512007)(6666004)(6506007)(6486002)(9686003)(83380400001)(26005)(85182001)(41300700001)(316002)(6916009)(54906003)(66946007)(66556008)(66476007)(4326008)(2906002)(8676002)(8936002)(33716001)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VGd5cDgrcE1pczR3ZEJFVG1vVG5xMUZna2Z1cll5cTN5eWMrY1ZrVG56S29X?=
 =?utf-8?B?bnl2dUt4TUoyUURsbUtJbVVnVUJ0U0Rsa3RzRHNiTS9yZi9XSkNPU2ZUWW9B?=
 =?utf-8?B?c3c0NWlITGVRR1A1dmlhbXM4Qms4S0NWREI4MWtqNUVBQTN1TmxwSWFWazM0?=
 =?utf-8?B?YzA5aEpPT21GT3plMmVuSWpzVlpCb2ZxTy9YZWp0TUc5S1lNelVpTHlBYVM2?=
 =?utf-8?B?S2hWV3c5NEEyMFd0bDhrUHlPL1VkM2tndGY2S3dGd0hGbERYS05xbUQrZEV1?=
 =?utf-8?B?QklJUUQyODcrdmVYQmgzaW1BSHdSL3U5dUNCVGlScUJONTkrc3haMGtxTElW?=
 =?utf-8?B?bFZZYnB3MWZtdFNCRUlIL2NTaUpuRGc1YytBVjFxK0xFWWtqVDVyM3d1Tk5a?=
 =?utf-8?B?SXVCY3BpSEdaUHZPTi9jL2Vmb09xbGhTNWRQbFN1NFkrNm9BUXE5QXY5OWVX?=
 =?utf-8?B?ZTRPd3ZFRk9GNzBzelNLR2h4MWNXSHhHRmZ3bDZTOUpVZ2RnZ3RiMU41THVZ?=
 =?utf-8?B?OEpOd2EwS0dpNmR4SEtDeGtEdjJ6WnNDL1YzcGw4MGQ0U0FQYjQ5NHdoalZW?=
 =?utf-8?B?ZzFNTWVod0dUUzVpM2Z0a0ZZN3BsMWs1dUY0V0FwOE80dHVvQjNzUWVvL3B1?=
 =?utf-8?B?TWV3RE9aSnl6WjQ2dUdPeWN6d0hYcjdrQ0lwbjAxOWMzVTZRK2NEcE5teXd5?=
 =?utf-8?B?YnpSSEJ1Q3dvUEFBelE0ZzlHR0EzNk40dGJEeWh3V0pXYU1PWE15NnAyNHFV?=
 =?utf-8?B?YVAxLzg2bUh4K09mV2orMjVRREhkUzA0SnB6S1c1Q0pyK2tiSStTb05SOGFa?=
 =?utf-8?B?Z1VLZ0QyUlZGV29QR1JvZzRxM24zMGtQam5NUUNxNlFUaDZVYUpBNjMzbFl3?=
 =?utf-8?B?S2kxVmJ6bkc0emJJSk5hcXF2Z3BWa2pyMTRmb3dqTUs1QUpUYVpVNmZZcEtr?=
 =?utf-8?B?dUVSR1FwaUZHeVY5REd6enJXNDk4OXlub3Q2enVPdHA1SFF6OXk3VitROGc2?=
 =?utf-8?B?ZmYxa2NjMk5PbXlmL05tYi81UHdKc1R0WWtUL3pLRGJ2ZUZWaEdEODBtMWRE?=
 =?utf-8?B?WjJTRDExNUE2QlNvQURRbUpkOTFjYUs5bi90UnNMc0RydGR5QVJrYnQ1UnlL?=
 =?utf-8?B?NHVCbVlkRCtUdW82Y0FWek45TzYyYzZKVHJDRGVTa3JDVGVRTU52R3diWUt5?=
 =?utf-8?B?UWN6bys4T1JFaEc0Zk9KbUhsUWt4NXg4SGVKMklBYll1MlpFMkdDVEFpTFdo?=
 =?utf-8?B?SFQ2Mm84TFZNTGZSNkxQVjE1azZ0Zm82Wm1PU3Y4WkZFOVlTbExqcjlJLy9Z?=
 =?utf-8?B?UExicHdkY3UzTksxTU1yQ1VURFRBL2VhU0U1Tmg4djV6dGtEek44SUxNb1ZM?=
 =?utf-8?B?OGwybEY5MTc2OEJqM1d0M21zbzdCNUJKcjNXS1JUeFRJVWJ1c0VRd25zdDlY?=
 =?utf-8?B?R2MyUEU0bEtGakRTbGIyd2Y4bVNtNHVCZ2pRbElYV0djYTkvQ29OTDcyeGU0?=
 =?utf-8?B?ZktFdE5LakRpdEc2Q2tGMW82L296YXlnclpGd3c0ai9Md3ZRQXA1Q2Rqc29R?=
 =?utf-8?B?c3I1d21WVWU1U2xxQ3MyZkJXdVo3RFgvdHZ2dDhicE43SUJGZjB6OVZpNzE0?=
 =?utf-8?B?bjgvTlc2eG1zeE9NSmsrd0R2MGRqbUxueWpOaTFtdElPbS8yaStxVjVxWklR?=
 =?utf-8?B?N1hUdzU1VnVZOEIxdFk4djRQRGZZNlBpZTZuNEdrTDYrczdnN0hIVVBBUzFa?=
 =?utf-8?B?QXlVMjdidHJJUEgycEdicDNlZk4yMkwyUEFEc0xhVm54cVo4SEdXYUdxcStj?=
 =?utf-8?B?NXRzenhkVDZodTNBT3puajFxMXBmYTErTENZWUpDYnNnTzJJWTR6VkFhKzdr?=
 =?utf-8?B?TnRTNTkvQUprcXBveXFtUU1EVnBZVkFYZnVsc2UrMGhmb3M4YUcwQVhMcCs5?=
 =?utf-8?B?QjNqd2tIckRqOC93ZkhHcGxFelFpK1lPZTROM3Vzc1U3WEE0OTFTNUlXZ0xr?=
 =?utf-8?B?eE1YTFdjaTc1YnpxUlhkNm82cE1OUFNTNHM1UEhRNGZyTWRXUUtpSFNxdk9J?=
 =?utf-8?B?Q1A2SmtqVUQ0ekpqZVpjUUNrTEE2RUVmRElINHBJSHJmSlhKRVpSR1FUb2xC?=
 =?utf-8?Q?nKLtEn4W+ZgEy5hbUQP3RpbbN?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	IJb99BiG+ygnEMdVesW8u2fV8l+2to1BHlyreWF94PYsfhoyPzf40LBBS2Oyvw2ee/zKTUDSZEQl29SBg1UXSLZy+oxzo9ijnaQxmrGedbL0/wwqXD/rhn7rpbxjohcJcfR7R9hwlBC9zUHunvSYVryuCakpfz2Y1+fiLFoGLZhtHYl4YJwPFgDdSKHYYQJoVuBOHScc/rcYyc82SwW/TvhNbw8JivsTgTWtUEHlw+64t+ogQyrwOxk7ZWM7VuXjvnKM/Q8OXb2zSQjusgkaCrGGJ5wK2+uH25nt77+Enlrq8kLyx9g5NXDvMJjxbitwI1lVysmJZmiqbuH6Nd+I96sEkCRYNcpxNiTAaCPnX5cZN3CpJCZFo3qjSNV1UXpSqWQptpIGVE++x3dtZpKGB6GazrkQYsR7gpPm29LcQ55EFzM6PFwPPJmBPbAgyHXUgcRy59G7NXlGtchhkRHBjgya1WFFf6Z+huv2eeGgsBxS2czpUcwpHAMqA36U1v2wAxkosGjdYoFTuJXgZCFZ1O2ivmBM4/vu3+OZXEwaG4xUnbVjCHdZp4EF5XRIoq+oS2i6xUKakhbpnzxyDI3uAlrcGdO8zI7TVNppl3X8DHGZkSjZZnamEapPLrMEDog7i+5OCF/kEroSv4gFskaNEhPLFzMSGkPbbSkINLGnVxt2SEQSiHuQPSFJb1ezGICeXZePJG9lEoZwFlLBCfCMnjA3Q9kejGJBCOfiEb91618UW7G2GU0icXO40SQUGoD8DHQ7odYoNwxOCzsaBrW7T4RSCG/wWgYyt3zEd1KGLVviuct/3F+CEhFam+F/EA32
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 448a6380-acb7-419c-b5a4-08dbbaa53a84
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 13:18:22.0732
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 3ean6tlSfSm7P6wXqvEHKPdqqVorOTenu+G4GBV7ddL5V45sSnKn4Za/z1kXfIhxNrsavE0MXGb1P2CK/Cl+gQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR03MB7306

On Tue, Aug 29, 2023 at 11:19:44PM +0000, Volodymyr Babchuk wrote:
> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> 
> Xen and/or Dom0 may have put values in PCI_COMMAND which they expect
> to remain unaltered. PCI_COMMAND_SERR bit is a good example: while the
> guest's view of this will want to be zero initially, the host having set
> it to 1 may not easily be overwritten with 0, or else we'd effectively
> imply giving the guest control of the bit. Thus, PCI_COMMAND register needs
> proper emulation in order to honor host's settings.
> 
> According to "PCI LOCAL BUS SPECIFICATION, REV. 3.0", section "6.2.2
> Device Control" the reset state of the command register is typically 0,
> so when assigning a PCI device use 0 as the initial state for the guest's view
> of the command register.
> 
> Here is the full list of command register bits with notes about
> emulation:
> 
> PCI_COMMAND_IO - Allow guest to control it.
> PCI_COMMAND_MEMORY - Already handled.
> PCI_COMMAND_MASTER - Allow guest to control it.
> PCI_COMMAND_SPECIAL - Guest can generate special cycles only if it has
> access to host bridge that supports software generation of special
> cycles. In our case guest has no access to host bridges at all. Value
> after reset is 0.
> PCI_COMMAND_INVALIDATE - Allows "Memory Write and Invalidate" commands
> to be generated. It requires additional configuration via Cacheline
> Size register. We are not emulating this register right now and we
> can't expect guest to properly configure it.
> PCI_COMMAND_VGA_PALETTE - Enable VGA palette snooping. This bit is set
> by firmware and we want to leave it as is.
> PCI_COMMAND_PARITY - Controls how device response to parity
> errors. We want this bit to be set by a hardware domain.
> PCI_COMMAND_WAIT - Reserved. Should be 0.
> PCI_COMMAND_SERR - Controls if device can assert SERR.
> The same as for COMMAND_PARITY.
> PCI_COMMAND_FAST_BACK - Optional bit that allows fast back-to-back
> transactions. It is configured by firmware, so we don't want guest to
> control it.
> PCI_COMMAND_INTX_DISABLE - Disables INTx signals. If MSI(X) is
> enabled, device is prohibited from asserting INTx. Value after reset
> is 0. Guest can control it freely.

I'm kind of confused by the text above, does "Guest can control it
freely" imply that the guest is able to modify the bit in the device
command register vs the emulated view that we provide?  If so
INTX_DISABLE should not be allowed direct guest modification.

I'm thinking that we might want to allow guest access to the first 3
bits only, while the rest of the values won't be propagated to
hardware, iow: guest will get a fake view of them.

Have you checked with QEMU how are those bits handled?  That's our
current passthrough reference implementation, and we should aim to
handle those similarly in vPCI.

> 
> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> ---
> Since v9:
> - Reworked guest_cmd_read
> - Added handling for more bits
> Since v6:
> - fold guest's logic into cmd_write
> - implement cmd_read, so we can report emulated INTx state to guests
> - introduce header->guest_cmd to hold the emulated state of the
>   PCI_COMMAND register for guests
> Since v5:
> - add additional check for MSI-X enabled while altering INTX bit
> - make sure INTx disabled while guests enable MSI/MSI-X
> Since v3:
> - gate more code on CONFIG_HAS_MSI
> - removed logic for the case when MSI/MSI-X not enabled
> ---
>  xen/drivers/vpci/header.c | 54 ++++++++++++++++++++++++++++++++++++---
>  xen/drivers/vpci/msi.c    | 10 ++++++++
>  xen/drivers/vpci/msix.c   |  4 +++
>  xen/include/xen/vpci.h    |  3 +++
>  4 files changed, 67 insertions(+), 4 deletions(-)
> 
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index 1e82217200..e351db4620 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -502,14 +502,37 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>      return 0;
>  }
>  
> +/* TODO: Add proper emulation for all bits of the command register. */
>  static void cf_check cmd_write(
>      const struct pci_dev *pdev, unsigned int reg, uint32_t cmd, void *data)
>  {
>      struct vpci_header *header = data;
>  
> +    if ( !is_hardware_domain(pdev->domain) )
> +    {
> +        if ( IS_ENABLED(CONFIG_HAS_PCI_MSI) )
> +        {
> +            /* Tell guest that device does not support this */
> +            cmd &= ~PCI_COMMAND_FAST_BACK;
> +        }
> +
> +        header->guest_cmd = cmd;
> +
> +        if ( IS_ENABLED(CONFIG_HAS_PCI_MSI) )
> +        {
> +            /* Do not touch INVALIDATE, PARITY and SERR */
> +            const uint16_t excluded = PCI_COMMAND_INVALIDATE |
> +                PCI_COMMAND_PARITY | PCI_COMMAND_SERR;
> +
> +            cmd &= ~excluded;
> +            cmd |= pci_conf_read16(pdev->sbdf, reg) & excluded;
> +        }

I'm not following why allowing guest setting of those bits is
conditional on HAS_PCI_MSI being build time enabled.

Isn't it equally good or bad to let the guest play with certain bits
regardless of Xen build time configuration?

As said above, I would look at QEMU and see how bits are handled
there.

> +    }
> +
>      /*
> -     * Let Dom0 play with all the bits directly except for the memory
> -     * decoding one.
> +     * Let guest play with all the bits directly except for the memory
> +     * decoding one. Bits that are not allowed for DomU are already
> +     * handled above.
>       */
>      if ( header->bars_mapped != !!(cmd & PCI_COMMAND_MEMORY) )
>          /*
> @@ -523,6 +546,14 @@ static void cf_check cmd_write(
>          pci_conf_write16(pdev->sbdf, reg, cmd);
>  }
>  
> +static uint32_t guest_cmd_read(const struct pci_dev *pdev, unsigned int reg,
> +                               void *data)
> +{
> +    const struct vpci_header *header = data;
> +
> +    return header->guest_cmd;
> +}
> +
>  static void cf_check bar_write(
>      const struct pci_dev *pdev, unsigned int reg, uint32_t val, void *data)
>  {
> @@ -732,8 +763,12 @@ static int cf_check init_bars(struct pci_dev *pdev)
>      }
>  
>      /* Setup a handler for the command register. */
> -    rc = vpci_add_register(pdev->vpci, vpci_hw_read16, cmd_write, PCI_COMMAND,
> -                           2, header);
> +    if ( is_hwdom )
> +        rc = vpci_add_register(pdev->vpci, vpci_hw_read16, cmd_write, PCI_COMMAND,
> +                               2, header);
> +    else
> +        rc = vpci_add_register(pdev->vpci, guest_cmd_read, cmd_write, PCI_COMMAND,
> +                               2, header);

You have used the ternary operator in other places, I would recommend
to also do it here to avoid line duplication.

>      if ( rc )
>          return rc;
>  
> @@ -745,6 +780,17 @@ static int cf_check init_bars(struct pci_dev *pdev)
>      if ( cmd & PCI_COMMAND_MEMORY )
>          pci_conf_write16(pdev->sbdf, PCI_COMMAND, cmd & ~PCI_COMMAND_MEMORY);
>  
> +    header->guest_cmd = cmd & ~PCI_COMMAND_MEMORY;

Memory Enable is cleared from the guest view, yet at the end of
init_bars() mappings will be established if the bit is enabled in cmd.
Won't this create a mismatch between the guest view and the contents
of the physmap?

> +
> +    /*
> +     * According to "PCI LOCAL BUS SPECIFICATION, REV. 3.0", section "6.2.2
> +     * Device Control" the reset state of the command register is
> +     * typically all 0's, so this is used as initial value for the guests.
> +     */
> +    if ( header->guest_cmd != 0 )
> +        gprintk(XENLOG_WARNING, "%pp: CMD is not zero: %x", &pdev->sbdf,
> +                header->guest_cmd);

I think it's unlikely for the command register to be zeroed out, I
haven't looked, but I would assume that after a device reset by
pciback it won't be unlikely for some initial state to be set.

> +
>      for ( i = 0; i < num_bars; i++ )
>      {
>          uint8_t reg = PCI_BASE_ADDRESS_0 + i * 4;
> diff --git a/xen/drivers/vpci/msi.c b/xen/drivers/vpci/msi.c
> index a0733bb2cb..df0f0199b8 100644
> --- a/xen/drivers/vpci/msi.c
> +++ b/xen/drivers/vpci/msi.c
> @@ -70,6 +70,16 @@ static void cf_check control_write(
>  
>          if ( vpci_msi_arch_enable(msi, pdev, vectors) )
>              return;
> +
> +        /*
> +         * Make sure guest doesn't enable INTx while enabling MSI.
> +         * Opposite action (enabling INTx) will be performed in
> +         * vpci_msi_arch_disable call path.

I'm not seeing such code in vpci_msi_arch_disable().  However the
updating of the INTX field should be done after MSI(X) has been
disabled, and hence can only be done after the pci_conf_write16() in
control_write().

I would be fine if you want to leave forcing the setting of INTX to
enabled once MSI has been disabled, any sane guest will do that
itself, but the comment needs updating.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 13:22:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 13:22:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606446.944353 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjJdF-0000GH-GP; Thu, 21 Sep 2023 13:22:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606446.944353; Thu, 21 Sep 2023 13:22:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjJdF-0000GA-De; Thu, 21 Sep 2023 13:22:13 +0000
Received: by outflank-mailman (input) for mailman id 606446;
 Thu, 21 Sep 2023 13:22:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=95bz=FF=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qjJdE-0000Fg-DT
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 13:22:12 +0000
Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com
 [2a00:1450:4864:20::334])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dea243da-5881-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 15:22:10 +0200 (CEST)
Received: by mail-wm1-x334.google.com with SMTP id
 5b1f17b1804b1-401b393ddd2so10267595e9.0
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 06:22:10 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 r2-20020adfe682000000b0031ff89af0e4sm1739963wrm.99.2023.09.21.06.22.09
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 21 Sep 2023 06:22:09 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dea243da-5881-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695302530; x=1695907330; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=8dVQX0yCi7ghczoROjvyfPzm3xMrXMwt1ohYLvFo1LE=;
        b=B80Pmcz6sbUkaoY+xJcWQYp3xx9xwd/Jp63FLTxWyIQlhg1/K9mxhQgrcfzPfw9Dm9
         xP1ToydeP9y0xshSLVKMV2PX6wqClqfLlTqt499k8a/l5Lyi0AMa5Zd/Q9CGcgh51RH0
         IrLCXIBedHPAMuIdUSiAACKmH67VQMsWBtEc8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695302530; x=1695907330;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=8dVQX0yCi7ghczoROjvyfPzm3xMrXMwt1ohYLvFo1LE=;
        b=Dy/cqcD9bWphNHMZ2wWdQ/z1JlLJkpWNdkzUmJcOKjwL8sw73OQp8rMevyOHrnzNsv
         ioz/TtHQYrRK9ebYR54NQe5QznA6xl9qazNFU2T1UetOcXQiVEdj7yKjaqybnIce7+n9
         M2B6eqe1ToM1ARGGJjC/W8I4vr6TUrZF6MZMys1xDnWrl3VF7UBnPlmo5DQBT5tt2drU
         hGv+bya0Clxo97FhA0f0yH79sYqSrHO5I2Dw5ccH89MrQWrLK/RnjIol8JCa5UT1c4Oe
         PnlibEt0hv/+eJNCGa0ftFr6tUGbApyrf+yco249LRBaS4/Nrxdc9vts+FJC4S1z/aqi
         oMNw==
X-Gm-Message-State: AOJu0Yzi+u3Uv02A9PzEpE7agRNSVqGwPxcUuNYo5SxCvn7s9Dd8lLGk
	Wk+gUdMn5OHXbUfbeBjiQqRCng==
X-Google-Smtp-Source: AGHT+IGnWZ82d4kjIh0k77eDZZAbkE/+M5zc0hDvyULYRRQYw7qweBLL3ooDS+hRFr061DGVSkwrWQ==
X-Received: by 2002:a05:600c:22ca:b0:3fe:2b60:b24e with SMTP id 10-20020a05600c22ca00b003fe2b60b24emr5307653wmg.29.1695302530020;
        Thu, 21 Sep 2023 06:22:10 -0700 (PDT)
Message-ID: <f8f7e4b7-377c-41b6-8fbc-5a26d51329e0@citrix.com>
Date: Thu, 21 Sep 2023 14:22:09 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] x86/paging: Delete update_cr3()'s do_locking parameter
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: Nicola Vetrini <nicola.vetrini@bugseng.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, George Dunlap <george.dunlap@eu.citrix.com>,
 Tim Deegan <tim@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230920192153.1967618-1-andrew.cooper3@citrix.com>
 <0ba4e387-5f58-6828-9168-cab0ae3b3698@suse.com>
In-Reply-To: <0ba4e387-5f58-6828-9168-cab0ae3b3698@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 21/09/2023 1:38 pm, Jan Beulich wrote:
> On 20.09.2023 21:21, Andrew Cooper wrote:
>> Nicola reports that the XSA-438 fix introduced new MISRA violations because of
>> some incidental tidying it tried to do.  The parameter is useless, so resolve
>> the MISRA regression by removing it.
>>
>> hap_update_cr3() discards the parameter entirely, while sh_update_cr3() uses
>> it to distinguish internal and external callers and therefore whether the
>> paging lock should be taken.
>>
>> However, we have paging_lock_recursive() for this purpose, which also avoids
>> the ability for the shadow internal callers to accidentally not hold the lock.
>>
>> Fixes: fb0ff49fe9f7 ("x86/shadow: defer releasing of PV's top-level shadow reference")
>> Reported-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> ---
>> CC: Jan Beulich <JBeulich@suse.com>
>> CC: Roger Pau Monné <roger.pau@citrix.com>
>> CC: Wei Liu <wl@xen.org>
>> CC: George Dunlap <george.dunlap@eu.citrix.com>
>> CC: Tim Deegan <tim@xen.org>
>> CC: Stefano Stabellini <sstabellini@kernel.org>
>> CC: Nicola Vetrini <nicola.vetrini@bugseng.com>
>>
>> Slightly RFC.  Only compile tested so far.
> With shadow/none.c also suitably edited
> Reviewed-by: Jan Beulich <jbeulich@suse.com>

Ah yes - I did forget about none.c.  Thanks.

> I'm a little surprised you introduce new uses of the (kind of odd) recursive lock,
> when previously you voiced your dislike for our use of such. ("Kind of odd" because
> unlike spin_lock_recursive(), only the potentially inner caller needs to use the
> recursive form of the acquire.)

I do very much dislike recursive locks, and I do think that an
alternative universe without them would be better code.  But a stream of
int/bool params are a similarly bad antipattern too.

As paging_lock_recursive() is used for this exact purpose elsewhere,
it's silly not to use fix one of the problems when it doesn't really
make the other problem worse.

~Andrew


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 13:30:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 13:30:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606451.944363 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjJle-0002qu-Ac; Thu, 21 Sep 2023 13:30:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606451.944363; Thu, 21 Sep 2023 13:30:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjJle-0002qn-7U; Thu, 21 Sep 2023 13:30:54 +0000
Received: by outflank-mailman (input) for mailman id 606451;
 Thu, 21 Sep 2023 13:30:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wI4U=FF=citrix.com=prvs=62171ef32=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qjJld-0002qh-MX
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 13:30:53 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1408faee-5883-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 15:30:51 +0200 (CEST)
Received: from mail-mw2nam10lp2108.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.108])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 21 Sep 2023 09:30:41 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB5886.namprd03.prod.outlook.com (2603:10b6:a03:2dc::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Thu, 21 Sep
 2023 13:30:37 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 13:30:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1408faee-5883-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695303051;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=7BULMJjIrFC5GxgQbq4vLmjVpfNUXXGy0V7zwN7iQ0w=;
  b=hIXjyN7nQ4dLU4RGOxhKaFKUW8Y9PukZhK6AoghXR/3pR57GSJxPl9Gh
   /cpkSZ2NbCUxiQpqNqpuW/Zl+gmbKlOQz8fdSP6ZeNPlkRbQjdjuvkH3E
   GDIhVDBZDjIer05WJt9m4PsNRkjxm6g5GdPGQbMhyvLpAKa5t0mXoDd1z
   4=;
X-CSE-ConnectionGUID: J6FABxZiRjOtzecEw1uWsg==
X-CSE-MsgGUID: Bp8pP8l0QPqhYIlc2cQKuw==
X-IronPort-RemoteIP: 104.47.55.108
X-IronPort-MID: 126127843
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:FC9aaatTAwaOBP+QHgHXgZzwy+fnVI1fMUV32f8akzHdYApBsoF/q
 tZmKWqDbP2IYzbwKNwkadnk9U4B6pLQy9BnSwo6+X80FHlG+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5A6EziFPZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwCm4jRzqTteOMwpWnWORnq9t6MfbwM9ZK0p1g5Wmx4fcOZ7nmGv2PwOACmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjf60aIq9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAtxLTuLoqqUCbFu77HRDECVGUQOCmeC5u2+6UIhUE
 m8J5X97xUQ13AnxJjXnZDWGp3qDsg8ZSsBnOeQw4wGQyYLZ+w+cQGMDS1ZpeNEg8cM7WzEu/
 luIhM/yQyxitqWPTnCQ/avSqim9UQAOMWIdbDUYCwsE59Xuqps6iB7nR9NvVqWyi7XdPjX9w
 CuDqiQksJwVgdQWzKWw/V3BgDWEq4DAS0g+4QC/Y46+xgZwZYrgYpPy71HetK5ENNzAFgnHu
 2UYkc+D6uxIFYuKiCGGXOQKGveu+uqBNzrfx1VoGvHN6giQxpJqRqgIiBkWGaujGp9slePBC
 KMLhT5s2Q==
IronPort-HdrOrdr: A9a23:IY3gT67bnPBKKeipVAPXwDjXdLJyesId70hD6qkQc3Fom62j5q
 STdZEgvyMc5wx/ZJhNo7690cq7MBbhHPxOkOos1N6ZNWGLhILPFuBfBOPZqAEIcBeOlNK1u5
 0BT0EEMqyWMbB75/yKnDVREbwbsaa6GHbDv5ah859vJzsaGp2J921Ce2Cm+tUdfng9OXI+fq
 Dsn/Zvln6bVlk8SN+0PXUBV/irnay3qHq3CSR2fyLO8WO1/EiV1II=
X-Talos-CUID: 9a23:nVByrW+xKVroNdUleLmVv2xKNOkPYk/c9nX3P121Akt2EaCqUlDFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3AuT34wA/k7C0xuRsLrQE9fdaQf+1ws7yWWERVqK0?=
 =?us-ascii?q?fu/ilMScqMA6+kSviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,165,1694750400"; 
   d="scan'208";a="126127843"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aLe8yZfRoljAaF2b/9v+jgETrrp4tQinNvPUbWjHhkiaOygqkSF7U5Uy0Zs3DvapyKes/AGFvEFook49qXeiKLwlI6UqLiJCzeWG6l2fVBf6lMXCSKdPIwZA9q63rCL12wnvUBdA3ILS4sUD8EqVSpHIm9nit0CXVuiimaR0BJyLJ+QhqXEoq7t4vP4VXkdqcaUMj/wnlBZxbtNLfvYpB1ae3Yv7Ep4mPWsK74qgfu+PPEXVG4HTDEpdYnAK62l9rrnvixuDVClvkwDTus1Qs+WNVHoOR4PDIKWGnW75JylTocK/OkGo+oZ78VhB2rxmck0MGX746Oc5iUBaA4rR8g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yMpSe2qRFfSi4/R7e1GMan/Lz3FzGZSzjpoVHIDIN60=;
 b=TPtyrQaklVWBXM/ZjyZIhg/na31FTVUpD1GgpQDfwn9eCDdZvAkAVNYa+15s/DaUkyoob2VAqie4EfZk485sByNLBWXpS/JcCmc8F7cWoI1CasLTu5pmpI5kSLgqQf33TFpAfiTaKx2nCnr1hAUmaxiB6LRQ4Utt7UoagQe7qiiZhFyokKpJY345L1+vGHmV4HHZnHSyYYC6zASopjJZLnn0mOoKaf8JMpqb32hHoLOx3ERYgDaYxxeMMHGszq3CC1TTTCzUs42whknXtJD9QpZhHJ+qen85XGT2Sipeo09R8IkEbSRUYiA1x1XGK00f6GfpvlXPb+kAXPe91cQg5w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yMpSe2qRFfSi4/R7e1GMan/Lz3FzGZSzjpoVHIDIN60=;
 b=s0H5okiqjyGd+nH9GdptmRepqjlLw0dQ2I61Wl5n2cdO5VFtZscPBoEfP6FXXNIOOHpP98rJ1Jq9uMpkSkh3c849dzHvHnKzbs29gIgMmGVzQFqpNoeoEjM795aG8tfdI3Xw12QPCQIj9IZ8hA14ei9TEFXUC7ulDQ0Go9bfjwk=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 21 Sep 2023 15:30:31 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>
Subject: Re: [PATCH v9 11/16] vpci/header: reset the command register when
 adding devices
Message-ID: <ZQxFd6fcReaCdRI7@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-12-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20230829231912.4091958-12-volodymyr_babchuk@epam.com>
X-ClientProxiedBy: MR2P264CA0071.FRAP264.PROD.OUTLOOK.COM
 (2603:10a6:500:31::35) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB5886:EE_
X-MS-Office365-Filtering-Correlation-Id: 103e9484-6f49-46f3-624b-08dbbaa6f0c8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jTTFmYTjrACCsz6jsImL9tjE4cfE7te2ziEaH79B7B0OgCGEIs6JyVIwxe1mNhHEUlaygumdwC4QfYJJaw+RtxOzgEtGEsXG+8Oah///coGxkKweUKMU4psRJs1loPubX6gPOEpa06adpgSr8Y/wxpsb5ofF7NIF/2PEs7WYF2BL2dWjFCGi3mP0lI6Q/djGWB7+YR6rd03M2N0bkUcJYRWy48GqghSbXJUlujFfGm3biirPZAYnWmPMfGU6aTH+lp1vtHgza/eQaXffN4jYvubYH3w4MakJRaLc2j6WOct0oo3KUWZ3qlGhs1nQTFhX9Auj5OBYGUtrtJ8ywF/v8bSwHHRPNskNDVkzKKrnXHuE++IZkpF6QVi7Eb6GbStY/H2t/igXMdRQtk2ckb05t6n4Yp/M8rWlCXBf54ieZPdhbBwX/KB1BSoTteee7dIlEcx5RFB5MyPqENjTf6+8DwI9/PKd5VVX/C9T9uQtUizlZbmGrUGWI3WvUobfiQM5tUu6MnvWWQzUHAbQxH+mBsVXwGdDDMHDq49seh6YhYSjT/lc2UhXrKfJ/15yZOG6tWAp7OmEFj1fZqR5zIH8ZZ/OURCW65lTu+tnY4iH14w=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(39860400002)(346002)(396003)(136003)(376002)(366004)(186009)(451199024)(1800799009)(38100700002)(478600001)(26005)(6486002)(6506007)(6512007)(6666004)(9686003)(82960400001)(2906002)(54906003)(86362001)(66946007)(66476007)(66556008)(316002)(6916009)(83380400001)(33716001)(41300700001)(85182001)(5660300002)(4326008)(8676002)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UDVQemd0Y0VYSUZaaDlBYnFUeDRSMlFUb3U1VkwzaTVWMkhzaExqS09YaW51?=
 =?utf-8?B?eUEwejBOQTR3TzFRczBLeWkxSkh6U0RnVTNoMWtHNjZDU0hwR0M5bGV5QWxl?=
 =?utf-8?B?akZTMVhteFdnT0tYU3U5andQL0RaaXB2RUdjQWlXZ1JZR3g4Mk1RelVmMVVR?=
 =?utf-8?B?OEY2UlRYSXpoUXBTOHVKS1ptWXdQb0MvbXpNV1RIR3dnZVVwbkJLcGlKaDdG?=
 =?utf-8?B?VXJhSEZMNlVQc1J3eU0ySHpDVDlrWTZNTDZWSWFBZFBEbEltQTRCam8zeXdT?=
 =?utf-8?B?ditTQW8rUlRoT2NSZG5KZzQxNXBKcG96ajdiSHR3dkhnR3hYSUdQVjljYUNF?=
 =?utf-8?B?NUUwZnVxeUhtdHZlSFVxUUhzZzBIZjJ2RCtVNlVZazdrbUIxOUZoamNseUYz?=
 =?utf-8?B?SkJnd0podTFETDBWbERTM1QzN0VpcjR4Rm1hWWJ5NXgrOTdhK1ExdENGVEM3?=
 =?utf-8?B?YnpZblJSRTRtcFlHTjRMN3ZCZUdBYUxJMU9ReHVteE0zYUg2bktRQzZneVVp?=
 =?utf-8?B?ZmwwQklsK2l2N0Rid0VvN2RMMW1VamdGcFc0Qzlpa2JINnBYVUp6NmNiV3VJ?=
 =?utf-8?B?NmFXZGNSa0ZQaVRQQ01ESExrS2E1OXZZdmM3M1IvSGJPellhZDdQMERoaERl?=
 =?utf-8?B?Vk1pZkdrTlRndzdOMFNlYUdwTUF3Y1ZxcXpnNTNvN3FvbythcGFWSmk5bnNF?=
 =?utf-8?B?ZGlzV2JtOU9EYXdtVlh3aThPVDVDVXpBd0tnak1jdkZFR2I0d1p4cTh5Nzlp?=
 =?utf-8?B?SjlFdWhjdnhDN2tIbmc1ODdtWVpYdUN0OEFJeGdTeHBQYUc0WEJ3aGYzeFJx?=
 =?utf-8?B?Vzgwakg1Y0FQdFdhSllrbkNyWlBzOW9PbG5mVzd2d3ovOFM5RjczS0Q3aE51?=
 =?utf-8?B?MWFJaDAxRWN0MGxtcEUvWXhKc01KSEVmYitPMFFxbHU4TGJUNk5JWG1DMVBG?=
 =?utf-8?B?eGRUZzZzcUlnTk1INlFoR1lSQXRsMDhYQ2hzYWVrclBZQ0hSTTdYUnJSMDky?=
 =?utf-8?B?T1ZwUGpucmRNY2t3Ky9xZGhnQmNQc21TWEhNTm9mV2RCQU0vdXE3VlhvcVlX?=
 =?utf-8?B?c21kS1ZYRk1GeGlmakk0STZRL0lFRk85bzVJVXBZNW4yVm11c3RKMEx3R3pK?=
 =?utf-8?B?Zy93bXpKRXNRcHZGR3VROGVjajZ3Znd6NmdNTjVDV2UySURGQnlpck14Zys1?=
 =?utf-8?B?UGpwSVhSTi9pYS8yK24xb3VWMUMvZ0VISmxRZmZ6cGNnZWk5ZXpydVd1WDYz?=
 =?utf-8?B?YjZHWlY2OUhNeTVuQWEzVUFlWFhsWmF0OGJoUzhpVHlocnE2U1hSeEswalRh?=
 =?utf-8?B?V0lTL3hxR3l5TDJ3b2ZjOUR5ZWxkaFZ4VVhzMEc4eHdHWVZHNkZodHpJc21W?=
 =?utf-8?B?THN3em5XV3cvMlNCOGtSanVNOWVRNjI0R0J5WlJtanYzV0cwRVdyYk5zaHV6?=
 =?utf-8?B?NU0xRWlRcnJzNFBTcWVlVkdtYm5oZnNBQ2d3UWdWK1hkSXF3KzEvZHgvZUQw?=
 =?utf-8?B?OGlBZGowdmQ1aFFFc1I2Yjd2Q2UzR3NFN0lNWVN4elJFUm1xVFk5YkYrNk5U?=
 =?utf-8?B?eDBodFpITVJEVDRFdUNkamRUbmp4ZFRRVnRKQjFvUGovN21OVEZLNjNVVkVh?=
 =?utf-8?B?bDVOR21kWDFOc1RXZmJHSHc4dDNuNHRVcWJ1bENpeTJkMWwxb0c2QXlsRlp2?=
 =?utf-8?B?QVRKN0pXbkNBbjlKN0lUejdXL09OWUZqRmJDcDBjeWpQS2ZjMXdWSVNJN2Zj?=
 =?utf-8?B?YzRxcFkyRHB6Ync1cS9OVHpKK05IL1VWcmpFTVc4YjZYNFRNWEdJQlVrTURy?=
 =?utf-8?B?dnJzdlFTS1I0dDN6Wk9zOW91bzdQVEo4UEhWMU90dG5wN0dHdVFRa3pUdC9j?=
 =?utf-8?B?amNHU1drWXB5dXhiMFpLN3kraHl4VG1mYm1SSTgrYUl3bGN0eHlEWWowNllY?=
 =?utf-8?B?MzRKTllsc0E5L0k1bmphRlovK01SbENPSUhFSzNwNTNxTElMQitqTzkwKytE?=
 =?utf-8?B?ZC9FTWovbHI4YjZ4SWwrWVZ2eVM5UXFVbVNLWmQwQVprbWJTakZtUHpYdkRw?=
 =?utf-8?B?V0lkbTYrbWpzSDhEQ2huTEpvNTlUN0UvcmI2bEhQNG0zRUd4QlRNMHF4ejBt?=
 =?utf-8?Q?sCD4QuNxztWQXqBNDeHH4ejTL?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	iAigux415/q9BeA2qKCID3d3EgDVVM5epLCc2XbguRK3E9OwGwEEZY8GZOFQAId7jjBYjsRSQ3Ejqz8ayANVQFx46HOQhO6H1VzHe/WUK9tmkpHModKUdfaqPhFVniKEEjDDlsoTyuA6gjWSF4+QY40vSRjGot89NKtoAvJ7lzz3uoMBuk9e/f2FdkvAJ+Q1j+eHYa7SZk3RBIoRyVMb9CTwXtHX2z4HorZbzVIk+G946sJruRRwSqa74zL6OeZRKmYJhrw2CPicqc8oVp9C9YeUGmOJp2z6aXHqFFwL5B12Kxzoam/qTWwWYHmjL+qWgZ/An9nTBwhQsOjOiw2rStHb+LzjM7vMFoCNaUMownHUO1WAPxHye85unxGyOyg2Gt37RuvP6arysFWv3F1mCdjy5VoET0ABy0Wg/UtOCz9NiCH/mHJ1X71PAxs5KqMAPbbpEHV63045biZINZXOCFw2Rdve4EYbVJxkDYdXp9VrNaa39z/geyYGoAkqLNgkR7oMBwyy5OF2gX8bGBuEhvWcsK28iKbHGavEJGfnTRp0f+AcqPD2RA+8qcoAyrzDY0SgLEsZRIEyqtc7uVqikrpAKsCl2dH8HQ1zGe4yMYjNkCGv9TOnghGpUFGrObfdGdPC99pV91fD2eQijjd4HgQF+y8CINkMDb0LbWNQPsY3IAJ24C/WuSviZGfHeXV6Ot6dYpT88l/AL+CQN2qT7eJEnq6HgmDM4Z1WL0URJNA5eKCz2WSbQy3rHk24HAbx5ICgle1q71tk5KD4nByaRKWtiMxJoXhfx7chzg9DZVn7KLTRlZHNnNS+eE2bVLHU
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 103e9484-6f49-46f3-624b-08dbbaa6f0c8
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 13:30:37.3099
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rXzV+l14a4w1qReOJUBNiSmXZsPxwwbjmCdFIY+NKqCNEZTfJqagxhYdIbRDS9JNx6eRoeZVItey5KiUx/wFNA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5886

On Tue, Aug 29, 2023 at 11:19:45PM +0000, Volodymyr Babchuk wrote:
> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> 
> Reset the command register when assigning a PCI device to a guest:
> according to the PCI spec the PCI_COMMAND register is typically all 0's
> after reset, but this might not be true for the guest as it needs
> to respect host's settings.
> For that reason, do not write 0 to the PCI_COMMAND register directly,
> but go through the corresponding emulation layer (cmd_write), which
> will take care about the actual bits written. Also, honor value of
> PCI_COMMAND_VGA_PALETTE value, which is set by firmware.

I think this is likely dangerous, it would be better IMO to simply
make sure the value presented to the guest is all zeros, and that the
vPCI cached state is consistent with that.

> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> ---
> Since v9:
> - Honor PCI_COMMAND_VGA_PALETTE bit
> Since v6:
> - use cmd_write directly without introducing emulate_cmd_reg
> - update commit message with more description on all 0's in PCI_COMMAND
> Since v5:
> - updated commit message
> Since v1:
>  - do not write 0 to the command register, but respect host settings.
> ---
>  xen/drivers/vpci/header.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index e351db4620..1d243eeaf9 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -762,6 +762,12 @@ static int cf_check init_bars(struct pci_dev *pdev)
>          return -EOPNOTSUPP;
>      }
>  
> +    /* Reset the command register for guests. We want to preserve only
> +     * PCI_COMMAND_VGA_PALETTE as it is configured by firmware */

Wrong comment style, and PCI_COMMAND_VGA_PALETTE is likely to be gone
anyway after we perform a FLR of the device anyway?

> +    cmd = pci_conf_read16(pdev->sbdf, PCI_COMMAND);
> +    if ( !is_hwdom )
> +        cmd_write(pdev, PCI_COMMAND, cmd & PCI_COMMAND_VGA_PALETTE, header);

Such cmd_write() call might trigger an attempt to change the guest
physmap if you are toggling the Memory Enabled bit from 1 -> 0, and
that would fail because the guest doesn't have BAR p2m mappings setup
yet, those are done at the end of the function by the call to
modify_bars().

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 14:01:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 14:01:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606461.944375 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjKEk-0002Jy-Oz; Thu, 21 Sep 2023 14:00:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606461.944375; Thu, 21 Sep 2023 14:00:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjKEk-0002Jr-M5; Thu, 21 Sep 2023 14:00:58 +0000
Received: by outflank-mailman (input) for mailman id 606461;
 Thu, 21 Sep 2023 14:00:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PlvV=FF=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qjKEj-0002Jk-8A
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 14:00:57 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 47f44d12-5887-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 16:00:55 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by DM4PR12MB6495.namprd12.prod.outlook.com (2603:10b6:8:bc::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Thu, 21 Sep
 2023 14:00:51 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::5a5a:18dd:4832:75db]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::5a5a:18dd:4832:75db%4]) with mapi id 15.20.6813.017; Thu, 21 Sep 2023
 14:00:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 47f44d12-5887-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YiIjO9ZCUbPQXDnteIuGkk3EBvj7Y0lHNYNiBmZRSurqYBRdzU8+QChvimqckHOrLDbVtEff1PMYJc5J4lasSZfDPIme1rIgWZNOXTmvtEgk+7zMDzeaYElk6ipQ3f6jVOb4reciSn2IKEM+qJzOqxZk/YyNaza78Uy3mKunaePf4xwWwxbf1n+JBWQN30DkS8BaQt6Yz1iCz2QQk1lQ8hNnlZj72/yjLSPm89AuMJxKVTUu36vcpU0pjtZdYXaa2FZ8dHlhcN2en/yRTOBlfwrVDHhv+oIQjYNBvbW/gVDGK1XVr12qqTXikysBQMUDqZBM+XKCdmni/zBbk0FRCA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GxTwrY1bZAbU8ix862Q1RZqDK0+sWRQeS8HcUcmxc2E=;
 b=Dzc74dcymLZqscoKFm3QopzFjg//4G0LIXZMy1Trw7YtPCG564Py6hOq7j0OrVujot7hGhqP/pC+Yb7vDyWf+wWlmRpVFuXPNfNhzrmOmI3ha+fjP5+jpgBAYipkGT+eOh0aDzP+sr3N+ZvKh4pZmVKpJGvESCNdcNbXpq570sLBy5Q0rHlxGLpwL51XfhimCqLkn3Rr+IEQl8grIZsqtnb48x3CzWvkxZWaqzgGlnKpjmSopF5eDl7+PplPQl7zPtQSfwQYQeKPYNXKEnWEYgp30hj2Oy0P55qHL6B9lSwXNfeLIe2gsxlbVKR9vhZD4rk8w3EzyYL6LiAmvgmkGw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GxTwrY1bZAbU8ix862Q1RZqDK0+sWRQeS8HcUcmxc2E=;
 b=dw3oLI/5O5ISVQLeBsuejMRgt3iVf6pmPOU3rGGOQCwTJFVJ0dp13J/lUJq8iJ7UzPK/vwKq7RgvUbROiVQIWKFvdyc6aawkDwxv8PkrJL0rI7/yG9nK9DM5Y1FHMNralXxQI9IFpbVgPWi/deJJYzFM44iK2jIWkTHjfhn7h+c=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <5f3d543a-b701-d401-ac70-6438b603399a@amd.com>
Date: Thu, 21 Sep 2023 15:00:45 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.1
Subject: Re: [PATCH] xen/arm64: head.S: Fix wrong enable_boot_cpu_mm() code
 movement
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
 <julien@xen.org>, Wei Chen <wei.chen@arm.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Julien Grall <jgrall@amazon.com>
References: <20230916040649.1232558-1-Henry.Wang@arm.com>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <20230916040649.1232558-1-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: LO4P123CA0322.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:197::21) To SN6PR12MB2621.namprd12.prod.outlook.com
 (2603:10b6:805:73::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|DM4PR12MB6495:EE_
X-MS-Office365-Filtering-Correlation-Id: c1ab3b8d-d675-4d95-1045-08dbbaab2a45
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ENhMCiv9uFRzzgRr50s4UZJJm2DUgeOQnecx0RvgjAFEUJJyYAN1X0TZfo0z+ivImMDMLL5Ftbl2DygZbVCYTxqipP8A1gayJSUOPclCfrzYsA/OsCVZlneCcbwsGH7uS49L78x/RzlJWYbKu98IB0TIoxqxMhekUzzi6Z871AkXoF4dRF3UARpDqk3MLerb6kpGQAvE1pKSoPIxfzIH7WPvtDDQFhAgHcpiHTlAfZcqX8mXQ7oTzCq66pmUjL+8ICX3IN6XXfiJz/8iJMcBTUmfxYYJLKka7aFPrvhmFBAz108K0MBwemBB9a/nFKRdQippCv26QJ/6rKBKm5EC4zhisGrVvXyCwItBhdyzXoei4oPXaueHXAcDoBPyceSDY6aQDS/xh3hnzwCwsqX92HXt/NJ0ppz2rtOrm12DWxyPM7MY+ZpVxDDF+mjrgtVfCbakOZO0FVxZAnHuI3nZbcclETkhiHlCP1xN5AsMIs7cCoOvZcDv7Zocpcyfo4YbwI3fSdmmp0jlt4/VZN5KDYq/sZRMFpVQ0h/5xj2LyxrevjfW6k4czZZXue5yvdtE6/oeyIUKvxJUOxB3XyZ7O+OgkrT4C345K1OZxSY47e0LmkrYY0NXTa/h7XszLZhMFkDozT/BZaqObUphNvdpdg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(396003)(376002)(39860400002)(136003)(1800799009)(451199024)(186009)(53546011)(6506007)(6486002)(2616005)(26005)(2906002)(6666004)(54906003)(5660300002)(4326008)(8676002)(6512007)(8936002)(36756003)(41300700001)(66946007)(66556008)(66476007)(316002)(31696002)(38100700002)(478600001)(83380400001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZFhaUmRVWWVVQVFWbitPc3NheFJGdU5ndnpQNHMzblBtS1c5cGtzOHM1Z1ZT?=
 =?utf-8?B?UkFwa3VqcFVid0luSStsSnV4dlJ6QnphSXAvaHRzTGlReEZDQ2hWWEpORS96?=
 =?utf-8?B?QVJuaGg0VUtHQWVoQnhRNUpUcFBLS3M3Z2ZVa2JnOWR6ajZpdWtTa1FwaDhn?=
 =?utf-8?B?ZzltbFFjQVM5M3dOUlFKbXFUR2tBRmpIeHpxN2RSOGxVMFdTakhUanVFUGJz?=
 =?utf-8?B?bFlkLzE4aUoxbTZnUTFpNGZCU2lTUVZkSFRLUU9CWXdHWnEvL3F6Z1I1QlFq?=
 =?utf-8?B?UURFQnNpNk82bVFyM3ZBTVdYZkszclNwVjlJdElhOVJPeUtvaXQ4SkROYWtP?=
 =?utf-8?B?M2dmZGdWcjdkMWZQZ3hNaDZROUxLZmpJaEJxNm83K0h3amQzTW0zMk9aOXpo?=
 =?utf-8?B?R3BBWis1QnZ1MWJmT0lXK0xtTHliUVpjU3I0akNCSWNLdnBqc0pmMWgvWDlv?=
 =?utf-8?B?OWVTSytaaEZsSUJnRGRydGx4aVlhR3hQeFNxQncvK2dXT3llSllSb3ZoUXUy?=
 =?utf-8?B?ZCtNUzlOTVY3MDA2ckFTdUpvTFB0eVR5L1dDVWxyMWNLbFRzOWMwaHYzazZV?=
 =?utf-8?B?Z0JyOWtiYzZSUGNDUHVZaTVTd2VYd013SU9VOEdldU9sYnJneTc0bXVyREJ5?=
 =?utf-8?B?ZmtmWVQ5NFhOM1BtZzM0VTRhcUpSM1VJcWJNOHlFNTBtbFhVd0N6SVgzR2VK?=
 =?utf-8?B?eDQvK2RFMGxDUS9uSjVReG5qeTd1RzlzZjdkUitCZjZDUUlBeTY5c2dhY2Ex?=
 =?utf-8?B?QkFMcjRNR3Q5KzJrTkhWTkRndzhTcGtXRUEvalE3c3EyK3FkVllCaFlHNGIv?=
 =?utf-8?B?cUZtNU54QS9IREhwUktTMmxBUTBxRkIxSG1LdWVMMkJQQVBxNUJ0MGc3emw1?=
 =?utf-8?B?MXVrTFM1UGtDcTVjSThVbU0rMWZTUkFUUHdOdU92MkVodytuQm0yWG1JYytK?=
 =?utf-8?B?c1RaeWY0cXFrK2RnTWtpUVNDbXVtc0ZaakFYUzhTOUp5WjZEdUQ1RitXMThn?=
 =?utf-8?B?eTNnQmtyZ2lhd1djaEZzU2VvR0NtaXFybXo5amdsaStFRm9qY283M0dPRWJz?=
 =?utf-8?B?V1ZVUVdWTU1QVHY4NjJsQVNlTGpRSVJFOWkvTk1XQm9sQjlMVms0Wmh5OUlT?=
 =?utf-8?B?b0xZZ2lvaG1HVW9XSmtaTVprUStZVW0rR1Y3d2huK3hGN3o0WkNuTXNkSGts?=
 =?utf-8?B?Nm1zeXh5Rm1FdVVYekZYNnppSGphb2x0NGVhRzJLZ3BTMEVqUXVGbDdMUUF0?=
 =?utf-8?B?YzM0N1hMRVNCQW5VZTRFR1FGWnd2SDVweC83eE5SZjVRNXdFQUhKUEpTL0JF?=
 =?utf-8?B?ejQxZVpuSnBVL3ZKTGpWaWR6cm5pbjdmWi8vZDZGcjNhS3h4RE1NQXZ4OXhR?=
 =?utf-8?B?TEZ4NG01REZWOS9IYy9ZcEc3Y2V0VG1GbUFCeUM4cDBRTUNVTXhaclFMRE1S?=
 =?utf-8?B?a2NITVZyMmpPQlBEcEVVbkRFekFxRURkOUdhczVERWZ4b0VqZGtzc09PeDly?=
 =?utf-8?B?b0xLc0VxaHFyVWJEUkJpeFdqNitUbXRtRHpaVjBvTkdWdnBSTUQ5WjdCUHhS?=
 =?utf-8?B?YVJ4ditEbE5GdnoxRWlBSEErcmNmMGNYbXVxSzF3NEpZb0ZHN3poZzU0T2xU?=
 =?utf-8?B?aFFrSzY3UzMvN0hQMllnWDR6L1FFQWZ3VHNIZlNqWmZ5RFN3bW93WlZ1Mm53?=
 =?utf-8?B?RzJ2c1BoZzJUTXFGeEV1anl2TVFDL1BqTy90bXFqK1FLYkxsTERiNmpraTdj?=
 =?utf-8?B?Zm96RUdLVTNUWXM0VUJ6ZVNsRnNYdUVXcTZwRllITXVtZjhJZktxMWlwTHlj?=
 =?utf-8?B?aUxMV2NLdzRLcGVqVW00WEd5Qm9UamhrelMvdnhJdGs4SkNKdVRhNURFZTN0?=
 =?utf-8?B?KzdDTVVWSG13MlV4NHE5NzVON0tOS09uRm9PNUZQWVQvb2FaUFVRQU82SDZR?=
 =?utf-8?B?eGR5eWF2UUtwVWtyNkpoaUx3b0UzVGpqcmhFT0N5K1d3Rm5HSlJQZnJxbmhp?=
 =?utf-8?B?K0c0Vk5ZU3BSMVhIc2YyQVZnVGcvV0I4NHV6bTNSaEtrSkwrV2YrS0NzbzMr?=
 =?utf-8?B?Z3o2Zm1Bb2pibXBiUnhRTHF1WU4rVGhaQ3E4bEZNSGY3TWlTRi9WanhaTzcz?=
 =?utf-8?Q?yYKAhyagHH9TMuMdsceeCQLKS?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c1ab3b8d-d675-4d95-1045-08dbbaab2a45
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 14:00:51.6916
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: b00Yul5js67VGNAIF7v/4oZxtUe5+QOpbU7AEod5iGz2fjzk9jY/GyqdDqPlAU8CrRaH3hjbzU+tsXuXM0xn/g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6495


On 16/09/2023 05:06, Henry Wang wrote:
> CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email.
>
>
> Some addressed comments on enable_boot_cpu_mm() were reintroduced
> back during the code movement from arm64/head.S to arm64/mmu/head.S.
> We should drop the unreachable code, move the 'mov lr, x5' closer to
> 'b remove_identity_mapping' so it is clearer that it will return,
> and update the in-code comment accordingly.
>
> Fixes: 6734327d76be ("xen/arm64: Split and move MMU-specific head.S to mmu/head.S")
> Reported-by: Julien Grall <jgrall@amazon.com>
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Reviewed-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
> ---
>   xen/arch/arm/arm64/mmu/head.S | 11 +++--------
>   1 file changed, 3 insertions(+), 8 deletions(-)
>
> diff --git a/xen/arch/arm/arm64/mmu/head.S b/xen/arch/arm/arm64/mmu/head.S
> index a5271e3880..88075ef083 100644
> --- a/xen/arch/arm/arm64/mmu/head.S
> +++ b/xen/arch/arm/arm64/mmu/head.S
> @@ -329,7 +329,6 @@ ENTRY(enable_boot_cpu_mm)
>           load_paddr x0, boot_pgtable
>
>           bl    enable_mmu
> -        mov   lr, x5
>
>           /*
>            * The MMU is turned on and we are in the 1:1 mapping. Switch
> @@ -338,19 +337,15 @@ ENTRY(enable_boot_cpu_mm)
>           ldr   x0, =1f
>           br    x0
>   1:
> +        mov   lr, x5
>           /*
>            * The 1:1 map may clash with other parts of the Xen virtual memory
>            * layout. As it is not used anymore, remove it completely to
>            * avoid having to worry about replacing existing mapping
> -         * afterwards. Function will return to primary_switched.
> +         * afterwards. Function will return to the virtual address requested
> +         * by the caller.
>            */
>           b     remove_identity_mapping
> -
> -        /*
> -         * Below is supposed to be unreachable code, as "ret" in
> -         * remove_identity_mapping will use the return address in LR in advance.
> -         */
> -        b     fail
>   ENDPROC(enable_boot_cpu_mm)
>
>   /*
> --
> 2.25.1
>
>


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 14:02:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 14:02:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606466.944386 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjKGA-0003Cv-3V; Thu, 21 Sep 2023 14:02:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606466.944386; Thu, 21 Sep 2023 14:02:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjKG9-0003Co-W6; Thu, 21 Sep 2023 14:02:25 +0000
Received: by outflank-mailman (input) for mailman id 606466;
 Thu, 21 Sep 2023 14:02:24 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjKG8-0003Cc-FQ; Thu, 21 Sep 2023 14:02:24 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjKG8-0000c7-69; Thu, 21 Sep 2023 14:02:24 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjKG7-0003BG-TV; Thu, 21 Sep 2023 14:02:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjKG7-0006pG-Sz; Thu, 21 Sep 2023 14:02:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=WxGts90vc1nhOXbmsXslz/nnM8060VWlhXJ4NANjsKo=; b=rIyhs5jdabZSz9hrrrQIw7diSk
	ttbTe4kv4B8akk3gRIGeLv78kqY5MBrRfdv8fhFhUMiRERdWJRdkUpTrycji5BezIePkn8XpAZENR
	KGUjxp+bTEqUu5qX3Na0405VCwAp22G+pdtdPmUKoMLhwZfRwubBUTZv3BqwkCikxYgQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183095-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.15-testing test] 183095: regressions - trouble: fail/pass/starved
X-Osstest-Failures:
    xen-4.15-testing:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    xen-4.15-testing:test-amd64-amd64-xl-shadow:guest-localmigrate/x10:fail:heisenbug
    xen-4.15-testing:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.15-testing:test-amd64-i386-migrupgrade:xen-install/src_host:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47
X-Osstest-Versions-That:
    xen=0517763e771f2e2582bc492fafa42a86400ab957
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 21 Sep 2023 14:02:23 +0000

flight 183095 xen-4.15-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183095/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 182658

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-shadow 20 guest-localmigrate/x10 fail in 183081 pass in 183095
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183081

Tests which did not succeed, but are not blocking:
 test-amd64-i386-migrupgrade 10 xen-install/src_host fail in 183081 like 182633
 test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 183081 never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 183081 never pass
 test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 183081 never pass
 test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 183081 never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 183081 never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 183081 never pass
 test-arm64-arm64-xl-xsm     15 migrate-support-check fail in 183081 never pass
 test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 183081 never pass
 test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 183081 never pass
 test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 183081 never pass
 test-arm64-arm64-xl         15 migrate-support-check fail in 183081 never pass
 test-arm64-arm64-xl     16 saverestore-support-check fail in 183081 never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 183081 never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 183081 never pass
 test-arm64-arm64-xl-vhd     14 migrate-support-check fail in 183081 never pass
 test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 183081 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182658
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182658
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182658
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182658
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182658
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182658
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182658
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182658
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182658
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw  3 hosts-allocate               starved  n/a
 test-arm64-arm64-libvirt-xsm  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit1   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl           3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-xsm       3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit2   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-thunderx  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-vhd       3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47
baseline version:
 xen                  0517763e771f2e2582bc492fafa42a86400ab957

Last test of basis   182658  2023-09-06 09:50:17 Z   15 days
Testing same since   183081  2023-09-20 10:06:38 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          starved 
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 starved 
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      starved 
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  starved 
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  starved 
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 starved 
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 starved 
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      starved 
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit 3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47
Author: Jan Beulich <JBeulich@suse.com>
Date:   Wed Sep 20 10:36:06 2023 +0100

    x86/shadow: defer releasing of PV's top-level shadow reference
    
    sh_set_toplevel_shadow() re-pinning the top-level shadow we may be
    running on is not enough (and at the same time unnecessary when the
    shadow isn't what we're running on): That shadow becomes eligible for
    blowing away (from e.g. shadow_prealloc()) immediately after the
    paging lock was dropped. Yet it needs to remain valid until the actual
    page table switch occurred.
    
    Propagate up the call chain the shadow entry that needs releasing
    eventually, and carry out the release immediately after switching page
    tables. Handle update_cr3() failures by switching to idle pagetables.
    Note that various further uses of update_cr3() are HVM-only or only act
    on paused vCPU-s, in which case sh_set_toplevel_shadow() will not defer
    releasing of the reference.
    
    While changing the update_cr3() hook, also convert the "do_locking"
    parameter to boolean.
    
    This is CVE-2023-34322 / XSA-438.
    
    Reported-by: Tim Deegan <tim@xen.org>
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: George Dunlap <george.dunlap@cloud.com>
    (cherry picked from commit fb0ff49fe9f784bfee0370c2a3c5f20e39d7a1cb)

commit d7b78041dc819efde0350f27754a61cb01a93496
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315)

commit b007f82a708bb5119314677168318e301038b0f8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705)

commit dac906062088f11a0577e9d7ef2642c5d8663432
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 3ee6066bcd737756b0990d417d94eddc0b0d2585)

commit d39e5cf76f2a15120491b3b020d973d04c181388
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c)
    
    x86/entry: Partially revert IST-exit checks
    
    The patch adding check_ist_exit() didn't account for the fact that
    reset_stack_and_jump() is not an ABI-preserving boundary.  The IST-ness in
    %r12 doesn't survive into the next context, and is a stale value C.
    
    This shows up in Gitlab CI for the Clang build:
    
      https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/5112783827
    
    and in OSSTest for GCC 8:
    
      http://logs.test-lab.xenproject.org/osstest/logs/183045/test-amd64-amd64-xl-qemuu-debianhvm-amd64/serial-pinot0.log
    
    There's no straightforward way to reconstruct the IST-exit-ness on the
    exit-to-guest path after a context switch.  For now, we only need IST-exit on
    the return-to-Xen path.
    
    Fixes: 21bdc25b05a0 ("x86/entry: Track the IST-ness of an entry for the exit paths")
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 9b57c800b79b96769ea3dcd6468578fa664d19f9)

commit d75cb6dab86763b65210d69a40ac59bce90e1bb8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58)

commit 93504b3a6c92a1f2821af5e0960be8fda066ad77
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 45f00557350dc7d0756551069803fc49c29184ca)

commit 67b97438604c6a7ff7ee3dd5c98fff3f5669f6d7
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8)

commit 806893afb66fe7fa96ec495f2b7561bb396053ee
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 694bb0f280fd08a4377e36e32b84b5062def4de2)

commit 094cd5cb851d267feda3681d034ad46e91c60532
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7)

commit db3386e6cad6065c2a9155d4056b59164edb64dd
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Aug 23 09:26:36 2023 +0200

    x86/AMD: extend Zenbleed check to models "good" ucode isn't known for
    
    Reportedly the AMD Custom APU 0405 found on SteamDeck, models 0x90 and
    0x91, (quoting the respective Linux commit) is similarly affected. Put
    another instance of our Zen1 vs Zen2 distinction checks in
    amd_check_zenbleed(), forcing use of the chickenbit irrespective of
    ucode version (building upon real hardware never surfacing a version of
    0xffffffff).
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
    (cherry picked from commit 145a69c0944ac70cfcf9d247c85dee9e99d9d302)
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 14:12:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 14:12:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606476.944399 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjKQA-0005zA-6j; Thu, 21 Sep 2023 14:12:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606476.944399; Thu, 21 Sep 2023 14:12:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjKQA-0005z3-4C; Thu, 21 Sep 2023 14:12:46 +0000
Received: by outflank-mailman (input) for mailman id 606476;
 Thu, 21 Sep 2023 14:12:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=iWz/=FF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qjKQ8-0005yx-LV
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 14:12:44 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ed47dc1a-5888-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 16:12:41 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-82-50-59-70.retail.telecomitalia.it [82.50.59.70])
 by support.bugseng.com (Postfix) with ESMTPSA id AE6004EE073F;
 Thu, 21 Sep 2023 16:12:40 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ed47dc1a-5888-11ee-9b0d-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH] xen/numa: address a violation of MISRA C:2012 Rule 8.3
Date: Thu, 21 Sep 2023 16:12:26 +0200
Message-Id: <2b1c7a05a2ddd3c9f83e1a147ebf295e55ddcbe9.1695305387.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make object declarations consistent. No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/include/xen/numa.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/include/xen/numa.h b/xen/include/xen/numa.h
index 29b8c2df89..287e81ff66 100644
--- a/xen/include/xen/numa.h
+++ b/xen/include/xen/numa.h
@@ -60,7 +60,7 @@ static inline void clear_node_cpumask(unsigned int cpu)
 /* Simple perfect hash to map pdx to node numbers */
 extern unsigned int memnode_shift;
 extern unsigned long memnodemapsize;
-extern uint8_t *memnodemap;
+extern nodeid_t *memnodemap;
 
 struct node_data {
     unsigned long node_start_pfn;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 14:14:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 14:14:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606484.944412 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjKS3-0006w9-IL; Thu, 21 Sep 2023 14:14:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606484.944412; Thu, 21 Sep 2023 14:14:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjKS3-0006w2-FB; Thu, 21 Sep 2023 14:14:43 +0000
Received: by outflank-mailman (input) for mailman id 606484;
 Thu, 21 Sep 2023 14:14:42 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gqFj=FF=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qjKS2-0006rO-Qw
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 14:14:42 +0000
Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com
 [2a00:1450:4864:20::231])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 349fda6b-5889-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 16:14:41 +0200 (CEST)
Received: by mail-lj1-x231.google.com with SMTP id
 38308e7fff4ca-2c00df105f8so17194281fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 07:14:41 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 349fda6b-5889-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695305680; x=1695910480; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=8TErzemIwiGFoTA4/sKwsvLL1DO6ofzZDAEdf6+HqL8=;
        b=B9ouuFnD7vLTLZuhaohb6ki64PsBGtKj4dru7lztmpUOlgfUm5KmnTEM6VIJz53AU9
         9oe2DFU391+JgcpFMo6qMeizqjvWwCQCsGlGEFWM2iA+yzSkuBu0xIZ00vRuiDs+fyn7
         rmtEFlfMju06TjCAGVaNK/H+H3AI4JC8+hxT0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695305680; x=1695910480;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=8TErzemIwiGFoTA4/sKwsvLL1DO6ofzZDAEdf6+HqL8=;
        b=iqdYrSgSA0aJhqvmsbV8GlKr4T889qX1aMkIZy94swdlQ/Hme0UZhvJxhZeOzqA61l
         qX63LAopVEfAUj6nue04NjDFQLJCFBnCWPimdYplyswCYrFyEEVcnyGnBtBpC7W6QH/T
         +arvhj7zSxokhfCYz3eVTq0LFOXm+eZh5W1T4KKwv2ML7a17zrlI24UgL2wj27BbW4o6
         uvnRVPKfIf/kJ1lYi27ALH5PVsPuhxcuWDQmoxou40+RiD1DdihGePI/qivGIXHkIyDU
         kHTCeR9SMW/tPFzci5Q4E3f1Wzuppmizo2UzPxMn1BYXQkbKDaNDmXey/fY+ISoHoLx5
         vH/A==
X-Gm-Message-State: AOJu0YzCT8d0555j30BooNKsQDZhP2IJwD6IP+dN7M+RwRp0RKo10831
	vzbDT0xc0RhRIj8MsdQtqbJUaBtAt3R5gmIoiD4aUC43TTvs5Orzqz8=
X-Google-Smtp-Source: AGHT+IF/IjGjQ4CccY72embJ0E7J5SOhaEHadQOj4xJSECL/NYhZUXY8JBLn2grNTu1cD6r3UbgbFjX2fg+Qi9m1Wek=
X-Received: by 2002:a2e:8746:0:b0:2bc:e961:a383 with SMTP id
 q6-20020a2e8746000000b002bce961a383mr4408637ljj.52.1695305680489; Thu, 21 Sep
 2023 07:14:40 -0700 (PDT)
MIME-Version: 1.0
References: <20230921122352.2307574-1-george.dunlap@cloud.com> <20230921122352.2307574-2-george.dunlap@cloud.com>
In-Reply-To: <20230921122352.2307574-2-george.dunlap@cloud.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Thu, 21 Sep 2023 15:14:29 +0100
Message-ID: <CA+zSX=bmb5c3LR4u63kaZCBuMK1tvzLxaw=yenerrsV0=61XVA@mail.gmail.com>
Subject: Re: [PATCH v2 2/2] credit: Don't steal vcpus which have yielded
To: xen-devel@lists.xenproject.org, Andrew Cooper <andrew.cooper3@citrix.com>, 
	Marcus Granado <marcus.granado@cloud.com>
Cc: Dario Faggioli <dfaggioli@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 21, 2023 at 1:23=E2=80=AFPM George Dunlap <george.dunlap@cloud.=
com> wrote:
>
> On large systems with many vcpus yielding due to spinlock priority
> inversion, it's not uncommon for a vcpu to yield its timeslice, only
> to be immediately stolen by another pcpu looking for higher-priority
> work.
>
> To prevent this:
>
> * Keep the YIELD flag until a vcpu is removed from a runqueue
>
> * When looking for work to steal, skip vcpus which have yielded
>
> NB that this does mean that sometimes a VM is inserted into an empty
> runqueue; handle that case.
>
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>

Marcus,

Just wanted to verify my interpretation of the testing you did of this
patch several months ago:

1. On the problematic workload, mean execution time for the task under
heavy load was around 12 seconds
2. With only patch 2 of this series (0004 in your tests), mean
execution time under heavy load was around 5 seconds
3. With only patch 1 of this series (0003 in your tests), mean
execution time under heavy load was around 3 seconds
4. With both patch 1 and patch 2 of this series (0003+0004 in your
tests), mean execution time under heavy load was also around 3 seconds

So both patches independently exhibit an improvement; but the combined
effect is about the same as the first patch.

Assuming those results are accurate, I would argue that we should take
both patches.  Does anyone want to argue we should only take the first
one?

 -George


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 14:56:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 14:56:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606491.944422 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjL6E-0008D5-JB; Thu, 21 Sep 2023 14:56:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606491.944422; Thu, 21 Sep 2023 14:56:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjL6E-0008Cy-FV; Thu, 21 Sep 2023 14:56:14 +0000
Received: by outflank-mailman (input) for mailman id 606491;
 Thu, 21 Sep 2023 14:56:13 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjL6D-0008Co-Bd; Thu, 21 Sep 2023 14:56:13 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjL6C-00022d-US; Thu, 21 Sep 2023 14:56:12 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjL6C-0005pB-J6; Thu, 21 Sep 2023 14:56:12 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjL6C-0006jk-IW; Thu, 21 Sep 2023 14:56:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=XeQOGaH/JHtHyTrtUW0KJjw/uEJHCYUKgGItvhhDOr8=; b=SrspeXUK09FEdHK0KkxgiTHjox
	Oa7hSvaU6lzJ1SGLz4fMuQ89eylhJT/Zd6BrXENjDR9kJqypSMkweCRw0NHzXNdcj+/C1clDD9owL
	YUXbemEx7K+8ZPy5b6DxgZQbG7iaUy+i/BEff+NdESNu3cFHVT/2cGV6cHQlq2XzIkVA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183104-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183104: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=39113a8a23fb932b1de81ac83463c16af98d533d
X-Osstest-Versions-That:
    xen=932c3c8b4bd5cb7e3a2fe78105a80928307c9858
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 21 Sep 2023 14:56:12 +0000

flight 183104 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183104/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  39113a8a23fb932b1de81ac83463c16af98d533d
baseline version:
 xen                  932c3c8b4bd5cb7e3a2fe78105a80928307c9858

Last test of basis   183090  2023-09-20 20:02:05 Z    0 days
Testing same since   183104  2023-09-21 11:00:26 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   932c3c8b4b..39113a8a23  39113a8a23fb932b1de81ac83463c16af98d533d -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 15:05:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 15:05:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606498.944431 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjLFJ-0002Bd-FK; Thu, 21 Sep 2023 15:05:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606498.944431; Thu, 21 Sep 2023 15:05:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjLFJ-0002BW-Cc; Thu, 21 Sep 2023 15:05:37 +0000
Received: by outflank-mailman (input) for mailman id 606498;
 Thu, 21 Sep 2023 15:05:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=iWz/=FF=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qjLFJ-0002BQ-1w
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 15:05:37 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 50d47f41-5890-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 17:05:35 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-82-50-59-70.retail.telecomitalia.it [82.50.59.70])
 by support.bugseng.com (Postfix) with ESMTPSA id 4FEAF4EE073F;
 Thu, 21 Sep 2023 17:05:34 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 50d47f41-5890-11ee-9b0d-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH] xen/emul-i8254: address a violation of MISRA C:2012 Rule 8.3
Date: Thu, 21 Sep 2023 17:05:28 +0200
Message-Id: <be245ab9b3805cdb1ba93695b95eeab24d432d6a.1695308350.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function declaration and definition consistent.
No fuctional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/emul-i8254.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/emul-i8254.c b/xen/arch/x86/emul-i8254.c
index 41ec4a1ef1..c48a3606a2 100644
--- a/xen/arch/x86/emul-i8254.c
+++ b/xen/arch/x86/emul-i8254.c
@@ -572,7 +572,7 @@ static uint32_t speaker_ioport_read(
 }
 
 static int cf_check handle_speaker_io(
-    int dir, unsigned int port, uint32_t bytes, uint32_t *val)
+    int dir, unsigned int port, unsigned int bytes, uint32_t *val)
 {
     struct PITState *vpit = vcpu_vpit(current);
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 21 16:03:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 16:03:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606507.944444 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjM9J-0005B6-OJ; Thu, 21 Sep 2023 16:03:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606507.944444; Thu, 21 Sep 2023 16:03:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjM9J-0005Az-Lh; Thu, 21 Sep 2023 16:03:29 +0000
Received: by outflank-mailman (input) for mailman id 606507;
 Thu, 21 Sep 2023 16:03:28 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=wI4U=FF=citrix.com=prvs=62171ef32=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qjM9I-0005Aq-6U
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 16:03:28 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 647c1590-5898-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 18:03:25 +0200 (CEST)
Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 21 Sep 2023 12:03:16 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB5901.namprd03.prod.outlook.com (2603:10b6:a03:2ae::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.21; Thu, 21 Sep
 2023 16:03:11 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::cfc3:da2b:a0d3:e744%4]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 16:03:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 647c1590-5898-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695312205;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=Kj5gGd/NNQU3AW13KD1sVixPgYUNyYMhpJLHRE0YC54=;
  b=Ruo2MoOYduMJB+jcd0KSrv3G3IHc7KifZJ4ZOv6/04LqQ8E32jT/vVSr
   nKuoQHpVqFrNUfbJ/7bmESc1814aNhVrSdD+Gr9hm3y/yJClNtk7FHDAC
   amhh0d3n6SDHy6PX3xrfLYElGM5aujfszAUhRt/28c1MYwSiDPNu1W/Xy
   4=;
X-CSE-ConnectionGUID: 9841ItYGS8mi5Lq598llyQ==
X-CSE-MsgGUID: ivEFSOs+TN2rsAmZJ/NAew==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 126152516
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:6qWvnavDmerR7eJmwiBI0px2PefnVPZfMUV32f8akzHdYApBsoF/q
 tZmKWmAPvuPajOmeItzbIrj8UoE7JLdyYVkT1M6rC01QiIV+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5A6EziFPZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMweWBRNzGfts2NkLe6F81125VzKM36BdZK0p1g5Wmx4fcOZ7nmGvyPz/kImTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgP60boq9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAtxLSeflr6ACbFu7x3I+JiYxThiHh6OjkWe7afAYD
 WUZ5X97xUQ13AnxJjXnZDWGp3qDsg8ZSsBnOeQw4wGQyYLZ+w+cQGMDS1ZpeNEg8cM7WzEu/
 luIhM/yQyxitqWPTnCQ/avSqim9UQAOMWIdbDUYCwsE59Xuqps6iB7nR9NvVqWyi7XdPjX9w
 CuDqiQksJwVgdQWzKWw/V3BgDWEq4DAS0g+4QC/dmCv4x59ZYWlT5e18lWd5vFFRK6bU12As
 X4si8WYqucUAvmljzeRSe8AGLWo4fetMzDGh1NrWZ47+FyF5HqLbY1WpjZkKy9U3t0sfDboZ
 ArZv1NX7ZoKZX+yN/YpM8S2FtggyrXmGZL9TPfIY9FSY593Mgia4CVpYk3W1Gfo+KQxrZwC1
 V6gWZ7EJR4n5W5Pl1Jam891PWcX+x0D
IronPort-HdrOrdr: A9a23:ZCGila0XBZabI+dKqrnmhAqjBLwkLtp133Aq2lEZdPU1SKClfq
 WV98jzuiWatN98Yh8dcLK7WJVoMEm8yXcd2+B4V9qftWLdyQiVxe9ZnO7f6gylNyri9vNMkY
 dMGpIObOEY1GIK7/rH3A==
X-Talos-CUID: 9a23:OtICS2NH9y2U5O5DCXk7rW8IK+8eInjckVPJfh7oDWJ4cejA
X-Talos-MUID: =?us-ascii?q?9a23=3AjYa6ug0TDgmFP7rVHphxSPnqNjUj4rqDJnsqitY?=
 =?us-ascii?q?6nZOeLgV1CRXaqh26Xdpy?=
X-IronPort-AV: E=Sophos;i="6.03,165,1694750400"; 
   d="scan'208";a="126152516"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Hob1+uYS/X1jnvbhLVvphIjTBYbb1FRmjedmLN6s9OAn7MitmVdMnE9BV2971XAMmFO62t+oIqbQEfqz+dOjMWo+4uFO2UHKJnYGxfAlfvQn5sN5Zs3YH1W9g3Iy+W3GtIrOyWs+bqcJ/7SSOqD94eQNIr0oaeODTGKi4CKVZEK1lpe2QZiKhgc2QUnqgJMa8uuWnGFarfWBGHCXulxBAHQdvyRRsVJwmTc4M1jzN+y5AIJ18IzF6v9te3N+DnCs/Uuu4X+O0AhzOgkMphxISgqQvn1uuB4asGp33DcQ5PAmxwftq9NEIq51s26SRXKzXJPf3ufzixv+vHM3JN9R7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=asL+1Ribng+yURLV9h70yjQN7omSjl581XJ/JU+tp4o=;
 b=SQGqBmb+FAANh9EPcAkcK9OR8e738gPTUPMt3KQsY64TrCec11RPn+anFhH5YApjlw+7d9ip4XVwijrhrtqKmxKOa11eywZCtZHdJT+RPFkQYHUhFy2S4jwG5dqTnS2bIIRkW6/yQW8FS869PJ6FMe4MImOBUi3kJ+N9/K9nQL3ZY/gRbwYngtKnmwWjtV5+k8R5xhkI1TQmXcD4HyOkdSexIVWVOlEZDNlJKm+KNTwzfXaFCptncFuM8AW8j7V3oXBEAwUgHbpG8wwmsWEZop3zT1eB9U/2vgLP5CTNvp9XBZ1snU3/+sPuKO5Kpc+WgENRB2+/kfQIVVU2TVMnxg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=asL+1Ribng+yURLV9h70yjQN7omSjl581XJ/JU+tp4o=;
 b=bJvxYUIdI5WSGC/nvox2l7u8sux3R5pAVzg/F1h+TVsDSUCt2d+mM7DJ3R9Z8sIRKGSvcRtB8evlwUgNMZubn3GW4jn5lvmC/DPdjFXcCSzpoOx9AAE7HuDXYDt0yG2nX/VojqJwdxsdQeap7i+z3nmxoUYe87mpoKxbWeMJXBE=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 21 Sep 2023 18:03:04 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v9 12/16] vpci: add initial support for virtual PCI bus
 topology
Message-ID: <ZQxpODSDlTfksrnU@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-13-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20230829231912.4091958-13-volodymyr_babchuk@epam.com>
X-ClientProxiedBy: LO4P123CA0607.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:314::9) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB5901:EE_
X-MS-Office365-Filtering-Correlation-Id: 8961155b-02b3-49b9-e9b2-08dbbabc40e8
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1Eiq+B9E/eHVghl13nZZLt7HiM/lkk3plFJLfxIM00lLxNs1OmMeFa9V0d2wIcDNd+6Cp9ZMxdq3paZx8WnTB078ffmvvSto7S3nRYSdaU2uOUdjbeK7Ny+MfT3eMqwp+fapZUNG35LjCUSX/QQRvO/XjjwvFE47fg0DvcLlHrLUlAClPp2bMvGnfUvBf8VEQD75H3yY9sRQp9PQXtUadVmNXYXpfRVdJ70MAoQQms37Mm778uftMh1ycnT7HV4RIDBoJ4rYKYEgWe9hqVrzYqknbgfN2hQm0nGxFQXeTB2SU8KZPWAa1t1zPcKsqU+ly82utup48IZgulUtbmlVDC+ggpgqsHO7fUUaHLzK/84aofHviuzjRocJ61u3I6Vkul5t16/jbQj/KPBsUeLAjwAj4i2iKuw99myj40S9xPV5gnRUZT4PBxnddJ2voTDYCwhCPysnMjDMW/9YR3+tHM7yDmbbmlLSLsusatitiWNEIpQpX/UlnmNVES3mqgP/3MP5d4tL3lWsrxRitSABPxCvqKNI/WmcTRvCSNtRi0LYZzMmar9JZ8IXEDkVu38Q
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(39860400002)(136003)(366004)(396003)(346002)(376002)(451199024)(1800799009)(186009)(2906002)(5660300002)(26005)(41300700001)(7416002)(66476007)(6916009)(316002)(66556008)(54906003)(66946007)(8676002)(4326008)(8936002)(478600001)(6506007)(6486002)(6512007)(9686003)(85182001)(6666004)(83380400001)(38100700002)(33716001)(86362001)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T1BZSXdsaFBZSmlmR2M4Um1uRC9TeVlJNnpHT0ZCcVUzRlVTMWhFekhZTTU1?=
 =?utf-8?B?aHpMOG9ocWRGT3A0WHpaVjUzZUNzU0dsU3c4ekJ4N3FCaTdSbVlrMURvekpU?=
 =?utf-8?B?WlNyS1AxcGhJaHpNZkpPMFFIcXRRNTVKWHNONXlRUjF0MnQrUHhmQ3ZhTkl4?=
 =?utf-8?B?eUVHSU5kK1hmQ0JEdGQzaHg3aWtjZ0FZSjY3STZ1Q1JoK003bGVOVHFyY3RM?=
 =?utf-8?B?dDdNaUY5MzlvK1JqbVl6TTBWS0ZCOGdNTFpuVHk2OGZhZXNiS2RIc1VQU0Jp?=
 =?utf-8?B?V2xob3M4dExmcFpSbGJQUEhXSWY3RlRYZit0UWhRYnJtVG1qMStnUmFJc1dT?=
 =?utf-8?B?dExpMGNiS2c0TE5lVXVBT0JaRGNyRlFwZXVSSXNrSlo2ZWRkWjR3N2FnOFo5?=
 =?utf-8?B?VzEyN3ZoaXhPTDQrakpHdkYrU2xldEY3M1Z3ZTJOM1ZYRk1YVzduT3R1Vmxi?=
 =?utf-8?B?NWhmUHhOZVF2L2k3eVpkZmJCRHJnZENVZnlIMFgvcDVacGl0Z2ozTmxJcjBu?=
 =?utf-8?B?dUxLcVczOXFnRjFSazA4MVgyUTNsRFNxODJjMFRqSEdxTXlEMEhPSmI2SUtr?=
 =?utf-8?B?K0lDQVhMZEM0RVpxcHNXQ0dkUmsrZ1FacXpaYTRYUTB2Tm9sdDYraGc0clU3?=
 =?utf-8?B?dldlYit4d1JHQmNBNFFkcXNzRnNueDZaZE9mdWJET1lJMEthOW5Od2V5bUQr?=
 =?utf-8?B?UW04U2psSjZuSnhNNW1wTUR6cnJHR2s2WWxoMHQrbG5MTm9wV054aXFicnNj?=
 =?utf-8?B?Q3dCajRkeUxnWFZ5clFOejl6OTJWS3ZSMmlBUEkwVUNQWlRxM0JNaWUrUXds?=
 =?utf-8?B?aG9Pc21Banh1OUlhTGQ0SkQ0R2Q5cXRKWmlMVVh1cUpwTmIvQmZMWHEwK1Ar?=
 =?utf-8?B?dVNyUDJ6VjVGcHFoRzhlTlBFRU1qa3E2cXM5enlJVVErRDkzNHNvbmFHZEFS?=
 =?utf-8?B?TUNVSXVlT25YQXpxL2ZnTVRDMnFhbWJucjY1bEZTa0ZRbHpEaGFoUklqeGJt?=
 =?utf-8?B?ZGd6UFBuQ0ZMSlF5MFF0amIwMUZUNm9iSmxqa3YxejdrdFRiVTZsRTJOczRK?=
 =?utf-8?B?LzFtS2RVcUVFNFlCdTh3QkRVUXdldDA1V1RpVWIzbjFtSGI2aFFSVkEyUGdU?=
 =?utf-8?B?M3MrVng3TWdNcU9xU0FvZ2tEa1g3ZE5QdzNYZGJMa1hFdkFNRU9EUDQySDFP?=
 =?utf-8?B?bktsYU9LMzJMQWZQdnRFWktBR0JRMVB6UmNoMlRxdmI2ZFBNbEJBVDVOcFY1?=
 =?utf-8?B?OVh2SzR2VGlRNnpUaUt0M0NZUTFYRldzQnk4WU5FaWJGQUhjbUZVcUFOR3dV?=
 =?utf-8?B?RGJGb3kyc3V1dG12OHNQVVRvN3d6M1Z0VlJLL1JNUWVQNkViWURraFdvM1c3?=
 =?utf-8?B?Y2FLQm1QeVlSUkhyL3NtbDRqU3NmcGxHdm16dkRhd05WUGVBN1pLUUVkdnJJ?=
 =?utf-8?B?QlFCUFhmNjNsckV2U09HRWx2VDVTQ0RxODVUcUNocjU5TW9UK1RhbDVFRWgz?=
 =?utf-8?B?WEtLUGtKSE1TUFdqYllYN1RwMjNyTGNLdXkxaW1EMURpUG0yWVlvY3FBY1p4?=
 =?utf-8?B?UFdRUnhLSnRwNDhuRmFCcmozdFhIT1VXdjh3endVbTF4Z2Z3T2pPZzhaMkll?=
 =?utf-8?B?QlV6amUzQ2NORDZRY0QvQlU5cU01c1dDTkt2R3BTZTY5bXZVaVF5bkUrSU1l?=
 =?utf-8?B?S3dJWGlvNUg3R3Q4OEd6cVFLUTEwK21OR2ZEaGlzM1NkN2lRSUsweWg0QnRM?=
 =?utf-8?B?TXM2M3d2anUvajZTU3p0UTcydWRyQk1GUTUxZlZRcjRFa1NiZEFzWE5mQlpR?=
 =?utf-8?B?RGhKQU9GUTk1SnVWdkppQUV4K0k0ZHZlaHdkMTRYYkZ6bU5LNUkzdHpmMnRq?=
 =?utf-8?B?TUtoazVnNG94dXZIbndqRUtzb1hJRjFtUFJGd3N6Mm1maGQ3TmlNd205TzhV?=
 =?utf-8?B?UkRibng2cXFqb2ExZGFHSGFNeEtKMytTOXg4MG4rNDZQbXhTb2ZWWjhoNUYx?=
 =?utf-8?B?VVhSWU1uN28xaHZldVNPblBPVE9xVTIwazZyWlNlcnVERGtZY1pPbUlKSzgw?=
 =?utf-8?B?TXJ4ZWFsTE9RUXB5bkJmblIwVm93RDZhS0pyZlowNjdoZ29PY2FvQzFwNXU2?=
 =?utf-8?Q?fjU7Lmj7Fb0kdUyq4+DGvCaCF?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	b89cbYC9LhsAd5HhBCOnHyAqdAGHjSk+JlzOu/rVo5+E2SU8uqo6WLYmvlx1YAH767YVzjYfY6MAPrgMwAfqxJuJ3pcbgwdqoU4CWSsNTzi8xSOnQWb1WoLWwcKno342i8C7gCOrLjc1WjCrkM/W4oayPXbozJiDIFfSXPfi9dl49meiYTiZwTjpgEV8nxykE3+xlOZRKAq5UUHaUJA1oUQbaSVnfSaF3jnvfeuf4DeU1o8aNkVaS4ebojzguTdDC0UdbC50igmjxD3uEQ/ME6EfJbig77NmKnQlI/zIaNUBnklhnzZnDTMRD4dMhsFdOMqz5i8i8g3m/1kgrRdQ8M0AfnbgaKq94RS+vwn1xFn9Ui3jesbSeWuwaph1I4vJ5EveN5+EL5yGd+51w/QKPMMjXUE/JJ129k0/MvFzBp2mpqI0rLk6XA2slW/Rm3a+BRGW23BJaA8VELCwQlquA9kmEa7vVvqMTGQgniXmSTjJPJ+SlNjC/Qj3X9QWsfTCm9S0kzrPuAf5pxnmua4Lk8CTj8HM+0U/Krt3p1b0gBS9HUD1Ltri4XKHZsGrN1Z4V3PBln6a9XmLzVQiVXbA9kwzLHek9LYF41da5mRWkXEySBG/PivWp/W05G2nyjODgIsZKwdfNjVpuczCKRJW945YyqbQNg7qZOfJNe80PtJeAxWq3tOXHj0LP++vkQvu/Pb15oFNBjti6E52fJ0VItVqJWYfAJtItAz+sp4LnEAkmsl3upMrN8v8JPRbMMusXdxu/0LJwg85q0rh8DEMJLwLxQ2/VtKphVLao3Z99wXrW9XFOgwZG1vzz9NoiLmLzm7XHyTthhw8IHT2ThRhBcunIGk10hF8vafEjr/izm8AwLsebBmadbad915BiYj8+6rCRbPQ5IG2NqjkRPgsiA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8961155b-02b3-49b9-e9b2-08dbbabc40e8
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Sep 2023 16:03:11.7176
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JpAmqMijXAzkypOSQxYRe0CmttL3pS9A66Clcs3HZEdpaH4KI76FAQ98n9r8L+G4Ab+V7paxtGw3yMDrnkz6rA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5901

On Tue, Aug 29, 2023 at 11:19:46PM +0000, Volodymyr Babchuk wrote:
> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> 
> Assign SBDF to the PCI devices being passed through with bus 0.
> The resulting topology is where PCIe devices reside on the bus 0 of the
> root complex itself (embedded endpoints).
> This implementation is limited to 32 devices which are allowed on
> a single PCI bus.
> 
> Please note, that at the moment only function 0 of a multifunction
> device can be passed through.
> 
> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> ---
> Since v9:
> - Lock in add_virtual_device() replaced with ASSERT (thanks, Stewart)
> Since v8:
> - Added write lock in add_virtual_device
> Since v6:
> - re-work wrt new locking scheme
> - OT: add ASSERT(pcidevs_write_locked()); to add_virtual_device()
> Since v5:
> - s/vpci_add_virtual_device/add_virtual_device and make it static
> - call add_virtual_device from vpci_assign_device and do not use
>   REGISTER_VPCI_INIT machinery
> - add pcidevs_locked ASSERT
> - use DECLARE_BITMAP for vpci_dev_assigned_map
> Since v4:
> - moved and re-worked guest sbdf initializers
> - s/set_bit/__set_bit
> - s/clear_bit/__clear_bit
> - minor comment fix s/Virtual/Guest/
> - added VPCI_MAX_VIRT_DEV constant (PCI_SLOT(~0) + 1) which will be used
>   later for counting the number of MMIO handlers required for a guest
>   (Julien)
> Since v3:
>  - make use of VPCI_INIT
>  - moved all new code to vpci.c which belongs to it
>  - changed open-coded 31 to PCI_SLOT(~0)
>  - added comments and code to reject multifunction devices with
>    functions other than 0
>  - updated comment about vpci_dev_next and made it unsigned int
>  - implement roll back in case of error while assigning/deassigning devices
>  - s/dom%pd/%pd
> Since v2:
>  - remove casts that are (a) malformed and (b) unnecessary
>  - add new line for better readability
>  - remove CONFIG_HAS_VPCI_GUEST_SUPPORT ifdef's as the relevant vPCI
>     functions are now completely gated with this config
>  - gate common code with CONFIG_HAS_VPCI_GUEST_SUPPORT
> New in v2
> ---
>  xen/drivers/vpci/vpci.c | 69 +++++++++++++++++++++++++++++++++++++++++
>  xen/include/xen/sched.h |  8 +++++
>  xen/include/xen/vpci.h  | 11 +++++++
>  3 files changed, 88 insertions(+)
> 
> diff --git a/xen/drivers/vpci/vpci.c b/xen/drivers/vpci/vpci.c
> index 412685f41d..b284f95e05 100644
> --- a/xen/drivers/vpci/vpci.c
> +++ b/xen/drivers/vpci/vpci.c
> @@ -36,6 +36,54 @@ extern vpci_register_init_t *const __start_vpci_array[];
>  extern vpci_register_init_t *const __end_vpci_array[];
>  #define NUM_VPCI_INIT (__end_vpci_array - __start_vpci_array)
>  
> +#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT
> +static int add_virtual_device(struct pci_dev *pdev)
> +{
> +    struct domain *d = pdev->domain;
> +    pci_sbdf_t sbdf = { 0 };
> +    unsigned long new_dev_number;
> +
> +    if ( is_hardware_domain(d) )
> +        return 0;
> +
> +    ASSERT(pcidevs_locked() && rw_is_write_locked(&pdev->domain->pci_lock));


Do you need to check for pcidevs here?  I would think d->pci_lock
would be enough to protect the virtual allocation device bitmap.

> +
> +    /*
> +     * Each PCI bus supports 32 devices/slots at max or up to 256 when
> +     * there are multi-function ones which are not yet supported.
> +     */
> +    if ( pdev->info.is_extfn )

I think you are missing a !pdev->info.is_virtfn, as is_extfn &&
is_virtfn mean the PF it's an extended function, but not the VF we are
trying to passthrough.

> +    {
> +        gdprintk(XENLOG_ERR, "%pp: only function 0 passthrough supported\n",
> +                 &pdev->sbdf);
> +        return -EOPNOTSUPP;
> +    }
> +    new_dev_number = find_first_zero_bit(d->vpci_dev_assigned_map,
> +                                         VPCI_MAX_VIRT_DEV);
> +    if ( new_dev_number >= VPCI_MAX_VIRT_DEV )

The > is not required, as find_first_zero_bit() will return
VPCI_MAX_VIRT_DEV if the bitmap is all set.

> +    {
> +        write_unlock(&pdev->domain->pci_lock);
> +        return -ENOSPC;
> +    }
> +
> +    __set_bit(new_dev_number, &d->vpci_dev_assigned_map);
> +
> +    /*
> +     * Both segment and bus number are 0:
> +     *  - we emulate a single host bridge for the guest, e.g. segment 0
> +     *  - with bus 0 the virtual devices are seen as embedded
> +     *    endpoints behind the root complex
> +     *
> +     * TODO: add support for multi-function devices.
> +     */
> +    sbdf.devfn = PCI_DEVFN(new_dev_number, 0);
> +    pdev->vpci->guest_sbdf = sbdf;

You could avoid the local sbdf variable and just use PCI_SBDF(0, 0,
new_dev_number, 0);

> +
> +    return 0;
> +}
> +
> +#endif /* CONFIG_HAS_VPCI_GUEST_SUPPORT */
> +
>  void vpci_deassign_device(struct pci_dev *pdev)
>  {
>      unsigned int i;
> @@ -46,6 +94,16 @@ void vpci_deassign_device(struct pci_dev *pdev)
>          return;
>  
>      spin_lock(&pdev->vpci->lock);
> +
> +#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT
> +    if ( pdev->vpci->guest_sbdf.sbdf != ~0 )
> +    {
> +        __clear_bit(pdev->vpci->guest_sbdf.dev,
> +                    &pdev->domain->vpci_dev_assigned_map);
> +        pdev->vpci->guest_sbdf.sbdf = ~0;
> +    }
> +#endif

There's no need to set sbdf = ~0 as vpci is just about to be freed.

> +
>      while ( !list_empty(&pdev->vpci->handlers) )
>      {
>          struct vpci_register *r = list_first_entry(&pdev->vpci->handlers,
> @@ -101,6 +159,13 @@ int vpci_assign_device(struct pci_dev *pdev)
>      INIT_LIST_HEAD(&pdev->vpci->handlers);
>      spin_lock_init(&pdev->vpci->lock);
>  
> +#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT
> +    pdev->vpci->guest_sbdf.sbdf = ~0;
> +    rc = add_virtual_device(pdev);
> +    if ( rc )
> +        goto out;
> +#endif
> +
>      for ( i = 0; i < NUM_VPCI_INIT; i++ )
>      {
>          rc = __start_vpci_array[i](pdev);
> @@ -108,11 +173,15 @@ int vpci_assign_device(struct pci_dev *pdev)
>              break;
>      }
>  
> +#ifdef CONFIG_HAS_VPCI_GUEST_SUPPORT
> + out:
> +#endif

That's ugly, can you use the __maybe_unused attribute with a label?

>      if ( rc )
>          vpci_deassign_device(pdev);
>  
>      return rc;
>  }
> +

Spurious change.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 16:11:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 16:11:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606515.944455 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjMGs-0007TD-KL; Thu, 21 Sep 2023 16:11:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606515.944455; Thu, 21 Sep 2023 16:11:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjMGs-0007T6-Gv; Thu, 21 Sep 2023 16:11:18 +0000
Received: by outflank-mailman (input) for mailman id 606515;
 Thu, 21 Sep 2023 16:11:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=8Y+Y=FF=kernel.org=pr-tracker-bot@srs-se1.protection.inumbo.net>)
 id 1qjMGq-0007T0-Uf
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 16:11:16 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7cee20df-5899-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 18:11:14 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by ams.source.kernel.org (Postfix) with ESMTPS id E884BB82153;
 Thu, 21 Sep 2023 16:11:13 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 969B7C5FB20;
 Thu, 21 Sep 2023 16:11:12 +0000 (UTC)
Received: from aws-us-west-2-korg-oddjob-1.ci.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by aws-us-west-2-korg-oddjob-1.ci.codeaurora.org (Postfix) with ESMTP id
 79512C41671; Thu, 21 Sep 2023 16:11:12 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7cee20df-5899-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695312672;
	bh=LtqP847DUn2/wB0A+heTNMVWXmoSvHkxv/DokWcELVw=;
	h=Subject:From:In-Reply-To:References:Date:To:Cc:From;
	b=f4mUg7AjTTouzrOrc1jDBxlW3nbK4k3U5Lut8muygCcuVdbY2O99w0rOS3tW3iXFo
	 AxhUoFo+BnZc+Hy7WOFhdXSDMuwIJrroyNlxwNcqW+z8n6GsAXxw3iH/YK6U+IKSP4
	 t0rI7qyo+mO2yjeMjLw5izrgKanXjRhPIgbaJ0skCGw0ekpMQicGeGKdOGn7jjmgbu
	 y9FiiYnEM7gdMRRqiPmcNqVa8ReriOfeGdZ24WDjdWfFpbk5qsSKw0cOsdyCBxHj/a
	 kSbPQXdOR9RIod+xm9Q0jI+voVISHQs56VsQCLM5h+HlNmqdRRk666fZPJheqBpnCa
	 riEGbdihoh5cQ==
Subject: Re: [GIT PULL] xen: branch for v6.6-rc3
From: pr-tracker-bot@kernel.org
In-Reply-To: <20230921084110.31633-1-jgross@suse.com>
References: <20230921084110.31633-1-jgross@suse.com>
X-PR-Tracked-List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
X-PR-Tracked-Message-Id: <20230921084110.31633-1-jgross@suse.com>
X-PR-Tracked-Remote: git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-6.6a-rc3-tag
X-PR-Tracked-Commit-Id: 0fc6ff5a0f0488e09b496773c440ed5bb36d1f0d
X-PR-Merge-Tree: torvalds/linux.git
X-PR-Merge-Refname: refs/heads/master
X-PR-Merge-Commit-Id: 88a174a906fe9679a26c0f69fcc022743d2c8e05
Message-Id: <169531267248.30941.16423681976609784882.pr-tracker-bot@kernel.org>
Date: Thu, 21 Sep 2023 16:11:12 +0000
To: Juergen Gross <jgross@suse.com>
Cc: torvalds@linux-foundation.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, sstabellini@kernel.org

The pull request you sent on Thu, 21 Sep 2023 10:41:10 +0200:

> git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-6.6a-rc3-tag

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/88a174a906fe9679a26c0f69fcc022743d2c8e05

Thank you!

-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 17:02:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 17:02:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606532.944509 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjN4f-000078-Rc; Thu, 21 Sep 2023 17:02:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606532.944509; Thu, 21 Sep 2023 17:02:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjN4f-000071-OM; Thu, 21 Sep 2023 17:02:45 +0000
Received: by outflank-mailman (input) for mailman id 606532;
 Thu, 21 Sep 2023 17:02:44 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjN4e-00006r-7X; Thu, 21 Sep 2023 17:02:44 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjN4e-0005X6-65; Thu, 21 Sep 2023 17:02:44 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjN4d-0005Mt-Tm; Thu, 21 Sep 2023 17:02:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjN4d-0008Ga-Q6; Thu, 21 Sep 2023 17:02:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=hHMKEY6pan2viN58TOU3ooMXX0YtAnuYPdIKt5+J16g=; b=Tq+7PADVi3wN3jVA/0BNoMTtlQ
	yeVsoMUmlwHuRFwby+iDexTYWVVQ1sFziFHibd1nbuk4lxv4CA73zBI0setk4dRinuc7dbS0gyIuO
	m8MqIsAw9GxscF5IgZchzeHauw8YNDpm3NbGxFmcQq3p1gU54ehpL/ZZjr3G6uTnOlJQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183102-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.17-testing test] 183102: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    xen-4.17-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.17-testing:test-armhf-armhf-xl-vhd:guest-start:fail:nonblocking
    xen-4.17-testing:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
    xen-4.17-testing:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=90c540c58985dc774cf0a1d2dc423473d3f37267
X-Osstest-Versions-That:
    xen=d31e5b2a9c39816a954d1088d4cfc782f0006f39
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 21 Sep 2023 17:02:43 +0000

flight 183102 xen-4.17-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183102/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182639
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182639
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182639
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182639
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182639
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182639
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182639
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182639
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182639
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt   16 saverestore-support-check fail starved in 182639
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail starved in 182639
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail starved in 182639
 test-armhf-armhf-xl-vhd      13 guest-start             fail starved in 182639
 test-arm64-arm64-libvirt-xsm  3 hosts-allocate               starved  n/a
 test-arm64-arm64-libvirt-raw  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit1   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-xsm       3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit2   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-thunderx  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-vhd       3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl           3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  90c540c58985dc774cf0a1d2dc423473d3f37267
baseline version:
 xen                  d31e5b2a9c39816a954d1088d4cfc782f0006f39

Last test of basis   182639  2023-09-05 22:40:32 Z   15 days
Testing same since   183083  2023-09-20 10:06:57 Z    1 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          starved 
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 starved 
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      starved 
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  starved 
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  starved 
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 starved 
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 starved 
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      starved 
 test-armhf-armhf-xl-vhd                                      fail    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   d31e5b2a9c..90c540c589  90c540c58985dc774cf0a1d2dc423473d3f37267 -> stable-4.17


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 17:17:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 17:17:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606540.944519 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjNIO-0002iB-2y; Thu, 21 Sep 2023 17:16:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606540.944519; Thu, 21 Sep 2023 17:16:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjNIN-0002i4-Vz; Thu, 21 Sep 2023 17:16:55 +0000
Received: by outflank-mailman (input) for mailman id 606540;
 Thu, 21 Sep 2023 17:16:54 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qjNIM-0002gb-Gi
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 17:16:54 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qjNIL-0005wX-Rj; Thu, 21 Sep 2023 17:16:53 +0000
Received: from [54.239.6.189] (helo=[192.168.8.60])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qjNIL-00020B-Gi; Thu, 21 Sep 2023 17:16:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=5D5IQFe3scphlDA4CFpjKIYmS4xHMpFoBS/wknH36xM=; b=s7wY4rzw5FWvP3xRX2GGgJJOA9
	pmUhKw+sMO5ocGhOT4QkvZ18WJCQerjBdHIG/4MRLCuL7pMSnHDFI40C6ff44QHaUhJ6t2n8QnwEf
	07hT1WyJTC38D4zS7GXRwN92ds1aovabikdyqeBz8XGYqH7Z9jYZ2AQu7N0llgpnqLnU=;
Message-ID: <0e8789b2-0b0e-4652-a1ee-b2d9efd804b9@xen.org>
Date: Thu, 21 Sep 2023 18:16:51 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm64: head.S: Fix wrong enable_boot_cpu_mm() code
 movement
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>, Wei Chen <wei.chen@arm.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Julien Grall <jgrall@amazon.com>
References: <20230916040649.1232558-1-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230916040649.1232558-1-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 16/09/2023 05:06, Henry Wang wrote:
> Some addressed comments on enable_boot_cpu_mm() were reintroduced
> back during the code movement from arm64/head.S to arm64/mmu/head.S.
> We should drop the unreachable code, move the 'mov lr, x5' closer to
> 'b remove_identity_mapping' so it is clearer that it will return,
> and update the in-code comment accordingly.
> 
> Fixes: 6734327d76be ("xen/arm64: Split and move MMU-specific head.S to mmu/head.S")
> Reported-by: Julien Grall <jgrall@amazon.com>
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>

Reviewed-by: Julien Grall <jgrall@amazon.com>

I plan to commit this patch in staging so it is part of 4.18. Please let 
me know if there are any objection.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 17:55:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 17:55:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606545.944528 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjNtM-00006B-Th; Thu, 21 Sep 2023 17:55:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606545.944528; Thu, 21 Sep 2023 17:55:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjNtM-000064-Qx; Thu, 21 Sep 2023 17:55:08 +0000
Received: by outflank-mailman (input) for mailman id 606545;
 Thu, 21 Sep 2023 17:55:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=9GIt=FF=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjNtK-00005x-Pg
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 17:55:07 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.120])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fc6e0c87-58a7-11ee-9b0d-b553b5be7939;
 Thu, 21 Sep 2023 19:55:03 +0200 (CEST)
Received: from orsmga008.jf.intel.com ([10.7.209.65])
 by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 21 Sep 2023 10:55:00 -0700
Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15])
 by orsmga008.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 21 Sep 2023 10:54:59 -0700
Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by
 ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Thu, 21 Sep 2023 10:54:59 -0700
Received: from orsmsx602.amr.corp.intel.com (10.22.229.15) by
 ORSMSX612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Thu, 21 Sep 2023 10:54:59 -0700
Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by
 orsmsx602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Thu, 21 Sep 2023 10:54:58 -0700
Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.105)
 by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Thu, 21 Sep 2023 10:54:58 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by CH3PR11MB8465.namprd11.prod.outlook.com (2603:10b6:610:1bc::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.31; Thu, 21 Sep
 2023 17:54:56 +0000
Received: from SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61]) by SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61%5]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023
 17:54:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fc6e0c87-58a7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695318904; x=1726854904;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=lZI9EHcbdOxip7edtlh2mYkLMLJrHlYZxeQh2OLaPQc=;
  b=cLUHP+oBhQPvI7Vy+7C3h0XCTMrQeIk99xfpeUU5Cs3wbXszCmXHc3z/
   F25MaxYzHat6CMTZ/ORQUwTVmNiHRfsRzLJxEUjNhlPgGfe9b8MNA26AJ
   u2kNvTQ6+MRWnLrzODvxGddRK1e0idGYOOTUE5Sx3nB++RxRqvfujQ6hR
   +GmQGeL1OuxX3TZTpE9XnJLcZJubGsdevXD5VBxf6v74pUr8nzAJwuDAp
   V6qGQRQ3Uok2H9gkR6eh622WThj3dk8tGl4wJVDPSLYTKjISOhECh1iC3
   CuY6Q5nAxJ6mO1/XIjhKOo9A9ij55ANfmtGNkYjK4CpbyLluSUaMKtwdV
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10840"; a="379488319"
X-IronPort-AV: E=Sophos;i="6.03,166,1694761200"; 
   d="scan'208";a="379488319"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10840"; a="776534413"
X-IronPort-AV: E=Sophos;i="6.03,166,1694761200"; 
   d="scan'208";a="776534413"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=klSKAOkH4VvXZ4+Yx+0pEt9Z77ayspbMF5JWe/2mau3xhJW+4KwLGWwPwbG0+TjXLNXIZ4jDPYA1lxzlzKwk787rnKQxo1r0b1PDm2p8TzyBgcyfBpWlrZRdmIZTZXLPEYgST1blxPznmkHkQeqZ3L/rnaN/Y4gZoNAoLWlgcE4MlbkNtt8Tkh5m97n8/s6BMWemwgB62GkFrpdEyt/gxRI+OkTwjsv1qIWvLsgxmfBHecmWE7IYG7ExfYFdZOtSDAg8z6auPxx8OCHonLcCrmO116pO4+TnxPPkwmt1mCax0ebMqchp/id3KD3mrlJglihtJgm/D5bI6XXV4kEhOQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=lZI9EHcbdOxip7edtlh2mYkLMLJrHlYZxeQh2OLaPQc=;
 b=apro2Vgs5t5N3Iyz5A5u0R34ojv8+KCqEVwN02oi3GbUGZdX7CjH1tu2d3EjY6r+0ArpS4ONnCG6PjqPNv/d6b6k/nM6En3mValhUP0ubvtojCEiwoyxFE2RhkPWriianAMBA4KcGxaCuFIov5U/Iod7VPuLcXGth+qCyESIATowdkSOxCZrmVYxzU8J+ZQ/8BPACsji9WD2QV7mxGo8PGxivt4XvxoekKbvmGd8bbyChsVybDf38dIqEWxpDcgZCQyLKrEdZNobq6AZl3Qib1ZwlVos/WvuIT0kOShmJnxLbX5tiA2+/4hi59hVp3Dle0WIOm+cWVmnqqcRIDc2Lw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Li, Xin3" <xin3.li@intel.com>
To: Thomas Gleixner <tglx@linutronix.de>, Nikolay Borisov
	<nik.borisov@suse.com>, "linux-doc@vger.kernel.org"
	<linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
	<linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
	<linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
	<linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "mingo@redhat.com" <mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>, "x86@kernel.org"
	<x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>, "Lutomirski, Andy"
	<luto@kernel.org>, "pbonzini@redhat.com" <pbonzini@redhat.com>,
	"Christopherson,, Sean" <seanjc@google.com>, "peterz@infradead.org"
	<peterz@infradead.org>, "Gross, Jurgen" <jgross@suse.com>, "Shankar, Ravi V"
	<ravi.v.shankar@intel.com>, "mhiramat@kernel.org" <mhiramat@kernel.org>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"jiangshanlai@gmail.com" <jiangshanlai@gmail.com>
Subject: RE: [PATCH v10 28/38] x86/fred: FRED entry/exit and dispatch code
Thread-Topic: [PATCH v10 28/38] x86/fred: FRED entry/exit and dispatch code
Thread-Index: AQHZ5stMrcSPSIs00UmJ9LfsWvvEWbAlE+eAgAAFnoCAAIIg0A==
Date: Thu, 21 Sep 2023 17:54:55 +0000
Message-ID: <SA1PR11MB6734856675798D0C4E359619A8F8A@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-29-xin3.li@intel.com>
 <22921663-0e5e-58c0-c6c8-c45f991790ea@suse.com> <871qerj0tk.ffs@tglx>
In-Reply-To: <871qerj0tk.ffs@tglx>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SA1PR11MB6734:EE_|CH3PR11MB8465:EE_
x-ms-office365-filtering-correlation-id: 21fa82ea-9490-4bfb-077b-08dbbacbddab
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: usafrOlCoF4lwI98vzlPgF3cjsv1wxdDDZKT3gFS/W1VHSixGotx0vQCZtp4kU9Yt/xoQR3b3gxUqfu4fhaLsiyx8Js1gZY9BIUWIV25w1/uUIOQcDnrsXm3AAMFfG6hmRSumlZ42a+wezG1wJsjL9h4OP1arndkpivtj8JZBIQfutnZbRmmXLSq2Nawjt00wv4V0Qu3RkDjYzcXK19WwgtqTA0c1cNDsQPOLQDrqb8Pxr4onxWI6/upGneVIKYNjf2Lo3ta1K6RZEW5J+lv9t2GJWLha8+2axwYJ44AZtT49bYoBYmedZi5IwoYBBO4qmENMDgQYAVdgEk70QDyB/fsZAcU4oFXcALnWTdbPNx9Zkyozab30i4Tnt3twBnwAw9/fPttTT6JHUrF0LZmYPzvtz9/aEwjYN0Za2QdX0EFWQfA0lf/f1yrhX0iLavQMrOWEttXEGEFlYYeJhRLY7EUEUp8/3e35ogqMl2Z9vZIRC4G21UsEok9VTb0w6pJsUkjFPAkeX1hRjLUBB3kMwO24iX5MZVdYyM0h/BES3uvDNRqjOgh9Mdgq92/z92g54+xjU9Jn+YrYd7hvDBhkSIkb3V+VwbxtorFtJjZrgA=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6734.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(136003)(346002)(376002)(39860400002)(451199024)(186009)(1800799009)(86362001)(2906002)(7416002)(4744005)(9686003)(26005)(33656002)(55016003)(64756008)(54906003)(66476007)(66446008)(316002)(41300700001)(66946007)(66556008)(110136005)(76116006)(122000001)(71200400001)(4326008)(8676002)(8936002)(966005)(478600001)(38100700002)(38070700005)(5660300002)(7696005)(6506007)(82960400001)(52536014);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?OTg3N0JSbHplSEFmaUFTd2dzZU56TVpRamN1QTA3T1VqaHhJQnFtNnRZM3JI?=
 =?utf-8?B?b3NxRzE0N2p5ZUFab0pyemkwOHluUm5URVYzSFg1d2dTR3JzQzUrL1d0ekdL?=
 =?utf-8?B?c2dnOXpaVTdkUDZxTkc1b0lGVzRWY0VQbVBOZ2RzTEZQQzRiRFk3YmNUa3E1?=
 =?utf-8?B?aXdoNjlFTS9yQm5Sa3NGZjJ0YzU2UWMwb0FRY1BiT3h1SzEwUlMyeHpVMWY5?=
 =?utf-8?B?c2dzVG1hS0lRWThEN2hqRFFEQktmeHR4UEZiclBJdkwxeUhNRS9VUkdlTS9r?=
 =?utf-8?B?dEJLT0hEWWc1NWFtV1NwYWxtUkxoWlF4bEl6RVVKRkdMdlVnZDBIa1p3dlhn?=
 =?utf-8?B?T296Q1hjYnNTcjB2SGpXNU5IYTRmWE83TGV1NXBzbSt1dVZ3ekp2K2FleXhW?=
 =?utf-8?B?UDB0WllQZm9YZ295QXlQdkVDNXdJby9pZmFxUHBOTW1jWnU2VU54T1E1eEdt?=
 =?utf-8?B?VmtOcHF1amJZS2E3bW9RTzVDSGp1MTh2RXU0QmI2V2ZnOTcrYUNZWlM5VDN0?=
 =?utf-8?B?aFZoZkFCUVdEaFRISzAwVm5Ia0R3Ym5lbWZ6bU5wNVo0WVRFTFhWVGRBUmFk?=
 =?utf-8?B?aGFnWUhxNWc1OHU5TGlXZUR6T0pZYmd6UXcwWkdKV29QWDdDQWcrT2k2blJk?=
 =?utf-8?B?RUFvTGJBRXE5VmU4YStNNmd1ZEhwUXpJMkljTE94cnlRMWY2WUx1N0RnZytq?=
 =?utf-8?B?Tk1VaklaT0ZpNjQ3a3JWTVFNT3JlWWdOTzRUUUF3eG4wZy9tdkxCcTdSSXdY?=
 =?utf-8?B?K2RBVTBSdkcrNHB5SFozN1FndWdKOUlwbjlUTVZrUEVCMDhkZVAwUFk3QnMx?=
 =?utf-8?B?ZllEdlNGYldLVnd2TkNGc3E4TnVmdDc1bThJbDNDU1d1MkRJMEFTcnU2ZUQ4?=
 =?utf-8?B?UG1QYlVXTFcyUUVPdjU4SnpMZGd5S3pTUlVKTUVnTVBCU2V5ZVBnMU1XbGNK?=
 =?utf-8?B?cGlnaUxwR2xvcmhCNnVpTkpBSUlKb1dxVDF4N2ptaHpZSllTS0IxV0dGSGkr?=
 =?utf-8?B?Slgwa0FEVEFRQUhrSVdDME41bnluSU1oOG4weTBhaHBueFYxb3F4c1VwUVFj?=
 =?utf-8?B?aXpKZEJrN3ZHK3N4QWdISTc4b251STJjL3R1elU5eGo5bkJVQ04wSStwblJJ?=
 =?utf-8?B?SEsxaUliNXBvVFR1UUxWbGRnNVlnK1p2WWdZbzJUc0dMR2RlYUZWbnExRTcr?=
 =?utf-8?B?SEMxNllBT3J2TTVTMHcxWW9uV2ZMUkNCalNEWmVLbHc4b3JUQmdCeUNaQTRQ?=
 =?utf-8?B?eTQvTEY3K0ZUaWtIa1VkTlgrUE9xb2ozbVVVTlhIZGRvbWpLK0JjOVlhL3A0?=
 =?utf-8?B?emNuTHFiOTNUMXRuS1dTU1F0VExGa0xUN2dNY0VwbnQrdUpIYVRrcG9lYlVN?=
 =?utf-8?B?YWtHWW1ZZURNNWJKc3J1cTlaaU44bzVPQk9yaStDQWxPTFZwcTYvRllkbE5y?=
 =?utf-8?B?TkdOcUZWaldXRVRjZ0xuTVoxdVdtbUM2ZnJUS1RtaXZIWEk3bC9abk92aW00?=
 =?utf-8?B?ZWZ3SUZHK2RoYUt1dGg5U05BYi9rZnZkOFBDWGg5cWZJUzVNK09nbGtld0xV?=
 =?utf-8?B?OFhRWjFXeE1XMzlyOG9BeUVVYlJVTGd4d1p3bWZaNGEwd0hNb2FjNjNJVSsx?=
 =?utf-8?B?U1Z5ZlV3VVRiaE1OSUMrQ3h5cldXWXk1SkJPUlRQdXM5b0lDaWRkQXZhSUkr?=
 =?utf-8?B?dVdTTEIvdlpCM0JtZVZwYnFWbWZZb20vdUpweWQ2WWFCZFNxc0RvYktJWHNE?=
 =?utf-8?B?c1JFMkZsbFp5enRtbXNuajFOSzQ5eGltM3g1d1VpdTNpTk5GNitnMmVjMmlw?=
 =?utf-8?B?Wm10Wkd4aEtQZTduSElEOXY4UVlCczNPSi9MQi9UNjFOYTFMdk8yak5tZ3k2?=
 =?utf-8?B?OXRiY081Uk12cDNIRWxBeFN5RWlxMlI1MnhBc0RjalB1Y1ZubnRpb29Mb0t3?=
 =?utf-8?B?QVkwTmltb0xGQUxlS0ZrNGRvNVhGZ2xaUStyK1NPeE9UVXFoZWhjbFUzSmtl?=
 =?utf-8?B?Qll5YzlRTTFHeGl0WDYzemJWRHZYdDU1bnNaRUZoRkRqbWx2SjVnd1pjaXY5?=
 =?utf-8?B?cTRTbUcrckJmaG5aUVlHSU5TU1BjZDdoSDJaRzlCZWRLeG9SL0QrNkxVa2VB?=
 =?utf-8?Q?Mv0c=3D?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6734.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 21fa82ea-9490-4bfb-077b-08dbbacbddab
X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Sep 2023 17:54:56.3153
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: dqzbTCljUXnHwVQ/yt8Cf1wPIlgPk43ACMha53miHsR3vWs+P/y0luOHyuJ0fHpyvdZPCwwelJDVsQzJDa3ugg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR11MB8465
X-OriginatorOrg: intel.com

PiA+IFNpbmNlIGZ1dHVyZSBrZXJuZWxzIHdpbGwgc3VwcG9ydCBib290dGltZSB0b2dnbGluZyBv
ZiB3aGV0aGVyIDMyYml0DQo+ID4gc3lzY2FsbCBpbnRlcmZhY2Ugc2hvdWxkIGJlIGVuYWJsZWQg
b3Igbm90IGFzIHBlcjoNCj4gPiBodHRwczovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vbGludXgv
a2VybmVsL2dpdC90aXAvdGlwLmdpdC9jb21taXQvP2g9DQo+ID4geDg2L2VudHJ5JmlkPTFkYTVj
OWJjMTE5ZDNhNzQ5YjUxOTU5NmI5M2Y5YjI2NjdlOTNjNGENCj4gPg0KPiA+IEl0IHdpbGwgbWFr
ZSBtb3JlIHNlbnNlIHRvIHJlcGxhY2UgdGhpcyB3aXRoIGlhMzJfZW5hYmxlZCgpIGludm9jYXRp
b24uDQo+ID4gSSBndWVzcyB0aGlzIGNvdWxkIGJlIGRvbmUgYXMgYSBmb2xsb3ctdXAgcGF0Y2gg
YmFzZWQgb24gd2hlbiB0aGlzIGlzDQo+ID4gbWVyZ2VkIGFzIHRoZSBpYTMyX2VuYmFsZWQgY2hh
bmdlcyBhcmUgZ29pbmcgdG8gYmUgbWVyZ2VkIGluIDYuNy4NCj4gDQo+IFRoZSBzaW1wbGVzdCBz
b2x1dGlvbiBpcyB0byByZWJhc2UgdGhlIHNlcmllcyB0byB0aXAgeDg2L2VudHJ5IGFuZCBqdXN0
IGRvIGl0IHJpZ2h0DQo+IGF3YXkgOikNCg0KSnVzdCBkaWQgaXQgZm9yIHRoZSBuZXh0IGl0ZXJh
dGlvbi4NCg==


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 19:35:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 19:35:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606551.944538 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjPSP-0006MI-15; Thu, 21 Sep 2023 19:35:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606551.944538; Thu, 21 Sep 2023 19:35:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjPSO-0006MB-Un; Thu, 21 Sep 2023 19:35:24 +0000
Received: by outflank-mailman (input) for mailman id 606551;
 Thu, 21 Sep 2023 19:35:23 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=gWeo=FF=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qjPSN-0006M2-9b
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 19:35:23 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ff45104d-58b5-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 21:35:20 +0200 (CEST)
Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7])
 by mailhost.m5p.com (8.17.1/8.15.2) with ESMTPS id 38LJYcGK073129
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Thu, 21 Sep 2023 15:34:44 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 38LJYboP073128;
 Thu, 21 Sep 2023 12:34:37 -0700 (PDT) (envelope-from ehem)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ff45104d-58b5-11ee-878a-cb3800f73035
Message-Id: <7a880e33ff91d0c76986159e3559c56ee6894d21.1695324653.git.ehem+xen@m5p.com>
From: Elliott Mitchell <ehem+xen@m5p.com>
To: xen-devel@lists.xenproject.org
Cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
        "Roger Pau Monné" <roger.pau@citrix.com>, Wei Liu <wl@xen.org>,
        George Dunlap <george.dunlap@citrix.com>,
        Julien Grall <julien@xen.org>,
        Stefano Stabellini <sstabellini@kernel.org>
Date: Thu, 21 Sep 2023 09:18:42 -0700
Subject: [PATCH WIP] xen/public: move incomplete type definitions to xen.h
X-Spam-Status: No, score=1.5 required=10.0 tests=DATE_IN_PAST_03_06,
	KHOP_HELO_FCRDNS autolearn=no autolearn_force=no version=3.4.6
X-Spam-Level: *
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mattapan.m5p.com

Hypercall wrappers need the incomplete type definitions.  Only when the
actual structure needed.  As such these incomplete definitions should be
in xen.h next to their hypercalls, rather than spread all over.

trap_info_t is particularly notable since even though the hypercall is
x86-only, the wrapper is likely to be visible to generic source code.

Signed-off-by: Elliott Mitchell <ehem+xen@m5p.com>
---
trap_info_t and HYPERVISOR_set_trap_table() is something I ran into.
With the incomplete definition, the wrapper is accaptable to an ARM
compiler.  Without the incomplete definition, it fails.

Note, this has been shown to build in my environment.  I'm unsure
whether the incomplete structure plus type definition is acceptable to
all supportted compilers.

I'm wondering about __ASSEMBLY__.  I suspect this could be handled better
by having a macro for all these suspiciously similar type definitions.  I
suspect it would be handy for DEFINE_XEN_GUEST_HANDLE() to be null when
__ASSEMBLY__ is defined.

This seems to suggest all the __HYPERVISOR_* definitions need to move
later in the file.
---
 xen/include/public/arch-x86/xen.h |  2 --
 xen/include/public/platform.h     |  2 --
 xen/include/public/sched.h        |  2 --
 xen/include/public/xen.h          | 24 ++++++++++++++++++++----
 4 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/xen/include/public/arch-x86/xen.h b/xen/include/public/arch-x86/xen.h
index c0f4551247..896440333c 100644
--- a/xen/include/public/arch-x86/xen.h
+++ b/xen/include/public/arch-x86/xen.h
@@ -143,8 +143,6 @@ struct trap_info {
     uint16_t      cs;      /* code selector                                 */
     unsigned long address; /* code offset                                   */
 };
-typedef struct trap_info trap_info_t;
-DEFINE_XEN_GUEST_HANDLE(trap_info_t);
 
 typedef uint64_t tsc_timestamp_t; /* RDTSC timestamp */
 
diff --git a/xen/include/public/platform.h b/xen/include/public/platform.h
index 15777b5416..bb7f2dfcb0 100644
--- a/xen/include/public/platform.h
+++ b/xen/include/public/platform.h
@@ -659,8 +659,6 @@ struct xen_platform_op {
         uint8_t                       pad[128];
     } u;
 };
-typedef struct xen_platform_op xen_platform_op_t;
-DEFINE_XEN_GUEST_HANDLE(xen_platform_op_t);
 
 #endif /* __XEN_PUBLIC_PLATFORM_H__ */
 
diff --git a/xen/include/public/sched.h b/xen/include/public/sched.h
index b4362c6a1d..2b65c0db8c 100644
--- a/xen/include/public/sched.h
+++ b/xen/include/public/sched.h
@@ -118,8 +118,6 @@
 struct sched_shutdown {
     unsigned int reason; /* SHUTDOWN_* => enum sched_shutdown_reason */
 };
-typedef struct sched_shutdown sched_shutdown_t;
-DEFINE_XEN_GUEST_HANDLE(sched_shutdown_t);
 
 struct sched_poll {
     XEN_GUEST_HANDLE(evtchn_port_t) ports;
diff --git a/xen/include/public/xen.h b/xen/include/public/xen.h
index b812a0a324..32a76afbd4 100644
--- a/xen/include/public/xen.h
+++ b/xen/include/public/xen.h
@@ -75,13 +75,25 @@ DEFINE_XEN_GUEST_HANDLE(xen_ulong_t);
  */
 
 #define __HYPERVISOR_set_trap_table        0
+#ifndef __ASSEMBLY__
+typedef struct trap_info trap_info_t;
+DEFINE_XEN_GUEST_HANDLE(trap_info_t);
+#endif
 #define __HYPERVISOR_mmu_update            1
+#ifndef __ASSEMBLY__
+typedef struct mmu_update mmu_update_t;
+DEFINE_XEN_GUEST_HANDLE(mmu_update_t);
+#endif
 #define __HYPERVISOR_set_gdt               2
 #define __HYPERVISOR_stack_switch          3
 #define __HYPERVISOR_set_callbacks         4
 #define __HYPERVISOR_fpu_taskswitch        5
 #define __HYPERVISOR_sched_op_compat       6 /* compat since 0x00030101 */
 #define __HYPERVISOR_platform_op           7
+#ifndef __ASSEMBLY__
+typedef struct xen_platform_op xen_platform_op_t;
+DEFINE_XEN_GUEST_HANDLE(xen_platform_op_t);
+#endif
 #define __HYPERVISOR_set_debugreg          8
 #define __HYPERVISOR_get_debugreg          9
 #define __HYPERVISOR_update_descriptor    10
@@ -100,9 +112,17 @@ DEFINE_XEN_GUEST_HANDLE(xen_ulong_t);
 #define __HYPERVISOR_vcpu_op              24
 #define __HYPERVISOR_set_segment_base     25 /* x86/64 only */
 #define __HYPERVISOR_mmuext_op            26
+#ifndef __ASSEMBLY__
+typedef struct mmuext_op mmuext_op_t;
+DEFINE_XEN_GUEST_HANDLE(mmuext_op_t);
+#endif
 #define __HYPERVISOR_xsm_op               27
 #define __HYPERVISOR_nmi_op               28
 #define __HYPERVISOR_sched_op             29
+#ifndef __ASSEMBLY__
+typedef struct sched_shutdown sched_shutdown_t;
+DEFINE_XEN_GUEST_HANDLE(sched_shutdown_t);
+#endif
 #define __HYPERVISOR_callback_op          30
 #define __HYPERVISOR_xenoprof_op          31
 #define __HYPERVISOR_event_channel_op     32
@@ -449,8 +469,6 @@ struct mmuext_op {
         xen_pfn_t src_mfn;
     } arg2;
 };
-typedef struct mmuext_op mmuext_op_t;
-DEFINE_XEN_GUEST_HANDLE(mmuext_op_t);
 #endif
 
 /*
@@ -615,8 +633,6 @@ struct mmu_update {
     uint64_t ptr;       /* Machine address of PTE. */
     uint64_t val;       /* New contents of PTE.    */
 };
-typedef struct mmu_update mmu_update_t;
-DEFINE_XEN_GUEST_HANDLE(mmu_update_t);
 
 /*
  * ` enum neg_errnoval
-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \BS (    |       ehem+sigmsg@m5p.com      PGP 87145445       |    )   /
  \_CS\   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445




From xen-devel-bounces@lists.xenproject.org Thu Sep 21 21:11:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 21:11:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606557.944548 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjQx3-0002ip-Uz; Thu, 21 Sep 2023 21:11:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606557.944548; Thu, 21 Sep 2023 21:11:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjQx3-0002ii-SK; Thu, 21 Sep 2023 21:11:09 +0000
Received: by outflank-mailman (input) for mailman id 606557;
 Thu, 21 Sep 2023 21:11:08 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjQx2-0002iY-7v; Thu, 21 Sep 2023 21:11:08 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjQx1-00038X-Ql; Thu, 21 Sep 2023 21:11:07 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjQx1-0001F3-BE; Thu, 21 Sep 2023 21:11:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjQx1-00083b-An; Thu, 21 Sep 2023 21:11:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=yrV+0nb9LtUNc0JPBjOglhEWZskjjCnd1uEZNcoOnKk=; b=UpNi593jSh0hrSudCdvw76ArMH
	R38PJub7Ihl9iBphq+wLKmZqNPTIovXZJICj2b+vJ4Z5AqX1GFdfk9iUlzPSRozBSnT4WLBER0d2k
	VS5vTHd2ARiZ1M3I3tQS7Iw2PMZHPT5floewB0w1sPvrYgKhQbpXBQ+0cvWZ7nvdz+1E=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183089-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183089: regressions - FAIL
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict:xen-boot:fail:regression
    linux-linus:test-amd64-coresched-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-raw:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qcow2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-vhd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvshim:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd12-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-amd:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-uefi:reboot:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-xl-credit1:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-multivcpu:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-intel:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-ovmf-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-pvhv2-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-qemuu-nested-amd:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-pygrub:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-freebsd11-amd64:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-credit2:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:xen-boot:fail:regression
    linux-linus:test-amd64-amd64-examine-bios:reboot:fail:regression
    linux-linus:test-amd64-amd64-examine:reboot:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/src_host:fail:regression
    linux-linus:test-amd64-amd64-libvirt-pair:xen-boot/dst_host:fail:regression
    linux-linus:test-amd64-amd64-dom0pvh-xl-intel:guest-start:fail:regression
    linux-linus:test-amd64-amd64-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a229cf67ab851a6e92395f37ed141d065176575a
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 21 Sep 2023 21:11:07 +0000

flight 183089 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183089/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict 8 xen-boot fail REGR. vs. 182531
 test-amd64-coresched-amd64-xl  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-xsm       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-raw  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qcow2  8 xen-boot               fail REGR. vs. 182531
 test-amd64-amd64-xl-vhd       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-pvshim    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd12-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-intel  8 xen-boot              fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl           8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-win7-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-libvirt-xsm  8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-amd 14 guest-start           fail REGR. vs. 182531
 test-amd64-amd64-xl-shadow    8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64  8 xen-boot    fail REGR. vs. 182531
 test-amd64-amd64-examine-uefi  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-pair        12 xen-boot/src_host        fail REGR. vs. 182531
 test-amd64-amd64-pair        13 xen-boot/dst_host        fail REGR. vs. 182531
 test-amd64-amd64-xl-credit1   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-multivcpu  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-intel  8 xen-boot          fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-ws16-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-ovmf-amd64  8 xen-boot         fail REGR. vs. 182531
 test-amd64-amd64-xl-pvhv2-amd  8 xen-boot                fail REGR. vs. 182531
 test-amd64-amd64-qemuu-nested-amd  8 xen-boot            fail REGR. vs. 182531
 test-amd64-amd64-libvirt      8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-pygrub       8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-freebsd11-amd64  8 xen-boot             fail REGR. vs. 182531
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-xl-credit2   8 xen-boot                 fail REGR. vs. 182531
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm  8 xen-boot fail REGR. vs. 182531
 test-amd64-amd64-examine-bios  8 reboot                  fail REGR. vs. 182531
 test-amd64-amd64-examine      8 reboot                   fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 12 xen-boot/src_host       fail REGR. vs. 182531
 test-amd64-amd64-libvirt-pair 13 xen-boot/dst_host       fail REGR. vs. 182531
 test-amd64-amd64-dom0pvh-xl-intel 14 guest-start         fail REGR. vs. 182531

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-rtds      8 xen-boot                 fail REGR. vs. 182531

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                a229cf67ab851a6e92395f37ed141d065176575a
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   24 days
Failing since        182544  2023-08-28 20:42:13 Z   24 days   44 attempts
Testing same since   183089  2023-09-20 18:44:38 Z    1 days    1 attempts

------------------------------------------------------------
2323 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          fail    
 test-amd64-coresched-amd64-xl                                fail    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-libvirt-xsm                                 fail    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                fail    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    fail    
 test-amd64-amd64-freebsd11-amd64                             fail    
 test-amd64-amd64-freebsd12-amd64                             fail    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         fail    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                fail    
 test-amd64-amd64-xl-credit1                                  fail    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        fail    
 test-amd64-amd64-examine                                     fail    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          fail    
 test-amd64-amd64-xl-pvhv2-intel                              fail    
 test-amd64-amd64-dom0pvh-xl-intel                            fail    
 test-amd64-amd64-libvirt                                     fail    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        fail    
 test-amd64-amd64-libvirt-pair                                fail    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-amd64-pygrub                                      fail    
 test-amd64-amd64-libvirt-qcow2                               fail    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 fail    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     fail    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             fail    
 test-amd64-amd64-xl-shadow                                   fail    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                fail    
 test-amd64-amd64-xl-vhd                                      fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 283531 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 21:19:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 21:19:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606565.944558 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjR5N-0003g0-QK; Thu, 21 Sep 2023 21:19:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606565.944558; Thu, 21 Sep 2023 21:19:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjR5N-0003ft-Nl; Thu, 21 Sep 2023 21:19:45 +0000
Received: by outflank-mailman (input) for mailman id 606565;
 Thu, 21 Sep 2023 21:19:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=gWeo=FF=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qjR5N-0003fn-5B
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 21:19:45 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 94b17868-58c4-11ee-878a-cb3800f73035;
 Thu, 21 Sep 2023 23:19:43 +0200 (CEST)
Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7])
 by mailhost.m5p.com (8.17.1/8.15.2) with ESMTPS id 38LLItlr073396
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Thu, 21 Sep 2023 17:19:01 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 38LLIsqq073395;
 Thu, 21 Sep 2023 14:18:54 -0700 (PDT) (envelope-from ehem)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 94b17868-58c4-11ee-878a-cb3800f73035
Date: Thu, 21 Sep 2023 14:18:54 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Borislav Petkov <bp@alien8.de>
Cc: "Luck, Tony" <tony.luck@intel.com>, Yazen Ghannam <yazen.ghannam@amd.com>,
        smita.koralahallichannabasappa@amd.com, linux-edac@vger.kernel.org,
        linux-kernel@vger.kernel.org, x86@kernel.org,
        xen-devel@lists.xenproject.org, rric@kernel.org, james.morse@arm.com
Subject: Re: [PATCH] Revert "EDAC/mce_amd: Do not load edac_mce_amd module on
 guests"
Message-ID: <ZQyzPncxg2HYzlQI@mattapan.m5p.com>
References: <20210628172740.245689-1-Smita.KoralahalliChannabasappa@amd.com>
 <ZPqQEHXgmak1LMNh@mattapan.m5p.com>
 <20230908035911.GAZPqcD/EjfKZ0ISrZ@fat_crate.local>
 <ZQM8jRx8uKEbEo00@mattapan.m5p.com>
 <20230915115631.GAZQRGb0vCmEnUcaZI@fat_crate.local>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230915115631.GAZQRGb0vCmEnUcaZI@fat_crate.local>
X-Spam-Status: No, score=0.4 required=10.0 tests=KHOP_HELO_FCRDNS autolearn=no
	autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mattapan.m5p.com

On Fri, Sep 15, 2023 at 01:56:31PM +0200, Borislav Petkov wrote:
> On Thu, Sep 14, 2023 at 10:02:05AM -0700, Elliott Mitchell wrote:
> > Indeed.  At what point is the lack of information and response long
> > enough to simply commit a revert due to those lacks?
> 
> At no point.
> 
> > Even with the commit message having been rewritten and the link to:
> > https://lkml.kernel.org/r/20210628172740.245689-1-Smita.KoralahalliChannabasappa@amd.com
> > added, this still reads as roughly:
> > 
> > "A hypothetical bug on a hypothetivisor"
> 
> If "Hypervisors likely do not expose the SMCA feature to the guest"
> doesn't explain to you what the problem is this commit is fixing, then
> I can't help you.

Problem is you were objecting to 'probable hypothetical "may"
formulations' in what I wrote, yet the original patch message overtly
uses that word.

In order for the first patch to be correct, it is insufficient for the
condition to be unlikely.  Ideally it should be mathematically proven
impossible.

As such I was writing about known counter-examples from the real world.
Mainly at least one hypervisor (Xen) does tend to allow a particular VM
to access sensitive system registers.  Also it is entirely possible some
hypervisor could proxy access to the registers and thus properly simulate
the events.

Not only that, but in fact this very strategy was already actively
deployed:
https://bugs.debian.org/810964

I'm less than 100% certain this successfully retrieves EDAC events on Xen
right now, so I had been taking a look at the situation only to find
767f4b620eda.

Perhaps everyone should consult with large-scale system administrators
when doing things which effect them?


-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \BS (    |         ehem+sigmsg@m5p.com  PGP 87145445         |    )   /
  \_CS\   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445




From xen-devel-bounces@lists.xenproject.org Thu Sep 21 22:30:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 22:30:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606632.944602 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjSBe-0007U6-Mq; Thu, 21 Sep 2023 22:30:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606632.944602; Thu, 21 Sep 2023 22:30:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjSBe-0007Tz-KA; Thu, 21 Sep 2023 22:30:18 +0000
Received: by outflank-mailman (input) for mailman id 606632;
 Thu, 21 Sep 2023 22:30:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Fi77=FF=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qjSBd-0007Tt-Iq
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 22:30:17 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6f947875-58ce-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 00:30:16 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id C8A8E620D1;
 Thu, 21 Sep 2023 22:30:14 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2338CC433C8;
 Thu, 21 Sep 2023 22:30:13 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6f947875-58ce-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695335414;
	bh=dVEjkPwYs8THTagXuaJyDmZVI0EP90ti3yIQRfN/Hu0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=nrV25QsDVstRtjr9O1qbcESGcsb243apSxQSmAgzKV9iBhyqf3Ya4q1i7FkZdJ+8m
	 ubZDSryJNyJGdGCxWaUIAQ/kbycExaXJKl7LA+/azOllG99TD1ym/soQ+s7YY2hLnU
	 IiyQJgnOmTGmPa9VCM/Zft6qwMKZMKMe7rwwiBFRZ8mDBYUue/1pxaQ/u/yr4mYCji
	 +GLtUQ0FjVEIiCYdjpaxf6xe0tsJaQp37B4Otk74pyHcd+1XLoqrgKoSvH59d25nK8
	 FnCcM71Jz1cOHFL/12Ldq79t7PPoQZSAXMuDSwf0Ckk8Fs4UzGmqX5Bnlap8UX2cvQ
	 TdZDacROuV/4A==
Date: Thu, 21 Sep 2023 15:30:11 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Federico Serafini <federico.serafini@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH] xen/numa: address a violation of MISRA C:2012 Rule
 8.3
In-Reply-To: <2b1c7a05a2ddd3c9f83e1a147ebf295e55ddcbe9.1695305387.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309211529550.3563@ubuntu-linux-20-04-desktop>
References: <2b1c7a05a2ddd3c9f83e1a147ebf295e55ddcbe9.1695305387.git.federico.serafini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 21 Sep 2023, Federico Serafini wrote:
> Make object declarations consistent. No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>  xen/include/xen/numa.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/include/xen/numa.h b/xen/include/xen/numa.h
> index 29b8c2df89..287e81ff66 100644
> --- a/xen/include/xen/numa.h
> +++ b/xen/include/xen/numa.h
> @@ -60,7 +60,7 @@ static inline void clear_node_cpumask(unsigned int cpu)
>  /* Simple perfect hash to map pdx to node numbers */
>  extern unsigned int memnode_shift;
>  extern unsigned long memnodemapsize;
> -extern uint8_t *memnodemap;
> +extern nodeid_t *memnodemap;
>  
>  struct node_data {
>      unsigned long node_start_pfn;
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Sep 21 22:34:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 21 Sep 2023 22:34:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606639.944613 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjSFO-000863-6X; Thu, 21 Sep 2023 22:34:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606639.944613; Thu, 21 Sep 2023 22:34:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjSFO-00085w-2k; Thu, 21 Sep 2023 22:34:10 +0000
Received: by outflank-mailman (input) for mailman id 606639;
 Thu, 21 Sep 2023 22:34:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Fi77=FF=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qjSFN-00085q-5w
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 22:34:09 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f883ec4d-58ce-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 00:34:07 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by sin.source.kernel.org (Postfix) with ESMTPS id 6A0E3CE23FC;
 Thu, 21 Sep 2023 22:34:01 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 787B7C433C7;
 Thu, 21 Sep 2023 22:33:58 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f883ec4d-58ce-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695335639;
	bh=nvPQi+aXbm1W9s4tyXkynCBTnC7wlC91n2EXU+QCRBA=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=WKeNjoLKR/AX6Xn4UWGcQIJ8CScvimmbof9IFxsIdIzCmYBVAXgifwHfiTwfkmbtJ
	 3YKVnAmxH2OvK907jz61gzEGvoT3Bkh42oAwRSHh4wT/gnU4fyum97PKAaQ70oFkBD
	 QlSsYDEGZ49SkHo2KE8kgm2y/uFG00pfmXCTaIYdUmA47qAdXdJDxOjAxhah62gtie
	 qAkiA0cjCSa3+egsQCW86LOyM5ORhiUGJZt5ueTc9+2dqSpaVt+XN3VHpOxZ57RiVL
	 rVLDGFSagBjfoIPbrHzZDlxW0qGmsSUNyX7i4LnjhIzBkyW56met5dkzksPHmIdBXw
	 /zT762EhY8vbw==
Date: Thu, 21 Sep 2023 15:33:56 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Federico Serafini <federico.serafini@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH v3] xen/hypercalls: address violations of MISRA C:2012
 Rule 8.3
In-Reply-To: <2c3e9469b3e59c7c4d0128320515f2b3df2b4c1c.1695297383.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309211533510.3563@ubuntu-linux-20-04-desktop>
References: <2c3e9469b3e59c7c4d0128320515f2b3df2b4c1c.1695297383.git.federico.serafini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 21 Sep 2023, Federico Serafini wrote:
> Make function declarations and definitions consistent.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 00:22:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 00:22:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606649.944622 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjTwM-0003Bc-Dx; Fri, 22 Sep 2023 00:22:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606649.944622; Fri, 22 Sep 2023 00:22:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjTwM-0003BV-BJ; Fri, 22 Sep 2023 00:22:38 +0000
Received: by outflank-mailman (input) for mailman id 606649;
 Fri, 22 Sep 2023 00:22:36 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xvxl=FG=epam.com=prvs=362941c556=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qjTwK-0003Al-8V
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 00:22:36 +0000
Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com
 [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1f0d785e-58de-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 02:22:33 +0200 (CEST)
Received: from pps.filterd (m0174682.ppops.net [127.0.0.1])
 by mx0b-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38LI4Anp004571; Fri, 22 Sep 2023 00:22:20 GMT
Received: from eur04-vi1-obe.outbound.protection.outlook.com
 (mail-vi1eur04lp2050.outbound.protection.outlook.com [104.47.14.50])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3t8tshgnpd-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Fri, 22 Sep 2023 00:22:20 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by GV2PR03MB9571.eurprd03.prod.outlook.com (2603:10a6:150:d0::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Fri, 22 Sep
 2023 00:22:11 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f]) by VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f%7]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 00:22:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1f0d785e-58de-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=O9C0hK7FDQstp4e3f5TuF5aoLAWY7dFKAb5dvZW0eqkETn7m2Yr+78lB4BtIcZ7p7aRhWx3fUg95tSNHoYlY0HwY3o4YsS3xdM3JNd72PNZ1kbRqhYgSpBP/RXd6+UOHuC/iUVuflP1wZ8jkse/JS2prXEj2pv+hDsmkFyIaSdOFsKoTLUmB+V9p3qRuodi2+O+lzgz2hFy4Sy6gNes3OrLTzoIIRBwY2BEydFSgsnOPfJkjozFAxuHYQXUJLDv8ATQe6CWRzA5lTkvjjQe9VEGIjeyamp1U4dR4PcD/oQ+uHv0BhSWaQ/ZOQhK7LVAKhkcUh7DDzuWdxjigjrMJOQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hvbdx4I4KaKuUT27x1PSNP1d0aUtfPXenaL//QoDjIE=;
 b=XYip8JoHbfKE5c9qxhcoFkxQAuVVmxKg7ojw9O5qsztZEd1GZVKRddhOJ036vh97rI5ICVtnw3VmWd/H+u00sHICqv1/nFu0m/P6gIIYTAUBrQLYr2zrM3wuZHdDJjpxS8GWWWRaMHiYqaZExTGvpUqugOB9zx3x9Bc6qKHpLiBA2VuumrCJoweqoQhwp6Qvm4KiUhbsPFHyoP5DPF3KLLFi5PhmKlxW3Mztl4hPeT/gEWjAx/fAhWrlTQ8l7//UK96+pknfYb2eWh54zcHX4JLb77xKnRAWYrPwJwncYfr32kLwVU7x3UKiMcWj7Ki2nyvPhlxjM2fi7m0gbGC5bQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hvbdx4I4KaKuUT27x1PSNP1d0aUtfPXenaL//QoDjIE=;
 b=juYDrC72/a9wdWBDlDayLbvHl2nlgonq4JUGjsuAP05aN+/FZ8xEfYpaA7C+XrkxBYS+cIfqoL2wxqFTsSK6TjjxnXzQerD0ukfM1bgOvexsvsgWmAqTXVn7FXsjLrCuOSKl+6j879o+SqB4dxxk3Hvh5d+jqhXaCpV5NRqs9pHwpfUeERTVYuwEuTvPlhnakBzT/YrW38+KebjTNr7Yk7LMf9C7AumjOhefBSeGRhB3RP82SsoO3JopalCpGp0LKuNoid5z3rya/4Cw74DQ72dEiq2rNw8R/V8os2UcPk7l4u4lzmvLET0yiNoeUmN0XX1y2gDhobj94irL0eIOhg==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: Marc Zyngier <maz@kernel.org>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
        Stewart
 Hildebrand <stewart.hildebrand@amd.com>,
        Stefano Stabellini
	<sstabellini@kernel.org>,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Julien
 Grall <julien@xen.org>
Subject: Re: [PATCH v1 2/3] ARM: GICv3 ITS: do not invalidate memory while
 sending a command
Thread-Topic: [PATCH v1 2/3] ARM: GICv3 ITS: do not invalidate memory while
 sending a command
Thread-Index: AQHZ6ux4LpE3chDIj0mOPudUv9951bAiHTaAgAAZXICAAA0EAIADt3gA
Date: Fri, 22 Sep 2023 00:22:11 +0000
Message-ID: <875y43f45p.fsf@epam.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
 <20230919112827.1001484-3-volodymyr_babchuk@epam.com>
 <1614d73f-72b0-44f2-8e34-0e6c58a1a375@xen.org> <87fs3afcxb.fsf@epam.com>
 <597db9f5-b959-4b75-9410-0d0c16e3acda@xen.org>
In-Reply-To: <597db9f5-b959-4b75-9410-0d0c16e3acda@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: mu4e 1.10.7; emacs 29.1
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|GV2PR03MB9571:EE_
x-ms-office365-filtering-correlation-id: fc77e32b-d2d7-4dfc-ab26-08dbbb01f6d5
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 EK5UpEgVcYaOJdKAUdHVn/PZJaPJEko8mnQYgHnWQdGM41kfKKWOc0+dp/o9e8HmeQjlCmr7o7staKYischc4iSUjVJDb7rOZzED8V2MZMEsLyCfT0AlgvnWVRmtDIP5wZ+XZJErww0v9II3yhTL3mGZIl1S4x1EpUEkHoJe1kbzTO44IXzQGSa4kbEflQgtxzQN3t+21jAaaSlOw6G6SZbKEjLeax28eZ8+nZp7J7YjXbkecij/sk8FtiIeqFO1RYPN3YN+jxuldF6Z9/Kdf7rqrIUtNh8qPuDwAKqJ3IJ4P0pcnOcmRY+ftTbUlukxBEwFGZ2hCMEPIZnWeNrGmx4AC1wLjojeuSvOeQTAJMs7+7oZZ+d5p/oSuJme6X+eHnRWoO0kWRgzDxexKcRwSrvCIanPAaJvzC6u3n8DGz8JcUhf8luzvghm/EcDMeqcrl0I40ZK08dFLJIw6ALn+AqHoFFx6KuA0EfB7IWKZ5TI3W8WtsfXGRKj+TuTI+31jAYxoCbA59jP8wOfy2CnAGcECJYUBQNeC/Qryg9FxhOc/9rqOEgvf6DZBXXPZlgvQ4VLBHdRyOvuUo3X10Bo8ZXUy3iHpShaySZ+NCcMMWGn1SMcOJhHjiCIpaTJ/C8Y
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(346002)(39860400002)(136003)(366004)(396003)(186009)(1800799009)(451199024)(5660300002)(6486002)(6506007)(8936002)(8676002)(53546011)(41300700001)(6916009)(66476007)(64756008)(6512007)(4326008)(66946007)(91956017)(54906003)(478600001)(76116006)(2906002)(66446008)(55236004)(66556008)(316002)(71200400001)(83380400001)(2616005)(26005)(38070700005)(36756003)(122000001)(38100700002)(86362001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?tG07Aia49wHqYrawhXK/qSDiv/f/33+XWewNsmnPeHFG2WDb57bS3nptJS?=
 =?iso-8859-1?Q?CWLXzwTSUr4+75vHVWqgvjGXEAL8d6uu41lilKb600YC77lPN8mIslGi04?=
 =?iso-8859-1?Q?QBvx5r7Q/ssOLJ7Q0iyyU5G/7AwaSTRwZo3eokDPMV+SUbI5MzY1n3urye?=
 =?iso-8859-1?Q?Kl3ZANTqRKsmvm+AFBZYqOUMzPvEwsFoAGc9kk2uTHlN6tdyQ4llpDl5yf?=
 =?iso-8859-1?Q?jOjERhBzieQFEdTsqQhbcNikB6gszzx4jhVAYOrdWwCdHOF2hFKs3RIjea?=
 =?iso-8859-1?Q?ms+BaEKd7VV5xwnVk0EhNHlAtNc5lzX9OvN8YTYnAeoya+2cgwLHtH26VF?=
 =?iso-8859-1?Q?PBg9p8pktcPhqKJAMwR/0RUkWF62X4odfWakIk2oapowlmGZVQId8i7hU9?=
 =?iso-8859-1?Q?1tprP7tFVjcCRy7b8QerwQQP6PN3Z64cLmA39Xbbfk3fAC4u6yoQkUCe2p?=
 =?iso-8859-1?Q?6wmg7qI0XG3J5RiKVX6/QVtJQQr6G7Zl2OvRt+DT2LNXii9RDa51s2nWEt?=
 =?iso-8859-1?Q?o1J9wlp41qkRvSbqUIV5gmlzgAzKBr2sb9PuCxa5QQ5GVXo0pA0RwMgHiG?=
 =?iso-8859-1?Q?3EgSq4SRCZrbwb3DJlMYULu1RnbjIy77oiGapKgStyBgRvGILNPIC5/jHV?=
 =?iso-8859-1?Q?fHV/evLdpp0gxAaPbPN5VaQa5h1arxtJN10q8iqhpGcWQB5OzaBd1uY3k3?=
 =?iso-8859-1?Q?Ci+ZvfujsP7T9CQf79HhzFpwbjN6d/xQIxdwDB5Axs1wzK+ZoS0xn0RCzj?=
 =?iso-8859-1?Q?WqIHLmEnZcanYA96r/SUg8YFkh58if8ajFeCaCeQpd1FaFPFTRwGGwXrE/?=
 =?iso-8859-1?Q?LLbMPtv+6eklkSED6OWU4xihNEceIezXGb1iVAfPkfq+Zsir4Yj1lFc0kP?=
 =?iso-8859-1?Q?hBAwcZxs2NvHjUybucNdC8GOMwyP3u18b70mN97ESwo2AOQPwc0QOvxqkB?=
 =?iso-8859-1?Q?VwR4GK4TUd03KO4Kvwq/TNl1O+aW9V8M1Pct58TC6bjgZ6YNxZ5f+YpQ1i?=
 =?iso-8859-1?Q?dX6uqzaKV8UQNIAvp4D5fsFIdmAGdJTdghCSP9ewPMpvRzUrr8TUCphOzt?=
 =?iso-8859-1?Q?TyrSrgfXrosOxJNWYWKMtCXd19R1gIyHm0mfHmPSi76DTJUQVwmvM6oHQ5?=
 =?iso-8859-1?Q?yWRYWfRvlL+8s0iTQvaCa5QJPVXd21CCdmC57qxB1m4C/9m3Up2NQweaqP?=
 =?iso-8859-1?Q?MKNenlZZWLExEtzUjQqHeG8tfMHK3Yx9PrRi5O+6X8j3ooTOI0PozijDr3?=
 =?iso-8859-1?Q?SPe3NSFY7kseXA6JC/451NRb9pFOJ5CLfB0RXLLkaPMXqy5/T+co5GdeSj?=
 =?iso-8859-1?Q?r9v8z2FDFLpDW/HHlyrz/PMQkybCCOwypOcD3BC/skYkIvfO0+vJAIYGH/?=
 =?iso-8859-1?Q?Ab5sbDpR8/Y44tMPsJ+fZbAVraYqvnlN6zcCX60krnswmV7LRcN7pAGFC1?=
 =?iso-8859-1?Q?5H/CFaICiq4CN54M08/Wxas+s378Hil65JQVEGSYgu70tBgmlmLiMG7ZEj?=
 =?iso-8859-1?Q?k4HQANOlN5nvDqttjuV9pt1y5JNFERkNvm6Q82N50YnDDkWZtCeYfHM/7G?=
 =?iso-8859-1?Q?i5oAYWVjpilhUlkOYb1BeBuKYLv665YK6X4sYIjANFKvUtkKt11q1LXvD0?=
 =?iso-8859-1?Q?/uUNy87rc1DRrI3YJOAsT66MqQQ5/PYMlYA38U96bRmONgWLvRUbZEaw?=
 =?iso-8859-1?Q?=3D=3D?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fc77e32b-d2d7-4dfc-ab26-08dbbb01f6d5
X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Sep 2023 00:22:11.3391
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: Ilg0sp04J3+AmO1vPyLRJkPK8Z48ew8Y2OW+UGq+M/c2wqY7NgraGOm8SJjOgEgdybMD277bg6d2fLc1X6SKxaiMFMgvmMIkuI6H8P0AxJs=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR03MB9571
X-Proofpoint-ORIG-GUID: A-lZ1J7XubCUusvzyOfDBFTItW3Bhii4
X-Proofpoint-GUID: A-lZ1J7XubCUusvzyOfDBFTItW3Bhii4
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-09-21_20,2023-09-21_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0
 bulkscore=0 mlxscore=0 malwarescore=0 clxscore=1011 priorityscore=1501
 mlxlogscore=378 impostorscore=0 adultscore=0 suspectscore=0 spamscore=0
 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2309220001


Hi Mark,

I am writing to you, because you are GICv3 maintainer in Linux. We are
updating ITS driver in Xen and we have a question about cache
maintenance WRT memory shared with ITS. As I can see, the Linux ITS
driver uses gic_flush_dcache_to_poc() all over the code. This boils down
to "dc civac" instruction which does both clean and invalidate. But do
we really need to invalidate a cache when we are sending an ITS command?
In my understanding it is sufficient to clean a cache only and Linux
uses clean&invalidate just out of convenience. Is this correct?

Below you can find our discussion about this.

Julien Grall <julien@xen.org> writes:

> On 19/09/2023 15:36, Volodymyr Babchuk wrote:
>> Julien Grall <julien@xen.org> writes:
>>> On 19/09/2023 12:28, Volodymyr Babchuk wrote:
>>>> There is no need to invalidate cache entry because we just wrote into =
a
>>>> memory region. Writing itself guarantees that cache entry is valid.
>>>
>>> The goal of invalidate is to remove the line from the cache. So I
>>> don't quite understand the reasoning here.
>>>
>> Well, I may be wrong, but what is the goal in removing line from the
>> cache? As I see this, we want to be sure that ITS sees data written in
>> the memory, so we should flush a cache line. But why do we need to
>> remove it from CPU's cache?
>
> I don't exactly know. From a brief look I agree with you. However, our
> driver is based on Linux where the clean & invalidate is also used. So
> I am a little be cautious to remove it.
>
> The way forward would be to ask the Marc Zyngier (GICv3 maintainer)
> why it was added in Linux. Then we can decide whether this can be
> removed in Xen.
>
> Cheers,


--=20
WBR, Volodymyr=


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 00:51:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 00:51:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606655.944633 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjUOS-0001Nm-Je; Fri, 22 Sep 2023 00:51:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606655.944633; Fri, 22 Sep 2023 00:51:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjUOS-0001Nf-GI; Fri, 22 Sep 2023 00:51:40 +0000
Received: by outflank-mailman (input) for mailman id 606655;
 Fri, 22 Sep 2023 00:51:39 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjUOR-0001NV-Jn; Fri, 22 Sep 2023 00:51:39 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjUOR-0000kv-1a; Fri, 22 Sep 2023 00:51:39 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjUOQ-0002B2-Gl; Fri, 22 Sep 2023 00:51:38 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjUOQ-0000tr-GD; Fri, 22 Sep 2023 00:51:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=c2ynOLuRGop2tgc3FXmFwuPwrWGydbjkpQsIGayt250=; b=W5y/xaO2HQ6m9sMrB+SIUj0tjh
	CXy10kantBqDZQg55huatZWmbTKmuZukhGjCB5QXort8c9KB8BpACxEhiBnZ3S6I8JdecJ+n4J/0Q
	GBhNDdPc5zw2Tta7kIxrQmEftwa/b/KRKey6KCaMcGA1hoHRPrw4OfTqJq96Ay9+x+BY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183097-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183097: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=19484ccac5cb1586f9d10d3e6eb9b93ee82885c6
X-Osstest-Versions-That:
    libvirt=b74fd210b37bfb31dc1e4b99fa64849d0f91541e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 22 Sep 2023 00:51:38 +0000

flight 183097 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183097/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183075
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183075
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183075
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              19484ccac5cb1586f9d10d3e6eb9b93ee82885c6
baseline version:
 libvirt              b74fd210b37bfb31dc1e4b99fa64849d0f91541e

Last test of basis   183075  2023-09-20 04:21:45 Z    1 days
Testing same since   183097  2023-09-21 04:22:05 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michal Privoznik <mprivozn@redhat.com>
  Pavel Hrdina <phrdina@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   b74fd210b3..19484ccac5  19484ccac5cb1586f9d10d3e6eb9b93ee82885c6 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 01:15:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 01:15:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606663.944643 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjUlM-00035o-H7; Fri, 22 Sep 2023 01:15:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606663.944643; Fri, 22 Sep 2023 01:15:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjUlM-00035h-CX; Fri, 22 Sep 2023 01:15:20 +0000
Received: by outflank-mailman (input) for mailman id 606663;
 Fri, 22 Sep 2023 01:15:18 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aXRy=FG=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qjUlK-00035Z-LO
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 01:15:18 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20606.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::606])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7b04a992-58e5-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 03:15:13 +0200 (CEST)
Received: from DU2PR04CA0184.eurprd04.prod.outlook.com (2603:10a6:10:28d::9)
 by GV2PR08MB9424.eurprd08.prod.outlook.com (2603:10a6:150:dd::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Fri, 22 Sep
 2023 01:15:09 +0000
Received: from DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:28d:cafe::80) by DU2PR04CA0184.outlook.office365.com
 (2603:10a6:10:28d::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.32 via Frontend
 Transport; Fri, 22 Sep 2023 01:15:08 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT022.mail.protection.outlook.com (100.127.142.217) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6813.20 via Frontend Transport; Fri, 22 Sep 2023 01:15:08 +0000
Received: ("Tessian outbound 0b7d6027328f:v175");
 Fri, 22 Sep 2023 01:15:08 +0000
Received: from 174731fc91d3.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 14193C31-D68F-4090-B875-8B465378EAE2.1; 
 Fri, 22 Sep 2023 01:15:01 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 174731fc91d3.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 22 Sep 2023 01:15:01 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB9PR08MB9826.eurprd08.prod.outlook.com (2603:10a6:10:45d::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Fri, 22 Sep
 2023 01:14:58 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 01:14:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7b04a992-58e5-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vxYVz3prC4xV/U9J5EJnRp+tM5e6ax3pGj6ME4iASRk=;
 b=IMdeATCrQW8HK/IScQMziIn5hExkU967oyiK2wShV+E6IF0hbFPGsgmEMrnpB/7pcJyoQ0igJ25S5yc0o8rGscYRNyCD+n8NSR744oRDPEQtealP/LrarLG+MbAI+70kO6sr5NUpM+ecDy6WQ6vvapVEFJrxsubBOftE6XWrqBI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 75b9552e353edfc7
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XmRKzjyiuum8K3YQieWK+4MvPBWP1+ao9Z49nZbbyX8MP5HxPdftVVpEyJDN1ocbkz0dRmFgBClBNB+n+8+Va8umvXf2ljCN6V6obA/D9C+akvsVL4pbeYaJtzt4Ti8j/KGSWvHukGxvWHsY2gvy70BwVg1Vmpl9Ws9ZgxTes6atsLvSRHx8Y7hzBRJkVWWoKR8WN6c5/tFlATZKdyz+JoqRfQThGirr9r+VaFm9QY5jMSCZTiOQ5O8pEm592DQjEfS21ZBM7MSQf291aKTOJ4GR3mbFJ+iX18twPVt2gLa0iMsWxuPvL9IG/VzGfuFITQMljaIc8lFfa8E+0zcdBQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vxYVz3prC4xV/U9J5EJnRp+tM5e6ax3pGj6ME4iASRk=;
 b=DkOt4kre7igeP83ihbgwoFEQb/dha+jXPextkDKFmxRQy1sdKvjjORLA2uB9SlOiywBbHaALlbHLnoSNioaqJrRN8AvEnXZixAnz55J80L3iWjhYlImlOEdCOuf+f+agPiqKcn0yiG7rh0AUU8hvDWvCiU+qzCjKBkF3tyriFduGR6Xs4LLtgGzy/twDPM7+n0AQAmpoqQIThmSf+uXa0HSKs2Ty2Ew7p7UbDPRDCS2qN4L85/D2PbBBZ42wwKoxfGZ2cSpj+6B2JwnMCXu56jTOPZXnzC+mf9ioAatz+tq4OPzT56lDOeMYnSVPUPD7D2fdiN0uU0AtlU5gtdRAug==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vxYVz3prC4xV/U9J5EJnRp+tM5e6ax3pGj6ME4iASRk=;
 b=IMdeATCrQW8HK/IScQMziIn5hExkU967oyiK2wShV+E6IF0hbFPGsgmEMrnpB/7pcJyoQ0igJ25S5yc0o8rGscYRNyCD+n8NSR744oRDPEQtealP/LrarLG+MbAI+70kO6sr5NUpM+ecDy6WQ6vvapVEFJrxsubBOftE6XWrqBI=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Wei Chen <Wei.Chen@arm.com>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Julien Grall <jgrall@amazon.com>
Subject: Re: [PATCH] xen/arm64: head.S: Fix wrong enable_boot_cpu_mm() code
 movement
Thread-Topic: [PATCH] xen/arm64: head.S: Fix wrong enable_boot_cpu_mm() code
 movement
Thread-Index: AQHZ6FNGXuwkZcMSWUGVwj7cDe3WUbAljiuAgACFiYA=
Date: Fri, 22 Sep 2023 01:14:58 +0000
Message-ID: <58829389-9374-477D-B9B4-1BC61EBC269F@arm.com>
References: <20230916040649.1232558-1-Henry.Wang@arm.com>
 <0e8789b2-0b0e-4652-a1ee-b2d9efd804b9@xen.org>
In-Reply-To: <0e8789b2-0b0e-4652-a1ee-b2d9efd804b9@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DB9PR08MB9826:EE_|DBAEUR03FT022:EE_|GV2PR08MB9424:EE_
X-MS-Office365-Filtering-Correlation-Id: 554cfcbd-9c15-47d4-c71d-08dbbb095c61
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 h/Gy+lViYFOe7OVMFbU4EWSjUvLv33O83kWzzT33m/n1K31Y+bpam+rhEg0D1d2vonnFEauca7U8u1Cbk0jXP+ESivd94SFwMoSEVCmhdUISoJKZ2sDIxZTrXwCIZovc4y5abhIc0doOr014WjRG9OwXdTLkIF2Pko9PlOv3gVKqMlfYOvJh9lAIcEThiu8fyYq9AopANRhr01jD1m+pfM5Po8N0HOpyhTIpg8EabL/JNrRO4pOia20esrNT1BLlNGWV4ZACeWPSmBQGkr2yLvUfBcGVQnGk9gaGdwNha3bN7+sR38214Zo4pb8gL13C5pzkaLtfzlgO6/dqu6tQBW3PpJU9WD4DzW4BPuxdzL3qK3FUdKg3070Me/+RDRis8KSdfWwPRQsROkk+oT90hGg9GuNpk9FpHv53CQeaU1QsEYP1SlXlyk5Ut+B0k5IY7hvOVW3IktD35nfD6FziSsW8IKZ7o8wBTMDjyUrV8YOoOYhfqIY8wReeJeAczLyokZdrVPiCY9cby2xApG3+AG8qXz+kGyycE3ODqQT+5tRYI8RDKE7jjLWnEDu6mWpNa4B7XrtiF+k+7UxaIkL8iCprupoAqdV1hGGLavYYVTl/FV3kOsMMdnkCkpdXdW8Q/ssPIC4tS6U6laOnQUCHZw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(376002)(366004)(136003)(346002)(451199024)(186009)(1800799009)(8936002)(26005)(5660300002)(41300700001)(8676002)(4326008)(6512007)(83380400001)(53546011)(2616005)(6506007)(6486002)(71200400001)(478600001)(122000001)(6916009)(316002)(76116006)(54906003)(66946007)(64756008)(66476007)(66556008)(66446008)(91956017)(4744005)(33656002)(36756003)(38070700005)(38100700002)(86362001)(2906002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <390DC7975EA92544962A471025624D1A@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB9826
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	22a3c78c-0e74-4893-9348-08dbbb095679
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	HV3/0XWpp6zQmoadxPk/1edwPhxtDWnZPWWHDw/XuLq7Y+b9/mRDXpdx6+zs1s/peKgtQFc4QHe9BpzVs7pZm9fW6cCeFEnMJwNlPaURNkXSCYVrMuZKjUudpSCOUmO7oX2N36sHR28pwleI1aPGFO/6oR3VCysh5lOEEh4HVCV2sxXwPcYJy1AuSLqhml47I8lTQQj/Xy6D2Fb6oohbutOk1GaN09p14UXU/adWOXZrnBlB18hXyCHSMZ4ZtTtiITYR+2YeeanfWW775T6yB8IEzeNNlPZJLJHy8WIFfUsW0/ps/VnLvcTPIVPMo/mkfbycXOkfFAQgqkQcXIJ9thf6qB4hTKvNnWRXbxypdrlEkYpWVQFLukXChYC3yLB35FGfF+Y7l6U8Qvz5rNe+m95RBuQLokOKuMPM9m+xwUQzSYQzxRjgqimP9sGZZ0Nboq6gM3jVofwk88nHeTsoEy5sz/UE6hrlcozLc8K0yLHEMuIPsbRyy74HxEUOrRJK5nK5JgIXDPK6ybHMHY7fZb6eiPw69saU7e3eL5pOw2ZWkO1JG2REVIMwLOx2rwgmZHujXm27Fu6By90Olx500XnhmVV1VieVXIbBe6oMp+fGLKr3Dd6A75vrd0jm+WNcSSGuZ1tS0VUTG0w83s3lTvcKDjyv8woDADi6sDB/zxhRuyXjYljfuGChi9nPsjzUJu6rb2WMRWhMi//VdjqVD4ZtgH95EuUtNNj29zZATrD4T/UI9Vw/hh6C0RrI3PZO6YfEOHRRs0dSBi44X8ORYQ==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(346002)(396003)(376002)(451199024)(1800799009)(230921699003)(82310400011)(186009)(36840700001)(40470700004)(46966006)(2906002)(54906003)(5660300002)(6862004)(70586007)(40480700001)(107886003)(4326008)(70206006)(8676002)(316002)(8936002)(41300700001)(478600001)(6486002)(6506007)(2616005)(6512007)(40460700003)(336012)(36756003)(26005)(47076005)(53546011)(36860700001)(86362001)(82740400003)(33656002)(356005)(83380400001)(81166007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2023 01:15:08.1912
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 554cfcbd-9c15-47d4-c71d-08dbbb095c61
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT022.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB9424

Hi Julien,

> On Sep 22, 2023, at 01:16, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Henry,
>=20
> On 16/09/2023 05:06, Henry Wang wrote:
>> Some addressed comments on enable_boot_cpu_mm() were reintroduced
>> back during the code movement from arm64/head.S to arm64/mmu/head.S.
>> We should drop the unreachable code, move the 'mov lr, x5' closer to
>> 'b remove_identity_mapping' so it is clearer that it will return,
>> and update the in-code comment accordingly.
>> Fixes: 6734327d76be ("xen/arm64: Split and move MMU-specific head.S to m=
mu/head.S")
>> Reported-by: Julien Grall <jgrall@amazon.com>
>> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
>=20
> Reviewed-by: Julien Grall <jgrall@amazon.com>

Thanks very much!

>=20
> I plan to commit this patch in staging so it is part of 4.18. Please let =
me know if there are any objection.

Yes, please commit this patch, as it should have been part of the committed=
 patch
6734327d76be (again I am sorry for the mess).

Kind regards,
Henry

>=20
> Cheers,
>=20
> --=20
> Julien Grall



From xen-devel-bounces@lists.xenproject.org Fri Sep 22 01:30:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 01:30:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606668.944652 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjUzw-0006Ti-Q1; Fri, 22 Sep 2023 01:30:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606668.944652; Fri, 22 Sep 2023 01:30:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjUzw-0006Tb-NP; Fri, 22 Sep 2023 01:30:24 +0000
Received: by outflank-mailman (input) for mailman id 606668;
 Fri, 22 Sep 2023 01:30:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aXRy=FG=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qjUzv-0006TS-Vy
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 01:30:23 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0623.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::623])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 983c3109-58e7-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 03:30:21 +0200 (CEST)
Received: from AM5PR04CA0004.eurprd04.prod.outlook.com (2603:10a6:206:1::17)
 by AM0PR08MB5329.eurprd08.prod.outlook.com (2603:10a6:208:185::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Fri, 22 Sep
 2023 01:30:18 +0000
Received: from AM7EUR03FT038.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:1:cafe::e0) by AM5PR04CA0004.outlook.office365.com
 (2603:10a6:206:1::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.32 via Frontend
 Transport; Fri, 22 Sep 2023 01:30:17 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT038.mail.protection.outlook.com (100.127.140.120) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6813.20 via Frontend Transport; Fri, 22 Sep 2023 01:30:17 +0000
Received: ("Tessian outbound d084e965c4eb:v175");
 Fri, 22 Sep 2023 01:30:17 +0000
Received: from 2a6b74460c97.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 A63772DC-BBB5-4F82-B6C6-BBC484C8C330.1; 
 Fri, 22 Sep 2023 01:30:10 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2a6b74460c97.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 22 Sep 2023 01:30:10 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by VI1PR08MB5328.eurprd08.prod.outlook.com (2603:10a6:803:13a::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Fri, 22 Sep
 2023 01:30:07 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 01:30:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 983c3109-58e7-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6DmG/0PLShl3H4gxcy6xb3Bgu4KUSierfAUVBk9+GNk=;
 b=BFwPVPsYOKCwOy6At48tdrlko1NvT5t+aJZsqTRKatM4MJ1nogzklbLrS0lI+R4OlJ0cifPe/HzoTWmJ12tKIZKyvO6jZL72+ERv2A4iswaPLcdVNXl1yRSq/UVflOjpRxbmciL+6s6QUJYRvkbq0Iq25ZnHpXgYtthwp7sqPkc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 32af3c5d409fb996
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ow0GjO6NTKyXG7w05HhWrvS9neCY9rwHZx0pvXJvudit5PVT4G4xK87I9BLpuBOiehsoZsKr+yg+uR41bz7h+s4kSVnAzYCgOBzHFI8xXH+uD7Szf2Ek8VoCfHkv+LtkU2LRoCkZhFx1lqRiDTJfm+bS9kgIMauV1F3r7ZHgCmQbFjxZ+qcssIPrwht5I8eK47w5jcN8aHxHWzvv4INX8y9T/GVb+wUJy20PmWuPBo9AzmRCra3K0+nJLOpBUozddR9BT2OUmfJ+e1ONRniRMLIu4nQI0ewPDHR+UphUd9kXCx52p874ak6XRCR/x9WKkBmpLjw7/qPvVTopg4vj8w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6DmG/0PLShl3H4gxcy6xb3Bgu4KUSierfAUVBk9+GNk=;
 b=coIuWE+WnR+jd5jb/q+ckXt728Z2h/CrUvnvtDiQxjpzgxXvCGfbZ8yak5t04zAPyrxYHf4cq/V/qxqqhMCFjfIKE7gXHv/dg4E2z3MMZPtpxrvUJVh4Tr//jAIfghHN0X+eaaG+D2PX7pkljKRxnPS8nrgGxqp3D1N16sww7GOwcoDnXjWgBaK7uZZ2XtMftbxhEcP9qq4vx/fhw3g/D2HW4JD+jmeFnMK5ub6WZsOza7+sLC7hvAy1aiiQqicr635euuvCUu1gdEqoHC9h+DraW2lJR5k1ONirVbfPG/xHrSJubATzVuEXHK1rzx3Yv1ixwAmDR6HEwfjSJi0Cnw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6DmG/0PLShl3H4gxcy6xb3Bgu4KUSierfAUVBk9+GNk=;
 b=BFwPVPsYOKCwOy6At48tdrlko1NvT5t+aJZsqTRKatM4MJ1nogzklbLrS0lI+R4OlJ0cifPe/HzoTWmJ12tKIZKyvO6jZL72+ERv2A4iswaPLcdVNXl1yRSq/UVflOjpRxbmciL+6s6QUJYRvkbq0Iq25ZnHpXgYtthwp7sqPkc=
From: Henry Wang <Henry.Wang@arm.com>
To: George Dunlap <george.dunlap@cloud.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Dario Faggioli
	<dfaggioli@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, George
 Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Julien
 Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu
	<wl@xen.org>
Subject: Re: [PATCH v2 1/2] credit: Limit load balancing to once per
 millisecond
Thread-Topic: [PATCH v2 1/2] credit: Limit load balancing to once per
 millisecond
Thread-Index: AQHZ7IaJ6Rl/uO3Tg0W3bsFOfjroMrAmD4qA
Date: Fri, 22 Sep 2023 01:30:07 +0000
Message-ID: <8874B973-1191-42FC-BBCB-73DDF33091EF@arm.com>
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
In-Reply-To: <20230921122352.2307574-1-george.dunlap@cloud.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|VI1PR08MB5328:EE_|AM7EUR03FT038:EE_|AM0PR08MB5329:EE_
X-MS-Office365-Filtering-Correlation-Id: 6eb2d9cf-7f0d-4f01-1255-08dbbb0b7a6b
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 5L8qiPqSAJlqEJqBHQRhDAO/sEqFky3bLgZr6YDDOhIZqYj5abakKNhOVgxwdbW3Tqlf6Rxl1dzcdHwQwMhwntydSjGDzdQXvZHH6JAd7WsKyTt4lb2+sYkA9JqeOQm9Yd8xVfz7pEEtZc/Gk0RAiTxoWNHr+yLuFulwgpnNGtUrb7BvCliqKmyWZKCAAPXzPKAgEqS/zhm9+8Pb9JfpqGfkguOla+Gvb/ljUCkWtcxqm7GbU57z8MX1Fnihb/PgD3kD3kNPQW5OfAkp81JobP8RYtyfBGMzxd+AecPLs3kaB4haHBbGW9oOP8wmUPQSRB0da9a5NcJyu3ESuUKB7ON5ewhCgS/rV4byeFnkCQ8N3CvLFBF4xVq6nORYEkoqQXcAgbFK9q3XshkZkm1e7nvucl28HY/Rzgbl2apE9S3sOLjd91Ox1Z6e49dt3Dq198zKu3BW+VrTljAfNtBuI+UV+7/MTnvZ2VPo2ZbbOKULmiuaVqIJdO9qTp13tpoEwXuNaj1N0oIT+RvNSKLkFvfl0xvJNDee2mbXTT/YEAbHENxqYaEJNjcNvigltal7sB9S7UmOFqd1rytkzf+ghQUjdXbH8qtCy//84BbTnAku1EYM9k6dBDnvbkwrSdTSyLutNR/S43fnU5yTY+1zXw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(39860400002)(376002)(366004)(346002)(186009)(1800799009)(451199024)(2906002)(316002)(5660300002)(54906003)(76116006)(26005)(41300700001)(6916009)(66556008)(91956017)(66446008)(66946007)(64756008)(66476007)(478600001)(4326008)(8936002)(8676002)(71200400001)(6486002)(6506007)(53546011)(6512007)(38100700002)(2616005)(86362001)(36756003)(33656002)(122000001)(83380400001)(38070700005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <F68A04F5BC63ED4AA810F2EB70FA2EA8@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5328
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT038.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	262c22e3-6a80-4f07-16f9-08dbbb0b745a
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dbLRwOTSGm9l0X4W4BQa8cujjxBTV0irWKDuEXYi6Vv72FZ9Uvgg+jPV+tq0LfX8srGx9wt2cq7sbdre3NQk8D356FMT2jb6kG1kF5+yfIP52Jg2916naOAtVIDZ2E6gCD6K2wslTAEqpVL915XFxbvBuMxP3OjRR8P6yRENVEgiF/Q4NhmvUd1zxK6sQILjyB35gyWeZ88WtQ4I08ErwEHmfpc8xjFqVTsAHNk0wQvuyFrNOfPdAGHVDemKaWtRbqeLmzBwrgt2bxXwHMwXW1Iec4LMl5h56HvZ91F3D3sTpqxKcJHkLmCyI90RQ0xF2VvRi8Wd1iy9RlVzCsZru4CVe6pdvpV61mFRS82KDLZL27Ic2CRUmlHf9fqwRMSSgDvESLUxyrZEdGxoeYUU7QkTjW/qpz/TOk0p4rfrqBcx6TUj1xZRoeLmNvJ4cISqxafbBEDGzr7g40TzkkD8EoMzAwo00P7X6R7brWvPZvDkv/caKbbGxjjEkEsDAINjn0xpDQYLEp7qWIlcW+PRFMyv5YxQWDkrK+qAqLwUKIYcqWzb7CyTnQalj2ePNNSc+fwpvQTZ9n01o5r0IC3dMA3KoEsV5qamgV6jBqrXXbug2Ejei9crBbUcVcPrgBboTDQqfyu/zl4TjymUjkd+UfkQk3UHandvAIGugKVbNnkrVLMzlAt0Onr9Q9YKC69fc5mPB0H/Iuup3oTJfKcKog8RkV0wRwyYkH1kxMLnxJwH+zc73gcRPrg8XIunSZRpAajBjGYVUIOag/sBolnRuw==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(376002)(346002)(396003)(39860400002)(230921699003)(186009)(82310400011)(451199024)(1800799009)(46966006)(40470700004)(36840700001)(40480700001)(2906002)(4326008)(70586007)(70206006)(54906003)(316002)(6862004)(40460700003)(5660300002)(8676002)(8936002)(41300700001)(86362001)(336012)(36756003)(26005)(83380400001)(47076005)(36860700001)(2616005)(356005)(81166007)(478600001)(6486002)(53546011)(6506007)(6512007)(33656002)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2023 01:30:17.5304
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6eb2d9cf-7f0d-4f01-1255-08dbbb0b7a6b
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT038.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB5329

Hi George,

> On Sep 21, 2023, at 20:23, George Dunlap <george.dunlap@cloud.com> wrote:
>=20
> The credit scheduler tries as hard as it can to ensure that it always
> runs scheduling units with positive credit (PRI_TS_UNDER) before
> running those with negative credit (PRI_TS_OVER).  If the next
> runnable scheduling unit is of priority OVER, it will always run the
> load balancer, which will scour the system looking for another
> scheduling unit of the UNDER priority.
>=20
> Unfortunately, as the number of cores on a system has grown, the cost
> of the work-stealing algorithm has dramatically increased; a recent
> trace on a system with 128 cores showed this taking over 50
> microseconds.
>=20
> Add a parameter, load_balance_ratelimit, to limit the frequency of
> load balance operations on a given pcpu.  Default this to 1
> millisecond.
>=20
> Invert the load balancing conditional to make it more clear, and line
> up more closely with the comment above it.
>=20
> Overall it might be cleaner to have the last_load_balance checking
> happen inside csched_load_balance(), but that would require either
> passing both now and spc into the function, or looking them up again;
> both of which seemed to be worse than simply checking and setting the
> values before calling it.
>=20
> On a system with a vcpu:pcpu ratio of 2:1, running Windows guests
> (which will end up calling YIELD during spinlock contention), this
> patch increased performance significantly.
>=20
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 01:30:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 01:30:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606671.944662 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjV0P-0006uq-2F; Fri, 22 Sep 2023 01:30:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606671.944662; Fri, 22 Sep 2023 01:30:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjV0O-0006uj-VH; Fri, 22 Sep 2023 01:30:52 +0000
Received: by outflank-mailman (input) for mailman id 606671;
 Fri, 22 Sep 2023 01:30:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aXRy=FG=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qjV0N-0006t5-IB
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 01:30:51 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20602.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a8636d9c-58e7-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 03:30:48 +0200 (CEST)
Received: from AS9P194CA0019.EURP194.PROD.OUTLOOK.COM (2603:10a6:20b:46d::23)
 by PA4PR08MB7460.eurprd08.prod.outlook.com (2603:10a6:102:2a7::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Fri, 22 Sep
 2023 01:30:46 +0000
Received: from AM7EUR03FT054.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:46d:cafe::d5) by AS9P194CA0019.outlook.office365.com
 (2603:10a6:20b:46d::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.30 via Frontend
 Transport; Fri, 22 Sep 2023 01:30:46 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT054.mail.protection.outlook.com (100.127.140.133) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6813.20 via Frontend Transport; Fri, 22 Sep 2023 01:30:45 +0000
Received: ("Tessian outbound d084e965c4eb:v175");
 Fri, 22 Sep 2023 01:30:45 +0000
Received: from cd7590275c0a.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 487F3CE4-CE74-406C-87CB-FD924DAA8702.1; 
 Fri, 22 Sep 2023 01:30:38 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id cd7590275c0a.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 22 Sep 2023 01:30:38 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by VI1PR08MB5328.eurprd08.prod.outlook.com (2603:10a6:803:13a::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Fri, 22 Sep
 2023 01:30:36 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 01:30:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a8636d9c-58e7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=s+WsQJ+PBJm+W9JYsD8tDKoIcVxsXAFEaZYWIMcTypc=;
 b=KZGZ7I5+4azJC+nv+2NETL0BeNTRmmljV4b9cfGaJyqAOHgLH6CI2spXUrJ1NxzOAB3vQTm0Bsqjc6Zpl2sf1R2IX/lyU3F+OtHzSm/niNvIjpADm9ZHeK9dkvMDr60Ux4AMFg6gtF/Y9F6L48KRfzg3ob92HMaO4dmyOWkLUeM=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: d59b2d05c2fd3d49
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=i+mT+ubCO7SR2ED4GCB60mMmlo58Atv+ytxdH1prtjrNq0uFNWGQA3frBBIZ68oaUWD7hslPkPhSC1h+7T6ChWRR+dxWoKj1vNb7BJ1thI2hpru5dQFDtQx6R5jGFVRIEbnsTzQNceDaUT6S2DypoilvJUzRbNtsGQyevWxWZRVmPsyQxMu+yKf59er5pwx59sWX/cP9lTD0WD29Pp/21W7u7rufdXtYHTOcjIHAu3znoPlfLehe92SrXdSl71VO/97WhAiFeqBMssPwS/tuTUz6Yc1YPy16j6n/XlSd2dL6ATZLY+xWcz9bC+Pp0d7I0qZVq4Bpj2PebvyUGblHpA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=s+WsQJ+PBJm+W9JYsD8tDKoIcVxsXAFEaZYWIMcTypc=;
 b=OQ0Bhew8MqUkF+7gXGKOV8v69lbgcbOZEdwbQQOztSV2Se2byKPRzBQgmdkOv8wuPq4VHN2Id6ewgskqBJTsMpCb0ShKgPwmna129npHSQP7W+i3LYWvOjBiUpSvaB3c7uAouAg/labrQ92EldmmLmZpoMfsaT7nymEfOXqc/6kJ4IVja6J+t64A4GQclNbJZY1OmHgm1VT8VDScsDk7/9q/TdVnUKe8PTyxuBN9DpnpZc6jttGvLxAiVtakN81lM7pn+idT0+OI677amUYUZIQFDkptK6W3VyQGvU8n2aTuJEh9SLZO7uiF79eVEG+vdd3aOYz3hxEUdwEI5GOZWQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=s+WsQJ+PBJm+W9JYsD8tDKoIcVxsXAFEaZYWIMcTypc=;
 b=KZGZ7I5+4azJC+nv+2NETL0BeNTRmmljV4b9cfGaJyqAOHgLH6CI2spXUrJ1NxzOAB3vQTm0Bsqjc6Zpl2sf1R2IX/lyU3F+OtHzSm/niNvIjpADm9ZHeK9dkvMDr60Ux4AMFg6gtF/Y9F6L48KRfzg3ob92HMaO4dmyOWkLUeM=
From: Henry Wang <Henry.Wang@arm.com>
To: George Dunlap <george.dunlap@cloud.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Dario Faggioli
	<dfaggioli@suse.com>
Subject: Re: [PATCH v2 2/2] credit: Don't steal vcpus which have yielded
Thread-Topic: [PATCH v2 2/2] credit: Don't steal vcpus which have yielded
Thread-Index: AQHZ7IaORUrMbawngUSqIrYhJSNv+rAmD6wA
Date: Fri, 22 Sep 2023 01:30:36 +0000
Message-ID: <36C4D18B-89A0-4B29-80AF-289C41B08E97@arm.com>
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
 <20230921122352.2307574-2-george.dunlap@cloud.com>
In-Reply-To: <20230921122352.2307574-2-george.dunlap@cloud.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|VI1PR08MB5328:EE_|AM7EUR03FT054:EE_|PA4PR08MB7460:EE_
X-MS-Office365-Filtering-Correlation-Id: dba0f324-63a5-4d1b-5e96-08dbbb0b8b2c
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 nCR3NvV0U/9LhG1CcVx5vmOLseyUeRbQmz5GREN5lK1tOfPQVsSehlGo6i4vEroXhn3EEf65422mlWHOcQsaWaTGGYWrMuU1FNZqz0edyRZ6P64rLYzEPCO11hUczDCXIKdXi8wvPgVPj0qkqhrYsSc0MDxNbKFHbtd8haqWWu60DZGls7ZCQ4ZDMuMnyNJC27LY9zJ7hMDzZK9Zh273A59yF2f+NmMVZbCqL2AbYED7oPPOURkHQ+vTk5YXG864+kbs3YK5B/heaRg8SDJKDska08CmrGzeHleyzy52etDNWpIDANsIx99tvFNiOy/FiiRwD46eVpUJNrLB/PG6oC4bYOM5yK8tYksGrWH2iW+3E5147E5j0ffN57+Ua6lQf5LXWeSKjy5t2m/b0zAtuLT4kVx9D27qd2BnUD6H3aZsp93EhfzguURhyr7lD/yctJUFzAdSQRlSwoWQ6nMB++eh98GxRzgsi/1bQLhOzxxjBifWB3JXZG5MzfjiiYIQuA27Fq2TAVmx4vaBqOmHVeeeYt6EEwYWsnh60E9hebKTy8MO98rvh6T57RC5elCUqSTpOl6HzMfc6sFgMQwm0f0RB0GvxpjgBRPELGWgkmhqw5fYqRk9ULusrEAeg+aDkgM67aBjXk1Ng15s3c1rhg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(39860400002)(376002)(366004)(346002)(186009)(1800799009)(451199024)(2906002)(316002)(5660300002)(54906003)(76116006)(4744005)(26005)(41300700001)(6916009)(66556008)(91956017)(66446008)(66946007)(64756008)(66476007)(478600001)(4326008)(8936002)(8676002)(71200400001)(6486002)(6506007)(53546011)(6512007)(38100700002)(2616005)(86362001)(36756003)(33656002)(122000001)(83380400001)(38070700005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <2A4590D597FBC74C9B2A8C4B039E907F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5328
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	e454db36-5320-4d73-31fd-08dbbb0b85c2
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	StNXLmSxxvQlLDiDA6NyxSCvk4oSvkqPCrXXdCHzfl7XLrvuwIN864b6Pf9UTSkLQ/ngrcMeqqDREwjj4rOyArhen4+kSkXT5GROOgNUZtqf+wKkxQWyMP0AwiWKo2fMAu60uRiiEbGyCxwJZcQ1O7pxGUP2s5j/h8xF7c3EmQEvPSAOy92QdC308R5sx6LSVD8EQxvIvjMPxZ7KAZmsEhhLplzsJCC4ESZfjk22LjefVe+QboOMMfZbOQv4qJq6J1cPIFEBem9gk0bzMXoMdF2xHEiZogjPBvFzkPrp7QW4mOYqhUeBc37/kmQ4I+iMNR7I4ot3Y0abivU0n7MDQeELewGIvc66b4K3o5XE8Ra02WHQsAo1HZei6EwBXmnDhuQIu9hnwh0l9CwG5cyiIs865+4ZCsWDsSAF4vigLihJY/RYmllEY+iUgCNZ2pJ24owIV0nkQ01EGUByZwj/v8+Xn/xGf0+iIT40mvmAKCyrLan+sS+mf5e6JtKt/UJncPJ0ST3z/yPMEajBvswBssleZVSIjz17g73desBzebN2cUVWtuBubGNWBRBoVC69xlgIzydOnWVaGPUVADYh+sP8r5MoMa6KHp4LSM+IHv0qGBTSL2+GPweav2Dumc6c3ar8JpuKVFl8AoY7lcGAgOEcm4upEV4cNFcN8FsBaN+DamqAVXvWpUQP4ocjn6CPswqsLO+JmBOOhcZh9cljOXdm3v+2fndaxgVH9UE6f/J8uJnl1eZsVfYREeAGt7M2jwX+S0UU87K9txEvWoPV/Q==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(396003)(376002)(136003)(82310400011)(1800799009)(451199024)(186009)(230921699003)(46966006)(36840700001)(40470700004)(53546011)(26005)(336012)(478600001)(6506007)(6486002)(6512007)(2616005)(47076005)(83380400001)(107886003)(2906002)(4744005)(5660300002)(4326008)(6862004)(8676002)(70586007)(70206006)(54906003)(8936002)(316002)(41300700001)(40460700003)(81166007)(36860700001)(40480700001)(36756003)(33656002)(86362001)(356005)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2023 01:30:45.6407
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: dba0f324-63a5-4d1b-5e96-08dbbb0b8b2c
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB7460

Hi George,

> On Sep 21, 2023, at 20:23, George Dunlap <george.dunlap@cloud.com> wrote:
>=20
> On large systems with many vcpus yielding due to spinlock priority
> inversion, it's not uncommon for a vcpu to yield its timeslice, only
> to be immediately stolen by another pcpu looking for higher-priority
> work.
>=20
> To prevent this:
>=20
> * Keep the YIELD flag until a vcpu is removed from a runqueue
>=20
> * When looking for work to steal, skip vcpus which have yielded
>=20
> NB that this does mean that sometimes a VM is inserted into an empty
> runqueue; handle that case.
>=20
> Signed-off-by: George Dunlap <george.dunlap@cloud.com>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 01:31:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 01:31:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606677.944673 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjV1F-0007X1-F9; Fri, 22 Sep 2023 01:31:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606677.944673; Fri, 22 Sep 2023 01:31:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjV1F-0007Wu-AK; Fri, 22 Sep 2023 01:31:45 +0000
Received: by outflank-mailman (input) for mailman id 606677;
 Fri, 22 Sep 2023 01:31:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aXRy=FG=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qjV1E-0007Wi-D9
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 01:31:44 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2072.outbound.protection.outlook.com [40.107.7.72])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c82afa56-58e7-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 03:31:41 +0200 (CEST)
Received: from AS9PR06CA0550.eurprd06.prod.outlook.com (2603:10a6:20b:485::11)
 by DBBPR08MB6156.eurprd08.prod.outlook.com (2603:10a6:10:20b::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Fri, 22 Sep
 2023 01:31:12 +0000
Received: from AM7EUR03FT051.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:485:cafe::1b) by AS9PR06CA0550.outlook.office365.com
 (2603:10a6:20b:485::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.32 via Frontend
 Transport; Fri, 22 Sep 2023 01:31:12 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT051.mail.protection.outlook.com (100.127.140.64) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6813.20 via Frontend Transport; Fri, 22 Sep 2023 01:31:12 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Fri, 22 Sep 2023 01:31:11 +0000
Received: from 4bfd500c382b.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 D66B5454-8001-4053-8A40-D6770997ADA6.1; 
 Fri, 22 Sep 2023 01:31:05 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 4bfd500c382b.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 22 Sep 2023 01:31:05 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by VI1PR08MB5328.eurprd08.prod.outlook.com (2603:10a6:803:13a::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Fri, 22 Sep
 2023 01:31:03 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 01:31:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c82afa56-58e7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HeO28K0ZBDxilTzshX43k428o5Wi/4fmScCfSOk6Phw=;
 b=SnNjHIwuGEbxVcYuJOxr37b6q5oc6INkWbfMhzHAH3Gf6Atdi4ELthIK8JBTMGZ5Q8qiQlj91oEWt+dQrFTd2vytRVOvEVbAAVBkseqgsB4QSTprk0vOYQz83gxyUlzLmNiI8ZM8JVh5UgLs9w+Qpm2f8X/+ZrGLVE3/EvO7fTA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: b3700a2949b093e7
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hNcZnbxLpOZ/tpMlZTSHAo03f34RuFUlYVKp/osNGwSxhZ2MfxX0LBAUOr8T23CfEf4N3YjeoK/rcdcwCdTkwcpgTMl6ms0ZrDbKkjrGj8w4u7WT24dANtxHrHf/oyBA1tdGCNSMr8uI9zFPimMxu/kiIDo7ePe6g3nnm7Wb5dbsFvVV1NETVnqIqr/dTQ0QwRm32nZIPtN1fz8XQPA9wPL2OmfKiEi8ISnGSxo84QrtxJS+a8Yi3NN9Ta1OkV4j/09A0aLkPI9UZj3n7tVrRMMxCc4nSPQ6IdaHbtdV6Yxg5eT0ReEfNOqNWZBMFseUx+W2dWUAjdFOMCxGqRXx0A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HeO28K0ZBDxilTzshX43k428o5Wi/4fmScCfSOk6Phw=;
 b=MWtpvqbb3/2zpmKSIvXFHBRnANK4S//2PBauf2rKQ8ye3fk4G8+TRLfJ3wqYh4FM1YJ3VaaaFNx1HTRZfGP1Z9IyAYAs/L8qWls9Wj6GLYw/RS/O2gZ/y3UtYYmHXs3Y0Cu5ftiGKX4Mb3cQ3x12Ov8uOoGmSH+D4JtO3FoYBfUrflK/XVCXkIACP7w8xXBLtWJ1d57NYesf1pM8WefsQ6ltObQpyGnNuiPDQ+BBLS6h4zdYbxD4fkut/sLndEZwUfhbfZX20ozLyf+i190ufA85tvE1IhNUZPfsvdgIWnIGwQwJgfA7gudijhVa7ZgxAEJ03JRCMPn1UcGL9jz0uQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HeO28K0ZBDxilTzshX43k428o5Wi/4fmScCfSOk6Phw=;
 b=SnNjHIwuGEbxVcYuJOxr37b6q5oc6INkWbfMhzHAH3Gf6Atdi4ELthIK8JBTMGZ5Q8qiQlj91oEWt+dQrFTd2vytRVOvEVbAAVBkseqgsB4QSTprk0vOYQz83gxyUlzLmNiI8ZM8JVh5UgLs9w+Qpm2f8X/+ZrGLVE3/EvO7fTA=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>, Nicola Vetrini
	<nicola.vetrini@bugseng.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, George Dunlap
	<george.dunlap@eu.citrix.com>, Tim Deegan <tim@xen.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH] x86/paging: Delete update_cr3()'s do_locking parameter
Thread-Topic: [PATCH] x86/paging: Delete update_cr3()'s do_locking parameter
Thread-Index: AQHZ6/fUOR6sHl/nsk2xhF9PyzBzTLAlOT2AgADXrAA=
Date: Fri, 22 Sep 2023 01:31:03 +0000
Message-ID: <2DC52974-F6BB-479B-8A1D-3E57CCA1897C@arm.com>
References: <20230920192153.1967618-1-andrew.cooper3@citrix.com>
 <0ba4e387-5f58-6828-9168-cab0ae3b3698@suse.com>
In-Reply-To: <0ba4e387-5f58-6828-9168-cab0ae3b3698@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|VI1PR08MB5328:EE_|AM7EUR03FT051:EE_|DBBPR08MB6156:EE_
X-MS-Office365-Filtering-Correlation-Id: 5589c1d8-5d3d-4b7d-56c3-08dbbb0b9b16
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 TL7nEBcRql/UZR+LW4ta+wdtaOJjtWDZ5gmOKARr8nBRWd1GdfSfXc+YGHLp+s29PEOhYPIoAaDCsDw6jHZWQWbQ1VFYJAsQkCBj2sq1eWmCKhMzzebYD4uHTRTWFFARxX2NxKU+sX4i6POiERyvW1g0/mn9dZS8ojcFlGG4XlL+QZohtl3PcvBHMt609mZb6EtHEQjBQsjmrSE4V3sfpvZMBqfsNQ2cbwh1WCj1Ecod0lTX8ow5Uv/U7TXRVUxIJPrD42cWzAq2VVcdklrPK3gNtRBkURH6hGVVnqkQYtNUAXLO+t6jxugeXF71SN0XVbrVm1BAIuGWPUq9WzHfTG9QQ7pq6avReqOtDTybscZnli9iFt0+NxAv1xQefXz48yHeIA3ju/j4HIZgoPuzSIq1TFteB5ESmlwrd0RGyKU/6S5j2x3HnpzqDXXqUkuFtBTU3ccyuNv+n5nNiD7shq3ueyDljgia/Z+bPrCwlzwmh4iK+vuFsg+V6FBfZuv2bOrzlMYw1R2fJxCQOs0b0Nfy90/ZFwnDb5c7BbI2RIOhmjGvNaAEVEDb0ffXycJ+SLL0K+mNah2QRC3P7tlI9BQsYO49cDip1/gz0vd9Dno9GKIBM1GeRjjOB0OXkrafJKqIXz1KtnyBmBpdA0I2Cg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(39860400002)(376002)(366004)(346002)(186009)(1800799009)(451199024)(2906002)(316002)(5660300002)(54906003)(76116006)(26005)(41300700001)(6916009)(66556008)(91956017)(66446008)(66946007)(64756008)(66476007)(478600001)(4326008)(8936002)(8676002)(71200400001)(6486002)(6506007)(53546011)(6512007)(38100700002)(2616005)(86362001)(36756003)(33656002)(122000001)(83380400001)(38070700005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <6FA9B65EE485EE4AB6344FAD3F942C2F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5328
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT051.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	ba09e1d7-bb69-4de0-2242-08dbbb0b959c
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hu0hM4Y1nBlTea1kNjmDv4WqKft3bx3NU32NHpr/BNA53ChES7NgZLbiOgARj4luOCRj3nHJl3UZJKBPO7Z5pVPKsriPRZBev0vcqPzcmvA4hPWWtFynr95yxxUuJAOWUw5W3/xf4Ii0cmOnvqpxU1LQt3mk923ZF+wWifW4ef99asMOL8IOmAh8jirkuiP/99bjzn0OIT57lDglahlTh8Jtb+AGt137EiKx7VWeBuahT3YETfy0VxcMymomrU3QVoeVpjGMkhS+aZMs12SXqcU1aP4B+QHKUnO91ZJv7MHCdk178ugkHIiAt2JbhpPev3Os+mUHd1X3PwVTTAda+YX3HzHCxeZ/fVAE6G86eTIZJ1eOvdwBNlvy77pJUFk0TmngqYakU8QN9pdwxQj5fc/Js8/ARf4lUEPPh8MREEZxV5JhlNDjUSvRIZgox6BGA/GDaQF7zaewUowamU0yk9etPwyOXwyawGQuho/ZZFcosKG2B1PfHdDh0zH5RUHObRInov6hsBLlvBhDmp4GWc2SyFnnUaF9ilqYESeKmROGXbE5boxgBWWQs7Xb90OLunTpeGc1+S2WSf3+7j4U+Bq78T8qxgQExnj4hyOI/cWg69i/w3tzH9THD8kyXT4SCQhjepyv8M/2l24qqqf/P8NLZkVXp4VV6nZ+uQNo1b1yq/fbImBQut5nOAP9Yw3TvFECv4jMxu1nksvFTeV6vdK751hexMtJSi9qS75EorRHErOkLo16D1Uwh/OGMu87PhOGvPG0xJpiB7vKiR+Mww==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(346002)(396003)(39860400002)(230921699003)(451199024)(186009)(1800799009)(82310400011)(36840700001)(40470700004)(46966006)(40460700003)(6862004)(5660300002)(2906002)(4326008)(41300700001)(8676002)(8936002)(70586007)(316002)(33656002)(40480700001)(54906003)(86362001)(36756003)(70206006)(26005)(336012)(83380400001)(6512007)(2616005)(53546011)(36860700001)(356005)(47076005)(6486002)(6506007)(478600001)(82740400003)(81166007);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2023 01:31:12.3399
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5589c1d8-5d3d-4b7d-56c3-08dbbb0b9b16
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT051.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6156

SGksDQoNCj4gT24gU2VwIDIxLCAyMDIzLCBhdCAyMDozOCwgSmFuIEJldWxpY2ggPGpiZXVsaWNo
QHN1c2UuY29tPiB3cm90ZToNCj4gT24gMjAuMDkuMjAyMyAyMToyMSwgQW5kcmV3IENvb3BlciB3
cm90ZToNCj4+IE5pY29sYSByZXBvcnRzIHRoYXQgdGhlIFhTQS00MzggZml4IGludHJvZHVjZWQg
bmV3IE1JU1JBIHZpb2xhdGlvbnMgYmVjYXVzZSBvZg0KPj4gc29tZSBpbmNpZGVudGFsIHRpZHlp
bmcgaXQgdHJpZWQgdG8gZG8uICBUaGUgcGFyYW1ldGVyIGlzIHVzZWxlc3MsIHNvIHJlc29sdmUN
Cj4+IHRoZSBNSVNSQSByZWdyZXNzaW9uIGJ5IHJlbW92aW5nIGl0Lg0KPj4gDQo+PiBoYXBfdXBk
YXRlX2NyMygpIGRpc2NhcmRzIHRoZSBwYXJhbWV0ZXIgZW50aXJlbHksIHdoaWxlIHNoX3VwZGF0
ZV9jcjMoKSB1c2VzDQo+PiBpdCB0byBkaXN0aW5ndWlzaCBpbnRlcm5hbCBhbmQgZXh0ZXJuYWwg
Y2FsbGVycyBhbmQgdGhlcmVmb3JlIHdoZXRoZXIgdGhlDQo+PiBwYWdpbmcgbG9jayBzaG91bGQg
YmUgdGFrZW4uDQo+PiANCj4+IEhvd2V2ZXIsIHdlIGhhdmUgcGFnaW5nX2xvY2tfcmVjdXJzaXZl
KCkgZm9yIHRoaXMgcHVycG9zZSwgd2hpY2ggYWxzbyBhdm9pZHMNCj4+IHRoZSBhYmlsaXR5IGZv
ciB0aGUgc2hhZG93IGludGVybmFsIGNhbGxlcnMgdG8gYWNjaWRlbnRhbGx5IG5vdCBob2xkIHRo
ZSBsb2NrLg0KPj4gDQo+PiBGaXhlczogZmIwZmY0OWZlOWY3ICgieDg2L3NoYWRvdzogZGVmZXIg
cmVsZWFzaW5nIG9mIFBWJ3MgdG9wLWxldmVsIHNoYWRvdyByZWZlcmVuY2UiKQ0KPj4gUmVwb3J0
ZWQtYnk6IE5pY29sYSBWZXRyaW5pIDxuaWNvbGEudmV0cmluaUBidWdzZW5nLmNvbT4NCj4+IFNp
Z25lZC1vZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+DQo+
PiAtLS0NCj4+IENDOiBKYW4gQmV1bGljaCA8SkJldWxpY2hAc3VzZS5jb20+DQo+PiBDQzogUm9n
ZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+DQo+PiBDQzogV2VpIExpdSA8d2xA
eGVuLm9yZz4NCj4+IENDOiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGV1LmNpdHJpeC5j
b20+DQo+PiBDQzogVGltIERlZWdhbiA8dGltQHhlbi5vcmc+DQo+PiBDQzogU3RlZmFubyBTdGFi
ZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPg0KPj4gQ0M6IE5pY29sYSBWZXRyaW5pIDxu
aWNvbGEudmV0cmluaUBidWdzZW5nLmNvbT4NCj4+IA0KPj4gU2xpZ2h0bHkgUkZDLiAgT25seSBj
b21waWxlIHRlc3RlZCBzbyBmYXIuDQo+IA0KPiBXaXRoIHNoYWRvdy9ub25lLmMgYWxzbyBzdWl0
YWJseSBlZGl0ZWQNCj4gUmV2aWV3ZWQtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNv
bT4NCg0KUmVsZWFzZS1hY2tlZC1ieTogSGVucnkgV2FuZyA8SGVucnkuV2FuZ0Bhcm0uY29tPg0K
DQpLaW5kIHJlZ2FyZHMsDQpIZW5yeQ==


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 02:54:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 02:54:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606687.944683 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjWIf-0004J1-E3; Fri, 22 Sep 2023 02:53:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606687.944683; Fri, 22 Sep 2023 02:53:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjWIf-0004Iu-B3; Fri, 22 Sep 2023 02:53:49 +0000
Received: by outflank-mailman (input) for mailman id 606687;
 Fri, 22 Sep 2023 02:53:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WcZa=FG=gmail.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qjWIe-0004Io-8l
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 02:53:48 +0000
Received: from mail-pf1-x431.google.com (mail-pf1-x431.google.com
 [2607:f8b0:4864:20::431])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3d788db2-58f3-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 04:53:43 +0200 (CEST)
Received: by mail-pf1-x431.google.com with SMTP id
 d2e1a72fcca58-69101022969so1545850b3a.3
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 19:53:43 -0700 (PDT)
Received: from ?IPV6:2400:4050:a840:1e00:78d2:b862:10a7:d486?
 ([2400:4050:a840:1e00:78d2:b862:10a7:d486])
 by smtp.gmail.com with ESMTPSA id
 v7-20020a17090ac90700b00268188ea4b9sm2146318pjt.19.2023.09.21.19.53.35
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 21 Sep 2023 19:53:41 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3d788db2-58f3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695351222; x=1695956022; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=onRr8hdq4v5JQc7LkGYpFCCv8yWfml33JMDRjcM3me0=;
        b=MHAFdkBDhPe15AQc8o5ZSCdknsgb+fXdziy8WKwlJM1AjyOOTrEwIC5RjzYg3JXu+f
         M9yvdbdWYB9lHeR6qNwD0Jl3kde1Nq0+cuytL49dgTSG1B4VecYYKs7mtr7XEUFZ7pIN
         z2zJWmx/DLdA9mJrFpPnvzC7gzmYKd/sAX586t+PBXHrP5sT0ysHOPqRbDeK78rN7U5O
         UTvk31QzfaMT2eFQXmjHgmwGYPs/EpOKMTu70mhHk7MTuvo6YReB3f8IOuGvniIe6slF
         JZUL0eLcU34RHP/4vWfplJF7ten5SNktiRbprWrhVNcbG/Lg/+PxSQnVce1St9AXjSja
         l4ug==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695351222; x=1695956022;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=onRr8hdq4v5JQc7LkGYpFCCv8yWfml33JMDRjcM3me0=;
        b=WNf/kVYeq1TpJDpR0/49bkaxhqMPmysZOry/tzWiRK7zVqjou4+FgX/2GYyFXAlCly
         PrNlE+AdeEnIrC6YMzmeB3c/VFQk3efZ3wRhs3AZMcKrypp699OFgShvZEG6YRg6W302
         akmG/8U3+9Smg5NWL74xNikTjh2k2M9JYVfxygFAzOpBGGz+8qPje4tdMLH+9/c1U+wu
         3jdeaOQlaULgPQGJHt1znzX2vGaCgtm+YxarAnQh1j2JpGonwrMJa/jHFn+4c6RRNNT7
         GDc6KhP9BiS9ykpm47XZo5H/LVptzWR7QxfdCLLRrHsKhDd6CkI6Z3nO5hvay5VUsaTv
         yJPw==
X-Gm-Message-State: AOJu0YwsKoZG86S5Oc0S1aCOl4q1RIi/ucu1y/1Xyb8S329A/i9ixOIz
	fsdKDEfxu077xm+eB50cSYY=
X-Google-Smtp-Source: AGHT+IF9RscWeQg1KyeWa+o+j3AZci3gYfUVQUpVOEgsPlZleA/aJ2XKWFI0EprjkBPuDvh/Gx+neg==
X-Received: by 2002:a05:6a20:160d:b0:15a:3b83:24d1 with SMTP id l13-20020a056a20160d00b0015a3b8324d1mr9006559pzj.18.1695351221879;
        Thu, 21 Sep 2023 19:53:41 -0700 (PDT)
Message-ID: <6256f069-ee39-495e-a8c3-ea2328f085a2@gmail.com>
Date: Fri, 22 Sep 2023 11:53:34 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v13 6/9] gfxstream + rutabaga: add initial support for
 gfxstream
Content-Language: en-US
To: Gurchetan Singh <gurchetansingh@chromium.org>,
 Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Cc: qemu-devel@nongnu.org, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 marcandre.lureau@redhat.com, ray.huang@amd.com, alex.bennee@linaro.org,
 shentey@gmail.com, hi@alyssa.is, ernunes@redhat.com,
 manos.pitsidianakis@linaro.org, philmd@linaro.org,
 Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 xen-devel@lists.xenproject.org, Albert Esteve <aesteve@redhat.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>
References: <20230829003629.410-1-gurchetansingh@chromium.org>
 <20230829003629.410-7-gurchetansingh@chromium.org>
 <2620fca0-a5b4-49d0-bf91-fd359ee4999b@gmail.com>
 <3830bf8d-8c25-950c-f901-8d70dbfc06a6@ilande.co.uk>
 <CAAfnVBknhG=QYn=OFjNW9h=KbDtQ=xq3AEs5Pg=AG3LTO=LZ6w@mail.gmail.com>
From: Akihiko Odaki <akihiko.odaki@gmail.com>
In-Reply-To: <CAAfnVBknhG=QYn=OFjNW9h=KbDtQ=xq3AEs5Pg=AG3LTO=LZ6w@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 2023/09/22 9:03, Gurchetan Singh wrote:
> 
> 
> On Wed, Sep 20, 2023 at 5:05 AM Mark Cave-Ayland 
> <mark.cave-ayland@ilande.co.uk <mailto:mark.cave-ayland@ilande.co.uk>> 
> wrote:
> 
>     On 20/09/2023 12:42, Akihiko Odaki wrote:
> 
>      > On 2023/08/29 9:36, Gurchetan Singh wrote:
>      >> This adds initial support for gfxstream and cross-domain.  Both
>      >> features rely on virtio-gpu blob resources and context types, which
>      >> are also implemented in this patch.
>      >>
>      >> gfxstream has a long and illustrious history in Android graphics
>      >> paravirtualization.  It has been powering graphics in the Android
>      >> Studio Emulator for more than a decade, which is the main developer
>      >> platform.
>      >>
>      >> Originally conceived by Jesse Hall, it was first known as
>     "EmuGL" [a].
>      >> The key design characteristic was a 1:1 threading model and
>      >> auto-generation, which fit nicely with the OpenGLES spec.  It also
>      >> allowed easy layering with ANGLE on the host, which provides the
>     GLES
>      >> implementations on Windows or MacOS enviroments.
>      >>
>      >> gfxstream has traditionally been maintained by a single
>     engineer, and
>      >> between 2015 to 2021, the goldfish throne passed to Frank Yang.
>      >> Historians often remark this glorious reign ("pax gfxstreama" is the
>      >> academic term) was comparable to that of Augustus and both Queen
>      >> Elizabeths.  Just to name a few accomplishments in a resplendent
>      >> panoply: higher versions of GLES, address space graphics, snapshot
>      >> support and CTS compliant Vulkan [b].
>      >>
>      >> One major drawback was the use of out-of-tree goldfish drivers.
>      >> Android engineers didn't know much about DRM/KMS and especially
>     TTM so
>      >> a simple guest to host pipe was conceived.
>      >>
>      >> Luckily, virtio-gpu 3D started to emerge in 2016 due to the work of
>      >> the Mesa/virglrenderer communities.  In 2018, the initial virtio-gpu
>      >> port of gfxstream was done by Cuttlefish enthusiast Alistair Delva.
>      >> It was a symbol compatible replacement of virglrenderer [c] and
>     named
>      >> "AVDVirglrenderer".  This implementation forms the basis of the
>      >> current gfxstream host implementation still in use today.
>      >>
>      >> cross-domain support follows a similar arc.  Originally conceived by
>      >> Wayland aficionado David Reveman and crosvm enjoyer Zach Reizner in
>      >> 2018, it initially relied on the downstream "virtio-wl" device.
>      >>
>      >> In 2020 and 2021, virtio-gpu was extended to include blob resources
>      >> and multiple timelines by yours truly, features
>     gfxstream/cross-domain
>      >> both require to function correctly.
>      >>
>      >> Right now, we stand at the precipice of a truly fantastic
>     possibility:
>      >> the Android Emulator powered by upstream QEMU and upstream Linux
>      >> kernel.  gfxstream will then be packaged properfully, and app
>      >> developers can even fix gfxstream bugs on their own if they
>     encounter
>      >> them.
>      >>
>      >> It's been quite the ride, my friends.  Where will gfxstream head
>     next,
>      >> nobody really knows.  I wouldn't be surprised if it's around for
>      >> another decade, maintained by a new generation of Android graphics
>      >> enthusiasts.
>      >>
>      >> Technical details:
>      >>    - Very simple initial display integration: just used Pixman
>      >>    - Largely, 1:1 mapping of virtio-gpu hypercalls to rutabaga
>     function
>      >>      calls
>      >>
>      >> Next steps for Android VMs:
>      >>    - The next step would be improving display integration and UI
>     interfaces
>      >>      with the goal of the QEMU upstream graphics being in an
>     emulator
>      >>      release [d].
>      >>
>      >> Next steps for Linux VMs for display virtualization:
>      >>    - For widespread distribution, someone needs to package
>     Sommelier or the
>      >>      wayland-proxy-virtwl [e] ideally into Debian main. In
>     addition, newer
>      >>      versions of the Linux kernel come with DRM_VIRTIO_GPU_KMS
>     option,
>      >>      which allows disabling KMS hypercalls.  If anyone cares
>     enough, it'll
>      >>      probably be possible to build a custom VM variant that uses
>     this display
>      >>      virtualization strategy.
>      >>
>      >> [a]
>     https://android-review.googlesource.com/c/platform/development/+/34470 <https://android-review.googlesource.com/c/platform/development/+/34470>
>      >> [b]
>     https://android-review.googlesource.com/q/topic:%22vulkan-hostconnection-start%22 <https://android-review.googlesource.com/q/topic:%22vulkan-hostconnection-start%22>
>      >> [c]
>     https://android-review.googlesource.com/c/device/generic/goldfish-opengl/+/761927 <https://android-review.googlesource.com/c/device/generic/goldfish-opengl/+/761927>
>      >> [d] https://developer.android.com/studio/releases/emulator
>     <https://developer.android.com/studio/releases/emulator>
>      >> [e] https://github.com/talex5/wayland-proxy-virtwl
>     <https://github.com/talex5/wayland-proxy-virtwl>
>      >>
>      >> Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org
>     <mailto:gurchetansingh@chromium.org>>
>      >> Tested-by: Alyssa Ross <hi@alyssa.is <mailto:hi@alyssa.is>>
>      >> Tested-by: Emmanouil Pitsidianakis
>     <manos.pitsidianakis@linaro.org <mailto:manos.pitsidianakis@linaro.org>>
>      >> Tested-by: Akihiko Odaki <akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>>
>      >> Reviewed-by: Emmanouil Pitsidianakis
>     <manos.pitsidianakis@linaro.org <mailto:manos.pitsidianakis@linaro.org>>
>      >> Reviewed-by: Antonio Caggiano <quic_acaggian@quicinc.com
>     <mailto:quic_acaggian@quicinc.com>>
>      >> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com
>     <mailto:akihiko.odaki@daynix.com>>
>      >> ---
>      >>   hw/display/virtio-gpu-pci-rutabaga.c |   47 ++
>      >>   hw/display/virtio-gpu-rutabaga.c     | 1119
>     ++++++++++++++++++++++++++
>      >>   hw/display/virtio-vga-rutabaga.c     |   50 ++
>      >>   3 files changed, 1216 insertions(+)
>      >>   create mode 100644 hw/display/virtio-gpu-pci-rutabaga.c
>      >>   create mode 100644 hw/display/virtio-gpu-rutabaga.c
>      >>   create mode 100644 hw/display/virtio-vga-rutabaga.c
>      >>
>      >> diff --git a/hw/display/virtio-gpu-pci-rutabaga.c
>      >> b/hw/display/virtio-gpu-pci-rutabaga.c
>      >> new file mode 100644
>      >> index 0000000000..c96729e198
>      >> --- /dev/null
>      >> +++ b/hw/display/virtio-gpu-pci-rutabaga.c
>      >> @@ -0,0 +1,47 @@
>      >> +/* SPDX-License-Identifier: GPL-2.0-or-later */
>      >> +
>      >> +#include "qemu/osdep.h"
>      >> +#include "qapi/error.h"
>      >> +#include "qemu/module.h"
>      >> +#include "hw/pci/pci.h"
>      >> +#include "hw/qdev-properties.h"
>      >> +#include "hw/virtio/virtio.h"
>      >> +#include "hw/virtio/virtio-bus.h"
>      >> +#include "hw/virtio/virtio-gpu-pci.h"
>      >> +#include "qom/object.h"
>      >> +
>      >> +#define TYPE_VIRTIO_GPU_RUTABAGA_PCI "virtio-gpu-rutabaga-pci"
>      >> +OBJECT_DECLARE_SIMPLE_TYPE(VirtIOGPURutabagaPCI,
>     VIRTIO_GPU_RUTABAGA_PCI)
>      >> +
>      >> +struct VirtIOGPURutabagaPCI {
>      >> +    VirtIOGPUPCIBase parent_obj;
>      >> +
>      >> +    VirtIOGPURutabaga vdev;
>      >> +};
>      >> +
>      >> +static void virtio_gpu_rutabaga_initfn(Object *obj)
>      >> +{
>      >> +    VirtIOGPURutabagaPCI *dev = VIRTIO_GPU_RUTABAGA_PCI(obj);
>      >> +
>      >> +    virtio_instance_init_common(obj, &dev->vdev, sizeof(dev->vdev),
>      >> +                                TYPE_VIRTIO_GPU_RUTABAGA);
>      >> +    VIRTIO_GPU_PCI_BASE(obj)->vgpu = VIRTIO_GPU_BASE(&dev->vdev);
>      >> +}
>      >> +
>      >> +static const TypeInfo virtio_gpu_rutabaga_pci_info[] = {
>      >> +    {
>      >> +        .name = TYPE_VIRTIO_GPU_RUTABAGA_PCI,
>      >> +        .parent = TYPE_VIRTIO_GPU_PCI_BASE,
>      >> +        .instance_size = sizeof(VirtIOGPURutabagaPCI),
>      >> +        .instance_init = virtio_gpu_rutabaga_initfn,
>      >> +        .interfaces = (InterfaceInfo[]) {
>      >> +            { INTERFACE_CONVENTIONAL_PCI_DEVICE },
>      >> +        }
>      >> +    },
>      >> +};
>      >> +
>      >> +DEFINE_TYPES(virtio_gpu_rutabaga_pci_info)
>      >> +
>      >> +module_obj(TYPE_VIRTIO_GPU_RUTABAGA_PCI);
>      >> +module_kconfig(VIRTIO_PCI);
>      >> +module_dep("hw-display-virtio-gpu-pci");
>      >> diff --git a/hw/display/virtio-gpu-rutabaga.c
>     b/hw/display/virtio-gpu-rutabaga.c
>      >> new file mode 100644
>      >> index 0000000000..a105e06214
>      >> --- /dev/null
>      >> +++ b/hw/display/virtio-gpu-rutabaga.c
>      >> @@ -0,0 +1,1119 @@
>      >> +/* SPDX-License-Identifier: GPL-2.0-or-later */
>      >> +
>      >> +#include "qemu/osdep.h"
>      >> +#include "qapi/error.h"
>      >> +#include "qemu/error-report.h"
>      >> +#include "qemu/iov.h"
>      >> +#include "trace.h"
>      >> +#include "hw/virtio/virtio.h"
>      >> +#include "hw/virtio/virtio-gpu.h"
>      >> +#include "hw/virtio/virtio-gpu-pixman.h"
>      >> +#include "hw/virtio/virtio-iommu.h"
>      >> +
>      >> +#include <glib/gmem.h>
>      >> +#include <rutabaga_gfx/rutabaga_gfx_ffi.h>
>      >> +
>      >> +#define CHECK(condition,
>     cmd)                                                 \
>      >> +    do
>     {                                                                      \
>      >> +        if (!(condition))
>     {                                                   \
>      >> +            error_report("CHECK failed in %s() %s:" "%d",
>     __func__,           \
>      >> +                         __FILE__,
>     __LINE__);                                 \
>      >> +            (cmd)->error =
>     VIRTIO_GPU_RESP_ERR_UNSPEC;                        \
>      >> +           
>     return;                                                           \
>      >> +      
>     }                                                                      \
>      >> +    } while (0)
>      >> +
>      >> +/*
>      >> + * This is the size of the char array in struct sock_addr_un.
>     No Wayland socket
>      >> + * can be created with a path longer than this, including the
>     null terminator.
>      >> + */
>      >> +#define UNIX_PATH_MAX sizeof((struct sockaddr_un) {} .sun_path)
>      >> +
>      >> +struct rutabaga_aio_data {
>      >> +    struct VirtIOGPURutabaga *vr;
>      >> +    struct rutabaga_fence fence;
>      >> +};
>      >> +
>      >> +static void
>      >> +virtio_gpu_rutabaga_update_cursor(VirtIOGPU *g, struct
>     virtio_gpu_scanout *s,
>      >> +                                  uint32_t resource_id)
>      >> +{
>      >> +    struct virtio_gpu_simple_resource *res;
>      >> +    struct rutabaga_transfer transfer = { 0 };
>      >> +    struct iovec transfer_iovec;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    res = virtio_gpu_find_resource(g, resource_id);
>      >> +    if (!res) {
>      >> +        return;
>      >> +    }
>      >> +
>      >> +    if (res->width != s->current_cursor->width ||
>      >> +        res->height != s->current_cursor->height) {
>      >> +        return;
>      >> +    }
>      >> +
>      >> +    transfer.x = 0;
>      >> +    transfer.y = 0;
>      >> +    transfer.z = 0;
>      >> +    transfer.w = res->width;
>      >> +    transfer.h = res->height;
>      >> +    transfer.d = 1;
>      >> +
>      >> +    transfer_iovec.iov_base = s->current_cursor->data;
>      >> +    transfer_iovec.iov_len = res->width * res->height * 4;
>      >> +
>      >> +    rutabaga_resource_transfer_read(vr->rutabaga, 0,
>      >> +                                    resource_id, &transfer,
>      >> +                                    &transfer_iovec);
>      >> +}
>      >> +
>      >> +static void
>      >> +virtio_gpu_rutabaga_gl_flushed(VirtIOGPUBase *b)
>      >> +{
>      >> +    VirtIOGPU *g = VIRTIO_GPU(b);
>      >> +    virtio_gpu_process_cmdq(g);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_create_resource_2d(VirtIOGPU *g,
>      >> +                                struct virtio_gpu_ctrl_command
>     *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct rutabaga_create_3d rc_3d = { 0 };
>      >> +    struct virtio_gpu_simple_resource *res;
>      >> +    struct virtio_gpu_resource_create_2d c2d;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(c2d);
>      >> +    trace_virtio_gpu_cmd_res_create_2d(c2d.resource_id, c2d.format,
>      >> +                                       c2d.width, c2d.height);
>      >> +
>      >> +    rc_3d.target = 2;
>      >> +    rc_3d.format = c2d.format;
>      >> +    rc_3d.bind = (1 << 1);
>      >> +    rc_3d.width = c2d.width;
>      >> +    rc_3d.height = c2d.height;
>      >> +    rc_3d.depth = 1;
>      >> +    rc_3d.array_size = 1;
>      >> +    rc_3d.last_level = 0;
>      >> +    rc_3d.nr_samples = 0;
>      >> +    rc_3d.flags = VIRTIO_GPU_RESOURCE_FLAG_Y_0_TOP;
>      >> +
>      >> +    result = rutabaga_resource_create_3d(vr->rutabaga,
>     c2d.resource_id, &rc_3d);
>      >> +    CHECK(!result, cmd);
>      >> +
>      >> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
>      >> +    res->width = c2d.width;
>      >> +    res->height = c2d.height;
>      >> +    res->format = c2d.format;
>      >> +    res->resource_id = c2d.resource_id;
>      >> +
>      >> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_create_resource_3d(VirtIOGPU *g,
>      >> +                                struct virtio_gpu_ctrl_command
>     *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct rutabaga_create_3d rc_3d = { 0 };
>      >> +    struct virtio_gpu_simple_resource *res;
>      >> +    struct virtio_gpu_resource_create_3d c3d;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(c3d);
>      >> +
>      >> +    trace_virtio_gpu_cmd_res_create_3d(c3d.resource_id, c3d.format,
>      >> +                                       c3d.width, c3d.height,
>     c3d.depth);
>      >> +
>      >> +    rc_3d.target = c3d.target;
>      >> +    rc_3d.format = c3d.format;
>      >> +    rc_3d.bind = c3d.bind;
>      >> +    rc_3d.width = c3d.width;
>      >> +    rc_3d.height = c3d.height;
>      >> +    rc_3d.depth = c3d.depth;
>      >> +    rc_3d.array_size = c3d.array_size;
>      >> +    rc_3d.last_level = c3d.last_level;
>      >> +    rc_3d.nr_samples = c3d.nr_samples;
>      >> +    rc_3d.flags = c3d.flags;
>      >> +
>      >> +    result = rutabaga_resource_create_3d(vr->rutabaga,
>     c3d.resource_id, &rc_3d);
>      >> +    CHECK(!result, cmd);
>      >> +
>      >> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
>      >> +    res->width = c3d.width;
>      >> +    res->height = c3d.height;
>      >> +    res->format = c3d.format;
>      >> +    res->resource_id = c3d.resource_id;
>      >> +
>      >> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_resource_unref(VirtIOGPU *g,
>      >> +                            struct virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct virtio_gpu_simple_resource *res;
>      >> +    struct virtio_gpu_resource_unref unref;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(unref);
>      >> +
>      >> +    trace_virtio_gpu_cmd_res_unref(unref.resource_id);
>      >> +
>      >> +    res = virtio_gpu_find_resource(g, unref.resource_id);
>      >> +    CHECK(res, cmd);
>      >> +
>      >> +    result = rutabaga_resource_unref(vr->rutabaga,
>     unref.resource_id);
>      >> +    CHECK(!result, cmd);
>      >> +
>      >> +    if (res->image) {
>      >> +        pixman_image_unref(res->image);
>      >> +    }
>      >> +
>      >> +    QTAILQ_REMOVE(&g->reslist, res, next);
>      >> +    g_free(res);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_context_create(VirtIOGPU *g,
>      >> +                            struct virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct virtio_gpu_ctx_create cc;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(cc);
>      >> +    trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
>      >> +                                    cc.debug_name);
>      >> +
>      >> +    result = rutabaga_context_create(vr->rutabaga, cc.hdr.ctx_id,
>      >> +                                     cc.context_init,
>     cc.debug_name, cc.nlen);
>      >> +    CHECK(!result, cmd);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_context_destroy(VirtIOGPU *g,
>      >> +                             struct virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct virtio_gpu_ctx_destroy cd;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(cd);
>      >> +    trace_virtio_gpu_cmd_ctx_destroy(cd.hdr.ctx_id);
>      >> +
>      >> +    result = rutabaga_context_destroy(vr->rutabaga, cd.hdr.ctx_id);
>      >> +    CHECK(!result, cmd);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_resource_flush(VirtIOGPU *g, struct
>     virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    int32_t result, i;
>      >> +    struct virtio_gpu_scanout *scanout = NULL;
>      >> +    struct virtio_gpu_simple_resource *res;
>      >> +    struct rutabaga_transfer transfer = { 0 };
>      >> +    struct iovec transfer_iovec;
>      >> +    struct virtio_gpu_resource_flush rf;
>      >> +    bool found = false;
>      >> +
>      >> +    VirtIOGPUBase *vb = VIRTIO_GPU_BASE(g);
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +    if (vr->headless) {
>      >> +        return;
>      >> +    }
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(rf);
>      >> +    trace_virtio_gpu_cmd_res_flush(rf.resource_id,
>      >> +                                   rf.r.width, rf.r.height,
>     rf.r.x, rf.r.y);
>      >> +
>      >> +    res = virtio_gpu_find_resource(g, rf.resource_id);
>      >> +    CHECK(res, cmd);
>      >> +
>      >> +    for (i = 0; i < vb->conf.max_outputs; i++) {
>      >> +        scanout = &vb->scanout[i];
>      >> +        if (i == res->scanout_bitmask) {
>      >> +            found = true;
>      >> +            break;
>      >> +        }
>      >> +    }
>      >> +
>      >> +    if (!found) {
>      >> +        return;
>      >> +    }
>      >> +
>      >> +    transfer.x = 0;
>      >> +    transfer.y = 0;
>      >> +    transfer.z = 0;
>      >> +    transfer.w = res->width;
>      >> +    transfer.h = res->height;
>      >> +    transfer.d = 1;
>      >> +
>      >> +    transfer_iovec.iov_base = pixman_image_get_data(res->image);
>      >> +    transfer_iovec.iov_len = res->width * res->height * 4;
>      >> +
>      >> +    result = rutabaga_resource_transfer_read(vr->rutabaga, 0,
>      >> +                                             rf.resource_id,
>     &transfer,
>      >> +                                             &transfer_iovec);
>      >> +    CHECK(!result, cmd);
>      >> +    dpy_gfx_update_full(scanout->con);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_set_scanout(VirtIOGPU *g, struct
>     virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    struct virtio_gpu_simple_resource *res;
>      >> +    struct virtio_gpu_scanout *scanout = NULL;
>      >> +    struct virtio_gpu_set_scanout ss;
>      >> +
>      >> +    VirtIOGPUBase *vb = VIRTIO_GPU_BASE(g);
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +    if (vr->headless) {
>      >> +        return;
>      >> +    }
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(ss);
>      >> +    trace_virtio_gpu_cmd_set_scanout(ss.scanout_id, ss.resource_id,
>      >> +                                     ss.r.width, ss.r.height,
>     ss.r.x, ss.r.y);
>      >> +
>      >> +    CHECK(ss.scanout_id < VIRTIO_GPU_MAX_SCANOUTS, cmd);
>      >> +    scanout = &vb->scanout[ss.scanout_id];
>      >> +
>      >> +    if (ss.resource_id == 0) {
>      >> +        dpy_gfx_replace_surface(scanout->con, NULL);
>      >> +        dpy_gl_scanout_disable(scanout->con);
>      >> +        return;
>      >> +    }
>      >> +
>      >> +    res = virtio_gpu_find_resource(g, ss.resource_id);
>      >> +    CHECK(res, cmd);
>      >> +
>      >> +    if (!res->image) {
>      >> +        pixman_format_code_t pformat;
>      >> +        pformat = virtio_gpu_get_pixman_format(res->format);
>      >> +        CHECK(pformat, cmd);
>      >> +
>      >> +        res->image = pixman_image_create_bits(pformat,
>      >> +                                              res->width,
>      >> +                                              res->height,
>      >> +                                              NULL, 0);
>      >> +        CHECK(res->image, cmd);
>      >> +        pixman_image_ref(res->image);
>      >> +    }
>      >> +
>      >> +    vb->enable = 1;
>      >> +
>      >> +    /* realloc the surface ptr */
>      >> +    scanout->ds = qemu_create_displaysurface_pixman(res->image);
>      >> +    dpy_gfx_replace_surface(scanout->con, NULL);
>      >> +    dpy_gfx_replace_surface(scanout->con, scanout->ds);
>      >> +    res->scanout_bitmask = ss.scanout_id;
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_submit_3d(VirtIOGPU *g,
>      >> +                       struct virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct virtio_gpu_cmd_submit cs;
>      >> +    struct rutabaga_command rutabaga_cmd = { 0 };
>      >> +    g_autofree uint8_t *buf = NULL;
>      >> +    size_t s;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(cs);
>      >> +    trace_virtio_gpu_cmd_ctx_submit(cs.hdr.ctx_id, cs.size);
>      >> +
>      >> +    buf = g_new0(uint8_t, cs.size);
>      >> +    s = iov_to_buf(cmd->elem.out_sg, cmd->elem.out_num,
>      >> +                   sizeof(cs), buf, cs.size);
>      >> +    CHECK(s == cs.size, cmd);
>      >> +
>      >> +    rutabaga_cmd.ctx_id = cs.hdr.ctx_id;
>      >> +    rutabaga_cmd.cmd = buf;
>      >> +    rutabaga_cmd.cmd_size = cs.size;
>      >> +
>      >> +    result = rutabaga_submit_command(vr->rutabaga, &rutabaga_cmd);
>      >> +    CHECK(!result, cmd);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_transfer_to_host_2d(VirtIOGPU *g,
>      >> +                                 struct virtio_gpu_ctrl_command
>     *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct rutabaga_transfer transfer = { 0 };
>      >> +    struct virtio_gpu_transfer_to_host_2d t2d;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(t2d);
>      >> +    trace_virtio_gpu_cmd_res_xfer_toh_2d(t2d.resource_id);
>      >> +
>      >> +    transfer.x = t2d.r.x;
>      >> +    transfer.y = t2d.r.y;
>      >> +    transfer.z = 0;
>      >> +    transfer.w = t2d.r.width;
>      >> +    transfer.h = t2d.r.height;
>      >> +    transfer.d = 1;
>      >> +
>      >> +    result = rutabaga_resource_transfer_write(vr->rutabaga, 0,
>     t2d.resource_id,
>      >> +                                              &transfer);
>      >> +    CHECK(!result, cmd);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_transfer_to_host_3d(VirtIOGPU *g,
>      >> +                                 struct virtio_gpu_ctrl_command
>     *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct rutabaga_transfer transfer = { 0 };
>      >> +    struct virtio_gpu_transfer_host_3d t3d;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(t3d);
>      >> +    trace_virtio_gpu_cmd_res_xfer_toh_3d(t3d.resource_id);
>      >> +
>      >> +    transfer.x = t3d.box.x;
>      >> +    transfer.y = t3d.box.y;
>      >> +    transfer.z = t3d.box.z;
>      >> +    transfer.w = t3d.box.w;
>      >> +    transfer.h = t3d.box.h;
>      >> +    transfer.d = t3d.box.d;
>      >> +    transfer.level = t3d.level;
>      >> +    transfer.stride = t3d.stride;
>      >> +    transfer.layer_stride = t3d.layer_stride;
>      >> +    transfer.offset = t3d.offset;
>      >> +
>      >> +    result = rutabaga_resource_transfer_write(vr->rutabaga,
>     t3d.hdr.ctx_id,
>      >> +                                              t3d.resource_id,
>     &transfer);
>      >> +    CHECK(!result, cmd);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_transfer_from_host_3d(VirtIOGPU *g,
>      >> +                                   struct
>     virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct rutabaga_transfer transfer = { 0 };
>      >> +    struct virtio_gpu_transfer_host_3d t3d;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(t3d);
>      >> +    trace_virtio_gpu_cmd_res_xfer_fromh_3d(t3d.resource_id);
>      >> +
>      >> +    transfer.x = t3d.box.x;
>      >> +    transfer.y = t3d.box.y;
>      >> +    transfer.z = t3d.box.z;
>      >> +    transfer.w = t3d.box.w;
>      >> +    transfer.h = t3d.box.h;
>      >> +    transfer.d = t3d.box.d;
>      >> +    transfer.level = t3d.level;
>      >> +    transfer.stride = t3d.stride;
>      >> +    transfer.layer_stride = t3d.layer_stride;
>      >> +    transfer.offset = t3d.offset;
>      >> +
>      >> +    result = rutabaga_resource_transfer_read(vr->rutabaga,
>     t3d.hdr.ctx_id,
>      >> +                                             t3d.resource_id,
>     &transfer, NULL);
>      >> +    CHECK(!result, cmd);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_attach_backing(VirtIOGPU *g, struct
>     virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    struct rutabaga_iovecs vecs = { 0 };
>      >> +    struct virtio_gpu_simple_resource *res;
>      >> +    struct virtio_gpu_resource_attach_backing att_rb;
>      >> +    int ret;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(att_rb);
>      >> +    trace_virtio_gpu_cmd_res_back_attach(att_rb.resource_id);
>      >> +
>      >> +    res = virtio_gpu_find_resource(g, att_rb.resource_id);
>      >> +    CHECK(res, cmd);
>      >> +    CHECK(!res->iov, cmd);
>      >> +
>      >> +    ret = virtio_gpu_create_mapping_iov(g, att_rb.nr_entries,
>     sizeof(att_rb),
>      >> +                                        cmd, NULL, &res->iov,
>     &res->iov_cnt);
>      >> +    CHECK(!ret, cmd);
>      >> +
>      >> +    vecs.iovecs = res->iov;
>      >> +    vecs.num_iovecs = res->iov_cnt;
>      >> +
>      >> +    ret = rutabaga_resource_attach_backing(vr->rutabaga,
>     att_rb.resource_id,
>      >> +                                           &vecs);
>      >> +    if (ret != 0) {
>      >> +        virtio_gpu_cleanup_mapping(g, res);
>      >> +    }
>      >> +
>      >> +    CHECK(!ret, cmd);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_detach_backing(VirtIOGPU *g, struct
>     virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    struct virtio_gpu_simple_resource *res;
>      >> +    struct virtio_gpu_resource_detach_backing detach_rb;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(detach_rb);
>      >> +    trace_virtio_gpu_cmd_res_back_detach(detach_rb.resource_id);
>      >> +
>      >> +    res = virtio_gpu_find_resource(g, detach_rb.resource_id);
>      >> +    CHECK(res, cmd);
>      >> +
>      >> +    rutabaga_resource_detach_backing(vr->rutabaga,
>      >> +                                     detach_rb.resource_id);
>      >> +
>      >> +    virtio_gpu_cleanup_mapping(g, res);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_ctx_attach_resource(VirtIOGPU *g,
>      >> +                                 struct virtio_gpu_ctrl_command
>     *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct virtio_gpu_ctx_resource att_res;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(att_res);
>      >> +    trace_virtio_gpu_cmd_ctx_res_attach(att_res.hdr.ctx_id,
>      >> +                                        att_res.resource_id);
>      >> +
>      >> +    result = rutabaga_context_attach_resource(vr->rutabaga,
>     att_res.hdr.ctx_id,
>      >> +                                              att_res.resource_id);
>      >> +    CHECK(!result, cmd);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_ctx_detach_resource(VirtIOGPU *g,
>      >> +                                 struct virtio_gpu_ctrl_command
>     *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct virtio_gpu_ctx_resource det_res;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(det_res);
>      >> +    trace_virtio_gpu_cmd_ctx_res_detach(det_res.hdr.ctx_id,
>      >> +                                        det_res.resource_id);
>      >> +
>      >> +    result = rutabaga_context_detach_resource(vr->rutabaga,
>     det_res.hdr.ctx_id,
>      >> +                                              det_res.resource_id);
>      >> +    CHECK(!result, cmd);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_get_capset_info(VirtIOGPU *g, struct
>     virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct virtio_gpu_get_capset_info info;
>      >> +    struct virtio_gpu_resp_capset_info resp;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(info);
>      >> +
>      >> +    result = rutabaga_get_capset_info(vr->rutabaga,
>     info.capset_index,
>      >> +                                      &resp.capset_id,
>     &resp.capset_max_version,
>      >> +                                      &resp.capset_max_size);
>      >> +    CHECK(!result, cmd);
>      >> +
>      >> +    resp.hdr.type = VIRTIO_GPU_RESP_OK_CAPSET_INFO;
>      >> +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_get_capset(VirtIOGPU *g, struct
>     virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    struct virtio_gpu_get_capset gc;
>      >> +    struct virtio_gpu_resp_capset *resp;
>      >> +    uint32_t capset_size, capset_version;
>      >> +    uint32_t current_id, i;
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(gc);
>      >> +    for (i = 0; i < vr->num_capsets; i++) {
>      >> +        result = rutabaga_get_capset_info(vr->rutabaga, i,
>      >> +                                          &current_id,
>     &capset_version,
>      >> +                                          &capset_size);
>      >> +        CHECK(!result, cmd);
>      >> +
>      >> +        if (current_id == gc.capset_id) {
>      >> +            break;
>      >> +        }
>      >> +    }
>      >> +
>      >> +    CHECK(i < vr->num_capsets, cmd);
>      >> +
>      >> +    resp = g_malloc0(sizeof(*resp) + capset_size);
>      >> +    resp->hdr.type = VIRTIO_GPU_RESP_OK_CAPSET;
>      >> +    rutabaga_get_capset(vr->rutabaga, gc.capset_id,
>     gc.capset_version,
>      >> +                        resp->capset_data, capset_size);
>      >> +
>      >> +    virtio_gpu_ctrl_response(g, cmd, &resp->hdr, sizeof(*resp)
>     + capset_size);
>      >> +    g_free(resp);
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_resource_create_blob(VirtIOGPU *g,
>      >> +                                  struct
>     virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    int result;
>      >> +    struct rutabaga_iovecs vecs = { 0 };
>      >> +    g_autofree struct virtio_gpu_simple_resource *res = NULL;
>      >> +    struct virtio_gpu_resource_create_blob cblob;
>      >> +    struct rutabaga_create_blob rc_blob = { 0 };
>      >> +
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(cblob);
>      >> +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id,
>     cblob.size);
>      >> +
>      >> +    CHECK(cblob.resource_id != 0, cmd);
>      >> +
>      >> +    res = g_new0(struct virtio_gpu_simple_resource, 1);
>      >> +
>      >> +    res->resource_id = cblob.resource_id;
>      >> +    res->blob_size = cblob.size;
>      >> +
>      >> +    if (cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
>      >> +        result = virtio_gpu_create_mapping_iov(g, cblob.nr_entries,
>      >> +                                               sizeof(cblob),
>     cmd, &res->addrs,
>      >> +                                               &res->iov,
>     &res->iov_cnt);
>      >> +        CHECK(!result, cmd);
>      >> +    }
>      >> +
>      >> +    rc_blob.blob_id = cblob.blob_id;
>      >> +    rc_blob.blob_mem = cblob.blob_mem;
>      >> +    rc_blob.blob_flags = cblob.blob_flags;
>      >> +    rc_blob.size = cblob.size;
>      >> +
>      >> +    vecs.iovecs = res->iov;
>      >> +    vecs.num_iovecs = res->iov_cnt;
>      >> +
>      >> +    result = rutabaga_resource_create_blob(vr->rutabaga,
>     cblob.hdr.ctx_id,
>      >> +                                           cblob.resource_id,
>     &rc_blob, &vecs,
>      >> +                                           NULL);
>      >> +
>      >> +    if (result && cblob.blob_mem != VIRTIO_GPU_BLOB_MEM_HOST3D) {
>      >> +        virtio_gpu_cleanup_mapping(g, res);
>      >> +    }
>      >> +
>      >> +    CHECK(!result, cmd);
>      >> +
>      >> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
>      >> +    res = NULL;
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_resource_map_blob(VirtIOGPU *g,
>      >> +                               struct virtio_gpu_ctrl_command *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    uint32_t map_info = 0;
>      >> +    uint32_t slot = 0;
>      >> +    struct virtio_gpu_simple_resource *res;
>      >> +    struct rutabaga_mapping mapping = { 0 };
>      >> +    struct virtio_gpu_resource_map_blob mblob;
>      >> +    struct virtio_gpu_resp_map_info resp = { 0 };
>      >> +
>      >> +    VirtIOGPUBase *vb = VIRTIO_GPU_BASE(g);
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(mblob);
>      >> +
>      >> +    CHECK(mblob.resource_id != 0, cmd);
>      >> +
>      >> +    res = virtio_gpu_find_resource(g, mblob.resource_id);
>      >> +    CHECK(res, cmd);
>      >> +
>      >> +    result = rutabaga_resource_map_info(vr->rutabaga,
>     mblob.resource_id,
>      >> +                                        &map_info);
>      >> +    CHECK(!result, cmd);
>      >> +
>      >> +    /*
>      >> +     * RUTABAGA_MAP_ACCESS_* flags are not part of the
>     virtio-gpu spec, but do
>      >> +     * exist to potentially allow the hypervisor to restrict
>     write access to
>      >> +     * memory. QEMU does not need to use this functionality at
>     the moment.
>      >> +     */
>      >> +    resp.map_info = map_info & RUTABAGA_MAP_CACHE_MASK;
>      >> +
>      >> +    result = rutabaga_resource_map(vr->rutabaga,
>     mblob.resource_id, &mapping);
>      >> +    CHECK(!result, cmd);
>      >> +
>      >> +    for (slot = 0; slot < MAX_SLOTS; slot++) {
>      >> +        if (vr->memory_regions[slot].used) {
>      >> +            continue;
>      >> +        }
>      >> +
>      >> +        MemoryRegion *mr = &(vr->memory_regions[slot].mr);
>      >> +        memory_region_init_ram_ptr(mr, OBJECT(vr), "blob",
>     mapping.size,
>      >> +                                   mapping.ptr);
>      >> +        memory_region_add_subregion(&vb->hostmem, mblob.offset,
>     mr);
>      >> +        vr->memory_regions[slot].resource_id = mblob.resource_id;
>      >> +        vr->memory_regions[slot].used = 1;
>      >> +        break;
>      >> +    }
>      >> +
>      >> +    if (slot >= MAX_SLOTS) {
>      >> +        result = rutabaga_resource_unmap(vr->rutabaga,
>     mblob.resource_id);
>      >> +        CHECK(!result, cmd);
>      >> +    }
>      >> +
>      >> +    CHECK(slot < MAX_SLOTS, cmd);
>      >> +
>      >> +    resp.hdr.type = VIRTIO_GPU_RESP_OK_MAP_INFO;
>      >> +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
>      >> +}
>      >> +
>      >> +static void
>      >> +rutabaga_cmd_resource_unmap_blob(VirtIOGPU *g,
>      >> +                                 struct virtio_gpu_ctrl_command
>     *cmd)
>      >> +{
>      >> +    int32_t result;
>      >> +    uint32_t slot = 0;
>      >> +    struct virtio_gpu_simple_resource *res;
>      >> +    struct virtio_gpu_resource_unmap_blob ublob;
>      >> +
>      >> +    VirtIOGPUBase *vb = VIRTIO_GPU_BASE(g);
>      >> +    VirtIOGPURutabaga *vr = VIRTIO_GPU_RUTABAGA(g);
>      >> +
>      >> +    VIRTIO_GPU_FILL_CMD(ublob);
>      >> +
>      >> +    CHECK(ublob.resource_id != 0, cmd);
>      >> +
>      >> +    res = virtio_gpu_find_resource(g, ublob.resource_id);
>      >> +    CHECK(res, cmd);
>      >> +
>      >> +    for (slot = 0; slot < MAX_SLOTS; slot++) {
>      >> +        if (vr->memory_regions[slot].resource_id !=
>     ublob.resource_id) {
>      >> +            continue;
>      >> +        }
>      >> +
>      >> +        MemoryRegion *mr = &(vr->memory_regions[slot].mr);
>      >> +        memory_region_del_subregion(&vb->hostmem, mr);
>      >> +
>      >> +        vr->memory_regions[slot].resource_id = 0;
>      >> +        vr->memory_regions[slot].used = 0;
>      >> +        break;
>      >> +    }
>      >> +
>      >> +    CHECK(slot < MAX_SLOTS, cmd);
>      >> +    result = rutabaga_resource_unmap(vr->rutabaga,
>     res->resource_id);
>      >
>      > Hi,
>      >
>      > After the discussion with Xenia Ragiadakou regarding their patch
>     for Venus, I found a
>      > bug present in the Venus implementation also affects Rutabaga.
>      >
>      > The problem is that the memory region may not immediately go away
>     with
>      > memory_region_del_subregion(), but it may be kept a bit after
>     that. The memory region
>      > has a pointer to the mapped memory so the unmapping call that
>     immediately follows
>      > will make it dangling.
>      >
>      > Xenia raised a question whether the dangling pointer can be
>     actually dereferenced and
>      > result in use-after-free, but the answer is unfortunately yes.
>     For example, consider
>      > the following call chain:
>      > kvm_cpu_exec -> address_space_rw -> address_space_write ->
>     flatview_write ->
>      > flatview_write_continue
>      >
>      > address_space_write() holds a RCU read lock so that the flatview
>     it refers to will
>      > not go away during the operation even if it becomes obsolete and
>     will be used for
>      > writes. It is possible that the obsolete flatview contains the
>     memory region for the
>      > memory that is concurrently unmapped by
>     virtio-gpu-rutabaga/virgl.  Note that the
>      > function can be called without holding BQL, and KVM actually does so.
>      >
>      > Another case is address_space_map(). It acquires the reference to
>     the memory with
>      > memory_region_ref() and expects it will be available until
>     memory_region_unref() gets
>      > called with address_space_unmap().
> 
> 
> Yeah, I did notice weird behavior around map/unmap when initially 
> testing the series:
> 
> https://lists.gnu.org/archive/html/qemu-devel/2023-04/msg03378.html 
> <https://lists.gnu.org/archive/html/qemu-devel/2023-04/msg03378.html>
> 
> The solution I did was just do what the Android Emulator (which uses 
> QEMU2.12) has been doing for years.  Not call "obj_unparent(g)" and keep 
> a table of memory regions for initialization.  It does pass all 
> ./deqp-vk memory tests and is sufficient to run Android on a Vulkan-only 
> stack.  I think the way blob resources are handled in the guest some of 
> the cases you've cited may not be hit practice.  The biggest bug on 
> Linux we do hit is a KVM bug but hopefully that should be fixed soon:
> 
> https://lore.kernel.org/kvmarm/20230911021637.1941096-1-stevensd@google.com/T/#m7c23c97b56378e3e865057140be54fa3dd87154e <https://lore.kernel.org/kvmarm/20230911021637.1941096-1-stevensd@google.com/T/#m7c23c97b56378e3e865057140be54fa3dd87154e>
> 
> We hit interesting issues on MacOS on the gitlab issue and I do think a 
> follow-up memory-only series may be warranted in the future.
> 
> https://gitlab.com/qemu-project/qemu/-/issues/1611 
> <https://gitlab.com/qemu-project/qemu/-/issues/1611>
> 
> Since the Android Emulator has been running the solution in the 
> rutabaga/gfxstream series for years, it should be good for our purposes 
> on Linux for now.  WDYT?

Practically there is very low chance to hit the bug. I think only 
fuzzers and malicious actors will trigger it, and probably no one will 
dare using virtio-gpu-rutabaga or virtio-gpu-gl in a security-sensitive 
context.

That said, we know there is a bug so why don't you fix it? Otherwise you 
may document the bug, but getting it fixed is better.

Regards,
Akihiko Odaki


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 03:53:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 03:53:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606694.944693 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjXE9-00055G-SD; Fri, 22 Sep 2023 03:53:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606694.944693; Fri, 22 Sep 2023 03:53:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjXE9-000559-PF; Fri, 22 Sep 2023 03:53:13 +0000
Received: by outflank-mailman (input) for mailman id 606694;
 Fri, 22 Sep 2023 03:53:12 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjXE8-00054x-Ot; Fri, 22 Sep 2023 03:53:12 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjXE8-0003vG-EW; Fri, 22 Sep 2023 03:53:12 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjXE7-0006WO-VK; Fri, 22 Sep 2023 03:53:12 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjXE7-0005Kz-UR; Fri, 22 Sep 2023 03:53:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Ph37avv0iK/AqVA4GXESYgMq0qMYoLSgT8av5IkrAIs=; b=2X6z6b3xdbcyejLJKrePQm1+jk
	EBWev1xa/nI0Cj7dWP9PfbKFHY1qo8u1Dtzfy051zZ6uStiFji84HWO81c5IfRmVujtKlIAaWbYHb
	1oh8XFaCRgpeh6R7glDwjfIzIVLTdibzwFhhOWvY2EeqMvaCGAPu2xA9M/Fj/1VKKg8o=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183108-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.15-testing test] 183108: regressions - trouble: fail/pass/starved
X-Osstest-Failures:
    xen-4.15-testing:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:regression
    xen-4.15-testing:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.15-testing:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug
    xen-4.15-testing:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug
    xen-4.15-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47
X-Osstest-Versions-That:
    xen=0517763e771f2e2582bc492fafa42a86400ab957
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 22 Sep 2023 03:53:11 +0000

flight 183108 xen-4.15-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183108/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-libvirt-pair 10 xen-install/src_host     fail REGR. vs. 182658

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183095 pass in 183108
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host       fail pass in 183095
 test-amd64-amd64-xl-qcow2    21 guest-start/debian.repeat  fail pass in 183095

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182658
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182658
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182658
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182658
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182658
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182658
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182658
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182658
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182658
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw  3 hosts-allocate               starved  n/a
 test-arm64-arm64-libvirt-xsm  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit1   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl           3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-xsm       3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit2   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-thunderx  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-vhd       3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47
baseline version:
 xen                  0517763e771f2e2582bc492fafa42a86400ab957

Last test of basis   182658  2023-09-06 09:50:17 Z   15 days
Testing same since   183081  2023-09-20 10:06:38 Z    1 days    3 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          starved 
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 starved 
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      starved 
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  starved 
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  starved 
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    fail    
 test-arm64-arm64-libvirt-raw                                 starved 
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 starved 
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      starved 
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit 3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47
Author: Jan Beulich <JBeulich@suse.com>
Date:   Wed Sep 20 10:36:06 2023 +0100

    x86/shadow: defer releasing of PV's top-level shadow reference
    
    sh_set_toplevel_shadow() re-pinning the top-level shadow we may be
    running on is not enough (and at the same time unnecessary when the
    shadow isn't what we're running on): That shadow becomes eligible for
    blowing away (from e.g. shadow_prealloc()) immediately after the
    paging lock was dropped. Yet it needs to remain valid until the actual
    page table switch occurred.
    
    Propagate up the call chain the shadow entry that needs releasing
    eventually, and carry out the release immediately after switching page
    tables. Handle update_cr3() failures by switching to idle pagetables.
    Note that various further uses of update_cr3() are HVM-only or only act
    on paused vCPU-s, in which case sh_set_toplevel_shadow() will not defer
    releasing of the reference.
    
    While changing the update_cr3() hook, also convert the "do_locking"
    parameter to boolean.
    
    This is CVE-2023-34322 / XSA-438.
    
    Reported-by: Tim Deegan <tim@xen.org>
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: George Dunlap <george.dunlap@cloud.com>
    (cherry picked from commit fb0ff49fe9f784bfee0370c2a3c5f20e39d7a1cb)

commit d7b78041dc819efde0350f27754a61cb01a93496
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:24:25 2023 +0100

    x86/spec-ctrl: Mitigate the Zen1 DIV leakage
    
    In the Zen1 microarchitecure, there is one divider in the pipeline which
    services uops from both threads.  In the case of #DE, the latched result from
    the previous DIV to execute will be forwarded speculatively.
    
    This is an interesting covert channel that allows two threads to communicate
    without any system calls.  In also allows userspace to obtain the result of
    the most recent DIV instruction executed (even speculatively) in the core,
    which can be from a higher privilege context.
    
    Scrub the result from the divider by executing a non-faulting divide.  This
    needs performing on the exit-to-guest paths, and ist_exit-to-Xen.
    
    Alternatives in IST context is believed safe now that it's done in NMI
    context.
    
    This is XSA-439 / CVE-2023-20588.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit b5926c6ecf05c28ee99c6248c42d691ccbf0c315)

commit b007f82a708bb5119314677168318e301038b0f8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 15 12:13:51 2023 +0100

    x86/amd: Introduce is_zen{1,2}_uarch() predicates
    
    We already have 3 cases using STIBP as a Zen1/2 heuristic, and are about to
    introduce a 4th.  Wrap the heuristic into a pair of predicates rather than
    opencoding it, and the explanation of the heuristic, at each usage site.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit de1d265001397f308c5c3c5d3ffc30e7ef8c0705)

commit dac906062088f11a0577e9d7ef2642c5d8663432
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:53:33 2023 +0100

    x86/spec-ctrl: Issue VERW during IST exit to Xen
    
    There is a corner case where e.g. an NMI hitting an exit-to-guest path after
    SPEC_CTRL_EXIT_TO_* would have run the entire NMI handler *after* the VERW
    flush to scrub potentially sensitive data from uarch buffers.
    
    In order to compensate, issue VERW when exiting to Xen from an IST entry.
    
    SPEC_CTRL_EXIT_TO_XEN already has two reads of spec_ctrl_flags off the stack,
    and we're about to add a third.  Load the field into %ebx, and list the
    register as clobbered.
    
    %r12 has been arranged to be the ist_exit signal, so add this as an input
    dependency and use it to identify when to issue a VERW.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 3ee6066bcd737756b0990d417d94eddc0b0d2585)

commit d39e5cf76f2a15120491b3b020d973d04c181388
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 12:20:12 2023 +0100

    x86/entry: Track the IST-ness of an entry for the exit paths
    
    Use %r12 to hold an ist_exit boolean.  This register is zero elsewhere in the
    entry/exit asm, so it only needs setting in the IST path.
    
    As this is subtle and fragile, add check_ist_exit() to be used in debugging
    builds to cross-check that the ist_exit boolean matches the entry vector.
    
    Write check_ist_exit() it in C, because it's debug only and the logic more
    complicated than I care to maintain in asm.
    
    For now, we only need to use this signal in the exit-to-Xen path, but some
    exit-to-guest paths happen in IST context too.  Check the correctness in all
    exit paths to avoid the logic bit-rotting.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 21bdc25b05a0f8ab6bc73520a9ca01327360732c)
    
    x86/entry: Partially revert IST-exit checks
    
    The patch adding check_ist_exit() didn't account for the fact that
    reset_stack_and_jump() is not an ABI-preserving boundary.  The IST-ness in
    %r12 doesn't survive into the next context, and is a stale value C.
    
    This shows up in Gitlab CI for the Clang build:
    
      https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/5112783827
    
    and in OSSTest for GCC 8:
    
      http://logs.test-lab.xenproject.org/osstest/logs/183045/test-amd64-amd64-xl-qemuu-debianhvm-amd64/serial-pinot0.log
    
    There's no straightforward way to reconstruct the IST-exit-ness on the
    exit-to-guest path after a context switch.  For now, we only need IST-exit on
    the return-to-Xen path.
    
    Fixes: 21bdc25b05a0 ("x86/entry: Track the IST-ness of an entry for the exit paths")
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 9b57c800b79b96769ea3dcd6468578fa664d19f9)

commit d75cb6dab86763b65210d69a40ac59bce90e1bb8
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Sep 13 13:48:16 2023 +0100

    x86/entry: Adjust restore_all_xen to hold stack_end in %r14
    
    All other SPEC_CTRL_{ENTRY,EXIT}_* helpers hold stack_end in %r14.  Adjust it
    for consistency.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 7aa28849a1155d856e214e9a80a7e65fffdc3e58)

commit 93504b3a6c92a1f2821af5e0960be8fda066ad77
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Wed Aug 30 20:11:50 2023 +0100

    x86/spec-ctrl: Improve all SPEC_CTRL_{ENTER,EXIT}_* comments
    
    ... to better explain how they're used.
    
    Doing so highlights that SPEC_CTRL_EXIT_TO_XEN is missing a VERW flush for the
    corner case when e.g. an NMI hits late in an exit-to-guest path.
    
    Leave a TODO, which will be addressed in subsequent patches which arrange for
    VERW flushing to be safe within SPEC_CTRL_EXIT_TO_XEN.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 45f00557350dc7d0756551069803fc49c29184ca)

commit 67b97438604c6a7ff7ee3dd5c98fff3f5669f6d7
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Fri Sep 1 11:38:44 2023 +0100

    x86/spec-ctrl: Turn the remaining SPEC_CTRL_{ENTRY,EXIT}_* into asm macros
    
    These have grown more complex over time, with some already having been
    converted.
    
    Provide full Requires/Clobbers comments, otherwise missing at this level of
    indirection.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 7125429aafb9e3c9c88fc93001fc2300e0ac2cc8)

commit 806893afb66fe7fa96ec495f2b7561bb396053ee
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 17:03:16 2023 +0100

    x86/spec-ctrl: Fold DO_SPEC_CTRL_EXIT_TO_XEN into it's single user
    
    With the SPEC_CTRL_EXIT_TO_XEN{,_IST} confusion fixed, it's now obvious that
    there's only a single EXIT_TO_XEN path.  Fold DO_SPEC_CTRL_EXIT_TO_XEN into
    SPEC_CTRL_EXIT_TO_XEN to simplify further fixes.
    
    When merging labels, switch the name to .L\@_skip_sc_msr as "skip" on its own
    is going to be too generic shortly.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 694bb0f280fd08a4377e36e32b84b5062def4de2)

commit 094cd5cb851d267feda3681d034ad46e91c60532
Author: Andrew Cooper <andrew.cooper3@citrix.com>
Date:   Tue Sep 12 15:06:49 2023 +0100

    x86/spec-ctrl: Fix confusion between SPEC_CTRL_EXIT_TO_XEN{,_IST}
    
    c/s 3fffaf9c13e9 ("x86/entry: Avoid using alternatives in NMI/#MC paths")
    dropped the only user, leaving behind the (incorrect) implication that Xen had
    split exit paths.
    
    Delete the unused SPEC_CTRL_EXIT_TO_XEN and rename SPEC_CTRL_EXIT_TO_XEN_IST
    to SPEC_CTRL_EXIT_TO_XEN for consistency.
    
    No functional change.
    
    Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>
    (cherry picked from commit 1c18d73774533a55ba9d1cbee8bdace03efdb5e7)

commit db3386e6cad6065c2a9155d4056b59164edb64dd
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Aug 23 09:26:36 2023 +0200

    x86/AMD: extend Zenbleed check to models "good" ucode isn't known for
    
    Reportedly the AMD Custom APU 0405 found on SteamDeck, models 0x90 and
    0x91, (quoting the respective Linux commit) is similarly affected. Put
    another instance of our Zen1 vs Zen2 distinction checks in
    amd_check_zenbleed(), forcing use of the chickenbit irrespective of
    ucode version (building upon real hardware never surfacing a version of
    0xffffffff).
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
    (cherry picked from commit 145a69c0944ac70cfcf9d247c85dee9e99d9d302)
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 05:10:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 05:10:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606600.944703 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjYQg-0007fc-FB; Fri, 22 Sep 2023 05:10:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606600.944703; Fri, 22 Sep 2023 05:10:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjYQg-0007fV-CX; Fri, 22 Sep 2023 05:10:14 +0000
Received: by outflank-mailman (input) for mailman id 606600;
 Thu, 21 Sep 2023 22:24:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2E1J=FF=ska67.de=stefan.kadow@srs-se1.protection.inumbo.net>)
 id 1qjS65-00056g-St
 for xen-devel@lists.xenproject.org; Thu, 21 Sep 2023 22:24:33 +0000
Received: from mxout2.routing.net (mxout2.routing.net [2a03:2900:1:a::b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a34df443-58cd-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 00:24:33 +0200 (CEST)
Received: from mxbox2.masterlogin.de (unknown [192.168.10.89])
 by mxout2.routing.net (Postfix) with ESMTP id 205545FC6A
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 22:24:32 +0000 (UTC)
Received: from naboo.starwars.lan
 (ip-046-223-214-171.um13.pools.vodafone-ip.de [46.223.214.171])
 by mxbox2.masterlogin.de (Postfix) with ESMTPSA id BD8161006B8
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 22:24:31 +0000 (UTC)
Received: from [192.168.154.119] (unknown [192.168.154.119])
 by naboo.starwars.lan (Postfix) with ESMTPS id B878C61E37
 for <xen-devel@lists.xenproject.org>; Fri, 22 Sep 2023 00:24:31 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a34df443-58cd-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mailerdienst.de;
	s=20200217; t=1695335072;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=tRttLqrrOwln5kJL7+JGoLN1Ecl6afl18/1LrECeroo=;
	b=FgCQMIumgw8F+tPmghZds5YoUripUdEjLntNIv8hM5kJriGEVJVxcrFkO3R8rtNDZFV1bV
	nIjg575AH01aVsfoV42GyJHzAyKAbMJpTF2sQJYInUnDW8Lg4gxewU6hOqzpA5WJn73RUN
	VwhyWi685PvMb1+HvmFj7BupPxtZBRI=
Message-ID: <8ed49454-101a-596f-3a26-3e5702a80001@ska67.de>
Date: Fri, 22 Sep 2023 00:24:31 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Stefan Kadow <stefan.kadow@ska67.de>
Subject: qemu-system-i386 crashes on i9 coffee lake
To: xen-devel@lists.xenproject.org
Content-Language: de-DE
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Mail-ID: 6e4483b9-a7ff-4f4b-8427-3ad9e214afbb

Hello,

since commit b9ade05c
https://xenbits.xenproject.org/gitweb/?p=xen.git;a=commit;h=b9ade05cbba977673d5a08bc7a5940c5fd8add0e

qemu-system-i386 crashes on my Intel i9 Coffee Lake System.

This does not happen when the system is booted with the latest microcode 
update. So I do not know if this is really a regression.

Please, see the discussion on xen-users mailing list:
https://lists.xenproject.org/archives/html/xen-users/2023-08/msg00014.html

-- 
Thx Stefan


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 05:12:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 05:12:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606647.944713 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjYT0-0008F5-S5; Fri, 22 Sep 2023 05:12:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606647.944713; Fri, 22 Sep 2023 05:12:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjYT0-0008Ex-Oe; Fri, 22 Sep 2023 05:12:38 +0000
Received: by outflank-mailman (input) for mailman id 606647;
 Fri, 22 Sep 2023 00:03:55 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ZDyD=FG=chromium.org=gurchetansingh@srs-se1.protection.inumbo.net>)
 id 1qjTeE-0007Hc-UW
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 00:03:55 +0000
Received: from mail-lf1-x130.google.com (mail-lf1-x130.google.com
 [2a00:1450:4864:20::130])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 81d0a989-58db-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 02:03:49 +0200 (CEST)
Received: by mail-lf1-x130.google.com with SMTP id
 2adb3069b0e04-501eec0a373so2715669e87.3
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 17:03:49 -0700 (PDT)
Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com.
 [209.85.128.53]) by smtp.gmail.com with ESMTPSA id
 e9-20020a50ec89000000b0052c9f1d3cfasm1462777edr.84.2023.09.21.17.03.48
 for <xen-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 21 Sep 2023 17:03:48 -0700 (PDT)
Received: by mail-wm1-f53.google.com with SMTP id
 5b1f17b1804b1-4009fdc224dso22875e9.1
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 17:03:48 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 81d0a989-58db-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=chromium.org; s=google; t=1695341029; x=1695945829; darn=lists.xenproject.org;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:from:to:cc:subject:date:message-id:reply-to;
        bh=jmKZz2FvPA01ghBlYnODEn9JYXU1spd6fTLoNKsOww8=;
        b=Wk4Esagh7OvFMlxGTIQavag0V7uH2+tXCxM1O4hBArOTRlvK6ubMejsolF99B3g1j2
         fUeavJCig/NFkzTKnJz8uN6JJPXc0gK8/pCmj24LAvbGFLWsEKbNnx5OPar9dchhvE/W
         P0q1UlTatVrxWZMJ1vgRUh2DD2Mo7bZORjkZ0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695341029; x=1695945829;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=jmKZz2FvPA01ghBlYnODEn9JYXU1spd6fTLoNKsOww8=;
        b=XKUPoJtANgib7eWkvvGGTPKVbYbtgOufsuFIl9Tg+o3ZFZBoB14G1cu15xJo+Vmax2
         RqfBl0pScXKdzU2/BCv+Du9x3lmftW/XvoG7mmTT9avSPuTNXl3z5LfkxsQ0YCYFtxvV
         mDp7aSW4uAg6rCHERQVUp9Nmd0AJgJCW/jBhV3eWgf12BU8TrCIFOJhbH8IhANOkvhUk
         Iok9h5PJ0NllqRtOMq2SeuSAs01A0T2fgJd8DMZ025a7Rc3RgZAWohMiVyEYiXER9lty
         bJgghdMDDfIWpgyVETnSAi+WBElt3l9iXBIIewQ9SCQVa2aarywTOpi97nNULGy7PgJ8
         mh6g==
X-Gm-Message-State: AOJu0YyRCm4B8w6cp19vERRpZlQj6uzgCHcadTjc/LUrkUlpWnOjBQLV
	fO8psDryPbUL8JJ7M0lHtGvBwfx7g3kI397lsHWnKtkQ1YA=
X-Google-Smtp-Source: AGHT+IFLdA/i13OBqP1/NBQEUsKl424LqUYzHhwcKSaWatQfGtp11F4BgM5S6yywYeTqnvO4TMdL5A==
X-Received: by 2002:a19:504b:0:b0:500:ac71:f26a with SMTP id z11-20020a19504b000000b00500ac71f26amr5639097lfj.57.1695341028464;
        Thu, 21 Sep 2023 17:03:48 -0700 (PDT)
X-Received: by 2002:a50:9fa5:0:b0:523:bdc9:48a9 with SMTP id
 c34-20020a509fa5000000b00523bdc948a9mr28472edf.0.1695341006849; Thu, 21 Sep
 2023 17:03:26 -0700 (PDT)
MIME-Version: 1.0
References: <20230829003629.410-1-gurchetansingh@chromium.org>
 <20230829003629.410-7-gurchetansingh@chromium.org> <2620fca0-a5b4-49d0-bf91-fd359ee4999b@gmail.com>
 <3830bf8d-8c25-950c-f901-8d70dbfc06a6@ilande.co.uk>
In-Reply-To: <3830bf8d-8c25-950c-f901-8d70dbfc06a6@ilande.co.uk>
From: Gurchetan Singh <gurchetansingh@chromium.org>
Date: Thu, 21 Sep 2023 17:03:13 -0700
X-Gmail-Original-Message-ID: <CAAfnVBknhG=QYn=OFjNW9h=KbDtQ=xq3AEs5Pg=AG3LTO=LZ6w@mail.gmail.com>
Message-ID: <CAAfnVBknhG=QYn=OFjNW9h=KbDtQ=xq3AEs5Pg=AG3LTO=LZ6w@mail.gmail.com>
Subject: Re: [PATCH v13 6/9] gfxstream + rutabaga: add initial support for gfxstream
To: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Cc: Akihiko Odaki <akihiko.odaki@gmail.com>, qemu-devel@nongnu.org, 
	Xenia Ragiadakou <xenia.ragiadakou@amd.com>, marcandre.lureau@redhat.com, ray.huang@amd.com, 
	alex.bennee@linaro.org, shentey@gmail.com, hi@alyssa.is, ernunes@redhat.com, 
	manos.pitsidianakis@linaro.org, philmd@linaro.org, 
	Gerd Hoffmann <kraxel@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>, 
	Stefano Stabellini <sstabellini@kernel.org>, Anthony PERARD <anthony.perard@citrix.com>, 
	Antonio Caggiano <quic_acaggian@quicinc.com>, "Dr . David Alan Gilbert" <dgilbert@redhat.com>, 
	Robert Beckett <bob.beckett@collabora.com>, Dmitry Osipenko <dmitry.osipenko@collabora.com>, 
	xen-devel@lists.xenproject.org, Albert Esteve <aesteve@redhat.com>, 
	=?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	Alex Deucher <alexander.deucher@amd.com>, =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>, 
	Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>, Honglei Huang <honglei1.huang@amd.com>, 
	Julia Zhang <julia.zhang@amd.com>, Chen Jiqian <Jiqian.Chen@amd.com>
Content-Type: multipart/alternative; boundary="0000000000007ce63c0605e75644"

--0000000000007ce63c0605e75644
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Sep 20, 2023 at 5:05=E2=80=AFAM Mark Cave-Ayland <
mark.cave-ayland@ilande.co.uk> wrote:

> On 20/09/2023 12:42, Akihiko Odaki wrote:
>
> > On 2023/08/29 9:36, Gurchetan Singh wrote:
> >> This adds initial support for gfxstream and cross-domain.  Both
> >> features rely on virtio-gpu blob resources and context types, which
> >> are also implemented in this patch.
> >>
> >> gfxstream has a long and illustrious history in Android graphics
> >> paravirtualization.  It has been powering graphics in the Android
> >> Studio Emulator for more than a decade, which is the main developer
> >> platform.
> >>
> >> Originally conceived by Jesse Hall, it was first known as "EmuGL" [a].
> >> The key design characteristic was a 1:1 threading model and
> >> auto-generation, which fit nicely with the OpenGLES spec.  It also
> >> allowed easy layering with ANGLE on the host, which provides the GLES
> >> implementations on Windows or MacOS enviroments.
> >>
> >> gfxstream has traditionally been maintained by a single engineer, and
> >> between 2015 to 2021, the goldfish throne passed to Frank Yang.
> >> Historians often remark this glorious reign ("pax gfxstreama" is the
> >> academic term) was comparable to that of Augustus and both Queen
> >> Elizabeths.  Just to name a few accomplishments in a resplendent
> >> panoply: higher versions of GLES, address space graphics, snapshot
> >> support and CTS compliant Vulkan [b].
> >>
> >> One major drawback was the use of out-of-tree goldfish drivers.
> >> Android engineers didn't know much about DRM/KMS and especially TTM so
> >> a simple guest to host pipe was conceived.
> >>
> >> Luckily, virtio-gpu 3D started to emerge in 2016 due to the work of
> >> the Mesa/virglrenderer communities.  In 2018, the initial virtio-gpu
> >> port of gfxstream was done by Cuttlefish enthusiast Alistair Delva.
> >> It was a symbol compatible replacement of virglrenderer [c] and named
> >> "AVDVirglrenderer".  This implementation forms the basis of the
> >> current gfxstream host implementation still in use today.
> >>
> >> cross-domain support follows a similar arc.  Originally conceived by
> >> Wayland aficionado David Reveman and crosvm enjoyer Zach Reizner in
> >> 2018, it initially relied on the downstream "virtio-wl" device.
> >>
> >> In 2020 and 2021, virtio-gpu was extended to include blob resources
> >> and multiple timelines by yours truly, features gfxstream/cross-domain
> >> both require to function correctly.
> >>
> >> Right now, we stand at the precipice of a truly fantastic possibility:
> >> the Android Emulator powered by upstream QEMU and upstream Linux
> >> kernel.  gfxstream will then be packaged properfully, and app
> >> developers can even fix gfxstream bugs on their own if they encounter
> >> them.
> >>
> >> It's been quite the ride, my friends.  Where will gfxstream head next,
> >> nobody really knows.  I wouldn't be surprised if it's around for
> >> another decade, maintained by a new generation of Android graphics
> >> enthusiasts.
> >>
> >> Technical details:
> >>    - Very simple initial display integration: just used Pixman
> >>    - Largely, 1:1 mapping of virtio-gpu hypercalls to rutabaga functio=
n
> >>      calls
> >>
> >> Next steps for Android VMs:
> >>    - The next step would be improving display integration and UI
> interfaces
> >>      with the goal of the QEMU upstream graphics being in an emulator
> >>      release [d].
> >>
> >> Next steps for Linux VMs for display virtualization:
> >>    - For widespread distribution, someone needs to package Sommelier o=
r
> the
> >>      wayland-proxy-virtwl [e] ideally into Debian main. In addition,
> newer
> >>      versions of the Linux kernel come with DRM_VIRTIO_GPU_KMS option,
> >>      which allows disabling KMS hypercalls.  If anyone cares enough,
> it'll
> >>      probably be possible to build a custom VM variant that uses this
> display
> >>      virtualization strategy.
> >>
> >> [a]
> https://android-review.googlesource.com/c/platform/development/+/34470
> >> [b]
> https://android-review.googlesource.com/q/topic:%22vulkan-hostconnection-=
start%22
> >> [c]
> https://android-review.googlesource.com/c/device/generic/goldfish-opengl/=
+/761927
> >> [d] https://developer.android.com/studio/releases/emulator
> >> [e] https://github.com/talex5/wayland-proxy-virtwl
> >>
> >> Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org>
> >> Tested-by: Alyssa Ross <hi@alyssa.is>
> >> Tested-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
> >> Tested-by: Akihiko Odaki <akihiko.odaki@daynix.com>
> >> Reviewed-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
> >> Reviewed-by: Antonio Caggiano <quic_acaggian@quicinc.com>
> >> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
> >> ---
> >>   hw/display/virtio-gpu-pci-rutabaga.c |   47 ++
> >>   hw/display/virtio-gpu-rutabaga.c     | 1119 ++++++++++++++++++++++++=
++
> >>   hw/display/virtio-vga-rutabaga.c     |   50 ++
> >>   3 files changed, 1216 insertions(+)
> >>   create mode 100644 hw/display/virtio-gpu-pci-rutabaga.c
> >>   create mode 100644 hw/display/virtio-gpu-rutabaga.c
> >>   create mode 100644 hw/display/virtio-vga-rutabaga.c
> >>
> >> diff --git a/hw/display/virtio-gpu-pci-rutabaga.c
> >> b/hw/display/virtio-gpu-pci-rutabaga.c
> >> new file mode 100644
> >> index 0000000000..c96729e198
> >> --- /dev/null
> >> +++ b/hw/display/virtio-gpu-pci-rutabaga.c
> >> @@ -0,0 +1,47 @@
> >> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> >> +
> >> +#include "qemu/osdep.h"
> >> +#include "qapi/error.h"
> >> +#include "qemu/module.h"
> >> +#include "hw/pci/pci.h"
> >> +#include "hw/qdev-properties.h"
> >> +#include "hw/virtio/virtio.h"
> >> +#include "hw/virtio/virtio-bus.h"
> >> +#include "hw/virtio/virtio-gpu-pci.h"
> >> +#include "qom/object.h"
> >> +
> >> +#define TYPE_VIRTIO_GPU_RUTABAGA_PCI "virtio-gpu-rutabaga-pci"
> >> +OBJECT_DECLARE_SIMPLE_TYPE(VirtIOGPURutabagaPCI,
> VIRTIO_GPU_RUTABAGA_PCI)
> >> +
> >> +struct VirtIOGPURutabagaPCI {
> >> +    VirtIOGPUPCIBase parent_obj;
> >> +
> >> +    VirtIOGPURutabaga vdev;
> >> +};
> >> +
> >> +static void virtio_gpu_rutabaga_initfn(Object *obj)
> >> +{
> >> +    VirtIOGPURutabagaPCI *dev =3D VIRTIO_GPU_RUTABAGA_PCI(obj);
> >> +
> >> +    virtio_instance_init_common(obj, &dev->vdev, sizeof(dev->vdev),
> >> +                                TYPE_VIRTIO_GPU_RUTABAGA);
> >> +    VIRTIO_GPU_PCI_BASE(obj)->vgpu =3D VIRTIO_GPU_BASE(&dev->vdev);
> >> +}
> >> +
> >> +static const TypeInfo virtio_gpu_rutabaga_pci_info[] =3D {
> >> +    {
> >> +        .name =3D TYPE_VIRTIO_GPU_RUTABAGA_PCI,
> >> +        .parent =3D TYPE_VIRTIO_GPU_PCI_BASE,
> >> +        .instance_size =3D sizeof(VirtIOGPURutabagaPCI),
> >> +        .instance_init =3D virtio_gpu_rutabaga_initfn,
> >> +        .interfaces =3D (InterfaceInfo[]) {
> >> +            { INTERFACE_CONVENTIONAL_PCI_DEVICE },
> >> +        }
> >> +    },
> >> +};
> >> +
> >> +DEFINE_TYPES(virtio_gpu_rutabaga_pci_info)
> >> +
> >> +module_obj(TYPE_VIRTIO_GPU_RUTABAGA_PCI);
> >> +module_kconfig(VIRTIO_PCI);
> >> +module_dep("hw-display-virtio-gpu-pci");
> >> diff --git a/hw/display/virtio-gpu-rutabaga.c
> b/hw/display/virtio-gpu-rutabaga.c
> >> new file mode 100644
> >> index 0000000000..a105e06214
> >> --- /dev/null
> >> +++ b/hw/display/virtio-gpu-rutabaga.c
> >> @@ -0,0 +1,1119 @@
> >> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> >> +
> >> +#include "qemu/osdep.h"
> >> +#include "qapi/error.h"
> >> +#include "qemu/error-report.h"
> >> +#include "qemu/iov.h"
> >> +#include "trace.h"
> >> +#include "hw/virtio/virtio.h"
> >> +#include "hw/virtio/virtio-gpu.h"
> >> +#include "hw/virtio/virtio-gpu-pixman.h"
> >> +#include "hw/virtio/virtio-iommu.h"
> >> +
> >> +#include <glib/gmem.h>
> >> +#include <rutabaga_gfx/rutabaga_gfx_ffi.h>
> >> +
> >> +#define CHECK(condition,
> cmd)                                                 \
> >> +    do
> {                                                                      \
> >> +        if (!(condition))
> {                                                   \
> >> +            error_report("CHECK failed in %s() %s:" "%d",
> __func__,           \
> >> +                         __FILE__,
> __LINE__);                                 \
> >> +            (cmd)->error =3D
> VIRTIO_GPU_RESP_ERR_UNSPEC;                        \
> >> +
> return;                                                           \
> >> +
> }                                                                      \
> >> +    } while (0)
> >> +
> >> +/*
> >> + * This is the size of the char array in struct sock_addr_un. No
> Wayland socket
> >> + * can be created with a path longer than this, including the null
> terminator.
> >> + */
> >> +#define UNIX_PATH_MAX sizeof((struct sockaddr_un) {} .sun_path)
> >> +
> >> +struct rutabaga_aio_data {
> >> +    struct VirtIOGPURutabaga *vr;
> >> +    struct rutabaga_fence fence;
> >> +};
> >> +
> >> +static void
> >> +virtio_gpu_rutabaga_update_cursor(VirtIOGPU *g, struct
> virtio_gpu_scanout *s,
> >> +                                  uint32_t resource_id)
> >> +{
> >> +    struct virtio_gpu_simple_resource *res;
> >> +    struct rutabaga_transfer transfer =3D { 0 };
> >> +    struct iovec transfer_iovec;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    res =3D virtio_gpu_find_resource(g, resource_id);
> >> +    if (!res) {
> >> +        return;
> >> +    }
> >> +
> >> +    if (res->width !=3D s->current_cursor->width ||
> >> +        res->height !=3D s->current_cursor->height) {
> >> +        return;
> >> +    }
> >> +
> >> +    transfer.x =3D 0;
> >> +    transfer.y =3D 0;
> >> +    transfer.z =3D 0;
> >> +    transfer.w =3D res->width;
> >> +    transfer.h =3D res->height;
> >> +    transfer.d =3D 1;
> >> +
> >> +    transfer_iovec.iov_base =3D s->current_cursor->data;
> >> +    transfer_iovec.iov_len =3D res->width * res->height * 4;
> >> +
> >> +    rutabaga_resource_transfer_read(vr->rutabaga, 0,
> >> +                                    resource_id, &transfer,
> >> +                                    &transfer_iovec);
> >> +}
> >> +
> >> +static void
> >> +virtio_gpu_rutabaga_gl_flushed(VirtIOGPUBase *b)
> >> +{
> >> +    VirtIOGPU *g =3D VIRTIO_GPU(b);
> >> +    virtio_gpu_process_cmdq(g);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_create_resource_2d(VirtIOGPU *g,
> >> +                                struct virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    struct rutabaga_create_3d rc_3d =3D { 0 };
> >> +    struct virtio_gpu_simple_resource *res;
> >> +    struct virtio_gpu_resource_create_2d c2d;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(c2d);
> >> +    trace_virtio_gpu_cmd_res_create_2d(c2d.resource_id, c2d.format,
> >> +                                       c2d.width, c2d.height);
> >> +
> >> +    rc_3d.target =3D 2;
> >> +    rc_3d.format =3D c2d.format;
> >> +    rc_3d.bind =3D (1 << 1);
> >> +    rc_3d.width =3D c2d.width;
> >> +    rc_3d.height =3D c2d.height;
> >> +    rc_3d.depth =3D 1;
> >> +    rc_3d.array_size =3D 1;
> >> +    rc_3d.last_level =3D 0;
> >> +    rc_3d.nr_samples =3D 0;
> >> +    rc_3d.flags =3D VIRTIO_GPU_RESOURCE_FLAG_Y_0_TOP;
> >> +
> >> +    result =3D rutabaga_resource_create_3d(vr->rutabaga,
> c2d.resource_id, &rc_3d);
> >> +    CHECK(!result, cmd);
> >> +
> >> +    res =3D g_new0(struct virtio_gpu_simple_resource, 1);
> >> +    res->width =3D c2d.width;
> >> +    res->height =3D c2d.height;
> >> +    res->format =3D c2d.format;
> >> +    res->resource_id =3D c2d.resource_id;
> >> +
> >> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_create_resource_3d(VirtIOGPU *g,
> >> +                                struct virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    struct rutabaga_create_3d rc_3d =3D { 0 };
> >> +    struct virtio_gpu_simple_resource *res;
> >> +    struct virtio_gpu_resource_create_3d c3d;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(c3d);
> >> +
> >> +    trace_virtio_gpu_cmd_res_create_3d(c3d.resource_id, c3d.format,
> >> +                                       c3d.width, c3d.height,
> c3d.depth);
> >> +
> >> +    rc_3d.target =3D c3d.target;
> >> +    rc_3d.format =3D c3d.format;
> >> +    rc_3d.bind =3D c3d.bind;
> >> +    rc_3d.width =3D c3d.width;
> >> +    rc_3d.height =3D c3d.height;
> >> +    rc_3d.depth =3D c3d.depth;
> >> +    rc_3d.array_size =3D c3d.array_size;
> >> +    rc_3d.last_level =3D c3d.last_level;
> >> +    rc_3d.nr_samples =3D c3d.nr_samples;
> >> +    rc_3d.flags =3D c3d.flags;
> >> +
> >> +    result =3D rutabaga_resource_create_3d(vr->rutabaga,
> c3d.resource_id, &rc_3d);
> >> +    CHECK(!result, cmd);
> >> +
> >> +    res =3D g_new0(struct virtio_gpu_simple_resource, 1);
> >> +    res->width =3D c3d.width;
> >> +    res->height =3D c3d.height;
> >> +    res->format =3D c3d.format;
> >> +    res->resource_id =3D c3d.resource_id;
> >> +
> >> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_resource_unref(VirtIOGPU *g,
> >> +                            struct virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    struct virtio_gpu_simple_resource *res;
> >> +    struct virtio_gpu_resource_unref unref;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(unref);
> >> +
> >> +    trace_virtio_gpu_cmd_res_unref(unref.resource_id);
> >> +
> >> +    res =3D virtio_gpu_find_resource(g, unref.resource_id);
> >> +    CHECK(res, cmd);
> >> +
> >> +    result =3D rutabaga_resource_unref(vr->rutabaga, unref.resource_i=
d);
> >> +    CHECK(!result, cmd);
> >> +
> >> +    if (res->image) {
> >> +        pixman_image_unref(res->image);
> >> +    }
> >> +
> >> +    QTAILQ_REMOVE(&g->reslist, res, next);
> >> +    g_free(res);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_context_create(VirtIOGPU *g,
> >> +                            struct virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    struct virtio_gpu_ctx_create cc;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(cc);
> >> +    trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,
> >> +                                    cc.debug_name);
> >> +
> >> +    result =3D rutabaga_context_create(vr->rutabaga, cc.hdr.ctx_id,
> >> +                                     cc.context_init, cc.debug_name,
> cc.nlen);
> >> +    CHECK(!result, cmd);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_context_destroy(VirtIOGPU *g,
> >> +                             struct virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    struct virtio_gpu_ctx_destroy cd;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(cd);
> >> +    trace_virtio_gpu_cmd_ctx_destroy(cd.hdr.ctx_id);
> >> +
> >> +    result =3D rutabaga_context_destroy(vr->rutabaga, cd.hdr.ctx_id);
> >> +    CHECK(!result, cmd);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_resource_flush(VirtIOGPU *g, struct
> virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result, i;
> >> +    struct virtio_gpu_scanout *scanout =3D NULL;
> >> +    struct virtio_gpu_simple_resource *res;
> >> +    struct rutabaga_transfer transfer =3D { 0 };
> >> +    struct iovec transfer_iovec;
> >> +    struct virtio_gpu_resource_flush rf;
> >> +    bool found =3D false;
> >> +
> >> +    VirtIOGPUBase *vb =3D VIRTIO_GPU_BASE(g);
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +    if (vr->headless) {
> >> +        return;
> >> +    }
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(rf);
> >> +    trace_virtio_gpu_cmd_res_flush(rf.resource_id,
> >> +                                   rf.r.width, rf.r.height, rf.r.x,
> rf.r.y);
> >> +
> >> +    res =3D virtio_gpu_find_resource(g, rf.resource_id);
> >> +    CHECK(res, cmd);
> >> +
> >> +    for (i =3D 0; i < vb->conf.max_outputs; i++) {
> >> +        scanout =3D &vb->scanout[i];
> >> +        if (i =3D=3D res->scanout_bitmask) {
> >> +            found =3D true;
> >> +            break;
> >> +        }
> >> +    }
> >> +
> >> +    if (!found) {
> >> +        return;
> >> +    }
> >> +
> >> +    transfer.x =3D 0;
> >> +    transfer.y =3D 0;
> >> +    transfer.z =3D 0;
> >> +    transfer.w =3D res->width;
> >> +    transfer.h =3D res->height;
> >> +    transfer.d =3D 1;
> >> +
> >> +    transfer_iovec.iov_base =3D pixman_image_get_data(res->image);
> >> +    transfer_iovec.iov_len =3D res->width * res->height * 4;
> >> +
> >> +    result =3D rutabaga_resource_transfer_read(vr->rutabaga, 0,
> >> +                                             rf.resource_id, &transfe=
r,
> >> +                                             &transfer_iovec);
> >> +    CHECK(!result, cmd);
> >> +    dpy_gfx_update_full(scanout->con);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_set_scanout(VirtIOGPU *g, struct virtio_gpu_ctrl_command
> *cmd)
> >> +{
> >> +    struct virtio_gpu_simple_resource *res;
> >> +    struct virtio_gpu_scanout *scanout =3D NULL;
> >> +    struct virtio_gpu_set_scanout ss;
> >> +
> >> +    VirtIOGPUBase *vb =3D VIRTIO_GPU_BASE(g);
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +    if (vr->headless) {
> >> +        return;
> >> +    }
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(ss);
> >> +    trace_virtio_gpu_cmd_set_scanout(ss.scanout_id, ss.resource_id,
> >> +                                     ss.r.width, ss.r.height, ss.r.x,
> ss.r.y);
> >> +
> >> +    CHECK(ss.scanout_id < VIRTIO_GPU_MAX_SCANOUTS, cmd);
> >> +    scanout =3D &vb->scanout[ss.scanout_id];
> >> +
> >> +    if (ss.resource_id =3D=3D 0) {
> >> +        dpy_gfx_replace_surface(scanout->con, NULL);
> >> +        dpy_gl_scanout_disable(scanout->con);
> >> +        return;
> >> +    }
> >> +
> >> +    res =3D virtio_gpu_find_resource(g, ss.resource_id);
> >> +    CHECK(res, cmd);
> >> +
> >> +    if (!res->image) {
> >> +        pixman_format_code_t pformat;
> >> +        pformat =3D virtio_gpu_get_pixman_format(res->format);
> >> +        CHECK(pformat, cmd);
> >> +
> >> +        res->image =3D pixman_image_create_bits(pformat,
> >> +                                              res->width,
> >> +                                              res->height,
> >> +                                              NULL, 0);
> >> +        CHECK(res->image, cmd);
> >> +        pixman_image_ref(res->image);
> >> +    }
> >> +
> >> +    vb->enable =3D 1;
> >> +
> >> +    /* realloc the surface ptr */
> >> +    scanout->ds =3D qemu_create_displaysurface_pixman(res->image);
> >> +    dpy_gfx_replace_surface(scanout->con, NULL);
> >> +    dpy_gfx_replace_surface(scanout->con, scanout->ds);
> >> +    res->scanout_bitmask =3D ss.scanout_id;
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_submit_3d(VirtIOGPU *g,
> >> +                       struct virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    struct virtio_gpu_cmd_submit cs;
> >> +    struct rutabaga_command rutabaga_cmd =3D { 0 };
> >> +    g_autofree uint8_t *buf =3D NULL;
> >> +    size_t s;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(cs);
> >> +    trace_virtio_gpu_cmd_ctx_submit(cs.hdr.ctx_id, cs.size);
> >> +
> >> +    buf =3D g_new0(uint8_t, cs.size);
> >> +    s =3D iov_to_buf(cmd->elem.out_sg, cmd->elem.out_num,
> >> +                   sizeof(cs), buf, cs.size);
> >> +    CHECK(s =3D=3D cs.size, cmd);
> >> +
> >> +    rutabaga_cmd.ctx_id =3D cs.hdr.ctx_id;
> >> +    rutabaga_cmd.cmd =3D buf;
> >> +    rutabaga_cmd.cmd_size =3D cs.size;
> >> +
> >> +    result =3D rutabaga_submit_command(vr->rutabaga, &rutabaga_cmd);
> >> +    CHECK(!result, cmd);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_transfer_to_host_2d(VirtIOGPU *g,
> >> +                                 struct virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    struct rutabaga_transfer transfer =3D { 0 };
> >> +    struct virtio_gpu_transfer_to_host_2d t2d;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(t2d);
> >> +    trace_virtio_gpu_cmd_res_xfer_toh_2d(t2d.resource_id);
> >> +
> >> +    transfer.x =3D t2d.r.x;
> >> +    transfer.y =3D t2d.r.y;
> >> +    transfer.z =3D 0;
> >> +    transfer.w =3D t2d.r.width;
> >> +    transfer.h =3D t2d.r.height;
> >> +    transfer.d =3D 1;
> >> +
> >> +    result =3D rutabaga_resource_transfer_write(vr->rutabaga, 0,
> t2d.resource_id,
> >> +                                              &transfer);
> >> +    CHECK(!result, cmd);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_transfer_to_host_3d(VirtIOGPU *g,
> >> +                                 struct virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    struct rutabaga_transfer transfer =3D { 0 };
> >> +    struct virtio_gpu_transfer_host_3d t3d;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(t3d);
> >> +    trace_virtio_gpu_cmd_res_xfer_toh_3d(t3d.resource_id);
> >> +
> >> +    transfer.x =3D t3d.box.x;
> >> +    transfer.y =3D t3d.box.y;
> >> +    transfer.z =3D t3d.box.z;
> >> +    transfer.w =3D t3d.box.w;
> >> +    transfer.h =3D t3d.box.h;
> >> +    transfer.d =3D t3d.box.d;
> >> +    transfer.level =3D t3d.level;
> >> +    transfer.stride =3D t3d.stride;
> >> +    transfer.layer_stride =3D t3d.layer_stride;
> >> +    transfer.offset =3D t3d.offset;
> >> +
> >> +    result =3D rutabaga_resource_transfer_write(vr->rutabaga,
> t3d.hdr.ctx_id,
> >> +                                              t3d.resource_id,
> &transfer);
> >> +    CHECK(!result, cmd);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_transfer_from_host_3d(VirtIOGPU *g,
> >> +                                   struct virtio_gpu_ctrl_command *cm=
d)
> >> +{
> >> +    int32_t result;
> >> +    struct rutabaga_transfer transfer =3D { 0 };
> >> +    struct virtio_gpu_transfer_host_3d t3d;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(t3d);
> >> +    trace_virtio_gpu_cmd_res_xfer_fromh_3d(t3d.resource_id);
> >> +
> >> +    transfer.x =3D t3d.box.x;
> >> +    transfer.y =3D t3d.box.y;
> >> +    transfer.z =3D t3d.box.z;
> >> +    transfer.w =3D t3d.box.w;
> >> +    transfer.h =3D t3d.box.h;
> >> +    transfer.d =3D t3d.box.d;
> >> +    transfer.level =3D t3d.level;
> >> +    transfer.stride =3D t3d.stride;
> >> +    transfer.layer_stride =3D t3d.layer_stride;
> >> +    transfer.offset =3D t3d.offset;
> >> +
> >> +    result =3D rutabaga_resource_transfer_read(vr->rutabaga,
> t3d.hdr.ctx_id,
> >> +                                             t3d.resource_id,
> &transfer, NULL);
> >> +    CHECK(!result, cmd);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_attach_backing(VirtIOGPU *g, struct
> virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    struct rutabaga_iovecs vecs =3D { 0 };
> >> +    struct virtio_gpu_simple_resource *res;
> >> +    struct virtio_gpu_resource_attach_backing att_rb;
> >> +    int ret;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(att_rb);
> >> +    trace_virtio_gpu_cmd_res_back_attach(att_rb.resource_id);
> >> +
> >> +    res =3D virtio_gpu_find_resource(g, att_rb.resource_id);
> >> +    CHECK(res, cmd);
> >> +    CHECK(!res->iov, cmd);
> >> +
> >> +    ret =3D virtio_gpu_create_mapping_iov(g, att_rb.nr_entries,
> sizeof(att_rb),
> >> +                                        cmd, NULL, &res->iov,
> &res->iov_cnt);
> >> +    CHECK(!ret, cmd);
> >> +
> >> +    vecs.iovecs =3D res->iov;
> >> +    vecs.num_iovecs =3D res->iov_cnt;
> >> +
> >> +    ret =3D rutabaga_resource_attach_backing(vr->rutabaga,
> att_rb.resource_id,
> >> +                                           &vecs);
> >> +    if (ret !=3D 0) {
> >> +        virtio_gpu_cleanup_mapping(g, res);
> >> +    }
> >> +
> >> +    CHECK(!ret, cmd);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_detach_backing(VirtIOGPU *g, struct
> virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    struct virtio_gpu_simple_resource *res;
> >> +    struct virtio_gpu_resource_detach_backing detach_rb;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(detach_rb);
> >> +    trace_virtio_gpu_cmd_res_back_detach(detach_rb.resource_id);
> >> +
> >> +    res =3D virtio_gpu_find_resource(g, detach_rb.resource_id);
> >> +    CHECK(res, cmd);
> >> +
> >> +    rutabaga_resource_detach_backing(vr->rutabaga,
> >> +                                     detach_rb.resource_id);
> >> +
> >> +    virtio_gpu_cleanup_mapping(g, res);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_ctx_attach_resource(VirtIOGPU *g,
> >> +                                 struct virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    struct virtio_gpu_ctx_resource att_res;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(att_res);
> >> +    trace_virtio_gpu_cmd_ctx_res_attach(att_res.hdr.ctx_id,
> >> +                                        att_res.resource_id);
> >> +
> >> +    result =3D rutabaga_context_attach_resource(vr->rutabaga,
> att_res.hdr.ctx_id,
> >> +                                              att_res.resource_id);
> >> +    CHECK(!result, cmd);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_ctx_detach_resource(VirtIOGPU *g,
> >> +                                 struct virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    struct virtio_gpu_ctx_resource det_res;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(det_res);
> >> +    trace_virtio_gpu_cmd_ctx_res_detach(det_res.hdr.ctx_id,
> >> +                                        det_res.resource_id);
> >> +
> >> +    result =3D rutabaga_context_detach_resource(vr->rutabaga,
> det_res.hdr.ctx_id,
> >> +                                              det_res.resource_id);
> >> +    CHECK(!result, cmd);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_get_capset_info(VirtIOGPU *g, struct
> virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    struct virtio_gpu_get_capset_info info;
> >> +    struct virtio_gpu_resp_capset_info resp;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(info);
> >> +
> >> +    result =3D rutabaga_get_capset_info(vr->rutabaga, info.capset_ind=
ex,
> >> +                                      &resp.capset_id,
> &resp.capset_max_version,
> >> +                                      &resp.capset_max_size);
> >> +    CHECK(!result, cmd);
> >> +
> >> +    resp.hdr.type =3D VIRTIO_GPU_RESP_OK_CAPSET_INFO;
> >> +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_get_capset(VirtIOGPU *g, struct virtio_gpu_ctrl_command
> *cmd)
> >> +{
> >> +    int32_t result;
> >> +    struct virtio_gpu_get_capset gc;
> >> +    struct virtio_gpu_resp_capset *resp;
> >> +    uint32_t capset_size, capset_version;
> >> +    uint32_t current_id, i;
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(gc);
> >> +    for (i =3D 0; i < vr->num_capsets; i++) {
> >> +        result =3D rutabaga_get_capset_info(vr->rutabaga, i,
> >> +                                          &current_id, &capset_versio=
n,
> >> +                                          &capset_size);
> >> +        CHECK(!result, cmd);
> >> +
> >> +        if (current_id =3D=3D gc.capset_id) {
> >> +            break;
> >> +        }
> >> +    }
> >> +
> >> +    CHECK(i < vr->num_capsets, cmd);
> >> +
> >> +    resp =3D g_malloc0(sizeof(*resp) + capset_size);
> >> +    resp->hdr.type =3D VIRTIO_GPU_RESP_OK_CAPSET;
> >> +    rutabaga_get_capset(vr->rutabaga, gc.capset_id, gc.capset_version=
,
> >> +                        resp->capset_data, capset_size);
> >> +
> >> +    virtio_gpu_ctrl_response(g, cmd, &resp->hdr, sizeof(*resp) +
> capset_size);
> >> +    g_free(resp);
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_resource_create_blob(VirtIOGPU *g,
> >> +                                  struct virtio_gpu_ctrl_command *cmd=
)
> >> +{
> >> +    int result;
> >> +    struct rutabaga_iovecs vecs =3D { 0 };
> >> +    g_autofree struct virtio_gpu_simple_resource *res =3D NULL;
> >> +    struct virtio_gpu_resource_create_blob cblob;
> >> +    struct rutabaga_create_blob rc_blob =3D { 0 };
> >> +
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(cblob);
> >> +    trace_virtio_gpu_cmd_res_create_blob(cblob.resource_id,
> cblob.size);
> >> +
> >> +    CHECK(cblob.resource_id !=3D 0, cmd);
> >> +
> >> +    res =3D g_new0(struct virtio_gpu_simple_resource, 1);
> >> +
> >> +    res->resource_id =3D cblob.resource_id;
> >> +    res->blob_size =3D cblob.size;
> >> +
> >> +    if (cblob.blob_mem !=3D VIRTIO_GPU_BLOB_MEM_HOST3D) {
> >> +        result =3D virtio_gpu_create_mapping_iov(g, cblob.nr_entries,
> >> +                                               sizeof(cblob), cmd,
> &res->addrs,
> >> +                                               &res->iov,
> &res->iov_cnt);
> >> +        CHECK(!result, cmd);
> >> +    }
> >> +
> >> +    rc_blob.blob_id =3D cblob.blob_id;
> >> +    rc_blob.blob_mem =3D cblob.blob_mem;
> >> +    rc_blob.blob_flags =3D cblob.blob_flags;
> >> +    rc_blob.size =3D cblob.size;
> >> +
> >> +    vecs.iovecs =3D res->iov;
> >> +    vecs.num_iovecs =3D res->iov_cnt;
> >> +
> >> +    result =3D rutabaga_resource_create_blob(vr->rutabaga,
> cblob.hdr.ctx_id,
> >> +                                           cblob.resource_id,
> &rc_blob, &vecs,
> >> +                                           NULL);
> >> +
> >> +    if (result && cblob.blob_mem !=3D VIRTIO_GPU_BLOB_MEM_HOST3D) {
> >> +        virtio_gpu_cleanup_mapping(g, res);
> >> +    }
> >> +
> >> +    CHECK(!result, cmd);
> >> +
> >> +    QTAILQ_INSERT_HEAD(&g->reslist, res, next);
> >> +    res =3D NULL;
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_resource_map_blob(VirtIOGPU *g,
> >> +                               struct virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    uint32_t map_info =3D 0;
> >> +    uint32_t slot =3D 0;
> >> +    struct virtio_gpu_simple_resource *res;
> >> +    struct rutabaga_mapping mapping =3D { 0 };
> >> +    struct virtio_gpu_resource_map_blob mblob;
> >> +    struct virtio_gpu_resp_map_info resp =3D { 0 };
> >> +
> >> +    VirtIOGPUBase *vb =3D VIRTIO_GPU_BASE(g);
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(mblob);
> >> +
> >> +    CHECK(mblob.resource_id !=3D 0, cmd);
> >> +
> >> +    res =3D virtio_gpu_find_resource(g, mblob.resource_id);
> >> +    CHECK(res, cmd);
> >> +
> >> +    result =3D rutabaga_resource_map_info(vr->rutabaga,
> mblob.resource_id,
> >> +                                        &map_info);
> >> +    CHECK(!result, cmd);
> >> +
> >> +    /*
> >> +     * RUTABAGA_MAP_ACCESS_* flags are not part of the virtio-gpu
> spec, but do
> >> +     * exist to potentially allow the hypervisor to restrict write
> access to
> >> +     * memory. QEMU does not need to use this functionality at the
> moment.
> >> +     */
> >> +    resp.map_info =3D map_info & RUTABAGA_MAP_CACHE_MASK;
> >> +
> >> +    result =3D rutabaga_resource_map(vr->rutabaga, mblob.resource_id,
> &mapping);
> >> +    CHECK(!result, cmd);
> >> +
> >> +    for (slot =3D 0; slot < MAX_SLOTS; slot++) {
> >> +        if (vr->memory_regions[slot].used) {
> >> +            continue;
> >> +        }
> >> +
> >> +        MemoryRegion *mr =3D &(vr->memory_regions[slot].mr);
> >> +        memory_region_init_ram_ptr(mr, OBJECT(vr), "blob",
> mapping.size,
> >> +                                   mapping.ptr);
> >> +        memory_region_add_subregion(&vb->hostmem, mblob.offset, mr);
> >> +        vr->memory_regions[slot].resource_id =3D mblob.resource_id;
> >> +        vr->memory_regions[slot].used =3D 1;
> >> +        break;
> >> +    }
> >> +
> >> +    if (slot >=3D MAX_SLOTS) {
> >> +        result =3D rutabaga_resource_unmap(vr->rutabaga,
> mblob.resource_id);
> >> +        CHECK(!result, cmd);
> >> +    }
> >> +
> >> +    CHECK(slot < MAX_SLOTS, cmd);
> >> +
> >> +    resp.hdr.type =3D VIRTIO_GPU_RESP_OK_MAP_INFO;
> >> +    virtio_gpu_ctrl_response(g, cmd, &resp.hdr, sizeof(resp));
> >> +}
> >> +
> >> +static void
> >> +rutabaga_cmd_resource_unmap_blob(VirtIOGPU *g,
> >> +                                 struct virtio_gpu_ctrl_command *cmd)
> >> +{
> >> +    int32_t result;
> >> +    uint32_t slot =3D 0;
> >> +    struct virtio_gpu_simple_resource *res;
> >> +    struct virtio_gpu_resource_unmap_blob ublob;
> >> +
> >> +    VirtIOGPUBase *vb =3D VIRTIO_GPU_BASE(g);
> >> +    VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(g);
> >> +
> >> +    VIRTIO_GPU_FILL_CMD(ublob);
> >> +
> >> +    CHECK(ublob.resource_id !=3D 0, cmd);
> >> +
> >> +    res =3D virtio_gpu_find_resource(g, ublob.resource_id);
> >> +    CHECK(res, cmd);
> >> +
> >> +    for (slot =3D 0; slot < MAX_SLOTS; slot++) {
> >> +        if (vr->memory_regions[slot].resource_id !=3D ublob.resource_=
id)
> {
> >> +            continue;
> >> +        }
> >> +
> >> +        MemoryRegion *mr =3D &(vr->memory_regions[slot].mr);
> >> +        memory_region_del_subregion(&vb->hostmem, mr);
> >> +
> >> +        vr->memory_regions[slot].resource_id =3D 0;
> >> +        vr->memory_regions[slot].used =3D 0;
> >> +        break;
> >> +    }
> >> +
> >> +    CHECK(slot < MAX_SLOTS, cmd);
> >> +    result =3D rutabaga_resource_unmap(vr->rutabaga, res->resource_id=
);
> >
> > Hi,
> >
> > After the discussion with Xenia Ragiadakou regarding their patch for
> Venus, I found a
> > bug present in the Venus implementation also affects Rutabaga.
> >
> > The problem is that the memory region may not immediately go away with
> > memory_region_del_subregion(), but it may be kept a bit after that. The
> memory region
> > has a pointer to the mapped memory so the unmapping call that
> immediately follows
> > will make it dangling.
> >
> > Xenia raised a question whether the dangling pointer can be actually
> dereferenced and
> > result in use-after-free, but the answer is unfortunately yes. For
> example, consider
> > the following call chain:
> > kvm_cpu_exec -> address_space_rw -> address_space_write ->
> flatview_write ->
> > flatview_write_continue
> >
> > address_space_write() holds a RCU read lock so that the flatview it
> refers to will
> > not go away during the operation even if it becomes obsolete and will b=
e
> used for
> > writes. It is possible that the obsolete flatview contains the memory
> region for the
> > memory that is concurrently unmapped by virtio-gpu-rutabaga/virgl.  Not=
e
> that the
> > function can be called without holding BQL, and KVM actually does so.
> >
> > Another case is address_space_map(). It acquires the reference to the
> memory with
> > memory_region_ref() and expects it will be available until
> memory_region_unref() gets
> > called with address_space_unmap().
>

Yeah, I did notice weird behavior around map/unmap when initially testing
the series:

https://lists.gnu.org/archive/html/qemu-devel/2023-04/msg03378.html

The solution I did was just do what the Android Emulator (which uses
QEMU2.12) has been doing for years.  Not call "obj_unparent(g)" and keep a
table of memory regions for initialization.  It does pass all ./deqp-vk
memory tests and is sufficient to run Android on a Vulkan-only stack.  I
think the way blob resources are handled in the guest some of the cases
you've cited may not be hit practice.  The biggest bug on Linux we do hit
is a KVM bug but hopefully that should be fixed soon:

https://lore.kernel.org/kvmarm/20230911021637.1941096-1-stevensd@google.com=
/T/#m7c23c97b56378e3e865057140be54fa3dd87154e

We hit interesting issues on MacOS on the gitlab issue and I do think a
follow-up memory-only series may be warranted in the future.

https://gitlab.com/qemu-project/qemu/-/issues/1611

Since the Android Emulator has been running the solution in the
rutabaga/gfxstream series for years, it should be good for our purposes on
Linux for now.  WDYT?


> >
> > In conclusion, both of Rutabaga and Virgl need to ensure to wait until
> all refrences
> > to memory region will be gone before unmapping the underlying memory.
> The patch
> > "[QEMU PATCH v5 07/13] softmmu/memory: enable automatic deallocation of
> memory
> > regions" in the venus patch series is useful to know when that happens.
>
> FWIW this sounds exactly the same as the issue I had with unmapping
> ioports in commit
> 690705ca0b ("softmmu/ioport.c: make MemoryRegionPortioList owner of
> portio_list
> MemoryRegions").
>
> The solution in that commit is to assign the MemoryRegion reference to a
> new QOM
> object using memory_region_init(), but then re-parent the MR back onto it=
s
> original
> device owner (so the QOM tree in "info qom-tree" remains unchanged). This
> means that
> the new QOM object receives the unref notification from the flatview
> instead of the
> MemoryRegion, which then manually unmaps the MemoryRegion from the device
> when it is
> safe.
>
>
> ATB,
>
> Mark.
>
>

--0000000000007ce63c0605e75644
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=3D"gmail_quote">=
<div dir=3D"ltr" class=3D"gmail_attr">On Wed, Sep 20, 2023 at 5:05=E2=80=AF=
AM Mark Cave-Ayland &lt;<a href=3D"mailto:mark.cave-ayland@ilande.co.uk">ma=
rk.cave-ayland@ilande.co.uk</a>&gt; wrote:<br></div><blockquote class=3D"gm=
ail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,=
204,204);padding-left:1ex">On 20/09/2023 12:42, Akihiko Odaki wrote:<br>
<br>
&gt; On 2023/08/29 9:36, Gurchetan Singh wrote:<br>
&gt;&gt; This adds initial support for gfxstream and cross-domain.=C2=A0 Bo=
th<br>
&gt;&gt; features rely on virtio-gpu blob resources and context types, whic=
h<br>
&gt;&gt; are also implemented in this patch.<br>
&gt;&gt;<br>
&gt;&gt; gfxstream has a long and illustrious history in Android graphics<b=
r>
&gt;&gt; paravirtualization.=C2=A0 It has been powering graphics in the And=
roid<br>
&gt;&gt; Studio Emulator for more than a decade, which is the main develope=
r<br>
&gt;&gt; platform.<br>
&gt;&gt;<br>
&gt;&gt; Originally conceived by Jesse Hall, it was first known as &quot;Em=
uGL&quot; [a].<br>
&gt;&gt; The key design characteristic was a 1:1 threading model and<br>
&gt;&gt; auto-generation, which fit nicely with the OpenGLES spec.=C2=A0 It=
 also<br>
&gt;&gt; allowed easy layering with ANGLE on the host, which provides the G=
LES<br>
&gt;&gt; implementations on Windows or MacOS enviroments.<br>
&gt;&gt;<br>
&gt;&gt; gfxstream has traditionally been maintained by a single engineer, =
and<br>
&gt;&gt; between 2015 to 2021, the goldfish throne passed to Frank Yang.<br=
>
&gt;&gt; Historians often remark this glorious reign (&quot;pax gfxstreama&=
quot; is the<br>
&gt;&gt; academic term) was comparable to that of Augustus and both Queen<b=
r>
&gt;&gt; Elizabeths.=C2=A0 Just to name a few accomplishments in a resplend=
ent<br>
&gt;&gt; panoply: higher versions of GLES, address space graphics, snapshot=
<br>
&gt;&gt; support and CTS compliant Vulkan [b].<br>
&gt;&gt;<br>
&gt;&gt; One major drawback was the use of out-of-tree goldfish drivers.<br=
>
&gt;&gt; Android engineers didn&#39;t know much about DRM/KMS and especiall=
y TTM so<br>
&gt;&gt; a simple guest to host pipe was conceived.<br>
&gt;&gt;<br>
&gt;&gt; Luckily, virtio-gpu 3D started to emerge in 2016 due to the work o=
f<br>
&gt;&gt; the Mesa/virglrenderer communities.=C2=A0 In 2018, the initial vir=
tio-gpu<br>
&gt;&gt; port of gfxstream was done by Cuttlefish enthusiast Alistair Delva=
.<br>
&gt;&gt; It was a symbol compatible replacement of virglrenderer [c] and na=
med<br>
&gt;&gt; &quot;AVDVirglrenderer&quot;.=C2=A0 This implementation forms the =
basis of the<br>
&gt;&gt; current gfxstream host implementation still in use today.<br>
&gt;&gt;<br>
&gt;&gt; cross-domain support follows a similar arc.=C2=A0 Originally conce=
ived by<br>
&gt;&gt; Wayland aficionado David Reveman and crosvm enjoyer Zach Reizner i=
n<br>
&gt;&gt; 2018, it initially relied on the downstream &quot;virtio-wl&quot; =
device.<br>
&gt;&gt;<br>
&gt;&gt; In 2020 and 2021, virtio-gpu was extended to include blob resource=
s<br>
&gt;&gt; and multiple timelines by yours truly, features gfxstream/cross-do=
main<br>
&gt;&gt; both require to function correctly.<br>
&gt;&gt;<br>
&gt;&gt; Right now, we stand at the precipice of a truly fantastic possibil=
ity:<br>
&gt;&gt; the Android Emulator powered by upstream QEMU and upstream Linux<b=
r>
&gt;&gt; kernel.=C2=A0 gfxstream will then be packaged properfully, and app=
<br>
&gt;&gt; developers can even fix gfxstream bugs on their own if they encoun=
ter<br>
&gt;&gt; them.<br>
&gt;&gt;<br>
&gt;&gt; It&#39;s been quite the ride, my friends.=C2=A0 Where will gfxstre=
am head next,<br>
&gt;&gt; nobody really knows.=C2=A0 I wouldn&#39;t be surprised if it&#39;s=
 around for<br>
&gt;&gt; another decade, maintained by a new generation of Android graphics=
<br>
&gt;&gt; enthusiasts.<br>
&gt;&gt;<br>
&gt;&gt; Technical details:<br>
&gt;&gt; =C2=A0=C2=A0 - Very simple initial display integration: just used =
Pixman<br>
&gt;&gt; =C2=A0=C2=A0 - Largely, 1:1 mapping of virtio-gpu hypercalls to ru=
tabaga function<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0 calls<br>
&gt;&gt;<br>
&gt;&gt; Next steps for Android VMs:<br>
&gt;&gt; =C2=A0=C2=A0 - The next step would be improving display integratio=
n and UI interfaces<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0 with the goal of the QEMU upstream graphi=
cs being in an emulator<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0 release [d].<br>
&gt;&gt;<br>
&gt;&gt; Next steps for Linux VMs for display virtualization:<br>
&gt;&gt; =C2=A0=C2=A0 - For widespread distribution, someone needs to packa=
ge Sommelier or the<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0 wayland-proxy-virtwl [e] ideally into Deb=
ian main. In addition, newer<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0 versions of the Linux kernel come with DR=
M_VIRTIO_GPU_KMS option,<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0 which allows disabling KMS hypercalls.=C2=
=A0 If anyone cares enough, it&#39;ll<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0 probably be possible to build a custom VM=
 variant that uses this display<br>
&gt;&gt; =C2=A0=C2=A0=C2=A0=C2=A0 virtualization strategy.<br>
&gt;&gt;<br>
&gt;&gt; [a] <a href=3D"https://android-review.googlesource.com/c/platform/=
development/+/34470" rel=3D"noreferrer" target=3D"_blank">https://android-r=
eview.googlesource.com/c/platform/development/+/34470</a><br>
&gt;&gt; [b] <a href=3D"https://android-review.googlesource.com/q/topic:%22=
vulkan-hostconnection-start%22" rel=3D"noreferrer" target=3D"_blank">https:=
//android-review.googlesource.com/q/topic:%22vulkan-hostconnection-start%22=
</a><br>
&gt;&gt; [c] <a href=3D"https://android-review.googlesource.com/c/device/ge=
neric/goldfish-opengl/+/761927" rel=3D"noreferrer" target=3D"_blank">https:=
//android-review.googlesource.com/c/device/generic/goldfish-opengl/+/761927=
</a><br>
&gt;&gt; [d] <a href=3D"https://developer.android.com/studio/releases/emula=
tor" rel=3D"noreferrer" target=3D"_blank">https://developer.android.com/stu=
dio/releases/emulator</a><br>
&gt;&gt; [e] <a href=3D"https://github.com/talex5/wayland-proxy-virtwl" rel=
=3D"noreferrer" target=3D"_blank">https://github.com/talex5/wayland-proxy-v=
irtwl</a><br>
&gt;&gt;<br>
&gt;&gt; Signed-off-by: Gurchetan Singh &lt;<a href=3D"mailto:gurchetansing=
h@chromium.org" target=3D"_blank">gurchetansingh@chromium.org</a>&gt;<br>
&gt;&gt; Tested-by: Alyssa Ross &lt;<a href=3D"mailto:hi@alyssa.is" target=
=3D"_blank">hi@alyssa.is</a>&gt;<br>
&gt;&gt; Tested-by: Emmanouil Pitsidianakis &lt;<a href=3D"mailto:manos.pit=
sidianakis@linaro.org" target=3D"_blank">manos.pitsidianakis@linaro.org</a>=
&gt;<br>
&gt;&gt; Tested-by: Akihiko Odaki &lt;<a href=3D"mailto:akihiko.odaki@dayni=
x.com" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;<br>
&gt;&gt; Reviewed-by: Emmanouil Pitsidianakis &lt;<a href=3D"mailto:manos.p=
itsidianakis@linaro.org" target=3D"_blank">manos.pitsidianakis@linaro.org</=
a>&gt;<br>
&gt;&gt; Reviewed-by: Antonio Caggiano &lt;<a href=3D"mailto:quic_acaggian@=
quicinc.com" target=3D"_blank">quic_acaggian@quicinc.com</a>&gt;<br>
&gt;&gt; Reviewed-by: Akihiko Odaki &lt;<a href=3D"mailto:akihiko.odaki@day=
nix.com" target=3D"_blank">akihiko.odaki@daynix.com</a>&gt;<br>
&gt;&gt; ---<br>
&gt;&gt; =C2=A0 hw/display/virtio-gpu-pci-rutabaga.c |=C2=A0=C2=A0 47 ++<br=
>
&gt;&gt; =C2=A0 hw/display/virtio-gpu-rutabaga.c=C2=A0=C2=A0=C2=A0=C2=A0 | =
1119 ++++++++++++++++++++++++++<br>
&gt;&gt; =C2=A0 hw/display/virtio-vga-rutabaga.c=C2=A0=C2=A0=C2=A0=C2=A0 |=
=C2=A0=C2=A0 50 ++<br>
&gt;&gt; =C2=A0 3 files changed, 1216 insertions(+)<br>
&gt;&gt; =C2=A0 create mode 100644 hw/display/virtio-gpu-pci-rutabaga.c<br>
&gt;&gt; =C2=A0 create mode 100644 hw/display/virtio-gpu-rutabaga.c<br>
&gt;&gt; =C2=A0 create mode 100644 hw/display/virtio-vga-rutabaga.c<br>
&gt;&gt;<br>
&gt;&gt; diff --git a/hw/display/virtio-gpu-pci-rutabaga.c <br>
&gt;&gt; b/hw/display/virtio-gpu-pci-rutabaga.c<br>
&gt;&gt; new file mode 100644<br>
&gt;&gt; index 0000000000..c96729e198<br>
&gt;&gt; --- /dev/null<br>
&gt;&gt; +++ b/hw/display/virtio-gpu-pci-rutabaga.c<br>
&gt;&gt; @@ -0,0 +1,47 @@<br>
&gt;&gt; +/* SPDX-License-Identifier: GPL-2.0-or-later */<br>
&gt;&gt; +<br>
&gt;&gt; +#include &quot;qemu/osdep.h&quot;<br>
&gt;&gt; +#include &quot;qapi/error.h&quot;<br>
&gt;&gt; +#include &quot;qemu/module.h&quot;<br>
&gt;&gt; +#include &quot;hw/pci/pci.h&quot;<br>
&gt;&gt; +#include &quot;hw/qdev-properties.h&quot;<br>
&gt;&gt; +#include &quot;hw/virtio/virtio.h&quot;<br>
&gt;&gt; +#include &quot;hw/virtio/virtio-bus.h&quot;<br>
&gt;&gt; +#include &quot;hw/virtio/virtio-gpu-pci.h&quot;<br>
&gt;&gt; +#include &quot;qom/object.h&quot;<br>
&gt;&gt; +<br>
&gt;&gt; +#define TYPE_VIRTIO_GPU_RUTABAGA_PCI &quot;virtio-gpu-rutabaga-pc=
i&quot;<br>
&gt;&gt; +OBJECT_DECLARE_SIMPLE_TYPE(VirtIOGPURutabagaPCI, VIRTIO_GPU_RUTAB=
AGA_PCI)<br>
&gt;&gt; +<br>
&gt;&gt; +struct VirtIOGPURutabagaPCI {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPUPCIBase parent_obj;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga vdev;<br>
&gt;&gt; +};<br>
&gt;&gt; +<br>
&gt;&gt; +static void virtio_gpu_rutabaga_initfn(Object *obj)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabagaPCI *dev =3D VIRTIO_GPU_RUTAB=
AGA_PCI(obj);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 virtio_instance_init_common(obj, &amp;dev-&gt;=
vdev, sizeof(dev-&gt;vdev),<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 TYPE_VIRTIO_GPU_RUTABAGA);=
<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_PCI_BASE(obj)-&gt;vgpu =3D VIRTIO_G=
PU_BASE(&amp;dev-&gt;vdev);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static const TypeInfo virtio_gpu_rutabaga_pci_info[] =3D {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 .name =3D TYPE_VIRTIO_=
GPU_RUTABAGA_PCI,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 .parent =3D TYPE_VIRTI=
O_GPU_PCI_BASE,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 .instance_size =3D siz=
eof(VirtIOGPURutabagaPCI),<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 .instance_init =3D vir=
tio_gpu_rutabaga_initfn,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 .interfaces =3D (Inter=
faceInfo[]) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 { INTERFACE_CONVENTIONAL_PCI_DEVICE },<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 },<br>
&gt;&gt; +};<br>
&gt;&gt; +<br>
&gt;&gt; +DEFINE_TYPES(virtio_gpu_rutabaga_pci_info)<br>
&gt;&gt; +<br>
&gt;&gt; +module_obj(TYPE_VIRTIO_GPU_RUTABAGA_PCI);<br>
&gt;&gt; +module_kconfig(VIRTIO_PCI);<br>
&gt;&gt; +module_dep(&quot;hw-display-virtio-gpu-pci&quot;);<br>
&gt;&gt; diff --git a/hw/display/virtio-gpu-rutabaga.c b/hw/display/virtio-=
gpu-rutabaga.c<br>
&gt;&gt; new file mode 100644<br>
&gt;&gt; index 0000000000..a105e06214<br>
&gt;&gt; --- /dev/null<br>
&gt;&gt; +++ b/hw/display/virtio-gpu-rutabaga.c<br>
&gt;&gt; @@ -0,0 +1,1119 @@<br>
&gt;&gt; +/* SPDX-License-Identifier: GPL-2.0-or-later */<br>
&gt;&gt; +<br>
&gt;&gt; +#include &quot;qemu/osdep.h&quot;<br>
&gt;&gt; +#include &quot;qapi/error.h&quot;<br>
&gt;&gt; +#include &quot;qemu/error-report.h&quot;<br>
&gt;&gt; +#include &quot;qemu/iov.h&quot;<br>
&gt;&gt; +#include &quot;trace.h&quot;<br>
&gt;&gt; +#include &quot;hw/virtio/virtio.h&quot;<br>
&gt;&gt; +#include &quot;hw/virtio/virtio-gpu.h&quot;<br>
&gt;&gt; +#include &quot;hw/virtio/virtio-gpu-pixman.h&quot;<br>
&gt;&gt; +#include &quot;hw/virtio/virtio-iommu.h&quot;<br>
&gt;&gt; +<br>
&gt;&gt; +#include &lt;glib/gmem.h&gt;<br>
&gt;&gt; +#include &lt;rutabaga_gfx/rutabaga_gfx_ffi.h&gt;<br>
&gt;&gt; +<br>
&gt;&gt; +#define CHECK(condition, cmd)=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 \<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 do {=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 \<=
br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (!(condition)) {=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 \<=
br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 error_report(&quot;CHECK failed in %s() %s:&quot; &quot;%d&quot;, __fun=
c__,=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 \<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0 __FILE__, __LINE__);=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 \<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 (cmd)-&gt;error =3D VIRTIO_GPU_RESP_ERR_UNSPEC;=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 \<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 return;=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 \<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0 \<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 } while (0)<br>
&gt;&gt; +<br>
&gt;&gt; +/*<br>
&gt;&gt; + * This is the size of the char array in struct sock_addr_un. No =
Wayland socket<br>
&gt;&gt; + * can be created with a path longer than this, including the nul=
l terminator.<br>
&gt;&gt; + */<br>
&gt;&gt; +#define UNIX_PATH_MAX sizeof((struct sockaddr_un) {} .sun_path)<b=
r>
&gt;&gt; +<br>
&gt;&gt; +struct rutabaga_aio_data {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct VirtIOGPURutabaga *vr;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_fence fence;<br>
&gt;&gt; +};<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +virtio_gpu_rutabaga_update_cursor(VirtIOGPU *g, struct virtio_gpu=
_scanout *s,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 uint32_t resou=
rce_id)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_simple_resource *res;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_transfer transfer =3D { 0 };<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct iovec transfer_iovec;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res =3D virtio_gpu_find_resource(g, resource_i=
d);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 if (!res) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 if (res-&gt;width !=3D s-&gt;current_cursor-&g=
t;width ||<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 res-&gt;height !=3D s-=
&gt;current_cursor-&gt;height) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.x =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.y =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.z =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.w =3D res-&gt;width;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.h =3D res-&gt;height;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.d =3D 1;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer_iovec.iov_base =3D s-&gt;current_curs=
or-&gt;data;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer_iovec.iov_len =3D res-&gt;width * res=
-&gt;height * 4;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rutabaga_resource_transfer_read(vr-&gt;rutabag=
a, 0,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 re=
source_id, &amp;transfer,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &a=
mp;transfer_iovec);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +virtio_gpu_rutabaga_gl_flushed(VirtIOGPUBase *b)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPU *g =3D VIRTIO_GPU(b);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 virtio_gpu_process_cmdq(g);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_create_resource_2d(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ctrl_com=
mand *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_create_3d rc_3d =3D { 0 };<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_simple_resource *res;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_resource_create_2d c2d;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(c2d);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_res_create_2d(c2d.resourc=
e_id, c2d.format,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 c2d.width, c2d.height);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.target =3D 2;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.format =3D c2d.format;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.bind =3D (1 &lt;&lt; 1);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.width =3D c2d.width;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.height =3D c2d.height;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.depth =3D 1;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.array_size =3D 1;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.last_level =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.nr_samples =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.flags =3D VIRTIO_GPU_RESOURCE_FLAG_Y_0_T=
OP;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_resource_create_3d(vr-&gt;=
rutabaga, c2d.resource_id, &amp;rc_3d);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res =3D g_new0(struct virtio_gpu_simple_resour=
ce, 1);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res-&gt;width =3D c2d.width;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res-&gt;height =3D c2d.height;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res-&gt;format =3D c2d.format;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res-&gt;resource_id =3D c2d.resource_id;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 QTAILQ_INSERT_HEAD(&amp;g-&gt;reslist, res, ne=
xt);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_create_resource_3d(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ctrl_com=
mand *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_create_3d rc_3d =3D { 0 };<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_simple_resource *res;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_resource_create_3d c3d;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(c3d);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_res_create_3d(c3d.resourc=
e_id, c3d.format,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0 c3d.width, c3d.height, c3d.depth);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.target =3D c3d.target;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.format =3D c3d.format;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.bind =3D c3d.bind;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.width =3D c3d.width;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.height =3D c3d.height;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.depth =3D c3d.depth;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.array_size =3D c3d.array_size;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.last_level =3D c3d.last_level;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.nr_samples =3D c3d.nr_samples;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_3d.flags =3D c3d.flags;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_resource_create_3d(vr-&gt;=
rutabaga, c3d.resource_id, &amp;rc_3d);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res =3D g_new0(struct virtio_gpu_simple_resour=
ce, 1);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res-&gt;width =3D c3d.width;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res-&gt;height =3D c3d.height;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res-&gt;format =3D c3d.format;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res-&gt;resource_id =3D c3d.resource_id;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 QTAILQ_INSERT_HEAD(&amp;g-&gt;reslist, res, ne=
xt);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_resource_unref(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ctrl_command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_simple_resource *res;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_resource_unref unref;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(unref);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_res_unref(unref.resource_=
id);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res =3D virtio_gpu_find_resource(g, unref.reso=
urce_id);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(res, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_resource_unref(vr-&gt;ruta=
baga, unref.resource_id);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 if (res-&gt;image) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pixman_image_unref(res=
-&gt;image);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 QTAILQ_REMOVE(&amp;g-&gt;reslist, res, next);<=
br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 g_free(res);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_context_create(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ctrl_command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ctx_create cc;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(cc);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_ctx_create(cc.hdr.ctx_id,=
<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 cc=
.debug_name);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_context_create(vr-&gt;ruta=
baga, cc.hdr.ctx_id,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 cc.context_init, cc.debug_name, cc.nlen);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_context_destroy(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ctrl_command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ctx_destroy cd;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(cd);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_ctx_destroy(cd.hdr.ctx_id=
);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_context_destroy(vr-&gt;rut=
abaga, cd.hdr.ctx_id);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_resource_flush(VirtIOGPU *g, struct virtio_gpu_ctrl_=
command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result, i;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_scanout *scanout =3D NULL;<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_simple_resource *res;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_transfer transfer =3D { 0 };<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct iovec transfer_iovec;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_resource_flush rf;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 bool found =3D false;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPUBase *vb =3D VIRTIO_GPU_BASE(g);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 if (vr-&gt;headless) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(rf);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_res_flush(rf.resource_id,=
<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 rf.r.wid=
th, rf.r.height, rf.r.x, rf.r.y);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res =3D virtio_gpu_find_resource(g, rf.resourc=
e_id);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(res, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 for (i =3D 0; i &lt; vb-&gt;conf.max_outputs; =
i++) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 scanout =3D &amp;vb-&g=
t;scanout[i];<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (i =3D=3D res-&gt;s=
canout_bitmask) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 found =3D true;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 break;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 if (!found) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.x =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.y =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.z =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.w =3D res-&gt;width;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.h =3D res-&gt;height;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.d =3D 1;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer_iovec.iov_base =3D pixman_image_get_d=
ata(res-&gt;image);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer_iovec.iov_len =3D res-&gt;width * res=
-&gt;height * 4;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_resource_transfer_read(vr-=
&gt;rutabaga, 0,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 rf.resource_id, &amp;tr=
ansfer,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &amp;transfer_iovec);<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 dpy_gfx_update_full(scanout-&gt;con);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_set_scanout(VirtIOGPU *g, struct virtio_gpu_ctrl_com=
mand *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_simple_resource *res;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_scanout *scanout =3D NULL;<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_set_scanout ss;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPUBase *vb =3D VIRTIO_GPU_BASE(g);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 if (vr-&gt;headless) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(ss);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_set_scanout(ss.scanout_id=
, ss.resource_id,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 ss.r.width, ss.r.height, ss.r.x, ss.r.y);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(ss.scanout_id &lt; VIRTIO_GPU_MAX_SCANOU=
TS, cmd);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 scanout =3D &amp;vb-&gt;scanout[ss.scanout_id]=
;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 if (ss.resource_id =3D=3D 0) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 dpy_gfx_replace_surfac=
e(scanout-&gt;con, NULL);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 dpy_gl_scanout_disable=
(scanout-&gt;con);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res =3D virtio_gpu_find_resource(g, ss.resourc=
e_id);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(res, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 if (!res-&gt;image) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pixman_format_code_t p=
format;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pformat =3D virtio_gpu=
_get_pixman_format(res-&gt;format);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 CHECK(pformat, cmd);<b=
r>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 res-&gt;image =3D pixm=
an_image_create_bits(pformat,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 res-&gt;width,<br=
>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 res-&gt;height,<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 NULL, 0);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 CHECK(res-&gt;image, c=
md);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pixman_image_ref(res-&=
gt;image);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 vb-&gt;enable =3D 1;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 /* realloc the surface ptr */<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 scanout-&gt;ds =3D qemu_create_displaysurface_=
pixman(res-&gt;image);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 dpy_gfx_replace_surface(scanout-&gt;con, NULL)=
;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 dpy_gfx_replace_surface(scanout-&gt;con, scano=
ut-&gt;ds);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res-&gt;scanout_bitmask =3D ss.scanout_id;<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_submit_3d(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struc=
t virtio_gpu_ctrl_command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_cmd_submit cs;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_command rutabaga_cmd =3D { 0 }=
;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 g_autofree uint8_t *buf =3D NULL;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 size_t s;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(cs);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_ctx_submit(cs.hdr.ctx_id,=
 cs.size);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 buf =3D g_new0(uint8_t, cs.size);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 s =3D iov_to_buf(cmd-&gt;elem.out_sg, cmd-&gt;=
elem.out_num,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 sizeof(cs), buf, cs.size);<br=
>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(s =3D=3D cs.size, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rutabaga_cmd.ctx_id =3D cs.hdr.ctx_id;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rutabaga_cmd.cmd =3D buf;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rutabaga_cmd.cmd_size =3D cs.size;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_submit_command(vr-&gt;ruta=
baga, &amp;rutabaga_cmd);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_transfer_to_host_2d(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ct=
rl_command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_transfer transfer =3D { 0 };<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_transfer_to_host_2d t2d;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(t2d);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_res_xfer_toh_2d(t2d.resou=
rce_id);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.x =3D t2d.r.x;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.y =3D t2d.r.y;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.z =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.w =3D t2d.r.width;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.h =3D t2d.r.height;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.d =3D 1;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_resource_transfer_write(vr=
-&gt;rutabaga, 0, t2d.resource_id,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &amp;transfer);<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_transfer_to_host_3d(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ct=
rl_command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_transfer transfer =3D { 0 };<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_transfer_host_3d t3d;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(t3d);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_res_xfer_toh_3d(t3d.resou=
rce_id);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.x =3D t3d.box.x;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.y =3D t3d.box.y;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.z =3D t3d.box.z;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.w =3D t3d.box.w;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.h =3D t3d.box.h;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.d =3D t3d.box.d;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.level =3D t3d.level;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.stride =3D t3d.stride;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.layer_stride =3D t3d.layer_stride;<br=
>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.offset =3D t3d.offset;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_resource_transfer_write(vr=
-&gt;rutabaga, t3d.hdr.ctx_id,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 t3d.resource_id, =
&amp;transfer);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_transfer_from_host_3d(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct v=
irtio_gpu_ctrl_command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_transfer transfer =3D { 0 };<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_transfer_host_3d t3d;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(t3d);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_res_xfer_fromh_3d(t3d.res=
ource_id);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.x =3D t3d.box.x;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.y =3D t3d.box.y;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.z =3D t3d.box.z;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.w =3D t3d.box.w;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.h =3D t3d.box.h;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.d =3D t3d.box.d;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.level =3D t3d.level;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.stride =3D t3d.stride;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.layer_stride =3D t3d.layer_stride;<br=
>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 transfer.offset =3D t3d.offset;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_resource_transfer_read(vr-=
&gt;rutabaga, t3d.hdr.ctx_id,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 t3d.resource_id, &amp;t=
ransfer, NULL);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_attach_backing(VirtIOGPU *g, struct virtio_gpu_ctrl_=
command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_iovecs vecs =3D { 0 };<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_simple_resource *res;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_resource_attach_backing att_=
rb;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int ret;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(att_rb);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_res_back_attach(att_rb.re=
source_id);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res =3D virtio_gpu_find_resource(g, att_rb.res=
ource_id);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(res, cmd);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!res-&gt;iov, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 ret =3D virtio_gpu_create_mapping_iov(g, att_r=
b.nr_entries, sizeof(att_rb),<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 cmd, NULL, &amp;res-&gt;iov, &amp;res-&gt;iov_cnt);<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!ret, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 vecs.iovecs =3D res-&gt;iov;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 vecs.num_iovecs =3D res-&gt;iov_cnt;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 ret =3D rutabaga_resource_attach_backing(vr-&g=
t;rutabaga, att_rb.resource_id,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &amp;vecs);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 if (ret !=3D 0) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 virtio_gpu_cleanup_map=
ping(g, res);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!ret, cmd);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_detach_backing(VirtIOGPU *g, struct virtio_gpu_ctrl_=
command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_simple_resource *res;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_resource_detach_backing deta=
ch_rb;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(detach_rb);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_res_back_detach(detach_rb=
.resource_id);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res =3D virtio_gpu_find_resource(g, detach_rb.=
resource_id);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(res, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rutabaga_resource_detach_backing(vr-&gt;rutaba=
ga,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 detach_rb.resource_id);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 virtio_gpu_cleanup_mapping(g, res);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_ctx_attach_resource(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ct=
rl_command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ctx_resource att_res;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(att_res);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_ctx_res_attach(att_res.hd=
r.ctx_id,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 att_res.resource_id);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_context_attach_resource(vr=
-&gt;rutabaga, att_res.hdr.ctx_id,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 att_res.resource_=
id);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_ctx_detach_resource(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ct=
rl_command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ctx_resource det_res;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(det_res);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_ctx_res_detach(det_res.hd=
r.ctx_id,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 det_res.resource_id);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_context_detach_resource(vr=
-&gt;rutabaga, det_res.hdr.ctx_id,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 det_res.resource_=
id);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_get_capset_info(VirtIOGPU *g, struct virtio_gpu_ctrl=
_command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_get_capset_info info;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_resp_capset_info resp;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(info);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_get_capset_info(vr-&gt;rut=
abaga, info.capset_index,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 &amp;resp.capset_id, &amp;resp.capset_max_version,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0 &amp;resp.capset_max_size);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 resp.hdr.type =3D VIRTIO_GPU_RESP_OK_CAPSET_IN=
FO;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 virtio_gpu_ctrl_response(g, cmd, &amp;resp.hdr=
, sizeof(resp));<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_get_capset(VirtIOGPU *g, struct virtio_gpu_ctrl_comm=
and *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_get_capset gc;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_resp_capset *resp;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 uint32_t capset_size, capset_version;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 uint32_t current_id, i;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(gc);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 for (i =3D 0; i &lt; vr-&gt;num_capsets; i++) =
{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 result =3D rutabaga_ge=
t_capset_info(vr-&gt;rutabaga, i,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &amp;current_id, &amp;capset_version,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &amp;capset_size);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<b=
r>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (current_id =3D=3D =
gc.capset_id) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 break;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(i &lt; vr-&gt;num_capsets, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 resp =3D g_malloc0(sizeof(*resp) + capset_size=
);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 resp-&gt;hdr.type =3D VIRTIO_GPU_RESP_OK_CAPSE=
T;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rutabaga_get_capset(vr-&gt;rutabaga, gc.capset=
_id, gc.capset_version,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
 resp-&gt;capset_data, capset_size);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 virtio_gpu_ctrl_response(g, cmd, &amp;resp-&gt=
;hdr, sizeof(*resp) + capset_size);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 g_free(resp);<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_resource_create_blob(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct virtio_=
gpu_ctrl_command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_iovecs vecs =3D { 0 };<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 g_autofree struct virtio_gpu_simple_resource *=
res =3D NULL;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_resource_create_blob cblob;<=
br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_create_blob rc_blob =3D { 0 };=
<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(cblob);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 trace_virtio_gpu_cmd_res_create_blob(cblob.res=
ource_id, cblob.size);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(cblob.resource_id !=3D 0, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res =3D g_new0(struct virtio_gpu_simple_resour=
ce, 1);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res-&gt;resource_id =3D cblob.resource_id;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res-&gt;blob_size =3D cblob.size;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 if (cblob.blob_mem !=3D VIRTIO_GPU_BLOB_MEM_HO=
ST3D) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 result =3D virtio_gpu_=
create_mapping_iov(g, cblob.nr_entries,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 sizeof(cblo=
b), cmd, &amp;res-&gt;addrs,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 &amp;res-&g=
t;iov, &amp;res-&gt;iov_cnt);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_blob.blob_id =3D cblob.blob_id;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_blob.blob_mem =3D cblob.blob_mem;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_blob.blob_flags =3D cblob.blob_flags;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 rc_blob.size =3D cblob.size;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 vecs.iovecs =3D res-&gt;iov;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 vecs.num_iovecs =3D res-&gt;iov_cnt;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_resource_create_blob(vr-&g=
t;rutabaga, cblob.hdr.ctx_id,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 cblob.resource_id, &amp;rc_blob, &a=
mp;vecs,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 NULL);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 if (result &amp;&amp; cblob.blob_mem !=3D VIRT=
IO_GPU_BLOB_MEM_HOST3D) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 virtio_gpu_cleanup_map=
ping(g, res);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 QTAILQ_INSERT_HEAD(&amp;g-&gt;reslist, res, ne=
xt);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res =3D NULL;<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_resource_map_blob(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ctrl_command *=
cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 uint32_t map_info =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 uint32_t slot =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_simple_resource *res;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct rutabaga_mapping mapping =3D { 0 };<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_resource_map_blob mblob;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_resp_map_info resp =3D { 0 }=
;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPUBase *vb =3D VIRTIO_GPU_BASE(g);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(mblob);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(mblob.resource_id !=3D 0, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res =3D virtio_gpu_find_resource(g, mblob.reso=
urce_id);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(res, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_resource_map_info(vr-&gt;r=
utabaga, mblob.resource_id,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 &amp;map_info);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 /*<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0 * RUTABAGA_MAP_ACCESS_* flags are not pa=
rt of the virtio-gpu spec, but do<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0 * exist to potentially allow the hypervi=
sor to restrict write access to<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0 * memory. QEMU does not need to use this=
 functionality at the moment.<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0 */<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 resp.map_info =3D map_info &amp; RUTABAGA_MAP_=
CACHE_MASK;<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_resource_map(vr-&gt;rutaba=
ga, mblob.resource_id, &amp;mapping);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 for (slot =3D 0; slot &lt; MAX_SLOTS; slot++) =
{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (vr-&gt;memory_regi=
ons[slot].used) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 continue;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 MemoryRegion *mr =3D &=
amp;(vr-&gt;memory_regions[slot].mr);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 memory_region_init_ram=
_ptr(mr, OBJECT(vr), &quot;blob&quot;, mapping.size,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 mapping.=
ptr);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 memory_region_add_subr=
egion(&amp;vb-&gt;hostmem, mblob.offset, mr);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 vr-&gt;memory_regions[=
slot].resource_id =3D mblob.resource_id;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 vr-&gt;memory_regions[=
slot].used =3D 1;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 break;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 if (slot &gt;=3D MAX_SLOTS) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 result =3D rutabaga_re=
source_unmap(vr-&gt;rutabaga, mblob.resource_id);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 CHECK(!result, cmd);<b=
r>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(slot &lt; MAX_SLOTS, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 resp.hdr.type =3D VIRTIO_GPU_RESP_OK_MAP_INFO;=
<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 virtio_gpu_ctrl_response(g, cmd, &amp;resp.hdr=
, sizeof(resp));<br>
&gt;&gt; +}<br>
&gt;&gt; +<br>
&gt;&gt; +static void<br>
&gt;&gt; +rutabaga_cmd_resource_unmap_blob(VirtIOGPU *g,<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 struct virtio_gpu_ct=
rl_command *cmd)<br>
&gt;&gt; +{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 int32_t result;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 uint32_t slot =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_simple_resource *res;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 struct virtio_gpu_resource_unmap_blob ublob;<b=
r>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPUBase *vb =3D VIRTIO_GPU_BASE(g);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VirtIOGPURutabaga *vr =3D VIRTIO_GPU_RUTABAGA(=
g);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 VIRTIO_GPU_FILL_CMD(ublob);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(ublob.resource_id !=3D 0, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 res =3D virtio_gpu_find_resource(g, ublob.reso=
urce_id);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(res, cmd);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 for (slot =3D 0; slot &lt; MAX_SLOTS; slot++) =
{<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if (vr-&gt;memory_regi=
ons[slot].resource_id !=3D ublob.resource_id) {<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 continue;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 MemoryRegion *mr =3D &=
amp;(vr-&gt;memory_regions[slot].mr);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 memory_region_del_subr=
egion(&amp;vb-&gt;hostmem, mr);<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 vr-&gt;memory_regions[=
slot].resource_id =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 vr-&gt;memory_regions[=
slot].used =3D 0;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 break;<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 }<br>
&gt;&gt; +<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 CHECK(slot &lt; MAX_SLOTS, cmd);<br>
&gt;&gt; +=C2=A0=C2=A0=C2=A0 result =3D rutabaga_resource_unmap(vr-&gt;ruta=
baga, res-&gt;resource_id);<br>
&gt; <br>
&gt; Hi,<br>
&gt; <br>
&gt; After the discussion with Xenia Ragiadakou regarding their patch for V=
enus, I found a <br>
&gt; bug present in the Venus implementation also affects Rutabaga.<br>
&gt; <br>
&gt; The problem is that the memory region may not immediately go away with=
 <br>
&gt; memory_region_del_subregion(), but it may be kept a bit after that. Th=
e memory region <br>
&gt; has a pointer to the mapped memory so the unmapping call that immediat=
ely follows <br>
&gt; will make it dangling.<br>
&gt; <br>
&gt; Xenia raised a question whether the dangling pointer can be actually d=
ereferenced and <br>
&gt; result in use-after-free, but the answer is unfortunately yes. For exa=
mple, consider <br>
&gt; the following call chain:<br>
&gt; kvm_cpu_exec -&gt; address_space_rw -&gt; address_space_write -&gt; fl=
atview_write -&gt; <br>
&gt; flatview_write_continue<br>
&gt; <br>
&gt; address_space_write() holds a RCU read lock so that the flatview it re=
fers to will <br>
&gt; not go away during the operation even if it becomes obsolete and will =
be used for <br>
&gt; writes. It is possible that the obsolete flatview contains the memory =
region for the <br>
&gt; memory that is concurrently unmapped by virtio-gpu-rutabaga/virgl.=C2=
=A0 Note that the <br>
&gt; function can be called without holding BQL, and KVM actually does so.<=
br>
&gt; <br>
&gt; Another case is address_space_map(). It acquires the reference to the =
memory with <br>
&gt; memory_region_ref() and expects it will be available until memory_regi=
on_unref() gets <br>
&gt; called with address_space_unmap().<br></blockquote><div><br></div><div=
>Yeah, I did notice weird behavior around map/unmap when initially testing =
the series:</div><div><br></div><div><a href=3D"https://lists.gnu.org/archi=
ve/html/qemu-devel/2023-04/msg03378.html">https://lists.gnu.org/archive/htm=
l/qemu-devel/2023-04/msg03378.html</a><br></div><div><br></div><div>The sol=
ution I did was just do what the Android Emulator (which uses QEMU2.12) has=
 been doing for years.=C2=A0 Not call &quot;obj_unparent(g)&quot; and keep =
a table of memory regions for initialization.=C2=A0 It does pass all ./deqp=
-vk memory tests and is sufficient to run Android on a Vulkan-only stack.=
=C2=A0 I think the way blob resources are handled in the guest some of the =
cases you&#39;ve cited may not be hit practice.=C2=A0 The biggest bug on Li=
nux we do hit is a KVM bug but hopefully that should be fixed soon:</div><d=
iv><br></div><div><a href=3D"https://lore.kernel.org/kvmarm/20230911021637.=
1941096-1-stevensd@google.com/T/#m7c23c97b56378e3e865057140be54fa3dd87154e"=
>https://lore.kernel.org/kvmarm/20230911021637.1941096-1-stevensd@google.co=
m/T/#m7c23c97b56378e3e865057140be54fa3dd87154e</a><br></div><div><br></div>=
<div>We hit interesting issues on MacOS on the gitlab issue and I do think =
a follow-up memory-only series may be warranted in the future.</div><div><b=
r></div><div><a href=3D"https://gitlab.com/qemu-project/qemu/-/issues/1611"=
>https://gitlab.com/qemu-project/qemu/-/issues/1611</a><br></div><div><br><=
/div><div>Since the Android Emulator has been running the solution in the r=
utabaga/gfxstream series for years, it should be good for our purposes on L=
inux for now.=C2=A0 WDYT?<br></div><div>=C2=A0</div><blockquote class=3D"gm=
ail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,=
204,204);padding-left:1ex">
&gt; <br>
&gt; In conclusion, both of Rutabaga and Virgl need to ensure to wait until=
 all refrences <br>
&gt; to memory region will be gone before unmapping the underlying memory. =
The patch <br>
&gt; &quot;[QEMU PATCH v5 07/13] softmmu/memory: enable automatic deallocat=
ion of memory <br>
&gt; regions&quot; in the venus patch series is useful to know when that ha=
ppens.<br>
<br>
FWIW this sounds exactly the same as the issue I had with unmapping ioports=
 in commit <br>
690705ca0b (&quot;softmmu/ioport.c: make MemoryRegionPortioList owner of po=
rtio_list <br>
MemoryRegions&quot;).<br>
<br>
The solution in that commit is to assign the MemoryRegion reference to a ne=
w QOM <br>
object using memory_region_init(), but then re-parent the MR back onto its =
original <br>
device owner (so the QOM tree in &quot;info qom-tree&quot; remains unchange=
d). This means that <br>
the new QOM object receives the unref notification from the flatview instea=
d of the <br>
MemoryRegion, which then manually unmaps the MemoryRegion from the device w=
hen it is <br>
safe.<br>
<br>
<br>
ATB,<br>
<br>
Mark.<br>
<br>
</blockquote></div></div>

--0000000000007ce63c0605e75644--


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 06:01:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 06:01:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606713.944723 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjZDd-0007KW-GT; Fri, 22 Sep 2023 06:00:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606713.944723; Fri, 22 Sep 2023 06:00:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjZDd-0007KP-DO; Fri, 22 Sep 2023 06:00:49 +0000
Received: by outflank-mailman (input) for mailman id 606713;
 Fri, 22 Sep 2023 06:00:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=a6t7=FG=gmail.com=oleksii.kurochko@srs-se1.protection.inumbo.net>)
 id 1qjZDc-0007KI-Db
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 06:00:48 +0000
Received: from mail-lj1-x22b.google.com (mail-lj1-x22b.google.com
 [2a00:1450:4864:20::22b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5fb2fef2-590d-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 08:00:47 +0200 (CEST)
Received: by mail-lj1-x22b.google.com with SMTP id
 38308e7fff4ca-2c038a1e2e6so27071941fa.2
 for <xen-devel@lists.xenproject.org>; Thu, 21 Sep 2023 23:00:47 -0700 (PDT)
Received: from [192.168.201.133] ([94.75.70.14])
 by smtp.gmail.com with ESMTPSA id
 z6-20020ac25de6000000b00503555aa934sm598764lfq.11.2023.09.21.23.00.44
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 21 Sep 2023 23:00:45 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5fb2fef2-590d-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695362446; x=1695967246; darn=lists.xenproject.org;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=Y/Tq2bMRE4SHQEWwl4v3TwpscyHnBwMQzkwXRyf3+jQ=;
        b=M9f5atU1VK/ZQ7feHsAjqKumN4mIkWEZYkkhwZqBi/gAhHVFw0C4rOMCrdmnaV0iRE
         hBOghfi73YUfSBKbAqKmc2YVj0ZECYpI6UIYrb3TldN3zEmjGXqvWApSrcLgpw/TdFuC
         q0PzpSJzMjCQd5fC9eEYv1qKMl9WOaxKwFkr+x4guxq0vkNAG/wdVKNXNBWEjo7zuka0
         Ay5d87UoHiOUsGNN0zKUCrgZ8Xbc7ReIZxHggpYLBvAlZAuFoCSS+eljUN3pdV/Fq1VQ
         X37+6tP7ieqEgakPGQt04tP2QkPIZ2uRNqKDyHcR6usC3wQhFmyaitf6n5u/sfnldfYA
         YL7A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695362446; x=1695967246;
        h=mime-version:user-agent:content-transfer-encoding:references
         :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=Y/Tq2bMRE4SHQEWwl4v3TwpscyHnBwMQzkwXRyf3+jQ=;
        b=hDPCUcrFfh05+VoKlA3qpmdHrM8NKzxddj305h6lqYFommMOjPkqbQo6BBgaDbQnd4
         QLcsekh3ywIDBzDa0Q1BXQn0RA+LoFHwyV+z1FOiZrN82kazfRMFU3RR/tMyUtbCXKMT
         hljvUuw7O/P/4GIyQyCjrh+Tpp3eXnx7USgzs3CvoW+b3LSbKWU1HCDYs2gmP7wktEg/
         KFSp5u3kZvG2Rw0gigaKIhV/GYrCoq4wZ+lVsGfScTBi7X7udRQX++uWIlFuztZt+Z8C
         7KwcT27DPLXW7oiJHSbKMoHanIN9PyDO95rNYqh1WEWC5lciEHj/AyBsL+nY9SRelaz9
         Rr/w==
X-Gm-Message-State: AOJu0YwP+CNW9UK0aZ87IrgoZz66OOiKxSBHh6i4kw7PZjGc6Khq+wLW
	9OaVnpBLarxnjyCqtUNR6os=
X-Google-Smtp-Source: AGHT+IGnELsHNkP2GOzjUMu1XF0JKcPCEUHkc0iuoamrbiJskJPNushLsk1EaXIJI7CFQkU8L71YLw==
X-Received: by 2002:a19:915a:0:b0:4ff:ae42:19e2 with SMTP id y26-20020a19915a000000b004ffae4219e2mr5775712lfj.58.1695362446215;
        Thu, 21 Sep 2023 23:00:46 -0700 (PDT)
Message-ID: <a05c39b64004398fbb42ec83a452fa7af6603f95.camel@gmail.com>
Subject: Re: [PATCH v1 00/29] Introduce stub headers necessary for full Xen
 build
From: Oleksii <oleksii.kurochko@gmail.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Tamas K Lengyel
 <tamas@tklengyel.com>, Alexandru Isaila <aisaila@bitdefender.com>, Petre
 Pircalabu <ppircalabu@bitdefender.com>, xen-devel@lists.xenproject.org
Date: Fri, 22 Sep 2023 09:00:44 +0300
In-Reply-To: <7d59acfd-26d0-bb9b-568e-d273252d1f2c@suse.com>
References: <cover.1694702259.git.oleksii.kurochko@gmail.com>
	 <da588ba7-f22f-9aa2-4346-de75783bd65e@suse.com>
	 <9036713e5a5e67199b78b25ad1607be605b4a812.camel@gmail.com>
	 <3b7ef926-ed06-609f-d443-544bd9125bec@suse.com>
	 <09d0449004162ccd339e9e8559b7efad3e2335bb.camel@gmail.com>
	 <7d59acfd-26d0-bb9b-568e-d273252d1f2c@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) 
MIME-Version: 1.0

On Mon, 2023-09-18 at 14:38 +0200, Jan Beulich wrote:
> On 18.09.2023 14:05, Oleksii wrote:
> > On Mon, 2023-09-18 at 11:29 +0200, Jan Beulich wrote:
> > > On 18.09.2023 10:51, Oleksii wrote:
> > > > On Thu, 2023-09-14 at 17:08 +0200, Jan Beulich wrote:
> > > > > On 14.09.2023 16:56, Oleksii Kurochko wrote:
> > > > > > Based on two patch series [1] and [2], the idea of which is
> > > > > > to
> > > > > > provide minimal
> > > > > > amount of things for a complete Xen build, a large amount
> > > > > > of
> > > > > > headers are the same
> > > > > > or almost the same, so it makes sense to move them to asm-
> > > > > > generic.
> > > > > >=20
> > > > > > Also, providing such stub headers should help future
> > > > > > architectures
> > > > > > to add
> > > > > > a full Xen build.
> > > > > >=20
> > > > > > [1]
> > > > > > https://lore.kernel.org/xen-devel/cover.1694543103.git.sanastas=
io@raptorengineering.com/
> > > > > > [2]
> > > > > > https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.=
kurochko@gmail.com/
> > > > > >=20
> > > > > > Oleksii Kurochko (29):
> > > > > > =C2=A0 xen/asm-generic: introduce stub header spinlock.h
> > > > >=20
> > > > > At the example of this, personally I think this goes too far.
> > > > > Headers
> > > > > in
> > > > > asm-generic should be for the case where an arch elects to
> > > > > not
> > > > > implement
> > > > > certain functionality. Clearly spinlocks are required
> > > > > uniformly.
> > > > It makes sense. Then I will back to the option [2] where I
> > > > introduced
> > > > all this headers as part of RISC-V architecture.=20
> > >=20
> > > You did see though that in a reply to my own mail I said I take
> > > back
> > > the
> > > comment, at least as far as this header (and perhaps several
> > > others)
> > > are
> > > concerned.
> > >=20
> > I missed that comment on the patch about spinlock.
> >=20
> > Well, then, I don't fully understand the criteria.
> >=20
> > What about empty headers or temporary empty headers?
> >=20
> > For example, asm/xenoprof.h is empty for all arches except x86, so
> > it
> > is a good candidate for asm-generic.
>=20
> That's an example where I think it is wrong (or at least unnecessary)
> for
> the xen/ header to include the asm/ one irrespective of the
> controlling
> CONFIG_* setting. From what I can tell common code would build fine
> with
> the #include moved; x86 code may require an adjustment or two. IOW
> this
> is a case where I think preferably presence of an arch header was
> required only when XENOPROF can actually be yet to y in Kconfig.
>=20
> > But asm/grant_table.h is empty for PPC and RISC-V for now but won't
> > be
> > empty in the future. Does it make sense to put them to asm-generic?
> > The
> > only benefit I see is that in future architecture if they follow
> > the
> > same way of adding support for the arch to Xen, they will face the
> > same
> > issue: building full Xen requires this empty header.
>=20
> Here I can see different ways of looking at it. Personally I'd prefer
> stub headers to be used only if, for the foreseeable future, they are
> intended to remain in use. grant_table.h pretty clearly doesn't fall
> in
> this category. (You may want to peek at what's being done on the PPC
> side. Nevertheless some of what's done there could likely benefit
> from
> what you're doing here.)
>=20
> > So, should I wait for some time on other patches of the patch
> > series?
>=20
> Well, afaic I'd prefer if I got a chance to look over at least some
> more
> of the patches in this series. But you're of course free to submit a
> v2
> at any time.
I think that it will be better to wait for some time not to produce
unnecessary patches.

~ Oleksii


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 07:49:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 07:49:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606730.944733 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjauS-0005G7-D4; Fri, 22 Sep 2023 07:49:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606730.944733; Fri, 22 Sep 2023 07:49:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjauS-0005G0-A3; Fri, 22 Sep 2023 07:49:08 +0000
Received: by outflank-mailman (input) for mailman id 606730;
 Fri, 22 Sep 2023 07:49:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wvYF=FG=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qjauR-0005Fs-6B
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 07:49:07 +0000
Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 80203778-591c-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 09:49:04 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id 5D9A621963;
 Fri, 22 Sep 2023 07:49:03 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 3B84B13478;
 Fri, 22 Sep 2023 07:49:03 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id o+QyDe9GDWXDKAAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 22 Sep 2023 07:49:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 80203778-591c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695368943; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=miTsi/5ki2BQBcjdJJLXTVssrm7KN5It1DnbTudDPE4=;
	b=ovi2HZnaw4vIZkTiP4Nb7bLLoYfdx6ZHGQzNSY8HfgBEkIKNtONUAb9i5SIApeytih7jWl
	AyV69/KvnMPSzpsCIqV92rCMYPsAkyJTqAfRXCB1OAFTISmfINZnkzuwD24Pw2HEZzDnFk
	TCkZPYybBO7vtAlO1C0AhKRlhx+CBZ4=
Message-ID: <43cfe65e-c874-46e8-b647-c21c2cea4ca4@suse.com>
Date: Fri, 22 Sep 2023 09:49:02 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 2/2] credit: Don't steal vcpus which have yielded
Content-Language: en-US
To: George Dunlap <george.dunlap@cloud.com>, xen-devel@lists.xenproject.org
Cc: Dario Faggioli <dfaggioli@suse.com>
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
 <20230921122352.2307574-2-george.dunlap@cloud.com>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <20230921122352.2307574-2-george.dunlap@cloud.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------2NjXxoRROZoCI1MJwd2AcLP9"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------2NjXxoRROZoCI1MJwd2AcLP9
Content-Type: multipart/mixed; boundary="------------00sqphl72C1UNjV4tVr80EIb";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: George Dunlap <george.dunlap@cloud.com>, xen-devel@lists.xenproject.org
Cc: Dario Faggioli <dfaggioli@suse.com>
Message-ID: <43cfe65e-c874-46e8-b647-c21c2cea4ca4@suse.com>
Subject: Re: [PATCH v2 2/2] credit: Don't steal vcpus which have yielded
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
 <20230921122352.2307574-2-george.dunlap@cloud.com>
In-Reply-To: <20230921122352.2307574-2-george.dunlap@cloud.com>

--------------00sqphl72C1UNjV4tVr80EIb
Content-Type: multipart/mixed; boundary="------------b0S0LSxb7nZqLfM1MHLBMjf3"

--------------b0S0LSxb7nZqLfM1MHLBMjf3
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjEuMDkuMjMgMTQ6MjMsIEdlb3JnZSBEdW5sYXAgd3JvdGU6DQo+IE9uIGxhcmdlIHN5
c3RlbXMgd2l0aCBtYW55IHZjcHVzIHlpZWxkaW5nIGR1ZSB0byBzcGlubG9jayBwcmlvcml0
eQ0KPiBpbnZlcnNpb24sIGl0J3Mgbm90IHVuY29tbW9uIGZvciBhIHZjcHUgdG8geWllbGQg
aXRzIHRpbWVzbGljZSwgb25seQ0KPiB0byBiZSBpbW1lZGlhdGVseSBzdG9sZW4gYnkgYW5v
dGhlciBwY3B1IGxvb2tpbmcgZm9yIGhpZ2hlci1wcmlvcml0eQ0KPiB3b3JrLg0KPiANCj4g
VG8gcHJldmVudCB0aGlzOg0KPiANCj4gKiBLZWVwIHRoZSBZSUVMRCBmbGFnIHVudGlsIGEg
dmNwdSBpcyByZW1vdmVkIGZyb20gYSBydW5xdWV1ZQ0KPiANCj4gKiBXaGVuIGxvb2tpbmcg
Zm9yIHdvcmsgdG8gc3RlYWwsIHNraXAgdmNwdXMgd2hpY2ggaGF2ZSB5aWVsZGVkDQo+IA0K
PiBOQiB0aGF0IHRoaXMgZG9lcyBtZWFuIHRoYXQgc29tZXRpbWVzIGEgVk0gaXMgaW5zZXJ0
ZWQgaW50byBhbiBlbXB0eQ0KPiBydW5xdWV1ZTsgaGFuZGxlIHRoYXQgY2FzZS4NCj4gDQo+
IFNpZ25lZC1vZmYtYnk6IEdlb3JnZSBEdW5sYXAgPGdlb3JnZS5kdW5sYXBAY2xvdWQuY29t
Pg0KPiAtLS0NCj4gQ2hhbmdlcyBzaW5jZSB2MToNCj4gLSBNb3ZlZCBhIGNvbW1lbnQgdHdl
YWsgdG8gdGhlIHJpZ2h0IHBhdGNoDQo+IA0KPiBDQzogRGFyaW8gRmFnZ2lvbGkgPGRmYWdn
aW9saUBzdXNlLmNvbT4NCj4gLS0tDQo+ICAgeGVuL2NvbW1vbi9zY2hlZC9jcmVkaXQuYyB8
IDI1ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0NCj4gICAxIGZpbGUgY2hhbmdlZCwgMTQg
aW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0tZ2l0IGEveGVu
L2NvbW1vbi9zY2hlZC9jcmVkaXQuYyBiL3hlbi9jb21tb24vc2NoZWQvY3JlZGl0LmMNCj4g
aW5kZXggNWMwNmY1OTZkMi4uMzhhNmY2ZmE2ZCAxMDA2NDQNCj4gLS0tIGEveGVuL2NvbW1v
bi9zY2hlZC9jcmVkaXQuYw0KPiArKysgYi94ZW4vY29tbW9uL3NjaGVkL2NyZWRpdC5jDQo+
IEBAIC0yOTgsMTQgKzI5OCwxMCBAQCBfX3J1bnFfaW5zZXJ0KHN0cnVjdCBjc2NoZWRfdW5p
dCAqc3ZjKQ0KPiAgICAgICAgKiBydW5uYWJsZSB1bml0IGlmIHdlIGNhbi4gIFRoZSBuZXh0
IHJ1bnFfc29ydCB3aWxsIGJyaW5nIGl0IGZvcndhcmQNCj4gICAgICAgICogd2l0aGluIDMw
bXMgaWYgdGhlIHF1ZXVlIHRvbyBsb25nLiAqLw0KPiAgICAgICBpZiAoIHRlc3RfYml0KENT
Q0hFRF9GTEFHX1VOSVRfWUlFTEQsICZzdmMtPmZsYWdzKQ0KPiAtICAgICAgICAgJiYgX19y
dW5xX2VsZW0oaXRlciktPnByaSA+IENTQ0hFRF9QUklfSURMRSApDQo+IC0gICAgew0KPiAr
ICAgICAgICAgJiYgX19ydW5xX2VsZW0oaXRlciktPnByaSA+IENTQ0hFRF9QUklfSURMRQ0K
PiArICAgICAgICAgJiYgaXRlci0+bmV4dCAhPSBydW5xKQ0KDQpTdHlsZQ0KDQo+ICAgICAg
ICAgICBpdGVyPWl0ZXItPm5leHQ7DQo+ICAgDQo+IC0gICAgICAgIC8qIFNvbWUgc2FuaXR5
IGNoZWNrcyAqLw0KPiAtICAgICAgICBCVUdfT04oaXRlciA9PSBydW5xKTsNCj4gLSAgICB9
DQo+IC0NCj4gICAgICAgbGlzdF9hZGRfdGFpbCgmc3ZjLT5ydW5xX2VsZW0sIGl0ZXIpOw0K
PiAgIH0NCj4gICANCj4gQEAgLTMyMSw2ICszMTcsMTEgQEAgX19ydW5xX3JlbW92ZShzdHJ1
Y3QgY3NjaGVkX3VuaXQgKnN2YykNCj4gICB7DQo+ICAgICAgIEJVR19PTiggIV9fdW5pdF9v
bl9ydW5xKHN2YykgKTsNCj4gICAgICAgbGlzdF9kZWxfaW5pdCgmc3ZjLT5ydW5xX2VsZW0p
Ow0KPiArDQo+ICsgICAgLyoNCj4gKyAgICAgKiBDbGVhciBZSUVMRCBmbGFnIHdoZW4gc2No
ZWR1bGluZyBiYWNrIGluDQo+ICsgICAgICovDQo+ICsgICAgY2xlYXJfYml0KENTQ0hFRF9G
TEFHX1VOSVRfWUlFTEQsICZzdmMtPmZsYWdzKTsNCj4gICB9DQo+ICAgDQo+ICAgc3RhdGlj
IGlubGluZSB2b2lkDQo+IEBAIC0xNjM3LDYgKzE2MzgsMTMgQEAgY3NjaGVkX3J1bnFfc3Rl
YWwoaW50IHBlZXJfY3B1LCBpbnQgY3B1LCBpbnQgcHJpLCBpbnQgYmFsYW5jZV9zdGVwKQ0K
PiAgICAgICAgICAgaWYgKCBzcGVlci0+cHJpIDw9IHByaSApDQo+ICAgICAgICAgICAgICAg
YnJlYWs7DQo+ICAgDQo+ICsgICAgICAgIC8qDQo+ICsgICAgICAgICAqIERvbid0IHN0ZWFs
IGEgVU5JVCB3aGljaCBoYXMgeWllbGRlZDsgaXQncyB3YWl0aW5nIGZvciBhDQo+ICsgICAg
ICAgICAqIHJlYXNvbg0KPiArICAgICAgICAgKi8NCj4gKyAgICAgICAgaWYgKHRlc3RfYml0
KENTQ0hFRF9GTEFHX1VOSVRfWUlFTEQsICZzcGVlci0+ZmxhZ3MpKQ0KDQpTdHlsZQ0KDQo+
ICsgICAgICAgICAgICBjb250aW51ZTsNCj4gKw0KPiAgICAgICAgICAgLyogSXMgdGhpcyBV
TklUIHJ1bm5hYmxlIG9uIG91ciBQQ1BVPyAqLw0KPiAgICAgICAgICAgdW5pdCA9IHNwZWVy
LT51bml0Ow0KPiAgICAgICAgICAgQlVHX09OKCBpc19pZGxlX3VuaXQodW5pdCkgKTsNCj4g
QEAgLTE5NTQsMTEgKzE5NjIsNiBAQCBzdGF0aWMgdm9pZCBjZl9jaGVjayBjc2NoZWRfc2No
ZWR1bGUoDQo+ICAgICAgICAgICBkZWNfbnJfcnVubmFibGUoc2NoZWRfY3B1KTsNCj4gICAg
ICAgfQ0KPiAgIA0KPiAtICAgIC8qDQo+IC0gICAgICogQ2xlYXIgWUlFTEQgZmxhZyBiZWZv
cmUgc2NoZWR1bGluZyBvdXQNCj4gLSAgICAgKi8NCj4gLSAgICBjbGVhcl9iaXQoQ1NDSEVE
X0ZMQUdfVU5JVF9ZSUVMRCwgJnNjdXJyLT5mbGFncyk7DQo+IC0NCj4gICAgICAgZG8gew0K
PiAgICAgICAgICAgc25leHQgPSBfX3J1bnFfZWxlbShydW5xLT5uZXh0KTsNCj4gICANCg0K
V2l0aCB0aGUgc3R5bGUgaXNzdWVzIGZpeGVkOg0KDQpSZXZpZXdlZC1ieTogSnVlcmdlbiBH
cm9zcyA8amdyb3NzQHN1c2UuY29tPg0KDQoNCkp1ZXJnZW4NCg==
--------------b0S0LSxb7nZqLfM1MHLBMjf3
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------b0S0LSxb7nZqLfM1MHLBMjf3--

--------------00sqphl72C1UNjV4tVr80EIb--

--------------2NjXxoRROZoCI1MJwd2AcLP9
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUNRu4FAwAAAAAACgkQsN6d1ii/Ey92
xQf/ajWp/pohNAjUYektoulA+kHjboNP4o6wJtbAdFGEuDhAKp1VCsDeQqMVyl/9WUB/PZcIoAsK
WXvYBvvQRoNYhxrE/fI6qAXdp9bAetWUzUiC4+lRtdi2C6lYM5qoKc2PIoEZ0yXSFKyQOgHniusV
v51jb1wqVlIhvylg+CY7E59kE/+zDep1YFbR/ZfoC9k4sS8qgxW3lNatA02ReNn8pIBjhmI1KGwx
XYG9K23RnOyU2eCKGMIH4hvpqmLe1ReL6/75BP9oF9hHlC3+9lsWxjJnmHoRgHMrmDDudej2i9yl
UMQfsHmIe/FVUH1gGBRzD3hb6QK+WTNWfAzHnLJ63Q==
=QYG1
-----END PGP SIGNATURE-----

--------------2NjXxoRROZoCI1MJwd2AcLP9--


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 07:49:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 07:49:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606728.944743 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjauz-0005et-Lc; Fri, 22 Sep 2023 07:49:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606728.944743; Fri, 22 Sep 2023 07:49:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjauz-0005em-Ia; Fri, 22 Sep 2023 07:49:41 +0000
Received: by outflank-mailman (input) for mailman id 606728;
 Fri, 22 Sep 2023 07:42:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=BOPQ=FG=alyssa.is=hi@srs-se1.protection.inumbo.net>)
 id 1qjao6-0004qf-Lb
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 07:42:36 +0000
Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com
 [66.111.4.28]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 95fe3403-591b-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 09:42:31 +0200 (CEST)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.46])
 by mailout.nyi.internal (Postfix) with ESMTP id AAD2D5C02B3;
 Fri, 22 Sep 2023 03:42:30 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute2.internal (MEProxy); Fri, 22 Sep 2023 03:42:30 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri,
 22 Sep 2023 03:42:29 -0400 (EDT)
Received: by x220.qyliss.net (Postfix, from userid 1000)
 id 73A198982; Fri, 22 Sep 2023 07:42:28 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 95fe3403-591b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alyssa.is; h=cc
	:cc:content-type:content-type:date:date:from:from:in-reply-to
	:in-reply-to:message-id:mime-version:references:reply-to:sender
	:subject:subject:to:to; s=fm1; t=1695368550; x=1695454950; bh=k6
	4X2p2VwoRCcxIEmILfU1Ile1Borr2azLvc7cFXmsM=; b=bOauwSytSvxCBYLJCp
	5iMYlbyZXt1KiskmL2vOCPuUC13MdANwe4OmYegi2l5ufISVK6jtT4BTk0AD6fEu
	xC/+6dUPmtkWrESP8ZUXETa42osg7Ylsdl3AHg1QjdSGxGllJFRn4pbQuz2FJzAu
	NifSlp0EklHjiowSgQ7uZcOHnsazW+m6TsJgnLqVg9ZpztQCguyJl2Pd4tnHWj/7
	rKGs2dK9cjLl4ktz0xiYapy7UKkvCIFtBclYQUU2xbuCHsmSNC55OUmP76xkSXD8
	ysbcP9vJBs5EXWlgpR6vJC2O5Wx104n3pMbS9RZ2vGCwKIYsEDK5WRekXNtWao7O
	U9SA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; t=1695368550; x=1695454950; bh=k64X2p2VwoRCc
	xIEmILfU1Ile1Borr2azLvc7cFXmsM=; b=Bj4Q2anne6tMsUIhRmSt38pm6nPHs
	ecVY34km4V+BKfwiX5iOE4Ha/reivVecOAfwbZ45yx4Oha7g+MqPgfR7BE7bx/7D
	gO1jD/9cIg6ZnYBPsuz+cAv3qcLvwO97EKuxMGCcvckQ6JxI/16/VRMnY2GTY4qM
	0zK5NLmN8m+wcIc188t0HL+P9LtVJ59+FGsnpSVpHkFZcQKgTzicuzAE1UotOm0P
	BWJerTwwjshu5lpUC1CcJKFQn8ODFyRQ2ELsqoMPloFlX5fIAlt2g5EbenYFBgwg
	YK3egIcdR3HRSoba9M1QfgBz3r5w9T+pqJFLh7m4ah89tpUo1pVbS6Chg==
X-ME-Sender: <xms:ZkUNZRcxJpNTfy_WnvleWcQYvr3flawWHd6tzFU535Bj9q9blgqrUQ>
    <xme:ZkUNZfOsh3KXW1IAZPitiXgDkmkpKFKITpfZ2sVqzfTLZkxkxZr8MJaXamX64JRHA
    0j8a1tF4mi-hCHJ3A>
X-ME-Received: <xmr:ZkUNZahNi8qwyisHiN4_X3jTfq0rl05KaaUDulHaKLf7yGpc5_QdezqCzthO4_TfJlvmqsk6UENkr1Fsr6U>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudekjedguddulecutefuodetggdotefrod
    ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh
    necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd
    enucfjughrpefhvfevufgjfhffkfggtgesghdtreertddttdenucfhrhhomheptehlhihs
    shgrucftohhsshcuoehhihesrghlhihsshgrrdhisheqnecuggftrfgrthhtvghrnhepie
    duffeuieelgfetgfdttddtkeekheekgfehkedufeevteegfeeiffetvdetueevnecuvehl
    uhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhephhhisegrlhihsh
    hsrgdrihhs
X-ME-Proxy: <xmx:ZkUNZa9s2PAqSptq63tF5yFrxiom9CjvcWIX-eFDUjYt1-8rETh7kA>
    <xmx:ZkUNZdtEYy10L9XorIN4Tnge7fJwzF5q9B_xOTO9lbRaCjHw8kB0DA>
    <xmx:ZkUNZZGv62c3n_dRALyZe3Nuyhj9PAmHW0ObSqgM9ixonwrfaYrMbA>
    <xmx:ZkUNZdf4eY3SoaBZzSj76J1Tehew6ivJegkQo0CJlnqk0WfEP6Fmzw>
Feedback-ID: i12284293:Fastmail
From: Alyssa Ross <hi@alyssa.is>
To: Akihiko Odaki <akihiko.odaki@gmail.com>, Gurchetan Singh
 <gurchetansingh@chromium.org>, Mark Cave-Ayland
 <mark.cave-ayland@ilande.co.uk>
Cc: qemu-devel@nongnu.org, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 marcandre.lureau@redhat.com, ray.huang@amd.com, alex.bennee@linaro.org,
 shentey@gmail.com, ernunes@redhat.com, manos.pitsidianakis@linaro.org,
 philmd@linaro.org, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 xen-devel@lists.xenproject.org, Albert Esteve <aesteve@redhat.com>,
 Roger Pau =?utf-8?Q?Monn=C3=A9?= <roger.pau@citrix.com>,
 Alex Deucher <alexander.deucher@amd.com>,
 Christian =?utf-8?Q?K=C3=B6nig?= <christian.koenig@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>,
 Julia Zhang <julia.zhang@amd.com>, Chen Jiqian <Jiqian.Chen@amd.com>
Subject: Re: [PATCH v13 6/9] gfxstream + rutabaga: add initial support for
 gfxstream
In-Reply-To: <6256f069-ee39-495e-a8c3-ea2328f085a2@gmail.com>
References: <20230829003629.410-1-gurchetansingh@chromium.org>
 <20230829003629.410-7-gurchetansingh@chromium.org>
 <2620fca0-a5b4-49d0-bf91-fd359ee4999b@gmail.com>
 <3830bf8d-8c25-950c-f901-8d70dbfc06a6@ilande.co.uk>
 <CAAfnVBknhG=QYn=OFjNW9h=KbDtQ=xq3AEs5Pg=AG3LTO=LZ6w@mail.gmail.com>
 <6256f069-ee39-495e-a8c3-ea2328f085a2@gmail.com>
Date: Fri, 22 Sep 2023 07:42:25 +0000
Message-ID: <87lecyejry.fsf@alyssa.is>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
	micalg=pgp-sha256; protocol="application/pgp-signature"

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Akihiko Odaki <akihiko.odaki@gmail.com> writes:

> Practically there is very low chance to hit the bug. I think only=20
> fuzzers and malicious actors will trigger it, and probably no one will=20
> dare using virtio-gpu-rutabaga or virtio-gpu-gl in a security-sensitive=20
> context.

Well, this is exactly what Chrome OS does, albiet with crosvm rather
than QEMU, right?

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEH9wgcxqlHM/ARR3h+dvtSFmyccAFAmUNRWEACgkQ+dvtSFmy
ccBxGg//dcsfGgRKdv8Y2vhhzZlfuKKWbz7u93kMnMRywPinims++Ly+iU7qpaJv
Ppts5R/DmBdzxG1+b8/v2KDv40d4vy9ehB6XnVEFIdGjhMXOyWGSMw2vN1ndc1jz
RCkaDr0p3WZQxT91o1kQ1g0wM633zmL3oPbIFC5JFGdw8v/6Tn2jx52TZGN1YQF9
W41N5kstGQSvPI2M08OupGKPFU/e6zSw92WY9z/PGVKJPR2iCazQFI3Q9Yb2ttR5
+W0LNEfgy2NviwlaI7Wdx+E21aWgmyfwHS+AZDuyEP90yWledJ7RR2Ah9hqeGh4l
wryHd8zrm1RZ81i/v6DDWZV/vuPzeK9eQQcVEprZi8vGyhoeOafG2CfBTki+Acf+
L/uj3BlyHo6SUIWiPNR89xW6zHWeTT3Fpnt5ZONmdTIw4cWLkvgVOH8MNAZH3HgE
/+iG1nqlrEd1P8AoLc5vt0rsPAl2IXgQ8NAWVEtn+G50FPMDVLx1DcSfnS3BDTsw
NLzDkTU5KZ60mp6jqLUBeATLq6TJw6aNdf5nkbLThka6g9C7KOZaX8EkC8I+71VV
40uc1iTxvmLMIT66XK2e3xDXU1c7nGCh4Z6EuM9/JGWn6uRJ3sjcZn69AGZa3OkN
XImxWk+TBV15JTGcBKsxODqETiDqUrLCqBIeJOcAiMmoB5eF3xU=
=jP0G
-----END PGP SIGNATURE-----
--=-=-=--


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 07:55:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 07:55:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606739.944752 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjb0A-0007Gh-9B; Fri, 22 Sep 2023 07:55:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606739.944752; Fri, 22 Sep 2023 07:55:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjb0A-0007Ga-6d; Fri, 22 Sep 2023 07:55:02 +0000
Received: by outflank-mailman (input) for mailman id 606739;
 Fri, 22 Sep 2023 07:55:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WcZa=FG=gmail.com=akihiko.odaki@srs-se1.protection.inumbo.net>)
 id 1qjb09-0007GU-5Z
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 07:55:01 +0000
Received: from mail-yw1-x112f.google.com (mail-yw1-x112f.google.com
 [2607:f8b0:4864:20::112f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 54202a5c-591d-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 09:55:00 +0200 (CEST)
Received: by mail-yw1-x112f.google.com with SMTP id
 00721157ae682-59be6605e1dso22165827b3.3
 for <xen-devel@lists.xenproject.org>; Fri, 22 Sep 2023 00:55:00 -0700 (PDT)
Received: from [157.82.207.177] ([157.82.207.177])
 by smtp.gmail.com with ESMTPSA id
 z27-20020a637e1b000000b00563e1ef0491sm2552667pgc.8.2023.09.22.00.54.53
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 22 Sep 2023 00:54:58 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 54202a5c-591d-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695369299; x=1695974099; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=C8RXYYOqkolR4tgfj+/pR4qTvePP5DdDSeLK49U0/dw=;
        b=LjIJbFXfs/l0qCAAJ0GTXroaUoH/2kLkfy8SlcJmLsp/0pZlli1U9/EuKpUilUAvs7
         l3w0RRqVLn3uKRZVcHf5IeWyq2erh1Qu7wSOTY7qY2B3M5C/bV82tu467oo+ncYZuegh
         W0ilpkvB3XcX0zAuO+LDy9iOYAv/j1vJEkjIOZwZ4EyAr5SIkA57sxMMmsA345h/dTDX
         pi+Q9QIRgqbiSBaOndRbwSYo5kacIAJEyIH2Mm8iT8QZz3nZJGSdHJ9Txa7MC23deudy
         cj7iuBZsxLb0qLaYJL7CmNGHzNs3xlugLNBfBtZKIfOyBZEGouh9Pmh2H7E2uImVGwHg
         OjDA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695369299; x=1695974099;
        h=content-transfer-encoding:in-reply-to:from:content-language
         :references:cc:to:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=C8RXYYOqkolR4tgfj+/pR4qTvePP5DdDSeLK49U0/dw=;
        b=cXy4n3gecyB+3J0sIABZ1Ug5NKveroQmzxFMD3Cb4QHoQuSLlcIFG8TG9/PDsWnpM0
         sZfrhOmMqjReKnxacWMoKDDGjzlUZDKtcvMayp4PA7S/UjHClnHxV1IMyafy/ky8kY4U
         uKgF4BDnNspv8FZdh1WoBLdtqzRlk9f4Pfhf7+XUxLcKhCWk+7kiWTRlXSSAzuiNkh/A
         wKuLM5Xt3FQjmbnWS2Mp8Kit9BAg/ZOy683Jtx0XZJvfhz9xuqE9jT7uUE7UDp9IBHr/
         fxlZSt2cmLP+vyaVuIbaCmIryRYnfi4RqwilLgd+BPWGzR6WyruQbcrRTZ6/M6zzn5bc
         jGmw==
X-Gm-Message-State: AOJu0Ywx0IJSeJWEnIZw0o9UiSfmC5gZkV7x74wbIpbFHQoUHGOpuj37
	HV7vQBYlQxV16Pc1jqPPjAc=
X-Google-Smtp-Source: AGHT+IGkCXCqQW0xPMFjAF/2h7RN/DE7xkOIqvXLg6jkoeiOLg1gR9PUTF7YkZ1rX0jQd/k4EF+5qg==
X-Received: by 2002:a0d:c341:0:b0:583:307d:41bc with SMTP id f62-20020a0dc341000000b00583307d41bcmr7342128ywd.27.1695369298892;
        Fri, 22 Sep 2023 00:54:58 -0700 (PDT)
Message-ID: <faae6c7b-2b2b-44e5-99b8-261f17f28645@gmail.com>
Date: Fri, 22 Sep 2023 16:54:51 +0900
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v13 6/9] gfxstream + rutabaga: add initial support for
 gfxstream
To: Alyssa Ross <hi@alyssa.is>, Gurchetan Singh
 <gurchetansingh@chromium.org>,
 Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Cc: qemu-devel@nongnu.org, Xenia Ragiadakou <xenia.ragiadakou@amd.com>,
 marcandre.lureau@redhat.com, ray.huang@amd.com, alex.bennee@linaro.org,
 shentey@gmail.com, ernunes@redhat.com, manos.pitsidianakis@linaro.org,
 philmd@linaro.org, Gerd Hoffmann <kraxel@redhat.com>,
 "Michael S . Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Anthony PERARD <anthony.perard@citrix.com>,
 Antonio Caggiano <quic_acaggian@quicinc.com>,
 "Dr . David Alan Gilbert" <dgilbert@redhat.com>,
 Robert Beckett <bob.beckett@collabora.com>,
 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
 xen-devel@lists.xenproject.org, Albert Esteve <aesteve@redhat.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Alex Deucher <alexander.deucher@amd.com>,
 =?UTF-8?Q?Christian_K=C3=B6nig?= <christian.koenig@amd.com>,
 Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>,
 Honglei Huang <honglei1.huang@amd.com>, Julia Zhang <julia.zhang@amd.com>,
 Chen Jiqian <Jiqian.Chen@amd.com>
References: <20230829003629.410-1-gurchetansingh@chromium.org>
 <20230829003629.410-7-gurchetansingh@chromium.org>
 <2620fca0-a5b4-49d0-bf91-fd359ee4999b@gmail.com>
 <3830bf8d-8c25-950c-f901-8d70dbfc06a6@ilande.co.uk>
 <CAAfnVBknhG=QYn=OFjNW9h=KbDtQ=xq3AEs5Pg=AG3LTO=LZ6w@mail.gmail.com>
 <6256f069-ee39-495e-a8c3-ea2328f085a2@gmail.com> <87lecyejry.fsf@alyssa.is>
Content-Language: en-US
From: Akihiko Odaki <akihiko.odaki@gmail.com>
In-Reply-To: <87lecyejry.fsf@alyssa.is>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2023/09/22 16:42, Alyssa Ross wrote:
> Akihiko Odaki <akihiko.odaki@gmail.com> writes:
> 
>> Practically there is very low chance to hit the bug. I think only
>> fuzzers and malicious actors will trigger it, and probably no one will
>> dare using virtio-gpu-rutabaga or virtio-gpu-gl in a security-sensitive
>> context.
> 
> Well, this is exactly what Chrome OS does, albiet with crosvm rather
> than QEMU, right?

I think so, but QEMU's virtio-gpu-rutabaga and virtio-gpu-gl should be 
very different from crosvm in terms that it does not isolate the 
graphics stack into a separate process while I believe crosvm does so. 
Having the entire graphics stack in a VMM is a security nightmare; it 
means giving a complex shader compiler the highest privilege. We need to 
use vhost-user-gpu instead for process isolation.

Since we already have such a serious security hazard, I don't think we 
have to care much about security. But security approximately equals to 
reliability, which matters for virtio-gpu-rutabaga and virtio-gpu-gl 
too, so it's still nice to get the bug fixed.


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 08:05:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 08:05:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606749.944762 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjb9q-0001TC-N9; Fri, 22 Sep 2023 08:05:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606749.944762; Fri, 22 Sep 2023 08:05:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjb9q-0001T5-KX; Fri, 22 Sep 2023 08:05:02 +0000
Received: by outflank-mailman (input) for mailman id 606749;
 Fri, 22 Sep 2023 08:05:01 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qjb9p-0001Sz-GT
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 08:05:01 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qjb9n-0002Od-88; Fri, 22 Sep 2023 08:04:59 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qjb9n-0004AI-3N; Fri, 22 Sep 2023 08:04:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=zLuQZvBCceaDQGq+PCwg7/GgVwpTwHgAXBHZTSeZsyk=; b=Cx8X2BJQj6rEZ5ZnQ8PZs/iP0g
	ZHx3mD7QbnSG6YlhDvKwgwaEjljbw6+Pzmeqltp+6+Rqe2wvZK6p+YiOeS9+3LF2gU/Flpa52Qf06
	6iuuWU0MgOA+QGjX0wfEsmYUZMt3eM+EqW+YEZeUqDGqFjUNZz448646tqUkQZarvqSE=;
Message-ID: <b44e2c2b-d4e3-4c04-90f6-b32a0d96920e@xen.org>
Date: Fri, 22 Sep 2023 09:04:57 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v3] console/serial: bump buffer from 16K to 128K
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230919125118.12657-1-roger.pau@citrix.com>
 <46b0b9e0-29b2-d526-d32f-d03415e621fb@suse.com>
 <ZQms01Wq62yMzGDg@MacBookPdeRoger>
 <3d5d4e74-5e3e-bdd5-a37f-c4dc9f418ab3@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <3d5d4e74-5e3e-bdd5-a37f-c4dc9f418ab3@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Jan,

On 19/09/2023 15:26, Jan Beulich wrote:
> On 19.09.2023 16:14, Roger Pau Monné wrote:
>> On Tue, Sep 19, 2023 at 03:06:45PM +0200, Jan Beulich wrote:
>>> On 19.09.2023 14:51, Roger Pau Monne wrote:
>>>> Testing on a Kaby Lake box with 8 CPUs leads to the serial buffer
>>>> being filled halfway during dom0 boot, and thus a non-trivial chunk of
>>>> Linux boot messages are dropped.
>>>>
>>>> Increasing the buffer to 128K does fix the issue and Linux boot
>>>> messages are no longer dropped.  There's no justification either on
>>>> why 16K was chosen, and hence bumping to 128K in order to cope with
>>>> current systems generating output faster does seem appropriate to have
>>>> a better user experience with the provided defaults.
>>>>
>>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>>> --
>>>> Changes since v2:
>>>>   - Bump to 128K.
>>>
>>> Wow, I was hesitant about 32k, and now we're going all the way up to 128?
>>> Even the recent report indicated 24k would be fine there ...
>>
>> 24k would be rounded to 32k anyway.
>>
>> I don't think 32k vs 128k makes that much difference, it's still an
>> infinitesimal part of the memory on any modern computer.  Simply the
>> risk of loosing output is IMO not worth us being conservative with
>> the amount here, specially if we are speaking about KiB, not even MiB.
> 
> Well, I've voiced my view on the underlying principle of this before. I
> don't mean to block the increase, but I wanted to express that when I
> was halfway okay with 32k, I find 128k excessive.

As discussed in [1], I have changed back the size fo 32K and committed 
patch.

Cheers,

[1] 
https://lore.kernel.org/xen-devel/55d92655-6fd8-430a-8b16-3f56693def9c@xen.org/ 


> 
> Jan

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 08:17:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 08:17:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606757.944772 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbLQ-0004DC-O8; Fri, 22 Sep 2023 08:17:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606757.944772; Fri, 22 Sep 2023 08:17:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbLQ-0004D5-LV; Fri, 22 Sep 2023 08:17:00 +0000
Received: by outflank-mailman (input) for mailman id 606757;
 Fri, 22 Sep 2023 08:16:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=d7D0=FG=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjbLP-0004Cz-0V
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 08:16:59 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 63fbc894-5920-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 10:16:56 +0200 (CEST)
Received: from orsmga001.jf.intel.com ([10.7.209.18])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 22 Sep 2023 01:16:37 -0700
Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82])
 by orsmga001.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 22 Sep 2023 01:16:37 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by
 fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Fri, 22 Sep 2023 01:16:36 -0700
Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by
 fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Fri, 22 Sep 2023 01:16:36 -0700
Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.177)
 by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Fri, 22 Sep 2023 01:16:36 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by CY8PR11MB7289.namprd11.prod.outlook.com (2603:10b6:930:99::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.21; Fri, 22 Sep
 2023 08:16:34 +0000
Received: from SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61]) by SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61%6]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 08:16:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 63fbc894-5920-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695370616; x=1726906616;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=EQvJLeXzZr7g3gTBMq6MexQopd1VQr21aioxU5Il9bw=;
  b=SfL/MU20OjX21RUnEYVIIXLm2wPTGF8T+cQVQvwe6bvM/KwcGDsotp39
   Ftz2PooQFCyF7a7WKFhqIpPI0Dt7IimWgXs7NG6tZmvDuYrqdsKqQDd+9
   +/8cFuOkXQTHJUoPF73Zk9AtgMW9x2xSdlhRh5YlIQNmNJOqE92BNVX8B
   AAXlXWL6TA2fvIspZOVNovdcZp6SaP0W0IGpBso/QrUjGB4G7aLRM+qxl
   T+JolraLbCVRJp1kt7k2ypYWKyRRqHd8WE5UEw1xyneDwukICeCQh2lA3
   daG/Up5IcOFkxuh9fAwZnrCS3vMEox3CryxE4wdT1JpxqD3KdZdYPjUoZ
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10840"; a="447253095"
X-IronPort-AV: E=Sophos;i="6.03,167,1694761200"; 
   d="scan'208";a="447253095"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10840"; a="782555259"
X-IronPort-AV: E=Sophos;i="6.03,167,1694761200"; 
   d="scan'208";a="782555259"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CEXu+PWgHbkIxu1yI9iKS3QnpuVMRZTczQaOPLRZXjrNYUh+vzUGQNuNC7miXGBUXv2W5h9PpZC3dG28TL+JbDlJ5h0DMNAgE8D6ulf008b8omZCOWDsdejCdbWOTWa+uaNcj3cA0yWAi5FDFnQgC2uMDivzQG0Ov7PvFBoyi2H2FhDBaJq4GblcnycbblWRAyRvVLepKcmowg521z7ibmERdwruVN7pGZ36tTv7OW408vdRdC+pSnomlef/B0fPwIhVxPi8zQL7GMxjZW28ZBKS2ymG3perayuKCl8rjQoEAfC8aylFOtR7ltsY4soFfcPFpgkSjFoV9cYasFei2A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=EQvJLeXzZr7g3gTBMq6MexQopd1VQr21aioxU5Il9bw=;
 b=RYBHEdROst8Adp2LMw3YrvkQyqIpsHul5Ws2AGCA52ndeofNQIuleYktVm8oBgme2IkGFHLnmTqpOBt+qLVoImgd++wwxHanKYEcYuskPZcnFbq2lJzJWZ2Mp7CK+8B1LfsTyplcRR9EOdNqHMdy1QndZjtLpljB385lwSS/UVH9B50ARTliHZM7g71TVvrqtlkjgM0mEm5Qs1z5sgEdIR/rR5aL8jWcmPOy2wTRnvi11SU3Zi/Y1TjgJHhQuOCQrnhyGg+7msRmpWCe6iJe1YqoE7usyL+wptztJ7SqEL8lvYd8Pp1MLRh+JKLfDSpR4HOHxjxjzXbccLOco1OjkA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Li, Xin3" <xin3.li@intel.com>
To: "Li, Xin3" <xin3.li@intel.com>, Nikolay Borisov <nik.borisov@suse.com>,
	"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-edac@vger.kernel.org" <linux-edac@vger.kernel.org>,
	"linux-hyperv@vger.kernel.org" <linux-hyperv@vger.kernel.org>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: "tglx@linutronix.de" <tglx@linutronix.de>, "mingo@redhat.com"
	<mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>, "x86@kernel.org"
	<x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>, "Lutomirski, Andy"
	<luto@kernel.org>, "pbonzini@redhat.com" <pbonzini@redhat.com>,
	"Christopherson,, Sean" <seanjc@google.com>, "peterz@infradead.org"
	<peterz@infradead.org>, "Gross, Jurgen" <jgross@suse.com>, "Shankar, Ravi V"
	<ravi.v.shankar@intel.com>, "mhiramat@kernel.org" <mhiramat@kernel.org>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"jiangshanlai@gmail.com" <jiangshanlai@gmail.com>
Subject: RE: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Thread-Topic: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Thread-Index: AQHZ5ssSXb894LHEBkqZUWtDh9samLAjYtKAgAADDuCAAyUhEA==
Date: Fri, 22 Sep 2023 08:16:33 +0000
Message-ID: <SA1PR11MB6734445986E951E686172419A8FFA@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <dda01248-f456-d8d7-5021-ef6b2e7ade2c@suse.com>
 <SA1PR11MB6734F205C2171425415E4F00A8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
In-Reply-To: <SA1PR11MB6734F205C2171425415E4F00A8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SA1PR11MB6734:EE_|CY8PR11MB7289:EE_
x-ms-office365-filtering-correlation-id: 01d258a4-f9d0-4f4f-e6c9-08dbbb443bd7
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: sVsAIWzSOIGRKL42t9nQfGYanbD7ys5YrvTcg52dRxB5cJFOhDMrFMM5ixf7JVbnhbhojAsAu7xnb4hCJhRhQPmFOwpGksOANfOmPPT2V08CtqDRPttFH6HYXXnSnHJ2r+yI0YCslzALYnkmCdkc39f49C+L0vpNcIPOOz02t3M7mJalvg8Tz709DPGIeU+hJGY8j2/v0dspN95OCIxf0JgItQi0kV+nBaNBM07vttpNdkzrdklAaGVWUzu7mSBUUzyeTpXSm+6knLSLAY9POOMaPsFqE46kH26l+UOfUosYsGFoXpB+P762JNnSHWYzhBAupATDCX30LedR/dBdYW90LtGWCnThm1BPk9wQnMN2TsltgLM7vhfcWnVJ9jZbMJQ+M2qAiTESW/U3C2GAd3lTW/asNgsRurtVl4uuXt4Il9h+TKrdNAk2w7oI+6BNW8qsNZ2FgP0ZCHSI66TWhmYFGyhq5iOrtj3CoGYvV3dE6TbI1k3U7jv5yZEMqLhfFht9WBHykjtC60T3BCXkDtNSoXM1EVXTKSspCNGqn/awwMKPMTu3RBSKeZSAYXK0ee/VitksaKphuFlhZahTjqNWDPIZt/6MKWURgT8Q+RAo+j2idGgFhLoxyTNSDIcFEzVLY01j5TAjoui7WMGHYw==
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6734.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(396003)(376002)(366004)(346002)(186009)(1800799009)(451199024)(83380400001)(5660300002)(71200400001)(7696005)(478600001)(6506007)(82960400001)(55016003)(33656002)(38100700002)(8676002)(122000001)(86362001)(38070700005)(26005)(110136005)(2906002)(66556008)(9686003)(4744005)(52536014)(7416002)(8936002)(64756008)(4326008)(66476007)(66946007)(76116006)(41300700001)(316002)(66446008)(54906003)(133343001);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dGt5TmRlRTZzaTgwOUhTVVZacDZqQms3UjF5NHV3R3J3TXpQTmlWMTU3MzA0?=
 =?utf-8?B?U1ZGdEczQlBua0xZdTV1c3dmOVlQWGE3dWI1T0pIdXVJR3p3cmROMUU4RUVG?=
 =?utf-8?B?NW9STXM2STdMVnZYcnNFUlpJV2JnUFQwN1JjQmxKVDA0ODRlT3d5UURObXFP?=
 =?utf-8?B?d25JRHNoN0RPQS9xYXhZczk1cTU3VlN1eXVuTDYwbXhjZ2ZIUjdkUkJ1ZEJo?=
 =?utf-8?B?azlKUzc5azVDb25UMVFoVjFJSW9FN1lmV01JWi9tU2czaGhmRHcyTTBMWVdu?=
 =?utf-8?B?QnA1NDFXcDhUZVhrWXdPRklDcXRvQlBwNmZ1OVFkSjh0eXFDM211YUkzUldT?=
 =?utf-8?B?bkdQTFB0QWV2ZHFTQTg3Y2VPNkgxZ0szZ2VvbWtLRDhQM1dOd3NPeTRQeStt?=
 =?utf-8?B?K3ppa0U2WTdJSXFBaUZ0cU1FeCtRcUQzb3NGcGxiaXU2T0FseUdFNktXNVpS?=
 =?utf-8?B?S05LQzdxczdIQ25pZlRYMVVEY0V6bjd4bnVHMFY4c2dyRE5JdE9Ha3FIeStY?=
 =?utf-8?B?UE5XUllFeWI3WXBrVFFmOHZIN2NHYnFsY2NHRkluRSs3RVlPa1BwMFUzakp5?=
 =?utf-8?B?TGZ2YVU0SXlYaFpaNVdaVmF2STlwSEUwZWdhaFZlRWZoNEVJMkM3QkREYUZV?=
 =?utf-8?B?ZDB3dVRrWUU2L2pmYlQxNE55NlNFK2JSc1NEaUNnUUtjMHZNT3p4aVlDOUJz?=
 =?utf-8?B?ZXEyMFpjbzk2VGJjdjUyUjg3cTRyRmdDd0J0VC9hdjFqVDdPWFpHN0d4bUJu?=
 =?utf-8?B?S3k0MFRhUEJnU0J2WWtvekVjZnV2RzBIaXdZRXI5Qkhpdi8xaGNCUW1rZjhl?=
 =?utf-8?B?UjRoNTJNamJwZm9aakF2UUFHd2dGN0VnRHlJOEdKeGQ3V3hxVHU0ci9ibThR?=
 =?utf-8?B?dENsQVJXY0ZYTVBhYWpISE5yeHpHcFE3NXVHb3RFNlVPSVZveDdWNk9nc1lT?=
 =?utf-8?B?RWRIRWJhQkM1d1oySXUwUDVkMjRYV2M4a1NrNDFpOHJsQ0p3RkpwWmZyOTlT?=
 =?utf-8?B?RFNlUVM1SWNFZ0l6SjBNcDh3eVYyZXU2dFFLZ05kaGxTN3IyVExEUS9XZTFa?=
 =?utf-8?B?RGUrVGswTDVHNkRxTm1GK2NmRCt1TXZrVVNrNVZaeDNxa0xSR1IyQ1liNVQ2?=
 =?utf-8?B?MEVzUGN2MGVCUTA1M1VOTUZoMWIwRGMvOVl6eTY3cTM3VlJKaVZyNmdvYmE0?=
 =?utf-8?B?RTc0NkpUSVVRd2duUnB0d25xcS9md0NrTXlYNThFWFgxMk53MmJGLzNWZVRw?=
 =?utf-8?B?a05WeHZoVGNFUTFrQmxZeTFHczVubXhocStNUlBEbmlNRXNRTDE0eUJDU3Ez?=
 =?utf-8?B?RWx3UlM5T2YrUndYb0JaUWsxUFRUbld5ZkZQZE41NmxSMWdhamtibUlVU1g5?=
 =?utf-8?B?SW9PSkhZdmxVeTUxNkpZVkZ0UzZYRTMzMVNVRHdhdTcwTnhxblF1NElMWmJH?=
 =?utf-8?B?VDkxZGNpL0IyQ25IOXFnaG14cmhxZEE4V1ZBUktBaTNQSzJsNW5ld0h5b0tD?=
 =?utf-8?B?ZWE1cmJ0R1hBSmdOWVJVc2dNUVBLc1Avbms1U1ZCdEZzSDR3a0RtTEI4ZlpL?=
 =?utf-8?B?UTVFTXJ5U2hJSm5tY01WcktuMEhpU3R0Q0Fwc1NRdEFHRjFrVVJpWUVlV0JM?=
 =?utf-8?B?dWxoNGpsZ1QxR2ROekRPN0w3UXlIc2Z6V2tRT2E3c0xjaDhBQU9Ldm5Qd09z?=
 =?utf-8?B?aHpYdjdLREhnb1RsYVd4UTRXeUcxSlo3TmdDVWZpd0dyRWhDODFlWGhuQUpX?=
 =?utf-8?B?VkUzZVI2UWRQV1hxWGJaUFVPVjk5bHVGRlFWYkxibE9POWJSZnMrU0JQUFpr?=
 =?utf-8?B?ZW5XUVFUajgvL0NoWTZ4Z052T1JkblVuN2U4U05YL05HdW1zeEVPSFlkQ1RK?=
 =?utf-8?B?S2xqV2ZJdjUrNCtaZjNUNXJwZ1NjZWQ0YnRzbGZJUmxMZ2V1M0lRZ2NRS1V1?=
 =?utf-8?B?d3RZNnFvcTBqUUFYYitrOGl0Qk5kaTVhV01RV3hxd05zM2hWbjNrYUJEUlZh?=
 =?utf-8?B?REhLRy9UMjhXV3gzZ3BXc295amU2d2FlcWFBZFBGNkJvdWpMMDUwV1c2cFA0?=
 =?utf-8?B?T1N2ZjRtRnBTS0RXUkNWWk1EakE2SGQ3dXZNc0xPcEFlbFViN0RyN21CcXd4?=
 =?utf-8?Q?Yn0k=3D?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6734.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 01d258a4-f9d0-4f4f-e6c9-08dbbb443bd7
X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Sep 2023 08:16:33.9069
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: DBejkWqeoxtJew6Y/pQWKRqTA/q/KF220mlU6GJdn5DpgR3sjTSx5+nsXtNty24vF5haxAEoz7QafA0XiTufkg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR11MB7289
X-OriginatorOrg: intel.com

PiA+ID4gK3N0YXRpYyBfX2Fsd2F5c19pbmxpbmUgdm9pZCBfX3dybXNybnModTMyIG1zciwgdTMy
IGxvdywgdTMyIGhpZ2gpDQo+ID4NCj4gPiBTaG91bGRuJ3QgdGhpcyBiZSBuYW1lZCB3cm1zcm5z
X3NhZmUgc2luY2UgaXQgaGFzIGV4Y2VwdGlvbiBoYW5kbGluZywgc2ltaWxhcg0KPiB0bw0KPiA+
IHRoZSBjdXJyZW50IHdybXNybF9zYWZlLg0KPiA+DQo+IA0KPiBCb3RoIHNhZmUgYW5kIHVuc2Fm
ZSB2ZXJzaW9ucyBoYXZlIGV4Y2VwdGlvbiBoYW5kbGluZywgd2hpbGUgdGhlIHNhZmUNCj4gdmVy
c2lvbiByZXR1cm5zIGFuIGludGVnZXIgdG8gaXRzIGNhbGxlciB0byBpbmRpY2F0ZSBhbiBleGNl
cHRpb24gZGlkDQo+IGhhcHBlbiBvciBub3QuDQoNCkkgbm90aWNlIHRoZXJlIGFyZSBzZXZlcmFs
IGNhbGwgc2l0ZXMgdXNpbmcgdGhlIHNhZmUgdmVyc2lvbiB3L28NCmNoZWNraW5nIHRoZSByZXR1
cm4gdmFsdWUsIHNob3VsZCB0aGUgdW5zYWZlIHZlcnNpb24gYmUgYSBiZXR0ZXINCmNob2ljZSBp
biBzdWNoIGNhc2VzPw0K


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 08:21:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 08:21:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606762.944782 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbPm-0005d0-8V; Fri, 22 Sep 2023 08:21:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606762.944782; Fri, 22 Sep 2023 08:21:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbPm-0005ct-5x; Fri, 22 Sep 2023 08:21:30 +0000
Received: by outflank-mailman (input) for mailman id 606762;
 Fri, 22 Sep 2023 08:21:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=UQyH=FG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qjbPk-0005cn-Up
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 08:21:29 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0607.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::607])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0606c2fc-5921-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 10:21:26 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8303.eurprd04.prod.outlook.com (2603:10a6:102:1c3::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.21; Fri, 22 Sep
 2023 08:21:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 08:21:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0606c2fc-5921-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Qz5yZ8FFipO6lSdf6I049m9CHSPVfWNxADtmByNZ2bF/OjMzpi5tLo0qZY5Lj3VXI2kqyTK36pPsRHS9I7lPoiI1ISlISmfEXsh7p4GTkqK8dNmK14tn9v+v6AZO8276ffucZ7JBN3D8ITRJ9YJyzqIa8amyOJgdr/ccn8OMyH9ZcK700JXAoHTgHUOPbkuYxkUWVAOncQXpkg98Zp1Ox6y1w0xadYheKHu0A83Yl+KqFyVc+qbxW+vfzBQgFR8Cn3V2GYA+QWbF1uqtEdj3ekNlgXL20bN6rwK1AEJbXP2a46Nqcm4NG3y3HtdYbZha10qwx4QL7XZqPL8C6tYMxw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CWzQq/RI8wvE4W/alxKNwSUNeyKvgLc0okvD0uB2HY4=;
 b=GVchXJJSlf6rnCLdzydtC57G9HWH8UYeGtoW64E53xcqtRxRm99iZbLC2LBbQt0javNP5W2pZWlMsV5hLVWNIltHGlqaHdk8yBnZlp3ANXYRE7bRoDmCnC+vBvMQ90ZRocmAoVQdqeo87EYWwjF1oC69tV9u0GKw0Ps2geCrdEJmElrdYv3q6uz5+o2rQwoo3RLyg2UMyOV8/0ahCUQTgrZCKP8WJN8o8GmUDoU+1g2V7v4wP2YJbjALrSNinINnxV7WAO6IQNbqWd59/FkWIxK/c35+W3m59kSaLTfWxTaXktdpX2CYm4TsDCL6+rAgMbetAUM6QvdW/uMCQ76UeQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CWzQq/RI8wvE4W/alxKNwSUNeyKvgLc0okvD0uB2HY4=;
 b=1enDaDr52/8tqQT67/6xIEvkZlVCyQeeI7NJLOZBoqi/Hgt18Eke7GIosouYpSG9kt+8BewyMwdz1M7HI4jbdDSs71WplknCNm4ZKo3FzE/U+Q3NvT3MUwQ5SOkWTGNUWkl0AJ2kevgWQvgqo7czK8OZTbk58I9/D1gQq/C/RQCixpC3X4QJnQV82+7h2FehHvx4LLZTMB4wosNRU9wczDqM0Ap+ntDesw8QSXfVOaDKGrB3W0PovY7dt4Ud0grQMhcmfzQE/ueAp9y8EYHeZ9jhLRRGHQoDLrhtJw17H/UBR6/fQJbw5WUZUDpdHgEVAELG3l7m7tt76bVsKFji5A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7aaf91c7-6330-fffc-8df6-4be4b531f456@suse.com>
Date: Fri, 22 Sep 2023 10:21:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH WIP] xen/public: move incomplete type definitions to xen.h
Content-Language: en-US
To: Elliott Mitchell <ehem+xen@m5p.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
References: <7a880e33ff91d0c76986159e3559c56ee6894d21.1695324653.git.ehem+xen@m5p.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <7a880e33ff91d0c76986159e3559c56ee6894d21.1695324653.git.ehem+xen@m5p.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0086.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8303:EE_
X-MS-Office365-Filtering-Correlation-Id: e74e1cd2-a831-44f5-1a13-08dbbb44e8f8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qwbKW0if9FlnVXS90i8y4bbQKDSHqHG8FE1qooXyvW4Mi4MPrqPCVnccv3OpsO2mFbcos+zDlce3Jo7ofYGaSgwRntXrodOkZqwJ63ANUis435bczqSnXIhGX9v8qKYCylkwolJIEZWm0C0EYsV9zwHiLUhrxaxNeow+Xt6+aqoo8XBFqfdP2BaHTLaexBEwCnqwDhKQSuRbEBtgMlEpABkNY1PxIgAYvkI9I0f7RejeGKX5YHaqp1KiBUjuDRG/GGwxPpYt606+ikgGH6345cmxvDTgMhNC7i6Uwdw7bUX278FztagKk3VUR0a7delBhOl+vxJYZQ/7sYSB4s4HHc3E7DInyWm6yKNrzHIPnGs3za9T+SAfJRsokq24zSNEqJcfnCcm7CS5kY4cCsxvddEU2WzbSsWcvr/SqGCbuaOgtTsW8PsjCMykLl5IGl823wgtpwPZaEzpuhK+rm9R2PxnI9tplRwm0MDfL8j1W0feyuaqHNyEEVWe8vM9Q3+eLxNhUHMWiLnO1QccwR/9EUZFgONku2ij8Hplzk9uQCLKagEACgEVbqnfH5uMdQ5EKKOeQXXUY24JtoUeqQm6juooScnT5h4sLZFI2oWrFDQNnefp72vUTQWmlzHRaDe7rvdWBalo6Yr0xnN/BHnIZg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(396003)(346002)(39860400002)(136003)(186009)(1800799009)(451199024)(26005)(4326008)(8676002)(8936002)(2616005)(83380400001)(2906002)(5660300002)(36756003)(38100700002)(6506007)(6666004)(53546011)(86362001)(31696002)(6486002)(478600001)(31686004)(6512007)(66556008)(316002)(54906003)(66476007)(41300700001)(66946007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TGpRL29HbFpkM240dnZKZ0VPMU9ML3BYS0RDM3J2empKT0lZRnVxRnYyT2RI?=
 =?utf-8?B?dmtaTDFRSFJ2dXpsckZ1Rm5aOGpvOHZHVjZDWWdmdy8zeFkwZTMrYlJsU0tJ?=
 =?utf-8?B?SXdSZE5FMnBLT0RHSngrcE01eEJjb1NUZFlabDdTWGI2QmIrZUR4SlRIdjFh?=
 =?utf-8?B?cFYwaG9mQW5FU2gxYy9sYUM3QTkwbkgwVXRob1grbGpqNnJDU2JVV2pvNWc5?=
 =?utf-8?B?TnU1c2FORVJJKy9oNVdQanlVcGtXYVM4bHZwMHg2L2lIT09KcHYzK1lBNXZo?=
 =?utf-8?B?Rjd5cGJ0MHMzaGJ4NGFHOXhRTDYxNC9aSTA5cFFIc1hEK1lvSW1mOHdwSlNI?=
 =?utf-8?B?YnVBcTB2bkR3anhEV2w5b3FXazQ0dWtDMmptVkNsQmZlTWlOYWdmYkdpblNO?=
 =?utf-8?B?NitYcytLVUNKWjFZdWFBMGpWdHBTWTh3bTNMTzhBa3QrTmxwSXBkZEpsY3RG?=
 =?utf-8?B?L3ZIZVZoM0VBK1VxS3JyK1hiOWxaeVQvdFNDRzc3TjJ5aVNsSGtrN04vU2V6?=
 =?utf-8?B?UnJKZFdXUmVqK0l0N1V1ZUdGaFczTkM4ZTJQbTJaWXdrSU5maWRZQWtwVHlQ?=
 =?utf-8?B?NHVwZExXd0pLd1F5MXhUS25TVDZBa0ptc2FJMGRIY1MyZkZsMjdVSzJpVERU?=
 =?utf-8?B?MmpvY0RkcjExaExwS3F5T2Y5K2RlZ2N3dXMrV29uMWFJd09Lb1hkRTVUSGlD?=
 =?utf-8?B?Kzh0UkRpSkpxOSt5Y2JoYjZoK1ZjQzJLZVcxKzBsWkQ0KzUzVTN1dVF2Vkgz?=
 =?utf-8?B?c1hnUHhHQjV5MnYyUi95NGtZZnRkdVE1SVdHb0pad1hEMHpSOU95TUZhZGJP?=
 =?utf-8?B?VE9QdnpmcTNJZGNYaDJsQnhId1Q5ZW1uRk83L2Qxc2tJQmt1TGpaeGoxTWwr?=
 =?utf-8?B?RWxvb003OHR0a0NmRkptejZTaldSL2E5SmxROGFyb05wY0p6RlBic1pkN1Ax?=
 =?utf-8?B?QXlaUWpUeElhY003NkJnVzZHVXR0cVJINDJ1NDRZN1lEcmJ1VGpIUU96Q1VX?=
 =?utf-8?B?c09XRTE3ZTlPR1Jndlg3R0JMS0lNRzljVXBVWWNpQWJlZ2MwV1ZDaDlVZXN5?=
 =?utf-8?B?QkRCZ0RDOEhxK0MwZWUxOXpLcFlpQkxKS3o0bmdUdDlDUGFqY01LQWRyb3d1?=
 =?utf-8?B?YnZMRTAxYjFVWit3SkFUa2FQc2ZJbFdBbWdNWUI0Y29xcVBKbHloZ1NJQllI?=
 =?utf-8?B?SVU1Zm02TWpCMUFxQmFvRWU0V2hHUldSM1NiNUFtbWhWSGR5VGRSaTFIUnR2?=
 =?utf-8?B?aGxNcS9XRm80Q2QvOENOaFNCR29aemtZcTlVcnp4cFNlV2R5T1lJeTdqZUpj?=
 =?utf-8?B?SDBPUUpZT1pwb2tNaXlNR3dvK0VDT2dmT1IrS2N5WTNHUEtKNnh0T2FmU1Zw?=
 =?utf-8?B?L0RXZjRTRWw0Qlp1SnBCMCszWEl4QU1LS3hqNlRDN3o2enlYLytzVFpwV1Vq?=
 =?utf-8?B?NmN5eDFwdnZsaUlSbDh5WVJ3WWZ6Z3NBbFFRSjRWU2sxcmpzVzJselFZaDN4?=
 =?utf-8?B?WmY5MGFaOEpYZmZVaDNIeU9BSzZPMnRsTnJxRWcwSVpDMVA4bU1NdzNDV04x?=
 =?utf-8?B?Q3ZncjFTb28xRkJ0eTV6cGVuN1MyL3Q1UkJrK2FiMVVCZ3BQZy9MT29UR0hR?=
 =?utf-8?B?R0lkRFFNbENXcU02TnRoNmdmWklvY2F3WjlwbDlWeWlENjJVOTN2SXJsVmVj?=
 =?utf-8?B?b0FGSVJ3RlNWb2Z6MXEybUNGRzErWHhYUjFvUUNGSk9SQVVhMVBaZExFeUxG?=
 =?utf-8?B?T0pGRm5hSGtMUnFza2dGOFI2SzJ0UUd4NDVsSVJMYmVMbjA2LzZJbzZ6bUN5?=
 =?utf-8?B?NElQNmRTcGV5WkZBNzV2V2VoZE5KREVoN3BzT2hYV2YxZHhGU2x6azQxVHZm?=
 =?utf-8?B?SmcvL3VQOFQ5L2l0dUM5MEpBeWlTVHlZTkgraU15Y3dxemh1dmZ6cHhPbUNx?=
 =?utf-8?B?citqSG1lbldyOWRNdUJvSlNRaDNWVUp4SkYxSk5IMmZrR1RlSjNjYjBaYmtN?=
 =?utf-8?B?RjJJdEJTQWFYWjZJQUdKK1RHUjlvUG1kdVhBdXZlQUJzSHRxdEdGWDJydkFO?=
 =?utf-8?B?Nlk1R2ZJdVhMMnlEK2dYaWZkSm5meFlhOHRab2lUQVJuUDlob0ZldEtLVzRJ?=
 =?utf-8?Q?hpF3bDiBd0TyDukGSD6gfUdWD?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e74e1cd2-a831-44f5-1a13-08dbbb44e8f8
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2023 08:21:24.4976
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: HpeYL1GVlQQ5bOT3CIhvwsDJM1REK9dVnZAc0+i7y3G11/dRmOsa54m9IwwDC8AA/QrjCCiB3zUPF/qiGfF+9g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8303

On 21.09.2023 18:18, Elliott Mitchell wrote:
> Hypercall wrappers need the incomplete type definitions.  Only when the
> actual structure needed.

While in the first sentence "only" looks to be missing, I can't really
make sense of the second (without implying what I think you mean).

>  As such these incomplete definitions should be
> in xen.h next to their hypercalls, rather than spread all over.

Perhaps s/incomplete definitions/forward declarations/.

There's a downside to the movement, though: You now introduce items
into the namespace which may be entirely unused. The two contradicting
goals need weighing as to their usefulness.

> trap_info_t is particularly notable since even though the hypercall is
> x86-only, the wrapper is likely to be visible to generic source code.

Why would it be?

> Signed-off-by: Elliott Mitchell <ehem+xen@m5p.com>
> ---
> trap_info_t and HYPERVISOR_set_trap_table() is something I ran into.
> With the incomplete definition, the wrapper is accaptable to an ARM
> compiler.  Without the incomplete definition, it fails.
> 
> Note, this has been shown to build in my environment.  I'm unsure
> whether the incomplete structure plus type definition is acceptable to
> all supportted compilers.

It's permitted by the standard, so ought to be acceptable to all C89
compilers (which is what we use as baseline for the public headers).

> --- a/xen/include/public/xen.h
> +++ b/xen/include/public/xen.h
> @@ -75,13 +75,25 @@ DEFINE_XEN_GUEST_HANDLE(xen_ulong_t);
>   */
>  
>  #define __HYPERVISOR_set_trap_table        0
> +#ifndef __ASSEMBLY__
> +typedef struct trap_info trap_info_t;
> +DEFINE_XEN_GUEST_HANDLE(trap_info_t);
> +#endif
>  #define __HYPERVISOR_mmu_update            1
> +#ifndef __ASSEMBLY__
> +typedef struct mmu_update mmu_update_t;
> +DEFINE_XEN_GUEST_HANDLE(mmu_update_t);
> +#endif
>  #define __HYPERVISOR_set_gdt               2
>  #define __HYPERVISOR_stack_switch          3
>  #define __HYPERVISOR_set_callbacks         4
>  #define __HYPERVISOR_fpu_taskswitch        5
>  #define __HYPERVISOR_sched_op_compat       6 /* compat since 0x00030101 */
>  #define __HYPERVISOR_platform_op           7
> +#ifndef __ASSEMBLY__
> +typedef struct xen_platform_op xen_platform_op_t;
> +DEFINE_XEN_GUEST_HANDLE(xen_platform_op_t);
> +#endif
>  #define __HYPERVISOR_set_debugreg          8
>  #define __HYPERVISOR_get_debugreg          9
>  #define __HYPERVISOR_update_descriptor    10
> @@ -100,9 +112,17 @@ DEFINE_XEN_GUEST_HANDLE(xen_ulong_t);
>  #define __HYPERVISOR_vcpu_op              24
>  #define __HYPERVISOR_set_segment_base     25 /* x86/64 only */
>  #define __HYPERVISOR_mmuext_op            26
> +#ifndef __ASSEMBLY__
> +typedef struct mmuext_op mmuext_op_t;
> +DEFINE_XEN_GUEST_HANDLE(mmuext_op_t);
> +#endif
>  #define __HYPERVISOR_xsm_op               27
>  #define __HYPERVISOR_nmi_op               28
>  #define __HYPERVISOR_sched_op             29
> +#ifndef __ASSEMBLY__
> +typedef struct sched_shutdown sched_shutdown_t;
> +DEFINE_XEN_GUEST_HANDLE(sched_shutdown_t);
> +#endif
>  #define __HYPERVISOR_callback_op          30
>  #define __HYPERVISOR_xenoprof_op          31
>  #define __HYPERVISOR_event_channel_op     32

Interspersing the #define-s with typedef-s and
DEFINE_XEN_GUEST_HANDLE()s clutters this section imo. If movement to
a central place was wanted, then perhaps below all of the #define-s,
then allowing to get away with just a single "#ifndef __ASSEMBLY__".

> @@ -449,8 +469,6 @@ struct mmuext_op {
>          xen_pfn_t src_mfn;
>      } arg2;
>  };
> -typedef struct mmuext_op mmuext_op_t;
> -DEFINE_XEN_GUEST_HANDLE(mmuext_op_t);
>  #endif
>  
>  /*
> @@ -615,8 +633,6 @@ struct mmu_update {
>      uint64_t ptr;       /* Machine address of PTE. */
>      uint64_t val;       /* New contents of PTE.    */
>  };
> -typedef struct mmu_update mmu_update_t;
> -DEFINE_XEN_GUEST_HANDLE(mmu_update_t);

Imo a prereq to moving these up is to move the struct-s themselves into
the x86 header. From all we can tell no present or future port is going
to use these PV-only interfaces.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 08:22:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 08:22:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606768.944792 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbQo-0006FC-LJ; Fri, 22 Sep 2023 08:22:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606768.944792; Fri, 22 Sep 2023 08:22:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbQo-0006F5-Il; Fri, 22 Sep 2023 08:22:34 +0000
Received: by outflank-mailman (input) for mailman id 606768;
 Fri, 22 Sep 2023 08:22:33 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjbQn-0006Eu-Il; Fri, 22 Sep 2023 08:22:33 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjbQn-00031e-Bd; Fri, 22 Sep 2023 08:22:33 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjbQm-0002SK-UZ; Fri, 22 Sep 2023 08:22:33 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjbQm-0003Cd-U1; Fri, 22 Sep 2023 08:22:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=THSNxan4AI9wgYpZL7pjBm3d5MxhUmUd9E1yWU8mXyI=; b=BZp6IjcqNSX/iiolMwIH0LD+ba
	M4m6m0ed8EbkRSRcr3K5RZQttZ3iMlR+2KmT/Bx1d+v95ZdoO5fSrD9OjEaUbQZ+ol0tSjlRjJ+of
	dCZGbZFu+TE+jer1UX8T5e5OpRJW/WrdzCv2nRAtboqgk/kQl1sn1ibsvrcrrSrNQbUg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183111-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183111: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=f67e1934d985dcb8a465dcf44484be3688be99a5
X-Osstest-Versions-That:
    ovmf=ea628f28e59849ee7b91e6660c0ecd1a5c6e0884
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 22 Sep 2023 08:22:32 +0000

flight 183111 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183111/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 f67e1934d985dcb8a465dcf44484be3688be99a5
baseline version:
 ovmf                 ea628f28e59849ee7b91e6660c0ecd1a5c6e0884

Last test of basis   183099  2023-09-21 05:10:53 Z    1 days
Testing same since   183111  2023-09-22 04:10:47 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Nickle Wang <nicklew@nvidia.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   ea628f28e5..f67e1934d9  f67e1934d985dcb8a465dcf44484be3688be99a5 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 08:29:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 08:29:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606776.944802 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbXK-0007cx-CD; Fri, 22 Sep 2023 08:29:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606776.944802; Fri, 22 Sep 2023 08:29:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbXK-0007cq-9c; Fri, 22 Sep 2023 08:29:18 +0000
Received: by outflank-mailman (input) for mailman id 606776;
 Fri, 22 Sep 2023 08:29:16 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=UQyH=FG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qjbXI-0007ck-UD
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 08:29:16 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20630.outbound.protection.outlook.com
 [2a01:111:f400:7d00::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1d585733-5922-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 10:29:15 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB7678.eurprd04.prod.outlook.com (2603:10a6:102:ec::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Fri, 22 Sep
 2023 08:29:13 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 08:29:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1d585733-5922-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=m6/wFs7EovzFkriHC48sLYniip3PBA0w3QwA/t/Q0qyS0z1ILw23n/CmZRCXHgRIavran/kl+/De168v3ak/05uPilZ7hd8atCvlyac8Vmdp2IFgkb7k4WO2RJNVqsSd88zzwUbEQ/G11O7dUUacIBWR7OS56jUrnp+dK+/bU2YC2zFEirq+KvJgOrA2KhED5rErINPlaiRP2kDsf9EuizaO6FpmJ5yK6hjJeUT0WD0MIZcvOrb4UAW43VPgXWMSknvYHMHsFjoFSCPltq0POe7M2JN9S0+OPJmz/7+zDDVAfSSiaj9vwF424hgCcUM4l4YY5wQ4r7X4CTN38Iy+Zg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qbz9ElN/mDGzWPVcjYZpu8p/NaR/gc34RAT5U5elxLw=;
 b=aWC0+lehC1lxtyM4gbDC8la7Pqqp+RNi1QyBb8nl5YxHVq+a4s5ypAiTNkrsjcl5KbxEuDrhnyX3sKQt2bhEx/DJbYtV3q+AOW/7Amtqjy9R3lMTb5EFr9PlHUH1V0BUY+QpqgduRV94jPjHCvfWnoRkR2sZ1T4ubN4X8DxqBLfe92FlxrnxctRNVMMIOnZPMfHzUx7YVD3HXhICc12otU5xTqjiADtWqMrilsuyDb5umZrZ6T4qM59wV9LFOoWbG1mGAVe6aN+DmonlIcctkJq2gkI2tdWkvu1Waquyhr9sE3o7zxnNxf/ZcAaAKBJW9TYNkvzO7M35gy9HLLPFiA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qbz9ElN/mDGzWPVcjYZpu8p/NaR/gc34RAT5U5elxLw=;
 b=XxtvCep6Myfc/d3nq/rpc+CSAwdCBvADi5htY1xPAlt7hDRvWb3oiyvN7xW85LjWlTnzLgHDLfMImJwhrWq0tk4r3wNLRtyPil3SwGi7TAyJLjTm7l4m8WJq8xUOFjHtWDpZeen1hV2Ym3dEyubKbZgmajPbvrQFBPutc8P+SR7C2+pzbgtdlp48kvHaznAXXL7G1ENx4sZb0oWCBZmUDNlT60SuPGFHS3Ohe3TVG8sG8GeWK/lniU0Lt7bN0Dd/Vj7dXB2mzHJNWpzdJ4fN7oZNCRdJrISfAvgFhYDXZ2A9wbMg9n/X/iDKOPXosFlYeV6bWBA4te/TRD5mcHybuw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0801b6f4-85d8-d10b-1f03-18201641e8f2@suse.com>
Date: Fri, 22 Sep 2023 10:29:09 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH] xen/emul-i8254: address a violation of MISRA C:2012
 Rule 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <be245ab9b3805cdb1ba93695b95eeab24d432d6a.1695308350.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <be245ab9b3805cdb1ba93695b95eeab24d432d6a.1695308350.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0170.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:99::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB7678:EE_
X-MS-Office365-Filtering-Correlation-Id: 93d72e7b-da62-4e1f-55b4-08dbbb460044
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lBDcnqCBvRph++96NsdrYKvlpjyFOtxFiT9itGEj/tqeHdRhbWFtkzv7JAxgvNcMEEeHRRnG4SrW6p4Cv/ZIBNnu8G0tZZfz9Fyd9PQVI9/Zo0DJy5eYsFYlhXM+wg4ytJQukDX73osBs2/LH8cGZZQX4cLP5Hm55Jrln6lfGSzKFbqj3/Bxp77HfhRJFFUXuJiIoUUQbiSeJNk5jgcr7GqEThAguOS41P/0MmZCs8ltBYCpnoXMpoHxjy0zmwe20OrLOiLONJi+0YKtSJsVpksyYweLo4ax/kXlRGOI9UsZpWO6ov58vR+HWVwwsCovl6I15q8RhXdHh7wGDwNCtlobfjul1YoOn2/Gyv3fgRm/dyOzMU1X3aGHI2EdQFpEMyAoI22HTAhJFc6LL2SoBLKPkNuIq4YSh+bhi89oqvCFq85cDI1Ldjx+o2IB2fmxF43omBsvzxAWbX79jIyhgNleEU1uCI8v6/w65LiQJGzwlAxeuZr7GOzYPn0fC9BkiwJ//lsPDlDuTsvJjCo/s2qreWLpR9lAVcbWQi8fsY4YILVlYWqfc/WKy3Xhy0DRo/SQPMQFxgH29oHYXPFHEBx5BfAHbJQwyKmPIvnOoLh4vwtGy2KeB7n+3f3kOWkNd+CMAWB8fbS+ZLjEwMViRg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(136003)(366004)(396003)(346002)(451199024)(186009)(1800799009)(53546011)(31686004)(2906002)(54906003)(66946007)(316002)(6916009)(66556008)(66476007)(6506007)(478600001)(38100700002)(6666004)(6486002)(2616005)(4326008)(6512007)(8936002)(8676002)(41300700001)(26005)(5660300002)(83380400001)(36756003)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WUZReUJxOEtsZjB6NldEUEZ0SEJiKzhRMW9zSjJ5WVc5STEyZjVxUVY4SDFI?=
 =?utf-8?B?YTNvUldBdmRFdzdLNXJzNjdtakxsQ0ZDR0locEdFZ1JDR012UVFqNzgxK29o?=
 =?utf-8?B?dWE0T1QweDRMNkdOdWlkMkcvOE91d0tpblFUa3VxSy9QMzFYNG9zWW1IYktw?=
 =?utf-8?B?YTRCdUp0Ykd6b1NRR01lVEFLWUVHdjFYWHg3bzF6YjBCZFgwRVNJb1o4QjNt?=
 =?utf-8?B?eXM0Z0RDc3JjODhWWTduQU9Wek90Rlp3b2t0RjdJU3VyOU44c3M0U1c1cXBm?=
 =?utf-8?B?MDVDcFFtUUMyOTh5MDFRR0p1VVVKU0Z5d1VVN1VrMFNuU05lV3p6bnQ5ZXVx?=
 =?utf-8?B?cEo5L0J6Nm9pN1Y3VXY1VXhEaDRsRXBVQWdacno2Sk9ZUWlHRC9abGpicjBC?=
 =?utf-8?B?Sk42OWdyeWdoOWJ6Ujd0NVBKbFozQm9TTjRJVUNNck5McG54TnIydTRSOUU1?=
 =?utf-8?B?QmNxai9rRG5hSEdrNmdOTE9XN1o1NGZkaHFGWDRCcWMrN08vQzQxR1c3QWtS?=
 =?utf-8?B?bEhkZ1BIYkN6L3lEaGJwbElnRERVK2FxekJrdXVyeFptOXJocXF3czdTdXRl?=
 =?utf-8?B?UXA2WmkyQm9JK2JpRExkb2RlWGVadWJHQmgvcmk1dFNydUFqclhxM0FFcDZx?=
 =?utf-8?B?Y3YzL0hvejVFcXQyS1I1d0hXSUkzYnVSdmwxQ3Q3LzgvSjBZVmthOTdFbXZh?=
 =?utf-8?B?TG5LQXJJblpvMU5ReFlEL24wc256QnNzUGpGd1VWUGtieU5rOSswSG9ldW16?=
 =?utf-8?B?aTFqNDF1dTlQZlpzQjAyU3JWRFNlM2loWTVJYkkvNmdvYmRuQ0FQN1NCUzVJ?=
 =?utf-8?B?R2tqODF0ZE10UXphTVd3My84MlpJYURXWExhQXNBWU13cnQ4bk5jblNaNzJO?=
 =?utf-8?B?RHR6bHBkRVAwaTJWY1Vkd2t3d3VmYmJENG5WZzlNNjIzMDBhdERUSFlvUXd0?=
 =?utf-8?B?ZDFWRzJlVFRKUFIrUTRRVkgwck5iTWJxaDRva015dVpsNE9WY0RrZjMxa21z?=
 =?utf-8?B?UFRBYnUrNlpIRnJhOGh4b1hRT0YxSHpKNG9JMXpaWElrVHBkeHFoUkJHWUtt?=
 =?utf-8?B?em9tZ3g3d3JRMytNY05hMlBhUzV6M1pWa1B5OU9ydGJ0K3MvM3RnWDg1QXFu?=
 =?utf-8?B?TkhsakdtQTVCV25YaWVlRWhEVWpZUFVJTjR6QTN4VktQZUI2bkN3YWZMSSt5?=
 =?utf-8?B?Mm90bE44cVhQWUNvN1ZRcHgwNkdpbERwdk51UHFlbEFiVjJObGZxR3NINjBR?=
 =?utf-8?B?YUljNFA5ZG1NUURsNE5SaURkd2duSVdHbWxvWUFlT1pTK1JRdDJlUHNON2JO?=
 =?utf-8?B?Wlg4cHlWZUErZm9zaXI4RFB4L0d0QXNrOWxHdWVkYXlLVWJDK2cwYWRrN1Vw?=
 =?utf-8?B?QmpNQVBITk9jRzBUNkMraXlBUVFNYjNIdW4xNXUyY2FtR0MwaGdnYUgycWFr?=
 =?utf-8?B?cWkwejBvZWpVUWhDcjV1cS9wbkxrQWo2WkdGRFpHc1JCNklFM1lKOGgwaHAv?=
 =?utf-8?B?cHlBaDRUckZ0M3J4UmhmU3VMV0lDVU1IREZUQnIxS0ZPVFZwRndYWGs5NTVv?=
 =?utf-8?B?dEJ0eDJFRmNBU25ONGREL1FwUVdmZ016WW5MeGFCcHJaaWp6V25aSVlqWGgx?=
 =?utf-8?B?SUVSS1lxRE53Y3RXSWdDenV6cEoybWNTa3J3dWdtWUJSV1lreGh2V3IyTkFB?=
 =?utf-8?B?YThwQStJN3hzbEwveno1b2JYK1ZRT2d4S1ZhZjVpbkhBbHhWQ1k3OU1GWjU1?=
 =?utf-8?B?ZURJT1VUYWxNUytmWlhINzI4S0wvZ0kvRHh6UlJxSUd0T2dkV0o1RVM4MTRu?=
 =?utf-8?B?eWJhdVAvLzkydnc4NmR5WlkzS25VRjVzZlBKT0JWTWVXTy9XMXhodStPRHhX?=
 =?utf-8?B?OEZnTk9IaXpxeHk3MVFRdVFlRDE5ejZnNWtqSjRHdHdvVGdTdFhmVFI2NGhU?=
 =?utf-8?B?UDZHd0w3VjlVeGQxenNYY0puRnVZZTFEV3VpS00yaUVITUxDelpTSjNObXhy?=
 =?utf-8?B?bzArMHp1c0dIVzVUUzBRNHhzRk45U2xGRzRMY0xZdEtDQWowK1hnMUNSWmxI?=
 =?utf-8?B?N0RuUklUR3VkRGFCeURMdXM1bHJob0NlQlBQb2d4MWxwajJpbmZuL3IwUnJO?=
 =?utf-8?Q?M5aqnBjCOr3m9EVMMlZ2Q80bs?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 93d72e7b-da62-4e1f-55b4-08dbbb460044
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2023 08:29:13.0861
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: wekbg0CNkzec9Me8C/FWRgVscnpylPjka5AZJmMdXm0Vf3QuEIA13z7T90TLilsJsUGS4rzTg50rAX43tYL0fg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7678

On 21.09.2023 17:05, Federico Serafini wrote:
> Make function declaration and definition consistent.
> No fuctional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> ---
>  xen/arch/x86/emul-i8254.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/arch/x86/emul-i8254.c b/xen/arch/x86/emul-i8254.c
> index 41ec4a1ef1..c48a3606a2 100644
> --- a/xen/arch/x86/emul-i8254.c
> +++ b/xen/arch/x86/emul-i8254.c
> @@ -572,7 +572,7 @@ static uint32_t speaker_ioport_read(
>  }
>  
>  static int cf_check handle_speaker_io(
> -    int dir, unsigned int port, uint32_t bytes, uint32_t *val)
> +    int dir, unsigned int port, unsigned int bytes, uint32_t *val)
>  {
>      struct PITState *vpit = vcpu_vpit(current);
>  

While okay-ish, could I talk you into addressing the problem at its root,
by eliminating the two forward declarations? Afaict all it takes is to
move pit_init() down past the two functions it takes the address of. (Of
course at that point it may want considering whether to keep
pit_{,de}init() and pit_reset() close together.)

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 08:32:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 08:32:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606781.944812 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbaF-0000ee-Qf; Fri, 22 Sep 2023 08:32:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606781.944812; Fri, 22 Sep 2023 08:32:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbaF-0000eX-Nn; Fri, 22 Sep 2023 08:32:19 +0000
Received: by outflank-mailman (input) for mailman id 606781;
 Fri, 22 Sep 2023 08:32:18 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=CgRi=FG=citrix.com=prvs=622ae25b4=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qjbaE-0000eR-CI
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 08:32:18 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 87849efc-5922-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 10:32:14 +0200 (CEST)
Received: from mail-sn1nam02lp2047.outbound.protection.outlook.com (HELO
 NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.47])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 22 Sep 2023 04:32:11 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by MW4PR03MB6965.namprd03.prod.outlook.com (2603:10b6:303:1a4::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.31; Fri, 22 Sep
 2023 08:32:08 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::ddbc:172e:c4a3:ec6f]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::ddbc:172e:c4a3:ec6f%4]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 08:32:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 87849efc-5922-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695371534;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=s2MuC4RhzzNkgabhArhM25SNCwEIYo/l0iwhhYRCazI=;
  b=LRQAMn68f4PUDB3P4RxynCfUtn3PacNDPNkDDYFldZk3eyd8KwMe1Gn8
   BSfvpm9A+ew1He23U5+QAr4M4BlwsLH8ObSxQ11gbzsR+YXrfrjBVe+jU
   q6apLP8rA+JkmJiH92qdQFSPU6Tl9g6o/gRHtr7nf5fvPYBx86HVjesvF
   s=;
X-CSE-ConnectionGUID: rGHISn1xReWy2M95g8v6rA==
X-CSE-MsgGUID: gjN8EwZVTJqLUERfb0961Q==
X-IronPort-RemoteIP: 104.47.57.47
X-IronPort-MID: 123904253
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:a0f9HKOI+sWYFvjvrR0/lsFynXyQoLVcMsEvi/4bfWQNrUpxhWMDz
 DBOCGuPPPfZZWv9ed5xat/n9xlSvZHcnYQwHAto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42tJ5AZmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0vxYIUB18
 6UIEj0yf0qm1r+5kKzlUMA506zPLOGzVG8ekldJ6GmDSM0AGNXESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PVxvze7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqCn93rOVwHiTtIQ6G7+eptN1smOv5HU3NTAsW1Hj8KfgsxvrMz5YA
 wlOksY0loAM80isQsj4TgePineOtR4BWPJdC+Q/rgqKz8L88wufQ2QJUDNFQNgnr9MtAywn0
 EeTmNHkDiApt6eaIVqG6rqLpCmufygUKWMPbzUNSwct6tzv5oo0i3rnadJuE7W8iNHvLhj2z
 yqXtyg1h7gVjskj2r2y+BbMhDfEjoPSUgc/6wHTX2SkxgB0foioY8qv81ezxfRdKIeUSHGRs
 X5CnNKRhMgEAIuRjiWLTKMIFauw+veeGDTGhBhkGJxJyti203uqfIQV+zcnIk5sapwAYWWxP
 BCVvh5N7phOOnfsdbVwf4+6F8Uty+7nCMjhUffXKNFJZ/CdaTO6wc2nXmbIt0iFraTmufhX1
 UuzGSp0MUsnNA==
IronPort-HdrOrdr: A9a23:w+OTY6uEgl3IjyYFqwUnjm/67skDeNV00zEX/kB9WHVpm62j+/
 xG+c5x6faaslkssR0b9+xoWpPhfZqsz/9ICOAqVN/JMTUO01HYT72Kg7GSpgHIKmnT8fNcyL
 clU4UWMqyVMbGit7eZ3DWF
X-Talos-CUID: 9a23:gdVaN27ax+nbnjuIKNss7mE0O/sjK23nwUjBeWrpVGk5VuOPYArF
X-Talos-MUID: =?us-ascii?q?9a23=3AJ3cSPg9ZG8aLjKmO4yxq0OCQf8hqxfSDF3Izrbc?=
 =?us-ascii?q?fn/SpDyJ6Y2bD1Q3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,167,1694750400"; 
   d="scan'208";a="123904253"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FNI1bLmhB410bRK96psfIweCWJt5sJpDRdVI6e0M7788vHg3FDaJhDVzwl6l8wt4BVWov6jPo8sxue0NvL7lYD+N670F174uAHDiHlNI9eCE9oPWQfzEGlL9SBUgOspJ0A8CIozkNtYXiRtikfRBlGzbRHNDu8hv9pXpmyzXmboaMW1q5SsopnZlY+ckG1fAlfuwTwdlBz3BaLSftUzIwG0p84FGwucOef+/2ip8dRwLecfKLKiRStdjvn2Fx06hjThRdmCfPREpfseT2e8C5Se5XH7vFU84T0S6R1gp0Djot5qjNDoddguPUC+/825FxycRGN20tgNavaASlpW73A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9nvizTNSUCdJ8DtlHI8iR/2dZ0aIS4CCIf3a/DsWljM=;
 b=VwLf1vMPzcbWw7Y2SJXxp8yFCs2KG0A9b7Erl440FEdU5DxnXPbecC+IG5QkIoB60hHcjrj5DISYQd539kwE1EBP4Q1guU0cMCCZkKlSTMMUdEa4tKr6kBHf3E20w9yjSQEGPBpoxKTZHsbfP+Tr7dLVbU01LeaF8iifjOANJ1B1UeAnJv1lUzzsitWLHd2DO9pAlWaeQuW/hRB7c90WteWeIlD2PyyYxzZlheHSsJi9jWiw22tye91uuX50GvmrVa+dX+Rpj0YCj/BycJNwld/J8MrcCOHfKIAgXrJ8WLpeixyLyyyskpf6pZASGSl+stYVziE9RrnKQAE9TvOJlg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9nvizTNSUCdJ8DtlHI8iR/2dZ0aIS4CCIf3a/DsWljM=;
 b=EISsvuIJfXDU4sn7hoy7NBwQ0n/yVwuljs7sm4DnIM+GcmNUNFtAWjeDsjljL/AoqPLNciHefUEtvq2QhAhb7c4Zs80cCp5GdfCLarZMn/pNqRrKVCJFdkopWFUM36w6whZzS7DzVkEQk51kH3QYak1Cc0kk5yNoEovPhxF9cgY=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 22 Sep 2023 10:32:02 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>,
	Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>
Subject: Re: [PATCH v9 13/16] xen/arm: translate virtual PCI bus topology for
 guests
Message-ID: <ZQ1RApe7wrKUIrM_@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-14-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20230829231912.4091958-14-volodymyr_babchuk@epam.com>
X-ClientProxiedBy: LO4P123CA0309.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:197::8) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|MW4PR03MB6965:EE_
X-MS-Office365-Filtering-Correlation-Id: 1aa51f25-f4c5-46c2-2384-08dbbb46689c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PlrrhxhFMH1eGo711qAV6xJDEY9b4LAlAskSvWdYQDDc4mL/yG1AfGKrVBqHXfQXFbpX7tcK++BgyENwtD4E7+Gvxi/mxF3N8GaZTekefp1Ri+3yZkY+Wg4hw2Z08I74dwDddONt7B+HloynvV93hFIZubp83ZFOr0iDUAL/4dIwnflRjrqBwizwM4hOjDbpyYN2tCfwbdVfP7aon2d1OXhGYadruoup02GHKKHLY61i3Va02E2i+d8TeeYozmCeJQ0dbUuwDL7uKXo/hWGp1IVuXwokUXlsd6JkTRE+XgMc0xkqSEEdAiXqcIaOBkhyOhuwd01nPzW+EKo9yytQiXcxRHIrrv7cb3o8px5GKxkgRbAyb/VdQ5xtvlW5nVQ1Ko/eK/O0esG7tApNYGdBFuX9LT/eHKZ3FE9CkXFVcCEuZ+tpSbzahamljk86DTbaE9UYQNd6PnZTWuTB6w+xbpmskXNNKeGfautWfDY9filQzWP9lsibmE3A2PGY3/fZ0dBqk+ajWMz11+oTbrs2iHlHfqZUy39FOUYTWtpLmbq912jgdlfD7FNqIP3e5UAu
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR03MB6428.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(376002)(366004)(346002)(39860400002)(396003)(136003)(1800799009)(451199024)(186009)(33716001)(2906002)(66556008)(66476007)(5660300002)(41300700001)(316002)(86362001)(8676002)(66946007)(6916009)(8936002)(54906003)(85182001)(4326008)(83380400001)(38100700002)(26005)(478600001)(6512007)(9686003)(82960400001)(6666004)(6506007)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TDZqdkFFRGxlN2RpOEphN2FYQzRxTTk1MFpXSXBZckw2bkJiT0NUL2xGd2lt?=
 =?utf-8?B?UTZ5L2YvWWF1bUw1YmUzbEIyU0NydENJQUUxbTZmY3VqVGNRTGxyWGNJdnR6?=
 =?utf-8?B?WDZHbitJbFhMMTRhb2daYmhuNEZFZ0pzTS9mMk1ON0pwUHQxRTh1MHorMUlX?=
 =?utf-8?B?My9mcmRCazhPeEpQZjZYTXo0UFlaOC9tUzdCZzhqcUhOdWsyb2VPcUVTSnZJ?=
 =?utf-8?B?NFUxdUh4S0ZpV3d6WHQ3QWI3UmZjcThHa2h3V0xZWUdJOFZMNWJsMDVLU1hm?=
 =?utf-8?B?dThhLy9sSkd6dXI3Vi82clN6L3BRUVFOckF4MExFVVBvM290Q2hXWERGejNR?=
 =?utf-8?B?d0hhMjkwdlRZK2VaWWN5TE1aUTZFTUtLMHIzdTZHMkFmRU1OY2dNaGRTQXk2?=
 =?utf-8?B?K3JML2xYOStIZXhqZnEwZ2JwQUhmSVE1L0tGaUpVTDNranFNTmpjUkFwNjY1?=
 =?utf-8?B?YkpkK0hCUlYreEZYMHY4eGREbmhObUYzc0VnckY2Q3B1SWxUcHlOSE8zMGZZ?=
 =?utf-8?B?ek8zZFNNU1dtRXcxZTM4anBxQ2VpUDNjOXNFbTQ0bGxuMnlENnVmMERhMHJT?=
 =?utf-8?B?OHhWdlhzVXhQMitCeDhwMjc5YUNhem4xUU93YUUxc0UzaTJJVlZQKytjT2RP?=
 =?utf-8?B?bVlWVW9rSnRvSnF2T21MUldYZ1RsMTF1b28wbUNFMWZpamViQllzSnQ4amM3?=
 =?utf-8?B?RGg2dXgrWWxjekUwcmUzWXZXeHF2Q2NtREs5Z3dmY2s2R2gzYUlmQm02cXFl?=
 =?utf-8?B?bnVUT0YycDMzVWhXKytKY2hHaHZBbFoyK1lrV080S0Z5b2ZwU21BOG9GTEhk?=
 =?utf-8?B?SlJBYkpRMWpjOVZ2RVV1bTNVampkdThQeUVNQUIwWHgzUVZHb2VzaXdTT0c5?=
 =?utf-8?B?NmlOSEhmYkdxM1dTcU5iY0twZ003NzFibTd1aDBxTnI4YzJYdFhqREYzTlpy?=
 =?utf-8?B?dVkrQTN1cEpvN3JwYWtwem44THpWZlgySFRhU0g4VWREd2pYM2U2Zm43Qmtx?=
 =?utf-8?B?UXJLU00rTjB2UmpKSGFsQW9KakZCTjEvUGNRa2xSZENVMXNTNmxSMWpWeGl6?=
 =?utf-8?B?U2JPcnR0M3VOek9tYU9HR2NzK09sYjNuV3ZiTVBWNlVHb3NTcWRnbm9ITUdW?=
 =?utf-8?B?TVpkd1Z4bndjcVo5UG1XNFlJSEFWcDJTejNzaExMSml1QmJyemZRYmt6RWNZ?=
 =?utf-8?B?QXhhWkNiR05CcGt5bGUvdGZINjFnWUo3YUlJaHlINHBzcHE4REV0N1lmZjRY?=
 =?utf-8?B?Z05LS0MrUlpEV21ucUV0cVpQbkRTa2VLbVdDZys4TUx1akJ1S2dtVjJoUHp1?=
 =?utf-8?B?UTluNmlDM0QvRWVOTWpzWVBBRFBXQy9TV0ZJQ3Fvc0dEV09YYVBSSHZ5eHhY?=
 =?utf-8?B?TXVqOWxIQWQ3MUlOYTN6dW9vQ2pudkpZRmdZT0lrQ29zT2tBWGhldEpSY3FD?=
 =?utf-8?B?WGR6V1A2S3cveXlZNm1IZmFJdEoveFNVdnRCWnNvNnRzUlNmSTE5MGpkOURM?=
 =?utf-8?B?UHU2dGRKSmhnNWZqbW5Nb3kzVkRudHFhYnhwNHdUTHhieC91SGVteWh4SXNY?=
 =?utf-8?B?Y21YdlRFbTJlTVNlaEUyZkZIclVoYVB3OVpCTnByTDZ6MDBTWHJ2OGR2anZK?=
 =?utf-8?B?Yi9mNTB1MXJWdHRYZHlrbVZQVVlDdHEwNDkvSUxSS3pjL0xuSDBnaUZMcmRU?=
 =?utf-8?B?NlZWZklVNEVUUG9JTkRDMU4yNGtrT2prY3Fmb2ZST1BxNUhoVjZIRzFYQkJj?=
 =?utf-8?B?cWlwaGV5UjZkajRBUFJmcUVoV2lLSDRmekJ0STEvM0h6dWtGUGVVNHFIZFZ6?=
 =?utf-8?B?Y2ZpY1NaUFZMYmRveW9KOHlSY2NXTXJYaXhwSG9mSXdoc1YyeWdqTUE2TzQ0?=
 =?utf-8?B?SExPRFIvTEV6MGY0RmlQY1VacVJRQkZQMHdPbjBqUWNRQmprMEVTaXUwNVd3?=
 =?utf-8?B?U0xUSm5ZL2NSOWVEWFBLekpyL2NJLy9jUGVPcndjR2FRLytvdmxtb0lnbWlJ?=
 =?utf-8?B?RG1VK1ZGeUY5U0h1QjBobVE5NGg3ekZuM1RsNllLU0pRM3Z0SWllWEpvMW1Z?=
 =?utf-8?B?UC9JbXo5aW0vZ0dZRW9Ta3p1eDRydVc4RW5uYUF5aTZvWGdjenRkekJxN25L?=
 =?utf-8?Q?ywnsFyZN47qX2/H/7UL/XgPGH?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	YCp1l5iyKyHutJ/USrnbDco8sPQdGXHWGKGF2AUZOGhUKwcSOQyyGUYEgN5TVCW7WFyTAD3P2va2OTIIIN/05f+nIzwJjwc0MCQtZSRkNjBx1EFCxjRnygxNM+RKBreyHIzjxtQdYkfughtJqI5JLZY28CnwkccSH6P6y6Z2LMcYwi2BgDupWUBgs/MCzkrNihHyxhruejweJUIBvxhpl/0jYwtF+J3D1Q0XhfNX3GDCcTCqLagnbxT9YEng0esis9Loq/yrBIKzLnKH0uq7SX4tJXN18SBR7/gICMiH+JiPp3m2kTMg7hJ8fbgGbLKGON7+JnPdQutSHh5ecqVtx9vybNb+AvzDlHhJUhtMedhwXA4TLdMrEPYc9AfyaxHOZyJNt/r77ceimriuREedGE8OwdLViRA6P/TwueG9TUMvxBefnBqau0HmOvM1KTglImVOhbF/VKiMqA60maWxHLlWB/uHF82UP8fODQA96s4EdhrMs4Hd6uBNdHD2+UcdhgCkRSLZUocLnL5WRDrjlEHILfum+TERAe25jaaSHBtd8Hp3+fW88Rxd3I+AP9G65VTyAUQKZNxJUJN86v66HZu6pXmNsjUmXTYBIAJoumtcUrNxTAMAJ9PDAH4ZP8oRzBLOppE3JJpzb3n2gNaR48SdQpNxQgaSt5PA/CVKKgwRXcgiIrOfDO46e824KUxmP3WsOtdXPBJ//ciZvHdpwy36TjthAl4LG6oZEEAyf/vUpv7EiMH1lfEOdUfQw6fxmT/6es2t9/4a4x24fmVcIC3NPdiLyYqXgW0CEC1iVIkfERph1ONrXCwSUuy4szTywbLBwuo9uXoVaHs+Mh3g6EeLcxNdhC+8aKUyWiiN5JbQhQq6S1yJs82hiBABvHnWoHZ9XWbBK75AstKFkjLlWw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1aa51f25-f4c5-46c2-2384-08dbbb46689c
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2023 08:32:08.4822
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: M2Jx7Pd+RhDn1eJ5lkQGqrRrVitTqVfnTsqbbMm0dOq2JHr+tznieEXc/LOvyZglGAmKDpBbQ+rvZIh4cnHUYw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR03MB6965

On Tue, Aug 29, 2023 at 11:19:46PM +0000, Volodymyr Babchuk wrote:
> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> 
> There are three  originators for the PCI configuration space access:
> 1. The domain that owns physical host bridge: MMIO handlers are
> there so we can update vPCI register handlers with the values
> written by the hardware domain, e.g. physical view of the registers
> vs guest's view on the configuration space.
> 2. Guest access to the passed through PCI devices: we need to properly
> map virtual bus topology to the physical one, e.g. pass the configuration
> space access to the corresponding physical devices.
> 3. Emulated host PCI bridge access. It doesn't exist in the physical
> topology, e.g. it can't be mapped to some physical host bridge.
> So, all access to the host bridge itself needs to be trapped and
> emulated.
> 
> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
> ---
> Since v9:
> - Commend about required lock replaced with ASSERT()
> - Style fixes
> - call to vpci_translate_virtual_device folded into vpci_sbdf_from_gpa
> Since v8:
> - locks moved out of vpci_translate_virtual_device()
> Since v6:
> - add pcidevs locking to vpci_translate_virtual_device
> - update wrt to the new locking scheme
> Since v5:
> - add vpci_translate_virtual_device for #ifndef CONFIG_HAS_VPCI_GUEST_SUPPORT
>   case to simplify ifdefery
> - add ASSERT(!is_hardware_domain(d)); to vpci_translate_virtual_device
> - reset output register on failed virtual SBDF translation
> Since v4:
> - indentation fixes
> - constify struct domain
> - updated commit message
> - updates to the new locking scheme (pdev->vpci_lock)
> Since v3:
> - revisit locking
> - move code to vpci.c
> Since v2:
>  - pass struct domain instead of struct vcpu
>  - constify arguments where possible
>  - gate relevant code with CONFIG_HAS_VPCI_GUEST_SUPPORT
> New in v2
> ---
>  xen/arch/arm/vpci.c     | 51 ++++++++++++++++++++++++++++++++---------
>  xen/drivers/vpci/vpci.c | 25 +++++++++++++++++++-
>  xen/include/xen/vpci.h  | 10 ++++++++
>  3 files changed, 74 insertions(+), 12 deletions(-)
> 
> diff --git a/xen/arch/arm/vpci.c b/xen/arch/arm/vpci.c
> index 3bc4bb5508..58e2a20135 100644
> --- a/xen/arch/arm/vpci.c
> +++ b/xen/arch/arm/vpci.c
> @@ -7,31 +7,55 @@
>  
>  #include <asm/mmio.h>
>  
> -static pci_sbdf_t vpci_sbdf_from_gpa(const struct pci_host_bridge *bridge,
> -                                     paddr_t gpa)
> +static bool_t vpci_sbdf_from_gpa(struct domain *d,

Plain bool please.

> +                                 const struct pci_host_bridge *bridge,
> +                                 paddr_t gpa, pci_sbdf_t *sbdf)
>  {
> -    pci_sbdf_t sbdf;
> +    ASSERT(sbdf);
>  
>      if ( bridge )
>      {
> -        sbdf.sbdf = VPCI_ECAM_BDF(gpa - bridge->cfg->phys_addr);
> -        sbdf.seg = bridge->segment;
> -        sbdf.bus += bridge->cfg->busn_start;
> +        sbdf->sbdf = VPCI_ECAM_BDF(gpa - bridge->cfg->phys_addr);
> +        sbdf->seg = bridge->segment;
> +        sbdf->bus += bridge->cfg->busn_start;
>      }
>      else
> -        sbdf.sbdf = VPCI_ECAM_BDF(gpa - GUEST_VPCI_ECAM_BASE);
> -
> -    return sbdf;
> +    {
> +        bool translated;
> +
> +        /*
> +         * For the passed through devices we need to map their virtual SBDF
> +         * to the physical PCI device being passed through.
> +         */
> +        sbdf->sbdf = VPCI_ECAM_BDF(gpa - GUEST_VPCI_ECAM_BASE);
> +        read_lock(&d->pci_lock);
> +        translated = vpci_translate_virtual_device(d, sbdf);
> +        read_unlock(&d->pci_lock);
> +
> +        if ( !translated )
> +        {
> +            return false;
> +        }
> +    }
> +    return true;

You could define translated = true at the top level of the function
and then set it to `translated = vpci_translate_virtual_device(d,
sbdf);` and have a single return in the function that returns
`translated`:

bool translated = true;

if ( bridge )
{
    ...
}
else
{
    ...
    translated = vpci_translate_virtual_device(d, sbdf);
    ...
}
return translated;

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 08:45:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 08:45:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606790.944823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbmX-00038e-3t; Fri, 22 Sep 2023 08:45:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606790.944823; Fri, 22 Sep 2023 08:45:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbmX-00038X-0t; Fri, 22 Sep 2023 08:45:01 +0000
Received: by outflank-mailman (input) for mailman id 606790;
 Fri, 22 Sep 2023 08:44:59 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=CgRi=FG=citrix.com=prvs=622ae25b4=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qjbmV-00038R-Ew
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 08:44:59 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4dad78a4-5924-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 10:44:57 +0200 (CEST)
Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 22 Sep 2023 04:44:44 -0400
Received: from MW4PR03MB6428.namprd03.prod.outlook.com (2603:10b6:303:123::8)
 by SA1PR03MB6322.namprd03.prod.outlook.com (2603:10b6:806:1b5::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Fri, 22 Sep
 2023 08:44:41 +0000
Received: from MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::ddbc:172e:c4a3:ec6f]) by MW4PR03MB6428.namprd03.prod.outlook.com
 ([fe80::ddbc:172e:c4a3:ec6f%4]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 08:44:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4dad78a4-5924-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695372297;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=KjBjDba3erFVcBbC6GrhhaZtQhLdQdmuryJdWpdAShM=;
  b=L4m2ELAuQzEqnw+ZzFut87rdpDl00dUp+zXV/SlvwHhXX5UT7U1uoOBo
   oh/SxI6icB7VpDrshtKoKq2AwIZsTuK3EilSZulZnUAZitxaEKjS2gYHX
   1++FlME5ZLHT+q4ga/zc4mzjmIV/ivGICVrmQTOAftd03mEOeRQai/igM
   4=;
X-CSE-ConnectionGUID: sVg+TC26Tuy6IQTqnrW4og==
X-CSE-MsgGUID: O04VoYTHRF+UnroIR4aASw==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 126231977
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:K0wy96uCJq3KEZ67JrIxtdcmHefnVG9fMUV32f8akzHdYApBsoF/q
 tZmKWqOOquCYWv8edF+bYjnoU4BsZHTxoViSVBl+yg9Q3sU+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5A6EzSFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwMw4CLSyo3byK3aPla9BQn8I5E5XsM9ZK0p1g5Wmx4fcOZ7nmGvyPz/kImTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgP60boq9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAtxIT+TpqaECbFu74TRPNhonaXuBj7qEjFS5eugDI
 mUv5X97xUQ13AnxJjXnZDWGp3qDsg8ZSsBnOeQw4wGQyYLZ+w+cQGMDS1ZpeNEg8cM7WzEu/
 luIhM/yQyxitqWPTnCQ/avSqim9UQAOMWIdbDUYCwsE59Xuqps6iB7nR9NvVqWyi7XI9SrYx
 jmLqG00geUVhMtSjqGjpwmZ03Sru4TDSRMz6kPPRGW54whlZYmjIYu19Vzc6vUGJ4GcJrWcg
 EU5dwGlxLhmJfmweOalGo3hwJnBCy65DQDh
IronPort-HdrOrdr: A9a23:gWZA4a0/PZzwAch0dRk6bAqjBIUkLtp133Aq2lEZdPU1SL3gqy
 nKpp9w6faaskdrZJhNo7690YO7IU80jKQFhrX5ZI3SOjUO21HIEGgB1/qb/9SIIUSXygc679
 YFT0EUMrHN5DZB4PoTi2KDYrQdKLHtytHKuQ6n9RhQpPZRGsRd0zs=
X-Talos-CUID: 9a23:nH2cXmE4rFliaws+qmJ8ykFXJut/LEHA3SnxGnOhD3xWFLqaHAo=
X-Talos-MUID: 9a23:MoMcIQV6cGKBuzvq/Bi02A9lBftI2YrtNUYXlrQ858CtDjMlbg==
X-IronPort-AV: E=Sophos;i="6.03,167,1694750400"; 
   d="scan'208";a="126231977"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=c/MdO+znmlC34vmjsbL4SCm8SQ+cFTNKkrvN6NXFwn8FAc82jV1OGmZKNmsxUwzqQLTVHAsyRli42BX7n1Tailqp6NKKmjyz1+D5FlGxg7/hyH/m3ZfIsP3GkmB6kmEk3R1PEQQe5N0lojPz2TMwdgN6yL+JjwS9ks3qXxFnR9WW7M1YXDrANetPbwcJ+b47BJu89ytXR6Gu/k+Wvf1bqHEzmqpBsS9NQ5eBtvWGGWJePq0X63bnhwTYjqgCgXVWU6lnwCk2IAzQAUGi21Z7VJu5LeXz/6qDXKBJWUCw2bNskIjvMtf9CnD3QV/H+DaT58Ck9nEEXhv4AciwSiT8ag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Rm2K6mwwlFjE8Ke+CWTxB2i5nH8w8q2XvV6lAJdIbPg=;
 b=F6XGbIUSqPyCpJrQQV4fTaHLjOjmkXF6Ohi7cdyXvGhr+TEwI2etrmHYYWpsK47VC+1BF3SWrND34WWRXiDb3JhokBUd221MkO2qKkAAgYrxsJI5Jf8q2/3DWJnUMClo+pcj2ASjtVP6rhTQEImyVTEwxflXTHzmqUOit6bZaIDFmODPzJZUWcqBz1QwZdvGPS3ZkD4rlVBt4B6/b7HfaNQfrSSD0CBP7I1wofqnfb5pz8hrrnKzKTIzKcJ8PdF3TkueIj2bKThae7Zc/NiT3sOngSB7V4HeW47pO8x/uoykuHZwxBdbnrLZ8mXBs9VDpnBFA7E+JXdZh7Y33yPCcw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Rm2K6mwwlFjE8Ke+CWTxB2i5nH8w8q2XvV6lAJdIbPg=;
 b=qMchSinv+YqHhphWVdO9NB0efcsLCFcs94Yxs5T/RyKvgQcgQk7c2BIQAvzL9MUtvQBfmdC+9zfXG+JLefcOPhzVqlft4l7IgM82WoxpxCebdV7gjLTIf71957mlrdwUOaBuGVVQWso9HMuRTYnnFg93+YevF3mjucoGh4pm74g=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 22 Sep 2023 10:44:34 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart Hildebrand <stewart.hildebrand@amd.com>
Subject: Re: [PATCH v9 15/16] xen/arm: vpci: check guest range
Message-ID: <ZQ1T8vImUxAaeLdj@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-16-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20230829231912.4091958-16-volodymyr_babchuk@epam.com>
X-ClientProxiedBy: LO3P123CA0017.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:ba::22) To MW4PR03MB6428.namprd03.prod.outlook.com
 (2603:10b6:303:123::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MW4PR03MB6428:EE_|SA1PR03MB6322:EE_
X-MS-Office365-Filtering-Correlation-Id: 49d2eb87-7015-4197-a97c-08dbbb482936
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	FlxL6ERoD8LXuoZZRx/7kg6TIeusLbDr/BJs93AcvmcoyPU6GrnJxBBr4shMg0Bko+tnWNsQx/aHx+m5dQ6gcpetWvoq3PXKvZun6mStiKtENPCuKtD+pND11Ak0iIHebv3Rd+cl4tOf2Kngya+BorsixG9YNjlx+OGRITr+ezAd3hudoqOR5mrMAldcWYI4BQFZEBq2EifF5IFM0JPwrM4rH+43KiNfyTBr/4FlYoqSldC6tLkGaxb4/OF3oFGvSPC8SHsz6MrxcvHLKx6vvuqjh/VJAP5nfD39D0kHtskxZDKCKLrjAxqsScNQ/aM9qzxb8v+j4z1BwF7/MRHfX+oYqrVIUFeAqAgp5e2AWTVlpBIR/2VgbWW3zgWZNoSBSIYWXxU+uZ7VeXHdLGooPfspq0NL7aScEL6V8gDdRPi/MAW9f8R3DeXIyCyqN3bJvEdJC0QIoa0qOmGLBmjpyYNm8Y/IwoiTQoqO3zCAr9+5A7GnqsAWks8oufFkVGWdkDrPd6wjkDLexrZDbzNJaumjCsQWmX/tnnT19AIv8sjUOzf+5h+adTOcgu+YnFYU
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR03MB6428.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(366004)(376002)(39860400002)(136003)(346002)(396003)(451199024)(1800799009)(186009)(38100700002)(316002)(6512007)(41300700001)(4326008)(8676002)(8936002)(6486002)(5660300002)(478600001)(66556008)(66476007)(66946007)(54906003)(2906002)(6916009)(86362001)(6666004)(6506007)(82960400001)(33716001)(85182001)(26005)(9686003);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?c3Vta09XSE0zNnBaTGJEbXJteVA4OU1GMGp3cndIS1FYSEUyUGxGNVZOYzBh?=
 =?utf-8?B?eWRPTFRZMGNJdXVpTGRxb0FLRHZpellVWldJTUVGYnFZOFJTY2hYZXlSSFdW?=
 =?utf-8?B?ZFNLUy8wL1RGMFdFVUJVaUVxN1BpWWs4amJlRjZjaitpWTR2Y0l0R0haeElR?=
 =?utf-8?B?eGluNXpjK0g2RUVTT0F0TkdtVCtVTENEdGhQUWFLdUxqSUFtc0JYcHhJNlpT?=
 =?utf-8?B?R0xEZm1xVkJvVVF0bUJNRmhIZGd0RlhrMExLNXYwZEh3OHlNVURMZ2plSXRZ?=
 =?utf-8?B?ZkpuU0VRMGZRa2psS1JabjFKcUxEWldWZzJzL3pVM1QwVHBUUTZUcEpjbHJE?=
 =?utf-8?B?OVgzL01DQmNTa2hVbC9lSlgveVhDSkQydGNtR1MxcW5WOEx4TEwvNTdwazZL?=
 =?utf-8?B?ckFiSGxKUGZvZVlZNzRBMDYzd1NobFA4aGw2Mi8yaGxFUnl2S2tBY0J1TE1j?=
 =?utf-8?B?YUNGajUvUExQYUtrRUxVTmFtZ3FrdXd5dE1obmg4UUtaNDlFUGZUTit6d0Jm?=
 =?utf-8?B?K0JPeUJnM2xRYlhzSTFGZGNMYWM5WTEvVUlQNEhEOTBna2ZET2k2MDZTbUlk?=
 =?utf-8?B?clUxckRpb1QwWklhVmNjbjBrbE5rN0tEdmVkTFpmYjdCamR1ZHBVdWd6TDRy?=
 =?utf-8?B?VDVKWENoWmNLTS9vVXh5bENDamkzbmdqYThobTJ2dFBEU0xaUzF0VWpEZkMw?=
 =?utf-8?B?WjZrV0JiNTA3eWVJUUVaUlU5L0ZnbnpBa1NYc2U4RnFKYXgvdVlCczNaSFpv?=
 =?utf-8?B?bnNLV1hWZ1lZdHJCdEJlTklqUzNaWEtyQVNSbzRaQ1F3bm9jRU1lL1ZDcUht?=
 =?utf-8?B?RnIwWlg2b1hxVkpVZGdwQ09rTlBWUzFHVE8wOGRlZFRGQ2J4d0x6ZkVhUG5Y?=
 =?utf-8?B?Wnk5YVFBY2g5L2t6c1RYM2NmamxwenJacGRwdHJUQzdXQkhEdzlTaXV6MnpB?=
 =?utf-8?B?S203ZU1YQzhMR3hTOExVYkY1Y0tSMldGNC9WOHA2YXZoZ2ZwVDJWUDBPcS8v?=
 =?utf-8?B?a3VsaTNjUEEvQ2NmQWw5dEcybzhYeTBWUFgzMkxZdGVCTHdHdWtqN3Jpby9x?=
 =?utf-8?B?Y05HQVFvb0d6UEoxSXhQSnRvOHpkTElwbStENVdaUlBtYjM2Tk45SCt1UTVX?=
 =?utf-8?B?NUxCMG5uKzZ1OVlzSS9meE80NDZFcmZmK1IwYjNyaFo0WUg3cjZvaEx4OFMw?=
 =?utf-8?B?YlVFSTNqWVhuSlVJOURxS1Z0ak85TXZVdDE3elhGZktKV3I4WkZqVlpQQmlQ?=
 =?utf-8?B?b05JV0FpeUZlclJCaUJVb0oxQU9nWW5zdURwVmVnQkY1WW5sTlgreE54cFNq?=
 =?utf-8?B?VTI5bkVBZVl0d3lHdHZHNytYVlBZQUc4aHc4V1JtOE0xOW9QVjJURityYlNx?=
 =?utf-8?B?dW44RmxCUTJOUzE2cmZ0OWlqOWJyYzZ1dkJCVmVEWXlEdURGTlo4QW1qbWh0?=
 =?utf-8?B?UW5zbXZZWVNVUkhweDBUWlBLYnRUMU5KSDh0S2FPTWJ3cTVwdHNhcHJTUms3?=
 =?utf-8?B?eFlnNnNZWnlLbytpVElDWEluTWxwL0pDczM3T0xUMGlMc3ZJbCtRelpGT3pI?=
 =?utf-8?B?OHZuc0swanFQQnRheG1RSjMrZ0NjaElPeVBjSWU4bXNrVlpPeHRGSUtEWThK?=
 =?utf-8?B?VlBoYzJTd3Z6ZjVEWTZVcVR1L25lWE9CZjh6WEtmVkduWjZZTlo4UklFWUE2?=
 =?utf-8?B?ZWYxblhBVWljckl6Y3ZYclZiaFpCOVpMMkZ4WXlXemtYY1Y2eURBSmhZdjlS?=
 =?utf-8?B?aWpIQVVVdyszUkNOZDRhZmkvZCtqeDNvRHdSNldpd1cwd25neVlzbHMxTjNR?=
 =?utf-8?B?cEU3eFZESlE2VG9qbklFZWIxVWpHM0JXRlhma1JqZmE2QUZZdlFLZDlSdHI3?=
 =?utf-8?B?Sm5iaTMxK1hqS09mV3dvNXU2cnZBMjZaM1hwOVFaMlNnR1drN0Vjayt0a3Bo?=
 =?utf-8?B?SDN0T2g1a25rcVJiK2NtN1E3NTRNclRPb3NHU0dPWEJDU2IzZExKaFl6TXls?=
 =?utf-8?B?Q1FqWkl2dWRuUUxYV2J3V2o5Qm5Kd2xVQUk3M3J3UC84ZUJzN29tRzdsdE1J?=
 =?utf-8?B?cTdjOWVpM1NxZ2gycFU1ejJkMjZDZml6TkhlOHBqNEFwVnk4VGFNbGJTOFU5?=
 =?utf-8?B?aGRTM2RuZFNydEMwa2JkbE95dHVVcGNKYnZsTzQ0dkdqSXZTWFJ2WXZrUWtH?=
 =?utf-8?B?YlE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	Jg+nRJxGAhTKfJNQFrtXe6O4Fka+BJZ7f4msdKJU5Ja7KdFG2250ZlxaBqMulGQkvvNvH80XE2UEGJCvuzRoSuNVuCUatrvWeCFd1B3Jsl3V5xH1eZ16xe3mHxBqPcxPwqnaTCDIgyp85aBOcjhohSIqhexhG03Nxi8S1WXql7vya5qM9Em5ZbUwMQD4IHzS5g7lWyoHq/DD5oFxxbeEvtTfUVuBhRf2a7J2wC7uAFdNcjsHzO9toPo+1AMijbDcvm+Te6C4MWCmUVec9CYUxC1slJK4rJbqIwGn1wMPHy5v5gIpP1PbQlHrm+fgxzukIw+vhs16TEnKwNA7QT/+8IXj2No4RXJKj6F6U7+/GzDTLlK42dgpsJIhlLROogO7qoh7ak4dqwFxWJcPvX/gtvrjHyLKps2iE+MhTtu/R0AybVdJ9nKBabRHXVxWsYZFNYHMEKH4vI0vKaftPBH8qCLwTMo2vuyDfIHdgyTRtbjiikJopnxuD+TNioebMJNmwvn4i6Cfk3TVFc37yXYJSCM5PrXDc7WD5w/lzkT0tk8K3DRQC6DfJyEvZtc/8nSkjy3q9SE7vLdXWfd1gaXchg6h/Xk9gcaNO0sV2Oh5NTG4CVoMeqm9mG4Q95BaDc+GXGjRq5k0F+A3W+J2jOCPr+LxbMHHCEVc3Y1N/UZggzAw4+COfJS6AwUJqK68hR6YnkPZ86xQms3GfRKD7o5tKwghsIrZooN2uUHMzWH/bN4h9liKtAP1qqm0DRb5GRX9UrsUPlaDwme7GK5eOoeV7hzfTIuM7+IxCe0lIkaz7qnn8qdBvwJ4x6QFXE7y7V9u
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 49d2eb87-7015-4197-a97c-08dbbb482936
X-MS-Exchange-CrossTenant-AuthSource: MW4PR03MB6428.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2023 08:44:40.9310
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: qj6840Q0uZvp2HN2rl6Xv9l6b3e3NkPKN6/U26ReF6gbSR5QwxZpjt2l5N6F82i3fgLeq8dVwparfo5BfEBEZw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB6322

On Tue, Aug 29, 2023 at 11:19:47PM +0000, Volodymyr Babchuk wrote:
> From: Stewart Hildebrand <stewart.hildebrand@amd.com>
> 
> Skip mapping the BAR if it is not in a valid range.
> 
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> ---
>  xen/drivers/vpci/header.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index 1d243eeaf9..dbabdcbed2 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -345,6 +345,15 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>               bar->enabled == !!(cmd & PCI_COMMAND_MEMORY) )
>              continue;
>  
> +#ifdef CONFIG_ARM
> +        if ( !is_hardware_domain(pdev->domain) )
> +        {
> +            if ( (start_guest < PFN_DOWN(GUEST_VPCI_MEM_ADDR)) ||
> +                 (end_guest >= PFN_DOWN(GUEST_VPCI_MEM_ADDR + GUEST_VPCI_MEM_SIZE)) )
> +                continue;
> +        }
> +#endif

Hm, I think this should be in a hook similar to pci_check_bar() that
can be implemented per-arch.

IIRC at least on x86 we allow the guest to place the BARs whenever it
wants, would such placement cause issues to the hypervisor on Arm?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 08:53:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 08:53:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606797.944833 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbup-0005ah-UH; Fri, 22 Sep 2023 08:53:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606797.944833; Fri, 22 Sep 2023 08:53:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjbup-0005aa-Qy; Fri, 22 Sep 2023 08:53:35 +0000
Received: by outflank-mailman (input) for mailman id 606797;
 Fri, 22 Sep 2023 08:53:35 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xJX2=FG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qjbup-0005aU-A8
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 08:53:35 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 82616965-5925-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 10:53:33 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id C590B4EE0739;
 Fri, 22 Sep 2023 10:53:32 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 82616965-5925-11ee-878a-cb3800f73035
MIME-Version: 1.0
Date: Fri, 22 Sep 2023 10:53:32 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Anthony PERARD <anthony.perard@citrix.com>
Cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org,
 michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com,
 consulting@bugseng.com, Wei Liu <wl@xen.org>, Andrew Cooper
 <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Jan
 Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>
Subject: Re: [XEN PATCH 2/3] docs: make the docs for MISRA C:2012 Dir 4.1
 visible to ECLAIR
In-Reply-To: <30e0d1b7-6ac0-464e-b45f-36b56960d8f9@perard>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com>
 <bf38efce3ac551fc95eaf1935ce7f574a7804df2.1693558913.git.nicola.vetrini@bugseng.com>
 <30e0d1b7-6ac0-464e-b45f-36b56960d8f9@perard>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <c07dc878a2706d1fef3d086bf4baedec@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 08/09/2023 13:04, Anthony PERARD wrote:
> On Fri, Sep 01, 2023 at 11:06:39AM +0200, Nicola Vetrini wrote:
>> diff --git a/docs/misra/Makefile b/docs/misra/Makefile
>> new file mode 100644
>> index 000000000000..8ea0505c8a20
>> --- /dev/null
>> +++ b/docs/misra/Makefile
>> @@ -0,0 +1,17 @@
>> +TARGETS := C-runtime-failures.o
>> +
>> +all: $(TARGETS)
>> +
>> +# sed is used in place of cat to prevent occurrences of '*/'
>> +# in the .rst from breaking the compilation
>> +$(TARGETS:.o=.c): %.c: %.rst
>> +	echo "/*\n" > $@.tmp
> 
> This doesn't really works as you expect. Depending on the shell used or
> the echo binary used, the "\n" would write a <new-line> or justs "\n".
> Bash just write "\n" for example, while dash does write a <new-line>.
> But, you can use `printf` instead:
>     printf "/*\n\n" > $@.tmp
> 
>> +	sed -e 's|\*/|*//*|g' $< >> $@.tmp
>> +	echo "\n*/" >> $@.tmp
> 
> Same here.
> 
> 

Thanks, I'll fix it in the next version.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 09:37:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 09:37:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606805.944842 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjcbX-0005U1-4k; Fri, 22 Sep 2023 09:37:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606805.944842; Fri, 22 Sep 2023 09:37:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjcbX-0005Tu-22; Fri, 22 Sep 2023 09:37:43 +0000
Received: by outflank-mailman (input) for mailman id 606805;
 Fri, 22 Sep 2023 09:37:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xJX2=FG=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qjcbW-0005To-Hd
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 09:37:42 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id acd5af32-592b-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 11:37:41 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id CEBD94EE0739;
 Fri, 22 Sep 2023 11:37:40 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: acd5af32-592b-11ee-878a-cb3800f73035
MIME-Version: 1.0
Date: Fri, 22 Sep 2023 11:37:40 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
 <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Julien Grall
 <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH 1/3] docs/misra: add documentation skeleton for MISRA
 C:2012 Dir 4.1
In-Reply-To: <alpine.DEB.2.22.394.2309071659440.6458@ubuntu-linux-20-04-desktop>
References: <cover.1693558913.git.nicola.vetrini@bugseng.com>
 <e74433904abe30e2e9e030f663a7a87813dabd24.1693558913.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2309071659440.6458@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <c19018082eecd0bf1e8d7ef97be53edc@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit


>> +Documentation for MISRA C:2012 Dir 4.1: invariant violation
>> +___________________________________________________________
>> +
>> +To be written.
> 
> What's an invariant violation?
> 
> 

It's the violation of a project invariant (e.g., an assert or 
BUILD_BUG).
Something along the lines of this could fit in the documentation:
"The extensive checks in the code ensure that any violation of a
compile-time invariant will be detected in prior to release builds, and 
failure
of run-time invariant is also extensively tested."

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 10:22:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 10:22:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606811.944852 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjdIM-0004zD-Cu; Fri, 22 Sep 2023 10:21:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606811.944852; Fri, 22 Sep 2023 10:21:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjdIM-0004z6-A2; Fri, 22 Sep 2023 10:21:58 +0000
Received: by outflank-mailman (input) for mailman id 606811;
 Fri, 22 Sep 2023 10:21:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5esq=FG=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qjdIK-0004z0-TK
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 10:21:57 +0000
Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com
 [2a00:1450:4864:20::436])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id dae5f3ef-5931-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 12:21:55 +0200 (CEST)
Received: by mail-wr1-x436.google.com with SMTP id
 ffacd0b85a97d-32008b5e2d2so1444799f8f.0
 for <xen-devel@lists.xenproject.org>; Fri, 22 Sep 2023 03:21:55 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 z16-20020a056000111000b003176eab8868sm4037381wrw.82.2023.09.22.03.21.54
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 22 Sep 2023 03:21:54 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dae5f3ef-5931-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695378115; x=1695982915; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=G9yX/At7hT4WntygSSFE5HgnJcrjF1Z7QzHCDMuS7Hg=;
        b=cZ7mMJBhCOS//c/Vqzv94wOkGeKlUos8L66hBIDa13NH7C5XCwNTVAcwsSNfHCqft9
         Yu0JdYplMUbqEHT0JVM4RrHURS5d5J3tUSkTxJeRUQLZ3ZIP1Fm+wOS62unRxI8gxYfe
         ehuE0UpNlIudOfgib3pL+S6xgbui6Kw+AyT9I=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695378115; x=1695982915;
        h=content-transfer-encoding:in-reply-to:from:references:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=G9yX/At7hT4WntygSSFE5HgnJcrjF1Z7QzHCDMuS7Hg=;
        b=FEgyvLjHxav9xogmfhQuOZpmMOJ/TEN/szSUou73e6RHg2cRWwjpwrNlmxx4NRDVk6
         unvDa2L4Gq3x5mc5agHL+j5L2DfIFSuPt5GiRBqZiUPHkw/LHRkPZ0j4CTHk/KAvCzB6
         B7tb77MdYzrjX0Dcb1kcS+Z7gG15inJ/mcXGz8VLkEWflzbgKJywUBmqvcLiQUbfdA+5
         SxiWHuUcXkqPi3bpAK10IZjp8YXk2wcRBp7Rfc4fIHX8LXTAklABKayM+Spb9cFzs12t
         AKbCGj47zgbFpqcMI0ruM6wnXfJOE6YPr3QnPFjMZK5zj316kc6hSDQu2caritK78sp3
         lVeQ==
X-Gm-Message-State: AOJu0YxkcJGqx9eW8zhIrBxZM3aYn6hszaGoX7cHYNTpWii3AUbYvMpY
	aym0czabKjf2m+Ks5k7DTH8RMtUDz1nRSjBZZNA=
X-Google-Smtp-Source: AGHT+IEVD1HUQxU80yaqIMscl9eAxIwWXnz9Il18O7lp1XHQb/mcS33iLv40nrR6bEerQx/OAHAt9Q==
X-Received: by 2002:adf:b649:0:b0:317:59a6:6f68 with SMTP id i9-20020adfb649000000b0031759a66f68mr1714505wre.0.1695378115132;
        Fri, 22 Sep 2023 03:21:55 -0700 (PDT)
Message-ID: <384b1442-9f02-1844-4524-72f080e99480@citrix.com>
Date: Fri, 22 Sep 2023 11:21:53 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: qemu-system-i386 crashes on i9 coffee lake
Content-Language: en-GB
To: Stefan Kadow <stefan.kadow@ska67.de>, xen-devel@lists.xenproject.org,
 Chuck Zmudzinski <brchuckz@netscape.net>
References: <8ed49454-101a-596f-3a26-3e5702a80001@ska67.de>
From: Andrew Cooper <andrew.cooper3@citrix.com>
In-Reply-To: <8ed49454-101a-596f-3a26-3e5702a80001@ska67.de>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 21/09/2023 11:24 pm, Stefan Kadow wrote:
> Hello,
>
> since commit b9ade05c
> https://xenbits.xenproject.org/gitweb/?p=xen.git;a=commit;h=b9ade05cbba977673d5a08bc7a5940c5fd8add0e
>
>
> qemu-system-i386 crashes on my Intel i9 Coffee Lake System.
>
> This does not happen when the system is booted with the latest
> microcode update. So I do not know if this is really a regression.
>
> Please, see the discussion on xen-users mailing list:
> https://lists.xenproject.org/archives/html/xen-users/2023-08/msg00014.html
>
>

The commit you reference is the security fix for Gather Data Sampling, a
vulnerability leaking vector registers across threads and privileges.

GTS is very severe.  Literally the easiest thing for a casual attacker
to find is the key material used by AES-NI instructions, owing to an
implementation detail which causes extra copies of the key to exist in
the vector register file.

As you can see in the documentation change (first file in
https://xenbits.xenproject.org/gitweb/?p=xen.git;a=commitdiff;h=b9ade05cbba977673d5a08bc7a5940c5fd8add0e)
if suitable microcode is not available, Xen mitigates the vulnerability
by disabling AVX.

This is necessary because there are some affected CPUs which are out of
support from Intel and not receiving microcode.


At a guess, Qemu is executing an AVX instruction without appropriate
feature checking first.  You'd need to attach GDB and disassemble the
trapping instruction to confirm.

Either way, it's a bug in Qemu, because even if it was compiled to
assume AVX is available, it ought to exit cleanly rather than crashing
like this.

You can disable the security fix by booting Xen with `spec-ctrl=no-gds-mit`.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 10:24:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 10:24:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606816.944863 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjdKR-0005Wy-Qm; Fri, 22 Sep 2023 10:24:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606816.944863; Fri, 22 Sep 2023 10:24:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjdKR-0005Wr-MF; Fri, 22 Sep 2023 10:24:07 +0000
Received: by outflank-mailman (input) for mailman id 606816;
 Fri, 22 Sep 2023 10:24:06 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjdKQ-0005Wf-DE; Fri, 22 Sep 2023 10:24:06 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjdKQ-0005tH-4A; Fri, 22 Sep 2023 10:24:06 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjdKP-0006Mp-KV; Fri, 22 Sep 2023 10:24:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjdKP-00007G-K3; Fri, 22 Sep 2023 10:24:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=7tPA9rGSKrgQGMw+JO0Dk8Z/ppgcitz0XQ92bPY5ngk=; b=R9diy3/eoMqqGLXdQ4VjKaNfq0
	oifeOyoe4+mCxGyaXj0OX5D07pUiQXIAomahQnKuPvG0Ewv7dIpCjzc7ZGj/iY2foyYfbmx3uEake
	P0lEWsHdMwbzOZ0TLYzXuootON14eJ6Tss6DAyxvih4KCITrd8jOju/8uv68UeQ9OQDM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183114-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183114: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=28a267af4024c329e58121ccd9bf5f4f7aabc0f4
X-Osstest-Versions-That:
    ovmf=f67e1934d985dcb8a465dcf44484be3688be99a5
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 22 Sep 2023 10:24:05 +0000

flight 183114 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183114/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 28a267af4024c329e58121ccd9bf5f4f7aabc0f4
baseline version:
 ovmf                 f67e1934d985dcb8a465dcf44484be3688be99a5

Last test of basis   183111  2023-09-22 04:10:47 Z    0 days
Testing same since   183114  2023-09-22 08:40:58 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Ranbir Singh <Ranbir.Singh3@Dell.com>
  Ranbir Singh <rsingh@ventanamicro.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   f67e1934d9..28a267af40  28a267af4024c329e58121ccd9bf5f4f7aabc0f4 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 10:31:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 10:31:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606824.944873 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjdRk-0007cI-Lz; Fri, 22 Sep 2023 10:31:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606824.944873; Fri, 22 Sep 2023 10:31:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjdRk-0007cB-Im; Fri, 22 Sep 2023 10:31:40 +0000
Received: by outflank-mailman (input) for mailman id 606824;
 Fri, 22 Sep 2023 10:31:39 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=pt6G=FG=kernel.org=maz@srs-se1.protection.inumbo.net>)
 id 1qjdRj-0007c5-96
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 10:31:39 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 353c633d-5933-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 12:31:37 +0200 (CEST)
Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by dfw.source.kernel.org (Postfix) with ESMTPS id 12CBE62263;
 Fri, 22 Sep 2023 10:31:36 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 705AAC433C8;
 Fri, 22 Sep 2023 10:31:35 +0000 (UTC)
Received: from sofa.misterjones.org ([185.219.108.64]
 helo=goblin-girl.misterjones.org)
 by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls
 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95)
 (envelope-from <maz@kernel.org>) id 1qjdRd-00FHue-1c;
 Fri, 22 Sep 2023 11:31:33 +0100
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 353c633d-5933-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695378695;
	bh=YTEt1kxkIMkm1+nI3n50bWZAlpyXcbBEreGRryReUVI=;
	h=Date:From:To:Cc:Subject:In-Reply-To:References:From;
	b=B5myd+yLK12q3EKpyGwEZ2fqVqoRNHNL5+HeRt2P+4lFn1x6V98ErB2S6KBpeApKi
	 Z9TEs5gqZKdRuVPAp8g4r2w4pGZxhTa1SMzpXhgt3C8jyiJ5K4oyjvOcnFUfpYC4Z1
	 0R0B/3/1EFp1GrjOMy01jesB5/tT2Jd2BB2mnUzw26mIGlTHSQP+dDYF9Uw4mS9hfV
	 1RF+mp4W3mBIroBgTRClTRki+owHcxlQmBQSCmrAcLVJmmgyZAM8NdIDe8hYFNoCFI
	 qCCBvDVKUIUUJjb26S7B0IGamYUCbyCTWPNzNjE16zgnqX9eoJfky6ycmwguXII+OW
	 wWxhf3Soyfcpw==
Date: Fri, 22 Sep 2023 11:31:31 +0100
Message-ID: <86wmwio5x8.wl-maz@kernel.org>
From: Marc Zyngier <maz@kernel.org>
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Stewart
 Hildebrand <stewart.hildebrand@amd.com>,
	Stefano Stabellini
	<sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Julien
 Grall <julien@xen.org>
Subject: Re: [PATCH v1 2/3] ARM: GICv3 ITS: do not invalidate memory while sending a command
In-Reply-To: <875y43f45p.fsf@epam.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
	<20230919112827.1001484-3-volodymyr_babchuk@epam.com>
	<1614d73f-72b0-44f2-8e34-0e6c58a1a375@xen.org>
	<87fs3afcxb.fsf@epam.com>
	<597db9f5-b959-4b75-9410-0d0c16e3acda@xen.org>
	<875y43f45p.fsf@epam.com>
User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue)
 FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/29.1
 (aarch64-unknown-linux-gnu) MULE/6.0 (HANACHIRUSATO)
MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue")
Content-Type: text/plain; charset=US-ASCII
X-SA-Exim-Connect-IP: 185.219.108.64
X-SA-Exim-Rcpt-To: Volodymyr_Babchuk@epam.com, xen-devel@lists.xenproject.org, stewart.hildebrand@amd.com, sstabellini@kernel.org, bertrand.marquis@arm.com, julien@xen.org
X-SA-Exim-Mail-From: maz@kernel.org
X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false

Volodymyr,

On Fri, 22 Sep 2023 01:22:11 +0100,
Volodymyr Babchuk <Volodymyr_Babchuk@epam.com> wrote:
> 
> 
> Hi Mark,

s/k/c/

> 
> I am writing to you, because you are GICv3 maintainer in Linux. We are
> updating ITS driver in Xen and we have a question about cache
> maintenance WRT memory shared with ITS. As I can see, the Linux ITS
> driver uses gic_flush_dcache_to_poc() all over the code. This boils down
> to "dc civac" instruction which does both clean and invalidate. But do
> we really need to invalidate a cache when we are sending an ITS command?
> In my understanding it is sufficient to clean a cache only and Linux
> uses clean&invalidate just out of convenience. Is this correct?

It really depends how you look at it. We use DC CIVA as the standard
way to give a buffer to a device, as that's what the DMA API
does. Switching to a simple clean is possible, but I don't really see
what it brings you.

ITS commands are usually written as a single command followed by a
SYNC/VSYNC. That's a total a 8 64bit words, which makes a cache line
on 99.999% of the implementations.

What do you gain by keeping the cache line around? Not much. By the
time you go around the command queue and need the same data again, it
will have been evicted from your L1 already.

So while I don't see a problem with what you are suggesting, I also
think the change is pretty much irrelevant.

HTH,

	M.

-- 
Without deviation from the norm, progress is not possible.


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 10:38:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 10:38:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606829.944883 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjdYK-0000SK-Ch; Fri, 22 Sep 2023 10:38:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606829.944883; Fri, 22 Sep 2023 10:38:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjdYK-0000SD-8e; Fri, 22 Sep 2023 10:38:28 +0000
Received: by outflank-mailman (input) for mailman id 606829;
 Fri, 22 Sep 2023 10:38:26 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjdYI-0000S3-7r; Fri, 22 Sep 2023 10:38:26 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjdYH-0006Ib-TE; Fri, 22 Sep 2023 10:38:25 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjdYH-0006fv-Ch; Fri, 22 Sep 2023 10:38:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjdYH-0000mG-CI; Fri, 22 Sep 2023 10:38:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=3Wu2OmCPLUHcat8C7mcGO3xbXBTRDUVP2VqJTX3Z4oM=; b=IK5YtTT1x/Xwr/mDPejTC9f4q5
	ylRCyZJDrA4f2F+aHqF6iwxPpOxNr1vIw460A97CG9x/XKemTioEYJ+F3nKZw9RcqM427BCUgx9o8
	KcubICpLmc2+wlXFx7dAMZAGfZmONSw33y3g7IMqnuoepkMSWZ4jA8fysdOx6hHWMjsU=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183113-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183113: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=405cff8491001179eeef2444358d15759912644d
X-Osstest-Versions-That:
    xen=39113a8a23fb932b1de81ac83463c16af98d533d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 22 Sep 2023 10:38:25 +0000

flight 183113 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183113/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  405cff8491001179eeef2444358d15759912644d
baseline version:
 xen                  39113a8a23fb932b1de81ac83463c16af98d533d

Last test of basis   183104  2023-09-21 11:00:26 Z    0 days
Testing same since   183113  2023-09-22 08:02:16 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Henry Wang <Henry.Wang@arm.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   39113a8a23..405cff8491  405cff8491001179eeef2444358d15759912644d -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 12:15:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 12:15:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606850.944892 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjf3f-0006Y3-HD; Fri, 22 Sep 2023 12:14:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606850.944892; Fri, 22 Sep 2023 12:14:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjf3f-0006Xw-ES; Fri, 22 Sep 2023 12:14:55 +0000
Received: by outflank-mailman (input) for mailman id 606850;
 Fri, 22 Sep 2023 12:14:55 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Esjf=FG=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qjf3f-0006Xq-2N
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 12:14:55 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a260fbc2-5941-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 14:14:52 +0200 (CEST)
Received: from [192.168.1.229] (93-36-216-194.ip62.fastwebnet.it
 [93.36.216.194])
 by support.bugseng.com (Postfix) with ESMTPSA id 397024EE0739;
 Fri, 22 Sep 2023 14:14:52 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a260fbc2-5941-11ee-9b0d-b553b5be7939
Message-ID: <8e3a44d4-e8ba-1750-4602-ca5e510a043e@bugseng.com>
Date: Fri, 22 Sep 2023 14:14:51 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH] xen/emul-i8254: address a violation of MISRA C:2012
 Rule 8.3
Content-Language: en-US, it
To: Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <be245ab9b3805cdb1ba93695b95eeab24d432d6a.1695308350.git.federico.serafini@bugseng.com>
 <0801b6f4-85d8-d10b-1f03-18201641e8f2@suse.com>
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <0801b6f4-85d8-d10b-1f03-18201641e8f2@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 22/09/23 10:29, Jan Beulich wrote:
> On 21.09.2023 17:05, Federico Serafini wrote:
>> Make function declaration and definition consistent.
>> No fuctional change.
>>
>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>> ---
>>   xen/arch/x86/emul-i8254.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/xen/arch/x86/emul-i8254.c b/xen/arch/x86/emul-i8254.c
>> index 41ec4a1ef1..c48a3606a2 100644
>> --- a/xen/arch/x86/emul-i8254.c
>> +++ b/xen/arch/x86/emul-i8254.c
>> @@ -572,7 +572,7 @@ static uint32_t speaker_ioport_read(
>>   }
>>   
>>   static int cf_check handle_speaker_io(
>> -    int dir, unsigned int port, uint32_t bytes, uint32_t *val)
>> +    int dir, unsigned int port, unsigned int bytes, uint32_t *val)
>>   {
>>       struct PITState *vpit = vcpu_vpit(current);
>>   
> 
> While okay-ish, could I talk you into addressing the problem at its root,
> by eliminating the two forward declarations? Afaict all it takes is to
> move pit_init() down past the two functions it takes the address of. (Of
> course at that point it may want considering whether to keep
> pit_{,de}init() and pit_reset() close together.)
> 
> Jan
>

It seems to me a good alternative, I'll send a v2.

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 12:16:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 12:16:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606856.944903 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjf4i-00074B-Pw; Fri, 22 Sep 2023 12:16:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606856.944903; Fri, 22 Sep 2023 12:16:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjf4i-000744-N1; Fri, 22 Sep 2023 12:16:00 +0000
Received: by outflank-mailman (input) for mailman id 606856;
 Fri, 22 Sep 2023 12:15:59 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjf4h-00073q-Dn; Fri, 22 Sep 2023 12:15:59 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjf4h-0000Jz-6Q; Fri, 22 Sep 2023 12:15:59 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjf4g-0000eZ-RJ; Fri, 22 Sep 2023 12:15:58 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjf4g-0004O7-Qq; Fri, 22 Sep 2023 12:15:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=rN7HuB/URZlc9wem+3TgD+A3TzDSp7M1nzJSTQLcJD0=; b=XSnGAX/ZlUUEaCBMrImc4Gwt0R
	GkdSLXZhF/XOIRLzmNrmFb6S4d+pE2A7s1IIn/7MxZgIp/vLJMMQuqqVyKOFkISQpfCtlZffCG1Xw
	zhZ57xg9orXXX0olx7+Wucd+OEgVcqUJe9/KoYFBnwsrzgfd7QqKMLTOin+cbwRzEofE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183115-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183115: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=b5003ab72564b51892f4c933eb39d7d6083f3824
X-Osstest-Versions-That:
    ovmf=28a267af4024c329e58121ccd9bf5f4f7aabc0f4
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 22 Sep 2023 12:15:58 +0000

flight 183115 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183115/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 b5003ab72564b51892f4c933eb39d7d6083f3824
baseline version:
 ovmf                 28a267af4024c329e58121ccd9bf5f4f7aabc0f4

Last test of basis   183114  2023-09-22 08:40:58 Z    0 days
Testing same since   183115  2023-09-22 10:43:46 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jeff Brasen <jbrasen@nvidia.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   28a267af40..b5003ab725  b5003ab72564b51892f4c933eb39d7d6083f3824 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 12:21:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 12:21:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606865.944913 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjf9k-0000UA-Dt; Fri, 22 Sep 2023 12:21:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606865.944913; Fri, 22 Sep 2023 12:21:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjf9k-0000U3-BK; Fri, 22 Sep 2023 12:21:12 +0000
Received: by outflank-mailman (input) for mailman id 606865;
 Fri, 22 Sep 2023 12:21:11 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PcWe=FG=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qjf9j-0000Tx-Ny
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 12:21:11 +0000
Received: from mail-lj1-x22d.google.com (mail-lj1-x22d.google.com
 [2a00:1450:4864:20::22d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 82cff504-5942-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 14:21:09 +0200 (CEST)
Received: by mail-lj1-x22d.google.com with SMTP id
 38308e7fff4ca-2c131ddfeb8so25504981fa.3
 for <xen-devel@lists.xenproject.org>; Fri, 22 Sep 2023 05:21:09 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 82cff504-5942-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695385269; x=1695990069; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=SzuBbOezhsINIJFbS7DgCqRwOk+Ahx4Okjk5opUgxKY=;
        b=f2iaues+qjHSrjl+TBpM2U0Xn0fYgoGBR4aYGzJdsnUhA8AKknOscHyZpPy1ubMG/i
         A5Ec7H5JV0DDj82uaEZR75CZz67y2U8TxBtlHGfib4ofVABvb7hxc9IS8ztZ2iIpfJvY
         sl9lD2CtsdTkHAA647lsmD3AoImQJvtTsXTMg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695385269; x=1695990069;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=SzuBbOezhsINIJFbS7DgCqRwOk+Ahx4Okjk5opUgxKY=;
        b=T85cgOZhxVGnk+QojWwsBGw69OZIIjs4NnHf00Oqou5slvbNrEuifyd+ChxM+s8wbF
         imlaVjtyVwkunpsQw0pAVDhP08QT6LD7uMrmcaZpDo496bzgBYIS4Ii1kRLmGh6KY4oE
         Pw/NCdmgc0RsGsBO1FmbWqIoKGM/1d6jwmOtPPMuDBNYxtIssKrwGy7CKfijqpd9ob6h
         ajAk12mbu4y6MC1Y/hgWR3FNCtCCQzZgTmxqdvreHbhIrn3pige0/KezHJGIBRbE6Mtc
         4ki2JyG/gFbIur1hd4x9TqSpBH9uuB7VCnxXKbirdgFvKgppV6cZShRMlAo+pN4CBpym
         DpDQ==
X-Gm-Message-State: AOJu0YzSs7xlqweQR1yZ+qtiDTuMBlHy0NwWrfiUcsdGJMJk2URVTFH5
	isRosZ21ybA+dMQCwPK+UIydJdjyQMvrqN4ld7v1uA==
X-Google-Smtp-Source: AGHT+IGFppNgEnTHRj7loteC6lPmp0SifWIVALfbafZiO4PclAlB6SAHoV4ameJYKRF/fRvU64XoIyHX4lb+BSmePvY=
X-Received: by 2002:a2e:8683:0:b0:2ba:6519:c50f with SMTP id
 l3-20020a2e8683000000b002ba6519c50fmr7127352lji.52.1695385268656; Fri, 22 Sep
 2023 05:21:08 -0700 (PDT)
MIME-Version: 1.0
References: <20230921122352.2307574-1-george.dunlap@cloud.com> <9456c563-dfbb-4592-a4cb-c11b75f1c27f@suse.com>
In-Reply-To: <9456c563-dfbb-4592-a4cb-c11b75f1c27f@suse.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 22 Sep 2023 13:20:57 +0100
Message-ID: <CA+zSX=aCyQg+R09_zw2EwcLCtMLOFCqQYejmP-aWXficZ-okdg@mail.gmail.com>
Subject: Re: [PATCH v2 1/2] credit: Limit load balancing to once per millisecond
To: Juergen Gross <jgross@suse.com>
Cc: xen-devel@lists.xenproject.org, Dario Faggioli <dfaggioli@suse.com>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
	Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 21, 2023 at 2:12=E2=80=AFPM Juergen Gross <jgross@suse.com> wro=
te:
>
> On 21.09.23 14:23, George Dunlap wrote:
> > The credit scheduler tries as hard as it can to ensure that it always
> > runs scheduling units with positive credit (PRI_TS_UNDER) before
> > running those with negative credit (PRI_TS_OVER).  If the next
> > runnable scheduling unit is of priority OVER, it will always run the
> > load balancer, which will scour the system looking for another
> > scheduling unit of the UNDER priority.
> >
> > Unfortunately, as the number of cores on a system has grown, the cost
> > of the work-stealing algorithm has dramatically increased; a recent
> > trace on a system with 128 cores showed this taking over 50
> > microseconds.
> >
> > Add a parameter, load_balance_ratelimit, to limit the frequency of
> > load balance operations on a given pcpu.  Default this to 1
> > millisecond.
> >
> > Invert the load balancing conditional to make it more clear, and line
> > up more closely with the comment above it.
> >
> > Overall it might be cleaner to have the last_load_balance checking
> > happen inside csched_load_balance(), but that would require either
> > passing both now and spc into the function, or looking them up again;
> > both of which seemed to be worse than simply checking and setting the
> > values before calling it.
> >
> > On a system with a vcpu:pcpu ratio of 2:1, running Windows guests
> > (which will end up calling YIELD during spinlock contention), this
> > patch increased performance significantly.
> >
> > Signed-off-by: George Dunlap <george.dunlap@cloud.com>
> > ---
> > Changes since v1:
> > - Fix editing mistake in commit message
> > - Improve documentation
> > - global var is __ro_after_init
> > - Remove sysctl, as it's not used.  Define max value in credit.c.
> > - Fix some style issues
> > - Move comment tweak to the right patch
> > - In the event that the commandline-parameter value is too high, clip
> >    to the maximum value rather than setting to the default.
> >
> > CC: Dario Faggioli <dfaggioli@suse.com>
> > CC: Andrew Cooper <andrew.cooper3@citrix.com>
> > CC: George Dunlap <george.dunlap@citrix.com>
> > CC: Jan Beulich <jbeulich@suse.com>
> > CC: Julien Grall <julien@xen.org>
> > CC: Stefano Stabellini <sstabellini@kernel.org>
> > CC: Wei Liu <wl@xen.org>
> > ---
> >   docs/misc/xen-command-line.pandoc |  8 ++++++
> >   xen/common/sched/credit.c         | 47 +++++++++++++++++++++++++-----=
-
> >   2 files changed, 46 insertions(+), 9 deletions(-)
> >
> > diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-=
line.pandoc
> > index f88e6a70ae..9c3c72a7f9 100644
> > --- a/docs/misc/xen-command-line.pandoc
> > +++ b/docs/misc/xen-command-line.pandoc
> > @@ -1884,6 +1884,14 @@ By default, Xen will use the INVPCID instruction=
 for TLB management if
> >   it is available.  This option can be used to cause Xen to fall back t=
o
> >   older mechanisms, which are generally slower.
> >
> > +### load-balance-ratelimit
> > +> `=3D <integer>`
> > +
> > +The minimum interval between load balancing events on a given pcpu, in
> > +microseconds.  A value of '0' will disable rate limiting.  Maximum
> > +value 1 second. At the moment only credit honors this parameter.
> > +Default 1ms.
> > +
> >   ### noirqbalance (x86)
> >   > `=3D <boolean>`
> >
> > diff --git a/xen/common/sched/credit.c b/xen/common/sched/credit.c
> > index f2cd3d9da3..5c06f596d2 100644
> > --- a/xen/common/sched/credit.c
> > +++ b/xen/common/sched/credit.c
> > @@ -50,6 +50,10 @@
> >   #define CSCHED_TICKS_PER_TSLICE     3
> >   /* Default timeslice: 30ms */
> >   #define CSCHED_DEFAULT_TSLICE_MS    30
> > +/* Default load balancing ratelimit: 1ms */
> > +#define CSCHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US 1000
> > +/* Max load balancing ratelimit: 1s */
> > +#define CSCHED_MAX_LOAD_BALANCE_RATELIMIT_US     1000000
> >   #define CSCHED_CREDITS_PER_MSEC     10
> >   /* Never set a timer shorter than this value. */
> >   #define CSCHED_MIN_TIMER            XEN_SYSCTL_SCHED_RATELIMIT_MIN
> > @@ -153,6 +157,7 @@ struct csched_pcpu {
> >
> >       unsigned int idle_bias;
> >       unsigned int nr_runnable;
> > +    s_time_t last_load_balance;
> >
> >       unsigned int tick;
> >       struct timer ticker;
> > @@ -218,7 +223,7 @@ struct csched_private {
> >
> >       /* Period of master and tick in milliseconds */
> >       unsigned int tick_period_us, ticks_per_tslice;
> > -    s_time_t ratelimit, tslice, unit_migr_delay;
> > +    s_time_t ratelimit, tslice, unit_migr_delay, load_balance_ratelimi=
t;
> >
> >       struct list_head active_sdom;
> >       uint32_t weight;
> > @@ -612,6 +617,8 @@ init_pdata(struct csched_private *prv, struct csche=
d_pcpu *spc, int cpu)
> >       BUG_ON(!is_idle_unit(curr_on_cpu(cpu)));
> >       cpumask_set_cpu(cpu, prv->idlers);
> >       spc->nr_runnable =3D 0;
> > +
> > +    spc->last_load_balance =3D NOW();
> >   }
> >
> >   static void cf_check
> > @@ -1676,9 +1683,17 @@ csched_runq_steal(int peer_cpu, int cpu, int pri=
, int balance_step)
> >       return NULL;
> >   }
> >
> > +/*
> > + * Minimum delay, in microseconds, between load balance operations.
> > + * This prevents spending too much time doing load balancing, particul=
arly
> > + * when the system has a high number of YIELDs due to spinlock priorit=
y inversion.
> > + */
> > +static unsigned int __ro_after_init load_balance_ratelimit_us =3D CSCH=
ED_DEFAULT_LOAD_BALANCE_RATELIMIT_US;
> > +integer_param("load-balance-ratelimit", load_balance_ratelimit_us);
> > +
> >   static struct csched_unit *
> >   csched_load_balance(struct csched_private *prv, int cpu,
> > -    struct csched_unit *snext, bool *stolen)
> > +                    struct csched_unit *snext, bool *stolen)
> >   {
> >       const struct cpupool *c =3D get_sched_res(cpu)->cpupool;
> >       struct csched_unit *speer;
> > @@ -1958,15 +1973,19 @@ static void cf_check csched_schedule(
> >           /*
> >            * SMP Load balance:
> >            *
> > -         * If the next highest priority local runnable UNIT has alread=
y eaten
> > -         * through its credits, look on other PCPUs to see if we have =
more
> > -         * urgent work... If not, csched_load_balance() will return sn=
ext, but
> > -         * already removed from the runq.
> > +         * If the next highest priority local runnable UNIT has
> > +         * already eaten through its credits (and we're below the
> > +         * balancing ratelimit), look on other PCPUs to see if we have
> > +         * more urgent work... If we don't, csched_load_balance() will
> > +         * return snext, but already removed from the runq.
> >            */
> > -        if ( snext->pri > CSCHED_PRI_TS_OVER )
> > -            __runq_remove(snext);
> > -        else
> > +        if ( snext->pri <=3D CSCHED_PRI_TS_OVER
> > +             && now - spc->last_load_balance > prv->load_balance_ratel=
imit) {
>
> ^ Just found a style issue (after Andrew pointing out the ones in patch 2=
).

Just checking, you mean the space before the closing `)`?

 -George


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 12:25:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 12:25:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606870.944923 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjfDs-00016x-UT; Fri, 22 Sep 2023 12:25:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606870.944923; Fri, 22 Sep 2023 12:25:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjfDs-00016q-R8; Fri, 22 Sep 2023 12:25:28 +0000
Received: by outflank-mailman (input) for mailman id 606870;
 Fri, 22 Sep 2023 12:25:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=wvYF=FG=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qjfDr-00016j-A2
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 12:25:27 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1bb79b31-5943-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 14:25:26 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 562181FE01;
 Fri, 22 Sep 2023 12:25:25 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 1168413478;
 Fri, 22 Sep 2023 12:25:25 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id ECvRArWHDWVrPAAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 22 Sep 2023 12:25:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1bb79b31-5943-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695385525; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=nhy7j1eTzgmniQer5/IetmxJis4P+4LhDjj6xjCqKZ4=;
	b=O6bc8/3K8Qedv+Mj2zlA+/Ly8XtEe7RPzT5NKULyatwmDxh8e2ftva+rPLf+PLo2JuINyK
	sERASGD36u/r4tBhwt+LnCHxbwpHuQAWibQQub/s60V34DP+zIK1/BudJnHXlFNFMQbxlj
	nhkH6f0n08RJepyhthw97kaYumMvPkw=
Message-ID: <dcbac05e-ebfb-43b3-8107-d43d3f76df2a@suse.com>
Date: Fri, 22 Sep 2023 14:25:24 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v2 1/2] credit: Limit load balancing to once per
 millisecond
Content-Language: en-US
To: George Dunlap <george.dunlap@cloud.com>
Cc: xen-devel@lists.xenproject.org, Dario Faggioli <dfaggioli@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
 <9456c563-dfbb-4592-a4cb-c11b75f1c27f@suse.com>
 <CA+zSX=aCyQg+R09_zw2EwcLCtMLOFCqQYejmP-aWXficZ-okdg@mail.gmail.com>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <CA+zSX=aCyQg+R09_zw2EwcLCtMLOFCqQYejmP-aWXficZ-okdg@mail.gmail.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------Le40BWuZpRp3Nh1nUZzjUU2A"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------Le40BWuZpRp3Nh1nUZzjUU2A
Content-Type: multipart/mixed; boundary="------------M75wwt7tL7tOJdonyyXNrj67";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: George Dunlap <george.dunlap@cloud.com>
Cc: xen-devel@lists.xenproject.org, Dario Faggioli <dfaggioli@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
Message-ID: <dcbac05e-ebfb-43b3-8107-d43d3f76df2a@suse.com>
Subject: Re: [PATCH v2 1/2] credit: Limit load balancing to once per
 millisecond
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
 <9456c563-dfbb-4592-a4cb-c11b75f1c27f@suse.com>
 <CA+zSX=aCyQg+R09_zw2EwcLCtMLOFCqQYejmP-aWXficZ-okdg@mail.gmail.com>
In-Reply-To: <CA+zSX=aCyQg+R09_zw2EwcLCtMLOFCqQYejmP-aWXficZ-okdg@mail.gmail.com>

--------------M75wwt7tL7tOJdonyyXNrj67
Content-Type: multipart/mixed; boundary="------------MeSXn0Ef0v7EhH5g8uJVCUHu"

--------------MeSXn0Ef0v7EhH5g8uJVCUHu
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjIuMDkuMjMgMTQ6MjAsIEdlb3JnZSBEdW5sYXAgd3JvdGU6DQo+IE9uIFRodSwgU2Vw
IDIxLCAyMDIzIGF0IDI6MTLigK9QTSBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+
IHdyb3RlOg0KPj4NCj4+IE9uIDIxLjA5LjIzIDE0OjIzLCBHZW9yZ2UgRHVubGFwIHdyb3Rl
Og0KPj4+IFRoZSBjcmVkaXQgc2NoZWR1bGVyIHRyaWVzIGFzIGhhcmQgYXMgaXQgY2FuIHRv
IGVuc3VyZSB0aGF0IGl0IGFsd2F5cw0KPj4+IHJ1bnMgc2NoZWR1bGluZyB1bml0cyB3aXRo
IHBvc2l0aXZlIGNyZWRpdCAoUFJJX1RTX1VOREVSKSBiZWZvcmUNCj4+PiBydW5uaW5nIHRo
b3NlIHdpdGggbmVnYXRpdmUgY3JlZGl0IChQUklfVFNfT1ZFUikuICBJZiB0aGUgbmV4dA0K
Pj4+IHJ1bm5hYmxlIHNjaGVkdWxpbmcgdW5pdCBpcyBvZiBwcmlvcml0eSBPVkVSLCBpdCB3
aWxsIGFsd2F5cyBydW4gdGhlDQo+Pj4gbG9hZCBiYWxhbmNlciwgd2hpY2ggd2lsbCBzY291
ciB0aGUgc3lzdGVtIGxvb2tpbmcgZm9yIGFub3RoZXINCj4+PiBzY2hlZHVsaW5nIHVuaXQg
b2YgdGhlIFVOREVSIHByaW9yaXR5Lg0KPj4+DQo+Pj4gVW5mb3J0dW5hdGVseSwgYXMgdGhl
IG51bWJlciBvZiBjb3JlcyBvbiBhIHN5c3RlbSBoYXMgZ3Jvd24sIHRoZSBjb3N0DQo+Pj4g
b2YgdGhlIHdvcmstc3RlYWxpbmcgYWxnb3JpdGhtIGhhcyBkcmFtYXRpY2FsbHkgaW5jcmVh
c2VkOyBhIHJlY2VudA0KPj4+IHRyYWNlIG9uIGEgc3lzdGVtIHdpdGggMTI4IGNvcmVzIHNo
b3dlZCB0aGlzIHRha2luZyBvdmVyIDUwDQo+Pj4gbWljcm9zZWNvbmRzLg0KPj4+DQo+Pj4g
QWRkIGEgcGFyYW1ldGVyLCBsb2FkX2JhbGFuY2VfcmF0ZWxpbWl0LCB0byBsaW1pdCB0aGUg
ZnJlcXVlbmN5IG9mDQo+Pj4gbG9hZCBiYWxhbmNlIG9wZXJhdGlvbnMgb24gYSBnaXZlbiBw
Y3B1LiAgRGVmYXVsdCB0aGlzIHRvIDENCj4+PiBtaWxsaXNlY29uZC4NCj4+Pg0KPj4+IElu
dmVydCB0aGUgbG9hZCBiYWxhbmNpbmcgY29uZGl0aW9uYWwgdG8gbWFrZSBpdCBtb3JlIGNs
ZWFyLCBhbmQgbGluZQ0KPj4+IHVwIG1vcmUgY2xvc2VseSB3aXRoIHRoZSBjb21tZW50IGFi
b3ZlIGl0Lg0KPj4+DQo+Pj4gT3ZlcmFsbCBpdCBtaWdodCBiZSBjbGVhbmVyIHRvIGhhdmUg
dGhlIGxhc3RfbG9hZF9iYWxhbmNlIGNoZWNraW5nDQo+Pj4gaGFwcGVuIGluc2lkZSBjc2No
ZWRfbG9hZF9iYWxhbmNlKCksIGJ1dCB0aGF0IHdvdWxkIHJlcXVpcmUgZWl0aGVyDQo+Pj4g
cGFzc2luZyBib3RoIG5vdyBhbmQgc3BjIGludG8gdGhlIGZ1bmN0aW9uLCBvciBsb29raW5n
IHRoZW0gdXAgYWdhaW47DQo+Pj4gYm90aCBvZiB3aGljaCBzZWVtZWQgdG8gYmUgd29yc2Ug
dGhhbiBzaW1wbHkgY2hlY2tpbmcgYW5kIHNldHRpbmcgdGhlDQo+Pj4gdmFsdWVzIGJlZm9y
ZSBjYWxsaW5nIGl0Lg0KPj4+DQo+Pj4gT24gYSBzeXN0ZW0gd2l0aCBhIHZjcHU6cGNwdSBy
YXRpbyBvZiAyOjEsIHJ1bm5pbmcgV2luZG93cyBndWVzdHMNCj4+PiAod2hpY2ggd2lsbCBl
bmQgdXAgY2FsbGluZyBZSUVMRCBkdXJpbmcgc3BpbmxvY2sgY29udGVudGlvbiksIHRoaXMN
Cj4+PiBwYXRjaCBpbmNyZWFzZWQgcGVyZm9ybWFuY2Ugc2lnbmlmaWNhbnRseS4NCj4+Pg0K
Pj4+IFNpZ25lZC1vZmYtYnk6IEdlb3JnZSBEdW5sYXAgPGdlb3JnZS5kdW5sYXBAY2xvdWQu
Y29tPg0KPj4+IC0tLQ0KPj4+IENoYW5nZXMgc2luY2UgdjE6DQo+Pj4gLSBGaXggZWRpdGlu
ZyBtaXN0YWtlIGluIGNvbW1pdCBtZXNzYWdlDQo+Pj4gLSBJbXByb3ZlIGRvY3VtZW50YXRp
b24NCj4+PiAtIGdsb2JhbCB2YXIgaXMgX19yb19hZnRlcl9pbml0DQo+Pj4gLSBSZW1vdmUg
c3lzY3RsLCBhcyBpdCdzIG5vdCB1c2VkLiAgRGVmaW5lIG1heCB2YWx1ZSBpbiBjcmVkaXQu
Yy4NCj4+PiAtIEZpeCBzb21lIHN0eWxlIGlzc3Vlcw0KPj4+IC0gTW92ZSBjb21tZW50IHR3
ZWFrIHRvIHRoZSByaWdodCBwYXRjaA0KPj4+IC0gSW4gdGhlIGV2ZW50IHRoYXQgdGhlIGNv
bW1hbmRsaW5lLXBhcmFtZXRlciB2YWx1ZSBpcyB0b28gaGlnaCwgY2xpcA0KPj4+ICAgICB0
byB0aGUgbWF4aW11bSB2YWx1ZSByYXRoZXIgdGhhbiBzZXR0aW5nIHRvIHRoZSBkZWZhdWx0
Lg0KPj4+DQo+Pj4gQ0M6IERhcmlvIEZhZ2dpb2xpIDxkZmFnZ2lvbGlAc3VzZS5jb20+DQo+
Pj4gQ0M6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+DQo+Pj4g
Q0M6IEdlb3JnZSBEdW5sYXAgPGdlb3JnZS5kdW5sYXBAY2l0cml4LmNvbT4NCj4+PiBDQzog
SmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPg0KPj4+IENDOiBKdWxpZW4gR3JhbGwg
PGp1bGllbkB4ZW4ub3JnPg0KPj4+IENDOiBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxs
aW5pQGtlcm5lbC5vcmc+DQo+Pj4gQ0M6IFdlaSBMaXUgPHdsQHhlbi5vcmc+DQo+Pj4gLS0t
DQo+Pj4gICAgZG9jcy9taXNjL3hlbi1jb21tYW5kLWxpbmUucGFuZG9jIHwgIDggKysrKysr
DQo+Pj4gICAgeGVuL2NvbW1vbi9zY2hlZC9jcmVkaXQuYyAgICAgICAgIHwgNDcgKysrKysr
KysrKysrKysrKysrKysrKysrKy0tLS0tLQ0KPj4+ICAgIDIgZmlsZXMgY2hhbmdlZCwgNDYg
aW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkNCj4+Pg0KPj4+IGRpZmYgLS1naXQgYS9k
b2NzL21pc2MveGVuLWNvbW1hbmQtbGluZS5wYW5kb2MgYi9kb2NzL21pc2MveGVuLWNvbW1h
bmQtbGluZS5wYW5kb2MNCj4+PiBpbmRleCBmODhlNmE3MGFlLi45YzNjNzJhN2Y5IDEwMDY0
NA0KPj4+IC0tLSBhL2RvY3MvbWlzYy94ZW4tY29tbWFuZC1saW5lLnBhbmRvYw0KPj4+ICsr
KyBiL2RvY3MvbWlzYy94ZW4tY29tbWFuZC1saW5lLnBhbmRvYw0KPj4+IEBAIC0xODg0LDYg
KzE4ODQsMTQgQEAgQnkgZGVmYXVsdCwgWGVuIHdpbGwgdXNlIHRoZSBJTlZQQ0lEIGluc3Ry
dWN0aW9uIGZvciBUTEIgbWFuYWdlbWVudCBpZg0KPj4+ICAgIGl0IGlzIGF2YWlsYWJsZS4g
IFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIHRvIGNhdXNlIFhlbiB0byBmYWxsIGJhY2sgdG8N
Cj4+PiAgICBvbGRlciBtZWNoYW5pc21zLCB3aGljaCBhcmUgZ2VuZXJhbGx5IHNsb3dlci4N
Cj4+Pg0KPj4+ICsjIyMgbG9hZC1iYWxhbmNlLXJhdGVsaW1pdA0KPj4+ICs+IGA9IDxpbnRl
Z2VyPmANCj4+PiArDQo+Pj4gK1RoZSBtaW5pbXVtIGludGVydmFsIGJldHdlZW4gbG9hZCBi
YWxhbmNpbmcgZXZlbnRzIG9uIGEgZ2l2ZW4gcGNwdSwgaW4NCj4+PiArbWljcm9zZWNvbmRz
LiAgQSB2YWx1ZSBvZiAnMCcgd2lsbCBkaXNhYmxlIHJhdGUgbGltaXRpbmcuICBNYXhpbXVt
DQo+Pj4gK3ZhbHVlIDEgc2Vjb25kLiBBdCB0aGUgbW9tZW50IG9ubHkgY3JlZGl0IGhvbm9y
cyB0aGlzIHBhcmFtZXRlci4NCj4+PiArRGVmYXVsdCAxbXMuDQo+Pj4gKw0KPj4+ICAgICMj
IyBub2lycWJhbGFuY2UgKHg4NikNCj4+PiAgICA+IGA9IDxib29sZWFuPmANCj4+Pg0KPj4+
IGRpZmYgLS1naXQgYS94ZW4vY29tbW9uL3NjaGVkL2NyZWRpdC5jIGIveGVuL2NvbW1vbi9z
Y2hlZC9jcmVkaXQuYw0KPj4+IGluZGV4IGYyY2QzZDlkYTMuLjVjMDZmNTk2ZDIgMTAwNjQ0
DQo+Pj4gLS0tIGEveGVuL2NvbW1vbi9zY2hlZC9jcmVkaXQuYw0KPj4+ICsrKyBiL3hlbi9j
b21tb24vc2NoZWQvY3JlZGl0LmMNCj4+PiBAQCAtNTAsNiArNTAsMTAgQEANCj4+PiAgICAj
ZGVmaW5lIENTQ0hFRF9USUNLU19QRVJfVFNMSUNFICAgICAzDQo+Pj4gICAgLyogRGVmYXVs
dCB0aW1lc2xpY2U6IDMwbXMgKi8NCj4+PiAgICAjZGVmaW5lIENTQ0hFRF9ERUZBVUxUX1RT
TElDRV9NUyAgICAzMA0KPj4+ICsvKiBEZWZhdWx0IGxvYWQgYmFsYW5jaW5nIHJhdGVsaW1p
dDogMW1zICovDQo+Pj4gKyNkZWZpbmUgQ1NDSEVEX0RFRkFVTFRfTE9BRF9CQUxBTkNFX1JB
VEVMSU1JVF9VUyAxMDAwDQo+Pj4gKy8qIE1heCBsb2FkIGJhbGFuY2luZyByYXRlbGltaXQ6
IDFzICovDQo+Pj4gKyNkZWZpbmUgQ1NDSEVEX01BWF9MT0FEX0JBTEFOQ0VfUkFURUxJTUlU
X1VTICAgICAxMDAwMDAwDQo+Pj4gICAgI2RlZmluZSBDU0NIRURfQ1JFRElUU19QRVJfTVNF
QyAgICAgMTANCj4+PiAgICAvKiBOZXZlciBzZXQgYSB0aW1lciBzaG9ydGVyIHRoYW4gdGhp
cyB2YWx1ZS4gKi8NCj4+PiAgICAjZGVmaW5lIENTQ0hFRF9NSU5fVElNRVIgICAgICAgICAg
ICBYRU5fU1lTQ1RMX1NDSEVEX1JBVEVMSU1JVF9NSU4NCj4+PiBAQCAtMTUzLDYgKzE1Nyw3
IEBAIHN0cnVjdCBjc2NoZWRfcGNwdSB7DQo+Pj4NCj4+PiAgICAgICAgdW5zaWduZWQgaW50
IGlkbGVfYmlhczsNCj4+PiAgICAgICAgdW5zaWduZWQgaW50IG5yX3J1bm5hYmxlOw0KPj4+
ICsgICAgc190aW1lX3QgbGFzdF9sb2FkX2JhbGFuY2U7DQo+Pj4NCj4+PiAgICAgICAgdW5z
aWduZWQgaW50IHRpY2s7DQo+Pj4gICAgICAgIHN0cnVjdCB0aW1lciB0aWNrZXI7DQo+Pj4g
QEAgLTIxOCw3ICsyMjMsNyBAQCBzdHJ1Y3QgY3NjaGVkX3ByaXZhdGUgew0KPj4+DQo+Pj4g
ICAgICAgIC8qIFBlcmlvZCBvZiBtYXN0ZXIgYW5kIHRpY2sgaW4gbWlsbGlzZWNvbmRzICov
DQo+Pj4gICAgICAgIHVuc2lnbmVkIGludCB0aWNrX3BlcmlvZF91cywgdGlja3NfcGVyX3Rz
bGljZTsNCj4+PiAtICAgIHNfdGltZV90IHJhdGVsaW1pdCwgdHNsaWNlLCB1bml0X21pZ3Jf
ZGVsYXk7DQo+Pj4gKyAgICBzX3RpbWVfdCByYXRlbGltaXQsIHRzbGljZSwgdW5pdF9taWdy
X2RlbGF5LCBsb2FkX2JhbGFuY2VfcmF0ZWxpbWl0Ow0KPj4+DQo+Pj4gICAgICAgIHN0cnVj
dCBsaXN0X2hlYWQgYWN0aXZlX3Nkb207DQo+Pj4gICAgICAgIHVpbnQzMl90IHdlaWdodDsN
Cj4+PiBAQCAtNjEyLDYgKzYxNyw4IEBAIGluaXRfcGRhdGEoc3RydWN0IGNzY2hlZF9wcml2
YXRlICpwcnYsIHN0cnVjdCBjc2NoZWRfcGNwdSAqc3BjLCBpbnQgY3B1KQ0KPj4+ICAgICAg
ICBCVUdfT04oIWlzX2lkbGVfdW5pdChjdXJyX29uX2NwdShjcHUpKSk7DQo+Pj4gICAgICAg
IGNwdW1hc2tfc2V0X2NwdShjcHUsIHBydi0+aWRsZXJzKTsNCj4+PiAgICAgICAgc3BjLT5u
cl9ydW5uYWJsZSA9IDA7DQo+Pj4gKw0KPj4+ICsgICAgc3BjLT5sYXN0X2xvYWRfYmFsYW5j
ZSA9IE5PVygpOw0KPj4+ICAgIH0NCj4+Pg0KPj4+ICAgIHN0YXRpYyB2b2lkIGNmX2NoZWNr
DQo+Pj4gQEAgLTE2NzYsOSArMTY4MywxNyBAQCBjc2NoZWRfcnVucV9zdGVhbChpbnQgcGVl
cl9jcHUsIGludCBjcHUsIGludCBwcmksIGludCBiYWxhbmNlX3N0ZXApDQo+Pj4gICAgICAg
IHJldHVybiBOVUxMOw0KPj4+ICAgIH0NCj4+Pg0KPj4+ICsvKg0KPj4+ICsgKiBNaW5pbXVt
IGRlbGF5LCBpbiBtaWNyb3NlY29uZHMsIGJldHdlZW4gbG9hZCBiYWxhbmNlIG9wZXJhdGlv
bnMuDQo+Pj4gKyAqIFRoaXMgcHJldmVudHMgc3BlbmRpbmcgdG9vIG11Y2ggdGltZSBkb2lu
ZyBsb2FkIGJhbGFuY2luZywgcGFydGljdWxhcmx5DQo+Pj4gKyAqIHdoZW4gdGhlIHN5c3Rl
bSBoYXMgYSBoaWdoIG51bWJlciBvZiBZSUVMRHMgZHVlIHRvIHNwaW5sb2NrIHByaW9yaXR5
IGludmVyc2lvbi4NCj4+PiArICovDQo+Pj4gK3N0YXRpYyB1bnNpZ25lZCBpbnQgX19yb19h
ZnRlcl9pbml0IGxvYWRfYmFsYW5jZV9yYXRlbGltaXRfdXMgPSBDU0NIRURfREVGQVVMVF9M
T0FEX0JBTEFOQ0VfUkFURUxJTUlUX1VTOw0KPj4+ICtpbnRlZ2VyX3BhcmFtKCJsb2FkLWJh
bGFuY2UtcmF0ZWxpbWl0IiwgbG9hZF9iYWxhbmNlX3JhdGVsaW1pdF91cyk7DQo+Pj4gKw0K
Pj4+ICAgIHN0YXRpYyBzdHJ1Y3QgY3NjaGVkX3VuaXQgKg0KPj4+ICAgIGNzY2hlZF9sb2Fk
X2JhbGFuY2Uoc3RydWN0IGNzY2hlZF9wcml2YXRlICpwcnYsIGludCBjcHUsDQo+Pj4gLSAg
ICBzdHJ1Y3QgY3NjaGVkX3VuaXQgKnNuZXh0LCBib29sICpzdG9sZW4pDQo+Pj4gKyAgICAg
ICAgICAgICAgICAgICAgc3RydWN0IGNzY2hlZF91bml0ICpzbmV4dCwgYm9vbCAqc3RvbGVu
KQ0KPj4+ICAgIHsNCj4+PiAgICAgICAgY29uc3Qgc3RydWN0IGNwdXBvb2wgKmMgPSBnZXRf
c2NoZWRfcmVzKGNwdSktPmNwdXBvb2w7DQo+Pj4gICAgICAgIHN0cnVjdCBjc2NoZWRfdW5p
dCAqc3BlZXI7DQo+Pj4gQEAgLTE5NTgsMTUgKzE5NzMsMTkgQEAgc3RhdGljIHZvaWQgY2Zf
Y2hlY2sgY3NjaGVkX3NjaGVkdWxlKA0KPj4+ICAgICAgICAgICAgLyoNCj4+PiAgICAgICAg
ICAgICAqIFNNUCBMb2FkIGJhbGFuY2U6DQo+Pj4gICAgICAgICAgICAgKg0KPj4+IC0gICAg
ICAgICAqIElmIHRoZSBuZXh0IGhpZ2hlc3QgcHJpb3JpdHkgbG9jYWwgcnVubmFibGUgVU5J
VCBoYXMgYWxyZWFkeSBlYXRlbg0KPj4+IC0gICAgICAgICAqIHRocm91Z2ggaXRzIGNyZWRp
dHMsIGxvb2sgb24gb3RoZXIgUENQVXMgdG8gc2VlIGlmIHdlIGhhdmUgbW9yZQ0KPj4+IC0g
ICAgICAgICAqIHVyZ2VudCB3b3JrLi4uIElmIG5vdCwgY3NjaGVkX2xvYWRfYmFsYW5jZSgp
IHdpbGwgcmV0dXJuIHNuZXh0LCBidXQNCj4+PiAtICAgICAgICAgKiBhbHJlYWR5IHJlbW92
ZWQgZnJvbSB0aGUgcnVucS4NCj4+PiArICAgICAgICAgKiBJZiB0aGUgbmV4dCBoaWdoZXN0
IHByaW9yaXR5IGxvY2FsIHJ1bm5hYmxlIFVOSVQgaGFzDQo+Pj4gKyAgICAgICAgICogYWxy
ZWFkeSBlYXRlbiB0aHJvdWdoIGl0cyBjcmVkaXRzIChhbmQgd2UncmUgYmVsb3cgdGhlDQo+
Pj4gKyAgICAgICAgICogYmFsYW5jaW5nIHJhdGVsaW1pdCksIGxvb2sgb24gb3RoZXIgUENQ
VXMgdG8gc2VlIGlmIHdlIGhhdmUNCj4+PiArICAgICAgICAgKiBtb3JlIHVyZ2VudCB3b3Jr
Li4uIElmIHdlIGRvbid0LCBjc2NoZWRfbG9hZF9iYWxhbmNlKCkgd2lsbA0KPj4+ICsgICAg
ICAgICAqIHJldHVybiBzbmV4dCwgYnV0IGFscmVhZHkgcmVtb3ZlZCBmcm9tIHRoZSBydW5x
Lg0KPj4+ICAgICAgICAgICAgICovDQo+Pj4gLSAgICAgICAgaWYgKCBzbmV4dC0+cHJpID4g
Q1NDSEVEX1BSSV9UU19PVkVSICkNCj4+PiAtICAgICAgICAgICAgX19ydW5xX3JlbW92ZShz
bmV4dCk7DQo+Pj4gLSAgICAgICAgZWxzZQ0KPj4+ICsgICAgICAgIGlmICggc25leHQtPnBy
aSA8PSBDU0NIRURfUFJJX1RTX09WRVINCj4+PiArICAgICAgICAgICAgICYmIG5vdyAtIHNw
Yy0+bGFzdF9sb2FkX2JhbGFuY2UgPiBwcnYtPmxvYWRfYmFsYW5jZV9yYXRlbGltaXQpIHsN
Cj4+DQo+PiBeIEp1c3QgZm91bmQgYSBzdHlsZSBpc3N1ZSAoYWZ0ZXIgQW5kcmV3IHBvaW50
aW5nIG91dCB0aGUgb25lcyBpbiBwYXRjaCAyKS4NCj4gDQo+IEp1c3QgY2hlY2tpbmcsIHlv
dSBtZWFuIHRoZSBzcGFjZSBiZWZvcmUgdGhlIGNsb3NpbmcgYClgPw0KDQpZZXMuDQoNCg0K
SnVlcmdlbg0KDQo=
--------------MeSXn0Ef0v7EhH5g8uJVCUHu
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------MeSXn0Ef0v7EhH5g8uJVCUHu--

--------------M75wwt7tL7tOJdonyyXNrj67--

--------------Le40BWuZpRp3Nh1nUZzjUU2A
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUNh7QFAwAAAAAACgkQsN6d1ii/Ey/z
eQf8Cj0sZRDrMJ4K6g2j+nOZmu1h5IAyyJIzQ2SncR6WtZXsl3YBWV80GdDreS6/tOiutUCf63pp
zzrLbL1q948vtxBnCaBJ73vJa2iVtLDOdo+m9w5T/jKNz2y9DRn+ebG8WKGPq1h8eSI3Ji6mIBIT
tvSs4CDk+4ymLQP9e2+8beeusPrVYjsl070PMR8h71Gu+rCLvkVECx43TPm6rFAyzWqImYF9O34V
m6UuwERpT4tQf/gUg3P5ktzVGwgEMFiYLdCzYcIbD0Pvul0zQbruV2BuWwKP3hFN9edAhCcAzwst
CmSAfAvs9xeoK0dkZCTAVS40c2Z+JNhHXSxUHPpwUQ==
=BLMh
-----END PGP SIGNATURE-----

--------------Le40BWuZpRp3Nh1nUZzjUU2A--


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 13:24:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 13:24:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606879.944932 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjg94-0001gF-4x; Fri, 22 Sep 2023 13:24:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606879.944932; Fri, 22 Sep 2023 13:24:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjg94-0001g8-28; Fri, 22 Sep 2023 13:24:34 +0000
Received: by outflank-mailman (input) for mailman id 606879;
 Fri, 22 Sep 2023 13:24:33 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjg93-0001fy-0c; Fri, 22 Sep 2023 13:24:33 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjg92-0001ts-R9; Fri, 22 Sep 2023 13:24:32 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjg92-0002LP-7Q; Fri, 22 Sep 2023 13:24:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjg92-0004uh-6t; Fri, 22 Sep 2023 13:24:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Vm0A2v0WbgC9gZbt13/+JkgDXK7kwb47GdxwOs68kCk=; b=6C+cK9qq9NxO58xP3IDwXgEeoP
	Ntjo6ReO2mXn+1yS2UsZKczqdG+cc8eerBNniY5yviUB7kBx69kMqkUJy/fGl/HxDEUl4s68OJTRK
	sNf20NpXZuFOTss6YwHjdfKdyxAEqczcef3d/LrFuR2Nx6r7efIGy89QS4NE9GIwhewQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183116-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183116: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=d09e44e5d8fdfe0a8b8af1ef604dbc699497e11a
X-Osstest-Versions-That:
    xen=405cff8491001179eeef2444358d15759912644d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 22 Sep 2023 13:24:32 +0000

flight 183116 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183116/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  d09e44e5d8fdfe0a8b8af1ef604dbc699497e11a
baseline version:
 xen                  405cff8491001179eeef2444358d15759912644d

Last test of basis   183113  2023-09-22 08:02:16 Z    0 days
Testing same since   183116  2023-09-22 11:00:24 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   405cff8491..d09e44e5d8  d09e44e5d8fdfe0a8b8af1ef604dbc699497e11a -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 13:41:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 13:41:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606886.944943 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjgP2-0004kU-GA; Fri, 22 Sep 2023 13:41:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606886.944943; Fri, 22 Sep 2023 13:41:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjgP2-0004kN-D0; Fri, 22 Sep 2023 13:41:04 +0000
Received: by outflank-mailman (input) for mailman id 606886;
 Fri, 22 Sep 2023 13:41:03 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjgP1-0004kD-Hz; Fri, 22 Sep 2023 13:41:03 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjgP1-0002Jc-B2; Fri, 22 Sep 2023 13:41:03 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjgP0-0002io-Qv; Fri, 22 Sep 2023 13:41:03 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjgP0-00009f-QT; Fri, 22 Sep 2023 13:41:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=qWmtfwMZoVydVKF/joTymN7XET39+fMsTdVW/3yLAMA=; b=NddJJ6i88J6776XJax4eX+8wOv
	q8N62XUchdyCiRWiM30r94dkgRkcCpX0HVoy40JsZBA+qc6O5a7zsMzrQTyXk65j0I6KJqLKEIrkW
	bFJmlsuEWTyciIFugYtLL+SoJX+DP6Mp/vs3h7I7GLbgwT8GmewSf0IqURSwicHsKCTk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183103-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183103: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=932c3c8b4bd5cb7e3a2fe78105a80928307c9858
X-Osstest-Versions-That:
    xen=9b57c800b79b96769ea3dcd6468578fa664d19f9
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 22 Sep 2023 13:41:02 +0000

flight 183103 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183103/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183074
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183085
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183085
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183085
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183085
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183085
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183085
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183085
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183085
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183085
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183085
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183085
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  932c3c8b4bd5cb7e3a2fe78105a80928307c9858
baseline version:
 xen                  9b57c800b79b96769ea3dcd6468578fa664d19f9

Last test of basis   183085  2023-09-20 12:30:19 Z    2 days
Testing same since   183103  2023-09-21 10:53:41 Z    1 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Javi Merino <javi.merino@cloud.com>
  Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
  Roger Pau Monné <roger.pau@citrix.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   9b57c800b7..932c3c8b4b  932c3c8b4bd5cb7e3a2fe78105a80928307c9858 -> master


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 13:50:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 13:50:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606901.944976 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjgXd-0005w9-J1; Fri, 22 Sep 2023 13:49:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606901.944976; Fri, 22 Sep 2023 13:49:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjgXd-0005w2-GI; Fri, 22 Sep 2023 13:49:57 +0000
Received: by outflank-mailman (input) for mailman id 606901;
 Fri, 22 Sep 2023 13:49:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=UQyH=FG=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qjgXc-0005vw-6h
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 13:49:56 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062a.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e9230aa2-594e-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 15:49:55 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM7PR04MB7048.eurprd04.prod.outlook.com (2603:10a6:20b:11a::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Fri, 22 Sep
 2023 13:49:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 13:49:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e9230aa2-594e-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GWseXgAHbxE93V6TDC0z7VfXYDZcslx4fFC3Y5duj5SNiFzf3HEiKJV3i0dYGkNsRsZqAf0qXDpc6daOgK1NvR+joMOcio270i744hYwrUfPV1jlDslYGPjFqqIS3qgc6sYcGF7BKUxjdMs26dfYjmOprzNH3D5R2A9OHWZ4lrS1rV4cYNY4AYcYasbvNQTioTOVFlzYiW+CEtE4REmMh6Y+IASaSdPB7zY/WxVeu5v5V9sxyLLrfJ9jWdG5cdJWW2j73dKrboCX0XXQD3rWrit6mb4JtRfLsl8NsMCo5g/o1lQl4zocayxMffhzyUDeRbxO6qXC+HAsBBPOf+zMtg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ns+rH3fRRXfd/M6YwkHbVDpDhOXYUvOlcZ6sLQnx8xs=;
 b=VWTW3wpLe0mnJuBNK/jQojzvwMhFZq/6t3KTps3z7AxhbVJw+w+zr2siCWGr/YkB/Uv0xXjVb0XX0xGOvxIuUcztpbA0EVCw+QaLADkJ4XsYWWrhkbLIkR6jswgwFTfUuOzHs+oibUR6g+WWs7cVUgkRlFowTJQjzj8K+eSEcisc/BVd6jao5QphG0wkThVDS2CoLJoXYtQr6BWquMnvuN5DqVsfdkYQ9pHk0bDJCu0+g+N2IszA+esf2hbaMqtsuJCKNkQWsm9I+Lwrmnxm33eSRX+Y027JkrsNQIRnjB+Obb2YDrXQXaZ9BioT3b+++nj3loI3StMz4ixPcpapqw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ns+rH3fRRXfd/M6YwkHbVDpDhOXYUvOlcZ6sLQnx8xs=;
 b=qGlZbtR7NdqIeWs/47uAvDG24XIIefu+BJcXx/rV0PgqX9lSkKyXgkJOUjGb7fCRwnWXJYISzQe2vWeqsW5SZynIO/5pHpKbe0NQiGzbFsOYhCktNeF/unVdO0dD727HX879kVjoFywS3zjw0zOsl/QI8gO+L3WuiTzHr9629aTk1YpSzSlW0arHqgquBj5yQaOjJVw/rKss93Vgl7lcNVj6bk8w9l+5WTdS2qqrkYhvzTNpqG3kVnnQNEgVfdbtINLeY95ggfKO9Qq3lXwqtnQVSCcHCMyr5EfBw0ThWApSKERT+D3r47yag9HHsls+ZrnDGGL/rAwHShGQPKE/2g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f82916a5-758a-d1e1-62d1-2fa890c5f99a@suse.com>
Date: Fri, 22 Sep 2023 15:49:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2 1/2] credit: Limit load balancing to once per
 millisecond
Content-Language: en-US
To: George Dunlap <george.dunlap@cloud.com>
Cc: xen-devel@lists.xenproject.org, Dario Faggioli <dfaggioli@suse.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Juergen Gross <jgross@suse.com>
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
 <9456c563-dfbb-4592-a4cb-c11b75f1c27f@suse.com>
 <CA+zSX=aCyQg+R09_zw2EwcLCtMLOFCqQYejmP-aWXficZ-okdg@mail.gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <CA+zSX=aCyQg+R09_zw2EwcLCtMLOFCqQYejmP-aWXficZ-okdg@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0192.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ca::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM7PR04MB7048:EE_
X-MS-Office365-Filtering-Correlation-Id: 44bcbdde-11b8-40b3-60fd-08dbbb72cb1f
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0qguIC7CqnrbvhL4FHN+e2D3bqaysR1XlJ/BN5puatCjf7HHiNEuQxgGKoFk5mwFjTxasllgjvQzzvBveKJQiiG1ITUVSL9Y8JK+H1xXXXLMo1adNK1vFmPw29oPNjrID5sYsuO+fZJP/eBeNN5SuVVwhgeyC/Ems0mNO9geK+etcTILg7oUmTJgOF6fY5dDL0ZkmI5jUk9qrzFmnD1OETncP/V9QjDEu3Kvw60NSWtQ/T5i3NkWLhgRYS+deGjFFTJf5fTfNNh5Y9Ig8L8m5hL04PUmswgnq/cmSIgz6kARpM+723DLzN+wfkmncNA7SeDvNWr8Noqr245cCHZvC+TlnhuaHFUXYNLO9UmMd1Jpk7AhM//buNm4nQY6Dj7LeojCC1JntzKjxWnV5JXswo1hZb8zNXI6olkPNiwa8kCbnHhfkMQnbd4dWSjOgcGdB2H3blQGQsEqEGYDm92BVZcsNLv5OL0QPwIXieILPj+tY4qXSgxI3ydPteR15nJ64snPEmKVsidFQRsVNi0ItgEbNY0lT3/JB37SLPQgSUPeOIIcG+gnylS3Ao25r6bWQnqA4zMc3KWw1hTfiV7ZL3KyOT1lwkyU4mDMrnvDiHS886VlcGGHyRnVUp0oso0/q7FQndztJ+Q4sjxk0bsODA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(376002)(136003)(396003)(366004)(186009)(451199024)(1800799009)(2616005)(5660300002)(107886003)(26005)(2906002)(41300700001)(31696002)(38100700002)(86362001)(4326008)(36756003)(8936002)(8676002)(83380400001)(6512007)(53546011)(6506007)(478600001)(6666004)(6486002)(6916009)(316002)(66476007)(66946007)(66556008)(31686004)(54906003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Y2VPaHUxRVA2MC9HcTdkZUduRVBsbGxtdWsySm51RG1uK053dHc5VEIyM0Fx?=
 =?utf-8?B?M2ZWRlRST0pnbWlHVG5DNnN2ZWtITW5kT0lMZ1pTbytuOWxHZHVpbC9KeFl3?=
 =?utf-8?B?QnpGOER0RlhNK2VSMVlmVERBMHhXSkR5KzRwVTdST2NNRzlscE5pOG1xalgw?=
 =?utf-8?B?MFBhcjlYWXVlQXRRNmVtS29KVjhHVWEwR1pkVkR3bjNqV25TQ09tbDNBcHYr?=
 =?utf-8?B?U2EwajZ0ZGVCWVZqZjZsYVV5OHBIT0FPdkhRY2FmVnJQWkxsVG1SdFV4WWpT?=
 =?utf-8?B?LzI1NnhRQW96N0dLaW50anVOTmRRalYybWp6L2VWaWd6QWpaZVJxM0g0YURO?=
 =?utf-8?B?VTB4MXpLOVJIV2JBMExpc0toZEVYTi9SeXVHWHRMWDdJLzNYUnI5NSsrYlpm?=
 =?utf-8?B?RzJmaU45bzVkc2FRaktINER3N3J3eGFkeUtYZnN6aU9TMlhZU2x4eURNd1lQ?=
 =?utf-8?B?UEJLdlFDYnZ0QTBCWCt3ZzV3a2d0M1pzK0c5OGQveTJUTXhXKzdSOTRSeEds?=
 =?utf-8?B?bU1NaitNLzJPSzNkWFEzSkVqMy9nQmVaTU9NQ0hVdGRWZ0ppbWo0NHl6RnJ5?=
 =?utf-8?B?T3F2SDhBejU1RElzdHlXWWpnSkhveDNzUTBZTU8yTXZmcEhmTk5Ld1VMcFpt?=
 =?utf-8?B?YTFQUDZ2aTcxcmp1MDZ4VDVTTk9ERlphU3pncnVjelh0UGdlczNhT0VsY3Y1?=
 =?utf-8?B?YUljTTFvaWY0UGhRWTVYQXV5TmlGTmJNWE5QaDRQdWlSbHp2RnhiQXJzRFNa?=
 =?utf-8?B?NGRPbEJYZEpPUE9uaThVME45UUhDUi9ObWdZTnI4akhkOHVHOURDMWhnd1Y4?=
 =?utf-8?B?R25jVWQ4QzY0am9NZGc5SGxPQTJCMDdrT3pESG54alNad0RYUzNIWDZZQlp1?=
 =?utf-8?B?SWU3b0s5cHdEOXFobmY4WDRXNnI2dVBLZCtZZ3Byc1FnTUpRbXJzZDVHdzhY?=
 =?utf-8?B?ekUwZ0MrdzRaM1NBMTExVlVRK1kyWXZmRDBQTHdaZndjbjNEemRoMm10NGU4?=
 =?utf-8?B?cDdDWk0ydlFQQnBYU1JHc1RBUVBUVTFVejNHRytqaUc0R01FeWhPc3U2ZEtN?=
 =?utf-8?B?eUViRnFrd0dPWEI0ekxKb2svVlhHWEcyWjNnL29NNUZoSXNOYVVpMHkyTmw2?=
 =?utf-8?B?SkJRMUNtajJRRkVwWFQ3cWVnU0QvTlFibE52ZllvaHJDK2daV3ZtMHo1bFhS?=
 =?utf-8?B?akRvZnVCaVhyUHk3bjN2bk1LRzR5YTZ3cnVHRllKelFWTVd5b29CWE1SZDlk?=
 =?utf-8?B?SE5DYklHaU1VaWN0ZFYybGlDMndLVzFuWURkVG5xZFFjR1hwSTc1WHBBaSt6?=
 =?utf-8?B?SW5JdUR5SmxIWitQUXBiRkFMY0lRVUFvVkRUMEwxOHNhWWh4M09kaTJNWmQr?=
 =?utf-8?B?OStrSzJrYW5VVXBVRjl2N2dyRGhHSGRCM2NWUTB0MXBTTW1aVDFkd3NzOVpG?=
 =?utf-8?B?MUs0dktmb0oxMlU2b2lTTjlEenFyMTB4ak1wL3JPRjBuZGVzWFdNVUJiZmlK?=
 =?utf-8?B?WkhVQ0NKTUJhTlFOVi9HdGdrbXJLdlJiMkhRU1FxMjlvUlVWNE9sdGhhZ1Vv?=
 =?utf-8?B?K1NNYXJvUStZRy8rdlpFNFg3RnV5N25Tck1XTXVwVXI2VkFYTHh1N255RDhM?=
 =?utf-8?B?SWo4Z0NtWDJ1Z1dYbVdUcmQ5VWU5ajcwOVd0QnY3bG1tZ2VucWYwNEVMd3Uw?=
 =?utf-8?B?THlmWURYaUVZOTZMbWRJRFJ4VVdBYkZhcG8zN21WNzFEUGV5c25KdWlKZEhx?=
 =?utf-8?B?MGxBQzdzTTUxcU5pSzZ4dEJ3N3UvMDAzOTZBZFpzRFc0RVVaRWVqSlhrNnRW?=
 =?utf-8?B?a1h2bzJHZVkydEczNEJ2RVF1SjEyOFM3cms2cUdubFUzY1lIVmRITW9vaVhs?=
 =?utf-8?B?VFQ1ZmNqTU05SE1BSDdsNVF5WDBIbVNhaXNHNlhIall3Z0FVS2l2U0Z2cHpY?=
 =?utf-8?B?amw5ZzhraHNSdmFGaW5iSTVwd2p2MnlqVXVFWUY2NFREY2ExMGJNZWtZbEpT?=
 =?utf-8?B?KzRKL0lwYVlDM2dsQ21xZzR5RjV0bk02WUNtRlJBZTdsb2Z0ZFQxTHVMUk1u?=
 =?utf-8?B?QlV1aFZrQnhRMXJoRVE2WUIzcFZlRWUrcTFkMGRvREpJYTNHUkd4ckNOb09C?=
 =?utf-8?Q?gm3lOABIIZPPD9F/DPElSymqM?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 44bcbdde-11b8-40b3-60fd-08dbbb72cb1f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Sep 2023 13:49:51.3631
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0C5pZyLS+IgBbceehRPh3trALrTMx+1WRqposR8X/jcTlrU3/PrFaHx36DVD6n378qnDhWaJlfUxom1rvwrJxQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR04MB7048

On 22.09.2023 14:20, George Dunlap wrote:
> On Thu, Sep 21, 2023 at 2:12 PM Juergen Gross <jgross@suse.com> wrote:
>>
>> On 21.09.23 14:23, George Dunlap wrote:
>>> The credit scheduler tries as hard as it can to ensure that it always
>>> runs scheduling units with positive credit (PRI_TS_UNDER) before
>>> running those with negative credit (PRI_TS_OVER).  If the next
>>> runnable scheduling unit is of priority OVER, it will always run the
>>> load balancer, which will scour the system looking for another
>>> scheduling unit of the UNDER priority.
>>>
>>> Unfortunately, as the number of cores on a system has grown, the cost
>>> of the work-stealing algorithm has dramatically increased; a recent
>>> trace on a system with 128 cores showed this taking over 50
>>> microseconds.
>>>
>>> Add a parameter, load_balance_ratelimit, to limit the frequency of
>>> load balance operations on a given pcpu.  Default this to 1
>>> millisecond.
>>>
>>> Invert the load balancing conditional to make it more clear, and line
>>> up more closely with the comment above it.
>>>
>>> Overall it might be cleaner to have the last_load_balance checking
>>> happen inside csched_load_balance(), but that would require either
>>> passing both now and spc into the function, or looking them up again;
>>> both of which seemed to be worse than simply checking and setting the
>>> values before calling it.
>>>
>>> On a system with a vcpu:pcpu ratio of 2:1, running Windows guests
>>> (which will end up calling YIELD during spinlock contention), this
>>> patch increased performance significantly.
>>>
>>> Signed-off-by: George Dunlap <george.dunlap@cloud.com>
>>> ---
>>> Changes since v1:
>>> - Fix editing mistake in commit message
>>> - Improve documentation
>>> - global var is __ro_after_init
>>> - Remove sysctl, as it's not used.  Define max value in credit.c.
>>> - Fix some style issues
>>> - Move comment tweak to the right patch
>>> - In the event that the commandline-parameter value is too high, clip
>>>    to the maximum value rather than setting to the default.
>>>
>>> CC: Dario Faggioli <dfaggioli@suse.com>
>>> CC: Andrew Cooper <andrew.cooper3@citrix.com>
>>> CC: George Dunlap <george.dunlap@citrix.com>
>>> CC: Jan Beulich <jbeulich@suse.com>
>>> CC: Julien Grall <julien@xen.org>
>>> CC: Stefano Stabellini <sstabellini@kernel.org>
>>> CC: Wei Liu <wl@xen.org>
>>> ---
>>>   docs/misc/xen-command-line.pandoc |  8 ++++++
>>>   xen/common/sched/credit.c         | 47 +++++++++++++++++++++++++------
>>>   2 files changed, 46 insertions(+), 9 deletions(-)
>>>
>>> diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc
>>> index f88e6a70ae..9c3c72a7f9 100644
>>> --- a/docs/misc/xen-command-line.pandoc
>>> +++ b/docs/misc/xen-command-line.pandoc
>>> @@ -1884,6 +1884,14 @@ By default, Xen will use the INVPCID instruction for TLB management if
>>>   it is available.  This option can be used to cause Xen to fall back to
>>>   older mechanisms, which are generally slower.
>>>
>>> +### load-balance-ratelimit
>>> +> `= <integer>`
>>> +
>>> +The minimum interval between load balancing events on a given pcpu, in
>>> +microseconds.  A value of '0' will disable rate limiting.  Maximum
>>> +value 1 second. At the moment only credit honors this parameter.
>>> +Default 1ms.
>>> +
>>>   ### noirqbalance (x86)
>>>   > `= <boolean>`
>>>
>>> diff --git a/xen/common/sched/credit.c b/xen/common/sched/credit.c
>>> index f2cd3d9da3..5c06f596d2 100644
>>> --- a/xen/common/sched/credit.c
>>> +++ b/xen/common/sched/credit.c
>>> @@ -50,6 +50,10 @@
>>>   #define CSCHED_TICKS_PER_TSLICE     3
>>>   /* Default timeslice: 30ms */
>>>   #define CSCHED_DEFAULT_TSLICE_MS    30
>>> +/* Default load balancing ratelimit: 1ms */
>>> +#define CSCHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US 1000
>>> +/* Max load balancing ratelimit: 1s */
>>> +#define CSCHED_MAX_LOAD_BALANCE_RATELIMIT_US     1000000
>>>   #define CSCHED_CREDITS_PER_MSEC     10
>>>   /* Never set a timer shorter than this value. */
>>>   #define CSCHED_MIN_TIMER            XEN_SYSCTL_SCHED_RATELIMIT_MIN
>>> @@ -153,6 +157,7 @@ struct csched_pcpu {
>>>
>>>       unsigned int idle_bias;
>>>       unsigned int nr_runnable;
>>> +    s_time_t last_load_balance;
>>>
>>>       unsigned int tick;
>>>       struct timer ticker;
>>> @@ -218,7 +223,7 @@ struct csched_private {
>>>
>>>       /* Period of master and tick in milliseconds */
>>>       unsigned int tick_period_us, ticks_per_tslice;
>>> -    s_time_t ratelimit, tslice, unit_migr_delay;
>>> +    s_time_t ratelimit, tslice, unit_migr_delay, load_balance_ratelimit;
>>>
>>>       struct list_head active_sdom;
>>>       uint32_t weight;
>>> @@ -612,6 +617,8 @@ init_pdata(struct csched_private *prv, struct csched_pcpu *spc, int cpu)
>>>       BUG_ON(!is_idle_unit(curr_on_cpu(cpu)));
>>>       cpumask_set_cpu(cpu, prv->idlers);
>>>       spc->nr_runnable = 0;
>>> +
>>> +    spc->last_load_balance = NOW();
>>>   }
>>>
>>>   static void cf_check
>>> @@ -1676,9 +1683,17 @@ csched_runq_steal(int peer_cpu, int cpu, int pri, int balance_step)
>>>       return NULL;
>>>   }
>>>
>>> +/*
>>> + * Minimum delay, in microseconds, between load balance operations.
>>> + * This prevents spending too much time doing load balancing, particularly
>>> + * when the system has a high number of YIELDs due to spinlock priority inversion.
>>> + */
>>> +static unsigned int __ro_after_init load_balance_ratelimit_us = CSCHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US;
>>> +integer_param("load-balance-ratelimit", load_balance_ratelimit_us);
>>> +
>>>   static struct csched_unit *
>>>   csched_load_balance(struct csched_private *prv, int cpu,
>>> -    struct csched_unit *snext, bool *stolen)
>>> +                    struct csched_unit *snext, bool *stolen)
>>>   {
>>>       const struct cpupool *c = get_sched_res(cpu)->cpupool;
>>>       struct csched_unit *speer;
>>> @@ -1958,15 +1973,19 @@ static void cf_check csched_schedule(
>>>           /*
>>>            * SMP Load balance:
>>>            *
>>> -         * If the next highest priority local runnable UNIT has already eaten
>>> -         * through its credits, look on other PCPUs to see if we have more
>>> -         * urgent work... If not, csched_load_balance() will return snext, but
>>> -         * already removed from the runq.
>>> +         * If the next highest priority local runnable UNIT has
>>> +         * already eaten through its credits (and we're below the
>>> +         * balancing ratelimit), look on other PCPUs to see if we have
>>> +         * more urgent work... If we don't, csched_load_balance() will
>>> +         * return snext, but already removed from the runq.
>>>            */
>>> -        if ( snext->pri > CSCHED_PRI_TS_OVER )
>>> -            __runq_remove(snext);
>>> -        else
>>> +        if ( snext->pri <= CSCHED_PRI_TS_OVER
>>> +             && now - spc->last_load_balance > prv->load_balance_ratelimit) {
>>
>> ^ Just found a style issue (after Andrew pointing out the ones in patch 2).
> 
> Just checking, you mean the space before the closing `)`?

And the placement of the opening {.

Jan


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 13:50:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 13:50:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606906.944987 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjgYO-0007Jk-VK; Fri, 22 Sep 2023 13:50:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606906.944987; Fri, 22 Sep 2023 13:50:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjgYO-0007Jd-SM; Fri, 22 Sep 2023 13:50:44 +0000
Received: by outflank-mailman (input) for mailman id 606906;
 Fri, 22 Sep 2023 13:50:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5esq=FG=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qjgYN-000781-4h
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 13:50:43 +0000
Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com
 [2a00:1450:4864:20::42a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 048e0c9d-594f-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 15:50:41 +0200 (CEST)
Received: by mail-wr1-x42a.google.com with SMTP id
 ffacd0b85a97d-3226cc3e324so1271004f8f.3
 for <xen-devel@lists.xenproject.org>; Fri, 22 Sep 2023 06:50:41 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 c10-20020a5d4f0a000000b0031f3ad17b2csm4530867wru.52.2023.09.22.06.50.39
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 22 Sep 2023 06:50:39 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 048e0c9d-594f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695390640; x=1695995440; darn=lists.xenproject.org;
        h=in-reply-to:references:cc:to:content-language:subject:from
         :user-agent:mime-version:date:message-id:from:to:cc:subject:date
         :message-id:reply-to;
        bh=wrFraTbMf82jvk4Ii2MK1VmClFFGJXOZZ+m2vVcFPDg=;
        b=HmbxJGlTgZK3UkLFSxWrbXWsLrqG52Zuq8IQkCwb3oFsC6teEHkbU6xpQIES2gVMru
         KconR0A/xdBv5mLilv1o1LiTdfXGnEEK5Gm3ZiYdwa1FqBB1LMCx+EoKvnxGuZyTpyiQ
         K6YWs3dkLV9Z0Enh3KZYCcVYoY5HD4sVvpMNk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695390640; x=1695995440;
        h=in-reply-to:references:cc:to:content-language:subject:from
         :user-agent:mime-version:date:message-id:x-gm-message-state:from:to
         :cc:subject:date:message-id:reply-to;
        bh=wrFraTbMf82jvk4Ii2MK1VmClFFGJXOZZ+m2vVcFPDg=;
        b=Qp/O8gXX2lHoe0Bbg1kaVkDiWyjJ2Uavy7/YNDRSZsHAyUBS/J21oGo69NKVeObPQu
         /s9BqOiToFxF9VJOuXuKfdqnWVulIsEu+6f+2mzeUzJfTIeSHRH3X/TNsHBhn2NlhuSA
         +cT9ugjunj1t+cmcvk9/u7GxT4AWqKOZ2Rq3cvVIYaix9/5X+FWJN/HafqzZQB8TGCAF
         FLWUdu50OwA9xQFful7gZt556JemmSnlTya6Z9UEr7ECmeP8DZIzQ9rQcx5OHwMqgQE4
         Vom3s0j8xhytvuWA5R5vSxI7yphubWtz8CiU0ELXy575ySoLMeW0yPBTFcGATquobXZj
         W3MQ==
X-Gm-Message-State: AOJu0YwycflrfG2bgUUqkRArEVodh3Wzb2Zgnq/XgujRQ1esU9mygdyO
	xbxRQ0cAPSjMuFMrqueU0+7tYA==
X-Google-Smtp-Source: AGHT+IGN6QQNnfvuKk8peP3Ip3sIAlFxKSNxUknvmaHsltBKaZGRrVd3k25A4vhEkgANNAYrJEStDg==
X-Received: by 2002:a05:6000:118d:b0:321:6936:c217 with SMTP id g13-20020a056000118d00b003216936c217mr7968414wrx.14.1695390640236;
        Fri, 22 Sep 2023 06:50:40 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------yYv5ATeT8y7DEmqXjsG2xVFF"
Message-ID: <d9bc0a47-5d33-aa94-7932-02e6323e5cc4@citrix.com>
Date: Fri, 22 Sep 2023 14:50:39 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: Xen 4.18 release: Reminder about feature/code freeze
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Julien Grall <julien@xen.org>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>, Jan Beulich
 <jbeulich@suse.com>, "jgross@suse.com" <jgross@suse.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Anthony PERARD <anthony.perard@citrix.com>,
 "community.manager@xenproject.org" <community.manager@xenproject.org>,
 =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= <marmarek@invisiblethingslab.com>
References: <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>
In-Reply-To: <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>

This is a multi-part message in MIME format.
--------------yYv5ATeT8y7DEmqXjsG2xVFF
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 11/09/2023 2:08 am, Henry Wang wrote:
> Also, below is the critical items on my list for 4.18 release:
>
> 1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
>
> https://gitlab.com/xen-project/xen/-/issues/114
>

I've committed all the work so far, which means it's nearly done.

There's one more bugfix still in testing (which will be fine to take at
a later point), and one TODO over xenpvnetboot which I'm tempted to fix
deleting it - it uses modules deprecated in Py2 and fully removed from
Py3, so it's very clear it's never been used in an up-to-date distro.

> 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for
> staging | 6a47ba2f
>
> https://marc.info/?l=xen-devel&m=168312468808977
> <https://marc.info/?l=xen-devel&m=168312468808977>
>
> https://marc.info/?l=xen-devel&m=168312687610283
> <https://marc.info/?l=xen-devel&m=168312687610283>
>

Sadly not started.

> 4. The proper eIBRS support for x86
>
> https://lore.kernel.org/xen-devel/ec8e75da-743b-50dc-4665-854c446c974e@citrix.com/
>

Also not started yet.  All of the time I was going to spend on these two
ended up getting spent making XSA-439 work correctly.

At this point it's too late for either to get done for 4.18.

~Andrew
--------------yYv5ATeT8y7DEmqXjsG2xVFF
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 11/09/2023 2:08 am, Henry Wang
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style>@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
	{font-family:DengXian;
	panose-1:2 1 6 0 3 1 1 1 1 1;}@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}@font-face
	{font-family:"\@DengXian";
	panose-1:2 1 6 0 3 1 1 1 1 1;}p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-ligatures:standardcontextual;}a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri",sans-serif;}div.WordSection1
	{page:WordSection1;}</style>
      <div class="WordSection1">Also, below is the critical items on my
        list for 4.18 release:<o:p></o:p>
        <p class="MsoNormal">1. [PATCH 0/7] tools: More Python 3 fixes
          (part 1 of N)<o:p></o:p></p>
        <p class="MsoNormal"><a
            href="https://gitlab.com/xen-project/xen/-/issues/114"
            moz-do-not-send="true" class="moz-txt-link-freetext">https://gitlab.com/xen-project/xen/-/issues/114</a></p>
      </div>
    </blockquote>
    <br>
    I've committed all the work so far, which means it's nearly done.<br>
    <br>
    There's one more bugfix still in testing (which will be fine to take
    at a later point), and one TODO over xenpvnetboot which I'm tempted
    to fix deleting it - it uses modules deprecated in Py2 and fully
    removed from Py3, so it's very clear it's never been used in an
    up-to-date distro.<br>
    <br>
    <blockquote type="cite"
cite="mid:AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com">
      <div class="WordSection1">
        <p class="MsoNormal"><o:p></o:p></p>
        <p class="MsoNormal">3. dom0less vs xenstored setup race Was:
          xen | Failed pipeline for staging | 6a47ba2f<o:p></o:p></p>
        <p class="MsoNormal"><a
            href="https://marc.info/?l=xen-devel&amp;m=168312468808977"
            moz-do-not-send="true">https://marc.info/?l=xen-devel&amp;m=168312468808977</a><o:p></o:p></p>
        <p class="MsoNormal"><a
            href="https://marc.info/?l=xen-devel&amp;m=168312687610283"
            moz-do-not-send="true">https://marc.info/?l=xen-devel&amp;m=168312687610283</a></p>
        <o:p> </o:p></div>
    </blockquote>
    <br>
    Sadly not started.<br>
    <br>
    <blockquote type="cite"
cite="mid:AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com">
      <div class="WordSection1">
        <p class="MsoNormal">4. The proper eIBRS support for x86<o:p></o:p></p>
        <p class="MsoNormal"><a
href="https://lore.kernel.org/xen-devel/ec8e75da-743b-50dc-4665-854c446c974e@citrix.com/"
            moz-do-not-send="true" class="moz-txt-link-freetext">https://lore.kernel.org/xen-devel/ec8e75da-743b-50dc-4665-854c446c974e@citrix.com/</a><o:p></o:p></p>
      </div>
    </blockquote>
    <br>
    Also not started yet.  All of the time I was going to spend on these
    two ended up getting spent making XSA-439 work correctly.<br>
    <br>
    At this point it's too late for either to get done for 4.18.<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------yYv5ATeT8y7DEmqXjsG2xVFF--


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 14:46:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 14:46:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606914.944997 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjhPh-0006Th-St; Fri, 22 Sep 2023 14:45:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606914.944997; Fri, 22 Sep 2023 14:45:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjhPh-0006Ta-Pc; Fri, 22 Sep 2023 14:45:49 +0000
Received: by outflank-mailman (input) for mailman id 606914;
 Fri, 22 Sep 2023 14:45:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PcWe=FG=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qjhPh-0006TU-1e
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 14:45:49 +0000
Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com
 [2a00:1450:4864:20::231])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b662f5d9-5956-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 16:45:45 +0200 (CEST)
Received: by mail-lj1-x231.google.com with SMTP id
 38308e7fff4ca-2b95d5ee18dso38129361fa.1
 for <xen-devel@lists.xenproject.org>; Fri, 22 Sep 2023 07:45:45 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b662f5d9-5956-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695393945; x=1695998745; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=sgB0VlPd21gS/HRsR4iWFum85/IgSU6G3+/ryRVHYjg=;
        b=kwCmf8PixNmzhao1bCBxXORKHDUUP4LZepbPBdpSiJ9w/wZKbH5QRSYXcnXvxVSdP9
         j7CBRWSWTS0RBoTUj5o+s78zDb3lZsSAMDL0jVJzE2W3hGoeiAwZbECZ61PFzNId9AaI
         wHZWrHglt9FVSlcppsttswWT8d4uxWVoDQNI0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695393945; x=1695998745;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=sgB0VlPd21gS/HRsR4iWFum85/IgSU6G3+/ryRVHYjg=;
        b=Om9NWt+NcjviW8fw6OVAHH/f9EXK5a7uEk126f+9Rl4V72NS7XBUpqiFJWA0TlYqJ3
         yNNIDdTm1lfbCfR/eTssjQr79nP5a4s/YQ4GVEcTwn490FAITjA+YZ84BECD4T8GQg8T
         hAe6sjDIOcyF92L6igqBYpL2GaxPU+QdJZtKH+NyJqY3hfORyW1l4VD8l9WAcon3puiO
         HDFcfeLf8v2wn5jyKaShKm7bjGPhLVovSwx0uWcDyiQUnRbX7M9ZtdopE6vLEQo7EDoe
         pDzv54J+DPdBkXavk6zYm+OL3MevAO3ZUzSoJJp0izN3coiwKAnFQ6WR2q7Hsu4wgGgr
         oiEA==
X-Gm-Message-State: AOJu0YwlwrbELVissX0XE6pbH8BIc8SUMtGiFL9JcnDDsoBtWhtukrSs
	PAJlGpCJU+SnpeCsY1S4ZchX+DnQPyWiSbiMIVz7Ow==
X-Google-Smtp-Source: AGHT+IGHK2ajz1QSZQwSZNggs2VKzdgrhF+maMllrx74bz+4CD34zAnrhGT3BqL3CkjqWcWMYFNg+nEcpMxDjoWCaE8=
X-Received: by 2002:a2e:9952:0:b0:2b9:3684:165 with SMTP id
 r18-20020a2e9952000000b002b936840165mr7729516ljj.8.1695393944410; Fri, 22 Sep
 2023 07:45:44 -0700 (PDT)
MIME-Version: 1.0
References: <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>
In-Reply-To: <AS8PR08MB79918D6EE559A2807DC6D56792F2A@AS8PR08MB7991.eurprd08.prod.outlook.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 22 Sep 2023 15:45:33 +0100
Message-ID: <CA+zSX=bFh70ekgy=C33h-crLphLH7+8Em5TJ4zi81g-dwtou4A@mail.gmail.com>
Subject: Re: Xen 4.18 release: Reminder about feature/code freeze
To: Henry Wang <Henry.Wang@arm.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Julien Grall <julien@xen.org>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, 
	"sstabellini@kernel.org" <sstabellini@kernel.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>, 
	Jan Beulich <jbeulich@suse.com>, "jgross@suse.com" <jgross@suse.com>, 
	=?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	Anthony PERARD <anthony.perard@citrix.com>, 
	"community.manager@xenproject.org" <community.manager@xenproject.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Sep 11, 2023 at 2:08=E2=80=AFAM Henry Wang <Henry.Wang@arm.com> wro=
te:
>
> Hi everyone,
>
>
>
> This is the reminder that we are currently in the feature freeze. I apolo=
gise
>
> for the delay.
>
>
>
> I decided to make the code freeze date on Fri Sep 22, 2023, to give peopl=
e more
>
> time to react because of my late reminder about feature freeze. The hard =
code
>
> freeze date will remain unchanged, i.e. Fri Oct 6, 2023. So currently we =
have 2
>
> weeks before code freeze and another 4 weeks before hard code freeze. If
>
> everything goes well, we can cut 4.18 rc1 at Fri Sep 29, 2023.
>
>
>
> Also, below is the critical items on my list for 4.18 release:
[snip]
> 5. [PATCH 1/2] credit: Limit load balancing to once per millisecond
>
> https://lore.kernel.org/xen-devel/20230630113756.672607-1-george.dunlap@c=
loud.com/

This has been checked in, thanks.

 -George


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 14:47:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 14:47:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606918.945006 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjhQq-00072M-4l; Fri, 22 Sep 2023 14:47:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606918.945006; Fri, 22 Sep 2023 14:47:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjhQq-00072F-2A; Fri, 22 Sep 2023 14:47:00 +0000
Received: by outflank-mailman (input) for mailman id 606918;
 Fri, 22 Sep 2023 14:46:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PcWe=FG=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qjhQp-00070Q-4V
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 14:46:59 +0000
Received: from mail-lj1-x232.google.com (mail-lj1-x232.google.com
 [2a00:1450:4864:20::232])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e0fbca02-5956-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 16:46:57 +0200 (CEST)
Received: by mail-lj1-x232.google.com with SMTP id
 38308e7fff4ca-2c131ddfeb8so28284601fa.3
 for <xen-devel@lists.xenproject.org>; Fri, 22 Sep 2023 07:46:57 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e0fbca02-5956-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695394017; x=1695998817; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=7+pbIH7kh8kx6qkEOQ3aN7dv5sqdupBRAm9xcVdmE1Q=;
        b=II0f/98fOSq5/gN/eSZqlbEBDne1omfh35RmiEmaov0ifIGPnQLN19QvnulsZggSGi
         1/5sIF8Lk/3ch72fVfLjZBhbveqbyUN5D0kvf2fEBrLzMA4KQeGx46qwlbLymJwWM1hm
         uyfs59ofrvHixr4RadSbgJzkFWB2PYTHGoOjQ=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695394017; x=1695998817;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=7+pbIH7kh8kx6qkEOQ3aN7dv5sqdupBRAm9xcVdmE1Q=;
        b=PibPaXYlj5U2UuKaKrqNVQwcR1QTRDhrzAZg50bKiyU+o38AlP3HYhcBlV00P3MO0s
         pUxFwhBMUX1jmfWDmo3SR2GRJVZSKOiJ+zC2NoDDCg8qDGfjy6+xI9TWqoQg7Nx1wNs2
         yXxlsryqpt2t9ZFm+CWP+R1Gdf5nvU7he/6mcj7BcluBpUCstqa5P3aYLlZYt6sE9XZA
         kQ9fgNcZOvMcPN2B4k2hRK4LeY7HYp5v/iD+5FuvTIrhn8b1Mz8UerB4CL3eeVI/BeH0
         kH+TdKO+n2daz4JN5xC09XWQpqaCGo3GWlICOqcF5vLKyv4Yi9T399E1NzJYx2rnA5rF
         kMoQ==
X-Gm-Message-State: AOJu0YzUWmLy5zD7/lDo+r9p2Xpcv57R+rkzFjAnJqs0IV1crZ/VcrOM
	CIP4sPgbX4YnRTauGedKpa9xUZiPnuKNtWGX6P2YsXtBqxd+IUolzKY=
X-Google-Smtp-Source: AGHT+IH7X3jb+1HgLuw4J++w+LNEzcrYRbAzc8Wmyms5sHh4qYOJqBNqiUEZdJwvfvvKfRwOHGw61jh//VWsAeyULzc=
X-Received: by 2002:a2e:9919:0:b0:2b6:eb5a:d377 with SMTP id
 v25-20020a2e9919000000b002b6eb5ad377mr7763731lji.5.1695394016774; Fri, 22 Sep
 2023 07:46:56 -0700 (PDT)
MIME-Version: 1.0
References: <20230921122352.2307574-1-george.dunlap@cloud.com>
 <9456c563-dfbb-4592-a4cb-c11b75f1c27f@suse.com> <CA+zSX=aCyQg+R09_zw2EwcLCtMLOFCqQYejmP-aWXficZ-okdg@mail.gmail.com>
 <f82916a5-758a-d1e1-62d1-2fa890c5f99a@suse.com>
In-Reply-To: <f82916a5-758a-d1e1-62d1-2fa890c5f99a@suse.com>
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 22 Sep 2023 15:46:45 +0100
Message-ID: <CA+zSX=YHugEE=hehyq_+SdfLVz+=9LSGyTo_R+XV0hO4TZAMgw@mail.gmail.com>
Subject: Re: [PATCH v2 1/2] credit: Limit load balancing to once per millisecond
To: Jan Beulich <jbeulich@suse.com>
Cc: xen-devel@lists.xenproject.org, Dario Faggioli <dfaggioli@suse.com>, 
	Andrew Cooper <andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>, 
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>, Juergen Gross <jgross@suse.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Fri, Sep 22, 2023 at 2:49=E2=80=AFPM Jan Beulich <jbeulich@suse.com> wro=
te:
>
> On 22.09.2023 14:20, George Dunlap wrote:
> > On Thu, Sep 21, 2023 at 2:12=E2=80=AFPM Juergen Gross <jgross@suse.com>=
 wrote:
> >>
> >> On 21.09.23 14:23, George Dunlap wrote:
> >>> The credit scheduler tries as hard as it can to ensure that it always
> >>> runs scheduling units with positive credit (PRI_TS_UNDER) before
> >>> running those with negative credit (PRI_TS_OVER).  If the next
> >>> runnable scheduling unit is of priority OVER, it will always run the
> >>> load balancer, which will scour the system looking for another
> >>> scheduling unit of the UNDER priority.
> >>>
> >>> Unfortunately, as the number of cores on a system has grown, the cost
> >>> of the work-stealing algorithm has dramatically increased; a recent
> >>> trace on a system with 128 cores showed this taking over 50
> >>> microseconds.
> >>>
> >>> Add a parameter, load_balance_ratelimit, to limit the frequency of
> >>> load balance operations on a given pcpu.  Default this to 1
> >>> millisecond.
> >>>
> >>> Invert the load balancing conditional to make it more clear, and line
> >>> up more closely with the comment above it.
> >>>
> >>> Overall it might be cleaner to have the last_load_balance checking
> >>> happen inside csched_load_balance(), but that would require either
> >>> passing both now and spc into the function, or looking them up again;
> >>> both of which seemed to be worse than simply checking and setting the
> >>> values before calling it.
> >>>
> >>> On a system with a vcpu:pcpu ratio of 2:1, running Windows guests
> >>> (which will end up calling YIELD during spinlock contention), this
> >>> patch increased performance significantly.
> >>>
> >>> Signed-off-by: George Dunlap <george.dunlap@cloud.com>
> >>> ---
> >>> Changes since v1:
> >>> - Fix editing mistake in commit message
> >>> - Improve documentation
> >>> - global var is __ro_after_init
> >>> - Remove sysctl, as it's not used.  Define max value in credit.c.
> >>> - Fix some style issues
> >>> - Move comment tweak to the right patch
> >>> - In the event that the commandline-parameter value is too high, clip
> >>>    to the maximum value rather than setting to the default.
> >>>
> >>> CC: Dario Faggioli <dfaggioli@suse.com>
> >>> CC: Andrew Cooper <andrew.cooper3@citrix.com>
> >>> CC: George Dunlap <george.dunlap@citrix.com>
> >>> CC: Jan Beulich <jbeulich@suse.com>
> >>> CC: Julien Grall <julien@xen.org>
> >>> CC: Stefano Stabellini <sstabellini@kernel.org>
> >>> CC: Wei Liu <wl@xen.org>
> >>> ---
> >>>   docs/misc/xen-command-line.pandoc |  8 ++++++
> >>>   xen/common/sched/credit.c         | 47 +++++++++++++++++++++++++---=
---
> >>>   2 files changed, 46 insertions(+), 9 deletions(-)
> >>>
> >>> diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-comman=
d-line.pandoc
> >>> index f88e6a70ae..9c3c72a7f9 100644
> >>> --- a/docs/misc/xen-command-line.pandoc
> >>> +++ b/docs/misc/xen-command-line.pandoc
> >>> @@ -1884,6 +1884,14 @@ By default, Xen will use the INVPCID instructi=
on for TLB management if
> >>>   it is available.  This option can be used to cause Xen to fall back=
 to
> >>>   older mechanisms, which are generally slower.
> >>>
> >>> +### load-balance-ratelimit
> >>> +> `=3D <integer>`
> >>> +
> >>> +The minimum interval between load balancing events on a given pcpu, =
in
> >>> +microseconds.  A value of '0' will disable rate limiting.  Maximum
> >>> +value 1 second. At the moment only credit honors this parameter.
> >>> +Default 1ms.
> >>> +
> >>>   ### noirqbalance (x86)
> >>>   > `=3D <boolean>`
> >>>
> >>> diff --git a/xen/common/sched/credit.c b/xen/common/sched/credit.c
> >>> index f2cd3d9da3..5c06f596d2 100644
> >>> --- a/xen/common/sched/credit.c
> >>> +++ b/xen/common/sched/credit.c
> >>> @@ -50,6 +50,10 @@
> >>>   #define CSCHED_TICKS_PER_TSLICE     3
> >>>   /* Default timeslice: 30ms */
> >>>   #define CSCHED_DEFAULT_TSLICE_MS    30
> >>> +/* Default load balancing ratelimit: 1ms */
> >>> +#define CSCHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US 1000
> >>> +/* Max load balancing ratelimit: 1s */
> >>> +#define CSCHED_MAX_LOAD_BALANCE_RATELIMIT_US     1000000
> >>>   #define CSCHED_CREDITS_PER_MSEC     10
> >>>   /* Never set a timer shorter than this value. */
> >>>   #define CSCHED_MIN_TIMER            XEN_SYSCTL_SCHED_RATELIMIT_MIN
> >>> @@ -153,6 +157,7 @@ struct csched_pcpu {
> >>>
> >>>       unsigned int idle_bias;
> >>>       unsigned int nr_runnable;
> >>> +    s_time_t last_load_balance;
> >>>
> >>>       unsigned int tick;
> >>>       struct timer ticker;
> >>> @@ -218,7 +223,7 @@ struct csched_private {
> >>>
> >>>       /* Period of master and tick in milliseconds */
> >>>       unsigned int tick_period_us, ticks_per_tslice;
> >>> -    s_time_t ratelimit, tslice, unit_migr_delay;
> >>> +    s_time_t ratelimit, tslice, unit_migr_delay, load_balance_rateli=
mit;
> >>>
> >>>       struct list_head active_sdom;
> >>>       uint32_t weight;
> >>> @@ -612,6 +617,8 @@ init_pdata(struct csched_private *prv, struct csc=
hed_pcpu *spc, int cpu)
> >>>       BUG_ON(!is_idle_unit(curr_on_cpu(cpu)));
> >>>       cpumask_set_cpu(cpu, prv->idlers);
> >>>       spc->nr_runnable =3D 0;
> >>> +
> >>> +    spc->last_load_balance =3D NOW();
> >>>   }
> >>>
> >>>   static void cf_check
> >>> @@ -1676,9 +1683,17 @@ csched_runq_steal(int peer_cpu, int cpu, int p=
ri, int balance_step)
> >>>       return NULL;
> >>>   }
> >>>
> >>> +/*
> >>> + * Minimum delay, in microseconds, between load balance operations.
> >>> + * This prevents spending too much time doing load balancing, partic=
ularly
> >>> + * when the system has a high number of YIELDs due to spinlock prior=
ity inversion.
> >>> + */
> >>> +static unsigned int __ro_after_init load_balance_ratelimit_us =3D CS=
CHED_DEFAULT_LOAD_BALANCE_RATELIMIT_US;
> >>> +integer_param("load-balance-ratelimit", load_balance_ratelimit_us);
> >>> +
> >>>   static struct csched_unit *
> >>>   csched_load_balance(struct csched_private *prv, int cpu,
> >>> -    struct csched_unit *snext, bool *stolen)
> >>> +                    struct csched_unit *snext, bool *stolen)
> >>>   {
> >>>       const struct cpupool *c =3D get_sched_res(cpu)->cpupool;
> >>>       struct csched_unit *speer;
> >>> @@ -1958,15 +1973,19 @@ static void cf_check csched_schedule(
> >>>           /*
> >>>            * SMP Load balance:
> >>>            *
> >>> -         * If the next highest priority local runnable UNIT has alre=
ady eaten
> >>> -         * through its credits, look on other PCPUs to see if we hav=
e more
> >>> -         * urgent work... If not, csched_load_balance() will return =
snext, but
> >>> -         * already removed from the runq.
> >>> +         * If the next highest priority local runnable UNIT has
> >>> +         * already eaten through its credits (and we're below the
> >>> +         * balancing ratelimit), look on other PCPUs to see if we ha=
ve
> >>> +         * more urgent work... If we don't, csched_load_balance() wi=
ll
> >>> +         * return snext, but already removed from the runq.
> >>>            */
> >>> -        if ( snext->pri > CSCHED_PRI_TS_OVER )
> >>> -            __runq_remove(snext);
> >>> -        else
> >>> +        if ( snext->pri <=3D CSCHED_PRI_TS_OVER
> >>> +             && now - spc->last_load_balance > prv->load_balance_rat=
elimit) {
> >>
> >> ^ Just found a style issue (after Andrew pointing out the ones in patc=
h 2).
> >
> > Just checking, you mean the space before the closing `)`?
>
> And the placement of the opening {.

Gah, sorry I missed that. :-( (Golang won't compile if the `{` isn't
on the same line.)

I guess I'll send a follow-up patch.

 -George


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 15:00:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 15:00:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606925.945017 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjhdX-0001uA-7R; Fri, 22 Sep 2023 15:00:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606925.945017; Fri, 22 Sep 2023 15:00:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjhdX-0001u3-2l; Fri, 22 Sep 2023 15:00:07 +0000
Received: by outflank-mailman (input) for mailman id 606925;
 Fri, 22 Sep 2023 15:00:05 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=YT8q=FG=linutronix.de=tglx@srs-se1.protection.inumbo.net>)
 id 1qjhdV-0001gg-D8
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 15:00:05 +0000
Received: from galois.linutronix.de (galois.linutronix.de [193.142.43.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b5c2a6f6-5958-11ee-878a-cb3800f73035;
 Fri, 22 Sep 2023 17:00:04 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b5c2a6f6-5958-11ee-878a-cb3800f73035
From: Thomas Gleixner <tglx@linutronix.de>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020; t=1695394802;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=yymdn5Ib3vdedE1bKPjXhrIk07DP2toWMx0YBeOSCKc=;
	b=JCA+KUnb692VWlx1fmj161S4ivDwYTrM1u8X2p5arIqoauHvahJMRyQgJNnCijDhvdZTN5
	2vhPfci1iBhuF4Qy2zYMF8JGpNHrq0VAOBaIOZz4r3zSiAs1S0WjK2Y/a5ZLPZiRHiR72P
	REbPguOF78kSQmQ7J0MndgAQ5u9+VLIa/hw1U5uaXSml+++MgocMsUUHEo8yUUBhh55/dy
	QQw13O85IYkSyENm5eCNprEvBu0VGY6MYJBQev1Uj1n9rrZjN0zSSXrLOJq5WBnRYuLa3i
	/YCovSEvga/R0iW5oDIVClJYgWEFtXfzNaoHbWAAyTqcD536K6Nb5/nqacqCUg==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020e; t=1695394802;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=yymdn5Ib3vdedE1bKPjXhrIk07DP2toWMx0YBeOSCKc=;
	b=CIDz5h5BcX/Bz/jkuzgX2qYw3Xx+SDJYkCZCT8rgToE1CkxZkoLWZYWz8rraUAqGtvF28b
	64aTOX6aC7JwbuBQ==
To: "Li, Xin3" <xin3.li@intel.com>, "Li, Xin3" <xin3.li@intel.com>, Nikolay
 Borisov <nik.borisov@suse.com>, "linux-doc@vger.kernel.org"
 <linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
 <linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
 <linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
 <linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org"
 <kvm@vger.kernel.org>, "xen-devel@lists.xenproject.org"
 <xen-devel@lists.xenproject.org>
Cc: "mingo@redhat.com" <mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
 "dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>,
 "x86@kernel.org" <x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>,
 "Lutomirski, Andy" <luto@kernel.org>, "pbonzini@redhat.com"
 <pbonzini@redhat.com>, "Christopherson,, Sean" <seanjc@google.com>,
 "peterz@infradead.org" <peterz@infradead.org>, "Gross, Jurgen"
 <jgross@suse.com>, "Shankar, Ravi V" <ravi.v.shankar@intel.com>,
 "mhiramat@kernel.org" <mhiramat@kernel.org>, "andrew.cooper3@citrix.com"
 <andrew.cooper3@citrix.com>, "jiangshanlai@gmail.com"
 <jiangshanlai@gmail.com>
Subject: RE: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
In-Reply-To: <SA1PR11MB6734445986E951E686172419A8FFA@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <dda01248-f456-d8d7-5021-ef6b2e7ade2c@suse.com>
 <SA1PR11MB6734F205C2171425415E4F00A8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
 <SA1PR11MB6734445986E951E686172419A8FFA@SA1PR11MB6734.namprd11.prod.outlook.com>
Date: Fri, 22 Sep 2023 17:00:02 +0200
Message-ID: <87o7hugsnh.ffs@tglx>
MIME-Version: 1.0
Content-Type: text/plain

On Fri, Sep 22 2023 at 08:16, Xin3 Li wrote:
>> > > +static __always_inline void __wrmsrns(u32 msr, u32 low, u32 high)
>> >
>> > Shouldn't this be named wrmsrns_safe since it has exception handling, similar
>> to
>> > the current wrmsrl_safe.
>> >
>> 
>> Both safe and unsafe versions have exception handling, while the safe
>> version returns an integer to its caller to indicate an exception did
>> happen or not.
>
> I notice there are several call sites using the safe version w/o
> checking the return value, should the unsafe version be a better
> choice in such cases?

Depends. The safe version does not emit a warning on fail. So if the
callsite truly does not care about the error it's fine.


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 15:19:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 15:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606931.945028 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjhw4-0004fH-SB; Fri, 22 Sep 2023 15:19:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606931.945028; Fri, 22 Sep 2023 15:19:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjhw4-0004fA-ND; Fri, 22 Sep 2023 15:19:16 +0000
Received: by outflank-mailman (input) for mailman id 606931;
 Fri, 22 Sep 2023 15:19:15 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Esjf=FG=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qjhw3-0004f4-Fv
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 15:19:15 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 62dcdbb7-595b-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 17:19:13 +0200 (CEST)
Received: from Dell.bugseng.com (unknown [37.160.108.56])
 by support.bugseng.com (Postfix) with ESMTPSA id B0EE64EE0739;
 Fri, 22 Sep 2023 17:19:11 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 62dcdbb7-595b-11ee-9b0d-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v2] xen/emul-i8254: remove forward declarations and re-order functions
Date: Fri, 22 Sep 2023 17:19:04 +0200
Message-Id: <b2877f0e2d867e04e806d70cc2ba175386c30d9c.1695392080.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Remove forward declarations, including one that violates MISRA C Rule
8.3 ("All declarations of an object or function shall use the same
names and type qualifiers"), and re-order functions.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/emul-i8254.c | 129 ++++++++++++++++++--------------------
 1 file changed, 62 insertions(+), 67 deletions(-)

diff --git a/xen/arch/x86/emul-i8254.c b/xen/arch/x86/emul-i8254.c
index 41ec4a1ef1..8157428d94 100644
--- a/xen/arch/x86/emul-i8254.c
+++ b/xen/arch/x86/emul-i8254.c
@@ -48,11 +48,6 @@
 #define RW_STATE_WORD0 3
 #define RW_STATE_WORD1 4
 
-static int cf_check handle_pit_io(
-    int dir, unsigned int port, unsigned int bytes, uint32_t *val);
-static int cf_check handle_speaker_io(
-    int dir, unsigned int port, unsigned int bytes, uint32_t *val);
-
 #define get_guest_time(v) \
    (is_hvm_vcpu(v) ? hvm_get_guest_time(v) : (u64)get_s_time())
 
@@ -466,68 +461,7 @@ static int cf_check pit_load(struct domain *d, hvm_domain_context_t *h)
 HVM_REGISTER_SAVE_RESTORE(PIT, pit_save, pit_load, 1, HVMSR_PER_DOM);
 #endif
 
-void pit_reset(struct domain *d)
-{
-    PITState *pit = domain_vpit(d);
-    struct hvm_hw_pit_channel *s;
-    int i;
-
-    if ( !has_vpit(d) )
-        return;
-
-    if ( is_hvm_domain(d) )
-    {
-        TRACE_0D(TRC_HVM_EMUL_PIT_STOP_TIMER);
-        destroy_periodic_time(&pit->pt0);
-        pit->pt0.source = PTSRC_isa;
-    }
-
-    spin_lock(&pit->lock);
-
-    for ( i = 0; i < 3; i++ )
-    {
-        s = &pit->hw.channels[i];
-        s->mode = 0xff; /* the init mode */
-        s->gate = (i != 2);
-        pit_load_count(pit, i, 0);
-    }
-
-    spin_unlock(&pit->lock);
-}
-
-void pit_init(struct domain *d)
-{
-    PITState *pit = domain_vpit(d);
-
-    if ( !has_vpit(d) )
-        return;
-
-    spin_lock_init(&pit->lock);
-
-    if ( is_hvm_domain(d) )
-    {
-        register_portio_handler(d, PIT_BASE, 4, handle_pit_io);
-        register_portio_handler(d, 0x61, 1, handle_speaker_io);
-    }
-
-    pit_reset(d);
-}
-
-void pit_deinit(struct domain *d)
-{
-    PITState *pit = domain_vpit(d);
-
-    if ( !has_vpit(d) )
-        return;
-
-    if ( is_hvm_domain(d) )
-    {
-        TRACE_0D(TRC_HVM_EMUL_PIT_STOP_TIMER);
-        destroy_periodic_time(&pit->pt0);
-    }
-}
-
-/* the intercept action for PIT DM retval:0--not handled; 1--handled */  
+/* the intercept action for PIT DM retval:0--not handled; 1--handled */
 static int cf_check handle_pit_io(
     int dir, unsigned int port, unsigned int bytes, uint32_t *val)
 {
@@ -620,6 +554,67 @@ int pv_pit_handler(int port, int data, int write)
     return !write ? ioreq.data : 0;
 }
 
+void pit_reset(struct domain *d)
+{
+    PITState *pit = domain_vpit(d);
+    struct hvm_hw_pit_channel *s;
+    int i;
+
+    if ( !has_vpit(d) )
+        return;
+
+    if ( is_hvm_domain(d) )
+    {
+        TRACE_0D(TRC_HVM_EMUL_PIT_STOP_TIMER);
+        destroy_periodic_time(&pit->pt0);
+        pit->pt0.source = PTSRC_isa;
+    }
+
+    spin_lock(&pit->lock);
+
+    for ( i = 0; i < 3; i++ )
+    {
+        s = &pit->hw.channels[i];
+        s->mode = 0xff; /* the init mode */
+        s->gate = (i != 2);
+        pit_load_count(pit, i, 0);
+    }
+
+    spin_unlock(&pit->lock);
+}
+
+void pit_init(struct domain *d)
+{
+    PITState *pit = domain_vpit(d);
+
+    if ( !has_vpit(d) )
+        return;
+
+    spin_lock_init(&pit->lock);
+
+    if ( is_hvm_domain(d) )
+    {
+        register_portio_handler(d, PIT_BASE, 4, handle_pit_io);
+        register_portio_handler(d, 0x61, 1, handle_speaker_io);
+    }
+
+    pit_reset(d);
+}
+
+void pit_deinit(struct domain *d)
+{
+    PITState *pit = domain_vpit(d);
+
+    if ( !has_vpit(d) )
+        return;
+
+    if ( is_hvm_domain(d) )
+    {
+        TRACE_0D(TRC_HVM_EMUL_PIT_STOP_TIMER);
+        destroy_periodic_time(&pit->pt0);
+    }
+}
+
 /*
  * Local variables:
  * mode: C
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 22 15:43:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 15:43:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606938.945037 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjiJN-0000mF-Jh; Fri, 22 Sep 2023 15:43:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606938.945037; Fri, 22 Sep 2023 15:43:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjiJN-0000m8-Fo; Fri, 22 Sep 2023 15:43:21 +0000
Received: by outflank-mailman (input) for mailman id 606938;
 Fri, 22 Sep 2023 15:43:19 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T0Hu=FG=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qjiJL-0000m2-KQ
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 15:43:19 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bf297e41-595e-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 17:43:17 +0200 (CEST)
Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7])
 by mailhost.m5p.com (8.17.1/8.15.2) with ESMTPS id 38MFgtdE077407
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Fri, 22 Sep 2023 11:43:01 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 38MFgtxI077406;
 Fri, 22 Sep 2023 08:42:55 -0700 (PDT) (envelope-from ehem)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bf297e41-595e-11ee-9b0d-b553b5be7939
Date: Fri, 22 Sep 2023 08:42:55 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
        Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
        Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
        Julien Grall <julien@xen.org>,
        Stefano Stabellini <sstabellini@kernel.org>,
        xen-devel@lists.xenproject.org
Subject: Re: [PATCH WIP] xen/public: move incomplete type definitions to xen.h
Message-ID: <ZQ21//HP/d2Ppdrh@mattapan.m5p.com>
References: <7a880e33ff91d0c76986159e3559c56ee6894d21.1695324653.git.ehem+xen@m5p.com>
 <7aaf91c7-6330-fffc-8df6-4be4b531f456@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <7aaf91c7-6330-fffc-8df6-4be4b531f456@suse.com>
X-Spam-Status: No, score=0.4 required=10.0 tests=KHOP_HELO_FCRDNS autolearn=no
	autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mattapan.m5p.com

On Fri, Sep 22, 2023 at 10:21:21AM +0200, Jan Beulich wrote:
> On 21.09.2023 18:18, Elliott Mitchell wrote:
> > Hypercall wrappers need the incomplete type definitions.  Only when the
> > actual structure needed.
> 
> While in the first sentence "only" looks to be missing, I can't really
> make sense of the second (without implying what I think you mean).

I'm not an editor, thinkos in commit messages happen.  Likely should have
removed that sentence.

> >  As such these incomplete definitions should be
> > in xen.h next to their hypercalls, rather than spread all over.
> 
> Perhaps s/incomplete definitions/forward declarations/.
> 
> There's a downside to the movement, though: You now introduce items
> into the namespace which may be entirely unused. The two contradicting
> goals need weighing as to their usefulness.

For the case which this is part of, they're not 100% unused.

> > trap_info_t is particularly notable since even though the hypercall is
> > x86-only, the wrapper is likely to be visible to generic source code.
> 
> Why would it be?

Related to converting ARM to using inline assembly-language wrappers
instead of the current declarations+small assembly wrapper function.

The first step is you split the Linux header
arch/x86/include/asm/xen/hypercall.h.  The upper portion (the x86
inline assembly language) remains in arch/x86/include, all the
HYPERVISOR_*() wrappers go into include/xen/$somewhere.  Several months
ago I sent a candidate header to implement _hypercall#() for ARM.

Problem is:
static inline int
HYPERVISOR_set_trap_table(struct trap_info *table)
{
        return _hypercall1(int, set_trap_table, table);
}
Without without `struct trap_info;` somewhere, this fails.

Now, this isn't used on ARM, but this is tricky to guess.  Someone
setting this up won't know whether any given function is absent due to
being legacy and unlikely to ever be on non-x86.  Versus simply not /yet/
being available on non-x86 (vPCI).

Perhaps xen/include/public/xen.h should only conditionally #define some
of the __HYPERVISOR_* constants.  Likely there should be a way to force
all the hypercall numbers to be available (for linting).  Yet as the
current Linux header hints, perhaps there should be a way to disable the
PV constants even on x86.


> > Signed-off-by: Elliott Mitchell <ehem+xen@m5p.com>
> > ---
> > trap_info_t and HYPERVISOR_set_trap_table() is something I ran into.
> > With the incomplete definition, the wrapper is accaptable to an ARM
> > compiler.  Without the incomplete definition, it fails.
> > 
> > Note, this has been shown to build in my environment.  I'm unsure
> > whether the incomplete structure plus type definition is acceptable to
> > all supportted compilers.
> 
> It's permitted by the standard, so ought to be acceptable to all C89
> compilers (which is what we use as baseline for the public headers).

FreeBSD recently changed $something which now makes this work.  Since I
had (less than 2 years ago) been noticing this.  This could be deemed
unnecessary at this point, I'm simply noting it.

> > --- a/xen/include/public/xen.h
> > +++ b/xen/include/public/xen.h
> > @@ -75,13 +75,25 @@ DEFINE_XEN_GUEST_HANDLE(xen_ulong_t);
> >   */
> >  
> >  #define __HYPERVISOR_set_trap_table        0
> > +#ifndef __ASSEMBLY__
> > +typedef struct trap_info trap_info_t;
> > +DEFINE_XEN_GUEST_HANDLE(trap_info_t);
> > +#endif
> >  #define __HYPERVISOR_mmu_update            1
> > +#ifndef __ASSEMBLY__
> > +typedef struct mmu_update mmu_update_t;
> > +DEFINE_XEN_GUEST_HANDLE(mmu_update_t);
> > +#endif
> >  #define __HYPERVISOR_set_gdt               2
> >  #define __HYPERVISOR_stack_switch          3
> >  #define __HYPERVISOR_set_callbacks         4
> >  #define __HYPERVISOR_fpu_taskswitch        5
> >  #define __HYPERVISOR_sched_op_compat       6 /* compat since 0x00030101 */
> >  #define __HYPERVISOR_platform_op           7
> > +#ifndef __ASSEMBLY__
> > +typedef struct xen_platform_op xen_platform_op_t;
> > +DEFINE_XEN_GUEST_HANDLE(xen_platform_op_t);
> > +#endif
> >  #define __HYPERVISOR_set_debugreg          8
> >  #define __HYPERVISOR_get_debugreg          9
> >  #define __HYPERVISOR_update_descriptor    10
> > @@ -100,9 +112,17 @@ DEFINE_XEN_GUEST_HANDLE(xen_ulong_t);
> >  #define __HYPERVISOR_vcpu_op              24
> >  #define __HYPERVISOR_set_segment_base     25 /* x86/64 only */
> >  #define __HYPERVISOR_mmuext_op            26
> > +#ifndef __ASSEMBLY__
> > +typedef struct mmuext_op mmuext_op_t;
> > +DEFINE_XEN_GUEST_HANDLE(mmuext_op_t);
> > +#endif
> >  #define __HYPERVISOR_xsm_op               27
> >  #define __HYPERVISOR_nmi_op               28
> >  #define __HYPERVISOR_sched_op             29
> > +#ifndef __ASSEMBLY__
> > +typedef struct sched_shutdown sched_shutdown_t;
> > +DEFINE_XEN_GUEST_HANDLE(sched_shutdown_t);
> > +#endif
> >  #define __HYPERVISOR_callback_op          30
> >  #define __HYPERVISOR_xenoprof_op          31
> >  #define __HYPERVISOR_event_channel_op     32
> 
> Interspersing the #define-s with typedef-s and
> DEFINE_XEN_GUEST_HANDLE()s clutters this section imo. If movement to
> a central place was wanted, then perhaps below all of the #define-s,
> then allowing to get away with just a single "#ifndef __ASSEMBLY__".

I like associating the hypercalls and their special structure type.
Perhaps roughly:
#ifdef __ASSEMBLY__
#define DEFINE_XEN_GUEST_HANDLE(arg)
#define XEN_TYPEDEF(type)
#else
#define XEN_TYPEDEF(type) typedef struct type type#_t;
#endif

(this hasn't been tested)

> > @@ -449,8 +469,6 @@ struct mmuext_op {
> >          xen_pfn_t src_mfn;
> >      } arg2;
> >  };
> > -typedef struct mmuext_op mmuext_op_t;
> > -DEFINE_XEN_GUEST_HANDLE(mmuext_op_t);
> >  #endif
> >  
> >  /*
> > @@ -615,8 +633,6 @@ struct mmu_update {
> >      uint64_t ptr;       /* Machine address of PTE. */
> >      uint64_t val;       /* New contents of PTE.    */
> >  };
> > -typedef struct mmu_update mmu_update_t;
> > -DEFINE_XEN_GUEST_HANDLE(mmu_update_t);
> 
> Imo a prereq to moving these up is to move the struct-s themselves into
> the x86 header. From all we can tell no present or future port is going
> to use these PV-only interfaces.

With this patch, an experimental build of FreeBSD/arm64 succeeded.  I'm
unsure which flavor of C standard is presently enabled with FreeBSD
kernel builds though (I believe it was bumped 6-12 months ago).


-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \BS (    |         ehem+sigmsg@m5p.com  PGP 87145445         |    )   /
  \_CS\   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445




From xen-devel-bounces@lists.xenproject.org Fri Sep 22 16:11:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 16:11:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606945.945047 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjikh-0006Dt-NT; Fri, 22 Sep 2023 16:11:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606945.945047; Fri, 22 Sep 2023 16:11:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjikh-0006Dm-Jn; Fri, 22 Sep 2023 16:11:35 +0000
Received: by outflank-mailman (input) for mailman id 606945;
 Fri, 22 Sep 2023 16:11:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5esq=FG=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qjikf-0006De-Cc
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 16:11:33 +0000
Received: from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com
 [2a00:1450:4864:20::32d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b11f5920-5962-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 18:11:31 +0200 (CEST)
Received: by mail-wm1-x32d.google.com with SMTP id
 5b1f17b1804b1-405497850dbso2477675e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 22 Sep 2023 09:11:31 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 b12-20020adff90c000000b0031fb91f23e9sm4765070wrr.43.2023.09.22.09.11.29
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 22 Sep 2023 09:11:30 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b11f5920-5962-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695399090; x=1696003890; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=NanpKBgSiW5Vy97Fod+2bEXgd1WaBGRNJtbrr8dk9TY=;
        b=FKD0qf1eQb+khVV/g9byNkqFkGSEG6L4q14XRAwXbdmGFHFwvvEwtcUgvnJ23foxyn
         VxbFK15iIl/yiS712IxW/hFR3g93zQrc170V53GIXtK1ofcLZMkIQhNlL1eVWgr3y/c6
         XBs/mZZ+ltb6yg83ybzildiu9BJjweaDj7AR0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695399090; x=1696003890;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=NanpKBgSiW5Vy97Fod+2bEXgd1WaBGRNJtbrr8dk9TY=;
        b=oeBRisgKzd0H9GIf3Ms9D/bed8YSizZgiq674rzOicTojNbH55R/glQ+uJpTYZt76l
         Zdi6zT/FAgICPeC7O4ZozF6olTnUK0b8h4P0PS0dhinWYUCVk1bOU14ohi325TAAElZB
         p8fD+pgV1I/+x3p0kXf+advD3xOW7xR2vohIsrIEjP22dnbisgk47GfBi1ahYBVx2A0i
         tcWYwpTSL/QbEdK8qvIN9C3oj37f6GN+EQh76LDmpz7PZAFP/uJIf40rW8NuSm8Sixo2
         s8rizapwrEaQazpN62Tgy2Wlo6Ph5oUmsPwlYses0EUonuMxHnlsFNKzkYZD5QF9oF7p
         ZGiA==
X-Gm-Message-State: AOJu0YxUlE22DTwLoPdLx+WdqkaB5hfgAYqjJ7Lct6B0W+YqRhGHvDVL
	WYnD1Pm2ilKuFbjiRtAhsM2ZZQ==
X-Google-Smtp-Source: AGHT+IFK7wcez8or/rk3c8ywJ1Clu8XeVuM32QbQf8PbhRnsUPNvB8RWgGlK730hFdyC35ZttT9PZQ==
X-Received: by 2002:a05:6000:180c:b0:31a:d4e4:4f63 with SMTP id m12-20020a056000180c00b0031ad4e44f63mr115782wrh.18.1695399090450;
        Fri, 22 Sep 2023 09:11:30 -0700 (PDT)
Message-ID: <43428539-4fe0-e2ac-48a0-b2fd9bcc0d1f@citrix.com>
Date: Fri, 22 Sep 2023 17:11:29 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 5/7] x86: Introduce x86_merge_dr6()
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-6-andrew.cooper3@citrix.com>
 <943d1d28-08de-3c1a-5a64-6caa98cdba78@suse.com>
In-Reply-To: <943d1d28-08de-3c1a-5a64-6caa98cdba78@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 18/09/2023 12:37 pm, Jan Beulich wrote:
> On 15.09.2023 22:36, Andrew Cooper wrote:
>> The current logic used to update %dr6 when injecting #DB is buggy.
>>
>> The SDM/APM documention on %dr6 updates is far from ideal, but does at least
>> make clear that it's non-trivial.  The actual behaviour is to overwrite
>> B{0..3} and accumulate all other bits.
> As mentioned before, I'm okay to ack this patch provided it is explicitly said
> where the information is coming from.

The information *is* coming from the relevant paragraph of the relevant
chapters of the relevant manuals.

I don't need to teach programmers how to suck eggs.  Nor am I going to
quote buggy manuals (corrections are pending for both) as a
justification for restating several paragraphs of information as a oneliner.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 17:17:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 17:17:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606950.945057 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjjlt-0007js-El; Fri, 22 Sep 2023 17:16:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606950.945057; Fri, 22 Sep 2023 17:16:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjjlt-0007jl-AP; Fri, 22 Sep 2023 17:16:53 +0000
Received: by outflank-mailman (input) for mailman id 606950;
 Fri, 22 Sep 2023 17:16:52 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjjls-0007jb-49; Fri, 22 Sep 2023 17:16:52 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjjlq-0007ov-9v; Fri, 22 Sep 2023 17:16:50 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjjlp-0004q9-SM; Fri, 22 Sep 2023 17:16:49 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjjlp-0006Cp-Rz; Fri, 22 Sep 2023 17:16:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=jgKyo79oTbLTrFAvg3aHxlG3tjZWvjXuW1GgkaPLg28=; b=pNKftDIsAH2NV3z/nwHXvQ+Ywm
	Z9tLvla3Hez94k1KBVV7850KsnOL8YH7MMBglUQtLwMNwMRnwMXR1MHxl2Fov+73syo/97CuRy+ey
	e4lPYo3CFNNcXg3PBqVj3klaFRDGxT1Lk3xbNhvrH+rxqPSJkfXYgxkEoKgL9IKQM7nA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183110-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-4.15-testing test] 183110: tolerable trouble: fail/pass/starved - PUSHED
X-Osstest-Failures:
    xen-4.15-testing:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-4.15-testing:test-amd64-i386-libvirt-pair:xen-install/src_host:fail:heisenbug
    xen-4.15-testing:test-amd64-amd64-xl-qcow2:guest-start/debian.repeat:fail:heisenbug
    xen-4.15-testing:test-amd64-i386-libvirt-pair:xen-install/dst_host:fail:heisenbug
    xen-4.15-testing:test-amd64-i386-libvirt-raw:xen-install:fail:heisenbug
    xen-4.15-testing:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-4.15-testing:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
    xen-4.15-testing:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    xen=3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47
X-Osstest-Versions-That:
    xen=0517763e771f2e2582bc492fafa42a86400ab957
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 22 Sep 2023 17:16:49 +0000

flight 183110 xen-4.15-testing real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183110/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183095 pass in 183110
 test-amd64-i386-libvirt-pair 10 xen-install/src_host fail in 183108 pass in 183110
 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail in 183108 pass in 183110
 test-amd64-i386-libvirt-pair 11 xen-install/dst_host       fail pass in 183095
 test-amd64-i386-libvirt-raw   7 xen-install                fail pass in 183108

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt-raw 14 migrate-support-check fail in 183108 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182658
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182658
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182658
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182658
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182658
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182658
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182658
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182658
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182658
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182658
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw  3 hosts-allocate               starved  n/a
 test-arm64-arm64-libvirt-xsm  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit1   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl           3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-xsm       3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit2   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-thunderx  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-vhd       3 hosts-allocate               starved  n/a

version targeted for testing:
 xen                  3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47
baseline version:
 xen                  0517763e771f2e2582bc492fafa42a86400ab957

Last test of basis   182658  2023-09-06 09:50:17 Z   16 days
Testing same since   183081  2023-09-20 10:06:38 Z    2 days    4 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          starved 
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 starved 
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      starved 
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  starved 
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  starved 
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 fail    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 starved 
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 starved 
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      starved 
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   0517763e77..3a9a2901cc  3a9a2901cc8b24f28dbdc6fb63f57006c77a1f47 -> stable-4.15


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 18:25:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 18:25:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606972.945111 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjkqD-0000vQ-2A; Fri, 22 Sep 2023 18:25:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606972.945111; Fri, 22 Sep 2023 18:25:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjkqC-0000vJ-Tz; Fri, 22 Sep 2023 18:25:24 +0000
Received: by outflank-mailman (input) for mailman id 606972;
 Fri, 22 Sep 2023 18:25:23 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjkqB-0000v9-2N; Fri, 22 Sep 2023 18:25:23 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjkqA-0000xW-QY; Fri, 22 Sep 2023 18:25:22 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjkqA-0007gC-Du; Fri, 22 Sep 2023 18:25:22 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjkqA-0006Mn-DJ; Fri, 22 Sep 2023 18:25:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ZrxrFLMC+AAXJTDLynZBUlv3MJ69cY1ywdBDA36Ak2s=; b=fvUBoo01gbqkjfV7bkgxbm+BpQ
	3bcPzCg0CZhTcRtzeJP/RH+rkyrWtGTFTgQePNxbJbO7x7wtJQfrI1PumRMnfHKNIEHoeDVmriswg
	cDAeoijlcZ42w8wdZxHfBx/6CYO7un80S2uUIWo5zIDXA+5IBlewEmIacMtNeY2fa6gw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183119-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183119: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=8b2e6b90b85fd4b1f7f921da09b16f5175acea8a
X-Osstest-Versions-That:
    ovmf=b5003ab72564b51892f4c933eb39d7d6083f3824
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 22 Sep 2023 18:25:22 +0000

flight 183119 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183119/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 8b2e6b90b85fd4b1f7f921da09b16f5175acea8a
baseline version:
 ovmf                 b5003ab72564b51892f4c933eb39d7d6083f3824

Last test of basis   183115  2023-09-22 10:43:46 Z    0 days
Testing same since   183119  2023-09-22 15:12:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jeff Brasen <jbrasen@nvidia.com>
  Vidya Sagar <vidyas@nvidia.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   b5003ab725..8b2e6b90b8  8b2e6b90b85fd4b1f7f921da09b16f5175acea8a -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 18:54:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 18:54:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606981.945120 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjlIQ-0005N3-8S; Fri, 22 Sep 2023 18:54:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606981.945120; Fri, 22 Sep 2023 18:54:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjlIQ-0005Mw-5f; Fri, 22 Sep 2023 18:54:34 +0000
Received: by outflank-mailman (input) for mailman id 606981;
 Fri, 22 Sep 2023 18:54:32 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjlIO-0005Mm-Nn; Fri, 22 Sep 2023 18:54:32 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjlIO-0001hO-D9; Fri, 22 Sep 2023 18:54:32 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjlIN-0000hc-WD; Fri, 22 Sep 2023 18:54:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjlIN-0006oo-Vo; Fri, 22 Sep 2023 18:54:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=frjVTfcWxP9zXew0+TULz1RzDz5808F8CzKjuTox9ME=; b=kPhgU8tb0ZbipCLvuyQnI/8POu
	2Xu1KmoOKPq9mJWbWSppijSpbGDywYq3vTUGNfug9qHj0kBvVwqU8bZWn4x2vKezZOpUm3CQlOiyt
	AT7uNys7L8NGfl1NF7OeQR4DlfgGu7wHetmbdZBCbk+neShHUXQAC9f1py43siUMCtRw=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183118-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183118: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=e282067cf298ca6df319c3be86269858e2b26ae8
X-Osstest-Versions-That:
    xen=d09e44e5d8fdfe0a8b8af1ef604dbc699497e11a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 22 Sep 2023 18:54:31 +0000

flight 183118 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183118/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  e282067cf298ca6df319c3be86269858e2b26ae8
baseline version:
 xen                  d09e44e5d8fdfe0a8b8af1ef604dbc699497e11a

Last test of basis   183116  2023-09-22 11:00:24 Z    0 days
Testing same since   183118  2023-09-22 14:00:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  George Dunlap <george.dunlap@cloud.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   d09e44e5d8..e282067cf2  e282067cf298ca6df319c3be86269858e2b26ae8 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 20:03:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 20:03:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606989.945131 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjmMl-0006Fp-3I; Fri, 22 Sep 2023 20:03:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606989.945131; Fri, 22 Sep 2023 20:03:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjmMk-0006Fi-VS; Fri, 22 Sep 2023 20:03:06 +0000
Received: by outflank-mailman (input) for mailman id 606989;
 Fri, 22 Sep 2023 20:03:05 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=5esq=FG=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qjmMj-0006FX-Et
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 20:03:05 +0000
Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com
 [2a00:1450:4864:20::330])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 08e797ca-5983-11ee-9b0d-b553b5be7939;
 Fri, 22 Sep 2023 22:03:02 +0200 (CEST)
Received: by mail-wm1-x330.google.com with SMTP id
 5b1f17b1804b1-4054f790190so4917575e9.2
 for <xen-devel@lists.xenproject.org>; Fri, 22 Sep 2023 13:03:02 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 j9-20020a05600c300900b003fe407ca05bsm4168486wmh.37.2023.09.22.13.03.00
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 22 Sep 2023 13:03:01 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 08e797ca-5983-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695412981; x=1696017781; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=h6CVIWV6uAepyKg/re31PSIo9QSntPfiwd1DIrFOUFc=;
        b=OcEw23bY+JpM+RzMNzHTmjjlCm9mvWAJU5PSOCmxkb6hUgYxnTZmV8zwIfaqkdeutQ
         hy7ktISaAT5YLGLuM3xyxhrTywnx8xTlDKQTOQ9TvAIdd3dBVSmYpHL2PoqkehyOKDNI
         M7FvFvT9n3jlCMjVkW/6a+uH2kRfz8zyFPgxg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695412981; x=1696017781;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=h6CVIWV6uAepyKg/re31PSIo9QSntPfiwd1DIrFOUFc=;
        b=QaWCqjQ0jGl+rOJtyFsPbKWBpJgx9Z7Y13vbbjfavbbeKC6xAV4hjjXhDOjJzbY/lL
         cm5K4sSk3MOXli76ZjHdGO6zk8eX1z8GrMrH6LEVMGbmX80qh3yhV3yDw7HNvoii3lTV
         /BkgoU0nfcwmDnQuny7TYdTOXmKws1I/fYd4hEC2Bgcy2Syb72j/uQugzgH+WvH5CvQe
         AV6ZXxr0v7NmNVwJeIP8M0kk8Ep4rGVrakpRUrGVTjzNY62+BMenofcP0ehmhDl4adMr
         2AYdIjH65hqCJSyBaMeohVJ88AxOt84W6IObnVZe+CZYgfBjoPsNuRGIl3AzCmkou+LZ
         abAg==
X-Gm-Message-State: AOJu0YwZKvh9MSjUOtYEx5jp0CXh0X2m6WTgIgMXToVahlbzX/QOkrhf
	3hFLvWcD6JsMKwvljAzrYAj0cg==
X-Google-Smtp-Source: AGHT+IHjQFUQkR8JRwXzUoh3J1Th8Pq6ONePPjZP0WWzVDdLDccHTzRw2F5ZWKAUyZydORsaQ/ueYw==
X-Received: by 2002:a7b:c8d0:0:b0:402:fec4:fddc with SMTP id f16-20020a7bc8d0000000b00402fec4fddcmr313388wml.17.1695412981564;
        Fri, 22 Sep 2023 13:03:01 -0700 (PDT)
Message-ID: <d462f419-4cd2-53c4-7694-b43b7fa68d88@citrix.com>
Date: Fri, 22 Sep 2023 21:03:00 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v3 4/4] pdx: Add CONFIG_PDX_COMPRESSION as a common
 Kconfig option
Content-Language: en-GB
To: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
 <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Julien Grall <jgrall@amazon.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <20230808130220.27891-1-alejandro.vallejo@cloud.com>
 <20230808130220.27891-5-alejandro.vallejo@cloud.com>
In-Reply-To: <20230808130220.27891-5-alejandro.vallejo@cloud.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Several things.

First, Shawn: PPC has gained a HAS_PDX, the deletion of which needs
merging into this patch.

It was added as part of 4a2f68f909304 which was "minimal to build". 
This series address the issue you presumably encountered where pdx.c
appears to be optional but wasn't.


Do PPC platforms have (or potentially have) sparse RAM banks?

If like x86 the answer is definitely no, then you want to have
PDX_COMPRESSION=n

If the answer is definitely yes always, then you want PDX_COMPRESSION=y

If the answer is system specific, then you want to offer users a choice.


On 08/08/2023 2:02 pm, Alejandro Vallejo wrote:
> diff --git a/xen/common/Kconfig b/xen/common/Kconfig
> index 0d248ab941..2c1d1fc3a2 100644
> --- a/xen/common/Kconfig
> +++ b/xen/common/Kconfig
> @@ -23,6 +23,16 @@ config GRANT_TABLE
>  
>  	  If unsure, say Y.
>  
> +config PDX_COMPRESSION
> +	bool "PDX (Page inDeX) compression support" if EXPERT

This still needs hiding on x86.  The minimal hack for 4.18 is "if EXPERT
&& !X86".

Other adjustments needed depending on the PPC answer above.

> +	default ARM
> +	help
> +	  PDX compression is a technique that allows the hypervisor to
> +	  represent physical addresses in a very space-efficient manner.
> +	  This is very helpful reducing memory wastage in systems with
> +	  memory banks with base addresses far from each other, but carries
> +	  a performance cost.

This is still intractable for a non-Xen-maintainer, and inaccurate. 
Whether you get any benefit at all depends on how the sparseness happens
to line up.

---
PDX compression is a technique designed to reduce the memory overhead of
physical memory management on platforms with sparse RAM banks.

If your platform does have sparse RAM banks, enabling PDX compression
may reduce the memory overhead of Xen, but does carry a runtime
performance cost.

If your platform does not have sparse RAM banks, do not enable PDX
compression.
---

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 21:28:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 21:28:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.606995.945142 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjngy-000192-1c; Fri, 22 Sep 2023 21:28:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 606995.945142; Fri, 22 Sep 2023 21:28:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjngx-00018v-Rt; Fri, 22 Sep 2023 21:28:03 +0000
Received: by outflank-mailman (input) for mailman id 606995;
 Fri, 22 Sep 2023 21:28:02 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjngw-00018l-OF; Fri, 22 Sep 2023 21:28:02 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjngw-0005WG-GM; Fri, 22 Sep 2023 21:28:02 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjngw-0005El-4v; Fri, 22 Sep 2023 21:28:02 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjngw-0000eW-4U; Fri, 22 Sep 2023 21:28:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=vr1Qg9LH2lhs6B4t1hsxWrXLB6pR/f9OVj2FRxVUtLA=; b=T5dg+SbcDsgItMrTMKq2jGlE5S
	1h4H8iDT6qK0Q7yzjUaLJoZviHb+20wagipKpl2ulNG1DB5ccsXkbJpckD+fNdJbem9LYwsrsgTVp
	dR8Qn7RHp6+S4GgODb+NplAWgft6sOJme1OvXe1UmqUVfnVxzF9LLZWL0Wp6DAQSa84M=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183120-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183120: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=95a8a2c123971fa805395222cd6e1c77f3d1826d
X-Osstest-Versions-That:
    xen=e282067cf298ca6df319c3be86269858e2b26ae8
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 22 Sep 2023 21:28:02 +0000

flight 183120 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183120/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  95a8a2c123971fa805395222cd6e1c77f3d1826d
baseline version:
 xen                  e282067cf298ca6df319c3be86269858e2b26ae8

Last test of basis   183118  2023-09-22 14:00:25 Z    0 days
Testing same since   183120  2023-09-22 19:03:32 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrew Cooper <andrew.cooper3@citrix.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   e282067cf2..95a8a2c123  95a8a2c123971fa805395222cd6e1c77f3d1826d -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 22:03:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 22:03:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607003.945151 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjoEh-0006SR-Iw; Fri, 22 Sep 2023 22:02:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607003.945151; Fri, 22 Sep 2023 22:02:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjoEh-0006SK-F2; Fri, 22 Sep 2023 22:02:55 +0000
Received: by outflank-mailman (input) for mailman id 607003;
 Fri, 22 Sep 2023 22:02:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xvxl=FG=epam.com=prvs=362941c556=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qjoEf-0006SE-NU
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 22:02:53 +0000
Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com
 [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c5c39d4f-5993-11ee-878a-cb3800f73035;
 Sat, 23 Sep 2023 00:02:51 +0200 (CEST)
Received: from pps.filterd (m0174683.ppops.net [127.0.0.1])
 by mx0b-0039f301.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 38MGijC2028693;
 Fri, 22 Sep 2023 22:02:44 GMT
Received: from eur04-he1-obe.outbound.protection.outlook.com
 (mail-he1eur04lp2050.outbound.protection.outlook.com [104.47.13.50])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3t9eqeghhj-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Fri, 22 Sep 2023 22:02:44 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by GV2PR03MB9450.eurprd03.prod.outlook.com (2603:10a6:150:d7::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Fri, 22 Sep
 2023 22:02:40 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f]) by VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f%7]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 22:02:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c5c39d4f-5993-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=oWhoxnP4hGRRASICsX60nPVkbdoobtmFE9+tmXW+lIStPJs2X3TO03aep4KWwszMkQADcm1B6Acsrw5FDMkijMcLVBQdHgIJFi1fCaqWYD5zspHoqDBOIQwyRxBXwjeYONMMCzHXrSjKaEVPGZAxfyq0kxsdUzsvxCunXJ2y2FeCyGNps1TNv+WKNvD4E+Kr2aViNs2y6scVZP2TAoOQX0unRxyDYXAENdy3TZRWiM4jl7ZjHppiUoZoOcOqFBAuCk66aVSArAv5OoQZWa7mkBsJQlFZiT6Qn+8PMlMbecmTctjSfvCCW8KyAAg8F8XGr4aoGXGxYt9Bcw3lw5qgeA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YrnjRjeA70pd1e/P97qqXsmHPDfkXcLUyIaVep3si5U=;
 b=ArQkYikU86PgO/xXBhDzCjG52JTIz7ZFxXO35B7GXtvcsPYfP+bvisK3PRBWgHABRQgE26cGtsCA7ywyYEhMS8TH4FxrJCKda3l7M61L5SFnW6ahuNEH1EXOnC073IS006VIHWZTzauc0ICrB3gnlAbmtYcwqL0Rm3BjsYMtw7hBIQ5reCemds/qlo1JUW9pLLlGhuC8THp0k8JjNCQN1YiMRuAuT2zMpvRMugznbxFkg8eslHyy34r3kGiL6JAJax0GAxp/YCLYT+bUc4rHkSGsI0sV/U/a1G5pyMuUop6S4z2MUVyNyFzG56wizzkcEqRhS5aav09IXfOidolkDQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YrnjRjeA70pd1e/P97qqXsmHPDfkXcLUyIaVep3si5U=;
 b=NonAeH/PZLEav1HzxkHqJQcyvTQWWpukeEJuGjs4AqJY3DKjtW29RXqg2IukXKPpDPu8kTjNUMPqhk01mGbdoXKHy46RPXTeIDb7yZ75PnS4jvj+VZ+pk2qUIWM8zyDBrWhjmQzTaOufRI4CciE2/rm8paYIjii6+IaF5SaZ3nlemYdmNHl9cJMqTsvvPUT+DF3EPEayHceFu4ocP14bM+Sibvg8yuhrh0G6Ih7t2lR9jJPjixCYP9UjVs02Khy1lSdQpEoTJMsLIhEJjZlHTfwpwPrdkpNsD2sl87a0cT2nw9HQIf0X1jNetQ9dQ6Qj/+Ox0qh6VyfAwHK9UOxL5A==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: Marc Zyngier <maz@kernel.org>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
        Stewart
 Hildebrand <stewart.hildebrand@amd.com>,
        Stefano Stabellini
	<sstabellini@kernel.org>,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Julien
 Grall <julien@xen.org>
Subject: Re: [PATCH v1 2/3] ARM: GICv3 ITS: do not invalidate memory while
 sending a command
Thread-Topic: [PATCH v1 2/3] ARM: GICv3 ITS: do not invalidate memory while
 sending a command
Thread-Index: 
 AQHZ6ux4LpE3chDIj0mOPudUv9951bAiHTaAgAAZXICAAA0EAIADt3gAgACvAICAAMDUgA==
Date: Fri, 22 Sep 2023 22:02:39 +0000
Message-ID: <87v8c1euip.fsf@epam.com>
References: <20230919112827.1001484-1-volodymyr_babchuk@epam.com>
 <20230919112827.1001484-3-volodymyr_babchuk@epam.com>
 <1614d73f-72b0-44f2-8e34-0e6c58a1a375@xen.org> <87fs3afcxb.fsf@epam.com>
 <597db9f5-b959-4b75-9410-0d0c16e3acda@xen.org> <875y43f45p.fsf@epam.com>
 <86wmwio5x8.wl-maz@kernel.org>
In-Reply-To: <86wmwio5x8.wl-maz@kernel.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: mu4e 1.10.7; emacs 29.1
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|GV2PR03MB9450:EE_
x-ms-office365-filtering-correlation-id: 43913f52-dfba-429d-9eb3-08dbbbb7a374
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 oLgd88aKA/IjJU9t8NAYLkhaUZLWdB6EjIeqOlsC/yqHUrWmwJpBWpeKIhaMAoaaPkHjeFZu1jQ1RCJFylJVtduM/G0+6NwUijQ7Qmj/Koyc5gE/QezEN3fd+9qYXrhQJcxCYPbeXXMfBGzpI1SPEfIdxzcclzLUnenyJ6lM9lmcQMqHcbrudvg3HmHoMo8weAh0VUotqmEehWhkX+uSa6aj1R94lMxP6wdzdEl7+5bkNS1ZrPOL0BWT93AEBUNQmHvrXdwhcBPc/v5PTSVCw5VFFjbHvbUmB9AX82Tgtb+TGSzvu2b64gYfE6fFahzXSONUjw84L0GUeKtPjM8NdN/NDgRY92l7N+tvExmQ5OJXpV2UNyZT4m1ef3zY3yHBWSHNlGOkk3icijLElLqVG0LGXzrxEFY0fpWD7Xd1zxGPQ9EA1rW/Sl7fpAGFXThJgfB/qmtJrVl9nHodZIFrykw3HumqSAU47YmyfB6jrdmyJ/tOvc5JwRT+1WFomvbibV1k9GVjp4HIekSQ4b+uEeD1mTVrxp6ssc9o2N7/c3GOlOb39yByZlHvVM9R7JRJxXwUv/iVEAcwbhZR+j5ocCQUeJVCcSxoRVOneRNXaFTg8O6aWjCoGfHPJP95o+GD
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(376002)(39860400002)(346002)(366004)(136003)(451199024)(186009)(1800799009)(38070700005)(71200400001)(478600001)(38100700002)(83380400001)(2616005)(86362001)(26005)(6512007)(6486002)(55236004)(6506007)(8676002)(41300700001)(122000001)(64756008)(8936002)(66556008)(2906002)(5660300002)(66476007)(66946007)(54906003)(66446008)(36756003)(76116006)(6916009)(91956017)(316002)(4326008);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?XBmdeqgH/v3K2UeRNxfoaLWYD95qCYC8RPAHg1/fixhQhb8fV9iKrFgw31?=
 =?iso-8859-1?Q?Cn/MHOoT3nDk07Yfi85DCVXyqqMDjHHFXbCS8Wn839oLMNm3PSDWbklKGd?=
 =?iso-8859-1?Q?VD7AmnvzcVldCkHbsakJrIhM7eP6rGv+C7IKt2fisMu0+Ltsz9xqLBnOVE?=
 =?iso-8859-1?Q?oGB0Jvi8uB4+t7ZHEuoVmiBkpRwfA+/w0sRxav0CwKRUPuA+Qj14zIlwhY?=
 =?iso-8859-1?Q?0FU2NmEmGmkfsN64i2vjyCBYdd0p+hSd2ViLptB0Yg+xkVywgAxIOuSegE?=
 =?iso-8859-1?Q?eDiiEbvK0u2tYlClHV1CQz7pVvrVxaiR5EyrwMPI3/m/zeMBnop6pqD6Bp?=
 =?iso-8859-1?Q?EGekoFtwUCLMUer1Jedn9j93b7ukG4UwmNYY50nrkQWmeSNn1lHL9cctIR?=
 =?iso-8859-1?Q?EcQOS5GIJQYiSdi8XiQGCGGl+dMwhVELf81AiqZ4r26XSmbzNfmTUTbJ2A?=
 =?iso-8859-1?Q?isE81KD07+7cebD2zbJJMgROraCbIU/Xq01JrXRxPC+wqoJlT2I4uZ4YdP?=
 =?iso-8859-1?Q?FtVu07Z2Ib72EVpcfL7VQlGtMelGdiceAg16IVUCnZev8MBIMDn9kWMWu8?=
 =?iso-8859-1?Q?wUlsuQgPoGmpn9bm1sA36yH2pZDipNs2JJTwT/wKK2qtW3zXx4XAqjNVJo?=
 =?iso-8859-1?Q?q0fU0Rhr/PBkpnXsJ0KMXgj39SV6AfTzDLSix+zE3YPJlaNJu7iXWuHcOv?=
 =?iso-8859-1?Q?+QFF292SMqUyAFY22QUrHRV+j+neON2GBZ6N+Tyu1TGA4WT4PbRMBIRBoM?=
 =?iso-8859-1?Q?506oJJpKSbuUlOOgqQqv7yX1CaCY8gavhBsAW3HPY+55Sk0Oh2hguEPUNV?=
 =?iso-8859-1?Q?YUyv9/+w/1ghNgV+jXs5mY51ajjAoqnPg2UU5WcDQPI/I2JXDDEuTR3ers?=
 =?iso-8859-1?Q?vjTsR1CKKhlqTLF0Y7hNMSrea9s1NQCttElOnvLr3Idr6EzDLVr7eyyHm/?=
 =?iso-8859-1?Q?oaqn+Hb2QdaSxfL9/j7gCA6H9HY9bAWzWUwBhvY3r+jQCjr+Fw/Z3fxtbD?=
 =?iso-8859-1?Q?nTGRhQ+bwkMp1dl5W1KlIIrczuLwZ8ikS7wczdQKU1MHThJoUSKC50Yaic?=
 =?iso-8859-1?Q?wtQIOmXMKk68WxxJttJduBS1gSUxkeLvqK247xHoLGXizkw5D0t012KK9K?=
 =?iso-8859-1?Q?pD0tOQF7NO/ROm1JYHBIogfql71aAz73+0fPx9LdpyHu3SBOq+Gnho+DLh?=
 =?iso-8859-1?Q?yS48vIIPxf+HLbbJE0Tn+Ls0+qu+1YMcCgf9T4TGUc9yU4hit/qVvmjnXV?=
 =?iso-8859-1?Q?9Eu02a4KsBHevOt/tdJjCfrHWNts69q/0fgHc8dSbp9d45Ka+QEf5uhDEx?=
 =?iso-8859-1?Q?+4v0mKLKkjJJCiKcf5kJZpB6UthUuwIcaEbkQaS2llDxT2AXWl2s9cLcio?=
 =?iso-8859-1?Q?jXyBV6R+2qkLRyLsJs2Y1RUNh1LwaIH46eT+srmmVJjT20FVYhn2uCEMBR?=
 =?iso-8859-1?Q?NvVASZCEERooHe7BqNT4vG/bKn6kqBz6BM2IaJtVkOYfkVep/Bs66+tUu2?=
 =?iso-8859-1?Q?HcwMOXKL9LU7BQDoENw1hQJtNYKehOWx6N3JpaDfemC0x+lsjm9z9/dl6g?=
 =?iso-8859-1?Q?eXyAd4P3bXkkZ9ocG+DVaR7N4nxSiwQjDwF8sQtRg22J30fyefJ6BmJIEj?=
 =?iso-8859-1?Q?mj2ogrhH0gEZ4r5jiwnAZ7J53X27fEmKA5rxec28L4Qr3lerg2t6K69Q?=
 =?iso-8859-1?Q?=3D=3D?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 43913f52-dfba-429d-9eb3-08dbbbb7a374
X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Sep 2023 22:02:39.8492
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: OypXTrO01kLa2hTNG0qVA7rtYHyPxpkvzpA/JzmxiZPP3DVo+sjMNL+WxwR9jgDMLXqlM9t0Pjmm49zweDJ0jp1BxSVQPctity4Z/0Cl68k=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR03MB9450
X-Proofpoint-GUID: Zk2IJEgEzsmzKs66AmMJAu_MHhXbzCIE
X-Proofpoint-ORIG-GUID: Zk2IJEgEzsmzKs66AmMJAu_MHhXbzCIE
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-09-22_19,2023-09-21_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501
 impostorscore=0 clxscore=1015 malwarescore=0 phishscore=0 mlxlogscore=659
 mlxscore=0 spamscore=0 adultscore=0 lowpriorityscore=0 bulkscore=0
 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2309220188


Hello Marc,

Marc Zyngier <maz@kernel.org> writes:

> Volodymyr,
>
> On Fri, 22 Sep 2023 01:22:11 +0100,
> Volodymyr Babchuk <Volodymyr_Babchuk@epam.com> wrote:
>>=20
>>=20
>> Hi Mark,
>
> s/k/c/

Oh, I'm sorry.

>>=20
>> I am writing to you, because you are GICv3 maintainer in Linux. We are
>> updating ITS driver in Xen and we have a question about cache
>> maintenance WRT memory shared with ITS. As I can see, the Linux ITS
>> driver uses gic_flush_dcache_to_poc() all over the code. This boils down
>> to "dc civac" instruction which does both clean and invalidate. But do
>> we really need to invalidate a cache when we are sending an ITS command?
>> In my understanding it is sufficient to clean a cache only and Linux
>> uses clean&invalidate just out of convenience. Is this correct?
>
> It really depends how you look at it. We use DC CIVA as the standard
> way to give a buffer to a device, as that's what the DMA API
> does. Switching to a simple clean is possible, but I don't really see
> what it brings you.
>
> ITS commands are usually written as a single command followed by a
> SYNC/VSYNC. That's a total a 8 64bit words, which makes a cache line
> on 99.999% of the implementations.
>
> What do you gain by keeping the cache line around? Not much. By the
> time you go around the command queue and need the same data again, it
> will have been evicted from your L1 already.

This is a great point. Thank you.

--=20
WBR, Volodymyr=


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 22:27:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 22:27:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607010.945161 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjocU-0001l2-J4; Fri, 22 Sep 2023 22:27:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607010.945161; Fri, 22 Sep 2023 22:27:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjocU-0001kv-GG; Fri, 22 Sep 2023 22:27:30 +0000
Received: by outflank-mailman (input) for mailman id 607010;
 Fri, 22 Sep 2023 22:27:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xvxl=FG=epam.com=prvs=362941c556=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qjocT-0001kp-Bh
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 22:27:29 +0000
Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com
 [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 35965004-5997-11ee-878a-cb3800f73035;
 Sat, 23 Sep 2023 00:27:27 +0200 (CEST)
Received: from pps.filterd (m0174680.ppops.net [127.0.0.1])
 by mx0b-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38MFIULN007803; Fri, 22 Sep 2023 22:27:22 GMT
Received: from eur04-db3-obe.outbound.protection.outlook.com
 (mail-db3eur04lp2050.outbound.protection.outlook.com [104.47.12.50])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3t8tsekyv5-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Fri, 22 Sep 2023 22:27:21 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS2PR03MB9444.eurprd03.prod.outlook.com (2603:10a6:20b:59b::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Fri, 22 Sep
 2023 22:27:17 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f]) by VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::78ef:303c:8f74:957f%7]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 22:27:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 35965004-5997-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jULt63a5JHic0NVKsl3jEfoLv6h5XRUy7t4Tn1swxOflYqr0zUMa9QWPmhAJI8/ZILV9MvP4ROgy+BkNs3vOwDJ1tvIGm7jM6td29s1qgvP5ApwH8rZYeaCD+seS5cizzWu348fvOTb6Sw3YwOnaxiniDWdJlJj8gSHuj75G7QpIO8mKW1Fo1GV8C3bE5Z/adGh2Z2tsgkGiu3bLjC/taJ6GmVOBdWFLL7INGWVB3gh04gFcnpOioDNRKNfbRMY/qh7VI2jFkR16HhH+jhCUOSdCUj7M1ab1jcA6ul1OqRhHSUEDw+G9NCqUZcT7jM/01eO7rAE6/lAWtgoca4KpdQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6VSbBxXyIlHorQ3Rjke6VWSGP5oamwT8jeSrL/OFptk=;
 b=RBHdZ+TPPdMV+U00SwhLV0HRWbm6VtUMSFXRluzllG44u3+noxHV+Pb5Oy6HzDup1d71wikloKjOx9M3hO0TZiZxuXqMMjPZi+XhdMeMwPFJcYbAj7dTMhna/oIWXEdI5Fyb86s8c7OnhA3ME0Eqo+LzGSDG9m9q8u++576w61WOZxvEY9uTvLUlc/FyzO2l7nUV5gRMfcwIS1mSnUPy5fyG7e3KJFOo1Ua7fBZGMq0z55AX91VwyNsfAz0i1VJbmwiSJeiHNAGABwJUv0NfBm8t8zgtEj0dU7dem9pIJ2qUWRaRF3zspU0LbsdSaWmeEBMDBqRzFnd/Mc5zxwTG/w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6VSbBxXyIlHorQ3Rjke6VWSGP5oamwT8jeSrL/OFptk=;
 b=RwPr9NBRPUCdWv2IUXeY0/7Pu9hioGgotp1l8+pUWAaRnvwkd8dzoG1UaMbqle/YDBjA9flyAOg+3H1yekVnln/BXFGB+ho6NtGNMrXR/Bg/EI2gODIp/jycWujksfYsQlWMnTGWj6Fr0zxW6xlvR73g/XvuU8A1zQNDiZydSoo5L667cja9dU7R/B2WR7NRs78Q2KHI6Ljnrc3W9/CaBnI0OMRcRAlrJorQeXh7MGtoIOHRKQE3glynBLO1oeGezL8Y4m9ooUqSK2VKjhEO8Xkv+cP/pTS2qHzG+PjBGlT3pgbg8Uwrv6lF725TdPAcvWogF1sxPi9IpW8g49K6gA==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Stewart Hildebrand <stewart.hildebrand@amd.com>,
        Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>,
        Stefano Stabellini <sstabellini@kernel.org>,
        Julien Grall <julien@xen.org>,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v2] ARM: GICv3 ITS: flush caches for newly allocated ITT
Thread-Topic: [PATCH v2] ARM: GICv3 ITS: flush caches for newly allocated ITT
Thread-Index: AQHZ7aPwbLIfEqCF/k2PKMU6gFIgCg==
Date: Fri, 22 Sep 2023 22:27:15 +0000
Message-ID: <20230922222710.1383808-1-volodymyr_babchuk@epam.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-mailer: git-send-email 2.42.0
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|AS2PR03MB9444:EE_
x-ms-office365-filtering-correlation-id: bafdcd41-b70e-499c-3774-08dbbbbb12f5
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 8NCkCsU49S8q7txrb4I6wLPzlSMA6Icf72wGYmiTFXQkr5ginrHFLTo3PZJDvXUHYPtEVvGh2ZSmZ8kPwji3G03aKPIhTbN9Jqo3iJWllUHhHWX9wBQGlKWoTPbS7V5HlpQM7UgFjX1VDKV5EEAfaCGfcdxSZGxYI73JqR6VgPpb1Ezk7NNWkPZTBx2twBJ4FvPWNdJVf4bJrNXkdt61fpe9sLK0/PBnNQpNHmdBlFx/zv02AYOQzuNNV+nQ5N8esLV53yQeHWCdxri4+VdRZPrBKXkOFlTjVwCoRLKAPbSFQfIODbsA4K6b4lQyrFlSTM5TBit9fEE23Jk5BwbuvEylJ2OxEZFZAyeCoVm5cnG8VwjgjLQShclb4pC7uletf/74+FyOh2cR/uxd6dOfgQJXFc85wzmk9+2B7fnB5sVSdytvy6EQKHe4OZHIKAKo3USEN4YVBjJgjfBxeBS4+JfOsidz5fk/rp9K+di6sePWHEH5AWPJUH7eQ7RDENwWtU8XfoBi49ULeuBVdmfehQn3TUDpyTI7caJcPFknKugIreexwuZkTCsuO0jxDJDFc7WfwYQiPPCUbg+rw65fbDdsTMLEcbnvzrvJv34IszHvRGZ9YEHV4P3OxLA/NQEb
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(376002)(366004)(346002)(39860400002)(1800799009)(186009)(451199024)(6506007)(6486002)(55236004)(2616005)(5660300002)(8936002)(478600001)(6512007)(2906002)(66556008)(8676002)(76116006)(66946007)(54906003)(6916009)(71200400001)(64756008)(66476007)(66446008)(91956017)(316002)(4326008)(26005)(107886003)(41300700001)(38100700002)(1076003)(38070700005)(86362001)(36756003)(122000001)(83380400001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?8/Jd7zS8FCFowujn/Fqr0Yy8CZFkuTBdDS9hTP/bIX5bk603Sy+4tqZX6y?=
 =?iso-8859-1?Q?slefde1t/9Qo/jEbONYyhAau9rTYEI9idsd8trEkq+diDnDG4xUuoqP4bJ?=
 =?iso-8859-1?Q?yU5CzzN3r0FDT1S8aOElqzqS3xbsjCElXPBjKVFYYDgpjy3qWmhVb9MFxx?=
 =?iso-8859-1?Q?lEFu5UK7sDtgSVhTATjxstlBEepqJSOgoG2X5GCHgcqA8RHNRnNEKJecic?=
 =?iso-8859-1?Q?TMKZSeO66JqNoLcbOFPoAVIDl+VVJOJhIYTN41OLodDlunRnrJvUTi/mtA?=
 =?iso-8859-1?Q?tfdB61QRKVtA+29nCSoCWxnpVzrnbbdC2aVg2Qa1NHVkxy2jVOnYC6MjbG?=
 =?iso-8859-1?Q?0hJ8hhoLuahYYAhbEYGp46LrOWDBZGA+WDAw4zoUn0NR1m+Jm997T/GZsm?=
 =?iso-8859-1?Q?Cbq55tQ2ON8+rde4xb+lpTdgAyBuPgknktMhylpeUCwhgb6dPogjStiWWn?=
 =?iso-8859-1?Q?8dwOFzYH3AMsXzje02VhNira1g4IimYz+Y8DZfCdzJ2vptzbcuy+KYmfiN?=
 =?iso-8859-1?Q?Zg3cMoYjk/EvnjLGbhANZfFR3MzjGpNQAtlI34Hl5dyiLcqVKuiKARSBoA?=
 =?iso-8859-1?Q?Pne0mMAn4h0jaof4gsZvBADqn1kpS8BoWWL8efmjgRGw8lCI2npwhIiTjg?=
 =?iso-8859-1?Q?Ao41ei+ujtKV+5dnJ7GBuk7C89atfNcCVLT6/R5fg1sh/3B4TQuElJLLb+?=
 =?iso-8859-1?Q?IQFqZGwWQ6vNTQEi7+me7fZjAUgoWF7QiKHdt7QS41gng8Ty0+LSA5mtgM?=
 =?iso-8859-1?Q?Ncf6yM2som896xcaBlLtzdP+OKZVdv7DiyPoXOSDnJgAAeLGPoYqeuNJtE?=
 =?iso-8859-1?Q?0BnVeQvBV8r/Nm+cyg8vPJgKuFxW5++I/gXZPvo9GZ58voeAoHPuD0L529?=
 =?iso-8859-1?Q?UeI6/8LeyMWfkNOc4ATt0QJM4iJLjFr7kxdzr+Cck/yMT3u0HK8K55Iu5U?=
 =?iso-8859-1?Q?PyUHY8B1NalAcww/BbHn3tSTmBR/Cyi9o0h+Z/pGrH0gXLEBr6nxcnWA33?=
 =?iso-8859-1?Q?1iiXJdANHqnv43NeAzb3wyLKxKE9w2XQFS1//cj7WZSy+9mT6thc8UKMzj?=
 =?iso-8859-1?Q?7a7SwAi+cLXJMwdvUScFgYx+p/Jvkt4lMlwkiVBylosCoHwMH4Pkqz9uCl?=
 =?iso-8859-1?Q?9Wm5TgsyqpYM6IjcsdwpsuX/QIIiua0SCaXnlzg7mmOZgLd54n19RLLf7K?=
 =?iso-8859-1?Q?zaS2Q2d9W9ER7ZqGRMPAgN49xEXgn+BSVXJc20rF7LJbPt8DXqiYoCBUkF?=
 =?iso-8859-1?Q?qCwskdjqt5ugKDWksv7JDXnpIyU+j2fy5FF/nBk8DQx6jZcCecdqZ+I0DZ?=
 =?iso-8859-1?Q?nJcm9FJ4eq18NBMjB3yjLX6Ww9WGuKqyu2qHnWjenlynwlVnf5NPKIlJ6q?=
 =?iso-8859-1?Q?OnmTPuowb4KfV4wQsXna38zdb9WL7OpM8gTw7LDfUwmapRKr1k8gW36b/t?=
 =?iso-8859-1?Q?mlu+Dpgvor6ieLxJ4Rsgspt00UsRCOGt3ya/W5RisjzvxSoDjXOBIu9Cvd?=
 =?iso-8859-1?Q?o+AvDbGjSfAUSCTH7AoJ8ytQrt/3PqA3+t16gInCFV1OWGxPH0IkJaVtPt?=
 =?iso-8859-1?Q?t+ZEnKPRmpTp7gYcyqARnslPGV3JhXtNw6+o4Wfs+nMxHPBUIG7tLgABkx?=
 =?iso-8859-1?Q?xmqcFzX56MG+ewaAHgD3uWIN1qZFb8ZBYelRdjaz6mpLBwek+AtaIEQQ?=
 =?iso-8859-1?Q?=3D=3D?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bafdcd41-b70e-499c-3774-08dbbbbb12f5
X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Sep 2023 22:27:15.4037
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: rBXyZuzK/7Gr6sBjTNVmXW7ZgYE75LHgbySxoAzUlMxcxzXH2ck0ZcEOieNlgF1lSuL4MFSHctd+pAVmk4W0QuIDfkarw6sVigGF4TRx3UY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR03MB9444
X-Proofpoint-ORIG-GUID: qETIUVvZdxTWWTMGeBRN1MFhF9bkHUQH
X-Proofpoint-GUID: qETIUVvZdxTWWTMGeBRN1MFhF9bkHUQH
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-09-22_19,2023-09-21_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 mlxscore=0
 malwarescore=0 phishscore=0 impostorscore=0 spamscore=0 priorityscore=1501
 mlxlogscore=747 clxscore=1015 bulkscore=0 lowpriorityscore=0 adultscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000
 definitions=main-2309220191

ITS manages Device Tables and Interrupt Translation Tables on its own,
so generally we are not interested in maintaining any coherence with
CPU's view of those memory regions, except one case: ITS requires that
Interrupt Translation Tables should be initialized with
zeroes. Existing code already does this, but it does not cleans
caches afterwards. This means that ITS may see un-initialized ITT and
CPU can overwrite portions of ITT later, when it finally decides to
flush caches. Visible effect of this issue that there are not
interrupts delivered from a device.

Fix this by calling clean_and_invalidate_dcache_va_range() for newly
allocated ITT.

Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>

---

Changes since v1:
 - Use clean_and_invalidate_dcache_va_range() instead of
   clean_dcache_va_range()
 - Do this unconditionally
 - Do not rename  HOST_ITS_FLUSH_CMD_QUEUE into HOST_ITS_FLUSH_BUFFERS
---
 xen/arch/arm/gic-v3-its.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/xen/arch/arm/gic-v3-its.c b/xen/arch/arm/gic-v3-its.c
index 3aa4edda10..8afcd9783b 100644
--- a/xen/arch/arm/gic-v3-its.c
+++ b/xen/arch/arm/gic-v3-its.c
@@ -685,6 +685,9 @@ int gicv3_its_map_guest_device(struct domain *d,
     if ( !itt_addr )
         goto out_unlock;
=20
+    clean_and_invalidate_dcache_va_range(itt_addr,
+                                         nr_events * hw_its->itte_size);
+
     dev =3D xzalloc(struct its_device);
     if ( !dev )
         goto out_unlock;
--=20
2.42.0


From xen-devel-bounces@lists.xenproject.org Fri Sep 22 23:22:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 22 Sep 2023 23:22:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607016.945170 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjpTH-0001kJ-EO; Fri, 22 Sep 2023 23:22:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607016.945170; Fri, 22 Sep 2023 23:22:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjpTH-0001kC-Bq; Fri, 22 Sep 2023 23:22:03 +0000
Received: by outflank-mailman (input) for mailman id 607016;
 Fri, 22 Sep 2023 23:22:02 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=d7D0=FG=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjpTF-0001k6-KT
 for xen-devel@lists.xenproject.org; Fri, 22 Sep 2023 23:22:01 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.136])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d24e86d1-599e-11ee-878a-cb3800f73035;
 Sat, 23 Sep 2023 01:21:58 +0200 (CEST)
Received: from orsmga008.jf.intel.com ([10.7.209.65])
 by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 22 Sep 2023 16:21:55 -0700
Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15])
 by orsmga008.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 22 Sep 2023 16:21:53 -0700
Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by
 ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Fri, 22 Sep 2023 16:21:54 -0700
Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by
 ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Fri, 22 Sep 2023 16:21:54 -0700
Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by
 orsmsx611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Fri, 22 Sep 2023 16:21:54 -0700
Received: from NAM04-MW2-obe.outbound.protection.outlook.com (104.47.73.173)
 by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Fri, 22 Sep 2023 16:21:54 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by PH0PR11MB5061.namprd11.prod.outlook.com (2603:10b6:510:3c::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Fri, 22 Sep
 2023 23:21:51 +0000
Received: from SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61]) by SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61%6]) with mapi id 15.20.6813.017; Fri, 22 Sep 2023
 23:21:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d24e86d1-599e-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695424918; x=1726960918;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=eRSQiAA0/fY80IdmbnDj6mU63HiekFWFjAJs7jeFOsA=;
  b=BGnX9BvnKfARE9fE4WdXhWhuqW/PUJgoXAe3KP3ZSYl0PE7B0FUmNqSf
   WxQ15FPievATa2TMSiP3uKbeaK8h6966r5GEozW19/EJnV0CSRIGZk5uu
   E3i8MKa7Ube1059wIIVwKD/u1ulRnXI7UojIepjm+Uyl4OGX4SdLChNYq
   v+2HtW0tYiC+DSQqHrKvYEEZFQBOq+QwVYR4YPwB6IHS5v1c/zU28DXL/
   shtfg+PHE2vUmW2JOzau1L1hTcM/80QnCArkV1BJ6CSEm1JAUFmuExMOU
   KHbw7TeCwQrU2/tBCF977gMpvnHD8gf3bcJcVkA+r6HB6+/81BTdocOyn
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="360348315"
X-IronPort-AV: E=Sophos;i="6.03,169,1694761200"; 
   d="scan'208";a="360348315"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="777013684"
X-IronPort-AV: E=Sophos;i="6.03,169,1694761200"; 
   d="scan'208";a="777013684"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fs0YHcxp47VQTDDTIjZ4i8Yo/or0uwWhmcDCw2NZMRZspO3iIXm2s/tGV6I4ZALiUUc0NRb63VISovDGrWFtyF3X5kUTqUpvEwgnC6wDYQL9gLYfcLyqOMQos1YhYqnloa2/J8JiQc8So1HewPwkNZ/TJBu0merxqYW7kYVy8wDj32AeHk0bklqtWVV5Y0xgwNuLBtOTIjtDAa7jgsLLPYX6PHWGAOZ3BTX/gsycSLc7ToiJaUCJf6en+heNKuinD6Wt7PZfwm4+aKxlSMNp68HmRbmG3yVBUjeaTbAANCVFhxqbCr1wZmOXZuFOqoRr6zUoLh7QmFnyHMp+Y/2Jhw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fu86OMXWhzKasKRPAoR0Ot28UCYqUIKz3W7U7EBwKrk=;
 b=bOp7kJ+6Xi0mnWyjoT9ytxVrNGza342hNHoMt3SDBrRWqoduBAMB3dHOpp/XXHPLzniUpldNFjjDCHawElV0BrR7FVnvVBk1rFCIua00tgfIeuZzg8WouKr284+ahLkSk+28Kvjfqa3UCDLEeiDLw36MuJWZGkrDbR6IZzK0liuHEZqUYWdb/EQlcN60baRKpPvXB0nl9rBiZ+mc23ueWSOzpM+nKkM2KWoqwDoHWEvpVf1mcSF+EN1+zBsmLZtt/brxtF0Zk0y5hSDGXh52yOAJWZWKVszJd7P37cN1gYlfVNVEzbTKh4VdpqylLrON8I/rRl0XRCWbXK59M5/99A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Li, Xin3" <xin3.li@intel.com>
To: Thomas Gleixner <tglx@linutronix.de>, Nikolay Borisov
	<nik.borisov@suse.com>, "linux-doc@vger.kernel.org"
	<linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
	<linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
	<linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
	<linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "mingo@redhat.com" <mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>, "x86@kernel.org"
	<x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>, "Lutomirski, Andy"
	<luto@kernel.org>, "pbonzini@redhat.com" <pbonzini@redhat.com>,
	"Christopherson,, Sean" <seanjc@google.com>, "peterz@infradead.org"
	<peterz@infradead.org>, "Gross, Jurgen" <jgross@suse.com>, "Shankar, Ravi V"
	<ravi.v.shankar@intel.com>, "mhiramat@kernel.org" <mhiramat@kernel.org>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"jiangshanlai@gmail.com" <jiangshanlai@gmail.com>
Subject: RE: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Thread-Topic: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support
Thread-Index: AQHZ5ssSXb894LHEBkqZUWtDh9samLAjYtKAgAADDuCAAyUhEIAAclUAgACIVkA=
Date: Fri, 22 Sep 2023 23:21:50 +0000
Message-ID: <SA1PR11MB6734FA69601B69FBC92361D8A8FFA@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230914044805.301390-1-xin3.li@intel.com>
 <20230914044805.301390-4-xin3.li@intel.com>
 <dda01248-f456-d8d7-5021-ef6b2e7ade2c@suse.com>
 <SA1PR11MB6734F205C2171425415E4F00A8F9A@SA1PR11MB6734.namprd11.prod.outlook.com>
 <SA1PR11MB6734445986E951E686172419A8FFA@SA1PR11MB6734.namprd11.prod.outlook.com>
 <87o7hugsnh.ffs@tglx>
In-Reply-To: <87o7hugsnh.ffs@tglx>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SA1PR11MB6734:EE_|PH0PR11MB5061:EE_
x-ms-office365-filtering-correlation-id: 50fdce97-b9f2-432b-5ece-08dbbbc2b362
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: WMfVeQb7hnt9WXGXYpg+0b6XYqDKaFsaWNQVRzwiWUJHT8BRsLSZvlBrP1cYdUDY54503PQ0wF87DSu3ukvLekiuuR0/VRE/S5r0iRhV4mOg1x52upoD2Uq0Zlb/4NdOA/vjefcUSkF5e3sKj2XOV6t2v3pQMYCfJEoQQz+p3Z+anzY3UR1tp+vyhSfePapqIJbNl9Jr6ynUWcjsnKZmGXdKGc4P+0NyAUedx2mWhYuGAqPLOvnTadgKhV66EQU/oinJig6wibYqbz8/qymsV0kG4+zRD49Ny5uQzNHaECKWISq578hsdZjxikDGajFRNx67Aw9hn+X7C9zlJCIDeFe3VCSbeoA+2nwSXAvSNEVe5uAzXAZ/BV0Q8r624NNaKCTiEVYZ2Tg1CAS2WW7AXDNOkz0Nxa8ziCZBfmtHHUh4yLQZkqcTQ2TJgds1PWw7eDUZSH+JTV0jE9mHDP32G+g6QYClvULgw36eNDnrqIRTVS3/UYsAxV1aPRJysSUYweQ3DWN4ujRqbUPWunc1+1zywTg98TjxT/xvoppUAdMGMywzZ0eYxqWpmKwRs3tr/8ePEZw4Xdk3VBAEycixQAK+T8/GnsMcLNNhoZz8U6YbXVaRGpGXybNJlQscLsgsUk/aIT9dH92F1H2gByjOyQ==
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6734.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(39860400002)(366004)(346002)(376002)(451199024)(1800799009)(186009)(7416002)(4744005)(478600001)(66476007)(66446008)(83380400001)(66556008)(55016003)(54906003)(64756008)(5660300002)(52536014)(316002)(41300700001)(8936002)(8676002)(2906002)(4326008)(66946007)(110136005)(33656002)(76116006)(86362001)(9686003)(7696005)(6506007)(71200400001)(82960400001)(26005)(122000001)(38070700005)(38100700002)(133343001);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?OwYLATXwLUsdGqTk5CXv2uEArtiJxY9ytp85Qw4KM6CqtMcLAMYyd02Un+ok?=
 =?us-ascii?Q?FzgHLym8H0/zbF+HMYTUYYZqLfk1HXIspT7bQug0SuG106CaWehEhwJQNLL8?=
 =?us-ascii?Q?eepdex+LZzlVfQfDgcgCpeEhEcb3OMsd5n4SEtH40QV3IMcliEC0Ug6kUOjr?=
 =?us-ascii?Q?ebB0bsxcIN8/f5jgzsYv/PG8QYWLn2xnHfiJkZyvFwfe5P0kDNguxU1MNwAy?=
 =?us-ascii?Q?dvrjCHpv1BoqJdqu7VDMUuu6yoEV3yiFXfwOrM1nJV1ORO57Jl74bfjoKdGK?=
 =?us-ascii?Q?epQCL84F/HF6ONxSiXhkCoWQU9QRT0dPX02uyMbl5UC5W5XL11sv6oHe6Wd6?=
 =?us-ascii?Q?yYALeXQPh8mVSSa2wBSHUl2FlTnfCNIpM3X6x5GOHr+XRgKgE6EPbBEK1vGA?=
 =?us-ascii?Q?zrwGoxKmzWffcXn2zJODBz7wGcclT9xmlg/lIgSBeSeM/JgRFhR9ZzLa8r0n?=
 =?us-ascii?Q?ElVOLnCUVoCMOWUss+0QsikJ1wBsZ59TWGTwcVQ46m1an7VSiPIuMKqlLhZj?=
 =?us-ascii?Q?9og98AkD/Qn+0/W62esy0Q6+IjCBqk27pcDMeShZhGMTLXl0QhgNV61X+MGq?=
 =?us-ascii?Q?ofvNUEgZEA0N10aSxzSOYg5WsM5O4j1eSnGefzkMCXzRrGa440Y2GEEZBsL8?=
 =?us-ascii?Q?EyhV1/vNyE8r+1XYdG87Lfi3HqfP99qFmFUZWEndRgWZBSlcwYODsGbgl4Ja?=
 =?us-ascii?Q?sVmXnHAhygbPPHlaYmVZyLbiAHdD0fwf2EdaR5kI49d3yTz/HwRCw3E3AgSu?=
 =?us-ascii?Q?I2AZEzhnr4fn+3f3vS1IDfeQfsOvjGN1z4PTB6iwQlxUwuWh+MIt/1Y4hOMt?=
 =?us-ascii?Q?9a7C7yD359JqCZ2hBqpW96Sy0jxflrSybrJAloBah3nTHg+X10WWaaKNRqpZ?=
 =?us-ascii?Q?aUbjNYop7fpLiX7E2ODBAMNngvocmsoXNtpepyInp3KtCTjh2S/0rcKbdAO/?=
 =?us-ascii?Q?cMYF0TRqEjJzgHCcRaWgKdHOrIGeRbjIlxMHR9+RdVEWNdDFfMaiIw8Lu7VM?=
 =?us-ascii?Q?B922lSBrJL1WI19YzsGMsDLBJDYyyRCPnzw2ut5irp6hAqDaSPNHMx9cb8gm?=
 =?us-ascii?Q?YNw+5lucUe1YFYLs9XvyZ5LicsukDUWO/9fJmNEo7U4eSTmzscWHJeZBJhGN?=
 =?us-ascii?Q?9E5ebbhrXg7bzD9wyih1Erpnrpq1mzwg1+92u5SYlKOvrzLB8Ps/0aZ0IdL1?=
 =?us-ascii?Q?CbimL65ST+dw3M5jpMCYDAoD5MergPLDUa+vWb9q0Xpkg0w3QtZIj5jp+vca?=
 =?us-ascii?Q?RmwSONEEtbvsFYdFGsZmyeNYJWLVeDw76oDgzjVDIJa/Bj50map8rcFsFpTw?=
 =?us-ascii?Q?in4tqKfSKF7h2DaEKTlmogK7q8H3JqhCP+q58iCtbQI+p0xTq72EADd9iCbj?=
 =?us-ascii?Q?o2HHH0bnYyh8sp8Nz9KmJvmq9RHGmy2JhMrLly5GOMz4g0uY4mrco9Hopioh?=
 =?us-ascii?Q?bos4CsNweoRwp1PRCyoF6WIyxW9mLOj+1gotHY0SiWDOI4P4gGkJZifsCRhz?=
 =?us-ascii?Q?4TnBbC9r0SUaA1tguBqsxWXSroQtk7y/eslMrG7CV9dE113t6BHWbiza5k4k?=
 =?us-ascii?Q?jtMtP9PWCGMOA0E0GL0=3D?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6734.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 50fdce97-b9f2-432b-5ece-08dbbbc2b362
X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Sep 2023 23:21:51.0298
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: ad1q9hX2zy5dXs8bhVWM0+WYziBPZ8kgPgQJ8Pq3eIqJTsE4+uDbgSPNV5A4WTf7QaFkOiAVSqjUQQiHzWacFw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5061
X-OriginatorOrg: intel.com

> > I notice there are several call sites using the safe version w/o
> > checking the return value, should the unsafe version be a better
> > choice in such cases?
>=20
> Depends. The safe version does not emit a warning on fail. So if the
> callsite truly does not care about the error it's fine.

Right. So the _safe suffix also means to suppress a warning that the
caller doesn't care.

Thanks!
    Xin



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 00:21:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 00:21:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607021.945181 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjqOM-00037p-T2; Sat, 23 Sep 2023 00:21:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607021.945181; Sat, 23 Sep 2023 00:21:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjqOM-00037i-P0; Sat, 23 Sep 2023 00:21:02 +0000
Received: by outflank-mailman (input) for mailman id 607021;
 Sat, 23 Sep 2023 00:21:00 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjqOK-00037Y-R2; Sat, 23 Sep 2023 00:21:00 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjqOK-0001v4-Dh; Sat, 23 Sep 2023 00:21:00 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjqOJ-0000uj-RZ; Sat, 23 Sep 2023 00:20:59 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjqOJ-0001Ub-R3; Sat, 23 Sep 2023 00:20:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=hnvpSBzKm1yt+2sNQSLegMnyDQpQ+Di0/0QJCVaqmPk=; b=LZ0Oa9tr61fbzn4FbRfoveND0e
	TAUsTyUBMjsZXm88C+CVPxRFeY/Oqa0k0OGQqhUN8tgrH+tOC36CPlnCrLdBVNlCt60PRK/AKvsai
	eJ0TylfBU174t/KpjzmQU7A86Gn0UBE1gYsgZHFXHwaFujdPMnVJQwVEtVOo105Hu0EQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183109-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183109: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=27bbf45eae9ca98877a2d52a92a188147cd61b07
X-Osstest-Versions-That:
    linux=2dde18cd1d8fac735875f2e4987f11817cc0bc2c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 23 Sep 2023 00:20:59 +0000

flight 183109 linux-linus real [real]
flight 183122 linux-linus real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183109/
http://logs.test-lab.xenproject.org/osstest/logs/183122/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183122-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182531
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182531
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182531
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182531
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182531
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182531
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182531
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182531
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                27bbf45eae9ca98877a2d52a92a188147cd61b07
baseline version:
 linux                2dde18cd1d8fac735875f2e4987f11817cc0bc2c

Last test of basis   182531  2023-08-27 22:41:14 Z   26 days
Failing since        182544  2023-08-28 20:42:13 Z   25 days   45 attempts
Testing same since   183109  2023-09-21 21:16:19 Z    1 days    1 attempts

------------------------------------------------------------
2342 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-freebsd11-amd64                             pass    
 test-amd64-amd64-freebsd12-amd64                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-amd64-xl-vhd                                      pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

hint: The 'hooks/update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-receive' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
To xenbits.xen.org:/home/xen/git/linux-pvops.git
   2dde18cd1d8f..27bbf45eae9c  27bbf45eae9ca98877a2d52a92a188147cd61b07 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sat Sep 23 00:26:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 00:26:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607029.945190 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjqTi-00046B-JA; Sat, 23 Sep 2023 00:26:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607029.945190; Sat, 23 Sep 2023 00:26:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjqTi-000464-Gg; Sat, 23 Sep 2023 00:26:34 +0000
Received: by outflank-mailman (input) for mailman id 607029;
 Sat, 23 Sep 2023 00:26:32 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjqTg-00044F-RE; Sat, 23 Sep 2023 00:26:32 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjqTg-00022s-JJ; Sat, 23 Sep 2023 00:26:32 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjqTg-00012C-32; Sat, 23 Sep 2023 00:26:32 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjqTg-0005NP-2V; Sat, 23 Sep 2023 00:26:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=1fsYPdm4nCPhU/Ua8jU1ZBwGt06x6qjVFHeWqWqmZ9w=; b=0vbteIM8VCkn95y8uBn0xvIFi1
	Xm6iUJkFObpUW31DlzwKEht4PWWKW05tu3NLrB6cGuYTO7InA9u8nfgsnTUR5GkPX6kkEjlVE9jTj
	Sz+8fSPlYzK7RcgX5xECU0xz1jwLIuSLDRQ7d2wxWpyduphHmsbcVf96YsWrPAsIleAs=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183121-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183121: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=88a9501a848aade858a3bbda75f20cdf7c3c2f9a
X-Osstest-Versions-That:
    xen=95a8a2c123971fa805395222cd6e1c77f3d1826d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 23 Sep 2023 00:26:32 +0000

flight 183121 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183121/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  88a9501a848aade858a3bbda75f20cdf7c3c2f9a
baseline version:
 xen                  95a8a2c123971fa805395222cd6e1c77f3d1826d

Last test of basis   183120  2023-09-22 19:03:32 Z    0 days
Testing same since   183121  2023-09-22 22:01:59 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alejandro Vallejo <alejandro.vallejo@cloud.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   95a8a2c123..88a9501a84  88a9501a848aade858a3bbda75f20cdf7c3c2f9a -> smoke


From xen-devel-bounces@lists.xenproject.org Sat Sep 23 03:00:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 03:00:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607038.945201 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjssY-0007jB-CT; Sat, 23 Sep 2023 03:00:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607038.945201; Sat, 23 Sep 2023 03:00:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjssY-0007j4-8l; Sat, 23 Sep 2023 03:00:22 +0000
Received: by outflank-mailman (input) for mailman id 607038;
 Sat, 23 Sep 2023 03:00:20 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjssW-0007iu-Ow; Sat, 23 Sep 2023 03:00:20 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjssW-0004Nb-IT; Sat, 23 Sep 2023 03:00:20 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjssW-0007r1-6S; Sat, 23 Sep 2023 03:00:20 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjssW-0002CN-5e; Sat, 23 Sep 2023 03:00:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=2JbtBGx2fZLIAUw8A04dg9YuXOJ/lid/yorE8GmFIE8=; b=UQdUmNDJyUQNuFogB5f6vV9VhP
	HmBwXegwIU7xsgOVXjBi5qggjSbKb8ZnQ0MrhhqPVZvjhHId3Gkfg+BVDHyofT3LHMkq1Ttrt+erh
	E6jhUxOIkROLchoN8Y6/Uzonij5tntyis1TZmEWZJDu+esB4oJtygvkDHtTC3RdxHbAM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183112-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183112: regressions - FAIL
X-Osstest-Failures:
    libvirt:test-amd64-i386-libvirt-raw:xen-install:fail:regression
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=e45240d37f52caea8df68823023721edebee76b3
X-Osstest-Versions-That:
    libvirt=19484ccac5cb1586f9d10d3e6eb9b93ee82885c6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 23 Sep 2023 03:00:20 +0000

flight 183112 libvirt real [real]
flight 183124 libvirt real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183112/
http://logs.test-lab.xenproject.org/osstest/logs/183124/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-i386-libvirt-raw   7 xen-install              fail REGR. vs. 183097

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183097
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183097
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183097
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              e45240d37f52caea8df68823023721edebee76b3
baseline version:
 libvirt              19484ccac5cb1586f9d10d3e6eb9b93ee82885c6

Last test of basis   183097  2023-09-21 04:22:05 Z    1 days
Testing same since   183112  2023-09-22 04:18:44 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Michal Privoznik <mprivozn@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  fail    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit e45240d37f52caea8df68823023721edebee76b3
Author: Michal Privoznik <mprivozn@redhat.com>
Date:   Wed Sep 20 18:01:14 2023 +0200

    test_driver: Implement virConnectGetDomainCapabilities()
    
    Our test driver lacks implementation for
    virConnectGetDomainCapabilities(). Provide one, though a trivial
    one. Mostly so that something else than VIR_ERR_NO_SUPPORT error
    is returned.
    
    Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
    Reviewed-by: Ján Tomko <jtomko@redhat.com>


From xen-devel-bounces@lists.xenproject.org Sat Sep 23 04:04:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 04:04:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607055.945214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjtsA-00087x-Cs; Sat, 23 Sep 2023 04:04:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607055.945214; Sat, 23 Sep 2023 04:04:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjtsA-00087q-9x; Sat, 23 Sep 2023 04:04:02 +0000
Received: by outflank-mailman (input) for mailman id 607055;
 Sat, 23 Sep 2023 04:04:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=G62g=FH=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qjts8-00087T-Ic
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 04:04:00 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20611.outbound.protection.outlook.com
 [2a01:111:f400:7eab::611])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 36c4162c-59c6-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 06:03:56 +0200 (CEST)
Received: from BL0PR01CA0027.prod.exchangelabs.com (2603:10b6:208:71::40) by
 IA1PR12MB6041.namprd12.prod.outlook.com (2603:10b6:208:3d7::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Sat, 23 Sep
 2023 04:03:51 +0000
Received: from BL6PEPF0001AB57.namprd02.prod.outlook.com
 (2603:10b6:208:71:cafe::b6) by BL0PR01CA0027.outlook.office365.com
 (2603:10b6:208:71::40) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27 via Frontend
 Transport; Sat, 23 Sep 2023 04:03:51 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB57.mail.protection.outlook.com (10.167.241.9) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Sat, 23 Sep 2023 04:03:51 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 22 Sep
 2023 23:03:50 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 22 Sep
 2023 21:03:50 -0700
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 22 Sep 2023 23:03:49 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 36c4162c-59c6-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TpKIv0CDU4gZY1ug/auUWfsskCGdo1+wKsOFnBGg5Z2Z7HqtiQcOVl9/WtUqH51SA0IwfF10nllIvRFRFQCy5qlXdqn1cog7N/FX4V6qhmws746rQWyB/GlByqFIYB9ghAZIwA8Qw1P7jcNwo3PAQy9UdejAIPUEKqWBxLiftDjJ4FfJ5F5cxKUCpEKRUCk323ge6xwNkAQ+NddXr9Lif45FYJocBKZrZ5pZAhgg5dh8wfYwvA7ewnjKKBC1198GUf0T6rOPJC7N9dYgVLCoSMiv2OmWgxu7gHLIjy39mw/MkR5RCKxo6HeYrFiyJMXXcCBxNrIxjxNQ1Xc3peJSpQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=uhJ9mv2GtQZkZ2XmzWL3ze2qspnu63HLT8yoCR4bA78=;
 b=P4PM4KGXlCqFtsEXywd6iCwchJQ2OzLStsr9jDL7uXYhdj1d20Cju6QG0TWjn+yW+j+zaC/owZa/2iIOq6uA176Z5H9ZZ/TICr45E2/eEd7gfvYHXmEOGcpu4C1nTSxQFUmevVAfAYoj9erWd5wkWzL84dOJgCaFA7muSfMtlZEuGoWt02IWobK4hinNXZT0DWtO43fWGnWLBNsZTrb95b1sz6pJuMmuM+obStL8G6opPG+t8vonfRQyf8IUGQUu46Sj8zPZUt9h6vrcNeKjsuiDueGyJL0l6y/VUO+zdX3vxj9mJ7RFZtNlDQFP5DiR6m4UWLPLmzZEcUZK4QFOkA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=epam.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uhJ9mv2GtQZkZ2XmzWL3ze2qspnu63HLT8yoCR4bA78=;
 b=CDdNdKAxwQpAlM3QN2xHtJwWXqBHrNQvTCzogZ9/kBXVJAcRDe19UWpMr4+u+davy8WvPKkSuKrf8H9FcROVrnVVqaA83Hu0j4/xTftRS8r/EJ/z+H5DooJLg6zjeYRDRBePFd8ZGuDWHGrF8G2ync3d1kq4Y948EVmz1Z51BJs=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <e86a081b-586f-3f89-5103-b21f02c164d4@amd.com>
Date: Sat, 23 Sep 2023 00:03:45 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2] ARM: GICv3 ITS: flush caches for newly allocated ITT
Content-Language: en-US
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
	<julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>
References: <20230922222710.1383808-1-volodymyr_babchuk@epam.com>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <20230922222710.1383808-1-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB57:EE_|IA1PR12MB6041:EE_
X-MS-Office365-Filtering-Correlation-Id: 09c1b70f-f1c5-4933-6a93-08dbbbea18a2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lwY8PL2Hf3Pnl5n5niJOnZDXrNCni7NTuWupzrrNM39w8xkfXJU4VpNvxUHykAdfd0CHktVnEGE+7IC8Q/HNAI7YqoIlOlXIs0DnNW7x8fKyOjw45HMRid5fVw8FNwvDw1UdNhyJCUbTvcRo/szn/FrGzXvdnX0ebX27On/tL1pDyzy9pzWlO6F2j1IWxU9eiIEsGLRAKQNA6GrLG4d5gJ/mdMEmgidxSoDj6NNJgVGc8pSPPyuy12QDnTMVodXmwxHYQw8IUKq3DtVTrw/iVIr7HT2wj9317qT2l0HppynWpgZoffq0jTkhoFfefExVBRiwGIJeDof8ThgGAd+UbHspjJddVjGPKG6vKJ/9vMzx/wMprLT4bUlFaX0vrFjVXz77gdXLZONTzCO409WTD28pV+trvnbfVVSxCeZNQAy5FLs+4/dcHT3niV18dChQDKFTTc/bHokZTODdjiA4N6Q9hZrHfvijF6BglrWq0x4hIA3cYtO+b7w0MuFWVlbDOOxOmoEreyq+J4Lar241pHBZPTWfB2a1X8nxBq5+tCBBsYapcsfutFFh3z9Eswnvr1UIjRxTlQZcwdw1lqDQrBptQYaxjJGgIYgqJ3Owt1OoNUO62FnK4/2UbKvLqFbSXG8dgY2sXJLM5nQcbNNPfyI9hGrmTDeZ75wHzOabtwivHM+7m+64yEm/3RddA3LxKikyJkv79mKvuA/qGByG+f6zfzRd+kZi69zu5taK1r20bSJScT06RZRdtSuJX6lP2WPssDYRwQO0dvwwQRTTjwKVu+xkBbEX36uCPtsyH06ayVqgCPro7xmJHM3Bwv5j
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(396003)(39860400002)(346002)(230922051799003)(451199024)(186009)(82310400011)(1800799009)(36840700001)(40470700004)(46966006)(86362001)(31696002)(2616005)(6666004)(53546011)(31686004)(40480700001)(2906002)(36756003)(40460700003)(82740400003)(356005)(336012)(70586007)(83380400001)(316002)(16576012)(110136005)(26005)(47076005)(70206006)(36860700001)(81166007)(426003)(478600001)(4326008)(5660300002)(54906003)(44832011)(8676002)(8936002)(41300700001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Sep 2023 04:03:51.2783
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 09c1b70f-f1c5-4933-6a93-08dbbbea18a2
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL6PEPF0001AB57.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6041

On 9/22/23 18:27, Volodymyr Babchuk wrote:
> ITS manages Device Tables and Interrupt Translation Tables on its own,
> so generally we are not interested in maintaining any coherence with
> CPU's view of those memory regions, except one case: ITS requires that
> Interrupt Translation Tables should be initialized with
> zeroes. Existing code already does this, but it does not cleans
> caches afterwards. This means that ITS may see un-initialized ITT and
> CPU can overwrite portions of ITT later, when it finally decides to
> flush caches. Visible effect of this issue that there are not
> interrupts delivered from a device.
> 
> Fix this by calling clean_and_invalidate_dcache_va_range() for newly
> allocated ITT.
> 
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>

Tested-by: Stewart Hildebrand <stewart.hildebrand@amd.com>

> 
> ---
> 
> Changes since v1:
>  - Use clean_and_invalidate_dcache_va_range() instead of
>    clean_dcache_va_range()
>  - Do this unconditionally
>  - Do not rename  HOST_ITS_FLUSH_CMD_QUEUE into HOST_ITS_FLUSH_BUFFERS
> ---
>  xen/arch/arm/gic-v3-its.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/xen/arch/arm/gic-v3-its.c b/xen/arch/arm/gic-v3-its.c
> index 3aa4edda10..8afcd9783b 100644
> --- a/xen/arch/arm/gic-v3-its.c
> +++ b/xen/arch/arm/gic-v3-its.c
> @@ -685,6 +685,9 @@ int gicv3_its_map_guest_device(struct domain *d,
>      if ( !itt_addr )
>          goto out_unlock;
> 
> +    clean_and_invalidate_dcache_va_range(itt_addr,
> +                                         nr_events * hw_its->itte_size);
> +
>      dev = xzalloc(struct its_device);
>      if ( !dev )
>          goto out_unlock;
> --
> 2.42.0


From xen-devel-bounces@lists.xenproject.org Sat Sep 23 09:17:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 09:17:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607072.945232 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjylE-0000uw-Cu; Sat, 23 Sep 2023 09:17:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607072.945232; Sat, 23 Sep 2023 09:17:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjylE-0000up-9s; Sat, 23 Sep 2023 09:17:12 +0000
Received: by outflank-mailman (input) for mailman id 607072;
 Sat, 23 Sep 2023 09:17:10 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjylC-0000uf-CX; Sat, 23 Sep 2023 09:17:10 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjylC-00060q-50; Sat, 23 Sep 2023 09:17:10 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qjylB-0002wk-M3; Sat, 23 Sep 2023 09:17:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qjylB-00082R-LY; Sat, 23 Sep 2023 09:17:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=HXbABuAgxcfcAFxJVXgFZKLoNBJJbSAchKydxVF/XvU=; b=W9c7yPIawhqhU/nDvTJ1+tMyhq
	uEgqXv/IROMjiRNuDT9FdW3L66cnQrzHe58dtBqWbzzaBnylyAmKcszI8Pnn+/pSIrknXWbj1aWRM
	enUSGXgmrxi35C0Ptjsg54TSdvqRk8fzAwB3jqQwSm5OVngzIvs3BRFncb1XFKfwRQB0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183117-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183117: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:regression
    xen-unstable:test-amd64-i386-migrupgrade:xen-install/dst_host:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=d09e44e5d8fdfe0a8b8af1ef604dbc699497e11a
X-Osstest-Versions-That:
    xen=932c3c8b4bd5cb7e3a2fe78105a80928307c9858
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 23 Sep 2023 09:17:09 +0000

flight 183117 xen-unstable real [real]
flight 183128 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183117/
http://logs.test-lab.xenproject.org/osstest/logs/183128/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install  fail REGR. vs. 183103

Tests which are failing intermittently (not blocking):
 test-amd64-i386-migrupgrade 11 xen-install/dst_host fail pass in 183128-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183103
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183103
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183103
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183103
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183103
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183103
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183103
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183103
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183103
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183103
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183103
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  d09e44e5d8fdfe0a8b8af1ef604dbc699497e11a
baseline version:
 xen                  932c3c8b4bd5cb7e3a2fe78105a80928307c9858

Last test of basis   183103  2023-09-21 10:53:41 Z    1 days
Testing same since   183117  2023-09-22 13:45:00 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Henry Wang <Henry.Wang@arm.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit d09e44e5d8fdfe0a8b8af1ef604dbc699497e11a
Author: Roger Pau Monne <roger.pau@citrix.com>
Date:   Tue Sep 19 14:51:18 2023 +0200

    console/serial: bump buffer from 16K to 32K
    
    Testing on a Kaby Lake box with 8 CPUs leads to the serial buffer
    being filled halfway during dom0 boot, and thus a non-trivial chunk of
    Linux boot messages are dropped.
    
    Increasing the buffer to 32K does fix the issue and Linux boot
    messages are no longer dropped.  There's no justification either on
    why 16K was chosen, and hence bumping to 32K in order to cope with
    current systems generating output faster does seem appropriate to have
    a better user experience with the provided defaults.
    
    Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
    Acked-by: Julien Grall <jgrall@amazon.com>

commit 405cff8491001179eeef2444358d15759912644d
Author: Henry Wang <Henry.Wang@arm.com>
Date:   Sat Sep 16 12:06:49 2023 +0800

    xen/arm64: head.S: Fix wrong enable_boot_cpu_mm() code movement
    
    Some addressed comments on enable_boot_cpu_mm() were reintroduced
    back during the code movement from arm64/head.S to arm64/mmu/head.S.
    We should drop the unreachable code, move the 'mov lr, x5' closer to
    'b remove_identity_mapping' so it is clearer that it will return,
    and update the in-code comment accordingly.
    
    Fixes: 6734327d76be ("xen/arm64: Split and move MMU-specific head.S to mmu/head.S")
    Reported-by: Julien Grall <jgrall@amazon.com>
    Signed-off-by: Henry Wang <Henry.Wang@arm.com>
    Reviewed-by: Julien Grall <jgrall@amazon.com>
    Reviewed-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>

commit 39113a8a23fb932b1de81ac83463c16af98d533d
Author: Julien Grall <jgrall@amazon.com>
Date:   Fri Sep 15 13:52:04 2023 +0100

    tools/light: Revoke permissions when a PCI detach for HVM domain
    
    Currently, libxl will grant IOMEM, I/O port and IRQ permissions when
    a PCI is attached (see pci_add_dm_done()) for all domain types. However,
    the permissions are only revoked for non-HVM domain (see do_pci_remove()).
    
    This means that HVM domains will be left with extra permissions. While
    this look bad on the paper, the IRQ permissions should be revoked
    when the Device Model call xc_physdev_unmap_pirq() and such domain
    cannot directly mapped I/O port and IOMEM regions. Instead, this has to
    be done by a Device Model.
    
    The Device Model can only run in dom0 or PV stubdomain (upstream libxl
    doesn't have support for HVM/PVH stubdomain).
    
    For PV/PVH stubdomain, the permission are properly revoked, so there is
    no security concern.
    
    This leaves dom0. There are two cases:
      1) Privileged: Anyone gaining access to the Device Model would already
         have large control on the host.
      2) Deprivileged: PCI passthrough require PHYSDEV operations which
         are not accessible when the Device Model is restricted.
    
    So overall, it is believed that the extra permissions cannot be exploited.
    
    Rework the code so the permissions are all removed for HVM domains.
    This needs to happen after the QEMU has detached the device. So
    the revocation is now moved to pci_remove_detached().
    
    Also add a comment on top of the error message when the PIRQ cannot
    be unbind to explain this could be a spurious error as QEMU may have
    already done it.
    
    Signed-off-by: Julien Grall <jgrall@amazon.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>
    Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:11:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:11:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607082.945246 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc2-0000QA-HV; Sat, 23 Sep 2023 10:11:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607082.945246; Sat, 23 Sep 2023 10:11:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc2-0000Q3-DA; Sat, 23 Sep 2023 10:11:46 +0000
Received: by outflank-mailman (input) for mailman id 607082;
 Sat, 23 Sep 2023 10:11:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzc0-0000Pn-FO
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:44 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 965ca6ea-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:41 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:37 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:36 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 965ca6ea-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463901; x=1726999901;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=5bEJT87B98JS6iQ6LlrNVmLBQuK2BkIiNY3V5ZdVNuo=;
  b=QQTuDaVYCPT/cJDM5ZzjV4FR99l8nu8zi9SZXCDpH1UE4cPTvQhBDFS9
   6AZ+i96X58FYDD+A35cXLZdQ41mHuvYlFmSP91CqJYhKxfnJ6s/IlmdRd
   +ZaeKld9Hqk7viKyqNHD5FTIp86hXfwo+qfz3t8NUIaXz1q1Clq8V5lPm
   WRKgVB7A1uPOaQ936FdxR/ZXagCresBG0yuha7k8hLSr2FaWAcxF/xXlP
   Cgz77S7R5Z4a/o9TFdMQ1pgaFl3bLO/YLPpO+pBuehbLN6o1ipbmQkuym
   sYrDeDPMtiL5FNT/T9/WQkUHPRWyOTeTIqwVWZVhd2EEQI200x9L+s5Jg
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492082"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492082"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388100"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388100"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 01/37] x86/cpufeatures: Add the cpu feature bit for WRMSRNS
Date: Sat, 23 Sep 2023 02:41:36 -0700
Message-Id: <20230923094212.26520-2-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

WRMSRNS is an instruction that behaves exactly like WRMSR, with
the only difference being that it is not a serializing instruction
by default. Under certain conditions, WRMSRNS may replace WRMSR to
improve performance.

Add the CPU feature bit for WRMSRNS.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/cpufeatures.h       | 1 +
 tools/arch/x86/include/asm/cpufeatures.h | 1 +
 2 files changed, 2 insertions(+)

diff --git a/arch/x86/include/asm/cpufeatures.h b/arch/x86/include/asm/cpufeatures.h
index 58cb9495e40f..330876d34b68 100644
--- a/arch/x86/include/asm/cpufeatures.h
+++ b/arch/x86/include/asm/cpufeatures.h
@@ -322,6 +322,7 @@
 #define X86_FEATURE_FSRS		(12*32+11) /* "" Fast short REP STOSB */
 #define X86_FEATURE_FSRC		(12*32+12) /* "" Fast short REP {CMPSB,SCASB} */
 #define X86_FEATURE_LKGS		(12*32+18) /* "" Load "kernel" (userspace) GS */
+#define X86_FEATURE_WRMSRNS		(12*32+19) /* "" Non-Serializing Write to Model Specific Register instruction */
 #define X86_FEATURE_AMX_FP16		(12*32+21) /* "" AMX fp16 Support */
 #define X86_FEATURE_AVX_IFMA            (12*32+23) /* "" Support for VPMADD52[H,L]UQ */
 #define X86_FEATURE_LAM			(12*32+26) /* Linear Address Masking */
diff --git a/tools/arch/x86/include/asm/cpufeatures.h b/tools/arch/x86/include/asm/cpufeatures.h
index 798e60b5454b..1b9d86ba5bc2 100644
--- a/tools/arch/x86/include/asm/cpufeatures.h
+++ b/tools/arch/x86/include/asm/cpufeatures.h
@@ -318,6 +318,7 @@
 #define X86_FEATURE_FSRS		(12*32+11) /* "" Fast short REP STOSB */
 #define X86_FEATURE_FSRC		(12*32+12) /* "" Fast short REP {CMPSB,SCASB} */
 #define X86_FEATURE_LKGS		(12*32+18) /* "" Load "kernel" (userspace) GS */
+#define X86_FEATURE_WRMSRNS		(12*32+19) /* "" Non-Serializing Write to Model Specific Register instruction */
 #define X86_FEATURE_AMX_FP16		(12*32+21) /* "" AMX fp16 Support */
 #define X86_FEATURE_AVX_IFMA            (12*32+23) /* "" Support for VPMADD52[H,L]UQ */
 #define X86_FEATURE_LAM			(12*32+26) /* Linear Address Masking */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:11:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:11:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607087.945291 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc6-0001Rw-3P; Sat, 23 Sep 2023 10:11:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607087.945291; Sat, 23 Sep 2023 10:11:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc5-0001RC-UG; Sat, 23 Sep 2023 10:11:49 +0000
Received: by outflank-mailman (input) for mailman id 607087;
 Sat, 23 Sep 2023 10:11:49 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzc5-0000Pn-5I
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:49 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9948a36c-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:45 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:38 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:38 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9948a36c-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463905; x=1726999905;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=peVjyb58aU5czBXdVg55hBuRdCD6fg7woOPGVcAZ2Yw=;
  b=fdJRXkyyG1r++z7OQn+9FM9DZ7F8+mRM9LnWWGk1Zx3IdmQwdf+lxRo+
   P0eWTJFDs6bmkGG6st6+M7WdhEZ9ZX/M/ktCS0lv4mDYkoBREtSFZnFpV
   PeyT2gmJB7mo4Slr+Ke8FgYe0qH3X3IgW20hLWBYjzBHSI9RMaPyA5nk8
   b25gcY2z4y1+9dWGXYIcqjTYYX5Ql+Y9wVbj+WHG7xI8dvCqXRAXij01x
   /qf+uzaZr100O4rPPNKm83HtrhCSZtDSac15xk8mPn4SkNpsET7BxlySb
   yqnRbAXJGZm/UtgnbTv0RFMsCo0945XbezQaohHdjC2yz+d9EZrZXYji4
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492131"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492131"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388115"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388115"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 05/37] x86/trapnr: Add event type macros to <asm/trapnr.h>
Date: Sat, 23 Sep 2023 02:41:40 -0700
Message-Id: <20230923094212.26520-6-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Intel VT-x classifies events into eight different types, which is
inherited by FRED for event identification. As such, event type
becomes a common x86 concept, and should be defined in a common x86
header.

Add event type macros to <asm/trapnr.h>, and use it in <asm/vmx.h>.

Suggested-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v10:
* A few comment fixes and improvements (Andrew Cooper).
---
 arch/x86/include/asm/trapnr.h | 12 ++++++++++++
 arch/x86/include/asm/vmx.h    | 17 +++++++++--------
 2 files changed, 21 insertions(+), 8 deletions(-)

diff --git a/arch/x86/include/asm/trapnr.h b/arch/x86/include/asm/trapnr.h
index f5d2325aa0b7..8d1154cdf787 100644
--- a/arch/x86/include/asm/trapnr.h
+++ b/arch/x86/include/asm/trapnr.h
@@ -2,6 +2,18 @@
 #ifndef _ASM_X86_TRAPNR_H
 #define _ASM_X86_TRAPNR_H
 
+/*
+ * Event type codes used by FRED, Intel VT-x and AMD SVM
+ */
+#define EVENT_TYPE_EXTINT	0	// External interrupt
+#define EVENT_TYPE_RESERVED	1
+#define EVENT_TYPE_NMI		2	// NMI
+#define EVENT_TYPE_HWEXC	3	// Hardware originated traps, exceptions
+#define EVENT_TYPE_SWINT	4	// INT n
+#define EVENT_TYPE_PRIV_SWEXC	5	// INT1
+#define EVENT_TYPE_SWEXC	6	// INTO, INT3
+#define EVENT_TYPE_OTHER	7	// FRED SYSCALL/SYSENTER, VT-x MTF
+
 /* Interrupts/Exceptions */
 
 #define X86_TRAP_DE		 0	/* Divide-by-zero */
diff --git a/arch/x86/include/asm/vmx.h b/arch/x86/include/asm/vmx.h
index 0e73616b82f3..4dba17363008 100644
--- a/arch/x86/include/asm/vmx.h
+++ b/arch/x86/include/asm/vmx.h
@@ -17,6 +17,7 @@
 #include <linux/types.h>
 
 #include <uapi/asm/vmx.h>
+#include <asm/trapnr.h>
 #include <asm/vmxfeatures.h>
 
 #define VMCS_CONTROL_BIT(x)	BIT(VMX_FEATURE_##x & 0x1f)
@@ -374,14 +375,14 @@ enum vmcs_field {
 #define VECTORING_INFO_DELIVER_CODE_MASK    	INTR_INFO_DELIVER_CODE_MASK
 #define VECTORING_INFO_VALID_MASK       	INTR_INFO_VALID_MASK
 
-#define INTR_TYPE_EXT_INTR              (0 << 8) /* external interrupt */
-#define INTR_TYPE_RESERVED              (1 << 8) /* reserved */
-#define INTR_TYPE_NMI_INTR		(2 << 8) /* NMI */
-#define INTR_TYPE_HARD_EXCEPTION	(3 << 8) /* processor exception */
-#define INTR_TYPE_SOFT_INTR             (4 << 8) /* software interrupt */
-#define INTR_TYPE_PRIV_SW_EXCEPTION	(5 << 8) /* ICE breakpoint - undocumented */
-#define INTR_TYPE_SOFT_EXCEPTION	(6 << 8) /* software exception */
-#define INTR_TYPE_OTHER_EVENT           (7 << 8) /* other event */
+#define INTR_TYPE_EXT_INTR		(EVENT_TYPE_EXTINT << 8)	/* external interrupt */
+#define INTR_TYPE_RESERVED		(EVENT_TYPE_RESERVED << 8)	/* reserved */
+#define INTR_TYPE_NMI_INTR		(EVENT_TYPE_NMI << 8)		/* NMI */
+#define INTR_TYPE_HARD_EXCEPTION	(EVENT_TYPE_HWEXC << 8)		/* processor exception */
+#define INTR_TYPE_SOFT_INTR		(EVENT_TYPE_SWINT << 8)		/* software interrupt */
+#define INTR_TYPE_PRIV_SW_EXCEPTION	(EVENT_TYPE_PRIV_SWEXC << 8)	/* ICE breakpoint */
+#define INTR_TYPE_SOFT_EXCEPTION	(EVENT_TYPE_SWEXC << 8)		/* software exception */
+#define INTR_TYPE_OTHER_EVENT		(EVENT_TYPE_OTHER << 8)		/* other event */
 
 /* GUEST_INTERRUPTIBILITY_INFO flags. */
 #define GUEST_INTR_STATE_STI		0x00000001
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:11:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:11:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607084.945258 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc3-0000bp-39; Sat, 23 Sep 2023 10:11:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607084.945258; Sat, 23 Sep 2023 10:11:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc2-0000bc-Ue; Sat, 23 Sep 2023 10:11:46 +0000
Received: by outflank-mailman (input) for mailman id 607084;
 Sat, 23 Sep 2023 10:11:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzc2-0000Pn-4d
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:46 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 973034ac-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:42 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:37 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:36 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 973034ac-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463902; x=1726999902;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=MxQyQabDuj01hP6xHQ5mL2MlMceZ5LcTb8ReoP3KjJA=;
  b=KFGNScWaoQcbQsEA+h9DNqSZNUUaetMKn9dSXujxOMwSq9jpzJxYFsy1
   HXuSOB0wIL8wTkmu0jffBYjKdOSqNGKWe/ncdQ+elM15/mv5NrdD5MfJQ
   jcJ84cJaabaD6TyNSICG3k+FyqVDrN4aYblKHfXbR74Yp2u6zdMc/xx8J
   Qf/4eZM4BwYVxS9/HmqdTfQ6S9D3yBua+Z7P+PDKUYJxBxNMG63t77q2L
   yM4u1yW65GDVho1N+vjTK/kevJQ0zkaHnOq5obS3zzHZE6EF8KLWcaQCK
   5Tt7puzGEfIDrURRtGo8OnqTLgPCRJWQztBFH7N5DTuW7jUdzsq8YVkfT
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492094"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492094"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388103"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388103"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 02/37] x86/opcode: Add the WRMSRNS instruction to the x86 opcode map
Date: Sat, 23 Sep 2023 02:41:37 -0700
Message-Id: <20230923094212.26520-3-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add the opcode used by WRMSRNS, which is the non-serializing version of
WRMSR and may replace it to improve performance, to the x86 opcode map.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
---
 arch/x86/lib/x86-opcode-map.txt       | 2 +-
 tools/arch/x86/lib/x86-opcode-map.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/x86/lib/x86-opcode-map.txt b/arch/x86/lib/x86-opcode-map.txt
index 5168ee0360b2..1efe1d9bf5ce 100644
--- a/arch/x86/lib/x86-opcode-map.txt
+++ b/arch/x86/lib/x86-opcode-map.txt
@@ -1051,7 +1051,7 @@ GrpTable: Grp6
 EndTable
 
 GrpTable: Grp7
-0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B)
+0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B) | WRMSRNS (110),(11B)
 1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B)
 2: LGDT Ms | XGETBV (000),(11B) | XSETBV (001),(11B) | VMFUNC (100),(11B) | XEND (101)(11B) | XTEST (110)(11B) | ENCLU (111),(11B)
 3: LIDT Ms
diff --git a/tools/arch/x86/lib/x86-opcode-map.txt b/tools/arch/x86/lib/x86-opcode-map.txt
index 5168ee0360b2..1efe1d9bf5ce 100644
--- a/tools/arch/x86/lib/x86-opcode-map.txt
+++ b/tools/arch/x86/lib/x86-opcode-map.txt
@@ -1051,7 +1051,7 @@ GrpTable: Grp6
 EndTable
 
 GrpTable: Grp7
-0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B)
+0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B) | WRMSRNS (110),(11B)
 1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B)
 2: LGDT Ms | XGETBV (000),(11B) | XSETBV (001),(11B) | VMFUNC (100),(11B) | XEND (101)(11B) | XTEST (110)(11B) | ENCLU (111),(11B)
 3: LIDT Ms
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:11:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:11:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607086.945286 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc5-0001PN-Pa; Sat, 23 Sep 2023 10:11:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607086.945286; Sat, 23 Sep 2023 10:11:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc5-0001PC-LO; Sat, 23 Sep 2023 10:11:49 +0000
Received: by outflank-mailman (input) for mailman id 607086;
 Sat, 23 Sep 2023 10:11:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzc4-0000Pn-4u
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:48 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 98e1b9da-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:44 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:38 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:37 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 98e1b9da-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463904; x=1726999904;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=IuyTaHxTCpXU3koACAwE/wPTCk5NNVb2w/wLiweVXto=;
  b=GHYVT+h1s8TCrVaUxv5AJti6meqrrOCtLKp/q3coA26Q3sS7XS3ziLc4
   /uw84P55JO3OIuL3qvlD+Sohv6ds6Z0K6Cq871FAcOlof8axMsZ/OPI7B
   6r5nTDTVbn9wfEk+u8E2OV2uWpLqhmPZDYrdS8AzaU32214xWT09tYwHX
   RS9cxoer8/yPI5xXxe3rOiGYZJ/EsdgqD3Ho1BYJ5zYllXS3KUkcXo7lC
   MAhATr6TU2V8nTLUl8SYP+zjezx87+dGD+Glv02IvEqGNLCX9ISEZ3baB
   dHHJWHn64K1MUwQcIKFEn+I66eoW1wnN5Pa6Nw2Gzfi6ZgQGQPyF+DoPl
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492120"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492120"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388110"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388110"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 04/37] x86/entry: Remove idtentry_sysvec from entry_{32,64}.S
Date: Sat, 23 Sep 2023 02:41:39 -0700
Message-Id: <20230923094212.26520-5-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

idtentry_sysvec is really just DECLARE_IDTENTRY defined in
<asm/idtentry.h>, no need to define it separately.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/entry/entry_32.S       | 4 ----
 arch/x86/entry/entry_64.S       | 8 --------
 arch/x86/include/asm/idtentry.h | 2 +-
 3 files changed, 1 insertion(+), 13 deletions(-)

diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S
index 6e6af42e044a..e0f22ad8ff7e 100644
--- a/arch/x86/entry/entry_32.S
+++ b/arch/x86/entry/entry_32.S
@@ -649,10 +649,6 @@ SYM_CODE_START_LOCAL(asm_\cfunc)
 SYM_CODE_END(asm_\cfunc)
 .endm
 
-.macro idtentry_sysvec vector cfunc
-	idtentry \vector asm_\cfunc \cfunc has_error_code=0
-.endm
-
 /*
  * Include the defines which emit the idt entries which are shared
  * shared between 32 and 64 bit and emit the __irqentry_text_* markers
diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
index f71664dea1a3..179e08d34eb6 100644
--- a/arch/x86/entry/entry_64.S
+++ b/arch/x86/entry/entry_64.S
@@ -432,14 +432,6 @@ SYM_CODE_END(\asmsym)
 	idtentry \vector asm_\cfunc \cfunc has_error_code=1
 .endm
 
-/*
- * System vectors which invoke their handlers directly and are not
- * going through the regular common device interrupt handling code.
- */
-.macro idtentry_sysvec vector cfunc
-	idtentry \vector asm_\cfunc \cfunc has_error_code=0
-.endm
-
 /**
  * idtentry_mce_db - Macro to generate entry stubs for #MC and #DB
  * @vector:		Vector number
diff --git a/arch/x86/include/asm/idtentry.h b/arch/x86/include/asm/idtentry.h
index 05fd175cec7d..cfca68f6cb84 100644
--- a/arch/x86/include/asm/idtentry.h
+++ b/arch/x86/include/asm/idtentry.h
@@ -447,7 +447,7 @@ __visible noinstr void func(struct pt_regs *regs,			\
 
 /* System vector entries */
 #define DECLARE_IDTENTRY_SYSVEC(vector, func)				\
-	idtentry_sysvec vector func
+	DECLARE_IDTENTRY(vector, func)
 
 #ifdef CONFIG_X86_64
 # define DECLARE_IDTENTRY_MCE(vector, func)				\
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:11:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:11:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607088.945306 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc7-0001vN-F9; Sat, 23 Sep 2023 10:11:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607088.945306; Sat, 23 Sep 2023 10:11:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc7-0001uO-90; Sat, 23 Sep 2023 10:11:51 +0000
Received: by outflank-mailman (input) for mailman id 607088;
 Sat, 23 Sep 2023 10:11:50 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzc6-0000Pn-5K
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:50 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9a287b8b-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:46 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:39 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:38 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9a287b8b-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463906; x=1726999906;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=bNeoh4I4zABONAQfik1sKjrzvYgDVMEQH0uLYFn+NlU=;
  b=lVqdWKyyyXoWDBsA1sYu7LxUNM73G33ABkiz6LWU3VIXwVVa3ajU4Q9J
   JUDhOd7rcuQwyTEZM/BPVmff9tA5I6pge0m5KdqtGAvPVDLdQB0S9DQea
   twcSIv+PRXFIbevA+SGMJoY3MvP72YUJwRCEDpFTjcYoVFuS6AMKHJxyf
   QFiFdEk13HEdbCI+6v3xv9Y7SDm132L6eHdge879ff0gipITK5J6fqIoH
   wrn45sthYpJg2vrL9GMI+bdibBAFyDkQVNTlaLG2/uWuI5vB8fptw1b+G
   mQNLxovubTm5MZjoIGTKfogOgsPr081Mp8LE2LG8h/xjd8spVqMCG8lXB
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492144"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492144"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388120"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388120"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 06/37] Documentation/x86/64: Add a documentation for FRED
Date: Sat, 23 Sep 2023 02:41:41 -0700
Message-Id: <20230923094212.26520-7-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Briefly introduce FRED, and its advantages compared to IDT.

Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v10:
* Reword a sentence to improve readability (Nikolay Borisov).
---
 Documentation/arch/x86/x86_64/fred.rst  | 96 +++++++++++++++++++++++++
 Documentation/arch/x86/x86_64/index.rst |  1 +
 2 files changed, 97 insertions(+)
 create mode 100644 Documentation/arch/x86/x86_64/fred.rst

diff --git a/Documentation/arch/x86/x86_64/fred.rst b/Documentation/arch/x86/x86_64/fred.rst
new file mode 100644
index 000000000000..9f57e7b91f7e
--- /dev/null
+++ b/Documentation/arch/x86/x86_64/fred.rst
@@ -0,0 +1,96 @@
+.. SPDX-License-Identifier: GPL-2.0
+
+=========================================
+Flexible Return and Event Delivery (FRED)
+=========================================
+
+Overview
+========
+
+The FRED architecture defines simple new transitions that change
+privilege level (ring transitions). The FRED architecture was
+designed with the following goals:
+
+1) Improve overall performance and response time by replacing event
+   delivery through the interrupt descriptor table (IDT event
+   delivery) and event return by the IRET instruction with lower
+   latency transitions.
+
+2) Improve software robustness by ensuring that event delivery
+   establishes the full supervisor context and that event return
+   establishes the full user context.
+
+The new transitions defined by the FRED architecture are FRED event
+delivery and, for returning from events, two FRED return instructions.
+FRED event delivery can effect a transition from ring 3 to ring 0, but
+it is used also to deliver events incident to ring 0. One FRED
+instruction (ERETU) effects a return from ring 0 to ring 3, while the
+other (ERETS) returns while remaining in ring 0. Collectively, FRED
+event delivery and the FRED return instructions are FRED transitions.
+
+In addition to these transitions, the FRED architecture defines a new
+instruction (LKGS) for managing the state of the GS segment register.
+The LKGS instruction can be used by 64-bit operating systems that do
+not use the new FRED transitions.
+
+Furthermore, the FRED architecture is easy to extend for future CPU
+architectures.
+
+Software based event dispatching
+================================
+
+FRED operates differently from IDT in terms of event handling. Instead
+of directly dispatching an event to its handler based on the event
+vector, FRED requires the software to dispatch an event to its handler
+based on both the event's type and vector. Therefore, an event dispatch
+framework must be implemented to facilitate the event-to-handler
+dispatch process. The FRED event dispatch framework takes control
+once an event is delivered, and employs a two-level dispatch.
+
+The first level dispatching is event type based, and the second level
+dispatching is event vector based.
+
+Full supervisor/user context
+============================
+
+FRED event delivery atomically save and restore full supervisor/user
+context upon event delivery and return. Thus it avoids the problem of
+transient states due to %cr2 and/or %dr6, and it is no longer needed
+to handle all the ugly corner cases caused by half baked entry states.
+
+FRED allows explicit unblock of NMI with new event return instructions
+ERETS/ERETU, avoiding the mess caused by IRET which unconditionally
+unblocks NMI, e.g., when an exception happens during NMI handling.
+
+FRED always restores the full value of %rsp, thus ESPFIX is no longer
+needed when FRED is enabled.
+
+LKGS
+====
+
+LKGS behaves like the MOV to GS instruction except that it loads the
+base address into the IA32_KERNEL_GS_BASE MSR instead of the GS
+segment’s descriptor cache. With LKGS, it ends up with avoiding
+mucking with kernel GS, i.e., an operating system can always operate
+with its own GS base address.
+
+Because FRED event delivery from ring 3 and ERETU both swap the value
+of the GS base address and that of the IA32_KERNEL_GS_BASE MSR, plus
+the introduction of LKGS instruction, the SWAPGS instruction is no
+longer needed when FRED is enabled, thus is disallowed (#UD).
+
+Stack levels
+============
+
+4 stack levels 0~3 are introduced to replace the nonreentrant IST for
+event handling, and each stack level should be configured to use a
+dedicated stack.
+
+The current stack level could be unchanged or go higher upon FRED
+event delivery. If unchanged, the CPU keeps using the current event
+stack. If higher, the CPU switches to a new event stack specified by
+the MSR of the new stack level, i.e., MSR_IA32_FRED_RSP[123].
+
+Only execution of a FRED return instruction ERET[US], could lower the
+current stack level, causing the CPU to switch back to the stack it was
+on before a previous event delivery that promoted the stack level.
diff --git a/Documentation/arch/x86/x86_64/index.rst b/Documentation/arch/x86/x86_64/index.rst
index a56070fc8e77..ad15e9bd623f 100644
--- a/Documentation/arch/x86/x86_64/index.rst
+++ b/Documentation/arch/x86/x86_64/index.rst
@@ -15,3 +15,4 @@ x86_64 Support
    cpu-hotplug-spec
    machinecheck
    fsgs
+   fred
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:11:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:11:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607085.945276 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc4-000191-CI; Sat, 23 Sep 2023 10:11:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607085.945276; Sat, 23 Sep 2023 10:11:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc4-00018m-8l; Sat, 23 Sep 2023 10:11:48 +0000
Received: by outflank-mailman (input) for mailman id 607085;
 Sat, 23 Sep 2023 10:11:47 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzc3-0000Pn-4s
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:47 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 98d7b2ed-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:44 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:37 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:37 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 98d7b2ed-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463904; x=1726999904;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=9qsPaAmdkqHl0KD85EKfAfnheAb+UY4gBzEbjksg7Tw=;
  b=fv0ZQs1QUktfRChCuvv9I9Cq0z5P02C58rdfW7HU9pZVWCM6fY6tSr6k
   sAs1D34MPJmCEpTgExc4BhK7WJThcoACO4TZJPIhB9EzWZmxKACYT4Sjj
   FHsXqTuSS6CpevI1h+YPPbAp9Gi9X/EXigiFQ5wZpdkjbMJ2599VW60Fb
   hyaQLbmjbzAD1LWTY+tSBHfG50aNbzS29NiKf3qDo2LkXvq2Wp6LTU4cj
   VEQlDOryOeLautz9q5Tyyp4vSSIAYN9hWsq04cel//8kzSdcnEafDrkSR
   I+AtyGlh6abJGwgQ0v5JMrV4WJaZLaFKZqwColi21wNi8g2n6IqnJfUcj
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492107"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492107"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388107"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388107"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 03/37] x86/msr: Add the WRMSRNS instruction support
Date: Sat, 23 Sep 2023 02:41:38 -0700
Message-Id: <20230923094212.26520-4-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add an always inline API __wrmsrns() to embed the WRMSRNS instruction
into the code.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/msr.h | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/arch/x86/include/asm/msr.h b/arch/x86/include/asm/msr.h
index 65ec1965cd28..c284ff9ebe67 100644
--- a/arch/x86/include/asm/msr.h
+++ b/arch/x86/include/asm/msr.h
@@ -97,6 +97,19 @@ static __always_inline void __wrmsr(unsigned int msr, u32 low, u32 high)
 		     : : "c" (msr), "a"(low), "d" (high) : "memory");
 }
 
+/*
+ * WRMSRNS behaves exactly like WRMSR with the only difference being
+ * that it is not a serializing instruction by default.
+ */
+static __always_inline void __wrmsrns(u32 msr, u32 low, u32 high)
+{
+	/* Instruction opcode for WRMSRNS; supported in binutils >= 2.40. */
+	asm volatile("1: .byte 0x0f,0x01,0xc6\n"
+		     "2:\n"
+		     _ASM_EXTABLE_TYPE(1b, 2b, EX_TYPE_WRMSR)
+		     : : "c" (msr), "a"(low), "d" (high));
+}
+
 #define native_rdmsr(msr, val1, val2)			\
 do {							\
 	u64 __val = __rdmsr((msr));			\
@@ -297,6 +310,11 @@ do {							\
 
 #endif	/* !CONFIG_PARAVIRT_XXL */
 
+static __always_inline void wrmsrns(u32 msr, u64 val)
+{
+	__wrmsrns(msr, val, val >> 32);
+}
+
 /*
  * 64-bit version of wrmsr_safe():
  */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:11:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:11:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607083.945253 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc2-0000TY-Qk; Sat, 23 Sep 2023 10:11:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607083.945253; Sat, 23 Sep 2023 10:11:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc2-0000SX-Ke; Sat, 23 Sep 2023 10:11:46 +0000
Received: by outflank-mailman (input) for mailman id 607083;
 Sat, 23 Sep 2023 10:11:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzc1-0000Pn-6S
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:45 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 95327241-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:41 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:36 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:35 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 95327241-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463901; x=1726999901;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=sC9LL5A/ZEIDrtGM0cHOahYHhGRKDWmOMFaGRJsZX2I=;
  b=CCf9JeV8mtO7342hIRIitVBbXt4GvU9Wh2eH+PyVboxkXwFqlzUqsCFS
   sI5fNCizUo6gTzZfX9jLWKvnJt8f6/+wkQLEO13yO9bMGH9RTBBN2iIiL
   Wt11dR9c1crFNRx/VSPECT/aqrHxmRbVa3i/yW90vcM0HdXeiPzRIz/FM
   XqlXmNeDVUn8iR/t+febbSrcDnZ7jMF6wQc9jtQX4GuM9zSIATUkJrCzV
   V3ZkyK/rQMy8QD0ZBnGQZV/crWaLqfJz9qU5baEUBTRwNgT7CDy8rP49q
   +TyBwuNXJUjdhhGk2rAGObZCb2F491HyRhalfrjMswqIX3qVlqzEvhr4m
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492069"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492069"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388096"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388096"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 00/37] x86: enable FRED for x86-64
Date: Sat, 23 Sep 2023 02:41:35 -0700
Message-Id: <20230923094212.26520-1-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This patch set enables the Intel flexible return and event delivery
(FRED) architecture for x86-64.

The FRED architecture defines simple new transitions that change
privilege level (ring transitions). The FRED architecture was
designed with the following goals:

1) Improve overall performance and response time by replacing event
   delivery through the interrupt descriptor table (IDT event
   delivery) and event return by the IRET instruction with lower
   latency transitions.

2) Improve software robustness by ensuring that event delivery
   establishes the full supervisor context and that event return
   establishes the full user context.

The new transitions defined by the FRED architecture are FRED event
delivery and, for returning from events, two FRED return instructions.
FRED event delivery can effect a transition from ring 3 to ring 0, but
it is used also to deliver events incident to ring 0. One FRED
instruction (ERETU) effects a return from ring 0 to ring 3, while the
other (ERETS) returns while remaining in ring 0. Collectively, FRED
event delivery and the FRED return instructions are FRED transitions.

Search for the latest FRED spec in most search engines with this search pattern:

  site:intel.com FRED (flexible return and event delivery) specification

As of now there is no publicly avaiable CPU supporting FRED, thus the Intel
Simics® Simulator is used as software development and testing vehicles. And
it can be downloaded from:
  https://www.intel.com/content/www/us/en/developer/articles/tool/simics-simulator.html

To enable FRED, the Simics package 8112 QSP-CPU needs to be installed with
CPU model configured as:
	$cpu_comp_class = "x86-experimental-fred"


Changes since v10:
* No need to invalidate SYSCALL and SYSENTER MSRs (Thomas Gleixner).
* Better explain the reason why no need to check current stack level
  (Paolo Bonzini).
* Replace "IS_ENABLED(CONFIG_IA32_EMULATION)" with the new ia32_enabled()
  API (Nikolay Borisov).
* FRED feature is defined in cpuid word 12, not 13 (Nikolay Borisov).
* Reword a sentence in the new FRED documentation to improve readability
  (Nikolay Borisov).
* A few comment fixes and improvements to event type definitions
  (Andrew Cooper).

Changes since v9:
* Set unused sysvec table entries to fred_handle_spurious_interrupt()
  in fred_complete_exception_setup() (Thomas Gleixner).
* Shove the whole thing into arch/x86/entry/entry_64_fred.S for invoking
  external_interrupt() and fred_exc_nmi() (Sean Christopherson).
* Correct and improve a few comments (Sean Christopherson).
* Merge the two IRQ/NMI asm entries into one as it's fine to invoke
  noinstr code from regular code (Thomas Gleixner).
* Setup the long mode and NMI flags in the augmented SS field of FRED
  stack frame in C instead of asm (Thomas Gleixner).
* Don't use jump tables, indirect jumps are expensive (Thomas Gleixner).
* Except #NMI/#DB/#MCE, FRED really can share the exception handlers
  with IDT (Thomas Gleixner).
* Avoid the sysvec_* idt_entry muck, do it at a central place, reuse code
  instead of blindly copying it, which breaks the performance optimized
  sysvec entries like reschedule_ipi (Thomas Gleixner).
* Add asm_ prefix to FRED asm entry points (Thomas Gleixner).
* Disable #DB to avoid endless recursion and stack overflow when a
  watchpoint/breakpoint is set in the code path which is executed by
  #DB handler (Thomas Gleixner).
* Introduce a new structure fred_ss to denote the FRED flags above SS
  selector, which avoids FRED_SSX_ macros and makes the code simpler
  and easier to read (Thomas Gleixner).
* Use type u64 to define FRED bit fields instead of type unsigned int
  (Thomas Gleixner).
* Avoid a type cast by defining X86_CR4_FRED as 0 on 32-bit (Thomas
  Gleixner).
* Add the WRMSRNS instruction support (Thomas Gleixner).

Changes since v8:
* Move the FRED initialization patch after all required changes are in
  place (Thomas Gleixner).
* Don't do syscall early out in fred_entry_from_user() before there are
  proper performance numbers and justifications (Thomas Gleixner).
* Add the control exception handler to the FRED exception handler table
  (Thomas Gleixner).
* Introduce a macro sysvec_install() to derive the asm handler name from
  a C handler, which simplifies the code and avoids an ugly typecast
  (Thomas Gleixner).
* Remove junk code that assumes no local APIC on x86_64 (Thomas Gleixner).
* Put IDTENTRY changes in a separate patch (Thomas Gleixner).
* Use high-order 48 bits above the lowest 16 bit SS only when FRED is
  enabled (Thomas Gleixner).
* Explain why writing directly to the IA32_KERNEL_GS_BASE MSR is
  doing the right thing (Thomas Gleixner).
* Reword some patch descriptions (Thomas Gleixner).
* Add a new macro VMX_DO_FRED_EVENT_IRQOFF for FRED instead of
  refactoring VMX_DO_EVENT_IRQOFF (Sean Christopherson).
* Do NOT use a trampoline, just LEA+PUSH the return RIP, PUSH the error
  code, and jump to the FRED kernel entry point for NMI or call
  external_interrupt() for IRQs (Sean Christopherson).
* Call external_interrupt() only when FRED is enabled, and convert the
  non-FRED handling to external_interrupt() after FRED lands (Sean
  Christopherson).
* Use __packed instead of __attribute__((__packed__)) (Borislav Petkov).
* Put all comments above the members, like the rest of the file does
  (Borislav Petkov).
* Reflect the FRED spec 5.0 change that ERETS and ERETU add 8 to %rsp
  before popping the return context from the stack.
* Reflect stack frame definition changes from FRED spec 3.0 to 5.0.
* Add ENDBR to the FRED_ENTER asm macro after kernel IBT is added to
  FRED base line in FRED spec 5.0.
* Add a document which briefly introduces FRED features.
* Remove 2 patches, "allow FRED systems to use interrupt vectors
  0x10-0x1f" and "allow dynamic stack frame size", from this patch set,
  as they are "optimizations" only.
* Send 2 patches, "header file for event types" and "do not modify the
  DPL bits for a null selector", as pre-FRED patches.

Changes since v7:
* Always call external_interrupt() for VMX IRQ handling on x86_64, thus avoid
  re-entering the noinstr code.
* Create a FRED stack frame when FRED is compiled-in but not enabled, which
  uses some extra stack space but simplifies the code.
* Add a log message when FRED is enabled.

Changes since v6:
* Add a comment to explain why it is safe to write to a previous FRED stack
  frame. (Lai Jiangshan).
* Export fred_entrypoint_kernel(), required when kvm-intel built as a module.
* Reserve a REDZONE for CALL emulation and Align RSP to a 64-byte boundary
  before pushing a new FRED stack frame.
* Replace pt_regs csx flags prefix FRED_CSL_ with FRED_CSX_.

Changes since v5:
* Initialize system_interrupt_handlers with dispatch_table_spurious_interrupt()
  instead of NULL to get rid of a branch (Peter Zijlstra).
* Disallow #DB inside #MCE for robustness sake (Peter Zijlstra).
* Add a comment for FRED stack level settings (Lai Jiangshan).
* Move the NMI bit from an invalid stack frame, which caused ERETU to fault,
  to the fault handler's stack frame, thus to unblock NMI ASAP if NMI is blocked
  (Lai Jiangshan).
* Refactor VMX_DO_EVENT_IRQOFF to handle IRQ/NMI in IRQ/NMI induced VM exits
  when FRED is enabled (Sean Christopherson).

Changes since v4:
* Do NOT use the term "injection", which in the KVM context means to
  reinject an event into the guest (Sean Christopherson).
* Add the explanation of why to execute "int $2" to invoke the NMI handler
  in NMI caused VM exits (Sean Christopherson).
* Use cs/ss instead of csx/ssx when initializing the pt_regs structure
  for calling external_interrupt(), otherwise it breaks i386 build.

Changes since v3:
* Call external_interrupt() to handle IRQ in IRQ caused VM exits.
* Execute "int $2" to handle NMI in NMI caused VM exits.
* Rename csl/ssl of the pt_regs structure to csx/ssx (x for extended)
  (Andrew Cooper).

Changes since v2:
* Improve comments for changes in arch/x86/include/asm/idtentry.h.

Changes since v1:
* call irqentry_nmi_{enter,exit}() in both IDT and FRED debug fault kernel
  handler (Peter Zijlstra).
* Initialize a FRED exception handler to fred_bad_event() instead of NULL
  if no FRED handler defined for an exception vector (Peter Zijlstra).
* Push calling irqentry_{enter,exit}() and instrumentation_{begin,end}()
  down into individual FRED exception handlers, instead of in the dispatch
  framework (Peter Zijlstra).


H. Peter Anvin (Intel) (20):
  x86/fred: Add Kconfig option for FRED (CONFIG_X86_FRED)
  x86/cpufeatures: Add the cpu feature bit for FRED
  x86/fred: Disable FRED support if CONFIG_X86_FRED is disabled
  x86/opcode: Add ERET[US] instructions to the x86 opcode map
  x86/objtool: Teach objtool about ERET[US]
  x86/cpu: Add X86_CR4_FRED macro
  x86/cpu: Add MSR numbers for FRED configuration
  x86/fred: Add a new header file for FRED definitions
  x86/fred: Reserve space for the FRED stack frame
  x86/fred: Update MSR_IA32_FRED_RSP0 during task switch
  x86/fred: Disallow the swapgs instruction when FRED is enabled
  x86/fred: No ESPFIX needed when FRED is enabled
  x86/fred: Allow single-step trap and NMI when starting a new task
  x86/fred: Make exc_page_fault() work for FRED
  x86/fred: Add a debug fault entry stub for FRED
  x86/fred: Add a NMI entry stub for FRED
  x86/fred: FRED entry/exit and dispatch code
  x86/fred: Let ret_from_fork_asm() jmp to asm_fred_exit_user when FRED
    is enabled
  x86/fred: Add FRED initialization functions
  x86/fred: Invoke FRED initialization code to enable FRED

Peter Zijlstra (Intel) (1):
  x86/entry/calling: Allow PUSH_AND_CLEAR_REGS being used beyond actual
    entry code

Xin Li (16):
  x86/cpufeatures: Add the cpu feature bit for WRMSRNS
  x86/opcode: Add the WRMSRNS instruction to the x86 opcode map
  x86/msr: Add the WRMSRNS instruction support
  x86/entry: Remove idtentry_sysvec from entry_{32,64}.S
  x86/trapnr: Add event type macros to <asm/trapnr.h>
  Documentation/x86/64: Add a documentation for FRED
  x86/fred: Disable FRED by default in its early stage
  x86/ptrace: Cleanup the definition of the pt_regs structure
  x86/ptrace: Add FRED additional information to the pt_regs structure
  x86/idtentry: Incorporate definitions/declarations of the FRED entries
  x86/fred: Add a machine check entry stub for FRED
  x86/traps: Add sysvec_install() to install a system interrupt handler
  x86/fred: Fixup fault on ERETU by jumping to fred_entrypoint_user
  x86/entry: Add fred_entry_from_kvm() for VMX to handle IRQ/NMI
  KVM: VMX: Call fred_entry_from_kvm() for IRQ/NMI handling
  x86/syscall: Split IDT syscall setup code into idt_syscall_init()

 .../admin-guide/kernel-parameters.txt         |   3 +
 Documentation/arch/x86/x86_64/fred.rst        |  96 ++++++
 Documentation/arch/x86/x86_64/index.rst       |   1 +
 arch/x86/Kconfig                              |   9 +
 arch/x86/entry/Makefile                       |   5 +-
 arch/x86/entry/calling.h                      |  15 +-
 arch/x86/entry/entry_32.S                     |   4 -
 arch/x86/entry/entry_64.S                     |  14 +-
 arch/x86/entry/entry_64_fred.S                | 132 +++++++++
 arch/x86/entry/entry_fred.c                   | 279 ++++++++++++++++++
 arch/x86/entry/vsyscall/vsyscall_64.c         |   2 +-
 arch/x86/include/asm/asm-prototypes.h         |   1 +
 arch/x86/include/asm/cpufeatures.h            |   2 +
 arch/x86/include/asm/desc.h                   |   2 -
 arch/x86/include/asm/disabled-features.h      |   8 +-
 arch/x86/include/asm/extable_fixup_types.h    |   4 +-
 arch/x86/include/asm/fred.h                   |  97 ++++++
 arch/x86/include/asm/idtentry.h               |  88 +++++-
 arch/x86/include/asm/msr-index.h              |  13 +-
 arch/x86/include/asm/msr.h                    |  18 ++
 arch/x86/include/asm/ptrace.h                 |  85 +++++-
 arch/x86/include/asm/switch_to.h              |   8 +-
 arch/x86/include/asm/thread_info.h            |  12 +-
 arch/x86/include/asm/trapnr.h                 |  12 +
 arch/x86/include/asm/vmx.h                    |  17 +-
 arch/x86/include/uapi/asm/processor-flags.h   |   7 +
 arch/x86/kernel/Makefile                      |   1 +
 arch/x86/kernel/cpu/acrn.c                    |   4 +-
 arch/x86/kernel/cpu/common.c                  |  41 ++-
 arch/x86/kernel/cpu/cpuid-deps.c              |   2 +
 arch/x86/kernel/cpu/mce/core.c                |  26 ++
 arch/x86/kernel/cpu/mshyperv.c                |  15 +-
 arch/x86/kernel/espfix_64.c                   |   8 +
 arch/x86/kernel/fred.c                        |  59 ++++
 arch/x86/kernel/idt.c                         |   4 +-
 arch/x86/kernel/irqinit.c                     |   7 +-
 arch/x86/kernel/kvm.c                         |   2 +-
 arch/x86/kernel/nmi.c                         |  28 ++
 arch/x86/kernel/process_64.c                  |  67 ++++-
 arch/x86/kernel/traps.c                       |  48 ++-
 arch/x86/kvm/vmx/vmx.c                        |  12 +-
 arch/x86/lib/x86-opcode-map.txt               |   4 +-
 arch/x86/mm/extable.c                         |  79 +++++
 arch/x86/mm/fault.c                           |   5 +-
 drivers/xen/events/events_base.c              |   2 +-
 tools/arch/x86/include/asm/cpufeatures.h      |   2 +
 .../arch/x86/include/asm/disabled-features.h  |   8 +-
 tools/arch/x86/include/asm/msr-index.h        |  13 +-
 tools/arch/x86/lib/x86-opcode-map.txt         |   4 +-
 tools/objtool/arch/x86/decode.c               |  19 +-
 50 files changed, 1280 insertions(+), 114 deletions(-)
 create mode 100644 Documentation/arch/x86/x86_64/fred.rst
 create mode 100644 arch/x86/entry/entry_64_fred.S
 create mode 100644 arch/x86/entry/entry_fred.c
 create mode 100644 arch/x86/include/asm/fred.h
 create mode 100644 arch/x86/kernel/fred.c

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:11:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:11:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607089.945316 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc8-0002Eg-PC; Sat, 23 Sep 2023 10:11:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607089.945316; Sat, 23 Sep 2023 10:11:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc8-0002ED-Jn; Sat, 23 Sep 2023 10:11:52 +0000
Received: by outflank-mailman (input) for mailman id 607089;
 Sat, 23 Sep 2023 10:11:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzc7-0000Pn-5G
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:51 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9a380aa3-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:46 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:39 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:39 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9a380aa3-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463906; x=1726999906;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=FhC/0k2yq7T7yCxf9L591KcnQJP82j/O9GzJYrzxumw=;
  b=dmDsfVyDX9rVK3SfLX+OZDBK/sWHUt7ayiKzahqeKefTf3Ujnl4Yle7r
   OdW4Lk/xaqlp7Qr2AUrQt6Aibo4Hf7BqjDuqhK9mLLkPhnuHTLTlkP3aU
   KJdk7uadDnMMRn3AzXr4lz8zIUz+ljlUUrPkwtzFa523M33UazWncE8sl
   z1YUpG64YfqVmqPXpvT5nrgnwGxzQp0ROO+O2hxUyRcI6+P6bVvEEEmZ7
   RkeG/7WlY34U4eq7inTpqTXgBdaIifQu+yhj0jwF62um90QQX1EitEoM5
   /uJp1IYAJU9pkbEnmTyspG4KAExwRhfVQ+tCv+YzzaZ+ivUxOwAqlvL3S
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492156"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492156"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388125"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388125"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 07/37] x86/fred: Add Kconfig option for FRED (CONFIG_X86_FRED)
Date: Sat, 23 Sep 2023 02:41:42 -0700
Message-Id: <20230923094212.26520-8-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add the configuration option CONFIG_X86_FRED to enable FRED.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/Kconfig | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 3154dbc49cf5..c3dd317d476c 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -496,6 +496,15 @@ config X86_CPU_RESCTRL
 
 	  Say N if unsure.
 
+config X86_FRED
+	bool "Flexible Return and Event Delivery"
+	depends on X86_64
+	help
+	  When enabled, try to use Flexible Return and Event Delivery
+	  instead of the legacy SYSCALL/SYSENTER/IDT architecture for
+	  ring transitions and exception/interrupt handling if the
+	  system supports.
+
 if X86_32
 config X86_BIGSMP
 	bool "Support for big SMP systems with more than 8 CPUs"
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:11:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:11:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607090.945326 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzcA-0002WJ-6G; Sat, 23 Sep 2023 10:11:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607090.945326; Sat, 23 Sep 2023 10:11:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzc9-0002W2-Vv; Sat, 23 Sep 2023 10:11:53 +0000
Received: by outflank-mailman (input) for mailman id 607090;
 Sat, 23 Sep 2023 10:11:52 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzc8-0000Pn-5X
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:52 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9a94ddf5-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:47 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:40 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:39 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9a94ddf5-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463907; x=1726999907;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=ZlGESG1ZjbxHp/2vGEpu7uzY2F9a0taEPQgxug8c1Qc=;
  b=mqWpm+ziSGBCxt1+XVJGIbKQqj3tDJ1a2SGdSpLugmodk6BV/jG2IYUG
   xDtt9PFMt9uvf/RzLxDtrFxjZntCctTxWGprivFHKaZ9sQhzLxCYa23MF
   pPtie+ZW2xpYX+5lfH+pjaYt1CPdsEbuTyt8m8RbWlUejErSbDxwu0eD+
   ZvgF3KH0yprB/KcBNsSrORn65VnxIOv1ioiNKImHBMlxwLnceONTO2zqM
   mndCHtt6BwRFhtKXRxvst/6O9yuwPbyVoVEzPbsPQf3feDmFA5CFrSjRK
   fi3yEC8GoD6dbItYBNGXzU7i///fO+pOuh90OAjqa9ARr9XuRgcVRYuGA
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492168"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492168"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388128"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388128"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 08/37] x86/cpufeatures: Add the cpu feature bit for FRED
Date: Sat, 23 Sep 2023 02:41:43 -0700
Message-Id: <20230923094212.26520-9-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Any FRED CPU will always have the following features as its baseline:
  1) LKGS, load attributes of the GS segment but the base address into
     the IA32_KERNEL_GS_BASE MSR instead of the GS segment’s descriptor
     cache.
  2) WRMSRNS, non-serializing WRMSR for faster MSR writes.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/cpufeatures.h       | 1 +
 arch/x86/kernel/cpu/cpuid-deps.c         | 2 ++
 tools/arch/x86/include/asm/cpufeatures.h | 1 +
 3 files changed, 4 insertions(+)

diff --git a/arch/x86/include/asm/cpufeatures.h b/arch/x86/include/asm/cpufeatures.h
index 330876d34b68..57ae93dc1e52 100644
--- a/arch/x86/include/asm/cpufeatures.h
+++ b/arch/x86/include/asm/cpufeatures.h
@@ -321,6 +321,7 @@
 #define X86_FEATURE_FZRM		(12*32+10) /* "" Fast zero-length REP MOVSB */
 #define X86_FEATURE_FSRS		(12*32+11) /* "" Fast short REP STOSB */
 #define X86_FEATURE_FSRC		(12*32+12) /* "" Fast short REP {CMPSB,SCASB} */
+#define X86_FEATURE_FRED		(12*32+17) /* Flexible Return and Event Delivery */
 #define X86_FEATURE_LKGS		(12*32+18) /* "" Load "kernel" (userspace) GS */
 #define X86_FEATURE_WRMSRNS		(12*32+19) /* "" Non-Serializing Write to Model Specific Register instruction */
 #define X86_FEATURE_AMX_FP16		(12*32+21) /* "" AMX fp16 Support */
diff --git a/arch/x86/kernel/cpu/cpuid-deps.c b/arch/x86/kernel/cpu/cpuid-deps.c
index e462c1d3800a..b7174209d855 100644
--- a/arch/x86/kernel/cpu/cpuid-deps.c
+++ b/arch/x86/kernel/cpu/cpuid-deps.c
@@ -82,6 +82,8 @@ static const struct cpuid_dep cpuid_deps[] = {
 	{ X86_FEATURE_XFD,			X86_FEATURE_XGETBV1   },
 	{ X86_FEATURE_AMX_TILE,			X86_FEATURE_XFD       },
 	{ X86_FEATURE_SHSTK,			X86_FEATURE_XSAVES    },
+	{ X86_FEATURE_FRED,			X86_FEATURE_LKGS      },
+	{ X86_FEATURE_FRED,			X86_FEATURE_WRMSRNS   },
 	{}
 };
 
diff --git a/tools/arch/x86/include/asm/cpufeatures.h b/tools/arch/x86/include/asm/cpufeatures.h
index 1b9d86ba5bc2..18bab7987d7f 100644
--- a/tools/arch/x86/include/asm/cpufeatures.h
+++ b/tools/arch/x86/include/asm/cpufeatures.h
@@ -317,6 +317,7 @@
 #define X86_FEATURE_FZRM		(12*32+10) /* "" Fast zero-length REP MOVSB */
 #define X86_FEATURE_FSRS		(12*32+11) /* "" Fast short REP STOSB */
 #define X86_FEATURE_FSRC		(12*32+12) /* "" Fast short REP {CMPSB,SCASB} */
+#define X86_FEATURE_FRED		(12*32+17) /* Flexible Return and Event Delivery */
 #define X86_FEATURE_LKGS		(12*32+18) /* "" Load "kernel" (userspace) GS */
 #define X86_FEATURE_WRMSRNS		(12*32+19) /* "" Non-Serializing Write to Model Specific Register instruction */
 #define X86_FEATURE_AMX_FP16		(12*32+21) /* "" AMX fp16 Support */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:11:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:11:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607091.945331 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzcA-0002fT-Ng; Sat, 23 Sep 2023 10:11:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607091.945331; Sat, 23 Sep 2023 10:11:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzcA-0002dk-J3; Sat, 23 Sep 2023 10:11:54 +0000
Received: by outflank-mailman (input) for mailman id 607091;
 Sat, 23 Sep 2023 10:11:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzc9-0000Pn-5Y
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:53 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9b86a226-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:48 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:41 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:40 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9b86a226-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463908; x=1726999908;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=8L4dZHWPEow2ZsckWCTENKztBfQe3j0MHQV1pASC0Y8=;
  b=lL1xZ85NSL8Gwct/7lwhDiZukUN9gEsZ/DQ+VT5BtJ/sy83tGtLaXe3u
   spSfvNutpZleO/02PlypJSR0Ojgr/C5qvOMSjc+SU+rlOwxpCEYPs3UCh
   m0RufCJDT+J3JroRva7JmSIHipf+FHvyA+5gC7WJDn8xpLd8n0El08fk6
   d1Ahksldiw8Psll9ctj/xjWDB1WB6gxNDauYBE5W023D/k36t68WxKxNS
   JtYjPM6CwuuYfrHC/5pFpRvikDjwwzDCaKqPMAMbO6NJzEn8OhPm5hG3v
   0sXkwi4CuKWKdQRGJpFdwUMS1fRZYZQ2jwbFn3fqOjEa3y7aAvss0hULX
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492192"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492192"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388135"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388135"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 10/37] x86/fred: Disable FRED by default in its early stage
Date: Sat, 23 Sep 2023 02:41:45 -0700
Message-Id: <20230923094212.26520-11-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

To enable FRED, a new kernel command line option "fred" needs to be added.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 Documentation/admin-guide/kernel-parameters.txt | 3 +++
 arch/x86/kernel/cpu/common.c                    | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index 45e34be4ed56..ee939ea00458 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -1525,6 +1525,9 @@
 			Warning: use of this parameter will taint the kernel
 			and may cause unknown problems.
 
+	fred		[X86-64]
+			Enable flexible return and event delivery
+
 	ftrace=[tracer]
 			[FTRACE] will set and start the specified tracer
 			as early as possible in order to facilitate early
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index afa755e06ae9..4dec7822a291 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -1487,6 +1487,9 @@ static void __init cpu_parse_early_param(void)
 	char *argptr = arg, *opt;
 	int arglen, taint = 0;
 
+	if (!cmdline_find_option_bool(boot_command_line, "fred"))
+		setup_clear_cpu_cap(X86_FEATURE_FRED);
+
 #ifdef CONFIG_X86_32
 	if (cmdline_find_option_bool(boot_command_line, "no387"))
 #ifdef CONFIG_MATH_EMULATION
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607116.945346 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzg8-0006BD-B6; Sat, 23 Sep 2023 10:16:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607116.945346; Sat, 23 Sep 2023 10:16:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzg8-0006Av-6o; Sat, 23 Sep 2023 10:16:00 +0000
Received: by outflank-mailman (input) for mailman id 607116;
 Sat, 23 Sep 2023 10:15:58 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcK-0000Pn-7L
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:04 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9fdf983c-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:56 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:46 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:45 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9fdf983c-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463916; x=1726999916;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=HaNFd9+f6o42v45n40NutGcoZldX+CMRVlEU3cDygtg=;
  b=QRzqKUpogmHpwjiM8MAeLo+oO5fs2Y42gjsBJShG3WsoBluhAd34mkzf
   /nNX8XwB7kYB5YuxA3NlNCNGvvgU1/AvFkTGJg7+cblnwJBs5G7ywwYbk
   kOy9ok2ue0fRTYFW4ACxxuxpba+Lk1pItMrfs+Sg+g6xG5RXfWtbKZybe
   tAx/T7AOiP9mBrP+FVhafuQFt5jnXlOeg6aEnpbC/hoVJqbOnrAhYrfm9
   s3Chu9PV+qWPI7qoApNvE2hxETIczPQPO77mN3Mwsvv9P7JHQqmIBFk5A
   fG2uykSmoty76w5/dc+kz5Xf8fyWPBQFR1/JF0pilw3E/ndimFAFbOAE8
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492315"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492315"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388171"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388171"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 20/37] x86/fred: Disallow the swapgs instruction when FRED is enabled
Date: Sat, 23 Sep 2023 02:41:55 -0700
Message-Id: <20230923094212.26520-21-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

SWAPGS is no longer needed thus NOT allowed with FRED because FRED
transitions ensure that an operating system can _always_ operate
with its own GS base address:
- For events that occur in ring 3, FRED event delivery swaps the GS
  base address with the IA32_KERNEL_GS_BASE MSR.
- ERETU (the FRED transition that returns to ring 3) also swaps the
  GS base address with the IA32_KERNEL_GS_BASE MSR.

And the operating system can still setup the GS segment for a user
thread without the need of loading a user thread GS with:
- Using LKGS, available with FRED, to modify other attributes of the
  GS segment without compromising its ability always to operate with
  its own GS base address.
- Accessing the GS segment base address for a user thread as before
  using RDMSR or WRMSR on the IA32_KERNEL_GS_BASE MSR.

Note, LKGS loads the GS base address into the IA32_KERNEL_GS_BASE MSR
instead of the GS segment’s descriptor cache. As such, the operating
system never changes its runtime GS base address.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v8:
* Explain why writing directly to the IA32_KERNEL_GS_BASE MSR is
  doing the right thing (Thomas Gleixner).
---
 arch/x86/kernel/process_64.c | 27 +++++++++++++++++++++++++--
 1 file changed, 25 insertions(+), 2 deletions(-)

diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
index 0f78b58021bb..4f87f5987ae8 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -166,7 +166,29 @@ static noinstr unsigned long __rdgsbase_inactive(void)
 
 	lockdep_assert_irqs_disabled();
 
-	if (!cpu_feature_enabled(X86_FEATURE_XENPV)) {
+	/*
+	 * SWAPGS is no longer needed thus NOT allowed with FRED because
+	 * FRED transitions ensure that an operating system can _always_
+	 * operate with its own GS base address:
+	 * - For events that occur in ring 3, FRED event delivery swaps
+	 *   the GS base address with the IA32_KERNEL_GS_BASE MSR.
+	 * - ERETU (the FRED transition that returns to ring 3) also swaps
+	 *   the GS base address with the IA32_KERNEL_GS_BASE MSR.
+	 *
+	 * And the operating system can still setup the GS segment for a
+	 * user thread without the need of loading a user thread GS with:
+	 * - Using LKGS, available with FRED, to modify other attributes
+	 *   of the GS segment without compromising its ability always to
+	 *   operate with its own GS base address.
+	 * - Accessing the GS segment base address for a user thread as
+	 *   before using RDMSR or WRMSR on the IA32_KERNEL_GS_BASE MSR.
+	 *
+	 * Note, LKGS loads the GS base address into the IA32_KERNEL_GS_BASE
+	 * MSR instead of the GS segment’s descriptor cache. As such, the
+	 * operating system never changes its runtime GS base address.
+	 */
+	if (!cpu_feature_enabled(X86_FEATURE_FRED) &&
+	    !cpu_feature_enabled(X86_FEATURE_XENPV)) {
 		native_swapgs();
 		gsbase = rdgsbase();
 		native_swapgs();
@@ -191,7 +213,8 @@ static noinstr void __wrgsbase_inactive(unsigned long gsbase)
 {
 	lockdep_assert_irqs_disabled();
 
-	if (!cpu_feature_enabled(X86_FEATURE_XENPV)) {
+	if (!cpu_feature_enabled(X86_FEATURE_FRED) &&
+	    !cpu_feature_enabled(X86_FEATURE_XENPV)) {
 		native_swapgs();
 		wrgsbase(gsbase);
 		native_swapgs();
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607117.945356 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzg9-0006YM-JO; Sat, 23 Sep 2023 10:16:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607117.945356; Sat, 23 Sep 2023 10:16:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzg9-0006YE-Ea; Sat, 23 Sep 2023 10:16:01 +0000
Received: by outflank-mailman (input) for mailman id 607117;
 Sat, 23 Sep 2023 10:15:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcO-0000Pn-8T
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:08 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a12f7f1f-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:58 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:48 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:47 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a12f7f1f-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463918; x=1726999918;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=aB9X6AvBbEVqHF8pDqD66jUIoaqA7x/kswu7ifFPwEo=;
  b=Pl/jMWpGe5BgllVJLcOuhCqSnV+uzMexhfDsOxZumWNrkOMkQY2LmLjZ
   PeaVzk7UGwB9PDbqciPwoVQK9UrCzZhS8ys+t4B0mAI06LNhyqXzehNO4
   ObZHpfOZdQUCnVyTITTiotRyk4S/rNxWXeyyCfzvphSNvSHJhtiLRjFEi
   m+PxeRCQwqi5WhG6uFzQex9bfbuRnJ9xVz36B69/zwRZp+Z0kL6go5ssH
   QG5tdlGMDMAgdLzlPU5F/gd2QdKMUDhG1TL6vuJNRfOwlQt90xLM2qHpX
   5Wk3xZhbJM9PC5ZFTsZWqmTxsESWFHBOFUOvDw7k3iI1zT7WzPGbCrOlJ
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492363"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492363"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388187"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388187"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 24/37] x86/idtentry: Incorporate definitions/declarations of the FRED entries
Date: Sat, 23 Sep 2023 02:41:59 -0700
Message-Id: <20230923094212.26520-25-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

FRED and IDT can share most of the definitions and declarations so
that in the majority of cases the actual handler implementation is the
same.

The differences are the exceptions where FRED stores exception related
information on the stack and the sysvec implementations as FRED can
handle irqentry/exit() in the dispatcher instead of having it in each
handler.

Also add stub defines for vectors which are not used due to Kconfig
decisions to spare the ifdeffery in the actual FRED dispatch code.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v9:
* Except NMI/#DB/#MCE, FRED really should share the exception handlers
  with IDT (Thomas Gleixner).

Changes since v8:
* Put IDTENTRY changes in a separate patch (Thomas Gleixner).
---
 arch/x86/include/asm/idtentry.h | 71 +++++++++++++++++++++++++++++----
 1 file changed, 63 insertions(+), 8 deletions(-)

diff --git a/arch/x86/include/asm/idtentry.h b/arch/x86/include/asm/idtentry.h
index cfca68f6cb84..4f26ee9b8b74 100644
--- a/arch/x86/include/asm/idtentry.h
+++ b/arch/x86/include/asm/idtentry.h
@@ -13,15 +13,18 @@
 
 #include <asm/irq_stack.h>
 
+typedef void (*idtentry_t)(struct pt_regs *regs);
+
 /**
  * DECLARE_IDTENTRY - Declare functions for simple IDT entry points
  *		      No error code pushed by hardware
  * @vector:	Vector number (ignored for C)
  * @func:	Function name of the entry point
  *
- * Declares three functions:
+ * Declares four functions:
  * - The ASM entry point: asm_##func
  * - The XEN PV trap entry point: xen_##func (maybe unused)
+ * - The C handler called from the FRED event dispatcher (maybe unused)
  * - The C handler called from the ASM entry point
  *
  * Note: This is the C variant of DECLARE_IDTENTRY(). As the name says it
@@ -31,6 +34,7 @@
 #define DECLARE_IDTENTRY(vector, func)					\
 	asmlinkage void asm_##func(void);				\
 	asmlinkage void xen_asm_##func(void);				\
+	void fred_##func(struct pt_regs *regs);				\
 	__visible void func(struct pt_regs *regs)
 
 /**
@@ -137,6 +141,17 @@ static __always_inline void __##func(struct pt_regs *regs,		\
 #define DEFINE_IDTENTRY_RAW(func)					\
 __visible noinstr void func(struct pt_regs *regs)
 
+/**
+ * DEFINE_FREDENTRY_RAW - Emit code for raw FRED entry points
+ * @func:	Function name of the entry point
+ *
+ * @func is called from the FRED event dispatcher with interrupts disabled.
+ *
+ * See @DEFINE_IDTENTRY_RAW for further details.
+ */
+#define DEFINE_FREDENTRY_RAW(func)					\
+noinstr void fred_##func(struct pt_regs *regs)
+
 /**
  * DECLARE_IDTENTRY_RAW_ERRORCODE - Declare functions for raw IDT entry points
  *				    Error code pushed by hardware
@@ -233,17 +248,27 @@ static noinline void __##func(struct pt_regs *regs, u32 vector)
 #define DEFINE_IDTENTRY_SYSVEC(func)					\
 static void __##func(struct pt_regs *regs);				\
 									\
+static __always_inline void instr_##func(struct pt_regs *regs)		\
+{									\
+	kvm_set_cpu_l1tf_flush_l1d();					\
+	run_sysvec_on_irqstack_cond(__##func, regs);			\
+}									\
+									\
 __visible noinstr void func(struct pt_regs *regs)			\
 {									\
 	irqentry_state_t state = irqentry_enter(regs);			\
 									\
 	instrumentation_begin();					\
-	kvm_set_cpu_l1tf_flush_l1d();					\
-	run_sysvec_on_irqstack_cond(__##func, regs);			\
+	instr_##func (regs);						\
 	instrumentation_end();						\
 	irqentry_exit(regs, state);					\
 }									\
 									\
+void fred_##func(struct pt_regs *regs)					\
+{									\
+	instr_##func (regs);						\
+}									\
+									\
 static noinline void __##func(struct pt_regs *regs)
 
 /**
@@ -260,19 +285,29 @@ static noinline void __##func(struct pt_regs *regs)
 #define DEFINE_IDTENTRY_SYSVEC_SIMPLE(func)				\
 static __always_inline void __##func(struct pt_regs *regs);		\
 									\
-__visible noinstr void func(struct pt_regs *regs)			\
+static __always_inline void instr_##func(struct pt_regs *regs)		\
 {									\
-	irqentry_state_t state = irqentry_enter(regs);			\
-									\
-	instrumentation_begin();					\
 	__irq_enter_raw();						\
 	kvm_set_cpu_l1tf_flush_l1d();					\
 	__##func (regs);						\
 	__irq_exit_raw();						\
+}									\
+									\
+__visible noinstr void func(struct pt_regs *regs)			\
+{									\
+	irqentry_state_t state = irqentry_enter(regs);			\
+									\
+	instrumentation_begin();					\
+	instr_##func (regs);						\
 	instrumentation_end();						\
 	irqentry_exit(regs, state);					\
 }									\
 									\
+void fred_##func(struct pt_regs *regs)					\
+{									\
+	instr_##func (regs);						\
+}									\
+									\
 static __always_inline void __##func(struct pt_regs *regs)
 
 /**
@@ -410,15 +445,18 @@ __visible noinstr void func(struct pt_regs *regs,			\
 /* C-Code mapping */
 #define DECLARE_IDTENTRY_NMI		DECLARE_IDTENTRY_RAW
 #define DEFINE_IDTENTRY_NMI		DEFINE_IDTENTRY_RAW
+#define DEFINE_FREDENTRY_NMI		DEFINE_FREDENTRY_RAW
 
 #ifdef CONFIG_X86_64
 #define DECLARE_IDTENTRY_MCE		DECLARE_IDTENTRY_IST
 #define DEFINE_IDTENTRY_MCE		DEFINE_IDTENTRY_IST
 #define DEFINE_IDTENTRY_MCE_USER	DEFINE_IDTENTRY_NOIST
+#define DEFINE_FREDENTRY_MCE		DEFINE_FREDENTRY_RAW
 
 #define DECLARE_IDTENTRY_DEBUG		DECLARE_IDTENTRY_IST
 #define DEFINE_IDTENTRY_DEBUG		DEFINE_IDTENTRY_IST
 #define DEFINE_IDTENTRY_DEBUG_USER	DEFINE_IDTENTRY_NOIST
+#define DEFINE_FREDENTRY_DEBUG		DEFINE_FREDENTRY_RAW
 #endif
 
 #else /* !__ASSEMBLY__ */
@@ -651,23 +689,36 @@ DECLARE_IDTENTRY(RESCHEDULE_VECTOR,			sysvec_reschedule_ipi);
 DECLARE_IDTENTRY_SYSVEC(REBOOT_VECTOR,			sysvec_reboot);
 DECLARE_IDTENTRY_SYSVEC(CALL_FUNCTION_SINGLE_VECTOR,	sysvec_call_function_single);
 DECLARE_IDTENTRY_SYSVEC(CALL_FUNCTION_VECTOR,		sysvec_call_function);
+#else
+# define fred_sysvec_reschedule_ipi			NULL
+# define fred_sysvec_reboot				NULL
+# define fred_sysvec_call_function_single		NULL
+# define fred_sysvec_call_function			NULL
 #endif
 
 #ifdef CONFIG_X86_LOCAL_APIC
 # ifdef CONFIG_X86_MCE_THRESHOLD
 DECLARE_IDTENTRY_SYSVEC(THRESHOLD_APIC_VECTOR,		sysvec_threshold);
+# else
+# define fred_sysvec_threshold				NULL
 # endif
 
 # ifdef CONFIG_X86_MCE_AMD
 DECLARE_IDTENTRY_SYSVEC(DEFERRED_ERROR_VECTOR,		sysvec_deferred_error);
+# else
+# define fred_sysvec_deferred_error			NULL
 # endif
 
 # ifdef CONFIG_X86_THERMAL_VECTOR
 DECLARE_IDTENTRY_SYSVEC(THERMAL_APIC_VECTOR,		sysvec_thermal);
+# else
+# define fred_sysvec_thermal				NULL
 # endif
 
 # ifdef CONFIG_IRQ_WORK
 DECLARE_IDTENTRY_SYSVEC(IRQ_WORK_VECTOR,		sysvec_irq_work);
+# else
+# define fred_sysvec_irq_work				NULL
 # endif
 #endif
 
@@ -675,12 +726,16 @@ DECLARE_IDTENTRY_SYSVEC(IRQ_WORK_VECTOR,		sysvec_irq_work);
 DECLARE_IDTENTRY_SYSVEC(POSTED_INTR_VECTOR,		sysvec_kvm_posted_intr_ipi);
 DECLARE_IDTENTRY_SYSVEC(POSTED_INTR_WAKEUP_VECTOR,	sysvec_kvm_posted_intr_wakeup_ipi);
 DECLARE_IDTENTRY_SYSVEC(POSTED_INTR_NESTED_VECTOR,	sysvec_kvm_posted_intr_nested_ipi);
+#else
+# define fred_sysvec_kvm_posted_intr_ipi		NULL
+# define fred_sysvec_kvm_posted_intr_wakeup_ipi		NULL
+# define fred_sysvec_kvm_posted_intr_nested_ipi		NULL
 #endif
 
 #if IS_ENABLED(CONFIG_HYPERV)
 DECLARE_IDTENTRY_SYSVEC(HYPERVISOR_CALLBACK_VECTOR,	sysvec_hyperv_callback);
 DECLARE_IDTENTRY_SYSVEC(HYPERV_REENLIGHTENMENT_VECTOR,	sysvec_hyperv_reenlightenment);
-DECLARE_IDTENTRY_SYSVEC(HYPERV_STIMER0_VECTOR,	sysvec_hyperv_stimer0);
+DECLARE_IDTENTRY_SYSVEC(HYPERV_STIMER0_VECTOR,		sysvec_hyperv_stimer0);
 #endif
 
 #if IS_ENABLED(CONFIG_ACRN_GUEST)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607121.945361 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzg9-0006bp-Us; Sat, 23 Sep 2023 10:16:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607121.945361; Sat, 23 Sep 2023 10:16:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzg9-0006bF-Om; Sat, 23 Sep 2023 10:16:01 +0000
Received: by outflank-mailman (input) for mailman id 607121;
 Sat, 23 Sep 2023 10:16:00 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcG-0000Pn-6Q
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:00 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9e3f9c52-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:53 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:44 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:43 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9e3f9c52-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463913; x=1726999913;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=/vulkjS/nAxN+RJ3C7R6J4h15cqNiAED/GUC9x16vUQ=;
  b=XZ0wyf07X9QgU06AFO9YVmybjKox37R1fAA6rbkHwo4kZkpzIEUlnVZF
   tzsr2xXsqVZ14AoJ8ioZllYLAQ46UgL1QifBNedYlZnuS7exOE6o2IBdz
   rjkm3Qm69hcB7zbeJMrSYU4x4xnliUsj94kkXHieXoCvk/9aMi9GbDRlC
   oGvZiDW7MqUijIy5/k78W6DqX2jeH57Hz2o6D3LeCXoKF/peE+AlsV+Da
   h6eiNJSOTwCkoaW1ienbSSycWlFWNnslzsQFohd8C/NxuE8CInxnnmCjK
   Y0pA2o+rSLqXsw3f+ZkGJwv3SoGhPicKfGUSvwoFySZVYskB2aKuyML0R
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492266"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492266"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388154"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388154"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 16/37] x86/ptrace: Add FRED additional information to the pt_regs structure
Date: Sat, 23 Sep 2023 02:41:51 -0700
Message-Id: <20230923094212.26520-17-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

FRED defines additional information in the upper 48 bits of cs/ss
fields. Therefore add the information definitions into the pt_regs
structure.

Specially introduce a new structure fred_ss to denote the FRED flags
above SS selector, which avoids FRED_SSX_ macros and makes the code
simpler and easier to read.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v9:
* Introduce a new structure fred_ss to denote the FRED flags above SS
  selector, which avoids FRED_SSX_ macros and makes the code simpler
  and easier to read (Thomas Gleixner).
* Use type u64 to define FRED bit fields instead of type unsigned int
  (Thomas Gleixner).

Changes since v8:
* Reflect stack frame definition changes from FRED spec 3.0 to 5.0.
* Use __packed instead of __attribute__((__packed__)) (Borislav Petkov).
* Put all comments above the members, like the rest of the file does
  (Borislav Petkov).

Changes since v3:
* Rename csl/ssl of the pt_regs structure to csx/ssx (x for extended)
  (Andrew Cooper).
---
 arch/x86/include/asm/ptrace.h | 51 +++++++++++++++++++++++++++++++----
 1 file changed, 46 insertions(+), 5 deletions(-)

diff --git a/arch/x86/include/asm/ptrace.h b/arch/x86/include/asm/ptrace.h
index f08ea073edd6..5786c8ca5f4c 100644
--- a/arch/x86/include/asm/ptrace.h
+++ b/arch/x86/include/asm/ptrace.h
@@ -56,6 +56,25 @@ struct pt_regs {
 
 #else /* __i386__ */
 
+struct fred_ss {
+	u64	ss	: 16,	// SS selector
+		sti	:  1,	// STI state
+		swevent	:  1,	// Set if syscall, sysenter or INT n
+		nmi	:  1,	// Event is NMI type
+			: 13,
+		vector	:  8,	// Event vector
+			:  8,
+		type	:  4,	// Event type
+			:  4,
+		enclave	:  1,	// Event was incident to enclave execution
+		lm	:  1,	// CPU was in long mode
+		nested	:  1,	// Nested exception during FRED delivery
+				// not set for #DF
+			:  1,
+		insnlen	:  4;	// The length of the instruction causing the event
+				// Only set for INT0, INT1, INT3, INT n, SYSCALL
+};				// and SYSENTER. 0 otherwise.
+
 struct pt_regs {
 	/*
 	 * C ABI says these regs are callee-preserved. They aren't saved on
@@ -85,6 +104,12 @@ struct pt_regs {
 	 * - the syscall number (syscall, sysenter, int80)
 	 * - error_code stored by the CPU on traps and exceptions
 	 * - the interrupt number for device interrupts
+	 *
+	 * A FRED stack frame starts here:
+	 *   1) It _always_ includes an error code;
+	 *
+	 *   2) The return frame for ERET[US] starts here, but
+	 *	the content of orig_ax is ignored.
 	 */
 	unsigned long orig_ax;
 
@@ -92,20 +117,36 @@ struct pt_regs {
 	unsigned long ip;
 
 	union {
-		u64	csx;	// The full 64-bit data slot containing CS
-		u16	cs;	// CS selector
+		u64	csx;		// The full data for FRED
+		/*
+		 * The 'cs' member should be defined as a 16-bit bit-field
+		 * along with the 'sl' and 'wfe' members, which however
+		 * breaks compiling REG_OFFSET_NAME(cs), because compilers
+		 * disallow calculating the address of a bit-field.
+		 *
+		 * Therefore 'cs" is defined as an individual member with
+		 * type u16.
+		 */
+		u16	cs;		// CS selector
+		u64		: 16,
+			sl	:  2,	// Stack level at event time
+			wfe	:  1,	// IBT is in WAIT_FOR_BRANCH_STATE
+				: 45;
 	};
 
 	unsigned long flags;
 	unsigned long sp;
 
 	union {
-		u64	ssx;	// The full 64-bit data slot containing SS
-		u16	ss;	// SS selector
+		u64		ssx;		// The full data for FRED
+		u16		ss;		// SS selector
+		struct fred_ss	fred_ss;	// The fred extension
 	};
 
 	/*
-	 * Top of stack on IDT systems.
+	 * Top of stack on IDT systems, while FRED systems have extra fields
+	 * defined above for storing exception related information, e.g. CR2 or
+	 * DR6.
 	 */
 };
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607132.945376 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgZ-0007u3-4x; Sat, 23 Sep 2023 10:16:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607132.945376; Sat, 23 Sep 2023 10:16:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgZ-0007tw-1s; Sat, 23 Sep 2023 10:16:27 +0000
Received: by outflank-mailman (input) for mailman id 607132;
 Sat, 23 Sep 2023 10:16:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcE-0000Pn-6J
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:58 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9d33871c-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:51 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:43 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:42 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9d33871c-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463911; x=1726999911;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=szPt1r95a6G9RGqQRcu9cfSwmWMFMGoo6TuZWPez9pk=;
  b=Wph0zYRjo/Mjhkpo9STRRCaIF1mZf7jXXIHF+Y5oa+5F25Jbu6sKraYP
   H8Bog6AQr/KkZmZ9gnlNu//5V29UY3FJM2KSQ6+SOCNTSk0z1kx+Eesj4
   Qgj1ogO+BVJThw5lZ03wqg4DAl9G/2sdz3d1f7PXJ9c9aEzR9RWX3S7fB
   N6PRDjbn5lNMdnIN4xEiwltpG2qVhNO0emAyWDy3Q9i4hkAl5G9MA3Akr
   fZ8Ve0hc4YTz6deI425/oLEecDD7AQxAC/PMeK9zdY0CFV/2nhr8hSbCQ
   LvfFLk3CNUoucWQOgiqIpMEWP/vyUtT3WRouRxnucvEncxLXYDWB0IxkS
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492241"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492241"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388148"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388148"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 14/37] x86/cpu: Add MSR numbers for FRED configuration
Date: Sat, 23 Sep 2023 02:41:49 -0700
Message-Id: <20230923094212.26520-15-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add MSR numbers for the FRED configuration registers per FRED spec 5.0.

Originally-by: Megha Dey <megha.dey@intel.com>
Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/msr-index.h       | 13 ++++++++++++-
 tools/arch/x86/include/asm/msr-index.h | 13 ++++++++++++-
 2 files changed, 24 insertions(+), 2 deletions(-)

diff --git a/arch/x86/include/asm/msr-index.h b/arch/x86/include/asm/msr-index.h
index 6a6b0f763f67..200d7715696d 100644
--- a/arch/x86/include/asm/msr-index.h
+++ b/arch/x86/include/asm/msr-index.h
@@ -36,8 +36,19 @@
 #define EFER_FFXSR		(1<<_EFER_FFXSR)
 #define EFER_AUTOIBRS		(1<<_EFER_AUTOIBRS)
 
-/* Intel MSRs. Some also available on other CPUs */
+/* FRED MSRs */
+#define MSR_IA32_FRED_RSP0	0x1cc			/* Level 0 stack pointer */
+#define MSR_IA32_FRED_RSP1	0x1cd			/* Level 1 stack pointer */
+#define MSR_IA32_FRED_RSP2	0x1ce			/* Level 2 stack pointer */
+#define MSR_IA32_FRED_RSP3	0x1cf			/* Level 3 stack pointer */
+#define MSR_IA32_FRED_STKLVLS	0x1d0			/* Exception stack levels */
+#define MSR_IA32_FRED_SSP0	MSR_IA32_PL0_SSP	/* Level 0 shadow stack pointer */
+#define MSR_IA32_FRED_SSP1	0x1d1			/* Level 1 shadow stack pointer */
+#define MSR_IA32_FRED_SSP2	0x1d2			/* Level 2 shadow stack pointer */
+#define MSR_IA32_FRED_SSP3	0x1d3			/* Level 3 shadow stack pointer */
+#define MSR_IA32_FRED_CONFIG	0x1d4			/* Entrypoint and interrupt stack level */
 
+/* Intel MSRs. Some also available on other CPUs */
 #define MSR_TEST_CTRL				0x00000033
 #define MSR_TEST_CTRL_SPLIT_LOCK_DETECT_BIT	29
 #define MSR_TEST_CTRL_SPLIT_LOCK_DETECT		BIT(MSR_TEST_CTRL_SPLIT_LOCK_DETECT_BIT)
diff --git a/tools/arch/x86/include/asm/msr-index.h b/tools/arch/x86/include/asm/msr-index.h
index a00a53e15ab7..fc75e3ca47d9 100644
--- a/tools/arch/x86/include/asm/msr-index.h
+++ b/tools/arch/x86/include/asm/msr-index.h
@@ -36,8 +36,19 @@
 #define EFER_FFXSR		(1<<_EFER_FFXSR)
 #define EFER_AUTOIBRS		(1<<_EFER_AUTOIBRS)
 
-/* Intel MSRs. Some also available on other CPUs */
+/* FRED MSRs */
+#define MSR_IA32_FRED_RSP0	0x1cc			/* Level 0 stack pointer */
+#define MSR_IA32_FRED_RSP1	0x1cd			/* Level 1 stack pointer */
+#define MSR_IA32_FRED_RSP2	0x1ce			/* Level 2 stack pointer */
+#define MSR_IA32_FRED_RSP3	0x1cf			/* Level 3 stack pointer */
+#define MSR_IA32_FRED_STKLVLS	0x1d0			/* Exception stack levels */
+#define MSR_IA32_FRED_SSP0	MSR_IA32_PL0_SSP	/* Level 0 shadow stack pointer */
+#define MSR_IA32_FRED_SSP1	0x1d1			/* Level 1 shadow stack pointer */
+#define MSR_IA32_FRED_SSP2	0x1d2			/* Level 2 shadow stack pointer */
+#define MSR_IA32_FRED_SSP3	0x1d3			/* Level 3 shadow stack pointer */
+#define MSR_IA32_FRED_CONFIG	0x1d4			/* Entrypoint and interrupt stack level */
 
+/* Intel MSRs. Some also available on other CPUs */
 #define MSR_TEST_CTRL				0x00000033
 #define MSR_TEST_CTRL_SPLIT_LOCK_DETECT_BIT	29
 #define MSR_TEST_CTRL_SPLIT_LOCK_DETECT		BIT(MSR_TEST_CTRL_SPLIT_LOCK_DETECT_BIT)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607133.945383 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgZ-00081A-JR; Sat, 23 Sep 2023 10:16:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607133.945383; Sat, 23 Sep 2023 10:16:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgZ-00080E-ER; Sat, 23 Sep 2023 10:16:27 +0000
Received: by outflank-mailman (input) for mailman id 607133;
 Sat, 23 Sep 2023 10:16:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcC-0000Pn-66
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:56 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9cdc08da-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:51 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:42 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:41 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9cdc08da-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463911; x=1726999911;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=nnaiSfOR32UqURagnGQyKATdoHKyxN7QZzCa/h9+/jY=;
  b=UReG64z6AQGBxsL+NCDvphShcPmjXqd1wLr2q9qqpcIZfyUe6L8Z03WA
   kPtpJ3FCOJKozGFxsdURSEzF0eFyVhbZWOslqbJ8a2MyhYkhSlN2zUSfY
   4jxWTDU/mRqRmY4vFtDaNLqwSTYBtUluN4RQIjeO6HjPNPshjTSZSNaJz
   wdVaaJiboMAiP/V8wWdyLB+HEQN06rj4fTx1mFPgGSwZQ/5rmN7e7uHqN
   /t7pFr6mlBWWP2eM0Q9xlaji4HfTAqwb+WesiaxrHXwkmbHOE0YB8q6Zj
   o1nbmLHf4jyW+T00XV5nSmG34M3RH34DbUNwsv3B+fBZW29fNt+55LJyH
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492217"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492217"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388141"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388141"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 12/37] x86/objtool: Teach objtool about ERET[US]
Date: Sat, 23 Sep 2023 02:41:47 -0700
Message-Id: <20230923094212.26520-13-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Update the objtool decoder to know about the ERET[US] instructions
(type INSN_CONTEXT_SWITCH).

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 tools/objtool/arch/x86/decode.c | 19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

diff --git a/tools/objtool/arch/x86/decode.c b/tools/objtool/arch/x86/decode.c
index c0f25d00181e..6999f478c155 100644
--- a/tools/objtool/arch/x86/decode.c
+++ b/tools/objtool/arch/x86/decode.c
@@ -509,11 +509,20 @@ int arch_decode_instruction(struct objtool_file *file, const struct section *sec
 
 		if (op2 == 0x01) {
 
-			if (modrm == 0xca)
-				insn->type = INSN_CLAC;
-			else if (modrm == 0xcb)
-				insn->type = INSN_STAC;
-
+			switch (insn_last_prefix_id(&ins)) {
+			case INAT_PFX_REPE:
+			case INAT_PFX_REPNE:
+				if (modrm == 0xca)
+					/* eretu/erets */
+					insn->type = INSN_CONTEXT_SWITCH;
+				break;
+			default:
+				if (modrm == 0xca)
+					insn->type = INSN_CLAC;
+				else if (modrm == 0xcb)
+					insn->type = INSN_STAC;
+				break;
+			}
 		} else if (op2 >= 0x80 && op2 <= 0x8f) {
 
 			insn->type = INSN_JUMP_CONDITIONAL;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607135.945396 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzga-0008Vd-VB; Sat, 23 Sep 2023 10:16:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607135.945396; Sat, 23 Sep 2023 10:16:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzga-0008Ty-Q3; Sat, 23 Sep 2023 10:16:28 +0000
Received: by outflank-mailman (input) for mailman id 607135;
 Sat, 23 Sep 2023 10:16:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcM-0000Pn-7p
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:06 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a0e595f3-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:57 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:47 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:46 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a0e595f3-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463917; x=1726999917;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=m7R91mzhAyMwuxf88uvtu3V1UGcA6vznqDxNdL57F/c=;
  b=Sopz7iOj5WMz1qjeOb/W9Aw7vn9zQFujFQRPg3cFRjVYKOuxnIL3OrlY
   gDRE7K8GcVnOxpUdyAnc/O7ETKAN1nexbT6apgzP8narhMqcatihWUP5j
   gm+p14OWgb9/I2KP3vlIJcaVeoxyYddzb8mWkzyCMUVd3DW4DORZaj44+
   WMVHh8HhDIs6m6uIETZ39i+ziRmi4f8MJDgp2tGyZfrE6KG600UBujVub
   xjRlCsGVCoGlJ6sX4VMOWh468JJxIhQZr3prF4limjj9QVYUH6B808upa
   Br7DhSE2JndEmIbehuJ8jhl/dN9lb4yQiPND5cnyvlIxnoQTB/pDz4ZHq
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492339"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492339"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388180"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388180"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 22/37] x86/fred: Allow single-step trap and NMI when starting a new task
Date: Sat, 23 Sep 2023 02:41:57 -0700
Message-Id: <20230923094212.26520-23-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Entering a new task is logically speaking a return from a system call
(exec, fork, clone, etc.). As such, if ptrace enables single stepping
a single step exception should be allowed to trigger immediately upon
entering user space. This is not optional.

NMI should *never* be disabled in user space. As such, this is an
optional, opportunistic way to catch errors.

Allow single-step trap and NMI when starting a new task, thus once
the new task enters user space, single-step trap and NMI are both
enabled immediately.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v8:
* Use high-order 48 bits above the lowest 16 bit SS only when FRED
  is enabled (Thomas Gleixner).
---
 arch/x86/kernel/process_64.c | 38 ++++++++++++++++++++++++++++++------
 1 file changed, 32 insertions(+), 6 deletions(-)

diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
index 4f87f5987ae8..c075591b7b46 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -56,6 +56,7 @@
 #include <asm/resctrl.h>
 #include <asm/unistd.h>
 #include <asm/fsgsbase.h>
+#include <asm/fred.h>
 #ifdef CONFIG_IA32_EMULATION
 /* Not included via unistd.h */
 #include <asm/unistd_32_ia32.h>
@@ -528,7 +529,7 @@ void x86_gsbase_write_task(struct task_struct *task, unsigned long gsbase)
 static void
 start_thread_common(struct pt_regs *regs, unsigned long new_ip,
 		    unsigned long new_sp,
-		    unsigned int _cs, unsigned int _ss, unsigned int _ds)
+		    u16 _cs, u16 _ss, u16 _ds)
 {
 	WARN_ON_ONCE(regs != current_pt_regs());
 
@@ -545,11 +546,36 @@ start_thread_common(struct pt_regs *regs, unsigned long new_ip,
 	loadsegment(ds, _ds);
 	load_gs_index(0);
 
-	regs->ip		= new_ip;
-	regs->sp		= new_sp;
-	regs->cs		= _cs;
-	regs->ss		= _ss;
-	regs->flags		= X86_EFLAGS_IF;
+	regs->ip	= new_ip;
+	regs->sp	= new_sp;
+	regs->csx	= _cs;
+	regs->ssx	= _ss;
+	/*
+	 * Allow single-step trap and NMI when starting a new task, thus
+	 * once the new task enters user space, single-step trap and NMI
+	 * are both enabled immediately.
+	 *
+	 * Entering a new task is logically speaking a return from a
+	 * system call (exec, fork, clone, etc.). As such, if ptrace
+	 * enables single stepping a single step exception should be
+	 * allowed to trigger immediately upon entering user space.
+	 * This is not optional.
+	 *
+	 * NMI should *never* be disabled in user space. As such, this
+	 * is an optional, opportunistic way to catch errors.
+	 *
+	 * Paranoia: High-order 48 bits above the lowest 16 bit SS are
+	 * discarded by the legacy IRET instruction on all Intel, AMD,
+	 * and Cyrix/Centaur/VIA CPUs, thus can be set unconditionally,
+	 * even when FRED is not enabled. But we choose the safer side
+	 * to use these bits only when FRED is enabled.
+	 */
+	if (cpu_feature_enabled(X86_FEATURE_FRED)) {
+		regs->fred_ss.swevent	= true;
+		regs->fred_ss.nmi	= true;
+	}
+
+	regs->flags	= X86_EFLAGS_IF | X86_EFLAGS_FIXED;
 }
 
 void
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607136.945400 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgb-00007d-7r; Sat, 23 Sep 2023 10:16:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607136.945400; Sat, 23 Sep 2023 10:16:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgb-00006e-3n; Sat, 23 Sep 2023 10:16:29 +0000
Received: by outflank-mailman (input) for mailman id 607136;
 Sat, 23 Sep 2023 10:16:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcU-0000Pn-8l
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:14 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a2ed6d3e-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:12:01 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:50 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:50 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a2ed6d3e-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463921; x=1726999921;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=PKEOP4k0ZbBHtG5Hiii+7GvY74WaZh+swnEHI3cDOxs=;
  b=nDRAOnZYhl93bIpMazs6GYbgSzHhOQUjx6gNfR4xU8hecu1x9xOXFGTB
   d7PxGHSsnpwRq4kStLIXaSiVUxOc5XO49HiRHg4ofojAH0AAoJeFmtmlJ
   bFStKQOTEBKUwxiFvkS3ygZdHVqogVgyhEMp0IdlkFXpVOEOPQvKAyxU8
   OuhVzZVbcSWQHwnNt2ngh9OekzpX3ouRJ2PCwHElNe+3bWZZwQs6iMuH5
   HC5nsrHEBIeGGMgtju7+kx7G79lhmc6WxKWmo14HwIvL0TsK++qvbgCZo
   gly5i1ilpXXpoSLGx0o4xKbN5q/5LRblSs7GfhRsxbvMA/GLsgEYYu5OR
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492424"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492424"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388203"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388203"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 29/37] x86/traps: Add sysvec_install() to install a system interrupt handler
Date: Sat, 23 Sep 2023 02:42:04 -0700
Message-Id: <20230923094212.26520-30-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add sysvec_install() to install a system interrupt handler into the IDT
or the FRED system interrupt handler table.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v8:
* Introduce a macro sysvec_install() to derive the asm handler name from
  a C handler, which simplifies the code and avoids an ugly typecast
  (Thomas Gleixner).
---
 arch/x86/entry/entry_fred.c      | 14 ++++++++++++++
 arch/x86/include/asm/desc.h      |  2 --
 arch/x86/include/asm/idtentry.h  | 15 +++++++++++++++
 arch/x86/kernel/cpu/acrn.c       |  4 ++--
 arch/x86/kernel/cpu/mshyperv.c   | 15 +++++++--------
 arch/x86/kernel/idt.c            |  4 ++--
 arch/x86/kernel/kvm.c            |  2 +-
 drivers/xen/events/events_base.c |  2 +-
 8 files changed, 42 insertions(+), 16 deletions(-)

diff --git a/arch/x86/entry/entry_fred.c b/arch/x86/entry/entry_fred.c
index 68bec3888a36..97e2552d6951 100644
--- a/arch/x86/entry/entry_fred.c
+++ b/arch/x86/entry/entry_fred.c
@@ -126,6 +126,20 @@ static idtentry_t sysvec_table[NR_SYSTEM_VECTORS] __ro_after_init = {
 	SYSVEC(POSTED_INTR_NESTED_VECTOR,	kvm_posted_intr_nested_ipi),
 };
 
+static bool fred_setup_done __initdata;
+
+void __init fred_install_sysvec(unsigned int sysvec, idtentry_t handler)
+{
+	if (WARN_ON_ONCE(sysvec < FIRST_SYSTEM_VECTOR))
+		return;
+
+	if (WARN_ON_ONCE(fred_setup_done))
+		return;
+
+	if (!WARN_ON_ONCE(sysvec_table[sysvec - FIRST_SYSTEM_VECTOR]))
+		 sysvec_table[sysvec - FIRST_SYSTEM_VECTOR] = handler;
+}
+
 static noinstr void fred_extint(struct pt_regs *regs)
 {
 	unsigned int vector = regs->fred_ss.vector;
diff --git a/arch/x86/include/asm/desc.h b/arch/x86/include/asm/desc.h
index ab97b22ac04a..ec95fe44fa3a 100644
--- a/arch/x86/include/asm/desc.h
+++ b/arch/x86/include/asm/desc.h
@@ -402,8 +402,6 @@ static inline void set_desc_limit(struct desc_struct *desc, unsigned long limit)
 	desc->limit1 = (limit >> 16) & 0xf;
 }
 
-void alloc_intr_gate(unsigned int n, const void *addr);
-
 static inline void init_idt_data(struct idt_data *data, unsigned int n,
 				 const void *addr)
 {
diff --git a/arch/x86/include/asm/idtentry.h b/arch/x86/include/asm/idtentry.h
index 4f26ee9b8b74..650c98160152 100644
--- a/arch/x86/include/asm/idtentry.h
+++ b/arch/x86/include/asm/idtentry.h
@@ -459,6 +459,21 @@ __visible noinstr void func(struct pt_regs *regs,			\
 #define DEFINE_FREDENTRY_DEBUG		DEFINE_FREDENTRY_RAW
 #endif
 
+void idt_install_sysvec(unsigned int n, const void *function);
+
+#ifdef CONFIG_X86_FRED
+void fred_install_sysvec(unsigned int vector, const idtentry_t function);
+#else
+static inline void fred_install_sysvec(unsigned int vector, const idtentry_t function) { }
+#endif
+
+#define sysvec_install(vector, function) {				\
+	if (cpu_feature_enabled(X86_FEATURE_FRED))			\
+		fred_install_sysvec(vector, function);			\
+	else								\
+		idt_install_sysvec(vector, asm_##function);		\
+}
+
 #else /* !__ASSEMBLY__ */
 
 /*
diff --git a/arch/x86/kernel/cpu/acrn.c b/arch/x86/kernel/cpu/acrn.c
index bfeb18fad63f..2c5b51aad91a 100644
--- a/arch/x86/kernel/cpu/acrn.c
+++ b/arch/x86/kernel/cpu/acrn.c
@@ -26,8 +26,8 @@ static u32 __init acrn_detect(void)
 
 static void __init acrn_init_platform(void)
 {
-	/* Setup the IDT for ACRN hypervisor callback */
-	alloc_intr_gate(HYPERVISOR_CALLBACK_VECTOR, asm_sysvec_acrn_hv_callback);
+	/* Install system interrupt handler for ACRN hypervisor callback */
+	sysvec_install(HYPERVISOR_CALLBACK_VECTOR, sysvec_acrn_hv_callback);
 
 	x86_platform.calibrate_tsc = acrn_get_tsc_khz;
 	x86_platform.calibrate_cpu = acrn_get_tsc_khz;
diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kernel/cpu/mshyperv.c
index e6bba12c759c..3403880c3e09 100644
--- a/arch/x86/kernel/cpu/mshyperv.c
+++ b/arch/x86/kernel/cpu/mshyperv.c
@@ -536,19 +536,18 @@ static void __init ms_hyperv_init_platform(void)
 	 */
 	x86_platform.apic_post_init = hyperv_init;
 	hyperv_setup_mmu_ops();
-	/* Setup the IDT for hypervisor callback */
-	alloc_intr_gate(HYPERVISOR_CALLBACK_VECTOR, asm_sysvec_hyperv_callback);
 
-	/* Setup the IDT for reenlightenment notifications */
+	/* Install system interrupt handler for hypervisor callback */
+	sysvec_install(HYPERVISOR_CALLBACK_VECTOR, sysvec_hyperv_callback);
+
+	/* Install system interrupt handler for reenlightenment notifications */
 	if (ms_hyperv.features & HV_ACCESS_REENLIGHTENMENT) {
-		alloc_intr_gate(HYPERV_REENLIGHTENMENT_VECTOR,
-				asm_sysvec_hyperv_reenlightenment);
+		sysvec_install(HYPERV_REENLIGHTENMENT_VECTOR, sysvec_hyperv_reenlightenment);
 	}
 
-	/* Setup the IDT for stimer0 */
+	/* Install system interrupt handler for stimer0 */
 	if (ms_hyperv.misc_features & HV_STIMER_DIRECT_MODE_AVAILABLE) {
-		alloc_intr_gate(HYPERV_STIMER0_VECTOR,
-				asm_sysvec_hyperv_stimer0);
+		sysvec_install(HYPERV_STIMER0_VECTOR, sysvec_hyperv_stimer0);
 	}
 
 # ifdef CONFIG_SMP
diff --git a/arch/x86/kernel/idt.c b/arch/x86/kernel/idt.c
index 8857abc706e4..2b734927eec1 100644
--- a/arch/x86/kernel/idt.c
+++ b/arch/x86/kernel/idt.c
@@ -337,7 +337,7 @@ void idt_invalidate(void)
 	load_idt(&idt);
 }
 
-void __init alloc_intr_gate(unsigned int n, const void *addr)
+void __init idt_install_sysvec(unsigned int n, const void *function)
 {
 	if (WARN_ON(n < FIRST_SYSTEM_VECTOR))
 		return;
@@ -346,5 +346,5 @@ void __init alloc_intr_gate(unsigned int n, const void *addr)
 		return;
 
 	if (!WARN_ON(test_and_set_bit(n, system_vectors)))
-		set_intr_gate(n, addr);
+		set_intr_gate(n, function);
 }
diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c
index b8ab9ee5896c..eabf03813a5c 100644
--- a/arch/x86/kernel/kvm.c
+++ b/arch/x86/kernel/kvm.c
@@ -829,7 +829,7 @@ static void __init kvm_guest_init(void)
 
 	if (kvm_para_has_feature(KVM_FEATURE_ASYNC_PF_INT) && kvmapf) {
 		static_branch_enable(&kvm_async_pf_enabled);
-		alloc_intr_gate(HYPERVISOR_CALLBACK_VECTOR, asm_sysvec_kvm_asyncpf_interrupt);
+		sysvec_install(HYPERVISOR_CALLBACK_VECTOR, sysvec_kvm_asyncpf_interrupt);
 	}
 
 #ifdef CONFIG_SMP
diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 3bdd5b59661d..c54123ca7b1a 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -2243,7 +2243,7 @@ static __init void xen_alloc_callback_vector(void)
 		return;
 
 	pr_info("Xen HVM callback vector for event delivery is enabled\n");
-	alloc_intr_gate(HYPERVISOR_CALLBACK_VECTOR, asm_sysvec_xen_hvm_callback);
+	sysvec_install(HYPERVISOR_CALLBACK_VECTOR, sysvec_xen_hvm_callback);
 }
 #else
 void xen_setup_callback_vector(void) {}
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607137.945409 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgb-0000Dr-Q0; Sat, 23 Sep 2023 10:16:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607137.945409; Sat, 23 Sep 2023 10:16:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgb-0000CC-DX; Sat, 23 Sep 2023 10:16:29 +0000
Received: by outflank-mailman (input) for mailman id 607137;
 Sat, 23 Sep 2023 10:16:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcL-0000Pn-7f
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:05 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9f8e696d-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:56 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:46 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:46 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9f8e696d-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463916; x=1726999916;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=daicXFK30tmpTUp95RTD2ZQAe5K9xY8zuW1WSEbSaqA=;
  b=bTvLYvEL753J6F+eT7JbN/mdzjZC7Rq5LQCQFkvCCAqkes4P/hwHR1+B
   UleqtudmL/IKwrD84g+JSVa8A7tKh1UUyKR9D1NsCeQPb6z5VfuCzNAir
   vu4aKHpjix2pcX4cIrCmk2aQRYy/QoeIP/vziv4mxEwVgvGrvjBJkIzEd
   UHcalqfL0TISgwSVAFQS0SU0I8ELlV1AdEqbOuF7KSe9Bkc4tZvdySSHI
   jbWhD3K/dXlzVBirVP+nnQMzVYIr2KJ6NasNuM4tySXYLY3y9uPO8AFja
   453EWHmSouN3jYga5/cLvw7na2DafSB6h30p1IOPp3Bd+UJRuOp/9Inn3
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492327"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492327"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388176"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388176"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 21/37] x86/fred: No ESPFIX needed when FRED is enabled
Date: Sat, 23 Sep 2023 02:41:56 -0700
Message-Id: <20230923094212.26520-22-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Because FRED always restores the full value of %rsp, ESPFIX is
no longer needed when it's enabled.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/kernel/espfix_64.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/x86/kernel/espfix_64.c b/arch/x86/kernel/espfix_64.c
index 16f9814c9be0..6726e0473d0b 100644
--- a/arch/x86/kernel/espfix_64.c
+++ b/arch/x86/kernel/espfix_64.c
@@ -106,6 +106,10 @@ void __init init_espfix_bsp(void)
 	pgd_t *pgd;
 	p4d_t *p4d;
 
+	/* FRED systems always restore the full value of %rsp */
+	if (cpu_feature_enabled(X86_FEATURE_FRED))
+		return;
+
 	/* Install the espfix pud into the kernel page directory */
 	pgd = &init_top_pgt[pgd_index(ESPFIX_BASE_ADDR)];
 	p4d = p4d_alloc(&init_mm, pgd, ESPFIX_BASE_ADDR);
@@ -129,6 +133,10 @@ void init_espfix_ap(int cpu)
 	void *stack_page;
 	pteval_t ptemask;
 
+	/* FRED systems always restore the full value of %rsp */
+	if (cpu_feature_enabled(X86_FEATURE_FRED))
+		return;
+
 	/* We only have to do this once... */
 	if (likely(per_cpu(espfix_stack, cpu)))
 		return;		/* Already initialized */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607139.945425 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgh-0001Eq-17; Sat, 23 Sep 2023 10:16:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607139.945425; Sat, 23 Sep 2023 10:16:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgg-0001EW-Sc; Sat, 23 Sep 2023 10:16:34 +0000
Received: by outflank-mailman (input) for mailman id 607139;
 Sat, 23 Sep 2023 10:16:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcQ-0000Pn-8Y
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:10 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a230c7b3-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:12:00 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:49 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:48 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a230c7b3-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463920; x=1726999920;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=FcZc1QeKj2isPTwOBVaGNTy+si5WeOaciLFU4yv7EQo=;
  b=kBDL6iMjh667yNRDON91MF5Le7HkPIHIcFqrdVYme2A7L8rTndq1PFcN
   2TxUBt/X0TxrZhmw2m2DgKv8lrtQARhfOWHn0MY2rpYebOL5Hhi2Y4+rw
   CSNLF4BLZkDwpA6w62/BvdE4UbyFNkSxJYcBg+/M5Pky0hw/9/fvZDj2d
   nD9lIbHCYR7vAinR3DHrcM8WtmjNo8JjfoTa8YtWjhuK8xFV1B/WN/Jup
   f1UKgdDB4EnXzXXW8XPRLINTh0n+KefTJuTi14eNMPvCArEO7BnCD/uuk
   XhstGRQmj8dP4HhI1JoOQUWScCXQ+4eO0di7NNAM/MtqZnR4Fq4HI3Ni+
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492388"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492388"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388193"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388193"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 26/37] x86/fred: Add a NMI entry stub for FRED
Date: Sat, 23 Sep 2023 02:42:01 -0700
Message-Id: <20230923094212.26520-27-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

On a FRED system, NMIs nest both with themselves and faults, transient
information is saved into the stack frame, and NMI unblocking only
happens when the stack frame indicates that so should happen.

Thus, the NMI entry stub for FRED is really quite small...

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/kernel/nmi.c | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/arch/x86/kernel/nmi.c b/arch/x86/kernel/nmi.c
index a0c551846b35..58843fdf5cd0 100644
--- a/arch/x86/kernel/nmi.c
+++ b/arch/x86/kernel/nmi.c
@@ -34,6 +34,7 @@
 #include <asm/cache.h>
 #include <asm/nospec-branch.h>
 #include <asm/sev.h>
+#include <asm/fred.h>
 
 #define CREATE_TRACE_POINTS
 #include <trace/events/nmi.h>
@@ -643,6 +644,33 @@ void nmi_backtrace_stall_check(const struct cpumask *btp)
 
 #endif
 
+#ifdef CONFIG_X86_FRED
+/*
+ * With FRED, CR2/DR6 is pushed to #PF/#DB stack frame during FRED
+ * event delivery, i.e., there is no problem of transient states.
+ * And NMI unblocking only happens when the stack frame indicates
+ * that so should happen.
+ *
+ * Thus, the NMI entry stub for FRED is really straightforward and
+ * as simple as most exception handlers. As such, #DB is allowed
+ * during NMI handling.
+ */
+DEFINE_FREDENTRY_NMI(exc_nmi)
+{
+	irqentry_state_t irq_state;
+
+	if (IS_ENABLED(CONFIG_SMP) && arch_cpu_is_offline(smp_processor_id()))
+		return;
+
+	irq_state = irqentry_nmi_enter(regs);
+
+	inc_irq_stat(__nmi_count);
+	default_do_nmi(regs);
+
+	irqentry_nmi_exit(regs, irq_state);
+}
+#endif
+
 void stop_nmi(void)
 {
 	ignore_nmis++;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607140.945431 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgh-0001Ga-JV; Sat, 23 Sep 2023 10:16:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607140.945431; Sat, 23 Sep 2023 10:16:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgh-0001Fz-6d; Sat, 23 Sep 2023 10:16:35 +0000
Received: by outflank-mailman (input) for mailman id 607140;
 Sat, 23 Sep 2023 10:16:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcV-0000Pn-94
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:15 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a37c6530-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:12:02 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:51 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:50 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a37c6530-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463922; x=1726999922;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=1q9TX+E9M+XAvCy1QsZHulLmmodNJZdOtsrh5PyAo94=;
  b=cmiM5Dsc0y+ygeSBdhIvrc7aA/5OJu5j6tIaNxQ+6gjyj9sc8Ytg8gry
   5gF9eJg5w3bm1HMh4/+28zNu8kyWQ5qn1XEpcDYOGiZjUW87hWFqXSbxp
   S8SCdm8ElROPhi/HBTj3cTHjbmsTDHHrE2JZsu9wBWLCbVrGRaoYn3EEZ
   kBtQY6E8JX2AFkWApdbrJF1wmvY1qJNAG+FvJwQN7Bdd40IjUQkcvY7yy
   ZQQmQRirTCNr6BgYdTmeZbcN11R4es6Izethq6N80iFUrgdrhITMruVUi
   /Ejqx8ww259LDCHRan0S0FB2jXLeGBRxKkyHje/fY4qtW3XthmKREciSu
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492436"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492436"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388206"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388206"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 30/37] x86/fred: Let ret_from_fork_asm() jmp to asm_fred_exit_user when FRED is enabled
Date: Sat, 23 Sep 2023 02:42:05 -0700
Message-Id: <20230923094212.26520-31-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Let ret_from_fork_asm() jmp to asm_fred_exit_user when FRED is enabled,
otherwise the existing IDT code is chosen.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/entry/entry_64.S      | 6 ++++++
 arch/x86/entry/entry_64_fred.S | 1 +
 2 files changed, 7 insertions(+)

diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
index 179e08d34eb6..f7db3a12ccb1 100644
--- a/arch/x86/entry/entry_64.S
+++ b/arch/x86/entry/entry_64.S
@@ -309,7 +309,13 @@ SYM_CODE_START(ret_from_fork_asm)
 	 * and unwind should work normally.
 	 */
 	UNWIND_HINT_REGS
+
+#ifdef CONFIG_X86_FRED
+	ALTERNATIVE "jmp swapgs_restore_regs_and_return_to_usermode", \
+		    "jmp asm_fred_exit_user", X86_FEATURE_FRED
+#else
 	jmp	swapgs_restore_regs_and_return_to_usermode
+#endif
 SYM_CODE_END(ret_from_fork_asm)
 .popsection
 
diff --git a/arch/x86/entry/entry_64_fred.S b/arch/x86/entry/entry_64_fred.S
index 37a1dd5e8ace..5781c3411b44 100644
--- a/arch/x86/entry/entry_64_fred.S
+++ b/arch/x86/entry/entry_64_fred.S
@@ -32,6 +32,7 @@
 SYM_CODE_START_NOALIGN(asm_fred_entrypoint_user)
 	FRED_ENTER
 	call	fred_entry_from_user
+SYM_INNER_LABEL(asm_fred_exit_user, SYM_L_GLOBAL)
 	FRED_EXIT
 	ERETU
 SYM_CODE_END(asm_fred_entrypoint_user)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607141.945436 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgh-0001Ox-Tj; Sat, 23 Sep 2023 10:16:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607141.945436; Sat, 23 Sep 2023 10:16:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgh-0001NB-Jy; Sat, 23 Sep 2023 10:16:35 +0000
Received: by outflank-mailman (input) for mailman id 607141;
 Sat, 23 Sep 2023 10:16:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcP-0000Pn-8T
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:09 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a1931479-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:59 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:48 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:48 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a1931479-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463919; x=1726999919;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=WI4PNmnQNqWbUIJ+xrhdRHV/OU0QAbzmppTdHG3/yfg=;
  b=NOWAVrzzNpyAquCMjCO/gHfVLEcokgaMzfmEMWm5EZXdnC9ilJtSM1iL
   JtbIWUmXyFPCp6O5WorKMyhfBxzJZdt0mELJxJWCUlWorLsyAcC2D3zn9
   n2tMM9H7Z4dbQJzbwx0p/JnClWVsdnVKc+DxJ9YDntbEFUaFZuOIG3nXq
   Nk6MlB4xkEK63cu33FRcdv1+i/5IwLw8iGwn/OoyO+11isy/tvf4o++/2
   Zx9+VzAPAAdMnTnwAvP60e48VlSwEGUNBAHddtN00wjrIhmy6ihxA5H3m
   vfSEs3iZYwTsIdST3/mvVIqvYkepvX362J0vzle/CAK2/20puHd4u/Dqu
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492375"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492375"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388190"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388190"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 25/37] x86/fred: Add a debug fault entry stub for FRED
Date: Sat, 23 Sep 2023 02:42:00 -0700
Message-Id: <20230923094212.26520-26-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

When occurred on different ring level, i.e., from user or kernel context,
#DB needs to be handled on different stack: User #DB on current task
stack, while kernel #DB on a dedicated stack. This is exactly how FRED
event delivery invokes an exception handler: ring 3 event on level 0
stack, i.e., current task stack; ring 0 event on the #DB dedicated stack
specified in the IA32_FRED_STKLVLS MSR. So unlike IDT, the FRED debug
exception entry stub doesn't do stack switch.

On a FRED system, the debug trap status information (DR6) is passed on
the stack, to avoid the problem of transient state. Furthermore, FRED
transitions avoid a lot of ugly corner cases the handling of which can,
and should be, skipped.

The FRED debug trap status information saved on the stack differs from
DR6 in both stickiness and polarity; it is exactly in the format which
debug_read_clear_dr6() returns for the IDT entry points.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v9:
* Disable #DB to avoid endless recursion and stack overflow when a
  watchpoint/breakpoint is set in the code path which is executed by
  #DB handler (Thomas Gleixner).

Changes since v1:
* call irqentry_nmi_{enter,exit}() in both IDT and FRED debug fault kernel
  handler (Peter Zijlstra).
---
 arch/x86/kernel/traps.c | 43 ++++++++++++++++++++++++++++++++++++-----
 1 file changed, 38 insertions(+), 5 deletions(-)

diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c
index c876f1d36a81..848c85208a57 100644
--- a/arch/x86/kernel/traps.c
+++ b/arch/x86/kernel/traps.c
@@ -50,6 +50,7 @@
 #include <asm/ftrace.h>
 #include <asm/traps.h>
 #include <asm/desc.h>
+#include <asm/fred.h>
 #include <asm/fpu/api.h>
 #include <asm/cpu.h>
 #include <asm/cpu_entry_area.h>
@@ -934,8 +935,7 @@ static bool notify_debug(struct pt_regs *regs, unsigned long *dr6)
 	return false;
 }
 
-static __always_inline void exc_debug_kernel(struct pt_regs *regs,
-					     unsigned long dr6)
+static noinstr void exc_debug_kernel(struct pt_regs *regs, unsigned long dr6)
 {
 	/*
 	 * Disable breakpoints during exception handling; recursive exceptions
@@ -947,6 +947,11 @@ static __always_inline void exc_debug_kernel(struct pt_regs *regs,
 	 *
 	 * Entry text is excluded for HW_BP_X and cpu_entry_area, which
 	 * includes the entry stack is excluded for everything.
+	 *
+	 * For FRED, nested #DB should just work fine. But when a watchpoint or
+	 * breakpoint is set in the code path which is executed by #DB handler,
+	 * it results in an endless recursion and stack overflow. Thus we stay
+	 * with the IDT approach, i.e., save DR7 and disable #DB.
 	 */
 	unsigned long dr7 = local_db_save();
 	irqentry_state_t irq_state = irqentry_nmi_enter(regs);
@@ -976,7 +981,8 @@ static __always_inline void exc_debug_kernel(struct pt_regs *regs,
 	 * Catch SYSENTER with TF set and clear DR_STEP. If this hit a
 	 * watchpoint at the same time then that will still be handled.
 	 */
-	if ((dr6 & DR_STEP) && is_sysenter_singlestep(regs))
+	if (!cpu_feature_enabled(X86_FEATURE_FRED) &&
+	    (dr6 & DR_STEP) && is_sysenter_singlestep(regs))
 		dr6 &= ~DR_STEP;
 
 	/*
@@ -1008,8 +1014,7 @@ static __always_inline void exc_debug_kernel(struct pt_regs *regs,
 	local_db_restore(dr7);
 }
 
-static __always_inline void exc_debug_user(struct pt_regs *regs,
-					   unsigned long dr6)
+static noinstr void exc_debug_user(struct pt_regs *regs, unsigned long dr6)
 {
 	bool icebp;
 
@@ -1093,6 +1098,34 @@ DEFINE_IDTENTRY_DEBUG_USER(exc_debug)
 {
 	exc_debug_user(regs, debug_read_clear_dr6());
 }
+
+#ifdef CONFIG_X86_FRED
+/*
+ * When occurred on different ring level, i.e., from user or kernel
+ * context, #DB needs to be handled on different stack: User #DB on
+ * current task stack, while kernel #DB on a dedicated stack.
+ *
+ * This is exactly how FRED event delivery invokes an exception
+ * handler: ring 3 event on level 0 stack, i.e., current task stack;
+ * ring 0 event on the #DB dedicated stack specified in the
+ * IA32_FRED_STKLVLS MSR. So unlike IDT, the FRED debug exception
+ * entry stub doesn't do stack switch.
+ */
+DEFINE_FREDENTRY_DEBUG(exc_debug)
+{
+	/*
+	 * FRED #DB stores DR6 on the stack in the format which
+	 * debug_read_clear_dr6() returns for the IDT entry points.
+	 */
+	unsigned long dr6 = fred_event_data(regs);
+
+	if (user_mode(regs))
+		exc_debug_user(regs, dr6);
+	else
+		exc_debug_kernel(regs, dr6);
+}
+#endif /* CONFIG_X86_FRED */
+
 #else
 /* 32 bit does not have separate entry points. */
 DEFINE_IDTENTRY_RAW(exc_debug)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607145.945444 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgj-0001dz-2l; Sat, 23 Sep 2023 10:16:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607145.945444; Sat, 23 Sep 2023 10:16:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgi-0001cD-Hx; Sat, 23 Sep 2023 10:16:36 +0000
Received: by outflank-mailman (input) for mailman id 607145;
 Sat, 23 Sep 2023 10:16:34 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcN-0000Pn-88
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:07 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a0f1299a-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:58 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:47 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:47 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a0f1299a-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463918; x=1726999918;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=vZ6vels66+tC8YRpSCj8dEsAAUPLXovJkO1WpIp9s0Y=;
  b=AFqvCfZkFb/pODH9AwBSemowNfELdQF2UjfQHH9TDPUYKuePXrEYnpK2
   O0H5EiVFYYBgucNjSO3E0DqUEuVXmgIgL1/RtC1W9M1CNLl665v0tiTny
   IxFAHrBNLXxn8q+cSh6iFsy4wXCUuyMZ/7MHqasdbD3H5ORYNVNoldFpX
   cMNhXP2SFdZgSL05Cs9QOnw2WqJdThS7o1Ms7wq3RjSfeywcPyIQH+xyQ
   RpZv+F6dKLbjLguHLymuKeFhD29UqBO1aovpBOkiB90cTQViAAbu73Foj
   fxyyzCMkZ8Vzb5hEIPeaY0HbFHY8SMC3VF+xxqVS814ifXCg9qoDKoTep
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492351"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492351"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388183"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388183"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 23/37] x86/fred: Make exc_page_fault() work for FRED
Date: Sat, 23 Sep 2023 02:41:58 -0700
Message-Id: <20230923094212.26520-24-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

On a FRED system, the faulting address (CR2) is passed on the stack,
to avoid the problem of transient state. Thus we get the page fault
address from the stack instead of CR2.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/mm/fault.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
index ab778eac1952..7675bc067153 100644
--- a/arch/x86/mm/fault.c
+++ b/arch/x86/mm/fault.c
@@ -34,6 +34,7 @@
 #include <asm/kvm_para.h>		/* kvm_handle_async_pf		*/
 #include <asm/vdso.h>			/* fixup_vdso_exception()	*/
 #include <asm/irq_stack.h>
+#include <asm/fred.h>
 
 #define CREATE_TRACE_POINTS
 #include <asm/trace/exceptions.h>
@@ -1516,8 +1517,10 @@ handle_page_fault(struct pt_regs *regs, unsigned long error_code,
 
 DEFINE_IDTENTRY_RAW_ERRORCODE(exc_page_fault)
 {
-	unsigned long address = read_cr2();
 	irqentry_state_t state;
+	unsigned long address;
+
+	address = cpu_feature_enabled(X86_FEATURE_FRED) ? fred_event_data(regs) : read_cr2();
 
 	prefetchw(&current->mm->mmap_lock);
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607152.945465 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgq-00032o-6g; Sat, 23 Sep 2023 10:16:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607152.945465; Sat, 23 Sep 2023 10:16:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgq-00032S-3L; Sat, 23 Sep 2023 10:16:44 +0000
Received: by outflank-mailman (input) for mailman id 607152;
 Sat, 23 Sep 2023 10:16:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcW-0000Pn-97
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:16 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a3881bd6-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:12:02 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:51 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:51 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a3881bd6-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463922; x=1726999922;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=I/WDYuAd3nxCrdi9nQ03uROwALnkbrNhAERS8D1SLLE=;
  b=PVJm54EmiBJlZUUqNHUxvO57SSxsAbsKpVCOxKEHcVECVDz70ZjELfqv
   4owH2J7YvI971liPs0wt7w3gF1YmsJribjHjzHn2FU5O8vngPFaIpfk2o
   e7gedS013xqopnqOGLnaEP+x6o7nJZsz8FdvokK8b2uiM3KqnGxe3WVHD
   8D7nlOszS/ArCGMBbujc21Nzr40PI+pKQAU1nIEjsugcVxcVP5iJjOEox
   GJIpe5YfW+A9xUqP1yiCEQeFztQJmrtUWScZQ9a20R3/a7ycIYrrbV4B5
   bnLG17193/vxz60vUoPHiNK8uhx6xOcUv9uQu0SavghCzOQnvlrOeh2KN
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492449"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492449"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388209"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388209"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 31/37] x86/fred: Fixup fault on ERETU by jumping to fred_entrypoint_user
Date: Sat, 23 Sep 2023 02:42:06 -0700
Message-Id: <20230923094212.26520-32-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

If the stack frame contains an invalid user context (e.g. due to invalid SS,
a non-canonical RIP, etc.) the ERETU instruction will trap (#SS or #GP).

>From a Linux point of view, this really should be considered a user space
failure, so use the standard fault fixup mechanism to intercept the fault,
fix up the exception frame, and redirect execution to fred_entrypoint_user.
The end result is that it appears just as if the hardware had taken the
exception immediately after completing the transition to user space.

Suggested-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v8:
* Reflect the FRED spec 5.0 change that ERETS and ERETU add 8 to %rsp
  before popping the return context from the stack.

Changes since v6:
* Add a comment to explain why it is safe to write to the previous FRED stack
  frame. (Lai Jiangshan).

Changes since v5:
* Move the NMI bit from an invalid stack frame, which caused ERETU to fault,
  to the fault handler's stack frame, thus to unblock NMI ASAP if NMI is blocked
  (Lai Jiangshan).
---
 arch/x86/entry/entry_64_fred.S             |  5 +-
 arch/x86/include/asm/extable_fixup_types.h |  4 +-
 arch/x86/mm/extable.c                      | 79 ++++++++++++++++++++++
 3 files changed, 86 insertions(+), 2 deletions(-)

diff --git a/arch/x86/entry/entry_64_fred.S b/arch/x86/entry/entry_64_fred.S
index 5781c3411b44..d1c2fc4af8ae 100644
--- a/arch/x86/entry/entry_64_fred.S
+++ b/arch/x86/entry/entry_64_fred.S
@@ -3,6 +3,7 @@
  * The actual FRED entry points.
  */
 
+#include <asm/asm.h>
 #include <asm/fred.h>
 
 #include "calling.h"
@@ -34,7 +35,9 @@ SYM_CODE_START_NOALIGN(asm_fred_entrypoint_user)
 	call	fred_entry_from_user
 SYM_INNER_LABEL(asm_fred_exit_user, SYM_L_GLOBAL)
 	FRED_EXIT
-	ERETU
+1:	ERETU
+
+	_ASM_EXTABLE_TYPE(1b, asm_fred_entrypoint_user, EX_TYPE_ERETU)
 SYM_CODE_END(asm_fred_entrypoint_user)
 
 .fill asm_fred_entrypoint_kernel - ., 1, 0xcc
diff --git a/arch/x86/include/asm/extable_fixup_types.h b/arch/x86/include/asm/extable_fixup_types.h
index 991e31cfde94..1585c798a02f 100644
--- a/arch/x86/include/asm/extable_fixup_types.h
+++ b/arch/x86/include/asm/extable_fixup_types.h
@@ -64,6 +64,8 @@
 #define	EX_TYPE_UCOPY_LEN4		(EX_TYPE_UCOPY_LEN | EX_DATA_IMM(4))
 #define	EX_TYPE_UCOPY_LEN8		(EX_TYPE_UCOPY_LEN | EX_DATA_IMM(8))
 
-#define EX_TYPE_ZEROPAD			20 /* longword load with zeropad on fault */
+#define	EX_TYPE_ZEROPAD			20 /* longword load with zeropad on fault */
+
+#define	EX_TYPE_ERETU			21
 
 #endif
diff --git a/arch/x86/mm/extable.c b/arch/x86/mm/extable.c
index 271dcb2deabc..bc7af7e8587b 100644
--- a/arch/x86/mm/extable.c
+++ b/arch/x86/mm/extable.c
@@ -6,6 +6,7 @@
 #include <xen/xen.h>
 
 #include <asm/fpu/api.h>
+#include <asm/fred.h>
 #include <asm/sev.h>
 #include <asm/traps.h>
 #include <asm/kdebug.h>
@@ -223,6 +224,80 @@ static bool ex_handler_ucopy_len(const struct exception_table_entry *fixup,
 	return ex_handler_uaccess(fixup, regs, trapnr, fault_address);
 }
 
+#ifdef CONFIG_X86_FRED
+static bool ex_handler_eretu(const struct exception_table_entry *fixup,
+			     struct pt_regs *regs, unsigned long error_code)
+{
+	struct pt_regs *uregs = (struct pt_regs *)
+		(regs->sp - offsetof(struct pt_regs, orig_ax));
+	unsigned short ss = uregs->ss;
+	unsigned short cs = uregs->cs;
+
+	/*
+	 * Move the NMI bit from the invalid stack frame, which caused ERETU
+	 * to fault, to the fault handler's stack frame, thus to unblock NMI
+	 * with the fault handler's ERETS instruction ASAP if NMI is blocked.
+	 */
+	regs->fred_ss.nmi = uregs->fred_ss.nmi;
+
+	/*
+	 * Sync event information to uregs, i.e., the ERETU return frame, but
+	 * is it safe to write to the ERETU return frame which is just above
+	 * current event stack frame?
+	 *
+	 * The RSP used by FRED to push a stack frame is not the value in %rsp,
+	 * it is calculated from %rsp with the following 2 steps:
+	 * 1) RSP = %rsp - (IA32_FRED_CONFIG & 0x1c0)	// Reserve N*64 bytes
+	 * 2) RSP = RSP & ~0x3f		// Align to a 64-byte cache line
+	 * when an event delivery doesn't trigger a stack level change.
+	 *
+	 * Here is an example with N*64 (N=1) bytes reserved:
+	 *
+	 *  64-byte cache line ==>  ______________
+	 *                         |___Reserved___|
+	 *                         |__Event_data__|
+	 *                         |_____SS_______|
+	 *                         |_____RSP______|
+	 *                         |_____FLAGS____|
+	 *                         |_____CS_______|
+	 *                         |_____IP_______|
+	 *  64-byte cache line ==> |__Error_code__| <== ERETU return frame
+	 *                         |______________|
+	 *                         |______________|
+	 *                         |______________|
+	 *                         |______________|
+	 *                         |______________|
+	 *                         |______________|
+	 *                         |______________|
+	 *  64-byte cache line ==> |______________| <== RSP after step 1) and 2)
+	 *                         |___Reserved___|
+	 *                         |__Event_data__|
+	 *                         |_____SS_______|
+	 *                         |_____RSP______|
+	 *                         |_____FLAGS____|
+	 *                         |_____CS_______|
+	 *                         |_____IP_______|
+	 *  64-byte cache line ==> |__Error_code__| <== ERETS return frame
+	 *
+	 * Thus a new FRED stack frame will always be pushed below a previous
+	 * FRED stack frame ((N*64) bytes may be reserved between), and it is
+	 * safe to write to a previous FRED stack frame as they never overlap.
+	 */
+	fred_info(uregs)->edata = fred_event_data(regs);
+	uregs->ssx = regs->ssx;
+	uregs->fred_ss.ss = ss;
+	/* The NMI bit was moved away above */
+	uregs->fred_ss.nmi = 0;
+	uregs->csx = regs->csx;
+	uregs->sl = 0;
+	uregs->wfe = 0;
+	uregs->cs = cs;
+	uregs->orig_ax = error_code;
+
+	return ex_handler_default(fixup, regs);
+}
+#endif
+
 int ex_get_fixup_type(unsigned long ip)
 {
 	const struct exception_table_entry *e = search_exception_tables(ip);
@@ -300,6 +375,10 @@ int fixup_exception(struct pt_regs *regs, int trapnr, unsigned long error_code,
 		return ex_handler_ucopy_len(e, regs, trapnr, fault_addr, reg, imm);
 	case EX_TYPE_ZEROPAD:
 		return ex_handler_zeropad(e, regs, fault_addr);
+#ifdef CONFIG_X86_FRED
+	case EX_TYPE_ERETU:
+		return ex_handler_eretu(e, regs, error_code);
+#endif
 	}
 	BUG();
 }
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607156.945476 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgs-0003as-Ju; Sat, 23 Sep 2023 10:16:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607156.945476; Sat, 23 Sep 2023 10:16:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgs-0003aW-F8; Sat, 23 Sep 2023 10:16:46 +0000
Received: by outflank-mailman (input) for mailman id 607156;
 Sat, 23 Sep 2023 10:16:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcI-0000Pn-6q
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:02 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9f9ba5ba-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:55 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:45 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:44 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9f9ba5ba-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463915; x=1726999915;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=f4gesqgoemAM7gLIVW0tfHuShJv23oH28+TguMOULZ8=;
  b=Gms+3kSAqztITFbFmScUqVkK4drwiykn3nDHKZeq8K6+Qs0bc1cp1oNu
   f9eUbSdK8B4p6HY8zKOS36W0AZVJhjYAfEJiTbNXvORJqO6J1XfXVbfsx
   4/RBdQTcwNAKkoLrRlO41u2FAE6xXFpOERamSQT0RSwBUp7O0+d0Zlmtc
   QqevykXCnNfdVj2JlKhS23vg6C454HpDitIPmRL6yI3fiAmVWMMPj4OkJ
   Ys+G5ph6WrZp970RXvGJL8q6irKgLnrqCNOgye4PSjQ4xkQVhlpisQGmC
   pr5SwSJG+TqMGRDxLYsBCZ48rZcFaNx0LEfBQR6CDVuGI68cNWixdwKly
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492291"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492291"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388160"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388160"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 18/37] x86/fred: Reserve space for the FRED stack frame
Date: Sat, 23 Sep 2023 02:41:53 -0700
Message-Id: <20230923094212.26520-19-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

When using FRED, reserve space at the top of the stack frame, just
like i386 does.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/thread_info.h | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/arch/x86/include/asm/thread_info.h b/arch/x86/include/asm/thread_info.h
index d63b02940747..12da7dfd5ef1 100644
--- a/arch/x86/include/asm/thread_info.h
+++ b/arch/x86/include/asm/thread_info.h
@@ -31,7 +31,9 @@
  * In vm86 mode, the hardware frame is much longer still, so add 16
  * bytes to make room for the real-mode segments.
  *
- * x86_64 has a fixed-length stack frame.
+ * x86-64 has a fixed-length stack frame, but it depends on whether
+ * or not FRED is enabled. Future versions of FRED might make this
+ * dynamic, but for now it is always 2 words longer.
  */
 #ifdef CONFIG_X86_32
 # ifdef CONFIG_VM86
@@ -39,8 +41,12 @@
 # else
 #  define TOP_OF_KERNEL_STACK_PADDING 8
 # endif
-#else
-# define TOP_OF_KERNEL_STACK_PADDING 0
+#else /* x86-64 */
+# ifdef CONFIG_X86_FRED
+#  define TOP_OF_KERNEL_STACK_PADDING (2 * 8)
+# else
+#  define TOP_OF_KERNEL_STACK_PADDING 0
+# endif
 #endif
 
 /*
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607160.945482 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgt-0003fw-54; Sat, 23 Sep 2023 10:16:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607160.945482; Sat, 23 Sep 2023 10:16:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgs-0003fI-T8; Sat, 23 Sep 2023 10:16:46 +0000
Received: by outflank-mailman (input) for mailman id 607160;
 Sat, 23 Sep 2023 10:16:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcB-0000Pn-5h
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:55 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9be87970-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:49 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:41 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:41 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9be87970-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463909; x=1726999909;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=i5VPM7WJy8QX3AfDJPn+y86GzsjxiQoeNBcvUeRwUoQ=;
  b=Z+7qhi8iqpSUjZs5umX9Tpxeq9L2chyRNkYlR4ex8UObyJQaAYVpBfG/
   ljE8++NU5aGmM/XDODyQZ2SZbzzO4GyQdPR4+U3J9FyYvrkIGOSGiR0j2
   iiavVtgOWiqcuttPEvSIfXuWPlevVlsSL2Vs1PcXr9DVNU+Guc2t/S70t
   p8QBJZ+dtC3vbdrJq42UmGB02Mk0ONsCA/HAR1qyKXCA6mBUiqkRiV/vl
   lZmil4uyR6uKRA47xJssHp9tYw8yL9Jq9FtP19UO01EF7wsh8ClkGpDpz
   SDyggYK+b4FHZ8yLdRLQsv0A0d20zs8qbsDJsvdS/dE3gFodXUzqKqLYF
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492204"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492204"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388138"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388138"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 11/37] x86/opcode: Add ERET[US] instructions to the x86 opcode map
Date: Sat, 23 Sep 2023 02:41:46 -0700
Message-Id: <20230923094212.26520-12-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

ERETU returns from an event handler while making a transition to ring 3,
and ERETS returns from an event handler while staying in ring 0.

Add instruction opcodes used by ERET[US] to the x86 opcode map; opcode
numbers are per FRED spec v5.0.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
Reviewed-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
---
 arch/x86/lib/x86-opcode-map.txt       | 2 +-
 tools/arch/x86/lib/x86-opcode-map.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/x86/lib/x86-opcode-map.txt b/arch/x86/lib/x86-opcode-map.txt
index 1efe1d9bf5ce..12af572201a2 100644
--- a/arch/x86/lib/x86-opcode-map.txt
+++ b/arch/x86/lib/x86-opcode-map.txt
@@ -1052,7 +1052,7 @@ EndTable
 
 GrpTable: Grp7
 0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B) | WRMSRNS (110),(11B)
-1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B)
+1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B) | ERETU (F3),(010),(11B) | ERETS (F2),(010),(11B)
 2: LGDT Ms | XGETBV (000),(11B) | XSETBV (001),(11B) | VMFUNC (100),(11B) | XEND (101)(11B) | XTEST (110)(11B) | ENCLU (111),(11B)
 3: LIDT Ms
 4: SMSW Mw/Rv
diff --git a/tools/arch/x86/lib/x86-opcode-map.txt b/tools/arch/x86/lib/x86-opcode-map.txt
index 1efe1d9bf5ce..12af572201a2 100644
--- a/tools/arch/x86/lib/x86-opcode-map.txt
+++ b/tools/arch/x86/lib/x86-opcode-map.txt
@@ -1052,7 +1052,7 @@ EndTable
 
 GrpTable: Grp7
 0: SGDT Ms | VMCALL (001),(11B) | VMLAUNCH (010),(11B) | VMRESUME (011),(11B) | VMXOFF (100),(11B) | PCONFIG (101),(11B) | ENCLV (000),(11B) | WRMSRNS (110),(11B)
-1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B)
+1: SIDT Ms | MONITOR (000),(11B) | MWAIT (001),(11B) | CLAC (010),(11B) | STAC (011),(11B) | ENCLS (111),(11B) | ERETU (F3),(010),(11B) | ERETS (F2),(010),(11B)
 2: LGDT Ms | XGETBV (000),(11B) | XSETBV (001),(11B) | VMFUNC (100),(11B) | XEND (101)(11B) | XTEST (110)(11B) | ENCLU (111),(11B)
 3: LIDT Ms
 4: SMSW Mw/Rv
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607165.945496 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgy-0004kp-07; Sat, 23 Sep 2023 10:16:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607165.945496; Sat, 23 Sep 2023 10:16:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzgx-0004jD-Qk; Sat, 23 Sep 2023 10:16:51 +0000
Received: by outflank-mailman (input) for mailman id 607165;
 Sat, 23 Sep 2023 10:16:50 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzca-0000Pn-9S
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:20 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a47542a8-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:12:03 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:52 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:52 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a47542a8-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463923; x=1726999923;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=VloAwH9oCchhYDbjf1WOu4unTMxJzsUhKvR9qovigv0=;
  b=hIzNn8P7wlgk6aJx9Qc06O5dytqVmBAVDBvSRp9tG35GSt33vEcWmZ5G
   fwYSVx5L2ffizcX5kK3IAkjBPXb780a0RzlvUEdNuwdByb7arnqz9ggF/
   6A0dDM64o+LmJPlgSHNE3VVVBfv4knGjj3bDPUrUvJVrihFEzWPQkRula
   qZIGVg40RN4akgKqJBXbcgaVNEQifenzLEcOPUNLuF7ORQKj/+4dHj38z
   0gWsRV2pES12newpov61z2zRjlKqixjLffX0Zzpyl4T03LWuJx42MlLcu
   j07yZ1BKtHWmVoZxw47QLIjwQEAh+hrEDgsMUiMmljhbJGEuDNdHQFfMt
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492474"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492474"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388218"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388218"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 33/37] x86/entry: Add fred_entry_from_kvm() for VMX to handle IRQ/NMI
Date: Sat, 23 Sep 2023 02:42:08 -0700
Message-Id: <20230923094212.26520-34-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

In IRQ/NMI induced VM exits, KVM VMX needs to execute the respective
handlers, which requires the software to create a FRED stack frame,
and use it to invoke the handlers. Add fred_irq_entry_from_kvm() for
this job.

Export fred_entry_from_kvm() because VMX can be compiled as a module.

Suggested-by: Sean Christopherson <seanjc@google.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v10:
* Better explain the reason why no need to check current stack level
  (Paolo Bonzini).

Changes since v9:
* Shove the whole thing into arch/x86/entry/entry_64_fred.S for invoking
  external_interrupt() and fred_exc_nmi() (Sean Christopherson).
* Correct and improve a few comments (Sean Christopherson).
* Merge the two IRQ/NMI asm entries into one as it's fine to invoke
  noinstr code from regular code (Thomas Gleixner).
* Setup the long mode and NMI flags in the augmented SS field of FRED
  stack frame in C instead of asm (Thomas Gleixner).
* Add UNWIND_HINT_{SAVE,RESTORE} to get rid of the warning: "objtool:
  asm_fred_entry_from_kvm+0x0: unreachable instruction" (Peter Zijlstra).

Changes since v8:
* Add a new macro VMX_DO_FRED_EVENT_IRQOFF for FRED instead of
  refactoring VMX_DO_EVENT_IRQOFF (Sean Christopherson).
* Do NOT use a trampoline, just LEA+PUSH the return RIP, PUSH the error
  code, and jump to the FRED kernel entry point for NMI or call
  external_interrupt() for IRQs (Sean Christopherson).
* Call external_interrupt() only when FRED is enabled, and convert the
  non-FRED handling to external_interrupt() after FRED lands (Sean
  Christopherson).
---
 arch/x86/entry/entry_64_fred.S | 76 ++++++++++++++++++++++++++++++++++
 arch/x86/entry/entry_fred.c    | 14 +++++++
 arch/x86/include/asm/fred.h    | 18 ++++++++
 3 files changed, 108 insertions(+)

diff --git a/arch/x86/entry/entry_64_fred.S b/arch/x86/entry/entry_64_fred.S
index d1c2fc4af8ae..9917b4ea1543 100644
--- a/arch/x86/entry/entry_64_fred.S
+++ b/arch/x86/entry/entry_64_fred.S
@@ -4,7 +4,9 @@
  */
 
 #include <asm/asm.h>
+#include <asm/export.h>
 #include <asm/fred.h>
+#include <asm/segment.h>
 
 #include "calling.h"
 
@@ -54,3 +56,77 @@ SYM_CODE_START_NOALIGN(asm_fred_entrypoint_kernel)
 	FRED_EXIT
 	ERETS
 SYM_CODE_END(asm_fred_entrypoint_kernel)
+
+#if IS_ENABLED(CONFIG_KVM_INTEL)
+SYM_FUNC_START(asm_fred_entry_from_kvm)
+	push %rbp
+	mov %rsp, %rbp
+
+	UNWIND_HINT_SAVE
+
+	/*
+	 * Both IRQ and NMI from VMX can be handled on current task stack
+	 * because there is no need to protect from reentrancy and the call
+	 * stack leading to this helper is effectively constant and shallow
+	 * (relatively speaking). Do the same when FRED is active, i.e., no
+	 * need to check current stack level for a stack switch.
+	 *
+	 * Emulate the FRED-defined redzone and stack alignment.
+	 */
+	sub $(FRED_CONFIG_REDZONE_AMOUNT << 6), %rsp
+	and $FRED_STACK_FRAME_RSP_MASK, %rsp
+
+	/*
+	 * Start to push a FRED stack frame, which is always 64 bytes:
+	 *
+	 * +--------+-----------------+
+	 * | Bytes  | Usage           |
+	 * +--------+-----------------+
+	 * | 63:56  | Reserved        |
+	 * | 55:48  | Event Data      |
+	 * | 47:40  | SS + Event Info |
+	 * | 39:32  | RSP             |
+	 * | 31:24  | RFLAGS          |
+	 * | 23:16  | CS + Aux Info   |
+	 * |  15:8  | RIP             |
+	 * |   7:0  | Error Code      |
+	 * +--------+-----------------+
+	 */
+	push $0				/* Reserved, must be 0 */
+	push $0				/* Event data, 0 for IRQ/NMI */
+	push %rdi			/* fred_ss handed in by the caller */
+	push %rbp
+	pushf
+	mov $__KERNEL_CS, %rax
+	push %rax
+
+	/*
+	 * Unlike the IDT event delivery, FRED _always_ pushes an error code
+	 * after pushing the return RIP, thus the CALL instruction CANNOT be
+	 * used here to push the return RIP, otherwise there is no chance to
+	 * push an error code before invoking the IRQ/NMI handler.
+	 *
+	 * Use LEA to get the return RIP and push it, then push an error code.
+	 */
+	lea 1f(%rip), %rax
+	push %rax				/* Return RIP */
+	push $0					/* Error code, 0 for IRQ/NMI */
+
+	PUSH_AND_CLEAR_REGS clear_bp=0 unwind_hint=0
+	movq %rsp, %rdi				/* %rdi -> pt_regs */
+	call __fred_entry_from_kvm		/* Call the C entry point */
+	POP_REGS
+	ERETS
+1:
+	/*
+	 * Objtool doesn't understand what ERETS does, this hint tells it that
+	 * yes, we'll reach here and with what stack state. A save/restore pair
+	 * isn't strictly needed, but it's the simplest form.
+	 */
+	UNWIND_HINT_RESTORE
+	pop %rbp
+	RET
+
+SYM_FUNC_END(asm_fred_entry_from_kvm)
+EXPORT_SYMBOL_GPL(asm_fred_entry_from_kvm);
+#endif
diff --git a/arch/x86/entry/entry_fred.c b/arch/x86/entry/entry_fred.c
index 97e2552d6951..4c0398010e04 100644
--- a/arch/x86/entry/entry_fred.c
+++ b/arch/x86/entry/entry_fred.c
@@ -242,3 +242,17 @@ __visible noinstr void fred_entry_from_kernel(struct pt_regs *regs)
 		return fred_bad_type(regs, error_code);
 	}
 }
+
+#if IS_ENABLED(CONFIG_KVM_INTEL)
+__visible noinstr void __fred_entry_from_kvm(struct pt_regs *regs)
+{
+	switch (regs->fred_ss.type) {
+	case EVENT_TYPE_EXTINT:
+		return fred_extint(regs);
+	case EVENT_TYPE_NMI:
+		return fred_exc_nmi(regs);
+	default:
+		WARN_ON_ONCE(1);
+	}
+}
+#endif
diff --git a/arch/x86/include/asm/fred.h b/arch/x86/include/asm/fred.h
index 16a64ffecbf8..2fa9f34e5c95 100644
--- a/arch/x86/include/asm/fred.h
+++ b/arch/x86/include/asm/fred.h
@@ -9,6 +9,7 @@
 #include <linux/const.h>
 
 #include <asm/asm.h>
+#include <asm/trapnr.h>
 
 /*
  * FRED event return instruction opcodes for ERET{S,U}; supported in
@@ -62,12 +63,29 @@ static __always_inline unsigned long fred_event_data(struct pt_regs *regs)
 
 void asm_fred_entrypoint_user(void);
 void asm_fred_entrypoint_kernel(void);
+void asm_fred_entry_from_kvm(struct fred_ss);
 
 __visible void fred_entry_from_user(struct pt_regs *regs);
 __visible void fred_entry_from_kernel(struct pt_regs *regs);
+__visible void __fred_entry_from_kvm(struct pt_regs *regs);
+
+/* Can be called from noinstr code, thus __always_inline */
+static __always_inline void fred_entry_from_kvm(unsigned int type, unsigned int vector)
+{
+	struct fred_ss ss = {
+		.ss     =__KERNEL_DS,
+		.type   = type,
+		.vector = vector,
+		.nmi    = type == EVENT_TYPE_NMI,
+		.lm     = 1,
+	};
+
+	asm_fred_entry_from_kvm(ss);
+}
 
 #else /* CONFIG_X86_FRED */
 static __always_inline unsigned long fred_event_data(struct pt_regs *regs) { return 0; }
+static __always_inline void fred_entry_from_kvm(unsigned int type, unsigned int vector) { }
 #endif /* CONFIG_X86_FRED */
 #endif /* !__ASSEMBLY__ */
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607172.945506 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzh2-0005Wn-EF; Sat, 23 Sep 2023 10:16:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607172.945506; Sat, 23 Sep 2023 10:16:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzh2-0005WZ-AF; Sat, 23 Sep 2023 10:16:56 +0000
Received: by outflank-mailman (input) for mailman id 607172;
 Sat, 23 Sep 2023 10:16:55 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcA-0000Pn-5d
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:54 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9b832e2d-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:48 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:40 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:40 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9b832e2d-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463908; x=1726999908;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=CcGvpPsp9yPYBKGgtw+pwzSruaWdmcjQipAacX3tyYo=;
  b=Hs7Xj+XNSdpSxWXIlCV7kx3HrH2TXWsLi9bHgHKLxVeG86gXZVLBGfMh
   oEDRUlwaloZ9ExHBqBIi6hHluPvHUX4iWz1EF5bF5DV1cdNdz8Yck/ftU
   DIfFIuUIvW/Yo29yeRznys/o9gKsfahCw3JdqwGtwUDd+jrHujLU6DSxi
   dJTHy/Vhhlw2nv1zCZECjFcQwq3lJRIo7sQx2O1R05+jbzmvkDXQ6LuMI
   Dx/48HcFZ9JM61iCgdzoR4/oNMJMIWI2AE6wlKAG+2Gii9Hez6lpsNz+w
   2wyBw8DK2JVD77TnCMSkkVjxzrDzOYpSR6b3Euxbo93jRj2/Z3vDY1/xu
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492180"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492180"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388131"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388131"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 09/37] x86/fred: Disable FRED support if CONFIG_X86_FRED is disabled
Date: Sat, 23 Sep 2023 02:41:44 -0700
Message-Id: <20230923094212.26520-10-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add CONFIG_X86_FRED to <asm/disabled-features.h> to make
cpu_feature_enabled() work correctly with FRED.

Originally-by: Megha Dey <megha.dey@intel.com>
Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v10:
* FRED feature is defined in cpuid word 12, not 13 (Nikolay Borisov).
---
 arch/x86/include/asm/disabled-features.h       | 8 +++++++-
 tools/arch/x86/include/asm/disabled-features.h | 8 +++++++-
 2 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/arch/x86/include/asm/disabled-features.h b/arch/x86/include/asm/disabled-features.h
index 702d93fdd10e..f40b29d3abad 100644
--- a/arch/x86/include/asm/disabled-features.h
+++ b/arch/x86/include/asm/disabled-features.h
@@ -117,6 +117,12 @@
 #define DISABLE_IBT	(1 << (X86_FEATURE_IBT & 31))
 #endif
 
+#ifdef CONFIG_X86_FRED
+# define DISABLE_FRED	0
+#else
+# define DISABLE_FRED	(1 << (X86_FEATURE_FRED & 31))
+#endif
+
 /*
  * Make sure to add features to the correct mask
  */
@@ -133,7 +139,7 @@
 #define DISABLED_MASK10	0
 #define DISABLED_MASK11	(DISABLE_RETPOLINE|DISABLE_RETHUNK|DISABLE_UNRET| \
 			 DISABLE_CALL_DEPTH_TRACKING|DISABLE_USER_SHSTK)
-#define DISABLED_MASK12	(DISABLE_LAM)
+#define DISABLED_MASK12	(DISABLE_FRED|DISABLE_LAM)
 #define DISABLED_MASK13	0
 #define DISABLED_MASK14	0
 #define DISABLED_MASK15	0
diff --git a/tools/arch/x86/include/asm/disabled-features.h b/tools/arch/x86/include/asm/disabled-features.h
index fafe9be7a6f4..0b47ab1930a3 100644
--- a/tools/arch/x86/include/asm/disabled-features.h
+++ b/tools/arch/x86/include/asm/disabled-features.h
@@ -105,6 +105,12 @@
 # define DISABLE_TDX_GUEST	(1 << (X86_FEATURE_TDX_GUEST & 31))
 #endif
 
+#ifdef CONFIG_X86_FRED
+# define DISABLE_FRED	0
+#else
+# define DISABLE_FRED	(1 << (X86_FEATURE_FRED & 31))
+#endif
+
 /*
  * Make sure to add features to the correct mask
  */
@@ -121,7 +127,7 @@
 #define DISABLED_MASK10	0
 #define DISABLED_MASK11	(DISABLE_RETPOLINE|DISABLE_RETHUNK|DISABLE_UNRET| \
 			 DISABLE_CALL_DEPTH_TRACKING)
-#define DISABLED_MASK12	(DISABLE_LAM)
+#define DISABLED_MASK12	(DISABLE_FRED|DISABLE_LAM)
 #define DISABLED_MASK13	0
 #define DISABLED_MASK14	0
 #define DISABLED_MASK15	0
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:16:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:16:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607173.945510 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzh2-0005a1-Q8; Sat, 23 Sep 2023 10:16:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607173.945510; Sat, 23 Sep 2023 10:16:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzh2-0005ZR-Jw; Sat, 23 Sep 2023 10:16:56 +0000
Received: by outflank-mailman (input) for mailman id 607173;
 Sat, 23 Sep 2023 10:16:55 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcF-0000Pn-6N
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:59 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9e3f9737-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:53 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:43 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:43 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9e3f9737-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463913; x=1726999913;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=yFOHuHE47yU8Pv3f7vyK1KueQKaw2/ZJmrjuiwmDzLE=;
  b=Fcs75br/pFd4rF1kHIKDEmjvc6JGW90s21ZBC6Q3QkM0KzIYiCJXxdhL
   bs0jORKTQGqiLBr3dQv7zyfeQ37D1U0OM3ISefdf4HWz+JBGOdYLZLWEL
   7EuZdEqqYk/TmplhU6fQ7dlNUjj7MCnLBCG0E/gkgXGZvltAeFv9VNSOG
   QE7vnX+kR7PdriJH8qWc2xrSFjYNewiDd38YMVIfo7VtN3mdcjhrlkrP+
   25cqLzdEQMcEojsj/0EIdt8i+OfVZUayxE3aBRo5ZNiFLgLd4jI7c1u6W
   SK9d2X8CJIfwSkP0bx+4u+An+LlARKkB/JRVPNiRBhUn5RkD4laW00sRh
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492253"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492253"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388151"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388151"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 15/37] x86/ptrace: Cleanup the definition of the pt_regs structure
Date: Sat, 23 Sep 2023 02:41:50 -0700
Message-Id: <20230923094212.26520-16-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

struct pt_regs is hard to read because the member or section related
comments are not aligned with the members.

The 'cs' and 'ss' members of pt_regs are type of 'unsigned long' while
in reality they are only 16-bit wide. This works so far as the
remaining space is unused, but FRED will use the remaining bits for
other purposes.

To prepare for FRED:

  - Cleanup the formatting
  - Convert 'cs' and 'ss' to u16 and embed them into an union
    with a u64
  - Fixup the related printk() format strings

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/entry/vsyscall/vsyscall_64.c |  2 +-
 arch/x86/include/asm/ptrace.h         | 44 +++++++++++++++++++--------
 arch/x86/kernel/process_64.c          |  2 +-
 3 files changed, 33 insertions(+), 15 deletions(-)

diff --git a/arch/x86/entry/vsyscall/vsyscall_64.c b/arch/x86/entry/vsyscall/vsyscall_64.c
index e0ca8120aea8..a3c0df11d0e6 100644
--- a/arch/x86/entry/vsyscall/vsyscall_64.c
+++ b/arch/x86/entry/vsyscall/vsyscall_64.c
@@ -76,7 +76,7 @@ static void warn_bad_vsyscall(const char *level, struct pt_regs *regs,
 	if (!show_unhandled_signals)
 		return;
 
-	printk_ratelimited("%s%s[%d] %s ip:%lx cs:%lx sp:%lx ax:%lx si:%lx di:%lx\n",
+	printk_ratelimited("%s%s[%d] %s ip:%lx cs:%x sp:%lx ax:%lx si:%lx di:%lx\n",
 			   level, current->comm, task_pid_nr(current),
 			   message, regs->ip, regs->cs,
 			   regs->sp, regs->ax, regs->si, regs->di);
diff --git a/arch/x86/include/asm/ptrace.h b/arch/x86/include/asm/ptrace.h
index f4db78b09c8f..f08ea073edd6 100644
--- a/arch/x86/include/asm/ptrace.h
+++ b/arch/x86/include/asm/ptrace.h
@@ -57,17 +57,19 @@ struct pt_regs {
 #else /* __i386__ */
 
 struct pt_regs {
-/*
- * C ABI says these regs are callee-preserved. They aren't saved on kernel entry
- * unless syscall needs a complete, fully filled "struct pt_regs".
- */
+	/*
+	 * C ABI says these regs are callee-preserved. They aren't saved on
+	 * kernel entry unless syscall needs a complete, fully filled
+	 * "struct pt_regs".
+	 */
 	unsigned long r15;
 	unsigned long r14;
 	unsigned long r13;
 	unsigned long r12;
 	unsigned long bp;
 	unsigned long bx;
-/* These regs are callee-clobbered. Always saved on kernel entry. */
+
+	/* These regs are callee-clobbered. Always saved on kernel entry. */
 	unsigned long r11;
 	unsigned long r10;
 	unsigned long r9;
@@ -77,18 +79,34 @@ struct pt_regs {
 	unsigned long dx;
 	unsigned long si;
 	unsigned long di;
-/*
- * On syscall entry, this is syscall#. On CPU exception, this is error code.
- * On hw interrupt, it's IRQ number:
- */
+
+	/*
+	 * orig_ax is used on entry for:
+	 * - the syscall number (syscall, sysenter, int80)
+	 * - error_code stored by the CPU on traps and exceptions
+	 * - the interrupt number for device interrupts
+	 */
 	unsigned long orig_ax;
-/* Return frame for iretq */
+
+	/* The IRETQ return frame starts here */
 	unsigned long ip;
-	unsigned long cs;
+
+	union {
+		u64	csx;	// The full 64-bit data slot containing CS
+		u16	cs;	// CS selector
+	};
+
 	unsigned long flags;
 	unsigned long sp;
-	unsigned long ss;
-/* top of stack page */
+
+	union {
+		u64	ssx;	// The full 64-bit data slot containing SS
+		u16	ss;	// SS selector
+	};
+
+	/*
+	 * Top of stack on IDT systems.
+	 */
 };
 
 #endif /* !__i386__ */
diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
index 33b268747bb7..0f78b58021bb 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -117,7 +117,7 @@ void __show_regs(struct pt_regs *regs, enum show_regs_mode mode,
 
 	printk("%sFS:  %016lx(%04x) GS:%016lx(%04x) knlGS:%016lx\n",
 	       log_lvl, fs, fsindex, gs, gsindex, shadowgs);
-	printk("%sCS:  %04lx DS: %04x ES: %04x CR0: %016lx\n",
+	printk("%sCS:  %04x DS: %04x ES: %04x CR0: %016lx\n",
 		log_lvl, regs->cs, ds, es, cr0);
 	printk("%sCR2: %016lx CR3: %016lx CR4: %016lx\n",
 		log_lvl, cr2, cr3, cr4);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:17:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:17:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607179.945526 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzhQ-0007vh-6X; Sat, 23 Sep 2023 10:17:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607179.945526; Sat, 23 Sep 2023 10:17:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzhQ-0007vR-1N; Sat, 23 Sep 2023 10:17:20 +0000
Received: by outflank-mailman (input) for mailman id 607179;
 Sat, 23 Sep 2023 10:17:18 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcD-0000Pn-66
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:11:57 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9cdc962f-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:51 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:42 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:42 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9cdc962f-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463911; x=1726999911;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=HpayuDP0G6ySf2KQMWwvFighiKo7ZJmuZuQ215k2l1g=;
  b=UI8cf1Y3u0qk285/dBq4Hw27YreD9JQfj7aZA1sCGpiNiY2kYJU4GnJg
   HLug6B9unJ03eMGkmou3zCspITkLHkxBKnWkX6Pb8Phgh9c0HGKGyqWkI
   ty1JtHuYxPCYXxju7HPQh8ZKxWANACXd0PgAHQkNcWRWAlo+icvpWbSbR
   v8PfDJFVrFXNosKgyYk/7EZMOvzy0ajG/xIREnawQkfa37oHeIHA6L1e5
   OOwQkZl0HsHbCvAPnD1+18pxh+qjUl6TrhfcuGrrcxxk4mR10QlxZP4Qf
   n+LjJxjLaphJ4vZoDhh6ZMdZS7G9oFjTG8wuBMdv0swoWu+6odQ1C7dm8
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492229"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492229"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388144"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388144"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 13/37] x86/cpu: Add X86_CR4_FRED macro
Date: Sat, 23 Sep 2023 02:41:48 -0700
Message-Id: <20230923094212.26520-14-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add X86_CR4_FRED macro for the FRED bit in %cr4. This bit must not be
changed after initialization, so add it to the pinned CR4 bits.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v9:
* Avoid a type cast by defining X86_CR4_FRED as 0 on 32-bit (Thomas
  Gleixner).
---
 arch/x86/include/uapi/asm/processor-flags.h | 7 +++++++
 arch/x86/kernel/cpu/common.c                | 5 ++---
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/arch/x86/include/uapi/asm/processor-flags.h b/arch/x86/include/uapi/asm/processor-flags.h
index d898432947ff..f1a4adc78272 100644
--- a/arch/x86/include/uapi/asm/processor-flags.h
+++ b/arch/x86/include/uapi/asm/processor-flags.h
@@ -139,6 +139,13 @@
 #define X86_CR4_LAM_SUP_BIT	28 /* LAM for supervisor pointers */
 #define X86_CR4_LAM_SUP		_BITUL(X86_CR4_LAM_SUP_BIT)
 
+#ifdef __x86_64__
+#define X86_CR4_FRED_BIT	32 /* enable FRED kernel entry */
+#define X86_CR4_FRED		_BITUL(X86_CR4_FRED_BIT)
+#else
+#define X86_CR4_FRED		(0)
+#endif
+
 /*
  * x86-64 Task Priority Register, CR8
  */
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index 4dec7822a291..20bbedbf6dcb 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -401,9 +401,8 @@ static __always_inline void setup_umip(struct cpuinfo_x86 *c)
 }
 
 /* These bits should not change their value after CPU init is finished. */
-static const unsigned long cr4_pinned_mask =
-	X86_CR4_SMEP | X86_CR4_SMAP | X86_CR4_UMIP |
-	X86_CR4_FSGSBASE | X86_CR4_CET;
+static const unsigned long cr4_pinned_mask = X86_CR4_SMEP | X86_CR4_SMAP | X86_CR4_UMIP |
+					     X86_CR4_FSGSBASE | X86_CR4_CET | X86_CR4_FRED;
 static DEFINE_STATIC_KEY_FALSE_RO(cr_pinning);
 static unsigned long cr4_pinned_bits __ro_after_init;
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:17:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:17:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607183.945536 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzhV-0008RP-Kk; Sat, 23 Sep 2023 10:17:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607183.945536; Sat, 23 Sep 2023 10:17:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzhV-0008RE-Gx; Sat, 23 Sep 2023 10:17:25 +0000
Received: by outflank-mailman (input) for mailman id 607183;
 Sat, 23 Sep 2023 10:17:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcS-0000Pn-8u
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:12 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a2949cdc-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:12:00 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:50 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:49 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a2949cdc-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463920; x=1726999920;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=uI63qS685+NUKBSTh3pyJcOWduGAZyH2DYXDq4Svog4=;
  b=DXwOoczQDIYgGTDu4xC3dkkuWiX6dyPmhRqouqF1RdHxg5yMtvHsIZVJ
   Pgzo6EiK7/GzxCWr8JLZ2tQWYJDmCVnChHK9zzAKojJxyVqfQI8byrjeO
   xgHhT3zICBvNi0GG9l0tvjgAyfCtqAqcaK6gvFbU/ETDQi+BIllxli/ZR
   o5c8opmqtWT1onX/r71ttmUif07PlBJX7r3fTSe0EtirQm56ggKv4F1Mp
   xZTrsY0ikZSe4NN1upaWmneR0mzEnTf5ELguLEp0e0bHiiywGFvdom6BN
   9UgfuWBZwymxXZpibnaz1VxyypZEZQcOyeV2J69YVp/wWedvugey3ZJdC
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492412"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492412"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388200"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388200"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 28/37] x86/fred: FRED entry/exit and dispatch code
Date: Sat, 23 Sep 2023 02:42:03 -0700
Message-Id: <20230923094212.26520-29-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

The code to actually handle kernel and event entry/exit using
FRED. It is split up into two files thus:

- entry_64_fred.S contains the actual entrypoints and exit code, and
  saves and restores registers.
- entry_fred.c contains the two-level event dispatch code for FRED.
  The first-level dispatch is on the event type, and the second-level
  is on the event vector.

Originally-by: Megha Dey <megha.dey@intel.com>
Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Co-developed-by: Xin Li <xin3.li@intel.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v10:
* Replace "IS_ENABLED(CONFIG_IA32_EMULATION)" with the new ia32_enabled()
  API (Nikolay Borisov).

Changes since v9:
* Don't use jump tables, indirect jumps are expensive (Thomas Gleixner).
* Except NMI/#DB/#MCE, FRED really can share the exception handlers
  with IDT (Thomas Gleixner).
* Avoid the sysvec_* idt_entry muck, do it at a central place, reuse code
  instead of blindly copying it, which breaks the performance optimized
  sysvec entries like reschedule_ipi (Thomas Gleixner).
* Add asm_ prefix to FRED asm entry points (Thomas Gleixner).

Changes since v8:
* Don't do syscall early out in fred_entry_from_user() before there are
  proper performance numbers and justifications (Thomas Gleixner).
* Add the control exception handler to the FRED exception handler table
  (Thomas Gleixner).
* Add ENDBR to the FRED_ENTER asm macro.
* Reflect the FRED spec 5.0 change that ERETS and ERETU add 8 to %rsp
  before popping the return context from the stack.

Changes since v1:
* Initialize a FRED exception handler to fred_bad_event() instead of NULL
  if no FRED handler defined for an exception vector (Peter Zijlstra).
* Push calling irqentry_{enter,exit}() and instrumentation_{begin,end}()
  down into individual FRED exception handlers, instead of in the dispatch
  framework (Peter Zijlstra).
---
 arch/x86/entry/Makefile               |   5 +-
 arch/x86/entry/entry_64_fred.S        |  52 ++++++
 arch/x86/entry/entry_fred.c           | 230 ++++++++++++++++++++++++++
 arch/x86/include/asm/asm-prototypes.h |   1 +
 arch/x86/include/asm/fred.h           |   6 +
 5 files changed, 293 insertions(+), 1 deletion(-)
 create mode 100644 arch/x86/entry/entry_64_fred.S
 create mode 100644 arch/x86/entry/entry_fred.c

diff --git a/arch/x86/entry/Makefile b/arch/x86/entry/Makefile
index ca2fe186994b..c93e7f5c2a06 100644
--- a/arch/x86/entry/Makefile
+++ b/arch/x86/entry/Makefile
@@ -18,6 +18,9 @@ obj-y				+= vdso/
 obj-y				+= vsyscall/
 
 obj-$(CONFIG_PREEMPTION)	+= thunk_$(BITS).o
+CFLAGS_entry_fred.o		+= -fno-stack-protector
+CFLAGS_REMOVE_entry_fred.o	+= -pg $(CC_FLAGS_FTRACE)
+obj-$(CONFIG_X86_FRED)		+= entry_64_fred.o entry_fred.o
+
 obj-$(CONFIG_IA32_EMULATION)	+= entry_64_compat.o syscall_32.o
 obj-$(CONFIG_X86_X32_ABI)	+= syscall_x32.o
-
diff --git a/arch/x86/entry/entry_64_fred.S b/arch/x86/entry/entry_64_fred.S
new file mode 100644
index 000000000000..37a1dd5e8ace
--- /dev/null
+++ b/arch/x86/entry/entry_64_fred.S
@@ -0,0 +1,52 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * The actual FRED entry points.
+ */
+
+#include <asm/fred.h>
+
+#include "calling.h"
+
+	.code64
+	.section .noinstr.text, "ax"
+
+.macro FRED_ENTER
+	UNWIND_HINT_END_OF_STACK
+	ENDBR
+	PUSH_AND_CLEAR_REGS
+	movq	%rsp, %rdi	/* %rdi -> pt_regs */
+.endm
+
+.macro FRED_EXIT
+	UNWIND_HINT_REGS
+	POP_REGS
+.endm
+
+/*
+ * The new RIP value that FRED event delivery establishes is
+ * IA32_FRED_CONFIG & ~FFFH for events that occur in ring 3.
+ * Thus the FRED ring 3 entry point must be 4K page aligned.
+ */
+	.align 4096
+
+SYM_CODE_START_NOALIGN(asm_fred_entrypoint_user)
+	FRED_ENTER
+	call	fred_entry_from_user
+	FRED_EXIT
+	ERETU
+SYM_CODE_END(asm_fred_entrypoint_user)
+
+.fill asm_fred_entrypoint_kernel - ., 1, 0xcc
+
+/*
+ * The new RIP value that FRED event delivery establishes is
+ * (IA32_FRED_CONFIG & ~FFFH) + 256 for events that occur in
+ * ring 0, i.e., asm_fred_entrypoint_user + 256.
+ */
+	.org asm_fred_entrypoint_user + 256
+SYM_CODE_START_NOALIGN(asm_fred_entrypoint_kernel)
+	FRED_ENTER
+	call	fred_entry_from_kernel
+	FRED_EXIT
+	ERETS
+SYM_CODE_END(asm_fred_entrypoint_kernel)
diff --git a/arch/x86/entry/entry_fred.c b/arch/x86/entry/entry_fred.c
new file mode 100644
index 000000000000..68bec3888a36
--- /dev/null
+++ b/arch/x86/entry/entry_fred.c
@@ -0,0 +1,230 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * The FRED specific kernel/user entry functions which are invoked from
+ * assembly code and dispatch to the associated handlers.
+ */
+#include <linux/kernel.h>
+#include <linux/kdebug.h>
+#include <linux/nospec.h>
+
+#include <asm/desc.h>
+#include <asm/fred.h>
+#include <asm/idtentry.h>
+#include <asm/syscall.h>
+#include <asm/trapnr.h>
+#include <asm/traps.h>
+
+/* FRED EVENT_TYPE_OTHER vector numbers */
+#define FRED_SYSCALL			1
+#define FRED_SYSENTER			2
+
+static noinstr void fred_bad_type(struct pt_regs *regs, unsigned long error_code)
+{
+	irqentry_state_t irq_state = irqentry_nmi_enter(regs);
+
+	instrumentation_begin();
+
+	/* Panic on events from a high stack level */
+	if (regs->sl > 0) {
+		pr_emerg("PANIC: invalid or fatal FRED event; event type %u "
+			 "vector %u error 0x%lx aux 0x%lx at %04x:%016lx\n",
+			 regs->fred_ss.type, regs->fred_ss.vector, regs->orig_ax,
+			 fred_event_data(regs), regs->cs, regs->ip);
+		die("invalid or fatal FRED event", regs, regs->orig_ax);
+		panic("invalid or fatal FRED event");
+	} else {
+		unsigned long flags = oops_begin();
+		int sig = SIGKILL;
+
+		pr_alert("BUG: invalid or fatal FRED event; event type %u "
+			 "vector %u error 0x%lx aux 0x%lx at %04x:%016lx\n",
+			 regs->fred_ss.type, regs->fred_ss.vector, regs->orig_ax,
+			 fred_event_data(regs), regs->cs, regs->ip);
+
+		if (__die("Invalid or fatal FRED event", regs, regs->orig_ax))
+			sig = 0;
+
+		oops_end(flags, regs, sig);
+	}
+
+	instrumentation_end();
+	irqentry_nmi_exit(regs, irq_state);
+}
+
+static noinstr void fred_intx(struct pt_regs *regs)
+{
+	switch (regs->fred_ss.vector) {
+	/* INT0 */
+	case X86_TRAP_OF:
+		exc_overflow(regs);
+		return;
+
+	/* INT3 */
+	case X86_TRAP_BP:
+		exc_int3(regs);
+		return;
+
+	/* INT80 */
+	case IA32_SYSCALL_VECTOR:
+		if (ia32_enabled()) {
+			/* Save the syscall number */
+			regs->orig_ax = regs->ax;
+			regs->ax = -ENOSYS;
+			do_int80_syscall_32(regs);
+			return;
+		}
+		fallthrough;
+
+	default:
+		exc_general_protection(regs, 0);
+		return;
+	}
+}
+
+static __always_inline void fred_other(struct pt_regs *regs)
+{
+	/* The compiler can fold these conditions into a single test */
+	if (likely(regs->fred_ss.vector == FRED_SYSCALL && regs->fred_ss.lm)) {
+		regs->orig_ax = regs->ax;
+		regs->ax = -ENOSYS;
+		do_syscall_64(regs, regs->orig_ax);
+		return;
+	} else if (ia32_enabled() &&
+		   likely(regs->fred_ss.vector == FRED_SYSENTER &&
+			  !regs->fred_ss.lm)) {
+		regs->orig_ax = regs->ax;
+		regs->ax = -ENOSYS;
+		do_fast_syscall_32(regs);
+		return;
+	} else {
+		exc_invalid_op(regs);
+		return;
+	}
+}
+
+#define SYSVEC(_vector, _function) [_vector - FIRST_SYSTEM_VECTOR] = fred_sysvec_##_function
+
+static idtentry_t sysvec_table[NR_SYSTEM_VECTORS] __ro_after_init = {
+	SYSVEC(ERROR_APIC_VECTOR,		error_interrupt),
+	SYSVEC(SPURIOUS_APIC_VECTOR,		spurious_apic_interrupt),
+	SYSVEC(LOCAL_TIMER_VECTOR,		apic_timer_interrupt),
+	SYSVEC(X86_PLATFORM_IPI_VECTOR,		x86_platform_ipi),
+
+	SYSVEC(RESCHEDULE_VECTOR,		reschedule_ipi),
+	SYSVEC(CALL_FUNCTION_SINGLE_VECTOR,	call_function_single),
+	SYSVEC(CALL_FUNCTION_VECTOR,		call_function),
+	SYSVEC(REBOOT_VECTOR,			reboot),
+
+	SYSVEC(THRESHOLD_APIC_VECTOR,		threshold),
+	SYSVEC(DEFERRED_ERROR_VECTOR,		deferred_error),
+	SYSVEC(THERMAL_APIC_VECTOR,		thermal),
+
+	SYSVEC(IRQ_WORK_VECTOR,			irq_work),
+
+	SYSVEC(POSTED_INTR_VECTOR,		kvm_posted_intr_ipi),
+	SYSVEC(POSTED_INTR_WAKEUP_VECTOR,	kvm_posted_intr_wakeup_ipi),
+	SYSVEC(POSTED_INTR_NESTED_VECTOR,	kvm_posted_intr_nested_ipi),
+};
+
+static noinstr void fred_extint(struct pt_regs *regs)
+{
+	unsigned int vector = regs->fred_ss.vector;
+
+	if (WARN_ON_ONCE(vector < FIRST_EXTERNAL_VECTOR))
+		return;
+
+	if (likely(vector >= FIRST_SYSTEM_VECTOR)) {
+		irqentry_state_t state = irqentry_enter(regs);
+
+		instrumentation_begin();
+		sysvec_table[vector - FIRST_SYSTEM_VECTOR](regs);
+		instrumentation_end();
+		irqentry_exit(regs, state);
+	} else {
+		common_interrupt(regs, vector);
+	}
+}
+
+static noinstr void fred_exception(struct pt_regs *regs, unsigned long error_code)
+{
+	/* Optimize for #PF. That's the only exception which matters performance wise */
+	if (likely(regs->fred_ss.vector == X86_TRAP_PF)) {
+		exc_page_fault(regs, error_code);
+		return;
+	}
+
+	switch (regs->fred_ss.vector) {
+	case X86_TRAP_DE: return exc_divide_error(regs);
+	case X86_TRAP_DB: return fred_exc_debug(regs);
+	case X86_TRAP_BP: return exc_int3(regs);
+	case X86_TRAP_OF: return exc_overflow(regs);
+	case X86_TRAP_BR: return exc_bounds(regs);
+	case X86_TRAP_UD: return exc_invalid_op(regs);
+	case X86_TRAP_NM: return exc_device_not_available(regs);
+	case X86_TRAP_DF: return exc_double_fault(regs, error_code);
+	case X86_TRAP_TS: return exc_invalid_tss(regs, error_code);
+	case X86_TRAP_NP: return exc_segment_not_present(regs, error_code);
+	case X86_TRAP_SS: return exc_stack_segment(regs, error_code);
+	case X86_TRAP_GP: return exc_general_protection(regs, error_code);
+	case X86_TRAP_MF: return exc_coprocessor_error(regs);
+	case X86_TRAP_AC: return exc_alignment_check(regs, error_code);
+	case X86_TRAP_XF: return exc_simd_coprocessor_error(regs);
+
+#ifdef CONFIG_X86_MCE
+	case X86_TRAP_MC: return fred_exc_machine_check(regs);
+#endif
+#ifdef CONFIG_INTEL_TDX_GUEST
+	case X86_TRAP_VE: return exc_virtualization_exception(regs);
+#endif
+#ifdef CONFIG_X86_KERNEL_IBT
+	case X86_TRAP_CP: return exc_control_protection(regs, error_code);
+#endif
+	default: return fred_bad_type(regs, error_code);
+	}
+}
+
+__visible noinstr void fred_entry_from_user(struct pt_regs *regs)
+{
+	unsigned long error_code = regs->orig_ax;
+
+	/* Invalidate orig_ax so that syscall_get_nr() works correctly */
+	regs->orig_ax = -1;
+
+	switch (regs->fred_ss.type) {
+	case EVENT_TYPE_EXTINT:
+		return fred_extint(regs);
+	case EVENT_TYPE_NMI:
+		return fred_exc_nmi(regs);
+	case EVENT_TYPE_SWINT:
+		return fred_intx(regs);
+	case EVENT_TYPE_HWEXC:
+	case EVENT_TYPE_SWEXC:
+	case EVENT_TYPE_PRIV_SWEXC:
+		return fred_exception(regs, error_code);
+	case EVENT_TYPE_OTHER:
+		return fred_other(regs);
+	default:
+		return fred_bad_type(regs, error_code);
+	}
+}
+
+__visible noinstr void fred_entry_from_kernel(struct pt_regs *regs)
+{
+	unsigned long error_code = regs->orig_ax;
+
+	/* Invalidate orig_ax so that syscall_get_nr() works correctly */
+	regs->orig_ax = -1;
+
+	switch (regs->fred_ss.type) {
+	case EVENT_TYPE_EXTINT:
+		return fred_extint(regs);
+	case EVENT_TYPE_NMI:
+		return fred_exc_nmi(regs);
+	case EVENT_TYPE_HWEXC:
+	case EVENT_TYPE_SWEXC:
+	case EVENT_TYPE_PRIV_SWEXC:
+		return fred_exception(regs, error_code);
+	default:
+		return fred_bad_type(regs, error_code);
+	}
+}
diff --git a/arch/x86/include/asm/asm-prototypes.h b/arch/x86/include/asm/asm-prototypes.h
index b1a98fa38828..076bf8dee702 100644
--- a/arch/x86/include/asm/asm-prototypes.h
+++ b/arch/x86/include/asm/asm-prototypes.h
@@ -12,6 +12,7 @@
 #include <asm/special_insns.h>
 #include <asm/preempt.h>
 #include <asm/asm.h>
+#include <asm/fred.h>
 #include <asm/gsseg.h>
 
 #ifndef CONFIG_X86_CMPXCHG64
diff --git a/arch/x86/include/asm/fred.h b/arch/x86/include/asm/fred.h
index f514fdb5a39f..16a64ffecbf8 100644
--- a/arch/x86/include/asm/fred.h
+++ b/arch/x86/include/asm/fred.h
@@ -60,6 +60,12 @@ static __always_inline unsigned long fred_event_data(struct pt_regs *regs)
 	return fred_info(regs)->edata;
 }
 
+void asm_fred_entrypoint_user(void);
+void asm_fred_entrypoint_kernel(void);
+
+__visible void fred_entry_from_user(struct pt_regs *regs);
+__visible void fred_entry_from_kernel(struct pt_regs *regs);
+
 #else /* CONFIG_X86_FRED */
 static __always_inline unsigned long fred_event_data(struct pt_regs *regs) { return 0; }
 #endif /* CONFIG_X86_FRED */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:17:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:17:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607184.945541 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzhW-0008VU-0W; Sat, 23 Sep 2023 10:17:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607184.945541; Sat, 23 Sep 2023 10:17:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzhV-0008U8-R0; Sat, 23 Sep 2023 10:17:25 +0000
Received: by outflank-mailman (input) for mailman id 607184;
 Sat, 23 Sep 2023 10:17:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcb-0000Pn-9m
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:21 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a4c5cc35-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:12:04 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:53 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:52 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a4c5cc35-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463924; x=1726999924;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=MZgokrEaX/IcaX3hD6O7bYEAIXqVjdzkrr/jdEXzfh8=;
  b=U+mvBZ46mGKBgzxrA5KOuhjpiXJJ4Dc5bgZrXg3wr2eX4DA0N3Puw1Gl
   quqZid4aXPLQMPRKZWpju6vwjExX7BoLFOdfwnRD/CAanl8DB/lnLp1/u
   RETemfVLJWMSZ+Shrk5lTEjn9IublNXy/ODXjGm6CErcMEEl+0Fs///7c
   kiDQgLBpNKYIuu95dUZadgWBUK//pJ+A36Foy0kCGirv71ZWdsZ7Z/tbu
   XNpd/Ouj9ib54cl5Jco9ECQ2s16PKumjE+sNaPt2qqGLr+o5RmB55XBNs
   aloHg+k/PDNVUX56fbNjXCpZgZTodO7GbNJpo4KQaWdOrdAVYlSUyczJG
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492486"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492486"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388225"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388225"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 34/37] KVM: VMX: Call fred_entry_from_kvm() for IRQ/NMI handling
Date: Sat, 23 Sep 2023 02:42:09 -0700
Message-Id: <20230923094212.26520-35-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

When FRED is enabled, call fred_entry_from_kvm() to handle IRQ/NMI in
IRQ/NMI induced VM exits.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
---
 arch/x86/kvm/vmx/vmx.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c
index 72e3943f3693..db55b8418fa3 100644
--- a/arch/x86/kvm/vmx/vmx.c
+++ b/arch/x86/kvm/vmx/vmx.c
@@ -38,6 +38,7 @@
 #include <asm/desc.h>
 #include <asm/fpu/api.h>
 #include <asm/fpu/xstate.h>
+#include <asm/fred.h>
 #include <asm/idtentry.h>
 #include <asm/io.h>
 #include <asm/irq_remapping.h>
@@ -6962,14 +6963,16 @@ static void handle_external_interrupt_irqoff(struct kvm_vcpu *vcpu)
 {
 	u32 intr_info = vmx_get_intr_info(vcpu);
 	unsigned int vector = intr_info & INTR_INFO_VECTOR_MASK;
-	gate_desc *desc = (gate_desc *)host_idt_base + vector;
 
 	if (KVM_BUG(!is_external_intr(intr_info), vcpu->kvm,
 	    "unexpected VM-Exit interrupt info: 0x%x", intr_info))
 		return;
 
 	kvm_before_interrupt(vcpu, KVM_HANDLING_IRQ);
-	vmx_do_interrupt_irqoff(gate_offset(desc));
+	if (cpu_feature_enabled(X86_FEATURE_FRED))
+		fred_entry_from_kvm(EVENT_TYPE_EXTINT, vector);
+	else
+		vmx_do_interrupt_irqoff(gate_offset((gate_desc *)host_idt_base + vector));
 	kvm_after_interrupt(vcpu);
 
 	vcpu->arch.at_instruction_boundary = true;
@@ -7262,7 +7265,10 @@ static noinstr void vmx_vcpu_enter_exit(struct kvm_vcpu *vcpu,
 	if ((u16)vmx->exit_reason.basic == EXIT_REASON_EXCEPTION_NMI &&
 	    is_nmi(vmx_get_intr_info(vcpu))) {
 		kvm_before_interrupt(vcpu, KVM_HANDLING_NMI);
-		vmx_do_nmi_irqoff();
+		if (cpu_feature_enabled(X86_FEATURE_FRED))
+			fred_entry_from_kvm(EVENT_TYPE_NMI, NMI_VECTOR);
+		else
+			vmx_do_nmi_irqoff();
 		kvm_after_interrupt(vcpu);
 	}
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:17:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:17:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607192.945556 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzhu-0001g4-8s; Sat, 23 Sep 2023 10:17:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607192.945556; Sat, 23 Sep 2023 10:17:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzhu-0001fp-5h; Sat, 23 Sep 2023 10:17:50 +0000
Received: by outflank-mailman (input) for mailman id 607192;
 Sat, 23 Sep 2023 10:17:49 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzch-0000Pn-AS
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:27 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a5879c0e-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:12:05 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:54 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:53 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a5879c0e-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463925; x=1726999925;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=Sp0+AV8Wk0Fbo8OC2qcHvn3gACkXfZEMeDhitLz3FOw=;
  b=eexZbvYzgeEI1kJF1EefXC/WEZvV3HWAcw9j6ijiVuIc6qBlauVzyPYS
   gi44VfAzUGJHSfnlQ81rB0Ws54sNf4qtFbXz5NU3EpkH4rnu0BjUKVLtM
   OuPilPip8bpPSGOnLu3lNu0xbZV/nD17w1h4hEElYGAQPrmfhY3NybarZ
   LeHhc31IeDJPXVu7dj58PxJaPVExHcGZ25QSni5ekEhXphQAkg6tdGeDh
   sd9IgJWRZDr/LJRoFpDVfWDrAOYF3EYR4+qHQxICxVVFqPu227Y93tgk8
   Wr5KEGJF0rYnAZnNtjcaF9qXRPDJN60h/9ht6m7hWAZkJZaiwsgiTvvYI
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492510"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492510"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388245"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388245"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 36/37] x86/fred: Add FRED initialization functions
Date: Sat, 23 Sep 2023 02:42:11 -0700
Message-Id: <20230923094212.26520-37-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add cpu_init_fred_exceptions() to:
  - Set FRED entrypoints for events happening in ring 0 and 3.
  - Specify the stack level for IRQs occurred ring 0.
  - Specify dedicated event stacks for #DB/NMI/#MCE/#DF.
  - Enable FRED and invalidtes IDT.
  - Force 32-bit system calls to use "int $0x80" only.

Add fred_complete_exception_setup() to:
  - Initialize system_vectors as done for IDT systems.
  - Set unused sysvec_table entries to fred_handle_spurious_interrupt().

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Co-developed-by: Xin Li <xin3.li@intel.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v9:
* Set unused sysvec table entries to fred_handle_spurious_interrupt()
  in fred_complete_exception_setup() (Thomas Gleixner).

Changes since v5:
* Add a comment for FRED stack level settings (Lai Jiangshan).
* Define NMI/#DB/#MCE/#DF stack levels using macros.
---
 arch/x86/entry/entry_fred.c | 21 +++++++++++++
 arch/x86/include/asm/fred.h |  5 ++++
 arch/x86/kernel/Makefile    |  1 +
 arch/x86/kernel/fred.c      | 59 +++++++++++++++++++++++++++++++++++++
 4 files changed, 86 insertions(+)
 create mode 100644 arch/x86/kernel/fred.c

diff --git a/arch/x86/entry/entry_fred.c b/arch/x86/entry/entry_fred.c
index 4c0398010e04..e77429683240 100644
--- a/arch/x86/entry/entry_fred.c
+++ b/arch/x86/entry/entry_fred.c
@@ -140,6 +140,27 @@ void __init fred_install_sysvec(unsigned int sysvec, idtentry_t handler)
 		 sysvec_table[sysvec - FIRST_SYSTEM_VECTOR] = handler;
 }
 
+static noinstr void fred_handle_spurious_interrupt(struct pt_regs *regs)
+{
+	spurious_interrupt(regs, regs->fred_ss.vector);
+}
+
+void __init fred_complete_exception_setup(void)
+{
+	unsigned int vector;
+
+	for (vector = 0; vector < FIRST_EXTERNAL_VECTOR; vector++)
+		set_bit(vector, system_vectors);
+
+	for (vector = 0; vector < NR_SYSTEM_VECTORS; vector++) {
+		if (sysvec_table[vector])
+			set_bit(vector + FIRST_SYSTEM_VECTOR, system_vectors);
+		else
+			sysvec_table[vector] = fred_handle_spurious_interrupt;
+	}
+	fred_setup_done = true;
+}
+
 static noinstr void fred_extint(struct pt_regs *regs)
 {
 	unsigned int vector = regs->fred_ss.vector;
diff --git a/arch/x86/include/asm/fred.h b/arch/x86/include/asm/fred.h
index 2fa9f34e5c95..e86c7ba32435 100644
--- a/arch/x86/include/asm/fred.h
+++ b/arch/x86/include/asm/fred.h
@@ -83,8 +83,13 @@ static __always_inline void fred_entry_from_kvm(unsigned int type, unsigned int
 	asm_fred_entry_from_kvm(ss);
 }
 
+void cpu_init_fred_exceptions(void);
+void fred_complete_exception_setup(void);
+
 #else /* CONFIG_X86_FRED */
 static __always_inline unsigned long fred_event_data(struct pt_regs *regs) { return 0; }
+static inline void cpu_init_fred_exceptions(void) { }
+static inline void fred_complete_exception_setup(void) { }
 static __always_inline void fred_entry_from_kvm(unsigned int type, unsigned int vector) { }
 #endif /* CONFIG_X86_FRED */
 #endif /* !__ASSEMBLY__ */
diff --git a/arch/x86/kernel/Makefile b/arch/x86/kernel/Makefile
index 3269a0e23d3a..8dfdae4111bb 100644
--- a/arch/x86/kernel/Makefile
+++ b/arch/x86/kernel/Makefile
@@ -47,6 +47,7 @@ obj-y			+= platform-quirks.o
 obj-y			+= process_$(BITS).o signal.o signal_$(BITS).o
 obj-y			+= traps.o idt.o irq.o irq_$(BITS).o dumpstack_$(BITS).o
 obj-y			+= time.o ioport.o dumpstack.o nmi.o
+obj-$(CONFIG_X86_FRED)	+= fred.o
 obj-$(CONFIG_MODIFY_LDT_SYSCALL)	+= ldt.o
 obj-$(CONFIG_X86_KERNEL_IBT)		+= ibt_selftest.o
 obj-y			+= setup.o x86_init.o i8259.o irqinit.o
diff --git a/arch/x86/kernel/fred.c b/arch/x86/kernel/fred.c
new file mode 100644
index 000000000000..4bcd8791ad96
--- /dev/null
+++ b/arch/x86/kernel/fred.c
@@ -0,0 +1,59 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#include <linux/kernel.h>
+
+#include <asm/desc.h>
+#include <asm/fred.h>
+#include <asm/tlbflush.h>
+#include <asm/traps.h>
+
+/* #DB in the kernel would imply the use of a kernel debugger. */
+#define FRED_DB_STACK_LEVEL		1UL
+#define FRED_NMI_STACK_LEVEL		2UL
+#define FRED_MC_STACK_LEVEL		2UL
+/*
+ * #DF is the highest level because a #DF means "something went wrong
+ * *while delivering an exception*." The number of cases for which that
+ * can happen with FRED is drastically reduced and basically amounts to
+ * "the stack you pointed me to is broken." Thus, always change stacks
+ * on #DF, which means it should be at the highest level.
+ */
+#define FRED_DF_STACK_LEVEL		3UL
+
+#define FRED_STKLVL(vector, lvl)	((lvl) << (2 * (vector)))
+
+void cpu_init_fred_exceptions(void)
+{
+	/* When FRED is enabled by default, remove this log message */
+	pr_info("Initialize FRED on CPU%d\n", smp_processor_id());
+
+	wrmsrl(MSR_IA32_FRED_CONFIG,
+	       /* Reserve for CALL emulation */
+	       FRED_CONFIG_REDZONE |
+	       FRED_CONFIG_INT_STKLVL(0) |
+	       FRED_CONFIG_ENTRYPOINT(asm_fred_entrypoint_user));
+
+	/*
+	 * The purpose of separate stacks for NMI, #DB and #MC *in the kernel*
+	 * (remember that user space faults are always taken on stack level 0)
+	 * is to avoid overflowing the kernel stack.
+	 */
+	wrmsrl(MSR_IA32_FRED_STKLVLS,
+	       FRED_STKLVL(X86_TRAP_DB,  FRED_DB_STACK_LEVEL) |
+	       FRED_STKLVL(X86_TRAP_NMI, FRED_NMI_STACK_LEVEL) |
+	       FRED_STKLVL(X86_TRAP_MC,  FRED_MC_STACK_LEVEL) |
+	       FRED_STKLVL(X86_TRAP_DF,  FRED_DF_STACK_LEVEL));
+
+	/* The FRED equivalents to IST stacks... */
+	wrmsrl(MSR_IA32_FRED_RSP1, __this_cpu_ist_top_va(DB));
+	wrmsrl(MSR_IA32_FRED_RSP2, __this_cpu_ist_top_va(NMI));
+	wrmsrl(MSR_IA32_FRED_RSP3, __this_cpu_ist_top_va(DF));
+
+	/* Enable FRED */
+	cr4_set_bits(X86_CR4_FRED);
+	/* Any further IDT use is a bug */
+	idt_invalidate();
+
+	/* Use int $0x80 for 32-bit system calls in FRED mode */
+	setup_clear_cpu_cap(X86_FEATURE_SYSENTER32);
+	setup_clear_cpu_cap(X86_FEATURE_SYSCALL32);
+}
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:18:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:18:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607194.945566 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzi8-0002Ia-JO; Sat, 23 Sep 2023 10:18:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607194.945566; Sat, 23 Sep 2023 10:18:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzi8-0002IN-Ep; Sat, 23 Sep 2023 10:18:04 +0000
Received: by outflank-mailman (input) for mailman id 607194;
 Sat, 23 Sep 2023 10:18:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcX-0000Pn-9D
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:17 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a4181977-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:12:03 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:52 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:51 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a4181977-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463923; x=1726999923;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=/UldAmuJEnsflYS2+cyLAQ4E+J1yAKX8pToUnF0eneI=;
  b=F35hjlCODUs/qp7bTxalUqp1QBwojhkEnhIPxZQoVcz23mcfcQ6XNZyI
   fvNrNJshi0I5MaEkcvZLSIbaHaFFQRHAz+sT/TmAt7fpyltmTQ2nuWJz4
   gmkz/z6ROC88JiLlQeaKWoH74UOr3nbmloiAQDESHm0cfQSMin99rUSNg
   Lqio8mQDF/qPrBwE5EP+rid2dZVrXT+PdSLMZJ6e8oYBpYk7rVRgwyI1d
   d8eHdxhgyhMVwYltV4ETJ+oBtvXDKoZWi9Y1BNVj2jQDoDZcMnBXxzxNR
   MiMIMWmL6sSom+oGPqFnlepEzKRx7vuGBPxO9HvoWSrJPXN6Jn2Ap33U8
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492462"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492462"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388214"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388214"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 32/37] x86/entry/calling: Allow PUSH_AND_CLEAR_REGS being used beyond actual entry code
Date: Sat, 23 Sep 2023 02:42:07 -0700
Message-Id: <20230923094212.26520-33-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "Peter Zijlstra (Intel)" <peterz@infradead.org>

PUSH_AND_CLEAR_REGS could be used besides actual entry code; in that case
%rbp shouldn't be cleared (otherwise the frame pointer is destroyed) and
UNWIND_HINT shouldn't be added.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/entry/calling.h | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/arch/x86/entry/calling.h b/arch/x86/entry/calling.h
index f6907627172b..eb57c023d5df 100644
--- a/arch/x86/entry/calling.h
+++ b/arch/x86/entry/calling.h
@@ -65,7 +65,7 @@ For 32-bit we have the following conventions - kernel is built with
  * for assembly code:
  */
 
-.macro PUSH_REGS rdx=%rdx rcx=%rcx rax=%rax save_ret=0
+.macro PUSH_REGS rdx=%rdx rcx=%rcx rax=%rax save_ret=0 unwind_hint=1
 	.if \save_ret
 	pushq	%rsi		/* pt_regs->si */
 	movq	8(%rsp), %rsi	/* temporarily store the return address in %rsi */
@@ -87,14 +87,17 @@ For 32-bit we have the following conventions - kernel is built with
 	pushq	%r13		/* pt_regs->r13 */
 	pushq	%r14		/* pt_regs->r14 */
 	pushq	%r15		/* pt_regs->r15 */
+
+	.if \unwind_hint
 	UNWIND_HINT_REGS
+	.endif
 
 	.if \save_ret
 	pushq	%rsi		/* return address on top of stack */
 	.endif
 .endm
 
-.macro CLEAR_REGS
+.macro CLEAR_REGS clear_bp=1
 	/*
 	 * Sanitize registers of values that a speculation attack might
 	 * otherwise want to exploit. The lower registers are likely clobbered
@@ -109,7 +112,9 @@ For 32-bit we have the following conventions - kernel is built with
 	xorl	%r10d, %r10d	/* nospec r10 */
 	xorl	%r11d, %r11d	/* nospec r11 */
 	xorl	%ebx,  %ebx	/* nospec rbx */
+	.if \clear_bp
 	xorl	%ebp,  %ebp	/* nospec rbp */
+	.endif
 	xorl	%r12d, %r12d	/* nospec r12 */
 	xorl	%r13d, %r13d	/* nospec r13 */
 	xorl	%r14d, %r14d	/* nospec r14 */
@@ -117,9 +122,9 @@ For 32-bit we have the following conventions - kernel is built with
 
 .endm
 
-.macro PUSH_AND_CLEAR_REGS rdx=%rdx rcx=%rcx rax=%rax save_ret=0
-	PUSH_REGS rdx=\rdx, rcx=\rcx, rax=\rax, save_ret=\save_ret
-	CLEAR_REGS
+.macro PUSH_AND_CLEAR_REGS rdx=%rdx rcx=%rcx rax=%rax save_ret=0 clear_bp=1 unwind_hint=1
+	PUSH_REGS rdx=\rdx, rcx=\rcx, rax=\rax, save_ret=\save_ret unwind_hint=\unwind_hint
+	CLEAR_REGS clear_bp=\clear_bp
 .endm
 
 .macro POP_REGS pop_rdi=1
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:18:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:18:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607195.945572 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzi9-0002Qp-4i; Sat, 23 Sep 2023 10:18:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607195.945572; Sat, 23 Sep 2023 10:18:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzi8-0002NY-Se; Sat, 23 Sep 2023 10:18:04 +0000
Received: by outflank-mailman (input) for mailman id 607195;
 Sat, 23 Sep 2023 10:18:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzce-0000Pn-9w
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:24 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a4eb96da-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:12:04 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:53 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:53 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a4eb96da-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463924; x=1726999924;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=kgfFMDbJiu5q1BDcTkBjlFfGWj3DWiVrEUdh+fgWCfs=;
  b=hMUQY4SsiMDV1sTWLNHLkiC7dWH+tV1TUFgPqV0cizeFVKgpcjc/ox/H
   DxkZvzxowt2mQ2fy24L/LvOWVG8TnQu8LMwLy1lmRaCqRWed24a08mBjv
   +rXqMn2KsmVzmJcLmnp34AahKVqQADtJGM59sfJT8cGHrWshLSttA0a2c
   PW3xV2yKLWx2T0NqXYyhj0CRyr3lSHmQupbCza0LVh7+4tUVmbhNEONeT
   y+Y0Fb/PIfVX3QC4uNzcE5A4eDC2mSBDhWnHszQDAtCqy5XJC4raNdXZa
   WI2JLZJRZo6tILV/BzYiMNywjstm1EBMRZqKNXFdwUlmANDq/FLN7N6zq
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492498"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492498"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388236"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388236"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 35/37] x86/syscall: Split IDT syscall setup code into idt_syscall_init()
Date: Sat, 23 Sep 2023 02:42:10 -0700
Message-Id: <20230923094212.26520-36-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Because FRED uses the ring 3 FRED entrypoint for SYSCALL and SYSENTER and
ERETU is the only legit instruction to return to ring 3, there is NO need
to setup SYSCALL and SYSENTER MSRs for FRED, except the IA32_STAR MSR.

Split IDT syscall setup code into idt_syscall_init() to make it easy to
skip syscall setup code when FRED is enabled.

Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/kernel/cpu/common.c | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index 20bbedbf6dcb..2ee4e7b597a3 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -2071,10 +2071,8 @@ static void wrmsrl_cstar(unsigned long val)
 		wrmsrl(MSR_CSTAR, val);
 }
 
-/* May not be marked __init: used by software suspend */
-void syscall_init(void)
+static inline void idt_syscall_init(void)
 {
-	wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
 	wrmsrl(MSR_LSTAR, (unsigned long)entry_SYSCALL_64);
 
 	if (ia32_enabled()) {
@@ -2108,6 +2106,15 @@ void syscall_init(void)
 	       X86_EFLAGS_AC|X86_EFLAGS_ID);
 }
 
+/* May not be marked __init: used by software suspend */
+void syscall_init(void)
+{
+	/* The default user and kernel segments */
+	wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
+
+	idt_syscall_init();
+}
+
 #else	/* CONFIG_X86_64 */
 
 #ifdef CONFIG_STACKPROTECTOR
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:18:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:18:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607196.945579 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzi9-0002Ub-IE; Sat, 23 Sep 2023 10:18:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607196.945579; Sat, 23 Sep 2023 10:18:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjzi9-0002Tl-6n; Sat, 23 Sep 2023 10:18:05 +0000
Received: by outflank-mailman (input) for mailman id 607196;
 Sat, 23 Sep 2023 10:18:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzci-0000Pn-AY
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:28 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a5d9c024-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:12:06 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:54 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:54 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a5d9c024-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463926; x=1726999926;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=dp4g3U5j1+mHLqLShoixZI9RDsoukyKAu6bCdytj8jk=;
  b=DbxWFbX+ESVMeumtssq6SfyGqEq9Y9dA0gRc+iaO4Cc//2yUlFDwKivI
   aRwUG+o/1p+SPfEHEuhJ+9/xbxtKMeqkFK+OsmUhfbGlCm44x0Yp5DdJ0
   qG2Rl4AS1pSJ3kfJwh+lDeCDUFRRtpMqLwzCoePus78sJTilIYko2qsh0
   NNphEg38vrPZx42eNfICCBsuhb4MfxUNgHfSoHqnCTAwpI/DYHU96Zz8a
   B7a75Cwk3CyQXt9BWq+0Q6WoShhmYs2I5AioBgoGlfcVPRfXBUH1DSLCb
   zksUX5ICfrd+M+HpXNZd0t6/4UhGqrmJoEeQ8SBnsJKJ0lHsU7W5a5Xdg
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492522"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492522"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388252"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388252"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 37/37] x86/fred: Invoke FRED initialization code to enable FRED
Date: Sat, 23 Sep 2023 02:42:12 -0700
Message-Id: <20230923094212.26520-38-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Let cpu_init_exception_handling() call cpu_init_fred_exceptions() to
initialize FRED. However if FRED is unavailable or disabled, it falls
back to set up TSS IST and initialize IDT.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Co-developed-by: Xin Li <xin3.li@intel.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v10:
* No need to invalidate SYSCALL and SYSENTER MSRs (Thomas Gleixner).

Changes since v8:
* Move this patch after all required changes are in place (Thomas
  Gleixner).
---
 arch/x86/kernel/cpu/common.c | 22 +++++++++++++++++-----
 arch/x86/kernel/irqinit.c    |  7 ++++++-
 arch/x86/kernel/traps.c      |  5 ++++-
 3 files changed, 27 insertions(+), 7 deletions(-)

diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index 2ee4e7b597a3..e7a5b9831252 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -61,6 +61,7 @@
 #include <asm/microcode.h>
 #include <asm/intel-family.h>
 #include <asm/cpu_device_id.h>
+#include <asm/fred.h>
 #include <asm/uv/uv.h>
 #include <asm/ia32.h>
 #include <asm/set_memory.h>
@@ -2112,7 +2113,15 @@ void syscall_init(void)
 	/* The default user and kernel segments */
 	wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
 
-	idt_syscall_init();
+	/*
+	 * Except the IA32_STAR MSR, there is NO need to setup SYSCALL and
+	 * SYSENTER MSRs for FRED, because FRED uses the ring 3 FRED
+	 * entrypoint for SYSCALL and SYSENTER, and ERETU is the only legit
+	 * instruction to return to ring 3 (both sysexit and sysret cause
+	 * #UD when FRED is enabled).
+	 */
+	if (!cpu_feature_enabled(X86_FEATURE_FRED))
+		idt_syscall_init();
 }
 
 #else	/* CONFIG_X86_64 */
@@ -2228,8 +2237,9 @@ void cpu_init_exception_handling(void)
 	/* paranoid_entry() gets the CPU number from the GDT */
 	setup_getcpu(cpu);
 
-	/* IST vectors need TSS to be set up. */
-	tss_setup_ist(tss);
+	/* For IDT mode, IST vectors need to be set in TSS. */
+	if (!cpu_feature_enabled(X86_FEATURE_FRED))
+		tss_setup_ist(tss);
 	tss_setup_io_bitmap(tss);
 	set_tss_desc(cpu, &get_cpu_entry_area(cpu)->tss.x86_tss);
 
@@ -2238,8 +2248,10 @@ void cpu_init_exception_handling(void)
 	/* GHCB needs to be setup to handle #VC. */
 	setup_ghcb();
 
-	/* Finally load the IDT */
-	load_current_idt();
+	if (cpu_feature_enabled(X86_FEATURE_FRED))
+		cpu_init_fred_exceptions();
+	else
+		load_current_idt();
 }
 
 /*
diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c
index c683666876f1..f79c5edc0b89 100644
--- a/arch/x86/kernel/irqinit.c
+++ b/arch/x86/kernel/irqinit.c
@@ -28,6 +28,7 @@
 #include <asm/setup.h>
 #include <asm/i8259.h>
 #include <asm/traps.h>
+#include <asm/fred.h>
 #include <asm/prom.h>
 
 /*
@@ -96,7 +97,11 @@ void __init native_init_IRQ(void)
 	/* Execute any quirks before the call gates are initialised: */
 	x86_init.irqs.pre_vector_init();
 
-	idt_setup_apic_and_irq_gates();
+	if (cpu_feature_enabled(X86_FEATURE_FRED))
+		fred_complete_exception_setup();
+	else
+		idt_setup_apic_and_irq_gates();
+
 	lapic_assign_system_vectors();
 
 	if (!acpi_ioapic && !of_ioapic && nr_legacy_irqs()) {
diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c
index 848c85208a57..0ee78a30e14a 100644
--- a/arch/x86/kernel/traps.c
+++ b/arch/x86/kernel/traps.c
@@ -1411,7 +1411,10 @@ void __init trap_init(void)
 
 	/* Initialize TSS before setting up traps so ISTs work */
 	cpu_init_exception_handling();
+
 	/* Setup traps as cpu_init() might #GP */
-	idt_setup_traps();
+	if (!cpu_feature_enabled(X86_FEATURE_FRED))
+		idt_setup_traps();
+
 	cpu_init();
 }
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:18:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:18:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607198.945593 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjziA-00031s-P8; Sat, 23 Sep 2023 10:18:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607198.945593; Sat, 23 Sep 2023 10:18:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjziA-000317-JH; Sat, 23 Sep 2023 10:18:06 +0000
Received: by outflank-mailman (input) for mailman id 607198;
 Sat, 23 Sep 2023 10:18:05 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcH-0000Pn-6j
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:01 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9e874eda-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:54 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:44 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:44 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9e874eda-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463914; x=1726999914;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=SbR2wCTkousO/IPIjdDUqT7zLHmXpw3IGG9LN/Z2MXU=;
  b=gq9qLy8bGuL9FwiBanYKu0uClUnyDXCiQ3y5bvYBHZSAdhKu7JtWxPXO
   sockky4RA8e572y3rtJ5CelI2nldddOUoOXg8jmpk6frXNUyODsvQJIiM
   ZF5T5RjX2zSrbw9cj872O2T3Y9u+4LbvznPiRALzL0X3BPAkeunSDy5o9
   Fp2gyc+rY5Nq4MmeMRK6l/vgcL6Nz14ALYjoww+O+9mFU13x1eV3lMLa6
   j5+d2TpoRFw3E+iAbcaQruzmGsmI3kUom+sCdbIdS7MBpsZtGretWkbu4
   cRC1XjAgfjpWRiG+4NSZQt54LmIjLFijkLdMZh4SRlmrdSOE2I+E4Q2OH
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492278"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492278"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388157"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388157"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 17/37] x86/fred: Add a new header file for FRED definitions
Date: Sat, 23 Sep 2023 02:41:52 -0700
Message-Id: <20230923094212.26520-18-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

Add a header file for FRED prototypes and definitions.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v6:
* Replace pt_regs csx flags prefix FRED_CSL_ with FRED_CSX_.
---
 arch/x86/include/asm/fred.h | 68 +++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)
 create mode 100644 arch/x86/include/asm/fred.h

diff --git a/arch/x86/include/asm/fred.h b/arch/x86/include/asm/fred.h
new file mode 100644
index 000000000000..f514fdb5a39f
--- /dev/null
+++ b/arch/x86/include/asm/fred.h
@@ -0,0 +1,68 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Macros for Flexible Return and Event Delivery (FRED)
+ */
+
+#ifndef ASM_X86_FRED_H
+#define ASM_X86_FRED_H
+
+#include <linux/const.h>
+
+#include <asm/asm.h>
+
+/*
+ * FRED event return instruction opcodes for ERET{S,U}; supported in
+ * binutils >= 2.41.
+ */
+#define ERETS			_ASM_BYTES(0xf2,0x0f,0x01,0xca)
+#define ERETU			_ASM_BYTES(0xf3,0x0f,0x01,0xca)
+
+/*
+ * RSP is aligned to a 64-byte boundary before used to push a new stack frame
+ */
+#define FRED_STACK_FRAME_RSP_MASK	_AT(unsigned long, (~0x3f))
+
+/*
+ * Used for the return address for call emulation during code patching,
+ * and measured in 64-byte cache lines.
+ */
+#define FRED_CONFIG_REDZONE_AMOUNT	1
+#define FRED_CONFIG_REDZONE		(_AT(unsigned long, FRED_CONFIG_REDZONE_AMOUNT) << 6)
+#define FRED_CONFIG_INT_STKLVL(l)	(_AT(unsigned long, l) << 9)
+#define FRED_CONFIG_ENTRYPOINT(p)	_AT(unsigned long, (p))
+
+#ifndef __ASSEMBLY__
+
+#ifdef CONFIG_X86_FRED
+#include <linux/kernel.h>
+
+#include <asm/ptrace.h>
+
+struct fred_info {
+	/* Event data: CR2, DR6, ... */
+	unsigned long edata;
+	unsigned long resv;
+};
+
+/* Full format of the FRED stack frame */
+struct fred_frame {
+	struct pt_regs   regs;
+	struct fred_info info;
+};
+
+static __always_inline struct fred_info *fred_info(struct pt_regs *regs)
+{
+	return &container_of(regs, struct fred_frame, regs)->info;
+}
+
+static __always_inline unsigned long fred_event_data(struct pt_regs *regs)
+{
+	return fred_info(regs)->edata;
+}
+
+#else /* CONFIG_X86_FRED */
+static __always_inline unsigned long fred_event_data(struct pt_regs *regs) { return 0; }
+#endif /* CONFIG_X86_FRED */
+#endif /* !__ASSEMBLY__ */
+
+#endif /* ASM_X86_FRED_H */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:18:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:18:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607201.945606 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjziF-0003e6-4b; Sat, 23 Sep 2023 10:18:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607201.945606; Sat, 23 Sep 2023 10:18:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjziF-0003dt-1M; Sat, 23 Sep 2023 10:18:11 +0000
Received: by outflank-mailman (input) for mailman id 607201;
 Sat, 23 Sep 2023 10:18:10 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcR-0000Pn-8X
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:11 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a23b9b89-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:12:00 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:49 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:49 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a23b9b89-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463920; x=1726999920;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=bNtEfhEic2/4eI6U3F6LZD3GtdQN7TZ08d/4AOd+L9I=;
  b=Rt0zsDyJHjfvmDn4jENCKULsFcR4vk4HdUdBnh7htuEG05/tzI3yzbnM
   quTYVGv3NCqFVI4thXj6hB9dgKDTA7I89E2p+0xBpvmoiIQUTgac4bLuu
   HQ4LyaMrTQeQVCMfb/tKmS/IEvk2oQZVK9OcKe9tOn/EmUOgASwcLqr/i
   C7XsBUl/XxNmbFene1VP8AxLqGYB3ym4xsbikSL5BWtGlkvZ+cvvq4IsF
   7lVWoC/02iLk6s9uiQiJA+dsxeAc3Hi0ygaWIcJn9r8ETmj7/+PjAyqV5
   fuAebLg9JT293A4AYSJkXiP7va5M+Tx05Qd1PsiW2sGAE3xEKrzZmuzUp
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492400"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492400"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388196"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388196"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 27/37] x86/fred: Add a machine check entry stub for FRED
Date: Sat, 23 Sep 2023 02:42:02 -0700
Message-Id: <20230923094212.26520-28-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Like #DB, when occurred on different ring level, i.e., from user or kernel
context, #MCE needs to be handled on different stack: User #MCE on current
task stack, while kernel #MCE on a dedicated stack.

This is exactly how FRED event delivery invokes an exception handler: ring
3 event on level 0 stack, i.e., current task stack; ring 0 event on the
#MCE dedicated stack specified in the IA32_FRED_STKLVLS MSR. So unlike IDT,
the FRED machine check entry stub doesn't do stack switch.

Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---

Changes since v5:
* Disallow #DB inside #MCE for robustness sake (Peter Zijlstra).
---
 arch/x86/kernel/cpu/mce/core.c | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/arch/x86/kernel/cpu/mce/core.c b/arch/x86/kernel/cpu/mce/core.c
index 6f35f724cc14..da0a4a102afe 100644
--- a/arch/x86/kernel/cpu/mce/core.c
+++ b/arch/x86/kernel/cpu/mce/core.c
@@ -52,6 +52,7 @@
 #include <asm/mce.h>
 #include <asm/msr.h>
 #include <asm/reboot.h>
+#include <asm/fred.h>
 
 #include "internal.h"
 
@@ -2144,6 +2145,31 @@ DEFINE_IDTENTRY_MCE_USER(exc_machine_check)
 	exc_machine_check_user(regs);
 	local_db_restore(dr7);
 }
+
+#ifdef CONFIG_X86_FRED
+/*
+ * When occurred on different ring level, i.e., from user or kernel
+ * context, #MCE needs to be handled on different stack: User #MCE
+ * on current task stack, while kernel #MCE on a dedicated stack.
+ *
+ * This is exactly how FRED event delivery invokes an exception
+ * handler: ring 3 event on level 0 stack, i.e., current task stack;
+ * ring 0 event on the #MCE dedicated stack specified in the
+ * IA32_FRED_STKLVLS MSR. So unlike IDT, the FRED machine check entry
+ * stub doesn't do stack switch.
+ */
+DEFINE_FREDENTRY_MCE(exc_machine_check)
+{
+	unsigned long dr7;
+
+	dr7 = local_db_save();
+	if (user_mode(regs))
+		exc_machine_check_user(regs);
+	else
+		exc_machine_check_kernel(regs);
+	local_db_restore(dr7);
+}
+#endif
 #else
 /* 32bit unified entry point */
 DEFINE_IDTENTRY_RAW(exc_machine_check)
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 10:18:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 10:18:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607205.945616 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjziQ-0004ZA-FP; Sat, 23 Sep 2023 10:18:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607205.945616; Sat, 23 Sep 2023 10:18:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qjziQ-0004Ys-B1; Sat, 23 Sep 2023 10:18:22 +0000
Received: by outflank-mailman (input) for mailman id 607205;
 Sat, 23 Sep 2023 10:18:21 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xNi6=FH=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qjzcJ-0000Pn-78
 for xen-devel@lists.xenproject.org; Sat, 23 Sep 2023 10:12:03 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.100])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9fa922c9-59f9-11ee-9b0d-b553b5be7939;
 Sat, 23 Sep 2023 12:11:55 +0200 (CEST)
Received: from fmsmga008.fm.intel.com ([10.253.24.58])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 23 Sep 2023 03:11:45 -0700
Received: from unknown (HELO fred..) ([172.25.112.68])
 by fmsmga008.fm.intel.com with ESMTP; 23 Sep 2023 03:11:44 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9fa922c9-59f9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695463915; x=1726999915;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=U5v5FfPZcbv+kEeu4BDXYc9n8fkslqM+14uJJDiLwkk=;
  b=WPfB7UKtiEuFbXEXqidrWzrv0G2GfmJptzDs8I3fMn0Y0Tnfp1vczppZ
   zWufH1uJHyDPN9w8d9WtBYyEFyX+cIAbsxKhvmh2+TTNXTJlLEJ9wxZdB
   Ckv+XSRpbnjPrAVxKm3MNk0jSS9wF7gc8W25g4C9YXXllyAWNWloLGK3q
   DNuxllCA7qK4pSXhyPxetQhwobTUzDwIbRd2hEpFYHibdgFe6v8QC8269
   MloJLMpCGMzVJnpqKsKq/xC3KUSqQpqweUqiQtZdICn1c9F2p/5a0Pocz
   23UTQafWj5mAEQcDYPXXDiZeyvPaAKyURfsO75pO+76gmvqNEbfs1KTiR
   g==;
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="447492303"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="447492303"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10841"; a="813388168"
X-IronPort-AV: E=Sophos;i="6.03,171,1694761200"; 
   d="scan'208";a="813388168"
From: Xin Li <xin3.li@intel.com>
To: linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-edac@vger.kernel.org,
	linux-hyperv@vger.kernel.org,
	kvm@vger.kernel.org,
	xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de,
	mingo@redhat.com,
	bp@alien8.de,
	dave.hansen@linux.intel.com,
	x86@kernel.org,
	hpa@zytor.com,
	luto@kernel.org,
	pbonzini@redhat.com,
	seanjc@google.com,
	peterz@infradead.org,
	jgross@suse.com,
	ravi.v.shankar@intel.com,
	mhiramat@kernel.org,
	andrew.cooper3@citrix.com,
	jiangshanlai@gmail.com,
	nik.borisov@suse.com
Subject: [PATCH v11 19/37] x86/fred: Update MSR_IA32_FRED_RSP0 during task switch
Date: Sat, 23 Sep 2023 02:41:54 -0700
Message-Id: <20230923094212.26520-20-xin3.li@intel.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230923094212.26520-1-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: "H. Peter Anvin (Intel)" <hpa@zytor.com>

MSR_IA32_FRED_RSP0 is used during ring 3 event delivery, and needs to
be updated to point to the top of next task stack during task switch.

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
Tested-by: Shan Kang <shan.kang@intel.com>
Signed-off-by: Xin Li <xin3.li@intel.com>
---
 arch/x86/include/asm/switch_to.h | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/arch/x86/include/asm/switch_to.h b/arch/x86/include/asm/switch_to.h
index f42dbf17f52b..c3bd0c0758c9 100644
--- a/arch/x86/include/asm/switch_to.h
+++ b/arch/x86/include/asm/switch_to.h
@@ -70,9 +70,13 @@ static inline void update_task_stack(struct task_struct *task)
 #ifdef CONFIG_X86_32
 	this_cpu_write(cpu_tss_rw.x86_tss.sp1, task->thread.sp0);
 #else
-	/* Xen PV enters the kernel on the thread stack. */
-	if (cpu_feature_enabled(X86_FEATURE_XENPV))
+	if (cpu_feature_enabled(X86_FEATURE_FRED)) {
+		/* WRMSRNS is a baseline feature for FRED. */
+		wrmsrns(MSR_IA32_FRED_RSP0, (unsigned long)task_stack_page(task) + THREAD_SIZE);
+	} else if (cpu_feature_enabled(X86_FEATURE_XENPV)) {
+		/* Xen PV enters the kernel on the thread stack. */
 		load_sp0(task_top_of_stack(task));
+	}
 #endif
 }
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Sat Sep 23 12:24:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 12:24:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607319.945625 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qk1gI-0005hT-Jp; Sat, 23 Sep 2023 12:24:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607319.945625; Sat, 23 Sep 2023 12:24:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qk1gI-0005hM-Gd; Sat, 23 Sep 2023 12:24:18 +0000
Received: by outflank-mailman (input) for mailman id 607319;
 Sat, 23 Sep 2023 12:24:17 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qk1gH-0005hC-KA; Sat, 23 Sep 2023 12:24:17 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qk1gH-000233-BC; Sat, 23 Sep 2023 12:24:17 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qk1gG-00058V-U3; Sat, 23 Sep 2023 12:24:17 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qk1gG-0004W8-TU; Sat, 23 Sep 2023 12:24:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=qbSHSDKsyvVsCieialU7Ulc37hdIIhF3lyGJgOxN/K8=; b=K/iZOi1LtirdqZn6911syFwKKX
	LA0iqXwf9n8yLCR2/VhekO3DM0rl55KA4HYQIe0W8CkGVLb2WNizBJScInYV08Tgc9fUtHFJRMiMv
	cdI1MsKYSu6AJQMEyetvEl4BrgBoeCRzSp85d4AQLwivaFGaM5dM/Avzz4tlkSf/8hu4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183123-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183123: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=d90b0276af8f25a0b8ae081a30d1b2a61263393b
X-Osstest-Versions-That:
    linux=27bbf45eae9ca98877a2d52a92a188147cd61b07
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 23 Sep 2023 12:24:16 +0000

flight 183123 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183123/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183109
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183109
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183109
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183109
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183109
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183109
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183109
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183109
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                d90b0276af8f25a0b8ae081a30d1b2a61263393b
baseline version:
 linux                27bbf45eae9ca98877a2d52a92a188147cd61b07

Last test of basis   183109  2023-09-21 21:16:19 Z    1 days
Testing same since   183123  2023-09-23 00:25:15 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alex Deucher <alexander.deucher@amd.com>
  Alexey Dobriyan <adobriyan@gmail.com>
  Andi Shyti <andi.shyti@linux.intel.com>
  Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  Ard Biesheuvel <ardb@kernel.org>
  Arnd Bergmann <arnd@arndb.de>
  Baokun Li <libaokun1@huawei.com>
  Ben Skeggs <bskeggs@redhat.com>
  Borislav Petkov (AMD) <bp@alien8.de>
  Chandan Babu R <chandanbabu@kernel.org>
  Cong Liu <liucong2@kylinos.cn>
  Dan Carpenter <dan.carpenter@linaro.org>
  Daniel Wheeler <daniel.wheeler@amd.com>
  Danilo Krummrich <dakr@redhat.com>
  Darrick J. Wong <djwong@kernel.org>
  Dave Airlie <airlied@redhat.com>
  Dave Hansen <dave.hansen@linux.intel.com>
  Dennis Bonke <admin@dennisbonke.com>
  Dmitry Osipenko <dmitry.osipenko@collabora.com>
  H.J. Lu <hjl.tools@gmail.com>
  Hamza Mahfooz <hamza.mahfooz@amd.com>
  Hans de Goede <hdegoede@redhat.com>
  Herbert Xu <herbert@gondor.apana.org.au>
  Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
  Ingo Molnar <mingo@kernel.org>
  Jani Nikula <jani.nikula@intel.com>
  Janusz Krzysztofik <janusz.krzysztofik@linux.intel.com>
  Javier Martinez Canillas <javierm@redhat.com>
  John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
  Josh Poimboeuf <jpoimboe@kernel.org>
  José Pekkarinen <jose.pekkarinen@foxhound.fi>
  Karol Wachowski <karol.wachowski@linux.intel.com>
  Kees Cook <keescook@chromium.org>
  Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
  Kristina Martsenko <kristina.martsenko@arm.com>
  Liam R. Howlett <Liam.Howlett@oracle.com>
  Lijo Lazar <lijo.lazar@amd.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Lukas Bulwahn <lukas.bulwahn@gmail.com>
  Mark Broadworth <mark.broadworth@amd.com>
  Mark Brown <broonie@kernel.org>
  Mark Rutland <mark.rutland@arm.com>
  Maíra Canal <mairacanal@riseup.net>
  Michal Wilczynski <michal.wilczynski@intel.com>
  Muhammad Ahmed <ahmed.ahmed@amd.com>
  Neil Armstrong <neil.armstrong@linaro.org>
  Oliver Upton <oliver.upton@linux.dev>
  Peter Zijlstra (Intel) <peterz@infradead.org>
  Peter Zijlstra <peterz@infradead.org>
  Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  Rick Edgecombe <rick.p.edgecombe@intel.com>
  Rik van Riel <riel@surriel.com>
  Rodrigo Vivi <rodrigo.vivi@intel.com>
  Sebastian Andrzej Siewior <bigeasy@linutronix.de>
  Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
  Stephen Boyd <swboyd@chromium.org>
  Stylon Wang <stylon.wang@amd.com>
  Thomas Zimmermann <tzimmermann@suse.de>
  Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
  Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
  Vincent Whitchurch <vincent.whitchurch@axis.com>
  Wang Jianchao <jianchwa@outlook.com>
  Wang Jianchao <wangjc136@midea.com>
  Will Deacon <will@kernel.org>
  YuBiao Wang <YuBiao.Wang@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-freebsd11-amd64                             pass    
 test-amd64-amd64-freebsd12-amd64                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-amd64-xl-vhd                                      pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

hint: The 'hooks/update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-receive' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
To xenbits.xen.org:/home/xen/git/linux-pvops.git
   27bbf45eae9c..d90b0276af8f  d90b0276af8f25a0b8ae081a30d1b2a61263393b -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sat Sep 23 14:14:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 14:14:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607351.945642 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qk3OS-0007Ab-Ch; Sat, 23 Sep 2023 14:14:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607351.945642; Sat, 23 Sep 2023 14:14:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qk3OS-0007AU-9s; Sat, 23 Sep 2023 14:14:00 +0000
Received: by outflank-mailman (input) for mailman id 607351;
 Sat, 23 Sep 2023 14:13:59 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qk3OR-000793-0s; Sat, 23 Sep 2023 14:13:59 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qk3OQ-0004iq-1e; Sat, 23 Sep 2023 14:13:58 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qk3OP-0003Dt-PU; Sat, 23 Sep 2023 14:13:57 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qk3OP-0006NR-P3; Sat, 23 Sep 2023 14:13:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=YanmMFiX3SCh+UYXoksM9qjuuQu7uCw64pVO4u30peE=; b=4hdoKPDU9BE92S6dAsKIR5i5OU
	Kcl0W4dw6X324aaXu2rRdfY9FUfMpglpcg1AHpTeH/SEyeVZrxHYLcR7lRDRGPm6gcmrn+Fbn2ZJd
	9wRTWfpd8oTndI+MOH/QEdx4CHwt0iG5g0caZ0hDgflduDnnw96djJLhhaVIHT7UtmJ4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183126-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183126: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=3fd64fb0e236fc80ffa2cc977c0d471f11fc39bf
X-Osstest-Versions-That:
    libvirt=19484ccac5cb1586f9d10d3e6eb9b93ee82885c6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 23 Sep 2023 14:13:57 +0000

flight 183126 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183126/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183097
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183097
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183097
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              3fd64fb0e236fc80ffa2cc977c0d471f11fc39bf
baseline version:
 libvirt              19484ccac5cb1586f9d10d3e6eb9b93ee82885c6

Last test of basis   183097  2023-09-21 04:22:05 Z    2 days
Failing since        183112  2023-09-22 04:18:44 Z    1 days    2 attempts
Testing same since   183126  2023-09-23 04:18:44 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrea Bolognani <abologna@redhat.com>
  Michal Privoznik <mprivozn@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   19484ccac5..3fd64fb0e2  3fd64fb0e236fc80ffa2cc977c0d471f11fc39bf -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Sep 23 20:46:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 23 Sep 2023 20:46:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607363.945655 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qk9WO-0005nn-6T; Sat, 23 Sep 2023 20:46:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607363.945655; Sat, 23 Sep 2023 20:46:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qk9WO-0005ng-27; Sat, 23 Sep 2023 20:46:36 +0000
Received: by outflank-mailman (input) for mailman id 607363;
 Sat, 23 Sep 2023 20:46:35 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qk9WN-0005nU-92; Sat, 23 Sep 2023 20:46:35 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qk9WM-0005uu-Ro; Sat, 23 Sep 2023 20:46:34 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qk9WM-00052v-FL; Sat, 23 Sep 2023 20:46:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qk9WM-0006e4-Es; Sat, 23 Sep 2023 20:46:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=l2e41NO0BhlYG5Dd7ByjThNh6Ijg4fzBzw7hi7ZtrOs=; b=4RqRfaEgDQ6kblnVDhbTy6meVU
	TR4RddZHRNZy6B9zjRJPeMuspCLsj0nsj7IMscSBuuu4ydEB0NAbXEg8tAn3sbvvBztUifNdUQ0kQ
	AJpf2Lh5aVsG18RaXCqocY6F81sqvrXmb63YoKxE35PQHdDEN7sXlvn9bjfPvF8rdFHk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183129-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183129: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start:fail:regression
    linux-5.4:test-amd64-amd64-xl-pvshim:guest-localmigrate/x10:fail:heisenbug
    linux-5.4:test-arm64-arm64-libvirt-raw:guest-start.2:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 23 Sep 2023 20:46:34 +0000

flight 183129 linux-5.4 real [real]
flight 183134 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183129/
http://logs.test-lab.xenproject.org/osstest/logs/183134/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1  14 guest-start              fail REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-pvshim 20 guest-localmigrate/x10 fail pass in 183134-retest
 test-arm64-arm64-libvirt-raw 18 guest-start.2       fail pass in 183134-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail blocked in 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   21 days
Testing same since   183129  2023-09-23 09:20:22 Z    0 days    1 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   fail    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 24 01:10:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 24 Sep 2023 01:10:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607375.945674 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkDd5-0001mv-8M; Sun, 24 Sep 2023 01:09:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607375.945674; Sun, 24 Sep 2023 01:09:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkDd5-0001mo-4I; Sun, 24 Sep 2023 01:09:47 +0000
Received: by outflank-mailman (input) for mailman id 607375;
 Sun, 24 Sep 2023 01:09:45 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkDd3-0001me-9p; Sun, 24 Sep 2023 01:09:45 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkDd3-0002Zb-7U; Sun, 24 Sep 2023 01:09:45 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkDd2-0002Qs-Ok; Sun, 24 Sep 2023 01:09:44 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qkDd2-0004LM-OA; Sun, 24 Sep 2023 01:09:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=M779/iERyUvvZGbpAx8ePImEqsbtwT/aFRx+QDP3FBg=; b=SA0fatBNuBNLrInq5L1IOupKJm
	rLnLEQ4zTIAn0yWSA0D4XKgyczKotDrLBl55FFIbwiuZDrGqtSgkB0XxDLCqNBr7MmgJFUhFoCWgY
	fpLzQCHYSQIMr8l+T2V7ZFaeNuNwM2evIJYMDD0v2w5WrSXNV0RB3NlSEaaBayzfhg2Q=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183130-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183130: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl-vhd:guest-start:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=88a9501a848aade858a3bbda75f20cdf7c3c2f9a
X-Osstest-Versions-That:
    xen=932c3c8b4bd5cb7e3a2fe78105a80928307c9858
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 24 Sep 2023 01:09:44 +0000

flight 183130 xen-unstable real [real]
flight 183138 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183130/
http://logs.test-lab.xenproject.org/osstest/logs/183138/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-vhd       13 guest-start         fail pass in 183138-retest
 test-armhf-armhf-xl-vhd      13 guest-start         fail pass in 183138-retest
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail pass in 183138-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop  fail in 183138 like 183103
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 183138 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 183138 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183103
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183103
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183103
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183103
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183103
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183103
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183103
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183103
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183103
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183103
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183103
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  88a9501a848aade858a3bbda75f20cdf7c3c2f9a
baseline version:
 xen                  932c3c8b4bd5cb7e3a2fe78105a80928307c9858

Last test of basis   183103  2023-09-21 10:53:41 Z    2 days
Failing since        183117  2023-09-22 13:45:00 Z    1 days    2 attempts
Testing same since   183130  2023-09-23 09:21:00 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alejandro Vallejo <alejandro.vallejo@cloud.com>
  Andrew Cooper <andrew.cooper3@citrix.com>
  George Dunlap <george.dunlap@cloud.com>
  Henry Wang <Henry.Wang@arm.com>
  Julien Grall <jgrall@amazon.com>
  Roger Pau Monne <roger.pau@citrix.com>
  Roger Pau Monné <roger.pau@citrix.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      fail    
 test-amd64-i386-xl-vhd                                       fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   932c3c8b4b..88a9501a84  88a9501a848aade858a3bbda75f20cdf7c3c2f9a -> master


From xen-devel-bounces@lists.xenproject.org Sun Sep 24 06:53:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 24 Sep 2023 06:53:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607401.945731 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkIz2-0000Zh-Gq; Sun, 24 Sep 2023 06:52:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607401.945731; Sun, 24 Sep 2023 06:52:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkIz2-0000Za-By; Sun, 24 Sep 2023 06:52:48 +0000
Received: by outflank-mailman (input) for mailman id 607401;
 Sun, 24 Sep 2023 06:52:47 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkIz1-0000ZQ-8i; Sun, 24 Sep 2023 06:52:47 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkIz1-0003Hh-19; Sun, 24 Sep 2023 06:52:47 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkIz0-0000OH-MJ; Sun, 24 Sep 2023 06:52:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qkIz0-0007Qi-Lr; Sun, 24 Sep 2023 06:52:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=98ramDwLGG/wyKSWKz5XAQvVFXLbngNtcLObhOComOI=; b=pOtOZr8YR7X+CEYg+tQq9T2lTC
	Wbem5b6UqjgT+MEJxVM77+vdiR84wY3168vigkVLdj9yKyRoIktkn9LEhcsZVbyobpYcCnvDSs7FG
	+IO8SCtWfVo2Ma8vdimGNtrMO3FdVTvysl4WfdylnIXtZwtnRlX9+nY2Y4nLKpBcJ0j0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183135-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183135: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt:host-ping-check-xen:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=5a4de7dc9e77ca914bb050e6d661624a43db794c
X-Osstest-Versions-That:
    linux=d90b0276af8f25a0b8ae081a30d1b2a61263393b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 24 Sep 2023 06:52:46 +0000

flight 183135 linux-linus real [real]
flight 183141 linux-linus real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183135/
http://logs.test-lab.xenproject.org/osstest/logs/183141/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt     10 host-ping-check-xen fail pass in 183141-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt 16 saverestore-support-check fail in 183141 like 183123
 test-armhf-armhf-libvirt    15 migrate-support-check fail in 183141 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183123
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183123
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183123
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183123
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183123
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183123
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183123
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                5a4de7dc9e77ca914bb050e6d661624a43db794c
baseline version:
 linux                d90b0276af8f25a0b8ae081a30d1b2a61263393b

Last test of basis   183123  2023-09-23 00:25:15 Z    1 days
Testing same since   183135  2023-09-23 18:40:09 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  Bibo Mao <maobibo@loongson.cn>
  Charles Keepax <ckeepax@opensource.cirrus.com>
  Christoph Hellwig <hch@lst.de>
  Daniel Scally <dan.scally@ideasonboard.com>
  Darrick J. Wong <djwong@kernel.org>
  Geert Uytterhoeven <geert@linux-m68k.org>
  Guenter Roeck <linux@roeck-us.net>
  Heiko Carstens <hca@linux.ibm.com>
  Heiner Kallweit <hkallweit1@gmail.com>
  Helge Deller <deller@gmx.de>
  Huacai Chen <chenhuacai@loongson.cn>
  Jarkko Nikula <jarkko.nikula@linux.intel.com>
  Jinyang He <hejinyang@loongson.cn>
  Jonathan Borne <jborne@kalray.eu>
  Lee Jones <lee@kernel.org>
  Liang He <windhl@126.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Michal Simek <michal.simek@amd.com>
  Peter Oberparleiter <oberpar@linux.ibm.com>
  Tiezhu Yang <yangtiezhu@loongson.cn>
  Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
  Vasily Gorbik <gor@linux.ibm.com>
  WANG Xuerui <git@xen0n.name>
  Wolfram Sang <wsa@kernel.org>
  Xiaoke Wang <xkernel.wang@foxmail.com>
  Yann Sionneau <ysionneau@kalray.eu>
  Youling Tang <tangyouling@loongson.cn>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-freebsd11-amd64                             pass    
 test-amd64-amd64-freebsd12-amd64                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     fail    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-amd64-xl-vhd                                      pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

hint: The 'hooks/update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-receive' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
To xenbits.xen.org:/home/xen/git/linux-pvops.git
   d90b0276af8f..5a4de7dc9e77  5a4de7dc9e77ca914bb050e6d661624a43db794c -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sun Sep 24 10:46:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 24 Sep 2023 10:46:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607451.945741 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkMcx-00089z-IE; Sun, 24 Sep 2023 10:46:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607451.945741; Sun, 24 Sep 2023 10:46:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkMcx-00089s-DR; Sun, 24 Sep 2023 10:46:15 +0000
Received: by outflank-mailman (input) for mailman id 607451;
 Sun, 24 Sep 2023 10:46:14 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkMcw-00089c-9Y; Sun, 24 Sep 2023 10:46:14 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkMcv-0000kg-UR; Sun, 24 Sep 2023 10:46:13 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkMcv-0003Ql-Fr; Sun, 24 Sep 2023 10:46:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qkMcv-0001bA-FO; Sun, 24 Sep 2023 10:46:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=t/Hpb8jFvqRkR4lbkOF0C9ye3+zVmcimha/tHK87+1I=; b=xjFH2RTzTb4lI+ZgSUDzWL4FWo
	9i23bkjQf5UwXXzjLJnD+rRoxfqQZ/jOLqbVL3FJNR1xbGUCbUZUJXvGtlz+9pLfK+W0yb1q/wIYK
	CJpRcfGvS34y8UuFzK86+ZWfXNLJGy0CIuxuKYjeSDYluGo5BrT5EKW/BjV4xe1My+bQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183137-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183137: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:regression
    linux-5.4:test-amd64-amd64-xl-pvshim:guest-localmigrate/x10:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    linux-5.4:test-arm64-arm64-libvirt-raw:guest-start.2:fail:heisenbug
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:heisenbug
    linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:heisenbug
    linux-5.4:test-amd64-amd64-dom0pvh-xl-amd:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 24 Sep 2023 10:46:13 +0000

flight 183137 linux-5.4 real [real]
flight 183143 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183137/
http://logs.test-lab.xenproject.org/osstest/logs/183143/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-pvshim 20 guest-localmigrate/x10 fail in 183129 pass in 183137
 test-armhf-armhf-xl-credit1  14 guest-start      fail in 183129 pass in 183137
 test-arm64-arm64-libvirt-raw 18 guest-start.2    fail in 183129 pass in 183137
 test-amd64-i386-xl-qemut-debianhvm-amd64  7 xen-install    fail pass in 183129
 test-amd64-i386-xl-qemuu-debianhvm-amd64  7 xen-install    fail pass in 183129
 test-amd64-amd64-dom0pvh-xl-amd 22 guest-start/debian.repeat fail pass in 183129
 test-armhf-armhf-libvirt-qcow2 13 guest-start              fail pass in 183129
 test-armhf-armhf-xl-vhd      17 guest-start/debian.repeat  fail pass in 183129

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail blocked in 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 183129 like 182613
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 183129 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   22 days
Testing same since   183129  2023-09-23 09:20:22 Z    1 days    2 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              fail    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     fail    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               fail    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      fail    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Sun Sep 24 13:39:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 24 Sep 2023 13:39:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607479.945754 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkPJq-0004gn-Mk; Sun, 24 Sep 2023 13:38:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607479.945754; Sun, 24 Sep 2023 13:38:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkPJq-0004gg-JO; Sun, 24 Sep 2023 13:38:42 +0000
Received: by outflank-mailman (input) for mailman id 607479;
 Sun, 24 Sep 2023 13:38:41 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkPJp-0004gW-32; Sun, 24 Sep 2023 13:38:41 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkPJo-0005H2-LD; Sun, 24 Sep 2023 13:38:40 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkPJo-000537-8B; Sun, 24 Sep 2023 13:38:40 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qkPJo-0005uI-7c; Sun, 24 Sep 2023 13:38:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=UpDow8Z81yiC2oZoTadvFM1nlBuqVb2JCeiyk64uIAo=; b=ZEBmWrdMtQlFkO0HJQZpOSZOeA
	QQgeoiGL1+GbvQ7dbUAk+aHSnL8Pz7vjNBVIq071EOXf+ckwZxSnWdUHoR+Gpyr97VeQYaM4KQV87
	flQBOqykbTRo3gX8zJtlfHDqp5sHgv7y6xmlvjiQ5zD5RNrRuBKRwPBeVtL0+7LovxTg=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183140-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183140: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=88a9501a848aade858a3bbda75f20cdf7c3c2f9a
X-Osstest-Versions-That:
    xen=88a9501a848aade858a3bbda75f20cdf7c3c2f9a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 24 Sep 2023 13:38:40 +0000

flight 183140 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183140/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 183130
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183130
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183130
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183130
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183130
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183130
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183130
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183130
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183130
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183130
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183130
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183130
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  88a9501a848aade858a3bbda75f20cdf7c3c2f9a
baseline version:
 xen                  88a9501a848aade858a3bbda75f20cdf7c3c2f9a

Last test of basis   183140  2023-09-24 01:52:03 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Sun Sep 24 15:43:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 24 Sep 2023 15:43:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607505.945767 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkRG1-0001Wx-G3; Sun, 24 Sep 2023 15:42:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607505.945767; Sun, 24 Sep 2023 15:42:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkRG1-0001Wq-D4; Sun, 24 Sep 2023 15:42:53 +0000
Received: by outflank-mailman (input) for mailman id 607505;
 Sun, 24 Sep 2023 15:42:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=f+CP=FI=gmail.com=shentey@srs-se1.protection.inumbo.net>)
 id 1qkRG0-0001Wk-66
 for xen-devel@lists.xenproject.org; Sun, 24 Sep 2023 15:42:52 +0000
Received: from mail-ej1-x632.google.com (mail-ej1-x632.google.com
 [2a00:1450:4864:20::632])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0369ba27-5af1-11ee-878a-cb3800f73035;
 Sun, 24 Sep 2023 17:42:48 +0200 (CEST)
Received: by mail-ej1-x632.google.com with SMTP id
 a640c23a62f3a-9adca291f99so598889266b.2
 for <xen-devel@lists.xenproject.org>; Sun, 24 Sep 2023 08:42:48 -0700 (PDT)
Received: from [127.0.0.1] ([45.156.240.107]) by smtp.gmail.com with ESMTPSA id
 cb8-20020a170906a44800b00988dbbd1f7esm5084289ejb.213.2023.09.24.08.42.39
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sun, 24 Sep 2023 08:42:47 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0369ba27-5af1-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695570168; x=1696174968; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:references
         :in-reply-to:subject:cc:to:from:date:from:to:cc:subject:date
         :message-id:reply-to;
        bh=LWBG+YH766oJNTrELCkIiNWNPaRxfIwWYhgiFOEvuKg=;
        b=LWiXaGny7oTe3H4xc5aq/EYXRH7GbAD/tqhZUvXvix+K5CDvD/ugle0iToZKhzNEmy
         wyGnx4EqmCJhCcDqszXG7F2Mt9tpGTESZFstQfJvnKAvA8/xsBhZEkMjB3/qfRn/DAZK
         ubt47HLdqgdN9bNVvAhn/qXpf3mDFp8CS7gcA1TTmmhNwwOCerIZUDHdQ1D89AfEiY3x
         8I34RzW9kuQU/z7tmG1fgUvutPE7qsQQkwPPDiFgGEFX8KtigGC9M2dthiq2VGXDQxqr
         gJrRnCHRFL/of4acRhYLXO96ly3zbgcArCK2MJfxelBfRU82CREoePksUkUFVXPHvhME
         al2g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695570168; x=1696174968;
        h=content-transfer-encoding:mime-version:message-id:references
         :in-reply-to:subject:cc:to:from:date:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=LWBG+YH766oJNTrELCkIiNWNPaRxfIwWYhgiFOEvuKg=;
        b=iXeG3rAsOH3XEeRFvfSALQfsQOztV2jqwk9KF49MLX+f/A5ANiOviHjmYT3bfzv6Fm
         ywhBYd4ZI1cE1Q8oZ7zuXwhpZK/CKckeZipnxpgOWSkzRmWCrSexNP93705CNLuCb28w
         PhYaBzHdOCN7zmczURMwwz4vZtH+dsW+EiiV019m4lJ0FSkp5pcUDyHN8hZ+wRDEt95o
         uFOUxEtS47onRWAd/TcYBq+OcnzR8yZWPglg5YYMlwXWgEscfY3+JgGHJkXyUANwe8AZ
         iKMiplCW53EwofFv9ebvCxcDOgwHSGNvj1hs+nCJ7wdAeN+BcOw6VL0ORhOYiBUqqBfb
         e5Vw==
X-Gm-Message-State: AOJu0YxN/Pv+8M2/wN2s+tlnyA2EYwCo0rz3ej7WuHrMZYehTv4LyD75
	LGys9GmqW7rG5Sqjx/veekw=
X-Google-Smtp-Source: AGHT+IGPnzNMZCBk+2gBWnkiDWgieKr3VB50FHyY5+zKG+3R7UkW+kmw8eSQ6bRZTQpMn944x+9hyw==
X-Received: by 2002:a17:906:3089:b0:9a2:1e03:1572 with SMTP id 9-20020a170906308900b009a21e031572mr4325758ejv.19.1695570168028;
        Sun, 24 Sep 2023 08:42:48 -0700 (PDT)
Date: Sun, 24 Sep 2023 15:41:54 +0000
From: Bernhard Beschow <shentey@gmail.com>
To: Chuck Zmudzinski <brchuckz@aol.com>, Jason Andryuk <jandryuk@gmail.com>,
 Anthony PERARD <anthony.perard@citrix.com>
CC: qemu-devel@nongnu.org, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
 Paolo Bonzini <pbonzini@redhat.com>, David Woodhouse <dwmw@amazon.co.uk>,
 =?ISO-8859-1?Q?Herv=E9_Poussineau?= <hpoussin@reactos.org>,
 Aurelien Jarno <aurelien@aurel32.net>, Eduardo Habkost <eduardo@habkost.net>,
 Paul Durrant <paul@xen.org>, xen-devel@lists.xenproject.org,
 "Michael S. Tsirkin" <mst@redhat.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Richard Henderson <richard.henderson@linaro.org>,
 =?ISO-8859-1?Q?Philippe_Mathieu-Daud=E9?= <philmd@linaro.org>
Subject: =?US-ASCII?Q?Re=3A_=5BPATCH_v3_2/6=5D_hw/isa/piix3=3A_Reuse?= =?US-ASCII?Q?_piix3=5Frealize=28=29_in_piix3=5Fxen=5Frealize=28=29?=
In-Reply-To: <6cd8d49f-2b69-471c-84b7-890f31f585b5@aol.com>
References: <20230312120221.99183-1-shentey@gmail.com> <20230312120221.99183-3-shentey@gmail.com> <f52c41f7-e662-4afd-8ac9-ce2c0da2b1be@perard> <7F45B51F-F1E3-4F04-A46F-4C80509C7195@gmail.com> <622b9674-fffd-4634-ac30-d0db3230478e@perard> <CAKf6xpvxf=F52etJ8o3eLQV4JVD5WM57znGoP3ctONRf7uPisA@mail.gmail.com> <B0FF78F4-1193-495B-919C-84A1FF8ADF12@gmail.com> <6cd8d49f-2b69-471c-84b7-890f31f585b5@aol.com>
Message-ID: <2541916E-6DA9-4DB9-A022-CD865B70F453@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable



Am 20=2E September 2023 14:44:23 UTC schrieb Chuck Zmudzinski <brchuckz@ao=
l=2Ecom>:
>On 9/19/2023 4:02 PM, Bernhard Beschow wrote:
>>=20
>>=20
>> Am 3=2E April 2023 12:27:14 UTC schrieb Jason Andryuk <jandryuk@gmail=
=2Ecom>:
>>>On Mon, Apr 3, 2023 at 5:33=E2=80=AFAM Anthony PERARD <anthony=2Eperard=
@citrix=2Ecom> wrote:
>>>>
>>>> On Sat, Apr 01, 2023 at 10:36:45PM +0000, Bernhard Beschow wrote:
>>>> >
>>>> >
>>>> > Am 30=2E M=C3=A4rz 2023 13:00:25 UTC schrieb Anthony PERARD <anthon=
y=2Eperard@citrix=2Ecom>:
>>>> > >On Sun, Mar 12, 2023 at 01:02:17PM +0100, Bernhard Beschow wrote:
>>>> > >> This is a preparational patch for the next one to make the follo=
wing
>>>> > >> more obvious:
>>>> > >>
>>>> > >> First, pci_bus_irqs() is now called twice in case of Xen where t=
he
>>>> > >> second call overrides the pci_set_irq_fn with the Xen variant=2E
>>>> > >
>>>> > >pci_bus_irqs() does allocates pci_bus->irq_count, so the second ca=
ll in
>>>> > >piix3_xen_realize() will leak `pci_bus->irq_count`=2E Could you lo=
ok if
>>>> > >pci_bus_irqs_cleanup() can be called before the second pci_bus_irq=
s()
>>>> > >call, or maybe some other way to avoid the leak?
>>>> >
>>>> > Thanks for catching this! I'll post a v4=2E
>>>> >
>>>> > I think the most fool-proof way to fix this is to free irq_count ju=
st before the assignment=2E pci_bus_irqs_cleanup() would then have to NULL =
the attribute such that pci_bus_irqs() can be called afterwards=2E
>>>> >
>>>> > BTW: I tried running qemu-system-x86_64 with PIIX4 rather than PIIX=
3 as Xen guest with my pc-piix4 branch without success=2E This branch essen=
tially just provides slightly different PCI IDs for PIIX=2E Does xl or some=
thing else in Xen check these? If not then this means I'm still missing som=
ething=2E Under KVM this branch works just fine=2E Any idea?
>>>>
>>>> Maybe the ACPI tables provided by libxl needs to be updated=2E
>>>> Or maybe something in the firmware (SeaBIOS or OVMF/OvmfXen) check th=
e
>>>> id (I know that the PCI id of the root bus is checked, but I don't kn=
ow
>>>> if that's the one that's been changed)=2E
>>>
>>>Xen also has hvmloader, which runs before SeaBIOS/OVMF=2E  Looking at
>>>tools/firmware/hvmloader/pci=2Ec, it has
>>>        ASSERT((devfn !=3D PCI_ISA_DEVFN) ||
>>>               ((vendor_id =3D=3D 0x8086) && (device_id =3D=3D 0x7000))=
);
>>>
>>>From QEMU, it looks like 0x7000 is PCI_DEVICE_ID_INTEL_82371SB_0, but
>>>PIIX4 uses 0x7110 (PCI_DEVICE_ID_INTEL_82371AB_0)=2E  Maybe try removin=
g
>>>that check?
>>=20
>> I was finally able to build Xen successfully (without my distribution p=
roviding too recent dependencies that prevent compilation)=2E With 0x7110 a=
dded in the line above I could indeed run a Xen guest with PIIX4=2E Yay!
>>=20
>> Now I just need to respin my PIIX consolidation series=2E=2E=2E
>
>Welcome to the world of running guests on Xen! I am the one who tested yo=
ur earlier patches with Xen guests,

Thanks, I remember for sure!

> and I just wanted to say thanks for keeping me in the loop=2E Please Cc =
me when you post your respin of the PIIX consolidation series since I would=
 like to also test it in my Xen environment=2E I understand I will also nee=
d to patch hvmloader=2Ec on the Xen side to set the correct device id=2E

I'd add your e-mail to the recipients list in my Git then=2E

For those who want a sneak preview of PIIX4 in the PC machine may compile =
https://github=2Ecom/shentok/qemu/tree/piix-consolidate and run `qemu-syste=
m-x86_64 -M pc,south-bridge=3Dpiix4-isa`=2E It should work with all availab=
le virtualization technologies=2E

Best regards,
Bernhard

>
>Kind regards,
>
>Chuck
>
>>=20
>> Best regards,
>> Bernhard
>>=20
>>>
>>>Regards,
>>>Jason
>


From xen-devel-bounces@lists.xenproject.org Sun Sep 24 17:53:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 24 Sep 2023 17:53:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607518.945776 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkTIa-0006Ng-D3; Sun, 24 Sep 2023 17:53:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607518.945776; Sun, 24 Sep 2023 17:53:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkTIa-0006NY-A4; Sun, 24 Sep 2023 17:53:40 +0000
Received: by outflank-mailman (input) for mailman id 607518;
 Sun, 24 Sep 2023 17:53:38 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkTIY-0006NO-D5; Sun, 24 Sep 2023 17:53:38 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkTIY-0003Jg-5U; Sun, 24 Sep 2023 17:53:38 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkTIX-0003XX-O1; Sun, 24 Sep 2023 17:53:37 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qkTIX-0001Zo-NX; Sun, 24 Sep 2023 17:53:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=hPPPh0TRCn0Ws6m/pZ7oboTpK+VJHtL77fcqZlL2brI=; b=bfPEFD0lGbIogqBLGzowPeJc9W
	mVt3KLJVrMYPsJnk5L8/vgUbkYJQ+3SvxamdOSzcbMMNh+Re7t4VIMoJiNCuGO346NZwHKipWftp4
	vuONtb7XL4gUZqGpxIwhPwEjfFWTU3HstUT8qvGUSj1hJocMZmhg2lR8/vTqc+1sn47o=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183142-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183142: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=3aba70aed91f2b283f7952be152ad76ec5c34975
X-Osstest-Versions-That:
    linux=5a4de7dc9e77ca914bb050e6d661624a43db794c
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 24 Sep 2023 17:53:37 +0000

flight 183142 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183142/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt   16 saverestore-support-check fail blocked in 183135
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183135
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183135
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183135
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183135
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183135
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183135
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183135
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                3aba70aed91f2b283f7952be152ad76ec5c34975
baseline version:
 linux                5a4de7dc9e77ca914bb050e6d661624a43db794c

Last test of basis   183135  2023-09-23 18:40:09 Z    0 days
Testing same since   183142  2023-09-24 06:57:23 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alexey Dobriyan <adobriyan@gmail.com>
  Andrew Morton <akpm@linux-foundation.org>
  Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
  Ben Wolsieffer <ben.wolsieffer@hefring.com>
  Christophe JAILLET <christophe.jaillet@wanadoo.fr>
  Geert Uytterhoeven <geert+renesas@glider.be>
  Jens Axboe <axboe@kernel.dk>
  Johannes Weiner <hannes@cmpxchg.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linus Walleij <linus.walleij@linaro.org>
  Michael Walle <michael@walle.cc>
  Michal Hocko <mhocko@suse.com>
  Oleg Nesterov <oleg@redhat.com>
  Paulo Alcantara (SUSE) <pc@manguebit.com>
  Paulo Alcantara <pc@manguebit.com>
  Randy Dunlap <rdunlap@infradead.org>
  Ryan Roberts <ryan.roberts@arm.com>
  Shakeel Butt <shakeelb@google.com>
  Steve French <stfrench@microsoft.com>
  Tom Talpey <tom@talpey.com>
  Yin Fengwei <fengwei.yin@intel.com>
  Zhang Xiaoxu <zhangxiaoxu5@huawei.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-freebsd11-amd64                             pass    
 test-amd64-amd64-freebsd12-amd64                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-amd64-xl-vhd                                      pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

hint: The 'hooks/update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-receive' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
To xenbits.xen.org:/home/xen/git/linux-pvops.git
   5a4de7dc9e77..3aba70aed91f  3aba70aed91f2b283f7952be152ad76ec5c34975 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sun Sep 24 23:49:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sun, 24 Sep 2023 23:49:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607555.945787 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkYqs-0006QH-Rt; Sun, 24 Sep 2023 23:49:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607555.945787; Sun, 24 Sep 2023 23:49:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkYqs-0006Q7-NB; Sun, 24 Sep 2023 23:49:26 +0000
Received: by outflank-mailman (input) for mailman id 607555;
 Sun, 24 Sep 2023 23:49:25 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkYqr-0006Pv-S8; Sun, 24 Sep 2023 23:49:25 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkYqq-0003Lk-UY; Sun, 24 Sep 2023 23:49:24 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkYqq-0004LX-Bd; Sun, 24 Sep 2023 23:49:24 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qkYqq-0007dT-9V; Sun, 24 Sep 2023 23:49:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=MNKcA2QAKi0GJQI5WFsJsE6A4m+fZqvn9Va33Hjhmt4=; b=aS2H+2xBX+/KrZTHEHUGT0oaZv
	bNBxpCAGG5bQJxR1u1dT4bLJFEdzblkw1TPS29d68hu0hepv21t5qUiLgT+T2wxGLvzXqSubeKNc4
	hF3Mxyjgw25E4a46xUlgM06scmXkwY7atpyyylifJOBc2CtG9ZtdTwzRp01xL9/1j1k8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183144-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183144: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start.2:fail:regression
    linux-5.4:test-amd64-amd64-xl-pvshim:guest-localmigrate/x10:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    linux-5.4:test-arm64-arm64-libvirt-raw:guest-start.2:fail:heisenbug
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:heisenbug
    linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:heisenbug
    linux-5.4:test-amd64-amd64-dom0pvh-xl-amd:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sun, 24 Sep 2023 23:49:24 +0000

flight 183144 linux-5.4 real [real]
flight 183147 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183144/
http://logs.test-lab.xenproject.org/osstest/logs/183147/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1  19 guest-start.2            fail REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-pvshim 20 guest-localmigrate/x10 fail in 183129 pass in 183144
 test-armhf-armhf-xl-credit1  14 guest-start      fail in 183129 pass in 183144
 test-arm64-arm64-libvirt-raw 18 guest-start.2    fail in 183129 pass in 183144
 test-amd64-i386-xl-qemut-debianhvm-amd64 7 xen-install fail in 183137 pass in 183144
 test-amd64-i386-xl-qemuu-debianhvm-amd64 7 xen-install fail in 183137 pass in 183144
 test-amd64-amd64-dom0pvh-xl-amd 22 guest-start/debian.repeat fail in 183137 pass in 183144
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 183137 pass in 183144
 test-armhf-armhf-libvirt-qcow2 13 guest-start    fail in 183137 pass in 183144
 test-armhf-armhf-xl-vhd 17 guest-start/debian.repeat fail in 183137 pass in 183144
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail pass in 183129
 test-armhf-armhf-xl-credit2  14 guest-start                fail pass in 183137
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183137

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 183137 blocked in 182613
 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail in 183137 like 182613
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 183137 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 183137 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   22 days
Testing same since   183129  2023-09-23 09:20:22 Z    1 days    3 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               fail    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 01:26:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 01:26:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607565.945800 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkaM3-0001YR-IO; Mon, 25 Sep 2023 01:25:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607565.945800; Mon, 25 Sep 2023 01:25:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkaM3-0001YK-Du; Mon, 25 Sep 2023 01:25:43 +0000
Received: by outflank-mailman (input) for mailman id 607565;
 Mon, 25 Sep 2023 01:25:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkaM2-0001YE-CC
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 01:25:42 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20600.outbound.protection.outlook.com
 [2a01:111:f400:7d00::600])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6f03d209-5b42-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 03:25:39 +0200 (CEST)
Received: from AS4P192CA0008.EURP192.PROD.OUTLOOK.COM (2603:10a6:20b:5da::6)
 by AS8PR08MB8945.eurprd08.prod.outlook.com (2603:10a6:20b:5b5::12) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 01:25:31 +0000
Received: from AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:5da:cafe::6e) by AS4P192CA0008.outlook.office365.com
 (2603:10a6:20b:5da::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 01:25:31 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT063.mail.protection.outlook.com (100.127.140.221) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.18 via Frontend Transport; Mon, 25 Sep 2023 01:25:30 +0000
Received: ("Tessian outbound 5c548696a0e7:v175");
 Mon, 25 Sep 2023 01:25:30 +0000
Received: from ba72c6b69c28.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 CFCAABC7-F42F-47BB-BBB8-CF481D85C437.1; 
 Mon, 25 Sep 2023 01:25:19 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ba72c6b69c28.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 01:25:19 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV1PR08MB7900.eurprd08.prod.outlook.com (2603:10a6:150:5f::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.25; Mon, 25 Sep
 2023 01:25:16 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 01:25:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6f03d209-5b42-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=b/vZMDp7KTt0o+VWPvt+26ms4pghEwvn0k7H3jh0O5c=;
 b=4MOpo2qViPv87DfxDrxuAaNDa6bSW7E94YhMG2dhUQmrPNC3EGkravJMfBC6M+koEV1eEcwtLns1aOVHkCPdu/5MHdZeJlLMil7B+HFhA6qLGMloN1pDL/5cg9u4hszyll4Xfd4b4G7tQzxRAoShsXNYGSvXbOjuEuqJNEhdY8Y=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 0701ac3117f8ebf2
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ndjgbas92fQECCAqHFLjm0yWkn3Z8DtkbHF6S7IIv1+cnTTdG9wBqKtHN1ydfD1BuzvNbo6JikVzNe55dX+nFCR5NX9b58U2ZTooZzsqznHDvxHeLv5HeBZs0DRLwuyzQVp6dA5hiLrsVZ4OY76ujzdiTzpzr15fj1xSze18csVpejUnLCHY+KxrteETEPNkbbwXMYVapwUjC1rwNTiysE8FCltbgRKqIodtoa7jduyhLTTiQKnMJnsdiJnwa9w9YDNgQU5jY6x2/SIj8CSaAFsvtKhl/KE9No38o4RyKIfCZBc6jqhAdrNb4L7hPIlnkSGRAPvWu+jDsmNj628RZA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=b/vZMDp7KTt0o+VWPvt+26ms4pghEwvn0k7H3jh0O5c=;
 b=cONU6I4R1/uHYRJk32nmAL32qkL6VQJ/+Fiot2OA7dIBX6T5AUwL4m0dPi33s2Q8XDFcpDG+HBZ30jC/JHjEYyN4ls5XV5fZA9CK23HK62GrK1BlHfwVTyf3e+eEEDGkT0OwEjeWRlbVV8iVbtgfVGlAaQdLmRojfLdzG3p/cAyqpRSAqXWAAZoh2JNvnYDjDvYgnYGbE6UubJ5sHnz93DgRubk8THnLEgFCfr5t15vFqAVvHou7t9NEUgY8BK5bJ7w//O9C7LIaiW2hm5cu23ErjwmnfbQvpnlWqDItA0fZia0+Nz+55vFc0iGmiHxwDbjxes4n4iuhDeqCoxhLEg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=b/vZMDp7KTt0o+VWPvt+26ms4pghEwvn0k7H3jh0O5c=;
 b=4MOpo2qViPv87DfxDrxuAaNDa6bSW7E94YhMG2dhUQmrPNC3EGkravJMfBC6M+koEV1eEcwtLns1aOVHkCPdu/5MHdZeJlLMil7B+HFhA6qLGMloN1pDL/5cg9u4hszyll4Xfd4b4G7tQzxRAoShsXNYGSvXbOjuEuqJNEhdY8Y=
From: Henry Wang <Henry.Wang@arm.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
	"sstabellini@kernel.org" <sstabellini@kernel.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Jan Beulich <jbeulich@suse.com>,
	"jgross@suse.com" <jgross@suse.com>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
	"community.manager@xenproject.org" <community.manager@xenproject.org>
Subject: Xen 4.18 release: Reminder about code freeze
Thread-Topic: Xen 4.18 release: Reminder about code freeze
Thread-Index: AQHZ705Dwyrpd4I60kahQfZlaJ2JtA==
Date: Mon, 25 Sep 2023 01:25:16 +0000
Message-ID:
 <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|GV1PR08MB7900:EE_|AM7EUR03FT063:EE_|AS8PR08MB8945:EE_
X-MS-Office365-Filtering-Correlation-Id: c2512685-89dd-4c86-f6a6-08dbbd664e83
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 D5OOeEDICQV8FGENy9FO8ntCSgNU2OmZuCuaQyouKBRA1UR1sxN55jJrMpioM7OJmyIBUprh8Ub73HP8ChxPpF7dHvHeDgoqKgIy0l8fuENx8b3euyKQveijPusPDjd5qJMy617voihjxVT/IFAj3vi2UxeLnH7o7WBj87nUnrCFqxRVhZyueXCNwMNVzwxwNJgxIaVA+TcACdAhuKR6DuEVXRNjLKxvsFJioR17BoOyLPGw8eIe0b6bSC6N0/e8YzUzI4V5glbDcOIghJWObAtoB5P4vWtdno+DXHATOiCU57F3HobNly/GU68HUS1O9tg5ieiLOz705nj/U/R3nES84ELbSUFVpiAomiqe7iaMwphVPJe1SGgQCcodny3RJW8c5g+5IpdwbM+K4fPVLVmop5fTK1zBLl3pYpNSU51biVPvr0JnI7+KDFwSNfso6a4NXx6+buWSbPwGT6P0LHs86JoLPx7KSxXcL2QprCcoVyGMxiKKGscwnDjwIwighVJzmHD4yIQ+6w3gIASl5VCCtV4xZ+cFF9lJW9xO0WE3kH+8ga8/hNh2mugjU50dySL7k0+F9Zzxyms5CLOWSfE4febOaDpR8KflnLuy/dxu815CEQL8D1EQN5n7vwVOHEkLDopM1TDmwJik9wU9EQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(136003)(346002)(39850400004)(376002)(230922051799003)(186009)(1800799009)(451199024)(55016003)(2906002)(83380400001)(4744005)(166002)(122000001)(38070700005)(38100700002)(66946007)(9686003)(76116006)(66556008)(66476007)(66446008)(64756008)(54906003)(966005)(478600001)(52536014)(6506007)(71200400001)(5660300002)(26005)(6916009)(316002)(41300700001)(4326008)(8936002)(8676002)(7696005)(86362001)(33656002);DIR:OUT;SFP:1101;
Content-Type: multipart/alternative;
	boundary="_000_AS8PR08MB7991D1099E32CC9F03B0E0F692FCAAS8PR08MB7991eurp_"
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7900
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	f552aa30-54a8-4b2e-519b-08dbbd664600
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	D4JZgi8Sb2bYWL+KiA5Ka+bZ8sVhylOtctH8CH/7EupxN/GV6CG1scOtl1z+bAfKxHHorxG/s8hBoM7XrfawaXLod8vZ5p7Uu62MiFEZT5IHO1Ogg5QZ6v2bnBKkynaUieR4TZpPdmrnogcW1anSWP6MEKvjNSISBDlnBHEGOjLaRyXD4nlB69HKHNwV1CvvPv1Fn1xQxaHso/uZDhNbrl2RdxxlJOEeG2DnHtgFJLEvHMqkcnEJqLMZA86rt61AkPfvmoCUWf69y5E2DYyzYh2WtB30up+1/5EqYISAE4/juhmpL0XtJ4PQiSgbhI46seu8HZ+WtJDJVvTOKy7SAwYND5UWhMdu8e271g7R/V38UPHboY3lKhzS6T7u68J+zUHSaMHCtCwUmizrPJent89NhLtl6C9m3wkscg4wtHDzlw6691556+onmHkg/z9z17HxErVe01M7cQoUkigKdxbzbojTB89buOQ9FAok3QwOshh4j0vRG/IgEqNYYwQcVz8EapOhBWwMVrxhWn3JoOH+lCAZm3KK6llFkzRYAot1mBkS/jU7LtsczUrNPcWHs90hGSH6HP+ZCBcuyzcQYUjXItBaUnoaAHT8uEHouXKlENhwcyi8UoQu7D87lNTrcn6goJjye0uyF9JwT0HbcTJSdnSPGZGWh6ieU2bGrlp5Pzr9cPJDsbPUxdTmniwYWMCkZ9PNiipIT3XbisX2OStkngc8OTyyMc5l8qhVqVo=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39850400004)(376002)(136003)(396003)(346002)(230922051799003)(186009)(82310400011)(1800799009)(451199024)(46966006)(36840700001)(2906002)(55016003)(33656002)(86362001)(336012)(26005)(9686003)(7696005)(6506007)(166002)(36860700001)(356005)(82740400003)(83380400001)(81166007)(47076005)(966005)(478600001)(40480700001)(70206006)(5660300002)(70586007)(54906003)(52536014)(6916009)(316002)(8936002)(8676002)(4326008)(41300700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 01:25:30.3861
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c2512685-89dd-4c86-f6a6-08dbbd664e83
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8945

--_000_AS8PR08MB7991D1099E32CC9F03B0E0F692FCAAS8PR08MB7991eurp_
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hi everyone,

This is the reminder that we are currently in code freeze. The hard code
freeze date will be in two weeks, i.e. Fri Oct 6, 2023.

The planned date for 4.18 rc1 is this Friday, i.e. Sep 29, 2023.

Also, below is the (updated) critical items on my list for 4.18 release:
1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
https://gitlab.com/xen-project/xen/-/issues/114

2. tools: Switch to non-truncating XENVER_* ops
https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3@cit=
rix.com/

3. dom0less vs xenstored setup race Was: xen | Failed pipeline for staging =
| 6a47ba2f
https://marc.info/?l=3Dxen-devel&m=3D168312468808977
https://marc.info/?l=3Dxen-devel&m=3D168312687610283

4. [PATCH v2 0/8] Fixes to debugging facilities
https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gmai=
l.com/

Kind regards,
Henry

--_000_AS8PR08MB7991D1099E32CC9F03B0E0F692FCAAS8PR08MB7991eurp_
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<html xmlns:o=3D"urn:schemas-microsoft-com:office:office" xmlns:w=3D"urn:sc=
hemas-microsoft-com:office:word" xmlns:m=3D"http://schemas.microsoft.com/of=
fice/2004/12/omml" xmlns=3D"http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Diso-8859-=
1">
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:DengXian;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:"\@DengXian";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-ligatures:standardcontextual;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style>
</head>
<body lang=3D"en-CN" link=3D"#0563C1" vlink=3D"#954F72" style=3D"word-wrap:=
break-word">
<div class=3D"WordSection1">
<p class=3D"MsoNormal">Hi everyone,<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">This is the reminder that we are currently in code f=
reeze. The hard code<o:p></o:p></p>
<p class=3D"MsoNormal">freeze date will be in two weeks, i.e. Fri Oct 6, 20=
23.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">The planned date for 4.18 rc1 is this Friday, i.e. S=
ep 29, 2023.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Also, below is the (updated) critical items on my li=
st for 4.18 release:<o:p></o:p></p>
<p class=3D"MsoNormal">1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of=
 N)<o:p></o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://gitlab.com/xen-project/xen/-/issu=
es/114">https://gitlab.com/xen-project/xen/-/issues/114</a><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">2. tools: Switch to non-truncating XENVER_* ops<o:p>=
</o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://lore.kernel.org/xen-devel/2023011=
7135336.11662-1-andrew.cooper3@citrix.com/">https://lore.kernel.org/xen-dev=
el/20230117135336.11662-1-andrew.cooper3@citrix.com/</a><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">3. dom0less vs xenstored setup race Was: xen | Faile=
d pipeline for staging | 6a47ba2f<o:p></o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://marc.info/?l=3Dxen-devel&amp;m=3D=
168312468808977">https://marc.info/?l=3Dxen-devel&amp;m=3D168312468808977</=
a><o:p></o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://marc.info/?l=3Dxen-devel&amp;m=3D=
168312687610283">https://marc.info/?l=3Dxen-devel&amp;m=3D168312687610283</=
a><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">4. [PATCH v2 0/8] Fixes to debugging facilities<o:p>=
</o:p></p>
<p class=3D"MsoNormal"><a href=3D"https://lore.kernel.org/xen-devel/21cc28b=
9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/">https://lore.kernel.org/xen-devel=
/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/</a><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Kind regards,<o:p></o:p></p>
<p class=3D"MsoNormal">Henry<o:p></o:p></p>
</div>
</body>
</html>

--_000_AS8PR08MB7991D1099E32CC9F03B0E0F692FCAAS8PR08MB7991eurp_--


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 05:20:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 05:20:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607582.945816 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qke1A-0000np-TZ; Mon, 25 Sep 2023 05:20:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607582.945816; Mon, 25 Sep 2023 05:20:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qke1A-0000ne-P0; Mon, 25 Sep 2023 05:20:24 +0000
Received: by outflank-mailman (input) for mailman id 607582;
 Mon, 25 Sep 2023 05:20:23 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qke19-0000nT-An; Mon, 25 Sep 2023 05:20:23 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qke19-000397-4L; Mon, 25 Sep 2023 05:20:23 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qke18-0005cv-MV; Mon, 25 Sep 2023 05:20:22 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qke18-0004pz-M3; Mon, 25 Sep 2023 05:20:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=eSo1ejaH9pbF09lz8+iOkwPvc75eBL8Mnh0uexTcUMI=; b=RNQy46RJT2ZOLxA/VLPVlxhBEJ
	oc74x4iNtt6CndK6Gu+6SvI2x7FmNf2NMfFUMDhpioBi7/b7RqYZyKzuuxYAbO+IjhidbLDq6TqPe
	EYQDwxhU8fKqlg5ppVqJjHCsmtFh8nQl6CTPrpPEaHaUJO5n+yLUqvkolIMMD1GszBpM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183146-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183146: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=6465e260f48790807eef06b583b38ca9789b6072
X-Osstest-Versions-That:
    linux=3aba70aed91f2b283f7952be152ad76ec5c34975
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 25 Sep 2023 05:20:22 +0000

flight 183146 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183146/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183142
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183142
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183142
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183142
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183142
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183142
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183142
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183142
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                6465e260f48790807eef06b583b38ca9789b6072
baseline version:
 linux                3aba70aed91f2b283f7952be152ad76ec5c34975

Last test of basis   183142  2023-09-24 06:57:23 Z    0 days
Testing same since   183146  2023-09-24 21:43:31 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alison Schofield <alison.schofield@intel.com>
  Andrew Jones <ajones@ventanamicro.com>
  Anup Patel <anup@brainfault.org>
  Anup Patel <apatel@ventanamicro.com>
  Bjorn Helgaas <bhelgaas@google.com>
  Dan Williams <dan.j.williams@intel.com>
  Dave Jiang <dave.jiang@intel.com>
  Ira Weiny <ira.weiny@intel.com>
  Jean-Philippe Brucker <jean-philippe@linaro.org>
  Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Kees Cook <keescook@chromium.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Marc Zyngier <maz@kernel.org>
  Marek Szyprowski <m.szyprowski@samsung.com>
  Paolo Bonzini <pbonzini@redhat.com>
  Sean Christopherson <seanjc@google.com>
  Smita Koralahalli <Smita.KoralahalliChannabasappa@amd.com>
  Steven Rostedt (Google) <rostedt@goodmis.org>
  Tom Lendacky <thomas.lendacky@amd.com>
  Zheng Yejian <zhengyejian1@huawei.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-freebsd11-amd64                             pass    
 test-amd64-amd64-freebsd12-amd64                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-amd64-xl-vhd                                      pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

hint: The 'hooks/update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-receive' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
To xenbits.xen.org:/home/xen/git/linux-pvops.git
   3aba70aed91f..6465e260f487  6465e260f48790807eef06b583b38ca9789b6072 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 06:27:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 06:27:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607599.945832 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkf4H-0000bH-P3; Mon, 25 Sep 2023 06:27:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607599.945832; Mon, 25 Sep 2023 06:27:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkf4H-0000bA-Lp; Mon, 25 Sep 2023 06:27:41 +0000
Received: by outflank-mailman (input) for mailman id 607599;
 Mon, 25 Sep 2023 06:27:40 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3u+g=FJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qkf4G-0000b4-Jv
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 06:27:40 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0627.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::627])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9da6adcc-5b6c-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 08:27:36 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9590.eurprd04.prod.outlook.com (2603:10a6:102:26f::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 06:27:33 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 06:27:33 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9da6adcc-5b6c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VR+BfpqrA+uxwcDHtTbKzou6eMvPgcR95Hk4/GN2pwWNe3HRy90/PJoaKXO38sM4/JBAJcVw3H9GSt0vBghZrXmBD0vqkpzqgFUMOHExLHsAvI3LfjbVGl1LOFiogASv/n+e1nZuABRZ8JZQ3AV4tYi9ETYUlvOZFKXuLN6sI8nMQpLYLZYc3Bpu2SZPX6koWb0h1Jz06FH7nJqSd1R5vLPb3RGkPd0Sy3xjTCfsGqs0GV9kTkmFG00WayHTxc17Q/IhTI34LPbcCcPBw+SsWokbYwUHOiaPrmCQpVJt2F41EYv7mOSM8lMa7PHnGSHUgqPrzezFGCfcF9BibeC8Hw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IvuiRjexU03dbnKbKOVxRvKyg68cezPlfdqLGdKR/AQ=;
 b=eaac23IxC+9hZmcM6/dcgl2tCPF3R9VlCDGCj/HXitA7opyYnH+N2h2o/otWeu1DqdVXbBjtfczokxPMer6UYfDV2N/LpDUzAipgNgQAErwyuZ4PBKg30xN7Gd4yU36/lfqnEB3TdjlTaEBIVoNszgWSyYLL1AHoArlhNoLiCEApavS+wd8GR4RCxpBglwTNLSYpLPs5c+ty4hlWV68rLcD8tPiG6KitTAHROLTReeIfbLAV+fqSmltMfsHkgHSXJKGpnaRUQEJFv8z0MeY81YbIQY59+6JVoyaA+/W1CS30iF2/jgxiZHy2LOqJXknJTArd9KjAhVdephwGFLc3Kw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IvuiRjexU03dbnKbKOVxRvKyg68cezPlfdqLGdKR/AQ=;
 b=XAS///hNxKfwHtaqJ6bnQeB2YCp/My2w7O1K0m2CO/tf6ZW2xIo6DxIMeUMbL0G/izzm6UCCsa1MDfggTxx2PsRYM3UoHD6vsTkT3WUs0JZH7Fxf6jayKh3Ua/QbBrQ0QbyZFPUlFdrpUby5L/5GfTHxOtxnDEECW3g71yWwTouGxAdZgGVluEbyD/upMd97XAkZr+m48kcFgmvQzFTJKyDequByVbGwqhfZB5nA53d4E72moT61HgQaDR1M4Fput5JBKOB0XKYzGcwacZZOAIsG5BLaLkbKPWCEcBtTUXMF7OgWJgAVeWcfqD18EHokJJbKQLqM67lJO6em9x48fA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b9966ac8-dfc6-b6c4-bf61-05a8b61f9ac3@suse.com>
Date: Mon, 25 Sep 2023 08:27:31 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH WIP] xen/public: move incomplete type definitions to xen.h
Content-Language: en-US
To: Elliott Mitchell <ehem+xen@m5p.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
References: <7a880e33ff91d0c76986159e3559c56ee6894d21.1695324653.git.ehem+xen@m5p.com>
 <7aaf91c7-6330-fffc-8df6-4be4b531f456@suse.com>
 <ZQ21//HP/d2Ppdrh@mattapan.m5p.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZQ21//HP/d2Ppdrh@mattapan.m5p.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0180.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9f::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB9590:EE_
X-MS-Office365-Filtering-Correlation-Id: 9151b42a-fb17-41ca-af26-08dbbd90804d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	4bksDDkYypJ1RdRm2G9cQEnbh6mz6nx9NQZnhpyogjx6IZ05kNv2rfY+iRyZ3xxy58FoHL7ILV713Ys0rknaSF91tQRsAp8Pw6QqY5epblYGq8/tS6NySTlidOOh0GohaXF6U9cJGP47GewsM387I9SpjJZMjkFXfCTC/z1TkzzwhLoSV19TXRMPTrCQiAo/br+DtEi4G/JU/Yy7/yrbL9sszKHXJdSzIfD7RaaY42jtCNUxdlvhHQojn4tv53sN7Jx/PwAPLYDiJNyLn16z+VMGBPY54lKS+2PskPk5boRksgICJmdHLNAHbaNgn3ZbdKJ/MMY7+I6Bv20hCz4r0JJZZGwKk/0JsSbPOHktUQf7+Oa6P3ViiAd9TxzDEV+u0CPQ2g0mR7wuRqPfyPCq9zcbeP9tPDTNCp7ba1b3sVBzvBe4cQVJ/k7XEMXa01U5gVhSSXbtvUP/t7VD60C7lX1ZwOufmsPYQ3H8cNoomyeSHfdmzqUBrvFq+cGaOwr4s+eYHnnNOn8jD1Qj+Or1ToXAq44EJ6BBx2xOOIfU8aVlpbBsZw6a6nvuSRo3i6jxBa7T78fbWaKHFo9CZovTbdaB+rTU1xSCxlxqb9wT5F/9ZqeSmOqiG+QNzE5ydY1nzxKOcx22iKlj73tHLXdadQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(376002)(346002)(366004)(396003)(39860400002)(230922051799003)(451199024)(186009)(1800799009)(54906003)(316002)(41300700001)(31686004)(66556008)(66476007)(66946007)(6512007)(8936002)(8676002)(2906002)(4326008)(478600001)(26005)(5660300002)(6486002)(6506007)(38100700002)(53546011)(36756003)(2616005)(86362001)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?V2RhaWZzVSsyKzRkS3FoN2doZXJ5dFd6azNOZ1hIR2RGNGxMNFQrd2l6TGZ2?=
 =?utf-8?B?dWRwdWNCdnlpamd1dEs4bFJseXdhUWM5YzFHcDl3NjIyalBZNW9Jc1ZsRUJy?=
 =?utf-8?B?L240d3RmYjJJS3ByN28vcXl5a0VBdFZLeHA2bXU5SjFvVUc5Q2Urd1lwUFdU?=
 =?utf-8?B?N2F6ZDI5MTFKUUxqVG8zeFRjNEdHUmR6UlN1V1lTc2ZNR3VCMjhlVys2L2hL?=
 =?utf-8?B?WVV1UWtLam9HdUZ6V3poZURUYW53S3V0cWRiaXZNU3VycjdXZGR5NEczbmJB?=
 =?utf-8?B?Q2FkZm0xV3docHJVSmZCZ2pGdmROcTQxb1hSN2xGd2JPRXEwb1ZTV2c0ODNv?=
 =?utf-8?B?RXlWRXE2SkY2Z1dLbndUQWRKOUwvaTBab0lVTXNRR1lGQmg2c1ViR3p6Wmdx?=
 =?utf-8?B?dllPb2RCbUlPUE5rYkV0QllZK2Y3NWlWZTNSbmNTbUVsWHBTdE96ekRkNmZP?=
 =?utf-8?B?MkpMRndMcm5MK2V6NElBMHF5NmFoQWNHbjM0VWpxV1hJTnlOcm9kQXBpclVV?=
 =?utf-8?B?U3FwSHNOTjREcldKRXNoUVBTZGREb1ByS2xRU0ljRHNHQXdtQ01nT3lMZjJR?=
 =?utf-8?B?ZStxdlpjSEhRRVF4VUN2ZGZwWUMzS2hKVWdRZ3dHYzFoQ0FBNHdZNTBDYTBF?=
 =?utf-8?B?RGdTSEQ1NnZvUks1NGVBbS9tUTRkTFErM0dsOWxKUzBESjZxVTdqYTh5ei9B?=
 =?utf-8?B?MU81dEZDZDdGVHM3T1VyRzRaalZMWlhKYk5KWFFabjJsaWJaRVFjRjVYSlZl?=
 =?utf-8?B?RCtCbnhFd0JJNFdodk5Zem5GMUVKWjdlY0YvSnZnVlZqV29vYkVIMHZxOVVk?=
 =?utf-8?B?WHZBZUVMa2xFRFdEVmZJcm5rQS96UjdGSnVSemZGN0JSYzV0U1Rna3lyOU5s?=
 =?utf-8?B?SVJBVmdVSFkvcDBqdmREdVFqbDNpVk5yOXgzV25lRFZTbFdsNUdJTjU5NEJO?=
 =?utf-8?B?RjBjdkxhSS9sMFNmSytHZTA0bHVzYUl1VkRKRURFaHorTFZkVU5YZUE2RW9U?=
 =?utf-8?B?ZjVvS1ppU2JXWVJoQUdhWitGcko5aGtqbmV6TitFaEpzeU15eWNDbVlFVVYr?=
 =?utf-8?B?KzhGbkwzVjBnUkpQNmtLZldGKy96RnEwRjA4bUdIRE0rTFhST2loQjFNZVdO?=
 =?utf-8?B?TnR4ZU96aERXL0p1eWtFZjMzcm1hWHBDeVBkdTBmd2xpWWp2MmZqTHpBYngx?=
 =?utf-8?B?alErT0Y4d0ZXZ2szb1pIT0VDUmtZTlFLTERrRnF2VkJhOXFkL2QrOURiN2Ry?=
 =?utf-8?B?dytkOCs1MjduVnN2L1pzS2kxQ2JLVkxkdVBQU2YxQzZPQmxiQzlMWVRQZFJu?=
 =?utf-8?B?TWxpc1N0cXgreU44N0plTXZITEZhRjF6K2lmc1kwb2t5ZE5xbmxOM096Y1FV?=
 =?utf-8?B?ZDNuUnUrQnE5MTZrT0pZcW1LZUkzZDExVS95R09sdkM4L0pIZjVLY2MrM1pE?=
 =?utf-8?B?WlRYVkpTR0hPWVRiajdtaGRPT3ZURFM5WUYvMlRVREFNWkhxVWNJUWpyRExI?=
 =?utf-8?B?dVlLREpnSVVMMmZSV0VkOTJEU2VLd3FIZUQ5eThvYmhoOXZzU3B4bFQ4YVZH?=
 =?utf-8?B?UUtrMVpwSzZmQndDOVFqZXJ2MTI5OTF2bm9WcmN5VVFoSmNHRFE5RXhYS0hq?=
 =?utf-8?B?WmJFVGJDeldzakgvZERPa2UrMEE2VjJ2TldYNmQxVzAxenZPVUJBdFhYaXVB?=
 =?utf-8?B?eG5ZcXRTU3c2TWlCWGRKUW1DbjQ4NkVWa3o4TEpXVngwK3E3bWFyYldJb0tO?=
 =?utf-8?B?TldWRWtreFFwYmJNMENBU2g4cFg2SkFGeUNIdmFMU21iVVlCcTB2Z0FLdU1R?=
 =?utf-8?B?cFhVVVk3UlJLMW5mVXNmRzJodmJwNHl3QWlXNUV2eTM5RVNJTFhxYWZuOTJV?=
 =?utf-8?B?QzlVV0h0eGxuWG5vRTV4dlZVNjdka3BPYzRVQmExR3lxR04wVlUwK25XbVRY?=
 =?utf-8?B?b3lQVzd3MzNUeWdRUy8rN00zd0lML295bTNLL3pSdTgrOGZlanJLNFNEaGRB?=
 =?utf-8?B?eWM2eTNlcEdIRTRBZENuTWJOZXcyUVRCTzZ6VHFNaTdKQ29WZEFIU0t0Sldj?=
 =?utf-8?B?UHovcysrTGkrQVJ4MEhwMk9FNFVHMFlXOEFPVUl3aUpLVmNRMXk0R3QzWnRL?=
 =?utf-8?Q?tw7nDFzlu+cxVS1bA0GbVvz87?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9151b42a-fb17-41ca-af26-08dbbd90804d
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 06:27:33.0213
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Oi4i8KdDN/DFGHRRAm0cIoYoK4/6dmUNE9OULnOXoKonby52/wk5hUm5INKU3lyhN1ojhqQehwxbQ2w7Td7dgA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9590

On 22.09.2023 17:42, Elliott Mitchell wrote:
> On Fri, Sep 22, 2023 at 10:21:21AM +0200, Jan Beulich wrote:
>> On 21.09.2023 18:18, Elliott Mitchell wrote:
>>>  As such these incomplete definitions should be
>>> in xen.h next to their hypercalls, rather than spread all over.
>>
>> Perhaps s/incomplete definitions/forward declarations/.
>>
>> There's a downside to the movement, though: You now introduce items
>> into the namespace which may be entirely unused. The two contradicting
>> goals need weighing as to their usefulness.
> 
> For the case which this is part of, they're not 100% unused.
> 
>>> trap_info_t is particularly notable since even though the hypercall is
>>> x86-only, the wrapper is likely to be visible to generic source code.
>>
>> Why would it be?
> 
> Related to converting ARM to using inline assembly-language wrappers
> instead of the current declarations+small assembly wrapper function.
> 
> The first step is you split the Linux header
> arch/x86/include/asm/xen/hypercall.h.  The upper portion (the x86
> inline assembly language) remains in arch/x86/include, all the
> HYPERVISOR_*() wrappers go into include/xen/$somewhere.  Several months
> ago I sent a candidate header to implement _hypercall#() for ARM.
> 
> Problem is:
> static inline int
> HYPERVISOR_set_trap_table(struct trap_info *table)
> {
>         return _hypercall1(int, set_trap_table, table);
> }
> Without without `struct trap_info;` somewhere, this fails.
> 
> Now, this isn't used on ARM, but this is tricky to guess.  Someone
> setting this up won't know whether any given function is absent due to
> being legacy and unlikely to ever be on non-x86.  Versus simply not /yet/
> being available on non-x86 (vPCI).
> 
> Perhaps xen/include/public/xen.h should only conditionally #define some
> of the __HYPERVISOR_* constants.  Likely there should be a way to force
> all the hypercall numbers to be available (for linting).  Yet as the
> current Linux header hints, perhaps there should be a way to disable the
> PV constants even on x86.

Downstream consumers of the public headers are free to adjust them to their
needs. The upstream form wants to remain sufficiently generic, which to me
includes not exposing types which aren't relevant for a particular arch.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 06:32:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 06:32:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607605.945841 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkf8s-00022K-8w; Mon, 25 Sep 2023 06:32:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607605.945841; Mon, 25 Sep 2023 06:32:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkf8s-00022D-6T; Mon, 25 Sep 2023 06:32:26 +0000
Received: by outflank-mailman (input) for mailman id 607605;
 Mon, 25 Sep 2023 06:32:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3u+g=FJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qkf8q-000225-Oy
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 06:32:24 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on060c.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::60c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4896a67c-5b6d-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 08:32:22 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB7101.eurprd04.prod.outlook.com (2603:10a6:800:12e::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Mon, 25 Sep
 2023 06:32:18 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 06:32:18 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4896a67c-5b6d-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aQ0cbYAxcN0oPjvXvn4o1y4cPbNldF8NwqMjIKbkTHbvgHB4vZ/avdqwuHUFQK48VC3lfHXQlQ/aP4uK5Ra1IdE4pJp/3LslPiuf0/CsN4t0KGBMgFJnZZsZ16bRMK9lewzejEvkzK9NmmqyStMcLwuG0NhvXKEpDZgT2psZar1P09St/2wUm51/CWxO3bV9d/Q0BbkCbWEU8ek9L0k+W2YB897dRigKE6B+UgGgDRa9RHCfNePUUJsBTGRA1QRbRDGTGI0dktBP0EJHYm0zUb53rXOnslCO6QXNgeNIlmATlHoLudjFtpNE1MSDr2Ul1frmDugRP44ko+OMutgcqw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=NjiKFrj5pkgdi1CpOtbnTpwZEVgbLE6BbHNkt0LBRgo=;
 b=dVXCfNqQq3SdYHK+ezJIO5WoT6tGttNqJcUVQIBzVyGSXK+jJCe2KhVEOjHvtoLZPt7fDTjv/RpE4iTyEFuDVOV+a0dndF7mmxGs7FOfsBIEATmOPhujsYzvdjUIKimJq92jnkBnr+sVcwkGDNCrejQbiAe4H2755sEe1fYW1oj5WyHrh5IEbkHFw8MWmVNPnK5qkOcns8QS9aqOhNgvK897PpQTNulharLKQ6hWqtuQd+XsdM0h3dYv76wpIxVZTnk6l7P4x4NfC/vHvPpvKjuXpGJXuTKdso1tP1E3RZ8aYFX3Vu5rXkSYIV2+27igk9TnB3MBsDUA32FpUTAzPA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=NjiKFrj5pkgdi1CpOtbnTpwZEVgbLE6BbHNkt0LBRgo=;
 b=Vj83VYBrKOhgkzasWLczxBlEA2LLG4aS2Of7biRzDs9C52amYoyTjO2Q67bAOh0aig2N+YsywrizZadGJBN06HSgrNbfeDmboiC/yZNfIzm/NOWztBBVP47gw3xlSUsIXswP1q9RYSVoDJ7PCrWHYRXy2btzfzssoo2vanbLEIN9qy7K/3tAlnIymaBzJxiGrhwvZb94MNEmf/fHdsC+48camXJ7r4pcAKH8M3/U46gg42795xrU0NvePWO64wVnATXG3Krlcb524OfxOaD+jItPZfvZgxwOVgg1E8WLwPMezaepy6+SzP8rWgIHjE58/0kR7FjV8WLEImUkDo07Dw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6399a816-ac1a-b741-ed52-b5d03b498ee6@suse.com>
Date: Mon, 25 Sep 2023 08:32:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-US
To: Henry Wang <Henry.Wang@arm.com>
Cc: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 "jgross@suse.com" <jgross@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
 "community.manager@xenproject.org" <community.manager@xenproject.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0131.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:97::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB7101:EE_
X-MS-Office365-Filtering-Correlation-Id: 3a57b712-3c46-457b-f8d1-08dbbd912a4f
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/rLl+0tebWmsCcgor67QCS5g9VXsxC/WTiizLAIeAYE6I2ROAZMRXGpzPwFauo8+buBG/QUxL32hXV8WzkE7xAB2ugekBufB6GJK2PIrHa04t3LJ9Dfsm0BrPQpWANmz8Ea353PqDQ0ccjnx0JbnI2PThZhviP+WpqUpPLEIqJ/fAHBWRDO1giHtU8AiG7m8HxqH23Im+7Q6HhlmygsA6tnWfV/W3fTa1pmmoKgVhqyB9aZY7XJYwlwlmjUHv+LJ/ibVcrCWaNCdSzXUF7ypNtdommQBWsEBF1pNUmYjZC6h4rJ7D0YoIdnNOQcs+uYHVuY07+l6uoDJY51lrWkUoXV+A8ARmDdMQ5YwVEDMRoj5vmJsj8G2uV1dtZr9YFLN5Ui81WZz0Wt4gazg6m8eaIK9CSqsElU996ipxcrQhR3Qe4BwF/GzDl/iRdWndBjyMM439AsVyt54zCkZzNaQLQGGsnCrJ93IXkhfYxtaM4q76g4Eg6GFzzBmFQi6g9L93ZpUz4Izl+DT1VwwafvpoiB58uyUvCAOEJgFrM7StlgtbhkfZJW6p2o62oSECqB7XGfkoj9CmuQhgDB+5ePCoH56R/Pp0iBnVe5zsZfQdj+ukfuOrhLFtCTUkbmz+YPzU4goUb5H+qE0BH+SBOkWIw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(136003)(346002)(376002)(39850400004)(230922051799003)(186009)(1800799009)(451199024)(31686004)(26005)(53546011)(966005)(8676002)(2906002)(41300700001)(8936002)(5660300002)(6916009)(36756003)(86362001)(316002)(4326008)(54906003)(31696002)(478600001)(6486002)(38100700002)(6506007)(66946007)(66476007)(6512007)(66556008)(2616005)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OWdhZFh1TW1PQUNsMWRjdjN5eTdhQ0g5L2RFWGlsVkhxQVhTNXpRRTFqNyt2?=
 =?utf-8?B?a0dTQllRaVJCdnM1TXBGRTlTU0N4VmNvRGFwbTNRSkl2TzR0MXJnVmg2NUhK?=
 =?utf-8?B?dXcyektpcW9nWlRwMnk5MitZRDZjaGNwbENyd2NWcTg4TWxnbFlnRktmdU9B?=
 =?utf-8?B?RXJhRmZYV09rbXVXWXJ0Y29aR1p2c3BlaWdrVG9oclhFNnVwOE1IWWVzWDZj?=
 =?utf-8?B?WEtPM1RVNG9hblpiM2gwczJZVmFNb1BMbEwxL051WGpnN213OFdnYkMzYUVa?=
 =?utf-8?B?ODVyM3dTeVNjNzYxRHVUa0ZXY3RzVDI5RGRWakhQNExLeXpvanNNTmVkeENq?=
 =?utf-8?B?ZmhrUm9OU2dmMmxjd3VlQkc5bFNxcWRrVEFYSHBMQVJGRUJuVWFwN0VVemZN?=
 =?utf-8?B?OTNoSHpQK2pZaUxHM1FNdEUyRVFyNzlMK0lxNThkcHlqRFlWSnV6OWhZR3dr?=
 =?utf-8?B?TzlMQXo3eTU0WWMvWGxLaEFVREJmUW9KcWRZTDJvZGVYZ2JhZVlCTGFZSS9k?=
 =?utf-8?B?dTJkcmtvc0dKMXcvcXMyek5PeUZadk1FbVExdXk5QW9yeENwdkx4TzArRTB6?=
 =?utf-8?B?eTNpS3IrTkIvdWROc0xuQVR0ZTVuNlNoTEdCYTlLRHNWOW5zVHptS3ZoOU5l?=
 =?utf-8?B?K0hoV2FEbHRhYnFXcW81VHBoT05YQWUyekZITDc3dTVJVFRHS20vREduY1dH?=
 =?utf-8?B?UFBnYnVtMllUOTVvN21rMmZXU1NIZTc2ZHgzbllMcUVPV2NKRkM4N09IRUwy?=
 =?utf-8?B?OHRiUjcwT2U1bk9ObXJlbTVIRU1kM1Q1TVVRblBzenRBMjhBNlNqNkR3aWxs?=
 =?utf-8?B?eTJrNGczVk1BbEJhSytlWTk3eU9lcXBUWEllb2RXYUtiLzJOem01L3IzYmRw?=
 =?utf-8?B?NVdNd0pOZ1RXeHRMdDRQVHZZYnBwK2ozUmZTeXRKU0NqdWUxNU5WVGJEL2RW?=
 =?utf-8?B?MGlRNmUvME90UG00Ri91YjVUVGErVWZ0TExJVkEycEZPdlNLU2NNcWVvc251?=
 =?utf-8?B?em1peWVSbWhSVzZXalh5d1p2cHVOM1EvU3JqSE9iY2Z2b3NxSmI5Ym1vZk13?=
 =?utf-8?B?d3pFemZaU0p2cVZZSGJsQWpDYUdxcDdtT2U3cTFPY2JCMVFyTTAzRS9zT2JX?=
 =?utf-8?B?UkJ4Tk0rMTBKWHZCSUxKbmtrL2pQdStpWjdrczlCSHdNdDRPc3B5NzV3OXdB?=
 =?utf-8?B?bDFJUkl4UzBFelRtWVJiOEdoRFIzYmJuM1pGUUFRUDVmdUY2ZHpIU2x6V2hW?=
 =?utf-8?B?LzF5MnZzaEg3NTFiYmlGNVhWTW5MREdHMHdFb3BOKytYdkZpRmVOQUdtZzFF?=
 =?utf-8?B?dExPMTdHWkpKeWgrV2dBRERvc3RWVEpXc1lkU0NFSW1TZzNILzVsZWpuY3Uz?=
 =?utf-8?B?RXA4SVR6S3FwTjY3R0dsRFBjaHlLREtSN3czOCtJbGk5TGowSm8ybDRsUy9V?=
 =?utf-8?B?dkxKcTJVaERNZFlYZDRyTkR6cWZ6SzVJdm92OWt3UmJ5QUJ6NHNOSHhFdlky?=
 =?utf-8?B?SkFaS1QyWFZXd0lpYUlWaWxEVHdmUE1jU1BMVGowRG1pZmF6THRMNVM3YVNC?=
 =?utf-8?B?T0R6ZTBZSDdOUFdmaHVRbmV4NlpWK2R0NWsycDlVckVtNFhkaE8ydnlyb0tG?=
 =?utf-8?B?MzJQZVJmKzhwTjNybllzWXVTU0RUVVM0Z2xhLzU3cEZPb0JBVE03YzFDQXFi?=
 =?utf-8?B?QjBPWHBRMW1reWVOMlAxWHRwMjMvak8xWVhEWU04UUhlVXpjOFRLeTF0NVh1?=
 =?utf-8?B?OUlFUno4Uk1heCtjYmVFWWtXVmJiWEgzYzFNMkMzY3NxelYzV25TaWtrNjNY?=
 =?utf-8?B?ejF0dzAwTW5qU2RMRDYzdTFNak9uOWFUMXJvdEJPb1JSb2xLM3IrN0ROOVdn?=
 =?utf-8?B?NkVNTTU3T2N0UFFDc0VuRHBUdjRFckttcmZrUnhablFza1JPTmZtRld2VjVP?=
 =?utf-8?B?VFdjUjdlNU9ITlhBcUhKRTFNNWUrWlJGY2s2aVRIRk9RRzJpSzk2amFHdW8r?=
 =?utf-8?B?ZVB5VkRKcmlzSXhmc3ZRYUpHMXhLTTFITDJHZnFlK0NsZnhMUEJtQTlGV0M2?=
 =?utf-8?B?V1BVWFZWYmlOOWFKK3I3cDdORU9wM2c4c25Uc3R5TXl4T1poeU01Qm5ydG44?=
 =?utf-8?Q?YYJFVxrPsPvYdld2rpefFzpg4?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3a57b712-3c46-457b-f8d1-08dbbd912a4f
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 06:32:18.2096
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: h4OLsPAaxemtxXu+zEtG57VVC//uZ+9iX3QYQtTiYHLXb1jMJ56ufwFX9/eNKN5alXaI7qBRJgaXWgpElNIUaA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7101

On 25.09.2023 03:25, Henry Wang wrote:
> Hi everyone,
> 
> This is the reminder that we are currently in code freeze. The hard code
> freeze date will be in two weeks, i.e. Fri Oct 6, 2023.

Could you further remind us about what is (not) permitted to go in during
this time? I also understand all commits need a release ack from now on?
(I'm sorry, we're doing releases only every once in a while, so it is
always good for things to be re-spelled out, i.e. even if they haven't
changed from earlier releases.) This, for example, would then likely mean
that all Misra work now needs queuing for after the tree re-opens ...

Thanks, Jan

> The planned date for 4.18 rc1 is this Friday, i.e. Sep 29, 2023.
> 
> Also, below is the (updated) critical items on my list for 4.18 release:
> 1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
> https://gitlab.com/xen-project/xen/-/issues/114
> 
> 2. tools: Switch to non-truncating XENVER_* ops
> https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3@citrix.com/
> 
> 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for staging | 6a47ba2f
> https://marc.info/?l=xen-devel&m=168312468808977
> https://marc.info/?l=xen-devel&m=168312687610283
> 
> 4. [PATCH v2 0/8] Fixes to debugging facilities
> https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/
> 
> Kind regards,
> Henry
> 



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 06:36:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 06:36:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607611.945852 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfCU-0002oS-TN; Mon, 25 Sep 2023 06:36:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607611.945852; Mon, 25 Sep 2023 06:36:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfCU-0002oL-P6; Mon, 25 Sep 2023 06:36:10 +0000
Received: by outflank-mailman (input) for mailman id 607611;
 Mon, 25 Sep 2023 06:36:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3u+g=FJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qkfCT-0002mk-1P
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 06:36:09 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0612.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::612])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ce6747b7-5b6d-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 08:36:07 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB7101.eurprd04.prod.outlook.com (2603:10a6:800:12e::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Mon, 25 Sep
 2023 06:36:04 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 06:36:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ce6747b7-5b6d-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IYR6Bprfjcl6AOVupJwNDQbj4Qc0Kxk4en6a686oeR9/HdtAw8B9EmOUKgUMNMzpUopv8+14x/EWvzm2/KTu3Zb0mCs4SSMF1AxmguUshR/6MvH7LpBthD/SPZlUoBIgZEQI16rbbeIe8MN/2/FhuFzUNgKGYkzwbZvuyEoKSA4BSApJmDeswjGntNp6Tc6Tioe32bM8XPm3sY/6N7nwKJSJUoH5kaE3LwIdCGxD4svl2iG+KpELjUb7fhG73oF4LPYB6vGIBxENQKfO2khvV+iykRo/3Xkfzr47rwWD4CmPSY9HQBB8Gz3e02lgwcTsUN3sBY2PHsZQNiAroJZD9g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vQomtzQbK00H5H+GzTSAUPk7lzMsqZjfUsBIcCjI7es=;
 b=YGHqc4j38lC5vIO49tpt8EmyGsiuLsClY+p2olkk/ReuC1RYWUbfJQ78GkZVsGnTFnoLUYYXYrmjdBO/ZTQ+GcPZuYFQdJI4775QL78GJ9wqLDsuTK/tpOeCKKTjfM9IvURTERWQn3vRiWJwAygArRc2XvivVid6D9D3ev94+GhQmKnO+EIw7RQ2vW3ke1l38Fsjto0J2nUwcGejnB9jQ2n9ymZGTGGm0zLgdWPa04KIlPhZaWQTZC3V/E4Pfqi0EqqZG7FU40CtGSCykaEuuNSD9DSKmbAGdWKS+vUlVzCHMqUfRdE64tPB98Cxz+Xy0swz+wY41v3ftmnIa6nakQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vQomtzQbK00H5H+GzTSAUPk7lzMsqZjfUsBIcCjI7es=;
 b=HUXJLGqmY+jv9p+k0x87kTPDfo0pIxliS5FzTZTu/ngKUXNkN7sMwupl8sdcgbFcZvkScreC/nxnHsrfCbEluY5N2PDt/5z4hdM/bbQcJENwUbCvZe9NhZuGww/rBMhvzeqq+yqFgcvS+xb/slAHPixjQnkwXBbDliUT0xWLCS5Nu773w4enLaxV4BemvvxLlmXyCUBIdzqDmuyuXPF1fOYi7tD+of/LqlezBVABmOZx0xhdOdD7uRfgf4D20adB+5QMixaLlkbuBB6Ua1XyFszvoavI39E+dARFX/AJAHPKMSOx6otYtmUunNPmRT08j6/JflZAqoLtjHO6YCXGqQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b0296908-5081-5d34-8487-b8293eee97ca@suse.com>
Date: Mon, 25 Sep 2023 08:36:03 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 4/4] pdx: Add CONFIG_PDX_COMPRESSION as a common
 Kconfig option
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
 <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Julien Grall <jgrall@amazon.com>, Henry Wang <Henry.Wang@arm.com>,
 Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Shawn Anastasio <sanastasio@raptorengineering.com>
References: <20230808130220.27891-1-alejandro.vallejo@cloud.com>
 <20230808130220.27891-5-alejandro.vallejo@cloud.com>
 <d462f419-4cd2-53c4-7694-b43b7fa68d88@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d462f419-4cd2-53c4-7694-b43b7fa68d88@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0144.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:98::18) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB7101:EE_
X-MS-Office365-Filtering-Correlation-Id: f6ba1136-fb0e-477a-cc7c-08dbbd91b145
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pONWIcRnGhjud4cSMwOURfQjE0UMh+noU1ZB7n1JO78xaDJQtlDh+jxBmHp0eyShMTB970tf6RuPX4keQ0t6FW2f8p6nSf7e8PPAiTgDQFGiSgUXufQAACOQo5NZ38YWB91GFm3VyVlyZbJbkFEnh3YDYwSQR3YaRvnpHZmZndgUZU+qvn7FTJMx5aV3yLHb00dn6V2eRkEijK+anTYpI6MXjX/nRFMgv6WEUnaiggHVowop6wtlBZRsLR1dy+BnjxjUHIkO53PnEU6+DTF7fzEgZj3YpgAcS+MW3CKn1Il1tZcOW91IBMUYZClQ+YKs3zaUsiT+1pBPLsqxNBE2xqhyhtHYEVyJRXOBbHTGYNdYa2QKwV9LwLheAhs3oebiPscrvNiO+mOEpFWq6rSGaKtAViZ8F5u/dnzH7LEl8qxYNw5eY7i66K/ro59GMqY53RovVYNjoJZmUn2bbiluFf70pONJp/HMEEW/EvyNWiuHDqVn2SZL4tb+MAH1h/aPX9cayyzey1APOCctvVlKbRog+dVPnaQm8+Sb2tvu62c3j1wMb4G+d6ifMpfXo7d/QpnNHrUkOavJVMgfVMSsp+6oBF4M60r7970Hvlm9qCX4xA3LBpypC7tNznjK50CX9IWKZt4Fxk+a2clgzsLjqg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(136003)(346002)(376002)(39850400004)(230922051799003)(186009)(1800799009)(451199024)(31686004)(26005)(53546011)(8676002)(2906002)(41300700001)(7416002)(8936002)(5660300002)(6916009)(36756003)(4744005)(86362001)(316002)(4326008)(54906003)(31696002)(478600001)(6486002)(38100700002)(6506007)(66946007)(66476007)(6512007)(66556008)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ckw1M0EwTjlYNnNVV1M4VU1XVVRmdzlmeVRhck5LVzlKSlhZWHFuemtrMTJn?=
 =?utf-8?B?Uy9UcEFmZEh0YW55aW9LQTg0ODVRNFBCNDB3OXNJWHB3K1FVU2Z1Q0s0QVNk?=
 =?utf-8?B?TUlKSUlmZDRyMjJTSXN3Ym5CZ041V29QWURwVEtxZXZJdWhUNFJWV3hTVGQ5?=
 =?utf-8?B?ampZbjVFa045TkhwU3dIS1BHR3N0MTVHODdFcXNHUm14SDczb25CUG9aQ0ly?=
 =?utf-8?B?K2Z6U2pYVHFHQW9RRWROdnFnb1hSazNlZFRicnN5VnI3YUY1ZE5lNFFvb0hP?=
 =?utf-8?B?b3gwc2x1QkZ5RnJEN1VjWVgzTVNsSlhBZGNpQXROTTBTWGdwS2hIbjJhVytI?=
 =?utf-8?B?aW9kekJ6ZzF2UzFyaTVUa2Y4NjF6em92Ni85Nldlb2Z6akZzOWp0NHBrTUlS?=
 =?utf-8?B?TGVlNXlnT2hHRzFpZGxOa2M0V3ZTUUJJN0F4aUlmcWd4Qjdtb0QwVTgvZ0RZ?=
 =?utf-8?B?Q2JieWEvSmhYa2lTNWw2NlNwSEhFbFQrUVI2dTRjZGFGVy81S2lwN29NNWFp?=
 =?utf-8?B?WmZCQlNBWFZRS1ovdWxlNTZjMTNPVmpnMk1MS3VSc0RWTkk0V0wxdExqNHRD?=
 =?utf-8?B?ZnBkNEFQTm90TmhGQTNYc3lFcnZSTVdySi9RVExQNjNYQnRzRzVJQVlDbUZW?=
 =?utf-8?B?UkZqZkJrenVnN29FcEFUWUZubER3YVUzNE9KM3l5S3NLNjNPQlVENzR2WnZI?=
 =?utf-8?B?Z1Zja3Z5dFRiQUo5aTVXTlhEcWU0V3ExcnY2SEJsR2MvRTQrOXNaWlEwMVpi?=
 =?utf-8?B?eXJWTlJnS254L1hkYmZXaVlqUzE2aDdUTmZROWFxeUF0bEk0SS92NGZ2R21s?=
 =?utf-8?B?TXpSTTlEQm14Y1pFS2VFMHpTWEtNSEtwdE5HaGtJTE80bllLRStINFcvbGox?=
 =?utf-8?B?b3hZcExvSXdjUjQySVI1UDhvbWJTSXdVdnFCQWpaczIvQ0hlK0I0ZkVxSGlS?=
 =?utf-8?B?ZnBUekhQMUtZTmdtVytJdzlIVW9rYzNoRm1oYURsR0RrdlpUbk1nbWFRamFF?=
 =?utf-8?B?VFprNWRDNE9DRFI3T2EwMGRlSEdHTmpRVjc0ODgwWVNsS3oxalFWWjY5S05H?=
 =?utf-8?B?dnNZVldhU1UwWElCZTE1VWliT0RWdGZ5Qm85V25IeEN6bys3dGFaWWNGcnQ0?=
 =?utf-8?B?bXNSUFp6N2l4TDN6MWFIUTlFRXJWSkM5anUrcGdvQ0k2cFVuYmgvNTdZa1k4?=
 =?utf-8?B?YThqblg1L3hob0hDTWh5dFB5U0p0VCtIam5yT2lYZGg0aVlwVVoxTUVxc2tt?=
 =?utf-8?B?b3BYdU1EZWRGeGRnMUJsNnkwdkJybitwejBsRnRxYjZ2S1owSUl2UmRpZ1Bz?=
 =?utf-8?B?TFpuTGNyQkQ1VndiSlhrd2NEZmtLaCsvbThtMmppV3hjcHRnU3J0VHFWTUgy?=
 =?utf-8?B?WjQwR0JBRzZLVmd2eThNUDBOLytqYUhpZEdtQkhiQVhLQWlSZlZlQ21mY2Iy?=
 =?utf-8?B?Z0t6cE5hYkRDRXRwMEl0Uk1WeEkwK2h2b09sTEIzcW5yVDVqVnVGOE5HWUov?=
 =?utf-8?B?ZkdvNXI3dmhGOHY1SmFRZ1J6bW13cXZBemhrMmExT0V2dEdITmNNQWdNVzlF?=
 =?utf-8?B?Y0VHNDdiRzFSdDQvUHRRMUI2QjA3T2ZqbVBwUk9raVhVckhPc1lteUtCNVdo?=
 =?utf-8?B?cnA4bmZQUUw2N3Uya2lDUzY3UHUyd2luTTJQcmpsWGxlWmF3Mysybll5SjRB?=
 =?utf-8?B?TVMrOS9nMjV2QmpmQ2RheEljNGtUWGFEME0yOXpxWDFveUdDRkJUY0htS0xN?=
 =?utf-8?B?c1laZUJ2Vm5iU2pxL0E5ZXQrcjQ3akFtRXQybUluamM2bkRkVXVYcUNYRTlu?=
 =?utf-8?B?SVZjeVlWY3k0K1NCTDhkR3UrdEpYRHdLTm1JOEhnSzhTcVVQb3hMb1pYU0Ru?=
 =?utf-8?B?UWRxNVUrUHE2T0RET2hFUVVoYlhHZ1JrQlhkcWNZQWRBYjg5UTZ3c1lzQUxu?=
 =?utf-8?B?aDhNb21tcHIxMkVyMDIrYjVwbk8xa2tMUWtHSUYrKzhzZkp0SVRXTmxJT0Ux?=
 =?utf-8?B?cEVqUDVQdFhkR1dRbzhHVy9teVMzTnlaNVhnazFqbFg0WkxJVm9Sdm5MTzhP?=
 =?utf-8?B?WFRwQlFiK2VwZlFGMk56V0RzdlZITnBrZ2Y4N29iOUNzQks5U01UM0wvNGlU?=
 =?utf-8?Q?XrUQjUWmlikzjE2b8gsgYlIra?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f6ba1136-fb0e-477a-cc7c-08dbbd91b145
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 06:36:04.6391
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xMEr22FZILWkfdNH236Z4eLluTlgSnIT9+9BHcNvKjrksFD+WKmwFwhgkyEdLuSUqzFpAR1uAmatalUp4l078g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7101

On 22.09.2023 22:03, Andrew Cooper wrote:
> On 08/08/2023 2:02 pm, Alejandro Vallejo wrote:
>> --- a/xen/common/Kconfig
>> +++ b/xen/common/Kconfig
>> @@ -23,6 +23,16 @@ config GRANT_TABLE
>>  
>>  	  If unsure, say Y.
>>  
>> +config PDX_COMPRESSION
>> +	bool "PDX (Page inDeX) compression support" if EXPERT
> 
> This still needs hiding on x86.  The minimal hack for 4.18 is "if EXPERT
> && !X86".

If you insist on complete hiding and I insist on allowing it to be used by
people who want to play with exotic hardware, then this won't go anywhere.
I think I've come far enough with accepting a compromise, and so I think
it's your turn now to also take a step from your original position.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 06:38:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 06:38:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607616.945861 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfF8-0003eu-9T; Mon, 25 Sep 2023 06:38:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607616.945861; Mon, 25 Sep 2023 06:38:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfF8-0003en-5q; Mon, 25 Sep 2023 06:38:54 +0000
Received: by outflank-mailman (input) for mailman id 607616;
 Mon, 25 Sep 2023 06:38:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3u+g=FJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qkfF7-0003eh-25
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 06:38:53 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on060a.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::60a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 301d0378-5b6e-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 08:38:51 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB7101.eurprd04.prod.outlook.com (2603:10a6:800:12e::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Mon, 25 Sep
 2023 06:38:49 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 06:38:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 301d0378-5b6e-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nn8lFl01mAc4AZWzeeHoggn/btoW4PRVZuGXXdJ8u3wYqvFak3P4Y9B6+0KwBTV7+pgsLgliRTGS5YC3TK/r+puHDJYnVl3wgaKlhZConZaoC8SYrBpV1bxoG87ZyXJdcUkjHtnsQfsVsIyJzMut6tBhgvSO/9AtlMUSEj5qKsNpi2MkOkWBzRO6ZN0oevWiHTvkxmY4OYf0DU8UdzXKXt1ZR19V6QRIjzg2xjFn/ygn7iwkYhAYc3wOv0Zv5TH07sPuCu9OJ/BEhD7z+9F01pAENaT+liroswLDBBG+QkOBBhX7XEJvCEs5oybPbeDJnyl3s4jZoadThXNNYzHgmQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/gCYLQmKUgNKczwnqBftjw/LTOOrerQNjXSk63NlhmI=;
 b=l53qC9yxcOXrkcp+AtIOExRsF91IL/j/VfNoED7E+euypZ/EHJ9HgL9VcR6l6pY9dwmClUtyLzKqwaL2bMhMgn4Ra2xC1vDF37nn09C7sOJ1TDNEQiuslCMfUNCqltUn5sLEDOj9dZuLTGbcn16eSfvowKjNex3DGDPCnCtcq+mYe4ba5dfOYFQ6cMX4E5ORgNrPgppVWV6mX6IvUmAAKWzcufNOS+cfRrcwKBqwF7FQBXhKWmelixsYNPnbfDXq7XxkjFVlCZWlVWX0ZW/WA+YKvL4t4KxSdfNJrH5w/GcEFJXu/Cz4439NDI+WY8xsY8s1MBIkyRlI4tnqENAf5A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/gCYLQmKUgNKczwnqBftjw/LTOOrerQNjXSk63NlhmI=;
 b=Ik6GZFXiHV0iKBiF/oLylwVJJxcpX5KyUcbjsdN9mQdB5LEICsN9Aql7+lVSbVXMdjOkEppis3YQxC9LUlXFx0LpxtoIH3OmFFozEqCueOKDQFLjdVuOdinG5S89SJDrn2GA2HEd3DeM+GQd1Wxkz0rj5ygXAxEFhHZDXLs5eC891tTj/ToecyV7ggjJjvXQB1VNmEXxpL5vp0gEnvlQ96fy84yLnOg++Bk0P9ZP53hMIJao6E/FIBm3tGr6o6vmncVTnZrQusRQBMN1Vs1JLmejQVc199KzGx/psgnZTlyK36lsDw3YquG08UexpUsAo/5eGrXrMJ41x+eclXH0tg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <8e49ae70-5e2e-e87b-f7e6-901f9a689fe1@suse.com>
Date: Mon, 25 Sep 2023 08:38:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH v2] xen/emul-i8254: remove forward declarations and
 re-order functions
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, xen-devel@lists.xenproject.org
References: <b2877f0e2d867e04e806d70cc2ba175386c30d9c.1695392080.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <b2877f0e2d867e04e806d70cc2ba175386c30d9c.1695392080.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0088.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1f::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB7101:EE_
X-MS-Office365-Filtering-Correlation-Id: 33555d52-cf17-4fec-ea91-08dbbd921363
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	R/zhAvDxemq+nmRUFLJ677RmaIWP2Jj1dnNOZTVKtxosAY4QJiguFvPk1rZ5aUUJpKQ/EfFRxjC1nBlVtQIW26HmKMceBDHfBJ0ME2tQu5JdrZV1gVXByYNbaffEerh107YuROClewGUpLQ7YmTC4Hy3tuJFAMQCY+4PlGaEU91xhBtEEgZS4m++VOetXwbmL2qzISHkI3vqcc90qBt7crzXY35Oal+AyIB7TcTc5BdwZF/vDM5rpCM4+DkLnFNlh2sny5U0DYicq25O427wCoBoGaC3MNTHZw766P35pDReF606QTfalmkXYPBNdMpDhpBlKFLZGZ5sOlYVJznj29GwXLba/1Uj5OVRU/QV6rsZWbVBeAbiyIu8k7cSa0oOJmdA85LJ45s4achtcpjTypG37Opz+isTtUGH2wyraG3ciDlMmI2Boto2o/4oBapm3X63dwNSgZJsl0ybUXmgRZxXOEaZY1ug5qD0Nsdc506eSrN2sIk33nPsYjjU35l7BHgvoagmtVlZc2rBB3ajFD+ar2vGX+bLPU2jWY4wiCc9MGpPW03fysPj+DaZkOFWmhDGgoc5Wv7AS/DXs40/EDUPiB8v6dOcYAcM0DSHtTjaI06OfpzeIMCGl7Aie6lhCsZukCpM/YwyQYC5zPTVYvF/9lEw8+FNOP1ql00gMQ8=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(136003)(346002)(376002)(39850400004)(230922051799003)(186009)(1800799009)(451199024)(31686004)(26005)(53546011)(8676002)(2906002)(41300700001)(8936002)(5660300002)(6916009)(36756003)(86362001)(316002)(4326008)(54906003)(31696002)(478600001)(6486002)(38100700002)(6506007)(66946007)(66476007)(6512007)(66556008)(2616005)(83380400001)(169823001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?a2NUZjZiVkNXWGdBZDc1VkZoUU1hM3lQWU1vSHQ0QWdOSjlBTTRTSjlsSzQv?=
 =?utf-8?B?WEJ0cFNwQ2swYW84eVV0cFhYWXl4U2ZnakZjY2YyOHpodU5uV0xFcTBuSDlh?=
 =?utf-8?B?K21mY1ZnNUdrYkM4Mjc1NmgvWlVuelpocXpUZWdzZENEUzJweHFBNWJHditJ?=
 =?utf-8?B?dmFpNHJDN3V0VCtqbmlxSWhQVGZFVzN0RWRFS2V4ZEc3bk1kUE5oOCtHcGZF?=
 =?utf-8?B?T0NGcG80VCtkMWFKbVo5RTBNbEFOazJSblh3ZjhCVmxnaGJuUGttbzZONnc1?=
 =?utf-8?B?MmdGdnJKcmVFMUlhclI1UVlGakwyOWJMdXd0Rlpxck5HNXEwU0N6UWk1Wnh1?=
 =?utf-8?B?WVdwQmJyTVJKUVdnS1Q5RlI3SC8ycGhZMHVJUXNETUV2dm5uQXMzckptREpN?=
 =?utf-8?B?UXZTT0ZSbFg5U2RCR0M0MWZsRG9HQzFIeW55d2U5N1RJYmZBOGtFdDE2Vkl3?=
 =?utf-8?B?L0sycUFWbkx2UWVvNUxaVklhZ1cxeVZQdTJGQWpHVDNLVlp1Vm12VVIzQ3o5?=
 =?utf-8?B?c3dySEVaZFNpUzJ0N0dqdDBSU2Fhanl0QU4wSFc0VDZaVmhKblZCTURFWXpL?=
 =?utf-8?B?Ry9zRE85cnI1cnZRVzh3R05ZYlBjc3lLL1lmOXJoalBJSmlOcldzWjhLc3po?=
 =?utf-8?B?ZkF5WndMbVdrRyt5MVJTZjhEZlBUN29HYlp6WmUvME9wY1JIODY0amp0QSti?=
 =?utf-8?B?ZndZWml3ZzRubnorZWs5UjljOTcxSUQyb1d2SzdGem1xV3E1MUUzQTVUV2RH?=
 =?utf-8?B?c3JsQTkvMXJBcXZ5ZjIySVlpR2djMkI4WDlBQXNyMmhoV3VoMlphdlhCNk83?=
 =?utf-8?B?cVQxZmlPS2ppeDkyUmh6SUJRQzlNTWIvZHhqQkRaTWc0SFpwQ25JdkJjcmNV?=
 =?utf-8?B?N2N5T1F5SFVYazMyY0pxZ0ZnclNoTHQ2S3pLcHpIeVAwdFZxSElRUXFvQ2pC?=
 =?utf-8?B?c0dyZDdOM1E3eGl0d0s0cXUxd09RL2tCczhQMUkrdjNKZ0hhUzN5d2FqYlZk?=
 =?utf-8?B?SFY3Z1JLaXFMTzk0VU5wRVgwQ20zVVZ6OStJY09YTHovSEN4ZHdmTEpqVzRH?=
 =?utf-8?B?VFhRekV3SnpRbllUMDJLTEt6dCs2NkFFQURkSk5BaTMyaTNOR3lEK3dLNHFH?=
 =?utf-8?B?TmJNNWE5c1p3MFVRVU1vbEhlcXF1Y0RnWWNDUTg4Wk4wZnVsaE82WWg3Syt6?=
 =?utf-8?B?OE9KaTBZRTA1MFdRMXhQUm9oajdoTzhFblRKNFE5c0k1VEwvZ0IwbmtSRXVX?=
 =?utf-8?B?T29mWDB3cWE2VlpKNXprOUFNTEVndjBoZkM4eXBFSEN6bDNmVWN1YjJvQnQz?=
 =?utf-8?B?aW1TVEQ4TU9tbC9KazQwRnQ4QUJnYlhrMEpNdmxhTHdlUlJ5a01kb0g2UmVm?=
 =?utf-8?B?aVEyVkpEbnNpVHRwd09tK1ExVlhVQnVHSlZjVVZOTzFFRGlFd1pBbUlSdEk2?=
 =?utf-8?B?RkJuTUtDV0JSSkY4VjB6QThkdUZCaXA2Y3ZPTXdZT2dUTytBUklUNW91N3Zk?=
 =?utf-8?B?ZlVrd051REF0NWdxMDdzYlA5WjN3ZlFNeFJTbmZMTTk2L0dId0NoTjZCRkJi?=
 =?utf-8?B?LzJrdVZLZmRaWVRmbExGYmdFNzlvVHlRL2dUa2hBVWpBVTlxclo2VkdtNHli?=
 =?utf-8?B?dXZtZkJBaXdXSWlUTWUrbHh5Z3pUUVRYMUdEV243ZDJHVFRVblpGcWNNSVNz?=
 =?utf-8?B?c3d4U3pwc2pGWlZZT2VMaFhUZ2dMcjBBNjN3aUk5SzY1ajBIYXJGcTlZOWlY?=
 =?utf-8?B?Q2JZVUNKd2hURmFIRXlHTjhpRzBlUjVqTXViaW5vUWdnUzJqbUNuZk0yNnI0?=
 =?utf-8?B?alJ1UHcyanp6SE9vYWZIRTkreGVvSWlPaXJsd0NEWFhVempRSmlRTEVzZ0lI?=
 =?utf-8?B?UTNvaXgyS1VQWWlGQmRwbTQzTi91K3lOS0xEM3BlVzA4Tkc4V1ZKNTZ1ZEFl?=
 =?utf-8?B?bG94SlhIMEJGbndFU0ZVeGxvTUNRZmRXektJRGZ5cUNuZCtxVXI5YkJEUUh5?=
 =?utf-8?B?ZW9OKzhQVktGMTVHUmNGK0YvQlBGb1k2ditETkxBWEZIYkJaUTFOYmdhMERi?=
 =?utf-8?B?U3JUQzlsdXNVV3VJODF6Q3lZWjNBSU9zMFhZSjhuZ0krTU12WGZxU0VFOGVO?=
 =?utf-8?Q?+tOFUb2nYFk/ZiGiVegnF0tqL?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 33555d52-cf17-4fec-ea91-08dbbd921363
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 06:38:49.2263
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: fsWPraU/GP0Z2Sm8MCTGRhSGwVdhKh/iMc9GvmyJ5afzt6a7D917MmDK3rtz2AGqvxQd8TwrlbA8VhqJcVCG7Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB7101

On 22.09.2023 17:19, Federico Serafini wrote:
> @@ -466,68 +461,7 @@ static int cf_check pit_load(struct domain *d, hvm_domain_context_t *h)
>  HVM_REGISTER_SAVE_RESTORE(PIT, pit_save, pit_load, 1, HVMSR_PER_DOM);
>  #endif
>  
> -void pit_reset(struct domain *d)
> -{
> -    PITState *pit = domain_vpit(d);
> -    struct hvm_hw_pit_channel *s;
> -    int i;
> -
> -    if ( !has_vpit(d) )
> -        return;
> -
> -    if ( is_hvm_domain(d) )
> -    {
> -        TRACE_0D(TRC_HVM_EMUL_PIT_STOP_TIMER);
> -        destroy_periodic_time(&pit->pt0);
> -        pit->pt0.source = PTSRC_isa;
> -    }
> -
> -    spin_lock(&pit->lock);
> -
> -    for ( i = 0; i < 3; i++ )
> -    {
> -        s = &pit->hw.channels[i];
> -        s->mode = 0xff; /* the init mode */
> -        s->gate = (i != 2);
> -        pit_load_count(pit, i, 0);
> -    }
> -
> -    spin_unlock(&pit->lock);
> -}
> -
> -void pit_init(struct domain *d)
> -{
> -    PITState *pit = domain_vpit(d);
> -
> -    if ( !has_vpit(d) )
> -        return;
> -
> -    spin_lock_init(&pit->lock);
> -
> -    if ( is_hvm_domain(d) )
> -    {
> -        register_portio_handler(d, PIT_BASE, 4, handle_pit_io);
> -        register_portio_handler(d, 0x61, 1, handle_speaker_io);
> -    }
> -
> -    pit_reset(d);
> -}
> -
> -void pit_deinit(struct domain *d)
> -{
> -    PITState *pit = domain_vpit(d);
> -
> -    if ( !has_vpit(d) )
> -        return;
> -
> -    if ( is_hvm_domain(d) )
> -    {
> -        TRACE_0D(TRC_HVM_EMUL_PIT_STOP_TIMER);
> -        destroy_periodic_time(&pit->pt0);
> -    }
> -}
> -
> -/* the intercept action for PIT DM retval:0--not handled; 1--handled */  
> +/* the intercept action for PIT DM retval:0--not handled; 1--handled */

If you already touch this comment to remove trailing whitespace, it also
wants its style corrected. Perhaps okay to do while committing, so then:
Acked-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 06:40:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 06:40:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607621.945872 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfGj-00054U-KN; Mon, 25 Sep 2023 06:40:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607621.945872; Mon, 25 Sep 2023 06:40:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfGj-00054N-HI; Mon, 25 Sep 2023 06:40:33 +0000
Received: by outflank-mailman (input) for mailman id 607621;
 Mon, 25 Sep 2023 06:40:32 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkfGi-00054H-9p
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 06:40:32 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2060c.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::60c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6c049980-5b6e-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 08:40:31 +0200 (CEST)
Received: from DB7PR05CA0027.eurprd05.prod.outlook.com (2603:10a6:10:36::40)
 by GV1PR08MB7731.eurprd08.prod.outlook.com (2603:10a6:150:52::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Mon, 25 Sep
 2023 06:40:22 +0000
Received: from DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:36:cafe::fc) by DB7PR05CA0027.outlook.office365.com
 (2603:10a6:10:36::40) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 06:40:22 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT026.mail.protection.outlook.com (100.127.142.242) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Mon, 25 Sep 2023 06:40:22 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Mon, 25 Sep 2023 06:40:22 +0000
Received: from 5737b35c8588.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 31CF8D8E-0A2A-4371-A0C7-3A5FEF07F4B0.1; 
 Mon, 25 Sep 2023 06:40:11 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 5737b35c8588.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 06:40:11 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB4PR08MB9261.eurprd08.prod.outlook.com (2603:10a6:10:3fa::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 06:40:08 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 06:40:06 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6c049980-5b6e-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5dzeIPvVU4WWTITOfMKectdXicpkMBPQfetlDL/n6dI=;
 b=vyglOw0TCRvvXf+EM6eujDu5SARSS38J5CEnk0UJMOvImWlgwIbxkGXLLzKk3bBh+iz99gSzNdHgCVsvYLXUbnRZ3CCX0aA4TzBv3KzxdRFPxXjoRuFy8e3X4ldic21RZFB1LpuLubBs8RqCtyKoSCYeNXffPtbqV53+xfHBzOk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 0ab8f3cb0ec2ed4a
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dqIWMTFgfFDs6v+UlEntKv6vQ4QH3DnxZT/H0WZE4HPc614WIRBBokDLyN+8PEzK6KC3gwvf/c9+YHP2Wigdj0F29OgIiwhXCFOX898Tenu7w1xLUY+wLRXPDakE5OaHlKTSm8NvHSW3b200uYB+jyqRLi52ZIg8YIxNtXAKB9ce3NDE1puwpM9/raoYoKoWwUY8ZUbVcQWx+/JoAX9mA2pQvmjAo83GmA4h5wihKxMpOK2sj306/qSoA93FnvOBYGyrLrUGM5BP/VsucNogdylQ95dkMR1SHc1ZBz89rk9ZXdwp8Ml6NwBLXZxFUPg1HnSKlYTNOQ6r5cSUCLf8sw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5dzeIPvVU4WWTITOfMKectdXicpkMBPQfetlDL/n6dI=;
 b=QOszFlzhAVisrvMU8Sb9GQcGOtKrMEhVp2yywzBcNoFyE0p7aMMnDUHRv+3GXyPCEixvztOHgCBMY9yE6rjgbGdHOKaGZS9hHMhMhSGiTeXyAFirEj8dxuU+npvD1X2XMw2JZ9WA23hK5/v+MpFsS+z88xCH+S/9KyFyyMfSTy1crZ2EPfZIWpwNSkekXct0vFK5p90wZOryaQjCcwjdhrG0i6AbAqeFo0/CXij1YTWbud9y2vz908sGutVJV7B2rN60R5NKVE15BGY4zRCslqTLaXqObyH4C0xFHYE3MjBwG840d5O7XG2ZNqGqg49H79XEqoAxg5DEvJukivbZvw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5dzeIPvVU4WWTITOfMKectdXicpkMBPQfetlDL/n6dI=;
 b=vyglOw0TCRvvXf+EM6eujDu5SARSS38J5CEnk0UJMOvImWlgwIbxkGXLLzKk3bBh+iz99gSzNdHgCVsvYLXUbnRZ3CCX0aA4TzBv3KzxdRFPxXjoRuFy8e3X4ldic21RZFB1LpuLubBs8RqCtyKoSCYeNXffPtbqV53+xfHBzOk=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>, "committers@xenproject.org"
	<committers@xenproject.org>
CC: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
	"sstabellini@kernel.org" <sstabellini@kernel.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, "jgross@suse.com" <jgross@suse.com>,
	=?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>, Anthony PERARD
	<anthony.perard@citrix.com>, "community.manager@xenproject.org"
	<community.manager@xenproject.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about code freeze
Thread-Topic: Xen 4.18 release: Reminder about code freeze
Thread-Index: AQHZ705Dwyrpd4I60kahQfZlaJ2JtLArFXGAgAACIQA=
Date: Mon, 25 Sep 2023 06:40:06 +0000
Message-ID: <2AB20BED-9ED9-4713-A39A-59891E09E02C@arm.com>
References:
 <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <6399a816-ac1a-b741-ed52-b5d03b498ee6@suse.com>
In-Reply-To: <6399a816-ac1a-b741-ed52-b5d03b498ee6@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DB4PR08MB9261:EE_|DBAEUR03FT026:EE_|GV1PR08MB7731:EE_
X-MS-Office365-Filtering-Correlation-Id: 072b0844-a87d-4c13-2d93-08dbbd924ad5
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 FndHPxJQdTlUKsv8eFXunm0pkWO6WGfsSyOG8HkE7TFQNQWopYssd+oagUKDJ3aOj9XviLjB+j0xgoan6a0eqDx78niUscNpU8pvl8LCyV9XAbURXs/1yCTI5A0ObbLpy3UI7MQvhVCVKMWWjL8h+zdu4xcX1WPQaAKTsMdHHKAweqE3lTdYwD5rmAC2PSuBNH8he9Sp3qG7HeNvYq1oJA/Byp00Wo/LhrhZbt4FyKu+RREvQAGpIrFcNu6YTXvsyZ2CyWR9/9Q9CGE4VZY3XnyYHfeisi7U914pAfprsfAM5FCZgiYXOlfOgy/xHPHDBZY6KNudcMe2whcezx5C2pqbL/bUe6m0fT18hhV2lZKoCphSa8WOKA20Lecf/Yttt5Qadb69F8cJsJ73OnDta0C4HatqINQbUZfmFCqZUwVV9A4pTbaV+FYI/6DQZJAgVzupCaxpPUwT0Uvihu/me5XzVyI9tHreg9nMQJ7IzOdTENeR4ny5RSaJ0I/u4zyd6gka0qDdb7dWxckNRtFmRE5q3jp0qsq0kXAq8Hxhg6iCtjW2HPGBrBIeG+vWKa1DVP7DQLC4UstjURvAb5pvmhjfZ16OUMiZlOUqBNCmj5uMPmjznJn63XTBieQ2EyCW2Jakl5HLglWiXTnlRQcnxyJSYqqjmt64gwgGWLxsJrU=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39850400004)(136003)(346002)(366004)(376002)(230922051799003)(186009)(1800799009)(451199024)(6512007)(66899024)(53546011)(71200400001)(6506007)(6486002)(83380400001)(122000001)(33656002)(86362001)(38100700002)(38070700005)(36756003)(2616005)(26005)(2906002)(41300700001)(316002)(7416002)(66446008)(76116006)(91956017)(54906003)(64756008)(66946007)(66476007)(478600001)(110136005)(966005)(8936002)(4326008)(8676002)(5660300002)(66556008)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <614E67252565F249BCD72EDBF96E612B@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR08MB9261
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	2968183a-f0bf-42ee-de9a-08dbbd92415d
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wx+Np9fIwOj4MArnDuR61ALsc//ibMt8SlxJbQCH0SBLUtLgIHo6jbLSpxk1gYoTVFO9U2evr1domCsnWOKAoEp4UZqB+r+HRD/mDJdSCmHM0ujOLl6ZcLw3sgMiw+KHNmqNgIM4Rby3Y+8sJ+gGVVEN5XlaN9yqoiyCYrG8WHY49qB8nErGY3wvGffDMk5YVZ9mUOFAo0z4WPx0yQJTqD4P7QPShALvA0x1G6VvgJT+fL8jcbtjQmOgMPAcmcJ0PI972R15DwkhDA8pKkFflailgIEO+DCgNhQ8CVLmlwSCsRCxqGuYAfPEAcd1qS2AxYkGwXI8sjSsRi7eysYLCiM/d+geBEFdwixlt4jrbAf4cQ/RatbwTuXxZ5haDfihjCzbT+mI+gmOQMMCdJ66QLOTtVqwuhSO5RkZfpeJvIEVd2Fa99dHKuPXufDqk9Ar6OqqWVlggtMVSZ2bqXLwxkZgO3v+WT/QssU3BV46wWj8/NZVUHtGz9aSSg4zeGPQkmsKnOEnXiQZ36lG/BQZ9vhseva83kMQKcXSxi4YI5FOI1eGP0JoNaeoWj22zBrQBzJXWj5vDY8hJE7Xg7/tQsKGSPiVUZ+aWH0pvkIOHdiG94Y15r7QYleGcBh+E+YANXFtYv4LARb89sDj3mZmeeKt+mSGZy+gUktCPzEWgDBirYyjL68lPed2LLabLDRv7O3UTZapgbxqCcWg2C3fXgKip2GC2OkNOrOdMfNcXBJiSufQ0/ZIyYLmMPtp7fTHyEaP2LOPXirU20qDiaUB8Q==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(346002)(376002)(396003)(230922051799003)(451199024)(186009)(1800799009)(82310400011)(40470700004)(46966006)(36840700001)(966005)(83380400001)(110136005)(41300700001)(478600001)(40480700001)(8676002)(5660300002)(2906002)(316002)(4326008)(70206006)(70586007)(54906003)(8936002)(6512007)(6486002)(66899024)(40460700003)(26005)(2616005)(336012)(6506007)(36860700001)(33656002)(36756003)(47076005)(86362001)(81166007)(356005)(53546011)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 06:40:22.1416
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 072b0844-a87d-4c13-2d93-08dbbd924ad5
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT026.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7731

SGkgSmFuLA0KDQo+IE9uIFNlcCAyNSwgMjAyMywgYXQgMTQ6MzIsIEphbiBCZXVsaWNoIDxqYmV1
bGljaEBzdXNlLmNvbT4gd3JvdGU6DQo+IA0KPiBPbiAyNS4wOS4yMDIzIDAzOjI1LCBIZW5yeSBX
YW5nIHdyb3RlOg0KPj4gSGkgZXZlcnlvbmUsDQo+PiANCj4+IFRoaXMgaXMgdGhlIHJlbWluZGVy
IHRoYXQgd2UgYXJlIGN1cnJlbnRseSBpbiBjb2RlIGZyZWV6ZS4gVGhlIGhhcmQgY29kZQ0KPj4g
ZnJlZXplIGRhdGUgd2lsbCBiZSBpbiB0d28gd2Vla3MsIGkuZS4gRnJpIE9jdCA2LCAyMDIzLg0K
PiANCj4gQ291bGQgeW91IGZ1cnRoZXIgcmVtaW5kIHVzIGFib3V0IHdoYXQgaXMgKG5vdCkgcGVy
bWl0dGVkIHRvIGdvIGluIGR1cmluZw0KPiB0aGlzIHRpbWU/DQoNClNvcnJ5LCBteSBiYWQuIEZy
b20gY29kZSBmcmVlemUsIHRlY2huaWNhbGx5IG9ubHkgYnVnZml4ZXMgYW5kIHJlbGVhc2UNCkJs
b2NrZXJzIGNhbiBnbyBpbi4NCg0KPiBJIGFsc28gdW5kZXJzdGFuZCBhbGwgY29tbWl0cyBuZWVk
IGEgcmVsZWFzZSBhY2sgZnJvbSBub3cgb24/DQoNCkkgdGhpbmsgc28uDQoNCj4gKEknbSBzb3Jy
eSwgd2UncmUgZG9pbmcgcmVsZWFzZXMgb25seSBldmVyeSBvbmNlIGluIGEgd2hpbGUsIHNvIGl0
IGlzDQo+IGFsd2F5cyBnb29kIGZvciB0aGluZ3MgdG8gYmUgcmUtc3BlbGxlZCBvdXQsIGkuZS4g
ZXZlbiBpZiB0aGV5IGhhdmVuJ3QNCj4gY2hhbmdlZCBmcm9tIGVhcmxpZXIgcmVsZWFzZXMuKQ0K
DQpBY3R1YWxseSwgdGhhbmtzIGZvciBhc2tpbmchIEZvciBNSVNSQSB3b3JrLi4uDQoNCg0KPiBU
aGlzLCBmb3IgZXhhbXBsZSwgd291bGQgdGhlbiBsaWtlbHkgbWVhbg0KPiB0aGF0IGFsbCBNaXNy
YSB3b3JrIG5vdyBuZWVkcyBxdWV1aW5nIGZvciBhZnRlciB0aGUgdHJlZSByZS1vcGVucyAuLi4N
Cg0K4oCmSSBhbHNvIHRob3VnaHQgYWJvdXQgdGhpcywgdG8gYmUgaG9uZXN0IEkgYW0gdGVtcHRl
ZCB0byBsb29zZSB0aGUgY29udHJvbA0Kb3IgYXQgbGVhc3Qgb2ZmZXIgc29tZSBmbGV4aWJpbGl0
eSBvbiB0aGlzIHNwZWNpZmljIHBhcnQsIGFzIG5vcm1hbGx5IE1JU1JBDQpyZWxhdGVkIGNoYW5n
ZXMgYXJlIGhhcm1sZXNzIGFuZCBhY3R1YWxseSBoYXJkZW4gdGhlIGNvZGUuIEkgYW0gd29uZGVy
aW5nDQppZiB0aGVyZSBhcmUgYW55IG9iamVjdGlvbnMgZnJvbSBvdGhlcnPigKYNCg0KQ29tbWl0
dGVycywgd291bGQgeW91IG1pbmQgc2hhcmluZyB5b3VyIG9waW5pb24gb24gdGhpcyBvbmU/IFRo
YW5rcyENCg0KS2luZCByZWdhcmRzLA0KSGVucnkNCg0KPiANCj4gVGhhbmtzLCBKYW4NCj4gDQo+
PiBUaGUgcGxhbm5lZCBkYXRlIGZvciA0LjE4IHJjMSBpcyB0aGlzIEZyaWRheSwgaS5lLiBTZXAg
MjksIDIwMjMuDQo+PiANCj4+IEFsc28sIGJlbG93IGlzIHRoZSAodXBkYXRlZCkgY3JpdGljYWwg
aXRlbXMgb24gbXkgbGlzdCBmb3IgNC4xOCByZWxlYXNlOg0KPj4gMS4gW1BBVENIIDAvN10gdG9v
bHM6IE1vcmUgUHl0aG9uIDMgZml4ZXMgKHBhcnQgMSBvZiBOKQ0KPj4gaHR0cHM6Ly9naXRsYWIu
Y29tL3hlbi1wcm9qZWN0L3hlbi8tL2lzc3Vlcy8xMTQNCj4+IA0KPj4gMi4gdG9vbHM6IFN3aXRj
aCB0byBub24tdHJ1bmNhdGluZyBYRU5WRVJfKiBvcHMNCj4+IGh0dHBzOi8vbG9yZS5rZXJuZWwu
b3JnL3hlbi1kZXZlbC8yMDIzMDExNzEzNTMzNi4xMTY2Mi0xLWFuZHJldy5jb29wZXIzQGNpdHJp
eC5jb20vDQo+PiANCj4+IDMuIGRvbTBsZXNzIHZzIHhlbnN0b3JlZCBzZXR1cCByYWNlIFdhczog
eGVuIHwgRmFpbGVkIHBpcGVsaW5lIGZvciBzdGFnaW5nIHwgNmE0N2JhMmYNCj4+IGh0dHBzOi8v
bWFyYy5pbmZvLz9sPXhlbi1kZXZlbCZtPTE2ODMxMjQ2ODgwODk3Nw0KPj4gaHR0cHM6Ly9tYXJj
LmluZm8vP2w9eGVuLWRldmVsJm09MTY4MzEyNjg3NjEwMjgzDQo+PiANCj4+IDQuIFtQQVRDSCB2
MiAwLzhdIEZpeGVzIHRvIGRlYnVnZ2luZyBmYWNpbGl0aWVzDQo+PiBodHRwczovL2xvcmUua2Vy
bmVsLm9yZy94ZW4tZGV2ZWwvMjFjYzI4YjktOTFkMS0xZTZlLTIzYWMtMDBjNDRmM2VjMDhlQGdt
YWlsLmNvbS8NCj4+IA0KPj4gS2luZCByZWdhcmRzLA0KPj4gSGVucnkNCj4+IA0KPiANCg0K


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 07:14:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 07:14:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607632.945882 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfnc-0002CI-Ab; Mon, 25 Sep 2023 07:14:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607632.945882; Mon, 25 Sep 2023 07:14:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfnc-0002CA-5F; Mon, 25 Sep 2023 07:14:32 +0000
Received: by outflank-mailman (input) for mailman id 607632;
 Mon, 25 Sep 2023 07:14:31 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3u+g=FJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qkfnb-0002C2-6N
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 07:14:31 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20608.outbound.protection.outlook.com
 [2a01:111:f400:7d00::608])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2a07ffa0-5b73-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 09:14:28 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB9859.eurprd04.prod.outlook.com (2603:10a6:800:1d9::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Mon, 25 Sep
 2023 07:14:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 07:14:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2a07ffa0-5b73-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DN5tKtWhYSCofPNrLdTdyaQkId0L0C4TmMTTS+jsUQ7Y/dmtes2neLTfRgaNnDW4BcnX/U9cMxW/BBxXXovwR6KSWAGavZz/e+iINZEdmvBJd4t2CVeeyCuMcXftl2RIe3uZSZGSl+qda5iWGtInCEIdLlCoML0JKpaPhtg4lGRVTtxMijjLFRuDq9dXZgAmeaona4O52wc+i6/iJu3l4FQ7sATKQyDN9J/AXoylPLbFX83bshB9XVDAX26/e5H57jebK+cZ3qEgLWejqcYkJ+kMosbmObunx6WTBx+8zyqiKFKwkPwQjVbVkl9Wasgn3nyZp6F78Vo6fYq+3IuCeQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DH3rbZ+u+EVzKUssKuqq/xr3hL9vtQ66aSQ3cCrbWwI=;
 b=RLUsk/zaQxg5xrN4tnCWJ7B0oSNRED4Rs/rPRDfFuuO3ySmzJjLTQa993xCKIlOhUjNUHIpNSwHHDKvcz/HIbS4gYTxYGGGq39lFrQoEFilFTMbaby1u2KSeR+Mtvthih3LkodOZY7dRbt0y2mcdlP0joPVDDH5Eq6bK1sAwKM2A6xIfIXpgWoUUm5/MlCTlbykCEVBviEX1a7kY2Hilu6Spj7DxrTlZL/FqZSnqof6nAMP93VdxzEH3MmXg0RUztxYSBLWmoRm9XfSfkkkWP+4vvjtl3Z+/Zlih8rKYMdVJPouUgMU8P7jUFh2v+cFlAQ42MRVYPEazeWcoOUL9rQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DH3rbZ+u+EVzKUssKuqq/xr3hL9vtQ66aSQ3cCrbWwI=;
 b=j3H2giJ41EdtvHtwgXfY6xh1gtvCxf+ZQhm+3Iecff/69XYTB7LsT9nCXY5FWd1J30QscJtkodUOfe8P3A/a/BrdhS/lwdAZLLjAc0F2mGSZfVQt1UEhbQRjgChBYfeqBqbuWU26pQ5ojniGCerTRxveegkbscBBDfPhXNfN2CRORZe3GIxK18chyLP79dIGFp8baIO0RkzGdI5QwgtFrZ6nPXl9WnJr9gluTYSLTBYxOOWHRgXKSRv8mjhnx2+rE4gSq9TTw9QYyLRLzphL9LC39ywza2MGjmmYy/65PZJxBlGExXoXU7cVCrwsE6/0AJhNdi0R/86veFRaV02hMA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <aebd0b15-4e1d-3ca0-ede9-524aff777576@suse.com>
Date: Mon, 25 Sep 2023 09:14:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: Xen 4.18 release: Reminder about code freeze
To: Henry Wang <Henry.Wang@arm.com>
Cc: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 "jgross@suse.com" <jgross@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
 "community.manager@xenproject.org" <community.manager@xenproject.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 "committers@xenproject.org" <committers@xenproject.org>
References: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <6399a816-ac1a-b741-ed52-b5d03b498ee6@suse.com>
 <2AB20BED-9ED9-4713-A39A-59891E09E02C@arm.com>
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <2AB20BED-9ED9-4713-A39A-59891E09E02C@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0108.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a8::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB9859:EE_
X-MS-Office365-Filtering-Correlation-Id: 45cd9aa4-a346-41bb-ca22-08dbbd970c0b
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vJzjcqnR+z73Rdonool1EwcMnwgvH9c7kwleFaG32qGa+YGjVOqxQLVWJ3K+PUFboMnzZHU86FP6DsMqODln8ld192i5D2weWFksj407Ty9PfNfG77te5pNw2TubV3v+Nhn/Y7xrDxSSA0hPwyW6Sr8l5vgD+ka64+f3Uc8AqqXUCthe39h9hXofckNISm3k6di3Tf7ay77rmHWlDx+j3VdOaUVdoTE4q3UB5qtsJI2HVsUsSML0615T30wo7F1H2i1dLc1qZEuhEBD0i+/KFDKoipl1rkh8QakZm2x5JUfaiu642qA/NLX+wSFBN/BYFCPRgVIt6tswHlV1oWXdr7stiiFVf7fsgdx4eVPyYtofZruA1FhbnKBIvDauX9nhDfOkrkWasOyjQa90NEtcyb80GvSvTIrUSEM7GldeK0ucnnHeFXuGzvxIfDvhakCy86YkS39ATZJc37vcVt0V9ow6NxMjVR0KUcfij0wvbI0Q4YYNAfDU3Fp2rssLUlzT23xBnjL0ZS9umRJQejyKqF9ZGonpZqcoCvsI20s2rHDwC7YYdQFhG94bmvO3K9ifLaG95l/GLiy3OspxANrAY8NxfGOz+0xmYClJpvZib6vDMlD6hPaquq0Q5IRMQn5zVAZzfv6ASxeEMIDR4iRMlQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39850400004)(396003)(366004)(136003)(376002)(346002)(230922051799003)(186009)(1800799009)(451199024)(66946007)(53546011)(6506007)(66899024)(83380400001)(66476007)(26005)(2616005)(66556008)(6916009)(316002)(54906003)(7416002)(4326008)(8936002)(8676002)(6486002)(478600001)(2906002)(5660300002)(6512007)(41300700001)(86362001)(38100700002)(36756003)(31696002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OGU3V1c1V1E1NzFobEVqUmJ4eThQdVJrOUFSNllGa3FveitRY2I3VVFNTWJq?=
 =?utf-8?B?QlRVR1RWa1Z4NHBFVUVyK3lqTHVibmRYeEJMeU9IOTdZb2t3c0pLNytZU0Er?=
 =?utf-8?B?VGdqZlpuTW05WjZBUG5XY3VrQ3crbHhQNXYrNWlKSE1zd25ad09CazlwK3Za?=
 =?utf-8?B?V0VMNC9KTVVUWXNhbWx4Uk84VmNqMlVPbkZoTTE2VkpOc3ZSbFVKUFFDejlw?=
 =?utf-8?B?bG5LN3VGZk0vNW5zOU1CNWpKWVM4b2hFTVpuOGpmekN2NXFjYkN0VGxOU2N6?=
 =?utf-8?B?OFBaZnN0eE5BREt0MkVvSjhlZ2c5amZkdURybDhVR0NkeGtjRVhwVXcvNnRF?=
 =?utf-8?B?ZER2MmUxbjNEYUhGOFNVMEF3SXVyM3hQallRbGNnZFFYbEVjaFMvaXNmdlM2?=
 =?utf-8?B?VHZVNFVPOWVuMm9Kb1crbWdaNTFnOE9QcVdqRm1ndmwxd0hqQ1FLbWpQUW85?=
 =?utf-8?B?N296Snk2YkRZQTJaWGdZNzljb1d5L0VVTHM4MzF1NUhDc09MR1JBYTVlTm84?=
 =?utf-8?B?a1U0c3BWYXNob3hxMDEvZ0NKa01KOUo0Rk9qay9rQ0xRZ1A1aFo5WDF3QUUr?=
 =?utf-8?B?VnZzQkVvMWphVWpzRlgxd3cySGZPMHFncDQyNHpkMmJMUlo3bTFpMTNxdnYx?=
 =?utf-8?B?OC8zL3VPZmN6Vm9RTXEyWXVvd3h1RkRTb0l4d0dkcGVad0FQNjBIZGQvT09j?=
 =?utf-8?B?SGNZWld5VDZOSUtVaWpTVElCOTZYZmdMT056TWNGMHdqVmp4Q05HUDE5OFk0?=
 =?utf-8?B?Q203cHF5YkVLd0VDZVE3cEk4cWxYODU5UEJDTjRyQjBjMzR1TXZoaEJyRWNV?=
 =?utf-8?B?WXJSNGN3b0JWNGUwN0QzeWk0V2xjS3BUVUpaWnN0K1Bwa2lqbjdnemJmb1RJ?=
 =?utf-8?B?OEFGKzFqVm1qUHJaWTFzVnN4QXJGcVRnb3VYNmtFeVVpSEVkTXM0ZzdVTGVG?=
 =?utf-8?B?RGcwL0w5VmJ3UE5ISXh6SXJqMEoxekVndlVnNnhCT0hzb0VYTGRuSmZOQVRm?=
 =?utf-8?B?ZytrY01qZ1FHWnNyWm9nRGRWdHJIWXNWUDM3RXJORDZlTk5WSE1HdmJGakE3?=
 =?utf-8?B?ZmFVWlUraG1JRjhNVHAxM2duUGMzdW5yTXVLRjQxNUpOc0QvbG14YzV4cVFy?=
 =?utf-8?B?RjIrNkZaNUtxbHlrb0VkNWNtT2VYbkVtd293ak1jaTJtTXJZbEZpcThUNi9a?=
 =?utf-8?B?ZEJMTG91QTRBa3V6R0hLRnEyMEpwR0J0c3RWQ3IvZTB4ejhVV3YydG5HMjVE?=
 =?utf-8?B?Q3NSQUZMSVptRVFvTGh4YkwwS1hiMXVPSTF0UDdqemhpdTdaTUpFK3pqLzJC?=
 =?utf-8?B?OVNHemVDWHlzSU5kNHoyM3Z3KzdUWnRjbGQrd09mNFNqazFzMlJNemQ0NWgv?=
 =?utf-8?B?UmlLRGt6cVpqNFZ2QUIrbVE5ZmJmdnhieXNJcXNsSVlncS84cmdzYVc5Z3d0?=
 =?utf-8?B?Y3MwMnh2SS83NVRqTVMrN2VMNVZydVp0eGF5akZqRVFtTklGMmRVUEp5Z3lw?=
 =?utf-8?B?VVNWc0w4OVQvZ0loVzNXMVl4Z2psM1RGQnJvMmh5U296dVpEOE5EOVR1cEhI?=
 =?utf-8?B?bE9YM2pUdXdyTmtScFdhU3MrcEIza3lPVTdSSmh3Y3FJaWVIeHI4SndqZzlU?=
 =?utf-8?B?NWlyUzQxa0U3OFl5Q0N0UkF6SGVoMnVodHp1UGRjcnY0RFlPZlNLTm05RW9j?=
 =?utf-8?B?cjh1MVVoMVZhWnJ4TXRqbjcxbzVicEVZMnpWbjQyR1BReW1UZFlEb01TOXdP?=
 =?utf-8?B?YTAyUWkrQWE5T0g5ZHNBc0d4UkFtazlGaVN0Sk1Zc0F4L0NmUlZCdDlXSjFu?=
 =?utf-8?B?bWNGMDQzM3R5Z2ZKb0hnUlJnODhlTmpLZGFNVmxNZDZkRzEwR2dHUDJPQjBM?=
 =?utf-8?B?NUNJSjZteU1Qb2NHcUpYZjRldEpHSFoyUGhzcHpGcFhKRlJhYzQ3cTZDWVZl?=
 =?utf-8?B?aDJKSkRrUFZ4R0FFRENNRHlxOTA5QnJJQXRIaEhPbTVFRkpod0Y1WXVDQTRO?=
 =?utf-8?B?NXRzdStpMnc0cFZBZDJwS25wVVN4eDdpUllnR2xSMWl1c3hVbjdiVUoxZjNK?=
 =?utf-8?B?U0I3OTRMM0tPeXNTckt3L2NVNWxUQjJtWHZEWHhXdi9vd3BZYUYwb3pMWHhn?=
 =?utf-8?Q?PyfXfsUkRDwRQkUONc7+tiZJr?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 45cd9aa4-a346-41bb-ca22-08dbbd970c0b
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 07:14:24.4057
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: yJHu6qKu20OesDQ5KTov4nS3kWkjLHlNtnTSLf4PQ3n/80OTOu9cW0OkgAYnrQXmkAI40zEqykVtFSxgA+Levw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB9859

On 25.09.2023 08:40, Henry Wang wrote:
> Hi Jan,
> 
>> On Sep 25, 2023, at 14:32, Jan Beulich <jbeulich@suse.com> wrote:
>>
>> On 25.09.2023 03:25, Henry Wang wrote:
>>> Hi everyone,
>>>
>>> This is the reminder that we are currently in code freeze. The hard code
>>> freeze date will be in two weeks, i.e. Fri Oct 6, 2023.
>>
>> Could you further remind us about what is (not) permitted to go in during
>> this time?
> 
> Sorry, my bad. From code freeze, technically only bugfixes and release
> Blockers can go in.
> 
>> I also understand all commits need a release ack from now on?
> 
> I think so.
> 
>> (I'm sorry, we're doing releases only every once in a while, so it is
>> always good for things to be re-spelled out, i.e. even if they haven't
>> changed from earlier releases.)
> 
> Actually, thanks for asking! For MISRA work...
> 
> 
>> This, for example, would then likely mean
>> that all Misra work now needs queuing for after the tree re-opens ...
> 
> …I also thought about this, to be honest I am tempted to loose the control
> or at least offer some flexibility on this specific part, as normally MISRA
> related changes are harmless and actually harden the code. I am wondering
> if there are any objections from others…

On a case by case basis, still allowing some in might be okay. You will want
to release-ack them, though. Right now I have three pending for commit which
might qualify:
xen/numa: address a violation of MISRA C:2012 Rule 8.3
xen/hypercalls: address violations of MISRA C:2012 Rule 8.3
xen/emul-i8254: remove forward declarations and re-order functions

I'll also commit "MAINTAINERS: Remove myself as RISC-V maintainer", without
thinking that it would need a release ack.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 07:19:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 07:19:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607638.945892 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfry-0002rL-PJ; Mon, 25 Sep 2023 07:19:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607638.945892; Mon, 25 Sep 2023 07:19:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfry-0002rE-Mb; Mon, 25 Sep 2023 07:19:02 +0000
Received: by outflank-mailman (input) for mailman id 607638;
 Mon, 25 Sep 2023 07:19:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkfrx-0002r5-BA
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 07:19:01 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0615.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::615])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cc2df2fb-5b73-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 09:19:00 +0200 (CEST)
Received: from AS9PR0301CA0047.eurprd03.prod.outlook.com
 (2603:10a6:20b:469::27) by AS4PR08MB8070.eurprd08.prod.outlook.com
 (2603:10a6:20b:589::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.27; Mon, 25 Sep
 2023 07:18:53 +0000
Received: from AM7EUR03FT008.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:469:cafe::ac) by AS9PR0301CA0047.outlook.office365.com
 (2603:10a6:20b:469::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 07:18:53 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT008.mail.protection.outlook.com (100.127.141.25) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.18 via Frontend Transport; Mon, 25 Sep 2023 07:18:53 +0000
Received: ("Tessian outbound 0b7d6027328f:v175");
 Mon, 25 Sep 2023 07:18:53 +0000
Received: from c8b045ad45f8.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 4A0D1560-8DA7-4DBB-9FD9-4D2024B6FE5E.1; 
 Mon, 25 Sep 2023 07:18:46 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c8b045ad45f8.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 07:18:46 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AM9PR08MB5972.eurprd08.prod.outlook.com (2603:10a6:20b:280::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 07:18:41 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 07:18:39 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cc2df2fb-5b73-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CQZdIHxrazf7PWt5eoI+kPjSJSnG/uUzb+As2SKASE4=;
 b=oRSqQQOkhRbWxCmUf678GNBEOwVUxmjnCjczGAAwG6HKgiD+GoSaVx+iX7z/+v6vRWiLyv2xUKe3qRv1A9qOrK1o5tVOnqjRdeYHjzxhPAHhcKB7RbEL0tkQnWrWV8tN68Ppi4FWUkLDzWCk7Y+j42/asIRfUgaNjn95P4mLcgE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 5acb99db56d20ba6
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=NWoXAl8VAy52ynbyPFFPq2mDmbwf/xtZ/BZlAKYT4U+rtU6+keD1XBnIhdZQGxzWg263TqfZHRzQ1Dub9bUgK0h8+KNjB0Aw7zSTqICzMPL9JAyfYngkIKjUq4Piqx1wvVnIH5C6zxw0P9L/egU24dqhAM0tJA+Ei4Q+40Eyoh5bbGjN6R1duSGsA+o6bLGxeXMFV2tSoZBsx89qXwVc0YlPQID9Z1IN8QgQ4164v0A+bxkZSgdhIVGLi/nKQzozPySF5ldD6rrGnAPndaxWebDFFJBvX/cVfNwkjcZTmeRsfeGNB4ZIbXVw0kmJh09iwS6+Bm/1LwKrtPB9gxNFLg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=CQZdIHxrazf7PWt5eoI+kPjSJSnG/uUzb+As2SKASE4=;
 b=Jwcdja1792tGYc+IpOVc5GVQfA2xc3cuTuP8VWGv6LdNHDOB2NwKBORLzB4ZPIKOCFDXyPaVrqxtGmcYqXWCs1/AVkepT1z46gy4e9HQSOL1VDkYHh4IbEo5EKEbe8onzGnNvg/WtMXHdxiPEoATNDqqXK8LjNNNzrK479h9OHBjXBEXLhsqScgZ47n9+l2wiDS3HwrhHxfmm0LZ9Ia3T5s4kLPm83r7VX7Ej5pN+dA4ggjHnU8ENwNTCIHgsf9mH9cpjnJtbSOTSyfNLAj6DJEbhCC7bgs6VUdlujEJeaG7B3ceNWSRjZ+lJbhq8EXHwYC2HuKx1AC/pl2A1swikA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=CQZdIHxrazf7PWt5eoI+kPjSJSnG/uUzb+As2SKASE4=;
 b=oRSqQQOkhRbWxCmUf678GNBEOwVUxmjnCjczGAAwG6HKgiD+GoSaVx+iX7z/+v6vRWiLyv2xUKe3qRv1A9qOrK1o5tVOnqjRdeYHjzxhPAHhcKB7RbEL0tkQnWrWV8tN68Ppi4FWUkLDzWCk7Y+j42/asIRfUgaNjn95P4mLcgE=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>, Federico Serafini
	<federico.serafini@bugseng.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.com>, Andrew Cooper <andrew.cooper3@citrix.com>, George
 Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Julien
 Grall <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH] xen/numa: address a violation of MISRA C:2012 Rule
 8.3
Thread-Topic: [XEN PATCH] xen/numa: address a violation of MISRA C:2012 Rule
 8.3
Thread-Index: AQHZ7JXAQvmPW7JUv0msOY3UtYH8n7Al3TGAgAVKmoA=
Date: Mon, 25 Sep 2023 07:18:39 +0000
Message-ID: <65F86239-6C9B-4752-ACA6-D3CC9D1F0BDC@arm.com>
References:
 <2b1c7a05a2ddd3c9f83e1a147ebf295e55ddcbe9.1695305387.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2309211529550.3563@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309211529550.3563@ubuntu-linux-20-04-desktop>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AM9PR08MB5972:EE_|AM7EUR03FT008:EE_|AS4PR08MB8070:EE_
X-MS-Office365-Filtering-Correlation-Id: 1b0677fe-75ac-4b88-1b1a-08dbbd97ac66
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 v4RhuovWKAl7Ur6ci1RHjuzp6vv9Est7/p7kZVrGnOe0p8tLhxKqXEI/R9Nyn2hT36Sy+XrSwQUOC/NpVKphoXUFQCN4HgFOJfXpls+RvZbSSP2r3DhXNfYJrAwkj88qo8woeZsr0RwSqwuzIM1BvkgSGT8U/mph9NhKbNfY5wMrklEmSY7RXErDrLgY8fwZsKYfrcHCuu60dXx+Xm3IyXq99me7cL9iCWaFSxYqnRr/zy2mi4AOCSa86NqcIKL/VM4PlXit1ZI46KGRtCLW9NfknTDFfLWhxVvTRemJbc2/X3JstXYjzbgwUhHFbvPgPKUudjRPPL5+MeZZ4pmB+jNr/v05itqxTY4RiRTDEGV3HJ6w3YOjPtv4nvfmGcm78gmGSgt1CDPk3J3h/XkvMhGX1Q0JQZCnh19dPsLcpTMILEae7H8DstrNENcWTv/gi0mmC5tgkzui2gKHGVxd/Rf8KtF2EP+JuoM4A+878diZPn4+LakS4+DuQ1zOjSkzjLFlMQVo2qCl1YJXEIYOPshEKT7dzYSU6YEAX3Eb7Y1gU8pzgJy3rszHkNwjj1PaulzjJv21jyyGdUDbMAikkL94LXSHohssMLNttvCKOGwSXDj9TZGv4ZmSoZqnYxnnmoM9Fqlt4KnSThGc9mJHHg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(376002)(346002)(39860400002)(366004)(230922051799003)(451199024)(1800799009)(186009)(54906003)(2906002)(5660300002)(316002)(41300700001)(8676002)(8936002)(36756003)(4326008)(2616005)(64756008)(66446008)(66476007)(66556008)(66946007)(76116006)(86362001)(33656002)(110136005)(91956017)(558084003)(6486002)(53546011)(6512007)(6506007)(26005)(71200400001)(122000001)(38070700005)(38100700002)(478600001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <63F70FA2BE3D5F46A44A92BCC7837814@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB5972
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT008.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	2838d000-a333-4ff6-71d2-08dbbd97a44e
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GxO6W921nRxBiz4kJ/aKovOr8FMn8wEnRG6Ch3IO2Xs9v2RG8ux+D6jcgfCjjpAtP5GjBxft2uZMEYNttImVp6Xl9X+b4uWP6Wf5NinYOQgewagTyuaJB+TKTszDRhCOCGXGFNCeNl+7iIEU9K4nkYTUY89CLD4w9nRmAccX8ozOlF3e42saC3Tx4wJ+Bpj8KS4h454mamHKQ4xsokYU5/ewnzk17+dutvnMYuK2omvXPRBrRGDZF4sUDL9B1mdESg0H4fKYJEUByjwHPoLQMc3IM6OzEkkdP7nHJuZ+hVCh9PvITNTIFgENqV5i4FstRjaY+FgrOtHmsny/e5EKpQ7o5qn648jLXN1TEQwRCThZT+CbN3EyVwEu0+fqSdB8SRTi4ryD/Kh68Z8SRC7EU/0qWcT7vZwuJFeoGL2TQv7JHg4AE9lqSB4QC7YsT3jqS01M3uNy+pwDOm3AbWXkMHXPjvsC1TuQmnixx8VVf0JkS1Pkj5AaCPXmE5KUggsEOcvn5RzTtDTaNnyss3OX12XpaaZ0p34SF07+X30OfmZ/EPzOEviNvd30KY1yk91LKLYOcz/xDDCrT3F0KyH/y8shrfQd92Xt9hIRmJy//RaH6JAauAeUwpsY8PzCVGnOAGpdmcw3KTR0McvtXkgjFaQYCOv88ghp9Am6XJIFGkIneIm63ccv4DIxOfquQfxoNR4D0/U9A00wS5xTxQRs7Fg5lLIYso1OH7HPh/X6Ec24F7pZhRWKViz4hAiIdNvu
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(136003)(376002)(39860400002)(346002)(230922051799003)(1800799009)(186009)(82310400011)(451199024)(46966006)(36840700001)(40470700004)(26005)(40460700003)(478600001)(2616005)(336012)(36756003)(86362001)(82740400003)(356005)(81166007)(47076005)(33656002)(36860700001)(5660300002)(6486002)(53546011)(6506007)(6512007)(40480700001)(4326008)(2906002)(8936002)(8676002)(41300700001)(316002)(54906003)(110136005)(70206006)(70586007)(4744005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 07:18:53.2516
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1b0677fe-75ac-4b88-1b1a-08dbbd97ac66
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT008.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB8070

Hi,

> On Sep 22, 2023, at 06:30, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> On Thu, 21 Sep 2023, Federico Serafini wrote:
>> Make object declarations consistent. No functional change.
>>=20
>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>=20
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 07:20:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 07:20:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607642.945901 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkft5-0004G3-3A; Mon, 25 Sep 2023 07:20:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607642.945901; Mon, 25 Sep 2023 07:20:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkft5-0004Fw-0b; Mon, 25 Sep 2023 07:20:11 +0000
Received: by outflank-mailman (input) for mailman id 607642;
 Mon, 25 Sep 2023 07:20:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkft3-0004Fi-1l
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 07:20:09 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2072.outbound.protection.outlook.com [40.107.7.72])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f35856e8-5b73-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 09:20:06 +0200 (CEST)
Received: from AM6P194CA0037.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:84::14)
 by AM8PR08MB5572.eurprd08.prod.outlook.com (2603:10a6:20b:1db::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 07:19:36 +0000
Received: from AM7EUR03FT009.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:84:cafe::a6) by AM6P194CA0037.outlook.office365.com
 (2603:10a6:209:84::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 07:19:36 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT009.mail.protection.outlook.com (100.127.140.130) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.18 via Frontend Transport; Mon, 25 Sep 2023 07:19:36 +0000
Received: ("Tessian outbound d084e965c4eb:v175");
 Mon, 25 Sep 2023 07:19:36 +0000
Received: from e4cc6f1ed806.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 171EDF0C-5E5F-4F17-93E2-671B208928EB.1; 
 Mon, 25 Sep 2023 07:19:29 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e4cc6f1ed806.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 07:19:29 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DU0PR08MB8833.eurprd08.prod.outlook.com (2603:10a6:10:478::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 07:19:26 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 07:19:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f35856e8-5b73-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+CeZlE49HFDDQu2jidkldbpjFdhu5s8QpoVM4/hTDOQ=;
 b=bBVgd6CFnfgk1qHniEs0w6Ol+uFJ564PBjUYkH8yMwW1NVsKCv4SB/XwfaXaJmiHk3dIn09bypg0KbarDNnZympRjwCuq8dSZCIpHBsiF8moCBh7mTyRHInCd6nMhdLIiZPcNSC0JhHZG5AA6nf57Nz56HjwgIJ2XC6L1yVVQ2U=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 36a292b4d102817e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kUMfI3tzKU2tfS4vYk7MEaCot42GF1STJfRaku1Qq8tK4scNZEIpe5e+7m+ZFtT0oa9DTNTux47jnr74obJ5Z5l5Cn0MAxYZF2yNebkBRrVMawMytnhq2UcUHoWUAPkKwSzy4PiO/DIr99lEIO17mK/ZMRi6zGa1PeIOdzwBoOYZayNMzGxgkLWQnLx1Y97hPp4a32NfnSozD+CXy0f5HjP1bct+QyaG397pI60PgFuDnXs89wimH7BhtzAQAPzh1+5/cglGx3XEmtTNEF677JDMyrybUPsgGLdS79+usPVCHYfZUM+Rj56IfFGNlhBqiayCkELKQkPL4tsGMwcJ9A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+CeZlE49HFDDQu2jidkldbpjFdhu5s8QpoVM4/hTDOQ=;
 b=bIm+rOPdnaMLO7E4fDcnsDzr4vMVMxhk84vHdlbohVf/bs/Po9K84Q9C54gSrAUL3mmMHdkk4c1mo7bVLgXivNAjOEmW1XXHeZHWtD/ynuNN9bjzrxncnF7sSWQmGha/ouz1kM2Qs3L4Drqbi/lpRf5RnoCeM2JOQrO8pgz5D4HcfeeJ2bzG3K/4J2SzG+D1NunCEMlEUtn8zVZxMXszrjraDJPc+qnar9xF2kweWzPzB3KuEDMzhxFh+PRfN/Su83vG7HAeZayFhPwxOV+egjg2s1KjPjU8S2qK8s56Y46E8vfSRfPYrv6uIg+zV7jGxn9+psOQzdQ18UtbGGSSgg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+CeZlE49HFDDQu2jidkldbpjFdhu5s8QpoVM4/hTDOQ=;
 b=bBVgd6CFnfgk1qHniEs0w6Ol+uFJ564PBjUYkH8yMwW1NVsKCv4SB/XwfaXaJmiHk3dIn09bypg0KbarDNnZympRjwCuq8dSZCIpHBsiF8moCBh7mTyRHInCd6nMhdLIiZPcNSC0JhHZG5AA6nf57Nz56HjwgIJ2XC6L1yVVQ2U=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>, Federico Serafini
	<federico.serafini@bugseng.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.com>, Andrew Cooper <andrew.cooper3@citrix.com>, George
 Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Julien
 Grall <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [XEN PATCH v3] xen/hypercalls: address violations of MISRA C:2012
 Rule 8.3
Thread-Topic: [XEN PATCH v3] xen/hypercalls: address violations of MISRA
 C:2012 Rule 8.3
Thread-Index: AQHZ7ITbJMQ5KGQVDky/tIiL15HF1rAl3l8AgAVJxgA=
Date: Mon, 25 Sep 2023 07:19:26 +0000
Message-ID: <659974FA-A50D-4C8C-8267-1406C54CE407@arm.com>
References:
 <2c3e9469b3e59c7c4d0128320515f2b3df2b4c1c.1695297383.git.federico.serafini@bugseng.com>
 <alpine.DEB.2.22.394.2309211533510.3563@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309211533510.3563@ubuntu-linux-20-04-desktop>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DU0PR08MB8833:EE_|AM7EUR03FT009:EE_|AM8PR08MB5572:EE_
X-MS-Office365-Filtering-Correlation-Id: eb271532-49bf-4115-339f-08dbbd97c609
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 MPAOm48ez6++nKzIqHgn0fHW4UnM9ywtXc9wOtpwiJcbS/JZ5wCn47J20LVlxXPHVr7ASwi8ealktWT6UIKFvyuGUfIYe28yRTXnNwR1cCCSuyWVeeF82Txn05Vo+EZqi8KRm8eTdHee4V8uOkDQrzSUe+L7Fo8hJVoc4932xJxGtfg5rF8hTk4NeLfGNnUPdGEDeiGH/VVRjw+T1p6JiEUpupe6lilkyIgMsiLbqnto+zZXju2G2YneX+pC5+CWLrPYtEqE+wqstGPfpFi/lL0QHxT7ANXOxSuK42lkVn5ZFTLruyF/5pQFLyd6RR4Ql7zJVRZl0tGGXzbZLGU3r2/nISdpOYsQXn1RxFtWTfmmUtzc9kovQUwP1yA18elGSoOj0chptY91qbicEaPENBQICsdaaPGnLL7Sa+b7mZZsnRXhTaYXiKV80tIWUj2RA61AWpV3CL/pjbAlktTdf65rx+gSmO5B1PPu3CLnpRII028j6Fpc2I8t5yV19qhyFL8wyHjoxLrEkDNdV7hF4ciS4JHDBry6jpNioAEH3PcTs9nE3dLUfm+ZqgCBAjiKpq7A4VGt1uhSNKTvS8hZ8Upia6t6Gqj2k0Z1hYBGxGbOQ888s07qsJ1BajFjDEiEVRc3GQH4UuN0xXuucFPDqg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(396003)(136003)(39860400002)(376002)(230922051799003)(186009)(1800799009)(451199024)(2906002)(4744005)(5660300002)(110136005)(66946007)(66476007)(66446008)(64756008)(66556008)(54906003)(91956017)(76116006)(478600001)(71200400001)(6512007)(53546011)(2616005)(26005)(6486002)(6506007)(8936002)(8676002)(4326008)(316002)(41300700001)(122000001)(86362001)(38070700005)(36756003)(38100700002)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <E7050FF7AB4AA54080887E5EB8991F48@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8833
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT009.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	0737d98d-513b-4405-5eb3-08dbbd97c04d
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	vIFDWQUcKnGITxZM0jTmctnt+8tQFWeg1ANIZt2RZqrd+EZ5RsYkQNMlWBkloLHo+fRQNGmPot5XaXUOKCI6grkB6GeCdQ9X5VJvwRxA5oj8XGIcb3f8P9TNI0wUIMf9ajL0x/DPdpSAqZgRQDX6Z3M2PpKElopkasJktDJWGYqinzwpdZOGdVvN0N4zNoOm4vuoPFlnn2Y5kX35/1Zue9edQFDoJrNp/cQw2ZllHFr24dh/2cfvSAGkMLnMSo5/aDUI+4i+x7qDFnAb5kw/bVcO7IGRPQPy8F4EefgLppJfQaFIlI3dXaUUrNsboCxkDE644+jPNEzPM85GFPqTojZ3UG5Fi6XpdRBlPHxoL97ZI/cvsZukXL3YkAuzN3tE25ufptkJDE2UGPRFBkZxl2/YsCtCMPi3oolj5jyQ3zzzpQL9VIJ4VTFyCFRjHbwLj39T82ppscW2CNnj+e5DxqVDt51skS4cUdtozDyhz1keTmA1Q46m0jmWnugy17DW02v4I/oHSC4auxHxfNJ72qhzXNO/uTqyUp0Pjwz1CzwX69HerGzX5+iv8ZudyReT8ywv/0VY/hnn27TtOpVskXkKAWUQQ7w9/WiuFOisWEswCVRskLtPcJa9DNSLQ0pmBnn44VQ5rBLOYlquXDk2yev9JAR92PpcvpUw1dDcQOiBqYYoDhN6eSKTA4QEcQ7F2qNB86QwUot58QJ8homiIOEFwbGPdxnmr71zUUHOFqdkb5xILCTrbPRSg4yzbwxT
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(346002)(376002)(136003)(39860400002)(230922051799003)(82310400011)(1800799009)(451199024)(186009)(36840700001)(40470700004)(46966006)(478600001)(6512007)(53546011)(41300700001)(81166007)(40480700001)(356005)(316002)(26005)(336012)(2616005)(5660300002)(70206006)(70586007)(6506007)(6486002)(110136005)(54906003)(8676002)(8936002)(4326008)(47076005)(36860700001)(2906002)(40460700003)(4744005)(86362001)(33656002)(36756003)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 07:19:36.2791
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: eb271532-49bf-4115-339f-08dbbd97c609
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT009.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5572

Hi,

> On Sep 22, 2023, at 06:33, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> On Thu, 21 Sep 2023, Federico Serafini wrote:
>> Make function declarations and definitions consistent.
>> No functional change.
>>=20
>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>=20
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 07:20:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 07:20:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607645.945911 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkftL-0004aw-Et; Mon, 25 Sep 2023 07:20:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607645.945911; Mon, 25 Sep 2023 07:20:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkftL-0004ap-Bq; Mon, 25 Sep 2023 07:20:27 +0000
Received: by outflank-mailman (input) for mailman id 607645;
 Mon, 25 Sep 2023 07:20:26 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkftK-0004Fi-J0
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 07:20:26 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062c.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fe3210bb-5b73-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 09:20:24 +0200 (CEST)
Received: from DU2PR04CA0084.eurprd04.prod.outlook.com (2603:10a6:10:232::29)
 by VE1PR08MB5645.eurprd08.prod.outlook.com (2603:10a6:800:1a6::23)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 07:20:21 +0000
Received: from DBAEUR03FT028.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:232:cafe::b9) by DU2PR04CA0084.outlook.office365.com
 (2603:10a6:10:232::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 07:20:21 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT028.mail.protection.outlook.com (100.127.142.236) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.17 via Frontend Transport; Mon, 25 Sep 2023 07:20:21 +0000
Received: ("Tessian outbound d084e965c4eb:v175");
 Mon, 25 Sep 2023 07:20:21 +0000
Received: from f7c75751a27f.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 598699A8-5C73-498E-9B5D-1223EE0D049A.1; 
 Mon, 25 Sep 2023 07:20:14 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f7c75751a27f.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 07:20:14 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA4PR08MB6032.eurprd08.prod.outlook.com (2603:10a6:102:e4::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 07:20:12 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 07:20:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fe3210bb-5b73-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pLGGEAGY3j0Ok5hYGUEaFS9FQ2oHHaZz9jMk2Dd1tTA=;
 b=MX4Ck2ESgxi3swQD8qk71mlrfXBe/e+rSXehZKFT8WnhfWe5TZOAqHwcbzlGrXzB+jpLkrNyfPnWMYBxCPDpXeDxlbt8rfV4fXvy7HVyCSB3vFZcnG88R8dEqZLkQQACPCKT/uvMt2VS1ZXbAB5UMiTK3NrgeFRD1YKmo46R1kY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 3b6551a31de4663c
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=FOZN9UWlFDBlfpxuNsVXDTvsPcYmCfnTywUSi9GguukQua5lIai3ihqUlow74V6Y8xwkv3eT08mCN3xc7UwvTtYiFJcH1HbgX2onnxVgLm5fHovArNfbO45oZFM9EsO0OstJtA4v1pq/6nlSnsxRs4aMe9PFW2WO2NC1fUo3RUCP/rvW5sS9y1OcKpijqgobIGd4j21dPq+N8b9hpjn35tfK/RD9QLp0Deat4JpE+ubvxcKwUy5YAtgIcNFlpcy7ATXuRgUPvq1nZGDNZ5HNTPbJ02uQtfKjgxF4q5PoJqRrHI635X6siYgi1z0Wmf9/sw2bItekjSum557UytYeeA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pLGGEAGY3j0Ok5hYGUEaFS9FQ2oHHaZz9jMk2Dd1tTA=;
 b=AjAm64CwbUzdKfig+XjAAEXIygikbKfZsbiI6tabIOxKLgAI1m7ROdhXLg2RFKZLzmceCD6AiyPR5mE+oZ7xiTbvXEgxLCqSuBZ7alSnbDAgAv8zBJ2ospROPXtA9PFZ6VY4Tj/jQrmvWKolKa06D+3n075dIQqFx9CWBldSkX7qK3ThuOvRZO8EpunizVtDJLXQ5dbVxRt11aCE1201m6CmEH3HjkYYHMd0r6wYcW6lnc8KJMm3qlXLtTo89t00EC+IV6+D3WbL+adbv8J0PAH/k+Il4/8rVsTM9b9Yu3Oxj7N5+pS6lZ90sERwGiS8PBAL9g3kT5YPAht5lxwGSw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pLGGEAGY3j0Ok5hYGUEaFS9FQ2oHHaZz9jMk2Dd1tTA=;
 b=MX4Ck2ESgxi3swQD8qk71mlrfXBe/e+rSXehZKFT8WnhfWe5TZOAqHwcbzlGrXzB+jpLkrNyfPnWMYBxCPDpXeDxlbt8rfV4fXvy7HVyCSB3vFZcnG88R8dEqZLkQQACPCKT/uvMt2VS1ZXbAB5UMiTK3NrgeFRD1YKmo46R1kY=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Federico Serafini <federico.serafini@bugseng.com>,
	"consulting@bugseng.com" <consulting@bugseng.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [XEN PATCH v2] xen/emul-i8254: remove forward declarations and
 re-order functions
Thread-Topic: [XEN PATCH v2] xen/emul-i8254: remove forward declarations and
 re-order functions
Thread-Index: AQHZ7Wg4RWFhAmFg10Cbma+npgB3n7ArGxAAgAALhIA=
Date: Mon, 25 Sep 2023 07:20:12 +0000
Message-ID: <C38EC925-8F41-4A11-8BC6-228B6FA49E20@arm.com>
References:
 <b2877f0e2d867e04e806d70cc2ba175386c30d9c.1695392080.git.federico.serafini@bugseng.com>
 <8e49ae70-5e2e-e87b-f7e6-901f9a689fe1@suse.com>
In-Reply-To: <8e49ae70-5e2e-e87b-f7e6-901f9a689fe1@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PA4PR08MB6032:EE_|DBAEUR03FT028:EE_|VE1PR08MB5645:EE_
X-MS-Office365-Filtering-Correlation-Id: 57f8a6a5-f688-4b84-2b67-08dbbd97e0d5
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 8eRZfmRFxVqgvzlkVuIg4NxlDhRYT0Ac8oNRnqcN9i7wC2o91mCyoqgA+NmMMnT5kX4Fw18DtH/Lg4+GBlZdtoX18RcCMJuKWmRx7oDlt3a5ng5CH+rg+T0skVOEDbOUA11HE/l7/+YOqIjmcsYJ3LjcGh4zJW6OaRJFFZwAJgFaaw98C+ngRvUynTJqKfWXcHilPB/9s3Cf0mllYPSJ7mVJ6dU7g/Y2ytMBBchLPEkDemP95oCUnVQDzVpBbFne/2vI5SLFjj8LQNhrTt0Gmwq4VWvizA75toiB/qr7sv6zjHiYcDBYvVUWp1hmNgS4NxBQB/3OvibZEptEoDQlUzwtViqW2agHtv6D3wu5fEbI1G5At2Y6T4pixU1vpTBzhs+JFUnh8yECRCYTS2HKNDnCzKjl0EEZI/of+u5ES8ndhwWfPdRPfdPyBravLWNbxeaQKGa4jnZAl868pd8IZwL6AR6V128+2enKvTDFConyyPeYtq6nZ4fDbszvHzarY8T2J8ZviZrUFkEigdXCdRMMUGquDAwK7Lp4PD+eBQmNTnAsBhq5WP+uM2fmoyWNBMqfS8MkoabPlhVSkj6VRAgqWu8f/07rfQKGU6V+EOv49nCiab8IIwcDsY9NWUV7STA/Syot3TWc6a8Nz1+Mum1gQQOYvKVMZO8cCr6TTQw=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(366004)(396003)(376002)(136003)(230922051799003)(451199024)(1800799009)(186009)(316002)(41300700001)(26005)(2906002)(5660300002)(8676002)(478600001)(66556008)(6916009)(4744005)(66446008)(64756008)(54906003)(66476007)(66946007)(91956017)(76116006)(4326008)(8936002)(6486002)(6506007)(71200400001)(53546011)(6512007)(36756003)(2616005)(122000001)(38070700005)(38100700002)(86362001)(33656002)(169823001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <659149ECB8355744A82E991FDA90C414@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6032
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT028.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	276c70f0-50b4-4ea5-ba25-08dbbd97db75
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	JBNIMRFNXDZJvbzKHeY984gDZaXMUuk41vnEarL8pTc64p9Sx+sI16ziDSImwv4gMv6itcRxcqMGEfhr2L7N7yYiUbwyJyfEDq2bB5G3eSI8rnL3Cnt0BrQ7ZJqlBc2Y+HSzO/wRSW0FlRTVlny3g6djDhYDJv0sHVn+c2PZ5T+nT1o58GLse83RC4HZy0FKLPRJbbTWohgiHwkiJHceM8qStI0GyZ58VTMDa+EK4l/8QE3JOirmPmmv3FNqv40Ip3xLdr1lxUG1YwtmRdCNqASD2ORuXi/PSCf390BUSuwrWMvcIqDM4gG0MKDrjlkA57kJtZ+7tP/z8cpbdzjHfH8ejbXzrvzSu8AJ3IYxEPdePfNzR62S4uVcXHrCfecAMLAfdQppc8ycLuvZESbDUF4WfQ5NubqeLLvnqkD7i+5HQBFZ7vidu4k8+n9NMc1qrwVTZTd/RjoD0sjA9g/0KLTPhWrJBYGNAzo62Kq4LQ36aEr8DEOOAu+JKt3KRqYPHYBMMLxZem08+2BBnJDINRXQunMv9AP7Im27MyBihmp/DLaQNtdwCrQF8m5FRo6+FSD2wvmakHl9ypNFV/T3i8CjEO6BtztNVs78OlRBURilsoQw+yoJeUBnC8GuToyL7XWqM8EYZbn41cHCyfaUCyexFFYbXgHiJgGixqj0d8IDBxMaq+4dpYjIKb3ZMof5EP0pyQxH1K6nLOKiKn3tN0krMEyYez4gjWUx7F0qmq4=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(346002)(376002)(396003)(39850400004)(230922051799003)(82310400011)(186009)(1800799009)(451199024)(36840700001)(46966006)(36756003)(33656002)(86362001)(40480700001)(53546011)(4744005)(81166007)(6512007)(2906002)(2616005)(5660300002)(478600001)(41300700001)(316002)(70586007)(70206006)(54906003)(6506007)(6486002)(47076005)(356005)(36860700001)(4326008)(6862004)(8676002)(8936002)(336012)(26005)(82740400003)(169823001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 07:20:21.2835
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 57f8a6a5-f688-4b84-2b67-08dbbd97e0d5
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT028.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5645

Hi,

> On Sep 25, 2023, at 14:38, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 22.09.2023 17:19, Federico Serafini wrote:
>>=20
>> -
>> -/* the intercept action for PIT DM retval:0--not handled; 1--handled */=
 =20
>> +/* the intercept action for PIT DM retval:0--not handled; 1--handled */
>=20
> If you already touch this comment to remove trailing whitespace, it also
> wants its style corrected. Perhaps okay to do while committing, so then:
> Acked-by: Jan Beulich <jbeulich@suse.com>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
> Jan
>=20



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 07:21:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 07:21:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607652.945922 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfuV-0005Xk-Pq; Mon, 25 Sep 2023 07:21:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607652.945922; Mon, 25 Sep 2023 07:21:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfuV-0005Xd-N7; Mon, 25 Sep 2023 07:21:39 +0000
Received: by outflank-mailman (input) for mailman id 607652;
 Mon, 25 Sep 2023 07:21:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkfuU-0005XX-5f
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 07:21:38 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20624.outbound.protection.outlook.com
 [2a01:111:f400:7d00::624])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 29c96ad2-5b74-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 09:21:37 +0200 (CEST)
Received: from AS9PR04CA0172.eurprd04.prod.outlook.com (2603:10a6:20b:530::18)
 by AS4PR08MB8093.eurprd08.prod.outlook.com (2603:10a6:20b:588::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 07:21:34 +0000
Received: from AM7EUR03FT026.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:530:cafe::af) by AS9PR04CA0172.outlook.office365.com
 (2603:10a6:20b:530::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 07:21:34 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT026.mail.protection.outlook.com (100.127.140.154) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6813.20 via Frontend Transport; Mon, 25 Sep 2023 07:21:34 +0000
Received: ("Tessian outbound c99fbc01d472:v175");
 Mon, 25 Sep 2023 07:21:34 +0000
Received: from 5e301ea606dc.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 4FB22430-2620-4C56-8D57-A231DFF06767.1; 
 Mon, 25 Sep 2023 07:21:27 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 5e301ea606dc.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 07:21:27 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS4PR08MB8220.eurprd08.prod.outlook.com (2603:10a6:20b:51f::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 07:21:25 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 07:21:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 29c96ad2-5b74-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9Ls2NwEeUB+Rop6IL5Pgc0Zxn5JPEwYF14Rv6XpxRcA=;
 b=gPVMhZgWyDkuBWEECCwt8dPT+Z3jE4zOAuCDwdoB8isYiYE1GFVLVVDnjLvt0WBWB01pNBhhsjEJPNMg7detCIAdEEBSkJVF0XzY1ZgSktYIdU3wAPoOt123RXpCZDXA7cAhjZVOIjrKXHLQeDYBtyCnIMQGe7616080O28qsG8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: a58667fbd95c696a
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=JizK7gQPDkkjrmHr78hMryJJzTXzZy3gWCMs/nFgLbRNgsrF8Acp6ZQQ58fSYVV72MChqs9QiWw7fctxU/Cym1oZxyhKMKk24UhC33bUb2F4+j7yineO12HkOMGJUgDLYiEnxsTvZqHD+PfdbP4LYwnhFRQnIBSKYnKUguonNDkEvUm/HnvIAOvLuM7Hn/MtmjQk+ggarofk8xjmSD8UG3xUqsYoMgwQVR7TKipx8LEpk64Y4dyS6UPolwRJayKYh3fhKjYEe27d3pMSD7hx9ZOs8JvQ6f+4iPLdugA/CnQIfKeaBqPTVEmZIEdg/P2aCUMIkiDMsrtI7b750OTaJw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9Ls2NwEeUB+Rop6IL5Pgc0Zxn5JPEwYF14Rv6XpxRcA=;
 b=gRJ64YSOe6cYxSaCWrEz0loht6/JQM2Vo3kINYgShhZTESAEnr5vyYdDC5GWoMFe8Ud3d8IIbbJxof/8l++dskqq7npmp/FxsF9jRpoZsyz+gHdsEu4aEGt1XmVyJQGUzw6bkvZUtaplKOW8xgUpnkIYoHSlVlJHgCxqW5FTbLf0CLmA4eWRRW/HMlm5oxbjL5FDfsM+7VIkNeus1bF6pSMrK/qfKvSOMZnyVtVBsT9U6Dl3Zr2R4v6hYqhd+0rZYUeL7V+mPlhdSeEwL7vngWRpQXEqdY96xARpVmm1yvFSZiLYPG+5tWy1VeZCHZ58BlLM8vUV7Z0pc0E8C1ekSg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9Ls2NwEeUB+Rop6IL5Pgc0Zxn5JPEwYF14Rv6XpxRcA=;
 b=gPVMhZgWyDkuBWEECCwt8dPT+Z3jE4zOAuCDwdoB8isYiYE1GFVLVVDnjLvt0WBWB01pNBhhsjEJPNMg7detCIAdEEBSkJVF0XzY1ZgSktYIdU3wAPoOt123RXpCZDXA7cAhjZVOIjrKXHLQeDYBtyCnIMQGe7616080O28qsG8=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
	"sstabellini@kernel.org" <sstabellini@kernel.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, "jgross@suse.com" <jgross@suse.com>,
	=?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>, Anthony PERARD
	<anthony.perard@citrix.com>, "community.manager@xenproject.org"
	<community.manager@xenproject.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>, "committers@xenproject.org"
	<committers@xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about code freeze
Thread-Topic: Xen 4.18 release: Reminder about code freeze
Thread-Index: AQHZ705Dwyrpd4I60kahQfZlaJ2JtLArFXGAgAACIQCAAAmkAIAAAeYA
Date: Mon, 25 Sep 2023 07:21:23 +0000
Message-ID: <BDC96279-1FB6-4C7D-BC7B-58173EFD87C1@arm.com>
References:
 <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <6399a816-ac1a-b741-ed52-b5d03b498ee6@suse.com>
 <2AB20BED-9ED9-4713-A39A-59891E09E02C@arm.com>
 <aebd0b15-4e1d-3ca0-ede9-524aff777576@suse.com>
In-Reply-To: <aebd0b15-4e1d-3ca0-ede9-524aff777576@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS4PR08MB8220:EE_|AM7EUR03FT026:EE_|AS4PR08MB8093:EE_
X-MS-Office365-Filtering-Correlation-Id: c90aa9c8-75a0-443a-ae70-08dbbd980c60
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 333vtC2SVGZDQDMlJ+CFgftrxUjOqc8/xFyCQBDWbuXB+jE973O50yKaSWn4yS94o4wkrVkz/wZa/Ay3KARMbc6pX5LTg4fh2QqAapkNueMxuga/AjyY6VX6RQBp/HttTw9yzt8rAROxa32V8V7tugxDnzGK6/WkcPRwfccDYCIAHwiypsos03rq8XkLc232KD0PjEisCv0fePhcz8WRT0BitiJ4Z2mH2+dvd+2WWW7B4h97zxC2f7CSADNZyYUCORcsDYTEE41AP3K81f2V9yFi3ov8nhBnbAMVgeAtPZ30sYKoQSLBoLzdEoCa4lvmXn+r73VH/wgnSke9Y0sTHoxr8QoOrSogjTEkO6eQMdHtMhbHWERXDvlJ8uR2l30IutrvcApcIKleqfrSV80rn9MSTyRyWpfnrpAR0kA5Kqu6BHL/DEdIUc2o/UpddcK8FoYiyngz8FobEikuruwFWJ8oY0pcYKmSxH3ctTafSqUC0kzQUqjUA/JRdOO+CL9sLEAbasYW72XQH3dnICDNxuM0N8Ve6lKv+OH0vy5DMVLIFNK3W/QqK6eTYysZKQmU6jYQUqIEKSUtjPOuLLU/Ccp+qXLW1W5dKU2R/ERgVOYkf/2bT8jJlm6LjcLIIe8xtZCc8ylKdbwetdw+XJMeCw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(376002)(366004)(396003)(39860400002)(230922051799003)(451199024)(186009)(1800799009)(54906003)(316002)(41300700001)(66556008)(66476007)(66446008)(66946007)(76116006)(64756008)(6916009)(91956017)(7416002)(6512007)(8936002)(8676002)(2906002)(4326008)(478600001)(26005)(71200400001)(5660300002)(6486002)(38100700002)(38070700005)(33656002)(6506007)(53546011)(83380400001)(36756003)(66899024)(2616005)(86362001)(122000001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <ABF7D4C2D4250D47A7CD3A457F06B020@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB8220
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT026.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	02b30b4d-705d-466c-6d37-08dbbd9805c0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	H1hdF8UPJCufipZfFglcyj1FJZAolCD9IcOJh8r7azfjCulzyZRkZt08kV0K78en9xHx/CQm7q8i8mwbPNKnosSqxC70adep+ZWGXKuQgEFfCoyvVWPwwAYNtB/atxmBPnEbjHSl9LUXWG4hYjUcNh+gV+EJUcR9hD+z9dn9tyTzyh0KtDoY5TkjRtKZLHmVeJwHYEJf0gbw8RMbgMBjUflEBCXwsGZPNN3pthUMX9NVRpg0JIl9lNcTa/KRChIYZxcsA116wXC+Xk6+TyaGv7oqEDWxtTvFTjEuFOwfLcH2eSClP48SHHhGe3GGmKZAoKVvRvoLZTT+tglNTumkPlhiCV3zTZyREoj+IqIw8YJP4A9pxdFFjwxn2cZTqXaobNDH7n7EjIAuhrA171ix5IrhHTZ36ErAK/jC1tGzw1MZdrDiIOusNrm50s/dWN8fAk6eE2bYA3jnNt2XQDBcC6p6eQofj5SSj5eYNqLDEF21uWN0+l1mG0qfKO3SzWlA0ReJSVXf0i8UzZG4Hrhih0jPucl4VsyIjZjEnw6iw5dQkE+4+Pj6YJrnMcP2pzgAORmXl0ZneVa3GS9B/Y2a49y0kuR5Gtewlk7x2YX6oXBPJy3jkaWekPaSCrXeRiq4g3Z22IT66Rf0hyz2JQLQY5OMYDC7OLSD1Ti+7OPaW9QFhu/gNUMyYc2aiO+R9qnlx06CCMVyWzjm4bbq1DBjt1QfXc5xC15If9eWMcnJTX4YB6QnqYRT9PLux6yypOsa
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(376002)(396003)(346002)(230922051799003)(451199024)(1800799009)(82310400011)(186009)(40470700004)(36840700001)(46966006)(54906003)(40480700001)(5660300002)(70586007)(70206006)(41300700001)(8936002)(316002)(8676002)(4326008)(6862004)(2906002)(40460700003)(81166007)(47076005)(82740400003)(356005)(83380400001)(478600001)(86362001)(26005)(336012)(2616005)(53546011)(33656002)(66899024)(36860700001)(6506007)(6512007)(6486002)(36756003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 07:21:34.2617
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c90aa9c8-75a0-443a-ae70-08dbbd980c60
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT026.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB8093

SGkgSmFuLA0KDQo+IE9uIFNlcCAyNSwgMjAyMywgYXQgMTU6MTQsIEphbiBCZXVsaWNoIDxqYmV1
bGljaEBzdXNlLmNvbT4gd3JvdGU6DQo+IA0KPiBPbiAyNS4wOS4yMDIzIDA4OjQwLCBIZW5yeSBX
YW5nIHdyb3RlOg0KPj4gSGkgSmFuLA0KPj4gDQo+Pj4gT24gU2VwIDI1LCAyMDIzLCBhdCAxNDoz
MiwgSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPiB3cm90ZToNCj4+PiANCj4+PiBPbiAy
NS4wOS4yMDIzIDAzOjI1LCBIZW5yeSBXYW5nIHdyb3RlOg0KPj4+PiBIaSBldmVyeW9uZSwNCj4+
Pj4gDQo+Pj4+IFRoaXMgaXMgdGhlIHJlbWluZGVyIHRoYXQgd2UgYXJlIGN1cnJlbnRseSBpbiBj
b2RlIGZyZWV6ZS4gVGhlIGhhcmQgY29kZQ0KPj4+PiBmcmVlemUgZGF0ZSB3aWxsIGJlIGluIHR3
byB3ZWVrcywgaS5lLiBGcmkgT2N0IDYsIDIwMjMuDQo+Pj4gDQo+Pj4gQ291bGQgeW91IGZ1cnRo
ZXIgcmVtaW5kIHVzIGFib3V0IHdoYXQgaXMgKG5vdCkgcGVybWl0dGVkIHRvIGdvIGluIGR1cmlu
Zw0KPj4+IHRoaXMgdGltZT8NCj4+IA0KPj4gU29ycnksIG15IGJhZC4gRnJvbSBjb2RlIGZyZWV6
ZSwgdGVjaG5pY2FsbHkgb25seSBidWdmaXhlcyBhbmQgcmVsZWFzZQ0KPj4gQmxvY2tlcnMgY2Fu
IGdvIGluLg0KPj4gDQo+Pj4gSSBhbHNvIHVuZGVyc3RhbmQgYWxsIGNvbW1pdHMgbmVlZCBhIHJl
bGVhc2UgYWNrIGZyb20gbm93IG9uPw0KPj4gDQo+PiBJIHRoaW5rIHNvLg0KPj4gDQo+Pj4gKEkn
bSBzb3JyeSwgd2UncmUgZG9pbmcgcmVsZWFzZXMgb25seSBldmVyeSBvbmNlIGluIGEgd2hpbGUs
IHNvIGl0IGlzDQo+Pj4gYWx3YXlzIGdvb2QgZm9yIHRoaW5ncyB0byBiZSByZS1zcGVsbGVkIG91
dCwgaS5lLiBldmVuIGlmIHRoZXkgaGF2ZW4ndA0KPj4+IGNoYW5nZWQgZnJvbSBlYXJsaWVyIHJl
bGVhc2VzLikNCj4+IA0KPj4gQWN0dWFsbHksIHRoYW5rcyBmb3IgYXNraW5nISBGb3IgTUlTUkEg
d29yay4uLg0KPj4gDQo+PiANCj4+PiBUaGlzLCBmb3IgZXhhbXBsZSwgd291bGQgdGhlbiBsaWtl
bHkgbWVhbg0KPj4+IHRoYXQgYWxsIE1pc3JhIHdvcmsgbm93IG5lZWRzIHF1ZXVpbmcgZm9yIGFm
dGVyIHRoZSB0cmVlIHJlLW9wZW5zIC4uLg0KPj4gDQo+PiDigKZJIGFsc28gdGhvdWdodCBhYm91
dCB0aGlzLCB0byBiZSBob25lc3QgSSBhbSB0ZW1wdGVkIHRvIGxvb3NlIHRoZSBjb250cm9sDQo+
PiBvciBhdCBsZWFzdCBvZmZlciBzb21lIGZsZXhpYmlsaXR5IG9uIHRoaXMgc3BlY2lmaWMgcGFy
dCwgYXMgbm9ybWFsbHkgTUlTUkENCj4+IHJlbGF0ZWQgY2hhbmdlcyBhcmUgaGFybWxlc3MgYW5k
IGFjdHVhbGx5IGhhcmRlbiB0aGUgY29kZS4gSSBhbSB3b25kZXJpbmcNCj4+IGlmIHRoZXJlIGFy
ZSBhbnkgb2JqZWN0aW9ucyBmcm9tIG90aGVyc+KApg0KPiANCj4gT24gYSBjYXNlIGJ5IGNhc2Ug
YmFzaXMsIHN0aWxsIGFsbG93aW5nIHNvbWUgaW4gbWlnaHQgYmUgb2theS4gWW91IHdpbGwgd2Fu
dA0KPiB0byByZWxlYXNlLWFjayB0aGVtLCB0aG91Z2guIFJpZ2h0IG5vdyBJIGhhdmUgdGhyZWUg
cGVuZGluZyBmb3IgY29tbWl0IHdoaWNoDQo+IG1pZ2h0IHF1YWxpZnk6DQo+IHhlbi9udW1hOiBh
ZGRyZXNzIGEgdmlvbGF0aW9uIG9mIE1JU1JBIEM6MjAxMiBSdWxlIDguMw0KPiB4ZW4vaHlwZXJj
YWxsczogYWRkcmVzcyB2aW9sYXRpb25zIG9mIE1JU1JBIEM6MjAxMiBSdWxlIDguMw0KPiB4ZW4v
ZW11bC1pODI1NDogcmVtb3ZlIGZvcndhcmQgZGVjbGFyYXRpb25zIGFuZCByZS1vcmRlciBmdW5j
dGlvbnMNCg0KVGhhbmtzIGZvciB0aGUgbGlzdCwgeW91ciBwcm9wb3NhbCBzb3VuZHMgZ29vZCB0
byBtZSBhbmQgYWxsIHJlbGVhc2UtYWNrZWQuDQoNCj4gDQo+IEknbGwgYWxzbyBjb21taXQgIk1B
SU5UQUlORVJTOiBSZW1vdmUgbXlzZWxmIGFzIFJJU0MtViBtYWludGFpbmVyIiwgd2l0aG91dA0K
PiB0aGlua2luZyB0aGF0IGl0IHdvdWxkIG5lZWQgYSByZWxlYXNlIGFjay4NCg0KU3VyZSwgb2Yg
Y291cnNlLg0KDQpLaW5kIHJlZ2FyZHMsDQpIZW5yeQ0KDQo+IA0KPiBKYW4NCg0K


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 07:25:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 07:25:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607659.945932 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfxn-00072R-7g; Mon, 25 Sep 2023 07:25:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607659.945932; Mon, 25 Sep 2023 07:25:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkfxn-00072K-4t; Mon, 25 Sep 2023 07:25:03 +0000
Received: by outflank-mailman (input) for mailman id 607659;
 Mon, 25 Sep 2023 07:25:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3u+g=FJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qkfxl-00072E-U6
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 07:25:01 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0610.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::610])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a3238628-5b74-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 09:25:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB9664.eurprd04.prod.outlook.com (2603:10a6:102:262::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.27; Mon, 25 Sep
 2023 07:24:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 07:24:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a3238628-5b74-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=j8ePyQc/jUT+sTKQ9LcdNRqzMPPNBto9137x2A7GUKApI7n/6LigPh9lWsJQfuJlPdlrf0gUUAQTHHaH7j1RoaCEe3sPMktsArNgVG4nE3QTcPD6xRK1KGFAYefllM8XBImezo9mTitRevHMRq0I22CiaefA6gu484+J56Dj1maL5pnIytmKQ/kPeclAL/sS8hyasf1GA1lnXuImZDTRPq1ZJXiSR8cooRY2pfjPzFu0p/Um3+5KRv1mFIhUhxqp+EKymiSIsFqWVYd1Mpq4KmK0F507N6yM3Maw29Mfsg9pkC+2QjeSDUUlh0LNfUt9got3EExYJJTsKp00GAFCMQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rokn5+2NoE/mwy3A6w2MzIGLg8rvq5FjMrZQD1QLEys=;
 b=M+H9WRyXFmNO/u3ghK2pJjBSVR/bi/lTK3whYxou5WglffpQO/nARiMVpMUwte5Keq8lBUPMIOv3eE3P+1VraHhecb9h4b0XclLu9ngkb3Ve77QpO+gt/eQen2cjbr/dQc18pvyKYeKyHGNv1Ip/A64k+LTi/T0VvYmIqPu43WNWXe5HZOUc2msWXzop0y/8kst6wLBWEneTcUwgoSReo/Jki42h3ehqmTWEVuOffhiC0ov9xZ+dUPOd2e5xWJQlt2aHeIozzof84MUnE7LAgzN3FeAT4OW1aGJvPBrCsa004SfbuoPIzO0Vm3Ovx5X3xeJkY+fQC9L000jxYJE+Ew==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rokn5+2NoE/mwy3A6w2MzIGLg8rvq5FjMrZQD1QLEys=;
 b=IHY+o+NlGkBsQqihN7AcHQUZy4BZl1Dn6TocuMggR48DBXf0Uml50IKZu35jNYLJZ8Vpvbv2FmP4ngE9LyPSKgZNn/LcwzNoRvc/dPoHAtctry5Tsajk60pEMaOjNw59U2+rZygElVrM8AAbZPZSrSIedVjlz5LmQndPRJ9MAsOIwA9ncqCmz+llpHsl1oO1Us9RXK66umm0zswe2eVqFcjlZfo36p4pk54ECf0t1nJO4++Zvi2fIeJUYRXNfYqSs4PWemdqHMUG5XTJga0ggeEqya80Jzfk/wS51qDd6m0AUUsn6TT7+0XZYGcE7ybf6Om2opCqoPCMGpyRuhv2Fg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a582759b-c967-44cc-ec6c-7d9104bad4a5@suse.com>
Date: Mon, 25 Sep 2023 09:24:56 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-US
To: Henry Wang <Henry.Wang@arm.com>
Cc: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 "jgross@suse.com" <jgross@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
 "community.manager@xenproject.org" <community.manager@xenproject.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0208.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ad::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB9664:EE_
X-MS-Office365-Filtering-Correlation-Id: f84e7489-217c-4b31-686b-08dbbd9885a5
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YIxDzzmnnznvloNDItdITnNrXNbR3wWA0dakcixw5dFBQSTC46zfHCk1TFedijYwWGB8CsoYM83L0/H620Ckucb2qowMYOclI4JGClza5YWrDnIxO2MmL/zHHAs9IXxGQZnQqaIX4h9vFLp3n+2s4tk+q/67uSpavXlruYJ6bwka0x4qboyQLVsxihmJlIgq7aSqy5sf+AZ3cErHatQYkfNN/L27wQx163pneREvn3Yj7oFJLDbIeRsY5m0h1T54m4uZKTn+73BCczYmsVZryWdgb4PCSy5bI4e6sdpDx1oe/R5//WU/XrGQkxCPgLaFSUnuIKZMgFV/P1iyxu+3NfGpPXlOSd7Ap1lp27S3Ns5S+BY3mADiOKoYnYr4Qld0Kk1l4V2So/AT0aoJGEJvF47bevXH6CYN6MAVVEm6W9zgZv2s863y9/ECmRranFELFpVhk1+Hs9mUD2HkXkrta+Ao/X6vkDp12FFPvSqguEMqnKWf5pvr2vKX1+yCIhZP6DIVd/BNe41GAakD3DzHhTG7F7z0JngZ0tKNb2s/GRu8PIlNT5KWxKyyJL99jRe+b60BlTcl7lBfg7bbLvn2w+7QQMG5MPEEnrIw/JxOEAPBrdU3xzQPzJdcdDl5+p9l
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(136003)(376002)(39860400002)(346002)(230922051799003)(1800799009)(186009)(451199024)(26005)(478600001)(2616005)(966005)(36756003)(83380400001)(86362001)(31696002)(5660300002)(6486002)(53546011)(38100700002)(6506007)(6512007)(4326008)(2906002)(8936002)(8676002)(31686004)(41300700001)(316002)(54906003)(6916009)(66946007)(66476007)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MHZ3Tzlaei96eU40dXpTaUJ4TVNTcWdBbDgreWhNN08wdzZTWWxKcUZlcFlE?=
 =?utf-8?B?bE9wZHNRdHpDRFNoQThKVElhRzVpTjZVNGhwcDBrTmRvOHcrL2FYZGVEVHFZ?=
 =?utf-8?B?UVQ2Z0NKdXFFN2J5MnJURE9zT0MrOVVnTU5wak1lVzFyRWh6czF5c2VRaW9N?=
 =?utf-8?B?aTBBZG9IVTdnOGJwVzhpZHB4Y2I4TlVodVJ2dVZnVnFmYjlBUCs1OVgvNXFj?=
 =?utf-8?B?L3VVSENKRGRvZHRzNDhqQ0lpUEozOVl5NEZFaEM3WlFmekluVjJ0T2lVeUdh?=
 =?utf-8?B?cmpFNUF2OUZ4MzNrS09WRW00NnZWemhqdzYxTkk1NkJYSzZFa3N1TjAwWml1?=
 =?utf-8?B?L0c2VzJkNzFiSTErL0t5NUlOd3d2SHR1NDhwemFGUkhlVlh4dTRnODc0WHhy?=
 =?utf-8?B?VTlLcjBXVHQySCs0eHJSUWhBYUM0SDBUZzZ1VjJxV1EzMGMxS3RvK0dXQ0RG?=
 =?utf-8?B?UEhMT1ArN2c5bDhlNzErWVhOYXNIUEtWY3dmbVZIOGJoMm1JK2wzOGZjZEdM?=
 =?utf-8?B?c0o3ZC90a2hTRXZtc3pQTzI1VldiZ05vdmt2UzlSdnlLdlR6MEllR254OG9x?=
 =?utf-8?B?TTVZaFFLaW4zNFBBT3VMaTBtdFJ0eC80UHl4ak4vM2hodjJyS1hHV3V4T2k3?=
 =?utf-8?B?TXVFUi9qSmFhMVBBbjQ3VnBYS1RSWjRZNVp6ZWMxQmJVOElnb0JHQmhsL2tI?=
 =?utf-8?B?L1hEaUVtQ3c3M1pSRmpLZ2pHQVFJcmlNNWJ0NlgvQ0Z1ckFlNStRK3AxbE1J?=
 =?utf-8?B?ZEU0WTAxUlVoSDNleHVZUGRibi9VVWdkV3J0K3BaT0JITzZKSlpIc0NpZnlK?=
 =?utf-8?B?aWJFVi9kNmtxZzZER0dvaDY3RStUQlJMbXdNa3pZQ1lhVlRpRUNFZXBOWWlQ?=
 =?utf-8?B?UEpKd0ZxTkVpeTRjY1haWXFtTmxmTFBMd1B1WGdPb3czWU5SZFB5bnZHdDdp?=
 =?utf-8?B?UTlTR0VFVUlDL2pqVVFiS3I3MWhNVjBHWVZ1RHBTUEV3ZGx4Ly9sS2Z5WXZP?=
 =?utf-8?B?Q01aajMrVUkrcVcxd0dOczZXeUFtWE4yVEJ0Z1hKK0l0M01tbE51TTNnNElh?=
 =?utf-8?B?aVA3bDJ4Z3FsWVNzOUZSMGlmNmV2c2RMbjIxQ0ltOE9hUGlHV0RxYW53TSty?=
 =?utf-8?B?OUYvN2c3YkxSREtRVW8rMTF2aWlyenNpRGJVZ1FWQVlJbmRpSnR2ZEVISWNS?=
 =?utf-8?B?M001c2FTY1VCMFREc0R2bk5TZ0xMb3FYYTdGN3NtcGQ4WWVCL2hwTXRCWm50?=
 =?utf-8?B?TnR3QU1qT09BOFUzNlgxMkIzUXdtd2RlbDhkN0Z6cnA1eklMMURyTEtQLzly?=
 =?utf-8?B?cmc2VkN6THF0SUV6elo0VjcrZ1k3cTducHNxTVlLUkhGb2o3bkFVUTY5VHBI?=
 =?utf-8?B?SWhNNlh6YzRNS2JKZUpIY00rV3E0WXVxeVloRWthWmRwa1ZBNFhIeEdWaGJD?=
 =?utf-8?B?RVpYU3ptS2x5d0lqc3h5WEc5ZEZ0dmhDa0pZWlJMcHU3RzZVbzdxNXhtdGtw?=
 =?utf-8?B?ZGp3aGIyemloVHlIS2VQNkdSK2pUbGxxSXVJMHBidFdLdGJIOGpmVU5jSm5R?=
 =?utf-8?B?UVg0V2plK1JNZnNsT2pIMXJBeTJtUmRxS1MrRndaSVZPOVBLY01yWjg2bmdQ?=
 =?utf-8?B?MFVTTGNacHl2djJvcGowSzRHQmdTUGk2K2lrL2MyLzd0aWlzeTdhRnBCcXpR?=
 =?utf-8?B?T2tPakdnL0hGWUpCTWs1M2tENkVQUDhyK0VoWm1SYkFDcE9ZMC9IVFNuNFBv?=
 =?utf-8?B?Z3hLZ2hJalpyclZQcnNvNmJ5SytUZ3VjeGJUb3NzcWNKT3djSmhZWG9wNSsr?=
 =?utf-8?B?QTZBczlOdlNLQ0NkcHBpcERBNytrWm9XUk56WGdPN202WUIxTXdOUXl3b2p4?=
 =?utf-8?B?dEJGMlZycEtGa2loeUc1Rzk3WFNZbUZWTW5WZEowNjBXVTRzZXJaaU10VzJW?=
 =?utf-8?B?djRKb3BzMGphOWFlNExxWWwwMHJ3MUhwMEdIaGpEWk1OeGRXd1h0VlJ2Tmth?=
 =?utf-8?B?RDVYbmNIbGlWUEpjNUp6Vk91ajZTTEhLa1NXekhHRW5UbGhnV3NkdEdnVUF3?=
 =?utf-8?B?MTlraG9uYzI0ZENub3IraS9LblNtREEySVZ0bk9YUS9qeGhtdmcrR2hvMlQz?=
 =?utf-8?Q?E0H/Y36YQLYGlRr6P8f5FODTz?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f84e7489-217c-4b31-686b-08dbbd9885a5
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 07:24:57.9147
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: TXeEWhyLAHa8SkqsQas2Se8baHVCU62JnCqKvDZu8HuRRDFjRnpRvkthZUDfImC1Q8V/ImSh5u8v8N1QU8x3nA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9664

On 25.09.2023 03:25, Henry Wang wrote:
> Hi everyone,
> 
> This is the reminder that we are currently in code freeze. The hard code
> freeze date will be in two weeks, i.e. Fri Oct 6, 2023.
> 
> The planned date for 4.18 rc1 is this Friday, i.e. Sep 29, 2023.
> 
> Also, below is the (updated) critical items on my list for 4.18 release:
> 1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
> https://gitlab.com/xen-project/xen/-/issues/114
> 
> 2. tools: Switch to non-truncating XENVER_* ops
> https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3@citrix.com/
> 
> 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for staging | 6a47ba2f
> https://marc.info/?l=xen-devel&m=168312468808977
> https://marc.info/?l=xen-devel&m=168312687610283
> 
> 4. [PATCH v2 0/8] Fixes to debugging facilities
> https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/

May I ask that at least "x86: support data operand independent timing mode"
also be put on this list? There were other x86 items we wanted in 4.18, but
I think they have been put on hold now for too long to still be reasonable
to expect to make it.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 07:27:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 07:27:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607664.945943 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkg02-0007ea-OS; Mon, 25 Sep 2023 07:27:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607664.945943; Mon, 25 Sep 2023 07:27:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkg02-0007eT-Jl; Mon, 25 Sep 2023 07:27:22 +0000
Received: by outflank-mailman (input) for mailman id 607664;
 Mon, 25 Sep 2023 07:27:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkg01-0007eN-Ai
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 07:27:21 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0604.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::604])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f640b439-5b74-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 09:27:20 +0200 (CEST)
Received: from DUZPR01CA0352.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b8::15) by PAXPR08MB6431.eurprd08.prod.outlook.com
 (2603:10a6:102:157::8) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 07:27:18 +0000
Received: from DBAEUR03FT062.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b8:cafe::d3) by DUZPR01CA0352.outlook.office365.com
 (2603:10a6:10:4b8::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 07:27:17 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT062.mail.protection.outlook.com (100.127.142.64) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Mon, 25 Sep 2023 07:27:17 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Mon, 25 Sep 2023 07:27:17 +0000
Received: from d51afce9298d.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B2409C2C-06E6-4F8D-9F67-D165FECD288D.1; 
 Mon, 25 Sep 2023 07:27:05 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d51afce9298d.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 07:27:05 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DU2PR08MB10015.eurprd08.prod.outlook.com (2603:10a6:10:49f::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 07:27:04 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 07:27:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f640b439-5b74-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0+Bw2Ci4eNWkfjov4TwYQtPmfdPrIQJH85vhAGsIFhQ=;
 b=XApxgD96WGx3KP1A8wq1bewKpm9qzH4KhQXqrsbVrscci/zmDdeeUoozxnG64HuM7ntBdRwH8+nSy3xtqdkrlmS/4rg444kacBlXBDbp3WGQjzBDPKwrjtgoFIMXo95QvBElm+6ZrCuugY821yNtafPG5tbC42Bte/99op4li8w=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 311f964ca14aa111
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=V2NfFvD2TwGkXtg7ZcKhs2UeCC3fQDvaH9Ur4Rw8drE8gZV4aOrsg9/8saN1MZ2NbYe0wmFj3dkZcadManrzaLfMDmwappIbBvp6sssBv07Vh4hu52Ua1TtZ8wbL6QZ1k5QiLqgiTWciHZSYI4V9MxjnwyeW3t5q4jvoOvy/aO5b5FHEt7QRKQCxL7rw2Qqg590wlM/lWcyMgtwH7VZzER7yjBCenKPq4wLZY9sWO1Xb2okolHUguKOrddLRbGuBH/OfWfRQgIUoDHG60Qa/LhI9YN3og193ismWKl4xC3AXsi8pccR31dtSgRTJE93uR/qXuhwnWCqBU9adH9zCaQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0+Bw2Ci4eNWkfjov4TwYQtPmfdPrIQJH85vhAGsIFhQ=;
 b=P9HKpKu+RVLoE/6nf6nQ/vpfAp+Am96Kun/hXAAsiw67m5+k5nRRwGAx58Mg4sU1N0BUmG4DcuHd7Lrz7E0M9x3qUj2K6soeOrj+Ocp1nSidiqK94FmW51DIXYnSmM/Mkl2jvsEjan4HWTBLfcN+jVqeJoiVJwpw5/W/upGkbuCIMwtFO+/n30T3cbO/Tdv2stBKh2NScCDL9WhiOWBIE/UHFFhCJQU3js3XMpuFX8Dtj4a+DTft38AHzEgcS5cO9RAz+ukE7gZAeRTOLbr1YaOvz2skdHr+1lnYD/uhvxAzTgNYbYnEfNFRTFsie8NTvcEEVicCExcCVx67SUrPFg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0+Bw2Ci4eNWkfjov4TwYQtPmfdPrIQJH85vhAGsIFhQ=;
 b=XApxgD96WGx3KP1A8wq1bewKpm9qzH4KhQXqrsbVrscci/zmDdeeUoozxnG64HuM7ntBdRwH8+nSy3xtqdkrlmS/4rg444kacBlXBDbp3WGQjzBDPKwrjtgoFIMXo95QvBElm+6ZrCuugY821yNtafPG5tbC42Bte/99op4li8w=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
	"sstabellini@kernel.org" <sstabellini@kernel.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, "jgross@suse.com" <jgross@suse.com>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, Anthony PERARD
	<anthony.perard@citrix.com>, "community.manager@xenproject.org"
	<community.manager@xenproject.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about code freeze
Thread-Topic: Xen 4.18 release: Reminder about code freeze
Thread-Index: AQHZ705Dwyrpd4I60kahQfZlaJ2JtLArJCcAgAAAjIA=
Date: Mon, 25 Sep 2023 07:27:03 +0000
Message-ID: <7DCCBB43-0396-4C61-9D7B-8022707775F7@arm.com>
References:
 <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <a582759b-c967-44cc-ec6c-7d9104bad4a5@suse.com>
In-Reply-To: <a582759b-c967-44cc-ec6c-7d9104bad4a5@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DU2PR08MB10015:EE_|DBAEUR03FT062:EE_|PAXPR08MB6431:EE_
X-MS-Office365-Filtering-Correlation-Id: 8fbfa83c-9a0b-49db-60e2-08dbbd98d92d
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 b8qEXk3yLDspCnygJhaB64ljTRjTD64uE03B8xqdQWqcJCLWd+am5gPpQdKtGFTXexIBzlXP8LPfIix5FeDnPi2KZhNtZZpJb7jsP5fAbHVxRqTBKBi7yM6ILo9BAYpCWwqNFoNXJnVTsoElOnpPfK0xB1URx8wi5yTbXMafKVcVY9GZuFRKXfdYtYm3bVprnUoiE/KBI1Cy12GD7TuKer1sS4YzKHmztkcAmEgYjk1EuN2s0c3n2jIwh/R3xqWrnLFaegr23/oYyTTO5vvL1CYRBF3W62/rZX6E4Y29nnNK5k2j1ibXfxbslwvnG1iMG6RljltNqiRUo0iEo8cVsCr+9dKclUn87N/cSp8uC63U4frQnuepSM8zY0JZcHpMq6bvNvenN+ctnnGBwiUQvbGK1q1uZF//NsgSmcX5zaekmK+JNtuHrSE2GfzD4lFO+QBMdRB0wis0Ob17+Z71NrNRJauy6nfOztGL5hVjFeiq/Hw0JaDOecnHjcdV798r6cjUGFkqD/oRjAyrxHlHffpQIOK0cb7WRA8LKEITBmw5k3FpanO+zeBjMgyyR2IiuMpAza7cDbT1l3k1nYM1sNIvNY882uENz9lzx2Bu1jtZ90EJhgX9g7HEjRHI7cM8bNIzn64SmxyUabH8CYh7jpTGQeXx1sTl6GX6a9KJDUk=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(376002)(346002)(366004)(396003)(39850400004)(230922051799003)(451199024)(186009)(1800799009)(54906003)(316002)(41300700001)(66556008)(66476007)(66446008)(64756008)(76116006)(66946007)(6916009)(91956017)(6512007)(8936002)(8676002)(2906002)(4326008)(478600001)(71200400001)(26005)(5660300002)(6486002)(38070700005)(33656002)(6506007)(38100700002)(53546011)(83380400001)(36756003)(966005)(2616005)(86362001)(122000001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <1A196174151F014ABBFC3C60271F9268@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR08MB10015
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT062.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	86d63ac1-d1bc-4a07-2099-08dbbd98d0d4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	6z16NV3rJRS2//73Foad/3Gfq2zaXvpVvM5DRNV3faeIeQ00GFdRVMMQ+bI22vPGUz+HfGLNhsIQgGgqmTL+vA8KNzcuoZlyxog/u+OhUCHYe82k/h3FvdSGCYoDZgshuMIJ3yP+wiyQsgeqRiwxjIAjZ2uOVgl5HmF7GQt2BZCOFLbJVeVrJqKFhC9TKJdVEKG8GeEVva/r0QZw0dfnjKvMPeWP8BnOHiVkmn+/T1E7+qRpCPKO38thebbHgidHh4AUKX71m5dcAEO0hJFqCwNw+q0oitdCoOgMTA13u7SSUi2IxxV67ScZjINy3zDO6+pqO4QH0K6I2JCZht8U1UUGReKxfb+nhgzo3zs96h+cx6I9PmF1tRo56SINHHxFd/YHGKvlm2cW296wNbADIWAIHpEkyQ30hoPBFehcTmyIlKZtObgSLUARVbjow++aQZ2E1m0Ck1EMevvCitD4kgDWoRv+6II4loJO6oPiJVqCvA8KwS4eGcX9eOKiQ+zLMmeVcRyDDt9Pccny9VfZ/eOuSW2lnl/r60D5TuiUknckq9VXJNjxzgHgciMj4VvYYjSXUEqO/sKUYCBTB9Wl/GbmJDwugKonuipq4MvGe9Zi2Z+S0i81N9lU0/8VoWlp+V8CnxCWs7nGwsZiIjGaRFY7N0UmtRbSal6WZA+CAgacbhIU1lO57VD1o2lNkbGLw9ks8m6eDq8vxbhzgk16NYLQaq9jWhgZcoi/81hhCmwX3lVkfgHRgliAK8arMOb6otDNsszLMNdEcS/n5QjO3g==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(39860400002)(136003)(376002)(230922051799003)(451199024)(82310400011)(1800799009)(186009)(40470700004)(46966006)(36840700001)(316002)(41300700001)(336012)(40480700001)(26005)(2906002)(5660300002)(8676002)(478600001)(966005)(70206006)(70586007)(54906003)(6862004)(4326008)(8936002)(6486002)(6506007)(53546011)(40460700003)(6512007)(36756003)(36860700001)(47076005)(2616005)(83380400001)(81166007)(86362001)(33656002)(356005)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 07:27:17.9209
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8fbfa83c-9a0b-49db-60e2-08dbbd98d92d
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT062.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6431

Hi Jan,

> On Sep 25, 2023, at 15:24, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 25.09.2023 03:25, Henry Wang wrote:
>> Hi everyone,
>>=20
>> This is the reminder that we are currently in code freeze. The hard code
>> freeze date will be in two weeks, i.e. Fri Oct 6, 2023.
>>=20
>> The planned date for 4.18 rc1 is this Friday, i.e. Sep 29, 2023.
>>=20
>> Also, below is the (updated) critical items on my list for 4.18 release:
>> 1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
>> https://gitlab.com/xen-project/xen/-/issues/114
>>=20
>> 2. tools: Switch to non-truncating XENVER_* ops
>> https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3@=
citrix.com/
>>=20
>> 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for stagi=
ng | 6a47ba2f
>> https://marc.info/?l=3Dxen-devel&m=3D168312468808977
>> https://marc.info/?l=3Dxen-devel&m=3D168312687610283
>>=20
>> 4. [PATCH v2 0/8] Fixes to debugging facilities
>> https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@g=
mail.com/
>=20
> May I ask that at least "x86: support data operand independent timing mod=
e"
> also be put on this list? There were other x86 items we wanted in 4.18, b=
ut
> I think they have been put on hold now for too long to still be reasonabl=
e
> to expect to make it.

I am ok with that as long as there is no other objections from other x86 ma=
intainers,
I will add this to my list.

Kind regards,
Henry


>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 07:30:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 07:30:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607669.945952 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkg36-0000g4-5a; Mon, 25 Sep 2023 07:30:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607669.945952; Mon, 25 Sep 2023 07:30:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkg36-0000fx-23; Mon, 25 Sep 2023 07:30:32 +0000
Received: by outflank-mailman (input) for mailman id 607669;
 Mon, 25 Sep 2023 07:30:30 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3u+g=FJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qkg34-0000fp-Oy
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 07:30:30 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2060f.outbound.protection.outlook.com
 [2a01:111:f400:fe13::60f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 647d7929-5b75-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 09:30:25 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8109.eurprd04.prod.outlook.com (2603:10a6:102:1c2::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 07:30:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 07:30:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 647d7929-5b75-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ACYRChPgfQ3k+NmDYM/Ez1OChO1wSyVFWzBA06VJ6L4Qc2ljbolFn4B6O3uaz7s7b56RxZz4rekTWEGDBM0FXE7rFBWOpo1btfjjs4kD74GZ4OY0+EuZbAOJ1D6mNIezt8xsMKTs7fIeSl2KnqK06KX6Ke4DgbxvJV5/ZAI9RvHjSli2JF2DLzR1mJmVLnnHBPn5Lw6lV/FJPnt3Y93pPmJPf8RM/FqQZn6oPFXkHaRQR6h+Tm34FYiIyZWeJXmJErRp+rvyW+NvtncuIyf9tiEXHCkz76h8kKkO94JcAiRhkCJrAZq15PKgDNFCJ2Gc+oEwJ7rxOpSWfJ73zhsxAQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=RBVKuUVHS4u7ZXAms0tHxKQ76ktRUAQhfdkRfTHi56k=;
 b=QwMJLahtsmNcwm/q/P4A1bsWnnnj1HBWKeWAsLbPU1FljOVqsAuoiNS3WCZMhP/2X/KVYaHzM0Mb6Ouw+fOhT/q7YHPM/Otp3L84xVWVtZT4aXOMi/qz4JSkyq7rlXVerod3VKXfigC3exJ9DYRrS+ddJw243apiYnEyl7frESKl/sMquUdunlOR4KMuDM6zXoC9KDTkt/Agjl4M9YW9Z8fUlZ1EVtERHfV0EVMy9mxAXMHjXVZDA2LQhBMyiyh0EmV+9cg0RDLMhu9Hp4B4vboRxUWYZf5aWEpg7xFbHIjWme7gBN4Bfah7ya3yOwJRk60uBj9Diq3JpANNb/2NUQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=RBVKuUVHS4u7ZXAms0tHxKQ76ktRUAQhfdkRfTHi56k=;
 b=CB4ZetnBvYSnSv4upbXDWUljD2asqx5o6vGft9Vu0xopUs8gzZecDS8Vk0p3PwB+xyj2753fR++hM+beth4b5HGOKr1gQkC422ICE5uOYIasKD2P/GWnnKX9jKHVjSle/kvbNaYMxfMEn6HhNOU4pJzOjFgc5GdPfVGUgp0M39/uSQx53cps8EuEgUTGWlmC83M0LhSDDcGiG0sV41q7Aq4LBadOkzq9FeaITnB12n4NXxQPyTSomd6uNmQkui1YclWD0Jm0WPFU75rdCjZZyuHGipevovX5t2Re6v4veNXK0QijovvR8EMyKusnWSvhwCpAShS6ETk38CzyOhUDaw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f365e11a-9ca7-fb3f-ceae-28da7e1d6779@suse.com>
Date: Mon, 25 Sep 2023 09:30:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 5/7] x86: Introduce x86_merge_dr6()
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Jinoh Kang <jinoh.kang.kr@gmail.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-6-andrew.cooper3@citrix.com>
 <943d1d28-08de-3c1a-5a64-6caa98cdba78@suse.com>
 <43428539-4fe0-e2ac-48a0-b2fd9bcc0d1f@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <43428539-4fe0-e2ac-48a0-b2fd9bcc0d1f@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0152.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ba::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8109:EE_
X-MS-Office365-Filtering-Correlation-Id: 67b1e50d-e732-4489-7716-08dbbd9947ff
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OSUcRjDuE7jKPhF78o156tZg1BTGbiH8ov/mGopLCmt+BRUAcHA5mp4ry1sHykwDZQZ/vRLFnBns9Bx+TqTPGXWhPhTXW1UKTJivMxVi9lhLn+EDmuGFjMMaYwWJE4UGnnlq1fIieqwdLu5OSgpnD5uIyxRa4KISvhQ894BFIjzLfp4DEXpjsYPC1Ykh/TLqeN4+JM0+fSusInBP9c53d0fjwqc696+r7IoKISPrjbXbs5aHkVlwanXNIfRvaKG+GVT6U0QGpP58/8PTu1XKLKtYUfS9LRfN1FPlk7zKEyrPkCHM4dVGSmgRpPqWZjxkuyDx6+oV+RcOh2FULHumuR9rXH8nqD0mg8RFviGqKSClpgEwXjjaoZAbcqH/YzxBngZX52e1FNCbUMauP5sc6MX1Ob9+uL9PWk3P4FjDm2flgnihtizyE0kowoub2wxmZFZulbY4KzBzY7KHNXhfSt90CsVHXANW7ZrxAQyC4ppQq9c2UpW54IGg5ZIpLeuIwIAGWUIAtRF4DdX95DCGEf7YxV9NIrD7rLmKp0gy/tRWH0AY/4QOQNEY+UxEwok00ecyW1Q+bb0HdemFPQJHncD6bnpPSPL3+poppgrizSkeA9Q3P/mzdMzP2ED5XPNRN2u//BJlRChcFoDqzD2HHg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(376002)(346002)(136003)(39860400002)(230922051799003)(1800799009)(451199024)(186009)(478600001)(6512007)(53546011)(41300700001)(6916009)(38100700002)(316002)(26005)(2616005)(83380400001)(5660300002)(66946007)(66476007)(66556008)(6506007)(6486002)(31686004)(54906003)(8676002)(8936002)(4326008)(2906002)(66899024)(86362001)(36756003)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eGdaVGtCVXh2SDdWK0U3cjNRZmplWEV2WGV1S05qdFBJRHZlV1lhUnFtNTVJ?=
 =?utf-8?B?ZzdKZjQrdUFXNWdESHAvUVRzZkJsZmFyaHN1QkZuc3UwK0dJOGxjUkUvOERv?=
 =?utf-8?B?enJTMjdDZVR2UmxFalQzMmxFd0NLQzB0QjM3QXdGeUsyZDNTaEJ2RzVoMEwx?=
 =?utf-8?B?dEZldC9XZEhGUExpcXFTODk2NDRPNElFcFdTZ0hNakV5OGhaaG9FNm8xWVRo?=
 =?utf-8?B?emN3blZqRjE3S09TV1RTMEIveGZNcEdpemdMSHVmVzU4NVRIQUI0TDJJRnZu?=
 =?utf-8?B?M05lM0ZwTnRUTlRvMmpPYk05bW83YWRITUlKaFlQb0hMQ3c5bUtMcW43U05M?=
 =?utf-8?B?SFY0ZUVlSy9lVE94VDlRa3FrR3JlOVlxak8xbTIvaW4zUm1URlpMRC9PNk9i?=
 =?utf-8?B?Y2F4ay9hbjRMNnhEOFg0N2I3YWFRb2VETjdUaSs5VXo4a1RqT1ZhSmN0cVdt?=
 =?utf-8?B?S1UrakVXaTdhTGhrZVVoU1NmdnJ4VytmeGVVSGpKd3MzZmxpalFGaVBEdHBL?=
 =?utf-8?B?NTVJZnJudklPaGNqTTRwb2I0c1RkcXZqT05PTWUvems4Umd1dWRrdFUrcTVN?=
 =?utf-8?B?UnpBK3lhb2hleExzaTdOSlNYem1SUTkrWnVoQkJhREYxOGFWdWJ3M0RqWUVa?=
 =?utf-8?B?bHdEejJxRE95TXNuS1cyekdJV0FMZUd0aEhFYUt1MklCY2hjMFhBTm9GLzhP?=
 =?utf-8?B?bG8zenVXOTFqQm1HTFYzZUdxd3Q2YWFZRXhhbnN5aDRoSVZ5d3hoQzd6cFBv?=
 =?utf-8?B?OVRQaG5iY0thZUJSeXhDcHFtYnl1YThZNWdRdkZIZlR0YTFKSWZGVWhMZWIy?=
 =?utf-8?B?cVlJWFppdGNFVWpqc1ptdVpaK3ZIeFU0ZjZBYmJrY1FVWUwyZEhFZXRiL2FW?=
 =?utf-8?B?VDFWMlhLQmcySnRzSU8xOXYrbFVqRHpTUHBQbWtDTThXZHE5VFVMNlBYTTRh?=
 =?utf-8?B?VGlrRjExWHhvUzdyeHJQdjQ2cVJtNFEveE9mdEttVGtSZk1sSXJTVDRmZXRI?=
 =?utf-8?B?ek4xK1U0Q0JTc1dzM2VodVZOZlo2Mk5iVFIzaVZUb0R4VE1mQ2xucC80Y0N0?=
 =?utf-8?B?QUJWT2cxV0plZUJXeXcxWGdXTENQR3VtTGJsalRobXppby9hOU5WZjFPYUUr?=
 =?utf-8?B?QnNiMkJHSmpkQm5zYWwrcTdocmJnb2JoMlYvS3dFL29pLzhvZ2tiSkc3N2J1?=
 =?utf-8?B?ZHZYMlN5VmVHcUdSaXNUMGsvRFZ5TXVBanV0VStMbmtkaDB2bjRjamZiOXl2?=
 =?utf-8?B?MThrdFI5Zkp2STQ2aUJPb2lvbkl6cXJodGJZOGs2Q1o2NFVpaGpWY0NIOGR1?=
 =?utf-8?B?R1preVNGd1lhWGZSb1E2STNBNmpwSjQ5RGtNTHA5Y1FaWkdjVHJCc2s5N1p3?=
 =?utf-8?B?R2d1RmpnSzlUMUFzY2RJd2lSSlRxaVhpbHl6eU1ZN1g5OGNkMzJQSTV2R2Q5?=
 =?utf-8?B?YWxjVjlzTWd4dnJITms5YUtGd0N3c0N3MVcxQmR5ZkR1K0hqS0pZc2pMemVO?=
 =?utf-8?B?VkF0MmdXZVpGZm5xWXFVK2o1TTZRL243bWlsRXZRaGdHTk5KSm1hQUJPWS8w?=
 =?utf-8?B?STNDRHFWUlB3K0h3NVJyY2pycVRWdkFLd3I2eWl4Ky8rVytMeTdWbXVOWEFV?=
 =?utf-8?B?YklKNkFHMzlzZDZOZFNaK01SY3FkZnRueVlqTEZOQkk1ZHpDakd5MHJiNWpB?=
 =?utf-8?B?a2hraEEvNHlSOUo0MnhFUS91aEJTaGZKQUhEUTROMU5PLy9WcWZ5a29sUkxZ?=
 =?utf-8?B?U0tTaGVNK1orUmJuV0ROYU90Y0d0MWRJVkxFV1htdFZORzBkZXZ6RjluTFMv?=
 =?utf-8?B?cE1uUU1IeEEybjVmc1VQNW5kdUFLWmNrZlNLVW96ZDFzMUlpSTBJdW5lbFFE?=
 =?utf-8?B?SWZOSEZYVEpFK2VDVmVKSU9ta3BGRnhkWjdHbGZUblBLdnR5R0NHNVpJMXZh?=
 =?utf-8?B?WHJxTDViUzRIVFRHS0Z3R1NBcFF0RS9FcU12SkdGa0d0VmlCNmo2MHJKQVNE?=
 =?utf-8?B?dVMwOGpRajc2a2dLTjZ2RFZabkR5TkluZVlmSVlieXFMVUd0Z3FkMmZ5SjhQ?=
 =?utf-8?B?cjF0TmdEL2UxWWxDYzNjcVE3cnpYbkhmS3hmSFF4ZGdTV1pTK2hjMkhnN3pD?=
 =?utf-8?Q?lMMlsiYmpZ2Uz8E85aon4a/Nx?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 67b1e50d-e732-4489-7716-08dbbd9947ff
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 07:30:23.9685
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: a1RW/GkHvTiV8DUH7XJXlKOgqgi9wGzbxltDU+WjLXKFOUB/2+0qY18ZYi4IY7/Vc9FK8yrYEhB4Qdk8aOs4/Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8109

On 22.09.2023 18:11, Andrew Cooper wrote:
> On 18/09/2023 12:37 pm, Jan Beulich wrote:
>> On 15.09.2023 22:36, Andrew Cooper wrote:
>>> The current logic used to update %dr6 when injecting #DB is buggy.
>>>
>>> The SDM/APM documention on %dr6 updates is far from ideal, but does at least
>>> make clear that it's non-trivial.  The actual behaviour is to overwrite
>>> B{0..3} and accumulate all other bits.
>> As mentioned before, I'm okay to ack this patch provided it is explicitly said
>> where the information is coming from.
> 
> The information *is* coming from the relevant paragraph of the relevant
> chapters of the relevant manuals.
> 
> I don't need to teach programmers how to suck eggs.  Nor am I going to
> quote buggy manuals (corrections are pending for both) as a
> justification for restating several paragraphs of information as a oneliner.

Earlier on you said this to my original request:

'SDM Vol3 18.2.3 Debug Status Register (DR6) says

 "Certain debug exceptions may clear bits 0-3. The remaining contents of
 the DR6 register are never cleared by the processor."'

"Certain" and "may" do not describe the behavior that your change implements.
Hence imo there's still a need to clarify where the extra information is
coming from. Pending corrections are of course appreciated; in case you have
been told the new wording already, perhaps you could quote that?

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 07:53:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 07:53:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607682.945962 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkgPJ-0006hw-3q; Mon, 25 Sep 2023 07:53:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607682.945962; Mon, 25 Sep 2023 07:53:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkgPI-0006hf-Uh; Mon, 25 Sep 2023 07:53:28 +0000
Received: by outflank-mailman (input) for mailman id 607682;
 Mon, 25 Sep 2023 07:53:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkgPH-0006hZ-PG
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 07:53:27 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2061c.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::61c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9abc3573-5b78-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 09:53:24 +0200 (CEST)
Received: from AS9PR01CA0038.eurprd01.prod.exchangelabs.com
 (2603:10a6:20b:542::16) by DB9PR08MB8457.eurprd08.prod.outlook.com
 (2603:10a6:10:3d7::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Mon, 25 Sep
 2023 07:53:20 +0000
Received: from AM7EUR03FT049.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:542:cafe::2e) by AS9PR01CA0038.outlook.office365.com
 (2603:10a6:20b:542::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 07:53:19 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT049.mail.protection.outlook.com (100.127.140.234) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.14 via Frontend Transport; Mon, 25 Sep 2023 07:53:17 +0000
Received: ("Tessian outbound c99fbc01d472:v175");
 Mon, 25 Sep 2023 07:53:17 +0000
Received: from 2a5b2ec0eba6.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 C998A5EB-CF54-4644-9A5F-FE84868922EB.1; 
 Mon, 25 Sep 2023 07:53:11 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2a5b2ec0eba6.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 07:53:11 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA4PR08MB5935.eurprd08.prod.outlook.com (2603:10a6:102:e4::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 07:53:08 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 07:53:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9abc3573-5b78-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=En7O30F/RZO5oOvbQqdI7F1Xch162MdrZ67ZvgGGTOE=;
 b=2GzEsPhlaS8KZluYoGaflWVpMDYA9qk2jyylX4+DtkjgRCZFsdT+3qvJWyhcwBQ1cLxEgYYXwtH4SW9wFO7G06yBEWVMAsuT4I8SwIna6J4YspAeEqf1VXrJwBKPyxPInha+sMdrGxUbVhxj9/s0FurzZm9Vjj5p9dNcxttCNDo=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: cdb18cb95e47ed8e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Gz2GAxQHOchnrRiiLLVuCae0Y5TVMXXwB/K2NCh3lLLEALQr9uiyJpPai7/Qdc0qBFrulQQ15WhYICLPdr5/GGDfTa71XFBykKPCMSXm6z6iheGlqS+tqBSad4M5ILx2lCaGKvPEMrw8Lbv3i2s5LPQK0Z+mYQvve9e6aVl9icf/f4hd1ofFwExNmfMfMbvJKZBkyqCRXzxYBGJkiQ23h4Y2UAEE+oab9Acko0Egsn/BElhr+i5UafU5MzoZuN5CqL65cjYLcm8xabHAMsLwE354fHKHekEHmfh3NUsDRtGEuYHWUthOCxHX93fRGtYrLg3eTb8YvRo3cyfwFOiVYQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=En7O30F/RZO5oOvbQqdI7F1Xch162MdrZ67ZvgGGTOE=;
 b=M63YBVV4OZQ1BYXms0va/9PKLAcHIcQSySyRYnkBT8/9Pa7oHLEdbPoXbnKaKAJfiT4vOUxkoOpIzoivwWdqNOuCMRVg6aDgnnQiTm0dxLXLNsI8QIVpzxdUqQiaxX5RJHoPwuLRpwL84InR2ii+UYfbSVcH8iitwXyhFiSfHYLG3LHd3br1yKPHVzjG88JLozc1662OuIFOF99xx2STwl6jD17QOc+a09cHsvaqKRMnZ8lMF0zck+0Snk72RSAfHZyR9ESMmdWnLZn3R23QqGfV41z8kyQJ6q00gy0ry0eL4caYC4jq1WliCxxaEY+s4HVRLjM969BEzfl0SvVvpw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=En7O30F/RZO5oOvbQqdI7F1Xch162MdrZ67ZvgGGTOE=;
 b=2GzEsPhlaS8KZluYoGaflWVpMDYA9qk2jyylX4+DtkjgRCZFsdT+3qvJWyhcwBQ1cLxEgYYXwtH4SW9wFO7G06yBEWVMAsuT4I8SwIna6J4YspAeEqf1VXrJwBKPyxPInha+sMdrGxUbVhxj9/s0FurzZm9Vjj5p9dNcxttCNDo=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Andrew
 Cooper <andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>, Demi Marie Obenour <demi@invisiblethingslab.com>
Subject: Re: [PATCH v2 for-4.18?] x86: support data operand independent timing
 mode
Thread-Topic: [PATCH v2 for-4.18?] x86: support data operand independent
 timing mode
Thread-Index: AQHZ5MDnZ00SVLfzmUmuQZLkdMd2orAWXCkAgBTk6QA=
Date: Mon, 25 Sep 2023 07:53:06 +0000
Message-ID: <4F6F6A66-515C-4543-ABB5-246330F5EAA2@arm.com>
References: <54005c49-b012-8265-246e-22b03a87f724@suse.com>
 <29A9BF11-7ECF-4C3E-9D5E-9D44E63A297A@arm.com>
In-Reply-To: <29A9BF11-7ECF-4C3E-9D5E-9D44E63A297A@arm.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PA4PR08MB5935:EE_|AM7EUR03FT049:EE_|DB9PR08MB8457:EE_
X-MS-Office365-Filtering-Correlation-Id: a5d84710-8a7e-4e66-c398-08dbbd9c7b02
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 agN/TimRK98fctknZdeoqjzKqbSdgL0HMpk2xv6ydtywSLk+OxbZBevyHrPiMU5q1bff8aGwiwyBq+XcoBqzO8sEGybI5mwMsyqLjJykjWECz9LVvoKFgfYALVRW0XrKE9HXMosQYHdCjw9oF0FzENdQftfBjAWkFyWJeelVkHQYZfn+FvAC6mnnGu/WiMFGWpZ/ufaYrNtG4GQ+XPqIibNqMH3Tos1kFyXRvzujA3SQ73DnoZaHKUaCoyvnm/hjsbZSba30VfvmVnWqiFlyMrvXqMJNuOShSp+f47zILbpNmZVlHaMRmxog2dB4JqdwyWeG66zZc/LXrnA+t6PH/hhYr24XEFTe4l9KavJXBsLMYEywqfJeum9tEDj+p8f70eshxbGtB1DmrUL3H3/1sBbjT/HRueb3oxaQZFXrQt1n4b4VLlYZO2KjMP8rRzeX9pdMs3afARfm8MqwuOCMqfG9RVKejTymtEkRrIPVnIijDoSf3+ep6UWal7xfi9+XSD3LnyJshN4SHFFVjI6+uPXntNR/hfOdFoWi60RyeWgVmy8WzthaBewSwAjEOouRFa4881C3v8w6s3fU5GY6M4OIsh1nLfkjTiIz8XGJyp//ds7d6xhHLC7VwCHxxGnBxZBmcDVBoK9PA+3xifWPRA==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(376002)(39860400002)(136003)(396003)(230922051799003)(451199024)(1800799009)(186009)(316002)(41300700001)(26005)(2906002)(66556008)(5660300002)(8676002)(478600001)(966005)(6916009)(91956017)(66446008)(54906003)(64756008)(66476007)(66946007)(76116006)(4326008)(8936002)(6486002)(6506007)(71200400001)(53546011)(6512007)(36756003)(2616005)(83380400001)(122000001)(38070700005)(38100700002)(86362001)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <964F4B870C40F3419B504E24698EC24F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB5935
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT049.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	061c6a52-1a2a-4cd7-dc6d-08dbbd9c7407
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mlpboPlht2FulVWj7HzNhoWjHCnQ38XDDtv1K3/pKh9OGng0jIrqpqsW2iuxrAg2WFrOb7MuKKKLOGUnCpaTH8VXWNfSf/X1zMrXim+XV6sK89aGti9owEVdVRHbZDC7C66quH0MMn9/boHuaSqdzW8ZbFCCmCy9+vaNF/ICzTTupHc4oluBYL/+B5iCocliXn7pt9k3HIjSr4Y6Qd8xGxbRDzgMrtg+CtE/adtkVNSGkZgg6RNlOmFGrSglcgZgCImIWTl8ylwbiLfsGQfvXUMRNQlHSJsULz/uXpGw+DJIX7GmnbfpCAhiFBgwVL4YNjqfp6s++OlXci58HbuUFjVfAbpRRQCDIMg9BaEjoHUcmgabU0FgASlKLfyMXCg3XvkJKUQ9PjfWf0dwKhM+fdmFqhMvDn3yP32qCT6NG7mnLm6uuQWXLKdg94qRxcWBGNCY/gRuciF/e82MfV3ij6t1dXNEYgT5llEy7ymBGRLw2bSYc0b1+wTbo83yZU9jMLd4RJY9D8hCsSRsiO1T3Xxp/VYQ1GaYJCq4f3eFRj+0e9UJMD8DXWQE6d+2qTMGkmDn5TdaAB8SnfTJPfxn35Zfh7qrc3Z+SGqzMgJA7Eh/zvjFljzbPnEjj8YAhhh80dGbvAc5IBRbMYtQ0J8Pvc+KQFgQT5vy22BoljX3RM5GJWDlC2e9L42cJOHBhPveaXFTWoUYZI7gBAMxLH6GwdCJqEsBCF9pEB5LmA9tkUc=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(136003)(39860400002)(396003)(230922051799003)(451199024)(186009)(82310400011)(1800799009)(46966006)(36840700001)(40470700004)(336012)(53546011)(40460700003)(6512007)(83380400001)(8936002)(54906003)(41300700001)(40480700001)(6862004)(2906002)(8676002)(36756003)(316002)(4326008)(5660300002)(70586007)(33656002)(86362001)(966005)(70206006)(2616005)(26005)(478600001)(6486002)(107886003)(6506007)(82740400003)(356005)(47076005)(81166007)(36860700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 07:53:17.8758
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: a5d84710-8a7e-4e66-c398-08dbbd9c7b02
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT049.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB8457

Hi Jan,

> On Sep 12, 2023, at 08:48, Henry Wang <Henry.Wang@arm.com> wrote:
>=20
> Hi Jan,
>=20
>> On Sep 11, 2023, at 23:01, Jan Beulich <jbeulich@suse.com> wrote:
>>=20
>> [1] specifies a long list of instructions which are intended to exhibit
>> timing behavior independent of the data they operate on. On certain
>> hardware this independence is optional, controlled by a bit in a new
>> MSR. Provide a command line option to control the mode Xen and its
>> guests are to operate in, with a build time control over the default.
>> Longer term we may want to allow guests to control this.
>>=20
>> Since Arm64 supposedly also has such a control, put command line option
>> and Kconfig control in common files.
>>=20
>> [1] https://www.intel.com/content/www/us/en/developer/articles/technical=
/software-security-guidance/best-practices/data-operand-independent-timing-=
isa-guidance.html
>>=20
>> Requested-by: Demi Marie Obenour <demi@invisiblethingslab.com>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> ---
>> This may be viewed as a new feature, and hence be too late for 4.18. It
>> may, however, also be viewed as security relevant, which is why I'd like
>> to propose to at least consider it.
>=20
> Fine with me if this patch can be properly reviewed on time, because of
> the security relevance.=20

Based on this, if this patch can be properly reviewed before we release
4.18, please feel free to add:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 08:17:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 08:17:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607696.945972 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkgm1-0003zU-EP; Mon, 25 Sep 2023 08:16:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607696.945972; Mon, 25 Sep 2023 08:16:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkgm1-0003zM-BV; Mon, 25 Sep 2023 08:16:57 +0000
Received: by outflank-mailman (input) for mailman id 607696;
 Mon, 25 Sep 2023 08:16:57 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkgm0-0003zD-W5; Mon, 25 Sep 2023 08:16:57 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkgm0-00082D-OS; Mon, 25 Sep 2023 08:16:56 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkgm0-0006Xu-Fx; Mon, 25 Sep 2023 08:16:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qkgm0-0007Ri-FU; Mon, 25 Sep 2023 08:16:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=qlUcMcR6TkSlvHG5p3h4KHaXR95u8roD05vPnrNJN54=; b=NXqBRdv8+A66coav1eXBtld4Bv
	mLsO3PpNGv/bhbaJ3MC8YQ4pPNHsKxLc3mromCdQ0v8Rg0GwZuxG4I48s3d/iLJhfzd/ngfKyiCFk
	4xiQXVl3Pjd1ysxaaErYrM2LAnxVP44lYmi95Wx9B+zxuxzMtDpKi9MnjXEbH/DyW+2Q=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183151-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183151: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=43dcf453fc15ca152945ca41dcce7f2f43a14313
X-Osstest-Versions-That:
    ovmf=8b2e6b90b85fd4b1f7f921da09b16f5175acea8a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 25 Sep 2023 08:16:56 +0000

flight 183151 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183151/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 43dcf453fc15ca152945ca41dcce7f2f43a14313
baseline version:
 ovmf                 8b2e6b90b85fd4b1f7f921da09b16f5175acea8a

Last test of basis   183119  2023-09-22 15:12:28 Z    2 days
Testing same since   183151  2023-09-25 03:12:35 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Henz, Patrick <patrick.henz@hpe.com>
  Patrick Henz <patrick.henz@hpe.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   8b2e6b90b8..43dcf453fc  43dcf453fc15ca152945ca41dcce7f2f43a14313 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 09:12:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 09:12:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607721.945991 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkhdb-0006Xe-E7; Mon, 25 Sep 2023 09:12:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607721.945991; Mon, 25 Sep 2023 09:12:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkhdb-0006XX-AU; Mon, 25 Sep 2023 09:12:19 +0000
Received: by outflank-mailman (input) for mailman id 607721;
 Mon, 25 Sep 2023 09:12:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=FPzs=FJ=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qkhdZ-0006XR-Qu
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 09:12:17 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9d5d02fc-5b83-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 11:12:13 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 68B0C4EE0737;
 Mon, 25 Sep 2023 11:12:12 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9d5d02fc-5b83-11ee-9b0d-b553b5be7939
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	jbeulich@suse.com,
	andrew.cooper3@citrix.com,
	roger.pau@citrix.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Wei Liu <wl@xen.org>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>
Subject: [XEN PATCH v4] drivers/video: make declarations of defined functions available
Date: Mon, 25 Sep 2023 11:11:41 +0200
Message-Id: <5830a4d838883a20a6b320dd9af44ef4bb18ddaa.1695632599.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The declarations for 'vesa_{init,early_init,endboot}' needed by
'xen/drivers/video/vesa.c' and 'fill_console_start_info' in 'vga.c'
are now available by moving the relative code inside 'vga.h'.

While moving the code, the alternative definitions are now guarded by
CONFIG_VGA. The alternative #define-s for 'vesa_early_init' and 'vesa_endboot'
are dropped, since currently they have no callers when CONFIG_VGA is not defined. 

This also resolves violations of MISRA C:2012 Rule 8.4.

Fixes: 6d9199bd0f22 ("x86-64: enable hypervisor output on VESA frame buffer")
Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- Moved fill_console_start_info to vga.h
  (21bee1787021 introduced this function)
Changes in v3:
- Changed the preprocessor guard
- Replace the inclusions of <xen/console.h> with <xen/vga.h> where needed.
Changes in v4:
- Reworded commit message
- Removed superfluous stub definitions
---
 xen/arch/x86/include/asm/setup.h  | 6 ------
 xen/arch/x86/platform_hypercall.c | 2 +-
 xen/arch/x86/pv/dom0_build.c      | 2 +-
 xen/drivers/video/vga.c           | 8 --------
 xen/include/xen/console.h         | 2 --
 xen/include/xen/vga.h             | 6 ++++++
 6 files changed, 8 insertions(+), 18 deletions(-)

diff --git a/xen/arch/x86/include/asm/setup.h b/xen/arch/x86/include/asm/setup.h
index b0e6a39e2365..dfdd9e555149 100644
--- a/xen/arch/x86/include/asm/setup.h
+++ b/xen/arch/x86/include/asm/setup.h
@@ -25,12 +25,6 @@ void subarch_init_memory(void);
 
 void init_IRQ(void);
 
-#ifdef CONFIG_VIDEO
-void vesa_init(void);
-#else
-static inline void vesa_init(void) {};
-#endif
-
 int construct_dom0(
     struct domain *d,
     const module_t *image, unsigned long image_headroom,
diff --git a/xen/arch/x86/platform_hypercall.c b/xen/arch/x86/platform_hypercall.c
index 9ff2da8fc324..9469de9045c7 100644
--- a/xen/arch/x86/platform_hypercall.c
+++ b/xen/arch/x86/platform_hypercall.c
@@ -14,7 +14,6 @@
 #include <xen/event.h>
 #include <xen/domain_page.h>
 #include <xen/trace.h>
-#include <xen/console.h>
 #include <xen/iocap.h>
 #include <xen/guest_access.h>
 #include <xen/hypercall.h>
@@ -24,6 +23,7 @@
 #include <xen/pmstat.h>
 #include <xen/irq.h>
 #include <xen/symbols.h>
+#include <xen/vga.h>
 #include <asm/current.h>
 #include <public/platform.h>
 #include <acpi/cpufreq/processor_perf.h>
diff --git a/xen/arch/x86/pv/dom0_build.c b/xen/arch/x86/pv/dom0_build.c
index 909ee9a899a4..5bbed3a36a21 100644
--- a/xen/arch/x86/pv/dom0_build.c
+++ b/xen/arch/x86/pv/dom0_build.c
@@ -4,7 +4,6 @@
  * Copyright (c) 2002-2005, K A Fraser
  */
 
-#include <xen/console.h>
 #include <xen/domain.h>
 #include <xen/domain_page.h>
 #include <xen/init.h>
@@ -13,6 +12,7 @@
 #include <xen/pfn.h>
 #include <xen/sched.h>
 #include <xen/softirq.h>
+#include <xen/vga.h>
 
 #include <asm/bzimage.h>
 #include <asm/dom0_build.h>
diff --git a/xen/drivers/video/vga.c b/xen/drivers/video/vga.c
index 0a03508bee60..18b590cdf072 100644
--- a/xen/drivers/video/vga.c
+++ b/xen/drivers/video/vga.c
@@ -54,14 +54,6 @@ string_param("vga", opt_vga);
 static unsigned int columns, lines;
 #define ATTRIBUTE   7
 
-#ifdef CONFIG_X86
-void vesa_early_init(void);
-void vesa_endboot(bool_t keep);
-#else
-#define vesa_early_init() ((void)0)
-#define vesa_endboot(x)   ((void)0)
-#endif
-
 void __init video_init(void)
 {
     char *p;
diff --git a/xen/include/xen/console.h b/xen/include/xen/console.h
index 53c56191ba9e..ab5c30c0daf2 100644
--- a/xen/include/xen/console.h
+++ b/xen/include/xen/console.h
@@ -20,8 +20,6 @@ void console_init_postirq(void);
 void console_endboot(void);
 int console_has(const char *device);
 
-int fill_console_start_info(struct dom0_vga_console_info *);
-
 unsigned long console_lock_recursive_irqsave(void);
 void console_unlock_recursive_irqrestore(unsigned long flags);
 void console_force_unlock(void);
diff --git a/xen/include/xen/vga.h b/xen/include/xen/vga.h
index f72b63d446b1..9b2c47971d0c 100644
--- a/xen/include/xen/vga.h
+++ b/xen/include/xen/vga.h
@@ -13,6 +13,12 @@
 
 #ifdef CONFIG_VGA
 extern struct xen_vga_console_info vga_console_info;
+int fill_console_start_info(struct dom0_vga_console_info *);
+void vesa_init(void);
+void vesa_early_init(void);
+void vesa_endboot(bool keep);
+#else
+static inline void vesa_init(void) {};
 #endif
 
 #endif /* _XEN_VGA_H */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 09:35:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 09:35:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607728.946001 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkhzc-00026q-6F; Mon, 25 Sep 2023 09:35:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607728.946001; Mon, 25 Sep 2023 09:35:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkhzc-00026j-2z; Mon, 25 Sep 2023 09:35:04 +0000
Received: by outflank-mailman (input) for mailman id 607728;
 Mon, 25 Sep 2023 09:35:02 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qkhza-00026d-Tt
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 09:35:02 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qkhzQ-0001C4-5V; Mon, 25 Sep 2023 09:34:52 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qkhzP-0004Ze-Qr; Mon, 25 Sep 2023 09:34:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=crmq3pzBVGieTA8ED/L1colBz2S4qigRY0llT4ruybY=; b=zArYjK5pYG/r6DTDobfV0ULOoe
	G5dgZAenHCi4WbO96xpbA1yc5RBG0TlVQ3xFbW4Prod0xLxy9REU3ZEBrRKRTjamaG3sSz3/2xZRr
	OiN/b9L08jOzFV+RHbSiClhRHCzGHByzRTijzyoI5QpJ5iggyTD/6nJYLkKrByz5zqy8=;
Message-ID: <1a056bd6-a918-4c76-82b0-0eded46b23a8@xen.org>
Date: Mon, 25 Sep 2023 10:34:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, Jan Beulich <jbeulich@suse.com>,
 "committers@xenproject.org" <committers@xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 "jgross@suse.com" <jgross@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
 "community.manager@xenproject.org" <community.manager@xenproject.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <6399a816-ac1a-b741-ed52-b5d03b498ee6@suse.com>
 <2AB20BED-9ED9-4713-A39A-59891E09E02C@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <2AB20BED-9ED9-4713-A39A-59891E09E02C@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Henry,

On 25/09/2023 07:40, Henry Wang wrote:
>> On Sep 25, 2023, at 14:32, Jan Beulich <jbeulich@suse.com> wrote:
>>
>> On 25.09.2023 03:25, Henry Wang wrote:
>>> Hi everyone,
>>>
>>> This is the reminder that we are currently in code freeze. The hard code
>>> freeze date will be in two weeks, i.e. Fri Oct 6, 2023.
>>
>> Could you further remind us about what is (not) permitted to go in during
>> this time?
> 
> Sorry, my bad. From code freeze, technically only bugfixes and release
> Blockers can go in.
> 
>> I also understand all commits need a release ack from now on?
> 
> I think so.
> 
>> (I'm sorry, we're doing releases only every once in a while, so it is
>> always good for things to be re-spelled out, i.e. even if they haven't
>> changed from earlier releases.)
> 
> Actually, thanks for asking! For MISRA work...
> 
> 
>> This, for example, would then likely mean
>> that all Misra work now needs queuing for after the tree re-opens ...
> 
> …I also thought about this, to be honest I am tempted to loose the control
> or at least offer some flexibility on this specific part, as normally MISRA
> related changes are harmless and actually harden the code. I am wondering
> if there are any objections from others…
> 
> Committers, would you mind sharing your opinion on this one? Thanks!

I am split. On one hand, I agree they low risk and would be good to have 
them. But on the other hand, they tend to be invasive and may interfere 
with any bug we need to fix during the hardening period.

So I would lean towards at least restricting the number of MISRA patches 
we are merging. We also need to consider a time limit so we don't end up 
to push the release just because a MISRA patches broke the build. I 
would suggest any MISRA patches should be committed by the first RC.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 09:47:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 09:47:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607733.946011 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkiBA-00049g-7g; Mon, 25 Sep 2023 09:47:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607733.946011; Mon, 25 Sep 2023 09:47:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkiBA-00049Z-4L; Mon, 25 Sep 2023 09:47:00 +0000
Received: by outflank-mailman (input) for mailman id 607733;
 Mon, 25 Sep 2023 09:46:59 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aZBI=FJ=citrix.com=prvs=625423c2c=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qkiB9-00049S-9p
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 09:46:59 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7661eb64-5b88-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 11:46:57 +0200 (CEST)
Received: from mail-mw2nam04lp2177.outbound.protection.outlook.com (HELO
 NAM04-MW2-obe.outbound.protection.outlook.com) ([104.47.73.177])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 25 Sep 2023 05:46:53 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH7PR03MB7091.namprd03.prod.outlook.com (2603:10b6:510:2a4::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.21; Mon, 25 Sep
 2023 09:46:49 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Mon, 25 Sep 2023
 09:46:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7661eb64-5b88-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695635217;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=pjUYHuu3ISBEQKSy++w8oy5/+HPEcqiNkT2vRoMNQCE=;
  b=Ju/YG3hhZovj9TduBTHSwxA9yNCIWxWpqqBJIZH1hxPju7KB3sCebL1T
   kuDXODDZ3pC8MAgNZQcuF6zPl9/UGwA67ZG7opWxG6ROTX1cB6iUt0hdt
   wSGl7vE5fXuAHqI+wBshiAcSgqqFTtna8UCI6/xAU3oJQuDxyG1XGJXkT
   A=;
X-CSE-ConnectionGUID: CwTOjojvQ36wrXvB+xgNeQ==
X-CSE-MsgGUID: rfGW8DtbTLS3g71lB4sWWQ==
X-IronPort-RemoteIP: 104.47.73.177
X-IronPort-MID: 123702348
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:TJIiLahk+khE5m+dPZNqxVmxX161AhAKZh0ujC45NGQN5FlHY01je
 htvCD+APvyCYmWmftkia46x8U0BsMOHn9VjTFBoriBgHnwb9cadCdqndUqhZCn6wu8v7q5Ex
 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOhTraCYmYoHVMMpB4J0XpLg/Q+jpNjne+3CgaMv
 cKai8DEMRqu1iUc3lg8sspvkzsx+qyp0N8klgZmP6sT7QWCzyN94K83fsldEVOpGuG4IcbiL
 wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ
 OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+
 tQzNwwqbBeBmdvtnq2hevdGxdQsCsTSadZ3VnFIlVk1DN4AaLWbH+Dv2oUd2z09wMdTAfzZe
 swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilMqluGyb7I5efTTLSlRtlyfq
 W/cuXzwHzkRNcCFyCrD+XWp7gPKtXqhA91KTubkppaGhnWJyEMsWDEKX2efmqK21Re6cY5EF
 HMtr39GQa8asRbDosPGdx+yrWOAvxUcc8FNCOB84waIooLP+BqQDGUASj9HafQludUwSDhs0
 UWG9/vrGDhuvbu9WX+bsLCOoluaMyUPMXULYyNCSAIf+sTiu6k6lBeJRdFmeIaLidnyFSD10
 iq9hiE0jLUOjuYGz6y+u1vAhlqEuZzhXgMzoALNUQqN7AxjbYqhT4Wt4Erc67BLK4PxZnmMu
 mIV3feX6u8mBIuI0ieKRY0lFbWk5f+DPCfbx0BmG50s9TOF8HqkYIwW6zZ7TG95P8BBdTL3b
 Uv7vQJK+IQVLHasdbVwYY+6F4It16eIPc/sUPnPctNVY59Zbgaf4CZ0aEif3mbgnVItl655M
 pCeGftAFl4fAKVjiT+pHeEU1Od3wjhknDyMA5fm0x6gzLySImaPTqsIO0ePaeZ/676YpALS8
 JBUMM7iJwhjbdASqxL/qeY7RW3m51BibXwqg6S7rtK+Hzc=
IronPort-HdrOrdr: A9a23:fwaRg6p/Abmhsp4popZYwFoaV5queYIsimQD101hICG9Kvbo8v
 xG785rsSMc6QxhKk3I9urgBEDtexnhHNtOkOss1NSZLXzbUQmTTL2KhLGKq1bd8m/Fh41gPM
 xbH5SWfeefMbEMt6nHCWeDfurIi+P3l5xAzd2uqUtFXEVhbql79Qd3CgySD01xQ2B9dOIE/b
 Snl7F6T43LQwVvUizga0N1JdQqhLDw5e/biV5qPW9Z1OHB4AnYloITXXKjr2Qju4Ej+8ZfzU
 HV1xH87r+u9+q20APYygbonuVrscqk199KHsDJlcQPMDXrjW+TFfRcZ4E=
X-Talos-CUID: 9a23:ELVuCm9zf3WPPTM3RaGVv2ULJucndX/D9SyOPFWIF0wqWLKzRGbFrQ==
X-Talos-MUID: 9a23:+LktJQR4+uCxUGLORXT2ih5dZOt06ZiKMxsCzswCkZWfChNJbmI=
X-IronPort-AV: E=Sophos;i="6.03,174,1694750400"; 
   d="scan'208";a="123702348"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hMB7lvIplLW/BrsHRdegmYBE1dfyoOvDq3/qztKmon1jxA4Oripd+zeodetJTAOF7lflqmhKac2MWRC5qECf+JMtzEzgY2IaXP4ZWXbIKWoyGYOBFac01IFa8i1tv16DaAR22bL7JMg84ldOJNUprTKP6l6m6emwvsDiGPTI04dVcA3gQ23aiZ8c1NF9aBn5q6zmUQvLnnFG/sACY2QD8mCPNBvgmeCCeLXUhOimds7O1cMKSQYpQeT7XsKWCSazhIBuyaFJQTlfh5brUX1/zWGj974cZww9zMtwOFPIV0O3mjyhfrl+fHBZdcEwYAVMN4qYDxURr2CKM2J7gGIo/Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=BVC4/YVXjTRU1z6NZv9YDCFCTz6txPE0WbZ8eFg7mPk=;
 b=j8/WPWtGkJUb+zCT+DIsiz4apTNZE/Bit/4E2IHGNnjH/kkZbdyz8Y62AnSqhr0JCaqnq/lsgVWNodTXG7K88ZaR05izAVBXVLDgxrPlmS58IVmBGgMJMm9zqjCaI8dEfifCDVJYcEXhwp+8zOXASYeG9plOs1fLQKxtsy226ABbNqAIPIz/TVc5V5pzl3DnaVRP0hot2eAJUL0/b4EEeEMDr1Qk8e64FDHV7bkBjQjeCpf2TbjoQc3LYjh+HkM1/IjTm6CFGUbYy35CV0xfy0Hia99GErIzbMQOyqVCUfn5nuULX+bBLYx8oHyXnidZx32lEoLcSqEQQJGPYfpUOg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=BVC4/YVXjTRU1z6NZv9YDCFCTz6txPE0WbZ8eFg7mPk=;
 b=BN1pMw5U09G+rL3Woh4rTd+vW1Fmy81KgUoS1GZ+m6QIm8loElnrgnrsQsEWb5o1NJ+Qw+Iu9Y3oIo17+TMKt4afh/kmi8im+hWx/GnZ9sz1UjFgjPYtFyw348Tspn9rOcrmsIEwxgOVb2GuiQvnqkgQKfkjDdhFbHCzTquolMQ=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 25 Sep 2023 11:46:43 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
	Julien Grall <jgrall@amazon.com>, Henry Wang <Henry.Wang@arm.com>,
	Alejandro Vallejo <alejandro.vallejo@cloud.com>,
	Xen-devel <xen-devel@lists.xenproject.org>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: Re: [PATCH v3 4/4] pdx: Add CONFIG_PDX_COMPRESSION as a common
 Kconfig option
Message-ID: <ZRFXA0dUHk5Rmlan@MacBookPdeRoger>
References: <20230808130220.27891-1-alejandro.vallejo@cloud.com>
 <20230808130220.27891-5-alejandro.vallejo@cloud.com>
 <d462f419-4cd2-53c4-7694-b43b7fa68d88@citrix.com>
 <b0296908-5081-5d34-8487-b8293eee97ca@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <b0296908-5081-5d34-8487-b8293eee97ca@suse.com>
X-ClientProxiedBy: LO4P123CA0475.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a8::12) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH7PR03MB7091:EE_
X-MS-Office365-Filtering-Correlation-Id: a89f73d4-cdee-46f9-370f-08dbbdac56be
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wur8LI3G0eklWlJNvazWkvjrC4n75oFeXc0OLx/12p2zxcPTll82srvWIK35aKZ5z+7x9f0+Y8wKy3EoKocNZTiK1HMWgpR7T1PIm86jpQofQaGsmYEBey+YihFIBEKfYVoxpjQqdTYFyg0fcYzHqWYpNMJ4G9R5WTakV+waqQZz2rU9A5bO2oXbakfthrSWgLCEt9jX2++ASeVadVN9uHjx8KTReAt9SMfopmADXIRed7Sd97wSi6qXkaXXyNX53Z6EzlBBSH4lZ80G/Kdj2+4Ks2OYje7O8lMjs/MUNQSKootoUHfbOlO6WlOY/TpkxE59VC5j5ZHihZ7lSiZYYH02+RASP1bSBhSBnjpVyYHHwj+drAL/KuHwB03mzIw43pBET5VP+ZGD9WEM3bMEXQGaLbWHsVkvY8hWYTmQvdX6Z+e0uGtF2uBpHqJ0050fc/hgBk+vaUmn2eU0GS9Jta/Uk2z56d5Qj1Iw/atWIwOsMfnICRgi94oDyQMkeOpj+48yDzvNMO9y6WE/tendS+PIHc6O3T2d64epIAisci8wxIlbZK17DFJewiYmH23i
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(396003)(136003)(39860400002)(376002)(366004)(346002)(230922051799003)(451199024)(1800799009)(186009)(86362001)(82960400001)(6486002)(38100700002)(6506007)(6666004)(478600001)(53546011)(66946007)(316002)(66556008)(54906003)(66476007)(41300700001)(33716001)(6916009)(6512007)(9686003)(4326008)(8676002)(8936002)(7416002)(26005)(5660300002)(2906002)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SlVuTERlQzRFU3hJVEZNL1A2L3V6RUlGM0NnV2VSaG5nNGROVDBYeGxEc1ZF?=
 =?utf-8?B?bG5xUlFVNUJTUGVWMjJUa0M3dE51b3ZLVUxMVHZHVVdwSUgrU0paWlczUFo1?=
 =?utf-8?B?eTRWTHYxTUZDRGdRYnlGV2JUYWI3RFdHdGJ5S0hnMkFLYnNnYlNGM3JJa1Q0?=
 =?utf-8?B?VEhOd09KTzZ4YlRKaENXSFp6VUxMZkNvNGdRTmtBSUdiUmVGMnNoQUtkMkVt?=
 =?utf-8?B?NXo2Q3lGWlVDQmU0dko0bFVNOEdQVHp6MWdzODBxRS9UMnpDb1pydzVpaHhu?=
 =?utf-8?B?VFY2SXdPclZ2TEN3UWdrOUgwTkFFSFZvN1dDc0Q3TS9CZnVwY0RXMCtQeDNE?=
 =?utf-8?B?NXc4bndzbDVIU1FPN0ZONCt2VHAwNXZuRnhPei9YbHVtUHliamJ5ZVZVWEVL?=
 =?utf-8?B?UDlzQ2dtckhVUStQQ0VOZ3hKVzBQa20zWkppWWNDM3FpbW1iSzc1L1ZZMmJV?=
 =?utf-8?B?Z00yNklYTjZSMDgxNEZOY0tXSWVLeUY5bWJNeVVOajRabHBkdWFweVlBL3Jk?=
 =?utf-8?B?K25NY2gyUGVlOXJwaGtJMjFyN1MwTnN0emV2Q2ZwQjVyVFZ6MmVuSnJCWDM4?=
 =?utf-8?B?dnNqTEp5Y05wM2NXOU9yU2syNzVTY2xxcFZJN2FmYUpCcGVjTjZCbzZHTkhX?=
 =?utf-8?B?YVA1R25SV2xhQXlJR2VaeHFSVVFqamhNcmlFdG5LRTRiOWF5aU1XSWF5QW9m?=
 =?utf-8?B?OHNHdFl6dVRSWVBXS0JoTnp3azZOczk0WlVodWJJcDl6S1E2aHJKR2IxcXFP?=
 =?utf-8?B?SDVqRUw4UWJaTExxK1Vvbk5USnFacWhzbUJGNVZoVm5TdFRJRkFENHYyZkhm?=
 =?utf-8?B?T2ZrMlZHY01ydmpOaEtHblFTTkw2MG5penRVa0wwdlBadUZZMW5oMGc1S1VZ?=
 =?utf-8?B?L0JKQ2lCQmd6TExaUmpVdHBvcURwaG9IZzFqRElTdVMyQTcwTFhuZitsdFhV?=
 =?utf-8?B?YkZZTitMUzBud0ZML1ZLSFdRLzdBaVdvaksyb2NKd0JBWENNT3EwekpKVDlN?=
 =?utf-8?B?RHRGL2ZmNjExRWZjVUNqVjI0TWgwNU5kakJ5K0xFRmdIZGlMRFBKTzNMUGwx?=
 =?utf-8?B?eTBlYmtZdkVhS2lHK0FGTDI0SUV0VHp2K3gvaE1wcndkRG9zZnZaVXB5YktY?=
 =?utf-8?B?dDJLYTdNNVhnTktVTU9ZYWxFZnBhUFRTREM3a2ZabnV5UXJWWHcxcWNoTUM3?=
 =?utf-8?B?bGdzanUwNU5vT2ZweW43ejZ3eDE5eVBvSERkMmNmazE2RUhiWHUvd3dtdzRo?=
 =?utf-8?B?Uys0MFVHNmxzR0hvbXlMWGswNERGeWZjWUNla3VUMUZ1dHlBTEVVd1hiaXow?=
 =?utf-8?B?YVl4MGM0WXBlRzduc21kTkNHZUt0K1dLcXV3RHJZdnJkK2svVDJ5U0tSQ2Fr?=
 =?utf-8?B?emZkMWhVRUdvR1pjZ0ticGt4TkZpODlDbk0rVUtVQUJvcjdmcUZGVllLRGdj?=
 =?utf-8?B?Z3FkZXZJYUlXYjlIYmJmU0d0T1Vyd1lqcExlT1RvWTVjTVdFcUgrWkFBd1FN?=
 =?utf-8?B?Q3F1QW9RZnFsdk53akpaOFM2ZjV2Y3Zsck5nNE95N1kxVXZzN1hvNCtMZjJJ?=
 =?utf-8?B?RWxmU2FxZzFnb21NODZVem9BNUFvejd1MXBKa0JRbm9QekFQZ1FXWWc3NnJQ?=
 =?utf-8?B?cTJaUURvNGlwWnIvV1hRV0tqaDl3bmEyMjZLV3ZvZVBVMjF3RHhzdEFLYWs1?=
 =?utf-8?B?WjNuT3ZYTy9WdytvL2h2NlBSRlFhTkFxSThLQW1ZS1FPaVJobDFFZC8vQTRZ?=
 =?utf-8?B?SzZSV2FoT245Uzl5K1dmaVJVMGcrOXM4V2hsb05XYU9FZU9RVCs1Z2o1ajJ6?=
 =?utf-8?B?c1MzVGZPWlFockRGOElyK1I2aE90WkhEOENVU0JJTTRMT3hQeGZOeW12S1hZ?=
 =?utf-8?B?V3NWcVdrcFByb3E3R2s5WDhmb0lIWElaa3hOT1JLcUNNaUdjcDhLRzFCOEhX?=
 =?utf-8?B?TlVXdGV2YjRUMjZZSzFCQ2dNdXlTeS90Umtwa0FIUzViUE9VVTRtZzZZcGNy?=
 =?utf-8?B?TDYvTEFaVjFhM2sxYlpqTnhpdG5iZm5LdWY3TXhJUFdydTZYNTN1SmpzZnVI?=
 =?utf-8?B?NHpIUWpNaVhzclZIRHpraFR2OEhyUm5EWW4xNkl4NWFaUmRlUzRrSG5LQ2Mw?=
 =?utf-8?Q?/DfsldD6/ex2O8nq60l1sXLVP?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	=?utf-8?B?b01oRzJod1Q3c1VaUmxkeWVkS2tXWEVxTXJ4YUlFRDJuOGFwRzZLYlp5TlU5?=
 =?utf-8?B?dFBkdUdQMFY4SlZrVGFNZDVRWmpJQWMvQXJ5Z0FWdHM1aHBtaDR3QXpGYWVt?=
 =?utf-8?B?c0lQSkJrQllRMTVKaDB3RzhKM09XVEpIM0NuR3dwSk1IK0EvQjUyY2VSdmpP?=
 =?utf-8?B?VkZHc1ZOYm15VjNBMzRtUEU3RExKNUd1Rk45N1BpbWJLWllicXd2Vmw5d2E4?=
 =?utf-8?B?Y2J4dmgrTXJxZHhUTDJiZDZkZ0JZcXE5THM0VFRaWFB5UmtycURrSXhDeCtQ?=
 =?utf-8?B?VkRUS2QyTGhhaWFqYzR2c1ltVklsVTZYa0I0Z3J5aG5ZN3BjSWYxR1ViM0hL?=
 =?utf-8?B?ZGVEU2E2c3hrMnliUU1wQk4zKy9IWnY5a0NDdHkyOFFnTy9BTE90b3VBM1V6?=
 =?utf-8?B?YzF5bzBpRm9FejIxVE1OaGtlNnNzT0RvcHVaOW5FeEpTaUJzYzFKcE16bEFC?=
 =?utf-8?B?Y2ZMdWRXNGQ0bnNDaU1uTlUrcHlKNFJZN2V5TUNrMkVnUmwzUnRxT1FxRDhq?=
 =?utf-8?B?SWZHVEtucmJUUkxFZ1dQZUhNZDhTa0NnU2syS0wwUlNrVGlrWko0TWFIdUNY?=
 =?utf-8?B?c1hjRGVYdGRUNHdoWWJQTVFoWXF6NG9jSHc2Z3FTQWFLOWE2VElEdVNPOWc1?=
 =?utf-8?B?Ny9OVjRLZ0djbEtLMU45ektraGxSTGZjTXAzUlJTNlZrTENpaUsyN09OV1NU?=
 =?utf-8?B?NFpTU3JuZ29TVVF1ckl4UUtqeDNoVm94ZU9nVmpnRnB4NG1HaFhFVVNQQm9n?=
 =?utf-8?B?VGRKLzhDdTZqMlVaYm5NMFRNNHFKcXgvcVptNDJPSXFyR3VXRHJYeTRqZWxj?=
 =?utf-8?B?eWwyU3BRcmdTaWZ1RWVJZXFzT01QNVVIMTJPYWs3dDNvWDdOUDF1Qm5Dbksy?=
 =?utf-8?B?SHRkRGU0WG02NHREZG1FNU5vb2tISXpwL1MrVGRqaTRha0Z5c2ZqZi96MWp2?=
 =?utf-8?B?RWRjVEdaMDdRczhUYnMvRysya0ZwMGlZckRPTThDVFB0V3Fad3pINnNvdnBn?=
 =?utf-8?B?Wk94WkRGblRYdDJxRnlZMTBmaWhGRHUxaE10bW9wdGt2aXk0SzJuZ0UvKzJa?=
 =?utf-8?B?akswMU1TZ1ZEUmRpblpyTGdjdGNQUXRJUWljdWI3VnBnWWxOUHhGV2I1OGRq?=
 =?utf-8?B?bEU2M0xaZXUzSERhR042YnJXVnpFeHo1STFteEV6K1JBNFd6OHJlcUFPd01E?=
 =?utf-8?B?b1F1QjRQdjc4OGFqVTh1ZS9nKytaSVRKQThubStlb3dsNHlIRlZTUGtmVEI5?=
 =?utf-8?B?SFpabm5aV1J0amlrd29ZVElCMjhYZnlTVkZ5ZjgwMFZmeE0vVjAvbkFqSTBV?=
 =?utf-8?Q?TAvj7oJwtbl54eHklHe0WlTLDdgfOw/v2U?=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a89f73d4-cdee-46f9-370f-08dbbdac56be
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 09:46:49.3627
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 4rsz8Kec4mTWFfE9B51kSR7oIgYIA8JfL+c3PMM6t1eB87s+PPDZ0fMdcGXSJDUXuJMhBcr8Ukt3dmBDgIghuA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7091

On Mon, Sep 25, 2023 at 08:36:03AM +0200, Jan Beulich wrote:
> On 22.09.2023 22:03, Andrew Cooper wrote:
> > On 08/08/2023 2:02 pm, Alejandro Vallejo wrote:
> >> --- a/xen/common/Kconfig
> >> +++ b/xen/common/Kconfig
> >> @@ -23,6 +23,16 @@ config GRANT_TABLE
> >>  
> >>  	  If unsure, say Y.
> >>  
> >> +config PDX_COMPRESSION
> >> +	bool "PDX (Page inDeX) compression support" if EXPERT
> > 
> > This still needs hiding on x86.  The minimal hack for 4.18 is "if EXPERT
> > && !X86".
> 
> If you insist on complete hiding and I insist on allowing it to be used by
> people who want to play with exotic hardware, then this won't go anywhere.
> I think I've come far enough with accepting a compromise, and so I think
> it's your turn now to also take a step from your original position.

Just because I'm not familiar with this, is there any x86 hardware
that has such sparse memory map that would benefit from PDX?

Wouldn't anyone doing bring up on such exotic hardware also likely need to
perform other adjustments to Xen, and hence commenting out the !X86 in
Kconfig be acceptable? (we would likely make it selectable at that
point if such platforms exist).

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 09:55:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 09:55:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607744.946021 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkiJQ-0006H6-3l; Mon, 25 Sep 2023 09:55:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607744.946021; Mon, 25 Sep 2023 09:55:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkiJQ-0006Gz-0P; Mon, 25 Sep 2023 09:55:32 +0000
Received: by outflank-mailman (input) for mailman id 607744;
 Mon, 25 Sep 2023 09:55:30 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3u+g=FJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qkiJO-0006Gt-AV
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 09:55:30 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20621.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::621])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a87f3c60-5b89-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 11:55:29 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB7512.eurprd04.prod.outlook.com (2603:10a6:20b:29e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.27; Mon, 25 Sep
 2023 09:55:27 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 09:55:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a87f3c60-5b89-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TK4j+5klyH6SzsUpDOSfe3u5fMHUzxqET4Q1e6nq4MVr3J/jv+ObvTEXHUSqRtJJC8+FYzB4/B9B3ogb1FItA9vaK/yMiscFqVKa4R0pXDG7vy9EtzpKqbw6MIUXGQdG+uhLNapnO+4RaGE/UisKhTJfByaWEJBm03lDMvf/FkZrR43dq9q6qh7BFSf7hIfjqPlc591XdTvZ0ka21mnvb0fW3ASaJXxj9gWfwRB8PvpBag3TcmDtBdhPLxBTx7vyUDtsY+Q+pw8IVGVxKB4dAE+DnPReLWqlcQxFW2E3GfjewLZS5RXSqBuwC67gAUy/vgyxwl+Wstp4Gvh1A0DI6g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=PkhX9fBHFnm8D4sR7SXofUd78KR7Tart4aEfQ+w+b4Q=;
 b=gQFI+0TX6cu9D2TtvT4wiDlsnqdcwln3mrJ2b6GQpx9+ySqWo6ZDygeol4f1GnwEgAKFMVBl4nHyZQZ+g5Y+LqA44NhMCg7zQB+xnoe8uyqs/bqC/Jw8Nnz0fVf+IpwOOAps9Kj0y5cJ+FHvZTmrUkggmTYzv6u2uj4SbUePgTAQBOomioLvEsm9aT4ZVjJHvdXJ++hW40x1P/kYed01HCR9aY7SWG4fRf9P9TkFXdmc8kVXTVHzvERad24wmNq2ZCNO3JhYzZANzDmppQSPcifkbu8g4Y9tiASZlfqaoKL9Q6fNp5RAGniDITUP+GMVuDtQvRtDJ5+Qv1LTHjmvpg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=PkhX9fBHFnm8D4sR7SXofUd78KR7Tart4aEfQ+w+b4Q=;
 b=bntvmdbQljVjJo66TN8JzJSZzpLrQAMPdPbLbiZxuqvA1pVYFOwna3ypme40mEH3Z7ThtdIS/I0BKr70HsjUapdNgDybz7Pkwz3b7Jz5T0P0n4SeBIrzh9uwQQHLZbenFrNRHXDgVWDQKN0FX7DeVFJaZSrQuGNS4hxkoyjE/LucOSefKofiISnuydZ7nzEYb2JHzCeIk24RqGOLmHbTy4ddURmrgPThEP4NbCgQPaby73DzIKtZyaUbqm0S1ZIPe0JDsR/ciVFQiD1tqqoOl0iWESt+n4wKY2AwnfXeiKWnlP3hDJ1fRfhaGK6itspaIFlnA/Gkk92/a/FKM5geKw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2b600963-6196-d6c4-8ab3-ab142c323f7b@suse.com>
Date: Mon, 25 Sep 2023 11:55:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] x86/i8259: do not assume interrupts always target CPU0
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230919110637.12078-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230919110637.12078-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0125.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB7512:EE_
X-MS-Office365-Filtering-Correlation-Id: 6796d8f4-3a18-499d-930d-08dbbdad8b39
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GqBYa2QDlFz6BfNTVOcXcKSH/swHWVw8HBVK0FB80MrONIFJxWhVzSW/EG1C4NUUoUDwLDuuW2bjWoevRa+8NY6AywuljLbK+j4GwJuhb7HLF/KD4wjL09b0Kg/Pfc+VGD9MF7LNXxvJsgi0nDfX2eBn9rMJY9p6Pj7jtkkMIF61xSDwt7SV5C9DvlYKBimb4O4D7AFum3Dt2Jm+5/uOxwXjsjJTqaoEC/U6Jd46NLL2qG7L3ot5oe3UxlaocWH5TA0cPOIYu6ncp7JC35lQoN/upb7dQcZR30ZuAYR0mSikfl2LRoS//QuZRtJzI4ApDXJdgJ43zHs9KwkAdUfWjwHEDBWBblBrMH4A6PrwaeFhIYq8VMlawArP+v73+xS/aaQVdForOa1L1Xpm22KcDu4tRjYjyk/8DXvoufEMyLECZFVl+JMguN7nEIJXJLjbwn7xxrFzkzbIQKtSk8Kr5tNE+QvOEXA5AYtL9NnTyxBXd+9W3HRlZTow9Oi70bS8sAq5Y8qhSqLpp7ayyAecBIrbWd1PDY+QpEMHgeMIo2jT7teRy7HLS/iMZcL3SmRWDCkfkrYiJRBBzXDfO91mx/UucYoHdW+4KbMW/tZrQMjNyCbNzToAdxbKPPn/zSNlFzzDQ+nZUzVqlpYXoJe3og==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(366004)(39860400002)(346002)(136003)(230922051799003)(186009)(1800799009)(451199024)(26005)(83380400001)(8936002)(8676002)(4326008)(66556008)(316002)(478600001)(41300700001)(6916009)(54906003)(66946007)(66476007)(5660300002)(53546011)(2616005)(2906002)(6486002)(6506007)(6512007)(31696002)(86362001)(36756003)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Q2F2Y210Z3FGbDQrKzdnRVVGNEVPNEJoU0ViT1FBVlZlNmdXcGhRRUlVYWRP?=
 =?utf-8?B?NDZqU0NoaWRTdThMaG9mUFQrOVkyalFsQXlNWUI5c2tTQVByZmdsQ0xuOGNR?=
 =?utf-8?B?SW5tb0cvamtNYWtNbnZ5SGRqR0pQUk9wVU84ZVNFRW1RNzNFZ2hoaSs3L0dn?=
 =?utf-8?B?bCt6aElUWEFRcVRCSFRDYXJuUlVCc1pTWTJSNFJQTHRaVnlnaDJHckI1Tlhi?=
 =?utf-8?B?QjFINDFoekhvTmNxam1rNlgzc1BPU2M0KzZacFJDSTJnaVpNT0h5dFAyR3Q3?=
 =?utf-8?B?Z3ZOZVJPNGpvV2k0RnZtOURjMWpWTEV0VXdTRHhjZE96Y1BrRlA5NTFSK0JO?=
 =?utf-8?B?anhUbDlxU1gxRWV5WkU5WEhOTnlFL3ZLWDdHRmtvTlFvTm9iVkNGbmxBZGwz?=
 =?utf-8?B?UFgya1huU1d4anJrK1lVT1UvZjFWUEtxZlZGMUtuYnBQUmZkZG5xUWhPY05Z?=
 =?utf-8?B?M3R2N3lPMGRzUXhBdVRtWThVZjBaWXl5TW91aDFoTEJGMnJBMnMvajh1Z1Rt?=
 =?utf-8?B?YkNKODIySnd1anNWb3BXM1hXTjg1WDU4Z2RhaHlIcDdrMTA2R0NVcWQxSGNS?=
 =?utf-8?B?TXQ5aHZVNHlYOUhlVXplL2J1YmNHTytaQW9ieGlvUkhIOGRYTDU5T1I0bHZq?=
 =?utf-8?B?UjAzbUFsSitEMWFGWUpqMGJ2YXpXeTJrVDcvY2ltNUhndUs1dTdSc0E1K25l?=
 =?utf-8?B?T2NjMXV1WGVkYy9JV1FVdTE1Ny9oYXVzOGpKRzB1YmNCWDg0UkcyaUZ0WVpl?=
 =?utf-8?B?YkZVckFVOXlRTTNxZFNlZmJabzRqaHFZVkNvV0NPMXpYS0krdmlGWWEvb1JI?=
 =?utf-8?B?VnlON3JRV3lWVnJnbnpNTEY1d2Vnc1M4ZlZab2VZRlowZW9MT2RzSGlMODdR?=
 =?utf-8?B?cjdaOEVuTUJFVy9pc1lmQzkzWEt5UllIc0RzNnp4SXdrT2I3OHdQV1BKeTNG?=
 =?utf-8?B?bnZTMnpUc3lUYWZuUnJxUnBwZ2pPUHVOYjdGNDMwMkY5NC8vMnhmR3ZHYmFl?=
 =?utf-8?B?WmtiSzBJNmVmcHVsWDVIMGRRbjhhQUxtbGJPRFVqTmppWWpPSnQxWW5xNWY5?=
 =?utf-8?B?bFdUVTgxaHNYWFRKaUlBMDdUL3E1MGVCZ1FXNitZQSs2WXk1UWRFUUE3MHpq?=
 =?utf-8?B?U1Q5NWNVZzFyTWJXM3dBRkZmTUdtYlpwRmlaZk9xSTVUS2YwN3NiaVh1ZHNF?=
 =?utf-8?B?cVFqN0NYZmc3S01mUm82djBiRzVvL3pPd29LNDdqTjJVcDdsdzBrYVNPQWtj?=
 =?utf-8?B?dkVNdnNNckE0WGx5QmltS1paTkJJdTUrZCs4T3NlN0s0WXZMZmpJUzNTMW9u?=
 =?utf-8?B?RURWNnBLanB2SExCaGoyRkNyTzQrSHBuSGV5ZGpITVVueFVFd2p2RDlzUFhz?=
 =?utf-8?B?UE5ndEY5QndSbDJJNDdpcnc4R3IrT3NQQ0tTUHZyWVRqWWVRTkhaS1g3cFZD?=
 =?utf-8?B?TDJUclZNUVAwaHgySThZQVFtYnFNYlBwNlYzeG1nVnNTSVdZemZIZXJ4MXJJ?=
 =?utf-8?B?MkRwTTZvNDdOYkxXU3pjN1NXanBkbmlBcUVvOWNpZzJ5YmVQQWhSUFlIQVJ4?=
 =?utf-8?B?azArdmhycEJHRkFyZ00yRXdZRmd1MmJkS2FHTkdkKzBtTDl3b3BmMkNFRDMy?=
 =?utf-8?B?N05CV01iTHh0cDY2Q0VCSUQ5RGJNbVhEZnpYQWV3SFZ3eFplZ1c1eFBsR2l4?=
 =?utf-8?B?WVpCRmkvbzN0SE03MVVJMGdxOVFnVnlSSjBJUEc2RnU5M3I3NEYwL29YbG1B?=
 =?utf-8?B?UkxwVFhNK21SbHdrdG1pZWNEOHFtZlVwc09xQk02bU96Nnp2dElUM2VVSk45?=
 =?utf-8?B?bGYxUTVnSWpUOXBpVm56WnlWOFBQMm10TkNXOHVtYzFoc1E0MmZ0Mlo3WVNp?=
 =?utf-8?B?b0tPdU1HT2JBN01adDJ5c21nc0FJb0hYKzE0VmFCNXF0TVlPbFNyOHZ0UHQw?=
 =?utf-8?B?bHNDemozdmlDNHRMRloxOFp2Nm9mdS9URC9lSVZrV2xhWWxUdEJHb3JhOXEv?=
 =?utf-8?B?Tmh3cmNvNTVSNlo5VHZlSHZ0RWhpRm5OTElBMUlQa2JJb2tsczBiMGxDSDlR?=
 =?utf-8?B?WEN3Q0JoblVxOEFaUGRneDFiMGxxYWxVZmZEcERmc2FtQXUySElLbHdBbGQ0?=
 =?utf-8?Q?l1bJzYRxC9CQvbD3HF+EZKk8T?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6796d8f4-3a18-499d-930d-08dbbdad8b39
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 09:55:26.6777
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: kRhAIk5Pa+XwQ1Wlmv0DwG8EHvpUIu3gVogECwTrRz/7jtuNlhxEi6IefHPIp/yV1Quu0g8PjzngREuFzeCXBQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7512

On 19.09.2023 13:06, Roger Pau Monne wrote:
> Sporadically we have seen the following during AP bringup on AMD platforms
> only:
> 
> microcode: CPU59 updated from revision 0x830107a to 0x830107a, date = 2023-05-17
> microcode: CPU60 updated from revision 0x830104d to 0x830107a, date = 2023-05-17
> CPU60: No irq handler for vector 27 (IRQ -2147483648)
> microcode: CPU61 updated from revision 0x830107a to 0x830107a, date = 2023-05-17
> 
> This is similar to the issue raised on Linux commit 36e9e1eab777e, where they
> also observed i8259 (active) vectors getting delivered to CPUs different than
> 0.
> 
> Adjust the target CPU mask of i8259 interrupt descriptors to contain all
> possible CPUs, so that APs will reserve the vector at startup if any legacy IRQ
> is still delivered through the i8259.  Note that if the IO-APIC takes over
> those interrupt descriptors the CPU mask will be reset.
> 
> Spurious i8259 interrupt vectors however (IRQ7 and IRQ15) can be injected even
> when all i8259 pins are masked, and hence need to be handled on all CPUs.
> Reserve such vectors in order to prevent dynamic interrupt sources from using
> them.
> 
> Finally, handle spurious i8259 interrupts on all CPUs and adjust the printed
> message to display the CPU where the spurious interrupt has been received, so
> it looks like:
> 
> microcode: CPU1 updated from revision 0x830107a to 0x830107a, date = 2023-05-17
> cpu1: spurious 8259A interrupt: IRQ7
> microcode: CPU2 updated from revision 0x830104d to 0x830107a, date = 2023-05-17
> 
> Fixes: 3fba06ba9f8b ('x86/IRQ: re-use legacy vector ranges on APs')
> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> ---
> One theory I have is that the APs at some point (before jumping into Xen code)
> have the local APIC hardware-disabled, and hence are considered valid targets
> by the i8259, but by the time the vector is fetched from the i8259 the
> interrupt has either been masked, or already consumed by a different CPU.

Aiui with LAPIC disabled, IRQs should only be possible to go to CPU0,
for there simply not being any SMP without LAPICs.

Did you check that there are unmasked ExtINT LVT0 on APs? And unmasked
PIC IRQs? (Although, for the latter, it could of course be that by the
time we gain control, they're all masked again, but an IRQ was in the
meantime classified as spurious.)

> --- a/xen/arch/x86/i8259.c
> +++ b/xen/arch/x86/i8259.c
> @@ -222,7 +222,8 @@ static bool _mask_and_ack_8259A_irq(unsigned int irq)
>          is_real_irq = false;
>          /* Report spurious IRQ, once per IRQ line. */
>          if (!(spurious_irq_mask & irqmask)) {
> -            printk("spurious 8259A interrupt: IRQ%d.\n", irq);
> +            printk("cpu%u: spurious 8259A interrupt: IRQ%u\n",
> +                   smp_processor_id(), irq);
>              spurious_irq_mask |= irqmask;
>          }

Nit: Perhaps, to be in line with the other message in context below,
"CPU%u: ..."?

> @@ -349,7 +350,20 @@ void __init init_IRQ(void)
>              continue;
>          desc->handler = &i8259A_irq_type;
>          per_cpu(vector_irq, cpu)[LEGACY_VECTOR(irq)] = irq;
> -        cpumask_copy(desc->arch.cpu_mask, cpumask_of(cpu));
> +
> +        /*
> +         * The interrupt affinity logic never targets interrupts to offline
> +         * CPUs, hence it's safe to use cpumask_all here.
> +         *
> +         * Legacy PIC interrupts are only targeted to CPU0, but depending on
> +         * the platform they can be distributed to any online CPU in hardware.

I'm unaware of such a distribution mechanism. Do you have a reference? (If
I recall correctly, there needs to be a unique entity in the system that
runs the INTA protocol with the [master] PIC.)

> +         * The kernel has no influence on that. So all active legacy vectors
> +         * must be installed on all CPUs.
> +         *
> +         * IO-APIC will change the destination mask if/when taking ownership of
> +         * the interrupt.
> +         */
> +        cpumask_copy(desc->arch.cpu_mask, &cpumask_all);
>          desc->arch.vector = LEGACY_VECTOR(irq);
>      }
>      
> --- a/xen/arch/x86/irq.c
> +++ b/xen/arch/x86/irq.c
> @@ -466,6 +466,14 @@ int __init init_irq_data(void)
>            vector++ )
>          __set_bit(vector, used_vectors);
>  
> +    /*
> +     * Mark i8259 spurious vectors as used to avoid (re)using them.  Otherwise
> +     * it won't be possible to distinguish between device triggered interrupts
> +     * or spurious i8259 ones.
> +     */

You certainly mean {L,IO}APIC device triggered interrupts here? If so, why
would they not be distinguishable? ExtINT IRQs don't set ISR bits, iirc.

> +    __set_bit(LEGACY_VECTOR(7), used_vectors);
> +    __set_bit(LEGACY_VECTOR(15), used_vectors);
> +
>      return 0;
>  }

Assuming no IRQs are handled through the PIC (which ought to be the case on
virtually all systems), we'd have masked all of them before any APs are
brought up. With them masked, aiui even spurious interrupts cannot occur.
Still you're permanently removing close to 1% of an already known scarce
resource. Can we, if at all, do this just temporarily, such that later on
the vectors can become usable again? (See also setup_local_APIC() for
ExtINT setup - only the BSP would ever have LVT0 unmasked once we've
finished with our setup.)

Jan

> @@ -1920,7 +1928,6 @@ void do_IRQ(struct cpu_user_regs *regs)
>                  kind = "";
>              if ( !(vector >= FIRST_LEGACY_VECTOR &&
>                     vector <= LAST_LEGACY_VECTOR &&
> -                   !smp_processor_id() &&
>                     bogus_8259A_irq(vector - FIRST_LEGACY_VECTOR)) )
>              {
>                  printk("CPU%u: No irq handler for vector %02x (IRQ %d%s)\n",



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 09:59:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 09:59:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607749.946031 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkiNf-0006uf-Jl; Mon, 25 Sep 2023 09:59:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607749.946031; Mon, 25 Sep 2023 09:59:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkiNf-0006uY-Gm; Mon, 25 Sep 2023 09:59:55 +0000
Received: by outflank-mailman (input) for mailman id 607749;
 Mon, 25 Sep 2023 09:59:54 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3u+g=FJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qkiNe-0006uS-FK
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 09:59:54 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20605.outbound.protection.outlook.com
 [2a01:111:f400:fe13::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4618cc6a-5b8a-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 11:59:53 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8596.eurprd04.prod.outlook.com (2603:10a6:20b:427::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 09:59:51 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 09:59:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4618cc6a-5b8a-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LN5JWjmAHP+6V1zNTuVXHet5Yzp04FALyUScLVoPQHybrekdR0+QZfksOYYw2CTVKV/anGWi2Rdibv+yJ1BEKmTXKZ8T3LVCr3LTmCIka6z5NzfYsrgep5rONlfK28VAtMe61mycVTaUZAcWN06YVVWDt1AEh8Gj9Qpoe50ZmWQzIBBt0dPfY0CgRIVbZlObqZNUMquRpqVZriHCvpSV7XUisTue989WZ9cXU8iGUB3TL/LJHdLcUH2LHveJ+PyO2sM/KtveCgANHN7/v5UWyhlOyyVX7XdmJNuQfxY0qr19nLM9OPqZQ2A0luGFFNaW/+mMKetw6epGOvD9bEIzmg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=62zxQaHEZJ7GCGTQCjS8W89lWp3d9IoPO5mQ5kZRgHA=;
 b=jVaMU3qn5+kct1nHrWMci++v9lPLVk2pykvo5sqyyPHJ8oub/ucKX9Z+apF3Dx7T1ouPmLDjBonM0WJKVeYRptF+mG2j0g3uEiSgpplCAPZIUmBBN24fgKFaNN6dIrgifupDmLVSNLIptTdNVUDKl+lNOUy8/mMWNIACT2wHjSmpJWR3KvLDMLjRkHufA7uas08hxok1Fp1wyM08pREwQjER/Fr/VtUmVU+L+pag7VIJfM+BX3fQdFhORDXZX7OKqhcmoFeXtb1BpzOTmScpBYE5SgLQQVVcgRZx+IUoHJUPXvwV12U9Cw2xK6OaGI+McL1kjLnx9BWIbNL2NPzTEw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=62zxQaHEZJ7GCGTQCjS8W89lWp3d9IoPO5mQ5kZRgHA=;
 b=vC2TltEq11P0z13LVn3xNmgZLVH6XmvPwVhoPa2lKGa8ZDlKbLVcGecL4IUMR0Pk6EytEWEIhWdyfpRDStlCTIYlIxR9n3FbXlZpEO5QKppAbLIycnqYUJuuLGPxUO9ArjKx6zzFdFrOlEqVTCOr5XdJw7dg/SRbV1aa+xqbNehh+SYJIDaaa75k0ZKXIfHveAWwxYZy1HIDneyrbERoqHE7PsU8eOdN+0VI+WR3G8dqlkDik9eHzrQ9W4tJpmIhGjFnnC+V6UdhCiPzl4klaS+mPNEEje7RSp+b42TiXK/Rj11fegWIPI0zIotXfEAZt17TqbpOLvZkd3h5x3sokQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <9dae5844-8d1f-9437-ca57-7ea4ea057496@suse.com>
Date: Mon, 25 Sep 2023 11:59:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 4/4] pdx: Add CONFIG_PDX_COMPRESSION as a common
 Kconfig option
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Julien Grall <jgrall@amazon.com>, Henry Wang <Henry.Wang@arm.com>,
 Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Shawn Anastasio <sanastasio@raptorengineering.com>
References: <20230808130220.27891-1-alejandro.vallejo@cloud.com>
 <20230808130220.27891-5-alejandro.vallejo@cloud.com>
 <d462f419-4cd2-53c4-7694-b43b7fa68d88@citrix.com>
 <b0296908-5081-5d34-8487-b8293eee97ca@suse.com>
 <ZRFXA0dUHk5Rmlan@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRFXA0dUHk5Rmlan@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0163.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:99::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8596:EE_
X-MS-Office365-Filtering-Correlation-Id: 6c1779e9-cb86-4d70-db87-08dbbdae28fa
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mQrhttLlqy98LTkqU1yMYcKM4EHCxfuVYUGxpMaXcKmxduRTObreuUsTaAfUctSODvF8WaIYvlwBbDzLpy79mwgxtsrgL1AKyyvFa62s0CVQrhI3cK82ErdMLFC8yM5U2uloAgOLeHNN2N5kakD1U42Dv4wS+Nj9PmKrY1bhwRMNZTaOitVFhx+DCOKhAUw60gN2pOVsTIx5I9uPer9cW8Exqj5fZ/WOjtEDk95KOuaFoYXXsQ43Xcbvhbm8NTwfD+FvUduTnJL7nvTskw33zGGvurFHg1SuKKY/X+o8dZ+WQHGBpbcdSVaBUailj8ch2aoOGwVUjgL/44r4tRQJmhwXEZmDcSROkECCCqR7VcGCmdeeGw9YRKeobq0zw1mYP+aPj3OEeTOhRQFHAAfcWLnfwiVsP8ojJSmByWi2vk8LFyba7qind1rI/UFQmL81O6MEdBKu0UcdyUNKoxuaM2ql1kG4u9an1mmEROdMsYPkhDF5xsZJNND/F6XVPkW0MY9yKuStvz2WR72K49l0Gk4fKF7O/YZgvef+ysc4C16lIK5Sa/XtmM/AcDgrxtsmLBHTuOiE6T5luvm+i5tW++Ewuh/b87lgsNchV6VBg2iLmXrnetzCTqMo/0IoxeqCROZ0UzVb+KUSTOFR/mts9w==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(346002)(39860400002)(136003)(366004)(376002)(230922051799003)(186009)(451199024)(1800799009)(8676002)(4326008)(26005)(8936002)(5660300002)(66946007)(31686004)(2616005)(6486002)(6506007)(38100700002)(53546011)(6512007)(478600001)(54906003)(6916009)(66476007)(66556008)(7416002)(316002)(31696002)(86362001)(41300700001)(2906002)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RVk0RWEzSVg3NE9jNTNQTUFqVXRaWHlNdUJiUjN2c1RSbmxlR1RHNVJmUFhn?=
 =?utf-8?B?WDNjTVZJT2V0dlZLbm9jL05RczNhaDNYMTgvQ3hrbDJGQTJDS0dDZ1lSOWcy?=
 =?utf-8?B?VW9CM1BaT0R5S2piOTFtZXU3MGJLdGRwdWhEQU0xSGsyUXdTcHVFTHovcWYx?=
 =?utf-8?B?c01CUDBZOGhSM0o3V09vT2lsWEhqRFY2QzVnaWhycWFrcVVROENRM2ZzN1A4?=
 =?utf-8?B?aVFNb2hiTFd3TnNtb3kxdUYwSDFLUkpOcDNMa2tOeXhVOHErOG9JVGdQa0tk?=
 =?utf-8?B?SnlaRXpFOGZoVU1HTTdhNkVTSzY1N1hnbmJwc2NLWUl1cXQvclZxM3JwMDda?=
 =?utf-8?B?a3I3MmxxWlRjbFFGN0l5eHNLMEJYclJxOFdaYWtUcXZHUTVMMWpZV1Y0L0J0?=
 =?utf-8?B?UVkwTTJXYXVLUjhPTHRXbWlkTmVxQVlQcUtpOWlrMG83Zk4vUC91TkFxNHox?=
 =?utf-8?B?bnpSOUl6YWVjYXJRTWZoMHhacWd2R3hieWwzMTVUdFVMYWVzYXZPdkdkbFpX?=
 =?utf-8?B?cmFVeEN5UlI1NkZmVThMd2pqOWx0eUxQaG11d3FxMHJlL3VRMkQ0RHNyQmRz?=
 =?utf-8?B?MG9WMzJDcDdTcU5lWGZ4KzF6SFArcFFRTGJhQytXY2N0YzNrc0hlQXR4ckJF?=
 =?utf-8?B?VU9iWHRzcDJiMllXN2pGM3ZyU3JKUkpMcVNUdGNHQU5YUDdaVTBsa0pNS1VW?=
 =?utf-8?B?UkI5M2ZJNkdiNjN0bGVlU2lnUi9ueHBrbm1MdUdEdWYrUXkrYzRONlBidlBY?=
 =?utf-8?B?aUVoVW1PdkpFeU1mQUlDZkJaZkNrLzU5dzhOcHZ3RXFSSGxHbXV4ZGNlelox?=
 =?utf-8?B?a0lNLzdXd1hDZVRLeDJYcU1PNnFrLzdsdXR4dEYwWnI5WEVQMkJ2NXlQdEVj?=
 =?utf-8?B?Q3ZpS1hqWlFnbmJBaVZsODREMG9rMU0xMFQ2NU9XTmU2ckJvVnNOUERIeW9v?=
 =?utf-8?B?cVJWalhsM1pHcm9xS1RpMkVsZ1cyZklhbGkrTlBON2s2Snh4YWhSSW5PTUtG?=
 =?utf-8?B?ZUNWYjZIanMzc1NzVHpaWDBQQzBkOGZBS0NGL2ozNVJXaUtLNmhDdkQ1dzBI?=
 =?utf-8?B?UnhjaFBHeEZwUGhZN1BTdWM2MTVML1hldDVVWXIyUmkzdTVzV2VrWEtVK2Mz?=
 =?utf-8?B?aHAzWCthSE9zK3M2Y2FmTFZjTVBPYk1FZFgrbmNFditOTkFtWW5ibnh0bW1v?=
 =?utf-8?B?M2xVcGhDcVU2VlI1VHJYSFh1V0ZlaG5FMGlDYnVIb0JKS2NPUTJxdjBDU1ZH?=
 =?utf-8?B?MHladiswS3lNSWJVR3R5Y3c4UUh3a055ZW9wVnJpWDNNckdMMVFobDVlTFZR?=
 =?utf-8?B?a1RvVnhsVjZpbmszT3JUMm0vUHQvWnhqcXI4cVpLQmk1akZLME0xeFlhRFhI?=
 =?utf-8?B?OGJqZjBBTWVCTmNic0hhdC9PYURXVGI2cXcvL3BYV0ZwMmV3OEpiUkNsems5?=
 =?utf-8?B?dlViY3A1ZkdNeGhFN0p3OTVsUEtEbHdsRTF2UGFLTHFZZ2tLSG5ZTmZOZmxj?=
 =?utf-8?B?STkwWWhxNzZKOWk2TVlDMVIweXN4S0ZNcERENmUzanJNVUV6MmE0VXRWTUxJ?=
 =?utf-8?B?bnFDcTNpWWYyaTB1aUlQUytYVCtLc0dPcEhRK3luOXM4M1ZvR2t1NFlrbFhk?=
 =?utf-8?B?VStTTkU2V014QmZVNkR0aWoyTHpZOXhYQlpubXJzU1VOaHozM21rN1pHQWoz?=
 =?utf-8?B?TVZrSFk1OWFnSEFxTDNONEljSE1xL1lrK3YrR3ZLRkVqMFE0QTFBcWxEWkJR?=
 =?utf-8?B?bXN2cHZ3MzBLNytVRDN0MGQyRk9hUUZTNkxPZDZGcUc2RnBta3lpODl4QWcr?=
 =?utf-8?B?c3ZaQlFJUVhnYVROVmpoNHNkVHk1UVIxMEpuT1h1eXdSRXpzOGtSbEFvYkVo?=
 =?utf-8?B?V3psR24vU3dNQUhXMDhtV3JoK1FoQlI2QWRQb1oxM0d4czJDMjQ5TFdBaDZC?=
 =?utf-8?B?VUpZdzZOV3lvY0ZvbVJCdFpRUEk5N2VESms4WFpSdnB0Vm5WWlZoelVTUFNN?=
 =?utf-8?B?WjRzWEhBQ0xjN0lDTnVpckJSWGp3MS9BQW1ITkRLYUxSb1BBVXdiNE9CbXJG?=
 =?utf-8?B?T3Q4MHd1V2RJSjRJWm15WTFadWlnejBkRGpMTHJQd1p2RnRiQUxQN1JlVnVD?=
 =?utf-8?Q?SqdmCQ5qpd/+Y2jWpe/bk55JG?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6c1779e9-cb86-4d70-db87-08dbbdae28fa
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 09:59:51.3674
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 76dK/OLwXk1VjwEyFNxM+XqQXbl6ihu+R40iYi7LAAtWx5vesMhKdK/0+JJB/r+/J9tM8poxGDGtiCyrWAiCeA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8596

On 25.09.2023 11:46, Roger Pau Monné wrote:
> On Mon, Sep 25, 2023 at 08:36:03AM +0200, Jan Beulich wrote:
>> On 22.09.2023 22:03, Andrew Cooper wrote:
>>> On 08/08/2023 2:02 pm, Alejandro Vallejo wrote:
>>>> --- a/xen/common/Kconfig
>>>> +++ b/xen/common/Kconfig
>>>> @@ -23,6 +23,16 @@ config GRANT_TABLE
>>>>  
>>>>  	  If unsure, say Y.
>>>>  
>>>> +config PDX_COMPRESSION
>>>> +	bool "PDX (Page inDeX) compression support" if EXPERT
>>>
>>> This still needs hiding on x86.  The minimal hack for 4.18 is "if EXPERT
>>> && !X86".
>>
>> If you insist on complete hiding and I insist on allowing it to be used by
>> people who want to play with exotic hardware, then this won't go anywhere.
>> I think I've come far enough with accepting a compromise, and so I think
>> it's your turn now to also take a step from your original position.
> 
> Just because I'm not familiar with this, is there any x86 hardware
> that has such sparse memory map that would benefit from PDX?
> 
> Wouldn't anyone doing bring up on such exotic hardware also likely need to
> perform other adjustments to Xen, and hence commenting out the !X86 in
> Kconfig be acceptable? (we would likely make it selectable at that
> point if such platforms exist).

As mentioned before, the reason PDX was introduced was to actually make Xen
work on such exotic x86 hardware. While I can't tell for sure, that hardware
probably has never made it into production. Yet still things were known to
work there after the original adjustments, so no, I would not expect other
adjustments to be necessary (provided there was no bitrot).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 10:01:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 10:01:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607754.946040 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkiPC-0008W8-Uf; Mon, 25 Sep 2023 10:01:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607754.946040; Mon, 25 Sep 2023 10:01:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkiPC-0008W1-S8; Mon, 25 Sep 2023 10:01:30 +0000
Received: by outflank-mailman (input) for mailman id 607754;
 Mon, 25 Sep 2023 10:01:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vtXC=FJ=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qkiPB-0008UZ-5j
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 10:01:29 +0000
Received: from mail-wm1-x332.google.com (mail-wm1-x332.google.com
 [2a00:1450:4864:20::332])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7e791e4d-5b8a-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 12:01:28 +0200 (CEST)
Received: by mail-wm1-x332.google.com with SMTP id
 5b1f17b1804b1-4050bd2e33aso63420785e9.2
 for <xen-devel@lists.xenproject.org>; Mon, 25 Sep 2023 03:01:28 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 x17-20020a5d6511000000b0031fd849e797sm11403220wru.105.2023.09.25.03.01.26
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 25 Sep 2023 03:01:27 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7e791e4d-5b8a-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695636087; x=1696240887; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=uF9HFOcox6pQR2Al9mdkKn8TvDo7YjP6eB8y5/6IBs0=;
        b=q0kXDDnC+8X6dGh6CSl+7qOW5IVdK6AbR7cK76zj7Iu9egUXjT8O7bxuJpmZSMqMnj
         6s3rTgk+9ONv1nelMsdaC4IOqnm3/RbEsWPRCBltzhYgwW4WeEvpLwqg2U8SX/tB7w52
         98/uw8yOJEV1w+wNxkknf0IA4pByyD6zIVnzI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695636087; x=1696240887;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=uF9HFOcox6pQR2Al9mdkKn8TvDo7YjP6eB8y5/6IBs0=;
        b=GWHCWxFCufD2k0pjj0wAPn3lTHmWPnOKBR9VlCNEBnlTU/KI8zmbD5HjxfmY4B/jzG
         mgUN+ZyCTrBxXKeVpwWFYDu1GxxjbI3YrmxNonY85vFyNgdNmUSJJ8pZS4kM1CHXR6tZ
         aHDAlTBvz62tCMr5KU0E/NX+I3MglztAw4ifbi4n5ixgH1KdPLIaBcYbFSVvo3TEWdOG
         aZwMkxKTOIsg0puV/5HxchdTtTumNFpG6qirAFypSXGoqh5sOLZ6SQRZyNY8vxPD/vHF
         CMLJDXpXecH7RT/bYPz9o4NFwcCJPlBZqmQ/XK+YUYvC/aR7LeK5I/04Nz97LkjzuB0F
         i7+A==
X-Gm-Message-State: AOJu0Yw0nvXaWvNwsrw5V0iMwpVP90gWdMoIY+5UyDCiV6OoTU65ny9t
	0kAuzDbSjDuWdG4X2z6zHKoqhw==
X-Google-Smtp-Source: AGHT+IE+aiZeFBvAaiwukTgNX3A0yR9vBB+ny3wcbWBFi15oD8Dlw1s78J6QcGmJiX6IlBUQlNwKrw==
X-Received: by 2002:a05:600c:2050:b0:401:906b:7e9d with SMTP id p16-20020a05600c205000b00401906b7e9dmr5300709wmg.18.1695636087503;
        Mon, 25 Sep 2023 03:01:27 -0700 (PDT)
Message-ID: <62622205-09fe-ff43-a5b6-51e159fc19ad@citrix.com>
Date: Mon, 25 Sep 2023 11:01:26 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v3 4/4] pdx: Add CONFIG_PDX_COMPRESSION as a common
 Kconfig option
Content-Language: en-GB
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
 <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Julien Grall <jgrall@amazon.com>, Henry Wang <Henry.Wang@arm.com>,
 Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Shawn Anastasio <sanastasio@raptorengineering.com>
References: <20230808130220.27891-1-alejandro.vallejo@cloud.com>
 <20230808130220.27891-5-alejandro.vallejo@cloud.com>
 <d462f419-4cd2-53c4-7694-b43b7fa68d88@citrix.com>
 <b0296908-5081-5d34-8487-b8293eee97ca@suse.com>
 <ZRFXA0dUHk5Rmlan@MacBookPdeRoger>
In-Reply-To: <ZRFXA0dUHk5Rmlan@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 25/09/2023 10:46 am, Roger Pau Monné wrote:
> On Mon, Sep 25, 2023 at 08:36:03AM +0200, Jan Beulich wrote:
>> On 22.09.2023 22:03, Andrew Cooper wrote:
>>> On 08/08/2023 2:02 pm, Alejandro Vallejo wrote:
>>>> --- a/xen/common/Kconfig
>>>> +++ b/xen/common/Kconfig
>>>> @@ -23,6 +23,16 @@ config GRANT_TABLE
>>>>  
>>>>  	  If unsure, say Y.
>>>>  
>>>> +config PDX_COMPRESSION
>>>> +	bool "PDX (Page inDeX) compression support" if EXPERT
>>> This still needs hiding on x86.  The minimal hack for 4.18 is "if EXPERT
>>> && !X86".
>> If you insist on complete hiding and I insist on allowing it to be used by
>> people who want to play with exotic hardware, then this won't go anywhere.
>> I think I've come far enough with accepting a compromise, and so I think
>> it's your turn now to also take a step from your original position.
> Just because I'm not familiar with this, is there any x86 hardware
> that has such sparse memory map that would benefit from PDX?

There is one known system which never shipped.  Xen's implementation was
from the anticipation of that system shipping.  Nothing else known.

None of the other major kernels have facilities such as this, which is
very likely a contributory factor to the system not shipping.

> Wouldn't anyone doing bring up on such exotic hardware also likely need to
> perform other adjustments to Xen, and hence commenting out the !X86 in
> Kconfig be acceptable? (we would likely make it selectable at that
> point if such platforms exist).

People with bizarre hardware can cover the cost of bringing it up.  And
that includes tweaking Kconfig so they can select this option.

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 10:07:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 10:07:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607760.946051 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkiUx-0001MG-N3; Mon, 25 Sep 2023 10:07:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607760.946051; Mon, 25 Sep 2023 10:07:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkiUx-0001M9-KE; Mon, 25 Sep 2023 10:07:27 +0000
Received: by outflank-mailman (input) for mailman id 607760;
 Mon, 25 Sep 2023 10:07:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/9uy=FJ=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qkiUw-0001M3-RA
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 10:07:26 +0000
Received: from mail-lj1-x235.google.com (mail-lj1-x235.google.com
 [2a00:1450:4864:20::235])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 539d47c9-5b8b-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 12:07:25 +0200 (CEST)
Received: by mail-lj1-x235.google.com with SMTP id
 38308e7fff4ca-2c008d8fd07so99042131fa.1
 for <xen-devel@lists.xenproject.org>; Mon, 25 Sep 2023 03:07:25 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 539d47c9-5b8b-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695636445; x=1696241245; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=HcX4KE7rnHqRUnF1tk552mad5kLenRY9jeAw9HL6ByY=;
        b=Xk92kIShN1DDa4v6SIU9xRCuA2E2YlQFIDuSMeZVSLkOFrOjY4Yds0jr9KsVV4cf/K
         VPxWMJMFVeGIY0xv8wsV4MRQ3X6a+K1pqV8mtmTO99iwrTQ01fiCTUVtCGNO3bkGNw8L
         y+RagPOuDxz59FZI/6DShRgL2nMMGs/juTtt0=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695636445; x=1696241245;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=HcX4KE7rnHqRUnF1tk552mad5kLenRY9jeAw9HL6ByY=;
        b=hsrNsExcHfWp5RLNF+iMgeKf/VtW5w1w3mZoHOn3xW8DxjDQhDlqmCp26/xqZ8aF5Q
         JOsyJ1SGcLBiy4Zc60wadXXTo12C1ZgiVuu7H7bQ4PgY/nBibicHhop/x2deEveznsVY
         fQWuymBStz7L1JrPWEHLO2zKc3X6f8q7VVoMiNwhKflUDRN8vN8wEPD3YolJLeTabNbH
         pKVFtFSMelZnzKfZIHDjhE4bdbHWHkPzN3uq9Rmyak9aWFXONVDudNfIXsf6tnNSNqQH
         0K1q9KVth/LOV/SW0Trh5DTWFGWyagVGSMh247dp35z3r4Igncj1rot+kSP3KZWv31HC
         dgHg==
X-Gm-Message-State: AOJu0YwV7Dk70l7pOH5aOLAcJeGvJoqCe9hAkJ3XTTqQuwnwvu8X8KSl
	lEtngXr8CO5TWT1gxz3HKsZ5vUxzHOtaiU39KGBWhg==
X-Google-Smtp-Source: AGHT+IGSB+fl2d+IAIWLXBLXKspEPMQJPPJ4HVClBZMJKZcOCa7XVoYci82D5PGhZhO4oLVylnIkcQZsWw6eXRGawao=
X-Received: by 2002:a2e:6e16:0:b0:2c0:2f51:cb97 with SMTP id
 j22-20020a2e6e16000000b002c02f51cb97mr5276065ljc.6.1695636445145; Mon, 25 Sep
 2023 03:07:25 -0700 (PDT)
MIME-Version: 1.0
References: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <6399a816-ac1a-b741-ed52-b5d03b498ee6@suse.com> <2AB20BED-9ED9-4713-A39A-59891E09E02C@arm.com>
 <1a056bd6-a918-4c76-82b0-0eded46b23a8@xen.org>
In-Reply-To: <1a056bd6-a918-4c76-82b0-0eded46b23a8@xen.org>
From: George Dunlap <george.dunlap@cloud.com>
Date: Mon, 25 Sep 2023 11:07:14 +0100
Message-ID: <CA+zSX=YqQrcLcdsYeJS1qya_0zf1AHZFcA5g8i3DZvJ+R9PHLQ@mail.gmail.com>
Subject: Re: Xen 4.18 release: Reminder about code freeze
To: Julien Grall <julien@xen.org>
Cc: Henry Wang <Henry.Wang@arm.com>, Jan Beulich <jbeulich@suse.com>, 
	"committers@xenproject.org" <committers@xenproject.org>, Andrew Cooper <andrew.cooper3@citrix.com>, 
	"sstabellini@kernel.org" <sstabellini@kernel.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>, 
	"jgross@suse.com" <jgross@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
	Anthony PERARD <anthony.perard@citrix.com>, 
	"community.manager@xenproject.org" <community.manager@xenproject.org>, 
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Mon, Sep 25, 2023 at 10:35=E2=80=AFAM Julien Grall <julien@xen.org> wrot=
e:
>
> Hi Henry,
>
> On 25/09/2023 07:40, Henry Wang wrote:
> >> On Sep 25, 2023, at 14:32, Jan Beulich <jbeulich@suse.com> wrote:
> >>
> >> On 25.09.2023 03:25, Henry Wang wrote:
> >>> Hi everyone,
> >>>
> >>> This is the reminder that we are currently in code freeze. The hard c=
ode
> >>> freeze date will be in two weeks, i.e. Fri Oct 6, 2023.
> >>
> >> Could you further remind us about what is (not) permitted to go in dur=
ing
> >> this time?
> >
> > Sorry, my bad. From code freeze, technically only bugfixes and release
> > Blockers can go in.
> >
> >> I also understand all commits need a release ack from now on?
> >
> > I think so.
> >
> >> (I'm sorry, we're doing releases only every once in a while, so it is
> >> always good for things to be re-spelled out, i.e. even if they haven't
> >> changed from earlier releases.)
> >
> > Actually, thanks for asking! For MISRA work...
> >
> >
> >> This, for example, would then likely mean
> >> that all Misra work now needs queuing for after the tree re-opens ...
> >
> > =E2=80=A6I also thought about this, to be honest I am tempted to loose =
the control
> > or at least offer some flexibility on this specific part, as normally M=
ISRA
> > related changes are harmless and actually harden the code. I am wonderi=
ng
> > if there are any objections from others=E2=80=A6
> >
> > Committers, would you mind sharing your opinion on this one? Thanks!
>
> I am split. On one hand, I agree they low risk and would be good to have
> them. But on the other hand, they tend to be invasive and may interfere
> with any bug we need to fix during the hardening period.

*Theoretically* MISRA patches should have no behavioral side effects;
but it's quite possible that they will. I'd be in favor of a more
strict view, that they should all go on a separate branch (or simply
be reviewed in-principle and re-submitted after we branch) now that
the feature freeze is done.

That's my recommendation, but ultimately I'd leave the decision to Henry.

 -George


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 10:15:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 10:15:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607769.946060 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkicT-0003iJ-F4; Mon, 25 Sep 2023 10:15:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607769.946060; Mon, 25 Sep 2023 10:15:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkicT-0003iC-CN; Mon, 25 Sep 2023 10:15:13 +0000
Received: by outflank-mailman (input) for mailman id 607769;
 Mon, 25 Sep 2023 10:15:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3u+g=FJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qkicS-0003i6-Mz
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 10:15:12 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0602.outbound.protection.outlook.com
 [2a01:111:f400:fe02::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6865f463-5b8c-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 12:15:10 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU0PR04MB9588.eurprd04.prod.outlook.com (2603:10a6:10:31d::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 10:15:08 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 10:15:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6865f463-5b8c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ekTvcAP0wyxJLtjzLZD5zI7t+63r/9eQZkFhi3vNyrk8Wgdfw3tjawPlpMefp7meLXUhAhvSzqKRlgPNKf999zgxJoswlBq8Dp13ACpk8GKlBCizYbfsz+j6l9Q3pkoZ6AWwTxD9pUmD0gOnuW9Jr03w/ygHADj6jRxHg6LFi9NqYvO5O1pQrg/KkzmjwJ4WyjVcY7GoLRzUyeptqNDiCHLen8gEN3QbnDozSb63cSD+c2iS8XNAV4r+l1kzvMKMc5G1i/N+2lOF0uR0N/XD7j+gRPxvsFrdlyfaPn4uLasE2CS67X0oebKmLhOZMrklZJv5NWBvR5kaHQ6n9YAr1A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AzHRahnFty70n84vwIqaw+xyhYXP2aHICyT9GKPyIM8=;
 b=aNxYMqsPlrVrtL/5Cx/A8GtA8P6DNUAJIGCIY/BDkW+yufINiThAxQJ7IjR0bP8E65c641ni2bqRPGXLJFNUEq1j9ZeohwSkfBqPmFqO4YIaCliyeRn1CoGLNQvanWV8Aqwg9RFvP2RBaDH+U+gK369T8XsE+TeO41/1dE/+FsYdV+uo+LWTXXY6UJh9C2G8NDhOyYzO2FOpkkH4CapPrITnF3rPqXCEfbM1ykpc3d+Kfe6a3+jkkpqKDLYwoYuzXp9o0TO3W3eeH1lH8PuDXNv87Bq/NRr2skBr5Fqm2+tibNmHpsWaWTOI43UP+yWGWuuLzJzhpXBSE2x7FRso1g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AzHRahnFty70n84vwIqaw+xyhYXP2aHICyT9GKPyIM8=;
 b=JXgaUGO+cGPboyQuzfYtbett97NBCzGfprdIEnIHvqZ46+DqlBB8nP84QkQlUWNhu4wNgq4jsQD0D1a8Ke2QEF0kWGUYrfblpuHIEtafMPinkZvQleXbsveytLYKfS5I95fl4OIUqSr1sDzcvh/+ENr20ATMHnTM5Tk8ugRGLwV7KUkc1yM0u43/nCVonUViProApOSqtI2zz+o4w8Pts+Ti34OQZVLftkDiV+pospjwSaRtO7KmttoQlu8ha5fGxyykngCM9Wl0RX1mZ3ObfHv35hEIW1TxmoWSXR8yNg6uYhTCg7KzQOk4PV/dKlCKZIJg5vlKNTUmLf5CHm5HRQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <319c38ee-798d-0f15-e537-230c79a367b3@suse.com>
Date: Mon, 25 Sep 2023 12:15:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 4/4] pdx: Add CONFIG_PDX_COMPRESSION as a common
 Kconfig option
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
 <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 Julien Grall <jgrall@amazon.com>, Henry Wang <Henry.Wang@arm.com>,
 Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 Shawn Anastasio <sanastasio@raptorengineering.com>
References: <20230808130220.27891-1-alejandro.vallejo@cloud.com>
 <20230808130220.27891-5-alejandro.vallejo@cloud.com>
 <d462f419-4cd2-53c4-7694-b43b7fa68d88@citrix.com>
 <b0296908-5081-5d34-8487-b8293eee97ca@suse.com>
 <ZRFXA0dUHk5Rmlan@MacBookPdeRoger>
 <62622205-09fe-ff43-a5b6-51e159fc19ad@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <62622205-09fe-ff43-a5b6-51e159fc19ad@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0183.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9f::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU0PR04MB9588:EE_
X-MS-Office365-Filtering-Correlation-Id: 7752375e-a4f8-47be-4afb-08dbbdb04bc8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iH1sd+u3oUTf937hNRMPFbNCGVns6//8+edX7/t5mAM9mRiHXrNzj1nT11o9uD3JUIne2pbGD1EGLmUsFVsRUE1rQtuQlQdV3/IMJZITVfvMl2AHjCT4XjdXQXsn8f4xYWHJMob62TWV/xe30t+Qqm0KNndqDHsN0aJ1i7UVcS5cGuJ6oqj1Ong23g70Ky6xmuJWixmoIO/0/tf5cvVDFlm43qyF1hGOcSqRIBP1cB/783Bg/XJnhszRv4U2dATgRg92LnZNsEA2WHttSzqjs6A6VIc+qy88RjwWW+BqSoQxH/x2lbvUaP2LvX9MqgvTkfd6mq/i0hsfUUa95Coy0kiBZ5DJlnQflu4p8Fy0AWmy5WBJCGNJMsQxtN+6OvcZ0k11lOF3AlTERbt7MCIon8W34YRtQ4IiukkdNGX6zhZUN/NSNw32s2U/tB5Gl+DFcNMGkXi5wOI18kpR+5/Ywi39UodeXhWaAc4WuXddJx/TKNDVcOMlg7qLVQ6/X0g8DS7BJe+coPSwFHfVA9ecdausvnks5UBpDR87PYMBUiXpDnNoCMl2wY7AAR9/jy+LEenRCCHlEOYQtIbEkjMrT3SY+x8pkPJcdSeTc2zgaF5vVohQ/sZEZTXeDs4wezcnEF888eCv05YPuAUF18KaEA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(136003)(39860400002)(366004)(396003)(230922051799003)(451199024)(186009)(1800799009)(54906003)(316002)(41300700001)(31686004)(66556008)(66476007)(66946007)(110136005)(7416002)(6512007)(8936002)(8676002)(2906002)(4326008)(478600001)(26005)(5660300002)(6486002)(38100700002)(6506007)(53546011)(36756003)(2616005)(86362001)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TWpHV0FuSVdBV2VKZG5kRHp2OTY1NEtaWk5hTEsxS2wxKzBPb1JkVTRlWm9R?=
 =?utf-8?B?bFNSQVdxaWJ4d3pwOGYvZ2R5bW1BSlp2NGV2Wkpuek0yN2V2V2IyNjdzMjhx?=
 =?utf-8?B?cjFHK2lieXV5SVBOdDdzTm5oSHMxQ2o2WHVOR1Jkc0ZmNTQvQ1JCbm45cWM2?=
 =?utf-8?B?eUppSGYrVXZvSHJRQzZPTm03MkZiTVlJWm1tMU5hWGJrQWFrZHR5N1EzT0hQ?=
 =?utf-8?B?ZkJ5eHh3QTdBNTRKT3VJS0pyVjB4N2syR0FlZXZHb1l2N3pEUi9TeFlTVmFi?=
 =?utf-8?B?ZXZJNUk1UXR0c0diK09aQm13UFNiZkhkSjkveEVCWWtBaWc2VmtzNXdEdncv?=
 =?utf-8?B?U1h6Tmppenh4a0kxSmlwVS9jU3l6Mk5sODh4S3ZoWTlHSFgwY1lWTlg2MFEy?=
 =?utf-8?B?VjVGbENJeEdyOUhGYTNvWWZuNVFQa1RYK1N1VVlJaEZabU5SdDlVczNxc2E4?=
 =?utf-8?B?MTg1TmZmN1hTYnhOOWk1NkpPRkFzeithVTk5WnQ2bVEzZXpoaGpDNVlZOEp6?=
 =?utf-8?B?UEJuU3ZiU1RSNlhRZ2JhL2ZETVI4RTE1clFEcnlhd1dsUGJVVFVPWXB5Rjdj?=
 =?utf-8?B?cU9lekpsc2ZhRXl5SGlyZGVqaTdjRE92aXF5WVpUQW1GRGd3MmxxS2cxc0Jp?=
 =?utf-8?B?Y3EwQWM0RkV6aDdNTjgxUDNqc090dFZJRzcvTzhmQTNPZVRlT1lOc2NLMFls?=
 =?utf-8?B?NzJsNnl3Uzl5V3c3SWRUNEJXOEQ5enZEZU1VZ2dTTnNpaFQweXJ0dWJZenpW?=
 =?utf-8?B?ZUlTc29PYjhxOWhmamJQaHN0TExmZkE5STAxSjNqTkw5cjN3ckFwR3NqOXBN?=
 =?utf-8?B?cTR1ZUF6bEgyK3JzNnQzREZUQVliZ1lpaVJjS2wzVDByb2lWZ3ZQcXFkZE9H?=
 =?utf-8?B?dk9KeUdISlhnQndMc3JFbHk3L0ZSSHQ1eFZLWVArZ1FxNTJBaHhYTjNnQUMr?=
 =?utf-8?B?bHRaaXVURUYyRFR2ZVQ3U0pHL0dEbEsrUURnNyt1LzVrR0diL1JOek1pMmhz?=
 =?utf-8?B?Q09QanpOb3U2ZXE1QUJ2N0VONVZERkN2UTNXK0hZdGY2NkQzajM1S2NuVUxs?=
 =?utf-8?B?NDJKbUNBTlVZSFBPUHN2RDBiMWdjMTdnS25hSXZTTStOVWhQZWdhNzJab0lB?=
 =?utf-8?B?cGFlbTVTaXRVQk1wdHJQSEFiU09yRWNwSE1HWndla3VqeHBlQjQxQVhwZFJ5?=
 =?utf-8?B?TUhMcVhYRUk2N3NSMGpISEU3RzVMNDh3dzZpdnFPNnhOc1dtcTBzSEZqTnZX?=
 =?utf-8?B?UVdoN1g5VWZZR2VRMkJRcHdKai9rUnRWVjRXWG45L0hYcnMrRUJjR2ZQclpp?=
 =?utf-8?B?YXNCVE52R0JLOEJIWUEyRHc2UVNwVldhYjZzTFhBdkxMTGFkdzN3cGdqb3pm?=
 =?utf-8?B?Wm84Sk03Vy8wUzdBdjVVN3dBTGY0Sk1xRExaRXA3MjJTRFlMVTRjZWFCNlpj?=
 =?utf-8?B?ek9FS01xckhJa2FpTnEyMHFDTVJLSVRlYUhPUFprc01RVFhrSmR6RitXdzNz?=
 =?utf-8?B?V3NuZDV5R0lSaFd0TXFibXZrNFlSb2hGYVpYbFBFcE1kaWg4SDJ6bGtTYlYx?=
 =?utf-8?B?MkFOTFNzS3dmUUs0cnR4SXZkbXY3VDJmWnhPUWtnN3pwN0dZeWQ3N3ZuZ0hm?=
 =?utf-8?B?d1FKd2lTYVB1SmRVTUFLU2NSMFl3U3JPMitpL2YvNjdqekZLMkRpbnB3OUpn?=
 =?utf-8?B?d0MydEYwTzVKUlAzeFNJK2RYUUNvUU5CM2VQK2k1L3RNTVlob0JlWXpOYlZE?=
 =?utf-8?B?SGg4aEx1TnozdXFQdWxoMkFNOEhzUUp4UzNvQlIybUZVaVM5VE1DM1FYRk5G?=
 =?utf-8?B?d2UrQ2xnQ0d6VzFYNFJjMzRLWWh0SVJWVExvbWRNdDRSQTJmNjZzYWQ4U2pR?=
 =?utf-8?B?djB1ZldNdExwNHhKVXFtMUV0MStsLzBUZm5KOThpUnRoN3kzUEM0SGVkbjA0?=
 =?utf-8?B?R05sOGxrQkpMcXZBWmMyZHQxZS9OUGNkOVZwNEl2L1JSdzk5cm0wSTdEQjVo?=
 =?utf-8?B?ei9KZER4WUFmTm1xNE1kaFQya3ZvYW1wSnRicmNVOHkvTmpDVFg2dEZGYWEr?=
 =?utf-8?B?TlAyTTVVZnlLVnV5SklKZVRuY0trTHI0cjZvT3FXNDA3SkRtNXdjbDlIYnRo?=
 =?utf-8?Q?JQBFxTkLxCfPyEbbzGYd1d3YL?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7752375e-a4f8-47be-4afb-08dbbdb04bc8
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 10:15:08.7648
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JW35Qf3axkH0ghzIsYh185Pbb7NZIftuHVl9lZGR0Km0Yo2Q9VNv9t/rTi+2kdcQQ7WqZAvnz4IjaT3IFimdPw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9588

On 25.09.2023 12:01, Andrew Cooper wrote:
> On 25/09/2023 10:46 am, Roger Pau Monné wrote:
>> On Mon, Sep 25, 2023 at 08:36:03AM +0200, Jan Beulich wrote:
>>> On 22.09.2023 22:03, Andrew Cooper wrote:
>>>> On 08/08/2023 2:02 pm, Alejandro Vallejo wrote:
>>>>> --- a/xen/common/Kconfig
>>>>> +++ b/xen/common/Kconfig
>>>>> @@ -23,6 +23,16 @@ config GRANT_TABLE
>>>>>  
>>>>>  	  If unsure, say Y.
>>>>>  
>>>>> +config PDX_COMPRESSION
>>>>> +	bool "PDX (Page inDeX) compression support" if EXPERT
>>>> This still needs hiding on x86.  The minimal hack for 4.18 is "if EXPERT
>>>> && !X86".
>>> If you insist on complete hiding and I insist on allowing it to be used by
>>> people who want to play with exotic hardware, then this won't go anywhere.
>>> I think I've come far enough with accepting a compromise, and so I think
>>> it's your turn now to also take a step from your original position.
>> Just because I'm not familiar with this, is there any x86 hardware
>> that has such sparse memory map that would benefit from PDX?
> 
> There is one known system which never shipped.  Xen's implementation was
> from the anticipation of that system shipping.  Nothing else known.
> 
> None of the other major kernels have facilities such as this, which is
> very likely a contributory factor to the system not shipping.

Possibly, yet there's one important difference (mentioned before): VA space
that Xen can use (for directmap and frame_table[]) is far more constrained
than for baremetal systems (Linux, Windows). Hence the guys who got in touch
back at the time were not in need of Linux side changes at all (as far as I
was told back then).

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 10:20:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 10:20:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607776.946071 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkihw-0005Bk-1g; Mon, 25 Sep 2023 10:20:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607776.946071; Mon, 25 Sep 2023 10:20:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkihv-0005Bd-UQ; Mon, 25 Sep 2023 10:20:51 +0000
Received: by outflank-mailman (input) for mailman id 607776;
 Mon, 25 Sep 2023 10:20:50 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=rzaM=FJ=gmail.com=jinoh.kang.kr@srs-se1.protection.inumbo.net>)
 id 1qkihu-0005BX-Q9
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 10:20:50 +0000
Received: from mail-pg1-x530.google.com (mail-pg1-x530.google.com
 [2607:f8b0:4864:20::530])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 322bea63-5b8d-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 12:20:49 +0200 (CEST)
Received: by mail-pg1-x530.google.com with SMTP id
 41be03b00d2f7-577e62e2adfso3802238a12.2
 for <xen-devel@lists.xenproject.org>; Mon, 25 Sep 2023 03:20:49 -0700 (PDT)
Received: from [10.137.0.57] ([14.33.99.107]) by smtp.gmail.com with ESMTPSA id
 t15-20020a17090a024f00b00256b67208b1sm10280962pje.56.2023.09.25.03.20.45
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 25 Sep 2023 03:20:47 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 322bea63-5b8d-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695637248; x=1696242048; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:subject:from:content-language
         :references:cc:to:user-agent:mime-version:date:message-id:from:to:cc
         :subject:date:message-id:reply-to;
        bh=W/WMJeXdZnpKS9wvRULiLsNQE8Uy/4sYLBIN2QFxqLI=;
        b=GVMrzZeIBqMluhKCNroUYmj2lWW9VygEXYfHu+OS4LHpCiw86NYW8oN1MVekW6beuf
         glC+sozc3cE9G4xACyC3GwVwcsipNmDFqhhP+GraaDcCrU6SdX7kqxZuCvmgc1dTaCwB
         SHQz52upeXseTAlRp05BgTwi5dPkCbuTInHS/R1nCw1ZnLqnk+jJMDUm0Jl8iMdPhXpi
         SBp8OgjHq3VK+Rjo6h8RKNJyFFO81HtznhQiqLNfFtdw/q1MbgsqIOvlp0gahVHGmE6P
         22iMp8BrSxBm0EpmCcW11W152YCkvCYjAnzsI7fuvfe5C9hgxjly5hkzpxLrZmqwB1yD
         InzA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695637248; x=1696242048;
        h=content-transfer-encoding:in-reply-to:subject:from:content-language
         :references:cc:to:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=W/WMJeXdZnpKS9wvRULiLsNQE8Uy/4sYLBIN2QFxqLI=;
        b=vUx/HYTDZ4W7ULY0Lk9Akw4/ip3cXMbl2rj1l9f6nF+ZhCGVsvkpTxWZUAyAOedAKv
         3YYmQHGaPjyhFyhbnjfsxMD5al1bv8WEmaqFaYsHw8pEiBa9xlko+k01A2fpVohK8LFn
         kt4oMxQqFJW0qmGlVXsHqyJiDK8Dtr1PS8QhCITYpXUIIrmfihKo3CpKafPS3tJncsB3
         j1iBFQJoQ1A3isGmh1sI+RY1Xj8st6bBvVJeF1tH8JlIbbPlrGPLnwKbR5n1kJpdiItl
         QDL5oirG175MsV8pneAdZnAFRypOHYOJqz+Ix34vvqKvmaz+Ct6u7DJXEvpYt/y5VfYZ
         4PmA==
X-Gm-Message-State: AOJu0YxGBFrjzWloMu6Pu8DujsvkXG6EbvZMfvdb0ZqBYRPGvYpyjihy
	nu5ppyBdJkNDuo3kSLvUsbc=
X-Google-Smtp-Source: AGHT+IFONqDzSBZ3AOjo7ovjcBYj1+JeowPlrAkhfhZ4axCnWR9Q9vkaqJ+/N5CStUTgxDA1GP9USg==
X-Received: by 2002:a17:90a:e617:b0:263:829:2de with SMTP id j23-20020a17090ae61700b00263082902demr3979184pjy.2.1695637247809;
        Mon, 25 Sep 2023 03:20:47 -0700 (PDT)
Message-ID: <13e3a0e1-42fe-d954-f06e-88526d56e919@gmail.com>
Date: Mon, 25 Sep 2023 19:20:43 +0900
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
To: Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>
Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Wei Liu <wl@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>
References: <20230915203628.837732-1-andrew.cooper3@citrix.com>
 <20230915203628.837732-6-andrew.cooper3@citrix.com>
 <943d1d28-08de-3c1a-5a64-6caa98cdba78@suse.com>
 <43428539-4fe0-e2ac-48a0-b2fd9bcc0d1f@citrix.com>
 <f365e11a-9ca7-fb3f-ceae-28da7e1d6779@suse.com>
Content-Language: en-US
From: Jinoh Kang <jinoh.kang.kr@gmail.com>
Subject: Re: [PATCH 5/7] x86: Introduce x86_merge_dr6()
In-Reply-To: <f365e11a-9ca7-fb3f-ceae-28da7e1d6779@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 9/25/23 16:30, Jan Beulich wrote:
> On 22.09.2023 18:11, Andrew Cooper wrote:
>> On 18/09/2023 12:37 pm, Jan Beulich wrote:
>>> On 15.09.2023 22:36, Andrew Cooper wrote:
>>>> The current logic used to update %dr6 when injecting #DB is buggy.
>>>>
>>>> The SDM/APM documention on %dr6 updates is far from ideal, but does at least
>>>> make clear that it's non-trivial.  The actual behaviour is to overwrite
>>>> B{0..3} and accumulate all other bits.
>>> As mentioned before, I'm okay to ack this patch provided it is explicitly said
>>> where the information is coming from.
>>
>> The information *is* coming from the relevant paragraph of the relevant
>> chapters of the relevant manuals.
>>
>> I don't need to teach programmers how to suck eggs.  Nor am I going to
>> quote buggy manuals (corrections are pending for both) as a
>> justification for restating several paragraphs of information as a oneliner.
> 
> Earlier on you said this to my original request:
> 
> 'SDM Vol3 18.2.3 Debug Status Register (DR6) says
> 
>  "Certain debug exceptions may clear bits 0-3. The remaining contents of
>  the DR6 register are never cleared by the processor."'
> 
> "Certain" and "may" do not describe the behavior that your change implements.
> Hence imo there's still a need to clarify where the extra information is
> coming from. Pending corrections are of course appreciated; in case you have
> been told the new wording already, perhaps you could quote that?

As an outsider's perspective, I think this kind of thing is where selftests
really shine.  I got the impression that Xen will need to rely on numerous other
platform oddities, the documentation of which are often unavailable.

Of course, adding a whole new test infrastructure in code freeze is not viable.
Maybe I have missed something, but I only see three paths forward here:

1. Reference the most relevant paragraph in SDM/APM, but don't quote it.
   Keep the current explanation, and state that the manual is vague anyway.

2. Acknowledge that SDM/APM is incomplete, and completely abandon the manual
   as the *authoritative* source of information.  Perhaps embed a sample test
   program that demonstrates the behavior, if it isn't too long.

3. Actually assert in runtime that DR6 behaves as expected.

> 
> Jan

-- 
Sincerely,
Jinoh Kang



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 10:43:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 10:43:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607784.946081 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkj3l-0002Al-S0; Mon, 25 Sep 2023 10:43:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607784.946081; Mon, 25 Sep 2023 10:43:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkj3l-0002Ae-PA; Mon, 25 Sep 2023 10:43:25 +0000
Received: by outflank-mailman (input) for mailman id 607784;
 Mon, 25 Sep 2023 10:43:23 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=aZBI=FJ=citrix.com=prvs=625423c2c=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qkj3j-000292-O0
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 10:43:23 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 56d82bf9-5b90-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 12:43:21 +0200 (CEST)
Received: from mail-mw2nam12lp2042.outbound.protection.outlook.com (HELO
 NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.42])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 25 Sep 2023 06:43:07 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6504.namprd03.prod.outlook.com (2603:10b6:a03:394::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 10:43:04 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Mon, 25 Sep 2023
 10:43:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 56d82bf9-5b90-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695638601;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=7kFusGlt5rbbuALiRW/klNzL05tm5XkRAjKEaR3cqa8=;
  b=XlWgmZQuv9gEER2IbVmjX0I9kC59OmSeQDDoeuHzRASR2xTe63GzHN/W
   QW6OFFgdDOmj5Bh5z67M7D5XCq4sfxWql0kjRZd7GPVBB28N6Co9cLY4A
   ro9I5YxC7fATsrRVt9GHy8HGBOEz/ajoQg2+kGIn5R5ESzmohOGYwAM9y
   w=;
X-CSE-ConnectionGUID: dFetQDXsQdG4e4dgG1PSEg==
X-CSE-MsgGUID: 3oRDcoeVQxiUnUhBmhZoTA==
X-IronPort-RemoteIP: 104.47.66.42
X-IronPort-MID: 126441645
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:KmYroq2tIsAIc4a7UPbD5fRwkn2cJEfYwER7XKvMYLTBsI5bpzMDz
 TcbW2DTb6rfYmGkct1/b4+z/EpTuZeEn94yTgRppC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5g1kOagR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfDU9D6
 cU0GCs0Yj/fir66z53ictJBiZF2RCXrFNt3VnBI6xj8VKxjZK+ZBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxpvS6PlmSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv22LOTxH2nBer+EpXj8cRGi1qe+FUDCSAQaFuRpPmLjXKXDoc3x
 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8Ul7Cmdx6yS5ByWbkAUQzgEZNE4ucseQT0xy
 kTPj97vHSZosrCeVTSa7Lj8kN+pES0cLGtHYDBeSwIAuoPnuNtr0kiJSct/GqmoiNGzASv33
 z2BsCk5gfMUkNIP0KK4u1vAhlpAu6T0c+L83S2PNkrN0++zTNfNi1CAgbQD0ct9EQ==
IronPort-HdrOrdr: A9a23:cPYokarUDV58b66SIikHQU8aV5rxeYIsimQD101hICG9Ffbo8v
 xG/c5rtyMc7Qx6ZJhOo6HiBEDtewKmyXdV2/h2AV7BZnidhIOoRLsSlbcKqgeIc0afygc078
 ZdmsNFebrN5DZB/KLHCcqDf+rIAuPrzEllv4jjJgxWPHhXgmhbgTtRDgaeHgloSBJdBZw/fa
 Dsm/Z6mw==
X-Talos-CUID: 9a23:kzDB9G2RTjb/EcYTGlxAQ7xfFu4obkTx/GzpL2DkBDplR5LMcWS99/Yx
X-Talos-MUID: =?us-ascii?q?9a23=3AKw8PnQ7KwEzK4su5IuK2dP/Dxowz5J6CA0cAr6w?=
 =?us-ascii?q?WuvSCCCxaPjeviwieF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,174,1694750400"; 
   d="scan'208";a="126441645"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YrmI3aVcIgjoRUgXadVl/wHv3PuDSCKqNrn/q7mo/B1Zx3uCVButlePMNFMuuu6tnqEnahjWrQR/lt7ZVc1ZwD5VMR0+uq09jiF6+YbFnTiWmhWPsTNJJ2zrREQis78I7CLTcVc6CmRiSozGO2vD2aPi7RlwjF4D8GcrXGvJGh+r26oMwaaQjpBYZQ5UogXRfM61SxIL42DDhIJonNN0p77opAk6DdS9+g0hw57xftqEOlFAfWofrVHTOd8Iy+kH0ai/2LhyCu5jHORSzzEfG5ayMUdmDr08SfRbspfHXDcent+RK+bGZOE2P96IPTuqNLVvpzp9d3G15oSSrhAXEA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ORCbEI8BBtjtPNlF4mNzg/svA2TVVdrymuQPCD6BPsg=;
 b=ZAo1c4BKvjZY5byrr/L0bnmFMHFB49bDaVjFsgGjwT5fVL2QdZSK5HmkmllX/E4liKWN88h1Az0MziasfAqy7yogcioipbge7AW1R5Ua909tWtCfkAPk8qwyUm7Qym5cj6aKs7ChjRc0xEzteoaJ0VoJ/j9K200+Y3TeNTGogyDul9InHdk8Ggl5Fe7c/iLHm6UycVABDzCyw17i6aFcGq8jIT7+znQBdqIZoB4p2Og4sHD3ZREwJpkXga4pmVhlVa49ZXNlevi6yfwmjlGGJW+ofH/yOrxxdYW21osqgksGuUOwfBNrHfJQu3MZCKKeBe5ly3C2yWHwK+GL1mdRUQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ORCbEI8BBtjtPNlF4mNzg/svA2TVVdrymuQPCD6BPsg=;
 b=UcX7Uw/WJm8IZrkwH/CLNG0+2Hm3ivUZDiPVvWBKtuY7dpnFsnGgjNoITLYN0h1zI6z4gEcojpqBVP1To55yp8jqfHkhOYAl1mzQmuaKPtZ/A8/1QxbGWJGBKJedyv6NqZkdKDLW3Ov/qM/hOHZ5mmmHeZuW+/cKc18bZpDczB8=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Mon, 25 Sep 2023 12:42:58 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH] x86/i8259: do not assume interrupts always target CPU0
Message-ID: <ZRFkMsUcaLuNJwHR@MacBookPdeRoger>
References: <20230919110637.12078-1-roger.pau@citrix.com>
 <2b600963-6196-d6c4-8ab3-ab142c323f7b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <2b600963-6196-d6c4-8ab3-ab142c323f7b@suse.com>
X-ClientProxiedBy: LO4P265CA0187.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:311::16) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6504:EE_
X-MS-Office365-Filtering-Correlation-Id: 1bdde917-f192-40ef-a17b-08dbbdb43268
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8ah1IR8RDMOdXja1nzvXJM/td0LLWHadf11rETWrbDN9aiC5Vx29pWmV9tNjEboppCrrtBK0ma8TimDwx9aLLGu7itvSejNqsc1l93U+PPTdwaFywkQqiL3jFda7Qf7KL94AoQO5GOTgpAfaQV04SjFlcSuWf+TTqx0JXw8MFp3r+bAYxKOC5Xt/xzdhqtlXEjEMJlT0sAkT/oMeR83Wk973YhiT2z3VDBV9x5m1BsVPfnqQFvdxn8sX69TXqCMVx7a6HzRpUUuSgP6Phw3oER8bpwWxBelsyZb+4dyZ7mniSY5EnmM/Fpc0P2h1W+7zPEaNdhtYA/R1ropWzno/ytHjXbwQC8saGu1375a3u4RXm9cJWgz++satzKQ+yNX4NrjsRt3VdDiX9Qg+9NtN5gI3L45ooxCneIODIQephrtYXizhxoaVT5ZYRSj08dkaU/UPN6+lk008wa8lKcMm/FNJjXsb21bo6GEwE5dB7wCMheOBs1nB+NDTkAe/PRs6fKnqFHyi0jMIsC/N0cMskKkJFYyoHowltfF/mGTy2aA=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(366004)(376002)(346002)(136003)(39860400002)(396003)(230922051799003)(186009)(1800799009)(451199024)(2906002)(85182001)(966005)(478600001)(6486002)(6666004)(33716001)(26005)(38100700002)(83380400001)(86362001)(82960400001)(53546011)(6512007)(6506007)(9686003)(8936002)(41300700001)(8676002)(4326008)(316002)(5660300002)(66946007)(6916009)(66556008)(54906003)(66476007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RGNBZXUvR204MWtxTFg4WitKMWNsQSszS3RPVW5NQzlZLzBHRmt6dVJ3Smty?=
 =?utf-8?B?dFJXTHBnWkx2SFVDUks1L2NzVGlISXovQVNjYzFhTHB5c1dJS1pSM2JSQkd2?=
 =?utf-8?B?MWIxVU1ISjFoaEp3aHFwUURYWlRGR2IvU3A0Y2N2emhmZGczVXlHT0RQd0tG?=
 =?utf-8?B?SzVZMG83amR0WlBKNmhDcGg0VnpQVFpWY1BSWkFyU1VpSWdRNy84c3o3L3Nw?=
 =?utf-8?B?S2I0Q0x3T0lXZ2dLOFRFcWlib2NhT2ZTa1h2WVhvWjFRVThCVG9qWlllVjc2?=
 =?utf-8?B?UjFYdFRDUVFwL1F1L1RDNk9zWTlxZk5RQytvRDkxdVlxVm9JaW9Lc2Y3azMw?=
 =?utf-8?B?Q3J6L1h0dVBlTkZCVXo1RSt3M2JJOVVUN2lYQkZ6cm0rY0JYUEZNbUxpSG14?=
 =?utf-8?B?MkZ6NDExTFB5eFFrT0R1QUNLdEkxWHRkNmk1UnJjVHBRN2tVUGhHellEMEp6?=
 =?utf-8?B?VVdxZ0I3akVRQ0RUQUo1SWhTWjk3OG5pWHlsTDJvTjJSdFI1ZE1QZ29OemU1?=
 =?utf-8?B?d25xSG9xODQ2VmszMjJGSkYyVVd5SG9JbEx4YThyY1NxbTg4K2VDUjBCOVA0?=
 =?utf-8?B?azhjdW1SVktaSW15d2pUa0pLTjJkRE45MldxdTF1dkhJbWE2WGxjRlBIYzdW?=
 =?utf-8?B?cXA4WGFVUFhFbll2SHUwRitJSCtOVWdZdDRwS0s3NTIrZ0k0SlR5MmxKQUkr?=
 =?utf-8?B?RkFocDBrRmdqN2NuRk14Yi9KL2tSZTNzVDVRUXpzWnY0bFBPM1lPU0RybU5M?=
 =?utf-8?B?bElBVTVqblV0R3BkUzRiYzEybGhDRDBNTnRsNjNZaFBCakZMZzNZMW1nSWhl?=
 =?utf-8?B?S0FVd0NKMEpyYnFhUmh6VlBYZWJZVnJ0RlFucm9xRTdLMzVJT2hEMmtjenZN?=
 =?utf-8?B?bUNzbDEwSDRRT3hXMEJnTGNjRUdUZEsxRmZlUnZKVE9zbmR2V3czdUo1RW90?=
 =?utf-8?B?dWtKcmN0OUdmQWhmaDZOUjNzektHN25jNzJnZHdoQ0Y4WlY4OWc5U1NWOWZr?=
 =?utf-8?B?R1gxWDJ6MFNIUGcxR1RIL2ZORkJQRlUrZVpFR1ZUNE1Hd2s1UW9pelNNYnBt?=
 =?utf-8?B?OXhMT3kwQTBuck9UOWVnQUxSN1F6Y3dlRFczWWJQYk1jOW9vMWdDdXMwNmFo?=
 =?utf-8?B?cGt5K2llLzdQU3ZiN1FKSUFrbmhTRXdKbHlyNVl3Zk9uaXRvUGQzYlI4NmVo?=
 =?utf-8?B?TUkvVVM1bzl5NWpvM2RmaUxkWWtjbkJYVStFUmJGejh5WDBjczh6M09UMFFl?=
 =?utf-8?B?MFUwSncrNFNYbS9KTHQwZHFWbFEzTGhWQ05ZcE5iY2JzN2c4TWJOM2F1Q0do?=
 =?utf-8?B?MVc3Smt0UGpTYW9lN3hySUVCdFIwaUtmcVBRZXVaeGlzWk1oK2JxREtxNjgv?=
 =?utf-8?B?bWxLMXlQbmwrVS9MVFJwa253ZzIrQ0RVK0h0S3VCWlRidXNwRmRERDBSeUhu?=
 =?utf-8?B?R0hmM3kvK0hZbDZlUXR6MEljR2Z4NHpQUXBFc2h4RFpIMXF3VHhXcFg0S2Ir?=
 =?utf-8?B?TkhjVXZLQUlPS2lLZS9mNDN5b3hvMm5QZy8rODVkWWNTZGdnbWUwSEhkNzJG?=
 =?utf-8?B?RU92WDRoMXpoRG5jS2w3bWZEZTNCT1k2cGVDZExYZEk2ckVuaGdzMVFsVlZ3?=
 =?utf-8?B?YkRtVjlEQS9SQ2lVV0x6Wm5SdjUyWFRqK0pseWhJT2R5bVF5cFErVzlYUVp5?=
 =?utf-8?B?MWl0ZCtpRHBGdWZpRWJXOXZITE1FeFZtNVd6Z3M1b0NUblVDRXRyYnlKNkhi?=
 =?utf-8?B?di9oZ2N0a25pMTNRcUt1NEExb2ZqTEZONFFhSVZ4KzFVbjdZVU1DT2lGN1Bo?=
 =?utf-8?B?WjJIOXJlSUM1dnErSXVMUXNQTGtzdjVmQUJITUxGQW1ZTnBrY2Vud0l3eUl4?=
 =?utf-8?B?SzZOeHpYdmJ2Ny9BTWNXQlhoQncrdUR4NmtEUFpiNEgzaXhNMlMwRnZZeXdT?=
 =?utf-8?B?REIxb1hxZFdjK3Z3RmoyQXhYcTloZERFSDVKSFNpS0M0Z1VueHczbmZZN3o2?=
 =?utf-8?B?M1FZWlFOT0FSbTN3RnhCelZnazBoNW5aOWE1WmZqWklxY0FucWVvSktEMEpq?=
 =?utf-8?B?M1JySUVlSTlTSG00eHhKS2wycjlzL0ZoWGxFd29OZUdRakhPdHlFNnpwYm92?=
 =?utf-8?B?NjJtNmpGbm9LYldTa3lSZGh4dEdmYkU1OHdHSW1GS0RHZ2xJTDgzRVNOb0Ru?=
 =?utf-8?B?TlE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	seVzbpVa4Vfrz07FzCg7uTYzzM8reAWm+KywZKwRFMAEUVmiijl4HrwFWloVZckznhSM2ti3KTAa5Yvd3rqecpFaT8tp4S+v/BBtZWilDOG8YhMRl1bgVnSpMD4mCkZDET5Y+lxB64Hb6wu8rI1bxenbNysHZdDRkDM8ipLZpPy8I0lffIlLyOSOQ/RNOatm4Q1Pfqhuk3qf9Fodad7GCe2Oeo912djwkbY1Y1v+sv/1fGtDMFOwNrNCo8ito9A8fKPGwLyfGptO8HjRjdn8XtdK8Apv+bJI6+0LDJ8JL9+i/rfgAoVhgv5RR7YM7KgGZ2s0DC29vhLrNyrrPe/e6hqsNvc8zEeTZos4WhyvnqrPiEhSzqCfaou1u/Lsi+5SPIVoBt5JKuVFIXMG++LvCMHDAW1DsbGZBJihCLpKK3rttwHkEo55g8LPhPjCcvp+gydD9ND62ksgaujFT41Vd1Azi3rzXGdI87/91mBXYyzdp0KVP6CrJiF+VK4JZMOe1VRHdDnO/DtF07U7e24ORCRr+ZT4/bWVmHz1BYS+swpC3h5LGTtPiqlbOij7IqPzTIQvPuntvh513OWAZlQ97g/wUUotQ2jPi/x9mKQBmCV0PaO4Af1t9l5x7+1I9clsH4wU3L809ic/gJZIEW4JiWH10jc3lL3ZArDGrYR55CEzP3d149LPGO+JUi3egpT6dwI3I4gAkERPD1DeWy5IxTGXNkkA0OWADGgbiQ1YE2i65zNJbcqQBoGeTgkqWxGL9QOmXKE3iY2rJeyjgBLTXD9H43/TPY9paDsV21TZ7+NyR+32Jh3C0tsehraaIcRdhzwQFWGUAEua3JY73il0Rw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1bdde917-f192-40ef-a17b-08dbbdb43268
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 10:43:04.4164
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: nqd/DFYtD8MxQLaynGUDVIwpmkybj3Jef9NaoDX6fsjZ5IC3PAGzHElL1P/skaS+MM24yrxdOFDp9EYYkv9ARg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6504

On Mon, Sep 25, 2023 at 11:55:25AM +0200, Jan Beulich wrote:
> On 19.09.2023 13:06, Roger Pau Monne wrote:
> > Sporadically we have seen the following during AP bringup on AMD platforms
> > only:
> > 
> > microcode: CPU59 updated from revision 0x830107a to 0x830107a, date = 2023-05-17
> > microcode: CPU60 updated from revision 0x830104d to 0x830107a, date = 2023-05-17
> > CPU60: No irq handler for vector 27 (IRQ -2147483648)
> > microcode: CPU61 updated from revision 0x830107a to 0x830107a, date = 2023-05-17
> > 
> > This is similar to the issue raised on Linux commit 36e9e1eab777e, where they
> > also observed i8259 (active) vectors getting delivered to CPUs different than
> > 0.
> > 
> > Adjust the target CPU mask of i8259 interrupt descriptors to contain all
> > possible CPUs, so that APs will reserve the vector at startup if any legacy IRQ
> > is still delivered through the i8259.  Note that if the IO-APIC takes over
> > those interrupt descriptors the CPU mask will be reset.
> > 
> > Spurious i8259 interrupt vectors however (IRQ7 and IRQ15) can be injected even
> > when all i8259 pins are masked, and hence need to be handled on all CPUs.
> > Reserve such vectors in order to prevent dynamic interrupt sources from using
> > them.
> > 
> > Finally, handle spurious i8259 interrupts on all CPUs and adjust the printed
> > message to display the CPU where the spurious interrupt has been received, so
> > it looks like:
> > 
> > microcode: CPU1 updated from revision 0x830107a to 0x830107a, date = 2023-05-17
> > cpu1: spurious 8259A interrupt: IRQ7
> > microcode: CPU2 updated from revision 0x830104d to 0x830107a, date = 2023-05-17
> > 
> > Fixes: 3fba06ba9f8b ('x86/IRQ: re-use legacy vector ranges on APs')
> > Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
> > ---
> > One theory I have is that the APs at some point (before jumping into Xen code)
> > have the local APIC hardware-disabled, and hence are considered valid targets
> > by the i8259, but by the time the vector is fetched from the i8259 the
> > interrupt has either been masked, or already consumed by a different CPU.
> 
> Aiui with LAPIC disabled, IRQs should only be possible to go to CPU0,
> for there simply not being any SMP without LAPICs.
> 
> Did you check that there are unmasked ExtINT LVT0 on APs?

Yes, I did.  None of the APs LVT0 have ExtINT set, I was really hoping
they would have ExtINT set, as this would then make sense.

Maybe there's a point before handling control to Xen (in firmware)
where APs have ExtINT LVT0 set, I certainly have no idea about that.

Seeing Linux commit 36e9e1eab777e I get the impression that on AMD
systems PIC interrupts are delivered to any CPU that either has LVT0
ExtINT or the lapic hardware-disabled.  I have however found no
information about this at all in the PM or PPRs.

> And unmasked
> PIC IRQs? (Although, for the latter, it could of course be that by the
> time we gain control, they're all masked again, but an IRQ was in the
> meantime classified as spurious.)

Even if there are unmasked PIC IRQs (which is not the case AFAICT), I
would expect them to be delivered to CPU#0 because that's the only one
that has ExtINT set in LVT0.

> > @@ -349,7 +350,20 @@ void __init init_IRQ(void)
> >              continue;
> >          desc->handler = &i8259A_irq_type;
> >          per_cpu(vector_irq, cpu)[LEGACY_VECTOR(irq)] = irq;
> > -        cpumask_copy(desc->arch.cpu_mask, cpumask_of(cpu));
> > +
> > +        /*
> > +         * The interrupt affinity logic never targets interrupts to offline
> > +         * CPUs, hence it's safe to use cpumask_all here.
> > +         *
> > +         * Legacy PIC interrupts are only targeted to CPU0, but depending on
> > +         * the platform they can be distributed to any online CPU in hardware.
> 
> I'm unaware of such a distribution mechanism. Do you have a reference? (If
> I recall correctly, there needs to be a unique entity in the system that
> runs the INTA protocol with the [master] PIC.)

This comment is mostly picked from Linux.  See:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/x86/kernel/apic/vector.c#n842

As said, I haven't been able to find any reference to this in manuals,
but given commit 36e9e1eab777e it does seem Linux has also experienced
PIC interrupts being delivered to CPUs different than the BSP at least
on AMD.

> > +         * The kernel has no influence on that. So all active legacy vectors
> > +         * must be installed on all CPUs.
> > +         *
> > +         * IO-APIC will change the destination mask if/when taking ownership of
> > +         * the interrupt.
> > +         */
> > +        cpumask_copy(desc->arch.cpu_mask, &cpumask_all);
> >          desc->arch.vector = LEGACY_VECTOR(irq);
> >      }
> >      
> > --- a/xen/arch/x86/irq.c
> > +++ b/xen/arch/x86/irq.c
> > @@ -466,6 +466,14 @@ int __init init_irq_data(void)
> >            vector++ )
> >          __set_bit(vector, used_vectors);
> >  
> > +    /*
> > +     * Mark i8259 spurious vectors as used to avoid (re)using them.  Otherwise
> > +     * it won't be possible to distinguish between device triggered interrupts
> > +     * or spurious i8259 ones.
> > +     */
> 
> You certainly mean {L,IO}APIC device triggered interrupts here? If so, why
> would they not be distinguishable? ExtINT IRQs don't set ISR bits, iirc.

Right, but we don't really check any of this when servicing the
interrupt in do_IRQ if the vector has a valid irq associated.

So if we assign the vector used by PIC pin 7 (IRQ7) to an {L,IO}-APIC
triggered interrupt, how would Xen distinguish a spurious PIC
interrupt from a L,IO}-APIC originated one?

Check the LAPIC ISR for each vector in do_IRQ() seems like an
unnecessary burden, and that would be a non-trivial overhead when
running virtualized.

So yes, it's possible to distinguish them, but I'm not sure we want to
engage in that logic in do_IRQ().

> > +    __set_bit(LEGACY_VECTOR(7), used_vectors);
> > +    __set_bit(LEGACY_VECTOR(15), used_vectors);
> > +
> >      return 0;
> >  }
> 
> Assuming no IRQs are handled through the PIC (which ought to be the case on
> virtually all systems), we'd have masked all of them before any APs are
> brought up. With them masked, aiui even spurious interrupts cannot occur.

It can occur if there was a pending interrupt in the PIC before
the masking happens, however such spurious interrupt would be handled
by the BSP then, as that's the only online CPU at that point (at least
from Xen PoV).

> Still you're permanently removing close to 1% of an already known scarce
> resource.

I don't have more arguments that what I've already exposed here.
I could try to bring this up with AMD, but I'm unsure this will shed
any light on the issue.

Another option is to not reserve the vectors, and assume that if the
vectors are used for {IO,L]-APIC interrupts some spurious PIC
interrupts might be incorrectly handled as device triggered
interrupts.

> Can we, if at all, do this just temporarily, such that later on
> the vectors can become usable again? (See also setup_local_APIC() for
> ExtINT setup - only the BSP would ever have LVT0 unmasked once we've
> finished with our setup.)

Yeah, I know, believe me I've spent a non-trivial amount of time trying
to figure out what's going on.

I even modified iommu_dte_add_device_entry() to block ExtINT on all
IOMMU devices (on the platform I was testing only the FCH had
ACPI_IVHD_EINT_PASS set in IVRS device flags), and I would still get
those spurious interrupts at AP bring up.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 10:48:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 10:48:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607791.946090 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkj8x-0002tL-Ip; Mon, 25 Sep 2023 10:48:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607791.946090; Mon, 25 Sep 2023 10:48:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkj8x-0002tE-Fk; Mon, 25 Sep 2023 10:48:47 +0000
Received: by outflank-mailman (input) for mailman id 607791;
 Mon, 25 Sep 2023 10:48:46 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkj8w-0002t4-Mh; Mon, 25 Sep 2023 10:48:46 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkj8w-00030d-FT; Mon, 25 Sep 2023 10:48:46 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkj8w-000388-1h; Mon, 25 Sep 2023 10:48:46 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qkj8w-0001kA-1A; Mon, 25 Sep 2023 10:48:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=GN2ROLlADVfzI635bDkehUR7u6sH8IMoFxqeuTl8F3o=; b=0lF/DzjnQRsdovMoT3DAPsxHma
	zdm7AA7D6DlYJFnZ4+ndDqwPxNA7oW5Puuv3UczOQp7qqPOgUuHicw9/W/+qvS+pthjPYR6cMx/7K
	b+w4/oS7p/0hCLcKB251sWWCJxubyFLuc/VKbJNE/q3mkEBrk6g0ZlCj4v/fZU/NzR2c=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183155-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183155: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=c70d91442889078eb94e0abf777f74e403b72d37
X-Osstest-Versions-That:
    ovmf=43dcf453fc15ca152945ca41dcce7f2f43a14313
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 25 Sep 2023 10:48:46 +0000

flight 183155 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183155/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 c70d91442889078eb94e0abf777f74e403b72d37
baseline version:
 ovmf                 43dcf453fc15ca152945ca41dcce7f2f43a14313

Last test of basis   183151  2023-09-25 03:12:35 Z    0 days
Testing same since   183155  2023-09-25 08:40:51 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Cai, Xianglei <xianglei.cai@intel.com>
  Dongyan Qian <qiandongyan@loongson.cn>
  Xianglei Cai <xianglei.cai@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   43dcf453fc..c70d914428  c70d91442889078eb94e0abf777f74e403b72d37 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 10:53:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 10:53:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607800.946100 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkjDA-00050Y-2P; Mon, 25 Sep 2023 10:53:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607800.946100; Mon, 25 Sep 2023 10:53:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkjD9-00050R-WB; Mon, 25 Sep 2023 10:53:07 +0000
Received: by outflank-mailman (input) for mailman id 607800;
 Mon, 25 Sep 2023 10:53:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=vtXC=FJ=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qkjD8-00050L-A1
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 10:53:06 +0000
Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com
 [2a00:1450:4864:20::432])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b39b347c-5b91-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 12:53:03 +0200 (CEST)
Received: by mail-wr1-x432.google.com with SMTP id
 ffacd0b85a97d-32320381a07so1987539f8f.0
 for <xen-devel@lists.xenproject.org>; Mon, 25 Sep 2023 03:53:04 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 j10-20020adfd20a000000b003142ea7a661sm5107099wrh.21.2023.09.25.03.53.03
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Mon, 25 Sep 2023 03:53:03 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b39b347c-5b91-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695639184; x=1696243984; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=64VNgcPp4OXSMV+J8NYa+uaatAv1OaEUdgVM3Udk89o=;
        b=IW1fAcm6V0qc0FXUN9h2uqkMUCRJQ5wCS+PdYbkeogXFIad9k7XsXSKOFaoqHwEvgG
         6cFG+0i4NDjs2s0IyfXcNHGXb81zRpSba1e+I2bj2aWOQUjmBlf3SK/UBj4J2hEI8rKW
         nvb9dZwEFnfXjeU6kDFFZ/Dyzoa/utuoiTMuA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695639184; x=1696243984;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=64VNgcPp4OXSMV+J8NYa+uaatAv1OaEUdgVM3Udk89o=;
        b=ZW8jhi/CYoACCstkfqN4BG0IP44a0+Yk2tMhJhKaLRWFO3yOd9M/ERQ3hCLBjOXHp9
         3kMnEb+yYj8OKwPi48VNLVwDxlnGMHtq4r6zfLrH3xC9fozRzoHn8MJ8Gw8oAlIJYDgG
         EraraHFFu/LruDzlXDEfVqcVkr0D8TEPVz17dc8i66vk4ylLGHOncDc1+dhTJAaQe/7B
         +bI2oXn0RJ7SJQVUGUJHyYznHDlDWRHFg7ZAitqrKPDdPKOXWg/g5q8M1G6bXKeHS7YK
         GzawX6RKLmmnFgD8pHmDhRNmbb3Qxv2dnrW+UW+L9KhNsShxId0Yv2/3R1UgSL+7Iz7t
         7G4A==
X-Gm-Message-State: AOJu0Yy7r0h8J7a87xmAHleII6LXaz/Xa1QxNBr/NFcBz1BIPLREvUiR
	n2hurKC8hISS7jMLYRN4r2VQXQ==
X-Google-Smtp-Source: AGHT+IEmTfOS55UWJ90ubsq4waMg3j07qyYpvMAPaVZZBla59e5TaC09p1NmLMCI/OzJ5m36kpHFgg==
X-Received: by 2002:adf:f548:0:b0:313:dee2:e052 with SMTP id j8-20020adff548000000b00313dee2e052mr5451253wrp.26.1695639183767;
        Mon, 25 Sep 2023 03:53:03 -0700 (PDT)
Message-ID: <28310181-d7f5-a8b6-f1fd-ea9ca0db56cb@citrix.com>
Date: Mon, 25 Sep 2023 11:53:02 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: andrew.cooper3@citrix.com
Subject: Re: [XEN PATCH v4] drivers/video: make declarations of defined
 functions available
Content-Language: en-GB
To: Nicola Vetrini <nicola.vetrini@bugseng.com>,
 xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com,
 roger.pau@citrix.com, Wei Liu <wl@xen.org>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Henry Wang <Henry.Wang@arm.com>
References: <5830a4d838883a20a6b320dd9af44ef4bb18ddaa.1695632599.git.nicola.vetrini@bugseng.com>
In-Reply-To: <5830a4d838883a20a6b320dd9af44ef4bb18ddaa.1695632599.git.nicola.vetrini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 25/09/2023 10:11 am, Nicola Vetrini wrote:
> diff --git a/xen/include/xen/vga.h b/xen/include/xen/vga.h
> index f72b63d446b1..9b2c47971d0c 100644
> --- a/xen/include/xen/vga.h
> +++ b/xen/include/xen/vga.h
> @@ -13,6 +13,12 @@
>  
>  #ifdef CONFIG_VGA
>  extern struct xen_vga_console_info vga_console_info;
> +int fill_console_start_info(struct dom0_vga_console_info *);

ci

> +void vesa_init(void);
> +void vesa_early_init(void);
> +void vesa_endboot(bool keep);
> +#else
> +static inline void vesa_init(void) {};

Extraneous ;

Both can be fixed on commit, but we're in code freeze now, so every
patch needs approving by the release manager (Henry, CC'd)

~Andrew


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 11:04:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 11:04:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607808.946117 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkjNa-0007LE-4p; Mon, 25 Sep 2023 11:03:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607808.946117; Mon, 25 Sep 2023 11:03:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkjNa-0007L7-0y; Mon, 25 Sep 2023 11:03:54 +0000
Received: by outflank-mailman (input) for mailman id 607808;
 Mon, 25 Sep 2023 11:03:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkjNZ-0007Jn-1D
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 11:03:53 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2060d.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::60d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 357893a2-5b93-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 13:03:51 +0200 (CEST)
Received: from AS4P250CA0022.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:5e3::12)
 by AS8PR08MB8393.eurprd08.prod.outlook.com (2603:10a6:20b:569::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 11:03:46 +0000
Received: from AM7EUR03FT036.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:5e3:cafe::61) by AS4P250CA0022.outlook.office365.com
 (2603:10a6:20b:5e3::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 11:03:46 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT036.mail.protection.outlook.com (100.127.140.93) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.17 via Frontend Transport; Mon, 25 Sep 2023 11:03:45 +0000
Received: ("Tessian outbound 30c9f5e988c5:v175");
 Mon, 25 Sep 2023 11:03:45 +0000
Received: from da5545214619.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 0196B650-7416-413E-95C4-263288D3E622.1; 
 Mon, 25 Sep 2023 11:03:35 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id da5545214619.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 11:03:35 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB9PR08MB6539.eurprd08.prod.outlook.com (2603:10a6:10:23f::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 11:03:32 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 11:03:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 357893a2-5b93-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=axdkgzcnmGvRCT1eSkQ6qtDz8CiwhIsjf5d6QSt72lE=;
 b=i6gpBH6QGkGYGz2AOfqtZ6zmzqkgaZKBR64j/VaFfNxpIT4inmRUXUdKYQqz6PpOdH8k1bu1mIXRCwGYpiGpY8NjwbSTJIlShGml+4MrXBCA0ZUSj+4fHDf6kEJSVtxDhs5zQV5NefBDWF9vNZaDPTfRV/O4nqWuDL7wwQ8zmzE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 5b2ab60c376afaec
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QQsyLXDmRxSAu6qj+RtS9HkCtHf7Fm3Sy8M6VE3UZjFxrcMgWmm1eBbVw/mtaAp1SCyIDammJ2cVrkv+zVnltAULaK9WsqsDwaN3TCd40sMC/dLuwMBz0VKE70Un+GhSqAjDUOHe94s2NDZNe5DYisGzB47r3crY0tj8mnLxs3ukcxpAEteGaNMrlh42TIuvkOVZDL4lpXlIQ00vmQL1RrOXAJDQ8e5g17YFtXXb4nftq07efvxFF4LdAiX9Mu/FCmbpmVCibBFLoAfpPkHrdtPpGjb/+1GNncjNCsRc4xdsOw6WNNrgXeySheyuBLlRa8On6hUdg9E1k4x8zEu8Ag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=axdkgzcnmGvRCT1eSkQ6qtDz8CiwhIsjf5d6QSt72lE=;
 b=EbkKe1yTPPJ352jcHc2Aq4YH2QPTM/A6YVAhOdPJ2HqKen6HsBv3cL49sR5s1MXoxDKQcUXksg1YY8VS0ObjPYq7FBsXsBQMts+7vcFhEH0gWK8yQWDLo303+wEyIQrO92EXmXOxiN46tDkSVcxfkSPDfToVMDL5z0up/bkoYjMhdpg+uxvlwepX7Y5RiCsXheXXM3pT/TnwBWTK7r3nQn1+kqLIZJA6sShFo5NOO0ulre0hRDOGyqTPdlTuq24hN/DL1Oy9Fi3zCJqHPItC8OW7+6WuVlkfHtFkNLiR9yiLOYl3FiFTj/aHO6sdFE0K5Y+PUPaoWF7wCRHpkXWRmg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=axdkgzcnmGvRCT1eSkQ6qtDz8CiwhIsjf5d6QSt72lE=;
 b=i6gpBH6QGkGYGz2AOfqtZ6zmzqkgaZKBR64j/VaFfNxpIT4inmRUXUdKYQqz6PpOdH8k1bu1mIXRCwGYpiGpY8NjwbSTJIlShGml+4MrXBCA0ZUSj+4fHDf6kEJSVtxDhs5zQV5NefBDWF9vNZaDPTfRV/O4nqWuDL7wwQ8zmzE=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>, "sstabellini@kernel.org"
	<sstabellini@kernel.org>
CC: Jan Beulich <jbeulich@suse.com>, "committers@xenproject.org"
	<committers@xenproject.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, "jgross@suse.com"
	<jgross@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
	"community.manager@xenproject.org" <community.manager@xenproject.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about code freeze
Thread-Topic: Xen 4.18 release: Reminder about code freeze
Thread-Index: AQHZ705Dwyrpd4I60kahQfZlaJ2JtLArFXGAgAACIQCAADDfgIAAGL2A
Date: Mon, 25 Sep 2023 11:03:31 +0000
Message-ID: <695DDA3B-9439-48A1-B0F2-BB459EBF90A8@arm.com>
References:
 <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <6399a816-ac1a-b741-ed52-b5d03b498ee6@suse.com>
 <2AB20BED-9ED9-4713-A39A-59891E09E02C@arm.com>
 <1a056bd6-a918-4c76-82b0-0eded46b23a8@xen.org>
In-Reply-To: <1a056bd6-a918-4c76-82b0-0eded46b23a8@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DB9PR08MB6539:EE_|AM7EUR03FT036:EE_|AS8PR08MB8393:EE_
X-MS-Office365-Filtering-Correlation-Id: 3c9d9a6d-a3ef-42f9-0d19-08dbbdb7165f
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 XnYeGxjXIJ67/CNrw63JCKTm5OEO+j+Shf0W17HudfZ2aVAt+iN1tMNZYSW4JvPPnRZYyinq3TbCxa0myWRwJeALVhstR2aTeUlVg9C26xKvSbkFezQtUVBGoOBx4Kx3ZtUQdlGWVXkvJWlUfkDHLIDhISUZx58inuCbd8UuHBU4UsKoip4ISL3vZDC9qSfkDeSp3tF/waEYggMlXCJeToJFP7wOR7nWJfdMysyCuolpLturQSnwBl3QUGTMNG7qxeHlscen+RBHHqpvzNHzvpZFnwJOxvoKEoPS0MntM2QdWDe3tyEgK2S2r3q58slq2RQdPBocz8EYtOG7cD1Gp7CC5N2nL6/VGWv25oS0bM6Gm1wQk7Ds5GeW2QHKqngC+LAe+m8IIALqqwO3ejnq+AkM5TPv4cYUgYgGXqVVlMub7EePVX1oGoAf3ZY3A+KWgZXpTtpb1FePcyZsrNcLJW0vW+nVBNO6g+QAJ9PbyVlkYX0PoNQWplkZFxwxXDZsxvyqq34wEAV7xuWpbCWAzZB8dBatTamm5ZEc3jgawG81bMFYW0H/PWV+T4zneEYIVRwkVY+RxfsNFm8CMtRPkktM4hG4iDWtCiayYTghMvUXayNZjKaVcNRUA/QqbcDNdfdX1OZDFAJQTIgEjewn+A==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(376002)(39850400004)(136003)(396003)(230922051799003)(451199024)(1800799009)(186009)(316002)(7416002)(41300700001)(26005)(2906002)(5660300002)(8676002)(478600001)(110136005)(66556008)(91956017)(66446008)(54906003)(64756008)(66476007)(66946007)(76116006)(4326008)(8936002)(6486002)(6506007)(71200400001)(66899024)(53546011)(6512007)(36756003)(2616005)(83380400001)(122000001)(38070700005)(38100700002)(86362001)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <FC6A97ECC8C4A345ADA778EA45A68547@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6539
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	44c8e557-539e-46b9-52c2-08dbbdb70e4d
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	WEO0jubuFgxx+t44ISQQAx4zYMQaC3mYxLD8iqV+xnFLS/UE00dzgVJUeq3E0I5vkC0mCII/VzCF+JYw7iqFnlUZu7MuVBRelm9qHYdqC1quxA+0LAmbiIlTb3xx7IMJbyI/fzrCIWPH8UtmAWS+mqO7XqDxTkmf8GjItKUpOVs2SMJIdDYeoAwxph2GIkG+IZeKcOUf47oXSUWCSfAf/0ZmrdWU2K9YBx4+xEPphZCw2hatvGzbz+FTbtPOTGO4EsHq3oN+6keh9v/BLuzJSJcWLc5hiJKtNTiMI6YqeqGDaot92yzy8AfU+qp73j50uvnI0nQgSKq9JrGfbPJbvAUhuELLMeK+nf+cPQp1vYZKiUy9veSYK/2CPm+lsBt2TqYzbPjX70+ccbnvtIk1meWN5qULJ7scOV0T/o22Qxo9tfzgRjn8KmdwmIP5fZk6n7LHiSdOVl8Ku6bF8Dkn9Qw1t43qsP22gOcoM5mFD+zVixkaeaw/PYseFoEkjID1hEXVJsmV3JyOJhEzY3RIH/s6nwlRKacsXV/PYYxgb2C93GPRy06pjKWa1eVwkJ0YwY8En2eMKJPiwBF1c2yQsWQegPN8SqVjlC7QmUWp2uWT5QLRC1zngDsuMh66CL2L6I3z8Sw4nbpHt79RUkvakRTc9wHPTXH3wtnQp7iYzhkQhO1a5pg7BALx1yxlCkCz5JCGQ47w+3j3hTjcxWi1FNEtdVm41EIwnmQI240XR+SMGJ+u65aN8YIs0Sr1E+Rm
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(376002)(396003)(346002)(230922051799003)(82310400011)(1800799009)(186009)(451199024)(36840700001)(40470700004)(46966006)(36756003)(33656002)(86362001)(40480700001)(53546011)(5660300002)(6512007)(2616005)(2906002)(478600001)(41300700001)(316002)(70206006)(70586007)(54906003)(110136005)(81166007)(6506007)(6486002)(83380400001)(40460700003)(66899024)(47076005)(36860700001)(356005)(4326008)(8676002)(8936002)(82740400003)(336012)(26005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 11:03:45.4425
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 3c9d9a6d-a3ef-42f9-0d19-08dbbdb7165f
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8393

SGkgSnVsaWVuLA0KDQo+IE9uIFNlcCAyNSwgMjAyMywgYXQgMTc6MzQsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gSGkgSGVucnksDQo+IA0KPiBPbiAyNS8wOS8y
MDIzIDA3OjQwLCBIZW5yeSBXYW5nIHdyb3RlOg0KPj4gDQo+Pj4gVGhpcywgZm9yIGV4YW1wbGUs
IHdvdWxkIHRoZW4gbGlrZWx5IG1lYW4NCj4+PiB0aGF0IGFsbCBNaXNyYSB3b3JrIG5vdyBuZWVk
cyBxdWV1aW5nIGZvciBhZnRlciB0aGUgdHJlZSByZS1vcGVucyAuLi4NCj4+IOKApkkgYWxzbyB0
aG91Z2h0IGFib3V0IHRoaXMsIHRvIGJlIGhvbmVzdCBJIGFtIHRlbXB0ZWQgdG8gbG9vc2UgdGhl
IGNvbnRyb2wNCj4+IG9yIGF0IGxlYXN0IG9mZmVyIHNvbWUgZmxleGliaWxpdHkgb24gdGhpcyBz
cGVjaWZpYyBwYXJ0LCBhcyBub3JtYWxseSBNSVNSQQ0KPj4gcmVsYXRlZCBjaGFuZ2VzIGFyZSBo
YXJtbGVzcyBhbmQgYWN0dWFsbHkgaGFyZGVuIHRoZSBjb2RlLiBJIGFtIHdvbmRlcmluZw0KPj4g
aWYgdGhlcmUgYXJlIGFueSBvYmplY3Rpb25zIGZyb20gb3RoZXJz4oCmDQo+PiBDb21taXR0ZXJz
LCB3b3VsZCB5b3UgbWluZCBzaGFyaW5nIHlvdXIgb3BpbmlvbiBvbiB0aGlzIG9uZT8gVGhhbmtz
IQ0KPiANCj4gSSBhbSBzcGxpdC4gT24gb25lIGhhbmQsIEkgYWdyZWUgdGhleSBsb3cgcmlzayBh
bmQgd291bGQgYmUgZ29vZCB0byBoYXZlIHRoZW0uIEJ1dCBvbiB0aGUgb3RoZXIgaGFuZCwgdGhl
eSB0ZW5kIHRvIGJlIGludmFzaXZlIGFuZCBtYXkgaW50ZXJmZXJlIHdpdGggYW55IGJ1ZyB3ZSBu
ZWVkIHRvIGZpeCBkdXJpbmcgdGhlIGhhcmRlbmluZyBwZXJpb2QuDQoNClllcywgZ29vZCBwb2lu
dC4NCg0KPiANCj4gU28gSSB3b3VsZCBsZWFuIHRvd2FyZHMgYXQgbGVhc3QgcmVzdHJpY3Rpbmcg
dGhlIG51bWJlciBvZiBNSVNSQSBwYXRjaGVzIHdlIGFyZSBtZXJnaW5nLiBXZSBhbHNvIG5lZWQg
dG8gY29uc2lkZXIgYSB0aW1lIGxpbWl0IHNvIHdlIGRvbid0IGVuZCB1cCB0byBwdXNoIHRoZSBy
ZWxlYXNlIGp1c3QgYmVjYXVzZSBhIE1JU1JBIHBhdGNoZXMgYnJva2UgdGhlIGJ1aWxkLg0KDQpI
b25lc3RseSBJIGFtIGxlc3Mgd29ycmllZCBhYm91dCBicmVha2luZyB0aGUgYnVpbGQgYXMgSSBz
YXcgbm93YWRheXMgY29tbWl0dGVycw0Kbm9ybWFsbHkgcnVuIHRoZSBHaXRsYWIgQ0kgYmVmb3Jl
IHB1c2hpbmcsIGJ1dCBJIDEwMCUgYWdyZWUgd2l0aCB5b3UgYWJvdXQgdGhlIHBvaW50DQp0aGF0
IGluIGN1cnJlbnQgc3RhZ2Ugd2UgbmVlZCB0byBiZSBjYXV0aW91cy4NCg0KPiBJIHdvdWxkIHN1
Z2dlc3QgYW55IE1JU1JBIHBhdGNoZXMgc2hvdWxkIGJlIGNvbW1pdHRlZCBieSB0aGUgZmlyc3Qg
UkMuDQoNClRoYW5rIHlvdSB2ZXJ5IG11Y2ggZm9yIHJhaXNpbmcgdGhpcyBnb29kIHN1Z2dlc3Rp
b24hIFJDMShvciBtYXliZSBldmVuIFJDMikNCnNvdW5kcyBzYWZlLiBJIGNoZWNrZWQgdGhlIGZs
b2F0aW5nIE1JU1JBIHBhdGNoZXMgaW4gdGhlIGxpc3QsIGl0IHNlZW1zIHRoYXQgdGhlcmUgYXJl
DQpub3Qgc28gbWFueSBvZiB0aGVtLCBzbyBJIGd1ZXNzIHRoaXMgc3VnZ2VzdGlvbiBpcyBhY2hp
ZXZhYmxlLg0KDQpBIHNpZGUgbm90ZSBvZiB0aGlzIGlzLCBpZiB3ZSBtYWRlIHRoZSBmaW5hbCBk
ZWNpc2lvbiB0byBjdXQgdGhlIE1JU1JBIHBhdGNoZXMgYnkNClJDMSwgd2UgbmVlZCB0byBmaW5p
c2ggY29tbWl0dGluZyB0aGVzZSBzZXJpZXMgYnkgdGhlIGVuZCBvZiB0aGlzIFdlZG5lc2RheSAo
U2VwIDI3KQ0KRVUgdGltZSwgdG8gZ2l2ZSBPU1NUZXN0IGF0IGxlYXN0IG9uZSBkYXkgdG8gc3lu
YyB0aGUgc3RhZ2luZyB3aXRoIG1hc3Rlciwgc28gdGhhdA0Kd2UgY2FuIHRhZyB0aGUgcmMxLg0K
DQpLaW5kIHJlZ2FyZHMsDQpIZW5yeSANCg0KPiANCj4gQ2hlZXJzLA0KPiANCj4gLS0gDQo+IEp1
bGllbiBHcmFsbA0KDQo=


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 11:08:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 11:08:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607815.946127 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkjS7-0008VL-N4; Mon, 25 Sep 2023 11:08:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607815.946127; Mon, 25 Sep 2023 11:08:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkjS7-0008VE-J9; Mon, 25 Sep 2023 11:08:35 +0000
Received: by outflank-mailman (input) for mailman id 607815;
 Mon, 25 Sep 2023 11:08:34 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkjS6-0008Tw-K0
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 11:08:34 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20623.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::623])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dcd3ca91-5b93-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 13:08:32 +0200 (CEST)
Received: from DUZP191CA0022.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:4f9::26)
 by VI1PR08MB5437.eurprd08.prod.outlook.com (2603:10a6:803:13d::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 11:08:24 +0000
Received: from DBAEUR03FT005.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4f9:cafe::af) by DUZP191CA0022.outlook.office365.com
 (2603:10a6:10:4f9::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 11:08:24 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT005.mail.protection.outlook.com (100.127.142.81) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.18 via Frontend Transport; Mon, 25 Sep 2023 11:08:24 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Mon, 25 Sep 2023 11:08:24 +0000
Received: from 29d98781f993.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 5AA754E3-DBCD-4AE1-A8B6-21B0672B937E.1; 
 Mon, 25 Sep 2023 11:08:13 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 29d98781f993.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 11:08:13 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV2PR08MB9423.eurprd08.prod.outlook.com (2603:10a6:150:df::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 11:08:10 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 11:08:10 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dcd3ca91-5b93-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hFATpn4ONnHFcAU/2FHf72ZJR8ubD4ofyg044rqiJoU=;
 b=Wu0ye1vHuPUwTHpGJbpCeexMWI3WhpeQABqdYuWWkqX0H6grXcDMNuQZ5VYFhxVFBPrxgaMAgEE6/VXIhk9xMxn/Nsi08306OO96fRqM/cvc84pYoqQRPCIKdaQ81666q6BRkAoMd/j2h9TTeKJ0rmRSUC5nuRV8H7FL/LahZSk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 7aafc71dc7608d75
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YcTS46JF5Eky44UcAv/YYMzLg6AncWCdx4+7RUstTImH9QskPeOWC7jWBUS0IVa4OYo2Ltdw779TFiSiQw7VnJLdGt3s+F3ch2hMOtSLxowdPFAMtW8KEbkyVUeo8T/FxmXXjBW83C/68ffsUN1HuVJaAdYd6ET545fSyu0udePdT274DmugGkwixew4l9rslWvtJKse67uFSHMW0EON4/MXGmrxnipg5r8Ns2R/h42xKgnQrQKWiCvlOVnZyOVwtoex5mgkeux5DDIB+lPzgvMbrq0/EYozydoi5mpYQYaHsLDDSJ+Cand+00odPP9ej/EduSK4mTt+O76J6LmOFA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hFATpn4ONnHFcAU/2FHf72ZJR8ubD4ofyg044rqiJoU=;
 b=oFfcPVJMN/TQ/LH7Gk0SUGswF/LJw64Cw7VJ7s/hivMIsLDTs0bmk4sO9UaKgd3WGDpvoodVWvZxXsi8j2uuHt77Wvy4TS5JyFMaoeqskIfVAEmX4sCmxU6op88ofhEfvIwZa2ZcSR7q6MmYBkCuXvcRLjCd9RE/tXY3JPIuEEHiB/2GQyih7rxdbkR1j9fcFEChD+7VvVlLn/wN0lklWSXCzKMAbY9mRqzN6WgeUTGZn8KeHd961Yp/W6ZlwzQL6zSSH8Rp53shv2yMAdiNiD75A7PEi6MkkiwjFEe2BJk3Yk6B2w2Pp/qOWB+CniAnCYDRpBH6fWdjNwZRyqkMjg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hFATpn4ONnHFcAU/2FHf72ZJR8ubD4ofyg044rqiJoU=;
 b=Wu0ye1vHuPUwTHpGJbpCeexMWI3WhpeQABqdYuWWkqX0H6grXcDMNuQZ5VYFhxVFBPrxgaMAgEE6/VXIhk9xMxn/Nsi08306OO96fRqM/cvc84pYoqQRPCIKdaQ81666q6BRkAoMd/j2h9TTeKJ0rmRSUC5nuRV8H7FL/LahZSk=
From: Henry Wang <Henry.Wang@arm.com>
To: George Dunlap <george.dunlap@cloud.com>, "sstabellini@kernel.org"
	<sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>, Jan Beulich <jbeulich@suse.com>,
	"committers@xenproject.org" <committers@xenproject.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Bertrand Marquis <Bertrand.Marquis@arm.com>,
	"jgross@suse.com" <jgross@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
	"community.manager@xenproject.org" <community.manager@xenproject.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about code freeze
Thread-Topic: Xen 4.18 release: Reminder about code freeze
Thread-Index: AQHZ705Dwyrpd4I60kahQfZlaJ2JtLArFXGAgAACIQCAADDfgIAACQ8AgAAQ+YA=
Date: Mon, 25 Sep 2023 11:08:10 +0000
Message-ID: <24C421FD-4AC0-4CC6-94CB-A3394A41949B@arm.com>
References:
 <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <6399a816-ac1a-b741-ed52-b5d03b498ee6@suse.com>
 <2AB20BED-9ED9-4713-A39A-59891E09E02C@arm.com>
 <1a056bd6-a918-4c76-82b0-0eded46b23a8@xen.org>
 <CA+zSX=YqQrcLcdsYeJS1qya_0zf1AHZFcA5g8i3DZvJ+R9PHLQ@mail.gmail.com>
In-Reply-To:
 <CA+zSX=YqQrcLcdsYeJS1qya_0zf1AHZFcA5g8i3DZvJ+R9PHLQ@mail.gmail.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|GV2PR08MB9423:EE_|DBAEUR03FT005:EE_|VI1PR08MB5437:EE_
X-MS-Office365-Filtering-Correlation-Id: 7031add8-fdb8-4bad-ad7e-08dbbdb7bc9c
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 RG5jYDEpXn6mpJH9fLh8Jw/5b91FnlI7LGlgXHO5//2vBVRHv+VrNmw7E/Ayij3fEPCmJn3RoOX6RZCghd9r0FBQFX9cJjz+KhZbuD08H80I42qqmlt0axrqLLAGPYzmbDhbYdHoyiMvqEZ0CnPWXDhhLGPseF0c7om0DMjokWydz0qcqAinz3PQALsYPs08Q58qCzpgwya0/52TYvAABcW7sxYO6hI0LKBzvwjLZkUr9RlwqNIZJTkjqmp/NXgohoCCusHeCNYYrTEOtlvVFCMSVAOPWztgQZkrXydK3a/tCFEO26jcaMPM/1TYdVWCB6hNcLoj9gILuFCV8q0Pqy7jmDDnLg/t7+r6udIsX7WCs5AGMJj4+akWnpu8YmKEc7xirfTrJ6/ENtTnwJ7QSI01cGjtmWkql96h9jRownMxeHRVBLRocM77KUTIjXWwbgIGc81snQAc3NTHufPgIVAf0aPDNGBi0j8HvKLlZZIHlSK0DXhbXhNNakc5FSMG5aPO7s9yRDQTrMe8ScwgDB+RcadL0u6cIftdmgN6XnNx73cIC4OCEzdcVR6Nsx81OEX61oLBpQVF4M0o6jsvRURiH7TrxzhZKUSBHsKLQDlkHLU532du95sr3oELoo4V351SiKJqElEladIjvYrS5A==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(366004)(396003)(39860400002)(346002)(376002)(230922051799003)(186009)(1800799009)(451199024)(66899024)(2906002)(38070700005)(83380400001)(7416002)(122000001)(38100700002)(53546011)(6512007)(66946007)(66556008)(66476007)(66446008)(64756008)(54906003)(91956017)(110136005)(76116006)(71200400001)(6506007)(6486002)(26005)(5660300002)(41300700001)(316002)(478600001)(8936002)(8676002)(4326008)(2616005)(86362001)(36756003)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <ACDF1E5A235C754D92336714E2B1E7EC@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB9423
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT005.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	884c5d2e-b02d-48fb-c73b-08dbbdb7b43c
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	otFjFjwP6WmUUnPQFJvjHN+lUIDXOuR/W76zyNqDyhSpjtzMGx5+RqFffMySsnAgVACWR82F1ItMtO/lISnSUtY6C3k6nRZFXOnkXrz7xjIVr9jDs/lC2AZkksvMHWMj1Hdl9And1/2ak6LL++bbWxEnGVfHvkxlXESUQTxG6OMAE5mlgBS9z4uR+kDiXbhgEJueEc7uaYhp95GnMI2Ebo2JVOqDfLIRtHeXtoSUm+jvwatFn5GleXYI8J+Wh8XUHX+omr+/bfcU2VHcco0UNiP9GyDSy3D/ALIq23COKM4w9zZkYBE+dzm3SBnzBLPyaGz7SaZa1Gpyi1rtRKkp3yzgEJ4VqrYo/C0vRpmhOdF66O7Q80nBl6hDGi0hF0SZouTjIpDTv54CVlyCXpyFleKMhCmX4uG4DM0gQbQzj9B8Fgvcb2JSo+pJyuZLlxYt9oY2HNrdCMO0lP9ua86X/l1y/zuekkl3yxST4BctizdaYpvVC0mah9pwTHejUs+8/i/lrOVw4+UzBOnrN/btZtiQsFl7B+ELRK3AvQsqCms8kjaGBdECiCR2TklbKJqiXT3kCUcaPCViFBmQ7lrHEP8TBeTZNVmcQxmadBC2POl/vn/GsAZjEkEbTCFqzs3R6X7RZuI31e2GS68MnMu6QDG9e6D3qvqtRXjPUKulgmkr3Pf0NRKkpIb5G1Gfuri03NHTDgV5mym/5h83kMwqMg==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(346002)(396003)(39850400004)(376002)(230922051799003)(82310400011)(1800799009)(186009)(451199024)(46966006)(36840700001)(6512007)(6506007)(2616005)(53546011)(6486002)(478600001)(8936002)(47076005)(83380400001)(26005)(336012)(2906002)(8676002)(70206006)(70586007)(110136005)(316002)(54906003)(4326008)(5660300002)(41300700001)(36860700001)(36756003)(86362001)(81166007)(33656002)(82740400003)(40480700001)(356005)(66899024);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 11:08:24.3950
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 7031add8-fdb8-4bad-ad7e-08dbbdb7bc9c
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT005.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5437

SGkgR2VvcmdlLA0KDQo+IE9uIFNlcCAyNSwgMjAyMywgYXQgMTg6MDcsIEdlb3JnZSBEdW5sYXAg
PGdlb3JnZS5kdW5sYXBAY2xvdWQuY29tPiB3cm90ZToNCj4gDQo+IE9uIE1vbiwgU2VwIDI1LCAy
MDIzIGF0IDEwOjM14oCvQU0gSnVsaWVuIEdyYWxsIDxqdWxpZW5AeGVuLm9yZz4gd3JvdGU6DQo+
PiANCj4+IEhpIEhlbnJ5LA0KPj4gDQo+PiBPbiAyNS8wOS8yMDIzIDA3OjQwLCBIZW5yeSBXYW5n
IHdyb3RlOg0KPj4+PiBPbiBTZXAgMjUsIDIwMjMsIGF0IDE0OjMyLCBKYW4gQmV1bGljaCA8amJl
dWxpY2hAc3VzZS5jb20+IHdyb3RlOg0KPj4+PiBUaGlzLCBmb3IgZXhhbXBsZSwgd291bGQgdGhl
biBsaWtlbHkgbWVhbg0KPj4+PiB0aGF0IGFsbCBNaXNyYSB3b3JrIG5vdyBuZWVkcyBxdWV1aW5n
IGZvciBhZnRlciB0aGUgdHJlZSByZS1vcGVucyAuLi4NCj4+PiANCj4+PiDigKZJIGFsc28gdGhv
dWdodCBhYm91dCB0aGlzLCB0byBiZSBob25lc3QgSSBhbSB0ZW1wdGVkIHRvIGxvb3NlIHRoZSBj
b250cm9sDQo+Pj4gb3IgYXQgbGVhc3Qgb2ZmZXIgc29tZSBmbGV4aWJpbGl0eSBvbiB0aGlzIHNw
ZWNpZmljIHBhcnQsIGFzIG5vcm1hbGx5IE1JU1JBDQo+Pj4gcmVsYXRlZCBjaGFuZ2VzIGFyZSBo
YXJtbGVzcyBhbmQgYWN0dWFsbHkgaGFyZGVuIHRoZSBjb2RlLiBJIGFtIHdvbmRlcmluZw0KPj4+
IGlmIHRoZXJlIGFyZSBhbnkgb2JqZWN0aW9ucyBmcm9tIG90aGVyc+KApg0KPj4+IA0KPj4+IENv
bW1pdHRlcnMsIHdvdWxkIHlvdSBtaW5kIHNoYXJpbmcgeW91ciBvcGluaW9uIG9uIHRoaXMgb25l
PyBUaGFua3MhDQo+PiANCj4+IEkgYW0gc3BsaXQuIE9uIG9uZSBoYW5kLCBJIGFncmVlIHRoZXkg
bG93IHJpc2sgYW5kIHdvdWxkIGJlIGdvb2QgdG8gaGF2ZQ0KPj4gdGhlbS4gQnV0IG9uIHRoZSBv
dGhlciBoYW5kLCB0aGV5IHRlbmQgdG8gYmUgaW52YXNpdmUgYW5kIG1heSBpbnRlcmZlcmUNCj4+
IHdpdGggYW55IGJ1ZyB3ZSBuZWVkIHRvIGZpeCBkdXJpbmcgdGhlIGhhcmRlbmluZyBwZXJpb2Qu
DQo+IA0KPiAqVGhlb3JldGljYWxseSogTUlTUkEgcGF0Y2hlcyBzaG91bGQgaGF2ZSBubyBiZWhh
dmlvcmFsIHNpZGUgZWZmZWN0czsNCj4gYnV0IGl0J3MgcXVpdGUgcG9zc2libGUgdGhhdCB0aGV5
IHdpbGwuIEknZCBiZSBpbiBmYXZvciBvZiBhIG1vcmUNCj4gc3RyaWN0IHZpZXcsIHRoYXQgdGhl
eSBzaG91bGQgYWxsIGdvIG9uIGEgc2VwYXJhdGUgYnJhbmNoIChvciBzaW1wbHkNCj4gYmUgcmV2
aWV3ZWQgaW4tcHJpbmNpcGxlIGFuZCByZS1zdWJtaXR0ZWQgYWZ0ZXIgd2UgYnJhbmNoKSBub3cg
dGhhdA0KPiB0aGUgZmVhdHVyZSBmcmVlemUgaXMgZG9uZS4NCg0KVGhhbmtzIGZvciBzaGFyaW5n
IHlvdXIgb3Bpbmlvbi4gSSBkZWZpbml0ZWx5IHVuZGVyc3RhbmQgeW91ciBjb25jZXJuLiBJIHRo
aW5rIGluDQpYZW4gU3VtbWl0IHdlIGFncmVlZCB0aGF0IHRoZSByZWxlYXNlIHByb2Nlc3Mgc2hv
dWxkIG5vdCBhZmZlY3QgdGhlIG5vcm1hbA0KY29kZSByZXZpZXcsIHNvIE1JU1JBIHBhdGNoZXMg
Y2FuIHN0aWxsIGJlIHBvc3RlZCB0byB0aGUgbGlzdCBhbmQgYmUgcmV2aWV3ZWQuDQpXaGVuIHRo
ZSBzdGFnaW5nIHJlb3BlbnMsIHRoZXNlIHN0YWdlZCBNSVNSQSBwYXRjaGVzIGNhbiBiZSBjb21t
aXR0ZWQgcmlnaHQNCmF3YXkuDQoNCj4gVGhhdCdzIG15IHJlY29tbWVuZGF0aW9uLCBidXQgdWx0
aW1hdGVseSBJJ2QgbGVhdmUgdGhlIGRlY2lzaW9uIHRvIEhlbnJ5Lg0KDQpTaW5jZSB0aGlzIGlz
IGFib3V0IE1JU1JBLCBJIHdvdWxkIGxpa2UgdG8gd2FpdCBvbmUgbW9yZSBkYXkgdG8gc2VlIGlm
IHRoZXJlIGlzDQphbnkgaW5wdXQgZnJvbSBTdGVmYW5vLCBvdGhlcndpc2UgSSB0aGluayBKdWxp
ZW7igJlzIHN1Z2dlc3Rpb24gaXMgdmVyeSBnb29kIHNvDQp3ZSBjYW4ganVzdCBmb2xsb3cgdGhh
dCBwcm9wb3NlZCB0aW1lbGluZS4NCg0KS2luZCByZWdhcmRzLA0KSGVucnkgDQoNCj4gDQo+IC1H
ZW9yZ2UNCg0K


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 11:11:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 11:11:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607822.946138 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkjV7-0001lD-AL; Mon, 25 Sep 2023 11:11:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607822.946138; Mon, 25 Sep 2023 11:11:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkjV7-0001l6-5a; Mon, 25 Sep 2023 11:11:41 +0000
Received: by outflank-mailman (input) for mailman id 607822;
 Mon, 25 Sep 2023 11:11:39 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkjV5-0001kz-S2
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 11:11:39 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0628.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::628])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4c22b372-5b94-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 13:11:38 +0200 (CEST)
Received: from DUZPR01CA0064.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:3c2::17) by AS8PR08MB9840.eurprd08.prod.outlook.com
 (2603:10a6:20b:613::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 11:11:36 +0000
Received: from DBAEUR03FT036.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:3c2:cafe::8f) by DUZPR01CA0064.outlook.office365.com
 (2603:10a6:10:3c2::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 11:11:36 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT036.mail.protection.outlook.com (100.127.142.193) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Mon, 25 Sep 2023 11:11:35 +0000
Received: ("Tessian outbound c99fbc01d472:v175");
 Mon, 25 Sep 2023 11:11:35 +0000
Received: from b1932902f14c.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 F1E3F85F-99F1-4011-AAD1-DA41003488D6.1; 
 Mon, 25 Sep 2023 11:11:28 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b1932902f14c.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 11:11:28 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA4PR08MB6238.eurprd08.prod.outlook.com (2603:10a6:102:e8::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 11:11:27 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 11:11:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4c22b372-5b94-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JgfUXEUsclrNv2W7ehQdHKt6Eu82+bdctyihwVew8YI=;
 b=YccxtLLLDGxvcXHUwsuLkUCPgs2w7RigvENNM4wQcE+i8EFFLGgRemA4sprKkXuju771jo7ydapjz4Cd+463mJQTcoeiKtFlKJE2QCeIW2P7sTyDqPk1cnQ+Xftle5MGzlMvrZ/swE8qYXkl80jKzljBtP2tN7zYNySREIcUd8Q=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 6ab877325e33b9fc
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fp/e7zinK0e3uNKG8QT0+oEJWjmsKoFHy5zPR6MhzVchQjnn95tBSXLMRFxoK4EmT4RFjAoY72uN6EnMw+vwm2ZgfRrRIk03aFnvrxDN91QGFBKoFESZb+f9/LZANtbGRHPJl3EqP+KOmvsxi7HxOp6s8xr9CfZtFODZCUG2Wr21awf6oFVKMby9bJ0r6sOMMpejvPKgV1ET9wMExvSKCKfGXlA0F+QgiewDhw/8O3ANz8faLkJeH49N4JKelwTa6RPI2HXZuPPmWr+HtWbfmlosFiYdvNN07tJkxRbpziloqfEdXULKa+19KUdTCCia/VYiTSISsdtfiDehUoPorA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=JgfUXEUsclrNv2W7ehQdHKt6Eu82+bdctyihwVew8YI=;
 b=YmXIhZjG3nqY5I8VoCaBCQlg5NZD8vA3dn8LoaGfCo7s/4yqlBwFshuNNjsvyl2TPblBtA2dMvJMHJQaQnxcjo7ytSe7c+aPg1EiBM5HCYRlppSuSpsHHJahF4NW0iai72jO8ja+5QcLH0WUfT7ESilOhUjYS3+nWmTOL9gb/7jYrEgjcYSgLarNCytEJEfC+CBws6FzayBtsV9QUoYUNRQdHvg62TGxsivLUUYFl36TBaX2mEQOxOo6V1HMqcctylnu1i7wRr9vpgXz+idYhHScBLj8s9vxL8V7T6CsuboW4jhdUX2GnMpoqZzLA8XGG3JUm0KnCf/t99EZS6O7iQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JgfUXEUsclrNv2W7ehQdHKt6Eu82+bdctyihwVew8YI=;
 b=YccxtLLLDGxvcXHUwsuLkUCPgs2w7RigvENNM4wQcE+i8EFFLGgRemA4sprKkXuju771jo7ydapjz4Cd+463mJQTcoeiKtFlKJE2QCeIW2P7sTyDqPk1cnQ+Xftle5MGzlMvrZ/swE8qYXkl80jKzljBtP2tN7zYNySREIcUd8Q=
From: Henry Wang <Henry.Wang@arm.com>
To: "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Michal Orzel <michal.orzel@amd.com>,
	"xenia.ragiadakou@amd.com" <xenia.ragiadakou@amd.com>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>, "consulting@bugseng.com"
	<consulting@bugseng.com>, Jan Beulich <jbeulich@suse.com>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, Wei Liu
	<wl@xen.org>, George Dunlap <george.dunlap@citrix.com>, Julien Grall
	<julien@xen.org>
Subject: Re: [XEN PATCH v4] drivers/video: make declarations of defined
 functions available
Thread-Topic: [XEN PATCH v4] drivers/video: make declarations of defined
 functions available
Thread-Index: AQHZ75BxeEriYuxeZk+v70ty8+HkJrArXccAgAAFGAA=
Date: Mon, 25 Sep 2023 11:11:26 +0000
Message-ID: <C7F9410A-F5F1-4DC4-B8FF-242F58792950@arm.com>
References:
 <5830a4d838883a20a6b320dd9af44ef4bb18ddaa.1695632599.git.nicola.vetrini@bugseng.com>
 <28310181-d7f5-a8b6-f1fd-ea9ca0db56cb@citrix.com>
In-Reply-To: <28310181-d7f5-a8b6-f1fd-ea9ca0db56cb@citrix.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PA4PR08MB6238:EE_|DBAEUR03FT036:EE_|AS8PR08MB9840:EE_
X-MS-Office365-Filtering-Correlation-Id: 150530de-da96-4afb-43a9-08dbbdb82eb5
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 jf51OoSmgHHS6tF+qyiffD9H4WHKhdJC6rTl4KR8i+du+ROZ2Y52CNyVbNo0MECSh0dTMUU7en9nIiPjqVyq2TrjmXuCxeE4Hs61qtnyoLoUUYSkNiMrjgOQ+eu93YZi6SUZlBkjR5NloE0TKZ4NudFaxo09u+BNh1KqPZeXLRwwrQC9z2EpnRD3ih/qYf5vo3OYTbIBiLI5DTws2z49X9RJaRhZD8Vyl7jj9mMm0z3G9w7ucd1kibQNpZhl+AMocBt2M4cwJOubo33PQMg5289hiY19sRTx7Rc/bTN3OVElt2I0Wqm5bCrb04Xmt7+ffsk9G+lYRaXZj5Tmdt/gZEyRrcQf0kj9Q4KLFour3VpX5qvGpw1abFNSOmgRak4QkSsUqeBlpJQUzssiXmwY8ySD8VADkjX8tjWT+5zbtcYVSk+xZh7XRFp47vTuZMnjMyUgplh1PI9nmvU5dWdJgW8NLd9kkLiwT7uhAJ6YQEYGOflVHBnyTGvIdlitYGDW0PK2z85bov9Wxllc2khtccRkRXv9sqcuRnVOL3jgfbEx2tA3TZJyZgWv6f8pOjhtI/a4g6o69XbUp6heCy95xZPieoXv8LpOEWIpMTA/JYPRTMRPz9FffzjqKFIkg7HWS2Oj5cz4lWSembuczQsaDQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(346002)(39860400002)(136003)(376002)(230922051799003)(1800799009)(186009)(451199024)(4744005)(7416002)(6512007)(316002)(6916009)(76116006)(66476007)(64756008)(66946007)(54906003)(91956017)(2906002)(66556008)(66446008)(41300700001)(8936002)(8676002)(4326008)(478600001)(71200400001)(5660300002)(38070700005)(38100700002)(33656002)(6506007)(53546011)(122000001)(36756003)(26005)(2616005)(6486002)(86362001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <77FF484483F1D341821AC420FB6A7F2A@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6238
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	a6ff9ec3-f30c-48ae-707b-08dbbdb82974
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ivNaxkqs+tta77s7tKzkrsCTBlDh1NCPS1KX1zZ0RgxkHva8VKPQy4ojp7w/i1cB70nlWkJL6D7bc/xy+Oh1ns6oClt3JnNxIG83ACYBRR7YiVbICBp5QLTLqMNukkxd9yEvgNsAVs9X/c2kcaJHMRLFBfwgzlC1Zs5k61hqucfs3xH37/d4vKdJjENDbg9Zt2tYifbaa9DXqQMD4jq5vUfl19I6vbwrkwFWZmN67lA1dseSzIRV+8TzTN819lrQii8zMQxxaaKcz8lhQBir1W//0fR+N59JTYeHA4LmieerABLwIQX5tVl1tSRpyBStrHDL12LuWvmYe2TAlqsw2cxHDg28302FR63kZib0bjnHHlgIWFKji/h8RCFxXpDK7iVkbiuX4pd2J8n+HgqmGA6DCz1RE7sFyVRGpekQiY86Y3B516FEGXwvVLI+2ibTLZfnEuQdIP0mmWmlcYB1SIgievAKW3GytKKAO2dPA6Ref6nBYLyquPCyan5lbOQo91Dgmq2IFOb4+gm6hNsTjHFUKMD4tmfe5q5QloV7tUMEPro8sB6Mdwr0zUGIRA5+LOYJXZS9KbgSI9vR9b8uRyjP75cnFwJbIfyKaSe+9egMTQEK0mcezm/6aEI2meIghuTDlyzFqRDcl31qZ4o9okXhctq5/rXqPxvvur/snIuz6apsI7hEFKyOmhCDbX98iOWiTp/MKoTh73wd0NNd6/67SXQLMNQyQP8R8WBEHNmvnmkcbcRcBvCD+ZKWKU3K
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(346002)(376002)(396003)(230922051799003)(186009)(82310400011)(1800799009)(451199024)(36840700001)(40470700004)(46966006)(40480700001)(40460700003)(2906002)(47076005)(36860700001)(4744005)(356005)(82740400003)(81166007)(53546011)(70586007)(54906003)(6512007)(70206006)(6506007)(6486002)(26005)(5660300002)(336012)(41300700001)(316002)(478600001)(8936002)(8676002)(6862004)(4326008)(2616005)(86362001)(36756003)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 11:11:35.8164
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 150530de-da96-4afb-43a9-08dbbdb82eb5
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9840

Hi Andrew,

> On Sep 25, 2023, at 18:53, andrew.cooper3@citrix.com wrote:
>=20
> On 25/09/2023 10:11 am, Nicola Vetrini wrote:
>> diff --git a/xen/include/xen/vga.h b/xen/include/xen/vga.h
>> index f72b63d446b1..9b2c47971d0c 100644
>> --- a/xen/include/xen/vga.h
>> +++ b/xen/include/xen/vga.h
>> @@ -13,6 +13,12 @@
>>=20
>> #ifdef CONFIG_VGA
>> extern struct xen_vga_console_info vga_console_info;
>> +int fill_console_start_info(struct dom0_vga_console_info *);
>=20
> ci
>=20
>> +void vesa_init(void);
>> +void vesa_early_init(void);
>> +void vesa_endboot(bool keep);
>> +#else
>> +static inline void vesa_init(void) {};
>=20
> Extraneous ;
>=20
> Both can be fixed on commit, but we're in code freeze now, so every
> patch needs approving by the release manager (Henry, CC'd)

That is very nice of you, yes please kindly fix on commit, feel free to
take my tag:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 11:15:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 11:15:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607828.946146 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkjYO-00038j-Mp; Mon, 25 Sep 2023 11:15:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607828.946146; Mon, 25 Sep 2023 11:15:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkjYO-00038c-Jx; Mon, 25 Sep 2023 11:15:04 +0000
Received: by outflank-mailman (input) for mailman id 607828;
 Mon, 25 Sep 2023 11:15:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=+D6T=FJ=actia.se=jonas.blixt@srs-se1.protection.inumbo.net>)
 id 1qkjYN-00038W-3B
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 11:15:03 +0000
Received: from mail.actia.se (mail.actia.se [212.181.117.226])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c56138b0-5b94-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 13:15:02 +0200 (CEST)
Received: from S036ANL.actianordic.se (10.12.31.117) by S035ANL.actianordic.se
 (10.12.31.116) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.32; Mon, 25 Sep
 2023 13:15:01 +0200
Received: from S036ANL.actianordic.se ([fe80::e13e:1feb:4ea6:ec69]) by
 S036ANL.actianordic.se ([fe80::e13e:1feb:4ea6:ec69%4]) with mapi id
 15.01.2507.032; Mon, 25 Sep 2023 13:15:01 +0200
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c56138b0-5b94-11ee-878a-cb3800f73035
From: Jonas Blixt <jonas.blixt@actia.se>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Xen(arm64)  hang on suspend/resume
Thread-Topic: Xen(arm64)  hang on suspend/resume
Thread-Index: Adnvmnpoa5ryhO19Q7aaxFF2dGz1TQ==
Date: Mon, 25 Sep 2023 11:15:01 +0000
Message-ID: <3c79ea2fec984e21b07d9365c08a5862@actia.se>
Accept-Language: en-US, sv-SE
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.12.12.144]
x-esetresult: clean, is OK
x-esetid: 37303A294A191A5C6C7262
Content-Type: multipart/alternative;
	boundary="_000_3c79ea2fec984e21b07d9365c08a5862actiase_"
MIME-Version: 1.0

--_000_3c79ea2fec984e21b07d9365c08a5862actiase_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hello,

I've encountered a strange behavior with Xen on arm64 with regards to suspe=
nd/resume.

My setup:
Version: Xen 4.13.1
Target: NXP imx8x SoC

We also use a set of patches from Aggios (https://xen-devel.narkive.com/yGp=
s0HKG/rfc-v2-xen-arm-suspend-to-ram-support-in-xen-for-arm)

Occasionally xen gets stuck on resume. We know that the lower levels wake u=
p and xen starts to resume because xen's debug console is available. When w=
e're in this state dom0 does not resume and both pCPU's are in idle loops. =
If we at this point issue debug console commands (like 'h' for the help men=
u) that schedule tasklets dom0 wakes up and continues. Debug function that =
run in the irq-handler does not have the same effect.

This is what the run queue looks like:

sched_smt_power_savings: disabled
NOW=3D490275382125
Online Cpus: 0-1
Cpupool 0:
Cpus: 0-1
Scheduler: SMP Credit Scheduler rev2 (credit2)
Active queues: 1
    default-weight     =3D 256
Runqueue 0:
    ncpus              =3D 2
    cpus               =3D 0-1
    max_weight         =3D 256
    pick_bias          =3D 1
    instload           =3D 1
    aveload            =3D 282294 (~107%)
    idlers: 0
    tickled: 0
    fully idle cores: 0
Domain info:
    Domain: 0 w 256 c 0 v 2
      1: [0.0] flags=3D2 cpu=3D1 credit=3D984625 [w=3D256] load=3D208781 (~=
79%)
      2: [0.1] flags=3D0 cpu=3D1 credit=3D9742375 [w=3D256] load=3D25693 (~=
9%)
    Domain: 1 w 256 c 0 v 1
      3: [1.0] flags=3D0 cpu=3D1 credit=3D10447250 [w=3D256] load=3D7835 (~=
2%)
Runqueue 0:
CPU[00] runq=3D0, sibling=3D{0}, core=3D{0}
CPU[01] runq=3D0, sibling=3D{1}, core=3D{1}
    run: [0.0] flags=3D2 cpu=3D1 credit=3D-1543000 [w=3D256] load=3D208781 =
(~79%)
RUNQ:
      0: [0.1] flags=3D0 cpu=3D1 credit=3D10275375 [w=3D256] load=3D25279 (=
~9%)
[t: display multi-cpu clock info]
Synced stime skew: max=3D125ns avg=3D125ns samples=3D1 current=3D125ns
Synced cycles skew: max=3D1 avg=3D1 samples=3D1 current=3D1

I would be grateful if I could get some hint's on how to debug this.

Best Regards
Jonas



--_000_3c79ea2fec984e21b07d9365c08a5862actiase_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:"Segoe UI";
	panose-1:2 11 5 2 4 2 4 2 2 3;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-ligatures:standardcontextual;
	mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri",sans-serif;
	mso-fareast-language:EN-US;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body link=3D"#0563C1" vlink=3D"#954F72" style=3D"word-wrap:break-word">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span lang=3D"EN-US">Hello,<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">I&#8217;ve encountered a strang=
e behavior with Xen on arm64 with regards to suspend/resume.<o:p></o:p></sp=
an></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">My setup:<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Segoe UI&quot;,sans-serif;color:#172B4D;background:white">Vers=
ion:
</span><span style=3D"font-size:10.5pt;font-family:&quot;Segoe UI&quot;,san=
s-serif;color:#172B4D;background:white">Xen 4.13.1<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Segoe UI&quot;,sans-serif;color:#172B4D;background:white">Targ=
et: NXP imx8x SoC<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Segoe UI&quot;,sans-serif;color:#172B4D;background:white"><o:p=
>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Segoe UI&quot;,sans-serif;color:#172B4D;background:white">We a=
lso use a set of patches from Aggios (<a href=3D"https://xen-devel.narkive.=
com/yGps0HKG/rfc-v2-xen-arm-suspend-to-ram-support-in-xen-for-arm">https://=
xen-devel.narkive.com/yGps0HKG/rfc-v2-xen-arm-suspend-to-ram-support-in-xen=
-for-arm</a>)<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Segoe UI&quot;,sans-serif;color:#172B4D;background:white"><o:p=
>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;font-=
family:&quot;Segoe UI&quot;,sans-serif;color:#172B4D;background:white">Occa=
sionally xen gets stuck on resume. We know that the lower levels wake up an=
d xen starts to resume because xen&#8217;s debug console
 is available. When we&#8217;re in this state dom0 does not resume and both=
 pCPU&#8217;s are in idle loops. If we at this point issue debug console co=
mmands (like &#8216;h&#8217; for the help menu) that schedule tasklets dom0=
 wakes up and continues. Debug function that run in the
 irq-handler does not have the same effect.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">This is what the run queue look=
s like:<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">sched_smt_power_savings: disabl=
ed<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">NOW=3D490275382125<o:p></o:p></=
span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Online Cpus: 0-1<o:p></o:p></sp=
an></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Cpupool 0:<o:p></o:p></span></p=
>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Cpus: 0-1<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Scheduler: SMP Credit Scheduler=
 rev2 (credit2)<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Active queues: 1<o:p></o:p></sp=
an></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; default-weig=
ht&nbsp;&nbsp;&nbsp;&nbsp; =3D 256<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Runqueue 0:<o:p></o:p></span></=
p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; ncpus&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =3D=
 2<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; cpus&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
; =3D 0-1<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; max_weight&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =3D 256<o:p></o:p></span></p=
>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; pick_bias&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =3D 1<o:p></o:p></span>=
</p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; instload&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =3D 1<o:p></o:p></=
span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; aveload&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =3D 282294 (~=
107%)<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; idlers: 0<o:=
p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; tickled: 0<o=
:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; fully idle c=
ores: 0<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Domain info:<o:p></o:p></span><=
/p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; Domain: 0 w =
256 c 0 v 2<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
1: [0.0] flags=3D2 cpu=3D1 credit=3D984625 [w=3D256] load=3D208781 (~79%)<o=
:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
2: [0.1] flags=3D0 cpu=3D1 credit=3D9742375 [w=3D256] load=3D25693 (~9%)<o:=
p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; Domain: 1 w =
256 c 0 v 1<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
3: [1.0] flags=3D0 cpu=3D1 credit=3D10447250 [w=3D256] load=3D7835 (~2%)<o:=
p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Runqueue 0:<o:p></o:p></span></=
p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">CPU[00] runq=3D0, sibling=3D{0}=
, core=3D{0}<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">CPU[01] runq=3D0, sibling=3D{1}=
, core=3D{1}<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp; run: [0.0] f=
lags=3D2 cpu=3D1 credit=3D-1543000 [w=3D256] load=3D208781 (~79%)<o:p></o:p=
></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">RUNQ:<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
0: [0.1] flags=3D0 cpu=3D1 credit=3D10275375 [w=3D256] load=3D25279 (~9%)<o=
:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">[t: display multi-cpu clock inf=
o]<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Synced stime skew: max=3D125ns =
avg=3D125ns samples=3D1 current=3D125ns<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Synced cycles skew: max=3D1 avg=
=3D1 samples=3D1 current=3D1<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">I would be grateful if I could =
get some hint&#8217;s on how to debug this.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Best Regards<o:p></o:p></span><=
/p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Jonas<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
</div>
</body>
</html>

--_000_3c79ea2fec984e21b07d9365c08a5862actiase_--


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 11:35:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 11:35:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607841.946157 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkjrt-0007kS-8t; Mon, 25 Sep 2023 11:35:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607841.946157; Mon, 25 Sep 2023 11:35:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkjrt-0007kL-57; Mon, 25 Sep 2023 11:35:13 +0000
Received: by outflank-mailman (input) for mailman id 607841;
 Mon, 25 Sep 2023 11:35:12 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkjrs-0007kB-B0; Mon, 25 Sep 2023 11:35:12 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkjrr-00049r-Uw; Mon, 25 Sep 2023 11:35:11 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkjrr-0004JG-J1; Mon, 25 Sep 2023 11:35:11 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qkjrr-0007BK-IX; Mon, 25 Sep 2023 11:35:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=U9qQQ1Chow30Gz2h80SOXOmPAGVW+nv9fAnYl+PQSTI=; b=Fg5pxh2HxDDnZoMpbOaC+4/HiI
	yd69U1D/zqUHENgg6Lg3odHqGacrguxv+F3apLUVAx4GaVobqYvfB6C5lnQL+jw4LJ0gOlVJaLW/T
	/bv10MtMAY1NljaqvIL0S0rhqB+TFPxtgmFrN/QzsWnLHCiucLdA0w2siOp2ReAXTwFM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183156-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183156: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=d6351a10c80fcbbf2b5996d351b7181ba17b3b32
X-Osstest-Versions-That:
    xen=88a9501a848aade858a3bbda75f20cdf7c3c2f9a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 25 Sep 2023 11:35:11 +0000

flight 183156 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183156/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  d6351a10c80fcbbf2b5996d351b7181ba17b3b32
baseline version:
 xen                  88a9501a848aade858a3bbda75f20cdf7c3c2f9a

Last test of basis   183121  2023-09-22 22:01:59 Z    2 days
Testing same since   183156  2023-09-25 09:00:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alistair Francis <alistair.francis@wdc.com>
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   88a9501a84..d6351a10c8  d6351a10c80fcbbf2b5996d351b7181ba17b3b32 -> smoke


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 11:50:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 11:50:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607856.946167 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkk71-0002g6-MQ; Mon, 25 Sep 2023 11:50:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607856.946167; Mon, 25 Sep 2023 11:50:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkk71-0002fz-J9; Mon, 25 Sep 2023 11:50:51 +0000
Received: by outflank-mailman (input) for mailman id 607856;
 Mon, 25 Sep 2023 11:50:49 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkk6z-0002fn-UG; Mon, 25 Sep 2023 11:50:49 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkk6y-0004fE-ST; Mon, 25 Sep 2023 11:50:48 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkk6y-0004f3-IT; Mon, 25 Sep 2023 11:50:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qkk6y-00009r-Hx; Mon, 25 Sep 2023 11:50:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=VXWW8YpMCUY7xwMcQLHBV00WxdJfDXpWIL83KWv9xJ4=; b=Ta0HjH1LWs9W/HwWJiykSighIs
	w5mwsKYbE+eXprpK+bH7md7ptvorcXCSeU0jCdZn0rKC+zv4e9ka/utUNBmP0rlCtdt1rWNPlwN6+
	eo7CWBhrcjyMzsuD2yuRBqpbjzq/PFRmwK0KHDIAQBDHnZ+kDt45nm1GC0PJr1kVj0qQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183149-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183149: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start.2:fail:regression
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-amd64:xen-install:fail:heisenbug
    linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64:xen-install:fail:heisenbug
    linux-5.4:test-amd64-amd64-dom0pvh-xl-amd:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-arm64-arm64-libvirt-raw:guest-start.2:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 25 Sep 2023 11:50:48 +0000

flight 183149 linux-5.4 real [real]
flight 183157 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183149/
http://logs.test-lab.xenproject.org/osstest/logs/183157/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1  19 guest-start.2  fail in 183144 REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-amd64 7 xen-install fail in 183137 pass in 183149
 test-amd64-i386-xl-qemuu-debianhvm-amd64 7 xen-install fail in 183137 pass in 183149
 test-amd64-amd64-dom0pvh-xl-amd 22 guest-start/debian.repeat fail in 183137 pass in 183149
 test-armhf-armhf-libvirt-qcow2 13 guest-start    fail in 183137 pass in 183149
 test-armhf-armhf-xl-vhd 17 guest-start/debian.repeat fail in 183137 pass in 183149
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183144 pass in 183149
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail in 183144 pass in 183149
 test-armhf-armhf-xl-credit2  14 guest-start                fail pass in 183137
 test-armhf-armhf-xl-credit1  18 guest-start/debian.repeat  fail pass in 183144
 test-arm64-arm64-libvirt-raw 18 guest-start.2              fail pass in 183144

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail blocked in 182613
 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail in 183137 like 182613
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 183137 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 183137 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-armhf-armhf-xl          18 guest-start/debian.repeat    fail  like 182613
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   23 days
Testing same since   183129  2023-09-23 09:20:22 Z    2 days    4 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 fail    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 12:35:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 12:35:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607866.946177 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkko9-0002HV-2f; Mon, 25 Sep 2023 12:35:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607866.946177; Mon, 25 Sep 2023 12:35:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkko8-0002HO-WC; Mon, 25 Sep 2023 12:35:25 +0000
Received: by outflank-mailman (input) for mailman id 607866;
 Mon, 25 Sep 2023 12:35:22 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3u+g=FJ=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qkko6-0002HI-LX
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 12:35:22 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062b.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fbf9b1cf-5b9f-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 14:35:18 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9594.eurprd04.prod.outlook.com (2603:10a6:102:23c::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 12:35:15 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 12:35:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fbf9b1cf-5b9f-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=W7x9FeiJcjr4Icbc8dBWFYTMIIN26huVatudmMAxybIbPt7c/algBgLukX6bx9r7mHuGuyyxSM2HR/oZ2Jw9032xfc14GSnIWaeBXBJffot4EbZ2EAcceYOZLcSUo/WzEk6SsLZTu0T7aSC8dus6f4qEQ6FYhZUG2x6Hu5QK1aIfuKGfY7xGHgnKYys/D2X9N45W6zOYc9ZGDsuUml6ErRk9dhbsDiZfYnLn+lUNAtuEPgEOoYlsGJNdMCixjUkgSpY5Lsml+p1BCXiU/mJbp419Tm2sDkabiO7Iyy2aSaqv7pG1qCRwMAQVq1jmV3S8GLlLZ4p/+iEY0ZhMw7u5ZA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9ZKQnX9Vzts7Fq+oYW0edX3C5L04RZzGfYCFovxlY+I=;
 b=LmKwB8PRm90kfSxP+5K2gkp58gWT/XZy5KWcf0w3W1Wk8/T+QLPMAhnyg003jIqP5KhMiqbWKj4ViiC8Da+kykkJcdncmZRie8jxWz+fbPzZlHxsWZwIkj+QlhlYNtj4SGqAkuS/xWHDx4kpgR7K25X24xefVJ7J9wKVkYjHq6zlJphJSFeKuzTBNH38R/fcxMRfmjhU95fg6wnfhtgL1AX+xlgniJVWi3qwaWAfvRyCRH+h8ZrM8jMO7hFc5hEdExtU9TaqZCDi8W37M+ouqrZ2DimcQUtiDe2UkmpliFqDSpx5rD3bZSFVQnb4XfsESt3mfsuAcyRVNTtc9aX9Qg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9ZKQnX9Vzts7Fq+oYW0edX3C5L04RZzGfYCFovxlY+I=;
 b=Q3jiI6j9v8PJU1XynKTsMw0ODbaNewgzStx2ClmShfjKKTZPvItB5lRSqghMCVrfq/LFQlf+cfSSK99IqRr/mFEJM0CvU/FFwVOUii0eNMqvZVuI4WyMa/s7kyloju4iFd/PbGzDN50eKv+2BSJzFVjcI0WZoLp6bacgJtVwX2OYBOwvMlVEP06xn+n4F4VAm8PiH67YV1NVcgrXFN6+qsswxjgIeMv0aroWJjENcunQj+qs7JJY8uPqYpskLwLBKXOO3mW9fqJfMk4tklyuypPZBTWcc4DS8CCM2mZqfvsKi+UyXS0Z+uFFivjrreRcUHXBYhTe/hXyeRUSo/lJdg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <cd9b9687-f8e5-cd25-b6e9-1028078ed7e3@suse.com>
Date: Mon, 25 Sep 2023 14:35:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] x86/i8259: do not assume interrupts always target CPU0
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230919110637.12078-1-roger.pau@citrix.com>
 <2b600963-6196-d6c4-8ab3-ab142c323f7b@suse.com>
 <ZRFkMsUcaLuNJwHR@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRFkMsUcaLuNJwHR@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0143.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:95::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB9594:EE_
X-MS-Office365-Filtering-Correlation-Id: dd7ed1cf-986c-408a-60ab-08dbbdc3de31
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Kmcb4f2XQ6XsYQm4+JG7F9Ra3YJPgRjijc7CzY+JelLSyCaN+cptu1V99Z0UbcHnMi90f1F39zHp0doWswaevvpVzqQWBqgLXFhJk/4At/RqNR8YnmWZ4kxlZtHYnK0SpBz3o3nl2I3ZtOVLrFmP8wfWWsGlGvwKDd1j96MofEW/aph+ykV7bzcebCn/uyU/1YLqNtxv4lnSLDmHyRQRpdWgqzT5nkMk4fjQELncALcy5lRxEle7Q3slIodjomKhoT1eh91qqw8gWWyPbMo0p0hmS+G+bzc7x+BvLs3mMKZ9Y+cWwPosZ9bvvOzWqnksN+mOSmheA624THVjjPQrPofVZ2VKUjcYQS1agqzECi9z7udYudxvNPFAaNSOlKDcwuOMP5p/inH+AjwZn4JaoOo/K0uwACNH4craHiD83xopzqj/URA3araLaw7eZigIz/f7vTFhdYhChynfS7WxcQ3EXZN1kiul+nHYFS7RJstTI9kAOhfIMYKXnDBvJPVU2X6D7KIUH4kQ1Bjcopkp4mGuhJk6jeCiLiOIlBvE1yIQH3hDQRlLIhePnnFtQ03VPOU2jXHjsVi/6lUb+B/zU2BIsTeTN81l4MrCneW6yEID661p1XZnI8SKCvmf9qZ8e760N1MgPUsiCdPlcHZNuQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(396003)(136003)(366004)(376002)(230922051799003)(186009)(1800799009)(451199024)(2906002)(86362001)(31696002)(53546011)(2616005)(26005)(6506007)(6512007)(36756003)(6486002)(83380400001)(38100700002)(966005)(478600001)(5660300002)(54906003)(66476007)(66556008)(66946007)(6916009)(8936002)(316002)(8676002)(4326008)(31686004)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZitaVmpNYmhIVzZ5dk1RY25RZjVtLzJhQnRCaEdUc21JRmtvbm8vUzJyZmMx?=
 =?utf-8?B?Wmx1dkdKaVp3OUZoV1ZNVjg0emw4YTRPdEQ5YTVQdWdhR25pa2g2dHNOVzdx?=
 =?utf-8?B?NmlPZ2RrbEtTS1NIR2I2OVBZQjJrWmtDaU5CcVl4YVFmN1FNY2xUcHRVci8v?=
 =?utf-8?B?b2xNemZZZWFjN29vOFJQQUMzN3BkWW11Rnk1Vk95aXd2TVh5aGdoTEVJL1FT?=
 =?utf-8?B?c3RRdkhFODdzd1ZNNEc2ZDg0a2RpWUg1MUxmNUJORVFSVkpIRlVkdVIxT05h?=
 =?utf-8?B?dGRzQ1Z4TCtjbDBQeXNlVnU0OGRIa29waVJUSWFXaGJndEZsUWJkbnJtM2FM?=
 =?utf-8?B?YXYwVjMyUVlWa0kwRm1LdkhYVXh5K0tTK29PNitXYUlBSUFSRHBtV3JVejYx?=
 =?utf-8?B?TFZvQlBoY1lRRTNDMTlIQ0lKY3JZRXRRZzE4WE5ma3FSSW1vRUJOVDNvbjY0?=
 =?utf-8?B?VlNrZ216VTlIRzlVYjZxRlRCWVA5UTlFQ2I3WVcwYzArU1BzNDQxWjA3SmdY?=
 =?utf-8?B?UUNEb1Q0Nm16OHpsbllvdTRiTVoyNTVNS1VlOXUrdjdHUlB4UWVyQzRZeHhp?=
 =?utf-8?B?bk9sTDFITWZXM0E1LzVxQjhSTm52WkVKdXA4M0ZFR3N0aUdHRGN0eGZOZTJj?=
 =?utf-8?B?NHo4dU5NMDgzYjZuVnp6QjRucW5tdWZzS1NnUzdiZHBxUnZrQzJ3bmpoMy9R?=
 =?utf-8?B?WDJ2L2ZNWVhsWHRxREdENndIMWtiOU9ZN0tERkFXRDdwejdwQ1g5SDBSbXFk?=
 =?utf-8?B?S0lqcUtKbHhMdmltckNjbWhKYndYNVRtOEhYQlZ1Zy9NanN5dURBenl4RDdw?=
 =?utf-8?B?eVVJdlRaeEIzdkxKTXJKbXNxK0tXNnhWM090T0srQmFmMmVhdTR5NDBRWWox?=
 =?utf-8?B?WUdKL3NoalkyZmgyMEN1WGtNbmlzT0h6eCtTRGYzWk82N0paKzVsZVZ6TDR4?=
 =?utf-8?B?ZUVtcEY3TUpVSS9VdjZsQlJPSXZXT3RpajlxbHpNTnU1b3Z4V21ZOFMycUxo?=
 =?utf-8?B?K3kwQWhuLzFvUFZXMGpURVhPOVI3R2V0Uy8rQzlqZWRYYytkcXJqdEhEQkwv?=
 =?utf-8?B?cTgzL1ZnS0p1VFpYMWRKYkpMbXlVY1RRS0J0VnlZQzQ2T1QzOENQWUlRYUVq?=
 =?utf-8?B?bXhOVXdTdjBwUzVIT0FNZndMNFk3NWI5OEJNcUQ1Q2h1VHJ6czdVMVJOVjBV?=
 =?utf-8?B?cVlqdGhHNndLeDd0ZmVZUWQyemJkcldvNWMrUGFqRlByWkhmQ1ZvNUtWaUxC?=
 =?utf-8?B?dUJIbWFvdFk1eGY2aU9GMEVZRTZLbTFuelVzVktneFJYdnJ2d1ZCenBHT01n?=
 =?utf-8?B?TlZGUXZjU3puRno1VUo5dnhZNUJpME5rdXE3dDdFRFB0cGlodGFScnU4NEVB?=
 =?utf-8?B?aUhvZUVkQjQyaWFlOWVjZGdYTGlNK21UYVZNWUg4cGtpa05MS2JIcW9waElz?=
 =?utf-8?B?MlFBMDRRT0FzVS91WGJEOG5od3haVXk4K01DelhrSzRzdWMwbnNXYWVZcUk1?=
 =?utf-8?B?cTNvSU03L0lMeHUyeDZRYUhQNWo5bGFwRlBOUXRwV0RjSFpIM083REJxQzRs?=
 =?utf-8?B?SWRVMzBBYTJsYW4zWjhiZGFSeE5ZTEZxREdhODJOdTJSejV6N3hpREtjMHlJ?=
 =?utf-8?B?cDI3OWpMd3RZY3ZoMWQyZEE4aHRVOWZVeUcvNURFTEhoeDVHMDNwQmFZclFY?=
 =?utf-8?B?Rng5U1JjaGRVakdCMUl5TDg0SmwxRUU2OTNLTEt6cm1LWTdralRqUi9QaWJX?=
 =?utf-8?B?WnpqVTNRWENCN05POGxlU1JFaHlPVVFVOG9abURUMTFYWjhFSlhaS2ZHRFZW?=
 =?utf-8?B?bWw5WFg5bUtuZVFlUktWamI3SHBheGExQUdjWTRLYXVzYWNVK1pIYXZmeE9z?=
 =?utf-8?B?ZXRtU1BlMTZJbVFKTnVjVnpBQXlWQ21oME83NUVMQ2Z1NEdwVkhrTlJjMHpX?=
 =?utf-8?B?TTMwS21zNXl2UFN0SHl4a2ljNjI0aG5sWERWRDU2Ulk4dmhZaFJpQlRJUEZQ?=
 =?utf-8?B?V09hWWZneWNPNWlOL2xhb2V6U1pZNVFudG9qOGk5TDZkUUcxNXVqM2RTVW9E?=
 =?utf-8?B?UmNjQVVtWE9KTkRSc3RmU05SQTdRRzFJdmEvbTBRK294VW1LU0d6WlNiWXlh?=
 =?utf-8?Q?nW+d/sDHVGzugI/JYI+fNnNJX?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: dd7ed1cf-986c-408a-60ab-08dbbdc3de31
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 12:35:14.8498
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 1Sd06peSGf2/05DRavBdas9KpXf9sLbPrODyK3vkBleXG7dMeeUw6Mgej4EuDgYjRfTgMK2HoQFCXcC/8B+Z+g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9594

On 25.09.2023 12:42, Roger Pau Monné wrote:
> On Mon, Sep 25, 2023 at 11:55:25AM +0200, Jan Beulich wrote:
>> On 19.09.2023 13:06, Roger Pau Monne wrote:
>>> Sporadically we have seen the following during AP bringup on AMD platforms
>>> only:
>>>
>>> microcode: CPU59 updated from revision 0x830107a to 0x830107a, date = 2023-05-17
>>> microcode: CPU60 updated from revision 0x830104d to 0x830107a, date = 2023-05-17
>>> CPU60: No irq handler for vector 27 (IRQ -2147483648)
>>> microcode: CPU61 updated from revision 0x830107a to 0x830107a, date = 2023-05-17
>>>
>>> This is similar to the issue raised on Linux commit 36e9e1eab777e, where they
>>> also observed i8259 (active) vectors getting delivered to CPUs different than
>>> 0.
>>>
>>> Adjust the target CPU mask of i8259 interrupt descriptors to contain all
>>> possible CPUs, so that APs will reserve the vector at startup if any legacy IRQ
>>> is still delivered through the i8259.  Note that if the IO-APIC takes over
>>> those interrupt descriptors the CPU mask will be reset.
>>>
>>> Spurious i8259 interrupt vectors however (IRQ7 and IRQ15) can be injected even
>>> when all i8259 pins are masked, and hence need to be handled on all CPUs.
>>> Reserve such vectors in order to prevent dynamic interrupt sources from using
>>> them.
>>>
>>> Finally, handle spurious i8259 interrupts on all CPUs and adjust the printed
>>> message to display the CPU where the spurious interrupt has been received, so
>>> it looks like:
>>>
>>> microcode: CPU1 updated from revision 0x830107a to 0x830107a, date = 2023-05-17
>>> cpu1: spurious 8259A interrupt: IRQ7
>>> microcode: CPU2 updated from revision 0x830104d to 0x830107a, date = 2023-05-17
>>>
>>> Fixes: 3fba06ba9f8b ('x86/IRQ: re-use legacy vector ranges on APs')
>>> Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
>>> ---
>>> One theory I have is that the APs at some point (before jumping into Xen code)
>>> have the local APIC hardware-disabled, and hence are considered valid targets
>>> by the i8259, but by the time the vector is fetched from the i8259 the
>>> interrupt has either been masked, or already consumed by a different CPU.
>>
>> Aiui with LAPIC disabled, IRQs should only be possible to go to CPU0,
>> for there simply not being any SMP without LAPICs.
>>
>> Did you check that there are unmasked ExtINT LVT0 on APs?
> 
> Yes, I did.  None of the APs LVT0 have ExtINT set, I was really hoping
> they would have ExtINT set, as this would then make sense.
> 
> Maybe there's a point before handling control to Xen (in firmware)
> where APs have ExtINT LVT0 set, I certainly have no idea about that.
> 
> Seeing Linux commit 36e9e1eab777e I get the impression that on AMD
> systems PIC interrupts are delivered to any CPU that either has LVT0
> ExtINT or the lapic hardware-disabled.  I have however found no
> information about this at all in the PM or PPRs.

Just to mention it: While that commit make some relevant remarks, its
purpose was to work with "noapic", and one of its chunks is even
wrapped in "#ifndef CONFIG_X86_IO_APIC".

>> And unmasked
>> PIC IRQs? (Although, for the latter, it could of course be that by the
>> time we gain control, they're all masked again, but an IRQ was in the
>> meantime classified as spurious.)
> 
> Even if there are unmasked PIC IRQs (which is not the case AFAICT), I
> would expect them to be delivered to CPU#0 because that's the only one
> that has ExtINT set in LVT0.
> 
>>> @@ -349,7 +350,20 @@ void __init init_IRQ(void)
>>>              continue;
>>>          desc->handler = &i8259A_irq_type;
>>>          per_cpu(vector_irq, cpu)[LEGACY_VECTOR(irq)] = irq;
>>> -        cpumask_copy(desc->arch.cpu_mask, cpumask_of(cpu));
>>> +
>>> +        /*
>>> +         * The interrupt affinity logic never targets interrupts to offline
>>> +         * CPUs, hence it's safe to use cpumask_all here.
>>> +         *
>>> +         * Legacy PIC interrupts are only targeted to CPU0, but depending on
>>> +         * the platform they can be distributed to any online CPU in hardware.
>>
>> I'm unaware of such a distribution mechanism. Do you have a reference? (If
>> I recall correctly, there needs to be a unique entity in the system that
>> runs the INTA protocol with the [master] PIC.)
> 
> This comment is mostly picked from Linux.  See:
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/x86/kernel/apic/vector.c#n842
> 
> As said, I haven't been able to find any reference to this in manuals,
> but given commit 36e9e1eab777e it does seem Linux has also experienced
> PIC interrupts being delivered to CPUs different than the BSP at least
> on AMD.
> 
>>> +         * The kernel has no influence on that. So all active legacy vectors
>>> +         * must be installed on all CPUs.
>>> +         *
>>> +         * IO-APIC will change the destination mask if/when taking ownership of
>>> +         * the interrupt.
>>> +         */
>>> +        cpumask_copy(desc->arch.cpu_mask, &cpumask_all);
>>>          desc->arch.vector = LEGACY_VECTOR(irq);
>>>      }
>>>      
>>> --- a/xen/arch/x86/irq.c
>>> +++ b/xen/arch/x86/irq.c
>>> @@ -466,6 +466,14 @@ int __init init_irq_data(void)
>>>            vector++ )
>>>          __set_bit(vector, used_vectors);
>>>  
>>> +    /*
>>> +     * Mark i8259 spurious vectors as used to avoid (re)using them.  Otherwise
>>> +     * it won't be possible to distinguish between device triggered interrupts
>>> +     * or spurious i8259 ones.
>>> +     */
>>
>> You certainly mean {L,IO}APIC device triggered interrupts here? If so, why
>> would they not be distinguishable? ExtINT IRQs don't set ISR bits, iirc.
> 
> Right, but we don't really check any of this when servicing the
> interrupt in do_IRQ if the vector has a valid irq associated.
> 
> So if we assign the vector used by PIC pin 7 (IRQ7) to an {L,IO}-APIC
> triggered interrupt, how would Xen distinguish a spurious PIC
> interrupt from a L,IO}-APIC originated one?
> 
> Check the LAPIC ISR for each vector in do_IRQ() seems like an
> unnecessary burden, and that would be a non-trivial overhead when
> running virtualized.
> 
> So yes, it's possible to distinguish them, but I'm not sure we want to
> engage in that logic in do_IRQ().

Right, and here my comment was merely to ask that the code comment please
make correct statements. Saying "we don't want to go as far" is quite
okay, as long as we're (kind of) happy with the undesirable effects of
the actual code change.

>>> +    __set_bit(LEGACY_VECTOR(7), used_vectors);
>>> +    __set_bit(LEGACY_VECTOR(15), used_vectors);
>>> +
>>>      return 0;
>>>  }
>>
>> Assuming no IRQs are handled through the PIC (which ought to be the case on
>> virtually all systems), we'd have masked all of them before any APs are
>> brought up. With them masked, aiui even spurious interrupts cannot occur.
> 
> It can occur if there was a pending interrupt in the PIC before
> the masking happens, however such spurious interrupt would be handled
> by the BSP then, as that's the only online CPU at that point (at least
> from Xen PoV).
> 
>> Still you're permanently removing close to 1% of an already known scarce
>> resource.
> 
> I don't have more arguments that what I've already exposed here.
> I could try to bring this up with AMD, but I'm unsure this will shed
> any light on the issue.
> 
> Another option is to not reserve the vectors, and assume that if the
> vectors are used for {IO,L]-APIC interrupts some spurious PIC
> interrupts might be incorrectly handled as device triggered
> interrupts.
> 
>> Can we, if at all, do this just temporarily, such that later on
>> the vectors can become usable again? (See also setup_local_APIC() for
>> ExtINT setup - only the BSP would ever have LVT0 unmasked once we've
>> finished with our setup.)
> 
> Yeah, I know, believe me I've spent a non-trivial amount of time trying
> to figure out what's going on.
> 
> I even modified iommu_dte_add_device_entry() to block ExtINT on all
> IOMMU devices (on the platform I was testing only the FCH had
> ACPI_IVHD_EINT_PASS set in IVRS device flags), and I would still get
> those spurious interrupts at AP bring up.

Which means there's pretty clearly something they're not telling us.

So if this affects AMD (and by implication Hygon) only, can we make
reserving those vectors at least AMD-only? That said, to be honest
from your reply it didn't really become clear what you think of trying
to not permanently remove those vectors. Of course I understand that
with the behavior unexplained and undocumented, there's some guesswork
involved in trying such a less aggressive approach.

Jan


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 12:58:42 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 12:58:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607874.946193 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qklAX-0005uE-Va; Mon, 25 Sep 2023 12:58:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607874.946193; Mon, 25 Sep 2023 12:58:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qklAX-0005u7-S2; Mon, 25 Sep 2023 12:58:33 +0000
Received: by outflank-mailman (input) for mailman id 607874;
 Mon, 25 Sep 2023 12:58:32 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qklAW-0005tx-H8; Mon, 25 Sep 2023 12:58:32 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qklAW-0006PD-3n; Mon, 25 Sep 2023 12:58:32 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qklAV-0006C3-R8; Mon, 25 Sep 2023 12:58:31 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qklAV-0001T8-QY; Mon, 25 Sep 2023 12:58:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=6fR4r85TEkZw4ienQcXnEYBMAKo5mc5XtlOe9vSMFaw=; b=vUwP3tYF1XDu0GjLo4vEyG3cT3
	dan9ehB1vHrZ1dso35Aei3nO4Z47YGn59zdTTJ2KtHIrXwY1XGnUMIyWQ0VqMI5DuAyUPycg5++rC
	Qi82gfgETadtEU4/3ka/diQxI8vCgh6+RuejQy6Fu76QiWO/osp+HMXrtcaAIAY2ErmA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183150-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183150: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:build-arm64-pvops:kernel-build:fail:regression
    xen-unstable:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-xsm:xen-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-arm64-arm64-examine:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:build-check(1):blocked:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=88a9501a848aade858a3bbda75f20cdf7c3c2f9a
X-Osstest-Versions-That:
    xen=88a9501a848aade858a3bbda75f20cdf7c3c2f9a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 25 Sep 2023 12:58:31 +0000

flight 183150 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183150/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-arm64-pvops             6 kernel-build             fail REGR. vs. 183140

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm  7 xen-install fail pass in 183140
 test-amd64-i386-xl-xsm        7 xen-install                fail pass in 183140
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183140

Tests which did not succeed, but are not blocking:
 test-arm64-arm64-examine      1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-raw  1 build-check(1)               blocked  n/a
 test-arm64-arm64-libvirt-xsm  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl           1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit1   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-credit2   1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-thunderx  1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-vhd       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl-xsm       1 build-check(1)               blocked  n/a
 test-arm64-arm64-xl         15 migrate-support-check fail in 183140 never pass
 test-arm64-arm64-xl-xsm     15 migrate-support-check fail in 183140 never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 183140 never pass
 test-arm64-arm64-xl     16 saverestore-support-check fail in 183140 never pass
 test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 183140 never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 183140 never pass
 test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 183140 never pass
 test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 183140 never pass
 test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 183140 never pass
 test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 183140 never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 183140 never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 183140 never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 183140 never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 183140 never pass
 test-arm64-arm64-xl-vhd     14 migrate-support-check fail in 183140 never pass
 test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 183140 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183140
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183140
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183140
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183140
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183140
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183140
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183140
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183140
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183140
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183140
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183140
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183140
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  88a9501a848aade858a3bbda75f20cdf7c3c2f9a
baseline version:
 xen                  88a9501a848aade858a3bbda75f20cdf7c3c2f9a

Last test of basis   183150  2023-09-25 01:53:36 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            fail    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          blocked 
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 blocked 
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      blocked 
 test-amd64-i386-xl-xsm                                       fail    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  blocked 
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  blocked 
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     blocked 
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 blocked 
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 blocked 
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      blocked 
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 16:06:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 16:06:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607899.946214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qko5m-0004Lu-BF; Mon, 25 Sep 2023 16:05:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607899.946214; Mon, 25 Sep 2023 16:05:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qko5m-0004Lo-7t; Mon, 25 Sep 2023 16:05:50 +0000
Received: by outflank-mailman (input) for mailman id 607899;
 Mon, 25 Sep 2023 16:05:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1il/=FJ=xenbits.xen.org=andrewcoop@srs-se1.protection.inumbo.net>)
 id 1qko5l-0004LH-1e
 for xen-devel@lists.xen.org; Mon, 25 Sep 2023 16:05:49 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 624eabf2-5bbd-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 18:05:47 +0200 (CEST)
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <andrewcoop@xenbits.xen.org>)
 id 1qko5Z-0002z9-Od; Mon, 25 Sep 2023 16:05:37 +0000
Received: from andrewcoop by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <andrewcoop@xenbits.xen.org>)
 id 1qko5Z-0003cF-KD; Mon, 25 Sep 2023 16:05:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 624eabf2-5bbd-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Date:Message-Id:Subject:CC:From:To:MIME-Version:
	Content-Transfer-Encoding:Content-Type;
	bh=lPmB8qQQXXuq9W/r6/iH+aRzO+9NkrUlusE1Zq/F/90=; b=v3AGhr0xJI5Z01nn0CKPu9Yp+S
	96eNghllz9dalMVS1WAZrKpjGWgqjM9aSNDEGe+QMDu9RXQZ/01hVnYkFnUg4+ok2lkxzA7VSJ5R6
	QmGVJf6I/Arru2hOcWi9ccFN/n6O3Bv1D7j8SZ4568C5/igjCI1xIqVHFOEtNQetSAbw=;
Content-Type: multipart/mixed; boundary="=separator"; charset="utf-8"
Content-Transfer-Encoding: binary
MIME-Version: 1.0
X-Mailer: MIME-tools 5.509 (Entity 5.509)
To: xen-announce@lists.xen.org, xen-devel@lists.xen.org,
 xen-users@lists.xen.org, oss-security@lists.openwall.com
From: Xen.org security team <security@xen.org>
CC: Xen.org security team <security-team-members@xen.org>
Subject: Xen Security Advisory 439 v1 (CVE-2023-20588) - x86/AMD: Divide
 speculative information leak
Message-Id: <E1qko5Z-0003cF-KD@xenbits.xenproject.org>
Date: Mon, 25 Sep 2023 16:05:37 +0000

--=separator
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

            Xen Security Advisory CVE-2023-20588 / XSA-439

             x86/AMD: Divide speculative information leak

ISSUE DESCRIPTION
=================

In the Zen1 microarchitecure, there is one divider in the pipeline which
services uops from both threads.  In the case of #DE, the latched result
from the previous DIV to execute will be forwarded speculatively.

This is a covert channel that allows two threads to communicate without
any system calls.  In also allows userspace to obtain the result of the
most recent DIV instruction executed (even speculatively) in the core,
which can be from a higher privilege context.

For more information, see:
 * https://www.amd.com/en/resources/product-security/bulletin/amd-sb-7008.html

IMPACT
======

An attacker might be able to infer data from a different execution
context on the same CPU core.

VULNERABLE SYSTEMS
==================

All versions of Xen are vulnerable.

Only AMD Zen1 CPUs are believed to be vulnerable.

MITIGATION
==========

There is no mitigation.

RESOLUTION
==========

The patches for Xen overwrite the buffer in the divider on the
return-to-guest path.

However, as with some prior speculative vulnerabilities, the fix is only
effective in combination with disabling SMT.  For the same reasons as
before, Xen does not disable SMT by default.

The system administrator is required to risk-assess their workload, and
choose whether to enable or disable SMT.  Xen will issue a warning if
SMT is active and the user has not provided an explicit choice via the
smt=<bool> command line option.

Details of the vulnerability became public before the Xen patches were
complete.  Hence the patches are already applied to the appropriate
trees.  They are:

Xen-unstable: 1c18d7377453^..b5926c6ecf05
Xen 4.17:     d2d2dcae879c^..9ac2f49f5fa3
Xen 4.16:     08539e8315fd^..de751c3d906d
Xen 4.15:     db3386e6cad6^..d7b78041dc81
-----BEGIN PGP SIGNATURE-----

iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAmURr2UMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZA1QH/RNSR1O6QJjd7z2gSGA9Yka7VWyYOMB2J01AaIl7
69zCRkpqg+baF1aQaAVR0fj39aF7M7xXrd/LSk+E4BBiCRSxxRzbWUGYn9qTLR9w
srbpGXqy0aWod9MiwfbTuEzf9uG8XpwOGoRg6p6YBRYE3WrQxIVnYY+KjeeToTEs
+UXZ0iZPrjaGaqKnF+PpkX4CMsqHhxk3iJw+ZFX2V4fVNRYgCOpjejmMjbWM4ABr
eSsCjTU92/YZvFOsTeIzu74h5yM6SH+XTPW2S8Ve5j3mk7sM8nIiYbIyTMWNCJID
HXeodt6eHjhZzV2z7f+/zEngnoITIqz+X3tRcTkHB9+H5jU=
=AtsG
-----END PGP SIGNATURE-----

--=separator--


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 16:09:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 16:09:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607931.946255 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qko8m-0006bL-Fp; Mon, 25 Sep 2023 16:08:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607931.946255; Mon, 25 Sep 2023 16:08:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qko8m-0006bC-DA; Mon, 25 Sep 2023 16:08:56 +0000
Received: by outflank-mailman (input) for mailman id 607931;
 Mon, 25 Sep 2023 16:08:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e0KE=FJ=zytor.com=hpa@srs-se1.protection.inumbo.net>)
 id 1qko8l-0006Yh-0j
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 16:08:55 +0000
Received: from mail.zytor.com (unknown [2607:7c80:54:3::138])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d1af8555-5bbd-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 18:08:53 +0200 (CEST)
Received: from [127.0.0.1] ([99.8.153.148]) (authenticated bits=0)
 by mail.zytor.com (8.17.1/8.17.1) with ESMTPSA id 38PG7vwg1512316
 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO);
 Mon, 25 Sep 2023 09:07:58 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d1af8555-5bbd-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 38PG7vwg1512316
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com;
	s=2023091101; t=1695658079;
	bh=D4dkY7ib239sJgAi09Fyq922U7t4CmCadoRO6xTmuuw=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=m+YYgtMYbvG0oSi6qazn8+RQFHlQXxy4UY2F0Rjs+LlWVTXbJbLPUJNxUdaSMUJq+
	 b7/To74zymNcjg+EeY5RtIp7nST07IEQfhIeHothUwS4zDyLxItkTUc7ZPCdMuN6BB
	 QRaFihbHEYpIbAfr/55Q5ZC5HWI0PCGLeubKxlwLdb8R4e9SC2t4rY7hPGQxGO8Nii
	 qQxaxc6FPDuDh2d7sdIIUuXNsw+noU3Xhr4VJg/M8+Fd03my+G3N4jdPz6q+N1Fzm2
	 kZF9LFH7Je5OllJOyYS8lR7SKuvShm49bOICGyBzUkB+iYLoG0co28aUJ0lbcNNhc1
	 sdrrP/d4qsEWQ==
Date: Mon, 25 Sep 2023 09:07:47 -0700
From: "H. Peter Anvin" <hpa@zytor.com>
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
        linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
        linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
        xen-devel@lists.xenproject.org
CC: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
        dave.hansen@linux.intel.com, x86@kernel.org, luto@kernel.org,
        pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
        jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
        andrew.cooper3@citrix.com, jiangshanlai@gmail.com,
        nik.borisov@suse.com
Subject: =?US-ASCII?Q?Re=3A_=5BPATCH_v11_35/37=5D_x86/syscall=3A_Split_ID?= =?US-ASCII?Q?T_syscall_setup_code_into_idt=5Fsyscall=5Finit=28=29?=
User-Agent: K-9 Mail for Android
In-Reply-To: <20230923094212.26520-36-xin3.li@intel.com>
References: <20230923094212.26520-1-xin3.li@intel.com> <20230923094212.26520-36-xin3.li@intel.com>
Message-ID: <D4167CD5-B619-448D-B660-24ABC0786E0A@zytor.com>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable

On September 23, 2023 2:42:10 AM PDT, Xin Li <xin3=2Eli@intel=2Ecom> wrote:
>Because FRED uses the ring 3 FRED entrypoint for SYSCALL and SYSENTER and
>ERETU is the only legit instruction to return to ring 3, there is NO need
>to setup SYSCALL and SYSENTER MSRs for FRED, except the IA32_STAR MSR=2E
>
>Split IDT syscall setup code into idt_syscall_init() to make it easy to
>skip syscall setup code when FRED is enabled=2E
>
>Suggested-by: Thomas Gleixner <tglx@linutronix=2Ede>
>Tested-by: Shan Kang <shan=2Ekang@intel=2Ecom>
>Signed-off-by: Xin Li <xin3=2Eli@intel=2Ecom>
>---
> arch/x86/kernel/cpu/common=2Ec | 13 ++++++++++---
> 1 file changed, 10 insertions(+), 3 deletions(-)
>
>diff --git a/arch/x86/kernel/cpu/common=2Ec b/arch/x86/kernel/cpu/common=
=2Ec
>index 20bbedbf6dcb=2E=2E2ee4e7b597a3 100644
>--- a/arch/x86/kernel/cpu/common=2Ec
>+++ b/arch/x86/kernel/cpu/common=2Ec
>@@ -2071,10 +2071,8 @@ static void wrmsrl_cstar(unsigned long val)
> 		wrmsrl(MSR_CSTAR, val);
> }
>=20
>-/* May not be marked __init: used by software suspend */
>-void syscall_init(void)
>+static inline void idt_syscall_init(void)
> {
>-	wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
> 	wrmsrl(MSR_LSTAR, (unsigned long)entry_SYSCALL_64);
>=20
> 	if (ia32_enabled()) {
>@@ -2108,6 +2106,15 @@ void syscall_init(void)
> 	       X86_EFLAGS_AC|X86_EFLAGS_ID);
> }
>=20
>+/* May not be marked __init: used by software suspend */
>+void syscall_init(void)
>+{
>+	/* The default user and kernel segments */
>+	wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
>+
>+	idt_syscall_init();
>+}
>+
> #else	/* CONFIG_X86_64 */
>=20
> #ifdef CONFIG_STACKPROTECTOR

Am I missing something, or is this patch a noop?


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 17:18:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 17:18:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607982.946272 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkpE9-0000jl-MM; Mon, 25 Sep 2023 17:18:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607982.946272; Mon, 25 Sep 2023 17:18:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkpE9-0000j8-Iq; Mon, 25 Sep 2023 17:18:33 +0000
Received: by outflank-mailman (input) for mailman id 607982;
 Mon, 25 Sep 2023 17:18:32 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1il/=FJ=xenbits.xen.org=andrewcoop@srs-se1.protection.inumbo.net>)
 id 1qkpE8-0000do-IJ
 for xen-devel@lists.xen.org; Mon, 25 Sep 2023 17:18:32 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 88238663-5bc7-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 19:18:28 +0200 (CEST)
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <andrewcoop@xenbits.xen.org>)
 id 1qkpDs-0004vH-06; Mon, 25 Sep 2023 17:18:16 +0000
Received: from andrewcoop by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <andrewcoop@xenbits.xen.org>)
 id 1qkpDr-0005W1-UI; Mon, 25 Sep 2023 17:18:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 88238663-5bc7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Date:Message-Id:Subject:CC:From:To:MIME-Version:
	Content-Transfer-Encoding:Content-Type;
	bh=1SeR4xn+wsNgQw8XgwMb9lXe9y838lCWovJEFN+RunU=; b=oxJl0jPqT1ibAXYpXztu3+sfO+
	+Vnlx+Mgz6IB0NtzNPsMWkmHd1s/ePd8uilCSY73JsDYmDJ4MTJV6fv4oNq+AfgHxJsLKXwj7Uun0
	spLxfMmtZOJa95Tz0zWY4XifMlQWrH0kIGUh2TauM22i/XZglUrQs+9teUPo1n0eiUN4=;
Content-Type: multipart/mixed; boundary="=separator"; charset="utf-8"
Content-Transfer-Encoding: binary
MIME-Version: 1.0
X-Mailer: MIME-tools 5.509 (Entity 5.509)
To: xen-announce@lists.xen.org, xen-devel@lists.xen.org,
 xen-users@lists.xen.org, oss-security@lists.openwall.com
From: Xen.org security team <security@xen.org>
CC: Xen.org security team <security-team-members@xen.org>
Subject: Xen Security Advisory 439 v2 (CVE-2023-20588) - x86/AMD: Divide
 speculative information leak
Message-Id: <E1qkpDr-0005W1-UI@xenbits.xenproject.org>
Date: Mon, 25 Sep 2023 17:18:15 +0000

--=separator
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

            Xen Security Advisory CVE-2023-20588 / XSA-439
                               version 2

             x86/AMD: Divide speculative information leak

UPDATES IN VERSION 2
====================

Version 1 accidentally linked to the wrong AMD bulletin.  This has been
corrected in v2.  All other information in v1 is believed to be correct.

ISSUE DESCRIPTION
=================

In the Zen1 microarchitecure, there is one divider in the pipeline which
services uops from both threads.  In the case of #DE, the latched result
from the previous DIV to execute will be forwarded speculatively.

This is a covert channel that allows two threads to communicate without
any system calls.  In also allows userspace to obtain the result of the
most recent DIV instruction executed (even speculatively) in the core,
which can be from a higher privilege context.

For more information, see:
 * https://www.amd.com/en/resources/product-security/bulletin/amd-sb-7007.html

IMPACT
======

An attacker might be able to infer data from a different execution
context on the same CPU core.

VULNERABLE SYSTEMS
==================

All versions of Xen are vulnerable.

Only AMD Zen1 CPUs are believed to be vulnerable.

MITIGATION
==========

There is no mitigation.

RESOLUTION
==========

The patches for Xen overwrite the buffer in the divider on the
return-to-guest path.

However, as with some prior speculative vulnerabilities, the fix is only
effective in combination with disabling SMT.  For the same reasons as
before, Xen does not disable SMT by default.

The system administrator is required to risk-assess their workload, and
choose whether to enable or disable SMT.  Xen will issue a warning if
SMT is active and the user has not provided an explicit choice via the
smt=<bool> command line option.

Details of the vulnerability became public before the Xen patches were
complete.  Hence the patches are already applied to the appropriate
trees.  They are:

Xen-unstable: 1c18d7377453^..b5926c6ecf05
Xen 4.17:     d2d2dcae879c^..9ac2f49f5fa3
Xen 4.16:     08539e8315fd^..de751c3d906d
Xen 4.15:     db3386e6cad6^..d7b78041dc81
-----BEGIN PGP SIGNATURE-----

iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAmURwLwMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZMjgIAI+pm7OnUq8EbuD6eyB7yDKBRwm9U7Hu2yrO47f0
CHO/HdMANfx0nCbpKS8+7GXa2gooJXgp3Fo0NGri2G0+hzXNQTsaGnMEMgBV7O0M
OXYzao39dhPATP4hi5bm0xPTZ+3zMaP06xvl7JqNqsPK8GFz/cZr/Hsz5r2boZRO
3FXEmbgsG2KTR5+HrSNoeA3LM9aoUqEiIq6oGxLaTr7UI6xK4FL5VFloWhS0r9yp
gD7HHP6NlV1Ysxt1xKCxf109HrzWEvih/Gd8hG6eqiHR+i2zyS1hna8Ll/sRFkOO
x9FpYHljtb3WKX9bUh4aZXdoAWRW0aR+SWcXToPSk5aFJiE=
=W6vz
-----END PGP SIGNATURE-----

--=separator--


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 17:37:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 17:37:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608050.946308 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkpWe-0006cA-Kr; Mon, 25 Sep 2023 17:37:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608050.946308; Mon, 25 Sep 2023 17:37:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkpWe-0006c3-Hz; Mon, 25 Sep 2023 17:37:40 +0000
Received: by outflank-mailman (input) for mailman id 608050;
 Mon, 25 Sep 2023 17:37:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jxCo=FJ=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qkpWd-0006bx-Si
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 17:37:39 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 36431a61-5bca-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 19:37:37 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 0B82D8285532;
 Mon, 25 Sep 2023 12:37:34 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id z3D3Nzuulzqd; Mon, 25 Sep 2023 12:37:33 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 258DD828558A;
 Mon, 25 Sep 2023 12:37:33 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id DyGofxECsnAy; Mon, 25 Sep 2023 12:37:32 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 118C18285532;
 Mon, 25 Sep 2023 12:37:31 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 36431a61-5bca-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 258DD828558A
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695663453; bh=B58IajLIJn5lWpII7dtSzVZCy5811ORBKN1wQPOAYXg=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=U9TloGABZZ7pBedTuv4EGozFVey8WRcchUJNtV1liL+pagpsYWH3huF5NUrWhrxQr
	 t4idJfop//PLdZgcdzU6/ZRvAIyTrb3dcsBWp8wtDi170ZXqdLLS1GpvjSR8vm5I54
	 woA5D+LOCioFcRnf0PKrEe8HBShyb79rWHN8Mkdw=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <1e451293-68df-e71e-0f2b-343dcf9a246f@raptorengineering.com>
Date: Mon, 25 Sep 2023 12:37:31 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v3 4/4] pdx: Add CONFIG_PDX_COMPRESSION as a common
 Kconfig option
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>,
 Alejandro Vallejo <alejandro.vallejo@cloud.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
 <julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Julien Grall <jgrall@amazon.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <20230808130220.27891-1-alejandro.vallejo@cloud.com>
 <20230808130220.27891-5-alejandro.vallejo@cloud.com>
 <d462f419-4cd2-53c4-7694-b43b7fa68d88@citrix.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <d462f419-4cd2-53c4-7694-b43b7fa68d88@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/22/23 3:03 PM, Andrew Cooper wrote:
> Several things.
> 
> First, Shawn: PPC has gained a HAS_PDX, the deletion of which needs
> merging into this patch.
> 
> It was added as part of 4a2f68f909304 which was "minimal to build". 
> This series address the issue you presumably encountered where pdx.c
> appears to be optional but wasn't.
>

That's correct, build was broken without HAS_PDX.

> 
> Do PPC platforms have (or potentially have) sparse RAM banks?
>

Yes, they do. Especially on POWER9, it is very common for there to be
large gaps in the physical address space between RAM banks.

> If like x86 the answer is definitely no, then you want to have
> PDX_COMPRESSION=n
> 
> If the answer is definitely yes always, then you want PDX_COMPRESSION=y
>
> If the answer is system specific, then you want to offer users a choice.

It looks like PDX_COMPRESSION=y would probably make the most sense for
ppc, but I'm not against making it a choice.

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 17:57:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 17:57:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608056.946317 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkppJ-0002Sj-1g; Mon, 25 Sep 2023 17:56:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608056.946317; Mon, 25 Sep 2023 17:56:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkppI-0002Sc-VI; Mon, 25 Sep 2023 17:56:56 +0000
Received: by outflank-mailman (input) for mailman id 608056;
 Mon, 25 Sep 2023 17:56:55 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=6yYl=FJ=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qkppH-0002SW-AG
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 17:56:55 +0000
Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.31])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e7348e75-5bcc-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 19:56:52 +0200 (CEST)
Received: from fmsmga001.fm.intel.com ([10.253.24.23])
 by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 25 Sep 2023 10:56:49 -0700
Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14])
 by fmsmga001.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 25 Sep 2023 10:55:46 -0700
Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by
 ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Mon, 25 Sep 2023 10:56:48 -0700
Received: from orsmsx603.amr.corp.intel.com (10.22.229.16) by
 ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Mon, 25 Sep 2023 10:56:47 -0700
Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by
 orsmsx603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Mon, 25 Sep 2023 10:56:47 -0700
Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.170)
 by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Mon, 25 Sep 2023 10:56:47 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by SA1PR11MB8349.namprd11.prod.outlook.com (2603:10b6:806:383::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Mon, 25 Sep
 2023 17:56:44 +0000
Received: from SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61]) by SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61%6]) with mapi id 15.20.6813.017; Mon, 25 Sep 2023
 17:56:44 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e7348e75-5bcc-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695664612; x=1727200612;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=8OgWyGhH3+em0WoRMrkANjuXHhelVH3ySHtgV6HXZ3A=;
  b=Trm+Vs4+jyHc3XTxrnfJsY+mozj+HqSPYxEu2C010GarOY8j+JNXSEro
   H1SW74FffonoK34ZrB14kQvoPPGGzpcTsmkK405thb+BgHnYRhtvKy9LO
   kEu5RKtkZTw6QewMPvgwj3/JufbQCn8isClltqNAP8cHGRJiPtNgANCcc
   196l8TQdpajWiDp9q6IVfUlJmXz/1ovHL58buCtLsPqCmWXUL0Vh6WHCt
   5Om873rHqmrMeHVFskqSlRmGl/p+hDuxlW2tPR5QBEctYOMTz7RdPY4vy
   pMOsGVkkpHp/2IZYiOiHdLqLhYOn8LDuY7Z8VpXPCBnkMQ0YP0StqNddi
   A==;
X-IronPort-AV: E=McAfee;i="6600,9927,10843"; a="445438071"
X-IronPort-AV: E=Sophos;i="6.03,175,1694761200"; 
   d="scan'208";a="445438071"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10843"; a="891781370"
X-IronPort-AV: E=Sophos;i="6.03,175,1694761200"; 
   d="scan'208";a="891781370"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MmQDA+L+I2dioKL3EH0h07ZFQ8PDzlYAITAXcn0cqCcjaQCdd+hYJxIdPtQ1wj1LMzxPTaVVg/q4lKTzrn+o7D4ueZ02pKz2s0dVkKkMGk+W7Jv/1mO2igYK0V6ryjFX/kQfmhQ6+jzG6UVsgrP9IfYPW3u6QUisRmBivS9+1oWZfOOuH3lOY6KKLOsdbCmfji9prLKXJ1rEQakDcm7od0FC4STWnIM9Bs9Q0hQYBKy/JE/iEyqNnr3nZt9wd6XZoJSTh3x2vo6rYwkO/Vy5aQTiyhB6/4P4wBk2R3eLavOn/x3JpnELOdhQGrCtia0cs8++tqVJqgIrxk8IQ2RqrA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8OgWyGhH3+em0WoRMrkANjuXHhelVH3ySHtgV6HXZ3A=;
 b=Z602iOoN6UtlY1ik77riMhmyFhFXUqEPlBGE5KTqVR17jizqtT2I97XCWoLU4LEMx8RFmjUbJWZWrAMyLf3mOia3okqpNsq+9/zBveARMIaTQUEiysUB8Rer4tP2HO+0wzDTQqkvyYLytjMQHS3Z/izsazrE8iiraLuwNY2jpCR8pjsCu1Rk4ZGkgyH8NrjViWJPBh2w0WglZfTXRthBhP1BXMcdkmMTEMgnhCIntuYhTne6GbY8c653G+4raXvo4yvP24p9uwNxVIYSTOCyijeFBWc0TJSihdqRxlUB+qAKw/60eQ3y5a2LKSt7/r5LdWSh2pUeAd/tidXH0qtQmA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Li, Xin3" <xin3.li@intel.com>
To: "H. Peter Anvin" <hpa@zytor.com>, "linux-doc@vger.kernel.org"
	<linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
	<linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
	<linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
	<linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "tglx@linutronix.de" <tglx@linutronix.de>, "mingo@redhat.com"
	<mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>, "x86@kernel.org"
	<x86@kernel.org>, "Lutomirski, Andy" <luto@kernel.org>, "pbonzini@redhat.com"
	<pbonzini@redhat.com>, "Christopherson,, Sean" <seanjc@google.com>,
	"peterz@infradead.org" <peterz@infradead.org>, "Gross, Jurgen"
	<jgross@suse.com>, "Shankar, Ravi V" <ravi.v.shankar@intel.com>,
	"mhiramat@kernel.org" <mhiramat@kernel.org>, "andrew.cooper3@citrix.com"
	<andrew.cooper3@citrix.com>, "jiangshanlai@gmail.com"
	<jiangshanlai@gmail.com>, "nik.borisov@suse.com" <nik.borisov@suse.com>
Subject: RE: [PATCH v11 35/37] x86/syscall: Split IDT syscall setup code into
 idt_syscall_init()
Thread-Topic: [PATCH v11 35/37] x86/syscall: Split IDT syscall setup code into
 idt_syscall_init()
Thread-Index: AQHZ7gbj6LYYw3ax602r6dWz9pQ+t7AruMuAgAAdkCA=
Date: Mon, 25 Sep 2023 17:56:44 +0000
Message-ID: <SA1PR11MB673481413BA6522B01218297A8FCA@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
 <20230923094212.26520-36-xin3.li@intel.com>
 <D4167CD5-B619-448D-B660-24ABC0786E0A@zytor.com>
In-Reply-To: <D4167CD5-B619-448D-B660-24ABC0786E0A@zytor.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SA1PR11MB6734:EE_|SA1PR11MB8349:EE_
x-ms-office365-filtering-correlation-id: 65b14c02-9d70-4712-8795-08dbbdf0c7ce
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: v16Em4V9b3GfQIZ7xcCNCZAGmHKtj+5azXCRtNMT0Gy1t6HSoJhx+CU7+GPXdDZaLsbU8XtGyU59VBN2ealS9TRs1pVXELnKZBIjaKWgTRTxNYgJaREBK9hE6drk+or7/h9rHikhrZfyO5FpEUCCpwjHqkFXFh9WKPcesSQ1CGwQaxRo5Y3Jw49ChXiySgXCWYLQOveuEDon/XK4zl9+3sc6WXKreNhSrUGrjPFtwsyLrQN0TvG3+aAaIELRb2ft1dbZHVNyPVwGsdc5gJ0GneLn+LPQol+TCxnYYdWRWTmRcyfjJIcwsVPVU8KEfUYhEEqHgNzj6fQZNS26FFjEquyb2mJndRqpRtHMbnedBlKt5TO0QKhyjcQj1TA9UB5J1Sji7fApR+tZgGaJeorL7nq1Ty24bQreA/84x1ICySxks458skEoD0GrMbMroycx4+Iw3Ax12V4iu8UgEcvZm+MEw5YtdxOtUA/fhCIUiqbwTn/LmXxeJt355Ruc+IlnHKKCjCbQvcDCZm0+yo+Nb4qvNUrc+l7kRKZZbtCOLYb9g6W3nbKiNp2A4HbuboPNdkHRCl8l1yUdqPWx7pqIb/34o5kEzKMEy5XHEaFKcswDE3ckXHgvEkSS6WrssnF3
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6734.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(39860400002)(396003)(346002)(366004)(230922051799003)(451199024)(186009)(1800799009)(52536014)(82960400001)(6506007)(7696005)(71200400001)(9686003)(110136005)(26005)(55016003)(478600001)(2906002)(83380400001)(66446008)(66556008)(5660300002)(66946007)(66476007)(7416002)(8676002)(54906003)(64756008)(8936002)(41300700001)(316002)(76116006)(4326008)(38100700002)(38070700005)(122000001)(86362001)(33656002);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?YWZBMUFQS2dWbDhnTVBGSlREWVIzWHNTMDQ4bE54QmxTeWt0dllneUc5bjdz?=
 =?utf-8?B?WDk4OVgrb2h0ZjloZUNwdDd2aWhVUXRabmpaRll1WERtWS9McitUejJZaHd3?=
 =?utf-8?B?Vndlc0ZpdTFsaEI3VEtycVhLWGpLWkhjVGlWZXdlNFNhMjl6NDZ1Mjk5QkU4?=
 =?utf-8?B?eFZ1TGJsRG5RU254Q3dzRVAzdmFPSEwwL2JJaFhuU2dJMUpXWTlNTzlXN2Zl?=
 =?utf-8?B?alFLelY0QUZXdldrak5SbVhucTBxZWxZR2VxN1pINDdMZE9zV1BHTWhiTHpj?=
 =?utf-8?B?ZDFkMXBta1FtK0htajBzZ2FsNTNaVVQ5UG9Tc1d0TUhHaXdCTDBCVGMrMzln?=
 =?utf-8?B?SHFIbUdndzVMenZJOHpxUnpyNnFMa2ZEWnVjWHFCQU1zNnBDaDVsSWNvR2Nx?=
 =?utf-8?B?L3BBYXpxb20vUFhyeEpkSzIrSXJmOFo4Wk5nMUJ2TFMvM010eUZXYnhLUUNW?=
 =?utf-8?B?T2F6WjFmVG5ESkNHdXoyYll0anRTeEhScm1Vcmo1Y20zU01ENk96UTVxTUVv?=
 =?utf-8?B?VkdzNkNkQkFYU1FMV01HSlRIWE05ZDVKOWZKbnBkNGNpV2hSRFMxdFlYUThk?=
 =?utf-8?B?bitXN1UwYmxDOGl6bnJvNloyUVlvUUI0QzA1dzR5SnVOdFMrc0hqa0xhOGRD?=
 =?utf-8?B?aWV0bEtYWWxRU012QWpqeDViTjA3V0thYmR2L3Q4dmhOdHJYMmlJZ2x4WVFj?=
 =?utf-8?B?NDdsSjBDNmtvc1dqYTQzTEx2ckRkbUlQbC9qL1d5bHVKOVNpWUtKMTk2d2hn?=
 =?utf-8?B?Q0VIYk11WUdXeTRNaTBReFh1VWxjSGxObGFhV3JEYTRJSVVzc1lUdkpUenp1?=
 =?utf-8?B?RmxOTmR0ai9CeTdRbk5sZm5aYnJUdy9YSE5QNEpkbkxPNXFYMEUyWU5wRno5?=
 =?utf-8?B?UnJqUzVYbnVMQkFaaHRNSnNXcDJpbk5VTzYzY0VhL2dwbG9mSVJtSTNySUFq?=
 =?utf-8?B?S2ZOQnZNRUI5emhOZk1JTEdsUW9nRHRsdVdoRy9DNzczaHBNQ0Nzc1FsbWZT?=
 =?utf-8?B?MEovd2FESC80TFZlY09sVEMyQ3NIQjUrcFg3Vk81SFNXWmpkUVFxTmRDSFYy?=
 =?utf-8?B?c3pocjZzQTVCWStTZ0JUcVREdytFcWJYTFVTNTJVRWxpVTNUVDRSM3Y4RGQ5?=
 =?utf-8?B?V0Fta2JYV2F6TVU5WUt3cUlFWEJVb3U4eXdkSVd5dHcvMmJTbXlScTlQOTJH?=
 =?utf-8?B?Nyt3OTY3eVg2NUhVQnpzblloYXhrZlBQeXV6K0V5d3ZVZmVLL1dTQ2tKWjJx?=
 =?utf-8?B?WGdvZERWY0Z4dFRnNWVaWVdIVW1zVHZKR05rMFVFSUptOFo5ajBqRGFNWFR1?=
 =?utf-8?B?T3o5ZGNBSXZDaDhRWHkyRnY3Vm1aL0pYd0cxMVI4UHU0akJheHNPY2pKdEg0?=
 =?utf-8?B?ckR4SkxXZTdGOFBhMkE3UVlubzRhbjRZQktrSjBDOGJRQzdqN2ZnVS9VRk1X?=
 =?utf-8?B?dlpHSUY3Z2xFT3hDbkdQZnpSSUs4bExCcGlJbEVxN2ZLRGY4dzZJeEZhczI5?=
 =?utf-8?B?djI2YWhNanRuTmJ6VzBqdlpFZkZPS1BOc3BhVWNJdmF0TG5sUktYTVo0cGVa?=
 =?utf-8?B?TkVNVEpRSjJnSW5ZLzREa1MrY2dPSFZTQ1kwaEFiVW9waWVVYmJjcXVLNzk1?=
 =?utf-8?B?Tzlham1ra2tpdkdPeE1NeXErRWhMNHVubys1ZW1nQnBIenRKSzBRU1N4WTBK?=
 =?utf-8?B?dTh6TmZQMDhkS3l2Mmszc3Q1VjNJWHp1UkR4SlNkRDZ2ZXkvcy8yT3JtcmJY?=
 =?utf-8?B?eWJjQW1vRHVpSnZqUjd6STBwQTRXbFZkWjdxdGdHZHMveUY5ZTcxZWVjWDhH?=
 =?utf-8?B?Zm9ZUWFrc0lsbWNWWUJ3NzFpZkRCLzdSWmxXL3F1eG54WXVYSWc5SDdNQmlx?=
 =?utf-8?B?RW9kQTVEYm80bkdDbm8wQUwraHpJNnFoV1FMY1JzQWVpZW5HWE9GVXpnVG1X?=
 =?utf-8?B?elhtSTZhakZwZWI3QUQ0NWtpUkw4eTN3MGtoeWtveEphdnVxSitscXNxYXdk?=
 =?utf-8?B?RjlMY2dpVHVadmpxUnBjaDVVb2hybEJwSUo5enQ2cVNsNFhadUJ1V3hSREZM?=
 =?utf-8?B?UFFjZlNjb3hyanVFdDFSUldwb1VJSUxWc3FFQjloUGxKa1pnU0Z5YVZZS25G?=
 =?utf-8?Q?8ZtM=3D?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6734.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 65b14c02-9d70-4712-8795-08dbbdf0c7ce
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Sep 2023 17:56:44.4490
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: Atv4K+biwUDTmIagcFwHbcjUEstXcchp+WrcIwTGI6tmuM1zr2s59kcNWQ8cXoAdIGE74KHVop63wDnYONqBsg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR11MB8349
X-OriginatorOrg: intel.com

PiA+ZGlmZiAtLWdpdCBhL2FyY2gveDg2L2tlcm5lbC9jcHUvY29tbW9uLmMNCj4gPmIvYXJjaC94
ODYva2VybmVsL2NwdS9jb21tb24uYyBpbmRleCAyMGJiZWRiZjZkY2IuLjJlZTRlN2I1OTdhMyAx
MDA2NDQNCj4gPi0tLSBhL2FyY2gveDg2L2tlcm5lbC9jcHUvY29tbW9uLmMNCj4gPisrKyBiL2Fy
Y2gveDg2L2tlcm5lbC9jcHUvY29tbW9uLmMNCj4gPkBAIC0yMDcxLDEwICsyMDcxLDggQEAgc3Rh
dGljIHZvaWQgd3Jtc3JsX2NzdGFyKHVuc2lnbmVkIGxvbmcgdmFsKQ0KPiA+IAkJd3Jtc3JsKE1T
Ul9DU1RBUiwgdmFsKTsNCj4gPiB9DQo+ID4NCj4gPi0vKiBNYXkgbm90IGJlIG1hcmtlZCBfX2lu
aXQ6IHVzZWQgYnkgc29mdHdhcmUgc3VzcGVuZCAqLyAtdm9pZA0KPiA+c3lzY2FsbF9pbml0KHZv
aWQpDQo+ID4rc3RhdGljIGlubGluZSB2b2lkIGlkdF9zeXNjYWxsX2luaXQodm9pZCkNCj4gPiB7
DQo+ID4tCXdybXNyKE1TUl9TVEFSLCAwLCAoX19VU0VSMzJfQ1MgPDwgMTYpIHwgX19LRVJORUxf
Q1MpOw0KPiA+IAl3cm1zcmwoTVNSX0xTVEFSLCAodW5zaWduZWQgbG9uZyllbnRyeV9TWVNDQUxM
XzY0KTsNCj4gPg0KPiA+IAlpZiAoaWEzMl9lbmFibGVkKCkpIHsNCj4gPkBAIC0yMTA4LDYgKzIx
MDYsMTUgQEAgdm9pZCBzeXNjYWxsX2luaXQodm9pZCkNCj4gPiAJICAgICAgIFg4Nl9FRkxBR1Nf
QUN8WDg2X0VGTEFHU19JRCk7DQo+ID4gfQ0KPiA+DQo+ID4rLyogTWF5IG5vdCBiZSBtYXJrZWQg
X19pbml0OiB1c2VkIGJ5IHNvZnR3YXJlIHN1c3BlbmQgKi8gdm9pZA0KPiA+K3N5c2NhbGxfaW5p
dCh2b2lkKSB7DQo+ID4rCS8qIFRoZSBkZWZhdWx0IHVzZXIgYW5kIGtlcm5lbCBzZWdtZW50cyAq
Lw0KPiA+Kwl3cm1zcihNU1JfU1RBUiwgMCwgKF9fVVNFUjMyX0NTIDw8IDE2KSB8IF9fS0VSTkVM
X0NTKTsNCj4gPisNCj4gPisJaWR0X3N5c2NhbGxfaW5pdCgpOw0KPiA+K30NCj4gPisNCj4gPiAj
ZWxzZQkvKiBDT05GSUdfWDg2XzY0ICovDQo+ID4NCj4gPiAjaWZkZWYgQ09ORklHX1NUQUNLUFJP
VEVDVE9SDQo+IA0KPiBBbSBJIG1pc3Npbmcgc29tZXRoaW5nLCBvciBpcyB0aGlzIHBhdGNoIGEg
bm9vcD8NCg0KWWVzLCB0aGlzIGlzIGEgbm9vcCwganVzdCBhIGNsZWFudXAgcGF0Y2ggdy9vIGZ1
bmN0aW9uYWxpdHkgY2hhbmdlLg0KDQo=


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 18:11:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 18:11:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608065.946328 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkq39-0006Ef-BM; Mon, 25 Sep 2023 18:11:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608065.946328; Mon, 25 Sep 2023 18:11:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkq39-0006EY-8M; Mon, 25 Sep 2023 18:11:15 +0000
Received: by outflank-mailman (input) for mailman id 608065;
 Mon, 25 Sep 2023 18:11:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jxCo=FJ=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qkq37-0006CB-GR
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 18:11:13 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e76e5e59-5bce-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 20:11:10 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 45D9F8285190;
 Mon, 25 Sep 2023 13:11:09 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id CJjrGQbRkn7h; Mon, 25 Sep 2023 13:11:07 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id C799D828556B;
 Mon, 25 Sep 2023 13:11:07 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id PRqRV2614bKw; Mon, 25 Sep 2023 13:11:07 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 914288285190;
 Mon, 25 Sep 2023 13:11:07 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e76e5e59-5bce-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com C799D828556B
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695665467; bh=PveyGtbqZtJ73LuTrgM5cgpKVjcNUW8ZMGjMgt/CeA4=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=HQzeEvwEyhXXBVNTvmTcRbM6kuZb/vPRGXZMsaWL554T8EgnkoRV3pZLXRnHPl5sO
	 OmFgcENJnzEgPJyUmStDRq3vI1eDCHsNmqnuKJhLgWQERccX4BVnTlx9Rv5UIC/emu
	 RkJqi58KXcrA1L7acP1YYZbAmjkSQaoAj3iXbhV8=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <752d163b-7830-9150-0757-8cadc22309f7@raptorengineering.com>
Date: Mon, 25 Sep 2023 13:11:06 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: xen | Failed pipeline for staging | ea36ac0d
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <65096f918e2e5_29a56047619e@gitlab-sidekiq-catchall-v2-84c6ffbc68-bt8nn.mail>
 <9aa0fad3-4132-8444-fb3f-8e1d542652e6@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <9aa0fad3-4132-8444-fb3f-8e1d542652e6@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/19/23 5:21 AM, Jan Beulich wrote:
> On 19.09.2023 11:53, GitLab wrote:
>>
>>
>> Pipeline #1009404353 has failed!
>>
>> Project: xen ( https://gitlab.com/xen-project/xen )
>> Branch: staging ( https://gitlab.com/xen-project/xen/-/commits/staging )
>>
>> Commit: ea36ac0d ( https://gitlab.com/xen-project/xen/-/commit/ea36ac0de27c2a7c847a2a52c3e0f97a45864d81 )
>> Commit Message: xen/ppc: Enable full Xen build
>>
>> Bring ppc's Mak...
>> Commit Author: Shawn Anastasio
>> Committed by: Jan Beulich ( https://gitlab.com/jbeulich )
>>
>>
>> Pipeline #1009404353 ( https://gitlab.com/xen-project/xen/-/pipelines/1009404353 ) triggered by Ganis ( https://gitlab.com/ganis )
>> had 5 failed jobs.
>>
>> Job #5118269375 ( https://gitlab.com/xen-project/xen/-/jobs/5118269375/raw )
>>
>> Stage: build
>> Name: debian-bullseye-gcc-ppc64le-debug-randconfig
> 
> This and ...
> 
>> Job #5118269256 ( https://gitlab.com/xen-project/xen/-/jobs/5118269256/raw )
>>
>> Stage: analyze
>> Name: eclair-x86_64
>> Job #5118269373 ( https://gitlab.com/xen-project/xen/-/jobs/5118269373/raw )
>>
>> Stage: build
>> Name: debian-bullseye-gcc-ppc64le-randconfig
> 
> ... this imo can't be expected to work. Is it really useful to run randconfig
> tests on ports which are only in the process of being brought up?
>

Agreed, randconfig could probably use dropping for now. I'll prepare a
patch.

>> Job #5118269370 ( https://gitlab.com/xen-project/xen/-/jobs/5118269370/raw )
>>
>> Stage: build
>> Name: debian-bullseye-gcc-ppc64le-debug
>> Job #5118269369 ( https://gitlab.com/xen-project/xen/-/jobs/5118269369/raw )
>>
>> Stage: build
>> Name: debian-bullseye-gcc-ppc64le
> 
> These two, otoh, look to be a result of the tests pre-seeding xen/.config with
> CONFIG_DEBUG settings, followed by making the olddefconfig goal. That, aiui,
> isn't picking up xen/arch/*/configs/*_defconfig, which at this point is
> mandatory for PPC (and likely is going to be so also for RISC-V once the full
> build is enabled there), at least as far as some of the option disables there
> go.
> 
> I think this wants switching to making the defconfig goal, and substituting
> CONFIG_DEBUG in the resulting .config. Due to x86'es and Arm's defconfig-s
> all being empty, this ought to be no change in what exactly is being tested
> there.
>

These two have KBUILD_DEFCONFIG set to ppc64_defconfig in their
configuration (build.yaml:552), so I'm not sure what exactly needs to be
changed in order to get the desired behavior.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 18:33:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 18:33:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608072.946341 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkqOg-0002MV-7L; Mon, 25 Sep 2023 18:33:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608072.946341; Mon, 25 Sep 2023 18:33:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkqOg-0002MO-3F; Mon, 25 Sep 2023 18:33:30 +0000
Received: by outflank-mailman (input) for mailman id 608072;
 Mon, 25 Sep 2023 18:33:28 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qkqOe-0002MI-QG
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 18:33:28 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qkqOe-0006uz-CN; Mon, 25 Sep 2023 18:33:28 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qkqOe-00020B-5s; Mon, 25 Sep 2023 18:33:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=Fuix1avwfmcAPWyXGNOfh55VhzAnJtmnl0NVoXcCljI=; b=bl//sYNBiZjxfxDbG72l5fxPGS
	Yw/i9/QWWsDjKHjTyopWyHs2wrrWB1ISgQoYK56y59Y2wIsnFhUNJbfY1MJlyeYkwMhvZix8E71H/
	gYPnlNqp4nEXWyfUDCyv8NnrsjC02EWUqEb3105J5FexQoT7vBquMSDUCPV82HO4Xrps=;
Message-ID: <d4ab6108-b190-437e-bd15-af9afb086794@xen.org>
Date: Mon, 25 Sep 2023 19:33:26 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: [for-4.18] Re: [PATCH v2] ARM: GICv3 ITS: flush caches for newly
 allocated ITT
Content-Language: en-GB
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Stewart Hildebrand <stewart.hildebrand@amd.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Henry Wang <Henry.Wang@arm.com>
References: <20230922222710.1383808-1-volodymyr_babchuk@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230922222710.1383808-1-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

(Adding [for-4.18] in the title for Henry to spot the request)

On 22/09/2023 23:27, Volodymyr Babchuk wrote:
> ITS manages Device Tables and Interrupt Translation Tables on its own,
> so generally we are not interested in maintaining any coherence with
> CPU's view of those memory regions, except one case: ITS requires that
> Interrupt Translation Tables should be initialized with
> zeroes. Existing code already does this, but it does not cleans
> caches afterwards. This means that ITS may see un-initialized ITT and
> CPU can overwrite portions of ITT later, when it finally decides to
> flush caches. Visible effect of this issue that there are not
> interrupts delivered from a device.
> 
> Fix this by calling clean_and_invalidate_dcache_va_range() for newly
> allocated ITT.
> 

I would consider to add:

Fixes: 69082e1c210d ("ARM: GICv3 ITS: introduce device mapping")

> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>

Reviewed-by: Julien Grall <jgrall@amazon.com>

@Henry, this patch should be low-risk. We are cleaning & invalidating 
the cache, so there should be no change for platform not requiring cache 
maintenance. This should hopefully had support for more platform. Note 
that the GICv3 ITS feature is still experimental.

Based on what I wrote above, would you be OK to have this patch in 4.18?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 18:56:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 18:56:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608078.946351 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkql1-0007eL-V0; Mon, 25 Sep 2023 18:56:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608078.946351; Mon, 25 Sep 2023 18:56:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkql1-0007eE-SB; Mon, 25 Sep 2023 18:56:35 +0000
Received: by outflank-mailman (input) for mailman id 608078;
 Mon, 25 Sep 2023 18:56:34 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=e0KE=FJ=zytor.com=hpa@srs-se1.protection.inumbo.net>)
 id 1qkql0-0007e6-Fq
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 18:56:34 +0000
Received: from mail.zytor.com (unknown [2607:7c80:54:3::138])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3c9f3cf7-5bd5-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 20:56:31 +0200 (CEST)
Received: from [127.0.0.1] ([98.35.210.218]) (authenticated bits=0)
 by mail.zytor.com (8.17.1/8.17.1) with ESMTPSA id 38PItrU61594472
 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO);
 Mon, 25 Sep 2023 11:55:54 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3c9f3cf7-5bd5-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 38PItrU61594472
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com;
	s=2023091101; t=1695668155;
	bh=+Wk81MPh67CoIuv1N5UsWm+ABYR52enaoMH5X3S/E48=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=U9AXizoIZ2cgdmQqbEb/gMZHT1paPtcyR4HTtYsA4abVlRgQNaDJo3Xs5rSVjuTYL
	 4PGq94Op6XVwbf0cbOD82XobVAPbL5L31ZWCHS3a3X4RI6/Br1wZUcjU9wJcisiGsL
	 R76oVPfn+eh04Mz+CBo3TCnCPT9uq/nzM81rqtqcQ2XeSKfnFkez/TmST6HZikGxGA
	 PsrWR9jA/RsQgk/uTSShBKZg38lMORnnCn0m4eroue4/Wyn4Q9kDL7dOaZvODeOcM9
	 YkqKBwdY/pmfScNcBV8sBi6RmZz2+eUmwpiqblpLrGBAJsC+E3hM6GPrV4rDvbgLWW
	 ZuOnGMLj15MXA==
Date: Mon, 25 Sep 2023 11:55:50 -0700
From: "H. Peter Anvin" <hpa@zytor.com>
To: "Li, Xin3" <xin3.li@intel.com>,
        "linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
        "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
        "linux-edac@vger.kernel.org" <linux-edac@vger.kernel.org>,
        "linux-hyperv@vger.kernel.org" <linux-hyperv@vger.kernel.org>,
        "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
        "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "tglx@linutronix.de" <tglx@linutronix.de>,
        "mingo@redhat.com" <mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
        "dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>,
        "x86@kernel.org" <x86@kernel.org>,
        "Lutomirski, Andy" <luto@kernel.org>,
        "pbonzini@redhat.com" <pbonzini@redhat.com>,
        "Christopherson,, Sean" <seanjc@google.com>,
        "peterz@infradead.org" <peterz@infradead.org>,
        "Gross, Jurgen" <jgross@suse.com>,
        "Shankar, Ravi V" <ravi.v.shankar@intel.com>,
        "mhiramat@kernel.org" <mhiramat@kernel.org>,
        "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
        "jiangshanlai@gmail.com" <jiangshanlai@gmail.com>,
        "nik.borisov@suse.com" <nik.borisov@suse.com>
Subject: =?US-ASCII?Q?RE=3A_=5BPATCH_v11_35/37=5D_x86/syscall=3A_Split_ID?= =?US-ASCII?Q?T_syscall_setup_code_into_idt=5Fsyscall=5Finit=28=29?=
User-Agent: K-9 Mail for Android
In-Reply-To: <SA1PR11MB673481413BA6522B01218297A8FCA@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230923094212.26520-1-xin3.li@intel.com> <20230923094212.26520-36-xin3.li@intel.com> <D4167CD5-B619-448D-B660-24ABC0786E0A@zytor.com> <SA1PR11MB673481413BA6522B01218297A8FCA@SA1PR11MB6734.namprd11.prod.outlook.com>
Message-ID: <69867C92-3A02-469A-9B77-2E202A4D4A0F@zytor.com>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable

On September 25, 2023 10:56:44 AM PDT, "Li, Xin3" <xin3=2Eli@intel=2Ecom> w=
rote:
>> >diff --git a/arch/x86/kernel/cpu/common=2Ec
>> >b/arch/x86/kernel/cpu/common=2Ec index 20bbedbf6dcb=2E=2E2ee4e7b597a3 =
100644
>> >--- a/arch/x86/kernel/cpu/common=2Ec
>> >+++ b/arch/x86/kernel/cpu/common=2Ec
>> >@@ -2071,10 +2071,8 @@ static void wrmsrl_cstar(unsigned long val)
>> > 		wrmsrl(MSR_CSTAR, val);
>> > }
>> >
>> >-/* May not be marked __init: used by software suspend */ -void
>> >syscall_init(void)
>> >+static inline void idt_syscall_init(void)
>> > {
>> >-	wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
>> > 	wrmsrl(MSR_LSTAR, (unsigned long)entry_SYSCALL_64);
>> >
>> > 	if (ia32_enabled()) {
>> >@@ -2108,6 +2106,15 @@ void syscall_init(void)
>> > 	       X86_EFLAGS_AC|X86_EFLAGS_ID);
>> > }
>> >
>> >+/* May not be marked __init: used by software suspend */ void
>> >+syscall_init(void) {
>> >+	/* The default user and kernel segments */
>> >+	wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
>> >+
>> >+	idt_syscall_init();
>> >+}
>> >+
>> > #else	/* CONFIG_X86_64 */
>> >
>> > #ifdef CONFIG_STACKPROTECTOR
>>=20
>> Am I missing something, or is this patch a noop?
>
>Yes, this is a noop, just a cleanup patch w/o functionality change=2E
>
>

It just seems to be completely redundant=2E We can just drop it, no? If we=
 aren't going to explicitly clobber the registers there is no harm in setti=
ng them up for IDT unconditionally=2E


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 18:57:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 18:57:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608082.946361 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkqlu-00089p-7J; Mon, 25 Sep 2023 18:57:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608082.946361; Mon, 25 Sep 2023 18:57:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkqlu-00089O-4A; Mon, 25 Sep 2023 18:57:30 +0000
Received: by outflank-mailman (input) for mailman id 608082;
 Mon, 25 Sep 2023 18:57:28 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qkqls-00089E-QF
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 18:57:28 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qkqls-0007VB-Hx; Mon, 25 Sep 2023 18:57:28 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qkqls-0002pK-B4; Mon, 25 Sep 2023 18:57:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=VGVrASqdKrV1vbkKsT2pHMhZ3iZHRCtaOcauvZ/RjBc=; b=QDMt5Vd+hINkcSP/44Am/L+iV3
	kgXp79GOVr2ZBWR2r+OzDs6qps6hWWPZInORHfLByyUAmfMqkYVRyjGoJkjZAn14P9stGGLdIBX5F
	QqS7LMlX+XnMwPgV/W2dbIYi2aEQtvI4nB0pTPTjPVriZNTbFLt6pejisDHH5EELyQXQ=;
Message-ID: <48bb2e22-ba78-4f45-9783-d9e5f83e75d8@xen.org>
Date: Mon, 25 Sep 2023 19:57:26 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v6 06/13] xen/arm: Split page table related code to
 mmu/pt.c
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Wei Chen <wei.chen@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Penny Zheng <penny.zheng@arm.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-7-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230828013224.669433-7-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

I haven't checked that the code movement is just a code movement. For 
now, I am mainly looking at the split.

On 28/08/2023 02:32, Henry Wang wrote:
> The extraction of MMU related code is the basis of MPU support.
> This commit starts this work by firstly splitting the page table
> related code to mmu/pt.c, so that we will not end up with again
> massive mm.c files.
> 
> Introduce a mmu specific directory and setup the Makefiles for it.
> Move the page table related functions and macros from arch/arm/mm.c
> to arch/arm/mmu/pt.c. Expose the previously static global variable
> "phys_offset".

I don't much like the idea to expose phys_offset everywhere. Looking at 
the code there are two users:
   * pte_of_xenaddr(): I realize you suggested to add it in pt.c and I 
agreed. However, looking at the split, this function is exclusively used 
for boot (and you confirmed below). So I think it would be preferable to 
move it in mmu/setup.c.
   * prepare_secondary_mm(): I think we could switch to virt_to_mfn().

I can understand if you don't want to make the second change. So I would 
at least request to ...

> 
> While moving, mark pte_of_xenaddr() as __init to make clear that
> this helper is only intended to be used during early boot.
> 
> Take the opportunity to fix the in-code comment coding styles when
> possible, and drop the unnecessary #include headers in the original
> arch/arm/mm.c.
> 
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
> ---
> v6:
> - Rework the original patch "[v5,07/13] xen/arm: Extract MMU-specific
>    code", only split the page table related code out in this patch.
> ---
>   xen/arch/arm/Makefile         |   1 +
>   xen/arch/arm/include/asm/mm.h |   2 +

... declare phys_offset in asm/mmu/mm.h because this variable doesn't 
make a lot of sense when the MPU is used (it will always be equal to 0).

The rest of the split looks good to me.


[...]

> -lpae_t pte_of_xenaddr(vaddr_t va)
> -{
> -    paddr_t ma = va + phys_offset;
> -
> -    return mfn_to_xen_entry(maddr_to_mfn(ma), MT_NORMAL);
> -}
> -

See above. I think this should stay here for now and the be moved to 
setup.c in a follow-up patch.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 19:00:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 19:00:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608088.946370 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkqow-0001GN-Ky; Mon, 25 Sep 2023 19:00:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608088.946370; Mon, 25 Sep 2023 19:00:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkqow-0001GG-IQ; Mon, 25 Sep 2023 19:00:38 +0000
Received: by outflank-mailman (input) for mailman id 608088;
 Mon, 25 Sep 2023 19:00:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NadZ=FJ=epam.com=prvs=36323676f0=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qkqov-0001G9-Gs
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 19:00:37 +0000
Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com
 [148.163.133.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ce417412-5bd5-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 21:00:35 +0200 (CEST)
Received: from pps.filterd (m0174676.ppops.net [127.0.0.1])
 by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38PF90ct016303; Mon, 25 Sep 2023 19:00:09 GMT
Received: from eur03-dba-obe.outbound.protection.outlook.com
 (mail-dbaeur03lp2171.outbound.protection.outlook.com [104.47.51.171])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3tbckes02f-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Mon, 25 Sep 2023 19:00:08 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by AS4PR03MB8181.eurprd03.prod.outlook.com (2603:10a6:20b:4f7::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 19:00:04 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::f606:63f7:5875:6076]) by VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::f606:63f7:5875:6076%4]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 19:00:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ce417412-5bd5-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Yysm/82hI7XzKvnTv0h7sHT1Hfcej1SHuxuzoK7bEihCsCF9p9evDMdGLxrN+pAItrzvxlQmOqrguo1rlF2rgBMlZrV+YJtYZDq0gEZDR3amOcXDEDc/ACNAcrslGwaSHaq2/HGBsn5w16wKNZDI84pDRx/IsO76ybZ0so7vnmFnBNIx1xcQJIoshQgIMvVj6nRnTdommyauf1O5yaIuRBEMRJw95q8C7z7xlYHd5tRrxxEV65OTmi45/pEm9eB8QsJUTWQZ4OQ0OxGJ8QbbHU0ebzR4jk0xk/iteadtgdYzWs1u7cMgoCmvD0VNLZJ/RxD2Sa5TTrkEpwDy1g1Qcg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Q/OmtigUtL1lxpsBRCVJyMs0Iq3fnMq4OK68yx0cMR8=;
 b=Dv56OZ2XMB72srEMt8/ismsPPwqGuQSFxcoqY91Vjc4zGEr7+gTTm59YkdRb/D4D/89rH3LtJ6alKGG+jFQ0d4XWmBT2wMU5fak/eovuMAGbiI6M6sRV52maHk07lzniwvtF1TBUOgwYCuh1LgsJhekaJf2MYPsZ7T0IRszpcu0kIUQaH4aUOghKWrcqHjp4xy7sSqO1Nn87BU3x/xa7wJJalbEVCuPIyQxnJJOBWOu2V/x9b+Roo0X6jSGN7OgXSlSWe4pwPnMNZCvP3YOcb/QVWW2v/eMLRWMbZBw5uH0Yk8y1K0PTG1fv5BzL250vil5LguIPSEHcFCjaTkRqCA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Q/OmtigUtL1lxpsBRCVJyMs0Iq3fnMq4OK68yx0cMR8=;
 b=CvxaTgWUiHTjWcxKuZVM23SSY7ukk3b0bew/ZvLjHKKQ/AxNRL5+pekMUsihvHUbxfDNqtiPQF0LyXL4u9+iN+jsaDw/CkWeQYJy/QNQiFFlHEzQ6SmfM7Yinv4Ym1OiEXM3PD6Pua7FMpQZB+R1d0HOY6446oO+RWuJwSN1YegCy7Agy7MDuzbqKXXN0I6H9grPnSWis6MHRz+Z1/k6zwochzDPr+T4tYa56i5p0iGFClww/SKp0pPs0pZrMSVN9aENrh3n/9v0DiVCW2KySOCSiX14DL3RLVDpHbF5azz/8xH9TwYULbTCD6PM+Psa7Fmr1uUgRL95kel/2JKLKQ==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: Julien Grall <julien@xen.org>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
        Stewart
 Hildebrand <stewart.hildebrand@amd.com>,
        Stefano Stabellini
	<sstabellini@kernel.org>,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Henry
 Wang <Henry.Wang@arm.com>
Subject: Re: [for-4.18] Re: [PATCH v2] ARM: GICv3 ITS: flush caches for newly
 allocated ITT
Thread-Topic: [for-4.18] Re: [PATCH v2] ARM: GICv3 ITS: flush caches for newly
 allocated ITT
Thread-Index: AQHZ7aPwbLIfEqCF/k2PKMU6gFIgCrAr4kMAgAAG4gA=
Date: Mon, 25 Sep 2023 19:00:04 +0000
Message-ID: <87lecudqon.fsf@epam.com>
References: <20230922222710.1383808-1-volodymyr_babchuk@epam.com>
 <d4ab6108-b190-437e-bd15-af9afb086794@xen.org>
In-Reply-To: <d4ab6108-b190-437e-bd15-af9afb086794@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: mu4e 1.10.7; emacs 29.1
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|AS4PR03MB8181:EE_
x-ms-office365-filtering-correlation-id: 5efb0185-ddb6-471f-5a2a-08dbbdf9a088
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 yUfD4+WK/9KvT2Z0v1jhflpM3p9Yi9j28ZwGZ8DpHvvYxDx/rvT4eBdlTHR2wT2wsERNPxVQL71GUlTYyZTIplRqv1tRYfN7vlDRSAyIVKO0uPYnRoC5cBifG07xw7YMKxjqE8YWZ86jm/2wpg4CHDCaY61q+kC1z3EmuEl7EdnWI/FKVyTUlNByXq2Z4QFbxqOSQbYFN87rjMWILILXOfdnUMjfGIt74zBlPTPAmCz/OPXnAASKg/k1v/U64OiClXIAUcgiAuaEmz1S+PuQNEfjL5E5Z0UVS5PZ2EuE2Oi/iHRt/ypwkh9bwHeUQEM/VO0ZbO6hfGnUwJCOjsNkWoTltIokhSl7UrnHtRzsAvqOFbDV09cvAozTVrMtfU+RDuInVxvvkEDUwcNDZjYNq/Av+lRt5Yj203FMSyWGNRZNbtFqDIjk5Nu5VQ5Q6C5B7K+sTWJZUrpSRITwOYh1Bp0vmni49kIhr1+Q+vc4u5x3T0dRRolWghNI1hgV7OWXiSts4U9qsP8g/0+bx5KY/ZREa1jSADatSkhr6zLDOGJQiJZi8gXLaoxh71fjWGkOxa+3GJCj/Co6TW7gfOWxUQt3pPKRifQLYewL8MEHCw35lm19iIZE0cJZsbCDolkb
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(376002)(396003)(39860400002)(366004)(230922051799003)(1800799009)(186009)(451199024)(6506007)(53546011)(6512007)(26005)(55236004)(6486002)(71200400001)(2616005)(66476007)(66556008)(66446008)(86362001)(76116006)(66946007)(91956017)(64756008)(38070700005)(478600001)(122000001)(38100700002)(83380400001)(54906003)(2906002)(4326008)(8936002)(8676002)(36756003)(5660300002)(6916009)(316002)(41300700001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?iso-8859-1?Q?t8TpCvv9SpS0pzBopqi4sFgwhRLnwmI040eEAjAY7IrYp4JvvEwTIPpAeo?=
 =?iso-8859-1?Q?tNVpTHEfq6jcX7AiZZtYPlcDzzweVYdmESQQeGoloth7yO+BIrJeYA5/cm?=
 =?iso-8859-1?Q?TEL9rCKHuTwVWctDUXj2+ILg+ue6pQ6/HYn/oRBjhyw/NTxaJFh/pfqCow?=
 =?iso-8859-1?Q?lIPwFjnl3Ax1CuXN8KoZImHJ6IgMHQs0CvUk7Q8LDSd8e6cCYnIHgJRUEQ?=
 =?iso-8859-1?Q?Fb1dIljt2ovKG0zYXPAoLksmYof15hZ7+fqqRwTtXszMArd8+RozrKP70H?=
 =?iso-8859-1?Q?AFkq1xVB73eF4dj2XytnSuE+9Vd3EBn95JZdqrKl9zxDE3WEoMeqCeQMID?=
 =?iso-8859-1?Q?+xQUJOhWSqMwRSFYh3S2HlPbpuJZSvG9wsYKzzq6gAEj3cts22s2r91ofL?=
 =?iso-8859-1?Q?oJ0FAUPafkKL6LFE3D24fUPnFb0UTj2YcV/u7QYWrnLb6BppdoVBMMzENm?=
 =?iso-8859-1?Q?qRRh6Y+i5O+Nk1EuZkDLnvOLtb7A1WuU48YSGxRK6E7JYmL/PJNX8jVOCA?=
 =?iso-8859-1?Q?OHUuPPepkBkZwEcEC5BfoTg0EoPLib0iXtBfc+/8lkH5RMDmf4lXsiIVHR?=
 =?iso-8859-1?Q?mJ0JVAe1d2IUPNLAgWHOAnwsFlkUIv5MR4rflB+hgsmebrpbwbX7Xpi31+?=
 =?iso-8859-1?Q?CyR6xd8xTGhDo6SpMshB5RH5IUsdynIiWS8c5BqHD7V+xtVNVAKoL+KlnO?=
 =?iso-8859-1?Q?60ZroIFzocJ5Ua4gsXQiFzebYgs5rrTTotrKFYi6pxZOXFqbF/SH220qKl?=
 =?iso-8859-1?Q?M2ui/CuijnfzmUmRMZmJVoTYwLk6raUqusrb2P2b/ej7nHYPsjFHM19ju6?=
 =?iso-8859-1?Q?+ohME3sk9BkIg9vLZ3gpMXMArIeJSra5Ph6LpvddkoAT3gkGscw3K+Lud2?=
 =?iso-8859-1?Q?g/Bn9fs5I9b9O+lmv2JoQWRALzW7NrkaQTB4HNEaQnuknwfnpSYLl5lSym?=
 =?iso-8859-1?Q?8myyTmWDZGhx+/s+6weqSrNHfyprmD+fct2pCHKHs9zOmFSTXEFyWXGipU?=
 =?iso-8859-1?Q?ZQb0+NZadBc00/daQM0AWyJCCbyuz6eAMXObI9TgMwk4bWhCmxeulvmmYc?=
 =?iso-8859-1?Q?YqCM5meYQEMbAt49F503JXII7N3POXUIGvnBu24o6JDulR2EbhHIsais51?=
 =?iso-8859-1?Q?+4YLUq3Miw+ZeSPvGwlkw6fV+eBw5Xb9uerv7btALfzNEFoJEe7OFRe4Yk?=
 =?iso-8859-1?Q?W5xRGmyizX4fp6y7W0TozffgYjUDZyYJC+ql7jKdKwYoa+NJWh9b/WN2ef?=
 =?iso-8859-1?Q?H/eWY7U5XZDawBPjSHKMBEgC+HldiDBl+i6IZl1HKcdXLEyJWT4QFc1sFm?=
 =?iso-8859-1?Q?i/ClVV/C8ZqT6ARN9zECcqL2VmAVgGrWAO9BbTKyUF5/UuYUSO/y86zcD8?=
 =?iso-8859-1?Q?68hfgo2nXakg51Lvpmm+ShTvP1sXd+eXigNZMEe5rKtqS3ppp32socN6jz?=
 =?iso-8859-1?Q?vdAaUtSvGp6S+Bbf4Tt5d766RvpHb2abIuhYE0MRC+ZbNaDgsV6psj1b8q?=
 =?iso-8859-1?Q?Fzs0xeyf+A0VJIUkGefgVu2oCGutrSoDtED5DQgDrPI5Ltt+4ZdhifsEPL?=
 =?iso-8859-1?Q?OdmyUXvimpIuqlV6UYSpuSjJUphAhZSUg0vJGR+Uta046awbCgicIbGQKq?=
 =?iso-8859-1?Q?gZyO8cSX4ZfHjqHAqRdpU9Twe/q9GzDI7dM5LuWA/V5WmW/TnlEtMMjg?=
 =?iso-8859-1?Q?=3D=3D?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5efb0185-ddb6-471f-5a2a-08dbbdf9a088
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Sep 2023 19:00:04.0500
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: /xypYmrMSa+p9JZxxGAm6cVRjlf2WnYcw34pKXUHtLQTMUfG7VZdv0UP3do+QjeZmV7rnyjWmyYSlneWac6RPLBce2KtznZqSw5VyJPt5kM=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR03MB8181
X-Proofpoint-ORIG-GUID: 1BIRCYRrtHfk9HS4IxIE12M5ayYwXj2J
X-Proofpoint-GUID: 1BIRCYRrtHfk9HS4IxIE12M5ayYwXj2J
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-09-25_16,2023-09-25_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501
 mlxlogscore=676 lowpriorityscore=0 bulkscore=0 mlxscore=0 adultscore=0
 suspectscore=0 phishscore=0 impostorscore=0 malwarescore=0 spamscore=0
 clxscore=1011 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2309250148


Hi Julien, Henry,

Julien Grall <julien@xen.org> writes:

> Hi,
>
> (Adding [for-4.18] in the title for Henry to spot the request)
>
> On 22/09/2023 23:27, Volodymyr Babchuk wrote:
>> ITS manages Device Tables and Interrupt Translation Tables on its own,
>> so generally we are not interested in maintaining any coherence with
>> CPU's view of those memory regions, except one case: ITS requires that
>> Interrupt Translation Tables should be initialized with
>> zeroes. Existing code already does this, but it does not cleans
>> caches afterwards. This means that ITS may see un-initialized ITT and
>> CPU can overwrite portions of ITT later, when it finally decides to
>> flush caches. Visible effect of this issue that there are not
>> interrupts delivered from a device.
>> Fix this by calling clean_and_invalidate_dcache_va_range() for newly
>> allocated ITT.
>>=20
>
> I would consider to add:
>
> Fixes: 69082e1c210d ("ARM: GICv3 ITS: introduce device mapping")

May I ask you (or Henry?) to add this when you'll commit this change? Or
should I publish an updated version?

>> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
>
> Reviewed-by: Julien Grall <jgrall@amazon.com>
>
> @Henry, this patch should be low-risk. We are cleaning & invalidating
> the cache, so there should be no change for platform not requiring
> cache maintenance. This should hopefully had support for more
> platform. Note that the GICv3 ITS feature is still experimental.
>
> Based on what I wrote above, would you be OK to have this patch in 4.18?


--=20
WBR, Volodymyr=


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 19:14:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 19:14:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608096.946381 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkr1l-0004rj-U8; Mon, 25 Sep 2023 19:13:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608096.946381; Mon, 25 Sep 2023 19:13:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkr1l-0004rc-R8; Mon, 25 Sep 2023 19:13:53 +0000
Received: by outflank-mailman (input) for mailman id 608096;
 Mon, 25 Sep 2023 19:13:51 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qkr1j-0004rW-SL
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 19:13:51 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qkr1j-0007yu-KI; Mon, 25 Sep 2023 19:13:51 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qkr1j-0003gn-Ex; Mon, 25 Sep 2023 19:13:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=K6qGTVmv7+soL2pl0jwKIt8jDr2v923IggDtx+r1+n0=; b=1nsxZMHzJkWPiB2wvUYFnD6bOS
	+WpQ2nnQ/tDsK+q9RRdXS1rX9D+q+wxvwCbJEA15KNe09PVwa7vQeqXeNb4SeCwUnJwYl1UhSu4Kp
	qb+p8d9qoobtSI03t+gBAMS9UTU2uG09IrYJyTu6RMS6NC1q69ptXg/erD7AvXV4BEi0=;
Message-ID: <d38de2e7-c691-4203-a267-a8c7bd42fe71@xen.org>
Date: Mon, 25 Sep 2023 20:13:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v6 07/13] xen/arm: Split MMU system SMP MM bringup code to
 mmu/smpboot.c
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Wei Chen <wei.chen@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 Penny Zheng <penny.zheng@arm.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-8-Henry.Wang@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230828013224.669433-8-Henry.Wang@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Henry,

On 28/08/2023 02:32, Henry Wang wrote:
> Move the code related to secondary page table initialization, clear
> boot page tables and the global variable definitions of these boot
> page tables from arch/arm/mm.c to arch/arm/mmu/smpboot.c
> 
> Drop the "static" attribute of arm32 global variable cpu0_pgtable,
> and declare it in the arm32 mm.h header, because this variable
> will be used by both arch/arm/mm.c and arch/arm/mmu/smpboot.c.

I don't think you need to export cpu0_pgtable. You can instead replace 
use with per_cpu(xen_pgtable, 0).

> 
> Take the opportunity to fix the in-code comment coding styles when
> possible.
> 
> Signed-off-by: Henry Wang <Henry.Wang@arm.com>
> Signed-off-by: Penny Zheng <penny.zheng@arm.com>
> ---
> v6:
> - Rework the original patch "[v5,07/13] xen/arm: Extract MMU-specific
>    code", only split the smpboot related code out in this patch.
> ---
>   xen/arch/arm/include/asm/arm32/mm.h |   1 +
>   xen/arch/arm/mm.c                   | 103 +----------------------
>   xen/arch/arm/mmu/Makefile           |   1 +
>   xen/arch/arm/mmu/smpboot.c          | 121 ++++++++++++++++++++++++++++
>   4 files changed, 124 insertions(+), 102 deletions(-)
>   create mode 100644 xen/arch/arm/mmu/smpboot.c
> 
> diff --git a/xen/arch/arm/include/asm/arm32/mm.h b/xen/arch/arm/include/asm/arm32/mm.h
> index 856f2dbec4..0e149945f9 100644
> --- a/xen/arch/arm/include/asm/arm32/mm.h
> +++ b/xen/arch/arm/include/asm/arm32/mm.h
> @@ -6,6 +6,7 @@
>   #include <asm/lpae.h>
>   
>   DECLARE_PER_CPU(lpae_t *, xen_pgtable);
> +extern DEFINE_PAGE_TABLE(cpu0_pgtable);
>   
>   /*
>    * Only a limited amount of RAM, called xenheap, is always mapped on ARM32.
> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
> index b42814077c..f3ef0da0e3 100644
> --- a/xen/arch/arm/mm.c
> +++ b/xen/arch/arm/mm.c
> @@ -27,39 +27,6 @@
>   #undef mfn_to_virt
>   #define mfn_to_virt(mfn) __mfn_to_virt(mfn_x(mfn))
>   
> -/* Static start-of-day pagetables that we use before the allocators
> - * are up. These are used by all CPUs during bringup before switching
> - * to the CPUs own pagetables.
> - *
> - * These pagetables have a very simple structure. They include:
> - *  - XEN_VIRT_SIZE worth of L3 mappings of xen at XEN_VIRT_START, boot_first
> - *    and boot_second are used to populate the tables down to boot_third
> - *    which contains the actual mapping.
> - *  - a 1:1 mapping of xen at its current physical address. This uses a
> - *    section mapping at whichever of boot_{pgtable,first,second}
> - *    covers that physical address.
> - *
> - * For the boot CPU these mappings point to the address where Xen was
> - * loaded by the bootloader. For secondary CPUs they point to the
> - * relocated copy of Xen for the benefit of secondary CPUs.
> - *
> - * In addition to the above for the boot CPU the device-tree is
> - * initially mapped in the boot misc slot. This mapping is not present
> - * for secondary CPUs.
> - *
> - * Finally, if EARLY_PRINTK is enabled then xen_fixmap will be mapped
> - * by the CPU once it has moved off the 1:1 mapping.
> - */
> -DEFINE_BOOT_PAGE_TABLE(boot_pgtable);
> -#ifdef CONFIG_ARM_64
> -DEFINE_BOOT_PAGE_TABLE(boot_first);
> -DEFINE_BOOT_PAGE_TABLE(boot_first_id);
> -#endif
> -DEFINE_BOOT_PAGE_TABLE(boot_second_id);
> -DEFINE_BOOT_PAGE_TABLE(boot_third_id);
> -DEFINE_BOOT_PAGE_TABLE(boot_second);
> -DEFINE_BOOT_PAGE_TABLES(boot_third, XEN_NR_ENTRIES(2));
> -
>   /* Main runtime page tables */
>   
>   /*
> @@ -80,7 +47,7 @@ static DEFINE_PAGE_TABLE(xen_first);
>   DEFINE_PER_CPU(lpae_t *, xen_pgtable);
>   #define THIS_CPU_PGTABLE this_cpu(xen_pgtable)
>   /* Root of the trie for cpu0, other CPU's PTs are dynamically allocated */
> -static DEFINE_PAGE_TABLE(cpu0_pgtable);
> +DEFINE_PAGE_TABLE(cpu0_pgtable);
>   #endif
>   
>   /* Common pagetable leaves */
> @@ -277,13 +244,6 @@ static void xen_pt_enforce_wnx(void)
>       flush_xen_tlb_local();
>   }
>   
> -/* Clear a translation table and clean & invalidate the cache */
> -static void clear_table(void *table)
> -{
> -    clear_page(table);
> -    clean_and_invalidate_dcache_va_range(table, PAGE_SIZE);
> -}
> -
>   /* Boot-time pagetable setup.
>    * Changes here may need matching changes in head.S */
>   void __init setup_pagetables(unsigned long boot_phys_offset)
> @@ -362,67 +322,6 @@ void __init setup_pagetables(unsigned long boot_phys_offset)
>   #endif
>   }
>   
> -static void clear_boot_pagetables(void)
> -{
> -    /*
> -     * Clear the copy of the boot pagetables. Each secondary CPU
> -     * rebuilds these itself (see head.S).
> -     */
> -    clear_table(boot_pgtable);
> -#ifdef CONFIG_ARM_64
> -    clear_table(boot_first);
> -    clear_table(boot_first_id);
> -#endif
> -    clear_table(boot_second);
> -    clear_table(boot_third);
> -}
> -
> -#ifdef CONFIG_ARM_64
> -int init_secondary_pagetables(int cpu)
> -{
> -    clear_boot_pagetables();
> -
> -    /* Set init_ttbr for this CPU coming up. All CPus share a single setof
> -     * pagetables, but rewrite it each time for consistency with 32 bit. */
> -    init_ttbr = (uintptr_t) xen_pgtable + phys_offset;
> -    clean_dcache(init_ttbr);
> -    return 0;
> -}
> -#else
> -int init_secondary_pagetables(int cpu)
> -{
> -    lpae_t *first;
> -
> -    first = alloc_xenheap_page(); /* root == first level on 32-bit 3-level trie */
> -
> -    if ( !first )
> -    {
> -        printk("CPU%u: Unable to allocate the first page-table\n", cpu);
> -        return -ENOMEM;
> -    }
> -
> -    /* Initialise root pagetable from root of boot tables */
> -    memcpy(first, cpu0_pgtable, PAGE_SIZE);
> -    per_cpu(xen_pgtable, cpu) = first;
> -
> -    if ( !init_domheap_mappings(cpu) )
> -    {
> -        printk("CPU%u: Unable to prepare the domheap page-tables\n", cpu);
> -        per_cpu(xen_pgtable, cpu) = NULL;
> -        free_xenheap_page(first);
> -        return -ENOMEM;
> -    }
> -
> -    clear_boot_pagetables();
> -
> -    /* Set init_ttbr for this CPU coming up */
> -    init_ttbr = __pa(first);
> -    clean_dcache(init_ttbr);
> -
> -    return 0;
> -}
> -#endif
> -
>   /* MMU setup for secondary CPUS (which already have paging enabled) */
>   void mmu_init_secondary_cpu(void)
>   {
> diff --git a/xen/arch/arm/mmu/Makefile b/xen/arch/arm/mmu/Makefile
> index bdfc2e077d..0e82015ee1 100644
> --- a/xen/arch/arm/mmu/Makefile
> +++ b/xen/arch/arm/mmu/Makefile
> @@ -1 +1,2 @@
>   obj-y += pt.o
> +obj-y += smpboot.o
> diff --git a/xen/arch/arm/mmu/smpboot.c b/xen/arch/arm/mmu/smpboot.c
> new file mode 100644
> index 0000000000..a673989d09
> --- /dev/null
> +++ b/xen/arch/arm/mmu/smpboot.c
> @@ -0,0 +1,121 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +/*
> + * xen/arch/arm/mmu/smpboot.c
> + *
> + * MMU system secondary CPUs MM bringup code.
> + */
> +
> +#include <xen/domain_page.h>
> +
> +/*
> + * Static start-of-day pagetables that we use before the allocators
> + * are up. These are used by all CPUs during bringup before switching
> + * to the CPUs own pagetables.
> + *
> + * These pagetables have a very simple structure. They include:
> + *  - XEN_VIRT_SIZE worth of L3 mappings of xen at XEN_VIRT_START, boot_first
> + *    and boot_second are used to populate the tables down to boot_third
> + *    which contains the actual mapping.
> + *  - a 1:1 mapping of xen at its current physical address. This uses a
> + *    section mapping at whichever of boot_{pgtable,first,second}
> + *    covers that physical address.
> + *
> + * For the boot CPU these mappings point to the address where Xen was
> + * loaded by the bootloader. For secondary CPUs they point to the
> + * relocated copy of Xen for the benefit of secondary CPUs.
> + *
> + * In addition to the above for the boot CPU the device-tree is
> + * initially mapped in the boot misc slot. This mapping is not present
> + * for secondary CPUs.
> + *
> + * Finally, if EARLY_PRINTK is enabled then xen_fixmap will be mapped
> + * by the CPU once it has moved off the 1:1 mapping.
> + */
> +DEFINE_BOOT_PAGE_TABLE(boot_pgtable);
> +#ifdef CONFIG_ARM_64
> +DEFINE_BOOT_PAGE_TABLE(boot_first);
> +DEFINE_BOOT_PAGE_TABLE(boot_first_id);
> +#endif
> +DEFINE_BOOT_PAGE_TABLE(boot_second_id);
> +DEFINE_BOOT_PAGE_TABLE(boot_third_id);
> +DEFINE_BOOT_PAGE_TABLE(boot_second);
> +DEFINE_BOOT_PAGE_TABLES(boot_third, XEN_NR_ENTRIES(2));

Strictly speaking, boot_* are also used for CPU0 but not in C code. That 
said, I am ok if there are moved here.

In the longer term, I would actually like to remove boot_*. This should 
already be possible for arm64 (in fact they are not used for secondary 
CPU bring-up). For arm32, it requires a bit more work.

Anyway, that's not a request for your series. :)

> +
> +/* Clear a translation table and clean & invalidate the cache */
> +static void clear_table(void *table)
> +{
> +    clear_page(table);
> +    clean_and_invalidate_dcache_va_range(table, PAGE_SIZE);
> +}
> +
> +static void clear_boot_pagetables(void)
> +{
> +    /*
> +     * Clear the copy of the boot pagetables. Each secondary CPU
> +     * rebuilds these itself (see head.S).
> +     */
> +    clear_table(boot_pgtable);
> +#ifdef CONFIG_ARM_64
> +    clear_table(boot_first);
> +    clear_table(boot_first_id);
> +#endif
> +    clear_table(boot_second);
> +    clear_table(boot_third);
> +}
> +
> +#ifdef CONFIG_ARM_64
> +int init_secondary_pagetables(int cpu)
> +{
> +    clear_boot_pagetables();
> +
> +    /*
> +     * Set init_ttbr for this CPU coming up. All CPus share a single setof
> +     * pagetables, but rewrite it each time for consistency with 32 bit.
> +     */
> +    init_ttbr = (uintptr_t) xen_pgtable + phys_offset;
> +    clean_dcache(init_ttbr);
> +    return 0;
> +}
> +#else
> +int init_secondary_pagetables(int cpu)
> +{
> +    lpae_t *first;
> +
> +    first = alloc_xenheap_page(); /* root == first level on 32-bit 3-level trie */
> +
> +    if ( !first )
> +    {
> +        printk("CPU%u: Unable to allocate the first page-table\n", cpu);
> +        return -ENOMEM;
> +    }
> +
> +    /* Initialise root pagetable from root of boot tables */
> +    memcpy(first, cpu0_pgtable, PAGE_SIZE);
> +    per_cpu(xen_pgtable, cpu) = first;
> +
> +    if ( !init_domheap_mappings(cpu) )
> +    {
> +        printk("CPU%u: Unable to prepare the domheap page-tables\n", cpu);
> +        per_cpu(xen_pgtable, cpu) = NULL;
> +        free_xenheap_page(first);
> +        return -ENOMEM;
> +    }
> +
> +    clear_boot_pagetables();
> +
> +    /* Set init_ttbr for this CPU coming up */
> +    init_ttbr = __pa(first);

init_ttbr will only be used by smpboot.c and assembly code. So I think 
the declaration needs to also be moved and the prototype moved to mmu/mm.h.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 19:14:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 19:14:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608101.946390 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkr2e-0005cJ-6q; Mon, 25 Sep 2023 19:14:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608101.946390; Mon, 25 Sep 2023 19:14:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkr2e-0005cC-4F; Mon, 25 Sep 2023 19:14:48 +0000
Received: by outflank-mailman (input) for mailman id 608101;
 Mon, 25 Sep 2023 19:14:46 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qkr2c-0005c4-ND
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 19:14:46 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qkr2c-000800-E9; Mon, 25 Sep 2023 19:14:46 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qkr2c-0003gn-7s; Mon, 25 Sep 2023 19:14:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=du+o7UoYB26LcHm49V1c3TzfqKJHEJjZbvWnnX50IeM=; b=T0p3IsAnpiMhGb3L/UdHA9BYPm
	1K2//nq7T/oCjR0AIOdqqsuE0YfIidD4vOYDDrY0tanyG4y8i84HYMzl2RDuyvT0LNS48jdQ3KOrJ
	FpTn4AB3sCwBHu9xkgc9//92jp8SCITYeUlXk+Nauw7MnAzYiD97TGkr6UhhcvWSGc1o=;
Message-ID: <be89552d-8d00-463b-a6a9-d54b8a26f8a9@xen.org>
Date: Mon, 25 Sep 2023 20:14:45 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.18] Re: [PATCH v2] ARM: GICv3 ITS: flush caches for newly
 allocated ITT
Content-Language: en-GB
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Stewart Hildebrand <stewart.hildebrand@amd.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>, Henry Wang <Henry.Wang@arm.com>
References: <20230922222710.1383808-1-volodymyr_babchuk@epam.com>
 <d4ab6108-b190-437e-bd15-af9afb086794@xen.org> <87lecudqon.fsf@epam.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <87lecudqon.fsf@epam.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 25/09/2023 20:00, Volodymyr Babchuk wrote:
> 
> Hi Julien, Henry,
> 
> Julien Grall <julien@xen.org> writes:
> 
>> Hi,
>>
>> (Adding [for-4.18] in the title for Henry to spot the request)
>>
>> On 22/09/2023 23:27, Volodymyr Babchuk wrote:
>>> ITS manages Device Tables and Interrupt Translation Tables on its own,
>>> so generally we are not interested in maintaining any coherence with
>>> CPU's view of those memory regions, except one case: ITS requires that
>>> Interrupt Translation Tables should be initialized with
>>> zeroes. Existing code already does this, but it does not cleans
>>> caches afterwards. This means that ITS may see un-initialized ITT and
>>> CPU can overwrite portions of ITT later, when it finally decides to
>>> flush caches. Visible effect of this issue that there are not
>>> interrupts delivered from a device.
>>> Fix this by calling clean_and_invalidate_dcache_va_range() for newly
>>> allocated ITT.
>>>
>>
>> I would consider to add:
>>
>> Fixes: 69082e1c210d ("ARM: GICv3 ITS: introduce device mapping")
> 
> May I ask you (or Henry?) to add this when you'll commit this change? Or
> should I publish an updated version?

I can do it on commit.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 20:17:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 20:17:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608109.946401 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qks0m-00039i-OC; Mon, 25 Sep 2023 20:16:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608109.946401; Mon, 25 Sep 2023 20:16:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qks0m-00039b-Jq; Mon, 25 Sep 2023 20:16:56 +0000
Received: by outflank-mailman (input) for mailman id 608109;
 Mon, 25 Sep 2023 20:16:55 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qks0l-00039R-9L; Mon, 25 Sep 2023 20:16:55 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qks0l-00017q-3h; Mon, 25 Sep 2023 20:16:55 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qks0k-0004Kq-Nd; Mon, 25 Sep 2023 20:16:54 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qks0k-0007KD-N8; Mon, 25 Sep 2023 20:16:54 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=M3tEylWkvu3RcKSQIpISe2DVPrD9dMNzzy4cvKBpDKY=; b=uj/aFN2YYdsxSEFimgvp0tJF5W
	6+tsXXDvVrxv4qgO1qFEKzGhnDi3z+sSs3md+DUMj9vH8idWrwZD4R+q4xNR8/PUFmpWBiFyVTc8h
	m0MDum4l7ztO/Pgq98hUWawHhD6NnneQPQ4QfozsrW20QDkNWQFf+oIyPOaU3YrGkPgk=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183159-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183159: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start.2:fail:regression
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    linux-5.4:test-arm64-arm64-libvirt-raw:guest-start.2:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-amd64-i386-qemuu-rhel6hvm-intel:guest-start/redhat.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-vhd:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 25 Sep 2023 20:16:54 +0000

flight 183159 linux-5.4 real [real]
flight 183165 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183159/
http://logs.test-lab.xenproject.org/osstest/logs/183165/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1  19 guest-start.2  fail in 183144 REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183144 pass in 183159
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail in 183144 pass in 183159
 test-armhf-armhf-xl-credit2  14 guest-start      fail in 183149 pass in 183159
 test-arm64-arm64-libvirt-raw 18 guest-start.2    fail in 183149 pass in 183159
 test-armhf-armhf-xl-credit1  18 guest-start/debian.repeat  fail pass in 183144
 test-amd64-i386-qemuu-rhel6hvm-intel 14 guest-start/redhat.repeat fail pass in 183149
 test-armhf-armhf-libvirt-raw 13 guest-start                fail pass in 183149
 test-armhf-armhf-xl-vhd      13 guest-start                fail pass in 183149

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail blocked in 182613
 test-armhf-armhf-xl    18 guest-start/debian.repeat fail in 183149 like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 183149 like 182613
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 183149 never pass
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 183149 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 183149 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   23 days
Testing same since   183129  2023-09-23 09:20:22 Z    2 days    5 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      fail    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 21:05:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 21:05:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608118.946410 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkslQ-0004Ai-B3; Mon, 25 Sep 2023 21:05:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608118.946410; Mon, 25 Sep 2023 21:05:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkslQ-0004Ab-7u; Mon, 25 Sep 2023 21:05:08 +0000
Received: by outflank-mailman (input) for mailman id 608118;
 Mon, 25 Sep 2023 21:05:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2iti=FJ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qkslP-0004AV-PB
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 21:05:07 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 32bd6f19-5be7-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 23:05:05 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id A72B661217;
 Mon, 25 Sep 2023 21:05:03 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id B59EBC433C7;
 Mon, 25 Sep 2023 21:05:01 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 32bd6f19-5be7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695675903;
	bh=BVSpNek8/ZvHxkELDsPHHK0N6j+txJnj2bv6hMv8nVo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=PczygS1/cBh8AjzrUt8ubPd7/2MUZvUJFiy71wRpXFlWcljb0Vd5eR6zt4SLAoJfc
	 0Ky96kiNAIDMmBUl7AqEigqHpCnmfyMIaQdAojwIOcDRJ8E/b/jpo8sf8PWCFykPmE
	 dAVU+QDIRCiMqhq6jSbBHDJc9gs2eTYvqut/Kw7+aLzciQ5Wq8ig9oQWpzEGzqFo33
	 /I1hooVV0K3vuYboGV6MY28sPp1gdtggA3usp9JMtCh/fxVAukTGgsmlBqvcWSs8LT
	 ywdWnmcE6VpUWN1/d7TM/bW5JFrwh4AesGLRM3LJSCPiAdDzh2FHrgG6T5mO3VGCFs
	 pUyDxnwIvHj8g==
Date: Mon, 25 Sep 2023 14:05:00 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Henry Wang <Henry.Wang@arm.com>
cc: George Dunlap <george.dunlap@cloud.com>, 
    "sstabellini@kernel.org" <sstabellini@kernel.org>, 
    Julien Grall <julien@xen.org>, Jan Beulich <jbeulich@suse.com>, 
    "committers@xenproject.org" <committers@xenproject.org>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    "jgross@suse.com" <jgross@suse.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Anthony PERARD <anthony.perard@citrix.com>, 
    "community.manager@xenproject.org" <community.manager@xenproject.org>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about code freeze
In-Reply-To: <24C421FD-4AC0-4CC6-94CB-A3394A41949B@arm.com>
Message-ID: <alpine.DEB.2.22.394.2309251339120.1403502@ubuntu-linux-20-04-desktop>
References: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com> <6399a816-ac1a-b741-ed52-b5d03b498ee6@suse.com> <2AB20BED-9ED9-4713-A39A-59891E09E02C@arm.com> <1a056bd6-a918-4c76-82b0-0eded46b23a8@xen.org>
 <CA+zSX=YqQrcLcdsYeJS1qya_0zf1AHZFcA5g8i3DZvJ+R9PHLQ@mail.gmail.com> <24C421FD-4AC0-4CC6-94CB-A3394A41949B@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-483057844-1695674423=:1403502"
Content-ID: <alpine.DEB.2.22.394.2309251340370.1403502@ubuntu-linux-20-04-desktop>

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-483057844-1695674423=:1403502
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2309251340371.1403502@ubuntu-linux-20-04-desktop>

On Mon, 25 Sep 2023, Henry Wang wrote:
> > On Sep 25, 2023, at 18:07, George Dunlap <george.dunlap@cloud.com> wrote:
> > On Mon, Sep 25, 2023 at 10:35 AM Julien Grall <julien@xen.org> wrote:
> >> On 25/09/2023 07:40, Henry Wang wrote:
> >>>> On Sep 25, 2023, at 14:32, Jan Beulich <jbeulich@suse.com> wrote:
> >>>> This, for example, would then likely mean
> >>>> that all Misra work now needs queuing for after the tree re-opens ...
> >>> 
> >>> …I also thought about this, to be honest I am tempted to loose the control
> >>> or at least offer some flexibility on this specific part, as normally MISRA
> >>> related changes are harmless and actually harden the code. I am wondering
> >>> if there are any objections from others…
> >>> 
> >>> Committers, would you mind sharing your opinion on this one? Thanks!
> >> 
> >> I am split. On one hand, I agree they low risk and would be good to have
> >> them. But on the other hand, they tend to be invasive and may interfere
> >> with any bug we need to fix during the hardening period.
> > 
> > *Theoretically* MISRA patches should have no behavioral side effects;
> > but it's quite possible that they will. I'd be in favor of a more
> > strict view, that they should all go on a separate branch (or simply
> > be reviewed in-principle and re-submitted after we branch) now that
> > the feature freeze is done.
> 
> Thanks for sharing your opinion. I definitely understand your concern. I think in
> Xen Summit we agreed that the release process should not affect the normal
> code review, so MISRA patches can still be posted to the list and be reviewed.
> When the staging reopens, these staged MISRA patches can be committed right
> away.
> 
> > That's my recommendation, but ultimately I'd leave the decision to Henry.
> 
> Since this is about MISRA, I would like to wait one more day to see if there is
> any input from Stefano, otherwise I think Julien’s suggestion is very good so
> we can just follow that proposed timeline.

I am not concerned about MISRA C patches breaking the build because
Bugseng has been running all their patches through gitlab-ci before
posting them to xen-devel.

I agree with Jan that on a case by case basis still allowing some MISRA
C patches to be committed is okay. I think they should require a
Release-ack from Henry, so Henry (and the maintainers) can still decide
which ones are low risk enough to go in, and also limit the amount of
overall churn. This means that I expect that we are slowing down with
MISRA C commits.

I think we should slow down further after RC1 to only few commits and we
should stop entirely at some point, maybe at RC2. I would suggest after
RC2 even the least controversial of the MISRA C fixes should not go in,
unless it is also a bug fix. And even if it is a bug fix, it would be up
to Henry to decide if it is a bug we want to fix in this release or not.
--8323329-483057844-1695674423=:1403502--


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 21:49:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 21:49:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608124.946421 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qktRx-0002pa-Gh; Mon, 25 Sep 2023 21:49:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608124.946421; Mon, 25 Sep 2023 21:49:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qktRx-0002pT-E3; Mon, 25 Sep 2023 21:49:05 +0000
Received: by outflank-mailman (input) for mailman id 608124;
 Mon, 25 Sep 2023 21:49:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SH9A=FJ=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qktRw-0002pL-0a
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 21:49:04 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20607.outbound.protection.outlook.com
 [2a01:111:f400:7e89::607])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 54f296bd-5bed-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 23:49:00 +0200 (CEST)
Received: from MN2PR10CA0031.namprd10.prod.outlook.com (2603:10b6:208:120::44)
 by SA0PR12MB4590.namprd12.prod.outlook.com (2603:10b6:806:93::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 21:48:55 +0000
Received: from BL6PEPF0001AB77.namprd02.prod.outlook.com
 (2603:10b6:208:120:cafe::55) by MN2PR10CA0031.outlook.office365.com
 (2603:10b6:208:120::44) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 21:48:55 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 BL6PEPF0001AB77.mail.protection.outlook.com (10.167.242.170) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Mon, 25 Sep 2023 21:48:55 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 25 Sep
 2023 16:48:54 -0500
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 25 Sep 2023 16:48:53 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 54f296bd-5bed-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eAW3qG5wAIvwFBodv/bKBSnVsTJyDgRyFymP7x+ubRkrwDPtXzTNJkRQ2kKIb/ME/WuY653H1x8Tq+i0xbxvmIdZFPZ2VJFVr7sdhTlsOSLKur+kzA4Zpu3J3BspfAP7Cv/EhMb+57lhubyx5ep34ErKv1XYzjlQCL++0eP9MUGHiBtrlhziOl17Akk/2xQSNqKO6JMxsa6oKSZM9XJIVqCgcuOb+jAhZuwWBgNRZ1KvtWSBSr9TL5aEsCXN5o8GTTFb8sReWfV171+NJnMNY4pNR/JvC4i0UMFRJXbGIwuLp3/VAcOWtF+dzKMMXQcn7oPySq3nqbak2KztmdQm6Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=L1SAx3sAnqfkH32QfAPY2IdnjseGRoYk92tQ9C7QKQE=;
 b=Z1HpC4R9BpjEDKn3NJ/90A4coGWJAoqyEJNl4RfXKW4RWelmLolmxiVyqt3EWjx3HYkCtyvbLLCpsdoc+BonBiC6Ul6Xfr7mzuQuVMPJgkMFHRAxzbmSmqak65bEjoZNpPzhEEWSsUwDjCMEujd60s7UggfPFLkHzFCGPA3vwuZXfYqjvAGHeea/UE25j3sgw2/bNQFLtEwotJLsVP4LkVLkiG34dNqB+DkKOwVdriYsovinDQdUCTsApvRRaaelfWKLon1AP9+Qeb7/F/uvKpCsrkv/lGxnc6k8WqqVYLWQ3eSMw8cHEJAUDrXG6xZywr50mmtEVUMMoFkNQt2b+w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=citrix.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=L1SAx3sAnqfkH32QfAPY2IdnjseGRoYk92tQ9C7QKQE=;
 b=Wl8kIsZq3SrDZhSRPV6BSYzomYZcZM8KO9uq65Lqly8FhpbjZScMsxO1hWOh9A0ttSkynCTZQuVKYzhY5O5Luega1IA/cUjqyF2GMglYQ/kyujjdAZYGFVTH5YAJBIAy3oom6/BWFAO45YS7TR1STP2ZifsmaIkG9e5DoUQ95DY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <0a1bc845-28b7-4af8-d6d9-cd5fc7bb4d74@amd.com>
Date: Mon, 25 Sep 2023 17:49:00 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v9 15/16] xen/arm: vpci: check guest range
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Volodymyr Babchuk
	<Volodymyr_Babchuk@epam.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-16-volodymyr_babchuk@epam.com>
 <ZQ1T8vImUxAaeLdj@MacBookPdeRoger>
Content-Language: en-US
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <ZQ1T8vImUxAaeLdj@MacBookPdeRoger>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB77:EE_|SA0PR12MB4590:EE_
X-MS-Office365-Filtering-Correlation-Id: 977ccd74-b95c-4beb-890d-08dbbe113768
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rPkOQlJLeVTIIWZRearqjjlYQ7SAyY5ifGCqpZKUUf1jk/L/KSME7Cb8rFTY67njOLQ53PinVc2ZefT78iNmB8JV4RJTpjh0RRqhnkuioVkRv3HE6MzpjMZ83uae3eXttOVwaMHyLCXQIFFsqpaNL+kkeaKOk4mwe0ZsScvPvfZrTlrTnz4j9P92mAl+JXSMCAgrW87C3dzRiejF6nYTtHDm4dIUj5JAhn3Qm6fjIb/pVTCmi3HqJcm+ph1KKkYtgezD46lnfvEYN9Md0IHNpbGVgjT84xjBNpxgbFZQaF+8hZK+PsvmnEd9i3TqQ8o1enhXjW75SxOHj2hQ3bSs0QDehF5JjKgxzt1+1snp7nrbGW82gy7Dlj3dD4uJgrjQ/ALSq/yev2zLNOW9pEkooRcBuE+jNKuF0x34Ugb+LJlTI1Si6Aqqm30+thHkKbT0z9KXqH0y2c0crpkLKsW4aE4RIuIGi1umZVFn0fKF49WpDBtcIOSqWLe9nESPL/dH///ZXQoLZVcIXc2YFANpoiO5+uG1aRXnUnAcpTXUOnr1MjS655cqnBCqV8hhOHoUavNqbgE2fXa3+aZtqGScQR8l9u1TH/NH+r4LBG1C5Pf3kEJyUW/ducHOXpO++bA0zOcDLxzzUCPgCVxqRkJMK7kX7WSo7NH8NwnhOkt0CM6yES1f4qCLowsuVhkzz77LZdaIS0Q8ejKOsS9XEQeXB0dt83WQxlYrXObj1YG+MGC9GREKAKJWFOqoJtO9l1BggHqtwCkawVGxIR2jzX8crFnj+1yWR3ZH+brJNB7geQKf30dCjFfEN5TJhic/inkf
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(396003)(39860400002)(346002)(230922051799003)(82310400011)(451199024)(1800799009)(186009)(46966006)(36840700001)(40470700004)(31686004)(8936002)(4326008)(8676002)(426003)(40480700001)(336012)(26005)(110136005)(44832011)(2906002)(478600001)(41300700001)(70586007)(70206006)(316002)(16576012)(5660300002)(6666004)(53546011)(40460700003)(36756003)(36860700001)(47076005)(2616005)(83380400001)(81166007)(86362001)(31696002)(356005)(82740400003)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 21:48:55.5907
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 977ccd74-b95c-4beb-890d-08dbbe113768
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL6PEPF0001AB77.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4590

On 9/22/23 04:44, Roger Pau Monné wrote:
> On Tue, Aug 29, 2023 at 11:19:47PM +0000, Volodymyr Babchuk wrote:
>> From: Stewart Hildebrand <stewart.hildebrand@amd.com>
>>
>> Skip mapping the BAR if it is not in a valid range.
>>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>> ---
>>  xen/drivers/vpci/header.c | 9 +++++++++
>>  1 file changed, 9 insertions(+)
>>
>> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
>> index 1d243eeaf9..dbabdcbed2 100644
>> --- a/xen/drivers/vpci/header.c
>> +++ b/xen/drivers/vpci/header.c
>> @@ -345,6 +345,15 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>>               bar->enabled == !!(cmd & PCI_COMMAND_MEMORY) )
>>              continue;
>>
>> +#ifdef CONFIG_ARM
>> +        if ( !is_hardware_domain(pdev->domain) )
>> +        {
>> +            if ( (start_guest < PFN_DOWN(GUEST_VPCI_MEM_ADDR)) ||
>> +                 (end_guest >= PFN_DOWN(GUEST_VPCI_MEM_ADDR + GUEST_VPCI_MEM_SIZE)) )
>> +                continue;
>> +        }
>> +#endif
> 
> Hm, I think this should be in a hook similar to pci_check_bar() that
> can be implemented per-arch.
> 
> IIRC at least on x86 we allow the guest to place the BARs whenever it
> wants, would such placement cause issues to the hypervisor on Arm?

Hm. I wrote this patch in a hurry to make v9 of this series work on ARM. In my haste I also forgot about the prefetchable range starting at GUEST_VPCI_PREFETCH_MEM_ADDR, but that won't matter as we can probably throw this patch out.

Now that I've had some more time to investigate, I believe the check in this patch is more or less redundant to the existing check in map_range() added in baa6ea700386 ("vpci: add permission checks to map_range()").

The issue is that during initialization bar->guest_addr is zeroed, and this initial value of bar->guest_addr will fail the permissions check in map_range() and crash the domain. When the guest writes a new valid BAR, the old invalid address remains in the rangeset to be mapped. If we simply remove the old invalid BAR from the rangeset, that seems to fix the issue. So something like this:

diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index d4629a14f26b..732be26f0d2d 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -638,6 +638,16 @@ static void cf_check guest_bar_write(const struct pci_dev *pdev,
         return;
     }

+    if ( (val != 0xfffffff0U) &&
+         (bar->guest_addr != (0xfffffff0ULL & ~(bar->size - 1))) &&
+         (bar->guest_addr != (0xfffffffffffffff0ULL & ~(bar->size - 1))) )
+    {
+        if ( rangeset_remove_range(bar->mem, PFN_DOWN(bar->guest_addr),
+                                   PFN_DOWN(bar->guest_addr + bar->size) - 1) )
+            gprintk(XENLOG_WARNING, "%pp failed to remove old BAR range\n",
+                    &pdev->sbdf);
+    }
+
     bar->guest_addr = guest_addr;
 }


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 22:20:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 22:20:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608130.946430 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qktw3-0000mH-SM; Mon, 25 Sep 2023 22:20:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608130.946430; Mon, 25 Sep 2023 22:20:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qktw3-0000mA-Pf; Mon, 25 Sep 2023 22:20:11 +0000
Received: by outflank-mailman (input) for mailman id 608130;
 Mon, 25 Sep 2023 22:20:10 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qktw1-0000m4-Tv
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 22:20:10 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2060c.outbound.protection.outlook.com
 [2a01:111:f400:7d00::60c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ae8b871a-5bf1-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 00:20:07 +0200 (CEST)
Received: from AS9PR06CA0378.eurprd06.prod.outlook.com (2603:10a6:20b:460::18)
 by DU0PR08MB8399.eurprd08.prod.outlook.com (2603:10a6:10:405::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 22:20:03 +0000
Received: from AM7EUR03FT025.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:460:cafe::8c) by AS9PR06CA0378.outlook.office365.com
 (2603:10a6:20b:460::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 22:20:03 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT025.mail.protection.outlook.com (100.127.140.199) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6813.20 via Frontend Transport; Mon, 25 Sep 2023 22:20:02 +0000
Received: ("Tessian outbound 5c548696a0e7:v175");
 Mon, 25 Sep 2023 22:20:02 +0000
Received: from d428db695094.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 F79AE8DF-75AA-4932-92E0-0AC9A2363052.1; 
 Mon, 25 Sep 2023 22:19:51 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d428db695094.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 22:19:51 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by VI1PR08MB10124.eurprd08.prod.outlook.com (2603:10a6:800:1c6::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 22:19:47 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 22:19:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ae8b871a-5bf1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=M+A79WTnZ4wCEKv7zqjA6PY0bO8lRTiLZNyKKkz0WLo=;
 b=np2ngu3o1C636OSTBcs2EuPlkYyEPnEcAYjJZfqVReGidt+K/s0ACLEWwTpuMaDi293gpa/PfdqAnLFBTQf6lgL/jrLf/JeKV7EtZrECaR31sGFR2g47PFzbI2S2edy6lJyJn/Adv/JlyEWrME5Qp3hXEhkwtE2+anJwTSdpvlc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: ebcb13f3513d96f5
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mGcgoNQyEdEVriuFoy5Eg2kz+3GpXR+GUW4kIibvgX0RIW2R71dq8x/cbw70Ihr5kQ9iNO3j4nsKfF7uvCytu/a8+nTL7AJnLId7FU8mDePDXmsZG98VTSuXc9sNglQCqcmD+WRrH5YsOL3WpKms7bORf0fS8TU8fXICsGM2/eticw5vOmkB2OP7FBSh2LEaYUqsYmWP+x5vRbsfQvHwJ4xaZWW9OKcjteALIGSYmhjL2cAR9N061wlFy2izAth3RngJKPxb1n3S9cUPbnhAB8FHdg7EQMsSk8x+/M0FP3IP6VDmJTBhfgFj16N9/1yQgNvVAgzImy2E2zr/gSnywA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=M+A79WTnZ4wCEKv7zqjA6PY0bO8lRTiLZNyKKkz0WLo=;
 b=Zvf6tT0JsOumAWvXHFxxK88L26zoNC7W8cnOnqnrniRXhEXMo4gKZvGqNtrZ6S6quFqiwjgBkc73OgwLAqVwoSPP/0LDq9X9hq3Q7Xpvox9las04wt/rRkZGCX5o4cHPzIyWJ3MzYLn2rNuoX/bGorRq+FcyLKs1/IjuSlHQ3pu1i7wKQ/tQMHaEJkQwoy5JTLEzOH+WRqg2wtfLClDYkyzyvuRnM4XM2u9u4sZdOEqMgvdXql4QcFOk8UvKZvhgejfaL5avx040CEgsugq9j33c3jP20aGsDkGaALmWBc5nuTNd0sbNxMexXSDhAizyk+NjVVL5AN+rMeF/UYQqYw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=M+A79WTnZ4wCEKv7zqjA6PY0bO8lRTiLZNyKKkz0WLo=;
 b=np2ngu3o1C636OSTBcs2EuPlkYyEPnEcAYjJZfqVReGidt+K/s0ACLEWwTpuMaDi293gpa/PfdqAnLFBTQf6lgL/jrLf/JeKV7EtZrECaR31sGFR2g47PFzbI2S2edy6lJyJn/Adv/JlyEWrME5Qp3hXEhkwtE2+anJwTSdpvlc=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, Stewart
 Hildebrand <stewart.hildebrand@amd.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>
Subject: Re: [for-4.18] [PATCH v2] ARM: GICv3 ITS: flush caches for newly
 allocated ITT
Thread-Topic: [for-4.18] [PATCH v2] ARM: GICv3 ITS: flush caches for newly
 allocated ITT
Thread-Index: AQHZ7/5kPD04AjZsh0qcsfrVnvYmOQ==
Date: Mon, 25 Sep 2023 22:19:47 +0000
Message-ID: <9F5A8F55-DF3C-4D8D-AEB2-E009E6EB0C28@arm.com>
References: <20230922222710.1383808-1-volodymyr_babchuk@epam.com>
 <d4ab6108-b190-437e-bd15-af9afb086794@xen.org>
In-Reply-To: <d4ab6108-b190-437e-bd15-af9afb086794@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|VI1PR08MB10124:EE_|AM7EUR03FT025:EE_|DU0PR08MB8399:EE_
X-MS-Office365-Filtering-Correlation-Id: 249f8313-5735-46fa-476c-08dbbe159065
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 lliguGn9aFzZjlfrE+TRFIyZhNGh5yAcNkC7CorTy2u8Xr+ky3tjltpQhQdzAomYSVIkdiVGdh6ngAKF27L66C8TqDlddpVBl337Ai93l8pNhKzSGhhr1EYSa+kHUch8U8TlypaZhT9Jwfzkonr2YqIMMaP+sJceMxU2HL6GGyfrNgAXnHEpMNPBQnTVp3cwxyqK9X+B8b6tOMmXk7uvZybhvQpB9SqEVan+9rWJHdiJ4dZxxrcVrQuYJcsaNK84OJbSLD3Itufp+ZbflAd4hgSDjrJa3WzAvEj3ufyWDjUOFIOlg+U++7UkrcSPC9kzbjofn7yFEs6Q70SsdYCCIQ1I6Hz4wxvv5rlkyjVD/0F/njhMVxUq1YdmBnHXWDLMkickKzRb0wwsbhJG908Q96ldpOha3Vw4pKQ/bI0HuK5+C9s4AyQ99RZ1xxE+4joDTHchcKHyN4XdjiyBtdaJk6THNkiMddu0ntqQMEWl4vDvfCnFw1AtDgGW6rqvv8LhpvZigkYZnPVYYJc4dvWKk9QA7A2w061YMBv8ppIXHxrAB/+2zpwf766VtUHgbLosMJrFv6udnLZdK3DrUxwOjuTYksmOI91j0Jq5c4jMajtwIoeOrcqCRwLP3Xp9yLfnUNN4IH9BGiklxbz1EprcKw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(366004)(396003)(39860400002)(376002)(346002)(230922051799003)(1800799009)(451199024)(186009)(6506007)(6486002)(2906002)(83380400001)(122000001)(38070700005)(38100700002)(76116006)(54906003)(91956017)(64756008)(66446008)(6512007)(66946007)(66556008)(66476007)(71200400001)(5660300002)(26005)(53546011)(41300700001)(316002)(6916009)(8936002)(8676002)(4326008)(478600001)(2616005)(86362001)(36756003)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <5A80B68C809DC34BA6FDE5460FC14FCB@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB10124
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT025.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	32ffc174-da01-43c6-82ed-08dbbe158709
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5Xd9AcX4OKV+bdJDvVoa/JJexaDk+nGfKx1XNaOXAxHGBJH2yeF+7nU7pS/EQ8PzbJXv7dYLE+SZ+LWR0d4SObkMVSonh1RbC2RY8svddTxxm1ASfoK7tPmwIW2j/7NVwuV8oEqN9eiVJZx/M6iXDkOSICdeHBK9RY+jsUu4yhFzX6sHzNU6NeMnX2zBjES8WEVe+lhBAVy461AubyldG7lPDucgqyBoOJZPxuZ+hnewbDoqR62Bh6jZcHOB2A1KXWVPVyb3RoC2NUqYVM5SI38/0SsQj8a0wQxWgG90ddwtslPdkIBowyHcmPjdBQZ0dR/ugN1jhUjseDinwkFqHPr4lOyeN0a6k88RZFcUqvTbIj56PAAAuq5uGS+h6Niner150gLZrkiQvKbSQ48OdPR1vQic0tKOgT4GjJa+yy9EpLEFUYj2VgRifm6RroyaAHmJUDov746Hs1DROl7Qu5K79uKS3IFS1FZYA/lTngazThPb3Sp0w1VSuJgP9Q11zx1ah0UCNxFhNvn+n6XCTZc8CxVoj1sixNyV/UIYRMWpylnsWh18xCmONKkGi6DRQ8aB7PXVSXOdwJy/euv8A8rd8tayrM2sTVM7ndsVhaNrKOknH2Tr7HStCQsTnegHFONJdfWwXIBIkBmD1MGVf+Cmb4SWLjVHWYTsfjMlXA9E/J1pco0kUk/0Av9SkIsEhtmxclqUEcGFKlaBanJ87+p3JQBXiHaUVZNO6ErhIkSJdy6tqZ1BcObiRv6w7s3M
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(396003)(376002)(39860400002)(346002)(230922051799003)(1800799009)(186009)(82310400011)(451199024)(36840700001)(40470700004)(46966006)(26005)(40460700003)(478600001)(2616005)(336012)(36756003)(82740400003)(86362001)(356005)(47076005)(33656002)(36860700001)(83380400001)(6486002)(53546011)(81166007)(5660300002)(6506007)(6512007)(40480700001)(6862004)(2906002)(8676002)(4326008)(41300700001)(316002)(54906003)(70206006)(70586007)(8936002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 22:20:02.8735
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 249f8313-5735-46fa-476c-08dbbe159065
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT025.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8399

SGkgSnVsaWVuLA0KDQo+IE9uIFNlcCAyNiwgMjAyMywgYXQgMDI6MzMsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gSGksDQo+IA0KPiAoQWRkaW5nIFtmb3ItNC4x
OF0gaW4gdGhlIHRpdGxlIGZvciBIZW5yeSB0byBzcG90IHRoZSByZXF1ZXN0KQ0KDQpUaGFua3Mh
DQoNCj4gDQo+IE9uIDIyLzA5LzIwMjMgMjM6MjcsIFZvbG9keW15ciBCYWJjaHVrIHdyb3RlOg0K
Pj4gSVRTIG1hbmFnZXMgRGV2aWNlIFRhYmxlcyBhbmQgSW50ZXJydXB0IFRyYW5zbGF0aW9uIFRh
YmxlcyBvbiBpdHMgb3duLA0KPj4gc28gZ2VuZXJhbGx5IHdlIGFyZSBub3QgaW50ZXJlc3RlZCBp
biBtYWludGFpbmluZyBhbnkgY29oZXJlbmNlIHdpdGgNCj4+IENQVSdzIHZpZXcgb2YgdGhvc2Ug
bWVtb3J5IHJlZ2lvbnMsIGV4Y2VwdCBvbmUgY2FzZTogSVRTIHJlcXVpcmVzIHRoYXQNCj4+IElu
dGVycnVwdCBUcmFuc2xhdGlvbiBUYWJsZXMgc2hvdWxkIGJlIGluaXRpYWxpemVkIHdpdGgNCj4+
IHplcm9lcy4gRXhpc3RpbmcgY29kZSBhbHJlYWR5IGRvZXMgdGhpcywgYnV0IGl0IGRvZXMgbm90
IGNsZWFucw0KPj4gY2FjaGVzIGFmdGVyd2FyZHMuIFRoaXMgbWVhbnMgdGhhdCBJVFMgbWF5IHNl
ZSB1bi1pbml0aWFsaXplZCBJVFQgYW5kDQo+PiBDUFUgY2FuIG92ZXJ3cml0ZSBwb3J0aW9ucyBv
ZiBJVFQgbGF0ZXIsIHdoZW4gaXQgZmluYWxseSBkZWNpZGVzIHRvDQo+PiBmbHVzaCBjYWNoZXMu
IFZpc2libGUgZWZmZWN0IG9mIHRoaXMgaXNzdWUgdGhhdCB0aGVyZSBhcmUgbm90DQo+PiBpbnRl
cnJ1cHRzIGRlbGl2ZXJlZCBmcm9tIGEgZGV2aWNlLg0KPj4gRml4IHRoaXMgYnkgY2FsbGluZyBj
bGVhbl9hbmRfaW52YWxpZGF0ZV9kY2FjaGVfdmFfcmFuZ2UoKSBmb3IgbmV3bHkNCj4+IGFsbG9j
YXRlZCBJVFQuDQo+IA0KPiBJIHdvdWxkIGNvbnNpZGVyIHRvIGFkZDoNCj4gDQo+IEZpeGVzOiA2
OTA4MmUxYzIxMGQgKCJBUk06IEdJQ3YzIElUUzogaW50cm9kdWNlIGRldmljZSBtYXBwaW5nIikN
Cj4gDQo+PiBTaWduZWQtb2ZmLWJ5OiBWb2xvZHlteXIgQmFiY2h1ayA8dm9sb2R5bXlyX2JhYmNo
dWtAZXBhbS5jb20+DQo+IA0KPiBSZXZpZXdlZC1ieTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1h
em9uLmNvbT4NCj4gDQo+IEBIZW5yeSwgdGhpcyBwYXRjaCBzaG91bGQgYmUgbG93LXJpc2suIFdl
IGFyZSBjbGVhbmluZyAmIGludmFsaWRhdGluZyB0aGUgY2FjaGUsIHNvIHRoZXJlIHNob3VsZCBi
ZSBubyBjaGFuZ2UgZm9yIHBsYXRmb3JtIG5vdCByZXF1aXJpbmcgY2FjaGUgbWFpbnRlbmFuY2Uu
IFRoaXMgc2hvdWxkIGhvcGVmdWxseSBoYWQgc3VwcG9ydCBmb3IgbW9yZSBwbGF0Zm9ybS4gTm90
ZSB0aGF0IHRoZSBHSUN2MyBJVFMgZmVhdHVyZSBpcyBzdGlsbCBleHBlcmltZW50YWwuDQo+IA0K
PiBCYXNlZCBvbiB3aGF0IEkgd3JvdGUgYWJvdmUsIHdvdWxkIHlvdSBiZSBPSyB0byBoYXZlIHRo
aXMgcGF0Y2ggaW4gNC4xOD8NCg0KWWVzLCBJIHdhcyBhYm91dCB0byBhc2sgdGhlIHNhbWUgcXVl
c3Rpb24gYnV0IHNvbWVob3cgZm9yZ290IGl0LiBUaGlzIGlzIGEgcXVpdGUNCmxvdyByaXNrIHBh
dGNoIGFuZCBJIHRoaW5rIGl0IGlzIGZpbmUgdG8gaGF2ZSB0aGlzIGluIDQuMTgsIHNvIGlmIHRo
ZSAiRml4ZXPigJ0gdGFnDQpjYW4gYmUgYWRkZWQgb24gY29tbWl0LCBwbGVhc2UgYWxzbyBhZGQ6
DQoNClJlbGVhc2UtYWNrZWQtYnk6IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdAYXJtLmNvbT4NCg0K
S2luZCByZWdhcmRzLA0KSGVucnkNCg0KPiANCj4gQ2hlZXJzLA0KPiANCj4gLS0gDQo+IEp1bGll
biBHcmFsbA0KDQo=


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 22:25:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 22:25:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608138.946441 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qku16-00028f-KM; Mon, 25 Sep 2023 22:25:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608138.946441; Mon, 25 Sep 2023 22:25:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qku16-00028Y-H8; Mon, 25 Sep 2023 22:25:24 +0000
Received: by outflank-mailman (input) for mailman id 608138;
 Mon, 25 Sep 2023 22:25:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LToL=FJ=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qku15-00028S-Ka
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 22:25:23 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0609.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::609])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 69eb6794-5bf2-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 00:25:21 +0200 (CEST)
Received: from DU6P191CA0019.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:540::23)
 by AS8PR08MB6104.eurprd08.prod.outlook.com (2603:10a6:20b:299::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 22:25:14 +0000
Received: from DBAEUR03FT027.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:540:cafe::20) by DU6P191CA0019.outlook.office365.com
 (2603:10a6:10:540::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Mon, 25 Sep 2023 22:25:14 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT027.mail.protection.outlook.com (100.127.142.237) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Mon, 25 Sep 2023 22:25:13 +0000
Received: ("Tessian outbound 30c9f5e988c5:v175");
 Mon, 25 Sep 2023 22:25:13 +0000
Received: from 07dd554e7e3c.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 1B121D44-27D9-4E94-9269-EF9B0B2867AC.1; 
 Mon, 25 Sep 2023 22:25:06 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 07dd554e7e3c.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Mon, 25 Sep 2023 22:25:06 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAVPR08MB9818.eurprd08.prod.outlook.com (2603:10a6:102:31e::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 22:25:04 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 22:25:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 69eb6794-5bf2-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0hsXxFAZ5C/jZmTBtfMl5pGpNmEwFhi413czhEw7fAw=;
 b=QxQ0b5Sip1LjYfwwqdP4HLX/6zuRWzIHyBTAIq03SsQJtEmTgk2qyCTeNEZ/JpXwpX1gchfcJa83HzOAEXQxr+07K+WX4Ta8e0FlT9YFywZI7bByEKlN8Lkuw4+AJrqTFY9tPf3rN3pqNd7TmU7Nt+C6+hqnMIcADEK/49ErIHc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 4d9395fb802c0bef
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=biTIDUiNu9Bq349XaEMPI1t01s2poHKbZcizmyHIsbf9jtS3slj2XuTZ1EFI+7Q0M4oRaN+HfAMwl1zd7FZfttxVHyH7wXrF35IhXatp7gLiylJU+mB1z+bw/UnRA6NH1ufV6pBYP9xaDQFoYRsnMOK/d29S+oZDOMhRoVX6CdMXEXcZkN3qeYyInsr8m7BD8tZAetQ3v93gT9KiwoOpHwGRKNAmJyo2id4aiJI8ZyLZF91suDgPxkne2mfL6mEoiuY5tzOwb01Q0ifDXhEMrdAP2UP5pAfD8SVs5v4SuSHYr+rA0r2zCcEfZN8+4k8FV+44T0HIjt/Mb8VrHOX4Bg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0hsXxFAZ5C/jZmTBtfMl5pGpNmEwFhi413czhEw7fAw=;
 b=Z4iJVPIO9WNgnhEnKoXqwPFGxVsOreusHjIc3JfsyN9ez3kCRo3Ff4F3JdY53DTBaHvUm1f6Srj5rEJcRGd8kxjHsNBWG3V7TGatvyIpgK53SOtv6cnt7Kqo+1C0cyFmn7AR0L2iHTXynTCFAo7qJBQE1gpp3RwVevDkLk55Oe/RJPwqCedXHc82NvyWqXSRwmYSgh5pB+/RYn3qxGAhO7vWDmiOQyxIZCvTKFGBs5cVqz7UnA406JCaoWBolAMl0VIwcf8gK30w9myHUARj443917dTwn+IM8l1eFXghcm8L0KDuypLluL/9QgH9VAVNvhhn1hnl0twA5NqIJIYRw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0hsXxFAZ5C/jZmTBtfMl5pGpNmEwFhi413czhEw7fAw=;
 b=QxQ0b5Sip1LjYfwwqdP4HLX/6zuRWzIHyBTAIq03SsQJtEmTgk2qyCTeNEZ/JpXwpX1gchfcJa83HzOAEXQxr+07K+WX4Ta8e0FlT9YFywZI7bByEKlN8Lkuw4+AJrqTFY9tPf3rN3pqNd7TmU7Nt+C6+hqnMIcADEK/49ErIHc=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: George Dunlap <george.dunlap@cloud.com>, Julien Grall <julien@xen.org>,
	Jan Beulich <jbeulich@suse.com>, "committers@xenproject.org"
	<committers@xenproject.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, "jgross@suse.com"
	<jgross@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
	"community.manager@xenproject.org" <community.manager@xenproject.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about code freeze
Thread-Topic: Xen 4.18 release: Reminder about code freeze
Thread-Index:
 AQHZ705Dwyrpd4I60kahQfZlaJ2JtLArFXGAgAACIQCAADDfgIAACQ8AgAAQ+YCAAKbOAIAAFlKA
Date: Mon, 25 Sep 2023 22:25:04 +0000
Message-ID: <D7621E7B-3439-457E-AFBF-99305ACE80F2@arm.com>
References:
 <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <6399a816-ac1a-b741-ed52-b5d03b498ee6@suse.com>
 <2AB20BED-9ED9-4713-A39A-59891E09E02C@arm.com>
 <1a056bd6-a918-4c76-82b0-0eded46b23a8@xen.org>
 <CA+zSX=YqQrcLcdsYeJS1qya_0zf1AHZFcA5g8i3DZvJ+R9PHLQ@mail.gmail.com>
 <24C421FD-4AC0-4CC6-94CB-A3394A41949B@arm.com>
 <alpine.DEB.2.22.394.2309251339120.1403502@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309251339120.1403502@ubuntu-linux-20-04-desktop>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PAVPR08MB9818:EE_|DBAEUR03FT027:EE_|AS8PR08MB6104:EE_
X-MS-Office365-Filtering-Correlation-Id: 498764a0-91eb-4276-4e6f-08dbbe1649cf
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 SSJLeRUJaThhhLRBhrRkXrw+OlXxPGR3zK+6SDC9IDZXCvF7f9C9tSBmZGkuMUC6Kmc/Walyzk+Y98A1H8dS6zMKiyTvsqoA9ezJfGb2tRMjLsWhhWMZ+wZ2jDWbuJxUZBsZo5Q+K1oCmb0f/SZOJYjsEWfwa1hOXUdzN+RfgaIrSFYhJIEnyATSjUO1LvoCaTMd0XKfB3QTl69hy3a/QrGkdOl0cecP6YUJvqfEt9qc5B9uCymFs93WirO3JtMpFuuMeCg9Ma9g7mI19nXi3HiY/Vd4q3SJG9uRWclSZiHYxfoTea3R8fn/kFeppD1TSIxX0bfY1nDETbmuzGgPRyXYhdiOk4ncYDXO5SLK0p5u2gDsq9wjwi7o+C0o59bNG6sqTM/uyD/GJSMp4v5eJwekqH4cTTD1MYGpRklr46fk3GTytxTmOl0LP3VVRa0Qd0vjkWHA9fHUg9Rg5cdSYufcn/+aXQiMq2fD4qEkB/rKQM4QMBwQqoJQEWLB99HyIUMlr+7Ca/426/dAfZH2R4mJxMtIwxErU/1klprB8p0FPzUeVE/IIc5LPb1fzxIfXyT5oS4Yt4he//BuRlcAIscTSdUmkGZA2nk2BLSbzDUzV1Qt0HbYmZZ0PrV61iRSeSrZ05EQ8Rbzrezj/M5mgw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(39860400002)(346002)(376002)(136003)(230922051799003)(1800799009)(186009)(451199024)(71200400001)(26005)(478600001)(66899024)(122000001)(2616005)(36756003)(86362001)(38070700005)(83380400001)(33656002)(6486002)(53546011)(5660300002)(38100700002)(6506007)(6512007)(4326008)(2906002)(8936002)(8676002)(316002)(41300700001)(54906003)(91956017)(66946007)(66556008)(66476007)(64756008)(66446008)(6916009)(7416002)(76116006)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <ECFBDA35CBE35E458FC74F48CA01627D@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9818
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT027.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	10ecd97c-e6b1-4eb6-a0b5-08dbbe1643f7
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XH7P9cW9EmC1d5oHyRO2rBdPnN8Xu7e1Fqw8x73UlktnNXKi8vmPDvtsBSfoqb6CrSts/6EjwWmdpQTS/DaAWTWcGzV7/S3feFKtVWwyhSxr7Mld9Si/QsfIApdUdS0a1gjsQ42naek3jB8V5DdVgS7sH4fcycPOGdtZM8PTAjS8rqss3jdiewLTC4AtTN+kAHTQhxOpxP+IF1t+VvLqVxO30mfkIxz4xPYFptacVFl7Qpglaz2RQoNpMzMxeN01HGhs8fIZbQzSosqd3KtFAyns4ZaR2beGZAVvHi36ebJVbVwZiZcb0XuGGkQkjsktfKd5Tx4ugFxm9+Su9ZNBUFunF4DYr7boP3gffq1170H2YZk4yGBbr+LgyT9gl+Va8BFZm0lXAugiK1uslBf1d4537iYvg6/cSXXW/MMqk6NGX3j47d5c4L5lTov6e/ghEEqA3wc0ctfwpm8C6uv9siZPbf8bv0IABV85jrG/JkBR8+75qbbK7s7YG+TwgeN/vCI7IXVU+f6YyytZ4ZBNlQJhX/4gOWhBhUI49NaxmExJjAqD7W/JjFKLC9EMktqS3Ur4uUCSXDr9m3SWPD9lanzpWf8w33TYmyboo7/b1d8WyU2K+5Lhz2LzjjHvrnz9Py5pdH+Nl4AMWuMlkMhnxvtgCeWCoacex9B7w3PJkk3f2dNeU2anHFN30bLN3o057II4TwRk09uYcr7XbAr/yJXkjKIcICeNIhiS1vQ/auDE7TeUJcu98TT7ofrR/ibR
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(136003)(39860400002)(396003)(376002)(230922051799003)(186009)(82310400011)(451199024)(1800799009)(46966006)(40470700004)(36840700001)(2906002)(40460700003)(86362001)(66899024)(33656002)(6512007)(5660300002)(6506007)(83380400001)(36756003)(53546011)(478600001)(81166007)(82740400003)(6486002)(47076005)(356005)(40480700001)(4326008)(8936002)(6862004)(8676002)(2616005)(41300700001)(26005)(336012)(70206006)(70586007)(54906003)(36860700001)(316002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 22:25:13.9469
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 498764a0-91eb-4276-4e6f-08dbbe1649cf
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT027.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6104

SGkgU3RlZmFubywNCg0KPiBPbiBTZXAgMjYsIDIwMjMsIGF0IDA1OjA1LCBTdGVmYW5vIFN0YWJl
bGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+IHdyb3RlOg0KPiANCj4gT24gTW9uLCAyNSBT
ZXAgMjAyMywgSGVucnkgV2FuZyB3cm90ZToNCj4+PiBPbiBTZXAgMjUsIDIwMjMsIGF0IDE4OjA3
LCBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNsb3VkLmNvbT4gd3JvdGU6DQo+Pj4gT24g
TW9uLCBTZXAgMjUsIDIwMjMgYXQgMTA6MzXigK9BTSBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4u
b3JnPiB3cm90ZToNCj4+Pj4gT24gMjUvMDkvMjAyMyAwNzo0MCwgSGVucnkgV2FuZyB3cm90ZToN
Cj4+Pj4+PiBPbiBTZXAgMjUsIDIwMjMsIGF0IDE0OjMyLCBKYW4gQmV1bGljaCA8amJldWxpY2hA
c3VzZS5jb20+IHdyb3RlOg0KPj4+Pj4+IFRoaXMsIGZvciBleGFtcGxlLCB3b3VsZCB0aGVuIGxp
a2VseSBtZWFuDQo+Pj4+Pj4gdGhhdCBhbGwgTWlzcmEgd29yayBub3cgbmVlZHMgcXVldWluZyBm
b3IgYWZ0ZXIgdGhlIHRyZWUgcmUtb3BlbnMgLi4uDQo+Pj4+PiANCj4+Pj4+IOKApkkgYWxzbyB0
aG91Z2h0IGFib3V0IHRoaXMsIHRvIGJlIGhvbmVzdCBJIGFtIHRlbXB0ZWQgdG8gbG9vc2UgdGhl
IGNvbnRyb2wNCj4+Pj4+IG9yIGF0IGxlYXN0IG9mZmVyIHNvbWUgZmxleGliaWxpdHkgb24gdGhp
cyBzcGVjaWZpYyBwYXJ0LCBhcyBub3JtYWxseSBNSVNSQQ0KPj4+Pj4gcmVsYXRlZCBjaGFuZ2Vz
IGFyZSBoYXJtbGVzcyBhbmQgYWN0dWFsbHkgaGFyZGVuIHRoZSBjb2RlLiBJIGFtIHdvbmRlcmlu
Zw0KPj4+Pj4gaWYgdGhlcmUgYXJlIGFueSBvYmplY3Rpb25zIGZyb20gb3RoZXJz4oCmDQo+Pj4+
PiANCj4+Pj4+IENvbW1pdHRlcnMsIHdvdWxkIHlvdSBtaW5kIHNoYXJpbmcgeW91ciBvcGluaW9u
IG9uIHRoaXMgb25lPyBUaGFua3MhDQo+Pj4+IA0KPj4+PiBJIGFtIHNwbGl0LiBPbiBvbmUgaGFu
ZCwgSSBhZ3JlZSB0aGV5IGxvdyByaXNrIGFuZCB3b3VsZCBiZSBnb29kIHRvIGhhdmUNCj4+Pj4g
dGhlbS4gQnV0IG9uIHRoZSBvdGhlciBoYW5kLCB0aGV5IHRlbmQgdG8gYmUgaW52YXNpdmUgYW5k
IG1heSBpbnRlcmZlcmUNCj4+Pj4gd2l0aCBhbnkgYnVnIHdlIG5lZWQgdG8gZml4IGR1cmluZyB0
aGUgaGFyZGVuaW5nIHBlcmlvZC4NCj4+PiANCj4+PiAqVGhlb3JldGljYWxseSogTUlTUkEgcGF0
Y2hlcyBzaG91bGQgaGF2ZSBubyBiZWhhdmlvcmFsIHNpZGUgZWZmZWN0czsNCj4+PiBidXQgaXQn
cyBxdWl0ZSBwb3NzaWJsZSB0aGF0IHRoZXkgd2lsbC4gSSdkIGJlIGluIGZhdm9yIG9mIGEgbW9y
ZQ0KPj4+IHN0cmljdCB2aWV3LCB0aGF0IHRoZXkgc2hvdWxkIGFsbCBnbyBvbiBhIHNlcGFyYXRl
IGJyYW5jaCAob3Igc2ltcGx5DQo+Pj4gYmUgcmV2aWV3ZWQgaW4tcHJpbmNpcGxlIGFuZCByZS1z
dWJtaXR0ZWQgYWZ0ZXIgd2UgYnJhbmNoKSBub3cgdGhhdA0KPj4+IHRoZSBmZWF0dXJlIGZyZWV6
ZSBpcyBkb25lLg0KPj4gDQo+PiBUaGFua3MgZm9yIHNoYXJpbmcgeW91ciBvcGluaW9uLiBJIGRl
ZmluaXRlbHkgdW5kZXJzdGFuZCB5b3VyIGNvbmNlcm4uIEkgdGhpbmsgaW4NCj4+IFhlbiBTdW1t
aXQgd2UgYWdyZWVkIHRoYXQgdGhlIHJlbGVhc2UgcHJvY2VzcyBzaG91bGQgbm90IGFmZmVjdCB0
aGUgbm9ybWFsDQo+PiBjb2RlIHJldmlldywgc28gTUlTUkEgcGF0Y2hlcyBjYW4gc3RpbGwgYmUg
cG9zdGVkIHRvIHRoZSBsaXN0IGFuZCBiZSByZXZpZXdlZC4NCj4+IFdoZW4gdGhlIHN0YWdpbmcg
cmVvcGVucywgdGhlc2Ugc3RhZ2VkIE1JU1JBIHBhdGNoZXMgY2FuIGJlIGNvbW1pdHRlZCByaWdo
dA0KPj4gYXdheS4NCj4+IA0KPj4+IFRoYXQncyBteSByZWNvbW1lbmRhdGlvbiwgYnV0IHVsdGlt
YXRlbHkgSSdkIGxlYXZlIHRoZSBkZWNpc2lvbiB0byBIZW5yeS4NCj4+IA0KPj4gU2luY2UgdGhp
cyBpcyBhYm91dCBNSVNSQSwgSSB3b3VsZCBsaWtlIHRvIHdhaXQgb25lIG1vcmUgZGF5IHRvIHNl
ZSBpZiB0aGVyZSBpcw0KPj4gYW55IGlucHV0IGZyb20gU3RlZmFubywgb3RoZXJ3aXNlIEkgdGhp
bmsgSnVsaWVu4oCZcyBzdWdnZXN0aW9uIGlzIHZlcnkgZ29vZCBzbw0KPj4gd2UgY2FuIGp1c3Qg
Zm9sbG93IHRoYXQgcHJvcG9zZWQgdGltZWxpbmUuDQo+IA0KPiBJIGFtIG5vdCBjb25jZXJuZWQg
YWJvdXQgTUlTUkEgQyBwYXRjaGVzIGJyZWFraW5nIHRoZSBidWlsZCBiZWNhdXNlDQo+IEJ1Z3Nl
bmcgaGFzIGJlZW4gcnVubmluZyBhbGwgdGhlaXIgcGF0Y2hlcyB0aHJvdWdoIGdpdGxhYi1jaSBi
ZWZvcmUNCj4gcG9zdGluZyB0aGVtIHRvIHhlbi1kZXZlbC4NCj4gDQo+IEkgYWdyZWUgd2l0aCBK
YW4gdGhhdCBvbiBhIGNhc2UgYnkgY2FzZSBiYXNpcyBzdGlsbCBhbGxvd2luZyBzb21lIE1JU1JB
DQo+IEMgcGF0Y2hlcyB0byBiZSBjb21taXR0ZWQgaXMgb2theS4gSSB0aGluayB0aGV5IHNob3Vs
ZCByZXF1aXJlIGENCj4gUmVsZWFzZS1hY2sgZnJvbSBIZW5yeSwgc28gSGVucnkgKGFuZCB0aGUg
bWFpbnRhaW5lcnMpIGNhbiBzdGlsbCBkZWNpZGUNCj4gd2hpY2ggb25lcyBhcmUgbG93IHJpc2sg
ZW5vdWdoIHRvIGdvIGluLCBhbmQgYWxzbyBsaW1pdCB0aGUgYW1vdW50IG9mDQo+IG92ZXJhbGwg
Y2h1cm4uIFRoaXMgbWVhbnMgdGhhdCBJIGV4cGVjdCB0aGF0IHdlIGFyZSBzbG93aW5nIGRvd24g
d2l0aA0KPiBNSVNSQSBDIGNvbW1pdHMuDQoNCisxDQoNCj4gDQo+IEkgdGhpbmsgd2Ugc2hvdWxk
IHNsb3cgZG93biBmdXJ0aGVyIGFmdGVyIFJDMSB0byBvbmx5IGZldyBjb21taXRzIGFuZCB3ZQ0K
PiBzaG91bGQgc3RvcCBlbnRpcmVseSBhdCBzb21lIHBvaW50LCBtYXliZSBhdCBSQzIuIEkgd291
bGQgc3VnZ2VzdCBhZnRlcg0KPiBSQzIgZXZlbiB0aGUgbGVhc3QgY29udHJvdmVyc2lhbCBvZiB0
aGUgTUlTUkEgQyBmaXhlcyBzaG91bGQgbm90IGdvIGluLA0KPiB1bmxlc3MgaXQgaXMgYWxzbyBh
IGJ1ZyBmaXguIEFuZCBldmVuIGlmIGl0IGlzIGEgYnVnIGZpeCwgaXQgd291bGQgYmUgdXANCj4g
dG8gSGVucnkgdG8gZGVjaWRlIGlmIGl0IGlzIGEgYnVnIHdlIHdhbnQgdG8gZml4IGluIHRoaXMg
cmVsZWFzZSBvciBub3QuDQoNClRoaXMgaXMgYSByZWFzb25hYmxlIHBsYW4gYW5kIEkgdGhpbmsg
dGhpcyBpcyBhbHNvIGNvbnNpc3RlbnQgd2l0aCB0aGUgaWRlYQ0KcHJvcG9zZWQgYnkgSnVsaWVu
LCBzbyBJIGFtIG9rIHdpdGggaXQuIEkgd291bGQgbGlrZSB0byBzdWdnZXN0IHRoYXQgcGxlYXNl
DQpDQyBtZSBpbiB0aGUgcmVsZXZhbnQgcGF0Y2hlcyBiZWZvcmUgd2UgYnJhbmNoIG9mZiA0LjE4
IHNvIHRoYXQgSSBjYW4gcmVzcG9uZA0KaW4gdGltZS4gVGhhbmtzIQ0KDQpLaW5kIHJlZ2FyZHMs
DQpIZW5yeQ0KDQog


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 22:40:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 22:40:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608144.946450 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuFp-0005MS-UC; Mon, 25 Sep 2023 22:40:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608144.946450; Mon, 25 Sep 2023 22:40:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuFp-0005ML-Qc; Mon, 25 Sep 2023 22:40:37 +0000
Received: by outflank-mailman (input) for mailman id 608144;
 Mon, 25 Sep 2023 22:40:36 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jxCo=FJ=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qkuFo-0005MB-Ik
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 22:40:36 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 8a327d43-5bf4-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 00:40:35 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id B1785828562B;
 Mon, 25 Sep 2023 17:40:33 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 9bqdO8Tm1XzL; Mon, 25 Sep 2023 17:40:32 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 3D2A7828558A;
 Mon, 25 Sep 2023 17:40:32 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id NT32EsywkuWV; Mon, 25 Sep 2023 17:40:32 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id C9F708285584;
 Mon, 25 Sep 2023 17:40:31 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8a327d43-5bf4-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 3D2A7828558A
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695681632; bh=wDY6wR2J0s7hhbHs0gBHyRKApay1WV8kTMG6REQ+mRs=;
	h=Message-ID:Date:MIME-Version:From:To;
	b=iKBI9iaybmJYHUJY6Eoqjj2aAFZSRxRZDX+Y6Cdx6B6Ivt57k3+uqtAN8uY94JqQs
	 PYubY+nnEraGcAvYn5ggXTZKULIXVRZ06PZocmK3gRuc/ZrYstTBsKoapKDXkWDYM6
	 z4XdAe4sm2TkvUWmlb538EZiAZ0Pbyr5G4ZeVpC8=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <b5ecbf9d-a85c-7eab-b1bb-8c81fc5e9f20@raptorengineering.com>
Date: Mon, 25 Sep 2023 17:40:31 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: xen | Failed pipeline for staging | ea36ac0d
Content-Language: en-US
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Michal Orzel <michal.orzel@amd.com>
References: <65096f918e2e5_29a56047619e@gitlab-sidekiq-catchall-v2-84c6ffbc68-bt8nn.mail>
 <9aa0fad3-4132-8444-fb3f-8e1d542652e6@suse.com>
 <752d163b-7830-9150-0757-8cadc22309f7@raptorengineering.com>
In-Reply-To: <752d163b-7830-9150-0757-8cadc22309f7@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/25/23 1:11 PM, Shawn Anastasio wrote:
> On 9/19/23 5:21 AM, Jan Beulich wrote:
>> These two, otoh, look to be a result of the tests pre-seeding xen/.config with
>> CONFIG_DEBUG settings, followed by making the olddefconfig goal. That, aiui,
>> isn't picking up xen/arch/*/configs/*_defconfig, which at this point is
>> mandatory for PPC (and likely is going to be so also for RISC-V once the full
>> build is enabled there), at least as far as some of the option disables there
>> go.
>>
>> I think this wants switching to making the defconfig goal, and substituting
>> CONFIG_DEBUG in the resulting .config. Due to x86'es and Arm's defconfig-s
>> all being empty, this ought to be no change in what exactly is being tested
>> there.
>>
> 
> These two have KBUILD_DEFCONFIG set to ppc64_defconfig in their
> configuration (build.yaml:552), so I'm not sure what exactly needs to be
> changed in order to get the desired behavior.
> 
Disregard this. After seeing Michal's follow-up I figured out the issue
and will submit a patch using the fix he proposed.

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 22:42:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 22:42:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608150.946471 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuHu-0006to-FG; Mon, 25 Sep 2023 22:42:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608150.946471; Mon, 25 Sep 2023 22:42:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuHu-0006th-CV; Mon, 25 Sep 2023 22:42:46 +0000
Received: by outflank-mailman (input) for mailman id 608150;
 Mon, 25 Sep 2023 22:42:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jxCo=FJ=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qkuHt-0006e1-0Q
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 22:42:45 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d6f4f79b-5bf4-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 00:42:43 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id A1C0A8285640;
 Mon, 25 Sep 2023 17:42:42 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id n1dk3BGOU3I7; Mon, 25 Sep 2023 17:42:41 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id B9B3782857FA;
 Mon, 25 Sep 2023 17:42:41 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id PpeA1DajU-Mw; Mon, 25 Sep 2023 17:42:41 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 53ECC828562B;
 Mon, 25 Sep 2023 17:42:41 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d6f4f79b-5bf4-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com B9B3782857FA
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695681761; bh=qgDo1YeXt9Vr+PQZJaZuykif3Tl3ZhSAuBjemNQSJ2U=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=Z3mItygE4ZKcaBJrINVS5yCRu5DQjHzeEo8WLadQKjf3pGUCliJSX7D514GCKEgiv
	 swSPfBZaQ+2y97yw2vjLUJ5f1DJ1jsUR5qajwC1MOzQJH74irgydiAFOR9yqRKW3ot
	 s57FDHhfpnScT8KwnfZTClxeMkK/W45U1A01mevU=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Jan Beulich <jbeulich@suse.com>
Subject: [PATCH 1/3] automation: Drop ppc64le-*randconfig jobs
Date: Mon, 25 Sep 2023 17:42:28 -0500
Message-Id: <76d21ac8a0de7d5ebac8b39a8d552b931a6302a3.1695681330.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1695681330.git.sanastasio@raptorengineering.com>
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Since ppc64le is still undergoing early bringup, disable the randconfig
CI build which was causing spurious CI failures.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Reported-by: Jan Beulich <jbeulich@suse.com>
---
 automation/gitlab-ci/build.yaml | 18 ------------------
 1 file changed, 18 deletions(-)

diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
index 1619e9a558..32af30cced 100644
--- a/automation/gitlab-ci/build.yaml
+++ b/automation/gitlab-ci/build.yaml
@@ -563,24 +563,6 @@ debian-bullseye-gcc-ppc64le-debug:
     KBUILD_DEFCONFIG: ppc64_defconfig
     HYPERVISOR_ONLY: y
 
-debian-bullseye-gcc-ppc64le-randconfig:
-  extends: .gcc-ppc64le-cross-build
-  variables:
-    CONTAINER: debian:bullseye-ppc64le
-    KBUILD_DEFCONFIG: ppc64_defconfig
-    RANDCONFIG: y
-    EXTRA_FIXED_RANDCONFIG:
-      CONFIG_COVERAGE=n
-
-debian-bullseye-gcc-ppc64le-debug-randconfig:
-  extends: .gcc-ppc64le-cross-build-debug
-  variables:
-    CONTAINER: debian:bullseye-ppc64le
-    KBUILD_DEFCONFIG: ppc64_defconfig
-    RANDCONFIG: y
-    EXTRA_FIXED_RANDCONFIG:
-      CONFIG_COVERAGE=n
-
 # Yocto test jobs
 yocto-qemuarm64:
   extends: .yocto-test-arm64
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 22:42:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 22:42:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608149.946460 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuHt-0006eL-8Z; Mon, 25 Sep 2023 22:42:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608149.946460; Mon, 25 Sep 2023 22:42:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuHt-0006eE-62; Mon, 25 Sep 2023 22:42:45 +0000
Received: by outflank-mailman (input) for mailman id 608149;
 Mon, 25 Sep 2023 22:42:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jxCo=FJ=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qkuHs-0006e1-Al
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 22:42:44 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d6a985b1-5bf4-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 00:42:43 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 4398F828562B;
 Mon, 25 Sep 2023 17:42:42 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 0GI1UFaH0A4L; Mon, 25 Sep 2023 17:42:41 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 6B5918285640;
 Mon, 25 Sep 2023 17:42:41 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id C24nnOLqsfs2; Mon, 25 Sep 2023 17:42:41 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id C2CDD828558A;
 Mon, 25 Sep 2023 17:42:40 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d6a985b1-5bf4-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 6B5918285640
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695681761; bh=KzJBYh4Ckh5yuJq8bIq+BDM2miqytFWcHal4Xa9U6ug=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=TEkHgkmtykC32CRyqrsbP6AX5yY9UoWJey4mn0WwabDeHXuF9uZEznrIYRpTxUzKX
	 5IWHZsh2cX0GUZbyb0IiGG8Tps25RkoaikbzNhugOmerEZZZ0bI11Frv2EPLnWeO7a
	 2Bn67vy1RVo62yK1DxdeEh4rGgiiIb6cdUR/yby0=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	Michal Orzel <michal.orzel@amd.com>
Subject: [PATCH 0/3] Fix Power CI build
Date: Mon, 25 Sep 2023 17:42:27 -0500
Message-Id: <cover.1695681330.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Hello all,

This series contains a few minor fixes to the CI config and one
additional patch to common/ that resolve ppc64-specific CI failures
that Jan discovered.

Thanks,

Shawn Anastasio (3):
  automation: Drop ppc64le-*randconfig jobs
  automation: Change build script to use arch defconfig
  xen/common: Add NUMA node id bounds check to
    page_alloc.c/node_to_scrub

 automation/gitlab-ci/build.yaml | 18 ------------------
 automation/scripts/build        |  7 ++++++-
 xen/common/page_alloc.c         |  3 +++
 3 files changed, 9 insertions(+), 19 deletions(-)

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 22:42:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 22:42:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608151.946481 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuHv-0007BB-NX; Mon, 25 Sep 2023 22:42:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608151.946481; Mon, 25 Sep 2023 22:42:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuHv-0007B0-KB; Mon, 25 Sep 2023 22:42:47 +0000
Received: by outflank-mailman (input) for mailman id 608151;
 Mon, 25 Sep 2023 22:42:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jxCo=FJ=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qkuHu-0006e1-0Q
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 22:42:46 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d7c9fbcb-5bf4-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 00:42:45 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 52A33828558A;
 Mon, 25 Sep 2023 17:42:44 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id swcRR5RQMj6u; Mon, 25 Sep 2023 17:42:43 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 2CE3D82867A9;
 Mon, 25 Sep 2023 17:42:43 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id t6R6dDD_VBP4; Mon, 25 Sep 2023 17:42:42 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 219B78285B83;
 Mon, 25 Sep 2023 17:42:42 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d7c9fbcb-5bf4-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 2CE3D82867A9
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695681763; bh=n7RbV6HKhggR9ZKikSDWaAYhJWp3wDDzOjNqYprqXEk=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=vLmBfBYe+KOv7Okxx7jFjFzyykpd0C/YFf6cCSqqAXQV5Bk4tJLmnG76eYtUxyADq
	 3qfBn5UxwkX3O7TYjqrsnc4dAtswk6vrEbrsLz33Nvdw3Vvv3OcBt9Mr2u6Nm0jU8g
	 qASTBWDfE7gL5LXuZ0m9gg0DPn1h43qWZXT/jKPg=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 3/3] xen/common: Add NUMA node id bounds check to page_alloc.c/node_to_scrub
Date: Mon, 25 Sep 2023 17:42:30 -0500
Message-Id: <a47962a573eab38991a8aa3e09ca6b8bd3193b6c.1695681330.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1695681330.git.sanastasio@raptorengineering.com>
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

When building for Power with CONFIG_DEBUG unset, a compiler error gets
raised inside page_alloc.c's node_to_scrub function, likely due to the
increased optimization level:

common/page_alloc.c: In function 'node_to_scrub.part.0':
common/page_alloc.c:1217:29: error: array subscript 1 is above array
            bounds of 'long unsigned int[1]' [-Werror=array-bounds]
 1217 |         if ( node_need_scrub[node] )

It appears that this is a false positive, given that in practice
cycle_node should never return a node ID >= MAX_NUMNODES as long as the
architecture's node_online_map is properly defined and initialized, so
this additional bounds check is only to satisfy GCC.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
 xen/common/page_alloc.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
index 35d9a26fa6..6df2a223e1 100644
--- a/xen/common/page_alloc.c
+++ b/xen/common/page_alloc.c
@@ -1211,6 +1211,9 @@ static unsigned int node_to_scrub(bool get_node)
         } while ( !cpumask_empty(&node_to_cpumask(node)) &&
                   (node != local_node) );

+        if ( node >= MAX_NUMNODES )
+            break;
+
         if ( node == local_node )
             break;

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 22:42:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 22:42:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608152.946487 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuHw-0007EV-32; Mon, 25 Sep 2023 22:42:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608152.946487; Mon, 25 Sep 2023 22:42:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuHv-0007Co-RM; Mon, 25 Sep 2023 22:42:47 +0000
Received: by outflank-mailman (input) for mailman id 608152;
 Mon, 25 Sep 2023 22:42:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=jxCo=FJ=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qkuHu-0006pn-4w
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 22:42:46 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d718eeb5-5bf4-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 00:42:44 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 0876F8286740;
 Mon, 25 Sep 2023 17:42:43 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id ASdzD7Om2Tcp; Mon, 25 Sep 2023 17:42:42 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 1C18F8285AE4;
 Mon, 25 Sep 2023 17:42:42 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id ZN_x8D8fyun4; Mon, 25 Sep 2023 17:42:42 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id B1488828558A;
 Mon, 25 Sep 2023 17:42:41 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d718eeb5-5bf4-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 1C18F8285AE4
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695681762; bh=/X3lk3Zg+rUp6Qi1mK6ROL4w3hG4Tvl8DPK6/nEq4A8=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=LiAjfJHSkGmdRU9i0Rr8iRMqpdF2rBIcoVEnWAfxTzXcHtT+E+ymFi48urRROSW/8
	 CTamfSymSr0FiOBnxmsFNKSp93LC+aBZV5e1r/JnCKhlIIJ5Jk9J4sK9jZE0/VU8pD
	 VkrZyYbcVtMlFL1uiDpBgm0BABPHdRQwJO3haU04=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Michal Orzel <michal.orzel@amd.com>,
	Jan Beulich <jbeulich@suse.com>
Subject: [PATCH 2/3] automation: Change build script to use arch defconfig
Date: Mon, 25 Sep 2023 17:42:29 -0500
Message-Id: <beb83dd70b15ee6bd896fb26532f5debf955cd48.1695681330.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1695681330.git.sanastasio@raptorengineering.com>
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Change automation build script to call the make defconfig target before
setting CONFIG_DEBUG and extra options. This fixes issues on Power where
the build fails without using the ppc64_defconfig.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Reported-by: Jan Beulich <jbeulich@suse.com>
---
 automation/scripts/build | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/automation/scripts/build b/automation/scripts/build
index b4edcf010e..19dd9e8270 100755
--- a/automation/scripts/build
+++ b/automation/scripts/build
@@ -22,7 +22,12 @@ if [[ "${RANDCONFIG}" == "y" ]]; then
     # RANDCONFIG implies HYPERVISOR_ONLY
     HYPERVISOR_ONLY="y"
 else
-    echo "CONFIG_DEBUG=${debug}" > xen/.config
+    # Start off with arch's defconfig
+    make -C xen defconfig
+
+    # Drop existing CONFIG_DEBUG and replace with value of ${debug}
+    sed -i 's/^CONFIG_DEBUG=[yn]//g' xen/.config
+    echo "CONFIG_DEBUG=${debug}" >> xen/.config

     if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then
         echo "${EXTRA_XEN_CONFIG}" >> xen/.config
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Mon Sep 25 22:45:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 22:45:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608168.946501 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuK2-0000ep-Jc; Mon, 25 Sep 2023 22:44:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608168.946501; Mon, 25 Sep 2023 22:44:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuK2-0000ei-Gv; Mon, 25 Sep 2023 22:44:58 +0000
Received: by outflank-mailman (input) for mailman id 608168;
 Mon, 25 Sep 2023 22:44:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NadZ=FJ=epam.com=prvs=36323676f0=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qkuK0-0000eQ-Gp
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 22:44:56 +0000
Received: from mx0b-0039f301.pphosted.com (mx0b-0039f301.pphosted.com
 [148.163.137.242]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 250a59e3-5bf5-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 00:44:55 +0200 (CEST)
Received: from pps.filterd (m0174681.ppops.net [127.0.0.1])
 by mx0b-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38PKds6H029004; Mon, 25 Sep 2023 22:44:37 GMT
Received: from eur05-am6-obe.outbound.protection.outlook.com
 (mail-am6eur05lp2108.outbound.protection.outlook.com [104.47.18.108])
 by mx0b-0039f301.pphosted.com (PPS) with ESMTPS id 3tbcpb17s6-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Mon, 25 Sep 2023 22:44:37 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by PAWPR03MB10071.eurprd03.prod.outlook.com (2603:10a6:102:362::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep
 2023 22:44:33 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::f606:63f7:5875:6076]) by VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::f606:63f7:5875:6076%4]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 22:44:33 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 250a59e3-5bf5-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=E7DLkEDmUCHuBu89IOuDPNwhevWe7NdkazX1murk+OMBCpjOkvHtKbqC9o6eyjr1TXM1EJXcqlSh+cyEBbn3jdi4z0JXO+ar2iKIIezX2FZ3fOnZIKaDBJYkhhTzX35lrDtbpfElnSkVfMkrypKh6I8FuIPQoPDVR+AtRTxGTyP5xzVcHlBU7QpBIsvjM04i/Vcv95Dlv1TwWwd7J7qVH0Cc8UofjiVnpWlYf8g6CczXPOiwsNuc00MQ9PO1abTUrZr/fTqKIVSgchod7gq6G8hZL2lECzrgyS0LU6CbtAMo6kR4iu+yvbsCR3eCESDnAwyDRTr4VYAAymg/QyUYbg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AxHux67opKt9joI8KxHRG9cAZ5QtG+PKsF6yLYmOPZo=;
 b=blRCtq7eOZaSjhoaXX7m3hjVSbO+UD0dBB0YnY8UiLID0+/NGbDmAnKaix/E8AAP4nu3pbIijZ2K/KB27+7nlqU9F4zugilWZCu7PDB+m5h/v2u/ouM7Bdv1H7UDHCqDUxBgKoEXZvobI1aMS1bCEHUpF2IOib39zxVdIvcGZOluhl8LX1uy25+rufcojsCYBzglWNOm+ZcKLE8KtFWPnf74C1NslvVzYUKd2sbXaRero7StETDa6c1XQT5cwt973wXzHOyupKXMyE31Fus/FvBqFgM1M+P8OgrGofG2qxCFGMMFGomuucBsudizG4Ev6rqIz6EsoB/5We7fkVFAzQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AxHux67opKt9joI8KxHRG9cAZ5QtG+PKsF6yLYmOPZo=;
 b=F4RQtn/Gv5UnPP2ezLSdr6BphB+gZWHCub6p4ScZIG9EqnFjlvQ92lz1S/x4QG5t1HfComsPPAVNrHpQFafyOHp4bYpavQw0C2SwjyROxNQm4rUXZx1cNkWGmnfHtv8TkSgwfK6QLN1SaDxa10/NOGinv5qwwEMTwXLRul/Y3uOrkwx89G+AUyHh2XdEf0FAlSQARdSLJGuaq3gfIKCZEOb6Dgd41OUFUttCvD0QbeeQ5M4Qg5kfglQKdMKGF2+AaoO+McLB6aqMi5+8lpgrXoWArpR3HS3JluwjpdaPANN6CYhn6q2VLlqoUZrLQhr7l7xrxQeMwZDJXK5VbecJYg==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
        Stewart
 Hildebrand <stewart.hildebrand@amd.com>,
        Andrew Cooper
	<andrew.cooper3@citrix.com>,
        George Dunlap <george.dunlap@citrix.com>,
        Jan
 Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>,
        Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
        Paul Durrant
	<paul@xen.org>, Kevin Tian <kevin.tian@intel.com>
Subject: Re: [PATCH v9 01/16] pci: introduce per-domain PCI rwlock
Thread-Topic: [PATCH v9 01/16] pci: introduce per-domain PCI rwlock
Thread-Index: AQHZ2s9KWF3JKCAv4U2Fm0C+oJYn+LAiUDyAgAn8FQA=
Date: Mon, 25 Sep 2023 22:44:32 +0000
Message-ID: <878r8teuup.fsf@epam.com>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-2-volodymyr_babchuk@epam.com>
 <ZQmro968jYGOb5sY@MacBookPdeRoger>
In-Reply-To: <ZQmro968jYGOb5sY@MacBookPdeRoger>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: mu4e 1.10.7; emacs 29.1
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|PAWPR03MB10071:EE_
x-ms-office365-filtering-correlation-id: 8859ec79-b98f-4b5e-865e-08dbbe18fc95
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 AMFzNZXgHmYj0KLwOqA7UG+Mo12JDdPtf/H2PqQQn0CVCMN8qH/k1LvHjjMvYRbdXNDXJdydUY8I1zKKsxpqsnd6EUFC2jxndvJV8mXKZFJ0SagGBFhF7O2JQNUwMHu4EQQz5l9tNTF0jdpL8mlqxosg9uBm5zjMwtR0JuYOYyDZ2WXwBJfZZeO/b7TXMKabiltfW1DmiaA8CbW3tPxESbnf/KPEjgWbxLAurJNCwYjF6SVwGTvXLgZ+NGNEsl96WCmwhFWHVFvmTQCtg4AD6FPiXl9tIa6URxWc+6JcFKjhlE0Oi/QbXG2HlCPx2qTG5dU9aHoilQn2jWnRGwzotInpmayHWxpJTV3k/Hp1ZSzf3W1IvAaOfy0nf15WDHD0PDCaoMJfhBstqwdTfcauMQ+QleVnJnJ4WJSfOTB2O1PFCgb9PxtUJpFVHCtYvVZpIbYIIvrt7z1uO9egMlkrAnRQZKxFSRjCCtt6+VqPjrZIiaw0iUbxp4QcbbFAJFy1N8A4l+qxePTNw+TDMAvQwCE9nZeWYRB++0N+k8xeEIIrWhu9eW6TtG6yKJ4vPZwWJErwV12aIQTYlKjVQaOhpmP/Ev5O/lYD2yC52uJbmKYS3mdBmQo8GTypmYmiwA2a
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(376002)(136003)(346002)(396003)(230922051799003)(451199024)(1800799009)(186009)(38070700005)(38100700002)(478600001)(83380400001)(6512007)(55236004)(26005)(2616005)(6506007)(6486002)(122000001)(71200400001)(91956017)(4326008)(8936002)(8676002)(76116006)(5660300002)(6916009)(66476007)(66556008)(41300700001)(66946007)(54906003)(64756008)(7416002)(2906002)(36756003)(86362001)(66446008)(316002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?utf-8?B?eE1GL00wdU13Y3JyZ1dublQzckJVSHg2QisrTFhZTm1iNytDcjhQdW5veHh6?=
 =?utf-8?B?WGJDeE5JZFllTCtZdW00di9tWDRCbDc5WkJ6bU5pUENhaTV0a3l3YU50eW5B?=
 =?utf-8?B?cDRvQjJEY3FhTUxNY2I1YUpNQjZjeElJRUpoZ0kyenhWWFRZWlJLVk9rZDVw?=
 =?utf-8?B?RERKWkFsWWtuT0c2Sjk4SHcwL1dna2RZc3lpMWFsZUpIcVVYUlJSQXNSaXNx?=
 =?utf-8?B?QXREK01xcTl5Y25tNHVhaVZWaVBFMGd1dmNrYXFRdHlqMzlOZ3FrNUltdjB2?=
 =?utf-8?B?aldhalo3MTZyK0lXdXpxL0JFZ3g5VnlNblpSVnlxMk9GbTNHMGRUbzA2YVJF?=
 =?utf-8?B?SG04Mnpkcm1GSlkzMS81RU9pb3B5QUMxejdBYTRwM2lkdHFBaWpOQWZiUm5I?=
 =?utf-8?B?N1FuVGtrUnZJN2VKdjZSQytKWE54UVZDTGdkRWZ1NElhdEJjQ2dmdHN2YkdE?=
 =?utf-8?B?a1YxU0pUYzdDc2xHN0ZqVE5zZTBVcVJnRHptMG1sWDRZTFdQSDNBTWxabnY2?=
 =?utf-8?B?WXlEelJJUWpyVkdPczhBcnhuRnlTVitxR2EwaWIwNlo4ZklkMkhXcmxjak1G?=
 =?utf-8?B?VXkzVU10clhVeE1wMUdjVTh6eElFc2pYdTd0UnpLQUw3NVkvSkVtSVN2c0tV?=
 =?utf-8?B?T3ovVEdsQ0ZUNHp3RWZvclBDSHptUTlGc0MrVmdNYlRqTlB3VGRaMzhPNVRW?=
 =?utf-8?B?clZDb0doNmg5UGRyN2gvSHlpV0s4L041ZFhPeUtnSzA4ZmptUGg2S3JLNkkw?=
 =?utf-8?B?TDcxTVR2bVlERVAvMmFQcjV1dUhyYVV4NXRKd1l0N2loMnFSTURQckFWWmxJ?=
 =?utf-8?B?NXdWNlFFN29EbUxDQzRBRnhhZjI5ODlFSy9ER2d2dVpEWGRZQlNYNFpINHJZ?=
 =?utf-8?B?SXk0SlhGSE9vc0hMaHBiOG5HeDA4L0FpYkRpZFVkRWt1RjVwUk10bXVyZVZa?=
 =?utf-8?B?WE5PNENZNnVPZFRhTkIraUM4NzlsZXBmSStJR2hLYTFCS1NxQk85R3RhdHp3?=
 =?utf-8?B?ei9HUk02b0x3M2RWai93VnFYbS9HeW05cFNMV2VYTSt5Q1orcEJVaXExSmt5?=
 =?utf-8?B?eXg5elRNSllMWEZjSklCUFRuUVdFSkkxaythMjU0cjFZaTA0OTF4VFp0Q3R4?=
 =?utf-8?B?encrdi9UYXV4WXFveDh0MDJFSGtKVzVMM3UvZlNTOFM5bWo2aXVMcXIybmk4?=
 =?utf-8?B?WHhXaFgvQko2ekdzYkZhVjBLU2U0eGkwK2kybk43cytra3NhYk9oTXg4dkdx?=
 =?utf-8?B?UDV6cVA3ZWN5MXE0TDh4WDlsNzczYTJTczB0NjBTNlV3ZlE4RWdyTWVSMkxQ?=
 =?utf-8?B?dExkbGw2c3h5OVhvNGI3cGt5QWVqbm5WQVZZaExiNCtPOGVjcnQ3ZStmMUww?=
 =?utf-8?B?S2h6WE81QTZzb0J2WFBiZ0ZlVGJjYWpzQzZRTU5WaXYzd3lZSm10OFdMZDcr?=
 =?utf-8?B?dE9DRWp3elJsbkxyeDJ1VXRxeE1qeENrVkY1M1JRQy9ZNFFKN3JpNFFwQ2Uw?=
 =?utf-8?B?cE5lOExYQnNYTVFyOUtKcVRYbGh3K0J6NWpDam1BOGZzUHM5eDVWUDlOTG5N?=
 =?utf-8?B?ZUM1L2FRZ0Z5dDJHakgwelgyUTUyK3pWN1ZsN052SUUxN3FkUDZvZmpBbzVT?=
 =?utf-8?B?S2hkeWpLVnJPaEJ5UnFnc0Z0M0tsUDlSa0g4Yy9VeWxxSTcrcGJQTS82a0g5?=
 =?utf-8?B?b0NiWGxOMXFTb0dLb2d6ejBlR20yYVluZ0tuSS93Rk1RMExEV0dBMW5MOHNw?=
 =?utf-8?B?NTUrSDBSVDRwTytic0tKWWs3U1crc0FuOTI1cnF3emNlY1RWcGhBcm4vdkJE?=
 =?utf-8?B?ckZGRWpDTmV2dG9uek1kUUl6L25yRUtubUo5dkZNWWgzaU9uaEFzVWYxRnRF?=
 =?utf-8?B?UUQrdVJmWXpndVV3S0orZ2pTWG5oVFBGL0lkdHFWYzZ6WSt2aGswbmlzSy9w?=
 =?utf-8?B?eVRJdFZVemJKanY5UTg4OUFqdTNSL1haeE04Z2Y1cW9LWXc2bW52WGZzNndN?=
 =?utf-8?B?UVNWNjc1V0xxL1lBR1UxNUJwVDd0NG0zYXBLOVZSMk5WS2VSeVlVdEJkN081?=
 =?utf-8?B?K1RUODlTK1A3VENqWDZud3hONkNKbGRIWnRtUWYxU1hVK0tBa04zMVk4dFho?=
 =?utf-8?B?OXE0OEdEK2l0aUtLc25La0V2b3U2Sml1WmZid0JBNnlEWGhTd1gvZm0wRXo4?=
 =?utf-8?B?YkE9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <5585DFABF9F00D42BAFF912FFB07EDD3@eurprd03.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8859ec79-b98f-4b5e-865e-08dbbe18fc95
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Sep 2023 22:44:32.8724
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: WtHYPu8B4u/iP4ZGE0Eri91P5maAdyiDfm3Ckyo+JM8hDTJ0JLKGSmqmUmFiL1RdjlCPZjakjsBIYc25o3fLz8eTctIIJE+iubanSO06uMg=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR03MB10071
X-Proofpoint-GUID: jiORYngfcMZgwoVDaseaYhj-bRrw8YWt
X-Proofpoint-ORIG-GUID: jiORYngfcMZgwoVDaseaYhj-bRrw8YWt
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-09-25_18,2023-09-25_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 bulkscore=0
 adultscore=0 priorityscore=1501 clxscore=1011 mlxscore=0 mlxlogscore=999
 malwarescore=0 phishscore=0 suspectscore=0 lowpriorityscore=0 spamscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000
 definitions=main-2309250175

DQpIZWxsbyBSb2dlciwNCg0KUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+
IHdyaXRlczoNCg0KPiBPbiBUdWUsIEF1ZyAyOSwgMjAyMyBhdCAxMToxOTo0MlBNICswMDAwLCBW
b2xvZHlteXIgQmFiY2h1ayB3cm90ZToNCj4+IEFkZCBwZXItZG9tYWluIGQtPnBjaV9sb2NrIHRo
YXQgcHJvdGVjdHMgYWNjZXNzIHRvDQo+PiBkLT5wZGV2X2xpc3QuIFB1cnBvc2Ugb2YgdGhpcyBs
b2NrIGlzIHRvIGdpdmUgZ3VhcmFudGVlcyB0byBWUENJIGNvZGUNCj4+IHRoYXQgdW5kZXJseWlu
ZyBwZGV2IHdpbGwgbm90IGRpc2FwcGVhciB1bmRlciBmZWV0LiBUaGlzIGlzIGEgcnctbG9jaywN
Cj4+IGJ1dCB0aGlzIHBhdGNoIGFkZHMgb25seSB3cml0ZV9sb2NrKClzLiBUaGVyZSB3aWxsIGJl
IHJlYWRfbG9jaygpDQo+PiB1c2VycyBpbiB0aGUgbmV4dCBwYXRjaGVzLg0KPj4gDQo+PiBUaGlz
IGxvY2sgc2hvdWxkIGJlIHRha2VuIGluIHdyaXRlIG1vZGUgZXZlcnkgdGltZSBkLT5wZGV2X2xp
c3QgaXMNCj4+IGFsdGVyZWQuIFRoaXMgY292ZXJzIGJvdGggYWNjZXNzZXMgdG8gZC0+cGRldl9s
aXN0IGFuZCBhY2Nlc3NlcyB0bw0KPj4gcGRldi0+ZG9tYWluX2xpc3QgZmllbGRzLg0KPg0KPiBX
aHkgZG8geW91IG1lbnRpb24gcGRldi0+ZG9tYWluX2xpc3QgaGVyZT8gIEkgZG9uJ3QgdGhpbmsg
dGhlIGxvY2sNCj4gY292ZXJzIGFjY2Vzc2VzIHRvIHBkZXYtPmRvbWFpbl9saXN0LCB1bmxlc3Mg
dGhhdCBkb21haW5fbGlzdCBmaWVsZA0KPiBoYXBwZW5zIHRvIGJlIHBhcnQgb2YgdGhlIGxpbmtl
ZCBsaXN0IGluIGQtPnBkZXZfbGlzdC4gIEkgZmluZCBpdCBraW5kDQo+IG9mIG9kZCB0byBtZW50
aW9uIGhlcmUuDQoNCllvdSBhcmUgY29ycmVjdC4gSSB3YXMgcmVmZXJyaW5nIHZlcnkgc3BlY2lm
aWMgY2FzZSBpbiByZWFzc2lnbl9kZXZpY2UoKQ0KSU9NTVUgZnVuY3Rpb25zLiBJdCBzZWVtZWQg
aW1wb3J0YW50IGZvciBtZSB3aGVuIEkgd3JvdGUgdGhpcy4gQnV0IHlvdQ0KYXJlIGNvcnJlY3Qs
IG5vIG5lZWQgdG8gbWVudGlvbiBwZGV2LT5kb21haW5fbGlzdCBleHBsaWNpdGx5Lg0KDQo+DQo+
PiBBbGwgd3JpdGUgYWNjZXNzZXMgYWxzbyBzaG91bGQgYmUgcHJvdGVjdGVkDQo+PiBieSBwY2lk
ZXZzX2xvY2soKSBhcyB3ZWxsLiBJZGVhIGlzIHRoYXQgYW55IHVzZXIgdGhhdCB3YW50cyByZWFk
DQo+PiBhY2Nlc3MgdG8gdGhlIGxpc3Qgb3IgdG8gdGhlIGRldmljZXMgc3RvcmVkIGluIHRoZSBs
aXN0IHNob3VsZCB1c2UNCj4+IGVpdGhlciB0aGlzIG5ldyBkLT5wY2lfbG9jayBvciBvbGQgcGNp
ZGV2c19sb2NrKCkuIFVzYWdlIG9mIGFueSBvZg0KPj4gdGhpcyB0d28gbG9ja3Mgd2lsbCBlbnN1
cmUgb25seSB0aGF0IHBkZXYgb2YgaW50ZXJlc3Qgd2lsbCBub3QNCj4+IGRpc2FwcGVhciBmcm9t
IHVuZGVyIGZlZXQgYW5kIHRoYXQgdGhlIHBkZXYgc3RpbGwgd2lsbCBiZSBhc3NpZ25lZCB0bw0K
Pj4gdGhlIHNhbWUgZG9tYWluLiBPZiBjb3Vyc2UsIGFueSBuZXcgdXNlcnMgc2hvdWxkIHVzZSBw
Y2lkZXZzX2xvY2soKQ0KPj4gd2hlbiBpdCBpcyBhcHByb3ByaWF0ZSAoZS5nLiB3aGVuIGFjY2Vz
c2luZyBhbnkgb3RoZXIgc3RhdGUgdGhhdCBpcw0KPj4gcHJvdGVjdGVkIGJ5IHRoZSBzYWlkIGxv
Y2spLiBJbiBjYXNlIGJvdGggdGhlIG5ld2x5IGludHJvZHVjZWQNCj4+IHBlci1kb21haW4gcnds
b2NrIGFuZCB0aGUgcGNpZGV2cyBsb2NrIGlzIHRha2VuLCB0aGUgbGF0ZXIgbXVzdCBiZQ0KPj4g
YWNxdWlyZWQgZmlyc3QuDQo+PiANCj4+IEFueSB3cml0ZSBhY2Nlc3MgdG8gcGRldi0+ZG9tYWlu
X2xpc3Qgc2hvdWxkIGJlIHByb3RlY3RlZCBieSBib3RoDQo+PiBwY2lkZXZzX2xvY2soKSBhbmQg
ZC0+cGNpX2xvY2sgaW4gdGhlIHdyaXRlIG1vZGUuDQo+PiANCj4+IFN1Z2dlc3RlZC1ieTogUm9n
ZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+DQo+PiBTdWdnZXN0ZWQtYnk6IEph
biBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4NCj4+IFNpZ25lZC1vZmYtYnk6IFZvbG9keW15
ciBCYWJjaHVrIDx2b2xvZHlteXJfYmFiY2h1a0BlcGFtLmNvbT4NCj4+IA0KPj4gLS0tDQo+PiAN
Cj4+IENoYW5nZXMgaW4gdjk6DQo+PiAgLSByZXR1cm5lZCBiYWNrICJwZGV2LT5kb21haW4gPSB0
YXJnZXQ7IiBpbiBBTUQgSU9NTVUgY29kZQ0KPj4gIC0gdXNlZCAic291cmNlIiBpbnN0ZWFkIG9m
IHBkZXYtPmRvbWFpbiBpbiBJT01NVSBmdW5jdGlvbnMNCj4+ICAtIGFkZGVkIGNvbW1lbnQgYWJv
dXQgbG9jayBvcmRlcmluZyBpbiB0aGUgY29tbWl0IG1lc3NhZ2UNCj4+ICAtIHJlZHVjZWQgbG9j
a2VkIHJlZ2lvbnMNCj4+ICAtIG1pbm9yIGNoYW5nZXMgbm9uLWZ1bmN0aW9uYWwgY2hhbmdlcyBp
biB2YXJpb3VzIHBsYWNlcw0KPj4gDQo+PiBDaGFuZ2VzIGluIHY4Og0KPj4gIC0gTmV3IHBhdGNo
DQo+PiANCj4+IENoYW5nZXMgaW4gdjggdnMgUkZDOg0KPj4gIC0gUmVtb3ZlZCBhbGwgcmVhZF9s
b2NrcyBhZnRlciBkaXNjdXNzaW9uIHdpdGggUm9nZXIgaW4gI3hlbmRldmVsDQo+PiAgLSBwY2lf
cmVsZWFzZV9kZXZpY2VzKCkgbm93IHJldHVybnMgdGhlIGZpcnN0IGVycm9yIGNvZGUNCj4+ICAt
IGV4dGVuZGVkIGNvbW1pdCBtZXNzYWdlDQo+PiAgLSBhZGRlZCBtaXNzaW5nIGxvY2sgaW4gcGNp
X3JlbW92ZV9kZXZpY2UoKQ0KPj4gIC0gZXh0ZW5kZWQgbG9ja2VkIHJlZ2lvbiBpbiBwY2lfYWRk
X2RldmljZSgpIHRvIHByb3RlY3QgbGlzdF9kZWwoKSBjYWxscw0KPj4gLS0tDQo+PiAgeGVuL2Nv
bW1vbi9kb21haW4uYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxICsNCj4+ICB4ZW4vZHJp
dmVycy9wYXNzdGhyb3VnaC9hbWQvcGNpX2FtZF9pb21tdS5jIHwgIDkgKystDQo+PiAgeGVuL2Ry
aXZlcnMvcGFzc3Rocm91Z2gvcGNpLmMgICAgICAgICAgICAgICB8IDcxICsrKysrKysrKysrKysr
KysrLS0tLQ0KPj4gIHhlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pb21tdS5jICAgICAgICAg
fCAgOSArKy0NCj4+ICB4ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaCAgICAgICAgICAgICAgICAgICAg
IHwgIDEgKw0KPj4gIDUgZmlsZXMgY2hhbmdlZCwgNzggaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRp
b25zKC0pDQo+PiANCj4+IGRpZmYgLS1naXQgYS94ZW4vY29tbW9uL2RvbWFpbi5jIGIveGVuL2Nv
bW1vbi9kb21haW4uYw0KPj4gaW5kZXggMzA0YWEwNGZhNi4uOWIwNGEyMDE2MCAxMDA2NDQNCj4+
IC0tLSBhL3hlbi9jb21tb24vZG9tYWluLmMNCj4+ICsrKyBiL3hlbi9jb21tb24vZG9tYWluLmMN
Cj4+IEBAIC02NTEsNiArNjUxLDcgQEAgc3RydWN0IGRvbWFpbiAqZG9tYWluX2NyZWF0ZShkb21p
ZF90IGRvbWlkLA0KPj4gIA0KPj4gICNpZmRlZiBDT05GSUdfSEFTX1BDSQ0KPj4gICAgICBJTklU
X0xJU1RfSEVBRCgmZC0+cGRldl9saXN0KTsNCj4+ICsgICAgcndsb2NrX2luaXQoJmQtPnBjaV9s
b2NrKTsNCj4+ICAjZW5kaWYNCj4+ICANCj4+ICAgICAgLyogQWxsIGVycm9yIHBhdGhzIGNhbiBk
ZXBlbmQgb24gdGhlIGFib3ZlIHNldHVwLiAqLw0KPj4gZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJz
L3Bhc3N0aHJvdWdoL2FtZC9wY2lfYW1kX2lvbW11LmMgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3Vn
aC9hbWQvcGNpX2FtZF9pb21tdS5jDQo+PiBpbmRleCBiZWE3MGRiNGI3Li5kMjE5YmQ5NDUzIDEw
MDY0NA0KPj4gLS0tIGEveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUu
Yw0KPj4gKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL3BjaV9hbWRfaW9tbXUuYw0K
Pj4gQEAgLTQ3Niw3ICs0NzYsMTQgQEAgc3RhdGljIGludCBjZl9jaGVjayByZWFzc2lnbl9kZXZp
Y2UoDQo+PiAgDQo+PiAgICAgIGlmICggZGV2Zm4gPT0gcGRldi0+ZGV2Zm4gJiYgcGRldi0+ZG9t
YWluICE9IHRhcmdldCApDQo+PiAgICAgIHsNCj4+IC0gICAgICAgIGxpc3RfbW92ZSgmcGRldi0+
ZG9tYWluX2xpc3QsICZ0YXJnZXQtPnBkZXZfbGlzdCk7DQo+PiArICAgICAgICB3cml0ZV9sb2Nr
KCZzb3VyY2UtPnBjaV9sb2NrKTsNCj4+ICsgICAgICAgIGxpc3RfZGVsKCZwZGV2LT5kb21haW5f
bGlzdCk7DQo+PiArICAgICAgICB3cml0ZV91bmxvY2soJnNvdXJjZS0+cGNpX2xvY2spOw0KPj4g
Kw0KPj4gKyAgICAgICAgd3JpdGVfbG9jaygmdGFyZ2V0LT5wY2lfbG9jayk7DQo+PiArICAgICAg
ICBsaXN0X2FkZCgmcGRldi0+ZG9tYWluX2xpc3QsICZ0YXJnZXQtPnBkZXZfbGlzdCk7DQo+PiAr
ICAgICAgICB3cml0ZV91bmxvY2soJnRhcmdldC0+cGNpX2xvY2spOw0KPj4gKw0KPj4gICAgICAg
ICAgcGRldi0+ZG9tYWluID0gdGFyZ2V0Ow0KPg0KPiBXaGlsZSBJIGRvbid0IHRoaW5rIHRoaXMg
aXMgc3RyaWN0bHkgYW4gaXNzdWUgcmlnaHQgbm93LCBpdCB3b3VsZCBiZQ0KPiBiZXR0ZXIgdG8g
c2V0IHBkZXYtPmRvbWFpbiBiZWZvcmUgdGhlIGRldmljZSBpcyBhZGRlZCB0byBkb21haW5fbGlz
dC4NCj4gQSBwYXR0ZXJuIGxpa2U6DQo+DQo+IHJlYWRfbG9jayhkLT5wY2lfbG9jayk7DQo+IGZv
cl9lYWNoX3BkZXYoZCwgcGRldikNCj4gICAgIGZvbyhwZGV2LT5kb21haW4pOw0KPiByZWFkX3Vu
bG9jayhkLT5wY2lfbG9jayk7DQo+DQo+IFdvdWxkbid0IHdvcmsgY3VycmVudGx5IGlmIHRoZSBw
ZGV2IGlzIGFkZGVkIHRvIGRvbWFpbl9saXN0IGJlZm9yZSB0aGUNCj4gcGRldi0+ZG9tYWluIGZp
ZWxkIGlzIHVwZGF0ZWQgdG8gcmVmbGVjdCB0aGUgbmV3IG93bmVyLg0KDQpBZ3JlZS4gSSBtb3Zl
ZCBgcGRldi0+ZG9tYWluID0gdGFyZ2V0YCBzbyBpdCBzaXRzIGJldHdlZW4gbGlzdF9kZWwoKSBh
bmQNCmxpc3RfYWRkKCkgY2FsbHMNCg0KDQotLSANCldCUiwgVm9sb2R5bXly


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 22:58:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 22:58:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608176.946510 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuWY-0003W9-Mv; Mon, 25 Sep 2023 22:57:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608176.946510; Mon, 25 Sep 2023 22:57:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkuWY-0003W2-KI; Mon, 25 Sep 2023 22:57:54 +0000
Received: by outflank-mailman (input) for mailman id 608176;
 Mon, 25 Sep 2023 22:57:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2iti=FJ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qkuWX-0003Vu-6T
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 22:57:53 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f2ee107b-5bf6-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 00:57:51 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 4856BCE0FE6;
 Mon, 25 Sep 2023 22:57:44 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id AE088C433C9;
 Mon, 25 Sep 2023 22:57:42 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f2ee107b-5bf6-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695682663;
	bh=ubs8DgxEOLPBMofipdq4CnUZopelQ6Rz8agd/79KMl4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=g+Dmld+iPy0kAk1VR0odTrAx0NlQDJ+CJ/UJiv4rwoutmYiS3dB+COZgw1RcvbdUB
	 m1IPV+yqpMaeYPGV5+ZsbeHtqx1oRafrcok6Vqalj7ICOkax50PYvAVS34eVo96lC2
	 wfn7PB7SJFc3svWyQLFQ4rrXbaYS4++jkdTgHNizRDSAxw7ZKeESEIJTsqYxW8ePHO
	 2nI9huhzqjuFW4sCvROoXgk2B8W1b3oA5boJUk/eHiFSxxppQul28hD5mLOfDBB8oD
	 ANQ1NSPbytg2XWDzpHJr5Z5lQa9KpeYRYQPK4jZU9SiobufX/9O0YILhYVhv9UcF80
	 ueLO/NAESYSHg==
Date: Mon, 25 Sep 2023 15:57:41 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Shawn Anastasio <sanastasio@raptorengineering.com>
cc: xen-devel@lists.xenproject.org, 
    Timothy Pearson <tpearson@raptorengineering.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Jan Beulich <jbeulich@suse.com>
Subject: Re: [PATCH 1/3] automation: Drop ppc64le-*randconfig jobs
In-Reply-To: <76d21ac8a0de7d5ebac8b39a8d552b931a6302a3.1695681330.git.sanastasio@raptorengineering.com>
Message-ID: <alpine.DEB.2.22.394.2309251557350.1403502@ubuntu-linux-20-04-desktop>
References: <cover.1695681330.git.sanastasio@raptorengineering.com> <76d21ac8a0de7d5ebac8b39a8d552b931a6302a3.1695681330.git.sanastasio@raptorengineering.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 25 Sep 2023, Shawn Anastasio wrote:
> Since ppc64le is still undergoing early bringup, disable the randconfig
> CI build which was causing spurious CI failures.
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> Reported-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>  automation/gitlab-ci/build.yaml | 18 ------------------
>  1 file changed, 18 deletions(-)
> 
> diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
> index 1619e9a558..32af30cced 100644
> --- a/automation/gitlab-ci/build.yaml
> +++ b/automation/gitlab-ci/build.yaml
> @@ -563,24 +563,6 @@ debian-bullseye-gcc-ppc64le-debug:
>      KBUILD_DEFCONFIG: ppc64_defconfig
>      HYPERVISOR_ONLY: y
>  
> -debian-bullseye-gcc-ppc64le-randconfig:
> -  extends: .gcc-ppc64le-cross-build
> -  variables:
> -    CONTAINER: debian:bullseye-ppc64le
> -    KBUILD_DEFCONFIG: ppc64_defconfig
> -    RANDCONFIG: y
> -    EXTRA_FIXED_RANDCONFIG:
> -      CONFIG_COVERAGE=n
> -
> -debian-bullseye-gcc-ppc64le-debug-randconfig:
> -  extends: .gcc-ppc64le-cross-build-debug
> -  variables:
> -    CONTAINER: debian:bullseye-ppc64le
> -    KBUILD_DEFCONFIG: ppc64_defconfig
> -    RANDCONFIG: y
> -    EXTRA_FIXED_RANDCONFIG:
> -      CONFIG_COVERAGE=n
> -
>  # Yocto test jobs
>  yocto-qemuarm64:
>    extends: .yocto-test-arm64
> -- 
> 2.30.2
> 


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 23:04:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 23:04:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608186.946521 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkucg-0005ZJ-Ak; Mon, 25 Sep 2023 23:04:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608186.946521; Mon, 25 Sep 2023 23:04:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkucg-0005ZC-7m; Mon, 25 Sep 2023 23:04:14 +0000
Received: by outflank-mailman (input) for mailman id 608186;
 Mon, 25 Sep 2023 23:04:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NadZ=FJ=epam.com=prvs=36323676f0=volodymyr_babchuk@srs-se1.protection.inumbo.net>)
 id 1qkuce-0005Z6-T5
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 23:04:12 +0000
Received: from mx0a-0039f301.pphosted.com (mx0a-0039f301.pphosted.com
 [148.163.133.242]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d5475a92-5bf7-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 01:04:10 +0200 (CEST)
Received: from pps.filterd (m0174678.ppops.net [127.0.0.1])
 by mx0a-0039f301.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38PKdnMa016426; Mon, 25 Sep 2023 23:04:06 GMT
Received: from eur05-vi1-obe.outbound.protection.outlook.com
 (mail-vi1eur05lp2176.outbound.protection.outlook.com [104.47.17.176])
 by mx0a-0039f301.pphosted.com (PPS) with ESMTPS id 3tbb94a3db-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Mon, 25 Sep 2023 23:04:06 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com (2603:10a6:803:31::18)
 by PA4PR03MB6925.eurprd03.prod.outlook.com (2603:10a6:102:e5::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Mon, 25 Sep
 2023 23:03:31 +0000
Received: from VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::f606:63f7:5875:6076]) by VI1PR03MB3710.eurprd03.prod.outlook.com
 ([fe80::f606:63f7:5875:6076%4]) with mapi id 15.20.6813.027; Mon, 25 Sep 2023
 23:03:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d5475a92-5bf7-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=R9NdtKbN97PC/EHNLdAkHDEHg3BtvSXe9vQ0N3QXqQ6STZ26IIL3ry68H+++okMDw5U8Wt1m86OH6DnrmIWxRIPW/ZhfkQnGL5Pp/QNIJnsZmk7XKJ/jm5dWJqYyx9LfW9GvbKzHewKPfw5XMmIk0l+v5LrJtso+46YpMOhhXXKCWBIDX5q+YEwEOMTZxF9eKZ4T9NDh5y+J0n9JjeUW37K4+8Fqzw4Du3JxqWPVhc0iOA5vEp89+Kc+CfjUIy33OfJlZJ6iPQKVj+8JI7p7WQpIwNogijyypxAtz+JX1qFJU5Q+7SbNa98Jl6vF2JZLcBPYCFCJt0nRt9QXm1apuw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iEXxmJg5EQgBBvzYfEUV7jzNCS73zXwmqlx5gapiToI=;
 b=UJbBq1gpV6yEkXOVqyKlJJUepA5/LqaH8le0NpKChoKN33Ts05MpZ68hTxfjQPYqrw6Ut29L33k5nUbp0iVRgTYXSc+Vr4tSXmhgA5jwdiZUVHF9t6c9Uc9b1WjKFL2HeCcrcvFN9PomWNQUpxWCeaNYFSFyP0QioXkj3wDV4+192oVuZqH9/BqMvKll28fvricYr/H+Ln4eWhGKhCiJrYlsyUsnNC/2BcoMs/zordy4tHmcq7lWDwaJlf9bE3sJuSB6JhfrElGTzRRZV9uFp/FIUmsFMDqB+hYHRQHs1nr4knShFY4d/nQNIGvVjCgJ5azFfmOvtgescyRInfcXmg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com;
 dkim=pass header.d=epam.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iEXxmJg5EQgBBvzYfEUV7jzNCS73zXwmqlx5gapiToI=;
 b=HIVBS84epnjGwMLloTLIJ9kWZSoV+gty6D8u7cK/jwMgTd2V6mJGPGpm6F+afJPspyDaDfe7wuXl8DYrvTqKMsQRf2HOUn/VCB8jqR0Yro5XhGRgccKWGUu6s8stK6eo5X+BkXYxL2avmV978vWZx+by5/+U6GNHHvaDYDPErAXI3uq56u+S2Hk2gdV0d3TqCCA6A3qJl3HWB2oe9FPtVSLAoSQj8m8jrX3hNj2tfIV0LzgMJdy+o0UzJdyS4vW6Cq7e44sQbWH0RZtRT1LV+YybLIU6JDUH28dvbzCR6tvC7PE9zDb18KmRc3R90BPDgLDC92dRC4ko7gGSJ+JDsw==
From: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
To: =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com>
CC: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
        Stewart
 Hildebrand <stewart.hildebrand@amd.com>,
        Oleksandr Andrushchenko
	<Oleksandr_Andrushchenko@epam.com>,
        Jan Beulich <jbeulich@suse.com>,
        Andrew
 Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
        Jun Nakajima
	<jun.nakajima@intel.com>,
        Kevin Tian <kevin.tian@intel.com>, Paul Durrant
	<paul@xen.org>
Subject: Re: [PATCH v9 02/16] vpci: use per-domain PCI lock to protect vpci
 structure
Thread-Topic: [PATCH v9 02/16] vpci: use per-domain PCI lock to protect vpci
 structure
Thread-Index: AQHZ2s9KfUsugiaE80OWAJ/SuT82fLAiaWIAgAnmCQA=
Date: Mon, 25 Sep 2023 23:03:29 +0000
Message-ID: <87r0mldfem.fsf@epam.com>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-3-volodymyr_babchuk@epam.com>
 <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
In-Reply-To: <ZQnAvNSDn0WB13Gn@MacBookPdeRoger>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: mu4e 1.10.7; emacs 29.1
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: VI1PR03MB3710:EE_|PA4PR03MB6925:EE_
x-ms-office365-filtering-correlation-id: 5e5e9d7c-587e-466c-881d-08dbbe1ba256
x-ld-processed: b41b72d0-4e9f-4c26-8a69-f949f367c91d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 
 DSWE5O6mEIgIchF7ngjOnOTysPV8fTvFk/6S7f/8a6BVfTcqXEzdbKMZk/g5e2LIeWFoHAagCHxWcVqxNgG7Zh6hqzd90YmBDAXqND4kUBx0kfqHSTSidRfvvTOzqkSIZCOUoQ3hTDfGnWDRrzq+AwzScbeszxztftj5l6NNDQxzyF+F120jXL8BwBwJ7ULQEkHq5CGyV+uoivibsSwX/bQxoAfSS0KTIaQAypeRA4C8pHytzS+Si8TTUnUOmNan5EIfg3uMeuGpyo37te+9qhJW5kpaD/kzacBVsAiIltHPZmTP+dGqvWQ+v6oEN8MF+xrAGEf/Ntqs6zl9YA7DyHYHY74ECpZ5+RrbxCF4Mv8qotLqosQQEnLzJc67F2a6LwuyIq/FMOF/greXuu8CVaYtJonxZyDwrmKpYxuq8KLF3xaJSz75RaqXiE8VjpW1mc5OHSWc5QtdA4AtM1prdSAZK0cgIese7CsFOKn6kg/vz4bQlGGQMiwHt8lImtCMR6Medg9Ox+SRSGrtpBRiSsLHYgqTMheIq5zZCqEj64KTqLlsZwAaERImHk/OIvu/AMDm/ePYdmNid1c8U/wJTxIgGsj7E0F/OezAOKmcbrEO022JVgWDM+r+BwUIKMsW
x-forefront-antispam-report: 
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR03MB3710.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(39860400002)(366004)(396003)(376002)(230922051799003)(186009)(451199024)(1800799009)(71200400001)(478600001)(6506007)(55236004)(6486002)(2616005)(38070700005)(38100700002)(122000001)(54906003)(41300700001)(8676002)(8936002)(4326008)(83380400001)(26005)(6512007)(86362001)(66476007)(36756003)(6916009)(66946007)(66556008)(316002)(66446008)(76116006)(2906002)(64756008)(91956017)(5660300002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 
 =?utf-8?B?YkF3QWhlMWVGY05wSXN6Z3BTL3F4UG5pYjlTUC8yaVhITHZjYStTdjd4M25U?=
 =?utf-8?B?L3Nob1p6bjJpSDFvYlQ2WmZRK1dVbVcramM4NFZyd00rUVZDcDk2enBHNkVp?=
 =?utf-8?B?ZU13WlJRWi9PM25jZDhSenNsZnVHVUs4UXNsTVIvSGgrclZjVUJHMCtPVTM1?=
 =?utf-8?B?WGE0Q1pjM1RPOXpUNmVXRVRweEVOWW9OQS9pL2drbFcyN1ZLWGFFNkpSOS8x?=
 =?utf-8?B?ZEtsYXNBSXZ1WG5IajA3NGVWWnpYWVpQd1FTRU1ObW9oMDV2WnoyTzBFV1NO?=
 =?utf-8?B?aGxIdDFGTm5zd2IwcnZZWFFYbFJXR0Vab2JsSTJWYXkzZE1WTzExRGtLelZi?=
 =?utf-8?B?MUR1VlFTbXNJMUJHNjdPMTN1SnAwTEVSaUhWbWxTT2pEenJBUEFsUnJEdXBj?=
 =?utf-8?B?WFZPKy9mK2NoTisyWHQ4UnJVVUxpL051cGtDYTBSUVZjWUJoRGpVcWRVTDVR?=
 =?utf-8?B?NXVoWXR4K0lsRDI3SzJWc1hjSjdkOXRhLzJzWEFaclhidm5SMG4xRDEyWXE4?=
 =?utf-8?B?elUzMkd2dG5wdTdTc0VaT2FXaFY4OHpxT3NMamhmOW1MNVh4N3lpaHZoWHUz?=
 =?utf-8?B?MHMxTGZNS1ZpZHJrTG1Sbm92d1F2Vmthcko2aTFwNFZsNFpRbmhRYVFKOW1j?=
 =?utf-8?B?WTdabnA5bTVwWk5Fb1ZJRWp3WkJkdUhYVXFGSmhSb0p6b1Jjbkc0QitxVHli?=
 =?utf-8?B?c0VuTkJDSkFHT3RuVjFXMHJpTXg5ejcvZkJDeDExTlQ3cEpYTEo4aDhwalNo?=
 =?utf-8?B?YStZRHZ0bzdRZ2dVeHhaRjN6Mjlid0dLUGJCdDhTcStYckR6Ukl5SGdReTVw?=
 =?utf-8?B?RTdNMHBOT1c2RCtKcVg0SjJUM203Nm1JZmtnQVlqV2Q1Zkh1Tys5NDEra0M0?=
 =?utf-8?B?UTRzM0Q1cGF6UlBZbWNDWkJjbzNkL1FHQ0ptWnJjVEFZdXVSbkRTeFNDQzNB?=
 =?utf-8?B?V1drWWpZY2xBOFRLaFJDUDFCd3pMK0RDNU83cDc4Q29qQlNHRGw0T2tmeE5n?=
 =?utf-8?B?Q2NqRzBUTkg0NFk2WE9JckJ2czMvbzhBSFRTK3ozTlhna1dLSlBtK2dqVzlo?=
 =?utf-8?B?VXBZVXJwQnpsSUVjTXRER3U5eUE3bTIzaXJjdXd1ZER2cTg1ZU8vTHBSaGtt?=
 =?utf-8?B?VGZXUHE4SWY4aFBzSldxa2VkcCs4aWw2ZVRNeGxENnV6dFlZa3N4NGt6YWlv?=
 =?utf-8?B?enVYK2xHbkx1ZXpYSXEreGd3ZHZ4OW9JNEdlQVJiQ3pCMGIveHlwVk5iMnls?=
 =?utf-8?B?RG42VU5sSDJhUDhOVTFLKzhTRXpXek1HZXBKalgrWEpCK1hwSnZHOGlkYWRk?=
 =?utf-8?B?alFQcXhXd1dBbWNibU9HWUNOak9Dd2FNRVA5bnpYQlBwZWVRaHA2NGorblJJ?=
 =?utf-8?B?SGN2Mk1Ya1kxRVdPQmZCWXQ4ZVVuQmVZR3YvWDgxTTJ4dGg5WWQrQU8wcmp5?=
 =?utf-8?B?YWJLZWwrdjhqZjJNWmJHOXh5SHdtZExOeGIyOVB1d3RjTFRMRkVrVDBqbVF0?=
 =?utf-8?B?QjFJNi91bnZXV2FCNVhVZDRlclNsekMyRGVCQUdrNDFveWRwd3dUZ242SjlE?=
 =?utf-8?B?OTFNUSttM0FuVUZtQWpVY3RoOUk2UDJyd3VYOG8waDBlWHVtb1FvVUpSV2ZS?=
 =?utf-8?B?Qko2amh6RHlZYzJNQ2UyUEFKc3Rrc2ZpL0JnZVhtS2FIMEljUTI2VktaVmRP?=
 =?utf-8?B?cS9jOHlhQU84OHNkWHNrYTJjRy9PdkFYWFZTOG45L000VmUzOVhxeHc0NGlm?=
 =?utf-8?B?WWZNbURKTWdSaytnTG9XMWJWNlkyUThtS3RFKy9jcGxGbStBUXF0TjVSc3Ir?=
 =?utf-8?B?MUVLRU4rTU1nVmZtaE9pbng4RkRUL09zd3lDeDhTL0xsbVF4ZG5MWE9jYTg1?=
 =?utf-8?B?d1BVeEZUdlFqY0xtcktpcjJvL29PZm1aR2NjS250bUJyK0k3ek16cGxQdllE?=
 =?utf-8?B?WmwzQkRjdWNaT0ZGdEdWQnZnUEtjSE93MERJYS92Q3doS3lpbVNEc1RubHlV?=
 =?utf-8?B?dXg4REpFb0d0ZGZQMjdwWEp0UVNySmNrNVFzZmluUlJIL1RIcW5NdHVDSzVq?=
 =?utf-8?B?L0kzM3Raek9zYThsOEtjOEFERmQwTGlNcThLTnhoak9NeTZnZis4aHV6c1FH?=
 =?utf-8?B?c0ZURWl6ZjB6SDAwWHE4cDJlcDBBSVFnQm1wejlOWjhUVFB4UE44ZWppeldi?=
 =?utf-8?B?NlE9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <1A6568E4C65C1A4BB37CC2B7EB4D5F0C@eurprd03.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: epam.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: VI1PR03MB3710.eurprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5e5e9d7c-587e-466c-881d-08dbbe1ba256
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Sep 2023 23:03:29.9549
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: GHMCvtLKrKKgybmTY6n/kN8xLHutBSu63347oobySb/ILkq5i/BuvabMhnbYqgW3uiywQsSOru+fja5SF7QSkUURezX0XXTw2jIEkO2ChHI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR03MB6925
X-Proofpoint-GUID: krxrpK9J4RWme4e0P5dkE-_XDGdM60gL
X-Proofpoint-ORIG-GUID: krxrpK9J4RWme4e0P5dkE-_XDGdM60gL
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-09-25_18,2023-09-25_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 malwarescore=0
 suspectscore=0 bulkscore=0 phishscore=0 impostorscore=0 adultscore=0
 lowpriorityscore=0 priorityscore=1501 clxscore=1011 mlxscore=0
 mlxlogscore=584 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2309250178

SGkgUm9nZXIsDQoNClJvZ2VyIFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPiB3cml0
ZXM6DQoNCj4gT24gVHVlLCBBdWcgMjksIDIwMjMgYXQgMTE6MTk6NDJQTSArMDAwMCwgVm9sb2R5
bXlyIEJhYmNodWsgd3JvdGU6DQo+PiBGcm9tOiBPbGVrc2FuZHIgQW5kcnVzaGNoZW5rbyA8b2xl
a3NhbmRyX2FuZHJ1c2hjaGVua29AZXBhbS5jb20+DQo+PiANCj4+IFVzZSBhIHByZXZpb3VzbHkg
aW50cm9kdWNlZCBwZXItZG9tYWluIHJlYWQvd3JpdGUgbG9jayB0byBjaGVjaw0KPj4gd2hldGhl
ciB2cGNpIGlzIHByZXNlbnQsIHNvIHdlIGFyZSBzdXJlIHRoZXJlIGFyZSBubyBhY2Nlc3NlcyB0
byB0aGUNCj4+IGNvbnRlbnRzIG9mIHRoZSB2cGNpIHN0cnVjdCBpZiBub3QuIFRoaXMgbG9jayBj
YW4gYmUgdXNlZCAoYW5kIGluIGENCj4+IGZldyBjYXNlcyBpcyB1c2VkIHJpZ2h0IGF3YXkpIHNv
IHRoYXQgdnBjaSByZW1vdmFsIGNhbiBiZSBwZXJmb3JtZWQNCj4+IHdoaWxlIGhvbGRpbmcgdGhl
IGxvY2sgaW4gd3JpdGUgbW9kZS4gUHJldmlvdXNseSBzdWNoIHJlbW92YWwgY291bGQNCj4+IHJh
Y2Ugd2l0aCB2cGNpX3JlYWQgZm9yIGV4YW1wbGUuDQo+PiANCj4+IFdoZW4gdGFraW5nIGJvdGgg
ZC0+cGNpX2xvY2sgYW5kIHBkZXYtPnZwY2ktPmxvY2sgdGhleSBhcmUgc2hvdWxkIGJlDQo+DQo+
IFdoZW4gdGFraW5nIGJvdGggZC0+cGNpX2xvY2sgYW5kIHBkZXYtPnZwY2ktPmxvY2sgdGhlIG9y
ZGVyIHNob3VsZCBiZQ0KPiAuLi4NCj4NCg0KPj4gdGFrZW4gaW4gdGhpcyBleGFjdCBvcmRlcjog
ZC0+cGNpX2xvY2sgdGhlbiBwZGV2LT52cGNpLT5sb2NrIHRvIGF2b2lkDQo+PiBwb3NzaWJsZSBk
ZWFkbG9jayBzaXR1YXRpb25zLg0KPj4NCg0KV2lsbCBpdCBiZSBiZXR0ZXIgdG8gd3JpdGUgbGlr
ZSB0aGlzOg0KDQoiV2hlbiB0YWtpbmcgYm90aCBkLT5wY2lfbG9jayBhbmQgcGRldi0+dnBjaS0+
bG9jaywgdGhleSBzaG91bGQgYmUNCnRha2VuIGluIHRoaXMgZXhhY3Qgb3JkZXI6IGQtPnBjaV9s
b2NrIHRoZW4gcGRldi0+dnBjaS0+bG9jayB0byBhdm9pZA0KcG9zc2libGUgZGVhZGxvY2sgc2l0
dWF0aW9ucy4iDQoNCj8NCg0KSSBhbSBhc2tpbmcgYmVjYXVzZSB5b3VyIHN1Z2dlc3Rpb24gbGVh
ZHMgdG8gIldoZW4gdGFraW5nIGJvdGgNCmQtPnBjaV9sb2NrIGFuZCBwZGV2LT52cGNpLT5sb2Nr
IHRoZSBvcmRlciBzaG91bGQgYmUgdGFrZW4gaW4gdGhpcyBleGFjdA0Kb3JkZXI6IC4uLiAiDQoN
ClsuLi5dDQoNCkFzIGZvciBvdGhlciBjb21tZW50cywgSSBhbSB0YWtpbmcgaW50byBhY2NvdW50
IHlvdXIsIEphbidzIGFuZCBTdGV3YXJ0J3MNCmNvbW1lbnRzIGFuZCByZXdvcmtpbmcgdGhpcyBw
YXRjaC4NCg0KLS0gDQpXQlIsIFZvbG9keW15cg==


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 23:05:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 23:05:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608192.946531 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkudZ-0006Cq-OO; Mon, 25 Sep 2023 23:05:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608192.946531; Mon, 25 Sep 2023 23:05:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkudZ-0006Cj-Km; Mon, 25 Sep 2023 23:05:09 +0000
Received: by outflank-mailman (input) for mailman id 608192;
 Mon, 25 Sep 2023 23:05:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2iti=FJ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qkudY-0005Z6-Fu
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 23:05:08 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f68067cb-5bf7-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 01:05:06 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 7070DCE1170;
 Mon, 25 Sep 2023 23:05:01 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 70766C433C8;
 Mon, 25 Sep 2023 23:04:59 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f68067cb-5bf7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695683100;
	bh=6OcRC5HCbr53WNPU+ciHzZDiuB1z9Gpd+5+g13ZxC3A=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=u6ZvLVhK71OnSo1Rlbnr8WTF7nYSHnBaErax9NzwR14zkiE2Zn1YMpNU3fkPAcH64
	 ZM9tbkSJXmLQRpqiyCvxgiIjb2+ofT7JJXSB1HD5rClmbPoT/4vFmGWEDI/5Fa8UnM
	 ChtzfTOPcYWD2fulyhZHByiYcVNfGM3AOGCbTSbO2sHIsHwcXkfYMBSI5t6i5NDiui
	 sWbtV8dKU5fE1HP8fHKQFVViPVhUU9LEoe3cApsvJtLhPZmHWGUX17tzVVOR/SnSw2
	 W9Aoq+ZcTB3Y7QF7tGW5Z8wlGTm8UqU/ycd2GfCDDV6djJFgMZX8PcIsLRSga5yCTa
	 lqxTTDb09Xz0Q==
Date: Mon, 25 Sep 2023 16:04:57 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Shawn Anastasio <sanastasio@raptorengineering.com>
cc: xen-devel@lists.xenproject.org, 
    Timothy Pearson <tpearson@raptorengineering.com>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, 
    Wei Liu <wl@xen.org>, Henry.Wang@arm.com
Subject: Re: [PATCH 3/3] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
In-Reply-To: <a47962a573eab38991a8aa3e09ca6b8bd3193b6c.1695681330.git.sanastasio@raptorengineering.com>
Message-ID: <alpine.DEB.2.22.394.2309251601140.1403502@ubuntu-linux-20-04-desktop>
References: <cover.1695681330.git.sanastasio@raptorengineering.com> <a47962a573eab38991a8aa3e09ca6b8bd3193b6c.1695681330.git.sanastasio@raptorengineering.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

Adding Henry as this issue is currently causing gitlab-ci failures. I
think we should fix it as soon as possible to get clearer results for
the 4.18 release. (This comment applies to the rest of the series as
well).


On Mon, 25 Sep 2023, Shawn Anastasio wrote:
> When building for Power with CONFIG_DEBUG unset, a compiler error gets
> raised inside page_alloc.c's node_to_scrub function, likely due to the
> increased optimization level:
> 
> common/page_alloc.c: In function 'node_to_scrub.part.0':
> common/page_alloc.c:1217:29: error: array subscript 1 is above array
>             bounds of 'long unsigned int[1]' [-Werror=array-bounds]
>  1217 |         if ( node_need_scrub[node] )
> 
> It appears that this is a false positive, given that in practice
> cycle_node should never return a node ID >= MAX_NUMNODES as long as the
> architecture's node_online_map is properly defined and initialized, so
> this additional bounds check is only to satisfy GCC.
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>  xen/common/page_alloc.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
> index 35d9a26fa6..6df2a223e1 100644
> --- a/xen/common/page_alloc.c
> +++ b/xen/common/page_alloc.c
> @@ -1211,6 +1211,9 @@ static unsigned int node_to_scrub(bool get_node)
>          } while ( !cpumask_empty(&node_to_cpumask(node)) &&
>                    (node != local_node) );
> 
> +        if ( node >= MAX_NUMNODES )
> +            break;
> +
>          if ( node == local_node )
>              break;
> 
> --
> 2.30.2
> 


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 23:13:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 23:13:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608198.946541 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkulA-0000Yr-Fi; Mon, 25 Sep 2023 23:13:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608198.946541; Mon, 25 Sep 2023 23:13:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkulA-0000Yk-Cd; Mon, 25 Sep 2023 23:13:00 +0000
Received: by outflank-mailman (input) for mailman id 608198;
 Mon, 25 Sep 2023 23:12:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2iti=FJ=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qkul8-0000Ye-TM
 for xen-devel@lists.xenproject.org; Mon, 25 Sep 2023 23:12:58 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 106b442a-5bf9-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 01:12:57 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 05088B80E80;
 Mon, 25 Sep 2023 23:12:57 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 75C67C433C7;
 Mon, 25 Sep 2023 23:12:55 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 106b442a-5bf9-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695683576;
	bh=Sxlsx41DxE9mm5pjVm7kGHCvDzwmkR/ToV/bOMDaBMs=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=oNuXp1xTqMUPLEX5ly5DhXFnNJxInBCZ3QHQ2/GVPPwPjhT/uRtHD+tF0qFLHaf1L
	 W7SLR9SIsEso8R1WEuPwxBIz8PkHKSqRFjqs08QJMPI8oRcT1j2MHmS3uS83N5DUn4
	 BQmK4CHgsm/UCb3pjH9vEZzIdhEz218jnH0UUFr24PVaQ8nhuGKt8y32NCKXXOLOc/
	 jdx5wX6M7ZR1qp9dhl5N0eV/qs5XFKSIgi6NpqIKtzW8n92bJlOkmBEOm3NdXD0d/i
	 2j30NKDTBuIlKnfMeOLkD9SpYFYH8PpuJUN3808h0CKRW10nl96ZIa0hj4TNDxYgOg
	 fbPTpQrFMOQ/Q==
Date: Mon, 25 Sep 2023 16:12:53 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Shawn Anastasio <sanastasio@raptorengineering.com>
cc: xen-devel@lists.xenproject.org, 
    Timothy Pearson <tpearson@raptorengineering.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Michal Orzel <michal.orzel@amd.com>, Jan Beulich <jbeulich@suse.com>
Subject: Re: [PATCH 2/3] automation: Change build script to use arch
 defconfig
In-Reply-To: <beb83dd70b15ee6bd896fb26532f5debf955cd48.1695681330.git.sanastasio@raptorengineering.com>
Message-ID: <alpine.DEB.2.22.394.2309251609330.1403502@ubuntu-linux-20-04-desktop>
References: <cover.1695681330.git.sanastasio@raptorengineering.com> <beb83dd70b15ee6bd896fb26532f5debf955cd48.1695681330.git.sanastasio@raptorengineering.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 25 Sep 2023, Shawn Anastasio wrote:
> Change automation build script to call the make defconfig target before
> setting CONFIG_DEBUG and extra options. This fixes issues on Power where
> the build fails without using the ppc64_defconfig.
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> Reported-by: Jan Beulich <jbeulich@suse.com>

What is the problem specifically? Is the issue that CONFIG_DEBUG enabled
before make olddefconfig causes certain DEBUG options also to default to
yes, and these additional options don't work well on Power?

If that is the case, wouldn't it be better to remove the -debug jobs
until they work well on Power? Or make them allow_failure: true ?


> ---
>  automation/scripts/build | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/automation/scripts/build b/automation/scripts/build
> index b4edcf010e..19dd9e8270 100755
> --- a/automation/scripts/build
> +++ b/automation/scripts/build
> @@ -22,7 +22,12 @@ if [[ "${RANDCONFIG}" == "y" ]]; then
>      # RANDCONFIG implies HYPERVISOR_ONLY
>      HYPERVISOR_ONLY="y"
>  else
> -    echo "CONFIG_DEBUG=${debug}" > xen/.config
> +    # Start off with arch's defconfig
> +    make -C xen defconfig
> +
> +    # Drop existing CONFIG_DEBUG and replace with value of ${debug}
> +    sed -i 's/^CONFIG_DEBUG=[yn]//g' xen/.config
> +    echo "CONFIG_DEBUG=${debug}" >> xen/.config
> 
>      if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then
>          echo "${EXTRA_XEN_CONFIG}" >> xen/.config
> --
> 2.30.2
> 


From xen-devel-bounces@lists.xenproject.org Mon Sep 25 23:37:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 23:37:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608205.946550 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkv8y-0006qE-Bh; Mon, 25 Sep 2023 23:37:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608205.946550; Mon, 25 Sep 2023 23:37:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkv8y-0006q7-91; Mon, 25 Sep 2023 23:37:36 +0000
Received: by outflank-mailman (input) for mailman id 608205;
 Mon, 25 Sep 2023 23:37:35 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkv8x-0006pw-9P; Mon, 25 Sep 2023 23:37:35 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkv8x-0005zY-6T; Mon, 25 Sep 2023 23:37:35 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qkv8w-0006ql-Lx; Mon, 25 Sep 2023 23:37:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qkv8w-0007Kb-LF; Mon, 25 Sep 2023 23:37:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=j8TWbIRGK07YFKCZ95iWLW6LXdz+LrRmeZCNI3A/Qaw=; b=Jp18biYocEKRtrgyFRqQQWsssz
	afr4NlGwrBO+szGqZywxxDtX3L8s6KvZuuJ/h2ZSDv/+VXY1ZvPyfJPOPfZ93vqRTfMRHcNC4ZLJ8
	CaWIklrudFhg1A9lZi0NQA64otad1TuF7bQe/7SYxiemQdSUGVEbkoMYJYXO71Q78pt4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183161-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183161: regressions - FAIL
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:regression
    xen-unstable:test-amd64-i386-xl-xsm:xen-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=d6351a10c80fcbbf2b5996d351b7181ba17b3b32
X-Osstest-Versions-That:
    xen=88a9501a848aade858a3bbda75f20cdf7c3c2f9a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Mon, 25 Sep 2023 23:37:34 +0000

flight 183161 xen-unstable real [real]
flight 183167 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183161/
http://logs.test-lab.xenproject.org/osstest/logs/183167/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-arndale   8 xen-boot                 fail REGR. vs. 183150

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-xsm        7 xen-install                  fail  like 183150
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183150
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183150
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183150
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183150
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183150
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183150
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183150
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183150
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183150
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183150
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183150
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183150
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  d6351a10c80fcbbf2b5996d351b7181ba17b3b32
baseline version:
 xen                  88a9501a848aade858a3bbda75f20cdf7c3c2f9a

Last test of basis   183150  2023-09-25 01:53:36 Z    0 days
Testing same since   183161  2023-09-25 13:12:25 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alistair Francis <alistair.francis@wdc.com>
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       fail    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit d6351a10c80fcbbf2b5996d351b7181ba17b3b32
Author: Federico Serafini <federico.serafini@bugseng.com>
Date:   Mon Sep 25 10:57:21 2023 +0200

    xen/emul-i8254: remove forward declarations and re-order functions
    
    Remove forward declarations, including one that violates MISRA C Rule
    8.3 ("All declarations of an object or function shall use the same
    names and type qualifiers"), and re-order functions.
    No functional change.
    
    Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 7e55acb58a0578e8f8c48f1a0ae0b572ad76c903
Author: Federico Serafini <federico.serafini@bugseng.com>
Date:   Mon Sep 25 10:56:45 2023 +0200

    xen/numa: address a violation of MISRA C:2012 Rule 8.3
    
    Make object declarations consistent. No functional change.
    
    Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
    Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 32e13804340ae91c7b633994f53b90396d8c88c6
Author: Federico Serafini <federico.serafini@bugseng.com>
Date:   Mon Sep 25 10:56:02 2023 +0200

    xen/hypercalls: address violations of MISRA C:2012 Rule 8.3
    
    Make function declarations and definitions consistent.
    No functional change.
    
    Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
    Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit 64e18eef5ebf50619304ee56332b25874fee2312
Author: Alistair Francis <alistair.francis@wdc.com>
Date:   Mon Sep 25 10:55:31 2023 +0200

    MAINTAINERS: Remove myself as RISC-V maintainer
    
    I unfortunately don't have time to be a Xen maintainer, so remove myself
    as the maintainer.
    
    Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 00:07:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 00:07:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608218.946574 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkvbl-0006i3-4T; Tue, 26 Sep 2023 00:07:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608218.946574; Tue, 26 Sep 2023 00:07:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkvbl-0006hw-1X; Tue, 26 Sep 2023 00:07:21 +0000
Received: by outflank-mailman (input) for mailman id 608218;
 Tue, 26 Sep 2023 00:07:20 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fQH+=FK=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkvbk-0006cr-0c
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 00:07:20 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2078.outbound.protection.outlook.com [40.107.13.78])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a75983b1-5c00-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 02:07:17 +0200 (CEST)
Received: from AS4P192CA0023.EURP192.PROD.OUTLOOK.COM (2603:10a6:20b:5e1::9)
 by PAWPR08MB9589.eurprd08.prod.outlook.com (2603:10a6:102:2e4::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 00:06:45 +0000
Received: from AM7EUR03FT061.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:5e1:cafe::cb) by AS4P192CA0023.outlook.office365.com
 (2603:10a6:20b:5e1::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Tue, 26 Sep 2023 00:06:45 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT061.mail.protection.outlook.com (100.127.140.72) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.17 via Frontend Transport; Tue, 26 Sep 2023 00:06:44 +0000
Received: ("Tessian outbound d084e965c4eb:v175");
 Tue, 26 Sep 2023 00:06:44 +0000
Received: from a57abcc16e4e.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 42DBAA73-7CE0-44CD-86C5-320D3C43CDE2.1; 
 Tue, 26 Sep 2023 00:06:39 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a57abcc16e4e.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 26 Sep 2023 00:06:39 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA4PR08MB5952.eurprd08.prod.outlook.com (2603:10a6:102:e9::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 00:06:37 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 00:06:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a75983b1-5c00-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1CvPs8vClVwnyo1YF7qGgDOLlYOvNqERXAgAVll3sxI=;
 b=YkfOlSIBNd+nK3prgqBKAk1+juICSUwcAJXLSHw9sujBaYlJXnddbj54K0b7OvBMVs1mzYu1h+K2Dj9qS1v1QCjauVFO04oFa1IM3w/gVlQoPC1BjZ06SPXqFz87QRpwfpfFIS3Fbdz3ezg7W3CL5yK6JQA4DUhqNhOTxhFJIek=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 3844103fb39f5ad1
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LUBezNCUR4mc8nrRsx+vfAVDG3JC3nh0cWYtyu4f9eE0NvMUZbdv1mL3lCtuohV+WpDW7iLeeI1rnpoLrWNQfag9ImPSSTVnVAXnm6g2X8HNVpS/x/bDV4snEYww9mMgH7anFmXpM851E0UlnB7WfVoBqKgjkljuxWqLIQGJMlRL4rErKWOkYYAfmpoSKf3k6PLYusmsqMmf5GhE6YNtZJwHDPbUy0BUVsCp+Z3AAcVU+msJO4ZzO/SQ/GKYxsucYRzGWcOv8nyGMi9lvA9Cikz0efv4CvDzzwrSegtwk656TqVS6pTivO9fFQ9IqgEWEpYhiN8M1o2xv7xKW+bQYg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1CvPs8vClVwnyo1YF7qGgDOLlYOvNqERXAgAVll3sxI=;
 b=cFT5vT3IMN6mzXSZZhvlSk7VT7yfpilqrUQsZ8b1Xehm1Qzw1W/x3V+Nb8Uhxq+xt4R3+wwsrX3gHpPaZvof/v3ivPo6cqxxYA4YUBRJEQxnP9FslFNN5PbrsA5McLoDBYsKWINqeDw3ny/lThmCLxeUEgscwu7RSzlErcz9ja9ZMbNXzdgBqEuISusgW3eZSfuL8TPyhJO8aB0pSQuwjqhKYWdzdrOWb/HmRX4hcmXo88qVUXeVmo6kpY+/ZV21bIpa20smv1WexZUiqXmT6vEVvoVhE9hf+F9uzqYxnSyv/wRSUHCRurRihoN+6LkwDF4zSe/r9ye/R5JjQBHPGA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1CvPs8vClVwnyo1YF7qGgDOLlYOvNqERXAgAVll3sxI=;
 b=YkfOlSIBNd+nK3prgqBKAk1+juICSUwcAJXLSHw9sujBaYlJXnddbj54K0b7OvBMVs1mzYu1h+K2Dj9qS1v1QCjauVFO04oFa1IM3w/gVlQoPC1BjZ06SPXqFz87QRpwfpfFIS3Fbdz3ezg7W3CL5yK6JQA4DUhqNhOTxhFJIek=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Shawn Anastasio <sanastasio@raptorengineering.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Timothy Pearson
	<tpearson@raptorengineering.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 3/3] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
Thread-Topic: [PATCH 3/3] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
Thread-Index: AQHZ8AGkc54vz/eFtkqxZbyiTL5NFLAsKWSAgAARLIA=
Date: Tue, 26 Sep 2023 00:06:36 +0000
Message-ID: <0C796FFE-6FD5-4772-A524-DA059AAD778D@arm.com>
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
 <a47962a573eab38991a8aa3e09ca6b8bd3193b6c.1695681330.git.sanastasio@raptorengineering.com>
 <alpine.DEB.2.22.394.2309251601140.1403502@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309251601140.1403502@ubuntu-linux-20-04-desktop>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PA4PR08MB5952:EE_|AM7EUR03FT061:EE_|PAWPR08MB9589:EE_
X-MS-Office365-Filtering-Correlation-Id: 17f4c0de-8adf-4f2f-abbd-08dbbe247851
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 l4GyPqU6hICo842vOltx/J3iBT9bwEXKswAMrCX6Xl3X8Unx9s8BlcAgdtt7w0jZjAE98PVOyYDFU2jbRELTEW3y5wrwjaYCo7yHHesF5LXjpC6YFtn2F4Ox01CTIssOHN9Lr870jwR+wmKoEWJ7LED9Zj6H+dtlgjg7+4X8BkS3NklztvFlvDPEG4FdXl8b6Jt8aExivdXWSUcGm39HSVPsbhZU8SvwgnKCcZamCo/G8ffg3mB7mMZ/iK2hVagDwhMYWnczB4x9IXPYh1CAUcaRFCvr+Nf3HqbyPQzwjhlBEmiXBRCIyar/C/lQO8qDBM+KKoAu7jJHZJhITnId/ZdA9am2+yHYxvayAW/BrrjxNmsVzGVmCnHndZIh+1zad81oHT9J51HkiFdCukb+adHEyl2PBr2+q88yPKe3aOhWGkIoDbmah473H9dLUEXnEvGzkBaucscoryzMNHbkWBe1rHQa7tPfkcb5oAzc+FJQ+Gd1aKxocw/RDJPvz38AMPLm7YU4cxsaplRzwx4VZEQV5nvBO3sXrzHcpLCv5bJfi5xs7L2E7njTIznf35wKffKoHpSUzFZ3r6r22BzzyAihLTo04D2wUC6yoymqUWP7Yt0uxhorGy1pCnfq8S6UQy8DcED9DDluvm9YFHVGPg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(396003)(136003)(366004)(346002)(230922051799003)(1800799009)(451199024)(186009)(41300700001)(2616005)(8936002)(4326008)(8676002)(54906003)(66476007)(66446008)(66946007)(64756008)(66556008)(6916009)(316002)(26005)(76116006)(91956017)(86362001)(2906002)(6486002)(122000001)(478600001)(33656002)(38070700005)(53546011)(71200400001)(83380400001)(36756003)(6512007)(5660300002)(38100700002)(6506007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <0A1A314CCCE2DE46AF6BFE111C90B620@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB5952
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT061.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	34fd4b47-b9f6-49fa-4fa0-08dbbe247337
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1TehPg151M6pEK6Z5vVsy0en9j4CDxuj1iwZgjqM8zNhqae1Mtdg+cT6qk2tiJE3C15INShl7adrOx0v9X/jJZH0sIovrePPpaH5pctDh5fKvHH/iCIC3tX+MOccnsKuUrFivGYu4WkobJ/nHHBqTS/z7SHyrn6PySHTXDc5Ttt9TQEcSIYKQ8tCidk2PziNAiYvMtZw5Y1N5gPCcMVaOsYJXMPiYrcxE37UcQimQK0rT3quUnVjLviHBLvEn4e5oBXNeCJY3l9UCwjr/i1pYlTkCVDsw30YjJwZg+1V/uq9yezJHM+xjBn4cST2ESwPt2qg/dIKTUF2Z7z4x38yVxLgDzZ5rAGgGafmUvrMyPqrMaXmTUNyGiyLPWOu6X0zvuVCfsVMoZsxv9/AHoFCKqauCJMOipqLyaSKRvzZZqMwEOgnUsvsUX90Nspzaif3H2YrqDsDCvwzlQY2MLP23pQCiGwr6+KkJwX/COiL1L6354xAtzHJ6IecLl2DOWm99Eknba2AqC5PTmMws58C+3ycogWd2lwKlzzb9+SPPpHYEPb8P6IyM0+LFboEDazTCc7GWRUl3cjA6HZfWabUQE6/5/x1KmJqj81xQw6Sx+aMJoh01cQ+pC1vtRIn2oALgYfhKcTZYLEsfHPaxdPPApFHoJMlSgOZI+Kte0vVOTrUhvKIsbqxb/fl+uoqGfY2Mjzwvm9eIY1nVX0EMv2LjVfZtuRoT/8LOteOm/V9VxER23p5X3EEXobCFkHlQT83
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(39860400002)(346002)(136003)(396003)(230922051799003)(186009)(1800799009)(82310400011)(451199024)(46966006)(40470700004)(36840700001)(6512007)(40460700003)(53546011)(6486002)(6506007)(83380400001)(356005)(82740400003)(81166007)(86362001)(33656002)(36860700001)(47076005)(36756003)(2616005)(26005)(336012)(40480700001)(2906002)(316002)(41300700001)(70206006)(54906003)(70586007)(478600001)(8936002)(4326008)(6862004)(8676002)(5660300002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 00:06:44.9150
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 17f4c0de-8adf-4f2f-abbd-08dbbe247851
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT061.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9589

Hi Stefano,

> On Sep 26, 2023, at 07:04, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> Adding Henry as this issue is currently causing gitlab-ci failures. I
> think we should fix it as soon as possible to get clearer results for
> the 4.18 release. (This comment applies to the rest of the series as
> well).

Thanks, the CI should indeed be fixed asap.

>=20
>=20
> On Mon, 25 Sep 2023, Shawn Anastasio wrote:
>> When building for Power with CONFIG_DEBUG unset, a compiler error gets
>> raised inside page_alloc.c's node_to_scrub function, likely due to the
>> increased optimization level:
>>=20
>> common/page_alloc.c: In function 'node_to_scrub.part.0':
>> common/page_alloc.c:1217:29: error: array subscript 1 is above array
>>            bounds of 'long unsigned int[1]' [-Werror=3Darray-bounds]
>> 1217 |         if ( node_need_scrub[node] )
>>=20
>> It appears that this is a false positive, given that in practice
>> cycle_node should never return a node ID >=3D MAX_NUMNODES as long as th=
e
>> architecture's node_online_map is properly defined and initialized, so
>> this additional bounds check is only to satisfy GCC.
>>=20
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>=20
> Acked-by: Stefano Stabellini <sstabellini@kernel.org>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
>=20
>> ---
>> xen/common/page_alloc.c | 3 +++
>> 1 file changed, 3 insertions(+)
>>=20
>> diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
>> index 35d9a26fa6..6df2a223e1 100644
>> --- a/xen/common/page_alloc.c
>> +++ b/xen/common/page_alloc.c
>> @@ -1211,6 +1211,9 @@ static unsigned int node_to_scrub(bool get_node)
>>         } while ( !cpumask_empty(&node_to_cpumask(node)) &&
>>                   (node !=3D local_node) );
>>=20
>> +        if ( node >=3D MAX_NUMNODES )
>> +            break;
>> +
>>         if ( node =3D=3D local_node )
>>             break;
>>=20
>> --
>> 2.30.2
>>=20



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 00:07:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 00:07:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608217.946564 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkvbi-0006Rs-Tq; Tue, 26 Sep 2023 00:07:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608217.946564; Tue, 26 Sep 2023 00:07:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkvbi-0006Rl-Q4; Tue, 26 Sep 2023 00:07:18 +0000
Received: by outflank-mailman (input) for mailman id 608217;
 Tue, 26 Sep 2023 00:07:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fQH+=FK=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkvbh-0006Rf-BE
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 00:07:17 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20621.outbound.protection.outlook.com
 [2a01:111:f400:fe13::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a57968fa-5c00-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 02:07:14 +0200 (CEST)
Received: from DU2PR04CA0013.eurprd04.prod.outlook.com (2603:10a6:10:3b::18)
 by AS8PR08MB9042.eurprd08.prod.outlook.com (2603:10a6:20b:5b0::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 00:07:11 +0000
Received: from DBAEUR03FT043.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:3b:cafe::4b) by DU2PR04CA0013.outlook.office365.com
 (2603:10a6:10:3b::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Tue, 26 Sep 2023 00:07:11 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT043.mail.protection.outlook.com (100.127.143.24) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Tue, 26 Sep 2023 00:07:10 +0000
Received: ("Tessian outbound c99fbc01d472:v175");
 Tue, 26 Sep 2023 00:07:10 +0000
Received: from f6fc9ab6cc1a.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 BD2B995D-6DF5-4ED3-A3AE-68A1F64BA647.1; 
 Tue, 26 Sep 2023 00:07:03 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f6fc9ab6cc1a.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 26 Sep 2023 00:07:03 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PA4PR08MB5952.eurprd08.prod.outlook.com (2603:10a6:102:e9::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 00:07:02 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 00:07:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a57968fa-5c00-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IE2MJngDGAq5i/YJf7EcjA96TPSxh3SA4byG8OXiYGg=;
 b=2UyiSiFqi6zZEvHEm6r3UEdYKGlDSnx99PV6sGkz0eqXp/JIZQlA3DEtKiukyGza3BfpDh9pErX6tHGHm9IcOagq04MU/acBszoJdkwKVXpdGWZs4sZvTJfxsTSSSZYhTd2ElEaY16Spi39tBaZvqK9ngm4K0dCYFT4jtw+8p88=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 3d02c5c8d692575b
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=A7w4UI/FTJMmt0Re+syCRqYMgnFVcaKvkikcPAl9JtGib/cERuoFmC5AnO4h2UXRuhxA52xxntWu5p+k2e7SFQPWAbc+uTnQf4qr4OCjhwk1SqWlUhsxo0lyYvJkYSBisJjngouICO2u+MaeE3o+iAdiChTBqbZX2IjISpBsX3SI5L3LdBrTw/WVkfHNF9M/RhRihvOoqTVz/TMQgdJGka4sAjfaw4dxoZTTc1OfOjTLVFh+RQDhHQYWQGVhB9E4jDeTy7XvZuhJ9H4M/L8/hLX4Z7Q2/XfThpRMKD2C3AIcr5JfKfSOF9cRO6GfPsCwryxSF1VFLsffXwKgakx7UQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IE2MJngDGAq5i/YJf7EcjA96TPSxh3SA4byG8OXiYGg=;
 b=hLnFTjkeOv8DehcP42LzymkhuJcR5Ph2hjYPAEqv3oQe/OBHtqbKcodf2H2DP5yZYavpy+cfa9MMcCw/0nT41xMeoMbcDKXjIlcH/W9iA9BaqggqBbD2aPETfA/0YATJL/HlEhrUAPXf4YHQ78YhHamYaQUncXQOd1pGFVy64a6Q15zYBxdEez/eME5ZJvvyP/2C1KBlpi7flI1DEHqpv+ygRspBKbQYAb77pCJ+F7eu5qhLKxjI5ccW7wvSnbOUyT+hpDD1lc0kyoShOBoQgoolLpW8EYWzAnbDuK23Pbmqhqn187lM51ALjS8x1hYgBCsne64ZaEorwGQQnRsEUQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IE2MJngDGAq5i/YJf7EcjA96TPSxh3SA4byG8OXiYGg=;
 b=2UyiSiFqi6zZEvHEm6r3UEdYKGlDSnx99PV6sGkz0eqXp/JIZQlA3DEtKiukyGza3BfpDh9pErX6tHGHm9IcOagq04MU/acBszoJdkwKVXpdGWZs4sZvTJfxsTSSSZYhTd2ElEaY16Spi39tBaZvqK9ngm4K0dCYFT4jtw+8p88=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Shawn Anastasio <sanastasio@raptorengineering.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Timothy Pearson
	<tpearson@raptorengineering.com>, Doug Goldstein <cardoe@cardoe.com>, Jan
 Beulich <jbeulich@suse.com>
Subject: Re: [PATCH 1/3] automation: Drop ppc64le-*randconfig jobs
Thread-Topic: [PATCH 1/3] automation: Drop ppc64le-*randconfig jobs
Thread-Index: AQHZ8AGnwE786bP3sE2cm1TVrz+0uLAsJ1yAgAATU4A=
Date: Tue, 26 Sep 2023 00:07:02 +0000
Message-ID: <3C3E3297-1C2B-4B77-A83A-1D3F0B1E2BA3@arm.com>
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
 <76d21ac8a0de7d5ebac8b39a8d552b931a6302a3.1695681330.git.sanastasio@raptorengineering.com>
 <alpine.DEB.2.22.394.2309251557350.1403502@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309251557350.1403502@ubuntu-linux-20-04-desktop>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PA4PR08MB5952:EE_|DBAEUR03FT043:EE_|AS8PR08MB9042:EE_
X-MS-Office365-Filtering-Correlation-Id: 1e5a5d7f-ca52-42e6-27f8-08dbbe2487d2
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 f5k8t34D9VzLG/GvHN3u4sq0uWPD+D/QEJBXVvJEetrdmoQGIlbIiEs+SaKXU+n5mJzMExxG7pnxlYHnxOS+SCS9DZ0jRaXawvz0bz81IiCv7Pzwa+QSczYtZw0F3Q81AeB3hpLiTC5nL+W7P1T1L+Ry+gEt5cyZH4vdEZ18TD3Je9vShK+ybG9iwuyfCI8NxIJ6n5dph/z52/1ROlut0aJBmqlP/N+ch5D9vAkaOmamVfq04hMYizDEgNpeEYshfkQbGDs/9vBEY+B61WKKonv1LMu5W6quOwU5YjRbUnlTrhxQJJU5M5vEeTjoSB7CMZHDn7exoXyrLhBShlvImBdlI2pZQyIk1qDMadfLW0qgqjj2m8UK3nYnksd2Xkl7B1n3to1L37wtrby16hH3ChDK1efKx/Y8oOJQkIGxHlg1xV1/k0rZ8OaWogp3YID7R5s6QHzRyV6q3R5WA1dC/ckQb0UrJEn0dOgYghpYTSfGDf4V/YGLkFGsfG5g1G/V51+dVAxY1nIVV2Rq5Ka+3mVcfc7Yk6Ase9MlPoiCZLBJUlJ7cITd0QNJR4wu8JW0avwrOnkFihvRauva8LoSzVF+dQZ+rYC8LSoQxna0dYb7N5oUAzBHIjlSx6O33SayK8Mr1kx1pfHdteJuHEi45A==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(396003)(136003)(366004)(346002)(230922051799003)(1800799009)(451199024)(186009)(41300700001)(2616005)(8936002)(4326008)(8676002)(54906003)(66476007)(66446008)(66946007)(64756008)(66556008)(6916009)(316002)(26005)(76116006)(91956017)(86362001)(2906002)(6486002)(122000001)(478600001)(33656002)(38070700005)(53546011)(71200400001)(83380400001)(36756003)(6512007)(5660300002)(38100700002)(6506007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <AA948B0A006FF84B8C1F6C72F00DA605@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB5952
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT043.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	5a06960d-1219-492a-557e-08dbbe2482a8
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	slRPUwmptYkStjGNxAbJ95eIQAyjlNCYX6iTR26kQ7wq4hZGUZfLkvOrYB4x8XOJ5/twsAV1dkFBwapkibz2BihR/GsYmW7LbllOvioaR+etwe5ihqE159xOcukdrPLCIUweu72V2/D+2VpSDXZc+YQGqp75YWVV9AE1vVX7NqbFX0jZawwP8RcACa14/nx6VCRUigMMLkZqzcHmNgQvc21zhvuFpucS7C7vfXjobKiYa6+XH21tvWw0DpxXfkXOllBYPXcIOuri2rbz+KX8MKtNkQuqokmP55PBWDqN01Q31NkL2CrWRFhkFQn+QoLj8oYheQBOCJnDv5NyykK46qiOJTYeBrXi9yGgAhW2ih/FVeVdZvGC78fQwGp5kdaAnrUkuFPYJ/ZNC56JKwqbbnwC5umElNj8jKtG367OQWMnqOpVLJ6uonbaD3hz6gYajP/XWWzt/qM0m+EH0VEMJgOw1tdU69J+wRegzlzdl88vuz+kixp81EgcGiyHElf+GRrfJJv01aRJqpz4kIhO0q2mIHxYrIOrWFwSqN74MIbTyfJyqGSNhLCfNLG02LZnKs11exfvs/fjB/g3V1tKfDRggyys6IUDHzEO0XvvqjTK2sTNYlNHa36XEwerrJdA+4FgB5JwPFXA9BRno2NaSEhociS3f2zqYEwM3IyGNw5IInaSP/eRH/7jCFfBCCUQ9w026yAqvD6kum5sYnLAb2RarXBgC/HuQEUt8BqYL6FR+X1unFkAjpQKGagsugL3
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(376002)(346002)(396003)(39860400002)(230922051799003)(451199024)(186009)(82310400011)(1800799009)(46966006)(40470700004)(36840700001)(41300700001)(316002)(8676002)(54906003)(70586007)(70206006)(40480700001)(6512007)(8936002)(6862004)(2906002)(4326008)(478600001)(40460700003)(26005)(36860700001)(6486002)(47076005)(33656002)(6506007)(53546011)(81166007)(83380400001)(5660300002)(36756003)(336012)(2616005)(107886003)(86362001)(82740400003)(356005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 00:07:10.9697
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1e5a5d7f-ca52-42e6-27f8-08dbbe2487d2
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT043.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9042

Hi,

> On Sep 26, 2023, at 06:57, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> On Mon, 25 Sep 2023, Shawn Anastasio wrote:
>> Since ppc64le is still undergoing early bringup, disable the randconfig
>> CI build which was causing spurious CI failures.
>>=20
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>> Reported-by: Jan Beulich <jbeulich@suse.com>
>=20
> Acked-by: Stefano Stabellini <sstabellini@kernel.org>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

>=20
>=20
>> ---
>> automation/gitlab-ci/build.yaml | 18 ------------------
>> 1 file changed, 18 deletions(-)
>>=20
>> diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/buil=
d.yaml
>> index 1619e9a558..32af30cced 100644
>> --- a/automation/gitlab-ci/build.yaml
>> +++ b/automation/gitlab-ci/build.yaml
>> @@ -563,24 +563,6 @@ debian-bullseye-gcc-ppc64le-debug:
>>     KBUILD_DEFCONFIG: ppc64_defconfig
>>     HYPERVISOR_ONLY: y
>>=20
>> -debian-bullseye-gcc-ppc64le-randconfig:
>> -  extends: .gcc-ppc64le-cross-build
>> -  variables:
>> -    CONTAINER: debian:bullseye-ppc64le
>> -    KBUILD_DEFCONFIG: ppc64_defconfig
>> -    RANDCONFIG: y
>> -    EXTRA_FIXED_RANDCONFIG:
>> -      CONFIG_COVERAGE=3Dn
>> -
>> -debian-bullseye-gcc-ppc64le-debug-randconfig:
>> -  extends: .gcc-ppc64le-cross-build-debug
>> -  variables:
>> -    CONTAINER: debian:bullseye-ppc64le
>> -    KBUILD_DEFCONFIG: ppc64_defconfig
>> -    RANDCONFIG: y
>> -    EXTRA_FIXED_RANDCONFIG:
>> -      CONFIG_COVERAGE=3Dn
>> -
>> # Yocto test jobs
>> yocto-qemuarm64:
>>   extends: .yocto-test-arm64
>> --=20
>> 2.30.2
>>=20
>=20



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 00:12:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 00:12:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608228.946584 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkvgg-0000Nn-O1; Tue, 26 Sep 2023 00:12:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608228.946584; Tue, 26 Sep 2023 00:12:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkvgg-0000Ng-Ky; Tue, 26 Sep 2023 00:12:26 +0000
Received: by outflank-mailman (input) for mailman id 608228;
 Tue, 26 Sep 2023 00:12:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ZoCt=FK=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qkvgf-0000Na-KR
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 00:12:25 +0000
Received: from NAM04-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam04on20621.outbound.protection.outlook.com
 [2a01:111:f400:7e8c::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 5c76b5cd-5c01-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 02:12:22 +0200 (CEST)
Received: from DM5PR08CA0057.namprd08.prod.outlook.com (2603:10b6:4:60::46) by
 IA1PR12MB6556.namprd12.prod.outlook.com (2603:10b6:208:3a0::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.31; Tue, 26 Sep
 2023 00:12:18 +0000
Received: from DS1PEPF0001708F.namprd03.prod.outlook.com
 (2603:10b6:4:60:cafe::1c) by DM5PR08CA0057.outlook.office365.com
 (2603:10b6:4:60::46) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Tue, 26 Sep 2023 00:12:17 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS1PEPF0001708F.mail.protection.outlook.com (10.167.17.139) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Tue, 26 Sep 2023 00:12:17 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 25 Sep
 2023 19:12:17 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 25 Sep
 2023 19:11:57 -0500
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Mon, 25 Sep 2023 19:11:56 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5c76b5cd-5c01-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kmbz9bTHomc+Um/ngCsyHcX1Or6Aa6YMFt57c8ubT0pUp/i5GUdqSWxw7qLokCqCcptujEwH+awwrDuvOGCQrr2raOwlEuKtXKQeAFDpjROJqL3ilFa41jzBA5US69iC1QSOK2kPKhGB+5rTfg9HNLrRTy2ks5Yq5nW8INvWcuuaOtpVyFoMwl3uyXd/Xj04vzKcVzfIyxYeYioc6CdJLLhc36ExXGapEkfKGt6aihj6OlQHmtOESh13mvqgAu5p2pOoYFnpZfxsSmogjlFO1HfKMN67EDKvmBdqZJ99uCMOUe5dQ3+9gwUm6v6jyX1H/vS8I35RDH4JZ/1eE6jP6g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Bb4xPjnQOpvsJw0rFGoaYpZrwT8pVinI7f6de7Tfvi0=;
 b=dONiJJFD3hYICEQVFaYsJoRHP/OsCL7sWlJ69r7Pd1NI7RQgVRAgMEY+E/eMy4KHh9NHPUPoK02F7vPdjV9bMq8mOlSWwjmcphSfASnpoyaJ6kL6rmH8BWfY866UvXaKwpJw68w1dqsYXvHF3U8DPIleuSjnspzZ9HbfC+M6OzmPapNMCRSkkfumUBMc4lAIsdTx1vGyO3MUj7oLoy6WjCkX36RzHQFECj2dAmwih5m3f0BuNql8GZSdMTrOyFc7xmli/QnmfTUM/fvlsCWpABeadjIcs7PDUBovOxQvEncpWGWehxBBljeELWQHIpNeUk4kWnhUNMpvIX/d38mCsw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=epam.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Bb4xPjnQOpvsJw0rFGoaYpZrwT8pVinI7f6de7Tfvi0=;
 b=qJtZ2Nr+gRYx+1Yov4Z0itcWjvoPh66jIQ4jhN9ufKx9bOnOM1yfGUPztUriOn6pDVfVfiIyNxG12sRsmiNPpEK9JVBQ2dcrZmUa68J/2ue2xrezoIMovMCBS15ZO5ZD0li81XSB3RNJ0g86ASHxQqLZe0OwNMjvO5sHesU7F9k=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <2dbbe50c-8542-e414-7475-df921aaa75b0@amd.com>
Date: Mon, 25 Sep 2023 20:12:03 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v9 16/16] xen/arm: vpci: permit access to guest vpci space
Content-Language: en-US
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
	<julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, "Jan
 Beulich" <jbeulich@suse.com>, Wei Liu <wl@xen.org>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-17-volodymyr_babchuk@epam.com>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <20230829231912.4091958-17-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS1PEPF0001708F:EE_|IA1PR12MB6556:EE_
X-MS-Office365-Filtering-Correlation-Id: 9f5c9f7a-1b61-491d-8e26-08dbbe253e84
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3zYzEDKCQra0SNPC/st9vdTz+zzvGqTbJv75X/YAneXpWjKx7mgilxYgwruVKRxi+KidsYdiJC0E2O0RJQ/y4IFVUMHZ8pMCbHKKf2Z+1q0iaKz8qfj2CjUHKq+h9DPj4gXLGBUFf0/ltmaBnuHh/bHRjNOilQV4AYNnaa2ezDeHxm8DEkpG01BZGVpwCN21Io0ZuArCQi0DUJ5VTwkdOU42ClYH7KUvfQewo70AN+iniIk2rulzE7xLBSCbED9erZVe0/+cnFCOf0eYVmS3McsG+nzhTz4OccKamh2FFobB6zXyDXe0BDijv+YiSdzCyvRNNycHBi4F1l+Olf2zqFZiOSzYo+LavzHkRCLrvXF+YiBpgpWgUhjaabV9jb15z8PiTaWcb8oiNxqKfNJ7xeJBDxH54M+F2sCzgQA8RcwMy+xH66B/7/MCNnkCjwnRV0X3GdWqGWFpPvc0PQASi5Fs2YYLrFfquTY/3bO9VHe+dcnJxQp9rWLKdmi1paPqIBAx2QNsZIiijvG5vvPqmuxzunGw9KlDChX+IIt16XCFqjvP/Cy0nIeaNgTwwK3TzlW5blOu0LPivlQ5gU3U8M2+X1Zgb1m+FuqUkSCCVY8bY8qfdC71t3KfhICYPuTbcW5oagbBr7SY4CG88RVU0HuJY27zs9jSlonoPzwLg6ZvPtGzNYR6ovcvDOBJksvolkK19N1K54DP7Y2FQOlyzLnnO13xZ0yiS36ISDlvcQ2msNbHR0xCQVNxidEey35snmyoaAEyYEFgUvH/bMaJPoAry2spm9lLOD5SptHlXUw=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(396003)(136003)(376002)(346002)(230922051799003)(1800799009)(82310400011)(186009)(451199024)(36840700001)(40470700004)(46966006)(26005)(4326008)(316002)(8936002)(8676002)(54906003)(2616005)(16576012)(40460700003)(110136005)(70206006)(70586007)(5660300002)(40480700001)(41300700001)(36860700001)(6666004)(86362001)(31696002)(2906002)(47076005)(82740400003)(81166007)(31686004)(356005)(478600001)(83380400001)(426003)(336012)(36756003)(44832011)(53546011)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 00:12:17.4217
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9f5c9f7a-1b61-491d-8e26-08dbbe253e84
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS1PEPF0001708F.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6556

On 8/29/23 19:19, Volodymyr Babchuk wrote:
> From: Stewart Hildebrand <stewart.hildebrand@amd.com>
> 
> Move iomem_caps initialization earlier (before arch_domain_create()).
> 
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> ---
> This is sort of a follow-up to:
> 
>   baa6ea700386 ("vpci: add permission checks to map_range()")
> 
> I don't believe we need a fixes tag since this depends on the vPCI p2m BAR
> patches.
> ---
>  xen/arch/arm/vpci.c | 6 ++++++
>  xen/common/domain.c | 4 +++-
>  2 files changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/xen/arch/arm/vpci.c b/xen/arch/arm/vpci.c
> index 01b50d435e..fb5361276f 100644
> --- a/xen/arch/arm/vpci.c
> +++ b/xen/arch/arm/vpci.c
> @@ -2,6 +2,7 @@
>  /*
>   * xen/arch/arm/vpci.c
>   */
> +#include <xen/iocap.h>
>  #include <xen/sched.h>
>  #include <xen/vpci.h>
> 
> @@ -119,8 +120,13 @@ int domain_vpci_init(struct domain *d)
>              return ret;
>      }
>      else
> +    {
>          register_mmio_handler(d, &vpci_mmio_handler,
>                                GUEST_VPCI_ECAM_BASE, GUEST_VPCI_ECAM_SIZE, NULL);
> +        iomem_permit_access(d, paddr_to_pfn(GUEST_VPCI_MEM_ADDR),
> +                            paddr_to_pfn(PAGE_ALIGN(GUEST_VPCI_MEM_ADDR +
> +                                                    GUEST_VPCI_MEM_SIZE - 1)));

We should also permit access to GUEST_VPCI_PREFETCH_MEM_ADDR

> +    }
> 
>      return 0;
>  }
> diff --git a/xen/common/domain.c b/xen/common/domain.c
> index 9b04a20160..11a48ba7e4 100644
> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -695,6 +695,9 @@ struct domain *domain_create(domid_t domid,
>          radix_tree_init(&d->pirq_tree);
>      }
> 
> +    if ( !is_idle_domain(d) )
> +        d->iomem_caps = rangeset_new(d, "I/O Memory", RANGESETF_prettyprint_hex);
> +
>      if ( (err = arch_domain_create(d, config, flags)) != 0 )
>          goto fail;
>      init_status |= INIT_arch;
> @@ -704,7 +707,6 @@ struct domain *domain_create(domid_t domid,
>          watchdog_domain_init(d);
>          init_status |= INIT_watchdog;
> 
> -        d->iomem_caps = rangeset_new(d, "I/O Memory", RANGESETF_prettyprint_hex);
>          d->irq_caps   = rangeset_new(d, "Interrupts", 0);
>          if ( !d->iomem_caps || !d->irq_caps )
>              goto fail;
> --
> 2.41.0


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 01:23:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 01:23:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608239.946593 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkwn5-0004Qe-JR; Tue, 26 Sep 2023 01:23:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608239.946593; Tue, 26 Sep 2023 01:23:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkwn5-0004QX-Gf; Tue, 26 Sep 2023 01:23:07 +0000
Received: by outflank-mailman (input) for mailman id 608239;
 Tue, 26 Sep 2023 01:23:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fQH+=FK=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkwn4-0004QR-4S
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 01:23:06 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on061d.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::61d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3c2047e2-5c0b-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 03:23:02 +0200 (CEST)
Received: from DU2PR04CA0229.eurprd04.prod.outlook.com (2603:10a6:10:2b1::24)
 by PA4PR08MB5968.eurprd08.prod.outlook.com (2603:10a6:102:e9::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 01:22:56 +0000
Received: from DBAEUR03FT019.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:2b1:cafe::1f) by DU2PR04CA0229.outlook.office365.com
 (2603:10a6:10:2b1::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Tue, 26 Sep 2023 01:22:56 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT019.mail.protection.outlook.com (100.127.142.129) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Tue, 26 Sep 2023 01:22:56 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Tue, 26 Sep 2023 01:22:55 +0000
Received: from b51084378359.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 DD74DB4C-70E8-41D6-AAFD-FFB4BBAE0DE4.1; 
 Tue, 26 Sep 2023 01:22:44 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b51084378359.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 26 Sep 2023 01:22:44 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB9PR08MB8267.eurprd08.prod.outlook.com (2603:10a6:10:3c5::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 01:22:41 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 01:22:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3c2047e2-5c0b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=BT+6fsnEkJ6JZvZHojF93bIJVFm5eWHfBnsMyJDuFVc=;
 b=5h1vL8Tdj3m8hdNhSKyzDvFuq0OGE/74HzzPsBm0Rxst79Bmifv7itE9c01sKl1HayamUx6Re/Xwykl+pEvmtjpNf0VvtJP2QLhTCpxuVU2FTiTefpOGHELNt4caLd+W14d1Q3wcDatLos8LgocF/Bpd/d1wwZn4T+n1M9nsu94=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 14dbabfbb64c1615
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mS3OnJNu2T4SQa4HvOTecvHGWnv5JgSiYjwuh+dHw8+QTQIDlxubwHGm+rg1zAu2WlkXdZcXuvJ+2Ujww9ZNSSb+03fEp6dwkHRYPYem6La+Y/Gx45sPAO59lBl2ALjhnLwVLGTT2PHseZAZfV5W3uhU7rsDU3So2NC+tYpEaX52N/NI8rBTUv0ZP8GI1veXKtywFCmKiX7C4gm2a+UckUSzDvd/vSr/tSg8Iz0RfdCPLOFL7IBX0TgVXD03P0t2zBc6cJRB7q9rovbbeR+PRtvVO67AH3f9js8xcXXSk2ee0oLxhMYBmgqbf3lNCtonS8JuJoRJi20p9KtHuorHFg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=BT+6fsnEkJ6JZvZHojF93bIJVFm5eWHfBnsMyJDuFVc=;
 b=di398i6Gycpqmvnv7Vp1gG5+upVpdoCNmcrRYpAyoArKn4WZqVVsZ9fI2HSW2CtuihrZV5zd3+Fg443Pe2itvm5Hkz0kiA8qiQcBMX77rI6XuZ3eERNhZOrz/vck/TpaSX9TQPOMQy33U/00TzuOS0cE9Krv1HcRiBHivJMlJGzEMDmn9BwKwHxA/SlydwbR5H+JPMunDJURYXdgK2iioqtvgzXAWVgOiRqsAvlAhUZVV98gTk1b217RZc2j08mfC7Ax9pa6INkIePclkB/ADbHZt3k+aTEJ+empJ6TkyfPVhyuWp47uRmA20KHtvm2cBjS/04XbETrdaTf5cGboTA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=BT+6fsnEkJ6JZvZHojF93bIJVFm5eWHfBnsMyJDuFVc=;
 b=5h1vL8Tdj3m8hdNhSKyzDvFuq0OGE/74HzzPsBm0Rxst79Bmifv7itE9c01sKl1HayamUx6Re/Xwykl+pEvmtjpNf0VvtJP2QLhTCpxuVU2FTiTefpOGHELNt4caLd+W14d1Q3wcDatLos8LgocF/Bpd/d1wwZn4T+n1M9nsu94=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>, Wei
 Chen <Wei.Chen@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <Penny.Zheng@arm.com>
Subject: Re: [PATCH v6 06/13] xen/arm: Split page table related code to
 mmu/pt.c
Thread-Topic: [PATCH v6 06/13] xen/arm: Split page table related code to
 mmu/pt.c
Thread-Index: AQHZ2U+aje2PKtXU80iuXwonhzBTpLAsEaAAgABrlgA=
Date: Tue, 26 Sep 2023 01:22:40 +0000
Message-ID: <D2229788-EBA1-4FFF-9074-7603C1719F08@arm.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-7-Henry.Wang@arm.com>
 <48bb2e22-ba78-4f45-9783-d9e5f83e75d8@xen.org>
In-Reply-To: <48bb2e22-ba78-4f45-9783-d9e5f83e75d8@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DB9PR08MB8267:EE_|DBAEUR03FT019:EE_|PA4PR08MB5968:EE_
X-MS-Office365-Filtering-Correlation-Id: 87797ccb-0506-4c1e-3768-08dbbe2f1cdd
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 yS354MuPvJJrcsuYcPkN4OtixUiS8zu8tAOuDrzncoSnk8usOtAttTbyMd6nvDQRQ8u5evDr08n0djVQPMqAuuQXSfMlO1M+r65H15M14yxhMlhm1IvuIlJiRXEdtOZFeSQl2GnTnRV0he26hX9h7bXFdG2OkpDCzuMvJGMIWEZT8t0Ydh80xfY7+FCwsYB9jVpIb2SaEkcQHk6ODAjYmyp2K6H1G0fi0ucTYbQPIFJdZ0qCmGNbZ36yqyEBwNBoBW+uJlL7xcmjM6dixI7di3zJJQvvyMtS84b9ojoqBvrkQ6YtZRJX1GKEPVFD81zYemcEGtEvmaef6GcTFvUW8xN/92xvCKWLSJxu3Qa6NJj1fuxV5vnEaC6WxDZtL6f1Uw+9Sq1dcmUR8bA2/qIA0gjAXxJ/N0LZa+7P+EYpIIz4gUbAi0tUZTIXlzoK+SA/DwjLdwpTMktcBWqNZxRgOy36ZLJB6X1dIPoPUggPdEJOIIJR4zBD0VML3Sp7hE904tXoHAgHQ9JVKlfTB6t0KoKFZnocbRAaTZsGmVWFzzmA+Qm8EZBeUu+yTrcTQuE93AaMn9IO7vlEBpaV2cfmCScTsFZ/tfhMdVYOliR1R4+0Gr+cEomPkBBJll2U+BfLNSl4oiXNtpjJxz4sKj6c9Q==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(346002)(136003)(366004)(39860400002)(396003)(230922051799003)(451199024)(1800799009)(186009)(8936002)(8676002)(4326008)(26005)(2906002)(91956017)(478600001)(41300700001)(64756008)(66556008)(316002)(6916009)(76116006)(66446008)(66476007)(54906003)(66946007)(5660300002)(6486002)(6506007)(71200400001)(53546011)(6512007)(36756003)(2616005)(83380400001)(38070700005)(122000001)(38100700002)(33656002)(86362001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <4B8DADCB6D84A34C9908EA5B07690C6F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB8267
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT019.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	80bfcaf8-6a34-4430-a677-08dbbe2f13c9
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zSXncMy3YY2IhSK8oi7+DZ+5rtVCXqLq2tkWDBEaMjuS5QJGV7lrEycaPWUKaov5RHHu0cSEQYxWid8S41XNnZgRE1KpZGQBvwL748G3Cx5alUWxk91gj6j/rZk3oN9a7zPR7LBp8R67gpC5VH5ePHGlWZDQcpLeLcL5RClJU2ImF+9L1TzqX+PpJrDCuK1gz5Aumzes6szJEGfPVKAaHEth3hRvRiW1UvTpvXbXFLKElFmlC63EhyN4SyLP25EM9pWTF6LkQ4maBAQtwBGQd9lQWqBxY+Te126PGknC1RYD1N2is+9DV2hpx8Bv3J2KxzYeFVNaQjj1vuKytxz9md2kXFgXTPuucLyVcAIHBdbqZujuKCNNzN0G3YJu1065vibsmcFe1bTbMkWPy7goCN+/aDmoiCIp2sSR4xbVjs9pUjyQqpS1sxOVNZV+0k/xoNYPFCHEb7V3cs1KBSc/mv7RcNpaWeMr6EFGfTwJhsUdUQXI25MbBPG1G7/jaEe6h2sgb6S7FpeFmoEmNk7QOBZU9Y911ZPioG3CiBAWya5rK5Z2ZgBnd4nLIxyt+KGM35x/h2r09tMM6EYSzfe+af4PNzP0P5kAkC16CfZ3MDJv1rckmEQuzA/2nvckxf+OiwY77VOe3oC9jDbJ0OxGM+eD4FnAcxmqelHyEU1GfNgUN+edljouvKNUejVtnDIJLwsHEjnfu11ZRsd3SxPZLddzxhEMv51XrycneOy+cQG71LJ6WUQ8eS6UKRC/r+Qt
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(376002)(396003)(39860400002)(346002)(230922051799003)(82310400011)(186009)(1800799009)(451199024)(36840700001)(46966006)(40470700004)(40460700003)(6512007)(53546011)(6506007)(6486002)(83380400001)(356005)(82740400003)(81166007)(33656002)(86362001)(36860700001)(47076005)(36756003)(2616005)(26005)(336012)(40480700001)(2906002)(41300700001)(316002)(70206006)(8936002)(70586007)(54906003)(478600001)(4326008)(6862004)(8676002)(5660300002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 01:22:56.0057
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 87797ccb-0506-4c1e-3768-08dbbe2f1cdd
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT019.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB5968

SGkgSnVsaWVuLA0KDQo+IE9uIFNlcCAyNiwgMjAyMywgYXQgMDI6NTcsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gSGkgSGVucnksDQo+IA0KPiBJIGhhdmVuJ3Qg
Y2hlY2tlZCB0aGF0IHRoZSBjb2RlIG1vdmVtZW50IGlzIGp1c3QgYSBjb2RlIG1vdmVtZW50LiBG
b3Igbm93LCBJIGFtIG1haW5seSBsb29raW5nIGF0IHRoZSBzcGxpdC4NCg0KTm8gcHJvYmxlbSwg
dGhhbmsgeW91LiBJIHdpbGwgcmViYXNlIHY2IGFuZCB1c2UgdGV4dCBjb21wYXJpc29uIHRvb2xz
DQp0byBjaGVjayBpZiB0aGUgY29kZSBtb3ZlbWVudCBpcyBqdXN0IGNvZGUgbW92ZW1lbnQgYmVm
b3JlIHNlbmRpbmcgdjcNCnRvIG1ha2Ugc3VyZSBJIHdvbuKAmXQgbWFrZSB0aGUgc2FtZSBtaXN0
YWtlIGFnYWluLiBZb3UgY2FuIGRvdWJsZSBjaGVjaw0KdGhlIGZpbmFsIHZlcnNpb24uIA0KDQo+
IA0KPiBPbiAyOC8wOC8yMDIzIDAyOjMyLCBIZW5yeSBXYW5nIHdyb3RlOg0KPj4gVGhlIGV4dHJh
Y3Rpb24gb2YgTU1VIHJlbGF0ZWQgY29kZSBpcyB0aGUgYmFzaXMgb2YgTVBVIHN1cHBvcnQuDQo+
PiBUaGlzIGNvbW1pdCBzdGFydHMgdGhpcyB3b3JrIGJ5IGZpcnN0bHkgc3BsaXR0aW5nIHRoZSBw
YWdlIHRhYmxlDQo+PiByZWxhdGVkIGNvZGUgdG8gbW11L3B0LmMsIHNvIHRoYXQgd2Ugd2lsbCBu
b3QgZW5kIHVwIHdpdGggYWdhaW4NCj4+IG1hc3NpdmUgbW0uYyBmaWxlcy4NCj4+IEludHJvZHVj
ZSBhIG1tdSBzcGVjaWZpYyBkaXJlY3RvcnkgYW5kIHNldHVwIHRoZSBNYWtlZmlsZXMgZm9yIGl0
Lg0KPj4gTW92ZSB0aGUgcGFnZSB0YWJsZSByZWxhdGVkIGZ1bmN0aW9ucyBhbmQgbWFjcm9zIGZy
b20gYXJjaC9hcm0vbW0uYw0KPj4gdG8gYXJjaC9hcm0vbW11L3B0LmMuIEV4cG9zZSB0aGUgcHJl
dmlvdXNseSBzdGF0aWMgZ2xvYmFsIHZhcmlhYmxlDQo+PiAicGh5c19vZmZzZXQiLg0KPiANCj4g
SSBkb24ndCBtdWNoIGxpa2UgdGhlIGlkZWEgdG8gZXhwb3NlIHBoeXNfb2Zmc2V0IGV2ZXJ5d2hl
cmUuIExvb2tpbmcgYXQgdGhlIGNvZGUgdGhlcmUgYXJlIHR3byB1c2VyczoNCj4gICogcHRlX29m
X3hlbmFkZHIoKTogSSByZWFsaXplIHlvdSBzdWdnZXN0ZWQgdG8gYWRkIGl0IGluIHB0LmMgYW5k
IEkgYWdyZWVkLiBIb3dldmVyLCBsb29raW5nIGF0IHRoZSBzcGxpdCwgdGhpcyBmdW5jdGlvbiBp
cyBleGNsdXNpdmVseSB1c2VkIGZvciBib290IChhbmQgeW91IGNvbmZpcm1lZCBiZWxvdykuIFNv
IEkgdGhpbmsgaXQgd291bGQgYmUgcHJlZmVyYWJsZSB0byBtb3ZlIGl0IGluIG1tdS9zZXR1cC5j
Lg0KDQpTb3VuZHMgZ29vZCwgSSB3aWxsIGZpeCB0aGlzIGluIHY3Lg0KDQo+ICAqIHByZXBhcmVf
c2Vjb25kYXJ5X21tKCk6IEkgdGhpbmsgd2UgY291bGQgc3dpdGNoIHRvIHZpcnRfdG9fbWZuKCku
DQoNCkFjdHVhbGx5IEkgZm91bmQgdGhlIHRoaXJkIHVzZSBvZiBwaHlzX29mZnNldCBpbiBzZXR1
cF9wYWdldGFibGVzKCksIGJ1dCBpdA0KbG9va3MgbGlrZSB0aGUgdXNhZ2UgaXMgc2ltaWxhciBh
cyB0aGUgdXNhZ2UgaGVyZSwgc28gcHJvYmFibHkgdGhlc2UgdHdvDQphcmUgdGhlIHNhbWUgY2Fz
ZS4NCg0KQWxzbywgcGxlYXNlIGNvcnJlY3QgbWUgaWYgSSBhbSB3cm9uZywgYnkgc3VnZ2VzdGlu
ZyB0aGUg4oCcc3dpdGNo4oCdLCBkbyB5b3UNCm1lYW4gdXNpbmcgdmlydF90b19tZm4oKSBvbiB4
ZW5fcGd0YWJsZSB0byBjaGFuZ2UgaXQgdG8gbWluLCB0aGVuIGNoYW5nZQ0KdGhlIG1mbiB0byBQ
QSBhbmQgZGVsZXRlIHRoZSBwaHlzX29mZnNldD8gSWYgc28sIHdoeSBub3QgdXNlIHZpcnRfdG9f
bWFkZHIoKT8gDQoNCj4gDQo+IEkgY2FuIHVuZGVyc3RhbmQgaWYgeW91IGRvbid0IHdhbnQgdG8g
bWFrZSB0aGUgc2Vjb25kIGNoYW5nZS4gU28gSSB3b3VsZCBhdCBsZWFzdCByZXF1ZXN0IHRvIC4u
Lg0KPiANCj4+IFdoaWxlIG1vdmluZywgbWFyayBwdGVfb2ZfeGVuYWRkcigpIGFzIF9faW5pdCB0
byBtYWtlIGNsZWFyIHRoYXQNCj4+IHRoaXMgaGVscGVyIGlzIG9ubHkgaW50ZW5kZWQgdG8gYmUg
dXNlZCBkdXJpbmcgZWFybHkgYm9vdC4NCj4+IFRha2UgdGhlIG9wcG9ydHVuaXR5IHRvIGZpeCB0
aGUgaW4tY29kZSBjb21tZW50IGNvZGluZyBzdHlsZXMgd2hlbg0KPj4gcG9zc2libGUsIGFuZCBk
cm9wIHRoZSB1bm5lY2Vzc2FyeSAjaW5jbHVkZSBoZWFkZXJzIGluIHRoZSBvcmlnaW5hbA0KPj4g
YXJjaC9hcm0vbW0uYy4NCj4+IFNpZ25lZC1vZmYtYnk6IEhlbnJ5IFdhbmcgPEhlbnJ5LldhbmdA
YXJtLmNvbT4NCj4+IFNpZ25lZC1vZmYtYnk6IFBlbm55IFpoZW5nIDxwZW5ueS56aGVuZ0Bhcm0u
Y29tPg0KPj4gLS0tDQo+PiB2NjoNCj4+IC0gUmV3b3JrIHRoZSBvcmlnaW5hbCBwYXRjaCAiW3Y1
LDA3LzEzXSB4ZW4vYXJtOiBFeHRyYWN0IE1NVS1zcGVjaWZpYw0KPj4gICBjb2RlIiwgb25seSBz
cGxpdCB0aGUgcGFnZSB0YWJsZSByZWxhdGVkIGNvZGUgb3V0IGluIHRoaXMgcGF0Y2guDQo+PiAt
LS0NCj4+ICB4ZW4vYXJjaC9hcm0vTWFrZWZpbGUgICAgICAgICB8ICAgMSArDQo+PiAgeGVuL2Fy
Y2gvYXJtL2luY2x1ZGUvYXNtL21tLmggfCAgIDIgKw0KPiANCj4gLi4uIGRlY2xhcmUgcGh5c19v
ZmZzZXQgaW4gYXNtL21tdS9tbS5oIGJlY2F1c2UgdGhpcyB2YXJpYWJsZSBkb2Vzbid0IG1ha2Ug
YSBsb3Qgb2Ygc2Vuc2Ugd2hlbiB0aGUgTVBVIGlzIHVzZWQgKGl0IHdpbGwgYWx3YXlzIGJlIGVx
dWFsIHRvIDApLg0KPiANCj4gVGhlIHJlc3Qgb2YgdGhlIHNwbGl0IGxvb2tzIGdvb2QgdG8gbWUu
DQoNClRoYW5rcyBmb3IgY29uZmlybWluZywgSSB3aWxsIHNlZSB3aGF0IHRoZSBhYm92ZSBkaXNj
dXNzaW9uIGVuZHMgYW5kIHRoZW4NCmRvIHRoZSBjaGFuZ2UgYWNjb3JkaW5nbHkuDQoNCj4gDQo+
IA0KPiBbLi4uXQ0KPiANCj4+IC1scGFlX3QgcHRlX29mX3hlbmFkZHIodmFkZHJfdCB2YSkNCj4+
IC17DQo+PiAtICAgIHBhZGRyX3QgbWEgPSB2YSArIHBoeXNfb2Zmc2V0Ow0KPj4gLQ0KPj4gLSAg
ICByZXR1cm4gbWZuX3RvX3hlbl9lbnRyeShtYWRkcl90b19tZm4obWEpLCBNVF9OT1JNQUwpOw0K
Pj4gLX0NCj4+IC0NCj4gDQo+IFNlZSBhYm92ZS4gSSB0aGluayB0aGlzIHNob3VsZCBzdGF5IGhl
cmUgZm9yIG5vdyBhbmQgdGhlIGJlIG1vdmVkIHRvIHNldHVwLmMgaW4gYSBmb2xsb3ctdXAgcGF0
Y2guDQoNClN1cmUuDQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5DQoNCj4gDQo+IENoZWVycywNCj4g
DQo+IC0tIA0KPiBKdWxpZW4gR3JhbGwNCg0K


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 01:32:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 01:32:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608245.946604 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkwvn-0006Mv-Fk; Tue, 26 Sep 2023 01:32:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608245.946604; Tue, 26 Sep 2023 01:32:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qkwvn-0006Mo-BZ; Tue, 26 Sep 2023 01:32:07 +0000
Received: by outflank-mailman (input) for mailman id 608245;
 Tue, 26 Sep 2023 01:32:05 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fQH+=FK=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qkwvl-0006Mi-IN
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 01:32:05 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0617.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7ea8f4ed-5c0c-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 03:32:03 +0200 (CEST)
Received: from DUZPR01CA0255.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b5::27) by DB9PR08MB6457.eurprd08.prod.outlook.com
 (2603:10a6:10:23e::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 01:31:59 +0000
Received: from DBAEUR03FT046.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b5:cafe::c4) by DUZPR01CA0255.outlook.office365.com
 (2603:10a6:10:4b5::27) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Tue, 26 Sep 2023 01:31:59 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT046.mail.protection.outlook.com (100.127.142.67) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Tue, 26 Sep 2023 01:31:58 +0000
Received: ("Tessian outbound 30c9f5e988c5:v175");
 Tue, 26 Sep 2023 01:31:58 +0000
Received: from c44b214f64ca.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 D459E8B9-78CB-4C1C-8266-15FBC09449D4.1; 
 Tue, 26 Sep 2023 01:31:52 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c44b214f64ca.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 26 Sep 2023 01:31:52 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS8PR08MB5912.eurprd08.prod.outlook.com (2603:10a6:20b:29f::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 01:31:48 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 01:31:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7ea8f4ed-5c0c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3tyNgwotyVLlhIeqL0M5LjYaHhurcldkdof83+3NtfA=;
 b=Z7urO+HX0++i1gji60lDLj+ZqFOng0QboeY90L5FlydOf6wmAD+lLTX+OX2uyXRpaabh697kvdbHDvx6ldQ34+j0vTWniUB2TLkwnMo97GEU3ajOvY/6dbbqnBHlTUYCAgnZhPJUAVYVeaGYUxIplOW3C0Lq5w2aXpTeiwBI7z4=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 234d2496a7e74ea1
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aXgxv1UQ8XHP0pYvvvEmWbMxmpUfxpkwIQb6aqzATciVVU1iIp+XxS9gCzrLV+Otix/2untvw+/1fFnssr3KpL1Te4NaX2kN/vmG5d3vu+PlxtYn6/ThAo1YyBV1ovOUYKsDzz7IWIP91BmuyOLnI27gYQDpWwaFutOxaAsTutYaucmiCFZBON5NDW9z6nhJcqmhd/OWbz5Vzms9xYZm7fKf194hvbVfqSA8Y3SBERlCFcDYbnR2edxEwdkJUSTJe08FOto+xdjqaqXoK2t2iFCPoNNKjfRZHQerVvH4hZ2QTQLBEB5LJ7pIxLZKLpquZ8zOXveeoLU/nBBHG8Ul3w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3tyNgwotyVLlhIeqL0M5LjYaHhurcldkdof83+3NtfA=;
 b=Ymlsc3FWpFoBJaa0ugjHplo/hrYPmvmoK4DeEQpgYammiKkv1fR6weIfjTizSJq0pBo6v/DstkKUTxTZmI73V9FDnCkNHbICinC7uy5TFOuA1zwfj417pdrruPKuJvdyPxva1Y53QxQSYPlnapKnDj/cNCANq/Co96FYYoCCJODEk+/4zQFfmJQBa5EuH9NZHp0mlyMPkCpb0d9aD9WrKNrJxiCjFrn2VoShFfkiPbZhFwazOVAMROL/vxm9RDCoi5f5XvQpYVaf58nW5CxhqtzeRixIhpBpEn3WzbZOyNjgwA4KB1KDktrh8ped8yeadi5huZQzpPNgIw1c1h94ag==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3tyNgwotyVLlhIeqL0M5LjYaHhurcldkdof83+3NtfA=;
 b=Z7urO+HX0++i1gji60lDLj+ZqFOng0QboeY90L5FlydOf6wmAD+lLTX+OX2uyXRpaabh697kvdbHDvx6ldQ34+j0vTWniUB2TLkwnMo97GEU3ajOvY/6dbbqnBHlTUYCAgnZhPJUAVYVeaGYUxIplOW3C0Lq5w2aXpTeiwBI7z4=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>, Wei
 Chen <Wei.Chen@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Penny Zheng <Penny.Zheng@arm.com>
Subject: Re: [PATCH v6 07/13] xen/arm: Split MMU system SMP MM bringup code to
 mmu/smpboot.c
Thread-Topic: [PATCH v6 07/13] xen/arm: Split MMU system SMP MM bringup code
 to mmu/smpboot.c
Thread-Index: AQHZ2U+b9I6Z5CIUPUulwo5PHkCPq7AsFjSAgABpjwA=
Date: Tue, 26 Sep 2023 01:31:48 +0000
Message-ID: <773AACAB-5390-4455-9733-5EF43160D4D8@arm.com>
References: <20230828013224.669433-1-Henry.Wang@arm.com>
 <20230828013224.669433-8-Henry.Wang@arm.com>
 <d38de2e7-c691-4203-a267-a8c7bd42fe71@xen.org>
In-Reply-To: <d38de2e7-c691-4203-a267-a8c7bd42fe71@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS8PR08MB5912:EE_|DBAEUR03FT046:EE_|DB9PR08MB6457:EE_
X-MS-Office365-Filtering-Correlation-Id: 16f66f19-11d3-4bc5-c8ef-08dbbe306078
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 Ca7oo0BtY69/2SwPDYzvpliqdXaADk6J9SMQa6SBJVc9RMdjfvqKQNW8eSVzcDWxbd3imNtE/TOzlfc/u5+JJvpYf1HvO2J9eC5IvRHZreazCVf1J104ARcbDAAbXLiA4gEJP1dpzyx6vhRPdWq57vC1xlviyy26j23EduT8dj+s++eHc6guIgABTvPJkLI2cf2z4qt8kr86ZqELROL0ChFtQn6ushVRbtCaEt6gpk+ph9bCpYKX92Cg48xNSHFaszGkK7fzEESCyPQjiKA8vsnoZTuNmzXyLqshqABJUrUGBZUWkH3WvpfBib0i49Rri9ejYBtQ0mZrFWZ6vWv+QdT4QW0Gr9wryURYJmAPUD2ElmiwTlQPuhIfx3W8bE6ZeHNCIAtX6CGj4CgFuL8ExO2awySdzruWhnkRNv6/pfH5bcPumcKurR0sjuTIFYMJ6Sw/eJg6+USOrPKYLaQ1WXJAf5joDiMBqoTWGlITbTRVKoByCbWyBDWA4CTQl9pk+t6KL3eso0PUkl5LL77qA1KvfIfQHTz+siZ8M+u4etySjAk94+X+dJxbxExm38jD49KqPfWJH2b/LvzdKAz3+4ASJeGhdjEwXYAgF70CQtd+FdvLAvnWFpgTrCe0TDFtD0GZ0oUQQ/pDRX3wOyez4A==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(366004)(346002)(136003)(376002)(230922051799003)(1800799009)(186009)(451199024)(6512007)(6486002)(53546011)(71200400001)(6506007)(83380400001)(122000001)(38100700002)(33656002)(86362001)(38070700005)(36756003)(2616005)(26005)(2906002)(91956017)(8936002)(8676002)(4326008)(41300700001)(76116006)(66446008)(66946007)(66556008)(54906003)(6916009)(316002)(66476007)(64756008)(5660300002)(478600001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <2A8957110081B14392FF4FFDE543745D@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB5912
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT046.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	85542aa4-742d-40aa-7e86-08dbbe305a71
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lMrIyj7HAiSAXZz0tOhq2U0IjDd4uP8Y5hgo332FZLeJVqAhBJZx8pZ4dxBMcdHjgwyVu3sqkmkp6RUMQr+nBJshl42ZUD7jRvlralJ/BzNs0qGJz4hT4WMGDpMV2dTyCrNcYvsY5Prr+VqSaIle1bPf6CeS8pKAcDuaqxT02Qf8A6bT+1kkuXweu37PI3scudPcFxStgL5C1sAEQj6V6b+xYZjg+Nel6EWq29ZN4IuntOaneLFc0kMQzxUw7T3rIHe0BpLTiXOS09m13iQ9gSjPNSSSSD5P8+t/Ip0Tw4li8SdKV8wx31puUx59vVgueYvXWOEKxajBE+MIx9hKxZw7OST9x1VAJ8bYBuxki+EKgK3oP7zkszcQ+w5yBGN9OyOuEKi78ZlZe9e7NCRNGIRQYdv1C9Rhvm/fvNWUbqgIdGz+1f4yrfulLAXQ32nJlziEkI7/IPuZD9tCduvJ9iyTzQSw7aCE+qHKAixh5Es9StEQ8OqpUymDeIV6CmBIisu5/n9GchbIrjGYzahp8RAuAaUGpI38vQedBQAhi5NhTgaO+tPqQOROf7AZdF9hbaWr+uWvTcBhlw5BXL7oiKWUcIEenmK3hTDbWLeBcaUcyuxEBVhhH3sVo0So767P/c2JFMCwInvNGDKleUJtlxVU4+/Qz7BV8LLv9G0/9QYpT4hHwu+v33exMETQmH8PPZ7zWGWCbDJreP57kiIebOhYcH6pk7zlbOfoapX2tWpxOYzmAaUSJLyKHz+Rg4nq
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(396003)(39860400002)(346002)(136003)(230922051799003)(186009)(451199024)(1800799009)(82310400011)(46966006)(40470700004)(36840700001)(40480700001)(4326008)(40460700003)(47076005)(83380400001)(26005)(336012)(82740400003)(356005)(6862004)(36860700001)(8676002)(8936002)(316002)(478600001)(41300700001)(6486002)(70586007)(70206006)(54906003)(81166007)(53546011)(5660300002)(2906002)(2616005)(6506007)(6512007)(36756003)(33656002)(86362001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 01:31:58.9293
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 16f66f19-11d3-4bc5-c8ef-08dbbe306078
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT046.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6457

SGkgSnVsaWVuLA0KDQo+IE9uIFNlcCAyNiwgMjAyMywgYXQgMDM6MTMsIEp1bGllbiBHcmFsbCA8
anVsaWVuQHhlbi5vcmc+IHdyb3RlOg0KPiANCj4gSGkgSGVucnksDQo+IA0KPiBPbiAyOC8wOC8y
MDIzIDAyOjMyLCBIZW5yeSBXYW5nIHdyb3RlOg0KPj4gTW92ZSB0aGUgY29kZSByZWxhdGVkIHRv
IHNlY29uZGFyeSBwYWdlIHRhYmxlIGluaXRpYWxpemF0aW9uLCBjbGVhcg0KPj4gYm9vdCBwYWdl
IHRhYmxlcyBhbmQgdGhlIGdsb2JhbCB2YXJpYWJsZSBkZWZpbml0aW9ucyBvZiB0aGVzZSBib290
DQo+PiBwYWdlIHRhYmxlcyBmcm9tIGFyY2gvYXJtL21tLmMgdG8gYXJjaC9hcm0vbW11L3NtcGJv
b3QuYw0KPj4gRHJvcCB0aGUgInN0YXRpYyIgYXR0cmlidXRlIG9mIGFybTMyIGdsb2JhbCB2YXJp
YWJsZSBjcHUwX3BndGFibGUsDQo+PiBhbmQgZGVjbGFyZSBpdCBpbiB0aGUgYXJtMzIgbW0uaCBo
ZWFkZXIsIGJlY2F1c2UgdGhpcyB2YXJpYWJsZQ0KPj4gd2lsbCBiZSB1c2VkIGJ5IGJvdGggYXJj
aC9hcm0vbW0uYyBhbmQgYXJjaC9hcm0vbW11L3NtcGJvb3QuYy4NCj4gDQo+IEkgZG9uJ3QgdGhp
bmsgeW91IG5lZWQgdG8gZXhwb3J0IGNwdTBfcGd0YWJsZS4gWW91IGNhbiBpbnN0ZWFkIHJlcGxh
Y2UgdXNlIHdpdGggcGVyX2NwdSh4ZW5fcGd0YWJsZSwgMCkuDQoNCllvdSBtZWFuIHVzaW5nDQpg
YGANCm1lbWNweShmaXJzdCwgcGVyX2NwdSh4ZW5fcGd0YWJsZSwgMCksIFBBR0VfU0laRSk7DQpg
YGANCmluIHRoZSBhcm0zMiBpbXBsZW1lbnRhdGlvbiBvZiBwcmVwYXJlX3NlY29uZGFyeV9tbSgp
IGluIG1tdS9zbXBib290LmM/DQoNClRoYXQgc291bmRzIGdvb2QgdG8gbWUgYW5kIEkgd2lsbCBm
aXggaW4gdjcuDQoNCj4gDQo+PiArICovDQo+PiArREVGSU5FX0JPT1RfUEFHRV9UQUJMRShib290
X3BndGFibGUpOw0KPj4gKyNpZmRlZiBDT05GSUdfQVJNXzY0DQo+PiArREVGSU5FX0JPT1RfUEFH
RV9UQUJMRShib290X2ZpcnN0KTsNCj4+ICtERUZJTkVfQk9PVF9QQUdFX1RBQkxFKGJvb3RfZmly
c3RfaWQpOw0KPj4gKyNlbmRpZg0KPj4gK0RFRklORV9CT09UX1BBR0VfVEFCTEUoYm9vdF9zZWNv
bmRfaWQpOw0KPj4gK0RFRklORV9CT09UX1BBR0VfVEFCTEUoYm9vdF90aGlyZF9pZCk7DQo+PiAr
REVGSU5FX0JPT1RfUEFHRV9UQUJMRShib290X3NlY29uZCk7DQo+PiArREVGSU5FX0JPT1RfUEFH
RV9UQUJMRVMoYm9vdF90aGlyZCwgWEVOX05SX0VOVFJJRVMoMikpOw0KPiANCj4gU3RyaWN0bHkg
c3BlYWtpbmcsIGJvb3RfKiBhcmUgYWxzbyB1c2VkIGZvciBDUFUwIGJ1dCBub3QgaW4gQyBjb2Rl
LiBUaGF0IHNhaWQsIEkgYW0gb2sgaWYgdGhlcmUgYXJlIG1vdmVkIGhlcmUuDQo+IA0KPiBJbiB0
aGUgbG9uZ2VyIHRlcm0sIEkgd291bGQgYWN0dWFsbHkgbGlrZSB0byByZW1vdmUgYm9vdF8qLiBU
aGlzIHNob3VsZCBhbHJlYWR5IGJlIHBvc3NpYmxlIGZvciBhcm02NCAoaW4gZmFjdCB0aGV5IGFy
ZSBub3QgdXNlZCBmb3Igc2Vjb25kYXJ5IENQVSBicmluZy11cCkuIEZvciBhcm0zMiwgaXQgcmVx
dWlyZXMgYSBiaXQgbW9yZSB3b3JrLg0KPiANCj4gQW55d2F5LCB0aGF0J3Mgbm90IGEgcmVxdWVz
dCBmb3IgeW91ciBzZXJpZXMuIDopDQoNCkxldOKAmXMgc2VlIGlmIHdlIGNhbiBkbyB0aGF0IGlu
IDQuMTkgZGV2IGN5Y2xlIHRoZW4gOikNCg0KPiANCj4+ICsgICAgLyogU2V0IGluaXRfdHRiciBm
b3IgdGhpcyBDUFUgY29taW5nIHVwICovDQo+PiArICAgIGluaXRfdHRiciA9IF9fcGEoZmlyc3Qp
Ow0KPiANCj4gaW5pdF90dGJyIHdpbGwgb25seSBiZSB1c2VkIGJ5IHNtcGJvb3QuYyBhbmQgYXNz
ZW1ibHkgY29kZS4gU28gSSB0aGluayB0aGUgZGVjbGFyYXRpb24gbmVlZHMgdG8gYWxzbyBiZSBt
b3ZlZCBhbmQgdGhlIHByb3RvdHlwZSBtb3ZlZCB0byBtbXUvbW0uaC4NCg0KT2ssIHdpbGwgZG8g
aW4gdjcuDQoNCktpbmQgcmVnYXJkcywNCkhlbnJ5DQoNCj4gDQo+IENoZWVycywNCj4gDQo+IC0t
IA0KPiBKdWxpZW4gR3JhbGwNCg0K


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 04:51:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 04:51:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608264.946620 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql021-0000vP-QC; Tue, 26 Sep 2023 04:50:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608264.946620; Tue, 26 Sep 2023 04:50:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql021-0000vG-JC; Tue, 26 Sep 2023 04:50:45 +0000
Received: by outflank-mailman (input) for mailman id 608264;
 Tue, 26 Sep 2023 04:50:44 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql020-0000v4-CW; Tue, 26 Sep 2023 04:50:44 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql020-0005DJ-9U; Tue, 26 Sep 2023 04:50:44 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql01z-0005U3-QL; Tue, 26 Sep 2023 04:50:43 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1ql01z-0006OS-Pt; Tue, 26 Sep 2023 04:50:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=mmCi8SnbvVHXpnPtfX3t9r7IpFCKYGTLdlEtDOBgpMA=; b=WF16nO/xKi+O2MNnICrXy4Tztb
	5RO4XqFugwSwkCkzgWOHAKE3CrUHpdkqf7xUTeZApm/q33uwzfdosxQhOHUwgOrUuQtWzWG6ue6pY
	Wpu2eGrwmOet6hTvrWhBfCLku6HT9o08NTzBslkSA0pRUPwBjPrBlecILNUwzJBmBxSY=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183166-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183166: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start.2:fail:regression
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-5.4:test-arm64-arm64-libvirt-raw:guest-start.2:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-amd64-i386-qemuu-rhel6hvm-intel:guest-start/redhat.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-vhd:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug
    linux-5.4:test-amd64-i386-examine-uefi:xen-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:xen-boot:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 26 Sep 2023 04:50:43 +0000

flight 183166 linux-5.4 real [real]
flight 183171 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183166/
http://logs.test-lab.xenproject.org/osstest/logs/183171/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1  19 guest-start.2  fail in 183144 REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail in 183144 pass in 183159
 test-armhf-armhf-xl-credit2  14 guest-start      fail in 183144 pass in 183166
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183144 pass in 183166
 test-arm64-arm64-libvirt-raw 18 guest-start.2    fail in 183149 pass in 183166
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 183159 pass in 183144
 test-amd64-i386-qemuu-rhel6hvm-intel 14 guest-start/redhat.repeat fail in 183159 pass in 183166
 test-armhf-armhf-xl-vhd      13 guest-start      fail in 183159 pass in 183166
 test-armhf-armhf-libvirt-raw 13 guest-start                fail pass in 183149
 test-amd64-i386-examine-uefi  6 xen-install                fail pass in 183159
 test-armhf-armhf-xl-multivcpu  8 xen-boot                  fail pass in 183159
 test-armhf-armhf-xl-credit1  14 guest-start                fail pass in 183159
 test-armhf-armhf-libvirt-qcow2 13 guest-start              fail pass in 183159

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check fail in 183144 like 182613
 test-armhf-armhf-libvirt-raw 14 migrate-support-check fail in 183144 never pass
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 183159 blocked in 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail in 183159 like 182613
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 183159 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 183159 never pass
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 183159 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 183159 never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check fail in 183159 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-armhf-armhf-xl          18 guest-start/debian.repeat    fail  like 182613
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   23 days
Testing same since   183129  2023-09-23 09:20:22 Z    2 days    6 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               fail    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 fail    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 05:33:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 05:33:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608273.946632 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql0hi-0006mK-3p; Tue, 26 Sep 2023 05:33:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608273.946632; Tue, 26 Sep 2023 05:33:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql0hi-0006lu-11; Tue, 26 Sep 2023 05:33:50 +0000
Received: by outflank-mailman (input) for mailman id 608273;
 Tue, 26 Sep 2023 05:33:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PA3Q=FK=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1ql0hh-0006lo-1E
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 05:33:49 +0000
Received: from mail-pg1-x52e.google.com (mail-pg1-x52e.google.com
 [2607:f8b0:4864:20::52e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 43b17470-5c2e-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 07:33:48 +0200 (CEST)
Received: by mail-pg1-x52e.google.com with SMTP id
 41be03b00d2f7-578e33b6fb7so5125386a12.3
 for <xen-devel@lists.xenproject.org>; Mon, 25 Sep 2023 22:33:48 -0700 (PDT)
Received: from leoy-yangtze.lan ([128.1.74.161])
 by smtp.gmail.com with ESMTPSA id
 a13-20020a17090a8c0d00b002633fa95ac2sm10737988pjo.13.2023.09.25.22.33.42
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 25 Sep 2023 22:33:45 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 43b17470-5c2e-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1695706426; x=1696311226; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=g3M7ToDVJ5VYoL9D1uZMV9wLB8oef6j3CycvzdRrAB0=;
        b=D2UZvbgWL7faEk+c+z9UlrXNnBIghGuYPLcuitSWQkDkGDVoYtnTvpGi0Ap1SXbE5S
         olb4hI0r+U8ysKsiq/ID1O7/HHFRj1Io4SzuTf/5s1h4dPr7pEcZ7bKBWFrDieCxixI9
         X/WVgJUGK/uCOPeMSFmz2Jym63gF7uB/qjHeIbKpngcdwBpFhcTsnB7aXFSmTgmJThyA
         ugPqN+Nauy33DxJA9t3G3qkrtr46hQdqI0RODnn6BXt1qoaluODfBBP/OlS1g5Eg+oZx
         C0l/Eiz6DaK52nzn2Rkfrio1R7HKjLDaMbb98eOgh8q3SvTRO84oRWmr3i9eF3ebC30F
         Sltg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695706426; x=1696311226;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=g3M7ToDVJ5VYoL9D1uZMV9wLB8oef6j3CycvzdRrAB0=;
        b=hxzQ/aNCklhf2WMR4665YyuVCdqKDCYPCPRMtjLygdaLBHAkWsysOcjugW/fQcJUOn
         x/mDrNHgddXge0475MMIcbTxZpnDJqV+7luqw4612ANyqRVM7gp3FoL5Tl5VJyyT94KR
         DDfaauUDvBkNGfpGrft3gMU8Esu/1Rx/DtnSn7KU2dGs0NszsW1ELjU4uSmiwErUSeZx
         nySAXa67DY3S4nBaNUfzu3LHCOTrRqVDqFazSH1QJPR+gS1Dm6a2jAFJ8/aOiEmoZXph
         qN4k743F0FoAJqNA2cyI9IC+pymsi/nLYCkS3hMo5BkW0MvChjsBgZFa/wwyxObOgJvF
         U2yQ==
X-Gm-Message-State: AOJu0Yz1hrwwSj404owC3whEDIghJUBJ1zvqjEqIgXzxCcv0JkYpMvYE
	O2O39eLpaMoWwhq6/UqLaSfihcp4Ro7eU2/NXPazL3qS
X-Google-Smtp-Source: AGHT+IH639S5nEscI5IDBimvYY1HIwZMv0vrV2Bh8N2fmTNs5vHmmiFP30j9D0xE08WM963twdQAYA==
X-Received: by 2002:a17:90a:ba95:b0:277:37fc:6e89 with SMTP id t21-20020a17090aba9500b0027737fc6e89mr4776700pjr.0.1695706426207;
        Mon, 25 Sep 2023 22:33:46 -0700 (PDT)
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Leo Yan <leo.yan@linaro.org>
Subject: [PATCH] xen/arm: Skip memory nodes if not enabled
Date: Tue, 26 Sep 2023 13:33:33 +0800
Message-Id: <20230926053333.180811-1-leo.yan@linaro.org>
X-Mailer: git-send-email 2.39.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

During the Linux kernel booting, an error is reported by the Xen
hypervisor:

  (XEN) arch/arm/p2m.c:2202: d0v0: Failing to acquire the MFN 0x1a02dc

The kernel attempts to use an invalid memory frame number, which can be
converted to: 0x1a02dc << PAGE_SHIFT, resulting in 0x1_a02d_c000.

The invalid memory frame falls into a reserved memory node, which is
defined in the device tree as below:

  reserved-memory {
          #address-cells = <0x02>;
          #size-cells = <0x02>;
          ranges;

	  ...

          ethosn_reserved {
                  compatible = "shared-dma-pool";
                  reg = <0x01 0xa0000000 0x00 0x20000000>;
                  status = "disabled";
                  no-map;
          };

	  ...
  };

Xen excludes all reserved memory regions from the frame management
through the dt_unreserved_regions() function. On the other hand, the
reserved memory nodes are passed to the Linux kernel. However, the Linux
kernel ignores the 'ethosn_reserved' node since its status is
"disabled". This leads to the Linux kernel to allocate pages from the
reserved memory range.

As a result, when the kernel passes the data structure residing in the
frame 0x1_a02d_c000 in the Xen hypervisor, the hypervisor detects that
it misses to manage the frame and reports the error.

Essentially, this issue is caused by the Xen hypervisor which misses to
handle the status for the memory nodes (for both the normal memory nodes
and the reserved memory nodes) and transfers them to the Linux kernel.

This patch introduces a function memory_node_is_available(). If it
detects a memory node is not enabled, the hypervisor will not add the
memory region into the memory lists. In the end, this avoids to generate
the memory nodes from the memory lists sent to the kernel and the kernel
cannot use the disabled memory nodes any longer.

Signed-off-by: Leo Yan <leo.yan@linaro.org>
---
 xen/arch/arm/bootfdt.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
index 2673ad17a1..b46dde06a9 100644
--- a/xen/arch/arm/bootfdt.c
+++ b/xen/arch/arm/bootfdt.c
@@ -206,11 +206,27 @@ int __init device_tree_for_each_node(const void *fdt, int node,
     return 0;
 }
 
+static bool __init memory_node_is_available(const void *fdt, unsigned long node)
+{
+    const char *status = fdt_getprop(fdt, node, "status", NULL);
+
+    if (!status)
+        return true;
+
+    if (!strcmp(status, "ok") || !strcmp(status, "okay"))
+        return true;
+
+    return false;
+}
+
 static int __init process_memory_node(const void *fdt, int node,
                                       const char *name, int depth,
                                       u32 address_cells, u32 size_cells,
                                       void *data)
 {
+    if (!memory_node_is_available(fdt, node))
+        return 0;
+
     return device_tree_get_meminfo(fdt, node, "reg", address_cells, size_cells,
                                    data, MEMBANK_DEFAULT);
 }
-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 06:59:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 06:59:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608280.946642 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql225-0008He-3M; Tue, 26 Sep 2023 06:58:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608280.946642; Tue, 26 Sep 2023 06:58:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql225-0008HX-0d; Tue, 26 Sep 2023 06:58:57 +0000
Received: by outflank-mailman (input) for mailman id 608280;
 Tue, 26 Sep 2023 06:58:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=BD/d=FK=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1ql223-0008HR-L1
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 06:58:55 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.88])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 261c184b-5c3a-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 08:58:53 +0200 (CEST)
Received: from orsmga002.jf.intel.com ([10.7.209.21])
 by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 25 Sep 2023 23:58:50 -0700
Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82])
 by orsmga002.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 25 Sep 2023 23:58:48 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by
 fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Mon, 25 Sep 2023 23:58:48 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by
 fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Mon, 25 Sep 2023 23:58:45 -0700
Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by
 fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Mon, 25 Sep 2023 23:58:45 -0700
Received: from NAM04-MW2-obe.outbound.protection.outlook.com (104.47.73.171)
 by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Mon, 25 Sep 2023 23:58:45 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by IA1PR11MB6420.namprd11.prod.outlook.com (2603:10b6:208:3a8::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Tue, 26 Sep
 2023 06:58:37 +0000
Received: from SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61]) by SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61%6]) with mapi id 15.20.6813.017; Tue, 26 Sep 2023
 06:58:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 261c184b-5c3a-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695711533; x=1727247533;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=Zb9d/HFuEpyvl/Z7q5P4+sf8PQIT0daBRtDHgwPyiMI=;
  b=NPgJy4vNs/6Lh9ArwM1xgmMPWhtwDFpJo6gUx8i7NTVPW5OxOR6Vcv9a
   EsouWcmWPaE1ZPWynSP5j0WNzjcLJW0xK3eUrLvhAgP2tCzhelR8m9T9P
   ZOZdvBAy7WwAaV76/GyJaD0jFPquAEM8Pc+bzxS8CkBAkv9MjTp+L+daa
   m1+sSyrW8/QI/k+efxEWD8Vbmey7cXqbkhXJr88gC9KwE3qfWphXjp7+Z
   3jtfEusAjPEEcjNa1pmq8YrvW7PrKqviGiXJ+uNGQyK2yRdZSn8S91/qs
   LbUqb8Smgmn86gcr9+rH5nJephfaeAqSaBgs89J6Fu17wswuG1/W8zwap
   Q==;
X-IronPort-AV: E=McAfee;i="6600,9927,10843"; a="412417784"
X-IronPort-AV: E=Sophos;i="6.03,177,1694761200"; 
   d="scan'208";a="412417784"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10843"; a="748718052"
X-IronPort-AV: E=Sophos;i="6.03,177,1694761200"; 
   d="scan'208";a="748718052"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hQgtVbhRPBOz2k5Jb/58axG4kRrzoa2z2Sk15nNgwOFt/pXpUBtQso05G3h54AZBlq9gBeWbuOBZKQquAX9pn+BphPHMhYo2yEgQ2BmqvZlI6kAhU4ipEGgB55ch3F2w0kEjvtPm+Bg9apBKLGKBaOJIXGMLiJUteAko7SZ2wiaJicxMtl4n7oKwR4ZdQevE92XtxFra4KMDWcyY7bTrwB4BIP1WL952Dl8h7qzUzp1cH0s45ns6bqV6QAyJLSYrTEsTs8bei3mrmIDV1MdKI4xL5e4rfkbFUfVm7MdP+uT3Ays+8V7qXkas6wCqH97R275+Z6kT9fAxmUG3i/aFNQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Zb9d/HFuEpyvl/Z7q5P4+sf8PQIT0daBRtDHgwPyiMI=;
 b=GdyXk0LWhUWhoSjPLiegguxNznHJ91FVAs5QqYhUSnjUzaSHK0BHmDsEclBF30XN+An5g/3DNx5ieLtfrL6HPnUpihTzwIyKtfPRvHSpdoQtc64J6w0Rhc6OrRr5Oil8HbPMZ6BFoEa1RomuXi2v3GuLR/n4ZGCAdrTLW6bQLOzFMV3MW9qLEbyAGTdJI0Bv6zRyKxuTvtwEh2kxdyZkF/8bSqaimmSdlE9jMv6w5LOvQ0NOFn/J5mWa9mY/nue5qoDMeONbJmf7dIhE2zPP9mz492YWliT/sn9umx/KBhIZCsMc5wdEg3oXcIv6t6gG+rT0sFhpiDKAbSNu+Oijvw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Li, Xin3" <xin3.li@intel.com>
To: "H. Peter Anvin" <hpa@zytor.com>, "linux-doc@vger.kernel.org"
	<linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
	<linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
	<linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
	<linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "tglx@linutronix.de" <tglx@linutronix.de>, "mingo@redhat.com"
	<mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>, "x86@kernel.org"
	<x86@kernel.org>, "Lutomirski, Andy" <luto@kernel.org>, "pbonzini@redhat.com"
	<pbonzini@redhat.com>, "Christopherson,, Sean" <seanjc@google.com>,
	"peterz@infradead.org" <peterz@infradead.org>, "Gross, Jurgen"
	<jgross@suse.com>, "Shankar, Ravi V" <ravi.v.shankar@intel.com>,
	"mhiramat@kernel.org" <mhiramat@kernel.org>, "andrew.cooper3@citrix.com"
	<andrew.cooper3@citrix.com>, "jiangshanlai@gmail.com"
	<jiangshanlai@gmail.com>, "nik.borisov@suse.com" <nik.borisov@suse.com>
Subject: RE: [PATCH v11 35/37] x86/syscall: Split IDT syscall setup code into
 idt_syscall_init()
Thread-Topic: [PATCH v11 35/37] x86/syscall: Split IDT syscall setup code into
 idt_syscall_init()
Thread-Index: AQHZ7gbj6LYYw3ax602r6dWz9pQ+t7AruMuAgAAdkCCAABFkAIAAyWiQ
Date: Tue, 26 Sep 2023 06:58:37 +0000
Message-ID: <SA1PR11MB6734A593C605A1010EB2D7DAA8C3A@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
 <20230923094212.26520-36-xin3.li@intel.com>
 <D4167CD5-B619-448D-B660-24ABC0786E0A@zytor.com>
 <SA1PR11MB673481413BA6522B01218297A8FCA@SA1PR11MB6734.namprd11.prod.outlook.com>
 <69867C92-3A02-469A-9B77-2E202A4D4A0F@zytor.com>
In-Reply-To: <69867C92-3A02-469A-9B77-2E202A4D4A0F@zytor.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SA1PR11MB6734:EE_|IA1PR11MB6420:EE_
x-ms-office365-filtering-correlation-id: 4e19c239-10dc-40e5-a63a-08dbbe5e0246
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: QPA9MzqcQ2k9TUSeVWz/oApKN++tlV97NhAbHI/JCm/x1w9JzvkyhZvXsGRdhHTaDz4Bp0a7hlXWi0i6H75XAdQAlm7YoNYB/SnSelKPAWYoSuSJAER7vSqEbW75OZ0sGr4VUW74ABj/P3BG7x9X6sCZt/dWNN9GdLHNNI+gvd95GsMlvmt4SArXjSG7DY5g0te51pyqT/xepFO5R6YDwzNF7VgGaHG7FPvLRL+RKIU1l+MFrmj29YrXLc+/Z/ypGgapC99Xcl03zNdwD2yd95ApMsS/dBm21EKiJMIPDLTsqN1GRAIOFJqyysi2TLT74Yn7llYE2vcHdtePfHls7n2EMngAYC6YN24eV7QmsLfAE3sinya5vOIvHb9C5TpSx8Mo+unPsmB0P43G0VFVhtxT1SdsNuFXG1PhRexB8gqXr5zM7GHzUEoMI3pGUFYghElWWdU6WJ4jdJuQZct7mOI0Inluk0xmvP4JCtDaxOvGFW7Ps/Lgjb5Zu2BYQBh8kgEP0iDloEVeOzGy9cuB7Eyd2iQmdSXdLJD54KCratCLnKFnAuFSPSX7syy6Jj7kll4lclLYE0NR3ZLYubSwHqdOURiOsqi7X/WxnCq5G8cvC6SEJt+KBKYCSGJ8QthU
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6734.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(396003)(136003)(366004)(346002)(230922051799003)(451199024)(186009)(1800799009)(7416002)(478600001)(6506007)(7696005)(71200400001)(9686003)(26005)(55016003)(2906002)(66446008)(64756008)(66946007)(110136005)(316002)(66556008)(66476007)(54906003)(86362001)(76116006)(8676002)(52536014)(5660300002)(4326008)(41300700001)(33656002)(38070700005)(122000001)(38100700002)(4744005)(8936002)(82960400001);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ak1xSFE5Ui9OQ0dvcTI3QkV5NWZlSkdlMDBqai9keEo1V0hTUnI4T2FnQUl4?=
 =?utf-8?B?UGNpeW8wWVVmNGcxRS96QWxWTHJoNU82T243VXEyMW1QalFKU0d1N0p2M1NV?=
 =?utf-8?B?UEdDd0wycFhYR040Q2x1YjV6N0xObDk2em80RWIzMVFENnhRQmczNVU4Szlu?=
 =?utf-8?B?OGMzZzE5T1g1ZEQxTzltaldJNlpEa0pFczBpTEZwcGpPYkZ0ZlVQdXQ4LzJO?=
 =?utf-8?B?a1ZwdGFGeld0V2lrTHlJeVJTVzR6Tm8wbHY4SzV6VXFuL1JjQUdkSitFNk01?=
 =?utf-8?B?cU1xeFpTZmxmaGdsS3JtUFdWSitpS3I5L3U3Z3ZPdzFOamRGS3YvZkFacndY?=
 =?utf-8?B?Ny9oazRJYXY5YVhNMEc4Q3NITXJsMk9uTkpHcGhoUzkvVVJNNEUvTUlra3pp?=
 =?utf-8?B?a0RXL01MUWZtVEg5V0pIbnZod0doKzh5NmFDQzlpWFNaOEtsZmVqOXNob1B5?=
 =?utf-8?B?aDhwWTBIa1FBdnBKTU1FWE9RUjNFRU9Ib0FQV2V3NGtWWVRqK2xxT09hNmtK?=
 =?utf-8?B?Vk1CU3EyeHN4UVRDTVdCTTJZR2pTUFlEcE1UdXIvdk9aQnBGT0M4V28rOW9v?=
 =?utf-8?B?TTNsNnNvMVZpb3J1MzZoTGptSVorV3J6MURzcU5CaitaUjdhb3o5NGdNVmhG?=
 =?utf-8?B?UVp4Y0lmTGZBTmZiV0ZibWVQRzdNTnB6T0lZaGVxQWV2NHFMNFMyMVVaNjdP?=
 =?utf-8?B?UmlqNFRoL01kWlBnVnF1S1l3K3dqNlovMW9rOXltdzljSTlKSHN4blZ2aW1Z?=
 =?utf-8?B?K3BNejRJRzFXZWY0SFVVTTlnSU4remZva2I3NkpUZUJoeTkxdDAxRW1NRkFR?=
 =?utf-8?B?MStYLzlNN3JzM0M1N1U3NHZLdUhmWWRvcFFJaG93bG41NjhDK1dEWUMxSG94?=
 =?utf-8?B?ZkFaV3U0RnRLVG9aSWMzT2RGdzNFM0Qvek9Ud0V6d3o4Zi96ZWJ3elZnbHN3?=
 =?utf-8?B?UGN3NndOOWVaUU5UaWppa0hPNUhJNXdQTytraThNRjZGanVlRWdCbUJVdnlJ?=
 =?utf-8?B?K0lNcUVBOVhQTDFocTlGM3E5NG5DUXRJM2owc2tueWIxblpkVStpN2NCVHQw?=
 =?utf-8?B?VFdOQkRIaXdtME9wODlDQ3o4YXV1aWdSaU1wdE1URjl5U1FyVlNTblgwWkpB?=
 =?utf-8?B?T1dEQk03MWFLSHNpd0pEaUdUTEJlMTVFSlVaOFNRbmNEWlhtR2hzVzNGYkQy?=
 =?utf-8?B?RnBFVFViNE5uRUtFbGZ0RmR6V0pjclNmR05qbU9BVU9rSWZZWTV1aWVzb1ls?=
 =?utf-8?B?K2ovOFl5NkpzV3FkblhOeUt4MWRsYmpoKzNtb3RWOFkzemxsTjZkRlBIcE1Q?=
 =?utf-8?B?T2FKSlJ0N2hzR29XTkMyZXpaVThjZm5KTWdqU2hQMEtzeGRMWEZDTUR6RXRD?=
 =?utf-8?B?Um82WFYveHRIZHdaUW1tN0hZLzNwbVZZL2YyZmprdHArNFU3MlBVNWNLVXJq?=
 =?utf-8?B?c3VsVWhNSXVPZ3d2eFQrT0IzNUkxaXRzTy9QWFFhOUZjNDRFWk9QSFUwUUJj?=
 =?utf-8?B?cEhQa2dKZC9ub0Q2UmFRZ0dhZytMcDZkVDJxQUg5WWlCbEVHc3g0TUR0UVUr?=
 =?utf-8?B?QlRMcVptY2N6bXBJdTdkRlF0Q0VuWW12RDlYajY3TkNtSTdIVjFzaGRLTlVS?=
 =?utf-8?B?QVlMWUNzUjk1M0QrMjJHQTFWaHVJSXJ1OHVCQnl4c0c1QUYybkx2UkxubEwr?=
 =?utf-8?B?QjlmWEIxaWhhaFl3N243U0ZteW16dGFyOGVERTJVQTRuV0ZrL0diUHpadVpj?=
 =?utf-8?B?eENmZFMvckw4cVNzU1FpVndlQzFPV3k5UlEzWW9PRUdZdlNGMU1yQ1BwQVlr?=
 =?utf-8?B?UHRHVFMyUFRmbFZ0RTdxNkxBSUROdmRzdHBwc3NiNlhmQnI3QW1JcGVlWUdD?=
 =?utf-8?B?eTVTNVNmV0pNbmxFS1NyZ2ZOSXBnNE9yVnhqN1ozR0hNdWU3OUkzZjMva3ky?=
 =?utf-8?B?WnltM2tCSWVmYzBtU0NNeWFTZUxvSk1ZUjRyYVo0cW9hdlB0a29tSi9wcExt?=
 =?utf-8?B?dWZHTTNQWWp0QUdJbEhYdnJQcThhSHhZRmV2SnpiNWJyRGcranY0N0R2aC83?=
 =?utf-8?B?UG44Z1k4Q1RMVHhjTkVYWDk2SjV5cHF1ZHVPMjcxeUpBSXo4dmxaNmhYam1F?=
 =?utf-8?Q?fNV0=3D?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6734.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4e19c239-10dc-40e5-a63a-08dbbe5e0246
X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Sep 2023 06:58:37.7407
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: AH/5EserwP4WD9hSsTi5PpDmNkpmcdSYileSHF4PgvPY/i7Bm2FetJs8xB2LvOzTeg3GW2LLmzGXPGhRw9pGQQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR11MB6420
X-OriginatorOrg: intel.com

PiA+WWVzLCB0aGlzIGlzIGEgbm9vcCwganVzdCBhIGNsZWFudXAgcGF0Y2ggdy9vIGZ1bmN0aW9u
YWxpdHkgY2hhbmdlLg0KPiA+DQo+IEl0IGp1c3Qgc2VlbXMgdG8gYmUgY29tcGxldGVseSByZWR1
bmRhbnQuIFdlIGNhbiBqdXN0IGRyb3AgaXQsIG5vPyBJZiB3ZSBhcmVuJ3QgZ29pbmcNCj4gdG8g
ZXhwbGljaXRseSBjbG9iYmVyIHRoZSByZWdpc3RlcnMgdGhlcmUgaXMgbm8gaGFybSBpbiBzZXR0
aW5nIHRoZW0gdXAgZm9yIElEVA0KPiB1bmNvbmRpdGlvbmFsbHkuDQoNCklmIG5vIG9iamVjdGlv
biwgSSBjYW4gbWFrZSB0aGUgY2hhbmdlLCBpLmUuLCB1bmNvbmRpdGlvbmFsbHkgc2V0IHRoZXNl
DQpNU1JzIHVwIGZvciBJRFQuDQo=


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 07:16:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 07:16:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608284.946652 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2Io-0002po-Gs; Tue, 26 Sep 2023 07:16:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608284.946652; Tue, 26 Sep 2023 07:16:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2Io-0002ph-ED; Tue, 26 Sep 2023 07:16:14 +0000
Received: by outflank-mailman (input) for mailman id 608284;
 Tue, 26 Sep 2023 07:16:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=40kW=FK=linaro.org=viresh.kumar@srs-se1.protection.inumbo.net>)
 id 1ql2Im-0002pa-VB
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 07:16:13 +0000
Received: from mail-pl1-x62e.google.com (mail-pl1-x62e.google.com
 [2607:f8b0:4864:20::62e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 900d1822-5c3c-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 09:16:08 +0200 (CEST)
Received: by mail-pl1-x62e.google.com with SMTP id
 d9443c01a7336-1c60f1a2652so28715065ad.0
 for <xen-devel@lists.xenproject.org>; Tue, 26 Sep 2023 00:16:08 -0700 (PDT)
Received: from localhost ([122.172.81.92]) by smtp.gmail.com with ESMTPSA id
 y3-20020a170902864300b001bdc8a5e96csm10153416plt.169.2023.09.26.00.16.06
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 26 Sep 2023 00:16:06 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 900d1822-5c3c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1695712567; x=1696317367; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=AxN91ZtW8jLaX/UOOowUUIWGzrSleiAiGKIAhbg+1vo=;
        b=nlsbIZsdojvgPFUR7gQ1Oz1Ksty5hsFtbZZLWQmd86sRVuBwestM0P5+uQkQuTyXyv
         VW1FdM9HhM9KP1UvyRYoJ5E6puIlvH1pWYO2ZfAzw6reht18fev3dth/J0UFgIJ3VQHK
         NUSgyzuoof4JZ0JOrGAmPH3Ogza30oyevR/+nydcslQuSx8wt77TgoAaoafX+rbtpsME
         VaNDQVmWy5BcBaeHFNyDsWhup7ME838vKmTMu3g4dy+1wnlqcv3xxy2di4jB15ZTJa9K
         HJFsPsmHuC/KsKHN3ex8i/80O0Tp3jiaxNlKwi4jgBnP2YXr6ixp32j2EJAyj68fNhpy
         kfFg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695712567; x=1696317367;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=AxN91ZtW8jLaX/UOOowUUIWGzrSleiAiGKIAhbg+1vo=;
        b=tJHwbKSA7l05qXpikaYNHEzoGMjKGrF19LxGZaje0X01/tZ6mF90JzGnZTJewJnBUy
         FBAIk1+PoylxWq16POoR82unNMeP/h56jHqcLurn7O3A0LSpE0brLyLnXNjlFoycuIQC
         XTAQpAYspqtBFxadf3nkK6mZ0xV2GbGaFUz0Wg+JKTb/uEQWAiIVHbao/EluAv3EremZ
         yC9LEEM9CdZQ0pyp8fcH6LIsyAVIvAjTRheCTeHtz1NEj3SFJNQp26mUjX/KacQtsga7
         ggqQx0FCITwi0GFC5DqlmYPLIdWOB10y9Q5Mjm0VtmaH6qo+e/NWN8/4GecsCnC2LiNv
         1EnA==
X-Gm-Message-State: AOJu0YzczTt2xcqGTQh5OB71WWiVaJqdHM5ZmSFJUmwpZYZZeMFXxhkA
	bRk5RGMKWPgqVbULfqZuRi0Q9Q==
X-Google-Smtp-Source: AGHT+IG1mTIUQ0wJLd2lPyUrwgHzq8jfM2cuuoePUp8wHpqga4QOjofY/6V2yztIVZLuGMzESpOI0w==
X-Received: by 2002:a17:903:2344:b0:1bc:2fe1:1821 with SMTP id c4-20020a170903234400b001bc2fe11821mr2991411plh.17.1695712567328;
        Tue, 26 Sep 2023 00:16:07 -0700 (PDT)
Date: Tue, 26 Sep 2023 12:46:03 +0530
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Juergen Gross <jgross@suse.com>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Cc: Vincent Guittot <vincent.guittot@linaro.org>,
	Alex =?utf-8?Q?Benn=C3=A9e?= <alex.bennee@linaro.org>,
	stratos-dev@op-lists.linaro.org,
	Erik Schilling <erik.schilling@linaro.org>,
	Manos Pitsidianakis <manos.pitsidianakis@linaro.org>,
	Mathieu Poirier <mathieu.poirier@linaro.org>,
	linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org
Subject: Re: [PATCH 0/2] xen: privcmd: Add ioeventfd support
Message-ID: <20230926071603.yckfk7wbzejtmqdk@vireshk-i7>
References: <cover.1693311370.git.viresh.kumar@linaro.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <cover.1693311370.git.viresh.kumar@linaro.org>

On 29-08-23, 17:59, Viresh Kumar wrote:
> Hello,
> 
> Now that irqfd support (backend to guest interrupt) is already merged, this
> series solves the other part of the problem, i.e. ioeventfd (guest to backend
> interrupt).
> 
> More details inside the commits.

Can someone help review this please ?

-- 
viresh


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 07:17:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 07:17:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608288.946663 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2KM-0003Oz-RB; Tue, 26 Sep 2023 07:17:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608288.946663; Tue, 26 Sep 2023 07:17:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2KM-0003Os-OY; Tue, 26 Sep 2023 07:17:50 +0000
Received: by outflank-mailman (input) for mailman id 608288;
 Tue, 26 Sep 2023 07:17:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=ZJWL=FK=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1ql2KK-0003Om-Me
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 07:17:48 +0000
Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cab27bec-5c3c-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 09:17:46 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id 032DD21865;
 Tue, 26 Sep 2023 07:17:46 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id A4F581390B;
 Tue, 26 Sep 2023 07:17:45 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id e6ICJ5mFEmWGaAAAMHmgww
 (envelope-from <jgross@suse.com>); Tue, 26 Sep 2023 07:17:45 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cab27bec-5c3c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695712666; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=PfX+Ps04WbXU+aPp/4Y8Cta41JJBVJwQUP1M0TWxkHM=;
	b=Gv3Fw2l+TfRHEzf7Zia81lGbMmYF8U8UfGwCfW3MsoeH9zvhI0tiKsRgf5LJOdMbGBTFB7
	6XFvGMT4DkLlxcbp20KEFRLwTVwXsTFPx1q9TnIK1/u5eQ4hA1oXXrZ19V0FXzkZ+x2T6Y
	gvnz71QNrL1CRj5+XoFkJ5N93MCuxL0=
Message-ID: <fa15a260-a17f-4563-b211-14cc1068f872@suse.com>
Date: Tue, 26 Sep 2023 09:17:45 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 0/2] xen: privcmd: Add ioeventfd support
Content-Language: en-US
To: Viresh Kumar <viresh.kumar@linaro.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Vincent Guittot <vincent.guittot@linaro.org>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 stratos-dev@op-lists.linaro.org, Erik Schilling <erik.schilling@linaro.org>,
 Manos Pitsidianakis <manos.pitsidianakis@linaro.org>,
 Mathieu Poirier <mathieu.poirier@linaro.org>, linux-kernel@vger.kernel.org,
 xen-devel@lists.xenproject.org
References: <cover.1693311370.git.viresh.kumar@linaro.org>
 <20230926071603.yckfk7wbzejtmqdk@vireshk-i7>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <20230926071603.yckfk7wbzejtmqdk@vireshk-i7>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------j4iNGtC0mo3elf3qL6NkppBD"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------j4iNGtC0mo3elf3qL6NkppBD
Content-Type: multipart/mixed; boundary="------------KZY2jzAAGMhmtoOvFcZgFvU7";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Viresh Kumar <viresh.kumar@linaro.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: Vincent Guittot <vincent.guittot@linaro.org>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 stratos-dev@op-lists.linaro.org, Erik Schilling <erik.schilling@linaro.org>,
 Manos Pitsidianakis <manos.pitsidianakis@linaro.org>,
 Mathieu Poirier <mathieu.poirier@linaro.org>, linux-kernel@vger.kernel.org,
 xen-devel@lists.xenproject.org
Message-ID: <fa15a260-a17f-4563-b211-14cc1068f872@suse.com>
Subject: Re: [PATCH 0/2] xen: privcmd: Add ioeventfd support
References: <cover.1693311370.git.viresh.kumar@linaro.org>
 <20230926071603.yckfk7wbzejtmqdk@vireshk-i7>
In-Reply-To: <20230926071603.yckfk7wbzejtmqdk@vireshk-i7>

--------------KZY2jzAAGMhmtoOvFcZgFvU7
Content-Type: multipart/mixed; boundary="------------mpibCUtjIaglBLqDHp3F70aK"

--------------mpibCUtjIaglBLqDHp3F70aK
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjYuMDkuMjMgMDk6MTYsIFZpcmVzaCBLdW1hciB3cm90ZToNCj4gT24gMjktMDgtMjMs
IDE3OjU5LCBWaXJlc2ggS3VtYXIgd3JvdGU6DQo+PiBIZWxsbywNCj4+DQo+PiBOb3cgdGhh
dCBpcnFmZCBzdXBwb3J0IChiYWNrZW5kIHRvIGd1ZXN0IGludGVycnVwdCkgaXMgYWxyZWFk
eSBtZXJnZWQsIHRoaXMNCj4+IHNlcmllcyBzb2x2ZXMgdGhlIG90aGVyIHBhcnQgb2YgdGhl
IHByb2JsZW0sIGkuZS4gaW9ldmVudGZkIChndWVzdCB0byBiYWNrZW5kDQo+PiBpbnRlcnJ1
cHQpLg0KPj4NCj4+IE1vcmUgZGV0YWlscyBpbnNpZGUgdGhlIGNvbW1pdHMuDQo+IA0KPiBD
YW4gc29tZW9uZSBoZWxwIHJldmlldyB0aGlzIHBsZWFzZSA/DQo+IA0KDQpJIHdpbGwgZG8g
dGhlIHJldmlldyBzb29uLg0KDQoNCkp1ZXJnZW4NCg==
--------------mpibCUtjIaglBLqDHp3F70aK
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------mpibCUtjIaglBLqDHp3F70aK--

--------------KZY2jzAAGMhmtoOvFcZgFvU7--

--------------j4iNGtC0mo3elf3qL6NkppBD
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUShZkFAwAAAAAACgkQsN6d1ii/Ey9J
6wf+Ip2zKL2Nj9nL9o5kafWkROMm2aH7CIJB0HMv8dTVuOtFLk83thalf237g9UmsiTgF/jafl4K
qiMoPl+Rq7iWM77GfBBnQc8jugF9vbqLIYLPE1T+HLjw5528cWkY7MqZbXO6L6tWpba/p3NQ+k0v
Ms/8L37guRY3pDvGMtOQ+XkmADkeYB4GgW20oc+eZq36ODaW1PyALpyptjz1SLZMYYIToGCxuGGU
TFryLi8i8BvUDqjG3yUdL4y4fhZWwaqfKsmjzv0AKPiazkhJifqrd6kmWbTXh4TxJzeISJwPAkVi
pcZgQWHq90ycF/JibAGDCpuRDI50K4bDO/q72yXmLQ==
=KJUo
-----END PGP SIGNATURE-----

--------------j4iNGtC0mo3elf3qL6NkppBD--


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 07:20:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 07:20:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608292.946672 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2MU-0004GK-Af; Tue, 26 Sep 2023 07:20:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608292.946672; Tue, 26 Sep 2023 07:20:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2MU-0004Fn-88; Tue, 26 Sep 2023 07:20:02 +0000
Received: by outflank-mailman (input) for mailman id 608292;
 Tue, 26 Sep 2023 07:20:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JCSl=FK=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1ql2MT-00042T-0O
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 07:20:01 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2055.outbound.protection.outlook.com [40.107.7.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1a2ceae8-5c3d-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 09:19:59 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAWPR04MB9933.eurprd04.prod.outlook.com (2603:10a6:102:385::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 07:19:30 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 07:19:29 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1a2ceae8-5c3d-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Y942MxYTN31eY7LdLeM5nklpO8wVysbRI8PCRpGqTGHxwGQT55AfOTTC5fJvL02v42oMRVRz2jqHzW/avS6B7EPckPhWa76O3UNfpih7qEJMs+CPOkURp9L5uJA++pQGjH8Yzxh46L6/96zpmQVcAe5xhmwWeALMSruVQHHXx+ir2Dlk7UUicWSwoWwJf43r5vq4AsRQbmZiFsX2FTCAPZBkD8CaLb7neBkBBNqkmkiH/y4bNbOmk8HP4Joqzu4iAExbATXFobyMVSjX3+TVGiCWPHc3koKlS0LXkvcMralmSyia+p90sf1vNPmmJe9xn/vE7J3Ai3BG7QxBLGwrCg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fGnjUXdxhokVouZOQo2/BP6HMsqCQCsIj4g15Gdy+zw=;
 b=YVfUXcbQhegHyBppQjBLtQmz0cYNBwG4+32S7x+SyV99lfiwyvr0eRhqW6sStchIBo4pbk0cvDeO28bKVzfo7UYlN5ySw3HATHVQ9MNbBYhnTaFCPqGDbICPfn2T+Dk4jsQnvu050n3TZNuxqLlvdn4j6LTnyb+vh2Dpfd5dDpCx4Axlx2DWI8N/ac2GGlostaI6JERgTWez2tWpuIV9s/ci65CTBCtRkmxXf4/6CgssrIdnZUVM3ZG+YaoUXWzSRoCbQDrN8hHAkNRcrlrqTa1VSe9gOXnleun5M/Zj0K/+znfrWW5whykONbmqhxewddwbo0li+M+n9mT5KVF+Eg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fGnjUXdxhokVouZOQo2/BP6HMsqCQCsIj4g15Gdy+zw=;
 b=jSXEfQi2SOUpDEgyYMfIE1I6LamRb22KkfAuk+X9zkSDZo5wyRW8pyM5o1Ifkmbg6jfOYC71PCmgfR8A/LJHWt5Xuoa4qa8CwMaeTh1/ZSmRhyMnUrGurGT8fj16BEE2qE62695WQnmNvMig+lRC6pTBnvf+BwJkzNf6EJcpuFX3oiWyTRYmPGj08NeL1pC0PVtJrxBagumgTFh+Z+RBsqWEyKDzyFRDzZEeyJ70fZnMwhiRHQez809e/QtH+4BF5yPc1iqWnGlRLcU5dV5owAiRi01BDYBRW6z+XmeLjrd4B01Ef/rwtGEHCq8p1r2OCMy2ALxoRxp/t1olnGfa8Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <59f73c32-bde9-b0a4-00e8-24db1fea2d87@suse.com>
Date: Tue, 26 Sep 2023 09:19:27 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 2/3] automation: Change build script to use arch defconfig
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>,
 Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: xen-devel@lists.xenproject.org,
 Timothy Pearson <tpearson@raptorengineering.com>,
 Doug Goldstein <cardoe@cardoe.com>, Michal Orzel <michal.orzel@amd.com>
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
 <beb83dd70b15ee6bd896fb26532f5debf955cd48.1695681330.git.sanastasio@raptorengineering.com>
 <alpine.DEB.2.22.394.2309251609330.1403502@ubuntu-linux-20-04-desktop>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <alpine.DEB.2.22.394.2309251609330.1403502@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0049.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:92::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAWPR04MB9933:EE_
X-MS-Office365-Filtering-Correlation-Id: c5476694-4f1f-4e1c-4904-08dbbe60ec67
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Gy3R55nFMHR96E6HC4UpAmmjojAKj+wnOCUWzrlpDpr1Dc96RG50v07PF6rjyn0kkxQ+qDw+SUapZIgiB4/S2yyOW42z43lg4wZ1yUdxu/DmxAOTqIVl8uOrauKQe0dWGRLbIOEoBcy8aEiZMspS4SOcZm3iw+1T/CYQ2540QcHivy1zxSg/murw5N3As+wp/bLUdRDCNF95LHx4kR7sFEL+vdTZoR9YeN7nu5QETP6rye2qdo5Fp8aFEu3tCqyDC/Mt35n0KcDk29vlxVx+RQXhE1KHiDPJ9XPupRTKLSrCL3YcB09Seku1/aKV+xKbUb610ahAL6kCIjXnyLcGNXYE+mqrqxag0Jlpk+yepDx/yeAzxwOyWoqCEdWt0ju9wnSd+ZAb1gWnNvoDiwEctmEI4l9u3WM5NE9zDGhfoBMNCEFw34/N6iRYbmUoqLBOIcih5OR3Ux5twcIxOxY6PdedoW7G5Y6SNnkyknpeygMxWOWSJLOXKU5VLLtF0wgUtzvRZuCIXDx1FDTf5vSAEFHoL9NGhlOL4zSXZOUjXbscpOlCaQhAiR2eSnZ/RUydsB44LEjjnH8wXVe+iMO9aaxw29GhdWz6SlAGlipcQHqtvFDcZVuN3Ys8LqmyF1HlYbS2kFQqWCis2ah4s7ei+g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(376002)(136003)(396003)(366004)(230922051799003)(451199024)(186009)(1800799009)(38100700002)(26005)(2906002)(2616005)(110136005)(83380400001)(316002)(54906003)(66476007)(66556008)(66946007)(6512007)(86362001)(6506007)(6486002)(53546011)(36756003)(41300700001)(31696002)(478600001)(5660300002)(31686004)(8676002)(8936002)(4326008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SFI5VmtBN0hKbU80NHpRdlMway85NkNWYlRZVG1CSVI1cW5hR0JEeU45eUJ1?=
 =?utf-8?B?eWJnZ3A2SzJteEZwZUlrblFkdUxkL0YrellJc1lqdjJ1ZkFZZmluL2ErVzFV?=
 =?utf-8?B?TWRlVlJQQVNHcjQrQzBHL3VFaUp2dHB2WXl4YkYxRUxNMnhNbWE5bm8xZmx6?=
 =?utf-8?B?WUZqd0xIdFF0dFlERjY3dmdpaEx1Uy9kc0xIS0FqZGxIS1FKWTlZWHQwQnh5?=
 =?utf-8?B?LzJ5bHg3SWJVZnpWSEVrWnVXb2ZlQWdwdUZBand6RTROcTljSDlLcXF6MFZj?=
 =?utf-8?B?bTR0ZGw2b05xK0IvQ3JWTlpqQWVRVGlIY3dCcHBKQ3BNY0paMHhMbDk2UHlN?=
 =?utf-8?B?bEdYZXNicWtXdG1CSXYzbzlPbk5TM3paempzU1NEL05LTWpuNGp0SWpTUFVM?=
 =?utf-8?B?cUMrZmozalJ4L3YzcUV0Y3NZaWN4bWRsc0J5NHQwK3lLcXZ0RC81c3k3V2wx?=
 =?utf-8?B?cWxBSmliSkVIRkpVY3pjUmxqZ2JCbC9HUGErd0FMU1pqbTJBRnVtZENHcVlH?=
 =?utf-8?B?ejBZUStXZCtpYWQ0T0VzQ2pDM1ZTRTVvczdxeFByTWp6NmZqNTJzQllqRy9o?=
 =?utf-8?B?TWRqQzZ2Qmljeld6Nnh0MWNxRE5WNTdqbTNwbXlWSzJ0eEwvYXFaSUlLUkZI?=
 =?utf-8?B?OU4zbk9YcDdwTzl3eFlVUG9KV3VhTE5TbXloUHY2bGRIWkhmL2NobzhvN3U4?=
 =?utf-8?B?Y3N6bTZyOXpzaEZaRzlwTjJiY2dDQ0JxbDNGeGZKbXhaOFdFdTFYeVQ5cldL?=
 =?utf-8?B?cENGUGlmcWZjTnhlNTVabWxGM0UvcmpBdnVRK2FVUEgzdC9mSkdKM2drYS9w?=
 =?utf-8?B?djRYdjd1K01CRzJwVThMWE1uL1hNWlVSb2U5NjVhRjNIQzl3THlNSmMvYU82?=
 =?utf-8?B?U1RpN1RjOUxvRHNyaDg0OWtuVGlBdzBiUmE0RU1pU2FLTitlcVlVdk9janFT?=
 =?utf-8?B?dEhMcDlVNHc2djdHajlzTUFvc2toU3N3NFlibUYwQzVvZnRuQmNEVGhzZzBX?=
 =?utf-8?B?WHc2eTB2WFdjd1NjT3FHRE9lQ2NhWWJYT29iZWRMRHdJNjFpODR4L3U5QUdX?=
 =?utf-8?B?ajMvcnQyZFJJYVFhcjhyeHB1aHlwNVF4eHF6R2MwMDBSMFlkc2RWb09NNUlC?=
 =?utf-8?B?Y204dkRZTVJTWFZnVk1KbzUyZVNFQWVuNUpkSGJ5TENJQXpRcG1UV3JPcThi?=
 =?utf-8?B?YVBuNXllMGxHWTR1TlVGVEZYQW9NemtMWENpNkJ2WVd0V2RJQXYwalZsbzZJ?=
 =?utf-8?B?QUo4bGRFVFJka2lHaFJ3cC84T25MQmE3Q2FEV3pzYVV1MXpPTEt5WWg1ckc4?=
 =?utf-8?B?cklMNzg2bDJxQm5EODlmYjFySUVqMVhBZUZFQXp3dGJUY3FneFpmNkc0WnNk?=
 =?utf-8?B?RTJCVkJyVmJ4NnJCSThZa2lGMVROenArakJkaitnbk9udnlWSG5OQi9BblpN?=
 =?utf-8?B?bncvSlFvODR5b0VBaEhncW51dytpRGU2T3VPaWJRdEd5NytEWWRUMkdER29i?=
 =?utf-8?B?T0FiV3VUaXc5czBTWC9tKzB1MnJlQ1VtUFJKcC9rWDU3dGRJeFZQajFuTXlL?=
 =?utf-8?B?RkZkMjk4T2JMQUN1YzZoZGdWYy8rcVRmblZndnl0QkhTR243dFBQZkFIMEQz?=
 =?utf-8?B?RC9qWktJY2hVaXpxQTZQajFtcXhKWFlMMk1FbExwOTFuNEZPY1NQTm55cjBN?=
 =?utf-8?B?cGpGaWRhaXMwZ0tuK2phWEFkS0Y1YnF3aEVaTWE4MUJxSWJRdlNxOEFqa2ZQ?=
 =?utf-8?B?YTYzMHJ5NjNZTGI1MkJ6MFVMazBuVmc1QUpRcUpYSjZjRGNhbVNRYVJ5Qlcw?=
 =?utf-8?B?cXdZVnpZQ2k2S0R2ZG9aSEp3Q3p1Z1lTd3pycHFLaUlXUDd1L25sbURRaVNB?=
 =?utf-8?B?U0F2YkcvQmVSZjZHWHpCUWdqVUJvaFBCK0hkeHhjbnMrVS9kL2dHYVpsZ3ZD?=
 =?utf-8?B?S3ZkNlNwYzRPUW96dTJLaVBYaUpNZ3JCdEFXcldhUGV1b0V0anpqc1RXY3Vh?=
 =?utf-8?B?VWFFanIweXpobnMvVEZyaE9zNHZUS1Nrb0JBTTlYM3B4ZFluN2p6MCtPdS96?=
 =?utf-8?B?bE90OUJKa0ZJYjk0MVJUajVReCsyR2dOL1FzT29vU3hTemcreHpZRVhqQjBE?=
 =?utf-8?Q?uFWHaddYxyuRPUf8LZK6CQmsN?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c5476694-4f1f-4e1c-4904-08dbbe60ec67
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 07:19:29.7579
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: v7FFoR/ffahmjJiz2FtD25WxFoIyAEzwPeP3VF5LgGKTfoBYg4kuj5BlYJIarIRiXJnIZcUY41Z91eQVeHgkGg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9933

On 26.09.2023 01:12, Stefano Stabellini wrote:
> On Mon, 25 Sep 2023, Shawn Anastasio wrote:
>> Change automation build script to call the make defconfig target before
>> setting CONFIG_DEBUG and extra options. This fixes issues on Power where
>> the build fails without using the ppc64_defconfig.
>>
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>> Reported-by: Jan Beulich <jbeulich@suse.com>

Nit: Tags in chronological order please (also affects patch 1).

> What is the problem specifically? Is the issue that CONFIG_DEBUG enabled
> before make olddefconfig causes certain DEBUG options also to default to
> yes, and these additional options don't work well on Power?

No, the issue is that "make olddefconfig" takes the existing .config
without even considering the arch's default configuration that was
specified (KBUILD_DEFCONFIG).

>> --- a/automation/scripts/build
>> +++ b/automation/scripts/build
>> @@ -22,7 +22,12 @@ if [[ "${RANDCONFIG}" == "y" ]]; then
>>      # RANDCONFIG implies HYPERVISOR_ONLY
>>      HYPERVISOR_ONLY="y"
>>  else
>> -    echo "CONFIG_DEBUG=${debug}" > xen/.config
>> +    # Start off with arch's defconfig
>> +    make -C xen defconfig
>> +
>> +    # Drop existing CONFIG_DEBUG and replace with value of ${debug}
>> +    sed -i 's/^CONFIG_DEBUG=[yn]//g' xen/.config
>> +    echo "CONFIG_DEBUG=${debug}" >> xen/.config
>>
>>      if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then
>>          echo "${EXTRA_XEN_CONFIG}" >> xen/.config

It never really became clear to me whether kconfig honors the first,
last, or any random setting in a .config that it takes as input, when
a certain option appears there more than once. The change you make
implies it's consistently "last" - can you confirm that's the actual
behavior of kconfig?

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 07:33:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 07:33:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608298.946683 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2Yz-0007eF-FW; Tue, 26 Sep 2023 07:32:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608298.946683; Tue, 26 Sep 2023 07:32:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2Yz-0007e8-Cj; Tue, 26 Sep 2023 07:32:57 +0000
Received: by outflank-mailman (input) for mailman id 608298;
 Tue, 26 Sep 2023 07:32:55 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JCSl=FK=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1ql2Yx-0007e2-UG
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 07:32:55 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2052.outbound.protection.outlook.com [40.107.7.52])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e7637425-5c3e-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 09:32:53 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS4PR04MB9387.eurprd04.prod.outlook.com (2603:10a6:20b:4ea::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Tue, 26 Sep
 2023 07:32:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 07:32:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e7637425-5c3e-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nI++HXbPqIMajtCOwdxApFapNNmkRsUacmUohbD6exoVLbHSSap725Ndmv7WFqwx4Tv22ByELblL9asg+GZwUsqLCSqNOGnRjbln0Ud4kfGlDjg7pubceV/viImnxfu/ZaN0aLSMKQtPtFOz2qBALlJa6kN0IpBjq0Yayz4Lv2df18ChFt6zfmC7G5H0idx1OkS2dbzN6bSKXEyQ9vFBBEgoAH5lrfNZZgLY1m8AmOy28NrLWttjUODIcc0MSWvywrgNpTMAcwNYxdiv4vq8/OWsV2RFOZz2JmXrIUHNx9BnKHqlsAT07CUY5dYSbi3enqVy21iU9yjhkD7w2l953w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=VyxJEsHwmToT1pWzQ6OsbRTzkPir4+aJVLEwtRLkP14=;
 b=kXf8Zumg5eeixBU/WGF6dl4vyt2DsND9/cpUv6JTIU9PVnsOUwmXAgsagdgSBqE2FgED3k0QLcMbrKw/JAdVEtUlKX1GH4sWwJTitMk2fagU+VLKumT8qOH+BEuBLxRLnhqfx9xJNQgExzdg3H32Gm85oJssTqWcrIcaMyFsn1K52ah9AkRrCVCJcy7wxAdTbHr5Xl5bJC/B61ZLcqN/8O+7rZxn7CMvtEfjRz/wrBfBTaDwjMT1H3BFUqSawRaEVEelMrFxCYyollmas8PEAIZQOTigaxjuTPF5YR+6Pg9gmtmPCPsP5Z9bPmMZSiglLbrKqiFZ7o43/zfJbadGrw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=VyxJEsHwmToT1pWzQ6OsbRTzkPir4+aJVLEwtRLkP14=;
 b=dIFVBEApy1PFk6pe4E2X/Pn2XFbRroCKsTuWW3AvlFoecWrsvCbM5AdwaBhaChwdf2VW52+tnnyT9v1KnY2K+7xpNpDthBsnSAwta5kKGMTpncB2rorxuYLqWToKM0zAlQLQ7NzH9XfWECK+b2kRy5IWBYvZGRX8/HTkmTYLNrXMEkiM7h6GlaVzswDY9ni2KY3V5P2VRhNf+j384nCmFpd44dItCtn8pTqjxJu8oG6xDDwx+tW7UBh1yeCouFO7CTnnq/R+2gowvnNZK88MPbTYgLlOncEJtbtu/n0rKms2WVx/D5zkoWs/x6BwNQTrL7pjlgaC5CVQEgP41aYGkw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <1e74d0b4-c2bf-46c2-b3df-515f6934cda1@suse.com>
Date: Tue, 26 Sep 2023 09:32:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 3/3] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
 <a47962a573eab38991a8aa3e09ca6b8bd3193b6c.1695681330.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <a47962a573eab38991a8aa3e09ca6b8bd3193b6c.1695681330.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0030.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:14::17) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS4PR04MB9387:EE_
X-MS-Office365-Filtering-Correlation-Id: d41cdb89-a4ba-41bd-0112-08dbbe62ba25
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9CO+uCnXwmLK7mwuoMVT2MKpipgR5dChdPHrTfhBuuH4ixJ+V5kFCSn7GIQUFyEbWnxVTh0L0YiaVnJcI7kZOsecjfCyeEmMJf0NHUhOTZdB6mD0u8gK/kt2MIuR+wZbOLwDn4d283hn4tyIh+U7zivdzq/aZ3HZHRHuKaaillK+uHViaiTTt48Ka3xKC8xqxwn1a467dAAVRIz0OCzwnpidA4V54dh8Y3OVdZlnVSJY9iBE1i5BVsl9/nDU2WcXQgRxDeKkL9Zab78D5Fl2q94YE2r0+w+HG0av+ndJkQy0Xd4ebYGsKiLcVVzWqXX/nRsaJcGU/tNtssl0TF/WsmpmJ6Kf6VIz4Y9eBZtvrytUB5T9OQcgR6/+1/gL4vTOOqJYPJpwUUQP3iP37Gxr8zNXjDAVciqKVfCwDhpyoYF/YH/DN1DVA7KTFeTRajpWUpIjl4j5kz317j6Ins+mS5mNK0HlTCtKu0x9SSpGJuhjlVJJCIDxSQzRJZqqsKtHDGaOdFxP2V6lUzIu7tFpXB/PWNrNpYQU4GkoAFhSgGbN4lOwKZoXMv7t+ys0M63goIKJZvUYkIj8v0rQMvoGSqC8bkqkiGnFWI+Z8xM3mkGZOVoOtNMbUftSACHooBNOmH9zgytc3nel6fSRPWXmeg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(136003)(366004)(346002)(396003)(230922051799003)(186009)(1800799009)(451199024)(53546011)(66899024)(31696002)(2616005)(38100700002)(41300700001)(478600001)(2906002)(36756003)(86362001)(6506007)(6486002)(66946007)(6512007)(66556008)(6916009)(26005)(83380400001)(316002)(66476007)(54906003)(31686004)(8676002)(8936002)(4326008)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M3F3S3hPTFk2bFJCT3FZejY5WDRBTFdudFIyR3kzd0xBMTVzYUFxN1YwZXgy?=
 =?utf-8?B?WkU3a3hOZW5XMGVGZmRSdUVmTFhYR0JkYW9sN0hFcnU3K3ZGeDdycUxaSkZt?=
 =?utf-8?B?SFJvaS9IblZIUlBlZ0thZTR2b3dXNzB5cHdCM2J2NlpXVGJOK0txdTJHa2g5?=
 =?utf-8?B?MzZHem1DQjJ5cFhvTXcvVkpHMUg5amRpNkF1REJmdkdBS2gySG43eC9VUHhZ?=
 =?utf-8?B?K0hnWWJPME0rM244c2hXZkFoN1VTMVZqSzF2cTdMeVZicm5vYlJrQko1TFlD?=
 =?utf-8?B?UXlTUHorU2E4OWdWbEhqWWhqUCsvRnFvZG1lS0w1TWEzNXJoV3g4b2lTTW5K?=
 =?utf-8?B?V0VuSlpVbTQzWHVldytvYUI2dVcxNUpCUzVuVTNVbHZaZDl2NDRoMVg2Q0Jx?=
 =?utf-8?B?TEJzVFd1UVNHZmY4ZzBpVTZ0TnViNk5xNjVKb3EyTlpFNVNVUHprdGtIWXZC?=
 =?utf-8?B?Vm1iVlVhT09Eb05zVFg0NmQyZmdsQmJjYnNjTnBCYnpwWU9rZmlmVTkzK3Ny?=
 =?utf-8?B?S1g1RzZsM0Z5Wm1wRlRSc3UwQmZMOTQzR1FCc3Q2bndGSUp3VS9VOHdUNUVq?=
 =?utf-8?B?ZXRkWDA1TEdwWmltQXBLYXVtR2NmaFNWemt5a3ZaSGZFVkhvaS8ySEozUUI1?=
 =?utf-8?B?aEE3cG9WSjRzMkxGVlByMk1mYVhENm5jWmtuNElpVDlFaVJ0QlpqaWVTUjVx?=
 =?utf-8?B?Q1g3YXBFQllSVkl3Vy9GVFgwZTBuVzdKRWFLZHdWeUVMalVmWXNTWktNTy9i?=
 =?utf-8?B?MENVZmFHdCtaM3RmRHlNQTRmMFRieHJXVlpPcFJHYlo3QUJWblprbXRsQjRP?=
 =?utf-8?B?VnNxNEtLTlpuNDQvdUlrb2Q5YVMwZUp1RitjRERZbFh2RXdNM2ZSVkVnNzZm?=
 =?utf-8?B?NTdMS2NoaGR3VDBRRlRiaWJjeFY2L3lnamxUM2lOZlFFZnYwYmZhdUxiOXZ6?=
 =?utf-8?B?NGM0MU9Ld3h6TXpGQ0ZVZU5jUEU1cjI1ckFPZEh3Z2VzZnNac083M2FXUmIv?=
 =?utf-8?B?TkJpMks1eU1KSkpFcDB6KzI5U2tsbGFHa2pPV1hXMW9BTmRBNk9EM2Z3bzBE?=
 =?utf-8?B?S2NqL2dBRkVxVVZML3l6TnkwVjJucEF1UGJXYUFyTk1Vd2RWQ21XSlAxczJs?=
 =?utf-8?B?MnlPU2h3cmRsN1l2ck9udmMzZWdqbWhmRXg1YU5kMVFXRW5ZQ0NPMCtidTFQ?=
 =?utf-8?B?a296TzVETUlrYU44VmtiM0RMVFBhZ2dqekpXQjRGOTloelNzU2kwWnA2MDRF?=
 =?utf-8?B?dzFvMmR3KzRIdXZHeDBsVm05WlZYbUo5Mkh0K0dENlhjK1R3VXVZdjczYjEy?=
 =?utf-8?B?RmU4R2Z0eE5Bdks0UW5lQ0FrLzZsUytBS2ZGSUlVOTdPcUM2OUJLMkFsMjBM?=
 =?utf-8?B?VlQwZGNaUGhwK3Avelp4UDZLUVBHZld6U2c4RjhvelJaSEI2K0lYa1Awb01T?=
 =?utf-8?B?ZEVYMnhJNk85aHNJdVdDVVdaMTM3V1o5enNmQ3BaRGpaazBIblo0T2VQdHRR?=
 =?utf-8?B?citQaUcraGEyVjlEQ2h5d1BoU0VlTEtvZWZqYkxkSHZDNlBBbWN4cUxPMU9v?=
 =?utf-8?B?MzUyVWpUR1FyTmNWcjhPM2txUTdaYWJEam54UUNkblhjTnRHcTNub0QzOXdG?=
 =?utf-8?B?bGZyOFFuMmtJTWlVcXlXdEtBZXRxWjd5R1ZIUmpHTDBaa2VVblBRY2MxZmxu?=
 =?utf-8?B?alBPbFZUWmRjSnhqNjJpb0xYZWRsMWdObktWeFFzSWpjUnozemM5RlMrbFlV?=
 =?utf-8?B?TndQemZsY3VVRUdvMFZDbzYyUStSTFU0TjVwQzZaQjBHVEVSR1JxL1dabUxi?=
 =?utf-8?B?TDB4ZUt5elV2V2g1Q2lUM1ZFTkkybFRkSWc2T1hyY09NNHBQQjM4cUQ2dXVi?=
 =?utf-8?B?SE1XRi9Bc05RRkpOMGN0V0tXcWkzZnNGQVZNT29iUXVVcXZwM2xTaTE4dVI2?=
 =?utf-8?B?Yi9tM2ZIMHRxOHdtQVJ4UVZvc1RvTDZORm9uK3ZLZ1QxaEJwVGVNQ3ZLSzUz?=
 =?utf-8?B?V3hyWG9iVXhZaWxMWGNoY1hYalFlSmduTjU2VGgvbWNtOGVqc09HbDFSRlVJ?=
 =?utf-8?B?Ulg1WjRsV0NzcThuUE1pV0trN2pRS2dqVW5SREVGcnZXcWhMMlBQbnZIbGkx?=
 =?utf-8?Q?zxKv8OzftsnZ2o0ktRU1IKjFp?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d41cdb89-a4ba-41bd-0112-08dbbe62ba25
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 07:32:24.3212
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JK194jT9cVrLKODCLCVtKWHdKWjw2HpDvrctXa4L3swd/7q+nZSpMbPEbdr7pxutgz/UQVrV6npZAuglim2Zog==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9387

On 26.09.2023 00:42, Shawn Anastasio wrote:
> When building for Power with CONFIG_DEBUG unset, a compiler error gets
> raised inside page_alloc.c's node_to_scrub function, likely due to the
> increased optimization level:
> 
> common/page_alloc.c: In function 'node_to_scrub.part.0':
> common/page_alloc.c:1217:29: error: array subscript 1 is above array
>             bounds of 'long unsigned int[1]' [-Werror=array-bounds]
>  1217 |         if ( node_need_scrub[node] )

That's gcc13?

> It appears that this is a false positive, given that in practice
> cycle_node should never return a node ID >= MAX_NUMNODES as long as the
> architecture's node_online_map is properly defined and initialized, so
> this additional bounds check is only to satisfy GCC.

Looks very similar to the situation that c890499871cc ("timer: fix
NR_CPUS=1 build with gcc13") was dealing with, just that here it's
MAX_NUMNODES. I'd therefore prefer a solution similar to the one
taken there, i.e. make code conditional rather than add yet more
code.

Otherwise, ...

> --- a/xen/common/page_alloc.c
> +++ b/xen/common/page_alloc.c
> @@ -1211,6 +1211,9 @@ static unsigned int node_to_scrub(bool get_node)
>          } while ( !cpumask_empty(&node_to_cpumask(node)) &&
>                    (node != local_node) );
> 
> +        if ( node >= MAX_NUMNODES )
> +            break;

... this clearly redundant check would need to gain a comment.

What I'm puzzled by is that on Arm we had no reports of a similar
problem, despite NUMA also not getting selected there (yet).

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 07:37:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 07:37:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608303.946692 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2d2-0008KS-0R; Tue, 26 Sep 2023 07:37:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608303.946692; Tue, 26 Sep 2023 07:37:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2d1-0008KL-Tj; Tue, 26 Sep 2023 07:37:07 +0000
Received: by outflank-mailman (input) for mailman id 608303;
 Tue, 26 Sep 2023 07:37:06 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JCSl=FK=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1ql2d0-0008KD-63
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 07:37:06 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062b.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7d49ae91-5c3f-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 09:37:05 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VE1PR04MB7312.eurprd04.prod.outlook.com (2603:10a6:800:1a5::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 07:37:01 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 07:37:01 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7d49ae91-5c3f-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=auCCB/rXJlnOuAbceL4LPNFNlinqT2w4Hoxym3+Ta2iqrGOQA9Yk+zn5u6CqIiHp+w7EU6ZeBVg8rbFojftJ9o6uma2DmUFI+kj7Jxh8sxLlNGxVlrCreCE2PdAP5WM+fYXyNkiAa0UscpBXp4A2iUKmTlaZV5R/ui5ET6QZx8qKd62JzV89eYL5oG2l80Thm/Sa0lgdrOEqPrZc3gid8EoWeIj9frMdZVfhhvu1zyZwQ+dfg202sECeS4m96X1DQHYkLyTBmF4NacuDisPcs4O4w1xVmVdTdb8Ez1n999xNvdGCYl5YsCLKoCsPZKngF5Gnj9SgcXTZ5sajsyTM1Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DMGChRXatFv19aPSq+AYc7mOaZLe2KktImoXX6jxMMk=;
 b=jnOoev5bOOx+xM8uLo7Yk8Yr/ByTIkfkeePCArXpc3V5wYY+RfLBv6KLlnolwkC8a1uAkQyyzJaUFZFDTPONKu+SUKhYokXFM7mQztbMcYzfe+Yb98aHh7FbKy6s1nSzz8j/ydrvCMiTd3J0Owqh/9bfFR2u5hmrxcXrteLOwFd3HHRRNEi1lnKfHXbnHQPxqwBq7CUqZBsuWqpkB//pW8l58Zf5jIt9666Oq3sIrRTbZN81+3DCZHVgfAlWlSj3B9uP1TsjkQDsHsjqSwiUPc5dd0opmlOC/o89kWjVifNzCu6T4d3/NWmhCzLpSHlhhIv9Nd52ImZxNFgr1ssx1A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DMGChRXatFv19aPSq+AYc7mOaZLe2KktImoXX6jxMMk=;
 b=KyMaS15jQdxmCoTAVh3mRAScd3SUzyYU3HErUjokg1bOmBgY5REkdy27nEGbtI3Ne5MlThiWeJ7gKKSaT+bigNlaETa/e5qINpZ2sYRQlUhBb5EhF+DNEr28s3WdvqyWPq4VqjusNKUcUiKdu7tu0eFYG3MYYLcjKLCguvkk0LgIOAz0DnDEcxkR2SNRXtRYdEAlWWkY/aYj1vnP6duiiIq5exHNmTzhOd6pHugWBwR4vzmme9FxAk08ExRlmafwf/gDocCqTKL2O0A1LqqfVWgk7cC9NkYqI8oY3stX5gjYX+v1+xvXiLDDoG0vOxqwQyLuaPo0YxJMtRWnuRqHCQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ee485a9e-631c-e535-28d8-36456f9f3214@suse.com>
Date: Tue, 26 Sep 2023 09:36:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 3/3] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
 <a47962a573eab38991a8aa3e09ca6b8bd3193b6c.1695681330.git.sanastasio@raptorengineering.com>
 <1e74d0b4-c2bf-46c2-b3df-515f6934cda1@suse.com>
In-Reply-To: <1e74d0b4-c2bf-46c2-b3df-515f6934cda1@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0005.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1d::19) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VE1PR04MB7312:EE_
X-MS-Office365-Filtering-Correlation-Id: 95c77a2b-def7-4894-023d-08dbbe635f82
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0MK4xUsWR+mpecXMCUQljajTKv9T3cDseA3bIiB6eBK24E90Qdi7fDD+GpV1RbmduMxn/toDS6LZ9gSOyRaY12qK2G3CSMT1pckJJ/RpDa/INERLFu17GIbn9BxB4oe1q4qSC+sXvoFOZ6txFhKeocFBj9UAS6y79u4hn821eTWr1ADxXS345ovmhYAVBi/VVNk4UvPAMIy5L7IOaVfGUhK4rHbV/d7SgS1t/kjMNGaaeaz6EZ6Q19oSW27UVcmki5LHnzKMpMzW1WpRcdZc2quxFHLHYNiFtWmXPIf6d6bzhs8rUkVBt/p/4n/DsRIMA7jrAwmyD4HO5QbvjqshDVJJXiBfTPXiZKDpccFa/Hv9hSc2t6sTHM5aW+bIc+2l0DGFSRDaufbFfOOQXXh5pXLsymeXEtDd6yFZkI1EJlqOblVEXpucjJSnds9jm2zksNbPbj7XtbacUbTgSmqyZUKqIk39GERvU3QjMA2/nCHAu6tkBafGPzxkSQbeNdzVpJ9XUBzbEWuGh2KOq9iWaYXSMQNgnuSozChNYE7sFXECN6kwPWx6RoolB0i5SIyM4qM5I4DmHtkKA1eRX7XMMJ8ZWgPzQOfKeNu9U1gnfIQS25CfhaGOtRh+QyC12HR194lGkQu/AbXdB/AcWBnmVg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(376002)(136003)(396003)(39860400002)(230922051799003)(451199024)(186009)(1800799009)(66899024)(2906002)(86362001)(31696002)(36756003)(38100700002)(2616005)(26005)(316002)(478600001)(53546011)(6916009)(41300700001)(6512007)(31686004)(54906003)(66476007)(66556008)(6486002)(6506007)(4326008)(8936002)(66946007)(8676002)(83380400001)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?K2ZXQjRoK0g1TGR4a04ra0MrMktmVmZ3V2xtK0lBWkJ4RDlLOVlydDJ6S01k?=
 =?utf-8?B?QmppTXFvR1VuRWFGNC9kenZ6c2t4TFVkbGwxL2h4Q2x2cWN1TTFUSzNJc2FO?=
 =?utf-8?B?ZGtHM0dqRW5kcGYzTE1MdEVyNTZCK0ZJZHhRdWRxbzRlZXJ6clpqUnU2NXor?=
 =?utf-8?B?UncvRjhzSk5LS2ZTTUFKTE5BeWc2OTRtWUNBRFlDK3J4M0RkQ2Vya0J5dWhO?=
 =?utf-8?B?cWlDeGVKZmRTL2NIYjZQU2FxRU9rbG8rVDNId0dMbmhhQTJ3b0xWQVYxdmc5?=
 =?utf-8?B?RmhhRzR2Y01QVU10NzFyOEg4dnhWUFR6UkpueUlqb0gybS9uWXN6c3dRYXpR?=
 =?utf-8?B?MGt4QkRFRFhwRDJOaldBU21nMnY1Y2RMQ29DcmllYWEvVGN0b1pqUUZSSEh0?=
 =?utf-8?B?ei9OSERVQ0RRRWREbnR2RzQ3cHovdng2V3VaSzBMSGJ6M3NVdEJkZ1c0c255?=
 =?utf-8?B?MnpqWTVPK0tqVk5EUlJObDZDYUZjZ3ArY0J1TVVSVytzbG8wRVV2QWFVNlhF?=
 =?utf-8?B?QWZNQjlzcWk5bUlLNGtEYjdQc2RLTVpwZkFtY1VZTGs2a3hWdzVpQnRZSGhO?=
 =?utf-8?B?U1BjUlhMaDFDbHc3UFZTZGVSTjZMWDc3RWEyMCtScm9qK1pBWTBoZ01nTllD?=
 =?utf-8?B?NG9KajZxaE43eXI5Wkg5V1pMYkpreFZWTHJwTkQ2Q1dHdGQ5N1VYQWR5NjIy?=
 =?utf-8?B?TjRRTzBCWi9ZRkN3TUdqdmNqb04vemx4Rkd1RnFwZFU2b2l3QUJrQ2pqRUM3?=
 =?utf-8?B?aGNROG12U3RzWUVJOEdjN3NNZWV6eGk2bFVaU0RwMnlMeUp4NCsvQWZnRzBX?=
 =?utf-8?B?RnYrKzB5WkhEdHVyV1FmZk1LdnZnQlUvbHZmdGJOY2piU1ZKZm1rOVpaN0ZG?=
 =?utf-8?B?alNsRFFPRUVFUlE4Vll0VTI4ejJmRGFEV2xEWHFmeXpQRk9kS0Zxd2NxbHhZ?=
 =?utf-8?B?eEtTRXZrdldvcTR3emYybkhhOWVpT2JHTHE3VllBRm84NFRSN0Z0cFRNaFZF?=
 =?utf-8?B?b2xncDhBZUg4LzBQdHFyTkVEa0t5My9LWHJ4b3dncnlXODlzU3g5TVYzR213?=
 =?utf-8?B?VUlyNjQ1dFU2dW5obEZ6Y1RMY3VPWHA3cWN4clcvQTNkMzluTkVLclB2REFh?=
 =?utf-8?B?SmFvdGRKNCtOcmxXWUdDeUd5RklIUVRzc2hSOHNNcEF3N2lhWHdjVG80QWx5?=
 =?utf-8?B?SEhaNDV1VUZxcUt5a1NvdmU2aGwrWGJKVEt4cmpmWmtPaU0zNktSZVg3NXdH?=
 =?utf-8?B?eDJjaTJsTUNWNWhUNElhZkxGZ1laZkdUNzR5M2lVeHR1dXAyV2V0RzYwV3dp?=
 =?utf-8?B?cEQzUUo4UnNpVloyUG9mRnFrbnJJQXRENk9lazFqOGo5ZEFIaktLKzVTdXhI?=
 =?utf-8?B?cDZwZTMvVVZKdS9QY2pla05pTlV0OEMyT3J3SWxUMHZkQi9Kc2w0MHNKZlpW?=
 =?utf-8?B?aFdLL1hPS0hNZXpROW40Z01CcytXMDZFM2l3QW1PWE40M3JJc3I2UGc3Q2xt?=
 =?utf-8?B?ODNibHFzRzBJZ2V5NHljOW0zUzhnYUJrUUFTR1dPRlBYYVgrRWJzM0xtQXgv?=
 =?utf-8?B?MGh1REErY0drTUQvSWp4T2srNk1SQjJMSExkTlAvbmxhQnF2aFB4QkRwbGNM?=
 =?utf-8?B?UVpIeUEzd2NiaHBkVERUa1FZSmNDVFBsUUV3RkZZL0NuK1BtOGg3ZW50Ulll?=
 =?utf-8?B?QkFNTW5DV3ZPZERCVW5pNng5MS9UNDd6TlNuL01PYS9iMTZjMzdIYjhzdEVV?=
 =?utf-8?B?VkFWYzhXMnp1bE9sZHk4SG1vMjN5K3dvL25CejlVb2hUdHh0YkVpNTJmRmFK?=
 =?utf-8?B?cE1panZxMVAvTmVFNnZwMjBLUEphUjg3UmtwbGJlSldwV2xhMlljVjFCSGtY?=
 =?utf-8?B?THMxTUhGU3FHV2hLNWlVTGlHOWRwaXNjUmIySTgxVTcva1pJK0pLd25sREFO?=
 =?utf-8?B?TENXNTRiZ2ZzcVgyY01ZWHl3YVY3c2pGNThIa1EvNnJ1Z1BRdHlzSGJoQVdi?=
 =?utf-8?B?ZStBMEpTa09hUmJZYzh0eUFDcEhvTDBKcExJS3N6bXIxOWtuVWgxK1V0K0di?=
 =?utf-8?B?TExnWlM3b0FFRnNhYzJGajBoZ3ZWbGFSaDNMSHdpU0hPUGtFeGxWSS83Zkhm?=
 =?utf-8?Q?+0fj7qimwUm3cCqigRNR2NH9w?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 95c77a2b-def7-4894-023d-08dbbe635f82
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 07:37:01.7442
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: zxfniYvMr7vKhIDdkxpM4k7oJYoZX5Te3hnPifDeawcAt1n81cS0GQpNeqiuMcmMMuwV0UCLP1Q7s668ug+EbA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR04MB7312

On 26.09.2023 09:32, Jan Beulich wrote:
> On 26.09.2023 00:42, Shawn Anastasio wrote:
>> When building for Power with CONFIG_DEBUG unset,

Hmm, depending on what gcc versions are used in CI, the above may be the
reason why ...

>> a compiler error gets
>> raised inside page_alloc.c's node_to_scrub function, likely due to the
>> increased optimization level:
>>
>> common/page_alloc.c: In function 'node_to_scrub.part.0':
>> common/page_alloc.c:1217:29: error: array subscript 1 is above array
>>             bounds of 'long unsigned int[1]' [-Werror=array-bounds]
>>  1217 |         if ( node_need_scrub[node] )
> 
> That's gcc13?
> 
>> It appears that this is a false positive, given that in practice
>> cycle_node should never return a node ID >= MAX_NUMNODES as long as the
>> architecture's node_online_map is properly defined and initialized, so
>> this additional bounds check is only to satisfy GCC.
> 
> Looks very similar to the situation that c890499871cc ("timer: fix
> NR_CPUS=1 build with gcc13") was dealing with, just that here it's
> MAX_NUMNODES. I'd therefore prefer a solution similar to the one
> taken there, i.e. make code conditional rather than add yet more
> code.
> 
> Otherwise, ...
> 
>> --- a/xen/common/page_alloc.c
>> +++ b/xen/common/page_alloc.c
>> @@ -1211,6 +1211,9 @@ static unsigned int node_to_scrub(bool get_node)
>>          } while ( !cpumask_empty(&node_to_cpumask(node)) &&
>>                    (node != local_node) );
>>
>> +        if ( node >= MAX_NUMNODES )
>> +            break;
> 
> ... this clearly redundant check would need to gain a comment.
> 
> What I'm puzzled by is that on Arm we had no reports of a similar
> problem, despite NUMA also not getting selected there (yet).

... this wasn't observed, yet. As far as I'm concerned, all my Arm builds
are debug ones (which I may need to change).

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 07:47:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 07:47:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608309.946703 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2mh-0002J2-0w; Tue, 26 Sep 2023 07:47:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608309.946703; Tue, 26 Sep 2023 07:47:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2mg-0002Iv-TN; Tue, 26 Sep 2023 07:47:06 +0000
Received: by outflank-mailman (input) for mailman id 608309;
 Tue, 26 Sep 2023 07:47:05 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JCSl=FK=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1ql2mf-0002Im-OX
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 07:47:05 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20610.outbound.protection.outlook.com
 [2a01:111:f400:7d00::610])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e27c1a59-5c40-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 09:47:04 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9335.eurprd04.prod.outlook.com (2603:10a6:20b:4dd::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 07:47:01 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 07:47:01 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e27c1a59-5c40-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UqJD+f9Y6BHYGyYywaRhASDHHUPrFOyRYbYvnkCHr2xlOvbJJUpW3MlCOt+XHqAFfbhg/fRkOhe90ZP+XLxUwvOiUTLt/SHbpyI1YpkOlBRwNwIr+KiJcjRQ4VlP0mjI5fyg5Y/zxIo3d+QEDI4hwTNA1n9gREMJQrc4+00VB8AsVHgGkIhGqzEnO/dVCBNhc0FEqGZ1l8HrPjSIMbehCD6y9M5/9jfj28a4qL/xGC11hUeNKVJJTaRRH3cz4BLB8aKEFzq+T1P8AJaN2kXs7vB7Cde7a1JErGVkb01qD7fMQO1cKi9ONXgY0HAfuKUgm+VdNPPiICYERLW9IGYx0w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=gpMPF1Ujjwl9RRM2989cAc9D9umLKJl93kQzxUc2LsY=;
 b=iutTovAzwELlc0z/28kr8YwPh8l/6OUBbJnpaGd1okQU9D1Uvk/Lyhvv1dm6heqC/35cYL+qVormBJEpPA4GnZ27tQuXdcxRA5dP7leagSCKaY6ZRddPnj/JANIGGP/VgpLxsyxKB0wNQB0tSGuTS4gbiyvCaUcl5ZKvZ5bjnqIDXNYIVUGnhCkq3GHDo+mf4bzv//kfG1ZE0dAd7AjV/8gsx64tJawLgxTR15q1hbtiMJd/qCrl6CYISKaRxJh0SoS8yo3i/N/ldqK7QGuG0PHjK5G5vX5ehiBVY6t0BSW9S6dnp0EHzRa6zhqM4TLpUYkJy0FsIf7u90WTEzbi1w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gpMPF1Ujjwl9RRM2989cAc9D9umLKJl93kQzxUc2LsY=;
 b=b49qYowWEa2tpnf50OCtcVggT8r5a9ugzRSCJcByDvkdA5cJQAk4idlnF5eTqfaUSCDIknhFUWuVCELV1xmUw00IcrtB6ShjqIY6hA+Ehs2Tg8jZGwbP5W2i/AReYV0fQI4n66kRh6lDCP8L74ydt9P4cE3sxU1CMtEtoRahQS2Pjafvz2SR3+NgRQ0AoWZuMGtkr4UnjJMUH28Af3lp36idTryGNqARu1EkLP8QB7El8wpGNzAi9LeYt8VAJokJZOJGHLPfZHrFgIa0Rhatks0vwFHhnpqs7c2LeVdHjB8WVrUOW0cjPsDR2Av/pnSaiHgZGbo7ZuZhrvj57WfV4A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0be1e32f-5600-7b3a-8d72-84297a1ebee0@suse.com>
Date: Tue, 26 Sep 2023 09:46:58 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: Henry Wang <Henry.Wang@arm.com>
Cc: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 "jgross@suse.com" <jgross@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
 "community.manager@xenproject.org" <community.manager@xenproject.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <a582759b-c967-44cc-ec6c-7d9104bad4a5@suse.com>
In-Reply-To: <a582759b-c967-44cc-ec6c-7d9104bad4a5@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0027.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1c::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS1PR04MB9335:EE_
X-MS-Office365-Filtering-Correlation-Id: 247c4b09-beaa-4ca5-5ee2-08dbbe64c506
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Uu2E4pV41nZUoy78clZaNOutTLws7jugIOUeETn3vIXNBV4dPuNRESjQFaYQVB0fKgbbjpia/L9vGfk0rlXKC4/lTKg1XyGRxTbDMeBxCiqQA+n9UCwrjWw0ckU1073KzYiOQaZPcVppoad39RYY9bOrQ0vKV15scjHSlTPRustX31AN+34g9sPzQYWPO7exdmHd+klWiJTqFlnzE6yef8GG0Gm57bhXtunEhK+GFrQGdlzsJQ5f9SpCsxZjnQgjBMqVvx/olu645jL5h9Pn5cA+nR3XIRtb3kc9n4EQbeS61iQcZIWb2zsMgbn/DUUrwm2CZKxxRh2xcOdAEL1Gvqs8Y/Qdht5+Lz8JJeE1rNMfFTQa+MlOdKIz4MyLSAiQ1DGz2NCOUG8afcJrzzkxiw8hsIhy509X1NJZWu+ATAaMWBIm+Y73EqMfmtoD4ufWci96bxzPxGuSmErlCXLSia0zpiiMxG7XsiZNMEvYOz5lhMwuyDjAupxPDtbR2Lb6WM0o9tBbVCYhXG5/eS8lHQXSc+Nbw0SyqOnQvsKt8Nq9r+Mm78hl0yleRCDSb0gh1MgXCd3CDV1e5u0Tg+e/p8sqsNbJ2bY8FZvO4Nn7v8SROKG1nEqrC07IBoEavVu6+I9S8n+8TI4/anxxZimmTA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(346002)(136003)(39860400002)(396003)(230922051799003)(1800799009)(451199024)(186009)(6486002)(2906002)(8676002)(8936002)(31686004)(6512007)(316002)(6916009)(66946007)(54906003)(66476007)(66556008)(4326008)(41300700001)(478600001)(6666004)(26005)(38100700002)(6506007)(53546011)(5660300002)(83380400001)(36756003)(2616005)(966005)(31696002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T0xtM3laMDZDNDFKWjdWV2U0bkdBU2NaZ3h5a0xlclBpd09NUldEdkFYbitL?=
 =?utf-8?B?eFlRMWFobWNzbTliZDhhNDRwamNTUjhrK0ROcDk0SHFiakFENTh1MlhrdUN2?=
 =?utf-8?B?S0kzazFzaGpOTE1CanBaczJHRDJ1VnFiWXRMMm5sRjFmb3hLWWdWeWpaOGl6?=
 =?utf-8?B?bUticTQ2YWhKckplZ1ovQjdESGdSZWFqWGFIWFkzbkxQNWt5c2M5VG8wQzdU?=
 =?utf-8?B?eG9wUDdtQ0s2bmdkTEpZcTJEbUdyUlh2VEJWcURhWUxLNHBJWHRsdnFrZVlR?=
 =?utf-8?B?WjJGb2FNY0FGV21ZOVA4OU41SFEzMUZucmdVWnJyOXNFRzhXV1lHTk5lRmxT?=
 =?utf-8?B?V2xrTDZ2THpLbkVSOGNkYmltNy9Rc2VYaXhHS0VHcXpCUnV2MnViOTNPcXJw?=
 =?utf-8?B?bFhkRHFNSXdMOEs5aTZYendpUTFMOFRjOG9OeWRGeTZRYkhmSXAzMTk2ejNW?=
 =?utf-8?B?bzlHSmxIaW9iTStxNlQyTmRrV2dicjNXNmlJNHJ2eExuMkEzdmdSUFRXbGRS?=
 =?utf-8?B?NGJwMDFGdWQ0WVVua2IzN3JRaE9LZEdUNGVhdEpBMEZLSUtaelNXU2IrSnkr?=
 =?utf-8?B?MVNTb3BpdFdmZFJxeG5OR0NUM3duc01mb2xPUzdhYWlSVkJwN1hVMnpnWUNI?=
 =?utf-8?B?UnFzYVg4Z0MySVRtc0NuajVZNktHQkN6dmU5QnY1bHNrc2hFa2xHaTBYaVIx?=
 =?utf-8?B?L3UwN0NyTU02UUdiYlA0bHhBYk82eXFNY0lIZ2gwa1pFdys5Y2hRVEJ6Q1Nw?=
 =?utf-8?B?Yy9IemxkcVlzWFpLbHROWDYyQkpKcDVDSm1udzBESVJHOU5CT3A2UkNWQ0Np?=
 =?utf-8?B?RHJFZC93c2IzY0hTbFh6QStoMUdiM0pLL2dMTENxOU9GSHZoOEpGdnM4ZmhB?=
 =?utf-8?B?M0Q5WGkrZVdWc0k3ZUEzMWdLMys1WFN1RlRPZGxFUjYvc0lIWFNTR3UzeXJN?=
 =?utf-8?B?cTByWm9jcFNNdXFuaTN2WTNjQyt2bXRFcGNyc0QrNEJZME0zVURRQ3pNZ2lY?=
 =?utf-8?B?emNaYndEN1BacDR4NmVoclVZR3Nzd1dNTkVwSXhPRlVEcndudUVuU1dpVzRN?=
 =?utf-8?B?eGpUU2w3bDlQQmNZdXBsUHR2cXFpMkQ2a3gzOGlteDIxZXdacDdDN25qeFQr?=
 =?utf-8?B?MnpWTXEyZ1dPVG1YRXVaMUl1alVpUU5PK2xHcUNIeEhSNVRJWHFYTE02dlE0?=
 =?utf-8?B?ZDB0OXFlNzZ1aWk4TWhlVkFtZHVieEVJa3Bhd0hCMUluZ2tDZklLbWJZTU1x?=
 =?utf-8?B?VHg2RWp2NVI0ZE85ZU1DR1ZhL3ZEWjdqTjhGTDR0M09peFhHblpEd201V2hR?=
 =?utf-8?B?ZEFGTE9HMkN6NHpSVG5RQUsxdDdyVzJWdHlRejF3RkFRcmtCKzFmQ0JVUVRs?=
 =?utf-8?B?ZlZxU1htcVJ6bE1RM2NGM1FOVGNRVGo3YVJ1UkFybit0U09abFVzVUdwb0Rp?=
 =?utf-8?B?dmw3OVBQbS82R1BNUWV3c0xDY2ZzRjNBcjZ4ZnFHZjNwTGhxRVVmVXE5aFRP?=
 =?utf-8?B?Z21KMGhuRnN0eXpKTENXZVFEcFhodXNpQjFSdkY5ejJQclFYK3lCRTIxWERK?=
 =?utf-8?B?czRxazR3bW53U2hxTTFoMUR6NkZGRHd1Q0pKdFdkZUFEckkvY2FLUEN2UFhI?=
 =?utf-8?B?bnloTDVmTGxNV3FNY3d0ODN6UzVMRFBFamtTbzMybkIyd2hIbm4xbUpxZSt1?=
 =?utf-8?B?QTlxcXZpeUJlSFN5ZlNaSDdaWVh2c05ZTmRFZ2lMNFh2MGV3OTNNRmZkT3NM?=
 =?utf-8?B?a0RaWnc2QVEzeVZFKzRsOUZ2d0oxMlhyK1pCNk5DV3lZTFBNRGdXQzJaMVRT?=
 =?utf-8?B?QThYbW53WDdCN2cvazZLdHg4Ris3azlyM3N4M0xHcUYwVHhJQ2lSMm9vMWIx?=
 =?utf-8?B?eHpGTG1JTWJmQjNDeTMwV1NlNEJvNm9BeC9zWnFPMnRTR1JNNWF6SGRucDJZ?=
 =?utf-8?B?NnJ0OEMxbS9HZ282OGxTZjN4M01VbUZvZ1hicm1uUVRud05IQkFYSW94RXhM?=
 =?utf-8?B?dU5mZ3czYmJEY1NtV2pqNGNwWTVZSEl1WEszZ1QvM0tydG5QWHZzam95OUlk?=
 =?utf-8?B?YUdtV0swRnBPNXd6QjBWcHZjdnloa0swbEFzQUJOYWltMVMwUFhzMjArRjEr?=
 =?utf-8?Q?3VOK1ax/FN77lZ8MoxXJ0FDY4?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 247c4b09-beaa-4ca5-5ee2-08dbbe64c506
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 07:47:01.5719
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: cRY7BWSkj+CsBwuQDd1MiwF8mMOtN9wGsKg3elThO4b7FMBpHeZqNHSFg9oqiYxODvvUhVVfrfH0G4sgcFEkWQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9335

On 25.09.2023 09:24, Jan Beulich wrote:
> On 25.09.2023 03:25, Henry Wang wrote:
>> Hi everyone,
>>
>> This is the reminder that we are currently in code freeze. The hard code
>> freeze date will be in two weeks, i.e. Fri Oct 6, 2023.
>>
>> The planned date for 4.18 rc1 is this Friday, i.e. Sep 29, 2023.
>>
>> Also, below is the (updated) critical items on my list for 4.18 release:
>> 1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
>> https://gitlab.com/xen-project/xen/-/issues/114
>>
>> 2. tools: Switch to non-truncating XENVER_* ops
>> https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3@citrix.com/
>>
>> 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for staging | 6a47ba2f
>> https://marc.info/?l=xen-devel&m=168312468808977
>> https://marc.info/?l=xen-devel&m=168312687610283
>>
>> 4. [PATCH v2 0/8] Fixes to debugging facilities
>> https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@gmail.com/
> 
> May I ask that at least "x86: support data operand independent timing mode"
> also be put on this list? There were other x86 items we wanted in 4.18, but
> I think they have been put on hold now for too long to still be reasonable
> to expect to make it.

On the x86 maintainers meeting yesterday two more feature series (i.e. leaving
aside big fixes) were identified as candidates to also add to the tracking
list:

- runstate/time area registration by (guest) physical address
- annotate entry points with type and size

Furthermore may I ask that you keep an eye on the physical CPU hotplug
situation? It continues to be documented as fully supported, and as long as
that's the case 47342d8f490c (" x86/ACPI: Ignore entries with invalid APIC IDs
when parsing MADT") would imo need reverting. While I had indicated that I
would do the revert, a patch to SUPPORT.md was meanwhile proposed (which
would of course further need accompanying by a CHANGELOG.md entry), but didn't
really make progress since then. Yet I also didn't want to "needlessly" do the
revert ...

Jan


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 07:52:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 07:52:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608314.946713 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2rs-00044Y-J1; Tue, 26 Sep 2023 07:52:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608314.946713; Tue, 26 Sep 2023 07:52:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2rs-00044R-GE; Tue, 26 Sep 2023 07:52:28 +0000
Received: by outflank-mailman (input) for mailman id 608314;
 Tue, 26 Sep 2023 07:52:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PA3Q=FK=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1ql2rr-00044L-G0
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 07:52:27 +0000
Received: from mail-pf1-x42a.google.com (mail-pf1-x42a.google.com
 [2607:f8b0:4864:20::42a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a1d368e0-5c41-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 09:52:26 +0200 (CEST)
Received: by mail-pf1-x42a.google.com with SMTP id
 d2e1a72fcca58-6907e44665bso7218224b3a.1
 for <xen-devel@lists.xenproject.org>; Tue, 26 Sep 2023 00:52:26 -0700 (PDT)
Received: from leoy-yangtze.lan ([128.1.74.161])
 by smtp.gmail.com with ESMTPSA id
 x23-20020aa793b7000000b00690204b5a8csm9618369pff.12.2023.09.26.00.52.20
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 26 Sep 2023 00:52:23 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a1d368e0-5c41-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1695714744; x=1696319544; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=QqGbtrtTPr6szlNuwsGwAI4dqbvkxyo1nNwh+JZgsh8=;
        b=fOF92Am9HW8FWY7xlFcyfItkyN/Jmn2SbyQvRF75pZvJ0wnk4XIly2z/CRk+zigEnV
         bz1UI6d2MoOJWM3UQ+DpFJboOeisGzGH25s54pnvT+OSynBxxygCgkeEliTh0+Rrw67Y
         IUNlV5dGAlr5fKI309cUvwKaGtdR1blR6ffDIXX5eG3UIhtW2VcWSPi1s/hFLBOgVAqP
         kuDc9gl6gtLdQ5B/D5uTFfm5pJC0BryUYxYpJBCl7sk4a4c8x6e3SkMHfnflYfouzmT8
         cFfeL8LlqYxwTcAHMdSP5HlJYIRXiPvctubWGp0xeuflKWqhZ/CNPMhlbj02WY29hV3E
         1vsw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695714744; x=1696319544;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=QqGbtrtTPr6szlNuwsGwAI4dqbvkxyo1nNwh+JZgsh8=;
        b=XoqFWV2IB+Ct57T1JrsGkim+XfMP6jB5UfnGXadajSdQME4O3xrFGI2OTtQ1qKuJNw
         kbq6PG2lgnmdopMjNLvAbbU/lSgmINdDnFwa/oqgGzLirS8QGBiop6qBiZM57kxC6s61
         4a30Tclq9QiwlTkZ+c6cL+fJtM0L7Pb63jkB0jvQx3CVNa07zs8xu+3nb2mK8YGwuN13
         CAbjZ9qZGK4yuKGsds3fFOD+YuLYcEe6qVDPHoQCFqNxgGtYp0PIYPWs7K+pZBRBhL5I
         xGB8cdne7iGPp686wcF86bfZPuEgWk6JdLsVZcdBxUZvx/mNaylXXMzU0a7J4fKn3PGb
         Jh6Q==
X-Gm-Message-State: AOJu0Ywj1ZCO1HFsocA+KFpKlzogsAMiCbae0cMp0AW0kw0atbEo4Mv2
	u24OGNwZJ1D+FWAwMEkNjr5atw==
X-Google-Smtp-Source: AGHT+IEHjQRfiC6EjGn0b0KGCRRUS00AornSl/M5u/7fp7qCxPwC51+O8tNJJR64EJ+qfZ3ezy9DNw==
X-Received: by 2002:a05:6a00:2d0b:b0:68e:2d9d:b0cc with SMTP id fa11-20020a056a002d0b00b0068e2d9db0ccmr11310533pfb.6.1695714744611;
        Tue, 26 Sep 2023 00:52:24 -0700 (PDT)
Date: Tue, 26 Sep 2023 15:52:17 +0800
From: Leo Yan <leo.yan@linaro.org>
To: Julien Grall <julien@xen.org>
Cc: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Henry Wang <Henry.Wang@arm.com>, Penny Zheng <penny.zheng@arm.com>
Subject: Re: RFC: arm64: Handling reserved memory nodes
Message-ID: <20230926075217.GA11115@leoy-yangtze.lan>
References: <20230914081607.GA1400758@leoy-huanghe.lan>
 <23a0185e-428d-496b-96b6-d5082800bfd4@xen.org>
 <20230916081541.GA3291774@leoy-huanghe.lan>
 <561f8b9d-3877-4251-8cf7-7cdf313254bb@xen.org>
 <20230920100344.GA71044@leoy-huanghe>
 <6c59477f-d133-4cab-4f4e-afd8e710453c@amd.com>
 <6bfbf707-cfc8-4cf3-80d0-eeaba0e5865a@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <6bfbf707-cfc8-4cf3-80d0-eeaba0e5865a@xen.org>

Hi Julien,

On Wed, Sep 20, 2023 at 11:36:24AM +0100, Julien Grall wrote:

[...]

> > Host dt:
> > memory@40000000 {
> >      reg = <0x00 0x40000000 0x01 0x00>;
> >      device_type = "memory";
> > };
> > 
> > reserved-memory {
> >      #size-cells = <0x02>;
> >      #address-cells = <0x02>;
> >      ranges;
> > 
> >      test@50000000 {
> >          reg = <0x00 0x50000000 0x00 0x10000000>;
> >          no-map;
> >      };
> > };
> > 
> > Xen:
> > (XEN) MODULE[0]: 000000004ac00000 - 000000004ad65000 Xen
> > (XEN) MODULE[1]: 000000004ae00000 - 000000004ae03000 Device Tree
> > (XEN) MODULE[2]: 0000000042c00000 - 000000004aa8ea8b Ramdisk
> > (XEN) MODULE[3]: 0000000040400000 - 0000000042b30000 Kernel
> > (XEN)  RESVD[0]: 0000000050000000 - 000000005fffffff
> > ...
> > (XEN) BANK[0] 0x000000c0000000-0x00000100000000 (1024MB)
> > 
> > Linux dom0:
> > [    0.000000] OF: reserved mem: 0x0000000050000000..0x000000005fffffff (262144 KiB) nomap non-reusable test@50000000
> 
> So Linux should tell whether a region has been reserved. @Leo, can you share
> with us the serial console? Can you confirm the version of Xen you are
> using?

Finally, I located the issue is caused by the reserved memory node
with "disabled" status. In the end, it mismatches for handling the
disabled memory nodes between the Xen hypervisor and the Linux kernel.

I think I should set the status property from the reserved memory
nodes for my debugging platform. But for the case that the memory
nodes (for both normal and reserved nodes) which are disabled, the Xen
hypervisor should ignore them. So I sent a new patch to address the
issue for disabled memory nodes:

https://lore.kernel.org/xen-devel/20230926053333.180811-1-leo.yan@linaro.org/T/#u

Hope now we are clear for the issue. If not, please let me know.

Thanks,
Leo


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 07:57:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 07:57:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608319.946722 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2wk-0005Gf-4L; Tue, 26 Sep 2023 07:57:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608319.946722; Tue, 26 Sep 2023 07:57:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2wk-0005GY-1O; Tue, 26 Sep 2023 07:57:30 +0000
Received: by outflank-mailman (input) for mailman id 608319;
 Tue, 26 Sep 2023 07:57:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JCSl=FK=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1ql2wj-0005GS-31
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 07:57:29 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2060a.outbound.protection.outlook.com
 [2a01:111:f400:7d00::60a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 56407c3f-5c42-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 09:57:28 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9188.eurprd04.prod.outlook.com (2603:10a6:102:222::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 07:57:25 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 07:57:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 56407c3f-5c42-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DJf5XJ4us/okNJOuoaTotuIG9Jh3EB5cMMCQ1va+aepsZHb+QZV+NOJ4ZbJQ0osMxqT7524F8DJHnlAIOua4gD3PuMSDsJBq+/p5++X9QZSpJ+yB6lqt8vcRL8f1OQQpvxfn/ixWgpC54J7W3QbzGqyaS0XtBaIFX56wyDBWVBG78pwJSvUhpE6No/gv9qQe9JHW4sEI+ZTbTfJRd6yBEI3dIcweKVD/4WXmm/zvoG7hFgkouwwhTuQItlaCtEfMtLhVQ1k97aukaFdlJfd+ZZrtUgxXADpHvKIINAwXZcBcJaqgtZuxhKHt6bIjWa/9KotgyMN7ktNzJ+aI9E7SfA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=3AkAkYna7Kmz9Ysq8cHo6Tdv+BmzUMpUCx8jq7TBk2A=;
 b=iJAFuRevbcPw7KHIstKmSqnpWKWJ2xocq9wX/KunO16jYZ2odvQ4gb1ut6y95DS2RleLefWr8lMtjXlY74gbOHtuLWKSw3mJGvcdZmHffoSNbskDSVze5EQoMcq+SPeTTgR9+PpAZC/w1Udh28vF75h8F/jm7RkY2ce7r7O8v8Ke0MdD8BDxfiODNHCdIBnNQ3sDrqOC9+P5FO+1w7yCyGFf+fmad9A6X0GcCW+MuswT9NW1vNwjJXGjsG4QVGbvJ7ymrNWb9cwN5sSzJNvIfbB9hSalKFdHN7psduwzWRpbCkwLptT8v0eXBZxh+cn4xiLJQWLfbABHjPEcGcwAaw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=3AkAkYna7Kmz9Ysq8cHo6Tdv+BmzUMpUCx8jq7TBk2A=;
 b=Go4G19sjrm53brvvFAJ3CLqdOWk5iyfBgvhUvjNgw3QyLG6PBzsqclBHJGfOGfxsRU5Ce7D+DARpAQZ25a0OvINqXiCwQVCBZw/R7aZ2JT3nVzq8qbI7K3uOxBmMXG92Z8onCz+Lm3qZXh3pB8yjqvUKbwNQ48m0z+UiTifv2sABu73k+P38Pr27L3wTF4di6QxX7gALDn+prLPGPu8r/EffuSdXPNSNSBOgsrAT/DhpYpaJI1FUK3se/jLyVDdLvEUYSCpqOviFBQN8I/tHOmLIJL2GPi+6AjLXyz3LUdcdPN0nCu0dujpDdad1MCf/l77wucOqrm+VZR0HESwXhw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f3262609-895f-32d4-1d53-af907e648b42@suse.com>
Date: Tue, 26 Sep 2023 09:57:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH v4] drivers/video: make declarations of defined
 functions available
Content-Language: en-US
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, roger.pau@citrix.com,
 Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
 Julien Grall <julien@xen.org>, Henry Wang <Henry.Wang@arm.com>,
 xen-devel@lists.xenproject.org, andrew.cooper3@citrix.com
References: <5830a4d838883a20a6b320dd9af44ef4bb18ddaa.1695632599.git.nicola.vetrini@bugseng.com>
 <28310181-d7f5-a8b6-f1fd-ea9ca0db56cb@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <28310181-d7f5-a8b6-f1fd-ea9ca0db56cb@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0016.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:15::21) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB9188:EE_
X-MS-Office365-Filtering-Correlation-Id: 750cd00c-b48d-4999-f7ee-08dbbe6638c4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	yMYS2vVLizyrikWS3lIrb6acWqP+r7YL0JO/F3xhbqYM1+9ZpyAwqzG+UHqkMCcBwspbCQ/8ZfwJHWI8AMTLBt604qLl5AOkbPuYdLEOUus0kStPf+w0tAuLgazFiI0jF31ik0KVE+ax5O7IeLaoq8pr2JZ01SNVMeUClURLy7GOQGwQTYQZfusWg80vvdhworvGjSL5D2Acyd0LsTid/ZqZRyIpYuObR5FAYAm6RmcKEKH+TAMd8/6LiJQ56c2cR01pdmdsQoOOLWXpZAUwB6FXUzMrXlmUiHDFSMfhRh3LtQC4+UAFtZtSBBZT4pAKi3UiWtCQ+TIJJ1YOglid6vgJC7bmyGzTKIjYLuJ+lk5ud1Pf4ZM2N0uXh/R6dZRmlQZTUVhYukiMrFvDZe/cvA9MjUOhF36jWfNGiSPKhaR/Vvt/FhDhMd3sOTEMxuP9M56wlO5FuuHQ4A3BxAraFxCyHmAoF9PwaWlEr++XfCGJRbqkWzJzXFgiWqji3O/Pb+bVQqjoHfoivfeVljtk0Ct/ijdlPYg6kgeMcUaK8fOxUbOIdJMbPtecJnN3oB2hG5jFyuYgaIjoVOyWwykigK75BiUOjGSv2G1PHoQkwxhaOyBB+pXhpuHi5/8h4lthWN7SSyS2LWXRe3yWlWJKjg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(366004)(39860400002)(376002)(136003)(230922051799003)(451199024)(186009)(1800799009)(31686004)(5660300002)(4744005)(7416002)(54906003)(2906002)(8676002)(316002)(6916009)(41300700001)(8936002)(36756003)(4326008)(2616005)(66476007)(66946007)(66556008)(53546011)(6486002)(31696002)(6666004)(6512007)(6506007)(86362001)(26005)(38100700002)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NG1WcFFLeTI1WEk1NzhyajN5M2xPWGF1RG9KcEhrWmdjMkNrOVMydmRaVEkx?=
 =?utf-8?B?UjZSWlF0U0NhMXE5elJJZ1Z2b2pOTi9vOXRpd3ZEVk1LdWFSUzJIWmt4QUxY?=
 =?utf-8?B?MG9mWnJIaTRqK0ZRYTJ1TGhmYjdDOGc5SFYxaS9rV3hUYXI4OWVIK3djNGhr?=
 =?utf-8?B?ZzA4MkwxTzBvVTFXLzg3TkZQMmc5L0N3QWQweE1KN2I4THowSm5YSGdRbEFo?=
 =?utf-8?B?bWVMUXZXZ0h6b2ZLZ2tHODBzMUdIMHFsNlcyM3AwTDgvS1NlZk04Z1FoYXds?=
 =?utf-8?B?TThadW5tZzEzczAvYXl4NzRmcGpaWmVmUU9CeEVvSXdSM2hsTXBMc29ZQllR?=
 =?utf-8?B?YndWUWljNkI3WXhaVnBYa0pBV2tUSTROa2Vwa1J3WWlWdWwvb3c1bVkrZThV?=
 =?utf-8?B?SlRJVFlwcVgwL3J4OWZlN3VRY3pVUHJraStUVWNsZjVBbmFrUHRVeXFmSXRo?=
 =?utf-8?B?UC9sYmtlKzd2eW9KYUlxUkd2ckVNN2dvMmUyMG5xR3k5VHhrSk5JQmhQdVlo?=
 =?utf-8?B?U01IZmF5QU43cEEyWktka002enFwdGM5RE1UeVVQdFVOV0tPT2xBbHA3bnNs?=
 =?utf-8?B?TWo0aU9mdEhIdmxVS3lmWmt1cUlraDlmMDM0eUNFeHgyMG5vaW1DVG8zbkE1?=
 =?utf-8?B?UmNtSGJVRHVnMjF4alFrWlY0Q0t2ZjdmaGc1Nmx4d0x6R1BpbXh0UUJxZXdT?=
 =?utf-8?B?SG5UM1kwMGdCbkNoODFrMHRiaER6MEN4YVA4dEVOM2I3MmovNFNlNmJibGZG?=
 =?utf-8?B?TnFNS04xR3BiV2E0dCszanBxUUVTekxIeXo3YjYrbVFONDVFZlN1NkQ3Z2xK?=
 =?utf-8?B?bGVmZnRXZG9YeldGM054NmlrZVY2bld5ZENLUGxqRXI5VUpEdkVkZlRNdlZv?=
 =?utf-8?B?dEdodStIOW9icnNoZU1nOEo1TlNzUXNrbUx2VUdTTDFheEtTWXY1RGV2WTFy?=
 =?utf-8?B?ME01cWlxTGE5eDNnZS82bUlvd09qQnA5OFN6QkVTSExZWmk0U1dZVi82b3VF?=
 =?utf-8?B?Q3ZYOTB6dEFnT3hBS25nTkx5YUREcmM5K2I5dDFGL1MxWUJYODRJYXd6djEx?=
 =?utf-8?B?NTBBbVFKZmRobXlNczNPZ0FRd005akFQRUVYWkp6RWpzUFJhZmQwbGFscDhj?=
 =?utf-8?B?b0pPQU9VczdQZ2twaXRObDJISWxaWmY0QzZHNmwzTFZBcnZjWUdFT3I2NU95?=
 =?utf-8?B?MWJheFZtZDBWdElnVjRjTzZobnd0ZmZiMFpKWEd6U2tJcHFwUG9sZVZHS0tM?=
 =?utf-8?B?TU0yUE45dWJlS1RFTDNKQm8wK2g0NkM0dG9acGNmYlA1MzZza1dzOFJMdkVU?=
 =?utf-8?B?OHpqbmVQdUFiVGwrM0NxQTdLUnNsSVdSMlYvc2w2S3NwaE9VeC9lUDNNYUpT?=
 =?utf-8?B?SWdhcmdLcVpzMmNmTFMvcFp1QzJiTW9LT0lGY0h2dHl6Qy8xUDhtSHJKdXFz?=
 =?utf-8?B?ZTJmNVFuK1RPWWxiZU83L1lQYjlHS2xrUkNyblpZOURJeEd4MHFXaUc5dHJM?=
 =?utf-8?B?a1BZdytLR1pnZkFKbytSZDVFdnpwU3Ercmd2NWxoaFF3cTM1YjVDMDhBNmlU?=
 =?utf-8?B?V0lBTnYyWEtBUlpUUXd1VVdOYWFFTUNYK3dwSFNGSjZHT09ha1ZDOWpQUlJ2?=
 =?utf-8?B?VFd4K1Vwc1dIbkk4cm1BMHFJcmJxdWgyTHM5eFR2OE1jWXdCT283cjlCcTNP?=
 =?utf-8?B?VjhpRDdmS3FtOU1KM1UwSllsclpKdVh0MFVqdVlacVJxbUIvTWhvWDVhV0Ny?=
 =?utf-8?B?NU9ZejQvd0lwYkd0bnZXMnBkR2Z5c1Y2bWJUb1hhc0V1dU1DOHA5ZTU2K25N?=
 =?utf-8?B?U2tRdTN6VC9mRTlsazhNeDBnVFo2ZmNYb2JyWXhyb0NkQXc5SWxxSUIxOTlp?=
 =?utf-8?B?RnhpcTA3cTJTbFcxQ3RIZzN1UGM5T3JiRktmQnFOYWhYOHZCQ0N0ZWxyMmRF?=
 =?utf-8?B?cHA2d2k3d0JsR09rZkcyTDlmaVdYZ0FLU1FFUmVDODQvZ1dvb0VaUnZORmZY?=
 =?utf-8?B?SXlHN0Exbm5WUHArZG9aT1lVd0pISEx0VytYZm5TdFM3cVhmanBQdjRNcnhP?=
 =?utf-8?B?dGNvMzc2aWVQb2h1UGF4V1hqM1VVcnNTTlk4VVRQZzRWaHpwR013MGdCTXRj?=
 =?utf-8?Q?0nKAvc8mbjGghD/6vqUc6C7Vs?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 750cd00c-b48d-4999-f7ee-08dbbe6638c4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 07:57:25.2500
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Y88HdgDf8ikRyM6HomNBHONMXxqmhjt0P9NHAxrmDrKXiQisbT30NVQN2MIGkQWbmLLIelC1jjBSZZ341yVPOw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9188

On 25.09.2023 12:53, andrew.cooper3@citrix.com wrote:
> On 25/09/2023 10:11 am, Nicola Vetrini wrote:
>> diff --git a/xen/include/xen/vga.h b/xen/include/xen/vga.h
>> index f72b63d446b1..9b2c47971d0c 100644
>> --- a/xen/include/xen/vga.h
>> +++ b/xen/include/xen/vga.h
>> @@ -13,6 +13,12 @@
>>  
>>  #ifdef CONFIG_VGA
>>  extern struct xen_vga_console_info vga_console_info;
>> +int fill_console_start_info(struct dom0_vga_console_info *);
> 
> ci
> 
>> +void vesa_init(void);
>> +void vesa_early_init(void);
>> +void vesa_endboot(bool keep);
>> +#else
>> +static inline void vesa_init(void) {};
> 
> Extraneous ;

And with these adjustments
Acked-by: Jan Beulich <jbeulich@suse.com>

> Both can be fixed on commit, but we're in code freeze now, so every
> patch needs approving by the release manager (Henry, CC'd)
> 
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 07:58:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 07:58:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608322.946732 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2xY-0005lk-CK; Tue, 26 Sep 2023 07:58:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608322.946732; Tue, 26 Sep 2023 07:58:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql2xY-0005ld-9j; Tue, 26 Sep 2023 07:58:20 +0000
Received: by outflank-mailman (input) for mailman id 608322;
 Tue, 26 Sep 2023 07:58:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fQH+=FK=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1ql2xW-0005GS-MG
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 07:58:18 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2060e.outbound.protection.outlook.com
 [2a01:111:f400:fe16::60e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7421ec2a-5c42-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 09:58:18 +0200 (CEST)
Received: from DU2PR04CA0264.eurprd04.prod.outlook.com (2603:10a6:10:28e::29)
 by PAXPR08MB6445.eurprd08.prod.outlook.com (2603:10a6:102:159::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 26 Sep
 2023 07:58:13 +0000
Received: from DBAEUR03FT037.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:28e:cafe::53) by DU2PR04CA0264.outlook.office365.com
 (2603:10a6:10:28e::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Tue, 26 Sep 2023 07:58:13 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT037.mail.protection.outlook.com (100.127.142.208) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Tue, 26 Sep 2023 07:58:12 +0000
Received: ("Tessian outbound c99fbc01d472:v175");
 Tue, 26 Sep 2023 07:58:12 +0000
Received: from 11eb009d2cf8.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 FAC37670-F286-4630-8808-D3CA7D64C6A8.1; 
 Tue, 26 Sep 2023 07:58:06 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 11eb009d2cf8.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 26 Sep 2023 07:58:06 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DBBPR08MB6042.eurprd08.prod.outlook.com (2603:10a6:10:20f::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 07:58:02 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 07:58:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7421ec2a-5c42-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dgM+slSzVRSLVMeMDsxYaKTI/qGfngKrBJqR/fymlUI=;
 b=MvbZ4gqGk81tSJXvRi5T47XS/I5O+yday/f47HmXGiiZnZ3hV0INCkARKDFukDd+PaRIv3uf6djUXAyg5vSktZJwPB8dqYz1V2RRoIYNJPFfUFRC9liwxg0z8SqZGdSVtYx+A2KzOl5Rat/aQcOpniGcADQYABTg53KvjiKWKco=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: ec5ab8885d1828ef
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aiVVxWNY3J6CMX9epTah8Nts8c0fvq0uk06EeQNfxwX5Abo5CRhz70nedmvyHKsYb92ZcYqoC7XH+K46RMZd27Sda7aJRPIPMMSxThAcxm2hagJdCSwUANaRlXKYoDZg8/nDOZTb4Lo/9tnYvWYc2ZGZ18sxqOSHS8EHi1Z8ZvM+gSBpPWwSr4KBvvmspLU3KRv59V6EaJI/gDklO/uZ/IRlG+OfocGzm62TuLSHel0GwBin88RzR8tXRo3m4BY+C9hNMXHxKODgbxFvILPP1/VTwDMttZ2G64JYRyyc3Rur8eFI/4Jsa4xQt9kstnt8kQCnUqQHl/O+nwVDLto4bg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=dgM+slSzVRSLVMeMDsxYaKTI/qGfngKrBJqR/fymlUI=;
 b=GVNvmJAYPIQ0OVJEdv9n5gR0zT/IA0ApdVnwPMwRIGtkBTwBaGJSK+VPkbbvca0MHj2EGLCCfVfwhhj4VYmD9cIxXHOwex1YtGyLYxr2qU4UGrStszkXtzxGH5OcwQIWi3wYzca9+54S5fd3k27F3zZNu/PePlPmjbMyS3GgxNTLekOzJeHYH8NmvVPMYhzy7tRj0TYwfMaW/uNPAyH9vf7g4dqhIXTtI2ifTFHOeNrYejJSU7Ac9b25YFnAjHOLM1oIon3Z8OL25TOH6aMOr5fOFFdvJZhkKY+77zcPuYt6UI7JBSmcjhhmsJeaFDqxPATGIqSlPVQJKY3VNX8zAA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=dgM+slSzVRSLVMeMDsxYaKTI/qGfngKrBJqR/fymlUI=;
 b=MvbZ4gqGk81tSJXvRi5T47XS/I5O+yday/f47HmXGiiZnZ3hV0INCkARKDFukDd+PaRIv3uf6djUXAyg5vSktZJwPB8dqYz1V2RRoIYNJPFfUFRC9liwxg0z8SqZGdSVtYx+A2KzOl5Rat/aQcOpniGcADQYABTg53KvjiKWKco=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>
CC: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
	"sstabellini@kernel.org" <sstabellini@kernel.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, "jgross@suse.com" <jgross@suse.com>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, Anthony PERARD
	<anthony.perard@citrix.com>, "community.manager@xenproject.org"
	<community.manager@xenproject.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about code freeze
Thread-Topic: Xen 4.18 release: Reminder about code freeze
Thread-Index: AQHZ705Dwyrpd4I60kahQfZlaJ2JtLArJCcAgAGYfQCAAAMKgA==
Date: Tue, 26 Sep 2023 07:58:02 +0000
Message-ID: <DE6F0412-BF5A-4242-9D08-521034F509FE@arm.com>
References:
 <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <a582759b-c967-44cc-ec6c-7d9104bad4a5@suse.com>
 <0be1e32f-5600-7b3a-8d72-84297a1ebee0@suse.com>
In-Reply-To: <0be1e32f-5600-7b3a-8d72-84297a1ebee0@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DBBPR08MB6042:EE_|DBAEUR03FT037:EE_|PAXPR08MB6445:EE_
X-MS-Office365-Filtering-Correlation-Id: 04397b9a-d2e9-478e-acb2-08dbbe665545
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 47RapYc3FYBcjt+oIL0ooYdMqwAr55AGFDIPk0tAUwhZRaEEkdh/ILvY3nPPaMXyq80WwOCw0dt4Og8M7g0JCDKQcH+VrPqnE4wjVmRCKt5vsSumSflnX39jsVymJRCdFFEKGXU3iH8v4uw6mZ6xmyx74rA9GbPnGDr1MmpiOmks8qQECexwcEL09PdyqepsDbkZty938H3wa5Nf+On76wEuwOrUKqh3VNf9qkuYPsVEvaOg8VUgt/1K5jxiLV9aBZuTnp1HPRbc+aGQGpWv7jaQi8EBC0eYIyVJoA80XPpa32EqQ6DFDQu1SDyWDony+pohtcyyh0278yj/r4RMveBmYXY+TEndmBFe265Q1RuTBuCmwb2IciXbJbDi/zUJngxmkHE+rH5ZIQNdiAWJZ3Whaz43bqA7mFXMNorZZ3tcV4XRxNud25q5NEP9YicIbRF8PEGfsawnDcUM+QSFQt5G8SN+yFg5OZS/8iTd2eRykwFN1Kfr5RNrTMnSUy6aJo0p165QPUrZrMVfMyyhZ/MaTxKrdw4D6vmRkOcwNN4/CP8wXeTXfh+YSZR3aliiMSiWtBWKAYMDWP8GSfiflwFQLFWdFztKftKHEjhFfSahLrzsubDQvtxgf3ugdIeQRWvGkSHAFEN2JkJCXUmrdLTO9c9U7/3S1/GwaBUgKfHYRrKvvopOMsTLRLoD8pWP
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(376002)(136003)(346002)(39860400002)(230922051799003)(1800799009)(186009)(451199024)(2906002)(5660300002)(66446008)(66476007)(66946007)(64756008)(66556008)(54906003)(91956017)(76116006)(478600001)(966005)(71200400001)(6512007)(53546011)(2616005)(26005)(6506007)(6486002)(4326008)(8676002)(8936002)(316002)(6916009)(41300700001)(83380400001)(122000001)(36756003)(38070700005)(38100700002)(86362001)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <0B80A36CE89D484781F281F54B303E26@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6042
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT037.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	322ae058-e6d0-49d8-a10f-08dbbe664ee6
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	DdA0bOdb1dlAyaJKriGkmBaClhp8UScmjY4uw7B5N4NYSY2npCugRTOtqI3kA0Ql3jwe7H0j5XUmnxC69Mo6O9yLeg3IQ92ICYgjhNzs3iH+dOpxU/t8STBYWtLFHLU6AuWkiGFpB2mrCCED7wxIVZ15p5ojAlC75KbtcMZ/K4R/wQdMaI6vuiVCwFKI1AceNrpmghA1kiqL9dqBhxQ0bljTrCaCzbZ3zKdO7Tkx6buZ+e49SBftx7uZ2P51Eq0xf1l0gBxukmhMd0esmMCt6+upEIuhEuTJBRFClgCzD9v3uFfkGKZbsy+V5zTn98td3rCOsKtYJmLIO2l7hWS/tNNcWE6aJE+ki5QtyfPKQTg7+6egMPDHwwXmOvb7O1kyl4Z4j3SaKjaBl3KnGIeEDMzS+O8WgDbGSbQOkXv38gQcJrTQTOwu2bX56KVOXgCEusUBWa82Wa+7KqOuW78/MnZeNa8J9WIJyhEasp1T3keeKFlu4KnX2h82O/V2uUagVVsSID1N5llHag9rOhN7rITa1GyUS1aK81X1KVjHXfPrqwiKxd86rTGCVc17778BsT4N6//Zf6SHH8S3JhePDW3PsVXl7NibLkJbxvAQt4ho4op71uk8pkF1pNOTqPjJ9O+OnxJhAKF2B5bqJDpBw5f7Me8/TgzuUfGnjX9/NCIe+CiuEB3FDWd38MB9fp/RpSbhIr1cVrtsPZeLXGwQKvSn4KSJtpNkJcVYId0z1s7Sepm3Uf33V1Y6LlsFdLdJ43vvdKipAIRQ0BQGOtmeyw==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(376002)(136003)(39860400002)(230922051799003)(1800799009)(451199024)(186009)(82310400011)(36840700001)(46966006)(40470700004)(41300700001)(336012)(8676002)(8936002)(316002)(6862004)(26005)(4326008)(40480700001)(54906003)(966005)(70586007)(5660300002)(2906002)(70206006)(478600001)(36756003)(6506007)(6486002)(33656002)(6512007)(53546011)(40460700003)(47076005)(2616005)(81166007)(356005)(83380400001)(36860700001)(86362001)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 07:58:12.9628
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 04397b9a-d2e9-478e-acb2-08dbbe665545
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT037.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6445

Hi Jan,

> On Sep 26, 2023, at 15:46, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 25.09.2023 09:24, Jan Beulich wrote:
>> On 25.09.2023 03:25, Henry Wang wrote:
>>> Hi everyone,
>>>=20
>>> This is the reminder that we are currently in code freeze. The hard cod=
e
>>> freeze date will be in two weeks, i.e. Fri Oct 6, 2023.
>>>=20
>>> The planned date for 4.18 rc1 is this Friday, i.e. Sep 29, 2023.
>>>=20
>>> Also, below is the (updated) critical items on my list for 4.18 release=
:
>>> 1. [PATCH 0/7] tools: More Python 3 fixes (part 1 of N)
>>> https://gitlab.com/xen-project/xen/-/issues/114
>>>=20
>>> 2. tools: Switch to non-truncating XENVER_* ops
>>> https://lore.kernel.org/xen-devel/20230117135336.11662-1-andrew.cooper3=
@citrix.com/
>>>=20
>>> 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for stag=
ing | 6a47ba2f
>>> https://marc.info/?l=3Dxen-devel&m=3D168312468808977
>>> https://marc.info/?l=3Dxen-devel&m=3D168312687610283
>>>=20
>>> 4. [PATCH v2 0/8] Fixes to debugging facilities
>>> https://lore.kernel.org/xen-devel/21cc28b9-91d1-1e6e-23ac-00c44f3ec08e@=
gmail.com/
>>=20
>> May I ask that at least "x86: support data operand independent timing mo=
de"
>> also be put on this list? There were other x86 items we wanted in 4.18, =
but
>> I think they have been put on hold now for too long to still be reasonab=
le
>> to expect to make it.
>=20
> On the x86 maintainers meeting yesterday two more feature series (i.e. le=
aving
> aside big fixes) were identified as candidates to also add to the trackin=
g
> list:
>=20
> - runstate/time area registration by (guest) physical address
> - annotate entry points with type and size

Added.

>=20
> Furthermore may I ask that you keep an eye on the physical CPU hotplug
> situation? It continues to be documented as fully supported, and as long =
as
> that's the case 47342d8f490c (" x86/ACPI: Ignore entries with invalid API=
C IDs
> when parsing MADT") would imo need reverting. While I had indicated that =
I
> would do the revert, a patch to SUPPORT.md was meanwhile proposed (which
> would of course further need accompanying by a CHANGELOG.md entry), but d=
idn't
> really make progress since then. Yet I also didn't want to "needlessly" d=
o the
> revert ...

I think you are referring to [1] (and a proper CHANGELOG), I added this to =
my list
if all people involved is fine with this patch from Stefano, we can commit =
this one for
SUPPORT.md and I can probably send a patch for CHANGELOG.

[1] https://lore.kernel.org/xen-devel/alpine.DEB.2.22.394.2309111534030.184=
7660@ubuntu-linux-20-04-desktop/

Kind regards,
Henry

>=20
> Jan



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 08:02:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 08:02:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608334.946743 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql314-0007zv-Jh; Tue, 26 Sep 2023 08:01:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608334.946743; Tue, 26 Sep 2023 08:01:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql314-0007zo-Ep; Tue, 26 Sep 2023 08:01:58 +0000
Received: by outflank-mailman (input) for mailman id 608334;
 Tue, 26 Sep 2023 08:01:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=JCSl=FK=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1ql313-0007yx-5T
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 08:01:57 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2040.outbound.protection.outlook.com [40.107.7.40])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f5bd8c7c-5c42-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 10:01:55 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DBAPR04MB7349.eurprd04.prod.outlook.com (2603:10a6:10:1ab::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 08:01:26 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::1353:3b49:2b70:6303%3]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 08:01:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f5bd8c7c-5c42-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=czJHwZWHF2Oga8isTfp4YLRbJOq+yMjdB3dgI0ZNbhWMImI7eEQDbJWBCBlljbhD044QSrGousdwUE7yxp8SsxfA7LurT/o8F8vVMuTqoR7RhVPEPRi0B/mz5q1sWjBDj11/VRuQTX3kDGRy54v2La3fmzSxTPoxRr5B1/9pSNSifCCdg2mdCyI6re9CBJSPBbGq3TaUnPz+mNpA7TW9xdyj9INfEEEMlg7tdGHaOPz0BezcDWg2GoZX7NILtUTl2XAVNcn4ifECh/8GF9VqfXdHnn7rYsXoP/b5NnPRSuHBFEb19g/5j1PkM8g5jHsca6LMOUSZQvrA14aOkaBKXw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FudZQePvgs9CA5NpfnESJTSjbz9cXCSJKiDPyLviroY=;
 b=ed84h5CIAl5vV3A7Q8+VRR407oYKTpiSmneFDdnt28xyG0nKfB2g85K7mWeD6/Gzal3X0JOoMWO5+vzhnfL/l+DMYSDoasBFN63y5ps+kMmlGpgg7zpA9sk1npSmQnS5hVadEWJ+9EuV9lIjLT0et4zp6oTFtTjjUrKTS6IELv6aQnTEULgkZrfv2W0ApRyMeKULO1xXpjuzsxb5WwUp3JXVpmpgQXiXI0ZIAumysHLf32S6mukYGjWtrBDRFD1jMXxv4XJazT0OQxeLx8tj3kNyM8kHuLxejAloR2ozS4vlIomqrL+dWFsnU9HlKbT2FNFhkVNssLhi2n2U5M7H2g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FudZQePvgs9CA5NpfnESJTSjbz9cXCSJKiDPyLviroY=;
 b=Cc/JACSqt2V9tmmIt6UbCk53cuhgVrcXp2bbBk8QFP1yImQDGuMkab/6eVDCNZXI4g3BVGwm8e2JVslQYlWlxg6s3YSxMCoFpXvXWNxGKqfZWadxmgXp3mHZGRbEl1X5On1VYOOHHLiqBnV3uodAQ92oK/r3LhLjilAP754s2A8K66zS4zixzYsBZJZxWUCk+WTIz7RLjMGObbX5Ag/FJvkG2sHGOJxsMNoMJxaEYsnmO9xr80PCOzQiamkGIY49YGHUDw5YW8tiqGK84BBoE9iFloCpVWz8SLrNpEzXCsWItGmOMXgjBcd1C1WXdU3Qi1MuQliFIapASL4DVmwh/Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <729d4ed8-f33d-f7f4-ddd9-3d8e91671474@suse.com>
Date: Tue, 26 Sep 2023 10:01:24 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-US
To: Henry Wang <Henry.Wang@arm.com>
Cc: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
 "sstabellini@kernel.org" <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 "jgross@suse.com" <jgross@suse.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
 "community.manager@xenproject.org" <community.manager@xenproject.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <a582759b-c967-44cc-ec6c-7d9104bad4a5@suse.com>
 <0be1e32f-5600-7b3a-8d72-84297a1ebee0@suse.com>
 <DE6F0412-BF5A-4242-9D08-521034F509FE@arm.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <DE6F0412-BF5A-4242-9D08-521034F509FE@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0120.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:bb::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DBAPR04MB7349:EE_
X-MS-Office365-Filtering-Correlation-Id: df8d98f9-d70b-4d61-4627-08dbbe66c87e
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	DToZytHncWuDnKm8A1MIxZWAti41jW18XZdwUHTQemqNA49dRjWh060tfEXow0yCqeUdOg0r2E0uPGWOv9lJ1EZelNmkFf4ZEfhwySi1OJmgrNrwn+keBmDDmgnE8WhqdfUkwuiiTaVSs1/Fecnf1UHfvH16Xi8C+gpJEWAgHy7zMd201UPdj9ERpVHz26QsdycrB6HOtgOoVOxO1r9OcVazDG1ejCnlzs8BAcp1H24iTy58mPz7sF4cXEFOwjrm7UQ76cwxJENawZ38iy47LVDw7Re5rOaDqcZYlp/7sC/4QAeVlWvTuAj/MhbNxr/lbausmFP34Lwkpy8666Qbdt462yKijOMqkAVrlsjNssngZjWPa9KEhQE96+QpgWR+I2ZEZYd7TVAQcMUxOvR9Bb36rZb0CszKZ3ZtcjWQ+zvsW3LEXCA6L0TEf0SOLJ4UG70TxVxFKG66Y42E6Z+xSGtOre0gz5/G3q8tP1A45S86b0nAuQZgyoaQrc7um8GBdWVpwGaAiiTOqBAT0mvxXc6jGDQjzliPbHAXPSmA6rvM8tZNFT4hkBmJ3W1kn1h0iq2fGld8L1bwZrHTtib2D7HRVEUpu4SZ93euePfXO3y+A2rds82/Q64JdwcNBzh+VvsNxxh7K6H/P/SX3/Je0A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(136003)(376002)(346002)(366004)(230922051799003)(1800799009)(451199024)(186009)(53546011)(478600001)(6916009)(41300700001)(6512007)(38100700002)(316002)(26005)(2616005)(5660300002)(83380400001)(6486002)(66476007)(66556008)(6506007)(966005)(31686004)(54906003)(8676002)(4326008)(8936002)(66946007)(2906002)(86362001)(36756003)(31696002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WXYwK2VDcWJpQUhtSGxvczFVWjE1d2RraU1mT0FpeE0yaWcwS3l5V20xUUdw?=
 =?utf-8?B?U2I0T0ZxbDEyZy9WS2ZzOUlVSE1OSWhrTzFTNE1xbGVtWXdIME8vTjN6TlZr?=
 =?utf-8?B?bWk5eGRydzBVQm05UWR4bFRydlZxTzN3R3lkc081cTFFQ1ZMRUlSeUJtY3FC?=
 =?utf-8?B?TWFxTFNrOUpIT2E0NjZKZWlFYVhPNEw3SVNWTHdKZWtEWDAyUEVJSGVZSjFC?=
 =?utf-8?B?U3pnNThESFRNZFlFTWtEYTBobXBralB2L21lVU10Z1JRRGJpMFozNG9WZkNk?=
 =?utf-8?B?UlF3cVlTVkxmRmVLQVU1dVV5ZXJXbXBJalpaN2xNYzQxbUMzcjI1dWRZYmRB?=
 =?utf-8?B?UUdkYU5RYzVnR2UrT2tsRWxZOERRMkduUWJxN1M4QmZWaEx5TXI2ZzFMZU9h?=
 =?utf-8?B?ZG1rcm9Ldmk5VzZBbkdRMmpuZmZFTzdzdk8xclpJMi9mTTE5TEhVTnpBbkZT?=
 =?utf-8?B?a09pVFlBcFVma0ZLR05UdVY2WkF0WXhUV3hqR0RMbDMyRExXY1MyamJkTGhH?=
 =?utf-8?B?YXNrbkJmajVRRVhwQm9OV05qdTdQNjkvZ0RtUkR5R2U5N2J5S2xJeWEvOUhx?=
 =?utf-8?B?YjdHYTMxNlZwSVRpTVp1VFRlSU1XSGZSNmJzZnhiMTdvRzlUMVNmVzhVMUpm?=
 =?utf-8?B?SFo2R2Nma3UwV0h6MVAxNE5zSXFycm9XT1N3QkdrSTlPMGgxZ21DZU13WEpq?=
 =?utf-8?B?WVZFRWcyakV0WkVrRkswMGlOZWpzaTcvcWx4eGhkVUIwalcrcmVBemZ1a1Vy?=
 =?utf-8?B?aVZxK0M2TlBvMmFOeVUyeXVYZTgwbkFENlFnc25oa1N1azZueFJWVVQ2RWhq?=
 =?utf-8?B?RW5hYXlVUXQyckdYcnRCWFZWdkk4Mk5CcC9HcWtrbDVXaEFtRE1HOVVkQys2?=
 =?utf-8?B?ODN0TGxORFpCcXBDd2ZEOW9oT0lFNVpFNmxrWEM1MkhqZ1haazA2OVlTc1lu?=
 =?utf-8?B?djUrdFV3NjBuZHZscmdEeTBQaWR6dXo3a3h4WDZHeXhSeG51YzBoZk50TkYr?=
 =?utf-8?B?MWZyZHEvZGEwWHlCYWFnZzlaSGFBSU41N0pYbFN0VWF1WGYrcC9rSHJVSXFz?=
 =?utf-8?B?TDdsQmllN2t1a3IrNDNERWVnZytONHR0L3NYYXlwZktGVUxFTmhhR1RQSkx3?=
 =?utf-8?B?WmxDM1l0dldzWStjQzRHU0xNdE1TVUs1S3Z2MzgzakJxbENsMkpDVEJGcFUz?=
 =?utf-8?B?RkJkTVpBejdYT2tWT01SWGZSNFNhSk1Nb04xd3Z4QWRTYUYxYXk1RFdYQjZ3?=
 =?utf-8?B?QWJkK05zVWMwaFFvTVFhN1lWK0lyeDFEZnJaamJ3aDk5RWp4WjJIakpKWStQ?=
 =?utf-8?B?ZjF1T01heWx4NHZPdFhLSkRXbE8vL24vMFV3L2JKd3NHZGMzZm1oUlR1M0RC?=
 =?utf-8?B?R1pHdTh3QUdJR3I4MEROYXRNNVpzNkE0VjVHRzM1aVpzaDV1RGZSbFFzNVBt?=
 =?utf-8?B?Mnd1azNVaWRiU1VHS2RxZndIMjV3emptWmVhK3JrMEhQZk4xMG1HWmRIUmdo?=
 =?utf-8?B?WW05RUNrWEI2T2ttSWZrUEdrdUd5bHNJT0d3MGc5QVhqVDhmYk5ha3d2V2Qv?=
 =?utf-8?B?c0VpMHppL25ZU2VNV2JQZEIycjlrMFY2ZXh0WFZuTW1tT1I3dHBYbkxsYjJ4?=
 =?utf-8?B?N0VFWGYzaHJsclVTcy9XWVFudGJMR0hacG5vTkg1RnFaakxvME80SmVOSFNq?=
 =?utf-8?B?aVNzcnZicGZaZjlCaUFKMnFtM2N6SGVmbWRLRHpiMmIzK3c3aW9kT2ZxN0hG?=
 =?utf-8?B?Uk5QZUYzcFJkYzhpci96RndNbkNhOUQvNXN4d2FBejR1VCtWaW05OC8yRmpi?=
 =?utf-8?B?Y3owSFNBdFl5QzFTK0hhamlCSFZYQ3hBakpmejZQb2hqUk9XU1A0a1M4OWRm?=
 =?utf-8?B?Y25NOEpZVENhVDRWMms4UEYwdGhhelpqaG9lejFYRE1DbklzTDh0aVFYNi9X?=
 =?utf-8?B?V3FWNGZPL0R0RjQra2JGc2xSYkw3Zm91Qm83K05OMTg0Q1pzYXVsb250VDVp?=
 =?utf-8?B?UzYrcGhVaU41UzhIQWRIYld3SkRkTGVHZzV3SHRhdFd5N2FKL1R1Zmhub2dv?=
 =?utf-8?B?aVFLOVhoeVhDVmJGZVI4Z2F2RWxUSFVrVG9aVEpjVFhkZThSd0IwbmdmcHo4?=
 =?utf-8?Q?rLDa4XdJ62XW9g1eEhwnHKM8l?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: df8d98f9-d70b-4d61-4627-08dbbe66c87e
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 08:01:26.3878
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: qdEtIW5cdCFdYVgVEKTqRrXSBjYOZIin7qxG/HQdcRRrsd9d1SZqcBY/xLsKd+Ps8bm/ahQuF2xkzxlYFjLqJg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7349

On 26.09.2023 09:58, Henry Wang wrote:
>> On Sep 26, 2023, at 15:46, Jan Beulich <jbeulich@suse.com> wrote:
>> Furthermore may I ask that you keep an eye on the physical CPU hotplug
>> situation? It continues to be documented as fully supported, and as long as
>> that's the case 47342d8f490c (" x86/ACPI: Ignore entries with invalid APIC IDs
>> when parsing MADT") would imo need reverting. While I had indicated that I
>> would do the revert, a patch to SUPPORT.md was meanwhile proposed (which
>> would of course further need accompanying by a CHANGELOG.md entry), but didn't
>> really make progress since then. Yet I also didn't want to "needlessly" do the
>> revert ...
> 
> I think you are referring to [1]

Yes, that's the one.

> (and a proper CHANGELOG), I added this to my list
> if all people involved is fine with this patch from Stefano,

Iirc there were comments on the wording already, but no update to the patch.

Jan

> we can commit this one for
> SUPPORT.md and I can probably send a patch for CHANGELOG.
> 
> [1] https://lore.kernel.org/xen-devel/alpine.DEB.2.22.394.2309111534030.1847660@ubuntu-linux-20-04-desktop/
> 
> Kind regards,
> Henry
> 
>>
>> Jan
> 



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 08:07:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 08:07:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608339.946752 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql36e-00016O-5O; Tue, 26 Sep 2023 08:07:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608339.946752; Tue, 26 Sep 2023 08:07:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql36e-00016H-2a; Tue, 26 Sep 2023 08:07:44 +0000
Received: by outflank-mailman (input) for mailman id 608339;
 Tue, 26 Sep 2023 08:07:42 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qwzO=FK=citrix.com=prvs=626a79b17=roger.pau@srs-se1.protection.inumbo.net>)
 id 1ql36c-00015B-1P
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 08:07:42 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c0fe9b82-5c43-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 10:07:38 +0200 (CEST)
Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 26 Sep 2023 04:07:26 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB5663.namprd03.prod.outlook.com (2603:10b6:a03:27b::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.27; Tue, 26 Sep
 2023 08:07:24 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Tue, 26 Sep 2023
 08:07:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c0fe9b82-5c43-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695715658;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=oL4s6sW1c3zsJr77M4JeAGqEhamLmYBl6/nR/m+DIWc=;
  b=Lr1iUIGxBP8fZs/ZcJwCq4++PU+2pyUtsLbbLzI3jW5vKBtHMngUYKpr
   rAfY2OBW6HI/AfXvDjdWQq/iV2KFKPK4j1RUkYTDTd8rtSNKisreb9JPA
   /SJWSPDuJtwp7anFz6yoKI7diEirvKGFWEQ9e9ZQ/aE4mTb4y0Y2IBl6W
   g=;
X-CSE-ConnectionGUID: 0dnnyvuhR46oIRAxdGQ0PQ==
X-CSE-MsgGUID: ZH3XBF1CTi6Ko9hN60Xt2Q==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 122436531
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:IiUnh64TFBHN/M6Gz2GLWAxRtAHGchMFZxGqfqrLsTDasY5as4F+v
 mYWWj+DPqnfZ2ukeowjbYSyoU1T75PXytcySVRornw0Hi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU355wehBtC5gZlPaER4geH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5mr
 fAeLiETcxC527yx4YiSWuVDv5wbFZy+VG8fkikIITDxK98DGMmGaYOaoNhS0XE3m9xEGuvYa
 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnEoojuiF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx3mnA9xPT+TQGvhCsn3I9kY9UTYqVAWYpqi5rBDma84FE
 hlBksYphe1onKCxdfHmQxCnqWSY+B4dX9ZdGfcz7g2lw6/YpQ2eAwAscDlFb9A3sd4schYj3
 FSJgtDBCCRmtfueTnf13qeZq3a+NDYYKUcGZDQYVk0V7t/7uoYxgxnTCNF5H8aIYsbdHDjxx
 3WAqng4jrBK1MoTjfzlrRbAni6moYXPQkgt/ALLU2m57wR/Iom4e4iv7lud5vFFRGqEcmS8U
 LE/s5D2xIgz4VulzURhnM1l8GmV2su4
IronPort-HdrOrdr: A9a23:MqNPFaonTdveKkdLwATxx/MaV5oUeYIsimQD101hICG9vPbo7v
 xG/c5rrSMc7Qx6ZJhOo6HkBEDtewK/yXcx2/hzAV7AZmjbUQmTXeVfBOLZqlWKJ8S9zI5gPM
 xbAs9D4bPLfD5HZAXBjDVQ0exM/DBKys+VbC7loUtQcQ==
X-Talos-CUID: =?us-ascii?q?9a23=3AQRU+AGs28crJtMLUPA+KFl0/6It9fnvb3WnNI3X?=
 =?us-ascii?q?kV2FIcpSFRXCpoJtdxp8=3D?=
X-Talos-MUID: 9a23:tgGm7QuPQtZ1LJgLo82nthE5BO1Guo+SCR4ulsQGnZfcBTAqAmLI
X-IronPort-AV: E=Sophos;i="6.03,177,1694750400"; 
   d="scan'208";a="122436531"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AZyeEheATva5uMifQusUn71+gNH7nfQzNYHSqEZJS8lfCYa0vfDvOkdfU9UmjN7z9wOR/sE9ugeEmjfNnceP1eT3ujGSm84vwUBKXNl7f/qr6/r0pR5mGQKqiOzu0sY/H/hZo6wXCP0YRuDz/Rc5QdFbqchK8jQhFJmp4T5K+5+0+6VHWH98PcDTepTIBjzxmo6ax4Ii4Nc/n223Pc7SkJ9M14iEcR2Rr6IPOuQux88lx43AMdPiWKtKpGaq0m28zqD6rJE43R8BBcH6vM1MG4qkIfFNfll0sgi2ZFLD8Ty0ZFEQnA3gVewHFDftxLh1RTUpYXxncgqnFtFU4YFcbg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=tKa+SgYxuSDaqRyqNRXaqUFSchhp53xlW8SIFOJVU6U=;
 b=JdmfM85Q0Ki6/4niRFTvB3Bo4Q4rPr5KrrsHPrNLJeeiO2ZyW9bBGkMZenREA4WaWch+Xu0ySUzaiGCyT6nMhbHEzbZNVoDkGvi8NBHBz3zu6YKIhO7OJBehoaiv6SDSydElz1qIN+rwsfNYrjRehfM1zDcg16Ax6wMnRsfgmUvthQsLK25D8FkK+2h7atPBga6ls6wiYDKsykyIOAlgYmIw9Noph+tzl+84eCTOkVhEFCsU+hiOxDpCBJR+RD1gp4uzv9tXZokGBrPx/b5LIr59zJ5dgluqj6PFfsiHyaQLFfGylCJb1JDuMcz98bJltcDiP8wQRQ5P7nWhA/2L0w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=tKa+SgYxuSDaqRyqNRXaqUFSchhp53xlW8SIFOJVU6U=;
 b=T9o2i6Z4p5SyVNl+lT3s/MvOH/lWiy1xHzeogg/DmJtRlNBFzKWXns2D7kcsWFWLa6Yhh+a6qooLQPfOJjUzIVIGJZJcuJUQWfem5Vj17EsdFQ98GgZQaeO/bKY0xjrRlVhDjEjgczddsLvSqy6pVuWrWUPW5niDowhhK5nynHM=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 26 Sep 2023 10:07:17 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v9 15/16] xen/arm: vpci: check guest range
Message-ID: <ZRKRNcypuvP26luu@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-16-volodymyr_babchuk@epam.com>
 <ZQ1T8vImUxAaeLdj@MacBookPdeRoger>
 <0a1bc845-28b7-4af8-d6d9-cd5fc7bb4d74@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <0a1bc845-28b7-4af8-d6d9-cd5fc7bb4d74@amd.com>
X-ClientProxiedBy: LO4P265CA0096.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2bc::14) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB5663:EE_
X-MS-Office365-Filtering-Correlation-Id: 13ab58ef-e5de-4b52-82c8-08dbbe679def
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Ls/KqzwltDXYj+VEF8yppxHDndne+vDvtPwGiPBV1la9OE1NiF6KvaFO5cLJGOFiRpeSJB2CchzTE1F5a2hd4b6KY3FmO505K8hVYkCWmH76nIh5xW1+KaxDIEOowg5ZMFvij+rYCWhY4KkYmTlq6yox+7Y6dJP8kdMCvhRr6VujLF5YFcGogJIRI28Kmzl0mR89dwsFzqTX+Pok59kWhJm07ExR7S6JExTtyhS8b9sclB/a2lBwUokt/y8fTAFgMG9bV1kYc8tksVbog/jshMFfdGPDrT0p3ygGx9HHu6E1fSyOOGZQAtSyZsNNVhJN7lYrAPx0mOxiqb5YtmyVYwKJUonG9n+v9vnTMX9klny1FZIiBfs8hlSgqMTyXHRY8qSXCXeWWc/5zthtetctn1K+67K6UYEvC9PUuJe3BaL9Q2UEE6hUyaMiB3/WuxO1TRkRWuGb3Sy2aF/F2LLniKclkhGq09NlovjGpm/u3JotyLDJBEhS10lLJPeliYUM3nAloOLUqMDcx2SV0S1CNBNvv4SQbg34pI9LplLrgKFerknjg+iTiQ0m6q1imyJA
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(366004)(346002)(396003)(376002)(136003)(39860400002)(230922051799003)(451199024)(186009)(1800799009)(2906002)(86362001)(6512007)(9686003)(6506007)(53546011)(5660300002)(33716001)(85182001)(6666004)(38100700002)(82960400001)(478600001)(6486002)(8676002)(41300700001)(4326008)(8936002)(26005)(66476007)(66556008)(66946007)(54906003)(316002)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZnZobE02c3pScWx1RHovSDJlQlE0REE3NFdtWm0wK1VCWFpZWnBsVitDUUJv?=
 =?utf-8?B?TEc5NVk4MlVRb0tUWktVcEcybkt4T3MwUi94b3ZTZmpBL1RGeEovbjdjNExH?=
 =?utf-8?B?VkwxcUM5ME9sdFQxWnhlalJqTmp0QXJWbGJKOGlLaGtzWjgrNkwzcTk5ek5J?=
 =?utf-8?B?VG85UU1ZOFZWV1pzaUtxaU1CRWErZGZ0amYrd1RMTHJ2aHlGdy83K2FFUGk3?=
 =?utf-8?B?TFFFdlRHckJsZkVwVXBkbnFUUDdPSWJvN0w5eWIvQ0N1SDhRSWNiREhYNHVx?=
 =?utf-8?B?aGFwUCtBeldGUDJnME9ZdmU1RjM5YWtrM0dITTB5Q3ovVzVxbWRFcTVwRGdh?=
 =?utf-8?B?VGVtc2RFb3NVU2RleVh0Vy9GRVM1RHUyMUxNMytKa1RzL2N3UmRpK0JraThj?=
 =?utf-8?B?LzZzRlhqY3ZoZm5TQUt0L05kV0ExQTNQa1k0bWVKeTV0TUwxZzM5UFBqVjBU?=
 =?utf-8?B?YWRCRnRJMStvRGhFamJsUjVzV2VLb2hKMHFPWjREZjN0Q1pKa3pLWURqUkI3?=
 =?utf-8?B?SWRFaVZlNjhRVVpmUC90L09zVFk2RitGbU82OFYySnJZS1VQendNWFhQSjI2?=
 =?utf-8?B?VVpJSjVSL2JoZFBmZ250NkpsUCtXS3k5TWJ3S2hTa3V6aHhuMkVJbmZGZi9I?=
 =?utf-8?B?T0U3Tm9WZk5QMHdRUXRTUUJodzY4eUZzRnRuNzg0UHpLaExmRW1RWElpejRs?=
 =?utf-8?B?Y0dhb2wxakxwUms4MlFxYU1lS1pNZFlreTRmU0JXTXBQc05MdkFXWEVqRUo2?=
 =?utf-8?B?QmhTYXd2T1VHdEsrcnV6OU5kZlRicm0ra3N2ZDA5Z05zMk5GSmVUOStYbGtF?=
 =?utf-8?B?OWVQbzZsWDFyTEN5ZTZuaUhneVNLWnI0REhtYjl4VHh3ZzBrNTU5dTI4N0NH?=
 =?utf-8?B?eUI1OTdnRGpiVmg4djQzK3pEa3BtcVpiVm94QVhRWXhnYkk1aEtaVFl1Nnlx?=
 =?utf-8?B?Y2ZSVnpGK1laWmp3cTE4VTdYWTRJbnJKTDVpQm1pY3RGdG5ERGFQOHBLcHZw?=
 =?utf-8?B?U0k2RmhCUWRPL25sWWp1SjVMV3RhQ1pQcG5OSnhGcmtuYWlCeFdibmV6Ri8v?=
 =?utf-8?B?S2hpdXRIZjlYZm5kYUx6Sm9ZOTBMN1pwMzRJUmY3bHpRSjJVYVhsZ3ZYcE11?=
 =?utf-8?B?UGxUVVdKaEJ5ZytGbkhiN2xSaUoxeFhxWTVZa04rUlRZZHFQREVZUmw5Z3Qy?=
 =?utf-8?B?VEZiR1BxKzNZSDBXbEd2VmE2N01wM21mSmNpNkJhYmdDeDlrU0tKQkFjQXBW?=
 =?utf-8?B?aDk5cUd1YnhDL25oaFlubTVOVnp3dkxPc28wWjg5KzRCZktvcElTekZkc0VO?=
 =?utf-8?B?TlJqczRXelFVTUxucUw2bE95VjZla0crd0hlTnVWbytIZlR0Tm5oNVBvWDJk?=
 =?utf-8?B?dHFzYXlRMEZyQWg3Wm1ZMU9kT1VNRlU4YStPSVhpUkRnam1JSDFOY2ZoYlYz?=
 =?utf-8?B?bDRsVEZGTEZNa290cGRsWWNlVGZHUnR2Z3c2RkpxWkFhTnFwcnFlRnIwaVRM?=
 =?utf-8?B?azZwVVBXYkYvRHh4TTlOUFdrMTFzOFpOUVdpdlk1VTRldkNXK0tMSnhmbDVw?=
 =?utf-8?B?MTR4MEszamZ6QlEzSk9VN2J0elYxUEEwRWVxU21Fa1FqWVlocTBnSlRicGh1?=
 =?utf-8?B?dTBvNXEzeGNyOWxVcldvcytlakdMMGhta1EvbkVGWWRSTGpEWXRSWEd0VXVi?=
 =?utf-8?B?UUMzT0FWazBaQjZtekN2dHhBMldYZXpWT0NldG1VT2dhMkk4UUZEaTZsWVBx?=
 =?utf-8?B?ZXVxQ3l4a1RxVnUyc2N6d3ZiTHBFQ2ZIeHNpbHdsVHgvT2R3VXpid0d3SUFB?=
 =?utf-8?B?NStUVXJ5Y1RpZ2RZd05KdmFjVU5HWkt5VkkwTC9sQnJLT3dlOFdYYTN0ak81?=
 =?utf-8?B?RU1hYUhYUlovZUZaUGJHSWtWUWRKaTFQTmtNYm1mYnlueG1RWWtodHZRWlFj?=
 =?utf-8?B?c3R3amtvbC9mV3V2SEVGMkhOY1NtcEM3OUp0ekxmbkx0WUVJclNSaldMVXlJ?=
 =?utf-8?B?TS9BQTIzVkJseEJHMmZzVEFtRmJBNnFnTXJrR2lOMVI5VWNOaVVpNXZPZzZL?=
 =?utf-8?B?Vi9ER1FFOGtaanBzc3ZPNWttQjRhYzFGZ0xYWStmREYxYjNrQkltQXdrM1F6?=
 =?utf-8?Q?1ThQXs83YwoMRhK/EdaGZHECS?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	7/M2WAvWa+su1Sf50xw0jFHPkb3MS+ooA04TK+HApGWRgdN0wqsP+H9181yWx97U9eWfnho76Vocl5MHwHsW9fYK3Giyxzl1lTjhRmoIznnbvLQ8iP5Yo+ka4FjySUOv841H6PEIl8Q/XpiABm25hyxGya2Fu1UZ5sfbXZvuqcKrxE1ROrQ8vc+S0Td5fzIcJTdo/lf7uD5kSp0IAyYp1H8sGroeYrVI/pVV3F+bSdPUvy5cksNFw/hdBBJPC3S/1UyYJYDaC0XUV46Q0uornkgXzckrOdfjT+caGPxJXJLjKfSxUMahjaXG/17nqrjJXPth1fn9jU/aZIFnkjXjfZeG6LrdFrdG9oj12G3TDG9ypctRESHj5AAbl6SrHRMbwxeXv2ZtGSX0E6yqYhmRcmZpf/vhyZhFMJ23Mr/N0raHo0XNxGPwBdZZZiaFVwLFfo2Pg1xrh7CIi7Zs0rASJ0Kt756P9c2+2DIccmwpGYmL2M4UmuUihgql+REFFFJeaHUeeYj3hM+wLz2MF44WopZc199HF4fpju4CL3wxio8shp7XAkwTiDucvuLwDqVyNFNk1F23m49VGyVq4gJA+woW8boBN1jY9gd6pbOFjaazR3UtdmynKBrrehteZFctJapFwww0ASPD/JqqGAmzboRPX5eRiHHaYoUNQJ2Nq9QQShHui4n+bHkIxOOMWx0KtCjeRlRPBgTSYwt+yAQIC+KFr8nEbkP+Zws+r8sANOz9qqmCT5cvyZg0d3SUmoP2OG7VAPxxKMuY9zOOKwykh5wgnk1fQFa3jJKydNdn59dFjq+q9gdQHT5xfT+ElW39
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 13ab58ef-e5de-4b52-82c8-08dbbe679def
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 08:07:24.5096
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: nt/Qv5029PT1U0Kgb1rJcXcZIkKci9eBgGe3pFtHM4lqXyNRoPoKhkN4hQUbrAWqDNtycjT0Gu6xzq96STZhJw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5663

On Mon, Sep 25, 2023 at 05:49:00PM -0400, Stewart Hildebrand wrote:
> On 9/22/23 04:44, Roger Pau Monné wrote:
> > On Tue, Aug 29, 2023 at 11:19:47PM +0000, Volodymyr Babchuk wrote:
> >> From: Stewart Hildebrand <stewart.hildebrand@amd.com>
> >>
> >> Skip mapping the BAR if it is not in a valid range.
> >>
> >> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> >> ---
> >>  xen/drivers/vpci/header.c | 9 +++++++++
> >>  1 file changed, 9 insertions(+)
> >>
> >> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> >> index 1d243eeaf9..dbabdcbed2 100644
> >> --- a/xen/drivers/vpci/header.c
> >> +++ b/xen/drivers/vpci/header.c
> >> @@ -345,6 +345,15 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
> >>               bar->enabled == !!(cmd & PCI_COMMAND_MEMORY) )
> >>              continue;
> >>
> >> +#ifdef CONFIG_ARM
> >> +        if ( !is_hardware_domain(pdev->domain) )
> >> +        {
> >> +            if ( (start_guest < PFN_DOWN(GUEST_VPCI_MEM_ADDR)) ||
> >> +                 (end_guest >= PFN_DOWN(GUEST_VPCI_MEM_ADDR + GUEST_VPCI_MEM_SIZE)) )
> >> +                continue;
> >> +        }
> >> +#endif
> > 
> > Hm, I think this should be in a hook similar to pci_check_bar() that
> > can be implemented per-arch.
> > 
> > IIRC at least on x86 we allow the guest to place the BARs whenever it
> > wants, would such placement cause issues to the hypervisor on Arm?
> 
> Hm. I wrote this patch in a hurry to make v9 of this series work on ARM. In my haste I also forgot about the prefetchable range starting at GUEST_VPCI_PREFETCH_MEM_ADDR, but that won't matter as we can probably throw this patch out.
> 
> Now that I've had some more time to investigate, I believe the check in this patch is more or less redundant to the existing check in map_range() added in baa6ea700386 ("vpci: add permission checks to map_range()").
> 
> The issue is that during initialization bar->guest_addr is zeroed, and this initial value of bar->guest_addr will fail the permissions check in map_range() and crash the domain. When the guest writes a new valid BAR, the old invalid address remains in the rangeset to be mapped. If we simply remove the old invalid BAR from the rangeset, that seems to fix the issue. So something like this:

It does seem to me we are missing a proper cleanup of the rangeset
contents in some paths then.  In the above paragraph you mention "the
old invalid address remains in the rangeset to be mapped", how does it
get in there in the first place, and why is the rangeset not emptied
if the mapping failed?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 08:09:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 08:09:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608343.946763 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql37s-0001mA-FO; Tue, 26 Sep 2023 08:09:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608343.946763; Tue, 26 Sep 2023 08:09:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql37s-0001m3-CT; Tue, 26 Sep 2023 08:09:00 +0000
Received: by outflank-mailman (input) for mailman id 608343;
 Tue, 26 Sep 2023 08:08:58 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fQH+=FK=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1ql37q-0001lh-SC
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 08:08:58 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20629.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::629])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f0b1b635-5c43-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 10:08:56 +0200 (CEST)
Received: from DU2P250CA0020.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:231::25)
 by GV1PR08MB9940.eurprd08.prod.outlook.com (2603:10a6:150:3d::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.25; Tue, 26 Sep
 2023 08:08:47 +0000
Received: from DBAEUR03FT018.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:231:cafe::8d) by DU2P250CA0020.outlook.office365.com
 (2603:10a6:10:231::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Tue, 26 Sep 2023 08:08:45 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT018.mail.protection.outlook.com (100.127.142.74) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Tue, 26 Sep 2023 08:08:45 +0000
Received: ("Tessian outbound 1eb4e931b055:v175");
 Tue, 26 Sep 2023 08:08:45 +0000
Received: from 12cc27cd85a9.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 5116AEBE-416E-42C9-BF1F-FE913F127BC6.1; 
 Tue, 26 Sep 2023 08:08:31 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 12cc27cd85a9.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 26 Sep 2023 08:08:31 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DU0PR08MB9910.eurprd08.prod.outlook.com (2603:10a6:10:402::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 08:08:27 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 08:08:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f0b1b635-5c43-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+adqwIIEImopxV9YlaUzOJHCn5uICq8OOeKnJn5yZ74=;
 b=nWPedxKgpiMYe4C4A1kvqFGuwBhVuMBXjAiIZv0En1TiY1MY9C36BDQ2/9L8VST7qDs/Gtwvyz2ytxi+CNlKw/JGYDW9HRTJgjotKB9nTP/Hvt0Nb1cNR14gsoHp5OOUHhCmOgiPd8NmPwIv0rLRgrjm7QdqG7GIJEgHcN5b2yA=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 4664ec34959661de
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SKqX94k6QNyICVlgP3J4dmABRAt5p0j9lbgPg55II/5xD2kgkHJ4Yig6+EVXgqdKm/kpraOeakWUrqk2BwiVLNoPT+VVVNsjMfXVxVMClP2RjLQhsptYsHGNJWfGuqyFZOHgH52excr1oz34Y57sh8YaOifMtEANMBKKYyRlGKfVKswnAyES0p68Wa+4YYxxD+fjnkX8okL3GYvsNNSgBiaac38qwebCi52+gVINPyCVG1RXsyqLfBSAz3Mbtuy56QfwMHE2rl42YM3LXhu4D+2U880I7GZZTdfN3oDVZ01gi4A7X1N7ybeW56rZZlSFhQNxcreLqkFEWkNikd2jng==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+adqwIIEImopxV9YlaUzOJHCn5uICq8OOeKnJn5yZ74=;
 b=TBplkc8MJApBYN36+Vr77K1R9MavVG0NZxY7qWJlqCLLdUvls68A2D1lJbS3IwPRwVrhwGTXWWWX+RHxXAOfB6/PS3cPBcYhcPqYuqlztjpPukKPSwN3r1w6G7of0f+7TVde4lg1DnbRFPzICW4o7KNL4LGFMozKTSYDKWkb4Pp+S4GUxGVCZAegLkPFlTtZFZY5zgd9jQEkvz2NdHKPUv/sf7z+pxv9Wk0pS7yFJN3l52/pGIDKN2FfQfV+YYAz1/Tgfb6CT6Ay3iJJhsG2W2FXsFaol5AwipEvgvjsGpeCIEd23UmGMm9+NeaEJh3SARcneligRO6u9r+fglj0LA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+adqwIIEImopxV9YlaUzOJHCn5uICq8OOeKnJn5yZ74=;
 b=nWPedxKgpiMYe4C4A1kvqFGuwBhVuMBXjAiIZv0En1TiY1MY9C36BDQ2/9L8VST7qDs/Gtwvyz2ytxi+CNlKw/JGYDW9HRTJgjotKB9nTP/Hvt0Nb1cNR14gsoHp5OOUHhCmOgiPd8NmPwIv0rLRgrjm7QdqG7GIJEgHcN5b2yA=
From: Henry Wang <Henry.Wang@arm.com>
To: Jan Beulich <jbeulich@suse.com>, "sstabellini@kernel.org"
	<sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, "jgross@suse.com"
	<jgross@suse.com>, =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?=
	<roger.pau@citrix.com>, Anthony PERARD <anthony.perard@citrix.com>,
	"community.manager@xenproject.org" <community.manager@xenproject.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about code freeze
Thread-Topic: Xen 4.18 release: Reminder about code freeze
Thread-Index: AQHZ705Dwyrpd4I60kahQfZlaJ2JtLArJCcAgAGYfQCAAAMKgIAAAP4AgAAB7YA=
Date: Tue, 26 Sep 2023 08:08:27 +0000
Message-ID: <338CEC44-2393-4A62-975B-40F5716CEE18@arm.com>
References:
 <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <a582759b-c967-44cc-ec6c-7d9104bad4a5@suse.com>
 <0be1e32f-5600-7b3a-8d72-84297a1ebee0@suse.com>
 <DE6F0412-BF5A-4242-9D08-521034F509FE@arm.com>
 <729d4ed8-f33d-f7f4-ddd9-3d8e91671474@suse.com>
In-Reply-To: <729d4ed8-f33d-f7f4-ddd9-3d8e91671474@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DU0PR08MB9910:EE_|DBAEUR03FT018:EE_|GV1PR08MB9940:EE_
X-MS-Office365-Filtering-Correlation-Id: 0f896279-5353-44a9-95a8-08dbbe67ce30
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 8uDOjNZ+zeVEAPnFar7Lgb1JiVpRmvHkEua9NshqgE2zmSkSeX0MryNcejvOmtJa5P3/Sw3zbcg8sEvwb3uCajtI/OWTB97UmDjLotya9jJsfhdclbpDl+K2s3cKKY57FUcXWP8VYQi361Xd8brJOhOXIPMpKJ4hRsOwajzvWUBsVsLLOakEMKw2ogRWZscAH9XGr68rtO66yZK3yGk8BKepH60tQSz/5UcYmaD1Q895aK1IQsuH1/6vsF9JWkmCs/vh6lbxVwvrfI74YnfqDgUmnvSIHpAjyNxPJUD6eC0QpGUn3ZUfludvN7EqH/TM+uhN7BdFyk83LZ2uF/LuO0QuNXKMLUJV2lI+hPLxTD7KKhItVLmiDoFSrICOi91d7mBGxUEieQgtqwOGFffH34H3lUZW19gPeq8/99TZB542dAc2B/BTVOfUa7yQZ6CnOicFvtRnUuYFgq9tIevx7Kc8+B2UOP+9bj8wjq6rRRnHCtdqMr2hTwH1X5t/FLFpB1oGdCeUFGPotmxbqdWDZkpPwsE9KxLrJYkM5JuJyf91UclLgg0jKBKOHKC80VBiH+IGvEgx6CBK9JACnhlk9C/UTgpcZAaPVF5RVoiZgFYNctVYkpyz4FR7y/aBgg3JPb3OnIny3NXTaqaXWUgP9g==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(376002)(136003)(346002)(396003)(230922051799003)(1800799009)(186009)(451199024)(6486002)(2906002)(38070700005)(122000001)(83380400001)(38100700002)(76116006)(66476007)(66446008)(64756008)(54906003)(91956017)(110136005)(6512007)(66946007)(66556008)(966005)(6506007)(71200400001)(53546011)(5660300002)(26005)(41300700001)(478600001)(8936002)(8676002)(4326008)(316002)(2616005)(86362001)(36756003)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <924DFC99F5E3C240BC1FC005983C49EB@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9910
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT018.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	559934d8-5fee-4b34-ffde-08dbbe67c399
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1tgzfp16Lqc1uILy1Tza1cm7Yl0Wr843N5MUqMQBEHzSTHb7baInF8QB6EEy90bkv6SYm4K2PMLPLW6OlK+1SpILRAi7iwbqoOqduX4hGDlVmK1hWZNHrLeTq6AFIbsiRl6upBikusYTLTt/kc6cRjO1H0iQUkVRSNyiP6d2lIz608/AlWKVbReUOCzLZvVTFnE6zgcMLeLU5Cao0xr86ml/mAZo8MOIkltmrsQ+lXrDJUYu2T7Ppvfjxo6+G7FjkAAC+y4/a/6n8UNl70N7NKZSafLwvXHasc/5LvLynGe2y5N8DaqalaLXJNMMAX3ZJYF719NLBMmsREZuQWgtejkP+xxEVPd0IIGky8DHUN6ttUgpE5KP+LQF4xABnp27ozDm64dMmwj4bgQ1I/+xs3QNjvmZZmQ1or0WHy7lIz1C2RRKi7AyFWjFtPxaAC9+i6xNNu1TnTh+c4sLkbSVSh6OLE3NyosJ3PxinCZzFNlIYtA39kmgI54xbGCOL4P7sTb5yFuh7QngJXyaa3ofsbp/R9Wd/IraevxIQNtISoS3MN8lvAx/FyF61Z24/BIQllrqonJ9fPqhO/E0Q0MENptRoP8OV4E3zqER84tznxD6/szPLxKUNXBD/06O6Z2LTtcFAOQVXJXxjB0DK/3x4sROnGybqI4ykWi0+txREqEVD4+8NVH1rN2LI484UmBly4C+j9ahL/oS3FMzldvuZwQX2gC38QNH+k0RH5uHNMI=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(396003)(136003)(39860400002)(346002)(230922051799003)(82310400011)(1800799009)(186009)(451199024)(36840700001)(40470700004)(46966006)(478600001)(40460700003)(36860700001)(966005)(26005)(2616005)(36756003)(356005)(336012)(83380400001)(82740400003)(86362001)(81166007)(47076005)(33656002)(5660300002)(53546011)(6506007)(6486002)(6512007)(70586007)(40480700001)(70206006)(316002)(54906003)(110136005)(2906002)(8936002)(8676002)(4326008)(41300700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 08:08:45.3256
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0f896279-5353-44a9-95a8-08dbbe67ce30
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT018.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB9940

SGkgSmFuLA0KDQo+IE9uIFNlcCAyNiwgMjAyMywgYXQgMTY6MDEsIEphbiBCZXVsaWNoIDxqYmV1
bGljaEBzdXNlLmNvbT4gd3JvdGU6DQo+IA0KPiBPbiAyNi4wOS4yMDIzIDA5OjU4LCBIZW5yeSBX
YW5nIHdyb3RlOg0KPj4+IE9uIFNlcCAyNiwgMjAyMywgYXQgMTU6NDYsIEphbiBCZXVsaWNoIDxq
YmV1bGljaEBzdXNlLmNvbT4gd3JvdGU6DQo+Pj4gRnVydGhlcm1vcmUgbWF5IEkgYXNrIHRoYXQg
eW91IGtlZXAgYW4gZXllIG9uIHRoZSBwaHlzaWNhbCBDUFUgaG90cGx1Zw0KPj4+IHNpdHVhdGlv
bj8gSXQgY29udGludWVzIHRvIGJlIGRvY3VtZW50ZWQgYXMgZnVsbHkgc3VwcG9ydGVkLCBhbmQg
YXMgbG9uZyBhcw0KPj4+IHRoYXQncyB0aGUgY2FzZSA0NzM0MmQ4ZjQ5MGMgKCIgeDg2L0FDUEk6
IElnbm9yZSBlbnRyaWVzIHdpdGggaW52YWxpZCBBUElDIElEcw0KPj4+IHdoZW4gcGFyc2luZyBN
QURUIikgd291bGQgaW1vIG5lZWQgcmV2ZXJ0aW5nLiBXaGlsZSBJIGhhZCBpbmRpY2F0ZWQgdGhh
dCBJDQo+Pj4gd291bGQgZG8gdGhlIHJldmVydCwgYSBwYXRjaCB0byBTVVBQT1JULm1kIHdhcyBt
ZWFud2hpbGUgcHJvcG9zZWQgKHdoaWNoDQo+Pj4gd291bGQgb2YgY291cnNlIGZ1cnRoZXIgbmVl
ZCBhY2NvbXBhbnlpbmcgYnkgYSBDSEFOR0VMT0cubWQgZW50cnkpLCBidXQgZGlkbid0DQo+Pj4g
cmVhbGx5IG1ha2UgcHJvZ3Jlc3Mgc2luY2UgdGhlbi4gWWV0IEkgYWxzbyBkaWRuJ3Qgd2FudCB0
byAibmVlZGxlc3NseSIgZG8gdGhlDQo+Pj4gcmV2ZXJ0IC4uLg0KPj4gDQo+PiBJIHRoaW5rIHlv
dSBhcmUgcmVmZXJyaW5nIHRvIFsxXQ0KPiANCj4gWWVzLCB0aGF0J3MgdGhlIG9uZS4NCj4gDQo+
PiAoYW5kIGEgcHJvcGVyIENIQU5HRUxPRyksIEkgYWRkZWQgdGhpcyB0byBteSBsaXN0DQo+PiBp
ZiBhbGwgcGVvcGxlIGludm9sdmVkIGlzIGZpbmUgd2l0aCB0aGlzIHBhdGNoIGZyb20gU3RlZmFu
bywNCj4gDQo+IElpcmMgdGhlcmUgd2VyZSBjb21tZW50cyBvbiB0aGUgd29yZGluZyBhbHJlYWR5
LCBidXQgbm8gdXBkYXRlIHRvIHRoZSBwYXRjaC4NCg0KQXMgdGhpcyBpcyBzaW1wbHkgYSBkb2Mg
Y2hhbmdlLCBJIHRoaW5rIHdlIHN0aWxsIGhhdmUgdGltZSBmb3IgdGhlIGF1dGhvciAoU3RlZmFu
bykgdG8gcmVzcGluDQp0aGUgcGF0Y2guIEkgYW0gcmVwbHlpbmcgd2l0aCBoaXMgZW1haWwgYWRk
cmVzcyBzZXQgdG8g4oCcVG864oCdIHRvIGNhdGNoIGhpcyBhdHRlbnRpb24uIEFsc28sDQpJIHRo
aW5rIGlmIFN0ZWZhbm8gaXMgaGFwcHksIHByb2JhYmx5IGFueSB4ODYgbWFpbnRhaW5lciBvciBw
cm9iYWJseSBteXNlbGYgY2FuIHBpY2sNCnRoaXMgcGF0Y2ggdXAgYXMgdGhlIGZvbGxvdyB1cC4N
Cg0KS2luZCByZWdhcmRzLA0KSGVucnkgIA0KDQo+IA0KPiBKYW4NCj4gDQo+PiB3ZSBjYW4gY29t
bWl0IHRoaXMgb25lIGZvcg0KPj4gU1VQUE9SVC5tZCBhbmQgSSBjYW4gcHJvYmFibHkgc2VuZCBh
IHBhdGNoIGZvciBDSEFOR0VMT0cuDQo+PiANCj4+IFsxXSBodHRwczovL2xvcmUua2VybmVsLm9y
Zy94ZW4tZGV2ZWwvYWxwaW5lLkRFQi4yLjIyLjM5NC4yMzA5MTExNTM0MDMwLjE4NDc2NjBAdWJ1
bnR1LWxpbnV4LTIwLTA0LWRlc2t0b3AvDQo+PiANCj4+IEtpbmQgcmVnYXJkcywNCj4+IEhlbnJ5
DQo+PiANCj4+PiANCj4+PiBKYW4NCj4+IA0KPiANCg0K


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 08:11:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 08:11:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608350.946773 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql39q-0003FE-VK; Tue, 26 Sep 2023 08:11:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608350.946773; Tue, 26 Sep 2023 08:11:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql39q-0003F7-SL; Tue, 26 Sep 2023 08:11:02 +0000
Received: by outflank-mailman (input) for mailman id 608350;
 Tue, 26 Sep 2023 08:11:02 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O22Y=FK=suse.com=nik.borisov@srs-se1.protection.inumbo.net>)
 id 1ql39q-0003Ew-Dn
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 08:11:02 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on062f.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3a5a5622-5c44-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 10:11:00 +0200 (CEST)
Received: from PA4PR04MB7790.eurprd04.prod.outlook.com (2603:10a6:102:cc::8)
 by PR3PR04MB7308.eurprd04.prod.outlook.com (2603:10a6:102:80::21) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 08:10:57 +0000
Received: from PA4PR04MB7790.eurprd04.prod.outlook.com
 ([fe80::edd3:f00:3088:6e61]) by PA4PR04MB7790.eurprd04.prod.outlook.com
 ([fe80::edd3:f00:3088:6e61%4]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 08:10:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3a5a5622-5c44-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mJIiNVnIi1U9Gun+B5TKso75IXXKPeqFiqfKgkSr+CD/Ht+FavBSUI2qkPuyrqFFkF5+wKorbHqtt0yYUaCS7brK64Qq/uyDLWLIYguFw7mDdxxyeRuQ5+rfnmPMjAohrAyhQ+bs78++draT+5QApwpWpG1XBBxTsa2F1DkTKprKmW5njIkSQop2z+6G6RkgGemMc0AW5IqGrBUdwCZzsJwPpqGwJ4SvxEp+OiTG6FZGpltkSNoxsZHn47Tgo9Ds6GBHNfu4mm4RjMX0psThqZjfa9Ehuy51NyDKjoC9/3dN6T/UZR9+utgmehJoVW1B180GrKHPdzfyAUHaMX4Uqw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=TyZEe6WbNYUl0OlEuOpwvuzVbgy4StGtpHEjSLuTn/I=;
 b=Eqan70rzVaXbRYv8THfTRE3yN7h7D3ApmrK6Q/rYKBTahB/SkTta4kJmNRRS8kbTBVA5+Cj9nacRwZ76uVF59nBPW5GbiHP0vvnlWE7WIC2wcp9ELTDA5RXkadXlZ1lHMx5IsBJq5/3tCCC5H3H36idXpz0uTq+s8QebPKVj76gINCAJ4MEmWBnxa01E7UKQinRd5P3N/okL0UmAhuxxAwWnwtIEFSB2VQLB9xOKN8b5eo6gM2lHuJz8C6QihwA1pIQIB3UgvmFBfMrTE5YOdOBRaISSvluKRzeSxrnFRpwRFkJENkdcEE3pg7nCdt1bVA0SaoOScpQD/o1vubSzpg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=TyZEe6WbNYUl0OlEuOpwvuzVbgy4StGtpHEjSLuTn/I=;
 b=cuw5VU3ZvbBN3If06lGMF0LrgE6QKNg2SAE2+a3PVQQnOGDbT+XJnuHiVBovgxLqprlA/Q2B2zrTtbAtE792xsZcuRf5801QkUFKDMagyukbExfSe5C2IOOnOeF6KQ4QUAHPr47VActxtreXX0Xd69OrDe+1wvadCUwnAwUlNaCJcpbGCuN5LEWgJQeHYF+FPvAmG06nu07HScRksNhXj4mMfWTvMcIhCTbNTTXoRkENbKooFmb5E760sXXGypTjMdSsbJG+1nSOoI70tFGBukAgBWBfZKlJY33oKR28YKnFebSTtMsEsSIbLkaHHrGk0Zq2wAZe+LPOKDwuE/Ee3g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <7acd7bb3-0406-4fd9-8396-835bfd951d87@suse.com>
Date: Tue, 26 Sep 2023 11:10:51 +0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Content-Language: en-US
To: Xin Li <xin3.li@intel.com>, linux-doc@vger.kernel.org,
 linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
 linux-hyperv@vger.kernel.org, kvm@vger.kernel.org,
 xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 andrew.cooper3@citrix.com, jiangshanlai@gmail.com
References: <20230923094212.26520-1-xin3.li@intel.com>
 <20230923094212.26520-6-xin3.li@intel.com>
From: Nikolay Borisov <nik.borisov@suse.com>
Subject: Re: [PATCH v11 05/37] x86/trapnr: Add event type macros to
 <asm/trapnr.h>
In-Reply-To: <20230923094212.26520-6-xin3.li@intel.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: VI1PR07CA0137.eurprd07.prod.outlook.com
 (2603:10a6:802:16::24) To PA4PR04MB7790.eurprd04.prod.outlook.com
 (2603:10a6:102:cc::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: PA4PR04MB7790:EE_|PR3PR04MB7308:EE_
X-MS-Office365-Filtering-Correlation-Id: 61b92aee-8ee6-488e-04d1-08dbbe681ca8
X-LD-Processed: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Bj4NER64y4VtiS3kn8raEFPN1DmEnYc55dWznaSvLP1k5Ik/7yTT95+eNZLQqP57km+Z+rvuCZMiImSZb9D+Z/mh/vmwMX2jk7lJYynhUjH8eIwKE8CUVWurRrMYL8cB2+7IghuboC5K1LsIGbCJwJ3gPwWDvrW6ps6EEuAkeRCdfPA9k3Vt9MpuJk63dnOP6kDemUbX11hNTKMR4WKapcXvfCSOzVBztEtWV4pVShDNFDA7/EtRv81el3GO5CuiEl26X2ObgzsRCc84B7wR6wcIyEojVO/eJesUcHOLFxBzZP30RNW5Bc/TMijzfJx3g32joWywDBdr8VcsE/AQZsX6Z3gHf3pV99AOMzpunK9d6UaWrkj4TpRd6q+2M7x68TOHsZA1Su5qyc3cFalxSdBMW9tIxgFSUza4wyrfOAYht0YjBqLhFG+iOw+u8/+UDhsyPtWKBDJNGmf+ec1rW2fU03BeE6uBh1IrkaphroUqI/7KBHFmZ9Swl5YwEwXGcrjGQIswOcRUmut4SkCRFxlqQh+FUOL/7fOn2CJ0A1IRLJZP4UK7M9Pn9FYBeDN8lv+rVcKarssroBek6Lmh0PiX1p+kz3PmX+E2WCwq8gKVvyigt9HhCbL3o4EVw2xpWqfj1FiiZ+TkNe30gLvAYw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PA4PR04MB7790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(136003)(366004)(376002)(39860400002)(230922051799003)(451199024)(1800799009)(186009)(83380400001)(31686004)(5660300002)(66476007)(66556008)(41300700001)(66946007)(4326008)(6486002)(7416002)(478600001)(316002)(2906002)(86362001)(38100700002)(6666004)(31696002)(8676002)(8936002)(2616005)(6506007)(36756003)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dkltcHBQNVc0dFFiVWdKQ1BHbWU2TjNEWnJHb093aE02TnVZekhDKzJLTTdI?=
 =?utf-8?B?U2lJYVVBZkhobk4zcVUvMlZzOVAyQzBHbjlTWjJQSXUwN2psVnRvYnBabkV0?=
 =?utf-8?B?L08yKzF1UFlOU1ZjZnMrc05TcFkxUEkvbURHUHJYcTY5QjlaMVNxekpTM0Mv?=
 =?utf-8?B?ZXdqaGpBMyt6ekRwZE5nbjNjbzBVTWpxZjk5anFtSWlJTlh2RU5EemxteTNn?=
 =?utf-8?B?bFlLOXJPNFR4NXpHeUorMkpLRFdLcDRQV0hwaXNHM1ZINmNxdjFDMHg4VUx5?=
 =?utf-8?B?bVhDU0JzM0MzdlR2WG5zRERxMG42TEFoc1VDZDg3R2lsb0pjdTRvUnFIRTNt?=
 =?utf-8?B?YmVJeFhhZ0RIU1BsdVRpYUJ5c004VjZINEZpeCt2ZnYrRVJEVkc5aXhpR2pQ?=
 =?utf-8?B?ODFUNURDUkd5eXBpMmJoZG9Uc3U4V2hzRy96NEhENzBDTFZ3LzhkcEFIRGFx?=
 =?utf-8?B?OXliZm0vbEJTaUlJaldOWGJkWlB0YWFva1YyYjQvVDFmKzVRblIvRkFQN0ZP?=
 =?utf-8?B?YzFVbEdJeWh4YXBOdU9OT3c2YW9UbFNnbUpFbGhjM2kwS09OTlFqd0RYc0Jm?=
 =?utf-8?B?MGJIZVhsY3lIVWdxVzRUdlFmWCtBWk1KOTV6VTdjUmlocER4VzBOS1BGTFFq?=
 =?utf-8?B?WXZlNDdEQTU0ZmpnNEpYNUlRWWh6ZG5peC9wMUFDMjFnWHQraTBobWNMQkVM?=
 =?utf-8?B?UlBBbkgzT3lVVDh5eDJyNVU1Snd1RnpIWXVwQ3gyQXNROEpBSU4zck5NTDZR?=
 =?utf-8?B?N1pUbHlhVThmUWJSR2ZlUWJOTnB5RkRBOFl3WU5rYThwR2JiWTR3RFIyMFE4?=
 =?utf-8?B?QnNwUGdDREk2ZUQzWnFWR3NhWm9kbWE0MDY4V1FmWmR4WjlSMGRDbXRJaWVy?=
 =?utf-8?B?UXZRalFYYk9HcXF4WlRRWG5LdUNJdlBwb2JFK2ZITzlPOVZCOUZiSUN3NVVt?=
 =?utf-8?B?RkxJNTVBa3Q2OS9tL1FLL2xFTnZqOXBQNTQ0Y0FWT2F3MmlZSTgwejNnUVdW?=
 =?utf-8?B?RWRwcjJ2eGpTa2llWXdNRWM0QjF0aGNrRFl5a3o1MWpCTy9id2IybFpGZ0pi?=
 =?utf-8?B?RXVQeGNSY1lWMFRRZ210MUhnbGV3bUszc25iMjdSTWZ1WTVrNmFxTnRCS2t5?=
 =?utf-8?B?MGJnRk04aG9jV3ZEOFVDN0dBM21LakpHQUtFSUZYN1NFcTRSUWpDcldZL0w1?=
 =?utf-8?B?MW1UaTVTM3Yxc3B4K1JDaXpkOTZmZzA3R2c4bkxuVm55YmpyRmg5aHJIUFJN?=
 =?utf-8?B?Vk5SSGg5UHlaL1Y0bHY3QUdKVTRpbVIvZHg3cnF6T3hwU2dQTXZjb3lvdllH?=
 =?utf-8?B?UElvdUNlQWorVzN0SHZGc1Vld1VkR3U1bXFRRzA2WWJYZElvVTFoSk9kUjdX?=
 =?utf-8?B?aE1weWNrTXhKN05WKzBITysweDF1ZUZuUlM2VEtzeHhqTTBaSFFBTGFpYW1I?=
 =?utf-8?B?d2FSaDBESDBVOThhWXIrOTB3YU1lN29nZFZiZTFtT2hqTWI4MzRmVWNtSDhF?=
 =?utf-8?B?aGpzVU55NmRJYlVzMmhkdUY2OXh4RkNGMUJBRGFCSXg0MTRnSGJTZzlQaWFT?=
 =?utf-8?B?cWdsNXlWQkx0SmZzaVA2UTNmckkwNDZoYXoyejB6aGl6b2F0Nml2a0tmRHFG?=
 =?utf-8?B?SXVoRThKMjRiZTA2NmxhOHBIdysxaEZMM3pSNi9XK3F6VDg0YWtBMzdqYzls?=
 =?utf-8?B?NnVWTnB0eXNXVkE2V1dxTisxcFVkN0FxcEkrZFFaZkpQdklUaGNNZDI2Yk1j?=
 =?utf-8?B?SUNUWGhrZ3ZQOXdjdk11QTFVK1REbnBYYmpxNUxqU3ZtUlFtMW00RHV4Z0xT?=
 =?utf-8?B?cDF3YVNXVUNUOGY0NElTTTVwYTR1SmV1RkJrdWRhUnBLQUh0bC9hTlQ2UUZp?=
 =?utf-8?B?d2NkRlVDWEZQRHVSdUFZTnBUWU1XSGtlQmJGaVVvcWtvRUYvUi8vZHVPOCtz?=
 =?utf-8?B?UGpzYmJZbEtIM25nS3ZzN1gvNzloWTlCcTNra1NVRGx3U1h1RXFIY29wYTFW?=
 =?utf-8?B?b1d5a04xUEhndEliSk1CVmhudUZ0NGt4ajNTWE9GenVUWE5MYlR2OWRFZGw0?=
 =?utf-8?B?eU90ZnlCc2xvRlpoRUwwaFY3anpHSUhuZVVDOFNFanVYMHp1QVFQRUFzMUQ4?=
 =?utf-8?B?ZjZRWFNLK0RhN05aTUJTV0lDcjF2QlJhTGxTT0wrRnBhYmM5Qnd6MnZrNEFx?=
 =?utf-8?Q?jbAeNkLMfloYBTj4wqmF3Ql9JKkm4nQdxLEbNxuUnYAs?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 61b92aee-8ee6-488e-04d1-08dbbe681ca8
X-MS-Exchange-CrossTenant-AuthSource: PA4PR04MB7790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 08:10:57.1043
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: fQQtphp/I8e249xxRsoJ1ChPtcaMKCw4h8sW1UCNb4HN53zVtTsdbziEYYiHhNSUdT7OUsfbM9whycS58j6DCQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7308



On 23.09.23 г. 12:41 ч., Xin Li wrote:
> Intel VT-x classifies events into eight different types, which is
> inherited by FRED for event identification. As such, event type
> becomes a common x86 concept, and should be defined in a common x86
> header.
> 
> Add event type macros to <asm/trapnr.h>, and use it in <asm/vmx.h>.
> 
> Suggested-by: H. Peter Anvin (Intel) <hpa@zytor.com>
> Tested-by: Shan Kang <shan.kang@intel.com>
> Signed-off-by: Xin Li <xin3.li@intel.com>
> ---
> 
> Changes since v10:
> * A few comment fixes and improvements (Andrew Cooper).
> ---
>   arch/x86/include/asm/trapnr.h | 12 ++++++++++++
>   arch/x86/include/asm/vmx.h    | 17 +++++++++--------
>   2 files changed, 21 insertions(+), 8 deletions(-)
> 
> diff --git a/arch/x86/include/asm/trapnr.h b/arch/x86/include/asm/trapnr.h
> index f5d2325aa0b7..8d1154cdf787 100644
> --- a/arch/x86/include/asm/trapnr.h
> +++ b/arch/x86/include/asm/trapnr.h
> @@ -2,6 +2,18 @@
>   #ifndef _ASM_X86_TRAPNR_H
>   #define _ASM_X86_TRAPNR_H
>   
> +/*
> + * Event type codes used by FRED, Intel VT-x and AMD SVM
> + */
> +#define EVENT_TYPE_EXTINT	0	// External interrupt
> +#define EVENT_TYPE_RESERVED	1
> +#define EVENT_TYPE_NMI		2	// NMI
> +#define EVENT_TYPE_HWEXC	3	// Hardware originated traps, exceptions
> +#define EVENT_TYPE_SWINT	4	// INT n
> +#define EVENT_TYPE_PRIV_SWEXC	5	// INT1
> +#define EVENT_TYPE_SWEXC	6	// INTO, INT3

nit: This turned into INTO (Oh) rather than INT0( zero) in v11

<nit>


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 08:37:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 08:37:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608359.946783 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql3Yo-0001oc-T8; Tue, 26 Sep 2023 08:36:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608359.946783; Tue, 26 Sep 2023 08:36:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql3Yo-0001oV-QV; Tue, 26 Sep 2023 08:36:50 +0000
Received: by outflank-mailman (input) for mailman id 608359;
 Tue, 26 Sep 2023 08:36:49 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zadu=FK=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1ql3Yn-0001oP-D2
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 08:36:49 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on2061d.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::61d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d4112736-5c47-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 10:36:47 +0200 (CEST)
Received: from BL1PR13CA0345.namprd13.prod.outlook.com (2603:10b6:208:2c6::20)
 by CH0PR12MB5107.namprd12.prod.outlook.com (2603:10b6:610:be::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 08:36:42 +0000
Received: from BL02EPF0001A104.namprd05.prod.outlook.com
 (2603:10b6:208:2c6:cafe::a7) by BL1PR13CA0345.outlook.office365.com
 (2603:10b6:208:2c6::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.20 via Frontend
 Transport; Tue, 26 Sep 2023 08:36:42 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL02EPF0001A104.mail.protection.outlook.com (10.167.241.135) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Tue, 26 Sep 2023 08:36:42 +0000
Received: from SATLEXMB06.amd.com (10.181.40.147) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 26 Sep
 2023 03:36:40 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB06.amd.com
 (10.181.40.147) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 26 Sep
 2023 03:36:39 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 26 Sep 2023 03:36:05 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d4112736-5c47-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=dtdKHhKF+NqiBXH0d/U0R6JEy+l+4hYV+ckw+UXU71mqkIRi75tUo0ffUVePgDXOFPsGhadep2XQ3oqbEQznnC5VG59/+b8nDPiVKbjRWe90moVVwdmouZa8Abo929CDzP+C/CEpgRJGEboHpenZ15X/9RKLW/teOYCywwMBHqbTeDdKu5iirys2tj45/TBIXz2s2ABBxo6Fe28UC07R3oyo61DPGrnc6XK0C7oYaoOSdQrGHFtcXdzNEZ31hFdJPhN7eJYZNPziFYhwvqKxu211f4yqqZ9w3kKG3U4irfoESEHT7GIc9X8NjGar13JDrDH0a0FgMaOthb2lydY2PA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OJDLhCR314p+O+W8iM1wkVF4IyFJUY+coostCiKCla8=;
 b=UATuKEJmIwml4zLOkCdQoBIdqtZqd6BBbA4VcoGTLiYZfryifCapSZQvNQDh+MBkFLfbHNV3ycpqeUhvtmUVA2kHGyzdQWqoZ0MvN+8XN4c1uw6bAaCS0VBzpwnTfHZ4Ix5q6Jw70oN4TNTQSPWtjCKyhlcoD/Yg75exYwDyqLkvKRZibsftt+7XzA8e4SmW/MzDucMnyqsgE8oBYHtdVfnVolFB/vuhKMPeo9SbAi9XVfRHI5Igen3sb7bFXg2F+sEdB9mCBHhRNPhJIKb3T8opW7ZqAg4dUjG2/IDBHx1JQSOBSMTHFy7yd5akTYpkeuWFdu0bgV29jTeisQSkUg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=linaro.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OJDLhCR314p+O+W8iM1wkVF4IyFJUY+coostCiKCla8=;
 b=yim16/PZWnG9DzfKZOe5Etx2tmnzgP8W2j3GLvd+IkJgVahC81QO2td1fFofscWWOAHUSaxBTXngZeGJaLL+G6ydig2d3Yd+rNy+T/hL87ClMdvt+SXkIdsWSF0zT0SaaVB+krdjR+kUIUG40oJU/M27KtTHZY8jv9G1PUo+QxY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <b0d2494a-8223-a101-5d10-f3803629f2f3@amd.com>
Date: Tue, 26 Sep 2023 10:36:04 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] xen/arm: Skip memory nodes if not enabled
Content-Language: en-US
To: Leo Yan <leo.yan@linaro.org>, <xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
	<julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, "Volodymyr
 Babchuk" <Volodymyr_Babchuk@epam.com>
References: <20230926053333.180811-1-leo.yan@linaro.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20230926053333.180811-1-leo.yan@linaro.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL02EPF0001A104:EE_|CH0PR12MB5107:EE_
X-MS-Office365-Filtering-Correlation-Id: 81ec2808-9a52-404b-322d-08dbbe6bb5c9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ZfaVP7/ygXMRCgjovH38ip5wFXz5WZ2C1nd/s/Dy7aEaWggGEb2t5ss5ZAom0idN0MUdQ0ChnMSDU5l0YgCWFgZ2biAEUbZZR/YhCUV+vZ5SCCRBgfzWJiqRst7DkUoHu0GxETzCOUg5LRfycIBqg286GEMNrtBoflP9lQGBaxGfXJXTScF50hqlncBygC/Vi5SXmjUcloXogI34ENO4exQ9T2sSdAOwgXoLB2a8/Ki2/IR5v7LU2vB7zm0hzTJvoxrpEUB/CnIbACGaEY3PxrIfmPpnhCGhKHNZ7CQbwrdU4+bzojKmr2CEtw7tWH7QvAZEa0CwybiKUNteGBTXqPPumjQQgZ3WM1c5UGSvIFVIgzwVipgfqMoKgnVl+ZJBrNWA8F02Eyw6Xz3kAV6jehLmW+MogZpgZUShluK3nFStEn3P7IKDalA46CxrOnlW7bxjt/2uwxVxawvJuSCJTWZis+/pQX4ue0W4g/mo249/rsp+btovFqpnad2Aib/huEL42WKJsu/t7AyEW/uex5Ukg36j5IY9sjwfeYJ+ivx2V/8ut8uZAoVflK4jh8p+a/eIj1AAS3W8yeuexackoFgOTdpg5jCl0OqjnHQIJg5QYryGtPT4n0KeTdlbVTF5ENSgH9lrOz00iPL5DTIZgZNLYneRloIOiafKhSlQOo+c8O+Pudr/rJkFOifYoHZA2IDOEXVpL9jNrLwkztxQDYy3P1wjP2OzRNSNyVqk/r/blCH7CyioUqEEZ+VJ7/0xAYd2oiUOqoozcIJhARoQ7CfM5a2aFIBt00o1PUlJ/BHALVJgz2XBkf2k5Vm0WQPV
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(346002)(136003)(39860400002)(376002)(230922051799003)(1800799009)(186009)(82310400011)(451199024)(40470700004)(46966006)(36840700001)(31696002)(86362001)(36756003)(31686004)(40480700001)(478600001)(54906003)(336012)(4326008)(426003)(53546011)(110136005)(70206006)(70586007)(316002)(41300700001)(16576012)(8936002)(5660300002)(8676002)(44832011)(26005)(2616005)(47076005)(2906002)(40460700003)(356005)(82740400003)(81166007)(36860700001)(83380400001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 08:36:42.3228
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 81ec2808-9a52-404b-322d-08dbbe6bb5c9
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL02EPF0001A104.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB5107

Hello,

On 26/09/2023 07:33, Leo Yan wrote:
> 
> 
> During the Linux kernel booting, an error is reported by the Xen
> hypervisor:
> 
>   (XEN) arch/arm/p2m.c:2202: d0v0: Failing to acquire the MFN 0x1a02dc
> 
> The kernel attempts to use an invalid memory frame number, which can be
> converted to: 0x1a02dc << PAGE_SHIFT, resulting in 0x1_a02d_c000.
> 
> The invalid memory frame falls into a reserved memory node, which is
> defined in the device tree as below:
> 
>   reserved-memory {
>           #address-cells = <0x02>;
>           #size-cells = <0x02>;
>           ranges;
> 
>           ...
> 
>           ethosn_reserved {
>                   compatible = "shared-dma-pool";
>                   reg = <0x01 0xa0000000 0x00 0x20000000>;
>                   status = "disabled";
>                   no-map;
>           };
> 
>           ...
>   };
> 
> Xen excludes all reserved memory regions from the frame management
> through the dt_unreserved_regions() function. On the other hand, the
> reserved memory nodes are passed to the Linux kernel. However, the Linux
> kernel ignores the 'ethosn_reserved' node since its status is
> "disabled". This leads to the Linux kernel to allocate pages from the
> reserved memory range.
> 
> As a result, when the kernel passes the data structure residing in the
> frame 0x1_a02d_c000 in the Xen hypervisor, the hypervisor detects that
> it misses to manage the frame and reports the error.
> 
> Essentially, this issue is caused by the Xen hypervisor which misses to
> handle the status for the memory nodes (for both the normal memory nodes
> and the reserved memory nodes) and transfers them to the Linux kernel.
> 
> This patch introduces a function memory_node_is_available(). If it
> detects a memory node is not enabled, the hypervisor will not add the
> memory region into the memory lists. In the end, this avoids to generate
> the memory nodes from the memory lists sent to the kernel and the kernel
> cannot use the disabled memory nodes any longer.

Interesting. So FWICS, we have 2 issues that have a common ground:
1) If the reserved memory node has a status "disabled", it implies that this region
is no longer reserved and can be used which is not handled today by Xen and leads
to the above mentioned problem.

2) If the memory node has a status "disabled" it implies that it should not be used
which is not the case in current Xen. This means that at the moment, Xen would try
to use such a memory region which is incorrect.

I think the commit msg should be more generic and focus on these two issues.
Summary:
Xen does not handle the status property of memory nodes and ends up using them.
Xen does not handle the status property of reserved memory nodes. If status is disabled
it means the reserved region shall no longer be treated as reserved. Xen passes the reserved
memory nodes untouched to dom0 fdt and creates a memory node to cover reserved regions.
Disabled reserved memory nodes are ignored by the guest which leaves us with the exposed
memory nodes. Guest can access such a region but it is excluded from the page management in Xen
which results in Xen being unable to obtain the corresponding MFN.

> 
> Signed-off-by: Leo Yan <leo.yan@linaro.org>
> ---
>  xen/arch/arm/bootfdt.c | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
> index 2673ad17a1..b46dde06a9 100644
> --- a/xen/arch/arm/bootfdt.c
> +++ b/xen/arch/arm/bootfdt.c
> @@ -206,11 +206,27 @@ int __init device_tree_for_each_node(const void *fdt, int node,
>      return 0;
>  }
> 
> +static bool __init memory_node_is_available(const void *fdt, unsigned long node)
This function is not strictly related to memory node so it would be better to call it e.g. device_tree_node_is_available.
This way it can be used in the future for other nodes if needed. Also, I would move it somewhere near the top of the file
next to other helpers.
Also, node should be of type 'int'


> +{
> +    const char *status = fdt_getprop(fdt, node, "status", NULL);
> +
> +    if (!status)
white spaces between brackets and condition
if ( !status )

> +        return true;
> +
> +    if (!strcmp(status, "ok") || !strcmp(status, "okay"))
white spaces between brackets and condition
if ( !strcmp(status, "ok") || !strcmp(status, "okay") )

> +        return true;
> +
> +    return false;
> +}
> +
>  static int __init process_memory_node(const void *fdt, int node,
>                                        const char *name, int depth,
>                                        u32 address_cells, u32 size_cells,
>                                        void *data)
>  {
> +    if (!memory_node_is_available(fdt, node))
> +        return 0;
I would move this check to device_tree_get_meminfo()
> +
>      return device_tree_get_meminfo(fdt, node, "reg", address_cells, size_cells,
>                                     data, MEMBANK_DEFAULT);
>  }
> --
> 2.39.2
> 
> 

Also, I think it would be nice to add ASSERT(bootinfo.mem.nr_banks); e.g. in boot_fdt_info().
Otherwise the panic from Xen when there is no memory bank:
The frametable cannot cover the physical region ...
is not really meaningful for normal users.

This is just my suggestion (@Julien ?)

~Michal



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 08:43:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 08:43:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608364.946793 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql3fI-0004KB-J8; Tue, 26 Sep 2023 08:43:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608364.946793; Tue, 26 Sep 2023 08:43:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql3fI-0004K4-GN; Tue, 26 Sep 2023 08:43:32 +0000
Received: by outflank-mailman (input) for mailman id 608364;
 Tue, 26 Sep 2023 08:43:31 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql3fH-0004Ju-II; Tue, 26 Sep 2023 08:43:31 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql3fH-0003K0-BU; Tue, 26 Sep 2023 08:43:31 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql3fG-0000qK-Qc; Tue, 26 Sep 2023 08:43:30 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1ql3fG-0002mk-QA; Tue, 26 Sep 2023 08:43:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=RKodHyxV2+ZpPHPZ8tCiqm6QjhL7P2GlEa626++2VMY=; b=k4n3ly/cD3JpCuEdQTxeZvD1ju
	RyVUexI/O9xXNcrgIGMNDSFMqz2WYA98rdGB/jHfK21dcXkopw4MR0Pc/1WrzNJHhludv7QInU6qS
	txJRquFl5DeC8nQA5XJ/kuoYXsRNwOOFmjHfQXN+M3x8YXS7Psd4YtvsYhkA6wXnoHCc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183169-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183169: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl-arndale:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-i386-livepatch:xen-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    xen-unstable:test-amd64-i386-xl-xsm:xen-install:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=d6351a10c80fcbbf2b5996d351b7181ba17b3b32
X-Osstest-Versions-That:
    xen=88a9501a848aade858a3bbda75f20cdf7c3c2f9a
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 26 Sep 2023 08:43:30 +0000

flight 183169 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183169/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-arndale   8 xen-boot         fail in 183161 pass in 183169
 test-amd64-i386-livepatch     7 xen-install                fail pass in 183161
 test-armhf-armhf-xl-credit1  14 guest-start                fail pass in 183161

Tests which did not succeed, but are not blocking:
 test-amd64-i386-xl-xsm        7 xen-install         fail in 183161 like 183150
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 183161 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 183161 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183150
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183150
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183150
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183150
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183150
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183150
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183150
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183150
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183150
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183150
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183150
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183150
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  d6351a10c80fcbbf2b5996d351b7181ba17b3b32
baseline version:
 xen                  88a9501a848aade858a3bbda75f20cdf7c3c2f9a

Last test of basis   183150  2023-09-25 01:53:36 Z    1 days
Testing same since   183161  2023-09-25 13:12:25 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alistair Francis <alistair.francis@wdc.com>
  Federico Serafini <federico.serafini@bugseng.com>
  Jan Beulich <jbeulich@suse.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    fail    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   88a9501a84..d6351a10c8  d6351a10c80fcbbf2b5996d351b7181ba17b3b32 -> master


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 09:26:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 09:26:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608376.946818 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql4L0-0005wG-7d; Tue, 26 Sep 2023 09:26:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608376.946818; Tue, 26 Sep 2023 09:26:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql4L0-0005w9-4W; Tue, 26 Sep 2023 09:26:38 +0000
Received: by outflank-mailman (input) for mailman id 608376;
 Tue, 26 Sep 2023 09:26:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=d5Ia=FK=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1ql4Kx-0005w0-Uf
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 09:26:36 +0000
Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com
 [2a00:1450:4864:20::42f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c823047d-5c4e-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 11:26:33 +0200 (CEST)
Received: by mail-wr1-x42f.google.com with SMTP id
 ffacd0b85a97d-3214cdb4b27so7798259f8f.1
 for <xen-devel@lists.xenproject.org>; Tue, 26 Sep 2023 02:26:33 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 o5-20020adfeac5000000b0031984b370f2sm14100219wrn.47.2023.09.26.02.26.31
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 26 Sep 2023 02:26:32 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c823047d-5c4e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695720392; x=1696325192; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=kmbdPGVs/W/K0GplugB5QvWG9QUiEtGu9P+FlblHW9s=;
        b=P3reEDncyFxBdVeNQj2c2flfLcniW9w/mg++5y8X6HsDO9L7ok5rQzpVjnkVw0GmxF
         vQAtrTMece4ZlttHD1EBlWoD0IVLZaPyL7TtsxRrUQjXiJpK5R7oN11vvb5YAsTUXz1X
         iTMgvrXJKzpOEZlGYTYRM11oeqH3MrnqDHcSA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695720392; x=1696325192;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=kmbdPGVs/W/K0GplugB5QvWG9QUiEtGu9P+FlblHW9s=;
        b=bb4zGKOdzpQeSnS1yZAA2JAIJ3FwkpzmrbiEtekUoMyOa2c7gejdmp4tQg8BNyteFY
         1BvJWwRHNI++djJGcLmdMKCifgzQDEtV5OfFCNnNaN5t8PuIRsrM6ThJWC2jETJQL5+j
         oJqATXlYSmVlvtcclaWeKpSPWHgLCtlhcJQjtR7ATl+ltxZDjKoOYLC4Wi4E+T8l1V7Y
         t75dF6CLH85SXWCg/5QYVFGCU4i05sm7/C2ZdQHx2R8XOwRT+tikNO3dhL4NqMoj/RWv
         B/gcB/MopycObL2P2IJwjjoXrw6T48Gzj6XiBY7q5AUUihBszamI5wiL5bm17rKUdq4V
         nYgw==
X-Gm-Message-State: AOJu0Yxh/GiQBZJQadRWXOlUhH7lAVPWZ8d+vdaZ74tzwVLmfLMHaQAi
	y5rmZjFBEt/Iy3hchmInWJ0Dzw==
X-Google-Smtp-Source: AGHT+IGgfHuuM6+TDVmgDCR6/9jB/xVFtYMos7qI/oRqScsqgBiOvBrkuPDQ8QUbO3jvp1Bf0T5msA==
X-Received: by 2002:a5d:44ca:0:b0:31f:fdd8:7d56 with SMTP id z10-20020a5d44ca000000b0031ffdd87d56mr8037098wrr.12.1695720392647;
        Tue, 26 Sep 2023 02:26:32 -0700 (PDT)
Message-ID: <6e0064bc-65c1-24f5-c29d-c1d1c027e2d3@citrix.com>
Date: Tue, 26 Sep 2023 10:26:31 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: andrew.cooper3@citrix.com
Subject: Re: [PATCH v11 05/37] x86/trapnr: Add event type macros to
 <asm/trapnr.h>
Content-Language: en-GB
To: Nikolay Borisov <nik.borisov@suse.com>, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
 dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org,
 pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
 jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
 jiangshanlai@gmail.com
References: <20230923094212.26520-1-xin3.li@intel.com>
 <20230923094212.26520-6-xin3.li@intel.com>
 <7acd7bb3-0406-4fd9-8396-835bfd951d87@suse.com>
In-Reply-To: <7acd7bb3-0406-4fd9-8396-835bfd951d87@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 26/09/2023 9:10 am, Nikolay Borisov wrote:
> On 23.09.23 г. 12:41 ч., Xin Li wrote:
>> diff --git a/arch/x86/include/asm/trapnr.h
>> b/arch/x86/include/asm/trapnr.h
>> index f5d2325aa0b7..8d1154cdf787 100644
>> --- a/arch/x86/include/asm/trapnr.h
>> +++ b/arch/x86/include/asm/trapnr.h
>> @@ -2,6 +2,18 @@
>>   #ifndef _ASM_X86_TRAPNR_H
>>   #define _ASM_X86_TRAPNR_H
>>   +/*
>> + * Event type codes used by FRED, Intel VT-x and AMD SVM
>> + */
>> +#define EVENT_TYPE_EXTINT    0    // External interrupt
>> +#define EVENT_TYPE_RESERVED    1
>> +#define EVENT_TYPE_NMI        2    // NMI
>> +#define EVENT_TYPE_HWEXC    3    // Hardware originated traps,
>> exceptions
>> +#define EVENT_TYPE_SWINT    4    // INT n
>> +#define EVENT_TYPE_PRIV_SWEXC    5    // INT1
>> +#define EVENT_TYPE_SWEXC    6    // INTO, INT3
>
> nit: This turned into INTO (Oh) rather than INT0( zero) in v11

Yes, v11 corrected a bug in v10.

The INTO instruction is "INT on Overflow".  No zero involved.

INT3 is thusly named because it generates vector 3.  Similarly for INT1
although it had the unofficial name ICEBP long before INT1 got documented.

If INTO were to have a number, it would need to be 4, but it's behaviour
is conditional on the overflow flag, unlike INT3/1 which are
unconditional exceptions.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 09:52:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 09:52:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608380.946829 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql4kH-0003U6-7u; Tue, 26 Sep 2023 09:52:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608380.946829; Tue, 26 Sep 2023 09:52:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql4kH-0003Tz-4i; Tue, 26 Sep 2023 09:52:45 +0000
Received: by outflank-mailman (input) for mailman id 608380;
 Tue, 26 Sep 2023 09:52:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Hi6D=FK=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1ql4kG-0003Tq-Ey
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 09:52:44 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20604.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::604])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6ed4df70-5c52-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 11:52:41 +0200 (CEST)
Received: from AS8P250CA0014.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:330::19)
 by PAWPR08MB9782.eurprd08.prod.outlook.com (2603:10a6:102:2e2::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.25; Tue, 26 Sep
 2023 09:52:38 +0000
Received: from AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:330:cafe::ed) by AS8P250CA0014.outlook.office365.com
 (2603:10a6:20b:330::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Tue, 26 Sep 2023 09:52:38 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT059.mail.protection.outlook.com (100.127.140.215) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Tue, 26 Sep 2023 09:52:38 +0000
Received: ("Tessian outbound d084e965c4eb:v175");
 Tue, 26 Sep 2023 09:52:38 +0000
Received: from e355761c3863.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 8D0ACDA4-253A-4A67-8424-34A6CC3BD68E.1; 
 Tue, 26 Sep 2023 09:52:31 +0000
Received: from EUR03-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e355761c3863.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 26 Sep 2023 09:52:31 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by DB4PR08MB9861.eurprd08.prod.outlook.com (2603:10a6:10:3f2::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 09:52:28 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404%4]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 09:52:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6ed4df70-5c52-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qDJmPYkWBxLI7LMIuGpUjNKZoPx2gSXZLKZHtMWoivo=;
 b=nvxFTN5oWXm2rJo+v5CiDcCrJUAc+ick9cEIAYwEQP/N2/w3z3n2RqFBqNVn1N8RAXygVCW6bdyZMghBavpKwvDT9w2hmBUGLOO36Nlgv3RajFAVShXDq5uBt3AozvEiqVT/k0BcdITt2LfxcIMMqss6ZeNC3u2lLrgUYpl1iXg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 57d88e91e58ad98d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jJk9QTi0NNZVZGgr8a9LITcm+BaD3KYllGr90YhdIoPLTIB14QRiu6n1+lGaDaJMlpaRi73YbQ2Ree9S29h6uWs3A9MojunWJPnehP1TRnp88sMO034eYrAJ47njTE2LLsLUNshR/xuwV1rKkdc2kSXw47hjbu46oq2n5CBW9iudGi681uBkYD8HBjiJz53Ajq7bwk+rThVBldFdRB0Nbd2VzAUWxFkrFkUFuTSQ5Jv420iXvFw3jYoMt5BH6WNEHwCcPScg1lIWS37VdmH17BrPtEGPSLmkfhx8AV4s530Aza6tld3ETILD5KUhMqmteN33fxhbctmpfYSMMlwV1w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qDJmPYkWBxLI7LMIuGpUjNKZoPx2gSXZLKZHtMWoivo=;
 b=HQj0wYDpAhris1FJuw+Z8hTZB1eklyZlEEsFgQG3NHlIxYj+h2X4e8fybUAyMQgEKc0XQqqKkZUYsjQRvaiQc6nNF19AYtOqs8KDQP95YzF4nDd0RQV+ccCSR7SGFVjtLiRRLZ6d+eTq2yHzhYHUGzFoR8bsxDgWlfIIuu5JF446n3dvx4qTXEOk2Iziq+ROusR6SLyjJ7G32hZ1wqJ00+ckAt1aL5hrYsUi86neOTsOTo1wsIc6ig9y66E+y8cMFQXAEjbYingxUNNp+MMMtRupzYwxK9Up6C1AKkYBCOsojb1pDqaP5928WHGR5CCIZGAQM1KeOTiWlxStD53F2w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qDJmPYkWBxLI7LMIuGpUjNKZoPx2gSXZLKZHtMWoivo=;
 b=nvxFTN5oWXm2rJo+v5CiDcCrJUAc+ick9cEIAYwEQP/N2/w3z3n2RqFBqNVn1N8RAXygVCW6bdyZMghBavpKwvDT9w2hmBUGLOO36Nlgv3RajFAVShXDq5uBt3AozvEiqVT/k0BcdITt2LfxcIMMqss6ZeNC3u2lLrgUYpl1iXg=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: "leo.yan@linaro.org" <leo.yan@linaro.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: Skip memory nodes if not enabled
Thread-Topic: [PATCH] xen/arm: Skip memory nodes if not enabled
Thread-Index: AQHZ8DsUAeh4H14sIUq1QR77iDXfDrAs3c8A
Date: Tue, 26 Sep 2023 09:52:28 +0000
Message-ID: <BDC53ABB-AC26-45AF-A8FC-E12C83209400@arm.com>
References: <20230926053333.180811-1-leo.yan@linaro.org>
In-Reply-To: <20230926053333.180811-1-leo.yan@linaro.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|DB4PR08MB9861:EE_|AM7EUR03FT059:EE_|PAWPR08MB9782:EE_
X-MS-Office365-Filtering-Correlation-Id: 1435b5db-c7e2-4ca9-9e1e-08dbbe765160
x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 vVJobgF80hVkr0N9sGaa+l3JeX99gMKQbrP7onUZwrZG5ayoVr6WoEiicl52qHZ9p2NK2d2RNgQ/oMJTrXdqpSQgefeMtjloGyBZBBgjiG+YhMYawes7AVSuzzWCYyYTeSw6V1sRhpRhHftXdBo2eDj4PwiLk7hfEjjyWT3bZ8NU1LaONmAexO/uRLfBsvgQkXWrw0P7C/uviLM+D1rsTPxHwT0HLkeevG//fY4e1Uz+TsF4afWTdyd5TwCniSL6DIj/UOIDj4YuOoUl3UdBYWt/AxvWcxzl8BlYz8FGYYwJkCwYS/sNeJOtYnIGjBercmmdbPIaH2QHBzQq7iweI+TKygtsuw8ZrssLmwEI67g7/+ME3ZcRp/UkEJd/BviEJruOjdnVLhV1U9+hOhlWdCw7sR2iOLFAgQivUp8cDC17iO31OvL0prjqKp+p30Q4Ya+WrnzCyFLJTWzfgLESuFVKuGsnf7ZD+nWJs3h66n5QLF95IyZWtL8omg+j6Nirmy6rrPG2JNcENjmO7c5glJE8J9k3HIpi9dU9z/afaFNGSq+LX/mF7efkxqiDwKAsa/fJAzPjfgd6R7PyLB/xF6U9Je7u9+E2rEnyJbIbemOslhCp3dE0S2ghB/ObtIi33AVHikNy5H5qZFTUfm4jGA==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(346002)(136003)(39860400002)(376002)(230922051799003)(186009)(1800799009)(451199024)(122000001)(38100700002)(38070700005)(33656002)(36756003)(86362001)(66446008)(6506007)(6512007)(6486002)(478600001)(53546011)(2906002)(5660300002)(8936002)(41300700001)(91956017)(8676002)(4326008)(71200400001)(83380400001)(76116006)(2616005)(64756008)(66556008)(66476007)(66946007)(316002)(6916009)(54906003)(26005)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <ADB85B13961C0F4C82B97FAC72CC8422@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR08MB9861
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	a2b666fe-6c6f-4e4a-3057-08dbbe764ba4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	y4T6MIBQRpR3QJPJEqstbY6YqdBC+qs5vVfug55j9VH3Hl1ReoV+Lo/QDywsKP1KEbcXv/1ha361niU+txsicM0l9FzVL0wLf8icSf3y/v23lVQSmVJOJmmlijEZ0eJbFPxS0EAKlMKHGi6JWumhGmbFEGr8Pp8VFwFNuDThdAZZ8K8k4Rz9C4ACrbK15UsSuTYX8IriyCBCOWpnbLFpHiNS0XIiC244HKRDpO5KXoI3h8is6rSkUWKTFyWvXnBpizG1nTfFSBoXVr2Hgj8HvhX+OH743V+SZ/osie4f7+wBUn7Lsv551jQzak4BzXiXygcYC+GmbojHzYESbDVi/GJV2PRvkFCWHjU+kYVQLesMT2pnxpPbh+1VghYmeatwJwF6CICiQZTI90FpVFh6AHnJExi0SRMXe3oIpzRGEFa/gMBTVpmOVWeTX9OWzn8UCeQTxDHbxTxbYeYzROHCrGBlU7DlDFBcbG712sEtDEWNok1nN4Y8pcYLQwmFVnXbFgQP2aW8lF0ysweRvcfxJys2oBm5oquFanBh3t6uSZc65cnNk5wPB/tjBF2AUYU778wSmnDlqejRAROh80cdHXkrYp6ohfAwlKOTUqjnVXHN2lAVf9XHN7FWncctNTk6vnRDBLaXY90R0/z/FrVSoBMQwLrYeDERRQVxGEL/1rJ9tfMQLC+CGWAsq4cNPgjyQ9vpqVv4kDJJOtfY5Wyl0WvNOCombbWIPNPYir8kNPUhPpk+M1H05//EnM9L+umO
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(39860400002)(346002)(396003)(376002)(230922051799003)(451199024)(82310400011)(186009)(1800799009)(40470700004)(46966006)(36840700001)(53546011)(4326008)(6862004)(8676002)(83380400001)(316002)(8936002)(5660300002)(54906003)(2906002)(6486002)(6506007)(2616005)(70586007)(70206006)(6512007)(478600001)(336012)(41300700001)(26005)(47076005)(107886003)(36860700001)(36756003)(40460700003)(82740400003)(81166007)(356005)(33656002)(86362001)(40480700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 09:52:38.3137
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1435b5db-c7e2-4ca9-9e1e-08dbbe765160
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9782

DQoNCj4gT24gMjYgU2VwIDIwMjMsIGF0IDA2OjMzLCBMZW8gWWFuIDxsZW8ueWFuQGxpbmFyby5v
cmc+IHdyb3RlOg0KPiANCj4gRHVyaW5nIHRoZSBMaW51eCBrZXJuZWwgYm9vdGluZywgYW4gZXJy
b3IgaXMgcmVwb3J0ZWQgYnkgdGhlIFhlbg0KPiBoeXBlcnZpc29yOg0KPiANCj4gIChYRU4pIGFy
Y2gvYXJtL3AybS5jOjIyMDI6IGQwdjA6IEZhaWxpbmcgdG8gYWNxdWlyZSB0aGUgTUZOIDB4MWEw
MmRjDQo+IA0KPiBUaGUga2VybmVsIGF0dGVtcHRzIHRvIHVzZSBhbiBpbnZhbGlkIG1lbW9yeSBm
cmFtZSBudW1iZXIsIHdoaWNoIGNhbiBiZQ0KPiBjb252ZXJ0ZWQgdG86IDB4MWEwMmRjIDw8IFBB
R0VfU0hJRlQsIHJlc3VsdGluZyBpbiAweDFfYTAyZF9jMDAwLg0KPiANCj4gVGhlIGludmFsaWQg
bWVtb3J5IGZyYW1lIGZhbGxzIGludG8gYSByZXNlcnZlZCBtZW1vcnkgbm9kZSwgd2hpY2ggaXMN
Cj4gZGVmaW5lZCBpbiB0aGUgZGV2aWNlIHRyZWUgYXMgYmVsb3c6DQo+IA0KPiAgcmVzZXJ2ZWQt
bWVtb3J5IHsNCj4gICAgICAgICAgI2FkZHJlc3MtY2VsbHMgPSA8MHgwMj47DQo+ICAgICAgICAg
ICNzaXplLWNlbGxzID0gPDB4MDI+Ow0KPiAgICAgICAgICByYW5nZXM7DQo+IA0KPiAgLi4uDQo+
IA0KPiAgICAgICAgICBldGhvc25fcmVzZXJ2ZWQgew0KPiAgICAgICAgICAgICAgICAgIGNvbXBh
dGlibGUgPSAic2hhcmVkLWRtYS1wb29sIjsNCj4gICAgICAgICAgICAgICAgICByZWcgPSA8MHgw
MSAweGEwMDAwMDAwIDB4MDAgMHgyMDAwMDAwMD47DQo+ICAgICAgICAgICAgICAgICAgc3RhdHVz
ID0gImRpc2FibGVkIjsNCj4gICAgICAgICAgICAgICAgICBuby1tYXA7DQo+ICAgICAgICAgIH07
DQo+IA0KPiAgLi4uDQo+ICB9Ow0KPiANCj4gWGVuIGV4Y2x1ZGVzIGFsbCByZXNlcnZlZCBtZW1v
cnkgcmVnaW9ucyBmcm9tIHRoZSBmcmFtZSBtYW5hZ2VtZW50DQo+IHRocm91Z2ggdGhlIGR0X3Vu
cmVzZXJ2ZWRfcmVnaW9ucygpIGZ1bmN0aW9uLiBPbiB0aGUgb3RoZXIgaGFuZCwgdGhlDQo+IHJl
c2VydmVkIG1lbW9yeSBub2RlcyBhcmUgcGFzc2VkIHRvIHRoZSBMaW51eCBrZXJuZWwuIEhvd2V2
ZXIsIHRoZSBMaW51eA0KPiBrZXJuZWwgaWdub3JlcyB0aGUgJ2V0aG9zbl9yZXNlcnZlZCcgbm9k
ZSBzaW5jZSBpdHMgc3RhdHVzIGlzDQo+ICJkaXNhYmxlZCIuIFRoaXMgbGVhZHMgdG8gdGhlIExp
bnV4IGtlcm5lbCB0byBhbGxvY2F0ZSBwYWdlcyBmcm9tIHRoZQ0KPiByZXNlcnZlZCBtZW1vcnkg
cmFuZ2UuDQoNCkkgbWlnaHQgYmUgd3JvbmcsIGJ1dCByZWFkaW5nIHRoZSBzcGVjaWZpY2F0aW9u
cyBzZWVtcyB0aGF0IOKAnHN0YXR1c+KAnSBpcyBub3QgYSBwcm9wZXJ0eQ0Kb2YgdGhlIGNoaWxk
IG5vZGVzIG9mIC9yZXNlcnZlZC1tZW1vcnksIHNvIEnigJltIG5vdCBzdXJlIFhlbiBzaG91bGQg
ZG8gc29tZXRoaW5nIGFib3V0IGl0Lg0KDQpJZiBpdCBpcyB0aGUgY2FzZSwgaXTigJlzIHBvc3Np
YmxlIHRoYXQgdGhlIGRldmljZSB0cmVlIGlzIHdyb25nIGluIHRoaXMgY2FzZS4NCg0KDQo=


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 09:59:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 09:59:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608385.946838 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql4qY-0004VB-SS; Tue, 26 Sep 2023 09:59:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608385.946838; Tue, 26 Sep 2023 09:59:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql4qY-0004V4-Pt; Tue, 26 Sep 2023 09:59:14 +0000
Received: by outflank-mailman (input) for mailman id 608385;
 Tue, 26 Sep 2023 09:59:14 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql4qY-0004Uu-47; Tue, 26 Sep 2023 09:59:14 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql4qX-00052c-Vi; Tue, 26 Sep 2023 09:59:13 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql4qX-00047S-Lw; Tue, 26 Sep 2023 09:59:13 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1ql4qX-0008G0-LV; Tue, 26 Sep 2023 09:59:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=SFwngfqM87PFEQZH6+M346q3CRrF555aDu4XvvAJ9Pw=; b=bcDNQ/oT1O7tDFBq8KpzPy+t2E
	2GmBiHacLRUBt09aJ/7OlxnZbZmQ+4A0IhkhblYzudMb8a5fNk+mtJy4PzzVWLcXfb12jYbqHF0xU
	pGbXS48Zm5Wv6PaU/ykIUcEa6pT2r54tND6F0tbTNkKTz7UMs9V75+RaSmFoWixff91o=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183174-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183174: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=39f3c26e8c40e092baeb0ec4d0396498506e0a9e
X-Osstest-Versions-That:
    ovmf=c70d91442889078eb94e0abf777f74e403b72d37
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 26 Sep 2023 09:59:13 +0000

flight 183174 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183174/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 39f3c26e8c40e092baeb0ec4d0396498506e0a9e
baseline version:
 ovmf                 c70d91442889078eb94e0abf777f74e403b72d37

Last test of basis   183155  2023-09-25 08:40:51 Z    1 days
Testing same since   183174  2023-09-26 07:42:29 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  BruceX Wang <brucex.wang@intel.com>
  Brucex.Wang <brucex.wang@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   c70d914428..39f3c26e8c  39f3c26e8c40e092baeb0ec4d0396498506e0a9e -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 10:05:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 10:05:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608391.946849 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql4wQ-0006tg-HM; Tue, 26 Sep 2023 10:05:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608391.946849; Tue, 26 Sep 2023 10:05:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql4wQ-0006tZ-EW; Tue, 26 Sep 2023 10:05:18 +0000
Received: by outflank-mailman (input) for mailman id 608391;
 Tue, 26 Sep 2023 10:05:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zadu=FK=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1ql4wO-0006tR-Ve
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 10:05:17 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20606.outbound.protection.outlook.com
 [2a01:111:f400:7e89::606])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2f5934c7-5c54-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 12:05:13 +0200 (CEST)
Received: from SN1PR12CA0111.namprd12.prod.outlook.com (2603:10b6:802:21::46)
 by PH0PR12MB5483.namprd12.prod.outlook.com (2603:10b6:510:ee::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Tue, 26 Sep
 2023 10:04:56 +0000
Received: from SN1PEPF000252A3.namprd05.prod.outlook.com
 (2603:10b6:802:21:cafe::37) by SN1PR12CA0111.outlook.office365.com
 (2603:10b6:802:21::46) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Tue, 26 Sep 2023 10:04:56 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 SN1PEPF000252A3.mail.protection.outlook.com (10.167.242.10) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6792.20 via Frontend Transport; Tue, 26 Sep 2023 10:04:56 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 26 Sep
 2023 05:04:55 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 26 Sep 2023 05:04:54 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2f5934c7-5c54-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=b9gZioRJtcoUnM2ar9OsxEMjdxSipzg/x6mm/oCffQJe2cwvNhiBOuDhuXxslWUebG8/GAX1RPvJZ7rz15IQkgChhUv9J6jydnKEj9fZCeMsqmeyFuk3IteGQZ/7cT9F+z9I21SLBgGRgsr9E3LEmI0fd58b+ZrJPJneJiDubElk75uSN/6mmjUqXF664pW4GGmoHP6ffk+R6Nq2yR7P3oPmcOUoEzjUqZhfanCPteOfxUGGf1uJ4/iShcFvruDRFNS+I5MRSfzvpBqPk0laZVkKsyjC2pU5p/uP9fvtwXsali9lZWs6DVQrdkO0uDozxOxNh6zs1bQzvE/bIgZs8A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=N63SmYyPocsClgivlEL65BTZ6TVrPJ+QQhcWCXQc2Qk=;
 b=lGXSPSy7saNmbAiEFWKXIhGkVeBPJx7aJ+eJEgeSG1kv2jn/uZr1pRR+HiqX+Yxxl8ZsvaugeywZkLOnsYwrdOyMrV5IArj1Q0lP29VZM5+KsYSdwIqeuv8lUpplHobfP10YXlxn2dOSc1y/3Yp/u3hsfXHFRYzLEI32IazB+2v1zH/Lvu4TjiDNObsj8vt/V0bT3LdPbzweVKs0+OOf8De+IOYuloI8chpYkVa11QN9Esk6eDn0JUB4/gWKlDC0SkLusFw18Q3utZdBPbt13AxzVfuq0DHLNJKI7E6VsL6YBOX9kNd2yKnBLmuwj3eWYjlp38vBN7FStryXvdQXYA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=arm.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=N63SmYyPocsClgivlEL65BTZ6TVrPJ+QQhcWCXQc2Qk=;
 b=xIwdSOeGWx/TIxNgN/OzyDxR16qkvK3lMidhKnl9Ngwd6+WOavkeRn1COwrC0JCdfaWDB1GBqLuAH3KrrEZRa5FP54z3vGedehg/bBl7QE7Uutcn9J+TMceQbuoaFYkuSC5PidCdl4xR3as/Bb6K2XAg9wd1ptM1/dAeu2O7fQc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <10c01fc1-8140-c81d-8e9a-4fdce2adcaa0@amd.com>
Date: Tue, 26 Sep 2023 12:04:54 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] xen/arm: Skip memory nodes if not enabled
Content-Language: en-US
To: Luca Fancellu <Luca.Fancellu@arm.com>, "leo.yan@linaro.org"
	<leo.yan@linaro.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230926053333.180811-1-leo.yan@linaro.org>
 <BDC53ABB-AC26-45AF-A8FC-E12C83209400@arm.com>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <BDC53ABB-AC26-45AF-A8FC-E12C83209400@arm.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF000252A3:EE_|PH0PR12MB5483:EE_
X-MS-Office365-Filtering-Correlation-Id: 07f8f972-73ce-4778-19d8-08dbbe78095d
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	zRLMf/deG6AqRyuz3GlYMOChoUSE/bIPSjlmSifxhWOhwYD8+i69rZvGI693Kh6UDkebVgzlV2UFuoilZ13TU8xbPmJi9LiySNrhppA9kRyiuWKMMhQt7V1jjW+OJC4eyIEXOC4V/Hb9vu/v7q5nBNiytPbaTQMYamGrG0BVVySVsI++ffu94AlrTJjFT657y8kD2yI8v0GtJrHf2qw83V6VxUnOwW0x9xLjVz/pJz09jmvbYhpRTzVTRkRTmz6+tGLHdCArr+WFussk1L519jZN4GTLsKSZvCpsqDJlmGS+2KV3FjV7dKj35zeX6yZnRIsR2tmBvw5eCRtmeTX9rj7rTpALfGvrWy0exf4qSF7TWgMRLx0AnLPA8x5ILywwN/2ta5OaGRCEBZVd5GSVAnvXqpnDF063SD1bJvPGRLHZTIbqcQfq20OVi2Yhmv9q3gyFh/D2mTDVh/KBZWQQs9/W6h6PlDqeUFylr02piwHkNMg7Fh0pg8bia3EbektIzm13l7Yo9P/mi6GO/oq9mOo+hu4xEKqZrBTwrVXrqMnMDJ1eeG8zxl17gL7fVpKFw/BeH9dMe34qBq0lsySkkjswyBVTUWp9DIvlribQovlFZ7xxRUYTO3qVYM9IFIGAB8DyRlMKfk5ad32SV6iVJpQGnJ8WX7yvTrsX5AB4SY5s0pRVvNUu/6PaPLWDtwr3YQaqqNwJDCePKEphYPRsxhRwZ7XwYaXKhaVeAXZHz4/4TeJzaLEizrLE23Aqi2nHmuBz1t1oUojnML4+qt7YXKioPAucglpm8AhOv2uKxn43DN9e04VMDhuCaUG++FGt
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(346002)(39860400002)(396003)(230922051799003)(82310400011)(451199024)(186009)(1800799009)(40470700004)(46966006)(36840700001)(2616005)(26005)(53546011)(356005)(81166007)(36756003)(82740400003)(86362001)(31696002)(36860700001)(47076005)(40480700001)(40460700003)(426003)(336012)(83380400001)(316002)(54906003)(16576012)(70206006)(70586007)(8936002)(4326008)(8676002)(5660300002)(44832011)(41300700001)(110136005)(31686004)(2906002)(478600001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 10:04:56.4881
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 07f8f972-73ce-4778-19d8-08dbbe78095d
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF000252A3.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR12MB5483

Hi Luca,

On 26/09/2023 11:52, Luca Fancellu wrote:
> 
> 
>> On 26 Sep 2023, at 06:33, Leo Yan <leo.yan@linaro.org> wrote:
>>
>> During the Linux kernel booting, an error is reported by the Xen
>> hypervisor:
>>
>>  (XEN) arch/arm/p2m.c:2202: d0v0: Failing to acquire the MFN 0x1a02dc
>>
>> The kernel attempts to use an invalid memory frame number, which can be
>> converted to: 0x1a02dc << PAGE_SHIFT, resulting in 0x1_a02d_c000.
>>
>> The invalid memory frame falls into a reserved memory node, which is
>> defined in the device tree as below:
>>
>>  reserved-memory {
>>          #address-cells = <0x02>;
>>          #size-cells = <0x02>;
>>          ranges;
>>
>>  ...
>>
>>          ethosn_reserved {
>>                  compatible = "shared-dma-pool";
>>                  reg = <0x01 0xa0000000 0x00 0x20000000>;
>>                  status = "disabled";
>>                  no-map;
>>          };
>>
>>  ...
>>  };
>>
>> Xen excludes all reserved memory regions from the frame management
>> through the dt_unreserved_regions() function. On the other hand, the
>> reserved memory nodes are passed to the Linux kernel. However, the Linux
>> kernel ignores the 'ethosn_reserved' node since its status is
>> "disabled". This leads to the Linux kernel to allocate pages from the
>> reserved memory range.
> 
> I might be wrong, but reading the specifications seems that “status” is not a property
> of the child nodes of /reserved-memory, so I’m not sure Xen should do something about it.
Please take a look at dt documentation (v0.4) for /memory and /reserved-memory.
Under the tables listing possible properties, there is a statement:
Note: All other standard properties (Section 2.3) are allowed but are optional.

"status" is part of standard properties so it is perfectly fine for /memory or /reserved-memory
nodes to have it defined.

~Michal


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 10:11:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 10:11:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608396.946859 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql52K-0008UJ-8q; Tue, 26 Sep 2023 10:11:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608396.946859; Tue, 26 Sep 2023 10:11:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql52K-0008UC-5i; Tue, 26 Sep 2023 10:11:24 +0000
Received: by outflank-mailman (input) for mailman id 608396;
 Tue, 26 Sep 2023 10:11:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Hi6D=FK=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1ql52I-0008U6-N8
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 10:11:22 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0604.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::604])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 09e6defd-5c55-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 12:11:20 +0200 (CEST)
Received: from DUZPR01CA0219.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b4::16) by AS8PR08MB10026.eurprd08.prod.outlook.com
 (2603:10a6:20b:632::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 10:11:16 +0000
Received: from DBAEUR03FT046.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b4:cafe::16) by DUZPR01CA0219.outlook.office365.com
 (2603:10a6:10:4b4::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Tue, 26 Sep 2023 10:11:16 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT046.mail.protection.outlook.com (100.127.142.67) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Tue, 26 Sep 2023 10:11:15 +0000
Received: ("Tessian outbound 0b7d6027328f:v175");
 Tue, 26 Sep 2023 10:11:15 +0000
Received: from de3bab3c35e1.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 81059378-0BC0-4131-8BD3-D155108FBCA3.1; 
 Tue, 26 Sep 2023 10:11:05 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id de3bab3c35e1.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 26 Sep 2023 10:11:04 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by GV1PR08MB8239.eurprd08.prod.outlook.com (2603:10a6:150:5f::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Tue, 26 Sep
 2023 10:10:59 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404%4]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 10:10:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 09e6defd-5c55-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=N2b9+yGDfHE3sm9F3YWdNFtMqdATr1Ow/7EUVdL+ELg=;
 b=cptOBDtKKYJMd0OgS36eOzSry6MekltflfDHZH5cG8pON2pW25+1FfHbomCjVS9iRG1jt0gb7RnyvkpWG/11PT7CojEUJNsUmkrG+O31Ek7a8J1DNAZYf2f+boaz9ZEsRbOC1ZPULBTkCJKRsMdzmJm/39H6KcSxe55bwOBweiI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 955973c94c22eee1
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ME2QolRVyhO3YrCe5n1U0qUOTJXfeuBeMCAqknYplpDYCrHrkd1WswCU1HiWmwNcyE4IzR7di56QqrSFnEFPvUzLgq7qlKfJMFxvfLeyOThO5sHPLyC6rbs0XvIZEDwdhhdvZw+V/kzT/ftnran4o/ODlMV0HpcpH2SP2LWfskfhG3rGMOjUkXrWt2NFplOSMoyKCEUawI9a1bIoxWjBk+k616fnjeTYYGBZpQAs7WJ63/rN9nOrmyxB+mLljHPfG/xEezZU/H3s3SYvrpHohysoZDHCRMVJf/uqfOYBoaqAhco+IcutYqunPAFJ2DL79ixnYUtEURAGtU0No28PuQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=N2b9+yGDfHE3sm9F3YWdNFtMqdATr1Ow/7EUVdL+ELg=;
 b=dTOxpsZNRBl+JuRNviLl1TqPzGKvRoIuyRW9uKUf77RMInrpPoQkoRYTJ+8XuBRYdtOxgzzHSyuE66nOX2xSywdMTdrz2K0R8Z52e8ZuQsYHbicFRQkw4zxRB/c7r0bQ6gjVNeK3s6UX2c1lMltyipIDuoBBgz62U4XFR7ZJMEJuUMPSBiVmd3t1r7LOktrAvMMXzXcgaXy4gxLjNa4jSwa+dITUL6dI11A67ifIGXlHVpIGesOqfoeJU+ALrG+MXA5J8WrW6hiGunU/n/ft0wl2EM9+PuDdRxgnxl9+lFAFLqlZXoxzj56DGyL6Y1gzgnlN2i4hz4GU1RoiUDb2VQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=N2b9+yGDfHE3sm9F3YWdNFtMqdATr1Ow/7EUVdL+ELg=;
 b=cptOBDtKKYJMd0OgS36eOzSry6MekltflfDHZH5cG8pON2pW25+1FfHbomCjVS9iRG1jt0gb7RnyvkpWG/11PT7CojEUJNsUmkrG+O31Ek7a8J1DNAZYf2f+boaz9ZEsRbOC1ZPULBTkCJKRsMdzmJm/39H6KcSxe55bwOBweiI=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Michal Orzel <michal.orzel@amd.com>
CC: "leo.yan@linaro.org" <leo.yan@linaro.org>, Xen-devel
	<xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: Skip memory nodes if not enabled
Thread-Topic: [PATCH] xen/arm: Skip memory nodes if not enabled
Thread-Index: AQHZ8DsUAeh4H14sIUq1QR77iDXfDrAs3c8AgAADhQCAAAGkAA==
Date: Tue, 26 Sep 2023 10:10:57 +0000
Message-ID: <5BF208F8-3676-49C2-8E42-7BA10ACE6190@arm.com>
References: <20230926053333.180811-1-leo.yan@linaro.org>
 <BDC53ABB-AC26-45AF-A8FC-E12C83209400@arm.com>
 <10c01fc1-8140-c81d-8e9a-4fdce2adcaa0@amd.com>
In-Reply-To: <10c01fc1-8140-c81d-8e9a-4fdce2adcaa0@amd.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|GV1PR08MB8239:EE_|DBAEUR03FT046:EE_|AS8PR08MB10026:EE_
X-MS-Office365-Filtering-Correlation-Id: 5d95f391-01c2-4da5-b957-08dbbe78eb77
x-ld-processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 oa+kOje7Am7GdoMymYKdSOVyBCcLXuE6h0EjoXSwjisv6vzo6KzY+F7IESrQkZDAqEGuzp8shnQ+PWD0Bjaaj+sXbnvCHJsNw3G8XDMsRTUUfazuLaETjuIJoEoI48DQ5cAQkjdyfPNzQjvfd1PjrR+wuriCu3vXmnKLN0pF7NSi6GYDSyC1bateLZL6656a6hkFxqEfqjiUuLb7mvCs9ucLqGMcI+inGHqXypqkd8+6NiE5SzYi3yXzEPNgJgMWVYOCj6absiKaGbxsw5Ip3EACNremU8GRmfRVTR927L/fNpnLqWvPFRriRyrK/74WSCgu50Qdn7SkWk+0Wu3FVDdN4sLuHltqfmwo6VeVH53oqB6RSJ/kfPQydoEvIcz58ZaWcx3zA0E4eq85hcczlLVKmoOcMGNKUK6Nfb6fJ2nm/LZeqvUF5VlIlwmm+KWn9GCPAIp27z2Lg3LkxbHfcAAS1pwfvGPu9VEMWaOtjSnNAWVo4BHvDVBb3E4BeKkOMNkHELNzGJ8zkxqr722xO2l9avIH6c18Gzv7OsOllFTT+oL7J15/SMscU6/q7OauDdqN0m7wqvCjdL45HDFboTCtYh90QrkM9rR26GY/ql9ETc5i+erxik3scM6KgsSIAW475XeDiye/fIDu/TjFCQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(366004)(136003)(396003)(346002)(39860400002)(230922051799003)(451199024)(186009)(1800799009)(316002)(4326008)(53546011)(8676002)(6506007)(8936002)(5660300002)(71200400001)(6916009)(54906003)(478600001)(64756008)(2906002)(66476007)(66946007)(91956017)(2616005)(66446008)(76116006)(6486002)(6512007)(66556008)(26005)(41300700001)(83380400001)(38070700005)(38100700002)(122000001)(33656002)(36756003)(86362001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <888A4685B97AF8459C33B392EC302F3D@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8239
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT046.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	4f2e6308-e6e0-47c9-bc75-08dbbe78e051
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	I+js5RqEoH3OUtrXVZYQyPYhNtF5xGf3YPh6h3pn62RJiuItahY8H5zkYWqStg9Y8x2OzJkFcJzKH8UTkAtZ7ZbpOhlhUbQ7bd0fw+uqryPwmMT78Sd0HUutdru7AVxKiz1TxjfV9biOUuu9tjp1f50MXctvj4lD5kpGcaDiE3rTAl7Sc0ujinrq2Sg5qceTK4R4HpcPBy+wHnV9p6wpekhCu2ewNhscv/ApFgLODlcAL9QzZ6UvMPyCOF38WdWAGxt8OYAwpAVE9dsYPuTVw6NJEwOdRo/G49LE9mwKtcIO8K8LsydnXNEowQxXgfKnsqnaojYFuFFhHdkfTc5oZ4wgxfDCBzicgME//CitxZX2d73j8/TqC0959WyDQPHkR1kzPeNfNhreM3sfiotayPaGFljPauDObvXsUwT52Qt+ZkRL6bERmO4M53GnbLhB/26qmkNFDXXU2L/GtFseFWS430UQ/EihizLDFtkcHuyEZjRfXHhiqu1IsuJRuw+jNtbIb42A8LW/MKzgfQ2n63KjF6qpLIq18a2BUvL33+hTKVOQlR3/wwuQs5S+EAzmgplp44vWdFqkyf7G1gHJfyvoScT8syNNLL27peJI1cmVJdCtW0eBzh9NhkV5TNdXfluf0YX4m1If8K2cD75bE8FpWMw+21lRu5JyOPqCVGWj3RqO1P6cVePC0zFZIPDoTpZXEvFMZ9xRH3a3UQOE0BjSoMKe6rK/WRfp80P0t0jbO9+jZv2jS6s2KewHQ6Tw
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(376002)(39860400002)(346002)(396003)(230922051799003)(451199024)(82310400011)(186009)(1800799009)(36840700001)(40470700004)(46966006)(40460700003)(26005)(40480700001)(5660300002)(83380400001)(54906003)(2906002)(70206006)(356005)(316002)(41300700001)(36756003)(8676002)(8936002)(4326008)(6862004)(33656002)(86362001)(336012)(6512007)(6506007)(70586007)(6486002)(53546011)(107886003)(82740400003)(2616005)(81166007)(478600001)(47076005)(36860700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 10:11:15.8902
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5d95f391-01c2-4da5-b957-08dbbe78eb77
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT046.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB10026

DQoNCj4gT24gMjYgU2VwIDIwMjMsIGF0IDExOjA0LCBNaWNoYWwgT3J6ZWwgPG1pY2hhbC5vcnpl
bEBhbWQuY29tPiB3cm90ZToNCj4gDQo+IEhpIEx1Y2EsDQo+IA0KPiBPbiAyNi8wOS8yMDIzIDEx
OjUyLCBMdWNhIEZhbmNlbGx1IHdyb3RlOg0KPj4gDQo+PiANCj4+PiBPbiAyNiBTZXAgMjAyMywg
YXQgMDY6MzMsIExlbyBZYW4gPGxlby55YW5AbGluYXJvLm9yZz4gd3JvdGU6DQo+Pj4gDQo+Pj4g
RHVyaW5nIHRoZSBMaW51eCBrZXJuZWwgYm9vdGluZywgYW4gZXJyb3IgaXMgcmVwb3J0ZWQgYnkg
dGhlIFhlbg0KPj4+IGh5cGVydmlzb3I6DQo+Pj4gDQo+Pj4gKFhFTikgYXJjaC9hcm0vcDJtLmM6
MjIwMjogZDB2MDogRmFpbGluZyB0byBhY3F1aXJlIHRoZSBNRk4gMHgxYTAyZGMNCj4+PiANCj4+
PiBUaGUga2VybmVsIGF0dGVtcHRzIHRvIHVzZSBhbiBpbnZhbGlkIG1lbW9yeSBmcmFtZSBudW1i
ZXIsIHdoaWNoIGNhbiBiZQ0KPj4+IGNvbnZlcnRlZCB0bzogMHgxYTAyZGMgPDwgUEFHRV9TSElG
VCwgcmVzdWx0aW5nIGluIDB4MV9hMDJkX2MwMDAuDQo+Pj4gDQo+Pj4gVGhlIGludmFsaWQgbWVt
b3J5IGZyYW1lIGZhbGxzIGludG8gYSByZXNlcnZlZCBtZW1vcnkgbm9kZSwgd2hpY2ggaXMNCj4+
PiBkZWZpbmVkIGluIHRoZSBkZXZpY2UgdHJlZSBhcyBiZWxvdzoNCj4+PiANCj4+PiByZXNlcnZl
ZC1tZW1vcnkgew0KPj4+ICAgICAgICAgI2FkZHJlc3MtY2VsbHMgPSA8MHgwMj47DQo+Pj4gICAg
ICAgICAjc2l6ZS1jZWxscyA9IDwweDAyPjsNCj4+PiAgICAgICAgIHJhbmdlczsNCj4+PiANCj4+
PiAuLi4NCj4+PiANCj4+PiAgICAgICAgIGV0aG9zbl9yZXNlcnZlZCB7DQo+Pj4gICAgICAgICAg
ICAgICAgIGNvbXBhdGlibGUgPSAic2hhcmVkLWRtYS1wb29sIjsNCj4+PiAgICAgICAgICAgICAg
ICAgcmVnID0gPDB4MDEgMHhhMDAwMDAwMCAweDAwIDB4MjAwMDAwMDA+Ow0KPj4+ICAgICAgICAg
ICAgICAgICBzdGF0dXMgPSAiZGlzYWJsZWQiOw0KPj4+ICAgICAgICAgICAgICAgICBuby1tYXA7
DQo+Pj4gICAgICAgICB9Ow0KPj4+IA0KPj4+IC4uLg0KPj4+IH07DQo+Pj4gDQo+Pj4gWGVuIGV4
Y2x1ZGVzIGFsbCByZXNlcnZlZCBtZW1vcnkgcmVnaW9ucyBmcm9tIHRoZSBmcmFtZSBtYW5hZ2Vt
ZW50DQo+Pj4gdGhyb3VnaCB0aGUgZHRfdW5yZXNlcnZlZF9yZWdpb25zKCkgZnVuY3Rpb24uIE9u
IHRoZSBvdGhlciBoYW5kLCB0aGUNCj4+PiByZXNlcnZlZCBtZW1vcnkgbm9kZXMgYXJlIHBhc3Nl
ZCB0byB0aGUgTGludXgga2VybmVsLiBIb3dldmVyLCB0aGUgTGludXgNCj4+PiBrZXJuZWwgaWdu
b3JlcyB0aGUgJ2V0aG9zbl9yZXNlcnZlZCcgbm9kZSBzaW5jZSBpdHMgc3RhdHVzIGlzDQo+Pj4g
ImRpc2FibGVkIi4gVGhpcyBsZWFkcyB0byB0aGUgTGludXgga2VybmVsIHRvIGFsbG9jYXRlIHBh
Z2VzIGZyb20gdGhlDQo+Pj4gcmVzZXJ2ZWQgbWVtb3J5IHJhbmdlLg0KPj4gDQo+PiBJIG1pZ2h0
IGJlIHdyb25nLCBidXQgcmVhZGluZyB0aGUgc3BlY2lmaWNhdGlvbnMgc2VlbXMgdGhhdCDigJxz
dGF0dXPigJ0gaXMgbm90IGEgcHJvcGVydHkNCj4+IG9mIHRoZSBjaGlsZCBub2RlcyBvZiAvcmVz
ZXJ2ZWQtbWVtb3J5LCBzbyBJ4oCZbSBub3Qgc3VyZSBYZW4gc2hvdWxkIGRvIHNvbWV0aGluZyBh
Ym91dCBpdC4NCj4gUGxlYXNlIHRha2UgYSBsb29rIGF0IGR0IGRvY3VtZW50YXRpb24gKHYwLjQp
IGZvciAvbWVtb3J5IGFuZCAvcmVzZXJ2ZWQtbWVtb3J5Lg0KPiBVbmRlciB0aGUgdGFibGVzIGxp
c3RpbmcgcG9zc2libGUgcHJvcGVydGllcywgdGhlcmUgaXMgYSBzdGF0ZW1lbnQ6DQo+IE5vdGU6
IEFsbCBvdGhlciBzdGFuZGFyZCBwcm9wZXJ0aWVzIChTZWN0aW9uIDIuMykgYXJlIGFsbG93ZWQg
YnV0IGFyZSBvcHRpb25hbC4NCg0KVGhhbmtzIGZvciBwb2ludGluZyB0aGF0IG91dCwgSSBtaXNz
ZWQgdGhhdCBiaXQuDQoNCj4gDQo+ICJzdGF0dXMiIGlzIHBhcnQgb2Ygc3RhbmRhcmQgcHJvcGVy
dGllcyBzbyBpdCBpcyBwZXJmZWN0bHkgZmluZSBmb3IgL21lbW9yeSBvciAvcmVzZXJ2ZWQtbWVt
b3J5DQo+IG5vZGVzIHRvIGhhdmUgaXQgZGVmaW5lZC4NCj4gDQo+IH5NaWNoYWwNCg0K


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 11:13:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 11:13:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608405.946868 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql607-0002pX-Kt; Tue, 26 Sep 2023 11:13:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608405.946868; Tue, 26 Sep 2023 11:13:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql607-0002pQ-Hh; Tue, 26 Sep 2023 11:13:11 +0000
Received: by outflank-mailman (input) for mailman id 608405;
 Tue, 26 Sep 2023 11:13:10 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PA3Q=FK=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1ql606-0002pK-Ai
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 11:13:10 +0000
Received: from mail-pl1-x62b.google.com (mail-pl1-x62b.google.com
 [2607:f8b0:4864:20::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id abed1d82-5c5d-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 13:13:09 +0200 (CEST)
Received: by mail-pl1-x62b.google.com with SMTP id
 d9443c01a7336-1c61bde0b4bso32123155ad.3
 for <xen-devel@lists.xenproject.org>; Tue, 26 Sep 2023 04:13:08 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.34])
 by smtp.gmail.com with ESMTPSA id
 ju18-20020a170903429200b001b89536974bsm3923816plb.202.2023.09.26.04.13.05
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 26 Sep 2023 04:13:06 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: abed1d82-5c5d-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1695726787; x=1696331587; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=oEwJeD1rxPjSlNlpKh4wSmhAj6u5KqyizWcE7yh2BW0=;
        b=m2rJNZqwONEBKFwCCmw5GfsEkPzuQ2N5pBHjJ1cXFwpm5oNHXxgoJ4QLJ9/kWb6Xr6
         sFQevX91S+mrchqWwHfzBSvKFwVbKjY5AHmdXZM62SHgqT2TSsJXCGnReZ4+l7nO2e8l
         RTPcDJ+46YJBLv62cRfDzfo2L43ukvwFuxORNwQqfHJjn1TYoufVmFOlcjMmvPzL6mSc
         iP65fblF1K9J9T8f62yTAj8MV0yr0TLNgCytk+f2Q9a4DEzcUVvcGS3Y1ExyN1VWaCnq
         RYfZ8SWOkfMhrJGX6fhzf+NYHxzYwVOiW+aD7zyVgbIRGIefVLOv8ayAjHnAmAiFUoqd
         OaeA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695726787; x=1696331587;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=oEwJeD1rxPjSlNlpKh4wSmhAj6u5KqyizWcE7yh2BW0=;
        b=wjfXciNKJPSx8WbxWM1nbtCS7osRCdD7WC7wxN73RjY77Dvdf3e0LD71/qASW5LDZb
         PcNQCI+0v8YfrJpojROjygC/JNTScgnRCjfx9A3SzF3YQnUy1hcs5oJ9Q7DmOYPSwyKo
         fBrtSqWLqDM1k1BfpR/7QgkIGeXUPb+lMqRCv51q030HlMGwCkrJnXkUMyu7C3mpDej8
         87ane9O3ZUEnXSb2zXi3DFDDt6stC+NbdOUt+/57cJdYnfnmQtMl2i97s2CqBTWumV0T
         EwWq++hnHiqFAmCUEGKUYzW860OrCRiW1BHp9Wv20xr7cZMuWIxkBCn523bQBg+xh4tA
         lZCw==
X-Gm-Message-State: AOJu0Yw/8lo/DgAPYMHn8wVivpaee5gUxyAk0TiouOAx9qRfYXmIjGfZ
	fSkFikz3m5E9dqv4ij8H/GoKNA==
X-Google-Smtp-Source: AGHT+IG3weiNcYT4GDoFH2KfHTm0Xh3g7+UsHn5XyzffC3rJq16hmKQnD0L75XBg/l8qnlCTpaiI3g==
X-Received: by 2002:a17:902:704c:b0:1bd:bbc3:c87b with SMTP id h12-20020a170902704c00b001bdbbc3c87bmr7594000plt.41.1695726787438;
        Tue, 26 Sep 2023 04:13:07 -0700 (PDT)
Date: Tue, 26 Sep 2023 19:13:02 +0800
From: Leo Yan <leo.yan@linaro.org>
To: Michal Orzel <michal.orzel@amd.com>
Cc: xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: Skip memory nodes if not enabled
Message-ID: <20230926111302.GB11115@leoy-yangtze.lan>
References: <20230926053333.180811-1-leo.yan@linaro.org>
 <b0d2494a-8223-a101-5d10-f3803629f2f3@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <b0d2494a-8223-a101-5d10-f3803629f2f3@amd.com>

Hi Michal,

On Tue, Sep 26, 2023 at 10:36:04AM +0200, Michal Orzel wrote:

[...]

> > Essentially, this issue is caused by the Xen hypervisor which misses to
> > handle the status for the memory nodes (for both the normal memory nodes
> > and the reserved memory nodes) and transfers them to the Linux kernel.
> > 
> > This patch introduces a function memory_node_is_available(). If it
> > detects a memory node is not enabled, the hypervisor will not add the
> > memory region into the memory lists. In the end, this avoids to generate
> > the memory nodes from the memory lists sent to the kernel and the kernel
> > cannot use the disabled memory nodes any longer.
> 
> Interesting. So FWICS, we have 2 issues that have a common ground:
>
> 1) If the reserved memory node has a status "disabled", it implies that this region
> is no longer reserved and can be used which is not handled today by Xen and leads
> to the above mentioned problem.

Correct.

> 2) If the memory node has a status "disabled" it implies that it should not be used
> which is not the case in current Xen. This means that at the moment, Xen would try
> to use such a memory region which is incorrect.

Exactly.

> I think the commit msg should be more generic and focus on these two issues.
> Summary:
> Xen does not handle the status property of memory nodes and ends up using them.
> Xen does not handle the status property of reserved memory nodes. If status is disabled
> it means the reserved region shall no longer be treated as reserved. Xen passes the reserved
> memory nodes untouched to dom0 fdt and creates a memory node to cover reserved regions.
> Disabled reserved memory nodes are ignored by the guest which leaves us with the exposed
> memory nodes. Guest can access such a region but it is excluded from the page management in Xen
> which results in Xen being unable to obtain the corresponding MFN.

Yes, thanks a lot for good summary!

In theory, a good practice should use two separate patches to fix two
issues respectively. Given we can use simple change to fix these two
issues in one patch, I will amend the patch's commit log with your
summary for better recording these issues.

> > Signed-off-by: Leo Yan <leo.yan@linaro.org>
> > ---
> >  xen/arch/arm/bootfdt.c | 16 ++++++++++++++++
> >  1 file changed, 16 insertions(+)
> > 
> > diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
> > index 2673ad17a1..b46dde06a9 100644
> > --- a/xen/arch/arm/bootfdt.c
> > +++ b/xen/arch/arm/bootfdt.c
> > @@ -206,11 +206,27 @@ int __init device_tree_for_each_node(const void *fdt, int node,
> >      return 0;
> >  }
> > 
> > +static bool __init memory_node_is_available(const void *fdt, unsigned long node)
>
> This function is not strictly related to memory node so it would be better to call it e.g. device_tree_node_is_available.
> This way it can be used in the future for other nodes if needed. Also, I would move it somewhere near the top of the file
> next to other helpers.

Will do.

> Also, node should be of type 'int'

Will fix.

> > +{
> > +    const char *status = fdt_getprop(fdt, node, "status", NULL);
> > +
> > +    if (!status)
> white spaces between brackets and condition
> if ( !status )

Will fix.

> > +        return true;
> > +
> > +    if (!strcmp(status, "ok") || !strcmp(status, "okay"))
> white spaces between brackets and condition
> if ( !strcmp(status, "ok") || !strcmp(status, "okay") )

Will fix.

> > +        return true;
> > +
> > +    return false;
> > +}
> > +
> >  static int __init process_memory_node(const void *fdt, int node,
> >                                        const char *name, int depth,
> >                                        u32 address_cells, u32 size_cells,
> >                                        void *data)
> >  {
> > +    if (!memory_node_is_available(fdt, node))
> > +        return 0;
>
> I would move this check to device_tree_get_meminfo()

Okay, I will do it.

> > +
> >      return device_tree_get_meminfo(fdt, node, "reg", address_cells, size_cells,
> >                                     data, MEMBANK_DEFAULT);
> >  }
> > --
> > 2.39.2
> > 
> > 
> 
> Also, I think it would be nice to add ASSERT(bootinfo.mem.nr_banks); e.g. in boot_fdt_info().
> Otherwise the panic from Xen when there is no memory bank:
> The frametable cannot cover the physical region ...
> is not really meaningful for normal users.

I'd like to use a separate patch to validate the memory banks.
> 
> This is just my suggestion (@Julien ?)

Thank you a lot for review.

Leo


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 11:24:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 11:24:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608410.946878 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql6Am-0005V0-J8; Tue, 26 Sep 2023 11:24:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608410.946878; Tue, 26 Sep 2023 11:24:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql6Am-0005Ut-Gd; Tue, 26 Sep 2023 11:24:12 +0000
Received: by outflank-mailman (input) for mailman id 608410;
 Tue, 26 Sep 2023 11:24:10 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PA3Q=FK=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1ql6Ak-0005Un-Ss
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 11:24:10 +0000
Received: from mail-pf1-x42d.google.com (mail-pf1-x42d.google.com
 [2607:f8b0:4864:20::42d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 32fbb4f5-5c5f-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 13:24:05 +0200 (CEST)
Received: by mail-pf1-x42d.google.com with SMTP id
 d2e1a72fcca58-690d2441b95so6318050b3a.1
 for <xen-devel@lists.xenproject.org>; Tue, 26 Sep 2023 04:24:05 -0700 (PDT)
Received: from leoy-yangtze.lan ([98.98.49.34])
 by smtp.gmail.com with ESMTPSA id
 f15-20020aa78b0f000000b0068fe7c4148fsm9636262pfd.57.2023.09.26.04.24.01
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 26 Sep 2023 04:24:03 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 32fbb4f5-5c5f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1695727443; x=1696332243; darn=lists.xenproject.org;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date:from:to
         :cc:subject:date:message-id:reply-to;
        bh=PNijtx6LwEe13nbObEOOvNg4tbJVsnRWtVDhFJIbCcw=;
        b=u+8rkhdxgXaFlhzpIPYWPge4uasrzdAKwHAQwmNqV6aNqjolihcCQ+3UFPqOOAlI12
         BRZbTarq7xP6/7tOpW+q13b+Pzy01f8qWS1KTqEQbpD+tZ9bNiiuLNTFmZZ6Ypf04PEU
         ivrDtxlKujJJgLlm4RsN1laJnCFTIgk27Cl490RyNsbDq80PMIWrLxydx/m0YJzJUfYC
         j5m0bc/ltMjVZK9zeIqwyWmmxmIR7PnjLp/mx+F00PTbhtsQx9aEtiEaCESbtUGMQW/k
         IK/Inp9kyzd2tyN6LqNawG4kATLLV9U8MFa2cyw6+bHcjbK0kaFyWlmRWMoaku8ARQH1
         +vJA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695727443; x=1696332243;
        h=in-reply-to:content-transfer-encoding:content-disposition
         :mime-version:references:message-id:subject:cc:to:from:date
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=PNijtx6LwEe13nbObEOOvNg4tbJVsnRWtVDhFJIbCcw=;
        b=VPQbQi1jwlDhnPTngRoBSbWUF8Z2vWkB7vIa5RW2wh9cJnxK2S/g5U98VYZfbgIz66
         8TRc25/er/60Y2Ih5RMGYc5woT6fBp5/g1JTEFdRlhLu5iOzEt2gz3LE1pLh36615Gns
         YP3JHK/tht+BamaGDpCDnGqEvVQ3jlqo8EomBT8WPX3Y03lpgSYxhkMflkYb5XIRUGVh
         cg7nMa16HOBbRrBS8MQ/6R4FHmp2xiTHVEphtFEVIdmGzePdcy6jBOb+FaXb5DNx8wUe
         GHjD/gmUV9pw6vRLSzaGgYXBJUh+MTMKDi26OZHiYYZ4fZfA1I3XDV+y33+7M8m3hFzz
         4SLw==
X-Gm-Message-State: AOJu0YwPTHx2VHUCXmJzSLnzXSm3N//M24lKkcemSAXxakPmBa2wiXxW
	ruUv2hYj8gPW+k+NnTN/O2JSiA==
X-Google-Smtp-Source: AGHT+IGmt/m30UW1zqYxVfKZskQc63eyDJuGXnKQr2FdoVKmYjT+91FwFjB5DaMcUx5CPGJRatJpZg==
X-Received: by 2002:a05:6a00:16c5:b0:68c:3ed9:d39c with SMTP id l5-20020a056a0016c500b0068c3ed9d39cmr3521769pfc.13.1695727443498;
        Tue, 26 Sep 2023 04:24:03 -0700 (PDT)
Date: Tue, 26 Sep 2023 19:23:59 +0800
From: Leo Yan <leo.yan@linaro.org>
To: Luca Fancellu <Luca.Fancellu@arm.com>
Cc: Michal Orzel <michal.orzel@amd.com>,
	Xen-devel <xen-devel@lists.xenproject.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: Skip memory nodes if not enabled
Message-ID: <20230926112359.GC11115@leoy-yangtze.lan>
References: <20230926053333.180811-1-leo.yan@linaro.org>
 <BDC53ABB-AC26-45AF-A8FC-E12C83209400@arm.com>
 <10c01fc1-8140-c81d-8e9a-4fdce2adcaa0@amd.com>
 <5BF208F8-3676-49C2-8E42-7BA10ACE6190@arm.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <5BF208F8-3676-49C2-8E42-7BA10ACE6190@arm.com>

Hi Luca,

On Tue, Sep 26, 2023 at 10:10:57AM +0000, Luca Fancellu wrote:

[...]

> >> I might be wrong, but reading the specifications seems that “status” is not a property
> >> of the child nodes of /reserved-memory, so I’m not sure Xen should do something about it.
> >
> > Please take a look at dt documentation (v0.4) for /memory and /reserved-memory.
> > Under the tables listing possible properties, there is a statement:
> > Note: All other standard properties (Section 2.3) are allowed but are optional.
> 
> Thanks for pointing that out, I missed that bit.

Though ePAPR [1] doesn't explicitly say "status" property can be
included by memory nodes and reserved memory nodes, "status" property
is a standard property.

The Linux kernel checks "status" property for memory nodes and reserved
memory nodes with the of_fdt_device_is_available() function. Actually,
I just reuse this function and rename it in current patch :)

Thanks,
Leo

[1] https://elinux.org/images/c/cf/Power_ePAPR_APPROVED_v1.1.pdf


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 12:30:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 12:30:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608433.946890 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql7Cq-0000Oa-If; Tue, 26 Sep 2023 12:30:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608433.946890; Tue, 26 Sep 2023 12:30:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql7Cq-0000OT-EI; Tue, 26 Sep 2023 12:30:24 +0000
Received: by outflank-mailman (input) for mailman id 608433;
 Tue, 26 Sep 2023 12:30:23 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql7Cp-0000OJ-KX; Tue, 26 Sep 2023 12:30:23 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql7Cp-0000Uj-HZ; Tue, 26 Sep 2023 12:30:23 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql7Cp-0003VK-1R; Tue, 26 Sep 2023 12:30:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1ql7Cp-0006AU-10; Tue, 26 Sep 2023 12:30:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=/uf4TPepzF8OKye2W7J8sl1kAVi7OZQMVxBu2B2/MG8=; b=gh07eK8+IgNVJIbhAgunSpGVD+
	vxBFZGnxTz9cPEdhwiyZuUoSIMJp7ExZHszm32p73nETWUM+k5foVBTPJrXwHSLBR0+nqMUucufZo
	gsq3dcVAeKD+hU0WhBXIJWaVv74pMFF+aNYrwh6LwyE2VM8WpJ15C2iunoHqzm8pQYQo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183172-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183172: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=51a074e74c6ef2fb95e6f53d41315e3f1e00be77
X-Osstest-Versions-That:
    libvirt=3fd64fb0e236fc80ffa2cc977c0d471f11fc39bf
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 26 Sep 2023 12:30:23 +0000

flight 183172 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183172/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183126
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183126
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183126
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              51a074e74c6ef2fb95e6f53d41315e3f1e00be77
baseline version:
 libvirt              3fd64fb0e236fc80ffa2cc977c0d471f11fc39bf

Last test of basis   183126  2023-09-23 04:18:44 Z    3 days
Testing same since   183172  2023-09-26 04:20:27 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Dmitry Frolov <frolov@swemel.ru>
  Jim Fehlig <jfehlig@suse.com>
  Jonathon Jongsma <jjongsma@redhat.com>
  Ján Tomko <jtomko@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   3fd64fb0e2..51a074e74c  51a074e74c6ef2fb95e6f53d41315e3f1e00be77 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 13:36:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 13:36:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608440.946899 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql8EW-0001mG-CI; Tue, 26 Sep 2023 13:36:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608440.946899; Tue, 26 Sep 2023 13:36:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql8EW-0001m9-9B; Tue, 26 Sep 2023 13:36:12 +0000
Received: by outflank-mailman (input) for mailman id 608440;
 Tue, 26 Sep 2023 13:36:11 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql8EV-0001lz-84; Tue, 26 Sep 2023 13:36:11 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql8EV-00025u-5I; Tue, 26 Sep 2023 13:36:11 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1ql8EU-00065J-Ko; Tue, 26 Sep 2023 13:36:10 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1ql8EU-0007nK-KO; Tue, 26 Sep 2023 13:36:10 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=58EcEfPYiUpPTA7w/SjmXMzT3N8TcSGx1M6FsfzgxxA=; b=3KhbDG7bMOMT20I1asWGKRRb67
	LH/EyipjnCKp/wXFbQlvQysLym03DQeY0v/8vYzNPGwf918e6olbNTR405M0Yauhp+duBs9DJWkFN
	9ge5N4DBnsuZRdvGlxorDVA6FmO+MSyHbCqH/HPDJ5zh4C1CgOXJFZ2DcBVuAHu2G81U=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183176-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183176: regressions - FAIL
X-Osstest-Failures:
    xen-unstable-smoke:test-armhf-armhf-xl:host-ping-check-xen:fail:regression
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=cbb71b95dd708b1e26899bbe1e7bf9a85081fd60
X-Osstest-Versions-That:
    xen=d6351a10c80fcbbf2b5996d351b7181ba17b3b32
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 26 Sep 2023 13:36:10 +0000

flight 183176 xen-unstable-smoke real [real]
flight 183177 xen-unstable-smoke real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183176/
http://logs.test-lab.xenproject.org/osstest/logs/183177/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl          10 host-ping-check-xen      fail REGR. vs. 183156

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  cbb71b95dd708b1e26899bbe1e7bf9a85081fd60
baseline version:
 xen                  d6351a10c80fcbbf2b5996d351b7181ba17b3b32

Last test of basis   183156  2023-09-25 09:00:25 Z    1 days
Testing same since   183176  2023-09-26 09:00:28 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Nicola Vetrini <nicola.vetrini@bugseng.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefano Stabellini <sstabellini@kernel.org>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          fail    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
commit cbb71b95dd708b1e26899bbe1e7bf9a85081fd60
Author: Shawn Anastasio <sanastasio@raptorengineering.com>
Date:   Tue Sep 26 10:08:25 2023 +0200

    automation: Drop ppc64le-*randconfig jobs
    
    Since ppc64le is still undergoing early bringup, disable the randconfig
    CI build which was causing spurious CI failures.
    
    Reported-by: Jan Beulich <jbeulich@suse.com>
    Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
    Acked-by: Stefano Stabellini <sstabellini@kernel.org>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>

commit e47f8c6c2a27cbdadb75b443af069a77f917067d
Author: Nicola Vetrini <nicola.vetrini@bugseng.com>
Date:   Tue Sep 26 10:06:18 2023 +0200

    drivers/video: make declarations of defined functions available
    
    The declarations for 'vesa_{init,early_init,endboot}' needed by
    'xen/drivers/video/vesa.c' and 'fill_console_start_info' in 'vga.c'
    are now available by moving the relative code inside 'vga.h'.
    
    While moving the code, the alternative definitions are now guarded by
    CONFIG_VGA. The alternative #define-s for 'vesa_early_init' and 'vesa_endboot'
    are dropped, since currently they have no callers when CONFIG_VGA is not defined.
    
    This also resolves violations of MISRA C:2012 Rule 8.4.
    
    Fixes: 6d9199bd0f22 ("x86-64: enable hypervisor output on VESA frame buffer")
    Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>
    Release-acked-by: Henry Wang <Henry.Wang@arm.com>
(qemu changes not included)


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 15:28:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 15:28:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608450.946918 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql9ye-0008PM-A9; Tue, 26 Sep 2023 15:27:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608450.946918; Tue, 26 Sep 2023 15:27:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1ql9ye-0008PF-6L; Tue, 26 Sep 2023 15:27:56 +0000
Received: by outflank-mailman (input) for mailman id 608450;
 Tue, 26 Sep 2023 15:27:54 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ZoCt=FK=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1ql9yc-0008P7-QM
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 15:27:54 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20607.outbound.protection.outlook.com
 [2a01:111:f400:7e89::607])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4134ddac-5c81-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 17:27:52 +0200 (CEST)
Received: from MW4PR03CA0031.namprd03.prod.outlook.com (2603:10b6:303:8e::6)
 by BN9PR12MB5098.namprd12.prod.outlook.com (2603:10b6:408:137::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.25; Tue, 26 Sep
 2023 15:27:46 +0000
Received: from CO1PEPF000044F9.namprd21.prod.outlook.com
 (2603:10b6:303:8e:cafe::7c) by MW4PR03CA0031.outlook.office365.com
 (2603:10b6:303:8e::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Tue, 26 Sep 2023 15:27:46 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CO1PEPF000044F9.mail.protection.outlook.com (10.167.241.199) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6863.9 via Frontend Transport; Tue, 26 Sep 2023 15:27:45 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 26 Sep
 2023 10:27:45 -0500
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Tue, 26 Sep 2023 10:27:44 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4134ddac-5c81-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kqp8DU3Aj3wH6hqLLNZ1kyo//c1Lpawbtu+NRgM+6i3LQZgBiSc8B4PGwAP4dD3+q5i5jf1ZXv0DLz/quQ07PeF/oHTJJ2U6VxUyZaNHKrNq/b+8vQqi3v/QwwedS9WFFDwOlBcpl0GAXsaVl8JzQyz7u9kaOR6gv9wC11XW4kBCNhpj01hrdTBkn0KPDerqayhtNLK/WJBJrSRXY92cSSQ49sH8oCvgx7+msfmriAKppNya7zgFYofjft+T0xkhMYJVIAx1IKFq4lWEF6+rvB+AYW4hFwKvqxLG1g2RVzfKDVvNZo+KWoC5+SKtN58WNqS12hofz+jgEjW8qMzaTg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MEzqKmuwoHB5XNbcaO9bs9bXpXVIreUDVmcaDQLXX8I=;
 b=mXCRJu/QohT8aR7WaOV7+OqZ2MJVKbjOCF+oM9dhKuT1ZjKdXj2o3LZglP2NrEx1y+ZpCH4bQzg5LcVLqV07fYZYBYmDm+DDYDJp4GlNfmSfUeVowQKnSzQC3O5Tl5GTlp2NIxOFe2nPLH9XbAvnFszISzxmHYWA+FQ23FOP+N3G5P+jLQPoS/0sGnpbX826QnQ2lONDHkJaEBsH11hyl8vk88dXUbLT8zLsEfITl1KwGEMbBJXD5cvgwiNRUjMQPf4wCc+PElqCvSrtd8fKRHXJ/hi2RMwQdTqR9cgJNfRHWAsl79dy019Mz3na41yURjYgFHbCB765kak7oonl3A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=citrix.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MEzqKmuwoHB5XNbcaO9bs9bXpXVIreUDVmcaDQLXX8I=;
 b=iZsT68Esgb7cwRHUxi1n8i/cYMiD0AvYIp8TqSbA3j0YLpUxnTs6wSiGy3g4V8CPMsfrx2WZiZuTA+Xwu/u10CThz6EvzvQoCxWfL930uUJkPxWDJC0oZCXFI2JshTN8c5okmrgS/ASJPFG2Dh2Wh7t79nH6za44Krrv0WjchRQ=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <8a300dad-29d5-2017-70ad-09abc2c62368@amd.com>
Date: Tue, 26 Sep 2023 11:27:48 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v9 15/16] xen/arm: vpci: check guest range
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
CC: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-16-volodymyr_babchuk@epam.com>
 <ZQ1T8vImUxAaeLdj@MacBookPdeRoger>
 <0a1bc845-28b7-4af8-d6d9-cd5fc7bb4d74@amd.com>
 <ZRKRNcypuvP26luu@MacBookPdeRoger>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <ZRKRNcypuvP26luu@MacBookPdeRoger>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044F9:EE_|BN9PR12MB5098:EE_
X-MS-Office365-Filtering-Correlation-Id: f37165aa-b70e-47f1-f301-08dbbea52287
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	fc/k+YIzh6PCFbXBD5cW+MykZxDo1Vgubi6omfJwGW05EXYSFu7exIt1tmnRE+1+JnpNwKfHCX5yaiHePrv21Fr3T1sv82n9fRkGoUjB5uNxQvWze6lbrVZnrlMp+6XkFOw5zdGTc2DGpdg058i7vCKs9oDTXxHm3WoncfmALfJM69ieAtl3O0GEiTq2JNmH/Jk8UHrwz0QqTebv+Pa6/X8BeK7OESiAFLr0r8ktizq92AUKPGakA+xY1WpaHhOW5og2Dndwbi8SQOFHPhTjs/Hqvlh1A4Awd3i4FJuq1E+B7nsvLFcUsQDZPZYLbwmm4gJCIj6t/maypNTfMZDhPcCwMbrIIi127FosVZg4oF+oweIZKNy6PiN8NMWaoBwyYvHvF6tEBcJX3RbdFHpwJxNapW55VssP6XlYTMxS9B/ntmF0qlbltPhTyU44dGkf3bd08a4jHyTnwvXeJlej9i5qGqJlEK89O9mhAY6j9/7B+V1H11dMU3Zhovz2rXu7lINC5QOBBNDBKlMVz4Zp4SKDj7tkkBknzHVKJMsoM8JdrkjB7f+bNgBz9sUw6F5yaSGMInxX7Gck1gvru6NsCiXND+WWKR6Huha75i2Vd73h78QcMiZkNb2SRxla4bIdE0xNpcfamz3G9idFRYmmhRh6s5VvLoI7QMhXyseHPYDAU62exSKFP1ZLM+u22ACeyhaVvV3xEgqW/4zxpHAl57lnPfa1Gza6BtV8gVBn6rbWJQAoZPNLZnu7IPN7AFW+5LwQVClYROXIFRCeYyHsSbxpxm+bnsOTEtzk0fSAPUJkdlA823SJegZBLqUviYZe
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(136003)(346002)(376002)(230922051799003)(1800799009)(82310400011)(451199024)(186009)(36840700001)(46966006)(40470700004)(2906002)(31686004)(5660300002)(44832011)(70586007)(70206006)(54906003)(478600001)(6916009)(2616005)(53546011)(26005)(8936002)(41300700001)(316002)(4326008)(8676002)(426003)(83380400001)(81166007)(47076005)(356005)(82740400003)(36756003)(40460700003)(86362001)(31696002)(336012)(36860700001)(16576012)(40480700001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 15:27:45.9554
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f37165aa-b70e-47f1-f301-08dbbea52287
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000044F9.namprd21.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR12MB5098

On 9/26/23 04:07, Roger Pau Monné wrote:
> On Mon, Sep 25, 2023 at 05:49:00PM -0400, Stewart Hildebrand wrote:
>> On 9/22/23 04:44, Roger Pau Monné wrote:
>>> On Tue, Aug 29, 2023 at 11:19:47PM +0000, Volodymyr Babchuk wrote:
>>>> From: Stewart Hildebrand <stewart.hildebrand@amd.com>
>>>>
>>>> Skip mapping the BAR if it is not in a valid range.
>>>>
>>>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>>>> ---
>>>>  xen/drivers/vpci/header.c | 9 +++++++++
>>>>  1 file changed, 9 insertions(+)
>>>>
>>>> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
>>>> index 1d243eeaf9..dbabdcbed2 100644
>>>> --- a/xen/drivers/vpci/header.c
>>>> +++ b/xen/drivers/vpci/header.c
>>>> @@ -345,6 +345,15 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>>>>               bar->enabled == !!(cmd & PCI_COMMAND_MEMORY) )
>>>>              continue;
>>>>
>>>> +#ifdef CONFIG_ARM
>>>> +        if ( !is_hardware_domain(pdev->domain) )
>>>> +        {
>>>> +            if ( (start_guest < PFN_DOWN(GUEST_VPCI_MEM_ADDR)) ||
>>>> +                 (end_guest >= PFN_DOWN(GUEST_VPCI_MEM_ADDR + GUEST_VPCI_MEM_SIZE)) )
>>>> +                continue;
>>>> +        }
>>>> +#endif
>>>
>>> Hm, I think this should be in a hook similar to pci_check_bar() that
>>> can be implemented per-arch.
>>>
>>> IIRC at least on x86 we allow the guest to place the BARs whenever it
>>> wants, would such placement cause issues to the hypervisor on Arm?
>>
>> Hm. I wrote this patch in a hurry to make v9 of this series work on ARM. In my haste I also forgot about the prefetchable range starting at GUEST_VPCI_PREFETCH_MEM_ADDR, but that won't matter as we can probably throw this patch out.
>>
>> Now that I've had some more time to investigate, I believe the check in this patch is more or less redundant to the existing check in map_range() added in baa6ea700386 ("vpci: add permission checks to map_range()").
>>
>> The issue is that during initialization bar->guest_addr is zeroed, and this initial value of bar->guest_addr will fail the permissions check in map_range() and crash the domain. When the guest writes a new valid BAR, the old invalid address remains in the rangeset to be mapped. If we simply remove the old invalid BAR from the rangeset, that seems to fix the issue. So something like this:
> 
> It does seem to me we are missing a proper cleanup of the rangeset
> contents in some paths then.  In the above paragraph you mention "the
> old invalid address remains in the rangeset to be mapped", how does it
> get in there in the first place, and why is the rangeset not emptied
> if the mapping failed?

Back in ("vpci/header: handle p2m range sets per BAR") I added a v->domain == pdev->domain check near the top of vpci_process_pending() as you appropriately suggested.

+    if ( v->domain != pdev->domain )
+    {
+        read_unlock(&v->domain->pci_lock);
+        return false;
+    }

I have also reverted this patch ("xen/arm: vpci: check guest range").

The sequence of events leading to the old value remaining in the rangeset are:

# xl pci-assignable-add 01:00.0
drivers/vpci/vpci.c:vpci_deassign_device()
    deassign 0000:01:00.0 from d0
# grep pci domu.cfg
pci = [ "01:00.0" ]
# xl create domu.cfg
drivers/vpci/vpci.c:vpci_deassign_device()
    deassign 0000:01:00.0 from d[IO]
drivers/vpci/vpci.c:vpci_assign_device()
    assign 0000:01:00.0 to d1
    bar->guest_addr is initialized to zero because of the line: pdev->vpci = xzalloc(struct vpci);
drivers/vpci/header.c:init_bars()
drivers/vpci/header.c:modify_bars()
    BAR0: start 0xe0000, end 0xe000f, start_guest 0x0, end_guest 0xf
    The range { 0-f } is added to the BAR0 rangeset for d1
drivers/vpci/header.c:defer_map()
    raise_softirq(SCHEDULE_SOFTIRQ);
drivers/vpci/header.c:vpci_process_pending()
    vpci_process_pending() returns because v->domain != pdev->domain (i.e. d0 != d1)
    BAR0 rangeset still contains { 0-f }
xl create finishes

Then during domU boot, guest initializes BAR0:

drivers/vpci/header.c:guest_bar_write()
    bar->guest_addr = 0x23000000
drivers/vpci/header.c:modify_bars()
    BAR0: start 0xe0000, end 0xe000f, start_guest 0x23000, end_guest 0x2300f
    The d1 BAR0 rangeset now contains both { 0-f } and { 23000-2300f }
drivers/vpci/header.c:defer_map()
    raise_softirq(SCHEDULE_SOFTIRQ);
drivers/vpci/header.c:vpci_process_pending()
    rangeset_consume_ranges(bar->mem, map_range, &data);
drivers/vpci/header.c:map_range()
    The range { 0-f } fails the permissions check and we crash the domU (back in vpci_process_pending)


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 15:49:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 15:49:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608456.946927 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlAIz-0003Fx-0U; Tue, 26 Sep 2023 15:48:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608456.946927; Tue, 26 Sep 2023 15:48:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlAIy-0003Fq-U3; Tue, 26 Sep 2023 15:48:56 +0000
Received: by outflank-mailman (input) for mailman id 608456;
 Tue, 26 Sep 2023 15:48:55 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qwzO=FK=citrix.com=prvs=626a79b17=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlAIx-0003FU-B4
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 15:48:55 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3057c213-5c84-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 17:48:52 +0200 (CEST)
Received: from mail-bn8nam12lp2168.outbound.protection.outlook.com (HELO
 NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 26 Sep 2023 11:48:26 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BLAPR03MB5571.namprd03.prod.outlook.com (2603:10b6:208:298::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Tue, 26 Sep
 2023 15:48:23 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Tue, 26 Sep 2023
 15:48:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3057c213-5c84-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695743332;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=yhGNlqaQMSTHkk7ENVHcCFn0DSRl/LNas6ndvhnHfyI=;
  b=iaMJEAMiEFM/zD4QUgL8/anopMCWmK0mscDTsgntsU3o/ACBX64b+dyH
   u5IKY5Zu/HY2O+ol/eEtEfilmIFNd0wQDZdr5bhjvgfk/Lm/BBbtT2IDv
   sxMfsc2RCAeDiPu5Cq8AF8oT60BIMgYLzEPEB3dlt7Ubi8BQ+QOKzbt/t
   M=;
X-CSE-ConnectionGUID: whJoW+ptQCK3cnhVdIBuOg==
X-CSE-MsgGUID: UskK8craTKGbM9997GYpOA==
X-IronPort-RemoteIP: 104.47.55.168
X-IronPort-MID: 124276668
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:eDgl0q8jWs8xsQtHEHvhDrUDuH+TJUtcMsCJ2f8bNWPcYEJGY0x3n
 2EfW2GEaPfeYWqked8na4i39ktVuJLUn9UyGQdl/i48E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdmNKoV5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDklR9
 d4fF3MVcimopLm9xrKFRshGm+MseZyD0IM34hmMzBn/JNN/G9XpZfWP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWOilUvgNABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVwXmkBtxMRNVU8NZXm16wlmcJASE1elGe8Kjo1WGPQ/V2f
 hl8Fi0G6PJaGFaQZsLhUgKxumLCvh8YV9daCeQ85CmEz6aS6AGcbkA6STpGZM0jpdUBbzUg3
 V+UnPvkHTVq9raSTBq15rqS6D+/JyURBWsDfjMfCxsI5cH5p4M+hQ6JScxseJNZlfXwEDD0h
 jqM/C43guxJidZRjvvru1fanziru57FCBYv4RnaVX6k6QU/Y5O5Y4uv6h7Q6vMowJulc2Rtd
 UMsw6C2hN3ix7nWxURhnM1l8GmV2su4
IronPort-HdrOrdr: A9a23:VxA0das7RojoRDIadLxlGn397skDeNV00zEX/kB9WHVpm62j+/
 xG+c5x6faaslkssR0b9+xoWpPhfZqsz/9ICOAqVN/JMTUO01HYT72Kg7GSpgHIKmnT8fNcyL
 clU4UWMqyVMbGit7eZ3DWF
X-Talos-CUID: =?us-ascii?q?9a23=3AlWBo4mlZHZg9hhqQZmeNpEBtNM7XOWLd7nDvYFe?=
 =?us-ascii?q?kME1KE7aTSWGc2Yl5tMU7zg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3A8zL+ZQ4+vcR3XXYIddRMX2XgxoxV+KeNWEsXmKk?=
 =?us-ascii?q?llMOhZH0hZBislBOeF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,178,1694750400"; 
   d="scan'208";a="124276668"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=POBqUEn/rPuH5/DSyqE+46Sd80mQ3xglUr0GWg6eiElRu04lti3E8UUZB8SxH55iwpYJRiTHDOYpRLwxdgkihFM4dQllIH4W5k79w99Jw+tuKHHP9sXdrWaHMvXzwO/gsgBQEVmMngXsdtFhXbm1XEdZWyNJ6SBioflVUhiWAhRW+OKRuMv4FO/0hAr1/g3dEbwH9RvNyDB8uxM1qfyyyVBbe42rV93lfs6MAQRnUjN198vdbqKaoRLuoSOkEJA0Pss7nYEKQOArdX3jbTmG4ThaC0J66advop1gb45EUiTrM8pHYTxz4DcVDraHyEarAB9D8G4XOS+7yAWLDSDDPg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=MTaeyxMKfuiKQVkgVRQmjTm18PR5jhyKsMf85T9lVMU=;
 b=FTZX9vEf/GnlhxxFYQ6BAkyLS29w5Man44DRK4Zsvmn/DUUGNAhrBSKlD4VAj50yeRwj37fRVnqKTFj94BFNqpyG6nk9p4FYC+d8pEGKoZe5sW7qwOLYTxI1mk79XhsSejU2h7CmZn76nesqJx8uhzi8ozaEhFdM+BIwzU2cOA6Lt2ookRXAAmyUEm3fEQtp3FjHzZPM12VAFLAJC8NqrtOxfac1pIi9nwmXQ1uqXkGGrHavNWKpIS66uvJmtoMsRBVAMr3lwglkp+SUQCtLV1fKf96UhngKSxdYHH4ydqy4KkwusNqgj/ZdMU6cGj+KKhE6nIybhABTGhm9UWAWHg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=MTaeyxMKfuiKQVkgVRQmjTm18PR5jhyKsMf85T9lVMU=;
 b=DoyLP5K1lo6H+kyu4lrlwEWy760kXa30cBtyZLbBaGIWx+RLrrFbLEoivnxb6dzM+/a0a55ouOp/gL62qhi6+rxHXuoGh5INz4JTPkaylAFWWeYpg1AXBCAoAFYrPAomn4nKvr+IZ1RsWumvyF5syZVwHTj+zvubftBJhhenDzk=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Tue, 26 Sep 2023 17:48:17 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v9 15/16] xen/arm: vpci: check guest range
Message-ID: <ZRL9QalvI4VrDQhF@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-16-volodymyr_babchuk@epam.com>
 <ZQ1T8vImUxAaeLdj@MacBookPdeRoger>
 <0a1bc845-28b7-4af8-d6d9-cd5fc7bb4d74@amd.com>
 <ZRKRNcypuvP26luu@MacBookPdeRoger>
 <8a300dad-29d5-2017-70ad-09abc2c62368@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <8a300dad-29d5-2017-70ad-09abc2c62368@amd.com>
X-ClientProxiedBy: LO2P123CA0102.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:139::17) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BLAPR03MB5571:EE_
X-MS-Office365-Filtering-Correlation-Id: 025331f3-fdf6-4695-5549-08dbbea803d6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	K+CKt0NQyDuJd+pxIPDuwEnUXP5i/9IlrA3PazDib4sA31fylgvFoHyBImdA4Hhk463cexH1uOUQE+CwjzrVcuJ2TAXKkkQ+xoOKlANUui0kGurIUeuQGMwmbBDloUuEgBksldY7LWTHkLi7l5BAw4p3LmP2fzyPFbwJ93G6AeHXa8uSbvdUWAuhPQP3WPJcvPk/+rzHXngoJd4JUJxM00USZBGgx0dw2YhaAowSPPwYfVdsSCnt2K08H+FhtGzbxOshlEEpUrRN6Mta0za7SUAy3CTYOWsCsCCiKqBIumjJd2RCNWMT5PA0PlPgz2op3A8yh61lR1RfWyOjcUrtVIHiyhYs9bhNromkQ2GlLyMMPY8AE574aVuMuNPeYyn3Z83PebmHIT2zQjxcrLY6I46/oFZjvLq1Ad6dA787rHdACuCChn7nNTORj51tovUHSTrsHKI548dZpaSIRD+xtpXVGZSmjDqYiDI14NUIbFHt+WHc6eifp1EHkRRJvzNsRJStBEI3T96IRzRWo2u6df3YNPV5Z3v2kIcOyOUNmWjKywNS39XaqZFlvvprtbOj
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(376002)(346002)(39860400002)(366004)(136003)(396003)(230922051799003)(451199024)(186009)(1800799009)(26005)(5660300002)(41300700001)(85182001)(33716001)(2906002)(82960400001)(38100700002)(4326008)(86362001)(8936002)(478600001)(83380400001)(53546011)(6666004)(9686003)(6506007)(6486002)(6512007)(6916009)(316002)(8676002)(66556008)(66476007)(54906003)(66946007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eUlPTXRtdmNxMUp6TXJjaXdub0NHUHBIS2xLYTlWSzJGbWljRG1yRFgvM3g5?=
 =?utf-8?B?MGJOUVFzblhpdDYzOVEvNzZkRFFqcUhvSXorTWg0UnNHeHphclByVFlFc0Vj?=
 =?utf-8?B?N3JHNWUzTHBIZ2IzVzduRHllK2JRU3VubzRYOVgzSGZXS2RrbWlZeEFremN3?=
 =?utf-8?B?c1UxSnRuZjRoWEREY1NuY0J2TXVDRVpzeEFhZWI0TG9JaUVCZ3E4SDRsL3M4?=
 =?utf-8?B?T2ZCL3lKRjQ0VnhZUlpVU2lYZGlzT1MwRVB4OFpsUm5VREZ5VDlxRThXWHo2?=
 =?utf-8?B?S0g0NkluRktFUFlRVjc5RlZvckNmenh1LzNaNkp3MTV1Nm51THFRa21FcUlj?=
 =?utf-8?B?bTd4M2huRUc5cUlRTXNjUXA1MXRTcUZIbEhtUmRpN1BVR2p2bDJKRWRMSE5U?=
 =?utf-8?B?aENmNC9idnh1ZS9YcWxoK3dqRlNmenUyanF0YkdQbHBZanZqZUlNWDZDaW94?=
 =?utf-8?B?V0hjWnRiY0pZb2dIWi96STh2QXVQbFhpeXFWRVFiQkZxN2xORjVsRjlHUUNh?=
 =?utf-8?B?dkNQNVhPUnQrQU51TU5DUmd3UklvcWppcE1sNFp3ZElYVU91WGk0WFhJVFVu?=
 =?utf-8?B?THg3MXBPVERBdUxmU25aazM0Ui93cXhKcVk3Q2JxVG9xWVdpU215R0pQdUxk?=
 =?utf-8?B?OHd6enVWVUZpT2dxanExTllrSHViT0JlWWJFTHppb243Rm1JNlRMVzEweGlL?=
 =?utf-8?B?UWNJMm9wVTBJYU50WXRPRHhHMjFwUGpYdDhHYWlnMHg3bUdnMUN2QzN5WGhF?=
 =?utf-8?B?WlNKZllqSXJiZURLbkJVZFdFQzFBdTdjR2wyR3BFRUkvKzVWYk5yU2lsRWhh?=
 =?utf-8?B?U0lGOXFWbFFJS0NBZitCL1Z2WlFrZjFRL1V6N1V2RFlxaGFZb3hGWWt4UUJQ?=
 =?utf-8?B?VkNjUHRtT1hESFV5S3hGQkRvREY4dnMwWEZRQkhMQWVSVDlvbEZWRDAvN1Zh?=
 =?utf-8?B?UEtpamV6Mkc3Uk8waHlDa0RySTdId3J6dkZIS2ZxVVJaREx3T3dYaFBIY0I4?=
 =?utf-8?B?ZGhVY2Fmek9pdTN0V2ZhWlVBSEVTaWtqL1IzNkxDQ0JEaFh6RGlWbFduMEp1?=
 =?utf-8?B?MWVITE12N1Q0MmdqY0RiMDhyTDNBU3ZMcHJSNGhiRVB1NXd3RnpXREhVaUdH?=
 =?utf-8?B?dmdkZXBKQVI5eXZyZlRra1hPK3RTYU1tR1Y5TncwMFFnY0NtNVJQSzdaRmlL?=
 =?utf-8?B?TlhWV2NMUUtMaVZVTEtHYUhyaW1OcmtYdkdONGFjUk9oYnFWRDE5OW9NVFJT?=
 =?utf-8?B?U2dZRWVteWM5NUZpQ0VscHhGS1YyNEpYcHBJK3ZzcnkwdCtFTm5mcytJS29q?=
 =?utf-8?B?RXRDQkZHUVhCS1NJdmZWRmk2TlRjc3ljanNBa2NPMXRBZXR5NklnZmZlbFdu?=
 =?utf-8?B?THB1Sk5Ob2ptNVZkb0tSN2RlOVNhNUFwdzhhT2VzanpPaW56enhuS2Ric3RP?=
 =?utf-8?B?bzNLK1FsakdGZlNNMERiNUJvbFYwRjRidC95K1YrMENmMjdONUtYL3JhaFpx?=
 =?utf-8?B?YnhmcGI5OEJ1S3BWdGRQNVlNSVVTT1VlWlVjcFJuaWRUVGtvZ2J4NStoOWtS?=
 =?utf-8?B?aTkwS3NmcVRVTGIrcnRYUkRlQXdPT1dROTRRV2tZQ0xFS3VqOHhVUTJvWklK?=
 =?utf-8?B?UlVIOXZEV1VQSHFsYXduMkpjZXhONkphR1EzSEh2UHlPNnFYQTV1LzFESzl6?=
 =?utf-8?B?SS9EaUhyRXI4L0NmRndEWHBiOVNRMzQyQ2laQ0lXS0hBZE43U0syV0R0dm8r?=
 =?utf-8?B?RDZ3ZXQreHFTVm9HNGFQemx6OUY0MllXTkRFUU1KQzlGRU9kWEJBZ2t0OG05?=
 =?utf-8?B?eFdlQ3ozY29Ecm9kVGJjN3luR25BSXdybTRKZ1R5S1hXdjc4bWV2WEx4N2RK?=
 =?utf-8?B?T2x3M3crUnJKOFk0UGw0dHVvaDJrQUFCaDhGOGhXUEZ5MWduYzZpUlFmUklj?=
 =?utf-8?B?NG56am42SGgxc1RoVlloelVEdTFTMG1ZZjltTk5yTS9NU3VKVE0yWUh5Mnlr?=
 =?utf-8?B?QlZiRzhVMXVpY0lIU2dqc1hrcGRLOUVGa1NEZTRaSVkvOXlyL3JQZk5rYlZl?=
 =?utf-8?B?RTV5SkVNN05obkZlMnZrTlJjVlA5Mmd3bDR4QzdWZlJkNllkNUdIbjB3Smxp?=
 =?utf-8?Q?gWcUSrEyTTte300PhMnVYtBPM?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	rovD1gGi/yw0nPOrdr7o6MZlmnFV8hirWI24i6hx6zTAbZTTHau54jkCAsJT9RjUAzo9E74NMQgIE228ECrT7hvPwD9THmLyukiElGckCyuSKzlG2APexTYAt7ozLaSEJUrJV/Y0ut+z875sA80ETOA/017E+f/bXsC8C2iiwle6c8K5q4xPgiT7W5hSkjlcbTgwTvvY2znG9QFR/l4gMWF0HRE81gfG7GbYZz/bynogXEXz6FxqZVuBOsCUX1yJVQykBvwLmdpa3WwOYZeQOGLcWr6UuZzk3jXguYgPi6csvurC2POtq5wH71PvFzQ6h3NCnAwporZNMn2jh89iYLpDl58p8TsW/ci8z4ydNpJqFFNS0sfAXVMugTn6g4CfdezcGt/7FEMFRCWVz4kbDx6tcnqZBeWQThGrAiobOCDSdfti3x6Obg6gnw+ZsRgdEbZdPuP7LnqqxJ0JUsyPQPcKnqg6Q8eeZNeYFwEYzN6Gszb13fgdglTv8qWlZq/wzZkThgMA42aq4fCKk52R0WzVlLfFzBNMtp8DCyqlNkNutXJCQtqYuXuVvlUsOsY43cl18uvoJhwDn1cMUx9IY925sVfgeRQ+DFjuFrMZrtv0orzYBngbzdALCWHHpFlkZOTfn+NHWTIh8Zmkjazaq1dcp/1YAejlQ+7DKyzNi7iob+S+/KGKdZlf69+IEhfThW15SmIAEv3SX5/ZhRgf1+PstzrVA1K9bpgChRKcTfv6nGx7uO3rgMxmdLzJH929P8ZRTsRhyRN8h3abcXBc9CVrVO9ax23nVtFWtKzkUFVoreAaFABdI2e/Gk47SSXK
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 025331f3-fdf6-4695-5549-08dbbea803d6
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 15:48:23.4162
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: l6tCQ+F+Ocx/I/+YfyB/Ic0wO+2JapmeP9AGIMxCkCPudio2SWO7R4TsK2J2mxawN615asxBQF+5RUfbdAfwgw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR03MB5571

On Tue, Sep 26, 2023 at 11:27:48AM -0400, Stewart Hildebrand wrote:
> On 9/26/23 04:07, Roger Pau Monné wrote:
> > On Mon, Sep 25, 2023 at 05:49:00PM -0400, Stewart Hildebrand wrote:
> >> On 9/22/23 04:44, Roger Pau Monné wrote:
> >>> On Tue, Aug 29, 2023 at 11:19:47PM +0000, Volodymyr Babchuk wrote:
> >>>> From: Stewart Hildebrand <stewart.hildebrand@amd.com>
> >>>>
> >>>> Skip mapping the BAR if it is not in a valid range.
> >>>>
> >>>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> >>>> ---
> >>>>  xen/drivers/vpci/header.c | 9 +++++++++
> >>>>  1 file changed, 9 insertions(+)
> >>>>
> >>>> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> >>>> index 1d243eeaf9..dbabdcbed2 100644
> >>>> --- a/xen/drivers/vpci/header.c
> >>>> +++ b/xen/drivers/vpci/header.c
> >>>> @@ -345,6 +345,15 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
> >>>>               bar->enabled == !!(cmd & PCI_COMMAND_MEMORY) )
> >>>>              continue;
> >>>>
> >>>> +#ifdef CONFIG_ARM
> >>>> +        if ( !is_hardware_domain(pdev->domain) )
> >>>> +        {
> >>>> +            if ( (start_guest < PFN_DOWN(GUEST_VPCI_MEM_ADDR)) ||
> >>>> +                 (end_guest >= PFN_DOWN(GUEST_VPCI_MEM_ADDR + GUEST_VPCI_MEM_SIZE)) )
> >>>> +                continue;
> >>>> +        }
> >>>> +#endif
> >>>
> >>> Hm, I think this should be in a hook similar to pci_check_bar() that
> >>> can be implemented per-arch.
> >>>
> >>> IIRC at least on x86 we allow the guest to place the BARs whenever it
> >>> wants, would such placement cause issues to the hypervisor on Arm?
> >>
> >> Hm. I wrote this patch in a hurry to make v9 of this series work on ARM. In my haste I also forgot about the prefetchable range starting at GUEST_VPCI_PREFETCH_MEM_ADDR, but that won't matter as we can probably throw this patch out.
> >>
> >> Now that I've had some more time to investigate, I believe the check in this patch is more or less redundant to the existing check in map_range() added in baa6ea700386 ("vpci: add permission checks to map_range()").
> >>
> >> The issue is that during initialization bar->guest_addr is zeroed, and this initial value of bar->guest_addr will fail the permissions check in map_range() and crash the domain. When the guest writes a new valid BAR, the old invalid address remains in the rangeset to be mapped. If we simply remove the old invalid BAR from the rangeset, that seems to fix the issue. So something like this:
> > 
> > It does seem to me we are missing a proper cleanup of the rangeset
> > contents in some paths then.  In the above paragraph you mention "the
> > old invalid address remains in the rangeset to be mapped", how does it
> > get in there in the first place, and why is the rangeset not emptied
> > if the mapping failed?
> 
> Back in ("vpci/header: handle p2m range sets per BAR") I added a v->domain == pdev->domain check near the top of vpci_process_pending() as you appropriately suggested.
> 
> +    if ( v->domain != pdev->domain )
> +    {
> +        read_unlock(&v->domain->pci_lock);
> +        return false;
> +    }
> 
> I have also reverted this patch ("xen/arm: vpci: check guest range").
> 
> The sequence of events leading to the old value remaining in the rangeset are:
> 
> # xl pci-assignable-add 01:00.0
> drivers/vpci/vpci.c:vpci_deassign_device()
>     deassign 0000:01:00.0 from d0
> # grep pci domu.cfg
> pci = [ "01:00.0" ]
> # xl create domu.cfg
> drivers/vpci/vpci.c:vpci_deassign_device()
>     deassign 0000:01:00.0 from d[IO]
> drivers/vpci/vpci.c:vpci_assign_device()
>     assign 0000:01:00.0 to d1
>     bar->guest_addr is initialized to zero because of the line: pdev->vpci = xzalloc(struct vpci);
> drivers/vpci/header.c:init_bars()
> drivers/vpci/header.c:modify_bars()

I think I've commented this on another patch, but why is the device
added with memory decoding enabled?  I would expect the FLR performed
before assigning would leave the device with memory decoding disabled?

Otherwise we might have to force init_bars() to assume memory decoding
to be disabled, IOW: memory decoding would be set as disabled in the
guest cmd view, and leave the physical device cmd as-is.  We might
also consider switching memory decoding off unconditionally for domUs
on the physical device.

>     BAR0: start 0xe0000, end 0xe000f, start_guest 0x0, end_guest 0xf
>     The range { 0-f } is added to the BAR0 rangeset for d1
> drivers/vpci/header.c:defer_map()
>     raise_softirq(SCHEDULE_SOFTIRQ);
> drivers/vpci/header.c:vpci_process_pending()
>     vpci_process_pending() returns because v->domain != pdev->domain (i.e. d0 != d1)

I don't think we can easily handle BAR mappings during device
assignment with vPCI, because that would require adding some kind of
continuation support which we don't have ATM.  Might be better to just
switch memory decoding unconditionally off at init_bars() for domUs as
that's the easier solution right now that would allow us to move
forward.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 16:29:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 16:29:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608465.946938 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlAw5-0001lI-3J; Tue, 26 Sep 2023 16:29:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608465.946938; Tue, 26 Sep 2023 16:29:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlAw4-0001lB-Vr; Tue, 26 Sep 2023 16:29:20 +0000
Received: by outflank-mailman (input) for mailman id 608465;
 Tue, 26 Sep 2023 16:29:19 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlAw3-0001kx-IA; Tue, 26 Sep 2023 16:29:19 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlAw3-000709-DB; Tue, 26 Sep 2023 16:29:19 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlAw3-00045W-1M; Tue, 26 Sep 2023 16:29:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlAw3-0000mN-0o; Tue, 26 Sep 2023 16:29:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ASNJNBkk47gzzY99UARZ35KpPGHELXS6naocWcA7rmY=; b=3dfFfhIU/6aoooR1M7arLLdR0m
	TTSQDNs+4uzEaoUiOGQQWczAReJ1ebJdt9ZZJOXfjrk1vLBJDCLYofXBSEPk4hqPG8ZrPVihvPh+O
	yMQqODhi/djrZLQNWvNbdwZZ0KdLsElsB5Nxqbc1QJCA2JyWbGjhPSgeVxHD0wTEeljc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183179-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183179: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=cbb71b95dd708b1e26899bbe1e7bf9a85081fd60
X-Osstest-Versions-That:
    xen=d6351a10c80fcbbf2b5996d351b7181ba17b3b32
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 26 Sep 2023 16:29:19 +0000

flight 183179 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183179/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  cbb71b95dd708b1e26899bbe1e7bf9a85081fd60
baseline version:
 xen                  d6351a10c80fcbbf2b5996d351b7181ba17b3b32

Last test of basis   183156  2023-09-25 09:00:25 Z    1 days
Testing same since   183176  2023-09-26 09:00:28 Z    0 days    2 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Nicola Vetrini <nicola.vetrini@bugseng.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefano Stabellini <sstabellini@kernel.org>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   d6351a10c8..cbb71b95dd  cbb71b95dd708b1e26899bbe1e7bf9a85081fd60 -> smoke


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 17:44:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 17:44:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608472.946948 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlC62-0004i8-ED; Tue, 26 Sep 2023 17:43:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608472.946948; Tue, 26 Sep 2023 17:43:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlC62-0004i1-Az; Tue, 26 Sep 2023 17:43:42 +0000
Received: by outflank-mailman (input) for mailman id 608472;
 Tue, 26 Sep 2023 17:43:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IkXO=FK=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qlC61-0004hj-HB
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 17:43:41 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 34d14d99-5c94-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 19:43:32 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id A1574828556B;
 Tue, 26 Sep 2023 12:43:22 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id WypO6wFJ1aEq; Tue, 26 Sep 2023 12:43:21 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id B427382857EF;
 Tue, 26 Sep 2023 12:43:21 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id KuSDRRb40TjV; Tue, 26 Sep 2023 12:43:21 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 09688828556B;
 Tue, 26 Sep 2023 12:43:20 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 34d14d99-5c94-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com B427382857EF
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695750201; bh=awV4JiSFn5yl9G+gOQk8GMFw9Vl8DKZX7jYRBXuOro0=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=OstKRatVe6FlqHTO4+00blwjw1Rp31bM+2aOe9pGvBx8B44J9jEQnEH+5ZPd2rNdA
	 Qj9azrCBwjpcIlF8XsG0AaCrBHDtY/Pw4COWLP1cgHP8eevbbpGrmecwmObEQA9VtS
	 PtmdQo4zArYP/UnZdfQwgftfiD5/Zp/8HgcwLRfo=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <2f348eb1-1e66-22d4-dafe-20ada835155f@raptorengineering.com>
Date: Tue, 26 Sep 2023 12:43:19 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH 2/3] automation: Change build script to use arch defconfig
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org,
 Timothy Pearson <tpearson@raptorengineering.com>,
 Doug Goldstein <cardoe@cardoe.com>, Michal Orzel <michal.orzel@amd.com>
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
 <beb83dd70b15ee6bd896fb26532f5debf955cd48.1695681330.git.sanastasio@raptorengineering.com>
 <alpine.DEB.2.22.394.2309251609330.1403502@ubuntu-linux-20-04-desktop>
 <59f73c32-bde9-b0a4-00e8-24db1fea2d87@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <59f73c32-bde9-b0a4-00e8-24db1fea2d87@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/26/23 2:19 AM, Jan Beulich wrote:
> On 26.09.2023 01:12, Stefano Stabellini wrote:
>> On Mon, 25 Sep 2023, Shawn Anastasio wrote:
>>> Change automation build script to call the make defconfig target before
>>> setting CONFIG_DEBUG and extra options. This fixes issues on Power where
>>> the build fails without using the ppc64_defconfig.
>>>
>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>>> Reported-by: Jan Beulich <jbeulich@suse.com>
> 
> Nit: Tags in chronological order please (also affects patch 1).
>
Will fix.

>> What is the problem specifically? Is the issue that CONFIG_DEBUG enabled
>> before make olddefconfig causes certain DEBUG options also to default to
>> yes, and these additional options don't work well on Power?
> 
> No, the issue is that "make olddefconfig" takes the existing .config
> without even considering the arch's default configuration that was
> specified (KBUILD_DEFCONFIG).
> 
>>> --- a/automation/scripts/build
>>> +++ b/automation/scripts/build
>>> @@ -22,7 +22,12 @@ if [[ "${RANDCONFIG}" == "y" ]]; then
>>>      # RANDCONFIG implies HYPERVISOR_ONLY
>>>      HYPERVISOR_ONLY="y"
>>>  else
>>> -    echo "CONFIG_DEBUG=${debug}" > xen/.config
>>> +    # Start off with arch's defconfig
>>> +    make -C xen defconfig
>>> +
>>> +    # Drop existing CONFIG_DEBUG and replace with value of ${debug}
>>> +    sed -i 's/^CONFIG_DEBUG=[yn]//g' xen/.config
>>> +    echo "CONFIG_DEBUG=${debug}" >> xen/.config
>>>
>>>      if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then
>>>          echo "${EXTRA_XEN_CONFIG}" >> xen/.config
> 
> It never really became clear to me whether kconfig honors the first,
> last, or any random setting in a .config that it takes as input, when
> a certain option appears there more than once. The change you make
> implies it's consistently "last" - can you confirm that's the actual
> behavior of kconfig?
>

I actually tried to avoid this issue alltogether with the sed command I
added before the echo to drop any existing CONFIG_DEBUG= line.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 18:27:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 18:27:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608477.946957 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlCma-0002PJ-Lu; Tue, 26 Sep 2023 18:27:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608477.946957; Tue, 26 Sep 2023 18:27:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlCma-0002PC-J8; Tue, 26 Sep 2023 18:27:40 +0000
Received: by outflank-mailman (input) for mailman id 608477;
 Tue, 26 Sep 2023 18:27:39 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IkXO=FK=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qlCmZ-0002P6-5z
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 18:27:39 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5e46a7d4-5c9a-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 20:27:37 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id AA28D8285939;
 Tue, 26 Sep 2023 13:27:36 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id lfzENBVBczYH; Tue, 26 Sep 2023 13:27:36 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id E88358286870;
 Tue, 26 Sep 2023 13:27:35 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id D0QUL_gaQ5Tr; Tue, 26 Sep 2023 13:27:35 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 54A338285A06;
 Tue, 26 Sep 2023 13:27:35 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5e46a7d4-5c9a-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com E88358286870
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695752856; bh=o7aLie3p3On1sImTZQZMz05FqTAaKHHv02HjObuAiRM=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=tdkbQBYvhuHOfx0PJd8E8MKP9/sDGvAZUnF0rzB5RwRPFg8wxIbEKC7sKUS08sELP
	 LGu/tT9Vf7+11AExbpSuldzeoF3P7bMmD6Ad8WwPFhJvftF+RBYSGHoozRL2AMs7Mp
	 Bifl55OcQCPszUM1DJvu/LJO5QOaJcZxav44ihj4=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <11bf1197-6e02-a459-9fb2-d7a3fa284d4c@raptorengineering.com>
Date: Tue, 26 Sep 2023 13:27:34 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH 3/3] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
 <a47962a573eab38991a8aa3e09ca6b8bd3193b6c.1695681330.git.sanastasio@raptorengineering.com>
 <1e74d0b4-c2bf-46c2-b3df-515f6934cda1@suse.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <1e74d0b4-c2bf-46c2-b3df-515f6934cda1@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/26/23 2:32 AM, Jan Beulich wrote:
> On 26.09.2023 00:42, Shawn Anastasio wrote:
>> When building for Power with CONFIG_DEBUG unset, a compiler error gets
>> raised inside page_alloc.c's node_to_scrub function, likely due to the
>> increased optimization level:
>>
>> common/page_alloc.c: In function 'node_to_scrub.part.0':
>> common/page_alloc.c:1217:29: error: array subscript 1 is above array
>>             bounds of 'long unsigned int[1]' [-Werror=array-bounds]
>>  1217 |         if ( node_need_scrub[node] )
> 
> That's gcc13?
> 

Gcc 10.2.1, actually.

>> It appears that this is a false positive, given that in practice
>> cycle_node should never return a node ID >= MAX_NUMNODES as long as the
>> architecture's node_online_map is properly defined and initialized, so
>> this additional bounds check is only to satisfy GCC.
> 
> Looks very similar to the situation that c890499871cc ("timer: fix
> NR_CPUS=1 build with gcc13") was dealing with, just that here it's
> MAX_NUMNODES. I'd therefore prefer a solution similar to the one
> taken there, i.e. make code conditional rather than add yet more
> code.
> 

Looking at that commit, it doesn't look like conditionalizing this code
in the same way would be as clean -- it'd likely require separate
conditional blocks around the initial variable declarations and the
function body.

> Otherwise, ...
> 
>> --- a/xen/common/page_alloc.c
>> +++ b/xen/common/page_alloc.c
>> @@ -1211,6 +1211,9 @@ static unsigned int node_to_scrub(bool get_node)
>>          } while ( !cpumask_empty(&node_to_cpumask(node)) &&
>>                    (node != local_node) );
>>
>> +        if ( node >= MAX_NUMNODES )
>> +            break;
> 
> ... this clearly redundant check would need to gain a comment.
>

This isn't a problem. I'll submit a v2 with a commit.

> What I'm puzzled by is that on Arm we had no reports of a similar
> problem, despite NUMA also not getting selected there (yet).
>

As you pointed out in your follow-up email, it might be due to
CONFIG_DEBUG. It might also be because on ppc, our implementation of
find_next_bit (which is used by cycle_node) is declared static inline,
so the compiler has access to its definition when doing this sort of
static analysis. On Arm I believe the function lives in its own
compilation unit which might preclude GCC from making any assumptions
about its return value.

> Jan

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 18:36:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 18:36:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608482.946972 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlCuf-0004Kx-H4; Tue, 26 Sep 2023 18:36:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608482.946972; Tue, 26 Sep 2023 18:36:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlCuf-0004Kq-CG; Tue, 26 Sep 2023 18:36:01 +0000
Received: by outflank-mailman (input) for mailman id 608482;
 Tue, 26 Sep 2023 18:35:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IkXO=FK=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qlCud-0004Kk-Gn
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 18:35:59 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 87c3675d-5c9b-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 20:35:57 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id C6F3182854AF;
 Tue, 26 Sep 2023 13:35:55 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id zLpHj49KWDVj; Tue, 26 Sep 2023 13:35:55 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id E83678285510;
 Tue, 26 Sep 2023 13:35:54 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id hm6-p5H0jqlD; Tue, 26 Sep 2023 13:35:54 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 4AD0082854AF;
 Tue, 26 Sep 2023 13:35:54 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 87c3675d-5c9b-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com E83678285510
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695753355; bh=n+dQDsjv2Iwm5LbVam4kpYYM71OrO0kEEtUMUVG721s=;
	h=Message-ID:Date:MIME-Version:From:To;
	b=WiybqYpG15xFiY6qpujbFCWrInWam72vhXUv6b9p43CqxOXmCGWtTPH21HzPP4+zb
	 xlmUjfCPZRGv6H11HLFb53lMUqbKObmQaC9f6z1UHYy++LhIPzkRL+CJwzXHmLVqRL
	 Ip8lmgjdQl+oP0UTUkldva+HFuOORBHR4CodzC/Q=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <4919dd70-92c2-b62c-baa7-1733b039a621@raptorengineering.com>
Date: Tue, 26 Sep 2023 13:35:53 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH 2/3] automation: Change build script to use arch defconfig
Content-Language: en-US
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org,
 Timothy Pearson <tpearson@raptorengineering.com>,
 Doug Goldstein <cardoe@cardoe.com>, Michal Orzel <michal.orzel@amd.com>
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
 <beb83dd70b15ee6bd896fb26532f5debf955cd48.1695681330.git.sanastasio@raptorengineering.com>
 <alpine.DEB.2.22.394.2309251609330.1403502@ubuntu-linux-20-04-desktop>
 <59f73c32-bde9-b0a4-00e8-24db1fea2d87@suse.com>
 <2f348eb1-1e66-22d4-dafe-20ada835155f@raptorengineering.com>
In-Reply-To: <2f348eb1-1e66-22d4-dafe-20ada835155f@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/26/23 12:43 PM, Shawn Anastasio wrote:
> On 9/26/23 2:19 AM, Jan Beulich wrote:
>> On 26.09.2023 01:12, Stefano Stabellini wrote:
>>> On Mon, 25 Sep 2023, Shawn Anastasio wrote:
>>>> Change automation build script to call the make defconfig target before
>>>> setting CONFIG_DEBUG and extra options. This fixes issues on Power where
>>>> the build fails without using the ppc64_defconfig.
>>>>
>>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>>>> Reported-by: Jan Beulich <jbeulich@suse.com>
>>
>> Nit: Tags in chronological order please (also affects patch 1).
>>
> Will fix.
> 
>>> What is the problem specifically? Is the issue that CONFIG_DEBUG enabled
>>> before make olddefconfig causes certain DEBUG options also to default to
>>> yes, and these additional options don't work well on Power?
>>
>> No, the issue is that "make olddefconfig" takes the existing .config
>> without even considering the arch's default configuration that was
>> specified (KBUILD_DEFCONFIG).
>>
>>>> --- a/automation/scripts/build
>>>> +++ b/automation/scripts/build
>>>> @@ -22,7 +22,12 @@ if [[ "${RANDCONFIG}" == "y" ]]; then
>>>>      # RANDCONFIG implies HYPERVISOR_ONLY
>>>>      HYPERVISOR_ONLY="y"
>>>>  else
>>>> -    echo "CONFIG_DEBUG=${debug}" > xen/.config
>>>> +    # Start off with arch's defconfig
>>>> +    make -C xen defconfig
>>>> +
>>>> +    # Drop existing CONFIG_DEBUG and replace with value of ${debug}
>>>> +    sed -i 's/^CONFIG_DEBUG=[yn]//g' xen/.config
>>>> +    echo "CONFIG_DEBUG=${debug}" >> xen/.config
>>>>
>>>>      if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then
>>>>          echo "${EXTRA_XEN_CONFIG}" >> xen/.config
>>
>> It never really became clear to me whether kconfig honors the first,
>> last, or any random setting in a .config that it takes as input, when
>> a certain option appears there more than once. The change you make
>> implies it's consistently "last" - can you confirm that's the actual
>> behavior of kconfig?
>>
> 
> I actually tried to avoid this issue alltogether with the sed command I
> added before the echo to drop any existing CONFIG_DEBUG= line.
>

Just realized that options in $EXTRA_XEN_CONFIG would also be subject to
this which is likely what you meant to point out -- my apologies.

I've tested locally and Kconfig does indeed seem to honor the last
setting. It throws some warnings about the overridden symbol but the
build continues with the latest value, e.g:

.config:94:warning: override: reassigning to symbol DEBUG
.config:95:warning: override: reassigning to symbol DEBUG

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 18:42:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 18:42:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608486.946981 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlD0a-0006Fs-6B; Tue, 26 Sep 2023 18:42:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608486.946981; Tue, 26 Sep 2023 18:42:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlD0a-0006Fl-10; Tue, 26 Sep 2023 18:42:08 +0000
Received: by outflank-mailman (input) for mailman id 608486;
 Tue, 26 Sep 2023 18:42:07 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlD0Y-0006Fb-UO; Tue, 26 Sep 2023 18:42:06 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlD0Y-0001u6-Lf; Tue, 26 Sep 2023 18:42:06 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlD0Y-0001tL-6o; Tue, 26 Sep 2023 18:42:06 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlD0Y-0008Ft-6O; Tue, 26 Sep 2023 18:42:06 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=INtAgySzerthhgoacDYRnmcrHRx6oYcVwZK6g0nsENU=; b=rzA6K2YrABcDnX4UePuygFt9Vr
	ABZhTRdx0kjJMagO9riFEeRF+Okwlli+g3oKxcCGID3VOJGgTIJCgpnT8YMThseUcX720Pu26nwHo
	orHUunDsLqypHQIoog8to+AqpHM5oTLMTaIyVtEVj07HgwoMSn0MVh59ef2XPYjNho00=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183173-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183173: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start.2:fail:regression
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-amd64-i386-qemuu-rhel6hvm-intel:guest-start/redhat.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-vhd:guest-start:fail:heisenbug
    linux-5.4:test-amd64-i386-examine-uefi:xen-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:xen-boot:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-raw:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    linux-5.4:test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow:debian-hvm-install:fail:heisenbug
    linux-5.4:test-amd64-amd64-libvirt-vhd:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start.2:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 26 Sep 2023 18:42:06 +0000

flight 183173 linux-5.4 real [real]
flight 183182 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183173/
http://logs.test-lab.xenproject.org/osstest/logs/183182/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1  19 guest-start.2  fail in 183144 REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit2  14 guest-start      fail in 183144 pass in 183173
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183144 pass in 183173
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail in 183144 pass in 183173
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 183159 pass in 183144
 test-amd64-i386-qemuu-rhel6hvm-intel 14 guest-start/redhat.repeat fail in 183159 pass in 183173
 test-armhf-armhf-xl-vhd      13 guest-start      fail in 183159 pass in 183173
 test-amd64-i386-examine-uefi  6 xen-install      fail in 183166 pass in 183173
 test-armhf-armhf-xl-multivcpu  8 xen-boot        fail in 183166 pass in 183173
 test-armhf-armhf-libvirt-raw 13 guest-start      fail in 183166 pass in 183173
 test-armhf-armhf-libvirt-qcow2 13 guest-start    fail in 183166 pass in 183173
 test-armhf-armhf-xl-credit1  14 guest-start                fail pass in 183159
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow 12 debian-hvm-install fail pass in 183166
 test-amd64-amd64-libvirt-vhd 19 guest-start/debian.repeat  fail pass in 183166

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail blocked in 182613
 test-armhf-armhf-xl-rtds     19 guest-start.2           fail blocked in 182613
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 183159 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 183159 never pass
 test-armhf-armhf-xl    18 guest-start/debian.repeat fail in 183166 like 182613
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 183166 like 182613
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat    fail  like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   24 days
Testing same since   183129  2023-09-23 09:20:22 Z    3 days    7 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              fail    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 fail    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 18:55:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 18:55:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608494.946991 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlDDA-0008Ow-C3; Tue, 26 Sep 2023 18:55:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608494.946991; Tue, 26 Sep 2023 18:55:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlDDA-0008Op-8i; Tue, 26 Sep 2023 18:55:08 +0000
Received: by outflank-mailman (input) for mailman id 608494;
 Tue, 26 Sep 2023 18:55:07 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IkXO=FK=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qlDD9-0008Od-Lf
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 18:55:07 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 34d36939-5c9e-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 20:55:06 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 572B98285A03;
 Tue, 26 Sep 2023 13:55:05 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 0Vdzoy3fyqT9; Tue, 26 Sep 2023 13:55:04 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 4F7B382856E3;
 Tue, 26 Sep 2023 13:55:04 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id XGAs3b0EJ_7K; Tue, 26 Sep 2023 13:55:04 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id AC3A5828587F;
 Tue, 26 Sep 2023 13:55:03 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 34d36939-5c9e-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 4F7B382856E3
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695754504; bh=D5SRtpO3rGrT6QwItgwTk0eDHOrAHeVxgzl8M/+A/YY=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=cHSKB4ZFFRCz7xvKWd1n379a3wYWZF/HxmiO7364mcadS6cQVCwoP7yCQzxmlzSuP
	 PVs6OAkPTd4G6M2Lzmlcm8e2IQO/nWHHjlJnq2vlyE5gJo3kAJXlTybvUTtGnEWXxS
	 sHbUrhOdf2b/gstRRPtG8iY/9rH3ixNdfA0RtObM=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Michal Orzel <michal.orzel@amd.com>,
	Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v2 1/2] automation: Change build script to use arch defconfig
Date: Tue, 26 Sep 2023 13:54:55 -0500
Message-Id: <a949070e4730f55ac214e22a3dea92a5cc6ec7fa.1695754185.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1695754185.git.sanastasio@raptorengineering.com>
References: <cover.1695754185.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Change automation build script to call the make defconfig target before
setting CONFIG_DEBUG and extra options. This fixes issues on Power where
the build fails without using the ppc64_defconfig.

Reported-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
v2: No changes.

 automation/scripts/build | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/automation/scripts/build b/automation/scripts/build
index b4edcf010e..19dd9e8270 100755
--- a/automation/scripts/build
+++ b/automation/scripts/build
@@ -22,7 +22,12 @@ if [[ "${RANDCONFIG}" == "y" ]]; then
     # RANDCONFIG implies HYPERVISOR_ONLY
     HYPERVISOR_ONLY="y"
 else
-    echo "CONFIG_DEBUG=${debug}" > xen/.config
+    # Start off with arch's defconfig
+    make -C xen defconfig
+
+    # Drop existing CONFIG_DEBUG and replace with value of ${debug}
+    sed -i 's/^CONFIG_DEBUG=[yn]//g' xen/.config
+    echo "CONFIG_DEBUG=${debug}" >> xen/.config

     if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then
         echo "${EXTRA_XEN_CONFIG}" >> xen/.config
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 18:55:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 18:55:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608496.947011 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlDDB-0000Rz-Rt; Tue, 26 Sep 2023 18:55:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608496.947011; Tue, 26 Sep 2023 18:55:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlDDB-0000Rs-Oo; Tue, 26 Sep 2023 18:55:09 +0000
Received: by outflank-mailman (input) for mailman id 608496;
 Tue, 26 Sep 2023 18:55:08 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IkXO=FK=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qlDDA-0008Od-AW
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 18:55:08 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 35009f9d-5c9e-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 20:55:06 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 9E06B82856E3;
 Tue, 26 Sep 2023 13:55:05 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id SN1cR25zWsfL; Tue, 26 Sep 2023 13:55:04 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id C72E5828597C;
 Tue, 26 Sep 2023 13:55:04 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 04_qlkOyIH00; Tue, 26 Sep 2023 13:55:04 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 56B5F8285A03;
 Tue, 26 Sep 2023 13:55:04 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 35009f9d-5c9e-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com C72E5828597C
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695754504; bh=1bghThgK+U6iQoTmvMbxS90PPSZnvYYz37y3sqDtbWc=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=ZXC4+7ocqcH/hW7002q69SDtMTSdvZEQPAm62UyHFQtQkPZonxTwLIlAMk0uPEXD3
	 tGhhkYeBvoKHVG5FycuEjo9T8odOkQWc/CRWm8Ysu/r/6EQsHGbmrijECW15HKWa+f
	 M8Ivb4IP68lBSsLttvYKJFcmOHNyeK96K1sJNY4U=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2 2/2] xen/common: Add NUMA node id bounds check to page_alloc.c/node_to_scrub
Date: Tue, 26 Sep 2023 13:54:56 -0500
Message-Id: <cbecf35392441b03dc3ccd2a119b6fbdbf13b855.1695754185.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1695754185.git.sanastasio@raptorengineering.com>
References: <cover.1695754185.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

When building for Power with CONFIG_DEBUG unset, a compiler error gets
raised inside page_alloc.c's node_to_scrub function:

common/page_alloc.c: In function 'node_to_scrub.part.0':
common/page_alloc.c:1217:29: error: array subscript 1 is above array
            bounds of 'long unsigned int[1]' [-Werror=array-bounds]
 1217 |         if ( node_need_scrub[node] )

It appears that this is a false positive, given that in practice
cycle_node should never return a node ID >= MAX_NUMNODES as long as the
architecture's node_online_map is properly defined and initialized, so
this additional bounds check is only to satisfy GCC.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
v2: Add comment to explain the bounds check.

 xen/common/page_alloc.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
index 35d9a26fa6..c53f917dbc 100644
--- a/xen/common/page_alloc.c
+++ b/xen/common/page_alloc.c
@@ -1211,6 +1211,14 @@ static unsigned int node_to_scrub(bool get_node)
         } while ( !cpumask_empty(&node_to_cpumask(node)) &&
                   (node != local_node) );

+        /*
+         * In practice `node` will always be within MAX_NUMNODES, but GCC can't
+         * always see that, so an explicit check is necessary to avoid tripping
+         * its out-of-bounds array access warning (-Warray-bounds).
+         */
+        if ( node >= MAX_NUMNODES )
+            break;
+
         if ( node == local_node )
             break;

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 18:55:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 18:55:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608495.946995 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlDDA-0008SD-Kp; Tue, 26 Sep 2023 18:55:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608495.946995; Tue, 26 Sep 2023 18:55:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlDDA-0008R5-Gr; Tue, 26 Sep 2023 18:55:08 +0000
Received: by outflank-mailman (input) for mailman id 608495;
 Tue, 26 Sep 2023 18:55:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IkXO=FK=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qlDD9-0008Oe-OG
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 18:55:07 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 349513e6-5c9e-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 20:55:05 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 8E4ED828587F;
 Tue, 26 Sep 2023 13:55:04 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id z7IxOIFD-phf; Tue, 26 Sep 2023 13:55:03 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id BADBA828597C;
 Tue, 26 Sep 2023 13:55:03 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id aT9Y6KzfcE3r; Tue, 26 Sep 2023 13:55:03 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 23F0A82856E3;
 Tue, 26 Sep 2023 13:55:03 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 349513e6-5c9e-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com BADBA828597C
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695754503; bh=aEtO37WaeynTwQEG42ptd6iUUobibnEC7GuTBLy7PiY=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=ElyF2L3ufEziikFUQLAI7FEJljc1jUQLdD5hO1T8aE0eOpd4vBYkN8TjWtxNEFUBw
	 6POi3Qg84HkYfHbF8CJKe2VARiAZGBHIKUQbn5Lw7f8ZI3tyGAHNq0CmtYcDYb8v1P
	 oOWTN+HWelR7KXxfiYWSGvRMKuoXEU0tKMq8f/6c=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v2 0/2] Fix Power CI build
Date: Tue, 26 Sep 2023 13:54:54 -0500
Message-Id: <cover.1695754185.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Hello all,

This series contains a few minor fixes to the CI config and one
additional patch to common/ that resolve ppc64-specific CI failures
that Jan discovered.

Thanks,

Shawn Anastasio (2):
  automation: Change build script to use arch defconfig
  xen/common: Add NUMA node id bounds check to
    page_alloc.c/node_to_scrub

 automation/scripts/build | 7 ++++++-
 xen/common/page_alloc.c  | 8 ++++++++
 2 files changed, 14 insertions(+), 1 deletion(-)

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 19:49:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 19:49:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608521.947035 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlE3U-0001nX-9N; Tue, 26 Sep 2023 19:49:12 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608521.947035; Tue, 26 Sep 2023 19:49:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlE3U-0001nQ-6s; Tue, 26 Sep 2023 19:49:12 +0000
Received: by outflank-mailman (input) for mailman id 608521;
 Tue, 26 Sep 2023 19:49:11 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=d5Ia=FK=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qlE3T-0001nK-Dz
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 19:49:11 +0000
Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com
 [2a00:1450:4864:20::329])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c1f9a066-5ca5-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 21:49:09 +0200 (CEST)
Received: by mail-wm1-x329.google.com with SMTP id
 5b1f17b1804b1-4053c6f0d55so96162795e9.0
 for <xen-devel@lists.xenproject.org>; Tue, 26 Sep 2023 12:49:09 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 k10-20020adfd22a000000b0032320a9b010sm7637032wrh.28.2023.09.26.12.49.07
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 26 Sep 2023 12:49:08 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c1f9a066-5ca5-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695757748; x=1696362548; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=0C4Ca2jCC7lXg3RovRvqqjoiMqNBb0XFt0Nq10n5wk4=;
        b=ivb9GAzlFjPpaQRsX9EWKdRqNmOIohhtckXUECH3a+BH95HLKQQ1xRx2lMUncsCodh
         L2g0lpV5Hwf7CdN9w7KuJY16hI3NlsAhorMmb8zJVFlXvEOVwKWc0xDFPcocdwHu/nqI
         jxSEr2TBQxqVQakuWv+XGm25tv5EzWliXTVCA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695757748; x=1696362548;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=0C4Ca2jCC7lXg3RovRvqqjoiMqNBb0XFt0Nq10n5wk4=;
        b=HKrfRy8ihq7bUflKAOXNb5MYjTfsJFeS7dp3slwsuWWyq238qc6vLne8IAhyfpkYKb
         NIzPM6EJMaK0Ts9+nBoI2v94BJHkn/mf/ygIZrMyAAzZSI+3KEI6xIq8L9dGhbBZY8qu
         hmy+T21g36X0hDAWOzCfzv7Wu58O7ZPWYM2sSo5q5K0UVU6EpmBo5uOaFOn3WLqL1Ifh
         5F7PsKKax6j4RO8ndvF+vm/b5F2z74QJEGzw4/cTIEFPuwb+ZWh79QR8DICrWPsAAVoJ
         NPnE8hPsm+6toDWGQYmHSWtMiSNjX0iG+vSEwHgqItyt0qkG9+wLg3mNV0GycO6o0HZj
         Z5Lg==
X-Gm-Message-State: AOJu0YzGOPo86gy1zlXU/MHH978Y7jI6E6YOk8lZkbCxu9TZrbpSAeWU
	frqf1wf4cGGLQfm1l3isXV0nCw==
X-Google-Smtp-Source: AGHT+IFg5JEaK3DKnDo0Po+XlxymZeGE4vAuPoS6f4RM0NSEn6K5mVvjgJBjPAlmp9asUUZpbGDA2Q==
X-Received: by 2002:a05:600c:2056:b0:403:cab3:b763 with SMTP id p22-20020a05600c205600b00403cab3b763mr9617828wmg.33.1695757748513;
        Tue, 26 Sep 2023 12:49:08 -0700 (PDT)
Message-ID: <6856be3e-1f06-6c5a-5d0b-7ca72200d456@citrix.com>
Date: Tue, 26 Sep 2023 20:49:07 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 1/3] automation: Drop ppc64le-*randconfig jobs
Content-Language: en-GB
To: Shawn Anastasio <sanastasio@raptorengineering.com>,
 xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Doug Goldstein <cardoe@cardoe.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Jan Beulich <jbeulich@suse.com>
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
 <76d21ac8a0de7d5ebac8b39a8d552b931a6302a3.1695681330.git.sanastasio@raptorengineering.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
In-Reply-To: <76d21ac8a0de7d5ebac8b39a8d552b931a6302a3.1695681330.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 25/09/2023 11:42 pm, Shawn Anastasio wrote:
> Since ppc64le is still undergoing early bringup, disable the randconfig
> CI build which was causing spurious CI failures.
>
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> Reported-by: Jan Beulich <jbeulich@suse.com>
> ---
>  automation/gitlab-ci/build.yaml | 18 ------------------
>  1 file changed, 18 deletions(-)
>
> diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
> index 1619e9a558..32af30cced 100644
> --- a/automation/gitlab-ci/build.yaml
> +++ b/automation/gitlab-ci/build.yaml
> @@ -563,24 +563,6 @@ debian-bullseye-gcc-ppc64le-debug:
>      KBUILD_DEFCONFIG: ppc64_defconfig
>      HYPERVISOR_ONLY: y
>  
> -debian-bullseye-gcc-ppc64le-randconfig:
> -  extends: .gcc-ppc64le-cross-build
> -  variables:
> -    CONTAINER: debian:bullseye-ppc64le
> -    KBUILD_DEFCONFIG: ppc64_defconfig
> -    RANDCONFIG: y
> -    EXTRA_FIXED_RANDCONFIG:
> -      CONFIG_COVERAGE=n
> -
> -debian-bullseye-gcc-ppc64le-debug-randconfig:
> -  extends: .gcc-ppc64le-cross-build-debug
> -  variables:
> -    CONTAINER: debian:bullseye-ppc64le
> -    KBUILD_DEFCONFIG: ppc64_defconfig
> -    RANDCONFIG: y
> -    EXTRA_FIXED_RANDCONFIG:
> -      CONFIG_COVERAGE=n

I know this has been committed, but it shouldn't have been.  Randconfig
is important to have even at this point in the bringup.

For options which are known-incompatible, append them to
EXTRA_FIXED_RANDCONFIG, just like COVERAGE already is.

However, it was only grant tables which showed up as broken, and ought
to be easy to address.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 19:56:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 19:56:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608524.947045 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlEAH-0003st-W4; Tue, 26 Sep 2023 19:56:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608524.947045; Tue, 26 Sep 2023 19:56:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlEAH-0003sm-T8; Tue, 26 Sep 2023 19:56:13 +0000
Received: by outflank-mailman (input) for mailman id 608524;
 Tue, 26 Sep 2023 19:56:13 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=d5Ia=FK=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qlEAG-0003sg-Uy
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 19:56:12 +0000
Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com
 [2a00:1450:4864:20::333])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id be10437a-5ca6-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 21:56:12 +0200 (CEST)
Received: by mail-wm1-x333.google.com with SMTP id
 5b1f17b1804b1-4053c6f1087so88310715e9.0
 for <xen-devel@lists.xenproject.org>; Tue, 26 Sep 2023 12:56:12 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 u2-20020a05600c210200b004063d8b43e7sm2163467wml.48.2023.09.26.12.56.10
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 26 Sep 2023 12:56:11 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: be10437a-5ca6-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695758171; x=1696362971; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=dA2s4CZaZ9THP0vP5ijFooET2LcGlUDtBm1SuCrg4uQ=;
        b=ZEOzSGA/wJLR0dof4xhYhFvYbHbggH0l4MKDikoD92LtInNmi+JUlWCiwkPIJBVj1w
         E76ZFn8/aeR68BqViKH5KUrcNU9VBJs7bLPiba0Z8to6Q47Z2t/jZubiBVaaAwcsRPyl
         whIrG0TNdrYQBvaOYlAVzfwP3XiqQN4u8/GGA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695758171; x=1696362971;
        h=content-transfer-encoding:in-reply-to:from:references:cc:to
         :content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=dA2s4CZaZ9THP0vP5ijFooET2LcGlUDtBm1SuCrg4uQ=;
        b=SKpOLZ1C/nPCA6wEZ0oYIqkjsYRXDPV7wnKnfjmrR0kelSK8jsFm3zgZlI3lgGfl3A
         V+IVM33H6E4IsOUEP6orAxUA3BrakGksOJjoB7S4uZPHXAxPDD/6isQ82v2HKu6/XiCv
         F4Uo1J66QDljQU9w8Y4tzoCJ05KKK6RwfPCLYKzjMFK41xu+dSSG7qJFlkn6fcH5lMuI
         dWlOxjVwuCpxldqQRJfBavNSjsSCGRLNEvRaHKb8X8R8x1w5i2KjlnHeQGhjQkoI9wSI
         a/YVfr5TzwH7viIuz3eOXAnS49QywJPtRLN7yosSmKsPwLrpnB8VjZ+89oSeVj6+Aenv
         05AQ==
X-Gm-Message-State: AOJu0Yw2tJkZ0qVv6BxEcZTm8j8JKx/sOG0hjiO7hWTn0hKMS1Z7lZFQ
	M71SlRekCLrkQ4oD7dSZBjL9EQ==
X-Google-Smtp-Source: AGHT+IHjN4h+bpRSrXrcqvRCMHK+1TTLx9451giRber/OzXtHpE2e0oKc9piH6itBvbRUsyBd3FKeQ==
X-Received: by 2002:a7b:ce11:0:b0:3fe:1af6:6542 with SMTP id m17-20020a7bce11000000b003fe1af66542mr9533055wmc.33.1695758171362;
        Tue, 26 Sep 2023 12:56:11 -0700 (PDT)
Message-ID: <0eda179a-2f64-39b3-c604-7aaa3b2659be@citrix.com>
Date: Tue, 26 Sep 2023 20:56:10 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2 1/2] automation: Change build script to use arch
 defconfig
Content-Language: en-GB
To: Shawn Anastasio <sanastasio@raptorengineering.com>,
 xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Doug Goldstein <cardoe@cardoe.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Michal Orzel <michal.orzel@amd.com>, Jan Beulich <jbeulich@suse.com>
References: <cover.1695754185.git.sanastasio@raptorengineering.com>
 <a949070e4730f55ac214e22a3dea92a5cc6ec7fa.1695754185.git.sanastasio@raptorengineering.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
In-Reply-To: <a949070e4730f55ac214e22a3dea92a5cc6ec7fa.1695754185.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 26/09/2023 7:54 pm, Shawn Anastasio wrote:
> diff --git a/automation/scripts/build b/automation/scripts/build
> index b4edcf010e..19dd9e8270 100755
> --- a/automation/scripts/build
> +++ b/automation/scripts/build
> @@ -22,7 +22,12 @@ if [[ "${RANDCONFIG}" == "y" ]]; then
>      # RANDCONFIG implies HYPERVISOR_ONLY
>      HYPERVISOR_ONLY="y"
>  else
> -    echo "CONFIG_DEBUG=${debug}" > xen/.config
> +    # Start off with arch's defconfig
> +    make -C xen defconfig
> +
> +    # Drop existing CONFIG_DEBUG and replace with value of ${debug}
> +    sed -i 's/^CONFIG_DEBUG=[yn]//g' xen/.config
> +    echo "CONFIG_DEBUG=${debug}" >> xen/.config

Kconfig is latest-takes precedence, which is why we always append for
this and the other related options.  There's no need for sed to drop the
old value.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 20:54:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 20:54:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608528.947056 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlF4S-0004wb-3Q; Tue, 26 Sep 2023 20:54:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608528.947056; Tue, 26 Sep 2023 20:54:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlF4S-0004wU-0r; Tue, 26 Sep 2023 20:54:16 +0000
Received: by outflank-mailman (input) for mailman id 608528;
 Tue, 26 Sep 2023 20:54:14 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=d5Ia=FK=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qlF4Q-0004wM-Cv
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 20:54:14 +0000
Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com
 [2a00:1450:4864:20::336])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d7effe06-5cae-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 22:54:11 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-40535597f01so97812155e9.3
 for <xen-devel@lists.xenproject.org>; Tue, 26 Sep 2023 13:54:11 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 m28-20020a05600c3b1c00b004053a2138bfsm14512674wms.12.2023.09.26.13.54.10
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Tue, 26 Sep 2023 13:54:10 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d7effe06-5cae-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695761651; x=1696366451; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=vmzVlZEt0c6r9t6B5QTRO0H5Q1XVtRZ4v0aC2ION6b8=;
        b=WvhgWeJhfDWlGYO5OhuEWv7awCb2eyJcQTE/vwTQFqce28lkEkI9k9ztrhuzicoF/8
         Mr13wHqVeKIDbFBq4N3B1w+RQ/GQNjC487QIJqSpua43nhmvQIRfGrr1pTKg5FIsdhza
         XTJvCImP768VbuHJrKSurD+A71FdTheDIaNhw=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695761651; x=1696366451;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=vmzVlZEt0c6r9t6B5QTRO0H5Q1XVtRZ4v0aC2ION6b8=;
        b=vKmpk0/lwSiwa4V3b/nnhrSuJ4uKbWeohdVm5C7goQG23kanU6y0m/HR8KBs4snYwj
         TGPvzDaedhyI6rlmhlSs1yfvDu90Y0vFJfMwRxy3HCvKRQOssXPPN3W6wQzsN8jFhCRZ
         yQKBtapPT2V5XHA2kaKAmmIV3z84lhWGEz+DbG5deoOx2yfp2nKhjAEFQBcE3OVRzG/f
         JgdFHSuVGHqNqRrL3lS2L5kQnDmcalAyYR9CVU4rMJUiCH/zJVjf1LK+3Hn/ZxoB/zsL
         3Qlg+Ky/0g1Fc7+/o8yHAcXFgyDfDrJwwZo8yjQOCaTP2MTW1zk/agVWm2I2ckmwnbnU
         yQDg==
X-Gm-Message-State: AOJu0YxA8r9Dk85CGdYs+WZjvL1amyvLAFE4Ont0Nj0007dxvcDr2lLQ
	zC1OEQUSpY3FUc/mJniLo0Q+ug==
X-Google-Smtp-Source: AGHT+IF00xUdXGTMEDJWtP1B29tq5VF920ZbP+591zaQ8f4U+77XwiwsbXg+aCXCJjMWBYNE44yTOg==
X-Received: by 2002:a05:600c:218b:b0:405:3f06:c075 with SMTP id e11-20020a05600c218b00b004053f06c075mr95363wme.6.1695761650732;
        Tue, 26 Sep 2023 13:54:10 -0700 (PDT)
Message-ID: <2afa2ce7-ce22-ed47-07fe-0165e58302c6@citrix.com>
Date: Tue, 26 Sep 2023 21:54:10 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH v2 2/2] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
Content-Language: en-GB
To: Shawn Anastasio <sanastasio@raptorengineering.com>,
 xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <cover.1695754185.git.sanastasio@raptorengineering.com>
 <cbecf35392441b03dc3ccd2a119b6fbdbf13b855.1695754185.git.sanastasio@raptorengineering.com>
In-Reply-To: <cbecf35392441b03dc3ccd2a119b6fbdbf13b855.1695754185.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 26/09/2023 7:54 pm, Shawn Anastasio wrote:
> When building for Power with CONFIG_DEBUG unset, a compiler error gets
> raised inside page_alloc.c's node_to_scrub function:
>
> common/page_alloc.c: In function 'node_to_scrub.part.0':
> common/page_alloc.c:1217:29: error: array subscript 1 is above array
>             bounds of 'long unsigned int[1]' [-Werror=array-bounds]
>  1217 |         if ( node_need_scrub[node] )
>
> It appears that this is a false positive, given that in practice
> cycle_node should never return a node ID >= MAX_NUMNODES as long as the
> architecture's node_online_map is properly defined and initialized, so
> this additional bounds check is only to satisfy GCC.

If GCC thinks it's got an index of 1 here, then it thinks it's proved
that a 1 gets passed.  But the fact that cycle_node() really can return
1 if one variable gets tweaked in memory means that logic derived on
this property is broken.

But we've got even more basic problems to fix first.

xen$ git grep -B1 '__read_mostly node_online_map'
arch/arm/smpboot.c-45-/* Fake one node for now. See also asm/numa.h */
arch/arm/smpboot.c:46:nodemask_t __read_mostly node_online_map = { { [0]
= 1UL } };
arch/ppc/stubs.c-25-
arch/ppc/stubs.c:26:nodemask_t __read_mostly node_online_map = { { [0] =
1UL } };
common/numa.c-44-
common/numa.c:45:nodemask_t __read_mostly node_online_map = { { [0] =
1UL } };

There are 3 identical definitions of node_online_map, one for the
architecture which really supports NUMA, and two for the stubs which don't.

And the bug here is that code outside of CONFIG_NUMA assumes NUMA is
valid, including several places in page_alloc.c,
domain_set_node_affinity(), credit1 and sysctl.  XEN_SYSCTL_numainfo
even has a bigger sin of using a static MAX_NUMNODES array when it
doesn't need an array in the first place.

It's rude for xen/nodemask.h to short circuit some of the operations on
node_online_map based on MAX_NUMNODES but not others.

If nothing else, the fallback for "not really NUMA" needs providing by
the common code and not by the arch stubs.  When that is sorted, we
might have more consistent behaviour to investigate.

~Andrew


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 21:15:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 21:15:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608533.947066 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlFOJ-0008Qx-Sc; Tue, 26 Sep 2023 21:14:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608533.947066; Tue, 26 Sep 2023 21:14:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlFOJ-0008Qq-PP; Tue, 26 Sep 2023 21:14:47 +0000
Received: by outflank-mailman (input) for mailman id 608533;
 Tue, 26 Sep 2023 21:14:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=MAuE=FK=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlFOI-0008Qk-EE
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 21:14:46 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org
 [2604:1380:4601:e00::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b692f1b6-5cb1-11ee-878a-cb3800f73035;
 Tue, 26 Sep 2023 23:14:44 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 6A847B8122A;
 Tue, 26 Sep 2023 21:14:43 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 72834C433BF;
 Tue, 26 Sep 2023 21:14:41 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b692f1b6-5cb1-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695762882;
	bh=vo2Im/iz+wh85Pl4S3lBcx8aJzPZPulU4z36GHMBHzU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=iIggtdISM8DlV5y/b3qL68kOMipsgLSGiHqKv3C8N/J1vnNQyCsxu6emZu4tB4bJV
	 aeMnYDTSxKUyOr5K2mTsD1eeyP2N0tWsb3lcJ+OyiwCyqSvPtDjYX84g32p9as+Lmd
	 rB1IkzGdAZDftp9gLN2hu/4fHy4bOGH7GPcVx/nfCmFInh6neHdIajSna8SsDoJL48
	 CUsl6BFewvXK+8BA8rm+ILDLFUZXmXgKFN2MXMWANO7NXnxndC6XJGtOtrsNPVOWPJ
	 A/q4HDGcvWAj+GPM8wBb0P1y6E6adu6yA6OdtmjkSkK6Kw/vSRHm5DIxlekdRmwV43
	 B/EWvnGpfaFlQ==
Date: Tue, 26 Sep 2023 14:14:39 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Shawn Anastasio <sanastasio@raptorengineering.com>
cc: xen-devel@lists.xenproject.org, 
    Timothy Pearson <tpearson@raptorengineering.com>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, 
    Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2 2/2] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
In-Reply-To: <cbecf35392441b03dc3ccd2a119b6fbdbf13b855.1695754185.git.sanastasio@raptorengineering.com>
Message-ID: <alpine.DEB.2.22.394.2309261414310.1403502@ubuntu-linux-20-04-desktop>
References: <cover.1695754185.git.sanastasio@raptorengineering.com> <cbecf35392441b03dc3ccd2a119b6fbdbf13b855.1695754185.git.sanastasio@raptorengineering.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 26 Sep 2023, Shawn Anastasio wrote:
> When building for Power with CONFIG_DEBUG unset, a compiler error gets
> raised inside page_alloc.c's node_to_scrub function:
> 
> common/page_alloc.c: In function 'node_to_scrub.part.0':
> common/page_alloc.c:1217:29: error: array subscript 1 is above array
>             bounds of 'long unsigned int[1]' [-Werror=array-bounds]
>  1217 |         if ( node_need_scrub[node] )
> 
> It appears that this is a false positive, given that in practice
> cycle_node should never return a node ID >= MAX_NUMNODES as long as the
> architecture's node_online_map is properly defined and initialized, so
> this additional bounds check is only to satisfy GCC.
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> v2: Add comment to explain the bounds check.
> 
>  xen/common/page_alloc.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
> index 35d9a26fa6..c53f917dbc 100644
> --- a/xen/common/page_alloc.c
> +++ b/xen/common/page_alloc.c
> @@ -1211,6 +1211,14 @@ static unsigned int node_to_scrub(bool get_node)
>          } while ( !cpumask_empty(&node_to_cpumask(node)) &&
>                    (node != local_node) );
> 
> +        /*
> +         * In practice `node` will always be within MAX_NUMNODES, but GCC can't
> +         * always see that, so an explicit check is necessary to avoid tripping
> +         * its out-of-bounds array access warning (-Warray-bounds).
> +         */
> +        if ( node >= MAX_NUMNODES )
> +            break;
> +
>          if ( node == local_node )
>              break;
> 
> --
> 2.30.2
> 


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 21:18:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 21:18:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608537.947075 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlFRf-0000bZ-A6; Tue, 26 Sep 2023 21:18:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608537.947075; Tue, 26 Sep 2023 21:18:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlFRf-0000bS-7X; Tue, 26 Sep 2023 21:18:15 +0000
Received: by outflank-mailman (input) for mailman id 608537;
 Tue, 26 Sep 2023 21:18:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=MAuE=FK=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlFRd-0000bK-Iu
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 21:18:13 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 31cfe4f8-5cb2-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 23:18:11 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 8CBC2614B8;
 Tue, 26 Sep 2023 21:18:09 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2D696C433BF;
 Tue, 26 Sep 2023 21:18:08 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 31cfe4f8-5cb2-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695763089;
	bh=8lgzuo2zOnD44H3Qr1XjRoqV9c6lbudhHO3HMVDASgQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=WqPitVzI1sWqljw7ux3gk5u0KQ5TssvyOwQfO5z7hQqI+W+VYvVjN0FsjcqZr9PRY
	 7IBTkbuAv7CPmvGLdHOQrxaW6hwvPH857r9lAU6u1IP+io22VcStFyYDN8hsDbj+cy
	 ecmUtlCTc1qx50M0RV5OubWsYOB47leo3Z9ubAE1N8D0sffktD0wRfVrxR06/JIms9
	 uoNXQLj25KEQGOOxNOKhpBJXWgRJwntG4ThC3T25mqV+l7cLCxgHaPSBqmClfermqY
	 iEPQ8dvyZNot6Lgt8El+X8WcJtsZ8c+h95KBQ1G2iSoPmg1x45SQwtp0sctcu4S4Ed
	 0XBQ07ljCyoCw==
Date: Tue, 26 Sep 2023 14:18:06 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Andrew Cooper <andrew.cooper3@citrix.com>
cc: Shawn Anastasio <sanastasio@raptorengineering.com>, 
    xen-devel@lists.xenproject.org, 
    Timothy Pearson <tpearson@raptorengineering.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Michal Orzel <michal.orzel@amd.com>, Jan Beulich <jbeulich@suse.com>
Subject: Re: [PATCH v2 1/2] automation: Change build script to use arch
 defconfig
In-Reply-To: <0eda179a-2f64-39b3-c604-7aaa3b2659be@citrix.com>
Message-ID: <alpine.DEB.2.22.394.2309261418010.1403502@ubuntu-linux-20-04-desktop>
References: <cover.1695754185.git.sanastasio@raptorengineering.com> <a949070e4730f55ac214e22a3dea92a5cc6ec7fa.1695754185.git.sanastasio@raptorengineering.com> <0eda179a-2f64-39b3-c604-7aaa3b2659be@citrix.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-752359079-1695763089=:1403502"

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-752359079-1695763089=:1403502
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Tue, 26 Sep 2023, Andrew Cooper wrote:
> On 26/09/2023 7:54 pm, Shawn Anastasio wrote:
> > diff --git a/automation/scripts/build b/automation/scripts/build
> > index b4edcf010e..19dd9e8270 100755
> > --- a/automation/scripts/build
> > +++ b/automation/scripts/build
> > @@ -22,7 +22,12 @@ if [[ "${RANDCONFIG}" == "y" ]]; then
> >      # RANDCONFIG implies HYPERVISOR_ONLY
> >      HYPERVISOR_ONLY="y"
> >  else
> > -    echo "CONFIG_DEBUG=${debug}" > xen/.config
> > +    # Start off with arch's defconfig
> > +    make -C xen defconfig
> > +
> > +    # Drop existing CONFIG_DEBUG and replace with value of ${debug}
> > +    sed -i 's/^CONFIG_DEBUG=[yn]//g' xen/.config
> > +    echo "CONFIG_DEBUG=${debug}" >> xen/.config
> 
> Kconfig is latest-takes precedence, which is why we always append for
> this and the other related options.  There's no need for sed to drop the
> old value.

+1
--8323329-752359079-1695763089=:1403502--


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 22:26:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 22:26:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608543.947087 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlGVD-0003EQ-3g; Tue, 26 Sep 2023 22:25:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608543.947087; Tue, 26 Sep 2023 22:25:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlGVC-0003EJ-VO; Tue, 26 Sep 2023 22:25:58 +0000
Received: by outflank-mailman (input) for mailman id 608543;
 Tue, 26 Sep 2023 22:25:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IkXO=FK=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qlGVB-0003E9-RD
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 22:25:57 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a684b5b7-5cbb-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 00:25:52 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id A3B1C8285465;
 Tue, 26 Sep 2023 17:25:40 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 5XbbZvyKEYqN; Tue, 26 Sep 2023 17:25:39 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 70ABF8285690;
 Tue, 26 Sep 2023 17:25:39 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id TmHQOz-HDaPA; Tue, 26 Sep 2023 17:25:39 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id B94298285465;
 Tue, 26 Sep 2023 17:25:38 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a684b5b7-5cbb-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 70ABF8285690
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695767139; bh=qwxtmpPztUOsOEB2BRvfagbjyKlnIaNRNDiwmeEaC4g=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=Gb9R4Ex/8s68NWci/raF2MLVny8Owshe5DmpKQwUxNzwa/PhLjgYDrDB+jaui8UN3
	 u5dId/5C3dnKPcI4qGYYYXGBCh2dA9rOum/MdBCCvSoVyv72flJV4OwfGHE88NgSPo
	 zOu2jsL4oyuOwIiEniyyI7J6dmCKHbA27NIqiZXw=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <9ee3e3c5-978e-0d39-598e-fa9f54039254@raptorengineering.com>
Date: Tue, 26 Sep 2023 17:25:37 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v2 1/2] automation: Change build script to use arch
 defconfig
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Doug Goldstein <cardoe@cardoe.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Michal Orzel <michal.orzel@amd.com>, Jan Beulich <jbeulich@suse.com>
References: <cover.1695754185.git.sanastasio@raptorengineering.com>
 <a949070e4730f55ac214e22a3dea92a5cc6ec7fa.1695754185.git.sanastasio@raptorengineering.com>
 <0eda179a-2f64-39b3-c604-7aaa3b2659be@citrix.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <0eda179a-2f64-39b3-c604-7aaa3b2659be@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/26/23 2:56 PM, Andrew Cooper wrote:
> On 26/09/2023 7:54 pm, Shawn Anastasio wrote:
>> diff --git a/automation/scripts/build b/automation/scripts/build
>> index b4edcf010e..19dd9e8270 100755
>> --- a/automation/scripts/build
>> +++ b/automation/scripts/build
>> @@ -22,7 +22,12 @@ if [[ "${RANDCONFIG}" == "y" ]]; then
>>      # RANDCONFIG implies HYPERVISOR_ONLY
>>      HYPERVISOR_ONLY="y"
>>  else
>> -    echo "CONFIG_DEBUG=${debug}" > xen/.config
>> +    # Start off with arch's defconfig
>> +    make -C xen defconfig
>> +
>> +    # Drop existing CONFIG_DEBUG and replace with value of ${debug}
>> +    sed -i 's/^CONFIG_DEBUG=[yn]//g' xen/.config
>> +    echo "CONFIG_DEBUG=${debug}" >> xen/.config
> 
> Kconfig is latest-takes precedence, which is why we always append for
> this and the other related options.  There's no need for sed to drop the
> old value.
>

Thank you for the confirmation. I'll go ahead and drop the sed.

> ~Andrew

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 22:33:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 22:33:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608547.947095 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlGcM-0005HM-QX; Tue, 26 Sep 2023 22:33:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608547.947095; Tue, 26 Sep 2023 22:33:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlGcM-0005HF-Nd; Tue, 26 Sep 2023 22:33:22 +0000
Received: by outflank-mailman (input) for mailman id 608547;
 Tue, 26 Sep 2023 22:33:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IkXO=FK=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qlGcL-0005H9-V9
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 22:33:21 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b1ad8089-5cbc-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 00:33:20 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id A5C528285145;
 Tue, 26 Sep 2023 17:33:09 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id uUYJcjJa3QNr; Tue, 26 Sep 2023 17:33:08 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 7B47C8285308;
 Tue, 26 Sep 2023 17:33:08 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id CsQ4MKAfo0Gl; Tue, 26 Sep 2023 17:33:08 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id BDCEF8285145;
 Tue, 26 Sep 2023 17:33:07 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b1ad8089-5cbc-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 7B47C8285308
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695767588; bh=1bRbx6RuJjF2RRCLrJcRg5o9MR5leYhK4i7MWNeLW7c=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=OCXDuj9dfFEs9g0ul0P4eJfckwvK4HqQDO7CH1uDPCmKgbr7iTbjI+qtVURU8smh8
	 EItxTuEB6Q+Faly+W4MmEKQ76EuGxLYMkxkTF580Eeh5p7Acd3R9W0vnuHXkxHgRev
	 b7mdd7oWIe7oswvp0SR2EAEwQ9u8QhqWg1BGRQ1o=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <cfb8ff76-7466-b8fc-73ab-7fb65358cde5@raptorengineering.com>
Date: Tue, 26 Sep 2023 17:33:07 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH v2 2/2] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>
References: <cover.1695754185.git.sanastasio@raptorengineering.com>
 <cbecf35392441b03dc3ccd2a119b6fbdbf13b855.1695754185.git.sanastasio@raptorengineering.com>
 <2afa2ce7-ce22-ed47-07fe-0165e58302c6@citrix.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <2afa2ce7-ce22-ed47-07fe-0165e58302c6@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/26/23 3:54 PM, Andrew Cooper wrote:
> On 26/09/2023 7:54 pm, Shawn Anastasio wrote:
>> When building for Power with CONFIG_DEBUG unset, a compiler error gets
>> raised inside page_alloc.c's node_to_scrub function:
>>
>> common/page_alloc.c: In function 'node_to_scrub.part.0':
>> common/page_alloc.c:1217:29: error: array subscript 1 is above array
>>             bounds of 'long unsigned int[1]' [-Werror=array-bounds]
>>  1217 |         if ( node_need_scrub[node] )
>>
>> It appears that this is a false positive, given that in practice
>> cycle_node should never return a node ID >= MAX_NUMNODES as long as the
>> architecture's node_online_map is properly defined and initialized, so
>> this additional bounds check is only to satisfy GCC.
> 
> If GCC thinks it's got an index of 1 here, then it thinks it's proved
> that a 1 gets passed.  But the fact that cycle_node() really can return
> 1 if one variable gets tweaked in memory means that logic derived on
> this property is broken.
> 
> But we've got even more basic problems to fix first.
> 
> xen$ git grep -B1 '__read_mostly node_online_map'
> arch/arm/smpboot.c-45-/* Fake one node for now. See also asm/numa.h */
> arch/arm/smpboot.c:46:nodemask_t __read_mostly node_online_map = { { [0]
> = 1UL } };
> arch/ppc/stubs.c-25-
> arch/ppc/stubs.c:26:nodemask_t __read_mostly node_online_map = { { [0] =
> 1UL } };
> common/numa.c-44-
> common/numa.c:45:nodemask_t __read_mostly node_online_map = { { [0] =
> 1UL } };
> 
> There are 3 identical definitions of node_online_map, one for the
> architecture which really supports NUMA, and two for the stubs which don't.
> 
> And the bug here is that code outside of CONFIG_NUMA assumes NUMA is
> valid, including several places in page_alloc.c,
> domain_set_node_affinity(), credit1 and sysctl.  XEN_SYSCTL_numainfo
> even has a bigger sin of using a static MAX_NUMNODES array when it
> doesn't need an array in the first place.
> 

Agreed. It seems like the current state of affairs resulted from hacks
in Arm to work around NUMA assumptions in common instead of properly
making common support !CONFIG_NUMA. And now ppc is inheriting some of
that baggage.

> It's rude for xen/nodemask.h to short circuit some of the operations on
> node_online_map based on MAX_NUMNODES but not others.
> 
> If nothing else, the fallback for "not really NUMA" needs providing by
> the common code and not by the arch stubs.  When that is sorted, we
> might have more consistent behaviour to investigate.
>

I'll leave these more sweeping changes up to someone with a bit more
familiarity with this code for now. In the meantime, this patch at
should introduce no functional change to the status quo and allows ppc
to build in the interim.

> ~Andrew

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 22:38:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 22:38:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608551.947105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlGha-0005uZ-Co; Tue, 26 Sep 2023 22:38:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608551.947105; Tue, 26 Sep 2023 22:38:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlGha-0005uS-A9; Tue, 26 Sep 2023 22:38:46 +0000
Received: by outflank-mailman (input) for mailman id 608551;
 Tue, 26 Sep 2023 22:38:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IkXO=FK=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qlGhZ-0005uH-58
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 22:38:45 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 71e05ee3-5cbd-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 00:38:43 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 07A998285AAD;
 Tue, 26 Sep 2023 17:38:32 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 4b0SZ9vwVaO2; Tue, 26 Sep 2023 17:38:31 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 6C3FB8285690;
 Tue, 26 Sep 2023 17:38:31 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id iZDDmjElaz6e; Tue, 26 Sep 2023 17:38:31 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id E650282854B0;
 Tue, 26 Sep 2023 17:38:30 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 71e05ee3-5cbd-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 6C3FB8285690
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695767911; bh=34z+XO3iFnnbea1oH9CHpJPde99KYi0yOabtl66Tq90=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=syvMnWBUdMYXOT8hXBKcjoRoBsaHqzI0c9ym6YWtwUprP38/x5EvjuSfqMMDKu4yp
	 FHPeSIRS3nCOTy4QXoWJIotFIQbqEeUrXUs44KmFDArrMbmeQRD+pMWhc8Oq8Ljrq5
	 nl7tR4R/Ov2NRQYgNy1rAt8MPKfcyEtaxdzVLS24=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Michal Orzel <michal.orzel@amd.com>,
	Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v3 1/2] automation: Change build script to use arch defconfig
Date: Tue, 26 Sep 2023 17:37:38 -0500
Message-Id: <5baa15904c5bb5f8d668c67519ad08293c32982d.1695767747.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1695767747.git.sanastasio@raptorengineering.com>
References: <cover.1695767747.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Change automation build script to call the make defconfig target before
setting CONFIG_DEBUG and extra options. This fixes issues on Power where
the build fails without using the ppc64_defconfig.

Reported-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
v3: Drop unnecessary sed.

v2: No changes.

 automation/scripts/build | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/automation/scripts/build b/automation/scripts/build
index b4edcf010e..b3c71fb6fb 100755
--- a/automation/scripts/build
+++ b/automation/scripts/build
@@ -22,7 +22,10 @@ if [[ "${RANDCONFIG}" == "y" ]]; then
     # RANDCONFIG implies HYPERVISOR_ONLY
     HYPERVISOR_ONLY="y"
 else
-    echo "CONFIG_DEBUG=${debug}" > xen/.config
+    # Start off with arch's defconfig
+    make -C xen defconfig
+
+    echo "CONFIG_DEBUG=${debug}" >> xen/.config

     if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then
         echo "${EXTRA_XEN_CONFIG}" >> xen/.config
--
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 22:38:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 22:38:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608552.947116 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlGhb-00069Q-Kj; Tue, 26 Sep 2023 22:38:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608552.947116; Tue, 26 Sep 2023 22:38:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlGhb-00069J-Hr; Tue, 26 Sep 2023 22:38:47 +0000
Received: by outflank-mailman (input) for mailman id 608552;
 Tue, 26 Sep 2023 22:38:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IkXO=FK=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qlGhZ-0005uH-R4
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 22:38:45 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 71e0774f-5cbd-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 00:38:43 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id E751082854B0;
 Tue, 26 Sep 2023 17:38:31 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id H2aNhdbtOc3b; Tue, 26 Sep 2023 17:38:31 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 01BB8828558A;
 Tue, 26 Sep 2023 17:38:30 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id WmusQ2Kxu0yS; Tue, 26 Sep 2023 17:38:30 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 61138828548F;
 Tue, 26 Sep 2023 17:38:30 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 71e0774f-5cbd-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 01BB8828558A
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695767911; bh=+ECsOLqZQDKTb4712xl8N/XSk0yNkmYkb6QnjMSl0z8=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=f/PXoIYM6VSMyjhR/FTvirDF8ReGbIY1J5Rj3OCzDYyKYkJBpsIpJsOiN4LEyLWLY
	 oWh7oAPRFygsNQw5DaQiBsRgvK28udDtUdHv48tEmOe0Me0I4coHyKUoPpy0NDY30U
	 JvmJ5hd2ABzZyi4hqwjpcNpQNXL8kvdZgXs/MNGA=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v3 0/2] Fix Power CI build
Date: Tue, 26 Sep 2023 17:37:37 -0500
Message-Id: <cover.1695767747.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Hello all,

This series contains a few minor fixes to the CI config and one
additional patch to common/ that resolve ppc64-specific CI failures
that Jan discovered.

Thanks,

Shawn Anastasio (2):
  automation: Change build script to use arch defconfig
  xen/common: Add NUMA node id bounds check to
    page_alloc.c/node_to_scrub

 automation/scripts/build | 5 ++++-
 xen/common/page_alloc.c  | 8 ++++++++
 2 files changed, 12 insertions(+), 1 deletion(-)

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 22:38:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 22:38:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608553.947126 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlGhc-0006Oa-TG; Tue, 26 Sep 2023 22:38:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608553.947126; Tue, 26 Sep 2023 22:38:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlGhc-0006OT-PR; Tue, 26 Sep 2023 22:38:48 +0000
Received: by outflank-mailman (input) for mailman id 608553;
 Tue, 26 Sep 2023 22:38:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IkXO=FK=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qlGha-0005uH-R7
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 22:38:46 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 71e017bf-5cbd-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 00:38:43 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 941B6828548F;
 Tue, 26 Sep 2023 17:38:32 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id RU8ZbbAtZ0_b; Tue, 26 Sep 2023 17:38:32 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 0ECBE8286987;
 Tue, 26 Sep 2023 17:38:32 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 2PHqCNn3ZY9o; Tue, 26 Sep 2023 17:38:31 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 5AE0A828548F;
 Tue, 26 Sep 2023 17:38:31 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 71e017bf-5cbd-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 0ECBE8286987
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695767912; bh=dSS9Fhkavs/AL0LupSPA21rO1FT/CXYU0GWi1j4YJNM=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=YUyv1Ek0BRLry0KFMuGSEq3230DYH2I5EpYzQz7hbr/W77RiS7UGHejuT2mpxgdHo
	 kOvOP3irPyTWgLwv6SfOB61GH2ciCAr66ihyzcEIanEtPjZuiMuAMbV0jcDywvYYRY
	 bAghSIcB0W+41FsMW2NGUDf90QBTVcIp+sYIAIr0=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v3 2/2] xen/common: Add NUMA node id bounds check to page_alloc.c/node_to_scrub
Date: Tue, 26 Sep 2023 17:37:39 -0500
Message-Id: <d16b2f8749b65e303f531776d303586336ef1729.1695767747.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1695767747.git.sanastasio@raptorengineering.com>
References: <cover.1695767747.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

When building for Power with CONFIG_DEBUG unset, a compiler error gets
raised inside page_alloc.c's node_to_scrub function:

common/page_alloc.c: In function 'node_to_scrub.part.0':
common/page_alloc.c:1217:29: error: array subscript 1 is above array
            bounds of 'long unsigned int[1]' [-Werror=array-bounds]
 1217 |         if ( node_need_scrub[node] )

It appears that this is a false positive, given that in practice
cycle_node should never return a node ID >= MAX_NUMNODES as long as the
architecture's node_online_map is properly defined and initialized, so
this additional bounds check is only to satisfy GCC.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
v2: Add comment to explain the bounds check.

 xen/common/page_alloc.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
index 35d9a26fa6..9b5df74fdd 100644
--- a/xen/common/page_alloc.c
+++ b/xen/common/page_alloc.c
@@ -1211,6 +1211,14 @@ static unsigned int node_to_scrub(bool get_node)
         } while ( !cpumask_empty(&node_to_cpumask(node)) &&
                   (node != local_node) );

+        /*
+         * In practice `node` will always be within MAX_NUMNODES, but GCC can't
+         * always see that, so an explicit check is necessary to avoid tripping
+         * its out-of-bounds array access warning (-Warray-bounds).
+         */
+        if ( node >= MAX_NUMNODES )
+            break;
+
         if ( node == local_node )
             break;

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 23:10:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 23:10:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608566.947136 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlHBw-0005V7-AB; Tue, 26 Sep 2023 23:10:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608566.947136; Tue, 26 Sep 2023 23:10:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlHBw-0005V0-5D; Tue, 26 Sep 2023 23:10:08 +0000
Received: by outflank-mailman (input) for mailman id 608566;
 Tue, 26 Sep 2023 23:10:07 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlHBu-0005Py-VQ; Tue, 26 Sep 2023 23:10:06 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlHBu-00006H-0z; Tue, 26 Sep 2023 23:10:06 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlHBt-0006tr-IN; Tue, 26 Sep 2023 23:10:05 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlHBt-0001eX-Hr; Tue, 26 Sep 2023 23:10:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=qcjcwrmCtXDTaeqrREew874x7zY3JEBqjOslnqFK9/I=; b=lqaXyw+pHc+DyGlH4xIMXOF1DE
	P2vMwM0QvOAewGHHuny9fD+bkazAmVTOqPqAAu1ZnLP/PSiOuhzDYixC8guOJKSOtcAQtILUWTlZr
	3ZE3vmmKmgqEvYg8CWa7SbtlNRHB9GDilxqBnhbDbXusA/7GNK5x05k1vS29ifz5ce7E=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183175-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183175: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-livepatch:xen-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    xen-unstable:test-amd64-i386-examine-bios:xen-install:fail:heisenbug
    xen-unstable:test-amd64-i386-pair:xen-install/src_host:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=d6351a10c80fcbbf2b5996d351b7181ba17b3b32
X-Osstest-Versions-That:
    xen=d6351a10c80fcbbf2b5996d351b7181ba17b3b32
From: osstest service owner <osstest-admin@xenproject.org>
Date: Tue, 26 Sep 2023 23:10:05 +0000

flight 183175 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183175/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-livepatch     7 xen-install      fail in 183169 pass in 183175
 test-armhf-armhf-xl-credit1  14 guest-start      fail in 183169 pass in 183175
 test-amd64-i386-examine-bios  6 xen-install                fail pass in 183169
 test-amd64-i386-pair         10 xen-install/src_host       fail pass in 183169
 test-armhf-armhf-xl-vhd      17 guest-start/debian.repeat  fail pass in 183169

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183169
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183169
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183169
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183169
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183169
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183169
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183169
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183169
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183169
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183169
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183169
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183169
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  d6351a10c80fcbbf2b5996d351b7181ba17b3b32
baseline version:
 xen                  d6351a10c80fcbbf2b5996d351b7181ba17b3b32

Last test of basis   183175  2023-09-26 08:45:53 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         fail    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      fail    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 23:25:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 23:25:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608572.947146 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlHQj-00006r-I2; Tue, 26 Sep 2023 23:25:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608572.947146; Tue, 26 Sep 2023 23:25:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlHQj-00006k-FJ; Tue, 26 Sep 2023 23:25:25 +0000
Received: by outflank-mailman (input) for mailman id 608572;
 Tue, 26 Sep 2023 23:25:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SsZU=FK=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qlHQi-00006e-9R
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 23:25:24 +0000
Received: from wout5-smtp.messagingengine.com (wout5-smtp.messagingengine.com
 [64.147.123.21]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f3dd8436-5cc3-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 01:25:20 +0200 (CEST)
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.west.internal (Postfix) with ESMTP id D854F3200908;
 Tue, 26 Sep 2023 19:25:15 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute5.internal (MEProxy); Tue, 26 Sep 2023 19:25:16 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue,
 26 Sep 2023 19:25:13 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f3dd8436-5cc3-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm2; t=
	1695770715; x=1695857115; bh=z3SHp3HxuUJld5UuE86Yt0/XxvoKxu84Kdl
	wpthvxMI=; b=ZV6KkiNMv2TVRZPFkePl3YXSMKX7apDi+9K6irJa1QLkvg2mb59
	sfmzASOTM55axh28sG3B2tt4tSqXeGYsKzrZKw020qemybD40UWf2+wDFRnNXjex
	VK5LdxupFKzFTbkBQB1wfkv3mEjwGY2+BehqEE6290HlWkKKQiVtNVM+61UWey5X
	cWysV0Ji1WbabVQoJ/y6ACf9VzAI2ijG+3mFceTMZgFqx5f2pzMgFokHLt7lMU33
	/qq24G90eFezLKavi0uARGo50hgnFLgyeOpQHFGi8wz5zwnQpnFwiCxl/o6oLb84
	pMRDZWT1HJo6RrytOXmMhoNroRPYqEtN6Zg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; t=1695770715; x=1695857115; bh=z3SHp3HxuUJld
	5UuE86Yt0/XxvoKxu84KdlwpthvxMI=; b=EBr7mSBr5eBTy/QsXTovDkKgStDvx
	9oS8+t6mNtSIG4uJEZSuoDlaPrU8kykO4yDC6ZE0BmjoPrwkEBXwq0aAlQ+UjgcO
	UxYtdU6HbMIM7O6WjhSbQ8wArciFpdR0du3ueGbqOKzj9npyn2wm1zzaxE4LFl5I
	d6VnUEyvc38L/9WNdaGoP2JBSOm0ewdgPqP8xuNd0AZhagU0VjtdYaxkAyHUIRv1
	3VDNepwE28Q6tR51YJ2jRhWV/5n1b89bgW9LDCNMDEOsYmb/K4Eg2lMX3BSzwzhy
	p7aNpb1nUoHGaqBqWPD9KM5Bg2eosSbo6SG03aQ7D8ASqoS7vRd5r72zQ==
X-ME-Sender: <xms:WmgTZXBEdeAcMoHC3PMbyBrZpqRazj1abpzPIZSp1LjDbY_0G2QdkA>
    <xme:WmgTZdjfoGyqXodjSxugnedt-eoUNGyTVXK-RJRivQnGkVlJeCZien2NCNT2ox3ex
    UZkdMVjYkWQow>
X-ME-Received: <xmr:WmgTZSm3G2w38DRmfzDDIFA6psm74UoZkW5Mj1zPm7pcuVx2lW_NO5WRNkrCNmsCXGUTlmOpqxu6Uyyk17Lq6H-xMUqWArDDNFY>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvjedrtddugddvvdcutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghrvghk
    ucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesihhnvh
    hishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpefgudel
    teefvefhfeehieetleeihfejhfeludevteetkeevtedtvdegueetfeejudenucevlhhush
    htvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghrmhgrrhgvkhes
    ihhnvhhishhisghlvghthhhinhhgshhlrggsrdgtohhm
X-ME-Proxy: <xmx:W2gTZZw-C5s8aq_0PZ0CcnGvQWCbk__U7CTAZ_oGoCA7pMXCL_GCaw>
    <xmx:W2gTZcSUHVqkLfJ-brlGxPoOuOaP0L80Wy4bLYwJZIVMyt-PD98INg>
    <xmx:W2gTZcYL14_e_M_dJ9whuQ0xpOdzOfq_uwVmwBHeSf4lBaKfzIo1og>
    <xmx:W2gTZXf2VPYZHKkZ2xtd2ppL32k8RfHMnDJfKJefBbW-uDiG4PRU_A>
Feedback-ID: i1568416f:Fastmail
Date: Wed, 27 Sep 2023 01:25:11 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Anthony PERARD <anthony.perard@citrix.com>
Cc: qemu-devel@nongnu.org, Stefano Stabellini <sstabellini@kernel.org>,
	Paul Durrant <paul@xen.org>,
	"open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH 1/2] hw/xen/xen_pt: Call default handler only if no
 custom one is set
Message-ID: <ZRNoV+dvbj5gtxVN@mail-itl>
References: <20221114192011.1539233-1-marmarek@invisiblethingslab.com>
 <Y30DG96s9Ky1AUN0@perard.uk.xensource.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="KAOaOS9jBIoMGKW2"
Content-Disposition: inline
In-Reply-To: <Y30DG96s9Ky1AUN0@perard.uk.xensource.com>


--KAOaOS9jBIoMGKW2
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Wed, 27 Sep 2023 01:25:11 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: Anthony PERARD <anthony.perard@citrix.com>
Cc: qemu-devel@nongnu.org, Stefano Stabellini <sstabellini@kernel.org>,
	Paul Durrant <paul@xen.org>,
	"open list:X86 Xen CPUs" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH 1/2] hw/xen/xen_pt: Call default handler only if no
 custom one is set

On Tue, Nov 22, 2022 at 05:12:59PM +0000, Anthony PERARD wrote:
> On Mon, Nov 14, 2022 at 08:20:10PM +0100, Marek Marczykowski-G=C3=B3recki=
 wrote:
> > diff --git a/hw/xen/xen_pt.c b/hw/xen/xen_pt.c
> > index 0ec7e52183..269bd26109 100644
> > --- a/hw/xen/xen_pt.c
> > +++ b/hw/xen/xen_pt.c
> > @@ -255,6 +255,7 @@ static void xen_pt_pci_write_config(PCIDevice *d, u=
int32_t addr,
> >      uint32_t find_addr =3D addr;
> >      XenPTRegInfo *reg =3D NULL;
> >      bool wp_flag =3D false;
> > +    uint32_t emul_mask =3D 0, write_val;
> > =20
> >      if (xen_pt_pci_config_access_check(d, addr, len)) {
> >          return;
> > @@ -310,7 +311,6 @@ static void xen_pt_pci_write_config(PCIDevice *d, u=
int32_t addr,
> >      }
> > =20
> >      memory_region_transaction_begin();
> > -    pci_default_write_config(d, addr, val, len);
> > =20
> >      /* adjust the read and write value to appropriate CFC-CFF window */
> >      read_val <<=3D (addr & 3) << 3;
> > @@ -370,6 +370,8 @@ static void xen_pt_pci_write_config(PCIDevice *d, u=
int32_t addr,
> >                  return;
> >              }
> > =20
> > +            emul_mask |=3D ( (1 << (reg->size * 8) ) - 1 ) << ((find_a=
ddr & 3) * 8);
> > +
> >              /* calculate next address to find */
> >              emul_len -=3D reg->size;
> >              if (emul_len > 0) {
> > @@ -396,6 +398,24 @@ static void xen_pt_pci_write_config(PCIDevice *d, =
uint32_t addr,
> >      /* need to shift back before passing them to xen_host_pci_set_bloc=
k. */
> >      val >>=3D (addr & 3) << 3;
> > =20
> > +    /* store emulated registers that didn't have specific hooks */
> > +    write_val =3D val;
> > +    for (index =3D 0; emul_mask; index +=3D emul_len) {
>=20
> `index` isn't used, was it meant to be use for something?

Yes, it should be used as addr + index below.

> > +        emul_len =3D 0;
> > +        while (emul_mask & 0xff) {
> > +            emul_len++;
>=20
> This seems to count the number of byte that have a hook
> (xen_pt_find_reg() found a `reg_entry`).
> This loop should count instead the number of bytes for which no
> `reg_entry` have been found, right? Shouldn't the loop count when a byte
> in emul_mask is unset?

No, see the patch description - only declared registers should be saved.
The patch title is misleading, I'll clarify it.

> > +            emul_mask >>=3D 8;
> > +        }
> > +        if (emul_len) {
> > +            uint32_t mask =3D ((1 << (emul_len * 8)) - 1);
> > +            pci_default_write_config(d, addr, write_val & mask, emul_l=
en);
>=20
> `addr` isn't updated in the loop, aren't we going to write bytes to the
> wrong place? If for example "emul_mask =3D=3D 0x00ff00ff" ?

Indeed, it should be addr + index.

> > +            write_val >>=3D emul_len * 8;
> > +        } else {
> > +            emul_mask >>=3D 8;
> > +            write_val >>=3D 8;
> > +        }
> > +    }
>=20
> Thanks,
>=20
> --=20
> Anthony PERARD

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--KAOaOS9jBIoMGKW2
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmUTaFcACgkQ24/THMrX
1yxIMggAjmFai6SJm9RKNfxscWSdENDYpLum2YHLlNE26rRvV7CDdOW1ceW6QTxN
VT746C2zA6fL/pXkXQlCXP1a3s2qWx7fL6FX8g07DMwzawcySHuPbgmKB+41bcEM
mo7xpHAp/+Hd6+GOVY09mCXtJBZXKG68QIGHhyKtfQ4V9AOnFa9XEfYO1fbFywEf
DcVYWv2fJopi4ZR+mj47kvDl/HdT7VY+xHKU8KXIhyKtcnUO0kUI8AVvSgoZVKoP
KsqdpPRSOI/g0r29S8umIF3py+WtPG/GQ4NuwTpP0lgT0maUXXUm/759gqCcGT2y
UzeBUBbpVX4/dOupOf2Lw5fv9Y8x0w==
=KVPc
-----END PGP SIGNATURE-----

--KAOaOS9jBIoMGKW2--


From xen-devel-bounces@lists.xenproject.org Tue Sep 26 23:46:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 23:46:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608579.947156 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlHl2-0003tn-Bo; Tue, 26 Sep 2023 23:46:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608579.947156; Tue, 26 Sep 2023 23:46:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlHl2-0003tg-7d; Tue, 26 Sep 2023 23:46:24 +0000
Received: by outflank-mailman (input) for mailman id 608579;
 Tue, 26 Sep 2023 23:46:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fQH+=FK=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qlHl1-0003ta-8W
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 23:46:23 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on060c.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::60c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e314c103-5cc6-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 01:46:18 +0200 (CEST)
Received: from DU6P191CA0028.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:53f::14)
 by AM9PR08MB6034.eurprd08.prod.outlook.com (2603:10a6:20b:2db::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 23:46:13 +0000
Received: from DBAEUR03FT014.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:53f:cafe::d9) by DU6P191CA0028.outlook.office365.com
 (2603:10a6:10:53f::14) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21 via Frontend
 Transport; Tue, 26 Sep 2023 23:46:12 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT014.mail.protection.outlook.com (100.127.143.22) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.20 via Frontend Transport; Tue, 26 Sep 2023 23:46:12 +0000
Received: ("Tessian outbound 30c9f5e988c5:v175");
 Tue, 26 Sep 2023 23:46:12 +0000
Received: from a9e7520c0527.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 488BE0DE-AE7D-42E4-A68D-B8D2CA35AD7F.1; 
 Tue, 26 Sep 2023 23:46:05 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a9e7520c0527.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 26 Sep 2023 23:46:05 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS8PR08MB8780.eurprd08.prod.outlook.com (2603:10a6:20b:5bd::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Tue, 26 Sep
 2023 23:46:03 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 23:46:01 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e314c103-5cc6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hMSYJO6PoxD3e9bAeN7alCXFQT/glubxXsEzrrWQHgk=;
 b=73bg82mVSP5GcbA3PEm2i/J/VYVIPLHfIflOung4AYypj5D1HuUYJV6b6VtOX0wDxjxfutg1aPQ5kO3Tv9YUfoezxiuxeqYYk0rvg6NO8pIwN5OotYtQkRwWEE2POFFiaJswXHvyzX3FJTt8b5Ciiz7t2F727tzpwbo+tNAAPjw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: b713097fb621ec03
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=f9fwnIfiKSA82HLTL0HTz+8Sk+jzReJIsbpL/1+itxqcXLiwhUmJ6PIHmUA2brGjUWZWqchdQpj35xK7AS1TuWxKbE0wL8cQfjc6rF1NPlRmwpwFo237kpGv99xVS/s4MWNx/LVNC3FviYeQbmeNlt9p6SF6IwMW8V6SeKTGsyDTs3LF/aLaf12BczceoNb+k4/DCJlloZt8ltNYCb2jg/ftSNMV0NQ5FR3cP/d0/Yp4dMLjMFWGg8vGcHVAAwODUdYPxAXad9ds7QAFp4IdLYBWnV+x7BUv2RZuUI4PbYU3d/JqrYlPVgmgIta41Dbo+TCuohgzx9cgpC2BwuyRgA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hMSYJO6PoxD3e9bAeN7alCXFQT/glubxXsEzrrWQHgk=;
 b=fmfvDwgrT01KzPf2wGoXDX0bwHR6vk4iqrycoaVJ/SbEabUvi7l68jrb66I/K0/YOunZhXJZVEPb3mulw9YGwc97opsr/cxk3Qa7cW+MJ9bQ3bM88O0n+JwIgDXSFuzRqnIkFVLX4KMYL/DvsGSRwMH0YKgjZFXcBsbRwyYnJYDwsuSeCUPY9iVz28Z8JtUQmPcIbFi4QMJA//e7xJI1wvGO1PaImRPBlvCYqXI7NQig/bcDVc3XQGGZdlGLgM+SnNEB45pYqaJvSJiFJErjroyrVKof9mLPIJs/UC/CYXf3YD9rC6APZY0mI98P/cG6tCbMWHwT3W4Ilzci/1p3uw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hMSYJO6PoxD3e9bAeN7alCXFQT/glubxXsEzrrWQHgk=;
 b=73bg82mVSP5GcbA3PEm2i/J/VYVIPLHfIflOung4AYypj5D1HuUYJV6b6VtOX0wDxjxfutg1aPQ5kO3Tv9YUfoezxiuxeqYYk0rvg6NO8pIwN5OotYtQkRwWEE2POFFiaJswXHvyzX3FJTt8b5Ciiz7t2F727tzpwbo+tNAAPjw=
From: Henry Wang <Henry.Wang@arm.com>
To: Shawn Anastasio <sanastasio@raptorengineering.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Timothy Pearson
	<tpearson@raptorengineering.com>, Doug Goldstein <cardoe@cardoe.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Michal Orzel <michal.orzel@amd.com>, Jan
 Beulich <jbeulich@suse.com>
Subject: Re: [PATCH v3 1/2] automation: Change build script to use arch
 defconfig
Thread-Topic: [PATCH v3 1/2] automation: Change build script to use arch
 defconfig
Thread-Index: AQHZ8MpDPKl80JUbDEi5wt6un5lLQ7AtxZEA
Date: Tue, 26 Sep 2023 23:45:58 +0000
Message-ID: <0620E872-B8AE-4E26-9B05-435DCF31655B@arm.com>
References: <cover.1695767747.git.sanastasio@raptorengineering.com>
 <5baa15904c5bb5f8d668c67519ad08293c32982d.1695767747.git.sanastasio@raptorengineering.com>
In-Reply-To:
 <5baa15904c5bb5f8d668c67519ad08293c32982d.1695767747.git.sanastasio@raptorengineering.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS8PR08MB8780:EE_|DBAEUR03FT014:EE_|AM9PR08MB6034:EE_
X-MS-Office365-Filtering-Correlation-Id: 50f7e502-2686-420a-7fe7-08dbbeeac41b
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 /7clNcK/Pdl6SMpQsvIYTdkIGOda4fyy5yE2wj1tDFDIMWTNZhhxqGA5/Y4o8XHb5x+KOvAujpm5vMFLXnZtOVaYv3Y6Nw9DgVeRlTXlOVD1cGy2jwU81IemwgjMfLxN5vGdOoT7KD/tafdryOkxUm6OVS/lwmWjgrUI/cbOmRwRVdxlnEBO6rVk9d/wBMkCmdwNTHfPps5TEQwTveZHWCuDmnB9k4cvlusLGDb8yvNXVd5P6hdqtlkfjTEgsx430dSEDyKosBntUKQL+nzqvI1REOQC/dynibv7TF5WVG1Vw5TBItAI5ua49znoiXUsbcUhosMM99fKSSxJuc9aEl30M59M3eyJHup+1v+UF7Vs4Pqtl1LSgdwxjgPNvmUl9eZTR8rbN49ZT1B+dggs3Flrb9352yEAc6QYWZwNhjSjRLwoEX9ua6kl3bJzGnyRF5RrK2NurnYr7w8NuCGbZ71N0tk4vgXrYNe6/SXT/ZOjJFWTzv3M7mCaOwt58dSlLcVGFAZkao43oc1YB40aQiPtSGxM8sEN715vWnVlcHBAnsUUKVO+eHlgtvU2Jood3PI+JqQQhU/0TPQm7xBL1kORnhm44u+nklCKtNbJU1J3p8F56HVMUaCacj6J6PJCPiryAF46DUw68nhZ4CQjMg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(39860400002)(346002)(366004)(376002)(230922051799003)(186009)(1800799009)(451199024)(83380400001)(86362001)(36756003)(38070700005)(38100700002)(26005)(478600001)(2616005)(2906002)(53546011)(41300700001)(316002)(6666004)(6916009)(54906003)(5660300002)(8676002)(8936002)(4326008)(33656002)(71200400001)(66946007)(6486002)(6506007)(6512007)(66556008)(122000001)(66476007)(66446008)(91956017)(64756008)(76116006)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <1B1B865BB0DCCB4493299B425932DB0C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8780
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT014.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	22a62f9d-f095-45e0-286d-08dbbeeabbc9
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KO1Pxr+XUzsIfnd8w/Vebdos3SeeSyef6rodvdxMDie0sOrvG5tjhpBSAhK7Rq3DB9hSUPopGs6V1/JBnGDC3Q5mw8BRJk/67mxcbWEDECqnEYKNUOXU1ahKpkM+GJoASMdZgSq7QO2WQP2BQlf0EfkxQpwgjrpNufrMzCdN0EDGCtLbFISdGKO99Gqehu41N+8Kf34gAlANwhy2CQARuu1GgLIORJyQhQUT2+V0TTg3k4BIyylDeC+omM4qh2PCuUae6Ui8FZjexdXxMs+bo7HIDAfCjZ9175zUSPZ1G6nPZyIkO3D8vwW9pGuyRbVMLSVofLHKqaDnsCihURO2HtV/tHR22ZUEte0jleWfTwG0HNv5My5saRQ/LGne4CQmZ3megXJNTAHSwEzv99pR/VYRg5HjqfubF/wFSjgl3tSj7u5Eizw6Zj95/40YLdoAQ38u2uzZyuvay+OCKnDJleYYrFJwQ/EP6bzHrAB7L1drIw2MGUmhaC0GZVdOflNa6NX3EnC42N09yNwdJ/rDVrBuA+vN5AyRLM2U3usMMyHJx8/6ERqZVB/sl4U2ynsvj++QxAC+OoTMErs/yWvXgcarl1tTEAza+GxCpAPENCT42gP6hwWy7pLcxJjcgfjvpp5xO4wjBGtuRnJ05FJMgy+wpCn74tdljVl2kko3e5k8/olgkkUzdSDrgw8QKWzVUS2/MHoHCMH8fKqItyegslh8ALJRsyTG5hF8p3Tc7bL5wTMCP5UvnK4sXMcB/vH4
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(39860400002)(396003)(346002)(230922051799003)(451199024)(1800799009)(82310400011)(186009)(36840700001)(40470700004)(46966006)(6506007)(316002)(41300700001)(40460700003)(2616005)(6512007)(33656002)(107886003)(82740400003)(53546011)(6666004)(478600001)(83380400001)(6486002)(36756003)(81166007)(356005)(86362001)(47076005)(36860700001)(70206006)(40480700001)(26005)(54906003)(70586007)(336012)(2906002)(8676002)(8936002)(5660300002)(4326008)(6862004);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 23:46:12.4818
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 50f7e502-2686-420a-7fe7-08dbbeeac41b
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT014.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6034

Hi Shawn,

> On Sep 27, 2023, at 06:37, Shawn Anastasio <sanastasio@raptorengineering.=
com> wrote:
>=20
> Change automation build script to call the make defconfig target before
> setting CONFIG_DEBUG and extra options. This fixes issues on Power where
> the build fails without using the ppc64_defconfig.
>=20
> Reported-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>

As discussed in v1, CI fixes should be included in 4.18, so:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


> ---
> v3: Drop unnecessary sed.
>=20
> v2: No changes.
>=20
> automation/scripts/build | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>=20
> diff --git a/automation/scripts/build b/automation/scripts/build
> index b4edcf010e..b3c71fb6fb 100755
> --- a/automation/scripts/build
> +++ b/automation/scripts/build
> @@ -22,7 +22,10 @@ if [[ "${RANDCONFIG}" =3D=3D "y" ]]; then
>     # RANDCONFIG implies HYPERVISOR_ONLY
>     HYPERVISOR_ONLY=3D"y"
> else
> -    echo "CONFIG_DEBUG=3D${debug}" > xen/.config
> +    # Start off with arch's defconfig
> +    make -C xen defconfig
> +
> +    echo "CONFIG_DEBUG=3D${debug}" >> xen/.config
>=20
>     if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then
>         echo "${EXTRA_XEN_CONFIG}" >> xen/.config
> --
> 2.30.2
>=20
>=20



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 23:48:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 23:48:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608583.947166 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlHmr-0004T2-NO; Tue, 26 Sep 2023 23:48:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608583.947166; Tue, 26 Sep 2023 23:48:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlHmr-0004Sv-Jw; Tue, 26 Sep 2023 23:48:17 +0000
Received: by outflank-mailman (input) for mailman id 608583;
 Tue, 26 Sep 2023 23:48:16 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fQH+=FK=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qlHmq-0004Sp-6L
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 23:48:16 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0613.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2800d300-5cc7-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 01:48:14 +0200 (CEST)
Received: from AS9PR0301CA0021.eurprd03.prod.outlook.com
 (2603:10a6:20b:468::11) by AS4PR08MB7502.eurprd08.prod.outlook.com
 (2603:10a6:20b:4e6::21) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 23:48:01 +0000
Received: from AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:468:cafe::3c) by AS9PR0301CA0021.outlook.office365.com
 (2603:10a6:20b:468::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Tue, 26 Sep 2023 23:48:00 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT059.mail.protection.outlook.com (100.127.140.215) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Tue, 26 Sep 2023 23:48:00 +0000
Received: ("Tessian outbound 1eb4e931b055:v175");
 Tue, 26 Sep 2023 23:47:59 +0000
Received: from c9836be2fcf7.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 01C13A87-18FC-4334-A088-2AE378D5CF86.1; 
 Tue, 26 Sep 2023 23:47:53 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c9836be2fcf7.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Tue, 26 Sep 2023 23:47:53 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS1PR08MB7539.eurprd08.prod.outlook.com (2603:10a6:20b:483::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep
 2023 23:47:49 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023
 23:47:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2800d300-5cc7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mmKFjOyR+a+zxzq+ABjzXiX/32MJGrpCwnaIr/9KQk4=;
 b=zej+Yjx038WoHGGeXjgeuUNWO7OO+w4zrnjr4MJfVliM2FeJuZWbQ+JJf3PKP++WS+GKbXHVxK39R3lx6IhoMXpdBnkU1xjLZZkFoSaVpD+vc7/ImxbOlmttbPU57DXMTyYp6g99ACdFaqQiG6YvnhDJZqE2jswItPupaIIYVNM=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 2fb828b5e5855cdd
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HK4lUZ8W/pTzemjWZDEx4uA64yPp5Q6TgZGqnIeFoXJN1PW4jsQdl6FF4LK+fNJh/6KAdOldEN4YHfJ5YKXi1f9a319fXsg59mShwqOCqbH+69NIJtq8z9B+CPDKPY3Ch+3sMnAvfluXREgXHJGXFkvuID7ty0/FcnsguGOtQewBPFg1aD6k3N2rjI3tkvH51z2vzpCHnQJsLDHp6nIIGczNGniussL1JtH5UWjPt1sDDrpv5d5qVKEzD/RyXfQt+duyb4QI8huFh67B5pAB9KsGwF6b3y2MHONg/XqGtqWDIfw9H2CLeqIjPsKpgei8cHOB0gyPrpFf1fi3qacbgw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mmKFjOyR+a+zxzq+ABjzXiX/32MJGrpCwnaIr/9KQk4=;
 b=UZC4ATzIrSrtZBBOI5KeuXvjmj1KV5Pl5scSTqhoi/1xa5DLGzbmcVtQ18CRdACA+e7Fszr76rl/prK2J51SN8JVMn30nkj4eiiLe8SuCWYjh3eg9B9rXouJ+FJ+/6fGjTCnXCSFo0MsFMColaicrySTr/BeeN3L2cqOJV+HCJoYBuSsvlth2q0/CoswxKA/6bF2hFsLi5QbYn7F4CNCpK67Yd5oLE9p+rko7uOMao36oi16AuaW0L2FFPu7l9v8aFYJJa3nUw4zC+01C4KiC23+MO4bL3xxDB6SwpWKEpAeoq9khyQRMMYcyk48kU+EYNXDaKe0wM8PzOA6aPJt5g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mmKFjOyR+a+zxzq+ABjzXiX/32MJGrpCwnaIr/9KQk4=;
 b=zej+Yjx038WoHGGeXjgeuUNWO7OO+w4zrnjr4MJfVliM2FeJuZWbQ+JJf3PKP++WS+GKbXHVxK39R3lx6IhoMXpdBnkU1xjLZZkFoSaVpD+vc7/ImxbOlmttbPU57DXMTyYp6g99ACdFaqQiG6YvnhDJZqE2jswItPupaIIYVNM=
From: Henry Wang <Henry.Wang@arm.com>
To: Shawn Anastasio <sanastasio@raptorengineering.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Timothy Pearson
	<tpearson@raptorengineering.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: Re: [PATCH v3 2/2] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
Thread-Topic: [PATCH v3 2/2] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
Thread-Index: AQHZ8MpFWSy4Kouw2UKnWzY5oUxUlbAtxhQA
Date: Tue, 26 Sep 2023 23:47:49 +0000
Message-ID: <0D75C8E2-CB13-4523-852C-162845DD966F@arm.com>
References: <cover.1695767747.git.sanastasio@raptorengineering.com>
 <d16b2f8749b65e303f531776d303586336ef1729.1695767747.git.sanastasio@raptorengineering.com>
In-Reply-To:
 <d16b2f8749b65e303f531776d303586336ef1729.1695767747.git.sanastasio@raptorengineering.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS1PR08MB7539:EE_|AM7EUR03FT059:EE_|AS4PR08MB7502:EE_
X-MS-Office365-Filtering-Correlation-Id: 82ca0f9a-69d3-4947-aa95-08dbbeeb0445
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 4rHWtYkm7rg0DMfBBEZe/bXCTncmJtNhRM+qMavh19gxW8J1umcMe549p4hfk4XX3feHJFUAP3PIj1q24LbDPdfNRDZD3NR/gfXEOLLbmI3tPm+KhQ9QRQa//66ReuPo9KIwpsJw1lFSIkl2bpT947n5bPDsNAKjP9M8NtIVYzbfU28JQuE6/udWX2XICzqbROU/29weL2SO78dmcrLrcmDIDy9ke0GP1pCtBdP3YBN5sRrW4f3VUkpVNq24v8sQ2wymCWsSVysMOdbxjE60H1K1jfmY1kxreOunSNArPQHy1GFmc6UZKTto3b5uddu6HFNuaYBxSGy4cHuANEMVGnIZ6gx6sDn7z+MFfubYe+b0x1lk3AZResL++bfjkGuEH2RD0/GkdyR+vSOmTJe/6eqAUSfF5TSJBw+NUMPsn5A5otTGlWTYlw/arVRukq09DAbzb02ji1dTaGo+NEk+y1Y/yLQVegY+irz+9aYQVAy8Tobuizah22FnRfTg97HjldJafTDdQvwHcHU2DB7vsgdj1xS71hFQR1Xq1LbLI9ZWtQvJZNuWM/otzPOJoGgG4vNqp7o0ubsGXZ+iUs9j3x6CFY9jFGNIFe87EoWKJGOZoD1kEuCaxY5cEFPqsmQv9b/n+vClYPIyKAMGjhh4zA==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(376002)(136003)(346002)(396003)(230922051799003)(1800799009)(186009)(451199024)(38070700005)(2906002)(83380400001)(38100700002)(6486002)(66476007)(6512007)(54906003)(66446008)(66946007)(64756008)(91956017)(66556008)(71200400001)(53546011)(76116006)(26005)(5660300002)(6506007)(8936002)(41300700001)(478600001)(122000001)(4326008)(316002)(6916009)(8676002)(2616005)(86362001)(36756003)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <851EE393CE931141855AD54FF2A5D84D@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7539
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	dbbbf579-890b-4eb9-72df-08dbbeeafdcc
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8d4W2nhSTvuTGd9xcEibY844m2wnGYk3PmmznecyqJ6HZTSbmHBOn4Hl5kjmv9/I7JKPOTpgzaEu4BnW6xJ/Eyx3LJmcBGyXPDzyfAxKV9b7ITgyHxRNbcBiasRmSi9NxXc7L9WZeIADlGhel9wqtBzp3CN8Wv/b78gGfJM+ucCSwaYqLL1PUK9s1e3P1m1SzM/WecBRzifu+UaHMXXrBxDXHEcpBzEUH/cigmiLst0T1+ioA0AeyM5llqzAwsDrsGBhrfs56CkgMIfZXQPLSbI9QHkZJP6YjZR0PwJHBZJQlgM379rkZwLb/kzsXlc4xTrTx3JJcNenrkhnhz1zgIagjQNGXS8OoMkMpPZC75R2+6HNXN8XaWV/IH/1FGVFRGu2NV8YQlK7sRmkV9tKrZx/pfCrhGBd3OKbIJOagnhw/Yot7n15IxVuL+thet+fp2qQSdHh1aq/D4EU046IhovNioA8HsWDmxuZmSP/eTqQR443I7SGks4wW8GPnpuZKHOijlx2gAM3RX1BncgAbweQPfp22hbfSETM/fUYuQcPjEkU/ba3Pii2HF4b/vVE81i8GiEwGIJp0myMwKLhm5DPUAHEZsZfX9hfj/9JtbDEhmwfpeSFcykT/f9hlQwXbInkZNyXOLVWeiMC/8xh+26NjkPxf585lbFm+R7OEIYyg9L/b5/uhhQeJ79+CP5oPyB11xw5a1JDgL3mIWYmRELu7BYuYXm9zPV9wwNIab4=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(136003)(376002)(39860400002)(346002)(230922051799003)(451199024)(82310400011)(1800799009)(186009)(46966006)(40470700004)(36840700001)(33656002)(86362001)(36756003)(40480700001)(6506007)(5660300002)(6486002)(26005)(53546011)(70206006)(70586007)(6512007)(2616005)(336012)(316002)(6862004)(54906003)(478600001)(41300700001)(4326008)(8676002)(8936002)(47076005)(2906002)(40460700003)(82740400003)(356005)(36860700001)(81166007)(83380400001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 23:48:00.0854
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 82ca0f9a-69d3-4947-aa95-08dbbeeb0445
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7502

Hi,

> On Sep 27, 2023, at 06:37, Shawn Anastasio <sanastasio@raptorengineering.=
com> wrote:
>=20
> When building for Power with CONFIG_DEBUG unset, a compiler error gets
> raised inside page_alloc.c's node_to_scrub function:
>=20
> common/page_alloc.c: In function 'node_to_scrub.part.0':
> common/page_alloc.c:1217:29: error: array subscript 1 is above array
>            bounds of 'long unsigned int[1]' [-Werror=3Darray-bounds]
> 1217 |         if ( node_need_scrub[node] )
>=20
> It appears that this is a false positive, given that in practice
> cycle_node should never return a node ID >=3D MAX_NUMNODES as long as the
> architecture's node_online_map is properly defined and initialized, so
> this additional bounds check is only to satisfy GCC.
>=20
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

I am seeing some discussions going on about this patch, but once this
is patch is ready for merge please feel free to add:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


> ---
> v2: Add comment to explain the bounds check.
>=20
> xen/common/page_alloc.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>=20
> diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
> index 35d9a26fa6..9b5df74fdd 100644
> --- a/xen/common/page_alloc.c
> +++ b/xen/common/page_alloc.c
> @@ -1211,6 +1211,14 @@ static unsigned int node_to_scrub(bool get_node)
>         } while ( !cpumask_empty(&node_to_cpumask(node)) &&
>                   (node !=3D local_node) );
>=20
> +        /*
> +         * In practice `node` will always be within MAX_NUMNODES, but GC=
C can't
> +         * always see that, so an explicit check is necessary to avoid t=
ripping
> +         * its out-of-bounds array access warning (-Warray-bounds).
> +         */
> +        if ( node >=3D MAX_NUMNODES )
> +            break;
> +
>         if ( node =3D=3D local_node )
>             break;
>=20
> --
> 2.30.2
>=20
>=20



From xen-devel-bounces@lists.xenproject.org Tue Sep 26 23:57:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 26 Sep 2023 23:57:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608587.947176 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlHvA-0006iG-GO; Tue, 26 Sep 2023 23:56:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608587.947176; Tue, 26 Sep 2023 23:56:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlHvA-0006i9-DK; Tue, 26 Sep 2023 23:56:52 +0000
Received: by outflank-mailman (input) for mailman id 608587;
 Tue, 26 Sep 2023 23:56:51 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=MAuE=FK=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlHv9-0006i2-4Z
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 23:56:51 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 59d73920-5cc8-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 01:56:48 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 62F3BCE1774;
 Tue, 26 Sep 2023 23:56:42 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A1E98C433C7;
 Tue, 26 Sep 2023 23:56:40 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 59d73920-5cc8-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695772601;
	bh=/vKbeZjucJ9ebTT7JCQWondLJx9twIzfz2Q6Gq2xCwo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=TSGwKG8uxaNeUCXMCt7RWATFd+Hyb758nBWjeGvES4oeGniI6Z4ULO0/5yc+QutHo
	 nkd/lpwEJD44NIwNt2pEcJhF/E/DvBGXDl7dG0eEcqUHwVCvRA9z2kIgfOyAnkPt72
	 vFc5hkLDQ/Xc2eqZyk6cxTjpYXaFp4KCqStz0W3fk5dU3T7XPmbHrDA6egXmbaMYUr
	 VIu7D1cz8Ykw8noWKENS9jwXbxeJ+ChgngcjlHkD0LlHZJYeZZmef0m23PphIu374L
	 r1tsaWTaLCFoEYlIs2cUPfXqJUrlAsvIctVRfWAv0jQp7iuz2rrYqNHcX25/J5+RMs
	 PGEtKhZGGnP2A==
Date: Tue, 26 Sep 2023 16:56:38 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Shawn Anastasio <sanastasio@raptorengineering.com>
cc: xen-devel@lists.xenproject.org, 
    Timothy Pearson <tpearson@raptorengineering.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Michal Orzel <michal.orzel@amd.com>, Jan Beulich <jbeulich@suse.com>
Subject: Re: [PATCH v3 1/2] automation: Change build script to use arch
 defconfig
In-Reply-To: <5baa15904c5bb5f8d668c67519ad08293c32982d.1695767747.git.sanastasio@raptorengineering.com>
Message-ID: <alpine.DEB.2.22.394.2309261656320.1403502@ubuntu-linux-20-04-desktop>
References: <cover.1695767747.git.sanastasio@raptorengineering.com> <5baa15904c5bb5f8d668c67519ad08293c32982d.1695767747.git.sanastasio@raptorengineering.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Tue, 26 Sep 2023, Shawn Anastasio wrote:
> Change automation build script to call the make defconfig target before
> setting CONFIG_DEBUG and extra options. This fixes issues on Power where
> the build fails without using the ppc64_defconfig.
> 
> Reported-by: Jan Beulich <jbeulich@suse.com>
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> v3: Drop unnecessary sed.
> 
> v2: No changes.
> 
>  automation/scripts/build | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/automation/scripts/build b/automation/scripts/build
> index b4edcf010e..b3c71fb6fb 100755
> --- a/automation/scripts/build
> +++ b/automation/scripts/build
> @@ -22,7 +22,10 @@ if [[ "${RANDCONFIG}" == "y" ]]; then
>      # RANDCONFIG implies HYPERVISOR_ONLY
>      HYPERVISOR_ONLY="y"
>  else
> -    echo "CONFIG_DEBUG=${debug}" > xen/.config
> +    # Start off with arch's defconfig
> +    make -C xen defconfig
> +
> +    echo "CONFIG_DEBUG=${debug}" >> xen/.config
> 
>      if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then
>          echo "${EXTRA_XEN_CONFIG}" >> xen/.config
> --
> 2.30.2
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 00:05:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 00:05:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608594.947185 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlI3T-0001FB-Hw; Wed, 27 Sep 2023 00:05:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608594.947185; Wed, 27 Sep 2023 00:05:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlI3T-0001F4-FN; Wed, 27 Sep 2023 00:05:27 +0000
Received: by outflank-mailman (input) for mailman id 608594;
 Wed, 27 Sep 2023 00:05:26 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlI3R-0001Es-Ve; Wed, 27 Sep 2023 00:05:25 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlI3R-0001sp-NF; Wed, 27 Sep 2023 00:05:25 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlI3R-0000DG-Bm; Wed, 27 Sep 2023 00:05:25 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlI3R-0007NT-B7; Wed, 27 Sep 2023 00:05:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=C/JzOrj8fxyLlfuGnB47pyRFtr1cDLPPiz1tSYxMFvk=; b=e9RwB/Z/cwvBDb2Mz6sWt85Ya+
	83qnr5NV40LmdTc8/zRpbpiva9kYlzDzfafOz3SMVPr00RKuUpfx+VxgiGy93rBw0qDf76glLSrGo
	VpDHQmzZHyE6ES2zpfAWqXXWcASEO8VAlnSv1+eF177rVPVEn+F5uBS+NU7KzoHkEiZM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183184-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183184: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=bf0bdacdd6f6cdd2e9ac5db14b6daf19a5a5bd57
X-Osstest-Versions-That:
    ovmf=39f3c26e8c40e092baeb0ec4d0396498506e0a9e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 27 Sep 2023 00:05:25 +0000

flight 183184 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183184/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 bf0bdacdd6f6cdd2e9ac5db14b6daf19a5a5bd57
baseline version:
 ovmf                 39f3c26e8c40e092baeb0ec4d0396498506e0a9e

Last test of basis   183174  2023-09-26 07:42:29 Z    0 days
Testing same since   183184  2023-09-26 20:12:38 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Nate DeSimone <nathaniel.l.desimone@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   39f3c26e8c..bf0bdacdd6  bf0bdacdd6f6cdd2e9ac5db14b6daf19a5a5bd57 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 00:11:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 00:11:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608600.947196 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlI9I-0002w7-6X; Wed, 27 Sep 2023 00:11:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608600.947196; Wed, 27 Sep 2023 00:11:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlI9I-0002w0-3m; Wed, 27 Sep 2023 00:11:28 +0000
Received: by outflank-mailman (input) for mailman id 608600;
 Wed, 27 Sep 2023 00:11:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=x8T5=FL=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qlI9H-0002vu-0R
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 00:11:27 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2043.outbound.protection.outlook.com [40.107.7.43])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 65ba1fcc-5cca-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 02:11:25 +0200 (CEST)
Received: from DB7PR03CA0074.eurprd03.prod.outlook.com (2603:10a6:10:72::15)
 by AS8PR08MB10290.eurprd08.prod.outlook.com (2603:10a6:20b:63c::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 00:10:56 +0000
Received: from DBAEUR03FT025.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:72:cafe::f0) by DB7PR03CA0074.outlook.office365.com
 (2603:10a6:10:72::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21 via Frontend
 Transport; Wed, 27 Sep 2023 00:10:56 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT025.mail.protection.outlook.com (100.127.142.226) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Wed, 27 Sep 2023 00:10:55 +0000
Received: ("Tessian outbound d084e965c4eb:v175");
 Wed, 27 Sep 2023 00:10:55 +0000
Received: from 06177d7caeaf.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 65D7D1B4-6F4E-4B82-9E2E-99008D6FB30E.1; 
 Wed, 27 Sep 2023 00:10:15 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 06177d7caeaf.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 27 Sep 2023 00:10:15 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAXPR08MB6384.eurprd08.prod.outlook.com (2603:10a6:102:154::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 00:10:14 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%6]) with mapi id 15.20.6813.027; Wed, 27 Sep 2023
 00:10:12 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 65ba1fcc-5cca-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fkEyoOCf3ll+n+6vhBV9iRtbs/uirNtc5FtaApQyVZE=;
 b=4a5S7TmbzjMMZbNENy8ii9Uv5wAK2Fv24LuFUjqQSlgxBSf233LfA0BwblJIhnZE0UsquaDO8es5qJotEl88XeSFBSf0HiDlqbY+BavKgywJkp0ycPbKPM4He/xlR+LC03QTX/cFm+TfGtz1+MRetnmmC4DUW07u8qoHNkzudvE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 0c80221ebb69171e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=g+8nVRp+QCy+H02aaCpfmPyWuyMqZeE3jWl/OXw1P0DDiYx+Y+otmMY2odUIdMWiYw+3huVkq3dr134GLDa8cJ8tLjLCGejAhtC5QvaAfn74jSplTKmlT9N2GeTPNgKdhUa5PBBAXSwk6HH55CCwMNdX5C4nCS8IlIp2smt0pbA7fwZcC8uQOUkYPOFhDkngz2+xdpf/4eXzTO1yEnlEeHQJubKRDdD+np7m0XeoIatxZNYpfE/lxbzxZdIMFTI3iaLIBs6RlQl2Q7Rxi6+dpUCl/c5LMgiUDt3Q2gYotTwaoKEwMocdW2zGM0/iVVKQg+ccCTmtOhVLCV0nZ0FlHg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fkEyoOCf3ll+n+6vhBV9iRtbs/uirNtc5FtaApQyVZE=;
 b=Vt81uNVhjW3Km7MAsPYMPef65jEkVr83GmzRN1IJZ2drJpcLi0Ip6Qevm2S5GuFSp8aBR/eFyCog30qyQU0PV+9v3ztCXEz4TtJ0bjD/zV9LAqqzAB25rBOdJBzVB50TdfLEXOUNMuJblDgTX3RY0oFh5Je1pP5eWfzpIbn0X6r3z3hSJp363qk7Ge+X3f6uJ2qGkZ/Hdg8aF/oRS7aacM8osLXFkCy405s/nyLeIe7z5AtvW3g/g8ebM/Hl8CjoBp2UZ0+mP2UgiLyTIG7J7Bf2KmM0/VxTDVJOwrfAt36ZrZKoTObpTti1pspmNCYA6ZGjEGA0PfmsrwF1YWsOYQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fkEyoOCf3ll+n+6vhBV9iRtbs/uirNtc5FtaApQyVZE=;
 b=4a5S7TmbzjMMZbNENy8ii9Uv5wAK2Fv24LuFUjqQSlgxBSf233LfA0BwblJIhnZE0UsquaDO8es5qJotEl88XeSFBSf0HiDlqbY+BavKgywJkp0ycPbKPM4He/xlR+LC03QTX/cFm+TfGtz1+MRetnmmC4DUW07u8qoHNkzudvE=
From: Henry Wang <Henry.Wang@arm.com>
To: "committers@xenproject.org" <committers@xenproject.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>,
	"sstabellini@kernel.org" <sstabellini@kernel.org>,
	"community.manager@xenproject.org" <community.manager@xenproject.org>
Subject: Temporary commit moratorium for 4.18 RC1
Thread-Topic: Temporary commit moratorium for 4.18 RC1
Thread-Index: AQHZ8NWHieDtW3L/RkOX7PfWoLrW7g==
Date: Wed, 27 Sep 2023 00:10:12 +0000
Message-ID:
 <AS8PR08MB799113F8D3EFDD9AC16DD88F92C3A@AS8PR08MB7991.eurprd08.prod.outlook.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PAXPR08MB6384:EE_|DBAEUR03FT025:EE_|AS8PR08MB10290:EE_
X-MS-Office365-Filtering-Correlation-Id: 83b5b756-6bd9-4621-2d39-08dbbeee3830
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 j1dgmCIL8lo31E+XOaONV+0dDRLCqwVcqlLI6wIoDVPPAri1NolkevR5gLvNlTsc3JqfVgPwYveETs1y4kUkIIOgr7MfnGvMiZp3WMKosdX5bcN5vkGmLY6G1JHyBTj2ZYqWmO2m0Hz1WfnHlhY6J30abeT1g6hOI03mZ0xzVfvllALENX1gmhx7Ip+7f/nh15EhhgjvUEtw0BqPrT2qoPRAH4EFUz1EJNHY/EaVJhk3oLgqmFUQawnfM2hvx4Mftgj4O6icjCoAljTMoqqojNmRFkT3EinjqSTu/mHSqoJsv8LjwR4bSRlc9u+5GDUvMqVMxB/qhjdGEbFFsjpiRHQiIsfaxnuCBMfhXhJb6Q0d0QEzAO3c1+0G+SDobpQCXe6UTpLDJaKpEqrEjUihdg5gO4geX7w1dxtWEqzZ9Xhglt6TOprRAqI0hO1WU2vQhhcHsqfPHoXxQqH6C6SjlkjnNrjN9Lhb5KLtbf2QbylUdUvoeihadr+m6wARMirRlQXNQOfUHyycPxCFdqltSIV3wbw0CdjY1AJ46kTWOC7QmG4eADrDH59ZG+xVXxpOzxGwFpB4BNSCUKeJeKOO8YgW6eNygeRQJVg5PKKYdHp8og4adMX57kwwCeF+lsnM
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(376002)(39860400002)(366004)(396003)(230922051799003)(451199024)(186009)(1800799009)(83380400001)(4744005)(55016003)(8936002)(4326008)(5660300002)(8676002)(478600001)(26005)(71200400001)(86362001)(38070700005)(76116006)(38100700002)(316002)(52536014)(66476007)(110136005)(66446008)(54906003)(122000001)(66556008)(64756008)(9686003)(66946007)(2906002)(41300700001)(33656002)(7696005)(6506007);DIR:OUT;SFP:1101;
Content-Type: multipart/alternative;
	boundary="_000_AS8PR08MB799113F8D3EFDD9AC16DD88F92C3AAS8PR08MB7991eurp_"
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6384
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT025.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	0bcf5712-eaba-467d-779f-08dbbeee1e66
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UpTxfYQgM4mmV14qwkoLtLOCtSGorD6d1RGRQ+Gno0U9z5LLiU5KgKrrxNf0i+Rq4vidzVDcAoQ93h8GIhzWyGcHGio+7VgTBSWpz9AWrAPFWZjIrTIwUHmD2WHuH9yCMggvJx2FbVIJJFIbnbMAZU0JoBRrA3EgspXuoN1EU6uVdXpRlETCfNOEjBBA/HCy1o1N+LjGBpVddOKEjuibvvQGxOkQMk3c6Ij0HAk/tH1DwglkNWrqVeDtebIJisZW84+uNy1jkAZyoghyCNFjn1Ibx9eqYxnAQou1zxloE55v1+ipT3IGgq/lIcT6m2uuHan68OCVMJ9OlQ/Iyypz/vGmbRfTm4wbikgNCgs46bcyzkO8f7vXGV1NOtPm4m5zXeHIktQM6DJPvsZDHczmlQHs13jgbw6r6n3FsF7kLeMjbdSEcz44g5xMCaTLWUFXrFAufcCucmeezmzKG2x7i1Go2sp3tUSCCOtpnYrWV4yLBUJCsNCYjz5keNYOPCffAkIRG3BFT8S2FMsG/g2Ka3grLLBJpPZ5wIGxnVzrFioF/C4r+5b6ehZsCfIbVEWRPdG2ihAiIsPjI79ADox9IZNpx6JNzOK5K/BOuogwv5/O9qtCHHkTugN3V0EWI3Q/CsYBqMj2mx8mk22UEdSTM4Y9e6fraUlnWjuGX5lBdkQHbeUMkXuQ/pA7iHUXKNbWL8v4Y75UkBtIJ4pOyLYvU6f4ujbKyNS2YyFq9xLKF1TVY0/dmJWzmKsGEuPonxrp
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(396003)(376002)(136003)(230922051799003)(451199024)(82310400011)(186009)(1800799009)(40470700004)(36840700001)(46966006)(6506007)(478600001)(336012)(26005)(47076005)(81166007)(33656002)(9686003)(82740400003)(356005)(7696005)(70206006)(110136005)(70586007)(36860700001)(83380400001)(316002)(54906003)(41300700001)(40460700003)(40480700001)(55016003)(86362001)(2906002)(5660300002)(52536014)(8676002)(4326008)(8936002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 00:10:55.7232
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 83b5b756-6bd9-4621-2d39-08dbbeee3830
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT025.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB10290

--_000_AS8PR08MB799113F8D3EFDD9AC16DD88F92C3AAS8PR08MB7991eurp_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hi committers,

We will be tagging the 4.18 RC1 on Fri Sep 29, 2023. In order to have enoug=
h time
for OSSTest to do the sync between staging and master, if there is any patc=
h to be
committed, please commit them by the morning of Thu Sep 28, 2023, EU time a=
nd
avoid committing to the staging until 4.18 RC1 is prepared. Thanks!

Kind regards,
Henry

--_000_AS8PR08MB799113F8D3EFDD9AC16DD88F92C3AAS8PR08MB7991eurp_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:o=3D"urn:schemas-microsoft-com:office:office" xmlns:w=3D"urn:sc=
hemas-microsoft-com:office:word" xmlns:m=3D"http://schemas.microsoft.com/of=
fice/2004/12/omml" xmlns=3D"http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:DengXian;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:"\@DengXian";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-ligatures:standardcontextual;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style>
</head>
<body lang=3D"en-CN" link=3D"#0563C1" vlink=3D"#954F72" style=3D"word-wrap:=
break-word">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span lang=3D"EN-US">Hi committers,<o:p></o:p></span=
></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">We will be tagging the 4.18 RC1=
 on Fri Sep 29, 2023. In order to have enough time<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">for OSSTest to do the sync betw=
een staging and master, if there is any patch to be<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">committed, please commit them b=
y the morning of Thu Sep 28, 2023, EU time and<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">avoid committing to the staging=
 until 4.18 RC1 is prepared. Thanks!<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Kind regards,<o:p></o:p></span>=
</p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Henry<o:p></o:p></span></p>
</div>
</body>
</html>

--_000_AS8PR08MB799113F8D3EFDD9AC16DD88F92C3AAS8PR08MB7991eurp_--


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 00:29:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 00:29:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608607.947205 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlIR0-0005wk-MK; Wed, 27 Sep 2023 00:29:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608607.947205; Wed, 27 Sep 2023 00:29:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlIR0-0005wd-Jl; Wed, 27 Sep 2023 00:29:46 +0000
Received: by outflank-mailman (input) for mailman id 608607;
 Wed, 27 Sep 2023 00:29:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Hjpc=FL=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlIR0-0005wX-9n
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 00:29:46 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org
 [2604:1380:4601:e00::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f40a823d-5ccc-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 02:29:43 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id CD571B811B8;
 Wed, 27 Sep 2023 00:29:42 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 053E1C433C8;
 Wed, 27 Sep 2023 00:29:40 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f40a823d-5ccc-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695774582;
	bh=dJcuY45VkVzr4wW/SE5W2DeKM/V099j827bBkZESWbQ=;
	h=From:To:Cc:Subject:Date:From;
	b=RMLae8sQ7bJ0DUdwBTnhR/+LGST7BQMLMRYSkZsfzXp2idLyN3snFr4WsQDMCvhl+
	 a5SCGh+vDPALEue3X8fW+TjiAFa+wE1+ez8/lbSeJPN6FN1nJY2lzFSzyHVCLq2Ajb
	 v7mcLVHOYmGWSdVl9Qv+rH0sq+dObQk9XRfSL0fl7UwgfcKMcd8m2iJmdEPIqnWogT
	 UBmv7AYctQj+uYgwJ5UJuOrKytUNHo5Cmq05AMr8AqTqk1jp2cYdsZ1LKx+g20nEvN
	 /lZBBvHps1uY1vX3fgdSffrvf4ycd7xmgFD2bQhLTigCMJGh/Bj90IXrmK106hJjlX
	 sRcI1B6R4E2Yw==
From: Stefano Stabellini <sstabellini@kernel.org>
To: xen-devel@lists.xenproject.org
Cc: andrew.cooper3@citrix.com,
	george.dunlap@citrix.com,
	jbeulich@suse.com,
	julien@xen.org,
	sstabellini@kernel.org,
	wl@xen.org,
	roger.pau@citrix.com,
	Stefano Stabellini <stefano.stabellini@amd.com>
Subject: [PATCH v2] SUPPORT: downgrade Physical CPU Hotplug to Experimental
Date: Tue, 26 Sep 2023 17:29:38 -0700
Message-Id: <20230927002938.1770418-1-sstabellini@kernel.org>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Stefano Stabellini <stefano.stabellini@amd.com>

The feature is not commonly used, and we don't have hardware to test it,
not in OSSTest, not in Gitlab, and not even ad-hoc manually by community
members. We could use QEMU to test it, but even that it is known not to
work.

Also take the opportunity to rename the feature to "ACPI CPU Hotplug"
for clarity.

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
---
Changes in v2:
- rename the feature following Roger's suggestion
---
 SUPPORT.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/SUPPORT.md b/SUPPORT.md
index 3461f5cf2f..3472b6edfa 100644
--- a/SUPPORT.md
+++ b/SUPPORT.md
@@ -46,9 +46,9 @@ For the Cortex A77 r0p0 - r1p0, see Errata 1508412.
 
 ## Host hardware support
 
-### Physical CPU Hotplug
+### ACPI CPU Hotplug
 
-    Status, x86: Supported
+    Status, x86: Experimental
 
 ### Physical Memory
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 00:31:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 00:31:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608611.947216 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlISn-0007TB-2h; Wed, 27 Sep 2023 00:31:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608611.947216; Wed, 27 Sep 2023 00:31:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlISm-0007T4-Ut; Wed, 27 Sep 2023 00:31:36 +0000
Received: by outflank-mailman (input) for mailman id 608611;
 Wed, 27 Sep 2023 00:31:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Hjpc=FL=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlISm-0007Su-5G
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 00:31:36 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org
 [2604:1380:4601:e00::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 361ea0d3-5ccd-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 02:31:34 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id DA306B8119B;
 Wed, 27 Sep 2023 00:31:33 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8CD10C433C7;
 Wed, 27 Sep 2023 00:31:31 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 361ea0d3-5ccd-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695774692;
	bh=eUDwni8Yx0x0N65uuADMr87IfihBny68wpyT/2Iy5c8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=HTXE/AAG1y3qyzdqBPRzFFBWij1tgE2BxB0RDiNIZZVcOUvGZhBmIkSYMR6LGBivu
	 rvJA/zbaHuXyoNTax3aCo5DeYqykUq/C3B0DtE5L7EPfTzeIyKncSJqfPfFbBJJVs+
	 wmW0nQylcnNOhhNNweKoeNa3hA5r8Q5xyCuqrxNH51Z0dnAjjYGHrv3EL1I9rq7jlo
	 c3iy3xrXsatOvtvHqbOUetgxEgbEeqH3n/DigWT8E8UQvztend4d/qOzv7DNTz20RI
	 KFPvV5AW+u63uYvFXY63gWSmbvbbVkYJb3vVOYBJwqx9A5XbgkkuY9hHWaKLtGWoz5
	 G4Y37cAMIZxgw==
Date: Tue, 26 Sep 2023 17:31:29 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Henry Wang <Henry.Wang@arm.com>
cc: Jan Beulich <jbeulich@suse.com>, 
    "sstabellini@kernel.org" <sstabellini@kernel.org>, 
    Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    "jgross@suse.com" <jgross@suse.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Anthony PERARD <anthony.perard@citrix.com>, 
    "community.manager@xenproject.org" <community.manager@xenproject.org>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about code freeze
In-Reply-To: <338CEC44-2393-4A62-975B-40F5716CEE18@arm.com>
Message-ID: <alpine.DEB.2.22.394.2309261729500.1403502@ubuntu-linux-20-04-desktop>
References: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com> <a582759b-c967-44cc-ec6c-7d9104bad4a5@suse.com> <0be1e32f-5600-7b3a-8d72-84297a1ebee0@suse.com> <DE6F0412-BF5A-4242-9D08-521034F509FE@arm.com>
 <729d4ed8-f33d-f7f4-ddd9-3d8e91671474@suse.com> <338CEC44-2393-4A62-975B-40F5716CEE18@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-241593601-1695774601=:1403502"
Content-ID: <alpine.DEB.2.22.394.2309261731260.1403502@ubuntu-linux-20-04-desktop>

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-241593601-1695774601=:1403502
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2309261731261.1403502@ubuntu-linux-20-04-desktop>

On Tue, 26 Sep 2023, Henry Wang wrote:
> Hi Jan,
> 
> > On Sep 26, 2023, at 16:01, Jan Beulich <jbeulich@suse.com> wrote:
> > 
> > On 26.09.2023 09:58, Henry Wang wrote:
> >>> On Sep 26, 2023, at 15:46, Jan Beulich <jbeulich@suse.com> wrote:
> >>> Furthermore may I ask that you keep an eye on the physical CPU hotplug
> >>> situation? It continues to be documented as fully supported, and as long as
> >>> that's the case 47342d8f490c (" x86/ACPI: Ignore entries with invalid APIC IDs
> >>> when parsing MADT") would imo need reverting. While I had indicated that I
> >>> would do the revert, a patch to SUPPORT.md was meanwhile proposed (which
> >>> would of course further need accompanying by a CHANGELOG.md entry), but didn't
> >>> really make progress since then. Yet I also didn't want to "needlessly" do the
> >>> revert ...
> >> 
> >> I think you are referring to [1]
> > 
> > Yes, that's the one.
> > 
> >> (and a proper CHANGELOG), I added this to my list
> >> if all people involved is fine with this patch from Stefano,
> > 
> > Iirc there were comments on the wording already, but no update to the patch.
> 
> As this is simply a doc change, I think we still have time for the author (Stefano) to respin
> the patch. I am replying with his email address set to “To:” to catch his attention. Also,
> I think if Stefano is happy, probably any x86 maintainer or probably myself can pick
> this patch up as the follow up.

It's out:
https://marc.info/?l=xen-devel&m=169577443417860
--8323329-241593601-1695774601=:1403502--


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 01:06:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 01:06:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608617.947226 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlIzt-0004FD-Ik; Wed, 27 Sep 2023 01:05:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608617.947226; Wed, 27 Sep 2023 01:05:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlIzt-0004F6-Fp; Wed, 27 Sep 2023 01:05:49 +0000
Received: by outflank-mailman (input) for mailman id 608617;
 Wed, 27 Sep 2023 01:05:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Hjpc=FL=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlIzs-0004Ex-2p
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 01:05:48 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fa81651f-5cd1-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 03:05:41 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 245FDB815A1;
 Wed, 27 Sep 2023 01:05:42 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 368E4C433C8;
 Wed, 27 Sep 2023 01:05:40 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fa81651f-5cd1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695776741;
	bh=8Zy/S2qAU0clffH7exmIqF2GC5RWNwcxk1KpJiy6hvU=;
	h=From:To:Cc:Subject:Date:From;
	b=g7u4ZgU585mVWv9ND94e7Ce8Ab+Y6AXQI8OmYm9tYaBP3UqoO2u1/FB4huUnEZU8c
	 ZpO2lCCabOJyy/svDmT5HgWaIgrrwfEB3Fmqthv2VYzveStGmdZUTUPVqqfCfIw5UH
	 tFiKGLf04kPOipItwA9T68dVjXhGP5JPe2aZmtv1n2vs3zv6TxKk1FHiC/gL4wQsZw
	 +97ZVDbRfDqwFLuXfxsDKikt94ZwkpTVLlBQBUbdvbUcPSuQ/M2WUb4UCxLyhjR14Q
	 paWzKQBee/ZJOIUVRmCWhwR0ftGHjhMvr+scziVP5RyCBZpDIIH+uogQqPMaVZuU3O
	 nt8tFEGM1G0AA==
From: Stefano Stabellini <sstabellini@kernel.org>
To: xen-devel@lists.xenproject.org
Cc: andrew.cooper3@citrix.com,
	jbeulich@suse.com,
	george.dunlap@citrix.com,
	julien@xen.org,
	sstabellini@kernel.org,
	bertrand.marquis@arm.com,
	roger.pau@citrix.com,
	roberto.bagnara@bugseng.com,
	Stefano Stabellini <stefano.stabellini@amd.com>
Subject: [PATCH] docs/misra: add rule 11.9
Date: Tue, 26 Sep 2023 18:05:38 -0700
Message-Id: <20230927010538.1778201-1-sstabellini@kernel.org>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Stefano Stabellini <stefano.stabellini@amd.com>

Following up from the MISRA C group discussion, add Rule 11.9 to
docs/misra/rules.rst.

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
---
Rule 13.1 also discussed but it is already in docs/misra/rules.rst
---
 docs/misra/rules.rst | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index 8e7d17d242..28dc3a4d66 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -373,6 +373,11 @@ maintainers if you want to suggest a change.
      - A cast shall not remove any const or volatile qualification from the type pointed to by a pointer
      -
 
+   * - `Rule 11.9 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_11_09.c>`_
+     - Required
+     - The macro NULL shall be the only permitted form of integer null pointer constant
+     -
+
    * - `Rule 12.5 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_12_05.c>`_
      - Mandatory
      - The sizeof operator shall not have an operand which is a function
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 01:59:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 01:59:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608623.947237 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlJpr-0004aa-S2; Wed, 27 Sep 2023 01:59:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608623.947237; Wed, 27 Sep 2023 01:59:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlJpr-0004aT-NC; Wed, 27 Sep 2023 01:59:31 +0000
Received: by outflank-mailman (input) for mailman id 608623;
 Wed, 27 Sep 2023 01:59:30 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=odcs=FL=invisiblethingslab.com=demi@srs-se1.protection.inumbo.net>)
 id 1qlJpq-0004aI-96
 for xen-devel@lists.xen.org; Wed, 27 Sep 2023 01:59:30 +0000
Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com
 [66.111.4.26]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 79d8489f-5cd9-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 03:59:25 +0200 (CEST)
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id 50A255C26F3;
 Tue, 26 Sep 2023 21:59:21 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute4.internal (MEProxy); Tue, 26 Sep 2023 21:59:21 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue,
 26 Sep 2023 21:59:20 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 79d8489f-5cd9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm2; t=
	1695779961; x=1695866361; bh=LdVIWQ3zdC2JQGYSV6uGe+Xx0lvi4SgBaLz
	jz8Feerg=; b=cU7igk30miSG1RQN6wVx2H5R/zy5Cy3HeM/rcevgtrERdAmOqNg
	vk8+UULrnTBmnczz2XzcinKzOhSl84Gbre5JZ6mhxzURIayTxo+d1i4w8oxA0zZi
	yfSH0A2Kd87HbYjHBpixMJAF6h1l5vpEq66taSiTgxtnItmxPGfSURso+/yA6KfT
	UuKqJSV/0EiPm7QKb1qO9fes6wSMiGuraNTsLXvWFS0xEYc646M5fH/e8dpUJhbx
	7JNyNFg0ePmGHppRl92FlSd6xvbuWbvS/U5LSY7EJFyKnEYKOPnSEB1olJc3aLJP
	ixkiPGPnTQ5xC7Ho4+HxUefqfxTCeaqzGHA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; t=1695779961; x=1695866361; bh=LdVIWQ3zdC2JQ
	GYSV6uGe+Xx0lvi4SgBaLzjz8Feerg=; b=mt7rXoHeMym4rTU+BsKQbssq3w67q
	T3BYAKMqHiJh4UeVHbAzHSdd/t+/Mtyl82SjkBPk0eKm5y/XZq50SzgZqywddQGE
	3YQcnLPhKUBU4Tqa4+LmMQ49JbiM4QGo/Cn8SMRF8k1FnyPZAQoHwaKD82tPT8U8
	tASY/wMExSuvngQpNcPUXxqJaAFcggK4qWDQDzmZELKnoOpkBzZh0wgsBMl6n0iq
	yX+jQmTsz5sAAfPAVjVkoaL7F+G9Rb2w02WFTsTKZZ5dhg5tHO0zLRxsRjDuih4Z
	mFPYJCZ6aHH+sB7DAXXfc2SdqbUaLK/7PK+sFz5gSIDv0NV42YgONbG8g==
X-ME-Sender: <xms:eIwTZT6ZiSBd5iETkZnzuUGO9X0lu8SeN7J--ZYZ5eOuffTanUSEtA>
    <xme:eIwTZY4PYsvxcodrdiP_INtcJLBmkwzoPSZCRp3Gm-R9DRLwy8jfwrLjnYWEsWvOn
    TojSvt9ETpTasA>
X-ME-Received: <xmr:eIwTZaeLAiVYvo9yyTsXZDa1YGWinCnUrjTX7EXQjBO8PQyZRo83h7mXiT_EasgYjPUZcYJhKtomauclE3xdCNetU2KHv-uuNzuTYiKjxEmYAop_>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvjedrtddugdehgecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpeffhffvvefukfhfgggtjgesthdtredttddtvdenucfhrhhomhepffgvmhhiucfo
    rghrihgvucfqsggvnhhouhhruceouggvmhhisehinhhvihhsihgslhgvthhhihhnghhslh
    grsgdrtghomheqnecuggftrfgrthhtvghrnhepjedtveegfedtgfeigffgiedtveeuueei
    fefffeeuhfdtffekgefhvdfgiefhuefgnecuffhomhgrihhnpegrmhgurdgtohhmnecuve
    hluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepuggvmhhisehi
    nhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomh
X-ME-Proxy: <xmx:eIwTZULsZOBJ40wDeOHZfOblk4Rc-SumeUJQroYAuf1sKmKYYtiIlg>
    <xmx:eIwTZXKoV3yEq3y_CeG57KKcMhMsrkT3L4fijQCwBpdOjglBRjxiww>
    <xmx:eIwTZdzAp1iwMLZr69Vv8Vexm_FoyuO_XctUQlhwa2gopT41k0sM4A>
    <xmx:eYwTZUHafhNhZ6d26LiwzPn02IhZrkYpDjb8hlvw9yo9nuh0VSYtuQ>
Feedback-ID: iac594737:Fastmail
Date: Tue, 26 Sep 2023 21:59:19 -0400
From: Demi Marie Obenour <demi@invisiblethingslab.com>
To: oss-security@lists.openwall.com, xen-announce@lists.xen.org,
	xen-devel@lists.xen.org, xen-users@lists.xen.org,
	kvm@lore.kernel.org, devel@sel4.systems
Cc: "Xen.org security team" <security-team-members@xen.org>
Subject: Re: [oss-security] Xen Security Advisory 439 v1 (CVE-2023-20588) -
 x86/AMD: Divide speculative information leak
Message-ID: <ZROMd1GCpD8uDtbE@itl-email>
References: <E1qko5Z-0003cF-KD@xenbits.xenproject.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii; x-action=pgp-signed
In-Reply-To: <E1qko5Z-0003cF-KD@xenbits.xenproject.org>

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

On Mon, Sep 25, 2023 at 04:05:37PM +0000, Xen Security wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
> 
>             Xen Security Advisory CVE-2023-20588 / XSA-439
> 
>              x86/AMD: Divide speculative information leak
> 
> ISSUE DESCRIPTION
> =================
> 
> In the Zen1 microarchitecure, there is one divider in the pipeline which
> services uops from both threads.  In the case of #DE, the latched result
> from the previous DIV to execute will be forwarded speculatively.
> 
> This is a covert channel that allows two threads to communicate without
> any system calls.  In also allows userspace to obtain the result of the
> most recent DIV instruction executed (even speculatively) in the core,
> which can be from a higher privilege context.
> 
> For more information, see:
>  * https://www.amd.com/en/resources/product-security/bulletin/amd-sb-7008.html
> 
> IMPACT
> ======
> 
> An attacker might be able to infer data from a different execution
> context on the same CPU core.
> 
> VULNERABLE SYSTEMS
> ==================
> 
> All versions of Xen are vulnerable.
> 
> Only AMD Zen1 CPUs are believed to be vulnerable.
> 
> MITIGATION
> ==========
> 
> There is no mitigation.
> 
> RESOLUTION
> ==========
> 
> The patches for Xen overwrite the buffer in the divider on the
> return-to-guest path.
> 
> However, as with some prior speculative vulnerabilities, the fix is only
> effective in combination with disabling SMT.  For the same reasons as
> before, Xen does not disable SMT by default.
> 
> The system administrator is required to risk-assess their workload, and
> choose whether to enable or disable SMT.  Xen will issue a warning if
> SMT is active and the user has not provided an explicit choice via the
> smt=<bool> command line option.
> 
> Details of the vulnerability became public before the Xen patches were
> complete.  Hence the patches are already applied to the appropriate
> trees.  They are:
> 
> Xen-unstable: 1c18d7377453^..b5926c6ecf05
> Xen 4.17:     d2d2dcae879c^..9ac2f49f5fa3
> Xen 4.16:     08539e8315fd^..de751c3d906d
> Xen 4.15:     db3386e6cad6^..d7b78041dc81
> -----BEGIN PGP SIGNATURE-----
> 
> iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAmURr2UMHHBncEB4ZW4u
> b3JnAAoJEIP+FMlX6CvZA1QH/RNSR1O6QJjd7z2gSGA9Yka7VWyYOMB2J01AaIl7
> 69zCRkpqg+baF1aQaAVR0fj39aF7M7xXrd/LSk+E4BBiCRSxxRzbWUGYn9qTLR9w
> srbpGXqy0aWod9MiwfbTuEzf9uG8XpwOGoRg6p6YBRYE3WrQxIVnYY+KjeeToTEs
> +UXZ0iZPrjaGaqKnF+PpkX4CMsqHhxk3iJw+ZFX2V4fVNRYgCOpjejmMjbWM4ABr
> eSsCjTU92/YZvFOsTeIzu74h5yM6SH+XTPW2S8Ve5j3mk7sM8nIiYbIyTMWNCJID
> HXeodt6eHjhZzV2z7f+/zEngnoITIqz+X3tRcTkHB9+H5jU=
> =AtsG
> -----END PGP SIGNATURE-----

These detailed security advisories are one of the things I love about
Xen.  It's hard to trust a hypervisor (KVM) that will not issue them,
for then one has no way to know if a particular problem got fixed.

I'm CCing KVM here to make sure they have a fix.  From their Git commit
history, I am almost certain that seL4 does not.  I'm CCing the seL4
developers to alert them of this and suggest that the x86 port be
removed or at least have a big warning.
- -- 
Sincerely,
Demi Marie Obenour (she/her/hers)
Invisible Things Lab
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmUTjHcACgkQsoi1X/+c
IsH6/w//RbvVlls3bC5IUSv+cB3e8aQmiFOuosxycKki3PjMeHD/nmTnlQIZteQU
EXRJRilEIfI8QsDiHKXtLz/gv9oDAvPKoUnqvdoRp9XKtUJ/USueDfujtWXSZB92
yhXMvCQ7m8Jaz0am7MbVBnZP3l2MTopHXxTe9ukeBJ2OAbGPFpjgv5d7uBpjmfTb
vb2YE8fL1iS2hK1njBWifL+Ss70JNlSfIHBHRVMtNZg6xyC0B7fW7PPtXHWfVjMd
PR6huOFg1v504ijacOYYW0eWjUv2aaURsKKAJaw5OnxbLzv6m+AxNBVAnss00PH7
B8KxhCNFOliGIm0Ih2S4F7EXFIYBQlzzAp1M95qzgY6FEurBasQ7OAQcsOFx1yae
UCm56PCZcoQhEKDbA96zJhxi1E320W5MMQeYm3ByB1/jCRQxq+4gRVUp2T00tFAu
C/LwdQJ5p5iHqhtZ9Y6YceA7OPbU+N4NhHC8azKj7gDvkpAYWrq1LzQrGaGE65Ax
Th8BdD06iMK4ZZljl1MwkwLrZw3PMOpNz6I2YKQ/NktDGIDDIDDYQXCsoRb2Z+NU
ZFAyaj5aUKMQCvzya+MYXP48r+CQl3nl4jLr6Fa0yEvn1ouWEByYuPOWR4JuyZI/
WtNSpCHRoyqX7SF60FWM5yDGCwJ07eJrmzIKWje6uthjmqjDmFc=
=WiIH
-----END PGP SIGNATURE-----


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 04:48:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 04:48:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608519.947246 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlMTQ-0000kl-L3; Wed, 27 Sep 2023 04:48:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608519.947246; Wed, 27 Sep 2023 04:48:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlMTQ-0000ke-Fi; Wed, 27 Sep 2023 04:48:32 +0000
Received: by outflank-mailman (input) for mailman id 608519;
 Tue, 26 Sep 2023 19:41:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=fXRt=FK=siemens.com=dan.driscoll@srs-se1.protection.inumbo.net>)
 id 1qlDwT-0001NT-NI
 for xen-devel@lists.xenproject.org; Tue, 26 Sep 2023 19:41:59 +0000
Received: from NAM11-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam11on20606.outbound.protection.outlook.com
 [2a01:111:f400:7eaa::606])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id bdf242c1-5ca4-11ee-9b0d-b553b5be7939;
 Tue, 26 Sep 2023 21:41:52 +0200 (CEST)
Received: from DM6PR07MB4316.namprd07.prod.outlook.com (2603:10b6:5:c1::17) by
 PH7PR07MB9466.namprd07.prod.outlook.com (2603:10b6:510:1ed::20) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.11; Tue, 26 Sep
 2023 19:41:45 +0000
Received: from DM6PR07MB4316.namprd07.prod.outlook.com
 ([fe80::ca48:1494:943c:3430]) by DM6PR07MB4316.namprd07.prod.outlook.com
 ([fe80::ca48:1494:943c:3430%5]) with mapi id 15.20.6838.016; Tue, 26 Sep 2023
 19:41:45 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bdf242c1-5ca4-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=QOJVvJtW26ISAck+2ReEh7tN3hJnJUMO6yS8kExGHZnY5ggyf6T8x997fcchCTuMunTzk39sx/7fv+2P9kmD662ALsxqOIeaNXRYfumKLWymHJgoi5bZVtwe2dQmvu/fOtStQYFaJzlllRYKSseU6lDA9XBapFGf7D0AZgnJxAk4iohUNSw0X0yd8H1VRQ4tbJfF7KYiZXUY9Z2BRhJFSnQXNuFzAw0we/0n1EHkLBQVZXoMlaB7/55nYdRvBuKLrOycZ6iIwuhTyE1RzgckA880DwXesZYTK/CX6lfCwH1sRV1exh9Tcwh0NkacBVlsAVTOPmZyzmoxalHyiO1ctw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IGM7otXcCXKNz1HOL0pMqRluk2t26h1KrRtcNSD3cWQ=;
 b=QVcn4Uncs+riZVGlVBTSszjqvuk2n3ejuZXvdZzBdMBOZyjdMbM7WdOhWSa9yFFzUZv/ocQLlMqisDtyTEmuzfdLf89v9LGO+VT+zQUpaujPJwx1TnGOIv/kz6m2ubvf8O8vkziE/Hj3gAwbUULQ4lODENK2NdRrYhlGw1VDG1TB/FjiCGyjP7CXAhKKepmoJU/6+rav3kCmwCCkSxx0J5KApI2zAI0zKByOmolAcUY4lVn27s5+N8eaiYxpPIpTb3H1x41f9nAxOkmqRfNYLRmIpeLpweBUW6I1Nfb8LL8mI/3SjjGdnX9SgMS+f/iG9W116IVszde8xyEBKpfd2Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=siemens.com; dmarc=pass action=none header.from=siemens.com;
 dkim=pass header.d=siemens.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=siemens.com;
 s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IGM7otXcCXKNz1HOL0pMqRluk2t26h1KrRtcNSD3cWQ=;
 b=L5QSzoi2MGksZTl3CbhGljfaJgPR72RN7TypnuZNwYqVasnY5r699GvOsd53s9p/Y1Gb1m2ZYeUkZrI8Vkh1EZFFA25nsaSY19rBr58dQGInhuvpDLVi5tMhA1DUbVNU6fyEmo6JuEQsfnDaq3Cc/0d4olkTdJDZZ3wCufElf760HJ+bS82USbBwe2N6NIFxBoo+Ud+/27WI8gzkWyIg+RDWkrvEBiyZKnApJkvJlRA5AyEzkcwcw+tX5/ZM5mlOAjDa91HyX2sphPYm9KM0cJ6Aw94ev8XVd1lDdE7qeQ/oRTRN8jWZ7PfnW1RAR5EwRLEEEyZgjYcBaL24X87qNA==
From: "Driscoll, Dan" <dan.driscoll@siemens.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>,
	"arvind.raghuraman@siemens.com" <arvind.raghuraman@siemens.com>,
	"julien@xen.org" <julien@xen.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, "rahul.singh@arm.com" <rahul.singh@arm.com>, Luca
 Fancellu <Luca.Fancellu@arm.com>
Subject: Xen on AWS EC2 Graviton 2 metal instances (c6g.metal)
Thread-Topic: Xen on AWS EC2 Graviton 2 metal instances (c6g.metal)
Thread-Index: AdnwsItjvuOZZuTtRQy72nkgCbOw3Q==
Date: Tue, 26 Sep 2023 19:41:45 +0000
Message-ID:
 <DM6PR07MB43168B0D4DEA80BF2474B9D89AC3A@DM6PR07MB4316.namprd07.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
msip_labels: MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_Enabled=true;
 MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_SetDate=2023-09-26T19:41:40Z;
 MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_Method=Standard;
 MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_Name=restricted;
 MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_SiteId=38ae3bcd-9579-4fd4-adda-b42e1495d55a;
 MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_ActionId=259b605e-705d-4423-a6c1-45ef6193bf73;
 MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_ContentBits=0
document_confidentiality: Restricted
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=siemens.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DM6PR07MB4316:EE_|PH7PR07MB9466:EE_
x-ms-office365-filtering-correlation-id: 7963766a-a143-4fab-b780-08dbbec89dfe
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 FSyHEpMe07m7BCvEX7ya6BlmwrAIEpgx40PG8lDb9zTgPkii0Wnm4lNrmWUjf/pPz5r7BGETStVD9r63o9RhIzo7RCC0PnYVGuTw/XQ+MZI5Zu3r1rz1oxsD240aXY8uPalqFnfUmfjc/FcSWlEjmUV3TPUkBM6Uu3OiLlg6PLXxQBK6cigXXdYXoNOAZtVPCRTaMkw1Rc1uRmfpxnkk8RDhrXJZfj96S4pzL+DgUIM+cpJjw1vQsirMdVd5+kwEqQ9dESonXnMBMd5w3WgzRqgG/JyDBm40W4J5I/+3r6cXY6n3HToeSceDxgtDL8Cm7V27ENWbmPnjDlAuTjsRuJVI8YvW5bPq+uQOpcc/0NxwIlqi88tqbD6NDNVnD19CgxfJYR7u0b3ywYTAuTcPxrWCRb/7F9NuoO4ED0wQUYSmp0JEkdEdA8bzrxys9+RRuyqlQrOf0uj60qyr7aLnaZLQyuLEW7FXXs1PqPxGnCTZehvOqEDX88CdIsaYo24KzcfsRnbs7+EdFg52inbtYkKsLIV5gean7xlgjyor8umBPdAH9UdCfrYa7cW0Uq0ZzCAeoSBHUogV55g1XMuL41LANPK9gdced8hh1PaP2z0=
x-forefront-antispam-report:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR07MB4316.namprd07.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(346002)(136003)(366004)(39860400002)(396003)(230922051799003)(186009)(451199024)(1800799009)(52536014)(82960400001)(64756008)(66556008)(55016003)(5660300002)(2906002)(4326008)(38100700002)(41300700001)(66476007)(38070700005)(8676002)(66446008)(76116006)(316002)(54906003)(8936002)(6916009)(33656002)(86362001)(66946007)(26005)(83380400001)(9686003)(7696005)(6506007)(71200400001)(966005)(478600001)(122000001)(99936003);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?us-ascii?Q?6J6FY0BwnqRhmOu0ii+jBfFrHCwn930K/pcSu/cdpgIqfUA/1kooliFVE6kK?=
 =?us-ascii?Q?01YON8AcV5AX0jU2eEQ2MzMXBC88Kdbd+Uw73g8ad7seozOKLcp6GO6MIXDW?=
 =?us-ascii?Q?PTih7mWhZz4lK8vCRxt4FqqWF9QbLHjMyXFiuAuH+JnIm/LwEBig0WQoNDoI?=
 =?us-ascii?Q?4b5lzJAa/iZmthnvY0peCuLzDzuxqvhuRME5E41qZSdZz9zXc+p2DOHPQcz1?=
 =?us-ascii?Q?WPpjq9uIJTPGmXe5QiGJq9/i3XdxbL1oqYYwsuFgZvcm0HdvdFzNT3CR56iA?=
 =?us-ascii?Q?0cRkg24qIrHjMHStrobVEx22vp97YMd9fCNGT+Xx5Z6vhi30M1Y2YkTNSK4w?=
 =?us-ascii?Q?rKEJruG90E6I8SnDFRJLBZ2AEXnFhMOZKmEjSaIbALCJikj+mjCSRRmx7KQM?=
 =?us-ascii?Q?Nvdf+lEpW4zuOI7l3T0N3VWPo/V57qyx2URWD4/YquEjGC2Qi1QIhiDiWVZJ?=
 =?us-ascii?Q?TOgGU9kX+DjcKXogxg1RqPz3hXz9N59rduQupOihHEjMika88I1Pkp4ziriu?=
 =?us-ascii?Q?Y2bvoJd/H0xtlBHtnS8iTPkn6lZjsyuQEr0tRFdCz47NCN0E6hs4Wjk1Qpjw?=
 =?us-ascii?Q?KL3crB4x7+pdPN5S4qBnx/uy90XYlMnKv9ltMFGBlztlSzQpeN7Cq8UieM7W?=
 =?us-ascii?Q?mm7lBkUT1FRU4QfcIHChglTnqLoli5Vk7Bdq0Hxn3/CEvqRPPKkritQZkvgc?=
 =?us-ascii?Q?GP2aQtBDubrILI10YtKWme9vT1PJp2as5Aoybd0Bn10cy7Lq/PVhYvBX1cHP?=
 =?us-ascii?Q?bTM/GNXvfo6KQ1AiQhzxQvjUTJp/+YbwvnkhFQsrqmO4IokWrQv5d73eXk+4?=
 =?us-ascii?Q?Fi3CfTwUxxZUdvJIXQVUTc6tlvfUJO0xHos/r4NQOyuTwsu/1eQY1iUYbC/A?=
 =?us-ascii?Q?tff4hBJECm5KO/t/BW3OhOVP2hefxggJVMzmPBAC/R3v5RCiEpY7AnKXDcOa?=
 =?us-ascii?Q?FeiT90+W2dLYZC/LUnoDw/an/9H1Adi10SP7h4icxaIaFuwNgYFYpZXPPoxi?=
 =?us-ascii?Q?KMx07Zc3lbLMPcONsThzCqiWpNsZWR98SwKhS647IAEoMCLBLOX13xy/5CTe?=
 =?us-ascii?Q?tpScJg9y0ESfKeMAeSpyzcFx52dkjwoY67/IPv9S9WPIDLR4+6TzRPOIwR0l?=
 =?us-ascii?Q?S0EivNOlRRh4Ywb+dE9lyYVvhTapTX+LERPOxvR/PqnAFqHz9damPkhxI0wJ?=
 =?us-ascii?Q?3qNi8NQ3ZF0OahD6YwYqPxGqy52BwfUYxpiHy4lBP9luzXJDGaSkP7jsvk+h?=
 =?us-ascii?Q?5LgU4+q7IdZSd0s19LYvjuMGCgUYiA08j0tP5NIlHw1ZeGtm+2kS28LQAINT?=
 =?us-ascii?Q?9+iy4CbLqMI7AwHs368N2zVxuubp5PbdvbyKByclkUtdb6mBBWGkrgsTA1kj?=
 =?us-ascii?Q?Wj6+5k2Gu6rkOmkPER69I434NI85N7qYbOJJ+rly0KX/tYUfnhl/bId6yc6+?=
 =?us-ascii?Q?AOblZCsskjmYQbOXBWdbt1PEXy+FV0vtzli6LSvV9AWUZRzB+Q2tBLt9ldlB?=
 =?us-ascii?Q?kv0y4JKKkqq7c/KmcTlYcqjAAMrPnQgBCNYUddyjtobllKtgW1G2+ji4EwKF?=
 =?us-ascii?Q?AZkzE+JP9eTwnG7ct6rhqI/4uPPb1PS5SpioV5zW?=
Content-Type: multipart/mixed;
	boundary="_009_DM6PR07MB43168B0D4DEA80BF2474B9D89AC3ADM6PR07MB4316namp_"
MIME-Version: 1.0
X-OriginatorOrg: siemens.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DM6PR07MB4316.namprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7963766a-a143-4fab-b780-08dbbec89dfe
X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Sep 2023 19:41:45.6145
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 38ae3bcd-9579-4fd4-adda-b42e1495d55a
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: 1oePvUcbakTzRnKNLvY6o4da6WaIcsqiaBpRCLE5i7HOJnBWBStK/TSHtfw9Q/IU6loF+AV9eEINkFzBJ6lV/DSaA0Q3b9BmYp6N0dYJOJQ=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR07MB9466

--_009_DM6PR07MB43168B0D4DEA80BF2474B9D89AC3ADM6PR07MB4316namp_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

All,

	First off - sorry for the very long email, but there are a lot of details =
related to this topic and I figured more details might be better than less =
but I could be wrong here....

	Within Siemens Embedded, we have been doing some prototyping using Xen for=
 some upcoming customer related work - this email thread attempts to explai=
n what has been done here and our analysis of the problems we are having.

	We have done some initial prototyping to get Xen running on an AWS Gravito=
n 2 instance using an EC2 Arm64 "metal" instance (c6g.metal - no AWS hyperv=
isor) and ran into some problems during this prototyping.

	Since the Edge Workload Abstraction and Orchestration Layer (EWAOL) that i=
s part of SOAFEE already has some enablement of Xen in various environments=
 (including an Arm64 server environment), we used this as a starting point.

	We were able to successfully bring up Xen and a Yocto dom0 and multiple do=
mu Yocto guests on an Arm AVA server (AVA Developer Platform - 32 core Neov=
erse N1 server) following documented steps with some minimal configuration =
changes (we simply extended the configuration to include 3 Linux guests): h=
ttps://ewaol.docs.arm.com/en/kirkstone-dev/manual/build_system.html#build-s=
ystem

	So, this specific EWAOL support has all the proper bitbake layers to gener=
ate images for both bare-metal (Linux running natively) and a virtualizatio=
n build (using Xen) for AVA and also a Neoverse N1 System Development Platf=
orm (N1SDP), but we only verified this on AVA.

	AWS also has support for EWAOL on Graviton 2, but the only supported confi=
guration is a bare-metal configuration (Linux running natively) and the vir=
tualization build hasn't been implemented in the bitbake layers in their re=
po - here is the URL for information / instructions on this support: https:=
//github.com/aws4embeddedlinux/meta-aws-ewaol

	As part of our effort to bring this up, we did a VERY minimal patch to the=
 repo used for the AWS EWAOL to generate a virtualization build (attached m=
eta-aws-ewaol.patch).  The resultant build of the AWS EWAOL support with th=
is patch applied does result in Xen being built as well as a dom0 Yocto ker=
nel, but there is definitely missing support to properly build everything f=
or this virtualization layer.  Following the instructions for meta-aws-ewao=
l,  we generated an AMI and started an EC2 instance with this AMI (c6g.meta=
l type).  The resultant image does boot, but it boots into the dom0 Linux k=
ernel with problems recorded in the boot log related to Xen (see dom0-linux=
-boot.txt). =20

       Looking more closely at the EFI partition, it was clear that systemd=
-boot was being used and it was set-up to boot the dom0 Linux kernel and no=
t boot into Xen - the Xen EFI images were not present in the EFI partition =
and obviously no launch entries existed for Xen.  To rectify this, the Xen =
EFI image that were built as part of the AWS EWAOL build mentioned above wh=
ere placed in the EFI partition, along with a Xen config file that provided=
 the dom0 Linux kernel image details.  A new entry was added into the EFI i=
mage for Xen and the launch conf file was updated to boot Xen instead of do=
m0 Linux.  This resulted in the EC2 instance becoming "bricked" and no long=
er accessible.
      =20
       Details on the EFI related content and changes we made are captured =
in the meta-aws-ewaol-efi-boot-changes.txt file attached above.
      =20
       The next step was comparing the AVA Xen output that was working and =
we noticed a few differences - the AVA build did enable ACPI and UNSUPPORTE=
D kconfig settings whereas the AWS Xen build did not.  So, we tried again t=
o bring up another EC2 metal instance using the same AMI as before and util=
ized the AVA Xen EFI image instead and same Xen config file.  The result wa=
s the same - a "bricked" instance.
      =20
       We will likely try to use the entire AVA flow on AWS Graviton next a=
s it is using GRUB 2 instead of systemd-boot and we hope to maybe extend or=
 enable some of the debug output during boot.  The AWS EC2 instances have a=
 "serial console", but we have yet to see any output on this console prior =
to Linux boot logs - no success in getting EC2 serial output during EFI boo=
ting.
      =20
       We have had a call and some email exchanges with AWS on this topic (=
Luke Harvey, Jeremy Dahan, Robert DeOliveira, and Azim Siddique) and they s=
aid there have been multiple virtualization solutions successfully booted o=
n Graviton 2 metal instances, so they felt that Xen should be useable once =
we figured out configuration / boot details.  The provided some guidance ho=
w we might go about some more exploration here, but nothing really specific=
 to supporting Xen.=20
      =20
       I have attached the following files for reference:
      =20
	* meta-aws-ewaol.patch - patch to AWS EWAOL repo found at https://github.c=
om/aws4embeddedlinux/meta-aws-ewaol
	* meta-aws-ewaol-efi-boot-changes.txt - Description of EFI related changes=
 made to AWS EWAOL EFI partition in attempt to boot Xen
	* ava.xen.config - config file for Xen build for AVA using EWAOL virtualiz=
ation build
	* aws.xen.config - config file for Xen build for AWS using EWAOL virtualiz=
ation build
	* xen-4.16.1.cfg - Xen config file placed in root of EFI boot partition al=
ongside xen-4.16.1.efi image
	* aws.linux.config - dom0 Linux config file for AWS using EWAOL virtualiza=
tion buld
	* ava.linug.config - dom0 Linux config file for AVA using EWAOL virtualiza=
tion build
      =20
       Anyways, I think we are mainly looking for any pointers in how to be=
st proceed in getting Xen running on an AWS Graviton 2 c6g.metal instance -=
 problems in anything we show above, debugging tips, configuration tips, be=
tter/different starting points (instead of EWAOL), etc.

       We can always provide more details on the specifics of the AWS EC2 s=
et-up / usage if this helps - just let us know.
      =20
       Hope this all makes sense - quite a bit to all of this.

Thanks,

Dan Driscoll
Distinguished Engineer
Siemens DISW - Embedded Platform Solutions

--_009_DM6PR07MB43168B0D4DEA80BF2474B9D89AC3ADM6PR07MB4316namp_
Content-Type: application/octet-stream; name="meta-aws-ewaol.patch"
Content-Description: meta-aws-ewaol.patch
Content-Disposition: attachment; filename="meta-aws-ewaol.patch"; size=1460;
	creation-date="Tue, 26 Sep 2023 18:44:46 GMT";
	modification-date="Tue, 26 Sep 2023 19:41:41 GMT"
Content-Transfer-Encoding: base64

ZGlmZiAtLWdpdCBhL2thcy9tYWNoaW5lcy9ld2FvbC1ncmF2aXRvbjItYW1pLnlhbWwgYi9rYXMv
bWFjaGluZXMvZXdhb2wtZ3Jhdml0b24yLWFtaS55YW1sDQppbmRleCBmZmNhMWRiLi5mMDAxZDdm
IDEwMDY0NA0KLS0tIGEva2FzL21hY2hpbmVzL2V3YW9sLWdyYXZpdG9uMi1hbWkueWFtbA0KKysr
IGIva2FzL21hY2hpbmVzL2V3YW9sLWdyYXZpdG9uMi1hbWkueWFtbA0KQEAgLTQsNyArNCw3IEBA
IGhlYWRlcjoNCiAgIHZlcnNpb246IDEwDQogICBpbmNsdWRlczoNCiAgICAgLSByZXBvOiBtZXRh
LWV3YW9sDQotICAgICAgZmlsZTogbWV0YS1ld2FvbC1jb25maWcva2FzL2JhcmVtZXRhbC55bWwN
CisgICAgICBmaWxlOiBtZXRhLWV3YW9sLWNvbmZpZy9rYXMvdmlydHVhbGl6YXRpb24ueW1sDQog
DQogcmVwb3M6DQogICBtZXRhLWFybToNCkBAIC00OCw3ICs0OCw3IEBAIGxvY2FsX2NvbmZfaGVh
ZGVyOg0KICAgICBFWFRSQV9JTUFHRV9GRUFUVVJFUzpyZW1vdmUgPSAiZGVidWctdHdlYWtzIg0K
ICAgICBJTUFHRV9JTlNUQUxMOmFwcGVuZCA9ICIgZ2l0IHJuZy10b29scyBhd3MtY2xpIGNsb3Vk
LWluaXQgY2xvdWQtaW5pdC1zeXN0ZW1kIGUyZnNwcm9ncyBlMmZzcHJvZ3MtcmVzaXplMmZzIGUy
ZnNwcm9ncy10dW5lMmZzIGUyZnNwcm9ncy1lMmZzY2sgZTJmc3Byb2dzLW1rZTJmcyBwYXJ0ZWQg
c3VkbyBzdWRvLXN1ZG8gb3BlbnNzaC1zZnRwLXNlcnZlciBweXRob24zLW5ldGlmYWNlcyBweXRo
b24zLWNoYXJzZXQtbm9ybWFsaXplciBjYW51dGlscyINCiAgICAgSU1BR0VfRlNUWVBFUyArPSAi
IHdpYyB3aWMudmhkeCINCi0gICAgRElTVFJPX0ZFQVRVUkVTOmFwcGVuZCA9ICIgZXdhb2wtYmFy
ZW1ldGFsIg0KKyAgICBESVNUUk9fRkVBVFVSRVM6YXBwZW5kID0gIiBld2FvbC12aXJ0dWFsaXph
dGlvbiINCiANCiAjIHRhcmdldDogDQogIyAgIC0gZXdhb2wtYmFyZW1ldGFsLWltYWdlDQpkaWZm
IC0tZ2l0IGEvc2NyaXB0cy9jcmVhdGUtYW1pLnNoIGIvc2NyaXB0cy9jcmVhdGUtYW1pLnNoDQpp
bmRleCBiNTg2MmU2Li42ZjQyN2ZiIDEwMDY0NA0KLS0tIGEvc2NyaXB0cy9jcmVhdGUtYW1pLnNo
DQorKysgYi9zY3JpcHRzL2NyZWF0ZS1hbWkuc2gNCkBAIC0xMSw3ICsxMSw3IEBAIGlmIFsgJEFS
R0MgLWx0IDIgXTsgdGhlbg0KIGZpDQogSU1QT1JUX0JVQ0tFVF9OQU1FPSQxDQogQU1JX0RJU0tf
U0laRV9HQj0kMg0KLURJU1RST19BUkNISVRFQ1RVUkU9JHszOi0iYmFyZW1ldGFsIn0gDQorRElT
VFJPX0FSQ0hJVEVDVFVSRT0kezM6LSJ2aXJ0dWFsaXphdGlvbiJ9IA0KIA0KIElNR19ESVI9ImJ1
aWxkL3RtcF8kRElTVFJPX0FSQ0hJVEVDVFVSRS9kZXBsb3kvaW1hZ2VzL2dlbmVyaWMtYXJtNjQi
DQogVEVTVERBVEFfSlNPTj0iJHtJTUdfRElSfS9ld2FvbC0kRElTVFJPX0FSQ0hJVEVDVFVSRS1p
bWFnZS1nZW5lcmljLWFybTY0LnRlc3RkYXRhLmpzb24iDQo=

--_009_DM6PR07MB43168B0D4DEA80BF2474B9D89AC3ADM6PR07MB4316namp_
Content-Type: text/plain; name="meta-aws-ewaol-efi-boot-changes.txt"
Content-Description: meta-aws-ewaol-efi-boot-changes.txt
Content-Disposition: attachment;
	filename="meta-aws-ewaol-efi-boot-changes.txt"; size=2902;
	creation-date="Tue, 26 Sep 2023 18:44:46 GMT";
	modification-date="Tue, 26 Sep 2023 19:41:42 GMT"
Content-Transfer-Encoding: base64

Tk9URTogIFRoZSBvdXRwdXQgZGlyZWN0b3J5IHdoZW4gYnVpbGRpbmcgdGhlIHZpcnR1YWxpemF0
aW9uIGNvbmZpZ3VyYXRpb24gZm9yIG1ldGEtYXdzLWV3YW9sIGlzDQogICAgICAgbWV0YS1hd3Mt
ZXdhb2wvYnVpbGQvdG1wX3ZpcnR1YWxpemF0aW9uL2RlcGxveS9pbWFnZXMvZ2VuZXJpYy1hcm02
NCBkaXJlY3RvcnkNCg0KMS4gIFRoZSBkaXNrIGltYWdlIGdlbmVyYXRlZCBmcm9tIHRoZSB2aXJ0
dWFsaXphdGlvbiBidWlsZCAodXNpbmcgcGF0Y2ggcHJvdmlkZWQpIGlzIHVzaW5nIHN5c3RlbWQt
Ym9vdA0KICAgIGFuZCAzIHBhcnRpdGlvbnMgYXJlIGNyZWF0ZWQgaW4gdGhlIFJBVyBkaXNrIGlt
YWdlIGdlbmVyYXRlZCBpbiB0aGUgb3V0cHV0IGRpcmVjdG9yeQ0KICAgIA0KICAgICAgICAvYm9v
dCAtIHN5c3RlbWQtYm9vdCBFRkkgYm9vdCBwYXJ0aXRpb24NCiAgICAgICAgLyAtIHJvb3RmcyBm
b3IgZG9tMCBMaW51eA0KICAgICAgICBzd2FwIC0gc3dhcCBwYXJ0aXRpb24gZm9yIGRvbTAgTGlu
dXgNCg0KMi4gIFRoZSBFRkkgYm9vdCBwYXJ0aXRpb24gaXMgc2V0LXVwIGZvciBzeXN0ZW1kLWJv
b3QgYW5kIGhhcyB0aGUgZm9sbG93aW5nIGRpcmVjdG9yaWVzL2ZpbGVzOg0KDQogICAgICAgIEVG
SS8NCiAgICAgICAgICAgIEJPT1QvDQogICAgICAgICAgICAgICAgYm9vdGFhNjQuZWZpDQogICAg
ICAgIEltYWdlDQogICAgICAgIGxvYWRlci8NCiAgICAgICAgICAgIGVudHJpZXMvDQogICAgICAg
ICAgICAgICAgYm9vdC5jb25mDQogICAgICAgICAgICBsb2FkZXIuY29uZg0KDQozLiAgVGhlIEVG
SSBsb2FkZXIuY29uZiBpcyBjb25maWd1cmVkIHRvIGJvb3QgdGhlIEltYWdlIGZpbGUgKGRvbTAg
TGludXggaW1hZ2UpOg0KDQogICAgICAgIGxvYWRlci9sb2FkZXIuY29uZg0KICAgICAgICA9PT09
PT09PT09PT09PT09PT0NCiAgICAgICAgZGVmYXVsdCBib290DQogICAgICAgIHRpbWVvdXQgNQ0K
ICAgICAgICANCiAgICAgICAgbG9hZGVyL2VudHJpZXMvYm9vdC5jb25mDQogICAgICAgID09PT09
PT09PT09PT09PT09PT09PT09PQ0KICAgICAgICB0aXRsZSBib290DQogICAgICAgIGxpbnV4IC9J
bWFnZQ0KICAgICAgICBvcHRpb25zIExBQkVMPUJvb3Qgcm9vdD1QQVJUVVVJRD0wMTBkNjc0Yy0x
Njk4LTRjYmYtYTI5MC1hZGE4YzU2MDczM2Qgcm9vdHdhaXQgcm9vdGZzdHlwZT1leHQ0DQogICAg
ICAgIA0KNC4gIFdpdGggdGhpcyBjb25maWd1cmF0aW9uLCB0aGUgYzZnLm1ldGFsIGluc3RhbmNl
IHdvdWxkIGJvb3QgaW50byB0aGUgZG9tMCBMaW51eCBrZXJuZWwgYW5kIGZhaWwNCiAgICB0byBp
bnRlcmZhY2UgdG8geGVuIChmYWlscyB0byBkZXRlY3QgL3Byb2MveGVuLCBldGMsIGluIExpbnV4
IGJvb3QgbG9nKQ0KICAgICAgICANCjUuICBTbywgbXkgZm9jdXMgd2FzIHRvIHRyeSBhbmQgbWFu
dWFsbHkgbW9kaWZ5IHRoZSBFRkkgYm9vdCBwYXJ0aXRpb24gZnJvbSB0aGUgZG9tMCBMaW51eA0K
ICAgIGluc3RhbmNlIGFzIGZvbGxvd3M6DQoNCiAgICAgICAgKiBBZGQgeGVuLWdlbmVyaWMtYXJt
NjQuZWZpIGZyb20gdGhlIG1ldGEtYXdzLWV3YW9sIG91dHB1dCBkaXJlY3RvcnkgaW50byB0aGUN
CiAgICAgICAgICBFRkkgYm9vdCBwYXJ0aXRpb24gYXQgc2FtZSBsZXZlbCBhcyBMaW51eCBrZXJu
ZWwgSW1hZ2UgZmlsZQ0KICAgICAgICAqIEFkZCB4ZW4tZ2VuZXJpYy1hcm02NC5jZmcgY3JlYXRl
ZCB1c2luZyB0aGUgQVZBIHBsYXRmb3JtIGFzIHJlZmVyZW5jZSB0byBFRkkgYm9vdCBwYXJ0aXRp
b24gYXQNCiAgICAgICAgICBzYW1lIGxldmVsIGFzIHhlbi1nZW5lcmljLWFybTY0LmVmaSAoc2Vl
IGFib3ZlKToNCiAgICAgICAgICAgIA0KICAgICAgICAgICAgeGVuLWdlbmVyaWMtYXJtNjQuY2Zn
DQogICAgICAgICAgICA9PT09PT09PT09PT09PT09PT09PT0NCiAgICAgICAgICAgIFtnbG9iYWxd
DQogICAgICAgICAgICBkZWZhdWx0PXhlbg0KDQogICAgICAgICAgICBbeGVuXQ0KICAgICAgICAg
ICAgb3B0aW9ucz1ub3JlYm9vdCBkb20wX21lbT0yMDQ4TSBib290c2NydWI9MCBpb21tdT1vbiBs
b2dsdmw9ZXJyb3IgZ3Vlc3RfbG9nbHZsPWVycm9yDQogICAgICAgICAgICBrZXJuZWw9SW1hZ2Ug
Y29uc29sZT1odmMwIGVhcmx5Y29uPXhlbmJvb3Qgcm9vdHdhaXQgcm9vdD1QQVJUVVVJRD0wMTBk
Njc0Yy0xNjk4LTRjYmYtYTI5MC1hZGE4YzU2MDczM2Qgcm9vdGZzdHlwZT1leHQ0DQogICAgICAg
ICAgICANCiAgICAgICAgKiBBZGQgbmV3IGVudHJ5IHRvIEVGSSBib290IHBhcnRpdGlvbiBmb3Ig
eGVuDQogICAgICAgICAgICANCiAgICAgICAgICAgIGxvYWRlci9lbnRyaWVzL3hlbi5jb25mDQog
ICAgICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PQ0KICAgICAgICAgICAgdGl0bGUgWGVu
IEh5cGVydmlzb3INCiAgICAgICAgICAgIGVmaSAveGVuLWdlbmVyaWMtYXJtNjQuZWZpDQogICAg
ICAgICAgICANCiAgICAgICAgKiBNb2RpZnkgbG9hZGVyLmNvbmYgdG8gYm9vdCB4ZW4NCiAgICAg
ICAgDQogICAgICAgICAgICBsb2FkZXIvbG9hZGVyLmNvbmYNCiAgICAgICAgICAgID09PT09PT09
PT09PT09PT09PQ0KICAgICAgICAgICAgZGVmYXVsdCB4ZW4NCiAgICAgICAgICAgIHRpbWVvdXQg
NQ0KICAgICAgICANCiAgICAgICAgKiBTdG9wcGVkIC8gUmVzdGFydGVkIHRoZSBjNmcubWV0YWwg
aW5zdGFuY2UgYW5kIG5vIGNvbm5lY3Rpdml0eSBleGlzdHMgYWZ0ZXIgdGhlc2UgY2hhbmdlcw0K
ICAgICAgICAgICAgLSBObyBzc2gNCiAgICAgICAgICAgIC0gTm8gRUMyIHNlcmlhbCBjb25zb2xl
IG91dHB1dA0KICAgICAgICAgICAgLSBJbnN0YW5jZSBzdGF0dXMgaW4gbWFuYWdlbWVudCB2aWV3
IHNob3dpbmcgYXQgbGVhc3QgMSBmYWlsdXJlIHRvIGNvbm5lY3QgdG8gaW5zdGFuY2UNCg==

--_009_DM6PR07MB43168B0D4DEA80BF2474B9D89AC3ADM6PR07MB4316namp_
Content-Type: application/octet-stream; name="ava.xen.config"
Content-Description: ava.xen.config
Content-Disposition: attachment; filename="ava.xen.config"; size=2443;
	creation-date="Tue, 26 Sep 2023 19:28:06 GMT";
	modification-date="Tue, 26 Sep 2023 19:41:42 GMT"
Content-Transfer-Encoding: base64

IwojIEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZpbGU7IERPIE5PVCBFRElULgojIFhlbi9hcm0g
NC4xNi4xIENvbmZpZ3VyYXRpb24KIwpDT05GSUdfQ0NfSVNfR0NDPXkKQ09ORklHX0dDQ19WRVJT
SU9OPTExMDQwMApDT05GSUdfQ0xBTkdfVkVSU0lPTj0wCkNPTkZJR19DQ19IQVNfVklTSUJJTElU
WV9BVFRSSUJVVEU9eQpDT05GSUdfQVJNXzY0PXkKQ09ORklHX0FSTT15CkNPTkZJR19BUkNIX0RF
RkNPTkZJRz0iYXJjaC9hcm0vY29uZmlncy9hcm02NF9kZWZjb25maWciCgojCiMgQXJjaGl0ZWN0
dXJlIEZlYXR1cmVzCiMKQ09ORklHXzY0QklUPXkKQ09ORklHX05SX0NQVVM9MTI4CkNPTkZJR19B
Q1BJPXkKQ09ORklHX0dJQ1YzPXkKQ09ORklHX0hBU19JVFM9eQpDT05GSUdfSFZNPXkKIyBDT05G
SUdfTkVXX1ZHSUMgaXMgbm90IHNldApDT05GSUdfU0JTQV9WVUFSVF9DT05TT0xFPXkKQ09ORklH
X0FSTV9TU0JEPXkKQ09ORklHX0hBUkRFTl9CUkFOQ0hfUFJFRElDVE9SPXkKIyBDT05GSUdfVEVF
IGlzIG5vdCBzZXQKIyBlbmQgb2YgQXJjaGl0ZWN0dXJlIEZlYXR1cmVzCgojCiMgQVJNIGVycmF0
YSB3b3JrYXJvdW5kIHZpYSB0aGUgYWx0ZXJuYXRpdmUgZnJhbWV3b3JrCiMKQ09ORklHX0FSTTY0
X0VSUkFUVU1fODI3MzE5PXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fODI0MDY5PXkKQ09ORklHX0FS
TTY0X0VSUkFUVU1fODE5NDcyPXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fODQzNDE5PXkKQ09ORklH
X0FSTTY0X0VSUkFUVU1fODMyMDc1PXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fODM0MjIwPXkKQ09O
RklHX0FSTV9FUlJBVFVNXzg1ODkyMT15CkNPTkZJR19BUk02NF9XT1JLQVJPVU5EX1JFUEVBVF9U
TEJJPXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fMTI4NjgwNz15CiMgZW5kIG9mIEFSTSBlcnJhdGEg
d29ya2Fyb3VuZCB2aWEgdGhlIGFsdGVybmF0aXZlIGZyYW1ld29yawoKQ09ORklHX0FSTTY0X0hB
UkRFTl9CUkFOQ0hfUFJFRElDVE9SPXkKQ09ORklHX0FMTF9QTEFUPXkKIyBDT05GSUdfUUVNVSBp
cyBub3Qgc2V0CiMgQ09ORklHX1JDQVIzIGlzIG5vdCBzZXQKIyBDT05GSUdfTVBTT0MgaXMgbm90
IHNldAojIENPTkZJR19OT19QTEFUIGlzIG5vdCBzZXQKQ09ORklHX0FMTDY0X1BMQVQ9eQpDT05G
SUdfTVBTT0NfUExBVEZPUk09eQoKIwojIENvbW1vbiBGZWF0dXJlcwojCkNPTkZJR19HUkFOVF9U
QUJMRT15CkNPTkZJR19IQVNfQUxURVJOQVRJVkU9eQpDT05GSUdfSEFTX0RFVklDRV9UUkVFPXkK
Q09ORklHX0hBU19GQVNUX01VTFRJUExZPXkKQ09ORklHX0hBU19QRFg9eQojIENPTkZJR19NRU1f
QUNDRVNTIGlzIG5vdCBzZXQKIyBDT05GSUdfU1RBVElDX01FTU9SWSBpcyBub3Qgc2V0CgojCiMg
U3BlY3VsYXRpdmUgaGFyZGVuaW5nCiMKQ09ORklHX1NQRUNVTEFUSVZFX0hBUkRFTl9BUlJBWT15
CiMgZW5kIG9mIFNwZWN1bGF0aXZlIGhhcmRlbmluZwoKQ09ORklHX0hZUEZTPXkKQ09ORklHX0hZ
UEZTX0NPTkZJRz15CkNPTkZJR19YU009eQpDT05GSUdfWFNNX0ZMQVNLPXkKQ09ORklHX1hTTV9G
TEFTS19BVkNfU1RBVFM9eQojIENPTkZJR19YU01fRkxBU0tfUE9MSUNZIGlzIG5vdCBzZXQKQ09O
RklHX1hTTV9TSUxPPXkKIyBDT05GSUdfWFNNX0RVTU1ZX0RFRkFVTFQgaXMgbm90IHNldAojIENP
TkZJR19YU01fRkxBU0tfREVGQVVMVCBpcyBub3Qgc2V0CkNPTkZJR19YU01fU0lMT19ERUZBVUxU
PXkKIyBDT05GSUdfQVJHTyBpcyBub3Qgc2V0CkNPTkZJR19TQ0hFRF9DUkVESVQ9eQpDT05GSUdf
U0NIRURfQ1JFRElUMj15CkNPTkZJR19TQ0hFRF9ERUZBVUxUPSJjcmVkaXQyIgojIENPTkZJR19M
SVZFUEFUQ0ggaXMgbm90IHNldAojIENPTkZJR19FTkZPUkNFX1VOSVFVRV9TWU1CT0xTIGlzIG5v
dCBzZXQKIyBDT05GSUdfU1VQUFJFU1NfRFVQTElDQVRFX1NZTUJPTF9XQVJOSU5HUyBpcyBub3Qg
c2V0CkNPTkZJR19DTURMSU5FPSIiCkNPTkZJR19ET00wX01FTT0iIgpDT05GSUdfRFRCX0ZJTEU9
IiIKQ09ORklHX1RSQUNFQlVGRkVSPXkKIyBlbmQgb2YgQ29tbW9uIEZlYXR1cmVzCgojCiMgRGV2
aWNlIERyaXZlcnMKIwpDT05GSUdfSEFTX05TMTY1NTA9eQpDT05GSUdfSEFTX0NBREVOQ0VfVUFS
VD15CkNPTkZJR19IQVNfTVZFQlU9eQpDT05GSUdfSEFTX01FU09OPXkKQ09ORklHX0hBU19QTDAx
MT15CkNPTkZJR19IQVNfU0NJRj15CkNPTkZJR19IQVNfUEFTU1RIUk9VR0g9eQpDT05GSUdfQVJN
X1NNTVU9eQojIENPTkZJR19JUE1NVV9WTVNBIGlzIG5vdCBzZXQKQ09ORklHX0lPTU1VX0ZPUkNF
X1BUX1NIQVJFPXkKIyBlbmQgb2YgRGV2aWNlIERyaXZlcnMKCiMgQ09ORklHX0VYUEVSVCBpcyBu
b3Qgc2V0CkNPTkZJR19VTlNVUFBPUlRFRD15CgojCiMgRGVidWdnaW5nIE9wdGlvbnMKIwojIENP
TkZJR19ERUJVRyBpcyBub3Qgc2V0CiMgZW5kIG9mIERlYnVnZ2luZyBPcHRpb25zCg==

--_009_DM6PR07MB43168B0D4DEA80BF2474B9D89AC3ADM6PR07MB4316namp_
Content-Type: application/octet-stream; name="aws.xen.config"
Content-Description: aws.xen.config
Content-Disposition: attachment; filename="aws.xen.config"; size=2340;
	creation-date="Tue, 26 Sep 2023 19:28:06 GMT";
	modification-date="Tue, 26 Sep 2023 19:41:43 GMT"
Content-Transfer-Encoding: base64

IwojIEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZpbGU7IERPIE5PVCBFRElULgojIFhlbi9hcm0g
NC4xNi4xIENvbmZpZ3VyYXRpb24KIwpDT05GSUdfQ0NfSVNfR0NDPXkKQ09ORklHX0dDQ19WRVJT
SU9OPTExMDQwMApDT05GSUdfQ0xBTkdfVkVSU0lPTj0wCkNPTkZJR19DQ19IQVNfVklTSUJJTElU
WV9BVFRSSUJVVEU9eQpDT05GSUdfQVJNXzY0PXkKQ09ORklHX0FSTT15CkNPTkZJR19BUkNIX0RF
RkNPTkZJRz0iYXJjaC9hcm0vY29uZmlncy9hcm02NF9kZWZjb25maWciCgojCiMgQXJjaGl0ZWN0
dXJlIEZlYXR1cmVzCiMKQ09ORklHXzY0QklUPXkKQ09ORklHX05SX0NQVVM9MTI4CkNPTkZJR19H
SUNWMz15CkNPTkZJR19IVk09eQojIENPTkZJR19ORVdfVkdJQyBpcyBub3Qgc2V0CkNPTkZJR19T
QlNBX1ZVQVJUX0NPTlNPTEU9eQpDT05GSUdfQVJNX1NTQkQ9eQpDT05GSUdfSEFSREVOX0JSQU5D
SF9QUkVESUNUT1I9eQojIGVuZCBvZiBBcmNoaXRlY3R1cmUgRmVhdHVyZXMKCiMKIyBBUk0gZXJy
YXRhIHdvcmthcm91bmQgdmlhIHRoZSBhbHRlcm5hdGl2ZSBmcmFtZXdvcmsKIwpDT05GSUdfQVJN
NjRfRVJSQVRVTV84MjczMTk9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV84MjQwNjk9eQpDT05GSUdf
QVJNNjRfRVJSQVRVTV84MTk0NzI9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV84NDM0MTk9eQpDT05G
SUdfQVJNNjRfRVJSQVRVTV84MzIwNzU9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV84MzQyMjA9eQpD
T05GSUdfQVJNX0VSUkFUVU1fODU4OTIxPXkKQ09ORklHX0FSTTY0X1dPUktBUk9VTkRfUkVQRUFU
X1RMQkk9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV8xMjg2ODA3PXkKIyBlbmQgb2YgQVJNIGVycmF0
YSB3b3JrYXJvdW5kIHZpYSB0aGUgYWx0ZXJuYXRpdmUgZnJhbWV3b3JrCgpDT05GSUdfQVJNNjRf
SEFSREVOX0JSQU5DSF9QUkVESUNUT1I9eQpDT05GSUdfQUxMX1BMQVQ9eQojIENPTkZJR19RRU1V
IGlzIG5vdCBzZXQKIyBDT05GSUdfUkNBUjMgaXMgbm90IHNldAojIENPTkZJR19NUFNPQyBpcyBu
b3Qgc2V0CiMgQ09ORklHX05PX1BMQVQgaXMgbm90IHNldApDT05GSUdfQUxMNjRfUExBVD15CkNP
TkZJR19NUFNPQ19QTEFURk9STT15CgojCiMgQ29tbW9uIEZlYXR1cmVzCiMKQ09ORklHX0dSQU5U
X1RBQkxFPXkKQ09ORklHX0hBU19BTFRFUk5BVElWRT15CkNPTkZJR19IQVNfREVWSUNFX1RSRUU9
eQpDT05GSUdfSEFTX0ZBU1RfTVVMVElQTFk9eQpDT05GSUdfSEFTX1BEWD15CiMgQ09ORklHX01F
TV9BQ0NFU1MgaXMgbm90IHNldAoKIwojIFNwZWN1bGF0aXZlIGhhcmRlbmluZwojCkNPTkZJR19T
UEVDVUxBVElWRV9IQVJERU5fQVJSQVk9eQojIGVuZCBvZiBTcGVjdWxhdGl2ZSBoYXJkZW5pbmcK
CkNPTkZJR19IWVBGUz15CkNPTkZJR19IWVBGU19DT05GSUc9eQpDT05GSUdfWFNNPXkKQ09ORklH
X1hTTV9GTEFTSz15CkNPTkZJR19YU01fRkxBU0tfQVZDX1NUQVRTPXkKIyBDT05GSUdfWFNNX0ZM
QVNLX1BPTElDWSBpcyBub3Qgc2V0CkNPTkZJR19YU01fU0lMTz15CiMgQ09ORklHX1hTTV9EVU1N
WV9ERUZBVUxUIGlzIG5vdCBzZXQKIyBDT05GSUdfWFNNX0ZMQVNLX0RFRkFVTFQgaXMgbm90IHNl
dApDT05GSUdfWFNNX1NJTE9fREVGQVVMVD15CkNPTkZJR19TQ0hFRF9DUkVESVQ9eQpDT05GSUdf
U0NIRURfQ1JFRElUMj15CkNPTkZJR19TQ0hFRF9ERUZBVUxUPSJjcmVkaXQyIgojIENPTkZJR19M
SVZFUEFUQ0ggaXMgbm90IHNldAojIENPTkZJR19FTkZPUkNFX1VOSVFVRV9TWU1CT0xTIGlzIG5v
dCBzZXQKIyBDT05GSUdfU1VQUFJFU1NfRFVQTElDQVRFX1NZTUJPTF9XQVJOSU5HUyBpcyBub3Qg
c2V0CkNPTkZJR19DTURMSU5FPSIiCkNPTkZJR19ET00wX01FTT0iIgpDT05GSUdfRFRCX0ZJTEU9
IiIKQ09ORklHX1RSQUNFQlVGRkVSPXkKIyBlbmQgb2YgQ29tbW9uIEZlYXR1cmVzCgojCiMgRGV2
aWNlIERyaXZlcnMKIwpDT05GSUdfSEFTX05TMTY1NTA9eQpDT05GSUdfSEFTX0NBREVOQ0VfVUFS
VD15CkNPTkZJR19IQVNfTVZFQlU9eQpDT05GSUdfSEFTX01FU09OPXkKQ09ORklHX0hBU19QTDAx
MT15CkNPTkZJR19IQVNfU0NJRj15CkNPTkZJR19IQVNfUEFTU1RIUk9VR0g9eQpDT05GSUdfQVJN
X1NNTVU9eQojIENPTkZJR19JUE1NVV9WTVNBIGlzIG5vdCBzZXQKQ09ORklHX0lPTU1VX0ZPUkNF
X1BUX1NIQVJFPXkKIyBlbmQgb2YgRGV2aWNlIERyaXZlcnMKCiMgQ09ORklHX0VYUEVSVCBpcyBu
b3Qgc2V0CiMgQ09ORklHX1VOU1VQUE9SVEVEIGlzIG5vdCBzZXQKCiMKIyBEZWJ1Z2dpbmcgT3B0
aW9ucwojCiMgQ09ORklHX0RFQlVHIGlzIG5vdCBzZXQKIyBlbmQgb2YgRGVidWdnaW5nIE9wdGlv
bnMK

--_009_DM6PR07MB43168B0D4DEA80BF2474B9D89AC3ADM6PR07MB4316namp_
Content-Type: application/octet-stream; name="xen-4.16.1.cfg"
Content-Description: xen-4.16.1.cfg
Content-Disposition: attachment; filename="xen-4.16.1.cfg"; size=264;
	creation-date="Tue, 26 Sep 2023 19:28:07 GMT";
	modification-date="Tue, 26 Sep 2023 19:41:43 GMT"
Content-Transfer-Encoding: base64

IyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUCgpbZ2xvYmFsXQpkZWZhdWx0PXhlbgoKW3hl
bl0Kb3B0aW9ucz1ub3JlYm9vdCBkb20wX21lbT0yMDQ4TSBib290c2NydWI9MCBpb21tdT1vbiBs
b2dsdmw9ZXJyb3IgZ3Vlc3RfbG9nbHZsPWVycm9yCmtlcm5lbD1JbWFnZSBjb25zb2xlPWh2YzAg
ZWFybHljb249eGVuYm9vdCByb290d2FpdCByb290PVBBUlRVVUlEPTAxMGQ2NzRjLTE2OTgtNGNi
Zi1hMjkwLWFkYThjNTYwNzMzZCByb290ZnN0eXBlPWV4dDQK

--_009_DM6PR07MB43168B0D4DEA80BF2474B9D89AC3ADM6PR07MB4316namp_
Content-Type: application/octet-stream; name="aws.linux.config"
Content-Description: aws.linux.config
Content-Disposition: attachment; filename="aws.linux.config"; size=253097;
	creation-date="Tue, 26 Sep 2023 19:28:07 GMT";
	modification-date="Tue, 26 Sep 2023 19:41:44 GMT"
Content-Transfer-Encoding: base64

IwojIEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZpbGU7IERPIE5PVCBFRElULgojIExpbnV4L2Fy
bTY0IDUuMTUuMTI0IEtlcm5lbCBDb25maWd1cmF0aW9uCiMKQ09ORklHX0NDX1ZFUlNJT05fVEVY
VD0iYWFyY2g2NC1wb2t5LWxpbnV4LWdjYyAoR0NDKSAxMS40LjAiCkNPTkZJR19DQ19JU19HQ0M9
eQpDT05GSUdfR0NDX1ZFUlNJT049MTEwNDAwCkNPTkZJR19DTEFOR19WRVJTSU9OPTAKQ09ORklH
X0FTX0lTX0dOVT15CkNPTkZJR19BU19WRVJTSU9OPTIwMjQ0NTA4CkNPTkZJR19MRF9JU19CRkQ9
eQpDT05GSUdfTERfVkVSU0lPTj0yMDI0NDUwOApDT05GSUdfTExEX1ZFUlNJT049MApDT05GSUdf
Q0NfQ0FOX0xJTks9eQpDT05GSUdfQ0NfQ0FOX0xJTktfU1RBVElDPXkKQ09ORklHX0NDX0hBU19B
U01fR09UTz15CkNPTkZJR19DQ19IQVNfQVNNX0dPVE9fT1VUUFVUPXkKQ09ORklHX0NDX0hBU19B
U01fR09UT19USUVEX09VVFBVVD15CkNPTkZJR19DQ19IQVNfQVNNX0lOTElORT15CkNPTkZJR19D
Q19IQVNfTk9fUFJPRklMRV9GTl9BVFRSPXkKQ09ORklHX1BBSE9MRV9WRVJTSU9OPTAKQ09ORklH
X0lSUV9XT1JLPXkKQ09ORklHX0JVSUxEVElNRV9UQUJMRV9TT1JUPXkKQ09ORklHX1RIUkVBRF9J
TkZPX0lOX1RBU0s9eQoKIwojIEdlbmVyYWwgc2V0dXAKIwpDT05GSUdfSU5JVF9FTlZfQVJHX0xJ
TUlUPTMyCiMgQ09ORklHX0NPTVBJTEVfVEVTVCBpcyBub3Qgc2V0CiMgQ09ORklHX1dFUlJPUiBp
cyBub3Qgc2V0CkNPTkZJR19MT0NBTFZFUlNJT049Ii15b2N0by1zdGFuZGFyZCIKIyBDT05GSUdf
TE9DQUxWRVJTSU9OX0FVVE8gaXMgbm90IHNldApDT05GSUdfQlVJTERfU0FMVD0iIgpDT05GSUdf
REVGQVVMVF9JTklUPSIiCkNPTkZJR19ERUZBVUxUX0hPU1ROQU1FPSIobm9uZSkiCkNPTkZJR19T
V0FQPXkKQ09ORklHX1NZU1ZJUEM9eQpDT05GSUdfU1lTVklQQ19TWVNDVEw9eQpDT05GSUdfUE9T
SVhfTVFVRVVFPXkKQ09ORklHX1BPU0lYX01RVUVVRV9TWVNDVEw9eQojIENPTkZJR19XQVRDSF9R
VUVVRSBpcyBub3Qgc2V0CkNPTkZJR19DUk9TU19NRU1PUllfQVRUQUNIPXkKIyBDT05GSUdfVVNF
TElCIGlzIG5vdCBzZXQKIyBDT05GSUdfQVVESVQgaXMgbm90IHNldApDT05GSUdfSEFWRV9BUkNI
X0FVRElUU1lTQ0FMTD15CgojCiMgSVJRIHN1YnN5c3RlbQojCkNPTkZJR19HRU5FUklDX0lSUV9Q
Uk9CRT15CkNPTkZJR19HRU5FUklDX0lSUV9TSE9XPXkKQ09ORklHX0dFTkVSSUNfSVJRX1NIT1df
TEVWRUw9eQpDT05GSUdfR0VORVJJQ19JUlFfRUZGRUNUSVZFX0FGRl9NQVNLPXkKQ09ORklHX0dF
TkVSSUNfSVJRX01JR1JBVElPTj15CkNPTkZJR19IQVJESVJRU19TV19SRVNFTkQ9eQpDT05GSUdf
R0VORVJJQ19JUlFfQ0hJUD15CkNPTkZJR19JUlFfRE9NQUlOPXkKQ09ORklHX0lSUV9TSU09eQpD
T05GSUdfSVJRX0RPTUFJTl9ISUVSQVJDSFk9eQpDT05GSUdfSVJRX0ZBU1RFT0lfSElFUkFSQ0hZ
X0hBTkRMRVJTPXkKQ09ORklHX0dFTkVSSUNfSVJRX0lQST15CkNPTkZJR19HRU5FUklDX01TSV9J
UlE9eQpDT05GSUdfR0VORVJJQ19NU0lfSVJRX0RPTUFJTj15CkNPTkZJR19JUlFfTVNJX0lPTU1V
PXkKQ09ORklHX0hBTkRMRV9ET01BSU5fSVJRPXkKQ09ORklHX0lSUV9GT1JDRURfVEhSRUFESU5H
PXkKQ09ORklHX1NQQVJTRV9JUlE9eQojIENPTkZJR19HRU5FUklDX0lSUV9ERUJVR0ZTIGlzIG5v
dCBzZXQKIyBlbmQgb2YgSVJRIHN1YnN5c3RlbQoKQ09ORklHX0dFTkVSSUNfVElNRV9WU1lTQ0FM
TD15CkNPTkZJR19HRU5FUklDX0NMT0NLRVZFTlRTPXkKQ09ORklHX0FSQ0hfSEFTX1RJQ0tfQlJP
QURDQVNUPXkKQ09ORklHX0dFTkVSSUNfQ0xPQ0tFVkVOVFNfQlJPQURDQVNUPXkKCiMKIyBUaW1l
cnMgc3Vic3lzdGVtCiMKQ09ORklHX1RJQ0tfT05FU0hPVD15CkNPTkZJR19OT19IWl9DT01NT049
eQojIENPTkZJR19IWl9QRVJJT0RJQyBpcyBub3Qgc2V0CkNPTkZJR19OT19IWl9JRExFPXkKIyBD
T05GSUdfTk9fSFpfRlVMTCBpcyBub3Qgc2V0CiMgQ09ORklHX05PX0haIGlzIG5vdCBzZXQKQ09O
RklHX0hJR0hfUkVTX1RJTUVSUz15CiMgZW5kIG9mIFRpbWVycyBzdWJzeXN0ZW0KCkNPTkZJR19C
UEY9eQpDT05GSUdfSEFWRV9FQlBGX0pJVD15CkNPTkZJR19BUkNIX1dBTlRfREVGQVVMVF9CUEZf
SklUPXkKCiMKIyBCUEYgc3Vic3lzdGVtCiMKQ09ORklHX0JQRl9TWVNDQUxMPXkKQ09ORklHX0JQ
Rl9KSVQ9eQojIENPTkZJR19CUEZfSklUX0FMV0FZU19PTiBpcyBub3Qgc2V0CkNPTkZJR19CUEZf
SklUX0RFRkFVTFRfT049eQpDT05GSUdfQlBGX1VOUFJJVl9ERUZBVUxUX09GRj15CiMgQ09ORklH
X0JQRl9QUkVMT0FEIGlzIG5vdCBzZXQKIyBDT05GSUdfQlBGX0xTTSBpcyBub3Qgc2V0CiMgZW5k
IG9mIEJQRiBzdWJzeXN0ZW0KCiMgQ09ORklHX1BSRUVNUFRfTk9ORSBpcyBub3Qgc2V0CiMgQ09O
RklHX1BSRUVNUFRfVk9MVU5UQVJZIGlzIG5vdCBzZXQKQ09ORklHX1BSRUVNUFQ9eQpDT05GSUdf
UFJFRU1QVF9DT1VOVD15CkNPTkZJR19QUkVFTVBUSU9OPXkKIyBDT05GSUdfU0NIRURfQ09SRSBp
cyBub3Qgc2V0CgojCiMgQ1BVL1Rhc2sgdGltZSBhbmQgc3RhdHMgYWNjb3VudGluZwojCkNPTkZJ
R19USUNLX0NQVV9BQ0NPVU5USU5HPXkKIyBDT05GSUdfVklSVF9DUFVfQUNDT1VOVElOR19HRU4g
aXMgbm90IHNldApDT05GSUdfSVJRX1RJTUVfQUNDT1VOVElORz15CkNPTkZJR19IQVZFX1NDSEVE
X0FWR19JUlE9eQpDT05GSUdfU0NIRURfVEhFUk1BTF9QUkVTU1VSRT15CkNPTkZJR19CU0RfUFJP
Q0VTU19BQ0NUPXkKQ09ORklHX0JTRF9QUk9DRVNTX0FDQ1RfVjM9eQojIENPTkZJR19UQVNLU1RB
VFMgaXMgbm90IHNldAojIENPTkZJR19QU0kgaXMgbm90IHNldAojIGVuZCBvZiBDUFUvVGFzayB0
aW1lIGFuZCBzdGF0cyBhY2NvdW50aW5nCgpDT05GSUdfQ1BVX0lTT0xBVElPTj15CgojCiMgUkNV
IFN1YnN5c3RlbQojCkNPTkZJR19UUkVFX1JDVT15CkNPTkZJR19QUkVFTVBUX1JDVT15CiMgQ09O
RklHX1JDVV9FWFBFUlQgaXMgbm90IHNldApDT05GSUdfU1JDVT15CkNPTkZJR19UUkVFX1NSQ1U9
eQpDT05GSUdfVEFTS1NfUkNVX0dFTkVSSUM9eQpDT05GSUdfVEFTS1NfUkNVPXkKQ09ORklHX1RB
U0tTX1JVREVfUkNVPXkKQ09ORklHX1RBU0tTX1RSQUNFX1JDVT15CkNPTkZJR19SQ1VfU1RBTExf
Q09NTU9OPXkKQ09ORklHX1JDVV9ORUVEX1NFR0NCTElTVD15CiMgZW5kIG9mIFJDVSBTdWJzeXN0
ZW0KCkNPTkZJR19JS0NPTkZJRz15CkNPTkZJR19JS0NPTkZJR19QUk9DPXkKIyBDT05GSUdfSUtI
RUFERVJTIGlzIG5vdCBzZXQKQ09ORklHX0xPR19CVUZfU0hJRlQ9MTcKQ09ORklHX0xPR19DUFVf
TUFYX0JVRl9TSElGVD0xMgpDT05GSUdfUFJJTlRLX1NBRkVfTE9HX0JVRl9TSElGVD0xMwojIENP
TkZJR19QUklOVEtfSU5ERVggaXMgbm90IHNldApDT05GSUdfR0VORVJJQ19TQ0hFRF9DTE9DSz15
CgojCiMgU2NoZWR1bGVyIGZlYXR1cmVzCiMKIyBDT05GSUdfVUNMQU1QX1RBU0sgaXMgbm90IHNl
dAojIGVuZCBvZiBTY2hlZHVsZXIgZmVhdHVyZXMKCkNPTkZJR19BUkNIX1NVUFBPUlRTX05VTUFf
QkFMQU5DSU5HPXkKQ09ORklHX0NDX0hBU19JTlQxMjg9eQpDT05GSUdfQVJDSF9TVVBQT1JUU19J
TlQxMjg9eQpDT05GSUdfTlVNQV9CQUxBTkNJTkc9eQpDT05GSUdfTlVNQV9CQUxBTkNJTkdfREVG
QVVMVF9FTkFCTEVEPXkKQ09ORklHX0NHUk9VUFM9eQpDT05GSUdfUEFHRV9DT1VOVEVSPXkKQ09O
RklHX01FTUNHPXkKQ09ORklHX01FTUNHX1NXQVA9eQpDT05GSUdfTUVNQ0dfS01FTT15CkNPTkZJ
R19CTEtfQ0dST1VQPXkKQ09ORklHX0NHUk9VUF9XUklURUJBQ0s9eQpDT05GSUdfQ0dST1VQX1ND
SEVEPXkKQ09ORklHX0ZBSVJfR1JPVVBfU0NIRUQ9eQpDT05GSUdfQ0ZTX0JBTkRXSURUSD15CkNP
TkZJR19SVF9HUk9VUF9TQ0hFRD15CkNPTkZJR19DR1JPVVBfUElEUz15CiMgQ09ORklHX0NHUk9V
UF9SRE1BIGlzIG5vdCBzZXQKQ09ORklHX0NHUk9VUF9GUkVFWkVSPXkKQ09ORklHX0NHUk9VUF9I
VUdFVExCPXkKQ09ORklHX0NQVVNFVFM9eQpDT05GSUdfUFJPQ19QSURfQ1BVU0VUPXkKQ09ORklH
X0NHUk9VUF9ERVZJQ0U9eQpDT05GSUdfQ0dST1VQX0NQVUFDQ1Q9eQpDT05GSUdfQ0dST1VQX1BF
UkY9eQpDT05GSUdfQ0dST1VQX0JQRj15CiMgQ09ORklHX0NHUk9VUF9NSVNDIGlzIG5vdCBzZXQK
Q09ORklHX1NPQ0tfQ0dST1VQX0RBVEE9eQpDT05GSUdfTkFNRVNQQUNFUz15CkNPTkZJR19VVFNf
TlM9eQpDT05GSUdfVElNRV9OUz15CkNPTkZJR19JUENfTlM9eQpDT05GSUdfVVNFUl9OUz15CkNP
TkZJR19QSURfTlM9eQpDT05GSUdfTkVUX05TPXkKQ09ORklHX0NIRUNLUE9JTlRfUkVTVE9SRT15
CkNPTkZJR19TQ0hFRF9BVVRPR1JPVVA9eQojIENPTkZJR19TWVNGU19ERVBSRUNBVEVEIGlzIG5v
dCBzZXQKQ09ORklHX1JFTEFZPXkKQ09ORklHX0JMS19ERVZfSU5JVFJEPXkKQ09ORklHX0lOSVRS
QU1GU19TT1VSQ0U9IiIKQ09ORklHX1JEX0daSVA9eQpDT05GSUdfUkRfQlpJUDI9eQpDT05GSUdf
UkRfTFpNQT15CkNPTkZJR19SRF9YWj15CkNPTkZJR19SRF9MWk89eQpDT05GSUdfUkRfTFo0PXkK
Q09ORklHX1JEX1pTVEQ9eQojIENPTkZJR19CT09UX0NPTkZJRyBpcyBub3Qgc2V0CkNPTkZJR19D
Q19PUFRJTUlaRV9GT1JfUEVSRk9STUFOQ0U9eQojIENPTkZJR19DQ19PUFRJTUlaRV9GT1JfU0la
RSBpcyBub3Qgc2V0CkNPTkZJR19MRF9PUlBIQU5fV0FSTj15CkNPTkZJR19TWVNDVEw9eQpDT05G
SUdfSEFWRV9VSUQxNj15CkNPTkZJR19TWVNDVExfRVhDRVBUSU9OX1RSQUNFPXkKIyBDT05GSUdf
RVhQRVJUIGlzIG5vdCBzZXQKQ09ORklHX1VJRDE2PXkKQ09ORklHX01VTFRJVVNFUj15CkNPTkZJ
R19TWVNGU19TWVNDQUxMPXkKQ09ORklHX0ZIQU5ETEU9eQpDT05GSUdfUE9TSVhfVElNRVJTPXkK
Q09ORklHX1BSSU5USz15CkNPTkZJR19CVUc9eQpDT05GSUdfRUxGX0NPUkU9eQpDT05GSUdfQkFT
RV9GVUxMPXkKQ09ORklHX0ZVVEVYPXkKQ09ORklHX0ZVVEVYX1BJPXkKQ09ORklHX0hBVkVfRlVU
RVhfQ01QWENIRz15CkNPTkZJR19FUE9MTD15CkNPTkZJR19TSUdOQUxGRD15CkNPTkZJR19USU1F
UkZEPXkKQ09ORklHX0VWRU5URkQ9eQpDT05GSUdfU0hNRU09eQpDT05GSUdfQUlPPXkKQ09ORklH
X0lPX1VSSU5HPXkKQ09ORklHX0FEVklTRV9TWVNDQUxMUz15CkNPTkZJR19NRU1CQVJSSUVSPXkK
Q09ORklHX0tBTExTWU1TPXkKQ09ORklHX0tBTExTWU1TX0JBU0VfUkVMQVRJVkU9eQojIENPTkZJ
R19VU0VSRkFVTFRGRCBpcyBub3Qgc2V0CkNPTkZJR19BUkNIX0hBU19NRU1CQVJSSUVSX1NZTkNf
Q09SRT15CkNPTkZJR19LQ01QPXkKQ09ORklHX1JTRVE9eQojIENPTkZJR19FTUJFRERFRCBpcyBu
b3Qgc2V0CkNPTkZJR19IQVZFX1BFUkZfRVZFTlRTPXkKCiMKIyBLZXJuZWwgUGVyZm9ybWFuY2Ug
RXZlbnRzIEFuZCBDb3VudGVycwojCkNPTkZJR19QRVJGX0VWRU5UUz15CiMgZW5kIG9mIEtlcm5l
bCBQZXJmb3JtYW5jZSBFdmVudHMgQW5kIENvdW50ZXJzCgpDT05GSUdfVk1fRVZFTlRfQ09VTlRF
UlM9eQpDT05GSUdfU0xVQl9ERUJVRz15CiMgQ09ORklHX0NPTVBBVF9CUksgaXMgbm90IHNldAoj
IENPTkZJR19TTEFCIGlzIG5vdCBzZXQKQ09ORklHX1NMVUI9eQpDT05GSUdfU0xBQl9NRVJHRV9E
RUZBVUxUPXkKIyBDT05GSUdfU0xBQl9GUkVFTElTVF9SQU5ET00gaXMgbm90IHNldAojIENPTkZJ
R19TTEFCX0ZSRUVMSVNUX0hBUkRFTkVEIGlzIG5vdCBzZXQKIyBDT05GSUdfU0hVRkZMRV9QQUdF
X0FMTE9DQVRPUiBpcyBub3Qgc2V0CkNPTkZJR19TTFVCX0NQVV9QQVJUSUFMPXkKQ09ORklHX1NZ
U1RFTV9EQVRBX1ZFUklGSUNBVElPTj15CkNPTkZJR19QUk9GSUxJTkc9eQpDT05GSUdfVFJBQ0VQ
T0lOVFM9eQojIGVuZCBvZiBHZW5lcmFsIHNldHVwCgpDT05GSUdfQVJNNjQ9eQpDT05GSUdfNjRC
SVQ9eQpDT05GSUdfTU1VPXkKQ09ORklHX0FSTTY0X1BBR0VfU0hJRlQ9MTIKQ09ORklHX0FSTTY0
X0NPTlRfUFRFX1NISUZUPTQKQ09ORklHX0FSTTY0X0NPTlRfUE1EX1NISUZUPTQKQ09ORklHX0FS
Q0hfTU1BUF9STkRfQklUU19NSU49MTgKQ09ORklHX0FSQ0hfTU1BUF9STkRfQklUU19NQVg9MzMK
Q09ORklHX0FSQ0hfTU1BUF9STkRfQ09NUEFUX0JJVFNfTUlOPTExCkNPTkZJR19BUkNIX01NQVBf
Uk5EX0NPTVBBVF9CSVRTX01BWD0xNgpDT05GSUdfU1RBQ0tUUkFDRV9TVVBQT1JUPXkKQ09ORklH
X0lMTEVHQUxfUE9JTlRFUl9WQUxVRT0weGRlYWQwMDAwMDAwMDAwMDAKQ09ORklHX0xPQ0tERVBf
U1VQUE9SVD15CkNPTkZJR19HRU5FUklDX0JVRz15CkNPTkZJR19HRU5FUklDX0JVR19SRUxBVElW
RV9QT0lOVEVSUz15CkNPTkZJR19HRU5FUklDX0hXRUlHSFQ9eQpDT05GSUdfR0VORVJJQ19DU1VN
PXkKQ09ORklHX0dFTkVSSUNfQ0FMSUJSQVRFX0RFTEFZPXkKQ09ORklHX0FSQ0hfTUhQX01FTU1B
UF9PTl9NRU1PUllfRU5BQkxFPXkKQ09ORklHX1NNUD15CkNPTkZJR19LRVJORUxfTU9ERV9ORU9O
PXkKQ09ORklHX0ZJWF9FQVJMWUNPTl9NRU09eQpDT05GSUdfUEdUQUJMRV9MRVZFTFM9NApDT05G
SUdfQVJDSF9TVVBQT1JUU19VUFJPQkVTPXkKQ09ORklHX0FSQ0hfUFJPQ19LQ09SRV9URVhUPXkK
CiMKIyBQbGF0Zm9ybSBzZWxlY3Rpb24KIwpDT05GSUdfQVJDSF9BQ1RJT05TPXkKQ09ORklHX0FS
Q0hfU1VOWEk9eQpDT05GSUdfQVJDSF9BTFBJTkU9eQpDT05GSUdfQVJDSF9BUFBMRT15CkNPTkZJ
R19BUkNIX0JDTTI4MzU9eQpDT05GSUdfQVJDSF9CQ000OTA4PXkKQ09ORklHX0FSQ0hfQkNNX0lQ
Uk9DPXkKQ09ORklHX0FSQ0hfQkVSTElOPXkKIyBDT05GSUdfQVJDSF9CSVRNQUlOIGlzIG5vdCBz
ZXQKQ09ORklHX0FSQ0hfQlJDTVNUQj15CkNPTkZJR19BUkNIX0VYWU5PUz15CiMgQ09ORklHX0FS
Q0hfU1BBUlg1IGlzIG5vdCBzZXQKQ09ORklHX0FSQ0hfSzM9eQpDT05GSUdfQVJDSF9MQVlFUlND
QVBFPXkKQ09ORklHX0FSQ0hfTEcxSz15CkNPTkZJR19BUkNIX0hJU0k9eQpDT05GSUdfQVJDSF9L
RUVNQkFZPXkKQ09ORklHX0FSQ0hfTUVESUFURUs9eQpDT05GSUdfQVJDSF9NRVNPTj15CkNPTkZJ
R19BUkNIX01WRUJVPXkKQ09ORklHX0FSQ0hfTVhDPXkKQ09ORklHX0FSQ0hfUUNPTT15CiMgQ09O
RklHX0FSQ0hfUkVBTFRFSyBpcyBub3Qgc2V0CkNPTkZJR19BUkNIX1JFTkVTQVM9eQpDT05GSUdf
QVJDSF9ST0NLQ0hJUD15CkNPTkZJR19BUkNIX1MzMj15CkNPTkZJR19BUkNIX1NFQVRUTEU9eQpD
T05GSUdfQVJDSF9JTlRFTF9TT0NGUEdBPXkKQ09ORklHX0FSQ0hfU1lOUVVBQ0VSPXkKQ09ORklH
X0FSQ0hfVEVHUkE9eQpDT05GSUdfQVJDSF9TUFJEPXkKQ09ORklHX0FSQ0hfVEhVTkRFUj15CkNP
TkZJR19BUkNIX1RIVU5ERVIyPXkKQ09ORklHX0FSQ0hfVU5JUEhJRVI9eQpDT05GSUdfQVJDSF9W
RVhQUkVTUz15CkNPTkZJR19BUkNIX1ZJU0NPTlRJPXkKQ09ORklHX0FSQ0hfWEdFTkU9eQpDT05G
SUdfQVJDSF9aWU5RTVA9eQojIGVuZCBvZiBQbGF0Zm9ybSBzZWxlY3Rpb24KCiMKIyBLZXJuZWwg
RmVhdHVyZXMKIwoKIwojIEFSTSBlcnJhdGEgd29ya2Fyb3VuZHMgdmlhIHRoZSBhbHRlcm5hdGl2
ZXMgZnJhbWV3b3JrCiMKQ09ORklHX0FSTTY0X1dPUktBUk9VTkRfQ0xFQU5fQ0FDSEU9eQpDT05G
SUdfQVJNNjRfRVJSQVRVTV84MjYzMTk9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV84MjczMTk9eQpD
T05GSUdfQVJNNjRfRVJSQVRVTV84MjQwNjk9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV84MTk0NzI9
eQpDT05GSUdfQVJNNjRfRVJSQVRVTV84MzIwNzU9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV84MzQy
MjA9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV8xNzQyMDk4PXkKQ09ORklHX0FSTTY0X0VSUkFUVU1f
ODQ1NzE5PXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fODQzNDE5PXkKQ09ORklHX0FSTTY0X0xEX0hB
U19GSVhfRVJSQVRVTV84NDM0MTk9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV8xMDI0NzE4PXkKQ09O
RklHX0FSTTY0X0VSUkFUVU1fMTQxODA0MD15CkNPTkZJR19BUk02NF9XT1JLQVJPVU5EX1NQRUNV
TEFUSVZFX0FUPXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fMTE2NTUyMj15CkNPTkZJR19BUk02NF9F
UlJBVFVNXzEzMTkzNjc9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV8xNTMwOTIzPXkKQ09ORklHX0FS
TTY0X1dPUktBUk9VTkRfUkVQRUFUX1RMQkk9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV8yNDQxMDA3
PXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fMTI4NjgwNz15CkNPTkZJR19BUk02NF9FUlJBVFVNXzE0
NjMyMjU9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV8xNTQyNDE5PXkKQ09ORklHX0FSTTY0X0VSUkFU
VU1fMTUwODQxMj15CkNPTkZJR19BUk02NF9FUlJBVFVNXzI0NDEwMDk9eQpDT05GSUdfQVJNNjRf
RVJSQVRVTV8yNDU3MTY4PXkKQ09ORklHX0NBVklVTV9FUlJBVFVNXzIyMzc1PXkKQ09ORklHX0NB
VklVTV9FUlJBVFVNXzIzMTQ0PXkKQ09ORklHX0NBVklVTV9FUlJBVFVNXzIzMTU0PXkKQ09ORklH
X0NBVklVTV9FUlJBVFVNXzI3NDU2PXkKQ09ORklHX0NBVklVTV9FUlJBVFVNXzMwMTE1PXkKQ09O
RklHX0NBVklVTV9UWDJfRVJSQVRVTV8yMTk9eQpDT05GSUdfRlVKSVRTVV9FUlJBVFVNXzAxMDAw
MT15CkNPTkZJR19ISVNJTElDT05fRVJSQVRVTV8xNjE2MDA4MDI9eQpDT05GSUdfUUNPTV9GQUxL
T1JfRVJSQVRVTV8xMDAzPXkKQ09ORklHX1FDT01fRkFMS09SX0VSUkFUVU1fMTAwOT15CkNPTkZJ
R19RQ09NX1FERjI0MDBfRVJSQVRVTV8wMDY1PXkKQ09ORklHX1FDT01fRkFMS09SX0VSUkFUVU1f
RTEwNDE9eQpDT05GSUdfTlZJRElBX0NBUk1FTF9DTlBfRVJSQVRVTT15CkNPTkZJR19TT0NJT05F
WFRfU1lOUVVBQ0VSX1BSRUlUUz15CiMgZW5kIG9mIEFSTSBlcnJhdGEgd29ya2Fyb3VuZHMgdmlh
IHRoZSBhbHRlcm5hdGl2ZXMgZnJhbWV3b3JrCgpDT05GSUdfQVJNNjRfNEtfUEFHRVM9eQojIENP
TkZJR19BUk02NF8xNktfUEFHRVMgaXMgbm90IHNldAojIENPTkZJR19BUk02NF82NEtfUEFHRVMg
aXMgbm90IHNldAojIENPTkZJR19BUk02NF9WQV9CSVRTXzM5IGlzIG5vdCBzZXQKQ09ORklHX0FS
TTY0X1ZBX0JJVFNfNDg9eQpDT05GSUdfQVJNNjRfVkFfQklUUz00OApDT05GSUdfQVJNNjRfUEFf
QklUU180OD15CkNPTkZJR19BUk02NF9QQV9CSVRTPTQ4CiMgQ09ORklHX0NQVV9CSUdfRU5ESUFO
IGlzIG5vdCBzZXQKQ09ORklHX0NQVV9MSVRUTEVfRU5ESUFOPXkKQ09ORklHX1NDSEVEX01DPXkK
Q09ORklHX1NDSEVEX1NNVD15CkNPTkZJR19OUl9DUFVTPTI1NgpDT05GSUdfSE9UUExVR19DUFU9
eQpDT05GSUdfTlVNQT15CkNPTkZJR19OT0RFU19TSElGVD00CkNPTkZJR19VU0VfUEVSQ1BVX05V
TUFfTk9ERV9JRD15CkNPTkZJR19IQVZFX1NFVFVQX1BFUl9DUFVfQVJFQT15CkNPTkZJR19ORUVE
X1BFUl9DUFVfRU1CRURfRklSU1RfQ0hVTks9eQpDT05GSUdfTkVFRF9QRVJfQ1BVX1BBR0VfRklS
U1RfQ0hVTks9eQojIENPTkZJR19IWl8xMDAgaXMgbm90IHNldApDT05GSUdfSFpfMjUwPXkKIyBD
T05GSUdfSFpfMzAwIGlzIG5vdCBzZXQKIyBDT05GSUdfSFpfMTAwMCBpcyBub3Qgc2V0CkNPTkZJ
R19IWj0yNTAKQ09ORklHX1NDSEVEX0hSVElDSz15CkNPTkZJR19BUkNIX1NQQVJTRU1FTV9FTkFC
TEU9eQpDT05GSUdfSFdfUEVSRl9FVkVOVFM9eQpDT05GSUdfUEFSQVZJUlQ9eQojIENPTkZJR19Q
QVJBVklSVF9USU1FX0FDQ09VTlRJTkcgaXMgbm90IHNldApDT05GSUdfS0VYRUM9eQpDT05GSUdf
S0VYRUNfRklMRT15CiMgQ09ORklHX0tFWEVDX1NJRyBpcyBub3Qgc2V0CkNPTkZJR19DUkFTSF9E
VU1QPXkKQ09ORklHX1RSQU5TX1RBQkxFPXkKQ09ORklHX1hFTl9ET00wPXkKQ09ORklHX1hFTj15
CkNPTkZJR19GT1JDRV9NQVhfWk9ORU9SREVSPTExCkNPTkZJR19VTk1BUF9LRVJORUxfQVRfRUww
PXkKQ09ORklHX01JVElHQVRFX1NQRUNUUkVfQlJBTkNIX0hJU1RPUlk9eQpDT05GSUdfUk9EQVRB
X0ZVTExfREVGQVVMVF9FTkFCTEVEPXkKIyBDT05GSUdfQVJNNjRfU1dfVFRCUjBfUEFOIGlzIG5v
dCBzZXQKQ09ORklHX0FSTTY0X1RBR0dFRF9BRERSX0FCST15CkNPTkZJR19DT01QQVQ9eQpDT05G
SUdfS1VTRVJfSEVMUEVSUz15CiMgQ09ORklHX0FSTVY4X0RFUFJFQ0FURUQgaXMgbm90IHNldAoK
IwojIEFSTXY4LjEgYXJjaGl0ZWN0dXJhbCBmZWF0dXJlcwojCkNPTkZJR19BUk02NF9IV19BRkRC
TT15CkNPTkZJR19BUk02NF9QQU49eQpDT05GSUdfQVNfSEFTX0xEQVBSPXkKQ09ORklHX0FTX0hB
U19MU0VfQVRPTUlDUz15CkNPTkZJR19BUk02NF9MU0VfQVRPTUlDUz15CkNPTkZJR19BUk02NF9V
U0VfTFNFX0FUT01JQ1M9eQojIGVuZCBvZiBBUk12OC4xIGFyY2hpdGVjdHVyYWwgZmVhdHVyZXMK
CiMKIyBBUk12OC4yIGFyY2hpdGVjdHVyYWwgZmVhdHVyZXMKIwojIENPTkZJR19BUk02NF9QTUVN
IGlzIG5vdCBzZXQKQ09ORklHX0FSTTY0X1JBU19FWFROPXkKQ09ORklHX0FSTTY0X0NOUD15CiMg
ZW5kIG9mIEFSTXY4LjIgYXJjaGl0ZWN0dXJhbCBmZWF0dXJlcwoKIwojIEFSTXY4LjMgYXJjaGl0
ZWN0dXJhbCBmZWF0dXJlcwojCkNPTkZJR19BUk02NF9QVFJfQVVUSD15CkNPTkZJR19BUk02NF9Q
VFJfQVVUSF9LRVJORUw9eQpDT05GSUdfQ0NfSEFTX0JSQU5DSF9QUk9UX1BBQ19SRVQ9eQpDT05G
SUdfQ0NfSEFTX1NJR05fUkVUVVJOX0FERFJFU1M9eQpDT05GSUdfQVNfSEFTX1BBQz15CkNPTkZJ
R19BU19IQVNfQ0ZJX05FR0FURV9SQV9TVEFURT15CiMgZW5kIG9mIEFSTXY4LjMgYXJjaGl0ZWN0
dXJhbCBmZWF0dXJlcwoKIwojIEFSTXY4LjQgYXJjaGl0ZWN0dXJhbCBmZWF0dXJlcwojCkNPTkZJ
R19BUk02NF9BTVVfRVhUTj15CkNPTkZJR19BU19IQVNfQVJNVjhfND15CkNPTkZJR19BUk02NF9U
TEJfUkFOR0U9eQojIGVuZCBvZiBBUk12OC40IGFyY2hpdGVjdHVyYWwgZmVhdHVyZXMKCiMKIyBB
Uk12OC41IGFyY2hpdGVjdHVyYWwgZmVhdHVyZXMKIwpDT05GSUdfQVNfSEFTX0FSTVY4XzU9eQpD
T05GSUdfQVJNNjRfQlRJPXkKQ09ORklHX0NDX0hBU19CUkFOQ0hfUFJPVF9QQUNfUkVUX0JUST15
CkNPTkZJR19BUk02NF9FMFBEPXkKQ09ORklHX0FSQ0hfUkFORE9NPXkKQ09ORklHX0FSTTY0X0FT
X0hBU19NVEU9eQpDT05GSUdfQVJNNjRfTVRFPXkKIyBlbmQgb2YgQVJNdjguNSBhcmNoaXRlY3R1
cmFsIGZlYXR1cmVzCgojCiMgQVJNdjguNyBhcmNoaXRlY3R1cmFsIGZlYXR1cmVzCiMKQ09ORklH
X0FSTTY0X0VQQU49eQojIGVuZCBvZiBBUk12OC43IGFyY2hpdGVjdHVyYWwgZmVhdHVyZXMKCkNP
TkZJR19BUk02NF9TVkU9eQpDT05GSUdfQVJNNjRfTU9EVUxFX1BMVFM9eQojIENPTkZJR19BUk02
NF9QU0VVRE9fTk1JIGlzIG5vdCBzZXQKQ09ORklHX1JFTE9DQVRBQkxFPXkKQ09ORklHX1JBTkRP
TUlaRV9CQVNFPXkKQ09ORklHX1JBTkRPTUlaRV9NT0RVTEVfUkVHSU9OX0ZVTEw9eQpDT05GSUdf
Q0NfSEFWRV9TVEFDS1BST1RFQ1RPUl9TWVNSRUc9eQpDT05GSUdfU1RBQ0tQUk9URUNUT1JfUEVS
X1RBU0s9eQojIGVuZCBvZiBLZXJuZWwgRmVhdHVyZXMKCiMKIyBCb290IG9wdGlvbnMKIwojIENP
TkZJR19BUk02NF9BQ1BJX1BBUktJTkdfUFJPVE9DT0wgaXMgbm90IHNldApDT05GSUdfQ01ETElO
RT0iIgpDT05GSUdfRUZJX1NUVUI9eQpDT05GSUdfRUZJPXkKQ09ORklHX0RNST15CiMgZW5kIG9m
IEJvb3Qgb3B0aW9ucwoKQ09ORklHX1NZU1ZJUENfQ09NUEFUPXkKCiMKIyBQb3dlciBtYW5hZ2Vt
ZW50IG9wdGlvbnMKIwpDT05GSUdfU1VTUEVORD15CkNPTkZJR19TVVNQRU5EX0ZSRUVaRVI9eQpD
T05GSUdfSElCRVJOQVRFX0NBTExCQUNLUz15CkNPTkZJR19ISUJFUk5BVElPTj15CkNPTkZJR19I
SUJFUk5BVElPTl9TTkFQU0hPVF9ERVY9eQpDT05GSUdfUE1fU1REX1BBUlRJVElPTj0iIgpDT05G
SUdfUE1fU0xFRVA9eQpDT05GSUdfUE1fU0xFRVBfU01QPXkKIyBDT05GSUdfUE1fQVVUT1NMRUVQ
IGlzIG5vdCBzZXQKIyBDT05GSUdfUE1fV0FLRUxPQ0tTIGlzIG5vdCBzZXQKQ09ORklHX1BNPXkK
IyBDT05GSUdfUE1fREVCVUcgaXMgbm90IHNldApDT05GSUdfUE1fQ0xLPXkKQ09ORklHX1BNX0dF
TkVSSUNfRE9NQUlOUz15CkNPTkZJR19XUV9QT1dFUl9FRkZJQ0lFTlRfREVGQVVMVD15CkNPTkZJ
R19QTV9HRU5FUklDX0RPTUFJTlNfU0xFRVA9eQpDT05GSUdfUE1fR0VORVJJQ19ET01BSU5TX09G
PXkKQ09ORklHX0NQVV9QTT15CkNPTkZJR19FTkVSR1lfTU9ERUw9eQpDT05GSUdfQVJDSF9ISUJF
Uk5BVElPTl9QT1NTSUJMRT15CkNPTkZJR19BUkNIX0hJQkVSTkFUSU9OX0hFQURFUj15CkNPTkZJ
R19BUkNIX1NVU1BFTkRfUE9TU0lCTEU9eQojIGVuZCBvZiBQb3dlciBtYW5hZ2VtZW50IG9wdGlv
bnMKCiMKIyBDUFUgUG93ZXIgTWFuYWdlbWVudAojCgojCiMgQ1BVIElkbGUKIwpDT05GSUdfQ1BV
X0lETEU9eQpDT05GSUdfQ1BVX0lETEVfTVVMVElQTEVfRFJJVkVSUz15CiMgQ09ORklHX0NQVV9J
RExFX0dPVl9MQURERVIgaXMgbm90IHNldApDT05GSUdfQ1BVX0lETEVfR09WX01FTlU9eQojIENP
TkZJR19DUFVfSURMRV9HT1ZfVEVPIGlzIG5vdCBzZXQKQ09ORklHX0RUX0lETEVfU1RBVEVTPXkK
CiMKIyBBUk0gQ1BVIElkbGUgRHJpdmVycwojCkNPTkZJR19BUk1fQ1BVSURMRT15CkNPTkZJR19B
Uk1fUFNDSV9DUFVJRExFPXkKQ09ORklHX0FSTV9QU0NJX0NQVUlETEVfRE9NQUlOPXkKIyBlbmQg
b2YgQVJNIENQVSBJZGxlIERyaXZlcnMKIyBlbmQgb2YgQ1BVIElkbGUKCiMKIyBDUFUgRnJlcXVl
bmN5IHNjYWxpbmcKIwpDT05GSUdfQ1BVX0ZSRVE9eQpDT05GSUdfQ1BVX0ZSRVFfR09WX0FUVFJf
U0VUPXkKQ09ORklHX0NQVV9GUkVRX0dPVl9DT01NT049eQpDT05GSUdfQ1BVX0ZSRVFfU1RBVD15
CiMgQ09ORklHX0NQVV9GUkVRX0RFRkFVTFRfR09WX1BFUkZPUk1BTkNFIGlzIG5vdCBzZXQKIyBD
T05GSUdfQ1BVX0ZSRVFfREVGQVVMVF9HT1ZfUE9XRVJTQVZFIGlzIG5vdCBzZXQKIyBDT05GSUdf
Q1BVX0ZSRVFfREVGQVVMVF9HT1ZfVVNFUlNQQUNFIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1BVX0ZS
RVFfREVGQVVMVF9HT1ZfT05ERU1BTkQgaXMgbm90IHNldAojIENPTkZJR19DUFVfRlJFUV9ERUZB
VUxUX0dPVl9DT05TRVJWQVRJVkUgaXMgbm90IHNldApDT05GSUdfQ1BVX0ZSRVFfREVGQVVMVF9H
T1ZfU0NIRURVVElMPXkKQ09ORklHX0NQVV9GUkVRX0dPVl9QRVJGT1JNQU5DRT15CkNPTkZJR19D
UFVfRlJFUV9HT1ZfUE9XRVJTQVZFPW0KQ09ORklHX0NQVV9GUkVRX0dPVl9VU0VSU1BBQ0U9eQpD
T05GSUdfQ1BVX0ZSRVFfR09WX09OREVNQU5EPXkKQ09ORklHX0NQVV9GUkVRX0dPVl9DT05TRVJW
QVRJVkU9bQpDT05GSUdfQ1BVX0ZSRVFfR09WX1NDSEVEVVRJTD15CgojCiMgQ1BVIGZyZXF1ZW5j
eSBzY2FsaW5nIGRyaXZlcnMKIwpDT05GSUdfQ1BVRlJFUV9EVD15CkNPTkZJR19DUFVGUkVRX0RU
X1BMQVRERVY9eQpDT05GSUdfQUNQSV9DUFBDX0NQVUZSRVE9bQpDT05GSUdfQUNQSV9DUFBDX0NQ
VUZSRVFfRklFPXkKQ09ORklHX0FSTV9BTExXSU5ORVJfU1VONTBJX0NQVUZSRVFfTlZNRU09bQpD
T05GSUdfQVJNX0FSTUFEQV8zN1hYX0NQVUZSRVE9eQojIENPTkZJR19BUk1fQVJNQURBXzhLX0NQ
VUZSRVEgaXMgbm90IHNldApDT05GSUdfQVJNX1NDUElfQ1BVRlJFUT15CkNPTkZJR19BUk1fQlJD
TVNUQl9BVlNfQ1BVRlJFUT15CkNPTkZJR19BUk1fSU1YX0NQVUZSRVFfRFQ9bQojIENPTkZJR19B
Uk1fTUVESUFURUtfQ1BVRlJFUSBpcyBub3Qgc2V0CkNPTkZJR19BUk1fTUVESUFURUtfQ1BVRlJF
UV9IVz1tCkNPTkZJR19BUk1fUUNPTV9DUFVGUkVRX05WTUVNPXkKQ09ORklHX0FSTV9RQ09NX0NQ
VUZSRVFfSFc9eQpDT05GSUdfQVJNX1JBU1BCRVJSWVBJX0NQVUZSRVE9bQpDT05GSUdfQVJNX1ND
TUlfQ1BVRlJFUT15CkNPTkZJR19BUk1fVEVHUkEyMF9DUFVGUkVRPXkKQ09ORklHX0FSTV9URUdS
QTEyNF9DUFVGUkVRPXkKQ09ORklHX0FSTV9URUdSQTE4Nl9DUFVGUkVRPXkKQ09ORklHX0FSTV9U
RUdSQTE5NF9DUFVGUkVRPXkKQ09ORklHX1FPUklRX0NQVUZSRVE9eQojIGVuZCBvZiBDUFUgRnJl
cXVlbmN5IHNjYWxpbmcKIyBlbmQgb2YgQ1BVIFBvd2VyIE1hbmFnZW1lbnQKCkNPTkZJR19BUkNI
X1NVUFBPUlRTX0FDUEk9eQpDT05GSUdfQUNQST15CkNPTkZJR19BQ1BJX0dFTkVSSUNfR1NJPXkK
Q09ORklHX0FDUElfQ0NBX1JFUVVJUkVEPXkKIyBDT05GSUdfQUNQSV9ERUJVR0dFUiBpcyBub3Qg
c2V0CkNPTkZJR19BQ1BJX1NQQ1JfVEFCTEU9eQojIENPTkZJR19BQ1BJX0VDX0RFQlVHRlMgaXMg
bm90IHNldApDT05GSUdfQUNQSV9BQz15CkNPTkZJR19BQ1BJX0JBVFRFUlk9eQpDT05GSUdfQUNQ
SV9CVVRUT049eQpDT05GSUdfQUNQSV9GQU49eQojIENPTkZJR19BQ1BJX1RBRCBpcyBub3Qgc2V0
CiMgQ09ORklHX0FDUElfRE9DSyBpcyBub3Qgc2V0CkNPTkZJR19BQ1BJX1BST0NFU1NPUl9JRExF
PXkKQ09ORklHX0FDUElfTUNGRz15CkNPTkZJR19BQ1BJX0NQUENfTElCPXkKQ09ORklHX0FDUElf
UFJPQ0VTU09SPXkKIyBDT05GSUdfQUNQSV9JUE1JIGlzIG5vdCBzZXQKQ09ORklHX0FDUElfSE9U
UExVR19DUFU9eQpDT05GSUdfQUNQSV9USEVSTUFMPXkKQ09ORklHX0FSQ0hfSEFTX0FDUElfVEFC
TEVfVVBHUkFERT15CkNPTkZJR19BQ1BJX1RBQkxFX1VQR1JBREU9eQojIENPTkZJR19BQ1BJX0RF
QlVHIGlzIG5vdCBzZXQKIyBDT05GSUdfQUNQSV9QQ0lfU0xPVCBpcyBub3Qgc2V0CkNPTkZJR19B
Q1BJX0NPTlRBSU5FUj15CkNPTkZJR19BQ1BJX0hFRD15CiMgQ09ORklHX0FDUElfQ1VTVE9NX01F
VEhPRCBpcyBub3Qgc2V0CiMgQ09ORklHX0FDUElfQkdSVCBpcyBub3Qgc2V0CkNPTkZJR19BQ1BJ
X1JFRFVDRURfSEFSRFdBUkVfT05MWT15CkNPTkZJR19BQ1BJX05VTUE9eQojIENPTkZJR19BQ1BJ
X0hNQVQgaXMgbm90IHNldApDT05GSUdfSEFWRV9BQ1BJX0FQRUk9eQpDT05GSUdfQUNQSV9BUEVJ
PXkKQ09ORklHX0FDUElfQVBFSV9HSEVTPXkKQ09ORklHX0FDUElfQVBFSV9TRUE9eQpDT05GSUdf
QUNQSV9BUEVJX01FTU9SWV9GQUlMVVJFPXkKQ09ORklHX0FDUElfQVBFSV9FSU5KPXkKIyBDT05G
SUdfQUNQSV9BUEVJX0VSU1RfREVCVUcgaXMgbm90IHNldAojIENPTkZJR19BQ1BJX0NPTkZJR0ZT
IGlzIG5vdCBzZXQKQ09ORklHX0FDUElfSU9SVD15CkNPTkZJR19BQ1BJX0dURFQ9eQpDT05GSUdf
QUNQSV9QUFRUPXkKIyBDT05GSUdfUE1JQ19PUFJFR0lPTiBpcyBub3Qgc2V0CkNPTkZJR19JUlFf
QllQQVNTX01BTkFHRVI9eQpDT05GSUdfVklSVFVBTElaQVRJT049eQpDT05GSUdfS1ZNPXkKQ09O
RklHX0hBVkVfS1ZNX0lSUUNISVA9eQpDT05GSUdfSEFWRV9LVk1fSVJRRkQ9eQpDT05GSUdfSEFW
RV9LVk1fSVJRX1JPVVRJTkc9eQpDT05GSUdfSEFWRV9LVk1fRVZFTlRGRD15CkNPTkZJR19LVk1f
TU1JTz15CkNPTkZJR19IQVZFX0tWTV9NU0k9eQpDT05GSUdfSEFWRV9LVk1fQ1BVX1JFTEFYX0lO
VEVSQ0VQVD15CkNPTkZJR19LVk1fVkZJTz15CkNPTkZJR19IQVZFX0tWTV9BUkNIX1RMQl9GTFVT
SF9BTEw9eQpDT05GSUdfS1ZNX0dFTkVSSUNfRElSVFlMT0dfUkVBRF9QUk9URUNUPXkKQ09ORklH
X0hBVkVfS1ZNX0lSUV9CWVBBU1M9eQpDT05GSUdfSEFWRV9LVk1fVkNQVV9SVU5fUElEX0NIQU5H
RT15CkNPTkZJR19LVk1fWEZFUl9UT19HVUVTVF9XT1JLPXkKIyBDT05GSUdfTlZIRV9FTDJfREVC
VUcgaXMgbm90IHNldApDT05GSUdfQVJNNjRfQ1JZUFRPPXkKQ09ORklHX0NSWVBUT19TSEEyNTZf
QVJNNjQ9eQpDT05GSUdfQ1JZUFRPX1NIQTUxMl9BUk02ND1tCkNPTkZJR19DUllQVE9fU0hBMV9B
Uk02NF9DRT15CkNPTkZJR19DUllQVE9fU0hBMl9BUk02NF9DRT15CkNPTkZJR19DUllQVE9fU0hB
NTEyX0FSTTY0X0NFPW0KQ09ORklHX0NSWVBUT19TSEEzX0FSTTY0PW0KQ09ORklHX0NSWVBUT19T
TTNfQVJNNjRfQ0U9bQojIENPTkZJR19DUllQVE9fU000X0FSTTY0X0NFIGlzIG5vdCBzZXQKQ09O
RklHX0NSWVBUT19HSEFTSF9BUk02NF9DRT15CkNPTkZJR19DUllQVE9fQ1JDVDEwRElGX0FSTTY0
X0NFPW0KQ09ORklHX0NSWVBUT19BRVNfQVJNNjQ9eQpDT05GSUdfQ1JZUFRPX0FFU19BUk02NF9D
RT15CkNPTkZJR19DUllQVE9fQUVTX0FSTTY0X0NFX0NDTT15CkNPTkZJR19DUllQVE9fQUVTX0FS
TTY0X0NFX0JMSz15CkNPTkZJR19DUllQVE9fQUVTX0FSTTY0X05FT05fQkxLPW0KQ09ORklHX0NS
WVBUT19DSEFDSEEyMF9ORU9OPW0KIyBDT05GSUdfQ1JZUFRPX1BPTFkxMzA1X05FT04gaXMgbm90
IHNldAojIENPTkZJR19DUllQVE9fTkhQT0xZMTMwNV9ORU9OIGlzIG5vdCBzZXQKQ09ORklHX0NS
WVBUT19BRVNfQVJNNjRfQlM9bQoKIwojIEdlbmVyYWwgYXJjaGl0ZWN0dXJlLWRlcGVuZGVudCBv
cHRpb25zCiMKQ09ORklHX0NSQVNIX0NPUkU9eQpDT05GSUdfS0VYRUNfQ09SRT15CkNPTkZJR19L
UFJPQkVTPXkKQ09ORklHX0pVTVBfTEFCRUw9eQojIENPTkZJR19TVEFUSUNfS0VZU19TRUxGVEVT
VCBpcyBub3Qgc2V0CkNPTkZJR19VUFJPQkVTPXkKQ09ORklHX0hBVkVfRUZGSUNJRU5UX1VOQUxJ
R05FRF9BQ0NFU1M9eQpDT05GSUdfS1JFVFBST0JFUz15CkNPTkZJR19IQVZFX0tQUk9CRVM9eQpD
T05GSUdfSEFWRV9LUkVUUFJPQkVTPXkKQ09ORklHX0hBVkVfRlVOQ1RJT05fRVJST1JfSU5KRUNU
SU9OPXkKQ09ORklHX0hBVkVfTk1JPXkKQ09ORklHX1RSQUNFX0lSUUZMQUdTX1NVUFBPUlQ9eQpD
T05GSUdfVFJBQ0VfSVJRRkxBR1NfTk1JX1NVUFBPUlQ9eQpDT05GSUdfSEFWRV9BUkNIX1RSQUNF
SE9PSz15CkNPTkZJR19IQVZFX0RNQV9DT05USUdVT1VTPXkKQ09ORklHX0dFTkVSSUNfU01QX0lE
TEVfVEhSRUFEPXkKQ09ORklHX0dFTkVSSUNfSURMRV9QT0xMX1NFVFVQPXkKQ09ORklHX0FSQ0hf
SEFTX0ZPUlRJRllfU09VUkNFPXkKQ09ORklHX0FSQ0hfSEFTX0tFRVBJTklUUkQ9eQpDT05GSUdf
QVJDSF9IQVNfU0VUX01FTU9SWT15CkNPTkZJR19BUkNIX0hBU19TRVRfRElSRUNUX01BUD15CkNP
TkZJR19IQVZFX0FSQ0hfVEhSRUFEX1NUUlVDVF9XSElURUxJU1Q9eQpDT05GSUdfQVJDSF9XQU5U
U19OT19JTlNUUj15CkNPTkZJR19IQVZFX0FTTV9NT0RWRVJTSU9OUz15CkNPTkZJR19IQVZFX1JF
R1NfQU5EX1NUQUNLX0FDQ0VTU19BUEk9eQpDT05GSUdfSEFWRV9SU0VRPXkKQ09ORklHX0hBVkVf
RlVOQ1RJT05fQVJHX0FDQ0VTU19BUEk9eQpDT05GSUdfSEFWRV9IV19CUkVBS1BPSU5UPXkKQ09O
RklHX0hBVkVfUEVSRl9SRUdTPXkKQ09ORklHX0hBVkVfUEVSRl9VU0VSX1NUQUNLX0RVTVA9eQpD
T05GSUdfSEFWRV9BUkNIX0pVTVBfTEFCRUw9eQpDT05GSUdfSEFWRV9BUkNIX0pVTVBfTEFCRUxf
UkVMQVRJVkU9eQpDT05GSUdfTU1VX0dBVEhFUl9UQUJMRV9GUkVFPXkKQ09ORklHX01NVV9HQVRI
RVJfUkNVX1RBQkxFX0ZSRUU9eQpDT05GSUdfQVJDSF9IQVZFX05NSV9TQUZFX0NNUFhDSEc9eQpD
T05GSUdfSEFWRV9BTElHTkVEX1NUUlVDVF9QQUdFPXkKQ09ORklHX0hBVkVfQ01QWENIR19MT0NB
TD15CkNPTkZJR19IQVZFX0NNUFhDSEdfRE9VQkxFPXkKQ09ORklHX0FSQ0hfV0FOVF9DT01QQVRf
SVBDX1BBUlNFX1ZFUlNJT049eQpDT05GSUdfSEFWRV9BUkNIX1NFQ0NPTVA9eQpDT05GSUdfSEFW
RV9BUkNIX1NFQ0NPTVBfRklMVEVSPXkKQ09ORklHX1NFQ0NPTVA9eQpDT05GSUdfU0VDQ09NUF9G
SUxURVI9eQojIENPTkZJR19TRUNDT01QX0NBQ0hFX0RFQlVHIGlzIG5vdCBzZXQKQ09ORklHX0hB
VkVfQVJDSF9TVEFDS0xFQUs9eQpDT05GSUdfSEFWRV9TVEFDS1BST1RFQ1RPUj15CkNPTkZJR19T
VEFDS1BST1RFQ1RPUj15CkNPTkZJR19TVEFDS1BST1RFQ1RPUl9TVFJPTkc9eQpDT05GSUdfQVJD
SF9TVVBQT1JUU19MVE9fQ0xBTkc9eQpDT05GSUdfQVJDSF9TVVBQT1JUU19MVE9fQ0xBTkdfVEhJ
Tj15CkNPTkZJR19MVE9fTk9ORT15CkNPTkZJR19BUkNIX1NVUFBPUlRTX0NGSV9DTEFORz15CkNP
TkZJR19IQVZFX0NPTlRFWFRfVFJBQ0tJTkc9eQpDT05GSUdfSEFWRV9WSVJUX0NQVV9BQ0NPVU5U
SU5HX0dFTj15CkNPTkZJR19IQVZFX0lSUV9USU1FX0FDQ09VTlRJTkc9eQpDT05GSUdfSEFWRV9N
T1ZFX1BVRD15CkNPTkZJR19IQVZFX01PVkVfUE1EPXkKQ09ORklHX0hBVkVfQVJDSF9UUkFOU1BB
UkVOVF9IVUdFUEFHRT15CkNPTkZJR19IQVZFX0FSQ0hfSFVHRV9WTUFQPXkKQ09ORklHX0FSQ0hf
V0FOVF9IVUdFX1BNRF9TSEFSRT15CkNPTkZJR19IQVZFX01PRF9BUkNIX1NQRUNJRklDPXkKQ09O
RklHX01PRFVMRVNfVVNFX0VMRl9SRUxBPXkKQ09ORklHX0FSQ0hfSEFTX0VMRl9SQU5ET01JWkU9
eQpDT05GSUdfSEFWRV9BUkNIX01NQVBfUk5EX0JJVFM9eQpDT05GSUdfQVJDSF9NTUFQX1JORF9C
SVRTPTE4CkNPTkZJR19IQVZFX0FSQ0hfTU1BUF9STkRfQ09NUEFUX0JJVFM9eQpDT05GSUdfQVJD
SF9NTUFQX1JORF9DT01QQVRfQklUUz0xMQpDT05GSUdfQVJDSF9XQU5UX0RFRkFVTFRfVE9QRE9X
Tl9NTUFQX0xBWU9VVD15CkNPTkZJR19DTE9ORV9CQUNLV0FSRFM9eQpDT05GSUdfT0xEX1NJR1NV
U1BFTkQzPXkKQ09ORklHX0NPTVBBVF9PTERfU0lHQUNUSU9OPXkKQ09ORklHX0NPTVBBVF8zMkJJ
VF9USU1FPXkKQ09ORklHX0hBVkVfQVJDSF9WTUFQX1NUQUNLPXkKQ09ORklHX1ZNQVBfU1RBQ0s9
eQpDT05GSUdfSEFWRV9BUkNIX1JBTkRPTUlaRV9LU1RBQ0tfT0ZGU0VUPXkKIyBDT05GSUdfUkFO
RE9NSVpFX0tTVEFDS19PRkZTRVRfREVGQVVMVCBpcyBub3Qgc2V0CkNPTkZJR19BUkNIX0hBU19T
VFJJQ1RfS0VSTkVMX1JXWD15CkNPTkZJR19TVFJJQ1RfS0VSTkVMX1JXWD15CkNPTkZJR19BUkNI
X0hBU19TVFJJQ1RfTU9EVUxFX1JXWD15CkNPTkZJR19TVFJJQ1RfTU9EVUxFX1JXWD15CkNPTkZJ
R19IQVZFX0FSQ0hfQ09NUElMRVJfSD15CkNPTkZJR19IQVZFX0FSQ0hfUFJFTDMyX1JFTE9DQVRJ
T05TPXkKQ09ORklHX0FSQ0hfVVNFX01FTVJFTUFQX1BST1Q9eQojIENPTkZJR19MT0NLX0VWRU5U
X0NPVU5UUyBpcyBub3Qgc2V0CkNPTkZJR19BUkNIX0hBU19SRUxSPXkKQ09ORklHX0FSQ0hfV0FO
VF9MRF9PUlBIQU5fV0FSTj15CkNPTkZJR19BUkNIX1NVUFBPUlRTX0RFQlVHX1BBR0VBTExPQz15
CgojCiMgR0NPVi1iYXNlZCBrZXJuZWwgcHJvZmlsaW5nCiMKIyBDT05GSUdfR0NPVl9LRVJORUwg
aXMgbm90IHNldApDT05GSUdfQVJDSF9IQVNfR0NPVl9QUk9GSUxFX0FMTD15CiMgZW5kIG9mIEdD
T1YtYmFzZWQga2VybmVsIHByb2ZpbGluZwoKQ09ORklHX0hBVkVfR0NDX1BMVUdJTlM9eQpDT05G
SUdfR0NDX1BMVUdJTlM9eQojIENPTkZJR19HQ0NfUExVR0lOX0xBVEVOVF9FTlRST1BZIGlzIG5v
dCBzZXQKIyBDT05GSUdfR0NDX1BMVUdJTl9SQU5EU1RSVUNUIGlzIG5vdCBzZXQKIyBlbmQgb2Yg
R2VuZXJhbCBhcmNoaXRlY3R1cmUtZGVwZW5kZW50IG9wdGlvbnMKCkNPTkZJR19SVF9NVVRFWEVT
PXkKQ09ORklHX0JBU0VfU01BTEw9MApDT05GSUdfTU9EVUxFUz15CiMgQ09ORklHX01PRFVMRV9G
T1JDRV9MT0FEIGlzIG5vdCBzZXQKQ09ORklHX01PRFVMRV9VTkxPQUQ9eQojIENPTkZJR19NT0RV
TEVfRk9SQ0VfVU5MT0FEIGlzIG5vdCBzZXQKIyBDT05GSUdfTU9EVkVSU0lPTlMgaXMgbm90IHNl
dAojIENPTkZJR19NT0RVTEVfU1JDVkVSU0lPTl9BTEwgaXMgbm90IHNldAojIENPTkZJR19NT0RV
TEVfU0lHIGlzIG5vdCBzZXQKQ09ORklHX01PRFVMRV9DT01QUkVTU19OT05FPXkKIyBDT05GSUdf
TU9EVUxFX0NPTVBSRVNTX0daSVAgaXMgbm90IHNldAojIENPTkZJR19NT0RVTEVfQ09NUFJFU1Nf
WFogaXMgbm90IHNldAojIENPTkZJR19NT0RVTEVfQ09NUFJFU1NfWlNURCBpcyBub3Qgc2V0CiMg
Q09ORklHX01PRFVMRV9BTExPV19NSVNTSU5HX05BTUVTUEFDRV9JTVBPUlRTIGlzIG5vdCBzZXQK
Q09ORklHX01PRFBST0JFX1BBVEg9Ii9zYmluL21vZHByb2JlIgpDT05GSUdfTU9EVUxFU19UUkVF
X0xPT0tVUD15CkNPTkZJR19CTE9DSz15CkNPTkZJR19CTEtfQ0dST1VQX1JXU1RBVD15CkNPTkZJ
R19CTEtfREVWX0JTR19DT01NT049eQpDT05GSUdfQkxLX0RFVl9CU0dMSUI9eQpDT05GSUdfQkxL
X0RFVl9JTlRFR1JJVFk9eQpDT05GSUdfQkxLX0RFVl9JTlRFR1JJVFlfVDEwPXkKIyBDT05GSUdf
QkxLX0RFVl9aT05FRCBpcyBub3Qgc2V0CkNPTkZJR19CTEtfREVWX1RIUk9UVExJTkc9eQojIENP
TkZJR19CTEtfREVWX1RIUk9UVExJTkdfTE9XIGlzIG5vdCBzZXQKIyBDT05GSUdfQkxLX1dCVCBp
cyBub3Qgc2V0CiMgQ09ORklHX0JMS19DR1JPVVBfSU9MQVRFTkNZIGlzIG5vdCBzZXQKIyBDT05G
SUdfQkxLX0NHUk9VUF9JT0NPU1QgaXMgbm90IHNldAojIENPTkZJR19CTEtfQ0dST1VQX0lPUFJJ
TyBpcyBub3Qgc2V0CkNPTkZJR19CTEtfREVCVUdfRlM9eQojIENPTkZJR19CTEtfU0VEX09QQUwg
aXMgbm90IHNldAojIENPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT04gaXMgbm90IHNldAoKIwoj
IFBhcnRpdGlvbiBUeXBlcwojCiMgQ09ORklHX1BBUlRJVElPTl9BRFZBTkNFRCBpcyBub3Qgc2V0
CkNPTkZJR19NU0RPU19QQVJUSVRJT049eQpDT05GSUdfRUZJX1BBUlRJVElPTj15CiMgZW5kIG9m
IFBhcnRpdGlvbiBUeXBlcwoKQ09ORklHX0JMT0NLX0NPTVBBVD15CkNPTkZJR19CTEtfTVFfUENJ
PXkKQ09ORklHX0JMS19NUV9WSVJUSU89eQpDT05GSUdfQkxLX1BNPXkKQ09ORklHX0JMT0NLX0hP
TERFUl9ERVBSRUNBVEVEPXkKCiMKIyBJTyBTY2hlZHVsZXJzCiMKQ09ORklHX01RX0lPU0NIRURf
REVBRExJTkU9eQpDT05GSUdfTVFfSU9TQ0hFRF9LWUJFUj15CiMgQ09ORklHX0lPU0NIRURfQkZR
IGlzIG5vdCBzZXQKIyBlbmQgb2YgSU8gU2NoZWR1bGVycwoKQ09ORklHX1BSRUVNUFRfTk9USUZJ
RVJTPXkKQ09ORklHX0FTTjE9eQpDT05GSUdfVU5JTkxJTkVfU1BJTl9VTkxPQ0s9eQpDT05GSUdf
QVJDSF9TVVBQT1JUU19BVE9NSUNfUk1XPXkKQ09ORklHX01VVEVYX1NQSU5fT05fT1dORVI9eQpD
T05GSUdfUldTRU1fU1BJTl9PTl9PV05FUj15CkNPTkZJR19MT0NLX1NQSU5fT05fT1dORVI9eQpD
T05GSUdfQVJDSF9VU0VfUVVFVUVEX1NQSU5MT0NLUz15CkNPTkZJR19RVUVVRURfU1BJTkxPQ0tT
PXkKQ09ORklHX0FSQ0hfVVNFX1FVRVVFRF9SV0xPQ0tTPXkKQ09ORklHX1FVRVVFRF9SV0xPQ0tT
PXkKQ09ORklHX0FSQ0hfSEFTX05PTl9PVkVSTEFQUElOR19BRERSRVNTX1NQQUNFPXkKQ09ORklH
X0FSQ0hfSEFTX1NZU0NBTExfV1JBUFBFUj15CkNPTkZJR19GUkVFWkVSPXkKCiMKIyBFeGVjdXRh
YmxlIGZpbGUgZm9ybWF0cwojCkNPTkZJR19CSU5GTVRfRUxGPXkKQ09ORklHX0NPTVBBVF9CSU5G
TVRfRUxGPXkKQ09ORklHX0FSQ0hfQklORk1UX0VMRl9TVEFURT15CkNPTkZJR19BUkNIX0hBVkVf
RUxGX1BST1Q9eQpDT05GSUdfQVJDSF9VU0VfR05VX1BST1BFUlRZPXkKQ09ORklHX0VMRkNPUkU9
eQojIENPTkZJR19DT1JFX0RVTVBfREVGQVVMVF9FTEZfSEVBREVSUyBpcyBub3Qgc2V0CkNPTkZJ
R19CSU5GTVRfU0NSSVBUPXkKQ09ORklHX0JJTkZNVF9NSVNDPW0KQ09ORklHX0NPUkVEVU1QPXkK
IyBlbmQgb2YgRXhlY3V0YWJsZSBmaWxlIGZvcm1hdHMKCiMKIyBNZW1vcnkgTWFuYWdlbWVudCBv
cHRpb25zCiMKQ09ORklHX1NQQVJTRU1FTT15CkNPTkZJR19TUEFSU0VNRU1fRVhUUkVNRT15CkNP
TkZJR19TUEFSU0VNRU1fVk1FTU1BUF9FTkFCTEU9eQpDT05GSUdfU1BBUlNFTUVNX1ZNRU1NQVA9
eQpDT05GSUdfSEFWRV9GQVNUX0dVUD15CkNPTkZJR19BUkNIX0tFRVBfTUVNQkxPQ0s9eQpDT05G
SUdfTUVNT1JZX0lTT0xBVElPTj15CkNPTkZJR19BUkNIX0VOQUJMRV9NRU1PUllfSE9UUExVRz15
CiMgQ09ORklHX01FTU9SWV9IT1RQTFVHIGlzIG5vdCBzZXQKQ09ORklHX0FSQ0hfRU5BQkxFX01F
TU9SWV9IT1RSRU1PVkU9eQpDT05GSUdfU1BMSVRfUFRMT0NLX0NQVVM9NApDT05GSUdfQVJDSF9F
TkFCTEVfU1BMSVRfUE1EX1BUTE9DSz15CkNPTkZJR19NRU1PUllfQkFMTE9PTj15CkNPTkZJR19C
QUxMT09OX0NPTVBBQ1RJT049eQpDT05GSUdfQ09NUEFDVElPTj15CkNPTkZJR19QQUdFX1JFUE9S
VElORz15CkNPTkZJR19NSUdSQVRJT049eQpDT05GSUdfQVJDSF9FTkFCTEVfSFVHRVBBR0VfTUlH
UkFUSU9OPXkKQ09ORklHX0FSQ0hfRU5BQkxFX1RIUF9NSUdSQVRJT049eQpDT05GSUdfQ09OVElH
X0FMTE9DPXkKQ09ORklHX1BIWVNfQUREUl9UXzY0QklUPXkKQ09ORklHX01NVV9OT1RJRklFUj15
CkNPTkZJR19LU009eQpDT05GSUdfREVGQVVMVF9NTUFQX01JTl9BRERSPTQwOTYKQ09ORklHX0FS
Q0hfU1VQUE9SVFNfTUVNT1JZX0ZBSUxVUkU9eQpDT05GSUdfTUVNT1JZX0ZBSUxVUkU9eQpDT05G
SUdfVFJBTlNQQVJFTlRfSFVHRVBBR0U9eQpDT05GSUdfVFJBTlNQQVJFTlRfSFVHRVBBR0VfQUxX
QVlTPXkKIyBDT05GSUdfVFJBTlNQQVJFTlRfSFVHRVBBR0VfTUFEVklTRSBpcyBub3Qgc2V0CiMg
Q09ORklHX0NMRUFOQ0FDSEUgaXMgbm90IHNldAojIENPTkZJR19GUk9OVFNXQVAgaXMgbm90IHNl
dApDT05GSUdfQ01BPXkKIyBDT05GSUdfQ01BX0RFQlVHRlMgaXMgbm90IHNldAojIENPTkZJR19D
TUFfU1lTRlMgaXMgbm90IHNldApDT05GSUdfQ01BX0FSRUFTPTE5CiMgQ09ORklHX1pQT09MIGlz
IG5vdCBzZXQKIyBDT05GSUdfWlNNQUxMT0MgaXMgbm90IHNldApDT05GSUdfR0VORVJJQ19FQVJM
WV9JT1JFTUFQPXkKIyBDT05GSUdfREVGRVJSRURfU1RSVUNUX1BBR0VfSU5JVCBpcyBub3Qgc2V0
CiMgQ09ORklHX0lETEVfUEFHRV9UUkFDS0lORyBpcyBub3Qgc2V0CkNPTkZJR19BUkNIX0hBU19D
QUNIRV9MSU5FX1NJWkU9eQpDT05GSUdfQVJDSF9IQVNfUFRFX0RFVk1BUD15CkNPTkZJR19aT05F
X0RNQT15CkNPTkZJR19aT05FX0RNQTMyPXkKQ09ORklHX0FSQ0hfVVNFU19ISUdIX1ZNQV9GTEFH
Uz15CiMgQ09ORklHX1BFUkNQVV9TVEFUUyBpcyBub3Qgc2V0CiMgQ09ORklHX0dVUF9URVNUIGlz
IG5vdCBzZXQKIyBDT05GSUdfUkVBRF9PTkxZX1RIUF9GT1JfRlMgaXMgbm90IHNldApDT05GSUdf
QVJDSF9IQVNfUFRFX1NQRUNJQUw9eQpDT05GSUdfU0VDUkVUTUVNPXkKCiMKIyBEYXRhIEFjY2Vz
cyBNb25pdG9yaW5nCiMKIyBDT05GSUdfREFNT04gaXMgbm90IHNldAojIGVuZCBvZiBEYXRhIEFj
Y2VzcyBNb25pdG9yaW5nCiMgZW5kIG9mIE1lbW9yeSBNYW5hZ2VtZW50IG9wdGlvbnMKCkNPTkZJ
R19ORVQ9eQpDT05GSUdfTkVUX0lOR1JFU1M9eQpDT05GSUdfTkVUX0VHUkVTUz15CkNPTkZJR19T
S0JfRVhURU5TSU9OUz15CgojCiMgTmV0d29ya2luZyBvcHRpb25zCiMKQ09ORklHX1BBQ0tFVD15
CiMgQ09ORklHX1BBQ0tFVF9ESUFHIGlzIG5vdCBzZXQKQ09ORklHX1VOSVg9eQpDT05GSUdfVU5J
WF9TQ009eQpDT05GSUdfQUZfVU5JWF9PT0I9eQojIENPTkZJR19VTklYX0RJQUcgaXMgbm90IHNl
dAojIENPTkZJR19UTFMgaXMgbm90IHNldApDT05GSUdfWEZSTT15CkNPTkZJR19YRlJNX0FMR089
eQpDT05GSUdfWEZSTV9VU0VSPW0KIyBDT05GSUdfWEZSTV9JTlRFUkZBQ0UgaXMgbm90IHNldApD
T05GSUdfWEZSTV9TVUJfUE9MSUNZPXkKQ09ORklHX1hGUk1fTUlHUkFURT15CiMgQ09ORklHX1hG
Uk1fU1RBVElTVElDUyBpcyBub3Qgc2V0CkNPTkZJR19YRlJNX0FIPXkKQ09ORklHX1hGUk1fRVNQ
PXkKQ09ORklHX1hGUk1fSVBDT01QPW0KQ09ORklHX05FVF9LRVk9bQpDT05GSUdfTkVUX0tFWV9N
SUdSQVRFPXkKIyBDT05GSUdfWERQX1NPQ0tFVFMgaXMgbm90IHNldApDT05GSUdfSU5FVD15CkNP
TkZJR19JUF9NVUxUSUNBU1Q9eQpDT05GSUdfSVBfQURWQU5DRURfUk9VVEVSPXkKIyBDT05GSUdf
SVBfRklCX1RSSUVfU1RBVFMgaXMgbm90IHNldApDT05GSUdfSVBfTVVMVElQTEVfVEFCTEVTPXkK
Q09ORklHX0lQX1JPVVRFX01VTFRJUEFUSD15CkNPTkZJR19JUF9ST1VURV9WRVJCT1NFPXkKQ09O
RklHX0lQX1JPVVRFX0NMQVNTSUQ9eQpDT05GSUdfSVBfUE5QPXkKQ09ORklHX0lQX1BOUF9ESENQ
PXkKQ09ORklHX0lQX1BOUF9CT09UUD15CkNPTkZJR19JUF9QTlBfUkFSUD15CkNPTkZJR19ORVRf
SVBJUD1tCkNPTkZJR19ORVRfSVBHUkVfREVNVVg9bQpDT05GSUdfTkVUX0lQX1RVTk5FTD15CkNP
TkZJR19ORVRfSVBHUkU9bQpDT05GSUdfTkVUX0lQR1JFX0JST0FEQ0FTVD15CkNPTkZJR19JUF9N
Uk9VVEVfQ09NTU9OPXkKQ09ORklHX0lQX01ST1VURT15CiMgQ09ORklHX0lQX01ST1VURV9NVUxU
SVBMRV9UQUJMRVMgaXMgbm90IHNldApDT05GSUdfSVBfUElNU01fVjE9eQpDT05GSUdfSVBfUElN
U01fVjI9eQpDT05GSUdfU1lOX0NPT0tJRVM9eQojIENPTkZJR19ORVRfSVBWVEkgaXMgbm90IHNl
dApDT05GSUdfTkVUX1VEUF9UVU5ORUw9bQojIENPTkZJR19ORVRfRk9VIGlzIG5vdCBzZXQKIyBD
T05GSUdfTkVUX0ZPVV9JUF9UVU5ORUxTIGlzIG5vdCBzZXQKQ09ORklHX0lORVRfQUg9bQpDT05G
SUdfSU5FVF9FU1A9bQojIENPTkZJR19JTkVUX0VTUF9PRkZMT0FEIGlzIG5vdCBzZXQKIyBDT05G
SUdfSU5FVF9FU1BJTlRDUCBpcyBub3Qgc2V0CkNPTkZJR19JTkVUX0lQQ09NUD1tCkNPTkZJR19J
TkVUX1RBQkxFX1BFUlRVUkJfT1JERVI9MTYKQ09ORklHX0lORVRfWEZSTV9UVU5ORUw9bQpDT05G
SUdfSU5FVF9UVU5ORUw9eQpDT05GSUdfSU5FVF9ESUFHPXkKQ09ORklHX0lORVRfVENQX0RJQUc9
eQojIENPTkZJR19JTkVUX1VEUF9ESUFHIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5FVF9SQVdfRElB
RyBpcyBub3Qgc2V0CiMgQ09ORklHX0lORVRfRElBR19ERVNUUk9ZIGlzIG5vdCBzZXQKIyBDT05G
SUdfVENQX0NPTkdfQURWQU5DRUQgaXMgbm90IHNldApDT05GSUdfVENQX0NPTkdfQ1VCSUM9eQpD
T05GSUdfREVGQVVMVF9UQ1BfQ09ORz0iY3ViaWMiCiMgQ09ORklHX1RDUF9NRDVTSUcgaXMgbm90
IHNldApDT05GSUdfSVBWNj15CkNPTkZJR19JUFY2X1JPVVRFUl9QUkVGPXkKIyBDT05GSUdfSVBW
Nl9ST1VURV9JTkZPIGlzIG5vdCBzZXQKIyBDT05GSUdfSVBWNl9PUFRJTUlTVElDX0RBRCBpcyBu
b3Qgc2V0CkNPTkZJR19JTkVUNl9BSD15CkNPTkZJR19JTkVUNl9FU1A9eQojIENPTkZJR19JTkVU
Nl9FU1BfT0ZGTE9BRCBpcyBub3Qgc2V0CiMgQ09ORklHX0lORVQ2X0VTUElOVENQIGlzIG5vdCBz
ZXQKQ09ORklHX0lORVQ2X0lQQ09NUD1tCiMgQ09ORklHX0lQVjZfTUlQNiBpcyBub3Qgc2V0CiMg
Q09ORklHX0lQVjZfSUxBIGlzIG5vdCBzZXQKQ09ORklHX0lORVQ2X1hGUk1fVFVOTkVMPW0KQ09O
RklHX0lORVQ2X1RVTk5FTD1tCiMgQ09ORklHX0lQVjZfVlRJIGlzIG5vdCBzZXQKQ09ORklHX0lQ
VjZfU0lUPXkKIyBDT05GSUdfSVBWNl9TSVRfNlJEIGlzIG5vdCBzZXQKQ09ORklHX0lQVjZfTkRJ
U0NfTk9ERVRZUEU9eQpDT05GSUdfSVBWNl9UVU5ORUw9bQojIENPTkZJR19JUFY2X0dSRSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0lQVjZfTVVMVElQTEVfVEFCTEVTIGlzIG5vdCBzZXQKIyBDT05GSUdf
SVBWNl9NUk9VVEUgaXMgbm90IHNldAojIENPTkZJR19JUFY2X1NFRzZfTFdUVU5ORUwgaXMgbm90
IHNldAojIENPTkZJR19JUFY2X1NFRzZfSE1BQyBpcyBub3Qgc2V0CiMgQ09ORklHX0lQVjZfUlBM
X0xXVFVOTkVMIGlzIG5vdCBzZXQKIyBDT05GSUdfSVBWNl9JT0FNNl9MV1RVTk5FTCBpcyBub3Qg
c2V0CiMgQ09ORklHX05FVExBQkVMIGlzIG5vdCBzZXQKIyBDT05GSUdfTVBUQ1AgaXMgbm90IHNl
dAojIENPTkZJR19ORVRXT1JLX1NFQ01BUksgaXMgbm90IHNldApDT05GSUdfTkVUX1BUUF9DTEFT
U0lGWT15CiMgQ09ORklHX05FVFdPUktfUEhZX1RJTUVTVEFNUElORyBpcyBub3Qgc2V0CkNPTkZJ
R19ORVRGSUxURVI9eQpDT05GSUdfTkVURklMVEVSX0FEVkFOQ0VEPXkKQ09ORklHX0JSSURHRV9O
RVRGSUxURVI9eQoKIwojIENvcmUgTmV0ZmlsdGVyIENvbmZpZ3VyYXRpb24KIwpDT05GSUdfTkVU
RklMVEVSX0lOR1JFU1M9eQpDT05GSUdfTkVURklMVEVSX05FVExJTks9bQpDT05GSUdfTkVURklM
VEVSX0ZBTUlMWV9CUklER0U9eQpDT05GSUdfTkVURklMVEVSX0ZBTUlMWV9BUlA9eQojIENPTkZJ
R19ORVRGSUxURVJfTkVUTElOS19BQ0NUIGlzIG5vdCBzZXQKQ09ORklHX05FVEZJTFRFUl9ORVRM
SU5LX1FVRVVFPW0KQ09ORklHX05FVEZJTFRFUl9ORVRMSU5LX0xPRz1tCiMgQ09ORklHX05FVEZJ
TFRFUl9ORVRMSU5LX09TRiBpcyBub3Qgc2V0CkNPTkZJR19ORl9DT05OVFJBQ0s9bQpDT05GSUdf
TkZfTE9HX1NZU0xPRz1tCkNPTkZJR19ORVRGSUxURVJfQ09OTkNPVU5UPW0KQ09ORklHX05GX0NP
Tk5UUkFDS19NQVJLPXkKIyBDT05GSUdfTkZfQ09OTlRSQUNLX1pPTkVTIGlzIG5vdCBzZXQKIyBD
T05GSUdfTkZfQ09OTlRSQUNLX1BST0NGUyBpcyBub3Qgc2V0CkNPTkZJR19ORl9DT05OVFJBQ0tf
RVZFTlRTPXkKIyBDT05GSUdfTkZfQ09OTlRSQUNLX1RJTUVPVVQgaXMgbm90IHNldAojIENPTkZJ
R19ORl9DT05OVFJBQ0tfVElNRVNUQU1QIGlzIG5vdCBzZXQKIyBDT05GSUdfTkZfQ09OTlRSQUNL
X0xBQkVMUyBpcyBub3Qgc2V0CkNPTkZJR19ORl9DVF9QUk9UT19EQ0NQPXkKQ09ORklHX05GX0NU
X1BST1RPX0dSRT15CkNPTkZJR19ORl9DVF9QUk9UT19TQ1RQPXkKQ09ORklHX05GX0NUX1BST1RP
X1VEUExJVEU9eQpDT05GSUdfTkZfQ09OTlRSQUNLX0FNQU5EQT1tCkNPTkZJR19ORl9DT05OVFJB
Q0tfRlRQPW0KQ09ORklHX05GX0NPTk5UUkFDS19IMzIzPW0KQ09ORklHX05GX0NPTk5UUkFDS19J
UkM9bQpDT05GSUdfTkZfQ09OTlRSQUNLX0JST0FEQ0FTVD1tCkNPTkZJR19ORl9DT05OVFJBQ0tf
TkVUQklPU19OUz1tCiMgQ09ORklHX05GX0NPTk5UUkFDS19TTk1QIGlzIG5vdCBzZXQKQ09ORklH
X05GX0NPTk5UUkFDS19QUFRQPW0KQ09ORklHX05GX0NPTk5UUkFDS19TQU5FPW0KQ09ORklHX05G
X0NPTk5UUkFDS19TSVA9bQpDT05GSUdfTkZfQ09OTlRSQUNLX1RGVFA9bQpDT05GSUdfTkZfQ1Rf
TkVUTElOSz1tCiMgQ09ORklHX05FVEZJTFRFUl9ORVRMSU5LX0dMVUVfQ1QgaXMgbm90IHNldApD
T05GSUdfTkZfTkFUPW0KQ09ORklHX05GX05BVF9BTUFOREE9bQpDT05GSUdfTkZfTkFUX0ZUUD1t
CkNPTkZJR19ORl9OQVRfSVJDPW0KQ09ORklHX05GX05BVF9TSVA9bQpDT05GSUdfTkZfTkFUX1RG
VFA9bQpDT05GSUdfTkZfTkFUX1JFRElSRUNUPXkKQ09ORklHX05GX05BVF9NQVNRVUVSQURFPXkK
Q09ORklHX05FVEZJTFRFUl9TWU5QUk9YWT1tCiMgQ09ORklHX05GX1RBQkxFUyBpcyBub3Qgc2V0
CkNPTkZJR19ORVRGSUxURVJfWFRBQkxFUz1tCkNPTkZJR19ORVRGSUxURVJfWFRBQkxFU19DT01Q
QVQ9eQoKIwojIFh0YWJsZXMgY29tYmluZWQgbW9kdWxlcwojCkNPTkZJR19ORVRGSUxURVJfWFRf
TUFSSz1tCkNPTkZJR19ORVRGSUxURVJfWFRfQ09OTk1BUks9bQojIENPTkZJR19ORVRGSUxURVJf
WFRfU0VUIGlzIG5vdCBzZXQKCiMKIyBYdGFibGVzIHRhcmdldHMKIwpDT05GSUdfTkVURklMVEVS
X1hUX1RBUkdFVF9DSEVDS1NVTT1tCkNPTkZJR19ORVRGSUxURVJfWFRfVEFSR0VUX0NMQVNTSUZZ
PW0KQ09ORklHX05FVEZJTFRFUl9YVF9UQVJHRVRfQ09OTk1BUks9bQpDT05GSUdfTkVURklMVEVS
X1hUX1RBUkdFVF9DVD1tCkNPTkZJR19ORVRGSUxURVJfWFRfVEFSR0VUX0RTQ1A9bQpDT05GSUdf
TkVURklMVEVSX1hUX1RBUkdFVF9ITD1tCiMgQ09ORklHX05FVEZJTFRFUl9YVF9UQVJHRVRfSE1B
UksgaXMgbm90IHNldAojIENPTkZJR19ORVRGSUxURVJfWFRfVEFSR0VUX0lETEVUSU1FUiBpcyBu
b3Qgc2V0CiMgQ09ORklHX05FVEZJTFRFUl9YVF9UQVJHRVRfTEVEIGlzIG5vdCBzZXQKQ09ORklH
X05FVEZJTFRFUl9YVF9UQVJHRVRfTE9HPW0KQ09ORklHX05FVEZJTFRFUl9YVF9UQVJHRVRfTUFS
Sz1tCkNPTkZJR19ORVRGSUxURVJfWFRfTkFUPW0KQ09ORklHX05FVEZJTFRFUl9YVF9UQVJHRVRf
TkVUTUFQPW0KQ09ORklHX05FVEZJTFRFUl9YVF9UQVJHRVRfTkZMT0c9bQpDT05GSUdfTkVURklM
VEVSX1hUX1RBUkdFVF9ORlFVRVVFPW0KIyBDT05GSUdfTkVURklMVEVSX1hUX1RBUkdFVF9OT1RS
QUNLIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVURklMVEVSX1hUX1RBUkdFVF9SQVRFRVNUIGlzIG5v
dCBzZXQKQ09ORklHX05FVEZJTFRFUl9YVF9UQVJHRVRfUkVESVJFQ1Q9bQpDT05GSUdfTkVURklM
VEVSX1hUX1RBUkdFVF9NQVNRVUVSQURFPW0KIyBDT05GSUdfTkVURklMVEVSX1hUX1RBUkdFVF9U
RUUgaXMgbm90IHNldAojIENPTkZJR19ORVRGSUxURVJfWFRfVEFSR0VUX1RQUk9YWSBpcyBub3Qg
c2V0CkNPTkZJR19ORVRGSUxURVJfWFRfVEFSR0VUX1RSQUNFPW0KQ09ORklHX05FVEZJTFRFUl9Y
VF9UQVJHRVRfVENQTVNTPW0KIyBDT05GSUdfTkVURklMVEVSX1hUX1RBUkdFVF9UQ1BPUFRTVFJJ
UCBpcyBub3Qgc2V0CgojCiMgWHRhYmxlcyBtYXRjaGVzCiMKQ09ORklHX05FVEZJTFRFUl9YVF9N
QVRDSF9BRERSVFlQRT1tCiMgQ09ORklHX05FVEZJTFRFUl9YVF9NQVRDSF9CUEYgaXMgbm90IHNl
dAojIENPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfQ0dST1VQIGlzIG5vdCBzZXQKIyBDT05GSUdf
TkVURklMVEVSX1hUX01BVENIX0NMVVNURVIgaXMgbm90IHNldApDT05GSUdfTkVURklMVEVSX1hU
X01BVENIX0NPTU1FTlQ9bQpDT05GSUdfTkVURklMVEVSX1hUX01BVENIX0NPTk5CWVRFUz1tCiMg
Q09ORklHX05FVEZJTFRFUl9YVF9NQVRDSF9DT05OTEFCRUwgaXMgbm90IHNldApDT05GSUdfTkVU
RklMVEVSX1hUX01BVENIX0NPTk5MSU1JVD1tCkNPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfQ09O
Tk1BUks9bQpDT05GSUdfTkVURklMVEVSX1hUX01BVENIX0NPTk5UUkFDSz1tCiMgQ09ORklHX05F
VEZJTFRFUl9YVF9NQVRDSF9DUFUgaXMgbm90IHNldApDT05GSUdfTkVURklMVEVSX1hUX01BVENI
X0RDQ1A9bQojIENPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfREVWR1JPVVAgaXMgbm90IHNldApD
T05GSUdfTkVURklMVEVSX1hUX01BVENIX0RTQ1A9bQpDT05GSUdfTkVURklMVEVSX1hUX01BVENI
X0VDTj1tCkNPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfRVNQPW0KQ09ORklHX05FVEZJTFRFUl9Y
VF9NQVRDSF9IQVNITElNSVQ9bQpDT05GSUdfTkVURklMVEVSX1hUX01BVENIX0hFTFBFUj1tCkNP
TkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfSEw9bQojIENPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hf
SVBDT01QIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVURklMVEVSX1hUX01BVENIX0lQUkFOR0UgaXMg
bm90IHNldAojIENPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfSVBWUyBpcyBub3Qgc2V0CiMgQ09O
RklHX05FVEZJTFRFUl9YVF9NQVRDSF9MMlRQIGlzIG5vdCBzZXQKQ09ORklHX05FVEZJTFRFUl9Y
VF9NQVRDSF9MRU5HVEg9bQpDT05GSUdfTkVURklMVEVSX1hUX01BVENIX0xJTUlUPW0KQ09ORklH
X05FVEZJTFRFUl9YVF9NQVRDSF9NQUM9bQpDT05GSUdfTkVURklMVEVSX1hUX01BVENIX01BUks9
bQpDT05GSUdfTkVURklMVEVSX1hUX01BVENIX01VTFRJUE9SVD1tCiMgQ09ORklHX05FVEZJTFRF
Ul9YVF9NQVRDSF9ORkFDQ1QgaXMgbm90IHNldAojIENPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hf
T1NGIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVURklMVEVSX1hUX01BVENIX09XTkVSIGlzIG5vdCBz
ZXQKQ09ORklHX05FVEZJTFRFUl9YVF9NQVRDSF9QT0xJQ1k9bQpDT05GSUdfTkVURklMVEVSX1hU
X01BVENIX1BIWVNERVY9bQpDT05GSUdfTkVURklMVEVSX1hUX01BVENIX1BLVFRZUEU9bQpDT05G
SUdfTkVURklMVEVSX1hUX01BVENIX1FVT1RBPW0KIyBDT05GSUdfTkVURklMVEVSX1hUX01BVENI
X1JBVEVFU1QgaXMgbm90IHNldApDT05GSUdfTkVURklMVEVSX1hUX01BVENIX1JFQUxNPW0KIyBD
T05GSUdfTkVURklMVEVSX1hUX01BVENIX1JFQ0VOVCBpcyBub3Qgc2V0CkNPTkZJR19ORVRGSUxU
RVJfWFRfTUFUQ0hfU0NUUD1tCiMgQ09ORklHX05FVEZJTFRFUl9YVF9NQVRDSF9TT0NLRVQgaXMg
bm90IHNldApDT05GSUdfTkVURklMVEVSX1hUX01BVENIX1NUQVRFPW0KQ09ORklHX05FVEZJTFRF
Ul9YVF9NQVRDSF9TVEFUSVNUSUM9bQpDT05GSUdfTkVURklMVEVSX1hUX01BVENIX1NUUklORz1t
CkNPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfVENQTVNTPW0KIyBDT05GSUdfTkVURklMVEVSX1hU
X01BVENIX1RJTUUgaXMgbm90IHNldApDT05GSUdfTkVURklMVEVSX1hUX01BVENIX1UzMj1tCiMg
ZW5kIG9mIENvcmUgTmV0ZmlsdGVyIENvbmZpZ3VyYXRpb24KCkNPTkZJR19JUF9TRVQ9bQpDT05G
SUdfSVBfU0VUX01BWD0yNTYKIyBDT05GSUdfSVBfU0VUX0JJVE1BUF9JUCBpcyBub3Qgc2V0CiMg
Q09ORklHX0lQX1NFVF9CSVRNQVBfSVBNQUMgaXMgbm90IHNldAojIENPTkZJR19JUF9TRVRfQklU
TUFQX1BPUlQgaXMgbm90IHNldAojIENPTkZJR19JUF9TRVRfSEFTSF9JUCBpcyBub3Qgc2V0CiMg
Q09ORklHX0lQX1NFVF9IQVNIX0lQTUFSSyBpcyBub3Qgc2V0CiMgQ09ORklHX0lQX1NFVF9IQVNI
X0lQUE9SVCBpcyBub3Qgc2V0CiMgQ09ORklHX0lQX1NFVF9IQVNIX0lQUE9SVElQIGlzIG5vdCBz
ZXQKIyBDT05GSUdfSVBfU0VUX0hBU0hfSVBQT1JUTkVUIGlzIG5vdCBzZXQKIyBDT05GSUdfSVBf
U0VUX0hBU0hfSVBNQUMgaXMgbm90IHNldAojIENPTkZJR19JUF9TRVRfSEFTSF9NQUMgaXMgbm90
IHNldAojIENPTkZJR19JUF9TRVRfSEFTSF9ORVRQT1JUTkVUIGlzIG5vdCBzZXQKIyBDT05GSUdf
SVBfU0VUX0hBU0hfTkVUIGlzIG5vdCBzZXQKIyBDT05GSUdfSVBfU0VUX0hBU0hfTkVUTkVUIGlz
IG5vdCBzZXQKIyBDT05GSUdfSVBfU0VUX0hBU0hfTkVUUE9SVCBpcyBub3Qgc2V0CiMgQ09ORklH
X0lQX1NFVF9IQVNIX05FVElGQUNFIGlzIG5vdCBzZXQKIyBDT05GSUdfSVBfU0VUX0xJU1RfU0VU
IGlzIG5vdCBzZXQKQ09ORklHX0lQX1ZTPW0KQ09ORklHX0lQX1ZTX0lQVjY9eQojIENPTkZJR19J
UF9WU19ERUJVRyBpcyBub3Qgc2V0CkNPTkZJR19JUF9WU19UQUJfQklUUz0xMgoKIwojIElQVlMg
dHJhbnNwb3J0IHByb3RvY29sIGxvYWQgYmFsYW5jaW5nIHN1cHBvcnQKIwpDT05GSUdfSVBfVlNf
UFJPVE9fVENQPXkKQ09ORklHX0lQX1ZTX1BST1RPX1VEUD15CkNPTkZJR19JUF9WU19QUk9UT19B
SF9FU1A9eQpDT05GSUdfSVBfVlNfUFJPVE9fRVNQPXkKQ09ORklHX0lQX1ZTX1BST1RPX0FIPXkK
Q09ORklHX0lQX1ZTX1BST1RPX1NDVFA9eQoKIwojIElQVlMgc2NoZWR1bGVyCiMKQ09ORklHX0lQ
X1ZTX1JSPW0KQ09ORklHX0lQX1ZTX1dSUj1tCkNPTkZJR19JUF9WU19MQz1tCkNPTkZJR19JUF9W
U19XTEM9bQojIENPTkZJR19JUF9WU19GTyBpcyBub3Qgc2V0CiMgQ09ORklHX0lQX1ZTX09WRiBp
cyBub3Qgc2V0CkNPTkZJR19JUF9WU19MQkxDPW0KQ09ORklHX0lQX1ZTX0xCTENSPW0KQ09ORklH
X0lQX1ZTX0RIPW0KQ09ORklHX0lQX1ZTX1NIPW0KIyBDT05GSUdfSVBfVlNfTUggaXMgbm90IHNl
dApDT05GSUdfSVBfVlNfU0VEPW0KQ09ORklHX0lQX1ZTX05RPW0KIyBDT05GSUdfSVBfVlNfVFdP
UyBpcyBub3Qgc2V0CgojCiMgSVBWUyBTSCBzY2hlZHVsZXIKIwpDT05GSUdfSVBfVlNfU0hfVEFC
X0JJVFM9OAoKIwojIElQVlMgTUggc2NoZWR1bGVyCiMKQ09ORklHX0lQX1ZTX01IX1RBQl9JTkRF
WD0xMgoKIwojIElQVlMgYXBwbGljYXRpb24gaGVscGVyCiMKIyBDT05GSUdfSVBfVlNfRlRQIGlz
IG5vdCBzZXQKQ09ORklHX0lQX1ZTX05GQ1Q9eQojIENPTkZJR19JUF9WU19QRV9TSVAgaXMgbm90
IHNldAoKIwojIElQOiBOZXRmaWx0ZXIgQ29uZmlndXJhdGlvbgojCkNPTkZJR19ORl9ERUZSQUdf
SVBWND1tCiMgQ09ORklHX05GX1NPQ0tFVF9JUFY0IGlzIG5vdCBzZXQKIyBDT05GSUdfTkZfVFBS
T1hZX0lQVjQgaXMgbm90IHNldAojIENPTkZJR19ORl9EVVBfSVBWNCBpcyBub3Qgc2V0CiMgQ09O
RklHX05GX0xPR19BUlAgaXMgbm90IHNldAojIENPTkZJR19ORl9MT0dfSVBWNCBpcyBub3Qgc2V0
CkNPTkZJR19ORl9SRUpFQ1RfSVBWND1tCkNPTkZJR19ORl9OQVRfUFBUUD1tCkNPTkZJR19ORl9O
QVRfSDMyMz1tCkNPTkZJR19JUF9ORl9JUFRBQkxFUz1tCkNPTkZJR19JUF9ORl9NQVRDSF9BSD1t
CkNPTkZJR19JUF9ORl9NQVRDSF9FQ049bQpDT05GSUdfSVBfTkZfTUFUQ0hfUlBGSUxURVI9bQpD
T05GSUdfSVBfTkZfTUFUQ0hfVFRMPW0KQ09ORklHX0lQX05GX0ZJTFRFUj1tCkNPTkZJR19JUF9O
Rl9UQVJHRVRfUkVKRUNUPW0KQ09ORklHX0lQX05GX1RBUkdFVF9TWU5QUk9YWT1tCkNPTkZJR19J
UF9ORl9OQVQ9bQpDT05GSUdfSVBfTkZfVEFSR0VUX01BU1FVRVJBREU9bQpDT05GSUdfSVBfTkZf
VEFSR0VUX05FVE1BUD1tCkNPTkZJR19JUF9ORl9UQVJHRVRfUkVESVJFQ1Q9bQpDT05GSUdfSVBf
TkZfTUFOR0xFPW0KQ09ORklHX0lQX05GX1RBUkdFVF9DTFVTVEVSSVA9bQpDT05GSUdfSVBfTkZf
VEFSR0VUX0VDTj1tCkNPTkZJR19JUF9ORl9UQVJHRVRfVFRMPW0KQ09ORklHX0lQX05GX1JBVz1t
CkNPTkZJR19JUF9ORl9TRUNVUklUWT1tCkNPTkZJR19JUF9ORl9BUlBUQUJMRVM9bQpDT05GSUdf
SVBfTkZfQVJQRklMVEVSPW0KQ09ORklHX0lQX05GX0FSUF9NQU5HTEU9bQojIGVuZCBvZiBJUDog
TmV0ZmlsdGVyIENvbmZpZ3VyYXRpb24KCiMKIyBJUHY2OiBOZXRmaWx0ZXIgQ29uZmlndXJhdGlv
bgojCiMgQ09ORklHX05GX1NPQ0tFVF9JUFY2IGlzIG5vdCBzZXQKIyBDT05GSUdfTkZfVFBST1hZ
X0lQVjYgaXMgbm90IHNldAojIENPTkZJR19ORl9EVVBfSVBWNiBpcyBub3Qgc2V0CkNPTkZJR19O
Rl9SRUpFQ1RfSVBWNj1tCkNPTkZJR19ORl9MT0dfSVBWNj1tCkNPTkZJR19JUDZfTkZfSVBUQUJM
RVM9bQojIENPTkZJR19JUDZfTkZfTUFUQ0hfQUggaXMgbm90IHNldApDT05GSUdfSVA2X05GX01B
VENIX0VVSTY0PW0KQ09ORklHX0lQNl9ORl9NQVRDSF9GUkFHPW0KQ09ORklHX0lQNl9ORl9NQVRD
SF9PUFRTPW0KQ09ORklHX0lQNl9ORl9NQVRDSF9ITD1tCkNPTkZJR19JUDZfTkZfTUFUQ0hfSVBW
NkhFQURFUj1tCiMgQ09ORklHX0lQNl9ORl9NQVRDSF9NSCBpcyBub3Qgc2V0CiMgQ09ORklHX0lQ
Nl9ORl9NQVRDSF9SUEZJTFRFUiBpcyBub3Qgc2V0CkNPTkZJR19JUDZfTkZfTUFUQ0hfUlQ9bQoj
IENPTkZJR19JUDZfTkZfTUFUQ0hfU1JIIGlzIG5vdCBzZXQKIyBDT05GSUdfSVA2X05GX1RBUkdF
VF9ITCBpcyBub3Qgc2V0CkNPTkZJR19JUDZfTkZfRklMVEVSPW0KQ09ORklHX0lQNl9ORl9UQVJH
RVRfUkVKRUNUPW0KIyBDT05GSUdfSVA2X05GX1RBUkdFVF9TWU5QUk9YWSBpcyBub3Qgc2V0CkNP
TkZJR19JUDZfTkZfTUFOR0xFPW0KQ09ORklHX0lQNl9ORl9SQVc9bQojIENPTkZJR19JUDZfTkZf
U0VDVVJJVFkgaXMgbm90IHNldApDT05GSUdfSVA2X05GX05BVD1tCkNPTkZJR19JUDZfTkZfVEFS
R0VUX01BU1FVRVJBREU9bQojIENPTkZJR19JUDZfTkZfVEFSR0VUX05QVCBpcyBub3Qgc2V0CiMg
ZW5kIG9mIElQdjY6IE5ldGZpbHRlciBDb25maWd1cmF0aW9uCgpDT05GSUdfTkZfREVGUkFHX0lQ
VjY9bQojIENPTkZJR19ORl9DT05OVFJBQ0tfQlJJREdFIGlzIG5vdCBzZXQKQ09ORklHX0JSSURH
RV9ORl9FQlRBQkxFUz1tCkNPTkZJR19CUklER0VfRUJUX0JST1VURT1tCkNPTkZJR19CUklER0Vf
RUJUX1RfRklMVEVSPW0KQ09ORklHX0JSSURHRV9FQlRfVF9OQVQ9bQpDT05GSUdfQlJJREdFX0VC
VF84MDJfMz1tCkNPTkZJR19CUklER0VfRUJUX0FNT05HPW0KQ09ORklHX0JSSURHRV9FQlRfQVJQ
PW0KQ09ORklHX0JSSURHRV9FQlRfSVA9bQpDT05GSUdfQlJJREdFX0VCVF9JUDY9bQpDT05GSUdf
QlJJREdFX0VCVF9MSU1JVD1tCkNPTkZJR19CUklER0VfRUJUX01BUks9bQpDT05GSUdfQlJJREdF
X0VCVF9QS1RUWVBFPW0KQ09ORklHX0JSSURHRV9FQlRfU1RQPW0KQ09ORklHX0JSSURHRV9FQlRf
VkxBTj1tCkNPTkZJR19CUklER0VfRUJUX0FSUFJFUExZPW0KQ09ORklHX0JSSURHRV9FQlRfRE5B
VD1tCkNPTkZJR19CUklER0VfRUJUX01BUktfVD1tCkNPTkZJR19CUklER0VfRUJUX1JFRElSRUNU
PW0KQ09ORklHX0JSSURHRV9FQlRfU05BVD1tCkNPTkZJR19CUklER0VfRUJUX0xPRz1tCkNPTkZJ
R19CUklER0VfRUJUX05GTE9HPW0KIyBDT05GSUdfQlBGSUxURVIgaXMgbm90IHNldApDT05GSUdf
SVBfU0NUUD1tCiMgQ09ORklHX1NDVFBfREJHX09CSkNOVCBpcyBub3Qgc2V0CkNPTkZJR19TQ1RQ
X0RFRkFVTFRfQ09PS0lFX0hNQUNfTUQ1PXkKIyBDT05GSUdfU0NUUF9ERUZBVUxUX0NPT0tJRV9I
TUFDX1NIQTEgaXMgbm90IHNldAojIENPTkZJR19TQ1RQX0RFRkFVTFRfQ09PS0lFX0hNQUNfTk9O
RSBpcyBub3Qgc2V0CkNPTkZJR19TQ1RQX0NPT0tJRV9ITUFDX01ENT15CiMgQ09ORklHX1NDVFBf
Q09PS0lFX0hNQUNfU0hBMSBpcyBub3Qgc2V0CkNPTkZJR19JTkVUX1NDVFBfRElBRz1tCiMgQ09O
RklHX1JEUyBpcyBub3Qgc2V0CkNPTkZJR19USVBDPW0KQ09ORklHX1RJUENfTUVESUFfVURQPXkK
Q09ORklHX1RJUENfQ1JZUFRPPXkKQ09ORklHX1RJUENfRElBRz1tCiMgQ09ORklHX0FUTSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0wyVFAgaXMgbm90IHNldApDT05GSUdfU1RQPXkKQ09ORklHX0dBUlA9
bQpDT05GSUdfTVJQPW0KQ09ORklHX0JSSURHRT15CkNPTkZJR19CUklER0VfSUdNUF9TTk9PUElO
Rz15CkNPTkZJR19CUklER0VfVkxBTl9GSUxURVJJTkc9eQojIENPTkZJR19CUklER0VfTVJQIGlz
IG5vdCBzZXQKIyBDT05GSUdfQlJJREdFX0NGTSBpcyBub3Qgc2V0CkNPTkZJR19ORVRfRFNBPW0K
IyBDT05GSUdfTkVUX0RTQV9UQUdfQVI5MzMxIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0RTQV9U
QUdfQlJDTSBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9EU0FfVEFHX0JSQ01fTEVHQUNZIGlzIG5v
dCBzZXQKIyBDT05GSUdfTkVUX0RTQV9UQUdfQlJDTV9QUkVQRU5EIGlzIG5vdCBzZXQKIyBDT05G
SUdfTkVUX0RTQV9UQUdfSEVMTENSRUVLIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0RTQV9UQUdf
R1NXSVAgaXMgbm90IHNldAojIENPTkZJR19ORVRfRFNBX1RBR19EU0EgaXMgbm90IHNldAojIENP
TkZJR19ORVRfRFNBX1RBR19FRFNBIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0RTQV9UQUdfTVRL
IGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0RTQV9UQUdfS1NaIGlzIG5vdCBzZXQKIyBDT05GSUdf
TkVUX0RTQV9UQUdfUlRMNF9BIGlzIG5vdCBzZXQKQ09ORklHX05FVF9EU0FfVEFHX09DRUxPVD1t
CkNPTkZJR19ORVRfRFNBX1RBR19PQ0VMT1RfODAyMVE9bQojIENPTkZJR19ORVRfRFNBX1RBR19R
Q0EgaXMgbm90IHNldAojIENPTkZJR19ORVRfRFNBX1RBR19MQU45MzAzIGlzIG5vdCBzZXQKIyBD
T05GSUdfTkVUX0RTQV9UQUdfU0pBMTEwNSBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9EU0FfVEFH
X1RSQUlMRVIgaXMgbm90IHNldAojIENPTkZJR19ORVRfRFNBX1RBR19YUlM3MDBYIGlzIG5vdCBz
ZXQKQ09ORklHX1ZMQU5fODAyMVE9bQpDT05GSUdfVkxBTl84MDIxUV9HVlJQPXkKQ09ORklHX1ZM
QU5fODAyMVFfTVZSUD15CkNPTkZJR19MTEM9eQojIENPTkZJR19MTEMyIGlzIG5vdCBzZXQKIyBD
T05GSUdfQVRBTEsgaXMgbm90IHNldAojIENPTkZJR19YMjUgaXMgbm90IHNldAojIENPTkZJR19M
QVBCIGlzIG5vdCBzZXQKIyBDT05GSUdfUEhPTkVUIGlzIG5vdCBzZXQKIyBDT05GSUdfNkxPV1BB
TiBpcyBub3Qgc2V0CiMgQ09ORklHX0lFRUU4MDIxNTQgaXMgbm90IHNldApDT05GSUdfTkVUX1ND
SEVEPXkKCiMKIyBRdWV1ZWluZy9TY2hlZHVsaW5nCiMKQ09ORklHX05FVF9TQ0hfQ0JRPW0KQ09O
RklHX05FVF9TQ0hfSFRCPW0KQ09ORklHX05FVF9TQ0hfSEZTQz1tCkNPTkZJR19ORVRfU0NIX1BS
SU89bQojIENPTkZJR19ORVRfU0NIX01VTFRJUSBpcyBub3Qgc2V0CkNPTkZJR19ORVRfU0NIX1JF
RD1tCiMgQ09ORklHX05FVF9TQ0hfU0ZCIGlzIG5vdCBzZXQKQ09ORklHX05FVF9TQ0hfU0ZRPW0K
Q09ORklHX05FVF9TQ0hfVEVRTD1tCkNPTkZJR19ORVRfU0NIX1RCRj1tCkNPTkZJR19ORVRfU0NI
X0NCUz1tCkNPTkZJR19ORVRfU0NIX0VURj1tCkNPTkZJR19ORVRfU0NIX1RBUFJJTz1tCkNPTkZJ
R19ORVRfU0NIX0dSRUQ9bQpDT05GSUdfTkVUX1NDSF9EU01BUks9bQpDT05GSUdfTkVUX1NDSF9O
RVRFTT1tCiMgQ09ORklHX05FVF9TQ0hfRFJSIGlzIG5vdCBzZXQKQ09ORklHX05FVF9TQ0hfTVFQ
UklPPW0KIyBDT05GSUdfTkVUX1NDSF9TS0JQUklPIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX1ND
SF9DSE9LRSBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9TQ0hfUUZRIGlzIG5vdCBzZXQKQ09ORklH
X05FVF9TQ0hfQ09ERUw9bQpDT05GSUdfTkVUX1NDSF9GUV9DT0RFTD1tCiMgQ09ORklHX05FVF9T
Q0hfQ0FLRSBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9TQ0hfRlEgaXMgbm90IHNldAojIENPTkZJ
R19ORVRfU0NIX0hIRiBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9TQ0hfUElFIGlzIG5vdCBzZXQK
Q09ORklHX05FVF9TQ0hfSU5HUkVTUz1tCiMgQ09ORklHX05FVF9TQ0hfUExVRyBpcyBub3Qgc2V0
CiMgQ09ORklHX05FVF9TQ0hfRVRTIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX1NDSF9ERUZBVUxU
IGlzIG5vdCBzZXQKCiMKIyBDbGFzc2lmaWNhdGlvbgojCkNPTkZJR19ORVRfQ0xTPXkKQ09ORklH
X05FVF9DTFNfQkFTSUM9eQojIENPTkZJR19ORVRfQ0xTX1JPVVRFNCBpcyBub3Qgc2V0CiMgQ09O
RklHX05FVF9DTFNfRlcgaXMgbm90IHNldApDT05GSUdfTkVUX0NMU19VMzI9eQojIENPTkZJR19D
TFNfVTMyX1BFUkYgaXMgbm90IHNldAojIENPTkZJR19DTFNfVTMyX01BUksgaXMgbm90IHNldAoj
IENPTkZJR19ORVRfQ0xTX1JTVlAgaXMgbm90IHNldAojIENPTkZJR19ORVRfQ0xTX1JTVlA2IGlz
IG5vdCBzZXQKIyBDT05GSUdfTkVUX0NMU19GTE9XIGlzIG5vdCBzZXQKQ09ORklHX05FVF9DTFNf
Q0dST1VQPXkKIyBDT05GSUdfTkVUX0NMU19CUEYgaXMgbm90IHNldApDT05GSUdfTkVUX0NMU19G
TE9XRVI9bQojIENPTkZJR19ORVRfQ0xTX01BVENIQUxMIGlzIG5vdCBzZXQKQ09ORklHX05FVF9F
TUFUQ0g9eQpDT05GSUdfTkVUX0VNQVRDSF9TVEFDSz0zMgojIENPTkZJR19ORVRfRU1BVENIX0NN
UCBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9FTUFUQ0hfTkJZVEUgaXMgbm90IHNldAojIENPTkZJ
R19ORVRfRU1BVENIX1UzMiBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9FTUFUQ0hfTUVUQSBpcyBu
b3Qgc2V0CiMgQ09ORklHX05FVF9FTUFUQ0hfVEVYVCBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9F
TUFUQ0hfQ0FOSUQgaXMgbm90IHNldAojIENPTkZJR19ORVRfRU1BVENIX0lQU0VUIGlzIG5vdCBz
ZXQKIyBDT05GSUdfTkVUX0VNQVRDSF9JUFQgaXMgbm90IHNldApDT05GSUdfTkVUX0NMU19BQ1Q9
eQpDT05GSUdfTkVUX0FDVF9QT0xJQ0U9bQpDT05GSUdfTkVUX0FDVF9HQUNUPW0KIyBDT05GSUdf
R0FDVF9QUk9CIGlzIG5vdCBzZXQKQ09ORklHX05FVF9BQ1RfTUlSUkVEPW0KIyBDT05GSUdfTkVU
X0FDVF9TQU1QTEUgaXMgbm90IHNldAojIENPTkZJR19ORVRfQUNUX0lQVCBpcyBub3Qgc2V0CiMg
Q09ORklHX05FVF9BQ1RfTkFUIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0FDVF9QRURJVCBpcyBu
b3Qgc2V0CiMgQ09ORklHX05FVF9BQ1RfU0lNUCBpcyBub3Qgc2V0CkNPTkZJR19ORVRfQUNUX1NL
QkVESVQ9bQojIENPTkZJR19ORVRfQUNUX0NTVU0gaXMgbm90IHNldAojIENPTkZJR19ORVRfQUNU
X01QTFMgaXMgbm90IHNldAojIENPTkZJR19ORVRfQUNUX1ZMQU4gaXMgbm90IHNldAojIENPTkZJ
R19ORVRfQUNUX0JQRiBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9BQ1RfQ09OTk1BUksgaXMgbm90
IHNldAojIENPTkZJR19ORVRfQUNUX0NUSU5GTyBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9BQ1Rf
U0tCTU9EIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0FDVF9JRkUgaXMgbm90IHNldAojIENPTkZJ
R19ORVRfQUNUX1RVTk5FTF9LRVkgaXMgbm90IHNldApDT05GSUdfTkVUX0FDVF9HQVRFPW0KIyBD
T05GSUdfTkVUX1RDX1NLQl9FWFQgaXMgbm90IHNldApDT05GSUdfTkVUX1NDSF9GSUZPPXkKIyBD
T05GSUdfRENCIGlzIG5vdCBzZXQKQ09ORklHX0ROU19SRVNPTFZFUj15CiMgQ09ORklHX0JBVE1B
Tl9BRFYgaXMgbm90IHNldApDT05GSUdfT1BFTlZTV0lUQ0g9bQpDT05GSUdfT1BFTlZTV0lUQ0hf
R1JFPW0KQ09ORklHX09QRU5WU1dJVENIX1ZYTEFOPW0KQ09ORklHX1ZTT0NLRVRTPXkKQ09ORklH
X1ZTT0NLRVRTX0RJQUc9eQpDT05GSUdfVlNPQ0tFVFNfTE9PUEJBQ0s9eQpDT05GSUdfVklSVElP
X1ZTT0NLRVRTPXkKQ09ORklHX1ZJUlRJT19WU09DS0VUU19DT01NT049eQojIENPTkZJR19ORVRM
SU5LX0RJQUcgaXMgbm90IHNldApDT05GSUdfTVBMUz15CkNPTkZJR19ORVRfTVBMU19HU089bQoj
IENPTkZJR19NUExTX1JPVVRJTkcgaXMgbm90IHNldApDT05GSUdfTkVUX05TSD1tCiMgQ09ORklH
X0hTUiBpcyBub3Qgc2V0CkNPTkZJR19ORVRfU1dJVENIREVWPXkKIyBDT05GSUdfTkVUX0wzX01B
U1RFUl9ERVYgaXMgbm90IHNldApDT05GSUdfUVJUUj1tCkNPTkZJR19RUlRSX1NNRD1tCkNPTkZJ
R19RUlRSX1RVTj1tCiMgQ09ORklHX05FVF9OQ1NJIGlzIG5vdCBzZXQKQ09ORklHX1BDUFVfREVW
X1JFRkNOVD15CkNPTkZJR19SUFM9eQpDT05GSUdfUkZTX0FDQ0VMPXkKQ09ORklHX1NPQ0tfUlhf
UVVFVUVfTUFQUElORz15CkNPTkZJR19YUFM9eQpDT05GSUdfQ0dST1VQX05FVF9QUklPPXkKQ09O
RklHX0NHUk9VUF9ORVRfQ0xBU1NJRD15CkNPTkZJR19ORVRfUlhfQlVTWV9QT0xMPXkKQ09ORklH
X0JRTD15CiMgQ09ORklHX0JQRl9TVFJFQU1fUEFSU0VSIGlzIG5vdCBzZXQKQ09ORklHX05FVF9G
TE9XX0xJTUlUPXkKCiMKIyBOZXR3b3JrIHRlc3RpbmcKIwpDT05GSUdfTkVUX1BLVEdFTj1tCiMg
Q09ORklHX05FVF9EUk9QX01PTklUT1IgaXMgbm90IHNldAojIGVuZCBvZiBOZXR3b3JrIHRlc3Rp
bmcKIyBlbmQgb2YgTmV0d29ya2luZyBvcHRpb25zCgojIENPTkZJR19IQU1SQURJTyBpcyBub3Qg
c2V0CkNPTkZJR19DQU49eQpDT05GSUdfQ0FOX1JBVz15CkNPTkZJR19DQU5fQkNNPXkKQ09ORklH
X0NBTl9HVz15CiMgQ09ORklHX0NBTl9KMTkzOSBpcyBub3Qgc2V0CkNPTkZJR19DQU5fSVNPVFA9
eQoKIwojIENBTiBEZXZpY2UgRHJpdmVycwojCkNPTkZJR19DQU5fVkNBTj15CkNPTkZJR19DQU5f
VlhDQU49eQojIENPTkZJR19DQU5fU0xDQU4gaXMgbm90IHNldApDT05GSUdfQ0FOX0RFVj15CkNP
TkZJR19DQU5fQ0FMQ19CSVRUSU1JTkc9eQpDT05GSUdfQ0FOX0ZMRVhDQU49bQojIENPTkZJR19D
QU5fR1JDQU4gaXMgbm90IHNldAojIENPTkZJR19DQU5fS1ZBU0VSX1BDSUVGRCBpcyBub3Qgc2V0
CiMgQ09ORklHX0NBTl9YSUxJTlhDQU4gaXMgbm90IHNldAojIENPTkZJR19DQU5fQ19DQU4gaXMg
bm90IHNldAojIENPTkZJR19DQU5fQ0M3NzAgaXMgbm90IHNldAojIENPTkZJR19DQU5fSUZJX0NB
TkZEIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0FOX01fQ0FOIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0FO
X1BFQUtfUENJRUZEIGlzIG5vdCBzZXQKQ09ORklHX0NBTl9SQ0FSPW0KQ09ORklHX0NBTl9SQ0FS
X0NBTkZEPW0KIyBDT05GSUdfQ0FOX1NKQTEwMDAgaXMgbm90IHNldAojIENPTkZJR19DQU5fU09G
VElORyBpcyBub3Qgc2V0CgojCiMgQ0FOIFNQSSBpbnRlcmZhY2VzCiMKIyBDT05GSUdfQ0FOX0hJ
MzExWCBpcyBub3Qgc2V0CiMgQ09ORklHX0NBTl9NQ1AyNTFYIGlzIG5vdCBzZXQKIyBDT05GSUdf
Q0FOX01DUDI1MVhGRCBpcyBub3Qgc2V0CiMgZW5kIG9mIENBTiBTUEkgaW50ZXJmYWNlcwoKIwoj
IENBTiBVU0IgaW50ZXJmYWNlcwojCiMgQ09ORklHX0NBTl84REVWX1VTQiBpcyBub3Qgc2V0CiMg
Q09ORklHX0NBTl9FTVNfVVNCIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0FOX0VTRF9VU0IyIGlzIG5v
dCBzZXQKIyBDT05GSUdfQ0FOX0VUQVNfRVM1OFggaXMgbm90IHNldAojIENPTkZJR19DQU5fR1Nf
VVNCIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0FOX0tWQVNFUl9VU0IgaXMgbm90IHNldAojIENPTkZJ
R19DQU5fTUNCQV9VU0IgaXMgbm90IHNldAojIENPTkZJR19DQU5fUEVBS19VU0IgaXMgbm90IHNl
dAojIENPTkZJR19DQU5fVUNBTiBpcyBub3Qgc2V0CiMgZW5kIG9mIENBTiBVU0IgaW50ZXJmYWNl
cwoKIyBDT05GSUdfQ0FOX0RFQlVHX0RFVklDRVMgaXMgbm90IHNldAojIGVuZCBvZiBDQU4gRGV2
aWNlIERyaXZlcnMKCiMgQ09ORklHX0JUIGlzIG5vdCBzZXQKIyBDT05GSUdfQUZfUlhSUEMgaXMg
bm90IHNldAojIENPTkZJR19BRl9LQ00gaXMgbm90IHNldAojIENPTkZJR19NQ1RQIGlzIG5vdCBz
ZXQKQ09ORklHX0ZJQl9SVUxFUz15CkNPTkZJR19XSVJFTEVTUz15CkNPTkZJR19DRkc4MDIxMT1t
CiMgQ09ORklHX05MODAyMTFfVEVTVE1PREUgaXMgbm90IHNldAojIENPTkZJR19DRkc4MDIxMV9E
RVZFTE9QRVJfV0FSTklOR1MgaXMgbm90IHNldApDT05GSUdfQ0ZHODAyMTFfUkVRVUlSRV9TSUdO
RURfUkVHREI9eQpDT05GSUdfQ0ZHODAyMTFfVVNFX0tFUk5FTF9SRUdEQl9LRVlTPXkKQ09ORklH
X0NGRzgwMjExX0RFRkFVTFRfUFM9eQojIENPTkZJR19DRkc4MDIxMV9ERUJVR0ZTIGlzIG5vdCBz
ZXQKQ09ORklHX0NGRzgwMjExX0NSREFfU1VQUE9SVD15CiMgQ09ORklHX0NGRzgwMjExX1dFWFQg
aXMgbm90IHNldApDT05GSUdfTUFDODAyMTE9bQpDT05GSUdfTUFDODAyMTFfSEFTX1JDPXkKQ09O
RklHX01BQzgwMjExX1JDX01JTlNUUkVMPXkKQ09ORklHX01BQzgwMjExX1JDX0RFRkFVTFRfTUlO
U1RSRUw9eQpDT05GSUdfTUFDODAyMTFfUkNfREVGQVVMVD0ibWluc3RyZWxfaHQiCiMgQ09ORklH
X01BQzgwMjExX01FU0ggaXMgbm90IHNldApDT05GSUdfTUFDODAyMTFfTEVEUz15CiMgQ09ORklH
X01BQzgwMjExX0RFQlVHRlMgaXMgbm90IHNldAojIENPTkZJR19NQUM4MDIxMV9NRVNTQUdFX1RS
QUNJTkcgaXMgbm90IHNldAojIENPTkZJR19NQUM4MDIxMV9ERUJVR19NRU5VIGlzIG5vdCBzZXQK
Q09ORklHX01BQzgwMjExX1NUQV9IQVNIX01BWF9TSVpFPTAKQ09ORklHX1JGS0lMTD15CkNPTkZJ
R19SRktJTExfTEVEUz15CkNPTkZJR19SRktJTExfSU5QVVQ9eQojIENPTkZJR19SRktJTExfR1BJ
TyBpcyBub3Qgc2V0CkNPTkZJR19ORVRfOVA9eQpDT05GSUdfTkVUXzlQX1ZJUlRJTz15CiMgQ09O
RklHX05FVF85UF9YRU4gaXMgbm90IHNldAojIENPTkZJR19ORVRfOVBfREVCVUcgaXMgbm90IHNl
dAojIENPTkZJR19DQUlGIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0VQSF9MSUIgaXMgbm90IHNldApD
T05GSUdfTkZDPW0KIyBDT05GSUdfTkZDX0RJR0lUQUwgaXMgbm90IHNldApDT05GSUdfTkZDX05D
ST1tCiMgQ09ORklHX05GQ19OQ0lfU1BJIGlzIG5vdCBzZXQKIyBDT05GSUdfTkZDX05DSV9VQVJU
IGlzIG5vdCBzZXQKIyBDT05GSUdfTkZDX0hDSSBpcyBub3Qgc2V0CgojCiMgTmVhciBGaWVsZCBD
b21tdW5pY2F0aW9uIChORkMpIGRldmljZXMKIwojIENPTkZJR19ORkNfVklSVFVBTF9OQ0kgaXMg
bm90IHNldAojIENPTkZJR19ORkNfRkRQIGlzIG5vdCBzZXQKIyBDT05GSUdfTkZDX1BONTMzX1VT
QiBpcyBub3Qgc2V0CiMgQ09ORklHX05GQ19QTjUzM19JMkMgaXMgbm90IHNldAojIENPTkZJR19O
RkNfUE41MzJfVUFSVCBpcyBub3Qgc2V0CiMgQ09ORklHX05GQ19NUlZMX1VTQiBpcyBub3Qgc2V0
CiMgQ09ORklHX05GQ19TVF9OQ0lfSTJDIGlzIG5vdCBzZXQKIyBDT05GSUdfTkZDX1NUX05DSV9T
UEkgaXMgbm90IHNldAojIENPTkZJR19ORkNfTlhQX05DSSBpcyBub3Qgc2V0CkNPTkZJR19ORkNf
UzNGV1JONT1tCkNPTkZJR19ORkNfUzNGV1JONV9JMkM9bQojIENPTkZJR19ORkNfUzNGV1JOODJf
VUFSVCBpcyBub3Qgc2V0CiMgZW5kIG9mIE5lYXIgRmllbGQgQ29tbXVuaWNhdGlvbiAoTkZDKSBk
ZXZpY2VzCgojIENPTkZJR19QU0FNUExFIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0lGRSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0xXVFVOTkVMIGlzIG5vdCBzZXQKQ09ORklHX0RTVF9DQUNIRT15CkNP
TkZJR19HUk9fQ0VMTFM9eQpDT05GSUdfTkVUX1NFTEZURVNUUz15CkNPTkZJR19ORVRfU09DS19N
U0c9eQpDT05GSUdfTkVUX0RFVkxJTks9eQpDT05GSUdfUEFHRV9QT09MPXkKQ09ORklHX0ZBSUxP
VkVSPXkKQ09ORklHX0VUSFRPT0xfTkVUTElOSz15CgojCiMgRGV2aWNlIERyaXZlcnMKIwpDT05G
SUdfQVJNX0FNQkE9eQpDT05GSUdfVEVHUkFfQUhCPXkKQ09ORklHX0hBVkVfUENJPXkKQ09ORklH
X1BDST15CkNPTkZJR19QQ0lfRE9NQUlOUz15CkNPTkZJR19QQ0lfRE9NQUlOU19HRU5FUklDPXkK
Q09ORklHX1BDSV9TWVNDQUxMPXkKQ09ORklHX1BDSUVQT1JUQlVTPXkKIyBDT05GSUdfSE9UUExV
R19QQ0lfUENJRSBpcyBub3Qgc2V0CiMgQ09ORklHX1BDSUVBRVIgaXMgbm90IHNldApDT05GSUdf
UENJRUFTUE09eQpDT05GSUdfUENJRUFTUE1fREVGQVVMVD15CiMgQ09ORklHX1BDSUVBU1BNX1BP
V0VSU0FWRSBpcyBub3Qgc2V0CiMgQ09ORklHX1BDSUVBU1BNX1BPV0VSX1NVUEVSU0FWRSBpcyBu
b3Qgc2V0CiMgQ09ORklHX1BDSUVBU1BNX1BFUkZPUk1BTkNFIGlzIG5vdCBzZXQKQ09ORklHX1BD
SUVfUE1FPXkKIyBDT05GSUdfUENJRV9QVE0gaXMgbm90IHNldApDT05GSUdfUENJX01TST15CkNP
TkZJR19QQ0lfTVNJX0lSUV9ET01BSU49eQpDT05GSUdfUENJX1FVSVJLUz15CiMgQ09ORklHX1BD
SV9SRUFMTE9DX0VOQUJMRV9BVVRPIGlzIG5vdCBzZXQKIyBDT05GSUdfUENJX1NUVUIgaXMgbm90
IHNldAojIENPTkZJR19QQ0lfUEZfU1RVQiBpcyBub3Qgc2V0CkNPTkZJR19QQ0lfQVRTPXkKQ09O
RklHX1BDSV9FQ0FNPXkKQ09ORklHX1BDSV9CUklER0VfRU1VTD15CkNPTkZJR19QQ0lfSU9WPXkK
IyBDT05GSUdfUENJX1BSSSBpcyBub3Qgc2V0CkNPTkZJR19QQ0lfUEFTSUQ9eQpDT05GSUdfUENJ
X0xBQkVMPXkKQ09ORklHX0hPVFBMVUdfUENJPXkKQ09ORklHX0hPVFBMVUdfUENJX0FDUEk9eQoj
IENPTkZJR19IT1RQTFVHX1BDSV9BQ1BJX0lCTSBpcyBub3Qgc2V0CiMgQ09ORklHX0hPVFBMVUdf
UENJX0NQQ0kgaXMgbm90IHNldAojIENPTkZJR19IT1RQTFVHX1BDSV9TSFBDIGlzIG5vdCBzZXQK
CiMKIyBQQ0kgY29udHJvbGxlciBkcml2ZXJzCiMKQ09ORklHX1BDSV9BQVJEVkFSSz15CiMgQ09O
RklHX1BDSUVfWElMSU5YX05XTCBpcyBub3Qgc2V0CiMgQ09ORklHX1BDSV9GVFBDSTEwMCBpcyBu
b3Qgc2V0CkNPTkZJR19QQ0lfVEVHUkE9eQpDT05GSUdfUENJRV9SQ0FSX0hPU1Q9eQpDT05GSUdf
UENJRV9SQ0FSX0VQPXkKQ09ORklHX1BDSV9IT1NUX0NPTU1PTj15CkNPTkZJR19QQ0lfSE9TVF9H
RU5FUklDPXkKIyBDT05GSUdfUENJRV9YSUxJTlggaXMgbm90IHNldAojIENPTkZJR19QQ0lFX1hJ
TElOWF9DUE0gaXMgbm90IHNldApDT05GSUdfUENJX1hHRU5FPXkKQ09ORklHX1BDSV9YR0VORV9N
U0k9eQpDT05GSUdfUENJRV9JUFJPQz15CkNPTkZJR19QQ0lFX0lQUk9DX1BMQVRGT1JNPXkKQ09O
RklHX1BDSUVfSVBST0NfTVNJPXkKQ09ORklHX1BDSUVfQUxURVJBPXkKQ09ORklHX1BDSUVfQUxU
RVJBX01TST15CkNPTkZJR19QQ0lfSE9TVF9USFVOREVSX1BFTT15CkNPTkZJR19QQ0lfSE9TVF9U
SFVOREVSX0VDQU09eQpDT05GSUdfUENJRV9ST0NLQ0hJUD15CkNPTkZJR19QQ0lFX1JPQ0tDSElQ
X0hPU1Q9bQojIENPTkZJR19QQ0lFX1JPQ0tDSElQX0VQIGlzIG5vdCBzZXQKIyBDT05GSUdfUENJ
RV9NRURJQVRFSyBpcyBub3Qgc2V0CiMgQ09ORklHX1BDSUVfTUVESUFURUtfR0VOMyBpcyBub3Qg
c2V0CkNPTkZJR19QQ0lFX0JSQ01TVEI9bQojIENPTkZJR19QQ0lFX01JQ1JPQ0hJUF9IT1NUIGlz
IG5vdCBzZXQKIyBDT05GSUdfUENJRV9ISVNJX0VSUiBpcyBub3Qgc2V0CgojCiMgRGVzaWduV2Fy
ZSBQQ0kgQ29yZSBTdXBwb3J0CiMKQ09ORklHX1BDSUVfRFc9eQpDT05GSUdfUENJRV9EV19IT1NU
PXkKIyBDT05GSUdfUENJRV9EV19QTEFUX0hPU1QgaXMgbm90IHNldAojIENPTkZJR19QQ0lFX0RX
X1BMQVRfRVAgaXMgbm90IHNldAojIENPTkZJR19QQ0lfRVhZTk9TIGlzIG5vdCBzZXQKQ09ORklH
X1BDSV9JTVg2PXkKIyBDT05GSUdfUENJX0tFWVNUT05FX0hPU1QgaXMgbm90IHNldAojIENPTkZJ
R19QQ0lfS0VZU1RPTkVfRVAgaXMgbm90IHNldApDT05GSUdfUENJX0xBWUVSU0NBUEU9eQojIENP
TkZJR19QQ0lfTEFZRVJTQ0FQRV9FUCBpcyBub3Qgc2V0CkNPTkZJR19QQ0lfSElTST15CkNPTkZJ
R19QQ0lFX1FDT009eQpDT05GSUdfUENJRV9BUk1BREFfOEs9eQojIENPTkZJR19QQ0lFX1JPQ0tD
SElQX0RXX0hPU1QgaXMgbm90IHNldAojIENPTkZJR19QQ0lFX0tFRU1CQVlfSE9TVCBpcyBub3Qg
c2V0CiMgQ09ORklHX1BDSUVfS0VFTUJBWV9FUCBpcyBub3Qgc2V0CkNPTkZJR19QQ0lFX0tJUklO
PXkKQ09ORklHX1BDSUVfSElTSV9TVEI9eQpDT05GSUdfUENJX01FU09OPW0KQ09ORklHX1BDSUVf
VEVHUkExOTQ9bQpDT05GSUdfUENJRV9URUdSQTE5NF9IT1NUPW0KIyBDT05GSUdfUENJRV9URUdS
QTE5NF9FUCBpcyBub3Qgc2V0CiMgQ09ORklHX1BDSUVfVklTQ09OVElfSE9TVCBpcyBub3Qgc2V0
CiMgQ09ORklHX1BDSUVfVU5JUEhJRVIgaXMgbm90IHNldAojIENPTkZJR19QQ0lFX1VOSVBISUVS
X0VQIGlzIG5vdCBzZXQKIyBDT05GSUdfUENJRV9BTCBpcyBub3Qgc2V0CiMgZW5kIG9mIERlc2ln
bldhcmUgUENJIENvcmUgU3VwcG9ydAoKIwojIE1vYml2ZWlsIFBDSWUgQ29yZSBTdXBwb3J0CiMK
Q09ORklHX1BDSUVfTU9CSVZFSUw9eQpDT05GSUdfUENJRV9NT0JJVkVJTF9IT1NUPXkKIyBDT05G
SUdfUENJRV9NT0JJVkVJTF9QTEFUIGlzIG5vdCBzZXQKQ09ORklHX1BDSUVfTEFZRVJTQ0FQRV9H
RU40PXkKIyBlbmQgb2YgTW9iaXZlaWwgUENJZSBDb3JlIFN1cHBvcnQKCiMKIyBDYWRlbmNlIFBD
SWUgY29udHJvbGxlcnMgc3VwcG9ydAojCiMgQ09ORklHX1BDSUVfQ0FERU5DRV9QTEFUX0hPU1Qg
aXMgbm90IHNldAojIENPTkZJR19QQ0lFX0NBREVOQ0VfUExBVF9FUCBpcyBub3Qgc2V0CiMgQ09O
RklHX1BDSV9KNzIxRV9IT1NUIGlzIG5vdCBzZXQKIyBDT05GSUdfUENJX0o3MjFFX0VQIGlzIG5v
dCBzZXQKIyBlbmQgb2YgQ2FkZW5jZSBQQ0llIGNvbnRyb2xsZXJzIHN1cHBvcnQKIyBlbmQgb2Yg
UENJIGNvbnRyb2xsZXIgZHJpdmVycwoKIwojIFBDSSBFbmRwb2ludAojCkNPTkZJR19QQ0lfRU5E
UE9JTlQ9eQpDT05GSUdfUENJX0VORFBPSU5UX0NPTkZJR0ZTPXkKQ09ORklHX1BDSV9FUEZfVEVT
VD1tCiMgQ09ORklHX1BDSV9FUEZfTlRCIGlzIG5vdCBzZXQKIyBlbmQgb2YgUENJIEVuZHBvaW50
CgojCiMgUENJIHN3aXRjaCBjb250cm9sbGVyIGRyaXZlcnMKIwojIENPTkZJR19QQ0lfU1dfU1dJ
VENIVEVDIGlzIG5vdCBzZXQKIyBlbmQgb2YgUENJIHN3aXRjaCBjb250cm9sbGVyIGRyaXZlcnMK
CiMgQ09ORklHX0NYTF9CVVMgaXMgbm90IHNldAojIENPTkZJR19QQ0NBUkQgaXMgbm90IHNldAoj
IENPTkZJR19SQVBJRElPIGlzIG5vdCBzZXQKCiMKIyBHZW5lcmljIERyaXZlciBPcHRpb25zCiMK
Q09ORklHX0FVWElMSUFSWV9CVVM9eQojIENPTkZJR19VRVZFTlRfSEVMUEVSIGlzIG5vdCBzZXQK
Q09ORklHX0RFVlRNUEZTPXkKQ09ORklHX0RFVlRNUEZTX01PVU5UPXkKQ09ORklHX1NUQU5EQUxP
TkU9eQpDT05GSUdfUFJFVkVOVF9GSVJNV0FSRV9CVUlMRD15CgojCiMgRmlybXdhcmUgbG9hZGVy
CiMKQ09ORklHX0ZXX0xPQURFUj15CkNPTkZJR19GV19MT0FERVJfUEFHRURfQlVGPXkKQ09ORklH
X0VYVFJBX0ZJUk1XQVJFPSIiCkNPTkZJR19GV19MT0FERVJfVVNFUl9IRUxQRVI9eQpDT05GSUdf
RldfTE9BREVSX1VTRVJfSEVMUEVSX0ZBTExCQUNLPXkKIyBDT05GSUdfRldfTE9BREVSX0NPTVBS
RVNTIGlzIG5vdCBzZXQKQ09ORklHX0ZXX0NBQ0hFPXkKIyBlbmQgb2YgRmlybXdhcmUgbG9hZGVy
CgpDT05GSUdfV0FOVF9ERVZfQ09SRURVTVA9eQpDT05GSUdfQUxMT1dfREVWX0NPUkVEVU1QPXkK
Q09ORklHX0RFVl9DT1JFRFVNUD15CiMgQ09ORklHX1RFU1RfQVNZTkNfRFJJVkVSX1BST0JFIGlz
IG5vdCBzZXQKQ09ORklHX1NZU19IWVBFUlZJU09SPXkKQ09ORklHX0dFTkVSSUNfQ1BVX0FVVE9Q
Uk9CRT15CkNPTkZJR19HRU5FUklDX0NQVV9WVUxORVJBQklMSVRJRVM9eQpDT05GSUdfU09DX0JV
Uz15CkNPTkZJR19SRUdNQVA9eQpDT05GSUdfUkVHTUFQX0kyQz15CkNPTkZJR19SRUdNQVBfU0xJ
TUJVUz1tCkNPTkZJR19SRUdNQVBfU1BJPXkKQ09ORklHX1JFR01BUF9TUE1JPXkKQ09ORklHX1JF
R01BUF9NTUlPPXkKQ09ORklHX1JFR01BUF9JUlE9eQpDT05GSUdfUkVHTUFQX1NPVU5EV0lSRT1t
CkNPTkZJR19ETUFfU0hBUkVEX0JVRkZFUj15CiMgQ09ORklHX0RNQV9GRU5DRV9UUkFDRSBpcyBu
b3Qgc2V0CkNPTkZJR19HRU5FUklDX0FSQ0hfVE9QT0xPR1k9eQpDT05GSUdfR0VORVJJQ19BUkNI
X05VTUE9eQojIGVuZCBvZiBHZW5lcmljIERyaXZlciBPcHRpb25zCgojCiMgQnVzIGRldmljZXMK
IwpDT05GSUdfQlJDTVNUQl9HSVNCX0FSQj15CiMgQ09ORklHX01PWFRFVCBpcyBub3Qgc2V0CkNP
TkZJR19ISVNJTElDT05fTFBDPXkKIyBDT05GSUdfSU1YX1dFSU0gaXMgbm90IHNldApDT05GSUdf
UUNPTV9FQkkyPXkKQ09ORklHX1NVTjUwSV9ERTJfQlVTPXkKQ09ORklHX1NVTlhJX1JTQj15CkNP
TkZJR19URUdSQV9BQ09OTkVDVD1tCiMgQ09ORklHX1RFR1JBX0dNSSBpcyBub3Qgc2V0CkNPTkZJ
R19VTklQSElFUl9TWVNURU1fQlVTPXkKQ09ORklHX1ZFWFBSRVNTX0NPTkZJRz15CkNPTkZJR19G
U0xfTUNfQlVTPXkKIyBDT05GSUdfRlNMX01DX1VBUElfU1VQUE9SVCBpcyBub3Qgc2V0CiMgQ09O
RklHX01ISV9CVVMgaXMgbm90IHNldAojIGVuZCBvZiBCdXMgZGV2aWNlcwoKIyBDT05GSUdfQ09O
TkVDVE9SIGlzIG5vdCBzZXQKCiMKIyBGaXJtd2FyZSBEcml2ZXJzCiMKCiMKIyBBUk0gU3lzdGVt
IENvbnRyb2wgYW5kIE1hbmFnZW1lbnQgSW50ZXJmYWNlIFByb3RvY29sCiMKQ09ORklHX0FSTV9T
Q01JX1BST1RPQ09MPXkKQ09ORklHX0FSTV9TQ01JX0hBVkVfVFJBTlNQT1JUPXkKQ09ORklHX0FS
TV9TQ01JX0hBVkVfU0hNRU09eQpDT05GSUdfQVJNX1NDTUlfVFJBTlNQT1JUX01BSUxCT1g9eQpD
T05GSUdfQVJNX1NDTUlfVFJBTlNQT1JUX1NNQz15CiMgQ09ORklHX0FSTV9TQ01JX1RSQU5TUE9S
VF9WSVJUSU8gaXMgbm90IHNldApDT05GSUdfQVJNX1NDTUlfUE9XRVJfRE9NQUlOPXkKIyBlbmQg
b2YgQVJNIFN5c3RlbSBDb250cm9sIGFuZCBNYW5hZ2VtZW50IEludGVyZmFjZSBQcm90b2NvbAoK
Q09ORklHX0FSTV9TQ1BJX1BST1RPQ09MPXkKQ09ORklHX0FSTV9TQ1BJX1BPV0VSX0RPTUFJTj15
CiMgQ09ORklHX0FSTV9TREVfSU5URVJGQUNFIGlzIG5vdCBzZXQKQ09ORklHX0RNSUlEPXkKIyBD
T05GSUdfRE1JX1NZU0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfSVNDU0lfSUJGVCBpcyBub3Qgc2V0
CkNPTkZJR19SQVNQQkVSUllQSV9GSVJNV0FSRT15CiMgQ09ORklHX0ZXX0NGR19TWVNGUyBpcyBu
b3Qgc2V0CkNPTkZJR19JTlRFTF9TVFJBVElYMTBfU0VSVklDRT15CkNPTkZJR19JTlRFTF9TVFJB
VElYMTBfUlNVPW0KQ09ORklHX1FDT01fU0NNPXkKIyBDT05GSUdfUUNPTV9TQ01fRE9XTkxPQURf
TU9ERV9ERUZBVUxUIGlzIG5vdCBzZXQKQ09ORklHX1NZU0ZCPXkKIyBDT05GSUdfU1lTRkJfU0lN
UExFRkIgaXMgbm90IHNldApDT05GSUdfVElfU0NJX1BST1RPQ09MPXkKIyBDT05GSUdfVFVSUklT
X01PWF9SV1RNIGlzIG5vdCBzZXQKIyBDT05GSUdfQVJNX0ZGQV9UUkFOU1BPUlQgaXMgbm90IHNl
dApDT05GSUdfVEVFX0JOWFRfRlc9eQojIENPTkZJR19HT09HTEVfRklSTVdBUkUgaXMgbm90IHNl
dAoKIwojIEVGSSAoRXh0ZW5zaWJsZSBGaXJtd2FyZSBJbnRlcmZhY2UpIFN1cHBvcnQKIwpDT05G
SUdfRUZJX0VTUlQ9eQpDT05GSUdfRUZJX1ZBUlNfUFNUT1JFPXkKIyBDT05GSUdfRUZJX1ZBUlNf
UFNUT1JFX0RFRkFVTFRfRElTQUJMRSBpcyBub3Qgc2V0CkNPTkZJR19FRklfUEFSQU1TX0ZST01f
RkRUPXkKQ09ORklHX0VGSV9SVU5USU1FX1dSQVBQRVJTPXkKQ09ORklHX0VGSV9HRU5FUklDX1NU
VUI9eQpDT05GSUdfRUZJX0FSTVNUVUJfRFRCX0xPQURFUj15CiMgQ09ORklHX0VGSV9HRU5FUklD
X1NUVUJfSU5JVFJEX0NNRExJTkVfTE9BREVSIGlzIG5vdCBzZXQKIyBDT05GSUdfRUZJX0JPT1RM
T0FERVJfQ09OVFJPTCBpcyBub3Qgc2V0CkNPTkZJR19FRklfQ0FQU1VMRV9MT0FERVI9eQojIENP
TkZJR19FRklfVEVTVCBpcyBub3Qgc2V0CiMgQ09ORklHX1JFU0VUX0FUVEFDS19NSVRJR0FUSU9O
IGlzIG5vdCBzZXQKIyBDT05GSUdfRUZJX0RJU0FCTEVfUENJX0RNQSBpcyBub3Qgc2V0CiMgZW5k
IG9mIEVGSSAoRXh0ZW5zaWJsZSBGaXJtd2FyZSBJbnRlcmZhY2UpIFN1cHBvcnQKCkNPTkZJR19V
RUZJX0NQRVI9eQpDT05GSUdfVUVGSV9DUEVSX0FSTT15CkNPTkZJR19FRklfRUFSTFlDT049eQpD
T05GSUdfRUZJX0NVU1RPTV9TU0RUX09WRVJMQVlTPXkKIyBDT05GSUdfSU1YX0RTUCBpcyBub3Qg
c2V0CkNPTkZJR19JTVhfU0NVPXkKQ09ORklHX0lNWF9TQ1VfUEQ9eQpDT05GSUdfTUVTT05fU009
eQpDT05GSUdfQVJNX1BTQ0lfRlc9eQojIENPTkZJR19BUk1fUFNDSV9DSEVDS0VSIGlzIG5vdCBz
ZXQKQ09ORklHX0hBVkVfQVJNX1NNQ0NDPXkKQ09ORklHX0hBVkVfQVJNX1NNQ0NDX0RJU0NPVkVS
WT15CkNPTkZJR19BUk1fU01DQ0NfU09DX0lEPXkKCiMKIyBUZWdyYSBmaXJtd2FyZSBkcml2ZXIK
IwpDT05GSUdfVEVHUkFfSVZDPXkKQ09ORklHX1RFR1JBX0JQTVA9eQojIGVuZCBvZiBUZWdyYSBm
aXJtd2FyZSBkcml2ZXIKCiMKIyBaeW5xIE1QU29DIEZpcm13YXJlIERyaXZlcnMKIwpDT05GSUdf
WllOUU1QX0ZJUk1XQVJFPXkKIyBDT05GSUdfWllOUU1QX0ZJUk1XQVJFX0RFQlVHIGlzIG5vdCBz
ZXQKIyBlbmQgb2YgWnlucSBNUFNvQyBGaXJtd2FyZSBEcml2ZXJzCiMgZW5kIG9mIEZpcm13YXJl
IERyaXZlcnMKCkNPTkZJR19HTlNTPW0KQ09ORklHX0dOU1NfU0VSSUFMPW0KQ09ORklHX0dOU1Nf
TVRLX1NFUklBTD1tCiMgQ09ORklHX0dOU1NfU0lSRl9TRVJJQUwgaXMgbm90IHNldAojIENPTkZJ
R19HTlNTX1VCWF9TRVJJQUwgaXMgbm90IHNldApDT05GSUdfTVREPXkKIyBDT05GSUdfTVREX1RF
U1RTIGlzIG5vdCBzZXQKCiMKIyBQYXJ0aXRpb24gcGFyc2VycwojCiMgQ09ORklHX01URF9BUjdf
UEFSVFMgaXMgbm90IHNldAojIENPTkZJR19NVERfQ01ETElORV9QQVJUUyBpcyBub3Qgc2V0CkNP
TkZJR19NVERfT0ZfUEFSVFM9eQpDT05GSUdfTVREX09GX1BBUlRTX0JDTTQ5MDg9eQojIENPTkZJ
R19NVERfT0ZfUEFSVFNfTElOS1NZU19OUyBpcyBub3Qgc2V0CiMgQ09ORklHX01URF9BRlNfUEFS
VFMgaXMgbm90IHNldAojIENPTkZJR19NVERfUEFSU0VSX1RSWCBpcyBub3Qgc2V0CiMgQ09ORklH
X01URF9SRURCT09UX1BBUlRTIGlzIG5vdCBzZXQKIyBDT05GSUdfTVREX1FDT01TTUVNX1BBUlRT
IGlzIG5vdCBzZXQKIyBlbmQgb2YgUGFydGl0aW9uIHBhcnNlcnMKCiMKIyBVc2VyIE1vZHVsZXMg
QW5kIFRyYW5zbGF0aW9uIExheWVycwojCkNPTkZJR19NVERfQkxLREVWUz15CkNPTkZJR19NVERf
QkxPQ0s9eQoKIwojIE5vdGUgdGhhdCBpbiBzb21lIGNhc2VzIFVCSSBibG9jayBpcyBwcmVmZXJy
ZWQuIFNlZSBNVERfVUJJX0JMT0NLLgojCiMgQ09ORklHX0ZUTCBpcyBub3Qgc2V0CiMgQ09ORklH
X05GVEwgaXMgbm90IHNldAojIENPTkZJR19JTkZUTCBpcyBub3Qgc2V0CiMgQ09ORklHX1JGRF9G
VEwgaXMgbm90IHNldAojIENPTkZJR19TU0ZEQyBpcyBub3Qgc2V0CiMgQ09ORklHX1NNX0ZUTCBp
cyBub3Qgc2V0CiMgQ09ORklHX01URF9PT1BTIGlzIG5vdCBzZXQKIyBDT05GSUdfTVREX1NXQVAg
aXMgbm90IHNldAojIENPTkZJR19NVERfUEFSVElUSU9ORURfTUFTVEVSIGlzIG5vdCBzZXQKCiMK
IyBSQU0vUk9NL0ZsYXNoIGNoaXAgZHJpdmVycwojCkNPTkZJR19NVERfQ0ZJPXkKIyBDT05GSUdf
TVREX0pFREVDUFJPQkUgaXMgbm90IHNldApDT05GSUdfTVREX0dFTl9QUk9CRT15CkNPTkZJR19N
VERfQ0ZJX0FEVl9PUFRJT05TPXkKQ09ORklHX01URF9DRklfTk9TV0FQPXkKIyBDT05GSUdfTVRE
X0NGSV9CRV9CWVRFX1NXQVAgaXMgbm90IHNldAojIENPTkZJR19NVERfQ0ZJX0xFX0JZVEVfU1dB
UCBpcyBub3Qgc2V0CiMgQ09ORklHX01URF9DRklfR0VPTUVUUlkgaXMgbm90IHNldApDT05GSUdf
TVREX01BUF9CQU5LX1dJRFRIXzE9eQpDT05GSUdfTVREX01BUF9CQU5LX1dJRFRIXzI9eQpDT05G
SUdfTVREX01BUF9CQU5LX1dJRFRIXzQ9eQpDT05GSUdfTVREX0NGSV9JMT15CkNPTkZJR19NVERf
Q0ZJX0kyPXkKIyBDT05GSUdfTVREX09UUCBpcyBub3Qgc2V0CkNPTkZJR19NVERfQ0ZJX0lOVEVM
RVhUPXkKQ09ORklHX01URF9DRklfQU1EU1REPXkKQ09ORklHX01URF9DRklfU1RBQT15CkNPTkZJ
R19NVERfQ0ZJX1VUSUw9eQojIENPTkZJR19NVERfUkFNIGlzIG5vdCBzZXQKIyBDT05GSUdfTVRE
X1JPTSBpcyBub3Qgc2V0CiMgQ09ORklHX01URF9BQlNFTlQgaXMgbm90IHNldAojIGVuZCBvZiBS
QU0vUk9NL0ZsYXNoIGNoaXAgZHJpdmVycwoKIwojIE1hcHBpbmcgZHJpdmVycyBmb3IgY2hpcCBh
Y2Nlc3MKIwojIENPTkZJR19NVERfQ09NUExFWF9NQVBQSU5HUyBpcyBub3Qgc2V0CkNPTkZJR19N
VERfUEhZU01BUD15CiMgQ09ORklHX01URF9QSFlTTUFQX0NPTVBBVCBpcyBub3Qgc2V0CkNPTkZJ
R19NVERfUEhZU01BUF9PRj15CiMgQ09ORklHX01URF9QSFlTTUFQX1ZFUlNBVElMRSBpcyBub3Qg
c2V0CiMgQ09ORklHX01URF9QSFlTTUFQX0dFTUlOSSBpcyBub3Qgc2V0CiMgQ09ORklHX01URF9J
TlRFTF9WUl9OT1IgaXMgbm90IHNldAojIENPTkZJR19NVERfUExBVFJBTSBpcyBub3Qgc2V0CiMg
ZW5kIG9mIE1hcHBpbmcgZHJpdmVycyBmb3IgY2hpcCBhY2Nlc3MKCiMKIyBTZWxmLWNvbnRhaW5l
ZCBNVEQgZGV2aWNlIGRyaXZlcnMKIwojIENPTkZJR19NVERfUE1DNTUxIGlzIG5vdCBzZXQKQ09O
RklHX01URF9EQVRBRkxBU0g9eQojIENPTkZJR19NVERfREFUQUZMQVNIX1dSSVRFX1ZFUklGWSBp
cyBub3Qgc2V0CiMgQ09ORklHX01URF9EQVRBRkxBU0hfT1RQIGlzIG5vdCBzZXQKIyBDT05GSUdf
TVREX01DSFAyM0syNTYgaXMgbm90IHNldAojIENPTkZJR19NVERfTUNIUDQ4TDY0MCBpcyBub3Qg
c2V0CkNPTkZJR19NVERfU1NUMjVMPXkKIyBDT05GSUdfTVREX1NMUkFNIGlzIG5vdCBzZXQKIyBD
T05GSUdfTVREX1BIUkFNIGlzIG5vdCBzZXQKIyBDT05GSUdfTVREX01URFJBTSBpcyBub3Qgc2V0
CiMgQ09ORklHX01URF9CTE9DSzJNVEQgaXMgbm90IHNldAoKIwojIERpc2stT24tQ2hpcCBEZXZp
Y2UgRHJpdmVycwojCiMgQ09ORklHX01URF9ET0NHMyBpcyBub3Qgc2V0CiMgZW5kIG9mIFNlbGYt
Y29udGFpbmVkIE1URCBkZXZpY2UgZHJpdmVycwoKIwojIE5BTkQKIwpDT05GSUdfTVREX05BTkRf
Q09SRT15CiMgQ09ORklHX01URF9PTkVOQU5EIGlzIG5vdCBzZXQKQ09ORklHX01URF9SQVdfTkFO
RD15CgojCiMgUmF3L3BhcmFsbGVsIE5BTkQgZmxhc2ggY29udHJvbGxlcnMKIwpDT05GSUdfTVRE
X05BTkRfREVOQUxJPXkKIyBDT05GSUdfTVREX05BTkRfREVOQUxJX1BDSSBpcyBub3Qgc2V0CkNP
TkZJR19NVERfTkFORF9ERU5BTElfRFQ9eQojIENPTkZJR19NVERfTkFORF9DQUZFIGlzIG5vdCBz
ZXQKQ09ORklHX01URF9OQU5EX01BUlZFTEw9eQojIENPTkZJR19NVERfTkFORF9CUkNNTkFORCBp
cyBub3Qgc2V0CkNPTkZJR19NVERfTkFORF9GU0xfSUZDPXkKIyBDT05GSUdfTVREX05BTkRfTVhD
IGlzIG5vdCBzZXQKIyBDT05GSUdfTVREX05BTkRfU1VOWEkgaXMgbm90IHNldAojIENPTkZJR19N
VERfTkFORF9ISVNJNTA0IGlzIG5vdCBzZXQKQ09ORklHX01URF9OQU5EX1FDT009eQojIENPTkZJ
R19NVERfTkFORF9NVEsgaXMgbm90IHNldAojIENPTkZJR19NVERfTkFORF9NWElDIGlzIG5vdCBz
ZXQKIyBDT05GSUdfTVREX05BTkRfVEVHUkEgaXMgbm90IHNldAojIENPTkZJR19NVERfTkFORF9N
RVNPTiBpcyBub3Qgc2V0CiMgQ09ORklHX01URF9OQU5EX0dQSU8gaXMgbm90IHNldAojIENPTkZJ
R19NVERfTkFORF9QTEFURk9STSBpcyBub3Qgc2V0CiMgQ09ORklHX01URF9OQU5EX0NBREVOQ0Ug
aXMgbm90IHNldAojIENPTkZJR19NVERfTkFORF9BUkFTQU4gaXMgbm90IHNldAojIENPTkZJR19N
VERfTkFORF9JTlRFTF9MR00gaXMgbm90IHNldAojIENPTkZJR19NVERfTkFORF9ST0NLQ0hJUCBp
cyBub3Qgc2V0CgojCiMgTWlzYwojCiMgQ09ORklHX01URF9OQU5EX05BTkRTSU0gaXMgbm90IHNl
dAojIENPTkZJR19NVERfTkFORF9SSUNPSCBpcyBub3Qgc2V0CiMgQ09ORklHX01URF9OQU5EX0RJ
U0tPTkNISVAgaXMgbm90IHNldAojIENPTkZJR19NVERfU1BJX05BTkQgaXMgbm90IHNldAoKIwoj
IEVDQyBlbmdpbmUgc3VwcG9ydAojCkNPTkZJR19NVERfTkFORF9FQ0M9eQpDT05GSUdfTVREX05B
TkRfRUNDX1NXX0hBTU1JTkc9eQojIENPTkZJR19NVERfTkFORF9FQ0NfU1dfSEFNTUlOR19TTUMg
aXMgbm90IHNldAojIENPTkZJR19NVERfTkFORF9FQ0NfU1dfQkNIIGlzIG5vdCBzZXQKIyBlbmQg
b2YgRUNDIGVuZ2luZSBzdXBwb3J0CiMgZW5kIG9mIE5BTkQKCiMKIyBMUEREUiAmIExQRERSMiBQ
Q00gbWVtb3J5IGRyaXZlcnMKIwojIENPTkZJR19NVERfTFBERFIgaXMgbm90IHNldAojIGVuZCBv
ZiBMUEREUiAmIExQRERSMiBQQ00gbWVtb3J5IGRyaXZlcnMKCkNPTkZJR19NVERfU1BJX05PUj15
CkNPTkZJR19NVERfU1BJX05PUl9VU0VfNEtfU0VDVE9SUz15CiMgQ09ORklHX01URF9TUElfTk9S
X1NXUF9ESVNBQkxFIGlzIG5vdCBzZXQKQ09ORklHX01URF9TUElfTk9SX1NXUF9ESVNBQkxFX09O
X1ZPTEFUSUxFPXkKIyBDT05GSUdfTVREX1NQSV9OT1JfU1dQX0tFRVAgaXMgbm90IHNldAojIENP
TkZJR19TUElfSElTSV9TRkMgaXMgbm90IHNldAojIENPTkZJR19NVERfVUJJIGlzIG5vdCBzZXQK
IyBDT05GSUdfTVREX0hZUEVSQlVTIGlzIG5vdCBzZXQKQ09ORklHX0RUQz15CkNPTkZJR19PRj15
CiMgQ09ORklHX09GX1VOSVRURVNUIGlzIG5vdCBzZXQKQ09ORklHX09GX0ZMQVRUUkVFPXkKQ09O
RklHX09GX0VBUkxZX0ZMQVRUUkVFPXkKQ09ORklHX09GX0tPQko9eQpDT05GSUdfT0ZfRFlOQU1J
Qz15CkNPTkZJR19PRl9BRERSRVNTPXkKQ09ORklHX09GX0lSUT15CkNPTkZJR19PRl9SRVNFUlZF
RF9NRU09eQpDT05GSUdfT0ZfUkVTT0xWRT15CkNPTkZJR19PRl9PVkVSTEFZPXkKQ09ORklHX09G
X05VTUE9eQojIENPTkZJR19PRl9DT05GSUdGUyBpcyBub3Qgc2V0CiMgQ09ORklHX1BBUlBPUlQg
aXMgbm90IHNldApDT05GSUdfUE5QPXkKQ09ORklHX1BOUF9ERUJVR19NRVNTQUdFUz15CgojCiMg
UHJvdG9jb2xzCiMKQ09ORklHX1BOUEFDUEk9eQpDT05GSUdfQkxLX0RFVj15CiMgQ09ORklHX0JM
S19ERVZfTlVMTF9CTEsgaXMgbm90IHNldAojIENPTkZJR19CTEtfREVWX1BDSUVTU0RfTVRJUDMy
WFggaXMgbm90IHNldApDT05GSUdfQkxLX0RFVl9MT09QPXkKQ09ORklHX0JMS19ERVZfTE9PUF9N
SU5fQ09VTlQ9OApDT05GSUdfQkxLX0RFVl9DUllQVE9MT09QPW0KIyBDT05GSUdfQkxLX0RFVl9E
UkJEIGlzIG5vdCBzZXQKQ09ORklHX0JMS19ERVZfTkJEPW0KQ09ORklHX0JMS19ERVZfUkFNPXkK
Q09ORklHX0JMS19ERVZfUkFNX0NPVU5UPTE2CkNPTkZJR19CTEtfREVWX1JBTV9TSVpFPTQwOTYK
IyBDT05GSUdfQ0RST01fUEtUQ0RWRCBpcyBub3Qgc2V0CiMgQ09ORklHX0FUQV9PVkVSX0VUSCBp
cyBub3Qgc2V0CkNPTkZJR19YRU5fQkxLREVWX0ZST05URU5EPXkKQ09ORklHX1hFTl9CTEtERVZf
QkFDS0VORD1tCkNPTkZJR19WSVJUSU9fQkxLPXkKIyBDT05GSUdfQkxLX0RFVl9SQkQgaXMgbm90
IHNldAojIENPTkZJR19CTEtfREVWX1JTWFggaXMgbm90IHNldAoKIwojIE5WTUUgU3VwcG9ydAoj
CkNPTkZJR19OVk1FX0NPUkU9eQpDT05GSUdfQkxLX0RFVl9OVk1FPXkKIyBDT05GSUdfTlZNRV9N
VUxUSVBBVEggaXMgbm90IHNldAojIENPTkZJR19OVk1FX0hXTU9OIGlzIG5vdCBzZXQKIyBDT05G
SUdfTlZNRV9GQyBpcyBub3Qgc2V0CiMgQ09ORklHX05WTUVfVENQIGlzIG5vdCBzZXQKIyBDT05G
SUdfTlZNRV9UQVJHRVQgaXMgbm90IHNldAojIGVuZCBvZiBOVk1FIFN1cHBvcnQKCiMKIyBNaXNj
IGRldmljZXMKIwojIENPTkZJR19BRDUyNVhfRFBPVCBpcyBub3Qgc2V0CiMgQ09ORklHX0RVTU1Z
X0lSUSBpcyBub3Qgc2V0CiMgQ09ORklHX1BIQU5UT00gaXMgbm90IHNldAojIENPTkZJR19USUZN
X0NPUkUgaXMgbm90IHNldAojIENPTkZJR19JQ1M5MzJTNDAxIGlzIG5vdCBzZXQKIyBDT05GSUdf
RU5DTE9TVVJFX1NFUlZJQ0VTIGlzIG5vdCBzZXQKIyBDT05GSUdfSEk2NDIxVjYwMF9JUlEgaXMg
bm90IHNldAojIENPTkZJR19IUF9JTE8gaXMgbm90IHNldAojIENPTkZJR19RQ09NX0NPSU5DRUxM
IGlzIG5vdCBzZXQKIyBDT05GSUdfUUNPTV9GQVNUUlBDIGlzIG5vdCBzZXQKIyBDT05GSUdfQVBE
Uzk4MDJBTFMgaXMgbm90IHNldAojIENPTkZJR19JU0wyOTAwMyBpcyBub3Qgc2V0CiMgQ09ORklH
X0lTTDI5MDIwIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19UU0wyNTUwIGlzIG5vdCBzZXQK
IyBDT05GSUdfU0VOU09SU19CSDE3NzAgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FQRFM5
OTBYIGlzIG5vdCBzZXQKIyBDT05GSUdfSE1DNjM1MiBpcyBub3Qgc2V0CiMgQ09ORklHX0RTMTY4
MiBpcyBub3Qgc2V0CiMgQ09ORklHX0xBVFRJQ0VfRUNQM19DT05GSUcgaXMgbm90IHNldApDT05G
SUdfU1JBTT15CiMgQ09ORklHX0RXX1hEQVRBX1BDSUUgaXMgbm90IHNldApDT05GSUdfUENJX0VO
RFBPSU5UX1RFU1Q9bQojIENPTkZJR19YSUxJTlhfU0RGRUMgaXMgbm90IHNldAojIENPTkZJR19I
SVNJX0hJS0VZX1VTQiBpcyBub3Qgc2V0CiMgQ09ORklHX0MyUE9SVCBpcyBub3Qgc2V0CgojCiMg
RUVQUk9NIHN1cHBvcnQKIwpDT05GSUdfRUVQUk9NX0FUMjQ9bQpDT05GSUdfRUVQUk9NX0FUMjU9
bQojIENPTkZJR19FRVBST01fTEVHQUNZIGlzIG5vdCBzZXQKIyBDT05GSUdfRUVQUk9NX01BWDY4
NzUgaXMgbm90IHNldAojIENPTkZJR19FRVBST01fOTNDWDYgaXMgbm90IHNldAojIENPTkZJR19F
RVBST01fOTNYWDQ2IGlzIG5vdCBzZXQKIyBDT05GSUdfRUVQUk9NX0lEVF84OUhQRVNYIGlzIG5v
dCBzZXQKIyBDT05GSUdfRUVQUk9NX0VFMTAwNCBpcyBub3Qgc2V0CiMgZW5kIG9mIEVFUFJPTSBz
dXBwb3J0CgojIENPTkZJR19DQjcxMF9DT1JFIGlzIG5vdCBzZXQKCiMKIyBUZXhhcyBJbnN0cnVt
ZW50cyBzaGFyZWQgdHJhbnNwb3J0IGxpbmUgZGlzY2lwbGluZQojCiMgQ09ORklHX1RJX1NUIGlz
IG5vdCBzZXQKIyBlbmQgb2YgVGV4YXMgSW5zdHJ1bWVudHMgc2hhcmVkIHRyYW5zcG9ydCBsaW5l
IGRpc2NpcGxpbmUKCiMgQ09ORklHX1NFTlNPUlNfTElTM19JMkMgaXMgbm90IHNldAojIENPTkZJ
R19BTFRFUkFfU1RBUEwgaXMgbm90IHNldAojIENPTkZJR19HRU5XUUUgaXMgbm90IHNldAojIENP
TkZJR19FQ0hPIGlzIG5vdCBzZXQKIyBDT05GSUdfQkNNX1ZLIGlzIG5vdCBzZXQKIyBDT05GSUdf
TUlTQ19BTENPUl9QQ0kgaXMgbm90IHNldAojIENPTkZJR19NSVNDX1JUU1hfUENJIGlzIG5vdCBz
ZXQKIyBDT05GSUdfTUlTQ19SVFNYX1VTQiBpcyBub3Qgc2V0CiMgQ09ORklHX0hBQkFOQV9BSSBp
cyBub3Qgc2V0CkNPTkZJR19VQUNDRT1tCiMgQ09ORklHX1BWUEFOSUMgaXMgbm90IHNldAojIGVu
ZCBvZiBNaXNjIGRldmljZXMKCiMKIyBTQ1NJIGRldmljZSBzdXBwb3J0CiMKQ09ORklHX1NDU0lf
TU9EPXkKQ09ORklHX1JBSURfQVRUUlM9bQpDT05GSUdfU0NTSV9DT01NT049eQpDT05GSUdfU0NT
ST15CkNPTkZJR19TQ1NJX0RNQT15CiMgQ09ORklHX1NDU0lfUFJPQ19GUyBpcyBub3Qgc2V0Cgoj
CiMgU0NTSSBzdXBwb3J0IHR5cGUgKGRpc2ssIHRhcGUsIENELVJPTSkKIwpDT05GSUdfQkxLX0RF
Vl9TRD15CiMgQ09ORklHX0NIUl9ERVZfU1QgaXMgbm90IHNldAojIENPTkZJR19CTEtfREVWX1NS
IGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hSX0RFVl9TRyBpcyBub3Qgc2V0CkNPTkZJR19CTEtfREVW
X0JTRz15CiMgQ09ORklHX0NIUl9ERVZfU0NIIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9DT05T
VEFOVFMgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX0xPR0dJTkcgaXMgbm90IHNldAojIENPTkZJ
R19TQ1NJX1NDQU5fQVNZTkMgaXMgbm90IHNldAoKIwojIFNDU0kgVHJhbnNwb3J0cwojCiMgQ09O
RklHX1NDU0lfU1BJX0FUVFJTIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9GQ19BVFRSUyBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NDU0lfSVNDU0lfQVRUUlMgaXMgbm90IHNldApDT05GSUdfU0NTSV9T
QVNfQVRUUlM9eQpDT05GSUdfU0NTSV9TQVNfTElCU0FTPXkKQ09ORklHX1NDU0lfU0FTX0FUQT15
CkNPTkZJR19TQ1NJX1NBU19IT1NUX1NNUD15CiMgQ09ORklHX1NDU0lfU1JQX0FUVFJTIGlzIG5v
dCBzZXQKIyBlbmQgb2YgU0NTSSBUcmFuc3BvcnRzCgpDT05GSUdfU0NTSV9MT1dMRVZFTD15CiMg
Q09ORklHX0lTQ1NJX1RDUCBpcyBub3Qgc2V0CiMgQ09ORklHX0lTQ1NJX0JPT1RfU1lTRlMgaXMg
bm90IHNldAojIENPTkZJR19TQ1NJX0NYR0IzX0lTQ1NJIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NT
SV9DWEdCNF9JU0NTSSBpcyBub3Qgc2V0CiMgQ09ORklHX1NDU0lfQk5YMl9JU0NTSSBpcyBub3Qg
c2V0CiMgQ09ORklHX0JFMklTQ1NJIGlzIG5vdCBzZXQKIyBDT05GSUdfQkxLX0RFVl8zV19YWFhY
X1JBSUQgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX0hQU0EgaXMgbm90IHNldAojIENPTkZJR19T
Q1NJXzNXXzlYWFggaXMgbm90IHNldAojIENPTkZJR19TQ1NJXzNXX1NBUyBpcyBub3Qgc2V0CiMg
Q09ORklHX1NDU0lfQUNBUkQgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX0FBQ1JBSUQgaXMgbm90
IHNldAojIENPTkZJR19TQ1NJX0FJQzdYWFggaXMgbm90IHNldAojIENPTkZJR19TQ1NJX0FJQzc5
WFggaXMgbm90IHNldAojIENPTkZJR19TQ1NJX0FJQzk0WFggaXMgbm90IHNldApDT05GSUdfU0NT
SV9ISVNJX1NBUz15CkNPTkZJR19TQ1NJX0hJU0lfU0FTX1BDST15CiMgQ09ORklHX1NDU0lfSElT
SV9TQVNfREVCVUdGU19ERUZBVUxUX0VOQUJMRSBpcyBub3Qgc2V0CiMgQ09ORklHX1NDU0lfTVZT
QVMgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX01WVU1JIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NT
SV9EUFRfSTJPIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9BRFZBTlNZUyBpcyBub3Qgc2V0CiMg
Q09ORklHX1NDU0lfQVJDTVNSIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9FU0FTMlIgaXMgbm90
IHNldAojIENPTkZJR19NRUdBUkFJRF9ORVdHRU4gaXMgbm90IHNldAojIENPTkZJR19NRUdBUkFJ
RF9MRUdBQ1kgaXMgbm90IHNldApDT05GSUdfTUVHQVJBSURfU0FTPXkKQ09ORklHX1NDU0lfTVBU
M1NBUz1tCkNPTkZJR19TQ1NJX01QVDJTQVNfTUFYX1NHRT0xMjgKQ09ORklHX1NDU0lfTVBUM1NB
U19NQVhfU0dFPTEyOAojIENPTkZJR19TQ1NJX01QVDJTQVMgaXMgbm90IHNldAojIENPTkZJR19T
Q1NJX01QSTNNUiBpcyBub3Qgc2V0CiMgQ09ORklHX1NDU0lfU01BUlRQUUkgaXMgbm90IHNldApD
T05GSUdfU0NTSV9VRlNIQ0Q9eQojIENPTkZJR19TQ1NJX1VGU0hDRF9QQ0kgaXMgbm90IHNldApD
T05GSUdfU0NTSV9VRlNIQ0RfUExBVEZPUk09eQojIENPTkZJR19TQ1NJX1VGU19DRE5TX1BMQVRG
T1JNIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9VRlNfRFdDX1RDX1BMQVRGT1JNIGlzIG5vdCBz
ZXQKQ09ORklHX1NDU0lfVUZTX1FDT009bQojIENPTkZJR19TQ1NJX1VGU19NRURJQVRFSyBpcyBu
b3Qgc2V0CkNPTkZJR19TQ1NJX1VGU19ISVNJPXkKIyBDT05GSUdfU0NTSV9VRlNfVElfSjcyMUUg
aXMgbm90IHNldAojIENPTkZJR19TQ1NJX1VGU19CU0cgaXMgbm90IHNldApDT05GSUdfU0NTSV9V
RlNfRVhZTk9TPXkKIyBDT05GSUdfU0NTSV9VRlNfSFBCIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NT
SV9IUFRJT1AgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX01ZUkIgaXMgbm90IHNldAojIENPTkZJ
R19TQ1NJX01ZUlMgaXMgbm90IHNldApDT05GSUdfWEVOX1NDU0lfRlJPTlRFTkQ9bQojIENPTkZJ
R19TQ1NJX1NOSUMgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX0RNWDMxOTFEIGlzIG5vdCBzZXQK
IyBDT05GSUdfU0NTSV9GRE9NQUlOX1BDSSBpcyBub3Qgc2V0CiMgQ09ORklHX1NDU0lfSVBTIGlz
IG5vdCBzZXQKIyBDT05GSUdfU0NTSV9JTklUSU8gaXMgbm90IHNldAojIENPTkZJR19TQ1NJX0lO
SUExMDAgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX1NURVggaXMgbm90IHNldAojIENPTkZJR19T
Q1NJX1NZTTUzQzhYWF8yIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9JUFIgaXMgbm90IHNldAoj
IENPTkZJR19TQ1NJX1FMT0dJQ18xMjgwIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9RTEFfSVND
U0kgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX0RDMzk1eCBpcyBub3Qgc2V0CiMgQ09ORklHX1ND
U0lfQU01M0M5NzQgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX1dENzE5WCBpcyBub3Qgc2V0CkNP
TkZJR19TQ1NJX0RFQlVHPW0KIyBDT05GSUdfU0NTSV9QTUNSQUlEIGlzIG5vdCBzZXQKIyBDT05G
SUdfU0NTSV9QTTgwMDEgaXMgbm90IHNldApDT05GSUdfU0NTSV9WSVJUSU89eQojIENPTkZJR19T
Q1NJX0RIIGlzIG5vdCBzZXQKIyBlbmQgb2YgU0NTSSBkZXZpY2Ugc3VwcG9ydAoKQ09ORklHX0hB
VkVfUEFUQV9QTEFURk9STT15CkNPTkZJR19BVEE9eQpDT05GSUdfU0FUQV9IT1NUPXkKQ09ORklH
X1BBVEFfVElNSU5HUz15CkNPTkZJR19BVEFfVkVSQk9TRV9FUlJPUj15CkNPTkZJR19BVEFfRk9S
Q0U9eQpDT05GSUdfQVRBX0FDUEk9eQojIENPTkZJR19TQVRBX1pQT0REIGlzIG5vdCBzZXQKQ09O
RklHX1NBVEFfUE1QPXkKCiMKIyBDb250cm9sbGVycyB3aXRoIG5vbi1TRkYgbmF0aXZlIGludGVy
ZmFjZQojCkNPTkZJR19TQVRBX0FIQ0k9eQpDT05GSUdfU0FUQV9NT0JJTEVfTFBNX1BPTElDWT0w
CkNPTkZJR19TQVRBX0FIQ0lfUExBVEZPUk09eQojIENPTkZJR19BSENJX0JSQ00gaXMgbm90IHNl
dAojIENPTkZJR19BSENJX0lNWCBpcyBub3Qgc2V0CkNPTkZJR19BSENJX0NFVkE9eQojIENPTkZJ
R19BSENJX01USyBpcyBub3Qgc2V0CkNPTkZJR19BSENJX01WRUJVPXkKIyBDT05GSUdfQUhDSV9T
VU5YSSBpcyBub3Qgc2V0CiMgQ09ORklHX0FIQ0lfVEVHUkEgaXMgbm90IHNldApDT05GSUdfQUhD
SV9YR0VORT15CkNPTkZJR19BSENJX1FPUklRPXkKIyBDT05GSUdfU0FUQV9BSENJX1NFQVRUTEUg
aXMgbm90IHNldAojIENPTkZJR19TQVRBX0lOSUMxNjJYIGlzIG5vdCBzZXQKIyBDT05GSUdfU0FU
QV9BQ0FSRF9BSENJIGlzIG5vdCBzZXQKQ09ORklHX1NBVEFfU0lMMjQ9eQpDT05GSUdfQVRBX1NG
Rj15CgojCiMgU0ZGIGNvbnRyb2xsZXJzIHdpdGggY3VzdG9tIERNQSBpbnRlcmZhY2UKIwojIENP
TkZJR19QRENfQURNQSBpcyBub3Qgc2V0CiMgQ09ORklHX1NBVEFfUVNUT1IgaXMgbm90IHNldAoj
IENPTkZJR19TQVRBX1NYNCBpcyBub3Qgc2V0CkNPTkZJR19BVEFfQk1ETUE9eQoKIwojIFNBVEEg
U0ZGIGNvbnRyb2xsZXJzIHdpdGggQk1ETUEKIwojIENPTkZJR19BVEFfUElJWCBpcyBub3Qgc2V0
CiMgQ09ORklHX1NBVEFfRFdDIGlzIG5vdCBzZXQKIyBDT05GSUdfU0FUQV9NViBpcyBub3Qgc2V0
CiMgQ09ORklHX1NBVEFfTlYgaXMgbm90IHNldAojIENPTkZJR19TQVRBX1BST01JU0UgaXMgbm90
IHNldApDT05GSUdfU0FUQV9SQ0FSPXkKIyBDT05GSUdfU0FUQV9TSUwgaXMgbm90IHNldAojIENP
TkZJR19TQVRBX1NJUyBpcyBub3Qgc2V0CiMgQ09ORklHX1NBVEFfU1ZXIGlzIG5vdCBzZXQKIyBD
T05GSUdfU0FUQV9VTEkgaXMgbm90IHNldAojIENPTkZJR19TQVRBX1ZJQSBpcyBub3Qgc2V0CiMg
Q09ORklHX1NBVEFfVklURVNTRSBpcyBub3Qgc2V0CgojCiMgUEFUQSBTRkYgY29udHJvbGxlcnMg
d2l0aCBCTURNQQojCiMgQ09ORklHX1BBVEFfQUxJIGlzIG5vdCBzZXQKIyBDT05GSUdfUEFUQV9B
TUQgaXMgbm90IHNldAojIENPTkZJR19QQVRBX0FSVE9QIGlzIG5vdCBzZXQKIyBDT05GSUdfUEFU
QV9BVElJWFAgaXMgbm90IHNldAojIENPTkZJR19QQVRBX0FUUDg2N1ggaXMgbm90IHNldAojIENP
TkZJR19QQVRBX0NNRDY0WCBpcyBub3Qgc2V0CiMgQ09ORklHX1BBVEFfQ1lQUkVTUyBpcyBub3Qg
c2V0CiMgQ09ORklHX1BBVEFfRUZBUiBpcyBub3Qgc2V0CiMgQ09ORklHX1BBVEFfSFBUMzY2IGlz
IG5vdCBzZXQKIyBDT05GSUdfUEFUQV9IUFQzN1ggaXMgbm90IHNldAojIENPTkZJR19QQVRBX0hQ
VDNYMk4gaXMgbm90IHNldAojIENPTkZJR19QQVRBX0hQVDNYMyBpcyBub3Qgc2V0CiMgQ09ORklH
X1BBVEFfSU1YIGlzIG5vdCBzZXQKIyBDT05GSUdfUEFUQV9JVDgyMTMgaXMgbm90IHNldAojIENP
TkZJR19QQVRBX0lUODIxWCBpcyBub3Qgc2V0CiMgQ09ORklHX1BBVEFfSk1JQ1JPTiBpcyBub3Qg
c2V0CiMgQ09ORklHX1BBVEFfTUFSVkVMTCBpcyBub3Qgc2V0CiMgQ09ORklHX1BBVEFfTkVUQ0VM
TCBpcyBub3Qgc2V0CiMgQ09ORklHX1BBVEFfTklOSkEzMiBpcyBub3Qgc2V0CiMgQ09ORklHX1BB
VEFfTlM4NzQxNSBpcyBub3Qgc2V0CiMgQ09ORklHX1BBVEFfT0xEUElJWCBpcyBub3Qgc2V0CiMg
Q09ORklHX1BBVEFfT1BUSURNQSBpcyBub3Qgc2V0CiMgQ09ORklHX1BBVEFfUERDMjAyN1ggaXMg
bm90IHNldAojIENPTkZJR19QQVRBX1BEQ19PTEQgaXMgbm90IHNldAojIENPTkZJR19QQVRBX1JB
RElTWVMgaXMgbm90IHNldAojIENPTkZJR19QQVRBX1JEQyBpcyBub3Qgc2V0CiMgQ09ORklHX1BB
VEFfU0NIIGlzIG5vdCBzZXQKIyBDT05GSUdfUEFUQV9TRVJWRVJXT1JLUyBpcyBub3Qgc2V0CiMg
Q09ORklHX1BBVEFfU0lMNjgwIGlzIG5vdCBzZXQKIyBDT05GSUdfUEFUQV9TSVMgaXMgbm90IHNl
dAojIENPTkZJR19QQVRBX1RPU0hJQkEgaXMgbm90IHNldAojIENPTkZJR19QQVRBX1RSSUZMRVgg
aXMgbm90IHNldAojIENPTkZJR19QQVRBX1ZJQSBpcyBub3Qgc2V0CiMgQ09ORklHX1BBVEFfV0lO
Qk9ORCBpcyBub3Qgc2V0CgojCiMgUElPLW9ubHkgU0ZGIGNvbnRyb2xsZXJzCiMKIyBDT05GSUdf
UEFUQV9DTUQ2NDBfUENJIGlzIG5vdCBzZXQKIyBDT05GSUdfUEFUQV9NUElJWCBpcyBub3Qgc2V0
CiMgQ09ORklHX1BBVEFfTlM4NzQxMCBpcyBub3Qgc2V0CiMgQ09ORklHX1BBVEFfT1BUSSBpcyBu
b3Qgc2V0CkNPTkZJR19QQVRBX1BMQVRGT1JNPXkKQ09ORklHX1BBVEFfT0ZfUExBVEZPUk09eQoj
IENPTkZJR19QQVRBX1JaMTAwMCBpcyBub3Qgc2V0CgojCiMgR2VuZXJpYyBmYWxsYmFjayAvIGxl
Z2FjeSBkcml2ZXJzCiMKIyBDT05GSUdfUEFUQV9BQ1BJIGlzIG5vdCBzZXQKIyBDT05GSUdfQVRB
X0dFTkVSSUMgaXMgbm90IHNldAojIENPTkZJR19QQVRBX0xFR0FDWSBpcyBub3Qgc2V0CkNPTkZJ
R19NRD15CkNPTkZJR19CTEtfREVWX01EPXkKQ09ORklHX01EX0FVVE9ERVRFQ1Q9eQpDT05GSUdf
TURfTElORUFSPXkKQ09ORklHX01EX1JBSUQwPXkKQ09ORklHX01EX1JBSUQxPXkKQ09ORklHX01E
X1JBSUQxMD15CkNPTkZJR19NRF9SQUlENDU2PXkKQ09ORklHX01EX01VTFRJUEFUSD15CkNPTkZJ
R19NRF9GQVVMVFk9eQojIENPTkZJR19CQ0FDSEUgaXMgbm90IHNldApDT05GSUdfQkxLX0RFVl9E
TV9CVUlMVElOPXkKQ09ORklHX0JMS19ERVZfRE09eQojIENPTkZJR19ETV9ERUJVRyBpcyBub3Qg
c2V0CkNPTkZJR19ETV9CVUZJTz15CiMgQ09ORklHX0RNX0RFQlVHX0JMT0NLX01BTkFHRVJfTE9D
S0lORyBpcyBub3Qgc2V0CkNPTkZJR19ETV9CSU9fUFJJU09OPW0KQ09ORklHX0RNX1BFUlNJU1RF
TlRfREFUQT1tCiMgQ09ORklHX0RNX1VOU1RSSVBFRCBpcyBub3Qgc2V0CkNPTkZJR19ETV9DUllQ
VD15CkNPTkZJR19ETV9TTkFQU0hPVD15CkNPTkZJR19ETV9USElOX1BST1ZJU0lPTklORz1tCiMg
Q09ORklHX0RNX0NBQ0hFIGlzIG5vdCBzZXQKIyBDT05GSUdfRE1fV1JJVEVDQUNIRSBpcyBub3Qg
c2V0CiMgQ09ORklHX0RNX0VCUyBpcyBub3Qgc2V0CiMgQ09ORklHX0RNX0VSQSBpcyBub3Qgc2V0
CiMgQ09ORklHX0RNX0NMT05FIGlzIG5vdCBzZXQKQ09ORklHX0RNX01JUlJPUj15CiMgQ09ORklH
X0RNX0xPR19VU0VSU1BBQ0UgaXMgbm90IHNldAojIENPTkZJR19ETV9SQUlEIGlzIG5vdCBzZXQK
Q09ORklHX0RNX1pFUk89eQojIENPTkZJR19ETV9NVUxUSVBBVEggaXMgbm90IHNldAojIENPTkZJ
R19ETV9ERUxBWSBpcyBub3Qgc2V0CiMgQ09ORklHX0RNX0RVU1QgaXMgbm90IHNldAojIENPTkZJ
R19ETV9JTklUIGlzIG5vdCBzZXQKIyBDT05GSUdfRE1fVUVWRU5UIGlzIG5vdCBzZXQKIyBDT05G
SUdfRE1fRkxBS0VZIGlzIG5vdCBzZXQKIyBDT05GSUdfRE1fVkVSSVRZIGlzIG5vdCBzZXQKIyBD
T05GSUdfRE1fU1dJVENIIGlzIG5vdCBzZXQKIyBDT05GSUdfRE1fTE9HX1dSSVRFUyBpcyBub3Qg
c2V0CiMgQ09ORklHX0RNX0lOVEVHUklUWSBpcyBub3Qgc2V0CiMgQ09ORklHX1RBUkdFVF9DT1JF
IGlzIG5vdCBzZXQKIyBDT05GSUdfRlVTSU9OIGlzIG5vdCBzZXQKCiMKIyBJRUVFIDEzOTQgKEZp
cmVXaXJlKSBzdXBwb3J0CiMKIyBDT05GSUdfRklSRVdJUkUgaXMgbm90IHNldAojIENPTkZJR19G
SVJFV0lSRV9OT1NZIGlzIG5vdCBzZXQKIyBlbmQgb2YgSUVFRSAxMzk0IChGaXJlV2lyZSkgc3Vw
cG9ydAoKQ09ORklHX05FVERFVklDRVM9eQpDT05GSUdfTUlJPXkKQ09ORklHX05FVF9DT1JFPXkK
Q09ORklHX0JPTkRJTkc9bQpDT05GSUdfRFVNTVk9bQojIENPTkZJR19XSVJFR1VBUkQgaXMgbm90
IHNldAojIENPTkZJR19FUVVBTElaRVIgaXMgbm90IHNldAojIENPTkZJR19ORVRfRkMgaXMgbm90
IHNldAojIENPTkZJR19JRkIgaXMgbm90IHNldAojIENPTkZJR19ORVRfVEVBTSBpcyBub3Qgc2V0
CkNPTkZJR19NQUNWTEFOPXkKQ09ORklHX01BQ1ZUQVA9bQojIENPTkZJR19JUFZMQU4gaXMgbm90
IHNldApDT05GSUdfVlhMQU49bQojIENPTkZJR19HRU5FVkUgaXMgbm90IHNldAojIENPTkZJR19C
QVJFVURQIGlzIG5vdCBzZXQKIyBDT05GSUdfR1RQIGlzIG5vdCBzZXQKIyBDT05GSUdfTUFDU0VD
IGlzIG5vdCBzZXQKQ09ORklHX05FVENPTlNPTEU9eQojIENPTkZJR19ORVRDT05TT0xFX0RZTkFN
SUMgaXMgbm90IHNldApDT05GSUdfTkVUUE9MTD15CkNPTkZJR19ORVRfUE9MTF9DT05UUk9MTEVS
PXkKQ09ORklHX1RVTj1tCkNPTkZJR19UQVA9bQojIENPTkZJR19UVU5fVk5FVF9DUk9TU19MRSBp
cyBub3Qgc2V0CkNPTkZJR19WRVRIPXkKQ09ORklHX1ZJUlRJT19ORVQ9eQojIENPTkZJR19OTE1P
TiBpcyBub3Qgc2V0CiMgQ09ORklHX0FSQ05FVCBpcyBub3Qgc2V0CgojCiMgRGlzdHJpYnV0ZWQg
U3dpdGNoIEFyY2hpdGVjdHVyZSBkcml2ZXJzCiMKIyBDT05GSUdfQjUzIGlzIG5vdCBzZXQKIyBD
T05GSUdfTkVUX0RTQV9CQ01fU0YyIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0RTQV9MT09QIGlz
IG5vdCBzZXQKIyBDT05GSUdfTkVUX0RTQV9ISVJTQ0hNQU5OX0hFTExDUkVFSyBpcyBub3Qgc2V0
CiMgQ09ORklHX05FVF9EU0FfTEFOVElRX0dTV0lQIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0RT
QV9NVDc1MzAgaXMgbm90IHNldAojIENPTkZJR19ORVRfRFNBX01WODhFNjA2MCBpcyBub3Qgc2V0
CiMgQ09ORklHX05FVF9EU0FfTUlDUk9DSElQX0tTWjk0NzcgaXMgbm90IHNldAojIENPTkZJR19O
RVRfRFNBX01JQ1JPQ0hJUF9LU1o4Nzk1IGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0RTQV9NVjg4
RTZYWFggaXMgbm90IHNldApDT05GSUdfTkVUX0RTQV9NU0NDX0ZFTElYPW0KIyBDT05GSUdfTkVU
X0RTQV9NU0NDX1NFVklMTEUgaXMgbm90IHNldAojIENPTkZJR19ORVRfRFNBX0FSOTMzMSBpcyBu
b3Qgc2V0CiMgQ09ORklHX05FVF9EU0FfU0pBMTEwNSBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9E
U0FfWFJTNzAwWF9JMkMgaXMgbm90IHNldAojIENPTkZJR19ORVRfRFNBX1hSUzcwMFhfTURJTyBp
cyBub3Qgc2V0CiMgQ09ORklHX05FVF9EU0FfUUNBOEsgaXMgbm90IHNldAojIENPTkZJR19ORVRf
RFNBX1JFQUxURUtfU01JIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0RTQV9TTVNDX0xBTjkzMDNf
STJDIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0RTQV9TTVNDX0xBTjkzMDNfTURJTyBpcyBub3Qg
c2V0CiMgQ09ORklHX05FVF9EU0FfVklURVNTRV9WU0M3M1hYX1NQSSBpcyBub3Qgc2V0CiMgQ09O
RklHX05FVF9EU0FfVklURVNTRV9WU0M3M1hYX1BMQVRGT1JNIGlzIG5vdCBzZXQKIyBlbmQgb2Yg
RGlzdHJpYnV0ZWQgU3dpdGNoIEFyY2hpdGVjdHVyZSBkcml2ZXJzCgpDT05GSUdfRVRIRVJORVQ9
eQpDT05GSUdfTURJTz1tCkNPTkZJR19ORVRfVkVORE9SXzNDT009eQojIENPTkZJR19WT1JURVgg
aXMgbm90IHNldAojIENPTkZJR19UWVBIT09OIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1Jf
QUNUSU9OUz15CiMgQ09ORklHX09XTF9FTUFDIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1Jf
QURBUFRFQz15CiMgQ09ORklHX0FEQVBURUNfU1RBUkZJUkUgaXMgbm90IHNldApDT05GSUdfTkVU
X1ZFTkRPUl9BR0VSRT15CiMgQ09ORklHX0VUMTMxWCBpcyBub3Qgc2V0CkNPTkZJR19ORVRfVkVO
RE9SX0FMQUNSSVRFQ0g9eQojIENPTkZJR19TTElDT1NTIGlzIG5vdCBzZXQKQ09ORklHX05FVF9W
RU5ET1JfQUxMV0lOTkVSPXkKIyBDT05GSUdfU1VONElfRU1BQyBpcyBub3Qgc2V0CkNPTkZJR19O
RVRfVkVORE9SX0FMVEVPTj15CiMgQ09ORklHX0FDRU5JQyBpcyBub3Qgc2V0CiMgQ09ORklHX0FM
VEVSQV9UU0UgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9BTUFaT049eQpDT05GSUdfRU5B
X0VUSEVSTkVUPXkKQ09ORklHX05FVF9WRU5ET1JfQU1EPXkKIyBDT05GSUdfQU1EODExMV9FVEgg
aXMgbm90IHNldAojIENPTkZJR19QQ05FVDMyIGlzIG5vdCBzZXQKQ09ORklHX0FNRF9YR0JFPXkK
Q09ORklHX05FVF9YR0VORT15CiMgQ09ORklHX05FVF9YR0VORV9WMiBpcyBub3Qgc2V0CkNPTkZJ
R19ORVRfVkVORE9SX0FRVUFOVElBPXkKIyBDT05GSUdfQVFUSU9OIGlzIG5vdCBzZXQKQ09ORklH
X05FVF9WRU5ET1JfQVJDPXkKIyBDT05GSUdfRU1BQ19ST0NLQ0hJUCBpcyBub3Qgc2V0CkNPTkZJ
R19ORVRfVkVORE9SX0FUSEVST1M9eQojIENPTkZJR19BVEwyIGlzIG5vdCBzZXQKIyBDT05GSUdf
QVRMMSBpcyBub3Qgc2V0CiMgQ09ORklHX0FUTDFFIGlzIG5vdCBzZXQKQ09ORklHX0FUTDFDPW0K
IyBDT05GSUdfQUxYIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfQlJPQURDT009eQojIENP
TkZJR19CNDQgaXMgbm90IHNldApDT05GSUdfQkNNNDkwOF9FTkVUPXkKQ09ORklHX0JDTUdFTkVU
PW0KIyBDT05GSUdfQk5YMiBpcyBub3Qgc2V0CiMgQ09ORklHX0NOSUMgaXMgbm90IHNldAojIENP
TkZJR19USUdPTjMgaXMgbm90IHNldApDT05GSUdfQk5YMlg9bQpDT05GSUdfQk5YMlhfU1JJT1Y9
eQpDT05GSUdfQkdNQUM9eQpDT05GSUdfQkdNQUNfUExBVEZPUk09eQojIENPTkZJR19TWVNURU1Q
T1JUIGlzIG5vdCBzZXQKIyBDT05GSUdfQk5YVCBpcyBub3Qgc2V0CkNPTkZJR19ORVRfVkVORE9S
X0NBREVOQ0U9eQpDT05GSUdfTUFDQj15CkNPTkZJR19NQUNCX1VTRV9IV1NUQU1QPXkKIyBDT05G
SUdfTUFDQl9QQ0kgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9DQVZJVU09eQpDT05GSUdf
VEhVTkRFUl9OSUNfUEY9eQojIENPTkZJR19USFVOREVSX05JQ19WRiBpcyBub3Qgc2V0CkNPTkZJ
R19USFVOREVSX05JQ19CR1g9eQpDT05GSUdfVEhVTkRFUl9OSUNfUkdYPXkKIyBDT05GSUdfQ0FW
SVVNX1BUUCBpcyBub3Qgc2V0CiMgQ09ORklHX0xJUVVJRElPIGlzIG5vdCBzZXQKIyBDT05GSUdf
TElRVUlESU9fVkYgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9DSEVMU0lPPXkKIyBDT05G
SUdfQ0hFTFNJT19UMSBpcyBub3Qgc2V0CiMgQ09ORklHX0NIRUxTSU9fVDMgaXMgbm90IHNldAoj
IENPTkZJR19DSEVMU0lPX1Q0IGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hFTFNJT19UNFZGIGlzIG5v
dCBzZXQKQ09ORklHX05FVF9WRU5ET1JfQ0lTQ089eQojIENPTkZJR19FTklDIGlzIG5vdCBzZXQK
Q09ORklHX05FVF9WRU5ET1JfQ09SVElOQT15CiMgQ09ORklHX0dFTUlOSV9FVEhFUk5FVCBpcyBu
b3Qgc2V0CiMgQ09ORklHX0RORVQgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9ERUM9eQoj
IENPTkZJR19ORVRfVFVMSVAgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9ETElOSz15CiMg
Q09ORklHX0RMMksgaXMgbm90IHNldAojIENPTkZJR19TVU5EQU5DRSBpcyBub3Qgc2V0CkNPTkZJ
R19ORVRfVkVORE9SX0VNVUxFWD15CiMgQ09ORklHX0JFMk5FVCBpcyBub3Qgc2V0CkNPTkZJR19O
RVRfVkVORE9SX0VaQ0hJUD15CiMgQ09ORklHX0VaQ0hJUF9OUFNfTUFOQUdFTUVOVF9FTkVUIGlz
IG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfRlJFRVNDQUxFPXkKQ09ORklHX0ZFQz15CkNPTkZJ
R19GU0xfRk1BTj15CkNPTkZJR19EUEFBX0VSUkFUVU1fQTA1MDM4NT15CiMgQ09ORklHX0ZTTF9Q
UV9NRElPIGlzIG5vdCBzZXQKQ09ORklHX0ZTTF9YR01BQ19NRElPPXkKIyBDT05GSUdfR0lBTkZB
UiBpcyBub3Qgc2V0CkNPTkZJR19GU0xfRFBBQV9FVEg9eQpDT05GSUdfRlNMX0RQQUEyX0VUSD15
CkNPTkZJR19GU0xfRFBBQTJfUFRQX0NMT0NLPXkKIyBDT05GSUdfRlNMX0RQQUEyX1NXSVRDSCBp
cyBub3Qgc2V0CkNPTkZJR19GU0xfRU5FVEM9eQpDT05GSUdfRlNMX0VORVRDX1ZGPXkKQ09ORklH
X0ZTTF9FTkVUQ19JRVJCPXkKQ09ORklHX0ZTTF9FTkVUQ19NRElPPXkKQ09ORklHX0ZTTF9FTkVU
Q19QVFBfQ0xPQ0s9eQpDT05GSUdfRlNMX0VORVRDX1FPUz15CkNPTkZJR19ORVRfVkVORE9SX0dP
T0dMRT15CiMgQ09ORklHX0dWRSBpcyBub3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SX0hJU0lMSUNP
Tj15CkNPTkZJR19ISVg1SEQyX0dNQUM9eQojIENPTkZJR19ISVNJX0ZFTUFDIGlzIG5vdCBzZXQK
IyBDT05GSUdfSElQMDRfRVRIIGlzIG5vdCBzZXQKQ09ORklHX0hOU19NRElPPXkKQ09ORklHX0hO
Uz15CkNPTkZJR19ITlNfRFNBRj15CkNPTkZJR19ITlNfRU5FVD15CkNPTkZJR19ITlMzPXkKQ09O
RklHX0hOUzNfSENMR0U9eQojIENPTkZJR19ITlMzX0hDTEdFVkYgaXMgbm90IHNldApDT05GSUdf
SE5TM19FTkVUPXkKQ09ORklHX05FVF9WRU5ET1JfSFVBV0VJPXkKIyBDT05GSUdfSElOSUMgaXMg
bm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9JODI1WFg9eQpDT05GSUdfTkVUX1ZFTkRPUl9JTlRF
TD15CiMgQ09ORklHX0UxMDAgaXMgbm90IHNldApDT05GSUdfRTEwMDA9eQpDT05GSUdfRTEwMDBF
PXkKQ09ORklHX0lHQj15CkNPTkZJR19JR0JfSFdNT049eQpDT05GSUdfSUdCVkY9eQojIENPTkZJ
R19JWEdCIGlzIG5vdCBzZXQKIyBDT05GSUdfSVhHQkUgaXMgbm90IHNldAojIENPTkZJR19JWEdC
RVZGIGlzIG5vdCBzZXQKIyBDT05GSUdfSTQwRSBpcyBub3Qgc2V0CiMgQ09ORklHX0k0MEVWRiBp
cyBub3Qgc2V0CiMgQ09ORklHX0lDRSBpcyBub3Qgc2V0CiMgQ09ORklHX0ZNMTBLIGlzIG5vdCBz
ZXQKIyBDT05GSUdfSUdDIGlzIG5vdCBzZXQKIyBDT05GSUdfSk1FIGlzIG5vdCBzZXQKQ09ORklH
X05FVF9WRU5ET1JfTElURVg9eQojIENPTkZJR19MSVRFWF9MSVRFRVRIIGlzIG5vdCBzZXQKQ09O
RklHX05FVF9WRU5ET1JfTUFSVkVMTD15CkNPTkZJR19NVk1ESU89eQpDT05GSUdfTVZORVRBPXkK
Q09ORklHX01WUFAyPXkKIyBDT05GSUdfTVZQUDJfUFRQIGlzIG5vdCBzZXQKIyBDT05GSUdfUFhB
MTY4X0VUSCBpcyBub3Qgc2V0CiMgQ09ORklHX1NLR0UgaXMgbm90IHNldApDT05GSUdfU0tZMj15
CiMgQ09ORklHX1NLWTJfREVCVUcgaXMgbm90IHNldAojIENPTkZJR19PQ1RFT05UWDJfQUYgaXMg
bm90IHNldAojIENPTkZJR19PQ1RFT05UWDJfUEYgaXMgbm90IHNldAojIENPTkZJR19QUkVTVEVS
QSBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9WRU5ET1JfTUVESUFURUsgaXMgbm90IHNldApDT05G
SUdfTkVUX1ZFTkRPUl9NRUxMQU5PWD15CkNPTkZJR19NTFg0X0VOPW0KQ09ORklHX01MWDRfQ09S
RT1tCkNPTkZJR19NTFg0X0RFQlVHPXkKQ09ORklHX01MWDRfQ09SRV9HRU4yPXkKQ09ORklHX01M
WDVfQ09SRT1tCiMgQ09ORklHX01MWDVfRlBHQSBpcyBub3Qgc2V0CkNPTkZJR19NTFg1X0NPUkVf
RU49eQpDT05GSUdfTUxYNV9FTl9BUkZTPXkKQ09ORklHX01MWDVfRU5fUlhORkM9eQpDT05GSUdf
TUxYNV9NUEZTPXkKQ09ORklHX01MWDVfRVNXSVRDSD15CkNPTkZJR19NTFg1X0JSSURHRT15CkNP
TkZJR19NTFg1X0NMU19BQ1Q9eQpDT05GSUdfTUxYNV9UQ19TQU1QTEU9eQojIENPTkZJR19NTFg1
X0NPUkVfSVBPSUIgaXMgbm90IHNldApDT05GSUdfTUxYNV9TV19TVEVFUklORz15CiMgQ09ORklH
X01MWDVfU0YgaXMgbm90IHNldAojIENPTkZJR19NTFhTV19DT1JFIGlzIG5vdCBzZXQKIyBDT05G
SUdfTUxYRlcgaXMgbm90IHNldAojIENPTkZJR19NTFhCRl9HSUdFIGlzIG5vdCBzZXQKQ09ORklH
X05FVF9WRU5ET1JfTUlDUkVMPXkKIyBDT05GSUdfS1M4ODQyIGlzIG5vdCBzZXQKIyBDT05GSUdf
S1M4ODUxIGlzIG5vdCBzZXQKIyBDT05GSUdfS1M4ODUxX01MTCBpcyBub3Qgc2V0CiMgQ09ORklH
X0tTWjg4NFhfUENJIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfTUlDUk9DSElQPXkKIyBD
T05GSUdfRU5DMjhKNjAgaXMgbm90IHNldAojIENPTkZJR19FTkNYMjRKNjAwIGlzIG5vdCBzZXQK
IyBDT05GSUdfTEFONzQzWCBpcyBub3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SX01JQ1JPU0VNST15
CkNPTkZJR19NU0NDX09DRUxPVF9TV0lUQ0hfTElCPW0KIyBDT05GSUdfTVNDQ19PQ0VMT1RfU1dJ
VENIIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfTUlDUk9TT0ZUPXkKQ09ORklHX05FVF9W
RU5ET1JfTVlSST15CiMgQ09ORklHX01ZUkkxMEdFIGlzIG5vdCBzZXQKIyBDT05GSUdfRkVBTE5Y
IGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfTkk9eQojIENPTkZJR19OSV9YR0VfTUFOQUdF
TUVOVF9FTkVUIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfTkFUU0VNST15CiMgQ09ORklH
X05BVFNFTUkgaXMgbm90IHNldAojIENPTkZJR19OUzgzODIwIGlzIG5vdCBzZXQKQ09ORklHX05F
VF9WRU5ET1JfTkVURVJJT049eQojIENPTkZJR19TMklPIGlzIG5vdCBzZXQKIyBDT05GSUdfVlhH
RSBpcyBub3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SX05FVFJPTk9NRT15CiMgQ09ORklHX05GUCBp
cyBub3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SXzgzOTA9eQojIENPTkZJR19ORTJLX1BDSSBpcyBu
b3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SX05WSURJQT15CiMgQ09ORklHX0ZPUkNFREVUSCBpcyBu
b3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SX09LST15CiMgQ09ORklHX0VUSE9DIGlzIG5vdCBzZXQK
Q09ORklHX05FVF9WRU5ET1JfUEFDS0VUX0VOR0lORVM9eQojIENPTkZJR19IQU1BQ0hJIGlzIG5v
dCBzZXQKIyBDT05GSUdfWUVMTE9XRklOIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfUEVO
U0FORE89eQojIENPTkZJR19JT05JQyBpcyBub3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SX1FMT0dJ
Qz15CiMgQ09ORklHX1FMQTNYWFggaXMgbm90IHNldAojIENPTkZJR19RTENOSUMgaXMgbm90IHNl
dAojIENPTkZJR19ORVRYRU5fTklDIGlzIG5vdCBzZXQKIyBDT05GSUdfUUVEIGlzIG5vdCBzZXQK
Q09ORklHX05FVF9WRU5ET1JfQlJPQ0FERT15CiMgQ09ORklHX0JOQSBpcyBub3Qgc2V0CkNPTkZJ
R19ORVRfVkVORE9SX1FVQUxDT01NPXkKIyBDT05GSUdfUUNBNzAwMF9TUEkgaXMgbm90IHNldAoj
IENPTkZJR19RQ0E3MDAwX1VBUlQgaXMgbm90IHNldApDT05GSUdfUUNPTV9FTUFDPW0KQ09ORklH
X1JNTkVUPW0KQ09ORklHX05FVF9WRU5ET1JfUkRDPXkKIyBDT05GSUdfUjYwNDAgaXMgbm90IHNl
dApDT05GSUdfTkVUX1ZFTkRPUl9SRUFMVEVLPXkKIyBDT05GSUdfODEzOUNQIGlzIG5vdCBzZXQK
IyBDT05GSUdfODEzOVRPTyBpcyBub3Qgc2V0CiMgQ09ORklHX1I4MTY5IGlzIG5vdCBzZXQKQ09O
RklHX05FVF9WRU5ET1JfUkVORVNBUz15CkNPTkZJR19TSF9FVEg9eQpDT05GSUdfUkFWQj15CkNP
TkZJR19ORVRfVkVORE9SX1JPQ0tFUj15CiMgQ09ORklHX1JPQ0tFUiBpcyBub3Qgc2V0CkNPTkZJ
R19ORVRfVkVORE9SX1NBTVNVTkc9eQojIENPTkZJR19TWEdCRV9FVEggaXMgbm90IHNldApDT05G
SUdfTkVUX1ZFTkRPUl9TRUVRPXkKQ09ORklHX05FVF9WRU5ET1JfU0lMQU49eQojIENPTkZJR19T
QzkyMDMxIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfU0lTPXkKIyBDT05GSUdfU0lTOTAw
IGlzIG5vdCBzZXQKIyBDT05GSUdfU0lTMTkwIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1Jf
U09MQVJGTEFSRT15CiMgQ09ORklHX1NGQyBpcyBub3Qgc2V0CiMgQ09ORklHX1NGQ19GQUxDT04g
aXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9TTVNDPXkKQ09ORklHX1NNQzkxWD15CiMgQ09O
RklHX0VQSUMxMDAgaXMgbm90IHNldApDT05GSUdfU01TQzkxMVg9eQojIENPTkZJR19TTVNDOTQy
MCBpcyBub3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SX1NPQ0lPTkVYVD15CkNPTkZJR19TTklfQVZF
PXkKQ09ORklHX1NOSV9ORVRTRUM9eQpDT05GSUdfTkVUX1ZFTkRPUl9TVE1JQ1JPPXkKQ09ORklH
X1NUTU1BQ19FVEg9bQojIENPTkZJR19TVE1NQUNfU0VMRlRFU1RTIGlzIG5vdCBzZXQKQ09ORklH
X1NUTU1BQ19QTEFURk9STT1tCiMgQ09ORklHX0RXTUFDX0RXQ19RT1NfRVRIIGlzIG5vdCBzZXQK
Q09ORklHX0RXTUFDX0dFTkVSSUM9bQpDT05GSUdfRFdNQUNfSVBRODA2WD1tCiMgQ09ORklHX0RX
TUFDX01FRElBVEVLIGlzIG5vdCBzZXQKQ09ORklHX0RXTUFDX01FU09OPW0KQ09ORklHX0RXTUFD
X1FDT01fRVRIUU9TPW0KQ09ORklHX0RXTUFDX1JPQ0tDSElQPW0KQ09ORklHX0RXTUFDX1NPQ0ZQ
R0E9bQpDT05GSUdfRFdNQUNfU1VOWEk9bQpDT05GSUdfRFdNQUNfU1VOOEk9bQpDT05GSUdfRFdN
QUNfSU1YOD1tCiMgQ09ORklHX0RXTUFDX0lOVEVMX1BMQVQgaXMgbm90IHNldApDT05GSUdfRFdN
QUNfVklTQ09OVEk9bQojIENPTkZJR19EV01BQ19MT09OR1NPTiBpcyBub3Qgc2V0CiMgQ09ORklH
X1NUTU1BQ19QQ0kgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9TVU49eQojIENPTkZJR19I
QVBQWU1FQUwgaXMgbm90IHNldAojIENPTkZJR19TVU5HRU0gaXMgbm90IHNldAojIENPTkZJR19D
QVNTSU5JIGlzIG5vdCBzZXQKIyBDT05GSUdfTklVIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5E
T1JfU1lOT1BTWVM9eQojIENPTkZJR19EV0NfWExHTUFDIGlzIG5vdCBzZXQKQ09ORklHX05FVF9W
RU5ET1JfVEVIVVRJPXkKIyBDT05GSUdfVEVIVVRJIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5E
T1JfVEk9eQpDT05GSUdfVElfREFWSU5DSV9NRElPPXkKIyBDT05GSUdfVElfQ1BTV19QSFlfU0VM
IGlzIG5vdCBzZXQKQ09ORklHX1RJX0szX0FNNjVfQ1BTV19OVVNTPXkKIyBDT05GSUdfVElfSzNf
QU02NV9DUFNXX1NXSVRDSERFViBpcyBub3Qgc2V0CiMgQ09ORklHX1RJX0szX0FNNjVfQ1BUUyBp
cyBub3Qgc2V0CiMgQ09ORklHX1RMQU4gaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9WSUE9
eQojIENPTkZJR19WSUFfUkhJTkUgaXMgbm90IHNldAojIENPTkZJR19WSUFfVkVMT0NJVFkgaXMg
bm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9XSVpORVQ9eQojIENPTkZJR19XSVpORVRfVzUxMDAg
aXMgbm90IHNldAojIENPTkZJR19XSVpORVRfVzUzMDAgaXMgbm90IHNldApDT05GSUdfTkVUX1ZF
TkRPUl9YSUxJTlg9eQojIENPTkZJR19YSUxJTlhfRU1BQ0xJVEUgaXMgbm90IHNldAojIENPTkZJ
R19YSUxJTlhfQVhJX0VNQUMgaXMgbm90IHNldAojIENPTkZJR19YSUxJTlhfTExfVEVNQUMgaXMg
bm90IHNldAojIENPTkZJR19GRERJIGlzIG5vdCBzZXQKIyBDT05GSUdfSElQUEkgaXMgbm90IHNl
dApDT05GSUdfUUNPTV9JUEE9bQojIENPTkZJR19ORVRfU0IxMDAwIGlzIG5vdCBzZXQKQ09ORklH
X1BIWUxJTks9eQpDT05GSUdfUEhZTElCPXkKQ09ORklHX1NXUEhZPXkKIyBDT05GSUdfTEVEX1RS
SUdHRVJfUEhZIGlzIG5vdCBzZXQKQ09ORklHX0ZJWEVEX1BIWT15CiMgQ09ORklHX1NGUCBpcyBu
b3Qgc2V0CgojCiMgTUlJIFBIWSBkZXZpY2UgZHJpdmVycwojCiMgQ09ORklHX0FNRF9QSFkgaXMg
bm90IHNldApDT05GSUdfTUVTT05fR1hMX1BIWT1tCiMgQ09ORklHX0FESU5fUEhZIGlzIG5vdCBz
ZXQKQ09ORklHX0FRVUFOVElBX1BIWT15CkNPTkZJR19BWDg4Nzk2Ql9QSFk9bQpDT05GSUdfQlJP
QURDT01fUEhZPW0KQ09ORklHX0JDTTU0MTQwX1BIWT1tCkNPTkZJR19CQ003WFhYX1BIWT1tCiMg
Q09ORklHX0JDTTg0ODgxX1BIWSBpcyBub3Qgc2V0CiMgQ09ORklHX0JDTTg3WFhfUEhZIGlzIG5v
dCBzZXQKIyBDT05GSUdfQkNNX0NZR05VU19QSFkgaXMgbm90IHNldApDT05GSUdfQkNNX05FVF9Q
SFlMSUI9bQojIENPTkZJR19DSUNBREFfUEhZIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09SVElOQV9Q
SFkgaXMgbm90IHNldAojIENPTkZJR19EQVZJQ09NX1BIWSBpcyBub3Qgc2V0CiMgQ09ORklHX0lD
UExVU19QSFkgaXMgbm90IHNldAojIENPTkZJR19MWFRfUEhZIGlzIG5vdCBzZXQKIyBDT05GSUdf
SU5URUxfWFdBWV9QSFkgaXMgbm90IHNldAojIENPTkZJR19MU0lfRVQxMDExQ19QSFkgaXMgbm90
IHNldApDT05GSUdfTUFSVkVMTF9QSFk9bQpDT05GSUdfTUFSVkVMTF8xMEdfUEhZPW0KIyBDT05G
SUdfTUFSVkVMTF84OFgyMjIyX1BIWSBpcyBub3Qgc2V0CiMgQ09ORklHX01BWExJTkVBUl9HUEhZ
IGlzIG5vdCBzZXQKIyBDT05GSUdfTUVESUFURUtfR0VfUEhZIGlzIG5vdCBzZXQKQ09ORklHX01J
Q1JFTF9QSFk9eQpDT05GSUdfTUlDUk9DSElQX1BIWT1tCiMgQ09ORklHX01JQ1JPQ0hJUF9UMV9Q
SFkgaXMgbm90IHNldApDT05GSUdfTUlDUk9TRU1JX1BIWT15CiMgQ09ORklHX01PVE9SQ09NTV9Q
SFkgaXMgbm90IHNldAojIENPTkZJR19OQVRJT05BTF9QSFkgaXMgbm90IHNldAojIENPTkZJR19O
WFBfQzQ1X1RKQTExWFhfUEhZIGlzIG5vdCBzZXQKIyBDT05GSUdfTlhQX1RKQTExWFhfUEhZIGlz
IG5vdCBzZXQKQ09ORklHX0FUODAzWF9QSFk9eQojIENPTkZJR19RU0VNSV9QSFkgaXMgbm90IHNl
dApDT05GSUdfUkVBTFRFS19QSFk9eQojIENPTkZJR19SRU5FU0FTX1BIWSBpcyBub3Qgc2V0CkNP
TkZJR19ST0NLQ0hJUF9QSFk9eQpDT05GSUdfU01TQ19QSFk9bQojIENPTkZJR19TVEUxMFhQIGlz
IG5vdCBzZXQKIyBDT05GSUdfVEVSQU5FVElDU19QSFkgaXMgbm90IHNldAojIENPTkZJR19EUDgz
ODIyX1BIWSBpcyBub3Qgc2V0CiMgQ09ORklHX0RQODNUQzgxMV9QSFkgaXMgbm90IHNldAojIENP
TkZJR19EUDgzODQ4X1BIWSBpcyBub3Qgc2V0CiMgQ09ORklHX0RQODM4NjdfUEhZIGlzIG5vdCBz
ZXQKIyBDT05GSUdfRFA4Mzg2OV9QSFkgaXMgbm90IHNldApDT05GSUdfVklURVNTRV9QSFk9eQoj
IENPTkZJR19YSUxJTlhfR01JSTJSR01JSSBpcyBub3Qgc2V0CiMgQ09ORklHX01JQ1JFTF9LUzg5
OTVNQSBpcyBub3Qgc2V0CkNPTkZJR19NRElPX0RFVklDRT15CkNPTkZJR19NRElPX0JVUz15CkNP
TkZJR19GV05PREVfTURJTz15CkNPTkZJR19PRl9NRElPPXkKQ09ORklHX0FDUElfTURJTz15CkNP
TkZJR19NRElPX0RFVlJFUz15CiMgQ09ORklHX01ESU9fU1VONEkgaXMgbm90IHNldApDT05GSUdf
TURJT19YR0VORT15CkNPTkZJR19NRElPX0JJVEJBTkc9eQpDT05GSUdfTURJT19CQ01fSVBST0M9
eQpDT05GSUdfTURJT19CQ01fVU5JTUFDPW0KQ09ORklHX01ESU9fQ0FWSVVNPXkKIyBDT05GSUdf
TURJT19HUElPIGlzIG5vdCBzZXQKIyBDT05GSUdfTURJT19ISVNJX0ZFTUFDIGlzIG5vdCBzZXQK
IyBDT05GSUdfTURJT19NVlVTQiBpcyBub3Qgc2V0CiMgQ09ORklHX01ESU9fTVNDQ19NSUlNIGlz
IG5vdCBzZXQKIyBDT05GSUdfTURJT19PQ1RFT04gaXMgbm90IHNldAojIENPTkZJR19NRElPX0lQ
UTQwMTkgaXMgbm90IHNldAojIENPTkZJR19NRElPX0lQUTgwNjQgaXMgbm90IHNldApDT05GSUdf
TURJT19USFVOREVSPXkKCiMKIyBNRElPIE11bHRpcGxleGVycwojCkNPTkZJR19NRElPX0JVU19N
VVg9eQpDT05GSUdfTURJT19CVVNfTVVYX01FU09OX0cxMkE9bQpDT05GSUdfTURJT19CVVNfTVVY
X0JDTV9JUFJPQz15CiMgQ09ORklHX01ESU9fQlVTX01VWF9HUElPIGlzIG5vdCBzZXQKQ09ORklH
X01ESU9fQlVTX01VWF9NVUxUSVBMRVhFUj15CkNPTkZJR19NRElPX0JVU19NVVhfTU1JT1JFRz15
CgojCiMgUENTIGRldmljZSBkcml2ZXJzCiMKQ09ORklHX1BDU19YUENTPW0KQ09ORklHX1BDU19M
WU5YPXkKIyBlbmQgb2YgUENTIGRldmljZSBkcml2ZXJzCgpDT05GSUdfUFBQPW0KQ09ORklHX1BQ
UF9CU0RDT01QPW0KQ09ORklHX1BQUF9ERUZMQVRFPW0KQ09ORklHX1BQUF9GSUxURVI9eQojIENP
TkZJR19QUFBfTVBQRSBpcyBub3Qgc2V0CkNPTkZJR19QUFBfTVVMVElMSU5LPXkKQ09ORklHX1BQ
UE9FPW0KIyBDT05GSUdfUFBUUCBpcyBub3Qgc2V0CkNPTkZJR19QUFBfQVNZTkM9bQpDT05GSUdf
UFBQX1NZTkNfVFRZPW0KQ09ORklHX1NMSVA9bQpDT05GSUdfU0xIQz1tCkNPTkZJR19TTElQX0NP
TVBSRVNTRUQ9eQpDT05GSUdfU0xJUF9TTUFSVD15CkNPTkZJR19TTElQX01PREVfU0xJUDY9eQpD
T05GSUdfVVNCX05FVF9EUklWRVJTPXkKIyBDT05GSUdfVVNCX0NBVEMgaXMgbm90IHNldAojIENP
TkZJR19VU0JfS0FXRVRIIGlzIG5vdCBzZXQKQ09ORklHX1VTQl9QRUdBU1VTPW0KQ09ORklHX1VT
Ql9SVEw4MTUwPW0KQ09ORklHX1VTQl9SVEw4MTUyPW0KQ09ORklHX1VTQl9MQU43OFhYPW0KQ09O
RklHX1VTQl9VU0JORVQ9bQpDT05GSUdfVVNCX05FVF9BWDg4MTdYPW0KQ09ORklHX1VTQl9ORVRf
QVg4ODE3OV8xNzhBPW0KQ09ORklHX1VTQl9ORVRfQ0RDRVRIRVI9bQojIENPTkZJR19VU0JfTkVU
X0NEQ19FRU0gaXMgbm90IHNldApDT05GSUdfVVNCX05FVF9DRENfTkNNPW0KIyBDT05GSUdfVVNC
X05FVF9IVUFXRUlfQ0RDX05DTSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9ORVRfQ0RDX01CSU0g
aXMgbm90IHNldApDT05GSUdfVVNCX05FVF9ETTk2MDE9bQojIENPTkZJR19VU0JfTkVUX1NSOTcw
MCBpcyBub3Qgc2V0CkNPTkZJR19VU0JfTkVUX1NSOTgwMD1tCkNPTkZJR19VU0JfTkVUX1NNU0M3
NVhYPW0KQ09ORklHX1VTQl9ORVRfU01TQzk1WFg9bQojIENPTkZJR19VU0JfTkVUX0dMNjIwQSBp
cyBub3Qgc2V0CkNPTkZJR19VU0JfTkVUX05FVDEwODA9bQpDT05GSUdfVVNCX05FVF9QTFVTQj1t
CkNPTkZJR19VU0JfTkVUX01DUzc4MzA9bQojIENPTkZJR19VU0JfTkVUX1JORElTX0hPU1QgaXMg
bm90IHNldApDT05GSUdfVVNCX05FVF9DRENfU1VCU0VUX0VOQUJMRT1tCkNPTkZJR19VU0JfTkVU
X0NEQ19TVUJTRVQ9bQojIENPTkZJR19VU0JfQUxJX001NjMyIGlzIG5vdCBzZXQKIyBDT05GSUdf
VVNCX0FOMjcyMCBpcyBub3Qgc2V0CkNPTkZJR19VU0JfQkVMS0lOPXkKQ09ORklHX1VTQl9BUk1M
SU5VWD15CiMgQ09ORklHX1VTQl9FUFNPTjI4ODggaXMgbm90IHNldAojIENPTkZJR19VU0JfS0My
MTkwIGlzIG5vdCBzZXQKQ09ORklHX1VTQl9ORVRfWkFVUlVTPW0KIyBDT05GSUdfVVNCX05FVF9D
WDgyMzEwX0VUSCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9ORVRfS0FMTUlBIGlzIG5vdCBzZXQK
IyBDT05GSUdfVVNCX05FVF9RTUlfV1dBTiBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9IU08gaXMg
bm90IHNldAojIENPTkZJR19VU0JfTkVUX0lOVDUxWDEgaXMgbm90IHNldAojIENPTkZJR19VU0Jf
SVBIRVRIIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NJRVJSQV9ORVQgaXMgbm90IHNldAojIENP
TkZJR19VU0JfVkw2MDAgaXMgbm90IHNldAojIENPTkZJR19VU0JfTkVUX0NIOTIwMCBpcyBub3Qg
c2V0CiMgQ09ORklHX1VTQl9ORVRfQVFDMTExIGlzIG5vdCBzZXQKQ09ORklHX1VTQl9SVEw4MTUz
X0VDTT1tCkNPTkZJR19XTEFOPXkKQ09ORklHX1dMQU5fVkVORE9SX0FETVRFSz15CiMgQ09ORklH
X0FETTgyMTEgaXMgbm90IHNldApDT05GSUdfQVRIX0NPTU1PTj1tCkNPTkZJR19XTEFOX1ZFTkRP
Ul9BVEg9eQojIENPTkZJR19BVEhfREVCVUcgaXMgbm90IHNldAojIENPTkZJR19BVEg1SyBpcyBu
b3Qgc2V0CiMgQ09ORklHX0FUSDVLX1BDSSBpcyBub3Qgc2V0CiMgQ09ORklHX0FUSDlLIGlzIG5v
dCBzZXQKIyBDT05GSUdfQVRIOUtfSFRDIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0FSTDkxNzAgaXMg
bm90IHNldAojIENPTkZJR19BVEg2S0wgaXMgbm90IHNldAojIENPTkZJR19BUjU1MjMgaXMgbm90
IHNldAojIENPTkZJR19XSUw2MjEwIGlzIG5vdCBzZXQKQ09ORklHX0FUSDEwSz1tCkNPTkZJR19B
VEgxMEtfQ0U9eQpDT05GSUdfQVRIMTBLX1BDST1tCiMgQ09ORklHX0FUSDEwS19BSEIgaXMgbm90
IHNldAojIENPTkZJR19BVEgxMEtfU0RJTyBpcyBub3Qgc2V0CiMgQ09ORklHX0FUSDEwS19VU0Ig
aXMgbm90IHNldApDT05GSUdfQVRIMTBLX1NOT0M9bQojIENPTkZJR19BVEgxMEtfREVCVUcgaXMg
bm90IHNldAojIENPTkZJR19BVEgxMEtfREVCVUdGUyBpcyBub3Qgc2V0CiMgQ09ORklHX0FUSDEw
S19UUkFDSU5HIGlzIG5vdCBzZXQKIyBDT05GSUdfV0NOMzZYWCBpcyBub3Qgc2V0CiMgQ09ORklH
X0FUSDExSyBpcyBub3Qgc2V0CkNPTkZJR19XTEFOX1ZFTkRPUl9BVE1FTD15CiMgQ09ORklHX0FU
TUVMIGlzIG5vdCBzZXQKIyBDT05GSUdfQVQ3NkM1MFhfVVNCIGlzIG5vdCBzZXQKQ09ORklHX1dM
QU5fVkVORE9SX0JST0FEQ09NPXkKIyBDT05GSUdfQjQzIGlzIG5vdCBzZXQKIyBDT05GSUdfQjQz
TEVHQUNZIGlzIG5vdCBzZXQKQ09ORklHX0JSQ01VVElMPW0KIyBDT05GSUdfQlJDTVNNQUMgaXMg
bm90IHNldApDT05GSUdfQlJDTUZNQUM9bQpDT05GSUdfQlJDTUZNQUNfUFJPVE9fQkNEQz15CkNP
TkZJR19CUkNNRk1BQ19TRElPPXkKIyBDT05GSUdfQlJDTUZNQUNfVVNCIGlzIG5vdCBzZXQKIyBD
T05GSUdfQlJDTUZNQUNfUENJRSBpcyBub3Qgc2V0CiMgQ09ORklHX0JSQ01fVFJBQ0lORyBpcyBu
b3Qgc2V0CiMgQ09ORklHX0JSQ01EQkcgaXMgbm90IHNldApDT05GSUdfV0xBTl9WRU5ET1JfQ0lT
Q089eQpDT05GSUdfV0xBTl9WRU5ET1JfSU5URUw9eQojIENPTkZJR19JUFcyMTAwIGlzIG5vdCBz
ZXQKIyBDT05GSUdfSVBXMjIwMCBpcyBub3Qgc2V0CiMgQ09ORklHX0lXTDQ5NjUgaXMgbm90IHNl
dAojIENPTkZJR19JV0wzOTQ1IGlzIG5vdCBzZXQKIyBDT05GSUdfSVdMV0lGSSBpcyBub3Qgc2V0
CkNPTkZJR19XTEFOX1ZFTkRPUl9JTlRFUlNJTD15CiMgQ09ORklHX0hPU1RBUCBpcyBub3Qgc2V0
CiMgQ09ORklHX0hFUk1FUyBpcyBub3Qgc2V0CiMgQ09ORklHX1A1NF9DT01NT04gaXMgbm90IHNl
dApDT05GSUdfV0xBTl9WRU5ET1JfTUFSVkVMTD15CiMgQ09ORklHX0xJQkVSVEFTIGlzIG5vdCBz
ZXQKIyBDT05GSUdfTElCRVJUQVNfVEhJTkZJUk0gaXMgbm90IHNldApDT05GSUdfTVdJRklFWD1t
CiMgQ09ORklHX01XSUZJRVhfU0RJTyBpcyBub3Qgc2V0CkNPTkZJR19NV0lGSUVYX1BDSUU9bQoj
IENPTkZJR19NV0lGSUVYX1VTQiBpcyBub3Qgc2V0CiMgQ09ORklHX01XTDhLIGlzIG5vdCBzZXQK
Q09ORklHX1dMQU5fVkVORE9SX01FRElBVEVLPXkKIyBDT05GSUdfTVQ3NjAxVSBpcyBub3Qgc2V0
CiMgQ09ORklHX01UNzZ4MFUgaXMgbm90IHNldAojIENPTkZJR19NVDc2eDBFIGlzIG5vdCBzZXQK
IyBDT05GSUdfTVQ3NngyRSBpcyBub3Qgc2V0CiMgQ09ORklHX01UNzZ4MlUgaXMgbm90IHNldAoj
IENPTkZJR19NVDc2MDNFIGlzIG5vdCBzZXQKIyBDT05GSUdfTVQ3NjE1RSBpcyBub3Qgc2V0CiMg
Q09ORklHX01UNzY2M1UgaXMgbm90IHNldAojIENPTkZJR19NVDc2NjNTIGlzIG5vdCBzZXQKIyBD
T05GSUdfTVQ3OTE1RSBpcyBub3Qgc2V0CiMgQ09ORklHX01UNzkyMUUgaXMgbm90IHNldApDT05G
SUdfV0xBTl9WRU5ET1JfTUlDUk9DSElQPXkKIyBDT05GSUdfV0lMQzEwMDBfU0RJTyBpcyBub3Qg
c2V0CiMgQ09ORklHX1dJTEMxMDAwX1NQSSBpcyBub3Qgc2V0CkNPTkZJR19XTEFOX1ZFTkRPUl9S
QUxJTks9eQojIENPTkZJR19SVDJYMDAgaXMgbm90IHNldApDT05GSUdfV0xBTl9WRU5ET1JfUkVB
TFRFSz15CiMgQ09ORklHX1JUTDgxODAgaXMgbm90IHNldAojIENPTkZJR19SVEw4MTg3IGlzIG5v
dCBzZXQKQ09ORklHX1JUTF9DQVJEUz1tCiMgQ09ORklHX1JUTDgxOTJDRSBpcyBub3Qgc2V0CiMg
Q09ORklHX1JUTDgxOTJTRSBpcyBub3Qgc2V0CiMgQ09ORklHX1JUTDgxOTJERSBpcyBub3Qgc2V0
CiMgQ09ORklHX1JUTDg3MjNBRSBpcyBub3Qgc2V0CiMgQ09ORklHX1JUTDg3MjNCRSBpcyBub3Qg
c2V0CiMgQ09ORklHX1JUTDgxODhFRSBpcyBub3Qgc2V0CiMgQ09ORklHX1JUTDgxOTJFRSBpcyBu
b3Qgc2V0CiMgQ09ORklHX1JUTDg4MjFBRSBpcyBub3Qgc2V0CiMgQ09ORklHX1JUTDgxOTJDVSBp
cyBub3Qgc2V0CiMgQ09ORklHX1JUTDhYWFhVIGlzIG5vdCBzZXQKIyBDT05GSUdfUlRXODggaXMg
bm90IHNldApDT05GSUdfV0xBTl9WRU5ET1JfUlNJPXkKIyBDT05GSUdfUlNJXzkxWCBpcyBub3Qg
c2V0CkNPTkZJR19XTEFOX1ZFTkRPUl9TVD15CiMgQ09ORklHX0NXMTIwMCBpcyBub3Qgc2V0CkNP
TkZJR19XTEFOX1ZFTkRPUl9UST15CiMgQ09ORklHX1dMMTI1MSBpcyBub3Qgc2V0CiMgQ09ORklH
X1dMMTJYWCBpcyBub3Qgc2V0CkNPTkZJR19XTDE4WFg9bQpDT05GSUdfV0xDT1JFPW0KIyBDT05G
SUdfV0xDT1JFX1NQSSBpcyBub3Qgc2V0CkNPTkZJR19XTENPUkVfU0RJTz1tCkNPTkZJR19XSUxJ
TktfUExBVEZPUk1fREFUQT15CkNPTkZJR19XTEFOX1ZFTkRPUl9aWURBUz15CiMgQ09ORklHX1VT
Ql9aRDEyMDEgaXMgbm90IHNldAojIENPTkZJR19aRDEyMTFSVyBpcyBub3Qgc2V0CkNPTkZJR19X
TEFOX1ZFTkRPUl9RVUFOVEVOTkE9eQojIENPTkZJR19RVE5GTUFDX1BDSUUgaXMgbm90IHNldAoj
IENPTkZJR19NQUM4MDIxMV9IV1NJTSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9ORVRfUk5ESVNf
V0xBTiBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJUlRfV0lGSSBpcyBub3Qgc2V0CiMgQ09ORklHX1dB
TiBpcyBub3Qgc2V0CgojCiMgV2lyZWxlc3MgV0FOCiMKIyBDT05GSUdfV1dBTiBpcyBub3Qgc2V0
CiMgZW5kIG9mIFdpcmVsZXNzIFdBTgoKQ09ORklHX1hFTl9ORVRERVZfRlJPTlRFTkQ9eQpDT05G
SUdfWEVOX05FVERFVl9CQUNLRU5EPW0KIyBDT05GSUdfVk1YTkVUMyBpcyBub3Qgc2V0CiMgQ09O
RklHX0ZVSklUU1VfRVMgaXMgbm90IHNldAojIENPTkZJR19ORVRERVZTSU0gaXMgbm90IHNldApD
T05GSUdfTkVUX0ZBSUxPVkVSPXkKIyBDT05GSUdfSVNETiBpcyBub3Qgc2V0CgojCiMgSW5wdXQg
ZGV2aWNlIHN1cHBvcnQKIwpDT05GSUdfSU5QVVQ9eQpDT05GSUdfSU5QVVRfTEVEUz15CkNPTkZJ
R19JTlBVVF9GRl9NRU1MRVNTPXkKIyBDT05GSUdfSU5QVVRfU1BBUlNFS01BUCBpcyBub3Qgc2V0
CkNPTkZJR19JTlBVVF9NQVRSSVhLTUFQPXkKCiMKIyBVc2VybGFuZCBpbnRlcmZhY2VzCiMKIyBD
T05GSUdfSU5QVVRfTU9VU0VERVYgaXMgbm90IHNldAojIENPTkZJR19JTlBVVF9KT1lERVYgaXMg
bm90IHNldApDT05GSUdfSU5QVVRfRVZERVY9eQojIENPTkZJR19JTlBVVF9FVkJVRyBpcyBub3Qg
c2V0CgojCiMgSW5wdXQgRGV2aWNlIERyaXZlcnMKIwpDT05GSUdfSU5QVVRfS0VZQk9BUkQ9eQpD
T05GSUdfS0VZQk9BUkRfQURDPW0KIyBDT05GSUdfS0VZQk9BUkRfQURQNTU4OCBpcyBub3Qgc2V0
CiMgQ09ORklHX0tFWUJPQVJEX0FEUDU1ODkgaXMgbm90IHNldApDT05GSUdfS0VZQk9BUkRfQVRL
QkQ9eQojIENPTkZJR19LRVlCT0FSRF9RVDEwNTAgaXMgbm90IHNldAojIENPTkZJR19LRVlCT0FS
RF9RVDEwNzAgaXMgbm90IHNldAojIENPTkZJR19LRVlCT0FSRF9RVDIxNjAgaXMgbm90IHNldAoj
IENPTkZJR19LRVlCT0FSRF9ETElOS19ESVI2ODUgaXMgbm90IHNldAojIENPTkZJR19LRVlCT0FS
RF9MS0tCRCBpcyBub3Qgc2V0CkNPTkZJR19LRVlCT0FSRF9HUElPPXkKIyBDT05GSUdfS0VZQk9B
UkRfR1BJT19QT0xMRUQgaXMgbm90IHNldAojIENPTkZJR19LRVlCT0FSRF9UQ0E2NDE2IGlzIG5v
dCBzZXQKIyBDT05GSUdfS0VZQk9BUkRfVENBODQxOCBpcyBub3Qgc2V0CiMgQ09ORklHX0tFWUJP
QVJEX01BVFJJWCBpcyBub3Qgc2V0CiMgQ09ORklHX0tFWUJPQVJEX0xNODMyMyBpcyBub3Qgc2V0
CiMgQ09ORklHX0tFWUJPQVJEX0xNODMzMyBpcyBub3Qgc2V0CiMgQ09ORklHX0tFWUJPQVJEX01B
WDczNTkgaXMgbm90IHNldAojIENPTkZJR19LRVlCT0FSRF9NQ1MgaXMgbm90IHNldAojIENPTkZJ
R19LRVlCT0FSRF9NUFIxMjEgaXMgbm90IHNldApDT05GSUdfS0VZQk9BUkRfU05WU19QV1JLRVk9
bQojIENPTkZJR19LRVlCT0FSRF9JTVggaXMgbm90IHNldApDT05GSUdfS0VZQk9BUkRfSU1YX1ND
X0tFWT1tCiMgQ09ORklHX0tFWUJPQVJEX05FV1RPTiBpcyBub3Qgc2V0CiMgQ09ORklHX0tFWUJP
QVJEX1RFR1JBIGlzIG5vdCBzZXQKIyBDT05GSUdfS0VZQk9BUkRfT1BFTkNPUkVTIGlzIG5vdCBz
ZXQKIyBDT05GSUdfS0VZQk9BUkRfU0FNU1VORyBpcyBub3Qgc2V0CiMgQ09ORklHX0tFWUJPQVJE
X1NUT1dBV0FZIGlzIG5vdCBzZXQKIyBDT05GSUdfS0VZQk9BUkRfU1VOS0JEIGlzIG5vdCBzZXQK
IyBDT05GSUdfS0VZQk9BUkRfU1VONElfTFJBREMgaXMgbm90IHNldAojIENPTkZJR19LRVlCT0FS
RF9PTUFQNCBpcyBub3Qgc2V0CiMgQ09ORklHX0tFWUJPQVJEX1RNMl9UT1VDSEtFWSBpcyBub3Qg
c2V0CiMgQ09ORklHX0tFWUJPQVJEX1hUS0JEIGlzIG5vdCBzZXQKQ09ORklHX0tFWUJPQVJEX0NS
T1NfRUM9eQojIENPTkZJR19LRVlCT0FSRF9DQVAxMVhYIGlzIG5vdCBzZXQKIyBDT05GSUdfS0VZ
Qk9BUkRfQkNNIGlzIG5vdCBzZXQKIyBDT05GSUdfS0VZQk9BUkRfTVRLX1BNSUMgaXMgbm90IHNl
dApDT05GSUdfSU5QVVRfTU9VU0U9eQpDT05GSUdfTU9VU0VfUFMyPXkKQ09ORklHX01PVVNFX1BT
Ml9BTFBTPXkKQ09ORklHX01PVVNFX1BTMl9CWUQ9eQpDT05GSUdfTU9VU0VfUFMyX0xPR0lQUzJQ
UD15CkNPTkZJR19NT1VTRV9QUzJfU1lOQVBUSUNTPXkKQ09ORklHX01PVVNFX1BTMl9TWU5BUFRJ
Q1NfU01CVVM9eQpDT05GSUdfTU9VU0VfUFMyX0NZUFJFU1M9eQpDT05GSUdfTU9VU0VfUFMyX1RS
QUNLUE9JTlQ9eQojIENPTkZJR19NT1VTRV9QUzJfRUxBTlRFQ0ggaXMgbm90IHNldAojIENPTkZJ
R19NT1VTRV9QUzJfU0VOVEVMSUMgaXMgbm90IHNldAojIENPTkZJR19NT1VTRV9QUzJfVE9VQ0hL
SVQgaXMgbm90IHNldApDT05GSUdfTU9VU0VfUFMyX0ZPQ0FMVEVDSD15CkNPTkZJR19NT1VTRV9Q
UzJfU01CVVM9eQojIENPTkZJR19NT1VTRV9TRVJJQUwgaXMgbm90IHNldAojIENPTkZJR19NT1VT
RV9BUFBMRVRPVUNIIGlzIG5vdCBzZXQKIyBDT05GSUdfTU9VU0VfQkNNNTk3NCBpcyBub3Qgc2V0
CiMgQ09ORklHX01PVVNFX0NZQVBBIGlzIG5vdCBzZXQKIyBDT05GSUdfTU9VU0VfRUxBTl9JMkMg
aXMgbm90IHNldAojIENPTkZJR19NT1VTRV9WU1hYWEFBIGlzIG5vdCBzZXQKIyBDT05GSUdfTU9V
U0VfR1BJTyBpcyBub3Qgc2V0CiMgQ09ORklHX01PVVNFX1NZTkFQVElDU19JMkMgaXMgbm90IHNl
dAojIENPTkZJR19NT1VTRV9TWU5BUFRJQ1NfVVNCIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5QVVRf
Sk9ZU1RJQ0sgaXMgbm90IHNldAojIENPTkZJR19JTlBVVF9UQUJMRVQgaXMgbm90IHNldApDT05G
SUdfSU5QVVRfVE9VQ0hTQ1JFRU49eQojIENPTkZJR19UT1VDSFNDUkVFTl9BRFM3ODQ2IGlzIG5v
dCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fQUQ3ODc3IGlzIG5vdCBzZXQKIyBDT05GSUdfVE9V
Q0hTQ1JFRU5fQUQ3ODc5IGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fQURDIGlzIG5v
dCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fQVIxMDIxX0kyQyBpcyBub3Qgc2V0CkNPTkZJR19U
T1VDSFNDUkVFTl9BVE1FTF9NWFQ9bQojIENPTkZJR19UT1VDSFNDUkVFTl9BVE1FTF9NWFRfVDM3
IGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fQVVPX1BJWENJUiBpcyBub3Qgc2V0CiMg
Q09ORklHX1RPVUNIU0NSRUVOX0JVMjEwMTMgaXMgbm90IHNldAojIENPTkZJR19UT1VDSFNDUkVF
Tl9CVTIxMDI5IGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fQ0hJUE9ORV9JQ044MzE4
IGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fQ0hJUE9ORV9JQ044NTA1IGlzIG5vdCBz
ZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fQ1k4Q1RNQTE0MCBpcyBub3Qgc2V0CiMgQ09ORklHX1RP
VUNIU0NSRUVOX0NZOENUTUcxMTAgaXMgbm90IHNldAojIENPTkZJR19UT1VDSFNDUkVFTl9DWVRU
U1BfQ09SRSBpcyBub3Qgc2V0CiMgQ09ORklHX1RPVUNIU0NSRUVOX0NZVFRTUDRfQ09SRSBpcyBu
b3Qgc2V0CiMgQ09ORklHX1RPVUNIU0NSRUVOX0RZTkFQUk8gaXMgbm90IHNldAojIENPTkZJR19U
T1VDSFNDUkVFTl9IQU1QU0hJUkUgaXMgbm90IHNldAojIENPTkZJR19UT1VDSFNDUkVFTl9FRVRJ
IGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fRUdBTEFYIGlzIG5vdCBzZXQKIyBDT05G
SUdfVE9VQ0hTQ1JFRU5fRUdBTEFYX1NFUklBTCBpcyBub3Qgc2V0CiMgQ09ORklHX1RPVUNIU0NS
RUVOX0VYQzMwMDAgaXMgbm90IHNldAojIENPTkZJR19UT1VDSFNDUkVFTl9GVUpJVFNVIGlzIG5v
dCBzZXQKQ09ORklHX1RPVUNIU0NSRUVOX0dPT0RJWD1tCiMgQ09ORklHX1RPVUNIU0NSRUVOX0hJ
REVFUCBpcyBub3Qgc2V0CiMgQ09ORklHX1RPVUNIU0NSRUVOX0hZQ09OX0hZNDZYWCBpcyBub3Qg
c2V0CiMgQ09ORklHX1RPVUNIU0NSRUVOX0lMSTIxMFggaXMgbm90IHNldAojIENPTkZJR19UT1VD
SFNDUkVFTl9JTElURUsgaXMgbm90IHNldAojIENPTkZJR19UT1VDSFNDUkVFTl9JUFJPQyBpcyBu
b3Qgc2V0CiMgQ09ORklHX1RPVUNIU0NSRUVOX1M2U1k3NjEgaXMgbm90IHNldAojIENPTkZJR19U
T1VDSFNDUkVFTl9HVU5aRSBpcyBub3Qgc2V0CiMgQ09ORklHX1RPVUNIU0NSRUVOX0VLVEYyMTI3
IGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fRUxBTiBpcyBub3Qgc2V0CiMgQ09ORklH
X1RPVUNIU0NSRUVOX0VMTyBpcyBub3Qgc2V0CiMgQ09ORklHX1RPVUNIU0NSRUVOX1dBQ09NX1c4
MDAxIGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fV0FDT01fSTJDIGlzIG5vdCBzZXQK
IyBDT05GSUdfVE9VQ0hTQ1JFRU5fTUFYMTE4MDEgaXMgbm90IHNldAojIENPTkZJR19UT1VDSFND
UkVFTl9NQ1M1MDAwIGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fTU1TMTE0IGlzIG5v
dCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fTUVMRkFTX01JUDQgaXMgbm90IHNldAojIENPTkZJ
R19UT1VDSFNDUkVFTl9NU0cyNjM4IGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fTVRP
VUNIIGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fSU1YNlVMX1RTQyBpcyBub3Qgc2V0
CiMgQ09ORklHX1RPVUNIU0NSRUVOX0lORVhJTyBpcyBub3Qgc2V0CiMgQ09ORklHX1RPVUNIU0NS
RUVOX01LNzEyIGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fUEVOTU9VTlQgaXMgbm90
IHNldApDT05GSUdfVE9VQ0hTQ1JFRU5fRURUX0ZUNVgwNj1tCiMgQ09ORklHX1RPVUNIU0NSRUVO
X1JBU1BCRVJSWVBJX0ZXIGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fVE9VQ0hSSUdI
VCBpcyBub3Qgc2V0CiMgQ09ORklHX1RPVUNIU0NSRUVOX1RPVUNIV0lOIGlzIG5vdCBzZXQKIyBD
T05GSUdfVE9VQ0hTQ1JFRU5fUElYQ0lSIGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5f
V0RUODdYWF9JMkMgaXMgbm90IHNldAojIENPTkZJR19UT1VDSFNDUkVFTl9VU0JfQ09NUE9TSVRF
IGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fVE9VQ0hJVDIxMyBpcyBub3Qgc2V0CiMg
Q09ORklHX1RPVUNIU0NSRUVOX1RTQ19TRVJJTyBpcyBub3Qgc2V0CiMgQ09ORklHX1RPVUNIU0NS
RUVOX1RTQzIwMDQgaXMgbm90IHNldAojIENPTkZJR19UT1VDSFNDUkVFTl9UU0MyMDA1IGlzIG5v
dCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fVFNDMjAwNyBpcyBub3Qgc2V0CiMgQ09ORklHX1RP
VUNIU0NSRUVOX1JNX1RTIGlzIG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fU0lMRUFEIGlz
IG5vdCBzZXQKIyBDT05GSUdfVE9VQ0hTQ1JFRU5fU0lTX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklH
X1RPVUNIU0NSRUVOX1NUMTIzMiBpcyBub3Qgc2V0CiMgQ09ORklHX1RPVUNIU0NSRUVOX1NUTUZU
UyBpcyBub3Qgc2V0CiMgQ09ORklHX1RPVUNIU0NSRUVOX1NVTjRJIGlzIG5vdCBzZXQKIyBDT05G
SUdfVE9VQ0hTQ1JFRU5fU1VSNDAgaXMgbm90IHNldAojIENPTkZJR19UT1VDSFNDUkVFTl9TVVJG
QUNFM19TUEkgaXMgbm90IHNldAojIENPTkZJR19UT1VDSFNDUkVFTl9TWDg2NTQgaXMgbm90IHNl
dAojIENPTkZJR19UT1VDSFNDUkVFTl9UUFM2NTA3WCBpcyBub3Qgc2V0CiMgQ09ORklHX1RPVUNI
U0NSRUVOX1pFVDYyMjMgaXMgbm90IHNldAojIENPTkZJR19UT1VDSFNDUkVFTl9aRk9SQ0UgaXMg
bm90IHNldAojIENPTkZJR19UT1VDSFNDUkVFTl9ST0hNX0JVMjEwMjMgaXMgbm90IHNldAojIENP
TkZJR19UT1VDSFNDUkVFTl9JUVM1WFggaXMgbm90IHNldAojIENPTkZJR19UT1VDSFNDUkVFTl9a
SU5JVElYIGlzIG5vdCBzZXQKQ09ORklHX0lOUFVUX01JU0M9eQojIENPTkZJR19JTlBVVF9BRDcx
NFggaXMgbm90IHNldAojIENPTkZJR19JTlBVVF9BVE1FTF9DQVBUT1VDSCBpcyBub3Qgc2V0CiMg
Q09ORklHX0lOUFVUX0JNQTE1MCBpcyBub3Qgc2V0CiMgQ09ORklHX0lOUFVUX0UzWDBfQlVUVE9O
IGlzIG5vdCBzZXQKQ09ORklHX0lOUFVUX1BNODk0MV9QV1JLRVk9eQpDT05GSUdfSU5QVVRfUE04
WFhYX1ZJQlJBVE9SPW0KIyBDT05GSUdfSU5QVVRfTU1BODQ1MCBpcyBub3Qgc2V0CiMgQ09ORklH
X0lOUFVUX0dQSU9fQkVFUEVSIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5QVVRfR1BJT19ERUNPREVS
IGlzIG5vdCBzZXQKIyBDT05GSUdfSU5QVVRfR1BJT19WSUJSQSBpcyBub3Qgc2V0CiMgQ09ORklH
X0lOUFVUX0FUSV9SRU1PVEUyIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5QVVRfS0VZU1BBTl9SRU1P
VEUgaXMgbm90IHNldAojIENPTkZJR19JTlBVVF9LWFRKOSBpcyBub3Qgc2V0CiMgQ09ORklHX0lO
UFVUX1BPV0VSTUFURSBpcyBub3Qgc2V0CiMgQ09ORklHX0lOUFVUX1lFQUxJTksgaXMgbm90IHNl
dAojIENPTkZJR19JTlBVVF9DTTEwOSBpcyBub3Qgc2V0CiMgQ09ORklHX0lOUFVUX1JFR1VMQVRP
Ul9IQVBUSUMgaXMgbm90IHNldAojIENPTkZJR19JTlBVVF9BWFAyMFhfUEVLIGlzIG5vdCBzZXQK
IyBDT05GSUdfSU5QVVRfVUlOUFVUIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5QVVRfUENGODU3NCBp
cyBub3Qgc2V0CiMgQ09ORklHX0lOUFVUX1BXTV9CRUVQRVIgaXMgbm90IHNldApDT05GSUdfSU5Q
VVRfUFdNX1ZJQlJBPW0KIyBDT05GSUdfSU5QVVRfUks4MDVfUFdSS0VZIGlzIG5vdCBzZXQKIyBD
T05GSUdfSU5QVVRfR1BJT19ST1RBUllfRU5DT0RFUiBpcyBub3Qgc2V0CiMgQ09ORklHX0lOUFVU
X0RBNzI4MF9IQVBUSUNTIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5QVVRfQURYTDM0WCBpcyBub3Qg
c2V0CiMgQ09ORklHX0lOUFVUX0lNU19QQ1UgaXMgbm90IHNldAojIENPTkZJR19JTlBVVF9JUVMy
NjlBIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5QVVRfSVFTNjI2QSBpcyBub3Qgc2V0CiMgQ09ORklH
X0lOUFVUX0NNQTMwMDAgaXMgbm90IHNldApDT05GSUdfSU5QVVRfWEVOX0tCRERFVl9GUk9OVEVO
RD15CiMgQ09ORklHX0lOUFVUX1NPQ19CVVRUT05fQVJSQVkgaXMgbm90IHNldAojIENPTkZJR19J
TlBVVF9EUlYyNjBYX0hBUFRJQ1MgaXMgbm90IHNldAojIENPTkZJR19JTlBVVF9EUlYyNjY1X0hB
UFRJQ1MgaXMgbm90IHNldAojIENPTkZJR19JTlBVVF9EUlYyNjY3X0hBUFRJQ1MgaXMgbm90IHNl
dApDT05GSUdfSU5QVVRfSElTSV9QT1dFUktFWT15CiMgQ09ORklHX1JNSTRfQ09SRSBpcyBub3Qg
c2V0CgojCiMgSGFyZHdhcmUgSS9PIHBvcnRzCiMKQ09ORklHX1NFUklPPXkKIyBDT05GSUdfU0VS
SU9fU0VSUE9SVCBpcyBub3Qgc2V0CkNPTkZJR19TRVJJT19BTUJBS01JPXkKIyBDT05GSUdfU0VS
SU9fUENJUFMyIGlzIG5vdCBzZXQKQ09ORklHX1NFUklPX0xJQlBTMj15CiMgQ09ORklHX1NFUklP
X1JBVyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFUklPX0FMVEVSQV9QUzIgaXMgbm90IHNldAojIENP
TkZJR19TRVJJT19QUzJNVUxUIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VSSU9fQVJDX1BTMiBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NFUklPX0FQQlBTMiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFUklPX1NV
TjRJX1BTMiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFUklPX0dQSU9fUFMyIGlzIG5vdCBzZXQKIyBD
T05GSUdfVVNFUklPIGlzIG5vdCBzZXQKIyBDT05GSUdfR0FNRVBPUlQgaXMgbm90IHNldAojIGVu
ZCBvZiBIYXJkd2FyZSBJL08gcG9ydHMKIyBlbmQgb2YgSW5wdXQgZGV2aWNlIHN1cHBvcnQKCiMK
IyBDaGFyYWN0ZXIgZGV2aWNlcwojCkNPTkZJR19UVFk9eQpDT05GSUdfVlQ9eQpDT05GSUdfQ09O
U09MRV9UUkFOU0xBVElPTlM9eQpDT05GSUdfVlRfQ09OU09MRT15CkNPTkZJR19WVF9DT05TT0xF
X1NMRUVQPXkKQ09ORklHX0hXX0NPTlNPTEU9eQpDT05GSUdfVlRfSFdfQ09OU09MRV9CSU5ESU5H
PXkKQ09ORklHX1VOSVg5OF9QVFlTPXkKIyBDT05GSUdfTEVHQUNZX1BUWVMgaXMgbm90IHNldApD
T05GSUdfTERJU0NfQVVUT0xPQUQ9eQoKIwojIFNlcmlhbCBkcml2ZXJzCiMKQ09ORklHX1NFUklB
TF9FQVJMWUNPTj15CkNPTkZJR19TRVJJQUxfODI1MD15CkNPTkZJR19TRVJJQUxfODI1MF9ERVBS
RUNBVEVEX09QVElPTlM9eQpDT05GSUdfU0VSSUFMXzgyNTBfUE5QPXkKQ09ORklHX1NFUklBTF84
MjUwXzE2NTUwQV9WQVJJQU5UUz15CiMgQ09ORklHX1NFUklBTF84MjUwX0ZJTlRFSyBpcyBub3Qg
c2V0CkNPTkZJR19TRVJJQUxfODI1MF9DT05TT0xFPXkKQ09ORklHX1NFUklBTF84MjUwX0RNQT15
CkNPTkZJR19TRVJJQUxfODI1MF9QQ0k9eQpDT05GSUdfU0VSSUFMXzgyNTBfRVhBUj15CkNPTkZJ
R19TRVJJQUxfODI1MF9OUl9VQVJUUz00CkNPTkZJR19TRVJJQUxfODI1MF9SVU5USU1FX1VBUlRT
PTQKQ09ORklHX1NFUklBTF84MjUwX0VYVEVOREVEPXkKIyBDT05GSUdfU0VSSUFMXzgyNTBfTUFO
WV9QT1JUUyBpcyBub3Qgc2V0CkNPTkZJR19TRVJJQUxfODI1MF9TSEFSRV9JUlE9eQojIENPTkZJ
R19TRVJJQUxfODI1MF9ERVRFQ1RfSVJRIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VSSUFMXzgyNTBf
UlNBIGlzIG5vdCBzZXQKQ09ORklHX1NFUklBTF84MjUwX0RXTElCPXkKQ09ORklHX1NFUklBTF84
MjUwX0JDTTI4MzVBVVg9eQpDT05GSUdfU0VSSUFMXzgyNTBfRlNMPXkKQ09ORklHX1NFUklBTF84
MjUwX0RXPXkKIyBDT05GSUdfU0VSSUFMXzgyNTBfUlQyODhYIGlzIG5vdCBzZXQKQ09ORklHX1NF
UklBTF84MjUwX09NQVA9eQpDT05GSUdfU0VSSUFMXzgyNTBfT01BUF9UVFlPX0ZJWFVQPXkKQ09O
RklHX1NFUklBTF84MjUwX01UNjU3Nz15CkNPTkZJR19TRVJJQUxfODI1MF9VTklQSElFUj15CkNP
TkZJR19TRVJJQUxfODI1MF9URUdSQT15CkNPTkZJR19TRVJJQUxfODI1MF9CQ003MjcxPXkKQ09O
RklHX1NFUklBTF9PRl9QTEFURk9STT15CgojCiMgTm9uLTgyNTAgc2VyaWFsIHBvcnQgc3VwcG9y
dAojCiMgQ09ORklHX1NFUklBTF9BTUJBX1BMMDEwIGlzIG5vdCBzZXQKQ09ORklHX1NFUklBTF9B
TUJBX1BMMDExPXkKQ09ORklHX1NFUklBTF9BTUJBX1BMMDExX0NPTlNPTEU9eQojIENPTkZJR19T
RVJJQUxfRUFSTFlDT05fQVJNX1NFTUlIT1NUIGlzIG5vdCBzZXQKQ09ORklHX1NFUklBTF9NRVNP
Tj15CkNPTkZJR19TRVJJQUxfTUVTT05fQ09OU09MRT15CkNPTkZJR19TRVJJQUxfU0FNU1VORz15
CkNPTkZJR19TRVJJQUxfU0FNU1VOR19VQVJUU180PXkKQ09ORklHX1NFUklBTF9TQU1TVU5HX1VB
UlRTPTQKQ09ORklHX1NFUklBTF9TQU1TVU5HX0NPTlNPTEU9eQpDT05GSUdfU0VSSUFMX1RFR1JB
PXkKQ09ORklHX1NFUklBTF9URUdSQV9UQ1U9eQpDT05GSUdfU0VSSUFMX1RFR1JBX1RDVV9DT05T
T0xFPXkKIyBDT05GSUdfU0VSSUFMX01BWDMxMDAgaXMgbm90IHNldAojIENPTkZJR19TRVJJQUxf
TUFYMzEwWCBpcyBub3Qgc2V0CkNPTkZJR19TRVJJQUxfSU1YPXkKQ09ORklHX1NFUklBTF9JTVhf
Q09OU09MRT15CkNPTkZJR19TRVJJQUxfSU1YX0VBUkxZQ09OPXkKIyBDT05GSUdfU0VSSUFMX1VB
UlRMSVRFIGlzIG5vdCBzZXQKQ09ORklHX1NFUklBTF9TSF9TQ0k9eQpDT05GSUdfU0VSSUFMX1NI
X1NDSV9OUl9VQVJUUz0xOApDT05GSUdfU0VSSUFMX1NIX1NDSV9DT05TT0xFPXkKQ09ORklHX1NF
UklBTF9TSF9TQ0lfRUFSTFlDT049eQpDT05GSUdfU0VSSUFMX1NIX1NDSV9ETUE9eQpDT05GSUdf
U0VSSUFMX0NPUkU9eQpDT05GSUdfU0VSSUFMX0NPUkVfQ09OU09MRT15CiMgQ09ORklHX1NFUklB
TF9KU00gaXMgbm90IHNldApDT05GSUdfU0VSSUFMX01TTT15CkNPTkZJR19TRVJJQUxfTVNNX0NP
TlNPTEU9eQpDT05GSUdfU0VSSUFMX1FDT01fR0VOST15CkNPTkZJR19TRVJJQUxfUUNPTV9HRU5J
X0NPTlNPTEU9eQojIENPTkZJR19TRVJJQUxfU0lGSVZFIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VS
SUFMX1NDQ05YUCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFUklBTF9TQzE2SVM3WFggaXMgbm90IHNl
dAojIENPTkZJR19TRVJJQUxfQkNNNjNYWCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFUklBTF9BTFRF
UkFfSlRBR1VBUlQgaXMgbm90IHNldAojIENPTkZJR19TRVJJQUxfQUxURVJBX1VBUlQgaXMgbm90
IHNldApDT05GSUdfU0VSSUFMX1hJTElOWF9QU19VQVJUPXkKQ09ORklHX1NFUklBTF9YSUxJTlhf
UFNfVUFSVF9DT05TT0xFPXkKIyBDT05GSUdfU0VSSUFMX0FSQyBpcyBub3Qgc2V0CiMgQ09ORklH
X1NFUklBTF9SUDIgaXMgbm90IHNldApDT05GSUdfU0VSSUFMX0ZTTF9MUFVBUlQ9eQpDT05GSUdf
U0VSSUFMX0ZTTF9MUFVBUlRfQ09OU09MRT15CkNPTkZJR19TRVJJQUxfRlNMX0xJTkZMRVhVQVJU
PXkKQ09ORklHX1NFUklBTF9GU0xfTElORkxFWFVBUlRfQ09OU09MRT15CiMgQ09ORklHX1NFUklB
TF9DT05FWEFOVF9ESUdJQ09MT1IgaXMgbm90IHNldAojIENPTkZJR19TRVJJQUxfU1BSRCBpcyBu
b3Qgc2V0CkNPTkZJR19TRVJJQUxfTVZFQlVfVUFSVD15CkNPTkZJR19TRVJJQUxfTVZFQlVfQ09O
U09MRT15CkNPTkZJR19TRVJJQUxfT1dMPXkKQ09ORklHX1NFUklBTF9PV0xfQ09OU09MRT15CiMg
ZW5kIG9mIFNlcmlhbCBkcml2ZXJzCgpDT05GSUdfU0VSSUFMX01DVFJMX0dQSU89eQojIENPTkZJ
R19TRVJJQUxfTk9OU1RBTkRBUkQgaXMgbm90IHNldAojIENPTkZJR19OX0dTTSBpcyBub3Qgc2V0
CiMgQ09ORklHX05PWk9NSSBpcyBub3Qgc2V0CiMgQ09ORklHX05VTExfVFRZIGlzIG5vdCBzZXQK
Q09ORklHX0hWQ19EUklWRVI9eQpDT05GSUdfSFZDX0lSUT15CkNPTkZJR19IVkNfWEVOPXkKQ09O
RklHX0hWQ19YRU5fRlJPTlRFTkQ9eQojIENPTkZJR19IVkNfRENDIGlzIG5vdCBzZXQKQ09ORklH
X1NFUklBTF9ERVZfQlVTPXkKQ09ORklHX1NFUklBTF9ERVZfQ1RSTF9UVFlQT1JUPXkKQ09ORklH
X1ZJUlRJT19DT05TT0xFPXkKQ09ORklHX0lQTUlfSEFORExFUj1tCkNPTkZJR19JUE1JX0RNSV9E
RUNPREU9eQpDT05GSUdfSVBNSV9QTEFUX0RBVEE9eQojIENPTkZJR19JUE1JX1BBTklDX0VWRU5U
IGlzIG5vdCBzZXQKQ09ORklHX0lQTUlfREVWSUNFX0lOVEVSRkFDRT1tCkNPTkZJR19JUE1JX1NJ
PW0KIyBDT05GSUdfSVBNSV9TU0lGIGlzIG5vdCBzZXQKIyBDT05GSUdfSVBNSV9XQVRDSERPRyBp
cyBub3Qgc2V0CiMgQ09ORklHX0lQTUlfUE9XRVJPRkYgaXMgbm90IHNldAojIENPTkZJR19JUE1C
X0RFVklDRV9JTlRFUkZBQ0UgaXMgbm90IHNldApDT05GSUdfSFdfUkFORE9NPXkKIyBDT05GSUdf
SFdfUkFORE9NX1RJTUVSSU9NRU0gaXMgbm90IHNldAojIENPTkZJR19IV19SQU5ET01fQkE0MzEg
aXMgbm90IHNldApDT05GSUdfSFdfUkFORE9NX0JDTTI4MzU9eQpDT05GSUdfSFdfUkFORE9NX0lQ
Uk9DX1JORzIwMD15CkNPTkZJR19IV19SQU5ET01fT01BUD15CkNPTkZJR19IV19SQU5ET01fVklS
VElPPXkKQ09ORklHX0hXX1JBTkRPTV9ISVNJPXkKQ09ORklHX0hXX1JBTkRPTV9YR0VORT15CkNP
TkZJR19IV19SQU5ET01fTUVTT049eQpDT05GSUdfSFdfUkFORE9NX0NBVklVTT15CkNPTkZJR19I
V19SQU5ET01fTVRLPXkKQ09ORklHX0hXX1JBTkRPTV9FWFlOT1M9eQpDT05GSUdfSFdfUkFORE9N
X09QVEVFPXkKIyBDT05GSUdfSFdfUkFORE9NX0NDVFJORyBpcyBub3Qgc2V0CiMgQ09ORklHX0hX
X1JBTkRPTV9YSVBIRVJBIGlzIG5vdCBzZXQKQ09ORklHX0hXX1JBTkRPTV9BUk1fU01DQ0NfVFJO
Rz15CiMgQ09ORklHX0FQUExJQ09NIGlzIG5vdCBzZXQKQ09ORklHX0RFVk1FTT15CkNPTkZJR19E
RVZQT1JUPXkKQ09ORklHX1RDR19UUE09eQpDT05GSUdfSFdfUkFORE9NX1RQTT15CiMgQ09ORklH
X1RDR19USVMgaXMgbm90IHNldAojIENPTkZJR19UQ0dfVElTX1NQSSBpcyBub3Qgc2V0CiMgQ09O
RklHX1RDR19USVNfU1lOUVVBQ0VSIGlzIG5vdCBzZXQKIyBDT05GSUdfVENHX1RJU19JMkNfQ1I1
MCBpcyBub3Qgc2V0CiMgQ09ORklHX1RDR19USVNfSTJDX0FUTUVMIGlzIG5vdCBzZXQKQ09ORklH
X1RDR19USVNfSTJDX0lORklORU9OPXkKIyBDT05GSUdfVENHX1RJU19JMkNfTlVWT1RPTiBpcyBu
b3Qgc2V0CiMgQ09ORklHX1RDR19BVE1FTCBpcyBub3Qgc2V0CiMgQ09ORklHX1RDR19JTkZJTkVP
TiBpcyBub3Qgc2V0CiMgQ09ORklHX1RDR19YRU4gaXMgbm90IHNldAojIENPTkZJR19UQ0dfQ1JC
IGlzIG5vdCBzZXQKIyBDT05GSUdfVENHX1ZUUE1fUFJPWFkgaXMgbm90IHNldAojIENPTkZJR19U
Q0dfRlRQTV9URUUgaXMgbm90IHNldAojIENPTkZJR19UQ0dfVElTX1NUMzNaUDI0X0kyQyBpcyBu
b3Qgc2V0CiMgQ09ORklHX1RDR19USVNfU1QzM1pQMjRfU1BJIGlzIG5vdCBzZXQKIyBDT05GSUdf
WElMTFlCVVMgaXMgbm90IHNldAojIENPTkZJR19YSUxMWVVTQiBpcyBub3Qgc2V0CkNPTkZJR19S
QU5ET01fVFJVU1RfQ1BVPXkKQ09ORklHX1JBTkRPTV9UUlVTVF9CT09UTE9BREVSPXkKIyBlbmQg
b2YgQ2hhcmFjdGVyIGRldmljZXMKCiMKIyBJMkMgc3VwcG9ydAojCkNPTkZJR19JMkM9eQpDT05G
SUdfQUNQSV9JMkNfT1BSRUdJT049eQpDT05GSUdfSTJDX0JPQVJESU5GTz15CkNPTkZJR19JMkNf
Q09NUEFUPXkKQ09ORklHX0kyQ19DSEFSREVWPXkKQ09ORklHX0kyQ19NVVg9eQoKIwojIE11bHRp
cGxleGVyIEkyQyBDaGlwIHN1cHBvcnQKIwojIENPTkZJR19JMkNfQVJCX0dQSU9fQ0hBTExFTkdF
IGlzIG5vdCBzZXQKIyBDT05GSUdfSTJDX01VWF9HUElPIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJD
X01VWF9HUE1VWCBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19NVVhfTFRDNDMwNiBpcyBub3Qgc2V0
CiMgQ09ORklHX0kyQ19NVVhfUENBOTU0MSBpcyBub3Qgc2V0CkNPTkZJR19JMkNfTVVYX1BDQTk1
NHg9eQojIENPTkZJR19JMkNfTVVYX1BJTkNUUkwgaXMgbm90IHNldAojIENPTkZJR19JMkNfTVVY
X1JFRyBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19ERU1VWF9QSU5DVFJMIGlzIG5vdCBzZXQKIyBD
T05GSUdfSTJDX01VWF9NTFhDUExEIGlzIG5vdCBzZXQKIyBlbmQgb2YgTXVsdGlwbGV4ZXIgSTJD
IENoaXAgc3VwcG9ydAoKQ09ORklHX0kyQ19IRUxQRVJfQVVUTz15CkNPTkZJR19JMkNfU01CVVM9
eQpDT05GSUdfSTJDX0FMR09CSVQ9eQoKIwojIEkyQyBIYXJkd2FyZSBCdXMgc3VwcG9ydAojCgoj
CiMgUEMgU01CdXMgaG9zdCBjb250cm9sbGVyIGRyaXZlcnMKIwojIENPTkZJR19JMkNfQUxJMTUz
NSBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19BTEkxNTYzIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJD
X0FMSTE1WDMgaXMgbm90IHNldAojIENPTkZJR19JMkNfQU1ENzU2IGlzIG5vdCBzZXQKIyBDT05G
SUdfSTJDX0FNRDgxMTEgaXMgbm90IHNldAojIENPTkZJR19JMkNfQU1EX01QMiBpcyBub3Qgc2V0
CiMgQ09ORklHX0kyQ19ISVg1SEQyIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJDX0k4MDEgaXMgbm90
IHNldAojIENPTkZJR19JMkNfSVNDSCBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19QSUlYNCBpcyBu
b3Qgc2V0CiMgQ09ORklHX0kyQ19ORk9SQ0UyIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJDX05WSURJ
QV9HUFUgaXMgbm90IHNldAojIENPTkZJR19JMkNfU0lTNTU5NSBpcyBub3Qgc2V0CiMgQ09ORklH
X0kyQ19TSVM2MzAgaXMgbm90IHNldAojIENPTkZJR19JMkNfU0lTOTZYIGlzIG5vdCBzZXQKIyBD
T05GSUdfSTJDX1ZJQSBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19WSUFQUk8gaXMgbm90IHNldAoK
IwojIEFDUEkgZHJpdmVycwojCiMgQ09ORklHX0kyQ19TQ01JIGlzIG5vdCBzZXQKCiMKIyBJMkMg
c3lzdGVtIGJ1cyBkcml2ZXJzIChtb3N0bHkgZW1iZWRkZWQgLyBzeXN0ZW0tb24tY2hpcCkKIwoj
IENPTkZJR19JMkNfQUxURVJBIGlzIG5vdCBzZXQKQ09ORklHX0kyQ19CQ00yODM1PW0KQ09ORklH
X0kyQ19CQ01fSVBST0M9eQpDT05GSUdfSTJDX0JSQ01TVEI9eQojIENPTkZJR19JMkNfQ0FERU5D
RSBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19DQlVTX0dQSU8gaXMgbm90IHNldApDT05GSUdfSTJD
X0RFU0lHTldBUkVfQ09SRT15CiMgQ09ORklHX0kyQ19ERVNJR05XQVJFX1NMQVZFIGlzIG5vdCBz
ZXQKQ09ORklHX0kyQ19ERVNJR05XQVJFX1BMQVRGT1JNPXkKIyBDT05GSUdfSTJDX0RFU0lHTldB
UkVfUENJIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJDX0VNRVYyIGlzIG5vdCBzZXQKQ09ORklHX0ky
Q19FWFlOT1M1PXkKQ09ORklHX0kyQ19HUElPPW0KIyBDT05GSUdfSTJDX0dQSU9fRkFVTFRfSU5K
RUNUT1IgaXMgbm90IHNldAojIENPTkZJR19JMkNfSElTSSBpcyBub3Qgc2V0CkNPTkZJR19JMkNf
SU1YPXkKQ09ORklHX0kyQ19JTVhfTFBJMkM9eQpDT05GSUdfSTJDX01FU09OPXkKQ09ORklHX0ky
Q19NVDY1WFg9eQpDT05GSUdfSTJDX01WNjRYWFg9eQojIENPTkZJR19JMkNfTk9NQURJSyBpcyBu
b3Qgc2V0CiMgQ09ORklHX0kyQ19PQ09SRVMgaXMgbm90IHNldApDT05GSUdfSTJDX09NQVA9eQpD
T05GSUdfSTJDX09XTD15CiMgQ09ORklHX0kyQ19QQ0FfUExBVEZPUk0gaXMgbm90IHNldApDT05G
SUdfSTJDX1BYQT15CiMgQ09ORklHX0kyQ19QWEFfU0xBVkUgaXMgbm90IHNldApDT05GSUdfSTJD
X1FDT01fQ0NJPW0KQ09ORklHX0kyQ19RQ09NX0dFTkk9bQpDT05GSUdfSTJDX1FVUD15CiMgQ09O
RklHX0kyQ19SSUlDIGlzIG5vdCBzZXQKQ09ORklHX0kyQ19SSzNYPXkKQ09ORklHX0kyQ19TSF9N
T0JJTEU9eQojIENPTkZJR19JMkNfU0lNVEVDIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJDX1NQUkQg
aXMgbm90IHNldAojIENPTkZJR19JMkNfU1lOUVVBQ0VSIGlzIG5vdCBzZXQKQ09ORklHX0kyQ19U
RUdSQT15CkNPTkZJR19JMkNfVEVHUkFfQlBNUD15CiMgQ09ORklHX0kyQ19VTklQSElFUiBpcyBu
b3Qgc2V0CkNPTkZJR19JMkNfVU5JUEhJRVJfRj15CiMgQ09ORklHX0kyQ19WRVJTQVRJTEUgaXMg
bm90IHNldAojIENPTkZJR19JMkNfVEhVTkRFUlggaXMgbm90IHNldAojIENPTkZJR19JMkNfWElM
SU5YIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJDX1hMUDlYWCBpcyBub3Qgc2V0CkNPTkZJR19JMkNf
UkNBUj15CgojCiMgRXh0ZXJuYWwgSTJDL1NNQnVzIGFkYXB0ZXIgZHJpdmVycwojCiMgQ09ORklH
X0kyQ19ESU9MQU5fVTJDIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJDX0NQMjYxNSBpcyBub3Qgc2V0
CiMgQ09ORklHX0kyQ19ST0JPVEZVWlpfT1NJRiBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19UQU9T
X0VWTSBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19USU5ZX1VTQiBpcyBub3Qgc2V0CgojCiMgT3Ro
ZXIgSTJDL1NNQnVzIGJ1cyBkcml2ZXJzCiMKQ09ORklHX0kyQ19DUk9TX0VDX1RVTk5FTD15CiMg
Q09ORklHX0kyQ19YR0VORV9TTElNUFJPIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJDX1ZJUlRJTyBp
cyBub3Qgc2V0CiMgZW5kIG9mIEkyQyBIYXJkd2FyZSBCdXMgc3VwcG9ydAoKIyBDT05GSUdfSTJD
X1NUVUIgaXMgbm90IHNldApDT05GSUdfSTJDX1NMQVZFPXkKIyBDT05GSUdfSTJDX1NMQVZFX0VF
UFJPTSBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19TTEFWRV9URVNUVU5JVCBpcyBub3Qgc2V0CiMg
Q09ORklHX0kyQ19ERUJVR19DT1JFIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJDX0RFQlVHX0FMR08g
aXMgbm90IHNldAojIENPTkZJR19JMkNfREVCVUdfQlVTIGlzIG5vdCBzZXQKIyBlbmQgb2YgSTJD
IHN1cHBvcnQKCiMgQ09ORklHX0kzQyBpcyBub3Qgc2V0CkNPTkZJR19TUEk9eQpDT05GSUdfU1BJ
X01BU1RFUj15CkNPTkZJR19TUElfTUVNPXkKCiMKIyBTUEkgTWFzdGVyIENvbnRyb2xsZXIgRHJp
dmVycwojCiMgQ09ORklHX1NQSV9BTFRFUkEgaXMgbm90IHNldApDT05GSUdfU1BJX0FSTUFEQV8z
NzAwPXkKIyBDT05GSUdfU1BJX0FYSV9TUElfRU5HSU5FIGlzIG5vdCBzZXQKQ09ORklHX1NQSV9C
Q00yODM1PW0KQ09ORklHX1NQSV9CQ00yODM1QVVYPW0KQ09ORklHX1NQSV9CQ01fUVNQST15CkNP
TkZJR19TUElfQklUQkFORz1tCiMgQ09ORklHX1NQSV9DQURFTkNFIGlzIG5vdCBzZXQKQ09ORklH
X1NQSV9DQURFTkNFX1FVQURTUEk9eQpDT05GSUdfU1BJX0RFU0lHTldBUkU9bQpDT05GSUdfU1BJ
X0RXX0RNQT15CiMgQ09ORklHX1NQSV9EV19QQ0kgaXMgbm90IHNldApDT05GSUdfU1BJX0RXX01N
SU89bQpDT05GSUdfU1BJX0ZTTF9MUFNQST15CkNPTkZJR19TUElfRlNMX1FVQURTUEk9eQojIENP
TkZJR19TUElfSElTSV9LVU5QRU5HIGlzIG5vdCBzZXQKIyBDT05GSUdfU1BJX0hJU0lfU0ZDX1Yz
WFggaXMgbm90IHNldApDT05GSUdfU1BJX05YUF9GTEVYU1BJPXkKIyBDT05GSUdfU1BJX0dQSU8g
aXMgbm90IHNldApDT05GSUdfU1BJX0lNWD1tCiMgQ09ORklHX1NQSV9GU0xfU1BJIGlzIG5vdCBz
ZXQKQ09ORklHX1NQSV9GU0xfRFNQST15CkNPTkZJR19TUElfTUVTT05fU1BJQ0M9bQpDT05GSUdf
U1BJX01FU09OX1NQSUZDPW0KIyBDT05GSUdfU1BJX01UNjVYWCBpcyBub3Qgc2V0CiMgQ09ORklH
X1NQSV9NVEtfTk9SIGlzIG5vdCBzZXQKIyBDT05GSUdfU1BJX09DX1RJTlkgaXMgbm90IHNldAoj
IENPTkZJR19TUElfT01BUDI0WFggaXMgbm90IHNldApDT05GSUdfU1BJX09SSU9OPXkKQ09ORklH
X1NQSV9QTDAyMj15CiMgQ09ORklHX1NQSV9QWEEyWFggaXMgbm90IHNldApDT05GSUdfU1BJX1JP
Q0tDSElQPXkKIyBDT05GSUdfU1BJX1JPQ0tDSElQX1NGQyBpcyBub3Qgc2V0CkNPTkZJR19TUElf
UlBDSUY9bQojIENPTkZJR19TUElfUlNQSSBpcyBub3Qgc2V0CkNPTkZJR19TUElfUUNPTV9RU1BJ
PW0KQ09ORklHX1NQSV9RVVA9eQpDT05GSUdfU1BJX1FDT01fR0VOST1tCkNPTkZJR19TUElfUzND
NjRYWD15CiMgQ09ORklHX1NQSV9TQzE4SVM2MDIgaXMgbm90IHNldApDT05GSUdfU1BJX1NIX01T
SU9GPW0KIyBDT05GSUdfU1BJX1NIX0hTUEkgaXMgbm90IHNldAojIENPTkZJR19TUElfU0lGSVZF
IGlzIG5vdCBzZXQKIyBDT05GSUdfU1BJX1NQUkQgaXMgbm90IHNldAojIENPTkZJR19TUElfU1BS
RF9BREkgaXMgbm90IHNldAojIENPTkZJR19TUElfU1VONEkgaXMgbm90IHNldApDT05GSUdfU1BJ
X1NVTjZJPXkKIyBDT05GSUdfU1BJX1NZTlFVQUNFUiBpcyBub3Qgc2V0CiMgQ09ORklHX1NQSV9N
WElDIGlzIG5vdCBzZXQKIyBDT05GSUdfU1BJX1RFR1JBMjEwX1FVQUQgaXMgbm90IHNldAojIENP
TkZJR19TUElfVEVHUkExMTQgaXMgbm90IHNldAojIENPTkZJR19TUElfVEVHUkEyMF9TRkxBU0gg
aXMgbm90IHNldAojIENPTkZJR19TUElfVEVHUkEyMF9TTElOSyBpcyBub3Qgc2V0CiMgQ09ORklH
X1NQSV9USFVOREVSWCBpcyBub3Qgc2V0CiMgQ09ORklHX1NQSV9VTklQSElFUiBpcyBub3Qgc2V0
CiMgQ09ORklHX1NQSV9YQ09NTSBpcyBub3Qgc2V0CiMgQ09ORklHX1NQSV9YSUxJTlggaXMgbm90
IHNldAojIENPTkZJR19TUElfWExQIGlzIG5vdCBzZXQKIyBDT05GSUdfU1BJX1pZTlFNUF9HUVNQ
SSBpcyBub3Qgc2V0CiMgQ09ORklHX1NQSV9BTUQgaXMgbm90IHNldAoKIwojIFNQSSBNdWx0aXBs
ZXhlciBzdXBwb3J0CiMKIyBDT05GSUdfU1BJX01VWCBpcyBub3Qgc2V0CgojCiMgU1BJIFByb3Rv
Y29sIE1hc3RlcnMKIwpDT05GSUdfU1BJX1NQSURFVj1tCiMgQ09ORklHX1NQSV9MT09QQkFDS19U
RVNUIGlzIG5vdCBzZXQKIyBDT05GSUdfU1BJX1RMRTYyWDAgaXMgbm90IHNldAojIENPTkZJR19T
UElfU0xBVkUgaXMgbm90IHNldApDT05GSUdfU1BJX0RZTkFNSUM9eQpDT05GSUdfU1BNST15CiMg
Q09ORklHX1NQTUlfSElTSTM2NzAgaXMgbm90IHNldApDT05GSUdfU1BNSV9NU01fUE1JQ19BUkI9
eQojIENPTkZJR19IU0kgaXMgbm90IHNldApDT05GSUdfUFBTPXkKIyBDT05GSUdfUFBTX0RFQlVH
IGlzIG5vdCBzZXQKCiMKIyBQUFMgY2xpZW50cyBzdXBwb3J0CiMKIyBDT05GSUdfUFBTX0NMSUVO
VF9LVElNRVIgaXMgbm90IHNldAojIENPTkZJR19QUFNfQ0xJRU5UX0xESVNDIGlzIG5vdCBzZXQK
IyBDT05GSUdfUFBTX0NMSUVOVF9HUElPIGlzIG5vdCBzZXQKCiMKIyBQUFMgZ2VuZXJhdG9ycyBz
dXBwb3J0CiMKCiMKIyBQVFAgY2xvY2sgc3VwcG9ydAojCkNPTkZJR19QVFBfMTU4OF9DTE9DSz15
CkNPTkZJR19QVFBfMTU4OF9DTE9DS19PUFRJT05BTD15CkNPTkZJR19QVFBfMTU4OF9DTE9DS19E
VEU9eQpDT05GSUdfUFRQXzE1ODhfQ0xPQ0tfUU9SSVE9eQoKIwojIEVuYWJsZSBQSFlMSUIgYW5k
IE5FVFdPUktfUEhZX1RJTUVTVEFNUElORyB0byBzZWUgdGhlIGFkZGl0aW9uYWwgY2xvY2tzLgoj
CkNPTkZJR19QVFBfMTU4OF9DTE9DS19LVk09eQojIENPTkZJR19QVFBfMTU4OF9DTE9DS19JRFQ4
MlAzMyBpcyBub3Qgc2V0CiMgQ09ORklHX1BUUF8xNTg4X0NMT0NLX0lEVENNIGlzIG5vdCBzZXQK
IyBDT05GSUdfUFRQXzE1ODhfQ0xPQ0tfT0NQIGlzIG5vdCBzZXQKIyBlbmQgb2YgUFRQIGNsb2Nr
IHN1cHBvcnQKCkNPTkZJR19QSU5DVFJMPXkKQ09ORklHX0dFTkVSSUNfUElOQ1RSTF9HUk9VUFM9
eQpDT05GSUdfUElOTVVYPXkKQ09ORklHX0dFTkVSSUNfUElOTVVYX0ZVTkNUSU9OUz15CkNPTkZJ
R19QSU5DT05GPXkKQ09ORklHX0dFTkVSSUNfUElOQ09ORj15CiMgQ09ORklHX1BJTkNUUkxfQVhQ
MjA5IGlzIG5vdCBzZXQKIyBDT05GSUdfUElOQ1RSTF9BTUQgaXMgbm90IHNldAojIENPTkZJR19Q
SU5DVFJMX01DUDIzUzA4IGlzIG5vdCBzZXQKQ09ORklHX1BJTkNUUkxfUk9DS0NISVA9eQpDT05G
SUdfUElOQ1RSTF9TSU5HTEU9eQojIENPTkZJR19QSU5DVFJMX1NYMTUwWCBpcyBub3Qgc2V0CiMg
Q09ORklHX1BJTkNUUkxfU1RNRlggaXMgbm90IHNldApDT05GSUdfUElOQ1RSTF9NQVg3NzYyMD15
CkNPTkZJR19QSU5DVFJMX1pZTlFNUD15CiMgQ09ORklHX1BJTkNUUkxfUks4MDUgaXMgbm90IHNl
dAojIENPTkZJR19QSU5DVFJMX09DRUxPVCBpcyBub3Qgc2V0CiMgQ09ORklHX1BJTkNUUkxfTUlD
Uk9DSElQX1NHUElPIGlzIG5vdCBzZXQKIyBDT05GSUdfUElOQ1RSTF9LRUVNQkFZIGlzIG5vdCBz
ZXQKQ09ORklHX1BJTkNUUkxfT1dMPXkKQ09ORklHX1BJTkNUUkxfUzcwMD15CkNPTkZJR19QSU5D
VFJMX1M5MDA9eQpDT05GSUdfUElOQ1RSTF9CQ00yODM1PXkKQ09ORklHX1BJTkNUUkxfSVBST0Nf
R1BJTz15CkNPTkZJR19QSU5DVFJMX05TMl9NVVg9eQojIENPTkZJR19QSU5DVFJMX0FTMzcwIGlz
IG5vdCBzZXQKIyBDT05GSUdfUElOQ1RSTF9CRVJMSU5fQkc0Q1QgaXMgbm90IHNldApDT05GSUdf
UElOQ1RSTF9JTVg9eQpDT05GSUdfUElOQ1RSTF9JTVhfU0NVPXkKQ09ORklHX1BJTkNUUkxfSU1Y
OE1NPXkKQ09ORklHX1BJTkNUUkxfSU1YOE1OPXkKQ09ORklHX1BJTkNUUkxfSU1YOE1QPXkKQ09O
RklHX1BJTkNUUkxfSU1YOE1RPXkKQ09ORklHX1BJTkNUUkxfSU1YOFFNPXkKQ09ORklHX1BJTkNU
UkxfSU1YOFFYUD15CkNPTkZJR19QSU5DVFJMX0lNWDhEWEw9eQojIENPTkZJR19QSU5DVFJMX0lN
WDhVTFAgaXMgbm90IHNldApDT05GSUdfUElOQ1RSTF9NVkVCVT15CkNPTkZJR19QSU5DVFJMX0FS
TUFEQV9BUDgwNj15CkNPTkZJR19QSU5DVFJMX0FSTUFEQV9DUDExMD15CkNPTkZJR19QSU5DVFJM
X0FSTUFEQV8zN1hYPXkKQ09ORklHX1BJTkNUUkxfTVNNPXkKIyBDT05GSUdfUElOQ1RSTF9BUFE4
MDY0IGlzIG5vdCBzZXQKIyBDT05GSUdfUElOQ1RSTF9BUFE4MDg0IGlzIG5vdCBzZXQKIyBDT05G
SUdfUElOQ1RSTF9JUFE0MDE5IGlzIG5vdCBzZXQKIyBDT05GSUdfUElOQ1RSTF9JUFE4MDY0IGlz
IG5vdCBzZXQKQ09ORklHX1BJTkNUUkxfSVBRODA3ND15CkNPTkZJR19QSU5DVFJMX0lQUTYwMTg9
eQojIENPTkZJR19QSU5DVFJMX01TTTgyMjYgaXMgbm90IHNldAojIENPTkZJR19QSU5DVFJMX01T
TTg2NjAgaXMgbm90IHNldAojIENPTkZJR19QSU5DVFJMX01TTTg5NjAgaXMgbm90IHNldAojIENP
TkZJR19QSU5DVFJMX01ETTk2MDcgaXMgbm90IHNldAojIENPTkZJR19QSU5DVFJMX01ETTk2MTUg
aXMgbm90IHNldAojIENPTkZJR19QSU5DVFJMX01TTThYNzQgaXMgbm90IHNldApDT05GSUdfUElO
Q1RSTF9NU004OTE2PXkKIyBDT05GSUdfUElOQ1RSTF9NU004OTUzIGlzIG5vdCBzZXQKIyBDT05G
SUdfUElOQ1RSTF9NU004OTc2IGlzIG5vdCBzZXQKQ09ORklHX1BJTkNUUkxfTVNNODk5ND15CkNP
TkZJR19QSU5DVFJMX01TTTg5OTY9eQpDT05GSUdfUElOQ1RSTF9NU004OTk4PXkKQ09ORklHX1BJ
TkNUUkxfUUNTNDA0PXkKQ09ORklHX1BJTkNUUkxfUURGMlhYWD15CkNPTkZJR19QSU5DVFJMX1FD
T01fU1BNSV9QTUlDPXkKIyBDT05GSUdfUElOQ1RSTF9RQ09NX1NTQklfUE1JQyBpcyBub3Qgc2V0
CkNPTkZJR19QSU5DVFJMX1NDNzE4MD15CiMgQ09ORklHX1BJTkNUUkxfU0M3MjgwIGlzIG5vdCBz
ZXQKIyBDT05GSUdfUElOQ1RSTF9TQzgxODBYIGlzIG5vdCBzZXQKIyBDT05GSUdfUElOQ1RSTF9T
RE02NjAgaXMgbm90IHNldApDT05GSUdfUElOQ1RSTF9TRE04NDU9eQojIENPTkZJR19QSU5DVFJM
X1NEWDU1IGlzIG5vdCBzZXQKIyBDT05GSUdfUElOQ1RSTF9TTTYxMTUgaXMgbm90IHNldAojIENP
TkZJR19QSU5DVFJMX1NNNjEyNSBpcyBub3Qgc2V0CkNPTkZJR19QSU5DVFJMX1NNODE1MD15CkNP
TkZJR19QSU5DVFJMX1NNODI1MD15CkNPTkZJR19QSU5DVFJMX1NNODM1MD15CkNPTkZJR19QSU5D
VFJMX0xQQVNTX0xQST1tCgojCiMgUmVuZXNhcyBwaW5jdHJsIGRyaXZlcnMKIwpDT05GSUdfUElO
Q1RSTF9SRU5FU0FTPXkKQ09ORklHX1BJTkNUUkxfU0hfUEZDPXkKQ09ORklHX1BJTkNUUkxfUEZD
X1I4QTc3OTk1PXkKQ09ORklHX1BJTkNUUkxfUEZDX1I4QTc3OTkwPXkKQ09ORklHX1BJTkNUUkxf
UEZDX1I4QTc3OTUwPXkKQ09ORklHX1BJTkNUUkxfUEZDX1I4QTc3OTUxPXkKQ09ORklHX1BJTkNU
UkxfUEZDX1I4QTc3OTY1PXkKQ09ORklHX1BJTkNUUkxfUEZDX1I4QTc3OTYwPXkKQ09ORklHX1BJ
TkNUUkxfUEZDX1I4QTc3OTYxPXkKQ09ORklHX1BJTkNUUkxfUEZDX1I4QTc3OTgwPXkKQ09ORklH
X1BJTkNUUkxfUEZDX1I4QTc3OTcwPXkKQ09ORklHX1BJTkNUUkxfUEZDX1I4QTc3OUEwPXkKQ09O
RklHX1BJTkNUUkxfUlpHMkw9eQpDT05GSUdfUElOQ1RSTF9QRkNfUjhBNzc0QzA9eQpDT05GSUdf
UElOQ1RSTF9QRkNfUjhBNzc0RTE9eQpDT05GSUdfUElOQ1RSTF9QRkNfUjhBNzc0QTE9eQpDT05G
SUdfUElOQ1RSTF9QRkNfUjhBNzc0QjE9eQojIGVuZCBvZiBSZW5lc2FzIHBpbmN0cmwgZHJpdmVy
cwoKQ09ORklHX1BJTkNUUkxfU0FNU1VORz15CkNPTkZJR19QSU5DVFJMX0VYWU5PUz15CkNPTkZJ
R19QSU5DVFJMX0VYWU5PU19BUk02ND15CiMgQ09ORklHX1BJTkNUUkxfU1BSRF9TQzk4NjAgaXMg
bm90IHNldApDT05GSUdfUElOQ1RSTF9TVU5YST15CiMgQ09ORklHX1BJTkNUUkxfU1VONElfQTEw
IGlzIG5vdCBzZXQKIyBDT05GSUdfUElOQ1RSTF9TVU41SSBpcyBub3Qgc2V0CiMgQ09ORklHX1BJ
TkNUUkxfU1VONklfQTMxIGlzIG5vdCBzZXQKIyBDT05GSUdfUElOQ1RSTF9TVU42SV9BMzFfUiBp
cyBub3Qgc2V0CiMgQ09ORklHX1BJTkNUUkxfU1VOOElfQTIzIGlzIG5vdCBzZXQKIyBDT05GSUdf
UElOQ1RSTF9TVU44SV9BMzMgaXMgbm90IHNldAojIENPTkZJR19QSU5DVFJMX1NVTjhJX0E4M1Qg
aXMgbm90IHNldAojIENPTkZJR19QSU5DVFJMX1NVTjhJX0E4M1RfUiBpcyBub3Qgc2V0CiMgQ09O
RklHX1BJTkNUUkxfU1VOOElfQTIzX1IgaXMgbm90IHNldAojIENPTkZJR19QSU5DVFJMX1NVTjhJ
X0gzIGlzIG5vdCBzZXQKQ09ORklHX1BJTkNUUkxfU1VOOElfSDNfUj15CiMgQ09ORklHX1BJTkNU
UkxfU1VOOElfVjNTIGlzIG5vdCBzZXQKIyBDT05GSUdfUElOQ1RSTF9TVU45SV9BODAgaXMgbm90
IHNldAojIENPTkZJR19QSU5DVFJMX1NVTjlJX0E4MF9SIGlzIG5vdCBzZXQKQ09ORklHX1BJTkNU
UkxfU1VONTBJX0E2ND15CkNPTkZJR19QSU5DVFJMX1NVTjUwSV9BNjRfUj15CkNPTkZJR19QSU5D
VFJMX1NVTjUwSV9BMTAwPXkKQ09ORklHX1BJTkNUUkxfU1VONTBJX0ExMDBfUj15CkNPTkZJR19Q
SU5DVFJMX1NVTjUwSV9INT15CkNPTkZJR19QSU5DVFJMX1NVTjUwSV9INj15CkNPTkZJR19QSU5D
VFJMX1NVTjUwSV9INl9SPXkKQ09ORklHX1BJTkNUUkxfU1VONTBJX0g2MTY9eQpDT05GSUdfUElO
Q1RSTF9TVU41MElfSDYxNl9SPXkKQ09ORklHX1BJTkNUUkxfVEVHUkE9eQpDT05GSUdfUElOQ1RS
TF9URUdSQTEyND15CkNPTkZJR19QSU5DVFJMX1RFR1JBMjEwPXkKQ09ORklHX1BJTkNUUkxfVEVH
UkExOTQ9eQpDT05GSUdfUElOQ1RSTF9URUdSQV9YVVNCPXkKQ09ORklHX1BJTkNUUkxfVU5JUEhJ
RVI9eQojIENPTkZJR19QSU5DVFJMX1VOSVBISUVSX0xENCBpcyBub3Qgc2V0CiMgQ09ORklHX1BJ
TkNUUkxfVU5JUEhJRVJfUFJPNCBpcyBub3Qgc2V0CiMgQ09ORklHX1BJTkNUUkxfVU5JUEhJRVJf
U0xEOCBpcyBub3Qgc2V0CiMgQ09ORklHX1BJTkNUUkxfVU5JUEhJRVJfUFJPNSBpcyBub3Qgc2V0
CiMgQ09ORklHX1BJTkNUUkxfVU5JUEhJRVJfUFhTMiBpcyBub3Qgc2V0CiMgQ09ORklHX1BJTkNU
UkxfVU5JUEhJRVJfTEQ2QiBpcyBub3Qgc2V0CkNPTkZJR19QSU5DVFJMX1VOSVBISUVSX0xEMTE9
eQpDT05GSUdfUElOQ1RSTF9VTklQSElFUl9MRDIwPXkKQ09ORklHX1BJTkNUUkxfVU5JUEhJRVJf
UFhTMz15CgojCiMgTWVkaWFUZWsgcGluY3RybCBkcml2ZXJzCiMKQ09ORklHX0VJTlRfTVRLPXkK
Q09ORklHX1BJTkNUUkxfTVRLPXkKQ09ORklHX1BJTkNUUkxfTVRLX1YyPXkKQ09ORklHX1BJTkNU
UkxfTVRLX01PT1JFPXkKQ09ORklHX1BJTkNUUkxfTVRLX1BBUklTPXkKQ09ORklHX1BJTkNUUkxf
TVQyNzEyPXkKQ09ORklHX1BJTkNUUkxfTVQ2NzY1PXkKQ09ORklHX1BJTkNUUkxfTVQ2Nzc5PXkK
Q09ORklHX1BJTkNUUkxfTVQ2Nzk3PXkKQ09ORklHX1BJTkNUUkxfTVQ3NjIyPXkKQ09ORklHX1BJ
TkNUUkxfTVQ4MTY3PXkKQ09ORklHX1BJTkNUUkxfTVQ4MTczPXkKQ09ORklHX1BJTkNUUkxfTVQ4
MTgzPXkKQ09ORklHX1BJTkNUUkxfTVQ4MTkyPXkKQ09ORklHX1BJTkNUUkxfTVQ4MTk1PXkKQ09O
RklHX1BJTkNUUkxfTVQ4MzY1PXkKQ09ORklHX1BJTkNUUkxfTVQ4NTE2PXkKQ09ORklHX1BJTkNU
UkxfTVQ2Mzk3PXkKIyBlbmQgb2YgTWVkaWFUZWsgcGluY3RybCBkcml2ZXJzCgpDT05GSUdfUElO
Q1RSTF9NRVNPTj15CkNPTkZJR19QSU5DVFJMX01FU09OX0dYQkI9eQpDT05GSUdfUElOQ1RSTF9N
RVNPTl9HWEw9eQpDT05GSUdfUElOQ1RSTF9NRVNPTjhfUE1YPXkKQ09ORklHX1BJTkNUUkxfTUVT
T05fQVhHPXkKQ09ORklHX1BJTkNUUkxfTUVTT05fQVhHX1BNWD15CkNPTkZJR19QSU5DVFJMX01F
U09OX0cxMkE9eQpDT05GSUdfUElOQ1RSTF9NRVNPTl9BMT15CkNPTkZJR19QSU5DVFJMX1ZJU0NP
TlRJPXkKQ09ORklHX1BJTkNUUkxfVE1QVjc3MDA9eQpDT05GSUdfR1BJT0xJQj15CkNPTkZJR19H
UElPTElCX0ZBU1RQQVRIX0xJTUlUPTUxMgpDT05GSUdfT0ZfR1BJTz15CkNPTkZJR19HUElPX0FD
UEk9eQpDT05GSUdfR1BJT0xJQl9JUlFDSElQPXkKQ09ORklHX0dQSU9fQ0RFVj15CkNPTkZJR19H
UElPX0NERVZfVjE9eQpDT05GSUdfR1BJT19HRU5FUklDPXkKQ09ORklHX0dQSU9fUkVHTUFQPW0K
CiMKIyBNZW1vcnkgbWFwcGVkIEdQSU8gZHJpdmVycwojCiMgQ09ORklHX0dQSU9fNzRYWF9NTUlP
IGlzIG5vdCBzZXQKQ09ORklHX0dQSU9fQUxURVJBPW0KIyBDT05GSUdfR1BJT19BTURQVCBpcyBu
b3Qgc2V0CkNPTkZJR19HUElPX1JBU1BCRVJSWVBJX0VYUD15CkNPTkZJR19HUElPX0JDTV9YR1Nf
SVBST0M9eQpDT05GSUdfR1BJT19CUkNNU1RCPXkKIyBDT05GSUdfR1BJT19DQURFTkNFIGlzIG5v
dCBzZXQKQ09ORklHX0dQSU9fREFWSU5DST15CkNPTkZJR19HUElPX0RXQVBCPXkKIyBDT05GSUdf
R1BJT19FSUNfU1BSRCBpcyBub3Qgc2V0CiMgQ09ORklHX0dQSU9fRVhBUiBpcyBub3Qgc2V0CiMg
Q09ORklHX0dQSU9fRlRHUElPMDEwIGlzIG5vdCBzZXQKQ09ORklHX0dQSU9fR0VORVJJQ19QTEFU
Rk9STT15CiMgQ09ORklHX0dQSU9fR1JHUElPIGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19ISVNJ
IGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19ITFdEIGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19M
T0dJQ1ZDIGlzIG5vdCBzZXQKQ09ORklHX0dQSU9fTUI4NlM3WD15CkNPTkZJR19HUElPX01QQzhY
WFg9eQpDT05GSUdfR1BJT19NVkVCVT15CkNPTkZJR19HUElPX01YQz15CkNPTkZJR19HUElPX1BM
MDYxPXkKQ09ORklHX0dQSU9fUkNBUj15CkNPTkZJR19HUElPX1JPQ0tDSElQPXkKIyBDT05GSUdf
R1BJT19TQU1BNUQyX1BJT0JVIGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19TSUZJVkUgaXMgbm90
IHNldAojIENPTkZJR19HUElPX1NQUkQgaXMgbm90IHNldAojIENPTkZJR19HUElPX1NZU0NPTiBp
cyBub3Qgc2V0CkNPTkZJR19HUElPX1RFR1JBPXkKQ09ORklHX0dQSU9fVEVHUkExODY9eQojIENP
TkZJR19HUElPX1RIVU5ERVJYIGlzIG5vdCBzZXQKQ09ORklHX0dQSU9fVU5JUEhJRVI9eQpDT05G
SUdfR1BJT19WSVNDT05UST15CkNPTkZJR19HUElPX1dDRDkzNFg9bQpDT05GSUdfR1BJT19YR0VO
RT15CkNPTkZJR19HUElPX1hHRU5FX1NCPXkKIyBDT05GSUdfR1BJT19YSUxJTlggaXMgbm90IHNl
dAojIENPTkZJR19HUElPX1hMUCBpcyBub3Qgc2V0CiMgQ09ORklHX0dQSU9fWllOUSBpcyBub3Qg
c2V0CiMgQ09ORklHX0dQSU9fQU1EX0ZDSCBpcyBub3Qgc2V0CiMgZW5kIG9mIE1lbW9yeSBtYXBw
ZWQgR1BJTyBkcml2ZXJzCgojCiMgSTJDIEdQSU8gZXhwYW5kZXJzCiMKIyBDT05GSUdfR1BJT19B
RFA1NTg4IGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19BRE5QIGlzIG5vdCBzZXQKIyBDT05GSUdf
R1BJT19HV19QTEQgaXMgbm90IHNldAojIENPTkZJR19HUElPX01BWDczMDAgaXMgbm90IHNldApD
T05GSUdfR1BJT19NQVg3MzJYPXkKIyBDT05GSUdfR1BJT19NQVg3MzJYX0lSUSBpcyBub3Qgc2V0
CkNPTkZJR19HUElPX1BDQTk1M1g9eQpDT05GSUdfR1BJT19QQ0E5NTNYX0lSUT15CiMgQ09ORklH
X0dQSU9fUENBOTU3MCBpcyBub3Qgc2V0CiMgQ09ORklHX0dQSU9fUENGODU3WCBpcyBub3Qgc2V0
CiMgQ09ORklHX0dQSU9fVFBJQzI4MTAgaXMgbm90IHNldAojIGVuZCBvZiBJMkMgR1BJTyBleHBh
bmRlcnMKCiMKIyBNRkQgR1BJTyBleHBhbmRlcnMKIwpDT05GSUdfR1BJT19CRDk1NzFNV1Y9bQpD
T05GSUdfR1BJT19NQVg3NzYyMD15CkNPTkZJR19HUElPX1NMMjhDUExEPW0KIyBDT05GSUdfR1BJ
T19XTTg5OTQgaXMgbm90IHNldAojIGVuZCBvZiBNRkQgR1BJTyBleHBhbmRlcnMKCiMKIyBQQ0kg
R1BJTyBleHBhbmRlcnMKIwojIENPTkZJR19HUElPX0JUOFhYIGlzIG5vdCBzZXQKIyBDT05GSUdf
R1BJT19QQ0lfSURJT18xNiBpcyBub3Qgc2V0CiMgQ09ORklHX0dQSU9fUENJRV9JRElPXzI0IGlz
IG5vdCBzZXQKIyBDT05GSUdfR1BJT19SREMzMjFYIGlzIG5vdCBzZXQKIyBlbmQgb2YgUENJIEdQ
SU8gZXhwYW5kZXJzCgojCiMgU1BJIEdQSU8gZXhwYW5kZXJzCiMKIyBDT05GSUdfR1BJT183NFgx
NjQgaXMgbm90IHNldAojIENPTkZJR19HUElPX01BWDMxOTFYIGlzIG5vdCBzZXQKIyBDT05GSUdf
R1BJT19NQVg3MzAxIGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19NQzMzODgwIGlzIG5vdCBzZXQK
IyBDT05GSUdfR1BJT19QSVNPU1IgaXMgbm90IHNldAojIENPTkZJR19HUElPX1hSQTE0MDMgaXMg
bm90IHNldAojIGVuZCBvZiBTUEkgR1BJTyBleHBhbmRlcnMKCiMKIyBVU0IgR1BJTyBleHBhbmRl
cnMKIwojIGVuZCBvZiBVU0IgR1BJTyBleHBhbmRlcnMKCiMKIyBWaXJ0dWFsIEdQSU8gZHJpdmVy
cwojCiMgQ09ORklHX0dQSU9fQUdHUkVHQVRPUiBpcyBub3Qgc2V0CkNPTkZJR19HUElPX01PQ0tV
UD1tCiMgQ09ORklHX0dQSU9fVklSVElPIGlzIG5vdCBzZXQKIyBlbmQgb2YgVmlydHVhbCBHUElP
IGRyaXZlcnMKCiMgQ09ORklHX1cxIGlzIG5vdCBzZXQKQ09ORklHX1BPV0VSX1JFU0VUPXkKQ09O
RklHX1BPV0VSX1JFU0VUX0JSQ01TVEI9eQojIENPTkZJR19QT1dFUl9SRVNFVF9HUElPIGlzIG5v
dCBzZXQKIyBDT05GSUdfUE9XRVJfUkVTRVRfR1BJT19SRVNUQVJUIGlzIG5vdCBzZXQKIyBDT05G
SUdfUE9XRVJfUkVTRVRfSElTSSBpcyBub3Qgc2V0CiMgQ09ORklHX1BPV0VSX1JFU0VUX0xJTktT
VEFUSU9OIGlzIG5vdCBzZXQKQ09ORklHX1BPV0VSX1JFU0VUX01TTT15CkNPTkZJR19QT1dFUl9S
RVNFVF9RQ09NX1BPTj1tCiMgQ09ORklHX1BPV0VSX1JFU0VUX0xUQzI5NTIgaXMgbm90IHNldAoj
IENPTkZJR19QT1dFUl9SRVNFVF9NVDYzMjMgaXMgbm90IHNldAojIENPTkZJR19QT1dFUl9SRVNF
VF9SRUdVTEFUT1IgaXMgbm90IHNldAojIENPTkZJR19QT1dFUl9SRVNFVF9SRVNUQVJUIGlzIG5v
dCBzZXQKIyBDT05GSUdfUE9XRVJfUkVTRVRfVkVYUFJFU1MgaXMgbm90IHNldApDT05GSUdfUE9X
RVJfUkVTRVRfWEdFTkU9eQpDT05GSUdfUE9XRVJfUkVTRVRfU1lTQ09OPXkKIyBDT05GSUdfUE9X
RVJfUkVTRVRfU1lTQ09OX1BPV0VST0ZGIGlzIG5vdCBzZXQKQ09ORklHX1JFQk9PVF9NT0RFPXkK
Q09ORklHX1NZU0NPTl9SRUJPT1RfTU9ERT15CiMgQ09ORklHX05WTUVNX1JFQk9PVF9NT0RFIGlz
IG5vdCBzZXQKQ09ORklHX1BPV0VSX1NVUFBMWT15CiMgQ09ORklHX1BPV0VSX1NVUFBMWV9ERUJV
RyBpcyBub3Qgc2V0CkNPTkZJR19QT1dFUl9TVVBQTFlfSFdNT049eQojIENPTkZJR19QREFfUE9X
RVIgaXMgbm90IHNldAojIENPTkZJR19HRU5FUklDX0FEQ19CQVRURVJZIGlzIG5vdCBzZXQKIyBD
T05GSUdfVEVTVF9QT1dFUiBpcyBub3Qgc2V0CiMgQ09ORklHX0NIQVJHRVJfQURQNTA2MSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0JBVFRFUllfQ1cyMDE1IGlzIG5vdCBzZXQKIyBDT05GSUdfQkFUVEVS
WV9EUzI3ODAgaXMgbm90IHNldAojIENPTkZJR19CQVRURVJZX0RTMjc4MSBpcyBub3Qgc2V0CiMg
Q09ORklHX0JBVFRFUllfRFMyNzgyIGlzIG5vdCBzZXQKQ09ORklHX0JBVFRFUllfU0JTPW0KIyBD
T05GSUdfQ0hBUkdFUl9TQlMgaXMgbm90IHNldAojIENPTkZJR19NQU5BR0VSX1NCUyBpcyBub3Qg
c2V0CkNPTkZJR19CQVRURVJZX0JRMjdYWFg9eQpDT05GSUdfQkFUVEVSWV9CUTI3WFhYX0kyQz15
CiMgQ09ORklHX0JBVFRFUllfQlEyN1hYWF9EVF9VUERBVEVTX05WTSBpcyBub3Qgc2V0CiMgQ09O
RklHX0FYUDIwWF9QT1dFUiBpcyBub3Qgc2V0CiMgQ09ORklHX0JBVFRFUllfTUFYMTcwNDAgaXMg
bm90IHNldApDT05GSUdfQkFUVEVSWV9NQVgxNzA0Mj1tCiMgQ09ORklHX0NIQVJHRVJfSVNQMTcw
NCBpcyBub3Qgc2V0CiMgQ09ORklHX0NIQVJHRVJfTUFYODkwMyBpcyBub3Qgc2V0CiMgQ09ORklH
X0NIQVJHRVJfTFA4NzI3IGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hBUkdFUl9HUElPIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQ0hBUkdFUl9NQU5BR0VSIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hBUkdFUl9M
VDM2NTEgaXMgbm90IHNldAojIENPTkZJR19DSEFSR0VSX0xUQzQxNjJMIGlzIG5vdCBzZXQKIyBD
T05GSUdfQ0hBUkdFUl9ERVRFQ1RPUl9NQVgxNDY1NiBpcyBub3Qgc2V0CiMgQ09ORklHX0NIQVJH
RVJfUUNPTV9TTUJCIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hBUkdFUl9CUTI0MTVYIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQ0hBUkdFUl9CUTI0MTkwIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hBUkdFUl9C
UTI0MjU3IGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hBUkdFUl9CUTI0NzM1IGlzIG5vdCBzZXQKIyBD
T05GSUdfQ0hBUkdFUl9CUTI1MTVYIGlzIG5vdCBzZXQKQ09ORklHX0NIQVJHRVJfQlEyNTg5MD1t
CkNPTkZJR19DSEFSR0VSX0JRMjU5ODA9bQojIENPTkZJR19DSEFSR0VSX0JRMjU2WFggaXMgbm90
IHNldAojIENPTkZJR19DSEFSR0VSX1NNQjM0NyBpcyBub3Qgc2V0CiMgQ09ORklHX0JBVFRFUllf
R0FVR0VfTFRDMjk0MSBpcyBub3Qgc2V0CiMgQ09ORklHX0JBVFRFUllfR09MREZJU0ggaXMgbm90
IHNldAojIENPTkZJR19CQVRURVJZX1JUNTAzMyBpcyBub3Qgc2V0CiMgQ09ORklHX0NIQVJHRVJf
UlQ5NDU1IGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hBUkdFUl9DUk9TX1VTQlBEIGlzIG5vdCBzZXQK
Q09ORklHX0NIQVJHRVJfQ1JPU19QQ0hHPXkKIyBDT05GSUdfQ0hBUkdFUl9VQ1MxMDAyIGlzIG5v
dCBzZXQKIyBDT05GSUdfQ0hBUkdFUl9CRDk5OTU0IGlzIG5vdCBzZXQKQ09ORklHX0hXTU9OPXkK
IyBDT05GSUdfSFdNT05fREVCVUdfQ0hJUCBpcyBub3Qgc2V0CgojCiMgTmF0aXZlIGRyaXZlcnMK
IwojIENPTkZJR19TRU5TT1JTX0FENzMxNCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfQUQ3
NDE0IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19BRDc0MTggaXMgbm90IHNldAojIENPTkZJ
R19TRU5TT1JTX0FETTEwMjEgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FETTEwMjUgaXMg
bm90IHNldAojIENPTkZJR19TRU5TT1JTX0FETTEwMjYgaXMgbm90IHNldAojIENPTkZJR19TRU5T
T1JTX0FETTEwMjkgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FETTEwMzEgaXMgbm90IHNl
dAojIENPTkZJR19TRU5TT1JTX0FETTExNzcgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FE
TTkyNDAgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FEVDczMTAgaXMgbm90IHNldAojIENP
TkZJR19TRU5TT1JTX0FEVDc0MTAgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FEVDc0MTEg
aXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FEVDc0NjIgaXMgbm90IHNldAojIENPTkZJR19T
RU5TT1JTX0FEVDc0NzAgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FEVDc0NzUgaXMgbm90
IHNldAojIENPTkZJR19TRU5TT1JTX0FIVDEwIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19B
UVVBQ09NUFVURVJfRDVORVhUIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19BUzM3MCBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfQVNDNzYyMSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNP
UlNfQVhJX0ZBTl9DT05UUk9MIGlzIG5vdCBzZXQKQ09ORklHX1NFTlNPUlNfQVJNX1NDTUk9eQpD
T05GSUdfU0VOU09SU19BUk1fU0NQST15CiMgQ09ORklHX1NFTlNPUlNfQVNQRUVEIGlzIG5vdCBz
ZXQKIyBDT05GSUdfU0VOU09SU19BVFhQMSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfQ09S
U0FJUl9DUFJPIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19DT1JTQUlSX1BTVSBpcyBub3Qg
c2V0CiMgQ09ORklHX1NFTlNPUlNfRFJJVkVURU1QIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09S
U19EUzYyMCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfRFMxNjIxIGlzIG5vdCBzZXQKIyBD
T05GSUdfU0VOU09SU19JNUtfQU1CIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19GNzE4MDVG
IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19GNzE4ODJGRyBpcyBub3Qgc2V0CiMgQ09ORklH
X1NFTlNPUlNfRjc1Mzc1UyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfRlRTVEVVVEFURVMg
aXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0dMNTE4U00gaXMgbm90IHNldAojIENPTkZJR19T
RU5TT1JTX0dMNTIwU00gaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0c3NjBBIGlzIG5vdCBz
ZXQKIyBDT05GSUdfU0VOU09SU19HNzYyIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19HUElP
X0ZBTiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfSElINjEzMCBpcyBub3Qgc2V0CiMgQ09O
RklHX1NFTlNPUlNfSUJNQUVNIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19JQk1QRVggaXMg
bm90IHNldAojIENPTkZJR19TRU5TT1JTX0lJT19IV01PTiBpcyBub3Qgc2V0CiMgQ09ORklHX1NF
TlNPUlNfSVQ4NyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfSkM0MiBpcyBub3Qgc2V0CiMg
Q09ORklHX1NFTlNPUlNfUE9XUjEyMjAgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0xJTkVB
R0UgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0xUQzI5NDUgaXMgbm90IHNldAojIENPTkZJ
R19TRU5TT1JTX0xUQzI5NDdfSTJDIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19MVEMyOTQ3
X1NQSSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTFRDMjk5MCBpcyBub3Qgc2V0CiMgQ09O
RklHX1NFTlNPUlNfTFRDMjk5MiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTFRDNDE1MSBp
cyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTFRDNDIxNSBpcyBub3Qgc2V0CiMgQ09ORklHX1NF
TlNPUlNfTFRDNDIyMiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTFRDNDI0NSBpcyBub3Qg
c2V0CiMgQ09ORklHX1NFTlNPUlNfTFRDNDI2MCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNf
TFRDNDI2MSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTUFYMTExMSBpcyBub3Qgc2V0CiMg
Q09ORklHX1NFTlNPUlNfTUFYMTI3IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19NQVgxNjA2
NSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTUFYMTYxOSBpcyBub3Qgc2V0CiMgQ09ORklH
X1NFTlNPUlNfTUFYMTY2OCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTUFYMTk3IGlzIG5v
dCBzZXQKIyBDT05GSUdfU0VOU09SU19NQVgzMTcyMiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNP
UlNfTUFYMzE3MzAgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX01BWDY2MjEgaXMgbm90IHNl
dAojIENPTkZJR19TRU5TT1JTX01BWDY2MzkgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX01B
WDY2NDIgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX01BWDY2NTAgaXMgbm90IHNldAojIENP
TkZJR19TRU5TT1JTX01BWDY2OTcgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX01BWDMxNzkw
IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19NQ1AzMDIxIGlzIG5vdCBzZXQKIyBDT05GSUdf
U0VOU09SU19UQzY1NCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfVFBTMjM4NjEgaXMgbm90
IHNldAojIENPTkZJR19TRU5TT1JTX01SNzUyMDMgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JT
X0FEQ1hYIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19MTTYzIGlzIG5vdCBzZXQKIyBDT05G
SUdfU0VOU09SU19MTTcwIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19MTTczIGlzIG5vdCBz
ZXQKIyBDT05GSUdfU0VOU09SU19MTTc1IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19MTTc3
IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19MTTc4IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VO
U09SU19MTTgwIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19MTTgzIGlzIG5vdCBzZXQKIyBD
T05GSUdfU0VOU09SU19MTTg1IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19MTTg3IGlzIG5v
dCBzZXQKQ09ORklHX1NFTlNPUlNfTE05MD1tCiMgQ09ORklHX1NFTlNPUlNfTE05MiBpcyBub3Qg
c2V0CiMgQ09ORklHX1NFTlNPUlNfTE05MyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTE05
NTIzNCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTE05NTI0MSBpcyBub3Qgc2V0CiMgQ09O
RklHX1NFTlNPUlNfTE05NTI0NSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfUEM4NzM2MCBp
cyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfUEM4NzQyNyBpcyBub3Qgc2V0CiMgQ09ORklHX1NF
TlNPUlNfTlRDX1RIRVJNSVNUT1IgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX05DVDY2ODMg
aXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX05DVDY3NzUgaXMgbm90IHNldAojIENPTkZJR19T
RU5TT1JTX05DVDc4MDIgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX05DVDc5MDQgaXMgbm90
IHNldAojIENPTkZJR19TRU5TT1JTX05QQ003WFggaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JT
X05aWFRfS1JBS0VOMiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfT0NDX1A4X0kyQyBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfUENGODU5MSBpcyBub3Qgc2V0CiMgQ09ORklHX1BNQlVT
IGlzIG5vdCBzZXQKQ09ORklHX1NFTlNPUlNfUFdNX0ZBTj1tCkNPTkZJR19TRU5TT1JTX1JBU1BC
RVJSWVBJX0hXTU9OPW0KQ09ORklHX1NFTlNPUlNfU0wyOENQTEQ9bQojIENPTkZJR19TRU5TT1JT
X1NCVFNJIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19TQlJNSSBpcyBub3Qgc2V0CiMgQ09O
RklHX1NFTlNPUlNfU0hUMTUgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1NIVDIxIGlzIG5v
dCBzZXQKIyBDT05GSUdfU0VOU09SU19TSFQzeCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNf
U0hUNHggaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1NIVEMxIGlzIG5vdCBzZXQKIyBDT05G
SUdfU0VOU09SU19TSVM1NTk1IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19ETUUxNzM3IGlz
IG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19FTUMxNDAzIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VO
U09SU19FTUMyMTAzIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19FTUM2VzIwMSBpcyBub3Qg
c2V0CiMgQ09ORklHX1NFTlNPUlNfU01TQzQ3TTEgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JT
X1NNU0M0N00xOTIgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1NNU0M0N0IzOTcgaXMgbm90
IHNldAojIENPTkZJR19TRU5TT1JTX1NDSDU2MjcgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JT
X1NDSDU2MzYgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1NUVFM3NTEgaXMgbm90IHNldAoj
IENPTkZJR19TRU5TT1JTX1NNTTY2NSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfQURDMTI4
RDgxOCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfQURTNzgyOCBpcyBub3Qgc2V0CiMgQ09O
RklHX1NFTlNPUlNfQURTNzg3MSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfQU1DNjgyMSBp
cyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfSU5BMjA5IGlzIG5vdCBzZXQKQ09ORklHX1NFTlNP
UlNfSU5BMlhYPW0KQ09ORklHX1NFTlNPUlNfSU5BMzIyMT1tCiMgQ09ORklHX1NFTlNPUlNfVEM3
NCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfVEhNQzUwIGlzIG5vdCBzZXQKIyBDT05GSUdf
U0VOU09SU19UTVAxMDIgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1RNUDEwMyBpcyBub3Qg
c2V0CiMgQ09ORklHX1NFTlNPUlNfVE1QMTA4IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19U
TVA0MDEgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1RNUDQyMSBpcyBub3Qgc2V0CiMgQ09O
RklHX1NFTlNPUlNfVE1QNTEzIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19WRVhQUkVTUyBp
cyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfVklBNjg2QSBpcyBub3Qgc2V0CiMgQ09ORklHX1NF
TlNPUlNfVlQxMjExIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19WVDgyMzEgaXMgbm90IHNl
dAojIENPTkZJR19TRU5TT1JTX1c4Mzc3M0cgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1c4
Mzc4MUQgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1c4Mzc5MUQgaXMgbm90IHNldAojIENP
TkZJR19TRU5TT1JTX1c4Mzc5MkQgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1c4Mzc5MyBp
cyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfVzgzNzk1IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VO
U09SU19XODNMNzg1VFMgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1c4M0w3ODZORyBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfVzgzNjI3SEYgaXMgbm90IHNldAojIENPTkZJR19TRU5T
T1JTX1c4MzYyN0VIRiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfWEdFTkUgaXMgbm90IHNl
dAoKIwojIEFDUEkgZHJpdmVycwojCiMgQ09ORklHX1NFTlNPUlNfQUNQSV9QT1dFUiBpcyBub3Qg
c2V0CkNPTkZJR19USEVSTUFMPXkKIyBDT05GSUdfVEhFUk1BTF9ORVRMSU5LIGlzIG5vdCBzZXQK
IyBDT05GSUdfVEhFUk1BTF9TVEFUSVNUSUNTIGlzIG5vdCBzZXQKQ09ORklHX1RIRVJNQUxfRU1F
UkdFTkNZX1BPV0VST0ZGX0RFTEFZX01TPTAKQ09ORklHX1RIRVJNQUxfSFdNT049eQpDT05GSUdf
VEhFUk1BTF9PRj15CiMgQ09ORklHX1RIRVJNQUxfV1JJVEFCTEVfVFJJUFMgaXMgbm90IHNldApD
T05GSUdfVEhFUk1BTF9ERUZBVUxUX0dPVl9TVEVQX1dJU0U9eQojIENPTkZJR19USEVSTUFMX0RF
RkFVTFRfR09WX0ZBSVJfU0hBUkUgaXMgbm90IHNldAojIENPTkZJR19USEVSTUFMX0RFRkFVTFRf
R09WX1VTRVJfU1BBQ0UgaXMgbm90IHNldAojIENPTkZJR19USEVSTUFMX0RFRkFVTFRfR09WX1BP
V0VSX0FMTE9DQVRPUiBpcyBub3Qgc2V0CiMgQ09ORklHX1RIRVJNQUxfR09WX0ZBSVJfU0hBUkUg
aXMgbm90IHNldApDT05GSUdfVEhFUk1BTF9HT1ZfU1RFUF9XSVNFPXkKIyBDT05GSUdfVEhFUk1B
TF9HT1ZfQkFOR19CQU5HIGlzIG5vdCBzZXQKIyBDT05GSUdfVEhFUk1BTF9HT1ZfVVNFUl9TUEFD
RSBpcyBub3Qgc2V0CkNPTkZJR19USEVSTUFMX0dPVl9QT1dFUl9BTExPQ0FUT1I9eQpDT05GSUdf
Q1BVX1RIRVJNQUw9eQpDT05GSUdfQ1BVX0ZSRVFfVEhFUk1BTD15CiMgQ09ORklHX0RFVkZSRVFf
VEhFUk1BTCBpcyBub3Qgc2V0CkNPTkZJR19USEVSTUFMX0VNVUxBVElPTj15CiMgQ09ORklHX1RI
RVJNQUxfTU1JTyBpcyBub3Qgc2V0CkNPTkZJR19ISVNJX1RIRVJNQUw9eQojIENPTkZJR19JTVhf
VEhFUk1BTCBpcyBub3Qgc2V0CkNPTkZJR19JTVhfU0NfVEhFUk1BTD1tCkNPTkZJR19JTVg4TU1f
VEhFUk1BTD1tCiMgQ09ORklHX0szX1RIRVJNQUwgaXMgbm90IHNldAojIENPTkZJR19NQVg3NzYy
MF9USEVSTUFMIGlzIG5vdCBzZXQKQ09ORklHX1FPUklRX1RIRVJNQUw9bQpDT05GSUdfU1VOOElf
VEhFUk1BTD15CkNPTkZJR19ST0NLQ0hJUF9USEVSTUFMPW0KQ09ORklHX1JDQVJfVEhFUk1BTD15
CkNPTkZJR19SQ0FSX0dFTjNfVEhFUk1BTD15CkNPTkZJR19BUk1BREFfVEhFUk1BTD15CkNPTkZJ
R19NVEtfVEhFUk1BTD15CkNPTkZJR19BTUxPR0lDX1RIRVJNQUw9eQoKIwojIEJyb2FkY29tIHRo
ZXJtYWwgZHJpdmVycwojCkNPTkZJR19CQ00yNzExX1RIRVJNQUw9bQpDT05GSUdfQkNNMjgzNV9U
SEVSTUFMPW0KQ09ORklHX0JSQ01TVEJfVEhFUk1BTD1tCkNPTkZJR19CQ01fTlNfVEhFUk1BTD15
CkNPTkZJR19CQ01fU1JfVEhFUk1BTD15CiMgZW5kIG9mIEJyb2FkY29tIHRoZXJtYWwgZHJpdmVy
cwoKIwojIFNhbXN1bmcgdGhlcm1hbCBkcml2ZXJzCiMKQ09ORklHX0VYWU5PU19USEVSTUFMPXkK
IyBlbmQgb2YgU2Ftc3VuZyB0aGVybWFsIGRyaXZlcnMKCiMKIyBOVklESUEgVGVncmEgdGhlcm1h
bCBkcml2ZXJzCiMKQ09ORklHX1RFR1JBX1NPQ1RIRVJNPW0KQ09ORklHX1RFR1JBX0JQTVBfVEhF
Uk1BTD1tCiMgZW5kIG9mIE5WSURJQSBUZWdyYSB0aGVybWFsIGRyaXZlcnMKCiMgQ09ORklHX0dF
TkVSSUNfQURDX1RIRVJNQUwgaXMgbm90IHNldAoKIwojIFF1YWxjb21tIHRoZXJtYWwgZHJpdmVy
cwojCkNPTkZJR19RQ09NX1RTRU5TPXkKIyBDT05GSUdfUUNPTV9TUE1JX0FEQ19UTTUgaXMgbm90
IHNldApDT05GSUdfUUNPTV9TUE1JX1RFTVBfQUxBUk09bQojIENPTkZJR19RQ09NX0xNSCBpcyBu
b3Qgc2V0CiMgZW5kIG9mIFF1YWxjb21tIHRoZXJtYWwgZHJpdmVycwoKQ09ORklHX1VOSVBISUVS
X1RIRVJNQUw9eQojIENPTkZJR19TUFJEX1RIRVJNQUwgaXMgbm90IHNldApDT05GSUdfV0FUQ0hE
T0c9eQpDT05GSUdfV0FUQ0hET0dfQ09SRT15CiMgQ09ORklHX1dBVENIRE9HX05PV0FZT1VUIGlz
IG5vdCBzZXQKQ09ORklHX1dBVENIRE9HX0hBTkRMRV9CT09UX0VOQUJMRUQ9eQpDT05GSUdfV0FU
Q0hET0dfT1BFTl9USU1FT1VUPTAKIyBDT05GSUdfV0FUQ0hET0dfU1lTRlMgaXMgbm90IHNldAoj
IENPTkZJR19XQVRDSERPR19IUlRJTUVSX1BSRVRJTUVPVVQgaXMgbm90IHNldAoKIwojIFdhdGNo
ZG9nIFByZXRpbWVvdXQgR292ZXJub3JzCiMKIyBDT05GSUdfV0FUQ0hET0dfUFJFVElNRU9VVF9H
T1YgaXMgbm90IHNldAoKIwojIFdhdGNoZG9nIERldmljZSBEcml2ZXJzCiMKQ09ORklHX1NPRlRf
V0FUQ0hET0c9bQojIENPTkZJR19HUElPX1dBVENIRE9HIGlzIG5vdCBzZXQKIyBDT05GSUdfV0RB
VF9XRFQgaXMgbm90IHNldAojIENPTkZJR19YSUxJTlhfV0FUQ0hET0cgaXMgbm90IHNldAojIENP
TkZJR19aSUlSQVZFX1dBVENIRE9HIGlzIG5vdCBzZXQKQ09ORklHX1NMMjhDUExEX1dBVENIRE9H
PW0KQ09ORklHX0FSTV9TUDgwNV9XQVRDSERPRz15CkNPTkZJR19BUk1fU0JTQV9XQVRDSERPRz15
CiMgQ09ORklHX0FSTUFEQV8zN1hYX1dBVENIRE9HIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0FERU5D
RV9XQVRDSERPRyBpcyBub3Qgc2V0CkNPTkZJR19TM0MyNDEwX1dBVENIRE9HPXkKQ09ORklHX0RX
X1dBVENIRE9HPXkKIyBDT05GSUdfSzNfUlRJX1dBVENIRE9HIGlzIG5vdCBzZXQKQ09ORklHX1NV
TlhJX1dBVENIRE9HPW0KIyBDT05GSUdfTUFYNjNYWF9XQVRDSERPRyBpcyBub3Qgc2V0CiMgQ09O
RklHX01BWDc3NjIwX1dBVENIRE9HIGlzIG5vdCBzZXQKQ09ORklHX0lNWDJfV0RUPXkKQ09ORklH
X0lNWF9TQ19XRFQ9bQojIENPTkZJR19JTVg3VUxQX1dEVCBpcyBub3Qgc2V0CiMgQ09ORklHX1RF
R1JBX1dBVENIRE9HIGlzIG5vdCBzZXQKQ09ORklHX1FDT01fV0RUPW0KQ09ORklHX01FU09OX0dY
QkJfV0FUQ0hET0c9bQpDT05GSUdfTUVTT05fV0FUQ0hET0c9bQojIENPTkZJR19NRURJQVRFS19X
QVRDSERPRyBpcyBub3Qgc2V0CkNPTkZJR19BUk1fU01DX1dBVENIRE9HPXkKQ09ORklHX1JFTkVT
QVNfV0RUPXkKIyBDT05GSUdfUkVORVNBU19SWkFXRFQgaXMgbm90IHNldApDT05GSUdfVU5JUEhJ
RVJfV0FUQ0hET0c9eQojIENPTkZJR19TUFJEX1dBVENIRE9HIGlzIG5vdCBzZXQKIyBDT05GSUdf
UE04OTE2X1dBVENIRE9HIGlzIG5vdCBzZXQKIyBDT05GSUdfVklTQ09OVElfV0FUQ0hET0cgaXMg
bm90IHNldAojIENPTkZJR19BTElNNzEwMV9XRFQgaXMgbm90IHNldAojIENPTkZJR19JNjMwMEVT
Ql9XRFQgaXMgbm90IHNldApDT05GSUdfQkNNMjgzNV9XRFQ9eQojIENPTkZJR19CQ003MDM4X1dE
VCBpcyBub3Qgc2V0CiMgQ09ORklHX01FTl9BMjFfV0RUIGlzIG5vdCBzZXQKQ09ORklHX1hFTl9X
RFQ9bQoKIwojIFBDSS1iYXNlZCBXYXRjaGRvZyBDYXJkcwojCiMgQ09ORklHX1BDSVBDV0FUQ0hE
T0cgaXMgbm90IHNldAojIENPTkZJR19XRFRQQ0kgaXMgbm90IHNldAoKIwojIFVTQi1iYXNlZCBX
YXRjaGRvZyBDYXJkcwojCiMgQ09ORklHX1VTQlBDV0FUQ0hET0cgaXMgbm90IHNldAojIENPTkZJ
R19LRUVNQkFZX1dBVENIRE9HIGlzIG5vdCBzZXQKQ09ORklHX1NTQl9QT1NTSUJMRT15CiMgQ09O
RklHX1NTQiBpcyBub3Qgc2V0CkNPTkZJR19CQ01BX1BPU1NJQkxFPXkKIyBDT05GSUdfQkNNQSBp
cyBub3Qgc2V0CgojCiMgTXVsdGlmdW5jdGlvbiBkZXZpY2UgZHJpdmVycwojCkNPTkZJR19NRkRf
Q09SRT15CiMgQ09ORklHX01GRF9BTFRFUkFfQTEwU1IgaXMgbm90IHNldApDT05GSUdfTUZEX0FM
VEVSQV9TWVNNR1I9eQojIENPTkZJR19NRkRfQUNUODk0NUEgaXMgbm90IHNldAojIENPTkZJR19N
RkRfU1VONElfR1BBREMgaXMgbm90IHNldAojIENPTkZJR19NRkRfQVMzNzExIGlzIG5vdCBzZXQK
IyBDT05GSUdfTUZEX0FTMzcyMiBpcyBub3Qgc2V0CiMgQ09ORklHX1BNSUNfQURQNTUyMCBpcyBu
b3Qgc2V0CiMgQ09ORklHX01GRF9BQVQyODcwX0NPUkUgaXMgbm90IHNldAojIENPTkZJR19NRkRf
QVRNRUxfRkxFWENPTSBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9BVE1FTF9ITENEQyBpcyBub3Qg
c2V0CiMgQ09ORklHX01GRF9CQ001OTBYWCBpcyBub3Qgc2V0CkNPTkZJR19NRkRfQkQ5NTcxTVdW
PXkKIyBDT05GSUdfTUZEX0FDMTAwIGlzIG5vdCBzZXQKQ09ORklHX01GRF9BWFAyMFg9eQpDT05G
SUdfTUZEX0FYUDIwWF9JMkM9eQpDT05GSUdfTUZEX0FYUDIwWF9SU0I9eQpDT05GSUdfTUZEX0NS
T1NfRUNfREVWPXkKIyBDT05GSUdfTUZEX01BREVSQSBpcyBub3Qgc2V0CiMgQ09ORklHX1BNSUNf
REE5MDNYIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX0RBOTA1Ml9TUEkgaXMgbm90IHNldAojIENP
TkZJR19NRkRfREE5MDUyX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9EQTkwNTUgaXMgbm90
IHNldAojIENPTkZJR19NRkRfREE5MDYyIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX0RBOTA2MyBp
cyBub3Qgc2V0CiMgQ09ORklHX01GRF9EQTkxNTAgaXMgbm90IHNldAojIENPTkZJR19NRkRfRExO
MiBpcyBub3Qgc2V0CkNPTkZJR19NRkRfRVhZTk9TX0xQQVNTPW0KIyBDT05GSUdfTUZEX0dBVEVX
T1JLU19HU0MgaXMgbm90IHNldAojIENPTkZJR19NRkRfTUMxM1hYWF9TUEkgaXMgbm90IHNldAoj
IENPTkZJR19NRkRfTUMxM1hYWF9JMkMgaXMgbm90IHNldAojIENPTkZJR19NRkRfTVAyNjI5IGlz
IG5vdCBzZXQKQ09ORklHX01GRF9ISTY0MjFfUE1JQz15CiMgQ09ORklHX01GRF9ISTY0MjFfU1BN
SSBpcyBub3Qgc2V0CkNPTkZJR19NRkRfSEk2NTVYX1BNSUM9eQojIENPTkZJR19IVENfUEFTSUMz
IGlzIG5vdCBzZXQKIyBDT05GSUdfSFRDX0kyQ1BMRCBpcyBub3Qgc2V0CiMgQ09ORklHX0xQQ19J
Q0ggaXMgbm90IHNldAojIENPTkZJR19MUENfU0NIIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX0lO
VEVMX1BNVCBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9JUVM2MlggaXMgbm90IHNldAojIENPTkZJ
R19NRkRfSkFOWl9DTU9ESU8gaXMgbm90IHNldAojIENPTkZJR19NRkRfS0VNUExEIGlzIG5vdCBz
ZXQKIyBDT05GSUdfTUZEXzg4UE04MDAgaXMgbm90IHNldAojIENPTkZJR19NRkRfODhQTTgwNSBp
cyBub3Qgc2V0CiMgQ09ORklHX01GRF84OFBNODYwWCBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9N
QVgxNDU3NyBpcyBub3Qgc2V0CkNPTkZJR19NRkRfTUFYNzc2MjA9eQojIENPTkZJR19NRkRfTUFY
Nzc2NTAgaXMgbm90IHNldAojIENPTkZJR19NRkRfTUFYNzc2ODYgaXMgbm90IHNldAojIENPTkZJ
R19NRkRfTUFYNzc2OTMgaXMgbm90IHNldAojIENPTkZJR19NRkRfTUFYNzc4NDMgaXMgbm90IHNl
dAojIENPTkZJR19NRkRfTUFYODkwNyBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9NQVg4OTI1IGlz
IG5vdCBzZXQKIyBDT05GSUdfTUZEX01BWDg5OTcgaXMgbm90IHNldAojIENPTkZJR19NRkRfTUFY
ODk5OCBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9NVDYzNjAgaXMgbm90IHNldApDT05GSUdfTUZE
X01UNjM5Nz15CiMgQ09ORklHX01GRF9NRU5GMjFCTUMgaXMgbm90IHNldAojIENPTkZJR19FWlhf
UENBUCBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9DUENBUCBpcyBub3Qgc2V0CiMgQ09ORklHX01G
RF9WSVBFUkJPQVJEIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX05UWEVDIGlzIG5vdCBzZXQKIyBD
T05GSUdfTUZEX1JFVFUgaXMgbm90IHNldAojIENPTkZJR19NRkRfUENGNTA2MzMgaXMgbm90IHNl
dAojIENPTkZJR19NRkRfUUNPTV9SUE0gaXMgbm90IHNldApDT05GSUdfTUZEX1NQTUlfUE1JQz15
CiMgQ09ORklHX01GRF9SREMzMjFYIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1JUNDgzMSBpcyBu
b3Qgc2V0CiMgQ09ORklHX01GRF9SVDUwMzMgaXMgbm90IHNldAojIENPTkZJR19NRkRfUkM1VDU4
MyBpcyBub3Qgc2V0CkNPTkZJR19NRkRfUks4MDg9eQojIENPTkZJR19NRkRfUk41VDYxOCBpcyBu
b3Qgc2V0CkNPTkZJR19NRkRfU0VDX0NPUkU9eQojIENPTkZJR19NRkRfU0k0NzZYX0NPUkUgaXMg
bm90IHNldApDT05GSUdfTUZEX1NJTVBMRV9NRkRfSTJDPXkKQ09ORklHX01GRF9TTDI4Q1BMRD15
CiMgQ09ORklHX01GRF9TTTUwMSBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9TS1k4MTQ1MiBpcyBu
b3Qgc2V0CiMgQ09ORklHX01GRF9TQzI3WFhfUE1JQyBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9T
VE1QRSBpcyBub3Qgc2V0CkNPTkZJR19NRkRfU1VONklfUFJDTT15CkNPTkZJR19NRkRfU1lTQ09O
PXkKIyBDT05GSUdfTUZEX1RJX0FNMzM1WF9UU0NBREMgaXMgbm90IHNldAojIENPTkZJR19NRkRf
TFAzOTQzIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX0xQODc4OCBpcyBub3Qgc2V0CiMgQ09ORklH
X01GRF9USV9MTVUgaXMgbm90IHNldAojIENPTkZJR19NRkRfUEFMTUFTIGlzIG5vdCBzZXQKIyBD
T05GSUdfVFBTNjEwNVggaXMgbm90IHNldAojIENPTkZJR19UUFM2NTAxMCBpcyBub3Qgc2V0CiMg
Q09ORklHX1RQUzY1MDdYIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1RQUzY1MDg2IGlzIG5vdCBz
ZXQKIyBDT05GSUdfTUZEX1RQUzY1MDkwIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1RQUzY1MjE3
IGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1RJX0xQODczWCBpcyBub3Qgc2V0CiMgQ09ORklHX01G
RF9USV9MUDg3NTY1IGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1RQUzY1MjE4IGlzIG5vdCBzZXQK
IyBDT05GSUdfTUZEX1RQUzY1ODZYIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1RQUzY1OTEwIGlz
IG5vdCBzZXQKIyBDT05GSUdfTUZEX1RQUzY1OTEyX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX01G
RF9UUFM2NTkxMl9TUEkgaXMgbm90IHNldAojIENPTkZJR19NRkRfVFBTODAwMzEgaXMgbm90IHNl
dAojIENPTkZJR19UV0w0MDMwX0NPUkUgaXMgbm90IHNldAojIENPTkZJR19UV0w2MDQwX0NPUkUg
aXMgbm90IHNldAojIENPTkZJR19NRkRfV0wxMjczX0NPUkUgaXMgbm90IHNldAojIENPTkZJR19N
RkRfTE0zNTMzIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1RDMzU4OVggaXMgbm90IHNldAojIENP
TkZJR19NRkRfVFFNWDg2IGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1ZYODU1IGlzIG5vdCBzZXQK
IyBDT05GSUdfTUZEX0xPQ0hOQUdBUiBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9BUklaT05BX0ky
QyBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9BUklaT05BX1NQSSBpcyBub3Qgc2V0CiMgQ09ORklH
X01GRF9XTTg0MDAgaXMgbm90IHNldAojIENPTkZJR19NRkRfV004MzFYX0kyQyBpcyBub3Qgc2V0
CiMgQ09ORklHX01GRF9XTTgzMVhfU1BJIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1dNODM1MF9J
MkMgaXMgbm90IHNldApDT05GSUdfTUZEX1dNODk5ND1tCkNPTkZJR19NRkRfUk9ITV9CRDcxOFhY
PXkKIyBDT05GSUdfTUZEX1JPSE1fQkQ3MDUyOCBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9ST0hN
X0JENzE4MjggaXMgbm90IHNldAojIENPTkZJR19NRkRfUk9ITV9CRDk1N1hNVUYgaXMgbm90IHNl
dAojIENPTkZJR19NRkRfU1RQTUlDMSBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9TVE1GWCBpcyBu
b3Qgc2V0CkNPTkZJR19NRkRfV0NEOTM0WD1tCiMgQ09ORklHX01GRF9BVEMyNjBYX0kyQyBpcyBu
b3Qgc2V0CiMgQ09ORklHX01GRF9LSEFEQVNfTUNVIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1FD
T01fUE04MDA4IGlzIG5vdCBzZXQKQ09ORklHX01GRF9WRVhQUkVTU19TWVNSRUc9eQojIENPTkZJ
R19SQVZFX1NQX0NPUkUgaXMgbm90IHNldAojIENPTkZJR19NRkRfSU5URUxfTTEwX0JNQyBpcyBu
b3Qgc2V0CiMgQ09ORklHX01GRF9SU01VX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9SU01V
X1NQSSBpcyBub3Qgc2V0CiMgZW5kIG9mIE11bHRpZnVuY3Rpb24gZGV2aWNlIGRyaXZlcnMKCkNP
TkZJR19SRUdVTEFUT1I9eQojIENPTkZJR19SRUdVTEFUT1JfREVCVUcgaXMgbm90IHNldApDT05G
SUdfUkVHVUxBVE9SX0ZJWEVEX1ZPTFRBR0U9eQojIENPTkZJR19SRUdVTEFUT1JfVklSVFVBTF9D
T05TVU1FUiBpcyBub3Qgc2V0CiMgQ09ORklHX1JFR1VMQVRPUl9VU0VSU1BBQ0VfQ09OU1VNRVIg
aXMgbm90IHNldAojIENPTkZJR19SRUdVTEFUT1JfODhQRzg2WCBpcyBub3Qgc2V0CiMgQ09ORklH
X1JFR1VMQVRPUl9BQ1Q4ODY1IGlzIG5vdCBzZXQKIyBDT05GSUdfUkVHVUxBVE9SX0FENTM5OCBp
cyBub3Qgc2V0CiMgQ09ORklHX1JFR1VMQVRPUl9BTkFUT1AgaXMgbm90IHNldAojIENPTkZJR19S
RUdVTEFUT1JfQVJNX1NDTUkgaXMgbm90IHNldApDT05GSUdfUkVHVUxBVE9SX0FYUDIwWD15CkNP
TkZJR19SRUdVTEFUT1JfQkQ3MThYWD15CkNPTkZJR19SRUdVTEFUT1JfQkQ5NTcxTVdWPXkKIyBD
T05GSUdfUkVHVUxBVE9SX0NST1NfRUMgaXMgbm90IHNldAojIENPTkZJR19SRUdVTEFUT1JfREE5
MTIxIGlzIG5vdCBzZXQKIyBDT05GSUdfUkVHVUxBVE9SX0RBOTIxMCBpcyBub3Qgc2V0CiMgQ09O
RklHX1JFR1VMQVRPUl9EQTkyMTEgaXMgbm90IHNldApDT05GSUdfUkVHVUxBVE9SX0ZBTjUzNTU1
PXkKIyBDT05GSUdfUkVHVUxBVE9SX0ZBTjUzODgwIGlzIG5vdCBzZXQKQ09ORklHX1JFR1VMQVRP
Ul9HUElPPXkKIyBDT05GSUdfUkVHVUxBVE9SX0hJNjQyMSBpcyBub3Qgc2V0CkNPTkZJR19SRUdV
TEFUT1JfSEk2NDIxVjUzMD15CkNPTkZJR19SRUdVTEFUT1JfSEk2NTVYPXkKIyBDT05GSUdfUkVH
VUxBVE9SX0lTTDkzMDUgaXMgbm90IHNldAojIENPTkZJR19SRUdVTEFUT1JfSVNMNjI3MUEgaXMg
bm90IHNldAojIENPTkZJR19SRUdVTEFUT1JfTFAzOTcxIGlzIG5vdCBzZXQKIyBDT05GSUdfUkVH
VUxBVE9SX0xQMzk3MiBpcyBub3Qgc2V0CiMgQ09ORklHX1JFR1VMQVRPUl9MUDg3MlggaXMgbm90
IHNldAojIENPTkZJR19SRUdVTEFUT1JfTFA4NzU1IGlzIG5vdCBzZXQKIyBDT05GSUdfUkVHVUxB
VE9SX0xUQzM1ODkgaXMgbm90IHNldAojIENPTkZJR19SRUdVTEFUT1JfTFRDMzY3NiBpcyBub3Qg
c2V0CiMgQ09ORklHX1JFR1VMQVRPUl9NQVgxNTg2IGlzIG5vdCBzZXQKQ09ORklHX1JFR1VMQVRP
Ul9NQVg3NzYyMD15CiMgQ09ORklHX1JFR1VMQVRPUl9NQVg4NjQ5IGlzIG5vdCBzZXQKIyBDT05G
SUdfUkVHVUxBVE9SX01BWDg2NjAgaXMgbm90IHNldAojIENPTkZJR19SRUdVTEFUT1JfTUFYODg5
MyBpcyBub3Qgc2V0CiMgQ09ORklHX1JFR1VMQVRPUl9NQVg4OTUyIGlzIG5vdCBzZXQKQ09ORklH
X1JFR1VMQVRPUl9NQVg4OTczPXkKIyBDT05GSUdfUkVHVUxBVE9SX01BWDc3ODI2IGlzIG5vdCBz
ZXQKIyBDT05GSUdfUkVHVUxBVE9SX01DUDE2NTAyIGlzIG5vdCBzZXQKIyBDT05GSUdfUkVHVUxB
VE9SX01QNTQxNiBpcyBub3Qgc2V0CkNPTkZJR19SRUdVTEFUT1JfTVA4ODU5PXkKIyBDT05GSUdf
UkVHVUxBVE9SX01QODg2WCBpcyBub3Qgc2V0CiMgQ09ORklHX1JFR1VMQVRPUl9NUFE3OTIwIGlz
IG5vdCBzZXQKIyBDT05GSUdfUkVHVUxBVE9SX01UNjMxMSBpcyBub3Qgc2V0CiMgQ09ORklHX1JF
R1VMQVRPUl9NVDYzMTUgaXMgbm90IHNldAojIENPTkZJR19SRUdVTEFUT1JfTVQ2MzIzIGlzIG5v
dCBzZXQKQ09ORklHX1JFR1VMQVRPUl9NVDYzNTg9eQojIENPTkZJR19SRUdVTEFUT1JfTVQ2MzU5
IGlzIG5vdCBzZXQKIyBDT05GSUdfUkVHVUxBVE9SX01UNjM4MCBpcyBub3Qgc2V0CkNPTkZJR19S
RUdVTEFUT1JfTVQ2Mzk3PXkKQ09ORklHX1JFR1VMQVRPUl9QQ0E5NDUwPXkKQ09ORklHX1JFR1VM
QVRPUl9QRjhYMDA9eQpDT05GSUdfUkVHVUxBVE9SX1BGVVpFMTAwPXkKIyBDT05GSUdfUkVHVUxB
VE9SX1BWODgwNjAgaXMgbm90IHNldAojIENPTkZJR19SRUdVTEFUT1JfUFY4ODA4MCBpcyBub3Qg
c2V0CiMgQ09ORklHX1JFR1VMQVRPUl9QVjg4MDkwIGlzIG5vdCBzZXQKQ09ORklHX1JFR1VMQVRP
Ul9QV009eQpDT05GSUdfUkVHVUxBVE9SX1FDT01fUlBNSD15CkNPTkZJR19SRUdVTEFUT1JfUUNP
TV9TTURfUlBNPXkKQ09ORklHX1JFR1VMQVRPUl9RQ09NX1NQTUk9eQojIENPTkZJR19SRUdVTEFU
T1JfUUNPTV9VU0JfVkJVUyBpcyBub3Qgc2V0CiMgQ09ORklHX1JFR1VMQVRPUl9SQVNQQkVSUllQ
SV9UT1VDSFNDUkVFTl9BVFRJTlkgaXMgbm90IHNldApDT05GSUdfUkVHVUxBVE9SX1JLODA4PXkK
Q09ORklHX1JFR1VMQVRPUl9ST0hNPXkKIyBDT05GSUdfUkVHVUxBVE9SX1JUNDgwMSBpcyBub3Qg
c2V0CiMgQ09ORklHX1JFR1VMQVRPUl9SVDYxNjAgaXMgbm90IHNldAojIENPTkZJR19SRUdVTEFU
T1JfUlQ2MjQ1IGlzIG5vdCBzZXQKIyBDT05GSUdfUkVHVUxBVE9SX1JUUTIxMzQgaXMgbm90IHNl
dAojIENPTkZJR19SRUdVTEFUT1JfUlRNVjIwIGlzIG5vdCBzZXQKIyBDT05GSUdfUkVHVUxBVE9S
X1JUUTY3NTIgaXMgbm90IHNldAojIENPTkZJR19SRUdVTEFUT1JfUzJNUEEwMSBpcyBub3Qgc2V0
CkNPTkZJR19SRUdVTEFUT1JfUzJNUFMxMT15CiMgQ09ORklHX1JFR1VMQVRPUl9TNU04NzY3IGlz
IG5vdCBzZXQKIyBDT05GSUdfUkVHVUxBVE9SX1NMRzUxMDAwIGlzIG5vdCBzZXQKIyBDT05GSUdf
UkVHVUxBVE9SX1NZODEwNkEgaXMgbm90IHNldAojIENPTkZJR19SRUdVTEFUT1JfU1k4ODI0WCBp
cyBub3Qgc2V0CiMgQ09ORklHX1JFR1VMQVRPUl9TWTg4MjdOIGlzIG5vdCBzZXQKIyBDT05GSUdf
UkVHVUxBVE9SX1RQUzUxNjMyIGlzIG5vdCBzZXQKIyBDT05GSUdfUkVHVUxBVE9SX1RQUzYyMzYw
IGlzIG5vdCBzZXQKIyBDT05GSUdfUkVHVUxBVE9SX1RQUzY1MDIzIGlzIG5vdCBzZXQKIyBDT05G
SUdfUkVHVUxBVE9SX1RQUzY1MDdYIGlzIG5vdCBzZXQKQ09ORklHX1JFR1VMQVRPUl9UUFM2NTEz
Mj1tCiMgQ09ORklHX1JFR1VMQVRPUl9UUFM2NTI0WCBpcyBub3Qgc2V0CkNPTkZJR19SRUdVTEFU
T1JfVU5JUEhJRVI9eQpDT05GSUdfUkVHVUxBVE9SX1ZDVFJMPW0KIyBDT05GSUdfUkVHVUxBVE9S
X1ZFWFBSRVNTIGlzIG5vdCBzZXQKIyBDT05GSUdfUkVHVUxBVE9SX1ZRTU1DX0lQUTQwMTkgaXMg
bm90IHNldAojIENPTkZJR19SRUdVTEFUT1JfV004OTk0IGlzIG5vdCBzZXQKIyBDT05GSUdfUkVH
VUxBVE9SX1FDT01fTEFCSUJCIGlzIG5vdCBzZXQKQ09ORklHX1JDX0NPUkU9bQpDT05GSUdfUkNf
TUFQPW0KIyBDT05GSUdfTElSQyBpcyBub3Qgc2V0CkNPTkZJR19SQ19ERUNPREVSUz15CiMgQ09O
RklHX0lSX05FQ19ERUNPREVSIGlzIG5vdCBzZXQKIyBDT05GSUdfSVJfUkM1X0RFQ09ERVIgaXMg
bm90IHNldAojIENPTkZJR19JUl9SQzZfREVDT0RFUiBpcyBub3Qgc2V0CiMgQ09ORklHX0lSX0pW
Q19ERUNPREVSIGlzIG5vdCBzZXQKIyBDT05GSUdfSVJfU09OWV9ERUNPREVSIGlzIG5vdCBzZXQK
IyBDT05GSUdfSVJfU0FOWU9fREVDT0RFUiBpcyBub3Qgc2V0CiMgQ09ORklHX0lSX1NIQVJQX0RF
Q09ERVIgaXMgbm90IHNldAojIENPTkZJR19JUl9NQ0VfS0JEX0RFQ09ERVIgaXMgbm90IHNldAoj
IENPTkZJR19JUl9YTVBfREVDT0RFUiBpcyBub3Qgc2V0CiMgQ09ORklHX0lSX0lNT05fREVDT0RF
UiBpcyBub3Qgc2V0CiMgQ09ORklHX0lSX1JDTU1fREVDT0RFUiBpcyBub3Qgc2V0CkNPTkZJR19S
Q19ERVZJQ0VTPXkKIyBDT05GSUdfUkNfQVRJX1JFTU9URSBpcyBub3Qgc2V0CiMgQ09ORklHX0lS
X0VORSBpcyBub3Qgc2V0CiMgQ09ORklHX0lSX0hJWDVIRDIgaXMgbm90IHNldAojIENPTkZJR19J
Ul9JTU9OIGlzIG5vdCBzZXQKIyBDT05GSUdfSVJfSU1PTl9SQVcgaXMgbm90IHNldAojIENPTkZJ
R19JUl9NQ0VVU0IgaXMgbm90IHNldAojIENPTkZJR19JUl9JVEVfQ0lSIGlzIG5vdCBzZXQKIyBD
T05GSUdfSVJfRklOVEVLIGlzIG5vdCBzZXQKQ09ORklHX0lSX01FU09OPW0KIyBDT05GSUdfSVJf
TUVTT05fVFggaXMgbm90IHNldAojIENPTkZJR19JUl9NVEsgaXMgbm90IHNldAojIENPTkZJR19J
Ul9OVVZPVE9OIGlzIG5vdCBzZXQKIyBDT05GSUdfSVJfUkVEUkFUMyBpcyBub3Qgc2V0CiMgQ09O
RklHX0lSX1NUUkVBTVpBUCBpcyBub3Qgc2V0CiMgQ09ORklHX0lSX0lHT1JQTFVHVVNCIGlzIG5v
dCBzZXQKIyBDT05GSUdfSVJfSUdVQU5BIGlzIG5vdCBzZXQKIyBDT05GSUdfSVJfVFRVU0JJUiBp
cyBub3Qgc2V0CiMgQ09ORklHX1JDX0xPT1BCQUNLIGlzIG5vdCBzZXQKIyBDT05GSUdfSVJfR1BJ
T19DSVIgaXMgbm90IHNldApDT05GSUdfSVJfU1VOWEk9bQojIENPTkZJR19JUl9TRVJJQUwgaXMg
bm90IHNldAojIENPTkZJR19JUl9TSVIgaXMgbm90IHNldAojIENPTkZJR19SQ19YQk9YX0RWRCBp
cyBub3Qgc2V0CiMgQ09ORklHX0lSX1RPWSBpcyBub3Qgc2V0CkNPTkZJR19DRUNfQ09SRT1tCkNP
TkZJR19DRUNfTk9USUZJRVI9eQojIENPTkZJR19NRURJQV9DRUNfUkMgaXMgbm90IHNldAojIENP
TkZJR19NRURJQV9DRUNfU1VQUE9SVCBpcyBub3Qgc2V0CkNPTkZJR19NRURJQV9TVVBQT1JUPW0K
Q09ORklHX01FRElBX1NVUFBPUlRfRklMVEVSPXkKQ09ORklHX01FRElBX1NVQkRSVl9BVVRPU0VM
RUNUPXkKCiMKIyBNZWRpYSBkZXZpY2UgdHlwZXMKIwpDT05GSUdfTUVESUFfQ0FNRVJBX1NVUFBP
UlQ9eQpDT05GSUdfTUVESUFfQU5BTE9HX1RWX1NVUFBPUlQ9eQpDT05GSUdfTUVESUFfRElHSVRB
TF9UVl9TVVBQT1JUPXkKIyBDT05GSUdfTUVESUFfUkFESU9fU1VQUE9SVCBpcyBub3Qgc2V0CkNP
TkZJR19NRURJQV9TRFJfU1VQUE9SVD15CkNPTkZJR19NRURJQV9QTEFURk9STV9TVVBQT1JUPXkK
IyBDT05GSUdfTUVESUFfVEVTVF9TVVBQT1JUIGlzIG5vdCBzZXQKIyBlbmQgb2YgTWVkaWEgZGV2
aWNlIHR5cGVzCgpDT05GSUdfVklERU9fREVWPW0KQ09ORklHX01FRElBX0NPTlRST0xMRVI9eQpD
T05GSUdfRFZCX0NPUkU9bQoKIwojIFZpZGVvNExpbnV4IG9wdGlvbnMKIwpDT05GSUdfVklERU9f
VjRMMj1tCkNPTkZJR19WSURFT19WNEwyX0kyQz15CkNPTkZJR19WSURFT19WNEwyX1NVQkRFVl9B
UEk9eQojIENPTkZJR19WSURFT19BRFZfREVCVUcgaXMgbm90IHNldAojIENPTkZJR19WSURFT19G
SVhFRF9NSU5PUl9SQU5HRVMgaXMgbm90IHNldApDT05GSUdfVjRMMl9IMjY0PW0KQ09ORklHX1Y0
TDJfTUVNMk1FTV9ERVY9bQpDT05GSUdfVjRMMl9GV05PREU9bQpDT05GSUdfVjRMMl9BU1lOQz1t
CiMgZW5kIG9mIFZpZGVvNExpbnV4IG9wdGlvbnMKCiMKIyBNZWRpYSBjb250cm9sbGVyIG9wdGlv
bnMKIwojIENPTkZJR19NRURJQV9DT05UUk9MTEVSX0RWQiBpcyBub3Qgc2V0CkNPTkZJR19NRURJ
QV9DT05UUk9MTEVSX1JFUVVFU1RfQVBJPXkKCiMKIyBQbGVhc2Ugbm90aWNlIHRoYXQgdGhlIGVu
YWJsZWQgTWVkaWEgY29udHJvbGxlciBSZXF1ZXN0IEFQSSBpcyBFWFBFUklNRU5UQUwKIwojIGVu
ZCBvZiBNZWRpYSBjb250cm9sbGVyIG9wdGlvbnMKCiMKIyBEaWdpdGFsIFRWIG9wdGlvbnMKIwoj
IENPTkZJR19EVkJfTU1BUCBpcyBub3Qgc2V0CiMgQ09ORklHX0RWQl9ORVQgaXMgbm90IHNldApD
T05GSUdfRFZCX01BWF9BREFQVEVSUz0xNgpDT05GSUdfRFZCX0RZTkFNSUNfTUlOT1JTPXkKIyBD
T05GSUdfRFZCX0RFTVVYX1NFQ1RJT05fTE9TU19MT0cgaXMgbm90IHNldAojIENPTkZJR19EVkJf
VUxFX0RFQlVHIGlzIG5vdCBzZXQKIyBlbmQgb2YgRGlnaXRhbCBUViBvcHRpb25zCgojCiMgTWVk
aWEgZHJpdmVycwojCgojCiMgRHJpdmVycyBmaWx0ZXJlZCBhcyBzZWxlY3RlZCBhdCAnRmlsdGVy
IG1lZGlhIGRyaXZlcnMnCiMKQ09ORklHX01FRElBX1VTQl9TVVBQT1JUPXkKCiMKIyBXZWJjYW0g
ZGV2aWNlcwojCkNPTkZJR19VU0JfVklERU9fQ0xBU1M9bQpDT05GSUdfVVNCX1ZJREVPX0NMQVNT
X0lOUFVUX0VWREVWPXkKIyBDT05GSUdfVVNCX0dTUENBIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNC
X1BXQyBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX0NQSUEyIGlzIG5vdCBzZXQKIyBDT05GSUdf
VVNCX1pSMzY0WFggaXMgbm90IHNldAojIENPTkZJR19VU0JfU1RLV0VCQ0FNIGlzIG5vdCBzZXQK
IyBDT05GSUdfVVNCX1MyMjU1IGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fVVNCVFYgaXMgbm90
IHNldAoKIwojIEFuYWxvZyBUViBVU0IgZGV2aWNlcwojCiMgQ09ORklHX1ZJREVPX1BWUlVTQjIg
aXMgbm90IHNldAojIENPTkZJR19WSURFT19IRFBWUiBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVP
X1NUSzExNjBfQ09NTU9OIGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fR083MDA3IGlzIG5vdCBz
ZXQKCiMKIyBBbmFsb2cvZGlnaXRhbCBUViBVU0IgZGV2aWNlcwojCiMgQ09ORklHX1ZJREVPX0FV
MDgyOCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX0NYMjMxWFggaXMgbm90IHNldAojIENPTkZJ
R19WSURFT19UTTYwMDAgaXMgbm90IHNldAoKIwojIERpZ2l0YWwgVFYgVVNCIGRldmljZXMKIwoj
IENPTkZJR19EVkJfVVNCIGlzIG5vdCBzZXQKIyBDT05GSUdfRFZCX1VTQl9WMiBpcyBub3Qgc2V0
CiMgQ09ORklHX0RWQl9UVFVTQl9CVURHRVQgaXMgbm90IHNldAojIENPTkZJR19EVkJfVFRVU0Jf
REVDIGlzIG5vdCBzZXQKIyBDT05GSUdfU01TX1VTQl9EUlYgaXMgbm90IHNldAojIENPTkZJR19E
VkJfQjJDMl9GTEVYQ09QX1VTQiBpcyBub3Qgc2V0CiMgQ09ORklHX0RWQl9BUzEwMiBpcyBub3Qg
c2V0CgojCiMgV2ViY2FtLCBUViAoYW5hbG9nL2RpZ2l0YWwpIFVTQiBkZXZpY2VzCiMKIyBDT05G
SUdfVklERU9fRU0yOFhYIGlzIG5vdCBzZXQKCiMKIyBTb2Z0d2FyZSBkZWZpbmVkIHJhZGlvIFVT
QiBkZXZpY2VzCiMKIyBDT05GSUdfVVNCX0FJUlNQWSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9I
QUNLUkYgaXMgbm90IHNldAojIENPTkZJR19VU0JfTVNJMjUwMCBpcyBub3Qgc2V0CiMgQ09ORklH
X01FRElBX1BDSV9TVVBQT1JUIGlzIG5vdCBzZXQKQ09ORklHX1ZJREVPQlVGMl9DT1JFPW0KQ09O
RklHX1ZJREVPQlVGMl9WNEwyPW0KQ09ORklHX1ZJREVPQlVGMl9NRU1PUFM9bQpDT05GSUdfVklE
RU9CVUYyX0RNQV9DT05USUc9bQpDT05GSUdfVklERU9CVUYyX1ZNQUxMT0M9bQpDT05GSUdfVklE
RU9CVUYyX0RNQV9TRz1tCkNPTkZJR19WNExfUExBVEZPUk1fRFJJVkVSUz15CiMgQ09ORklHX1ZJ
REVPX0NBRkVfQ0NJQyBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX0NBREVOQ0UgaXMgbm90IHNl
dAojIENPTkZJR19WSURFT19BU1BFRUQgaXMgbm90IHNldAojIENPTkZJR19WSURFT19NVVggaXMg
bm90IHNldApDT05GSUdfVklERU9fUUNPTV9DQU1TUz1tCiMgQ09ORklHX1ZJREVPX1JPQ0tDSElQ
X0lTUDEgaXMgbm90IHNldAojIENPTkZJR19WSURFT19TQU1TVU5HX0VYWU5PUzRfSVMgaXMgbm90
IHNldAojIENPTkZJR19WSURFT19YSUxJTlggaXMgbm90IHNldApDT05GSUdfVklERU9fUkNBUl9D
U0kyPW0KQ09ORklHX1ZJREVPX1JDQVJfVklOPW0KIyBDT05GSUdfVklERU9fU1VONElfQ1NJIGlz
IG5vdCBzZXQKQ09ORklHX1ZJREVPX1NVTjZJX0NTST1tCiMgQ09ORklHX1ZJREVPX1RJX0NBTCBp
cyBub3Qgc2V0CkNPTkZJR19WNExfTUVNMk1FTV9EUklWRVJTPXkKIyBDT05GSUdfVklERU9fQUxM
RUdST19EVlQgaXMgbm90IHNldAojIENPTkZJR19WSURFT19DT0RBIGlzIG5vdCBzZXQKIyBDT05G
SUdfVklERU9fSU1YX1BYUCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX0lNWDhfSlBFRyBpcyBu
b3Qgc2V0CiMgQ09ORklHX1ZJREVPX01FRElBVEVLX0pQRUcgaXMgbm90IHNldAojIENPTkZJR19W
SURFT19NRURJQVRFS19WUFUgaXMgbm90IHNldAojIENPTkZJR19WSURFT19NRURJQVRFS19NRFAg
aXMgbm90IHNldAojIENPTkZJR19WSURFT19NRU0yTUVNX0RFSU5URVJMQUNFIGlzIG5vdCBzZXQK
IyBDT05GSUdfVklERU9fTUVTT05fR0UyRCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX1NBTVNV
TkdfUzVQX0cyRCBpcyBub3Qgc2V0CkNPTkZJR19WSURFT19TQU1TVU5HX1M1UF9KUEVHPW0KQ09O
RklHX1ZJREVPX1NBTVNVTkdfUzVQX01GQz1tCkNPTkZJR19WSURFT19TQU1TVU5HX0VYWU5PU19H
U0M9bQpDT05GSUdfVklERU9fUkVORVNBU19GRFAxPW0KIyBDT05GSUdfVklERU9fUkVORVNBU19K
UFUgaXMgbm90IHNldApDT05GSUdfVklERU9fUkVORVNBU19GQ1A9bQpDT05GSUdfVklERU9fUkVO
RVNBU19WU1AxPW0KIyBDT05GSUdfVklERU9fUk9DS0NISVBfUkdBIGlzIG5vdCBzZXQKQ09ORklH
X1ZJREVPX1FDT01fVkVOVVM9bQojIENPTkZJR19WSURFT19TVU44SV9ERUlOVEVSTEFDRSBpcyBu
b3Qgc2V0CiMgQ09ORklHX1ZJREVPX1NVTjhJX1JPVEFURSBpcyBub3Qgc2V0CiMgQ09ORklHX0RW
Ql9QTEFURk9STV9EUklWRVJTIGlzIG5vdCBzZXQKQ09ORklHX1NEUl9QTEFURk9STV9EUklWRVJT
PXkKQ09ORklHX1ZJREVPX1JDQVJfRFJJRj1tCgojCiMgTU1DL1NESU8gRFZCIGFkYXB0ZXJzCiMK
IyBDT05GSUdfU01TX1NESU9fRFJWIGlzIG5vdCBzZXQKIyBlbmQgb2YgTWVkaWEgZHJpdmVycwoK
Q09ORklHX01FRElBX0hJREVfQU5DSUxMQVJZX1NVQkRSVj15CgojCiMgTWVkaWEgYW5jaWxsYXJ5
IGRyaXZlcnMKIwpDT05GSUdfTUVESUFfQVRUQUNIPXkKCiMKIyBJUiBJMkMgZHJpdmVyIGF1dG8t
c2VsZWN0ZWQgYnkgJ0F1dG9zZWxlY3QgYW5jaWxsYXJ5IGRyaXZlcnMnCiMKQ09ORklHX1ZJREVP
X0lSX0kyQz1tCgojCiMgYXVkaW8sIHZpZGVvIGFuZCByYWRpbyBJMkMgZHJpdmVycyBhdXRvLXNl
bGVjdGVkIGJ5ICdBdXRvc2VsZWN0IGFuY2lsbGFyeSBkcml2ZXJzJwojCgojCiMgVmlkZW8gYW5k
IGF1ZGlvIGRlY29kZXJzCiMKCiMKIyBDYW1lcmEgc2Vuc29yIGRldmljZXMKIwojIENPTkZJR19W
SURFT19ISTU1NiBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX0lNWDIwOCBpcyBub3Qgc2V0CiMg
Q09ORklHX1ZJREVPX0lNWDIxNCBpcyBub3Qgc2V0CkNPTkZJR19WSURFT19JTVgyMTk9bQojIENP
TkZJR19WSURFT19JTVgyNTggaXMgbm90IHNldAojIENPTkZJR19WSURFT19JTVgyNzQgaXMgbm90
IHNldAojIENPTkZJR19WSURFT19JTVgyOTAgaXMgbm90IHNldAojIENPTkZJR19WSURFT19JTVgz
MTkgaXMgbm90IHNldAojIENPTkZJR19WSURFT19JTVgzMzQgaXMgbm90IHNldAojIENPTkZJR19W
SURFT19JTVgzMzUgaXMgbm90IHNldAojIENPTkZJR19WSURFT19JTVgzNTUgaXMgbm90IHNldAoj
IENPTkZJR19WSURFT19JTVg0MTIgaXMgbm90IHNldAojIENPTkZJR19WSURFT19PVjAyQTEwIGlz
IG5vdCBzZXQKIyBDT05GSUdfVklERU9fT1YyNjQwIGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9f
T1YyNjU5IGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fT1YyNjgwIGlzIG5vdCBzZXQKIyBDT05G
SUdfVklERU9fT1YyNjg1IGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fT1YyNzQwIGlzIG5vdCBz
ZXQKIyBDT05GSUdfVklERU9fT1Y1NjQwIGlzIG5vdCBzZXQKQ09ORklHX1ZJREVPX09WNTY0NT1t
CiMgQ09ORklHX1ZJREVPX09WNTY0NyBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX09WNTY0OCBp
cyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX09WNjY1MCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVP
X09WNTY3MCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX09WNTY3NSBpcyBub3Qgc2V0CiMgQ09O
RklHX1ZJREVPX09WNTY5NSBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX09WNzI1MSBpcyBub3Qg
c2V0CiMgQ09ORklHX1ZJREVPX09WNzcyWCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX09WNzY0
MCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX09WNzY3MCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJ
REVPX09WNzc0MCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX09WODg1NiBpcyBub3Qgc2V0CiMg
Q09ORklHX1ZJREVPX09WODg2NSBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX09WOTI4MiBpcyBu
b3Qgc2V0CiMgQ09ORklHX1ZJREVPX09WOTY0MCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX09W
OTY1MCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX09WOTczNCBpcyBub3Qgc2V0CiMgQ09ORklH
X1ZJREVPX09WMTM4NTggaXMgbm90IHNldAojIENPTkZJR19WSURFT19WUzY2MjQgaXMgbm90IHNl
dAojIENPTkZJR19WSURFT19NVDlNMDAxIGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fTVQ5TTAz
MiBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX01UOU0xMTEgaXMgbm90IHNldAojIENPTkZJR19W
SURFT19NVDlQMDMxIGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fTVQ5VDAwMSBpcyBub3Qgc2V0
CiMgQ09ORklHX1ZJREVPX01UOVQxMTIgaXMgbm90IHNldAojIENPTkZJR19WSURFT19NVDlWMDEx
IGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fTVQ5VjAzMiBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJ
REVPX01UOVYxMTEgaXMgbm90IHNldAojIENPTkZJR19WSURFT19TUjAzMFBDMzAgaXMgbm90IHNl
dAojIENPTkZJR19WSURFT19OT09OMDEwUEMzMCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX001
TU9MUyBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX1JEQUNNMjAgaXMgbm90IHNldAojIENPTkZJ
R19WSURFT19SREFDTTIxIGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fUko1NE4xIGlzIG5vdCBz
ZXQKIyBDT05GSUdfVklERU9fUzVLNkFBIGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fUzVLNkEz
IGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fUzVLNEVDR1ggaXMgbm90IHNldAojIENPTkZJR19W
SURFT19TNUs1QkFGIGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fQ0NTIGlzIG5vdCBzZXQKIyBD
T05GSUdfVklERU9fRVQ4RUs4IGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fUzVDNzNNMyBpcyBu
b3Qgc2V0CiMgZW5kIG9mIENhbWVyYSBzZW5zb3IgZGV2aWNlcwoKIwojIExlbnMgZHJpdmVycwoj
CiMgQ09ORklHX1ZJREVPX0FENTgyMCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX0FLNzM3NSBp
cyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX0RXOTcxNCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVP
X0RXOTc2OCBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX0RXOTgwN19WQ00gaXMgbm90IHNldAoj
IGVuZCBvZiBMZW5zIGRyaXZlcnMKCiMKIyBGbGFzaCBkZXZpY2VzCiMKIyBDT05GSUdfVklERU9f
QURQMTY1MyBpcyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX0xNMzU2MCBpcyBub3Qgc2V0CiMgQ09O
RklHX1ZJREVPX0xNMzY0NiBpcyBub3Qgc2V0CiMgZW5kIG9mIEZsYXNoIGRldmljZXMKCiMKIyBT
UEkgSTJDIGRyaXZlcnMgYXV0by1zZWxlY3RlZCBieSAnQXV0b3NlbGVjdCBhbmNpbGxhcnkgZHJp
dmVycycKIwoKIwojIE1lZGlhIFNQSSBBZGFwdGVycwojCiMgQ09ORklHX0NYRDI4ODBfU1BJX0RS
ViBpcyBub3Qgc2V0CiMgZW5kIG9mIE1lZGlhIFNQSSBBZGFwdGVycwoKQ09ORklHX01FRElBX1RV
TkVSPW0KCiMKIyBUdW5lciBkcml2ZXJzIGF1dG8tc2VsZWN0ZWQgYnkgJ0F1dG9zZWxlY3QgYW5j
aWxsYXJ5IGRyaXZlcnMnCiMKQ09ORklHX01FRElBX1RVTkVSX1NJTVBMRT1tCkNPTkZJR19NRURJ
QV9UVU5FUl9UREE4MjkwPW0KQ09ORklHX01FRElBX1RVTkVSX1REQTgyN1g9bQpDT05GSUdfTUVE
SUFfVFVORVJfVERBMTgyNzE9bQpDT05GSUdfTUVESUFfVFVORVJfVERBOTg4Nz1tCkNPTkZJR19N
RURJQV9UVU5FUl9NVDIwWFg9bQpDT05GSUdfTUVESUFfVFVORVJfWEMyMDI4PW0KQ09ORklHX01F
RElBX1RVTkVSX1hDNTAwMD1tCkNPTkZJR19NRURJQV9UVU5FUl9YQzQwMDA9bQpDT05GSUdfTUVE
SUFfVFVORVJfTUM0NFM4MDM9bQoKIwojIERWQiBGcm9udGVuZCBkcml2ZXJzIGF1dG8tc2VsZWN0
ZWQgYnkgJ0F1dG9zZWxlY3QgYW5jaWxsYXJ5IGRyaXZlcnMnCiMKCiMKIyBNdWx0aXN0YW5kYXJk
IChzYXRlbGxpdGUpIGZyb250ZW5kcwojCgojCiMgTXVsdGlzdGFuZGFyZCAoY2FibGUgKyB0ZXJy
ZXN0cmlhbCkgZnJvbnRlbmRzCiMKCiMKIyBEVkItUyAoc2F0ZWxsaXRlKSBmcm9udGVuZHMKIwoK
IwojIERWQi1UICh0ZXJyZXN0cmlhbCkgZnJvbnRlbmRzCiMKCiMKIyBEVkItQyAoY2FibGUpIGZy
b250ZW5kcwojCgojCiMgQVRTQyAoTm9ydGggQW1lcmljYW4vS29yZWFuIFRlcnJlc3RyaWFsL0Nh
YmxlIERUVikgZnJvbnRlbmRzCiMKCiMKIyBJU0RCLVQgKHRlcnJlc3RyaWFsKSBmcm9udGVuZHMK
IwoKIwojIElTREItUyAoc2F0ZWxsaXRlKSAmIElTREItVCAodGVycmVzdHJpYWwpIGZyb250ZW5k
cwojCgojCiMgRGlnaXRhbCB0ZXJyZXN0cmlhbCBvbmx5IHR1bmVycy9QTEwKIwoKIwojIFNFQyBj
b250cm9sIGRldmljZXMgZm9yIERWQi1TCiMKCiMKIyBDb21tb24gSW50ZXJmYWNlIChFTjUwMjIx
KSBjb250cm9sbGVyIGRyaXZlcnMKIwojIGVuZCBvZiBNZWRpYSBhbmNpbGxhcnkgZHJpdmVycwoK
IwojIEdyYXBoaWNzIHN1cHBvcnQKIwpDT05GSUdfVkdBX0FSQj15CkNPTkZJR19WR0FfQVJCX01B
WF9HUFVTPTE2CkNPTkZJR19URUdSQV9IT1NUMVg9bQpDT05GSUdfVEVHUkFfSE9TVDFYX0ZJUkVX
QUxMPXkKQ09ORklHX0RSTT15CkNPTkZJR19EUk1fTUlQSV9EU0k9eQpDT05GSUdfRFJNX0RQX0FV
WF9CVVM9bQojIENPTkZJR19EUk1fRFBfQVVYX0NIQVJERVYgaXMgbm90IHNldAojIENPTkZJR19E
Uk1fREVCVUdfTU0gaXMgbm90IHNldApDT05GSUdfRFJNX0tNU19IRUxQRVI9eQpDT05GSUdfRFJN
X0ZCREVWX0VNVUxBVElPTj15CkNPTkZJR19EUk1fRkJERVZfT1ZFUkFMTE9DPTEwMAojIENPTkZJ
R19EUk1fTE9BRF9FRElEX0ZJUk1XQVJFIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX0RQX0NFQyBp
cyBub3Qgc2V0CkNPTkZJR19EUk1fVFRNPW0KQ09ORklHX0RSTV9WUkFNX0hFTFBFUj1tCkNPTkZJ
R19EUk1fVFRNX0hFTFBFUj1tCkNPTkZJR19EUk1fR0VNX0NNQV9IRUxQRVI9eQpDT05GSUdfRFJN
X0tNU19DTUFfSEVMUEVSPXkKQ09ORklHX0RSTV9HRU1fU0hNRU1fSEVMUEVSPXkKQ09ORklHX0RS
TV9TQ0hFRD1tCgojCiMgSTJDIGVuY29kZXIgb3IgaGVscGVyIGNoaXBzCiMKQ09ORklHX0RSTV9J
MkNfQ0g3MDA2PW0KQ09ORklHX0RSTV9JMkNfU0lMMTY0PW0KQ09ORklHX0RSTV9JMkNfTlhQX1RE
QTk5OFg9bQojIENPTkZJR19EUk1fSTJDX05YUF9UREE5OTUwIGlzIG5vdCBzZXQKIyBlbmQgb2Yg
STJDIGVuY29kZXIgb3IgaGVscGVyIGNoaXBzCgojCiMgQVJNIGRldmljZXMKIwojIENPTkZJR19E
Uk1fSERMQ0QgaXMgbm90IHNldApDT05GSUdfRFJNX01BTElfRElTUExBWT1tCiMgQ09ORklHX0RS
TV9LT01FREEgaXMgbm90IHNldAojIGVuZCBvZiBBUk0gZGV2aWNlcwoKIyBDT05GSUdfRFJNX1JB
REVPTiBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9BTURHUFUgaXMgbm90IHNldApDT05GSUdfRFJN
X05PVVZFQVU9bQpDT05GSUdfTk9VVkVBVV9MRUdBQ1lfQ1RYX1NVUFBPUlQ9eQpDT05GSUdfTk9V
VkVBVV9QTEFURk9STV9EUklWRVI9eQpDT05GSUdfTk9VVkVBVV9ERUJVRz01CkNPTkZJR19OT1VW
RUFVX0RFQlVHX0RFRkFVTFQ9MwojIENPTkZJR19OT1VWRUFVX0RFQlVHX01NVSBpcyBub3Qgc2V0
CiMgQ09ORklHX05PVVZFQVVfREVCVUdfUFVTSCBpcyBub3Qgc2V0CkNPTkZJR19EUk1fTk9VVkVB
VV9CQUNLTElHSFQ9eQojIENPTkZJR19EUk1fS01CX0RJU1BMQVkgaXMgbm90IHNldAojIENPTkZJ
R19EUk1fVkdFTSBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9WS01TIGlzIG5vdCBzZXQKQ09ORklH
X0RSTV9FWFlOT1M9bQoKIwojIENSVENzCiMKIyBDT05GSUdfRFJNX0VYWU5PU19GSU1EIGlzIG5v
dCBzZXQKQ09ORklHX0RSTV9FWFlOT1M1NDMzX0RFQ09OPXkKQ09ORklHX0RSTV9FWFlOT1M3X0RF
Q09OPXkKIyBDT05GSUdfRFJNX0VYWU5PU19NSVhFUiBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9F
WFlOT1NfVklESSBpcyBub3Qgc2V0CgojCiMgRW5jb2RlcnMgYW5kIEJyaWRnZXMKIwpDT05GSUdf
RFJNX0VYWU5PU19EU0k9eQojIENPTkZJR19EUk1fRVhZTk9TX0RQIGlzIG5vdCBzZXQKQ09ORklH
X0RSTV9FWFlOT1NfSERNST15CkNPTkZJR19EUk1fRVhZTk9TX01JQz15CgojCiMgU3ViLWRyaXZl
cnMKIwojIENPTkZJR19EUk1fRVhZTk9TX0cyRCBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9FWFlO
T1NfRklNQyBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9FWFlOT1NfUk9UQVRPUiBpcyBub3Qgc2V0
CiMgQ09ORklHX0RSTV9FWFlOT1NfU0NBTEVSIGlzIG5vdCBzZXQKQ09ORklHX0RSTV9ST0NLQ0hJ
UD1tCkNPTkZJR19ST0NLQ0hJUF9BTkFMT0dJWF9EUD15CkNPTkZJR19ST0NLQ0hJUF9DRE5fRFA9
eQpDT05GSUdfUk9DS0NISVBfRFdfSERNST15CkNPTkZJR19ST0NLQ0hJUF9EV19NSVBJX0RTST15
CkNPTkZJR19ST0NLQ0hJUF9JTk5PX0hETUk9eQpDT05GSUdfUk9DS0NISVBfTFZEUz15CiMgQ09O
RklHX1JPQ0tDSElQX1JHQiBpcyBub3Qgc2V0CiMgQ09ORklHX1JPQ0tDSElQX1JLMzA2Nl9IRE1J
IGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1ZNV0dGWCBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9V
REwgaXMgbm90IHNldAojIENPTkZJR19EUk1fQVNUIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX01H
QUcyMDAgaXMgbm90IHNldApDT05GSUdfRFJNX1JDQVJfRFU9bQpDT05GSUdfRFJNX1JDQVJfVVNF
X0NNTT15CkNPTkZJR19EUk1fUkNBUl9DTU09bQpDT05GSUdfRFJNX1JDQVJfRFdfSERNST1tCkNP
TkZJR19EUk1fUkNBUl9VU0VfTFZEUz15CkNPTkZJR19EUk1fUkNBUl9MVkRTPW0KQ09ORklHX0RS
TV9SQ0FSX1ZTUD15CkNPTkZJR19EUk1fUkNBUl9XUklURUJBQ0s9eQpDT05GSUdfRFJNX1NVTjRJ
PW0KQ09ORklHX0RSTV9TVU40SV9IRE1JPW0KIyBDT05GSUdfRFJNX1NVTjRJX0hETUlfQ0VDIGlz
IG5vdCBzZXQKQ09ORklHX0RSTV9TVU40SV9CQUNLRU5EPW0KQ09ORklHX0RSTV9TVU42SV9EU0k9
bQpDT05GSUdfRFJNX1NVTjhJX0RXX0hETUk9bQpDT05GSUdfRFJNX1NVTjhJX01JWEVSPW0KQ09O
RklHX0RSTV9TVU44SV9UQ09OX1RPUD1tCiMgQ09ORklHX0RSTV9RWEwgaXMgbm90IHNldApDT05G
SUdfRFJNX1ZJUlRJT19HUFU9eQpDT05GSUdfRFJNX01TTT1tCkNPTkZJR19EUk1fTVNNX0dQVV9T
VEFURT15CiMgQ09ORklHX0RSTV9NU01fUkVHSVNURVJfTE9HR0lORyBpcyBub3Qgc2V0CkNPTkZJ
R19EUk1fTVNNX0hETUlfSERDUD15CkNPTkZJR19EUk1fTVNNX0RQPXkKQ09ORklHX0RSTV9NU01f
RFNJPXkKQ09ORklHX0RSTV9NU01fRFNJXzI4Tk1fUEhZPXkKQ09ORklHX0RSTV9NU01fRFNJXzIw
Tk1fUEhZPXkKQ09ORklHX0RSTV9NU01fRFNJXzI4Tk1fODk2MF9QSFk9eQpDT05GSUdfRFJNX01T
TV9EU0lfMTROTV9QSFk9eQpDT05GSUdfRFJNX01TTV9EU0lfMTBOTV9QSFk9eQpDT05GSUdfRFJN
X01TTV9EU0lfN05NX1BIWT15CkNPTkZJR19EUk1fVEVHUkE9bQojIENPTkZJR19EUk1fVEVHUkFf
REVCVUcgaXMgbm90IHNldAojIENPTkZJR19EUk1fVEVHUkFfU1RBR0lORyBpcyBub3Qgc2V0CkNP
TkZJR19EUk1fUEFORUw9eQoKIwojIERpc3BsYXkgUGFuZWxzCiMKIyBDT05GSUdfRFJNX1BBTkVM
X0FCVF9ZMDMwWFgwNjdBIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1BBTkVMX0FSTV9WRVJTQVRJ
TEUgaXMgbm90IHNldAojIENPTkZJR19EUk1fUEFORUxfQVNVU19aMDBUX1RNNVA1X05UMzU1OTYg
aXMgbm90IHNldAojIENPTkZJR19EUk1fUEFORUxfQk9FX0hJTUFYODI3OUQgaXMgbm90IHNldApD
T05GSUdfRFJNX1BBTkVMX0JPRV9UVjEwMVdVTV9OTDY9bQojIENPTkZJR19EUk1fUEFORUxfRFNJ
X0NNIGlzIG5vdCBzZXQKQ09ORklHX0RSTV9QQU5FTF9MVkRTPW0KQ09ORklHX0RSTV9QQU5FTF9T
SU1QTEU9bQojIENPTkZJR19EUk1fUEFORUxfRUxJREFfS0QzNVQxMzMgaXMgbm90IHNldAojIENP
TkZJR19EUk1fUEFORUxfRkVJWElOX0sxMDFfSU0yQkEwMiBpcyBub3Qgc2V0CiMgQ09ORklHX0RS
TV9QQU5FTF9GRUlZQU5HX0ZZMDcwMjRESTI2QTMwRCBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9Q
QU5FTF9JTElURUtfSUw5MzIyIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1BBTkVMX0lMSVRFS19J
TEk5MzQxIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1BBTkVMX0lMSVRFS19JTEk5ODgxQyBpcyBu
b3Qgc2V0CiMgQ09ORklHX0RSTV9QQU5FTF9JTk5PTFVYX0VKMDMwTkEgaXMgbm90IHNldAojIENP
TkZJR19EUk1fUEFORUxfSU5OT0xVWF9QMDc5WkNBIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1BB
TkVMX0pESV9MVDA3ME1FMDUwMDAgaXMgbm90IHNldAojIENPTkZJR19EUk1fUEFORUxfS0hBREFT
X1RTMDUwIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1BBTkVMX0tJTkdESVNQTEFZX0tEMDk3RDA0
IGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1BBTkVMX0xFQURURUtfTFRLMDUwSDMxNDZXIGlzIG5v
dCBzZXQKIyBDT05GSUdfRFJNX1BBTkVMX0xFQURURUtfTFRLNTAwSEQxODI5IGlzIG5vdCBzZXQK
IyBDT05GSUdfRFJNX1BBTkVMX1NBTVNVTkdfTEQ5MDQwIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJN
X1BBTkVMX0xHX0xCMDM1UTAyIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1BBTkVMX0xHX0xHNDU3
MyBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9QQU5FTF9ORUNfTkw4MDQ4SEwxMSBpcyBub3Qgc2V0
CiMgQ09ORklHX0RSTV9QQU5FTF9OT1ZBVEVLX05UMzU1MTAgaXMgbm90IHNldAojIENPTkZJR19E
Uk1fUEFORUxfTk9WQVRFS19OVDM2NjcyQSBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9QQU5FTF9O
T1ZBVEVLX05UMzkwMTYgaXMgbm90IHNldApDT05GSUdfRFJNX1BBTkVMX01BTlRJWF9NTEFGMDU3
V0U1MT1tCiMgQ09ORklHX0RSTV9QQU5FTF9PTElNRVhfTENEX09MSU5VWElOTyBpcyBub3Qgc2V0
CiMgQ09ORklHX0RSTV9QQU5FTF9PUklTRVRFQ0hfT1RNODAwOUEgaXMgbm90IHNldAojIENPTkZJ
R19EUk1fUEFORUxfT1NEX09TRDEwMVQyNTg3XzUzVFMgaXMgbm90IHNldAojIENPTkZJR19EUk1f
UEFORUxfUEFOQVNPTklDX1ZWWDEwRjAzNE4wMCBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9QQU5F
TF9SQVNQQkVSUllQSV9UT1VDSFNDUkVFTiBpcyBub3Qgc2V0CkNPTkZJR19EUk1fUEFORUxfUkFZ
RElVTV9STTY3MTkxPW0KIyBDT05GSUdfRFJNX1BBTkVMX1JBWURJVU1fUk02ODIwMCBpcyBub3Qg
c2V0CiMgQ09ORklHX0RSTV9QQU5FTF9ST05CT19SQjA3MEQzMCBpcyBub3Qgc2V0CiMgQ09ORklH
X0RSTV9QQU5FTF9TQU1TVU5HX0FUTkEzM1hDMjAgaXMgbm90IHNldAojIENPTkZJR19EUk1fUEFO
RUxfU0FNU1VOR19EQjc0MzAgaXMgbm90IHNldAojIENPTkZJR19EUk1fUEFORUxfU0FNU1VOR19T
NkQxNkQwIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1BBTkVMX1NBTVNVTkdfUzZFM0hBMiBpcyBu
b3Qgc2V0CiMgQ09ORklHX0RSTV9QQU5FTF9TQU1TVU5HX1M2RTYzSjBYMDMgaXMgbm90IHNldAoj
IENPTkZJR19EUk1fUEFORUxfU0FNU1VOR19TNkU2M00wIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJN
X1BBTkVMX1NBTVNVTkdfUzZFODhBMF9BTVM0NTJFRjAxIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJN
X1BBTkVMX1NBTVNVTkdfUzZFOEFBMCBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9QQU5FTF9TQU1T
VU5HX1NPRkVGMDAgaXMgbm90IHNldAojIENPTkZJR19EUk1fUEFORUxfU0VJS09fNDNXVkYxRyBp
cyBub3Qgc2V0CiMgQ09ORklHX0RSTV9QQU5FTF9TSEFSUF9MUTEwMVIxU1gwMSBpcyBub3Qgc2V0
CiMgQ09ORklHX0RSTV9QQU5FTF9TSEFSUF9MUzAzN1Y3RFcwMSBpcyBub3Qgc2V0CiMgQ09ORklH
X0RSTV9QQU5FTF9TSEFSUF9MUzA0M1QxTEUwMSBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9QQU5F
TF9TSVRST05JWF9TVDc3MDEgaXMgbm90IHNldApDT05GSUdfRFJNX1BBTkVMX1NJVFJPTklYX1NU
NzcwMz1tCiMgQ09ORklHX0RSTV9QQU5FTF9TSVRST05JWF9TVDc3ODlWIGlzIG5vdCBzZXQKIyBD
T05GSUdfRFJNX1BBTkVMX1NPTllfQUNYNDI0QUtQIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1BB
TkVMX1NPTllfQUNYNTY1QUtNIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1BBTkVMX1RET19UTDA3
MFdTSDMwIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1BBTkVMX1RQT19URDAyOFRURUMxIGlzIG5v
dCBzZXQKIyBDT05GSUdfRFJNX1BBTkVMX1RQT19URDA0M01URUExIGlzIG5vdCBzZXQKIyBDT05G
SUdfRFJNX1BBTkVMX1RQT19UUEcxMTAgaXMgbm90IHNldApDT05GSUdfRFJNX1BBTkVMX1RSVUxZ
X05UMzU1OTdfV1FYR0E9bQojIENPTkZJR19EUk1fUEFORUxfVklTSU9OT1hfUk02OTI5OSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0RSTV9QQU5FTF9XSURFQ0hJUFNfV1MyNDAxIGlzIG5vdCBzZXQKIyBD
T05GSUdfRFJNX1BBTkVMX1hJTlBFTkdfWFBQMDU1QzI3MiBpcyBub3Qgc2V0CiMgZW5kIG9mIERp
c3BsYXkgUGFuZWxzCgpDT05GSUdfRFJNX0JSSURHRT15CkNPTkZJR19EUk1fUEFORUxfQlJJREdF
PXkKCiMKIyBEaXNwbGF5IEludGVyZmFjZSBCcmlkZ2VzCiMKIyBDT05GSUdfRFJNX0NETlNfRFNJ
IGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX0NISVBPTkVfSUNONjIxMSBpcyBub3Qgc2V0CiMgQ09O
RklHX0RSTV9DSFJPTlRFTF9DSDcwMzMgaXMgbm90IHNldAojIENPTkZJR19EUk1fQ1JPU19FQ19B
Tlg3Njg4IGlzIG5vdCBzZXQKQ09ORklHX0RSTV9ESVNQTEFZX0NPTk5FQ1RPUj1tCkNPTkZJR19E
Uk1fTE9OVElVTV9MVDg5MTJCPW0KQ09ORklHX0RSTV9MT05USVVNX0xUOTYxMT1tCkNPTkZJR19E
Uk1fTE9OVElVTV9MVDk2MTFVWEM9bQojIENPTkZJR19EUk1fSVRFX0lUNjYxMjEgaXMgbm90IHNl
dAojIENPTkZJR19EUk1fTFZEU19DT0RFQyBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9NRUdBQ0hJ
UFNfU1REUFhYWFhfR0VfQjg1MFYzX0ZXIGlzIG5vdCBzZXQKQ09ORklHX0RSTV9OV0xfTUlQSV9E
U0k9bQojIENPTkZJR19EUk1fTlhQX1BUTjM0NjAgaXMgbm90IHNldAojIENPTkZJR19EUk1fUEFS
QURFX1BTODYyMiBpcyBub3Qgc2V0CkNPTkZJR19EUk1fUEFSQURFX1BTODY0MD1tCiMgQ09ORklH
X0RSTV9TSUxfU0lJODYyMCBpcyBub3Qgc2V0CkNPTkZJR19EUk1fU0lJOTAyWD1tCiMgQ09ORklH
X0RSTV9TSUk5MjM0IGlzIG5vdCBzZXQKQ09ORklHX0RSTV9TSU1QTEVfQlJJREdFPW0KQ09ORklH
X0RSTV9USElORV9USEM2M0xWRDEwMjQ9bQojIENPTkZJR19EUk1fVE9TSElCQV9UQzM1ODc2MiBp
cyBub3Qgc2V0CiMgQ09ORklHX0RSTV9UT1NISUJBX1RDMzU4NzY0IGlzIG5vdCBzZXQKIyBDT05G
SUdfRFJNX1RPU0hJQkFfVEMzNTg3NjcgaXMgbm90IHNldAojIENPTkZJR19EUk1fVE9TSElCQV9U
QzM1ODc2OCBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9UT1NISUJBX1RDMzU4Nzc1IGlzIG5vdCBz
ZXQKIyBDT05GSUdfRFJNX1RJX1RGUDQxMCBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9USV9TTjY1
RFNJODMgaXMgbm90IHNldApDT05GSUdfRFJNX1RJX1NONjVEU0k4Nj1tCiMgQ09ORklHX0RSTV9U
SV9UUEQxMlMwMTUgaXMgbm90IHNldAojIENPTkZJR19EUk1fQU5BTE9HSVhfQU5YNjM0NSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0RSTV9BTkFMT0dJWF9BTlg3OFhYIGlzIG5vdCBzZXQKQ09ORklHX0RS
TV9BTkFMT0dJWF9EUD1tCiMgQ09ORklHX0RSTV9BTkFMT0dJWF9BTlg3NjI1IGlzIG5vdCBzZXQK
Q09ORklHX0RSTV9JMkNfQURWNzUxMT1tCkNPTkZJR19EUk1fSTJDX0FEVjc1MTFfQVVESU89eQpD
T05GSUdfRFJNX0kyQ19BRFY3NTExX0NFQz15CiMgQ09ORklHX0RSTV9DRE5TX01IRFA4NTQ2IGlz
IG5vdCBzZXQKQ09ORklHX0RSTV9EV19IRE1JPW0KQ09ORklHX0RSTV9EV19IRE1JX0FIQl9BVURJ
Tz1tCkNPTkZJR19EUk1fRFdfSERNSV9JMlNfQVVESU89bQpDT05GSUdfRFJNX0RXX0hETUlfQ0VD
PW0KQ09ORklHX0RSTV9EV19NSVBJX0RTST1tCiMgZW5kIG9mIERpc3BsYXkgSW50ZXJmYWNlIEJy
aWRnZXMKCkNPTkZJR19EUk1fSU1YX0RDU1M9bQpDT05GSUdfRFJNX1ZDND1tCiMgQ09ORklHX0RS
TV9WQzRfSERNSV9DRUMgaXMgbm90IHNldApDT05GSUdfRFJNX0VUTkFWSVY9bQpDT05GSUdfRFJN
X0VUTkFWSVZfVEhFUk1BTD15CkNPTkZJR19EUk1fSElTSV9ISUJNQz1tCkNPTkZJR19EUk1fSElT
SV9LSVJJTj1tCkNPTkZJR19EUk1fTUVESUFURUs9bQpDT05GSUdfRFJNX01FRElBVEVLX0hETUk9
bQpDT05GSUdfRFJNX01YUz15CkNPTkZJR19EUk1fTVhTRkI9bQpDT05GSUdfRFJNX01FU09OPW0K
Q09ORklHX0RSTV9NRVNPTl9EV19IRE1JPW0KIyBDT05GSUdfRFJNX0FSQ1BHVSBpcyBub3Qgc2V0
CiMgQ09ORklHX0RSTV9CT0NIUyBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9DSVJSVVNfUUVNVSBp
cyBub3Qgc2V0CiMgQ09ORklHX0RSTV9HTTEyVTMyMCBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9T
SU1QTEVEUk0gaXMgbm90IHNldAojIENPTkZJR19USU5ZRFJNX0hYODM1N0QgaXMgbm90IHNldAoj
IENPTkZJR19USU5ZRFJNX0lMSTkyMjUgaXMgbm90IHNldAojIENPTkZJR19USU5ZRFJNX0lMSTkz
NDEgaXMgbm90IHNldAojIENPTkZJR19USU5ZRFJNX0lMSTk0ODYgaXMgbm90IHNldAojIENPTkZJ
R19USU5ZRFJNX01JMDI4M1FUIGlzIG5vdCBzZXQKIyBDT05GSUdfVElOWURSTV9SRVBBUEVSIGlz
IG5vdCBzZXQKIyBDT05GSUdfVElOWURSTV9TVDc1ODYgaXMgbm90IHNldAojIENPTkZJR19USU5Z
RFJNX1NUNzczNVIgaXMgbm90IHNldApDT05GSUdfRFJNX1BMMTExPW0KIyBDT05GSUdfRFJNX1hF
Tl9GUk9OVEVORCBpcyBub3Qgc2V0CkNPTkZJR19EUk1fTElNQT1tCkNPTkZJR19EUk1fUEFORlJP
U1Q9bQojIENPTkZJR19EUk1fVElEU1MgaXMgbm90IHNldAojIENPTkZJR19EUk1fR1VEIGlzIG5v
dCBzZXQKQ09ORklHX0RSTV9MRUdBQ1k9eQojIENPTkZJR19EUk1fVERGWCBpcyBub3Qgc2V0CiMg
Q09ORklHX0RSTV9SMTI4IGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX01HQSBpcyBub3Qgc2V0CiMg
Q09ORklHX0RSTV9WSUEgaXMgbm90IHNldAojIENPTkZJR19EUk1fU0FWQUdFIGlzIG5vdCBzZXQK
Q09ORklHX0RSTV9QQU5FTF9PUklFTlRBVElPTl9RVUlSS1M9eQoKIwojIEZyYW1lIGJ1ZmZlciBE
ZXZpY2VzCiMKQ09ORklHX0ZCX0NNRExJTkU9eQpDT05GSUdfRkJfTk9USUZZPXkKQ09ORklHX0ZC
PXkKIyBDT05GSUdfRklSTVdBUkVfRURJRCBpcyBub3Qgc2V0CkNPTkZJR19GQl9DRkJfRklMTFJF
Q1Q9eQpDT05GSUdfRkJfQ0ZCX0NPUFlBUkVBPXkKQ09ORklHX0ZCX0NGQl9JTUFHRUJMSVQ9eQpD
T05GSUdfRkJfU1lTX0ZJTExSRUNUPXkKQ09ORklHX0ZCX1NZU19DT1BZQVJFQT15CkNPTkZJR19G
Ql9TWVNfSU1BR0VCTElUPXkKIyBDT05GSUdfRkJfRk9SRUlHTl9FTkRJQU4gaXMgbm90IHNldApD
T05GSUdfRkJfU1lTX0ZPUFM9eQpDT05GSUdfRkJfREVGRVJSRURfSU89eQpDT05GSUdfRkJfTU9E
RV9IRUxQRVJTPXkKIyBDT05GSUdfRkJfVElMRUJMSVRUSU5HIGlzIG5vdCBzZXQKCiMKIyBGcmFt
ZSBidWZmZXIgaGFyZHdhcmUgZHJpdmVycwojCiMgQ09ORklHX0ZCX0NJUlJVUyBpcyBub3Qgc2V0
CiMgQ09ORklHX0ZCX1BNMiBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX0FSTUNMQ0QgaXMgbm90IHNl
dAojIENPTkZJR19GQl9JTVggaXMgbm90IHNldAojIENPTkZJR19GQl9DWUJFUjIwMDAgaXMgbm90
IHNldAojIENPTkZJR19GQl9BU0lMSUFOVCBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX0lNU1RUIGlz
IG5vdCBzZXQKQ09ORklHX0ZCX0VGST15CiMgQ09ORklHX0ZCX09QRU5DT1JFUyBpcyBub3Qgc2V0
CiMgQ09ORklHX0ZCX1MxRDEzWFhYIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfTlZJRElBIGlzIG5v
dCBzZXQKIyBDT05GSUdfRkJfUklWQSBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX0k3NDAgaXMgbm90
IHNldAojIENPTkZJR19GQl9NQVRST1ggaXMgbm90IHNldAojIENPTkZJR19GQl9SQURFT04gaXMg
bm90IHNldAojIENPTkZJR19GQl9BVFkxMjggaXMgbm90IHNldAojIENPTkZJR19GQl9BVFkgaXMg
bm90IHNldAojIENPTkZJR19GQl9TMyBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX1NBVkFHRSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0ZCX1NJUyBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX05FT01BR0lDIGlz
IG5vdCBzZXQKIyBDT05GSUdfRkJfS1lSTyBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCXzNERlggaXMg
bm90IHNldAojIENPTkZJR19GQl9WT09ET08xIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfVlQ4NjIz
IGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfVFJJREVOVCBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX0FS
SyBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX1BNMyBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX0NBUk1J
TkUgaXMgbm90IHNldAojIENPTkZJR19GQl9TSF9NT0JJTEVfTENEQyBpcyBub3Qgc2V0CiMgQ09O
RklHX0ZCX1NNU0NVRlggaXMgbm90IHNldAojIENPTkZJR19GQl9VREwgaXMgbm90IHNldAojIENP
TkZJR19GQl9JQk1fR1hUNDUwMCBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX1hJTElOWCBpcyBub3Qg
c2V0CiMgQ09ORklHX0ZCX1ZJUlRVQUwgaXMgbm90IHNldApDT05GSUdfWEVOX0ZCREVWX0ZST05U
RU5EPXkKIyBDT05GSUdfRkJfTUVUUk9OT01FIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfTUI4NjJY
WCBpcyBub3Qgc2V0CkNPTkZJR19GQl9NWDM9eQojIENPTkZJR19GQl9TSU1QTEUgaXMgbm90IHNl
dAojIENPTkZJR19GQl9TU0QxMzA3IGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfU003MTIgaXMgbm90
IHNldAojIGVuZCBvZiBGcmFtZSBidWZmZXIgRGV2aWNlcwoKIwojIEJhY2tsaWdodCAmIExDRCBk
ZXZpY2Ugc3VwcG9ydAojCiMgQ09ORklHX0xDRF9DTEFTU19ERVZJQ0UgaXMgbm90IHNldApDT05G
SUdfQkFDS0xJR0hUX0NMQVNTX0RFVklDRT15CiMgQ09ORklHX0JBQ0tMSUdIVF9LVEQyNTMgaXMg
bm90IHNldApDT05GSUdfQkFDS0xJR0hUX1BXTT1tCiMgQ09ORklHX0JBQ0tMSUdIVF9RQ09NX1dM
RUQgaXMgbm90IHNldAojIENPTkZJR19CQUNLTElHSFRfQURQODg2MCBpcyBub3Qgc2V0CiMgQ09O
RklHX0JBQ0tMSUdIVF9BRFA4ODcwIGlzIG5vdCBzZXQKIyBDT05GSUdfQkFDS0xJR0hUX0xNMzYz
MEEgaXMgbm90IHNldAojIENPTkZJR19CQUNLTElHSFRfTE0zNjM5IGlzIG5vdCBzZXQKQ09ORklH
X0JBQ0tMSUdIVF9MUDg1NVg9bQojIENPTkZJR19CQUNLTElHSFRfR1BJTyBpcyBub3Qgc2V0CiMg
Q09ORklHX0JBQ0tMSUdIVF9MVjUyMDdMUCBpcyBub3Qgc2V0CiMgQ09ORklHX0JBQ0tMSUdIVF9C
RDYxMDcgaXMgbm90IHNldAojIENPTkZJR19CQUNLTElHSFRfQVJDWENOTiBpcyBub3Qgc2V0CiMg
Q09ORklHX0JBQ0tMSUdIVF9MRUQgaXMgbm90IHNldAojIGVuZCBvZiBCYWNrbGlnaHQgJiBMQ0Qg
ZGV2aWNlIHN1cHBvcnQKCkNPTkZJR19WSURFT01PREVfSEVMUEVSUz15CkNPTkZJR19IRE1JPXkK
CiMKIyBDb25zb2xlIGRpc3BsYXkgZHJpdmVyIHN1cHBvcnQKIwpDT05GSUdfRFVNTVlfQ09OU09M
RT15CkNPTkZJR19EVU1NWV9DT05TT0xFX0NPTFVNTlM9ODAKQ09ORklHX0RVTU1ZX0NPTlNPTEVf
Uk9XUz0yNQpDT05GSUdfRlJBTUVCVUZGRVJfQ09OU09MRT15CiMgQ09ORklHX0ZSQU1FQlVGRkVS
X0NPTlNPTEVfTEVHQUNZX0FDQ0VMRVJBVElPTiBpcyBub3Qgc2V0CkNPTkZJR19GUkFNRUJVRkZF
Ul9DT05TT0xFX0RFVEVDVF9QUklNQVJZPXkKIyBDT05GSUdfRlJBTUVCVUZGRVJfQ09OU09MRV9S
T1RBVElPTiBpcyBub3Qgc2V0CiMgQ09ORklHX0ZSQU1FQlVGRkVSX0NPTlNPTEVfREVGRVJSRURf
VEFLRU9WRVIgaXMgbm90IHNldAojIGVuZCBvZiBDb25zb2xlIGRpc3BsYXkgZHJpdmVyIHN1cHBv
cnQKCkNPTkZJR19MT0dPPXkKIyBDT05GSUdfTE9HT19MSU5VWF9NT05PIGlzIG5vdCBzZXQKIyBD
T05GSUdfTE9HT19MSU5VWF9WR0ExNiBpcyBub3Qgc2V0CkNPTkZJR19MT0dPX0xJTlVYX0NMVVQy
MjQ9eQojIGVuZCBvZiBHcmFwaGljcyBzdXBwb3J0CgpDT05GSUdfU09VTkQ9eQpDT05GSUdfU05E
PXkKQ09ORklHX1NORF9USU1FUj15CkNPTkZJR19TTkRfUENNPXkKQ09ORklHX1NORF9QQ01fRUxE
PXkKQ09ORklHX1NORF9QQ01fSUVDOTU4PXkKQ09ORklHX1NORF9ETUFFTkdJTkVfUENNPXkKQ09O
RklHX1NORF9DT01QUkVTU19PRkZMT0FEPXkKQ09ORklHX1NORF9KQUNLPXkKQ09ORklHX1NORF9K
QUNLX0lOUFVUX0RFVj15CiMgQ09ORklHX1NORF9PU1NFTVVMIGlzIG5vdCBzZXQKQ09ORklHX1NO
RF9QQ01fVElNRVI9eQojIENPTkZJR19TTkRfSFJUSU1FUiBpcyBub3Qgc2V0CkNPTkZJR19TTkRf
RFlOQU1JQ19NSU5PUlM9eQpDT05GSUdfU05EX01BWF9DQVJEUz0zMgpDT05GSUdfU05EX1NVUFBP
UlRfT0xEX0FQST15CkNPTkZJR19TTkRfUFJPQ19GUz15CkNPTkZJR19TTkRfVkVSQk9TRV9QUk9D
RlM9eQojIENPTkZJR19TTkRfVkVSQk9TRV9QUklOVEsgaXMgbm90IHNldAojIENPTkZJR19TTkRf
REVCVUcgaXMgbm90IHNldApDT05GSUdfU05EX1ZNQVNURVI9eQojIENPTkZJR19TTkRfU0VRVUVO
Q0VSIGlzIG5vdCBzZXQKQ09ORklHX1NORF9EUklWRVJTPXkKIyBDT05GSUdfU05EX0RVTU1ZIGlz
IG5vdCBzZXQKIyBDT05GSUdfU05EX0FMT09QIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX01UUEFW
IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NFUklBTF9VMTY1NTAgaXMgbm90IHNldAojIENPTkZJ
R19TTkRfTVBVNDAxIGlzIG5vdCBzZXQKQ09ORklHX1NORF9QQ0k9eQojIENPTkZJR19TTkRfQUQx
ODg5IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX0FMUzMwMCBpcyBub3Qgc2V0CiMgQ09ORklHX1NO
RF9BTEk1NDUxIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX0FUSUlYUCBpcyBub3Qgc2V0CiMgQ09O
RklHX1NORF9BVElJWFBfTU9ERU0gaXMgbm90IHNldAojIENPTkZJR19TTkRfQVU4ODEwIGlzIG5v
dCBzZXQKIyBDT05GSUdfU05EX0FVODgyMCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9BVTg4MzAg
aXMgbm90IHNldAojIENPTkZJR19TTkRfQVcyIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX0FaVDMz
MjggaXMgbm90IHNldAojIENPTkZJR19TTkRfQlQ4N1ggaXMgbm90IHNldAojIENPTkZJR19TTkRf
Q0EwMTA2IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX0NNSVBDSSBpcyBub3Qgc2V0CiMgQ09ORklH
X1NORF9PWFlHRU4gaXMgbm90IHNldAojIENPTkZJR19TTkRfQ1M0MjgxIGlzIG5vdCBzZXQKIyBD
T05GSUdfU05EX0NTNDZYWCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9DVFhGSSBpcyBub3Qgc2V0
CiMgQ09ORklHX1NORF9EQVJMQTIwIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX0dJTkEyMCBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NORF9MQVlMQTIwIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX0RBUkxB
MjQgaXMgbm90IHNldAojIENPTkZJR19TTkRfR0lOQTI0IGlzIG5vdCBzZXQKIyBDT05GSUdfU05E
X0xBWUxBMjQgaXMgbm90IHNldAojIENPTkZJR19TTkRfTU9OQSBpcyBub3Qgc2V0CiMgQ09ORklH
X1NORF9NSUEgaXMgbm90IHNldAojIENPTkZJR19TTkRfRUNITzNHIGlzIG5vdCBzZXQKIyBDT05G
SUdfU05EX0lORElHTyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9JTkRJR09JTyBpcyBub3Qgc2V0
CiMgQ09ORklHX1NORF9JTkRJR09ESiBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9JTkRJR09JT1gg
aXMgbm90IHNldAojIENPTkZJR19TTkRfSU5ESUdPREpYIGlzIG5vdCBzZXQKIyBDT05GSUdfU05E
X0VNVTEwSzEgaXMgbm90IHNldAojIENPTkZJR19TTkRfRU1VMTBLMVggaXMgbm90IHNldAojIENP
TkZJR19TTkRfRU5TMTM3MCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9FTlMxMzcxIGlzIG5vdCBz
ZXQKIyBDT05GSUdfU05EX0VTMTkzOCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9FUzE5NjggaXMg
bm90IHNldAojIENPTkZJR19TTkRfRk04MDEgaXMgbm90IHNldAojIENPTkZJR19TTkRfSERTUCBp
cyBub3Qgc2V0CiMgQ09ORklHX1NORF9IRFNQTSBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9JQ0Ux
NzEyIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX0lDRTE3MjQgaXMgbm90IHNldAojIENPTkZJR19T
TkRfSU5URUw4WDAgaXMgbm90IHNldAojIENPTkZJR19TTkRfSU5URUw4WDBNIGlzIG5vdCBzZXQK
IyBDT05GSUdfU05EX0tPUkcxMjEyIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX0xPTEEgaXMgbm90
IHNldAojIENPTkZJR19TTkRfTFg2NDY0RVMgaXMgbm90IHNldAojIENPTkZJR19TTkRfTUFFU1RS
TzMgaXMgbm90IHNldAojIENPTkZJR19TTkRfTUlYQVJUIGlzIG5vdCBzZXQKIyBDT05GSUdfU05E
X05NMjU2IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1BDWEhSIGlzIG5vdCBzZXQKIyBDT05GSUdf
U05EX1JJUFRJREUgaXMgbm90IHNldAojIENPTkZJR19TTkRfUk1FMzIgaXMgbm90IHNldAojIENP
TkZJR19TTkRfUk1FOTYgaXMgbm90IHNldAojIENPTkZJR19TTkRfUk1FOTY1MiBpcyBub3Qgc2V0
CiMgQ09ORklHX1NORF9TRTZYIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPTklDVklCRVMgaXMg
bm90IHNldAojIENPTkZJR19TTkRfVFJJREVOVCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9WSUE4
MlhYIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1ZJQTgyWFhfTU9ERU0gaXMgbm90IHNldAojIENP
TkZJR19TTkRfVklSVFVPU08gaXMgbm90IHNldAojIENPTkZJR19TTkRfVlgyMjIgaXMgbm90IHNl
dAojIENPTkZJR19TTkRfWU1GUENJIGlzIG5vdCBzZXQKCiMKIyBIRC1BdWRpbwojCkNPTkZJR19T
TkRfSERBPW0KIyBDT05GSUdfU05EX0hEQV9JTlRFTCBpcyBub3Qgc2V0CkNPTkZJR19TTkRfSERB
X1RFR1JBPW0KIyBDT05GSUdfU05EX0hEQV9IV0RFUCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9I
REFfUkVDT05GSUcgaXMgbm90IHNldAojIENPTkZJR19TTkRfSERBX0lOUFVUX0JFRVAgaXMgbm90
IHNldAojIENPTkZJR19TTkRfSERBX1BBVENIX0xPQURFUiBpcyBub3Qgc2V0CiMgQ09ORklHX1NO
RF9IREFfQ09ERUNfUkVBTFRFSyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9IREFfQ09ERUNfQU5B
TE9HIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX0hEQV9DT0RFQ19TSUdNQVRFTCBpcyBub3Qgc2V0
CiMgQ09ORklHX1NORF9IREFfQ09ERUNfVklBIGlzIG5vdCBzZXQKQ09ORklHX1NORF9IREFfQ09E
RUNfSERNST1tCiMgQ09ORklHX1NORF9IREFfQ09ERUNfQ0lSUlVTIGlzIG5vdCBzZXQKIyBDT05G
SUdfU05EX0hEQV9DT0RFQ19DUzg0MDkgaXMgbm90IHNldAojIENPTkZJR19TTkRfSERBX0NPREVD
X0NPTkVYQU5UIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX0hEQV9DT0RFQ19DQTAxMTAgaXMgbm90
IHNldAojIENPTkZJR19TTkRfSERBX0NPREVDX0NBMDEzMiBpcyBub3Qgc2V0CiMgQ09ORklHX1NO
RF9IREFfQ09ERUNfQ01FRElBIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX0hEQV9DT0RFQ19TSTMw
NTQgaXMgbm90IHNldAojIENPTkZJR19TTkRfSERBX0dFTkVSSUMgaXMgbm90IHNldApDT05GSUdf
U05EX0hEQV9QT1dFUl9TQVZFX0RFRkFVTFQ9MAojIGVuZCBvZiBIRC1BdWRpbwoKQ09ORklHX1NO
RF9IREFfQ09SRT1tCkNPTkZJR19TTkRfSERBX0FMSUdORURfTU1JTz15CkNPTkZJR19TTkRfSERB
X0NPTVBPTkVOVD15CkNPTkZJR19TTkRfSERBX1BSRUFMTE9DX1NJWkU9NjQKQ09ORklHX1NORF9T
UEk9eQpDT05GSUdfU05EX1VTQj15CiMgQ09ORklHX1NORF9VU0JfQVVESU8gaXMgbm90IHNldAoj
IENPTkZJR19TTkRfVVNCX1VBMTAxIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1VTQl9DQUlBUSBp
cyBub3Qgc2V0CiMgQ09ORklHX1NORF9VU0JfNkZJUkUgaXMgbm90IHNldAojIENPTkZJR19TTkRf
VVNCX0hJRkFDRSBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9CQ0QyMDAwIGlzIG5vdCBzZXQKIyBD
T05GSUdfU05EX1VTQl9QT0QgaXMgbm90IHNldAojIENPTkZJR19TTkRfVVNCX1BPREhEIGlzIG5v
dCBzZXQKIyBDT05GSUdfU05EX1VTQl9UT05FUE9SVCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9V
U0JfVkFSSUFYIGlzIG5vdCBzZXQKQ09ORklHX1NORF9TT0M9eQpDT05GSUdfU05EX1NPQ19HRU5F
UklDX0RNQUVOR0lORV9QQ009eQpDT05GSUdfU05EX1NPQ19DT01QUkVTUz15CiMgQ09ORklHX1NO
RF9TT0NfQURJIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19BTURfQUNQIGlzIG5vdCBzZXQK
IyBDT05GSUdfU05EX0FUTUVMX1NPQyBpcyBub3Qgc2V0CkNPTkZJR19TTkRfQkNNMjgzNV9TT0Nf
STJTPW0KIyBDT05GSUdfU05EX0JDTTYzWFhfSTJTX1dISVNUTEVSIGlzIG5vdCBzZXQKIyBDT05G
SUdfU05EX0RFU0lHTldBUkVfSTJTIGlzIG5vdCBzZXQKCiMKIyBTb0MgQXVkaW8gZm9yIEZyZWVz
Y2FsZSBDUFVzCiMKCiMKIyBDb21tb24gU29DIEF1ZGlvIG9wdGlvbnMgZm9yIEZyZWVzY2FsZSBD
UFVzOgojCkNPTkZJR19TTkRfU09DX0ZTTF9BU1JDPW0KQ09ORklHX1NORF9TT0NfRlNMX1NBST1t
CiMgQ09ORklHX1NORF9TT0NfRlNMX01RUyBpcyBub3Qgc2V0CkNPTkZJR19TTkRfU09DX0ZTTF9B
VURNSVg9bQpDT05GSUdfU05EX1NPQ19GU0xfU1NJPW0KQ09ORklHX1NORF9TT0NfRlNMX1NQRElG
PW0KQ09ORklHX1NORF9TT0NfRlNMX0VTQUk9bQpDT05GSUdfU05EX1NPQ19GU0xfTUlDRklMPW0K
Q09ORklHX1NORF9TT0NfRlNMX0VBU1JDPW0KIyBDT05GSUdfU05EX1NPQ19GU0xfWENWUiBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfRlNMX0FVRDJIVFggaXMgbm90IHNldAojIENPTkZJR19T
TkRfU09DX0ZTTF9SUE1TRyBpcyBub3Qgc2V0CkNPTkZJR19TTkRfU09DX0lNWF9QQ01fRE1BPW0K
Q09ORklHX1NORF9TT0NfSU1YX0FVRE1VWD1tCkNPTkZJR19TTkRfSU1YX1NPQz1tCgojCiMgU29D
IEF1ZGlvIHN1cHBvcnQgZm9yIEZyZWVzY2FsZSBpLk1YIGJvYXJkczoKIwojIENPTkZJR19TTkRf
U09DX0lNWF9FUzgzMjggaXMgbm90IHNldApDT05GSUdfU05EX1NPQ19JTVhfU0dUTDUwMDA9bQpD
T05GSUdfU05EX1NPQ19JTVhfU1BESUY9bQpDT05GSUdfU05EX1NPQ19GU0xfQVNPQ19DQVJEPW0K
Q09ORklHX1NORF9TT0NfSU1YX0FVRE1JWD1tCiMgQ09ORklHX1NORF9TT0NfSU1YX0hETUkgaXMg
bm90IHNldAojIENPTkZJR19TTkRfU09DX0lNWF9SUE1TRyBpcyBub3Qgc2V0CiMgQ09ORklHX1NO
RF9TT0NfSU1YX0NBUkQgaXMgbm90IHNldAojIGVuZCBvZiBTb0MgQXVkaW8gZm9yIEZyZWVzY2Fs
ZSBDUFVzCgojIENPTkZJR19TTkRfSTJTX0hJNjIxMF9JMlMgaXMgbm90IHNldAojIENPTkZJR19T
TkRfS0lSS1dPT0RfU09DIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19JTUcgaXMgbm90IHNl
dAojIENPTkZJR19TTkRfU09DX0lOVEVMX0tFRU1CQVkgaXMgbm90IHNldAojIENPTkZJR19TTkRf
U09DX01UMjcwMSBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfTVQ2Nzk3IGlzIG5vdCBzZXQK
IyBDT05GSUdfU05EX1NPQ19NVDgxNzMgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX01UODE4
MyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfTVRLX0JUQ1ZTRCBpcyBub3Qgc2V0CiMgQ09O
RklHX1NORF9TT0NfTVQ4MTkyIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19NVDgxOTUgaXMg
bm90IHNldAoKIwojIEFTb0Mgc3VwcG9ydCBmb3IgQW1sb2dpYyBwbGF0Zm9ybXMKIwpDT05GSUdf
U05EX01FU09OX0FJVT1tCkNPTkZJR19TTkRfTUVTT05fQVhHX0ZJRk89bQpDT05GSUdfU05EX01F
U09OX0FYR19GUkREUj1tCkNPTkZJR19TTkRfTUVTT05fQVhHX1RPRERSPW0KQ09ORklHX1NORF9N
RVNPTl9BWEdfVERNX0ZPUk1BVFRFUj1tCkNPTkZJR19TTkRfTUVTT05fQVhHX1RETV9JTlRFUkZB
Q0U9bQpDT05GSUdfU05EX01FU09OX0FYR19URE1JTj1tCkNPTkZJR19TTkRfTUVTT05fQVhHX1RE
TU9VVD1tCkNPTkZJR19TTkRfTUVTT05fQVhHX1NPVU5EX0NBUkQ9bQpDT05GSUdfU05EX01FU09O
X0FYR19TUERJRk9VVD1tCkNPTkZJR19TTkRfTUVTT05fQVhHX1NQRElGSU49bQpDT05GSUdfU05E
X01FU09OX0FYR19QRE09bQpDT05GSUdfU05EX01FU09OX0NBUkRfVVRJTFM9bQpDT05GSUdfU05E
X01FU09OX0NPREVDX0dMVUU9bQpDT05GSUdfU05EX01FU09OX0dYX1NPVU5EX0NBUkQ9bQpDT05G
SUdfU05EX01FU09OX0cxMkFfVE9BQ09ERUM9bQpDT05GSUdfU05EX01FU09OX0cxMkFfVE9IRE1J
VFg9bQpDT05GSUdfU05EX1NPQ19NRVNPTl9UOTAxNT1tCiMgZW5kIG9mIEFTb0Mgc3VwcG9ydCBm
b3IgQW1sb2dpYyBwbGF0Zm9ybXMKCkNPTkZJR19TTkRfU09DX1FDT009bQpDT05GSUdfU05EX1NP
Q19MUEFTU19DUFU9bQpDT05GSUdfU05EX1NPQ19MUEFTU19QTEFURk9STT1tCkNPTkZJR19TTkRf
U09DX0xQQVNTX0FQUTgwMTY9bQojIENPTkZJR19TTkRfU09DX1NUT1JNIGlzIG5vdCBzZXQKQ09O
RklHX1NORF9TT0NfQVBRODAxNl9TQkM9bQpDT05GSUdfU05EX1NPQ19RQ09NX0NPTU1PTj1tCkNP
TkZJR19TTkRfU09DX1FEU1A2X0NPTU1PTj1tCkNPTkZJR19TTkRfU09DX1FEU1A2X0NPUkU9bQpD
T05GSUdfU05EX1NPQ19RRFNQNl9BRkU9bQpDT05GSUdfU05EX1NPQ19RRFNQNl9BRkVfREFJPW0K
Q09ORklHX1NORF9TT0NfUURTUDZfQUZFX0NMT0NLUz1tCkNPTkZJR19TTkRfU09DX1FEU1A2X0FE
TT1tCkNPTkZJR19TTkRfU09DX1FEU1A2X1JPVVRJTkc9bQpDT05GSUdfU05EX1NPQ19RRFNQNl9B
U009bQpDT05GSUdfU05EX1NPQ19RRFNQNl9BU01fREFJPW0KQ09ORklHX1NORF9TT0NfUURTUDY9
bQpDT05GSUdfU05EX1NPQ19NU004OTk2PW0KQ09ORklHX1NORF9TT0NfU0RNODQ1PW0KQ09ORklH
X1NORF9TT0NfU004MjUwPW0KIyBDT05GSUdfU05EX1NPQ19TQzcxODAgaXMgbm90IHNldApDT05G
SUdfU05EX1NPQ19ST0NLQ0hJUD1tCkNPTkZJR19TTkRfU09DX1JPQ0tDSElQX0kyUz1tCiMgQ09O
RklHX1NORF9TT0NfUk9DS0NISVBfUERNIGlzIG5vdCBzZXQKQ09ORklHX1NORF9TT0NfUk9DS0NI
SVBfU1BESUY9bQojIENPTkZJR19TTkRfU09DX1JPQ0tDSElQX01BWDk4MDkwIGlzIG5vdCBzZXQK
Q09ORklHX1NORF9TT0NfUk9DS0NISVBfUlQ1NjQ1PW0KIyBDT05GSUdfU05EX1NPQ19SSzMyODhf
SERNSV9BTkFMT0cgaXMgbm90IHNldApDT05GSUdfU05EX1NPQ19SSzMzOTlfR1JVX1NPVU5EPW0K
Q09ORklHX1NORF9TT0NfU0FNU1VORz15CiMgQ09ORklHX1NORF9TQU1TVU5HX1BDTSBpcyBub3Qg
c2V0CiMgQ09ORklHX1NORF9TQU1TVU5HX1NQRElGIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NB
TVNVTkdfSTJTIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19TQU1TVU5HX1NNREtfV004OTk0
IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19TQU1TVU5HX1NNREtfU1BESUYgaXMgbm90IHNl
dAojIENPTkZJR19TTkRfU09DX1NNREtfV004OTk0X1BDTSBpcyBub3Qgc2V0CiMgQ09ORklHX1NO
RF9TT0NfU05PVyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfT0RST0lEIGlzIG5vdCBzZXQK
IyBDT05GSUdfU05EX1NPQ19BUk5EQUxFIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19TQU1T
VU5HX0FSSUVTX1dNODk5NCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfU0FNU1VOR19NSURB
U19XTTE4MTEgaXMgbm90IHNldAoKIwojIFNvQyBBdWRpbyBzdXBwb3J0IGZvciBSZW5lc2FzIFNv
Q3MKIwojIENPTkZJR19TTkRfU09DX1NINF9GU0kgaXMgbm90IHNldApDT05GSUdfU05EX1NPQ19S
Q0FSPW0KIyBDT05GSUdfU05EX1NPQ19SWiBpcyBub3Qgc2V0CiMgZW5kIG9mIFNvQyBBdWRpbyBz
dXBwb3J0IGZvciBSZW5lc2FzIFNvQ3MKCiMgQ09ORklHX1NORF9TT0NfU09GX1RPUExFVkVMIGlz
IG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19TUFJEIGlzIG5vdCBzZXQKCiMKIyBTVE1pY3JvZWxl
Y3Ryb25pY3MgU1RNMzIgU09DIGF1ZGlvIHN1cHBvcnQKIwojIGVuZCBvZiBTVE1pY3JvZWxlY3Ry
b25pY3MgU1RNMzIgU09DIGF1ZGlvIHN1cHBvcnQKCiMKIyBBbGx3aW5uZXIgU29DIEF1ZGlvIHN1
cHBvcnQKIwojIENPTkZJR19TTkRfU1VONElfQ09ERUMgaXMgbm90IHNldAojIENPTkZJR19TTkRf
U1VOOElfQ09ERUMgaXMgbm90IHNldAojIENPTkZJR19TTkRfU1VOOElfQ09ERUNfQU5BTE9HIGlz
IG5vdCBzZXQKIyBDT05GSUdfU05EX1NVTjUwSV9DT0RFQ19BTkFMT0cgaXMgbm90IHNldApDT05G
SUdfU05EX1NVTjRJX0kyUz1tCkNPTkZJR19TTkRfU1VONElfU1BESUY9bQojIGVuZCBvZiBBbGx3
aW5uZXIgU29DIEF1ZGlvIHN1cHBvcnQKCkNPTkZJR19TTkRfU09DX1RFR1JBPW0KIyBDT05GSUdf
U05EX1NPQ19URUdSQTIwX0FDOTcgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1RFR1JBMjBf
REFTIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19URUdSQTIwX0kyUyBpcyBub3Qgc2V0CiMg
Q09ORklHX1NORF9TT0NfVEVHUkEyMF9TUERJRiBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0Nf
VEVHUkEzMF9BSFVCIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19URUdSQTMwX0kyUyBpcyBu
b3Qgc2V0CkNPTkZJR19TTkRfU09DX1RFR1JBMjEwX0FIVUI9bQpDT05GSUdfU05EX1NPQ19URUdS
QTIxMF9ETUlDPW0KQ09ORklHX1NORF9TT0NfVEVHUkEyMTBfSTJTPW0KQ09ORklHX1NORF9TT0Nf
VEVHUkExODZfRFNQSz1tCkNPTkZJR19TTkRfU09DX1RFR1JBMjEwX0FETUFJRj1tCkNPTkZJR19T
TkRfU09DX1RFR1JBX0FVRElPX0dSQVBIX0NBUkQ9bQojIENPTkZJR19TTkRfU09DX1RFR1JBX1JU
NTY0MCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfVEVHUkFfV004NzUzIGlzIG5vdCBzZXQK
IyBDT05GSUdfU05EX1NPQ19URUdSQV9XTTg5MDMgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09D
X1RFR1JBX1dNOTcxMiBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfVEVHUkFfVFJJTVNMSUNF
IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19URUdSQV9BTEM1NjMyIGlzIG5vdCBzZXQKIyBD
T05GSUdfU05EX1NPQ19URUdSQV9NQVg5ODA5MCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0Nf
VEVHUkFfUlQ1Njc3IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19URUdSQV9TR1RMNTAwMCBp
cyBub3Qgc2V0CgojCiMgQXVkaW8gc3VwcG9ydCBmb3IgVGV4YXMgSW5zdHJ1bWVudHMgU29Dcwoj
CgojCiMgVGV4YXMgSW5zdHJ1bWVudHMgREFJIHN1cHBvcnQgZm9yOgojCiMgQ09ORklHX1NORF9T
T0NfREFWSU5DSV9NQ0FTUCBpcyBub3Qgc2V0CgojCiMgQXVkaW8gc3VwcG9ydCBmb3IgYm9hcmRz
IHdpdGggVGV4YXMgSW5zdHJ1bWVudHMgU29DcwojCiMgQ09ORklHX1NORF9TT0NfSjcyMUVfRVZN
IGlzIG5vdCBzZXQKIyBlbmQgb2YgQXVkaW8gc3VwcG9ydCBmb3IgVGV4YXMgSW5zdHJ1bWVudHMg
U29DcwoKIyBDT05GSUdfU05EX1NPQ19VTklQSElFUiBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9T
T0NfWElMSU5YX0kyUyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfWElMSU5YX0FVRElPX0ZP
Uk1BVFRFUiBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfWElMSU5YX1NQRElGIGlzIG5vdCBz
ZXQKIyBDT05GSUdfU05EX1NPQ19YVEZQR0FfSTJTIGlzIG5vdCBzZXQKQ09ORklHX1NORF9TT0Nf
STJDX0FORF9TUEk9eQoKIwojIENPREVDIGRyaXZlcnMKIwpDT05GSUdfU05EX1NPQ19XTV9IVUJT
PW0KIyBDT05GSUdfU05EX1NPQ19BQzk3X0NPREVDIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NP
Q19BREFVMTM3Ml9JMkMgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX0FEQVUxMzcyX1NQSSBp
cyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfQURBVTE3MDEgaXMgbm90IHNldAojIENPTkZJR19T
TkRfU09DX0FEQVUxNzYxX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfQURBVTE3NjFf
U1BJIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19BREFVNzAwMiBpcyBub3Qgc2V0CiMgQ09O
RklHX1NORF9TT0NfQURBVTcxMThfSFcgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX0FEQVU3
MTE4X0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfQUs0MTA0IGlzIG5vdCBzZXQKIyBD
T05GSUdfU05EX1NPQ19BSzQxMTggaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX0FLNDQ1OCBp
cyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfQUs0NTU0IGlzIG5vdCBzZXQKQ09ORklHX1NORF9T
T0NfQUs0NjEzPW0KIyBDT05GSUdfU05EX1NPQ19BSzQ2NDIgaXMgbm90IHNldAojIENPTkZJR19T
TkRfU09DX0FLNTM4NiBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfQUs1NTU4IGlzIG5vdCBz
ZXQKIyBDT05GSUdfU05EX1NPQ19BTEM1NjIzIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19C
RDI4NjIzIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19CVF9TQ08gaXMgbm90IHNldApDT05G
SUdfU05EX1NPQ19DUk9TX0VDX0NPREVDPW0KIyBDT05GSUdfU05EX1NPQ19DUzM1TDMyIGlzIG5v
dCBzZXQKIyBDT05GSUdfU05EX1NPQ19DUzM1TDMzIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NP
Q19DUzM1TDM0IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19DUzM1TDM1IGlzIG5vdCBzZXQK
IyBDT05GSUdfU05EX1NPQ19DUzM1TDM2IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19DUzQy
TDQyIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19DUzQyTDUxX0kyQyBpcyBub3Qgc2V0CiMg
Q09ORklHX1NORF9TT0NfQ1M0Mkw1MiBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfQ1M0Mkw1
NiBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfQ1M0Mkw3MyBpcyBub3Qgc2V0CiMgQ09ORklH
X1NORF9TT0NfQ1M0MjM0IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19DUzQyNjUgaXMgbm90
IHNldAojIENPTkZJR19TTkRfU09DX0NTNDI3MCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0Nf
Q1M0MjcxX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfQ1M0MjcxX1NQSSBpcyBub3Qg
c2V0CiMgQ09ORklHX1NORF9TT0NfQ1M0MlhYOF9JMkMgaXMgbm90IHNldAojIENPTkZJR19TTkRf
U09DX0NTNDMxMzAgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX0NTNDM0MSBpcyBub3Qgc2V0
CiMgQ09ORklHX1NORF9TT0NfQ1M0MzQ5IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19DUzUz
TDMwIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19DWDIwNzJYIGlzIG5vdCBzZXQKIyBDT05G
SUdfU05EX1NPQ19EQTcyMTMgaXMgbm90IHNldApDT05GSUdfU05EX1NPQ19EQTcyMTk9bQpDT05G
SUdfU05EX1NPQ19ETUlDPW0KQ09ORklHX1NORF9TT0NfSERNSV9DT0RFQz1tCkNPTkZJR19TTkRf
U09DX0VTNzEzND1tCkNPTkZJR19TTkRfU09DX0VTNzI0MT1tCiMgQ09ORklHX1NORF9TT0NfRVM4
MzE2IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19FUzgzMjhfSTJDIGlzIG5vdCBzZXQKIyBD
T05GSUdfU05EX1NPQ19FUzgzMjhfU1BJIGlzIG5vdCBzZXQKQ09ORklHX1NORF9TT0NfR1RNNjAx
PW0KIyBDT05GSUdfU05EX1NPQ19JQ1M0MzQzMiBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0Nf
SU5OT19SSzMwMzYgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX01BWDk4MDg4IGlzIG5vdCBz
ZXQKQ09ORklHX1NORF9TT0NfTUFYOTgzNTdBPW0KIyBDT05GSUdfU05EX1NPQ19NQVg5ODUwNCBp
cyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfTUFYOTg2NyBpcyBub3Qgc2V0CkNPTkZJR19TTkRf
U09DX01BWDk4OTI3PW0KIyBDT05GSUdfU05EX1NPQ19NQVg5ODM3M19JMkMgaXMgbm90IHNldAoj
IENPTkZJR19TTkRfU09DX01BWDk4MzczX1NEVyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0Nf
TUFYOTgzOTAgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX01BWDk4NjAgaXMgbm90IHNldApD
T05GSUdfU05EX1NPQ19NU004OTE2X1dDRF9BTkFMT0c9bQpDT05GSUdfU05EX1NPQ19NU004OTE2
X1dDRF9ESUdJVEFMPW0KIyBDT05GSUdfU05EX1NPQ19QQ00xNjgxIGlzIG5vdCBzZXQKIyBDT05G
SUdfU05EX1NPQ19QQ00xNzg5X0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfUENNMTc5
WF9JMkMgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1BDTTE3OVhfU1BJIGlzIG5vdCBzZXQK
IyBDT05GSUdfU05EX1NPQ19QQ00xODZYX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0Nf
UENNMTg2WF9TUEkgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1BDTTMwNjBfSTJDIGlzIG5v
dCBzZXQKIyBDT05GSUdfU05EX1NPQ19QQ00zMDYwX1NQSSBpcyBub3Qgc2V0CkNPTkZJR19TTkRf
U09DX1BDTTMxNjhBPW0KQ09ORklHX1NORF9TT0NfUENNMzE2OEFfSTJDPW0KIyBDT05GSUdfU05E
X1NPQ19QQ00zMTY4QV9TUEkgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1BDTTUxMDJBIGlz
IG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19QQ001MTJ4X0kyQyBpcyBub3Qgc2V0CiMgQ09ORklH
X1NORF9TT0NfUENNNTEyeF9TUEkgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1JLMzMyOCBp
cyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfUks4MTcgaXMgbm90IHNldApDT05GSUdfU05EX1NP
Q19STDYyMzE9bQojIENPTkZJR19TTkRfU09DX1JUMTMwOF9TRFcgaXMgbm90IHNldAojIENPTkZJ
R19TTkRfU09DX1JUMTMxNl9TRFcgaXMgbm90IHNldApDT05GSUdfU05EX1NPQ19SVDU1MTQ9bQpD
T05GSUdfU05EX1NPQ19SVDU1MTRfU1BJPW0KIyBDT05GSUdfU05EX1NPQ19SVDU2MTYgaXMgbm90
IHNldAojIENPTkZJR19TTkRfU09DX1JUNTYzMSBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0Nf
UlQ1NjQwIGlzIG5vdCBzZXQKQ09ORklHX1NORF9TT0NfUlQ1NjQ1PW0KQ09ORklHX1NORF9TT0Nf
UlQ1NjU5PW0KQ09ORklHX1NORF9TT0NfUlQ1NjYzPW0KIyBDT05GSUdfU05EX1NPQ19SVDU2ODJf
U0RXIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19SVDcwMF9TRFcgaXMgbm90IHNldAojIENP
TkZJR19TTkRfU09DX1JUNzExX1NEVyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfUlQ3MTFf
U0RDQV9TRFcgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1JUNzE1X1NEVyBpcyBub3Qgc2V0
CiMgQ09ORklHX1NORF9TT0NfUlQ3MTVfU0RDQV9TRFcgaXMgbm90IHNldApDT05GSUdfU05EX1NP
Q19TR1RMNTAwMD1tCkNPTkZJR19TTkRfU09DX1NJTVBMRV9BTVBMSUZJRVI9bQpDT05GSUdfU05E
X1NPQ19TSU1QTEVfTVVYPW0KQ09ORklHX1NORF9TT0NfU1BESUY9bQojIENPTkZJR19TTkRfU09D
X1NTTTIzMDUgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1NTTTI1MTggaXMgbm90IHNldAoj
IENPTkZJR19TTkRfU09DX1NTTTI2MDJfU1BJIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19T
U00yNjAyX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfU1NNNDU2NyBpcyBub3Qgc2V0
CiMgQ09ORklHX1NORF9TT0NfU1RBMzJYIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19TVEEz
NTAgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1NUSV9TQVMgaXMgbm90IHNldAojIENPTkZJ
R19TTkRfU09DX1RBUzI1NTIgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1RBUzI1NjIgaXMg
bm90IHNldAojIENPTkZJR19TTkRfU09DX1RBUzI3NjQgaXMgbm90IHNldAojIENPTkZJR19TTkRf
U09DX1RBUzI3NzAgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1RBUzUwODYgaXMgbm90IHNl
dApDT05GSUdfU05EX1NPQ19UQVM1NzFYPW0KIyBDT05GSUdfU05EX1NPQ19UQVM1NzIwIGlzIG5v
dCBzZXQKIyBDT05GSUdfU05EX1NPQ19UQVM2NDI0IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NP
Q19UREE3NDE5IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19URkE5ODc5IGlzIG5vdCBzZXQK
IyBDT05GSUdfU05EX1NPQ19URkE5ODlYIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19UTFYz
MjBBSUMyM19JMkMgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1RMVjMyMEFJQzIzX1NQSSBp
cyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfVExWMzIwQUlDMzFYWCBpcyBub3Qgc2V0CiMgQ09O
RklHX1NORF9TT0NfVExWMzIwQUlDMzJYNF9JMkMgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09D
X1RMVjMyMEFJQzMyWDRfU1BJIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19UTFYzMjBBSUMz
WF9JMkMgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1RMVjMyMEFJQzNYX1NQSSBpcyBub3Qg
c2V0CiMgQ09ORklHX1NORF9TT0NfVExWMzIwQURDWDE0MCBpcyBub3Qgc2V0CiMgQ09ORklHX1NO
RF9TT0NfVFMzQTIyN0UgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1RTQ1M0MlhYIGlzIG5v
dCBzZXQKIyBDT05GSUdfU05EX1NPQ19UU0NTNDU0IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NP
Q19VREExMzM0IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19XQ0Q5MzM1IGlzIG5vdCBzZXQK
Q09ORklHX1NORF9TT0NfV0NEX01CSEM9bQpDT05GSUdfU05EX1NPQ19XQ0Q5MzRYPW0KIyBDT05G
SUdfU05EX1NPQ19XQ0Q5MzhYX1NEVyBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfV004NTEw
IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19XTTg1MjMgaXMgbm90IHNldAojIENPTkZJR19T
TkRfU09DX1dNODUyNCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfV004NTgwIGlzIG5vdCBz
ZXQKIyBDT05GSUdfU05EX1NPQ19XTTg3MTEgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1dN
ODcyOCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfV004NzMxIGlzIG5vdCBzZXQKIyBDT05G
SUdfU05EX1NPQ19XTTg3MzcgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1dNODc0MSBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfV004NzUwIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NP
Q19XTTg3NTMgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1dNODc3MCBpcyBub3Qgc2V0CiMg
Q09ORklHX1NORF9TT0NfV004Nzc2IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19XTTg3ODIg
aXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1dNODgwNF9JMkMgaXMgbm90IHNldAojIENPTkZJ
R19TTkRfU09DX1dNODgwNF9TUEkgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1dNODkwMyBp
cyBub3Qgc2V0CkNPTkZJR19TTkRfU09DX1dNODkwND1tCkNPTkZJR19TTkRfU09DX1dNODk2MD1t
CkNPTkZJR19TTkRfU09DX1dNODk2Mj1tCiMgQ09ORklHX1NORF9TT0NfV004OTc0IGlzIG5vdCBz
ZXQKIyBDT05GSUdfU05EX1NPQ19XTTg5NzggaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX1dN
ODk4NSBpcyBub3Qgc2V0CkNPTkZJR19TTkRfU09DX1dNODk5ND1tCkNPTkZJR19TTkRfU09DX1dT
QTg4MVg9bQojIENPTkZJR19TTkRfU09DX1pMMzgwNjAgaXMgbm90IHNldAojIENPTkZJR19TTkRf
U09DX01BWDk3NTkgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX01UNjM1MSBpcyBub3Qgc2V0
CiMgQ09ORklHX1NORF9TT0NfTVQ2MzU4IGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19NVDYz
NTkgaXMgbm90IHNldAojIENPTkZJR19TTkRfU09DX01UNjM1OV9BQ0NERVQgaXMgbm90IHNldAoj
IENPTkZJR19TTkRfU09DX01UNjY2MCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfTkFVODMx
NSBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfTkFVODU0MCBpcyBub3Qgc2V0CiMgQ09ORklH
X1NORF9TT0NfTkFVODgxMCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfTkFVODgyMiBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NORF9TT0NfTkFVODgyNCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9T
T0NfVFBBNjEzMEEyIGlzIG5vdCBzZXQKQ09ORklHX1NORF9TT0NfTFBBU1NfV1NBX01BQ1JPPW0K
Q09ORklHX1NORF9TT0NfTFBBU1NfVkFfTUFDUk89bQojIENPTkZJR19TTkRfU09DX0xQQVNTX1JY
X01BQ1JPIGlzIG5vdCBzZXQKIyBDT05GSUdfU05EX1NPQ19MUEFTU19UWF9NQUNSTyBpcyBub3Qg
c2V0CiMgZW5kIG9mIENPREVDIGRyaXZlcnMKCkNPTkZJR19TTkRfU0lNUExFX0NBUkRfVVRJTFM9
bQpDT05GSUdfU05EX1NJTVBMRV9DQVJEPW0KQ09ORklHX1NORF9BVURJT19HUkFQSF9DQVJEPW0K
IyBDT05GSUdfU05EX1hFTl9GUk9OVEVORCBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9WSVJUSU8g
aXMgbm90IHNldAoKIwojIEhJRCBzdXBwb3J0CiMKQ09ORklHX0hJRD15CiMgQ09ORklHX0hJRF9C
QVRURVJZX1NUUkVOR1RIIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEUkFXIGlzIG5vdCBzZXQKIyBD
T05GSUdfVUhJRCBpcyBub3Qgc2V0CkNPTkZJR19ISURfR0VORVJJQz15CgojCiMgU3BlY2lhbCBI
SUQgZHJpdmVycwojCkNPTkZJR19ISURfQTRURUNIPXkKIyBDT05GSUdfSElEX0FDQ1VUT1VDSCBp
cyBub3Qgc2V0CiMgQ09ORklHX0hJRF9BQ1JVWCBpcyBub3Qgc2V0CkNPTkZJR19ISURfQVBQTEU9
eQojIENPTkZJR19ISURfQVBQTEVJUiBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9BU1VTIGlzIG5v
dCBzZXQKIyBDT05GSUdfSElEX0FVUkVBTCBpcyBub3Qgc2V0CkNPTkZJR19ISURfQkVMS0lOPXkK
IyBDT05GSUdfSElEX0JFVE9QX0ZGIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX0JJR0JFTl9GRiBp
cyBub3Qgc2V0CkNPTkZJR19ISURfQ0hFUlJZPXkKQ09ORklHX0hJRF9DSElDT05ZPXkKIyBDT05G
SUdfSElEX0NPUlNBSVIgaXMgbm90IHNldAojIENPTkZJR19ISURfQ09VR0FSIGlzIG5vdCBzZXQK
IyBDT05GSUdfSElEX01BQ0FMTFkgaXMgbm90IHNldAojIENPTkZJR19ISURfUFJPRElLRVlTIGlz
IG5vdCBzZXQKIyBDT05GSUdfSElEX0NNRURJQSBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9DUkVB
VElWRV9TQjA1NDAgaXMgbm90IHNldApDT05GSUdfSElEX0NZUFJFU1M9eQojIENPTkZJR19ISURf
RFJBR09OUklTRSBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9FTVNfRkYgaXMgbm90IHNldAojIENP
TkZJR19ISURfRUxBTiBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9FTEVDT00gaXMgbm90IHNldAoj
IENPTkZJR19ISURfRUxPIGlzIG5vdCBzZXQKQ09ORklHX0hJRF9FWktFWT15CiMgQ09ORklHX0hJ
RF9HRU1CSVJEIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX0dGUk0gaXMgbm90IHNldAojIENPTkZJ
R19ISURfR0xPUklPVVMgaXMgbm90IHNldAojIENPTkZJR19ISURfSE9MVEVLIGlzIG5vdCBzZXQK
IyBDT05GSUdfSElEX0dPT0dMRV9IQU1NRVIgaXMgbm90IHNldAojIENPTkZJR19ISURfVklWQUxE
SSBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9HVDY4M1IgaXMgbm90IHNldAojIENPTkZJR19ISURf
S0VZVE9VQ0ggaXMgbm90IHNldAojIENPTkZJR19ISURfS1lFIGlzIG5vdCBzZXQKIyBDT05GSUdf
SElEX1VDTE9HSUMgaXMgbm90IHNldAojIENPTkZJR19ISURfV0FMVE9QIGlzIG5vdCBzZXQKIyBD
T05GSUdfSElEX1ZJRVdTT05JQyBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9HWVJBVElPTiBpcyBu
b3Qgc2V0CiMgQ09ORklHX0hJRF9JQ0FERSBpcyBub3Qgc2V0CkNPTkZJR19ISURfSVRFPXkKIyBD
T05GSUdfSElEX0pBQlJBIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX1RXSU5IQU4gaXMgbm90IHNl
dApDT05GSUdfSElEX0tFTlNJTkdUT049eQojIENPTkZJR19ISURfTENQT1dFUiBpcyBub3Qgc2V0
CiMgQ09ORklHX0hJRF9MRUQgaXMgbm90IHNldAojIENPTkZJR19ISURfTEVOT1ZPIGlzIG5vdCBz
ZXQKQ09ORklHX0hJRF9MT0dJVEVDSD15CiMgQ09ORklHX0hJRF9MT0dJVEVDSF9ISURQUCBpcyBu
b3Qgc2V0CiMgQ09ORklHX0xPR0lURUNIX0ZGIGlzIG5vdCBzZXQKIyBDT05GSUdfTE9HSVJVTUJM
RVBBRDJfRkYgaXMgbm90IHNldAojIENPTkZJR19MT0dJRzk0MF9GRiBpcyBub3Qgc2V0CiMgQ09O
RklHX0xPR0lXSEVFTFNfRkYgaXMgbm90IHNldAojIENPTkZJR19ISURfTUFHSUNNT1VTRSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0hJRF9NQUxUUk9OIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX01BWUZM
QVNIIGlzIG5vdCBzZXQKQ09ORklHX0hJRF9SRURSQUdPTj15CkNPTkZJR19ISURfTUlDUk9TT0ZU
PXkKQ09ORklHX0hJRF9NT05URVJFWT15CkNPTkZJR19ISURfTVVMVElUT1VDSD1tCiMgQ09ORklH
X0hJRF9OVEkgaXMgbm90IHNldAojIENPTkZJR19ISURfTlRSSUcgaXMgbm90IHNldAojIENPTkZJ
R19ISURfT1JURUsgaXMgbm90IHNldAojIENPTkZJR19ISURfUEFOVEhFUkxPUkQgaXMgbm90IHNl
dAojIENPTkZJR19ISURfUEVOTU9VTlQgaXMgbm90IHNldAojIENPTkZJR19ISURfUEVUQUxZTlgg
aXMgbm90IHNldAojIENPTkZJR19ISURfUElDT0xDRCBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9Q
TEFOVFJPTklDUyBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9QTEFZU1RBVElPTiBpcyBub3Qgc2V0
CiMgQ09ORklHX0hJRF9QUklNQVggaXMgbm90IHNldAojIENPTkZJR19ISURfUkVUUk9ERSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0hJRF9ST0NDQVQgaXMgbm90IHNldAojIENPTkZJR19ISURfU0FJVEVL
IGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX1NBTVNVTkcgaXMgbm90IHNldAojIENPTkZJR19ISURf
U0VNSVRFSyBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9TT05ZIGlzIG5vdCBzZXQKIyBDT05GSUdf
SElEX1NQRUVETElOSyBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9TVEVBTSBpcyBub3Qgc2V0CiMg
Q09ORklHX0hJRF9TVEVFTFNFUklFUyBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9TVU5QTFVTIGlz
IG5vdCBzZXQKIyBDT05GSUdfSElEX1JNSSBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9HUkVFTkFT
SUEgaXMgbm90IHNldAojIENPTkZJR19ISURfU01BUlRKT1lQTFVTIGlzIG5vdCBzZXQKIyBDT05G
SUdfSElEX1RJVk8gaXMgbm90IHNldAojIENPTkZJR19ISURfVE9QU0VFRCBpcyBub3Qgc2V0CiMg
Q09ORklHX0hJRF9USElOR00gaXMgbm90IHNldAojIENPTkZJR19ISURfVEhSVVNUTUFTVEVSIGlz
IG5vdCBzZXQKIyBDT05GSUdfSElEX1VEUkFXX1BTMyBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9V
MkZaRVJPIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX1dBQ09NIGlzIG5vdCBzZXQKIyBDT05GSUdf
SElEX1dJSU1PVEUgaXMgbm90IHNldAojIENPTkZJR19ISURfWElOTU8gaXMgbm90IHNldAojIENP
TkZJR19ISURfWkVST1BMVVMgaXMgbm90IHNldAojIENPTkZJR19ISURfWllEQUNST04gaXMgbm90
IHNldAojIENPTkZJR19ISURfU0VOU09SX0hVQiBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9BTFBT
IGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX01DUDIyMjEgaXMgbm90IHNldAojIGVuZCBvZiBTcGVj
aWFsIEhJRCBkcml2ZXJzCgojCiMgVVNCIEhJRCBzdXBwb3J0CiMKQ09ORklHX1VTQl9ISUQ9eQoj
IENPTkZJR19ISURfUElEIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0hJRERFViBpcyBub3Qgc2V0
CiMgZW5kIG9mIFVTQiBISUQgc3VwcG9ydAoKIwojIEkyQyBISUQgc3VwcG9ydAojCkNPTkZJR19J
MkNfSElEX0FDUEk9bQpDT05GSUdfSTJDX0hJRF9PRj1tCiMgQ09ORklHX0kyQ19ISURfT0ZfR09P
RElYIGlzIG5vdCBzZXQKIyBlbmQgb2YgSTJDIEhJRCBzdXBwb3J0CgpDT05GSUdfSTJDX0hJRF9D
T1JFPW0KIyBlbmQgb2YgSElEIHN1cHBvcnQKCkNPTkZJR19VU0JfT0hDSV9MSVRUTEVfRU5ESUFO
PXkKQ09ORklHX1VTQl9TVVBQT1JUPXkKQ09ORklHX1VTQl9DT01NT049eQojIENPTkZJR19VU0Jf
TEVEX1RSSUcgaXMgbm90IHNldApDT05GSUdfVVNCX1VMUElfQlVTPXkKQ09ORklHX1VTQl9DT05O
X0dQSU89eQpDT05GSUdfVVNCX0FSQ0hfSEFTX0hDRD15CkNPTkZJR19VU0I9eQpDT05GSUdfVVNC
X1BDST15CiMgQ09ORklHX1VTQl9BTk5PVU5DRV9ORVdfREVWSUNFUyBpcyBub3Qgc2V0CgojCiMg
TWlzY2VsbGFuZW91cyBVU0Igb3B0aW9ucwojCkNPTkZJR19VU0JfREVGQVVMVF9QRVJTSVNUPXkK
IyBDT05GSUdfVVNCX0ZFV19JTklUX1JFVFJJRVMgaXMgbm90IHNldAojIENPTkZJR19VU0JfRFlO
QU1JQ19NSU5PUlMgaXMgbm90IHNldApDT05GSUdfVVNCX09URz15CiMgQ09ORklHX1VTQl9PVEdf
UFJPRFVDVExJU1QgaXMgbm90IHNldAojIENPTkZJR19VU0JfT1RHX0RJU0FCTEVfRVhURVJOQUxf
SFVCIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX09UR19GU00gaXMgbm90IHNldAojIENPTkZJR19V
U0JfTEVEU19UUklHR0VSX1VTQlBPUlQgaXMgbm90IHNldApDT05GSUdfVVNCX0FVVE9TVVNQRU5E
X0RFTEFZPTIKIyBDT05GSUdfVVNCX01PTiBpcyBub3Qgc2V0CgojCiMgVVNCIEhvc3QgQ29udHJv
bGxlciBEcml2ZXJzCiMKIyBDT05GSUdfVVNCX0M2N1gwMF9IQ0QgaXMgbm90IHNldApDT05GSUdf
VVNCX1hIQ0lfSENEPXkKIyBDT05GSUdfVVNCX1hIQ0lfREJHQ0FQIGlzIG5vdCBzZXQKQ09ORklH
X1VTQl9YSENJX1BDST1tCkNPTkZJR19VU0JfWEhDSV9QQ0lfUkVORVNBUz1tCkNPTkZJR19VU0Jf
WEhDSV9QTEFURk9STT15CiMgQ09ORklHX1VTQl9YSENJX0hJU1RCIGlzIG5vdCBzZXQKQ09ORklH
X1VTQl9YSENJX01USz15CiMgQ09ORklHX1VTQl9YSENJX01WRUJVIGlzIG5vdCBzZXQKQ09ORklH
X1VTQl9YSENJX1JDQVI9eQpDT05GSUdfVVNCX1hIQ0lfVEVHUkE9eQojIENPTkZJR19VU0JfQlJD
TVNUQiBpcyBub3Qgc2V0CkNPTkZJR19VU0JfRUhDSV9IQ0Q9eQpDT05GSUdfVVNCX0VIQ0lfUk9P
VF9IVUJfVFQ9eQpDT05GSUdfVVNCX0VIQ0lfVFRfTkVXU0NIRUQ9eQpDT05GSUdfVVNCX0VIQ0lf
UENJPXkKIyBDT05GSUdfVVNCX0VIQ0lfRlNMIGlzIG5vdCBzZXQKQ09ORklHX1VTQl9FSENJX0hD
RF9PUklPTj15CiMgQ09ORklHX1VTQl9FSENJX1RFR1JBIGlzIG5vdCBzZXQKQ09ORklHX1VTQl9F
SENJX0VYWU5PUz15CkNPTkZJR19VU0JfRUhDSV9IQ0RfUExBVEZPUk09eQojIENPTkZJR19VU0Jf
T1hVMjEwSFBfSENEIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0lTUDExNlhfSENEIGlzIG5vdCBz
ZXQKIyBDT05GSUdfVVNCX0ZPVEcyMTBfSENEIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX01BWDM0
MjFfSENEIGlzIG5vdCBzZXQKQ09ORklHX1VTQl9PSENJX0hDRD15CkNPTkZJR19VU0JfT0hDSV9I
Q0RfUENJPXkKQ09ORklHX1VTQl9PSENJX0VYWU5PUz15CkNPTkZJR19VU0JfT0hDSV9IQ0RfUExB
VEZPUk09eQojIENPTkZJR19VU0JfVUhDSV9IQ0QgaXMgbm90IHNldAojIENPTkZJR19VU0JfU0w4
MTFfSENEIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1I4QTY2NTk3X0hDRCBpcyBub3Qgc2V0CkNP
TkZJR19VU0JfUkVORVNBU19VU0JIU19IQ0Q9bQojIENPTkZJR19VU0JfSENEX1RFU1RfTU9ERSBp
cyBub3Qgc2V0CkNPTkZJR19VU0JfUkVORVNBU19VU0JIUz1tCgojCiMgVVNCIERldmljZSBDbGFz
cyBkcml2ZXJzCiMKQ09ORklHX1VTQl9BQ009bQojIENPTkZJR19VU0JfUFJJTlRFUiBpcyBub3Qg
c2V0CiMgQ09ORklHX1VTQl9XRE0gaXMgbm90IHNldAojIENPTkZJR19VU0JfVE1DIGlzIG5vdCBz
ZXQKCiMKIyBOT1RFOiBVU0JfU1RPUkFHRSBkZXBlbmRzIG9uIFNDU0kgYnV0IEJMS19ERVZfU0Qg
bWF5CiMKCiMKIyBhbHNvIGJlIG5lZWRlZDsgc2VlIFVTQl9TVE9SQUdFIEhlbHAgZm9yIG1vcmUg
aW5mbwojCkNPTkZJR19VU0JfU1RPUkFHRT15CiMgQ09ORklHX1VTQl9TVE9SQUdFX0RFQlVHIGlz
IG5vdCBzZXQKIyBDT05GSUdfVVNCX1NUT1JBR0VfUkVBTFRFSyBpcyBub3Qgc2V0CiMgQ09ORklH
X1VTQl9TVE9SQUdFX0RBVEFGQUIgaXMgbm90IHNldAojIENPTkZJR19VU0JfU1RPUkFHRV9GUkVF
Q09NIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NUT1JBR0VfSVNEMjAwIGlzIG5vdCBzZXQKIyBD
T05GSUdfVVNCX1NUT1JBR0VfVVNCQVQgaXMgbm90IHNldAojIENPTkZJR19VU0JfU1RPUkFHRV9T
RERSMDkgaXMgbm90IHNldAojIENPTkZJR19VU0JfU1RPUkFHRV9TRERSNTUgaXMgbm90IHNldAoj
IENPTkZJR19VU0JfU1RPUkFHRV9KVU1QU0hPVCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TVE9S
QUdFX0FMQVVEQSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TVE9SQUdFX09ORVRPVUNIIGlzIG5v
dCBzZXQKIyBDT05GSUdfVVNCX1NUT1JBR0VfS0FSTUEgaXMgbm90IHNldAojIENPTkZJR19VU0Jf
U1RPUkFHRV9DWVBSRVNTX0FUQUNCIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NUT1JBR0VfRU5F
X1VCNjI1MCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9VQVMgaXMgbm90IHNldAoKIwojIFVTQiBJ
bWFnaW5nIGRldmljZXMKIwojIENPTkZJR19VU0JfTURDODAwIGlzIG5vdCBzZXQKIyBDT05GSUdf
VVNCX01JQ1JPVEVLIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCSVBfQ09SRSBpcyBub3Qgc2V0CiMg
Q09ORklHX1VTQl9DRE5TX1NVUFBPUlQgaXMgbm90IHNldApDT05GSUdfVVNCX01UVTM9eQojIENP
TkZJR19VU0JfTVRVM19IT1NUIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX01UVTNfR0FER0VUIGlz
IG5vdCBzZXQKQ09ORklHX1VTQl9NVFUzX0RVQUxfUk9MRT15CiMgQ09ORklHX1VTQl9NVFUzX0RF
QlVHIGlzIG5vdCBzZXQKQ09ORklHX1VTQl9NVVNCX0hEUkM9eQojIENPTkZJR19VU0JfTVVTQl9I
T1NUIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX01VU0JfR0FER0VUIGlzIG5vdCBzZXQKQ09ORklH
X1VTQl9NVVNCX0RVQUxfUk9MRT15CgojCiMgUGxhdGZvcm0gR2x1ZSBMYXllcgojCkNPTkZJR19V
U0JfTVVTQl9TVU5YST15CiMgQ09ORklHX1VTQl9NVVNCX01FRElBVEVLIGlzIG5vdCBzZXQKCiMK
IyBNVVNCIERNQSBtb2RlCiMKIyBDT05GSUdfTVVTQl9QSU9fT05MWSBpcyBub3Qgc2V0CkNPTkZJ
R19VU0JfRFdDMz15CiMgQ09ORklHX1VTQl9EV0MzX1VMUEkgaXMgbm90IHNldAojIENPTkZJR19V
U0JfRFdDM19IT1NUIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0RXQzNfR0FER0VUIGlzIG5vdCBz
ZXQKQ09ORklHX1VTQl9EV0MzX0RVQUxfUk9MRT15CgojCiMgUGxhdGZvcm0gR2x1ZSBEcml2ZXIg
U3VwcG9ydAojCkNPTkZJR19VU0JfRFdDM19FWFlOT1M9eQpDT05GSUdfVVNCX0RXQzNfUENJPXkK
Q09ORklHX1VTQl9EV0MzX0hBUFM9eQpDT05GSUdfVVNCX0RXQzNfS0VZU1RPTkU9eQpDT05GSUdf
VVNCX0RXQzNfTUVTT05fRzEyQT15CkNPTkZJR19VU0JfRFdDM19PRl9TSU1QTEU9eQpDT05GSUdf
VVNCX0RXQzNfUUNPTT15CkNPTkZJR19VU0JfRFdDM19JTVg4TVA9eQpDT05GSUdfVVNCX0RXQzNf
WElMSU5YPXkKQ09ORklHX1VTQl9EV0MyPXkKIyBDT05GSUdfVVNCX0RXQzJfSE9TVCBpcyBub3Qg
c2V0CgojCiMgR2FkZ2V0L0R1YWwtcm9sZSBtb2RlIHJlcXVpcmVzIFVTQiBHYWRnZXQgc3VwcG9y
dCB0byBiZSBlbmFibGVkCiMKIyBDT05GSUdfVVNCX0RXQzJfUEVSSVBIRVJBTCBpcyBub3Qgc2V0
CkNPTkZJR19VU0JfRFdDMl9EVUFMX1JPTEU9eQojIENPTkZJR19VU0JfRFdDMl9QQ0kgaXMgbm90
IHNldAojIENPTkZJR19VU0JfRFdDMl9ERUJVRyBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9EV0My
X1RSQUNLX01JU1NFRF9TT0ZTIGlzIG5vdCBzZXQKQ09ORklHX1VTQl9DSElQSURFQT15CkNPTkZJ
R19VU0JfQ0hJUElERUFfVURDPXkKQ09ORklHX1VTQl9DSElQSURFQV9IT1NUPXkKQ09ORklHX1VT
Ql9DSElQSURFQV9QQ0k9eQpDT05GSUdfVVNCX0NISVBJREVBX01TTT15CkNPTkZJR19VU0JfQ0hJ
UElERUFfSU1YPXkKQ09ORklHX1VTQl9DSElQSURFQV9HRU5FUklDPXkKQ09ORklHX1VTQl9DSElQ
SURFQV9URUdSQT15CkNPTkZJR19VU0JfSVNQMTc2MD15CkNPTkZJR19VU0JfSVNQMTc2MF9IQ0Q9
eQpDT05GSUdfVVNCX0lTUDE3NjFfVURDPXkKIyBDT05GSUdfVVNCX0lTUDE3NjBfSE9TVF9ST0xF
IGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0lTUDE3NjBfR0FER0VUX1JPTEUgaXMgbm90IHNldApD
T05GSUdfVVNCX0lTUDE3NjBfRFVBTF9ST0xFPXkKCiMKIyBVU0IgcG9ydCBkcml2ZXJzCiMKQ09O
RklHX1VTQl9TRVJJQUw9bQojIENPTkZJR19VU0JfU0VSSUFMX0dFTkVSSUMgaXMgbm90IHNldAoj
IENPTkZJR19VU0JfU0VSSUFMX1NJTVBMRSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TRVJJQUxf
QUlSQ0FCTEUgaXMgbm90IHNldAojIENPTkZJR19VU0JfU0VSSUFMX0FSSzMxMTYgaXMgbm90IHNl
dAojIENPTkZJR19VU0JfU0VSSUFMX0JFTEtJTiBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TRVJJ
QUxfQ0gzNDEgaXMgbm90IHNldAojIENPTkZJR19VU0JfU0VSSUFMX1dISVRFSEVBVCBpcyBub3Qg
c2V0CiMgQ09ORklHX1VTQl9TRVJJQUxfRElHSV9BQ0NFTEVQT1JUIGlzIG5vdCBzZXQKQ09ORklH
X1VTQl9TRVJJQUxfQ1AyMTBYPW0KIyBDT05GSUdfVVNCX1NFUklBTF9DWVBSRVNTX004IGlzIG5v
dCBzZXQKIyBDT05GSUdfVVNCX1NFUklBTF9FTVBFRyBpcyBub3Qgc2V0CkNPTkZJR19VU0JfU0VS
SUFMX0ZURElfU0lPPW0KIyBDT05GSUdfVVNCX1NFUklBTF9WSVNPUiBpcyBub3Qgc2V0CiMgQ09O
RklHX1VTQl9TRVJJQUxfSVBBUSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TRVJJQUxfSVIgaXMg
bm90IHNldAojIENPTkZJR19VU0JfU0VSSUFMX0VER0VQT1JUIGlzIG5vdCBzZXQKIyBDT05GSUdf
VVNCX1NFUklBTF9FREdFUE9SVF9USSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TRVJJQUxfRjgx
MjMyIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NFUklBTF9GODE1M1ggaXMgbm90IHNldAojIENP
TkZJR19VU0JfU0VSSUFMX0dBUk1JTiBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TRVJJQUxfSVBX
IGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NFUklBTF9JVVUgaXMgbm90IHNldAojIENPTkZJR19V
U0JfU0VSSUFMX0tFWVNQQU5fUERBIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NFUklBTF9LRVlT
UEFOIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NFUklBTF9LTFNJIGlzIG5vdCBzZXQKIyBDT05G
SUdfVVNCX1NFUklBTF9LT0JJTF9TQ1QgaXMgbm90IHNldAojIENPTkZJR19VU0JfU0VSSUFMX01D
VF9VMjMyIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NFUklBTF9NRVRSTyBpcyBub3Qgc2V0CiMg
Q09ORklHX1VTQl9TRVJJQUxfTU9TNzcyMCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TRVJJQUxf
TU9TNzg0MCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TRVJJQUxfTVhVUE9SVCBpcyBub3Qgc2V0
CiMgQ09ORklHX1VTQl9TRVJJQUxfTkFWTUFOIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NFUklB
TF9QTDIzMDMgaXMgbm90IHNldAojIENPTkZJR19VU0JfU0VSSUFMX09USTY4NTggaXMgbm90IHNl
dAojIENPTkZJR19VU0JfU0VSSUFMX1FDQVVYIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NFUklB
TF9RVUFMQ09NTSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TRVJJQUxfU1BDUDhYNSBpcyBub3Qg
c2V0CiMgQ09ORklHX1VTQl9TRVJJQUxfU0FGRSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TRVJJ
QUxfU0lFUlJBV0lSRUxFU1MgaXMgbm90IHNldAojIENPTkZJR19VU0JfU0VSSUFMX1NZTUJPTCBp
cyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TRVJJQUxfVEkgaXMgbm90IHNldAojIENPTkZJR19VU0Jf
U0VSSUFMX0NZQkVSSkFDSyBpcyBub3Qgc2V0CkNPTkZJR19VU0JfU0VSSUFMX1dXQU49bQpDT05G
SUdfVVNCX1NFUklBTF9PUFRJT049bQojIENPTkZJR19VU0JfU0VSSUFMX09NTklORVQgaXMgbm90
IHNldAojIENPTkZJR19VU0JfU0VSSUFMX09QVElDT04gaXMgbm90IHNldAojIENPTkZJR19VU0Jf
U0VSSUFMX1hTRU5TX01UIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NFUklBTF9XSVNIQk9ORSBp
cyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TRVJJQUxfU1NVMTAwIGlzIG5vdCBzZXQKIyBDT05GSUdf
VVNCX1NFUklBTF9RVDIgaXMgbm90IHNldAojIENPTkZJR19VU0JfU0VSSUFMX1VQRDc4RjA3MzAg
aXMgbm90IHNldAojIENPTkZJR19VU0JfU0VSSUFMX1hSIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNC
X1NFUklBTF9ERUJVRyBpcyBub3Qgc2V0CgojCiMgVVNCIE1pc2NlbGxhbmVvdXMgZHJpdmVycwoj
CiMgQ09ORklHX1VTQl9FTUk2MiBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9FTUkyNiBpcyBub3Qg
c2V0CiMgQ09ORklHX1VTQl9BRFVUVVggaXMgbm90IHNldAojIENPTkZJR19VU0JfU0VWU0VHIGlz
IG5vdCBzZXQKIyBDT05GSUdfVVNCX0xFR09UT1dFUiBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9M
Q0QgaXMgbm90IHNldAojIENPTkZJR19VU0JfQ1lQUkVTU19DWTdDNjMgaXMgbm90IHNldAojIENP
TkZJR19VU0JfQ1lUSEVSTSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9JRE1PVVNFIGlzIG5vdCBz
ZXQKIyBDT05GSUdfVVNCX0ZURElfRUxBTiBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9BUFBMRURJ
U1BMQVkgaXMgbm90IHNldAojIENPTkZJR19BUFBMRV9NRklfRkFTVENIQVJHRSBpcyBub3Qgc2V0
CiMgQ09ORklHX1VTQl9TSVNVU0JWR0EgaXMgbm90IHNldAojIENPTkZJR19VU0JfTEQgaXMgbm90
IHNldAojIENPTkZJR19VU0JfVFJBTkNFVklCUkFUT1IgaXMgbm90IHNldAojIENPTkZJR19VU0Jf
SU9XQVJSSU9SIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1RFU1QgaXMgbm90IHNldAojIENPTkZJ
R19VU0JfRUhTRVRfVEVTVF9GSVhUVVJFIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0lTSUdIVEZX
IGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1lVUkVYIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0Va
VVNCX0ZYMiBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9IVUJfVVNCMjUxWEIgaXMgbm90IHNldApD
T05GSUdfVVNCX0hTSUNfVVNCMzUwMz15CiMgQ09ORklHX1VTQl9IU0lDX1VTQjQ2MDQgaXMgbm90
IHNldAojIENPTkZJR19VU0JfTElOS19MQVlFUl9URVNUIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNC
X0NIQU9TS0VZIGlzIG5vdCBzZXQKQ09ORklHX0JSQ01fVVNCX1BJTk1BUD15CgojCiMgVVNCIFBo
eXNpY2FsIExheWVyIGRyaXZlcnMKIwpDT05GSUdfVVNCX1BIWT15CkNPTkZJR19OT1BfVVNCX1hD
RUlWPXkKIyBDT05GSUdfVVNCX0dQSU9fVkJVUyBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9JU1Ax
MzAxIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX01YU19QSFkgaXMgbm90IHNldApDT05GSUdfVVNC
X1RFR1JBX1BIWT15CkNPTkZJR19VU0JfVUxQST15CkNPTkZJR19VU0JfVUxQSV9WSUVXUE9SVD15
CiMgZW5kIG9mIFVTQiBQaHlzaWNhbCBMYXllciBkcml2ZXJzCgpDT05GSUdfVVNCX0dBREdFVD15
CiMgQ09ORklHX1VTQl9HQURHRVRfREVCVUdfRklMRVMgaXMgbm90IHNldAojIENPTkZJR19VU0Jf
R0FER0VUX0RFQlVHX0ZTIGlzIG5vdCBzZXQKQ09ORklHX1VTQl9HQURHRVRfVkJVU19EUkFXPTIK
Q09ORklHX1VTQl9HQURHRVRfU1RPUkFHRV9OVU1fQlVGRkVSUz0yCiMgQ09ORklHX1VfU0VSSUFM
X0NPTlNPTEUgaXMgbm90IHNldAoKIwojIFVTQiBQZXJpcGhlcmFsIENvbnRyb2xsZXIKIwojIENP
TkZJR19VU0JfRk9URzIxMF9VREMgaXMgbm90IHNldAojIENPTkZJR19VU0JfR1JfVURDIGlzIG5v
dCBzZXQKIyBDT05GSUdfVVNCX1I4QTY2NTk3IGlzIG5vdCBzZXQKQ09ORklHX1VTQl9SRU5FU0FT
X1VTQkhTX1VEQz1tCkNPTkZJR19VU0JfUkVORVNBU19VU0IzPW0KIyBDT05GSUdfVVNCX1BYQTI3
WCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9NVl9VREMgaXMgbm90IHNldAojIENPTkZJR19VU0Jf
TVZfVTNEIGlzIG5vdCBzZXQKQ09ORklHX1VTQl9TTlBfQ09SRT15CkNPTkZJR19VU0JfU05QX1VE
Q19QTEFUPXkKIyBDT05GSUdfVVNCX002NjU5MiBpcyBub3Qgc2V0CkNPTkZJR19VU0JfQkRDX1VE
Qz15CiMgQ09ORklHX1VTQl9BTUQ1NTM2VURDIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX05FVDIy
NzIgaXMgbm90IHNldAojIENPTkZJR19VU0JfTkVUMjI4MCBpcyBub3Qgc2V0CiMgQ09ORklHX1VT
Ql9HT0tVIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0VHMjBUIGlzIG5vdCBzZXQKIyBDT05GSUdf
VVNCX0dBREdFVF9YSUxJTlggaXMgbm90IHNldAojIENPTkZJR19VU0JfTUFYMzQyMF9VREMgaXMg
bm90IHNldApDT05GSUdfVVNCX1RFR1JBX1hVREM9bQojIENPTkZJR19VU0JfRFVNTVlfSENEIGlz
IG5vdCBzZXQKIyBlbmQgb2YgVVNCIFBlcmlwaGVyYWwgQ29udHJvbGxlcgoKQ09ORklHX1VTQl9M
SUJDT01QT1NJVEU9bQpDT05GSUdfVVNCX0ZfQUNNPW0KQ09ORklHX1VTQl9VX1NFUklBTD1tCkNP
TkZJR19VU0JfVV9FVEhFUj1tCkNPTkZJR19VU0JfRl9TRVJJQUw9bQpDT05GSUdfVVNCX0ZfT0JF
WD1tCkNPTkZJR19VU0JfRl9OQ009bQpDT05GSUdfVVNCX0ZfRUNNPW0KQ09ORklHX1VTQl9GX0VF
TT1tCkNPTkZJR19VU0JfRl9TVUJTRVQ9bQpDT05GSUdfVVNCX0ZfUk5ESVM9bQpDT05GSUdfVVNC
X0ZfTUFTU19TVE9SQUdFPW0KQ09ORklHX1VTQl9GX0ZTPW0KQ09ORklHX1VTQl9DT05GSUdGUz1t
CkNPTkZJR19VU0JfQ09ORklHRlNfU0VSSUFMPXkKQ09ORklHX1VTQl9DT05GSUdGU19BQ009eQpD
T05GSUdfVVNCX0NPTkZJR0ZTX09CRVg9eQpDT05GSUdfVVNCX0NPTkZJR0ZTX05DTT15CkNPTkZJ
R19VU0JfQ09ORklHRlNfRUNNPXkKQ09ORklHX1VTQl9DT05GSUdGU19FQ01fU1VCU0VUPXkKQ09O
RklHX1VTQl9DT05GSUdGU19STkRJUz15CkNPTkZJR19VU0JfQ09ORklHRlNfRUVNPXkKQ09ORklH
X1VTQl9DT05GSUdGU19NQVNTX1NUT1JBR0U9eQojIENPTkZJR19VU0JfQ09ORklHRlNfRl9MQl9T
UyBpcyBub3Qgc2V0CkNPTkZJR19VU0JfQ09ORklHRlNfRl9GUz15CiMgQ09ORklHX1VTQl9DT05G
SUdGU19GX1VBQzEgaXMgbm90IHNldAojIENPTkZJR19VU0JfQ09ORklHRlNfRl9VQUMxX0xFR0FD
WSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9DT05GSUdGU19GX1VBQzIgaXMgbm90IHNldAojIENP
TkZJR19VU0JfQ09ORklHRlNfRl9NSURJIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0NPTkZJR0ZT
X0ZfSElEIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0NPTkZJR0ZTX0ZfVVZDIGlzIG5vdCBzZXQK
IyBDT05GSUdfVVNCX0NPTkZJR0ZTX0ZfUFJJTlRFUiBpcyBub3Qgc2V0CgojCiMgVVNCIEdhZGdl
dCBwcmVjb21wb3NlZCBjb25maWd1cmF0aW9ucwojCiMgQ09ORklHX1VTQl9aRVJPIGlzIG5vdCBz
ZXQKIyBDT05GSUdfVVNCX0FVRElPIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0VUSCBpcyBub3Qg
c2V0CiMgQ09ORklHX1VTQl9HX05DTSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9HQURHRVRGUyBp
cyBub3Qgc2V0CiMgQ09ORklHX1VTQl9GVU5DVElPTkZTIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNC
X01BU1NfU1RPUkFHRSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9HX1NFUklBTCBpcyBub3Qgc2V0
CiMgQ09ORklHX1VTQl9NSURJX0dBREdFVCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9HX1BSSU5U
RVIgaXMgbm90IHNldAojIENPTkZJR19VU0JfQ0RDX0NPTVBPU0lURSBpcyBub3Qgc2V0CiMgQ09O
RklHX1VTQl9HX0FDTV9NUyBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9HX01VTFRJIGlzIG5vdCBz
ZXQKIyBDT05GSUdfVVNCX0dfSElEIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0dfREJHUCBpcyBu
b3Qgc2V0CiMgQ09ORklHX1VTQl9HX1dFQkNBTSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9SQVdf
R0FER0VUIGlzIG5vdCBzZXQKIyBlbmQgb2YgVVNCIEdhZGdldCBwcmVjb21wb3NlZCBjb25maWd1
cmF0aW9ucwoKQ09ORklHX1RZUEVDPW0KQ09ORklHX1RZUEVDX1RDUE09bQpDT05GSUdfVFlQRUNf
VENQQ0k9bQojIENPTkZJR19UWVBFQ19SVDE3MTFIIGlzIG5vdCBzZXQKIyBDT05GSUdfVFlQRUNf
VENQQ0lfTUFYSU0gaXMgbm90IHNldApDT05GSUdfVFlQRUNfRlVTQjMwMj1tCiMgQ09ORklHX1RZ
UEVDX1VDU0kgaXMgbm90IHNldApDT05GSUdfVFlQRUNfVFBTNjU5OFg9bQpDT05GSUdfVFlQRUNf
SEQzU1MzMjIwPW0KIyBDT05GSUdfVFlQRUNfU1RVU0IxNjBYIGlzIG5vdCBzZXQKIyBDT05GSUdf
VFlQRUNfUUNPTV9QTUlDIGlzIG5vdCBzZXQKCiMKIyBVU0IgVHlwZS1DIE11bHRpcGxleGVyL0Rl
TXVsdGlwbGV4ZXIgU3dpdGNoIHN1cHBvcnQKIwojIENPTkZJR19UWVBFQ19NVVhfUEkzVVNCMzA1
MzIgaXMgbm90IHNldAojIGVuZCBvZiBVU0IgVHlwZS1DIE11bHRpcGxleGVyL0RlTXVsdGlwbGV4
ZXIgU3dpdGNoIHN1cHBvcnQKCiMKIyBVU0IgVHlwZS1DIEFsdGVybmF0ZSBNb2RlIGRyaXZlcnMK
IwojIENPTkZJR19UWVBFQ19EUF9BTFRNT0RFIGlzIG5vdCBzZXQKIyBlbmQgb2YgVVNCIFR5cGUt
QyBBbHRlcm5hdGUgTW9kZSBkcml2ZXJzCgpDT05GSUdfVVNCX1JPTEVfU1dJVENIPXkKQ09ORklH
X01NQz15CkNPTkZJR19QV1JTRVFfRU1NQz15CiMgQ09ORklHX1BXUlNFUV9TRDg3ODcgaXMgbm90
IHNldApDT05GSUdfUFdSU0VRX1NJTVBMRT15CkNPTkZJR19NTUNfQkxPQ0s9eQpDT05GSUdfTU1D
X0JMT0NLX01JTk9SUz0zMgojIENPTkZJR19TRElPX1VBUlQgaXMgbm90IHNldAojIENPTkZJR19N
TUNfVEVTVCBpcyBub3Qgc2V0CgojCiMgTU1DL1NEL1NESU8gSG9zdCBDb250cm9sbGVyIERyaXZl
cnMKIwojIENPTkZJR19NTUNfREVCVUcgaXMgbm90IHNldApDT05GSUdfTU1DX0FSTU1NQ0k9eQpD
T05GSUdfTU1DX1FDT01fRE1MPXkKQ09ORklHX01NQ19TVE0zMl9TRE1NQz15CkNPTkZJR19NTUNf
U0RIQ0k9eQpDT05GSUdfTU1DX1NESENJX0lPX0FDQ0VTU09SUz15CiMgQ09ORklHX01NQ19TREhD
SV9QQ0kgaXMgbm90IHNldApDT05GSUdfTU1DX1NESENJX0FDUEk9eQpDT05GSUdfTU1DX1NESENJ
X1BMVEZNPXkKQ09ORklHX01NQ19TREhDSV9PRl9BUkFTQU49eQojIENPTkZJR19NTUNfU0RIQ0lf
T0ZfQVNQRUVEIGlzIG5vdCBzZXQKIyBDT05GSUdfTU1DX1NESENJX09GX0FUOTEgaXMgbm90IHNl
dApDT05GSUdfTU1DX1NESENJX09GX0VTREhDPXkKIyBDT05GSUdfTU1DX1NESENJX09GX0RXQ01T
SEMgaXMgbm90IHNldApDT05GSUdfTU1DX1NESENJX0NBREVOQ0U9eQpDT05GSUdfTU1DX1NESENJ
X0VTREhDX0lNWD15CkNPTkZJR19NTUNfU0RIQ0lfVEVHUkE9eQojIENPTkZJR19NTUNfU0RIQ0lf
UzNDIGlzIG5vdCBzZXQKIyBDT05GSUdfTU1DX1NESENJX1BYQVYzIGlzIG5vdCBzZXQKQ09ORklH
X01NQ19TREhDSV9GX1NESDMwPXkKIyBDT05GSUdfTU1DX1NESENJX01JTEJFQVVUIGlzIG5vdCBz
ZXQKQ09ORklHX01NQ19TREhDSV9JUFJPQz15CkNPTkZJR19NTUNfTUVTT05fR1g9eQojIENPTkZJ
R19NTUNfTUVTT05fTVhfU0RJTyBpcyBub3Qgc2V0CkNPTkZJR19NTUNfU0RIQ0lfTVNNPXkKIyBD
T05GSUdfTU1DX01YQyBpcyBub3Qgc2V0CiMgQ09ORklHX01NQ19USUZNX1NEIGlzIG5vdCBzZXQK
Q09ORklHX01NQ19TUEk9eQojIENPTkZJR19NTUNfU0RIQ0lfU1BSRCBpcyBub3Qgc2V0CkNPTkZJ
R19NTUNfVE1JT19DT1JFPXkKQ09ORklHX01NQ19TREhJPXkKIyBDT05GSUdfTU1DX1NESElfU1lT
X0RNQUMgaXMgbm90IHNldApDT05GSUdfTU1DX1NESElfSU5URVJOQUxfRE1BQz15CkNPTkZJR19N
TUNfVU5JUEhJRVI9eQojIENPTkZJR19NTUNfQ0I3MTAgaXMgbm90IHNldAojIENPTkZJR19NTUNf
VklBX1NETU1DIGlzIG5vdCBzZXQKQ09ORklHX01NQ19EVz15CkNPTkZJR19NTUNfRFdfUExURk09
eQojIENPTkZJR19NTUNfRFdfQkxVRUZJRUxEIGlzIG5vdCBzZXQKQ09ORklHX01NQ19EV19FWFlO
T1M9eQpDT05GSUdfTU1DX0RXX0hJMzc5OENWMjAwPXkKQ09ORklHX01NQ19EV19LMz15CiMgQ09O
RklHX01NQ19EV19QQ0kgaXMgbm90IHNldApDT05GSUdfTU1DX0RXX1JPQ0tDSElQPXkKIyBDT05G
SUdfTU1DX1NIX01NQ0lGIGlzIG5vdCBzZXQKIyBDT05GSUdfTU1DX1ZVQjMwMCBpcyBub3Qgc2V0
CiMgQ09ORklHX01NQ19VU0hDIGlzIG5vdCBzZXQKIyBDT05GSUdfTU1DX1VTREhJNlJPTDAgaXMg
bm90IHNldApDT05GSUdfTU1DX1NVTlhJPXkKQ09ORklHX01NQ19DUUhDST15CiMgQ09ORklHX01N
Q19IU1EgaXMgbm90IHNldAojIENPTkZJR19NTUNfVE9TSElCQV9QQ0kgaXMgbm90IHNldApDT05G
SUdfTU1DX0JDTTI4MzU9eQpDT05GSUdfTU1DX01USz15CkNPTkZJR19NTUNfU0RIQ0lfQlJDTVNU
Qj15CkNPTkZJR19NTUNfU0RIQ0lfWEVOT049eQojIENPTkZJR19NTUNfU0RIQ0lfT01BUCBpcyBu
b3Qgc2V0CkNPTkZJR19NTUNfU0RIQ0lfQU02NTQ9eQpDT05GSUdfTU1DX09XTD15CiMgQ09ORklH
X01FTVNUSUNLIGlzIG5vdCBzZXQKQ09ORklHX05FV19MRURTPXkKQ09ORklHX0xFRFNfQ0xBU1M9
eQojIENPTkZJR19MRURTX0NMQVNTX0ZMQVNIIGlzIG5vdCBzZXQKIyBDT05GSUdfTEVEU19DTEFT
U19NVUxUSUNPTE9SIGlzIG5vdCBzZXQKIyBDT05GSUdfTEVEU19CUklHSFRORVNTX0hXX0NIQU5H
RUQgaXMgbm90IHNldAoKIwojIExFRCBkcml2ZXJzCiMKIyBDT05GSUdfTEVEU19BTjMwMjU5QSBp
cyBub3Qgc2V0CiMgQ09ORklHX0xFRFNfQVcyMDEzIGlzIG5vdCBzZXQKIyBDT05GSUdfTEVEU19C
Q002MzI4IGlzIG5vdCBzZXQKIyBDT05GSUdfTEVEU19CQ002MzU4IGlzIG5vdCBzZXQKIyBDT05G
SUdfTEVEU19DUjAwMTQxMTQgaXMgbm90IHNldAojIENPTkZJR19MRURTX0VMMTUyMDMwMDAgaXMg
bm90IHNldAojIENPTkZJR19MRURTX0xNMzUzMCBpcyBub3Qgc2V0CiMgQ09ORklHX0xFRFNfTE0z
NTMyIGlzIG5vdCBzZXQKIyBDT05GSUdfTEVEU19MTTM2NDIgaXMgbm90IHNldApDT05GSUdfTEVE
U19MTTM2OTJYPW0KIyBDT05GSUdfTEVEU19NVDYzMjMgaXMgbm90IHNldApDT05GSUdfTEVEU19Q
Q0E5NTMyPW0KIyBDT05GSUdfTEVEU19QQ0E5NTMyX0dQSU8gaXMgbm90IHNldApDT05GSUdfTEVE
U19HUElPPXkKIyBDT05GSUdfTEVEU19MUDM5NDQgaXMgbm90IHNldAojIENPTkZJR19MRURTX0xQ
Mzk1MiBpcyBub3Qgc2V0CiMgQ09ORklHX0xFRFNfTFA1MFhYIGlzIG5vdCBzZXQKIyBDT05GSUdf
TEVEU19MUDU1WFhfQ09NTU9OIGlzIG5vdCBzZXQKIyBDT05GSUdfTEVEU19MUDg4NjAgaXMgbm90
IHNldAojIENPTkZJR19MRURTX1BDQTk1NVggaXMgbm90IHNldAojIENPTkZJR19MRURTX1BDQTk2
M1ggaXMgbm90IHNldAojIENPTkZJR19MRURTX0RBQzEyNFMwODUgaXMgbm90IHNldApDT05GSUdf
TEVEU19QV009eQojIENPTkZJR19MRURTX1JFR1VMQVRPUiBpcyBub3Qgc2V0CiMgQ09ORklHX0xF
RFNfQkQyODAyIGlzIG5vdCBzZXQKIyBDT05GSUdfTEVEU19MVDM1OTMgaXMgbm90IHNldAojIENP
TkZJR19MRURTX1RDQTY1MDcgaXMgbm90IHNldAojIENPTkZJR19MRURTX1RMQzU5MVhYIGlzIG5v
dCBzZXQKIyBDT05GSUdfTEVEU19MTTM1NXggaXMgbm90IHNldAojIENPTkZJR19MRURTX0lTMzFG
TDMxOVggaXMgbm90IHNldAojIENPTkZJR19MRURTX0lTMzFGTDMyWFggaXMgbm90IHNldAoKIwoj
IExFRCBkcml2ZXIgZm9yIGJsaW5rKDEpIFVTQiBSR0IgTEVEIGlzIHVuZGVyIFNwZWNpYWwgSElE
IGRyaXZlcnMgKEhJRF9USElOR00pCiMKIyBDT05GSUdfTEVEU19CTElOS00gaXMgbm90IHNldApD
T05GSUdfTEVEU19TWVNDT049eQojIENPTkZJR19MRURTX01MWFJFRyBpcyBub3Qgc2V0CiMgQ09O
RklHX0xFRFNfVVNFUiBpcyBub3Qgc2V0CiMgQ09ORklHX0xFRFNfU1BJX0JZVEUgaXMgbm90IHNl
dAojIENPTkZJR19MRURTX1RJX0xNVV9DT01NT04gaXMgbm90IHNldAoKIwojIEZsYXNoIGFuZCBU
b3JjaCBMRUQgZHJpdmVycwojCgojCiMgTEVEIFRyaWdnZXJzCiMKQ09ORklHX0xFRFNfVFJJR0dF
UlM9eQpDT05GSUdfTEVEU19UUklHR0VSX1RJTUVSPXkKIyBDT05GSUdfTEVEU19UUklHR0VSX09O
RVNIT1QgaXMgbm90IHNldApDT05GSUdfTEVEU19UUklHR0VSX0RJU0s9eQojIENPTkZJR19MRURT
X1RSSUdHRVJfTVREIGlzIG5vdCBzZXQKQ09ORklHX0xFRFNfVFJJR0dFUl9IRUFSVEJFQVQ9eQoj
IENPTkZJR19MRURTX1RSSUdHRVJfQkFDS0xJR0hUIGlzIG5vdCBzZXQKQ09ORklHX0xFRFNfVFJJ
R0dFUl9DUFU9eQojIENPTkZJR19MRURTX1RSSUdHRVJfQUNUSVZJVFkgaXMgbm90IHNldAojIENP
TkZJR19MRURTX1RSSUdHRVJfR1BJTyBpcyBub3Qgc2V0CkNPTkZJR19MRURTX1RSSUdHRVJfREVG
QVVMVF9PTj15CgojCiMgaXB0YWJsZXMgdHJpZ2dlciBpcyB1bmRlciBOZXRmaWx0ZXIgY29uZmln
IChMRUQgdGFyZ2V0KQojCiMgQ09ORklHX0xFRFNfVFJJR0dFUl9UUkFOU0lFTlQgaXMgbm90IHNl
dAojIENPTkZJR19MRURTX1RSSUdHRVJfQ0FNRVJBIGlzIG5vdCBzZXQKQ09ORklHX0xFRFNfVFJJ
R0dFUl9QQU5JQz15CiMgQ09ORklHX0xFRFNfVFJJR0dFUl9ORVRERVYgaXMgbm90IHNldAojIENP
TkZJR19MRURTX1RSSUdHRVJfUEFUVEVSTiBpcyBub3Qgc2V0CiMgQ09ORklHX0xFRFNfVFJJR0dF
Ul9BVURJTyBpcyBub3Qgc2V0CiMgQ09ORklHX0xFRFNfVFJJR0dFUl9UVFkgaXMgbm90IHNldAoj
IENPTkZJR19BQ0NFU1NJQklMSVRZIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5GSU5JQkFORCBpcyBu
b3Qgc2V0CkNPTkZJR19FREFDX1NVUFBPUlQ9eQpDT05GSUdfRURBQz15CkNPTkZJR19FREFDX0xF
R0FDWV9TWVNGUz15CiMgQ09ORklHX0VEQUNfREVCVUcgaXMgbm90IHNldApDT05GSUdfRURBQ19H
SEVTPXkKIyBDT05GSUdfRURBQ19BTF9NQyBpcyBub3Qgc2V0CkNPTkZJR19FREFDX0xBWUVSU0NB
UEU9bQojIENPTkZJR19FREFDX1RIVU5ERVJYIGlzIG5vdCBzZXQKIyBDT05GSUdfRURBQ19BTFRF
UkEgaXMgbm90IHNldAojIENPTkZJR19FREFDX1NZTk9QU1lTIGlzIG5vdCBzZXQKIyBDT05GSUdf
RURBQ19YR0VORSBpcyBub3Qgc2V0CiMgQ09ORklHX0VEQUNfRE1DNTIwIGlzIG5vdCBzZXQKQ09O
RklHX1JUQ19MSUI9eQpDT05GSUdfUlRDX0NMQVNTPXkKQ09ORklHX1JUQ19IQ1RPU1lTPXkKQ09O
RklHX1JUQ19IQ1RPU1lTX0RFVklDRT0icnRjMCIKQ09ORklHX1JUQ19TWVNUT0hDPXkKQ09ORklH
X1JUQ19TWVNUT0hDX0RFVklDRT0icnRjMCIKIyBDT05GSUdfUlRDX0RFQlVHIGlzIG5vdCBzZXQK
Q09ORklHX1JUQ19OVk1FTT15CgojCiMgUlRDIGludGVyZmFjZXMKIwpDT05GSUdfUlRDX0lOVEZf
U1lTRlM9eQpDT05GSUdfUlRDX0lOVEZfUFJPQz15CkNPTkZJR19SVENfSU5URl9ERVY9eQojIENP
TkZJR19SVENfSU5URl9ERVZfVUlFX0VNVUwgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX1RF
U1QgaXMgbm90IHNldAoKIwojIEkyQyBSVEMgZHJpdmVycwojCiMgQ09ORklHX1JUQ19EUlZfQUJC
NVpFUzMgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX0FCRU9aOSBpcyBub3Qgc2V0CiMgQ09O
RklHX1JUQ19EUlZfQUJYODBYIGlzIG5vdCBzZXQKQ09ORklHX1JUQ19EUlZfQlJDTVNUQj15CkNP
TkZJR19SVENfRFJWX0RTMTMwNz1tCiMgQ09ORklHX1JUQ19EUlZfRFMxMzA3X0NFTlRVUlkgaXMg
bm90IHNldAojIENPTkZJR19SVENfRFJWX0RTMTM3NCBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19E
UlZfRFMxNjcyIGlzIG5vdCBzZXQKQ09ORklHX1JUQ19EUlZfSFlNODU2Mz1tCiMgQ09ORklHX1JU
Q19EUlZfTUFYNjkwMCBpcyBub3Qgc2V0CkNPTkZJR19SVENfRFJWX01BWDc3Njg2PXkKQ09ORklH
X1JUQ19EUlZfUks4MDg9bQojIENPTkZJR19SVENfRFJWX1JTNUMzNzIgaXMgbm90IHNldAojIENP
TkZJR19SVENfRFJWX0lTTDEyMDggaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX0lTTDEyMDIy
IGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9JU0wxMjAyNiBpcyBub3Qgc2V0CiMgQ09ORklH
X1JUQ19EUlZfWDEyMDUgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX1BDRjg1MjMgaXMgbm90
IHNldAojIENPTkZJR19SVENfRFJWX1BDRjg1MDYzIGlzIG5vdCBzZXQKQ09ORklHX1JUQ19EUlZf
UENGODUzNjM9bQojIENPTkZJR19SVENfRFJWX1BDRjg1NjMgaXMgbm90IHNldAojIENPTkZJR19S
VENfRFJWX1BDRjg1ODMgaXMgbm90IHNldApDT05GSUdfUlRDX0RSVl9NNDFUODA9bQojIENPTkZJ
R19SVENfRFJWX000MVQ4MF9XRFQgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX0JRMzJLIGlz
IG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9TMzUzOTBBIGlzIG5vdCBzZXQKIyBDT05GSUdfUlRD
X0RSVl9GTTMxMzAgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX1JYODAxMCBpcyBub3Qgc2V0
CkNPTkZJR19SVENfRFJWX1JYODU4MT1tCiMgQ09ORklHX1JUQ19EUlZfUlg4MDI1IGlzIG5vdCBz
ZXQKIyBDT05GSUdfUlRDX0RSVl9FTTMwMjcgaXMgbm90IHNldApDT05GSUdfUlRDX0RSVl9SVjMw
Mjg9bQojIENPTkZJR19SVENfRFJWX1JWMzAzMiBpcyBub3Qgc2V0CkNPTkZJR19SVENfRFJWX1JW
ODgwMz1tCkNPTkZJR19SVENfRFJWX1M1TT15CiMgQ09ORklHX1JUQ19EUlZfU0QzMDc4IGlzIG5v
dCBzZXQKCiMKIyBTUEkgUlRDIGRyaXZlcnMKIwojIENPTkZJR19SVENfRFJWX000MVQ5MyBpcyBu
b3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfTTQxVDk0IGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RS
Vl9EUzEzMDIgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX0RTMTMwNSBpcyBub3Qgc2V0CiMg
Q09ORklHX1JUQ19EUlZfRFMxMzQzIGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9EUzEzNDcg
aXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX0RTMTM5MCBpcyBub3Qgc2V0CiMgQ09ORklHX1JU
Q19EUlZfTUFYNjkxNiBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfUjk3MDEgaXMgbm90IHNl
dAojIENPTkZJR19SVENfRFJWX1JYNDU4MSBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfUlM1
QzM0OCBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfTUFYNjkwMiBpcyBub3Qgc2V0CiMgQ09O
RklHX1JUQ19EUlZfUENGMjEyMyBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfTUNQNzk1IGlz
IG5vdCBzZXQKQ09ORklHX1JUQ19JMkNfQU5EX1NQST15CgojCiMgU1BJIGFuZCBJMkMgUlRDIGRy
aXZlcnMKIwpDT05GSUdfUlRDX0RSVl9EUzMyMzI9eQpDT05GSUdfUlRDX0RSVl9EUzMyMzJfSFdN
T049eQpDT05GSUdfUlRDX0RSVl9QQ0YyMTI3PW0KIyBDT05GSUdfUlRDX0RSVl9SVjMwMjlDMiBp
cyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfUlg2MTEwIGlzIG5vdCBzZXQKCiMKIyBQbGF0Zm9y
bSBSVEMgZHJpdmVycwojCiMgQ09ORklHX1JUQ19EUlZfRFMxMjg2IGlzIG5vdCBzZXQKIyBDT05G
SUdfUlRDX0RSVl9EUzE1MTEgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX0RTMTU1MyBpcyBu
b3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfRFMxNjg1X0ZBTUlMWSBpcyBub3Qgc2V0CiMgQ09ORklH
X1JUQ19EUlZfRFMxNzQyIGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9EUzI0MDQgaXMgbm90
IHNldApDT05GSUdfUlRDX0RSVl9FRkk9eQojIENPTkZJR19SVENfRFJWX1NUSzE3VEE4IGlzIG5v
dCBzZXQKIyBDT05GSUdfUlRDX0RSVl9NNDhUODYgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJW
X000OFQzNSBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfTTQ4VDU5IGlzIG5vdCBzZXQKIyBD
T05GSUdfUlRDX0RSVl9NU002MjQyIGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9CUTQ4MDIg
aXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX1JQNUMwMSBpcyBub3Qgc2V0CiMgQ09ORklHX1JU
Q19EUlZfVjMwMjAgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX1pZTlFNUCBpcyBub3Qgc2V0
CkNPTkZJR19SVENfRFJWX0NST1NfRUM9eQoKIwojIG9uLUNQVSBSVEMgZHJpdmVycwojCiMgQ09O
RklHX1JUQ19EUlZfSU1YREkgaXMgbm90IHNldApDT05GSUdfUlRDX0RSVl9GU0xfRlRNX0FMQVJN
PW0KQ09ORklHX1JUQ19EUlZfTUVTT05fVlJUQz1tCkNPTkZJR19IQVZFX1MzQ19SVEM9eQpDT05G
SUdfUlRDX0RSVl9TM0M9eQojIENPTkZJR19SVENfRFJWX1NIIGlzIG5vdCBzZXQKIyBDT05GSUdf
UlRDX0RSVl9QTDAzMCBpcyBub3Qgc2V0CkNPTkZJR19SVENfRFJWX1BMMDMxPXkKQ09ORklHX1JU
Q19EUlZfU1VONkk9eQojIENPTkZJR19SVENfRFJWX01WIGlzIG5vdCBzZXQKQ09ORklHX1JUQ19E
UlZfQVJNQURBMzhYPXkKIyBDT05GSUdfUlRDX0RSVl9DQURFTkNFIGlzIG5vdCBzZXQKIyBDT05G
SUdfUlRDX0RSVl9GVFJUQzAxMCBpcyBub3Qgc2V0CkNPTkZJR19SVENfRFJWX1BNOFhYWD1tCkNP
TkZJR19SVENfRFJWX1RFR1JBPXkKIyBDT05GSUdfUlRDX0RSVl9NWEMgaXMgbm90IHNldAojIENP
TkZJR19SVENfRFJWX01YQ19WMiBpcyBub3Qgc2V0CkNPTkZJR19SVENfRFJWX1NOVlM9bQpDT05G
SUdfUlRDX0RSVl9JTVhfU0M9bQojIENPTkZJR19SVENfRFJWX01UMjcxMiBpcyBub3Qgc2V0CiMg
Q09ORklHX1JUQ19EUlZfTVQ2Mzk3IGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9NVDc2MjIg
aXMgbm90IHNldApDT05GSUdfUlRDX0RSVl9YR0VORT15CiMgQ09ORklHX1JUQ19EUlZfUjczMDEg
aXMgbm90IHNldAoKIwojIEhJRCBTZW5zb3IgUlRDIGRyaXZlcnMKIwojIENPTkZJR19SVENfRFJW
X0dPTERGSVNIIGlzIG5vdCBzZXQKQ09ORklHX0RNQURFVklDRVM9eQojIENPTkZJR19ETUFERVZJ
Q0VTX0RFQlVHIGlzIG5vdCBzZXQKCiMKIyBETUEgRGV2aWNlcwojCkNPTkZJR19BU1lOQ19UWF9F
TkFCTEVfQ0hBTk5FTF9TV0lUQ0g9eQpDT05GSUdfRE1BX0VOR0lORT15CkNPTkZJR19ETUFfVklS
VFVBTF9DSEFOTkVMUz15CkNPTkZJR19ETUFfQUNQST15CkNPTkZJR19ETUFfT0Y9eQojIENPTkZJ
R19BTFRFUkFfTVNHRE1BIGlzIG5vdCBzZXQKIyBDT05GSUdfQU1CQV9QTDA4WCBpcyBub3Qgc2V0
CiMgQ09ORklHX0FYSV9ETUFDIGlzIG5vdCBzZXQKQ09ORklHX0JDTV9TQkFfUkFJRD1tCkNPTkZJ
R19ETUFfQkNNMjgzNT15CkNPTkZJR19ETUFfU1VONkk9bQojIENPTkZJR19EV19BWElfRE1BQyBp
cyBub3Qgc2V0CkNPTkZJR19GU0xfRURNQT15CiMgQ09ORklHX0ZTTF9RRE1BIGlzIG5vdCBzZXQK
IyBDT05GSUdfSElTSV9ETUEgaXMgbm90IHNldAojIENPTkZJR19JTVhfRE1BIGlzIG5vdCBzZXQK
Q09ORklHX0lNWF9TRE1BPW0KIyBDT05GSUdfSU5URUxfSURNQTY0IGlzIG5vdCBzZXQKQ09ORklH
X0szX0RNQT15CkNPTkZJR19NVl9YT1I9eQpDT05GSUdfTVZfWE9SX1YyPXkKIyBDT05GSUdfTVhT
X0RNQSBpcyBub3Qgc2V0CkNPTkZJR19NWDNfSVBVPXkKQ09ORklHX01YM19JUFVfSVJRUz00CkNP
TkZJR19PV0xfRE1BPXkKQ09ORklHX1BMMzMwX0RNQT15CiMgQ09ORklHX1BMWF9ETUEgaXMgbm90
IHNldAojIENPTkZJR19TUFJEX0RNQSBpcyBub3Qgc2V0CkNPTkZJR19URUdSQTIwX0FQQl9ETUE9
eQpDT05GSUdfVEVHUkEyMTBfQURNQT1tCiMgQ09ORklHX1VOSVBISUVSX01ETUFDIGlzIG5vdCBz
ZXQKIyBDT05GSUdfVU5JUEhJRVJfWERNQUMgaXMgbm90IHNldAojIENPTkZJR19YR0VORV9ETUEg
aXMgbm90IHNldAojIENPTkZJR19YSUxJTlhfRE1BIGlzIG5vdCBzZXQKIyBDT05GSUdfWElMSU5Y
X1pZTlFNUF9ETUEgaXMgbm90IHNldAojIENPTkZJR19YSUxJTlhfWllOUU1QX0RQRE1BIGlzIG5v
dCBzZXQKIyBDT05GSUdfTVRLX0hTRE1BIGlzIG5vdCBzZXQKIyBDT05GSUdfTVRLX0NRRE1BIGlz
IG5vdCBzZXQKIyBDT05GSUdfTVRLX1VBUlRfQVBETUEgaXMgbm90IHNldApDT05GSUdfUUNPTV9C
QU1fRE1BPXkKIyBDT05GSUdfUUNPTV9HUElfRE1BIGlzIG5vdCBzZXQKQ09ORklHX1FDT01fSElE
TUFfTUdNVD15CkNPTkZJR19RQ09NX0hJRE1BPXkKIyBDT05GSUdfRFdfRE1BQyBpcyBub3Qgc2V0
CiMgQ09ORklHX0RXX0RNQUNfUENJIGlzIG5vdCBzZXQKIyBDT05GSUdfRFdfRURNQSBpcyBub3Qg
c2V0CiMgQ09ORklHX0RXX0VETUFfUENJRSBpcyBub3Qgc2V0CiMgQ09ORklHX1NGX1BETUEgaXMg
bm90IHNldApDT05GSUdfUkVORVNBU19ETUE9eQpDT05GSUdfUkNBUl9ETUFDPXkKQ09ORklHX1JF
TkVTQVNfVVNCX0RNQUM9bQojIENPTkZJR19SWl9ETUFDIGlzIG5vdCBzZXQKQ09ORklHX1RJX0sz
X1VETUE9eQpDT05GSUdfVElfSzNfVURNQV9HTFVFX0xBWUVSPXkKQ09ORklHX1RJX0szX1BTSUw9
eQojIENPTkZJR19GU0xfRFBBQTJfUURNQSBpcyBub3Qgc2V0CgojCiMgRE1BIENsaWVudHMKIwoj
IENPTkZJR19BU1lOQ19UWF9ETUEgaXMgbm90IHNldAojIENPTkZJR19ETUFURVNUIGlzIG5vdCBz
ZXQKQ09ORklHX0RNQV9FTkdJTkVfUkFJRD15CgojCiMgRE1BQlVGIG9wdGlvbnMKIwpDT05GSUdf
U1lOQ19GSUxFPXkKIyBDT05GSUdfU1dfU1lOQyBpcyBub3Qgc2V0CiMgQ09ORklHX1VETUFCVUYg
aXMgbm90IHNldAojIENPTkZJR19ETUFCVUZfTU9WRV9OT1RJRlkgaXMgbm90IHNldAojIENPTkZJ
R19ETUFCVUZfREVCVUcgaXMgbm90IHNldAojIENPTkZJR19ETUFCVUZfU0VMRlRFU1RTIGlzIG5v
dCBzZXQKIyBDT05GSUdfRE1BQlVGX0hFQVBTIGlzIG5vdCBzZXQKIyBDT05GSUdfRE1BQlVGX1NZ
U0ZTX1NUQVRTIGlzIG5vdCBzZXQKIyBlbmQgb2YgRE1BQlVGIG9wdGlvbnMKCiMgQ09ORklHX0FV
WERJU1BMQVkgaXMgbm90IHNldAojIENPTkZJR19VSU8gaXMgbm90IHNldApDT05GSUdfVkZJTz15
CkNPTkZJR19WRklPX0lPTU1VX1RZUEUxPXkKQ09ORklHX1ZGSU9fVklSUUZEPXkKIyBDT05GSUdf
VkZJT19OT0lPTU1VIGlzIG5vdCBzZXQKQ09ORklHX1ZGSU9fUENJX0NPUkU9eQpDT05GSUdfVkZJ
T19QQ0lfTU1BUD15CkNPTkZJR19WRklPX1BDSV9JTlRYPXkKQ09ORklHX1ZGSU9fUENJPXkKIyBD
T05GSUdfVkZJT19QTEFURk9STSBpcyBub3Qgc2V0CiMgQ09ORklHX1ZGSU9fTURFViBpcyBub3Qg
c2V0CiMgQ09ORklHX1ZGSU9fRlNMX01DIGlzIG5vdCBzZXQKIyBDT05GSUdfVklSVF9EUklWRVJT
IGlzIG5vdCBzZXQKQ09ORklHX1ZJUlRJTz15CkNPTkZJR19WSVJUSU9fUENJX0xJQj15CkNPTkZJ
R19WSVJUSU9fTUVOVT15CkNPTkZJR19WSVJUSU9fUENJPXkKQ09ORklHX1ZJUlRJT19QQ0lfTEVH
QUNZPXkKQ09ORklHX1ZJUlRJT19CQUxMT09OPXkKQ09ORklHX1ZJUlRJT19JTlBVVD1tCkNPTkZJ
R19WSVJUSU9fTU1JTz15CiMgQ09ORklHX1ZJUlRJT19NTUlPX0NNRExJTkVfREVWSUNFUyBpcyBu
b3Qgc2V0CkNPTkZJR19WSVJUSU9fRE1BX1NIQVJFRF9CVUZGRVI9eQojIENPTkZJR19WRFBBIGlz
IG5vdCBzZXQKQ09ORklHX1ZIT1NUX01FTlU9eQojIENPTkZJR19WSE9TVF9ORVQgaXMgbm90IHNl
dAojIENPTkZJR19WSE9TVF9WU09DSyBpcyBub3Qgc2V0CiMgQ09ORklHX1ZIT1NUX0NST1NTX0VO
RElBTl9MRUdBQ1kgaXMgbm90IHNldAoKIwojIE1pY3Jvc29mdCBIeXBlci1WIGd1ZXN0IHN1cHBv
cnQKIwojIENPTkZJR19IWVBFUlYgaXMgbm90IHNldAojIGVuZCBvZiBNaWNyb3NvZnQgSHlwZXIt
ViBndWVzdCBzdXBwb3J0CgojCiMgWGVuIGRyaXZlciBzdXBwb3J0CiMKQ09ORklHX1hFTl9CQUxM
T09OPXkKQ09ORklHX1hFTl9TQ1JVQl9QQUdFU19ERUZBVUxUPXkKQ09ORklHX1hFTl9ERVZfRVZU
Q0hOPXkKQ09ORklHX1hFTl9CQUNLRU5EPXkKQ09ORklHX1hFTkZTPXkKQ09ORklHX1hFTl9DT01Q
QVRfWEVORlM9eQpDT05GSUdfWEVOX1NZU19IWVBFUlZJU09SPXkKQ09ORklHX1hFTl9YRU5CVVNf
RlJPTlRFTkQ9eQpDT05GSUdfWEVOX0dOVERFVj1tCkNPTkZJR19YRU5fR1JBTlRfREVWX0FMTE9D
PW0KIyBDT05GSUdfWEVOX0dSQU5UX0RNQV9BTExPQyBpcyBub3Qgc2V0CkNPTkZJR19TV0lPVExC
X1hFTj15CiMgQ09ORklHX1hFTl9QVkNBTExTX0ZST05URU5EIGlzIG5vdCBzZXQKIyBDT05GSUdf
WEVOX1BWQ0FMTFNfQkFDS0VORCBpcyBub3Qgc2V0CkNPTkZJR19YRU5fUFJJVkNNRD15CkNPTkZJ
R19YRU5fRUZJPXkKQ09ORklHX1hFTl9BVVRPX1hMQVRFPXkKIyBlbmQgb2YgWGVuIGRyaXZlciBz
dXBwb3J0CgojIENPTkZJR19HUkVZQlVTIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NRURJIGlzIG5v
dCBzZXQKQ09ORklHX1NUQUdJTkc9eQojIENPTkZJR19QUklTTTJfVVNCIGlzIG5vdCBzZXQKIyBD
T05GSUdfUlRMODE5MlUgaXMgbm90IHNldAojIENPTkZJR19SVExMSUIgaXMgbm90IHNldAojIENP
TkZJR19SVEw4NzIzQlMgaXMgbm90IHNldAojIENPTkZJR19SODcxMlUgaXMgbm90IHNldAojIENP
TkZJR19SODE4OEVVIGlzIG5vdCBzZXQKIyBDT05GSUdfUlRTNTIwOCBpcyBub3Qgc2V0CiMgQ09O
RklHX1ZUNjY1NSBpcyBub3Qgc2V0CiMgQ09ORklHX1ZUNjY1NiBpcyBub3Qgc2V0CgojCiMgSUlP
IHN0YWdpbmcgZHJpdmVycwojCgojCiMgQWNjZWxlcm9tZXRlcnMKIwojIENPTkZJR19BRElTMTYy
MDMgaXMgbm90IHNldAojIENPTkZJR19BRElTMTYyNDAgaXMgbm90IHNldAojIGVuZCBvZiBBY2Nl
bGVyb21ldGVycwoKIwojIEFuYWxvZyB0byBkaWdpdGFsIGNvbnZlcnRlcnMKIwojIENPTkZJR19B
RDc4MTYgaXMgbm90IHNldAojIENPTkZJR19BRDcyODAgaXMgbm90IHNldAojIGVuZCBvZiBBbmFs
b2cgdG8gZGlnaXRhbCBjb252ZXJ0ZXJzCgojCiMgQW5hbG9nIGRpZ2l0YWwgYmktZGlyZWN0aW9u
IGNvbnZlcnRlcnMKIwojIENPTkZJR19BRFQ3MzE2IGlzIG5vdCBzZXQKIyBlbmQgb2YgQW5hbG9n
IGRpZ2l0YWwgYmktZGlyZWN0aW9uIGNvbnZlcnRlcnMKCiMKIyBDYXBhY2l0YW5jZSB0byBkaWdp
dGFsIGNvbnZlcnRlcnMKIwojIENPTkZJR19BRDc3NDYgaXMgbm90IHNldAojIGVuZCBvZiBDYXBh
Y2l0YW5jZSB0byBkaWdpdGFsIGNvbnZlcnRlcnMKCiMKIyBEaXJlY3QgRGlnaXRhbCBTeW50aGVz
aXMKIwojIENPTkZJR19BRDk4MzIgaXMgbm90IHNldAojIENPTkZJR19BRDk4MzQgaXMgbm90IHNl
dAojIGVuZCBvZiBEaXJlY3QgRGlnaXRhbCBTeW50aGVzaXMKCiMKIyBOZXR3b3JrIEFuYWx5emVy
LCBJbXBlZGFuY2UgQ29udmVydGVycwojCiMgQ09ORklHX0FENTkzMyBpcyBub3Qgc2V0CiMgZW5k
IG9mIE5ldHdvcmsgQW5hbHl6ZXIsIEltcGVkYW5jZSBDb252ZXJ0ZXJzCgojCiMgQWN0aXZlIGVu
ZXJneSBtZXRlcmluZyBJQwojCiMgQ09ORklHX0FERTc4NTQgaXMgbm90IHNldAojIGVuZCBvZiBB
Y3RpdmUgZW5lcmd5IG1ldGVyaW5nIElDCgojCiMgUmVzb2x2ZXIgdG8gZGlnaXRhbCBjb252ZXJ0
ZXJzCiMKIyBDT05GSUdfQUQyUzEyMTAgaXMgbm90IHNldAojIGVuZCBvZiBSZXNvbHZlciB0byBk
aWdpdGFsIGNvbnZlcnRlcnMKIyBlbmQgb2YgSUlPIHN0YWdpbmcgZHJpdmVycwoKIyBDT05GSUdf
RkJfU003NTAgaXMgbm90IHNldAojIENPTkZJR19VU0JfRU1YWCBpcyBub3Qgc2V0CiMgQ09ORklH
X01GRF9OVkVDIGlzIG5vdCBzZXQKQ09ORklHX1NUQUdJTkdfTUVESUE9eQpDT05GSUdfVklERU9f
SEFOVFJPPW0KQ09ORklHX1ZJREVPX0hBTlRST19JTVg4TT15CkNPTkZJR19WSURFT19IQU5UUk9f
Uk9DS0NISVA9eQojIENPTkZJR19WSURFT19JTVhfTUVESUEgaXMgbm90IHNldAojIENPTkZJR19W
SURFT19NRVNPTl9WREVDIGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fUk9DS0NISVBfVkRFQyBp
cyBub3Qgc2V0CiMgQ09ORklHX1ZJREVPX1NVTlhJIGlzIG5vdCBzZXQKIyBDT05GSUdfVEVHUkFf
VkRFIGlzIG5vdCBzZXQKIyBDT05GSUdfVklERU9fWk9SQU4gaXMgbm90IHNldAojIENPTkZJR19W
SURFT19URUdSQSBpcyBub3Qgc2V0CiMgQ09ORklHX0RWQl9BVjcxMTAgaXMgbm90IHNldAoKIwoj
IEFuZHJvaWQKIwojIGVuZCBvZiBBbmRyb2lkCgojIENPTkZJR19TVEFHSU5HX0JPQVJEIGlzIG5v
dCBzZXQKIyBDT05GSUdfTFRFX0dETTcyNFggaXMgbm90IHNldAojIENPTkZJR19HU19GUEdBQk9P
VCBpcyBub3Qgc2V0CiMgQ09ORklHX1VOSVNZU1NQQVIgaXMgbm90IHNldAojIENPTkZJR19DT01N
T05fQ0xLX1hMTlhfQ0xLV1pSRCBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX1RGVCBpcyBub3Qgc2V0
CiMgQ09ORklHX0tTNzAxMCBpcyBub3Qgc2V0CkNPTkZJR19CQ01fVklERU9DT1JFPXkKIyBDT05G
SUdfQkNNMjgzNV9WQ0hJUSBpcyBub3Qgc2V0CiMgQ09ORklHX1NORF9CQ00yODM1IGlzIG5vdCBz
ZXQKIyBDT05GSUdfVklERU9fQkNNMjgzNSBpcyBub3Qgc2V0CiMgQ09ORklHX1BJNDMzIGlzIG5v
dCBzZXQKIyBDT05GSUdfWElMX0FYSVNfRklGTyBpcyBub3Qgc2V0CiMgQ09ORklHX0ZJRUxEQlVT
X0RFViBpcyBub3Qgc2V0CiMgQ09ORklHX1FMR0UgaXMgbm90IHNldAojIENPTkZJR19XRlggaXMg
bm90IHNldAojIENPTkZJR19HT0xERklTSCBpcyBub3Qgc2V0CkNPTkZJR19DSFJPTUVfUExBVEZP
Uk1TPXkKIyBDT05GSUdfQ0hST01FT1NfVEJNQyBpcyBub3Qgc2V0CkNPTkZJR19DUk9TX0VDPXkK
Q09ORklHX0NST1NfRUNfSTJDPXkKIyBDT05GSUdfQ1JPU19FQ19SUE1TRyBpcyBub3Qgc2V0CkNP
TkZJR19DUk9TX0VDX1NQST15CkNPTkZJR19DUk9TX0VDX1BST1RPPXkKIyBDT05GSUdfQ1JPU19L
QkRfTEVEX0JBQ0tMSUdIVCBpcyBub3Qgc2V0CkNPTkZJR19DUk9TX0VDX0NIQVJERVY9bQpDT05G
SUdfQ1JPU19FQ19MSUdIVEJBUj15CkNPTkZJR19DUk9TX0VDX1ZCQz15CkNPTkZJR19DUk9TX0VD
X0RFQlVHRlM9eQpDT05GSUdfQ1JPU19FQ19TRU5TT1JIVUI9eQpDT05GSUdfQ1JPU19FQ19TWVNG
Uz15CkNPTkZJR19DUk9TX0VDX1RZUEVDPW0KQ09ORklHX0NST1NfVVNCUERfTk9USUZZPXkKIyBD
T05GSUdfTUVMTEFOT1hfUExBVEZPUk0gaXMgbm90IHNldApDT05GSUdfU1VSRkFDRV9QTEFURk9S
TVM9eQojIENPTkZJR19TVVJGQUNFXzNfQlVUVE9OIGlzIG5vdCBzZXQKIyBDT05GSUdfU1VSRkFD
RV8zX1BPV0VSX09QUkVHSU9OIGlzIG5vdCBzZXQKIyBDT05GSUdfU1VSRkFDRV9HUEUgaXMgbm90
IHNldAojIENPTkZJR19TVVJGQUNFX0hPVFBMVUcgaXMgbm90IHNldAojIENPTkZJR19TVVJGQUNF
X1BSTzNfQlVUVE9OIGlzIG5vdCBzZXQKIyBDT05GSUdfU1VSRkFDRV9BR0dSRUdBVE9SIGlzIG5v
dCBzZXQKQ09ORklHX0hBVkVfQ0xLPXkKQ09ORklHX0hBVkVfQ0xLX1BSRVBBUkU9eQpDT05GSUdf
Q09NTU9OX0NMSz15CgojCiMgQ2xvY2sgZHJpdmVyIGZvciBBUk0gUmVmZXJlbmNlIGRlc2lnbnMK
IwojIENPTkZJR19JQ1NUIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0xLX1NQODEwIGlzIG5vdCBzZXQK
Q09ORklHX0NMS19WRVhQUkVTU19PU0M9eQojIGVuZCBvZiBDbG9jayBkcml2ZXIgZm9yIEFSTSBS
ZWZlcmVuY2UgZGVzaWducwoKIyBDT05GSUdfTE1LMDQ4MzIgaXMgbm90IHNldAojIENPTkZJR19D
T01NT05fQ0xLX01BWDc3Njg2IGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NQVg5NDg1
IGlzIG5vdCBzZXQKQ09ORklHX0NPTU1PTl9DTEtfUks4MDg9eQpDT05GSUdfQ09NTU9OX0NMS19I
STY1NVg9eQpDT05GSUdfQ09NTU9OX0NMS19TQ01JPXkKQ09ORklHX0NPTU1PTl9DTEtfU0NQST15
CiMgQ09ORklHX0NPTU1PTl9DTEtfU0k1MzQxIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NM
S19TSTUzNTEgaXMgbm90IHNldAojIENPTkZJR19DT01NT05fQ0xLX1NJNTE0IGlzIG5vdCBzZXQK
IyBDT05GSUdfQ09NTU9OX0NMS19TSTU0NCBpcyBub3Qgc2V0CiMgQ09ORklHX0NPTU1PTl9DTEtf
U0k1NzAgaXMgbm90IHNldAojIENPTkZJR19DT01NT05fQ0xLX0NEQ0U3MDYgaXMgbm90IHNldAoj
IENPTkZJR19DT01NT05fQ0xLX0NEQ0U5MjUgaXMgbm90IHNldApDT05GSUdfQ09NTU9OX0NMS19D
UzIwMDBfQ1A9eQpDT05GSUdfQ09NTU9OX0NMS19GU0xfRkxFWFNQST15CkNPTkZJR19DT01NT05f
Q0xLX0ZTTF9TQUk9eQpDT05GSUdfQ09NTU9OX0NMS19TMk1QUzExPXkKIyBDT05GSUdfQ09NTU9O
X0NMS19BWElfQ0xLR0VOIGlzIG5vdCBzZXQKQ09ORklHX0NMS19RT1JJUT15CkNPTkZJR19DTEtf
TFMxMDI4QV9QTExESUc9eQpDT05GSUdfQ09NTU9OX0NMS19YR0VORT15CkNPTkZJR19DT01NT05f
Q0xLX1BXTT15CkNPTkZJR19DT01NT05fQ0xLX1ZDNT15CkNPTkZJR19DT01NT05fQ0xLX0JENzE4
WFg9bQojIENPTkZJR19DT01NT05fQ0xLX0ZJWEVEX01NSU8gaXMgbm90IHNldApDT05GSUdfQ0xL
X0FDVElPTlM9eQpDT05GSUdfQ0xLX09XTF9TNTAwPXkKQ09ORklHX0NMS19PV0xfUzcwMD15CkNP
TkZJR19DTEtfT1dMX1M5MDA9eQpDT05GSUdfQ0xLX0JDTTI3MTFfRFZQPXkKQ09ORklHX0NMS19C
Q00yODM1PXkKQ09ORklHX0NPTU1PTl9DTEtfSVBST0M9eQpDT05GSUdfQ0xLX0JDTV9OUzI9eQpD
T05GSUdfQ0xLX0JDTV9TUj15CkNPTkZJR19DTEtfUkFTUEJFUlJZUEk9bQpDT05GSUdfQ09NTU9O
X0NMS19ISTM1MTZDVjMwMD15CkNPTkZJR19DT01NT05fQ0xLX0hJMzUxOT15CkNPTkZJR19DT01N
T05fQ0xLX0hJMzU1OUE9eQpDT05GSUdfQ09NTU9OX0NMS19ISTM2NjA9eQpDT05GSUdfQ09NTU9O
X0NMS19ISTM2NzA9eQpDT05GSUdfQ09NTU9OX0NMS19ISTM3OThDVjIwMD15CkNPTkZJR19DT01N
T05fQ0xLX0hJNjIyMD15CkNPTkZJR19SRVNFVF9ISVNJPXkKQ09ORklHX1NUVUJfQ0xLX0hJNjIy
MD15CkNPTkZJR19TVFVCX0NMS19ISTM2NjA9eQpDT05GSUdfTVhDX0NMSz15CkNPTkZJR19NWENf
Q0xLX1NDVT15CkNPTkZJR19DTEtfSU1YOE1NPXkKQ09ORklHX0NMS19JTVg4TU49eQpDT05GSUdf
Q0xLX0lNWDhNUD15CkNPTkZJR19DTEtfSU1YOE1RPXkKQ09ORklHX0NMS19JTVg4UVhQPXkKQ09O
RklHX1RJX1NDSV9DTEs9eQojIENPTkZJR19USV9TQ0lfQ0xLX1BST0JFX0ZST01fRlcgaXMgbm90
IHNldApDT05GSUdfVElfU1lTQ09OX0NMSz15CgojCiMgQ2xvY2sgZHJpdmVyIGZvciBNZWRpYVRl
ayBTb0MKIwpDT05GSUdfQ09NTU9OX0NMS19NRURJQVRFSz15CkNPTkZJR19DT01NT05fQ0xLX01U
MjcxMj15CiMgQ09ORklHX0NPTU1PTl9DTEtfTVQyNzEyX0JEUFNZUyBpcyBub3Qgc2V0CiMgQ09O
RklHX0NPTU1PTl9DTEtfTVQyNzEyX0lNR1NZUyBpcyBub3Qgc2V0CiMgQ09ORklHX0NPTU1PTl9D
TEtfTVQyNzEyX0pQR0RFQ1NZUyBpcyBub3Qgc2V0CiMgQ09ORklHX0NPTU1PTl9DTEtfTVQyNzEy
X01GR0NGRyBpcyBub3Qgc2V0CiMgQ09ORklHX0NPTU1PTl9DTEtfTVQyNzEyX01NU1lTIGlzIG5v
dCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NVDI3MTJfVkRFQ1NZUyBpcyBub3Qgc2V0CiMgQ09O
RklHX0NPTU1PTl9DTEtfTVQyNzEyX1ZFTkNTWVMgaXMgbm90IHNldApDT05GSUdfQ09NTU9OX0NM
S19NVDY3NjU9eQojIENPTkZJR19DT01NT05fQ0xLX01UNjc2NV9BVURJT1NZUyBpcyBub3Qgc2V0
CiMgQ09ORklHX0NPTU1PTl9DTEtfTVQ2NzY1X0NBTVNZUyBpcyBub3Qgc2V0CiMgQ09ORklHX0NP
TU1PTl9DTEtfTVQ2NzY1X0dDRVNZUyBpcyBub3Qgc2V0CiMgQ09ORklHX0NPTU1PTl9DTEtfTVQ2
NzY1X01NU1lTIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NVDY3NjVfSU1HU1lTIGlz
IG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NVDY3NjVfVkNPREVDU1lTIGlzIG5vdCBzZXQK
IyBDT05GSUdfQ09NTU9OX0NMS19NVDY3NjVfTUZHU1lTIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09N
TU9OX0NMS19NVDY3NjVfTUlQSTBBU1lTIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19N
VDY3NjVfTUlQSTBCU1lTIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NVDY3NjVfTUlQ
STFBU1lTIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NVDY3NjVfTUlQSTFCU1lTIGlz
IG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NVDY3NjVfTUlQSTJBU1lTIGlzIG5vdCBzZXQK
IyBDT05GSUdfQ09NTU9OX0NMS19NVDY3NjVfTUlQSTJCU1lTIGlzIG5vdCBzZXQKQ09ORklHX0NP
TU1PTl9DTEtfTVQ2Nzc5PXkKIyBDT05GSUdfQ09NTU9OX0NMS19NVDY3NzlfTU1TWVMgaXMgbm90
IHNldAojIENPTkZJR19DT01NT05fQ0xLX01UNjc3OV9JTUdTWVMgaXMgbm90IHNldAojIENPTkZJ
R19DT01NT05fQ0xLX01UNjc3OV9JUEVTWVMgaXMgbm90IHNldAojIENPTkZJR19DT01NT05fQ0xL
X01UNjc3OV9DQU1TWVMgaXMgbm90IHNldAojIENPTkZJR19DT01NT05fQ0xLX01UNjc3OV9WREVD
U1lTIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NVDY3NzlfVkVOQ1NZUyBpcyBub3Qg
c2V0CiMgQ09ORklHX0NPTU1PTl9DTEtfTVQ2Nzc5X01GR0NGRyBpcyBub3Qgc2V0CiMgQ09ORklH
X0NPTU1PTl9DTEtfTVQ2Nzc5X0FVRFNZUyBpcyBub3Qgc2V0CkNPTkZJR19DT01NT05fQ0xLX01U
Njc5Nz15CiMgQ09ORklHX0NPTU1PTl9DTEtfTVQ2Nzk3X01NU1lTIGlzIG5vdCBzZXQKIyBDT05G
SUdfQ09NTU9OX0NMS19NVDY3OTdfSU1HU1lTIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NM
S19NVDY3OTdfVkRFQ1NZUyBpcyBub3Qgc2V0CiMgQ09ORklHX0NPTU1PTl9DTEtfTVQ2Nzk3X1ZF
TkNTWVMgaXMgbm90IHNldApDT05GSUdfQ09NTU9OX0NMS19NVDc2MjI9eQojIENPTkZJR19DT01N
T05fQ0xLX01UNzYyMl9FVEhTWVMgaXMgbm90IHNldAojIENPTkZJR19DT01NT05fQ0xLX01UNzYy
Ml9ISUZTWVMgaXMgbm90IHNldAojIENPTkZJR19DT01NT05fQ0xLX01UNzYyMl9BVURTWVMgaXMg
bm90IHNldApDT05GSUdfQ09NTU9OX0NMS19NVDgxNjc9eQpDT05GSUdfQ09NTU9OX0NMS19NVDgx
NjdfQVVEU1lTPXkKQ09ORklHX0NPTU1PTl9DTEtfTVQ4MTY3X0lNR1NZUz15CkNPTkZJR19DT01N
T05fQ0xLX01UODE2N19NRkdDRkc9eQpDT05GSUdfQ09NTU9OX0NMS19NVDgxNjdfTU1TWVM9eQpD
T05GSUdfQ09NTU9OX0NMS19NVDgxNjdfVkRFQ1NZUz15CkNPTkZJR19DT01NT05fQ0xLX01UODE3
Mz15CkNPTkZJR19DT01NT05fQ0xLX01UODE3M19NTVNZUz15CkNPTkZJR19DT01NT05fQ0xLX01U
ODE4Mz15CkNPTkZJR19DT01NT05fQ0xLX01UODE4M19BVURJT1NZUz15CkNPTkZJR19DT01NT05f
Q0xLX01UODE4M19DQU1TWVM9eQpDT05GSUdfQ09NTU9OX0NMS19NVDgxODNfSU1HU1lTPXkKQ09O
RklHX0NPTU1PTl9DTEtfTVQ4MTgzX0lQVV9DT1JFMD15CkNPTkZJR19DT01NT05fQ0xLX01UODE4
M19JUFVfQ09SRTE9eQpDT05GSUdfQ09NTU9OX0NMS19NVDgxODNfSVBVX0FETD15CkNPTkZJR19D
T01NT05fQ0xLX01UODE4M19JUFVfQ09OTj15CkNPTkZJR19DT01NT05fQ0xLX01UODE4M19NRkdD
Rkc9eQpDT05GSUdfQ09NTU9OX0NMS19NVDgxODNfTU1TWVM9eQpDT05GSUdfQ09NTU9OX0NMS19N
VDgxODNfVkRFQ1NZUz15CkNPTkZJR19DT01NT05fQ0xLX01UODE4M19WRU5DU1lTPXkKQ09ORklH
X0NPTU1PTl9DTEtfTVQ4MTkyPXkKIyBDT05GSUdfQ09NTU9OX0NMS19NVDgxOTJfQVVEU1lTIGlz
IG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NVDgxOTJfQ0FNU1lTIGlzIG5vdCBzZXQKIyBD
T05GSUdfQ09NTU9OX0NMS19NVDgxOTJfSU1HU1lTIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9O
X0NMS19NVDgxOTJfSU1QX0lJQ19XUkFQIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19N
VDgxOTJfSVBFU1lTIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NVDgxOTJfTURQU1lT
IGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NVDgxOTJfTUZHQ0ZHIGlzIG5vdCBzZXQK
IyBDT05GSUdfQ09NTU9OX0NMS19NVDgxOTJfTU1TWVMgaXMgbm90IHNldAojIENPTkZJR19DT01N
T05fQ0xLX01UODE5Ml9NU0RDIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NVDgxOTJf
U0NQX0FEU1AgaXMgbm90IHNldAojIENPTkZJR19DT01NT05fQ0xLX01UODE5Ml9WREVDU1lTIGlz
IG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19NVDgxOTJfVkVOQ1NZUyBpcyBub3Qgc2V0CkNP
TkZJR19DT01NT05fQ0xLX01UODUxNj15CiMgQ09ORklHX0NPTU1PTl9DTEtfTVQ4NTE2X0FVRFNZ
UyBpcyBub3Qgc2V0CiMgZW5kIG9mIENsb2NrIGRyaXZlciBmb3IgTWVkaWFUZWsgU29DCgojCiMg
Q2xvY2sgc3VwcG9ydCBmb3IgQW1sb2dpYyBwbGF0Zm9ybXMKIwpDT05GSUdfQ09NTU9OX0NMS19N
RVNPTl9SRUdNQVA9eQpDT05GSUdfQ09NTU9OX0NMS19NRVNPTl9EVUFMRElWPXkKQ09ORklHX0NP
TU1PTl9DTEtfTUVTT05fTVBMTD15CkNPTkZJR19DT01NT05fQ0xLX01FU09OX1BIQVNFPW0KQ09O
RklHX0NPTU1PTl9DTEtfTUVTT05fUExMPXkKQ09ORklHX0NPTU1PTl9DTEtfTUVTT05fU0NMS19E
SVY9bQpDT05GSUdfQ09NTU9OX0NMS19NRVNPTl9WSURfUExMX0RJVj15CkNPTkZJR19DT01NT05f
Q0xLX01FU09OX0FPX0NMS0M9eQpDT05GSUdfQ09NTU9OX0NMS19NRVNPTl9FRV9DTEtDPXkKQ09O
RklHX0NPTU1PTl9DTEtfTUVTT05fQ1BVX0RZTkRJVj15CkNPTkZJR19DT01NT05fQ0xLX0dYQkI9
eQpDT05GSUdfQ09NTU9OX0NMS19BWEc9eQpDT05GSUdfQ09NTU9OX0NMS19BWEdfQVVESU89bQpD
T05GSUdfQ09NTU9OX0NMS19HMTJBPXkKIyBlbmQgb2YgQ2xvY2sgc3VwcG9ydCBmb3IgQW1sb2dp
YyBwbGF0Zm9ybXMKCkNPTkZJR19BUk1BREFfQVBfQ1BfSEVMUEVSPXkKQ09ORklHX0FSTUFEQV8z
N1hYX0NMSz15CkNPTkZJR19BUk1BREFfQVA4MDZfU1lTQ09OPXkKQ09ORklHX0FSTUFEQV9DUDEx
MF9TWVNDT049eQpDT05GSUdfUUNPTV9HRFNDPXkKQ09ORklHX1FDT01fUlBNQ0M9eQpDT05GSUdf
Q09NTU9OX0NMS19RQ09NPXkKQ09ORklHX1FDT01fQTUzUExMPXkKIyBDT05GSUdfUUNPTV9BN1BM
TCBpcyBub3Qgc2V0CkNPTkZJR19RQ09NX0NMS19BUENTX01TTTg5MTY9eQpDT05GSUdfUUNPTV9D
TEtfQVBDQ19NU004OTk2PXkKIyBDT05GSUdfUUNPTV9DTEtfQVBDU19TRFg1NSBpcyBub3Qgc2V0
CkNPTkZJR19RQ09NX0NMS19TTURfUlBNPXkKQ09ORklHX1FDT01fQ0xLX1JQTUg9eQojIENPTkZJ
R19BUFFfR0NDXzgwODQgaXMgbm90IHNldAojIENPTkZJR19BUFFfTU1DQ184MDg0IGlzIG5vdCBz
ZXQKIyBDT05GSUdfSVBRX0FQU1NfUExMIGlzIG5vdCBzZXQKIyBDT05GSUdfSVBRX0FQU1NfNjAx
OCBpcyBub3Qgc2V0CiMgQ09ORklHX0lQUV9HQ0NfNDAxOSBpcyBub3Qgc2V0CkNPTkZJR19JUFFf
R0NDXzYwMTg9eQojIENPTkZJR19JUFFfR0NDXzgwNlggaXMgbm90IHNldAojIENPTkZJR19JUFFf
TENDXzgwNlggaXMgbm90IHNldApDT05GSUdfSVBRX0dDQ184MDc0PXkKIyBDT05GSUdfTVNNX0dD
Q184NjYwIGlzIG5vdCBzZXQKQ09ORklHX01TTV9HQ0NfODkxNj15CiMgQ09ORklHX01TTV9HQ0Nf
ODkzOSBpcyBub3Qgc2V0CiMgQ09ORklHX01TTV9HQ0NfODk2MCBpcyBub3Qgc2V0CiMgQ09ORklH
X01TTV9MQ0NfODk2MCBpcyBub3Qgc2V0CiMgQ09ORklHX01ETV9HQ0NfOTYwNyBpcyBub3Qgc2V0
CiMgQ09ORklHX01ETV9HQ0NfOTYxNSBpcyBub3Qgc2V0CiMgQ09ORklHX01ETV9MQ0NfOTYxNSBp
cyBub3Qgc2V0CiMgQ09ORklHX01TTV9NTUNDXzg5NjAgaXMgbm90IHNldAojIENPTkZJR19NU01f
R0NDXzg5NTMgaXMgbm90IHNldAojIENPTkZJR19NU01fR0NDXzg5NzQgaXMgbm90IHNldAojIENP
TkZJR19NU01fTU1DQ184OTc0IGlzIG5vdCBzZXQKIyBDT05GSUdfTVNNX01NQ0NfODk5NCBpcyBu
b3Qgc2V0CkNPTkZJR19NU01fR0NDXzg5OTQ9eQpDT05GSUdfTVNNX0dDQ184OTk2PXkKQ09ORklH
X01TTV9NTUNDXzg5OTY9eQpDT05GSUdfTVNNX0dDQ184OTk4PXkKIyBDT05GSUdfTVNNX0dQVUND
Xzg5OTggaXMgbm90IHNldAojIENPTkZJR19NU01fTU1DQ184OTk4IGlzIG5vdCBzZXQKQ09ORklH
X1FDU19HQ0NfNDA0PXkKIyBDT05GSUdfU0NfQ0FNQ0NfNzE4MCBpcyBub3Qgc2V0CiMgQ09ORklH
X1NDX0RJU1BDQ183MTgwIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NfRElTUENDXzcyODAgaXMgbm90
IHNldApDT05GSUdfU0NfR0NDXzcxODA9eQojIENPTkZJR19TQ19HQ0NfNzI4MCBpcyBub3Qgc2V0
CiMgQ09ORklHX1NDX0dDQ184MTgwWCBpcyBub3Qgc2V0CiMgQ09ORklHX1NDX0xQQVNTX0NPUkVD
Q183MTgwIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NfR1BVQ0NfNzE4MCBpcyBub3Qgc2V0CiMgQ09O
RklHX1NDX0dQVUNDXzcyODAgaXMgbm90IHNldAojIENPTkZJR19TQ19NU1NfNzE4MCBpcyBub3Qg
c2V0CiMgQ09ORklHX1NDX1ZJREVPQ0NfNzE4MCBpcyBub3Qgc2V0CiMgQ09ORklHX1NDX1ZJREVP
Q0NfNzI4MCBpcyBub3Qgc2V0CkNPTkZJR19TRE1fQ0FNQ0NfODQ1PW0KIyBDT05GSUdfU0RNX0dD
Q182NjAgaXMgbm90IHNldAojIENPTkZJR19TRE1fTU1DQ182NjAgaXMgbm90IHNldAojIENPTkZJ
R19TRE1fR1BVQ0NfNjYwIGlzIG5vdCBzZXQKIyBDT05GSUdfUUNTX1RVUklOR180MDQgaXMgbm90
IHNldAojIENPTkZJR19RQ1NfUTZTU1RPUF80MDQgaXMgbm90IHNldApDT05GSUdfU0RNX0dDQ184
NDU9eQpDT05GSUdfU0RNX0dQVUNDXzg0NT15CkNPTkZJR19TRE1fVklERU9DQ184NDU9eQpDT05G
SUdfU0RNX0RJU1BDQ184NDU9eQojIENPTkZJR19TRE1fTFBBU1NDQ184NDUgaXMgbm90IHNldAoj
IENPTkZJR19TRFhfR0NDXzU1IGlzIG5vdCBzZXQKIyBDT05GSUdfU01fQ0FNQ0NfODI1MCBpcyBu
b3Qgc2V0CkNPTkZJR19TTV9ESVNQQ0NfODI1MD15CiMgQ09ORklHX1NNX0dDQ182MTE1IGlzIG5v
dCBzZXQKIyBDT05GSUdfU01fR0NDXzYxMjUgaXMgbm90IHNldAojIENPTkZJR19TTV9HQ0NfNjM1
MCBpcyBub3Qgc2V0CkNPTkZJR19TTV9HQ0NfODE1MD15CkNPTkZJR19TTV9HQ0NfODI1MD15CkNP
TkZJR19TTV9HQ0NfODM1MD15CkNPTkZJR19TTV9HUFVDQ184MTUwPXkKQ09ORklHX1NNX0dQVUND
XzgyNTA9eQojIENPTkZJR19TTV9WSURFT0NDXzgxNTAgaXMgbm90IHNldAojIENPTkZJR19TTV9W
SURFT0NDXzgyNTAgaXMgbm90IHNldAojIENPTkZJR19TUE1JX1BNSUNfQ0xLRElWIGlzIG5vdCBz
ZXQKQ09ORklHX1FDT01fSEZQTEw9eQojIENPTkZJR19LUFNTX1hDQyBpcyBub3Qgc2V0CkNPTkZJ
R19DTEtfR0ZNX0xQQVNTX1NNODI1MD1tCkNPTkZJR19DTEtfUkVORVNBUz15CkNPTkZJR19DTEtf
UjhBNzc0QTE9eQpDT05GSUdfQ0xLX1I4QTc3NEIxPXkKQ09ORklHX0NMS19SOEE3NzRDMD15CkNP
TkZJR19DTEtfUjhBNzc0RTE9eQpDT05GSUdfQ0xLX1I4QTc3OTU9eQpDT05GSUdfQ0xLX1I4QTc3
OTYwPXkKQ09ORklHX0NMS19SOEE3Nzk2MT15CkNPTkZJR19DTEtfUjhBNzc5NjU9eQpDT05GSUdf
Q0xLX1I4QTc3OTcwPXkKQ09ORklHX0NMS19SOEE3Nzk4MD15CkNPTkZJR19DTEtfUjhBNzc5OTA9
eQpDT05GSUdfQ0xLX1I4QTc3OTk1PXkKQ09ORklHX0NMS19SOEE3NzlBMD15CkNPTkZJR19DTEtf
UjlBMDdHMDQ0PXkKQ09ORklHX0NMS19SQ0FSX0NQR19MSUI9eQpDT05GSUdfQ0xLX1JDQVJfR0VO
M19DUEc9eQpDT05GSUdfQ0xLX1JDQVJfVVNCMl9DTE9DS19TRUw9eQpDT05GSUdfQ0xLX1JaRzJM
PXkKQ09ORklHX0NMS19SRU5FU0FTX0NQR19NU1NSPXkKQ09ORklHX0NMS19SRU5FU0FTX0RJVjY9
eQpDT05GSUdfQ09NTU9OX0NMS19ST0NLQ0hJUD15CkNPTkZJR19DTEtfUFgzMD15CkNPTkZJR19D
TEtfUkszMzA4PXkKQ09ORklHX0NMS19SSzMzMjg9eQpDT05GSUdfQ0xLX1JLMzM2OD15CkNPTkZJ
R19DTEtfUkszMzk5PXkKQ09ORklHX0NMS19SSzM1Njg9eQpDT05GSUdfQ09NTU9OX0NMS19TQU1T
VU5HPXkKQ09ORklHX0VYWU5PU19BUk02NF9DT01NT05fQ0xLPXkKQ09ORklHX0VYWU5PU19BVURT
U19DTEtfQ09OPXkKQ09ORklHX0VYWU5PU19DTEtPVVQ9eQpDT05GSUdfQ0xLX0lOVEVMX1NPQ0ZQ
R0E9eQpDT05GSUdfQ0xLX0lOVEVMX1NPQ0ZQR0E2ND15CkNPTkZJR19TUFJEX0NPTU1PTl9DTEs9
eQpDT05GSUdfU1BSRF9TQzk4NjBfQ0xLPXkKQ09ORklHX1NQUkRfU0M5ODYzQV9DTEs9eQpDT05G
SUdfQ0xLX1NVTlhJPXkKQ09ORklHX0NMS19TVU5YSV9DTE9DS1M9eQpDT05GSUdfQ0xLX1NVTlhJ
X1BSQ01fU1VONkk9eQpDT05GSUdfQ0xLX1NVTlhJX1BSQ01fU1VOOEk9eQpDT05GSUdfQ0xLX1NV
TlhJX1BSQ01fU1VOOUk9eQpDT05GSUdfU1VOWElfQ0NVPXkKQ09ORklHX1NVTjUwSV9BNjRfQ0NV
PXkKQ09ORklHX1NVTjUwSV9BMTAwX0NDVT15CkNPTkZJR19TVU41MElfQTEwMF9SX0NDVT15CkNP
TkZJR19TVU41MElfSDZfQ0NVPXkKQ09ORklHX1NVTjUwSV9INjE2X0NDVT15CkNPTkZJR19TVU41
MElfSDZfUl9DQ1U9eQojIENPTkZJR19TVU44SV9BODNUX0NDVSBpcyBub3Qgc2V0CkNPTkZJR19T
VU44SV9IM19DQ1U9eQpDT05GSUdfU1VOOElfREUyX0NDVT15CkNPTkZJR19TVU44SV9SX0NDVT15
CkNPTkZJR19DTEtfVEVHUkFfQlBNUD15CkNPTkZJR19URUdSQV9DTEtfREZMTD15CkNPTkZJR19D
TEtfVU5JUEhJRVI9eQojIENPTkZJR19YSUxJTlhfVkNVIGlzIG5vdCBzZXQKQ09ORklHX0NPTU1P
Tl9DTEtfWllOUU1QPXkKQ09ORklHX0hXU1BJTkxPQ0s9eQojIENPTkZJR19IV1NQSU5MT0NLX09N
QVAgaXMgbm90IHNldApDT05GSUdfSFdTUElOTE9DS19RQ09NPXkKIyBDT05GSUdfSFdTUElOTE9D
S19TUFJEIGlzIG5vdCBzZXQKIyBDT05GSUdfSFdTUElOTE9DS19TVU42SSBpcyBub3Qgc2V0Cgoj
CiMgQ2xvY2sgU291cmNlIGRyaXZlcnMKIwpDT05GSUdfVElNRVJfT0Y9eQpDT05GSUdfVElNRVJf
QUNQST15CkNPTkZJR19USU1FUl9QUk9CRT15CkNPTkZJR19DTEtTUkNfTU1JTz15CkNPTkZJR19E
V19BUEJfVElNRVI9eQpDT05GSUdfRFdfQVBCX1RJTUVSX09GPXkKQ09ORklHX1JPQ0tDSElQX1RJ
TUVSPXkKQ09ORklHX09XTF9USU1FUj15CkNPTkZJR19TVU40SV9USU1FUj15CkNPTkZJR19URUdS
QV9USU1FUj15CkNPTkZJR19BUk1fQVJDSF9USU1FUj15CkNPTkZJR19BUk1fQVJDSF9USU1FUl9F
VlRTVFJFQU09eQpDT05GSUdfQVJNX0FSQ0hfVElNRVJfT09MX1dPUktBUk9VTkQ9eQpDT05GSUdf
RlNMX0VSUkFUVU1fQTAwODU4NT15CkNPTkZJR19ISVNJTElDT05fRVJSQVRVTV8xNjEwMTAxMDE9
eQpDT05GSUdfQVJNNjRfRVJSQVRVTV84NTg5MjE9eQpDT05GSUdfU1VONTBJX0VSUkFUVU1fVU5L
Tk9XTjE9eQpDT05GSUdfQVJNX1RJTUVSX1NQODA0PXkKQ09ORklHX1NZU19TVVBQT1JUU19TSF9D
TVQ9eQpDT05GSUdfTVRLX1RJTUVSPXkKQ09ORklHX1NQUkRfVElNRVI9eQpDT05GSUdfU1lTX1NV
UFBPUlRTX1NIX1RNVT15CkNPTkZJR19TSF9USU1FUl9DTVQ9eQpDT05GSUdfU0hfVElNRVJfVE1V
PXkKQ09ORklHX1RJTUVSX0lNWF9TWVNfQ1RSPXkKIyBDT05GSUdfTUlDUk9DSElQX1BJVDY0QiBp
cyBub3Qgc2V0CiMgZW5kIG9mIENsb2NrIFNvdXJjZSBkcml2ZXJzCgpDT05GSUdfTUFJTEJPWD15
CkNPTkZJR19BUk1fTUhVPXkKIyBDT05GSUdfQVJNX01IVV9WMiBpcyBub3Qgc2V0CkNPTkZJR19J
TVhfTUJPWD15CkNPTkZJR19QTEFURk9STV9NSFU9eQojIENPTkZJR19QTDMyMF9NQk9YIGlzIG5v
dCBzZXQKIyBDT05GSUdfQVJNQURBXzM3WFhfUldUTV9NQk9YIGlzIG5vdCBzZXQKIyBDT05GSUdf
T01BUDJQTFVTX01CT1ggaXMgbm90IHNldAojIENPTkZJR19ST0NLQ0hJUF9NQk9YIGlzIG5vdCBz
ZXQKQ09ORklHX1BDQz15CiMgQ09ORklHX0FMVEVSQV9NQk9YIGlzIG5vdCBzZXQKQ09ORklHX0JD
TTI4MzVfTUJPWD15CkNPTkZJR19USV9NRVNTQUdFX01BTkFHRVI9eQpDT05GSUdfSEkzNjYwX01C
T1g9eQpDT05GSUdfSEk2MjIwX01CT1g9eQojIENPTkZJR19NQUlMQk9YX1RFU1QgaXMgbm90IHNl
dApDT05GSUdfUUNPTV9BUENTX0lQQz15CkNPTkZJR19URUdSQV9IU1BfTUJPWD15CiMgQ09ORklH
X1hHRU5FX1NMSU1QUk9fTUJPWCBpcyBub3Qgc2V0CiMgQ09ORklHX0JDTV9QRENfTUJPWCBpcyBu
b3Qgc2V0CkNPTkZJR19CQ01fRkxFWFJNX01CT1g9bQojIENPTkZJR19NVEtfQ01EUV9NQk9YIGlz
IG5vdCBzZXQKQ09ORklHX1pZTlFNUF9JUElfTUJPWD15CkNPTkZJR19TVU42SV9NU0dCT1g9eQoj
IENPTkZJR19TUFJEX01CT1ggaXMgbm90IHNldApDT05GSUdfUUNPTV9JUENDPXkKQ09ORklHX0lP
TU1VX0lPVkE9eQpDT05GSUdfSU9NTVVfQVBJPXkKQ09ORklHX0lPTU1VX1NVUFBPUlQ9eQoKIwoj
IEdlbmVyaWMgSU9NTVUgUGFnZXRhYmxlIFN1cHBvcnQKIwpDT05GSUdfSU9NTVVfSU9fUEdUQUJM
RT15CkNPTkZJR19JT01NVV9JT19QR1RBQkxFX0xQQUU9eQojIENPTkZJR19JT01NVV9JT19QR1RB
QkxFX0xQQUVfU0VMRlRFU1QgaXMgbm90IHNldApDT05GSUdfSU9NTVVfSU9fUEdUQUJMRV9BUk1W
N1M9eQojIENPTkZJR19JT01NVV9JT19QR1RBQkxFX0FSTVY3U19TRUxGVEVTVCBpcyBub3Qgc2V0
CiMgZW5kIG9mIEdlbmVyaWMgSU9NTVUgUGFnZXRhYmxlIFN1cHBvcnQKCiMgQ09ORklHX0lPTU1V
X0RFQlVHRlMgaXMgbm90IHNldApDT05GSUdfSU9NTVVfREVGQVVMVF9ETUFfU1RSSUNUPXkKIyBD
T05GSUdfSU9NTVVfREVGQVVMVF9ETUFfTEFaWSBpcyBub3Qgc2V0CiMgQ09ORklHX0lPTU1VX0RF
RkFVTFRfUEFTU1RIUk9VR0ggaXMgbm90IHNldApDT05GSUdfT0ZfSU9NTVU9eQpDT05GSUdfSU9N
TVVfRE1BPXkKQ09ORklHX1JPQ0tDSElQX0lPTU1VPXkKIyBDT05GSUdfU1VONTBJX0lPTU1VIGlz
IG5vdCBzZXQKQ09ORklHX1RFR1JBX0lPTU1VX1NNTVU9eQojIENPTkZJR19FWFlOT1NfSU9NTVUg
aXMgbm90IHNldAojIENPTkZJR19JUE1NVV9WTVNBIGlzIG5vdCBzZXQKQ09ORklHX0FQUExFX0RB
UlQ9eQpDT05GSUdfQVJNX1NNTVU9eQojIENPTkZJR19BUk1fU01NVV9MRUdBQ1lfRFRfQklORElO
R1MgaXMgbm90IHNldApDT05GSUdfQVJNX1NNTVVfRElTQUJMRV9CWVBBU1NfQllfREVGQVVMVD15
CkNPTkZJR19BUk1fU01NVV9RQ09NPXkKQ09ORklHX0FSTV9TTU1VX1YzPXkKIyBDT05GSUdfQVJN
X1NNTVVfVjNfU1ZBIGlzIG5vdCBzZXQKQ09ORklHX01US19JT01NVT15CkNPTkZJR19RQ09NX0lP
TU1VPXkKIyBDT05GSUdfVklSVElPX0lPTU1VIGlzIG5vdCBzZXQKIyBDT05GSUdfU1BSRF9JT01N
VSBpcyBub3Qgc2V0CgojCiMgUmVtb3RlcHJvYyBkcml2ZXJzCiMKQ09ORklHX1JFTU9URVBST0M9
eQojIENPTkZJR19SRU1PVEVQUk9DX0NERVYgaXMgbm90IHNldAojIENPTkZJR19JTVhfUkVNT1RF
UFJPQyBpcyBub3Qgc2V0CiMgQ09ORklHX01US19TQ1AgaXMgbm90IHNldApDT05GSUdfUUNPTV9Q
SUxfSU5GTz1tCkNPTkZJR19RQ09NX1JQUk9DX0NPTU1PTj1tCkNPTkZJR19RQ09NX1E2VjVfQ09N
TU9OPW0KIyBDT05GSUdfUUNPTV9RNlY1X0FEU1AgaXMgbm90IHNldApDT05GSUdfUUNPTV9RNlY1
X01TUz1tCkNPTkZJR19RQ09NX1E2VjVfUEFTPW0KIyBDT05GSUdfUUNPTV9RNlY1X1dDU1MgaXMg
bm90IHNldApDT05GSUdfUUNPTV9TWVNNT049bQojIENPTkZJR19RQ09NX1dDTlNTX1BJTCBpcyBu
b3Qgc2V0CiMgQ09ORklHX1RJX0szX0RTUF9SRU1PVEVQUk9DIGlzIG5vdCBzZXQKIyBDT05GSUdf
VElfSzNfUjVfUkVNT1RFUFJPQyBpcyBub3Qgc2V0CiMgZW5kIG9mIFJlbW90ZXByb2MgZHJpdmVy
cwoKIwojIFJwbXNnIGRyaXZlcnMKIwpDT05GSUdfUlBNU0c9eQojIENPTkZJR19SUE1TR19DSEFS
IGlzIG5vdCBzZXQKIyBDT05GSUdfUlBNU0dfTlMgaXMgbm90IHNldApDT05GSUdfUlBNU0dfUUNP
TV9HTElOSz15CkNPTkZJR19SUE1TR19RQ09NX0dMSU5LX1JQTT15CkNPTkZJR19SUE1TR19RQ09N
X0dMSU5LX1NNRU09bQpDT05GSUdfUlBNU0dfUUNPTV9TTUQ9eQojIENPTkZJR19SUE1TR19WSVJU
SU8gaXMgbm90IHNldAojIGVuZCBvZiBScG1zZyBkcml2ZXJzCgpDT05GSUdfU09VTkRXSVJFPW0K
CiMKIyBTb3VuZFdpcmUgRGV2aWNlcwojCiMgQ09ORklHX1NPVU5EV0lSRV9JTlRFTCBpcyBub3Qg
c2V0CkNPTkZJR19TT1VORFdJUkVfUUNPTT1tCgojCiMgU09DIChTeXN0ZW0gT24gQ2hpcCkgc3Bl
Y2lmaWMgRHJpdmVycwojCkNPTkZJR19PV0xfUE1fRE9NQUlOU19IRUxQRVI9eQpDT05GSUdfT1dM
X1BNX0RPTUFJTlM9eQoKIwojIEFtbG9naWMgU29DIGRyaXZlcnMKIwpDT05GSUdfTUVTT05fQ0FO
VkFTPW0KQ09ORklHX01FU09OX0NMS19NRUFTVVJFPXkKQ09ORklHX01FU09OX0dYX1NPQ0lORk89
eQpDT05GSUdfTUVTT05fR1hfUE1fRE9NQUlOUz15CkNPTkZJR19NRVNPTl9FRV9QTV9ET01BSU5T
PXkKQ09ORklHX01FU09OX1NFQ1VSRV9QTV9ET01BSU5TPXkKIyBlbmQgb2YgQW1sb2dpYyBTb0Mg
ZHJpdmVycwoKIwojIEJyb2FkY29tIFNvQyBkcml2ZXJzCiMKQ09ORklHX0JDTTI4MzVfUE9XRVI9
eQpDT05GSUdfUkFTUEJFUlJZUElfUE9XRVI9eQpDT05GSUdfU09DX0JSQ01TVEI9eQpDT05GSUdf
QkNNX1BNQj15CkNPTkZJR19CUkNNU1RCX1BNPXkKIyBlbmQgb2YgQnJvYWRjb20gU29DIGRyaXZl
cnMKCiMKIyBOWFAvRnJlZXNjYWxlIFFvcklRIFNvQyBkcml2ZXJzCiMKQ09ORklHX0ZTTF9EUEFB
PXkKIyBDT05GSUdfRlNMX0RQQUFfQ0hFQ0tJTkcgaXMgbm90IHNldAojIENPTkZJR19GU0xfQk1B
Tl9URVNUIGlzIG5vdCBzZXQKIyBDT05GSUdfRlNMX1FNQU5fVEVTVCBpcyBub3Qgc2V0CiMgQ09O
RklHX1FVSUNDX0VOR0lORSBpcyBub3Qgc2V0CkNPTkZJR19GU0xfR1VUUz15CkNPTkZJR19GU0xf
TUNfRFBJTz15CkNPTkZJR19EUEFBMl9DT05TT0xFPXkKQ09ORklHX0ZTTF9SQ1BNPXkKIyBlbmQg
b2YgTlhQL0ZyZWVzY2FsZSBRb3JJUSBTb0MgZHJpdmVycwoKIwojIGkuTVggU29DIGRyaXZlcnMK
IwpDT05GSUdfSU1YX0dQQ1YyX1BNX0RPTUFJTlM9eQpDT05GSUdfU09DX0lNWDhNPXkKIyBlbmQg
b2YgaS5NWCBTb0MgZHJpdmVycwoKIwojIEVuYWJsZSBMaXRlWCBTb0MgQnVpbGRlciBzcGVjaWZp
YyBkcml2ZXJzCiMKIyBDT05GSUdfTElURVhfU09DX0NPTlRST0xMRVIgaXMgbm90IHNldAojIGVu
ZCBvZiBFbmFibGUgTGl0ZVggU29DIEJ1aWxkZXIgc3BlY2lmaWMgZHJpdmVycwoKIwojIE1lZGlh
VGVrIFNvQyBkcml2ZXJzCiMKIyBDT05GSUdfTVRLX0NNRFEgaXMgbm90IHNldApDT05GSUdfTVRL
X0RFVkFQQz1tCkNPTkZJR19NVEtfSU5GUkFDRkc9eQpDT05GSUdfTVRLX1BNSUNfV1JBUD15CkNP
TkZJR19NVEtfU0NQU1lTPXkKQ09ORklHX01US19TQ1BTWVNfUE1fRE9NQUlOUz15CkNPTkZJR19N
VEtfTU1TWVM9eQojIGVuZCBvZiBNZWRpYVRlayBTb0MgZHJpdmVycwoKIwojIFF1YWxjb21tIFNv
QyBkcml2ZXJzCiMKQ09ORklHX1FDT01fQU9TU19RTVA9eQpDT05GSUdfUUNPTV9DT01NQU5EX0RC
PXkKQ09ORklHX1FDT01fQ1BSPXkKQ09ORklHX1FDT01fR0VOSV9TRT15CiMgQ09ORklHX1FDT01f
R1NCSSBpcyBub3Qgc2V0CiMgQ09ORklHX1FDT01fTExDQyBpcyBub3Qgc2V0CkNPTkZJR19RQ09N
X0tSWU9fTDJfQUNDRVNTT1JTPXkKQ09ORklHX1FDT01fTURUX0xPQURFUj1tCiMgQ09ORklHX1FD
T01fT0NNRU0gaXMgbm90IHNldApDT05GSUdfUUNPTV9QRFJfSEVMUEVSUz1tCkNPTkZJR19RQ09N
X1FNSV9IRUxQRVJTPW0KQ09ORklHX1FDT01fUk1URlNfTUVNPW0KQ09ORklHX1FDT01fUlBNSD15
CkNPTkZJR19RQ09NX1JQTUhQRD15CkNPTkZJR19RQ09NX1JQTVBEPXkKQ09ORklHX1FDT01fU01F
TT15CkNPTkZJR19RQ09NX1NNRF9SUE09eQpDT05GSUdfUUNPTV9TTUVNX1NUQVRFPXkKQ09ORklH
X1FDT01fU01QMlA9eQpDT05GSUdfUUNPTV9TTVNNPXkKQ09ORklHX1FDT01fU09DSU5GTz1tCiMg
Q09ORklHX1FDT01fV0NOU1NfQ1RSTCBpcyBub3Qgc2V0CkNPTkZJR19RQ09NX0FQUj1tCiMgZW5k
IG9mIFF1YWxjb21tIFNvQyBkcml2ZXJzCgpDT05GSUdfU09DX1JFTkVTQVM9eQpDT05GSUdfQVJD
SF9SQ0FSX0dFTjM9eQpDT05GSUdfQVJDSF9SOEE3Nzk5NT15CkNPTkZJR19BUkNIX1I4QTc3OTkw
PXkKQ09ORklHX0FSQ0hfUjhBNzc5NTA9eQpDT05GSUdfQVJDSF9SOEE3Nzk1MT15CkNPTkZJR19B
UkNIX1I4QTc3OTY1PXkKQ09ORklHX0FSQ0hfUjhBNzc5NjA9eQpDT05GSUdfQVJDSF9SOEE3Nzk2
MT15CkNPTkZJR19BUkNIX1I4QTc3OTgwPXkKQ09ORklHX0FSQ0hfUjhBNzc5NzA9eQpDT05GSUdf
QVJDSF9SOEE3NzlBMD15CkNPTkZJR19BUkNIX1I4QTc3NEMwPXkKQ09ORklHX0FSQ0hfUjhBNzc0
RTE9eQpDT05GSUdfQVJDSF9SOEE3NzRBMT15CkNPTkZJR19BUkNIX1I4QTc3NEIxPXkKQ09ORklH
X0FSQ0hfUjlBMDdHMDQ0PXkKQ09ORklHX1JTVF9SQ0FSPXkKQ09ORklHX1NZU0NfUkNBUj15CkNP
TkZJR19TWVNDX1I4QTc3OTk1PXkKQ09ORklHX1NZU0NfUjhBNzc5OTA9eQpDT05GSUdfU1lTQ19S
OEE3Nzk1PXkKQ09ORklHX1NZU0NfUjhBNzc5NjU9eQpDT05GSUdfU1lTQ19SOEE3Nzk2MD15CkNP
TkZJR19TWVNDX1I4QTc3OTYxPXkKQ09ORklHX1NZU0NfUjhBNzc5ODA9eQpDT05GSUdfU1lTQ19S
OEE3Nzk3MD15CkNPTkZJR19TWVNDX1I4QTc3OUEwPXkKQ09ORklHX1NZU0NfUjhBNzc0QzA9eQpD
T05GSUdfU1lTQ19SOEE3NzRFMT15CkNPTkZJR19TWVNDX1I4QTc3NEExPXkKQ09ORklHX1NZU0Nf
UjhBNzc0QjE9eQpDT05GSUdfUk9DS0NISVBfR1JGPXkKQ09ORklHX1JPQ0tDSElQX0lPRE9NQUlO
PXkKQ09ORklHX1JPQ0tDSElQX1BNX0RPTUFJTlM9eQpDT05GSUdfU09DX1NBTVNVTkc9eQpDT05G
SUdfRVhZTk9TX0NISVBJRD15CkNPTkZJR19FWFlOT1NfUE1VPXkKQ09ORklHX0VYWU5PU19QTV9E
T01BSU5TPXkKQ09ORklHX1NVTlhJX01CVVM9eQpDT05GSUdfU1VOWElfU1JBTT15CkNPTkZJR19B
UkNIX1RFR1JBXzEzMl9TT0M9eQpDT05GSUdfQVJDSF9URUdSQV8yMTBfU09DPXkKQ09ORklHX0FS
Q0hfVEVHUkFfMTg2X1NPQz15CkNPTkZJR19BUkNIX1RFR1JBXzE5NF9TT0M9eQpDT05GSUdfQVJD
SF9URUdSQV8yMzRfU09DPXkKQ09ORklHX1NPQ19URUdSQV9GVVNFPXkKQ09ORklHX1NPQ19URUdS
QV9GTE9XQ1RSTD15CkNPTkZJR19TT0NfVEVHUkFfUE1DPXkKQ09ORklHX1NPQ19URUdSQV9QT1dF
UkdBVEVfQlBNUD15CkNPTkZJR19TT0NfVEk9eQpDT05GSUdfVElfU0NJX1BNX0RPTUFJTlM9eQpD
T05GSUdfVElfSzNfUklOR0FDQz15CkNPTkZJR19USV9LM19TT0NJTkZPPXkKIyBDT05GSUdfVElf
UFJVU1MgaXMgbm90IHNldApDT05GSUdfVElfU0NJX0lOVEFfTVNJX0RPTUFJTj15CgojCiMgWGls
aW54IFNvQyBkcml2ZXJzCiMKQ09ORklHX1pZTlFNUF9QT1dFUj15CkNPTkZJR19aWU5RTVBfUE1f
RE9NQUlOUz15CiMgZW5kIG9mIFhpbGlueCBTb0MgZHJpdmVycwojIGVuZCBvZiBTT0MgKFN5c3Rl
bSBPbiBDaGlwKSBzcGVjaWZpYyBEcml2ZXJzCgpDT05GSUdfUE1fREVWRlJFUT15CgojCiMgREVW
RlJFUSBHb3Zlcm5vcnMKIwpDT05GSUdfREVWRlJFUV9HT1ZfU0lNUExFX09OREVNQU5EPXkKIyBD
T05GSUdfREVWRlJFUV9HT1ZfUEVSRk9STUFOQ0UgaXMgbm90IHNldAojIENPTkZJR19ERVZGUkVR
X0dPVl9QT1dFUlNBVkUgaXMgbm90IHNldApDT05GSUdfREVWRlJFUV9HT1ZfVVNFUlNQQUNFPW0K
IyBDT05GSUdfREVWRlJFUV9HT1ZfUEFTU0lWRSBpcyBub3Qgc2V0CgojCiMgREVWRlJFUSBEcml2
ZXJzCiMKIyBDT05GSUdfQVJNX0VYWU5PU19CVVNfREVWRlJFUSBpcyBub3Qgc2V0CkNPTkZJR19B
Uk1fSU1YX0JVU19ERVZGUkVRPW0KQ09ORklHX0FSTV9JTVg4TV9ERFJDX0RFVkZSRVE9bQojIENP
TkZJR19BUk1fVEVHUkFfREVWRlJFUSBpcyBub3Qgc2V0CiMgQ09ORklHX0FSTV9SSzMzOTlfRE1D
X0RFVkZSRVEgaXMgbm90IHNldAojIENPTkZJR19QTV9ERVZGUkVRX0VWRU5UIGlzIG5vdCBzZXQK
Q09ORklHX0VYVENPTj15CgojCiMgRXh0Y29uIERldmljZSBEcml2ZXJzCiMKIyBDT05GSUdfRVhU
Q09OX0FEQ19KQUNLIGlzIG5vdCBzZXQKIyBDT05GSUdfRVhUQ09OX0ZTQTk0ODAgaXMgbm90IHNl
dAojIENPTkZJR19FWFRDT05fR1BJTyBpcyBub3Qgc2V0CiMgQ09ORklHX0VYVENPTl9NQVgzMzU1
IGlzIG5vdCBzZXQKQ09ORklHX0VYVENPTl9QVE41MTUwPW0KIyBDT05GSUdfRVhUQ09OX1FDT01f
U1BNSV9NSVNDIGlzIG5vdCBzZXQKIyBDT05GSUdfRVhUQ09OX1JUODk3M0EgaXMgbm90IHNldAoj
IENPTkZJR19FWFRDT05fU001NTAyIGlzIG5vdCBzZXQKQ09ORklHX0VYVENPTl9VU0JfR1BJTz15
CkNPTkZJR19FWFRDT05fVVNCQ19DUk9TX0VDPXkKIyBDT05GSUdfRVhUQ09OX1VTQkNfVFVTQjMy
MCBpcyBub3Qgc2V0CkNPTkZJR19NRU1PUlk9eQojIENPTkZJR19BUk1fUEwxNzJfTVBNQyBpcyBu
b3Qgc2V0CkNPTkZJR19CUkNNU1RCX0RQRkU9eQpDT05GSUdfRlNMX0lGQz15CkNPTkZJR19NVEtf
U01JPXkKQ09ORklHX1JFTkVTQVNfUlBDSUY9bQpDT05GSUdfVEVHUkFfTUM9eQojIENPTkZJR19U
RUdSQTIxMF9FTUMgaXMgbm90IHNldApDT05GSUdfSUlPPXkKQ09ORklHX0lJT19CVUZGRVI9eQoj
IENPTkZJR19JSU9fQlVGRkVSX0NCIGlzIG5vdCBzZXQKIyBDT05GSUdfSUlPX0JVRkZFUl9ETUEg
aXMgbm90IHNldAojIENPTkZJR19JSU9fQlVGRkVSX0RNQUVOR0lORSBpcyBub3Qgc2V0CiMgQ09O
RklHX0lJT19CVUZGRVJfSFdfQ09OU1VNRVIgaXMgbm90IHNldApDT05GSUdfSUlPX0tGSUZPX0JV
Rj1tCkNPTkZJR19JSU9fVFJJR0dFUkVEX0JVRkZFUj1tCiMgQ09ORklHX0lJT19DT05GSUdGUyBp
cyBub3Qgc2V0CkNPTkZJR19JSU9fVFJJR0dFUj15CkNPTkZJR19JSU9fQ09OU1VNRVJTX1BFUl9U
UklHR0VSPTIKIyBDT05GSUdfSUlPX1NXX0RFVklDRSBpcyBub3Qgc2V0CiMgQ09ORklHX0lJT19T
V19UUklHR0VSIGlzIG5vdCBzZXQKIyBDT05GSUdfSUlPX1RSSUdHRVJFRF9FVkVOVCBpcyBub3Qg
c2V0CgojCiMgQWNjZWxlcm9tZXRlcnMKIwojIENPTkZJR19BRElTMTYyMDEgaXMgbm90IHNldAoj
IENPTkZJR19BRElTMTYyMDkgaXMgbm90IHNldAojIENPTkZJR19BRFhMMzQ1X0kyQyBpcyBub3Qg
c2V0CiMgQ09ORklHX0FEWEwzNDVfU1BJIGlzIG5vdCBzZXQKIyBDT05GSUdfQURYTDM3Ml9TUEkg
aXMgbm90IHNldAojIENPTkZJR19BRFhMMzcyX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX0JNQTE4
MCBpcyBub3Qgc2V0CiMgQ09ORklHX0JNQTIyMCBpcyBub3Qgc2V0CiMgQ09ORklHX0JNQTQwMCBp
cyBub3Qgc2V0CiMgQ09ORklHX0JNQzE1MF9BQ0NFTCBpcyBub3Qgc2V0CiMgQ09ORklHX0JNSTA4
OF9BQ0NFTCBpcyBub3Qgc2V0CiMgQ09ORklHX0RBMjgwIGlzIG5vdCBzZXQKIyBDT05GSUdfREEz
MTEgaXMgbm90IHNldAojIENPTkZJR19ETUFSRDA2IGlzIG5vdCBzZXQKIyBDT05GSUdfRE1BUkQw
OSBpcyBub3Qgc2V0CiMgQ09ORklHX0RNQVJEMTAgaXMgbm90IHNldAojIENPTkZJR19GWExTODk2
MkFGX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX0ZYTFM4OTYyQUZfU1BJIGlzIG5vdCBzZXQKIyBD
T05GSUdfSUlPX0NST1NfRUNfQUNDRUxfTEVHQUNZIGlzIG5vdCBzZXQKIyBDT05GSUdfSUlPX1NU
X0FDQ0VMXzNBWElTIGlzIG5vdCBzZXQKIyBDT05GSUdfS1hTRDkgaXMgbm90IHNldAojIENPTkZJ
R19LWENKSzEwMTMgaXMgbm90IHNldAojIENPTkZJR19NQzMyMzAgaXMgbm90IHNldAojIENPTkZJ
R19NTUE3NDU1X0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX01NQTc0NTVfU1BJIGlzIG5vdCBzZXQK
IyBDT05GSUdfTU1BNzY2MCBpcyBub3Qgc2V0CiMgQ09ORklHX01NQTg0NTIgaXMgbm90IHNldAoj
IENPTkZJR19NTUE5NTUxIGlzIG5vdCBzZXQKIyBDT05GSUdfTU1BOTU1MyBpcyBub3Qgc2V0CiMg
Q09ORklHX01YQzQwMDUgaXMgbm90IHNldAojIENPTkZJR19NWEM2MjU1IGlzIG5vdCBzZXQKIyBD
T05GSUdfU0NBMzAwMCBpcyBub3Qgc2V0CiMgQ09ORklHX1NDQTMzMDAgaXMgbm90IHNldAojIENP
TkZJR19TVEs4MzEyIGlzIG5vdCBzZXQKIyBDT05GSUdfU1RLOEJBNTAgaXMgbm90IHNldAojIGVu
ZCBvZiBBY2NlbGVyb21ldGVycwoKIwojIEFuYWxvZyB0byBkaWdpdGFsIGNvbnZlcnRlcnMKIwoj
IENPTkZJR19BRDcwOTFSNSBpcyBub3Qgc2V0CiMgQ09ORklHX0FENzEyNCBpcyBub3Qgc2V0CiMg
Q09ORklHX0FENzE5MiBpcyBub3Qgc2V0CiMgQ09ORklHX0FENzI2NiBpcyBub3Qgc2V0CiMgQ09O
RklHX0FENzI5MSBpcyBub3Qgc2V0CiMgQ09ORklHX0FENzI5MiBpcyBub3Qgc2V0CiMgQ09ORklH
X0FENzI5OCBpcyBub3Qgc2V0CiMgQ09ORklHX0FENzQ3NiBpcyBub3Qgc2V0CiMgQ09ORklHX0FE
NzYwNl9JRkFDRV9QQVJBTExFTCBpcyBub3Qgc2V0CiMgQ09ORklHX0FENzYwNl9JRkFDRV9TUEkg
aXMgbm90IHNldAojIENPTkZJR19BRDc3NjYgaXMgbm90IHNldAojIENPTkZJR19BRDc3NjhfMSBp
cyBub3Qgc2V0CiMgQ09ORklHX0FENzc4MCBpcyBub3Qgc2V0CiMgQ09ORklHX0FENzc5MSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0FENzc5MyBpcyBub3Qgc2V0CiMgQ09ORklHX0FENzg4NyBpcyBub3Qg
c2V0CiMgQ09ORklHX0FENzkyMyBpcyBub3Qgc2V0CiMgQ09ORklHX0FENzk0OSBpcyBub3Qgc2V0
CiMgQ09ORklHX0FENzk5WCBpcyBub3Qgc2V0CiMgQ09ORklHX0FESV9BWElfQURDIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQVhQMjBYX0FEQyBpcyBub3Qgc2V0CiMgQ09ORklHX0FYUDI4OF9BREMgaXMg
bm90IHNldAojIENPTkZJR19CQ01fSVBST0NfQURDIGlzIG5vdCBzZXQKIyBDT05GSUdfQkVSTElO
Ml9BREMgaXMgbm90IHNldAojIENPTkZJR19DQzEwMDAxX0FEQyBpcyBub3Qgc2V0CiMgQ09ORklH
X0VOVkVMT1BFX0RFVEVDVE9SIGlzIG5vdCBzZXQKQ09ORklHX0VYWU5PU19BREM9eQojIENPTkZJ
R19ISTg0MzUgaXMgbm90IHNldAojIENPTkZJR19IWDcxMSBpcyBub3Qgc2V0CiMgQ09ORklHX0lO
QTJYWF9BREMgaXMgbm90IHNldAojIENPTkZJR19JTVg3RF9BREMgaXMgbm90IHNldAojIENPTkZJ
R19MVEMyNDcxIGlzIG5vdCBzZXQKIyBDT05GSUdfTFRDMjQ4NSBpcyBub3Qgc2V0CiMgQ09ORklH
X0xUQzI0OTYgaXMgbm90IHNldAojIENPTkZJR19MVEMyNDk3IGlzIG5vdCBzZXQKIyBDT05GSUdf
TUFYMTAyNyBpcyBub3Qgc2V0CiMgQ09ORklHX01BWDExMTAwIGlzIG5vdCBzZXQKIyBDT05GSUdf
TUFYMTExOCBpcyBub3Qgc2V0CiMgQ09ORklHX01BWDEyNDEgaXMgbm90IHNldAojIENPTkZJR19N
QVgxMzYzIGlzIG5vdCBzZXQKQ09ORklHX01BWDk2MTE9bQojIENPTkZJR19NQ1AzMjBYIGlzIG5v
dCBzZXQKIyBDT05GSUdfTUNQMzQyMiBpcyBub3Qgc2V0CiMgQ09ORklHX01DUDM5MTEgaXMgbm90
IHNldAojIENPTkZJR19NRURJQVRFS19NVDY1NzdfQVVYQURDIGlzIG5vdCBzZXQKQ09ORklHX01F
U09OX1NBUkFEQz15CiMgQ09ORklHX05BVTc4MDIgaXMgbm90IHNldApDT05GSUdfUUNPTV9WQURD
X0NPTU1PTj1tCiMgQ09ORklHX1FDT01fU1BNSV9JQURDIGlzIG5vdCBzZXQKQ09ORklHX1FDT01f
U1BNSV9WQURDPW0KQ09ORklHX1FDT01fU1BNSV9BREM1PW0KQ09ORklHX1JPQ0tDSElQX1NBUkFE
Qz1tCiMgQ09ORklHX1JaRzJMX0FEQyBpcyBub3Qgc2V0CiMgQ09ORklHX1NEX0FEQ19NT0RVTEFU
T1IgaXMgbm90IHNldAojIENPTkZJR19USV9BREMwODFDIGlzIG5vdCBzZXQKIyBDT05GSUdfVElf
QURDMDgzMiBpcyBub3Qgc2V0CiMgQ09ORklHX1RJX0FEQzA4NFMwMjEgaXMgbm90IHNldAojIENP
TkZJR19USV9BREMxMjEzOCBpcyBub3Qgc2V0CiMgQ09ORklHX1RJX0FEQzEwOFMxMDIgaXMgbm90
IHNldAojIENPTkZJR19USV9BREMxMjhTMDUyIGlzIG5vdCBzZXQKIyBDT05GSUdfVElfQURDMTYx
UzYyNiBpcyBub3Qgc2V0CiMgQ09ORklHX1RJX0FEUzEwMTUgaXMgbm90IHNldAojIENPTkZJR19U
SV9BRFM3OTUwIGlzIG5vdCBzZXQKIyBDT05GSUdfVElfQURTODM0NCBpcyBub3Qgc2V0CiMgQ09O
RklHX1RJX0FEUzg2ODggaXMgbm90IHNldAojIENPTkZJR19USV9BRFMxMjRTMDggaXMgbm90IHNl
dAojIENPTkZJR19USV9BRFMxMzFFMDggaXMgbm90IHNldAojIENPTkZJR19USV9UTEM0NTQxIGlz
IG5vdCBzZXQKIyBDT05GSUdfVElfVFNDMjA0NiBpcyBub3Qgc2V0CiMgQ09ORklHX1ZGNjEwX0FE
QyBpcyBub3Qgc2V0CiMgQ09ORklHX1hJTElOWF9YQURDIGlzIG5vdCBzZXQKIyBlbmQgb2YgQW5h
bG9nIHRvIGRpZ2l0YWwgY29udmVydGVycwoKIwojIEFuYWxvZyBGcm9udCBFbmRzCiMKIyBDT05G
SUdfSUlPX1JFU0NBTEUgaXMgbm90IHNldAojIGVuZCBvZiBBbmFsb2cgRnJvbnQgRW5kcwoKIwoj
IEFtcGxpZmllcnMKIwojIENPTkZJR19BRDgzNjYgaXMgbm90IHNldAojIENPTkZJR19ITUM0MjUg
aXMgbm90IHNldAojIGVuZCBvZiBBbXBsaWZpZXJzCgojCiMgQ2FwYWNpdGFuY2UgdG8gZGlnaXRh
bCBjb252ZXJ0ZXJzCiMKIyBDT05GSUdfQUQ3MTUwIGlzIG5vdCBzZXQKIyBlbmQgb2YgQ2FwYWNp
dGFuY2UgdG8gZGlnaXRhbCBjb252ZXJ0ZXJzCgojCiMgQ2hlbWljYWwgU2Vuc29ycwojCiMgQ09O
RklHX0FUTEFTX1BIX1NFTlNPUiBpcyBub3Qgc2V0CiMgQ09ORklHX0FUTEFTX0VaT19TRU5TT1Ig
aXMgbm90IHNldAojIENPTkZJR19CTUU2ODAgaXMgbm90IHNldAojIENPTkZJR19DQ1M4MTEgaXMg
bm90IHNldAojIENPTkZJR19JQVFDT1JFIGlzIG5vdCBzZXQKIyBDT05GSUdfUE1TNzAwMyBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NDRDMwX0NPUkUgaXMgbm90IHNldAojIENPTkZJR19TRU5TSVJJT05f
U0dQMzAgaXMgbm90IHNldAojIENPTkZJR19TRU5TSVJJT05fU0dQNDAgaXMgbm90IHNldAojIENP
TkZJR19TUFMzMF9JMkMgaXMgbm90IHNldAojIENPTkZJR19TUFMzMF9TRVJJQUwgaXMgbm90IHNl
dAojIENPTkZJR19WWjg5WCBpcyBub3Qgc2V0CiMgZW5kIG9mIENoZW1pY2FsIFNlbnNvcnMKCkNP
TkZJR19JSU9fQ1JPU19FQ19TRU5TT1JTX0NPUkU9bQpDT05GSUdfSUlPX0NST1NfRUNfU0VOU09S
Uz1tCiMgQ09ORklHX0lJT19DUk9TX0VDX1NFTlNPUlNfTElEX0FOR0xFIGlzIG5vdCBzZXQKCiMK
IyBIaWQgU2Vuc29yIElJTyBDb21tb24KIwojIGVuZCBvZiBIaWQgU2Vuc29yIElJTyBDb21tb24K
CiMKIyBJSU8gU0NNSSBTZW5zb3JzCiMKIyBDT05GSUdfSUlPX1NDTUkgaXMgbm90IHNldAojIGVu
ZCBvZiBJSU8gU0NNSSBTZW5zb3JzCgojCiMgU1NQIFNlbnNvciBDb21tb24KIwojIENPTkZJR19J
SU9fU1NQX1NFTlNPUkhVQiBpcyBub3Qgc2V0CiMgZW5kIG9mIFNTUCBTZW5zb3IgQ29tbW9uCgpD
T05GSUdfSUlPX1NUX1NFTlNPUlNfSTJDPW0KQ09ORklHX0lJT19TVF9TRU5TT1JTX1NQST1tCkNP
TkZJR19JSU9fU1RfU0VOU09SU19DT1JFPW0KCiMKIyBEaWdpdGFsIHRvIGFuYWxvZyBjb252ZXJ0
ZXJzCiMKIyBDT05GSUdfQUQ1MDY0IGlzIG5vdCBzZXQKIyBDT05GSUdfQUQ1MzYwIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQUQ1MzgwIGlzIG5vdCBzZXQKIyBDT05GSUdfQUQ1NDIxIGlzIG5vdCBzZXQK
IyBDT05GSUdfQUQ1NDQ2IGlzIG5vdCBzZXQKIyBDT05GSUdfQUQ1NDQ5IGlzIG5vdCBzZXQKIyBD
T05GSUdfQUQ1NTkyUiBpcyBub3Qgc2V0CiMgQ09ORklHX0FENTU5M1IgaXMgbm90IHNldAojIENP
TkZJR19BRDU1MDQgaXMgbm90IHNldAojIENPTkZJR19BRDU2MjRSX1NQSSBpcyBub3Qgc2V0CiMg
Q09ORklHX0FENTY4Nl9TUEkgaXMgbm90IHNldAojIENPTkZJR19BRDU2OTZfSTJDIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQUQ1NzU1IGlzIG5vdCBzZXQKIyBDT05GSUdfQUQ1NzU4IGlzIG5vdCBzZXQK
IyBDT05GSUdfQUQ1NzYxIGlzIG5vdCBzZXQKIyBDT05GSUdfQUQ1NzY0IGlzIG5vdCBzZXQKIyBD
T05GSUdfQUQ1NzY2IGlzIG5vdCBzZXQKIyBDT05GSUdfQUQ1NzcwUiBpcyBub3Qgc2V0CiMgQ09O
RklHX0FENTc5MSBpcyBub3Qgc2V0CiMgQ09ORklHX0FENzMwMyBpcyBub3Qgc2V0CiMgQ09ORklH
X0FEODgwMSBpcyBub3Qgc2V0CiMgQ09ORklHX0RQT1RfREFDIGlzIG5vdCBzZXQKIyBDT05GSUdf
RFM0NDI0IGlzIG5vdCBzZXQKIyBDT05GSUdfTFRDMTY2MCBpcyBub3Qgc2V0CiMgQ09ORklHX0xU
QzI2MzIgaXMgbm90IHNldAojIENPTkZJR19NNjIzMzIgaXMgbm90IHNldAojIENPTkZJR19NQVg1
MTcgaXMgbm90IHNldAojIENPTkZJR19NQVg1ODIxIGlzIG5vdCBzZXQKIyBDT05GSUdfTUNQNDcy
NSBpcyBub3Qgc2V0CiMgQ09ORklHX01DUDQ5MjIgaXMgbm90IHNldAojIENPTkZJR19USV9EQUMw
ODJTMDg1IGlzIG5vdCBzZXQKIyBDT05GSUdfVElfREFDNTU3MSBpcyBub3Qgc2V0CiMgQ09ORklH
X1RJX0RBQzczMTEgaXMgbm90IHNldAojIENPTkZJR19USV9EQUM3NjEyIGlzIG5vdCBzZXQKIyBD
T05GSUdfVkY2MTBfREFDIGlzIG5vdCBzZXQKIyBlbmQgb2YgRGlnaXRhbCB0byBhbmFsb2cgY29u
dmVydGVycwoKIwojIElJTyBkdW1teSBkcml2ZXIKIwojIGVuZCBvZiBJSU8gZHVtbXkgZHJpdmVy
CgojCiMgRnJlcXVlbmN5IFN5bnRoZXNpemVycyBERFMvUExMCiMKCiMKIyBDbG9jayBHZW5lcmF0
b3IvRGlzdHJpYnV0aW9uCiMKIyBDT05GSUdfQUQ5NTIzIGlzIG5vdCBzZXQKIyBlbmQgb2YgQ2xv
Y2sgR2VuZXJhdG9yL0Rpc3RyaWJ1dGlvbgoKIwojIFBoYXNlLUxvY2tlZCBMb29wIChQTEwpIGZy
ZXF1ZW5jeSBzeW50aGVzaXplcnMKIwojIENPTkZJR19BREY0MzUwIGlzIG5vdCBzZXQKIyBDT05G
SUdfQURGNDM3MSBpcyBub3Qgc2V0CiMgZW5kIG9mIFBoYXNlLUxvY2tlZCBMb29wIChQTEwpIGZy
ZXF1ZW5jeSBzeW50aGVzaXplcnMKIyBlbmQgb2YgRnJlcXVlbmN5IFN5bnRoZXNpemVycyBERFMv
UExMCgojCiMgRGlnaXRhbCBneXJvc2NvcGUgc2Vuc29ycwojCiMgQ09ORklHX0FESVMxNjA4MCBp
cyBub3Qgc2V0CiMgQ09ORklHX0FESVMxNjEzMCBpcyBub3Qgc2V0CiMgQ09ORklHX0FESVMxNjEz
NiBpcyBub3Qgc2V0CiMgQ09ORklHX0FESVMxNjI2MCBpcyBub3Qgc2V0CiMgQ09ORklHX0FEWFJT
MjkwIGlzIG5vdCBzZXQKIyBDT05GSUdfQURYUlM0NTAgaXMgbm90IHNldAojIENPTkZJR19CTUcx
NjAgaXMgbm90IHNldAojIENPTkZJR19GWEFTMjEwMDJDIGlzIG5vdCBzZXQKIyBDT05GSUdfTVBV
MzA1MF9JMkMgaXMgbm90IHNldAojIENPTkZJR19JSU9fU1RfR1lST18zQVhJUyBpcyBub3Qgc2V0
CiMgQ09ORklHX0lURzMyMDAgaXMgbm90IHNldAojIGVuZCBvZiBEaWdpdGFsIGd5cm9zY29wZSBz
ZW5zb3JzCgojCiMgSGVhbHRoIFNlbnNvcnMKIwoKIwojIEhlYXJ0IFJhdGUgTW9uaXRvcnMKIwoj
IENPTkZJR19BRkU0NDAzIGlzIG5vdCBzZXQKIyBDT05GSUdfQUZFNDQwNCBpcyBub3Qgc2V0CiMg
Q09ORklHX01BWDMwMTAwIGlzIG5vdCBzZXQKIyBDT05GSUdfTUFYMzAxMDIgaXMgbm90IHNldAoj
IGVuZCBvZiBIZWFydCBSYXRlIE1vbml0b3JzCiMgZW5kIG9mIEhlYWx0aCBTZW5zb3JzCgojCiMg
SHVtaWRpdHkgc2Vuc29ycwojCiMgQ09ORklHX0FNMjMxNSBpcyBub3Qgc2V0CiMgQ09ORklHX0RI
VDExIGlzIG5vdCBzZXQKIyBDT05GSUdfSERDMTAwWCBpcyBub3Qgc2V0CiMgQ09ORklHX0hEQzIw
MTAgaXMgbm90IHNldAojIENPTkZJR19IVFMyMjEgaXMgbm90IHNldAojIENPTkZJR19IVFUyMSBp
cyBub3Qgc2V0CiMgQ09ORklHX1NJNzAwNSBpcyBub3Qgc2V0CiMgQ09ORklHX1NJNzAyMCBpcyBu
b3Qgc2V0CiMgZW5kIG9mIEh1bWlkaXR5IHNlbnNvcnMKCiMKIyBJbmVydGlhbCBtZWFzdXJlbWVu
dCB1bml0cwojCiMgQ09ORklHX0FESVMxNjQwMCBpcyBub3Qgc2V0CiMgQ09ORklHX0FESVMxNjQ2
MCBpcyBub3Qgc2V0CiMgQ09ORklHX0FESVMxNjQ3NSBpcyBub3Qgc2V0CiMgQ09ORklHX0FESVMx
NjQ4MCBpcyBub3Qgc2V0CiMgQ09ORklHX0JNSTE2MF9JMkMgaXMgbm90IHNldAojIENPTkZJR19C
TUkxNjBfU1BJIGlzIG5vdCBzZXQKIyBDT05GSUdfRlhPUzg3MDBfSTJDIGlzIG5vdCBzZXQKIyBD
T05GSUdfRlhPUzg3MDBfU1BJIGlzIG5vdCBzZXQKIyBDT05GSUdfS01YNjEgaXMgbm90IHNldAoj
IENPTkZJR19JTlZfSUNNNDI2MDBfSTJDIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5WX0lDTTQyNjAw
X1NQSSBpcyBub3Qgc2V0CiMgQ09ORklHX0lOVl9NUFU2MDUwX0kyQyBpcyBub3Qgc2V0CiMgQ09O
RklHX0lOVl9NUFU2MDUwX1NQSSBpcyBub3Qgc2V0CkNPTkZJR19JSU9fU1RfTFNNNkRTWD1tCkNP
TkZJR19JSU9fU1RfTFNNNkRTWF9JMkM9bQpDT05GSUdfSUlPX1NUX0xTTTZEU1hfU1BJPW0KIyBD
T05GSUdfSUlPX1NUX0xTTTlEUzAgaXMgbm90IHNldAojIGVuZCBvZiBJbmVydGlhbCBtZWFzdXJl
bWVudCB1bml0cwoKIwojIExpZ2h0IHNlbnNvcnMKIwojIENPTkZJR19BQ1BJX0FMUyBpcyBub3Qg
c2V0CiMgQ09ORklHX0FESkRfUzMxMSBpcyBub3Qgc2V0CiMgQ09ORklHX0FEVVgxMDIwIGlzIG5v
dCBzZXQKIyBDT05GSUdfQUwzMDEwIGlzIG5vdCBzZXQKIyBDT05GSUdfQUwzMzIwQSBpcyBub3Qg
c2V0CiMgQ09ORklHX0FQRFM5MzAwIGlzIG5vdCBzZXQKIyBDT05GSUdfQVBEUzk5NjAgaXMgbm90
IHNldAojIENPTkZJR19BUzczMjExIGlzIG5vdCBzZXQKIyBDT05GSUdfQkgxNzUwIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQkgxNzgwIGlzIG5vdCBzZXQKIyBDT05GSUdfQ00zMjE4MSBpcyBub3Qgc2V0
CiMgQ09ORklHX0NNMzIzMiBpcyBub3Qgc2V0CiMgQ09ORklHX0NNMzMyMyBpcyBub3Qgc2V0CiMg
Q09ORklHX0NNMzYwNSBpcyBub3Qgc2V0CiMgQ09ORklHX0NNMzY2NTEgaXMgbm90IHNldApDT05G
SUdfSUlPX0NST1NfRUNfTElHSFRfUFJPWD1tCiMgQ09ORklHX0dQMkFQMDAyIGlzIG5vdCBzZXQK
IyBDT05GSUdfR1AyQVAwMjBBMDBGIGlzIG5vdCBzZXQKQ09ORklHX1NFTlNPUlNfSVNMMjkwMTg9
bQojIENPTkZJR19TRU5TT1JTX0lTTDI5MDI4IGlzIG5vdCBzZXQKIyBDT05GSUdfSVNMMjkxMjUg
aXMgbm90IHNldAojIENPTkZJR19KU0ExMjEyIGlzIG5vdCBzZXQKIyBDT05GSUdfUlBSMDUyMSBp
cyBub3Qgc2V0CiMgQ09ORklHX0xUUjUwMSBpcyBub3Qgc2V0CiMgQ09ORklHX0xWMDEwNENTIGlz
IG5vdCBzZXQKIyBDT05GSUdfTUFYNDQwMDAgaXMgbm90IHNldAojIENPTkZJR19NQVg0NDAwOSBp
cyBub3Qgc2V0CiMgQ09ORklHX05PQTEzMDUgaXMgbm90IHNldAojIENPTkZJR19PUFQzMDAxIGlz
IG5vdCBzZXQKIyBDT05GSUdfUEExMjIwMzAwMSBpcyBub3Qgc2V0CiMgQ09ORklHX1NJMTEzMyBp
cyBub3Qgc2V0CiMgQ09ORklHX1NJMTE0NSBpcyBub3Qgc2V0CiMgQ09ORklHX1NUSzMzMTAgaXMg
bm90IHNldAojIENPTkZJR19TVF9VVklTMjUgaXMgbm90IHNldAojIENPTkZJR19UQ1MzNDE0IGlz
IG5vdCBzZXQKIyBDT05GSUdfVENTMzQ3MiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfVFNM
MjU2MyBpcyBub3Qgc2V0CiMgQ09ORklHX1RTTDI1ODMgaXMgbm90IHNldAojIENPTkZJR19UU0wy
NTkxIGlzIG5vdCBzZXQKIyBDT05GSUdfVFNMMjc3MiBpcyBub3Qgc2V0CiMgQ09ORklHX1RTTDQ1
MzEgaXMgbm90IHNldAojIENPTkZJR19VUzUxODJEIGlzIG5vdCBzZXQKQ09ORklHX1ZDTkw0MDAw
PW0KIyBDT05GSUdfVkNOTDQwMzUgaXMgbm90IHNldAojIENPTkZJR19WRU1MNjAzMCBpcyBub3Qg
c2V0CiMgQ09ORklHX1ZFTUw2MDcwIGlzIG5vdCBzZXQKIyBDT05GSUdfVkw2MTgwIGlzIG5vdCBz
ZXQKIyBDT05GSUdfWk9QVDIyMDEgaXMgbm90IHNldAojIGVuZCBvZiBMaWdodCBzZW5zb3JzCgoj
CiMgTWFnbmV0b21ldGVyIHNlbnNvcnMKIwojIENPTkZJR19BSzg5NzQgaXMgbm90IHNldAojIENP
TkZJR19BSzg5NzUgaXMgbm90IHNldAojIENPTkZJR19BSzA5OTExIGlzIG5vdCBzZXQKIyBDT05G
SUdfQk1DMTUwX01BR05fSTJDIGlzIG5vdCBzZXQKIyBDT05GSUdfQk1DMTUwX01BR05fU1BJIGlz
IG5vdCBzZXQKIyBDT05GSUdfTUFHMzExMCBpcyBub3Qgc2V0CiMgQ09ORklHX01NQzM1MjQwIGlz
IG5vdCBzZXQKQ09ORklHX0lJT19TVF9NQUdOXzNBWElTPW0KQ09ORklHX0lJT19TVF9NQUdOX0ky
Q18zQVhJUz1tCkNPTkZJR19JSU9fU1RfTUFHTl9TUElfM0FYSVM9bQojIENPTkZJR19TRU5TT1JT
X0hNQzU4NDNfSTJDIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19ITUM1ODQzX1NQSSBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfUk0zMTAwX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX1NF
TlNPUlNfUk0zMTAwX1NQSSBpcyBub3Qgc2V0CiMgQ09ORklHX1lBTUFIQV9ZQVM1MzAgaXMgbm90
IHNldAojIGVuZCBvZiBNYWduZXRvbWV0ZXIgc2Vuc29ycwoKIwojIE11bHRpcGxleGVycwojCiMg
Q09ORklHX0lJT19NVVggaXMgbm90IHNldAojIGVuZCBvZiBNdWx0aXBsZXhlcnMKCiMKIyBJbmNs
aW5vbWV0ZXIgc2Vuc29ycwojCiMgZW5kIG9mIEluY2xpbm9tZXRlciBzZW5zb3JzCgojCiMgVHJp
Z2dlcnMgLSBzdGFuZGFsb25lCiMKIyBDT05GSUdfSUlPX0lOVEVSUlVQVF9UUklHR0VSIGlzIG5v
dCBzZXQKIyBDT05GSUdfSUlPX1NZU0ZTX1RSSUdHRVIgaXMgbm90IHNldAojIGVuZCBvZiBUcmln
Z2VycyAtIHN0YW5kYWxvbmUKCiMKIyBMaW5lYXIgYW5kIGFuZ3VsYXIgcG9zaXRpb24gc2Vuc29y
cwojCiMgZW5kIG9mIExpbmVhciBhbmQgYW5ndWxhciBwb3NpdGlvbiBzZW5zb3JzCgojCiMgRGln
aXRhbCBwb3RlbnRpb21ldGVycwojCiMgQ09ORklHX0FENTExMCBpcyBub3Qgc2V0CiMgQ09ORklH
X0FENTI3MiBpcyBub3Qgc2V0CiMgQ09ORklHX0RTMTgwMyBpcyBub3Qgc2V0CiMgQ09ORklHX01B
WDU0MzIgaXMgbm90IHNldAojIENPTkZJR19NQVg1NDgxIGlzIG5vdCBzZXQKIyBDT05GSUdfTUFY
NTQ4NyBpcyBub3Qgc2V0CiMgQ09ORklHX01DUDQwMTggaXMgbm90IHNldAojIENPTkZJR19NQ1A0
MTMxIGlzIG5vdCBzZXQKIyBDT05GSUdfTUNQNDUzMSBpcyBub3Qgc2V0CiMgQ09ORklHX01DUDQx
MDEwIGlzIG5vdCBzZXQKIyBDT05GSUdfVFBMMDEwMiBpcyBub3Qgc2V0CiMgZW5kIG9mIERpZ2l0
YWwgcG90ZW50aW9tZXRlcnMKCiMKIyBEaWdpdGFsIHBvdGVudGlvc3RhdHMKIwojIENPTkZJR19M
TVA5MTAwMCBpcyBub3Qgc2V0CiMgZW5kIG9mIERpZ2l0YWwgcG90ZW50aW9zdGF0cwoKIwojIFBy
ZXNzdXJlIHNlbnNvcnMKIwojIENPTkZJR19BQlAwNjBNRyBpcyBub3Qgc2V0CiMgQ09ORklHX0JN
UDI4MCBpcyBub3Qgc2V0CkNPTkZJR19JSU9fQ1JPU19FQ19CQVJPPW0KIyBDT05GSUdfRExITDYw
RCBpcyBub3Qgc2V0CiMgQ09ORklHX0RQUzMxMCBpcyBub3Qgc2V0CiMgQ09ORklHX0hQMDMgaXMg
bm90IHNldAojIENPTkZJR19JQ1AxMDEwMCBpcyBub3Qgc2V0CiMgQ09ORklHX01QTDExNV9JMkMg
aXMgbm90IHNldAojIENPTkZJR19NUEwxMTVfU1BJIGlzIG5vdCBzZXQKQ09ORklHX01QTDMxMTU9
bQojIENPTkZJR19NUzU2MTEgaXMgbm90IHNldAojIENPTkZJR19NUzU2MzcgaXMgbm90IHNldAoj
IENPTkZJR19JSU9fU1RfUFJFU1MgaXMgbm90IHNldAojIENPTkZJR19UNTQwMyBpcyBub3Qgc2V0
CiMgQ09ORklHX0hQMjA2QyBpcyBub3Qgc2V0CiMgQ09ORklHX1pQQTIzMjYgaXMgbm90IHNldAoj
IGVuZCBvZiBQcmVzc3VyZSBzZW5zb3JzCgojCiMgTGlnaHRuaW5nIHNlbnNvcnMKIwojIENPTkZJ
R19BUzM5MzUgaXMgbm90IHNldAojIGVuZCBvZiBMaWdodG5pbmcgc2Vuc29ycwoKIwojIFByb3hp
bWl0eSBhbmQgZGlzdGFuY2Ugc2Vuc29ycwojCiMgQ09ORklHX0NST1NfRUNfTUtCUF9QUk9YSU1J
VFkgaXMgbm90IHNldAojIENPTkZJR19JU0wyOTUwMSBpcyBub3Qgc2V0CiMgQ09ORklHX0xJREFS
X0xJVEVfVjIgaXMgbm90IHNldAojIENPTkZJR19NQjEyMzIgaXMgbm90IHNldAojIENPTkZJR19Q
SU5HIGlzIG5vdCBzZXQKIyBDT05GSUdfUkZENzc0MDIgaXMgbm90IHNldAojIENPTkZJR19TUkYw
NCBpcyBub3Qgc2V0CiMgQ09ORklHX1NYOTMxMCBpcyBub3Qgc2V0CiMgQ09ORklHX1NYOTUwMCBp
cyBub3Qgc2V0CiMgQ09ORklHX1NSRjA4IGlzIG5vdCBzZXQKIyBDT05GSUdfVkNOTDMwMjAgaXMg
bm90IHNldAojIENPTkZJR19WTDUzTDBYX0kyQyBpcyBub3Qgc2V0CiMgZW5kIG9mIFByb3hpbWl0
eSBhbmQgZGlzdGFuY2Ugc2Vuc29ycwoKIwojIFJlc29sdmVyIHRvIGRpZ2l0YWwgY29udmVydGVy
cwojCiMgQ09ORklHX0FEMlM5MCBpcyBub3Qgc2V0CiMgQ09ORklHX0FEMlMxMjAwIGlzIG5vdCBz
ZXQKIyBlbmQgb2YgUmVzb2x2ZXIgdG8gZGlnaXRhbCBjb252ZXJ0ZXJzCgojCiMgVGVtcGVyYXR1
cmUgc2Vuc29ycwojCiMgQ09ORklHX0xUQzI5ODMgaXMgbm90IHNldAojIENPTkZJR19NQVhJTV9U
SEVSTU9DT1VQTEUgaXMgbm90IHNldAojIENPTkZJR19NTFg5MDYxNCBpcyBub3Qgc2V0CiMgQ09O
RklHX01MWDkwNjMyIGlzIG5vdCBzZXQKIyBDT05GSUdfVE1QMDA2IGlzIG5vdCBzZXQKIyBDT05G
SUdfVE1QMDA3IGlzIG5vdCBzZXQKIyBDT05GSUdfVE1QMTE3IGlzIG5vdCBzZXQKIyBDT05GSUdf
VFNZUzAxIGlzIG5vdCBzZXQKIyBDT05GSUdfVFNZUzAyRCBpcyBub3Qgc2V0CiMgQ09ORklHX01B
WDMxODU2IGlzIG5vdCBzZXQKIyBlbmQgb2YgVGVtcGVyYXR1cmUgc2Vuc29ycwoKIyBDT05GSUdf
TlRCIGlzIG5vdCBzZXQKIyBDT05GSUdfVk1FX0JVUyBpcyBub3Qgc2V0CkNPTkZJR19QV009eQpD
T05GSUdfUFdNX1NZU0ZTPXkKIyBDT05GSUdfUFdNX0FUTUVMX1RDQiBpcyBub3Qgc2V0CkNPTkZJ
R19QV01fQkNNX0lQUk9DPXkKQ09ORklHX1BXTV9CQ00yODM1PW0KIyBDT05GSUdfUFdNX0JFUkxJ
TiBpcyBub3Qgc2V0CiMgQ09ORklHX1BXTV9CUkNNU1RCIGlzIG5vdCBzZXQKQ09ORklHX1BXTV9D
Uk9TX0VDPW0KIyBDT05GSUdfUFdNX0RXQyBpcyBub3Qgc2V0CiMgQ09ORklHX1BXTV9GU0xfRlRN
IGlzIG5vdCBzZXQKIyBDT05GSUdfUFdNX0hJQlZUIGlzIG5vdCBzZXQKIyBDT05GSUdfUFdNX0lN
WDEgaXMgbm90IHNldApDT05GSUdfUFdNX0lNWDI3PW0KIyBDT05GSUdfUFdNX0lNWF9UUE0gaXMg
bm90IHNldAojIENPTkZJR19QV01fS0VFTUJBWSBpcyBub3Qgc2V0CkNPTkZJR19QV01fTUVTT049
bQpDT05GSUdfUFdNX01US19ESVNQPW0KQ09ORklHX1BXTV9NRURJQVRFSz1tCiMgQ09ORklHX1BX
TV9QQ0E5Njg1IGlzIG5vdCBzZXQKIyBDT05GSUdfUFdNX1JBU1BCRVJSWVBJX1BPRSBpcyBub3Qg
c2V0CkNPTkZJR19QV01fUkNBUj1tCiMgQ09ORklHX1BXTV9SRU5FU0FTX1RQVSBpcyBub3Qgc2V0
CkNPTkZJR19QV01fUk9DS0NISVA9eQpDT05GSUdfUFdNX1NBTVNVTkc9eQpDT05GSUdfUFdNX1NM
MjhDUExEPW0KIyBDT05GSUdfUFdNX1NQUkQgaXMgbm90IHNldApDT05GSUdfUFdNX1NVTjRJPW0K
Q09ORklHX1BXTV9URUdSQT1tCiMgQ09ORklHX1BXTV9USUVDQVAgaXMgbm90IHNldAojIENPTkZJ
R19QV01fVElFSFJQV00gaXMgbm90IHNldApDT05GSUdfUFdNX1ZJU0NPTlRJPW0KCiMKIyBJUlEg
Y2hpcCBzdXBwb3J0CiMKQ09ORklHX0lSUUNISVA9eQpDT05GSUdfQVJNX0dJQz15CkNPTkZJR19B
Uk1fR0lDX1BNPXkKQ09ORklHX0FSTV9HSUNfTUFYX05SPTEKQ09ORklHX0FSTV9HSUNfVjJNPXkK
Q09ORklHX0FSTV9HSUNfVjM9eQpDT05GSUdfQVJNX0dJQ19WM19JVFM9eQpDT05GSUdfQVJNX0dJ
Q19WM19JVFNfUENJPXkKQ09ORklHX0FSTV9HSUNfVjNfSVRTX0ZTTF9NQz15CkNPTkZJR19BTFBJ
TkVfTVNJPXkKIyBDT05GSUdfQUxfRklDIGlzIG5vdCBzZXQKQ09ORklHX0JDTTcwMzhfTDFfSVJR
PXkKQ09ORklHX0JSQ01TVEJfTDJfSVJRPXkKQ09ORklHX0RXX0FQQl9JQ1RMPXkKQ09ORklHX0hJ
U0lMSUNPTl9JUlFfTUJJR0VOPXkKQ09ORklHX1JFTkVTQVNfSVJRQz15CkNPTkZJR19TTDI4Q1BM
RF9JTlRDPXkKIyBDT05GSUdfWElMSU5YX0lOVEMgaXMgbm90IHNldApDT05GSUdfSU1YX0dQQ1Yy
PXkKQ09ORklHX01WRUJVX0dJQ1A9eQpDT05GSUdfTVZFQlVfSUNVPXkKQ09ORklHX01WRUJVX09E
TUk9eQpDT05GSUdfTVZFQlVfUElDPXkKQ09ORklHX01WRUJVX1NFST15CkNPTkZJR19MU19FWFRJ
UlE9eQpDT05GSUdfTFNfU0NGR19NU0k9eQpDT05GSUdfUEFSVElUSU9OX1BFUkNQVT15CkNPTkZJ
R19RQ09NX0lSUV9DT01CSU5FUj15CkNPTkZJR19JUlFfVU5JUEhJRVJfQUlERVQ9eQpDT05GSUdf
TUVTT05fSVJRX0dQSU89eQpDT05GSUdfUUNPTV9QREM9eQpDT05GSUdfSU1YX0lSUVNURUVSPXkK
Q09ORklHX0lNWF9JTlRNVVg9eQpDT05GSUdfVElfU0NJX0lOVFJfSVJRQ0hJUD15CkNPTkZJR19U
SV9TQ0lfSU5UQV9JUlFDSElQPXkKQ09ORklHX01TVF9JUlE9eQpDT05GSUdfQVBQTEVfQUlDPXkK
IyBlbmQgb2YgSVJRIGNoaXAgc3VwcG9ydAoKIyBDT05GSUdfSVBBQ0tfQlVTIGlzIG5vdCBzZXQK
Q09ORklHX0FSQ0hfSEFTX1JFU0VUX0NPTlRST0xMRVI9eQpDT05GSUdfUkVTRVRfQ09OVFJPTExF
Uj15CkNPTkZJR19SRVNFVF9CRVJMSU49bQpDT05GSUdfUkVTRVRfQlJDTVNUQj15CkNPTkZJR19S
RVNFVF9CUkNNU1RCX1JFU0NBTD15CkNPTkZJR19SRVNFVF9JTVg3PXkKQ09ORklHX1JFU0VUX01F
U09OPXkKQ09ORklHX1JFU0VUX01FU09OX0FVRElPX0FSQj1tCkNPTkZJR19SRVNFVF9RQ09NX0FP
U1M9eQpDT05GSUdfUkVTRVRfUUNPTV9QREM9bQpDT05GSUdfUkVTRVRfUkFTUEJFUlJZUEk9bQoj
IENPTkZJR19SRVNFVF9SWkcyTF9VU0JQSFlfQ1RSTCBpcyBub3Qgc2V0CkNPTkZJR19SRVNFVF9T
Q01JPXkKQ09ORklHX1JFU0VUX1NJTVBMRT15CkNPTkZJR19SRVNFVF9TVU5YST15CkNPTkZJR19S
RVNFVF9USV9TQ0k9eQojIENPTkZJR19SRVNFVF9USV9TWVNDT04gaXMgbm90IHNldApDT05GSUdf
UkVTRVRfVU5JUEhJRVI9eQpDT05GSUdfUkVTRVRfVU5JUEhJRVJfR0xVRT15CkNPTkZJR19DT01N
T05fUkVTRVRfSEkzNjYwPXkKQ09ORklHX0NPTU1PTl9SRVNFVF9ISTYyMjA9eQpDT05GSUdfUkVT
RVRfVEVHUkFfQlBNUD15CgojCiMgUEhZIFN1YnN5c3RlbQojCkNPTkZJR19HRU5FUklDX1BIWT15
CkNPTkZJR19HRU5FUklDX1BIWV9NSVBJX0RQSFk9eQpDT05GSUdfUEhZX1hHRU5FPXkKIyBDT05G
SUdfUEhZX0NBTl9UUkFOU0NFSVZFUiBpcyBub3Qgc2V0CkNPTkZJR19QSFlfU1VONElfVVNCPXkK
Q09ORklHX1BIWV9TVU42SV9NSVBJX0RQSFk9bQojIENPTkZJR19QSFlfU1VOOUlfVVNCIGlzIG5v
dCBzZXQKIyBDT05GSUdfUEhZX1NVTjUwSV9VU0IzIGlzIG5vdCBzZXQKQ09ORklHX1BIWV9NRVNP
TjhCX1VTQjI9eQpDT05GSUdfUEhZX01FU09OX0dYTF9VU0IyPXkKQ09ORklHX1BIWV9NRVNPTl9H
MTJBX1VTQjI9eQpDT05GSUdfUEhZX01FU09OX0cxMkFfVVNCM19QQ0lFPXkKQ09ORklHX1BIWV9N
RVNPTl9BWEdfUENJRT15CkNPTkZJR19QSFlfTUVTT05fQVhHX01JUElfUENJRV9BTkFMT0c9eQpD
T05GSUdfUEhZX01FU09OX0FYR19NSVBJX0RQSFk9eQpDT05GSUdfUEhZX0JDTV9TUl9VU0I9eQoj
IENPTkZJR19CQ01fS09OQV9VU0IyX1BIWSBpcyBub3Qgc2V0CiMgQ09ORklHX1BIWV9CQ01fTlNf
VVNCMiBpcyBub3Qgc2V0CiMgQ09ORklHX1BIWV9CQ01fTlNfVVNCMyBpcyBub3Qgc2V0CkNPTkZJ
R19QSFlfTlMyX1BDSUU9eQpDT05GSUdfUEhZX05TMl9VU0JfRFJEPXkKQ09ORklHX1BIWV9CUkNN
X1NBVEE9eQpDT05GSUdfUEhZX0JSQ01fVVNCPXkKQ09ORklHX1BIWV9CQ01fU1JfUENJRT15CiMg
Q09ORklHX1BIWV9DQURFTkNFX1RPUlJFTlQgaXMgbm90IHNldAojIENPTkZJR19QSFlfQ0FERU5D
RV9EUEhZIGlzIG5vdCBzZXQKIyBDT05GSUdfUEhZX0NBREVOQ0VfU0lFUlJBIGlzIG5vdCBzZXQK
IyBDT05GSUdfUEhZX0NBREVOQ0VfU0FMVk8gaXMgbm90IHNldApDT05GSUdfUEhZX0ZTTF9JTVg4
TVFfVVNCPXkKQ09ORklHX1BIWV9NSVhFTF9NSVBJX0RQSFk9bQpDT05GSUdfUEhZX0hJNjIyMF9V
U0I9eQojIENPTkZJR19QSFlfSEkzNjYwX1VTQiBpcyBub3Qgc2V0CiMgQ09ORklHX1BIWV9ISTM2
NzBfVVNCIGlzIG5vdCBzZXQKQ09ORklHX1BIWV9ISVNUQl9DT01CUEhZPXkKQ09ORklHX1BIWV9I
SVNJX0lOTk9fVVNCMj15CiMgQ09ORklHX1BIWV9CRVJMSU5fU0FUQSBpcyBub3Qgc2V0CiMgQ09O
RklHX1BIWV9CRVJMSU5fVVNCIGlzIG5vdCBzZXQKQ09ORklHX1BIWV9NVkVCVV9BMzcwMF9DT01Q
SFk9eQpDT05GSUdfUEhZX01WRUJVX0EzNzAwX1VUTUk9eQojIENPTkZJR19QSFlfTVZFQlVfQTM4
WF9DT01QSFkgaXMgbm90IHNldApDT05GSUdfUEhZX01WRUJVX0NQMTEwX0NPTVBIWT15CiMgQ09O
RklHX1BIWV9NVkVCVV9DUDExMF9VVE1JIGlzIG5vdCBzZXQKIyBDT05GSUdfUEhZX1BYQV8yOE5N
X0hTSUMgaXMgbm90IHNldAojIENPTkZJR19QSFlfUFhBXzI4Tk1fVVNCMiBpcyBub3Qgc2V0CkNP
TkZJR19QSFlfTVRLX1RQSFk9eQojIENPTkZJR19QSFlfTVRLX1VGUyBpcyBub3Qgc2V0CiMgQ09O
RklHX1BIWV9NVEtfWFNQSFkgaXMgbm90IHNldApDT05GSUdfUEhZX01US19IRE1JPW0KQ09ORklH
X1BIWV9NVEtfTUlQSV9EU0k9bQojIENPTkZJR19QSFlfQ1BDQVBfVVNCIGlzIG5vdCBzZXQKIyBD
T05GSUdfUEhZX01BUFBIT05FX01ETTY2MDAgaXMgbm90IHNldAojIENPTkZJR19QSFlfT0NFTE9U
X1NFUkRFUyBpcyBub3Qgc2V0CiMgQ09ORklHX1BIWV9RQ09NX0FQUTgwNjRfU0FUQSBpcyBub3Qg
c2V0CiMgQ09ORklHX1BIWV9RQ09NX0lQUTQwMTlfVVNCIGlzIG5vdCBzZXQKIyBDT05GSUdfUEhZ
X1FDT01fSVBRODA2WF9TQVRBIGlzIG5vdCBzZXQKIyBDT05GSUdfUEhZX1FDT01fUENJRTIgaXMg
bm90IHNldApDT05GSUdfUEhZX1FDT01fUU1QPW0KQ09ORklHX1BIWV9RQ09NX1FVU0IyPW0KQ09O
RklHX1BIWV9RQ09NX1VTQl9IUz15CkNPTkZJR19QSFlfUUNPTV9VU0JfU05QU19GRU1UT19WMj15
CiMgQ09ORklHX1BIWV9RQ09NX1VTQl9IU0lDIGlzIG5vdCBzZXQKIyBDT05GSUdfUEhZX1FDT01f
VVNCX0hTXzI4Tk0gaXMgbm90IHNldAojIENPTkZJR19QSFlfUUNPTV9VU0JfU1MgaXMgbm90IHNl
dAojIENPTkZJR19QSFlfUUNPTV9JUFE4MDZYX1VTQiBpcyBub3Qgc2V0CiMgQ09ORklHX1BIWV9S
Q0FSX0dFTjIgaXMgbm90IHNldApDT05GSUdfUEhZX1JDQVJfR0VOM19QQ0lFPXkKQ09ORklHX1BI
WV9SQ0FSX0dFTjNfVVNCMj15CkNPTkZJR19QSFlfUkNBUl9HRU4zX1VTQjM9bQojIENPTkZJR19Q
SFlfUk9DS0NISVBfRFAgaXMgbm90IHNldAojIENPTkZJR19QSFlfUk9DS0NISVBfRFBIWV9SWDAg
aXMgbm90IHNldApDT05GSUdfUEhZX1JPQ0tDSElQX0VNTUM9eQpDT05GSUdfUEhZX1JPQ0tDSElQ
X0lOTk9fSERNST1tCkNPTkZJR19QSFlfUk9DS0NISVBfSU5OT19VU0IyPXkKIyBDT05GSUdfUEhZ
X1JPQ0tDSElQX0lOTk9fQ1NJRFBIWSBpcyBub3Qgc2V0CkNPTkZJR19QSFlfUk9DS0NISVBfSU5O
T19EU0lEUEhZPW0KQ09ORklHX1BIWV9ST0NLQ0hJUF9QQ0lFPW0KQ09ORklHX1BIWV9ST0NLQ0hJ
UF9UWVBFQz15CiMgQ09ORklHX1BIWV9ST0NLQ0hJUF9VU0IgaXMgbm90IHNldApDT05GSUdfUEhZ
X0VYWU5PU19EUF9WSURFTz15CkNPTkZJR19QSFlfRVhZTk9TX01JUElfVklERU89eQojIENPTkZJ
R19QSFlfRVhZTk9TX1BDSUUgaXMgbm90IHNldApDT05GSUdfUEhZX1NBTVNVTkdfVUZTPXkKQ09O
RklHX1BIWV9TQU1TVU5HX1VTQjI9eQpDT05GSUdfUEhZX0VYWU5PUzVfVVNCRFJEPXkKQ09ORklH
X1BIWV9VTklQSElFUl9VU0IyPXkKQ09ORklHX1BIWV9VTklQSElFUl9VU0IzPXkKIyBDT05GSUdf
UEhZX1VOSVBISUVSX1BDSUUgaXMgbm90IHNldApDT05GSUdfUEhZX1VOSVBISUVSX0FIQ0k9eQpD
T05GSUdfUEhZX1RFR1JBX1hVU0I9eQpDT05GSUdfUEhZX1RFR1JBMTk0X1AyVT1tCiMgQ09ORklH
X1BIWV9BTTY1NF9TRVJERVMgaXMgbm90IHNldAojIENPTkZJR19QSFlfSjcyMUVfV0laIGlzIG5v
dCBzZXQKIyBDT05GSUdfT01BUF9VU0IyIGlzIG5vdCBzZXQKIyBDT05GSUdfUEhZX1RVU0IxMjEw
IGlzIG5vdCBzZXQKQ09ORklHX1BIWV9USV9HTUlJX1NFTD15CiMgQ09ORklHX1BIWV9JTlRFTF9L
RUVNQkFZX0VNTUMgaXMgbm90IHNldAojIENPTkZJR19QSFlfSU5URUxfS0VFTUJBWV9VU0IgaXMg
bm90IHNldAojIENPTkZJR19QSFlfWElMSU5YX1pZTlFNUCBpcyBub3Qgc2V0CiMgZW5kIG9mIFBI
WSBTdWJzeXN0ZW0KCiMgQ09ORklHX1BPV0VSQ0FQIGlzIG5vdCBzZXQKIyBDT05GSUdfTUNCIGlz
IG5vdCBzZXQKCiMKIyBQZXJmb3JtYW5jZSBtb25pdG9yIHN1cHBvcnQKIwojIENPTkZJR19BUk1f
Q0NJX1BNVSBpcyBub3Qgc2V0CiMgQ09ORklHX0FSTV9DQ04gaXMgbm90IHNldAojIENPTkZJR19B
Uk1fQ01OIGlzIG5vdCBzZXQKQ09ORklHX0FSTV9QTVU9eQpDT05GSUdfQVJNX1BNVV9BQ1BJPXkK
Q09ORklHX0FSTV9TTU1VX1YzX1BNVT1tCiMgQ09ORklHX0FSTV9EU1VfUE1VIGlzIG5vdCBzZXQK
Q09ORklHX0ZTTF9JTVg4X0REUl9QTVU9bQpDT05GSUdfUUNPTV9MMl9QTVU9eQpDT05GSUdfUUNP
TV9MM19QTVU9eQpDT05GSUdfVEhVTkRFUlgyX1BNVT1tCiMgQ09ORklHX1hHRU5FX1BNVSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0FSTV9TUEVfUE1VIGlzIG5vdCBzZXQKIyBDT05GSUdfQVJNX0RNQzYy
MF9QTVUgaXMgbm90IHNldApDT05GSUdfSElTSV9QTVU9eQojIGVuZCBvZiBQZXJmb3JtYW5jZSBt
b25pdG9yIHN1cHBvcnQKCkNPTkZJR19SQVM9eQojIENPTkZJR19VU0I0IGlzIG5vdCBzZXQKCiMK
IyBBbmRyb2lkCiMKIyBDT05GSUdfQU5EUk9JRCBpcyBub3Qgc2V0CiMgZW5kIG9mIEFuZHJvaWQK
CiMgQ09ORklHX0xJQk5WRElNTSBpcyBub3Qgc2V0CiMgQ09ORklHX0RBWCBpcyBub3Qgc2V0CkNP
TkZJR19OVk1FTT15CkNPTkZJR19OVk1FTV9TWVNGUz15CiMgQ09ORklHX05WTUVNX0lNWF9JSU0g
aXMgbm90IHNldApDT05GSUdfTlZNRU1fSU1YX09DT1RQPXkKQ09ORklHX05WTUVNX0lNWF9PQ09U
UF9TQ1U9eQpDT05GSUdfTVRLX0VGVVNFPXkKQ09ORklHX1FDT01fUUZQUk9NPXkKIyBDT05GSUdf
TlZNRU1fU1BNSV9TREFNIGlzIG5vdCBzZXQKQ09ORklHX1JPQ0tDSElQX0VGVVNFPXkKIyBDT05G
SUdfUk9DS0NISVBfT1RQIGlzIG5vdCBzZXQKQ09ORklHX05WTUVNX0JDTV9PQ09UUD15CkNPTkZJ
R19OVk1FTV9TVU5YSV9TSUQ9eQpDT05GSUdfVU5JUEhJRVJfRUZVU0U9eQpDT05GSUdfTUVTT05f
RUZVU0U9bQojIENPTkZJR19NRVNPTl9NWF9FRlVTRSBpcyBub3Qgc2V0CiMgQ09ORklHX05WTUVN
X1NOVlNfTFBHUFIgaXMgbm90IHNldAojIENPTkZJR19OVk1FTV9aWU5RTVAgaXMgbm90IHNldAoj
IENPTkZJR19TUFJEX0VGVVNFIGlzIG5vdCBzZXQKQ09ORklHX05WTUVNX1JNRU09bQoKIwojIEhX
IHRyYWNpbmcgc3VwcG9ydAojCiMgQ09ORklHX1NUTSBpcyBub3Qgc2V0CiMgQ09ORklHX0lOVEVM
X1RIIGlzIG5vdCBzZXQKIyBlbmQgb2YgSFcgdHJhY2luZyBzdXBwb3J0CgpDT05GSUdfRlBHQT15
CiMgQ09ORklHX0ZQR0FfTUdSX1NPQ0ZQR0EgaXMgbm90IHNldAojIENPTkZJR19GUEdBX01HUl9T
T0NGUEdBX0ExMCBpcyBub3Qgc2V0CiMgQ09ORklHX0FMVEVSQV9QUl9JUF9DT1JFIGlzIG5vdCBz
ZXQKIyBDT05GSUdfRlBHQV9NR1JfQUxURVJBX1BTX1NQSSBpcyBub3Qgc2V0CiMgQ09ORklHX0ZQ
R0FfTUdSX0FMVEVSQV9DVlAgaXMgbm90IHNldApDT05GSUdfRlBHQV9NR1JfU1RSQVRJWDEwX1NP
Qz1tCiMgQ09ORklHX0ZQR0FfTUdSX1hJTElOWF9TUEkgaXMgbm90IHNldAojIENPTkZJR19GUEdB
X01HUl9JQ0U0MF9TUEkgaXMgbm90IHNldAojIENPTkZJR19GUEdBX01HUl9NQUNIWE8yX1NQSSBp
cyBub3Qgc2V0CkNPTkZJR19GUEdBX0JSSURHRT1tCiMgQ09ORklHX1NPQ0ZQR0FfRlBHQV9CUklE
R0UgaXMgbm90IHNldApDT05GSUdfQUxURVJBX0ZSRUVaRV9CUklER0U9bQojIENPTkZJR19YSUxJ
TlhfUFJfREVDT1VQTEVSIGlzIG5vdCBzZXQKQ09ORklHX0ZQR0FfUkVHSU9OPW0KQ09ORklHX09G
X0ZQR0FfUkVHSU9OPW0KIyBDT05GSUdfRlBHQV9ERkwgaXMgbm90IHNldAojIENPTkZJR19GUEdB
X01HUl9aWU5RTVBfRlBHQSBpcyBub3Qgc2V0CiMgQ09ORklHX0ZQR0FfTUdSX1ZFUlNBTF9GUEdB
IGlzIG5vdCBzZXQKIyBDT05GSUdfRlNJIGlzIG5vdCBzZXQKQ09ORklHX1RFRT15CgojCiMgVEVF
IGRyaXZlcnMKIwpDT05GSUdfT1BURUU9eQpDT05GSUdfT1BURUVfU0hNX05VTV9QUklWX1BBR0VT
PTEKIyBlbmQgb2YgVEVFIGRyaXZlcnMKCkNPTkZJR19NVUxUSVBMRVhFUj15CgojCiMgTXVsdGlw
bGV4ZXIgZHJpdmVycwojCiMgQ09ORklHX01VWF9BREc3OTJBIGlzIG5vdCBzZXQKIyBDT05GSUdf
TVVYX0FER1MxNDA4IGlzIG5vdCBzZXQKIyBDT05GSUdfTVVYX0dQSU8gaXMgbm90IHNldApDT05G
SUdfTVVYX01NSU89eQojIGVuZCBvZiBNdWx0aXBsZXhlciBkcml2ZXJzCgpDT05GSUdfUE1fT1BQ
PXkKIyBDT05GSUdfU0lPWCBpcyBub3Qgc2V0CkNPTkZJR19TTElNQlVTPW0KQ09ORklHX1NMSU1f
UUNPTV9DVFJMPW0KQ09ORklHX1NMSU1fUUNPTV9OR0RfQ1RSTD1tCkNPTkZJR19JTlRFUkNPTk5F
Q1Q9eQpDT05GSUdfSU5URVJDT05ORUNUX0lNWD1tCiMgQ09ORklHX0lOVEVSQ09OTkVDVF9JTVg4
TU0gaXMgbm90IHNldAojIENPTkZJR19JTlRFUkNPTk5FQ1RfSU1YOE1OIGlzIG5vdCBzZXQKQ09O
RklHX0lOVEVSQ09OTkVDVF9JTVg4TVE9bQpDT05GSUdfSU5URVJDT05ORUNUX1FDT009eQpDT05G
SUdfSU5URVJDT05ORUNUX1FDT01fQkNNX1ZPVEVSPXkKQ09ORklHX0lOVEVSQ09OTkVDVF9RQ09N
X01TTTg5MTY9bQojIENPTkZJR19JTlRFUkNPTk5FQ1RfUUNPTV9NU004OTM5IGlzIG5vdCBzZXQK
IyBDT05GSUdfSU5URVJDT05ORUNUX1FDT01fTVNNODk3NCBpcyBub3Qgc2V0CkNPTkZJR19JTlRF
UkNPTk5FQ1RfUUNPTV9PU01fTDM9bQojIENPTkZJR19JTlRFUkNPTk5FQ1RfUUNPTV9RQ1M0MDQg
aXMgbm90IHNldApDT05GSUdfSU5URVJDT05ORUNUX1FDT01fUlBNSF9QT1NTSUJMRT15CkNPTkZJ
R19JTlRFUkNPTk5FQ1RfUUNPTV9SUE1IPXkKIyBDT05GSUdfSU5URVJDT05ORUNUX1FDT01fU0M3
MTgwIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5URVJDT05ORUNUX1FDT01fU0M3MjgwIGlzIG5vdCBz
ZXQKIyBDT05GSUdfSU5URVJDT05ORUNUX1FDT01fU0M4MTgwWCBpcyBub3Qgc2V0CiMgQ09ORklH
X0lOVEVSQ09OTkVDVF9RQ09NX1NETTY2MCBpcyBub3Qgc2V0CkNPTkZJR19JTlRFUkNPTk5FQ1Rf
UUNPTV9TRE04NDU9eQojIENPTkZJR19JTlRFUkNPTk5FQ1RfUUNPTV9TRFg1NSBpcyBub3Qgc2V0
CkNPTkZJR19JTlRFUkNPTk5FQ1RfUUNPTV9TTTgxNTA9bQpDT05GSUdfSU5URVJDT05ORUNUX1FD
T01fU004MjUwPW0KQ09ORklHX0lOVEVSQ09OTkVDVF9RQ09NX1NNODM1MD1tCkNPTkZJR19JTlRF
UkNPTk5FQ1RfUUNPTV9TTURfUlBNPW0KIyBDT05GSUdfSU5URVJDT05ORUNUX1NBTVNVTkcgaXMg
bm90IHNldAojIENPTkZJR19DT1VOVEVSIGlzIG5vdCBzZXQKIyBDT05GSUdfTU9TVCBpcyBub3Qg
c2V0CiMgZW5kIG9mIERldmljZSBEcml2ZXJzCgojCiMgRmlsZSBzeXN0ZW1zCiMKQ09ORklHX0RD
QUNIRV9XT1JEX0FDQ0VTUz15CiMgQ09ORklHX1ZBTElEQVRFX0ZTX1BBUlNFUiBpcyBub3Qgc2V0
CkNPTkZJR19GU19JT01BUD15CkNPTkZJR19FWFQyX0ZTPXkKIyBDT05GSUdfRVhUMl9GU19YQVRU
UiBpcyBub3Qgc2V0CkNPTkZJR19FWFQzX0ZTPXkKIyBDT05GSUdfRVhUM19GU19QT1NJWF9BQ0wg
aXMgbm90IHNldAojIENPTkZJR19FWFQzX0ZTX1NFQ1VSSVRZIGlzIG5vdCBzZXQKQ09ORklHX0VY
VDRfRlM9eQpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eQpDT05GSUdfRVhUNF9GU19TRUNVUklU
WT15CiMgQ09ORklHX0VYVDRfREVCVUcgaXMgbm90IHNldApDT05GSUdfSkJEMj15CiMgQ09ORklH
X0pCRDJfREVCVUcgaXMgbm90IHNldApDT05GSUdfRlNfTUJDQUNIRT15CiMgQ09ORklHX1JFSVNF
UkZTX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfSkZTX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfWEZT
X0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfR0ZTMl9GUyBpcyBub3Qgc2V0CiMgQ09ORklHX09DRlMy
X0ZTIGlzIG5vdCBzZXQKQ09ORklHX0JUUkZTX0ZTPXkKQ09ORklHX0JUUkZTX0ZTX1BPU0lYX0FD
TD15CiMgQ09ORklHX0JUUkZTX0ZTX0NIRUNLX0lOVEVHUklUWSBpcyBub3Qgc2V0CiMgQ09ORklH
X0JUUkZTX0ZTX1JVTl9TQU5JVFlfVEVTVFMgaXMgbm90IHNldAojIENPTkZJR19CVFJGU19ERUJV
RyBpcyBub3Qgc2V0CiMgQ09ORklHX0JUUkZTX0FTU0VSVCBpcyBub3Qgc2V0CiMgQ09ORklHX0JU
UkZTX0ZTX1JFRl9WRVJJRlkgaXMgbm90IHNldAojIENPTkZJR19OSUxGUzJfRlMgaXMgbm90IHNl
dAojIENPTkZJR19GMkZTX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfRlNfREFYIGlzIG5vdCBzZXQK
Q09ORklHX0ZTX1BPU0lYX0FDTD15CkNPTkZJR19FWFBPUlRGUz15CiMgQ09ORklHX0VYUE9SVEZT
X0JMT0NLX09QUyBpcyBub3Qgc2V0CkNPTkZJR19GSUxFX0xPQ0tJTkc9eQpDT05GSUdfRlNfRU5D
UllQVElPTj15CkNPTkZJR19GU19FTkNSWVBUSU9OX0FMR1M9eQojIENPTkZJR19GU19WRVJJVFkg
aXMgbm90IHNldApDT05GSUdfRlNOT1RJRlk9eQpDT05GSUdfRE5PVElGWT15CkNPTkZJR19JTk9U
SUZZX1VTRVI9eQpDT05GSUdfRkFOT1RJRlk9eQpDT05GSUdfRkFOT1RJRllfQUNDRVNTX1BFUk1J
U1NJT05TPXkKIyBDT05GSUdfUVVPVEEgaXMgbm90IHNldApDT05GSUdfQVVUT0ZTNF9GUz15CkNP
TkZJR19BVVRPRlNfRlM9eQpDT05GSUdfRlVTRV9GUz1tCkNPTkZJR19DVVNFPW0KIyBDT05GSUdf
VklSVElPX0ZTIGlzIG5vdCBzZXQKQ09ORklHX09WRVJMQVlfRlM9eQojIENPTkZJR19PVkVSTEFZ
X0ZTX1JFRElSRUNUX0RJUiBpcyBub3Qgc2V0CkNPTkZJR19PVkVSTEFZX0ZTX1JFRElSRUNUX0FM
V0FZU19GT0xMT1c9eQojIENPTkZJR19PVkVSTEFZX0ZTX0lOREVYIGlzIG5vdCBzZXQKIyBDT05G
SUdfT1ZFUkxBWV9GU19YSU5PX0FVVE8gaXMgbm90IHNldAojIENPTkZJR19PVkVSTEFZX0ZTX01F
VEFDT1BZIGlzIG5vdCBzZXQKCiMKIyBDYWNoZXMKIwojIENPTkZJR19GU0NBQ0hFIGlzIG5vdCBz
ZXQKIyBlbmQgb2YgQ2FjaGVzCgojCiMgQ0QtUk9NL0RWRCBGaWxlc3lzdGVtcwojCiMgQ09ORklH
X0lTTzk2NjBfRlMgaXMgbm90IHNldAojIENPTkZJR19VREZfRlMgaXMgbm90IHNldAojIGVuZCBv
ZiBDRC1ST00vRFZEIEZpbGVzeXN0ZW1zCgojCiMgRE9TL0ZBVC9FWEZBVC9OVCBGaWxlc3lzdGVt
cwojCkNPTkZJR19GQVRfRlM9eQojIENPTkZJR19NU0RPU19GUyBpcyBub3Qgc2V0CkNPTkZJR19W
RkFUX0ZTPXkKIyBDT05GSUdfVkZBVF9GU19OT19EVUFMTkFNRVMgaXMgbm90IHNldApDT05GSUdf
RkFUX0RFRkFVTFRfQ09ERVBBR0U9NDM3CkNPTkZJR19GQVRfREVGQVVMVF9JT0NIQVJTRVQ9Imlz
bzg4NTktMSIKIyBDT05GSUdfVkZBVF9OT19DUkVBVEVfV0lUSF9MT05HTkFNRVMgaXMgbm90IHNl
dAojIENPTkZJR19GQVRfREVGQVVMVF9VVEY4IGlzIG5vdCBzZXQKIyBDT05GSUdfRVhGQVRfRlMg
aXMgbm90IHNldAojIENPTkZJR19OVEZTX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfTlRGUzNfRlMg
aXMgbm90IHNldAojIGVuZCBvZiBET1MvRkFUL0VYRkFUL05UIEZpbGVzeXN0ZW1zCgojCiMgUHNl
dWRvIGZpbGVzeXN0ZW1zCiMKQ09ORklHX1BST0NfRlM9eQpDT05GSUdfUFJPQ19LQ09SRT15CkNP
TkZJR19QUk9DX1ZNQ09SRT15CiMgQ09ORklHX1BST0NfVk1DT1JFX0RFVklDRV9EVU1QIGlzIG5v
dCBzZXQKQ09ORklHX1BST0NfU1lTQ1RMPXkKQ09ORklHX1BST0NfUEFHRV9NT05JVE9SPXkKQ09O
RklHX1BST0NfQ0hJTERSRU49eQpDT05GSUdfS0VSTkZTPXkKQ09ORklHX1NZU0ZTPXkKQ09ORklH
X1RNUEZTPXkKQ09ORklHX1RNUEZTX1BPU0lYX0FDTD15CkNPTkZJR19UTVBGU19YQVRUUj15CiMg
Q09ORklHX1RNUEZTX0lOT0RFNjQgaXMgbm90IHNldApDT05GSUdfQVJDSF9TVVBQT1JUU19IVUdF
VExCRlM9eQpDT05GSUdfSFVHRVRMQkZTPXkKQ09ORklHX0hVR0VUTEJfUEFHRT15CkNPTkZJR19N
RU1GRF9DUkVBVEU9eQpDT05GSUdfQVJDSF9IQVNfR0lHQU5USUNfUEFHRT15CkNPTkZJR19DT05G
SUdGU19GUz15CkNPTkZJR19FRklWQVJfRlM9eQojIGVuZCBvZiBQc2V1ZG8gZmlsZXN5c3RlbXMK
CkNPTkZJR19NSVNDX0ZJTEVTWVNURU1TPXkKIyBDT05GSUdfT1JBTkdFRlNfRlMgaXMgbm90IHNl
dAojIENPTkZJR19BREZTX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfQUZGU19GUyBpcyBub3Qgc2V0
CiMgQ09ORklHX0VDUllQVF9GUyBpcyBub3Qgc2V0CiMgQ09ORklHX0hGU19GUyBpcyBub3Qgc2V0
CiMgQ09ORklHX0hGU1BMVVNfRlMgaXMgbm90IHNldAojIENPTkZJR19CRUZTX0ZTIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQkZTX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfRUZTX0ZTIGlzIG5vdCBzZXQK
IyBDT05GSUdfWUFGRlNfRlMgaXMgbm90IHNldAojIENPTkZJR19KRkZTMl9GUyBpcyBub3Qgc2V0
CiMgQ09ORklHX0NSQU1GUyBpcyBub3Qgc2V0CkNPTkZJR19TUVVBU0hGUz15CkNPTkZJR19TUVVB
U0hGU19GSUxFX0NBQ0hFPXkKIyBDT05GSUdfU1FVQVNIRlNfRklMRV9ESVJFQ1QgaXMgbm90IHNl
dApDT05GSUdfU1FVQVNIRlNfREVDT01QX1NJTkdMRT15CiMgQ09ORklHX1NRVUFTSEZTX0RFQ09N
UF9NVUxUSSBpcyBub3Qgc2V0CiMgQ09ORklHX1NRVUFTSEZTX0RFQ09NUF9NVUxUSV9QRVJDUFUg
aXMgbm90IHNldAojIENPTkZJR19TUVVBU0hGU19YQVRUUiBpcyBub3Qgc2V0CkNPTkZJR19TUVVB
U0hGU19aTElCPXkKIyBDT05GSUdfU1FVQVNIRlNfTFo0IGlzIG5vdCBzZXQKIyBDT05GSUdfU1FV
QVNIRlNfTFpPIGlzIG5vdCBzZXQKIyBDT05GSUdfU1FVQVNIRlNfWFogaXMgbm90IHNldAojIENP
TkZJR19TUVVBU0hGU19aU1REIGlzIG5vdCBzZXQKIyBDT05GSUdfU1FVQVNIRlNfNEtfREVWQkxL
X1NJWkUgaXMgbm90IHNldAojIENPTkZJR19TUVVBU0hGU19FTUJFRERFRCBpcyBub3Qgc2V0CkNP
TkZJR19TUVVBU0hGU19GUkFHTUVOVF9DQUNIRV9TSVpFPTMKIyBDT05GSUdfVlhGU19GUyBpcyBu
b3Qgc2V0CiMgQ09ORklHX01JTklYX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfT01GU19GUyBpcyBu
b3Qgc2V0CiMgQ09ORklHX0hQRlNfRlMgaXMgbm90IHNldAojIENPTkZJR19RTlg0RlNfRlMgaXMg
bm90IHNldAojIENPTkZJR19RTlg2RlNfRlMgaXMgbm90IHNldApDT05GSUdfUk9NRlNfRlM9bQpD
T05GSUdfUk9NRlNfQkFDS0VEX0JZX0JMT0NLPXkKIyBDT05GSUdfUk9NRlNfQkFDS0VEX0JZX01U
RCBpcyBub3Qgc2V0CiMgQ09ORklHX1JPTUZTX0JBQ0tFRF9CWV9CT1RIIGlzIG5vdCBzZXQKQ09O
RklHX1JPTUZTX09OX0JMT0NLPXkKQ09ORklHX1BTVE9SRT15CkNPTkZJR19QU1RPUkVfREVGQVVM
VF9LTVNHX0JZVEVTPTEwMjQwCkNPTkZJR19QU1RPUkVfREVGTEFURV9DT01QUkVTUz15CiMgQ09O
RklHX1BTVE9SRV9MWk9fQ09NUFJFU1MgaXMgbm90IHNldAojIENPTkZJR19QU1RPUkVfTFo0X0NP
TVBSRVNTIGlzIG5vdCBzZXQKIyBDT05GSUdfUFNUT1JFX0xaNEhDX0NPTVBSRVNTIGlzIG5vdCBz
ZXQKIyBDT05GSUdfUFNUT1JFXzg0Ml9DT01QUkVTUyBpcyBub3Qgc2V0CiMgQ09ORklHX1BTVE9S
RV9aU1REX0NPTVBSRVNTIGlzIG5vdCBzZXQKQ09ORklHX1BTVE9SRV9DT01QUkVTUz15CkNPTkZJ
R19QU1RPUkVfREVGTEFURV9DT01QUkVTU19ERUZBVUxUPXkKQ09ORklHX1BTVE9SRV9DT01QUkVT
U19ERUZBVUxUPSJkZWZsYXRlIgojIENPTkZJR19QU1RPUkVfQ09OU09MRSBpcyBub3Qgc2V0CiMg
Q09ORklHX1BTVE9SRV9QTVNHIGlzIG5vdCBzZXQKIyBDT05GSUdfUFNUT1JFX0ZUUkFDRSBpcyBu
b3Qgc2V0CiMgQ09ORklHX1BTVE9SRV9SQU0gaXMgbm90IHNldAojIENPTkZJR19QU1RPUkVfQkxL
IGlzIG5vdCBzZXQKIyBDT05GSUdfU1lTVl9GUyBpcyBub3Qgc2V0CiMgQ09ORklHX1VGU19GUyBp
cyBub3Qgc2V0CiMgQ09ORklHX0VST0ZTX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfQVVGU19GUyBp
cyBub3Qgc2V0CkNPTkZJR19ORVRXT1JLX0ZJTEVTWVNURU1TPXkKQ09ORklHX05GU19GUz15CkNP
TkZJR19ORlNfVjI9eQpDT05GSUdfTkZTX0RFRl9GSUxFX0lPX1NJWkU9NDA5NgpDT05GSUdfTkZT
X1YzPXkKIyBDT05GSUdfTkZTX1YzX0FDTCBpcyBub3Qgc2V0CkNPTkZJR19ORlNfVjQ9eQojIENP
TkZJR19ORlNfU1dBUCBpcyBub3Qgc2V0CkNPTkZJR19ORlNfVjRfMT15CkNPTkZJR19ORlNfVjRf
Mj15CkNPTkZJR19QTkZTX0ZJTEVfTEFZT1VUPXkKQ09ORklHX1BORlNfQkxPQ0s9eQpDT05GSUdf
UE5GU19GTEVYRklMRV9MQVlPVVQ9eQpDT05GSUdfTkZTX1Y0XzFfSU1QTEVNRU5UQVRJT05fSURf
RE9NQUlOPSJrZXJuZWwub3JnIgojIENPTkZJR19ORlNfVjRfMV9NSUdSQVRJT04gaXMgbm90IHNl
dApDT05GSUdfTkZTX1Y0X1NFQ1VSSVRZX0xBQkVMPXkKQ09ORklHX1JPT1RfTkZTPXkKIyBDT05G
SUdfTkZTX1VTRV9MRUdBQ1lfRE5TIGlzIG5vdCBzZXQKQ09ORklHX05GU19VU0VfS0VSTkVMX0RO
Uz15CiMgQ09ORklHX05GU19ESVNBQkxFX1VEUF9TVVBQT1JUIGlzIG5vdCBzZXQKIyBDT05GSUdf
TkZTX1Y0XzJfUkVBRF9QTFVTIGlzIG5vdCBzZXQKIyBDT05GSUdfTkZTRCBpcyBub3Qgc2V0CkNP
TkZJR19HUkFDRV9QRVJJT0Q9eQpDT05GSUdfTE9DS0Q9eQpDT05GSUdfTE9DS0RfVjQ9eQpDT05G
SUdfTkZTX0NPTU1PTj15CkNPTkZJR19ORlNfVjRfMl9TU0NfSEVMUEVSPXkKQ09ORklHX1NVTlJQ
Qz15CkNPTkZJR19TVU5SUENfR1NTPXkKQ09ORklHX1NVTlJQQ19CQUNLQ0hBTk5FTD15CkNPTkZJ
R19SUENTRUNfR1NTX0tSQjU9eQojIENPTkZJR19TVU5SUENfRElTQUJMRV9JTlNFQ1VSRV9FTkNU
WVBFUyBpcyBub3Qgc2V0CiMgQ09ORklHX1NVTlJQQ19ERUJVRyBpcyBub3Qgc2V0CiMgQ09ORklH
X0NFUEhfRlMgaXMgbm90IHNldApDT05GSUdfQ0lGUz15CkNPTkZJR19DSUZTX1NUQVRTMj15CkNP
TkZJR19DSUZTX0FMTE9XX0lOU0VDVVJFX0xFR0FDWT15CiMgQ09ORklHX0NJRlNfVVBDQUxMIGlz
IG5vdCBzZXQKQ09ORklHX0NJRlNfWEFUVFI9eQpDT05GSUdfQ0lGU19QT1NJWD15CkNPTkZJR19D
SUZTX0RFQlVHPXkKIyBDT05GSUdfQ0lGU19ERUJVRzIgaXMgbm90IHNldAojIENPTkZJR19DSUZT
X0RFQlVHX0RVTVBfS0VZUyBpcyBub3Qgc2V0CiMgQ09ORklHX0NJRlNfREZTX1VQQ0FMTCBpcyBu
b3Qgc2V0CiMgQ09ORklHX0NJRlNfU1dOX1VQQ0FMTCBpcyBub3Qgc2V0CiMgQ09ORklHX0NJRlNf
Uk9PVCBpcyBub3Qgc2V0CiMgQ09ORklHX1NNQl9TRVJWRVIgaXMgbm90IHNldApDT05GSUdfU01C
RlNfQ09NTU9OPXkKIyBDT05GSUdfQ09EQV9GUyBpcyBub3Qgc2V0CiMgQ09ORklHX0FGU19GUyBp
cyBub3Qgc2V0CkNPTkZJR185UF9GUz15CiMgQ09ORklHXzlQX0ZTX1BPU0lYX0FDTCBpcyBub3Qg
c2V0CiMgQ09ORklHXzlQX0ZTX1NFQ1VSSVRZIGlzIG5vdCBzZXQKQ09ORklHX05MUz15CkNPTkZJ
R19OTFNfREVGQVVMVD0iaXNvODg1OS0xIgpDT05GSUdfTkxTX0NPREVQQUdFXzQzNz15CkNPTkZJ
R19OTFNfQ09ERVBBR0VfNzM3PW0KQ09ORklHX05MU19DT0RFUEFHRV83NzU9bQpDT05GSUdfTkxT
X0NPREVQQUdFXzg1MD1tCkNPTkZJR19OTFNfQ09ERVBBR0VfODUyPW0KQ09ORklHX05MU19DT0RF
UEFHRV84NTU9bQpDT05GSUdfTkxTX0NPREVQQUdFXzg1Nz1tCkNPTkZJR19OTFNfQ09ERVBBR0Vf
ODYwPW0KQ09ORklHX05MU19DT0RFUEFHRV84NjE9bQpDT05GSUdfTkxTX0NPREVQQUdFXzg2Mj1t
CkNPTkZJR19OTFNfQ09ERVBBR0VfODYzPW0KQ09ORklHX05MU19DT0RFUEFHRV84NjQ9bQpDT05G
SUdfTkxTX0NPREVQQUdFXzg2NT1tCkNPTkZJR19OTFNfQ09ERVBBR0VfODY2PW0KQ09ORklHX05M
U19DT0RFUEFHRV84Njk9bQpDT05GSUdfTkxTX0NPREVQQUdFXzkzNj1tCkNPTkZJR19OTFNfQ09E
RVBBR0VfOTUwPW0KQ09ORklHX05MU19DT0RFUEFHRV85MzI9bQpDT05GSUdfTkxTX0NPREVQQUdF
Xzk0OT1tCkNPTkZJR19OTFNfQ09ERVBBR0VfODc0PW0KQ09ORklHX05MU19JU084ODU5Xzg9bQpD
T05GSUdfTkxTX0NPREVQQUdFXzEyNTA9bQpDT05GSUdfTkxTX0NPREVQQUdFXzEyNTE9bQpDT05G
SUdfTkxTX0FTQ0lJPW0KQ09ORklHX05MU19JU084ODU5XzE9eQpDT05GSUdfTkxTX0lTTzg4NTlf
Mj1tCkNPTkZJR19OTFNfSVNPODg1OV8zPW0KQ09ORklHX05MU19JU084ODU5XzQ9bQpDT05GSUdf
TkxTX0lTTzg4NTlfNT1tCkNPTkZJR19OTFNfSVNPODg1OV82PW0KQ09ORklHX05MU19JU084ODU5
Xzc9bQpDT05GSUdfTkxTX0lTTzg4NTlfOT1tCkNPTkZJR19OTFNfSVNPODg1OV8xMz1tCkNPTkZJ
R19OTFNfSVNPODg1OV8xND1tCkNPTkZJR19OTFNfSVNPODg1OV8xNT1tCkNPTkZJR19OTFNfS09J
OF9SPW0KQ09ORklHX05MU19LT0k4X1U9bQojIENPTkZJR19OTFNfTUFDX1JPTUFOIGlzIG5vdCBz
ZXQKIyBDT05GSUdfTkxTX01BQ19DRUxUSUMgaXMgbm90IHNldAojIENPTkZJR19OTFNfTUFDX0NF
TlRFVVJPIGlzIG5vdCBzZXQKIyBDT05GSUdfTkxTX01BQ19DUk9BVElBTiBpcyBub3Qgc2V0CiMg
Q09ORklHX05MU19NQUNfQ1lSSUxMSUMgaXMgbm90IHNldAojIENPTkZJR19OTFNfTUFDX0dBRUxJ
QyBpcyBub3Qgc2V0CiMgQ09ORklHX05MU19NQUNfR1JFRUsgaXMgbm90IHNldAojIENPTkZJR19O
TFNfTUFDX0lDRUxBTkQgaXMgbm90IHNldAojIENPTkZJR19OTFNfTUFDX0lOVUlUIGlzIG5vdCBz
ZXQKIyBDT05GSUdfTkxTX01BQ19ST01BTklBTiBpcyBub3Qgc2V0CiMgQ09ORklHX05MU19NQUNf
VFVSS0lTSCBpcyBub3Qgc2V0CkNPTkZJR19OTFNfVVRGOD1tCiMgQ09ORklHX0RMTSBpcyBub3Qg
c2V0CiMgQ09ORklHX1VOSUNPREUgaXMgbm90IHNldApDT05GSUdfSU9fV1E9eQojIGVuZCBvZiBG
aWxlIHN5c3RlbXMKCiMKIyBTZWN1cml0eSBvcHRpb25zCiMKQ09ORklHX0tFWVM9eQojIENPTkZJ
R19LRVlTX1JFUVVFU1RfQ0FDSEUgaXMgbm90IHNldAojIENPTkZJR19QRVJTSVNURU5UX0tFWVJJ
TkdTIGlzIG5vdCBzZXQKIyBDT05GSUdfVFJVU1RFRF9LRVlTIGlzIG5vdCBzZXQKQ09ORklHX0VO
Q1JZUFRFRF9LRVlTPXkKIyBDT05GSUdfS0VZX0RIX09QRVJBVElPTlMgaXMgbm90IHNldAojIENP
TkZJR19TRUNVUklUWV9ETUVTR19SRVNUUklDVCBpcyBub3Qgc2V0CkNPTkZJR19TRUNVUklUWT15
CkNPTkZJR19TRUNVUklUWUZTPXkKIyBDT05GSUdfU0VDVVJJVFlfTkVUV09SSyBpcyBub3Qgc2V0
CkNPTkZJR19TRUNVUklUWV9QQVRIPXkKQ09ORklHX0hBVkVfSEFSREVORURfVVNFUkNPUFlfQUxM
T0NBVE9SPXkKIyBDT05GSUdfSEFSREVORURfVVNFUkNPUFkgaXMgbm90IHNldAojIENPTkZJR19G
T1JUSUZZX1NPVVJDRSBpcyBub3Qgc2V0CiMgQ09ORklHX1NUQVRJQ19VU0VSTU9ERUhFTFBFUiBp
cyBub3Qgc2V0CiMgQ09ORklHX1NFQ1VSSVRZX1NNQUNLIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VD
VVJJVFlfVE9NT1lPIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VDVVJJVFlfQVBQQVJNT1IgaXMgbm90
IHNldAojIENPTkZJR19TRUNVUklUWV9MT0FEUElOIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VDVVJJ
VFlfWUFNQSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFQ1VSSVRZX1NBRkVTRVRJRCBpcyBub3Qgc2V0
CiMgQ09ORklHX1NFQ1VSSVRZX0xPQ0tET1dOX0xTTSBpcyBub3Qgc2V0CkNPTkZJR19TRUNVUklU
WV9MQU5ETE9DSz15CkNPTkZJR19JTlRFR1JJVFk9eQojIENPTkZJR19JTlRFR1JJVFlfU0lHTkFU
VVJFIGlzIG5vdCBzZXQKIyBDT05GSUdfSU1BIGlzIG5vdCBzZXQKIyBDT05GSUdfSU1BX1NFQ1VS
RV9BTkRfT1JfVFJVU1RFRF9CT09UIGlzIG5vdCBzZXQKIyBDT05GSUdfRVZNIGlzIG5vdCBzZXQK
Q09ORklHX0RFRkFVTFRfU0VDVVJJVFlfREFDPXkKQ09ORklHX0xTTT0ibGFuZGxvY2ssbG9ja2Rv
d24seWFtYSxsb2FkcGluLHNhZmVzZXRpZCxpbnRlZ3JpdHksYnBmIgoKIwojIEtlcm5lbCBoYXJk
ZW5pbmcgb3B0aW9ucwojCgojCiMgTWVtb3J5IGluaXRpYWxpemF0aW9uCiMKQ09ORklHX0lOSVRf
U1RBQ0tfTk9ORT15CiMgQ09ORklHX0dDQ19QTFVHSU5fU1RSVUNUTEVBS19VU0VSIGlzIG5vdCBz
ZXQKIyBDT05GSUdfR0NDX1BMVUdJTl9TVFJVQ1RMRUFLX0JZUkVGIGlzIG5vdCBzZXQKIyBDT05G
SUdfR0NDX1BMVUdJTl9TVFJVQ1RMRUFLX0JZUkVGX0FMTCBpcyBub3Qgc2V0CiMgQ09ORklHX0dD
Q19QTFVHSU5fU1RBQ0tMRUFLIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5JVF9PTl9BTExPQ19ERUZB
VUxUX09OIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5JVF9PTl9GUkVFX0RFRkFVTFRfT04gaXMgbm90
IHNldApDT05GSUdfQ0NfSEFTX1pFUk9fQ0FMTF9VU0VEX1JFR1M9eQojIENPTkZJR19aRVJPX0NB
TExfVVNFRF9SRUdTIGlzIG5vdCBzZXQKIyBlbmQgb2YgTWVtb3J5IGluaXRpYWxpemF0aW9uCiMg
ZW5kIG9mIEtlcm5lbCBoYXJkZW5pbmcgb3B0aW9ucwojIGVuZCBvZiBTZWN1cml0eSBvcHRpb25z
CgpDT05GSUdfWE9SX0JMT0NLUz15CkNPTkZJR19BU1lOQ19DT1JFPXkKQ09ORklHX0FTWU5DX01F
TUNQWT15CkNPTkZJR19BU1lOQ19YT1I9eQpDT05GSUdfQVNZTkNfUFE9eQpDT05GSUdfQVNZTkNf
UkFJRDZfUkVDT1Y9eQpDT05GSUdfQVNZTkNfVFhfRElTQUJMRV9QUV9WQUxfRE1BPXkKQ09ORklH
X0FTWU5DX1RYX0RJU0FCTEVfWE9SX1ZBTF9ETUE9eQpDT05GSUdfQ1JZUFRPPXkKCiMKIyBDcnlw
dG8gY29yZSBvciBoZWxwZXIKIwpDT05GSUdfQ1JZUFRPX0FMR0FQST15CkNPTkZJR19DUllQVE9f
QUxHQVBJMj15CkNPTkZJR19DUllQVE9fQUVBRD15CkNPTkZJR19DUllQVE9fQUVBRDI9eQpDT05G
SUdfQ1JZUFRPX1NLQ0lQSEVSPXkKQ09ORklHX0NSWVBUT19TS0NJUEhFUjI9eQpDT05GSUdfQ1JZ
UFRPX0hBU0g9eQpDT05GSUdfQ1JZUFRPX0hBU0gyPXkKQ09ORklHX0NSWVBUT19STkc9eQpDT05G
SUdfQ1JZUFRPX1JORzI9eQpDT05GSUdfQ1JZUFRPX1JOR19ERUZBVUxUPXkKQ09ORklHX0NSWVBU
T19BS0NJUEhFUjI9eQpDT05GSUdfQ1JZUFRPX0FLQ0lQSEVSPXkKQ09ORklHX0NSWVBUT19LUFAy
PXkKQ09ORklHX0NSWVBUT19LUFA9bQpDT05GSUdfQ1JZUFRPX0FDT01QMj15CkNPTkZJR19DUllQ
VE9fTUFOQUdFUj15CkNPTkZJR19DUllQVE9fTUFOQUdFUjI9eQojIENPTkZJR19DUllQVE9fVVNF
UiBpcyBub3Qgc2V0CkNPTkZJR19DUllQVE9fTUFOQUdFUl9ESVNBQkxFX1RFU1RTPXkKQ09ORklH
X0NSWVBUT19HRjEyOE1VTD15CkNPTkZJR19DUllQVE9fTlVMTD15CkNPTkZJR19DUllQVE9fTlVM
TDI9eQojIENPTkZJR19DUllQVE9fUENSWVBUIGlzIG5vdCBzZXQKQ09ORklHX0NSWVBUT19DUllQ
VEQ9eQpDT05GSUdfQ1JZUFRPX0FVVEhFTkM9eQpDT05GSUdfQ1JZUFRPX1RFU1Q9bQpDT05GSUdf
Q1JZUFRPX1NJTUQ9eQpDT05GSUdfQ1JZUFRPX0VOR0lORT15CgojCiMgUHVibGljLWtleSBjcnlw
dG9ncmFwaHkKIwpDT05GSUdfQ1JZUFRPX1JTQT15CkNPTkZJR19DUllQVE9fREg9bQpDT05GSUdf
Q1JZUFRPX0VDQz1tCkNPTkZJR19DUllQVE9fRUNESD1tCiMgQ09ORklHX0NSWVBUT19FQ0RTQSBp
cyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19FQ1JEU0EgaXMgbm90IHNldAojIENPTkZJR19DUllQ
VE9fU00yIGlzIG5vdCBzZXQKQ09ORklHX0NSWVBUT19DVVJWRTI1NTE5PW0KCiMKIyBBdXRoZW50
aWNhdGVkIEVuY3J5cHRpb24gd2l0aCBBc3NvY2lhdGVkIERhdGEKIwpDT05GSUdfQ1JZUFRPX0ND
TT15CkNPTkZJR19DUllQVE9fR0NNPXkKIyBDT05GSUdfQ1JZUFRPX0NIQUNIQTIwUE9MWTEzMDUg
aXMgbm90IHNldAojIENPTkZJR19DUllQVE9fQUVHSVMxMjggaXMgbm90IHNldApDT05GSUdfQ1JZ
UFRPX1NFUUlWPXkKQ09ORklHX0NSWVBUT19FQ0hBSU5JVj15CgojCiMgQmxvY2sgbW9kZXMKIwpD
T05GSUdfQ1JZUFRPX0NCQz15CiMgQ09ORklHX0NSWVBUT19DRkIgaXMgbm90IHNldApDT05GSUdf
Q1JZUFRPX0NUUj15CkNPTkZJR19DUllQVE9fQ1RTPXkKQ09ORklHX0NSWVBUT19FQ0I9eQojIENP
TkZJR19DUllQVE9fTFJXIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX09GQiBpcyBub3Qgc2V0
CiMgQ09ORklHX0NSWVBUT19QQ0JDIGlzIG5vdCBzZXQKQ09ORklHX0NSWVBUT19YVFM9eQojIENP
TkZJR19DUllQVE9fS0VZV1JBUCBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19BRElBTlRVTSBp
cyBub3Qgc2V0CkNPTkZJR19DUllQVE9fRVNTSVY9eQoKIwojIEhhc2ggbW9kZXMKIwpDT05GSUdf
Q1JZUFRPX0NNQUM9eQpDT05GSUdfQ1JZUFRPX0hNQUM9eQpDT05GSUdfQ1JZUFRPX1hDQkM9bQoj
IENPTkZJR19DUllQVE9fVk1BQyBpcyBub3Qgc2V0CgojCiMgRGlnZXN0CiMKQ09ORklHX0NSWVBU
T19DUkMzMkM9eQojIENPTkZJR19DUllQVE9fQ1JDMzIgaXMgbm90IHNldApDT05GSUdfQ1JZUFRP
X1hYSEFTSD15CkNPTkZJR19DUllQVE9fQkxBS0UyQj15CkNPTkZJR19DUllQVE9fQ1JDVDEwRElG
PXkKQ09ORklHX0NSWVBUT19HSEFTSD15CiMgQ09ORklHX0NSWVBUT19QT0xZMTMwNSBpcyBub3Qg
c2V0CkNPTkZJR19DUllQVE9fTUQ0PXkKQ09ORklHX0NSWVBUT19NRDU9eQpDT05GSUdfQ1JZUFRP
X01JQ0hBRUxfTUlDPW0KIyBDT05GSUdfQ1JZUFRPX1JNRDE2MCBpcyBub3Qgc2V0CkNPTkZJR19D
UllQVE9fU0hBMT15CkNPTkZJR19DUllQVE9fU0hBMjU2PXkKQ09ORklHX0NSWVBUT19TSEE1MTI9
eQpDT05GSUdfQ1JZUFRPX1NIQTM9bQpDT05GSUdfQ1JZUFRPX1NNMz1tCiMgQ09ORklHX0NSWVBU
T19TVFJFRUJPRyBpcyBub3Qgc2V0CkNPTkZJR19DUllQVE9fV1A1MTI9bQoKIwojIENpcGhlcnMK
IwpDT05GSUdfQ1JZUFRPX0FFUz15CiMgQ09ORklHX0NSWVBUT19BRVNfVEkgaXMgbm90IHNldApD
T05GSUdfQ1JZUFRPX0JMT1dGSVNIPW0KQ09ORklHX0NSWVBUT19CTE9XRklTSF9DT01NT049bQpD
T05GSUdfQ1JZUFRPX0NBTUVMTElBPW0KQ09ORklHX0NSWVBUT19DQVNUX0NPTU1PTj1tCkNPTkZJ
R19DUllQVE9fQ0FTVDU9bQpDT05GSUdfQ1JZUFRPX0NBU1Q2PW0KQ09ORklHX0NSWVBUT19ERVM9
eQojIENPTkZJR19DUllQVE9fRkNSWVBUIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX0NIQUNI
QTIwIGlzIG5vdCBzZXQKQ09ORklHX0NSWVBUT19TRVJQRU5UPW0KQ09ORklHX0NSWVBUT19TTTQ9
bQpDT05GSUdfQ1JZUFRPX1RXT0ZJU0g9bQpDT05GSUdfQ1JZUFRPX1RXT0ZJU0hfQ09NTU9OPW0K
CiMKIyBDb21wcmVzc2lvbgojCkNPTkZJR19DUllQVE9fREVGTEFURT15CiMgQ09ORklHX0NSWVBU
T19MWk8gaXMgbm90IHNldAojIENPTkZJR19DUllQVE9fODQyIGlzIG5vdCBzZXQKIyBDT05GSUdf
Q1JZUFRPX0xaNCBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19MWjRIQyBpcyBub3Qgc2V0CiMg
Q09ORklHX0NSWVBUT19aU1REIGlzIG5vdCBzZXQKCiMKIyBSYW5kb20gTnVtYmVyIEdlbmVyYXRp
b24KIwpDT05GSUdfQ1JZUFRPX0FOU0lfQ1BSTkc9eQpDT05GSUdfQ1JZUFRPX0RSQkdfTUVOVT15
CkNPTkZJR19DUllQVE9fRFJCR19ITUFDPXkKIyBDT05GSUdfQ1JZUFRPX0RSQkdfSEFTSCBpcyBu
b3Qgc2V0CiMgQ09ORklHX0NSWVBUT19EUkJHX0NUUiBpcyBub3Qgc2V0CkNPTkZJR19DUllQVE9f
RFJCRz15CkNPTkZJR19DUllQVE9fSklUVEVSRU5UUk9QWT15CkNPTkZJR19DUllQVE9fVVNFUl9B
UEk9bQpDT05GSUdfQ1JZUFRPX1VTRVJfQVBJX0hBU0g9bQpDT05GSUdfQ1JZUFRPX1VTRVJfQVBJ
X1NLQ0lQSEVSPW0KQ09ORklHX0NSWVBUT19VU0VSX0FQSV9STkc9bQojIENPTkZJR19DUllQVE9f
VVNFUl9BUElfUk5HX0NBVlAgaXMgbm90IHNldApDT05GSUdfQ1JZUFRPX1VTRVJfQVBJX0FFQUQ9
bQojIENPTkZJR19DUllQVE9fVVNFUl9BUElfRU5BQkxFX09CU09MRVRFIGlzIG5vdCBzZXQKQ09O
RklHX0NSWVBUT19IQVNIX0lORk89eQpDT05GSUdfQ1JZUFRPX0hXPXkKQ09ORklHX0NSWVBUT19E
RVZfQUxMV0lOTkVSPXkKIyBDT05GSUdfQ1JZUFRPX0RFVl9TVU40SV9TUyBpcyBub3Qgc2V0CkNP
TkZJR19DUllQVE9fREVWX1NVTjhJX0NFPW0KIyBDT05GSUdfQ1JZUFRPX0RFVl9TVU44SV9DRV9E
RUJVRyBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19ERVZfU1VOOElfQ0VfSEFTSCBpcyBub3Qg
c2V0CiMgQ09ORklHX0NSWVBUT19ERVZfU1VOOElfQ0VfUFJORyBpcyBub3Qgc2V0CiMgQ09ORklH
X0NSWVBUT19ERVZfU1VOOElfQ0VfVFJORyBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19ERVZf
U1VOOElfU1MgaXMgbm90IHNldApDT05GSUdfQ1JZUFRPX0RFVl9GU0xfQ0FBTV9DT01NT049bQpD
T05GSUdfQ1JZUFRPX0RFVl9GU0xfQ0FBTV9DUllQVE9fQVBJX0RFU0M9bQpDT05GSUdfQ1JZUFRP
X0RFVl9GU0xfQ0FBTV9BSEFTSF9BUElfREVTQz1tCkNPTkZJR19DUllQVE9fREVWX0ZTTF9DQUFN
PW0KIyBDT05GSUdfQ1JZUFRPX0RFVl9GU0xfQ0FBTV9ERUJVRyBpcyBub3Qgc2V0CkNPTkZJR19D
UllQVE9fREVWX0ZTTF9DQUFNX0pSPW0KQ09ORklHX0NSWVBUT19ERVZfRlNMX0NBQU1fUklOR1NJ
WkU9OQojIENPTkZJR19DUllQVE9fREVWX0ZTTF9DQUFNX0lOVEMgaXMgbm90IHNldApDT05GSUdf
Q1JZUFRPX0RFVl9GU0xfQ0FBTV9DUllQVE9fQVBJPXkKQ09ORklHX0NSWVBUT19ERVZfRlNMX0NB
QU1fQ1JZUFRPX0FQSV9RST15CkNPTkZJR19DUllQVE9fREVWX0ZTTF9DQUFNX0FIQVNIX0FQST15
CkNPTkZJR19DUllQVE9fREVWX0ZTTF9DQUFNX1BLQ19BUEk9eQpDT05GSUdfQ1JZUFRPX0RFVl9G
U0xfQ0FBTV9STkdfQVBJPXkKQ09ORklHX0NSWVBUT19ERVZfRlNMX0RQQUEyX0NBQU09bQojIENP
TkZJR19DUllQVE9fREVWX1NBSEFSQSBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19ERVZfRVhZ
Tk9TX1JORyBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19ERVZfUzVQIGlzIG5vdCBzZXQKIyBD
T05GSUdfQ1JZUFRPX0RFVl9BVE1FTF9FQ0MgaXMgbm90IHNldAojIENPTkZJR19DUllQVE9fREVW
X0FUTUVMX1NIQTIwNEEgaXMgbm90IHNldAojIENPTkZJR19DUllQVE9fREVWX0NDUCBpcyBub3Qg
c2V0CiMgQ09ORklHX0NSWVBUT19ERVZfTVhTX0RDUCBpcyBub3Qgc2V0CiMgQ09ORklHX0NBVklV
TV9DUFQgaXMgbm90IHNldAojIENPTkZJR19DUllQVE9fREVWX05JVFJPWF9DTk41NVhYIGlzIG5v
dCBzZXQKIyBDT05GSUdfQ1JZUFRPX0RFVl9NQVJWRUxMX0NFU0EgaXMgbm90IHNldAojIENPTkZJ
R19DUllQVE9fREVWX09DVEVPTlRYX0NQVCBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19ERVZf
T0NURU9OVFgyX0NQVCBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19ERVZfQ0FWSVVNX1pJUCBp
cyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19ERVZfUUNFIGlzIG5vdCBzZXQKQ09ORklHX0NSWVBU
T19ERVZfUUNPTV9STkc9bQojIENPTkZJR19DUllQVE9fREVWX1JPQ0tDSElQIGlzIG5vdCBzZXQK
IyBDT05GSUdfQ1JZUFRPX0RFVl9aWU5RTVBfQUVTIGlzIG5vdCBzZXQKQ09ORklHX0NSWVBUT19E
RVZfVklSVElPPXkKQ09ORklHX0NSWVBUT19ERVZfQkNNX1NQVT1tCiMgQ09ORklHX0NSWVBUT19E
RVZfU0FGRVhDRUwgaXMgbm90IHNldApDT05GSUdfQ1JZUFRPX0RFVl9DQ1JFRT1tCiMgQ09ORklH
X0NSWVBUT19ERVZfSElTSV9TRUMgaXMgbm90IHNldApDT05GSUdfQ1JZUFRPX0RFVl9ISVNJX1NF
QzI9bQpDT05GSUdfQ1JZUFRPX0RFVl9ISVNJX1FNPW0KQ09ORklHX0NSWVBUT19ERVZfSElTSV9a
SVA9bQpDT05GSUdfQ1JZUFRPX0RFVl9ISVNJX0hQUkU9bQpDT05GSUdfQ1JZUFRPX0RFVl9ISVNJ
X1RSTkc9bQpDT05GSUdfQ1JZUFRPX0RFVl9BTUxPR0lDX0dYTD1tCiMgQ09ORklHX0NSWVBUT19E
RVZfQU1MT0dJQ19HWExfREVCVUcgaXMgbm90IHNldAojIENPTkZJR19DUllQVE9fREVWX1NBMlVM
IGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX0RFVl9LRUVNQkFZX09DU19BRVNfU000IGlzIG5v
dCBzZXQKIyBDT05GSUdfQ1JZUFRPX0RFVl9LRUVNQkFZX09DU19IQ1UgaXMgbm90IHNldApDT05G
SUdfQVNZTU1FVFJJQ19LRVlfVFlQRT15CkNPTkZJR19BU1lNTUVUUklDX1BVQkxJQ19LRVlfU1VC
VFlQRT15CkNPTkZJR19YNTA5X0NFUlRJRklDQVRFX1BBUlNFUj15CiMgQ09ORklHX1BLQ1M4X1BS
SVZBVEVfS0VZX1BBUlNFUiBpcyBub3Qgc2V0CkNPTkZJR19QS0NTN19NRVNTQUdFX1BBUlNFUj15
CiMgQ09ORklHX1BLQ1M3X1RFU1RfS0VZIGlzIG5vdCBzZXQKIyBDT05GSUdfU0lHTkVEX1BFX0ZJ
TEVfVkVSSUZJQ0FUSU9OIGlzIG5vdCBzZXQKCiMKIyBDZXJ0aWZpY2F0ZXMgZm9yIHNpZ25hdHVy
ZSBjaGVja2luZwojCkNPTkZJR19TWVNURU1fVFJVU1RFRF9LRVlSSU5HPXkKQ09ORklHX1NZU1RF
TV9UUlVTVEVEX0tFWVM9IiIKIyBDT05GSUdfU1lTVEVNX0VYVFJBX0NFUlRJRklDQVRFIGlzIG5v
dCBzZXQKIyBDT05GSUdfU0VDT05EQVJZX1RSVVNURURfS0VZUklORyBpcyBub3Qgc2V0CiMgQ09O
RklHX1NZU1RFTV9CTEFDS0xJU1RfS0VZUklORyBpcyBub3Qgc2V0CiMgZW5kIG9mIENlcnRpZmlj
YXRlcyBmb3Igc2lnbmF0dXJlIGNoZWNraW5nCgpDT05GSUdfQklOQVJZX1BSSU5URj15CgojCiMg
TGlicmFyeSByb3V0aW5lcwojCkNPTkZJR19SQUlENl9QUT15CkNPTkZJR19SQUlENl9QUV9CRU5D
SE1BUks9eQpDT05GSUdfTElORUFSX1JBTkdFUz15CkNPTkZJR19QQUNLSU5HPXkKQ09ORklHX0JJ
VFJFVkVSU0U9eQpDT05GSUdfSEFWRV9BUkNIX0JJVFJFVkVSU0U9eQpDT05GSUdfR0VORVJJQ19T
VFJOQ1BZX0ZST01fVVNFUj15CkNPTkZJR19HRU5FUklDX1NUUk5MRU5fVVNFUj15CkNPTkZJR19H
RU5FUklDX05FVF9VVElMUz15CkNPTkZJR19HRU5FUklDX0ZJTkRfRklSU1RfQklUPXkKIyBDT05G
SUdfQ09SRElDIGlzIG5vdCBzZXQKIyBDT05GSUdfUFJJTUVfTlVNQkVSUyBpcyBub3Qgc2V0CkNP
TkZJR19SQVRJT05BTD15CkNPTkZJR19HRU5FUklDX1BDSV9JT01BUD15CkNPTkZJR19BUkNIX1VT
RV9DTVBYQ0hHX0xPQ0tSRUY9eQpDT05GSUdfQVJDSF9IQVNfRkFTVF9NVUxUSVBMSUVSPXkKQ09O
RklHX0FSQ0hfVVNFX1NZTV9BTk5PVEFUSU9OUz15CkNPTkZJR19JTkRJUkVDVF9QSU89eQoKIwoj
IENyeXB0byBsaWJyYXJ5IHJvdXRpbmVzCiMKQ09ORklHX0NSWVBUT19MSUJfQUVTPXkKQ09ORklH
X0NSWVBUT19MSUJfQVJDND1tCkNPTkZJR19DUllQVE9fTElCX0JMQUtFMlNfR0VORVJJQz15CkNP
TkZJR19DUllQVE9fQVJDSF9IQVZFX0xJQl9DSEFDSEE9bQpDT05GSUdfQ1JZUFRPX0xJQl9DSEFD
SEFfR0VORVJJQz1tCiMgQ09ORklHX0NSWVBUT19MSUJfQ0hBQ0hBIGlzIG5vdCBzZXQKQ09ORklH
X0NSWVBUT19MSUJfQ1VSVkUyNTUxOV9HRU5FUklDPW0KIyBDT05GSUdfQ1JZUFRPX0xJQl9DVVJW
RTI1NTE5IGlzIG5vdCBzZXQKQ09ORklHX0NSWVBUT19MSUJfREVTPXkKQ09ORklHX0NSWVBUT19M
SUJfUE9MWTEzMDVfUlNJWkU9OQojIENPTkZJR19DUllQVE9fTElCX1BPTFkxMzA1IGlzIG5vdCBz
ZXQKIyBDT05GSUdfQ1JZUFRPX0xJQl9DSEFDSEEyMFBPTFkxMzA1IGlzIG5vdCBzZXQKQ09ORklH
X0NSWVBUT19MSUJfU0hBMjU2PXkKQ09ORklHX0NSWVBUT19MSUJfU000PW0KIyBlbmQgb2YgQ3J5
cHRvIGxpYnJhcnkgcm91dGluZXMKCkNPTkZJR19MSUJfTUVNTkVRPXkKQ09ORklHX0NSQ19DQ0lU
VD1tCkNPTkZJR19DUkMxNj15CkNPTkZJR19DUkNfVDEwRElGPXkKQ09ORklHX0NSQ19JVFVfVD15
CkNPTkZJR19DUkMzMj15CiMgQ09ORklHX0NSQzMyX1NFTEZURVNUIGlzIG5vdCBzZXQKQ09ORklH
X0NSQzMyX1NMSUNFQlk4PXkKIyBDT05GSUdfQ1JDMzJfU0xJQ0VCWTQgaXMgbm90IHNldAojIENP
TkZJR19DUkMzMl9TQVJXQVRFIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JDMzJfQklUIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQ1JDNjQgaXMgbm90IHNldAojIENPTkZJR19DUkM0IGlzIG5vdCBzZXQKQ09O
RklHX0NSQzc9eQpDT05GSUdfTElCQ1JDMzJDPXkKQ09ORklHX0NSQzg9eQpDT05GSUdfWFhIQVNI
PXkKQ09ORklHX0FVRElUX0FSQ0hfQ09NUEFUX0dFTkVSSUM9eQojIENPTkZJR19SQU5ET00zMl9T
RUxGVEVTVCBpcyBub3Qgc2V0CkNPTkZJR19aTElCX0lORkxBVEU9eQpDT05GSUdfWkxJQl9ERUZM
QVRFPXkKQ09ORklHX0xaT19DT01QUkVTUz15CkNPTkZJR19MWk9fREVDT01QUkVTUz15CkNPTkZJ
R19MWjRfREVDT01QUkVTUz15CkNPTkZJR19aU1REX0NPTVBSRVNTPXkKQ09ORklHX1pTVERfREVD
T01QUkVTUz15CkNPTkZJR19YWl9ERUM9eQpDT05GSUdfWFpfREVDX1g4Nj15CkNPTkZJR19YWl9E
RUNfUE9XRVJQQz15CkNPTkZJR19YWl9ERUNfSUE2ND15CkNPTkZJR19YWl9ERUNfQVJNPXkKQ09O
RklHX1haX0RFQ19BUk1USFVNQj15CkNPTkZJR19YWl9ERUNfU1BBUkM9eQpDT05GSUdfWFpfREVD
X0JDSj15CiMgQ09ORklHX1haX0RFQ19URVNUIGlzIG5vdCBzZXQKQ09ORklHX0RFQ09NUFJFU1Nf
R1pJUD15CkNPTkZJR19ERUNPTVBSRVNTX0JaSVAyPXkKQ09ORklHX0RFQ09NUFJFU1NfTFpNQT15
CkNPTkZJR19ERUNPTVBSRVNTX1haPXkKQ09ORklHX0RFQ09NUFJFU1NfTFpPPXkKQ09ORklHX0RF
Q09NUFJFU1NfTFo0PXkKQ09ORklHX0RFQ09NUFJFU1NfWlNURD15CkNPTkZJR19HRU5FUklDX0FM
TE9DQVRPUj15CkNPTkZJR19URVhUU0VBUkNIPXkKQ09ORklHX1RFWFRTRUFSQ0hfS01QPW0KQ09O
RklHX1RFWFRTRUFSQ0hfQk09bQpDT05GSUdfVEVYVFNFQVJDSF9GU009bQpDT05GSUdfSU5URVJW
QUxfVFJFRT15CkNPTkZJR19YQVJSQVlfTVVMVEk9eQpDT05GSUdfQVNTT0NJQVRJVkVfQVJSQVk9
eQpDT05GSUdfSEFTX0lPTUVNPXkKQ09ORklHX0hBU19JT1BPUlRfTUFQPXkKQ09ORklHX0hBU19E
TUE9eQpDT05GSUdfRE1BX09QUz15CkNPTkZJR19ORUVEX1NHX0RNQV9MRU5HVEg9eQpDT05GSUdf
TkVFRF9ETUFfTUFQX1NUQVRFPXkKQ09ORklHX0FSQ0hfRE1BX0FERFJfVF82NEJJVD15CkNPTkZJ
R19ETUFfREVDTEFSRV9DT0hFUkVOVD15CkNPTkZJR19BUkNIX0hBU19TRVRVUF9ETUFfT1BTPXkK
Q09ORklHX0FSQ0hfSEFTX1RFQVJET1dOX0RNQV9PUFM9eQpDT05GSUdfQVJDSF9IQVNfU1lOQ19E
TUFfRk9SX0RFVklDRT15CkNPTkZJR19BUkNIX0hBU19TWU5DX0RNQV9GT1JfQ1BVPXkKQ09ORklH
X0FSQ0hfSEFTX0RNQV9QUkVQX0NPSEVSRU5UPXkKQ09ORklHX1NXSU9UTEI9eQojIENPTkZJR19E
TUFfUkVTVFJJQ1RFRF9QT09MIGlzIG5vdCBzZXQKQ09ORklHX0RNQV9OT05DT0hFUkVOVF9NTUFQ
PXkKQ09ORklHX0RNQV9DT0hFUkVOVF9QT09MPXkKQ09ORklHX0RNQV9SRU1BUD15CkNPTkZJR19E
TUFfRElSRUNUX1JFTUFQPXkKQ09ORklHX0RNQV9DTUE9eQpDT05GSUdfRE1BX1BFUk5VTUFfQ01B
PXkKCiMKIyBEZWZhdWx0IGNvbnRpZ3VvdXMgbWVtb3J5IGFyZWEgc2l6ZToKIwpDT05GSUdfQ01B
X1NJWkVfTUJZVEVTPTMyCkNPTkZJR19DTUFfU0laRV9TRUxfTUJZVEVTPXkKIyBDT05GSUdfQ01B
X1NJWkVfU0VMX1BFUkNFTlRBR0UgaXMgbm90IHNldAojIENPTkZJR19DTUFfU0laRV9TRUxfTUlO
IGlzIG5vdCBzZXQKIyBDT05GSUdfQ01BX1NJWkVfU0VMX01BWCBpcyBub3Qgc2V0CkNPTkZJR19D
TUFfQUxJR05NRU5UPTgKIyBDT05GSUdfRE1BX0FQSV9ERUJVRyBpcyBub3Qgc2V0CiMgQ09ORklH
X0RNQV9NQVBfQkVOQ0hNQVJLIGlzIG5vdCBzZXQKQ09ORklHX1NHTF9BTExPQz15CkNPTkZJR19D
UFVfUk1BUD15CkNPTkZJR19EUUw9eQpDT05GSUdfR0xPQj15CiMgQ09ORklHX0dMT0JfU0VMRlRF
U1QgaXMgbm90IHNldApDT05GSUdfTkxBVFRSPXkKQ09ORklHX0NMWl9UQUI9eQpDT05GSUdfSVJR
X1BPTEw9eQpDT05GSUdfTVBJTElCPXkKQ09ORklHX0RJTUxJQj15CkNPTkZJR19MSUJGRFQ9eQpD
T05GSUdfT0lEX1JFR0lTVFJZPXkKQ09ORklHX1VDUzJfU1RSSU5HPXkKQ09ORklHX0hBVkVfR0VO
RVJJQ19WRFNPPXkKQ09ORklHX0dFTkVSSUNfR0VUVElNRU9GREFZPXkKQ09ORklHX0dFTkVSSUNf
VkRTT19USU1FX05TPXkKQ09ORklHX0ZPTlRfU1VQUE9SVD15CiMgQ09ORklHX0ZPTlRTIGlzIG5v
dCBzZXQKQ09ORklHX0ZPTlRfOHg4PXkKQ09ORklHX0ZPTlRfOHgxNj15CkNPTkZJR19TR19QT09M
PXkKQ09ORklHX0FSQ0hfU1RBQ0tXQUxLPXkKQ09ORklHX1NCSVRNQVA9eQojIGVuZCBvZiBMaWJy
YXJ5IHJvdXRpbmVzCgpDT05GSUdfR0VORVJJQ19MSUJfREVWTUVNX0lTX0FMTE9XRUQ9eQoKIwoj
IEtlcm5lbCBoYWNraW5nCiMKCiMKIyBwcmludGsgYW5kIGRtZXNnIG9wdGlvbnMKIwpDT05GSUdf
UFJJTlRLX1RJTUU9eQojIENPTkZJR19QUklOVEtfQ0FMTEVSIGlzIG5vdCBzZXQKIyBDT05GSUdf
U1RBQ0tUUkFDRV9CVUlMRF9JRCBpcyBub3Qgc2V0CkNPTkZJR19DT05TT0xFX0xPR0xFVkVMX0RF
RkFVTFQ9NwpDT05GSUdfQ09OU09MRV9MT0dMRVZFTF9RVUlFVD00CkNPTkZJR19NRVNTQUdFX0xP
R0xFVkVMX0RFRkFVTFQ9NAojIENPTkZJR19EWU5BTUlDX0RFQlVHIGlzIG5vdCBzZXQKIyBDT05G
SUdfRFlOQU1JQ19ERUJVR19DT1JFIGlzIG5vdCBzZXQKQ09ORklHX1NZTUJPTElDX0VSUk5BTUU9
eQpDT05GSUdfREVCVUdfQlVHVkVSQk9TRT15CiMgZW5kIG9mIHByaW50ayBhbmQgZG1lc2cgb3B0
aW9ucwoKQ09ORklHX0FTX0hBU19OT05fQ09OU1RfTEVCMTI4PXkKCiMKIyBDb21waWxlLXRpbWUg
Y2hlY2tzIGFuZCBjb21waWxlciBvcHRpb25zCiMKQ09ORklHX0ZSQU1FX1dBUk49MjA0OAojIENP
TkZJR19TVFJJUF9BU01fU1lNUyBpcyBub3Qgc2V0CiMgQ09ORklHX0hFQURFUlNfSU5TVEFMTCBp
cyBub3Qgc2V0CiMgQ09ORklHX0RFQlVHX1NFQ1RJT05fTUlTTUFUQ0ggaXMgbm90IHNldApDT05G
SUdfU0VDVElPTl9NSVNNQVRDSF9XQVJOX09OTFk9eQpDT05GSUdfQVJDSF9XQU5UX0ZSQU1FX1BP
SU5URVJTPXkKQ09ORklHX0ZSQU1FX1BPSU5URVI9eQojIGVuZCBvZiBDb21waWxlLXRpbWUgY2hl
Y2tzIGFuZCBjb21waWxlciBvcHRpb25zCgojCiMgR2VuZXJpYyBLZXJuZWwgRGVidWdnaW5nIElu
c3RydW1lbnRzCiMKQ09ORklHX01BR0lDX1NZU1JRPXkKQ09ORklHX01BR0lDX1NZU1JRX0RFRkFV
TFRfRU5BQkxFPTB4MQpDT05GSUdfTUFHSUNfU1lTUlFfU0VSSUFMPXkKQ09ORklHX01BR0lDX1NZ
U1JRX1NFUklBTF9TRVFVRU5DRT0iIgpDT05GSUdfREVCVUdfRlM9eQpDT05GSUdfREVCVUdfRlNf
QUxMT1dfQUxMPXkKIyBDT05GSUdfREVCVUdfRlNfRElTQUxMT1dfTU9VTlQgaXMgbm90IHNldAoj
IENPTkZJR19ERUJVR19GU19BTExPV19OT05FIGlzIG5vdCBzZXQKQ09ORklHX0hBVkVfQVJDSF9L
R0RCPXkKQ09ORklHX0FSQ0hfSEFTX1VCU0FOX1NBTklUSVpFX0FMTD15CiMgQ09ORklHX1VCU0FO
IGlzIG5vdCBzZXQKQ09ORklHX0hBVkVfS0NTQU5fQ09NUElMRVI9eQojIGVuZCBvZiBHZW5lcmlj
IEtlcm5lbCBEZWJ1Z2dpbmcgSW5zdHJ1bWVudHMKCiMgQ09ORklHX0RFQlVHX0tFUk5FTCBpcyBu
b3Qgc2V0CgojCiMgTWVtb3J5IERlYnVnZ2luZwojCiMgQ09ORklHX1BBR0VfRVhURU5TSU9OIGlz
IG5vdCBzZXQKIyBDT05GSUdfUEFHRV9QT0lTT05JTkcgaXMgbm90IHNldAojIENPTkZJR19ERUJV
R19ST0RBVEFfVEVTVCBpcyBub3Qgc2V0CkNPTkZJR19BUkNIX0hBU19ERUJVR19XWD15CiMgQ09O
RklHX0RFQlVHX1dYIGlzIG5vdCBzZXQKQ09ORklHX0dFTkVSSUNfUFREVU1QPXkKIyBDT05GSUdf
U0xVQl9ERUJVR19PTiBpcyBub3Qgc2V0CiMgQ09ORklHX1NMVUJfU1RBVFMgaXMgbm90IHNldApD
T05GSUdfSEFWRV9ERUJVR19LTUVNTEVBSz15CkNPTkZJR19BUkNIX0hBU19ERUJVR19WTV9QR1RB
QkxFPXkKIyBDT05GSUdfREVCVUdfVk1fUEdUQUJMRSBpcyBub3Qgc2V0CkNPTkZJR19BUkNIX0hB
U19ERUJVR19WSVJUVUFMPXkKQ09ORklHX0RFQlVHX01FTU9SWV9JTklUPXkKQ09ORklHX0hBVkVf
QVJDSF9LQVNBTj15CkNPTkZJR19IQVZFX0FSQ0hfS0FTQU5fU1dfVEFHUz15CkNPTkZJR19IQVZF
X0FSQ0hfS0FTQU5fSFdfVEFHUz15CkNPTkZJR19IQVZFX0FSQ0hfS0FTQU5fVk1BTExPQz15CkNP
TkZJR19DQ19IQVNfS0FTQU5fR0VORVJJQz15CkNPTkZJR19DQ19IQVNfS0FTQU5fU1dfVEFHUz15
CkNPTkZJR19DQ19IQVNfV09SS0lOR19OT1NBTklUSVpFX0FERFJFU1M9eQojIENPTkZJR19LQVNB
TiBpcyBub3Qgc2V0CkNPTkZJR19IQVZFX0FSQ0hfS0ZFTkNFPXkKQ09ORklHX0tGRU5DRT15CkNP
TkZJR19LRkVOQ0VfU0FNUExFX0lOVEVSVkFMPTEwMApDT05GSUdfS0ZFTkNFX05VTV9PQkpFQ1RT
PTI1NQpDT05GSUdfS0ZFTkNFX1NUUkVTU19URVNUX0ZBVUxUUz0wCiMgZW5kIG9mIE1lbW9yeSBE
ZWJ1Z2dpbmcKCiMKIyBEZWJ1ZyBPb3BzLCBMb2NrdXBzIGFuZCBIYW5ncwojCiMgQ09ORklHX1BB
TklDX09OX09PUFMgaXMgbm90IHNldApDT05GSUdfUEFOSUNfT05fT09QU19WQUxVRT0wCkNPTkZJ
R19QQU5JQ19USU1FT1VUPTAKIyBDT05GSUdfVEVTVF9MT0NLVVAgaXMgbm90IHNldAojIGVuZCBv
ZiBEZWJ1ZyBPb3BzLCBMb2NrdXBzIGFuZCBIYW5ncwoKIwojIFNjaGVkdWxlciBEZWJ1Z2dpbmcK
IwpDT05GSUdfU0NIRURfSU5GTz15CiMgZW5kIG9mIFNjaGVkdWxlciBEZWJ1Z2dpbmcKCiMgQ09O
RklHX0RFQlVHX1RJTUVLRUVQSU5HIGlzIG5vdCBzZXQKCiMKIyBMb2NrIERlYnVnZ2luZyAoc3Bp
bmxvY2tzLCBtdXRleGVzLCBldGMuLi4pCiMKQ09ORklHX0xPQ0tfREVCVUdHSU5HX1NVUFBPUlQ9
eQojIENPTkZJR19XV19NVVRFWF9TRUxGVEVTVCBpcyBub3Qgc2V0CiMgZW5kIG9mIExvY2sgRGVi
dWdnaW5nIChzcGlubG9ja3MsIG11dGV4ZXMsIGV0Yy4uLikKCiMgQ09ORklHX0RFQlVHX0lSUUZM
QUdTIGlzIG5vdCBzZXQKQ09ORklHX1NUQUNLVFJBQ0U9eQojIENPTkZJR19XQVJOX0FMTF9VTlNF
RURFRF9SQU5ET00gaXMgbm90IHNldAoKIwojIERlYnVnIGtlcm5lbCBkYXRhIHN0cnVjdHVyZXMK
IwojIENPTkZJR19CVUdfT05fREFUQV9DT1JSVVBUSU9OIGlzIG5vdCBzZXQKIyBlbmQgb2YgRGVi
dWcga2VybmVsIGRhdGEgc3RydWN0dXJlcwoKIwojIFJDVSBEZWJ1Z2dpbmcKIwpDT05GSUdfUkNV
X0NQVV9TVEFMTF9USU1FT1VUPTIxCiMgZW5kIG9mIFJDVSBEZWJ1Z2dpbmcKCkNPTkZJR19OT1Bf
VFJBQ0VSPXkKQ09ORklHX0hBVkVfRlVOQ1RJT05fVFJBQ0VSPXkKQ09ORklHX0hBVkVfRlVOQ1RJ
T05fR1JBUEhfVFJBQ0VSPXkKQ09ORklHX0hBVkVfRFlOQU1JQ19GVFJBQ0U9eQpDT05GSUdfSEFW
RV9EWU5BTUlDX0ZUUkFDRV9XSVRIX1JFR1M9eQpDT05GSUdfSEFWRV9GVFJBQ0VfTUNPVU5UX1JF
Q09SRD15CkNPTkZJR19IQVZFX1NZU0NBTExfVFJBQ0VQT0lOVFM9eQpDT05GSUdfSEFWRV9DX1JF
Q09SRE1DT1VOVD15CkNPTkZJR19UUkFDRV9DTE9DSz15CkNPTkZJR19SSU5HX0JVRkZFUj15CkNP
TkZJR19FVkVOVF9UUkFDSU5HPXkKQ09ORklHX0NPTlRFWFRfU1dJVENIX1RSQUNFUj15CkNPTkZJ
R19UUkFDSU5HPXkKQ09ORklHX0dFTkVSSUNfVFJBQ0VSPXkKQ09ORklHX1RSQUNJTkdfU1VQUE9S
VD15CkNPTkZJR19GVFJBQ0U9eQojIENPTkZJR19CT09UVElNRV9UUkFDSU5HIGlzIG5vdCBzZXQK
Q09ORklHX0ZVTkNUSU9OX1RSQUNFUj15CkNPTkZJR19GVU5DVElPTl9HUkFQSF9UUkFDRVI9eQpD
T05GSUdfRFlOQU1JQ19GVFJBQ0U9eQpDT05GSUdfRFlOQU1JQ19GVFJBQ0VfV0lUSF9SRUdTPXkK
IyBDT05GSUdfRlVOQ1RJT05fUFJPRklMRVIgaXMgbm90IHNldAojIENPTkZJR19TVEFDS19UUkFD
RVIgaXMgbm90IHNldAojIENPTkZJR19JUlFTT0ZGX1RSQUNFUiBpcyBub3Qgc2V0CiMgQ09ORklH
X1BSRUVNUFRfVFJBQ0VSIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NIRURfVFJBQ0VSIGlzIG5vdCBz
ZXQKIyBDT05GSUdfSFdMQVRfVFJBQ0VSIGlzIG5vdCBzZXQKIyBDT05GSUdfT1NOT0lTRV9UUkFD
RVIgaXMgbm90IHNldAojIENPTkZJR19USU1FUkxBVF9UUkFDRVIgaXMgbm90IHNldApDT05GSUdf
RlRSQUNFX1NZU0NBTExTPXkKIyBDT05GSUdfVFJBQ0VSX1NOQVBTSE9UIGlzIG5vdCBzZXQKQ09O
RklHX0JSQU5DSF9QUk9GSUxFX05PTkU9eQojIENPTkZJR19QUk9GSUxFX0FOTk9UQVRFRF9CUkFO
Q0hFUyBpcyBub3Qgc2V0CiMgQ09ORklHX1BST0ZJTEVfQUxMX0JSQU5DSEVTIGlzIG5vdCBzZXQK
Q09ORklHX0JMS19ERVZfSU9fVFJBQ0U9eQpDT05GSUdfS1BST0JFX0VWRU5UUz15CiMgQ09ORklH
X0tQUk9CRV9FVkVOVFNfT05fTk9UUkFDRSBpcyBub3Qgc2V0CkNPTkZJR19VUFJPQkVfRVZFTlRT
PXkKQ09ORklHX0JQRl9FVkVOVFM9eQpDT05GSUdfRFlOQU1JQ19FVkVOVFM9eQpDT05GSUdfUFJP
QkVfRVZFTlRTPXkKQ09ORklHX0ZUUkFDRV9NQ09VTlRfUkVDT1JEPXkKQ09ORklHX0ZUUkFDRV9N
Q09VTlRfVVNFX1BBVENIQUJMRV9GVU5DVElPTl9FTlRSWT15CiMgQ09ORklHX1NZTlRIX0VWRU5U
UyBpcyBub3Qgc2V0CiMgQ09ORklHX0hJU1RfVFJJR0dFUlMgaXMgbm90IHNldAojIENPTkZJR19U
UkFDRV9FVkVOVF9JTkpFQ1QgaXMgbm90IHNldAojIENPTkZJR19UUkFDRVBPSU5UX0JFTkNITUFS
SyBpcyBub3Qgc2V0CiMgQ09ORklHX1JJTkdfQlVGRkVSX0JFTkNITUFSSyBpcyBub3Qgc2V0CiMg
Q09ORklHX1RSQUNFX0VWQUxfTUFQX0ZJTEUgaXMgbm90IHNldAojIENPTkZJR19GVFJBQ0VfUkVD
T1JEX1JFQ1VSU0lPTiBpcyBub3Qgc2V0CiMgQ09ORklHX0ZUUkFDRV9TVEFSVFVQX1RFU1QgaXMg
bm90IHNldAojIENPTkZJR19SSU5HX0JVRkZFUl9TVEFSVFVQX1RFU1QgaXMgbm90IHNldAojIENP
TkZJR19SSU5HX0JVRkZFUl9WQUxJREFURV9USU1FX0RFTFRBUyBpcyBub3Qgc2V0CiMgQ09ORklH
X1BSRUVNUFRJUlFfREVMQVlfVEVTVCBpcyBub3Qgc2V0CiMgQ09ORklHX0tQUk9CRV9FVkVOVF9H
RU5fVEVTVCBpcyBub3Qgc2V0CiMgQ09ORklHX1NBTVBMRVMgaXMgbm90IHNldApDT05GSUdfU1RS
SUNUX0RFVk1FTT15CiMgQ09ORklHX0lPX1NUUklDVF9ERVZNRU0gaXMgbm90IHNldAoKIwojIGFy
bTY0IERlYnVnZ2luZwojCiMgQ09ORklHX1BJRF9JTl9DT05URVhUSURSIGlzIG5vdCBzZXQKIyBD
T05GSUdfQVJNNjRfUkVMT0NfVEVTVCBpcyBub3Qgc2V0CiMgQ09ORklHX0NPUkVTSUdIVCBpcyBu
b3Qgc2V0CiMgZW5kIG9mIGFybTY0IERlYnVnZ2luZwoKIwojIEtlcm5lbCBUZXN0aW5nIGFuZCBD
b3ZlcmFnZQojCiMgQ09ORklHX0tVTklUIGlzIG5vdCBzZXQKIyBDT05GSUdfRlVOQ1RJT05fRVJS
T1JfSU5KRUNUSU9OIGlzIG5vdCBzZXQKQ09ORklHX0FSQ0hfSEFTX0tDT1Y9eQpDT05GSUdfQ0Nf
SEFTX1NBTkNPVl9UUkFDRV9QQz15CiMgQ09ORklHX0tDT1YgaXMgbm90IHNldApDT05GSUdfUlVO
VElNRV9URVNUSU5HX01FTlU9eQojIENPTkZJR19MS0RUTSBpcyBub3Qgc2V0CiMgQ09ORklHX1RF
U1RfTUlOX0hFQVAgaXMgbm90IHNldAojIENPTkZJR19URVNUX0RJVjY0IGlzIG5vdCBzZXQKIyBD
T05GSUdfUkVFRF9TT0xPTU9OX1RFU1QgaXMgbm90IHNldAojIENPTkZJR19BVE9NSUM2NF9TRUxG
VEVTVCBpcyBub3Qgc2V0CiMgQ09ORklHX0FTWU5DX1JBSUQ2X1RFU1QgaXMgbm90IHNldAojIENP
TkZJR19URVNUX0hFWERVTVAgaXMgbm90IHNldAojIENPTkZJR19TVFJJTkdfU0VMRlRFU1QgaXMg
bm90IHNldAojIENPTkZJR19URVNUX1NUUklOR19IRUxQRVJTIGlzIG5vdCBzZXQKIyBDT05GSUdf
VEVTVF9TVFJTQ1BZIGlzIG5vdCBzZXQKIyBDT05GSUdfVEVTVF9LU1RSVE9YIGlzIG5vdCBzZXQK
IyBDT05GSUdfVEVTVF9QUklOVEYgaXMgbm90IHNldAojIENPTkZJR19URVNUX1NDQU5GIGlzIG5v
dCBzZXQKIyBDT05GSUdfVEVTVF9CSVRNQVAgaXMgbm90IHNldAojIENPTkZJR19URVNUX1VVSUQg
aXMgbm90IHNldAojIENPTkZJR19URVNUX1hBUlJBWSBpcyBub3Qgc2V0CiMgQ09ORklHX1RFU1Rf
T1ZFUkZMT1cgaXMgbm90IHNldAojIENPTkZJR19URVNUX1JIQVNIVEFCTEUgaXMgbm90IHNldAoj
IENPTkZJR19URVNUX0hBU0ggaXMgbm90IHNldAojIENPTkZJR19URVNUX0lEQSBpcyBub3Qgc2V0
CiMgQ09ORklHX1RFU1RfTEtNIGlzIG5vdCBzZXQKIyBDT05GSUdfVEVTVF9CSVRPUFMgaXMgbm90
IHNldAojIENPTkZJR19URVNUX1ZNQUxMT0MgaXMgbm90IHNldAojIENPTkZJR19URVNUX1VTRVJf
Q09QWSBpcyBub3Qgc2V0CiMgQ09ORklHX1RFU1RfQlBGIGlzIG5vdCBzZXQKIyBDT05GSUdfVEVT
VF9CTEFDS0hPTEVfREVWIGlzIG5vdCBzZXQKIyBDT05GSUdfRklORF9CSVRfQkVOQ0hNQVJLIGlz
IG5vdCBzZXQKIyBDT05GSUdfVEVTVF9GSVJNV0FSRSBpcyBub3Qgc2V0CiMgQ09ORklHX1RFU1Rf
U1lTQ1RMIGlzIG5vdCBzZXQKIyBDT05GSUdfVEVTVF9VREVMQVkgaXMgbm90IHNldAojIENPTkZJ
R19URVNUX1NUQVRJQ19LRVlTIGlzIG5vdCBzZXQKIyBDT05GSUdfVEVTVF9LTU9EIGlzIG5vdCBz
ZXQKIyBDT05GSUdfVEVTVF9NRU1DQVRfUCBpcyBub3Qgc2V0CiMgQ09ORklHX1RFU1RfU1RBQ0tJ
TklUIGlzIG5vdCBzZXQKIyBDT05GSUdfVEVTVF9NRU1JTklUIGlzIG5vdCBzZXQKIyBDT05GSUdf
VEVTVF9GUkVFX1BBR0VTIGlzIG5vdCBzZXQKQ09ORklHX0FSQ0hfVVNFX01FTVRFU1Q9eQpDT05G
SUdfTUVNVEVTVD15CiMgZW5kIG9mIEtlcm5lbCBUZXN0aW5nIGFuZCBDb3ZlcmFnZQojIGVuZCBv
ZiBLZXJuZWwgaGFja2luZwo=

--_009_DM6PR07MB43168B0D4DEA80BF2474B9D89AC3ADM6PR07MB4316namp_
Content-Type: text/plain; name="dom0-linux-boot.txt"
Content-Description: dom0-linux-boot.txt
Content-Disposition: attachment; filename="dom0-linux-boot.txt"; size=129910;
	creation-date="Tue, 26 Sep 2023 19:28:07 GMT";
	modification-date="Tue, 26 Sep 2023 19:41:44 GMT"
Content-Transfer-Encoding: base64

WyAgICAwLjAwMDAwMF0gQm9vdGluZyBMaW51eCBvbiBwaHlzaWNhbCBDUFUgMHgwMDAwMDAwMDAw
IFsweDQxM2ZkMGMxXQpbICAgIDAuMDAwMDAwXSBMaW51eCB2ZXJzaW9uIDUuMTUuMTI0LXlvY3Rv
LXN0YW5kYXJkIChvZS11c2VyQG9lLWhvc3QpIChhYXJjaDY0LXBva3ktbGludXgtZ2NjIChHQ0Mp
IDExLjQuMCwgR05VIGxkIChHTlUgQmludXRpbHMpIDIuMzguMjAyMjA3MDgpICMxIFNNUCBQUkVF
TVBUIFRodSBBdWcgMyAxNzo1MzoyNiBVVEMgMjAyMwpbICAgIDAuMDAwMDAwXSBlZmk6IEVGSSB2
Mi43MCBieSBFREsgSUkKWyAgICAwLjAwMDAwMF0gZWZpOiBTTUJJT1M9MHgxYmNjMDAwMCBBQ1BJ
IDIuMD0weDE1ZTEwMDE4IE1FTUFUVFI9MHgxOWJkY2E5OCBSTkc9MHgxNWUxNmY5OCBNRU1SRVNF
UlZFPTB4MTVlMjYzMTggClsgICAgMC4wMDAwMDBdIHJhbmRvbTogY3JuZyBpbml0IGRvbmUKWyAg
ICAwLjAwMDAwMF0gQUNQSTogRWFybHkgdGFibGUgY2hlY2tzdW0gdmVyaWZpY2F0aW9uIGRpc2Fi
bGVkClsgICAgMC4wMDAwMDBdIEFDUEk6IFJTRFAgMHgwMDAwMDAwMDE1RTEwMDE4IDAwMDAyNCAo
djAyIEFNQVpPTikKWyAgICAwLjAwMDAwMF0gQUNQSTogWFNEVCAweDAwMDAwMDAwMTVFMUZFOTgg
MDAwMDhDICh2MDEgQU1BWk9OIEdSVlROMDAyIDAwMDAwMDAwIEFNWk4gMDEwMDAwMTMpClsgICAg
MC4wMDAwMDBdIEFDUEk6IEZBQ1AgMHgwMDAwMDAwMDE1RTFGQjk4IDAwMDExNCAodjA2IEFNQVpP
TiBHUlZUTjAwMiAwMDAwMDAwMCBBTVpOIDIwMjAwNDIyKQpbICAgIDAuMDAwMDAwXSBBQ1BJOiBE
U0RUIDB4MDAwMDAwMDAxNUUxNzUxOCAwMDVEODggKHYwMiBBTUFaT04gR1JWVE4wMDIgMDAwMDAw
MDAgQVJNSCAwMDAxMDAwMCkKWyAgICAwLjAwMDAwMF0gQUNQSTogSEVTVCAweDAwMDAwMDAwMTVF
MUZBOTggMDAwMEE4ICh2MDEgQU1BWk9OIEdSVlROMDAyIDAwMDAwMDAwIEFNWk4gMjAyMDA0MjIp
ClsgICAgMC4wMDAwMDBdIEFDUEk6IEdURFQgMHgwMDAwMDAwMDE1RTFGRDE4IDAwMDA2MCAodjAy
IEFNQVpPTiBHUlZUTjAwMiAwMDAwMDAwMCBBTVpOIDIwMjAwNDIyKQpbICAgIDAuMDAwMDAwXSBB
Q1BJOiBBUElDIDB4MDAwMDAwMDAxNUUxMDA5OCAwMDE0OTQgKHYwNSBBTUFaT04gR1JWVE4wMDIg
MDAwMDAwMDAgQU1aTiAyMDIwMDQyMikKWyAgICAwLjAwMDAwMF0gQUNQSTogU1JBVCAweDAwMDAw
MDAwMTVFMTY0MTggMDAwNUQ4ICh2MDMgQU1BWk9OIEdSVlROMDAyIDAwMDAwMDAwIEFNWk4gMjAy
MDA0MjIpClsgICAgMC4wMDAwMDBdIEFDUEk6IFNMSVQgMHgwMDAwMDAwMDE1RTFGRTE4IDAwMDAy
RCAodjAxIEFNQVpPTiBHUlZUTjAwMiAwMDAwMDAwMCBBTVpOIDIwMjAwNDIyKQpbICAgIDAuMDAw
MDAwXSBBQ1BJOiBNQ0ZHIDB4MDAwMDAwMDAxNUUxNkE5OCAwMDAwNkMgKHYwMSBBTUFaT04gR1JW
VE4wMDIgMDAwMDAwMDAgQU1aTiAyMDIwMDQyMikKWyAgICAwLjAwMDAwMF0gQUNQSTogUFBUVCAw
eDAwMDAwMDAwMTVFMUU5OTggMDAwQ0JFICh2MDIgQU1BWk9OIEdSVlROMDAyIDAwMDAwMDAwIEFN
Wk4gMjAyMDA0MjIpClsgICAgMC4wMDAwMDBdIEFDUEk6IFNERUkgMHgwMDAwMDAwMDE1RTE3NDk4
IDAwMDAyNCAodjAxIEFNQVpPTiBHUlZUTjAwMiAwMDAwMDAwMCBBTVpOIDIwMjAwNDIyKQpbICAg
IDAuMDAwMDAwXSBBQ1BJOiBJT1JUIDB4MDAwMDAwMDAxNUUxNkI5OCAwMDAyRDAgKHYwMCBBTUFa
T04gR1JWVE4wMDIgMDAwMDAwMDAgQU1aTiAyMDIwMDQyMikKWyAgICAwLjAwMDAwMF0gQUNQSTog
U1NEVCAweDAwMDAwMDAwMTVFMTFDMTggMDAwNURBICh2MDIgQU1BWk9OIEdSVlROMDAyIDAwMDAw
MDAwIEFSTUggMDAwMTAwMDApClsgICAgMC4wMDAwMDBdIEFDUEk6IFNTRFQgMHgwMDAwMDAwMDE1
RTE3MDk4IDAwMDA0QSAodjAyIEFNQVpPTiBHUlZUTjAwMiAwMDAwMDAwMCBBUk1IIDAwMDEwMDAw
KQpbICAgIDAuMDAwMDAwXSBBQ1BJOiBTUENSIDB4MDAwMDAwMDAxNUUxRkY5OCAwMDAwNTAgKHYw
MiBBTUFaT04gR1JWVE4wMDIgMDAwMDAwMDAgQU1aTiAyMDIwMDQyMikKWyAgICAwLjAwMDAwMF0g
QUNQSTogU1BDUjogY29uc29sZTogdWFydCxtbWlvLDB4ODNlMDAwMDAsMTE1MjAwClsgICAgMC4w
MDAwMDBdIEFDUEk6IFNSQVQ6IE5vZGUgMCBQWE0gMCBbbWVtIDB4MDAwMDAwMDAtMHg3ZmZmZmZm
Zl0KWyAgICAwLjAwMDAwMF0gQUNQSTogU1JBVDogTm9kZSAwIFBYTSAwIFttZW0gMHgxMDAwMDAw
MDAtMHg3ZmZmZmZmZmZmXQpbICAgIDAuMDAwMDAwXSBBQ1BJOiBTUkFUOiBOb2RlIDAgUFhNIDAg
W21lbSAweDgxMDAwMDAwMDAtMHg4MTdmZmZmZmZmXQpbICAgIDAuMDAwMDAwXSBBQ1BJOiBTUkFU
OiBOb2RlIDAgUFhNIDAgW21lbSAweDEwMDAwMDAwMDAwLTB4MjdmZmZmZmZmZmZdClsgICAgMC4w
MDAwMDBdIE5VTUE6IE5PREVfREFUQSBbbWVtIDB4ODE2ZmY4M2MwMC0weDgxNmZmODVmZmZdClsg
ICAgMC4wMDAwMDBdIFpvbmUgcmFuZ2VzOgpbICAgIDAuMDAwMDAwXSAgIERNQSAgICAgIFttZW0g
MHgwMDAwMDAwMDAwMDAwMDAwLTB4MDAwMDAwMDBmZmZmZmZmZl0KWyAgICAwLjAwMDAwMF0gICBE
TUEzMiAgICBlbXB0eQpbICAgIDAuMDAwMDAwXSAgIE5vcm1hbCAgIFttZW0gMHgwMDAwMDAwMTAw
MDAwMDAwLTB4MDAwMDAwODE3ZmZmZmZmZl0KWyAgICAwLjAwMDAwMF0gTW92YWJsZSB6b25lIHN0
YXJ0IGZvciBlYWNoIG5vZGUKWyAgICAwLjAwMDAwMF0gRWFybHkgbWVtb3J5IG5vZGUgcmFuZ2Vz
ClsgICAgMC4wMDAwMDBdICAgbm9kZSAgIDA6IFttZW0gMHgwMDAwMDAwMDAwMDAwMDAwLTB4MDAw
MDAwMDAwMDFmZmZmZl0KWyAgICAwLjAwMDAwMF0gICBub2RlICAgMDogW21lbSAweDAwMDAwMDAw
MDAyMDAwMDAtMHgwMDAwMDAwMDE1ZTI2ZmZmXQpbICAgIDAuMDAwMDAwXSAgIG5vZGUgICAwOiBb
bWVtIDB4MDAwMDAwMDAxNWUyNzAwMC0weDAwMDAwMDAwMTVlMmJmZmZdClsgICAgMC4wMDAwMDBd
ICAgbm9kZSAgIDA6IFttZW0gMHgwMDAwMDAwMDE1ZTJjMDAwLTB4MDAwMDAwMDAxYjQyZmZmZl0K
WyAgICAwLjAwMDAwMF0gICBub2RlICAgMDogW21lbSAweDAwMDAwMDAwMWI0MzAwMDAtMHgwMDAw
MDAwMDFiODBmZmZmXQpbICAgIDAuMDAwMDAwXSAgIG5vZGUgICAwOiBbbWVtIDB4MDAwMDAwMDAx
YjgxMDAwMC0weDAwMDAwMDAwMWJjYWZmZmZdClsgICAgMC4wMDAwMDBdICAgbm9kZSAgIDA6IFtt
ZW0gMHgwMDAwMDAwMDFiY2IwMDAwLTB4MDAwMDAwMDAxYmZlZmZmZl0KWyAgICAwLjAwMDAwMF0g
ICBub2RlICAgMDogW21lbSAweDAwMDAwMDAwMWJmZjAwMDAtMHgwMDAwMDAwMDdmZmZmZmZmXQpb
ICAgIDAuMDAwMDAwXSAgIG5vZGUgICAwOiBbbWVtIDB4MDAwMDAwMDEwMDAwMDAwMC0weDAwMDAw
MDFmZmZmZmZmZmZdClsgICAgMC4wMDAwMDBdICAgbm9kZSAgIDA6IFttZW0gMHgwMDAwMDA4MTAw
MDAwMDAwLTB4MDAwMDAwODE3ZmZmZmZmZl0KWyAgICAwLjAwMDAwMF0gSW5pdG1lbSBzZXR1cCBu
b2RlIDAgW21lbSAweDAwMDAwMDAwMDAwMDAwMDAtMHgwMDAwMDA4MTdmZmZmZmZmXQpbICAgIDAu
MDAwMDAwXSBjbWE6IFJlc2VydmVkIDMyIE1pQiBhdCAweDAwMDAwMDAwN2UwMDAwMDAKWyAgICAw
LjAwMDAwMF0gcHNjaTogcHJvYmluZyBmb3IgY29uZHVpdCBtZXRob2QgZnJvbSBBQ1BJLgpbICAg
IDAuMDAwMDAwXSBwc2NpOiBQU0NJdjEuMSBkZXRlY3RlZCBpbiBmaXJtd2FyZS4KWyAgICAwLjAw
MDAwMF0gcHNjaTogVXNpbmcgc3RhbmRhcmQgUFNDSSB2MC4yIGZ1bmN0aW9uIElEcwpbICAgIDAu
MDAwMDAwXSBwc2NpOiBNSUdSQVRFX0lORk9fVFlQRSBub3Qgc3VwcG9ydGVkLgpbICAgIDAuMDAw
MDAwXSBwc2NpOiBTTUMgQ2FsbGluZyBDb252ZW50aW9uIHYxLjEKWyAgICAwLjAwMDAwMF0gQUNQ
STogTlVNQTogU1JBVDogUFhNIDAgLT4gTVBJRFIgMHgwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAw
XSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDEwMDAwIC0+IE5vZGUgMApbICAg
IDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDIwMDAwIC0+IE5v
ZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDMw
MDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBN
UElEUiAweDQwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQ
WE0gMCAtPiBNUElEUiAweDUwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1B
OiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDYwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBB
Q1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDcwMDAwIC0+IE5vZGUgMApbICAgIDAu
MDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDgwMDAwIC0+IE5vZGUg
MApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDkwMDAw
IC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElE
UiAweGEwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0g
MCAtPiBNUElEUiAweGIwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBT
UkFUOiBQWE0gMCAtPiBNUElEUiAweGMwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJ
OiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweGQwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAw
MDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweGUwMDAwIC0+IE5vZGUgMApb
ICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweGYwMDAwIC0+
IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAw
eDEwMDAwMDAwMCAtPiBOb2RlIDAKWyAgICAwLjAwMDAwMF0gQUNQSTogTlVNQTogU1JBVDogUFhN
IDAgLT4gTVBJRFIgMHgxMDAwMTAwMDAgLT4gTm9kZSAwClsgICAgMC4wMDAwMDBdIEFDUEk6IE5V
TUE6IFNSQVQ6IFBYTSAwIC0+IE1QSURSIDB4MTAwMDIwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAw
MDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDEwMDAzMDAwMCAtPiBOb2Rl
IDAKWyAgICAwLjAwMDAwMF0gQUNQSTogTlVNQTogU1JBVDogUFhNIDAgLT4gTVBJRFIgMHgxMDAw
NDAwMDAgLT4gTm9kZSAwClsgICAgMC4wMDAwMDBdIEFDUEk6IE5VTUE6IFNSQVQ6IFBYTSAwIC0+
IE1QSURSIDB4MTAwMDUwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBT
UkFUOiBQWE0gMCAtPiBNUElEUiAweDEwMDA2MDAwMCAtPiBOb2RlIDAKWyAgICAwLjAwMDAwMF0g
QUNQSTogTlVNQTogU1JBVDogUFhNIDAgLT4gTVBJRFIgMHgxMDAwNzAwMDAgLT4gTm9kZSAwClsg
ICAgMC4wMDAwMDBdIEFDUEk6IE5VTUE6IFNSQVQ6IFBYTSAwIC0+IE1QSURSIDB4MTAwMDgwMDAw
IC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElE
UiAweDEwMDA5MDAwMCAtPiBOb2RlIDAKWyAgICAwLjAwMDAwMF0gQUNQSTogTlVNQTogU1JBVDog
UFhNIDAgLT4gTVBJRFIgMHgxMDAwYTAwMDAgLT4gTm9kZSAwClsgICAgMC4wMDAwMDBdIEFDUEk6
IE5VTUE6IFNSQVQ6IFBYTSAwIC0+IE1QSURSIDB4MTAwMGIwMDAwIC0+IE5vZGUgMApbICAgIDAu
MDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDEwMDBjMDAwMCAtPiBO
b2RlIDAKWyAgICAwLjAwMDAwMF0gQUNQSTogTlVNQTogU1JBVDogUFhNIDAgLT4gTVBJRFIgMHgx
MDAwZDAwMDAgLT4gTm9kZSAwClsgICAgMC4wMDAwMDBdIEFDUEk6IE5VTUE6IFNSQVQ6IFBYTSAw
IC0+IE1QSURSIDB4MTAwMGUwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1B
OiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDEwMDBmMDAwMCAtPiBOb2RlIDAKWyAgICAwLjAwMDAw
MF0gQUNQSTogTlVNQTogU1JBVDogUFhNIDAgLT4gTVBJRFIgMHgyMDAwMDAwMDAgLT4gTm9kZSAw
ClsgICAgMC4wMDAwMDBdIEFDUEk6IE5VTUE6IFNSQVQ6IFBYTSAwIC0+IE1QSURSIDB4MjAwMDEw
MDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBN
UElEUiAweDIwMDAyMDAwMCAtPiBOb2RlIDAKWyAgICAwLjAwMDAwMF0gQUNQSTogTlVNQTogU1JB
VDogUFhNIDAgLT4gTVBJRFIgMHgyMDAwMzAwMDAgLT4gTm9kZSAwClsgICAgMC4wMDAwMDBdIEFD
UEk6IE5VTUE6IFNSQVQ6IFBYTSAwIC0+IE1QSURSIDB4MjAwMDQwMDAwIC0+IE5vZGUgMApbICAg
IDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDIwMDA1MDAwMCAt
PiBOb2RlIDAKWyAgICAwLjAwMDAwMF0gQUNQSTogTlVNQTogU1JBVDogUFhNIDAgLT4gTVBJRFIg
MHgyMDAwNjAwMDAgLT4gTm9kZSAwClsgICAgMC4wMDAwMDBdIEFDUEk6IE5VTUE6IFNSQVQ6IFBY
TSAwIC0+IE1QSURSIDB4MjAwMDcwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBO
VU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDIwMDA4MDAwMCAtPiBOb2RlIDAKWyAgICAwLjAw
MDAwMF0gQUNQSTogTlVNQTogU1JBVDogUFhNIDAgLT4gTVBJRFIgMHgyMDAwOTAwMDAgLT4gTm9k
ZSAwClsgICAgMC4wMDAwMDBdIEFDUEk6IE5VTUE6IFNSQVQ6IFBYTSAwIC0+IE1QSURSIDB4MjAw
MGEwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAt
PiBNUElEUiAweDIwMDBiMDAwMCAtPiBOb2RlIDAKWyAgICAwLjAwMDAwMF0gQUNQSTogTlVNQTog
U1JBVDogUFhNIDAgLT4gTVBJRFIgMHgyMDAwYzAwMDAgLT4gTm9kZSAwClsgICAgMC4wMDAwMDBd
IEFDUEk6IE5VTUE6IFNSQVQ6IFBYTSAwIC0+IE1QSURSIDB4MjAwMGQwMDAwIC0+IE5vZGUgMApb
ICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDIwMDBlMDAw
MCAtPiBOb2RlIDAKWyAgICAwLjAwMDAwMF0gQUNQSTogTlVNQTogU1JBVDogUFhNIDAgLT4gTVBJ
RFIgMHgyMDAwZjAwMDAgLT4gTm9kZSAwClsgICAgMC4wMDAwMDBdIEFDUEk6IE5VTUE6IFNSQVQ6
IFBYTSAwIC0+IE1QSURSIDB4MzAwMDAwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJ
OiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDMwMDAxMDAwMCAtPiBOb2RlIDAKWyAgICAw
LjAwMDAwMF0gQUNQSTogTlVNQTogU1JBVDogUFhNIDAgLT4gTVBJRFIgMHgzMDAwMjAwMDAgLT4g
Tm9kZSAwClsgICAgMC4wMDAwMDBdIEFDUEk6IE5VTUE6IFNSQVQ6IFBYTSAwIC0+IE1QSURSIDB4
MzAwMDMwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0g
MCAtPiBNUElEUiAweDMwMDA0MDAwMCAtPiBOb2RlIDAKWyAgICAwLjAwMDAwMF0gQUNQSTogTlVN
QTogU1JBVDogUFhNIDAgLT4gTVBJRFIgMHgzMDAwNTAwMDAgLT4gTm9kZSAwClsgICAgMC4wMDAw
MDBdIEFDUEk6IE5VTUE6IFNSQVQ6IFBYTSAwIC0+IE1QSURSIDB4MzAwMDYwMDAwIC0+IE5vZGUg
MApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDMwMDA3
MDAwMCAtPiBOb2RlIDAKWyAgICAwLjAwMDAwMF0gQUNQSTogTlVNQTogU1JBVDogUFhNIDAgLT4g
TVBJRFIgMHgzMDAwODAwMDAgLT4gTm9kZSAwClsgICAgMC4wMDAwMDBdIEFDUEk6IE5VTUE6IFNS
QVQ6IFBYTSAwIC0+IE1QSURSIDB4MzAwMDkwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBB
Q1BJOiBOVU1BOiBTUkFUOiBQWE0gMCAtPiBNUElEUiAweDMwMDBhMDAwMCAtPiBOb2RlIDAKWyAg
ICAwLjAwMDAwMF0gQUNQSTogTlVNQTogU1JBVDogUFhNIDAgLT4gTVBJRFIgMHgzMDAwYjAwMDAg
LT4gTm9kZSAwClsgICAgMC4wMDAwMDBdIEFDUEk6IE5VTUE6IFNSQVQ6IFBYTSAwIC0+IE1QSURS
IDB4MzAwMGMwMDAwIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBBQ1BJOiBOVU1BOiBTUkFUOiBQ
WE0gMCAtPiBNUElEUiAweDMwMDBkMDAwMCAtPiBOb2RlIDAKWyAgICAwLjAwMDAwMF0gQUNQSTog
TlVNQTogU1JBVDogUFhNIDAgLT4gTVBJRFIgMHgzMDAwZTAwMDAgLT4gTm9kZSAwClsgICAgMC4w
MDAwMDBdIEFDUEk6IE5VTUE6IFNSQVQ6IFBYTSAwIC0+IE1QSURSIDB4MzAwMGYwMDAwIC0+IE5v
ZGUgMApbICAgIDAuMDAwMDAwXSBwZXJjcHU6IEVtYmVkZGVkIDI5IHBhZ2VzL2NwdSBzODA3OTIg
cjgxOTIgZDI5ODAwIHUxMTg3ODQKWyAgICAwLjAwMDAwMF0gcGNwdS1hbGxvYzogczgwNzkyIHI4
MTkyIGQyOTgwMCB1MTE4Nzg0IGFsbG9jPTI5KjQwOTYKWyAgICAwLjAwMDAwMF0gcGNwdS1hbGxv
YzogWzBdIDAwIFswXSAwMSBbMF0gMDIgWzBdIDAzIFswXSAwNCBbMF0gMDUgWzBdIDA2IFswXSAw
NyAKWyAgICAwLjAwMDAwMF0gcGNwdS1hbGxvYzogWzBdIDA4IFswXSAwOSBbMF0gMTAgWzBdIDEx
IFswXSAxMiBbMF0gMTMgWzBdIDE0IFswXSAxNSAKWyAgICAwLjAwMDAwMF0gcGNwdS1hbGxvYzog
WzBdIDE2IFswXSAxNyBbMF0gMTggWzBdIDE5IFswXSAyMCBbMF0gMjEgWzBdIDIyIFswXSAyMyAK
WyAgICAwLjAwMDAwMF0gcGNwdS1hbGxvYzogWzBdIDI0IFswXSAyNSBbMF0gMjYgWzBdIDI3IFsw
XSAyOCBbMF0gMjkgWzBdIDMwIFswXSAzMSAKWyAgICAwLjAwMDAwMF0gcGNwdS1hbGxvYzogWzBd
IDMyIFswXSAzMyBbMF0gMzQgWzBdIDM1IFswXSAzNiBbMF0gMzcgWzBdIDM4IFswXSAzOSAKWyAg
ICAwLjAwMDAwMF0gcGNwdS1hbGxvYzogWzBdIDQwIFswXSA0MSBbMF0gNDIgWzBdIDQzIFswXSA0
NCBbMF0gNDUgWzBdIDQ2IFswXSA0NyAKWyAgICAwLjAwMDAwMF0gcGNwdS1hbGxvYzogWzBdIDQ4
IFswXSA0OSBbMF0gNTAgWzBdIDUxIFswXSA1MiBbMF0gNTMgWzBdIDU0IFswXSA1NSAKWyAgICAw
LjAwMDAwMF0gcGNwdS1hbGxvYzogWzBdIDU2IFswXSA1NyBbMF0gNTggWzBdIDU5IFswXSA2MCBb
MF0gNjEgWzBdIDYyIFswXSA2MyAKWyAgICAwLjAwMDAwMF0gRGV0ZWN0ZWQgUElQVCBJLWNhY2hl
IG9uIENQVTAKWyAgICAwLjAwMDAwMF0gQ1BVIGZlYXR1cmVzOiBkZXRlY3RlZDogR0lDIHN5c3Rl
bSByZWdpc3RlciBDUFUgaW50ZXJmYWNlClsgICAgMC4wMDAwMDBdIENQVSBmZWF0dXJlczogZGV0
ZWN0ZWQ6IFZpcnR1YWxpemF0aW9uIEhvc3QgRXh0ZW5zaW9ucwpbICAgIDAuMDAwMDAwXSBDUFUg
ZmVhdHVyZXM6IGRldGVjdGVkOiBIYXJkd2FyZSBkaXJ0eSBiaXQgbWFuYWdlbWVudApbICAgIDAu
MDAwMDAwXSBDUFUgZmVhdHVyZXM6IGRldGVjdGVkOiBTcGVjdHJlLXY0ClsgICAgMC4wMDAwMDBd
IENQVSBmZWF0dXJlczogZGV0ZWN0ZWQ6IFNwZWN0cmUtQkhCClsgICAgMC4wMDAwMDBdIENQVSBm
ZWF0dXJlczoga2VybmVsIHBhZ2UgdGFibGUgaXNvbGF0aW9uIGZvcmNlZCBPTiBieSBLQVNMUgpb
ICAgIDAuMDAwMDAwXSBDUFUgZmVhdHVyZXM6IGRldGVjdGVkOiBLZXJuZWwgcGFnZSB0YWJsZSBp
c29sYXRpb24gKEtQVEkpClsgICAgMC4wMDAwMDBdIENQVSBmZWF0dXJlczogZGV0ZWN0ZWQ6IEFS
TSBlcnJhdHVtIDE0MTgwNDAKWyAgICAwLjAwMDAwMF0gQ1BVIGZlYXR1cmVzOiBkZXRlY3RlZDog
QVJNIGVycmF0dW0gMTU0MjQxOSAoa2VybmVsIHBvcnRpb24pClsgICAgMC4wMDAwMDBdIGFsdGVy
bmF0aXZlczogcGF0Y2hpbmcga2VybmVsIGNvZGUKWyAgICAwLjAwMDAwMF0gQnVpbHQgMSB6b25l
bGlzdHMsIG1vYmlsaXR5IGdyb3VwaW5nIG9uLiAgVG90YWwgcGFnZXM6IDMzMDMwMTQ0ClsgICAg
MC4wMDAwMDBdIFBvbGljeSB6b25lOiBOb3JtYWwKWyAgICAwLjAwMDAwMF0gS2VybmVsIGNvbW1h
bmQgbGluZTogTEFCRUw9Qm9vdCByb290PVBBUlRVVUlEPTAxMGQ2NzRjLTE2OTgtNGNiZi1hMjkw
LWFkYThjNTYwNzMzZCByb290d2FpdCByb290ZnN0eXBlPWV4dDQKWyAgICAwLjAwMDAwMF0gVW5r
bm93biBrZXJuZWwgY29tbWFuZCBsaW5lIHBhcmFtZXRlcnMgIkxBQkVMPUJvb3QiLCB3aWxsIGJl
IHBhc3NlZCB0byB1c2VyIHNwYWNlLgpbICAgIDAuMDAwMDAwXSBwcmludGs6IGxvZ19idWZfbGVu
IGluZGl2aWR1YWwgbWF4IGNwdSBjb250cmlidXRpb246IDQwOTYgYnl0ZXMKWyAgICAwLjAwMDAw
MF0gcHJpbnRrOiBsb2dfYnVmX2xlbiB0b3RhbCBjcHVfZXh0cmEgY29udHJpYnV0aW9uczogMjU4
MDQ4IGJ5dGVzClsgICAgMC4wMDAwMDBdIHByaW50azogbG9nX2J1Zl9sZW4gbWluIHNpemU6IDEz
MTA3MiBieXRlcwpbICAgIDAuMDAwMDAwXSBwcmludGs6IGxvZ19idWZfbGVuOiA1MjQyODggYnl0
ZXMKWyAgICAwLjAwMDAwMF0gcHJpbnRrOiBlYXJseSBsb2cgYnVmIGZyZWU6IDEyMTQwMCg5MiUp
ClsgICAgMC4wMDAwMDBdIERlbnRyeSBjYWNoZSBoYXNoIHRhYmxlIGVudHJpZXM6IDgzODg2MDgg
KG9yZGVyOiAxNCwgNjcxMDg4NjQgYnl0ZXMsIGxpbmVhcikKWyAgICAwLjAwMDAwMF0gSW5vZGUt
Y2FjaGUgaGFzaCB0YWJsZSBlbnRyaWVzOiA0MTk0MzA0IChvcmRlcjogMTMsIDMzNTU0NDMyIGJ5
dGVzLCBsaW5lYXIpClsgICAgMC4wMDAwMDBdIG1lbSBhdXRvLWluaXQ6IHN0YWNrOm9mZiwgaGVh
cCBhbGxvYzpvZmYsIGhlYXAgZnJlZTpvZmYKWyAgICAwLjAwMDAwMF0gc29mdHdhcmUgSU8gVExC
OiBtYXBwZWQgW21lbSAweDAwMDAwMDAwN2EwMDAwMDAtMHgwMDAwMDAwMDdlMDAwMDAwXSAoNjRN
QikKWyAgICAwLjAwMDAwMF0gTWVtb3J5OiAxMzE1OTQ5OTJLLzEzNDIxNzcyOEsgYXZhaWxhYmxl
ICgyMDY3Mksga2VybmVsIGNvZGUsIDQzNjBLIHJ3ZGF0YSwgODIxNksgcm9kYXRhLCAxMDA0OEsg
aW5pdCwgODQzSyBic3MsIDI1ODk5NjhLIHJlc2VydmVkLCAzMjc2OEsgY21hLXJlc2VydmVkKQpb
ICAgIDAuMDAwMDAwXSBTTFVCOiBIV2FsaWduPTY0LCBPcmRlcj0wLTMsIE1pbk9iamVjdHM9MCwg
Q1BVcz02NCwgTm9kZXM9MQpbICAgIDAuMDAwMDAwXSBmdHJhY2U6IGFsbG9jYXRpbmcgNjc2NjAg
ZW50cmllcyBpbiAyNjUgcGFnZXMKWyAgICAwLjAwMDAwMF0gZnRyYWNlOiBhbGxvY2F0ZWQgMjY1
IHBhZ2VzIHdpdGggMyBncm91cHMKWyAgICAwLjAwMDAwMF0gdHJhY2UgZXZlbnQgc3RyaW5nIHZl
cmlmaWVyIGRpc2FibGVkClsgICAgMC4wMDAwMDBdIHJjdTogUHJlZW1wdGlibGUgaGllcmFyY2hp
Y2FsIFJDVSBpbXBsZW1lbnRhdGlvbi4KWyAgICAwLjAwMDAwMF0gcmN1OiAJUkNVIHJlc3RyaWN0
aW5nIENQVXMgZnJvbSBOUl9DUFVTPTI1NiB0byBucl9jcHVfaWRzPTY0LgpbICAgIDAuMDAwMDAw
XSAJVHJhbXBvbGluZSB2YXJpYW50IG9mIFRhc2tzIFJDVSBlbmFibGVkLgpbICAgIDAuMDAwMDAw
XSAJUnVkZSB2YXJpYW50IG9mIFRhc2tzIFJDVSBlbmFibGVkLgpbICAgIDAuMDAwMDAwXSAJVHJh
Y2luZyB2YXJpYW50IG9mIFRhc2tzIFJDVSBlbmFibGVkLgpbICAgIDAuMDAwMDAwXSByY3U6IFJD
VSBjYWxjdWxhdGVkIHZhbHVlIG9mIHNjaGVkdWxlci1lbmxpc3RtZW50IGRlbGF5IGlzIDI1IGpp
ZmZpZXMuClsgICAgMC4wMDAwMDBdIHJjdTogQWRqdXN0aW5nIGdlb21ldHJ5IGZvciByY3VfZmFu
b3V0X2xlYWY9MTYsIG5yX2NwdV9pZHM9NjQKWyAgICAwLjAwMDAwMF0gTlJfSVJRUzogNjQsIG5y
X2lycXM6IDY0LCBwcmVhbGxvY2F0ZWQgaXJxczogMApbICAgIDAuMDAwMDAwXSBHSUN2MzogR0lD
OiBVc2luZyBzcGxpdCBFT0kvRGVhY3RpdmF0ZSBtb2RlClsgICAgMC4wMDAwMDBdIEdJQ3YzOiA5
NjAgU1BJcyBpbXBsZW1lbnRlZApbICAgIDAuMDAwMDAwXSBHSUN2MzogMCBFeHRlbmRlZCBTUElz
IGltcGxlbWVudGVkClsgICAgMC4wMDAwMDBdIEdJQ3YzOiBEaXN0cmlidXRvciBoYXMgbm8gUmFu
Z2UgU2VsZWN0b3Igc3VwcG9ydApbICAgIDAuMDAwMDAwXSBSb290IElSUSBoYW5kbGVyOiBnaWNf
aGFuZGxlX2lycQpbICAgIDAuMDAwMDAwXSBHSUN2MzogMTYgUFBJcyBpbXBsZW1lbnRlZApbICAg
IDAuMDAwMDAwXSBHSUN2MzogQ1BVMDogZm91bmQgcmVkaXN0cmlidXRvciAwIHJlZ2lvbiAwOjB4
MDAwMDAwYmMwMDA4MDAwMApbICAgIDAuMDAwMDAwXSBTUkFUOiBQWE0gMCAtPiBJVFMgMCAtPiBO
b2RlIDAKWyAgICAwLjAwMDAwMF0gU1JBVDogUFhNIDAgLT4gSVRTIDEgLT4gTm9kZSAwClsgICAg
MC4wMDAwMDBdIFNSQVQ6IFBYTSAwIC0+IElUUyAyIC0+IE5vZGUgMApbICAgIDAuMDAwMDAwXSBT
UkFUOiBQWE0gMCAtPiBJVFMgMyAtPiBOb2RlIDAKWyAgICAwLjAwMDAwMF0gU1JBVDogUFhNIDAg
LT4gSVRTIDQgLT4gTm9kZSAwClsgICAgMC4wMDAwMDBdIFNSQVQ6IFBYTSAwIC0+IElUUyA1IC0+
IE5vZGUgMApbICAgIDAuMDAwMDAwXSBTUkFUOiBQWE0gMCAtPiBJVFMgNiAtPiBOb2RlIDAKWyAg
ICAwLjAwMDAwMF0gU1JBVDogUFhNIDAgLT4gSVRTIDcgLT4gTm9kZSAwClsgICAgMC4wMDAwMDBd
IElUUyBbbWVtIDB4YmMwMDA0MDAwMC0weGJjMDAwNWZmZmZdClsgICAgMC4wMDAwMDBdIElUU0Aw
eDAwMDAwMGJjMDAwNDAwMDA6IGFsbG9jYXRlZCA4MTkyIERldmljZXMgQDEwMDMyMDAwMCAoaW5k
aXJlY3QsIGVzeiA4LCBwc3ogNjRLLCBzaHIgMSkKWyAgICAwLjAwMDAwMF0gSVRTQDB4MDAwMDAw
YmMwMDA0MDAwMDogYWxsb2NhdGVkIDMyNzY4IEludGVycnVwdCBDb2xsZWN0aW9ucyBAMTAwMzMw
MDAwIChmbGF0LCBlc3ogMiwgcHN6IDY0Sywgc2hyIDEpClsgICAgMC4wMDAwMDBdIElUUyBbbWVt
IDB4YmQwMDA0MDAwMC0weGJkMDAwNWZmZmZdClsgICAgMC4wMDAwMDBdIElUU0AweDAwMDAwMGJk
MDAwNDAwMDA6IGFsbG9jYXRlZCA4MTkyIERldmljZXMgQDEwMDM1MDAwMCAoaW5kaXJlY3QsIGVz
eiA4LCBwc3ogNjRLLCBzaHIgMSkKWyAgICAwLjAwMDAwMF0gSVRTQDB4MDAwMDAwYmQwMDA0MDAw
MDogYWxsb2NhdGVkIDMyNzY4IEludGVycnVwdCBDb2xsZWN0aW9ucyBAMTAwMzYwMDAwIChmbGF0
LCBlc3ogMiwgcHN6IDY0Sywgc2hyIDEpClsgICAgMC4wMDAwMDBdIElUUyBbbWVtIDB4YmUwMDA0
MDAwMC0weGJlMDAwNWZmZmZdClsgICAgMC4wMDAwMDBdIElUU0AweDAwMDAwMGJlMDAwNDAwMDA6
IGFsbG9jYXRlZCA4MTkyIERldmljZXMgQDEwMDM4MDAwMCAoaW5kaXJlY3QsIGVzeiA4LCBwc3og
NjRLLCBzaHIgMSkKWyAgICAwLjAwMDAwMF0gSVRTQDB4MDAwMDAwYmUwMDA0MDAwMDogYWxsb2Nh
dGVkIDMyNzY4IEludGVycnVwdCBDb2xsZWN0aW9ucyBAMTAwMzkwMDAwIChmbGF0LCBlc3ogMiwg
cHN6IDY0Sywgc2hyIDEpClsgICAgMC4wMDAwMDBdIElUUyBbbWVtIDB4YmYwMDA0MDAwMC0weGJm
MDAwNWZmZmZdClsgICAgMC4wMDAwMDBdIElUU0AweDAwMDAwMGJmMDAwNDAwMDA6IGFsbG9jYXRl
ZCA4MTkyIERldmljZXMgQDEwMDNiMDAwMCAoaW5kaXJlY3QsIGVzeiA4LCBwc3ogNjRLLCBzaHIg
MSkKWyAgICAwLjAwMDAwMF0gSVRTQDB4MDAwMDAwYmYwMDA0MDAwMDogYWxsb2NhdGVkIDMyNzY4
IEludGVycnVwdCBDb2xsZWN0aW9ucyBAMTAwM2MwMDAwIChmbGF0LCBlc3ogMiwgcHN6IDY0Sywg
c2hyIDEpClsgICAgMC4wMDAwMDBdIEdJQ3YzOiB1c2luZyBMUEkgcHJvcGVydHkgdGFibGUgQDB4
MDAwMDAwMDEwMDNkMDAwMApbICAgIDAuMDAwMDAwXSBHSUN2MzogQ1BVMDogdXNpbmcgYWxsb2Nh
dGVkIExQSSBwZW5kaW5nIHRhYmxlIEAweDAwMDAwMDAxMDAzZTAwMDAKWyAgICAwLjAwMDAwMF0g
a2ZlbmNlOiBpbml0aWFsaXplZCAtIHVzaW5nIDIwOTcxNTIgYnl0ZXMgZm9yIDI1NSBvYmplY3Rz
IGF0IDB4KF9fX19wdHJ2YWxfX19fKS0weChfX19fcHRydmFsX19fXykKWyAgICAwLjAwMDAwMF0g
YXJjaF90aW1lcjogRW5hYmxpbmcgbG9jYWwgd29ya2Fyb3VuZCBmb3IgQVJNIGVycmF0dW0gMTQx
ODA0MApbICAgIDAuMDAwMDAwXSBhcmNoX3RpbWVyOiBjcDE1IHRpbWVyKHMpIHJ1bm5pbmcgYXQg
MTIxLjg3TUh6IChwaHlzKS4KWyAgICAwLjAwMDAwMF0gY2xvY2tzb3VyY2U6IGFyY2hfc3lzX2Nv
dW50ZXI6IG1hc2s6IDB4ZmZmZmZmZmZmZmZmZmYgbWF4X2N5Y2xlczogMHgzODM3NTlmOGZmLCBt
YXhfaWRsZV9uczogODgxNTkwNDE1NjU5IG5zClsgICAgMC4wMDAwMDBdIHNjaGVkX2Nsb2NrOiA1
NiBiaXRzIGF0IDEyMU1IeiwgcmVzb2x1dGlvbiA4bnMsIHdyYXBzIGV2ZXJ5IDQzOTgwNDY1MTEx
MDNucwpbICAgIDAuMDAwMDc1XSBDb25zb2xlOiBjb2xvdXIgZHVtbXkgZGV2aWNlIDgweDI1Clsg
ICAgMC4wMDAxMDBdIEFDUEk6IENvcmUgcmV2aXNpb24gMjAyMTA3MzAKWyAgICAwLjAwMDE1Nl0g
Q2FsaWJyYXRpbmcgZGVsYXkgbG9vcCAoc2tpcHBlZCksIHZhbHVlIGNhbGN1bGF0ZWQgdXNpbmcg
dGltZXIgZnJlcXVlbmN5Li4gMjQzLjc1IEJvZ29NSVBTIChscGo9NDg3NTAwKQpbICAgIDAuMDAw
MTYwXSBwaWRfbWF4OiBkZWZhdWx0OiA2NTUzNiBtaW5pbXVtOiA1MTIKWyAgICAwLjAwMDE4NV0g
TFNNOiBTZWN1cml0eSBGcmFtZXdvcmsgaW5pdGlhbGl6aW5nClsgICAgMC4wMDAxOTFdIGxhbmRs
b2NrOiBVcCBhbmQgcnVubmluZy4KWyAgICAwLjAwMDI4Nl0gTW91bnQtY2FjaGUgaGFzaCB0YWJs
ZSBlbnRyaWVzOiAxMzEwNzIgKG9yZGVyOiA4LCAxMDQ4NTc2IGJ5dGVzLCBsaW5lYXIpClsgICAg
MC4wMDAzNjJdIE1vdW50cG9pbnQtY2FjaGUgaGFzaCB0YWJsZSBlbnRyaWVzOiAxMzEwNzIgKG9y
ZGVyOiA4LCAxMDQ4NTc2IGJ5dGVzLCBsaW5lYXIpClsgICAgMC4wMDA5ODBdIHJjdTogSGllcmFy
Y2hpY2FsIFNSQ1UgaW1wbGVtZW50YXRpb24uClsgICAgMC4wMDEwNjVdIFBsYXRmb3JtIE1TSTog
SVRTQDB4YmMwMDA0MDAwMCBkb21haW4gY3JlYXRlZApbICAgIDAuMDAxMDY4XSBQbGF0Zm9ybSBN
U0k6IElUU0AweGJkMDAwNDAwMDAgZG9tYWluIGNyZWF0ZWQKWyAgICAwLjAwMTA3MV0gUGxhdGZv
cm0gTVNJOiBJVFNAMHhiZTAwMDQwMDAwIGRvbWFpbiBjcmVhdGVkClsgICAgMC4wMDEwNzJdIFBs
YXRmb3JtIE1TSTogSVRTQDB4YmYwMDA0MDAwMCBkb21haW4gY3JlYXRlZApbICAgIDAuMDAxMDc3
XSBQQ0kvTVNJOiBJVFNAMHhiYzAwMDQwMDAwIGRvbWFpbiBjcmVhdGVkClsgICAgMC4wMDEwNzhd
IFBDSS9NU0k6IElUU0AweGJkMDAwNDAwMDAgZG9tYWluIGNyZWF0ZWQKWyAgICAwLjAwMTA4MF0g
UENJL01TSTogSVRTQDB4YmUwMDA0MDAwMCBkb21haW4gY3JlYXRlZApbICAgIDAuMDAxMDgyXSBQ
Q0kvTVNJOiBJVFNAMHhiZjAwMDQwMDAwIGRvbWFpbiBjcmVhdGVkClsgICAgMC4wMDEwODRdIGZz
bC1tYyBNU0k6IElUU0AweGJjMDAwNDAwMDAgZG9tYWluIGNyZWF0ZWQKWyAgICAwLjAwMTA4Nl0g
ZnNsLW1jIE1TSTogSVRTQDB4YmQwMDA0MDAwMCBkb21haW4gY3JlYXRlZApbICAgIDAuMDAxMDg4
XSBmc2wtbWMgTVNJOiBJVFNAMHhiZTAwMDQwMDAwIGRvbWFpbiBjcmVhdGVkClsgICAgMC4wMDEw
OTBdIGZzbC1tYyBNU0k6IElUU0AweGJmMDAwNDAwMDAgZG9tYWluIGNyZWF0ZWQKWyAgICAwLjAw
MTA5N10gUmVtYXBwaW5nIGFuZCBlbmFibGluZyBFRkkgc2VydmljZXMuClsgICAgMC4wMDE2NDJd
IHNtcDogQnJpbmdpbmcgdXAgc2Vjb25kYXJ5IENQVXMgLi4uClsgICAgMC4wMDE5OThdIERldGVj
dGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUxClsgICAgMC4wMDIwMDhdIEdJQ3YzOiBDUFUxOiBmb3Vu
ZCByZWRpc3RyaWJ1dG9yIDEwMDAwIHJlZ2lvbiAxOjB4MDAwMDAwYmMwMDBhMDAwMApbICAgIDAu
MDAyMDEyXSBHSUN2MzogQ1BVMTogdXNpbmcgYWxsb2NhdGVkIExQSSBwZW5kaW5nIHRhYmxlIEAw
eDAwMDAwMDAxMDAzZjAwMDAKWyAgICAwLjAwMjAyOF0gYXJjaF90aW1lcjogRW5hYmxpbmcgbG9j
YWwgd29ya2Fyb3VuZCBmb3IgQVJNIGVycmF0dW0gMTQxODA0MApbICAgIDAuMDAyMDM0XSBDUFUx
OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAwMDAwMTAwMDAgWzB4NDEzZmQwYzFdClsg
ICAgMC4wMDIzNDJdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUyClsgICAgMC4wMDIzNTFd
IEdJQ3YzOiBDUFUyOiBmb3VuZCByZWRpc3RyaWJ1dG9yIDIwMDAwIHJlZ2lvbiAyOjB4MDAwMDAw
YmMwMDBjMDAwMApbICAgIDAuMDAyMzU1XSBHSUN2MzogQ1BVMjogdXNpbmcgYWxsb2NhdGVkIExQ
SSBwZW5kaW5nIHRhYmxlIEAweDAwMDAwMDAxMDA4MDAwMDAKWyAgICAwLjAwMjM3MV0gYXJjaF90
aW1lcjogRW5hYmxpbmcgbG9jYWwgd29ya2Fyb3VuZCBmb3IgQVJNIGVycmF0dW0gMTQxODA0MApb
ICAgIDAuMDAyMzc3XSBDUFUyOiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAwMDAwMjAw
MDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMDI2NjhdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBD
UFUzClsgICAgMC4wMDI2NzddIEdJQ3YzOiBDUFUzOiBmb3VuZCByZWRpc3RyaWJ1dG9yIDMwMDAw
IHJlZ2lvbiAzOjB4MDAwMDAwYmMwMDBlMDAwMApbICAgIDAuMDAyNjgxXSBHSUN2MzogQ1BVMzog
dXNpbmcgYWxsb2NhdGVkIExQSSBwZW5kaW5nIHRhYmxlIEAweDAwMDAwMDAxMDA4MTAwMDAKWyAg
ICAwLjAwMjY5Nl0gYXJjaF90aW1lcjogRW5hYmxpbmcgbG9jYWwgd29ya2Fyb3VuZCBmb3IgQVJN
IGVycmF0dW0gMTQxODA0MApbICAgIDAuMDAyNzAyXSBDUFUzOiBCb290ZWQgc2Vjb25kYXJ5IHBy
b2Nlc3NvciAweDAwMDAwMzAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMDI5OThdIERldGVjdGVk
IFBJUFQgSS1jYWNoZSBvbiBDUFU0ClsgICAgMC4wMDMwMDddIEdJQ3YzOiBDUFU0OiBmb3VuZCBy
ZWRpc3RyaWJ1dG9yIDQwMDAwIHJlZ2lvbiA0OjB4MDAwMDAwYmMwMDEwMDAwMApbICAgIDAuMDAz
MDExXSBHSUN2MzogQ1BVNDogdXNpbmcgYWxsb2NhdGVkIExQSSBwZW5kaW5nIHRhYmxlIEAweDAw
MDAwMDAxMDA4MjAwMDAKWyAgICAwLjAwMzAyN10gYXJjaF90aW1lcjogRW5hYmxpbmcgbG9jYWwg
d29ya2Fyb3VuZCBmb3IgQVJNIGVycmF0dW0gMTQxODA0MApbICAgIDAuMDAzMDMzXSBDUFU0OiBC
b290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAwMDAwNDAwMDAgWzB4NDEzZmQwYzFdClsgICAg
MC4wMDMzMzJdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU1ClsgICAgMC4wMDMzNDFdIEdJ
Q3YzOiBDUFU1OiBmb3VuZCByZWRpc3RyaWJ1dG9yIDUwMDAwIHJlZ2lvbiA1OjB4MDAwMDAwYmMw
MDEyMDAwMApbICAgIDAuMDAzMzQ1XSBHSUN2MzogQ1BVNTogdXNpbmcgYWxsb2NhdGVkIExQSSBw
ZW5kaW5nIHRhYmxlIEAweDAwMDAwMDAxMDA4MzAwMDAKWyAgICAwLjAwMzM2MV0gYXJjaF90aW1l
cjogRW5hYmxpbmcgbG9jYWwgd29ya2Fyb3VuZCBmb3IgQVJNIGVycmF0dW0gMTQxODA0MApbICAg
IDAuMDAzMzY3XSBDUFU1OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAwMDAwNTAwMDAg
WzB4NDEzZmQwYzFdClsgICAgMC4wMDM2NTRdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU2
ClsgICAgMC4wMDM2NjNdIEdJQ3YzOiBDUFU2OiBmb3VuZCByZWRpc3RyaWJ1dG9yIDYwMDAwIHJl
Z2lvbiA2OjB4MDAwMDAwYmMwMDE0MDAwMApbICAgIDAuMDAzNjY3XSBHSUN2MzogQ1BVNjogdXNp
bmcgYWxsb2NhdGVkIExQSSBwZW5kaW5nIHRhYmxlIEAweDAwMDAwMDAxMDA4NDAwMDAKWyAgICAw
LjAwMzY4M10gYXJjaF90aW1lcjogRW5hYmxpbmcgbG9jYWwgd29ya2Fyb3VuZCBmb3IgQVJNIGVy
cmF0dW0gMTQxODA0MApbICAgIDAuMDAzNjg5XSBDUFU2OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nl
c3NvciAweDAwMDAwNjAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMDM5NzJdIERldGVjdGVkIFBJ
UFQgSS1jYWNoZSBvbiBDUFU3ClsgICAgMC4wMDM5ODFdIEdJQ3YzOiBDUFU3OiBmb3VuZCByZWRp
c3RyaWJ1dG9yIDcwMDAwIHJlZ2lvbiA3OjB4MDAwMDAwYmMwMDE2MDAwMApbICAgIDAuMDAzOTg1
XSBHSUN2MzogQ1BVNzogdXNpbmcgYWxsb2NhdGVkIExQSSBwZW5kaW5nIHRhYmxlIEAweDAwMDAw
MDAxMDA4NTAwMDAKWyAgICAwLjAwNDAwMV0gYXJjaF90aW1lcjogRW5hYmxpbmcgbG9jYWwgd29y
a2Fyb3VuZCBmb3IgQVJNIGVycmF0dW0gMTQxODA0MApbICAgIDAuMDA0MDA3XSBDUFU3OiBCb290
ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAwMDAwNzAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4w
MDQyOTNdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU4ClsgICAgMC4wMDQzMDJdIEdJQ3Yz
OiBDUFU4OiBmb3VuZCByZWRpc3RyaWJ1dG9yIDgwMDAwIHJlZ2lvbiA4OjB4MDAwMDAwYmMwMDE4
MDAwMApbICAgIDAuMDA0MzA2XSBHSUN2MzogQ1BVODogdXNpbmcgYWxsb2NhdGVkIExQSSBwZW5k
aW5nIHRhYmxlIEAweDAwMDAwMDAxMDA4NjAwMDAKWyAgICAwLjAwNDMyMl0gYXJjaF90aW1lcjog
RW5hYmxpbmcgbG9jYWwgd29ya2Fyb3VuZCBmb3IgQVJNIGVycmF0dW0gMTQxODA0MApbICAgIDAu
MDA0MzI4XSBDUFU4OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAwMDAwODAwMDAgWzB4
NDEzZmQwYzFdClsgICAgMC4wMDQ2MDZdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU5Clsg
ICAgMC4wMDQ2MTZdIEdJQ3YzOiBDUFU5OiBmb3VuZCByZWRpc3RyaWJ1dG9yIDkwMDAwIHJlZ2lv
biA5OjB4MDAwMDAwYmMwMDFhMDAwMApbICAgIDAuMDA0NjIwXSBHSUN2MzogQ1BVOTogdXNpbmcg
YWxsb2NhdGVkIExQSSBwZW5kaW5nIHRhYmxlIEAweDAwMDAwMDAxMDA4NzAwMDAKWyAgICAwLjAw
NDYzNl0gYXJjaF90aW1lcjogRW5hYmxpbmcgbG9jYWwgd29ya2Fyb3VuZCBmb3IgQVJNIGVycmF0
dW0gMTQxODA0MApbICAgIDAuMDA0NjQyXSBDUFU5OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3Nv
ciAweDAwMDAwOTAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMDQ5NDBdIERldGVjdGVkIFBJUFQg
SS1jYWNoZSBvbiBDUFUxMApbICAgIDAuMDA0OTUxXSBHSUN2MzogQ1BVMTA6IGZvdW5kIHJlZGlz
dHJpYnV0b3IgYTAwMDAgcmVnaW9uIDEwOjB4MDAwMDAwYmMwMDFjMDAwMApbICAgIDAuMDA0OTU1
XSBHSUN2MzogQ1BVMTA6IHVzaW5nIGFsbG9jYXRlZCBMUEkgcGVuZGluZyB0YWJsZSBAMHgwMDAw
MDAwMTAwODgwMDAwClsgICAgMC4wMDQ5NzFdIGFyY2hfdGltZXI6IEVuYWJsaW5nIGxvY2FsIHdv
cmthcm91bmQgZm9yIEFSTSBlcnJhdHVtIDE0MTgwNDAKWyAgICAwLjAwNDk3Nl0gQ1BVMTA6IEJv
b3RlZCBzZWNvbmRhcnkgcHJvY2Vzc29yIDB4MDAwMDBhMDAwMCBbMHg0MTNmZDBjMV0KWyAgICAw
LjAwNTI2OV0gRGV0ZWN0ZWQgUElQVCBJLWNhY2hlIG9uIENQVTExClsgICAgMC4wMDUyNzldIEdJ
Q3YzOiBDUFUxMTogZm91bmQgcmVkaXN0cmlidXRvciBiMDAwMCByZWdpb24gMTE6MHgwMDAwMDBi
YzAwMWUwMDAwClsgICAgMC4wMDUyODRdIEdJQ3YzOiBDUFUxMTogdXNpbmcgYWxsb2NhdGVkIExQ
SSBwZW5kaW5nIHRhYmxlIEAweDAwMDAwMDAxMDA4OTAwMDAKWyAgICAwLjAwNTI5OV0gYXJjaF90
aW1lcjogRW5hYmxpbmcgbG9jYWwgd29ya2Fyb3VuZCBmb3IgQVJNIGVycmF0dW0gMTQxODA0MApb
ICAgIDAuMDA1MzA1XSBDUFUxMTogQm9vdGVkIHNlY29uZGFyeSBwcm9jZXNzb3IgMHgwMDAwMGIw
MDAwIFsweDQxM2ZkMGMxXQpbICAgIDAuMDA1NTkzXSBEZXRlY3RlZCBQSVBUIEktY2FjaGUgb24g
Q1BVMTIKWyAgICAwLjAwNTYwNF0gR0lDdjM6IENQVTEyOiBmb3VuZCByZWRpc3RyaWJ1dG9yIGMw
MDAwIHJlZ2lvbiAxMjoweDAwMDAwMGJjMDAyMDAwMDAKWyAgICAwLjAwNTYwOF0gR0lDdjM6IENQ
VTEyOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMDhhMDAw
MApbICAgIDAuMDA1NjI0XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZv
ciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMDU2MzBdIENQVTEyOiBCb290ZWQgc2Vjb25k
YXJ5IHByb2Nlc3NvciAweDAwMDAwYzAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMDU5MTNdIERl
dGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUxMwpbICAgIDAuMDA1OTI0XSBHSUN2MzogQ1BVMTM6
IGZvdW5kIHJlZGlzdHJpYnV0b3IgZDAwMDAgcmVnaW9uIDEzOjB4MDAwMDAwYmMwMDIyMDAwMApb
ICAgIDAuMDA1OTI4XSBHSUN2MzogQ1BVMTM6IHVzaW5nIGFsbG9jYXRlZCBMUEkgcGVuZGluZyB0
YWJsZSBAMHgwMDAwMDAwMTAwOGIwMDAwClsgICAgMC4wMDU5NDRdIGFyY2hfdGltZXI6IEVuYWJs
aW5nIGxvY2FsIHdvcmthcm91bmQgZm9yIEFSTSBlcnJhdHVtIDE0MTgwNDAKWyAgICAwLjAwNTk0
OV0gQ1BVMTM6IEJvb3RlZCBzZWNvbmRhcnkgcHJvY2Vzc29yIDB4MDAwMDBkMDAwMCBbMHg0MTNm
ZDBjMV0KWyAgICAwLjAwNjIyN10gRGV0ZWN0ZWQgUElQVCBJLWNhY2hlIG9uIENQVTE0ClsgICAg
MC4wMDYyMzhdIEdJQ3YzOiBDUFUxNDogZm91bmQgcmVkaXN0cmlidXRvciBlMDAwMCByZWdpb24g
MTQ6MHgwMDAwMDBiYzAwMjQwMDAwClsgICAgMC4wMDYyNDJdIEdJQ3YzOiBDUFUxNDogdXNpbmcg
YWxsb2NhdGVkIExQSSBwZW5kaW5nIHRhYmxlIEAweDAwMDAwMDAxMDA4YzAwMDAKWyAgICAwLjAw
NjI1OF0gYXJjaF90aW1lcjogRW5hYmxpbmcgbG9jYWwgd29ya2Fyb3VuZCBmb3IgQVJNIGVycmF0
dW0gMTQxODA0MApbICAgIDAuMDA2MjY0XSBDUFUxNDogQm9vdGVkIHNlY29uZGFyeSBwcm9jZXNz
b3IgMHgwMDAwMGUwMDAwIFsweDQxM2ZkMGMxXQpbICAgIDAuMDA2NTQ0XSBEZXRlY3RlZCBQSVBU
IEktY2FjaGUgb24gQ1BVMTUKWyAgICAwLjAwNjU1NV0gR0lDdjM6IENQVTE1OiBmb3VuZCByZWRp
c3RyaWJ1dG9yIGYwMDAwIHJlZ2lvbiAxNToweDAwMDAwMGJjMDAyNjAwMDAKWyAgICAwLjAwNjU2
MF0gR0lDdjM6IENQVTE1OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAw
MDAwMDEwMDhkMDAwMApbICAgIDAuMDA2NTc1XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3
b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMDY1ODFdIENQVTE1OiBC
b290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAwMDAwZjAwMDAgWzB4NDEzZmQwYzFdClsgICAg
MC4wMDY4NzFdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUxNgpbICAgIDAuMDA2ODg0XSBH
SUN2MzogQ1BVMTY6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMTAwMDAwMDAwIHJlZ2lvbiAxNjoweDAw
MDAwMGJkMDAwODAwMDAKWyAgICAwLjAwNjg4OF0gR0lDdjM6IENQVTE2OiB1c2luZyBhbGxvY2F0
ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMDhlMDAwMApbICAgIDAuMDA2OTA0XSBh
cmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4
MDQwClsgICAgMC4wMDY5MTBdIENQVTE2OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAx
MDAwMDAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMDcyMDRdIERldGVjdGVkIFBJUFQgSS1jYWNo
ZSBvbiBDUFUxNwpbICAgIDAuMDA3MjE3XSBHSUN2MzogQ1BVMTc6IGZvdW5kIHJlZGlzdHJpYnV0
b3IgMTAwMDEwMDAwIHJlZ2lvbiAxNzoweDAwMDAwMGJkMDAwYTAwMDAKWyAgICAwLjAwNzIyMV0g
R0lDdjM6IENQVTE3OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAw
MDEwMDhmMDAwMApbICAgIDAuMDA3MjM3XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3Jr
YXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMDcyNDRdIENQVTE3OiBCb290
ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAxMDAwMTAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4w
MDc1MzZdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUxOApbICAgIDAuMDA3NTQ5XSBHSUN2
MzogQ1BVMTg6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMTAwMDIwMDAwIHJlZ2lvbiAxODoweDAwMDAw
MGJkMDAwYzAwMDAKWyAgICAwLjAwNzU1NF0gR0lDdjM6IENQVTE4OiB1c2luZyBhbGxvY2F0ZWQg
TFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMDkwMDAwMApbICAgIDAuMDA3NTcwXSBhcmNo
X3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQw
ClsgICAgMC4wMDc1NzZdIENQVTE4OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAxMDAw
MjAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMDc4NjZdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBv
biBDUFUxOQpbICAgIDAuMDA3ODc5XSBHSUN2MzogQ1BVMTk6IGZvdW5kIHJlZGlzdHJpYnV0b3Ig
MTAwMDMwMDAwIHJlZ2lvbiAxOToweDAwMDAwMGJkMDAwZTAwMDAKWyAgICAwLjAwNzg4M10gR0lD
djM6IENQVTE5OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEw
MDkxMDAwMApbICAgIDAuMDA3ODk5XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJv
dW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMDc5MDVdIENQVTE5OiBCb290ZWQg
c2Vjb25kYXJ5IHByb2Nlc3NvciAweDAxMDAwMzAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMDgy
MDFdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUyMApbICAgIDAuMDA4MjE1XSBHSUN2Mzog
Q1BVMjA6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMTAwMDQwMDAwIHJlZ2lvbiAyMDoweDAwMDAwMGJk
MDAxMDAwMDAKWyAgICAwLjAwODIxOV0gR0lDdjM6IENQVTIwOiB1c2luZyBhbGxvY2F0ZWQgTFBJ
IHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMDkyMDAwMApbICAgIDAuMDA4MjM1XSBhcmNoX3Rp
bWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsg
ICAgMC4wMDgyNDFdIENQVTIwOiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAxMDAwNDAw
MDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMDg1MzRdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBD
UFUyMQpbICAgIDAuMDA4NTQ4XSBHSUN2MzogQ1BVMjE6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMTAw
MDUwMDAwIHJlZ2lvbiAyMToweDAwMDAwMGJkMDAxMjAwMDAKWyAgICAwLjAwODU1Ml0gR0lDdjM6
IENQVTIxOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMDkz
MDAwMApbICAgIDAuMDA4NTY4XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5k
IGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMDg1NzRdIENQVTIxOiBCb290ZWQgc2Vj
b25kYXJ5IHByb2Nlc3NvciAweDAxMDAwNTAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMDg4NjRd
IERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUyMgpbICAgIDAuMDA4ODc5XSBHSUN2MzogQ1BV
MjI6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMTAwMDYwMDAwIHJlZ2lvbiAyMjoweDAwMDAwMGJkMDAx
NDAwMDAKWyAgICAwLjAwODg4M10gR0lDdjM6IENQVTIyOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBl
bmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMDk0MDAwMApbICAgIDAuMDA4ODk5XSBhcmNoX3RpbWVy
OiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAg
MC4wMDg5MDVdIENQVTIyOiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAxMDAwNjAwMDAg
WzB4NDEzZmQwYzFdClsgICAgMC4wMDkxOTFdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUy
MwpbICAgIDAuMDA5MjA2XSBHSUN2MzogQ1BVMjM6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMTAwMDcw
MDAwIHJlZ2lvbiAyMzoweDAwMDAwMGJkMDAxNjAwMDAKWyAgICAwLjAwOTIxMF0gR0lDdjM6IENQ
VTIzOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMDk1MDAw
MApbICAgIDAuMDA5MjI2XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZv
ciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMDkyMzJdIENQVTIzOiBCb290ZWQgc2Vjb25k
YXJ5IHByb2Nlc3NvciAweDAxMDAwNzAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMDk1MTVdIERl
dGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUyNApbICAgIDAuMDA5NTMwXSBHSUN2MzogQ1BVMjQ6
IGZvdW5kIHJlZGlzdHJpYnV0b3IgMTAwMDgwMDAwIHJlZ2lvbiAyNDoweDAwMDAwMGJkMDAxODAw
MDAKWyAgICAwLjAwOTUzNF0gR0lDdjM6IENQVTI0OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRp
bmcgdGFibGUgQDB4MDAwMDAwMDEwMDk2MDAwMApbICAgIDAuMDA5NTUwXSBhcmNoX3RpbWVyOiBF
bmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4w
MDk1NTZdIENQVTI0OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAxMDAwODAwMDAgWzB4
NDEzZmQwYzFdClsgICAgMC4wMDk4MzRdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUyNQpb
ICAgIDAuMDA5ODQ5XSBHSUN2MzogQ1BVMjU6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMTAwMDkwMDAw
IHJlZ2lvbiAyNToweDAwMDAwMGJkMDAxYTAwMDAKWyAgICAwLjAwOTg1M10gR0lDdjM6IENQVTI1
OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMDk3MDAwMApb
ICAgIDAuMDA5ODY5XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBB
Uk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMDk4NzVdIENQVTI1OiBCb290ZWQgc2Vjb25kYXJ5
IHByb2Nlc3NvciAweDAxMDAwOTAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTAxNjZdIERldGVj
dGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUyNgpbICAgIDAuMDEwMTgxXSBHSUN2MzogQ1BVMjY6IGZv
dW5kIHJlZGlzdHJpYnV0b3IgMTAwMGEwMDAwIHJlZ2lvbiAyNjoweDAwMDAwMGJkMDAxYzAwMDAK
WyAgICAwLjAxMDE4Nl0gR0lDdjM6IENQVTI2OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcg
dGFibGUgQDB4MDAwMDAwMDEwMDk4MDAwMApbICAgIDAuMDEwMjAyXSBhcmNoX3RpbWVyOiBFbmFi
bGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTAy
MDhdIENQVTI2OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAxMDAwYTAwMDAgWzB4NDEz
ZmQwYzFdClsgICAgMC4wMTA0OTRdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUyNwpbICAg
IDAuMDEwNTEwXSBHSUN2MzogQ1BVMjc6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMTAwMGIwMDAwIHJl
Z2lvbiAyNzoweDAwMDAwMGJkMDAxZTAwMDAKWyAgICAwLjAxMDUxNF0gR0lDdjM6IENQVTI3OiB1
c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMDk5MDAwMApbICAg
IDAuMDEwNTMwXSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0g
ZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTA1MzZdIENQVTI3OiBCb290ZWQgc2Vjb25kYXJ5IHBy
b2Nlc3NvciAweDAxMDAwYjAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTA4MjFdIERldGVjdGVk
IFBJUFQgSS1jYWNoZSBvbiBDUFUyOApbICAgIDAuMDEwODM3XSBHSUN2MzogQ1BVMjg6IGZvdW5k
IHJlZGlzdHJpYnV0b3IgMTAwMGMwMDAwIHJlZ2lvbiAyODoweDAwMDAwMGJkMDAyMDAwMDAKWyAg
ICAwLjAxMDg0Ml0gR0lDdjM6IENQVTI4OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFi
bGUgQDB4MDAwMDAwMDEwMDlhMDAwMApbICAgIDAuMDEwODU4XSBhcmNoX3RpbWVyOiBFbmFibGlu
ZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTA4NjRd
IENQVTI4OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAxMDAwYzAwMDAgWzB4NDEzZmQw
YzFdClsgICAgMC4wMTExNDhdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUyOQpbICAgIDAu
MDExMTYzXSBHSUN2MzogQ1BVMjk6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMTAwMGQwMDAwIHJlZ2lv
biAyOToweDAwMDAwMGJkMDAyMjAwMDAKWyAgICAwLjAxMTE2OF0gR0lDdjM6IENQVTI5OiB1c2lu
ZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMDliMDAwMApbICAgIDAu
MDExMTg0XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJy
YXR1bSAxNDE4MDQwClsgICAgMC4wMTExODldIENQVTI5OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nl
c3NvciAweDAxMDAwZDAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTE0NjldIERldGVjdGVkIFBJ
UFQgSS1jYWNoZSBvbiBDUFUzMApbICAgIDAuMDExNDg1XSBHSUN2MzogQ1BVMzA6IGZvdW5kIHJl
ZGlzdHJpYnV0b3IgMTAwMGUwMDAwIHJlZ2lvbiAzMDoweDAwMDAwMGJkMDAyNDAwMDAKWyAgICAw
LjAxMTQ5MF0gR0lDdjM6IENQVTMwOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUg
QDB4MDAwMDAwMDEwMDljMDAwMApbICAgIDAuMDExNTA2XSBhcmNoX3RpbWVyOiBFbmFibGluZyBs
b2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTE1MTFdIENQ
VTMwOiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAxMDAwZTAwMDAgWzB4NDEzZmQwYzFd
ClsgICAgMC4wMTE3OTFdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUzMQpbICAgIDAuMDEx
ODA3XSBHSUN2MzogQ1BVMzE6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMTAwMGYwMDAwIHJlZ2lvbiAz
MToweDAwMDAwMGJkMDAyNjAwMDAKWyAgICAwLjAxMTgxMV0gR0lDdjM6IENQVTMxOiB1c2luZyBh
bGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMDlkMDAwMApbICAgIDAuMDEx
ODI3XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1
bSAxNDE4MDQwClsgICAgMC4wMTE4MzNdIENQVTMxOiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3Nv
ciAweDAxMDAwZjAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTIxMjJdIERldGVjdGVkIFBJUFQg
SS1jYWNoZSBvbiBDUFUzMgpbICAgIDAuMDEyMTQwXSBHSUN2MzogQ1BVMzI6IGZvdW5kIHJlZGlz
dHJpYnV0b3IgMjAwMDAwMDAwIHJlZ2lvbiAzMjoweDAwMDAwMGJlMDAwODAwMDAKWyAgICAwLjAx
MjE0NV0gR0lDdjM6IENQVTMyOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4
MDAwMDAwMDEwMDllMDAwMApbICAgIDAuMDEyMTYxXSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2Nh
bCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTIxNjddIENQVTMy
OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAyMDAwMDAwMDAgWzB4NDEzZmQwYzFdClsg
ICAgMC4wMTIzODVdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUzMwpbICAgIDAuMDEyNDA0
XSBHSUN2MzogQ1BVMzM6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMjAwMDEwMDAwIHJlZ2lvbiAzMzow
eDAwMDAwMGJlMDAwYTAwMDAKWyAgICAwLjAxMjQwOF0gR0lDdjM6IENQVTMzOiB1c2luZyBhbGxv
Y2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMDlmMDAwMApbICAgIDAuMDEyNDI0
XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAx
NDE4MDQwClsgICAgMC4wMTI0MzFdIENQVTMzOiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAw
eDAyMDAwMTAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTI2NDldIERldGVjdGVkIFBJUFQgSS1j
YWNoZSBvbiBDUFUzNApbICAgIDAuMDEyNjY4XSBHSUN2MzogQ1BVMzQ6IGZvdW5kIHJlZGlzdHJp
YnV0b3IgMjAwMDIwMDAwIHJlZ2lvbiAzNDoweDAwMDAwMGJlMDAwYzAwMDAKWyAgICAwLjAxMjY3
M10gR0lDdjM6IENQVTM0OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAw
MDAwMDEwMGEwMDAwMApbICAgIDAuMDEyNjg5XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3
b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTI2OTVdIENQVTM0OiBC
b290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAyMDAwMjAwMDAgWzB4NDEzZmQwYzFdClsgICAg
MC4wMTI5MTldIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUzNQpbICAgIDAuMDEyOTM4XSBH
SUN2MzogQ1BVMzU6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMjAwMDMwMDAwIHJlZ2lvbiAzNToweDAw
MDAwMGJlMDAwZTAwMDAKWyAgICAwLjAxMjk0M10gR0lDdjM6IENQVTM1OiB1c2luZyBhbGxvY2F0
ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGExMDAwMApbICAgIDAuMDEyOTU5XSBh
cmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4
MDQwClsgICAgMC4wMTI5NjVdIENQVTM1OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAy
MDAwMzAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTMxODZdIERldGVjdGVkIFBJUFQgSS1jYWNo
ZSBvbiBDUFUzNgpbICAgIDAuMDEzMjA2XSBHSUN2MzogQ1BVMzY6IGZvdW5kIHJlZGlzdHJpYnV0
b3IgMjAwMDQwMDAwIHJlZ2lvbiAzNjoweDAwMDAwMGJlMDAxMDAwMDAKWyAgICAwLjAxMzIxMV0g
R0lDdjM6IENQVTM2OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAw
MDEwMGEyMDAwMApbICAgIDAuMDEzMjI3XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3Jr
YXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTMyMzNdIENQVTM2OiBCb290
ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAyMDAwNDAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4w
MTM0NTNdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUzNwpbICAgIDAuMDEzNDcyXSBHSUN2
MzogQ1BVMzc6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMjAwMDUwMDAwIHJlZ2lvbiAzNzoweDAwMDAw
MGJlMDAxMjAwMDAKWyAgICAwLjAxMzQ3N10gR0lDdjM6IENQVTM3OiB1c2luZyBhbGxvY2F0ZWQg
TFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGEzMDAwMApbICAgIDAuMDEzNDkzXSBhcmNo
X3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQw
ClsgICAgMC4wMTM0OTldIENQVTM3OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAyMDAw
NTAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTM3MjBdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBv
biBDUFUzOApbICAgIDAuMDEzNzQwXSBHSUN2MzogQ1BVMzg6IGZvdW5kIHJlZGlzdHJpYnV0b3Ig
MjAwMDYwMDAwIHJlZ2lvbiAzODoweDAwMDAwMGJlMDAxNDAwMDAKWyAgICAwLjAxMzc0NV0gR0lD
djM6IENQVTM4OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEw
MGE0MDAwMApbICAgIDAuMDEzNzYxXSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJv
dW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTM3NjddIENQVTM4OiBCb290ZWQg
c2Vjb25kYXJ5IHByb2Nlc3NvciAweDAyMDAwNjAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTM5
ODJdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFUzOQpbICAgIDAuMDE0MDAxXSBHSUN2Mzog
Q1BVMzk6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMjAwMDcwMDAwIHJlZ2lvbiAzOToweDAwMDAwMGJl
MDAxNjAwMDAKWyAgICAwLjAxNDAwNl0gR0lDdjM6IENQVTM5OiB1c2luZyBhbGxvY2F0ZWQgTFBJ
IHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGE1MDAwMApbICAgIDAuMDE0MDIyXSBhcmNoX3Rp
bWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsg
ICAgMC4wMTQwMjhdIENQVTM5OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAyMDAwNzAw
MDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTQyNDZdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBD
UFU0MApbICAgIDAuMDE0MjY2XSBHSUN2MzogQ1BVNDA6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMjAw
MDgwMDAwIHJlZ2lvbiA0MDoweDAwMDAwMGJlMDAxODAwMDAKWyAgICAwLjAxNDI3MV0gR0lDdjM6
IENQVTQwOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGE2
MDAwMApbICAgIDAuMDE0Mjg3XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5k
IGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTQyOTNdIENQVTQwOiBCb290ZWQgc2Vj
b25kYXJ5IHByb2Nlc3NvciAweDAyMDAwODAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTQ1MDdd
IERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU0MQpbICAgIDAuMDE0NTI3XSBHSUN2MzogQ1BV
NDE6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMjAwMDkwMDAwIHJlZ2lvbiA0MToweDAwMDAwMGJlMDAx
YTAwMDAKWyAgICAwLjAxNDUzMl0gR0lDdjM6IENQVTQxOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBl
bmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGE3MDAwMApbICAgIDAuMDE0NTQ4XSBhcmNoX3RpbWVy
OiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAg
MC4wMTQ1NTNdIENQVTQxOiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAyMDAwOTAwMDAg
WzB4NDEzZmQwYzFdClsgICAgMC4wMTQ3NzhdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU0
MgpbICAgIDAuMDE0Nzk5XSBHSUN2MzogQ1BVNDI6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMjAwMGEw
MDAwIHJlZ2lvbiA0MjoweDAwMDAwMGJlMDAxYzAwMDAKWyAgICAwLjAxNDgwNV0gR0lDdjM6IENQ
VTQyOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGE4MDAw
MApbICAgIDAuMDE0ODIxXSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZv
ciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTQ4MjddIENQVTQyOiBCb290ZWQgc2Vjb25k
YXJ5IHByb2Nlc3NvciAweDAyMDAwYTAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTUwNDldIERl
dGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU0MwpbICAgIDAuMDE1MDY5XSBHSUN2MzogQ1BVNDM6
IGZvdW5kIHJlZGlzdHJpYnV0b3IgMjAwMGIwMDAwIHJlZ2lvbiA0MzoweDAwMDAwMGJlMDAxZTAw
MDAKWyAgICAwLjAxNTA3NV0gR0lDdjM6IENQVTQzOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRp
bmcgdGFibGUgQDB4MDAwMDAwMDEwMGE5MDAwMApbICAgIDAuMDE1MDkxXSBhcmNoX3RpbWVyOiBF
bmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4w
MTUwOTZdIENQVTQzOiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAyMDAwYjAwMDAgWzB4
NDEzZmQwYzFdClsgICAgMC4wMTUzMTNdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU0NApb
ICAgIDAuMDE1MzM1XSBHSUN2MzogQ1BVNDQ6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMjAwMGMwMDAw
IHJlZ2lvbiA0NDoweDAwMDAwMGJlMDAyMDAwMDAKWyAgICAwLjAxNTM0MF0gR0lDdjM6IENQVTQ0
OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGFhMDAwMApb
ICAgIDAuMDE1MzU1XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBB
Uk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTUzNjFdIENQVTQ0OiBCb290ZWQgc2Vjb25kYXJ5
IHByb2Nlc3NvciAweDAyMDAwYzAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTU1NzldIERldGVj
dGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU0NQpbICAgIDAuMDE1NjAwXSBHSUN2MzogQ1BVNDU6IGZv
dW5kIHJlZGlzdHJpYnV0b3IgMjAwMGQwMDAwIHJlZ2lvbiA0NToweDAwMDAwMGJlMDAyMjAwMDAK
WyAgICAwLjAxNTYwNV0gR0lDdjM6IENQVTQ1OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcg
dGFibGUgQDB4MDAwMDAwMDEwMGFiMDAwMApbICAgIDAuMDE1NjIxXSBhcmNoX3RpbWVyOiBFbmFi
bGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTU2
MjddIENQVTQ1OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAyMDAwZDAwMDAgWzB4NDEz
ZmQwYzFdClsgICAgMC4wMTU4MzddIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU0NgpbICAg
IDAuMDE1ODU5XSBHSUN2MzogQ1BVNDY6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMjAwMGUwMDAwIHJl
Z2lvbiA0NjoweDAwMDAwMGJlMDAyNDAwMDAKWyAgICAwLjAxNTg2NF0gR0lDdjM6IENQVTQ2OiB1
c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGFjMDAwMApbICAg
IDAuMDE1ODgwXSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0g
ZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTU4ODVdIENQVTQ2OiBCb290ZWQgc2Vjb25kYXJ5IHBy
b2Nlc3NvciAweDAyMDAwZTAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTYxMDJdIERldGVjdGVk
IFBJUFQgSS1jYWNoZSBvbiBDUFU0NwpbICAgIDAuMDE2MTIzXSBHSUN2MzogQ1BVNDc6IGZvdW5k
IHJlZGlzdHJpYnV0b3IgMjAwMGYwMDAwIHJlZ2lvbiA0NzoweDAwMDAwMGJlMDAyNjAwMDAKWyAg
ICAwLjAxNjEyOF0gR0lDdjM6IENQVTQ3OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFi
bGUgQDB4MDAwMDAwMDEwMGFkMDAwMApbICAgIDAuMDE2MTQ0XSBhcmNoX3RpbWVyOiBFbmFibGlu
ZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTYxNTBd
IENQVTQ3OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAyMDAwZjAwMDAgWzB4NDEzZmQw
YzFdClsgICAgMC4wMTYzNjldIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU0OApbICAgIDAu
MDE2MzkxXSBHSUN2MzogQ1BVNDg6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMzAwMDAwMDAwIHJlZ2lv
biA0ODoweDAwMDAwMGJmMDAwODAwMDAKWyAgICAwLjAxNjM5Nl0gR0lDdjM6IENQVTQ4OiB1c2lu
ZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGFlMDAwMApbICAgIDAu
MDE2NDEyXSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJy
YXR1bSAxNDE4MDQwClsgICAgMC4wMTY0MThdIENQVTQ4OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nl
c3NvciAweDAzMDAwMDAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTY2NDFdIERldGVjdGVkIFBJ
UFQgSS1jYWNoZSBvbiBDUFU0OQpbICAgIDAuMDE2NjY0XSBHSUN2MzogQ1BVNDk6IGZvdW5kIHJl
ZGlzdHJpYnV0b3IgMzAwMDEwMDAwIHJlZ2lvbiA0OToweDAwMDAwMGJmMDAwYTAwMDAKWyAgICAw
LjAxNjY2OV0gR0lDdjM6IENQVTQ5OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUg
QDB4MDAwMDAwMDEwMGFmMDAwMApbICAgIDAuMDE2Njg1XSBhcmNoX3RpbWVyOiBFbmFibGluZyBs
b2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTY2OTFdIENQ
VTQ5OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAzMDAwMTAwMDAgWzB4NDEzZmQwYzFd
ClsgICAgMC4wMTY5MTRdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU1MApbICAgIDAuMDE2
OTM3XSBHSUN2MzogQ1BVNTA6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMzAwMDIwMDAwIHJlZ2lvbiA1
MDoweDAwMDAwMGJmMDAwYzAwMDAKWyAgICAwLjAxNjk0M10gR0lDdjM6IENQVTUwOiB1c2luZyBh
bGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGIwMDAwMApbICAgIDAuMDE2
OTU5XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1
bSAxNDE4MDQwClsgICAgMC4wMTY5NjVdIENQVTUwOiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3Nv
ciAweDAzMDAwMjAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTcxODRdIERldGVjdGVkIFBJUFQg
SS1jYWNoZSBvbiBDUFU1MQpbICAgIDAuMDE3MjA3XSBHSUN2MzogQ1BVNTE6IGZvdW5kIHJlZGlz
dHJpYnV0b3IgMzAwMDMwMDAwIHJlZ2lvbiA1MToweDAwMDAwMGJmMDAwZTAwMDAKWyAgICAwLjAx
NzIxMl0gR0lDdjM6IENQVTUxOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4
MDAwMDAwMDEwMGIxMDAwMApbICAgIDAuMDE3MjI4XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2Nh
bCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTcyMzRdIENQVTUx
OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAzMDAwMzAwMDAgWzB4NDEzZmQwYzFdClsg
ICAgMC4wMTc0NTddIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU1MgpbICAgIDAuMDE3NDgy
XSBHSUN2MzogQ1BVNTI6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMzAwMDQwMDAwIHJlZ2lvbiA1Mjow
eDAwMDAwMGJmMDAxMDAwMDAKWyAgICAwLjAxNzQ4N10gR0lDdjM6IENQVTUyOiB1c2luZyBhbGxv
Y2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGIyMDAwMApbICAgIDAuMDE3NTAz
XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAx
NDE4MDQwClsgICAgMC4wMTc1MDldIENQVTUyOiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAw
eDAzMDAwNDAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTc3MzJdIERldGVjdGVkIFBJUFQgSS1j
YWNoZSBvbiBDUFU1MwpbICAgIDAuMDE3NzU1XSBHSUN2MzogQ1BVNTM6IGZvdW5kIHJlZGlzdHJp
YnV0b3IgMzAwMDUwMDAwIHJlZ2lvbiA1MzoweDAwMDAwMGJmMDAxMjAwMDAKWyAgICAwLjAxNzc2
MF0gR0lDdjM6IENQVTUzOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAw
MDAwMDEwMGIzMDAwMApbICAgIDAuMDE3Nzc2XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3
b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTc3ODJdIENQVTUzOiBC
b290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAzMDAwNTAwMDAgWzB4NDEzZmQwYzFdClsgICAg
MC4wMTgwMDRdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU1NApbICAgIDAuMDE4MDI4XSBH
SUN2MzogQ1BVNTQ6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMzAwMDYwMDAwIHJlZ2lvbiA1NDoweDAw
MDAwMGJmMDAxNDAwMDAKWyAgICAwLjAxODAzNF0gR0lDdjM6IENQVTU0OiB1c2luZyBhbGxvY2F0
ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGI0MDAwMApbICAgIDAuMDE4MDQ5XSBh
cmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4
MDQwClsgICAgMC4wMTgwNTVdIENQVTU0OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAz
MDAwNjAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTgyNzJdIERldGVjdGVkIFBJUFQgSS1jYWNo
ZSBvbiBDUFU1NQpbICAgIDAuMDE4Mjk3XSBHSUN2MzogQ1BVNTU6IGZvdW5kIHJlZGlzdHJpYnV0
b3IgMzAwMDcwMDAwIHJlZ2lvbiA1NToweDAwMDAwMGJmMDAxNjAwMDAKWyAgICAwLjAxODMwMl0g
R0lDdjM6IENQVTU1OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAw
MDEwMGI1MDAwMApbICAgIDAuMDE4MzE4XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3Jr
YXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTgzMjRdIENQVTU1OiBCb290
ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAzMDAwNzAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4w
MTg1NDNdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU1NgpbICAgIDAuMDE4NTY2XSBHSUN2
MzogQ1BVNTY6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMzAwMDgwMDAwIHJlZ2lvbiA1NjoweDAwMDAw
MGJmMDAxODAwMDAKWyAgICAwLjAxODU3Ml0gR0lDdjM6IENQVTU2OiB1c2luZyBhbGxvY2F0ZWQg
TFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGI2MDAwMApbICAgIDAuMDE4NTg4XSBhcmNo
X3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQw
ClsgICAgMC4wMTg1OTRdIENQVTU2OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAzMDAw
ODAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTg4MDZdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBv
biBDUFU1NwpbICAgIDAuMDE4ODMxXSBHSUN2MzogQ1BVNTc6IGZvdW5kIHJlZGlzdHJpYnV0b3Ig
MzAwMDkwMDAwIHJlZ2lvbiA1NzoweDAwMDAwMGJmMDAxYTAwMDAKWyAgICAwLjAxODgzN10gR0lD
djM6IENQVTU3OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEw
MGI3MDAwMApbICAgIDAuMDE4ODUyXSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJv
dW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTg4NThdIENQVTU3OiBCb290ZWQg
c2Vjb25kYXJ5IHByb2Nlc3NvciAweDAzMDAwOTAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTkw
ODBdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU1OApbICAgIDAuMDE5MTA2XSBHSUN2Mzog
Q1BVNTg6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMzAwMGEwMDAwIHJlZ2lvbiA1ODoweDAwMDAwMGJm
MDAxYzAwMDAKWyAgICAwLjAxOTExMV0gR0lDdjM6IENQVTU4OiB1c2luZyBhbGxvY2F0ZWQgTFBJ
IHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGI4MDAwMApbICAgIDAuMDE5MTI3XSBhcmNoX3Rp
bWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsg
ICAgMC4wMTkxMzRdIENQVTU4OiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAzMDAwYTAw
MDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTkzNTRdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBD
UFU1OQpbICAgIDAuMDE5MzgwXSBHSUN2MzogQ1BVNTk6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMzAw
MGIwMDAwIHJlZ2lvbiA1OToweDAwMDAwMGJmMDAxZTAwMDAKWyAgICAwLjAxOTM4NV0gR0lDdjM6
IENQVTU5OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGI5
MDAwMApbICAgIDAuMDE5NDAxXSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5k
IGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTk0MDddIENQVTU5OiBCb290ZWQgc2Vj
b25kYXJ5IHByb2Nlc3NvciAweDAzMDAwYjAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMTk2MjZd
IERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU2MApbICAgIDAuMDE5NjUyXSBHSUN2MzogQ1BV
NjA6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMzAwMGMwMDAwIHJlZ2lvbiA2MDoweDAwMDAwMGJmMDAy
MDAwMDAKWyAgICAwLjAxOTY1N10gR0lDdjM6IENQVTYwOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBl
bmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGJhMDAwMApbICAgIDAuMDE5NjczXSBhcmNoX3RpbWVy
OiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAg
MC4wMTk2NzldIENQVTYwOiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAzMDAwYzAwMDAg
WzB4NDEzZmQwYzFdClsgICAgMC4wMTk5MDFdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU2
MQpbICAgIDAuMDE5OTI3XSBHSUN2MzogQ1BVNjE6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMzAwMGQw
MDAwIHJlZ2lvbiA2MToweDAwMDAwMGJmMDAyMjAwMDAKWyAgICAwLjAxOTkzMl0gR0lDdjM6IENQ
VTYxOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGJiMDAw
MApbICAgIDAuMDE5OTQ4XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZv
ciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMTk5NTRdIENQVTYxOiBCb290ZWQgc2Vjb25k
YXJ5IHByb2Nlc3NvciAweDAzMDAwZDAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMjAxNzRdIERl
dGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU2MgpbICAgIDAuMDIwMjAxXSBHSUN2MzogQ1BVNjI6
IGZvdW5kIHJlZGlzdHJpYnV0b3IgMzAwMGUwMDAwIHJlZ2lvbiA2MjoweDAwMDAwMGJmMDAyNDAw
MDAKWyAgICAwLjAyMDIwNl0gR0lDdjM6IENQVTYyOiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRp
bmcgdGFibGUgQDB4MDAwMDAwMDEwMGJjMDAwMApbICAgIDAuMDIwMjIyXSBhcmNoX3RpbWVyOiBF
bmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBBUk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4w
MjAyMjhdIENQVTYyOiBCb290ZWQgc2Vjb25kYXJ5IHByb2Nlc3NvciAweDAzMDAwZTAwMDAgWzB4
NDEzZmQwYzFdClsgICAgMC4wMjA0NDNdIERldGVjdGVkIFBJUFQgSS1jYWNoZSBvbiBDUFU2Mwpb
ICAgIDAuMDIwNDY4XSBHSUN2MzogQ1BVNjM6IGZvdW5kIHJlZGlzdHJpYnV0b3IgMzAwMGYwMDAw
IHJlZ2lvbiA2MzoweDAwMDAwMGJmMDAyNjAwMDAKWyAgICAwLjAyMDQ3M10gR0lDdjM6IENQVTYz
OiB1c2luZyBhbGxvY2F0ZWQgTFBJIHBlbmRpbmcgdGFibGUgQDB4MDAwMDAwMDEwMGJkMDAwMApb
ICAgIDAuMDIwNDg5XSBhcmNoX3RpbWVyOiBFbmFibGluZyBsb2NhbCB3b3JrYXJvdW5kIGZvciBB
Uk0gZXJyYXR1bSAxNDE4MDQwClsgICAgMC4wMjA0OTVdIENQVTYzOiBCb290ZWQgc2Vjb25kYXJ5
IHByb2Nlc3NvciAweDAzMDAwZjAwMDAgWzB4NDEzZmQwYzFdClsgICAgMC4wMjA1NDBdIHNtcDog
QnJvdWdodCB1cCAxIG5vZGUsIDY0IENQVXMKWyAgICAwLjAyMDYzNl0gU01QOiBUb3RhbCBvZiA2
NCBwcm9jZXNzb3JzIGFjdGl2YXRlZC4KWyAgICAwLjAyMDYzN10gQ1BVIGZlYXR1cmVzOiBkZXRl
Y3RlZDogMzItYml0IEVMMCBTdXBwb3J0ClsgICAgMC4wMjA2MzhdIENQVSBmZWF0dXJlczogZGV0
ZWN0ZWQ6IEluc3RydWN0aW9uIGNhY2hlIGludmFsaWRhdGlvbiBub3QgcmVxdWlyZWQgZm9yIEkv
RCBjb2hlcmVuY2UKWyAgICAwLjAyMDY0MF0gQ1BVIGZlYXR1cmVzOiBkZXRlY3RlZDogRGF0YSBj
YWNoZSBjbGVhbiB0byB0aGUgUG9VIG5vdCByZXF1aXJlZCBmb3IgSS9EIGNvaGVyZW5jZQpbICAg
IDAuMDIwNjQxXSBDUFUgZmVhdHVyZXM6IGRldGVjdGVkOiBDb21tb24gbm90IFByaXZhdGUgdHJh
bnNsYXRpb25zClsgICAgMC4wMjA2NDJdIENQVSBmZWF0dXJlczogZGV0ZWN0ZWQ6IENSQzMyIGlu
c3RydWN0aW9ucwpbICAgIDAuMDIwNjQzXSBDUFUgZmVhdHVyZXM6IGRldGVjdGVkOiBSQ3BjIGxv
YWQtYWNxdWlyZSAoTERBUFIpClsgICAgMC4wMjA2NDRdIENQVSBmZWF0dXJlczogZGV0ZWN0ZWQ6
IExTRSBhdG9taWMgaW5zdHJ1Y3Rpb25zClsgICAgMC4wMjA2NDVdIENQVSBmZWF0dXJlczogZGV0
ZWN0ZWQ6IFByaXZpbGVnZWQgQWNjZXNzIE5ldmVyClsgICAgMC4wMjA2NDZdIENQVSBmZWF0dXJl
czogZGV0ZWN0ZWQ6IFJBUyBFeHRlbnNpb24gU3VwcG9ydApbICAgIDAuMDIwNjQ4XSBDUFUgZmVh
dHVyZXM6IGRldGVjdGVkOiBTcGVjdWxhdGl2ZSBTdG9yZSBCeXBhc3NpbmcgU2FmZSAoU1NCUykK
WyAgICAwLjAzNDgzM10gQ1BVOiBBbGwgQ1BVKHMpIHN0YXJ0ZWQgYXQgRUwyClsgICAgMC4wMzk3
MTFdIGRldnRtcGZzOiBpbml0aWFsaXplZApbICAgIDAuMDM5ODQ5XSBLQVNMUiBlbmFibGVkClsg
ICAgMC4wMzk4OTFdIGNsb2Nrc291cmNlOiBqaWZmaWVzOiBtYXNrOiAweGZmZmZmZmZmIG1heF9j
eWNsZXM6IDB4ZmZmZmZmZmYsIG1heF9pZGxlX25zOiA3NjQ1MDQxNzg1MTAwMDAwIG5zClsgICAg
MC4wMzk4OTddIGZ1dGV4IGhhc2ggdGFibGUgZW50cmllczogMTYzODQgKG9yZGVyOiA4LCAxMDQ4
NTc2IGJ5dGVzLCBsaW5lYXIpClsgICAgMC4wNDAxNTRdIHBpbmN0cmwgY29yZTogaW5pdGlhbGl6
ZWQgcGluY3RybCBzdWJzeXN0ZW0KWyAgICAwLjA0MDMxOV0gU01CSU9TIDIuNyBwcmVzZW50Lgpb
ICAgIDAuMDQwMzIzXSBETUk6IEFtYXpvbiBFQzIgYzZnLm1ldGFsL05vdCBTcGVjaWZpZWQsIEJJ
T1MgMS4wIDEwLzE2LzIwMTcKWyAgICAwLjA0MDQ1NF0gTkVUOiBSZWdpc3RlcmVkIFBGX05FVExJ
TksvUEZfUk9VVEUgcHJvdG9jb2wgZmFtaWx5ClsgICAgMC4wNDE1NjJdIERNQTogcHJlYWxsb2Nh
dGVkIDQwOTYgS2lCIEdGUF9LRVJORUwgcG9vbCBmb3IgYXRvbWljIGFsbG9jYXRpb25zClsgICAg
MC4wNDE3MjhdIERNQTogcHJlYWxsb2NhdGVkIDQwOTYgS2lCIEdGUF9LRVJORUx8R0ZQX0RNQSBw
b29sIGZvciBhdG9taWMgYWxsb2NhdGlvbnMKWyAgICAwLjA0MTg4M10gRE1BOiBwcmVhbGxvY2F0
ZWQgNDA5NiBLaUIgR0ZQX0tFUk5FTHxHRlBfRE1BMzIgcG9vbCBmb3IgYXRvbWljIGFsbG9jYXRp
b25zClsgICAgMC4wNDIwMDNdIHRoZXJtYWxfc3lzOiBSZWdpc3RlcmVkIHRoZXJtYWwgZ292ZXJu
b3IgJ3N0ZXBfd2lzZScKWyAgICAwLjA0MjAwNF0gdGhlcm1hbF9zeXM6IFJlZ2lzdGVyZWQgdGhl
cm1hbCBnb3Zlcm5vciAncG93ZXJfYWxsb2NhdG9yJwpbICAgIDAuMDQyMDQ4XSBjcHVpZGxlOiB1
c2luZyBnb3Zlcm5vciBtZW51ClsgICAgMC4wNDIwOTNdIGh3LWJyZWFrcG9pbnQ6IGZvdW5kIDYg
YnJlYWtwb2ludCBhbmQgNCB3YXRjaHBvaW50IHJlZ2lzdGVycy4KWyAgICAwLjA0MjM2MF0gQVNJ
RCBhbGxvY2F0b3IgaW5pdGlhbGlzZWQgd2l0aCAzMjc2OCBlbnRyaWVzClsgICAgMC4wNDI0NTdd
IEFDUEk6IGJ1cyB0eXBlIFBDSSByZWdpc3RlcmVkClsgICAgMC4wNDI0NTldIGFjcGlwaHA6IEFD
UEkgSG90IFBsdWcgUENJIENvbnRyb2xsZXIgRHJpdmVyIHZlcnNpb246IDAuNQpbICAgIDAuMDQy
NTIxXSBTZXJpYWw6IEFNQkEgUEwwMTEgVUFSVCBkcml2ZXIKWyAgICAwLjA0NDUwN10gSHVnZVRM
QiByZWdpc3RlcmVkIDEuMDAgR2lCIHBhZ2Ugc2l6ZSwgcHJlLWFsbG9jYXRlZCAwIHBhZ2VzClsg
ICAgMC4wNDQ1MTBdIEh1Z2VUTEIgcmVnaXN0ZXJlZCAzMi4wIE1pQiBwYWdlIHNpemUsIHByZS1h
bGxvY2F0ZWQgMCBwYWdlcwpbICAgIDAuMDQ0NTExXSBIdWdlVExCIHJlZ2lzdGVyZWQgMi4wMCBN
aUIgcGFnZSBzaXplLCBwcmUtYWxsb2NhdGVkIDAgcGFnZXMKWyAgICAwLjA0NDUxM10gSHVnZVRM
QiByZWdpc3RlcmVkIDY0LjAgS2lCIHBhZ2Ugc2l6ZSwgcHJlLWFsbG9jYXRlZCAwIHBhZ2VzClsg
ICAgMC4wNDQ5MzZdIGNyeXB0ZDogbWF4X2NwdV9xbGVuIHNldCB0byAxMDAwClsgICAgMC4xMTIy
MjldIHJhaWQ2OiBuZW9ueDggICBnZW4oKSAxMTUyNCBNQi9zClsgICAgMC4xODAyMzNdIHJhaWQ2
OiBuZW9ueDggICB4b3IoKSAgOTA4NCBNQi9zClsgICAgMC4yNDgyNDldIHJhaWQ2OiBuZW9ueDQg
ICBnZW4oKSAxMTM2MyBNQi9zClsgICAgMC4zMTYyNjZdIHJhaWQ2OiBuZW9ueDQgICB4b3IoKSAg
OTY2MSBNQi9zClsgICAgMC4zODQyODNdIHJhaWQ2OiBuZW9ueDIgICBnZW4oKSAxMDg1MSBNQi9z
ClsgICAgMC40NTIyOTddIHJhaWQ2OiBuZW9ueDIgICB4b3IoKSAgODU2NCBNQi9zClsgICAgMC41
MjAzMTRdIHJhaWQ2OiBuZW9ueDEgICBnZW4oKSAgODc4MCBNQi9zClsgICAgMC41ODgzMjldIHJh
aWQ2OiBuZW9ueDEgICB4b3IoKSAgNzQwNCBNQi9zClsgICAgMC42NTYzNDVdIHJhaWQ2OiBpbnQ2
NHg4ICBnZW4oKSAgNTI3MCBNQi9zClsgICAgMC43MjQzNjBdIHJhaWQ2OiBpbnQ2NHg4ICB4b3Io
KSAgMjk2OCBNQi9zClsgICAgMC43OTIzNzddIHJhaWQ2OiBpbnQ2NHg0ICBnZW4oKSAgNjA3OSBN
Qi9zClsgICAgMC44NjA0NDNdIHJhaWQ2OiBpbnQ2NHg0ICB4b3IoKSAgMzIzMCBNQi9zClsgICAg
MC45Mjg0MDhdIHJhaWQ2OiBpbnQ2NHgyICBnZW4oKSAgNTE1MSBNQi9zClsgICAgMC45OTY0MjFd
IHJhaWQ2OiBpbnQ2NHgyICB4b3IoKSAgMjc3NiBNQi9zClsgICAgMS4wNjQ0NDFdIHJhaWQ2OiBp
bnQ2NHgxICBnZW4oKSAgNDIyNiBNQi9zClsgICAgMS4xMzI0NTVdIHJhaWQ2OiBpbnQ2NHgxICB4
b3IoKSAgMjIxOCBNQi9zClsgICAgMS4xMzI0NTZdIHJhaWQ2OiB1c2luZyBhbGdvcml0aG0gbmVv
bng4IGdlbigpIDExNTI0IE1CL3MKWyAgICAxLjEzMjQ1N10gcmFpZDY6IC4uLi4geG9yKCkgOTA4
NCBNQi9zLCBybXcgZW5hYmxlZApbICAgIDEuMTMyNDU5XSByYWlkNjogdXNpbmcgbmVvbiByZWNv
dmVyeSBhbGdvcml0aG0KWyAgICAxLjEzMjUyMl0gQUNQSTogQWRkZWQgX09TSShNb2R1bGUgRGV2
aWNlKQpbICAgIDEuMTMyNTI0XSBBQ1BJOiBBZGRlZCBfT1NJKFByb2Nlc3NvciBEZXZpY2UpClsg
ICAgMS4xMzI1MjVdIEFDUEk6IEFkZGVkIF9PU0koMy4wIF9TQ1AgRXh0ZW5zaW9ucykKWyAgICAx
LjEzMjUyNl0gQUNQSTogQWRkZWQgX09TSShQcm9jZXNzb3IgQWdncmVnYXRvciBEZXZpY2UpClsg
ICAgMS4xMzI1MjhdIEFDUEk6IEFkZGVkIF9PU0koTGludXgtRGVsbC1WaWRlbykKWyAgICAxLjEz
MjUyOV0gQUNQSTogQWRkZWQgX09TSShMaW51eC1MZW5vdm8tTlYtSERNSS1BdWRpbykKWyAgICAx
LjEzMjUzMF0gQUNQSTogQWRkZWQgX09TSShMaW51eC1IUEktSHlicmlkLUdyYXBoaWNzKQpbICAg
IDEuMTM0MjU3XSBBQ1BJOiAzIEFDUEkgQU1MIHRhYmxlcyBzdWNjZXNzZnVsbHkgYWNxdWlyZWQg
YW5kIGxvYWRlZApbICAgIDEuMTM1MDgzXSBBQ1BJOiBJbnRlcnByZXRlciBlbmFibGVkClsgICAg
MS4xMzUwODVdIEFDUEk6IFVzaW5nIEdJQyBmb3IgaW50ZXJydXB0IHJvdXRpbmcKWyAgICAxLjEz
NTA5MV0gQUNQSTogTUNGRyB0YWJsZSBkZXRlY3RlZCwgNCBlbnRyaWVzClsgICAgMS4xMzUyNDBd
IEhFU1Q6IFRhYmxlIHBhcnNpbmcgaGFzIGJlZW4gaW5pdGlhbGl6ZWQuClsgICAgMS4xMzUyNDhd
IEdIRVM6IEdlbmVyaWMgaGFyZHdhcmUgZXJyb3Igc291cmNlOiAwIG5vdGlmaWVkIHZpYSBTREUg
SW50ZXJmYWNlIGlzIG5vdCBzdXBwb3J0ZWQhClsgICAgMS4xMzUyNTBdIEdIRVM6IHByb2JlIG9m
IEdIRVMuMCBmYWlsZWQgd2l0aCBlcnJvciAtMjIKWyAgICAxLjEzNTI1NF0gR0hFUzogR2VuZXJp
YyBoYXJkd2FyZSBlcnJvciBzb3VyY2U6IDEgbm90aWZpZWQgdmlhIFNERSBJbnRlcmZhY2UgaXMg
bm90IHN1cHBvcnRlZCEKWyAgICAxLjEzNTI1NV0gR0hFUzogcHJvYmUgb2YgR0hFUy4xIGZhaWxl
ZCB3aXRoIGVycm9yIC0yMgpbICAgIDEuMTM1MjgxXSBHSEVTOiBBUEVJIGZpcm13YXJlIGZpcnN0
IG1vZGUgaXMgZW5hYmxlZCBieSBBUEVJIGJpdCBhbmQgV0hFQSBfT1NDLgpbICAgIDEuMTQyMTc5
XSBBQ1BJOiBQQ0k6IEludGVycnVwdCBsaW5rIEwwMEEgY29uZmlndXJlZCBmb3IgSVJRIDE4NApb
ICAgIDEuMTQyMTg4XSBBQ1BJOiBQQ0k6IEludGVycnVwdCBsaW5rIEwwMEIgY29uZmlndXJlZCBm
b3IgSVJRIDE4NQpbICAgIDEuMTQyMTk2XSBBQ1BJOiBQQ0k6IEludGVycnVwdCBsaW5rIEwwMEMg
Y29uZmlndXJlZCBmb3IgSVJRIDE4NgpbICAgIDEuMTQyMjA0XSBBQ1BJOiBQQ0k6IEludGVycnVw
dCBsaW5rIEwwMEQgY29uZmlndXJlZCBmb3IgSVJRIDE4NwpbICAgIDEuMTQyMjEyXSBBQ1BJOiBQ
Q0k6IEludGVycnVwdCBsaW5rIEwwMUEgY29uZmlndXJlZCBmb3IgSVJRIDIwMApbICAgIDEuMTQy
MjE5XSBBQ1BJOiBQQ0k6IEludGVycnVwdCBsaW5rIEwwMUIgY29uZmlndXJlZCBmb3IgSVJRIDIw
MQpbICAgIDEuMTQyMjI3XSBBQ1BJOiBQQ0k6IEludGVycnVwdCBsaW5rIEwwMUMgY29uZmlndXJl
ZCBmb3IgSVJRIDIwMgpbICAgIDEuMTQyMjM1XSBBQ1BJOiBQQ0k6IEludGVycnVwdCBsaW5rIEww
MUQgY29uZmlndXJlZCBmb3IgSVJRIDIwMwpbICAgIDEuMTQyMjQyXSBBQ1BJOiBQQ0k6IEludGVy
cnVwdCBsaW5rIEwwMkEgY29uZmlndXJlZCBmb3IgSVJRIDIxNgpbICAgIDEuMTQyMjUwXSBBQ1BJ
OiBQQ0k6IEludGVycnVwdCBsaW5rIEwwMkIgY29uZmlndXJlZCBmb3IgSVJRIDIxNwpbICAgIDEu
MTQyMjU4XSBBQ1BJOiBQQ0k6IEludGVycnVwdCBsaW5rIEwwMkMgY29uZmlndXJlZCBmb3IgSVJR
IDIxOApbICAgIDEuMTQyMjY1XSBBQ1BJOiBQQ0k6IEludGVycnVwdCBsaW5rIEwwMkQgY29uZmln
dXJlZCBmb3IgSVJRIDIxOQpbICAgIDEuMTQyMjgzXSBBQ1BJOiBQQ0kgUm9vdCBCcmlkZ2UgW1BD
STBdIChkb21haW4gMDAwMCBbYnVzIDAwLWZmXSkKWyAgICAxLjE0MjI4OF0gYWNwaSBQTlAwQTA4
OjAwOiBfT1NDOiBPUyBzdXBwb3J0cyBbRXh0ZW5kZWRDb25maWcgQVNQTSBDbG9ja1BNIFNlZ21l
bnRzIE1TSSBIUFgtVHlwZTNdClsgICAgMS4xNDIzNDVdIGFjcGkgUE5QMEEwODowMDogX09TQzog
cGxhdGZvcm0gZG9lcyBub3Qgc3VwcG9ydCBbTFRSXQpbICAgIDEuMTQyMzkxXSBhY3BpIFBOUDBB
MDg6MDA6IF9PU0M6IE9TIG5vdyBjb250cm9scyBbUE1FIFBDSWVDYXBhYmlsaXR5XQpbICAgIDEu
MTQyNjc0XSBhY3BpIFBOUDBBMDg6MDA6IEVDQU0gYXJlYSBbbWVtIDB4YzAwMDAwMDAwMC0weGMw
MGZmZmZmZmZdIHJlc2VydmVkIGJ5IFBOUDBDMDI6MDAKWyAgICAxLjE0MjY4NF0gYWNwaSBQTlAw
QTA4OjAwOiBFQ0FNIGF0IFttZW0gMHhjMDAwMDAwMDAwLTB4YzAwZmZmZmZmZl0gZm9yIFtidXMg
MDAtZmZdClsgICAgMS4xNDI3MzNdIFBDSSBob3N0IGJyaWRnZSB0byBidXMgMDAwMDowMApbICAg
IDEuMTQyNzM1XSBwY2lfYnVzIDAwMDA6MDA6IHJvb3QgYnVzIHJlc291cmNlIFttZW0gMHg4MDAw
MDAwMC0weDlmZmZmZmZmIHdpbmRvd10KWyAgICAxLjE0MjczOF0gcGNpX2J1cyAwMDAwOjAwOiBy
b290IGJ1cyByZXNvdXJjZSBbbWVtIDB4MTgwMDAwMDAwMDAtMHgxOWZmZmZmZmZmZiB3aW5kb3dd
ClsgICAgMS4xNDI3MzldIHBjaV9idXMgMDAwMDowMDogcm9vdCBidXMgcmVzb3VyY2UgW2J1cyAw
MC1mZl0KWyAgICAxLjE0Mjc2MV0gcGNpIDAwMDA6MDA6MDAuMDogWzFkMGY6MDIwMF0gdHlwZSAw
MSBjbGFzcyAweDA2MDQwMApbICAgIDEuMTQyNzgwXSBwY2kgMDAwMDowMDowMC4wOiBzdXBwb3J0
cyBEMQpbICAgIDEuMTQyNzgyXSBwY2kgMDAwMDowMDowMC4wOiBQTUUjIHN1cHBvcnRlZCBmcm9t
IEQwIEQxIEQzaG90IEQzY29sZApbICAgIDEuMTQyODIwXSBwY2kgMDAwMDowMDowMi4wOiBbMWQw
ZjowMjAwXSB0eXBlIDAxIGNsYXNzIDB4MDYwNDAwClsgICAgMS4xNDI4MzVdIHBjaSAwMDAwOjAw
OjAyLjA6IHN1cHBvcnRzIEQxClsgICAgMS4xNDI4MzZdIHBjaSAwMDAwOjAwOjAyLjA6IFBNRSMg
c3VwcG9ydGVkIGZyb20gRDAgRDEgRDNob3QgRDNjb2xkClsgICAgMS4xNDI5MDZdIHBjaSAwMDAw
OjAxOjAwLjA6IFsxZDBmOmJlYzJdIHR5cGUgMDEgY2xhc3MgMHgwNjA0MDAKWyAgICAxLjE0MzAw
M10gcGNpIDAwMDA6MDE6MDAuMDogUE1FIyBzdXBwb3J0ZWQgZnJvbSBEMCBEM2hvdCBEM2NvbGQK
WyAgICAxLjE0MzA5OV0gcGNpIDAwMDA6MDI6MDAuMDogWzFkMGY6YmVjMl0gdHlwZSAwMSBjbGFz
cyAweDA2MDQwMApbICAgIDEuMTQzMTg5XSBwY2kgMDAwMDowMjowMC4wOiBQTUUjIHN1cHBvcnRl
ZCBmcm9tIEQwIEQzaG90IEQzY29sZApbICAgIDEuMTQzMjUxXSBwY2kgMDAwMDowMjowMS4wOiBb
MWQwZjpiZWMyXSB0eXBlIDAxIGNsYXNzIDB4MDYwNDAwClsgICAgMS4xNDMzNDFdIHBjaSAwMDAw
OjAyOjAxLjA6IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAgRDNob3QgRDNjb2xkClsgICAgMS4xNDM0
MDJdIHBjaSAwMDAwOjAyOjAyLjA6IFsxZDBmOmJlYzJdIHR5cGUgMDEgY2xhc3MgMHgwNjA0MDAK
WyAgICAxLjE0MzQ5MV0gcGNpIDAwMDA6MDI6MDIuMDogUE1FIyBzdXBwb3J0ZWQgZnJvbSBEMCBE
M2hvdCBEM2NvbGQKWyAgICAxLjE0MzU1Ml0gcGNpIDAwMDA6MDI6MDMuMDogWzFkMGY6YmVjMl0g
dHlwZSAwMSBjbGFzcyAweDA2MDQwMApbICAgIDEuMTQzNjQxXSBwY2kgMDAwMDowMjowMy4wOiBQ
TUUjIHN1cHBvcnRlZCBmcm9tIEQwIEQzaG90IEQzY29sZApbICAgIDEuMTQzNzA0XSBwY2kgMDAw
MDowMjowNC4wOiBbMWQwZjpiZWMyXSB0eXBlIDAxIGNsYXNzIDB4MDYwNDAwClsgICAgMS4xNDM3
OTNdIHBjaSAwMDAwOjAyOjA0LjA6IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAgRDNob3QgRDNjb2xk
ClsgICAgMS4xNDM4NTZdIHBjaSAwMDAwOjAyOjA1LjA6IFsxZDBmOmJlYzJdIHR5cGUgMDEgY2xh
c3MgMHgwNjA0MDAKWyAgICAxLjE0Mzk0NV0gcGNpIDAwMDA6MDI6MDUuMDogUE1FIyBzdXBwb3J0
ZWQgZnJvbSBEMCBEM2hvdCBEM2NvbGQKWyAgICAxLjE0NDAxMV0gcGNpIDAwMDA6MDI6MDYuMDog
WzFkMGY6YmVjMl0gdHlwZSAwMSBjbGFzcyAweDA2MDQwMApbICAgIDEuMTQ0MTAwXSBwY2kgMDAw
MDowMjowNi4wOiBQTUUjIHN1cHBvcnRlZCBmcm9tIEQwIEQzaG90IEQzY29sZApbICAgIDEuMTQ0
MTY2XSBwY2kgMDAwMDowMjowNy4wOiBbMWQwZjpiZWMyXSB0eXBlIDAxIGNsYXNzIDB4MDYwNDAw
ClsgICAgMS4xNDQyNTVdIHBjaSAwMDAwOjAyOjA3LjA6IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAg
RDNob3QgRDNjb2xkClsgICAgMS4xNDQzMjJdIHBjaSAwMDAwOjAyOjA4LjA6IFsxZDBmOmJlYzJd
IHR5cGUgMDEgY2xhc3MgMHgwNjA0MDAKWyAgICAxLjE0NDQxMl0gcGNpIDAwMDA6MDI6MDguMDog
UE1FIyBzdXBwb3J0ZWQgZnJvbSBEMCBEM2hvdCBEM2NvbGQKWyAgICAxLjE0NDQ4NV0gcGNpIDAw
MDA6MDI6MDkuMDogWzFkMGY6YmVjMl0gdHlwZSAwMSBjbGFzcyAweDA2MDQwMApbICAgIDEuMTQ0
NTc1XSBwY2kgMDAwMDowMjowOS4wOiBQTUUjIHN1cHBvcnRlZCBmcm9tIEQwIEQzaG90IEQzY29s
ZApbICAgIDEuMTQ0NjQ0XSBwY2kgMDAwMDowMjowYS4wOiBbMWQwZjpiZWMyXSB0eXBlIDAxIGNs
YXNzIDB4MDYwNDAwClsgICAgMS4xNDQ3MzRdIHBjaSAwMDAwOjAyOjBhLjA6IFBNRSMgc3VwcG9y
dGVkIGZyb20gRDAgRDNob3QgRDNjb2xkClsgICAgMS4xNDQ4MDRdIHBjaSAwMDAwOjAyOjBiLjA6
IFsxZDBmOmJlYzJdIHR5cGUgMDEgY2xhc3MgMHgwNjA0MDAKWyAgICAxLjE0NDg5M10gcGNpIDAw
MDA6MDI6MGIuMDogUE1FIyBzdXBwb3J0ZWQgZnJvbSBEMCBEM2hvdCBEM2NvbGQKWyAgICAxLjE0
NDk2OV0gcGNpIDAwMDA6MDI6MGMuMDogWzFkMGY6YmVjMl0gdHlwZSAwMSBjbGFzcyAweDA2MDQw
MApbICAgIDEuMTQ1MDU4XSBwY2kgMDAwMDowMjowYy4wOiBQTUUjIHN1cHBvcnRlZCBmcm9tIEQw
IEQzaG90IEQzY29sZApbICAgIDEuMTQ1MTMxXSBwY2kgMDAwMDowMjowZC4wOiBbMWQwZjpiZWMy
XSB0eXBlIDAxIGNsYXNzIDB4MDYwNDAwClsgICAgMS4xNDUyMjFdIHBjaSAwMDAwOjAyOjBkLjA6
IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAgRDNob3QgRDNjb2xkClsgICAgMS4xNDUyOTRdIHBjaSAw
MDAwOjAyOjBlLjA6IFsxZDBmOmJlYzJdIHR5cGUgMDEgY2xhc3MgMHgwNjA0MDAKWyAgICAxLjE0
NTM4NF0gcGNpIDAwMDA6MDI6MGUuMDogUE1FIyBzdXBwb3J0ZWQgZnJvbSBEMCBEM2hvdCBEM2Nv
bGQKWyAgICAxLjE0NTQ1OV0gcGNpIDAwMDA6MDI6MGYuMDogWzFkMGY6YmVjMl0gdHlwZSAwMSBj
bGFzcyAweDA2MDQwMApbICAgIDEuMTQ1NTQ4XSBwY2kgMDAwMDowMjowZi4wOiBQTUUjIHN1cHBv
cnRlZCBmcm9tIEQwIEQzaG90IEQzY29sZApbICAgIDEuMTQ1NjY4XSBwY2kgMDAwMDowMzowMC4w
OiBbMWQwZjplYzIwXSB0eXBlIDAwIGNsYXNzIDB4MDIwMDAwClsgICAgMS4xNDU2ODVdIHBjaSAw
MDAwOjAzOjAwLjA6IHJlZyAweDEwOiBbbWVtIDB4ODVlMDAwMDAtMHg4NWZmZmZmZl0KWyAgICAx
LjE0NTcwNl0gcGNpIDAwMDA6MDM6MDAuMDogcmVnIDB4MTg6IFttZW0gMHgxODAyZjAwMDAwMC0w
eDE4MDJmZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNDU3ODNdIHBjaSAwMDAwOjAzOjAwLjA6
IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAKWyAgICAxLjE0NjM3NV0gcGNpIDAwMDA6MTM6MDAuMDog
WzFkMGY6YmVjMl0gdHlwZSAwMSBjbGFzcyAweDA2MDQwMApbICAgIDEuMTQ2NDY3XSBwY2kgMDAw
MDoxMzowMC4wOiBQTUUjIHN1cHBvcnRlZCBmcm9tIEQwIEQzaG90IEQzY29sZApbICAgIDEuMTQ2
NTYxXSBwY2kgMDAwMDoxNDowMC4wOiBbMWQwZjpiZWMyXSB0eXBlIDAxIGNsYXNzIDB4MDYwNDAw
ClsgICAgMS4xNDY2NTBdIHBjaSAwMDAwOjE0OjAwLjA6IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAg
RDNob3QgRDNjb2xkClsgICAgMS4xNDY3MTFdIHBjaSAwMDAwOjE0OjAxLjA6IFsxZDBmOmJlYzJd
IHR5cGUgMDEgY2xhc3MgMHgwNjA0MDAKWyAgICAxLjE0Njc5OV0gcGNpIDAwMDA6MTQ6MDEuMDog
UE1FIyBzdXBwb3J0ZWQgZnJvbSBEMCBEM2hvdCBEM2NvbGQKWyAgICAxLjE0Njg1OV0gcGNpIDAw
MDA6MTQ6MDIuMDogWzFkMGY6YmVjMl0gdHlwZSAwMSBjbGFzcyAweDA2MDQwMApbICAgIDEuMTQ2
OTQ4XSBwY2kgMDAwMDoxNDowMi4wOiBQTUUjIHN1cHBvcnRlZCBmcm9tIEQwIEQzaG90IEQzY29s
ZApbICAgIDEuMTQ3MDA5XSBwY2kgMDAwMDoxNDowMy4wOiBbMWQwZjpiZWMyXSB0eXBlIDAxIGNs
YXNzIDB4MDYwNDAwClsgICAgMS4xNDcwOTddIHBjaSAwMDAwOjE0OjAzLjA6IFBNRSMgc3VwcG9y
dGVkIGZyb20gRDAgRDNob3QgRDNjb2xkClsgICAgMS4xNDcxNjFdIHBjaSAwMDAwOjE0OjA0LjA6
IFsxZDBmOmJlYzJdIHR5cGUgMDEgY2xhc3MgMHgwNjA0MDAKWyAgICAxLjE0NzI0OV0gcGNpIDAw
MDA6MTQ6MDQuMDogUE1FIyBzdXBwb3J0ZWQgZnJvbSBEMCBEM2hvdCBEM2NvbGQKWyAgICAxLjE0
NzMxM10gcGNpIDAwMDA6MTQ6MDUuMDogWzFkMGY6YmVjMl0gdHlwZSAwMSBjbGFzcyAweDA2MDQw
MApbICAgIDEuMTQ3NDAyXSBwY2kgMDAwMDoxNDowNS4wOiBQTUUjIHN1cHBvcnRlZCBmcm9tIEQw
IEQzaG90IEQzY29sZApbICAgIDEuMTQ3NDY3XSBwY2kgMDAwMDoxNDowNi4wOiBbMWQwZjpiZWMy
XSB0eXBlIDAxIGNsYXNzIDB4MDYwNDAwClsgICAgMS4xNDc1NTVdIHBjaSAwMDAwOjE0OjA2LjA6
IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAgRDNob3QgRDNjb2xkClsgICAgMS4xNDc2MjFdIHBjaSAw
MDAwOjE0OjA3LjA6IFsxZDBmOmJlYzJdIHR5cGUgMDEgY2xhc3MgMHgwNjA0MDAKWyAgICAxLjE0
NzcxMF0gcGNpIDAwMDA6MTQ6MDcuMDogUE1FIyBzdXBwb3J0ZWQgZnJvbSBEMCBEM2hvdCBEM2Nv
bGQKWyAgICAxLjE0Nzc3Nl0gcGNpIDAwMDA6MTQ6MDguMDogWzFkMGY6YmVjMl0gdHlwZSAwMSBj
bGFzcyAweDA2MDQwMApbICAgIDEuMTQ3ODY0XSBwY2kgMDAwMDoxNDowOC4wOiBQTUUjIHN1cHBv
cnRlZCBmcm9tIEQwIEQzaG90IEQzY29sZApbICAgIDEuMTQ3OTMyXSBwY2kgMDAwMDoxNDowOS4w
OiBbMWQwZjpiZWMyXSB0eXBlIDAxIGNsYXNzIDB4MDYwNDAwClsgICAgMS4xNDgwMjBdIHBjaSAw
MDAwOjE0OjA5LjA6IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAgRDNob3QgRDNjb2xkClsgICAgMS4x
NDgwODldIHBjaSAwMDAwOjE0OjBhLjA6IFsxZDBmOmJlYzJdIHR5cGUgMDEgY2xhc3MgMHgwNjA0
MDAKWyAgICAxLjE0ODE3OF0gcGNpIDAwMDA6MTQ6MGEuMDogUE1FIyBzdXBwb3J0ZWQgZnJvbSBE
MCBEM2hvdCBEM2NvbGQKWyAgICAxLjE0ODI0N10gcGNpIDAwMDA6MTQ6MGIuMDogWzFkMGY6YmVj
Ml0gdHlwZSAwMSBjbGFzcyAweDA2MDQwMApbICAgIDEuMTQ4MzM2XSBwY2kgMDAwMDoxNDowYi4w
OiBQTUUjIHN1cHBvcnRlZCBmcm9tIEQwIEQzaG90IEQzY29sZApbICAgIDEuMTQ4NDA3XSBwY2kg
MDAwMDoxNDowYy4wOiBbMWQwZjpiZWMyXSB0eXBlIDAxIGNsYXNzIDB4MDYwNDAwClsgICAgMS4x
NDg0OThdIHBjaSAwMDAwOjE0OjBjLjA6IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAgRDNob3QgRDNj
b2xkClsgICAgMS4xNDg1NzBdIHBjaSAwMDAwOjE0OjBkLjA6IFsxZDBmOmJlYzJdIHR5cGUgMDEg
Y2xhc3MgMHgwNjA0MDAKWyAgICAxLjE0ODY1OV0gcGNpIDAwMDA6MTQ6MGQuMDogUE1FIyBzdXBw
b3J0ZWQgZnJvbSBEMCBEM2hvdCBEM2NvbGQKWyAgICAxLjE0ODczNF0gcGNpIDAwMDA6MTQ6MGUu
MDogWzFkMGY6YmVjMl0gdHlwZSAwMSBjbGFzcyAweDA2MDQwMApbICAgIDEuMTQ4ODIzXSBwY2kg
MDAwMDoxNDowZS4wOiBQTUUjIHN1cHBvcnRlZCBmcm9tIEQwIEQzaG90IEQzY29sZApbICAgIDEu
MTQ4ODk5XSBwY2kgMDAwMDoxNDowZi4wOiBbMWQwZjpiZWMyXSB0eXBlIDAxIGNsYXNzIDB4MDYw
NDAwClsgICAgMS4xNDg5ODddIHBjaSAwMDAwOjE0OjBmLjA6IFBNRSMgc3VwcG9ydGVkIGZyb20g
RDAgRDNob3QgRDNjb2xkClsgICAgMS4xNDkwNjJdIHBjaSAwMDAwOjE0OjEwLjA6IFsxZDBmOmJl
YzJdIHR5cGUgMDEgY2xhc3MgMHgwNjA0MDAKWyAgICAxLjE0OTE1MF0gcGNpIDAwMDA6MTQ6MTAu
MDogUE1FIyBzdXBwb3J0ZWQgZnJvbSBEMCBEM2hvdCBEM2NvbGQKWyAgICAxLjE0OTIyNl0gcGNp
IDAwMDA6MTQ6MTEuMDogWzFkMGY6YmVjMl0gdHlwZSAwMSBjbGFzcyAweDA2MDQwMApbICAgIDEu
MTQ5MzE1XSBwY2kgMDAwMDoxNDoxMS4wOiBQTUUjIHN1cHBvcnRlZCBmcm9tIEQwIEQzaG90IEQz
Y29sZApbICAgIDEuMTQ5MzkyXSBwY2kgMDAwMDoxNDoxMi4wOiBbMWQwZjpiZWMyXSB0eXBlIDAx
IGNsYXNzIDB4MDYwNDAwClsgICAgMS4xNDk0ODBdIHBjaSAwMDAwOjE0OjEyLjA6IFBNRSMgc3Vw
cG9ydGVkIGZyb20gRDAgRDNob3QgRDNjb2xkClsgICAgMS4xNDk1NTldIHBjaSAwMDAwOjE0OjEz
LjA6IFsxZDBmOmJlYzJdIHR5cGUgMDEgY2xhc3MgMHgwNjA0MDAKWyAgICAxLjE0OTY0N10gcGNp
IDAwMDA6MTQ6MTMuMDogUE1FIyBzdXBwb3J0ZWQgZnJvbSBEMCBEM2hvdCBEM2NvbGQKWyAgICAx
LjE0OTcyN10gcGNpIDAwMDA6MTQ6MTQuMDogWzFkMGY6YmVjMl0gdHlwZSAwMSBjbGFzcyAweDA2
MDQwMApbICAgIDEuMTQ5ODE2XSBwY2kgMDAwMDoxNDoxNC4wOiBQTUUjIHN1cHBvcnRlZCBmcm9t
IEQwIEQzaG90IEQzY29sZApbICAgIDEuMTQ5ODk3XSBwY2kgMDAwMDoxNDoxNS4wOiBbMWQwZjpi
ZWMyXSB0eXBlIDAxIGNsYXNzIDB4MDYwNDAwClsgICAgMS4xNDk5ODZdIHBjaSAwMDAwOjE0OjE1
LjA6IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAgRDNob3QgRDNjb2xkClsgICAgMS4xNTAwNjldIHBj
aSAwMDAwOjE0OjE2LjA6IFsxZDBmOmJlYzJdIHR5cGUgMDEgY2xhc3MgMHgwNjA0MDAKWyAgICAx
LjE1MDE1Nl0gcGNpIDAwMDA6MTQ6MTYuMDogUE1FIyBzdXBwb3J0ZWQgZnJvbSBEMCBEM2hvdCBE
M2NvbGQKWyAgICAxLjE1MDIzOV0gcGNpIDAwMDA6MTQ6MTcuMDogWzFkMGY6YmVjMl0gdHlwZSAw
MSBjbGFzcyAweDA2MDQwMApbICAgIDEuMTUwMzI2XSBwY2kgMDAwMDoxNDoxNy4wOiBQTUUjIHN1
cHBvcnRlZCBmcm9tIEQwIEQzaG90IEQzY29sZApbICAgIDEuMTUwNDE1XSBwY2kgMDAwMDoxNDox
OC4wOiBbMWQwZjpiZWMyXSB0eXBlIDAxIGNsYXNzIDB4MDYwNDAwClsgICAgMS4xNTA1MDNdIHBj
aSAwMDAwOjE0OjE4LjA6IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAgRDNob3QgRDNjb2xkClsgICAg
MS4xNTA1ODhdIHBjaSAwMDAwOjE0OjE5LjA6IFsxZDBmOmJlYzJdIHR5cGUgMDEgY2xhc3MgMHgw
NjA0MDAKWyAgICAxLjE1MDY3NV0gcGNpIDAwMDA6MTQ6MTkuMDogUE1FIyBzdXBwb3J0ZWQgZnJv
bSBEMCBEM2hvdCBEM2NvbGQKWyAgICAxLjE1MDc2Ml0gcGNpIDAwMDA6MTQ6MWEuMDogWzFkMGY6
YmVjMl0gdHlwZSAwMSBjbGFzcyAweDA2MDQwMApbICAgIDEuMTUwODQ5XSBwY2kgMDAwMDoxNDox
YS4wOiBQTUUjIHN1cHBvcnRlZCBmcm9tIEQwIEQzaG90IEQzY29sZApbICAgIDEuMTUwOTM3XSBw
Y2kgMDAwMDoxNDoxYi4wOiBbMWQwZjpiZWMyXSB0eXBlIDAxIGNsYXNzIDB4MDYwNDAwClsgICAg
MS4xNTEwMjVdIHBjaSAwMDAwOjE0OjFiLjA6IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAgRDNob3Qg
RDNjb2xkClsgICAgMS4xNTExMTNdIHBjaSAwMDAwOjE0OjFjLjA6IFsxZDBmOmJlYzJdIHR5cGUg
MDEgY2xhc3MgMHgwNjA0MDAKWyAgICAxLjE1MTIwMV0gcGNpIDAwMDA6MTQ6MWMuMDogUE1FIyBz
dXBwb3J0ZWQgZnJvbSBEMCBEM2hvdCBEM2NvbGQKWyAgICAxLjE1MTI5MV0gcGNpIDAwMDA6MTQ6
MWQuMDogWzFkMGY6YmVjMl0gdHlwZSAwMSBjbGFzcyAweDA2MDQwMApbICAgIDEuMTUxMzc5XSBw
Y2kgMDAwMDoxNDoxZC4wOiBQTUUjIHN1cHBvcnRlZCBmcm9tIEQwIEQzaG90IEQzY29sZApbICAg
IDEuMTUxNDcwXSBwY2kgMDAwMDoxNDoxZS4wOiBbMWQwZjpiZWMyXSB0eXBlIDAxIGNsYXNzIDB4
MDYwNDAwClsgICAgMS4xNTE1NThdIHBjaSAwMDAwOjE0OjFlLjA6IFBNRSMgc3VwcG9ydGVkIGZy
b20gRDAgRDNob3QgRDNjb2xkClsgICAgMS4xNTE2NTFdIHBjaSAwMDAwOjE0OjFmLjA6IFsxZDBm
OmJlYzJdIHR5cGUgMDEgY2xhc3MgMHgwNjA0MDAKWyAgICAxLjE1MTczOV0gcGNpIDAwMDA6MTQ6
MWYuMDogUE1FIyBzdXBwb3J0ZWQgZnJvbSBEMCBEM2hvdCBEM2NvbGQKWyAgICAxLjE1MTg2Ml0g
cGNpIDAwMDA6MTU6MDAuMDogWzFkMGY6ODI1MF0gdHlwZSAwMCBjbGFzcyAweDA3MDAwMwpbICAg
IDEuMTUxODgyXSBwY2kgMDAwMDoxNTowMC4wOiByZWcgMHgxMDogW21lbSAweDgzZTAwMDAwLTB4
ODNlMDNmZmZdClsgICAgMS4xNTE5NzddIHBjaSAwMDAwOjE1OjAwLjA6IFBNRSMgc3VwcG9ydGVk
IGZyb20gRDAKWyAgICAxLjE1MjA3NF0gcGNpIDAwMDA6MTY6MDAuMDogWzFkMGY6MDA2MV0gdHlw
ZSAwMCBjbGFzcyAweDAxMDgwMgpbICAgIDEuMTUyMDkzXSBwY2kgMDAwMDoxNjowMC4wOiByZWcg
MHgxMDogW21lbSAweDgzYzAwMDAwLTB4ODNkZmZmZmYgNjRiaXRdClsgICAgMS4xNTIxODJdIHBj
aSAwMDAwOjE2OjAwLjA6IFBNRSMgc3VwcG9ydGVkIGZyb20gRDAKWyAgICAxLjE1MzI0M10gcGNp
X2J1cyAwMDAwOjAwOiBvbiBOVU1BIG5vZGUgMApbICAgIDEuMTUzMjQ1XSBwY2kgMDAwMDowMDow
MC4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMDEtMTJdClsgICAgMS4xNTMyNDhdIHBjaSAwMDAwOjAw
OjAwLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODQwMDAwMDAtMHg4NWZmZmZmZl0KWyAgICAx
LjE1MzI1MF0gcGNpIDAwMDA6MDA6MDAuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAyMDAw
MDAwMC0weDE4MDJmZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTMyNTJdIHBjaSAwMDAwOjAx
OjAwLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAwMi0xMl0KWyAgICAxLjE1MzI1OF0gcGNpIDAwMDA6
MDE6MDAuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4NDAwMDAwMC0weDg1ZmZmZmZmXQpbICAg
IDEuMTUzMjYzXSBwY2kgMDAwMDowMTowMC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDIw
MDAwMDAwLTB4MTgwMmZmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1MzI2NV0gcGNpIDAwMDA6
MDI6MDAuMDogUENJIGJyaWRnZSB0byBbYnVzIDAzXQpbICAgIDEuMTUzMjcxXSBwY2kgMDAwMDow
MjowMC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDg1ZTAwMDAwLTB4ODVmZmZmZmZdClsgICAg
MS4xNTMyNzZdIHBjaSAwMDAwOjAyOjAwLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMmYw
MDAwMDAtMHgxODAyZmZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTUzMjc4XSBwY2kgMDAwMDow
MjowMS4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMDRdClsgICAgMS4xNTMyODNdIHBjaSAwMDAwOjAy
OjAxLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODVjMDAwMDAtMHg4NWRmZmZmZl0KWyAgICAx
LjE1MzI4OV0gcGNpIDAwMDA6MDI6MDEuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAyZTAw
MDAwMC0weDE4MDJlZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTMyOTBdIHBjaSAwMDAwOjAy
OjAyLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAwNV0KWyAgICAxLjE1MzI5Nl0gcGNpIDAwMDA6MDI6
MDIuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4NWEwMDAwMC0weDg1YmZmZmZmXQpbICAgIDEu
MTUzMzAxXSBwY2kgMDAwMDowMjowMi4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDJkMDAw
MDAwLTB4MTgwMmRmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1MzMwMl0gcGNpIDAwMDA6MDI6
MDMuMDogUENJIGJyaWRnZSB0byBbYnVzIDA2XQpbICAgIDEuMTUzMzA4XSBwY2kgMDAwMDowMjow
My4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDg1ODAwMDAwLTB4ODU5ZmZmZmZdClsgICAgMS4x
NTMzMTNdIHBjaSAwMDAwOjAyOjAzLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMmMwMDAw
MDAtMHgxODAyY2ZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTUzMzE0XSBwY2kgMDAwMDowMjow
NC4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMDddClsgICAgMS4xNTMzMjBdIHBjaSAwMDAwOjAyOjA0
LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODU2MDAwMDAtMHg4NTdmZmZmZl0KWyAgICAxLjE1
MzMyNV0gcGNpIDAwMDA6MDI6MDQuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAyYjAwMDAw
MC0weDE4MDJiZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTMzMjZdIHBjaSAwMDAwOjAyOjA1
LjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAwOF0KWyAgICAxLjE1MzMzMl0gcGNpIDAwMDA6MDI6MDUu
MDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4NTQwMDAwMC0weDg1NWZmZmZmXQpbICAgIDEuMTUz
MzM3XSBwY2kgMDAwMDowMjowNS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDJhMDAwMDAw
LTB4MTgwMmFmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1MzMzOF0gcGNpIDAwMDA6MDI6MDYu
MDogUENJIGJyaWRnZSB0byBbYnVzIDA5XQpbICAgIDEuMTUzMzQ0XSBwY2kgMDAwMDowMjowNi4w
OiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDg1MjAwMDAwLTB4ODUzZmZmZmZdClsgICAgMS4xNTMz
NDldIHBjaSAwMDAwOjAyOjA2LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMjkwMDAwMDAt
MHgxODAyOWZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTUzMzUwXSBwY2kgMDAwMDowMjowNy4w
OiBQQ0kgYnJpZGdlIHRvIFtidXMgMGFdClsgICAgMS4xNTMzNTZdIHBjaSAwMDAwOjAyOjA3LjA6
ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODUwMDAwMDAtMHg4NTFmZmZmZl0KWyAgICAxLjE1MzM2
MV0gcGNpIDAwMDA6MDI6MDcuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAyODAwMDAwMC0w
eDE4MDI4ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTMzNjJdIHBjaSAwMDAwOjAyOjA4LjA6
IFBDSSBicmlkZ2UgdG8gW2J1cyAwYl0KWyAgICAxLjE1MzM2OF0gcGNpIDAwMDA6MDI6MDguMDog
ICBicmlkZ2Ugd2luZG93IFttZW0gMHg4NGUwMDAwMC0weDg0ZmZmZmZmXQpbICAgIDEuMTUzMzcz
XSBwY2kgMDAwMDowMjowOC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDI3MDAwMDAwLTB4
MTgwMjdmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1MzM3NF0gcGNpIDAwMDA6MDI6MDkuMDog
UENJIGJyaWRnZSB0byBbYnVzIDBjXQpbICAgIDEuMTUzMzgwXSBwY2kgMDAwMDowMjowOS4wOiAg
IGJyaWRnZSB3aW5kb3cgW21lbSAweDg0YzAwMDAwLTB4ODRkZmZmZmZdClsgICAgMS4xNTMzODVd
IHBjaSAwMDAwOjAyOjA5LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMjYwMDAwMDAtMHgx
ODAyNmZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTUzMzg2XSBwY2kgMDAwMDowMjowYS4wOiBQ
Q0kgYnJpZGdlIHRvIFtidXMgMGRdClsgICAgMS4xNTMzOTJdIHBjaSAwMDAwOjAyOjBhLjA6ICAg
YnJpZGdlIHdpbmRvdyBbbWVtIDB4ODRhMDAwMDAtMHg4NGJmZmZmZl0KWyAgICAxLjE1MzM5N10g
cGNpIDAwMDA6MDI6MGEuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAyNTAwMDAwMC0weDE4
MDI1ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTMzOThdIHBjaSAwMDAwOjAyOjBiLjA6IFBD
SSBicmlkZ2UgdG8gW2J1cyAwZV0KWyAgICAxLjE1MzQwM10gcGNpIDAwMDA6MDI6MGIuMDogICBi
cmlkZ2Ugd2luZG93IFttZW0gMHg4NDgwMDAwMC0weDg0OWZmZmZmXQpbICAgIDEuMTUzNDA5XSBw
Y2kgMDAwMDowMjowYi4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDI0MDAwMDAwLTB4MTgw
MjRmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1MzQxMF0gcGNpIDAwMDA6MDI6MGMuMDogUENJ
IGJyaWRnZSB0byBbYnVzIDBmXQpbICAgIDEuMTUzNDE1XSBwY2kgMDAwMDowMjowYy4wOiAgIGJy
aWRnZSB3aW5kb3cgW21lbSAweDg0NjAwMDAwLTB4ODQ3ZmZmZmZdClsgICAgMS4xNTM0MjBdIHBj
aSAwMDAwOjAyOjBjLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMjMwMDAwMDAtMHgxODAy
M2ZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTUzNDIyXSBwY2kgMDAwMDowMjowZC4wOiBQQ0kg
YnJpZGdlIHRvIFtidXMgMTBdClsgICAgMS4xNTM0MjddIHBjaSAwMDAwOjAyOjBkLjA6ICAgYnJp
ZGdlIHdpbmRvdyBbbWVtIDB4ODQ0MDAwMDAtMHg4NDVmZmZmZl0KWyAgICAxLjE1MzQzMl0gcGNp
IDAwMDA6MDI6MGQuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAyMjAwMDAwMC0weDE4MDIy
ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTM0MzRdIHBjaSAwMDAwOjAyOjBlLjA6IFBDSSBi
cmlkZ2UgdG8gW2J1cyAxMV0KWyAgICAxLjE1MzQzOV0gcGNpIDAwMDA6MDI6MGUuMDogICBicmlk
Z2Ugd2luZG93IFttZW0gMHg4NDIwMDAwMC0weDg0M2ZmZmZmXQpbICAgIDEuMTUzNDQ0XSBwY2kg
MDAwMDowMjowZS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDIxMDAwMDAwLTB4MTgwMjFm
ZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1MzQ0Nl0gcGNpIDAwMDA6MDI6MGYuMDogUENJIGJy
aWRnZSB0byBbYnVzIDEyXQpbICAgIDEuMTUzNDUxXSBwY2kgMDAwMDowMjowZi4wOiAgIGJyaWRn
ZSB3aW5kb3cgW21lbSAweDg0MDAwMDAwLTB4ODQxZmZmZmZdClsgICAgMS4xNTM0NTZdIHBjaSAw
MDAwOjAyOjBmLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMjAwMDAwMDAtMHgxODAyMGZm
ZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTUzNDU4XSBwY2kgMDAwMDowMDowMi4wOiBQQ0kgYnJp
ZGdlIHRvIFtidXMgMTMtMzRdClsgICAgMS4xNTM0NjBdIHBjaSAwMDAwOjAwOjAyLjA6ICAgYnJp
ZGdlIHdpbmRvdyBbbWVtIDB4ODAwMDAwMDAtMHg4M2ZmZmZmZl0KWyAgICAxLjE1MzQ2MV0gcGNp
IDAwMDA6MDA6MDIuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAwMDAwMDAwMC0weDE4MDFm
ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTM0NjNdIHBjaSAwMDAwOjEzOjAwLjA6IFBDSSBi
cmlkZ2UgdG8gW2J1cyAxNC0zNF0KWyAgICAxLjE1MzQ3MF0gcGNpIDAwMDA6MTM6MDAuMDogICBi
cmlkZ2Ugd2luZG93IFttZW0gMHg4MDAwMDAwMC0weDgzZmZmZmZmXQpbICAgIDEuMTUzNDc1XSBw
Y2kgMDAwMDoxMzowMC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDAwMDAwMDAwLTB4MTgw
MWZmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1MzQ3Nl0gcGNpIDAwMDA6MTQ6MDAuMDogUENJ
IGJyaWRnZSB0byBbYnVzIDE1XQpbICAgIDEuMTUzNDgyXSBwY2kgMDAwMDoxNDowMC4wOiAgIGJy
aWRnZSB3aW5kb3cgW21lbSAweDgzZTAwMDAwLTB4ODNmZmZmZmZdClsgICAgMS4xNTM0ODddIHBj
aSAwMDAwOjE0OjAwLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMWYwMDAwMDAtMHgxODAx
ZmZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTUzNDg5XSBwY2kgMDAwMDoxNDowMS4wOiBQQ0kg
YnJpZGdlIHRvIFtidXMgMTZdClsgICAgMS4xNTM0OTRdIHBjaSAwMDAwOjE0OjAxLjA6ICAgYnJp
ZGdlIHdpbmRvdyBbbWVtIDB4ODNjMDAwMDAtMHg4M2RmZmZmZl0KWyAgICAxLjE1MzQ5OV0gcGNp
IDAwMDA6MTQ6MDEuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAxZTAwMDAwMC0weDE4MDFl
ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTM1MDFdIHBjaSAwMDAwOjE0OjAyLjA6IFBDSSBi
cmlkZ2UgdG8gW2J1cyAxN10KWyAgICAxLjE1MzUwNl0gcGNpIDAwMDA6MTQ6MDIuMDogICBicmlk
Z2Ugd2luZG93IFttZW0gMHg4M2EwMDAwMC0weDgzYmZmZmZmXQpbICAgIDEuMTUzNTExXSBwY2kg
MDAwMDoxNDowMi4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDFkMDAwMDAwLTB4MTgwMWRm
ZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1MzUxM10gcGNpIDAwMDA6MTQ6MDMuMDogUENJIGJy
aWRnZSB0byBbYnVzIDE4XQpbICAgIDEuMTUzNTE4XSBwY2kgMDAwMDoxNDowMy4wOiAgIGJyaWRn
ZSB3aW5kb3cgW21lbSAweDgzODAwMDAwLTB4ODM5ZmZmZmZdClsgICAgMS4xNTM1MjNdIHBjaSAw
MDAwOjE0OjAzLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMWMwMDAwMDAtMHgxODAxY2Zm
ZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTUzNTI0XSBwY2kgMDAwMDoxNDowNC4wOiBQQ0kgYnJp
ZGdlIHRvIFtidXMgMTldClsgICAgMS4xNTM1MjldIHBjaSAwMDAwOjE0OjA0LjA6ICAgYnJpZGdl
IHdpbmRvdyBbbWVtIDB4ODM2MDAwMDAtMHg4MzdmZmZmZl0KWyAgICAxLjE1MzUzNF0gcGNpIDAw
MDA6MTQ6MDQuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAxYjAwMDAwMC0weDE4MDFiZmZm
ZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTM1MzZdIHBjaSAwMDAwOjE0OjA1LjA6IFBDSSBicmlk
Z2UgdG8gW2J1cyAxYV0KWyAgICAxLjE1MzU0MV0gcGNpIDAwMDA6MTQ6MDUuMDogICBicmlkZ2Ug
d2luZG93IFttZW0gMHg4MzQwMDAwMC0weDgzNWZmZmZmXQpbICAgIDEuMTUzNTQ2XSBwY2kgMDAw
MDoxNDowNS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDFhMDAwMDAwLTB4MTgwMWFmZmZm
ZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1MzU0OF0gcGNpIDAwMDA6MTQ6MDYuMDogUENJIGJyaWRn
ZSB0byBbYnVzIDFiXQpbICAgIDEuMTUzNTUzXSBwY2kgMDAwMDoxNDowNi4wOiAgIGJyaWRnZSB3
aW5kb3cgW21lbSAweDgzMjAwMDAwLTB4ODMzZmZmZmZdClsgICAgMS4xNTM1NThdIHBjaSAwMDAw
OjE0OjA2LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMTkwMDAwMDAtMHgxODAxOWZmZmZm
ZiA2NGJpdCBwcmVmXQpbICAgIDEuMTUzNTU5XSBwY2kgMDAwMDoxNDowNy4wOiBQQ0kgYnJpZGdl
IHRvIFtidXMgMWNdClsgICAgMS4xNTM1NjVdIHBjaSAwMDAwOjE0OjA3LjA6ICAgYnJpZGdlIHdp
bmRvdyBbbWVtIDB4ODMwMDAwMDAtMHg4MzFmZmZmZl0KWyAgICAxLjE1MzU3MF0gcGNpIDAwMDA6
MTQ6MDcuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAxODAwMDAwMC0weDE4MDE4ZmZmZmZm
IDY0Yml0IHByZWZdClsgICAgMS4xNTM1NzFdIHBjaSAwMDAwOjE0OjA4LjA6IFBDSSBicmlkZ2Ug
dG8gW2J1cyAxZF0KWyAgICAxLjE1MzU3Nl0gcGNpIDAwMDA6MTQ6MDguMDogICBicmlkZ2Ugd2lu
ZG93IFttZW0gMHg4MmUwMDAwMC0weDgyZmZmZmZmXQpbICAgIDEuMTUzNTgyXSBwY2kgMDAwMDox
NDowOC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDE3MDAwMDAwLTB4MTgwMTdmZmZmZmYg
NjRiaXQgcHJlZl0KWyAgICAxLjE1MzU4M10gcGNpIDAwMDA6MTQ6MDkuMDogUENJIGJyaWRnZSB0
byBbYnVzIDFlXQpbICAgIDEuMTUzNTg4XSBwY2kgMDAwMDoxNDowOS4wOiAgIGJyaWRnZSB3aW5k
b3cgW21lbSAweDgyYzAwMDAwLTB4ODJkZmZmZmZdClsgICAgMS4xNTM1OTRdIHBjaSAwMDAwOjE0
OjA5LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMTYwMDAwMDAtMHgxODAxNmZmZmZmZiA2
NGJpdCBwcmVmXQpbICAgIDEuMTUzNTk1XSBwY2kgMDAwMDoxNDowYS4wOiBQQ0kgYnJpZGdlIHRv
IFtidXMgMWZdClsgICAgMS4xNTM2MDBdIHBjaSAwMDAwOjE0OjBhLjA6ICAgYnJpZGdlIHdpbmRv
dyBbbWVtIDB4ODJhMDAwMDAtMHg4MmJmZmZmZl0KWyAgICAxLjE1MzYwNV0gcGNpIDAwMDA6MTQ6
MGEuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAxNTAwMDAwMC0weDE4MDE1ZmZmZmZmIDY0
Yml0IHByZWZdClsgICAgMS4xNTM2MDddIHBjaSAwMDAwOjE0OjBiLjA6IFBDSSBicmlkZ2UgdG8g
W2J1cyAyMF0KWyAgICAxLjE1MzYxMl0gcGNpIDAwMDA6MTQ6MGIuMDogICBicmlkZ2Ugd2luZG93
IFttZW0gMHg4MjgwMDAwMC0weDgyOWZmZmZmXQpbICAgIDEuMTUzNjE3XSBwY2kgMDAwMDoxNDow
Yi4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDE0MDAwMDAwLTB4MTgwMTRmZmZmZmYgNjRi
aXQgcHJlZl0KWyAgICAxLjE1MzYxOF0gcGNpIDAwMDA6MTQ6MGMuMDogUENJIGJyaWRnZSB0byBb
YnVzIDIxXQpbICAgIDEuMTUzNjI0XSBwY2kgMDAwMDoxNDowYy4wOiAgIGJyaWRnZSB3aW5kb3cg
W21lbSAweDgyNjAwMDAwLTB4ODI3ZmZmZmZdClsgICAgMS4xNTM2MjldIHBjaSAwMDAwOjE0OjBj
LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMTMwMDAwMDAtMHgxODAxM2ZmZmZmZiA2NGJp
dCBwcmVmXQpbICAgIDEuMTUzNjMwXSBwY2kgMDAwMDoxNDowZC4wOiBQQ0kgYnJpZGdlIHRvIFti
dXMgMjJdClsgICAgMS4xNTM2MzZdIHBjaSAwMDAwOjE0OjBkLjA6ICAgYnJpZGdlIHdpbmRvdyBb
bWVtIDB4ODI0MDAwMDAtMHg4MjVmZmZmZl0KWyAgICAxLjE1MzY0MV0gcGNpIDAwMDA6MTQ6MGQu
MDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAxMjAwMDAwMC0weDE4MDEyZmZmZmZmIDY0Yml0
IHByZWZdClsgICAgMS4xNTM2NDJdIHBjaSAwMDAwOjE0OjBlLjA6IFBDSSBicmlkZ2UgdG8gW2J1
cyAyM10KWyAgICAxLjE1MzY0N10gcGNpIDAwMDA6MTQ6MGUuMDogICBicmlkZ2Ugd2luZG93IFtt
ZW0gMHg4MjIwMDAwMC0weDgyM2ZmZmZmXQpbICAgIDEuMTUzNjUyXSBwY2kgMDAwMDoxNDowZS4w
OiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDExMDAwMDAwLTB4MTgwMTFmZmZmZmYgNjRiaXQg
cHJlZl0KWyAgICAxLjE1MzY1NF0gcGNpIDAwMDA6MTQ6MGYuMDogUENJIGJyaWRnZSB0byBbYnVz
IDI0XQpbICAgIDEuMTUzNjU5XSBwY2kgMDAwMDoxNDowZi4wOiAgIGJyaWRnZSB3aW5kb3cgW21l
bSAweDgyMDAwMDAwLTB4ODIxZmZmZmZdClsgICAgMS4xNTM2NjRdIHBjaSAwMDAwOjE0OjBmLjA6
ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMTAwMDAwMDAtMHgxODAxMGZmZmZmZiA2NGJpdCBw
cmVmXQpbICAgIDEuMTUzNjY2XSBwY2kgMDAwMDoxNDoxMC4wOiBQQ0kgYnJpZGdlIHRvIFtidXMg
MjVdClsgICAgMS4xNTM2NzFdIHBjaSAwMDAwOjE0OjEwLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVt
IDB4ODFlMDAwMDAtMHg4MWZmZmZmZl0KWyAgICAxLjE1MzY3Nl0gcGNpIDAwMDA6MTQ6MTAuMDog
ICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAwZjAwMDAwMC0weDE4MDBmZmZmZmZmIDY0Yml0IHBy
ZWZdClsgICAgMS4xNTM2NzhdIHBjaSAwMDAwOjE0OjExLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAy
Nl0KWyAgICAxLjE1MzY4M10gcGNpIDAwMDA6MTQ6MTEuMDogICBicmlkZ2Ugd2luZG93IFttZW0g
MHg4MWMwMDAwMC0weDgxZGZmZmZmXQpbICAgIDEuMTUzNjg4XSBwY2kgMDAwMDoxNDoxMS4wOiAg
IGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDBlMDAwMDAwLTB4MTgwMGVmZmZmZmYgNjRiaXQgcHJl
Zl0KWyAgICAxLjE1MzY4OV0gcGNpIDAwMDA6MTQ6MTIuMDogUENJIGJyaWRnZSB0byBbYnVzIDI3
XQpbICAgIDEuMTUzNjk0XSBwY2kgMDAwMDoxNDoxMi4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAw
eDgxYTAwMDAwLTB4ODFiZmZmZmZdClsgICAgMS4xNTM3MDBdIHBjaSAwMDAwOjE0OjEyLjA6ICAg
YnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMGQwMDAwMDAtMHgxODAwZGZmZmZmZiA2NGJpdCBwcmVm
XQpbICAgIDEuMTUzNzAxXSBwY2kgMDAwMDoxNDoxMy4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMjhd
ClsgICAgMS4xNTM3MDZdIHBjaSAwMDAwOjE0OjEzLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4
ODE4MDAwMDAtMHg4MTlmZmZmZl0KWyAgICAxLjE1MzcxMl0gcGNpIDAwMDA6MTQ6MTMuMDogICBi
cmlkZ2Ugd2luZG93IFttZW0gMHgxODAwYzAwMDAwMC0weDE4MDBjZmZmZmZmIDY0Yml0IHByZWZd
ClsgICAgMS4xNTM3MTNdIHBjaSAwMDAwOjE0OjE0LjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAyOV0K
WyAgICAxLjE1MzcxOF0gcGNpIDAwMDA6MTQ6MTQuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4
MTYwMDAwMC0weDgxN2ZmZmZmXQpbICAgIDEuMTUzNzIzXSBwY2kgMDAwMDoxNDoxNC4wOiAgIGJy
aWRnZSB3aW5kb3cgW21lbSAweDE4MDBiMDAwMDAwLTB4MTgwMGJmZmZmZmYgNjRiaXQgcHJlZl0K
WyAgICAxLjE1MzcyNV0gcGNpIDAwMDA6MTQ6MTUuMDogUENJIGJyaWRnZSB0byBbYnVzIDJhXQpb
ICAgIDEuMTUzNzMwXSBwY2kgMDAwMDoxNDoxNS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgx
NDAwMDAwLTB4ODE1ZmZmZmZdClsgICAgMS4xNTM3MzVdIHBjaSAwMDAwOjE0OjE1LjA6ICAgYnJp
ZGdlIHdpbmRvdyBbbWVtIDB4MTgwMGEwMDAwMDAtMHgxODAwYWZmZmZmZiA2NGJpdCBwcmVmXQpb
ICAgIDEuMTUzNzM3XSBwY2kgMDAwMDoxNDoxNi4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMmJdClsg
ICAgMS4xNTM3NDJdIHBjaSAwMDAwOjE0OjE2LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODEy
MDAwMDAtMHg4MTNmZmZmZl0KWyAgICAxLjE1Mzc0OF0gcGNpIDAwMDA6MTQ6MTYuMDogICBicmlk
Z2Ugd2luZG93IFttZW0gMHgxODAwOTAwMDAwMC0weDE4MDA5ZmZmZmZmIDY0Yml0IHByZWZdClsg
ICAgMS4xNTM3NDldIHBjaSAwMDAwOjE0OjE3LjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAyY10KWyAg
ICAxLjE1Mzc1NF0gcGNpIDAwMDA6MTQ6MTcuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MTAw
MDAwMC0weDgxMWZmZmZmXQpbICAgIDEuMTUzNzU5XSBwY2kgMDAwMDoxNDoxNy4wOiAgIGJyaWRn
ZSB3aW5kb3cgW21lbSAweDE4MDA4MDAwMDAwLTB4MTgwMDhmZmZmZmYgNjRiaXQgcHJlZl0KWyAg
ICAxLjE1Mzc2MV0gcGNpIDAwMDA6MTQ6MTguMDogUENJIGJyaWRnZSB0byBbYnVzIDJkXQpbICAg
IDEuMTUzNzY2XSBwY2kgMDAwMDoxNDoxOC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgwZTAw
MDAwLTB4ODBmZmZmZmZdClsgICAgMS4xNTM3NzFdIHBjaSAwMDAwOjE0OjE4LjA6ICAgYnJpZGdl
IHdpbmRvdyBbbWVtIDB4MTgwMDcwMDAwMDAtMHgxODAwN2ZmZmZmZiA2NGJpdCBwcmVmXQpbICAg
IDEuMTUzNzczXSBwY2kgMDAwMDoxNDoxOS4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMmVdClsgICAg
MS4xNTM3NzhdIHBjaSAwMDAwOjE0OjE5LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODBjMDAw
MDAtMHg4MGRmZmZmZl0KWyAgICAxLjE1Mzc4NF0gcGNpIDAwMDA6MTQ6MTkuMDogICBicmlkZ2Ug
d2luZG93IFttZW0gMHgxODAwNjAwMDAwMC0weDE4MDA2ZmZmZmZmIDY0Yml0IHByZWZdClsgICAg
MS4xNTM3ODVdIHBjaSAwMDAwOjE0OjFhLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAyZl0KWyAgICAx
LjE1Mzc5MF0gcGNpIDAwMDA6MTQ6MWEuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MGEwMDAw
MC0weDgwYmZmZmZmXQpbICAgIDEuMTUzNzk1XSBwY2kgMDAwMDoxNDoxYS4wOiAgIGJyaWRnZSB3
aW5kb3cgW21lbSAweDE4MDA1MDAwMDAwLTB4MTgwMDVmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAx
LjE1Mzc5N10gcGNpIDAwMDA6MTQ6MWIuMDogUENJIGJyaWRnZSB0byBbYnVzIDMwXQpbICAgIDEu
MTUzODAyXSBwY2kgMDAwMDoxNDoxYi4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgwODAwMDAw
LTB4ODA5ZmZmZmZdClsgICAgMS4xNTM4MDddIHBjaSAwMDAwOjE0OjFiLjA6ICAgYnJpZGdlIHdp
bmRvdyBbbWVtIDB4MTgwMDQwMDAwMDAtMHgxODAwNGZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEu
MTUzODA5XSBwY2kgMDAwMDoxNDoxYy4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMzFdClsgICAgMS4x
NTM4MTRdIHBjaSAwMDAwOjE0OjFjLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODA2MDAwMDAt
MHg4MDdmZmZmZl0KWyAgICAxLjE1MzgxOV0gcGNpIDAwMDA6MTQ6MWMuMDogICBicmlkZ2Ugd2lu
ZG93IFttZW0gMHgxODAwMzAwMDAwMC0weDE4MDAzZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4x
NTM4MjFdIHBjaSAwMDAwOjE0OjFkLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAzMl0KWyAgICAxLjE1
MzgyNl0gcGNpIDAwMDA6MTQ6MWQuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MDQwMDAwMC0w
eDgwNWZmZmZmXQpbICAgIDEuMTUzODMxXSBwY2kgMDAwMDoxNDoxZC4wOiAgIGJyaWRnZSB3aW5k
b3cgW21lbSAweDE4MDAyMDAwMDAwLTB4MTgwMDJmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1
MzgzMl0gcGNpIDAwMDA6MTQ6MWUuMDogUENJIGJyaWRnZSB0byBbYnVzIDMzXQpbICAgIDEuMTUz
ODM3XSBwY2kgMDAwMDoxNDoxZS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgwMjAwMDAwLTB4
ODAzZmZmZmZdClsgICAgMS4xNTM4NDJdIHBjaSAwMDAwOjE0OjFlLjA6ICAgYnJpZGdlIHdpbmRv
dyBbbWVtIDB4MTgwMDEwMDAwMDAtMHgxODAwMWZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTUz
ODQ0XSBwY2kgMDAwMDoxNDoxZi4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMzRdClsgICAgMS4xNTM4
NDldIHBjaSAwMDAwOjE0OjFmLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODAwMDAwMDAtMHg4
MDFmZmZmZl0KWyAgICAxLjE1Mzg1NF0gcGNpIDAwMDA6MTQ6MWYuMDogICBicmlkZ2Ugd2luZG93
IFttZW0gMHgxODAwMDAwMDAwMC0weDE4MDAwZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTM4
NjBdIHBjaSAwMDAwOjAyOjAwLjA6IGJyaWRnZSB3aW5kb3cgW2lvICAweDEwMDAtMHgwZmZmXSB0
byBbYnVzIDAzXSBhZGRfc2l6ZSAxMDAwClsgICAgMS4xNTM4NjNdIHBjaSAwMDAwOjAyOjAxLjA6
IGJyaWRnZSB3aW5kb3cgW2lvICAweDEwMDAtMHgwZmZmXSB0byBbYnVzIDA0XSBhZGRfc2l6ZSAx
MDAwClsgICAgMS4xNTM4NjVdIHBjaSAwMDAwOjAyOjAyLjA6IGJyaWRnZSB3aW5kb3cgW2lvICAw
eDEwMDAtMHgwZmZmXSB0byBbYnVzIDA1XSBhZGRfc2l6ZSAxMDAwClsgICAgMS4xNTM4NjddIHBj
aSAwMDAwOjAyOjAzLjA6IGJyaWRnZSB3aW5kb3cgW2lvICAweDEwMDAtMHgwZmZmXSB0byBbYnVz
IDA2XSBhZGRfc2l6ZSAxMDAwClsgICAgMS4xNTM4NjldIHBjaSAwMDAwOjAyOjA0LjA6IGJyaWRn
ZSB3aW5kb3cgW2lvICAweDEwMDAtMHgwZmZmXSB0byBbYnVzIDA3XSBhZGRfc2l6ZSAxMDAwClsg
ICAgMS4xNTM4NzBdIHBjaSAwMDAwOjAyOjA1LjA6IGJyaWRnZSB3aW5kb3cgW2lvICAweDEwMDAt
MHgwZmZmXSB0byBbYnVzIDA4XSBhZGRfc2l6ZSAxMDAwClsgICAgMS4xNTM4NzJdIHBjaSAwMDAw
OjAyOjA2LjA6IGJyaWRnZSB3aW5kb3cgW2lvICAweDEwMDAtMHgwZmZmXSB0byBbYnVzIDA5XSBh
ZGRfc2l6ZSAxMDAwClsgICAgMS4xNTM4NzRdIHBjaSAwMDAwOjAyOjA3LjA6IGJyaWRnZSB3aW5k
b3cgW2lvICAweDEwMDAtMHgwZmZmXSB0byBbYnVzIDBhXSBhZGRfc2l6ZSAxMDAwClsgICAgMS4x
NTM4NzVdIHBjaSAwMDAwOjAyOjA4LjA6IGJyaWRnZSB3aW5kb3cgW2lvICAweDEwMDAtMHgwZmZm
XSB0byBbYnVzIDBiXSBhZGRfc2l6ZSAxMDAwClsgICAgMS4xNTM4NzddIHBjaSAwMDAwOjAyOjA5
LjA6IGJyaWRnZSB3aW5kb3cgW2lvICAweDEwMDAtMHgwZmZmXSB0byBbYnVzIDBjXSBhZGRfc2l6
ZSAxMDAwClsgICAgMS4xNTM4NzldIHBjaSAwMDAwOjAyOjBhLjA6IGJyaWRnZSB3aW5kb3cgW2lv
ICAweDEwMDAtMHgwZmZmXSB0byBbYnVzIDBkXSBhZGRfc2l6ZSAxMDAwClsgICAgMS4xNTM4ODBd
IHBjaSAwMDAwOjAyOjBiLjA6IGJyaWRnZSB3aW5kb3cgW2lvICAweDEwMDAtMHgwZmZmXSB0byBb
YnVzIDBlXSBhZGRfc2l6ZSAxMDAwClsgICAgMS4xNTM4ODJdIHBjaSAwMDAwOjAyOjBjLjA6IGJy
aWRnZSB3aW5kb3cgW2lvICAweDEwMDAtMHgwZmZmXSB0byBbYnVzIDBmXSBhZGRfc2l6ZSAxMDAw
ClsgICAgMS4xNTM4ODRdIHBjaSAwMDAwOjAyOjBkLjA6IGJyaWRnZSB3aW5kb3cgW2lvICAweDEw
MDAtMHgwZmZmXSB0byBbYnVzIDEwXSBhZGRfc2l6ZSAxMDAwClsgICAgMS4xNTM4ODZdIHBjaSAw
MDAwOjAyOjBlLjA6IGJyaWRnZSB3aW5kb3cgW2lvICAweDEwMDAtMHgwZmZmXSB0byBbYnVzIDEx
XSBhZGRfc2l6ZSAxMDAwClsgICAgMS4xNTM4ODhdIHBjaSAwMDAwOjAyOjBmLjA6IGJyaWRnZSB3
aW5kb3cgW2lvICAweDEwMDAtMHgwZmZmXSB0byBbYnVzIDEyXSBhZGRfc2l6ZSAxMDAwClsgICAg
MS4xNTM4OTFdIHBjaSAwMDAwOjAxOjAwLjA6IGJyaWRnZSB3aW5kb3cgW2lvICAweDEwMDAtMHgw
ZmZmXSB0byBbYnVzIDAyLTEyXSBhZGRfc2l6ZSAxMDAwMApbICAgIDEuMTUzODkzXSBwY2kgMDAw
MDowMDowMC4wOiBicmlkZ2Ugd2luZG93IFtpbyAgMHgxMDAwLTB4MGZmZl0gdG8gW2J1cyAwMS0x
Ml0gYWRkX3NpemUgMTAwMDAKWyAgICAxLjE1Mzg5NV0gcGNpIDAwMDA6MTQ6MDAuMDogYnJpZGdl
IHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMTVdIGFkZF9zaXplIDEwMDAKWyAg
ICAxLjE1Mzg5N10gcGNpIDAwMDA6MTQ6MDEuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0w
eDBmZmZdIHRvIFtidXMgMTZdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1Mzg5OV0gcGNpIDAwMDA6
MTQ6MDIuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMTddIGFk
ZF9zaXplIDEwMDAKWyAgICAxLjE1MzkwMV0gcGNpIDAwMDA6MTQ6MDMuMDogYnJpZGdlIHdpbmRv
dyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMThdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1
MzkwM10gcGNpIDAwMDA6MTQ6MDQuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZd
IHRvIFtidXMgMTldIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1MzkwNF0gcGNpIDAwMDA6MTQ6MDUu
MDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMWFdIGFkZF9zaXpl
IDEwMDAKWyAgICAxLjE1MzkwNl0gcGNpIDAwMDA6MTQ6MDYuMDogYnJpZGdlIHdpbmRvdyBbaW8g
IDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMWJdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1MzkwOF0g
cGNpIDAwMDA6MTQ6MDcuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFti
dXMgMWNdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1MzkwOV0gcGNpIDAwMDA6MTQ6MDguMDogYnJp
ZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMWRdIGFkZF9zaXplIDEwMDAK
WyAgICAxLjE1MzkxMV0gcGNpIDAwMDA6MTQ6MDkuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAw
MC0weDBmZmZdIHRvIFtidXMgMWVdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1MzkxM10gcGNpIDAw
MDA6MTQ6MGEuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMWZd
IGFkZF9zaXplIDEwMDAKWyAgICAxLjE1MzkxNV0gcGNpIDAwMDA6MTQ6MGIuMDogYnJpZGdlIHdp
bmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMjBdIGFkZF9zaXplIDEwMDAKWyAgICAx
LjE1MzkxNl0gcGNpIDAwMDA6MTQ6MGMuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBm
ZmZdIHRvIFtidXMgMjFdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1MzkxOF0gcGNpIDAwMDA6MTQ6
MGQuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMjJdIGFkZF9z
aXplIDEwMDAKWyAgICAxLjE1MzkyMF0gcGNpIDAwMDA6MTQ6MGUuMDogYnJpZGdlIHdpbmRvdyBb
aW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMjNdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1Mzky
MV0gcGNpIDAwMDA6MTQ6MGYuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRv
IFtidXMgMjRdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1MzkyM10gcGNpIDAwMDA6MTQ6MTAuMDog
YnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMjVdIGFkZF9zaXplIDEw
MDAKWyAgICAxLjE1MzkyNV0gcGNpIDAwMDA6MTQ6MTEuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4
MTAwMC0weDBmZmZdIHRvIFtidXMgMjZdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1MzkyNl0gcGNp
IDAwMDA6MTQ6MTIuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMg
MjddIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1MzkyOF0gcGNpIDAwMDA6MTQ6MTMuMDogYnJpZGdl
IHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMjhdIGFkZF9zaXplIDEwMDAKWyAg
ICAxLjE1MzkzMF0gcGNpIDAwMDA6MTQ6MTQuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0w
eDBmZmZdIHRvIFtidXMgMjldIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1MzkzMV0gcGNpIDAwMDA6
MTQ6MTUuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMmFdIGFk
ZF9zaXplIDEwMDAKWyAgICAxLjE1MzkzM10gcGNpIDAwMDA6MTQ6MTYuMDogYnJpZGdlIHdpbmRv
dyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMmJdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1
MzkzNV0gcGNpIDAwMDA6MTQ6MTcuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZd
IHRvIFtidXMgMmNdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1MzkzN10gcGNpIDAwMDA6MTQ6MTgu
MDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMmRdIGFkZF9zaXpl
IDEwMDAKWyAgICAxLjE1MzkzOF0gcGNpIDAwMDA6MTQ6MTkuMDogYnJpZGdlIHdpbmRvdyBbaW8g
IDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMmVdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1Mzk0MF0g
cGNpIDAwMDA6MTQ6MWEuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFti
dXMgMmZdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1Mzk0Ml0gcGNpIDAwMDA6MTQ6MWIuMDogYnJp
ZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMzBdIGFkZF9zaXplIDEwMDAK
WyAgICAxLjE1Mzk0NF0gcGNpIDAwMDA6MTQ6MWMuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAw
MC0weDBmZmZdIHRvIFtidXMgMzFdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1Mzk0Nl0gcGNpIDAw
MDA6MTQ6MWQuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMzJd
IGFkZF9zaXplIDEwMDAKWyAgICAxLjE1Mzk0N10gcGNpIDAwMDA6MTQ6MWUuMDogYnJpZGdlIHdp
bmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMzNdIGFkZF9zaXplIDEwMDAKWyAgICAx
LjE1Mzk0OV0gcGNpIDAwMDA6MTQ6MWYuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBm
ZmZdIHRvIFtidXMgMzRdIGFkZF9zaXplIDEwMDAKWyAgICAxLjE1Mzk1M10gcGNpIDAwMDA6MTM6
MDAuMDogYnJpZGdlIHdpbmRvdyBbaW8gIDB4MTAwMC0weDBmZmZdIHRvIFtidXMgMTQtMzRdIGFk
ZF9zaXplIDIwMDAwClsgICAgMS4xNTM5NTVdIHBjaSAwMDAwOjAwOjAyLjA6IGJyaWRnZSB3aW5k
b3cgW2lvICAweDEwMDAtMHgwZmZmXSB0byBbYnVzIDEzLTM0XSBhZGRfc2l6ZSAyMDAwMApbICAg
IDEuMTUzOTU5XSBwY2kgMDAwMDowMDowMC4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNp
emUgMHgxMDAwMF0KWyAgICAxLjE1Mzk2MV0gcGNpIDAwMDA6MDA6MDAuMDogQkFSIDEzOiBmYWls
ZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDAwXQpbICAgIDEuMTUzOTYzXSBwY2kgMDAwMDow
MDowMi4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgyMDAwMF0KWyAgICAxLjE1
Mzk2NF0gcGNpIDAwMDA6MDA6MDIuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6
ZSAweDIwMDAwXQpbICAgIDEuMTUzOTY2XSBwY2kgMDAwMDowMDowMi4wOiBCQVIgMTM6IG5vIHNw
YWNlIGZvciBbaW8gIHNpemUgMHgyMDAwMF0KWyAgICAxLjE1Mzk2N10gcGNpIDAwMDA6MDA6MDIu
MDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDIwMDAwXQpbICAgIDEuMTUz
OTY5XSBwY2kgMDAwMDowMDowMC4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgx
MDAwMF0KWyAgICAxLjE1Mzk3MV0gcGNpIDAwMDA6MDA6MDAuMDogQkFSIDEzOiBmYWlsZWQgdG8g
YXNzaWduIFtpbyAgc2l6ZSAweDEwMDAwXQpbICAgIDEuMTUzOTczXSBwY2kgMDAwMDowMTowMC4w
OiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwMF0KWyAgICAxLjE1Mzk3NF0g
cGNpIDAwMDA6MDE6MDAuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEw
MDAwXQpbICAgIDEuMTUzOTc2XSBwY2kgMDAwMDowMTowMC4wOiBCQVIgMTM6IG5vIHNwYWNlIGZv
ciBbaW8gIHNpemUgMHgxMDAwMF0KWyAgICAxLjE1Mzk3OF0gcGNpIDAwMDA6MDE6MDAuMDogQkFS
IDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDAwXQpbICAgIDEuMTUzOTg1XSBw
Y2kgMDAwMDowMjowMC4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpb
ICAgIDEuMTUzOTg3XSBwY2kgMDAwMDowMjowMC4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24g
W2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1Mzk4OF0gcGNpIDAwMDA6MDI6MDEuMDogQkFSIDEz
OiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1Mzk5MF0gcGNpIDAwMDA6
MDI6MDEuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAg
MS4xNTM5OTFdIHBjaSAwMDAwOjAyOjAyLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6
ZSAweDEwMDBdClsgICAgMS4xNTM5OTNdIHBjaSAwMDAwOjAyOjAyLjA6IEJBUiAxMzogZmFpbGVk
IHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTUzOTk0XSBwY2kgMDAwMDowMjow
My4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTUzOTk1
XSBwY2kgMDAwMDowMjowMy4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4
MTAwMF0KWyAgICAxLjE1Mzk5N10gcGNpIDAwMDA6MDI6MDQuMDogQkFSIDEzOiBubyBzcGFjZSBm
b3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1Mzk5OF0gcGNpIDAwMDA6MDI6MDQuMDogQkFS
IDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQwMDBdIHBj
aSAwMDAwOjAyOjA1LjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsg
ICAgMS4xNTQwMDFdIHBjaSAwMDAwOjAyOjA1LjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBb
aW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MDAzXSBwY2kgMDAwMDowMjowNi4wOiBCQVIgMTM6
IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MDA0XSBwY2kgMDAwMDow
MjowNi4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAx
LjE1NDAwNV0gcGNpIDAwMDA6MDI6MDcuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXpl
IDB4MTAwMF0KWyAgICAxLjE1NDAwN10gcGNpIDAwMDA6MDI6MDcuMDogQkFSIDEzOiBmYWlsZWQg
dG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQwMDhdIHBjaSAwMDAwOjAyOjA4
LjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQwMTBd
IHBjaSAwMDAwOjAyOjA4LjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgx
MDAwXQpbICAgIDEuMTU0MDEyXSBwY2kgMDAwMDowMjowOS4wOiBCQVIgMTM6IG5vIHNwYWNlIGZv
ciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MDEzXSBwY2kgMDAwMDowMjowOS4wOiBCQVIg
MTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDAxNF0gcGNp
IDAwMDA6MDI6MGEuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAg
ICAxLjE1NDAxNl0gcGNpIDAwMDA6MDI6MGEuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtp
byAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQwMTddIHBjaSAwMDAwOjAyOjBiLjA6IEJBUiAxMzog
bm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQwMTldIHBjaSAwMDAwOjAy
OjBiLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEu
MTU0MDIwXSBwY2kgMDAwMDowMjowYy4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUg
MHgxMDAwXQpbICAgIDEuMTU0MDIyXSBwY2kgMDAwMDowMjowYy4wOiBCQVIgMTM6IGZhaWxlZCB0
byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDAyM10gcGNpIDAwMDA6MDI6MGQu
MDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDAyNF0g
cGNpIDAwMDA6MDI6MGQuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEw
MDBdClsgICAgMS4xNTQwMjZdIHBjaSAwMDAwOjAyOjBlLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9y
IFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQwMjddIHBjaSAwMDAwOjAyOjBlLjA6IEJBUiAx
MzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MDI5XSBwY2kg
MDAwMDowMjowZi4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAg
IDEuMTU0MDMwXSBwY2kgMDAwMDowMjowZi4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lv
ICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDAzNF0gcGNpIDAwMDA6MDI6MGYuMDogQkFSIDEzOiBu
byBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDAzNV0gcGNpIDAwMDA6MDI6
MGYuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4x
NTQwMzddIHBjaSAwMDAwOjAyOjBlLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAw
eDEwMDBdClsgICAgMS4xNTQwMzhdIHBjaSAwMDAwOjAyOjBlLjA6IEJBUiAxMzogZmFpbGVkIHRv
IGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MDQwXSBwY2kgMDAwMDowMjowZC4w
OiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MDQxXSBw
Y2kgMDAwMDowMjowZC4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAw
MF0KWyAgICAxLjE1NDA0M10gcGNpIDAwMDA6MDI6MGMuMDogQkFSIDEzOiBubyBzcGFjZSBmb3Ig
W2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDA0NF0gcGNpIDAwMDA6MDI6MGMuMDogQkFSIDEz
OiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQwNDZdIHBjaSAw
MDAwOjAyOjBiLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAg
MS4xNTQwNDddIHBjaSAwMDAwOjAyOjBiLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8g
IHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MDQ5XSBwY2kgMDAwMDowMjowYS4wOiBCQVIgMTM6IG5v
IHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MDUwXSBwY2kgMDAwMDowMjow
YS4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1
NDA1Ml0gcGNpIDAwMDA6MDI6MDkuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4
MTAwMF0KWyAgICAxLjE1NDA1M10gcGNpIDAwMDA6MDI6MDkuMDogQkFSIDEzOiBmYWlsZWQgdG8g
YXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQwNTRdIHBjaSAwMDAwOjAyOjA4LjA6
IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQwNTZdIHBj
aSAwMDAwOjAyOjA4LjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAw
XQpbICAgIDEuMTU0MDU3XSBwY2kgMDAwMDowMjowNy4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBb
aW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MDU5XSBwY2kgMDAwMDowMjowNy4wOiBCQVIgMTM6
IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDA2MF0gcGNpIDAw
MDA6MDI6MDYuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAx
LjE1NDA2Ml0gcGNpIDAwMDA6MDI6MDYuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAg
c2l6ZSAweDEwMDBdClsgICAgMS4xNTQwNjNdIHBjaSAwMDAwOjAyOjA1LjA6IEJBUiAxMzogbm8g
c3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQwNjVdIHBjaSAwMDAwOjAyOjA1
LjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0
MDY2XSBwY2kgMDAwMDowMjowNC4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgx
MDAwXQpbICAgIDEuMTU0MDY4XSBwY2kgMDAwMDowMjowNC4wOiBCQVIgMTM6IGZhaWxlZCB0byBh
c3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDA2OV0gcGNpIDAwMDA6MDI6MDMuMDog
QkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDA3MV0gcGNp
IDAwMDA6MDI6MDMuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBd
ClsgICAgMS4xNTQwNzJdIHBjaSAwMDAwOjAyOjAyLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtp
byAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQwNzRdIHBjaSAwMDAwOjAyOjAyLjA6IEJBUiAxMzog
ZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MDc1XSBwY2kgMDAw
MDowMjowMS4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEu
MTU0MDc3XSBwY2kgMDAwMDowMjowMS4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBz
aXplIDB4MTAwMF0KWyAgICAxLjE1NDA3OF0gcGNpIDAwMDA6MDI6MDAuMDogQkFSIDEzOiBubyBz
cGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDA3OV0gcGNpIDAwMDA6MDI6MDAu
MDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQw
ODJdIHBjaSAwMDAwOjAyOjAwLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAwM10KWyAgICAxLjE1NDA4
Nl0gcGNpIDAwMDA6MDI6MDAuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4NWUwMDAwMC0weDg1
ZmZmZmZmXQpbICAgIDEuMTU0MDg5XSBwY2kgMDAwMDowMjowMC4wOiAgIGJyaWRnZSB3aW5kb3cg
W21lbSAweDE4MDJmMDAwMDAwLTB4MTgwMmZmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDA5
NF0gcGNpIDAwMDA6MDI6MDEuMDogUENJIGJyaWRnZSB0byBbYnVzIDA0XQpbICAgIDEuMTU0MDk4
XSBwY2kgMDAwMDowMjowMS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDg1YzAwMDAwLTB4ODVk
ZmZmZmZdClsgICAgMS4xNTQxMDFdIHBjaSAwMDAwOjAyOjAxLjA6ICAgYnJpZGdlIHdpbmRvdyBb
bWVtIDB4MTgwMmUwMDAwMDAtMHgxODAyZWZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0MTA3
XSBwY2kgMDAwMDowMjowMi4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMDVdClsgICAgMS4xNTQxMTFd
IHBjaSAwMDAwOjAyOjAyLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODVhMDAwMDAtMHg4NWJm
ZmZmZl0KWyAgICAxLjE1NDExNF0gcGNpIDAwMDA6MDI6MDIuMDogICBicmlkZ2Ugd2luZG93IFtt
ZW0gMHgxODAyZDAwMDAwMC0weDE4MDJkZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQxMTld
IHBjaSAwMDAwOjAyOjAzLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAwNl0KWyAgICAxLjE1NDEyM10g
cGNpIDAwMDA6MDI6MDMuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4NTgwMDAwMC0weDg1OWZm
ZmZmXQpbICAgIDEuMTU0MTI2XSBwY2kgMDAwMDowMjowMy4wOiAgIGJyaWRnZSB3aW5kb3cgW21l
bSAweDE4MDJjMDAwMDAwLTB4MTgwMmNmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDEzMV0g
cGNpIDAwMDA6MDI6MDQuMDogUENJIGJyaWRnZSB0byBbYnVzIDA3XQpbICAgIDEuMTU0MTM1XSBw
Y2kgMDAwMDowMjowNC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDg1NjAwMDAwLTB4ODU3ZmZm
ZmZdClsgICAgMS4xNTQxMzhdIHBjaSAwMDAwOjAyOjA0LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVt
IDB4MTgwMmIwMDAwMDAtMHgxODAyYmZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0MTQzXSBw
Y2kgMDAwMDowMjowNS4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMDhdClsgICAgMS4xNTQxNDddIHBj
aSAwMDAwOjAyOjA1LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODU0MDAwMDAtMHg4NTVmZmZm
Zl0KWyAgICAxLjE1NDE1MF0gcGNpIDAwMDA6MDI6MDUuMDogICBicmlkZ2Ugd2luZG93IFttZW0g
MHgxODAyYTAwMDAwMC0weDE4MDJhZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQxNTVdIHBj
aSAwMDAwOjAyOjA2LjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAwOV0KWyAgICAxLjE1NDE1OV0gcGNp
IDAwMDA6MDI6MDYuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4NTIwMDAwMC0weDg1M2ZmZmZm
XQpbICAgIDEuMTU0MTYyXSBwY2kgMDAwMDowMjowNi4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAw
eDE4MDI5MDAwMDAwLTB4MTgwMjlmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDE2N10gcGNp
IDAwMDA6MDI6MDcuMDogUENJIGJyaWRnZSB0byBbYnVzIDBhXQpbICAgIDEuMTU0MTcxXSBwY2kg
MDAwMDowMjowNy4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDg1MDAwMDAwLTB4ODUxZmZmZmZd
ClsgICAgMS4xNTQxNzRdIHBjaSAwMDAwOjAyOjA3LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4
MTgwMjgwMDAwMDAtMHgxODAyOGZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0MTc5XSBwY2kg
MDAwMDowMjowOC4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMGJdClsgICAgMS4xNTQxODNdIHBjaSAw
MDAwOjAyOjA4LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODRlMDAwMDAtMHg4NGZmZmZmZl0K
WyAgICAxLjE1NDE4Nl0gcGNpIDAwMDA6MDI6MDguMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgx
ODAyNzAwMDAwMC0weDE4MDI3ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQxOTFdIHBjaSAw
MDAwOjAyOjA5LjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAwY10KWyAgICAxLjE1NDE5NV0gcGNpIDAw
MDA6MDI6MDkuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4NGMwMDAwMC0weDg0ZGZmZmZmXQpb
ICAgIDEuMTU0MTk4XSBwY2kgMDAwMDowMjowOS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4
MDI2MDAwMDAwLTB4MTgwMjZmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDIwM10gcGNpIDAw
MDA6MDI6MGEuMDogUENJIGJyaWRnZSB0byBbYnVzIDBkXQpbICAgIDEuMTU0MjA3XSBwY2kgMDAw
MDowMjowYS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDg0YTAwMDAwLTB4ODRiZmZmZmZdClsg
ICAgMS4xNTQyMTBdIHBjaSAwMDAwOjAyOjBhLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgw
MjUwMDAwMDAtMHgxODAyNWZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0MjE1XSBwY2kgMDAw
MDowMjowYi4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMGVdClsgICAgMS4xNTQyMTldIHBjaSAwMDAw
OjAyOjBiLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODQ4MDAwMDAtMHg4NDlmZmZmZl0KWyAg
ICAxLjE1NDIyMl0gcGNpIDAwMDA6MDI6MGIuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAy
NDAwMDAwMC0weDE4MDI0ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQyMjhdIHBjaSAwMDAw
OjAyOjBjLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAwZl0KWyAgICAxLjE1NDIzMV0gcGNpIDAwMDA6
MDI6MGMuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4NDYwMDAwMC0weDg0N2ZmZmZmXQpbICAg
IDEuMTU0MjM0XSBwY2kgMDAwMDowMjowYy4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDIz
MDAwMDAwLTB4MTgwMjNmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDI0MF0gcGNpIDAwMDA6
MDI6MGQuMDogUENJIGJyaWRnZSB0byBbYnVzIDEwXQpbICAgIDEuMTU0MjQ0XSBwY2kgMDAwMDow
MjowZC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDg0NDAwMDAwLTB4ODQ1ZmZmZmZdClsgICAg
MS4xNTQyNDddIHBjaSAwMDAwOjAyOjBkLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMjIw
MDAwMDAtMHgxODAyMmZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0MjUyXSBwY2kgMDAwMDow
MjowZS4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMTFdClsgICAgMS4xNTQyNTZdIHBjaSAwMDAwOjAy
OjBlLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODQyMDAwMDAtMHg4NDNmZmZmZl0KWyAgICAx
LjE1NDI1OV0gcGNpIDAwMDA6MDI6MGUuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAyMTAw
MDAwMC0weDE4MDIxZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQyNjRdIHBjaSAwMDAwOjAy
OjBmLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAxMl0KWyAgICAxLjE1NDI2OF0gcGNpIDAwMDA6MDI6
MGYuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4NDAwMDAwMC0weDg0MWZmZmZmXQpbICAgIDEu
MTU0MjcwXSBwY2kgMDAwMDowMjowZi4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDIwMDAw
MDAwLTB4MTgwMjBmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDI3Nl0gcGNpIDAwMDA6MDE6
MDAuMDogUENJIGJyaWRnZSB0byBbYnVzIDAyLTEyXQpbICAgIDEuMTU0MjgwXSBwY2kgMDAwMDow
MTowMC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDg0MDAwMDAwLTB4ODVmZmZmZmZdClsgICAg
MS4xNTQyODVdIHBjaSAwMDAwOjAxOjAwLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMjAw
MDAwMDAtMHgxODAyZmZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0MjkzXSBwY2kgMDAwMDow
MDowMC4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMDEtMTJdClsgICAgMS4xNTQyOTVdIHBjaSAwMDAw
OjAwOjAwLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODQwMDAwMDAtMHg4NWZmZmZmZl0KWyAg
ICAxLjE1NDI5N10gcGNpIDAwMDA6MDA6MDAuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAy
MDAwMDAwMC0weDE4MDJmZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQzMDRdIHBjaSAwMDAw
OjEzOjAwLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDIwMDAwXQpbICAgIDEu
MTU0MzA2XSBwY2kgMDAwMDoxMzowMC4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBz
aXplIDB4MjAwMDBdClsgICAgMS4xNTQzMDddIHBjaSAwMDAwOjEzOjAwLjA6IEJBUiAxMzogbm8g
c3BhY2UgZm9yIFtpbyAgc2l6ZSAweDIwMDAwXQpbICAgIDEuMTU0MzA5XSBwY2kgMDAwMDoxMzow
MC4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MjAwMDBdClsgICAgMS4x
NTQzMjVdIHBjaSAwMDAwOjE0OjAwLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAw
eDEwMDBdClsgICAgMS4xNTQzMjddIHBjaSAwMDAwOjE0OjAwLjA6IEJBUiAxMzogZmFpbGVkIHRv
IGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MzI4XSBwY2kgMDAwMDoxNDowMS4w
OiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MzI5XSBw
Y2kgMDAwMDoxNDowMS4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAw
MF0KWyAgICAxLjE1NDMzMV0gcGNpIDAwMDA6MTQ6MDIuMDogQkFSIDEzOiBubyBzcGFjZSBmb3Ig
W2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDMzMl0gcGNpIDAwMDA6MTQ6MDIuMDogQkFSIDEz
OiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQzMzRdIHBjaSAw
MDAwOjE0OjAzLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAg
MS4xNTQzMzVdIHBjaSAwMDAwOjE0OjAzLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8g
IHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MzM3XSBwY2kgMDAwMDoxNDowNC4wOiBCQVIgMTM6IG5v
IHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MzM4XSBwY2kgMDAwMDoxNDow
NC4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1
NDMzOV0gcGNpIDAwMDA6MTQ6MDUuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4
MTAwMF0KWyAgICAxLjE1NDM0MV0gcGNpIDAwMDA6MTQ6MDUuMDogQkFSIDEzOiBmYWlsZWQgdG8g
YXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQzNDJdIHBjaSAwMDAwOjE0OjA2LjA6
IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQzNDRdIHBj
aSAwMDAwOjE0OjA2LjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAw
XQpbICAgIDEuMTU0MzQ1XSBwY2kgMDAwMDoxNDowNy4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBb
aW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MzQ2XSBwY2kgMDAwMDoxNDowNy4wOiBCQVIgMTM6
IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDM0OF0gcGNpIDAw
MDA6MTQ6MDguMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAx
LjE1NDM0OV0gcGNpIDAwMDA6MTQ6MDguMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAg
c2l6ZSAweDEwMDBdClsgICAgMS4xNTQzNTFdIHBjaSAwMDAwOjE0OjA5LjA6IEJBUiAxMzogbm8g
c3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQzNTJdIHBjaSAwMDAwOjE0OjA5
LjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0
MzUzXSBwY2kgMDAwMDoxNDowYS4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgx
MDAwXQpbICAgIDEuMTU0MzU1XSBwY2kgMDAwMDoxNDowYS4wOiBCQVIgMTM6IGZhaWxlZCB0byBh
c3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDM1Nl0gcGNpIDAwMDA6MTQ6MGIuMDog
QkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDM1OF0gcGNp
IDAwMDA6MTQ6MGIuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBd
ClsgICAgMS4xNTQzNTldIHBjaSAwMDAwOjE0OjBjLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtp
byAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQzNjFdIHBjaSAwMDAwOjE0OjBjLjA6IEJBUiAxMzog
ZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MzYyXSBwY2kgMDAw
MDoxNDowZC4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEu
MTU0MzYzXSBwY2kgMDAwMDoxNDowZC4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBz
aXplIDB4MTAwMF0KWyAgICAxLjE1NDM2NV0gcGNpIDAwMDA6MTQ6MGUuMDogQkFSIDEzOiBubyBz
cGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDM2Nl0gcGNpIDAwMDA6MTQ6MGUu
MDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQz
NjhdIHBjaSAwMDAwOjE0OjBmLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEw
MDBdClsgICAgMS4xNTQzNzBdIHBjaSAwMDAwOjE0OjBmLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFz
c2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MzcxXSBwY2kgMDAwMDoxNDoxMC4wOiBC
QVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MzcyXSBwY2kg
MDAwMDoxNDoxMC4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0K
WyAgICAxLjE1NDM3NF0gcGNpIDAwMDA6MTQ6MTEuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lv
ICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDM3NV0gcGNpIDAwMDA6MTQ6MTEuMDogQkFSIDEzOiBm
YWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQzNzddIHBjaSAwMDAw
OjE0OjEyLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4x
NTQzNzhdIHBjaSAwMDAwOjE0OjEyLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNp
emUgMHgxMDAwXQpbICAgIDEuMTU0MzgwXSBwY2kgMDAwMDoxNDoxMy4wOiBCQVIgMTM6IG5vIHNw
YWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MzgxXSBwY2kgMDAwMDoxNDoxMy4w
OiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDM4
M10gcGNpIDAwMDA6MTQ6MTQuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAw
MF0KWyAgICAxLjE1NDM4NF0gcGNpIDAwMDA6MTQ6MTQuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNz
aWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQzODVdIHBjaSAwMDAwOjE0OjE1LjA6IEJB
UiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQzODddIHBjaSAw
MDAwOjE0OjE1LjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpb
ICAgIDEuMTU0Mzg4XSBwY2kgMDAwMDoxNDoxNi4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8g
IHNpemUgMHgxMDAwXQpbICAgIDEuMTU0MzkwXSBwY2kgMDAwMDoxNDoxNi4wOiBCQVIgMTM6IGZh
aWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDM5MV0gcGNpIDAwMDA6
MTQ6MTcuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1
NDM5Ml0gcGNpIDAwMDA6MTQ6MTcuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6
ZSAweDEwMDBdClsgICAgMS4xNTQzOTRdIHBjaSAwMDAwOjE0OjE4LjA6IEJBUiAxMzogbm8gc3Bh
Y2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQzOTVdIHBjaSAwMDAwOjE0OjE4LjA6
IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0Mzk3
XSBwY2kgMDAwMDoxNDoxOS4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAw
XQpbICAgIDEuMTU0Mzk4XSBwY2kgMDAwMDoxNDoxOS4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3Np
Z24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDM5OV0gcGNpIDAwMDA6MTQ6MWEuMDogQkFS
IDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQwMV0gcGNpIDAw
MDA6MTQ6MWEuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsg
ICAgMS4xNTQ0MDJdIHBjaSAwMDAwOjE0OjFiLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAg
c2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0MDRdIHBjaSAwMDAwOjE0OjFiLjA6IEJBUiAxMzogZmFp
bGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDA1XSBwY2kgMDAwMDox
NDoxYy4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0
NDA3XSBwY2kgMDAwMDoxNDoxYy4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXpl
IDB4MTAwMF0KWyAgICAxLjE1NDQwOF0gcGNpIDAwMDA6MTQ6MWQuMDogQkFSIDEzOiBubyBzcGFj
ZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQwOV0gcGNpIDAwMDA6MTQ6MWQuMDog
QkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0MTFd
IHBjaSAwMDAwOjE0OjFlLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBd
ClsgICAgMS4xNTQ0MTJdIHBjaSAwMDAwOjE0OjFlLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2ln
biBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDE0XSBwY2kgMDAwMDoxNDoxZi4wOiBCQVIg
MTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDE1XSBwY2kgMDAw
MDoxNDoxZi4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAg
ICAxLjE1NDQxOV0gcGNpIDAwMDA6MTQ6MWYuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBz
aXplIDB4MTAwMF0KWyAgICAxLjE1NDQyMF0gcGNpIDAwMDA6MTQ6MWYuMDogQkFSIDEzOiBmYWls
ZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0MjJdIHBjaSAwMDAwOjE0
OjFlLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0
MjNdIHBjaSAwMDAwOjE0OjFlLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUg
MHgxMDAwXQpbICAgIDEuMTU0NDI1XSBwY2kgMDAwMDoxNDoxZC4wOiBCQVIgMTM6IG5vIHNwYWNl
IGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDI2XSBwY2kgMDAwMDoxNDoxZC4wOiBC
QVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQyOF0g
cGNpIDAwMDA6MTQ6MWMuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0K
WyAgICAxLjE1NDQyOV0gcGNpIDAwMDA6MTQ6MWMuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWdu
IFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0MzBdIHBjaSAwMDAwOjE0OjFiLjA6IEJBUiAx
Mzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0MzJdIHBjaSAwMDAw
OjE0OjFiLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAg
IDEuMTU0NDMzXSBwY2kgMDAwMDoxNDoxYS4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNp
emUgMHgxMDAwXQpbICAgIDEuMTU0NDM0XSBwY2kgMDAwMDoxNDoxYS4wOiBCQVIgMTM6IGZhaWxl
ZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQzNl0gcGNpIDAwMDA6MTQ6
MTkuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQz
N10gcGNpIDAwMDA6MTQ6MTkuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAw
eDEwMDBdClsgICAgMS4xNTQ0MzldIHBjaSAwMDAwOjE0OjE4LjA6IEJBUiAxMzogbm8gc3BhY2Ug
Zm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0NDBdIHBjaSAwMDAwOjE0OjE4LjA6IEJB
UiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDQyXSBw
Y2kgMDAwMDoxNDoxNy4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpb
ICAgIDEuMTU0NDQzXSBwY2kgMDAwMDoxNDoxNy4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24g
W2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQ0NF0gcGNpIDAwMDA6MTQ6MTYuMDogQkFSIDEz
OiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQ0Nl0gcGNpIDAwMDA6
MTQ6MTYuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAg
MS4xNTQ0NDddIHBjaSAwMDAwOjE0OjE1LjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6
ZSAweDEwMDBdClsgICAgMS4xNTQ0NDldIHBjaSAwMDAwOjE0OjE1LjA6IEJBUiAxMzogZmFpbGVk
IHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDUwXSBwY2kgMDAwMDoxNDox
NC4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDUy
XSBwY2kgMDAwMDoxNDoxNC4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4
MTAwMF0KWyAgICAxLjE1NDQ1M10gcGNpIDAwMDA6MTQ6MTMuMDogQkFSIDEzOiBubyBzcGFjZSBm
b3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQ1NV0gcGNpIDAwMDA6MTQ6MTMuMDogQkFS
IDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0NTZdIHBj
aSAwMDAwOjE0OjEyLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsg
ICAgMS4xNTQ0NThdIHBjaSAwMDAwOjE0OjEyLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBb
aW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDU5XSBwY2kgMDAwMDoxNDoxMS4wOiBCQVIgMTM6
IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDYwXSBwY2kgMDAwMDox
NDoxMS4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAx
LjE1NDQ2Ml0gcGNpIDAwMDA6MTQ6MTAuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXpl
IDB4MTAwMF0KWyAgICAxLjE1NDQ2M10gcGNpIDAwMDA6MTQ6MTAuMDogQkFSIDEzOiBmYWlsZWQg
dG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0NjVdIHBjaSAwMDAwOjE0OjBm
LjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0NjZd
IHBjaSAwMDAwOjE0OjBmLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgx
MDAwXQpbICAgIDEuMTU0NDY4XSBwY2kgMDAwMDoxNDowZS4wOiBCQVIgMTM6IG5vIHNwYWNlIGZv
ciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDY5XSBwY2kgMDAwMDoxNDowZS4wOiBCQVIg
MTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQ3MF0gcGNp
IDAwMDA6MTQ6MGQuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAg
ICAxLjE1NDQ3Ml0gcGNpIDAwMDA6MTQ6MGQuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtp
byAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0NzNdIHBjaSAwMDAwOjE0OjBjLjA6IEJBUiAxMzog
bm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0NzVdIHBjaSAwMDAwOjE0
OjBjLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEu
MTU0NDc2XSBwY2kgMDAwMDoxNDowYi4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUg
MHgxMDAwXQpbICAgIDEuMTU0NDc4XSBwY2kgMDAwMDoxNDowYi4wOiBCQVIgMTM6IGZhaWxlZCB0
byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQ3OV0gcGNpIDAwMDA6MTQ6MGEu
MDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQ4MF0g
cGNpIDAwMDA6MTQ6MGEuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEw
MDBdClsgICAgMS4xNTQ0ODJdIHBjaSAwMDAwOjE0OjA5LjA6IEJBUiAxMzogbm8gc3BhY2UgZm9y
IFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0ODNdIHBjaSAwMDAwOjE0OjA5LjA6IEJBUiAx
MzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDg1XSBwY2kg
MDAwMDoxNDowOC4wOiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAg
IDEuMTU0NDg2XSBwY2kgMDAwMDoxNDowOC4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lv
ICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQ4OF0gcGNpIDAwMDA6MTQ6MDcuMDogQkFSIDEzOiBu
byBzcGFjZSBmb3IgW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQ4OV0gcGNpIDAwMDA6MTQ6
MDcuMDogQkFSIDEzOiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4x
NTQ0OTBdIHBjaSAwMDAwOjE0OjA2LjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAw
eDEwMDBdClsgICAgMS4xNTQ0OTJdIHBjaSAwMDAwOjE0OjA2LjA6IEJBUiAxMzogZmFpbGVkIHRv
IGFzc2lnbiBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDkzXSBwY2kgMDAwMDoxNDowNS4w
OiBCQVIgMTM6IG5vIHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NDk1XSBw
Y2kgMDAwMDoxNDowNS4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAw
MF0KWyAgICAxLjE1NDQ5Nl0gcGNpIDAwMDA6MTQ6MDQuMDogQkFSIDEzOiBubyBzcGFjZSBmb3Ig
W2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1NDQ5N10gcGNpIDAwMDA6MTQ6MDQuMDogQkFSIDEz
OiBmYWlsZWQgdG8gYXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ0OTldIHBjaSAw
MDAwOjE0OjAzLjA6IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAg
MS4xNTQ1MDBdIHBjaSAwMDAwOjE0OjAzLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8g
IHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NTAyXSBwY2kgMDAwMDoxNDowMi4wOiBCQVIgMTM6IG5v
IHNwYWNlIGZvciBbaW8gIHNpemUgMHgxMDAwXQpbICAgIDEuMTU0NTAzXSBwY2kgMDAwMDoxNDow
Mi4wOiBCQVIgMTM6IGZhaWxlZCB0byBhc3NpZ24gW2lvICBzaXplIDB4MTAwMF0KWyAgICAxLjE1
NDUwNF0gcGNpIDAwMDA6MTQ6MDEuMDogQkFSIDEzOiBubyBzcGFjZSBmb3IgW2lvICBzaXplIDB4
MTAwMF0KWyAgICAxLjE1NDUwNl0gcGNpIDAwMDA6MTQ6MDEuMDogQkFSIDEzOiBmYWlsZWQgdG8g
YXNzaWduIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ1MDddIHBjaSAwMDAwOjE0OjAwLjA6
IEJBUiAxMzogbm8gc3BhY2UgZm9yIFtpbyAgc2l6ZSAweDEwMDBdClsgICAgMS4xNTQ1MDldIHBj
aSAwMDAwOjE0OjAwLjA6IEJBUiAxMzogZmFpbGVkIHRvIGFzc2lnbiBbaW8gIHNpemUgMHgxMDAw
XQpbICAgIDEuMTU0NTEyXSBwY2kgMDAwMDoxNDowMC4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMTVd
ClsgICAgMS4xNTQ1MTddIHBjaSAwMDAwOjE0OjAwLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4
ODNlMDAwMDAtMHg4M2ZmZmZmZl0KWyAgICAxLjE1NDUyMF0gcGNpIDAwMDA6MTQ6MDAuMDogICBi
cmlkZ2Ugd2luZG93IFttZW0gMHgxODAxZjAwMDAwMC0weDE4MDFmZmZmZmZmIDY0Yml0IHByZWZd
ClsgICAgMS4xNTQ1MjZdIHBjaSAwMDAwOjE0OjAxLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAxNl0K
WyAgICAxLjE1NDUzMF0gcGNpIDAwMDA6MTQ6MDEuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4
M2MwMDAwMC0weDgzZGZmZmZmXQpbICAgIDEuMTU0NTMzXSBwY2kgMDAwMDoxNDowMS4wOiAgIGJy
aWRnZSB3aW5kb3cgW21lbSAweDE4MDFlMDAwMDAwLTB4MTgwMWVmZmZmZmYgNjRiaXQgcHJlZl0K
WyAgICAxLjE1NDUzOF0gcGNpIDAwMDA6MTQ6MDIuMDogUENJIGJyaWRnZSB0byBbYnVzIDE3XQpb
ICAgIDEuMTU0NTQyXSBwY2kgMDAwMDoxNDowMi4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgz
YTAwMDAwLTB4ODNiZmZmZmZdClsgICAgMS4xNTQ1NDVdIHBjaSAwMDAwOjE0OjAyLjA6ICAgYnJp
ZGdlIHdpbmRvdyBbbWVtIDB4MTgwMWQwMDAwMDAtMHgxODAxZGZmZmZmZiA2NGJpdCBwcmVmXQpb
ICAgIDEuMTU0NTUwXSBwY2kgMDAwMDoxNDowMy4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMThdClsg
ICAgMS4xNTQ1NTRdIHBjaSAwMDAwOjE0OjAzLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODM4
MDAwMDAtMHg4MzlmZmZmZl0KWyAgICAxLjE1NDU1N10gcGNpIDAwMDA6MTQ6MDMuMDogICBicmlk
Z2Ugd2luZG93IFttZW0gMHgxODAxYzAwMDAwMC0weDE4MDFjZmZmZmZmIDY0Yml0IHByZWZdClsg
ICAgMS4xNTQ1NjJdIHBjaSAwMDAwOjE0OjA0LjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAxOV0KWyAg
ICAxLjE1NDU2Nl0gcGNpIDAwMDA6MTQ6MDQuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MzYw
MDAwMC0weDgzN2ZmZmZmXQpbICAgIDEuMTU0NTY5XSBwY2kgMDAwMDoxNDowNC4wOiAgIGJyaWRn
ZSB3aW5kb3cgW21lbSAweDE4MDFiMDAwMDAwLTB4MTgwMWJmZmZmZmYgNjRiaXQgcHJlZl0KWyAg
ICAxLjE1NDU3NF0gcGNpIDAwMDA6MTQ6MDUuMDogUENJIGJyaWRnZSB0byBbYnVzIDFhXQpbICAg
IDEuMTU0NTc4XSBwY2kgMDAwMDoxNDowNS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgzNDAw
MDAwLTB4ODM1ZmZmZmZdClsgICAgMS4xNTQ1ODFdIHBjaSAwMDAwOjE0OjA1LjA6ICAgYnJpZGdl
IHdpbmRvdyBbbWVtIDB4MTgwMWEwMDAwMDAtMHgxODAxYWZmZmZmZiA2NGJpdCBwcmVmXQpbICAg
IDEuMTU0NTg2XSBwY2kgMDAwMDoxNDowNi4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMWJdClsgICAg
MS4xNTQ1OTBdIHBjaSAwMDAwOjE0OjA2LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODMyMDAw
MDAtMHg4MzNmZmZmZl0KWyAgICAxLjE1NDU5M10gcGNpIDAwMDA6MTQ6MDYuMDogICBicmlkZ2Ug
d2luZG93IFttZW0gMHgxODAxOTAwMDAwMC0weDE4MDE5ZmZmZmZmIDY0Yml0IHByZWZdClsgICAg
MS4xNTQ1OThdIHBjaSAwMDAwOjE0OjA3LjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAxY10KWyAgICAx
LjE1NDYwMl0gcGNpIDAwMDA6MTQ6MDcuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MzAwMDAw
MC0weDgzMWZmZmZmXQpbICAgIDEuMTU0NjA1XSBwY2kgMDAwMDoxNDowNy4wOiAgIGJyaWRnZSB3
aW5kb3cgW21lbSAweDE4MDE4MDAwMDAwLTB4MTgwMThmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAx
LjE1NDYxMF0gcGNpIDAwMDA6MTQ6MDguMDogUENJIGJyaWRnZSB0byBbYnVzIDFkXQpbICAgIDEu
MTU0NjE0XSBwY2kgMDAwMDoxNDowOC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgyZTAwMDAw
LTB4ODJmZmZmZmZdClsgICAgMS4xNTQ2MTddIHBjaSAwMDAwOjE0OjA4LjA6ICAgYnJpZGdlIHdp
bmRvdyBbbWVtIDB4MTgwMTcwMDAwMDAtMHgxODAxN2ZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEu
MTU0NjIyXSBwY2kgMDAwMDoxNDowOS4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMWVdClsgICAgMS4x
NTQ2MjZdIHBjaSAwMDAwOjE0OjA5LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODJjMDAwMDAt
MHg4MmRmZmZmZl0KWyAgICAxLjE1NDYyOV0gcGNpIDAwMDA6MTQ6MDkuMDogICBicmlkZ2Ugd2lu
ZG93IFttZW0gMHgxODAxNjAwMDAwMC0weDE4MDE2ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4x
NTQ2MzRdIHBjaSAwMDAwOjE0OjBhLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAxZl0KWyAgICAxLjE1
NDYzOF0gcGNpIDAwMDA6MTQ6MGEuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MmEwMDAwMC0w
eDgyYmZmZmZmXQpbICAgIDEuMTU0NjQxXSBwY2kgMDAwMDoxNDowYS4wOiAgIGJyaWRnZSB3aW5k
b3cgW21lbSAweDE4MDE1MDAwMDAwLTB4MTgwMTVmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1
NDY0Nl0gcGNpIDAwMDA6MTQ6MGIuMDogUENJIGJyaWRnZSB0byBbYnVzIDIwXQpbICAgIDEuMTU0
NjUwXSBwY2kgMDAwMDoxNDowYi4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgyODAwMDAwLTB4
ODI5ZmZmZmZdClsgICAgMS4xNTQ2NTNdIHBjaSAwMDAwOjE0OjBiLjA6ICAgYnJpZGdlIHdpbmRv
dyBbbWVtIDB4MTgwMTQwMDAwMDAtMHgxODAxNGZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0
NjU4XSBwY2kgMDAwMDoxNDowYy4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMjFdClsgICAgMS4xNTQ2
NjJdIHBjaSAwMDAwOjE0OjBjLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODI2MDAwMDAtMHg4
MjdmZmZmZl0KWyAgICAxLjE1NDY2NV0gcGNpIDAwMDA6MTQ6MGMuMDogICBicmlkZ2Ugd2luZG93
IFttZW0gMHgxODAxMzAwMDAwMC0weDE4MDEzZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ2
NzBdIHBjaSAwMDAwOjE0OjBkLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAyMl0KWyAgICAxLjE1NDY3
NV0gcGNpIDAwMDA6MTQ6MGQuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MjQwMDAwMC0weDgy
NWZmZmZmXQpbICAgIDEuMTU0Njc4XSBwY2kgMDAwMDoxNDowZC4wOiAgIGJyaWRnZSB3aW5kb3cg
W21lbSAweDE4MDEyMDAwMDAwLTB4MTgwMTJmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDY4
M10gcGNpIDAwMDA6MTQ6MGUuMDogUENJIGJyaWRnZSB0byBbYnVzIDIzXQpbICAgIDEuMTU0Njg3
XSBwY2kgMDAwMDoxNDowZS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgyMjAwMDAwLTB4ODIz
ZmZmZmZdClsgICAgMS4xNTQ2OTBdIHBjaSAwMDAwOjE0OjBlLjA6ICAgYnJpZGdlIHdpbmRvdyBb
bWVtIDB4MTgwMTEwMDAwMDAtMHgxODAxMWZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0Njk1
XSBwY2kgMDAwMDoxNDowZi4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMjRdClsgICAgMS4xNTQ2OTld
IHBjaSAwMDAwOjE0OjBmLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODIwMDAwMDAtMHg4MjFm
ZmZmZl0KWyAgICAxLjE1NDcwMl0gcGNpIDAwMDA6MTQ6MGYuMDogICBicmlkZ2Ugd2luZG93IFtt
ZW0gMHgxODAxMDAwMDAwMC0weDE4MDEwZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ3MDdd
IHBjaSAwMDAwOjE0OjEwLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAyNV0KWyAgICAxLjE1NDcxMV0g
cGNpIDAwMDA6MTQ6MTAuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MWUwMDAwMC0weDgxZmZm
ZmZmXQpbICAgIDEuMTU0NzE0XSBwY2kgMDAwMDoxNDoxMC4wOiAgIGJyaWRnZSB3aW5kb3cgW21l
bSAweDE4MDBmMDAwMDAwLTB4MTgwMGZmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDcxOV0g
cGNpIDAwMDA6MTQ6MTEuMDogUENJIGJyaWRnZSB0byBbYnVzIDI2XQpbICAgIDEuMTU0NzIzXSBw
Y2kgMDAwMDoxNDoxMS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgxYzAwMDAwLTB4ODFkZmZm
ZmZdClsgICAgMS4xNTQ3MjZdIHBjaSAwMDAwOjE0OjExLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVt
IDB4MTgwMGUwMDAwMDAtMHgxODAwZWZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0NzMxXSBw
Y2kgMDAwMDoxNDoxMi4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMjddClsgICAgMS4xNTQ3MzVdIHBj
aSAwMDAwOjE0OjEyLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODFhMDAwMDAtMHg4MWJmZmZm
Zl0KWyAgICAxLjE1NDczN10gcGNpIDAwMDA6MTQ6MTIuMDogICBicmlkZ2Ugd2luZG93IFttZW0g
MHgxODAwZDAwMDAwMC0weDE4MDBkZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ3NDNdIHBj
aSAwMDAwOjE0OjEzLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAyOF0KWyAgICAxLjE1NDc0Nl0gcGNp
IDAwMDA6MTQ6MTMuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MTgwMDAwMC0weDgxOWZmZmZm
XQpbICAgIDEuMTU0NzQ5XSBwY2kgMDAwMDoxNDoxMy4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAw
eDE4MDBjMDAwMDAwLTB4MTgwMGNmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDc1NV0gcGNp
IDAwMDA6MTQ6MTQuMDogUENJIGJyaWRnZSB0byBbYnVzIDI5XQpbICAgIDEuMTU0NzU4XSBwY2kg
MDAwMDoxNDoxNC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgxNjAwMDAwLTB4ODE3ZmZmZmZd
ClsgICAgMS4xNTQ3NjFdIHBjaSAwMDAwOjE0OjE0LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4
MTgwMGIwMDAwMDAtMHgxODAwYmZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0NzY2XSBwY2kg
MDAwMDoxNDoxNS4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMmFdClsgICAgMS4xNTQ3NzBdIHBjaSAw
MDAwOjE0OjE1LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODE0MDAwMDAtMHg4MTVmZmZmZl0K
WyAgICAxLjE1NDc3M10gcGNpIDAwMDA6MTQ6MTUuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgx
ODAwYTAwMDAwMC0weDE4MDBhZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ3NzhdIHBjaSAw
MDAwOjE0OjE2LjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAyYl0KWyAgICAxLjE1NDc4Ml0gcGNpIDAw
MDA6MTQ6MTYuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MTIwMDAwMC0weDgxM2ZmZmZmXQpb
ICAgIDEuMTU0Nzg1XSBwY2kgMDAwMDoxNDoxNi4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4
MDA5MDAwMDAwLTB4MTgwMDlmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDc5MF0gcGNpIDAw
MDA6MTQ6MTcuMDogUENJIGJyaWRnZSB0byBbYnVzIDJjXQpbICAgIDEuMTU0Nzk0XSBwY2kgMDAw
MDoxNDoxNy4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgxMDAwMDAwLTB4ODExZmZmZmZdClsg
ICAgMS4xNTQ3OTddIHBjaSAwMDAwOjE0OjE3LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgw
MDgwMDAwMDAtMHgxODAwOGZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0ODAyXSBwY2kgMDAw
MDoxNDoxOC4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMmRdClsgICAgMS4xNTQ4MDZdIHBjaSAwMDAw
OjE0OjE4LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODBlMDAwMDAtMHg4MGZmZmZmZl0KWyAg
ICAxLjE1NDgwOV0gcGNpIDAwMDA6MTQ6MTguMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAw
NzAwMDAwMC0weDE4MDA3ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ4MTRdIHBjaSAwMDAw
OjE0OjE5LjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAyZV0KWyAgICAxLjE1NDgxOF0gcGNpIDAwMDA6
MTQ6MTkuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MGMwMDAwMC0weDgwZGZmZmZmXQpbICAg
IDEuMTU0ODIxXSBwY2kgMDAwMDoxNDoxOS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDA2
MDAwMDAwLTB4MTgwMDZmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDgyNl0gcGNpIDAwMDA6
MTQ6MWEuMDogUENJIGJyaWRnZSB0byBbYnVzIDJmXQpbICAgIDEuMTU0ODMwXSBwY2kgMDAwMDox
NDoxYS4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgwYTAwMDAwLTB4ODBiZmZmZmZdClsgICAg
MS4xNTQ4MzNdIHBjaSAwMDAwOjE0OjFhLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMDUw
MDAwMDAtMHgxODAwNWZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0ODM4XSBwY2kgMDAwMDox
NDoxYi4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMzBdClsgICAgMS4xNTQ4NDJdIHBjaSAwMDAwOjE0
OjFiLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODA4MDAwMDAtMHg4MDlmZmZmZl0KWyAgICAx
LjE1NDg0NV0gcGNpIDAwMDA6MTQ6MWIuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAwNDAw
MDAwMC0weDE4MDA0ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ4NTBdIHBjaSAwMDAwOjE0
OjFjLjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAzMV0KWyAgICAxLjE1NDg1NF0gcGNpIDAwMDA6MTQ6
MWMuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MDYwMDAwMC0weDgwN2ZmZmZmXQpbICAgIDEu
MTU0ODU3XSBwY2kgMDAwMDoxNDoxYy4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDAzMDAw
MDAwLTB4MTgwMDNmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDg2Ml0gcGNpIDAwMDA6MTQ6
MWQuMDogUENJIGJyaWRnZSB0byBbYnVzIDMyXQpbICAgIDEuMTU0ODY2XSBwY2kgMDAwMDoxNDox
ZC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgwNDAwMDAwLTB4ODA1ZmZmZmZdClsgICAgMS4x
NTQ4NjldIHBjaSAwMDAwOjE0OjFkLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMDIwMDAw
MDAtMHgxODAwMmZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0ODc0XSBwY2kgMDAwMDoxNDox
ZS4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMzNdClsgICAgMS4xNTQ4NzhdIHBjaSAwMDAwOjE0OjFl
LjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODAyMDAwMDAtMHg4MDNmZmZmZl0KWyAgICAxLjE1
NDg4MV0gcGNpIDAwMDA6MTQ6MWUuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAwMTAwMDAw
MC0weDE4MDAxZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ4ODZdIHBjaSAwMDAwOjE0OjFm
LjA6IFBDSSBicmlkZ2UgdG8gW2J1cyAzNF0KWyAgICAxLjE1NDg5MF0gcGNpIDAwMDA6MTQ6MWYu
MDogICBicmlkZ2Ugd2luZG93IFttZW0gMHg4MDAwMDAwMC0weDgwMWZmZmZmXQpbICAgIDEuMTU0
ODkzXSBwY2kgMDAwMDoxNDoxZi4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDE4MDAwMDAwMDAw
LTB4MTgwMDBmZmZmZmYgNjRiaXQgcHJlZl0KWyAgICAxLjE1NDg5OF0gcGNpIDAwMDA6MTM6MDAu
MDogUENJIGJyaWRnZSB0byBbYnVzIDE0LTM0XQpbICAgIDEuMTU0OTAyXSBwY2kgMDAwMDoxMzow
MC4wOiAgIGJyaWRnZSB3aW5kb3cgW21lbSAweDgwMDAwMDAwLTB4ODNmZmZmZmZdClsgICAgMS4x
NTQ5MTBdIHBjaSAwMDAwOjEzOjAwLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4MTgwMDAwMDAw
MDAtMHgxODAxZmZmZmZmZiA2NGJpdCBwcmVmXQpbICAgIDEuMTU0OTE1XSBwY2kgMDAwMDowMDow
Mi4wOiBQQ0kgYnJpZGdlIHRvIFtidXMgMTMtMzRdClsgICAgMS4xNTQ5MTddIHBjaSAwMDAwOjAw
OjAyLjA6ICAgYnJpZGdlIHdpbmRvdyBbbWVtIDB4ODAwMDAwMDAtMHg4M2ZmZmZmZl0KWyAgICAx
LjE1NDkxOV0gcGNpIDAwMDA6MDA6MDIuMDogICBicmlkZ2Ugd2luZG93IFttZW0gMHgxODAwMDAw
MDAwMC0weDE4MDFmZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5MjFdIHBjaV9idXMgMDAw
MDowMDogcmVzb3VyY2UgNCBbbWVtIDB4ODAwMDAwMDAtMHg5ZmZmZmZmZiB3aW5kb3ddClsgICAg
MS4xNTQ5MjNdIHBjaV9idXMgMDAwMDowMDogcmVzb3VyY2UgNSBbbWVtIDB4MTgwMDAwMDAwMDAt
MHgxOWZmZmZmZmZmZiB3aW5kb3ddClsgICAgMS4xNTQ5MjVdIHBjaV9idXMgMDAwMDowMTogcmVz
b3VyY2UgMSBbbWVtIDB4ODQwMDAwMDAtMHg4NWZmZmZmZl0KWyAgICAxLjE1NDkyNl0gcGNpX2J1
cyAwMDAwOjAxOiByZXNvdXJjZSAyIFttZW0gMHgxODAyMDAwMDAwMC0weDE4MDJmZmZmZmZmIDY0
Yml0IHByZWZdClsgICAgMS4xNTQ5MjhdIHBjaV9idXMgMDAwMDowMjogcmVzb3VyY2UgMSBbbWVt
IDB4ODQwMDAwMDAtMHg4NWZmZmZmZl0KWyAgICAxLjE1NDkzMF0gcGNpX2J1cyAwMDAwOjAyOiBy
ZXNvdXJjZSAyIFttZW0gMHgxODAyMDAwMDAwMC0weDE4MDJmZmZmZmZmIDY0Yml0IHByZWZdClsg
ICAgMS4xNTQ5MzFdIHBjaV9idXMgMDAwMDowMzogcmVzb3VyY2UgMSBbbWVtIDB4ODVlMDAwMDAt
MHg4NWZmZmZmZl0KWyAgICAxLjE1NDkzM10gcGNpX2J1cyAwMDAwOjAzOiByZXNvdXJjZSAyIFtt
ZW0gMHgxODAyZjAwMDAwMC0weDE4MDJmZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5MzRd
IHBjaV9idXMgMDAwMDowNDogcmVzb3VyY2UgMSBbbWVtIDB4ODVjMDAwMDAtMHg4NWRmZmZmZl0K
WyAgICAxLjE1NDkzNl0gcGNpX2J1cyAwMDAwOjA0OiByZXNvdXJjZSAyIFttZW0gMHgxODAyZTAw
MDAwMC0weDE4MDJlZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5MzddIHBjaV9idXMgMDAw
MDowNTogcmVzb3VyY2UgMSBbbWVtIDB4ODVhMDAwMDAtMHg4NWJmZmZmZl0KWyAgICAxLjE1NDkz
OV0gcGNpX2J1cyAwMDAwOjA1OiByZXNvdXJjZSAyIFttZW0gMHgxODAyZDAwMDAwMC0weDE4MDJk
ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5NDFdIHBjaV9idXMgMDAwMDowNjogcmVzb3Vy
Y2UgMSBbbWVtIDB4ODU4MDAwMDAtMHg4NTlmZmZmZl0KWyAgICAxLjE1NDk0Ml0gcGNpX2J1cyAw
MDAwOjA2OiByZXNvdXJjZSAyIFttZW0gMHgxODAyYzAwMDAwMC0weDE4MDJjZmZmZmZmIDY0Yml0
IHByZWZdClsgICAgMS4xNTQ5NDRdIHBjaV9idXMgMDAwMDowNzogcmVzb3VyY2UgMSBbbWVtIDB4
ODU2MDAwMDAtMHg4NTdmZmZmZl0KWyAgICAxLjE1NDk0NV0gcGNpX2J1cyAwMDAwOjA3OiByZXNv
dXJjZSAyIFttZW0gMHgxODAyYjAwMDAwMC0weDE4MDJiZmZmZmZmIDY0Yml0IHByZWZdClsgICAg
MS4xNTQ5NDddIHBjaV9idXMgMDAwMDowODogcmVzb3VyY2UgMSBbbWVtIDB4ODU0MDAwMDAtMHg4
NTVmZmZmZl0KWyAgICAxLjE1NDk0OF0gcGNpX2J1cyAwMDAwOjA4OiByZXNvdXJjZSAyIFttZW0g
MHgxODAyYTAwMDAwMC0weDE4MDJhZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5NTBdIHBj
aV9idXMgMDAwMDowOTogcmVzb3VyY2UgMSBbbWVtIDB4ODUyMDAwMDAtMHg4NTNmZmZmZl0KWyAg
ICAxLjE1NDk1MV0gcGNpX2J1cyAwMDAwOjA5OiByZXNvdXJjZSAyIFttZW0gMHgxODAyOTAwMDAw
MC0weDE4MDI5ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5NTNdIHBjaV9idXMgMDAwMDow
YTogcmVzb3VyY2UgMSBbbWVtIDB4ODUwMDAwMDAtMHg4NTFmZmZmZl0KWyAgICAxLjE1NDk1NF0g
cGNpX2J1cyAwMDAwOjBhOiByZXNvdXJjZSAyIFttZW0gMHgxODAyODAwMDAwMC0weDE4MDI4ZmZm
ZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5NTZdIHBjaV9idXMgMDAwMDowYjogcmVzb3VyY2Ug
MSBbbWVtIDB4ODRlMDAwMDAtMHg4NGZmZmZmZl0KWyAgICAxLjE1NDk1N10gcGNpX2J1cyAwMDAw
OjBiOiByZXNvdXJjZSAyIFttZW0gMHgxODAyNzAwMDAwMC0weDE4MDI3ZmZmZmZmIDY0Yml0IHBy
ZWZdClsgICAgMS4xNTQ5NTldIHBjaV9idXMgMDAwMDowYzogcmVzb3VyY2UgMSBbbWVtIDB4ODRj
MDAwMDAtMHg4NGRmZmZmZl0KWyAgICAxLjE1NDk2MF0gcGNpX2J1cyAwMDAwOjBjOiByZXNvdXJj
ZSAyIFttZW0gMHgxODAyNjAwMDAwMC0weDE4MDI2ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4x
NTQ5NjJdIHBjaV9idXMgMDAwMDowZDogcmVzb3VyY2UgMSBbbWVtIDB4ODRhMDAwMDAtMHg4NGJm
ZmZmZl0KWyAgICAxLjE1NDk2M10gcGNpX2J1cyAwMDAwOjBkOiByZXNvdXJjZSAyIFttZW0gMHgx
ODAyNTAwMDAwMC0weDE4MDI1ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5NjVdIHBjaV9i
dXMgMDAwMDowZTogcmVzb3VyY2UgMSBbbWVtIDB4ODQ4MDAwMDAtMHg4NDlmZmZmZl0KWyAgICAx
LjE1NDk2N10gcGNpX2J1cyAwMDAwOjBlOiByZXNvdXJjZSAyIFttZW0gMHgxODAyNDAwMDAwMC0w
eDE4MDI0ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5NjhdIHBjaV9idXMgMDAwMDowZjog
cmVzb3VyY2UgMSBbbWVtIDB4ODQ2MDAwMDAtMHg4NDdmZmZmZl0KWyAgICAxLjE1NDk3MF0gcGNp
X2J1cyAwMDAwOjBmOiByZXNvdXJjZSAyIFttZW0gMHgxODAyMzAwMDAwMC0weDE4MDIzZmZmZmZm
IDY0Yml0IHByZWZdClsgICAgMS4xNTQ5NzFdIHBjaV9idXMgMDAwMDoxMDogcmVzb3VyY2UgMSBb
bWVtIDB4ODQ0MDAwMDAtMHg4NDVmZmZmZl0KWyAgICAxLjE1NDk3M10gcGNpX2J1cyAwMDAwOjEw
OiByZXNvdXJjZSAyIFttZW0gMHgxODAyMjAwMDAwMC0weDE4MDIyZmZmZmZmIDY0Yml0IHByZWZd
ClsgICAgMS4xNTQ5NzVdIHBjaV9idXMgMDAwMDoxMTogcmVzb3VyY2UgMSBbbWVtIDB4ODQyMDAw
MDAtMHg4NDNmZmZmZl0KWyAgICAxLjE1NDk3Nl0gcGNpX2J1cyAwMDAwOjExOiByZXNvdXJjZSAy
IFttZW0gMHgxODAyMTAwMDAwMC0weDE4MDIxZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5
NzhdIHBjaV9idXMgMDAwMDoxMjogcmVzb3VyY2UgMSBbbWVtIDB4ODQwMDAwMDAtMHg4NDFmZmZm
Zl0KWyAgICAxLjE1NDk3OV0gcGNpX2J1cyAwMDAwOjEyOiByZXNvdXJjZSAyIFttZW0gMHgxODAy
MDAwMDAwMC0weDE4MDIwZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5ODFdIHBjaV9idXMg
MDAwMDoxMzogcmVzb3VyY2UgMSBbbWVtIDB4ODAwMDAwMDAtMHg4M2ZmZmZmZl0KWyAgICAxLjE1
NDk4Ml0gcGNpX2J1cyAwMDAwOjEzOiByZXNvdXJjZSAyIFttZW0gMHgxODAwMDAwMDAwMC0weDE4
MDFmZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5ODRdIHBjaV9idXMgMDAwMDoxNDogcmVz
b3VyY2UgMSBbbWVtIDB4ODAwMDAwMDAtMHg4M2ZmZmZmZl0KWyAgICAxLjE1NDk4NV0gcGNpX2J1
cyAwMDAwOjE0OiByZXNvdXJjZSAyIFttZW0gMHgxODAwMDAwMDAwMC0weDE4MDFmZmZmZmZmIDY0
Yml0IHByZWZdClsgICAgMS4xNTQ5ODddIHBjaV9idXMgMDAwMDoxNTogcmVzb3VyY2UgMSBbbWVt
IDB4ODNlMDAwMDAtMHg4M2ZmZmZmZl0KWyAgICAxLjE1NDk4OV0gcGNpX2J1cyAwMDAwOjE1OiBy
ZXNvdXJjZSAyIFttZW0gMHgxODAxZjAwMDAwMC0weDE4MDFmZmZmZmZmIDY0Yml0IHByZWZdClsg
ICAgMS4xNTQ5OTBdIHBjaV9idXMgMDAwMDoxNjogcmVzb3VyY2UgMSBbbWVtIDB4ODNjMDAwMDAt
MHg4M2RmZmZmZl0KWyAgICAxLjE1NDk5Ml0gcGNpX2J1cyAwMDAwOjE2OiByZXNvdXJjZSAyIFtt
ZW0gMHgxODAxZTAwMDAwMC0weDE4MDFlZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5OTNd
IHBjaV9idXMgMDAwMDoxNzogcmVzb3VyY2UgMSBbbWVtIDB4ODNhMDAwMDAtMHg4M2JmZmZmZl0K
WyAgICAxLjE1NDk5NV0gcGNpX2J1cyAwMDAwOjE3OiByZXNvdXJjZSAyIFttZW0gMHgxODAxZDAw
MDAwMC0weDE4MDFkZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTQ5OTddIHBjaV9idXMgMDAw
MDoxODogcmVzb3VyY2UgMSBbbWVtIDB4ODM4MDAwMDAtMHg4MzlmZmZmZl0KWyAgICAxLjE1NDk5
OF0gcGNpX2J1cyAwMDAwOjE4OiByZXNvdXJjZSAyIFttZW0gMHgxODAxYzAwMDAwMC0weDE4MDFj
ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwMDBdIHBjaV9idXMgMDAwMDoxOTogcmVzb3Vy
Y2UgMSBbbWVtIDB4ODM2MDAwMDAtMHg4MzdmZmZmZl0KWyAgICAxLjE1NTAwMV0gcGNpX2J1cyAw
MDAwOjE5OiByZXNvdXJjZSAyIFttZW0gMHgxODAxYjAwMDAwMC0weDE4MDFiZmZmZmZmIDY0Yml0
IHByZWZdClsgICAgMS4xNTUwMDNdIHBjaV9idXMgMDAwMDoxYTogcmVzb3VyY2UgMSBbbWVtIDB4
ODM0MDAwMDAtMHg4MzVmZmZmZl0KWyAgICAxLjE1NTAwNF0gcGNpX2J1cyAwMDAwOjFhOiByZXNv
dXJjZSAyIFttZW0gMHgxODAxYTAwMDAwMC0weDE4MDFhZmZmZmZmIDY0Yml0IHByZWZdClsgICAg
MS4xNTUwMDZdIHBjaV9idXMgMDAwMDoxYjogcmVzb3VyY2UgMSBbbWVtIDB4ODMyMDAwMDAtMHg4
MzNmZmZmZl0KWyAgICAxLjE1NTAwN10gcGNpX2J1cyAwMDAwOjFiOiByZXNvdXJjZSAyIFttZW0g
MHgxODAxOTAwMDAwMC0weDE4MDE5ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwMDldIHBj
aV9idXMgMDAwMDoxYzogcmVzb3VyY2UgMSBbbWVtIDB4ODMwMDAwMDAtMHg4MzFmZmZmZl0KWyAg
ICAxLjE1NTAxMV0gcGNpX2J1cyAwMDAwOjFjOiByZXNvdXJjZSAyIFttZW0gMHgxODAxODAwMDAw
MC0weDE4MDE4ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwMTJdIHBjaV9idXMgMDAwMDox
ZDogcmVzb3VyY2UgMSBbbWVtIDB4ODJlMDAwMDAtMHg4MmZmZmZmZl0KWyAgICAxLjE1NTAxNF0g
cGNpX2J1cyAwMDAwOjFkOiByZXNvdXJjZSAyIFttZW0gMHgxODAxNzAwMDAwMC0weDE4MDE3ZmZm
ZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwMTVdIHBjaV9idXMgMDAwMDoxZTogcmVzb3VyY2Ug
MSBbbWVtIDB4ODJjMDAwMDAtMHg4MmRmZmZmZl0KWyAgICAxLjE1NTAxN10gcGNpX2J1cyAwMDAw
OjFlOiByZXNvdXJjZSAyIFttZW0gMHgxODAxNjAwMDAwMC0weDE4MDE2ZmZmZmZmIDY0Yml0IHBy
ZWZdClsgICAgMS4xNTUwMThdIHBjaV9idXMgMDAwMDoxZjogcmVzb3VyY2UgMSBbbWVtIDB4ODJh
MDAwMDAtMHg4MmJmZmZmZl0KWyAgICAxLjE1NTAyMF0gcGNpX2J1cyAwMDAwOjFmOiByZXNvdXJj
ZSAyIFttZW0gMHgxODAxNTAwMDAwMC0weDE4MDE1ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4x
NTUwMjFdIHBjaV9idXMgMDAwMDoyMDogcmVzb3VyY2UgMSBbbWVtIDB4ODI4MDAwMDAtMHg4Mjlm
ZmZmZl0KWyAgICAxLjE1NTAyM10gcGNpX2J1cyAwMDAwOjIwOiByZXNvdXJjZSAyIFttZW0gMHgx
ODAxNDAwMDAwMC0weDE4MDE0ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwMjVdIHBjaV9i
dXMgMDAwMDoyMTogcmVzb3VyY2UgMSBbbWVtIDB4ODI2MDAwMDAtMHg4MjdmZmZmZl0KWyAgICAx
LjE1NTAyNl0gcGNpX2J1cyAwMDAwOjIxOiByZXNvdXJjZSAyIFttZW0gMHgxODAxMzAwMDAwMC0w
eDE4MDEzZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwMjhdIHBjaV9idXMgMDAwMDoyMjog
cmVzb3VyY2UgMSBbbWVtIDB4ODI0MDAwMDAtMHg4MjVmZmZmZl0KWyAgICAxLjE1NTAyOV0gcGNp
X2J1cyAwMDAwOjIyOiByZXNvdXJjZSAyIFttZW0gMHgxODAxMjAwMDAwMC0weDE4MDEyZmZmZmZm
IDY0Yml0IHByZWZdClsgICAgMS4xNTUwMzFdIHBjaV9idXMgMDAwMDoyMzogcmVzb3VyY2UgMSBb
bWVtIDB4ODIyMDAwMDAtMHg4MjNmZmZmZl0KWyAgICAxLjE1NTAzMl0gcGNpX2J1cyAwMDAwOjIz
OiByZXNvdXJjZSAyIFttZW0gMHgxODAxMTAwMDAwMC0weDE4MDExZmZmZmZmIDY0Yml0IHByZWZd
ClsgICAgMS4xNTUwMzRdIHBjaV9idXMgMDAwMDoyNDogcmVzb3VyY2UgMSBbbWVtIDB4ODIwMDAw
MDAtMHg4MjFmZmZmZl0KWyAgICAxLjE1NTAzNV0gcGNpX2J1cyAwMDAwOjI0OiByZXNvdXJjZSAy
IFttZW0gMHgxODAxMDAwMDAwMC0weDE4MDEwZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUw
MzddIHBjaV9idXMgMDAwMDoyNTogcmVzb3VyY2UgMSBbbWVtIDB4ODFlMDAwMDAtMHg4MWZmZmZm
Zl0KWyAgICAxLjE1NTAzOF0gcGNpX2J1cyAwMDAwOjI1OiByZXNvdXJjZSAyIFttZW0gMHgxODAw
ZjAwMDAwMC0weDE4MDBmZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwNDBdIHBjaV9idXMg
MDAwMDoyNjogcmVzb3VyY2UgMSBbbWVtIDB4ODFjMDAwMDAtMHg4MWRmZmZmZl0KWyAgICAxLjE1
NTA0Ml0gcGNpX2J1cyAwMDAwOjI2OiByZXNvdXJjZSAyIFttZW0gMHgxODAwZTAwMDAwMC0weDE4
MDBlZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwNDNdIHBjaV9idXMgMDAwMDoyNzogcmVz
b3VyY2UgMSBbbWVtIDB4ODFhMDAwMDAtMHg4MWJmZmZmZl0KWyAgICAxLjE1NTA0NV0gcGNpX2J1
cyAwMDAwOjI3OiByZXNvdXJjZSAyIFttZW0gMHgxODAwZDAwMDAwMC0weDE4MDBkZmZmZmZmIDY0
Yml0IHByZWZdClsgICAgMS4xNTUwNDZdIHBjaV9idXMgMDAwMDoyODogcmVzb3VyY2UgMSBbbWVt
IDB4ODE4MDAwMDAtMHg4MTlmZmZmZl0KWyAgICAxLjE1NTA0OF0gcGNpX2J1cyAwMDAwOjI4OiBy
ZXNvdXJjZSAyIFttZW0gMHgxODAwYzAwMDAwMC0weDE4MDBjZmZmZmZmIDY0Yml0IHByZWZdClsg
ICAgMS4xNTUwNDldIHBjaV9idXMgMDAwMDoyOTogcmVzb3VyY2UgMSBbbWVtIDB4ODE2MDAwMDAt
MHg4MTdmZmZmZl0KWyAgICAxLjE1NTA1MV0gcGNpX2J1cyAwMDAwOjI5OiByZXNvdXJjZSAyIFtt
ZW0gMHgxODAwYjAwMDAwMC0weDE4MDBiZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwNTJd
IHBjaV9idXMgMDAwMDoyYTogcmVzb3VyY2UgMSBbbWVtIDB4ODE0MDAwMDAtMHg4MTVmZmZmZl0K
WyAgICAxLjE1NTA1NF0gcGNpX2J1cyAwMDAwOjJhOiByZXNvdXJjZSAyIFttZW0gMHgxODAwYTAw
MDAwMC0weDE4MDBhZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwNTZdIHBjaV9idXMgMDAw
MDoyYjogcmVzb3VyY2UgMSBbbWVtIDB4ODEyMDAwMDAtMHg4MTNmZmZmZl0KWyAgICAxLjE1NTA1
N10gcGNpX2J1cyAwMDAwOjJiOiByZXNvdXJjZSAyIFttZW0gMHgxODAwOTAwMDAwMC0weDE4MDA5
ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwNTldIHBjaV9idXMgMDAwMDoyYzogcmVzb3Vy
Y2UgMSBbbWVtIDB4ODEwMDAwMDAtMHg4MTFmZmZmZl0KWyAgICAxLjE1NTA2MF0gcGNpX2J1cyAw
MDAwOjJjOiByZXNvdXJjZSAyIFttZW0gMHgxODAwODAwMDAwMC0weDE4MDA4ZmZmZmZmIDY0Yml0
IHByZWZdClsgICAgMS4xNTUwNjJdIHBjaV9idXMgMDAwMDoyZDogcmVzb3VyY2UgMSBbbWVtIDB4
ODBlMDAwMDAtMHg4MGZmZmZmZl0KWyAgICAxLjE1NTA2M10gcGNpX2J1cyAwMDAwOjJkOiByZXNv
dXJjZSAyIFttZW0gMHgxODAwNzAwMDAwMC0weDE4MDA3ZmZmZmZmIDY0Yml0IHByZWZdClsgICAg
MS4xNTUwNjVdIHBjaV9idXMgMDAwMDoyZTogcmVzb3VyY2UgMSBbbWVtIDB4ODBjMDAwMDAtMHg4
MGRmZmZmZl0KWyAgICAxLjE1NTA2Nl0gcGNpX2J1cyAwMDAwOjJlOiByZXNvdXJjZSAyIFttZW0g
MHgxODAwNjAwMDAwMC0weDE4MDA2ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwNjhdIHBj
aV9idXMgMDAwMDoyZjogcmVzb3VyY2UgMSBbbWVtIDB4ODBhMDAwMDAtMHg4MGJmZmZmZl0KWyAg
ICAxLjE1NTA2OV0gcGNpX2J1cyAwMDAwOjJmOiByZXNvdXJjZSAyIFttZW0gMHgxODAwNTAwMDAw
MC0weDE4MDA1ZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwNzFdIHBjaV9idXMgMDAwMDoz
MDogcmVzb3VyY2UgMSBbbWVtIDB4ODA4MDAwMDAtMHg4MDlmZmZmZl0KWyAgICAxLjE1NTA3M10g
cGNpX2J1cyAwMDAwOjMwOiByZXNvdXJjZSAyIFttZW0gMHgxODAwNDAwMDAwMC0weDE4MDA0ZmZm
ZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwNzRdIHBjaV9idXMgMDAwMDozMTogcmVzb3VyY2Ug
MSBbbWVtIDB4ODA2MDAwMDAtMHg4MDdmZmZmZl0KWyAgICAxLjE1NTA3Nl0gcGNpX2J1cyAwMDAw
OjMxOiByZXNvdXJjZSAyIFttZW0gMHgxODAwMzAwMDAwMC0weDE4MDAzZmZmZmZmIDY0Yml0IHBy
ZWZdClsgICAgMS4xNTUwNzddIHBjaV9idXMgMDAwMDozMjogcmVzb3VyY2UgMSBbbWVtIDB4ODA0
MDAwMDAtMHg4MDVmZmZmZl0KWyAgICAxLjE1NTA3OV0gcGNpX2J1cyAwMDAwOjMyOiByZXNvdXJj
ZSAyIFttZW0gMHgxODAwMjAwMDAwMC0weDE4MDAyZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4x
NTUwODBdIHBjaV9idXMgMDAwMDozMzogcmVzb3VyY2UgMSBbbWVtIDB4ODAyMDAwMDAtMHg4MDNm
ZmZmZl0KWyAgICAxLjE1NTA4Ml0gcGNpX2J1cyAwMDAwOjMzOiByZXNvdXJjZSAyIFttZW0gMHgx
ODAwMTAwMDAwMC0weDE4MDAxZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUwODRdIHBjaV9i
dXMgMDAwMDozNDogcmVzb3VyY2UgMSBbbWVtIDB4ODAwMDAwMDAtMHg4MDFmZmZmZl0KWyAgICAx
LjE1NTA4NV0gcGNpX2J1cyAwMDAwOjM0OiByZXNvdXJjZSAyIFttZW0gMHgxODAwMDAwMDAwMC0w
eDE4MDAwZmZmZmZmIDY0Yml0IHByZWZdClsgICAgMS4xNTUzMThdIGlvbW11OiBEZWZhdWx0IGRv
bWFpbiB0eXBlOiBUcmFuc2xhdGVkIApbICAgIDEuMTU1MzIxXSBpb21tdTogRE1BIGRvbWFpbiBU
TEIgaW52YWxpZGF0aW9uIHBvbGljeTogc3RyaWN0IG1vZGUgClsgICAgMS4xNTUzNTldIHZnYWFy
YjogbG9hZGVkClsgICAgMS4xNTU0MzJdIFNDU0kgc3Vic3lzdGVtIGluaXRpYWxpemVkClsgICAg
MS4xNTU0NjNdIGxpYmF0YSB2ZXJzaW9uIDMuMDAgbG9hZGVkLgpbICAgIDEuMTU1NDkxXSBBQ1BJ
OiBidXMgdHlwZSBVU0IgcmVnaXN0ZXJlZApbICAgIDEuMTU1NTA0XSB1c2Jjb3JlOiByZWdpc3Rl
cmVkIG5ldyBpbnRlcmZhY2UgZHJpdmVyIHVzYmZzClsgICAgMS4xNTU1MDldIHVzYmNvcmU6IHJl
Z2lzdGVyZWQgbmV3IGludGVyZmFjZSBkcml2ZXIgaHViClsgICAgMS4xNTU1MTldIHVzYmNvcmU6
IHJlZ2lzdGVyZWQgbmV3IGRldmljZSBkcml2ZXIgdXNiClsgICAgMS4xNTU1NTVdIHBwc19jb3Jl
OiBMaW51eFBQUyBBUEkgdmVyLiAxIHJlZ2lzdGVyZWQKWyAgICAxLjE1NTU1Nl0gcHBzX2NvcmU6
IFNvZnR3YXJlIHZlci4gNS4zLjYgLSBDb3B5cmlnaHQgMjAwNS0yMDA3IFJvZG9sZm8gR2lvbWV0
dGkgPGdpb21ldHRpQGxpbnV4Lml0PgpbICAgIDEuMTU1NTU5XSBQVFAgY2xvY2sgc3VwcG9ydCBy
ZWdpc3RlcmVkClsgICAgMS4xNTU2MTBdIEVEQUMgTUM6IFZlcjogMy4wLjAKWyAgICAxLjE1NTg0
OV0gUmVnaXN0ZXJlZCBlZml2YXJzIG9wZXJhdGlvbnMKWyAgICAxLjE1NjI2OV0gRlBHQSBtYW5h
Z2VyIGZyYW1ld29yawpbICAgIDEuMTU2MjgyXSBBZHZhbmNlZCBMaW51eCBTb3VuZCBBcmNoaXRl
Y3R1cmUgRHJpdmVyIEluaXRpYWxpemVkLgpbICAgIDEuMTU2NTE4XSBjbG9ja3NvdXJjZTogU3dp
dGNoZWQgdG8gY2xvY2tzb3VyY2UgYXJjaF9zeXNfY291bnRlcgpbICAgIDEuMTY1Nzc3XSBwbnA6
IFBuUCBBQ1BJIGluaXQKWyAgICAxLjE2NTk1Nl0gc3lzdGVtIDAwOjAwOiBbbWVtIDB4YzAwMDAw
MDAwMC0weGMwMGZmZmZmZmYgd2luZG93XSBjb3VsZCBub3QgYmUgcmVzZXJ2ZWQKWyAgICAxLjE2
NTk2MV0gc3lzdGVtIDAwOjAwOiBbbWVtIDB4ZDAwMDAwMDAwMC0weGQwMGZmZmZmZmYgd2luZG93
XSBoYXMgYmVlbiByZXNlcnZlZApbICAgIDEuMTY1OTY0XSBzeXN0ZW0gMDA6MDA6IFttZW0gMHhl
MDAwMDAwMDAwLTB4ZTAwZmZmZmZmZiB3aW5kb3ddIGhhcyBiZWVuIHJlc2VydmVkClsgICAgMS4x
NjU5NjZdIHN5c3RlbSAwMDowMDogW21lbSAweGYwMDAwMDAwMDAtMHhmMDBmZmZmZmZmIHdpbmRv
d10gaGFzIGJlZW4gcmVzZXJ2ZWQKWyAgICAxLjE2NTk4OF0gcG5wOiBQblAgQUNQSTogZm91bmQg
MSBkZXZpY2VzClsgICAgMS4xNjY5MjhdIE5FVDogUmVnaXN0ZXJlZCBQRl9JTkVUIHByb3RvY29s
IGZhbWlseQpbICAgIDEuMTY3MDkxXSBJUCBpZGVudHMgaGFzaCB0YWJsZSBlbnRyaWVzOiAyNjIx
NDQgKG9yZGVyOiA5LCAyMDk3MTUyIGJ5dGVzLCBsaW5lYXIpClsgICAgMS4xNjg5OTVdIHRjcF9s
aXN0ZW5fcG9ydGFkZHJfaGFzaCBoYXNoIHRhYmxlIGVudHJpZXM6IDY1NTM2IChvcmRlcjogOCwg
MTA0ODU3NiBieXRlcywgbGluZWFyKQpbICAgIDEuMTY5NDU0XSBUYWJsZS1wZXJ0dXJiIGhhc2gg
dGFibGUgZW50cmllczogNjU1MzYgKG9yZGVyOiA2LCAyNjIxNDQgYnl0ZXMsIGxpbmVhcikKWyAg
ICAxLjE2OTQ2MV0gVENQIGVzdGFibGlzaGVkIGhhc2ggdGFibGUgZW50cmllczogNTI0Mjg4IChv
cmRlcjogMTAsIDQxOTQzMDQgYnl0ZXMsIGxpbmVhcikKWyAgICAxLjE3MDcyNl0gVENQIGJpbmQg
aGFzaCB0YWJsZSBlbnRyaWVzOiA2NTUzNiAob3JkZXI6IDgsIDEwNDg1NzYgYnl0ZXMsIGxpbmVh
cikKWyAgICAxLjE3MTA0NV0gVENQOiBIYXNoIHRhYmxlcyBjb25maWd1cmVkIChlc3RhYmxpc2hl
ZCA1MjQyODggYmluZCA2NTUzNikKWyAgICAxLjE3MTEwMV0gVURQIGhhc2ggdGFibGUgZW50cmll
czogNjU1MzYgKG9yZGVyOiA5LCAyMDk3MTUyIGJ5dGVzLCBsaW5lYXIpClsgICAgMS4xNzIwMTZd
IFVEUC1MaXRlIGhhc2ggdGFibGUgZW50cmllczogNjU1MzYgKG9yZGVyOiA5LCAyMDk3MTUyIGJ5
dGVzLCBsaW5lYXIpClsgICAgMS4xNzI5OTFdIE5FVDogUmVnaXN0ZXJlZCBQRl9VTklYL1BGX0xP
Q0FMIHByb3RvY29sIGZhbWlseQpbICAgIDEuMTczMDc4XSBSUEM6IFJlZ2lzdGVyZWQgbmFtZWQg
VU5JWCBzb2NrZXQgdHJhbnNwb3J0IG1vZHVsZS4KWyAgICAxLjE3MzA3OV0gUlBDOiBSZWdpc3Rl
cmVkIHVkcCB0cmFuc3BvcnQgbW9kdWxlLgpbICAgIDEuMTczMDgwXSBSUEM6IFJlZ2lzdGVyZWQg
dGNwIHRyYW5zcG9ydCBtb2R1bGUuClsgICAgMS4xNzMwODFdIFJQQzogUmVnaXN0ZXJlZCB0Y3Ag
TkZTdjQuMSBiYWNrY2hhbm5lbCB0cmFuc3BvcnQgbW9kdWxlLgpbICAgIDEuMTczMTgwXSBQQ0k6
IENMUyAwIGJ5dGVzLCBkZWZhdWx0IDY0ClsgICAgMS4xNzQzNzddIGh3IHBlcmZldmVudHM6IGVu
YWJsZWQgd2l0aCBhcm12OF9wbXV2M18wIFBNVSBkcml2ZXIsIDcgY291bnRlcnMgYXZhaWxhYmxl
ClsgICAgMS4xNzQzOTFdIGt2bSBbMV06IElQQSBTaXplIExpbWl0OiA0OCBiaXRzClsgICAgMS4x
NzQ0MDVdIGt2bSBbMV06IEdJQ3YzOiBubyBHSUNWIHJlc291cmNlIGVudHJ5ClsgICAgMS4xNzQ0
MDddIGt2bSBbMV06IGRpc2FibGluZyBHSUN2MiBlbXVsYXRpb24KWyAgICAxLjE3NDQxM10ga3Zt
IFsxXTogR0lDIHN5c3RlbSByZWdpc3RlciBDUFUgaW50ZXJmYWNlIGVuYWJsZWQKWyAgICAxLjE3
NDY5NV0ga3ZtIFsxXTogdmdpYyBpbnRlcnJ1cHQgSVJROQpbICAgIDEuMTc1MDE0XSBrdm0gWzFd
OiBWSEUgbW9kZSBpbml0aWFsaXplZCBzdWNjZXNzZnVsbHkKWyAgICAxLjMyNTU3MF0gSW5pdGlh
bGlzZSBzeXN0ZW0gdHJ1c3RlZCBrZXlyaW5ncwpbICAgIDEuMzI1NjAyXSB3b3JraW5nc2V0OiB0
aW1lc3RhbXBfYml0cz00MiBtYXhfb3JkZXI9MjUgYnVja2V0X29yZGVyPTAKWyAgICAxLjMyNjQ5
OF0gc3F1YXNoZnM6IHZlcnNpb24gNC4wICgyMDA5LzAxLzMxKSBQaGlsbGlwIExvdWdoZXIKWyAg
ICAxLjMyNjU5MF0gTkZTOiBSZWdpc3RlcmluZyB0aGUgaWRfcmVzb2x2ZXIga2V5IHR5cGUKWyAg
ICAxLjMyNjU5M10gS2V5IHR5cGUgaWRfcmVzb2x2ZXIgcmVnaXN0ZXJlZApbICAgIDEuMzI2NTk0
XSBLZXkgdHlwZSBpZF9sZWdhY3kgcmVnaXN0ZXJlZApbICAgIDEuMzI2NjA3XSBuZnM0ZmlsZWxh
eW91dF9pbml0OiBORlN2NCBGaWxlIExheW91dCBEcml2ZXIgUmVnaXN0ZXJpbmcuLi4KWyAgICAx
LjMyNjYwOV0gbmZzNGZsZXhmaWxlbGF5b3V0X2luaXQ6IE5GU3Y0IEZsZXhmaWxlIExheW91dCBE
cml2ZXIgUmVnaXN0ZXJpbmcuLi4KWyAgICAxLjMyNjc1OF0gS2V5IHR5cGUgY2lmcy5pZG1hcCBy
ZWdpc3RlcmVkClsgICAgMS4zMjY3ODddIDlwOiBJbnN0YWxsaW5nIHY5ZnMgOXAyMDAwIGZpbGUg
c3lzdGVtIHN1cHBvcnQKWyAgICAxLjMzNjg2NF0geG9yOiBtZWFzdXJpbmcgc29mdHdhcmUgY2hl
Y2tzdW0gc3BlZWQKWyAgICAxLjMzNzU1MF0gICAgOHJlZ3MgICAgICAgICAgIDogMTQ0MDkgTUIv
c2VjClsgICAgMS4zMzgxMjBdICAgIDMycmVncyAgICAgICAgICA6IDE3MjkyIE1CL3NlYwpbICAg
IDEuMzM4NTUzXSAgICBhcm02NF9uZW9uICAgICAgOiAyMjc5MyBNQi9zZWMKWyAgICAxLjMzODU1
NF0geG9yOiB1c2luZyBmdW5jdGlvbjogYXJtNjRfbmVvbiAoMjI3OTMgTUIvc2VjKQpbICAgIDEu
MzM4NTU4XSBhc3luY190eDogYXBpIGluaXRpYWxpemVkIChhc3luYykKWyAgICAxLjMzODU1OV0g
S2V5IHR5cGUgYXN5bW1ldHJpYyByZWdpc3RlcmVkClsgICAgMS4zMzg1NjFdIEFzeW1tZXRyaWMg
a2V5IHBhcnNlciAneDUwOScgcmVnaXN0ZXJlZApbICAgIDEuMzM4NTcyXSBCbG9jayBsYXllciBT
Q1NJIGdlbmVyaWMgKGJzZykgZHJpdmVyIHZlcnNpb24gMC40IGxvYWRlZCAobWFqb3IgMjQ1KQpb
ICAgIDEuMzM4NjAwXSBpbyBzY2hlZHVsZXIgbXEtZGVhZGxpbmUgcmVnaXN0ZXJlZApbICAgIDEu
MzM4NjAxXSBpbyBzY2hlZHVsZXIga3liZXIgcmVnaXN0ZXJlZApbICAgIDEuMzM5MzYzXSBwbDA2
MV9ncGlvIEFSTUgwMDYxOjAwOiBQTDA2MSBHUElPIGNoaXAgcmVnaXN0ZXJlZApbICAgIDEuMzM5
NzQ4XSBpbnB1dDogUG93ZXIgQnV0dG9uIGFzIC9kZXZpY2VzL0xOWFNZU1RNOjAwL0xOWFNZQlVT
OjAwL1BOUDBDMEM6MDAvaW5wdXQvaW5wdXQwClsgICAgMS4zMzk3NjNdIEFDUEk6IGJ1dHRvbjog
UG93ZXIgQnV0dG9uIFtQV1JCXQpbICAgIDEuMzQwMjE4XSBFSU5KOiBFSU5KIHRhYmxlIG5vdCBm
b3VuZC4KWyAgICAxLjM0MDk3N10gU2VyaWFsOiA4MjUwLzE2NTUwIGRyaXZlciwgNCBwb3J0cywg
SVJRIHNoYXJpbmcgZW5hYmxlZApbICAgIDEuMzQxMjY5XSBTdXBlckggKEgpU0NJKEYpIGRyaXZl
ciBpbml0aWFsaXplZApbICAgIDEuMzQxMjk4XSBtc21fc2VyaWFsOiBkcml2ZXIgaW5pdGlhbGl6
ZWQKWyAgICAxLjM0MTQ0N10gYXJtLXNtbXUtdjMgYXJtLXNtbXUtdjMuMC5hdXRvOiBvcHRpb24g
bWFzayAweDAKWyAgICAxLjM0MTQ2MF0gYXJtLXNtbXUtdjMgYXJtLXNtbXUtdjMuMC5hdXRvOiBp
YXMgNDgtYml0LCBvYXMgNDgtYml0IChmZWF0dXJlcyAweDAwMDAwZDRmKQpbICAgIDEuMzQxNjA4
XSBhcm0tc21tdS12MyBhcm0tc21tdS12My4wLmF1dG86IGFsbG9jYXRlZCA2NTUzNiBlbnRyaWVz
IGZvciBjbWRxClsgICAgMS4zNDE2MTJdIGFybS1zbW11LXYzIGFybS1zbW11LXYzLjAuYXV0bzog
YWxsb2NhdGVkIDEyOCBlbnRyaWVzIGZvciBldnRxClsgICAgMS4zNDIwNDddIGFybS1zbW11LXYz
IGFybS1zbW11LXYzLjEuYXV0bzogb3B0aW9uIG1hc2sgMHgwClsgICAgMS4zNDIwNTddIGFybS1z
bW11LXYzIGFybS1zbW11LXYzLjEuYXV0bzogaWFzIDQ4LWJpdCwgb2FzIDQ4LWJpdCAoZmVhdHVy
ZXMgMHgwMDAwMGQ0ZikKWyAgICAxLjM0MjE1N10gYXJtLXNtbXUtdjMgYXJtLXNtbXUtdjMuMS5h
dXRvOiBhbGxvY2F0ZWQgNjU1MzYgZW50cmllcyBmb3IgY21kcQpbICAgIDEuMzQyMTYwXSBhcm0t
c21tdS12MyBhcm0tc21tdS12My4xLmF1dG86IGFsbG9jYXRlZCAxMjggZW50cmllcyBmb3IgZXZ0
cQpbICAgIDEuMzQyNTUzXSBhcm0tc21tdS12MyBhcm0tc21tdS12My4yLmF1dG86IG9wdGlvbiBt
YXNrIDB4MApbICAgIDEuMzQyNTYyXSBhcm0tc21tdS12MyBhcm0tc21tdS12My4yLmF1dG86IGlh
cyA0OC1iaXQsIG9hcyA0OC1iaXQgKGZlYXR1cmVzIDB4MDAwMDBkNGYpClsgICAgMS4zNDI2NDJd
IGFybS1zbW11LXYzIGFybS1zbW11LXYzLjIuYXV0bzogYWxsb2NhdGVkIDY1NTM2IGVudHJpZXMg
Zm9yIGNtZHEKWyAgICAxLjM0MjY0Nl0gYXJtLXNtbXUtdjMgYXJtLXNtbXUtdjMuMi5hdXRvOiBh
bGxvY2F0ZWQgMTI4IGVudHJpZXMgZm9yIGV2dHEKWyAgICAxLjM0MzA5N10gYXJtLXNtbXUtdjMg
YXJtLXNtbXUtdjMuMy5hdXRvOiBvcHRpb24gbWFzayAweDAKWyAgICAxLjM0MzEwNl0gYXJtLXNt
bXUtdjMgYXJtLXNtbXUtdjMuMy5hdXRvOiBpYXMgNDgtYml0LCBvYXMgNDgtYml0IChmZWF0dXJl
cyAweDAwMDAwZDRmKQpbICAgIDEuMzQzMTg2XSBhcm0tc21tdS12MyBhcm0tc21tdS12My4zLmF1
dG86IGFsbG9jYXRlZCA2NTUzNiBlbnRyaWVzIGZvciBjbWRxClsgICAgMS4zNDMxODldIGFybS1z
bW11LXYzIGFybS1zbW11LXYzLjMuYXV0bzogYWxsb2NhdGVkIDEyOCBlbnRyaWVzIGZvciBldnRx
ClsgICAgMS4zNDc0MDJdIGJyZDogbW9kdWxlIGxvYWRlZApbICAgIDEuMzUwOTkxXSBsb29wOiBt
b2R1bGUgbG9hZGVkClsgICAgMS4zNTEwOTBdIG1lZ2FzYXM6IDA3LjcxNy4wMi4wMC1yYzEKWyAg
ICAxLjM1MTM5N10gbnZtZSAwMDAwOjE2OjAwLjA6IEFkZGluZyB0byBpb21tdSBncm91cCAwClsg
ICAgMS4zNTE2MzhdIG52bWUgbnZtZTA6IHBjaSBmdW5jdGlvbiAwMDAwOjE2OjAwLjAKWyAgICAx
LjM1MjE3N10gdmNhbjogVmlydHVhbCBDQU4gaW50ZXJmYWNlIGRyaXZlcgpbICAgIDEuMzUyMTc5
XSB2eGNhbjogVmlydHVhbCBDQU4gVHVubmVsIGRyaXZlcgpbICAgIDEuMzUyMTgxXSBDQU4gZGV2
aWNlIGRyaXZlciBpbnRlcmZhY2UKWyAgICAxLjM1MjMwMF0gZW5hIDAwMDA6MDM6MDAuMDogQWRk
aW5nIHRvIGlvbW11IGdyb3VwIDEKWyAgICAxLjM1Mjg0OV0gZW5hIDAwMDA6MDM6MDAuMDogRU5B
IGRldmljZSB2ZXJzaW9uOiAwLjEwClsgICAgMS4zNTI4NTJdIGVuYSAwMDAwOjAzOjAwLjA6IEVO
QSBjb250cm9sbGVyIHZlcnNpb246IDAuMC4xIGltcGxlbWVudGF0aW9uIHZlcnNpb24gMQpbICAg
IDEuMzU1NzU2XSBlbmEgMDAwMDowMzowMC4wOiBFbGFzdGljIE5ldHdvcmsgQWRhcHRlciAoRU5B
KSBmb3VuZCBhdCBtZW0gODVlMDAwMDAsIG1hYyBhZGRyIDA2OjRhOjgwOmYxOjQ4OjhkClsgICAg
MS4zNTU4MjddIHRodW5kZXJfeGN2LCB2ZXIgMS4wClsgICAgMS4zNTU4MzZdIHRodW5kZXJfYmd4
LCB2ZXIgMS4wClsgICAgMS4zNTU4NDNdIG5pY3BmLCB2ZXIgMS4wClsgICAgMS4zNTU5NjBdIGhj
bGdlIGlzIGluaXRpYWxpemluZwpbICAgIDEuMzU1OTY0XSBobnMzOiBIaXNpbGljb24gRXRoZXJu
ZXQgTmV0d29yayBEcml2ZXIgZm9yIEhpcDA4IEZhbWlseSAtIHZlcnNpb24KWyAgICAxLjM1NTk2
Nl0gaG5zMzogQ29weXJpZ2h0IChjKSAyMDE3IEh1YXdlaSBDb3Jwb3JhdGlvbi4KWyAgICAxLjM1
NTk3OF0gZTEwMDA6IEludGVsKFIpIFBSTy8xMDAwIE5ldHdvcmsgRHJpdmVyClsgICAgMS4zNTU5
NzldIGUxMDAwOiBDb3B5cmlnaHQgKGMpIDE5OTktMjAwNiBJbnRlbCBDb3Jwb3JhdGlvbi4KWyAg
ICAxLjM1NTk5MV0gZTEwMDBlOiBJbnRlbChSKSBQUk8vMTAwMCBOZXR3b3JrIERyaXZlcgpbICAg
IDEuMzU1OTkyXSBlMTAwMGU6IENvcHlyaWdodChjKSAxOTk5IC0gMjAxNSBJbnRlbCBDb3Jwb3Jh
dGlvbi4KWyAgICAxLjM1NjAxMV0gaWdiOiBJbnRlbChSKSBHaWdhYml0IEV0aGVybmV0IE5ldHdv
cmsgRHJpdmVyClsgICAgMS4zNTYwMTJdIGlnYjogQ29weXJpZ2h0IChjKSAyMDA3LTIwMTQgSW50
ZWwgQ29ycG9yYXRpb24uClsgICAgMS4zNTYwMjNdIGlnYnZmOiBJbnRlbChSKSBHaWdhYml0IFZp
cnR1YWwgRnVuY3Rpb24gTmV0d29yayBEcml2ZXIKWyAgICAxLjM1NjAyNF0gaWdidmY6IENvcHly
aWdodCAoYykgMjAwOSAtIDIwMTIgSW50ZWwgQ29ycG9yYXRpb24uClsgICAgMS4zNTYwNTBdIHNr
eTI6IGRyaXZlciB2ZXJzaW9uIDEuMzAKWyAgICAxLjM1NjA2Ml0gbnZtZSBudm1lMDogMi8wLzAg
ZGVmYXVsdC9yZWFkL3BvbGwgcXVldWVzClsgICAgMS4zNTYxMzJdIFZGSU8gLSBVc2VyIExldmVs
IG1ldGEtZHJpdmVyIHZlcnNpb246IDAuMwpbICAgIDEuMzU2MzMyXSBlaGNpX2hjZDogVVNCIDIu
MCAnRW5oYW5jZWQnIEhvc3QgQ29udHJvbGxlciAoRUhDSSkgRHJpdmVyClsgICAgMS4zNTYzMzRd
IGVoY2ktcGNpOiBFSENJIFBDSSBwbGF0Zm9ybSBkcml2ZXIKWyAgICAxLjM1NjM0Ml0gZWhjaS1w
bGF0Zm9ybTogRUhDSSBnZW5lcmljIHBsYXRmb3JtIGRyaXZlcgpbICAgIDEuMzU2MzUwXSBlaGNp
LW9yaW9uOiBFSENJIG9yaW9uIGRyaXZlcgpbICAgIDEuMzU2MzU3XSBlaGNpLWV4eW5vczogRUhD
SSBFeHlub3MgZHJpdmVyClsgICAgMS4zNTYzNjRdIG9oY2lfaGNkOiBVU0IgMS4xICdPcGVuJyBI
b3N0IENvbnRyb2xsZXIgKE9IQ0kpIERyaXZlcgpbICAgIDEuMzU2MzY3XSBvaGNpLXBjaTogT0hD
SSBQQ0kgcGxhdGZvcm0gZHJpdmVyClsgICAgMS4zNTYzNzVdIG9oY2ktcGxhdGZvcm06IE9IQ0kg
Z2VuZXJpYyBwbGF0Zm9ybSBkcml2ZXIKWyAgICAxLjM1NjM4M10gb2hjaS1leHlub3M6IE9IQ0kg
RXh5bm9zIGRyaXZlcgpbICAgIDEuMzU2NDE3XSB1c2Jjb3JlOiByZWdpc3RlcmVkIG5ldyBpbnRl
cmZhY2UgZHJpdmVyIHVzYi1zdG9yYWdlClsgICAgMS4zNTY2ODFdIHJ0Yy1lZmkgcnRjLWVmaS4w
OiByZWdpc3RlcmVkIGFzIHJ0YzAKWyAgICAxLjM1NjcxM10gcnRjLWVmaSBydGMtZWZpLjA6IHNl
dHRpbmcgc3lzdGVtIGNsb2NrIHRvIDIwMjMtMDktMjZUMTk6MjI6MDEgVVRDICgxNjk1NzU2MTIx
KQpbICAgIDEuMzU2NzczXSBpMmNfZGV2OiBpMmMgL2RldiBlbnRyaWVzIGRyaXZlcgpbICAgIDEu
MzU3MTQ4XSBkZXZpY2UtbWFwcGVyOiBpb2N0bDogNC40NS4wLWlvY3RsICgyMDIxLTAzLTIyKSBp
bml0aWFsaXNlZDogZG0tZGV2ZWxAcmVkaGF0LmNvbQpbICAgIDEuMzU3MzUxXSBzZGhjaTogU2Vj
dXJlIERpZ2l0YWwgSG9zdCBDb250cm9sbGVyIEludGVyZmFjZSBkcml2ZXIKWyAgICAxLjM1NzM1
Ml0gc2RoY2k6IENvcHlyaWdodChjKSBQaWVycmUgT3NzbWFuClsgICAgMS4zNTczOTZdIFN5bm9w
c3lzIERlc2lnbndhcmUgTXVsdGltZWRpYSBDYXJkIEludGVyZmFjZSBEcml2ZXIKWyAgICAxLjM1
NzQ2Nl0gc2RoY2ktcGx0Zm06IFNESENJIHBsYXRmb3JtIGFuZCBPRiBkcml2ZXIgaGVscGVyClsg
ICAgMS4zNTc4NjRdIGxlZHRyaWctY3B1OiByZWdpc3RlcmVkIHRvIGluZGljYXRlIGFjdGl2aXR5
IG9uIENQVXMKWyAgICAxLjM1ODMzMl0gcHN0b3JlOiBSZWdpc3RlcmVkIGVmaSBhcyBwZXJzaXN0
ZW50IHN0b3JlIGJhY2tlbmQKWyAgICAxLjM1ODQ0Nl0gdXNiY29yZTogcmVnaXN0ZXJlZCBuZXcg
aW50ZXJmYWNlIGRyaXZlciB1c2JoaWQKWyAgICAxLjM1ODQ0OF0gdXNiaGlkOiBVU0IgSElEIGNv
cmUgZHJpdmVyClsgICAgMS4zNTg2NDldIEdQVDpQcmltYXJ5IGhlYWRlciB0aGlua3MgQWx0LiBo
ZWFkZXIgaXMgbm90IGF0IHRoZSBlbmQgb2YgdGhlIGRpc2suClsgICAgMS4zNTg2NTJdIEdQVDoy
MDE4MTQ0MSAhPSAxMzQyMTc3MjcKWyAgICAxLjM1ODY1M10gR1BUOkFsdGVybmF0ZSBHUFQgaGVh
ZGVyIG5vdCBhdCB0aGUgZW5kIG9mIHRoZSBkaXNrLgpbICAgIDEuMzU4NjU0XSBHUFQ6MjAxODE0
NDEgIT0gMTM0MjE3NzI3ClsgICAgMS4zNTg2NTVdIEdQVDogVXNlIEdOVSBQYXJ0ZWQgdG8gY29y
cmVjdCBHUFQgZXJyb3JzLgpbICAgIDEuMzU4NjYwXSAgbnZtZTBuMTogcDEgcDIgcDMKWyAgICAx
LjM1ODg3OF0gdTMyIGNsYXNzaWZpZXIKWyAgICAxLjM1ODg4MF0gICAgIGlucHV0IGRldmljZSBj
aGVjayBvbgpbICAgIDEuMzU4ODgxXSAgICAgQWN0aW9ucyBjb25maWd1cmVkClsgICAgMS4zNTg5
NzldIE5FVDogUmVnaXN0ZXJlZCBQRl9JTkVUNiBwcm90b2NvbCBmYW1pbHkKWyAgICAxLjM1OTE5
NV0gU2VnbWVudCBSb3V0aW5nIHdpdGggSVB2NgpbICAgIDEuMzU5MjAwXSBJbi1zaXR1IE9BTSAo
SU9BTSkgd2l0aCBJUHY2ClsgICAgMS4zNTkyMTFdIHNpdDogSVB2NiwgSVB2NCBhbmQgTVBMUyBv
dmVyIElQdjQgdHVubmVsaW5nIGRyaXZlcgpbICAgIDEuMzU5MjkyXSBORVQ6IFJlZ2lzdGVyZWQg
UEZfUEFDS0VUIHByb3RvY29sIGZhbWlseQpbICAgIDEuMzU5MzAzXSBCcmlkZ2UgZmlyZXdhbGxp
bmcgcmVnaXN0ZXJlZApbICAgIDEuMzU5MzA0XSBjYW46IGNvbnRyb2xsZXIgYXJlYSBuZXR3b3Jr
IGNvcmUKWyAgICAxLjM1OTMxM10gTkVUOiBSZWdpc3RlcmVkIFBGX0NBTiBwcm90b2NvbCBmYW1p
bHkKWyAgICAxLjM1OTMxNV0gY2FuOiByYXcgcHJvdG9jb2wKWyAgICAxLjM1OTMxNl0gY2FuOiBi
cm9hZGNhc3QgbWFuYWdlciBwcm90b2NvbApbICAgIDEuMzU5MzE5XSBjYW46IG5ldGxpbmsgZ2F0
ZXdheSAtIG1heF9ob3BzPTEKWyAgICAxLjM1OTMzMl0gY2FuOiBpc290cCBwcm90b2NvbApbICAg
IDEuMzU5MzU5XSA5cG5ldDogSW5zdGFsbGluZyA5UDIwMDAgc3VwcG9ydApbICAgIDEuMzU5MzY5
XSBLZXkgdHlwZSBkbnNfcmVzb2x2ZXIgcmVnaXN0ZXJlZApbICAgIDEuMzU5Mzk3XSBORVQ6IFJl
Z2lzdGVyZWQgUEZfVlNPQ0sgcHJvdG9jb2wgZmFtaWx5ClsgICAgMS4zNTk0OTZdIExvYWRpbmcg
Y29tcGlsZWQtaW4gWC41MDkgY2VydGlmaWNhdGVzClsgICAgMS4zNjE1MTFdIEtleSB0eXBlIC5m
c2NyeXB0IHJlZ2lzdGVyZWQKWyAgICAxLjM2MTUxM10gS2V5IHR5cGUgZnNjcnlwdC1wcm92aXNp
b25pbmcgcmVnaXN0ZXJlZApbICAgIDEuMzYxNjg4XSBCdHJmcyBsb2FkZWQsIGNyYzMyYz1jcmMz
MmMtZ2VuZXJpYywgem9uZWQ9bm8sIGZzdmVyaXR5PW5vClsgICAgMS4zNjE3NDhdIHBzdG9yZTog
VXNpbmcgY3Jhc2ggZHVtcCBjb21wcmVzc2lvbjogZGVmbGF0ZQpbICAgIDEuMzYxOTQzXSBLZXkg
dHlwZSBlbmNyeXB0ZWQgcmVnaXN0ZXJlZApbICAgIDEuMzYyMDk2XSBwY2llcG9ydCAwMDAwOjAw
OjAwLjA6IEFkZGluZyB0byBpb21tdSBncm91cCAyClsgICAgMS4zNjIzNDJdIEFDUEk6IFxfU0Jf
LkwwMEI6IEVuYWJsZWQgYXQgSVJRIDE4NQpbICAgIDEuMzYyMzgyXSBwY2llcG9ydCAwMDAwOjAw
OjAwLjA6IFBNRTogU2lnbmFsaW5nIHdpdGggSVJRIDY5ClsgICAgMS4zNjI0NDddIHBjaWVwb3J0
IDAwMDA6MDA6MDIuMDogQWRkaW5nIHRvIGlvbW11IGdyb3VwIDMKWyAgICAxLjM2MjY3M10gQUNQ
STogXF9TQl8uTDAyQjogRW5hYmxlZCBhdCBJUlEgMjE3ClsgICAgMS4zNjI2OTldIHBjaWVwb3J0
IDAwMDA6MDA6MDIuMDogUE1FOiBTaWduYWxpbmcgd2l0aCBJUlEgNzAKWyAgICAxLjM2MjgwOF0g
cGNpZXBvcnQgMDAwMDowMTowMC4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgNApbICAgIDEuMzYz
MTMyXSBwY2llcG9ydCAwMDAwOjAyOjAwLjA6IEFkZGluZyB0byBpb21tdSBncm91cCA1ClsgICAg
MS4zNjM0NDVdIHBjaWVwb3J0IDAwMDA6MDI6MDEuMDogQWRkaW5nIHRvIGlvbW11IGdyb3VwIDYK
WyAgICAxLjM2Mzc0OV0gcGNpZXBvcnQgMDAwMDowMjowMi4wOiBBZGRpbmcgdG8gaW9tbXUgZ3Jv
dXAgNwpbICAgIDEuMzY0MDU2XSBwY2llcG9ydCAwMDAwOjAyOjAzLjA6IEFkZGluZyB0byBpb21t
dSBncm91cCA4ClsgICAgMS4zNjQzNTldIHBjaWVwb3J0IDAwMDA6MDI6MDQuMDogQWRkaW5nIHRv
IGlvbW11IGdyb3VwIDkKWyAgICAxLjM2NDY4MF0gcGNpZXBvcnQgMDAwMDowMjowNS4wOiBBZGRp
bmcgdG8gaW9tbXUgZ3JvdXAgMTAKWyAgICAxLjM2NDk4OV0gcGNpZXBvcnQgMDAwMDowMjowNi4w
OiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMTEKWyAgICAxLjM2NTI5MV0gcGNpZXBvcnQgMDAwMDow
MjowNy4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMTIKWyAgICAxLjM2NTU5NF0gcGNpZXBvcnQg
MDAwMDowMjowOC4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMTMKWyAgICAxLjM2NTg5OF0gcGNp
ZXBvcnQgMDAwMDowMjowOS4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMTQKWyAgICAxLjM2NjIw
MF0gcGNpZXBvcnQgMDAwMDowMjowYS4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMTUKWyAgICAx
LjM2NjUwNl0gcGNpZXBvcnQgMDAwMDowMjowYi4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMTYK
WyAgICAxLjM2NjgxNV0gcGNpZXBvcnQgMDAwMDowMjowYy4wOiBBZGRpbmcgdG8gaW9tbXUgZ3Jv
dXAgMTcKWyAgICAxLjM2NzEyM10gcGNpZXBvcnQgMDAwMDowMjowZC4wOiBBZGRpbmcgdG8gaW9t
bXUgZ3JvdXAgMTgKWyAgICAxLjM2NzQyOV0gcGNpZXBvcnQgMDAwMDowMjowZS4wOiBBZGRpbmcg
dG8gaW9tbXUgZ3JvdXAgMTkKWyAgICAxLjM2NzczNl0gcGNpZXBvcnQgMDAwMDowMjowZi4wOiBB
ZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMjAKWyAgICAxLjM2ODEyNF0gcGNpZXBvcnQgMDAwMDoxMzow
MC4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMjEKWyAgICAxLjM2ODQ1MF0gcGNpZXBvcnQgMDAw
MDoxNDowMC4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMjIKWyAgICAxLjM2ODc2MF0gcGNpZXBv
cnQgMDAwMDoxNDowMS4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMjMKWyAgICAxLjM2OTA2Nl0g
cGNpZXBvcnQgMDAwMDoxNDowMi4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMjQKWyAgICAxLjM2
OTM3Ml0gcGNpZXBvcnQgMDAwMDoxNDowMy4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMjUKWyAg
ICAxLjM2OTY3N10gcGNpZXBvcnQgMDAwMDoxNDowNC4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAg
MjYKWyAgICAxLjM2OTk4M10gcGNpZXBvcnQgMDAwMDoxNDowNS4wOiBBZGRpbmcgdG8gaW9tbXUg
Z3JvdXAgMjcKWyAgICAxLjM3MDI5M10gcGNpZXBvcnQgMDAwMDoxNDowNi4wOiBBZGRpbmcgdG8g
aW9tbXUgZ3JvdXAgMjgKWyAgICAxLjM3MDU5OV0gcGNpZXBvcnQgMDAwMDoxNDowNy4wOiBBZGRp
bmcgdG8gaW9tbXUgZ3JvdXAgMjkKWyAgICAxLjM3MDkwOF0gcGNpZXBvcnQgMDAwMDoxNDowOC4w
OiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMzAKWyAgICAxLjM3MTIxNl0gcGNpZXBvcnQgMDAwMDox
NDowOS4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMzEKWyAgICAxLjM3MTUyNF0gcGNpZXBvcnQg
MDAwMDoxNDowYS4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMzIKWyAgICAxLjM3MTg1NV0gcGNp
ZXBvcnQgMDAwMDoxNDowYi4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMzMKWyAgICAxLjM3MjE2
NV0gcGNpZXBvcnQgMDAwMDoxNDowYy4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMzQKWyAgICAx
LjM3MjQ3NF0gcGNpZXBvcnQgMDAwMDoxNDowZC4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMzUK
WyAgICAxLjM3Mjc4Nl0gcGNpZXBvcnQgMDAwMDoxNDowZS4wOiBBZGRpbmcgdG8gaW9tbXUgZ3Jv
dXAgMzYKWyAgICAxLjM3MzA5NV0gcGNpZXBvcnQgMDAwMDoxNDowZi4wOiBBZGRpbmcgdG8gaW9t
bXUgZ3JvdXAgMzcKWyAgICAxLjM3MzQwNl0gcGNpZXBvcnQgMDAwMDoxNDoxMC4wOiBBZGRpbmcg
dG8gaW9tbXUgZ3JvdXAgMzgKWyAgICAxLjM3MzcxMF0gcGNpZXBvcnQgMDAwMDoxNDoxMS4wOiBB
ZGRpbmcgdG8gaW9tbXUgZ3JvdXAgMzkKWyAgICAxLjM3NDAyMF0gcGNpZXBvcnQgMDAwMDoxNDox
Mi4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgNDAKWyAgICAxLjM3NDMyNV0gcGNpZXBvcnQgMDAw
MDoxNDoxMy4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgNDEKWyAgICAxLjM3NDYzM10gcGNpZXBv
cnQgMDAwMDoxNDoxNC4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgNDIKWyAgICAxLjM3NDk0MV0g
cGNpZXBvcnQgMDAwMDoxNDoxNS4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgNDMKWyAgICAxLjM3
NTI0OF0gcGNpZXBvcnQgMDAwMDoxNDoxNi4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgNDQKWyAg
ICAxLjM3NTU1Ml0gcGNpZXBvcnQgMDAwMDoxNDoxNy4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAg
NDUKWyAgICAxLjM3NTg1OF0gcGNpZXBvcnQgMDAwMDoxNDoxOC4wOiBBZGRpbmcgdG8gaW9tbXUg
Z3JvdXAgNDYKWyAgICAxLjM3NjE2M10gcGNpZXBvcnQgMDAwMDoxNDoxOS4wOiBBZGRpbmcgdG8g
aW9tbXUgZ3JvdXAgNDcKWyAgICAxLjM3NjQ3MF0gcGNpZXBvcnQgMDAwMDoxNDoxYS4wOiBBZGRp
bmcgdG8gaW9tbXUgZ3JvdXAgNDgKWyAgICAxLjM3Njc4NF0gcGNpZXBvcnQgMDAwMDoxNDoxYi4w
OiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgNDkKWyAgICAxLjM3NzA5NV0gcGNpZXBvcnQgMDAwMDox
NDoxYy4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgNTAKWyAgICAxLjM3NzQwNF0gcGNpZXBvcnQg
MDAwMDoxNDoxZC4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgNTEKWyAgICAxLjM3NzcxMl0gcGNp
ZXBvcnQgMDAwMDoxNDoxZS4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgNTIKWyAgICAxLjM3ODAx
OV0gcGNpZXBvcnQgMDAwMDoxNDoxZi4wOiBBZGRpbmcgdG8gaW9tbXUgZ3JvdXAgNTMKWyAgICAx
LjM3ODQwNl0gc2VyaWFsIDAwMDA6MTU6MDAuMDogQWRkaW5nIHRvIGlvbW11IGdyb3VwIDU0Clsg
ICAgMS4zNzg2NjJdIEFDUEk6IFxfU0JfLkwwMkE6IEVuYWJsZWQgYXQgSVJRIDIxNgpbICAgIDEu
NDAxNDMzXSAwMDAwOjE1OjAwLjA6IHR0eVMwIGF0IE1NSU8gMHg4M2UwMDAwMCAoaXJxID0gMTE5
LCBiYXNlX2JhdWQgPSAxMTUyMDApIGlzIGEgMTY1NTBBClsgICA1MC43MzA5NTddIHByaW50azog
Y29uc29sZSBbdHR5UzBdIGVuYWJsZWQKWyAgIDUwLjczMTM0OV0gcHJpbnRrOiBjb25zb2xlIFtu
ZXRjb24wXSBlbmFibGVkClsgICA1MC43MzE2NjldIG5ldGNvbnNvbGU6IG5ldHdvcmsgbG9nZ2lu
ZyBzdGFydGVkClsgICA1MC43MzIxMjJdIEFMU0EgZGV2aWNlIGxpc3Q6ClsgICA1MC44MzA2MDJd
ICAgTm8gc291bmRjYXJkcyBmb3VuZC4KWyAgIDUwLjgzMTE0MF0gbWQ6IFdhaXRpbmcgZm9yIGFs
bCBkZXZpY2VzIHRvIGJlIGF2YWlsYWJsZSBiZWZvcmUgYXV0b2RldGVjdApbICAgNTAuODMxNjQ0
XSBtZDogSWYgeW91IGRvbid0IHVzZSByYWlkLCB1c2UgcmFpZD1ub2F1dG9kZXRlY3QKWyAgIDUw
LjgzMjA2OV0gbWQ6IEF1dG9kZXRlY3RpbmcgUkFJRCBhcnJheXMuClsgICA1MC45MzA2MTBdIG1k
OiBhdXRvcnVuIC4uLgpbICAgNTAuOTMwODIyXSBtZDogLi4uIGF1dG9ydW4gRE9ORS4KWyAgIDUx
LjAyNTY5OF0gRVhUNC1mcyAobnZtZTBuMXAyKTogbW91bnRlZCBmaWxlc3lzdGVtIHdpdGggb3Jk
ZXJlZCBkYXRhIG1vZGUuIE9wdHM6IChudWxsKS4gUXVvdGEgbW9kZTogZGlzYWJsZWQuClsgICA1
MS4wMjY0NTBdIFZGUzogTW91bnRlZCByb290IChleHQ0IGZpbGVzeXN0ZW0pIHJlYWRvbmx5IG9u
IGRldmljZSAyNTk6Mi4KWyAgIDUxLjEyNDExOV0gZGV2dG1wZnM6IG1vdW50ZWQKWyAgIDUxLjEy
NjQ3N10gRnJlZWluZyB1bnVzZWQga2VybmVsIG1lbW9yeTogMTAwNDhLClsgICA1MS4xMjY4NjBd
IFJ1biAvc2Jpbi9pbml0IGFzIGluaXQgcHJvY2VzcwpbICAgNTEuMTI3MTU5XSAgIHdpdGggYXJn
dW1lbnRzOgpbICAgNTEuMTI3MTYwXSAgICAgL3NiaW4vaW5pdApbICAgNTEuMTI3MTYwXSAgIHdp
dGggZW52aXJvbm1lbnQ6ClsgICA1MS4xMjcxNjFdICAgICBIT01FPS8KWyAgIDUxLjEyNzE2Ml0g
ICAgIFRFUk09bGludXgKWyAgIDUxLjEyNzE2M10gICAgIExBQkVMPUJvb3QKWyAgIDU0LjMxMjE5
MF0gc3lzdGVtZFsxXTogc3lzdGVtZCAyNTAuNSsgcnVubmluZyBpbiBzeXN0ZW0gbW9kZSAoLVBB
TSAtQVVESVQgLVNFTElOVVggLUFQUEFSTU9SICtJTUEgLVNNQUNLICtTRUNDT01QIC1HQ1JZUFQg
LUdOVVRMUyAtT1BFTlNTTCArQUNMICtCTEtJRCAtQ1VSTCAtRUxGVVRJTFMgLUZJRE8yIC1JRE4y
IC1JRE4gLUlQVEMgK0tNT0QgLUxJQkNSWVBUU0VUVVAgK0xJQkZESVNLIC1QQ1JFMiAtUFdRVUFM
SVRZIC1QMTFLSVQgLVFSRU5DT0RFIC1CWklQMiAtTFo0IC1YWiAtWkxJQiArWlNURCAtQlBGX0ZS
QU1FV09SSyArWEtCQ09NTU9OICtVVE1QICtTWVNWSU5JVCBkZWZhdWx0LWhpZXJhcmNoeT1oeWJy
aWQpClsgICA1NC4zMzIwNDVdIHN5c3RlbWRbMV06IERldGVjdGVkIGFyY2hpdGVjdHVyZSBhcm02
NC4KWyAgIDU0LjQ2NDU3OV0gc3lzdGVtZFsxXTogSG9zdG5hbWUgc2V0IHRvIDxnZW5lcmljLWFy
bTY0Pi4KWyAgIDU0LjY0ODgwNl0gc3lzdGVtZFsxXTogSW5pdGlhbGl6aW5nIG1hY2hpbmUgSUQg
ZnJvbSByYW5kb20gZ2VuZXJhdG9yLgpbICAgNTQuNjQ5NDAzXSBzeXN0ZW1kWzFdOiBJbnN0YWxs
ZWQgdHJhbnNpZW50IC9ldGMvbWFjaGluZS1pZCBmaWxlLgpbICAgNTQuNzYxMzczXSBzeXN0ZW1k
LXN5c3YtZ2VuZXJhdG9yWzU4OV06IFN5c1Ygc2VydmljZSAnL2V0Yy9pbml0LmQvY29ubnRyYWNr
LWZhaWxvdmVyJyBsYWNrcyBhIG5hdGl2ZSBzeXN0ZW1kIHVuaXQgZmlsZS4gQXV0b21hdGljYWxs
eSBnZW5lcmF0aW5nIGEgdW5pdCBmaWxlIGZvciBjb21wYXRpYmlsaXR5LiBQbGVhc2UgdXBkYXRl
IHBhY2thZ2UgdG8gaW5jbHVkZSBhIG5hdGl2ZSBzeXN0ZW1kIHVuaXQgZmlsZSwgaW4gb3JkZXIg
dG8gbWFrZSBpdCBtb3JlIHNhZmUgYW5kIHJvYnVzdC4KWyAgIDU0LjgzMDg2MV0gc3lzdGVtZC1z
eXN2LWdlbmVyYXRvcls1ODldOiBTeXNWIHNlcnZpY2UgJy9ldGMvaW5pdC5kL2Nvbm50cmFja2Qn
IGxhY2tzIGEgbmF0aXZlIHN5c3RlbWQgdW5pdCBmaWxlLiBBdXRvbWF0aWNhbGx5IGdlbmVyYXRp
bmcgYSB1bml0IGZpbGUgZm9yIGNvbXBhdGliaWxpdHkuIFBsZWFzZSB1cGRhdGUgcGFja2FnZSB0
byBpbmNsdWRlIGEgbmF0aXZlIHN5c3RlbWQgdW5pdCBmaWxlLCBpbiBvcmRlciB0byBtYWtlIGl0
IG1vcmUgc2FmZSBhbmQgcm9idXN0LgpbICAgNTYuNDk2NjA0XSBzeXN0ZW1kWzFdOiAvbGliL3N5
c3RlbWQvc3lzdGVtL3hlbi1xZW11LWRvbTAtZGlzay1iYWNrZW5kLnNlcnZpY2U6MTE6IFBJREZp
bGU9IHJlZmVyZW5jZXMgYSBwYXRoIGJlbG93IGxlZ2FjeSBkaXJlY3RvcnkgL3Zhci9ydW4vLCB1
cGRhdGluZyAvdmFyL3J1bi94ZW4vcWVtdS1kb20wLnBpZCBceGUyXHg4Nlx4OTIgL3J1bi94ZW4v
cWVtdS1kb20wLnBpZDsgcGxlYXNlIHVwZGF0ZSB0aGUgdW5pdCBmaWxlIGFjY29yZGluZ2x5Lgpb
ICAgNTYuNTc0MzU2XSBzeXN0ZW1kWzFdOiBRdWV1ZWQgc3RhcnQgam9iIGZvciBkZWZhdWx0IHRh
cmdldCBNdWx0aS1Vc2VyIFN5c3RlbS4KWyAgIDU2LjYwNzIxOV0gc3lzdGVtZFsxXTogQ3JlYXRl
ZCBzbGljZSBTbGljZSAvc3lzdGVtL2dldHR5LgpbICAgNTYuNjA4MzE1XSBzeXN0ZW1kWzFdOiBD
cmVhdGVkIHNsaWNlIFNsaWNlIC9zeXN0ZW0vbW9kcHJvYmUuClsgICA1Ni42MzE3NTVdIHN5c3Rl
bWRbMV06IENyZWF0ZWQgc2xpY2UgU2xpY2UgL3N5c3RlbS9zZXJpYWwtZ2V0dHkuClsgICA1Ni43
MzEyMTddIHN5c3RlbWRbMV06IENyZWF0ZWQgc2xpY2UgVXNlciBhbmQgU2Vzc2lvbiBTbGljZS4K
WyAgIDU2LjczMTg3Nl0gc3lzdGVtZFsxXTogU3RhcnRlZCBEaXNwYXRjaCBQYXNzd29yZCBSZXF1
ZXN0cyB0byBDb25zb2xlIERpcmVjdG9yeSBXYXRjaC4KWyAgIDU2LjgzMDk2OV0gc3lzdGVtZFsx
XTogU3RhcnRlZCBGb3J3YXJkIFBhc3N3b3JkIFJlcXVlc3RzIHRvIFdhbGwgRGlyZWN0b3J5IFdh
dGNoLgpbICAgNTYuOTMwODEyXSBzeXN0ZW1kWzFdOiBSZWFjaGVkIHRhcmdldCBQYXRoIFVuaXRz
LgpbICAgNTYuOTMxMzAwXSBzeXN0ZW1kWzFdOiBSZWFjaGVkIHRhcmdldCBSZW1vdGUgRmlsZSBT
eXN0ZW1zLgpbICAgNTcuMDMwNzgwXSBzeXN0ZW1kWzFdOiBSZWFjaGVkIHRhcmdldCBTbGljZSBV
bml0cy4KWyAgIDU3LjAzNDY2MF0gc3lzdGVtZFsxXTogTGlzdGVuaW5nIG9uIFJQQ2JpbmQgU2Vy
dmVyIEFjdGl2YXRpb24gU29ja2V0LgpbICAgNTcuMTMwOTIwXSBzeXN0ZW1kWzFdOiBSZWFjaGVk
IHRhcmdldCBSUEMgUG9ydCBNYXBwZXIuClsgICA1Ny4xMzE1NTZdIHN5c3RlbWRbMV06IExpc3Rl
bmluZyBvbiBTeXNsb2cgU29ja2V0LgpbICAgNTcuMjMxMDAyXSBzeXN0ZW1kWzFdOiBMaXN0ZW5p
bmcgb24gaW5pdGN0bCBDb21wYXRpYmlsaXR5IE5hbWVkIFBpcGUuClsgICA1Ny4zMzEzMjldIHN5
c3RlbWRbMV06IEpvdXJuYWwgQXVkaXQgU29ja2V0IHdhcyBza2lwcGVkIGJlY2F1c2Ugb2YgYSBm
YWlsZWQgY29uZGl0aW9uIGNoZWNrIChDb25kaXRpb25TZWN1cml0eT1hdWRpdCkuClsgICA1Ny4z
MzIxOTNdIHN5c3RlbWRbMV06IExpc3RlbmluZyBvbiBKb3VybmFsIFNvY2tldCAoL2Rldi9sb2cp
LgpbICAgNTcuNDMwODIxXSBzeXN0ZW1kWzFdOiBMaXN0ZW5pbmcgb24gSm91cm5hbCBTb2NrZXQu
ClsgICA1Ny40MzE0MjddIHN5c3RlbWRbMV06IExpc3RlbmluZyBvbiBOZXR3b3JrIFNlcnZpY2Ug
TmV0bGluayBTb2NrZXQuClsgICA1Ny41MzA4NzZdIHN5c3RlbWRbMV06IExpc3RlbmluZyBvbiB1
ZGV2IENvbnRyb2wgU29ja2V0LgpbICAgNTcuNTMxNDc4XSBzeXN0ZW1kWzFdOiBMaXN0ZW5pbmcg
b24gdWRldiBLZXJuZWwgU29ja2V0LgpbICAgNTcuNjMwODY0XSBzeXN0ZW1kWzFdOiBMaXN0ZW5p
bmcgb24gVXNlciBEYXRhYmFzZSBNYW5hZ2VyIFNvY2tldC4KWyAgIDU3LjYzMjMwM10gc3lzdGVt
ZFsxXTogTW91bnRpbmcgSHVnZSBQYWdlcyBGaWxlIFN5c3RlbS4uLgpbICAgNTcuNzMxNzk0XSBz
eXN0ZW1kWzFdOiBNb3VudGluZyBQT1NJWCBNZXNzYWdlIFF1ZXVlIEZpbGUgU3lzdGVtLi4uClsg
ICA1Ny43MzI0NDBdIHN5c3RlbWRbMV06IE1vdW50IC9wcm9jL3hlbiBmaWxlcyB3YXMgc2tpcHBl
ZCBiZWNhdXNlIG9mIGEgZmFpbGVkIGNvbmRpdGlvbiBjaGVjayAoQ29uZGl0aW9uUGF0aEV4aXN0
cz0vcHJvYy94ZW4pLgpbICAgNTcuODMyMTQzXSBzeXN0ZW1kWzFdOiBNb3VudGluZyBLZXJuZWwg
RGVidWcgRmlsZSBTeXN0ZW0uLi4KWyAgIDU3LjgzMzQ5Nl0gc3lzdGVtZFsxXTogTW91bnRpbmcg
S2VybmVsIFRyYWNlIEZpbGUgU3lzdGVtLi4uClsgICA1Ny45MzIyNDJdIHN5c3RlbWRbMV06IFN0
YXJ0aW5nIENyZWF0ZSBMaXN0IG9mIFN0YXRpYyBEZXZpY2UgTm9kZXMuLi4KWyAgIDU4LjAzMTQ3
NF0gc3lzdGVtZFsxXTogU3RhcnRpbmcgTG9hZCBLZXJuZWwgTW9kdWxlIGNvbmZpZ2ZzLi4uClsg
ICA1OC4wMzI3NDBdIHN5c3RlbWRbMV06IFN0YXJ0aW5nIExvYWQgS2VybmVsIE1vZHVsZSBkcm0u
Li4KWyAgIDU4LjEzMTQwMl0gc3lzdGVtZFsxXTogU3RhcnRpbmcgTG9hZCBLZXJuZWwgTW9kdWxl
IGZ1c2UuLi4KWyAgIDU4LjIzODEwNV0gc3lzdGVtZFsxXTogU3RhcnRpbmcgUlBDIEJpbmQuLi4K
WyAgIDU4LjIzOTQ4Nl0gc3lzdGVtZFsxXTogU3RhcnRpbmcgRmlsZSBTeXN0ZW0gQ2hlY2sgb24g
Um9vdCBEZXZpY2UuLi4KWyAgIDU4LjI0MTQ2N10gc3lzdGVtZFsxXTogU3RhcnRpbmcgSm91cm5h
bCBTZXJ2aWNlLi4uClsgICA1OC4zMzI2OTZdIHN5c3RlbWRbMV06IFN0YXJ0aW5nIExvYWQgS2Vy
bmVsIE1vZHVsZXMuLi4KWyAgIDU4LjMzMzYxOF0gZnVzZTogaW5pdCAoQVBJIHZlcnNpb24gNy4z
NCkKWyAgIDU4LjMzNDQxMV0gc3lzdGVtZFsxXTogU3RhcnRpbmcgR2VuZXJhdGUgbmV0d29yayB1
bml0cyBmcm9tIEtlcm5lbCBjb21tYW5kIGxpbmUuLi4KWyAgIDU4LjQzMjQ2MV0gc3lzdGVtZFsx
XTogU3RhcnRpbmcgQ29sZHBsdWcgQWxsIHVkZXYgRGV2aWNlcy4uLgpbICAgNTguNTMyMjMxXSBz
eXN0ZW1kWzFdOiBTdGFydGVkIEpvdXJuYWwgU2VydmljZS4KWyAgIDU5LjEwMTY0OF0gRVhUNC1m
cyAobnZtZTBuMXAyKTogcmUtbW91bnRlZC4gT3B0czogKG51bGwpLiBRdW90YSBtb2RlOiBkaXNh
YmxlZC4KWyAgIDU5LjIwNjIwNl0gb3BlbnZzd2l0Y2g6IE9wZW4gdlN3aXRjaCBzd2l0Y2hpbmcg
ZGF0YXBhdGgKWyAgIDU5LjQxMDQwOF0gc3lzdGVtZC1qb3VybmFsZFs2MjNdOiBSZWNlaXZlZCBj
bGllbnQgcmVxdWVzdCB0byBmbHVzaCBydW50aW1lIGpvdXJuYWwuClsgICA2MC41MTU5MjhdIGVu
YSAwMDAwOjAzOjAwLjAgZW5wM3MwOiByZW5hbWVkIGZyb20gZXRoMApbICAgNjAuNTQzMTc4XSBB
ZGRpbmcgNDUwNTJrIHN3YXAgb24gL2Rldi9udm1lMG4xcDMuICBQcmlvcml0eTotMiBleHRlbnRz
OjEgYWNyb3NzOjQ1MDUyayBTUwpbICAgNzIuNzU2MjcyXSBjZmc4MDIxMTogTG9hZGluZyBjb21w
aWxlZC1pbiBYLjUwOSBjZXJ0aWZpY2F0ZXMgZm9yIHJlZ3VsYXRvcnkgZGF0YWJhc2UKWyAgIDcy
Ljc1NzU1OF0gY2ZnODAyMTE6IExvYWRlZCBYLjUwOSBjZXJ0ICdzZm9yc2hlZTogMDBiMjhkZGY0
N2FlZjljZWE3JwpbICAgNzIuNzY3Mzc2XSB4ZW5icjA6IHBvcnQgMShlbnAzczApIGVudGVyZWQg
YmxvY2tpbmcgc3RhdGUKWyAgIDcyLjc2NzM4Ml0geGVuYnIwOiBwb3J0IDEoZW5wM3MwKSBlbnRl
cmVkIGRpc2FibGVkIHN0YXRlClsgICA3Mi43Njc0MzNdIGRldmljZSBlbnAzczAgZW50ZXJlZCBw
cm9taXNjdW91cyBtb2RlClsgICA3Mi43ODc4NTRdIHhlbmJyMDogcG9ydCAxKGVucDNzMCkgZW50
ZXJlZCBibG9ja2luZyBzdGF0ZQpbICAgNzIuNzg3ODU4XSB4ZW5icjA6IHBvcnQgMShlbnAzczAp
IGVudGVyZWQgZm9yd2FyZGluZyBzdGF0ZQpbICAgNzIuNzg3OTIxXSBJUHY2OiBBRERSQ09ORihO
RVRERVZfQ0hBTkdFKTogeGVuYnIwOiBsaW5rIGJlY29tZXMgcmVhZHkKWyAgMTEzLjE0NjUyOV0g
SVBWUzogUmVnaXN0ZXJlZCBwcm90b2NvbHMgKFRDUCwgVURQLCBTQ1RQLCBBSCwgRVNQKQpbICAx
MTMuMTQ2NTQ1XSBJUFZTOiBDb25uZWN0aW9uIGhhc2ggdGFibGUgY29uZmlndXJlZCAoc2l6ZT00
MDk2LCBtZW1vcnk9MzJLYnl0ZXMpClsgIDExMy4xNDY1ODZdIElQVlM6IGlwdnMgbG9hZGVkLgpb
ICAxMTMuMTQ3OTU5XSBJUFZTOiBbcnJdIHNjaGVkdWxlciByZWdpc3RlcmVkLgpbICAxMTMuMTQ5
MzE2XSBJUFZTOiBbd3JyXSBzY2hlZHVsZXIgcmVnaXN0ZXJlZC4KWyAgMTEzLjE1MDYwOV0gSVBW
UzogW3NoXSBzY2hlZHVsZXIgcmVnaXN0ZXJlZC4KWyAgMTE4Ljg0NDIzNl0gSW5pdGlhbGl6aW5n
IFhGUk0gbmV0bGluayBzb2NrZXQKWyAgMTMwLjQzMTIwN10gY25pMDogcG9ydCAxKHZldGgwOWNm
NjBlNCkgZW50ZXJlZCBibG9ja2luZyBzdGF0ZQpbICAxMzAuNDMxMjE3XSBjbmkwOiBwb3J0IDEo
dmV0aDA5Y2Y2MGU0KSBlbnRlcmVkIGRpc2FibGVkIHN0YXRlClsgIDEzMC40MzEyODFdIGRldmlj
ZSB2ZXRoMDljZjYwZTQgZW50ZXJlZCBwcm9taXNjdW91cyBtb2RlClsgIDEzMC40MzEzMjhdIGNu
aTA6IHBvcnQgMSh2ZXRoMDljZjYwZTQpIGVudGVyZWQgYmxvY2tpbmcgc3RhdGUKWyAgMTMwLjQz
MTMzMV0gY25pMDogcG9ydCAxKHZldGgwOWNmNjBlNCkgZW50ZXJlZCBmb3J3YXJkaW5nIHN0YXRl
ClsgIDEzMC40MzE0NDBdIGNuaTA6IHBvcnQgMih2ZXRoMjVlMzhmNzgpIGVudGVyZWQgYmxvY2tp
bmcgc3RhdGUKWyAgMTMwLjQzMTQ0OF0gY25pMDogcG9ydCAyKHZldGgyNWUzOGY3OCkgZW50ZXJl
ZCBkaXNhYmxlZCBzdGF0ZQpbICAxMzAuNDMxNDk3XSBkZXZpY2UgdmV0aDI1ZTM4Zjc4IGVudGVy
ZWQgcHJvbWlzY3VvdXMgbW9kZQpbICAxMzAuNDMxNTIwXSBjbmkwOiBwb3J0IDIodmV0aDI1ZTM4
Zjc4KSBlbnRlcmVkIGJsb2NraW5nIHN0YXRlClsgIDEzMC40MzE1MjFdIGNuaTA6IHBvcnQgMih2
ZXRoMjVlMzhmNzgpIGVudGVyZWQgZm9yd2FyZGluZyBzdGF0ZQpbICAxMzAuNDMxNTM5XSBjbmkw
OiBwb3J0IDModmV0aGNjOGE2MjQzKSBlbnRlcmVkIGJsb2NraW5nIHN0YXRlClsgIDEzMC40MzE1
NDJdIGNuaTA6IHBvcnQgMyh2ZXRoY2M4YTYyNDMpIGVudGVyZWQgZGlzYWJsZWQgc3RhdGUKWyAg
MTMwLjQzMTU4OV0gZGV2aWNlIHZldGhjYzhhNjI0MyBlbnRlcmVkIHByb21pc2N1b3VzIG1vZGUK
WyAgMTMwLjQzMTYyMF0gY25pMDogcG9ydCAzKHZldGhjYzhhNjI0MykgZW50ZXJlZCBibG9ja2lu
ZyBzdGF0ZQpbICAxMzAuNDMxNjIyXSBjbmkwOiBwb3J0IDModmV0aGNjOGE2MjQzKSBlbnRlcmVk
IGZvcndhcmRpbmcgc3RhdGUKWyAgMTMwLjQzMTc1NV0gY25pMDogcG9ydCAxKHZldGgwOWNmNjBl
NCkgZW50ZXJlZCBkaXNhYmxlZCBzdGF0ZQpbICAxMzAuNDMxODE4XSBjbmkwOiBwb3J0IDModmV0
aGNjOGE2MjQzKSBlbnRlcmVkIGRpc2FibGVkIHN0YXRlClsgIDEzMC40MzE5NThdIGNuaTA6IHBv
cnQgMih2ZXRoMjVlMzhmNzgpIGVudGVyZWQgZGlzYWJsZWQgc3RhdGUKWyAgMTMwLjQzMjA1N10g
Y25pMDogcG9ydCA0KHZldGg2ZDQ1NWUzOCkgZW50ZXJlZCBibG9ja2luZyBzdGF0ZQpbICAxMzAu
NDMyMDY3XSBjbmkwOiBwb3J0IDQodmV0aDZkNDU1ZTM4KSBlbnRlcmVkIGRpc2FibGVkIHN0YXRl
ClsgIDEzMC40MzIxMjFdIGRldmljZSB2ZXRoNmQ0NTVlMzggZW50ZXJlZCBwcm9taXNjdW91cyBt
b2RlClsgIDEzMC40MzIxNTRdIGNuaTA6IHBvcnQgNSh2ZXRoZDdiOGNkNmYpIGVudGVyZWQgYmxv
Y2tpbmcgc3RhdGUKWyAgMTMwLjQzMjE1N10gY25pMDogcG9ydCA1KHZldGhkN2I4Y2Q2ZikgZW50
ZXJlZCBkaXNhYmxlZCBzdGF0ZQpbICAxMzAuNDMyMjA5XSBkZXZpY2UgdmV0aGQ3YjhjZDZmIGVu
dGVyZWQgcHJvbWlzY3VvdXMgbW9kZQpbICAxMzAuODI1NzIwXSBJUHY2OiBBRERSQ09ORihORVRE
RVZfQ0hBTkdFKTogdmV0aDI1ZTM4Zjc4OiBsaW5rIGJlY29tZXMgcmVhZHkKWyAgMTMwLjgyNTc1
M10gY25pMDogcG9ydCAyKHZldGgyNWUzOGY3OCkgZW50ZXJlZCBibG9ja2luZyBzdGF0ZQpbICAx
MzAuODI1NzU3XSBjbmkwOiBwb3J0IDIodmV0aDI1ZTM4Zjc4KSBlbnRlcmVkIGZvcndhcmRpbmcg
c3RhdGUKWyAgMTMwLjgyNTk5OV0gSVB2NjogQUREUkNPTkYoTkVUREVWX0NIQU5HRSk6IHZldGhk
N2I4Y2Q2ZjogbGluayBiZWNvbWVzIHJlYWR5ClsgIDEzMC44MjYwMjldIGNuaTA6IHBvcnQgNSh2
ZXRoZDdiOGNkNmYpIGVudGVyZWQgYmxvY2tpbmcgc3RhdGUKWyAgMTMwLjgyNjAzMV0gY25pMDog
cG9ydCA1KHZldGhkN2I4Y2Q2ZikgZW50ZXJlZCBmb3J3YXJkaW5nIHN0YXRlClsgIDEzMC44MjYz
MjBdIElQdjY6IEFERFJDT05GKE5FVERFVl9DSEFOR0UpOiB2ZXRoNmQ0NTVlMzg6IGxpbmsgYmVj
b21lcyByZWFkeQpbICAxMzAuODI2MzUwXSBjbmkwOiBwb3J0IDQodmV0aDZkNDU1ZTM4KSBlbnRl
cmVkIGJsb2NraW5nIHN0YXRlClsgIDEzMC44MjYzNTNdIGNuaTA6IHBvcnQgNCh2ZXRoNmQ0NTVl
MzgpIGVudGVyZWQgZm9yd2FyZGluZyBzdGF0ZQpbICAxMzAuODI2NjU5XSBJUHY2OiBBRERSQ09O
RihORVRERVZfQ0hBTkdFKTogdmV0aGNjOGE2MjQzOiBsaW5rIGJlY29tZXMgcmVhZHkKWyAgMTMw
LjgyNjY5MV0gY25pMDogcG9ydCAzKHZldGhjYzhhNjI0MykgZW50ZXJlZCBibG9ja2luZyBzdGF0
ZQpbICAxMzAuODI2Njk1XSBjbmkwOiBwb3J0IDModmV0aGNjOGE2MjQzKSBlbnRlcmVkIGZvcndh
cmRpbmcgc3RhdGUKWyAgMTMwLjgyNzA2Nl0gSVB2NjogQUREUkNPTkYoTkVUREVWX0NIQU5HRSk6
IHZldGgwOWNmNjBlNDogbGluayBiZWNvbWVzIHJlYWR5ClsgIDEzMC44MjcwOTRdIGNuaTA6IHBv
cnQgMSh2ZXRoMDljZjYwZTQpIGVudGVyZWQgYmxvY2tpbmcgc3RhdGUKWyAgMTMwLjgyNzA5OF0g
Y25pMDogcG9ydCAxKHZldGgwOWNmNjBlNCkgZW50ZXJlZCBmb3J3YXJkaW5nIHN0YXRlClsgIDEz
OS44MDQ0NjRdIElQdjQ6IG1hcnRpYW4gc291cmNlIDEwLjQyLjAuMSBmcm9tIDEwLjQyLjAuNCwg
b24gZGV2IGV0aDAKWyAgMTM5LjgwNDQ3MF0gbGwgaGVhZGVyOiAwMDAwMDAwMDogZmYgZmYgZmYg
ZmYgZmYgZmYgNGUgYzAgZDAgZWEgZDcgZTEgMDggMDYKWyAgMTQwLjkyMTgyOV0gSVB2NDogbWFy
dGlhbiBzb3VyY2UgMTAuNDIuMC4xIGZyb20gMTAuNDIuMC41LCBvbiBkZXYgZXRoMApbICAxNDAu
OTIxODM2XSBsbCBoZWFkZXI6IDAwMDAwMDAwOiBmZiBmZiBmZiBmZiBmZiBmZiA0YSA3NSBiZCA1
ZSAzNyA0YyAwOCAwNgpbICAxNDUuMjU5MDQ2XSBJUHY0OiBtYXJ0aWFuIHNvdXJjZSAxMC40Mi4w
LjEgZnJvbSAxMC40Mi4wLjMsIG9uIGRldiBldGgwClsgIDE0NS4yNTkwNTRdIGxsIGhlYWRlcjog
MDAwMDAwMDA6IGZmIGZmIGZmIGZmIGZmIGZmIGNhIDU2IGUwIDVkIGNkIDZkIDA4IDA2ClsgIDE0
NS4yNTkwNjBdIElQdjQ6IG1hcnRpYW4gc291cmNlIDEwLjQyLjAuMSBmcm9tIDEwLjQyLjAuNiwg
b24gZGV2IGV0aDAKWyAgMTQ1LjI1OTA2NF0gbGwgaGVhZGVyOiAwMDAwMDAwMDogZmYgZmYgZmYg
ZmYgZmYgZmYgMjIgNmQgYzAgMzUgYmYgYzEgMDggMDYKWyAgMTUyLjQyNzA4NF0gY25pMDogcG9y
dCAxKHZldGgwOWNmNjBlNCkgZW50ZXJlZCBkaXNhYmxlZCBzdGF0ZQpbICAxNTIuNDI3NjY4XSBk
ZXZpY2UgdmV0aDA5Y2Y2MGU0IGxlZnQgcHJvbWlzY3VvdXMgbW9kZQpbICAxNTIuNDI3NjcxXSBj
bmkwOiBwb3J0IDEodmV0aDA5Y2Y2MGU0KSBlbnRlcmVkIGRpc2FibGVkIHN0YXRlClsgIDE1NS4y
MzkwODJdIGNuaTA6IHBvcnQgMSh2ZXRoYTE3MzFkZjgpIGVudGVyZWQgYmxvY2tpbmcgc3RhdGUK
WyAgMTU1LjIzOTA5MF0gY25pMDogcG9ydCAxKHZldGhhMTczMWRmOCkgZW50ZXJlZCBkaXNhYmxl
ZCBzdGF0ZQpbICAxNTUuMjM5MTU2XSBkZXZpY2UgdmV0aGExNzMxZGY4IGVudGVyZWQgcHJvbWlz
Y3VvdXMgbW9kZQpbICAxNTUuMjQyMTIxXSBJUHY2OiBBRERSQ09ORihORVRERVZfQ0hBTkdFKTog
ZXRoMDogbGluayBiZWNvbWVzIHJlYWR5ClsgIDE1NS4yNDIxNTldIElQdjY6IEFERFJDT05GKE5F
VERFVl9DSEFOR0UpOiB2ZXRoYTE3MzFkZjg6IGxpbmsgYmVjb21lcyByZWFkeQpbICAxNTUuMjQy
MTg0XSBjbmkwOiBwb3J0IDEodmV0aGExNzMxZGY4KSBlbnRlcmVkIGJsb2NraW5nIHN0YXRlClsg
IDE1NS4yNDIxODddIGNuaTA6IHBvcnQgMSh2ZXRoYTE3MzFkZjgpIGVudGVyZWQgZm9yd2FyZGlu
ZyBzdGF0ZQpbICAxNTUuMzU0NzAyXSBjbmkwOiBwb3J0IDIodmV0aDI1ZTM4Zjc4KSBlbnRlcmVk
IGRpc2FibGVkIHN0YXRlClsgIDE1NS4zNTUzMDRdIGRldmljZSB2ZXRoMjVlMzhmNzggbGVmdCBw
cm9taXNjdW91cyBtb2RlClsgIDE1NS4zNTUzMDddIGNuaTA6IHBvcnQgMih2ZXRoMjVlMzhmNzgp
IGVudGVyZWQgZGlzYWJsZWQgc3RhdGUKWyAgMTU1LjU1OTgwMF0gY25pMDogcG9ydCAyKHZldGg0
ODQ4YjRhZSkgZW50ZXJlZCBibG9ja2luZyBzdGF0ZQpbICAxNTUuNTU5ODA4XSBjbmkwOiBwb3J0
IDIodmV0aDQ4NDhiNGFlKSBlbnRlcmVkIGRpc2FibGVkIHN0YXRlClsgIDE1NS41NTk4NjldIGRl
dmljZSB2ZXRoNDg0OGI0YWUgZW50ZXJlZCBwcm9taXNjdW91cyBtb2RlClsgIDE1NS41NTk4OTdd
IGNuaTA6IHBvcnQgMih2ZXRoNDg0OGI0YWUpIGVudGVyZWQgYmxvY2tpbmcgc3RhdGUKWyAgMTU1
LjU1OTg5OV0gY25pMDogcG9ydCAyKHZldGg0ODQ4YjRhZSkgZW50ZXJlZCBmb3J3YXJkaW5nIHN0
YXRlClsgIDE1NS41NjI1OTJdIElQdjY6IEFERFJDT05GKE5FVERFVl9DSEFOR0UpOiB2ZXRoNDg0
OGI0YWU6IGxpbmsgYmVjb21lcyByZWFkeQpbICAxNjEuODg0MDIwXSBJUHY0OiBtYXJ0aWFuIHNv
dXJjZSAxMC40Mi4wLjEgZnJvbSAxMC40Mi4wLjgsIG9uIGRldiBldGgwClsgIDE2MS44ODQwMjdd
IGxsIGhlYWRlcjogMDAwMDAwMDA6IGZmIGZmIGZmIGZmIGZmIGZmIGMyIGQzIDFmIDU3IGU4IDU3
IDA4IDA2Cg==

--_009_DM6PR07MB43168B0D4DEA80BF2474B9D89AC3ADM6PR07MB4316namp_
Content-Type: application/octet-stream; name="ava.linux.config"
Content-Description: ava.linux.config
Content-Disposition: attachment; filename="ava.linux.config"; size=124656;
	creation-date="Tue, 26 Sep 2023 19:28:07 GMT";
	modification-date="Tue, 26 Sep 2023 19:41:45 GMT"
Content-Transfer-Encoding: base64

IwojIEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZpbGU7IERPIE5PVCBFRElULgojIExpbnV4L2Fy
bTY0IDUuMTUuMjMgS2VybmVsIENvbmZpZ3VyYXRpb24KIwpDT05GSUdfQ0NfVkVSU0lPTl9URVhU
PSJhYXJjaDY0LXBva3ktbGludXgtZ2NjIChHQ0MpIDExLjQuMCIKQ09ORklHX0NDX0lTX0dDQz15
CkNPTkZJR19HQ0NfVkVSU0lPTj0xMTA0MDAKQ09ORklHX0NMQU5HX1ZFUlNJT049MApDT05GSUdf
QVNfSVNfR05VPXkKQ09ORklHX0FTX1ZFUlNJT049MjAyNDQ1MDgKQ09ORklHX0xEX0lTX0JGRD15
CkNPTkZJR19MRF9WRVJTSU9OPTIwMjQ0NTA4CkNPTkZJR19MTERfVkVSU0lPTj0wCkNPTkZJR19D
Q19DQU5fTElOSz15CkNPTkZJR19DQ19DQU5fTElOS19TVEFUSUM9eQpDT05GSUdfQ0NfSEFTX0FT
TV9HT1RPPXkKQ09ORklHX0NDX0hBU19BU01fR09UT19PVVRQVVQ9eQpDT05GSUdfQ0NfSEFTX0FT
TV9JTkxJTkU9eQpDT05GSUdfQ0NfSEFTX05PX1BST0ZJTEVfRk5fQVRUUj15CkNPTkZJR19JUlFf
V09SSz15CkNPTkZJR19CVUlMRFRJTUVfVEFCTEVfU09SVD15CkNPTkZJR19USFJFQURfSU5GT19J
Tl9UQVNLPXkKCiMKIyBHZW5lcmFsIHNldHVwCiMKQ09ORklHX0lOSVRfRU5WX0FSR19MSU1JVD0z
MgojIENPTkZJR19DT01QSUxFX1RFU1QgaXMgbm90IHNldAojIENPTkZJR19XRVJST1IgaXMgbm90
IHNldApDT05GSUdfTE9DQUxWRVJTSU9OPSItYW1wZXJlLWx0cy1zdGFuZGFyZCIKIyBDT05GSUdf
TE9DQUxWRVJTSU9OX0FVVE8gaXMgbm90IHNldApDT05GSUdfQlVJTERfU0FMVD0iIgpDT05GSUdf
REVGQVVMVF9JTklUPSIiCkNPTkZJR19ERUZBVUxUX0hPU1ROQU1FPSIobm9uZSkiCkNPTkZJR19T
V0FQPXkKQ09ORklHX1NZU1ZJUEM9eQpDT05GSUdfU1lTVklQQ19TWVNDVEw9eQpDT05GSUdfUE9T
SVhfTVFVRVVFPXkKQ09ORklHX1BPU0lYX01RVUVVRV9TWVNDVEw9eQojIENPTkZJR19XQVRDSF9R
VUVVRSBpcyBub3Qgc2V0CkNPTkZJR19DUk9TU19NRU1PUllfQVRUQUNIPXkKIyBDT05GSUdfVVNF
TElCIGlzIG5vdCBzZXQKIyBDT05GSUdfQVVESVQgaXMgbm90IHNldApDT05GSUdfSEFWRV9BUkNI
X0FVRElUU1lTQ0FMTD15CgojCiMgSVJRIHN1YnN5c3RlbQojCkNPTkZJR19HRU5FUklDX0lSUV9Q
Uk9CRT15CkNPTkZJR19HRU5FUklDX0lSUV9TSE9XPXkKQ09ORklHX0dFTkVSSUNfSVJRX1NIT1df
TEVWRUw9eQpDT05GSUdfR0VORVJJQ19JUlFfRUZGRUNUSVZFX0FGRl9NQVNLPXkKQ09ORklHX0dF
TkVSSUNfSVJRX01JR1JBVElPTj15CkNPTkZJR19IQVJESVJRU19TV19SRVNFTkQ9eQpDT05GSUdf
SVJRX0RPTUFJTj15CkNPTkZJR19JUlFfRE9NQUlOX0hJRVJBUkNIWT15CkNPTkZJR19HRU5FUklD
X0lSUV9JUEk9eQpDT05GSUdfR0VORVJJQ19NU0lfSVJRPXkKQ09ORklHX0dFTkVSSUNfTVNJX0lS
UV9ET01BSU49eQpDT05GSUdfSVJRX01TSV9JT01NVT15CkNPTkZJR19IQU5ETEVfRE9NQUlOX0lS
UT15CkNPTkZJR19JUlFfRk9SQ0VEX1RIUkVBRElORz15CkNPTkZJR19TUEFSU0VfSVJRPXkKIyBD
T05GSUdfR0VORVJJQ19JUlFfREVCVUdGUyBpcyBub3Qgc2V0CiMgZW5kIG9mIElSUSBzdWJzeXN0
ZW0KCkNPTkZJR19HRU5FUklDX1RJTUVfVlNZU0NBTEw9eQpDT05GSUdfR0VORVJJQ19DTE9DS0VW
RU5UUz15CkNPTkZJR19BUkNIX0hBU19USUNLX0JST0FEQ0FTVD15CkNPTkZJR19HRU5FUklDX0NM
T0NLRVZFTlRTX0JST0FEQ0FTVD15CgojCiMgVGltZXJzIHN1YnN5c3RlbQojCkNPTkZJR19USUNL
X09ORVNIT1Q9eQpDT05GSUdfTk9fSFpfQ09NTU9OPXkKIyBDT05GSUdfSFpfUEVSSU9ESUMgaXMg
bm90IHNldApDT05GSUdfTk9fSFpfSURMRT15CiMgQ09ORklHX05PX0haX0ZVTEwgaXMgbm90IHNl
dAojIENPTkZJR19OT19IWiBpcyBub3Qgc2V0CkNPTkZJR19ISUdIX1JFU19USU1FUlM9eQojIGVu
ZCBvZiBUaW1lcnMgc3Vic3lzdGVtCgpDT05GSUdfQlBGPXkKQ09ORklHX0hBVkVfRUJQRl9KSVQ9
eQpDT05GSUdfQVJDSF9XQU5UX0RFRkFVTFRfQlBGX0pJVD15CgojCiMgQlBGIHN1YnN5c3RlbQoj
CkNPTkZJR19CUEZfU1lTQ0FMTD15CkNPTkZJR19CUEZfSklUPXkKIyBDT05GSUdfQlBGX0pJVF9B
TFdBWVNfT04gaXMgbm90IHNldApDT05GSUdfQlBGX0pJVF9ERUZBVUxUX09OPXkKQ09ORklHX0JQ
Rl9VTlBSSVZfREVGQVVMVF9PRkY9eQojIENPTkZJR19CUEZfUFJFTE9BRCBpcyBub3Qgc2V0CiMg
Q09ORklHX0JQRl9MU00gaXMgbm90IHNldAojIGVuZCBvZiBCUEYgc3Vic3lzdGVtCgojIENPTkZJ
R19QUkVFTVBUX05PTkUgaXMgbm90IHNldAojIENPTkZJR19QUkVFTVBUX1ZPTFVOVEFSWSBpcyBu
b3Qgc2V0CkNPTkZJR19QUkVFTVBUPXkKQ09ORklHX1BSRUVNUFRfQ09VTlQ9eQpDT05GSUdfUFJF
RU1QVElPTj15CgojCiMgQ1BVL1Rhc2sgdGltZSBhbmQgc3RhdHMgYWNjb3VudGluZwojCkNPTkZJ
R19USUNLX0NQVV9BQ0NPVU5USU5HPXkKIyBDT05GSUdfVklSVF9DUFVfQUNDT1VOVElOR19HRU4g
aXMgbm90IHNldAojIENPTkZJR19JUlFfVElNRV9BQ0NPVU5USU5HIGlzIG5vdCBzZXQKQ09ORklH
X1NDSEVEX1RIRVJNQUxfUFJFU1NVUkU9eQpDT05GSUdfQlNEX1BST0NFU1NfQUNDVD15CkNPTkZJ
R19CU0RfUFJPQ0VTU19BQ0NUX1YzPXkKIyBDT05GSUdfVEFTS1NUQVRTIGlzIG5vdCBzZXQKIyBD
T05GSUdfUFNJIGlzIG5vdCBzZXQKIyBlbmQgb2YgQ1BVL1Rhc2sgdGltZSBhbmQgc3RhdHMgYWNj
b3VudGluZwoKQ09ORklHX0NQVV9JU09MQVRJT049eQoKIwojIFJDVSBTdWJzeXN0ZW0KIwpDT05G
SUdfVFJFRV9SQ1U9eQpDT05GSUdfUFJFRU1QVF9SQ1U9eQojIENPTkZJR19SQ1VfRVhQRVJUIGlz
IG5vdCBzZXQKQ09ORklHX1NSQ1U9eQpDT05GSUdfVFJFRV9TUkNVPXkKQ09ORklHX1RBU0tTX1JD
VV9HRU5FUklDPXkKQ09ORklHX1RBU0tTX1JDVT15CkNPTkZJR19UQVNLU19SVURFX1JDVT15CkNP
TkZJR19UQVNLU19UUkFDRV9SQ1U9eQpDT05GSUdfUkNVX1NUQUxMX0NPTU1PTj15CkNPTkZJR19S
Q1VfTkVFRF9TRUdDQkxJU1Q9eQojIGVuZCBvZiBSQ1UgU3Vic3lzdGVtCgpDT05GSUdfSUtDT05G
SUc9eQpDT05GSUdfSUtDT05GSUdfUFJPQz15CiMgQ09ORklHX0lLSEVBREVSUyBpcyBub3Qgc2V0
CkNPTkZJR19MT0dfQlVGX1NISUZUPTE3CkNPTkZJR19MT0dfQ1BVX01BWF9CVUZfU0hJRlQ9MTIK
Q09ORklHX1BSSU5US19TQUZFX0xPR19CVUZfU0hJRlQ9MTMKIyBDT05GSUdfUFJJTlRLX0lOREVY
IGlzIG5vdCBzZXQKQ09ORklHX0dFTkVSSUNfU0NIRURfQ0xPQ0s9eQoKIwojIFNjaGVkdWxlciBm
ZWF0dXJlcwojCiMgQ09ORklHX1VDTEFNUF9UQVNLIGlzIG5vdCBzZXQKIyBlbmQgb2YgU2NoZWR1
bGVyIGZlYXR1cmVzCgpDT05GSUdfQVJDSF9TVVBQT1JUU19OVU1BX0JBTEFOQ0lORz15CkNPTkZJ
R19DQ19IQVNfSU5UMTI4PXkKQ09ORklHX0FSQ0hfU1VQUE9SVFNfSU5UMTI4PXkKIyBDT05GSUdf
TlVNQV9CQUxBTkNJTkcgaXMgbm90IHNldApDT05GSUdfQ0dST1VQUz15CkNPTkZJR19QQUdFX0NP
VU5URVI9eQpDT05GSUdfTUVNQ0c9eQpDT05GSUdfTUVNQ0dfU1dBUD15CkNPTkZJR19NRU1DR19L
TUVNPXkKQ09ORklHX0JMS19DR1JPVVA9eQpDT05GSUdfQ0dST1VQX1dSSVRFQkFDSz15CkNPTkZJ
R19DR1JPVVBfU0NIRUQ9eQpDT05GSUdfRkFJUl9HUk9VUF9TQ0hFRD15CkNPTkZJR19DRlNfQkFO
RFdJRFRIPXkKQ09ORklHX1JUX0dST1VQX1NDSEVEPXkKQ09ORklHX0NHUk9VUF9QSURTPXkKIyBD
T05GSUdfQ0dST1VQX1JETUEgaXMgbm90IHNldApDT05GSUdfQ0dST1VQX0ZSRUVaRVI9eQpDT05G
SUdfQ0dST1VQX0hVR0VUTEI9eQpDT05GSUdfQ1BVU0VUUz15CkNPTkZJR19QUk9DX1BJRF9DUFVT
RVQ9eQpDT05GSUdfQ0dST1VQX0RFVklDRT15CkNPTkZJR19DR1JPVVBfQ1BVQUNDVD15CkNPTkZJ
R19DR1JPVVBfUEVSRj15CkNPTkZJR19DR1JPVVBfQlBGPXkKIyBDT05GSUdfQ0dST1VQX01JU0Mg
aXMgbm90IHNldApDT05GSUdfQ0dST1VQX0RFQlVHPXkKQ09ORklHX1NPQ0tfQ0dST1VQX0RBVEE9
eQpDT05GSUdfTkFNRVNQQUNFUz15CkNPTkZJR19VVFNfTlM9eQpDT05GSUdfVElNRV9OUz15CkNP
TkZJR19JUENfTlM9eQpDT05GSUdfVVNFUl9OUz15CkNPTkZJR19QSURfTlM9eQpDT05GSUdfTkVU
X05TPXkKQ09ORklHX0NIRUNLUE9JTlRfUkVTVE9SRT15CiMgQ09ORklHX1NDSEVEX0FVVE9HUk9V
UCBpcyBub3Qgc2V0CiMgQ09ORklHX1NZU0ZTX0RFUFJFQ0FURUQgaXMgbm90IHNldApDT05GSUdf
UkVMQVk9eQpDT05GSUdfQkxLX0RFVl9JTklUUkQ9eQpDT05GSUdfSU5JVFJBTUZTX1NPVVJDRT0i
IgpDT05GSUdfUkRfR1pJUD15CkNPTkZJR19SRF9CWklQMj15CkNPTkZJR19SRF9MWk1BPXkKQ09O
RklHX1JEX1haPXkKQ09ORklHX1JEX0xaTz15CkNPTkZJR19SRF9MWjQ9eQpDT05GSUdfUkRfWlNU
RD15CiMgQ09ORklHX0JPT1RfQ09ORklHIGlzIG5vdCBzZXQKQ09ORklHX0NDX09QVElNSVpFX0ZP
Ul9QRVJGT1JNQU5DRT15CiMgQ09ORklHX0NDX09QVElNSVpFX0ZPUl9TSVpFIGlzIG5vdCBzZXQK
Q09ORklHX0xEX09SUEhBTl9XQVJOPXkKQ09ORklHX1NZU0NUTD15CkNPTkZJR19IQVZFX1VJRDE2
PXkKQ09ORklHX1NZU0NUTF9FWENFUFRJT05fVFJBQ0U9eQojIENPTkZJR19FWFBFUlQgaXMgbm90
IHNldApDT05GSUdfVUlEMTY9eQpDT05GSUdfTVVMVElVU0VSPXkKQ09ORklHX1NZU0ZTX1NZU0NB
TEw9eQpDT05GSUdfRkhBTkRMRT15CkNPTkZJR19QT1NJWF9USU1FUlM9eQpDT05GSUdfUFJJTlRL
PXkKQ09ORklHX0JVRz15CkNPTkZJR19FTEZfQ09SRT15CkNPTkZJR19CQVNFX0ZVTEw9eQpDT05G
SUdfRlVURVg9eQpDT05GSUdfRlVURVhfUEk9eQpDT05GSUdfSEFWRV9GVVRFWF9DTVBYQ0hHPXkK
Q09ORklHX0VQT0xMPXkKQ09ORklHX1NJR05BTEZEPXkKQ09ORklHX1RJTUVSRkQ9eQpDT05GSUdf
RVZFTlRGRD15CkNPTkZJR19TSE1FTT15CkNPTkZJR19BSU89eQpDT05GSUdfSU9fVVJJTkc9eQpD
T05GSUdfQURWSVNFX1NZU0NBTExTPXkKQ09ORklHX01FTUJBUlJJRVI9eQpDT05GSUdfS0FMTFNZ
TVM9eQojIENPTkZJR19LQUxMU1lNU19BTEwgaXMgbm90IHNldApDT05GSUdfS0FMTFNZTVNfQkFT
RV9SRUxBVElWRT15CiMgQ09ORklHX1VTRVJGQVVMVEZEIGlzIG5vdCBzZXQKQ09ORklHX0FSQ0hf
SEFTX01FTUJBUlJJRVJfU1lOQ19DT1JFPXkKQ09ORklHX0tDTVA9eQpDT05GSUdfUlNFUT15CiMg
Q09ORklHX0VNQkVEREVEIGlzIG5vdCBzZXQKQ09ORklHX0hBVkVfUEVSRl9FVkVOVFM9eQoKIwoj
IEtlcm5lbCBQZXJmb3JtYW5jZSBFdmVudHMgQW5kIENvdW50ZXJzCiMKQ09ORklHX1BFUkZfRVZF
TlRTPXkKIyBDT05GSUdfREVCVUdfUEVSRl9VU0VfVk1BTExPQyBpcyBub3Qgc2V0CiMgZW5kIG9m
IEtlcm5lbCBQZXJmb3JtYW5jZSBFdmVudHMgQW5kIENvdW50ZXJzCgpDT05GSUdfVk1fRVZFTlRf
Q09VTlRFUlM9eQpDT05GSUdfU0xVQl9ERUJVRz15CkNPTkZJR19DT01QQVRfQlJLPXkKIyBDT05G
SUdfU0xBQiBpcyBub3Qgc2V0CkNPTkZJR19TTFVCPXkKQ09ORklHX1NMQUJfTUVSR0VfREVGQVVM
VD15CiMgQ09ORklHX1NMQUJfRlJFRUxJU1RfUkFORE9NIGlzIG5vdCBzZXQKIyBDT05GSUdfU0xB
Ql9GUkVFTElTVF9IQVJERU5FRCBpcyBub3Qgc2V0CiMgQ09ORklHX1NIVUZGTEVfUEFHRV9BTExP
Q0FUT1IgaXMgbm90IHNldApDT05GSUdfU0xVQl9DUFVfUEFSVElBTD15CkNPTkZJR19QUk9GSUxJ
Tkc9eQpDT05GSUdfVFJBQ0VQT0lOVFM9eQojIGVuZCBvZiBHZW5lcmFsIHNldHVwCgpDT05GSUdf
QVJNNjQ9eQpDT05GSUdfNjRCSVQ9eQpDT05GSUdfTU1VPXkKQ09ORklHX0FSTTY0X1BBR0VfU0hJ
RlQ9MTIKQ09ORklHX0FSTTY0X0NPTlRfUFRFX1NISUZUPTQKQ09ORklHX0FSTTY0X0NPTlRfUE1E
X1NISUZUPTQKQ09ORklHX0FSQ0hfTU1BUF9STkRfQklUU19NSU49MTgKQ09ORklHX0FSQ0hfTU1B
UF9STkRfQklUU19NQVg9MzMKQ09ORklHX0FSQ0hfTU1BUF9STkRfQ09NUEFUX0JJVFNfTUlOPTEx
CkNPTkZJR19BUkNIX01NQVBfUk5EX0NPTVBBVF9CSVRTX01BWD0xNgpDT05GSUdfU1RBQ0tUUkFD
RV9TVVBQT1JUPXkKQ09ORklHX0lMTEVHQUxfUE9JTlRFUl9WQUxVRT0weGRlYWQwMDAwMDAwMDAw
MDAKQ09ORklHX0xPQ0tERVBfU1VQUE9SVD15CkNPTkZJR19HRU5FUklDX0JVRz15CkNPTkZJR19H
RU5FUklDX0JVR19SRUxBVElWRV9QT0lOVEVSUz15CkNPTkZJR19HRU5FUklDX0hXRUlHSFQ9eQpD
T05GSUdfR0VORVJJQ19DU1VNPXkKQ09ORklHX0dFTkVSSUNfQ0FMSUJSQVRFX0RFTEFZPXkKQ09O
RklHX0FSQ0hfTUhQX01FTU1BUF9PTl9NRU1PUllfRU5BQkxFPXkKQ09ORklHX1NNUD15CkNPTkZJ
R19LRVJORUxfTU9ERV9ORU9OPXkKQ09ORklHX0ZJWF9FQVJMWUNPTl9NRU09eQpDT05GSUdfUEdU
QUJMRV9MRVZFTFM9NApDT05GSUdfQVJDSF9TVVBQT1JUU19VUFJPQkVTPXkKQ09ORklHX0FSQ0hf
UFJPQ19LQ09SRV9URVhUPXkKCiMKIyBQbGF0Zm9ybSBzZWxlY3Rpb24KIwojIENPTkZJR19BUkNI
X0FDVElPTlMgaXMgbm90IHNldAojIENPTkZJR19BUkNIX1NVTlhJIGlzIG5vdCBzZXQKIyBDT05G
SUdfQVJDSF9BTFBJTkUgaXMgbm90IHNldAojIENPTkZJR19BUkNIX0FQUExFIGlzIG5vdCBzZXQK
IyBDT05GSUdfQVJDSF9CQ00yODM1IGlzIG5vdCBzZXQKIyBDT05GSUdfQVJDSF9CQ000OTA4IGlz
IG5vdCBzZXQKIyBDT05GSUdfQVJDSF9CQ01fSVBST0MgaXMgbm90IHNldAojIENPTkZJR19BUkNI
X0JFUkxJTiBpcyBub3Qgc2V0CiMgQ09ORklHX0FSQ0hfQklUTUFJTiBpcyBub3Qgc2V0CiMgQ09O
RklHX0FSQ0hfQlJDTVNUQiBpcyBub3Qgc2V0CiMgQ09ORklHX0FSQ0hfRVhZTk9TIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQVJDSF9TUEFSWDUgaXMgbm90IHNldAojIENPTkZJR19BUkNIX0szIGlzIG5v
dCBzZXQKIyBDT05GSUdfQVJDSF9MQVlFUlNDQVBFIGlzIG5vdCBzZXQKIyBDT05GSUdfQVJDSF9M
RzFLIGlzIG5vdCBzZXQKIyBDT05GSUdfQVJDSF9ISVNJIGlzIG5vdCBzZXQKIyBDT05GSUdfQVJD
SF9LRUVNQkFZIGlzIG5vdCBzZXQKIyBDT05GSUdfQVJDSF9NRURJQVRFSyBpcyBub3Qgc2V0CiMg
Q09ORklHX0FSQ0hfTUVTT04gaXMgbm90IHNldAojIENPTkZJR19BUkNIX01WRUJVIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQVJDSF9NWEMgaXMgbm90IHNldAojIENPTkZJR19BUkNIX1FDT00gaXMgbm90
IHNldAojIENPTkZJR19BUkNIX1JFQUxURUsgaXMgbm90IHNldAojIENPTkZJR19BUkNIX1JFTkVT
QVMgaXMgbm90IHNldAojIENPTkZJR19BUkNIX1JPQ0tDSElQIGlzIG5vdCBzZXQKIyBDT05GSUdf
QVJDSF9TMzIgaXMgbm90IHNldAojIENPTkZJR19BUkNIX1NFQVRUTEUgaXMgbm90IHNldAojIENP
TkZJR19BUkNIX0lOVEVMX1NPQ0ZQR0EgaXMgbm90IHNldAojIENPTkZJR19BUkNIX1NZTlFVQUNF
UiBpcyBub3Qgc2V0CiMgQ09ORklHX0FSQ0hfVEVHUkEgaXMgbm90IHNldAojIENPTkZJR19BUkNI
X1NQUkQgaXMgbm90IHNldAojIENPTkZJR19BUkNIX1RIVU5ERVIgaXMgbm90IHNldAojIENPTkZJ
R19BUkNIX1RIVU5ERVIyIGlzIG5vdCBzZXQKIyBDT05GSUdfQVJDSF9VTklQSElFUiBpcyBub3Qg
c2V0CiMgQ09ORklHX0FSQ0hfVkVYUFJFU1MgaXMgbm90IHNldAojIENPTkZJR19BUkNIX1ZJU0NP
TlRJIGlzIG5vdCBzZXQKIyBDT05GSUdfQVJDSF9YR0VORSBpcyBub3Qgc2V0CiMgQ09ORklHX0FS
Q0hfWllOUU1QIGlzIG5vdCBzZXQKIyBlbmQgb2YgUGxhdGZvcm0gc2VsZWN0aW9uCgojCiMgS2Vy
bmVsIEZlYXR1cmVzCiMKCiMKIyBBUk0gZXJyYXRhIHdvcmthcm91bmRzIHZpYSB0aGUgYWx0ZXJu
YXRpdmVzIGZyYW1ld29yawojCkNPTkZJR19BUk02NF9XT1JLQVJPVU5EX0NMRUFOX0NBQ0hFPXkK
Q09ORklHX0FSTTY0X0VSUkFUVU1fODI2MzE5PXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fODI3MzE5
PXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fODI0MDY5PXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fODE5
NDcyPXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fODMyMDc1PXkKQ09ORklHX0FSTTY0X0VSUkFUVU1f
ODQ1NzE5PXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fODQzNDE5PXkKQ09ORklHX0FSTTY0X0xEX0hB
U19GSVhfRVJSQVRVTV84NDM0MTk9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV8xMDI0NzE4PXkKQ09O
RklHX0FSTTY0X0VSUkFUVU1fMTQxODA0MD15CkNPTkZJR19BUk02NF9XT1JLQVJPVU5EX1NQRUNV
TEFUSVZFX0FUPXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fMTE2NTUyMj15CkNPTkZJR19BUk02NF9F
UlJBVFVNXzEzMTkzNjc9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV8xNTMwOTIzPXkKQ09ORklHX0FS
TTY0X1dPUktBUk9VTkRfUkVQRUFUX1RMQkk9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV8xMjg2ODA3
PXkKQ09ORklHX0FSTTY0X0VSUkFUVU1fMTQ2MzIyNT15CkNPTkZJR19BUk02NF9FUlJBVFVNXzE1
NDI0MTk9eQpDT05GSUdfQVJNNjRfRVJSQVRVTV8xNTA4NDEyPXkKQ09ORklHX0NBVklVTV9FUlJB
VFVNXzIyMzc1PXkKQ09ORklHX0NBVklVTV9FUlJBVFVNXzIzMTQ0PXkKQ09ORklHX0NBVklVTV9F
UlJBVFVNXzIzMTU0PXkKQ09ORklHX0NBVklVTV9FUlJBVFVNXzI3NDU2PXkKQ09ORklHX0NBVklV
TV9FUlJBVFVNXzMwMTE1PXkKQ09ORklHX0NBVklVTV9UWDJfRVJSQVRVTV8yMTk9eQpDT05GSUdf
RlVKSVRTVV9FUlJBVFVNXzAxMDAwMT15CkNPTkZJR19ISVNJTElDT05fRVJSQVRVTV8xNjE2MDA4
MDI9eQpDT05GSUdfUUNPTV9GQUxLT1JfRVJSQVRVTV8xMDAzPXkKQ09ORklHX1FDT01fRkFMS09S
X0VSUkFUVU1fMTAwOT15CkNPTkZJR19RQ09NX1FERjI0MDBfRVJSQVRVTV8wMDY1PXkKQ09ORklH
X1FDT01fRkFMS09SX0VSUkFUVU1fRTEwNDE9eQpDT05GSUdfTlZJRElBX0NBUk1FTF9DTlBfRVJS
QVRVTT15CkNPTkZJR19TT0NJT05FWFRfU1lOUVVBQ0VSX1BSRUlUUz15CiMgZW5kIG9mIEFSTSBl
cnJhdGEgd29ya2Fyb3VuZHMgdmlhIHRoZSBhbHRlcm5hdGl2ZXMgZnJhbWV3b3JrCgpDT05GSUdf
QVJNNjRfNEtfUEFHRVM9eQojIENPTkZJR19BUk02NF8xNktfUEFHRVMgaXMgbm90IHNldAojIENP
TkZJR19BUk02NF82NEtfUEFHRVMgaXMgbm90IHNldAojIENPTkZJR19BUk02NF9WQV9CSVRTXzM5
IGlzIG5vdCBzZXQKQ09ORklHX0FSTTY0X1ZBX0JJVFNfNDg9eQpDT05GSUdfQVJNNjRfVkFfQklU
Uz00OApDT05GSUdfQVJNNjRfUEFfQklUU180OD15CkNPTkZJR19BUk02NF9QQV9CSVRTPTQ4CiMg
Q09ORklHX0NQVV9CSUdfRU5ESUFOIGlzIG5vdCBzZXQKQ09ORklHX0NQVV9MSVRUTEVfRU5ESUFO
PXkKIyBDT05GSUdfU0NIRURfTUMgaXMgbm90IHNldAojIENPTkZJR19TQ0hFRF9TTVQgaXMgbm90
IHNldApDT05GSUdfTlJfQ1BVUz0yNTYKQ09ORklHX0hPVFBMVUdfQ1BVPXkKQ09ORklHX05VTUE9
eQpDT05GSUdfTk9ERVNfU0hJRlQ9NApDT05GSUdfVVNFX1BFUkNQVV9OVU1BX05PREVfSUQ9eQpD
T05GSUdfSEFWRV9TRVRVUF9QRVJfQ1BVX0FSRUE9eQpDT05GSUdfTkVFRF9QRVJfQ1BVX0VNQkVE
X0ZJUlNUX0NIVU5LPXkKIyBDT05GSUdfSFpfMTAwIGlzIG5vdCBzZXQKQ09ORklHX0haXzI1MD15
CiMgQ09ORklHX0haXzMwMCBpcyBub3Qgc2V0CiMgQ09ORklHX0haXzEwMDAgaXMgbm90IHNldApD
T05GSUdfSFo9MjUwCkNPTkZJR19TQ0hFRF9IUlRJQ0s9eQpDT05GSUdfQVJDSF9TUEFSU0VNRU1f
RU5BQkxFPXkKQ09ORklHX0hXX1BFUkZfRVZFTlRTPXkKQ09ORklHX0FSQ0hfSEFTX0ZJTFRFUl9Q
R1BST1Q9eQpDT05GSUdfUEFSQVZJUlQ9eQojIENPTkZJR19QQVJBVklSVF9USU1FX0FDQ09VTlRJ
TkcgaXMgbm90IHNldAojIENPTkZJR19LRVhFQyBpcyBub3Qgc2V0CkNPTkZJR19LRVhFQ19GSUxF
PXkKIyBDT05GSUdfS0VYRUNfU0lHIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JBU0hfRFVNUCBpcyBu
b3Qgc2V0CkNPTkZJR19UUkFOU19UQUJMRT15CkNPTkZJR19YRU5fRE9NMD15CkNPTkZJR19YRU49
eQpDT05GSUdfRk9SQ0VfTUFYX1pPTkVPUkRFUj0xMQpDT05GSUdfVU5NQVBfS0VSTkVMX0FUX0VM
MD15CkNPTkZJR19ST0RBVEFfRlVMTF9ERUZBVUxUX0VOQUJMRUQ9eQojIENPTkZJR19BUk02NF9T
V19UVEJSMF9QQU4gaXMgbm90IHNldApDT05GSUdfQVJNNjRfVEFHR0VEX0FERFJfQUJJPXkKQ09O
RklHX0NPTVBBVD15CkNPTkZJR19LVVNFUl9IRUxQRVJTPXkKIyBDT05GSUdfQVJNVjhfREVQUkVD
QVRFRCBpcyBub3Qgc2V0CgojCiMgQVJNdjguMSBhcmNoaXRlY3R1cmFsIGZlYXR1cmVzCiMKQ09O
RklHX0FSTTY0X0hXX0FGREJNPXkKQ09ORklHX0FSTTY0X1BBTj15CkNPTkZJR19BU19IQVNfTERB
UFI9eQpDT05GSUdfQVNfSEFTX0xTRV9BVE9NSUNTPXkKQ09ORklHX0FSTTY0X0xTRV9BVE9NSUNT
PXkKQ09ORklHX0FSTTY0X1VTRV9MU0VfQVRPTUlDUz15CiMgZW5kIG9mIEFSTXY4LjEgYXJjaGl0
ZWN0dXJhbCBmZWF0dXJlcwoKIwojIEFSTXY4LjIgYXJjaGl0ZWN0dXJhbCBmZWF0dXJlcwojCiMg
Q09ORklHX0FSTTY0X1BNRU0gaXMgbm90IHNldApDT05GSUdfQVJNNjRfUkFTX0VYVE49eQpDT05G
SUdfQVJNNjRfQ05QPXkKIyBlbmQgb2YgQVJNdjguMiBhcmNoaXRlY3R1cmFsIGZlYXR1cmVzCgoj
CiMgQVJNdjguMyBhcmNoaXRlY3R1cmFsIGZlYXR1cmVzCiMKQ09ORklHX0FSTTY0X1BUUl9BVVRI
PXkKQ09ORklHX0FSTTY0X1BUUl9BVVRIX0tFUk5FTD15CkNPTkZJR19DQ19IQVNfQlJBTkNIX1BS
T1RfUEFDX1JFVD15CkNPTkZJR19DQ19IQVNfU0lHTl9SRVRVUk5fQUREUkVTUz15CkNPTkZJR19B
U19IQVNfUEFDPXkKQ09ORklHX0FTX0hBU19DRklfTkVHQVRFX1JBX1NUQVRFPXkKIyBlbmQgb2Yg
QVJNdjguMyBhcmNoaXRlY3R1cmFsIGZlYXR1cmVzCgojCiMgQVJNdjguNCBhcmNoaXRlY3R1cmFs
IGZlYXR1cmVzCiMKQ09ORklHX0FSTTY0X0FNVV9FWFROPXkKQ09ORklHX0FTX0hBU19BUk1WOF80
PXkKQ09ORklHX0FSTTY0X1RMQl9SQU5HRT15CiMgZW5kIG9mIEFSTXY4LjQgYXJjaGl0ZWN0dXJh
bCBmZWF0dXJlcwoKIwojIEFSTXY4LjUgYXJjaGl0ZWN0dXJhbCBmZWF0dXJlcwojCkNPTkZJR19B
U19IQVNfQVJNVjhfNT15CkNPTkZJR19BUk02NF9CVEk9eQpDT05GSUdfQVJNNjRfQlRJX0tFUk5F
TD15CkNPTkZJR19DQ19IQVNfQlJBTkNIX1BST1RfUEFDX1JFVF9CVEk9eQpDT05GSUdfQVJNNjRf
RTBQRD15CkNPTkZJR19BUkNIX1JBTkRPTT15CkNPTkZJR19BUk02NF9BU19IQVNfTVRFPXkKQ09O
RklHX0FSTTY0X01URT15CiMgZW5kIG9mIEFSTXY4LjUgYXJjaGl0ZWN0dXJhbCBmZWF0dXJlcwoK
IwojIEFSTXY4LjcgYXJjaGl0ZWN0dXJhbCBmZWF0dXJlcwojCkNPTkZJR19BUk02NF9FUEFOPXkK
IyBlbmQgb2YgQVJNdjguNyBhcmNoaXRlY3R1cmFsIGZlYXR1cmVzCgpDT05GSUdfQVJNNjRfU1ZF
PXkKQ09ORklHX0FSTTY0X01PRFVMRV9QTFRTPXkKIyBDT05GSUdfQVJNNjRfUFNFVURPX05NSSBp
cyBub3Qgc2V0CkNPTkZJR19SRUxPQ0FUQUJMRT15CiMgQ09ORklHX1JBTkRPTUlaRV9CQVNFIGlz
IG5vdCBzZXQKQ09ORklHX0NDX0hBVkVfU1RBQ0tQUk9URUNUT1JfU1lTUkVHPXkKQ09ORklHX1NU
QUNLUFJPVEVDVE9SX1BFUl9UQVNLPXkKIyBlbmQgb2YgS2VybmVsIEZlYXR1cmVzCgojCiMgQm9v
dCBvcHRpb25zCiMKIyBDT05GSUdfQVJNNjRfQUNQSV9QQVJLSU5HX1BST1RPQ09MIGlzIG5vdCBz
ZXQKQ09ORklHX0NNRExJTkU9IiIKQ09ORklHX0VGSV9TVFVCPXkKQ09ORklHX0VGST15CkNPTkZJ
R19ETUk9eQojIGVuZCBvZiBCb290IG9wdGlvbnMKCkNPTkZJR19TWVNWSVBDX0NPTVBBVD15Cgoj
CiMgUG93ZXIgbWFuYWdlbWVudCBvcHRpb25zCiMKQ09ORklHX1NVU1BFTkQ9eQpDT05GSUdfU1VT
UEVORF9GUkVFWkVSPXkKQ09ORklHX0hJQkVSTkFURV9DQUxMQkFDS1M9eQpDT05GSUdfSElCRVJO
QVRJT049eQpDT05GSUdfSElCRVJOQVRJT05fU05BUFNIT1RfREVWPXkKQ09ORklHX1BNX1NURF9Q
QVJUSVRJT049IiIKQ09ORklHX1BNX1NMRUVQPXkKQ09ORklHX1BNX1NMRUVQX1NNUD15CiMgQ09O
RklHX1BNX0FVVE9TTEVFUCBpcyBub3Qgc2V0CiMgQ09ORklHX1BNX1dBS0VMT0NLUyBpcyBub3Qg
c2V0CkNPTkZJR19QTT15CiMgQ09ORklHX1BNX0RFQlVHIGlzIG5vdCBzZXQKQ09ORklHX1BNX0NM
Sz15CkNPTkZJR19QTV9HRU5FUklDX0RPTUFJTlM9eQojIENPTkZJR19XUV9QT1dFUl9FRkZJQ0lF
TlRfREVGQVVMVCBpcyBub3Qgc2V0CkNPTkZJR19QTV9HRU5FUklDX0RPTUFJTlNfU0xFRVA9eQpD
T05GSUdfUE1fR0VORVJJQ19ET01BSU5TX09GPXkKQ09ORklHX0NQVV9QTT15CiMgQ09ORklHX0VO
RVJHWV9NT0RFTCBpcyBub3Qgc2V0CkNPTkZJR19BUkNIX0hJQkVSTkFUSU9OX1BPU1NJQkxFPXkK
Q09ORklHX0FSQ0hfSElCRVJOQVRJT05fSEVBREVSPXkKQ09ORklHX0FSQ0hfU1VTUEVORF9QT1NT
SUJMRT15CiMgZW5kIG9mIFBvd2VyIG1hbmFnZW1lbnQgb3B0aW9ucwoKIwojIENQVSBQb3dlciBN
YW5hZ2VtZW50CiMKCiMKIyBDUFUgSWRsZQojCkNPTkZJR19DUFVfSURMRT15CkNPTkZJR19DUFVf
SURMRV9NVUxUSVBMRV9EUklWRVJTPXkKIyBDT05GSUdfQ1BVX0lETEVfR09WX0xBRERFUiBpcyBu
b3Qgc2V0CkNPTkZJR19DUFVfSURMRV9HT1ZfTUVOVT15CiMgQ09ORklHX0NQVV9JRExFX0dPVl9U
RU8gaXMgbm90IHNldApDT05GSUdfRFRfSURMRV9TVEFURVM9eQoKIwojIEFSTSBDUFUgSWRsZSBE
cml2ZXJzCiMKQ09ORklHX0FSTV9DUFVJRExFPXkKIyBDT05GSUdfQVJNX1BTQ0lfQ1BVSURMRSBp
cyBub3Qgc2V0CiMgZW5kIG9mIEFSTSBDUFUgSWRsZSBEcml2ZXJzCiMgZW5kIG9mIENQVSBJZGxl
CgojCiMgQ1BVIEZyZXF1ZW5jeSBzY2FsaW5nCiMKQ09ORklHX0NQVV9GUkVRPXkKQ09ORklHX0NQ
VV9GUkVRX0dPVl9BVFRSX1NFVD15CiMgQ09ORklHX0NQVV9GUkVRX1NUQVQgaXMgbm90IHNldAoj
IENPTkZJR19DUFVfRlJFUV9ERUZBVUxUX0dPVl9QRVJGT1JNQU5DRSBpcyBub3Qgc2V0CiMgQ09O
RklHX0NQVV9GUkVRX0RFRkFVTFRfR09WX1BPV0VSU0FWRSBpcyBub3Qgc2V0CiMgQ09ORklHX0NQ
VV9GUkVRX0RFRkFVTFRfR09WX1VTRVJTUEFDRSBpcyBub3Qgc2V0CiMgQ09ORklHX0NQVV9GUkVR
X0RFRkFVTFRfR09WX09OREVNQU5EIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1BVX0ZSRVFfREVGQVVM
VF9HT1ZfQ09OU0VSVkFUSVZFIGlzIG5vdCBzZXQKQ09ORklHX0NQVV9GUkVRX0RFRkFVTFRfR09W
X1NDSEVEVVRJTD15CkNPTkZJR19DUFVfRlJFUV9HT1ZfUEVSRk9STUFOQ0U9eQojIENPTkZJR19D
UFVfRlJFUV9HT1ZfUE9XRVJTQVZFIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1BVX0ZSRVFfR09WX1VT
RVJTUEFDRSBpcyBub3Qgc2V0CiMgQ09ORklHX0NQVV9GUkVRX0dPVl9PTkRFTUFORCBpcyBub3Qg
c2V0CiMgQ09ORklHX0NQVV9GUkVRX0dPVl9DT05TRVJWQVRJVkUgaXMgbm90IHNldApDT05GSUdf
Q1BVX0ZSRVFfR09WX1NDSEVEVVRJTD15CgojCiMgQ1BVIGZyZXF1ZW5jeSBzY2FsaW5nIGRyaXZl
cnMKIwpDT05GSUdfQ1BVRlJFUV9EVD15CkNPTkZJR19DUFVGUkVRX0RUX1BMQVRERVY9eQpDT05G
SUdfQUNQSV9DUFBDX0NQVUZSRVE9bQpDT05GSUdfQUNQSV9DUFBDX0NQVUZSRVFfRklFPXkKQ09O
RklHX0FSTV9TQ1BJX0NQVUZSRVE9eQojIGVuZCBvZiBDUFUgRnJlcXVlbmN5IHNjYWxpbmcKIyBl
bmQgb2YgQ1BVIFBvd2VyIE1hbmFnZW1lbnQKCkNPTkZJR19BUkNIX1NVUFBPUlRTX0FDUEk9eQpD
T05GSUdfQUNQST15CkNPTkZJR19BQ1BJX0dFTkVSSUNfR1NJPXkKQ09ORklHX0FDUElfQ0NBX1JF
UVVJUkVEPXkKIyBDT05GSUdfQUNQSV9ERUJVR0dFUiBpcyBub3Qgc2V0CkNPTkZJR19BQ1BJX1NQ
Q1JfVEFCTEU9eQojIENPTkZJR19BQ1BJX0VDX0RFQlVHRlMgaXMgbm90IHNldApDT05GSUdfQUNQ
SV9BQz15CkNPTkZJR19BQ1BJX0JBVFRFUlk9eQpDT05GSUdfQUNQSV9CVVRUT049eQpDT05GSUdf
QUNQSV9GQU49eQojIENPTkZJR19BQ1BJX1RBRCBpcyBub3Qgc2V0CiMgQ09ORklHX0FDUElfRE9D
SyBpcyBub3Qgc2V0CkNPTkZJR19BQ1BJX1BST0NFU1NPUl9JRExFPXkKQ09ORklHX0FDUElfTUNG
Rz15CkNPTkZJR19BQ1BJX0NQUENfTElCPXkKQ09ORklHX0FDUElfUFJPQ0VTU09SPXkKIyBDT05G
SUdfQUNQSV9JUE1JIGlzIG5vdCBzZXQKQ09ORklHX0FDUElfSE9UUExVR19DUFU9eQpDT05GSUdf
QUNQSV9USEVSTUFMPXkKQ09ORklHX0FSQ0hfSEFTX0FDUElfVEFCTEVfVVBHUkFERT15CkNPTkZJ
R19BQ1BJX1RBQkxFX1VQR1JBREU9eQojIENPTkZJR19BQ1BJX0RFQlVHIGlzIG5vdCBzZXQKIyBD
T05GSUdfQUNQSV9QQ0lfU0xPVCBpcyBub3Qgc2V0CkNPTkZJR19BQ1BJX0NPTlRBSU5FUj15CkNP
TkZJR19BQ1BJX0hFRD15CiMgQ09ORklHX0FDUElfQ1VTVE9NX01FVEhPRCBpcyBub3Qgc2V0CiMg
Q09ORklHX0FDUElfQkdSVCBpcyBub3Qgc2V0CkNPTkZJR19BQ1BJX1JFRFVDRURfSEFSRFdBUkVf
T05MWT15CkNPTkZJR19BQ1BJX05VTUE9eQojIENPTkZJR19BQ1BJX0hNQVQgaXMgbm90IHNldApD
T05GSUdfSEFWRV9BQ1BJX0FQRUk9eQpDT05GSUdfQUNQSV9BUEVJPXkKQ09ORklHX0FDUElfQVBF
SV9HSEVTPXkKQ09ORklHX0FDUElfQVBFSV9TRUE9eQpDT05GSUdfQUNQSV9BUEVJX01FTU9SWV9G
QUlMVVJFPXkKQ09ORklHX0FDUElfQVBFSV9FSU5KPXkKIyBDT05GSUdfQUNQSV9BUEVJX0VSU1Rf
REVCVUcgaXMgbm90IHNldAojIENPTkZJR19BQ1BJX0NPTkZJR0ZTIGlzIG5vdCBzZXQKQ09ORklH
X0FDUElfSU9SVD15CkNPTkZJR19BQ1BJX0dURFQ9eQojIENPTkZJR19BQ1BJX0FFU1QgaXMgbm90
IHNldApDT05GSUdfQUNQSV9QUFRUPXkKIyBDT05GSUdfUE1JQ19PUFJFR0lPTiBpcyBub3Qgc2V0
CkNPTkZJR19WSVJUVUFMSVpBVElPTj15CiMgQ09ORklHX0tWTSBpcyBub3Qgc2V0CkNPTkZJR19B
Uk02NF9DUllQVE89eQpDT05GSUdfQ1JZUFRPX1NIQTI1Nl9BUk02ND1tCiMgQ09ORklHX0NSWVBU
T19TSEE1MTJfQVJNNjQgaXMgbm90IHNldApDT05GSUdfQ1JZUFRPX1NIQTFfQVJNNjRfQ0U9bQpD
T05GSUdfQ1JZUFRPX1NIQTJfQVJNNjRfQ0U9bQojIENPTkZJR19DUllQVE9fU0hBNTEyX0FSTTY0
X0NFIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX1NIQTNfQVJNNjQgaXMgbm90IHNldAojIENP
TkZJR19DUllQVE9fU00zX0FSTTY0X0NFIGlzIG5vdCBzZXQKQ09ORklHX0NSWVBUT19TTTRfQVJN
NjRfQ0U9bQpDT05GSUdfQ1JZUFRPX0dIQVNIX0FSTTY0X0NFPW0KQ09ORklHX0NSWVBUT19BRVNf
QVJNNjQ9eQpDT05GSUdfQ1JZUFRPX0FFU19BUk02NF9DRT15CkNPTkZJR19DUllQVE9fQUVTX0FS
TTY0X0NFX0NDTT15CkNPTkZJR19DUllQVE9fQUVTX0FSTTY0X0NFX0JMSz15CiMgQ09ORklHX0NS
WVBUT19BRVNfQVJNNjRfTkVPTl9CTEsgaXMgbm90IHNldAojIENPTkZJR19DUllQVE9fQ0hBQ0hB
MjBfTkVPTiBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19QT0xZMTMwNV9ORU9OIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQ1JZUFRPX05IUE9MWTEzMDVfTkVPTiBpcyBub3Qgc2V0CiMgQ09ORklHX0NS
WVBUT19BRVNfQVJNNjRfQlMgaXMgbm90IHNldAoKIwojIEdlbmVyYWwgYXJjaGl0ZWN0dXJlLWRl
cGVuZGVudCBvcHRpb25zCiMKQ09ORklHX0NSQVNIX0NPUkU9eQpDT05GSUdfS0VYRUNfQ09SRT15
CkNPTkZJR19LUFJPQkVTPXkKQ09ORklHX0pVTVBfTEFCRUw9eQojIENPTkZJR19TVEFUSUNfS0VZ
U19TRUxGVEVTVCBpcyBub3Qgc2V0CkNPTkZJR19VUFJPQkVTPXkKQ09ORklHX0hBVkVfRUZGSUNJ
RU5UX1VOQUxJR05FRF9BQ0NFU1M9eQpDT05GSUdfS1JFVFBST0JFUz15CkNPTkZJR19IQVZFX0tQ
Uk9CRVM9eQpDT05GSUdfSEFWRV9LUkVUUFJPQkVTPXkKQ09ORklHX0hBVkVfRlVOQ1RJT05fRVJS
T1JfSU5KRUNUSU9OPXkKQ09ORklHX0hBVkVfTk1JPXkKQ09ORklHX1RSQUNFX0lSUUZMQUdTX1NV
UFBPUlQ9eQpDT05GSUdfSEFWRV9BUkNIX1RSQUNFSE9PSz15CkNPTkZJR19IQVZFX0RNQV9DT05U
SUdVT1VTPXkKQ09ORklHX0dFTkVSSUNfU01QX0lETEVfVEhSRUFEPXkKQ09ORklHX0dFTkVSSUNf
SURMRV9QT0xMX1NFVFVQPXkKQ09ORklHX0FSQ0hfSEFTX0ZPUlRJRllfU09VUkNFPXkKQ09ORklH
X0FSQ0hfSEFTX0tFRVBJTklUUkQ9eQpDT05GSUdfQVJDSF9IQVNfU0VUX01FTU9SWT15CkNPTkZJ
R19BUkNIX0hBU19TRVRfRElSRUNUX01BUD15CkNPTkZJR19IQVZFX0FSQ0hfVEhSRUFEX1NUUlVD
VF9XSElURUxJU1Q9eQpDT05GSUdfQVJDSF9XQU5UU19OT19JTlNUUj15CkNPTkZJR19IQVZFX0FT
TV9NT0RWRVJTSU9OUz15CkNPTkZJR19IQVZFX1JFR1NfQU5EX1NUQUNLX0FDQ0VTU19BUEk9eQpD
T05GSUdfSEFWRV9SU0VRPXkKQ09ORklHX0hBVkVfRlVOQ1RJT05fQVJHX0FDQ0VTU19BUEk9eQpD
T05GSUdfSEFWRV9IV19CUkVBS1BPSU5UPXkKQ09ORklHX0hBVkVfUEVSRl9SRUdTPXkKQ09ORklH
X0hBVkVfUEVSRl9VU0VSX1NUQUNLX0RVTVA9eQpDT05GSUdfSEFWRV9BUkNIX0pVTVBfTEFCRUw9
eQpDT05GSUdfSEFWRV9BUkNIX0pVTVBfTEFCRUxfUkVMQVRJVkU9eQpDT05GSUdfTU1VX0dBVEhF
Ul9UQUJMRV9GUkVFPXkKQ09ORklHX01NVV9HQVRIRVJfUkNVX1RBQkxFX0ZSRUU9eQpDT05GSUdf
QVJDSF9IQVZFX05NSV9TQUZFX0NNUFhDSEc9eQpDT05GSUdfSEFWRV9BTElHTkVEX1NUUlVDVF9Q
QUdFPXkKQ09ORklHX0hBVkVfQ01QWENIR19MT0NBTD15CkNPTkZJR19IQVZFX0NNUFhDSEdfRE9V
QkxFPXkKQ09ORklHX0FSQ0hfV0FOVF9DT01QQVRfSVBDX1BBUlNFX1ZFUlNJT049eQpDT05GSUdf
SEFWRV9BUkNIX1NFQ0NPTVA9eQpDT05GSUdfSEFWRV9BUkNIX1NFQ0NPTVBfRklMVEVSPXkKQ09O
RklHX1NFQ0NPTVA9eQpDT05GSUdfU0VDQ09NUF9GSUxURVI9eQojIENPTkZJR19TRUNDT01QX0NB
Q0hFX0RFQlVHIGlzIG5vdCBzZXQKQ09ORklHX0hBVkVfQVJDSF9TVEFDS0xFQUs9eQpDT05GSUdf
SEFWRV9TVEFDS1BST1RFQ1RPUj15CkNPTkZJR19TVEFDS1BST1RFQ1RPUj15CkNPTkZJR19TVEFD
S1BST1RFQ1RPUl9TVFJPTkc9eQpDT05GSUdfQVJDSF9TVVBQT1JUU19MVE9fQ0xBTkc9eQpDT05G
SUdfQVJDSF9TVVBQT1JUU19MVE9fQ0xBTkdfVEhJTj15CkNPTkZJR19MVE9fTk9ORT15CkNPTkZJ
R19BUkNIX1NVUFBPUlRTX0NGSV9DTEFORz15CkNPTkZJR19IQVZFX0NPTlRFWFRfVFJBQ0tJTkc9
eQpDT05GSUdfSEFWRV9WSVJUX0NQVV9BQ0NPVU5USU5HX0dFTj15CkNPTkZJR19IQVZFX0lSUV9U
SU1FX0FDQ09VTlRJTkc9eQpDT05GSUdfSEFWRV9NT1ZFX1BVRD15CkNPTkZJR19IQVZFX01PVkVf
UE1EPXkKQ09ORklHX0hBVkVfQVJDSF9UUkFOU1BBUkVOVF9IVUdFUEFHRT15CkNPTkZJR19IQVZF
X0FSQ0hfSFVHRV9WTUFQPXkKQ09ORklHX0FSQ0hfV0FOVF9IVUdFX1BNRF9TSEFSRT15CkNPTkZJ
R19IQVZFX01PRF9BUkNIX1NQRUNJRklDPXkKQ09ORklHX01PRFVMRVNfVVNFX0VMRl9SRUxBPXkK
Q09ORklHX0FSQ0hfSEFTX0VMRl9SQU5ET01JWkU9eQpDT05GSUdfSEFWRV9BUkNIX01NQVBfUk5E
X0JJVFM9eQpDT05GSUdfQVJDSF9NTUFQX1JORF9CSVRTPTE4CkNPTkZJR19IQVZFX0FSQ0hfTU1B
UF9STkRfQ09NUEFUX0JJVFM9eQpDT05GSUdfQVJDSF9NTUFQX1JORF9DT01QQVRfQklUUz0xMQpD
T05GSUdfQVJDSF9XQU5UX0RFRkFVTFRfVE9QRE9XTl9NTUFQX0xBWU9VVD15CkNPTkZJR19DTE9O
RV9CQUNLV0FSRFM9eQpDT05GSUdfT0xEX1NJR1NVU1BFTkQzPXkKQ09ORklHX0NPTVBBVF9PTERf
U0lHQUNUSU9OPXkKQ09ORklHX0NPTVBBVF8zMkJJVF9USU1FPXkKQ09ORklHX0hBVkVfQVJDSF9W
TUFQX1NUQUNLPXkKQ09ORklHX1ZNQVBfU1RBQ0s9eQpDT05GSUdfSEFWRV9BUkNIX1JBTkRPTUla
RV9LU1RBQ0tfT0ZGU0VUPXkKIyBDT05GSUdfUkFORE9NSVpFX0tTVEFDS19PRkZTRVRfREVGQVVM
VCBpcyBub3Qgc2V0CkNPTkZJR19BUkNIX0hBU19TVFJJQ1RfS0VSTkVMX1JXWD15CkNPTkZJR19T
VFJJQ1RfS0VSTkVMX1JXWD15CkNPTkZJR19BUkNIX0hBU19TVFJJQ1RfTU9EVUxFX1JXWD15CkNP
TkZJR19TVFJJQ1RfTU9EVUxFX1JXWD15CkNPTkZJR19IQVZFX0FSQ0hfQ09NUElMRVJfSD15CkNP
TkZJR19IQVZFX0FSQ0hfUFJFTDMyX1JFTE9DQVRJT05TPXkKQ09ORklHX0FSQ0hfVVNFX01FTVJF
TUFQX1BST1Q9eQojIENPTkZJR19MT0NLX0VWRU5UX0NPVU5UUyBpcyBub3Qgc2V0CkNPTkZJR19B
UkNIX0hBU19SRUxSPXkKQ09ORklHX0FSQ0hfV0FOVF9MRF9PUlBIQU5fV0FSTj15CkNPTkZJR19I
QVZFX0FSQ0hfUEZOX1ZBTElEPXkKQ09ORklHX0FSQ0hfU1VQUE9SVFNfREVCVUdfUEFHRUFMTE9D
PXkKCiMKIyBHQ09WLWJhc2VkIGtlcm5lbCBwcm9maWxpbmcKIwojIENPTkZJR19HQ09WX0tFUk5F
TCBpcyBub3Qgc2V0CkNPTkZJR19BUkNIX0hBU19HQ09WX1BST0ZJTEVfQUxMPXkKIyBlbmQgb2Yg
R0NPVi1iYXNlZCBrZXJuZWwgcHJvZmlsaW5nCgpDT05GSUdfSEFWRV9HQ0NfUExVR0lOUz15CkNP
TkZJR19HQ0NfUExVR0lOUz15CiMgQ09ORklHX0dDQ19QTFVHSU5fTEFURU5UX0VOVFJPUFkgaXMg
bm90IHNldAojIENPTkZJR19HQ0NfUExVR0lOX1JBTkRTVFJVQ1QgaXMgbm90IHNldAojIGVuZCBv
ZiBHZW5lcmFsIGFyY2hpdGVjdHVyZS1kZXBlbmRlbnQgb3B0aW9ucwoKQ09ORklHX1JUX01VVEVY
RVM9eQpDT05GSUdfQkFTRV9TTUFMTD0wCkNPTkZJR19NT0RVTEVTPXkKIyBDT05GSUdfTU9EVUxF
X0ZPUkNFX0xPQUQgaXMgbm90IHNldApDT05GSUdfTU9EVUxFX1VOTE9BRD15CiMgQ09ORklHX01P
RFVMRV9GT1JDRV9VTkxPQUQgaXMgbm90IHNldAojIENPTkZJR19NT0RWRVJTSU9OUyBpcyBub3Qg
c2V0CiMgQ09ORklHX01PRFVMRV9TUkNWRVJTSU9OX0FMTCBpcyBub3Qgc2V0CiMgQ09ORklHX01P
RFVMRV9TSUcgaXMgbm90IHNldApDT05GSUdfTU9EVUxFX0NPTVBSRVNTX05PTkU9eQojIENPTkZJ
R19NT0RVTEVfQ09NUFJFU1NfR1pJUCBpcyBub3Qgc2V0CiMgQ09ORklHX01PRFVMRV9DT01QUkVT
U19YWiBpcyBub3Qgc2V0CiMgQ09ORklHX01PRFVMRV9DT01QUkVTU19aU1REIGlzIG5vdCBzZXQK
IyBDT05GSUdfTU9EVUxFX0FMTE9XX01JU1NJTkdfTkFNRVNQQUNFX0lNUE9SVFMgaXMgbm90IHNl
dApDT05GSUdfTU9EUFJPQkVfUEFUSD0iL3NiaW4vbW9kcHJvYmUiCkNPTkZJR19NT0RVTEVTX1RS
RUVfTE9PS1VQPXkKQ09ORklHX0JMT0NLPXkKQ09ORklHX0JMS19DR1JPVVBfUldTVEFUPXkKQ09O
RklHX0JMS19ERVZfQlNHX0NPTU1PTj15CiMgQ09ORklHX0JMS19ERVZfQlNHTElCIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQkxLX0RFVl9JTlRFR1JJVFkgaXMgbm90IHNldAojIENPTkZJR19CTEtfREVW
X1pPTkVEIGlzIG5vdCBzZXQKQ09ORklHX0JMS19ERVZfVEhST1RUTElORz15CiMgQ09ORklHX0JM
S19ERVZfVEhST1RUTElOR19MT1cgaXMgbm90IHNldAojIENPTkZJR19CTEtfV0JUIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQkxLX0NHUk9VUF9JT0xBVEVOQ1kgaXMgbm90IHNldAojIENPTkZJR19CTEtf
Q0dST1VQX0lPQ09TVCBpcyBub3Qgc2V0CiMgQ09ORklHX0JMS19DR1JPVVBfSU9QUklPIGlzIG5v
dCBzZXQKQ09ORklHX0JMS19ERUJVR19GUz15CiMgQ09ORklHX0JMS19TRURfT1BBTCBpcyBub3Qg
c2V0CiMgQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTiBpcyBub3Qgc2V0CgojCiMgUGFydGl0
aW9uIFR5cGVzCiMKIyBDT05GSUdfUEFSVElUSU9OX0FEVkFOQ0VEIGlzIG5vdCBzZXQKQ09ORklH
X01TRE9TX1BBUlRJVElPTj15CkNPTkZJR19FRklfUEFSVElUSU9OPXkKIyBlbmQgb2YgUGFydGl0
aW9uIFR5cGVzCgpDT05GSUdfQkxPQ0tfQ09NUEFUPXkKQ09ORklHX0JMS19NUV9QQ0k9eQpDT05G
SUdfQkxLX01RX1ZJUlRJTz15CkNPTkZJR19CTEtfUE09eQpDT05GSUdfQkxPQ0tfSE9MREVSX0RF
UFJFQ0FURUQ9eQoKIwojIElPIFNjaGVkdWxlcnMKIwpDT05GSUdfTVFfSU9TQ0hFRF9ERUFETElO
RT15CkNPTkZJR19NUV9JT1NDSEVEX0tZQkVSPXkKIyBDT05GSUdfSU9TQ0hFRF9CRlEgaXMgbm90
IHNldAojIGVuZCBvZiBJTyBTY2hlZHVsZXJzCgpDT05GSUdfQVNOMT15CkNPTkZJR19VTklOTElO
RV9TUElOX1VOTE9DSz15CkNPTkZJR19BUkNIX1NVUFBPUlRTX0FUT01JQ19STVc9eQpDT05GSUdf
TVVURVhfU1BJTl9PTl9PV05FUj15CkNPTkZJR19SV1NFTV9TUElOX09OX09XTkVSPXkKQ09ORklH
X0xPQ0tfU1BJTl9PTl9PV05FUj15CkNPTkZJR19BUkNIX1VTRV9RVUVVRURfU1BJTkxPQ0tTPXkK
Q09ORklHX1FVRVVFRF9TUElOTE9DS1M9eQpDT05GSUdfQVJDSF9VU0VfUVVFVUVEX1JXTE9DS1M9
eQpDT05GSUdfUVVFVUVEX1JXTE9DS1M9eQpDT05GSUdfQVJDSF9IQVNfTk9OX09WRVJMQVBQSU5H
X0FERFJFU1NfU1BBQ0U9eQpDT05GSUdfQVJDSF9IQVNfU1lTQ0FMTF9XUkFQUEVSPXkKQ09ORklH
X0ZSRUVaRVI9eQoKIwojIEV4ZWN1dGFibGUgZmlsZSBmb3JtYXRzCiMKQ09ORklHX0JJTkZNVF9F
TEY9eQpDT05GSUdfQ09NUEFUX0JJTkZNVF9FTEY9eQpDT05GSUdfQVJDSF9CSU5GTVRfRUxGX1NU
QVRFPXkKQ09ORklHX0FSQ0hfSEFWRV9FTEZfUFJPVD15CkNPTkZJR19BUkNIX1VTRV9HTlVfUFJP
UEVSVFk9eQpDT05GSUdfRUxGQ09SRT15CkNPTkZJR19DT1JFX0RVTVBfREVGQVVMVF9FTEZfSEVB
REVSUz15CkNPTkZJR19CSU5GTVRfU0NSSVBUPXkKQ09ORklHX0JJTkZNVF9NSVNDPW0KQ09ORklH
X0NPUkVEVU1QPXkKIyBlbmQgb2YgRXhlY3V0YWJsZSBmaWxlIGZvcm1hdHMKCiMKIyBNZW1vcnkg
TWFuYWdlbWVudCBvcHRpb25zCiMKQ09ORklHX1NQQVJTRU1FTT15CkNPTkZJR19TUEFSU0VNRU1f
RVhUUkVNRT15CkNPTkZJR19TUEFSU0VNRU1fVk1FTU1BUF9FTkFCTEU9eQpDT05GSUdfU1BBUlNF
TUVNX1ZNRU1NQVA9eQpDT05GSUdfSEFWRV9GQVNUX0dVUD15CkNPTkZJR19BUkNIX0tFRVBfTUVN
QkxPQ0s9eQpDT05GSUdfTUVNT1JZX0lTT0xBVElPTj15CkNPTkZJR19BUkNIX0VOQUJMRV9NRU1P
UllfSE9UUExVRz15CiMgQ09ORklHX01FTU9SWV9IT1RQTFVHIGlzIG5vdCBzZXQKQ09ORklHX0FS
Q0hfRU5BQkxFX01FTU9SWV9IT1RSRU1PVkU9eQpDT05GSUdfU1BMSVRfUFRMT0NLX0NQVVM9NApD
T05GSUdfQVJDSF9FTkFCTEVfU1BMSVRfUE1EX1BUTE9DSz15CkNPTkZJR19NRU1PUllfQkFMTE9P
Tj15CkNPTkZJR19CQUxMT09OX0NPTVBBQ1RJT049eQpDT05GSUdfQ09NUEFDVElPTj15CkNPTkZJ
R19QQUdFX1JFUE9SVElORz15CkNPTkZJR19NSUdSQVRJT049eQpDT05GSUdfQVJDSF9FTkFCTEVf
SFVHRVBBR0VfTUlHUkFUSU9OPXkKQ09ORklHX0NPTlRJR19BTExPQz15CkNPTkZJR19QSFlTX0FE
RFJfVF82NEJJVD15CkNPTkZJR19NTVVfTk9USUZJRVI9eQojIENPTkZJR19LU00gaXMgbm90IHNl
dApDT05GSUdfREVGQVVMVF9NTUFQX01JTl9BRERSPTQwOTYKQ09ORklHX0FSQ0hfU1VQUE9SVFNf
TUVNT1JZX0ZBSUxVUkU9eQpDT05GSUdfTUVNT1JZX0ZBSUxVUkU9eQojIENPTkZJR19IV1BPSVNP
Tl9JTkpFQ1QgaXMgbm90IHNldAojIENPTkZJR19UUkFOU1BBUkVOVF9IVUdFUEFHRSBpcyBub3Qg
c2V0CiMgQ09ORklHX0NMRUFOQ0FDSEUgaXMgbm90IHNldAojIENPTkZJR19GUk9OVFNXQVAgaXMg
bm90IHNldAojIENPTkZJR19DTUEgaXMgbm90IHNldAojIENPTkZJR19aUE9PTCBpcyBub3Qgc2V0
CiMgQ09ORklHX1pTTUFMTE9DIGlzIG5vdCBzZXQKQ09ORklHX0dFTkVSSUNfRUFSTFlfSU9SRU1B
UD15CiMgQ09ORklHX0RFRkVSUkVEX1NUUlVDVF9QQUdFX0lOSVQgaXMgbm90IHNldAojIENPTkZJ
R19JRExFX1BBR0VfVFJBQ0tJTkcgaXMgbm90IHNldApDT05GSUdfQVJDSF9IQVNfQ0FDSEVfTElO
RV9TSVpFPXkKQ09ORklHX0FSQ0hfSEFTX1BURV9ERVZNQVA9eQpDT05GSUdfWk9ORV9ETUE9eQpD
T05GSUdfWk9ORV9ETUEzMj15CkNPTkZJR19BUkNIX1VTRVNfSElHSF9WTUFfRkxBR1M9eQojIENP
TkZJR19QRVJDUFVfU1RBVFMgaXMgbm90IHNldAojIENPTkZJR19HVVBfVEVTVCBpcyBub3Qgc2V0
CkNPTkZJR19BUkNIX0hBU19QVEVfU1BFQ0lBTD15CkNPTkZJR19TRUNSRVRNRU09eQoKIwojIERh
dGEgQWNjZXNzIE1vbml0b3JpbmcKIwojIENPTkZJR19EQU1PTiBpcyBub3Qgc2V0CiMgZW5kIG9m
IERhdGEgQWNjZXNzIE1vbml0b3JpbmcKIyBlbmQgb2YgTWVtb3J5IE1hbmFnZW1lbnQgb3B0aW9u
cwoKQ09ORklHX05FVD15CkNPTkZJR19ORVRfSU5HUkVTUz15CkNPTkZJR19ORVRfRUdSRVNTPXkK
Q09ORklHX1NLQl9FWFRFTlNJT05TPXkKCiMKIyBOZXR3b3JraW5nIG9wdGlvbnMKIwpDT05GSUdf
UEFDS0VUPXkKIyBDT05GSUdfUEFDS0VUX0RJQUcgaXMgbm90IHNldApDT05GSUdfVU5JWD15CkNP
TkZJR19VTklYX1NDTT15CkNPTkZJR19BRl9VTklYX09PQj15CiMgQ09ORklHX1VOSVhfRElBRyBp
cyBub3Qgc2V0CiMgQ09ORklHX1RMUyBpcyBub3Qgc2V0CkNPTkZJR19YRlJNPXkKQ09ORklHX1hG
Uk1fQUxHTz15CkNPTkZJR19YRlJNX1VTRVI9bQojIENPTkZJR19YRlJNX0lOVEVSRkFDRSBpcyBu
b3Qgc2V0CkNPTkZJR19YRlJNX1NVQl9QT0xJQ1k9eQpDT05GSUdfWEZSTV9NSUdSQVRFPXkKIyBD
T05GSUdfWEZSTV9TVEFUSVNUSUNTIGlzIG5vdCBzZXQKQ09ORklHX1hGUk1fQUg9eQpDT05GSUdf
WEZSTV9FU1A9eQpDT05GSUdfWEZSTV9JUENPTVA9bQpDT05GSUdfTkVUX0tFWT1tCkNPTkZJR19O
RVRfS0VZX01JR1JBVEU9eQojIENPTkZJR19YRFBfU09DS0VUUyBpcyBub3Qgc2V0CkNPTkZJR19J
TkVUPXkKQ09ORklHX0lQX01VTFRJQ0FTVD15CkNPTkZJR19JUF9BRFZBTkNFRF9ST1VURVI9eQoj
IENPTkZJR19JUF9GSUJfVFJJRV9TVEFUUyBpcyBub3Qgc2V0CkNPTkZJR19JUF9NVUxUSVBMRV9U
QUJMRVM9eQpDT05GSUdfSVBfUk9VVEVfTVVMVElQQVRIPXkKQ09ORklHX0lQX1JPVVRFX1ZFUkJP
U0U9eQpDT05GSUdfSVBfUk9VVEVfQ0xBU1NJRD15CkNPTkZJR19JUF9QTlA9eQpDT05GSUdfSVBf
UE5QX0RIQ1A9eQpDT05GSUdfSVBfUE5QX0JPT1RQPXkKQ09ORklHX0lQX1BOUF9SQVJQPXkKQ09O
RklHX05FVF9JUElQPW0KQ09ORklHX05FVF9JUEdSRV9ERU1VWD1tCkNPTkZJR19ORVRfSVBfVFVO
TkVMPXkKQ09ORklHX05FVF9JUEdSRT1tCkNPTkZJR19ORVRfSVBHUkVfQlJPQURDQVNUPXkKQ09O
RklHX0lQX01ST1VURV9DT01NT049eQpDT05GSUdfSVBfTVJPVVRFPXkKIyBDT05GSUdfSVBfTVJP
VVRFX01VTFRJUExFX1RBQkxFUyBpcyBub3Qgc2V0CkNPTkZJR19JUF9QSU1TTV9WMT15CkNPTkZJ
R19JUF9QSU1TTV9WMj15CkNPTkZJR19TWU5fQ09PS0lFUz15CiMgQ09ORklHX05FVF9JUFZUSSBp
cyBub3Qgc2V0CkNPTkZJR19ORVRfVURQX1RVTk5FTD1tCiMgQ09ORklHX05FVF9GT1UgaXMgbm90
IHNldAojIENPTkZJR19ORVRfRk9VX0lQX1RVTk5FTFMgaXMgbm90IHNldApDT05GSUdfSU5FVF9B
SD1tCkNPTkZJR19JTkVUX0VTUD1tCiMgQ09ORklHX0lORVRfRVNQX09GRkxPQUQgaXMgbm90IHNl
dAojIENPTkZJR19JTkVUX0VTUElOVENQIGlzIG5vdCBzZXQKQ09ORklHX0lORVRfSVBDT01QPW0K
Q09ORklHX0lORVRfWEZSTV9UVU5ORUw9bQpDT05GSUdfSU5FVF9UVU5ORUw9eQpDT05GSUdfSU5F
VF9ESUFHPXkKQ09ORklHX0lORVRfVENQX0RJQUc9eQojIENPTkZJR19JTkVUX1VEUF9ESUFHIGlz
IG5vdCBzZXQKIyBDT05GSUdfSU5FVF9SQVdfRElBRyBpcyBub3Qgc2V0CiMgQ09ORklHX0lORVRf
RElBR19ERVNUUk9ZIGlzIG5vdCBzZXQKIyBDT05GSUdfVENQX0NPTkdfQURWQU5DRUQgaXMgbm90
IHNldApDT05GSUdfVENQX0NPTkdfQ1VCSUM9eQpDT05GSUdfREVGQVVMVF9UQ1BfQ09ORz0iY3Vi
aWMiCiMgQ09ORklHX1RDUF9NRDVTSUcgaXMgbm90IHNldApDT05GSUdfSVBWNj15CkNPTkZJR19J
UFY2X1JPVVRFUl9QUkVGPXkKIyBDT05GSUdfSVBWNl9ST1VURV9JTkZPIGlzIG5vdCBzZXQKIyBD
T05GSUdfSVBWNl9PUFRJTUlTVElDX0RBRCBpcyBub3Qgc2V0CkNPTkZJR19JTkVUNl9BSD15CkNP
TkZJR19JTkVUNl9FU1A9eQojIENPTkZJR19JTkVUNl9FU1BfT0ZGTE9BRCBpcyBub3Qgc2V0CiMg
Q09ORklHX0lORVQ2X0VTUElOVENQIGlzIG5vdCBzZXQKQ09ORklHX0lORVQ2X0lQQ09NUD1tCiMg
Q09ORklHX0lQVjZfTUlQNiBpcyBub3Qgc2V0CiMgQ09ORklHX0lQVjZfSUxBIGlzIG5vdCBzZXQK
Q09ORklHX0lORVQ2X1hGUk1fVFVOTkVMPW0KQ09ORklHX0lORVQ2X1RVTk5FTD1tCiMgQ09ORklH
X0lQVjZfVlRJIGlzIG5vdCBzZXQKQ09ORklHX0lQVjZfU0lUPXkKIyBDT05GSUdfSVBWNl9TSVRf
NlJEIGlzIG5vdCBzZXQKQ09ORklHX0lQVjZfTkRJU0NfTk9ERVRZUEU9eQpDT05GSUdfSVBWNl9U
VU5ORUw9bQojIENPTkZJR19JUFY2X0dSRSBpcyBub3Qgc2V0CiMgQ09ORklHX0lQVjZfTVVMVElQ
TEVfVEFCTEVTIGlzIG5vdCBzZXQKIyBDT05GSUdfSVBWNl9NUk9VVEUgaXMgbm90IHNldAojIENP
TkZJR19JUFY2X1NFRzZfTFdUVU5ORUwgaXMgbm90IHNldAojIENPTkZJR19JUFY2X1NFRzZfSE1B
QyBpcyBub3Qgc2V0CiMgQ09ORklHX0lQVjZfUlBMX0xXVFVOTkVMIGlzIG5vdCBzZXQKIyBDT05G
SUdfSVBWNl9JT0FNNl9MV1RVTk5FTCBpcyBub3Qgc2V0CiMgQ09ORklHX05FVExBQkVMIGlzIG5v
dCBzZXQKIyBDT05GSUdfTVBUQ1AgaXMgbm90IHNldAojIENPTkZJR19ORVRXT1JLX1NFQ01BUksg
aXMgbm90IHNldApDT05GSUdfTkVUX1BUUF9DTEFTU0lGWT15CiMgQ09ORklHX05FVFdPUktfUEhZ
X1RJTUVTVEFNUElORyBpcyBub3Qgc2V0CkNPTkZJR19ORVRGSUxURVI9eQpDT05GSUdfTkVURklM
VEVSX0FEVkFOQ0VEPXkKQ09ORklHX0JSSURHRV9ORVRGSUxURVI9eQoKIwojIENvcmUgTmV0Zmls
dGVyIENvbmZpZ3VyYXRpb24KIwpDT05GSUdfTkVURklMVEVSX0lOR1JFU1M9eQpDT05GSUdfTkVU
RklMVEVSX05FVExJTks9bQpDT05GSUdfTkVURklMVEVSX0ZBTUlMWV9CUklER0U9eQpDT05GSUdf
TkVURklMVEVSX0ZBTUlMWV9BUlA9eQojIENPTkZJR19ORVRGSUxURVJfTkVUTElOS19BQ0NUIGlz
IG5vdCBzZXQKQ09ORklHX05FVEZJTFRFUl9ORVRMSU5LX1FVRVVFPW0KQ09ORklHX05FVEZJTFRF
Ul9ORVRMSU5LX0xPRz1tCiMgQ09ORklHX05FVEZJTFRFUl9ORVRMSU5LX09TRiBpcyBub3Qgc2V0
CkNPTkZJR19ORl9DT05OVFJBQ0s9eQpDT05GSUdfTkZfTE9HX1NZU0xPRz1tCkNPTkZJR19ORVRG
SUxURVJfQ09OTkNPVU5UPW0KQ09ORklHX05GX0NPTk5UUkFDS19NQVJLPXkKIyBDT05GSUdfTkZf
Q09OTlRSQUNLX1pPTkVTIGlzIG5vdCBzZXQKQ09ORklHX05GX0NPTk5UUkFDS19QUk9DRlM9eQoj
IENPTkZJR19ORl9DT05OVFJBQ0tfRVZFTlRTIGlzIG5vdCBzZXQKIyBDT05GSUdfTkZfQ09OTlRS
QUNLX1RJTUVPVVQgaXMgbm90IHNldAojIENPTkZJR19ORl9DT05OVFJBQ0tfVElNRVNUQU1QIGlz
IG5vdCBzZXQKIyBDT05GSUdfTkZfQ09OTlRSQUNLX0xBQkVMUyBpcyBub3Qgc2V0CkNPTkZJR19O
Rl9DVF9QUk9UT19EQ0NQPXkKQ09ORklHX05GX0NUX1BST1RPX0dSRT15CkNPTkZJR19ORl9DVF9Q
Uk9UT19TQ1RQPXkKQ09ORklHX05GX0NUX1BST1RPX1VEUExJVEU9eQpDT05GSUdfTkZfQ09OTlRS
QUNLX0FNQU5EQT1tCkNPTkZJR19ORl9DT05OVFJBQ0tfRlRQPW0KQ09ORklHX05GX0NPTk5UUkFD
S19IMzIzPW0KQ09ORklHX05GX0NPTk5UUkFDS19JUkM9bQpDT05GSUdfTkZfQ09OTlRSQUNLX0JS
T0FEQ0FTVD1tCkNPTkZJR19ORl9DT05OVFJBQ0tfTkVUQklPU19OUz1tCiMgQ09ORklHX05GX0NP
Tk5UUkFDS19TTk1QIGlzIG5vdCBzZXQKQ09ORklHX05GX0NPTk5UUkFDS19QUFRQPW0KQ09ORklH
X05GX0NPTk5UUkFDS19TQU5FPW0KQ09ORklHX05GX0NPTk5UUkFDS19TSVA9bQpDT05GSUdfTkZf
Q09OTlRSQUNLX1RGVFA9bQpDT05GSUdfTkZfQ1RfTkVUTElOSz1tCiMgQ09ORklHX05FVEZJTFRF
Ul9ORVRMSU5LX0dMVUVfQ1QgaXMgbm90IHNldApDT05GSUdfTkZfTkFUPW0KQ09ORklHX05GX05B
VF9BTUFOREE9bQpDT05GSUdfTkZfTkFUX0ZUUD1tCkNPTkZJR19ORl9OQVRfSVJDPW0KQ09ORklH
X05GX05BVF9TSVA9bQpDT05GSUdfTkZfTkFUX1RGVFA9bQpDT05GSUdfTkZfTkFUX1JFRElSRUNU
PXkKQ09ORklHX05GX05BVF9NQVNRVUVSQURFPXkKQ09ORklHX05FVEZJTFRFUl9TWU5QUk9YWT1t
CiMgQ09ORklHX05GX1RBQkxFUyBpcyBub3Qgc2V0CkNPTkZJR19ORVRGSUxURVJfWFRBQkxFUz1t
CkNPTkZJR19ORVRGSUxURVJfWFRBQkxFU19DT01QQVQ9eQoKIwojIFh0YWJsZXMgY29tYmluZWQg
bW9kdWxlcwojCkNPTkZJR19ORVRGSUxURVJfWFRfTUFSSz1tCkNPTkZJR19ORVRGSUxURVJfWFRf
Q09OTk1BUks9bQojIENPTkZJR19ORVRGSUxURVJfWFRfU0VUIGlzIG5vdCBzZXQKCiMKIyBYdGFi
bGVzIHRhcmdldHMKIwpDT05GSUdfTkVURklMVEVSX1hUX1RBUkdFVF9DSEVDS1NVTT1tCkNPTkZJ
R19ORVRGSUxURVJfWFRfVEFSR0VUX0NMQVNTSUZZPW0KQ09ORklHX05FVEZJTFRFUl9YVF9UQVJH
RVRfQ09OTk1BUks9bQpDT05GSUdfTkVURklMVEVSX1hUX1RBUkdFVF9DVD1tCkNPTkZJR19ORVRG
SUxURVJfWFRfVEFSR0VUX0RTQ1A9bQpDT05GSUdfTkVURklMVEVSX1hUX1RBUkdFVF9ITD1tCiMg
Q09ORklHX05FVEZJTFRFUl9YVF9UQVJHRVRfSE1BUksgaXMgbm90IHNldAojIENPTkZJR19ORVRG
SUxURVJfWFRfVEFSR0VUX0lETEVUSU1FUiBpcyBub3Qgc2V0CkNPTkZJR19ORVRGSUxURVJfWFRf
VEFSR0VUX0xPRz1tCkNPTkZJR19ORVRGSUxURVJfWFRfVEFSR0VUX01BUks9bQpDT05GSUdfTkVU
RklMVEVSX1hUX05BVD1tCkNPTkZJR19ORVRGSUxURVJfWFRfVEFSR0VUX05FVE1BUD1tCkNPTkZJ
R19ORVRGSUxURVJfWFRfVEFSR0VUX05GTE9HPW0KQ09ORklHX05FVEZJTFRFUl9YVF9UQVJHRVRf
TkZRVUVVRT1tCkNPTkZJR19ORVRGSUxURVJfWFRfVEFSR0VUX05PVFJBQ0s9bQojIENPTkZJR19O
RVRGSUxURVJfWFRfVEFSR0VUX1JBVEVFU1QgaXMgbm90IHNldApDT05GSUdfTkVURklMVEVSX1hU
X1RBUkdFVF9SRURJUkVDVD1tCkNPTkZJR19ORVRGSUxURVJfWFRfVEFSR0VUX01BU1FVRVJBREU9
bQojIENPTkZJR19ORVRGSUxURVJfWFRfVEFSR0VUX1RFRSBpcyBub3Qgc2V0CiMgQ09ORklHX05F
VEZJTFRFUl9YVF9UQVJHRVRfVFBST1hZIGlzIG5vdCBzZXQKQ09ORklHX05FVEZJTFRFUl9YVF9U
QVJHRVRfVFJBQ0U9bQpDT05GSUdfTkVURklMVEVSX1hUX1RBUkdFVF9UQ1BNU1M9bQojIENPTkZJ
R19ORVRGSUxURVJfWFRfVEFSR0VUX1RDUE9QVFNUUklQIGlzIG5vdCBzZXQKCiMKIyBYdGFibGVz
IG1hdGNoZXMKIwpDT05GSUdfTkVURklMVEVSX1hUX01BVENIX0FERFJUWVBFPW0KIyBDT05GSUdf
TkVURklMVEVSX1hUX01BVENIX0JQRiBpcyBub3Qgc2V0CiMgQ09ORklHX05FVEZJTFRFUl9YVF9N
QVRDSF9DR1JPVVAgaXMgbm90IHNldAojIENPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfQ0xVU1RF
UiBpcyBub3Qgc2V0CkNPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfQ09NTUVOVD1tCkNPTkZJR19O
RVRGSUxURVJfWFRfTUFUQ0hfQ09OTkJZVEVTPW0KIyBDT05GSUdfTkVURklMVEVSX1hUX01BVENI
X0NPTk5MQUJFTCBpcyBub3Qgc2V0CkNPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfQ09OTkxJTUlU
PW0KQ09ORklHX05FVEZJTFRFUl9YVF9NQVRDSF9DT05OTUFSSz1tCkNPTkZJR19ORVRGSUxURVJf
WFRfTUFUQ0hfQ09OTlRSQUNLPW0KIyBDT05GSUdfTkVURklMVEVSX1hUX01BVENIX0NQVSBpcyBu
b3Qgc2V0CkNPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfRENDUD1tCiMgQ09ORklHX05FVEZJTFRF
Ul9YVF9NQVRDSF9ERVZHUk9VUCBpcyBub3Qgc2V0CkNPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hf
RFNDUD1tCkNPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfRUNOPW0KQ09ORklHX05FVEZJTFRFUl9Y
VF9NQVRDSF9FU1A9bQpDT05GSUdfTkVURklMVEVSX1hUX01BVENIX0hBU0hMSU1JVD1tCkNPTkZJ
R19ORVRGSUxURVJfWFRfTUFUQ0hfSEVMUEVSPW0KQ09ORklHX05FVEZJTFRFUl9YVF9NQVRDSF9I
TD1tCiMgQ09ORklHX05FVEZJTFRFUl9YVF9NQVRDSF9JUENPTVAgaXMgbm90IHNldAojIENPTkZJ
R19ORVRGSUxURVJfWFRfTUFUQ0hfSVBSQU5HRSBpcyBub3Qgc2V0CiMgQ09ORklHX05FVEZJTFRF
Ul9YVF9NQVRDSF9JUFZTIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVURklMVEVSX1hUX01BVENIX0wy
VFAgaXMgbm90IHNldApDT05GSUdfTkVURklMVEVSX1hUX01BVENIX0xFTkdUSD1tCkNPTkZJR19O
RVRGSUxURVJfWFRfTUFUQ0hfTElNSVQ9bQpDT05GSUdfTkVURklMVEVSX1hUX01BVENIX01BQz1t
CkNPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfTUFSSz1tCkNPTkZJR19ORVRGSUxURVJfWFRfTUFU
Q0hfTVVMVElQT1JUPW0KIyBDT05GSUdfTkVURklMVEVSX1hUX01BVENIX05GQUNDVCBpcyBub3Qg
c2V0CiMgQ09ORklHX05FVEZJTFRFUl9YVF9NQVRDSF9PU0YgaXMgbm90IHNldAojIENPTkZJR19O
RVRGSUxURVJfWFRfTUFUQ0hfT1dORVIgaXMgbm90IHNldApDT05GSUdfTkVURklMVEVSX1hUX01B
VENIX1BPTElDWT1tCkNPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfUEhZU0RFVj1tCkNPTkZJR19O
RVRGSUxURVJfWFRfTUFUQ0hfUEtUVFlQRT1tCkNPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfUVVP
VEE9bQojIENPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfUkFURUVTVCBpcyBub3Qgc2V0CkNPTkZJ
R19ORVRGSUxURVJfWFRfTUFUQ0hfUkVBTE09bQojIENPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hf
UkVDRU5UIGlzIG5vdCBzZXQKQ09ORklHX05FVEZJTFRFUl9YVF9NQVRDSF9TQ1RQPW0KIyBDT05G
SUdfTkVURklMVEVSX1hUX01BVENIX1NPQ0tFVCBpcyBub3Qgc2V0CkNPTkZJR19ORVRGSUxURVJf
WFRfTUFUQ0hfU1RBVEU9bQpDT05GSUdfTkVURklMVEVSX1hUX01BVENIX1NUQVRJU1RJQz1tCkNP
TkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfU1RSSU5HPW0KQ09ORklHX05FVEZJTFRFUl9YVF9NQVRD
SF9UQ1BNU1M9bQojIENPTkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfVElNRSBpcyBub3Qgc2V0CkNP
TkZJR19ORVRGSUxURVJfWFRfTUFUQ0hfVTMyPW0KIyBlbmQgb2YgQ29yZSBOZXRmaWx0ZXIgQ29u
ZmlndXJhdGlvbgoKQ09ORklHX0lQX1NFVD1tCkNPTkZJR19JUF9TRVRfTUFYPTI1NgojIENPTkZJ
R19JUF9TRVRfQklUTUFQX0lQIGlzIG5vdCBzZXQKIyBDT05GSUdfSVBfU0VUX0JJVE1BUF9JUE1B
QyBpcyBub3Qgc2V0CiMgQ09ORklHX0lQX1NFVF9CSVRNQVBfUE9SVCBpcyBub3Qgc2V0CiMgQ09O
RklHX0lQX1NFVF9IQVNIX0lQIGlzIG5vdCBzZXQKIyBDT05GSUdfSVBfU0VUX0hBU0hfSVBNQVJL
IGlzIG5vdCBzZXQKIyBDT05GSUdfSVBfU0VUX0hBU0hfSVBQT1JUIGlzIG5vdCBzZXQKIyBDT05G
SUdfSVBfU0VUX0hBU0hfSVBQT1JUSVAgaXMgbm90IHNldAojIENPTkZJR19JUF9TRVRfSEFTSF9J
UFBPUlRORVQgaXMgbm90IHNldAojIENPTkZJR19JUF9TRVRfSEFTSF9JUE1BQyBpcyBub3Qgc2V0
CiMgQ09ORklHX0lQX1NFVF9IQVNIX01BQyBpcyBub3Qgc2V0CiMgQ09ORklHX0lQX1NFVF9IQVNI
X05FVFBPUlRORVQgaXMgbm90IHNldAojIENPTkZJR19JUF9TRVRfSEFTSF9ORVQgaXMgbm90IHNl
dAojIENPTkZJR19JUF9TRVRfSEFTSF9ORVRORVQgaXMgbm90IHNldAojIENPTkZJR19JUF9TRVRf
SEFTSF9ORVRQT1JUIGlzIG5vdCBzZXQKIyBDT05GSUdfSVBfU0VUX0hBU0hfTkVUSUZBQ0UgaXMg
bm90IHNldAojIENPTkZJR19JUF9TRVRfTElTVF9TRVQgaXMgbm90IHNldApDT05GSUdfSVBfVlM9
eQpDT05GSUdfSVBfVlNfSVBWNj15CiMgQ09ORklHX0lQX1ZTX0RFQlVHIGlzIG5vdCBzZXQKQ09O
RklHX0lQX1ZTX1RBQl9CSVRTPTEyCgojCiMgSVBWUyB0cmFuc3BvcnQgcHJvdG9jb2wgbG9hZCBi
YWxhbmNpbmcgc3VwcG9ydAojCkNPTkZJR19JUF9WU19QUk9UT19UQ1A9eQpDT05GSUdfSVBfVlNf
UFJPVE9fVURQPXkKQ09ORklHX0lQX1ZTX1BST1RPX0FIX0VTUD15CkNPTkZJR19JUF9WU19QUk9U
T19FU1A9eQpDT05GSUdfSVBfVlNfUFJPVE9fQUg9eQpDT05GSUdfSVBfVlNfUFJPVE9fU0NUUD15
CgojCiMgSVBWUyBzY2hlZHVsZXIKIwpDT05GSUdfSVBfVlNfUlI9bQpDT05GSUdfSVBfVlNfV1JS
PW0KQ09ORklHX0lQX1ZTX0xDPW0KQ09ORklHX0lQX1ZTX1dMQz1tCiMgQ09ORklHX0lQX1ZTX0ZP
IGlzIG5vdCBzZXQKIyBDT05GSUdfSVBfVlNfT1ZGIGlzIG5vdCBzZXQKQ09ORklHX0lQX1ZTX0xC
TEM9bQpDT05GSUdfSVBfVlNfTEJMQ1I9bQpDT05GSUdfSVBfVlNfREg9bQpDT05GSUdfSVBfVlNf
U0g9bQojIENPTkZJR19JUF9WU19NSCBpcyBub3Qgc2V0CkNPTkZJR19JUF9WU19TRUQ9bQpDT05G
SUdfSVBfVlNfTlE9bQojIENPTkZJR19JUF9WU19UV09TIGlzIG5vdCBzZXQKCiMKIyBJUFZTIFNI
IHNjaGVkdWxlcgojCkNPTkZJR19JUF9WU19TSF9UQUJfQklUUz04CgojCiMgSVBWUyBNSCBzY2hl
ZHVsZXIKIwpDT05GSUdfSVBfVlNfTUhfVEFCX0lOREVYPTEyCgojCiMgSVBWUyBhcHBsaWNhdGlv
biBoZWxwZXIKIwojIENPTkZJR19JUF9WU19GVFAgaXMgbm90IHNldApDT05GSUdfSVBfVlNfTkZD
VD15CiMgQ09ORklHX0lQX1ZTX1BFX1NJUCBpcyBub3Qgc2V0CgojCiMgSVA6IE5ldGZpbHRlciBD
b25maWd1cmF0aW9uCiMKQ09ORklHX05GX0RFRlJBR19JUFY0PXkKIyBDT05GSUdfTkZfU09DS0VU
X0lQVjQgaXMgbm90IHNldAojIENPTkZJR19ORl9UUFJPWFlfSVBWNCBpcyBub3Qgc2V0CiMgQ09O
RklHX05GX0RVUF9JUFY0IGlzIG5vdCBzZXQKIyBDT05GSUdfTkZfTE9HX0FSUCBpcyBub3Qgc2V0
CiMgQ09ORklHX05GX0xPR19JUFY0IGlzIG5vdCBzZXQKQ09ORklHX05GX1JFSkVDVF9JUFY0PW0K
Q09ORklHX05GX05BVF9QUFRQPW0KQ09ORklHX05GX05BVF9IMzIzPW0KQ09ORklHX0lQX05GX0lQ
VEFCTEVTPW0KQ09ORklHX0lQX05GX01BVENIX0FIPW0KQ09ORklHX0lQX05GX01BVENIX0VDTj1t
CkNPTkZJR19JUF9ORl9NQVRDSF9SUEZJTFRFUj1tCkNPTkZJR19JUF9ORl9NQVRDSF9UVEw9bQpD
T05GSUdfSVBfTkZfRklMVEVSPW0KQ09ORklHX0lQX05GX1RBUkdFVF9SRUpFQ1Q9bQpDT05GSUdf
SVBfTkZfVEFSR0VUX1NZTlBST1hZPW0KQ09ORklHX0lQX05GX05BVD1tCkNPTkZJR19JUF9ORl9U
QVJHRVRfTUFTUVVFUkFERT1tCkNPTkZJR19JUF9ORl9UQVJHRVRfTkVUTUFQPW0KQ09ORklHX0lQ
X05GX1RBUkdFVF9SRURJUkVDVD1tCkNPTkZJR19JUF9ORl9NQU5HTEU9bQpDT05GSUdfSVBfTkZf
VEFSR0VUX0NMVVNURVJJUD1tCkNPTkZJR19JUF9ORl9UQVJHRVRfRUNOPW0KQ09ORklHX0lQX05G
X1RBUkdFVF9UVEw9bQpDT05GSUdfSVBfTkZfUkFXPW0KQ09ORklHX0lQX05GX1NFQ1VSSVRZPW0K
Q09ORklHX0lQX05GX0FSUFRBQkxFUz1tCkNPTkZJR19JUF9ORl9BUlBGSUxURVI9bQpDT05GSUdf
SVBfTkZfQVJQX01BTkdMRT1tCiMgZW5kIG9mIElQOiBOZXRmaWx0ZXIgQ29uZmlndXJhdGlvbgoK
IwojIElQdjY6IE5ldGZpbHRlciBDb25maWd1cmF0aW9uCiMKIyBDT05GSUdfTkZfU09DS0VUX0lQ
VjYgaXMgbm90IHNldAojIENPTkZJR19ORl9UUFJPWFlfSVBWNiBpcyBub3Qgc2V0CiMgQ09ORklH
X05GX0RVUF9JUFY2IGlzIG5vdCBzZXQKIyBDT05GSUdfTkZfUkVKRUNUX0lQVjYgaXMgbm90IHNl
dApDT05GSUdfTkZfTE9HX0lQVjY9bQpDT05GSUdfSVA2X05GX0lQVEFCTEVTPW0KIyBDT05GSUdf
SVA2X05GX01BVENIX0FIIGlzIG5vdCBzZXQKQ09ORklHX0lQNl9ORl9NQVRDSF9FVUk2ND1tCkNP
TkZJR19JUDZfTkZfTUFUQ0hfRlJBRz1tCkNPTkZJR19JUDZfTkZfTUFUQ0hfT1BUUz1tCkNPTkZJ
R19JUDZfTkZfTUFUQ0hfSEw9bQpDT05GSUdfSVA2X05GX01BVENIX0lQVjZIRUFERVI9bQojIENP
TkZJR19JUDZfTkZfTUFUQ0hfTUggaXMgbm90IHNldAojIENPTkZJR19JUDZfTkZfTUFUQ0hfUlBG
SUxURVIgaXMgbm90IHNldApDT05GSUdfSVA2X05GX01BVENIX1JUPW0KIyBDT05GSUdfSVA2X05G
X01BVENIX1NSSCBpcyBub3Qgc2V0CiMgQ09ORklHX0lQNl9ORl9UQVJHRVRfSEwgaXMgbm90IHNl
dApDT05GSUdfSVA2X05GX0ZJTFRFUj1tCiMgQ09ORklHX0lQNl9ORl9UQVJHRVRfUkVKRUNUIGlz
IG5vdCBzZXQKIyBDT05GSUdfSVA2X05GX1RBUkdFVF9TWU5QUk9YWSBpcyBub3Qgc2V0CkNPTkZJ
R19JUDZfTkZfTUFOR0xFPW0KQ09ORklHX0lQNl9ORl9SQVc9bQojIENPTkZJR19JUDZfTkZfU0VD
VVJJVFkgaXMgbm90IHNldApDT05GSUdfSVA2X05GX05BVD1tCiMgQ09ORklHX0lQNl9ORl9UQVJH
RVRfTUFTUVVFUkFERSBpcyBub3Qgc2V0CiMgQ09ORklHX0lQNl9ORl9UQVJHRVRfTlBUIGlzIG5v
dCBzZXQKIyBlbmQgb2YgSVB2NjogTmV0ZmlsdGVyIENvbmZpZ3VyYXRpb24KCkNPTkZJR19ORl9E
RUZSQUdfSVBWNj15CiMgQ09ORklHX05GX0NPTk5UUkFDS19CUklER0UgaXMgbm90IHNldApDT05G
SUdfQlJJREdFX05GX0VCVEFCTEVTPW0KQ09ORklHX0JSSURHRV9FQlRfQlJPVVRFPW0KQ09ORklH
X0JSSURHRV9FQlRfVF9GSUxURVI9bQpDT05GSUdfQlJJREdFX0VCVF9UX05BVD1tCkNPTkZJR19C
UklER0VfRUJUXzgwMl8zPW0KQ09ORklHX0JSSURHRV9FQlRfQU1PTkc9bQpDT05GSUdfQlJJREdF
X0VCVF9BUlA9bQpDT05GSUdfQlJJREdFX0VCVF9JUD1tCkNPTkZJR19CUklER0VfRUJUX0lQNj1t
CkNPTkZJR19CUklER0VfRUJUX0xJTUlUPW0KQ09ORklHX0JSSURHRV9FQlRfTUFSSz1tCkNPTkZJ
R19CUklER0VfRUJUX1BLVFRZUEU9bQpDT05GSUdfQlJJREdFX0VCVF9TVFA9bQpDT05GSUdfQlJJ
REdFX0VCVF9WTEFOPW0KQ09ORklHX0JSSURHRV9FQlRfQVJQUkVQTFk9bQpDT05GSUdfQlJJREdF
X0VCVF9ETkFUPW0KQ09ORklHX0JSSURHRV9FQlRfTUFSS19UPW0KQ09ORklHX0JSSURHRV9FQlRf
UkVESVJFQ1Q9bQpDT05GSUdfQlJJREdFX0VCVF9TTkFUPW0KQ09ORklHX0JSSURHRV9FQlRfTE9H
PW0KQ09ORklHX0JSSURHRV9FQlRfTkZMT0c9bQojIENPTkZJR19CUEZJTFRFUiBpcyBub3Qgc2V0
CiMgQ09ORklHX0lQX0RDQ1AgaXMgbm90IHNldApDT05GSUdfSVBfU0NUUD1tCiMgQ09ORklHX1ND
VFBfREJHX09CSkNOVCBpcyBub3Qgc2V0CkNPTkZJR19TQ1RQX0RFRkFVTFRfQ09PS0lFX0hNQUNf
TUQ1PXkKIyBDT05GSUdfU0NUUF9ERUZBVUxUX0NPT0tJRV9ITUFDX1NIQTEgaXMgbm90IHNldAoj
IENPTkZJR19TQ1RQX0RFRkFVTFRfQ09PS0lFX0hNQUNfTk9ORSBpcyBub3Qgc2V0CkNPTkZJR19T
Q1RQX0NPT0tJRV9ITUFDX01ENT15CiMgQ09ORklHX1NDVFBfQ09PS0lFX0hNQUNfU0hBMSBpcyBu
b3Qgc2V0CkNPTkZJR19JTkVUX1NDVFBfRElBRz1tCiMgQ09ORklHX1JEUyBpcyBub3Qgc2V0CkNP
TkZJR19USVBDPW0KQ09ORklHX1RJUENfTUVESUFfVURQPXkKQ09ORklHX1RJUENfQ1JZUFRPPXkK
Q09ORklHX1RJUENfRElBRz1tCiMgQ09ORklHX0FUTSBpcyBub3Qgc2V0CiMgQ09ORklHX0wyVFAg
aXMgbm90IHNldApDT05GSUdfU1RQPXkKQ09ORklHX0JSSURHRT15CkNPTkZJR19CUklER0VfSUdN
UF9TTk9PUElORz15CiMgQ09ORklHX0JSSURHRV9WTEFOX0ZJTFRFUklORyBpcyBub3Qgc2V0CiMg
Q09ORklHX0JSSURHRV9NUlAgaXMgbm90IHNldAojIENPTkZJR19CUklER0VfQ0ZNIGlzIG5vdCBz
ZXQKIyBDT05GSUdfTkVUX0RTQSBpcyBub3Qgc2V0CkNPTkZJR19WTEFOXzgwMjFRPW0KIyBDT05G
SUdfVkxBTl84MDIxUV9HVlJQIGlzIG5vdCBzZXQKIyBDT05GSUdfVkxBTl84MDIxUV9NVlJQIGlz
IG5vdCBzZXQKIyBDT05GSUdfREVDTkVUIGlzIG5vdCBzZXQKQ09ORklHX0xMQz15CiMgQ09ORklH
X0xMQzIgaXMgbm90IHNldAojIENPTkZJR19BVEFMSyBpcyBub3Qgc2V0CiMgQ09ORklHX1gyNSBp
cyBub3Qgc2V0CiMgQ09ORklHX0xBUEIgaXMgbm90IHNldAojIENPTkZJR19QSE9ORVQgaXMgbm90
IHNldAojIENPTkZJR182TE9XUEFOIGlzIG5vdCBzZXQKIyBDT05GSUdfSUVFRTgwMjE1NCBpcyBu
b3Qgc2V0CkNPTkZJR19ORVRfU0NIRUQ9eQoKIwojIFF1ZXVlaW5nL1NjaGVkdWxpbmcKIwpDT05G
SUdfTkVUX1NDSF9DQlE9bQpDT05GSUdfTkVUX1NDSF9IVEI9bQpDT05GSUdfTkVUX1NDSF9IRlND
PW0KQ09ORklHX05FVF9TQ0hfUFJJTz1tCiMgQ09ORklHX05FVF9TQ0hfTVVMVElRIGlzIG5vdCBz
ZXQKQ09ORklHX05FVF9TQ0hfUkVEPW0KIyBDT05GSUdfTkVUX1NDSF9TRkIgaXMgbm90IHNldApD
T05GSUdfTkVUX1NDSF9TRlE9bQpDT05GSUdfTkVUX1NDSF9URVFMPW0KQ09ORklHX05FVF9TQ0hf
VEJGPW0KIyBDT05GSUdfTkVUX1NDSF9DQlMgaXMgbm90IHNldAojIENPTkZJR19ORVRfU0NIX0VU
RiBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9TQ0hfVEFQUklPIGlzIG5vdCBzZXQKQ09ORklHX05F
VF9TQ0hfR1JFRD1tCkNPTkZJR19ORVRfU0NIX0RTTUFSSz1tCkNPTkZJR19ORVRfU0NIX05FVEVN
PW0KIyBDT05GSUdfTkVUX1NDSF9EUlIgaXMgbm90IHNldAojIENPTkZJR19ORVRfU0NIX01RUFJJ
TyBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9TQ0hfU0tCUFJJTyBpcyBub3Qgc2V0CiMgQ09ORklH
X05FVF9TQ0hfQ0hPS0UgaXMgbm90IHNldAojIENPTkZJR19ORVRfU0NIX1FGUSBpcyBub3Qgc2V0
CkNPTkZJR19ORVRfU0NIX0NPREVMPW0KQ09ORklHX05FVF9TQ0hfRlFfQ09ERUw9bQojIENPTkZJ
R19ORVRfU0NIX0NBS0UgaXMgbm90IHNldAojIENPTkZJR19ORVRfU0NIX0ZRIGlzIG5vdCBzZXQK
IyBDT05GSUdfTkVUX1NDSF9ISEYgaXMgbm90IHNldAojIENPTkZJR19ORVRfU0NIX1BJRSBpcyBu
b3Qgc2V0CkNPTkZJR19ORVRfU0NIX0lOR1JFU1M9bQojIENPTkZJR19ORVRfU0NIX1BMVUcgaXMg
bm90IHNldAojIENPTkZJR19ORVRfU0NIX0VUUyBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9TQ0hf
REVGQVVMVCBpcyBub3Qgc2V0CgojCiMgQ2xhc3NpZmljYXRpb24KIwpDT05GSUdfTkVUX0NMUz15
CkNPTkZJR19ORVRfQ0xTX0JBU0lDPXkKIyBDT05GSUdfTkVUX0NMU19UQ0lOREVYIGlzIG5vdCBz
ZXQKIyBDT05GSUdfTkVUX0NMU19ST1VURTQgaXMgbm90IHNldAojIENPTkZJR19ORVRfQ0xTX0ZX
IGlzIG5vdCBzZXQKQ09ORklHX05FVF9DTFNfVTMyPXkKIyBDT05GSUdfQ0xTX1UzMl9QRVJGIGlz
IG5vdCBzZXQKIyBDT05GSUdfQ0xTX1UzMl9NQVJLIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0NM
U19SU1ZQIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0NMU19SU1ZQNiBpcyBub3Qgc2V0CiMgQ09O
RklHX05FVF9DTFNfRkxPVyBpcyBub3Qgc2V0CkNPTkZJR19ORVRfQ0xTX0NHUk9VUD15CiMgQ09O
RklHX05FVF9DTFNfQlBGIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0NMU19GTE9XRVIgaXMgbm90
IHNldAojIENPTkZJR19ORVRfQ0xTX01BVENIQUxMIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0VN
QVRDSCBpcyBub3Qgc2V0CkNPTkZJR19ORVRfQ0xTX0FDVD15CkNPTkZJR19ORVRfQUNUX1BPTElD
RT1tCiMgQ09ORklHX05FVF9BQ1RfR0FDVCBpcyBub3Qgc2V0CkNPTkZJR19ORVRfQUNUX01JUlJF
RD1tCiMgQ09ORklHX05FVF9BQ1RfU0FNUExFIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVUX0FDVF9J
UFQgaXMgbm90IHNldAojIENPTkZJR19ORVRfQUNUX05BVCBpcyBub3Qgc2V0CiMgQ09ORklHX05F
VF9BQ1RfUEVESVQgaXMgbm90IHNldAojIENPTkZJR19ORVRfQUNUX1NJTVAgaXMgbm90IHNldAoj
IENPTkZJR19ORVRfQUNUX1NLQkVESVQgaXMgbm90IHNldAojIENPTkZJR19ORVRfQUNUX0NTVU0g
aXMgbm90IHNldAojIENPTkZJR19ORVRfQUNUX01QTFMgaXMgbm90IHNldAojIENPTkZJR19ORVRf
QUNUX1ZMQU4gaXMgbm90IHNldAojIENPTkZJR19ORVRfQUNUX0JQRiBpcyBub3Qgc2V0CiMgQ09O
RklHX05FVF9BQ1RfQ09OTk1BUksgaXMgbm90IHNldAojIENPTkZJR19ORVRfQUNUX0NUSU5GTyBp
cyBub3Qgc2V0CiMgQ09ORklHX05FVF9BQ1RfU0tCTU9EIGlzIG5vdCBzZXQKIyBDT05GSUdfTkVU
X0FDVF9JRkUgaXMgbm90IHNldAojIENPTkZJR19ORVRfQUNUX1RVTk5FTF9LRVkgaXMgbm90IHNl
dAojIENPTkZJR19ORVRfQUNUX0dBVEUgaXMgbm90IHNldAojIENPTkZJR19ORVRfVENfU0tCX0VY
VCBpcyBub3Qgc2V0CkNPTkZJR19ORVRfU0NIX0ZJRk89eQojIENPTkZJR19EQ0IgaXMgbm90IHNl
dApDT05GSUdfRE5TX1JFU09MVkVSPXkKIyBDT05GSUdfQkFUTUFOX0FEViBpcyBub3Qgc2V0CkNP
TkZJR19PUEVOVlNXSVRDSD1tCkNPTkZJR19PUEVOVlNXSVRDSF9HUkU9bQpDT05GSUdfT1BFTlZT
V0lUQ0hfVlhMQU49bQpDT05GSUdfVlNPQ0tFVFM9eQpDT05GSUdfVlNPQ0tFVFNfRElBRz15CkNP
TkZJR19WU09DS0VUU19MT09QQkFDSz15CkNPTkZJR19WSVJUSU9fVlNPQ0tFVFM9eQpDT05GSUdf
VklSVElPX1ZTT0NLRVRTX0NPTU1PTj15CiMgQ09ORklHX05FVExJTktfRElBRyBpcyBub3Qgc2V0
CkNPTkZJR19NUExTPXkKQ09ORklHX05FVF9NUExTX0dTTz1tCiMgQ09ORklHX01QTFNfUk9VVElO
RyBpcyBub3Qgc2V0CkNPTkZJR19ORVRfTlNIPW0KIyBDT05GSUdfSFNSIGlzIG5vdCBzZXQKIyBD
T05GSUdfTkVUX1NXSVRDSERFViBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9MM19NQVNURVJfREVW
IGlzIG5vdCBzZXQKIyBDT05GSUdfUVJUUiBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9OQ1NJIGlz
IG5vdCBzZXQKQ09ORklHX1BDUFVfREVWX1JFRkNOVD15CkNPTkZJR19SUFM9eQpDT05GSUdfUkZT
X0FDQ0VMPXkKQ09ORklHX1NPQ0tfUlhfUVVFVUVfTUFQUElORz15CkNPTkZJR19YUFM9eQpDT05G
SUdfQ0dST1VQX05FVF9QUklPPXkKQ09ORklHX0NHUk9VUF9ORVRfQ0xBU1NJRD15CkNPTkZJR19O
RVRfUlhfQlVTWV9QT0xMPXkKQ09ORklHX0JRTD15CiMgQ09ORklHX0JQRl9TVFJFQU1fUEFSU0VS
IGlzIG5vdCBzZXQKQ09ORklHX05FVF9GTE9XX0xJTUlUPXkKCiMKIyBOZXR3b3JrIHRlc3RpbmcK
IwpDT05GSUdfTkVUX1BLVEdFTj1tCiMgQ09ORklHX05FVF9EUk9QX01PTklUT1IgaXMgbm90IHNl
dAojIGVuZCBvZiBOZXR3b3JrIHRlc3RpbmcKIyBlbmQgb2YgTmV0d29ya2luZyBvcHRpb25zCgoj
IENPTkZJR19IQU1SQURJTyBpcyBub3Qgc2V0CiMgQ09ORklHX0NBTiBpcyBub3Qgc2V0CiMgQ09O
RklHX0JUIGlzIG5vdCBzZXQKIyBDT05GSUdfQUZfUlhSUEMgaXMgbm90IHNldAojIENPTkZJR19B
Rl9LQ00gaXMgbm90IHNldAojIENPTkZJR19NQ1RQIGlzIG5vdCBzZXQKQ09ORklHX0ZJQl9SVUxF
Uz15CkNPTkZJR19XSVJFTEVTUz15CiMgQ09ORklHX0NGRzgwMjExIGlzIG5vdCBzZXQKCiMKIyBD
Rkc4MDIxMSBuZWVkcyB0byBiZSBlbmFibGVkIGZvciBNQUM4MDIxMQojCkNPTkZJR19NQUM4MDIx
MV9TVEFfSEFTSF9NQVhfU0laRT0wCkNPTkZJR19SRktJTEw9eQpDT05GSUdfUkZLSUxMX0lOUFVU
PXkKIyBDT05GSUdfUkZLSUxMX0dQSU8gaXMgbm90IHNldAojIENPTkZJR19ORVRfOVAgaXMgbm90
IHNldAojIENPTkZJR19DQUlGIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0VQSF9MSUIgaXMgbm90IHNl
dAojIENPTkZJR19ORkMgaXMgbm90IHNldAojIENPTkZJR19QU0FNUExFIGlzIG5vdCBzZXQKIyBD
T05GSUdfTkVUX0lGRSBpcyBub3Qgc2V0CiMgQ09ORklHX0xXVFVOTkVMIGlzIG5vdCBzZXQKQ09O
RklHX0RTVF9DQUNIRT15CkNPTkZJR19HUk9fQ0VMTFM9eQpDT05GSUdfTkVUX1NPQ0tfTVNHPXkK
Q09ORklHX05FVF9ERVZMSU5LPXkKQ09ORklHX1BBR0VfUE9PTD15CkNPTkZJR19GQUlMT1ZFUj15
CkNPTkZJR19FVEhUT09MX05FVExJTks9eQoKIwojIERldmljZSBEcml2ZXJzCiMKQ09ORklHX0FS
TV9BTUJBPXkKQ09ORklHX0hBVkVfUENJPXkKQ09ORklHX1BDST15CkNPTkZJR19QQ0lfRE9NQUlO
Uz15CkNPTkZJR19QQ0lfRE9NQUlOU19HRU5FUklDPXkKQ09ORklHX1BDSV9TWVNDQUxMPXkKIyBD
T05GSUdfUENJRVBPUlRCVVMgaXMgbm90IHNldApDT05GSUdfUENJRUFTUE09eQpDT05GSUdfUENJ
RUFTUE1fREVGQVVMVD15CiMgQ09ORklHX1BDSUVBU1BNX1BPV0VSU0FWRSBpcyBub3Qgc2V0CiMg
Q09ORklHX1BDSUVBU1BNX1BPV0VSX1NVUEVSU0FWRSBpcyBub3Qgc2V0CiMgQ09ORklHX1BDSUVB
U1BNX1BFUkZPUk1BTkNFIGlzIG5vdCBzZXQKIyBDT05GSUdfUENJRV9QVE0gaXMgbm90IHNldApD
T05GSUdfUENJX01TST15CkNPTkZJR19QQ0lfTVNJX0lSUV9ET01BSU49eQpDT05GSUdfUENJX1FV
SVJLUz15CiMgQ09ORklHX1BDSV9ERUJVRyBpcyBub3Qgc2V0CiMgQ09ORklHX1BDSV9TVFVCIGlz
IG5vdCBzZXQKQ09ORklHX1BDSV9FQ0FNPXkKIyBDT05GSUdfUENJX0lPViBpcyBub3Qgc2V0CiMg
Q09ORklHX1BDSV9QUkkgaXMgbm90IHNldAojIENPTkZJR19QQ0lfUEFTSUQgaXMgbm90IHNldApD
T05GSUdfUENJX0xBQkVMPXkKIyBDT05GSUdfSE9UUExVR19QQ0kgaXMgbm90IHNldAoKIwojIFBD
SSBjb250cm9sbGVyIGRyaXZlcnMKIwojIENPTkZJR19QQ0lfRlRQQ0kxMDAgaXMgbm90IHNldApD
T05GSUdfUENJX0hPU1RfQ09NTU9OPXkKQ09ORklHX1BDSV9IT1NUX0dFTkVSSUM9eQojIENPTkZJ
R19QQ0lFX1hJTElOWCBpcyBub3Qgc2V0CiMgQ09ORklHX1BDSV9YR0VORSBpcyBub3Qgc2V0CiMg
Q09ORklHX1BDSUVfQUxURVJBIGlzIG5vdCBzZXQKIyBDT05GSUdfUENJX0hPU1RfVEhVTkRFUl9Q
RU0gaXMgbm90IHNldAojIENPTkZJR19QQ0lfSE9TVF9USFVOREVSX0VDQU0gaXMgbm90IHNldAoj
IENPTkZJR19QQ0lFX01JQ1JPQ0hJUF9IT1NUIGlzIG5vdCBzZXQKIyBDT05GSUdfUENJRV9ISVNJ
X0VSUiBpcyBub3Qgc2V0CgojCiMgRGVzaWduV2FyZSBQQ0kgQ29yZSBTdXBwb3J0CiMKIyBDT05G
SUdfUENJRV9EV19QTEFUX0hPU1QgaXMgbm90IHNldAojIENPTkZJR19QQ0lFX0RXX1BMQVRfRVAg
aXMgbm90IHNldAojIENPTkZJR19QQ0lfSElTSSBpcyBub3Qgc2V0CiMgQ09ORklHX1BDSUVfS0lS
SU4gaXMgbm90IHNldAojIENPTkZJR19QQ0lfTUVTT04gaXMgbm90IHNldAojIENPTkZJR19QQ0lF
X0FMIGlzIG5vdCBzZXQKIyBlbmQgb2YgRGVzaWduV2FyZSBQQ0kgQ29yZSBTdXBwb3J0CgojCiMg
TW9iaXZlaWwgUENJZSBDb3JlIFN1cHBvcnQKIwojIGVuZCBvZiBNb2JpdmVpbCBQQ0llIENvcmUg
U3VwcG9ydAoKIwojIENhZGVuY2UgUENJZSBjb250cm9sbGVycyBzdXBwb3J0CiMKIyBDT05GSUdf
UENJRV9DQURFTkNFX1BMQVRfSE9TVCBpcyBub3Qgc2V0CiMgQ09ORklHX1BDSUVfQ0FERU5DRV9Q
TEFUX0VQIGlzIG5vdCBzZXQKIyBDT05GSUdfUENJX0o3MjFFX0hPU1QgaXMgbm90IHNldAojIENP
TkZJR19QQ0lfSjcyMUVfRVAgaXMgbm90IHNldAojIGVuZCBvZiBDYWRlbmNlIFBDSWUgY29udHJv
bGxlcnMgc3VwcG9ydAojIGVuZCBvZiBQQ0kgY29udHJvbGxlciBkcml2ZXJzCgojCiMgUENJIEVu
ZHBvaW50CiMKQ09ORklHX1BDSV9FTkRQT0lOVD15CkNPTkZJR19QQ0lfRU5EUE9JTlRfQ09ORklH
RlM9eQojIENPTkZJR19QQ0lfRVBGX1RFU1QgaXMgbm90IHNldAojIENPTkZJR19QQ0lfRVBGX05U
QiBpcyBub3Qgc2V0CiMgZW5kIG9mIFBDSSBFbmRwb2ludAoKIwojIFBDSSBzd2l0Y2ggY29udHJv
bGxlciBkcml2ZXJzCiMKIyBDT05GSUdfUENJX1NXX1NXSVRDSFRFQyBpcyBub3Qgc2V0CiMgZW5k
IG9mIFBDSSBzd2l0Y2ggY29udHJvbGxlciBkcml2ZXJzCgojIENPTkZJR19DWExfQlVTIGlzIG5v
dCBzZXQKIyBDT05GSUdfUENDQVJEIGlzIG5vdCBzZXQKIyBDT05GSUdfUkFQSURJTyBpcyBub3Qg
c2V0CgojCiMgR2VuZXJpYyBEcml2ZXIgT3B0aW9ucwojCkNPTkZJR19BVVhJTElBUllfQlVTPXkK
IyBDT05GSUdfVUVWRU5UX0hFTFBFUiBpcyBub3Qgc2V0CkNPTkZJR19ERVZUTVBGUz15CkNPTkZJ
R19ERVZUTVBGU19NT1VOVD15CkNPTkZJR19TVEFOREFMT05FPXkKQ09ORklHX1BSRVZFTlRfRklS
TVdBUkVfQlVJTEQ9eQoKIwojIEZpcm13YXJlIGxvYWRlcgojCkNPTkZJR19GV19MT0FERVI9eQpD
T05GSUdfRVhUUkFfRklSTVdBUkU9IiIKIyBDT05GSUdfRldfTE9BREVSX1VTRVJfSEVMUEVSIGlz
IG5vdCBzZXQKIyBDT05GSUdfRldfTE9BREVSX0NPTVBSRVNTIGlzIG5vdCBzZXQKQ09ORklHX0ZX
X0NBQ0hFPXkKIyBlbmQgb2YgRmlybXdhcmUgbG9hZGVyCgpDT05GSUdfQUxMT1dfREVWX0NPUkVE
VU1QPXkKIyBDT05GSUdfREVCVUdfRFJJVkVSIGlzIG5vdCBzZXQKIyBDT05GSUdfREVCVUdfREVW
UkVTIGlzIG5vdCBzZXQKIyBDT05GSUdfREVCVUdfVEVTVF9EUklWRVJfUkVNT1ZFIGlzIG5vdCBz
ZXQKIyBDT05GSUdfVEVTVF9BU1lOQ19EUklWRVJfUFJPQkUgaXMgbm90IHNldApDT05GSUdfU1lT
X0hZUEVSVklTT1I9eQpDT05GSUdfR0VORVJJQ19DUFVfQVVUT1BST0JFPXkKQ09ORklHX0dFTkVS
SUNfQ1BVX1ZVTE5FUkFCSUxJVElFUz15CkNPTkZJR19TT0NfQlVTPXkKQ09ORklHX0RNQV9TSEFS
RURfQlVGRkVSPXkKIyBDT05GSUdfRE1BX0ZFTkNFX1RSQUNFIGlzIG5vdCBzZXQKQ09ORklHX0dF
TkVSSUNfQVJDSF9UT1BPTE9HWT15CkNPTkZJR19HRU5FUklDX0FSQ0hfTlVNQT15CiMgZW5kIG9m
IEdlbmVyaWMgRHJpdmVyIE9wdGlvbnMKCiMKIyBCdXMgZGV2aWNlcwojCiMgQ09ORklHX0JSQ01T
VEJfR0lTQl9BUkIgaXMgbm90IHNldAojIENPTkZJR19WRVhQUkVTU19DT05GSUcgaXMgbm90IHNl
dAojIENPTkZJR19NSElfQlVTIGlzIG5vdCBzZXQKIyBlbmQgb2YgQnVzIGRldmljZXMKCiMgQ09O
RklHX0NPTk5FQ1RPUiBpcyBub3Qgc2V0CgojCiMgRmlybXdhcmUgRHJpdmVycwojCgojCiMgQVJN
IFN5c3RlbSBDb250cm9sIGFuZCBNYW5hZ2VtZW50IEludGVyZmFjZSBQcm90b2NvbAojCiMgQ09O
RklHX0FSTV9TQ01JX1BST1RPQ09MIGlzIG5vdCBzZXQKIyBlbmQgb2YgQVJNIFN5c3RlbSBDb250
cm9sIGFuZCBNYW5hZ2VtZW50IEludGVyZmFjZSBQcm90b2NvbAoKQ09ORklHX0FSTV9TQ1BJX1BS
T1RPQ09MPXkKQ09ORklHX0FSTV9TQ1BJX1BPV0VSX0RPTUFJTj15CiMgQ09ORklHX0FSTV9TREVf
SU5URVJGQUNFIGlzIG5vdCBzZXQKQ09ORklHX0RNSUlEPXkKIyBDT05GSUdfRE1JX1NZU0ZTIGlz
IG5vdCBzZXQKIyBDT05GSUdfSVNDU0lfSUJGVCBpcyBub3Qgc2V0CiMgQ09ORklHX0ZXX0NGR19T
WVNGUyBpcyBub3Qgc2V0CkNPTkZJR19TWVNGQj15CiMgQ09ORklHX1NZU0ZCX1NJTVBMRUZCIGlz
IG5vdCBzZXQKIyBDT05GSUdfQUxUUkFfQ1BVRUNUTFJfRUwxIGlzIG5vdCBzZXQKIyBDT05GSUdf
QVJNX0ZGQV9UUkFOU1BPUlQgaXMgbm90IHNldAojIENPTkZJR19HT09HTEVfRklSTVdBUkUgaXMg
bm90IHNldAoKIwojIEVGSSAoRXh0ZW5zaWJsZSBGaXJtd2FyZSBJbnRlcmZhY2UpIFN1cHBvcnQK
IwpDT05GSUdfRUZJX0VTUlQ9eQpDT05GSUdfRUZJX1ZBUlNfUFNUT1JFPXkKIyBDT05GSUdfRUZJ
X1ZBUlNfUFNUT1JFX0RFRkFVTFRfRElTQUJMRSBpcyBub3Qgc2V0CkNPTkZJR19FRklfUEFSQU1T
X0ZST01fRkRUPXkKQ09ORklHX0VGSV9SVU5USU1FX1dSQVBQRVJTPXkKQ09ORklHX0VGSV9HRU5F
UklDX1NUVUI9eQpDT05GSUdfRUZJX0FSTVNUVUJfRFRCX0xPQURFUj15CiMgQ09ORklHX0VGSV9H
RU5FUklDX1NUVUJfSU5JVFJEX0NNRExJTkVfTE9BREVSIGlzIG5vdCBzZXQKIyBDT05GSUdfRUZJ
X0JPT1RMT0FERVJfQ09OVFJPTCBpcyBub3Qgc2V0CiMgQ09ORklHX0VGSV9DQVBTVUxFX0xPQURF
UiBpcyBub3Qgc2V0CiMgQ09ORklHX0VGSV9URVNUIGlzIG5vdCBzZXQKIyBDT05GSUdfUkVTRVRf
QVRUQUNLX01JVElHQVRJT04gaXMgbm90IHNldAojIENPTkZJR19FRklfRElTQUJMRV9QQ0lfRE1B
IGlzIG5vdCBzZXQKIyBlbmQgb2YgRUZJIChFeHRlbnNpYmxlIEZpcm13YXJlIEludGVyZmFjZSkg
U3VwcG9ydAoKQ09ORklHX1VFRklfQ1BFUj15CkNPTkZJR19VRUZJX0NQRVJfQVJNPXkKQ09ORklH
X0VGSV9FQVJMWUNPTj15CkNPTkZJR19FRklfQ1VTVE9NX1NTRFRfT1ZFUkxBWVM9eQpDT05GSUdf
QVJNX1BTQ0lfRlc9eQojIENPTkZJR19BUk1fUFNDSV9DSEVDS0VSIGlzIG5vdCBzZXQKQ09ORklH
X0hBVkVfQVJNX1NNQ0NDPXkKQ09ORklHX0hBVkVfQVJNX1NNQ0NDX0RJU0NPVkVSWT15CkNPTkZJ
R19BUk1fU01DQ0NfU09DX0lEPXkKCiMKIyBUZWdyYSBmaXJtd2FyZSBkcml2ZXIKIwojIGVuZCBv
ZiBUZWdyYSBmaXJtd2FyZSBkcml2ZXIKIyBlbmQgb2YgRmlybXdhcmUgRHJpdmVycwoKIyBDT05G
SUdfR05TUyBpcyBub3Qgc2V0CiMgQ09ORklHX01URCBpcyBub3Qgc2V0CkNPTkZJR19EVEM9eQpD
T05GSUdfT0Y9eQojIENPTkZJR19PRl9VTklUVEVTVCBpcyBub3Qgc2V0CkNPTkZJR19PRl9GTEFU
VFJFRT15CkNPTkZJR19PRl9FQVJMWV9GTEFUVFJFRT15CkNPTkZJR19PRl9LT0JKPXkKQ09ORklH
X09GX0FERFJFU1M9eQpDT05GSUdfT0ZfSVJRPXkKQ09ORklHX09GX05FVD15CkNPTkZJR19PRl9S
RVNFUlZFRF9NRU09eQojIENPTkZJR19PRl9PVkVSTEFZIGlzIG5vdCBzZXQKQ09ORklHX09GX05V
TUE9eQojIENPTkZJR19QQVJQT1JUIGlzIG5vdCBzZXQKQ09ORklHX1BOUD15CkNPTkZJR19QTlBf
REVCVUdfTUVTU0FHRVM9eQoKIwojIFByb3RvY29scwojCkNPTkZJR19QTlBBQ1BJPXkKQ09ORklH
X0JMS19ERVY9eQojIENPTkZJR19CTEtfREVWX05VTExfQkxLIGlzIG5vdCBzZXQKIyBDT05GSUdf
QkxLX0RFVl9QQ0lFU1NEX01USVAzMlhYIGlzIG5vdCBzZXQKQ09ORklHX0JMS19ERVZfTE9PUD15
CkNPTkZJR19CTEtfREVWX0xPT1BfTUlOX0NPVU5UPTgKQ09ORklHX0JMS19ERVZfQ1JZUFRPTE9P
UD1tCiMgQ09ORklHX0JMS19ERVZfRFJCRCBpcyBub3Qgc2V0CkNPTkZJR19CTEtfREVWX05CRD1t
CiMgQ09ORklHX0JMS19ERVZfU1g4IGlzIG5vdCBzZXQKQ09ORklHX0JMS19ERVZfUkFNPXkKQ09O
RklHX0JMS19ERVZfUkFNX0NPVU5UPTE2CkNPTkZJR19CTEtfREVWX1JBTV9TSVpFPTQwOTYKIyBD
T05GSUdfQ0RST01fUEtUQ0RWRCBpcyBub3Qgc2V0CiMgQ09ORklHX0FUQV9PVkVSX0VUSCBpcyBu
b3Qgc2V0CkNPTkZJR19YRU5fQkxLREVWX0ZST05URU5EPXkKQ09ORklHX1hFTl9CTEtERVZfQkFD
S0VORD1tCkNPTkZJR19WSVJUSU9fQkxLPXkKIyBDT05GSUdfQkxLX0RFVl9SQkQgaXMgbm90IHNl
dAojIENPTkZJR19CTEtfREVWX1JTWFggaXMgbm90IHNldAoKIwojIE5WTUUgU3VwcG9ydAojCkNP
TkZJR19OVk1FX0NPUkU9eQpDT05GSUdfQkxLX0RFVl9OVk1FPXkKIyBDT05GSUdfTlZNRV9NVUxU
SVBBVEggaXMgbm90IHNldAojIENPTkZJR19OVk1FX0hXTU9OIGlzIG5vdCBzZXQKIyBDT05GSUdf
TlZNRV9GQyBpcyBub3Qgc2V0CiMgQ09ORklHX05WTUVfVENQIGlzIG5vdCBzZXQKIyBDT05GSUdf
TlZNRV9UQVJHRVQgaXMgbm90IHNldAojIGVuZCBvZiBOVk1FIFN1cHBvcnQKCiMKIyBNaXNjIGRl
dmljZXMKIwojIENPTkZJR19BRDUyNVhfRFBPVCBpcyBub3Qgc2V0CiMgQ09ORklHX0RVTU1ZX0lS
USBpcyBub3Qgc2V0CiMgQ09ORklHX1BIQU5UT00gaXMgbm90IHNldAojIENPTkZJR19USUZNX0NP
UkUgaXMgbm90IHNldAojIENPTkZJR19JQ1M5MzJTNDAxIGlzIG5vdCBzZXQKIyBDT05GSUdfRU5D
TE9TVVJFX1NFUlZJQ0VTIGlzIG5vdCBzZXQKIyBDT05GSUdfSFBfSUxPIGlzIG5vdCBzZXQKIyBD
T05GSUdfQVBEUzk4MDJBTFMgaXMgbm90IHNldAojIENPTkZJR19JU0wyOTAwMyBpcyBub3Qgc2V0
CiMgQ09ORklHX0lTTDI5MDIwIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19UU0wyNTUwIGlz
IG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19CSDE3NzAgaXMgbm90IHNldAojIENPTkZJR19TRU5T
T1JTX0FQRFM5OTBYIGlzIG5vdCBzZXQKIyBDT05GSUdfSE1DNjM1MiBpcyBub3Qgc2V0CiMgQ09O
RklHX0RTMTY4MiBpcyBub3Qgc2V0CiMgQ09ORklHX1NSQU0gaXMgbm90IHNldAojIENPTkZJR19E
V19YREFUQV9QQ0lFIGlzIG5vdCBzZXQKIyBDT05GSUdfUENJX0VORFBPSU5UX1RFU1QgaXMgbm90
IHNldAojIENPTkZJR19YSUxJTlhfU0RGRUMgaXMgbm90IHNldAojIENPTkZJR19DMlBPUlQgaXMg
bm90IHNldAoKIwojIEVFUFJPTSBzdXBwb3J0CiMKIyBDT05GSUdfRUVQUk9NX0FUMjQgaXMgbm90
IHNldAojIENPTkZJR19FRVBST01fTEVHQUNZIGlzIG5vdCBzZXQKIyBDT05GSUdfRUVQUk9NX01B
WDY4NzUgaXMgbm90IHNldAojIENPTkZJR19FRVBST01fOTNDWDYgaXMgbm90IHNldAojIENPTkZJ
R19FRVBST01fSURUXzg5SFBFU1ggaXMgbm90IHNldAojIENPTkZJR19FRVBST01fRUUxMDA0IGlz
IG5vdCBzZXQKIyBlbmQgb2YgRUVQUk9NIHN1cHBvcnQKCiMgQ09ORklHX0NCNzEwX0NPUkUgaXMg
bm90IHNldAoKIwojIFRleGFzIEluc3RydW1lbnRzIHNoYXJlZCB0cmFuc3BvcnQgbGluZSBkaXNj
aXBsaW5lCiMKIyBDT05GSUdfVElfU1QgaXMgbm90IHNldAojIGVuZCBvZiBUZXhhcyBJbnN0cnVt
ZW50cyBzaGFyZWQgdHJhbnNwb3J0IGxpbmUgZGlzY2lwbGluZQoKIyBDT05GSUdfU0VOU09SU19M
SVMzX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX0FMVEVSQV9TVEFQTCBpcyBub3Qgc2V0CiMgQ09O
RklHX0dFTldRRSBpcyBub3Qgc2V0CiMgQ09ORklHX0VDSE8gaXMgbm90IHNldAojIENPTkZJR19C
Q01fVksgaXMgbm90IHNldAojIENPTkZJR19NSVNDX0FMQ09SX1BDSSBpcyBub3Qgc2V0CiMgQ09O
RklHX01JU0NfUlRTWF9QQ0kgaXMgbm90IHNldAojIENPTkZJR19NSVNDX1JUU1hfVVNCIGlzIG5v
dCBzZXQKIyBDT05GSUdfSEFCQU5BX0FJIGlzIG5vdCBzZXQKIyBDT05GSUdfVUFDQ0UgaXMgbm90
IHNldAojIENPTkZJR19QVlBBTklDIGlzIG5vdCBzZXQKIyBlbmQgb2YgTWlzYyBkZXZpY2VzCgoj
CiMgU0NTSSBkZXZpY2Ugc3VwcG9ydAojCkNPTkZJR19TQ1NJX01PRD15CiMgQ09ORklHX1JBSURf
QVRUUlMgaXMgbm90IHNldApDT05GSUdfU0NTSV9DT01NT049eQpDT05GSUdfU0NTST15CkNPTkZJ
R19TQ1NJX0RNQT15CkNPTkZJR19TQ1NJX1BST0NfRlM9eQoKIwojIFNDU0kgc3VwcG9ydCB0eXBl
IChkaXNrLCB0YXBlLCBDRC1ST00pCiMKQ09ORklHX0JMS19ERVZfU0Q9eQojIENPTkZJR19DSFJf
REVWX1NUIGlzIG5vdCBzZXQKIyBDT05GSUdfQkxLX0RFVl9TUiBpcyBub3Qgc2V0CiMgQ09ORklH
X0NIUl9ERVZfU0cgaXMgbm90IHNldApDT05GSUdfQkxLX0RFVl9CU0c9eQojIENPTkZJR19DSFJf
REVWX1NDSCBpcyBub3Qgc2V0CiMgQ09ORklHX1NDU0lfQ09OU1RBTlRTIGlzIG5vdCBzZXQKIyBD
T05GSUdfU0NTSV9MT0dHSU5HIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9TQ0FOX0FTWU5DIGlz
IG5vdCBzZXQKCiMKIyBTQ1NJIFRyYW5zcG9ydHMKIwojIENPTkZJR19TQ1NJX1NQSV9BVFRSUyBp
cyBub3Qgc2V0CiMgQ09ORklHX1NDU0lfRkNfQVRUUlMgaXMgbm90IHNldAojIENPTkZJR19TQ1NJ
X0lTQ1NJX0FUVFJTIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9TQVNfQVRUUlMgaXMgbm90IHNl
dAojIENPTkZJR19TQ1NJX1NBU19MSUJTQVMgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX1NSUF9B
VFRSUyBpcyBub3Qgc2V0CiMgZW5kIG9mIFNDU0kgVHJhbnNwb3J0cwoKQ09ORklHX1NDU0lfTE9X
TEVWRUw9eQojIENPTkZJR19JU0NTSV9UQ1AgaXMgbm90IHNldAojIENPTkZJR19JU0NTSV9CT09U
X1NZU0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9DWEdCM19JU0NTSSBpcyBub3Qgc2V0CiMg
Q09ORklHX1NDU0lfQ1hHQjRfSVNDU0kgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX0JOWDJfSVND
U0kgaXMgbm90IHNldAojIENPTkZJR19CRTJJU0NTSSBpcyBub3Qgc2V0CiMgQ09ORklHX0JMS19E
RVZfM1dfWFhYWF9SQUlEIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9IUFNBIGlzIG5vdCBzZXQK
IyBDT05GSUdfU0NTSV8zV185WFhYIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV8zV19TQVMgaXMg
bm90IHNldAojIENPTkZJR19TQ1NJX0FDQVJEIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9BQUNS
QUlEIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9BSUM3WFhYIGlzIG5vdCBzZXQKIyBDT05GSUdf
U0NTSV9BSUM3OVhYIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9BSUM5NFhYIGlzIG5vdCBzZXQK
IyBDT05GSUdfU0NTSV9NVlNBUyBpcyBub3Qgc2V0CiMgQ09ORklHX1NDU0lfTVZVTUkgaXMgbm90
IHNldAojIENPTkZJR19TQ1NJX0FEVkFOU1lTIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9BUkNN
U1IgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX0VTQVMyUiBpcyBub3Qgc2V0CiMgQ09ORklHX01F
R0FSQUlEX05FV0dFTiBpcyBub3Qgc2V0CiMgQ09ORklHX01FR0FSQUlEX0xFR0FDWSBpcyBub3Qg
c2V0CiMgQ09ORklHX01FR0FSQUlEX1NBUyBpcyBub3Qgc2V0CiMgQ09ORklHX1NDU0lfTVBUM1NB
UyBpcyBub3Qgc2V0CiMgQ09ORklHX1NDU0lfTVBUMlNBUyBpcyBub3Qgc2V0CiMgQ09ORklHX1ND
U0lfTVBJM01SIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9TTUFSVFBRSSBpcyBub3Qgc2V0CiMg
Q09ORklHX1NDU0lfVUZTSENEIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9IUFRJT1AgaXMgbm90
IHNldAojIENPTkZJR19TQ1NJX01ZUkIgaXMgbm90IHNldAojIENPTkZJR19TQ1NJX01ZUlMgaXMg
bm90IHNldApDT05GSUdfWEVOX1NDU0lfRlJPTlRFTkQ9bQojIENPTkZJR19TQ1NJX1NOSUMgaXMg
bm90IHNldAojIENPTkZJR19TQ1NJX0RNWDMxOTFEIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9G
RE9NQUlOX1BDSSBpcyBub3Qgc2V0CiMgQ09ORklHX1NDU0lfSVBTIGlzIG5vdCBzZXQKIyBDT05G
SUdfU0NTSV9JTklUSU8gaXMgbm90IHNldAojIENPTkZJR19TQ1NJX0lOSUExMDAgaXMgbm90IHNl
dAojIENPTkZJR19TQ1NJX1NURVggaXMgbm90IHNldAojIENPTkZJR19TQ1NJX1NZTTUzQzhYWF8y
IGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9RTE9HSUNfMTI4MCBpcyBub3Qgc2V0CiMgQ09ORklH
X1NDU0lfUUxBX0lTQ1NJIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9EQzM5NXggaXMgbm90IHNl
dAojIENPTkZJR19TQ1NJX0FNNTNDOTc0IGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9XRDcxOVgg
aXMgbm90IHNldAojIENPTkZJR19TQ1NJX0RFQlVHIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9Q
TUNSQUlEIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NTSV9QTTgwMDEgaXMgbm90IHNldApDT05GSUdf
U0NTSV9WSVJUSU89eQojIENPTkZJR19TQ1NJX0RIIGlzIG5vdCBzZXQKIyBlbmQgb2YgU0NTSSBk
ZXZpY2Ugc3VwcG9ydAoKQ09ORklHX0hBVkVfUEFUQV9QTEFURk9STT15CiMgQ09ORklHX0FUQSBp
cyBub3Qgc2V0CkNPTkZJR19NRD15CkNPTkZJR19CTEtfREVWX01EPXkKQ09ORklHX01EX0FVVE9E
RVRFQ1Q9eQpDT05GSUdfTURfTElORUFSPXkKQ09ORklHX01EX1JBSUQwPXkKQ09ORklHX01EX1JB
SUQxPXkKQ09ORklHX01EX1JBSUQxMD15CkNPTkZJR19NRF9SQUlENDU2PXkKQ09ORklHX01EX01V
TFRJUEFUSD15CkNPTkZJR19NRF9GQVVMVFk9eQojIENPTkZJR19CQ0FDSEUgaXMgbm90IHNldApD
T05GSUdfQkxLX0RFVl9ETV9CVUlMVElOPXkKQ09ORklHX0JMS19ERVZfRE09eQojIENPTkZJR19E
TV9ERUJVRyBpcyBub3Qgc2V0CkNPTkZJR19ETV9CVUZJTz15CiMgQ09ORklHX0RNX0RFQlVHX0JM
T0NLX01BTkFHRVJfTE9DS0lORyBpcyBub3Qgc2V0CkNPTkZJR19ETV9CSU9fUFJJU09OPW0KQ09O
RklHX0RNX1BFUlNJU1RFTlRfREFUQT1tCiMgQ09ORklHX0RNX1VOU1RSSVBFRCBpcyBub3Qgc2V0
CkNPTkZJR19ETV9DUllQVD15CkNPTkZJR19ETV9TTkFQU0hPVD15CkNPTkZJR19ETV9USElOX1BS
T1ZJU0lPTklORz1tCiMgQ09ORklHX0RNX0NBQ0hFIGlzIG5vdCBzZXQKIyBDT05GSUdfRE1fV1JJ
VEVDQUNIRSBpcyBub3Qgc2V0CiMgQ09ORklHX0RNX0VCUyBpcyBub3Qgc2V0CiMgQ09ORklHX0RN
X0VSQSBpcyBub3Qgc2V0CiMgQ09ORklHX0RNX0NMT05FIGlzIG5vdCBzZXQKQ09ORklHX0RNX01J
UlJPUj15CiMgQ09ORklHX0RNX0xPR19VU0VSU1BBQ0UgaXMgbm90IHNldAojIENPTkZJR19ETV9S
QUlEIGlzIG5vdCBzZXQKQ09ORklHX0RNX1pFUk89eQojIENPTkZJR19ETV9NVUxUSVBBVEggaXMg
bm90IHNldAojIENPTkZJR19ETV9ERUxBWSBpcyBub3Qgc2V0CiMgQ09ORklHX0RNX0RVU1QgaXMg
bm90IHNldAojIENPTkZJR19ETV9JTklUIGlzIG5vdCBzZXQKIyBDT05GSUdfRE1fVUVWRU5UIGlz
IG5vdCBzZXQKIyBDT05GSUdfRE1fRkxBS0VZIGlzIG5vdCBzZXQKIyBDT05GSUdfRE1fVkVSSVRZ
IGlzIG5vdCBzZXQKIyBDT05GSUdfRE1fU1dJVENIIGlzIG5vdCBzZXQKIyBDT05GSUdfRE1fTE9H
X1dSSVRFUyBpcyBub3Qgc2V0CiMgQ09ORklHX0RNX0lOVEVHUklUWSBpcyBub3Qgc2V0CiMgQ09O
RklHX1RBUkdFVF9DT1JFIGlzIG5vdCBzZXQKIyBDT05GSUdfRlVTSU9OIGlzIG5vdCBzZXQKCiMK
IyBJRUVFIDEzOTQgKEZpcmVXaXJlKSBzdXBwb3J0CiMKIyBDT05GSUdfRklSRVdJUkUgaXMgbm90
IHNldAojIENPTkZJR19GSVJFV0lSRV9OT1NZIGlzIG5vdCBzZXQKIyBlbmQgb2YgSUVFRSAxMzk0
IChGaXJlV2lyZSkgc3VwcG9ydAoKQ09ORklHX05FVERFVklDRVM9eQpDT05GSUdfTkVUX0NPUkU9
eQpDT05GSUdfQk9ORElORz1tCkNPTkZJR19EVU1NWT1tCiMgQ09ORklHX1dJUkVHVUFSRCBpcyBu
b3Qgc2V0CiMgQ09ORklHX0VRVUFMSVpFUiBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9GQyBpcyBu
b3Qgc2V0CiMgQ09ORklHX0lGQiBpcyBub3Qgc2V0CiMgQ09ORklHX05FVF9URUFNIGlzIG5vdCBz
ZXQKQ09ORklHX01BQ1ZMQU49eQojIENPTkZJR19NQUNWVEFQIGlzIG5vdCBzZXQKIyBDT05GSUdf
SVBWTEFOIGlzIG5vdCBzZXQKQ09ORklHX1ZYTEFOPW0KIyBDT05GSUdfR0VORVZFIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQkFSRVVEUCBpcyBub3Qgc2V0CiMgQ09ORklHX0dUUCBpcyBub3Qgc2V0CiMg
Q09ORklHX01BQ1NFQyBpcyBub3Qgc2V0CkNPTkZJR19ORVRDT05TT0xFPXkKIyBDT05GSUdfTkVU
Q09OU09MRV9EWU5BTUlDIGlzIG5vdCBzZXQKQ09ORklHX05FVFBPTEw9eQpDT05GSUdfTkVUX1BP
TExfQ09OVFJPTExFUj15CkNPTkZJR19UVU49bQojIENPTkZJR19UVU5fVk5FVF9DUk9TU19MRSBp
cyBub3Qgc2V0CkNPTkZJR19WRVRIPXkKQ09ORklHX1ZJUlRJT19ORVQ9eQojIENPTkZJR19OTE1P
TiBpcyBub3Qgc2V0CiMgQ09ORklHX0FSQ05FVCBpcyBub3Qgc2V0CkNPTkZJR19FVEhFUk5FVD15
CkNPTkZJR19ORVRfVkVORE9SXzNDT009eQojIENPTkZJR19WT1JURVggaXMgbm90IHNldAojIENP
TkZJR19UWVBIT09OIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfQURBUFRFQz15CiMgQ09O
RklHX0FEQVBURUNfU1RBUkZJUkUgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9BR0VSRT15
CiMgQ09ORklHX0VUMTMxWCBpcyBub3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SX0FMQUNSSVRFQ0g9
eQojIENPTkZJR19TTElDT1NTIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfQUxURU9OPXkK
IyBDT05GSUdfQUNFTklDIGlzIG5vdCBzZXQKIyBDT05GSUdfQUxURVJBX1RTRSBpcyBub3Qgc2V0
CkNPTkZJR19ORVRfVkVORE9SX0FNQVpPTj15CiMgQ09ORklHX0VOQV9FVEhFUk5FVCBpcyBub3Qg
c2V0CkNPTkZJR19ORVRfVkVORE9SX0FNRD15CiMgQ09ORklHX0FNRDgxMTFfRVRIIGlzIG5vdCBz
ZXQKIyBDT05GSUdfUENORVQzMiBpcyBub3Qgc2V0CiMgQ09ORklHX0FNRF9YR0JFIGlzIG5vdCBz
ZXQKQ09ORklHX05FVF9WRU5ET1JfQVFVQU5USUE9eQojIENPTkZJR19BUVRJT04gaXMgbm90IHNl
dApDT05GSUdfTkVUX1ZFTkRPUl9BUkM9eQpDT05GSUdfTkVUX1ZFTkRPUl9BVEhFUk9TPXkKIyBD
T05GSUdfQVRMMiBpcyBub3Qgc2V0CiMgQ09ORklHX0FUTDEgaXMgbm90IHNldAojIENPTkZJR19B
VEwxRSBpcyBub3Qgc2V0CiMgQ09ORklHX0FUTDFDIGlzIG5vdCBzZXQKIyBDT05GSUdfQUxYIGlz
IG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfQlJPQURDT009eQojIENPTkZJR19CNDQgaXMgbm90
IHNldAojIENPTkZJR19CQ01HRU5FVCBpcyBub3Qgc2V0CiMgQ09ORklHX0JOWDIgaXMgbm90IHNl
dAojIENPTkZJR19DTklDIGlzIG5vdCBzZXQKIyBDT05GSUdfVElHT04zIGlzIG5vdCBzZXQKIyBD
T05GSUdfQk5YMlggaXMgbm90IHNldAojIENPTkZJR19TWVNURU1QT1JUIGlzIG5vdCBzZXQKQ09O
RklHX0JOWFQ9eQpDT05GSUdfQk5YVF9GTE9XRVJfT0ZGTE9BRD15CkNPTkZJR19CTlhUX0hXTU9O
PXkKQ09ORklHX05FVF9WRU5ET1JfQlJPQ0FERT15CiMgQ09ORklHX0JOQSBpcyBub3Qgc2V0CkNP
TkZJR19ORVRfVkVORE9SX0NBREVOQ0U9eQojIENPTkZJR19NQUNCIGlzIG5vdCBzZXQKQ09ORklH
X05FVF9WRU5ET1JfQ0FWSVVNPXkKIyBDT05GSUdfVEhVTkRFUl9OSUNfUEYgaXMgbm90IHNldAoj
IENPTkZJR19USFVOREVSX05JQ19WRiBpcyBub3Qgc2V0CiMgQ09ORklHX1RIVU5ERVJfTklDX0JH
WCBpcyBub3Qgc2V0CiMgQ09ORklHX1RIVU5ERVJfTklDX1JHWCBpcyBub3Qgc2V0CiMgQ09ORklH
X0NBVklVTV9QVFAgaXMgbm90IHNldAojIENPTkZJR19MSVFVSURJTyBpcyBub3Qgc2V0CiMgQ09O
RklHX0xJUVVJRElPX1ZGIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfQ0hFTFNJTz15CiMg
Q09ORklHX0NIRUxTSU9fVDEgaXMgbm90IHNldAojIENPTkZJR19DSEVMU0lPX1QzIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQ0hFTFNJT19UNCBpcyBub3Qgc2V0CiMgQ09ORklHX0NIRUxTSU9fVDRWRiBp
cyBub3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SX0NJU0NPPXkKIyBDT05GSUdfRU5JQyBpcyBub3Qg
c2V0CkNPTkZJR19ORVRfVkVORE9SX0NPUlRJTkE9eQojIENPTkZJR19HRU1JTklfRVRIRVJORVQg
aXMgbm90IHNldAojIENPTkZJR19ETkVUIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfREVD
PXkKIyBDT05GSUdfTkVUX1RVTElQIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfRExJTks9
eQojIENPTkZJR19ETDJLIGlzIG5vdCBzZXQKIyBDT05GSUdfU1VOREFOQ0UgaXMgbm90IHNldApD
T05GSUdfTkVUX1ZFTkRPUl9FTVVMRVg9eQojIENPTkZJR19CRTJORVQgaXMgbm90IHNldApDT05G
SUdfTkVUX1ZFTkRPUl9FWkNISVA9eQojIENPTkZJR19FWkNISVBfTlBTX01BTkFHRU1FTlRfRU5F
VCBpcyBub3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SX0dPT0dMRT15CiMgQ09ORklHX0dWRSBpcyBu
b3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SX0hJU0lMSUNPTj15CiMgQ09ORklHX0hJWDVIRDJfR01B
QyBpcyBub3Qgc2V0CiMgQ09ORklHX0hJU0lfRkVNQUMgaXMgbm90IHNldAojIENPTkZJR19ISVAw
NF9FVEggaXMgbm90IHNldAojIENPTkZJR19ITlNfRFNBRiBpcyBub3Qgc2V0CiMgQ09ORklHX0hO
U19FTkVUIGlzIG5vdCBzZXQKIyBDT05GSUdfSE5TMyBpcyBub3Qgc2V0CkNPTkZJR19ORVRfVkVO
RE9SX0hVQVdFST15CiMgQ09ORklHX0hJTklDIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1Jf
STgyNVhYPXkKQ09ORklHX05FVF9WRU5ET1JfSU5URUw9eQojIENPTkZJR19FMTAwIGlzIG5vdCBz
ZXQKIyBDT05GSUdfRTEwMDAgaXMgbm90IHNldAojIENPTkZJR19FMTAwMEUgaXMgbm90IHNldApD
T05GSUdfSUdCPXkKQ09ORklHX0lHQl9IV01PTj15CkNPTkZJR19JR0JWRj15CiMgQ09ORklHX0lY
R0IgaXMgbm90IHNldAojIENPTkZJR19JWEdCRSBpcyBub3Qgc2V0CiMgQ09ORklHX0lYR0JFVkYg
aXMgbm90IHNldApDT05GSUdfSTQwRT15CiMgQ09ORklHX0k0MEVWRiBpcyBub3Qgc2V0CiMgQ09O
RklHX0lDRSBpcyBub3Qgc2V0CiMgQ09ORklHX0ZNMTBLIGlzIG5vdCBzZXQKIyBDT05GSUdfSUdD
IGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfTUlDUk9TT0ZUPXkKIyBDT05GSUdfSk1FIGlz
IG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfTElURVg9eQojIENPTkZJR19MSVRFWF9MSVRFRVRI
IGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfTUFSVkVMTD15CiMgQ09ORklHX01WTURJTyBp
cyBub3Qgc2V0CiMgQ09ORklHX1NLR0UgaXMgbm90IHNldAojIENPTkZJR19TS1kyIGlzIG5vdCBz
ZXQKIyBDT05GSUdfT0NURU9OVFgyX0FGIGlzIG5vdCBzZXQKIyBDT05GSUdfT0NURU9OVFgyX1BG
IGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfTUVMTEFOT1g9eQojIENPTkZJR19NTFg0X0VO
IGlzIG5vdCBzZXQKIyBDT05GSUdfTUxYNV9DT1JFIGlzIG5vdCBzZXQKIyBDT05GSUdfTUxYU1df
Q09SRSBpcyBub3Qgc2V0CiMgQ09ORklHX01MWEZXIGlzIG5vdCBzZXQKIyBDT05GSUdfTUxYQkZf
R0lHRSBpcyBub3Qgc2V0CkNPTkZJR19ORVRfVkVORE9SX01JQ1JFTD15CiMgQ09ORklHX0tTODg1
MV9NTEwgaXMgbm90IHNldAojIENPTkZJR19LU1o4ODRYX1BDSSBpcyBub3Qgc2V0CkNPTkZJR19O
RVRfVkVORE9SX01JQ1JPQ0hJUD15CiMgQ09ORklHX0xBTjc0M1ggaXMgbm90IHNldApDT05GSUdf
TkVUX1ZFTkRPUl9NSUNST1NFTUk9eQpDT05GSUdfTkVUX1ZFTkRPUl9NWVJJPXkKIyBDT05GSUdf
TVlSSTEwR0UgaXMgbm90IHNldAojIENPTkZJR19GRUFMTlggaXMgbm90IHNldApDT05GSUdfTkVU
X1ZFTkRPUl9OQVRTRU1JPXkKIyBDT05GSUdfTkFUU0VNSSBpcyBub3Qgc2V0CiMgQ09ORklHX05T
ODM4MjAgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9ORVRFUklPTj15CiMgQ09ORklHX1My
SU8gaXMgbm90IHNldAojIENPTkZJR19WWEdFIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1Jf
TkVUUk9OT01FPXkKIyBDT05GSUdfTkZQIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfTkk9
eQojIENPTkZJR19OSV9YR0VfTUFOQUdFTUVOVF9FTkVUIGlzIG5vdCBzZXQKQ09ORklHX05FVF9W
RU5ET1JfODM5MD15CiMgQ09ORklHX05FMktfUENJIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5E
T1JfTlZJRElBPXkKIyBDT05GSUdfRk9SQ0VERVRIIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5E
T1JfT0tJPXkKIyBDT05GSUdfRVRIT0MgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9QQUNL
RVRfRU5HSU5FUz15CiMgQ09ORklHX0hBTUFDSEkgaXMgbm90IHNldAojIENPTkZJR19ZRUxMT1dG
SU4gaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9QRU5TQU5ETz15CiMgQ09ORklHX0lPTklD
IGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfUUxPR0lDPXkKIyBDT05GSUdfUUxBM1hYWCBp
cyBub3Qgc2V0CiMgQ09ORklHX1FMQ05JQyBpcyBub3Qgc2V0CiMgQ09ORklHX05FVFhFTl9OSUMg
aXMgbm90IHNldAojIENPTkZJR19RRUQgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9RVUFM
Q09NTT15CiMgQ09ORklHX1FDQTcwMDBfVUFSVCBpcyBub3Qgc2V0CiMgQ09ORklHX1FDT01fRU1B
QyBpcyBub3Qgc2V0CiMgQ09ORklHX1JNTkVUIGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1Jf
UkRDPXkKIyBDT05GSUdfUjYwNDAgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9SRUFMVEVL
PXkKIyBDT05GSUdfODEzOUNQIGlzIG5vdCBzZXQKIyBDT05GSUdfODEzOVRPTyBpcyBub3Qgc2V0
CiMgQ09ORklHX1I4MTY5IGlzIG5vdCBzZXQKQ09ORklHX05FVF9WRU5ET1JfUkVORVNBUz15CkNP
TkZJR19ORVRfVkVORE9SX1JPQ0tFUj15CkNPTkZJR19ORVRfVkVORE9SX1NBTVNVTkc9eQojIENP
TkZJR19TWEdCRV9FVEggaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9TRUVRPXkKQ09ORklH
X05FVF9WRU5ET1JfU09MQVJGTEFSRT15CiMgQ09ORklHX1NGQyBpcyBub3Qgc2V0CiMgQ09ORklH
X1NGQ19GQUxDT04gaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9TSUxBTj15CiMgQ09ORklH
X1NDOTIwMzEgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9TSVM9eQojIENPTkZJR19TSVM5
MDAgaXMgbm90IHNldAojIENPTkZJR19TSVMxOTAgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRP
Ul9TTVNDPXkKIyBDT05GSUdfU01DOTFYIGlzIG5vdCBzZXQKIyBDT05GSUdfRVBJQzEwMCBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NNU0M5MTFYIGlzIG5vdCBzZXQKIyBDT05GSUdfU01TQzk0MjAgaXMg
bm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9TT0NJT05FWFQ9eQpDT05GSUdfTkVUX1ZFTkRPUl9T
VE1JQ1JPPXkKIyBDT05GSUdfU1RNTUFDX0VUSCBpcyBub3Qgc2V0CkNPTkZJR19ORVRfVkVORE9S
X1NVTj15CiMgQ09ORklHX0hBUFBZTUVBTCBpcyBub3Qgc2V0CiMgQ09ORklHX1NVTkdFTSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0NBU1NJTkkgaXMgbm90IHNldAojIENPTkZJR19OSVUgaXMgbm90IHNl
dApDT05GSUdfTkVUX1ZFTkRPUl9TWU5PUFNZUz15CiMgQ09ORklHX0RXQ19YTEdNQUMgaXMgbm90
IHNldApDT05GSUdfTkVUX1ZFTkRPUl9URUhVVEk9eQojIENPTkZJR19URUhVVEkgaXMgbm90IHNl
dApDT05GSUdfTkVUX1ZFTkRPUl9UST15CiMgQ09ORklHX1RJX0NQU1dfUEhZX1NFTCBpcyBub3Qg
c2V0CiMgQ09ORklHX1RMQU4gaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9WSUE9eQojIENP
TkZJR19WSUFfUkhJTkUgaXMgbm90IHNldAojIENPTkZJR19WSUFfVkVMT0NJVFkgaXMgbm90IHNl
dApDT05GSUdfTkVUX1ZFTkRPUl9XSVpORVQ9eQojIENPTkZJR19XSVpORVRfVzUxMDAgaXMgbm90
IHNldAojIENPTkZJR19XSVpORVRfVzUzMDAgaXMgbm90IHNldApDT05GSUdfTkVUX1ZFTkRPUl9Y
SUxJTlg9eQojIENPTkZJR19YSUxJTlhfRU1BQ0xJVEUgaXMgbm90IHNldAojIENPTkZJR19YSUxJ
TlhfQVhJX0VNQUMgaXMgbm90IHNldAojIENPTkZJR19YSUxJTlhfTExfVEVNQUMgaXMgbm90IHNl
dAojIENPTkZJR19GRERJIGlzIG5vdCBzZXQKIyBDT05GSUdfSElQUEkgaXMgbm90IHNldAojIENP
TkZJR19ORVRfU0IxMDAwIGlzIG5vdCBzZXQKIyBDT05GSUdfUEhZTElCIGlzIG5vdCBzZXQKIyBD
T05GSUdfTURJT19ERVZJQ0UgaXMgbm90IHNldAoKIwojIFBDUyBkZXZpY2UgZHJpdmVycwojCiMg
ZW5kIG9mIFBDUyBkZXZpY2UgZHJpdmVycwoKQ09ORklHX1BQUD1tCkNPTkZJR19QUFBfQlNEQ09N
UD1tCkNPTkZJR19QUFBfREVGTEFURT1tCkNPTkZJR19QUFBfRklMVEVSPXkKIyBDT05GSUdfUFBQ
X01QUEUgaXMgbm90IHNldApDT05GSUdfUFBQX01VTFRJTElOSz15CkNPTkZJR19QUFBPRT1tCiMg
Q09ORklHX1BQVFAgaXMgbm90IHNldApDT05GSUdfUFBQX0FTWU5DPW0KQ09ORklHX1BQUF9TWU5D
X1RUWT1tCkNPTkZJR19TTElQPW0KQ09ORklHX1NMSEM9bQpDT05GSUdfU0xJUF9DT01QUkVTU0VE
PXkKQ09ORklHX1NMSVBfU01BUlQ9eQpDT05GSUdfU0xJUF9NT0RFX1NMSVA2PXkKQ09ORklHX1VT
Ql9ORVRfRFJJVkVSUz15CiMgQ09ORklHX1VTQl9DQVRDIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNC
X0tBV0VUSCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9QRUdBU1VTIGlzIG5vdCBzZXQKIyBDT05G
SUdfVVNCX1JUTDgxNTAgaXMgbm90IHNldAojIENPTkZJR19VU0JfUlRMODE1MiBpcyBub3Qgc2V0
CiMgQ09ORklHX1VTQl9MQU43OFhYIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1VTQk5FVCBpcyBu
b3Qgc2V0CiMgQ09ORklHX1VTQl9IU08gaXMgbm90IHNldAojIENPTkZJR19VU0JfSVBIRVRIIGlz
IG5vdCBzZXQKQ09ORklHX1dMQU49eQpDT05GSUdfV0xBTl9WRU5ET1JfQURNVEVLPXkKQ09ORklH
X1dMQU5fVkVORE9SX0FUSD15CiMgQ09ORklHX0FUSF9ERUJVRyBpcyBub3Qgc2V0CiMgQ09ORklH
X0FUSDVLX1BDSSBpcyBub3Qgc2V0CkNPTkZJR19XTEFOX1ZFTkRPUl9BVE1FTD15CkNPTkZJR19X
TEFOX1ZFTkRPUl9CUk9BRENPTT15CkNPTkZJR19XTEFOX1ZFTkRPUl9DSVNDTz15CkNPTkZJR19X
TEFOX1ZFTkRPUl9JTlRFTD15CkNPTkZJR19XTEFOX1ZFTkRPUl9JTlRFUlNJTD15CiMgQ09ORklH
X0hPU1RBUCBpcyBub3Qgc2V0CkNPTkZJR19XTEFOX1ZFTkRPUl9NQVJWRUxMPXkKQ09ORklHX1dM
QU5fVkVORE9SX01FRElBVEVLPXkKQ09ORklHX1dMQU5fVkVORE9SX01JQ1JPQ0hJUD15CkNPTkZJ
R19XTEFOX1ZFTkRPUl9SQUxJTks9eQpDT05GSUdfV0xBTl9WRU5ET1JfUkVBTFRFSz15CkNPTkZJ
R19XTEFOX1ZFTkRPUl9SU0k9eQpDT05GSUdfV0xBTl9WRU5ET1JfU1Q9eQpDT05GSUdfV0xBTl9W
RU5ET1JfVEk9eQpDT05GSUdfV0xBTl9WRU5ET1JfWllEQVM9eQpDT05GSUdfV0xBTl9WRU5ET1Jf
UVVBTlRFTk5BPXkKIyBDT05GSUdfV0FOIGlzIG5vdCBzZXQKCiMKIyBXaXJlbGVzcyBXQU4KIwoj
IENPTkZJR19XV0FOIGlzIG5vdCBzZXQKIyBlbmQgb2YgV2lyZWxlc3MgV0FOCgpDT05GSUdfWEVO
X05FVERFVl9GUk9OVEVORD15CkNPTkZJR19YRU5fTkVUREVWX0JBQ0tFTkQ9bQojIENPTkZJR19W
TVhORVQzIGlzIG5vdCBzZXQKIyBDT05GSUdfRlVKSVRTVV9FUyBpcyBub3Qgc2V0CiMgQ09ORklH
X05FVERFVlNJTSBpcyBub3Qgc2V0CkNPTkZJR19ORVRfRkFJTE9WRVI9eQojIENPTkZJR19JU0RO
IGlzIG5vdCBzZXQKCiMKIyBJbnB1dCBkZXZpY2Ugc3VwcG9ydAojCkNPTkZJR19JTlBVVD15CkNP
TkZJR19JTlBVVF9GRl9NRU1MRVNTPXkKIyBDT05GSUdfSU5QVVRfU1BBUlNFS01BUCBpcyBub3Qg
c2V0CiMgQ09ORklHX0lOUFVUX01BVFJJWEtNQVAgaXMgbm90IHNldAoKIwojIFVzZXJsYW5kIGlu
dGVyZmFjZXMKIwojIENPTkZJR19JTlBVVF9NT1VTRURFViBpcyBub3Qgc2V0CiMgQ09ORklHX0lO
UFVUX0pPWURFViBpcyBub3Qgc2V0CkNPTkZJR19JTlBVVF9FVkRFVj15CiMgQ09ORklHX0lOUFVU
X0VWQlVHIGlzIG5vdCBzZXQKCiMKIyBJbnB1dCBEZXZpY2UgRHJpdmVycwojCkNPTkZJR19JTlBV
VF9LRVlCT0FSRD15CiMgQ09ORklHX0tFWUJPQVJEX0FEUDU1ODggaXMgbm90IHNldAojIENPTkZJ
R19LRVlCT0FSRF9BRFA1NTg5IGlzIG5vdCBzZXQKQ09ORklHX0tFWUJPQVJEX0FUS0JEPXkKIyBD
T05GSUdfS0VZQk9BUkRfUVQxMDUwIGlzIG5vdCBzZXQKIyBDT05GSUdfS0VZQk9BUkRfUVQxMDcw
IGlzIG5vdCBzZXQKIyBDT05GSUdfS0VZQk9BUkRfUVQyMTYwIGlzIG5vdCBzZXQKIyBDT05GSUdf
S0VZQk9BUkRfRExJTktfRElSNjg1IGlzIG5vdCBzZXQKIyBDT05GSUdfS0VZQk9BUkRfTEtLQkQg
aXMgbm90IHNldAojIENPTkZJR19LRVlCT0FSRF9HUElPIGlzIG5vdCBzZXQKIyBDT05GSUdfS0VZ
Qk9BUkRfR1BJT19QT0xMRUQgaXMgbm90IHNldAojIENPTkZJR19LRVlCT0FSRF9UQ0E2NDE2IGlz
IG5vdCBzZXQKIyBDT05GSUdfS0VZQk9BUkRfVENBODQxOCBpcyBub3Qgc2V0CiMgQ09ORklHX0tF
WUJPQVJEX01BVFJJWCBpcyBub3Qgc2V0CiMgQ09ORklHX0tFWUJPQVJEX0xNODMzMyBpcyBub3Qg
c2V0CiMgQ09ORklHX0tFWUJPQVJEX01BWDczNTkgaXMgbm90IHNldAojIENPTkZJR19LRVlCT0FS
RF9NQ1MgaXMgbm90IHNldAojIENPTkZJR19LRVlCT0FSRF9NUFIxMjEgaXMgbm90IHNldAojIENP
TkZJR19LRVlCT0FSRF9ORVdUT04gaXMgbm90IHNldAojIENPTkZJR19LRVlCT0FSRF9PUEVOQ09S
RVMgaXMgbm90IHNldAojIENPTkZJR19LRVlCT0FSRF9TQU1TVU5HIGlzIG5vdCBzZXQKIyBDT05G
SUdfS0VZQk9BUkRfU1RPV0FXQVkgaXMgbm90IHNldAojIENPTkZJR19LRVlCT0FSRF9TVU5LQkQg
aXMgbm90IHNldAojIENPTkZJR19LRVlCT0FSRF9PTUFQNCBpcyBub3Qgc2V0CiMgQ09ORklHX0tF
WUJPQVJEX1hUS0JEIGlzIG5vdCBzZXQKIyBDT05GSUdfS0VZQk9BUkRfQ0FQMTFYWCBpcyBub3Qg
c2V0CiMgQ09ORklHX0tFWUJPQVJEX0JDTSBpcyBub3Qgc2V0CkNPTkZJR19JTlBVVF9NT1VTRT15
CkNPTkZJR19NT1VTRV9QUzI9eQpDT05GSUdfTU9VU0VfUFMyX0FMUFM9eQpDT05GSUdfTU9VU0Vf
UFMyX0JZRD15CkNPTkZJR19NT1VTRV9QUzJfTE9HSVBTMlBQPXkKQ09ORklHX01PVVNFX1BTMl9T
WU5BUFRJQ1M9eQpDT05GSUdfTU9VU0VfUFMyX1NZTkFQVElDU19TTUJVUz15CkNPTkZJR19NT1VT
RV9QUzJfQ1lQUkVTUz15CkNPTkZJR19NT1VTRV9QUzJfVFJBQ0tQT0lOVD15CiMgQ09ORklHX01P
VVNFX1BTMl9FTEFOVEVDSCBpcyBub3Qgc2V0CiMgQ09ORklHX01PVVNFX1BTMl9TRU5URUxJQyBp
cyBub3Qgc2V0CiMgQ09ORklHX01PVVNFX1BTMl9UT1VDSEtJVCBpcyBub3Qgc2V0CkNPTkZJR19N
T1VTRV9QUzJfRk9DQUxURUNIPXkKQ09ORklHX01PVVNFX1BTMl9TTUJVUz15CiMgQ09ORklHX01P
VVNFX1NFUklBTCBpcyBub3Qgc2V0CiMgQ09ORklHX01PVVNFX0FQUExFVE9VQ0ggaXMgbm90IHNl
dAojIENPTkZJR19NT1VTRV9CQ001OTc0IGlzIG5vdCBzZXQKIyBDT05GSUdfTU9VU0VfQ1lBUEEg
aXMgbm90IHNldAojIENPTkZJR19NT1VTRV9FTEFOX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX01P
VVNFX1ZTWFhYQUEgaXMgbm90IHNldAojIENPTkZJR19NT1VTRV9HUElPIGlzIG5vdCBzZXQKIyBD
T05GSUdfTU9VU0VfU1lOQVBUSUNTX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX01PVVNFX1NZTkFQ
VElDU19VU0IgaXMgbm90IHNldAojIENPTkZJR19JTlBVVF9KT1lTVElDSyBpcyBub3Qgc2V0CiMg
Q09ORklHX0lOUFVUX1RBQkxFVCBpcyBub3Qgc2V0CiMgQ09ORklHX0lOUFVUX1RPVUNIU0NSRUVO
IGlzIG5vdCBzZXQKQ09ORklHX0lOUFVUX01JU0M9eQojIENPTkZJR19JTlBVVF9BRDcxNFggaXMg
bm90IHNldAojIENPTkZJR19JTlBVVF9BVE1FTF9DQVBUT1VDSCBpcyBub3Qgc2V0CiMgQ09ORklH
X0lOUFVUX0JNQTE1MCBpcyBub3Qgc2V0CiMgQ09ORklHX0lOUFVUX0UzWDBfQlVUVE9OIGlzIG5v
dCBzZXQKIyBDT05GSUdfSU5QVVRfTU1BODQ1MCBpcyBub3Qgc2V0CiMgQ09ORklHX0lOUFVUX0dQ
SU9fQkVFUEVSIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5QVVRfR1BJT19ERUNPREVSIGlzIG5vdCBz
ZXQKIyBDT05GSUdfSU5QVVRfR1BJT19WSUJSQSBpcyBub3Qgc2V0CiMgQ09ORklHX0lOUFVUX0FU
SV9SRU1PVEUyIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5QVVRfS0VZU1BBTl9SRU1PVEUgaXMgbm90
IHNldAojIENPTkZJR19JTlBVVF9LWFRKOSBpcyBub3Qgc2V0CiMgQ09ORklHX0lOUFVUX1BPV0VS
TUFURSBpcyBub3Qgc2V0CiMgQ09ORklHX0lOUFVUX1lFQUxJTksgaXMgbm90IHNldAojIENPTkZJ
R19JTlBVVF9DTTEwOSBpcyBub3Qgc2V0CiMgQ09ORklHX0lOUFVUX1VJTlBVVCBpcyBub3Qgc2V0
CiMgQ09ORklHX0lOUFVUX1BDRjg1NzQgaXMgbm90IHNldAojIENPTkZJR19JTlBVVF9HUElPX1JP
VEFSWV9FTkNPREVSIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5QVVRfREE3MjgwX0hBUFRJQ1MgaXMg
bm90IHNldAojIENPTkZJR19JTlBVVF9BRFhMMzRYIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5QVVRf
SVFTMjY5QSBpcyBub3Qgc2V0CiMgQ09ORklHX0lOUFVUX0lRUzYyNkEgaXMgbm90IHNldAojIENP
TkZJR19JTlBVVF9DTUEzMDAwIGlzIG5vdCBzZXQKQ09ORklHX0lOUFVUX1hFTl9LQkRERVZfRlJP
TlRFTkQ9eQojIENPTkZJR19JTlBVVF9EUlYyNjBYX0hBUFRJQ1MgaXMgbm90IHNldAojIENPTkZJ
R19JTlBVVF9EUlYyNjY1X0hBUFRJQ1MgaXMgbm90IHNldAojIENPTkZJR19JTlBVVF9EUlYyNjY3
X0hBUFRJQ1MgaXMgbm90IHNldAojIENPTkZJR19STUk0X0NPUkUgaXMgbm90IHNldAoKIwojIEhh
cmR3YXJlIEkvTyBwb3J0cwojCkNPTkZJR19TRVJJTz15CkNPTkZJR19TRVJJT19TRVJQT1JUPXkK
IyBDT05GSUdfU0VSSU9fQU1CQUtNSSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFUklPX1BDSVBTMiBp
cyBub3Qgc2V0CkNPTkZJR19TRVJJT19MSUJQUzI9eQojIENPTkZJR19TRVJJT19SQVcgaXMgbm90
IHNldAojIENPTkZJR19TRVJJT19BTFRFUkFfUFMyIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VSSU9f
UFMyTVVMVCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFUklPX0FSQ19QUzIgaXMgbm90IHNldAojIENP
TkZJR19TRVJJT19BUEJQUzIgaXMgbm90IHNldAojIENPTkZJR19TRVJJT19HUElPX1BTMiBpcyBu
b3Qgc2V0CiMgQ09ORklHX1VTRVJJTyBpcyBub3Qgc2V0CiMgQ09ORklHX0dBTUVQT1JUIGlzIG5v
dCBzZXQKIyBlbmQgb2YgSGFyZHdhcmUgSS9PIHBvcnRzCiMgZW5kIG9mIElucHV0IGRldmljZSBz
dXBwb3J0CgojCiMgQ2hhcmFjdGVyIGRldmljZXMKIwpDT05GSUdfVFRZPXkKQ09ORklHX1ZUPXkK
Q09ORklHX0NPTlNPTEVfVFJBTlNMQVRJT05TPXkKQ09ORklHX1ZUX0NPTlNPTEU9eQpDT05GSUdf
VlRfQ09OU09MRV9TTEVFUD15CkNPTkZJR19IV19DT05TT0xFPXkKQ09ORklHX1ZUX0hXX0NPTlNP
TEVfQklORElORz15CkNPTkZJR19VTklYOThfUFRZUz15CiMgQ09ORklHX0xFR0FDWV9QVFlTIGlz
IG5vdCBzZXQKQ09ORklHX0xESVNDX0FVVE9MT0FEPXkKCiMKIyBTZXJpYWwgZHJpdmVycwojCkNP
TkZJR19TRVJJQUxfRUFSTFlDT049eQojIENPTkZJR19TRVJJQUxfODI1MCBpcyBub3Qgc2V0Cgoj
CiMgTm9uLTgyNTAgc2VyaWFsIHBvcnQgc3VwcG9ydAojCiMgQ09ORklHX1NFUklBTF9BTUJBX1BM
MDEwIGlzIG5vdCBzZXQKQ09ORklHX1NFUklBTF9BTUJBX1BMMDExPXkKQ09ORklHX1NFUklBTF9B
TUJBX1BMMDExX0NPTlNPTEU9eQojIENPTkZJR19TRVJJQUxfRUFSTFlDT05fQVJNX1NFTUlIT1NU
IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VSSUFMX0tHREJfTk1JIGlzIG5vdCBzZXQKIyBDT05GSUdf
U0VSSUFMX1VBUlRMSVRFIGlzIG5vdCBzZXQKQ09ORklHX1NFUklBTF9DT1JFPXkKQ09ORklHX1NF
UklBTF9DT1JFX0NPTlNPTEU9eQpDT05GSUdfQ09OU09MRV9QT0xMPXkKIyBDT05GSUdfU0VSSUFM
X0pTTSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFUklBTF9TSUZJVkUgaXMgbm90IHNldAojIENPTkZJ
R19TRVJJQUxfU0NDTlhQIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VSSUFMX1NDMTZJUzdYWCBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NFUklBTF9CQ002M1hYIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VSSUFM
X0FMVEVSQV9KVEFHVUFSVCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFUklBTF9BTFRFUkFfVUFSVCBp
cyBub3Qgc2V0CiMgQ09ORklHX1NFUklBTF9YSUxJTlhfUFNfVUFSVCBpcyBub3Qgc2V0CiMgQ09O
RklHX1NFUklBTF9BUkMgaXMgbm90IHNldAojIENPTkZJR19TRVJJQUxfUlAyIGlzIG5vdCBzZXQK
IyBDT05GSUdfU0VSSUFMX0ZTTF9MUFVBUlQgaXMgbm90IHNldAojIENPTkZJR19TRVJJQUxfRlNM
X0xJTkZMRVhVQVJUIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VSSUFMX0NPTkVYQU5UX0RJR0lDT0xP
UiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFUklBTF9TUFJEIGlzIG5vdCBzZXQKIyBlbmQgb2YgU2Vy
aWFsIGRyaXZlcnMKCiMgQ09ORklHX1NFUklBTF9OT05TVEFOREFSRCBpcyBub3Qgc2V0CiMgQ09O
RklHX05fR1NNIGlzIG5vdCBzZXQKIyBDT05GSUdfTk9aT01JIGlzIG5vdCBzZXQKIyBDT05GSUdf
TlVMTF9UVFkgaXMgbm90IHNldApDT05GSUdfSFZDX0RSSVZFUj15CkNPTkZJR19IVkNfSVJRPXkK
Q09ORklHX0hWQ19YRU49eQpDT05GSUdfSFZDX1hFTl9GUk9OVEVORD15CiMgQ09ORklHX0hWQ19E
Q0MgaXMgbm90IHNldApDT05GSUdfU0VSSUFMX0RFVl9CVVM9eQpDT05GSUdfU0VSSUFMX0RFVl9D
VFJMX1RUWVBPUlQ9eQpDT05GSUdfVklSVElPX0NPTlNPTEU9eQpDT05GSUdfSVBNSV9IQU5ETEVS
PW0KQ09ORklHX0lQTUlfRE1JX0RFQ09ERT15CkNPTkZJR19JUE1JX1BMQVRfREFUQT15CkNPTkZJ
R19JUE1JX1BBTklDX0VWRU5UPXkKQ09ORklHX0lQTUlfUEFOSUNfU1RSSU5HPXkKQ09ORklHX0lQ
TUlfREVWSUNFX0lOVEVSRkFDRT1tCkNPTkZJR19JUE1JX1NJPW0KIyBDT05GSUdfSVBNSV9TU0lG
IGlzIG5vdCBzZXQKQ09ORklHX0lQTUlfV0FUQ0hET0c9bQpDT05GSUdfSVBNSV9QT1dFUk9GRj1t
CkNPTkZJR19IV19SQU5ET009eQojIENPTkZJR19IV19SQU5ET01fVElNRVJJT01FTSBpcyBub3Qg
c2V0CiMgQ09ORklHX0hXX1JBTkRPTV9CQTQzMSBpcyBub3Qgc2V0CkNPTkZJR19IV19SQU5ET01f
VklSVElPPXkKQ09ORklHX0hXX1JBTkRPTV9DQVZJVU09eQojIENPTkZJR19IV19SQU5ET01fQ0NU
Uk5HIGlzIG5vdCBzZXQKIyBDT05GSUdfSFdfUkFORE9NX1hJUEhFUkEgaXMgbm90IHNldApDT05G
SUdfSFdfUkFORE9NX0FSTV9TTUNDQ19UUk5HPXkKIyBDT05GSUdfQVBQTElDT00gaXMgbm90IHNl
dApDT05GSUdfREVWTUVNPXkKQ09ORklHX0RFVlBPUlQ9eQojIENPTkZJR19UQ0dfVFBNIGlzIG5v
dCBzZXQKIyBDT05GSUdfWElMTFlCVVMgaXMgbm90IHNldAojIENPTkZJR19YSUxMWVVTQiBpcyBu
b3Qgc2V0CiMgQ09ORklHX1JBTkRPTV9UUlVTVF9DUFUgaXMgbm90IHNldAojIENPTkZJR19SQU5E
T01fVFJVU1RfQk9PVExPQURFUiBpcyBub3Qgc2V0CiMgZW5kIG9mIENoYXJhY3RlciBkZXZpY2Vz
CgojCiMgSTJDIHN1cHBvcnQKIwpDT05GSUdfSTJDPXkKQ09ORklHX0FDUElfSTJDX09QUkVHSU9O
PXkKQ09ORklHX0kyQ19CT0FSRElORk89eQpDT05GSUdfSTJDX0NPTVBBVD15CkNPTkZJR19JMkNf
Q0hBUkRFVj1tCkNPTkZJR19JMkNfTVVYPXkKCiMKIyBNdWx0aXBsZXhlciBJMkMgQ2hpcCBzdXBw
b3J0CiMKIyBDT05GSUdfSTJDX0FSQl9HUElPX0NIQUxMRU5HRSBpcyBub3Qgc2V0CiMgQ09ORklH
X0kyQ19NVVhfR1BJTyBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19NVVhfR1BNVVggaXMgbm90IHNl
dAojIENPTkZJR19JMkNfTVVYX0xUQzQzMDYgaXMgbm90IHNldAojIENPTkZJR19JMkNfTVVYX1BD
QTk1NDEgaXMgbm90IHNldAojIENPTkZJR19JMkNfTVVYX1BDQTk1NHggaXMgbm90IHNldAojIENP
TkZJR19JMkNfTVVYX1JFRyBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19NVVhfTUxYQ1BMRCBpcyBu
b3Qgc2V0CiMgZW5kIG9mIE11bHRpcGxleGVyIEkyQyBDaGlwIHN1cHBvcnQKCkNPTkZJR19JMkNf
SEVMUEVSX0FVVE89eQpDT05GSUdfSTJDX0FMR09CSVQ9eQoKIwojIEkyQyBIYXJkd2FyZSBCdXMg
c3VwcG9ydAojCgojCiMgUEMgU01CdXMgaG9zdCBjb250cm9sbGVyIGRyaXZlcnMKIwojIENPTkZJ
R19JMkNfQUxJMTUzNSBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19BTEkxNTYzIGlzIG5vdCBzZXQK
IyBDT05GSUdfSTJDX0FMSTE1WDMgaXMgbm90IHNldAojIENPTkZJR19JMkNfQU1ENzU2IGlzIG5v
dCBzZXQKIyBDT05GSUdfSTJDX0FNRDgxMTEgaXMgbm90IHNldAojIENPTkZJR19JMkNfQU1EX01Q
MiBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19JODAxIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJDX0lT
Q0ggaXMgbm90IHNldAojIENPTkZJR19JMkNfUElJWDQgaXMgbm90IHNldAojIENPTkZJR19JMkNf
TkZPUkNFMiBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19OVklESUFfR1BVIGlzIG5vdCBzZXQKIyBD
T05GSUdfSTJDX1NJUzU1OTUgaXMgbm90IHNldAojIENPTkZJR19JMkNfU0lTNjMwIGlzIG5vdCBz
ZXQKIyBDT05GSUdfSTJDX1NJUzk2WCBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19WSUEgaXMgbm90
IHNldAojIENPTkZJR19JMkNfVklBUFJPIGlzIG5vdCBzZXQKCiMKIyBBQ1BJIGRyaXZlcnMKIwoj
IENPTkZJR19JMkNfU0NNSSBpcyBub3Qgc2V0CgojCiMgSTJDIHN5c3RlbSBidXMgZHJpdmVycyAo
bW9zdGx5IGVtYmVkZGVkIC8gc3lzdGVtLW9uLWNoaXApCiMKIyBDT05GSUdfSTJDX0NBREVOQ0Ug
aXMgbm90IHNldAojIENPTkZJR19JMkNfQ0JVU19HUElPIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJD
X0RFU0lHTldBUkVfUExBVEZPUk0gaXMgbm90IHNldAojIENPTkZJR19JMkNfREVTSUdOV0FSRV9Q
Q0kgaXMgbm90IHNldAojIENPTkZJR19JMkNfRU1FVjIgaXMgbm90IHNldAojIENPTkZJR19JMkNf
R1BJTyBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19ISVNJIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJD
X05PTUFESUsgaXMgbm90IHNldAojIENPTkZJR19JMkNfT0NPUkVTIGlzIG5vdCBzZXQKIyBDT05G
SUdfSTJDX1BDQV9QTEFURk9STSBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19SSzNYIGlzIG5vdCBz
ZXQKIyBDT05GSUdfSTJDX1NJTVRFQyBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19USFVOREVSWCBp
cyBub3Qgc2V0CiMgQ09ORklHX0kyQ19YSUxJTlggaXMgbm90IHNldAoKIwojIEV4dGVybmFsIEky
Qy9TTUJ1cyBhZGFwdGVyIGRyaXZlcnMKIwojIENPTkZJR19JMkNfRElPTEFOX1UyQyBpcyBub3Qg
c2V0CiMgQ09ORklHX0kyQ19DUDI2MTUgaXMgbm90IHNldAojIENPTkZJR19JMkNfUk9CT1RGVVpa
X09TSUYgaXMgbm90IHNldAojIENPTkZJR19JMkNfVEFPU19FVk0gaXMgbm90IHNldAojIENPTkZJ
R19JMkNfVElOWV9VU0IgaXMgbm90IHNldAoKIwojIE90aGVyIEkyQy9TTUJ1cyBidXMgZHJpdmVy
cwojCiMgQ09ORklHX0kyQ19WSVJUSU8gaXMgbm90IHNldAojIGVuZCBvZiBJMkMgSGFyZHdhcmUg
QnVzIHN1cHBvcnQKCiMgQ09ORklHX0kyQ19TVFVCIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJDX1NM
QVZFIGlzIG5vdCBzZXQKIyBDT05GSUdfSTJDX0RFQlVHX0NPUkUgaXMgbm90IHNldAojIENPTkZJ
R19JMkNfREVCVUdfQUxHTyBpcyBub3Qgc2V0CiMgQ09ORklHX0kyQ19ERUJVR19CVVMgaXMgbm90
IHNldAojIGVuZCBvZiBJMkMgc3VwcG9ydAoKIyBDT05GSUdfSTNDIGlzIG5vdCBzZXQKIyBDT05G
SUdfU1BJIGlzIG5vdCBzZXQKIyBDT05GSUdfU1BNSSBpcyBub3Qgc2V0CiMgQ09ORklHX0hTSSBp
cyBub3Qgc2V0CkNPTkZJR19QUFM9eQojIENPTkZJR19QUFNfREVCVUcgaXMgbm90IHNldAoKIwoj
IFBQUyBjbGllbnRzIHN1cHBvcnQKIwojIENPTkZJR19QUFNfQ0xJRU5UX0tUSU1FUiBpcyBub3Qg
c2V0CiMgQ09ORklHX1BQU19DTElFTlRfTERJU0MgaXMgbm90IHNldAojIENPTkZJR19QUFNfQ0xJ
RU5UX0dQSU8gaXMgbm90IHNldAoKIwojIFBQUyBnZW5lcmF0b3JzIHN1cHBvcnQKIwoKIwojIFBU
UCBjbG9jayBzdXBwb3J0CiMKQ09ORklHX1BUUF8xNTg4X0NMT0NLPXkKQ09ORklHX1BUUF8xNTg4
X0NMT0NLX09QVElPTkFMPXkKCiMKIyBFbmFibGUgUEhZTElCIGFuZCBORVRXT1JLX1BIWV9USU1F
U1RBTVBJTkcgdG8gc2VlIHRoZSBhZGRpdGlvbmFsIGNsb2Nrcy4KIwpDT05GSUdfUFRQXzE1ODhf
Q0xPQ0tfS1ZNPXkKIyBDT05GSUdfUFRQXzE1ODhfQ0xPQ0tfSURUODJQMzMgaXMgbm90IHNldAoj
IENPTkZJR19QVFBfMTU4OF9DTE9DS19JRFRDTSBpcyBub3Qgc2V0CiMgZW5kIG9mIFBUUCBjbG9j
ayBzdXBwb3J0CgojIENPTkZJR19QSU5DVFJMIGlzIG5vdCBzZXQKQ09ORklHX0dQSU9MSUI9eQpD
T05GSUdfR1BJT0xJQl9GQVNUUEFUSF9MSU1JVD01MTIKQ09ORklHX09GX0dQSU89eQpDT05GSUdf
R1BJT19BQ1BJPXkKQ09ORklHX0dQSU9MSUJfSVJRQ0hJUD15CiMgQ09ORklHX0RFQlVHX0dQSU8g
aXMgbm90IHNldApDT05GSUdfR1BJT19DREVWPXkKQ09ORklHX0dQSU9fQ0RFVl9WMT15CkNPTkZJ
R19HUElPX0dFTkVSSUM9eQoKIwojIE1lbW9yeSBtYXBwZWQgR1BJTyBkcml2ZXJzCiMKIyBDT05G
SUdfR1BJT183NFhYX01NSU8gaXMgbm90IHNldAojIENPTkZJR19HUElPX0FMVEVSQSBpcyBub3Qg
c2V0CiMgQ09ORklHX0dQSU9fQU1EUFQgaXMgbm90IHNldAojIENPTkZJR19HUElPX0NBREVOQ0Ug
aXMgbm90IHNldApDT05GSUdfR1BJT19EV0FQQj15CiMgQ09ORklHX0dQSU9fRlRHUElPMDEwIGlz
IG5vdCBzZXQKIyBDT05GSUdfR1BJT19HRU5FUklDX1BMQVRGT1JNIGlzIG5vdCBzZXQKIyBDT05G
SUdfR1BJT19HUkdQSU8gaXMgbm90IHNldAojIENPTkZJR19HUElPX0hJU0kgaXMgbm90IHNldAoj
IENPTkZJR19HUElPX0hMV0QgaXMgbm90IHNldAojIENPTkZJR19HUElPX01CODZTN1ggaXMgbm90
IHNldAojIENPTkZJR19HUElPX1BMMDYxIGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19TSUZJVkUg
aXMgbm90IHNldAojIENPTkZJR19HUElPX1hHRU5FIGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19Y
SUxJTlggaXMgbm90IHNldAojIENPTkZJR19HUElPX0FNRF9GQ0ggaXMgbm90IHNldAojIGVuZCBv
ZiBNZW1vcnkgbWFwcGVkIEdQSU8gZHJpdmVycwoKIwojIEkyQyBHUElPIGV4cGFuZGVycwojCiMg
Q09ORklHX0dQSU9fQURQNTU4OCBpcyBub3Qgc2V0CiMgQ09ORklHX0dQSU9fQUROUCBpcyBub3Qg
c2V0CiMgQ09ORklHX0dQSU9fR1dfUExEIGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19NQVg3MzAw
IGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19NQVg3MzJYIGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJ
T19QQ0E5NTNYIGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19QQ0E5NTcwIGlzIG5vdCBzZXQKIyBD
T05GSUdfR1BJT19QQ0Y4NTdYIGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19UUElDMjgxMCBpcyBu
b3Qgc2V0CiMgZW5kIG9mIEkyQyBHUElPIGV4cGFuZGVycwoKIwojIE1GRCBHUElPIGV4cGFuZGVy
cwojCiMgZW5kIG9mIE1GRCBHUElPIGV4cGFuZGVycwoKIwojIFBDSSBHUElPIGV4cGFuZGVycwoj
CiMgQ09ORklHX0dQSU9fQlQ4WFggaXMgbm90IHNldAojIENPTkZJR19HUElPX1BDSV9JRElPXzE2
IGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19QQ0lFX0lESU9fMjQgaXMgbm90IHNldAojIENPTkZJ
R19HUElPX1JEQzMyMVggaXMgbm90IHNldAojIGVuZCBvZiBQQ0kgR1BJTyBleHBhbmRlcnMKCiMK
IyBVU0IgR1BJTyBleHBhbmRlcnMKIwojIGVuZCBvZiBVU0IgR1BJTyBleHBhbmRlcnMKCiMKIyBW
aXJ0dWFsIEdQSU8gZHJpdmVycwojCiMgQ09ORklHX0dQSU9fQUdHUkVHQVRPUiBpcyBub3Qgc2V0
CiMgQ09ORklHX0dQSU9fTU9DS1VQIGlzIG5vdCBzZXQKIyBDT05GSUdfR1BJT19WSVJUSU8gaXMg
bm90IHNldAojIGVuZCBvZiBWaXJ0dWFsIEdQSU8gZHJpdmVycwoKIyBDT05GSUdfVzEgaXMgbm90
IHNldApDT05GSUdfUE9XRVJfUkVTRVQ9eQojIENPTkZJR19QT1dFUl9SRVNFVF9HUElPIGlzIG5v
dCBzZXQKIyBDT05GSUdfUE9XRVJfUkVTRVRfR1BJT19SRVNUQVJUIGlzIG5vdCBzZXQKIyBDT05G
SUdfUE9XRVJfUkVTRVRfTFRDMjk1MiBpcyBub3Qgc2V0CiMgQ09ORklHX1BPV0VSX1JFU0VUX1JF
U1RBUlQgaXMgbm90IHNldAojIENPTkZJR19QT1dFUl9SRVNFVF9YR0VORSBpcyBub3Qgc2V0CiMg
Q09ORklHX1BPV0VSX1JFU0VUX1NZU0NPTiBpcyBub3Qgc2V0CiMgQ09ORklHX1BPV0VSX1JFU0VU
X1NZU0NPTl9QT1dFUk9GRiBpcyBub3Qgc2V0CiMgQ09ORklHX05WTUVNX1JFQk9PVF9NT0RFIGlz
IG5vdCBzZXQKQ09ORklHX1BPV0VSX1NVUFBMWT15CiMgQ09ORklHX1BPV0VSX1NVUFBMWV9ERUJV
RyBpcyBub3Qgc2V0CkNPTkZJR19QT1dFUl9TVVBQTFlfSFdNT049eQojIENPTkZJR19QREFfUE9X
RVIgaXMgbm90IHNldAojIENPTkZJR19URVNUX1BPV0VSIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hB
UkdFUl9BRFA1MDYxIGlzIG5vdCBzZXQKIyBDT05GSUdfQkFUVEVSWV9DVzIwMTUgaXMgbm90IHNl
dAojIENPTkZJR19CQVRURVJZX0RTMjc4MCBpcyBub3Qgc2V0CiMgQ09ORklHX0JBVFRFUllfRFMy
NzgxIGlzIG5vdCBzZXQKIyBDT05GSUdfQkFUVEVSWV9EUzI3ODIgaXMgbm90IHNldAojIENPTkZJ
R19CQVRURVJZX1NCUyBpcyBub3Qgc2V0CiMgQ09ORklHX0NIQVJHRVJfU0JTIGlzIG5vdCBzZXQK
IyBDT05GSUdfTUFOQUdFUl9TQlMgaXMgbm90IHNldAojIENPTkZJR19CQVRURVJZX0JRMjdYWFgg
aXMgbm90IHNldAojIENPTkZJR19CQVRURVJZX01BWDE3MDQwIGlzIG5vdCBzZXQKIyBDT05GSUdf
QkFUVEVSWV9NQVgxNzA0MiBpcyBub3Qgc2V0CiMgQ09ORklHX0NIQVJHRVJfTUFYODkwMyBpcyBu
b3Qgc2V0CiMgQ09ORklHX0NIQVJHRVJfTFA4NzI3IGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hBUkdF
Ul9HUElPIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hBUkdFUl9MVDM2NTEgaXMgbm90IHNldAojIENP
TkZJR19DSEFSR0VSX0xUQzQxNjJMIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hBUkdFUl9ERVRFQ1RP
Ul9NQVgxNDY1NiBpcyBub3Qgc2V0CiMgQ09ORklHX0NIQVJHRVJfQlEyNDE1WCBpcyBub3Qgc2V0
CiMgQ09ORklHX0NIQVJHRVJfQlEyNDI1NyBpcyBub3Qgc2V0CiMgQ09ORklHX0NIQVJHRVJfQlEy
NDczNSBpcyBub3Qgc2V0CiMgQ09ORklHX0NIQVJHRVJfQlEyNTE1WCBpcyBub3Qgc2V0CiMgQ09O
RklHX0NIQVJHRVJfQlEyNTg5MCBpcyBub3Qgc2V0CiMgQ09ORklHX0NIQVJHRVJfQlEyNTk4MCBp
cyBub3Qgc2V0CiMgQ09ORklHX0NIQVJHRVJfQlEyNTZYWCBpcyBub3Qgc2V0CiMgQ09ORklHX0JB
VFRFUllfR0FVR0VfTFRDMjk0MSBpcyBub3Qgc2V0CiMgQ09ORklHX0JBVFRFUllfR09MREZJU0gg
aXMgbm90IHNldAojIENPTkZJR19CQVRURVJZX1JUNTAzMyBpcyBub3Qgc2V0CiMgQ09ORklHX0NI
QVJHRVJfUlQ5NDU1IGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hBUkdFUl9CRDk5OTU0IGlzIG5vdCBz
ZXQKQ09ORklHX0hXTU9OPXkKIyBDT05GSUdfSFdNT05fREVCVUdfQ0hJUCBpcyBub3Qgc2V0Cgoj
CiMgTmF0aXZlIGRyaXZlcnMKIwojIENPTkZJR19TRU5TT1JTX0FENzQxNCBpcyBub3Qgc2V0CiMg
Q09ORklHX1NFTlNPUlNfQUQ3NDE4IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19BRE0xMDIx
IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19BRE0xMDI1IGlzIG5vdCBzZXQKIyBDT05GSUdf
U0VOU09SU19BRE0xMDI2IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19BRE0xMDI5IGlzIG5v
dCBzZXQKIyBDT05GSUdfU0VOU09SU19BRE0xMDMxIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09S
U19BRE0xMTc3IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19BRE05MjQwIGlzIG5vdCBzZXQK
IyBDT05GSUdfU0VOU09SU19BRFQ3NDEwIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19BRFQ3
NDExIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19BRFQ3NDYyIGlzIG5vdCBzZXQKIyBDT05G
SUdfU0VOU09SU19BRFQ3NDcwIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19BRFQ3NDc1IGlz
IG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19BSFQxMCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNP
UlNfQVFVQUNPTVBVVEVSX0Q1TkVYVCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfQVMzNzAg
aXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FTQzc2MjEgaXMgbm90IHNldAojIENPTkZJR19T
RU5TT1JTX0FYSV9GQU5fQ09OVFJPTCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfQUxUUkEg
aXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FSTV9TQ1BJIGlzIG5vdCBzZXQKIyBDT05GSUdf
U0VOU09SU19BU1BFRUQgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FUWFAxIGlzIG5vdCBz
ZXQKIyBDT05GSUdfU0VOU09SU19DT1JTQUlSX0NQUk8gaXMgbm90IHNldAojIENPTkZJR19TRU5T
T1JTX0NPUlNBSVJfUFNVIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19EUzYyMCBpcyBub3Qg
c2V0CiMgQ09ORklHX1NFTlNPUlNfRFMxNjIxIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19J
NUtfQU1CIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19GNzE4MDVGIGlzIG5vdCBzZXQKIyBD
T05GSUdfU0VOU09SU19GNzE4ODJGRyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfRjc1Mzc1
UyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfRlRTVEVVVEFURVMgaXMgbm90IHNldAojIENP
TkZJR19TRU5TT1JTX0dMNTE4U00gaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0dMNTIwU00g
aXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0c3NjBBIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VO
U09SU19HNzYyIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19HUElPX0ZBTiBpcyBub3Qgc2V0
CiMgQ09ORklHX1NFTlNPUlNfSElINjEzMCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfSUJN
QUVNIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19JQk1QRVggaXMgbm90IHNldAojIENPTkZJ
R19TRU5TT1JTX0lUODcgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0pDNDIgaXMgbm90IHNl
dAojIENPTkZJR19TRU5TT1JTX1BPV1IxMjIwIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19M
SU5FQUdFIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19MVEMyOTQ1IGlzIG5vdCBzZXQKIyBD
T05GSUdfU0VOU09SU19MVEMyOTQ3X0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTFRD
Mjk5MCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTFRDMjk5MiBpcyBub3Qgc2V0CiMgQ09O
RklHX1NFTlNPUlNfTFRDNDE1MSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTFRDNDIxNSBp
cyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTFRDNDIyMiBpcyBub3Qgc2V0CiMgQ09ORklHX1NF
TlNPUlNfTFRDNDI0NSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTFRDNDI2MCBpcyBub3Qg
c2V0CiMgQ09ORklHX1NFTlNPUlNfTFRDNDI2MSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNf
TUFYMTI3IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19NQVgxNjA2NSBpcyBub3Qgc2V0CiMg
Q09ORklHX1NFTlNPUlNfTUFYMTYxOSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTUFYMTY2
OCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTUFYMTk3IGlzIG5vdCBzZXQKIyBDT05GSUdf
U0VOU09SU19NQVgzMTczMCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTUFYNjYyMSBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTUFYNjYzOSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNP
UlNfTUFYNjY0MiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTUFYNjY1MCBpcyBub3Qgc2V0
CiMgQ09ORklHX1NFTlNPUlNfTUFYNjY5NyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTUFY
MzE3OTAgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX01DUDMwMjEgaXMgbm90IHNldAojIENP
TkZJR19TRU5TT1JTX1RDNjU0IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19UUFMyMzg2MSBp
cyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTVI3NTIwMyBpcyBub3Qgc2V0CiMgQ09ORklHX1NF
TlNPUlNfTE02MyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTE03MyBpcyBub3Qgc2V0CiMg
Q09ORklHX1NFTlNPUlNfTE03NSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTE03NyBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTE03OCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNf
TE04MCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTE04MyBpcyBub3Qgc2V0CiMgQ09ORklH
X1NFTlNPUlNfTE04NSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTE04NyBpcyBub3Qgc2V0
CiMgQ09ORklHX1NFTlNPUlNfTE05MCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTE05MiBp
cyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTE05MyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNP
UlNfTE05NTIzNCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfTE05NTI0MSBpcyBub3Qgc2V0
CiMgQ09ORklHX1NFTlNPUlNfTE05NTI0NSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfUEM4
NzM2MCBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfUEM4NzQyNyBpcyBub3Qgc2V0CiMgQ09O
RklHX1NFTlNPUlNfTlRDX1RIRVJNSVNUT1IgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX05D
VDY2ODMgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX05DVDY3NzUgaXMgbm90IHNldAojIENP
TkZJR19TRU5TT1JTX05DVDc4MDIgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX05DVDc5MDQg
aXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX05QQ003WFggaXMgbm90IHNldAojIENPTkZJR19T
RU5TT1JTX05aWFRfS1JBS0VOMiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfT0NDX1A4X0ky
QyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfUENGODU5MSBpcyBub3Qgc2V0CiMgQ09ORklH
X1BNQlVTIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19TQlRTSSBpcyBub3Qgc2V0CiMgQ09O
RklHX1NFTlNPUlNfU0JSTUkgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1NIVDE1IGlzIG5v
dCBzZXQKIyBDT05GSUdfU0VOU09SU19TSFQyMSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNf
U0hUM3ggaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1NIVDR4IGlzIG5vdCBzZXQKIyBDT05G
SUdfU0VOU09SU19TSFRDMSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfU0lTNTU5NSBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfRE1FMTczNyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNP
UlNfRU1DMTQwMyBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfRU1DMjEwMyBpcyBub3Qgc2V0
CiMgQ09ORklHX1NFTlNPUlNfRU1DNlcyMDEgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1NN
U0M0N00xIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19TTVNDNDdNMTkyIGlzIG5vdCBzZXQK
IyBDT05GSUdfU0VOU09SU19TTVNDNDdCMzk3IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19T
Q0g1NjI3IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19TQ0g1NjM2IGlzIG5vdCBzZXQKIyBD
T05GSUdfU0VOU09SU19TVFRTNzUxIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19TTU02NjUg
aXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FEQzEyOEQ4MTggaXMgbm90IHNldAojIENPTkZJ
R19TRU5TT1JTX0FEUzc4MjggaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX0FNQzY4MjEgaXMg
bm90IHNldAojIENPTkZJR19TRU5TT1JTX0lOQTIwOSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNP
UlNfSU5BMlhYIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19JTkEzMjIxIGlzIG5vdCBzZXQK
IyBDT05GSUdfU0VOU09SU19UQzc0IGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19USE1DNTAg
aXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1RNUDEwMiBpcyBub3Qgc2V0CiMgQ09ORklHX1NF
TlNPUlNfVE1QMTAzIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19UTVAxMDggaXMgbm90IHNl
dAojIENPTkZJR19TRU5TT1JTX1RNUDQwMSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfVE1Q
NDIxIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19UTVA1MTMgaXMgbm90IHNldAojIENPTkZJ
R19TRU5TT1JTX1ZJQTY4NkEgaXMgbm90IHNldAojIENPTkZJR19TRU5TT1JTX1ZUMTIxMSBpcyBu
b3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfVlQ4MjMxIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09S
U19XODM3NzNHIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19XODM3ODFEIGlzIG5vdCBzZXQK
IyBDT05GSUdfU0VOU09SU19XODM3OTFEIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19XODM3
OTJEIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19XODM3OTMgaXMgbm90IHNldAojIENPTkZJ
R19TRU5TT1JTX1c4Mzc5NSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFTlNPUlNfVzgzTDc4NVRTIGlz
IG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19XODNMNzg2TkcgaXMgbm90IHNldAojIENPTkZJR19T
RU5TT1JTX1c4MzYyN0hGIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VOU09SU19XODM2MjdFSEYgaXMg
bm90IHNldAojIENPTkZJR19TRU5TT1JTX1hHRU5FIGlzIG5vdCBzZXQKCiMKIyBBQ1BJIGRyaXZl
cnMKIwojIENPTkZJR19TRU5TT1JTX0FDUElfUE9XRVIgaXMgbm90IHNldApDT05GSUdfVEhFUk1B
TD15CiMgQ09ORklHX1RIRVJNQUxfTkVUTElOSyBpcyBub3Qgc2V0CiMgQ09ORklHX1RIRVJNQUxf
U1RBVElTVElDUyBpcyBub3Qgc2V0CkNPTkZJR19USEVSTUFMX0VNRVJHRU5DWV9QT1dFUk9GRl9E
RUxBWV9NUz0wCkNPTkZJR19USEVSTUFMX0hXTU9OPXkKQ09ORklHX1RIRVJNQUxfT0Y9eQojIENP
TkZJR19USEVSTUFMX1dSSVRBQkxFX1RSSVBTIGlzIG5vdCBzZXQKQ09ORklHX1RIRVJNQUxfREVG
QVVMVF9HT1ZfU1RFUF9XSVNFPXkKIyBDT05GSUdfVEhFUk1BTF9ERUZBVUxUX0dPVl9GQUlSX1NI
QVJFIGlzIG5vdCBzZXQKIyBDT05GSUdfVEhFUk1BTF9ERUZBVUxUX0dPVl9VU0VSX1NQQUNFIGlz
IG5vdCBzZXQKIyBDT05GSUdfVEhFUk1BTF9HT1ZfRkFJUl9TSEFSRSBpcyBub3Qgc2V0CkNPTkZJ
R19USEVSTUFMX0dPVl9TVEVQX1dJU0U9eQojIENPTkZJR19USEVSTUFMX0dPVl9CQU5HX0JBTkcg
aXMgbm90IHNldAojIENPTkZJR19USEVSTUFMX0dPVl9VU0VSX1NQQUNFIGlzIG5vdCBzZXQKQ09O
RklHX0NQVV9USEVSTUFMPXkKQ09ORklHX0NQVV9GUkVRX1RIRVJNQUw9eQojIENPTkZJR19USEVS
TUFMX0VNVUxBVElPTiBpcyBub3Qgc2V0CiMgQ09ORklHX1RIRVJNQUxfTU1JTyBpcyBub3Qgc2V0
CkNPTkZJR19XQVRDSERPRz15CkNPTkZJR19XQVRDSERPR19DT1JFPXkKIyBDT05GSUdfV0FUQ0hE
T0dfTk9XQVlPVVQgaXMgbm90IHNldApDT05GSUdfV0FUQ0hET0dfSEFORExFX0JPT1RfRU5BQkxF
RD15CkNPTkZJR19XQVRDSERPR19PUEVOX1RJTUVPVVQ9MAojIENPTkZJR19XQVRDSERPR19TWVNG
UyBpcyBub3Qgc2V0CiMgQ09ORklHX1dBVENIRE9HX0hSVElNRVJfUFJFVElNRU9VVCBpcyBub3Qg
c2V0CgojCiMgV2F0Y2hkb2cgUHJldGltZW91dCBHb3Zlcm5vcnMKIwojIENPTkZJR19XQVRDSERP
R19QUkVUSU1FT1VUX0dPViBpcyBub3Qgc2V0CgojCiMgV2F0Y2hkb2cgRGV2aWNlIERyaXZlcnMK
IwpDT05GSUdfU09GVF9XQVRDSERPRz1tCiMgQ09ORklHX0dQSU9fV0FUQ0hET0cgaXMgbm90IHNl
dAojIENPTkZJR19XREFUX1dEVCBpcyBub3Qgc2V0CiMgQ09ORklHX1hJTElOWF9XQVRDSERPRyBp
cyBub3Qgc2V0CiMgQ09ORklHX1pJSVJBVkVfV0FUQ0hET0cgaXMgbm90IHNldAojIENPTkZJR19B
Uk1fU1A4MDVfV0FUQ0hET0cgaXMgbm90IHNldApDT05GSUdfQVJNX1NCU0FfV0FUQ0hET0c9eQoj
IENPTkZJR19DQURFTkNFX1dBVENIRE9HIGlzIG5vdCBzZXQKIyBDT05GSUdfRFdfV0FUQ0hET0cg
aXMgbm90IHNldAojIENPTkZJR19NQVg2M1hYX1dBVENIRE9HIGlzIG5vdCBzZXQKIyBDT05GSUdf
QVJNX1NNQ19XQVRDSERPRyBpcyBub3Qgc2V0CiMgQ09ORklHX0FMSU03MTAxX1dEVCBpcyBub3Qg
c2V0CiMgQ09ORklHX0k2MzAwRVNCX1dEVCBpcyBub3Qgc2V0CiMgQ09ORklHX01FTl9BMjFfV0RU
IGlzIG5vdCBzZXQKQ09ORklHX1hFTl9XRFQ9bQoKIwojIFBDSS1iYXNlZCBXYXRjaGRvZyBDYXJk
cwojCiMgQ09ORklHX1BDSVBDV0FUQ0hET0cgaXMgbm90IHNldAojIENPTkZJR19XRFRQQ0kgaXMg
bm90IHNldAoKIwojIFVTQi1iYXNlZCBXYXRjaGRvZyBDYXJkcwojCiMgQ09ORklHX1VTQlBDV0FU
Q0hET0cgaXMgbm90IHNldApDT05GSUdfU1NCX1BPU1NJQkxFPXkKIyBDT05GSUdfU1NCIGlzIG5v
dCBzZXQKQ09ORklHX0JDTUFfUE9TU0lCTEU9eQojIENPTkZJR19CQ01BIGlzIG5vdCBzZXQKCiMK
IyBNdWx0aWZ1bmN0aW9uIGRldmljZSBkcml2ZXJzCiMKIyBDT05GSUdfTUZEX0FDVDg5NDVBIGlz
IG5vdCBzZXQKIyBDT05GSUdfTUZEX0FTMzcxMSBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9BUzM3
MjIgaXMgbm90IHNldAojIENPTkZJR19QTUlDX0FEUDU1MjAgaXMgbm90IHNldAojIENPTkZJR19N
RkRfQUFUMjg3MF9DT1JFIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX0FUTUVMX0ZMRVhDT00gaXMg
bm90IHNldAojIENPTkZJR19NRkRfQVRNRUxfSExDREMgaXMgbm90IHNldAojIENPTkZJR19NRkRf
QkNNNTkwWFggaXMgbm90IHNldAojIENPTkZJR19NRkRfQkQ5NTcxTVdWIGlzIG5vdCBzZXQKIyBD
T05GSUdfTUZEX0FYUDIwWF9JMkMgaXMgbm90IHNldAojIENPTkZJR19NRkRfTUFERVJBIGlzIG5v
dCBzZXQKIyBDT05GSUdfUE1JQ19EQTkwM1ggaXMgbm90IHNldAojIENPTkZJR19NRkRfREE5MDUy
X0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9EQTkwNTUgaXMgbm90IHNldAojIENPTkZJR19N
RkRfREE5MDYyIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX0RBOTA2MyBpcyBub3Qgc2V0CiMgQ09O
RklHX01GRF9EQTkxNTAgaXMgbm90IHNldAojIENPTkZJR19NRkRfRExOMiBpcyBub3Qgc2V0CiMg
Q09ORklHX01GRF9HQVRFV09SS1NfR1NDIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX01DMTNYWFhf
STJDIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX01QMjYyOSBpcyBub3Qgc2V0CiMgQ09ORklHX01G
RF9ISTY0MjFfUE1JQyBpcyBub3Qgc2V0CiMgQ09ORklHX0hUQ19QQVNJQzMgaXMgbm90IHNldAoj
IENPTkZJR19IVENfSTJDUExEIGlzIG5vdCBzZXQKIyBDT05GSUdfTFBDX0lDSCBpcyBub3Qgc2V0
CiMgQ09ORklHX0xQQ19TQ0ggaXMgbm90IHNldAojIENPTkZJR19NRkRfSU5URUxfUE1UIGlzIG5v
dCBzZXQKIyBDT05GSUdfTUZEX0lRUzYyWCBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9KQU5aX0NN
T0RJTyBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9LRU1QTEQgaXMgbm90IHNldAojIENPTkZJR19N
RkRfODhQTTgwMCBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF84OFBNODA1IGlzIG5vdCBzZXQKIyBD
T05GSUdfTUZEXzg4UE04NjBYIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX01BWDE0NTc3IGlzIG5v
dCBzZXQKIyBDT05GSUdfTUZEX01BWDc3NjIwIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX01BWDc3
NjUwIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX01BWDc3Njg2IGlzIG5vdCBzZXQKIyBDT05GSUdf
TUZEX01BWDc3NjkzIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX01BWDc3ODQzIGlzIG5vdCBzZXQK
IyBDT05GSUdfTUZEX01BWDg5MDcgaXMgbm90IHNldAojIENPTkZJR19NRkRfTUFYODkyNSBpcyBu
b3Qgc2V0CiMgQ09ORklHX01GRF9NQVg4OTk3IGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX01BWDg5
OTggaXMgbm90IHNldAojIENPTkZJR19NRkRfTVQ2MzYwIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZE
X01UNjM5NyBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9NRU5GMjFCTUMgaXMgbm90IHNldAojIENP
TkZJR19NRkRfVklQRVJCT0FSRCBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9OVFhFQyBpcyBub3Qg
c2V0CiMgQ09ORklHX01GRF9SRVRVIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1BDRjUwNjMzIGlz
IG5vdCBzZXQKIyBDT05GSUdfTUZEX1JEQzMyMVggaXMgbm90IHNldAojIENPTkZJR19NRkRfUlQ0
ODMxIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1JUNTAzMyBpcyBub3Qgc2V0CiMgQ09ORklHX01G
RF9SQzVUNTgzIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1JLODA4IGlzIG5vdCBzZXQKIyBDT05G
SUdfTUZEX1JONVQ2MTggaXMgbm90IHNldAojIENPTkZJR19NRkRfU0VDX0NPUkUgaXMgbm90IHNl
dAojIENPTkZJR19NRkRfU0k0NzZYX0NPUkUgaXMgbm90IHNldAojIENPTkZJR19NRkRfU001MDEg
aXMgbm90IHNldAojIENPTkZJR19NRkRfU0tZODE0NTIgaXMgbm90IHNldAojIENPTkZJR19NRkRf
U1RNUEUgaXMgbm90IHNldAojIENPTkZJR19NRkRfU1lTQ09OIGlzIG5vdCBzZXQKIyBDT05GSUdf
TUZEX1RJX0FNMzM1WF9UU0NBREMgaXMgbm90IHNldAojIENPTkZJR19NRkRfTFAzOTQzIGlzIG5v
dCBzZXQKIyBDT05GSUdfTUZEX0xQODc4OCBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9USV9MTVUg
aXMgbm90IHNldAojIENPTkZJR19NRkRfUEFMTUFTIGlzIG5vdCBzZXQKIyBDT05GSUdfVFBTNjEw
NVggaXMgbm90IHNldAojIENPTkZJR19UUFM2NTAxMCBpcyBub3Qgc2V0CiMgQ09ORklHX1RQUzY1
MDdYIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1RQUzY1MDg2IGlzIG5vdCBzZXQKIyBDT05GSUdf
TUZEX1RQUzY1MDkwIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1RQUzY1MjE3IGlzIG5vdCBzZXQK
IyBDT05GSUdfTUZEX1RJX0xQODczWCBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9USV9MUDg3NTY1
IGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1RQUzY1MjE4IGlzIG5vdCBzZXQKIyBDT05GSUdfTUZE
X1RQUzY1ODZYIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1RQUzY1OTEwIGlzIG5vdCBzZXQKIyBD
T05GSUdfTUZEX1RQUzY1OTEyX0kyQyBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9UUFM4MDAzMSBp
cyBub3Qgc2V0CiMgQ09ORklHX1RXTDQwMzBfQ09SRSBpcyBub3Qgc2V0CiMgQ09ORklHX1RXTDYw
NDBfQ09SRSBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9XTDEyNzNfQ09SRSBpcyBub3Qgc2V0CiMg
Q09ORklHX01GRF9MTTM1MzMgaXMgbm90IHNldAojIENPTkZJR19NRkRfVEMzNTg5WCBpcyBub3Qg
c2V0CiMgQ09ORklHX01GRF9UUU1YODYgaXMgbm90IHNldAojIENPTkZJR19NRkRfVlg4NTUgaXMg
bm90IHNldAojIENPTkZJR19NRkRfTE9DSE5BR0FSIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX0FS
SVpPTkFfSTJDIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1dNODQwMCBpcyBub3Qgc2V0CiMgQ09O
RklHX01GRF9XTTgzMVhfSTJDIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1dNODM1MF9JMkMgaXMg
bm90IHNldAojIENPTkZJR19NRkRfV004OTk0IGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1JPSE1f
QkQ3MThYWCBpcyBub3Qgc2V0CiMgQ09ORklHX01GRF9ST0hNX0JENzA1MjggaXMgbm90IHNldAoj
IENPTkZJR19NRkRfUk9ITV9CRDcxODI4IGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1JPSE1fQkQ5
NTdYTVVGIGlzIG5vdCBzZXQKIyBDT05GSUdfTUZEX1NUUE1JQzEgaXMgbm90IHNldAojIENPTkZJ
R19NRkRfU1RNRlggaXMgbm90IHNldAojIENPTkZJR19NRkRfQVRDMjYwWF9JMkMgaXMgbm90IHNl
dAojIENPTkZJR19NRkRfUUNPTV9QTTgwMDggaXMgbm90IHNldAojIENPTkZJR19SQVZFX1NQX0NP
UkUgaXMgbm90IHNldAojIENPTkZJR19NRkRfUlNNVV9JMkMgaXMgbm90IHNldAojIGVuZCBvZiBN
dWx0aWZ1bmN0aW9uIGRldmljZSBkcml2ZXJzCgojIENPTkZJR19SRUdVTEFUT1IgaXMgbm90IHNl
dAojIENPTkZJR19SQ19DT1JFIGlzIG5vdCBzZXQKIyBDT05GSUdfTUVESUFfQ0VDX1NVUFBPUlQg
aXMgbm90IHNldAojIENPTkZJR19NRURJQV9TVVBQT1JUIGlzIG5vdCBzZXQKCiMKIyBHcmFwaGlj
cyBzdXBwb3J0CiMKQ09ORklHX1ZHQV9BUkI9eQpDT05GSUdfVkdBX0FSQl9NQVhfR1BVUz0xNgpD
T05GSUdfRFJNPXkKIyBDT05GSUdfRFJNX0RQX0FVWF9DSEFSREVWIGlzIG5vdCBzZXQKIyBDT05G
SUdfRFJNX0RFQlVHX01NIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX0RFQlVHX1NFTEZURVNUIGlz
IG5vdCBzZXQKQ09ORklHX0RSTV9LTVNfSEVMUEVSPXkKQ09ORklHX0RSTV9GQkRFVl9FTVVMQVRJ
T049eQpDT05GSUdfRFJNX0ZCREVWX09WRVJBTExPQz0xMDAKIyBDT05GSUdfRFJNX0xPQURfRURJ
RF9GSVJNV0FSRSBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9EUF9DRUMgaXMgbm90IHNldApDT05G
SUdfRFJNX1RUTT15CkNPTkZJR19EUk1fVlJBTV9IRUxQRVI9eQpDT05GSUdfRFJNX1RUTV9IRUxQ
RVI9eQpDT05GSUdfRFJNX0dFTV9TSE1FTV9IRUxQRVI9eQoKIwojIEkyQyBlbmNvZGVyIG9yIGhl
bHBlciBjaGlwcwojCiMgQ09ORklHX0RSTV9JMkNfQ0g3MDA2IGlzIG5vdCBzZXQKIyBDT05GSUdf
RFJNX0kyQ19TSUwxNjQgaXMgbm90IHNldAojIENPTkZJR19EUk1fSTJDX05YUF9UREE5OThYIGlz
IG5vdCBzZXQKIyBDT05GSUdfRFJNX0kyQ19OWFBfVERBOTk1MCBpcyBub3Qgc2V0CiMgZW5kIG9m
IEkyQyBlbmNvZGVyIG9yIGhlbHBlciBjaGlwcwoKIwojIEFSTSBkZXZpY2VzCiMKIyBDT05GSUdf
RFJNX0hETENEIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX01BTElfRElTUExBWSBpcyBub3Qgc2V0
CiMgQ09ORklHX0RSTV9LT01FREEgaXMgbm90IHNldAojIGVuZCBvZiBBUk0gZGV2aWNlcwoKIyBD
T05GSUdfRFJNX1JBREVPTiBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9BTURHUFUgaXMgbm90IHNl
dAojIENPTkZJR19EUk1fTk9VVkVBVSBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9WR0VNIGlzIG5v
dCBzZXQKIyBDT05GSUdfRFJNX1ZLTVMgaXMgbm90IHNldAojIENPTkZJR19EUk1fVk1XR0ZYIGlz
IG5vdCBzZXQKIyBDT05GSUdfRFJNX1VETCBpcyBub3Qgc2V0CkNPTkZJR19EUk1fQVNUPXkKIyBD
T05GSUdfRFJNX01HQUcyMDAgaXMgbm90IHNldAojIENPTkZJR19EUk1fUkNBUl9EV19IRE1JIGlz
IG5vdCBzZXQKIyBDT05GSUdfRFJNX1JDQVJfTFZEUyBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9R
WEwgaXMgbm90IHNldApDT05GSUdfRFJNX1ZJUlRJT19HUFU9eQpDT05GSUdfRFJNX1BBTkVMPXkK
CiMKIyBEaXNwbGF5IFBhbmVscwojCiMgQ09ORklHX0RSTV9QQU5FTF9TQU1TVU5HX1M2RTg4QTBf
QU1TNDUyRUYwMSBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9QQU5FTF9TQU1TVU5HX1M2RThBQTAg
aXMgbm90IHNldAojIGVuZCBvZiBEaXNwbGF5IFBhbmVscwoKQ09ORklHX0RSTV9CUklER0U9eQpD
T05GSUdfRFJNX1BBTkVMX0JSSURHRT15CgojCiMgRGlzcGxheSBJbnRlcmZhY2UgQnJpZGdlcwoj
CiMgQ09ORklHX0RSTV9DRE5TX0RTSSBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9DSElQT05FX0lD
TjYyMTEgaXMgbm90IHNldAojIENPTkZJR19EUk1fQ0hST05URUxfQ0g3MDMzIGlzIG5vdCBzZXQK
IyBDT05GSUdfRFJNX0RJU1BMQVlfQ09OTkVDVE9SIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX0xP
TlRJVU1fTFQ4OTEyQiBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9MT05USVVNX0xUOTYxMSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0RSTV9MT05USVVNX0xUOTYxMVVYQyBpcyBub3Qgc2V0CiMgQ09ORklH
X0RSTV9JVEVfSVQ2NjEyMSBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9MVkRTX0NPREVDIGlzIG5v
dCBzZXQKIyBDT05GSUdfRFJNX01FR0FDSElQU19TVERQWFhYWF9HRV9CODUwVjNfRlcgaXMgbm90
IHNldAojIENPTkZJR19EUk1fTldMX01JUElfRFNJIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX05Y
UF9QVE4zNDYwIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1BBUkFERV9QUzg2MjIgaXMgbm90IHNl
dAojIENPTkZJR19EUk1fUEFSQURFX1BTODY0MCBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9TSUxf
U0lJODYyMCBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9TSUk5MDJYIGlzIG5vdCBzZXQKIyBDT05G
SUdfRFJNX1NJSTkyMzQgaXMgbm90IHNldAojIENPTkZJR19EUk1fU0lNUExFX0JSSURHRSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0RSTV9USElORV9USEM2M0xWRDEwMjQgaXMgbm90IHNldAojIENPTkZJ
R19EUk1fVE9TSElCQV9UQzM1ODc2MiBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9UT1NISUJBX1RD
MzU4NzY0IGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1RPU0hJQkFfVEMzNTg3NjcgaXMgbm90IHNl
dAojIENPTkZJR19EUk1fVE9TSElCQV9UQzM1ODc2OCBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9U
T1NISUJBX1RDMzU4Nzc1IGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1RJX1RGUDQxMCBpcyBub3Qg
c2V0CiMgQ09ORklHX0RSTV9USV9TTjY1RFNJODMgaXMgbm90IHNldAojIENPTkZJR19EUk1fVElf
U042NURTSTg2IGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX1RJX1RQRDEyUzAxNSBpcyBub3Qgc2V0
CiMgQ09ORklHX0RSTV9BTkFMT0dJWF9BTlg2MzQ1IGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX0FO
QUxPR0lYX0FOWDc4WFggaXMgbm90IHNldAojIENPTkZJR19EUk1fQU5BTE9HSVhfQU5YNzYyNSBp
cyBub3Qgc2V0CiMgQ09ORklHX0RSTV9JMkNfQURWNzUxMSBpcyBub3Qgc2V0CiMgQ09ORklHX0RS
TV9DRE5TX01IRFA4NTQ2IGlzIG5vdCBzZXQKIyBlbmQgb2YgRGlzcGxheSBJbnRlcmZhY2UgQnJp
ZGdlcwoKIyBDT05GSUdfRFJNX0VUTkFWSVYgaXMgbm90IHNldAojIENPTkZJR19EUk1fSElTSV9I
SUJNQyBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9ISVNJX0tJUklOIGlzIG5vdCBzZXQKIyBDT05G
SUdfRFJNX01YU0ZCIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX0FSQ1BHVSBpcyBub3Qgc2V0CiMg
Q09ORklHX0RSTV9CT0NIUyBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9DSVJSVVNfUUVNVSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0RSTV9HTTEyVTMyMCBpcyBub3Qgc2V0CiMgQ09ORklHX0RSTV9TSU1Q
TEVEUk0gaXMgbm90IHNldAojIENPTkZJR19EUk1fUEwxMTEgaXMgbm90IHNldAojIENPTkZJR19E
Uk1fWEVOX0ZST05URU5EIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX0xJTUEgaXMgbm90IHNldAoj
IENPTkZJR19EUk1fUEFORlJPU1QgaXMgbm90IHNldAojIENPTkZJR19EUk1fVElEU1MgaXMgbm90
IHNldAojIENPTkZJR19EUk1fR1VEIGlzIG5vdCBzZXQKIyBDT05GSUdfRFJNX0xFR0FDWSBpcyBu
b3Qgc2V0CkNPTkZJR19EUk1fUEFORUxfT1JJRU5UQVRJT05fUVVJUktTPXkKCiMKIyBGcmFtZSBi
dWZmZXIgRGV2aWNlcwojCkNPTkZJR19GQl9DTURMSU5FPXkKQ09ORklHX0ZCX05PVElGWT15CkNP
TkZJR19GQj15CiMgQ09ORklHX0ZJUk1XQVJFX0VESUQgaXMgbm90IHNldApDT05GSUdfRkJfQ0ZC
X0ZJTExSRUNUPXkKQ09ORklHX0ZCX0NGQl9DT1BZQVJFQT15CkNPTkZJR19GQl9DRkJfSU1BR0VC
TElUPXkKQ09ORklHX0ZCX1NZU19GSUxMUkVDVD15CkNPTkZJR19GQl9TWVNfQ09QWUFSRUE9eQpD
T05GSUdfRkJfU1lTX0lNQUdFQkxJVD15CiMgQ09ORklHX0ZCX0ZPUkVJR05fRU5ESUFOIGlzIG5v
dCBzZXQKQ09ORklHX0ZCX1NZU19GT1BTPXkKQ09ORklHX0ZCX0RFRkVSUkVEX0lPPXkKIyBDT05G
SUdfRkJfTU9ERV9IRUxQRVJTIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfVElMRUJMSVRUSU5HIGlz
IG5vdCBzZXQKCiMKIyBGcmFtZSBidWZmZXIgaGFyZHdhcmUgZHJpdmVycwojCiMgQ09ORklHX0ZC
X0NJUlJVUyBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX1BNMiBpcyBub3Qgc2V0CiMgQ09ORklHX0ZC
X0FSTUNMQ0QgaXMgbm90IHNldAojIENPTkZJR19GQl9DWUJFUjIwMDAgaXMgbm90IHNldAojIENP
TkZJR19GQl9BU0lMSUFOVCBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX0lNU1RUIGlzIG5vdCBzZXQK
IyBDT05GSUdfRkJfRUZJIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfT1BFTkNPUkVTIGlzIG5vdCBz
ZXQKIyBDT05GSUdfRkJfUzFEMTNYWFggaXMgbm90IHNldAojIENPTkZJR19GQl9OVklESUEgaXMg
bm90IHNldAojIENPTkZJR19GQl9SSVZBIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfSTc0MCBpcyBu
b3Qgc2V0CiMgQ09ORklHX0ZCX01BVFJPWCBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX1JBREVPTiBp
cyBub3Qgc2V0CiMgQ09ORklHX0ZCX0FUWTEyOCBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX0FUWSBp
cyBub3Qgc2V0CiMgQ09ORklHX0ZCX1MzIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfU0FWQUdFIGlz
IG5vdCBzZXQKIyBDT05GSUdfRkJfU0lTIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfTkVPTUFHSUMg
aXMgbm90IHNldAojIENPTkZJR19GQl9LWVJPIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfM0RGWCBp
cyBub3Qgc2V0CiMgQ09ORklHX0ZCX1ZPT0RPTzEgaXMgbm90IHNldAojIENPTkZJR19GQl9WVDg2
MjMgaXMgbm90IHNldAojIENPTkZJR19GQl9UUklERU5UIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJf
QVJLIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfUE0zIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfQ0FS
TUlORSBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX1NNU0NVRlggaXMgbm90IHNldAojIENPTkZJR19G
Ql9VREwgaXMgbm90IHNldAojIENPTkZJR19GQl9JQk1fR1hUNDUwMCBpcyBub3Qgc2V0CiMgQ09O
RklHX0ZCX1ZJUlRVQUwgaXMgbm90IHNldApDT05GSUdfWEVOX0ZCREVWX0ZST05URU5EPXkKIyBD
T05GSUdfRkJfTUVUUk9OT01FIGlzIG5vdCBzZXQKIyBDT05GSUdfRkJfTUI4NjJYWCBpcyBub3Qg
c2V0CiMgQ09ORklHX0ZCX1NJTVBMRSBpcyBub3Qgc2V0CiMgQ09ORklHX0ZCX1NTRDEzMDcgaXMg
bm90IHNldAojIENPTkZJR19GQl9TTTcxMiBpcyBub3Qgc2V0CiMgZW5kIG9mIEZyYW1lIGJ1ZmZl
ciBEZXZpY2VzCgojCiMgQmFja2xpZ2h0ICYgTENEIGRldmljZSBzdXBwb3J0CiMKIyBDT05GSUdf
TENEX0NMQVNTX0RFVklDRSBpcyBub3Qgc2V0CiMgQ09ORklHX0JBQ0tMSUdIVF9DTEFTU19ERVZJ
Q0UgaXMgbm90IHNldAojIGVuZCBvZiBCYWNrbGlnaHQgJiBMQ0QgZGV2aWNlIHN1cHBvcnQKCkNP
TkZJR19IRE1JPXkKCiMKIyBDb25zb2xlIGRpc3BsYXkgZHJpdmVyIHN1cHBvcnQKIwpDT05GSUdf
RFVNTVlfQ09OU09MRT15CkNPTkZJR19EVU1NWV9DT05TT0xFX0NPTFVNTlM9ODAKQ09ORklHX0RV
TU1ZX0NPTlNPTEVfUk9XUz0yNQpDT05GSUdfRlJBTUVCVUZGRVJfQ09OU09MRT15CiMgQ09ORklH
X0ZSQU1FQlVGRkVSX0NPTlNPTEVfTEVHQUNZX0FDQ0VMRVJBVElPTiBpcyBub3Qgc2V0CkNPTkZJ
R19GUkFNRUJVRkZFUl9DT05TT0xFX0RFVEVDVF9QUklNQVJZPXkKIyBDT05GSUdfRlJBTUVCVUZG
RVJfQ09OU09MRV9ST1RBVElPTiBpcyBub3Qgc2V0CiMgQ09ORklHX0ZSQU1FQlVGRkVSX0NPTlNP
TEVfREVGRVJSRURfVEFLRU9WRVIgaXMgbm90IHNldAojIGVuZCBvZiBDb25zb2xlIGRpc3BsYXkg
ZHJpdmVyIHN1cHBvcnQKCkNPTkZJR19MT0dPPXkKQ09ORklHX0xPR09fTElOVVhfTU9OTz15CkNP
TkZJR19MT0dPX0xJTlVYX1ZHQTE2PXkKQ09ORklHX0xPR09fTElOVVhfQ0xVVDIyND15CiMgZW5k
IG9mIEdyYXBoaWNzIHN1cHBvcnQKCiMgQ09ORklHX1NPVU5EIGlzIG5vdCBzZXQKCiMKIyBISUQg
c3VwcG9ydAojCkNPTkZJR19ISUQ9eQojIENPTkZJR19ISURfQkFUVEVSWV9TVFJFTkdUSCBpcyBu
b3Qgc2V0CiMgQ09ORklHX0hJRFJBVyBpcyBub3Qgc2V0CiMgQ09ORklHX1VISUQgaXMgbm90IHNl
dApDT05GSUdfSElEX0dFTkVSSUM9eQoKIwojIFNwZWNpYWwgSElEIGRyaXZlcnMKIwpDT05GSUdf
SElEX0E0VEVDSD15CiMgQ09ORklHX0hJRF9BQ0NVVE9VQ0ggaXMgbm90IHNldAojIENPTkZJR19I
SURfQUNSVVggaXMgbm90IHNldApDT05GSUdfSElEX0FQUExFPXkKIyBDT05GSUdfSElEX0FQUExF
SVIgaXMgbm90IHNldAojIENPTkZJR19ISURfQVVSRUFMIGlzIG5vdCBzZXQKQ09ORklHX0hJRF9C
RUxLSU49eQojIENPTkZJR19ISURfQkVUT1BfRkYgaXMgbm90IHNldApDT05GSUdfSElEX0NIRVJS
WT15CkNPTkZJR19ISURfQ0hJQ09OWT15CiMgQ09ORklHX0hJRF9DT1VHQVIgaXMgbm90IHNldAoj
IENPTkZJR19ISURfTUFDQUxMWSBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9DTUVESUEgaXMgbm90
IHNldAojIENPTkZJR19ISURfQ1JFQVRJVkVfU0IwNTQwIGlzIG5vdCBzZXQKQ09ORklHX0hJRF9D
WVBSRVNTPXkKIyBDT05GSUdfSElEX0RSQUdPTlJJU0UgaXMgbm90IHNldAojIENPTkZJR19ISURf
RU1TX0ZGIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX0VMRUNPTSBpcyBub3Qgc2V0CiMgQ09ORklH
X0hJRF9FTE8gaXMgbm90IHNldApDT05GSUdfSElEX0VaS0VZPXkKIyBDT05GSUdfSElEX0dFTUJJ
UkQgaXMgbm90IHNldAojIENPTkZJR19ISURfR0ZSTSBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9H
TE9SSU9VUyBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9IT0xURUsgaXMgbm90IHNldAojIENPTkZJ
R19ISURfVklWQUxESSBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9LRVlUT1VDSCBpcyBub3Qgc2V0
CiMgQ09ORklHX0hJRF9LWUUgaXMgbm90IHNldAojIENPTkZJR19ISURfVUNMT0dJQyBpcyBub3Qg
c2V0CiMgQ09ORklHX0hJRF9XQUxUT1AgaXMgbm90IHNldAojIENPTkZJR19ISURfVklFV1NPTklD
IGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX0dZUkFUSU9OIGlzIG5vdCBzZXQKIyBDT05GSUdfSElE
X0lDQURFIGlzIG5vdCBzZXQKQ09ORklHX0hJRF9JVEU9eQojIENPTkZJR19ISURfSkFCUkEgaXMg
bm90IHNldAojIENPTkZJR19ISURfVFdJTkhBTiBpcyBub3Qgc2V0CkNPTkZJR19ISURfS0VOU0lO
R1RPTj15CiMgQ09ORklHX0hJRF9MQ1BPV0VSIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX0xFTk9W
TyBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9NQUdJQ01PVVNFIGlzIG5vdCBzZXQKIyBDT05GSUdf
SElEX01BTFRST04gaXMgbm90IHNldAojIENPTkZJR19ISURfTUFZRkxBU0ggaXMgbm90IHNldApD
T05GSUdfSElEX1JFRFJBR09OPXkKQ09ORklHX0hJRF9NSUNST1NPRlQ9eQpDT05GSUdfSElEX01P
TlRFUkVZPXkKIyBDT05GSUdfSElEX01VTFRJVE9VQ0ggaXMgbm90IHNldAojIENPTkZJR19ISURf
TlRJIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX05UUklHIGlzIG5vdCBzZXQKIyBDT05GSUdfSElE
X09SVEVLIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX1BBTlRIRVJMT1JEIGlzIG5vdCBzZXQKIyBD
T05GSUdfSElEX1BFTk1PVU5UIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX1BFVEFMWU5YIGlzIG5v
dCBzZXQKIyBDT05GSUdfSElEX1BJQ09MQ0QgaXMgbm90IHNldAojIENPTkZJR19ISURfUExBTlRS
T05JQ1MgaXMgbm90IHNldAojIENPTkZJR19ISURfUExBWVNUQVRJT04gaXMgbm90IHNldAojIENP
TkZJR19ISURfUFJJTUFYIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX1JFVFJPREUgaXMgbm90IHNl
dAojIENPTkZJR19ISURfUk9DQ0FUIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX1NBSVRFSyBpcyBu
b3Qgc2V0CiMgQ09ORklHX0hJRF9TQU1TVU5HIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX1NFTUlU
RUsgaXMgbm90IHNldAojIENPTkZJR19ISURfU1BFRURMSU5LIGlzIG5vdCBzZXQKIyBDT05GSUdf
SElEX1NURUFNIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX1NURUVMU0VSSUVTIGlzIG5vdCBzZXQK
IyBDT05GSUdfSElEX1NVTlBMVVMgaXMgbm90IHNldAojIENPTkZJR19ISURfUk1JIGlzIG5vdCBz
ZXQKIyBDT05GSUdfSElEX0dSRUVOQVNJQSBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9TTUFSVEpP
WVBMVVMgaXMgbm90IHNldAojIENPTkZJR19ISURfVElWTyBpcyBub3Qgc2V0CiMgQ09ORklHX0hJ
RF9UT1BTRUVEIGlzIG5vdCBzZXQKIyBDT05GSUdfSElEX1RIUlVTVE1BU1RFUiBpcyBub3Qgc2V0
CiMgQ09ORklHX0hJRF9VRFJBV19QUzMgaXMgbm90IHNldAojIENPTkZJR19ISURfV0FDT00gaXMg
bm90IHNldAojIENPTkZJR19ISURfWElOTU8gaXMgbm90IHNldAojIENPTkZJR19ISURfWkVST1BM
VVMgaXMgbm90IHNldAojIENPTkZJR19ISURfWllEQUNST04gaXMgbm90IHNldAojIENPTkZJR19I
SURfU0VOU09SX0hVQiBpcyBub3Qgc2V0CiMgQ09ORklHX0hJRF9BTFBTIGlzIG5vdCBzZXQKIyBD
T05GSUdfSElEX01DUDIyMjEgaXMgbm90IHNldAojIGVuZCBvZiBTcGVjaWFsIEhJRCBkcml2ZXJz
CgojCiMgVVNCIEhJRCBzdXBwb3J0CiMKQ09ORklHX1VTQl9ISUQ9eQojIENPTkZJR19ISURfUElE
IGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0hJRERFViBpcyBub3Qgc2V0CiMgZW5kIG9mIFVTQiBI
SUQgc3VwcG9ydAoKIwojIEkyQyBISUQgc3VwcG9ydAojCiMgQ09ORklHX0kyQ19ISURfQUNQSSBp
cyBub3Qgc2V0CiMgQ09ORklHX0kyQ19ISURfT0YgaXMgbm90IHNldAojIENPTkZJR19JMkNfSElE
X09GX0dPT0RJWCBpcyBub3Qgc2V0CiMgZW5kIG9mIEkyQyBISUQgc3VwcG9ydAojIGVuZCBvZiBI
SUQgc3VwcG9ydAoKQ09ORklHX1VTQl9PSENJX0xJVFRMRV9FTkRJQU49eQpDT05GSUdfVVNCX1NV
UFBPUlQ9eQpDT05GSUdfVVNCX0NPTU1PTj15CiMgQ09ORklHX1VTQl9VTFBJX0JVUyBpcyBub3Qg
c2V0CiMgQ09ORklHX1VTQl9DT05OX0dQSU8gaXMgbm90IHNldApDT05GSUdfVVNCX0FSQ0hfSEFT
X0hDRD15CkNPTkZJR19VU0I9eQpDT05GSUdfVVNCX1BDST15CiMgQ09ORklHX1VTQl9BTk5PVU5D
RV9ORVdfREVWSUNFUyBpcyBub3Qgc2V0CgojCiMgTWlzY2VsbGFuZW91cyBVU0Igb3B0aW9ucwoj
CkNPTkZJR19VU0JfREVGQVVMVF9QRVJTSVNUPXkKIyBDT05GSUdfVVNCX0ZFV19JTklUX1JFVFJJ
RVMgaXMgbm90IHNldAojIENPTkZJR19VU0JfRFlOQU1JQ19NSU5PUlMgaXMgbm90IHNldAojIENP
TkZJR19VU0JfT1RHIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX09UR19QUk9EVUNUTElTVCBpcyBu
b3Qgc2V0CkNPTkZJR19VU0JfQVVUT1NVU1BFTkRfREVMQVk9MgojIENPTkZJR19VU0JfTU9OIGlz
IG5vdCBzZXQKCiMKIyBVU0IgSG9zdCBDb250cm9sbGVyIERyaXZlcnMKIwojIENPTkZJR19VU0Jf
QzY3WDAwX0hDRCBpcyBub3Qgc2V0CkNPTkZJR19VU0JfWEhDSV9IQ0Q9eQojIENPTkZJR19VU0Jf
WEhDSV9EQkdDQVAgaXMgbm90IHNldApDT05GSUdfVVNCX1hIQ0lfUENJPXkKQ09ORklHX1VTQl9Y
SENJX1BDSV9SRU5FU0FTPXkKQ09ORklHX1VTQl9YSENJX1BMQVRGT1JNPXkKQ09ORklHX1VTQl9F
SENJX0hDRD15CkNPTkZJR19VU0JfRUhDSV9ST09UX0hVQl9UVD15CkNPTkZJR19VU0JfRUhDSV9U
VF9ORVdTQ0hFRD15CkNPTkZJR19VU0JfRUhDSV9QQ0k9eQojIENPTkZJR19VU0JfRUhDSV9GU0wg
aXMgbm90IHNldAojIENPTkZJR19VU0JfRUhDSV9IQ0RfUExBVEZPUk0gaXMgbm90IHNldAojIENP
TkZJR19VU0JfT1hVMjEwSFBfSENEIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0lTUDExNlhfSENE
IGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0ZPVEcyMTBfSENEIGlzIG5vdCBzZXQKIyBDT05GSUdf
VVNCX09IQ0lfSENEIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1VIQ0lfSENEIGlzIG5vdCBzZXQK
IyBDT05GSUdfVVNCX1NMODExX0hDRCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9SOEE2NjU5N19I
Q0QgaXMgbm90IHNldAojIENPTkZJR19VU0JfSENEX1RFU1RfTU9ERSBpcyBub3Qgc2V0CgojCiMg
VVNCIERldmljZSBDbGFzcyBkcml2ZXJzCiMKIyBDT05GSUdfVVNCX0FDTSBpcyBub3Qgc2V0CiMg
Q09ORklHX1VTQl9QUklOVEVSIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1dETSBpcyBub3Qgc2V0
CiMgQ09ORklHX1VTQl9UTUMgaXMgbm90IHNldAoKIwojIE5PVEU6IFVTQl9TVE9SQUdFIGRlcGVu
ZHMgb24gU0NTSSBidXQgQkxLX0RFVl9TRCBtYXkKIwoKIwojIGFsc28gYmUgbmVlZGVkOyBzZWUg
VVNCX1NUT1JBR0UgSGVscCBmb3IgbW9yZSBpbmZvCiMKQ09ORklHX1VTQl9TVE9SQUdFPXkKIyBD
T05GSUdfVVNCX1NUT1JBR0VfREVCVUcgaXMgbm90IHNldAojIENPTkZJR19VU0JfU1RPUkFHRV9S
RUFMVEVLIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NUT1JBR0VfREFUQUZBQiBpcyBub3Qgc2V0
CiMgQ09ORklHX1VTQl9TVE9SQUdFX0ZSRUVDT00gaXMgbm90IHNldAojIENPTkZJR19VU0JfU1RP
UkFHRV9JU0QyMDAgaXMgbm90IHNldAojIENPTkZJR19VU0JfU1RPUkFHRV9VU0JBVCBpcyBub3Qg
c2V0CiMgQ09ORklHX1VTQl9TVE9SQUdFX1NERFIwOSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9T
VE9SQUdFX1NERFI1NSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TVE9SQUdFX0pVTVBTSE9UIGlz
IG5vdCBzZXQKIyBDT05GSUdfVVNCX1NUT1JBR0VfQUxBVURBIGlzIG5vdCBzZXQKIyBDT05GSUdf
VVNCX1NUT1JBR0VfT05FVE9VQ0ggaXMgbm90IHNldAojIENPTkZJR19VU0JfU1RPUkFHRV9LQVJN
QSBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9TVE9SQUdFX0NZUFJFU1NfQVRBQ0IgaXMgbm90IHNl
dAojIENPTkZJR19VU0JfU1RPUkFHRV9FTkVfVUI2MjUwIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNC
X1VBUyBpcyBub3Qgc2V0CgojCiMgVVNCIEltYWdpbmcgZGV2aWNlcwojCiMgQ09ORklHX1VTQl9N
REM4MDAgaXMgbm90IHNldAojIENPTkZJR19VU0JfTUlDUk9URUsgaXMgbm90IHNldAojIENPTkZJ
R19VU0JJUF9DT1JFIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0NETlNfU1VQUE9SVCBpcyBub3Qg
c2V0CiMgQ09ORklHX1VTQl9NVVNCX0hEUkMgaXMgbm90IHNldAojIENPTkZJR19VU0JfRFdDMyBp
cyBub3Qgc2V0CiMgQ09ORklHX1VTQl9EV0MyIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0NISVBJ
REVBIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0lTUDE3NjAgaXMgbm90IHNldAoKIwojIFVTQiBw
b3J0IGRyaXZlcnMKIwojIENPTkZJR19VU0JfU0VSSUFMIGlzIG5vdCBzZXQKCiMKIyBVU0IgTWlz
Y2VsbGFuZW91cyBkcml2ZXJzCiMKIyBDT05GSUdfVVNCX0VNSTYyIGlzIG5vdCBzZXQKIyBDT05G
SUdfVVNCX0VNSTI2IGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0FEVVRVWCBpcyBub3Qgc2V0CiMg
Q09ORklHX1VTQl9TRVZTRUcgaXMgbm90IHNldAojIENPTkZJR19VU0JfTEVHT1RPV0VSIGlzIG5v
dCBzZXQKIyBDT05GSUdfVVNCX0xDRCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9DWVBSRVNTX0NZ
N0M2MyBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9DWVRIRVJNIGlzIG5vdCBzZXQKIyBDT05GSUdf
VVNCX0lETU9VU0UgaXMgbm90IHNldAojIENPTkZJR19VU0JfRlRESV9FTEFOIGlzIG5vdCBzZXQK
IyBDT05GSUdfVVNCX0FQUExFRElTUExBWSBpcyBub3Qgc2V0CiMgQ09ORklHX0FQUExFX01GSV9G
QVNUQ0hBUkdFIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1NJU1VTQlZHQSBpcyBub3Qgc2V0CiMg
Q09ORklHX1VTQl9MRCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9UUkFOQ0VWSUJSQVRPUiBpcyBu
b3Qgc2V0CiMgQ09ORklHX1VTQl9JT1dBUlJJT1IgaXMgbm90IHNldAojIENPTkZJR19VU0JfVEVT
VCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9FSFNFVF9URVNUX0ZJWFRVUkUgaXMgbm90IHNldAoj
IENPTkZJR19VU0JfSVNJR0hURlcgaXMgbm90IHNldAojIENPTkZJR19VU0JfWVVSRVggaXMgbm90
IHNldAojIENPTkZJR19VU0JfRVpVU0JfRlgyIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0hVQl9V
U0IyNTFYQiBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9IU0lDX1VTQjM1MDMgaXMgbm90IHNldAoj
IENPTkZJR19VU0JfSFNJQ19VU0I0NjA0IGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX0xJTktfTEFZ
RVJfVEVTVCBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9DSEFPU0tFWSBpcyBub3Qgc2V0CgojCiMg
VVNCIFBoeXNpY2FsIExheWVyIGRyaXZlcnMKIwojIENPTkZJR19OT1BfVVNCX1hDRUlWIGlzIG5v
dCBzZXQKIyBDT05GSUdfVVNCX0dQSU9fVkJVUyBpcyBub3Qgc2V0CiMgQ09ORklHX1VTQl9JU1Ax
MzAxIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1VMUEkgaXMgbm90IHNldAojIGVuZCBvZiBVU0Ig
UGh5c2ljYWwgTGF5ZXIgZHJpdmVycwoKIyBDT05GSUdfVVNCX0dBREdFVCBpcyBub3Qgc2V0CiMg
Q09ORklHX1RZUEVDIGlzIG5vdCBzZXQKIyBDT05GSUdfVVNCX1JPTEVfU1dJVENIIGlzIG5vdCBz
ZXQKIyBDT05GSUdfTU1DIGlzIG5vdCBzZXQKIyBDT05GSUdfTUVNU1RJQ0sgaXMgbm90IHNldAoj
IENPTkZJR19ORVdfTEVEUyBpcyBub3Qgc2V0CiMgQ09ORklHX0FDQ0VTU0lCSUxJVFkgaXMgbm90
IHNldAojIENPTkZJR19JTkZJTklCQU5EIGlzIG5vdCBzZXQKQ09ORklHX0VEQUNfU1VQUE9SVD15
CiMgQ09ORklHX0VEQUMgaXMgbm90IHNldApDT05GSUdfUlRDX0xJQj15CkNPTkZJR19SVENfQ0xB
U1M9eQpDT05GSUdfUlRDX0hDVE9TWVM9eQpDT05GSUdfUlRDX0hDVE9TWVNfREVWSUNFPSJydGMw
IgpDT05GSUdfUlRDX1NZU1RPSEM9eQpDT05GSUdfUlRDX1NZU1RPSENfREVWSUNFPSJydGMwIgoj
IENPTkZJR19SVENfREVCVUcgaXMgbm90IHNldApDT05GSUdfUlRDX05WTUVNPXkKCiMKIyBSVEMg
aW50ZXJmYWNlcwojCkNPTkZJR19SVENfSU5URl9TWVNGUz15CkNPTkZJR19SVENfSU5URl9QUk9D
PXkKQ09ORklHX1JUQ19JTlRGX0RFVj15CiMgQ09ORklHX1JUQ19JTlRGX0RFVl9VSUVfRU1VTCBp
cyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfVEVTVCBpcyBub3Qgc2V0CgojCiMgSTJDIFJUQyBk
cml2ZXJzCiMKIyBDT05GSUdfUlRDX0RSVl9BQkI1WkVTMyBpcyBub3Qgc2V0CiMgQ09ORklHX1JU
Q19EUlZfQUJFT1o5IGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9BQlg4MFggaXMgbm90IHNl
dAojIENPTkZJR19SVENfRFJWX0RTMTMwNyBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfRFMx
Mzc0IGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9EUzE2NzIgaXMgbm90IHNldAojIENPTkZJ
R19SVENfRFJWX0hZTTg1NjMgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX01BWDY5MDAgaXMg
bm90IHNldAojIENPTkZJR19SVENfRFJWX1JTNUMzNzIgaXMgbm90IHNldAojIENPTkZJR19SVENf
RFJWX0lTTDEyMDggaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX0lTTDEyMDIyIGlzIG5vdCBz
ZXQKIyBDT05GSUdfUlRDX0RSVl9JU0wxMjAyNiBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZf
WDEyMDUgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX1BDRjg1MjMgaXMgbm90IHNldAojIENP
TkZJR19SVENfRFJWX1BDRjg1MDYzIGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9QQ0Y4NTM2
MyBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfUENGODU2MyBpcyBub3Qgc2V0CiMgQ09ORklH
X1JUQ19EUlZfUENGODU4MyBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfTTQxVDgwIGlzIG5v
dCBzZXQKIyBDT05GSUdfUlRDX0RSVl9CUTMySyBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZf
UzM1MzkwQSBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfRk0zMTMwIGlzIG5vdCBzZXQKIyBD
T05GSUdfUlRDX0RSVl9SWDgwMTAgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX1JYODU4MSBp
cyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfUlg4MDI1IGlzIG5vdCBzZXQKIyBDT05GSUdfUlRD
X0RSVl9FTTMwMjcgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX1JWMzAyOCBpcyBub3Qgc2V0
CiMgQ09ORklHX1JUQ19EUlZfUlYzMDMyIGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9SVjg4
MDMgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX1NEMzA3OCBpcyBub3Qgc2V0CgojCiMgU1BJ
IFJUQyBkcml2ZXJzCiMKQ09ORklHX1JUQ19JMkNfQU5EX1NQST15CgojCiMgU1BJIGFuZCBJMkMg
UlRDIGRyaXZlcnMKIwojIENPTkZJR19SVENfRFJWX0RTMzIzMiBpcyBub3Qgc2V0CiMgQ09ORklH
X1JUQ19EUlZfUENGMjEyNyBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfUlYzMDI5QzIgaXMg
bm90IHNldAojIENPTkZJR19SVENfRFJWX1JYNjExMCBpcyBub3Qgc2V0CgojCiMgUGxhdGZvcm0g
UlRDIGRyaXZlcnMKIwojIENPTkZJR19SVENfRFJWX0RTMTI4NiBpcyBub3Qgc2V0CiMgQ09ORklH
X1JUQ19EUlZfRFMxNTExIGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9EUzE1NTMgaXMgbm90
IHNldAojIENPTkZJR19SVENfRFJWX0RTMTY4NV9GQU1JTFkgaXMgbm90IHNldAojIENPTkZJR19S
VENfRFJWX0RTMTc0MiBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfRFMyNDA0IGlzIG5vdCBz
ZXQKQ09ORklHX1JUQ19EUlZfRUZJPXkKIyBDT05GSUdfUlRDX0RSVl9TVEsxN1RBOCBpcyBub3Qg
c2V0CiMgQ09ORklHX1JUQ19EUlZfTTQ4VDg2IGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9N
NDhUMzUgaXMgbm90IHNldAojIENPTkZJR19SVENfRFJWX000OFQ1OSBpcyBub3Qgc2V0CiMgQ09O
RklHX1JUQ19EUlZfTVNNNjI0MiBpcyBub3Qgc2V0CiMgQ09ORklHX1JUQ19EUlZfQlE0ODAyIGlz
IG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9SUDVDMDEgaXMgbm90IHNldAojIENPTkZJR19SVENf
RFJWX1YzMDIwIGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9aWU5RTVAgaXMgbm90IHNldAoK
IwojIG9uLUNQVSBSVEMgZHJpdmVycwojCiMgQ09ORklHX1JUQ19EUlZfUEwwMzAgaXMgbm90IHNl
dAojIENPTkZJR19SVENfRFJWX1BMMDMxIGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9DQURF
TkNFIGlzIG5vdCBzZXQKIyBDT05GSUdfUlRDX0RSVl9GVFJUQzAxMCBpcyBub3Qgc2V0CiMgQ09O
RklHX1JUQ19EUlZfUjczMDEgaXMgbm90IHNldAoKIwojIEhJRCBTZW5zb3IgUlRDIGRyaXZlcnMK
IwojIENPTkZJR19SVENfRFJWX0dPTERGSVNIIGlzIG5vdCBzZXQKIyBDT05GSUdfRE1BREVWSUNF
UyBpcyBub3Qgc2V0CgojCiMgRE1BQlVGIG9wdGlvbnMKIwpDT05GSUdfU1lOQ19GSUxFPXkKIyBD
T05GSUdfU1dfU1lOQyBpcyBub3Qgc2V0CiMgQ09ORklHX1VETUFCVUYgaXMgbm90IHNldAojIENP
TkZJR19ETUFCVUZfTU9WRV9OT1RJRlkgaXMgbm90IHNldAojIENPTkZJR19ETUFCVUZfREVCVUcg
aXMgbm90IHNldAojIENPTkZJR19ETUFCVUZfU0VMRlRFU1RTIGlzIG5vdCBzZXQKIyBDT05GSUdf
RE1BQlVGX0hFQVBTIGlzIG5vdCBzZXQKIyBDT05GSUdfRE1BQlVGX1NZU0ZTX1NUQVRTIGlzIG5v
dCBzZXQKIyBlbmQgb2YgRE1BQlVGIG9wdGlvbnMKCiMgQ09ORklHX0FVWERJU1BMQVkgaXMgbm90
IHNldAojIENPTkZJR19VSU8gaXMgbm90IHNldAojIENPTkZJR19WRklPIGlzIG5vdCBzZXQKIyBD
T05GSUdfVklSVF9EUklWRVJTIGlzIG5vdCBzZXQKQ09ORklHX1ZJUlRJTz15CkNPTkZJR19WSVJU
SU9fUENJX0xJQj15CkNPTkZJR19WSVJUSU9fTUVOVT15CkNPTkZJR19WSVJUSU9fUENJPXkKQ09O
RklHX1ZJUlRJT19QQ0lfTEVHQUNZPXkKQ09ORklHX1ZJUlRJT19CQUxMT09OPXkKQ09ORklHX1ZJ
UlRJT19JTlBVVD1tCkNPTkZJR19WSVJUSU9fTU1JTz15CiMgQ09ORklHX1ZJUlRJT19NTUlPX0NN
RExJTkVfREVWSUNFUyBpcyBub3Qgc2V0CkNPTkZJR19WSVJUSU9fRE1BX1NIQVJFRF9CVUZGRVI9
eQojIENPTkZJR19WRFBBIGlzIG5vdCBzZXQKQ09ORklHX1ZIT1NUX01FTlU9eQojIENPTkZJR19W
SE9TVF9ORVQgaXMgbm90IHNldAojIENPTkZJR19WSE9TVF9WU09DSyBpcyBub3Qgc2V0CiMgQ09O
RklHX1ZIT1NUX0NST1NTX0VORElBTl9MRUdBQ1kgaXMgbm90IHNldAoKIwojIE1pY3Jvc29mdCBI
eXBlci1WIGd1ZXN0IHN1cHBvcnQKIwojIENPTkZJR19IWVBFUlYgaXMgbm90IHNldAojIGVuZCBv
ZiBNaWNyb3NvZnQgSHlwZXItViBndWVzdCBzdXBwb3J0CgojCiMgWGVuIGRyaXZlciBzdXBwb3J0
CiMKQ09ORklHX1hFTl9CQUxMT09OPXkKQ09ORklHX1hFTl9TQ1JVQl9QQUdFU19ERUZBVUxUPXkK
Q09ORklHX1hFTl9ERVZfRVZUQ0hOPXkKQ09ORklHX1hFTl9CQUNLRU5EPXkKQ09ORklHX1hFTkZT
PXkKQ09ORklHX1hFTl9DT01QQVRfWEVORlM9eQpDT05GSUdfWEVOX1NZU19IWVBFUlZJU09SPXkK
Q09ORklHX1hFTl9YRU5CVVNfRlJPTlRFTkQ9eQpDT05GSUdfWEVOX0dOVERFVj1tCkNPTkZJR19Y
RU5fR1JBTlRfREVWX0FMTE9DPW0KIyBDT05GSUdfWEVOX0dSQU5UX0RNQV9BTExPQyBpcyBub3Qg
c2V0CkNPTkZJR19TV0lPVExCX1hFTj15CiMgQ09ORklHX1hFTl9QVkNBTExTX0ZST05URU5EIGlz
IG5vdCBzZXQKIyBDT05GSUdfWEVOX1BWQ0FMTFNfQkFDS0VORCBpcyBub3Qgc2V0CkNPTkZJR19Y
RU5fUFJJVkNNRD15CkNPTkZJR19YRU5fRUZJPXkKQ09ORklHX1hFTl9BVVRPX1hMQVRFPXkKIyBl
bmQgb2YgWGVuIGRyaXZlciBzdXBwb3J0CgojIENPTkZJR19HUkVZQlVTIGlzIG5vdCBzZXQKIyBD
T05GSUdfQ09NRURJIGlzIG5vdCBzZXQKIyBDT05GSUdfU1RBR0lORyBpcyBub3Qgc2V0CiMgQ09O
RklHX0dPTERGSVNIIGlzIG5vdCBzZXQKIyBDT05GSUdfQ0hST01FX1BMQVRGT1JNUyBpcyBub3Qg
c2V0CiMgQ09ORklHX01FTExBTk9YX1BMQVRGT1JNIGlzIG5vdCBzZXQKQ09ORklHX1NVUkZBQ0Vf
UExBVEZPUk1TPXkKIyBDT05GSUdfU1VSRkFDRV8zX1BPV0VSX09QUkVHSU9OIGlzIG5vdCBzZXQK
IyBDT05GSUdfU1VSRkFDRV9HUEUgaXMgbm90IHNldAojIENPTkZJR19TVVJGQUNFX0hPVFBMVUcg
aXMgbm90IHNldAojIENPTkZJR19TVVJGQUNFX1BSTzNfQlVUVE9OIGlzIG5vdCBzZXQKIyBDT05G
SUdfU1VSRkFDRV9BR0dSRUdBVE9SIGlzIG5vdCBzZXQKQ09ORklHX0hBVkVfQ0xLPXkKQ09ORklH
X0hBVkVfQ0xLX1BSRVBBUkU9eQpDT05GSUdfQ09NTU9OX0NMSz15CgojCiMgQ2xvY2sgZHJpdmVy
IGZvciBBUk0gUmVmZXJlbmNlIGRlc2lnbnMKIwojIENPTkZJR19JQ1NUIGlzIG5vdCBzZXQKIyBD
T05GSUdfQ0xLX1NQODEwIGlzIG5vdCBzZXQKIyBlbmQgb2YgQ2xvY2sgZHJpdmVyIGZvciBBUk0g
UmVmZXJlbmNlIGRlc2lnbnMKCiMgQ09ORklHX0NPTU1PTl9DTEtfTUFYOTQ4NSBpcyBub3Qgc2V0
CkNPTkZJR19DT01NT05fQ0xLX1NDUEk9eQojIENPTkZJR19DT01NT05fQ0xLX1NJNTM0MSBpcyBu
b3Qgc2V0CiMgQ09ORklHX0NPTU1PTl9DTEtfU0k1MzUxIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09N
TU9OX0NMS19TSTUxNCBpcyBub3Qgc2V0CiMgQ09ORklHX0NPTU1PTl9DTEtfU0k1NDQgaXMgbm90
IHNldAojIENPTkZJR19DT01NT05fQ0xLX1NJNTcwIGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9O
X0NMS19DRENFNzA2IGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19DRENFOTI1IGlzIG5v
dCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19DUzIwMDBfQ1AgaXMgbm90IHNldAojIENPTkZJR19D
T01NT05fQ0xLX0FYSV9DTEtHRU4gaXMgbm90IHNldAojIENPTkZJR19DT01NT05fQ0xLX1hHRU5F
IGlzIG5vdCBzZXQKIyBDT05GSUdfQ09NTU9OX0NMS19WQzUgaXMgbm90IHNldAojIENPTkZJR19D
T01NT05fQ0xLX0ZJWEVEX01NSU8gaXMgbm90IHNldAojIENPTkZJR19YSUxJTlhfVkNVIGlzIG5v
dCBzZXQKIyBDT05GSUdfSFdTUElOTE9DSyBpcyBub3Qgc2V0CgojCiMgQ2xvY2sgU291cmNlIGRy
aXZlcnMKIwpDT05GSUdfVElNRVJfT0Y9eQpDT05GSUdfVElNRVJfQUNQST15CkNPTkZJR19USU1F
Ul9QUk9CRT15CkNPTkZJR19BUk1fQVJDSF9USU1FUj15CkNPTkZJR19BUk1fQVJDSF9USU1FUl9F
VlRTVFJFQU09eQpDT05GSUdfQVJNX0FSQ0hfVElNRVJfT09MX1dPUktBUk9VTkQ9eQpDT05GSUdf
RlNMX0VSUkFUVU1fQTAwODU4NT15CkNPTkZJR19ISVNJTElDT05fRVJSQVRVTV8xNjEwMTAxMDE9
eQpDT05GSUdfQVJNNjRfRVJSQVRVTV84NTg5MjE9eQojIENPTkZJR19NSUNST0NISVBfUElUNjRC
IGlzIG5vdCBzZXQKIyBlbmQgb2YgQ2xvY2sgU291cmNlIGRyaXZlcnMKCkNPTkZJR19NQUlMQk9Y
PXkKIyBDT05GSUdfQVJNX01IVSBpcyBub3Qgc2V0CiMgQ09ORklHX0FSTV9NSFVfVjIgaXMgbm90
IHNldAojIENPTkZJR19QTEFURk9STV9NSFUgaXMgbm90IHNldAojIENPTkZJR19QTDMyMF9NQk9Y
IGlzIG5vdCBzZXQKQ09ORklHX1BDQz15CiMgQ09ORklHX0FMVEVSQV9NQk9YIGlzIG5vdCBzZXQK
IyBDT05GSUdfTUFJTEJPWF9URVNUIGlzIG5vdCBzZXQKQ09ORklHX0lPTU1VX0lPVkE9eQpDT05G
SUdfSU9NTVVfQVBJPXkKQ09ORklHX0lPTU1VX1NVUFBPUlQ9eQoKIwojIEdlbmVyaWMgSU9NTVUg
UGFnZXRhYmxlIFN1cHBvcnQKIwojIENPTkZJR19JT01NVV9JT19QR1RBQkxFX0xQQUUgaXMgbm90
IHNldAojIENPTkZJR19JT01NVV9JT19QR1RBQkxFX0FSTVY3UyBpcyBub3Qgc2V0CiMgZW5kIG9m
IEdlbmVyaWMgSU9NTVUgUGFnZXRhYmxlIFN1cHBvcnQKCiMgQ09ORklHX0lPTU1VX0RFQlVHRlMg
aXMgbm90IHNldApDT05GSUdfSU9NTVVfREVGQVVMVF9ETUFfU1RSSUNUPXkKIyBDT05GSUdfSU9N
TVVfREVGQVVMVF9ETUFfTEFaWSBpcyBub3Qgc2V0CiMgQ09ORklHX0lPTU1VX0RFRkFVTFRfUEFT
U1RIUk9VR0ggaXMgbm90IHNldApDT05GSUdfT0ZfSU9NTVU9eQpDT05GSUdfSU9NTVVfRE1BPXkK
IyBDT05GSUdfQVJNX1NNTVUgaXMgbm90IHNldAojIENPTkZJR19BUk1fU01NVV9WMyBpcyBub3Qg
c2V0CiMgQ09ORklHX1ZJUlRJT19JT01NVSBpcyBub3Qgc2V0CgojCiMgUmVtb3RlcHJvYyBkcml2
ZXJzCiMKIyBDT05GSUdfUkVNT1RFUFJPQyBpcyBub3Qgc2V0CiMgZW5kIG9mIFJlbW90ZXByb2Mg
ZHJpdmVycwoKIwojIFJwbXNnIGRyaXZlcnMKIwojIENPTkZJR19SUE1TR19RQ09NX0dMSU5LX1JQ
TSBpcyBub3Qgc2V0CiMgQ09ORklHX1JQTVNHX1ZJUlRJTyBpcyBub3Qgc2V0CiMgZW5kIG9mIFJw
bXNnIGRyaXZlcnMKCiMgQ09ORklHX1NPVU5EV0lSRSBpcyBub3Qgc2V0CgojCiMgU09DIChTeXN0
ZW0gT24gQ2hpcCkgc3BlY2lmaWMgRHJpdmVycwojCgojCiMgQW1sb2dpYyBTb0MgZHJpdmVycwoj
CiMgZW5kIG9mIEFtbG9naWMgU29DIGRyaXZlcnMKCiMKIyBCcm9hZGNvbSBTb0MgZHJpdmVycwoj
CiMgQ09ORklHX1NPQ19CUkNNU1RCIGlzIG5vdCBzZXQKIyBlbmQgb2YgQnJvYWRjb20gU29DIGRy
aXZlcnMKCiMKIyBOWFAvRnJlZXNjYWxlIFFvcklRIFNvQyBkcml2ZXJzCiMKIyBDT05GSUdfUVVJ
Q0NfRU5HSU5FIGlzIG5vdCBzZXQKIyBDT05GSUdfRlNMX1JDUE0gaXMgbm90IHNldAojIGVuZCBv
ZiBOWFAvRnJlZXNjYWxlIFFvcklRIFNvQyBkcml2ZXJzCgojCiMgaS5NWCBTb0MgZHJpdmVycwoj
CiMgZW5kIG9mIGkuTVggU29DIGRyaXZlcnMKCiMKIyBFbmFibGUgTGl0ZVggU29DIEJ1aWxkZXIg
c3BlY2lmaWMgZHJpdmVycwojCiMgQ09ORklHX0xJVEVYX1NPQ19DT05UUk9MTEVSIGlzIG5vdCBz
ZXQKIyBlbmQgb2YgRW5hYmxlIExpdGVYIFNvQyBCdWlsZGVyIHNwZWNpZmljIGRyaXZlcnMKCiMK
IyBRdWFsY29tbSBTb0MgZHJpdmVycwojCiMgZW5kIG9mIFF1YWxjb21tIFNvQyBkcml2ZXJzCgoj
IENPTkZJR19TT0NfVEkgaXMgbm90IHNldAoKIwojIFhpbGlueCBTb0MgZHJpdmVycwojCiMgZW5k
IG9mIFhpbGlueCBTb0MgZHJpdmVycwojIGVuZCBvZiBTT0MgKFN5c3RlbSBPbiBDaGlwKSBzcGVj
aWZpYyBEcml2ZXJzCgojIENPTkZJR19QTV9ERVZGUkVRIGlzIG5vdCBzZXQKIyBDT05GSUdfRVhU
Q09OIGlzIG5vdCBzZXQKIyBDT05GSUdfTUVNT1JZIGlzIG5vdCBzZXQKIyBDT05GSUdfSUlPIGlz
IG5vdCBzZXQKIyBDT05GSUdfTlRCIGlzIG5vdCBzZXQKIyBDT05GSUdfVk1FX0JVUyBpcyBub3Qg
c2V0CiMgQ09ORklHX1BXTSBpcyBub3Qgc2V0CgojCiMgSVJRIGNoaXAgc3VwcG9ydAojCkNPTkZJ
R19JUlFDSElQPXkKQ09ORklHX0FSTV9HSUM9eQpDT05GSUdfQVJNX0dJQ19NQVhfTlI9MQpDT05G
SUdfQVJNX0dJQ19WMk09eQpDT05GSUdfQVJNX0dJQ19WMz15CkNPTkZJR19BUk1fR0lDX1YzX0lU
Uz15CkNPTkZJR19BUk1fR0lDX1YzX0lUU19QQ0k9eQojIENPTkZJR19BTF9GSUMgaXMgbm90IHNl
dApDT05GSUdfUEFSVElUSU9OX1BFUkNQVT15CiMgZW5kIG9mIElSUSBjaGlwIHN1cHBvcnQKCiMg
Q09ORklHX0lQQUNLX0JVUyBpcyBub3Qgc2V0CiMgQ09ORklHX1JFU0VUX0NPTlRST0xMRVIgaXMg
bm90IHNldAoKIwojIFBIWSBTdWJzeXN0ZW0KIwojIENPTkZJR19HRU5FUklDX1BIWSBpcyBub3Qg
c2V0CiMgQ09ORklHX1BIWV9YR0VORSBpcyBub3Qgc2V0CiMgQ09ORklHX1BIWV9DQU5fVFJBTlND
RUlWRVIgaXMgbm90IHNldAojIENPTkZJR19CQ01fS09OQV9VU0IyX1BIWSBpcyBub3Qgc2V0CiMg
Q09ORklHX1BIWV9DQURFTkNFX1RPUlJFTlQgaXMgbm90IHNldAojIENPTkZJR19QSFlfQ0FERU5D
RV9EUEhZIGlzIG5vdCBzZXQKIyBDT05GSUdfUEhZX0NBREVOQ0VfU0FMVk8gaXMgbm90IHNldAoj
IENPTkZJR19QSFlfRlNMX0lNWDhNUV9VU0IgaXMgbm90IHNldAojIENPTkZJR19QSFlfTUlYRUxf
TUlQSV9EUEhZIGlzIG5vdCBzZXQKIyBDT05GSUdfUEhZX1BYQV8yOE5NX0hTSUMgaXMgbm90IHNl
dAojIENPTkZJR19QSFlfUFhBXzI4Tk1fVVNCMiBpcyBub3Qgc2V0CiMgQ09ORklHX1BIWV9NQVBQ
SE9ORV9NRE02NjAwIGlzIG5vdCBzZXQKIyBlbmQgb2YgUEhZIFN1YnN5c3RlbQoKIyBDT05GSUdf
UE9XRVJDQVAgaXMgbm90IHNldAojIENPTkZJR19NQ0IgaXMgbm90IHNldAoKIwojIFBlcmZvcm1h
bmNlIG1vbml0b3Igc3VwcG9ydAojCiMgQ09ORklHX0FSTV9DQ0lfUE1VIGlzIG5vdCBzZXQKIyBD
T05GSUdfQVJNX0NDTiBpcyBub3Qgc2V0CiMgQ09ORklHX0FSTV9DTU4gaXMgbm90IHNldApDT05G
SUdfQVJNX1BNVT15CkNPTkZJR19BUk1fUE1VX0FDUEk9eQojIENPTkZJR19BUk1fU01NVV9WM19Q
TVUgaXMgbm90IHNldAojIENPTkZJR19BUk1fRFNVX1BNVSBpcyBub3Qgc2V0CiMgQ09ORklHX0FS
TV9TUEVfUE1VIGlzIG5vdCBzZXQKIyBDT05GSUdfQVJNX0RNQzYyMF9QTVUgaXMgbm90IHNldAoj
IENPTkZJR19ISVNJX1BNVSBpcyBub3Qgc2V0CiMgZW5kIG9mIFBlcmZvcm1hbmNlIG1vbml0b3Ig
c3VwcG9ydAoKQ09ORklHX1JBUz15CiMgQ09ORklHX1VTQjQgaXMgbm90IHNldAoKIwojIEFuZHJv
aWQKIwojIENPTkZJR19BTkRST0lEIGlzIG5vdCBzZXQKIyBlbmQgb2YgQW5kcm9pZAoKIyBDT05G
SUdfTElCTlZESU1NIGlzIG5vdCBzZXQKIyBDT05GSUdfREFYIGlzIG5vdCBzZXQKQ09ORklHX05W
TUVNPXkKQ09ORklHX05WTUVNX1NZU0ZTPXkKIyBDT05GSUdfTlZNRU1fUk1FTSBpcyBub3Qgc2V0
CgojCiMgSFcgdHJhY2luZyBzdXBwb3J0CiMKIyBDT05GSUdfU1RNIGlzIG5vdCBzZXQKIyBDT05G
SUdfSU5URUxfVEggaXMgbm90IHNldAojIGVuZCBvZiBIVyB0cmFjaW5nIHN1cHBvcnQKCiMgQ09O
RklHX0ZQR0EgaXMgbm90IHNldAojIENPTkZJR19GU0kgaXMgbm90IHNldAojIENPTkZJR19URUUg
aXMgbm90IHNldApDT05GSUdfUE1fT1BQPXkKIyBDT05GSUdfU0lPWCBpcyBub3Qgc2V0CiMgQ09O
RklHX1NMSU1CVVMgaXMgbm90IHNldAojIENPTkZJR19JTlRFUkNPTk5FQ1QgaXMgbm90IHNldAoj
IENPTkZJR19DT1VOVEVSIGlzIG5vdCBzZXQKIyBDT05GSUdfTU9TVCBpcyBub3Qgc2V0CiMgZW5k
IG9mIERldmljZSBEcml2ZXJzCgojCiMgRmlsZSBzeXN0ZW1zCiMKQ09ORklHX0RDQUNIRV9XT1JE
X0FDQ0VTUz15CiMgQ09ORklHX1ZBTElEQVRFX0ZTX1BBUlNFUiBpcyBub3Qgc2V0CkNPTkZJR19G
U19JT01BUD15CiMgQ09ORklHX0VYVDJfRlMgaXMgbm90IHNldAojIENPTkZJR19FWFQzX0ZTIGlz
IG5vdCBzZXQKQ09ORklHX0VYVDRfRlM9eQpDT05GSUdfRVhUNF9VU0VfRk9SX0VYVDI9eQpDT05G
SUdfRVhUNF9GU19QT1NJWF9BQ0w9eQpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15CiMgQ09ORklH
X0VYVDRfREVCVUcgaXMgbm90IHNldApDT05GSUdfSkJEMj15CiMgQ09ORklHX0pCRDJfREVCVUcg
aXMgbm90IHNldApDT05GSUdfRlNfTUJDQUNIRT15CiMgQ09ORklHX1JFSVNFUkZTX0ZTIGlzIG5v
dCBzZXQKIyBDT05GSUdfSkZTX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfWEZTX0ZTIGlzIG5vdCBz
ZXQKIyBDT05GSUdfR0ZTMl9GUyBpcyBub3Qgc2V0CiMgQ09ORklHX09DRlMyX0ZTIGlzIG5vdCBz
ZXQKQ09ORklHX0JUUkZTX0ZTPXkKQ09ORklHX0JUUkZTX0ZTX1BPU0lYX0FDTD15CiMgQ09ORklH
X0JUUkZTX0ZTX0NIRUNLX0lOVEVHUklUWSBpcyBub3Qgc2V0CiMgQ09ORklHX0JUUkZTX0ZTX1JV
Tl9TQU5JVFlfVEVTVFMgaXMgbm90IHNldAojIENPTkZJR19CVFJGU19ERUJVRyBpcyBub3Qgc2V0
CiMgQ09ORklHX0JUUkZTX0FTU0VSVCBpcyBub3Qgc2V0CiMgQ09ORklHX0JUUkZTX0ZTX1JFRl9W
RVJJRlkgaXMgbm90IHNldAojIENPTkZJR19OSUxGUzJfRlMgaXMgbm90IHNldAojIENPTkZJR19G
MkZTX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfRlNfREFYIGlzIG5vdCBzZXQKQ09ORklHX0ZTX1BP
U0lYX0FDTD15CkNPTkZJR19FWFBPUlRGUz15CiMgQ09ORklHX0VYUE9SVEZTX0JMT0NLX09QUyBp
cyBub3Qgc2V0CkNPTkZJR19GSUxFX0xPQ0tJTkc9eQpDT05GSUdfRlNfRU5DUllQVElPTj15CkNP
TkZJR19GU19FTkNSWVBUSU9OX0FMR1M9eQojIENPTkZJR19GU19WRVJJVFkgaXMgbm90IHNldApD
T05GSUdfRlNOT1RJRlk9eQpDT05GSUdfRE5PVElGWT15CkNPTkZJR19JTk9USUZZX1VTRVI9eQoj
IENPTkZJR19GQU5PVElGWSBpcyBub3Qgc2V0CiMgQ09ORklHX1FVT1RBIGlzIG5vdCBzZXQKQ09O
RklHX0FVVE9GUzRfRlM9eQpDT05GSUdfQVVUT0ZTX0ZTPXkKQ09ORklHX0ZVU0VfRlM9bQpDT05G
SUdfQ1VTRT1tCiMgQ09ORklHX1ZJUlRJT19GUyBpcyBub3Qgc2V0CkNPTkZJR19PVkVSTEFZX0ZT
PXkKIyBDT05GSUdfT1ZFUkxBWV9GU19SRURJUkVDVF9ESVIgaXMgbm90IHNldApDT05GSUdfT1ZF
UkxBWV9GU19SRURJUkVDVF9BTFdBWVNfRk9MTE9XPXkKIyBDT05GSUdfT1ZFUkxBWV9GU19JTkRF
WCBpcyBub3Qgc2V0CiMgQ09ORklHX09WRVJMQVlfRlNfWElOT19BVVRPIGlzIG5vdCBzZXQKIyBD
T05GSUdfT1ZFUkxBWV9GU19NRVRBQ09QWSBpcyBub3Qgc2V0CgojCiMgQ2FjaGVzCiMKIyBDT05G
SUdfRlNDQUNIRSBpcyBub3Qgc2V0CiMgZW5kIG9mIENhY2hlcwoKIwojIENELVJPTS9EVkQgRmls
ZXN5c3RlbXMKIwojIENPTkZJR19JU085NjYwX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfVURGX0ZT
IGlzIG5vdCBzZXQKIyBlbmQgb2YgQ0QtUk9NL0RWRCBGaWxlc3lzdGVtcwoKIwojIERPUy9GQVQv
RVhGQVQvTlQgRmlsZXN5c3RlbXMKIwpDT05GSUdfRkFUX0ZTPXkKQ09ORklHX01TRE9TX0ZTPXkK
Q09ORklHX1ZGQVRfRlM9eQpDT05GSUdfRkFUX0RFRkFVTFRfQ09ERVBBR0U9NDM3CkNPTkZJR19G
QVRfREVGQVVMVF9JT0NIQVJTRVQ9Imlzbzg4NTktMSIKIyBDT05GSUdfRkFUX0RFRkFVTFRfVVRG
OCBpcyBub3Qgc2V0CiMgQ09ORklHX0VYRkFUX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfTlRGU19G
UyBpcyBub3Qgc2V0CiMgQ09ORklHX05URlMzX0ZTIGlzIG5vdCBzZXQKIyBlbmQgb2YgRE9TL0ZB
VC9FWEZBVC9OVCBGaWxlc3lzdGVtcwoKIwojIFBzZXVkbyBmaWxlc3lzdGVtcwojCkNPTkZJR19Q
Uk9DX0ZTPXkKQ09ORklHX1BST0NfS0NPUkU9eQpDT05GSUdfUFJPQ19TWVNDVEw9eQpDT05GSUdf
UFJPQ19QQUdFX01PTklUT1I9eQpDT05GSUdfUFJPQ19DSElMRFJFTj15CkNPTkZJR19LRVJORlM9
eQpDT05GSUdfU1lTRlM9eQpDT05GSUdfVE1QRlM9eQpDT05GSUdfVE1QRlNfUE9TSVhfQUNMPXkK
Q09ORklHX1RNUEZTX1hBVFRSPXkKIyBDT05GSUdfVE1QRlNfSU5PREU2NCBpcyBub3Qgc2V0CkNP
TkZJR19BUkNIX1NVUFBPUlRTX0hVR0VUTEJGUz15CkNPTkZJR19IVUdFVExCRlM9eQpDT05GSUdf
SFVHRVRMQl9QQUdFPXkKQ09ORklHX01FTUZEX0NSRUFURT15CkNPTkZJR19BUkNIX0hBU19HSUdB
TlRJQ19QQUdFPXkKQ09ORklHX0NPTkZJR0ZTX0ZTPXkKQ09ORklHX0VGSVZBUl9GUz15CiMgZW5k
IG9mIFBzZXVkbyBmaWxlc3lzdGVtcwoKQ09ORklHX01JU0NfRklMRVNZU1RFTVM9eQojIENPTkZJ
R19PUkFOR0VGU19GUyBpcyBub3Qgc2V0CiMgQ09ORklHX0FERlNfRlMgaXMgbm90IHNldAojIENP
TkZJR19BRkZTX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfRUNSWVBUX0ZTIGlzIG5vdCBzZXQKIyBD
T05GSUdfSEZTX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfSEZTUExVU19GUyBpcyBub3Qgc2V0CiMg
Q09ORklHX0JFRlNfRlMgaXMgbm90IHNldAojIENPTkZJR19CRlNfRlMgaXMgbm90IHNldAojIENP
TkZJR19FRlNfRlMgaXMgbm90IHNldAojIENPTkZJR19DUkFNRlMgaXMgbm90IHNldAojIENPTkZJ
R19TUVVBU0hGUyBpcyBub3Qgc2V0CiMgQ09ORklHX1ZYRlNfRlMgaXMgbm90IHNldAojIENPTkZJ
R19NSU5JWF9GUyBpcyBub3Qgc2V0CiMgQ09ORklHX09NRlNfRlMgaXMgbm90IHNldAojIENPTkZJ
R19IUEZTX0ZTIGlzIG5vdCBzZXQKIyBDT05GSUdfUU5YNEZTX0ZTIGlzIG5vdCBzZXQKIyBDT05G
SUdfUU5YNkZTX0ZTIGlzIG5vdCBzZXQKQ09ORklHX1JPTUZTX0ZTPW0KQ09ORklHX1JPTUZTX0JB
Q0tFRF9CWV9CTE9DSz15CkNPTkZJR19ST01GU19PTl9CTE9DSz15CkNPTkZJR19QU1RPUkU9eQpD
T05GSUdfUFNUT1JFX0RFRkFVTFRfS01TR19CWVRFUz0xMDI0MApDT05GSUdfUFNUT1JFX0RFRkxB
VEVfQ09NUFJFU1M9eQojIENPTkZJR19QU1RPUkVfTFpPX0NPTVBSRVNTIGlzIG5vdCBzZXQKIyBD
T05GSUdfUFNUT1JFX0xaNF9DT01QUkVTUyBpcyBub3Qgc2V0CiMgQ09ORklHX1BTVE9SRV9MWjRI
Q19DT01QUkVTUyBpcyBub3Qgc2V0CiMgQ09ORklHX1BTVE9SRV84NDJfQ09NUFJFU1MgaXMgbm90
IHNldAojIENPTkZJR19QU1RPUkVfWlNURF9DT01QUkVTUyBpcyBub3Qgc2V0CkNPTkZJR19QU1RP
UkVfQ09NUFJFU1M9eQpDT05GSUdfUFNUT1JFX0RFRkxBVEVfQ09NUFJFU1NfREVGQVVMVD15CkNP
TkZJR19QU1RPUkVfQ09NUFJFU1NfREVGQVVMVD0iZGVmbGF0ZSIKIyBDT05GSUdfUFNUT1JFX0NP
TlNPTEUgaXMgbm90IHNldAojIENPTkZJR19QU1RPUkVfUE1TRyBpcyBub3Qgc2V0CiMgQ09ORklH
X1BTVE9SRV9GVFJBQ0UgaXMgbm90IHNldAojIENPTkZJR19QU1RPUkVfUkFNIGlzIG5vdCBzZXQK
IyBDT05GSUdfUFNUT1JFX0JMSyBpcyBub3Qgc2V0CiMgQ09ORklHX1NZU1ZfRlMgaXMgbm90IHNl
dAojIENPTkZJR19VRlNfRlMgaXMgbm90IHNldAojIENPTkZJR19FUk9GU19GUyBpcyBub3Qgc2V0
CkNPTkZJR19ORVRXT1JLX0ZJTEVTWVNURU1TPXkKQ09ORklHX05GU19GUz15CkNPTkZJR19ORlNf
VjI9eQpDT05GSUdfTkZTX1YzPXkKIyBDT05GSUdfTkZTX1YzX0FDTCBpcyBub3Qgc2V0CkNPTkZJ
R19ORlNfVjQ9eQojIENPTkZJR19ORlNfU1dBUCBpcyBub3Qgc2V0CiMgQ09ORklHX05GU19WNF8x
IGlzIG5vdCBzZXQKQ09ORklHX1JPT1RfTkZTPXkKIyBDT05GSUdfTkZTX1VTRV9MRUdBQ1lfRE5T
IGlzIG5vdCBzZXQKQ09ORklHX05GU19VU0VfS0VSTkVMX0ROUz15CiMgQ09ORklHX05GU19ESVNB
QkxFX1VEUF9TVVBQT1JUIGlzIG5vdCBzZXQKIyBDT05GSUdfTkZTRCBpcyBub3Qgc2V0CkNPTkZJ
R19HUkFDRV9QRVJJT0Q9eQpDT05GSUdfTE9DS0Q9eQpDT05GSUdfTE9DS0RfVjQ9eQpDT05GSUdf
TkZTX0NPTU1PTj15CkNPTkZJR19TVU5SUEM9eQpDT05GSUdfU1VOUlBDX0dTUz15CkNPTkZJR19S
UENTRUNfR1NTX0tSQjU9eQojIENPTkZJR19TVU5SUENfRElTQUJMRV9JTlNFQ1VSRV9FTkNUWVBF
UyBpcyBub3Qgc2V0CiMgQ09ORklHX1NVTlJQQ19ERUJVRyBpcyBub3Qgc2V0CiMgQ09ORklHX0NF
UEhfRlMgaXMgbm90IHNldApDT05GSUdfQ0lGUz15CkNPTkZJR19DSUZTX1NUQVRTMj15CkNPTkZJ
R19DSUZTX0FMTE9XX0lOU0VDVVJFX0xFR0FDWT15CiMgQ09ORklHX0NJRlNfVVBDQUxMIGlzIG5v
dCBzZXQKQ09ORklHX0NJRlNfWEFUVFI9eQpDT05GSUdfQ0lGU19QT1NJWD15CkNPTkZJR19DSUZT
X0RFQlVHPXkKIyBDT05GSUdfQ0lGU19ERUJVRzIgaXMgbm90IHNldAojIENPTkZJR19DSUZTX0RF
QlVHX0RVTVBfS0VZUyBpcyBub3Qgc2V0CiMgQ09ORklHX0NJRlNfREZTX1VQQ0FMTCBpcyBub3Qg
c2V0CiMgQ09ORklHX0NJRlNfU1dOX1VQQ0FMTCBpcyBub3Qgc2V0CiMgQ09ORklHX0NJRlNfUk9P
VCBpcyBub3Qgc2V0CiMgQ09ORklHX1NNQl9TRVJWRVIgaXMgbm90IHNldApDT05GSUdfU01CRlNf
Q09NTU9OPXkKIyBDT05GSUdfQ09EQV9GUyBpcyBub3Qgc2V0CiMgQ09ORklHX0FGU19GUyBpcyBu
b3Qgc2V0CkNPTkZJR19OTFM9eQpDT05GSUdfTkxTX0RFRkFVTFQ9Imlzbzg4NTktMSIKQ09ORklH
X05MU19DT0RFUEFHRV80Mzc9eQpDT05GSUdfTkxTX0NPREVQQUdFXzczNz1tCkNPTkZJR19OTFNf
Q09ERVBBR0VfNzc1PW0KQ09ORklHX05MU19DT0RFUEFHRV84NTA9bQpDT05GSUdfTkxTX0NPREVQ
QUdFXzg1Mj1tCkNPTkZJR19OTFNfQ09ERVBBR0VfODU1PW0KQ09ORklHX05MU19DT0RFUEFHRV84
NTc9bQpDT05GSUdfTkxTX0NPREVQQUdFXzg2MD1tCkNPTkZJR19OTFNfQ09ERVBBR0VfODYxPW0K
Q09ORklHX05MU19DT0RFUEFHRV84NjI9bQpDT05GSUdfTkxTX0NPREVQQUdFXzg2Mz1tCkNPTkZJ
R19OTFNfQ09ERVBBR0VfODY0PW0KQ09ORklHX05MU19DT0RFUEFHRV84NjU9bQpDT05GSUdfTkxT
X0NPREVQQUdFXzg2Nj1tCkNPTkZJR19OTFNfQ09ERVBBR0VfODY5PW0KQ09ORklHX05MU19DT0RF
UEFHRV85MzY9bQpDT05GSUdfTkxTX0NPREVQQUdFXzk1MD1tCkNPTkZJR19OTFNfQ09ERVBBR0Vf
OTMyPW0KQ09ORklHX05MU19DT0RFUEFHRV85NDk9bQpDT05GSUdfTkxTX0NPREVQQUdFXzg3ND1t
CkNPTkZJR19OTFNfSVNPODg1OV84PW0KQ09ORklHX05MU19DT0RFUEFHRV8xMjUwPW0KQ09ORklH
X05MU19DT0RFUEFHRV8xMjUxPW0KQ09ORklHX05MU19BU0NJST1tCkNPTkZJR19OTFNfSVNPODg1
OV8xPXkKQ09ORklHX05MU19JU084ODU5XzI9bQpDT05GSUdfTkxTX0lTTzg4NTlfMz1tCkNPTkZJ
R19OTFNfSVNPODg1OV80PW0KQ09ORklHX05MU19JU084ODU5XzU9bQpDT05GSUdfTkxTX0lTTzg4
NTlfNj1tCkNPTkZJR19OTFNfSVNPODg1OV83PW0KQ09ORklHX05MU19JU084ODU5Xzk9bQpDT05G
SUdfTkxTX0lTTzg4NTlfMTM9bQpDT05GSUdfTkxTX0lTTzg4NTlfMTQ9bQpDT05GSUdfTkxTX0lT
Tzg4NTlfMTU9bQpDT05GSUdfTkxTX0tPSThfUj1tCkNPTkZJR19OTFNfS09JOF9VPW0KIyBDT05G
SUdfTkxTX01BQ19ST01BTiBpcyBub3Qgc2V0CiMgQ09ORklHX05MU19NQUNfQ0VMVElDIGlzIG5v
dCBzZXQKIyBDT05GSUdfTkxTX01BQ19DRU5URVVSTyBpcyBub3Qgc2V0CiMgQ09ORklHX05MU19N
QUNfQ1JPQVRJQU4gaXMgbm90IHNldAojIENPTkZJR19OTFNfTUFDX0NZUklMTElDIGlzIG5vdCBz
ZXQKIyBDT05GSUdfTkxTX01BQ19HQUVMSUMgaXMgbm90IHNldAojIENPTkZJR19OTFNfTUFDX0dS
RUVLIGlzIG5vdCBzZXQKIyBDT05GSUdfTkxTX01BQ19JQ0VMQU5EIGlzIG5vdCBzZXQKIyBDT05G
SUdfTkxTX01BQ19JTlVJVCBpcyBub3Qgc2V0CiMgQ09ORklHX05MU19NQUNfUk9NQU5JQU4gaXMg
bm90IHNldAojIENPTkZJR19OTFNfTUFDX1RVUktJU0ggaXMgbm90IHNldApDT05GSUdfTkxTX1VU
Rjg9bQojIENPTkZJR19ETE0gaXMgbm90IHNldAojIENPTkZJR19VTklDT0RFIGlzIG5vdCBzZXQK
Q09ORklHX0lPX1dRPXkKIyBlbmQgb2YgRmlsZSBzeXN0ZW1zCgojCiMgU2VjdXJpdHkgb3B0aW9u
cwojCkNPTkZJR19LRVlTPXkKIyBDT05GSUdfS0VZU19SRVFVRVNUX0NBQ0hFIGlzIG5vdCBzZXQK
IyBDT05GSUdfUEVSU0lTVEVOVF9LRVlSSU5HUyBpcyBub3Qgc2V0CkNPTkZJR19FTkNSWVBURURf
S0VZUz15CiMgQ09ORklHX0tFWV9ESF9PUEVSQVRJT05TIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VD
VVJJVFlfRE1FU0dfUkVTVFJJQ1QgaXMgbm90IHNldApDT05GSUdfU0VDVVJJVFk9eQojIENPTkZJ
R19TRUNVUklUWUZTIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VDVVJJVFlfTkVUV09SSyBpcyBub3Qg
c2V0CkNPTkZJR19TRUNVUklUWV9QQVRIPXkKQ09ORklHX0hBVkVfSEFSREVORURfVVNFUkNPUFlf
QUxMT0NBVE9SPXkKIyBDT05GSUdfSEFSREVORURfVVNFUkNPUFkgaXMgbm90IHNldAojIENPTkZJ
R19GT1JUSUZZX1NPVVJDRSBpcyBub3Qgc2V0CiMgQ09ORklHX1NUQVRJQ19VU0VSTU9ERUhFTFBF
UiBpcyBub3Qgc2V0CiMgQ09ORklHX1NFQ1VSSVRZX1NNQUNLIGlzIG5vdCBzZXQKIyBDT05GSUdf
U0VDVVJJVFlfVE9NT1lPIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VDVVJJVFlfQVBQQVJNT1IgaXMg
bm90IHNldAojIENPTkZJR19TRUNVUklUWV9MT0FEUElOIGlzIG5vdCBzZXQKIyBDT05GSUdfU0VD
VVJJVFlfWUFNQSBpcyBub3Qgc2V0CiMgQ09ORklHX1NFQ1VSSVRZX1NBRkVTRVRJRCBpcyBub3Qg
c2V0CiMgQ09ORklHX1NFQ1VSSVRZX0xPQ0tET1dOX0xTTSBpcyBub3Qgc2V0CkNPTkZJR19TRUNV
UklUWV9MQU5ETE9DSz15CkNPTkZJR19JTlRFR1JJVFk9eQojIENPTkZJR19JTlRFR1JJVFlfU0lH
TkFUVVJFIGlzIG5vdCBzZXQKIyBDT05GSUdfSU1BIGlzIG5vdCBzZXQKIyBDT05GSUdfSU1BX1NF
Q1VSRV9BTkRfT1JfVFJVU1RFRF9CT09UIGlzIG5vdCBzZXQKIyBDT05GSUdfRVZNIGlzIG5vdCBz
ZXQKQ09ORklHX0RFRkFVTFRfU0VDVVJJVFlfREFDPXkKQ09ORklHX0xTTT0ibGFuZGxvY2ssbG9j
a2Rvd24seWFtYSxsb2FkcGluLHNhZmVzZXRpZCxpbnRlZ3JpdHksYnBmIgoKIwojIEtlcm5lbCBo
YXJkZW5pbmcgb3B0aW9ucwojCgojCiMgTWVtb3J5IGluaXRpYWxpemF0aW9uCiMKQ09ORklHX0lO
SVRfU1RBQ0tfTk9ORT15CiMgQ09ORklHX0dDQ19QTFVHSU5fU1RSVUNUTEVBS19VU0VSIGlzIG5v
dCBzZXQKIyBDT05GSUdfR0NDX1BMVUdJTl9TVFJVQ1RMRUFLX0JZUkVGIGlzIG5vdCBzZXQKIyBD
T05GSUdfR0NDX1BMVUdJTl9TVFJVQ1RMRUFLX0JZUkVGX0FMTCBpcyBub3Qgc2V0CiMgQ09ORklH
X0dDQ19QTFVHSU5fU1RBQ0tMRUFLIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5JVF9PTl9BTExPQ19E
RUZBVUxUX09OIGlzIG5vdCBzZXQKIyBDT05GSUdfSU5JVF9PTl9GUkVFX0RFRkFVTFRfT04gaXMg
bm90IHNldApDT05GSUdfQ0NfSEFTX1pFUk9fQ0FMTF9VU0VEX1JFR1M9eQojIENPTkZJR19aRVJP
X0NBTExfVVNFRF9SRUdTIGlzIG5vdCBzZXQKIyBlbmQgb2YgTWVtb3J5IGluaXRpYWxpemF0aW9u
CiMgZW5kIG9mIEtlcm5lbCBoYXJkZW5pbmcgb3B0aW9ucwojIGVuZCBvZiBTZWN1cml0eSBvcHRp
b25zCgpDT05GSUdfWE9SX0JMT0NLUz15CkNPTkZJR19BU1lOQ19DT1JFPXkKQ09ORklHX0FTWU5D
X01FTUNQWT15CkNPTkZJR19BU1lOQ19YT1I9eQpDT05GSUdfQVNZTkNfUFE9eQpDT05GSUdfQVNZ
TkNfUkFJRDZfUkVDT1Y9eQpDT05GSUdfQ1JZUFRPPXkKCiMKIyBDcnlwdG8gY29yZSBvciBoZWxw
ZXIKIwpDT05GSUdfQ1JZUFRPX0FMR0FQST15CkNPTkZJR19DUllQVE9fQUxHQVBJMj15CkNPTkZJ
R19DUllQVE9fQUVBRD15CkNPTkZJR19DUllQVE9fQUVBRDI9eQpDT05GSUdfQ1JZUFRPX1NLQ0lQ
SEVSPXkKQ09ORklHX0NSWVBUT19TS0NJUEhFUjI9eQpDT05GSUdfQ1JZUFRPX0hBU0g9eQpDT05G
SUdfQ1JZUFRPX0hBU0gyPXkKQ09ORklHX0NSWVBUT19STkc9eQpDT05GSUdfQ1JZUFRPX1JORzI9
eQpDT05GSUdfQ1JZUFRPX1JOR19ERUZBVUxUPXkKQ09ORklHX0NSWVBUT19BS0NJUEhFUjI9eQpD
T05GSUdfQ1JZUFRPX0tQUDI9eQpDT05GSUdfQ1JZUFRPX0FDT01QMj15CkNPTkZJR19DUllQVE9f
TUFOQUdFUj15CkNPTkZJR19DUllQVE9fTUFOQUdFUjI9eQojIENPTkZJR19DUllQVE9fVVNFUiBp
cyBub3Qgc2V0CkNPTkZJR19DUllQVE9fTUFOQUdFUl9ESVNBQkxFX1RFU1RTPXkKQ09ORklHX0NS
WVBUT19HRjEyOE1VTD15CkNPTkZJR19DUllQVE9fTlVMTD15CkNPTkZJR19DUllQVE9fTlVMTDI9
eQojIENPTkZJR19DUllQVE9fUENSWVBUIGlzIG5vdCBzZXQKQ09ORklHX0NSWVBUT19DUllQVEQ9
eQpDT05GSUdfQ1JZUFRPX0FVVEhFTkM9eQpDT05GSUdfQ1JZUFRPX1RFU1Q9bQpDT05GSUdfQ1JZ
UFRPX1NJTUQ9eQpDT05GSUdfQ1JZUFRPX0VOR0lORT15CgojCiMgUHVibGljLWtleSBjcnlwdG9n
cmFwaHkKIwojIENPTkZJR19DUllQVE9fUlNBIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX0RI
IGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX0VDREggaXMgbm90IHNldAojIENPTkZJR19DUllQ
VE9fRUNEU0EgaXMgbm90IHNldAojIENPTkZJR19DUllQVE9fRUNSRFNBIGlzIG5vdCBzZXQKIyBD
T05GSUdfQ1JZUFRPX1NNMiBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19DVVJWRTI1NTE5IGlz
IG5vdCBzZXQKCiMKIyBBdXRoZW50aWNhdGVkIEVuY3J5cHRpb24gd2l0aCBBc3NvY2lhdGVkIERh
dGEKIwpDT05GSUdfQ1JZUFRPX0NDTT15CkNPTkZJR19DUllQVE9fR0NNPXkKIyBDT05GSUdfQ1JZ
UFRPX0NIQUNIQTIwUE9MWTEzMDUgaXMgbm90IHNldAojIENPTkZJR19DUllQVE9fQUVHSVMxMjgg
aXMgbm90IHNldApDT05GSUdfQ1JZUFRPX1NFUUlWPXkKQ09ORklHX0NSWVBUT19FQ0hBSU5JVj15
CgojCiMgQmxvY2sgbW9kZXMKIwpDT05GSUdfQ1JZUFRPX0NCQz15CiMgQ09ORklHX0NSWVBUT19D
RkIgaXMgbm90IHNldApDT05GSUdfQ1JZUFRPX0NUUj15CkNPTkZJR19DUllQVE9fQ1RTPXkKQ09O
RklHX0NSWVBUT19FQ0I9eQojIENPTkZJR19DUllQVE9fTFJXIGlzIG5vdCBzZXQKIyBDT05GSUdf
Q1JZUFRPX09GQiBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19QQ0JDIGlzIG5vdCBzZXQKQ09O
RklHX0NSWVBUT19YVFM9eQojIENPTkZJR19DUllQVE9fS0VZV1JBUCBpcyBub3Qgc2V0CiMgQ09O
RklHX0NSWVBUT19BRElBTlRVTSBpcyBub3Qgc2V0CkNPTkZJR19DUllQVE9fRVNTSVY9eQoKIwoj
IEhhc2ggbW9kZXMKIwpDT05GSUdfQ1JZUFRPX0NNQUM9eQpDT05GSUdfQ1JZUFRPX0hNQUM9eQpD
T05GSUdfQ1JZUFRPX1hDQkM9bQojIENPTkZJR19DUllQVE9fVk1BQyBpcyBub3Qgc2V0CgojCiMg
RGlnZXN0CiMKQ09ORklHX0NSWVBUT19DUkMzMkM9eQojIENPTkZJR19DUllQVE9fQ1JDMzIgaXMg
bm90IHNldApDT05GSUdfQ1JZUFRPX1hYSEFTSD15CkNPTkZJR19DUllQVE9fQkxBS0UyQj15CiMg
Q09ORklHX0NSWVBUT19CTEFLRTJTIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX0NSQ1QxMERJ
RiBpcyBub3Qgc2V0CkNPTkZJR19DUllQVE9fR0hBU0g9eQojIENPTkZJR19DUllQVE9fUE9MWTEz
MDUgaXMgbm90IHNldApDT05GSUdfQ1JZUFRPX01END15CkNPTkZJR19DUllQVE9fTUQ1PXkKQ09O
RklHX0NSWVBUT19NSUNIQUVMX01JQz1tCiMgQ09ORklHX0NSWVBUT19STUQxNjAgaXMgbm90IHNl
dApDT05GSUdfQ1JZUFRPX1NIQTE9eQpDT05GSUdfQ1JZUFRPX1NIQTI1Nj15CkNPTkZJR19DUllQ
VE9fU0hBNTEyPXkKIyBDT05GSUdfQ1JZUFRPX1NIQTMgaXMgbm90IHNldAojIENPTkZJR19DUllQ
VE9fU00zIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX1NUUkVFQk9HIGlzIG5vdCBzZXQKQ09O
RklHX0NSWVBUT19XUDUxMj1tCgojCiMgQ2lwaGVycwojCkNPTkZJR19DUllQVE9fQUVTPXkKIyBD
T05GSUdfQ1JZUFRPX0FFU19USSBpcyBub3Qgc2V0CkNPTkZJR19DUllQVE9fQkxPV0ZJU0g9bQpD
T05GSUdfQ1JZUFRPX0JMT1dGSVNIX0NPTU1PTj1tCkNPTkZJR19DUllQVE9fQ0FNRUxMSUE9bQpD
T05GSUdfQ1JZUFRPX0NBU1RfQ09NTU9OPW0KQ09ORklHX0NSWVBUT19DQVNUNT1tCkNPTkZJR19D
UllQVE9fQ0FTVDY9bQpDT05GSUdfQ1JZUFRPX0RFUz15CiMgQ09ORklHX0NSWVBUT19GQ1JZUFQg
aXMgbm90IHNldAojIENPTkZJR19DUllQVE9fQ0hBQ0hBMjAgaXMgbm90IHNldApDT05GSUdfQ1JZ
UFRPX1NFUlBFTlQ9bQojIENPTkZJR19DUllQVE9fU000IGlzIG5vdCBzZXQKQ09ORklHX0NSWVBU
T19UV09GSVNIPW0KQ09ORklHX0NSWVBUT19UV09GSVNIX0NPTU1PTj1tCgojCiMgQ29tcHJlc3Np
b24KIwpDT05GSUdfQ1JZUFRPX0RFRkxBVEU9eQojIENPTkZJR19DUllQVE9fTFpPIGlzIG5vdCBz
ZXQKIyBDT05GSUdfQ1JZUFRPXzg0MiBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19MWjQgaXMg
bm90IHNldAojIENPTkZJR19DUllQVE9fTFo0SEMgaXMgbm90IHNldAojIENPTkZJR19DUllQVE9f
WlNURCBpcyBub3Qgc2V0CgojCiMgUmFuZG9tIE51bWJlciBHZW5lcmF0aW9uCiMKIyBDT05GSUdf
Q1JZUFRPX0FOU0lfQ1BSTkcgaXMgbm90IHNldApDT05GSUdfQ1JZUFRPX0RSQkdfTUVOVT15CkNP
TkZJR19DUllQVE9fRFJCR19ITUFDPXkKIyBDT05GSUdfQ1JZUFRPX0RSQkdfSEFTSCBpcyBub3Qg
c2V0CiMgQ09ORklHX0NSWVBUT19EUkJHX0NUUiBpcyBub3Qgc2V0CkNPTkZJR19DUllQVE9fRFJC
Rz15CkNPTkZJR19DUllQVE9fSklUVEVSRU5UUk9QWT15CkNPTkZJR19DUllQVE9fVVNFUl9BUEk9
bQpDT05GSUdfQ1JZUFRPX1VTRVJfQVBJX0hBU0g9bQpDT05GSUdfQ1JZUFRPX1VTRVJfQVBJX1NL
Q0lQSEVSPW0KQ09ORklHX0NSWVBUT19VU0VSX0FQSV9STkc9bQojIENPTkZJR19DUllQVE9fVVNF
Ul9BUElfUk5HX0NBVlAgaXMgbm90IHNldApDT05GSUdfQ1JZUFRPX1VTRVJfQVBJX0FFQUQ9bQoj
IENPTkZJR19DUllQVE9fVVNFUl9BUElfRU5BQkxFX09CU09MRVRFIGlzIG5vdCBzZXQKCiMKIyBD
cnlwdG8gbGlicmFyeSByb3V0aW5lcwojCkNPTkZJR19DUllQVE9fTElCX0FFUz15CiMgQ09ORklH
X0NSWVBUT19MSUJfQkxBS0UyUyBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19MSUJfQ0hBQ0hB
IGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX0xJQl9DVVJWRTI1NTE5IGlzIG5vdCBzZXQKQ09O
RklHX0NSWVBUT19MSUJfREVTPXkKQ09ORklHX0NSWVBUT19MSUJfUE9MWTEzMDVfUlNJWkU9OQoj
IENPTkZJR19DUllQVE9fTElCX1BPTFkxMzA1IGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX0xJ
Ql9DSEFDSEEyMFBPTFkxMzA1IGlzIG5vdCBzZXQKQ09ORklHX0NSWVBUT19MSUJfU0hBMjU2PXkK
Q09ORklHX0NSWVBUT19MSUJfU000PW0KQ09ORklHX0NSWVBUT19IVz15CiMgQ09ORklHX0NSWVBU
T19ERVZfQVRNRUxfRUNDIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX0RFVl9BVE1FTF9TSEEy
MDRBIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX0RFVl9DQ1AgaXMgbm90IHNldAojIENPTkZJ
R19DUllQVE9fREVWX05JVFJPWF9DTk41NVhYIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX0RF
Vl9DQVZJVU1fWklQIGlzIG5vdCBzZXQKQ09ORklHX0NSWVBUT19ERVZfVklSVElPPXkKIyBDT05G
SUdfQ1JZUFRPX0RFVl9TQUZFWENFTCBpcyBub3Qgc2V0CiMgQ09ORklHX0NSWVBUT19ERVZfQ0NS
RUUgaXMgbm90IHNldAojIENPTkZJR19DUllQVE9fREVWX0hJU0lfU0VDIGlzIG5vdCBzZXQKIyBD
T05GSUdfQ1JZUFRPX0RFVl9ISVNJX1NFQzIgaXMgbm90IHNldAojIENPTkZJR19DUllQVE9fREVW
X0hJU0lfWklQIGlzIG5vdCBzZXQKIyBDT05GSUdfQ1JZUFRPX0RFVl9ISVNJX0hQUkUgaXMgbm90
IHNldAojIENPTkZJR19DUllQVE9fREVWX0hJU0lfVFJORyBpcyBub3Qgc2V0CiMgQ09ORklHX0NS
WVBUT19ERVZfQU1MT0dJQ19HWEwgaXMgbm90IHNldAojIENPTkZJR19BU1lNTUVUUklDX0tFWV9U
WVBFIGlzIG5vdCBzZXQKCiMKIyBDZXJ0aWZpY2F0ZXMgZm9yIHNpZ25hdHVyZSBjaGVja2luZwoj
CiMgQ09ORklHX1NZU1RFTV9CTEFDS0xJU1RfS0VZUklORyBpcyBub3Qgc2V0CiMgZW5kIG9mIENl
cnRpZmljYXRlcyBmb3Igc2lnbmF0dXJlIGNoZWNraW5nCgpDT05GSUdfQklOQVJZX1BSSU5URj15
CgojCiMgTGlicmFyeSByb3V0aW5lcwojCkNPTkZJR19SQUlENl9QUT15CkNPTkZJR19SQUlENl9Q
UV9CRU5DSE1BUks9eQojIENPTkZJR19QQUNLSU5HIGlzIG5vdCBzZXQKQ09ORklHX0JJVFJFVkVS
U0U9eQpDT05GSUdfSEFWRV9BUkNIX0JJVFJFVkVSU0U9eQpDT05GSUdfR0VORVJJQ19TVFJOQ1BZ
X0ZST01fVVNFUj15CkNPTkZJR19HRU5FUklDX1NUUk5MRU5fVVNFUj15CkNPTkZJR19HRU5FUklD
X05FVF9VVElMUz15CkNPTkZJR19HRU5FUklDX0ZJTkRfRklSU1RfQklUPXkKIyBDT05GSUdfQ09S
RElDIGlzIG5vdCBzZXQKIyBDT05GSUdfUFJJTUVfTlVNQkVSUyBpcyBub3Qgc2V0CkNPTkZJR19S
QVRJT05BTD15CkNPTkZJR19HRU5FUklDX1BDSV9JT01BUD15CkNPTkZJR19BUkNIX1VTRV9DTVBY
Q0hHX0xPQ0tSRUY9eQpDT05GSUdfQVJDSF9IQVNfRkFTVF9NVUxUSVBMSUVSPXkKQ09ORklHX0FS
Q0hfVVNFX1NZTV9BTk5PVEFUSU9OUz15CiMgQ09ORklHX0lORElSRUNUX1BJTyBpcyBub3Qgc2V0
CkNPTkZJR19DUkNfQ0NJVFQ9bQpDT05GSUdfQ1JDMTY9eQojIENPTkZJR19DUkNfVDEwRElGIGlz
IG5vdCBzZXQKIyBDT05GSUdfQ1JDX0lUVV9UIGlzIG5vdCBzZXQKQ09ORklHX0NSQzMyPXkKIyBD
T05GSUdfQ1JDMzJfU0VMRlRFU1QgaXMgbm90IHNldApDT05GSUdfQ1JDMzJfU0xJQ0VCWTg9eQoj
IENPTkZJR19DUkMzMl9TTElDRUJZNCBpcyBub3Qgc2V0CiMgQ09ORklHX0NSQzMyX1NBUldBVEUg
aXMgbm90IHNldAojIENPTkZJR19DUkMzMl9CSVQgaXMgbm90IHNldAojIENPTkZJR19DUkM2NCBp
cyBub3Qgc2V0CiMgQ09ORklHX0NSQzQgaXMgbm90IHNldAojIENPTkZJR19DUkM3IGlzIG5vdCBz
ZXQKQ09ORklHX0xJQkNSQzMyQz15CiMgQ09ORklHX0NSQzggaXMgbm90IHNldApDT05GSUdfWFhI
QVNIPXkKQ09ORklHX0FVRElUX0FSQ0hfQ09NUEFUX0dFTkVSSUM9eQojIENPTkZJR19SQU5ET00z
Ml9TRUxGVEVTVCBpcyBub3Qgc2V0CkNPTkZJR19aTElCX0lORkxBVEU9eQpDT05GSUdfWkxJQl9E
RUZMQVRFPXkKQ09ORklHX0xaT19DT01QUkVTUz15CkNPTkZJR19MWk9fREVDT01QUkVTUz15CkNP
TkZJR19MWjRfREVDT01QUkVTUz15CkNPTkZJR19aU1REX0NPTVBSRVNTPXkKQ09ORklHX1pTVERf
REVDT01QUkVTUz15CkNPTkZJR19YWl9ERUM9eQpDT05GSUdfWFpfREVDX1g4Nj15CkNPTkZJR19Y
Wl9ERUNfUE9XRVJQQz15CkNPTkZJR19YWl9ERUNfSUE2ND15CkNPTkZJR19YWl9ERUNfQVJNPXkK
Q09ORklHX1haX0RFQ19BUk1USFVNQj15CkNPTkZJR19YWl9ERUNfU1BBUkM9eQpDT05GSUdfWFpf
REVDX0JDSj15CiMgQ09ORklHX1haX0RFQ19URVNUIGlzIG5vdCBzZXQKQ09ORklHX0RFQ09NUFJF
U1NfR1pJUD15CkNPTkZJR19ERUNPTVBSRVNTX0JaSVAyPXkKQ09ORklHX0RFQ09NUFJFU1NfTFpN
QT15CkNPTkZJR19ERUNPTVBSRVNTX1haPXkKQ09ORklHX0RFQ09NUFJFU1NfTFpPPXkKQ09ORklH
X0RFQ09NUFJFU1NfTFo0PXkKQ09ORklHX0RFQ09NUFJFU1NfWlNURD15CkNPTkZJR19HRU5FUklD
X0FMTE9DQVRPUj15CkNPTkZJR19URVhUU0VBUkNIPXkKQ09ORklHX1RFWFRTRUFSQ0hfS01QPW0K
Q09ORklHX1RFWFRTRUFSQ0hfQk09bQpDT05GSUdfVEVYVFNFQVJDSF9GU009bQpDT05GSUdfSU5U
RVJWQUxfVFJFRT15CkNPTkZJR19BU1NPQ0lBVElWRV9BUlJBWT15CkNPTkZJR19IQVNfSU9NRU09
eQpDT05GSUdfSEFTX0lPUE9SVF9NQVA9eQpDT05GSUdfSEFTX0RNQT15CkNPTkZJR19ETUFfT1BT
PXkKQ09ORklHX05FRURfU0dfRE1BX0xFTkdUSD15CkNPTkZJR19ORUVEX0RNQV9NQVBfU1RBVEU9
eQpDT05GSUdfQVJDSF9ETUFfQUREUl9UXzY0QklUPXkKQ09ORklHX0RNQV9ERUNMQVJFX0NPSEVS
RU5UPXkKQ09ORklHX0FSQ0hfSEFTX1NFVFVQX0RNQV9PUFM9eQpDT05GSUdfQVJDSF9IQVNfVEVB
UkRPV05fRE1BX09QUz15CkNPTkZJR19BUkNIX0hBU19TWU5DX0RNQV9GT1JfREVWSUNFPXkKQ09O
RklHX0FSQ0hfSEFTX1NZTkNfRE1BX0ZPUl9DUFU9eQpDT05GSUdfQVJDSF9IQVNfRE1BX1BSRVBf
Q09IRVJFTlQ9eQpDT05GSUdfU1dJT1RMQj15CiMgQ09ORklHX0RNQV9SRVNUUklDVEVEX1BPT0wg
aXMgbm90IHNldApDT05GSUdfRE1BX05PTkNPSEVSRU5UX01NQVA9eQpDT05GSUdfRE1BX0NPSEVS
RU5UX1BPT0w9eQpDT05GSUdfRE1BX1JFTUFQPXkKQ09ORklHX0RNQV9ESVJFQ1RfUkVNQVA9eQoj
IENPTkZJR19ETUFfQVBJX0RFQlVHIGlzIG5vdCBzZXQKIyBDT05GSUdfRE1BX01BUF9CRU5DSE1B
UksgaXMgbm90IHNldApDT05GSUdfU0dMX0FMTE9DPXkKQ09ORklHX0NQVV9STUFQPXkKQ09ORklH
X0RRTD15CkNPTkZJR19HTE9CPXkKIyBDT05GSUdfR0xPQl9TRUxGVEVTVCBpcyBub3Qgc2V0CkNP
TkZJR19OTEFUVFI9eQojIENPTkZJR19JUlFfUE9MTCBpcyBub3Qgc2V0CkNPTkZJR19ESU1MSUI9
eQpDT05GSUdfTElCRkRUPXkKQ09ORklHX09JRF9SRUdJU1RSWT15CkNPTkZJR19VQ1MyX1NUUklO
Rz15CkNPTkZJR19IQVZFX0dFTkVSSUNfVkRTTz15CkNPTkZJR19HRU5FUklDX0dFVFRJTUVPRkRB
WT15CkNPTkZJR19HRU5FUklDX1ZEU09fVElNRV9OUz15CkNPTkZJR19GT05UX1NVUFBPUlQ9eQoj
IENPTkZJR19GT05UUyBpcyBub3Qgc2V0CkNPTkZJR19GT05UXzh4OD15CkNPTkZJR19GT05UXzh4
MTY9eQpDT05GSUdfU0dfUE9PTD15CkNPTkZJR19BUkNIX1NUQUNLV0FMSz15CkNPTkZJR19TQklU
TUFQPXkKIyBlbmQgb2YgTGlicmFyeSByb3V0aW5lcwoKQ09ORklHX0dFTkVSSUNfTElCX0RFVk1F
TV9JU19BTExPV0VEPXkKCiMKIyBLZXJuZWwgaGFja2luZwojCgojCiMgcHJpbnRrIGFuZCBkbWVz
ZyBvcHRpb25zCiMKQ09ORklHX1BSSU5US19USU1FPXkKIyBDT05GSUdfUFJJTlRLX0NBTExFUiBp
cyBub3Qgc2V0CiMgQ09ORklHX1NUQUNLVFJBQ0VfQlVJTERfSUQgaXMgbm90IHNldApDT05GSUdf
Q09OU09MRV9MT0dMRVZFTF9ERUZBVUxUPTcKQ09ORklHX0NPTlNPTEVfTE9HTEVWRUxfUVVJRVQ9
NApDT05GSUdfTUVTU0FHRV9MT0dMRVZFTF9ERUZBVUxUPTQKIyBDT05GSUdfQk9PVF9QUklOVEtf
REVMQVkgaXMgbm90IHNldAojIENPTkZJR19EWU5BTUlDX0RFQlVHIGlzIG5vdCBzZXQKIyBDT05G
SUdfRFlOQU1JQ19ERUJVR19DT1JFIGlzIG5vdCBzZXQKQ09ORklHX1NZTUJPTElDX0VSUk5BTUU9
eQpDT05GSUdfREVCVUdfQlVHVkVSQk9TRT15CiMgZW5kIG9mIHByaW50ayBhbmQgZG1lc2cgb3B0
aW9ucwoKIwojIENvbXBpbGUtdGltZSBjaGVja3MgYW5kIGNvbXBpbGVyIG9wdGlvbnMKIwpDT05G
SUdfREVCVUdfSU5GTz15CiMgQ09ORklHX0RFQlVHX0lORk9fUkVEVUNFRCBpcyBub3Qgc2V0CiMg
Q09ORklHX0RFQlVHX0lORk9fQ09NUFJFU1NFRCBpcyBub3Qgc2V0CiMgQ09ORklHX0RFQlVHX0lO
Rk9fU1BMSVQgaXMgbm90IHNldApDT05GSUdfREVCVUdfSU5GT19EV0FSRl9UT09MQ0hBSU5fREVG
QVVMVD15CiMgQ09ORklHX0RFQlVHX0lORk9fRFdBUkY0IGlzIG5vdCBzZXQKIyBDT05GSUdfREVC
VUdfSU5GT19EV0FSRjUgaXMgbm90IHNldAojIENPTkZJR19ERUJVR19JTkZPX0JURiBpcyBub3Qg
c2V0CiMgQ09ORklHX0dEQl9TQ1JJUFRTIGlzIG5vdCBzZXQKQ09ORklHX0ZSQU1FX1dBUk49MjA0
OAojIENPTkZJR19TVFJJUF9BU01fU1lNUyBpcyBub3Qgc2V0CiMgQ09ORklHX1JFQURBQkxFX0FT
TSBpcyBub3Qgc2V0CiMgQ09ORklHX0hFQURFUlNfSU5TVEFMTCBpcyBub3Qgc2V0CiMgQ09ORklH
X0RFQlVHX1NFQ1RJT05fTUlTTUFUQ0ggaXMgbm90IHNldApDT05GSUdfU0VDVElPTl9NSVNNQVRD
SF9XQVJOX09OTFk9eQpDT05GSUdfQVJDSF9XQU5UX0ZSQU1FX1BPSU5URVJTPXkKQ09ORklHX0ZS
QU1FX1BPSU5URVI9eQojIENPTkZJR19ERUJVR19GT1JDRV9XRUFLX1BFUl9DUFUgaXMgbm90IHNl
dAojIGVuZCBvZiBDb21waWxlLXRpbWUgY2hlY2tzIGFuZCBjb21waWxlciBvcHRpb25zCgojCiMg
R2VuZXJpYyBLZXJuZWwgRGVidWdnaW5nIEluc3RydW1lbnRzCiMKQ09ORklHX01BR0lDX1NZU1JR
PXkKQ09ORklHX01BR0lDX1NZU1JRX0RFRkFVTFRfRU5BQkxFPTB4MQpDT05GSUdfTUFHSUNfU1lT
UlFfU0VSSUFMPXkKQ09ORklHX01BR0lDX1NZU1JRX1NFUklBTF9TRVFVRU5DRT0iIgpDT05GSUdf
REVCVUdfRlM9eQpDT05GSUdfREVCVUdfRlNfQUxMT1dfQUxMPXkKIyBDT05GSUdfREVCVUdfRlNf
RElTQUxMT1dfTU9VTlQgaXMgbm90IHNldAojIENPTkZJR19ERUJVR19GU19BTExPV19OT05FIGlz
IG5vdCBzZXQKQ09ORklHX0hBVkVfQVJDSF9LR0RCPXkKQ09ORklHX0tHREI9eQpDT05GSUdfS0dE
Ql9IT05PVVJfQkxPQ0tMSVNUPXkKQ09ORklHX0tHREJfU0VSSUFMX0NPTlNPTEU9eQojIENPTkZJ
R19LR0RCX1RFU1RTIGlzIG5vdCBzZXQKQ09ORklHX0tHREJfS0RCPXkKQ09ORklHX0tEQl9ERUZB
VUxUX0VOQUJMRT0weDEKIyBDT05GSUdfS0RCX0tFWUJPQVJEIGlzIG5vdCBzZXQKQ09ORklHX0tE
Ql9DT05USU5VRV9DQVRBU1RST1BISUM9MApDT05GSUdfQVJDSF9IQVNfVUJTQU5fU0FOSVRJWkVf
QUxMPXkKIyBDT05GSUdfVUJTQU4gaXMgbm90IHNldApDT05GSUdfSEFWRV9LQ1NBTl9DT01QSUxF
Uj15CiMgZW5kIG9mIEdlbmVyaWMgS2VybmVsIERlYnVnZ2luZyBJbnN0cnVtZW50cwoKQ09ORklH
X0RFQlVHX0tFUk5FTD15CkNPTkZJR19ERUJVR19NSVNDPXkKCiMKIyBNZW1vcnkgRGVidWdnaW5n
CiMKIyBDT05GSUdfUEFHRV9FWFRFTlNJT04gaXMgbm90IHNldAojIENPTkZJR19ERUJVR19QQUdF
QUxMT0MgaXMgbm90IHNldAojIENPTkZJR19QQUdFX09XTkVSIGlzIG5vdCBzZXQKIyBDT05GSUdf
UEFHRV9QT0lTT05JTkcgaXMgbm90IHNldAojIENPTkZJR19ERUJVR19QQUdFX1JFRiBpcyBub3Qg
c2V0CiMgQ09ORklHX0RFQlVHX1JPREFUQV9URVNUIGlzIG5vdCBzZXQKQ09ORklHX0FSQ0hfSEFT
X0RFQlVHX1dYPXkKIyBDT05GSUdfREVCVUdfV1ggaXMgbm90IHNldApDT05GSUdfR0VORVJJQ19Q
VERVTVA9eQojIENPTkZJR19QVERVTVBfREVCVUdGUyBpcyBub3Qgc2V0CiMgQ09ORklHX0RFQlVH
X09CSkVDVFMgaXMgbm90IHNldAojIENPTkZJR19TTFVCX0RFQlVHX09OIGlzIG5vdCBzZXQKIyBD
T05GSUdfU0xVQl9TVEFUUyBpcyBub3Qgc2V0CkNPTkZJR19IQVZFX0RFQlVHX0tNRU1MRUFLPXkK
IyBDT05GSUdfREVCVUdfS01FTUxFQUsgaXMgbm90IHNldAojIENPTkZJR19ERUJVR19TVEFDS19V
U0FHRSBpcyBub3Qgc2V0CiMgQ09ORklHX1NDSEVEX1NUQUNLX0VORF9DSEVDSyBpcyBub3Qgc2V0
CkNPTkZJR19BUkNIX0hBU19ERUJVR19WTV9QR1RBQkxFPXkKIyBDT05GSUdfREVCVUdfVk0gaXMg
bm90IHNldAojIENPTkZJR19ERUJVR19WTV9QR1RBQkxFIGlzIG5vdCBzZXQKQ09ORklHX0FSQ0hf
SEFTX0RFQlVHX1ZJUlRVQUw9eQojIENPTkZJR19ERUJVR19WSVJUVUFMIGlzIG5vdCBzZXQKQ09O
RklHX0RFQlVHX01FTU9SWV9JTklUPXkKIyBDT05GSUdfREVCVUdfUEVSX0NQVV9NQVBTIGlzIG5v
dCBzZXQKQ09ORklHX0hBVkVfQVJDSF9LQVNBTj15CkNPTkZJR19IQVZFX0FSQ0hfS0FTQU5fU1df
VEFHUz15CkNPTkZJR19IQVZFX0FSQ0hfS0FTQU5fSFdfVEFHUz15CkNPTkZJR19IQVZFX0FSQ0hf
S0FTQU5fVk1BTExPQz15CkNPTkZJR19DQ19IQVNfS0FTQU5fR0VORVJJQz15CkNPTkZJR19DQ19I
QVNfS0FTQU5fU1dfVEFHUz15CkNPTkZJR19DQ19IQVNfV09SS0lOR19OT1NBTklUSVpFX0FERFJF
U1M9eQojIENPTkZJR19LQVNBTiBpcyBub3Qgc2V0CkNPTkZJR19IQVZFX0FSQ0hfS0ZFTkNFPXkK
Q09ORklHX0tGRU5DRT15CkNPTkZJR19LRkVOQ0VfU0FNUExFX0lOVEVSVkFMPTEwMApDT05GSUdf
S0ZFTkNFX05VTV9PQkpFQ1RTPTI1NQpDT05GSUdfS0ZFTkNFX1NUUkVTU19URVNUX0ZBVUxUUz0w
CiMgZW5kIG9mIE1lbW9yeSBEZWJ1Z2dpbmcKCiMgQ09ORklHX0RFQlVHX1NISVJRIGlzIG5vdCBz
ZXQKCiMKIyBEZWJ1ZyBPb3BzLCBMb2NrdXBzIGFuZCBIYW5ncwojCiMgQ09ORklHX1BBTklDX09O
X09PUFMgaXMgbm90IHNldApDT05GSUdfUEFOSUNfT05fT09QU19WQUxVRT0wCkNPTkZJR19QQU5J
Q19USU1FT1VUPTAKIyBDT05GSUdfU09GVExPQ0tVUF9ERVRFQ1RPUiBpcyBub3Qgc2V0CiMgQ09O
RklHX0RFVEVDVF9IVU5HX1RBU0sgaXMgbm90IHNldAojIENPTkZJR19XUV9XQVRDSERPRyBpcyBu
b3Qgc2V0CiMgQ09ORklHX1RFU1RfTE9DS1VQIGlzIG5vdCBzZXQKIyBlbmQgb2YgRGVidWcgT29w
cywgTG9ja3VwcyBhbmQgSGFuZ3MKCiMKIyBTY2hlZHVsZXIgRGVidWdnaW5nCiMKQ09ORklHX1ND
SEVEX0RFQlVHPXkKIyBDT05GSUdfU0NIRURTVEFUUyBpcyBub3Qgc2V0CiMgZW5kIG9mIFNjaGVk
dWxlciBEZWJ1Z2dpbmcKCiMgQ09ORklHX0RFQlVHX1RJTUVLRUVQSU5HIGlzIG5vdCBzZXQKQ09O
RklHX0RFQlVHX1BSRUVNUFQ9eQoKIwojIExvY2sgRGVidWdnaW5nIChzcGlubG9ja3MsIG11dGV4
ZXMsIGV0Yy4uLikKIwpDT05GSUdfTE9DS19ERUJVR0dJTkdfU1VQUE9SVD15CiMgQ09ORklHX1BS
T1ZFX0xPQ0tJTkcgaXMgbm90IHNldAojIENPTkZJR19MT0NLX1NUQVQgaXMgbm90IHNldAojIENP
TkZJR19ERUJVR19SVF9NVVRFWEVTIGlzIG5vdCBzZXQKIyBDT05GSUdfREVCVUdfU1BJTkxPQ0sg
aXMgbm90IHNldAojIENPTkZJR19ERUJVR19NVVRFWEVTIGlzIG5vdCBzZXQKIyBDT05GSUdfREVC
VUdfV1dfTVVURVhfU0xPV1BBVEggaXMgbm90IHNldAojIENPTkZJR19ERUJVR19SV1NFTVMgaXMg
bm90IHNldAojIENPTkZJR19ERUJVR19MT0NLX0FMTE9DIGlzIG5vdCBzZXQKIyBDT05GSUdfREVC
VUdfQVRPTUlDX1NMRUVQIGlzIG5vdCBzZXQKIyBDT05GSUdfREVCVUdfTE9DS0lOR19BUElfU0VM
RlRFU1RTIGlzIG5vdCBzZXQKIyBDT05GSUdfTE9DS19UT1JUVVJFX1RFU1QgaXMgbm90IHNldAoj
IENPTkZJR19XV19NVVRFWF9TRUxGVEVTVCBpcyBub3Qgc2V0CiMgQ09ORklHX1NDRl9UT1JUVVJF
X1RFU1QgaXMgbm90IHNldAojIENPTkZJR19DU0RfTE9DS19XQUlUX0RFQlVHIGlzIG5vdCBzZXQK
IyBlbmQgb2YgTG9jayBEZWJ1Z2dpbmcgKHNwaW5sb2NrcywgbXV0ZXhlcywgZXRjLi4uKQoKIyBD
T05GSUdfREVCVUdfSVJRRkxBR1MgaXMgbm90IHNldApDT05GSUdfU1RBQ0tUUkFDRT15CiMgQ09O
RklHX1dBUk5fQUxMX1VOU0VFREVEX1JBTkRPTSBpcyBub3Qgc2V0CiMgQ09ORklHX0RFQlVHX0tP
QkpFQ1QgaXMgbm90IHNldAoKIwojIERlYnVnIGtlcm5lbCBkYXRhIHN0cnVjdHVyZXMKIwojIENP
TkZJR19ERUJVR19MSVNUIGlzIG5vdCBzZXQKIyBDT05GSUdfREVCVUdfUExJU1QgaXMgbm90IHNl
dAojIENPTkZJR19ERUJVR19TRyBpcyBub3Qgc2V0CiMgQ09ORklHX0RFQlVHX05PVElGSUVSUyBp
cyBub3Qgc2V0CiMgQ09ORklHX0JVR19PTl9EQVRBX0NPUlJVUFRJT04gaXMgbm90IHNldAojIGVu
ZCBvZiBEZWJ1ZyBrZXJuZWwgZGF0YSBzdHJ1Y3R1cmVzCgojIENPTkZJR19ERUJVR19DUkVERU5U
SUFMUyBpcyBub3Qgc2V0CgojCiMgUkNVIERlYnVnZ2luZwojCiMgQ09ORklHX1JDVV9TQ0FMRV9U
RVNUIGlzIG5vdCBzZXQKIyBDT05GSUdfUkNVX1RPUlRVUkVfVEVTVCBpcyBub3Qgc2V0CiMgQ09O
RklHX1JDVV9SRUZfU0NBTEVfVEVTVCBpcyBub3Qgc2V0CkNPTkZJR19SQ1VfQ1BVX1NUQUxMX1RJ
TUVPVVQ9MjEKQ09ORklHX1JDVV9UUkFDRT15CiMgQ09ORklHX1JDVV9FUVNfREVCVUcgaXMgbm90
IHNldAojIGVuZCBvZiBSQ1UgRGVidWdnaW5nCgojIENPTkZJR19ERUJVR19XUV9GT1JDRV9SUl9D
UFUgaXMgbm90IHNldAojIENPTkZJR19DUFVfSE9UUExVR19TVEFURV9DT05UUk9MIGlzIG5vdCBz
ZXQKIyBDT05GSUdfTEFURU5DWVRPUCBpcyBub3Qgc2V0CkNPTkZJR19OT1BfVFJBQ0VSPXkKQ09O
RklHX0hBVkVfRlVOQ1RJT05fVFJBQ0VSPXkKQ09ORklHX0hBVkVfRlVOQ1RJT05fR1JBUEhfVFJB
Q0VSPXkKQ09ORklHX0hBVkVfRFlOQU1JQ19GVFJBQ0U9eQpDT05GSUdfSEFWRV9EWU5BTUlDX0ZU
UkFDRV9XSVRIX1JFR1M9eQpDT05GSUdfSEFWRV9GVFJBQ0VfTUNPVU5UX1JFQ09SRD15CkNPTkZJ
R19IQVZFX1NZU0NBTExfVFJBQ0VQT0lOVFM9eQpDT05GSUdfSEFWRV9DX1JFQ09SRE1DT1VOVD15
CkNPTkZJR19UUkFDRV9DTE9DSz15CkNPTkZJR19SSU5HX0JVRkZFUj15CkNPTkZJR19FVkVOVF9U
UkFDSU5HPXkKQ09ORklHX0NPTlRFWFRfU1dJVENIX1RSQUNFUj15CkNPTkZJR19UUkFDSU5HPXkK
Q09ORklHX0dFTkVSSUNfVFJBQ0VSPXkKQ09ORklHX1RSQUNJTkdfU1VQUE9SVD15CkNPTkZJR19G
VFJBQ0U9eQojIENPTkZJR19CT09UVElNRV9UUkFDSU5HIGlzIG5vdCBzZXQKQ09ORklHX0ZVTkNU
SU9OX1RSQUNFUj15CkNPTkZJR19GVU5DVElPTl9HUkFQSF9UUkFDRVI9eQpDT05GSUdfRFlOQU1J
Q19GVFJBQ0U9eQpDT05GSUdfRFlOQU1JQ19GVFJBQ0VfV0lUSF9SRUdTPXkKIyBDT05GSUdfRlVO
Q1RJT05fUFJPRklMRVIgaXMgbm90IHNldAojIENPTkZJR19TVEFDS19UUkFDRVIgaXMgbm90IHNl
dAojIENPTkZJR19JUlFTT0ZGX1RSQUNFUiBpcyBub3Qgc2V0CiMgQ09ORklHX1BSRUVNUFRfVFJB
Q0VSIGlzIG5vdCBzZXQKIyBDT05GSUdfU0NIRURfVFJBQ0VSIGlzIG5vdCBzZXQKIyBDT05GSUdf
SFdMQVRfVFJBQ0VSIGlzIG5vdCBzZXQKIyBDT05GSUdfT1NOT0lTRV9UUkFDRVIgaXMgbm90IHNl
dAojIENPTkZJR19USU1FUkxBVF9UUkFDRVIgaXMgbm90IHNldApDT05GSUdfRlRSQUNFX1NZU0NB
TExTPXkKIyBDT05GSUdfVFJBQ0VSX1NOQVBTSE9UIGlzIG5vdCBzZXQKQ09ORklHX0JSQU5DSF9Q
Uk9GSUxFX05PTkU9eQojIENPTkZJR19QUk9GSUxFX0FOTk9UQVRFRF9CUkFOQ0hFUyBpcyBub3Qg
c2V0CiMgQ09ORklHX1BST0ZJTEVfQUxMX0JSQU5DSEVTIGlzIG5vdCBzZXQKQ09ORklHX0JMS19E
RVZfSU9fVFJBQ0U9eQpDT05GSUdfS1BST0JFX0VWRU5UUz15CiMgQ09ORklHX0tQUk9CRV9FVkVO
VFNfT05fTk9UUkFDRSBpcyBub3Qgc2V0CkNPTkZJR19VUFJPQkVfRVZFTlRTPXkKQ09ORklHX0JQ
Rl9FVkVOVFM9eQpDT05GSUdfRFlOQU1JQ19FVkVOVFM9eQpDT05GSUdfUFJPQkVfRVZFTlRTPXkK
IyBDT05GSUdfQlBGX0tQUk9CRV9PVkVSUklERSBpcyBub3Qgc2V0CkNPTkZJR19GVFJBQ0VfTUNP
VU5UX1JFQ09SRD15CkNPTkZJR19GVFJBQ0VfTUNPVU5UX1VTRV9QQVRDSEFCTEVfRlVOQ1RJT05f
RU5UUlk9eQojIENPTkZJR19TWU5USF9FVkVOVFMgaXMgbm90IHNldAojIENPTkZJR19ISVNUX1RS
SUdHRVJTIGlzIG5vdCBzZXQKIyBDT05GSUdfVFJBQ0VfRVZFTlRfSU5KRUNUIGlzIG5vdCBzZXQK
IyBDT05GSUdfVFJBQ0VQT0lOVF9CRU5DSE1BUksgaXMgbm90IHNldAojIENPTkZJR19SSU5HX0JV
RkZFUl9CRU5DSE1BUksgaXMgbm90IHNldAojIENPTkZJR19UUkFDRV9FVkFMX01BUF9GSUxFIGlz
IG5vdCBzZXQKIyBDT05GSUdfRlRSQUNFX1JFQ09SRF9SRUNVUlNJT04gaXMgbm90IHNldAojIENP
TkZJR19GVFJBQ0VfU1RBUlRVUF9URVNUIGlzIG5vdCBzZXQKIyBDT05GSUdfUklOR19CVUZGRVJf
U1RBUlRVUF9URVNUIGlzIG5vdCBzZXQKIyBDT05GSUdfUklOR19CVUZGRVJfVkFMSURBVEVfVElN
RV9ERUxUQVMgaXMgbm90IHNldAojIENPTkZJR19QUkVFTVBUSVJRX0RFTEFZX1RFU1QgaXMgbm90
IHNldAojIENPTkZJR19LUFJPQkVfRVZFTlRfR0VOX1RFU1QgaXMgbm90IHNldAojIENPTkZJR19T
QU1QTEVTIGlzIG5vdCBzZXQKQ09ORklHX1NUUklDVF9ERVZNRU09eQojIENPTkZJR19JT19TVFJJ
Q1RfREVWTUVNIGlzIG5vdCBzZXQKCiMKIyBhcm02NCBEZWJ1Z2dpbmcKIwojIENPTkZJR19QSURf
SU5fQ09OVEVYVElEUiBpcyBub3Qgc2V0CiMgQ09ORklHX0RFQlVHX0VGSSBpcyBub3Qgc2V0CiMg
Q09ORklHX0FSTTY0X1JFTE9DX1RFU1QgaXMgbm90IHNldAojIENPTkZJR19DT1JFU0lHSFQgaXMg
bm90IHNldAojIGVuZCBvZiBhcm02NCBEZWJ1Z2dpbmcKCiMKIyBLZXJuZWwgVGVzdGluZyBhbmQg
Q292ZXJhZ2UKIwojIENPTkZJR19LVU5JVCBpcyBub3Qgc2V0CiMgQ09ORklHX05PVElGSUVSX0VS
Uk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0CkNPTkZJR19GVU5DVElPTl9FUlJPUl9JTkpFQ1RJT049
eQojIENPTkZJR19GQVVMVF9JTkpFQ1RJT04gaXMgbm90IHNldApDT05GSUdfQVJDSF9IQVNfS0NP
Vj15CkNPTkZJR19DQ19IQVNfU0FOQ09WX1RSQUNFX1BDPXkKIyBDT05GSUdfS0NPViBpcyBub3Qg
c2V0CkNPTkZJR19SVU5USU1FX1RFU1RJTkdfTUVOVT15CiMgQ09ORklHX0xLRFRNIGlzIG5vdCBz
ZXQKIyBDT05GSUdfVEVTVF9NSU5fSEVBUCBpcyBub3Qgc2V0CiMgQ09ORklHX1RFU1RfRElWNjQg
aXMgbm90IHNldAojIENPTkZJR19LUFJPQkVTX1NBTklUWV9URVNUIGlzIG5vdCBzZXQKIyBDT05G
SUdfQkFDS1RSQUNFX1NFTEZfVEVTVCBpcyBub3Qgc2V0CiMgQ09ORklHX1JCVFJFRV9URVNUIGlz
IG5vdCBzZXQKIyBDT05GSUdfUkVFRF9TT0xPTU9OX1RFU1QgaXMgbm90IHNldAojIENPTkZJR19J
TlRFUlZBTF9UUkVFX1RFU1QgaXMgbm90IHNldAojIENPTkZJR19QRVJDUFVfVEVTVCBpcyBub3Qg
c2V0CiMgQ09ORklHX0FUT01JQzY0X1NFTEZURVNUIGlzIG5vdCBzZXQKIyBDT05GSUdfQVNZTkNf
UkFJRDZfVEVTVCBpcyBub3Qgc2V0CiMgQ09ORklHX1RFU1RfSEVYRFVNUCBpcyBub3Qgc2V0CiMg
Q09ORklHX1NUUklOR19TRUxGVEVTVCBpcyBub3Qgc2V0CiMgQ09ORklHX1RFU1RfU1RSSU5HX0hF
TFBFUlMgaXMgbm90IHNldAojIENPTkZJR19URVNUX1NUUlNDUFkgaXMgbm90IHNldAojIENPTkZJ
R19URVNUX0tTVFJUT1ggaXMgbm90IHNldAojIENPTkZJR19URVNUX1BSSU5URiBpcyBub3Qgc2V0
CiMgQ09ORklHX1RFU1RfU0NBTkYgaXMgbm90IHNldAojIENPTkZJR19URVNUX0JJVE1BUCBpcyBu
b3Qgc2V0CiMgQ09ORklHX1RFU1RfVVVJRCBpcyBub3Qgc2V0CiMgQ09ORklHX1RFU1RfWEFSUkFZ
IGlzIG5vdCBzZXQKIyBDT05GSUdfVEVTVF9PVkVSRkxPVyBpcyBub3Qgc2V0CiMgQ09ORklHX1RF
U1RfUkhBU0hUQUJMRSBpcyBub3Qgc2V0CiMgQ09ORklHX1RFU1RfSEFTSCBpcyBub3Qgc2V0CiMg
Q09ORklHX1RFU1RfSURBIGlzIG5vdCBzZXQKIyBDT05GSUdfVEVTVF9MS00gaXMgbm90IHNldAoj
IENPTkZJR19URVNUX0JJVE9QUyBpcyBub3Qgc2V0CiMgQ09ORklHX1RFU1RfVk1BTExPQyBpcyBu
b3Qgc2V0CiMgQ09ORklHX1RFU1RfVVNFUl9DT1BZIGlzIG5vdCBzZXQKIyBDT05GSUdfVEVTVF9C
UEYgaXMgbm90IHNldAojIENPTkZJR19URVNUX0JMQUNLSE9MRV9ERVYgaXMgbm90IHNldAojIENP
TkZJR19GSU5EX0JJVF9CRU5DSE1BUksgaXMgbm90IHNldAojIENPTkZJR19URVNUX0ZJUk1XQVJF
IGlzIG5vdCBzZXQKIyBDT05GSUdfVEVTVF9TWVNDVEwgaXMgbm90IHNldAojIENPTkZJR19URVNU
X1VERUxBWSBpcyBub3Qgc2V0CiMgQ09ORklHX1RFU1RfU1RBVElDX0tFWVMgaXMgbm90IHNldAoj
IENPTkZJR19URVNUX0tNT0QgaXMgbm90IHNldAojIENPTkZJR19URVNUX01FTUNBVF9QIGlzIG5v
dCBzZXQKIyBDT05GSUdfVEVTVF9TVEFDS0lOSVQgaXMgbm90IHNldAojIENPTkZJR19URVNUX01F
TUlOSVQgaXMgbm90IHNldAojIENPTkZJR19URVNUX0ZSRUVfUEFHRVMgaXMgbm90IHNldApDT05G
SUdfQVJDSF9VU0VfTUVNVEVTVD15CiMgQ09ORklHX01FTVRFU1QgaXMgbm90IHNldAojIGVuZCBv
ZiBLZXJuZWwgVGVzdGluZyBhbmQgQ292ZXJhZ2UKIyBlbmQgb2YgS2VybmVsIGhhY2tpbmcK

--_009_DM6PR07MB43168B0D4DEA80BF2474B9D89AC3ADM6PR07MB4316namp_--


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 04:50:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 04:50:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608645.947255 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlMVh-0002BM-GQ; Wed, 27 Sep 2023 04:50:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608645.947255; Wed, 27 Sep 2023 04:50:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlMVh-0002BF-D3; Wed, 27 Sep 2023 04:50:53 +0000
Received: by outflank-mailman (input) for mailman id 608645;
 Wed, 27 Sep 2023 04:50:52 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlMVg-0002B5-KQ; Wed, 27 Sep 2023 04:50:52 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlMVg-0007Vd-DU; Wed, 27 Sep 2023 04:50:52 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlMVf-000526-Uc; Wed, 27 Sep 2023 04:50:52 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlMVf-0006AY-Tp; Wed, 27 Sep 2023 04:50:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=DGq3grmHifcVohxjxLJo+oxg5G29oj330+uCLWLynOY=; b=2vyPmxlYBBkAJYlozrHk2I0RlB
	hs9+zyf9jKL3D7o1tbRH0eQ+YFBYEiDGaqqubcx0Sseab2ZFQ4PShgAk6/Becr33/fHtYxIBNWqmQ
	xuxliwEA/JMSA2KoffLM1DTKMF3cejlqHAwUXFO6pUWmF/Y/khQdVcyIYQ7B0PmKVPsQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183181-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183181: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-multivcpu:guest-start/debian.repeat:fail:heisenbug
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=50768a425b46ad7d98f6d88c22d41aa026c463cf
X-Osstest-Versions-That:
    linux=6465e260f48790807eef06b583b38ca9789b6072
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 27 Sep 2023 04:50:51 +0000

flight 183181 linux-linus real [real]
flight 183187 linux-linus real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183181/
http://logs.test-lab.xenproject.org/osstest/logs/183187/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-multivcpu 22 guest-start/debian.repeat fail pass in 183187-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183146
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183146
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183146
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183146
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183146
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183146
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183146
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183146
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                50768a425b46ad7d98f6d88c22d41aa026c463cf
baseline version:
 linux                6465e260f48790807eef06b583b38ca9789b6072

Last test of basis   183146  2023-09-24 21:43:31 Z    2 days
Testing same since   183181  2023-09-26 16:40:34 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Al Viro <viro@zeniv.linux.org.uk>
  Amir Goldstein <amir73il@gmail.com>
  Arnaldo Carvalho de Melo <acme@redhat.com>
  Beau Belgrave <beaub@linux.microsoft.com>
  Christian Brauner <brauner@kernel.org>
  Chunhai Guo <guochunhai@vivo.com>
  Ian Rogers <irogers@google.com>
  Jeff Layton <jlayton@kernel.org>
  Jens Axboe <axboe@kernel.dk>
  Kees Cook <keescook@chromium.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Max Kellermann <max.kellermann@ionos.com>
  Namhyung Kim <namhyung@kernel.org>
  Nathan Chancellor <nathan@kernel.org>
  Shigeru Yoshida <syoshida@redhat.com>
  Shuah Khan <skhan@linuxfoundation.org>
  Thomas Richter <tmricht@linux.ibm.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-freebsd11-amd64                             pass    
 test-amd64-amd64-freebsd12-amd64                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                fail    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-amd64-xl-vhd                                      pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

hint: The 'hooks/update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-receive' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
To xenbits.xen.org:/home/xen/git/linux-pvops.git
   6465e260f487..50768a425b46  50768a425b46ad7d98f6d88c22d41aa026c463cf -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 05:16:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 05:16:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608653.947266 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlMty-0005sw-H2; Wed, 27 Sep 2023 05:15:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608653.947266; Wed, 27 Sep 2023 05:15:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlMty-0005sp-Db; Wed, 27 Sep 2023 05:15:58 +0000
Received: by outflank-mailman (input) for mailman id 608653;
 Wed, 27 Sep 2023 05:15:56 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=jNuQ=FL=intel.com=xin3.li@srs-se1.protection.inumbo.net>)
 id 1qlMtw-0005sj-7X
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 05:15:56 +0000
Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.115])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ed0bf7da-5cf4-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 07:15:53 +0200 (CEST)
Received: from fmsmga003.fm.intel.com ([10.253.24.29])
 by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 26 Sep 2023 22:15:50 -0700
Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83])
 by FMSMGA003.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384;
 26 Sep 2023 22:15:49 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by
 fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Tue, 26 Sep 2023 22:15:49 -0700
Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by
 fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32; Tue, 26 Sep 2023 22:15:49 -0700
Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by
 fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.32 via Frontend Transport; Tue, 26 Sep 2023 22:15:49 -0700
Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.107)
 by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.32; Tue, 26 Sep 2023 22:15:48 -0700
Received: from SA1PR11MB6734.namprd11.prod.outlook.com (2603:10b6:806:25d::22)
 by CH3PR11MB8705.namprd11.prod.outlook.com (2603:10b6:610:1cc::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.21; Wed, 27 Sep
 2023 05:15:40 +0000
Received: from SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61]) by SA1PR11MB6734.namprd11.prod.outlook.com
 ([fe80::922f:ec7c:601b:7f61%6]) with mapi id 15.20.6813.017; Wed, 27 Sep 2023
 05:15:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ed0bf7da-5cf4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
  d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
  t=1695791753; x=1727327753;
  h=from:to:cc:subject:date:message-id:references:
   in-reply-to:content-transfer-encoding:mime-version;
  bh=4BNSzxsrwpMS4BgNXvVndRoaECTZh36FogVc34hU2DY=;
  b=eIIDNIzKTvAJzTx2Z9BmCAtFd5ZUXqd2zoJFALmdmrDJLrdrSEYD0qKs
   DHni+PtLKCEwR/SBlo+1Y+I3uKhTKasDM1Xn491FKrJDgeRAK1/olu8x7
   3aBIqmWCsEU7JC7qz5zeSblYIRlRzcICNHehB6giR0+OfQP6uQIzQxjl4
   DAexuNK/GVAAo/lF8sOUNylevFly5EsfUV8sgA+H+xaKLUG1aQ6XgRhXx
   pkedkYZRxMRFheHyd3Igm33gb5qbcjghFy2ZooWdv0ZfGVfdjYrjGBKgv
   Gptv961T0z7tHHo+cQew+9d8hjZY6ipp9rT8zeoN/yfwm/96bi9fMv8x1
   w==;
X-IronPort-AV: E=McAfee;i="6600,9927,10845"; a="381632958"
X-IronPort-AV: E=Sophos;i="6.03,179,1694761200"; 
   d="scan'208";a="381632958"
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6600,9927,10845"; a="839286745"
X-IronPort-AV: E=Sophos;i="6.03,179,1694761200"; 
   d="scan'208";a="839286745"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ZQ4ikI8ruAZPEg4n7mKDC2vJEmeiIsBfQKzRvp/hCqmSJfzpV7lSf2Z/4rpOY+j3EVq+czlOt0EA6DbHDqCxSf5tqDf1maavs8boQvc9Uu16WStvMpYS6JgamPTvEFwITE5vK/iK2tTFFRTe30Q6zEdFzjgSvAkKOq91PXuyZuGBBozHspOBMi6M0V9/auQlrCWPRXqCwzVKM2txeKikbmrH4dG6ckZgymfDWTfMvyjVcNOcJw7BprCVoemDk+rRo0NXI939bfYL+1abEjiK7ceLTcd1BC9CHh3vfVmODZJi8XaKJwKQw6pdBdXEC6UnFXCTLltRiTIPS4rqYLqoVQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=4BNSzxsrwpMS4BgNXvVndRoaECTZh36FogVc34hU2DY=;
 b=Wq9EHWe2hS3ziuVlK6j5HjNySTlIV6AMEhOPXgLxMJv662j0TL4kPUzYAhT75tygZVSXgsrRWMRid+k28g4X2hZws0u0PCYOKf1Dm/+xPApXQNyoVwAtc1t3qfxjKlZ2obYRTf5HxnI5yPJCG1G416u8+T9hR0tRiM9S6Q5IeU3iWNnj8Mu/XVSaFgt48gR7w5adLEtXZ6/pdnC5R6iHf983dgWMuyTkjAwjRXX45jb7v1fvudFdfeD4xe3H7Yb9xfxNBy06nArhpdZaLe5RvpwLf/bY/YSx2MNrASjLBJSO2bxMlcuoMhifnNKT6EWsUnmsyGqZBgH5WP6Paszo+g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;
 dkim=pass header.d=intel.com; arc=none
From: "Li, Xin3" <xin3.li@intel.com>
To: "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>, Nikolay Borisov
	<nik.borisov@suse.com>, "linux-doc@vger.kernel.org"
	<linux-doc@vger.kernel.org>, "linux-kernel@vger.kernel.org"
	<linux-kernel@vger.kernel.org>, "linux-edac@vger.kernel.org"
	<linux-edac@vger.kernel.org>, "linux-hyperv@vger.kernel.org"
	<linux-hyperv@vger.kernel.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: "tglx@linutronix.de" <tglx@linutronix.de>, "mingo@redhat.com"
	<mingo@redhat.com>, "bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>, "x86@kernel.org"
	<x86@kernel.org>, "hpa@zytor.com" <hpa@zytor.com>, "Lutomirski, Andy"
	<luto@kernel.org>, "pbonzini@redhat.com" <pbonzini@redhat.com>,
	"Christopherson,, Sean" <seanjc@google.com>, "peterz@infradead.org"
	<peterz@infradead.org>, "Gross, Jurgen" <jgross@suse.com>, "Shankar, Ravi V"
	<ravi.v.shankar@intel.com>, "mhiramat@kernel.org" <mhiramat@kernel.org>,
	"jiangshanlai@gmail.com" <jiangshanlai@gmail.com>
Subject: RE: [PATCH v11 05/37] x86/trapnr: Add event type macros to
 <asm/trapnr.h>
Thread-Topic: [PATCH v11 05/37] x86/trapnr: Add event type macros to
 <asm/trapnr.h>
Thread-Index: AQHZ7gZyHDaIF1QhlEKbn4wr9Yc91LAsxeCAgAAVJICAAUuagA==
Date: Wed, 27 Sep 2023 05:15:20 +0000
Message-ID: <SA1PR11MB673482336F1F1C7C68EAD320A8C2A@SA1PR11MB6734.namprd11.prod.outlook.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
 <20230923094212.26520-6-xin3.li@intel.com>
 <7acd7bb3-0406-4fd9-8396-835bfd951d87@suse.com>
 <6e0064bc-65c1-24f5-c29d-c1d1c027e2d3@citrix.com>
In-Reply-To: <6e0064bc-65c1-24f5-c29d-c1d1c027e2d3@citrix.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=intel.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SA1PR11MB6734:EE_|CH3PR11MB8705:EE_
x-ms-office365-filtering-correlation-id: 1d84010b-46be-4d7a-b312-08dbbf18bf0d
x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: IWEQzXCsAIpHh+lpoJ5yWBwwdvqZcIyutbifH/3lNvEnp16+usPlEvVI6V4XtOZwGZLiZc+OxdnX6eyhSA/CEXzbqlCYp09sXJizGDYQPNbtyqK9UBCdviXVLUVpeb3ejRGrR+FkPC3pKmBfqGWqzav2M+0RzcQUQ8vwoBXbOdkYG2MJVHdwhErbUsKtqgcgII+UYR40pYOaA/f/gi0oII1JeeUhyiwIrqvc50z4REirORjgxhSRP1jkNnrdfyvyh/MWXXmeXqzcx1MUoi5LDQ2vPOZsFZJ5esyraj6cNspLCABFoyhhzuLJTXJ79Vba9HH1ZIunppMrmtAjX3J6i0+kN21nWllFk5XorH5WkayLgcPiOnHr5KVpLzp9wxXRFE6mIjlRcRMpEzFH4lcsKTTeIYkJMics1dbGrdaxegHnsQ4QVYJMUzd/+Tlw/8vLVf8MLm07ZtoN5/nN5ZXkOcJ6VAnddwks7o7N4t0kPuqisQbuRihw3uQ/JG9tR8v5KJJE88ZhpptwkkDuSa3YC/zRCSJxJmECaTo5PHF5DwCH7ev7r+3Z2MTyPAE7DR4ZzaPRA9z2+xZbKkBjQIZLs9ej2Pcy17014O/xxRaBm2NXacISxbIg194pXjw0bENl
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6734.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(376002)(366004)(396003)(136003)(230922051799003)(1800799009)(186009)(451199024)(110136005)(54906003)(55016003)(9686003)(66446008)(316002)(38100700002)(122000001)(66946007)(38070700005)(66476007)(64756008)(71200400001)(41300700001)(66556008)(478600001)(26005)(7696005)(6506007)(6666004)(82960400001)(7416002)(2906002)(76116006)(4744005)(33656002)(86362001)(4326008)(8936002)(52536014)(5660300002)(8676002);DIR:OUT;SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?TC9Pb3krV0czMEgzaGVXMzYvNUFkTkZiZzVBd2ExVE9BTDRaVnk2c3M5RmF6?=
 =?utf-8?B?ZXN1Z2VtVFEvcStQb2Q3Z0p2eUUzS2Q0YkMwanVTTUoyQXlGTWtWb08yemZu?=
 =?utf-8?B?cEs2cUlCTm1sL1hpdEdMSWl3bzNoYnFFRGZJaXkzbTZRc0MzenVERHZHbkRL?=
 =?utf-8?B?d1IwaFNRM00xMVdsc0IvOHhZVkFub2N2Qkw5b1ZiL2RTb05wY1h0ajFpdDdD?=
 =?utf-8?B?VHRFanlqQXkrRmFSZk92UWg3dVAxODg5RGpaSlBUM2JWRER5Nm15c3pHRUlm?=
 =?utf-8?B?cVNxY2xpMmNlL3d0c2VIaHhNVGp1V2tNS2dkalFzWnVPOHFnTmV1MXZuMUE2?=
 =?utf-8?B?VE5ZSU9KTUoxVHVIWG9qR2lEbVo1OForbS8xeVR5bzdDdDY4VXppNUFwUUdn?=
 =?utf-8?B?L2N4TndHMFJmN3h6VWZKU1I4bmt3bkZ3eWt6dm54OWg0cU1xU0RIQ2J1b3Zm?=
 =?utf-8?B?eDB1Qm8wU0xKcXhVSVloMnU0Yk9aQlVTWVkveHdnWFdsdytNeGNjUTkreHd3?=
 =?utf-8?B?TG5MSjEyVXhGM0dIc1FUaVZzbTJFbGdHYmUyOVhvbUJ4bnRObkdTdXVJRnd6?=
 =?utf-8?B?MkZUaUs0eUZ4LzF0NXlQdEZVM2dqeTI4T1VOeU1HUzExYSt0WXJXWGtPb3B0?=
 =?utf-8?B?OEY5cG5rWHdxeWprQThaTUZHRTR5dy8zSzdGK3hKM3VQamltM1lYbnNZVXFs?=
 =?utf-8?B?YzVwTGNjWGpsdVBmakNEYytMRnhZdDVjTHJNT05DS0NUSURWUnBEeGdwdnVz?=
 =?utf-8?B?a0pDNVY1VE94OXZPZXBTZUt1MW5KaHh5RDVJQ0QwNEMvbEFWejZTejVmeDdv?=
 =?utf-8?B?dVVNZVZIN0JFc09rMXV0RmhHZXRVUGJmcVZwRi9VQ2lycDhzSllBR3dXOExk?=
 =?utf-8?B?Zm9Gc2lBWmU5WWpKakY0QlI5VFhyTWp6VUNjZUt1SUVnNWFZZ21jd1Z0UGtQ?=
 =?utf-8?B?bnoyd2htcThxemhBNGdWY1UyK05VSFZnM1dMeHM1SXUzMGFkTi9ibzJUMGpS?=
 =?utf-8?B?Z3dBbEViSS9TbnNnbk1SdXQzQUtjbGdQT0Y4MktieUZ1bGJLWEpxSDFWRVBt?=
 =?utf-8?B?ZFIyTEQ4QmNQMkFCL3pndGlaaXlxNC9kNjFhRlQxZC9aVWhQdU81MlFxV2tG?=
 =?utf-8?B?OXNWVkpraTQ4QkJlSnNtOWJWclFDZEJQWUNicFBkUW8rVk50L3VON3BJQ0ly?=
 =?utf-8?B?Qi8zZWx5VVVkNU5Fb2EvVjl6anhlN2JmWjFFTnhyeDM1eTdrTVkvSkZmZXRG?=
 =?utf-8?B?ZC9MTWpVaWYwNXkxbFV2VUpYTFQzR1cyaGJBOS9JdThQV0d0YUJubUI0eExG?=
 =?utf-8?B?YzNMZ1BCWWpmb0hQdmF0dXFGOElaZzVRMmo1Sll3bDd3UVhOUG1ieXFaT0ZU?=
 =?utf-8?B?c29iLzhDc05pUGQwa04wSnE0Z21IOW1aLzFxeGVMQzZwWkZGa2FMVVJ5anpQ?=
 =?utf-8?B?RURqWnNLR0VXWjRKbnhrM2J1WXZMcDhVbmNHbkRrK0YxTFFoN1RpQVRkSnd0?=
 =?utf-8?B?R1VoQk1heG9uRnoxMVF0RnRhN2M1YS9HV2VLNWduNTFRWXo5UGJJQ2NsTGgw?=
 =?utf-8?B?NFNTY09YNTd1Y29uYndsNlJZVjN1dmcxZlQ1MW1nekNjNURaSVlsVXBYU1R5?=
 =?utf-8?B?NWpmZ2U0Z0JoZTVsUXB5SFNoeTBna3hFZkllblh4ZDlRemp4emI3eVZNVVR1?=
 =?utf-8?B?TU1hUWx2SDc1Tk9UTFFrTGdFbmRRYjU4c2FmY2NDb1JSOWR6TUk2UHJyL2NL?=
 =?utf-8?B?dVZVdW5zSlFLSjZGaENnblRyMmtWS3RZQ0tPMDJDelNZbWcyeWJoWmhLSnZD?=
 =?utf-8?B?RDVLYWFMQTc4bTE4ZHhZK0xrS0I1Q2tNWUVudHlqL3lIdnM4SXJkT0N6ZHla?=
 =?utf-8?B?S1lPNDVtRERkWHN4S3R3MVZ0OG5RRk5JSmN1bGxBajJ4cEo4dzkyb1YwQVcz?=
 =?utf-8?B?cUg5eEVVVm4wSTdqTGx0cGdXT3drR1lwSGlKTW9UYWR6TkFHc0d0R0tJMmx0?=
 =?utf-8?B?SUtQcmpHdDBudTd4Ui96UmVpYUtIdlBJNjE5MDROR1FiSWhBNnlKVEtZL3ZF?=
 =?utf-8?B?MUJtRHd1aEtjM2VKN2Z5L0M0aHZXQ1VTS1Z1dUNvZkx5eE9BWjJkVHZDSE1M?=
 =?utf-8?Q?uX0c=3D?=
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6734.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1d84010b-46be-4d7a-b312-08dbbf18bf0d
X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Sep 2023 05:15:20.7966
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: gzuJxK4grIB0fIh3QGiloe3BKDtyhVlPdgkj7s+f0xGq2fxmwY4neHPFZdqVWEtyKJJD7aOLWOrtKU6u1J6ATg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR11MB8705
X-OriginatorOrg: intel.com

PiA+PiArRVZFTlRfVFlQRV9QUklWX1NXRVhDwqDCoMKgIDXCoMKgwqAgLy8gSU5UMSAjZGVmaW5l
IEVWRU5UX1RZUEVfU1dFWEPCoMKgwqAgNg0KPiA+PiArLy8gSU5UTywgSU5UMw0KPiA+DQo+ID4g
bml0OiBUaGlzIHR1cm5lZCBpbnRvIElOVE8gKE9oKSByYXRoZXIgdGhhbiBJTlQwKCB6ZXJvKSBp
biB2MTENCj4gDQo+IFllcywgdjExIGNvcnJlY3RlZCBhIGJ1ZyBpbiB2MTAuDQo+IA0KPiBUaGUg
SU5UTyBpbnN0cnVjdGlvbiBpcyAiSU5UIG9uIE92ZXJmbG93Ii7CoCBObyB6ZXJvIGludm9sdmVk
Lg0KPiANCj4gSU5UMyBpcyB0aHVzbHkgbmFtZWQgYmVjYXVzZSBpdCBnZW5lcmF0ZXMgdmVjdG9y
IDMuwqAgU2ltaWxhcmx5IGZvciBJTlQxIGFsdGhvdWdoIGl0DQo+IGhhZCB0aGUgdW5vZmZpY2lh
bCBuYW1lIElDRUJQIGxvbmcgYmVmb3JlIElOVDEgZ290IGRvY3VtZW50ZWQuDQo+IA0KPiBJZiBJ
TlRPIHdlcmUgdG8gaGF2ZSBhIG51bWJlciwgaXQgd291bGQgbmVlZCB0byBiZSA0LCBidXQgaXQn
cyBiZWhhdmlvdXIgaXMNCj4gY29uZGl0aW9uYWwgb24gdGhlIG92ZXJmbG93IGZsYWcsIHVubGlr
ZSBJTlQzLzEgd2hpY2ggYXJlIHVuY29uZGl0aW9uYWwNCj4gZXhjZXB0aW9ucy4NCg0KbGl2ZSB4
ODYgU0RNIQ0K


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 05:20:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 05:20:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608658.947276 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlMyf-0007OB-5X; Wed, 27 Sep 2023 05:20:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608658.947276; Wed, 27 Sep 2023 05:20:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlMyf-0007O3-27; Wed, 27 Sep 2023 05:20:49 +0000
Received: by outflank-mailman (input) for mailman id 608658;
 Wed, 27 Sep 2023 05:20:48 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlMye-0007Nr-H9; Wed, 27 Sep 2023 05:20:48 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlMye-0008T8-72; Wed, 27 Sep 2023 05:20:48 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlMyd-0005z6-Sx; Wed, 27 Sep 2023 05:20:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlMyd-0003VF-SN; Wed, 27 Sep 2023 05:20:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ttkL1Ge1uhHkHXUY1ywdtgHRZlmK6YnjaHjlUSmrRVw=; b=GE8CxA0ouEmRTTr+hnJ0OCzaln
	8iErf2g88UtyDjAf2tituvlYWSVm5em/1cxXco5+fx9EtqpIXcCdl9kCislEzQgku3G6D0JbJLk6P
	AswMPawSJhynvDUSLCNNRrTLi1CCHmA3UwQsctEA5atB/s25Y47HX2thUvLtD+sNx9V4=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183186-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183186: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=be971fc302cbef8f47e2612eda114135f21205e6
X-Osstest-Versions-That:
    ovmf=bf0bdacdd6f6cdd2e9ac5db14b6daf19a5a5bd57
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 27 Sep 2023 05:20:47 +0000

flight 183186 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183186/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 be971fc302cbef8f47e2612eda114135f21205e6
baseline version:
 ovmf                 bf0bdacdd6f6cdd2e9ac5db14b6daf19a5a5bd57

Last test of basis   183184  2023-09-26 20:12:38 Z    0 days
Testing same since   183186  2023-09-27 00:12:32 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  HoraceX Lien <horacex.lien@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   bf0bdacdd6..be971fc302  be971fc302cbef8f47e2612eda114135f21205e6 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 06:16:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 06:16:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608665.947286 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlNqh-00069G-92; Wed, 27 Sep 2023 06:16:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608665.947286; Wed, 27 Sep 2023 06:16:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlNqh-000699-5X; Wed, 27 Sep 2023 06:16:39 +0000
Received: by outflank-mailman (input) for mailman id 608665;
 Wed, 27 Sep 2023 06:16:38 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlNqg-000693-Ba
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 06:16:38 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20614.outbound.protection.outlook.com
 [2a01:111:f400:7d00::614])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 67ad0390-5cfd-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 08:16:33 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by DU2PR04MB8838.eurprd04.prod.outlook.com (2603:10a6:10:2e1::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 06:16:30 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 06:16:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 67ad0390-5cfd-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=erHqGZQiB8MhX5bwjGVcg3ArktMAt3KRoWCWlziw5Tky/cT4t/+Y/g5L6Nw9K4iDyltRBiKARI3LJEp5OVT1ucVwjP3AIMLoh4M4iLXdXGwMTFyuGoS7feT78FAUxiaatyjNaEUh7lKuEAVD5O/mEkjyMQ6A2ELucKvUue+iO4TWq5+mlOoyAXETebLO8MHeNz7SDkhc5P0F1D/3dNWLzueSJjgCypVmOM8UcoaKjGkfjkzPqFwOIHlWarC4oGEEEN0ScQ56xvKuWj2n2tDizg1adw6MPmUczCxMhzcbf8kivMM/UGDgJJXxro+5Q6SJ/DSlafAZXs8ML/6a8NZPKg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=yQcFF5yUrTnIf1gLPQhTE003gu23yOWXsg3CscYaaqo=;
 b=JZJrqSMT+w3S7QcaJojWoqdXhdyhZNTdVzv/IcAkxW3H/nMPX+7Lte+UMaQMWAiWZ2zQT43n/8lDpFU2TmhMSp9Wlw9ICQEZd3a4IuXAQVwxAVDmLiPd9jHqVrEZWgD6vflAMNHAQrcZ9oj2KmEwzo6wTRjoOFUMAeo+Qi50o81cFoKg0W/OeHpBX0KUBq/hMrvrcNTaURW49VIWxzBj889S0b7Dn5v41Ue4ZvrjkBUWlBJrGMhLGUued/G2lZ+jSqrghd2sIhdCNBVia6KNFTn6nO4s5NWouJ5obdAVi0OI14Gy7j7B6NgLlIDu89f9+evf0PELg4JzdOycXd0llQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=yQcFF5yUrTnIf1gLPQhTE003gu23yOWXsg3CscYaaqo=;
 b=5NY6I+ZjkB+SbT01+mFG/zgCaBS292j5Jy1GzB9//DnLocaT+7hZ411QLI88jwR4382+r1SLQE2xoGDWwFzmsWe2Ij12ezHdPE02HnlPJVy9303+yt7cu3Y3Cx5V/keq5Q8o3jJUktQ0Ad05vlCv7dlR/R0QtXk8xexAaCfzGR9dD1d0KEnc02LamvjFtLUzziTbcc2whPOqeher328XpJlcjmexUpH86lmBjzbgVKsn2ujsGv/D4gm+MuLIpVkschwPLxRSfmchKLpBhUjZmjJRy7340OcT1sFgjO5tG+RKVKvMy7iiThEoPAUcxJV0VwqyLKjeKry0LonDJ2dHNA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <535e10f2-fa2a-bb6e-6db3-025743e07a77@suse.com>
Date: Wed, 27 Sep 2023 08:16:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 2/3] automation: Change build script to use arch defconfig
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org,
 Timothy Pearson <tpearson@raptorengineering.com>,
 Doug Goldstein <cardoe@cardoe.com>, Michal Orzel <michal.orzel@amd.com>
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
 <beb83dd70b15ee6bd896fb26532f5debf955cd48.1695681330.git.sanastasio@raptorengineering.com>
 <alpine.DEB.2.22.394.2309251609330.1403502@ubuntu-linux-20-04-desktop>
 <59f73c32-bde9-b0a4-00e8-24db1fea2d87@suse.com>
 <2f348eb1-1e66-22d4-dafe-20ada835155f@raptorengineering.com>
 <4919dd70-92c2-b62c-baa7-1733b039a621@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <4919dd70-92c2-b62c-baa7-1733b039a621@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0196.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ad::18) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|DU2PR04MB8838:EE_
X-MS-Office365-Filtering-Correlation-Id: 55820474-5af9-40f0-3922-08dbbf214a6e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	h1p68uGCagJ8HKKSzn1QqGmj6dmejYpaAQbP/qp3nSzXfxS55+EMouHkZSVcI1c8EbdDO6aHcEyszCypjhedNYz06EZG0Oy5rR1/Z7ntYbQmU336sV3cGs3YqQ/cCPUyqVowG72XnlZijxf16U58p5xN7WmW9GUFal2AD+7wKXKqzv69PoJI/c+67xmY3tJ3/8os/6AG5jh3KfsYL8/D5g3RPQSIkaS9WtYyJ05uRhqyd6Kc4ZDPLGFdaCJ9e5sTG80lnTgOZdSylP80G/DAp7eezFVHa43EfKdBD7CgFi+5RkIbMiGHceJ5D9uvLV2yOyecuO/e2JPknjI9AqHRwyuyFxvFzwNlwy8z+u16v+G1qt451LNXrRq8NFGT0f5mvW3f+KSoeG7+l7BN9XeKtSEN53imKwag52ruQ8eWexs1t0YRQM9dR+32FHu6Tl8b4CmkzN2LgRDCcrG1VNT0RIjP3P0vJ62exZPpPlHewSasCxeehD1nfPnJfMiP1Dl0FRZhLqfufB1dfqiX2f3zu5clXodL46VYEb4/T4ZKc+AgYJctB1rkSDp4A2fmtZG6+Wj1PNYk5EjW71sNU0VwxbrXGmT0xpOM5WaKuAkorJr7qgV+X7fQV3bHS8yf8ZtZwPwNnBlVhvg0lVLvZhTTyA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(376002)(396003)(39860400002)(366004)(230922051799003)(186009)(1800799009)(451199024)(26005)(6506007)(478600001)(53546011)(6486002)(31696002)(2616005)(86362001)(6512007)(110136005)(66556008)(38100700002)(83380400001)(54906003)(316002)(2906002)(8936002)(8676002)(66476007)(66946007)(41300700001)(4326008)(5660300002)(36756003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?c3ZxTkdQSUFYSUJ2dW5JejFVT0xQMmQvc1NxWHpIaGZNd09GQkR1VCtsYUEr?=
 =?utf-8?B?S3k2bFVhazcyL2dsNmNuZlBndVBFamZaeTlDWElZeXhVcktDMEpzUU5qK2lm?=
 =?utf-8?B?T2JTRnV1TlFrSkc3NlowTVpXR2J4SEZxZC9naXJqZ2xJRndrdkszMXNhRmlS?=
 =?utf-8?B?eEx1a0s1dHZRQnBBOGx3a1E4d3FicVAvR01VT2o0dzJyNkVzejg4aXE5UGRp?=
 =?utf-8?B?OXdTSHhYdjE2NjRQYXNEUEt2WTBpNkFGdUhSQjQzcFpyZkdXZkhoRTdrbFN4?=
 =?utf-8?B?ME8vejlyZng0RXBxNVVnMmxvQndncnlIZVNJNTQvZVFEYkNycFVwK3pjVlFD?=
 =?utf-8?B?M0hEZU5NY0FCWWd0RXkyYW5LY293dlREcjRqMGIrRm15WlBWcWE5UXdwQXN3?=
 =?utf-8?B?WEhlUkNZVWJ3RktUQysyc0tMdG5INlVKZDhIQy9iNTQ3VlFVWkJoZlZISDJM?=
 =?utf-8?B?UVRUZDlIYUVkWjVrZkxkeklUb1U2TlpWbk9aYkJhTWhOUUkrTGRmSm1ybGRC?=
 =?utf-8?B?NkdLWnMwb0dzdm50TVBwRU12WndVTDBib1Q3YVNlTXVOSDRLWGgrZytCb3Uz?=
 =?utf-8?B?SDl3Q2lWamNLTE8zeVVkd0lMSWZhU2V1MVNHVkkrYktrcFBwQ3RXT0RZa1Ni?=
 =?utf-8?B?MzlqL2cvUWhlUFp2YTVselhnNTQ1c255NnpBTnVHQ1E4SE51cGR3NmFCWjUz?=
 =?utf-8?B?SFloaHFlZXk2YjUvdFdVcjdQNzBQZEdRNktRVHpiYU9YZ2tKUmNzaWRpRTZ2?=
 =?utf-8?B?clZFNlpCeWgyVE5QRzNLT1ZUTjZwQndkdjlqdXltaFp1RUV5TmdKVjVKM3o5?=
 =?utf-8?B?aGptVTc2NFh1SDRRY3pxNnZ5U1VEQy81dWE2b1pXcE9VMUpUQnJzUmhjcUM1?=
 =?utf-8?B?QmtLQ2p4alk4SU9ERkJnR21FMWdLbGpCcEJWYkd1L3o1UjFKQXVua0g5b0pX?=
 =?utf-8?B?WWRWQ2FmL3BvU1JvKzNZbld2WitheE1INUxCQXBPSlZHYW9PenZRN05yR0Mr?=
 =?utf-8?B?Z2cwbUxMQ1k1WnYycEMvVEJTekp6Y1VtNkpEbFhoMDhGZGdsK3pPRnFoL1lH?=
 =?utf-8?B?dmhmNGlROFM1UjJLaVVhdHdVWDdPWW1Gd2NJbkljbUxSbENPKy9XVGhLQjBM?=
 =?utf-8?B?MWJFNitUNGlQRktmQktIYzc3VERYdGxhY0M0UjV4L3BEMzlXcnpxcHlSTDM0?=
 =?utf-8?B?emxEOGg5bVVmRjBZcDdET0lwc2NJd1kxbmo2N1UzeVduci9UMDBJeEVEN09X?=
 =?utf-8?B?bEdhOGVpdGErWVBCamxiYVQ1bERsNFdGRzNwMHhpMUpMakprZmoyOGV4Ry9z?=
 =?utf-8?B?ZnpsSm9TNDBtbzlNaFR5enhNTVlpbS9uVXBqcllVSUl6VFFLNll4ZGFIbHgy?=
 =?utf-8?B?amdlNVdWSnBGZU5NZUNrRzVXSi8velJOUlBsSGE5emk3LzJXWFdxUjlLWVph?=
 =?utf-8?B?YmlPZWwwNmlYMjZBTVdiZ3FmQ1NydC9RbWVFeHRiOUg1L1NtOEVGWmwxWk8v?=
 =?utf-8?B?Tnl5UjkyTHlxRjFaLzkvNzNpYUNCeUFHV1VEVVlBZXVGVHZ3aktmcVJmRjg4?=
 =?utf-8?B?S0pjWU9IeXRHdkl1RVAwdHFPTyt6OU5zY1pudkZSODZjWjVud21MdUlIU0Nr?=
 =?utf-8?B?WmQ2aTJwMXdycklrRUVVbVNyczg1b2VoSnhsT3VFL1FPQVRDRkxqTXVQbmhj?=
 =?utf-8?B?M3RjQXFHVERldFMwRjByRkllRVV1VGtYTjlkRmpDRzUxRjFoN1V1RW5HVVV4?=
 =?utf-8?B?UW9WTWF2aGRGdGZYOWdEUmFkNGozZ2hFVUVjdnQyWTh2LzF0M0VzT1Rnb0R2?=
 =?utf-8?B?VFpXU00yY0lhZ1dyOWFlTlNOT2JmSVQ2L1pybHFMcnVPa0ZMcHZZQk1VYUdM?=
 =?utf-8?B?RXRIdmcrMnVITGloQytIZGo0ZFlEU1pWa1ZOT2lKSmlKcFE3OW9uVS9QOVJi?=
 =?utf-8?B?RTBEaUJQY2dOd3hVeGYrdjBsRzJPaUpIbjBOOUMydklpWERiVnVnRjRCTkpa?=
 =?utf-8?B?cFdWall1R24vcUk3NXVNeVZyQkQ0R25scGFZSFFVMG04VnBSSU53em9Ia3pn?=
 =?utf-8?B?NC9VeHg5aEx3Q0VZVXNFZVVvMWd3REJEclJvUm9UcDdUZDdrZzNpdC9xM2tP?=
 =?utf-8?Q?+IBmBZv9vW2b+ecmFYueKmp2s?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 55820474-5af9-40f0-3922-08dbbf214a6e
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 06:16:30.7514
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: RIK+7zfkamMWS6/u5Sl4Y9ezUe3wLkQUzVgF/ZV6j1xobA4cAMGFFR2dQtODbm9AT29K+sRuqzxgMuqg0E44qw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8838

On 26.09.2023 20:35, Shawn Anastasio wrote:
> On 9/26/23 12:43 PM, Shawn Anastasio wrote:
>> On 9/26/23 2:19 AM, Jan Beulich wrote:
>>> On 26.09.2023 01:12, Stefano Stabellini wrote:
>>>> On Mon, 25 Sep 2023, Shawn Anastasio wrote:
>>>>> Change automation build script to call the make defconfig target before
>>>>> setting CONFIG_DEBUG and extra options. This fixes issues on Power where
>>>>> the build fails without using the ppc64_defconfig.
>>>>>
>>>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>>>>> Reported-by: Jan Beulich <jbeulich@suse.com>
>>>
>>> Nit: Tags in chronological order please (also affects patch 1).
>>>
>> Will fix.
>>
>>>> What is the problem specifically? Is the issue that CONFIG_DEBUG enabled
>>>> before make olddefconfig causes certain DEBUG options also to default to
>>>> yes, and these additional options don't work well on Power?
>>>
>>> No, the issue is that "make olddefconfig" takes the existing .config
>>> without even considering the arch's default configuration that was
>>> specified (KBUILD_DEFCONFIG).
>>>
>>>>> --- a/automation/scripts/build
>>>>> +++ b/automation/scripts/build
>>>>> @@ -22,7 +22,12 @@ if [[ "${RANDCONFIG}" == "y" ]]; then
>>>>>      # RANDCONFIG implies HYPERVISOR_ONLY
>>>>>      HYPERVISOR_ONLY="y"
>>>>>  else
>>>>> -    echo "CONFIG_DEBUG=${debug}" > xen/.config
>>>>> +    # Start off with arch's defconfig
>>>>> +    make -C xen defconfig
>>>>> +
>>>>> +    # Drop existing CONFIG_DEBUG and replace with value of ${debug}
>>>>> +    sed -i 's/^CONFIG_DEBUG=[yn]//g' xen/.config
>>>>> +    echo "CONFIG_DEBUG=${debug}" >> xen/.config
>>>>>
>>>>>      if [[ -n "${EXTRA_XEN_CONFIG}" ]]; then
>>>>>          echo "${EXTRA_XEN_CONFIG}" >> xen/.config
>>>
>>> It never really became clear to me whether kconfig honors the first,
>>> last, or any random setting in a .config that it takes as input, when
>>> a certain option appears there more than once. The change you make
>>> implies it's consistently "last" - can you confirm that's the actual
>>> behavior of kconfig?
>>>
>>
>> I actually tried to avoid this issue alltogether with the sed command I
>> added before the echo to drop any existing CONFIG_DEBUG= line.
>>
> 
> Just realized that options in $EXTRA_XEN_CONFIG would also be subject to
> this which is likely what you meant to point out -- my apologies.
> 
> I've tested locally and Kconfig does indeed seem to honor the last
> setting. It throws some warnings about the overridden symbol but the
> build continues with the latest value, e.g:
> 
> .config:94:warning: override: reassigning to symbol DEBUG
> .config:95:warning: override: reassigning to symbol DEBUG

I might guess such warnings are okay to appear, but this needs confirming
by one of the people more familiar with how the CI works and what output
is or is not okay to appear. I can see upsides and downsides to such
warnings ...

Jan



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 06:27:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 06:27:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608669.947296 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlO0m-0007zj-6f; Wed, 27 Sep 2023 06:27:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608669.947296; Wed, 27 Sep 2023 06:27:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlO0m-0007zc-2w; Wed, 27 Sep 2023 06:27:04 +0000
Received: by outflank-mailman (input) for mailman id 608669;
 Wed, 27 Sep 2023 06:27:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlO0l-0007zW-0Z
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 06:27:03 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2075.outbound.protection.outlook.com [40.107.7.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dda91c67-5cfe-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 08:27:00 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by PAWPR04MB10032.eurprd04.prod.outlook.com (2603:10a6:102:38d::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 06:26:31 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 06:26:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dda91c67-5cfe-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AUb9GbHx1sarjI/1yaiNSrPR6i+L34vRB0gTQBdXAJmbT3jc4SeFSjcBtViMsoHUu+3WJtTIenXAG8uxmfIhiF0TfcuVnoQ9Rkv+3/HlDWFfSprYjrkwnXU7XE5IYFKb435FFC28sPH3lLZdjPSo8pdUHUt5Dp8FGyh1tmRfKyUemg4do5CLmzkSaknrgegfQIe/XNo5zsLuIfUbstr/T8//l5P0A/NHE4fuIG5vhQDCI1EIYB8GaG13MtNnKfH5PDnvDd6T5GJblpRg6ymA2KoxogEjUaBpKtVKg3L5PrTewHk/RhZc7JjrUNPtaC1lqbCDbx7ep3F42KxmcP1Uqw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DApTZA/MHF903HYZK8jWLnadYC9Z4R+vG6Xs8rVACOI=;
 b=ERbvcXiB/Py6nH852Ml79sgpTzKCfZXgavyqFiMYs3IKrPecMFXsTw2DbhE9DlStyIeMF1uchUXdgegCBNvgybOM1ZwcseG6QYQgbOuiiZjY02lLH189QJFfSI/eyHuA3Q5JWWzG5DYfLB+SB1ZbCZVNSQ0EeYicm0Cx600i7SFqyCo+4Dycd8Z1i/LbcnWmBywQi0liITRDkRrZh33iUdrAGufC7Slc5QYAHRwFs/6/r27gNTovQEPItAaH1DpfFw2HDqRHDQYesKLNRpOhk258TJmULcFbKeTVEBdZcGM/zP9OCgtsDzfC6YoAwjcPosKcxVb1eblpGUO8oJVrpQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DApTZA/MHF903HYZK8jWLnadYC9Z4R+vG6Xs8rVACOI=;
 b=W1U5sduDeVP2u5X2Mt8tG4Y7rvWbL2MlgCAt7iqn2BvwP/2csZy9hy4Fy4sQqzIYXHBjbK2DmQgoW1ZhqIJ1BMF50JIQ1bZaxGztmUzmYFlaxufyT/OzCFazD/nSx1tQ+oaIEn1IX803R6FPrG4z1ICaR7u2RMYM0ahDjE4FVxcw9bJTnLXGgAyMKWQ3agCyfbrOKg+HtZOcBfpn6sL7u2gwQu4rDuHACKleFTHsFmnsMPOUYMcU/7xk5duqzOuCYWrR+OdXFsEaB2X95PVI2s7vYao+6APigXGCOcvFjjIvlEOPAKN8fNM08eInSxK7eipFJHap3jFncsj/pPO1pQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <27507e44-79a7-7ccb-091e-6356531274e1@suse.com>
Date: Wed, 27 Sep 2023 08:26:28 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH 1/3] automation: Drop ppc64le-*randconfig jobs
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Doug Goldstein <cardoe@cardoe.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Shawn Anastasio <sanastasio@raptorengineering.com>,
 xen-devel@lists.xenproject.org
References: <cover.1695681330.git.sanastasio@raptorengineering.com>
 <76d21ac8a0de7d5ebac8b39a8d552b931a6302a3.1695681330.git.sanastasio@raptorengineering.com>
 <6856be3e-1f06-6c5a-5d0b-7ca72200d456@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6856be3e-1f06-6c5a-5d0b-7ca72200d456@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0208.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ad::16) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PAWPR04MB10032:EE_
X-MS-Office365-Filtering-Correlation-Id: 4f2f918d-6ef9-40ac-7e3b-08dbbf22afeb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	79jT8S/FFo+XE/V8QrbSDhlvFc8OTI6dsKrOScEaD1JoNPGMHKXk5MBXphO6mkC02kWPMhLvIAIdBs7nlws57ocsvVNao2FEBLnJtONKcURaFz9R4Qb28nlNnGJ4rNBDDPHEpjV+AZk5MOPnMRYaTX2yNk9KTGwkDhd4+xmWbGJUe2SBv6qiagbZUucEwqzgiZyeKna1qmrlJGc0c3VSFJJnUrz7smaa9V4Wq725bZlcNc7tYbO548CVnx6rIBbuIvBAwBB9/GVpUkCdzT4a74btGsA43XS0jmlMzhilf+9J5W/pfqrz0s5yaqjYCmMldI7nqCNuelIStXAHMISS5jd9+BltqzwI0GIyatenbH/foMu2ray291SVBmNq8k+IkN/I3OCzEvStNiNEF2YA1cvHjD+lxODky8qvGZjQOnyXrVeIpMghDbbUIpwOd0zi1+1pkDUSn+P7kdYDl4cMcdhDSSKZ1wB1ins79hAUbIoCVPG+5Nm38kgamJP2jrpKqXejzI1nEuG/8P+WdFBTw7XUq/QU/leQkSLKWp74nMk4KggojKQZ5u3dc6BQTh8vfsMiSb2LhrVL82X3mYVWpbJAgEDoW2qEvgSD9TmNskInKU8j4HGdm4A9byNJZP8jjbsJ01BPegwsfyQibzhRLw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(366004)(376002)(396003)(39860400002)(230922051799003)(1800799009)(186009)(451199024)(2906002)(6486002)(6506007)(2616005)(6512007)(38100700002)(53546011)(54906003)(31696002)(86362001)(66946007)(478600001)(83380400001)(66476007)(26005)(6916009)(5660300002)(36756003)(66556008)(316002)(41300700001)(8936002)(8676002)(4326008)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?S3EwVDJvdWN1NHRWblpJcllOYWlIVnN0ekNPWktnN0pvbi84d2JSUEJybTg3?=
 =?utf-8?B?UGJaQ0tOZnJoS1lWMVpKVGNyUHNWeWZEK2JsbmwyYjlmYlZ1MGphbkJYcFVF?=
 =?utf-8?B?TWFCdkJaS0RyZTNrR2hvUXd0dDc3a2NWUkpqS3FyQjhhd1RaNGROdjMxME10?=
 =?utf-8?B?L2loeE1LZnJFelNqaThEL2JscjNscGpRUGZqZkJjckJnMTNBTjFlUnlLWWhy?=
 =?utf-8?B?L1Q3NmJBSk1ZRmdEL2tLQnNiV01iemhZOFJLWUhJMjRkU3VwSTJhRXdYeWR1?=
 =?utf-8?B?VXRIVnZvdHZRTFZkbXBuQWxSano4UERzR1VTR2FFaWVJWlRjeDYvd1lMVlFR?=
 =?utf-8?B?R1pTRWtkcEp2ZmZhUkY2SU9aR0EvUVloM0FKRWZTbmNad2wrZmNYRG1pZFZ3?=
 =?utf-8?B?bTAvZTA3elpXZlU4NDVTODBzZHJRWHRlNVVwVjIwa3ppOUxyYlZDTnUzM3lp?=
 =?utf-8?B?cTB3M2JzeWZlT29JWE1JVFdzamdxemF2WkpvYnhJbWh1U0lINkxwelI5RXI4?=
 =?utf-8?B?VHNSek1JZjRNMUkvL0F0UU1zcExvTDRMcGd0bmRYWWZJT2E3YnhGZ3lNOXJY?=
 =?utf-8?B?bitMeGZwR204NmgyM1oyRDdkUFVpUjlrb242RjRHQVdhaEN6dTB3b1dZN2s2?=
 =?utf-8?B?NDRUc1lqOGhjcmRibkVtVlM0YlBzdDJTbGdTYlU5OUVNbzlGdEV4bjVUOFln?=
 =?utf-8?B?U2h0bTFqZ1A4V2FLbG1pOXpwdm9OVGdPRDR4aVRoODRNemo4SS9zL0lIV2lk?=
 =?utf-8?B?QUtUcytDa0o0c1RRZ2c1TjJTRUZoR2ZCSUlwREVKUlNEWnRXNDM0TGI1S0dx?=
 =?utf-8?B?YjBQcXZHejVwcjJyUG13SjhaYXFENEhIQjJaWHY3MXA5ZDF1akthYVE2S0Rv?=
 =?utf-8?B?UkUvdjdnMHh1Umc2NWtQaUdhRWc2SCtlQlJJYUJ6ZERYb3l5S0l0OS9iSGpY?=
 =?utf-8?B?cVdYTW1Cc3c1aVcxOVZOc0EzcWNPS2thdlZTeU01MW8yQXdlZjdGOXFPWlBV?=
 =?utf-8?B?cEtXbnBaY2Z0aUJmcFk0ZHZJZXE2YWhuNmZ2aThZTjFkUDZxcEJHbHRreWF6?=
 =?utf-8?B?OUMwWmF0aDZwTTVWSFRrcnlPYjhoTnFOQXRjUTY5U3pFS3J5RVdQYjJVb1JY?=
 =?utf-8?B?MUNhZFRFTlJnektwK254ZVBwZ0F5bzJ4cVJ1MUE1N3VOV0FoN1RvWXd5SkdQ?=
 =?utf-8?B?Q1VoWWJoQmswL3I5bHp6dlN2dUNOakRoelV0UENMRERWZmFhVHIzOVd0UmtZ?=
 =?utf-8?B?THpxaUpZUnUzWUtTcnVtbEhlOHVkNnloZVF6aE1ZMFdrUkFRaTFDZGlPZWtj?=
 =?utf-8?B?T0RRam8wd2hPbW5tY21WU01WQXY1ZGl5ZU51UjJXN0Q4NlhXemZ4WmNlRXNv?=
 =?utf-8?B?R0kzby9uaXV6ZVl6aW5zM3oyVGlYVlc2VDc1QkticCtXNHp1eGt0WU5vNG1o?=
 =?utf-8?B?Z2E3d3ZyK05MdU9uRW9aM0Q1dVhPSGxCQ0hCSTVKYjB5MWQyUVgwdUJnNXVD?=
 =?utf-8?B?RGpldzBuTmY5bHR4Y1Awb2JERStHWGhnbzBtYTNxcHJNcTJDRUtPbkx1WU91?=
 =?utf-8?B?b3crbXc1dDBVdW5DQkh1MEhXZHV2dnA2MU9lNHdzZ1IvcUtReStyU3R2dTJJ?=
 =?utf-8?B?N2ZlV1J1d0U4WmxJbWw0clNIWlBDR3lQak9RODN5cWpXclBWS3ZSdit5QWVu?=
 =?utf-8?B?ekZpRHIzYTJ2TEs4RW9EVHo0dFdwU3hyVEdUTjdWQXFINzdnVUw1WnA0Ynp0?=
 =?utf-8?B?ZGN4MVAvWE5OSEMxeGVZV0Q3K0dFTFNqajk5a0I2b09DVUQvZTZjOER6aUZN?=
 =?utf-8?B?Tnp1eXMzaUtHeHN0QkE2MllZbGdrMi9IR1BKQTQrcHluN0FPa0p1Zm83MTFM?=
 =?utf-8?B?Njg0bjJZQkdEZ3I1akJ4KzhWS0FkMjlCK3lNRklTN3NPNXU2NTlIa1hkOFFr?=
 =?utf-8?B?T1VMMWNYMnB2VkJTZHhCeWJqSCtWOHh1RFBVcUR1UklCK2ZOVVFKN1JXNkNW?=
 =?utf-8?B?T0pWeWpjQTEvQ21PUk9vUDNkRjRYMW1nTGZMaGhMZW16ODhvdlBNZjdXTW5B?=
 =?utf-8?B?K0RjR1lGd21MVmVVM2VtZ05HV0poZm9DcmR5cXYzdngrMmcvaFZLRlR5cWZP?=
 =?utf-8?Q?pCdjQHcSGhgrO6XF9TZi8ClpF?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4f2f918d-6ef9-40ac-7e3b-08dbbf22afeb
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 06:26:30.6633
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 14uX4HN6sbCPDCSbnmbqkCRCtL+gtsFuuAU+AXt5v54b3q/QLecACo/B3+2ePQoC9UAcpdl0jSeARE+a4w7ATg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB10032

On 26.09.2023 21:49, Andrew Cooper wrote:
> On 25/09/2023 11:42 pm, Shawn Anastasio wrote:
>> Since ppc64le is still undergoing early bringup, disable the randconfig
>> CI build which was causing spurious CI failures.
>>
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>> Reported-by: Jan Beulich <jbeulich@suse.com>
>> ---
>>  automation/gitlab-ci/build.yaml | 18 ------------------
>>  1 file changed, 18 deletions(-)
>>
>> diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
>> index 1619e9a558..32af30cced 100644
>> --- a/automation/gitlab-ci/build.yaml
>> +++ b/automation/gitlab-ci/build.yaml
>> @@ -563,24 +563,6 @@ debian-bullseye-gcc-ppc64le-debug:
>>      KBUILD_DEFCONFIG: ppc64_defconfig
>>      HYPERVISOR_ONLY: y
>>  
>> -debian-bullseye-gcc-ppc64le-randconfig:
>> -  extends: .gcc-ppc64le-cross-build
>> -  variables:
>> -    CONTAINER: debian:bullseye-ppc64le
>> -    KBUILD_DEFCONFIG: ppc64_defconfig
>> -    RANDCONFIG: y
>> -    EXTRA_FIXED_RANDCONFIG:
>> -      CONFIG_COVERAGE=n
>> -
>> -debian-bullseye-gcc-ppc64le-debug-randconfig:
>> -  extends: .gcc-ppc64le-cross-build-debug
>> -  variables:
>> -    CONTAINER: debian:bullseye-ppc64le
>> -    KBUILD_DEFCONFIG: ppc64_defconfig
>> -    RANDCONFIG: y
>> -    EXTRA_FIXED_RANDCONFIG:
>> -      CONFIG_COVERAGE=n
> 
> I know this has been committed, but it shouldn't have been.  Randconfig
> is important to have even at this point in the bringup.

Well. As so often you only comment when it's too late. The question whether
randconfig is sensible to have in the bringup phase was raised earlier. You
could have said "yes, keep it" there. With there not having been any comment
on the suggestion to drop this (and I similarly think for RISC-V, which is
likely to be similarly affected the moment the full build is enabled there),
I didn't expect any opposition to the patch, and hence went ahead committing
it.

> For options which are known-incompatible, append them to
> EXTRA_FIXED_RANDCONFIG, just like COVERAGE already is.

But in this early phase that merely means re-stating some/all of what the
default config states (which may in fact state a few too many fixed
settings).

> However, it was only grant tables which showed up as broken, and ought
> to be easy to address.

It may only be grant tables right now (that's what CI had spotted), but
other settings are likely to become (transient) problems as well. See
e.g.

#define smp_processor_id() 0 /* TODO: Fix this */

which imo might lead to the compiler spot bogus constructs, just because
at the same time NR_CPUS > 1.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 06:32:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 06:32:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608673.947306 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlO5q-00019X-OZ; Wed, 27 Sep 2023 06:32:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608673.947306; Wed, 27 Sep 2023 06:32:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlO5q-00019Q-Lp; Wed, 27 Sep 2023 06:32:18 +0000
Received: by outflank-mailman (input) for mailman id 608673;
 Wed, 27 Sep 2023 06:32:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlO5p-00019K-E1
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 06:32:17 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on060b.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::60b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 99ab251b-5cff-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 08:32:16 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by DB8PR04MB7146.eurprd04.prod.outlook.com (2603:10a6:10:127::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 06:32:14 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 06:32:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 99ab251b-5cff-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Yna8xz5bRP6OT393iFOJiBMhnmucEFFmhcgj4w0PkWNX0LiJc9jtFWo/CfYEdxIAvoVYDfElkGQjA5D5y4pf6OCwW4ltKQuv4XiKpSSDUyKbbI6s79hu1r2JCg55Q0pi91TDwez8jA4fs4jI80tBBoUG4tXPfEghYiCf822Xls9MHM0o/lPcZ5aOPCdwgzJ5bC+FSyjost9Vf9plRyUH1FhVREiqh9q61iDkgpSXIxlje5WTDaVj5Ol0AdNmbCUIzaKW1zeJd6geNyExPtpXdsdhDozVlFu7uUZSlcAqCsi3jdOHengfEkPbJPVNPaoGAd+/xHgt5Yah/WrXomyF3w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=QEr0MeIkFNkWcgF+GCZsIIGm7csp0+zR7DJHwWhIUEQ=;
 b=e7wnP/kA3+4ku6r5JuME1NLIytYeDPMrz32kHg3q94zukzSAuq+LHhIfcXD00jy8zplfEA3b2vtkNi+q4WBE3yop0imckBKHbUzjplT73qlALnhSukHiNZlAFKSKuCMXiunGhpADhQUPDBrn0pPmeHf06AqmKQ/iQgN81YrUM215vWb0qFaA+fWGQiMVGCRHqS04+X0zAboYdFFJbVAktOisn89HU86qROOSEcESmmLxFH13EZRN9NQQBumYAUqJyTO4439We5UO0JpKkKEzSxfFXwOplENglk5Tsq/QRmiFhBIr48KaY+7jfMlwwC+JtyhGciNxDrx5VdYgWzQyZg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=QEr0MeIkFNkWcgF+GCZsIIGm7csp0+zR7DJHwWhIUEQ=;
 b=PBpn7JAB71dnnvnXbnnVEkZz2jJh841Gw73LHeLI4AAuYGiTuL/aYTM0XD6yw5b9wwt8Po3C6aYCYXvKoSPfpA+YTnIoEzpc9obUXGJl51DHfgcvBdTn4PQSTC+vPbUW+BSoh2UE+sRO2q696Ye9C5mOAXWc9hF2KL7CkdZjsMhw7a4Zwqrlol3n73Y0BkDho+64OMI6Vk76eTVGsBhPbCwvNUPmG/4084sdXLK1WbFcQKky2/xWey9GxGUZXPJKkoep2gQMXWqDLN7W+OvoMe0DMNj85x1XJ0CrZ16Q5NbgMViCCIFiIq4xtlUz1O3LA6IO5lBSzjVbK+ENyDodeg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <43be87e9-d947-c6c2-a70d-c6ba947cacbf@suse.com>
Date: Wed, 27 Sep 2023 08:32:12 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 2/2] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
Content-Language: en-US
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1695767747.git.sanastasio@raptorengineering.com>
 <d16b2f8749b65e303f531776d303586336ef1729.1695767747.git.sanastasio@raptorengineering.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <d16b2f8749b65e303f531776d303586336ef1729.1695767747.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0051.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:92::8) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|DB8PR04MB7146:EE_
X-MS-Office365-Filtering-Correlation-Id: ca6b45bc-67b8-428f-16f6-08dbbf237cb5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	HODdfyXBPZ6Tmwh89fDc/CpE4YwE+G/drLCOKfkbw8Hnk74ypH7fMYwukS01e6v1qAlD09ubgYodU27PYOkLhrEhJByIlRiju1zthVCDasR5OJeGB2T+s5QTY/6pb2gC4Saln6yywvWlQl/IapzxWSUCMq4wh72R5Me24oxOLVIvf0KFAOalRuXQU/tVGdxXTnLx4LpjY1q2gviEGV3HVKSlJOPmsPOL7xKTmjeVgrVb1oIL8EsHF9m6OUK2A23fhlcjnmbnf76phRbm/jo6cH+mXhy0W5uNJ9Txs6wAb91nJhsjlEOFtA/dtsnECRFcMdPotM8iKOOwWKtcYTpjzMBkPweG7ZwAbMkcC3Pr8iiwm51KndS3qeY1cmYEwlOjuTCxU00FhRQir8J8lUeC/nJ+maKv0nghbxvPgozVvZc3N485XdyJyy42ldVFxRdS3hdsmIlSWgwI8ANQWOQ7tbqaPkAP5BY3PgwNaEZNKLMX5Oh3s0fE98TSg26KPimmdRhN3kbUwmr2ma5QGsAj/jZ8PBfhYxkn8Q6/n9gFaOeKVqCrOFsbSRWEl7SX4HnSF5lgAmpjCmTlsNar/6UFiGa+cScFpYGETCTJt1UmhuEXNWulkOBddcD/5fb0RN/GMZ1cpaCf76/ZjNK+SK/jog==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(396003)(366004)(346002)(136003)(230922051799003)(451199024)(186009)(1800799009)(31686004)(4744005)(316002)(5660300002)(54906003)(83380400001)(6916009)(41300700001)(8676002)(8936002)(36756003)(2616005)(4326008)(66946007)(6486002)(31696002)(53546011)(6512007)(6506007)(66476007)(66556008)(26005)(86362001)(2906002)(38100700002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ajRUN0NaVEFrSHN0bmNFanlvYWx6TWpEZHNZalo2VER6TDkzYXlyZ3VOWDRK?=
 =?utf-8?B?bXYraWM2cTUvYkJiWjNuK1JiKzNwQVNOYnpoVlVBVTVENEorRjcrTGc5ZkdU?=
 =?utf-8?B?S3I0RnhTRS93VzNHMTRYT1hBUEM4RGNONngyMjhHR0FJMURvU0hmbHhCcWRF?=
 =?utf-8?B?M3dlUHF5V1ljUXJ5VUZpWUtoU1ZyTkhpSzZic0duLzVwRERZaU9uUGxMSlB4?=
 =?utf-8?B?Y3YxdzZjU2N5VVBlT0tlRWVvSXpOSjlFMk54bVByc3JLbnpFRmZIYVViQjE3?=
 =?utf-8?B?QnY5eUtrVXFmNXc0U3Z3eVo2RklMc2RsVDZQbkhqU1JSKzNqaWVTTG1HTnAv?=
 =?utf-8?B?U0tGN3F1Q0MvV25BaVYyaU5sUk9tNUNOSTUrdHhBT09PVWZMRzJaZ0N0dmFy?=
 =?utf-8?B?MWZPL0pwZXFlQWI1cEpCOHJjWjh0eXZYbUpsWGdyL3UrZ3orbDhXaFBIenZB?=
 =?utf-8?B?ZGw5M0dnM29RSmxqajVlc2ErZHIwa2tyVElqTmtmckMzUy9ENEJ3bVhuTVBC?=
 =?utf-8?B?SVRCSkE3amR2L3ZRYkFrZFV0ZDR3UzJyL1E0ZzFvd3gwc1BScVFuWmo0YlR2?=
 =?utf-8?B?OTlSd1hKV1krQmdzU0R0b2R4WjlaanFjbVJQd0VkWHhVWFh6SHo3aW0wVUkz?=
 =?utf-8?B?REIvZGRHS0RaKzJHaGlPd3dDV2pRMFZ1NjRIbkloaHJ6Zk9yT0NOYkVidGtz?=
 =?utf-8?B?YWxQQlc1dzgrQzhBbkR3c1hnakV6UldZbENkMmYrcndyQ1J0VkhhUktVbDNV?=
 =?utf-8?B?TzJiKytVR2QxTnd6MXk3MmMzS01LVzdmVnRocFZLbHRlZ0JEQUU0b3lTWnBM?=
 =?utf-8?B?VFhHdEhuSnlRN1RpVTZDS0RNSUVvOFAvVTg1YktYUHE2SWROMW5Zb3gxTjZ4?=
 =?utf-8?B?Q3pMakxlOU9CQnVSRHU0eWM5TDZZd3dmb2lnb0wwSCsvTExRRW4rTDF5bUJR?=
 =?utf-8?B?SytpZXpJYVNhOGFITE9YUjFiRm8xS2J3dENDNTJ5SytiTDk3V05sdXZzLzFx?=
 =?utf-8?B?c0FLQU9Sd2dzQXdrYWwvQ3hYTVNobzF6QnBFelprVFJTQXhkVllmWlNTNTk4?=
 =?utf-8?B?Zlh6S2c4M0k1WmZQWVZMODZJeHFmNHRWVittSHNneHVGZkt3L0VQVHdJZzAw?=
 =?utf-8?B?RlRKWXVXOFczSXhEU2FsVThYcVZ1WUxUTHhyU2Y5VGlJekgxenZXYWFtTmQx?=
 =?utf-8?B?YThpMXc5M3hUdFViRllxb3lBL1RvTmVKcE1FWHlYV2dJQVF1dEpuNGlVczZa?=
 =?utf-8?B?bEFRMy94RWhYUXZBZUZ6Y1pHM3R4c0QwQjBPd29FMTE3N3NrRXVIdTdLeTBL?=
 =?utf-8?B?ZUdpakFRZ0FXaHcvUmFURWw4d010OHBFYkZZVkZic0hhVHZNemRYdWVhaXdx?=
 =?utf-8?B?UGtabUVZeDlvczIrelB3RjZyd0dMYUJ4VHNJeVQwaXk2U3IwdUVCc1N1dURW?=
 =?utf-8?B?QXFva0ZWczE5TVdpRGRUWGhJeTN2N2VRVmhsU2pjTk8vN0VwTUdEaXpmc0E4?=
 =?utf-8?B?d0Z6Y0xzaG1DUFo0S3ozZDNvTVdyL1VjNnJZQ0lidWNYWmV6bjRPdUx4RXV5?=
 =?utf-8?B?NEJDWkVXOTFOUGhFT1lEWUlhNVEzSy9WbXB5bnlNUnV3QTFzaHpHRXBQdlRa?=
 =?utf-8?B?ZzBiKzhFNTBPQktEWW9EUjFZallVTmMzMnVoSnBhMWZVRHIrbi84N0gvc0Rw?=
 =?utf-8?B?V2FuQkNwTyt1M25KTk92YnZJYWJQK2hiTFJuR3dzVU01b3cvaUxHMjVSbXZn?=
 =?utf-8?B?SmlvRHZ3a2Qrd3ZHbWRmRjkvcVRBVTNjK2JVdjA1ckpObDN6NDQ2U1dnUlFt?=
 =?utf-8?B?MXZ5TStsSW1EL1lPMFpnTTBkd2t4ZFdnMGZmOGNTQW03dzJIa0wwQ0V2NG5h?=
 =?utf-8?B?UmJyRC94bEJqaWkzWHArZ1dyMWlkbi90TS9JZUVZaW5XOTNyN1lOVnorQnlI?=
 =?utf-8?B?YWVmUlY4aFNGUTJXSjJpaHUxZGhNTVVld0g0eS9ySks3UnQ2Tmx5OVFCZVNK?=
 =?utf-8?B?MlNQREI4TlJKWTVtbm9tSzdQbHBhTVJ4eGhWaVZ2Z3p3aUdSSS9yTXBIaHVG?=
 =?utf-8?B?blJiQnVzZkV6bHRBT01IeXN5M3JDaktSWHdPSnBnUHEybzlGT0FkOFZpWEMy?=
 =?utf-8?Q?Tl1CtWHnOrF0QWckt6GlO5cTv?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ca6b45bc-67b8-428f-16f6-08dbbf237cb5
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 06:32:14.1087
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Z9MzPnrVEQSPZFxZQ1HUKbB4Mek/Db7vThafw1X/pRzTwaP8TLJ2a/3kPXKTK4THIBGjWIzwLah1tC+jutBWww==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7146

On 27.09.2023 00:37, Shawn Anastasio wrote:
> --- a/xen/common/page_alloc.c
> +++ b/xen/common/page_alloc.c
> @@ -1211,6 +1211,14 @@ static unsigned int node_to_scrub(bool get_node)
>          } while ( !cpumask_empty(&node_to_cpumask(node)) &&
>                    (node != local_node) );
> 
> +        /*
> +         * In practice `node` will always be within MAX_NUMNODES, but GCC can't
> +         * always see that, so an explicit check is necessary to avoid tripping
> +         * its out-of-bounds array access warning (-Warray-bounds).
> +         */
> +        if ( node >= MAX_NUMNODES )
> +            break;
> +
>          if ( node == local_node )
>              break;

My comment on v1 wasn't addressed, either verbally or by a code change. Imo
that would move us a tiny step closer to what Andrew was asking for as well.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 06:35:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 06:35:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608677.947315 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlO94-00025P-Ak; Wed, 27 Sep 2023 06:35:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608677.947315; Wed, 27 Sep 2023 06:35:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlO94-00025I-8D; Wed, 27 Sep 2023 06:35:38 +0000
Received: by outflank-mailman (input) for mailman id 608677;
 Wed, 27 Sep 2023 06:35:37 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlO93-00025B-61
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 06:35:37 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2080.outbound.protection.outlook.com [40.107.7.80])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 0ff179f4-5d00-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 08:35:35 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by PAXPR04MB8318.eurprd04.prod.outlook.com (2603:10a6:102:1c0::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 06:35:05 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 06:35:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0ff179f4-5d00-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=CaztjUmeFhIgO1OU+rmeTXQPyvEA3Vg2LFpVk8wUY1XxJpbflvW/tJe8FADmJ/d6L1jzD0iTFT07cU/aTZXo3SV6oqLOUoe/hRjUOzA9voC1LUdbFjCPgwEK04YxS8J+2k/UrH1BO8gUz8gLE0ttEwYPv5OvWr+U4eSP+rtHN+WpmbNuTBg/qW4ogeGAHIOdCKScArHNKqLxS5mXI+sncmCz6EEgzd/dRRkVHfBKu34m1t5fU4Uwu8oYH74ro4tX56ZhmzFujRPqgRsJtEhz3S9WJt04/V2XG0uSKgewDr63PDOYDufcKaTELVEHTvd+QSiC1i9vOLN99m0wpISQ+g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=qqbbxxy3xLCuegXMkZW9sQ30IfNcV66flQsHopV9nS0=;
 b=bS5Q0ddxcZ1l4938WjCSSntwd6zKGoBums0jZA6T6DDn02TIeuPQC27jzsbY9s0VzZaBZPxlks9A9vYj17vnJJctTP/8fgnE7Hir6xoYyvGj6DJ87dBEBa/13sqoJaRof9ZLtdzH/atZ5Mu7d6/ay6hxIQ7mJmkTLwcZ1/JYAm0+fap4qVEWRfcMIS24Pyk6cP23SZ7tBFXb0i6hV7/Vrj1VIFj7TGKAI6A5fRtEArG0ufExvsODIfRmk4CZuFnEcB+vT2b5KvHLemrbyvqry7tBVVZrpVVC1CW+jDZBU3+YKwwYHhFOb8aSp1OLBqBbFSR4ZKM281boG9RimPHI0w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=qqbbxxy3xLCuegXMkZW9sQ30IfNcV66flQsHopV9nS0=;
 b=Us52aT3Pdzpc+2et6sgZze050nc3PfSXDR/0rrm4F7lsSPVKJjUmU/ZPP7yRVzw11tVdPQxcyfKck3BxRd/PaKyoone7xh0EVvbGJTQajFhgvk9uI0JMOKW9kGp8bSdeoVfxXAb5ao0k9/7RFJC8LMuTuyYT3rMXBLo97/hONnBBng3oL0HDedA17vbODnfgLzH1QSQ/LAQGulgbDpsfsuIf9j3ZJnI+xktsDAymP7t9+0hOWVWzXUWKRpHXut6r6nvQO+v7BwG+j8IK5il/1sA0K264wcNgqoyKrTF0vuUCGFOVQk7vFPPxZooWQ7nDNSGFGqmNunVLH5lbnwVj8Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f4376f27-8ef1-80f0-dcc8-b0d1d471c515@suse.com>
Date: Wed, 27 Sep 2023 08:35:02 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2] SUPPORT: downgrade Physical CPU Hotplug to
 Experimental
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: andrew.cooper3@citrix.com, george.dunlap@citrix.com, julien@xen.org,
 wl@xen.org, roger.pau@citrix.com,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 xen-devel@lists.xenproject.org
References: <20230927002938.1770418-1-sstabellini@kernel.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230927002938.1770418-1-sstabellini@kernel.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0013.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:15::18) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PAXPR04MB8318:EE_
X-MS-Office365-Filtering-Correlation-Id: 42ebd314-9613-4059-fac1-08dbbf23e27f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XvQuzPwYhjqm312bK8eIS7Jaha6jlpeO+OMSIJ9HlbonhjCnSrzw+jHMiLhn3K12NJy6LmvoKu4f9M6ELMoxFnq4/6B4VOcdnuxGfYjcF6lg3OsqDLLHtbj8Hze+/Hx0tKUYHPexSvZ7HLmAXEikgZm90NeVkvfmibKAohxia0Nv75TGDZhDBo1OogbApglqKvbxPw9S5bqX21tO3DmsXwySoYG/K+OqZ+VQmiNZzJSr8/crE4aJ7ST3a1cwB0Jl/o4n6nh/Pb+Mu6AaRoc9snBlPg8Zdrx5X5RedjSCDGKCtmVGJ/FXNyvLF90osPF688AShhTiBS19DHnsD8nUq87NfxBMsx7HWI6U89LxAd6FqURY37CexW/dO2TzL4LxIJaAed1GwJ8vv34lrMZ70g90PTC8jndbrGe8of/n/ufOWQhJEArkLkgycIX5fQeVypI2FLTum/15Yw7snNDnBsE8JNky67FEb1xZ45ZY1UjepM+g6+Y+q87vyRB5DO1+TXmWPY+qEJ5i000YjZh98zclt4QyHL8HlBxZUtQ0AOoIsHogXYhUMWzHmTA3mkPkMUmEHWsSRQtAu15V5huJkzQzuwJc99IzodlpWbSAeB/M4neK29OVrz10waQLs4m9p1RVgbk3kKF0lGuJj7aIgA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(346002)(366004)(376002)(136003)(230922051799003)(186009)(451199024)(1800799009)(53546011)(478600001)(6512007)(6916009)(41300700001)(38100700002)(316002)(2616005)(26005)(5660300002)(83380400001)(6486002)(66556008)(66476007)(6506007)(31686004)(8676002)(66946007)(4326008)(8936002)(2906002)(4744005)(31696002)(36756003)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ckNZVTljZVRTY3FQeE52djZ1eGZHOEx2eUdzMDVEOHJnUmt3UDY1NG51U2Fp?=
 =?utf-8?B?SUNMODBOYTZUdUFCK1RCeGI3NVBneG1xWmtqdCs3WFVaM0lkcW4ySEJZbTlG?=
 =?utf-8?B?S2h0NDd4b3hFSFVyWmJsVmZobERQNlNLVTRlUUduSDJIbkZOYW5LYlltOFo1?=
 =?utf-8?B?YStLVUxvNGtERVJDYWtkSUVobkJpMVV2VGI5cVVyeXordGhGYnZYek9PTkto?=
 =?utf-8?B?a3pBeXlGMXl0QXZZbE1rSTdKWlBIMW9Melk5RGd3MVdaS2dnZExhV3d0M1BO?=
 =?utf-8?B?UEJBcFJrb0k4ZWFoYnZEWllDOENKQjMxSmx4MXFyU2FFRDFMcTJoZ2pyaWw5?=
 =?utf-8?B?NjEydktjSjRoQ2s3Z1BObXBHMGhGVytOQjR1bllvMHAyWWxHWDFPYjNJQ3hP?=
 =?utf-8?B?MHBJS1cvaGxYbjZOOXdubU9yc2hvQ29CQ2xGQzRtZzdGTGNKeHIvRUJ5cXov?=
 =?utf-8?B?TnNUalhqbGl5K2ZLWnUrY2M4Y2JDNnRidTNCSG1wR0xXK2N6WE5yL0V6bUkw?=
 =?utf-8?B?ZUZyUDY5aStuUmpqRW9uQlEvRm51czhZTzB2M2hSemhja0tDUVJ1WFJsTDJZ?=
 =?utf-8?B?ZDRqUHE2b0N5WjhWc1hqcGxPejFPQ2tHY3l2dWtkd2F4WlBTS2h5dmg4VENU?=
 =?utf-8?B?bmtjKzZXWjV6RkdOcmdyUlRQeU1yM2hLdUFRMFFNME5XYm5DRWdlR3VzRVVt?=
 =?utf-8?B?Yi82ZkxGdkJvTGxjb0xSWGRLTjVBdkoza1g1VEdrTW1RMGFiQlRJTEJ6QU1U?=
 =?utf-8?B?T25XZmFqdWc2Smg1OHhkNHRRV2hya09UWXV6bDFvWlIwVGtUYlpvWGRuZTZR?=
 =?utf-8?B?cHJaOXpsVGZpZzlXcVdSNC8vQklXcXVNVk9NMlZtUFJpVGhuRlE2TXdnVlFP?=
 =?utf-8?B?aGdZMVhWaVNnSStlbUJKLzV3ZTRKQXd6RzZaejdVSkZkUS95ZjM1YTdvVElB?=
 =?utf-8?B?Zmd5S3lVU2FDb0FaYkh3ZUtUK2E0M09kbnZMaEY0Z3p0UGxhSm44SDI0MFBJ?=
 =?utf-8?B?d3hseHdtT0tWcytWNUsyOGh6dS8vRWtXMUhFKysrVUU0dXZtc3p2d3dFTWhP?=
 =?utf-8?B?ZnU4aGoxVzBTNFA4cjA4a1ZvTTN2Q2NQd2NldlR2N0JRUnEzNjl0QWVhVUlF?=
 =?utf-8?B?WHFQR2dRcFl2dlc1WUVUSytkRDZDWkxQampIMGNLb0JRcTU2UEZxYU9uenV2?=
 =?utf-8?B?MzFwam13cFduazVuekRyb0ljdU9Ha01wbkdOMTk5Q2dzKy9VcHNDSEMrK0NF?=
 =?utf-8?B?SDZFZHBndXJQQlErZWovR0R2eFpLRFp2Q0pBWTdieE1sdHdnQlFOSlkwUEp3?=
 =?utf-8?B?dzNxWVdjK2REeTZOaGZIcHRCTkROUGJxN3JuU0FlVEVtc2JZOEJyN0pFK0k1?=
 =?utf-8?B?ZUNXaG9MdTc4a2VhRFJFYjNadEJNWWVoZERrckJTajFPYWhMKyt5Sk44Ykdu?=
 =?utf-8?B?aFFmTjE0aVRFU2JIVWRzZHFTLzFSYTM5UUpBdXhFUXg0ODQzaTdLeVE0eVJu?=
 =?utf-8?B?QmJ6and1RmFwNjNQZEQ1WERBU0t1TjRCL0ZYVld3djg5MmVrN2ROK2NVclRU?=
 =?utf-8?B?WXJnQlpwcERQWDNmVytOcUx2VEVOa2xXT1NybVdzNllHRDc5U2lyL05ZUUJQ?=
 =?utf-8?B?RDlvWHBPR2hVclZmKytyMlJueXZrUk81ZFRHQlA4QlR1SjFHcEVFdGxad0ND?=
 =?utf-8?B?MXYyeGJ3RVlzeHR0NVNZTjV6UVBUTzFMTEZ4bEtBNGx3aCtCd0J1Tzl1dEdY?=
 =?utf-8?B?MXE0NzVaRk43dGEyajBLRmlrQ1dUbUdKTTB1VC91Q2c1R2NKSWFvM1YySU9G?=
 =?utf-8?B?SmhUNUlQS3ZIS1pMUmxuYndtYklQL3BqMmwxVHNQbGRwNnNpa0c5eDhjajEr?=
 =?utf-8?B?UTI3clRMWGhZTExic1llQmxnRW0zT0JONXN3dnNBYXNQR3ljTDBlOTAvRFFU?=
 =?utf-8?B?TEE1MmZrL1FkaDhCaGV4ZTFPVFJ3cmNjRGMwNzF0TCtFb2NWZlJhcHo1Qkgv?=
 =?utf-8?B?WWlZK3B2cFozNXBzenJ6OGtBbFhWR1JZYU00V21ENVJaZ01qZDJNcVdhTXNQ?=
 =?utf-8?B?NWl4Uk1oa2dvcjdhWndjNHBRVDQzNGxHN0xqKzZOdkc4dlp5LzAyN3NSbE1l?=
 =?utf-8?Q?sz8XJxqKD90yPJGJ8JvkscBLY?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 42ebd314-9613-4059-fac1-08dbbf23e27f
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 06:35:04.8979
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: kYLNotNgfXRUfPJ4p9sgYQF9QHAA1K5MK8qpZQ6C0YX4RA/pakLbJ7F7ir3Fx0m9rUZ41OFp0fdfBPcN5809XA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8318

On 27.09.2023 02:29, Stefano Stabellini wrote:
> From: Stefano Stabellini <stefano.stabellini@amd.com>
> 
> The feature is not commonly used, and we don't have hardware to test it,
> not in OSSTest, not in Gitlab, and not even ad-hoc manually by community
> members. We could use QEMU to test it, but even that it is known not to
> work.
> 
> Also take the opportunity to rename the feature to "ACPI CPU Hotplug"
> for clarity.
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> ---
> Changes in v2:
> - rename the feature following Roger's suggestion
> ---
>  SUPPORT.md | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

As indicated before, imo this needs accompanying by a CHANGELOG.md entry
(and I don't think that should be a separate commit).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 06:49:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 06:49:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608684.947326 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlOMT-0004Ew-J4; Wed, 27 Sep 2023 06:49:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608684.947326; Wed, 27 Sep 2023 06:49:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlOMT-0004Ep-GP; Wed, 27 Sep 2023 06:49:29 +0000
Received: by outflank-mailman (input) for mailman id 608684;
 Wed, 27 Sep 2023 06:49:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlOMS-0004Eh-VS
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 06:49:28 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on061a.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::61a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 00067f2b-5d02-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 08:49:27 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by AS5PR04MB10058.eurprd04.prod.outlook.com (2603:10a6:20b:683::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 06:49:24 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 06:49:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 00067f2b-5d02-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ncj9VNDKkD2DKGCv9p2TAIOJ5Jims03UbiNeMq0OHi3KPP088vsRdE2oAJklCB9HN8RLHRx7gc3VKo4bwvWqoK0jNUHKn5fN3mXkH1gQiz05k3wzADdD43Q+DZhd5LYFUu5lpcyj5/Zhz7b4JrwbghqLEByRknQUd4hDebohOq6Dy8r8PyIJ8B0JT+Zzlx1hRPhc72x4fF1BzSBQFWTScDI5T5rcLVtayl1XFj57YBOQ302XNFWU12bUJCerWWXoFW7NbT+fB8DQ6ajjUi8PEX0iPYyxGWS3TEBo4bx9JFb2cAxhMn2ti6UlhNw/583wK8VQSJ6hFlIzybtKoR2BTw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=33J9bd4saBmDWBBk74RotF6uYAB8GSLBHMP6UltEAwA=;
 b=D506As/HEH4cGntQJnmho7iq66TLgFFuseOE1ShW88nL5ewKbU3pl4FuD8gB5ZNctTgaviAXxmF4BGhC/BOnnUo10Pohi3+YHzHnbDqh92UN8yiBE34ab9DudMKV7+1vJG+oAhAKnwDf/Llbekuu9clHzPR77yDzW0EPHg8CYmrPk+63z0hmt8dxhdKb07OX3HRRwSDBXjoPiN+ZdgBC+qpdO9/DJMPrVzopLi7np4JlAflzQ1RYx1ReGvcVxHAgZcHAAzIhOWSpz8Ov6gPvTC2N8cnxgrsKhGUn6aIgtVvrgg36gMmtq2r0qeUUw5AqRc2o2k0LCMge7OdKGVpn/Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=33J9bd4saBmDWBBk74RotF6uYAB8GSLBHMP6UltEAwA=;
 b=JRVVmxbjEte+2m/nhXwqCk4qyQzBDc0VsIk8da+cZvv6hq0mgvHc1gb495hRVm7odCEhMSz2qNqYpsd7wLVdYh6TVRuamanf94QIHlM0Jgd4IbCenkC9K/tnyz86tO6o5hyTbQK4kKvYzp97L2EYCC5vWbpTlIgRDwtgyluFxB4j8PyQGFZSUaGiCskChgYlr16w0oI/gtTpsp5mF+8daH859OYH+I+1QEoiZ2WvfU/QClhNz810v1bdMHzTvBRYnfTg8kwzRs75mO/JGOjhrHLCuPJ8anJIC/GbL+LRucudaWEfM+JTsyS9f5HURLru8TZRWGAUO+JlYfwcFWNzMw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <aeafe32d-f128-43e3-cf94-1f50b1b6754f@suse.com>
Date: Wed, 27 Sep 2023 08:49:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] docs/misra: add rule 11.9
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>, roberto.bagnara@bugseng.com
Cc: andrew.cooper3@citrix.com, george.dunlap@citrix.com, julien@xen.org,
 bertrand.marquis@arm.com, roger.pau@citrix.com,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 xen-devel@lists.xenproject.org
References: <20230927010538.1778201-1-sstabellini@kernel.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230927010538.1778201-1-sstabellini@kernel.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0149.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:95::20) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AS5PR04MB10058:EE_
X-MS-Office365-Filtering-Correlation-Id: c30d85fd-91f8-4b17-1bda-08dbbf25e2d9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Qtkv+Tg42R7tlPlEDdJ7B34MjISo/Xcqh79KfH6KzFMVkSxpTS5xsJd0cuhSDIUA2R9qBSNFe8U0/N8PucldHWFSBxtyNoq5IImdCWZnm1f0zQ82mKif/uNOGdCKEuuPiJL6gF0LV23QL65v+eCxBRhqWPgjmcxA/40Jzpv+RALJjP/IlpCbEuH1DMB2P+e+3Q6YvvuU/pTTSCFcQpvhC+sLcOBYI0hD54WHIdHT/uT4rf7U2QQfswFIHt/8/kNk81Omqt+02KbDsN2QFoToDwMJLWPUMzO1QQ9q6ArGRNiUfYxC519DizRk/fs3z2LTJzJSh2mF/Z5TD+k+oPWzqx/lxGN4I+tDpJQ8IIKp9HAxdRafWoRzzk2/fp8rmsaZpgFoEJEq/wOIWBke3Z9lb4Gw24oEATGEX6M9SmcrNbyoCW6B5112RNz2wVB2x2hAGgfcH91DWgJ4R5s0LbC19SgniZKpXKbrNlGtUbqSmdaND7XTkysl7+JA0O5CIRq9AVzYfK+RKEigUB6Vvxneo1CN8kB/xDFGNtUqTqqjSEtEhBOsahFHyIw3OD+NGMAq1/jc76a9ckIqyMZztXJ7B1CBp8n1Z/zJttwMo4Hj5P1VQhCcWB5qoBkz2TAxrWrGDpS2jxfzoQaj5MvGaNxoHA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(396003)(346002)(366004)(39860400002)(230922051799003)(186009)(1800799009)(451199024)(26005)(66556008)(6486002)(6506007)(31696002)(2616005)(66476007)(53546011)(66946007)(86362001)(6512007)(478600001)(38100700002)(2906002)(5660300002)(8936002)(8676002)(36756003)(4326008)(316002)(41300700001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ajNyY2lxeVE4Y2hnYm5vUXRJV0w1eVI2NG9YOUM0aTZVNmRXait2Nm5HdWpT?=
 =?utf-8?B?UFVadHlOeUJSeDZPZFRLWk4zdDROQ3lrOTF2R2g1Nk9NaWd2VUVQM3NIUmtP?=
 =?utf-8?B?b2NTRmtCMG9vZFpxTStrck9Ka0tKVnFZY2Z5cFg1UGRPVTl3VStJYmN4Vm1P?=
 =?utf-8?B?YWZITkNQdlJ1RTZ2QW5WRlBsR0NUU2lCM1ZFWTVPRzI0Wjl0RkErNlBRRmsy?=
 =?utf-8?B?aG83M3hEREcrTWh0dGZpczQ2MjM3cHZIYjdhMGdRZURTY2djYWJtV01FWGt3?=
 =?utf-8?B?cnFmTng5K0tQZ2s4OW9oT3BSRXR2V1R1dm4yNXkzM3ZXcmpSa3d3M1lCSUJ1?=
 =?utf-8?B?azBIMUNkRG9Cd0E3WGVKY2doOFp1ZUNJeTlXNC9IaXRJWjE0aHRlaUo1VzN4?=
 =?utf-8?B?ZzcvQkdHd25Yek5zZTlXQXNIajd3NHI1ZlE4MjhRcTYzQXNTN2srMnd5WVdL?=
 =?utf-8?B?MjlQV0s4RUtzMkVHWnBaaUE2ajlyaXFJNXZ0RXBQSm9KcDlmSFI2RzNtQ0JI?=
 =?utf-8?B?eTlva0Uwd3VUa3JoSXJ1SmJqNDFkUmNDNytTa1FweVdOazJENjZhRWtNZlN0?=
 =?utf-8?B?M1hSbWowSXhPZ2tzbVJaZ1VCRWttbGVtRm93eXh6Yk1xVlR3WnByanNSOHIx?=
 =?utf-8?B?bU90ZGdodmRmWkw4ZnF1NVc2Z3BSMDFKbDNYdWxwOERGT3BicjJrTEVOSWth?=
 =?utf-8?B?d2MzaUJ4ZWVMNGdwQzVkcXgvNkhIL08wWmRtOUFHYjZ3am5iRisra0hNZFA2?=
 =?utf-8?B?SnUwajJZMmM4bTBQNEcrajBZTFFmWGlUckpxbmJ6RWZMbXR5VjlBdnB0eUM3?=
 =?utf-8?B?L0FrcHdqSVFPSDlhV2NvYmZob3V4cExrUDl4YUpQK3VxM3NXV2V5MnR5bmRG?=
 =?utf-8?B?TGc0QS93V3AzTjg3WU5PUXdNRnY0ZDdNL1NNRWU4ZGt3a3ozNWcyRmJXNzRR?=
 =?utf-8?B?UGdjeHh2NmZDeUZNYS9JaEpBRmhqdE5QMUpPMTZ5Q3lMaXZRN3JLRXNhSTds?=
 =?utf-8?B?Sm8xUlNoWkdSVEFlUVNvUGgzWEVBM3JGL211NDFUa1J1a1lLM3I4RVc2dVpI?=
 =?utf-8?B?dlpYUkw3Y1VIUGY4YVcxcFJmcHNmSjFXSERsOEhYbHNpWlQzVmhMWmMvTFFJ?=
 =?utf-8?B?UGI5d3dnWXY4Y2U5MFc4ZmtqNG9wYUNOOE5yZ2VMWXM0SmIrOHlsdkpPTGph?=
 =?utf-8?B?MldsaVU2SkVhZERzT1c4MXdlM3JlVU5mZkNnekdHd25VcStFWWpIblBjZXV4?=
 =?utf-8?B?ZE02VlpqU2tBRC9FTEVWU2xzRnpHM2hQYWFFMGNWcmJodnZHQ0NwNXFQa2tu?=
 =?utf-8?B?em9BWVBKZHNwZEEzaFk3d05mejg1alF4OXJTZHlPVFhVdnoxa2djSTIrSFJa?=
 =?utf-8?B?M0xMQWs4NmZTdGtpM3FvdCtSWjhlcC8zZUo3enh2S25CVnVKVlpsTEd4djAr?=
 =?utf-8?B?M3BQT1RsOEV5bVhOclduNnNFUXQ1V3VIR2w1c1FVK2NnTzRxUFQ1enFtalR4?=
 =?utf-8?B?MVdINlF1eUxSVzEzYXEvTlN1eDFJOXZlTlhTcDI3bGh3MmorNjBxWXI5M0NV?=
 =?utf-8?B?U3Fla1IyY0FQYWhJTXdiOWNVNEdPc2VEZVJSajBqUFpUSGRwQ2dNWHhPN3pi?=
 =?utf-8?B?bmNUVjBGUDJXazlQaW5td3hFdmdZczk0aWJOQUlzQ0FRT0tvbHZJQVZPcG1Q?=
 =?utf-8?B?b0dqeE14SnkrUTRUeERrSTdPMGhYUEVmV3JveFBuRWxKckFWS2FHbUE0djVS?=
 =?utf-8?B?SWorSjlTSEF0VUdYNVVnK0RUYWVkdlZId1lJZ1liS0diMXJESk00eDBuNzda?=
 =?utf-8?B?QUp5QldOVkRTYjJCM3BTL0VtbFp2d2I5UFhEK1FhZW5HdEs0cXBtSE1ON3Vz?=
 =?utf-8?B?WUhyNWYzbE1QdjVTQ1ZPT3FHME9mQU5PT2kzaEJCb2VRalR2MTE3dGQxeDBk?=
 =?utf-8?B?cmhlQUw3cFVqUndTa3hUbjB5YzJWZVlTMC9FWldxZ1E2a0V3bWtpak1mU2pP?=
 =?utf-8?B?Z2VqTG9BRjFESHhkY1hkNzZjQTRNNnlOMWhyYkhFb2wxaG5ZZWxpSkoyOFcv?=
 =?utf-8?B?WEhsQ1o0UXl6bnQ2cjBFMCs3eDNJWkE5TlVld09Celkxc2RKUXk5aWgwb3Ft?=
 =?utf-8?Q?HGDolKHFQOBsCXKBGWeiw/e3W?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c30d85fd-91f8-4b17-1bda-08dbbf25e2d9
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 06:49:24.8369
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: qzftpdKksrvHcdF/42QCupnIZD2PS81DJU90Ux2cp/YvPFGRTvfVK8+ty/oZqYgXoUyjw8wrYHVk9NGbmUbV5g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB10058

On 27.09.2023 03:05, Stefano Stabellini wrote:
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -373,6 +373,11 @@ maintainers if you want to suggest a change.
>       - A cast shall not remove any const or volatile qualification from the type pointed to by a pointer
>       -
>  
> +   * - `Rule 11.9 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_11_09.c>`_
> +     - Required
> +     - The macro NULL shall be the only permitted form of integer null pointer constant
> +     -

I think there's a terminology issue, which I'd prefer if we didn't inherit
from the Misra spec: NULL is not an integer constant expression. A null
pointer constant can be either plain 0 or ((void*)0); the former is an
integer constant expression, while the latter is not. Aiui it is the
"Amplification" text in the doc which correlates with the use of "integer"
in the title; since (as per above) I think the text is wrong in this
regard, the use of the word here also is at best misleading. The C99 spec
also doesn't know the term "integer null pointer constant"; only "null
pointer constant" is specified and used.

With the word dropped despite then not being in sync with the doc:
Acked-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 07:04:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 07:04:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608689.947336 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlOad-0007bP-SO; Wed, 27 Sep 2023 07:04:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608689.947336; Wed, 27 Sep 2023 07:04:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlOad-0007bI-Oz; Wed, 27 Sep 2023 07:04:07 +0000
Received: by outflank-mailman (input) for mailman id 608689;
 Wed, 27 Sep 2023 07:04:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlOad-0007at-4l
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 07:04:07 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on2081.outbound.protection.outlook.com [40.107.13.81])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0b67e4b4-5d04-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 09:04:05 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by PAXPR04MB8606.eurprd04.prod.outlook.com (2603:10a6:102:219::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 07:03:35 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 07:03:35 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0b67e4b4-5d04-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MZ0sZVI74q2DBIXXPbdxoQIdrVWgunGmq9OssZydSKY1TQjaH4alTsJGKwKic4dZXy0PQ8aaI2rVhyyKlU28QMxX34y027ac4JiuPM0DwGkVn0fercSl8vvtAZgZNjU9ckWLDo2p09Uhs8tbZ9fVud/uopar3uO8J5UkWGbdkjZAVc71oqijBXZgW8AJMRSVMDMK9cyrMMqjmA/On0ybUPfYrCoh8zxykDLnj1qIyqTDeiVCHKaHIFx8ceDGOpHkw2KciqOLvTH9GYdSznTb9BUL1S2t9wvM7QpC1waMOL94dOIg9jyWt4xZrqUrFL+GAPUP3ZaRBaUIvKtc8x84WQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jTQc2OKIPjsQ2o3qDMfhRALZbpLsKGyi1YWIc+IEfaM=;
 b=aPSX164Jaxek4icatZOi91eia4ia1GvHAyl2IvF743sdvUqAIFr/y4aO3sZabMTaDzw7rDBsdVYLqDH+FnZkmBMpE+h+R+H0oC0AsxEdAPjQKeZ5gwzA9H6YaOPUuFkR/NaNuRg+fKqsGNPTHLfSKflYHHoGxxMMP2avdVS9oXiyipBaRF3qCpTRbFV35ciYTMgsBSFJN6Yjaf1oexEuKt8sXXwR920jwTkMEYYbbu72dGY3go+L21S/M3IJa39VLlSwt0fMrhRMrUCYLoeACNS3+F3eWLIQiQSnPE7vK7QfdyHeAHj3Y7BdryfBQ+vvMCIUU2VKAoaVzavBsqLGyA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jTQc2OKIPjsQ2o3qDMfhRALZbpLsKGyi1YWIc+IEfaM=;
 b=Z4viZMfl8Yv0UlcQxWcdSAeqjpGArhm0EVAEjf4793GbfhiO2r9CPXyGBLjCSDOVUka8CPCtdnGqUY8Jnz6Hc6bH2KcxwCX3vG23p7qKD96bg8r9YqDJgR/GBzXvdPAd0tAo0YJ31sg54MhBVdpUw9BN/2gv0e1si1UlktRnS/NNR8fdSKdx9ZSFQZoMyYk+7T5EbtSvasZugHthyfuBnYS8YbijvmNAGbJsF7ALPcAGhU+bmTn8DdVbuwq209V2W0Ne1KnJEaYUeqVDlNuxce0O47/V+kg0otSuviBQruVBd+JS6CmTG9iyRrWVtOC3qg3JVvdi2sXtRDhXKPDndA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <93386802-a4ab-b5c4-6d0c-fffcb890e056@suse.com>
Date: Wed, 27 Sep 2023 09:03:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 2/2] xen/common: Add NUMA node id bounds check to
 page_alloc.c/node_to_scrub
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: Shawn Anastasio <sanastasio@raptorengineering.com>
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <cover.1695767747.git.sanastasio@raptorengineering.com>
 <d16b2f8749b65e303f531776d303586336ef1729.1695767747.git.sanastasio@raptorengineering.com>
 <43be87e9-d947-c6c2-a70d-c6ba947cacbf@suse.com>
In-Reply-To: <43be87e9-d947-c6c2-a70d-c6ba947cacbf@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0127.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b9::11) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PAXPR04MB8606:EE_
X-MS-Office365-Filtering-Correlation-Id: 510917e4-432e-476a-9329-08dbbf27ddf6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	yyD4DYfEID8MJmejwgoMXmX3AlZfaDO3ZoLgXDsuiFsndvHSKutVTs2Tc7AkBYPe+QZYKP1klu3XPEqJ2+gAWvif2yZWLTawekOzNXSLf6KchWDCeTOcqCgsm0IqTExdvxqkrLJrWJ7Lmg+AWseyeubzUBlO9CAJVKNwwijkYsLAGvdykF+92oKVUgHSbpziL6R4dRw4vP9xi5+NT2bNHkLedesoTyrhLFiVaCE5t12mlSF0DNatEkHFWPPe82e/mdvWkk17MjKPfXgkSJtXFyzviDolxfkpY6Ra8H+/3uJa73+5VWUek13DYzC9fUnmbDi36ak0nK97ssAyuyzxKgaZzMZr1vGtuCNLsIycruHc5kirllkuK+1Qgd3D/PVvJClfimnGKoZ/WGkkKZ1XUutWAAjvjyLeisiapEXInEl+pVwzoKYwpEzuWe/1LvEPTxosCseiPw63Dn7TJRWM9M7sskgV5U5nsf5MJU5KyZWrQiwoBZzoo/9EOOlqVL/uH9dv/DLJp+hNd6UFNJPG/ydRhs9yGtoRM4uwnqeWXtEvcvnryY8UMIT8oeIK5CoKdy9ZcyJlS38gh5IqYVNYMQmuJfE8h4BkoFhvFsKRr48EPqwkOkoE/iCvzpFjX0vUjGBHC7EoGZ+zxSE8uqk1mA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(376002)(396003)(346002)(39860400002)(366004)(230922051799003)(186009)(1800799009)(451199024)(6512007)(6486002)(53546011)(6506007)(83380400001)(38100700002)(86362001)(31696002)(36756003)(2616005)(26005)(2906002)(316002)(41300700001)(66946007)(66476007)(54906003)(31686004)(6916009)(478600001)(4326008)(8936002)(8676002)(5660300002)(66556008)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bDFqL2dDVitDUlphQU95ajhpaG1tM0lNeEkrbFA4ZjJORUdSaXFYQmZUdkRx?=
 =?utf-8?B?L0dBYXdRVHM4WXdzVkJsRjRZeEVGVVY4NDFzc1lDeUovaFpaVGpFTDNWcDhC?=
 =?utf-8?B?UHhkYXJ4bDQxUmpnMldzZ3NxaktJOFB0RHFTcWRPOS9rWkVVOWQ2ZlJpUmJk?=
 =?utf-8?B?cjE3UStJY0ZuODAvUEw1R1J6QWRhY09IeFc5TTZaYTJnZzRXV2hKZ3VMdkNU?=
 =?utf-8?B?VGpOanYrMnpIczAwU0p0WWF4bFY5WDRaVzBGMU92dmR1a0FrNGhpckxDZ1pQ?=
 =?utf-8?B?TkRBekxKVXlFK21EMDlvWUpoQytGRkQ4UzIySUI2WkYxanNjeWZiM0s1MkpG?=
 =?utf-8?B?RVdDV3JrSVRkS0VOem5nUWFzSS9uQWZLNHFpMm0wTmtPbmRTT0w4RWp6MllZ?=
 =?utf-8?B?YzN3TkEwMDcxSEYwTmNXV2szZnFkbmxWLzZ3amNiaUhsd1RwbzR6NURKQVF3?=
 =?utf-8?B?bldOSzJ1bWNrd0J2THlDT2p6ajhtRmx3d2l5SjZiZ1ZEa2pWRTFuN3lVNjlQ?=
 =?utf-8?B?UEdKc3IxNGdCb1FObUlOWTRGVWEzNVdscnptWmI5aDJKTG11bVg1Tys4NFlO?=
 =?utf-8?B?OGFGbmdRRDJLblZEMW9XaEZ5eVBKSk9zNlg5TUw5U2dHM0ZHa09pbFZwY05I?=
 =?utf-8?B?RUVwRnlJdlhJeUdoY0VBK0xXakFqQjR6Sjh0bFdnV1JMVG5oVXlzUnAzVlU3?=
 =?utf-8?B?eGo5Rk5vUDU1SkxUR1ZjRHNuRXFzYW9BOGZKY3hkZWdJeXpjeHNwWlUrZG5n?=
 =?utf-8?B?NlRxdXdiWStVN3d6aUZ1NllQUmVqNUxGd2JhUG1xcWxrUFc0eWdzNjk1QUd2?=
 =?utf-8?B?NHVET05VN3FsU3grTlZid2diR1BFa2cyWkJTV2tCcHZsdHRPdkp3bFlQL21Y?=
 =?utf-8?B?ZEtGcW8yWnd0T05qUDFvaW9WdDhFeTkwaEtJUDVFQ3B5SHNsWTFYNjc0OHAv?=
 =?utf-8?B?eUxmTEdxNVVUV1JRUzVWdEJWSVFnRXFCZWptazNHU21OTnh1c1BJZW5Sb1Z6?=
 =?utf-8?B?cDhFdXZJcHBoMUIrQUI2U2xiUnpsVXdjYWNUUWlNMWJXK2QwRVFsQ2pGVE5C?=
 =?utf-8?B?TzdwZGRob0RpdFYwWnh5emRDOTBQTHFGTy9BcS96RHB1dEFoQkllM3R6cDBx?=
 =?utf-8?B?QlFQUlJXRTR5Q2hWVXBGM2JuK0oyNUdPMHhqeXVTODFOdVd2aVNIQXM4MjU4?=
 =?utf-8?B?VFR3bVQwZHRHdkgzSktsbjRRSEFBSmlRWlIwT2FrSHR6dVI1SWdkbzdvZDB4?=
 =?utf-8?B?YmRqaytKaGJnR2tsT1VsTEJIODNiSittVzJvaGhSKzhFYnRTUEdldWJMV3RE?=
 =?utf-8?B?SVBxUUZSYWVoK2lhYjZ6SWMxZ2xWK1RGVWVmRUZGRlJFeTFpL1g5KzMvdnhu?=
 =?utf-8?B?eUN3T2xjSzZZeDNRblFnVXIwMjRmRTY0Y1FLNzhHdlhObmhyQWhjYlBwRWlB?=
 =?utf-8?B?aWZKcGZSYkZCWlFqQlA0MmRtbVhKSHR5dTJGckNJTlBtSGg1ZCtvaEJXeDdS?=
 =?utf-8?B?ZmhjRGM4amhTSTEzdDJ1N1RGMGsxMVJtOEJpaXFLek9kZzJXMk52K1BoRVUx?=
 =?utf-8?B?MkdycFBWbjZTK1Yyem1CNG8wWHFzeXM3ajg2L3lSeWEwMmlhdjRDVGwzVUhD?=
 =?utf-8?B?WmNtb3BuVXJLQy95ejZWcHUxTTVIdzVaTzFDQ0w2bW83dWlhSkVkbHFsSjhP?=
 =?utf-8?B?TlhZeDhNK2hOY3VLVVpjeXhkZlB3RmY5bFhzSkI1bW96UW51cW1Sc25ScUdD?=
 =?utf-8?B?dGt6a1N6WGV4OHNlTmVnNkFCMS93bHFNdVdaOUpoTFkzU2ViZXFzT00zMnBX?=
 =?utf-8?B?OURPOElDbUFzR2UyazNpZ05oZmlZUlZRRlpCNmQ2VWRkQ1RXTXk4WHRwRDls?=
 =?utf-8?B?VzAyTzBMOHhSL2g2QnU1a0dXVDlGM1lLTmUvN3hDaTdaaWF5V3JjRktQNjFO?=
 =?utf-8?B?OHF6TXFPZkVucjQ4RjNtUkx0K013eWZESDVJblVsbzJ5V1lyUm1DeUwxTDM5?=
 =?utf-8?B?WVAzMUQxOXRETlNNS2l5K01aT09oa1JBUHUvOTlzZFlZVlE2VFFCZ0lQbTFS?=
 =?utf-8?B?bU02ZG5TMWlSOHp2bEJUN09JZEVtSVJ3MGlGYTh3UzhPVWpsck5XelhHbXAr?=
 =?utf-8?Q?UO0uwf59MxClQdv9vNnpFm7j+?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 510917e4-432e-476a-9329-08dbbf27ddf6
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 07:03:35.4048
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ZIIAY4JVN04IXU6vBTmj+LPPTRY8T4AY0ZBAUogr37XskAkq7JM8MB1wX1EjktbwKv0GHu/wIGtoQfHRmJEYYw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8606

On 27.09.2023 08:32, Jan Beulich wrote:
> On 27.09.2023 00:37, Shawn Anastasio wrote:
>> --- a/xen/common/page_alloc.c
>> +++ b/xen/common/page_alloc.c
>> @@ -1211,6 +1211,14 @@ static unsigned int node_to_scrub(bool get_node)
>>          } while ( !cpumask_empty(&node_to_cpumask(node)) &&
>>                    (node != local_node) );
>>
>> +        /*
>> +         * In practice `node` will always be within MAX_NUMNODES, but GCC can't
>> +         * always see that, so an explicit check is necessary to avoid tripping
>> +         * its out-of-bounds array access warning (-Warray-bounds).
>> +         */
>> +        if ( node >= MAX_NUMNODES )
>> +            break;
>> +
>>          if ( node == local_node )
>>              break;
> 
> My comment on v1 wasn't addressed, either verbally or by a code change.

I have to apologize, you did respond, and I didn't spot the response earlier
on. I'm not happy about the added code, but at least it has a comment now.
Hence I guess I simply withdraw my objection, so the change can go in.

Jan

> Imo
> that would move us a tiny step closer to what Andrew was asking for as well.
> 
> Jan
> 



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 07:07:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 07:07:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608694.947346 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlOdg-0000Dd-Ex; Wed, 27 Sep 2023 07:07:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608694.947346; Wed, 27 Sep 2023 07:07:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlOdg-0000DW-BU; Wed, 27 Sep 2023 07:07:16 +0000
Received: by outflank-mailman (input) for mailman id 608694;
 Wed, 27 Sep 2023 07:07:14 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlOde-0000DN-RI
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 07:07:14 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20630.outbound.protection.outlook.com
 [2a01:111:f400:7d00::630])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7b1cc436-5d04-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 09:07:12 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by DUZPR04MB9846.eurprd04.prod.outlook.com (2603:10a6:10:4db::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 07:07:10 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 07:07:10 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7b1cc436-5d04-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ED1Je8QaMl8RxRyLYuhcEaqLx3E9JCDSAlO7k6kMB2s7tiQwUR0VCfD/F/qU7/KmjPpKwHEEVDFn66gTVWmEVX6a4VJtEHUweMRR1Qno/y2e0Z/BItYEO1Cr99xquj9gFat2rl0n4ScP9pzPgLvV6iILvBO4MMUl0jWzxUZVCB74og/6DpU2tgOGTXZN+U+ghyKWVKeCrafkII+m/Z2YznWO2xZTYEY3MMtszr2sRMK/a0I/9tkbMiROIjXjBUJcxz9lDJUEnJ091/AbT8SPbszrE7pkFsVZm/E+ujqlQL4yZZBLibCKPe9m5S/ZrOZMHAUzXY31Ki03Gk/cU6BxGA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xJB4N1QRJ3okXLOguvXpjhmLrxJMHq5eAZu6GQCFeZk=;
 b=Ib2jbWJfwK7+Szb87eecDdm9K/hFyLRxSewOK4LYZ7bk1wjx9we+dwS1a973O3zrtthvvAnjOBvU3jyBgVXR8gD+W/fl42rFj2gb38SCT6SN30Kg8FF9gQrFOa5e4nVGn7bUVD6G6MkR/Lo/l5dztNqucHaEo453FkqNgQH6z5T1FT38Q7gxQhWhCXqvBmEGI2TMvmAdiaCEyYbODBFcYotiV65pvCVfHQBhgHNMDEt6IjWa2OdAuBlxi8uDMaycb+8nXbOCnbXNE2tnZWZPeKt1iGTD5pbi88yqdn820qnogS2A2lKFoYXWr8rJoAu4dx3FqD+qGjSRlodbRVbsFQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xJB4N1QRJ3okXLOguvXpjhmLrxJMHq5eAZu6GQCFeZk=;
 b=aRYNENQU8fBPjs5NtzwVUfduYFZ7mHgM/+uhZ1SRWD4nCyOvXW9A4sdWV2rCsD3wr2904hlJiIqeQCvBbU7pIIC47/6KtDs9GUk9LMUW5VLMo5ciE7DB/oiIiy+vQrsZlG3GVgajbhRvZWhjdTboV12YwCIOUNR299YNPd8/ecnUJz9Anq3TsQR5lr1dAbCklmvyDWuC4rMsJW5OEDaD4NQZZzspePWFBhONw8Uxbp3LV3r5jVdqH37b0yrT+3Ar7t6LDJmJ+xOtET6dX/t4CtXAtK7IL71kmBCETxPYFjR+Am7wX7e+hReAnBKi7FqMkb4iP0UeaeymIt6Za/4BmA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0a7cc9ad-6233-0181-dee0-d4eddd2fbe75@suse.com>
Date: Wed, 27 Sep 2023 09:07:08 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3] docs/misra: add 14.3
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: andrew.cooper3@citrix.com, roger.pau@citrix.com, julien@xen.org,
 george.dunlap@citrix.com, bertrand.marquis@arm.com,
 roberto.bagnara@bugseng.com, nicola.vetrini@bugseng.com,
 Stefano Stabellini <stefano.stabellini@amd.com>,
 xen-devel@lists.xenproject.org
References: <20230908202723.1641469-1-sstabellini@kernel.org>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230908202723.1641469-1-sstabellini@kernel.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0019.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1c::6) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|DUZPR04MB9846:EE_
X-MS-Office365-Filtering-Correlation-Id: fd68dd44-f316-4eec-52af-08dbbf285df5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	H+5h+OS0WtuJAkdIzAL6f52t+E5SwDgQXRusRzTqDKLClDv0Yo3Xzd0tIoltVJUPNEUF2q0JRGN5SQ1DkDszg/Yl6BUxonQhOwdh2ISlyvvkV+TmyKDzWUCM0hR0CkfltzUVhsvTX5tX8KrlI2pd0y0BEgVj3JJqaMkQ/UVps5PMwrEE68yV26KNGMN6Bs848fnluAKuVf8egHIn0OOF8xdMuQ+E0QCMnDA7/8sUfCNEYr2UuWgOzupk0FIrUjwHghod9lzhPFlwJMsnVY4oORK+9zSI3Xd2YuWg6Y6Z+BrrUTAd6tbTpkDiA7eEZKYcQMfTwRZANQ4qCOlw3g+rZ9lnAYl4xkWIx0c6Wbj4hXV5rBvppKHxBQ2fLPGwfY0waisCD1MRu/blWS3OjspNA/CE7nanIpaGDtXJ9MH/o9eboXtVnsUIywHDhzZu3KLRQTm4EWCqUYNVV9M8RBcyAJG4OUypNBMr6ApRrPA3CqYwVnztB8iNxeLPmpXAVbg2/4EfLm9TwU/k/EHwRU/hgSin8MFiUcwbokeLFNwhHrQiV8t3ddTOAgI0D8LlBQvBIpJ6Dfrmt7qWeMyRgzZJU/VW14ErNHcFjw1z45mCspCkIH0vf4TCuuZHFGKEP0HDGYLptaV1duWBKrsq45LZEQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(39860400002)(396003)(366004)(136003)(230922051799003)(451199024)(1800799009)(186009)(478600001)(2616005)(36756003)(26005)(6486002)(83380400001)(86362001)(31696002)(38100700002)(5660300002)(53546011)(6506007)(6512007)(66476007)(66946007)(316002)(2906002)(6916009)(7416002)(31686004)(66556008)(41300700001)(4326008)(8676002)(8936002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?LzlEamwzTFJrMmQzS0JJeTBBM2hldUdwZjRvUUtPNXNRa3IzK0tZRnlyMk5W?=
 =?utf-8?B?Q0hGMngycUdpeGlFSVRwNnhVdGdvcUdEZWJzWTNkSUJMVUVUNmRTSDUxY2Fa?=
 =?utf-8?B?N3ZrUUc3L0ZoOWtDblhHVW8vNXV0MjhVcC9JSDlHVnh4TG1DUkowZ0tSbGND?=
 =?utf-8?B?Q0VaV3JTbE91TXVuaEZocThyWVo4MVQ3Z0Z0K0NYRVFBV3NUaXlzTUVJeU5P?=
 =?utf-8?B?enpiSzVlWEJFc3Uwa1JremtuMklYUVB1MXpqTUZGRjI3TC84Z0VUcGNkdndW?=
 =?utf-8?B?M2hSNzVFMEI0K3ZVQ3ZjRlhnMlJ2R2k2MStaK0FCMFBWY1hVWlZCbURQbUlY?=
 =?utf-8?B?OHprdDRnOXloYUt6V1Q1TFd6UlAzcy92MlFvL0tNL3g1ejBleG9OZkdGY2dF?=
 =?utf-8?B?elpDZG1EUHNmR3BpQ1o0OGp6MW42eVBhTUhOTGN1cjdzQ2lWeWk4b0R1Q2Nm?=
 =?utf-8?B?NVBnbzFqRlBFRmt2UmFXM2lBRElTL0RxZ2lTVUlLSmVwYVBiL1Jlallnbmpy?=
 =?utf-8?B?R0VBNWtiUitKOUE0anVxRnhJZ0VaR1IwWE4xQ2Jzc2M4bUZPUWpJbGxoUWZ4?=
 =?utf-8?B?Rldkb2FTNUo5SXJXWGFyNm5NL2h1NUZaZ3ZzSVZNdGxKMm8wZGtDc3pwem83?=
 =?utf-8?B?dHhjMWwyRTRkTW5JcGhFNUtKSXh3R3NlTnppalFvMXM1dVdkeWlzU2krWito?=
 =?utf-8?B?QVRMWm1CS1dydFdaek5IOVZLNGlDOGNBaktmZjVVVmY2bUxXSk5QeEQ5UEVO?=
 =?utf-8?B?SjBKcG5nSDBUbEwxV2ZsN1FjR0xsbzBuLzJJQWo3VGg1VWpIcXVrSnhVSFcz?=
 =?utf-8?B?anlZVEFHTGdUOVd5WGNOMW5velRuYkoxNEpmR3hzVjVtdlhwYk0wcFBvNmJv?=
 =?utf-8?B?R0tDdkI5SEtSZEZiTll0SmQvdlJ2a3pLaUhYV0Y0cEpXWURFRXF5N3RXQ0pS?=
 =?utf-8?B?V2VOVGhGWGRONGw3dHdzbmtYWGNCYTArdWMzci83Umh2T3FhVGUxTVhPdjU0?=
 =?utf-8?B?VmtWcDFudlNEZFFFWTZUYjFtMlNMV0Zqa1ppeTMweTVSTFJpNlRIdlZyS2VM?=
 =?utf-8?B?NUhOOXM4ZXlMd3pUOU96M3FROVdCS0dxQjVyNDQ5cUNKVUtGKzZVbFlPU3F2?=
 =?utf-8?B?STBLZzlieVpzb0NhZUxjU0RvMENaT3VnKytMdkl0eEwyN04xUlIzMUd6MWJP?=
 =?utf-8?B?RitDeityL1A2dXYzY2IycTJ6Y1Yxa0VBS1BLOGJobjAvZm1BRGpCTE5IQjVr?=
 =?utf-8?B?elRxVUdRbHI1Y0w2YU1tc1d0c3kycVdMa2Juell6TDVUVElKM0x0eEJhYzIx?=
 =?utf-8?B?QUhmRmVubEpQN0d1ZWJJenZOV1ZDaVdHMXlGd2J1anFmKy9QaVl0TlJJaUtk?=
 =?utf-8?B?Z3ZHQy80aERjbVdNNTFmaSs2UldQRFB0RmFmTS9OdFlmeW96MytMSE1qMDFS?=
 =?utf-8?B?bHNFbHJ1b0Vxd2RuSnh4M0FKUzVWTFNRY09MTi96NFFSZ0hZN3FpL0g3Zitu?=
 =?utf-8?B?VHE1TUxGQUY1OElyRzFLNndsU1BzT2k2T2xsV1VPWE5GVTVrNWtvK3Jmd0NW?=
 =?utf-8?B?a1lVMkdGcHkwbFRIMlZrdFVqbkpUQXlTQ3ZFUGxiVEhvbm1BeHVKRXZHUTdI?=
 =?utf-8?B?SmZLdzkzQlZsMXJlNVlWa2J0c1p3T05RK0pxWUNTWERYSTVWOGdaQlE5bHJu?=
 =?utf-8?B?VXZCL0tYNnVPOERvd3g3REtib0x1L3RkMmZFSWFwUXlVd3hHVnVvN3JxMllS?=
 =?utf-8?B?ckgrNVh6bGhhN2pwT1B4WE5SU2t6bVlwdXpWYzJBYk4xU1IxWHFyeHdYbU1V?=
 =?utf-8?B?cmovQ0R5K2x0dkEySFNtVVNWOERJbGMweUprRngwNG1oQVlrMmhyQVE2NGF3?=
 =?utf-8?B?T09mZG1Bazh6MVp5U05rcFBmYXhnbERRZkhZMEhCUUE3TTgrWGJpVTBJM2lL?=
 =?utf-8?B?VC9lMmZ5YmhiQWpMdDFSYjZMWDB3WDMyNGhmZzlyTlVoL2w1SlRxTHFoSEd2?=
 =?utf-8?B?b2VtNTMxaFYyaGdiMVIwSDc4OE42ek1iSG5tSXViQmx4b00rQ0RpOVlleXgr?=
 =?utf-8?B?cFNrTnpJNzRVRkRZNG1CNzZQcUhkajF0eVFTeVBrR1BrNFBhRmJvbVZwYWx0?=
 =?utf-8?Q?S4FjShPXTQ85eHFXszYiMEQVO?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fd68dd44-f316-4eec-52af-08dbbf285df5
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 07:07:10.3658
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 2ZPRGPCmiHO5S4FvIk/yPKx7lKnCNevQUR7Z3cZ+IM0NcDZA/G7GdaBFulZU6tJwETQihSvDU7ASgteo0LjP5A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DUZPR04MB9846

On 08.09.2023 22:27, Stefano Stabellini wrote:
> From: Stefano Stabellini <stefano.stabellini@amd.com>
> 
> Add 14.3, with project-wide deviations.
> 
> Also take the opportunity to clarify that parameters of function pointer
> types are expected to have names (Rule 8.2).
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

I'm not overly happy with ...

> @@ -385,6 +386,18 @@ maintainers if you want to suggest a change.
>       - A loop counter shall not have essentially floating type
>       -
>  
> +   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_03.c>`_
> +     - Required
> +     - Controlling expressions shall not be invariant
> +     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
> +       checks, and other constructs that are detected as errors by MISRA
> +       C scanners, managing the configuration of a MISRA C scanner for
> +       this rule would be unmanageable. Thus, this rule is adopted with
> +       a project-wide deviation on if, ?:, switch(sizeof(...)), and
> +       switch(offsetof(...)) statements.
> +
> +       while(0) and while(1) and alike are allowed.

... the final result, but seeing that you didn't get any ack in almost
3 weeks:
Acked-by: Jan Beulich <jbeulich@suse.com>

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 07:54:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 07:54:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608699.947355 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPMf-000149-Rn; Wed, 27 Sep 2023 07:53:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608699.947355; Wed, 27 Sep 2023 07:53:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPMf-000142-PJ; Wed, 27 Sep 2023 07:53:45 +0000
Received: by outflank-mailman (input) for mailman id 608699;
 Wed, 27 Sep 2023 07:53:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=U53p=FL=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qlPMe-00013w-Hk
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 07:53:44 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f9edcc1b-5d0a-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 09:53:42 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 6DBF24EE0737;
 Wed, 27 Sep 2023 09:53:41 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f9edcc1b-5d0a-11ee-878a-cb3800f73035
MIME-Version: 1.0
Date: Wed, 27 Sep 2023 09:53:41 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, jbeulich@suse.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, george.dunlap@citrix.com,
 bertrand.marquis@arm.com, roberto.bagnara@bugseng.com, julien@xen.org,
 Stefano Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] docs/misra: add rule 2.1 exceptions
In-Reply-To: <alpine.DEB.2.22.394.2309111740160.1847660@ubuntu-linux-20-04-desktop>
References: <20230908230318.1719290-1-sstabellini@kernel.org>
 <91d5ea6d-bdfa-45bf-a54b-5acdf1784ec4@xen.org>
 <alpine.DEB.2.22.394.2309111740160.1847660@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <156fac1ee8e37cddac95813f72a108e0@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

>> > diff --git a/xen/arch/arm/psci.c b/xen/arch/arm/psci.c
>> > index 695d2fa1f1..2a8527cacc 100644
>> > --- a/xen/arch/arm/psci.c
>> > +++ b/xen/arch/arm/psci.c
>> > @@ -59,6 +59,7 @@ void call_psci_cpu_off(void)
>> >       }
>> >   }
>> >   +/* SAF-2-safe */
>> 
>> I think any use of SAF-2-safe should be accompanied with an 
>> attribute...
>> 
>> >   void call_psci_system_off(void)
>> 
>> ... noreturn for function or ...
>> 
>> >   {
>> >       if ( psci_ver > PSCI_VERSION(0, 1) )
>> > diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
>> > index 7619544d14..47e0f59024 100644
>> > --- a/xen/arch/x86/shutdown.c
>> > +++ b/xen/arch/x86/shutdown.c
>> > @@ -118,6 +118,7 @@ static inline void kb_wait(void)
>> >               break;
>> >   }
>> >   +/* SAF-2-safe */
>> >   static void noreturn cf_check __machine_halt(void *unused)
>> >   {
>> >       local_irq_disable();
>> > diff --git a/xen/include/xen/bug.h b/xen/include/xen/bug.h
>> > index e8a4eea71a..d47c54f034 100644
>> > --- a/xen/include/xen/bug.h
>> > +++ b/xen/include/xen/bug.h
>> > @@ -117,6 +117,7 @@ struct bug_frame {
>> >   #endif
>> >     #ifndef BUG
>> > +/* SAF-2-safe */
>> >   #define BUG() do {                                              \
>> >       BUG_FRAME(BUGFRAME_bug,  __LINE__, __FILE__, 0, NULL);      \
>> >       unreachable();                                              \
>> 
>> ... unreachable for macros. But the /* SAF-2-safe */ feels a little 
>> bit
>> redundant when a function is marked as 'noreturn'.
>> 
>> Is there any way to teach eclair about noreturn?
> 
> Actually I had the same thought while writing this patch. If we can
> adopt unreachable and noreturn consistently maybe we don't need
> SAF-2-safe. If the checker can support it.
> 
> Nicola, what do you think?

A couple of remarks:
- if you put the noreturn attribute on some functions, then surely the 
code after those is
reported as unreachable. ECLAIR should pick up all forms of noreturn 
automatically; otherwise, a simple configuration can be used.

- Note that the cause of unreachability in the vast majority of cases is 
the call to
__builtin_unreachable(), therefore a textual deviation on the definition 
of unreachable, plus
a bit of ECLAIR configuration, can deviate it (to be clear, just the SAF 
comment is not
sufficient, since deviations comments are meant to be applied at the top 
expansion location,
which is not on the macro definition).
This is what it should look like, roughly:

-config=MC3R1.R2.1,reports+={deliberate, 
"any_area(any_loc(text(^<REGEX>$, -1)))"}

#if (!defined(__clang__) && (__GNUC__ == 4) && (__GNUC_MINOR__ < 5))
/* SAF-2-safe */
#define unreachable() do {} while (1)
#else
/* SAF-2-safe */
#define unreachable() __builtin_unreachable()
#endif

where REGEX will match the translation of SAF-2-safe.

However, this will then entail that *some* SAF comments are treated 
specially and, moreover,
that some modification to the definition of unreachable won't work
(e.g.
#define M() __builtin_unreachable()
/* SAF-2-safe */
#define unreachable() M()

My opinion is that it's far easier for this to be an eclair 
configuration (which has the
advantage not to depend on the exact definition of unreachable) and then 
perhaps a comment
above it explaining the situation.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 08:10:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 08:10:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608713.947365 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPd5-0004fo-Mw; Wed, 27 Sep 2023 08:10:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608713.947365; Wed, 27 Sep 2023 08:10:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPd5-0004fh-KM; Wed, 27 Sep 2023 08:10:43 +0000
Received: by outflank-mailman (input) for mailman id 608713;
 Wed, 27 Sep 2023 08:10:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gzin=FL=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qlPd4-0004fb-3d
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 08:10:42 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on2062d.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 58f64885-5d0d-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 10:10:41 +0200 (CEST)
Received: from AM6P195CA0016.EURP195.PROD.OUTLOOK.COM (2603:10a6:209:81::29)
 by AS1PR08MB7404.eurprd08.prod.outlook.com (2603:10a6:20b:4c4::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Wed, 27 Sep
 2023 08:10:34 +0000
Received: from AM7EUR03FT047.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:81:cafe::5e) by AM6P195CA0016.outlook.office365.com
 (2603:10a6:209:81::29) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21 via Frontend
 Transport; Wed, 27 Sep 2023 08:10:34 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT047.mail.protection.outlook.com (100.127.140.69) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.22 via Frontend Transport; Wed, 27 Sep 2023 08:10:33 +0000
Received: ("Tessian outbound 0b7d6027328f:v175");
 Wed, 27 Sep 2023 08:10:33 +0000
Received: from cf47db4c4b9c.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 4747FC06-7F32-4AE8-A5A6-635AB6183D4D.1; 
 Wed, 27 Sep 2023 08:10:25 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id cf47db4c4b9c.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 27 Sep 2023 08:10:25 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AM0PR08MB5443.eurprd08.prod.outlook.com (2603:10a6:208:183::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Wed, 27 Sep
 2023 08:10:23 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::30ea:681d:5fa7:8bfb]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::30ea:681d:5fa7:8bfb%2]) with mapi id 15.20.6813.027; Wed, 27 Sep 2023
 08:10:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 58f64885-5d0d-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KWCdekwgOyw2pnoC9bNUzUiBI411Sa8DBtQeBo/38i8=;
 b=Ldt3UjESY259USfISGcFblgw4pqsFHQzG/9WNz50gBOoUJC80QDM2T7xd3ci1OnUuQmuIWQVBM/sPphYZVrrsrsi/UsFJBVKZJuyrdp87w/QIJtjej0vHlCDU/oGzeg8v3XwqCuQHd0/pjfFTr10ll4C1ujMQDP4Rdrz8LkJpWo=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 7a0e935e3b1cd976
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iljvADfzsmQGBDnEA55HHJwUZEAoN4Fa2E8Rvhc/CqDLtinurhCVSPlaV6pAiFcAx+fz/KvNZKmG+TjQBUQArNkcA+f8pCWhIG3EBFiNpt5fvL6V03ZiaWkhJVnTnoJD7xPh1HpIHTpykG0Uqgo6O3ZxMZYif2CO1NyGvJditGQPJJO4YEDdYBdX6FBIlHB/E9Ob15WmovWG4py5oGzrzOBorQo54OT0QzLBNdYAmTX1O7lbhg1QWFaB6krPVaJrZgA9dZkO/Y788mKuwuoP/JDQHHSJ/4OfQwFqcb0Rl5+Rt9RLQhKCYpjCS6R9CLTa2rcRwFnkqiNpbgr8J2VqNg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=KWCdekwgOyw2pnoC9bNUzUiBI411Sa8DBtQeBo/38i8=;
 b=J5tI6/lsC4YEI4wEkRChVM4lKjDsmnFwgrNJSkIjmMjVpMadN87xuJWnlhsUzcyk1GY0bMxxo9wzLTlfWvKAIohlGgGtyu1SOt7pgSpLivvZgu94fuUa8bIF5pnDB7z84ouiPn7OxjaU6fQnfabdU+yC3hcljperiO5dpI72gEspu37PmkNwTQ2u17nZGifZNGIUfENgY2hNWLyzeCQvT8VrOS1QupGVv6Vogsxh4wre8zKu75OOr8drT0LLyRx7Jh9PAcO6Zhwc/MqaxvNXK9+k36nvPV1Yz1rn4l5XsinV7MuLRp1NZO6doA7uBcMVAFCxhELk5TFK8qv4AxIOaw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=KWCdekwgOyw2pnoC9bNUzUiBI411Sa8DBtQeBo/38i8=;
 b=Ldt3UjESY259USfISGcFblgw4pqsFHQzG/9WNz50gBOoUJC80QDM2T7xd3ci1OnUuQmuIWQVBM/sPphYZVrrsrsi/UsFJBVKZJuyrdp87w/QIJtjej0vHlCDU/oGzeg8v3XwqCuQHd0/pjfFTr10ll4C1ujMQDP4Rdrz8LkJpWo=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, Julien Grall
	<julien@xen.org>, "george.dunlap@citrix.com" <george.dunlap@citrix.com>,
	"roberto.bagnara@bugseng.com" <roberto.bagnara@bugseng.com>,
	"nicola.vetrini@bugseng.com" <nicola.vetrini@bugseng.com>, Stefano Stabellini
	<stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] docs/misra: add 14.3
Thread-Topic: [PATCH v3] docs/misra: add 14.3
Thread-Index: AQHZ4pLyktuvAHNnhUGsSPCCOW2ABbAubugA
Date: Wed, 27 Sep 2023 08:10:19 +0000
Message-ID: <A145D22B-2BD0-4788-BC33-E4E4F936ED43@arm.com>
References: <20230908202723.1641469-1-sstabellini@kernel.org>
In-Reply-To: <20230908202723.1641469-1-sstabellini@kernel.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|AM0PR08MB5443:EE_|AM7EUR03FT047:EE_|AS1PR08MB7404:EE_
X-MS-Office365-Filtering-Correlation-Id: 2178a791-ccc8-4d0a-294c-08dbbf31390a
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 q8svTj18IW31Cp+0muV4f3UvMrvSb94/T2caroixF1LJt+eILjEW8rqrFNFlNFwqL8b9TkzbQ3qPXTmHoj1bZqA7Mpu1BizoadqSZd/Oig/jon7m0iaZuWhdqHSbsCvfjhOzGhePth5t4KOfqHb5JMw66oSksyC11QtEKvauJli8fbtEz6fl60wA85uN3ddzJYGCBr9rH2ji0XGvMZvceu3AtvHn99zyBB4zH9sz/a59ZOxUfQX6eq+/F5DsJR6GdWyDcnDEwzLjHra00O/sPSAJ8x4SWJ+FUO7cTuwTVQ930twfUDqZX1KOq3w7PqS3GvCsuUZY2iC4Ecv0DnROxbKYUq/+wHJqLux5u9l3xOloftp4FKM9hQVLVG3wAWi1SWqZkDgGvdfBgI00oZ55LPIaFXLHZl0RUkO6dqCrW3gg+dLZdRaoPHuIS675DS0CCmuMV7HE8BisOcLRvHG5jZic5mV9tloNJAPITrcYLpVRnIiR9nEDRA0I5Ndal4uJk0ywFHVN5FY8Rtk7cZ3k6LXQ0vX9paBofrxYQAe7PiZI0caipqaBHiX8AjwrVWytO1lpVvS2OBfoDF4xvf+0nDnMGD/TwLp6nxKzHopnrTGaO+G+iFLkerXLFWyEbbmHwuyShSdP65OurquN1S5kJWd16w61SLz3E6N57Lsj0Wzd5sHBZ3aJosqb3K+0hmXp
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(39860400002)(376002)(396003)(366004)(230922051799003)(451199024)(186009)(1800799009)(41300700001)(5660300002)(2906002)(6486002)(7416002)(2616005)(54906003)(6916009)(316002)(8676002)(8936002)(4326008)(6512007)(478600001)(6666004)(6506007)(53546011)(71200400001)(64756008)(83380400001)(66476007)(66556008)(66446008)(66946007)(91956017)(76116006)(33656002)(36756003)(38070700005)(122000001)(38100700002)(86362001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <9AED7E48D1C6994EA40F023EC0A162DA@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB5443
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT047.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	f1b2227f-1d7e-44a3-93a4-08dbbf3130c3
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Drh4jkNgQdDViztQqsgBTHFAFwEbkJKGFcppds4laxXxW4RqFJNf9VJhkiLSrnvbo8hOBgQ5TpR8RFRli6G3+bxiortpgR7M9MFHRj3groYymXm+PSA/WiL7/DVgRzYcglSkWjXzv2o9HmCP/xdS57pXLHPGrK7Yp73ndt2K89kgQ5TYn7ok15XArXzHgQ5sdT+9qeyGe8B2NJxVbW2u9tAaOeZ12iV7QSdCmY0Q6Mo/f2q/RFaRZs3bcfPHXvJ6uAeYW4pJHRUiJMBE+Xe9dYuK6OYT3RPPE+gw6KPAtTMjhWvihdMPr8YbQAW0afGao8+daRF8cBshiIf+3mJbsWAMdZklzv0Om5nA0KLQTuMiNg6mpo7lOmK7XhRHV8AMwMGeVoapVG5nGdruA268IwMnu0+Gc8WJWfYQhNr8CEKabuBFphCj2wp5lRzr6OURr+0pMW8Medj8oZJd/Yd47IMOfXabKhhooaybVqQGws1q0mzBzCtQdo0As1x94aYKMK8lcppTrogfYDljkTbXKU3a0TeaDtcqJfYoGkcW1BBsENeHWnEnmzNT0jyk3dj5TNQXP3sELgEYmC9lZroOQqTvQbHm46wp/ydwGZnmA2PzVBArjHIGt2HZA75+39pwaT2bve/sAjgXAqOZPQtdK/AlVfxT6GBt6hWKv4IzJBK7L1YtOEIT0bmvZ3SjzWOcu0a40yhTFg1637ebS0ZtUookrmylLGRZ8y0ObhkbX3vCFepbYWyuPBeoyBFxo9z4UR6FLzbNHSNRxsVQbHz1Bw==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(396003)(39860400002)(346002)(136003)(230922051799003)(82310400011)(1800799009)(451199024)(186009)(36840700001)(46966006)(40470700004)(40460700003)(2616005)(53546011)(26005)(336012)(6506007)(478600001)(6512007)(5660300002)(47076005)(6486002)(6666004)(2906002)(83380400001)(8936002)(6862004)(4326008)(8676002)(70586007)(54906003)(70206006)(316002)(41300700001)(36860700001)(356005)(86362001)(81166007)(33656002)(40480700001)(36756003)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 08:10:33.3702
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 2178a791-ccc8-4d0a-294c-08dbbf31390a
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT047.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7404

Hi Stefano,

> On 8 Sep 2023, at 22:27, Stefano Stabellini <sstabellini@kernel.org> wrot=
e:
>=20
> From: Stefano Stabellini <stefano.stabellini@amd.com>
>=20
> Add 14.3, with project-wide deviations.
>=20
> Also take the opportunity to clarify that parameters of function pointer
> types are expected to have names (Rule 8.2).
>=20
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

I am still not quite sure if we should accept a rule if we are deviating
on so much cases but as we can revisit anyway:

Acked-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

> ---
> Changes in v3:
> - add ,
> - add switch(sizeof(...)) and switch(offsetof(...))
> ---
> docs/misra/rules.rst | 15 ++++++++++++++-
> 1 file changed, 14 insertions(+), 1 deletion(-)
>=20
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 34916e266a..ac76e20a9c 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -234,7 +234,8 @@ maintainers if you want to suggest a change.
>    * - `Rule 8.2 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-S=
uite/-/blob/master/R_08_02.c>`_
>      - Required
>      - Function types shall be in prototype form with named parameters
> -     -
> +     - Clarification: both function and function pointers types shall
> +       have named parameters.
>=20
>    * - `Rule 8.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-S=
uite/-/blob/master/R_08_03.c>`_
>      - Required
> @@ -385,6 +386,18 @@ maintainers if you want to suggest a change.
>      - A loop counter shall not have essentially floating type
>      -
>=20
> +   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example=
-Suite/-/blob/master/R_14_03.c>`_
> +     - Required
> +     - Controlling expressions shall not be invariant
> +     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
> +       checks, and other constructs that are detected as errors by MISRA
> +       C scanners, managing the configuration of a MISRA C scanner for
> +       this rule would be unmanageable. Thus, this rule is adopted with
> +       a project-wide deviation on if, ?:, switch(sizeof(...)), and
> +       switch(offsetof(...)) statements.
> +
> +       while(0) and while(1) and alike are allowed.
> +
>    * - `Rule 16.7 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-=
Suite/-/blob/master/R_16_07.c>`_
>      - Required
>      - A switch-expression shall not have essentially Boolean type
> --=20
> 2.25.1
>=20



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 08:15:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 08:15:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608720.947375 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPhN-0005u3-C7; Wed, 27 Sep 2023 08:15:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608720.947375; Wed, 27 Sep 2023 08:15:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPhN-0005tw-9U; Wed, 27 Sep 2023 08:15:09 +0000
Received: by outflank-mailman (input) for mailman id 608720;
 Wed, 27 Sep 2023 08:15:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gzin=FL=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qlPhM-0005tY-0Z
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 08:15:08 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0622.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::622])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f69c064f-5d0d-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 10:15:05 +0200 (CEST)
Received: from AM5PR0301CA0013.eurprd03.prod.outlook.com
 (2603:10a6:206:14::26) by DBAPR08MB5734.eurprd08.prod.outlook.com
 (2603:10a6:10:1aa::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Wed, 27 Sep
 2023 08:14:56 +0000
Received: from AM7EUR03FT056.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:14:cafe::b) by AM5PR0301CA0013.outlook.office365.com
 (2603:10a6:206:14::26) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Wed, 27 Sep 2023 08:14:56 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT056.mail.protection.outlook.com (100.127.140.107) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Wed, 27 Sep 2023 08:14:54 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Wed, 27 Sep 2023 08:14:54 +0000
Received: from 15032fe38d38.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 3AB37795-4FBF-4633-9593-DF02B7DDCBE6.1; 
 Wed, 27 Sep 2023 08:14:48 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 15032fe38d38.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 27 Sep 2023 08:14:48 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by PA4PR08MB7457.eurprd08.prod.outlook.com (2603:10a6:102:2a4::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 08:14:46 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::30ea:681d:5fa7:8bfb]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::30ea:681d:5fa7:8bfb%2]) with mapi id 15.20.6813.027; Wed, 27 Sep 2023
 08:14:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f69c064f-5d0d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6OWwdHE+5nPN1Ez2Vi00nQLfXpZC3JOsw9blE00uEUQ=;
 b=Xi9UvJoAIYcLS+39zYcSg7ODBij6gv27C8zb7VgCLY2cg+Te1GhKBJxoajzgROTBPan+JKCEK4GU0PGh45EiHGDQcsXGsXCPS4gyXKQMFpU7DGv6TKjWMrivoITdZ23suyZMlAL4osoC4oxQsoYt0VHKEJFLCCQPLYPjBth/20M=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 3322e0bae34c8947
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Tyxh9TYn0pE4U02JePoD7Dv+QxWEm/icD4fojg5S/Jhl01iWPqcCFhPgVySZ5OpHqC8W2NJOxku8Ky85FgU1lbElZEMwgcnxlCu2MyHVLb1hc2PyVqv62yqUPj8BRMf+S4Up686zVdWFUL4f1QY2GhHL81C3AhZ8BER2pxxLexkj17yYW+N6pbj5F5nWgbsgfufkWcZR/TRZ/LLXYoXwMKWw1gZy9uYnfO5qdALTc7RuhjO6Ttpjyk92+9iT/00JNgAfbSXwO9EfJsXkJsVmmBEw7EhoXF+uN9N967B9EVx0se+4jF4XSv6nRmqS+SQ+uT396Q6nRHLuGxa3f7QcjA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6OWwdHE+5nPN1Ez2Vi00nQLfXpZC3JOsw9blE00uEUQ=;
 b=YEDP8tCO0VlZ4peDaw0UPyIBBY3jsAG8H0pQZ1wjmc+N065Er+9KLvXS/GwjZ3tra71YvhJgQjkUBXhU0eGaXE6ia2sMkBnvBw6c0hf9WJ/R+jPT/V1VSZl7QUfGP276liOjpRbe9hSFPu9dLf/vaMQHei3FU+D+0grDu0Y0IVjOsrtHybwWAaFcfQE8DTPQZboOq0W779GDNce8K5OaUSlJPvBuQaS3EGix1EUwpMSSgo4u/blPdnQZibHwAKbxgiviLsOiK55PtLT9sg9WSbM0n4BpJVmAjW8iSHokP6KIjqWgUj6jwQ1Ks/fwEjvIEb1qyXqekJwX7zt7K/xGcA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6OWwdHE+5nPN1Ez2Vi00nQLfXpZC3JOsw9blE00uEUQ=;
 b=Xi9UvJoAIYcLS+39zYcSg7ODBij6gv27C8zb7VgCLY2cg+Te1GhKBJxoajzgROTBPan+JKCEK4GU0PGh45EiHGDQcsXGsXCPS4gyXKQMFpU7DGv6TKjWMrivoITdZ23suyZMlAL4osoC4oxQsoYt0VHKEJFLCCQPLYPjBth/20M=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
CC: Stefano Stabellini <sstabellini@kernel.org>, Xen-devel
	<xen-devel@lists.xenproject.org>, Jan Beulich <jbeulich@suse.com>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, "george.dunlap@citrix.com"
	<george.dunlap@citrix.com>, "roberto.bagnara@bugseng.com"
	<roberto.bagnara@bugseng.com>, "julien@xen.org" <julien@xen.org>, Stefano
 Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] docs/misra: add rule 2.1 exceptions
Thread-Topic: [PATCH v3] docs/misra: add rule 2.1 exceptions
Thread-Index: AQHZ4qiwUwH3koR9JUa91LeAyizAArAVxOqAgACZsICAGAuKgIAABdgA
Date: Wed, 27 Sep 2023 08:14:46 +0000
Message-ID: <BEAF1369-C1FE-4B81-A0A1-5A4F39426E9E@arm.com>
References: <20230908230318.1719290-1-sstabellini@kernel.org>
 <91d5ea6d-bdfa-45bf-a54b-5acdf1784ec4@xen.org>
 <alpine.DEB.2.22.394.2309111740160.1847660@ubuntu-linux-20-04-desktop>
 <156fac1ee8e37cddac95813f72a108e0@bugseng.com>
In-Reply-To: <156fac1ee8e37cddac95813f72a108e0@bugseng.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|PA4PR08MB7457:EE_|AM7EUR03FT056:EE_|DBAPR08MB5734:EE_
X-MS-Office365-Filtering-Correlation-Id: 91c7c1cc-883e-4f29-726e-08dbbf31d4f1
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 lrrvWw69JZ6rYAZssx2wQA7iVQ/BPnj9Axs1mrM9PoBokmDTzeFuNoK+Zp9YBxQ+yrLY9AfB/tsTPJ+VNMF0Kb6e/hKDit2UBmR3VE+Y5EtW97K8ZJvrqYe0akx9JPiRhewKrg0Tj+TXKF411gC4hfIogMxteJrGvd3P0puNPxQVUqCC6GALU4veuPMc2hA42abcMjrM2gOgh5qyahaKojxsvbLv6AJX9Ny01Kcrb8KrEposRtJ5V5/NRtgXtIjewBaIUZ9LTCLOis+lvrgTIpbmiWjms/J84VHs5gcMi0UPig5dvbywrEloKE760iyuJsTawAhd1j9wx2O2HzAGmYfkVSb6zCj8R/pddm5AP8qfRk4HIvDZsEbrFg0Uylrpc573sXV/JB/rz0GF8nNAhkpVrVWdxbA+HaTglWXLGD36ffkeQf+xCYjcnVOSALBIUw8QtY6/hOZHjabc8KrKG55uR3u1Ukbr/x40Mv7qbvuH73XTYiO1YAifuW/7CDnVsSj+U1VxBgohdYNL3DA3S0U/BOuRSrEHbiOb3EudTRBS4LWSvMdyPMVRDrQ/fVStY18GTmZ48wFNyVAKdp61xT+ks8FE3SKOaBX1BgDUQFGuB8URsI91GvhsZLJA/1UQnkPb9bhtKyHKhvFhAci/ug==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(396003)(366004)(39860400002)(136003)(230922051799003)(1800799009)(186009)(451199024)(6506007)(2906002)(6486002)(122000001)(7416002)(38100700002)(38070700005)(66946007)(91956017)(76116006)(6512007)(66446008)(64756008)(66476007)(66556008)(5660300002)(71200400001)(53546011)(8936002)(54906003)(4326008)(6916009)(478600001)(316002)(8676002)(41300700001)(2616005)(86362001)(36756003)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <59A0F4BF0339064199979225A3A79BDF@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB7457
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT056.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	d8133308-a0e8-4a40-ceb8-08dbbf31cfc7
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Aznx31dKPdRa05xdDsze77/7L+yqVnkEsr3UQIkeju56odj4ZP8cp7UFH7sfUTq7Mps8LiFMP3pXWUFv2DdODfi/5JPWG1SuAqAQA+7dtUeXekpf4vuyKiDjwsHEVlsWNyE139zxfgkmQgFjaum+OWQeDhr7cJiasxamUb/GGaeGTQQ3pXkA2hBfyhC/9rs7iYQDXjI6ejDwjBD87PnLLA/3rnWatajcwxoF9WzL2itp3nSxDU0ng5go6xwkZkz2a3oVJCBJaBTMAxQA0jvsXjITnCMtdYW5ffgRL4Ss34WexhnwI2dwvNQ5eGQPOtcIJEvu9lBLjiiJZ5cy/X5//6hLw5tnjOivMlLn2MZCZV2ZhIu2QZtV8nqfHA+lqEdWddXsz8YKqVwFOCeX8PW83IVrjMiIfYoZwINV+o77Qr7BOS59gfmpObCWP+hBd5Lk2/EtDx8djUJ9XlMwwyJqbFQ0K8IG2dtsDdT+UgxSj08P98W4KXRb7BYUlvoq8aJk3vXE+TqMfOc+3u0prdbkIsRothXCRgWR+zGJPNBNigVMM205KgPaDfoOqBmB6WAsXvR5kAs0UjyxNPsgjSPXaZfRaN9sPX3SJOQh3AmaUllvarSaSyCTCtVRsDvVrfOJh5ZZe9297LHl1GlAN7xqMWXLycyhStRfYKxCzJN7dpe8Kc6kZTLYVrUkoffYX/xmejMwbF15ZarGe8dt8SKRAA==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(39850400004)(396003)(136003)(230922051799003)(1800799009)(451199024)(186009)(82310400011)(46966006)(36840700001)(82740400003)(356005)(6512007)(40480700001)(6486002)(6506007)(81166007)(53546011)(26005)(2616005)(5660300002)(4326008)(6862004)(8676002)(8936002)(86362001)(33656002)(2906002)(316002)(36756003)(70586007)(41300700001)(70206006)(54906003)(478600001)(36860700001)(47076005)(336012);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 08:14:54.9328
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 91c7c1cc-883e-4f29-726e-08dbbf31d4f1
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT056.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR08MB5734

Hi,

> On 27 Sep 2023, at 09:53, Nicola Vetrini <nicola.vetrini@bugseng.com> wro=
te:
>=20
>>> > diff --git a/xen/arch/arm/psci.c b/xen/arch/arm/psci.c
>>> > index 695d2fa1f1..2a8527cacc 100644
>>> > --- a/xen/arch/arm/psci.c
>>> > +++ b/xen/arch/arm/psci.c
>>> > @@ -59,6 +59,7 @@ void call_psci_cpu_off(void)
>>> >       }
>>> >   }
>>> >   +/* SAF-2-safe */
>>> I think any use of SAF-2-safe should be accompanied with an attribute..=
.
>>> >   void call_psci_system_off(void)
>>> ... noreturn for function or ...
>>> >   {
>>> >       if ( psci_ver > PSCI_VERSION(0, 1) )
>>> > diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
>>> > index 7619544d14..47e0f59024 100644
>>> > --- a/xen/arch/x86/shutdown.c
>>> > +++ b/xen/arch/x86/shutdown.c
>>> > @@ -118,6 +118,7 @@ static inline void kb_wait(void)
>>> >               break;
>>> >   }
>>> >   +/* SAF-2-safe */
>>> >   static void noreturn cf_check __machine_halt(void *unused)
>>> >   {
>>> >       local_irq_disable();
>>> > diff --git a/xen/include/xen/bug.h b/xen/include/xen/bug.h
>>> > index e8a4eea71a..d47c54f034 100644
>>> > --- a/xen/include/xen/bug.h
>>> > +++ b/xen/include/xen/bug.h
>>> > @@ -117,6 +117,7 @@ struct bug_frame {
>>> >   #endif
>>> >     #ifndef BUG
>>> > +/* SAF-2-safe */
>>> >   #define BUG() do {                                              \
>>> >       BUG_FRAME(BUGFRAME_bug,  __LINE__, __FILE__, 0, NULL);      \
>>> >       unreachable();                                              \
>>> ... unreachable for macros. But the /* SAF-2-safe */ feels a little bit
>>> redundant when a function is marked as 'noreturn'.
>>> Is there any way to teach eclair about noreturn?
>> Actually I had the same thought while writing this patch. If we can
>> adopt unreachable and noreturn consistently maybe we don't need
>> SAF-2-safe. If the checker can support it.
>> Nicola, what do you think?
>=20
> A couple of remarks:
> - if you put the noreturn attribute on some functions, then surely the co=
de after those is
> reported as unreachable. ECLAIR should pick up all forms of noreturn auto=
matically; otherwise, a simple configuration can be used.
>=20
> - Note that the cause of unreachability in the vast majority of cases is =
the call to
> __builtin_unreachable(), therefore a textual deviation on the definition =
of unreachable, plus
> a bit of ECLAIR configuration, can deviate it (to be clear, just the SAF =
comment is not
> sufficient, since deviations comments are meant to be applied at the top =
expansion location,
> which is not on the macro definition).
> This is what it should look like, roughly:
>=20
> -config=3DMC3R1.R2.1,reports+=3D{deliberate, "any_area(any_loc(text(^<REG=
EX>$, -1)))"}
>=20
> #if (!defined(__clang__) && (__GNUC__ =3D=3D 4) && (__GNUC_MINOR__ < 5))
> /* SAF-2-safe */
> #define unreachable() do {} while (1)
> #else
> /* SAF-2-safe */
> #define unreachable() __builtin_unreachable()
> #endif
>=20
> where REGEX will match the translation of SAF-2-safe.
>=20
> However, this will then entail that *some* SAF comments are treated speci=
ally and, moreover,
> that some modification to the definition of unreachable won't work
> (e.g.
> #define M() __builtin_unreachable()
> /* SAF-2-safe */
> #define unreachable() M()
>=20
> My opinion is that it's far easier for this to be an eclair configuration=
 (which has the
> advantage not to depend on the exact definition of unreachable) and then =
perhaps a comment
> above it explaining the situation.

I agree here and it is easier to make an overall exception where we list th=
e cases
where this is acceptable (ie all flavors of unreacheable) and document that=
 eclair
was configured using "xxxx" to handle this.

Cheers
Bertrand

>=20
> --=20
> Nicola Vetrini, BSc
> Software Engineer, BUGSENG srl (https://bugseng.com)




From xen-devel-bounces@lists.xenproject.org Wed Sep 27 08:16:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 08:16:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608724.947386 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPiu-0006Rp-NU; Wed, 27 Sep 2023 08:16:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608724.947386; Wed, 27 Sep 2023 08:16:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPiu-0006Ri-KP; Wed, 27 Sep 2023 08:16:44 +0000
Received: by outflank-mailman (input) for mailman id 608724;
 Wed, 27 Sep 2023 08:16:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gzin=FL=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qlPit-0006Rc-PF
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 08:16:43 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::61b])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2f5b5d60-5d0e-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 10:16:40 +0200 (CEST)
Received: from DUZP191CA0031.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:4f8::23)
 by PAXPR08MB6573.eurprd08.prod.outlook.com (2603:10a6:102:dc::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 08:16:35 +0000
Received: from DBAEUR03FT061.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4f8:cafe::68) by DUZP191CA0031.outlook.office365.com
 (2603:10a6:10:4f8::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Wed, 27 Sep 2023 08:16:35 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT061.mail.protection.outlook.com (100.127.143.28) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.21 via Frontend Transport; Wed, 27 Sep 2023 08:16:35 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Wed, 27 Sep 2023 08:16:35 +0000
Received: from 09362cdc272e.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 8BF67789-3205-4069-8E31-FCC99FE2A92B.1; 
 Wed, 27 Sep 2023 08:16:28 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 09362cdc272e.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 27 Sep 2023 08:16:28 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by PA4PR08MB7457.eurprd08.prod.outlook.com (2603:10a6:102:2a4::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 08:16:24 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::30ea:681d:5fa7:8bfb]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::30ea:681d:5fa7:8bfb%2]) with mapi id 15.20.6813.027; Wed, 27 Sep 2023
 08:16:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2f5b5d60-5d0e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7KP7CU8B8G4gafGveW0xNPmjKP4Y1zKjvRG2FNNjnws=;
 b=dRcIklXLUEVmtgcqzzIAYswOgXOY5I5YZ+nRpxt5+hlGcnR9BMA5xzpusVMKamElOfxkyIf5E5P9aSm1gmkMFoPv343UfdHfz1ipMcBaMQ6ZEJ3hsmtcgdwKZUbC+aJlgzygwzS4nfT1zApZGV6+OKlcL+UYReRZrIUR0JEasNw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 3dfd49ee5ef4d150
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SUrWED0eB7lGHi/n2rff2hSrFEqh1ebQpXq8cLmjZkgJ3dvSIS5Csd7NBfkhC9A+Nr2rH8oJlFL5bWWKz1+kTXvLX3+Y5VEeHkhXzUR13i4LmEzKP6s6FMP87YmYiJS7WhAeOeqcfpBtciMIHHeMk8pMGhPCQU2Z9ITtmKCLN3Wi84ucZ2fsplEePJhhGS2B0mVcqvI9h7ELBiPU8+BlRoDzHYw6ZcGXJI6MYu3d+M8gkx9pGWzj3FjAm0cyubagKGfBt93kcLXswbUTdyRMqOh4AwQaTM8JjvuT0Khv042iY2+pJZsgnh9ETL9FwcwvmL+X5/c0gm3yWQkYW7cueQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=7KP7CU8B8G4gafGveW0xNPmjKP4Y1zKjvRG2FNNjnws=;
 b=Q97HToJwOLHS1Aq9J3L0d3C+gNiecqdwreRvDbhnjnEZPg8wy9mK4Bo8uarrpSvToNCIcctJ9tvE1WcMO5ZCPB+Vj7PyyQPVJF1F/louXMrZIgXHMylsLbkfALAzebIzDbJ17GNa12f4G/46hLyTv/XyFTsYMDx5Mn4jNqMNqRUUtDtupbqtNCQx0XjzNNDQV+OdXjYsqxPiTSjHQMXVIbUeeS6jqqXriB2CEaM0c4hhNGTrvi0bogSpofGr25UK59s7OdABFimADcQaCZZk6Y4Ql/7OzFvQb42qGDo0tbVBc+IK5hh8hhRhX2jV1P0R0Z7xNJeVhZw0ltAe/FrLrQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=7KP7CU8B8G4gafGveW0xNPmjKP4Y1zKjvRG2FNNjnws=;
 b=dRcIklXLUEVmtgcqzzIAYswOgXOY5I5YZ+nRpxt5+hlGcnR9BMA5xzpusVMKamElOfxkyIf5E5P9aSm1gmkMFoPv343UfdHfz1ipMcBaMQ6ZEJ3hsmtcgdwKZUbC+aJlgzygwzS4nfT1zApZGV6+OKlcL+UYReRZrIUR0JEasNw=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, "jbeulich@suse.com" <jbeulich@suse.com>,
	"george.dunlap@citrix.com" <george.dunlap@citrix.com>, "julien@xen.org"
	<julien@xen.org>, "roger.pau@citrix.com" <roger.pau@citrix.com>,
	"roberto.bagnara@bugseng.com" <roberto.bagnara@bugseng.com>, Stefano
 Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH] docs/misra: add rule 11.9
Thread-Topic: [PATCH] docs/misra: add rule 11.9
Thread-Index: AQHZ8N7F1acUGyfgHkSrRU6Q0Z48aLAuVAMA
Date: Wed, 27 Sep 2023 08:16:22 +0000
Message-ID: <068B9E0E-8EC1-47AC-9D24-64ACD9994013@arm.com>
References: <20230927010538.1778201-1-sstabellini@kernel.org>
In-Reply-To: <20230927010538.1778201-1-sstabellini@kernel.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|PA4PR08MB7457:EE_|DBAEUR03FT061:EE_|PAXPR08MB6573:EE_
X-MS-Office365-Filtering-Correlation-Id: 5194cb1f-1339-475c-6f2a-08dbbf3210ae
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 t983vVaIhZSaoGIAN0tYLc2CGPmtTbL54LmgXjXl4fzc5t9a4kmyrspmhgzjC3p0cIX8hN77Vqxee9+YV1JaF2gD3wZzT/cMlIGZpeovo+VQmaug3xw7Ge9U7fpqO7v7sbSwW3pfGSoS56F7wG0lG2gzqmwsk/5fKYgp2MKXAmZp02VVH4J7pGELb8QITqLf1Kx5w5wxC5ncI/XHSOHdEvBS5mfYRYfRaLIhn31Y5vbl9biZlCKjrjVP7V0qtWrqy9iVhdZ5wcgaFGIJ4mXYloMJK2dCB0fEV5GeoGnzdZc3ofcKKEHF6IchHuD8Hn/i/M/FmzIMXTqCX5z2abNwq5Pq5DITilo2uZOozMJfad/zBf10E+U+FVGDX7Dx3DiWTZ48TaJhgPs8fckHAtUMyLQpGDKegQGeI0nHBDcOTZpXb6GPODb8aILqaXFUnRGBLTUEyXKAqzz87AzZQbv5K4XjbQVG2UJFC/BsHKXaBTr2wGIEdrGInpYbU1wke+/Sh4YJGtcw99YujRpw07IBeHe/yKcq7sCvax/tPDpfs+Tx6xDpq6owM9yxwtZ0inTqC+TiLNNepIrwSFgx9B9BtIb26E69AzASTeHtopkOuMefTN6ctpi+68SWH2jSW+2xBGJgNmR0YqBUxOUXCrXM4UyTHXc1Mucs6eDE45qjPSM=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(396003)(366004)(39860400002)(136003)(230922051799003)(1800799009)(186009)(451199024)(6506007)(2906002)(6486002)(122000001)(38100700002)(38070700005)(66946007)(91956017)(76116006)(6512007)(66446008)(64756008)(66476007)(66556008)(5660300002)(71200400001)(53546011)(8936002)(54906003)(4326008)(6916009)(478600001)(316002)(8676002)(41300700001)(2616005)(86362001)(36756003)(33656002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <72529846210C924AA903C345DF32584A@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB7457
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT061.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	5bdeec48-e637-48cb-3f5b-08dbbf32091c
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	dFrtYcNWLJQZdX5kM0pQXmewkVOJTTGqxcQ+ntm3QOaQAOr52ec9/Qykdt3zwK1VuZQAqjHgmNCAPT1+5DvOdPR12CloyC13inSFZ9ilwXnOg+ifru0IDTRPOQMCKcDWvVyZ5+fPvzJ0dsvaMdfBxS15RKidigRHZ7mB6ACEnhoNoAlnedJrEqUwxqmIHGDZUd4jBIQYU6J2KoulXy18Ghstjoq7kq4tgVOuMhLThxsNqd5cVOw2zhbESy2QB4/Gmde5BjVXtS7P4ET0qcxN0GHJwbhSPY908Q1NKekNan4RtslXtdvc664m6cRXJ/AKMLyNn7VLvh20PPMx5nzkU8q9Sbv4ozc64tb9uv04RQ4lLSexlLUhDUs1NTksctLFdE7vVHxc/wJVLKP1w3IAVT4DIJyOQd9Z1hgrzFL7l0mGxOt/VjO9Q8p8uJ4zW02Fc83FQw205nxIfgKef7xBKelnvAt5N+hZghzE2HAo3l/W9CxMrgqePLJlDdkoZTams1zmZOsffftrMOe5wywqwBhZDS+bwmVJNTZnBqTg9zPhTcZB16C+vFhnU+urpc67Hy/1g1ZndhQa4QMDTQwyZrIEHRSuH87vYq40O1P3aQzyxqnM7rVN2taaBGMsdSElW7D9F8/vSlJAIubTPPoTecLJ5MoOWMhNaI1AysCC9CP2aF4HhQqoVEZEebNjJaG9Xu+7jk96/ZYdMFFfVcriCwXYcKHAEYit/1fDu9gbt1nCFxWo3sbwMG3R80WHF+lvcQul0MIfEddpWzYVFEkItQ==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(376002)(346002)(136003)(230922051799003)(1800799009)(451199024)(82310400011)(186009)(36840700001)(46966006)(40470700004)(6862004)(2616005)(41300700001)(8676002)(4326008)(8936002)(54906003)(36860700001)(316002)(70586007)(70206006)(26005)(336012)(86362001)(2906002)(40460700003)(356005)(6486002)(82740400003)(478600001)(81166007)(47076005)(33656002)(36756003)(6512007)(6506007)(40480700001)(53546011)(5660300002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 08:16:35.2038
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 5194cb1f-1339-475c-6f2a-08dbbf3210ae
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT061.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6573

Hi Stefano,

> On 27 Sep 2023, at 03:05, Stefano Stabellini <sstabellini@kernel.org> wro=
te:
>=20
> From: Stefano Stabellini <stefano.stabellini@amd.com>
>=20
> Following up from the MISRA C group discussion, add Rule 11.9 to
> docs/misra/rules.rst.
>=20
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

I agree with Jan on dropping the "integer" word here.

With that done:
Acked-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

> ---
> Rule 13.1 also discussed but it is already in docs/misra/rules.rst
> ---
> docs/misra/rules.rst | 5 +++++
> 1 file changed, 5 insertions(+)
>=20
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 8e7d17d242..28dc3a4d66 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -373,6 +373,11 @@ maintainers if you want to suggest a change.
>      - A cast shall not remove any const or volatile qualification from t=
he type pointed to by a pointer
>      -
>=20
> +   * - `Rule 11.9 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example=
-Suite/-/blob/master/R_11_09.c>`_
> +     - Required
> +     - The macro NULL shall be the only permitted form of integer null p=
ointer constant
> +     -
> +
>    * - `Rule 12.5 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-=
Suite/-/blob/master/R_12_05.c>`_
>      - Mandatory
>      - The sizeof operator shall not have an operand which is a function
> --=20
> 2.25.1
>=20



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 08:22:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 08:22:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608730.947396 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPoI-0008DY-BQ; Wed, 27 Sep 2023 08:22:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608730.947396; Wed, 27 Sep 2023 08:22:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPoI-0008DR-8o; Wed, 27 Sep 2023 08:22:18 +0000
Received: by outflank-mailman (input) for mailman id 608730;
 Wed, 27 Sep 2023 08:22:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlPoG-0008DL-PT
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 08:22:16 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2079.outbound.protection.outlook.com [40.107.7.79])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f71a7383-5d0e-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 10:22:15 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by GVXPR04MB9996.eurprd04.prod.outlook.com (2603:10a6:150:117::18)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 08:21:46 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 08:21:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f71a7383-5d0e-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eOMcSj4aJAnWbxXD79EjBwc3wArn22rO3A67btnyOg377885mvgKMicy8EDZF67zpbvpI/ydAxDyIJ9B+zqtJLitd1P5rbTOaMzXSvYm9xZ2h1yings9uYZ6U6xkaqGSnDV2NDPyMVM8WMBXWJ59pZkPVGCmks7Vbd53znA/l25+C9p9U+QwsPjIJQpKgoKVES7HBU/hNVfVoXKa13Vw8Y7fHsoCBK4GeKWnp+5nWV7uR2IHgccTpPKrATq/u5nwozPBaVVZtzr62nquCkxBfq+WBTtMNEKickFra8yCIK0UI8MkFgmmsSn2zj+L4DhtwakR0uBG4ploOQWrgkbHgw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nWCqfDehM3YUSBk0KmVd4+CDG+IAxqCox5qWG6PRgl8=;
 b=UHuj+tvIfMrw55jYa9JPZE2GwUj5s3Uubp02oEtMNTidKGnx9thbsWhP/RSB19joETpJop+ehix9ufDUaNgpf8dgnnyweK9AisHUVN5zT4L3mAByL5p0KubVzPekQUj7pOyJJX9iDu+AhQVvqGQazEUb7ELQu52Hmirmtj3Z7OjCuqFHNYBcPUeXO1/jYglw7aVLTM83ttrJao7eCGkvlkshXesnTqiidV4OTz0e8c3GXcqWLq0jQE615EVMa7bQX2fsapiyTFPl4BozndvNqnKaLZgQgcp7wKozS5Z2xRaknt3KWCjaKL7C+MO9YsAZv6zm0oeMbNhsPVaOK96Wdw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nWCqfDehM3YUSBk0KmVd4+CDG+IAxqCox5qWG6PRgl8=;
 b=hgcNUehhb6BRHLK00sRXRd7n6yz2Dba3ZJi8hzlygiWBtP9On8SKDrSp+fGRzOGM0MNYs239ZLSuEv/VkX41kU4r/Gv0nVxl3Uoy72iPWSsor5ojY8y82eQAZ1xuzBuTDBcDaYEatKBzPKk4medk1XQUuqxrXZEXvyYjMdK9XXTAgqB4OYJIyjA8Ik94f4qHwpK65UdxkezHgR5m2yT5W5GrR7v5/0tyX2l5EY6nQP5pPaU8FA/bASHGIUZuiL3pcvf/+yQnCKKj5NdcVatfvKXOzypEcH9e+cH9VND4OiddXRjplcY3B4MZBY8QXWUvzPHPjSIgPk+rQtVf35mdSQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b045e8fe-ccf7-bbcd-ece8-036a13858d36@suse.com>
Date: Wed, 27 Sep 2023 10:21:44 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2] x86/shutdown: change default reboot method preference
Content-Language: en-US
To: Roger Pau Monne <roger.pau@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>,
 xen-devel@lists.xenproject.org
References: <20230915074347.94712-1-roger.pau@citrix.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <20230915074347.94712-1-roger.pau@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0191.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a4::9) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|GVXPR04MB9996:EE_
X-MS-Office365-Filtering-Correlation-Id: dda13b41-1ee7-4ad7-7f69-08dbbf32c9e9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jlp3/CSTfvBzUjRQwxSwAA5Mf050o5OyDznDMAIkVRB4faBiKpu+qQPiM6hnjIYQPXgDasjLSG5+9dFBbJlw76JrQVEL0RvB/6ObdDSGpMjy1g98UIOoCmtCd85TN7nKkRgM2vc3hIic8UPsZeuIz1zxjp4H/YZkvpE/ZDdg6penu7wqeAKj8Dn3v7d6aK+wT4roFdTQHgQiAuVtqgjkXgTXqYa+qSejXc070bZz0NeXjOiInuvjnDSxvh+HBM2NjORHwiAjh0FWLp88oAthgb4h0eWj/C0qxrN88tgbp3gBjFS6ne37N2pGZcQO34ULmNPtLLYFhxzN68rOK1C/bxi7z7Q/ivt3iaN0B/lkOkxu+utoHT1P/q9ovOwcQUibGWSrt6f8rzwOTScjcro+t9NUdMmYsGj016cJ9fP0vK0CtpG4suJKifyqITdsiFDqd31wiSsbx/GzMuYw/otY1EjKtBCvef0iv8jgc90lMbRzJ3L57j8f/jIdYBpVtbe9guZAGkMizRTrxmXh7qoWFJ2L6wfKiY9EbL5JEiM8X+q9MluZyDhwiqwdRIDc9LIVKwDRrYLP+6MVwVwRC5sYeIkz3ITx0fRL7hg++6nwQrGEuJU97WA0vt9nmWh8yU7ngGs49qUYkv1JrWuHw9YTRw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(396003)(376002)(346002)(366004)(230922051799003)(451199024)(186009)(1800799009)(66946007)(6512007)(53546011)(31696002)(86362001)(6486002)(26005)(2616005)(478600001)(38100700002)(83380400001)(66476007)(8936002)(5660300002)(6916009)(2906002)(41300700001)(316002)(8676002)(36756003)(4326008)(66556008)(6506007)(54906003)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Tys4OG1wVzRaOHdTUWdVbkY0WFlwSGpVZm4vMjF5UmFuVU4wZTNNVElBRzVX?=
 =?utf-8?B?dFFnUXplM281NURRYWhuak4rNHEwU1FLeXl4c2FkUUtEYjBmaFhTbnlleWhn?=
 =?utf-8?B?WTBPUGVkeFp5WWU4K2pKOVlkbWZjeXVGSlNjM3dEbkdYWnhFZFV0M0dtU3A5?=
 =?utf-8?B?QkNlcldFU2R3TURZZS9vbnh2eHhGa0JJMnpudFplTFByS0d2OUd0MmVKNFhI?=
 =?utf-8?B?Qm1BK1NJOG1MVUpOeG5FaUE4NUVKVFJ0M01UOTBiTjRKUEtRMnpiRHlpZW9w?=
 =?utf-8?B?MXBZaUxsZ25RREI4MlJTVzg5OUgraDc4dUU1eTVFODVBU3FYWFFsdEpTUHdX?=
 =?utf-8?B?M1BBQ1hWOWJuRlQ0dnNJZE5KZi9ObWQ1c3dkVy9sMnRJUGxrRk9FNTBxV1Q2?=
 =?utf-8?B?MEFnQzVqSVByR3I2VFZBTDNVT3pwQVBkSytRRHU3dVhyZk1mTSswYVRkdktt?=
 =?utf-8?B?bVRKNDBFTjcrb1BRTW1aeEJOdFlJZ2NVMGFnaEZYV01YUmdJYlBZMjRSUTZ4?=
 =?utf-8?B?MzNhallMZzJjS3Y4U3RuZHA3OGlSVDEvN01VYlVYV2I1VHlNdjJMa2o1SUFF?=
 =?utf-8?B?TkpJU3FNOUYrMEZiemc0RzFYOERnNkc3QzlCdVo2d1hzZ2FGZWJVVW44Zmll?=
 =?utf-8?B?NHJqQTc5dVQvcmlGMUR0WHFIRmZNMjYzdVRNZ1lyUWwvY01kVmF6N1k1d0lG?=
 =?utf-8?B?cFpwQXNSWWgyZnc5NUpXeHc2YTVPK09kQlVQbHl6WHRsM2MyN2VKMHc2UVR6?=
 =?utf-8?B?cEF0TTZhRmNYbGNsczNUNjhVZUkxdW50Ui9hVWt4TmlmZjJRY1hwTUV4RmRZ?=
 =?utf-8?B?UXN1MUNPN0tvdFFUTnpJN3V2NXBHSFNjdndnOEU4bVFMeGlFUnpYVDNOaVlJ?=
 =?utf-8?B?TW5yLzJFdDdkS2FaYVBEaHY1VFFsUFVURGpIZkpnNk50UE9reGJWT1labmVp?=
 =?utf-8?B?dEQwVWM1OWJTN0MyOTNQMk9CeW4zL2NCZ0tBSXdZUHlLMU9FdE5lY0IzeS9C?=
 =?utf-8?B?VlNTZHZYV2ZHbzdZWlVjTHZTTFN3NXJDVDM0Y29OVk5NT1A0a1c2UXhsalpj?=
 =?utf-8?B?UFhkcnRXSE91TzBya1pPK1ZpcnFGQkQ0K3VQN01maXViUkxOeG0zN0lmWWNT?=
 =?utf-8?B?Uk14ZlRmK1hiaEoxM2FKWHZETEloWWUrY2tJVmFBMnRDSE5tZllJM0xVZEFO?=
 =?utf-8?B?UXd0b3VnS3Y0L1pUM0dvY1I2bE5ETFYrQiszV2Nia1I0VUI4MTloelREVWQx?=
 =?utf-8?B?WWp4OXZPZHZxVmJQWWhyNnJCaUVsZkx1dDJSTDI2SGgvRDlRd0gva2lxMkd2?=
 =?utf-8?B?ZUx2K1VaemdSMFJlWGIyZHB6QlhTVjdWQWhsUjhTR3FoUEVBTXo0b0hsNnhI?=
 =?utf-8?B?VkN2RDhCbnZuMnJQTGNaQkQ2bVdwekMyQVdTQ0RuZHExWHB3Rk5ZMTJtWVhH?=
 =?utf-8?B?SlE0dVRNY3lPbytGQUg1ZHVsaVJ3YVRGNE5zYjk0T0o0Ym04VnZwSDJkdzBK?=
 =?utf-8?B?ZHl0M2RVcHYvaU15eTJlekh2dkkzT0ZBSy9IZGVPenN6TU41cit2NTlCSjdi?=
 =?utf-8?B?dHJzM3hFcVNOckhBUUhMSXRLMUw5WnQveURDekdmcTdmWm93aXo5ZWFGQ2NJ?=
 =?utf-8?B?blNqWlQ4TkpYMlRqTzUxZEpMNTBXSStYUCt5bjNzalBIc29Xd3BKOXozRG9S?=
 =?utf-8?B?cE80Njl5TWdpVWZScVRkRU5FSWxFcTBzU1pWZEE2T0VOVm5FNldBdWRsdlgr?=
 =?utf-8?B?S2ZyS1MwSlVROXNaR0VQTXQxcTdkWUhKbUtDMlJxLzRJcUJpOHlkV2FPZlVD?=
 =?utf-8?B?M2xSMFZNS204ODhhN3djbXkxVCt6eGtrTXJGdTJqaUZyN3B0NG84bEQ0U3pX?=
 =?utf-8?B?WGN1d0doY3o3S0tGQ05nWVgzRkd4M28xYTgyN1pIcXo1elNielFhaVNRaDA0?=
 =?utf-8?B?bzh5U090ZUlUZDJTWGpIbHhLNDJzUHg3NlRqMFlCbmM4ckZHcndrOFJ1U0V3?=
 =?utf-8?B?d2tMQWVUNjA4WUJRRVQ0TmpCL0dRSElBUitiWG1yV1pnKzd3ZTUxdHd4V1RC?=
 =?utf-8?B?Ukc1TnBHN25hb3NtLzNLbENVWkQ2cVZkcGpqblpFbHkycjkzRmFrQU9sMDds?=
 =?utf-8?Q?7vL9JlCIYjG/LdBiyfci+gtNH?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: dda13b41-1ee7-4ad7-7f69-08dbbf32c9e9
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 08:21:46.0887
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: aJ9An48y1GRFXDwgWEYFmcSKKhsLPeTgki+AEDL5N7RoKhPgJdzaY1icUM21FsW9eDSS5DKlEHv1SZJNb+Q4QQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9996

On 15.09.2023 09:43, Roger Pau Monne wrote:
> The current logic to chose the preferred reboot method is based on the mode Xen
> has been booted into, so if the box is booted from UEFI, the preferred reboot
> method will be to use the ResetSystem() run time service call.
> 
> However, that method seems to be widely untested, and quite often leads to a
> result similar to:
> 
> Hardware Dom0 shutdown: rebooting machine
> ----[ Xen-4.18-unstable  x86_64  debug=y  Tainted:   C    ]----
> CPU:    0
> RIP:    e008:[<0000000000000017>] 0000000000000017
> RFLAGS: 0000000000010202   CONTEXT: hypervisor
> [...]
> Xen call trace:
>    [<0000000000000017>] R 0000000000000017
>    [<ffff83207eff7b50>] S ffff83207eff7b50
>    [<ffff82d0403525aa>] F machine_restart+0x1da/0x261
>    [<ffff82d04035263c>] F apic_wait_icr_idle+0/0x37
>    [<ffff82d040233689>] F smp_call_function_interrupt+0xc7/0xcb
>    [<ffff82d040352f05>] F call_function_interrupt+0x20/0x34
>    [<ffff82d04033b0d5>] F do_IRQ+0x150/0x6f3
>    [<ffff82d0402018c2>] F common_interrupt+0x132/0x140
>    [<ffff82d040283d33>] F arch/x86/acpi/cpu_idle.c#acpi_idle_do_entry+0x113/0x129
>    [<ffff82d04028436c>] F arch/x86/acpi/cpu_idle.c#acpi_processor_idle+0x3eb/0x5f7
>    [<ffff82d04032a549>] F arch/x86/domain.c#idle_loop+0xec/0xee
> 
> ****************************************
> Panic on CPU 0:
> FATAL TRAP: vector = 6 (invalid opcode)
> ****************************************
> 
> Which in most cases does lead to a reboot, however that's unreliable.
> 
> Change the default reboot preference to prefer ACPI over UEFI if available and
> not in reduced hardware mode.
> 
> This is in line to what Linux does, so it's unlikely to cause issues on current
> and future hardware, since there's a much higher chance of vendors testing
> hardware with Linux rather than Xen.
> 
> Add a special case for one Acer model that does require being rebooted using
> ResetSystem().  See Linux commit 0082517fa4bce for rationale.
> 
> I'm not aware of using ACPI reboot causing issues on boxes that do have
> properly implemented ResetSystem() methods.

A data point from a new system I'm still in the process of setting up: The
ACPI reboot method, as used by Linux, unconditionally means a warm reboot.
The EFI method, otoh, properly distinguishes "reboot=warm" from our default
of explicitly requesting cold reboot. (Without taking the EFI path, I
assume our write to the relevant BDA location simply has no effect, for
this being a legacy BIOS thing, and the system apparently defaults to warm
reboot when using the ACPI method.)

Clearly, as a secondary effect, this system adds to my personal experience
of so far EFI reboot consistently working on all x86 hardware I have (had)
direct access to. (That said, this is the first non-Intel system, which
likely biases my overall experience.)

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 08:23:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 08:23:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608735.947406 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPpt-0000oQ-Qt; Wed, 27 Sep 2023 08:23:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608735.947406; Wed, 27 Sep 2023 08:23:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPpt-0000oJ-Ma; Wed, 27 Sep 2023 08:23:57 +0000
Received: by outflank-mailman (input) for mailman id 608735;
 Wed, 27 Sep 2023 08:23:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlPps-0000oD-U4
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 08:23:56 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on20605.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::605])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 317fc072-5d0f-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 10:23:55 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by PAXPR04MB8175.eurprd04.prod.outlook.com (2603:10a6:102:1bc::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 08:23:51 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 08:23:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 317fc072-5d0f-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Twn44zZZS3fNKc13XoeVSYNExWI7dAJzLVVh+PJUVI7MIWMD+/TJrqyayALIjyZ9tccSv96IVkueqIKh0CVC92XmTbYbskEg90iTSMkcYIu5/K/Cngh7Tlm9BnoLp5B+/9buk2FC6/rxMt0dzjJZ9hcOM3VLBQW9RcRG7IA/DWnOGR5A0WEtpU26PUYONhVN5XCJgVm55NQY8Hv/x3OTSWJO/9e67A3EmNr+W3CxWZVxVbO2L9m+IPKzODhQI3v82t/LmeXjAgVunbHvGpkwUmnJG1nwE8bYJ3V2sgEYLjBmWc0WrONjOamqzYbz3Xj1/VvmVGQyeg6XvuI9hMDVeA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9/2z2lQAkQSM711vYBkwkAdNACvaX+6fRshVne93eAA=;
 b=PozSFw3akZtgAC42POBHfIOyoTNQRWXwRrQU+xydqAAn43VO49NKj1iL9kSoFjD8udiAiR/ePsPbeTOKQkv6elbHuZNp75molkfao0Rr3in+l/fLoFALD25kACHcLa3eHYgSSbCfYzwNhRv7PG91nYNQgI9bFm9y/b1ThqI10RWTO8VuDprMYsEuX1qBntSo+lWR2LzQPwhU+Jalf6tfHX5Q5Grp2PnF4vkQQH4kRGCV5NUNQu2dQ51D3Op1fNa5xaw9IB5inus47NELuMqzX7QJEGCR/Mt1AhvSqGMJV75bwMkHFW702YnsF0Z+I5jFf15zKpxiLPBZQ2Hjb74+DA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9/2z2lQAkQSM711vYBkwkAdNACvaX+6fRshVne93eAA=;
 b=iwpZwP9yJZAzhM6hehRkc85Z7BjwAwnBaqy9RLlFef6BoleIIWzjUYN3TnegbXFcWc4TG9J1vvuLi69cp5sQq6hWR/BVtPiWLih+LAX/viwpV7THnbEv0CoM6xAcz6h20f8995MzkAG/gIKYGSP6j77Tjfqh01RKO4n1Gtc2x4R/lJIf1MzYho/GKMpGQLAiyELc5SVEE9yCpELfmcBj4G1UwlwLy03w6x9vI4gEZbapNn0Nl0THMtiOiKT6CjNKqOHjhOran9ivoxcPIcii4o30vDKpDQGAeVWCoVKBZsALttmxIffWu9BZvDTAC/yUOsQFpex+7qthfwwtqcQJiA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3002e10a-29d9-45f0-c3c2-ef79ec775934@suse.com>
Date: Wed, 27 Sep 2023 10:23:49 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3] docs/misra: add rule 2.1 exceptions
Content-Language: en-US
To: Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Xen-devel <xen-devel@lists.xenproject.org>,
 "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
 "roger.pau@citrix.com" <roger.pau@citrix.com>,
 "george.dunlap@citrix.com" <george.dunlap@citrix.com>,
 "roberto.bagnara@bugseng.com" <roberto.bagnara@bugseng.com>,
 "julien@xen.org" <julien@xen.org>,
 Stefano Stabellini <stefano.stabellini@amd.com>
References: <20230908230318.1719290-1-sstabellini@kernel.org>
 <91d5ea6d-bdfa-45bf-a54b-5acdf1784ec4@xen.org>
 <alpine.DEB.2.22.394.2309111740160.1847660@ubuntu-linux-20-04-desktop>
 <156fac1ee8e37cddac95813f72a108e0@bugseng.com>
 <BEAF1369-C1FE-4B81-A0A1-5A4F39426E9E@arm.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <BEAF1369-C1FE-4B81-A0A1-5A4F39426E9E@arm.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0010.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1d::9) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PAXPR04MB8175:EE_
X-MS-Office365-Filtering-Correlation-Id: 6a62d08e-890b-4351-3806-08dbbf3314a3
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	kYHg4AZ3VV2v9NrMR92a285kTv9zAj5gEgjdFZXHbbKwO4VjqrhQ0bQLhTLeFZlmSdAsAxJkkkMLOFWnmK0YYD+XuUySBRWXzuHE7cccwsZ7hpwr3t5bawlh0RJdQ1qbcoBd5U10g5WE4/Z79vlHNMr2/PsxJMOccRmVZ5iLPykmrws4AOV5z5TbORDRoUD8ZCAZFgkp2jgD4S+sXSHyYVz5y000efTi7rnk4rOPAEeb7201rpFCZVmJUdZGkIL6KeLha45xyh4ZnPCKFz+Zq3nZt9Dwf+8xuGKRI5HRpcf7+auCMxtrL8Yy0wyVmC2mJDyIhmG2hxJIISurXmOV/Z7fqLzLEry45IZgIGgRfi1qnF3HJkpdR3VBUAPg9P3bjmA8M8lbtUJymo+vOkm1wgTEvRmp9qTxfC+DAKZ8QzLUxFGddD+JhIQMKFnsqsSuEGrBSQqwS6FosV7wQ7TkOB0GAjiDqFr3vNbXv9wyu6AJKSqLSR/kPX4za2n4sklFK0pjCpfHSAxpN9sTPjkGuYXP98MSG79Zl5wLyRfX6AolnXLxiEl6cRJlXTF1gSq+VtqZ6UCUXUGf6Z6JFosVPKJdlFdh0IxzLiFM1dROnsQejqmOgbLb/nCdKyGbGlhlTqfvyK/qp5a8XHiYtDa08w==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(346002)(39860400002)(376002)(366004)(230922051799003)(451199024)(1800799009)(186009)(7416002)(31686004)(66476007)(53546011)(2906002)(4744005)(54906003)(316002)(5660300002)(41300700001)(8936002)(8676002)(36756003)(4326008)(66556008)(2616005)(66946007)(86362001)(6486002)(110136005)(31696002)(6506007)(26005)(6512007)(38100700002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T2VOYTFEQktwd1BmNVg5Yi9TQkdoUXJoODNYODhocW5xVDFWWG55clQwenB1?=
 =?utf-8?B?Qy9SV25Pa0dsSFdZOW0wdVBlMnFqYmNMalVoZ1NtYW04Wkg0R0FpYzgzOENJ?=
 =?utf-8?B?OElKRHJGbmMrdkhKWUJNakdJaVVDOTdpV3FQS2llU0t3T2cweUY1NGVYOVJJ?=
 =?utf-8?B?c3BSRjRqOG4zc3o2TS9oMWFLQWhwWitkR2N1d3RjRnBjUXhubHBVRVRqTlZJ?=
 =?utf-8?B?ZDVpYmMvZUYxODBNeHJ1bVZQNTZiUkN0V1lXWktmQ2dpZ3BzRlJtaDcvczBH?=
 =?utf-8?B?aExyTW1WbmJ4S3JTMWxqdW9UNjBya1B1M1V2cG5nZE4wa2s4a0VjMHNJWVUw?=
 =?utf-8?B?K3NZOG9sT0F4TkM1RUxIN1oyZEpYa2h1dE1FTmptc0RtQ01meUxFS09YRzBx?=
 =?utf-8?B?YW5GNmZKWTV4c09xb2tpaEl6bTFBT3ovaVc4KzZwbWw0Q2U0SE5jQ3QzT0c2?=
 =?utf-8?B?T2FrR2s0Zm9uTnZhdzZMcllJalhqTkJReHlZSUdSeStQb3ZUQ2tBR0ZOU3l4?=
 =?utf-8?B?VHlyUDBzam5qbUNTRHZIb2plUjI4cXVvVEZ1blFRdml6SUZaTjJWd2RPUUhR?=
 =?utf-8?B?aEk3eGhySjNMOFlZd0l2ZzVoUEFXMDd4QTJiV2Eyb0lrV0gyekg2SmhPczBK?=
 =?utf-8?B?c1V1Q25Mb2JxaTVlZ1hQUHBKNmRQNlNqcnpiRjNoMFZKb2RxODV5SnpIVGFk?=
 =?utf-8?B?c29UUHlDY2x1YUNwUGhKMFpPNm16VHNoNVBleVhUUjVrblRCK04zaGdpeUp4?=
 =?utf-8?B?OUdYUUxSWldUWHhRU2g2cTdvWWhGL1JKeXVCcGgvUXg0M0k2WmRiWmcyUTJL?=
 =?utf-8?B?LytTbVZmTTI2YlI1bUMzTGNGRk5leHlNdVNyQ1dKRXIxUC9maWkrcEZaOXNQ?=
 =?utf-8?B?UE11bnpGNENyajVaMURmMUNUMzExZ2w1ZGF2ZTd4VzlYTVZoS2lRNFFmd1lB?=
 =?utf-8?B?L0lUbXNDcDgrQzhGaEhjSTN5WWthYkV6RytzNkZSZ29RcHluUVE2TUlSQ2dU?=
 =?utf-8?B?YXBmQ3VtNlNFWC9EVUlucXF1RWlHYWVVS1hLREgrN0lGYTlqMWZtaWV0c3JR?=
 =?utf-8?B?SmJzdnY2eVJudWtJUmRSeTBsVERocnZiSWFTQ2ZYQUV2alZBbVdPc2w4WE9s?=
 =?utf-8?B?RVN6WE5SZitDUis5NDlabG5xc2x5N0RhVGR1TUFtUDFQN3lGQ0YrNHZrODhi?=
 =?utf-8?B?ajhBUGZNVVYwNGVzRGtPM3p5ZzFZbXB3L3lOdk9CRzQ2T3FCeWc3L1lNb1kv?=
 =?utf-8?B?d3F2MWVsQk1XS0Q1N01EV0R1dUdsNFJBVHJ3ak9RM3dTQU10WlAxNUY3Szh2?=
 =?utf-8?B?Vm44R3JWZzUwQUJWYjVQdVI2bVR3TFJJUDRIV1JQb3pCVHJPano0NENnR21p?=
 =?utf-8?B?QTlkMjROUDVFSmlzYS9ZVzBvRjJlQnBWbCtEdm1Bb0JWclZSSzlZbGdKcUhj?=
 =?utf-8?B?NkY2Y1duR3ZqTHFTaGFmRjBqTFZEWUsxU21iWVJDWWpGMnZwcFovTWIzV3Vj?=
 =?utf-8?B?cDJ4eHEvNUxsRU1vRjZ4clArR1VXcmU0emdyL3dOUGo3NDR3d0FBNkgwQXlp?=
 =?utf-8?B?cE5lVzgyeVl0elkxelI0UUFBbVBlT3JXYVB4R2laaEcxV2l0WHdIbzdWTTBt?=
 =?utf-8?B?SkFYdC9DS29aUWpxc2dmcWR4NDQvM2lTMGpVTnAwQ3EvN29lampOWmIxN1c5?=
 =?utf-8?B?RUE3bkYwY09kU0dybGJ5SUJpRUxkNTBIK3RJVG1xTTg2OE9UMmNJVkNlSDdX?=
 =?utf-8?B?dU5BNUZiaWxMdUxhOWlGNHZNclVNSjZIU0JwVWp4UFVFY0c3VVZkSHBFUjcv?=
 =?utf-8?B?ME9oSkRLREtvMU1hM1hJMVJUV1ZYSHB6VTFON2N5WGxYTUlSTUJIN0dtYVpn?=
 =?utf-8?B?cFB6NkxDR3QyS25lSnhRSEZsZjNveDhMVVU2OG00ZmZ6MmRvakhHTmk3R2hx?=
 =?utf-8?B?WU1zRHhPOCtXbEFhaWxZdGxQRnlkQVhuVmU2d1VtV0locVpMTENxUWlvbHBC?=
 =?utf-8?B?VDFYU3RadVdRd3lJZVQ3YmZnb2ptWXd2Z2c3T3BKay9BMWxTQnhGbHo4OXg3?=
 =?utf-8?B?Y2pHc1VJY2txaUlubWhGYjAyUjhBMVBkUThlVWhyWmJZQ285djk5YWVuUjFn?=
 =?utf-8?Q?VQ1wpmVtcKs1eVWg2haM4R1Jf?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6a62d08e-890b-4351-3806-08dbbf3314a3
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 08:23:51.4443
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: U1GrrxbaOpTNze6xhZortGnFBFon2fl/NF8GsMFVoGc4RzHpseYN4WP5FGDWUaqWDhEY3cu4nV3TsyrCXxH89Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8175

On 27.09.2023 10:14, Bertrand Marquis wrote:
>> On 27 Sep 2023, at 09:53, Nicola Vetrini <nicola.vetrini@bugseng.com> wrote:
>> My opinion is that it's far easier for this to be an eclair configuration (which has the
>> advantage not to depend on the exact definition of unreachable) and then perhaps a comment
>> above it explaining the situation.
> 
> I agree here and it is easier to make an overall exception where we list the cases
> where this is acceptable (ie all flavors of unreacheable) and document that eclair
> was configured using "xxxx" to handle this.

What about cppcheck then, for example?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 08:29:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 08:29:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608738.947416 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPvE-0001UN-DO; Wed, 27 Sep 2023 08:29:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608738.947416; Wed, 27 Sep 2023 08:29:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlPvE-0001UG-9v; Wed, 27 Sep 2023 08:29:28 +0000
Received: by outflank-mailman (input) for mailman id 608738;
 Wed, 27 Sep 2023 08:29:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=pvhV=FL=gmail.com=k.kahurani@srs-se1.protection.inumbo.net>)
 id 1qlPvC-0001UA-Jj
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 08:29:26 +0000
Received: from mail-ed1-x535.google.com (mail-ed1-x535.google.com
 [2a00:1450:4864:20::535])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f7ac62ce-5d0f-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 10:29:25 +0200 (CEST)
Received: by mail-ed1-x535.google.com with SMTP id
 4fb4d7f45d1cf-522bd411679so12271501a12.0
 for <xen-devel@lists.xenproject.org>; Wed, 27 Sep 2023 01:29:25 -0700 (PDT)
Received: from localhost.localdomain ([105.29.162.58])
 by smtp.gmail.com with ESMTPSA id
 f3-20020a056402068300b005256771db39sm7763953edy.58.2023.09.27.01.29.22
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 27 Sep 2023 01:29:23 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f7ac62ce-5d0f-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695803365; x=1696408165; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=vqzMLrutU/O6W+UgakqlkbwTrx1oB6pMeuXfKi5IFhk=;
        b=mPQobPct1Tnq4LONiXlIwctGF0cRcHReA5dQAFs5ibRoFIVZkexSQcwUCbahjfGxZS
         UqrRJuPo4LorNXqrMykVm1Z64jNAjViC6xIuBeW/O40+Xj8O9XDaIhwwaiEAVdf5sBLO
         U3r3Psze7whGiLbaP22L610POIx6+gI4MP06g6sqv5O6DB0uSCDR4dssj8C2fWUZZnJr
         FopAZRvtYxpnXhr80xco1Qd6dIdWV8vpeBl/HYJF6c4tPTlCTZcwURprS7C4ENZmt4g2
         XRgoQvKA2ahoQ4mhwJ5EoX4G4ncpoB0QiRHfmsKue/69pCCrE2nPXviX4N0wMRpfctdt
         I8Rw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695803365; x=1696408165;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=vqzMLrutU/O6W+UgakqlkbwTrx1oB6pMeuXfKi5IFhk=;
        b=dmzoVWVHm57z5KzDsw8PV0cBlYaqdyUt0dZPdwfyR+Zx+n6kwvFQ0MY0h1OUCtG59c
         4e0USokmbEFKN4ed+pB20Hi71LEUkAo3TwS5VgH+1iQSY9uIIwgnHUPkWZ/+EXS2sC2C
         0k6nhFDPjs9zeQ8rlucgaWlTyhiUPNW126pK5POBjZewMdpnSfPAl4DrqrdwAk9VP6gD
         kWHLZR/r/ZwZ2IgQ6NF06sBZ1bU5GbTkTPLgjEih0zPesJIlnFNsg7TGhoAFH6kphbcr
         jRlXa5eywHmdypzOMMuxIVfn/u136VGEmrEK7f+3JUk0KwMqYtJ/3aWyFYp4JxvdU7kt
         Y4BQ==
X-Gm-Message-State: AOJu0YySMOu/nGvQVUQxk4rTi3cm9utgO3iXJ+n5EmMz4Co/sTr7vyV8
	PkodxHhhYJukTDD3Zx17q8iI10g1jE0=
X-Google-Smtp-Source: AGHT+IGEvtWog5f46DQVKz2/HPmkwyHuufDzJwb3m/0rrIctLdakAOfl6oDV0S96vLRTi2Q5xclp+g==
X-Received: by 2002:a50:ec8e:0:b0:525:680a:6b89 with SMTP id e14-20020a50ec8e000000b00525680a6b89mr1297725edr.12.1695803364420;
        Wed, 27 Sep 2023 01:29:24 -0700 (PDT)
From: David Kahurani <k.kahurani@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: netdev@vger.kernel.org,
	wei.liu@kernel.org,
	paul@xen.org,
	David Kahurani <k.kahurani@gmail.com>
Subject: [PATCH] net/xen-netback: Break build if netback slots > max_skbs + 1
Date: Wed, 27 Sep 2023 11:29:18 +0300
Message-Id: <20230927082918.197030-1-k.kahurani@gmail.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

If XEN_NETBK_LEGACY_SLOTS_MAX and MAX_SKB_FRAGS have a difference of
more than 1, with MAX_SKB_FRAGS being the lesser value, it opens up a
path for null-dereference. It was also noted that some distributions
were modifying upstream behaviour in that direction which necessitates
this patch.

Signed-off-by: David Kahurani <k.kahurani@gmail.com>
---
 drivers/net/xen-netback/netback.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/xen-netback/netback.c b/drivers/net/xen-netback/netback.c
index 88f760a7cbc3..df032e33787f 100644
--- a/drivers/net/xen-netback/netback.c
+++ b/drivers/net/xen-netback/netback.c
@@ -1005,6 +1005,7 @@ static void xenvif_tx_build_gops(struct xenvif_queue *queue,
 			break;
 		}
 
+		BUILD_BUG_ON(XEN_NETBK_LEGACY_SLOTS_MAX > MAX_SKB_FRAGS + 1);
 		if (ret >= XEN_NETBK_LEGACY_SLOTS_MAX - 1 && data_len < txreq.size)
 			data_len = txreq.size;
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 08:35:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 08:35:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608742.947425 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQ1M-0003wn-2R; Wed, 27 Sep 2023 08:35:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608742.947425; Wed, 27 Sep 2023 08:35:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQ1L-0003wg-Vu; Wed, 27 Sep 2023 08:35:47 +0000
Received: by outflank-mailman (input) for mailman id 608742;
 Wed, 27 Sep 2023 08:35:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=gzin=FL=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qlQ1K-0003wa-0r
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 08:35:46 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on061d.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::61d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d86c8f82-5d10-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 10:35:43 +0200 (CEST)
Received: from DU2PR04CA0357.eurprd04.prod.outlook.com (2603:10a6:10:2b4::32)
 by PR3PR08MB5643.eurprd08.prod.outlook.com (2603:10a6:102:84::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 08:35:40 +0000
Received: from DBAEUR03FT015.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:2b4:cafe::8a) by DU2PR04CA0357.outlook.office365.com
 (2603:10a6:10:2b4::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Wed, 27 Sep 2023 08:35:40 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT015.mail.protection.outlook.com (100.127.142.112) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.21 via Frontend Transport; Wed, 27 Sep 2023 08:35:39 +0000
Received: ("Tessian outbound b5a0f4347031:v175");
 Wed, 27 Sep 2023 08:35:39 +0000
Received: from 33b2da8bef87.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B859A5BE-61B9-4D66-8844-D2FDA0194BA0.1; 
 Wed, 27 Sep 2023 08:35:33 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 33b2da8bef87.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 27 Sep 2023 08:35:33 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AM8PR08MB6321.eurprd08.prod.outlook.com (2603:10a6:20b:366::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Wed, 27 Sep
 2023 08:35:30 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::30ea:681d:5fa7:8bfb]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::30ea:681d:5fa7:8bfb%2]) with mapi id 15.20.6813.027; Wed, 27 Sep 2023
 08:35:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d86c8f82-5d10-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=86OamnCMVa5pJ00d/xp8aesPGroyMFzkrPYMH5PwLE0=;
 b=qh/XCtzzAzc8xOIywblW4W378UwezmzmlsQsro5gYdXtRMPokVHUnt0ZQ4o5DaTn9noT47UBok1QdDwOaS7F7OBuuQfIB6r4J1BCACO23uik5lgmKRHmqcNVlE2lNR1lxC0qzJk06RNLB7q5E2x47sGYaIY0+vANbju6zIaCc8I=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: b673784065c41747
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cb3xczLXXaJ2/4V6ADJN7/68ZLKY2ovWdCLmgpWvD/t7mJ7c8tKXGfFfUgEi+X11APAFswTNmOXlG4p6qOwOdfwhihshn8kPGOG0sbf8/Tn4tKZEJwHCGZPfDn4O/iMeXWfpIBeJknDgba5eKGTyrPijwStAqqwOd3MWfKWC2PiigMcJkqvAQKziBOIy2n2sQWCA1Mgf/o8gTZGhdY+7tCUcvT+3lBNKcD2whSTyoH3brxKNwM6gE4iNZ/e77H1BK6VWNzLlvfQVYI7Qkze68LLaCg9Vz/Dp/eV0CwJG3mE4aaA04GX259RECchwn8KrgyAlomB9DcwMPp/qPA0GVw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=86OamnCMVa5pJ00d/xp8aesPGroyMFzkrPYMH5PwLE0=;
 b=CWghVJYeKrDHflYxj+oIqGFzyO7bWz7r4HH5VgJqLMIbvZoJdmySEC4XCDQ2cRoF41uVEzj1mqYRlfWU7J8coWJznsn0h4DZQ3GXsDnU3jkTaid5u4Uzz2GSTZFvgv98yLQ5bXcP+FB0/EOXvWNia8VZ0EB1rN57v/AabjFXvF8OR6fEvJPsk6vrIwbyDs4DQxeB6bgLsdE5SwPmUL4+38yWQzUrlX48IHuC95SayGYpQbjhK8S/JWdLfuf8Iqrqlk0Jl+TWRDK7HxPIZG9HsRQaG/uzv4wuoC+aJbJqHcLi21pLU9aAJnbl6nriRhSPHnf5vv0NPiVUcoOwxBSKPw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=86OamnCMVa5pJ00d/xp8aesPGroyMFzkrPYMH5PwLE0=;
 b=qh/XCtzzAzc8xOIywblW4W378UwezmzmlsQsro5gYdXtRMPokVHUnt0ZQ4o5DaTn9noT47UBok1QdDwOaS7F7OBuuQfIB6r4J1BCACO23uik5lgmKRHmqcNVlE2lNR1lxC0qzJk06RNLB7q5E2x47sGYaIY0+vANbju6zIaCc8I=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Jan Beulich <jbeulich@suse.com>, Luca Fancellu <Luca.Fancellu@arm.com>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Xen-devel <xen-devel@lists.xenproject.org>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, "george.dunlap@citrix.com"
	<george.dunlap@citrix.com>, "roberto.bagnara@bugseng.com"
	<roberto.bagnara@bugseng.com>, "julien@xen.org" <julien@xen.org>, Stefano
 Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] docs/misra: add rule 2.1 exceptions
Thread-Topic: [PATCH v3] docs/misra: add rule 2.1 exceptions
Thread-Index:
 AQHZ4qiwUwH3koR9JUa91LeAyizAArAVxOqAgACZsICAGAuKgIAABdgAgAAClICAAAM2gA==
Date: Wed, 27 Sep 2023 08:35:30 +0000
Message-ID: <971283B6-65BB-4D5F-BB04-E1C8A2AC0826@arm.com>
References: <20230908230318.1719290-1-sstabellini@kernel.org>
 <91d5ea6d-bdfa-45bf-a54b-5acdf1784ec4@xen.org>
 <alpine.DEB.2.22.394.2309111740160.1847660@ubuntu-linux-20-04-desktop>
 <156fac1ee8e37cddac95813f72a108e0@bugseng.com>
 <BEAF1369-C1FE-4B81-A0A1-5A4F39426E9E@arm.com>
 <3002e10a-29d9-45f0-c3c2-ef79ec775934@suse.com>
In-Reply-To: <3002e10a-29d9-45f0-c3c2-ef79ec775934@suse.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|AM8PR08MB6321:EE_|DBAEUR03FT015:EE_|PR3PR08MB5643:EE_
X-MS-Office365-Filtering-Correlation-Id: 54ddf8fb-b9b3-4180-2396-08dbbf34baf2
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 Rwx+b7IXu3iv+EPFfay/UjKTkFSryk2ZWD7K2hbtK+hoyIxRoKu8EcsnnBdIv1IhYXbaKOrut+Tk1vR3GGSYvCFq2krIXuFHCGt+22Fd6k2ec+IFh6g3P0mTgybFTmRomHjY5YtTobfbB4bhkoGcQlm8F4tLUORAg6NZRttMX8qRzXld5Ln0nlk0j2sO/ZHtFIav1TL6tefw07it1eVk3EVnJPXPR8Ynaf8++u9/efGKBFXLhmDYLpDRWlUWEe/fY6OOb5jsvJUJlY8devwbkKJsSG6bnFtgHfPzTvmnkZEl8lB81Uo/6vMJBU5reGbFIzdvKfJQDuayM0rMEMLv12OUG/UThpvufHmQlR3JtYBtDrQ7L5hx2hEYKxQdYjGPW8N8VwD4eipdtztwIer7F47j87OYnJVOeFJ3H/yGhEvfRpHXmprBPJRYO5uJKwy3/vGIrcoRn4ChPaZmrL4q20s35h2vQxWt7TJiLX1A574Vgvc9w6nO/AvwBc9NLIfdRBM2hoKVbhbaJJ9TQBbUqoI/zNl6sUpZQobMFGlB+D0PfEtu3+gvtX5fXhlOfGFtSngPg5zys6Ft5pgif20YJLnG7jow8jMbzM9MpHOo6jgjb9jciX4Yh5I3yEgtZlPl7bGF1huMNnbNMr1VBvlLNA==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(396003)(366004)(346002)(39860400002)(230922051799003)(1800799009)(186009)(451199024)(2616005)(53546011)(6512007)(38070700005)(122000001)(33656002)(36756003)(86362001)(38100700002)(76116006)(91956017)(110136005)(4744005)(2906002)(7416002)(316002)(54906003)(64756008)(6636002)(66946007)(66556008)(8676002)(66476007)(66446008)(41300700001)(4326008)(8936002)(5660300002)(71200400001)(6506007)(6486002)(478600001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <8E8D69CF487A554A9BCC371B737E6EF1@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6321
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT015.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	b8fd6586-d436-4b93-0358-08dbbf34b547
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	2LTh86T8C2Y4Awl6cLtvBxy40BfkwjIRZMd9NkJYHIpoNpOxBqq+O2igSfMmSotGnmCChIN1Gl/+oeukaAch8MzVS8YX8i4beB6h/90wqEgULF85Xf/lwRVB96cEeOUhHy00uTsSx12of3mX/9F/U0q69TLQQ3qFm7XNqTzSZNN4f0Seeg5XZUFDP6C1SL+GauMit8MErYwICByKz5/Lq8TrDEQxUN2SQwjgtpzjeux7F+jr2/lwim3lQ9MUsBBMt573xS6SuqH9wQjw04MeN7d8JOdgjzU/Fh0zMOeYRX1igtqCYr2r/2jCy6MNGM0Hl73ZdwkNkvcNPbjrDI3muDAjUkmeyFvmwUedwN1xTqH/WmYxYNo3bKp6PGaaFYL735t24uUb93lh7pMWN1JB0ZoChAu1MP7LfDmCw4plJid1hk5mcgzR42Tp3kAh1rJs63rHsr/F1FhqVI88fKixs1BUsIR/uGpbMKkPfEYelKlU9VcoIg34F3pZchalwRyZkxLBYvB80Biv+QMbcM4P4+Yh58TrdXXX6KAWt92OvIIq337+oRxuuhJZIMtzjlqzmV45xCyBAXXnzxWi7ZaG8iLIhUycBuYghU+mL5cw4Msqti3F2v1E2M5Ep5+6FzAcWErBdvGs815toS5vEvaBzyZZ6vwP/zAIpvpII/EhwBj07/cxo0UJNtdVNd6gX1T+lO1ax3Puz/nAB0C0hR3Fx82EQgNJXWdA6ifb02Tgl2DMopzrj5fXsAlhMVc8SXFE
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(396003)(376002)(136003)(230922051799003)(451199024)(1800799009)(82310400011)(186009)(36840700001)(40470700004)(46966006)(6636002)(316002)(41300700001)(336012)(40480700001)(26005)(2906002)(4744005)(8676002)(5660300002)(478600001)(8936002)(70206006)(110136005)(70586007)(4326008)(54906003)(6486002)(53546011)(6506007)(40460700003)(6512007)(36860700001)(47076005)(2616005)(36756003)(81166007)(33656002)(86362001)(356005)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 08:35:39.8067
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 54ddf8fb-b9b3-4180-2396-08dbbf34baf2
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT015.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5643

Hi Jan,

> On 27 Sep 2023, at 10:23, Jan Beulich <jbeulich@suse.com> wrote:
>=20
> On 27.09.2023 10:14, Bertrand Marquis wrote:
>>> On 27 Sep 2023, at 09:53, Nicola Vetrini <nicola.vetrini@bugseng.com> w=
rote:
>>> My opinion is that it's far easier for this to be an eclair configurati=
on (which has the
>>> advantage not to depend on the exact definition of unreachable) and the=
n perhaps a comment
>>> above it explaining the situation.
>>=20
>> I agree here and it is easier to make an overall exception where we list=
 the cases
>> where this is acceptable (ie all flavors of unreacheable) and document t=
hat eclair
>> was configured using "xxxx" to handle this.
>=20
> What about cppcheck then, for example?

Good point we should check if cppcheck or coverity can do such things.
@Luca: any idea ?

Cheers
Bertrand

>=20
> Jan
>=20



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 08:41:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 08:41:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608748.947436 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQ6v-0005VD-NA; Wed, 27 Sep 2023 08:41:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608748.947436; Wed, 27 Sep 2023 08:41:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQ6v-0005V6-K5; Wed, 27 Sep 2023 08:41:33 +0000
Received: by outflank-mailman (input) for mailman id 608748;
 Wed, 27 Sep 2023 08:41:32 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=XInx=FL=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qlQ6u-0005SW-Ic
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 08:41:32 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a76f5d14-5d11-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 10:41:30 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-11-204-216.retail.telecomitalia.it [87.11.204.216])
 by support.bugseng.com (Postfix) with ESMTPSA id A883D4EE0737;
 Wed, 27 Sep 2023 10:41:29 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a76f5d14-5d11-11ee-9b0d-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Tamas K Lengyel <tamas@tklengyel.com>,
	Alexandru Isaila <aisaila@bitdefender.com>,
	Petre Pircalabu <ppircalabu@bitdefender.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	George Dunlap <george.dunlap@citrix.com>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH] x86/mem_access: address violations of MISRA C:2012 Rule 8.3
Date: Wed, 27 Sep 2023 10:41:20 +0200
Message-Id: <98bfdda2d3aa12c68a4be86535a6f39e6167a8e5.1695803386.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function declarations and definitions consistent.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/mem_access.h | 2 +-
 xen/arch/x86/mm/mem_access.c          | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/include/asm/mem_access.h b/xen/arch/x86/include/asm/mem_access.h
index 8957e1181c..1a52a10322 100644
--- a/xen/arch/x86/include/asm/mem_access.h
+++ b/xen/arch/x86/include/asm/mem_access.h
@@ -39,7 +39,7 @@ int p2m_set_suppress_ve(struct domain *d, gfn_t gfn, bool suppress_ve,
 
 struct xen_hvm_altp2m_suppress_ve_multi;
 int p2m_set_suppress_ve_multi(struct domain *d,
-                              struct xen_hvm_altp2m_suppress_ve_multi *suppress_ve);
+                              struct xen_hvm_altp2m_suppress_ve_multi *sve);
 
 int p2m_get_suppress_ve(struct domain *d, gfn_t gfn, bool *suppress_ve,
                         unsigned int altp2m_idx);
diff --git a/xen/arch/x86/mm/mem_access.c b/xen/arch/x86/mm/mem_access.c
index c472fa1ee5..3449e0ee85 100644
--- a/xen/arch/x86/mm/mem_access.c
+++ b/xen/arch/x86/mm/mem_access.c
@@ -70,7 +70,7 @@ static int _p2m_get_mem_access(struct p2m_domain *p2m, gfn_t gfn,
 }
 
 bool p2m_mem_access_emulate_check(struct vcpu *v,
-                                  const vm_event_response_t *rsp)
+                                  const struct vm_event_st *rsp)
 {
     xenmem_access_t access;
     bool violation = true;
@@ -129,7 +129,7 @@ bool p2m_mem_access_emulate_check(struct vcpu *v,
 
 bool p2m_mem_access_check(paddr_t gpa, unsigned long gla,
                           struct npfec npfec,
-                          vm_event_request_t **req_ptr)
+                          struct vm_event_st **req_ptr)
 {
     struct vcpu *v = current;
     gfn_t gfn = gaddr_to_gfn(gpa);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 08:44:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 08:44:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608754.947446 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQ9W-00074B-83; Wed, 27 Sep 2023 08:44:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608754.947446; Wed, 27 Sep 2023 08:44:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQ9W-000744-5S; Wed, 27 Sep 2023 08:44:14 +0000
Received: by outflank-mailman (input) for mailman id 608754;
 Wed, 27 Sep 2023 08:44:13 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=x8T5=FL=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qlQ9V-00073y-5i
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 08:44:13 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on2061e.outbound.protection.outlook.com
 [2a01:111:f400:fe12::61e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 07b76f1f-5d12-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 10:44:11 +0200 (CEST)
Received: from DUZPR01CA0129.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4bc::12) by DB3PR08MB8987.eurprd08.prod.outlook.com
 (2603:10a6:10:431::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 08:44:08 +0000
Received: from DBAEUR03FT009.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4bc:cafe::38) by DUZPR01CA0129.outlook.office365.com
 (2603:10a6:10:4bc::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Wed, 27 Sep 2023 08:44:08 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT009.mail.protection.outlook.com (100.127.143.21) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.21 via Frontend Transport; Wed, 27 Sep 2023 08:44:08 +0000
Received: ("Tessian outbound 1eb4e931b055:v175");
 Wed, 27 Sep 2023 08:44:08 +0000
Received: from 23a30c9c77b2.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 1953A756-560E-4AEE-B9C7-8024DD98B2A8.1; 
 Wed, 27 Sep 2023 08:44:00 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 23a30c9c77b2.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 27 Sep 2023 08:44:00 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS2PR08MB10349.eurprd08.prod.outlook.com (2603:10a6:20b:57b::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Wed, 27 Sep
 2023 08:43:58 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 08:43:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 07b76f1f-5d12-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=queAXpxFvEJvWHH2TYufzcn7w14nTe1pJDfXIHMkqV0=;
 b=eoKT/QDXKozJLqPjXm9lh7HI+w0Rwk5R2JGJ6LBuZd6fJ10AB2gLNfSRIMj2POypqiSuopb1nZiaJs2dqxoAQV0GMrqQpUwpzBtoOPB0NDCAGC+SHEA/ngqWAbtqBDZ7emy2fzPjWOvos2W182hIrsoOKCkne8xdvCPlz4UoAeU=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 3960adfbac5ac29e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LZ8LO/5mTDGfkKfIbLmfmbm23a6PgEO5qiXnD+D5d9CZJ11zCR+jVuL1p7hWgQ+6fNB6hbgpjaNdIYpFZw1Bm7tKPAoMMPUhVLngJrYpr5C6H3D0VR5ICxsTJZzY7cBVOSQqUVYTW6RdssawapcoqKFF95x3kLORjial67MCbba/aQVUGXLiovFCr2zSHSGIgThkw8F2M33UkaMmaev2HpK8hpUUEyF4bXJUr3EbizcyLi3SfR2gSokftpCnQnB8BV0f8Q1FOIuHNq7E1TN7rXcBpkag7nK22n6HdMqhhSFXy+HWEwzIcQuANE427FOdwO/eXqRfwOoG1D9+GyOMrQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=queAXpxFvEJvWHH2TYufzcn7w14nTe1pJDfXIHMkqV0=;
 b=OXBaVxgnAzVY+jj06bHM0Tp2e8/vyMjy0DOs77WEItkD/pSL6QYIAdAc8sj2BSV32i+MXwNXd+IHfmgHQfL0liHHBGt/EOubMNIKek2/iXDV6foEg2z0S+89QRj7z3N9fXY6Ef5+SKCmcFHDKEr7fgS0Iofoix+u1/OkDn2Ym9zvjFvssh7y2p6FX4TBkQbnLmuHEfKoiG4oHF33SDa6pV3HsCC+xNRI95xVnMauN1WqJjUxeIcWNdz4yCKOdkZcxlBCmlwXvzSqTFvpeQC3rJoLmqNov1g5EcOFOyrB1BxmsG9TwGD2wijDgzl/qWQbEtdmX0ICesGtNB3Aj0wI4A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=queAXpxFvEJvWHH2TYufzcn7w14nTe1pJDfXIHMkqV0=;
 b=eoKT/QDXKozJLqPjXm9lh7HI+w0Rwk5R2JGJ6LBuZd6fJ10AB2gLNfSRIMj2POypqiSuopb1nZiaJs2dqxoAQV0GMrqQpUwpzBtoOPB0NDCAGC+SHEA/ngqWAbtqBDZ7emy2fzPjWOvos2W182hIrsoOKCkne8xdvCPlz4UoAeU=
From: Henry Wang <Henry.Wang@arm.com>
To: Federico Serafini <federico.serafini@bugseng.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, "consulting@bugseng.com"
	<consulting@bugseng.com>, Tamas K Lengyel <tamas@tklengyel.com>, Alexandru
 Isaila <aisaila@bitdefender.com>, Petre Pircalabu
	<ppircalabu@bitdefender.com>, Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, =?iso-8859-1?Q?Roger_Pau_Monn=E9?=
	<roger.pau@citrix.com>, Wei Liu <wl@xen.org>, George Dunlap
	<george.dunlap@citrix.com>
Subject: Re: [XEN PATCH] x86/mem_access: address violations of MISRA C:2012
 Rule 8.3
Thread-Topic: [XEN PATCH] x86/mem_access: address violations of MISRA C:2012
 Rule 8.3
Thread-Index: AQHZ8R5ur38dz3PpMkONgvDlWV1gY7AuWziA
Date: Wed, 27 Sep 2023 08:43:58 +0000
Message-ID: <CEAFB237-C948-493D-A796-75BC04AA6D70@arm.com>
References:
 <98bfdda2d3aa12c68a4be86535a6f39e6167a8e5.1695803386.git.federico.serafini@bugseng.com>
In-Reply-To:
 <98bfdda2d3aa12c68a4be86535a6f39e6167a8e5.1695803386.git.federico.serafini@bugseng.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS2PR08MB10349:EE_|DBAEUR03FT009:EE_|DB3PR08MB8987:EE_
X-MS-Office365-Filtering-Correlation-Id: 07181798-f464-42ed-4bf6-08dbbf35ea28
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 238zDqPfuu7dmY/UdtQ8ZS9iqm+CCN4POY9bBdbBZCSkDyFn+LHKNAg2yIUo6EiXXCfG+QbXzGSbbgMllcgfNIv2yaxSNYksYsc4onBOiZfnRpMmP9HvtVz5vIHe5kSclW1JnI2EWxb9Fv8DPPmyIsCVu/gXGbgZzKq+jRBJQkg5Kqv5UhpntMVHMqWNRkZZ5A7x0cWzDply1gpa6UtVGcBo2GtehBAf774DvC90Nj5+cYvZckaQ7n2bULaIKz15DTKFMpp6ZCWOST/7KrSF0WNAnTzWL3lHQZRFSct51tvDzP2m2BqcpCNGC7xfVvHvKVr6/dO/gfO0qnn22meFxodKRLkYh1YN2LE6fJ1rmaKmltjUdtvNzdzc/Vzzm30dx9YU3ts3Uh6v9CynI49QggfE0C6DIZLAhYJcVX7ZN4ktvWPz9KoPEopfJQW3upVTAq3ZEsSef1Y5j2T3OPeg1/bRNFhm+knQurknOJCF11r7yPqo2udJRCzCRzmKKwBk/3DRAtROMjkD0wV++r3aiw/muTdHShx5Uf2XfUOf8jF+DygYM2qGnUdO4IrX4b6WGf7P5j/tiVPolKGvLF2spSPRTg4n6RT+mlXOqBjwBm3R8jqcrsASO0DzW4QJZpdWGkmvJbPGjqZiwMHbRB2Yhw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(346002)(376002)(39860400002)(136003)(230922051799003)(451199024)(1800799009)(186009)(53546011)(478600001)(6486002)(6506007)(71200400001)(38070700005)(38100700002)(122000001)(2616005)(7416002)(41300700001)(2906002)(26005)(6512007)(36756003)(86362001)(33656002)(558084003)(66476007)(6916009)(66556008)(316002)(5660300002)(91956017)(66946007)(76116006)(54906003)(64756008)(66446008)(8936002)(4326008)(8676002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <AE8D27A1DFAF4C4CBEEBA3CE47E968EF@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB10349
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT009.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	cd326f7e-ab2d-4aa3-2454-08dbbf35e3e6
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OOje7uhwOu6eBGr0VJHo7XHwXpySQGNEvIi5GsDmJROrgCiWnEHukATVDumGjr+k1/oor3qImgQALJubnEP9DVggtncW18H4j5qx/YlpcHYec8/M0C1tlwnuzMwMkrJMeezsAaIh5gDrKdZaGcW1IFwPwgxGt+x05dtBdNcpfw3Pj5FksCnUZ1u+uzEZ0mwIOKB9wPRf/JcwCDjs05+IKaLZ3BGO6Hdg0SVwsXVClSTU8pf/RsGQXj1oQPlLEClsJwGPJSa1GfE9pYMfOqApwE+V21mBqRrYUuksfdBB2ox1C+lGPMJUh4rx1wf8Onrm37adT4iO52llAMQRMAlcY5DzLmroJ2I9DbFwj6J3Dcyd2aH5RqHdBn1U4tpLq8n7WYL/aioyrVV1WLFxT2QlthoKigJjyVsKf5lxqNVEzrGxKs/nFRCw9d5lECb3ZGy2YmG9xwNTpNsgL9umJgZJMDvM00A9rMqy0fzaHVgC+UVbSDBIBOHUak0mP3Y01cUm+a2KdinRDqckxOvPfcIJlQZISE+WrGwbJ4w5c9DB3sv+/JaNZ2a+NjEUW5HVFDLdpSluYrDGklR4shSlCHpG62LTRi9inLRHweOzblr4VofBQUtQZxOHd+3eF0w1eCM+IUDcf7R3f9+xiBd9ZzidyRTeJ4eMGijm4psq785s0mUzI2Ae9HvVzbsInU7eerA4hnhp/kIyk2AXUCIwBHfcoHF9GRILP57Q7fg0JO+Yxvc=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(39850400004)(396003)(136003)(346002)(230922051799003)(451199024)(1800799009)(186009)(82310400011)(36840700001)(46966006)(40470700004)(54906003)(82740400003)(6512007)(40460700003)(336012)(5660300002)(2906002)(41300700001)(4744005)(316002)(40480700001)(36756003)(4326008)(8676002)(8936002)(6862004)(86362001)(33656002)(6486002)(478600001)(47076005)(26005)(36860700001)(6506007)(53546011)(2616005)(70206006)(81166007)(70586007)(356005)(107886003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 08:44:08.5426
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 07181798-f464-42ed-4bf6-08dbbf35ea28
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT009.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB8987

Hi Federico,

> On Sep 27, 2023, at 16:41, Federico Serafini <federico.serafini@bugseng.c=
om> wrote:
>=20
> Make function declarations and definitions consistent.
> No functional change.
>=20
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

This looks like a harmless change so with proper review:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 08:47:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 08:47:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608759.947455 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQCo-0007fr-MP; Wed, 27 Sep 2023 08:47:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608759.947455; Wed, 27 Sep 2023 08:47:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQCo-0007fk-Jn; Wed, 27 Sep 2023 08:47:38 +0000
Received: by outflank-mailman (input) for mailman id 608759;
 Wed, 27 Sep 2023 08:47:36 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlQCm-0007fa-UB; Wed, 27 Sep 2023 08:47:36 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlQCm-0005cn-KQ; Wed, 27 Sep 2023 08:47:36 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlQCm-0007mT-72; Wed, 27 Sep 2023 08:47:36 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlQCm-0001Ox-6R; Wed, 27 Sep 2023 08:47:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=X3fkH/qJuYVWPJyfImBi8IEJdEjdqjB9EhyBFAf+YdA=; b=MJuVt9TmGgUZd5O/J7w4kC+uLd
	aQGpZkt2AtWssIh0TbORGEiBWzh3S03gW/4hEYgFEXkjfMHkuSeqZ/hJ2FucGJxy5/KDMyDnuRuLq
	PUfDlg+YifldpT0hbJjNWW2voCDJHdL6ntecSpqxfybHp8XFuYIyW3smeGCGzxp9jJIc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183183-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183183: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start.2:fail:regression
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 27 Sep 2023 08:47:36 +0000

flight 183183 linux-5.4 real [real]
flight 183191 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183183/
http://logs.test-lab.xenproject.org/osstest/logs/183191/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1  19 guest-start.2  fail in 183144 REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit2  14 guest-start      fail in 183144 pass in 183183
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183144 pass in 183183
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail in 183144 pass in 183183
 test-armhf-armhf-xl-credit1  18 guest-start/debian.repeat  fail pass in 183144

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail blocked in 182613
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 183144 like 182613
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat    fail  like 182613
 test-armhf-armhf-xl-arndale  18 guest-start/debian.repeat    fail  like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   25 days
Testing same since   183129  2023-09-23 09:20:22 Z    3 days    8 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 08:52:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 08:52:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608765.947466 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQHC-000190-Bk; Wed, 27 Sep 2023 08:52:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608765.947466; Wed, 27 Sep 2023 08:52:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQHC-00018t-8o; Wed, 27 Sep 2023 08:52:10 +0000
Received: by outflank-mailman (input) for mailman id 608765;
 Wed, 27 Sep 2023 08:52:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WUTS=FL=citrix.com=prvs=6275c33bf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlQHA-00017G-Ai
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 08:52:08 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1fead117-5d13-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 10:52:03 +0200 (CEST)
Received: from mail-dm6nam10lp2101.outbound.protection.outlook.com (HELO
 NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.101])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 27 Sep 2023 04:51:58 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB5701.namprd03.prod.outlook.com (2603:10b6:510:42::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Wed, 27 Sep
 2023 08:51:53 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Wed, 27 Sep 2023
 08:51:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1fead117-5d13-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695804724;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=ifczG3gDwzpZ09KzLREvMbXokeIBT1evuLOg7NU4WWQ=;
  b=U86qJrHKoeSgbO8bX65QqOAP2xtXmMfj9n4KoEDv6X/ghMaev+GKXKJN
   Atf9nX4M1bdZ9C6FvZ6s0twMksnyCppQgoQu6QNu9bp1HwaGlYgX0ix21
   GpOMyD5pGN1uz0DRZpHOTX1T1uTO1ErARz3lWSpy+HsyVLwPS1ynl+97I
   0=;
X-CSE-ConnectionGUID: 6fdC0PifRTyDk++B1Rp60g==
X-CSE-MsgGUID: SpR/CXaqTRu1pJTMZIp60A==
X-IronPort-RemoteIP: 104.47.58.101
X-IronPort-MID: 122561250
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:LH1JN6iWD8lclX7Lytuumie8X161rhEKZh0ujC45NGQN5FlHY01je
 htvXW7XPvzfZWDzfIh/O4zkoBkB6pGHyNc2TQVsq3tnFysb9cadCdqndUqhZCn6wu8v7q5Ex
 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOhTraCYmYoHVMMpB4J0XpLg/Q+jpNjne+3CgaMv
 cKai8DEMRqu1iUc3lg8sspvkzsx+qyp0N8klgZmP6sT7QWBzyB94K83fsldEVOpGuG4IcbiL
 wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ
 OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+
 tRGJjwmNiiCidiK0Z64CapG3/47cpHkadZ3VnFIlVk1DN4AaLWaG+DmwIEd2z09wMdTAfzZe
 swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEhluG1abI5efTTLSlRtlyfq
 W/cuXzwHzkRNcCFyCrD+XWp7gPKtXqhAt9MTeflrpaGhnWo3lZUIy0fTGeBvKChqHKbafNHd
 RQ9r39GQa8asRbDosPGdx+yrWOAvxUcc8FNCOB84waIooLE7gDcCmUaQzppbN09qNRwVTEsz
 kWOnd7iGXpoqrL9YXCA8raZqxuiNC5TKnUNDQcfVhcM6dTnpIA1jzrMQ8xlHarzicf6cRnvx
 xiaoS54gK8c5fPnzI2+9FHDxj6p+J7AS1dt4h2NBzr8qARkeISieoqkr0DB6upNJ5qYSV/Hu
 2UYn8+Z76YFCpTleDGxfdjh1YqBv56tWAAwS3Y1d3X931xBI0KeQL0=
IronPort-HdrOrdr: A9a23:/2t/w6D0ou1PHy7lHemW55DYdb4zR+YMi2TDgXoBLiC9Ffbo9P
 xG/c566faasl0ssR0b8+xoW5PgfZq/z/FICNIqTNOftWDd0QOVxedZgLcKqAePJ8SRzIJgPQ
 gLSdkZNDVdZ2IK7/oTQWODYrMd/OU=
X-Talos-CUID: =?us-ascii?q?9a23=3AqetDMmghz158bqeyKe9vW+FYDTJuLHPR5y/oIkG?=
 =?us-ascii?q?CNXdFS/7WYwaq4P08nJ87?=
X-Talos-MUID: =?us-ascii?q?9a23=3AaP1NmwxxnQ8vKa7I7Ig7q/zyW1eaqJ+2MgcmoZw?=
 =?us-ascii?q?fh/OZbDRSBxKvrSzpGqZyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,179,1694750400"; 
   d="scan'208";a="122561250"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=d8P/CFVPzWIjrVGBlvUh1TPh/2rodeKMpLJSMN4laOfkp2JhLntitPNVFHw+3l011wmklH64noIXuVQ7H6rJuTUvESfkPPMo9igmLG9SjnH3cjrhciE1kZP/5rAJ4I0Qr36NT+touwzFBJRTZtaVQ4nmzb8Mf+Ks3yhgYemnFgE0pXbg5zGOF9po5sSXFyePHbnrxnrY5WHZ0h27II7ifEdtZP8pHp+9QbMBEk+a/mOvn4VIQj2B/l//DId0KPBxR5C5NuX+GkvpZq+bT894NT/38otXY1lX99Zma1zTuzOnPEcwHCrDMmb46IzXN8G8umBY3yNrX+uNBfIggd6wNA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iBP2dem1+W3ItgTKgjV9ElVRPiBWNJq1NfzwdJ3YMOg=;
 b=b4b8wNfAHI0gMz36d2OsvKOzTES7ETaeM2J+wwQyize2w41EpdyDmkRgFGuiJS6q70fNh4Ym3tkgIO9ovKMpKeUjwOWezz7kdcg+HH8JcYRLo0lluMfhkrFWnYt+JFD18Xhh7NrY+I1B3rK68lczWD196TppXuoxPrxjRfZHZMBqaVhXMJSuSafFYaoVh7s6pSMI+ufsAPiIrbY0t+q73cGE/lIBxfQygdrFkSBVqNjWMvJ/d6uvKshIrjR9HU5zY1jO0stRmWYcp/tC8og9pAUm4/0s/7JQyeTmUthj1CpTZvL0+P5oIALETDFMqNkQiYDTvX1ugNoOI6I7IIht+A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iBP2dem1+W3ItgTKgjV9ElVRPiBWNJq1NfzwdJ3YMOg=;
 b=Ys2c2M4PvoqGcb6GXQ7xVeTGq+Xofr5if76XlyG+bWdr+++5FCzUb4VgDDl4KXNJElQBLg1+oduQqTgKfbQJC+TltE+7T53VbG0zbJRHTaTi4YJRXdtClugf8Usbty0AsFTeORZrFzl9rLrSSp+A1teBjlVTWtfGNGbtvPryUAo=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 27 Sep 2023 10:51:47 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v3 1/8] domain: GADDR based shared guest area
 registration alternative - teardown
Message-ID: <ZRPtI9UfgpCfQ4HU@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <68cdb299-c41c-b6a5-c9ce-bd915508ecf2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <68cdb299-c41c-b6a5-c9ce-bd915508ecf2@suse.com>
X-ClientProxiedBy: LO4P265CA0248.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:350::8) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB5701:EE_
X-MS-Office365-Filtering-Correlation-Id: 76986c3a-7bd5-4020-4a02-08dbbf36ff1e
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	1XAHv586ey27BFTjVRWAj0xMfhnJgX1BT2tH0NOaFeInCiCAQgzjZEpyaU4Gz/24zSiElFPkw9p+2IW5ZV+1gfLWcQ6UAVs+MSUymJ8xagBtN/fQOX2W4TFhzGZJtzftWb/DtFtEnmBoMeSnYO9yvtYDTlJIHgz92Y2R1lLZhylhbXX4FeZwfr2zYA0vDp+kNSjv3BHb0nNwQ2SRpFNgpigJtLEzAMb7YyOnQDlL2PoJ/DWUqK/Dujw16cFxFymEpCxsQHuRFd0+VOOkMyxSOWeoiu4zqpv9PQDTDTO2HMzP6LKBwo9znWdCn+TaNJcrJ7Ps39Q5u7LioRZnSoEbCbkENkGc1UgoQyWzFS6jLSOVlZjb33bMsajqlGoxGs/GRCDJlMYXAp8OP1gNp/Z7R/xzjt7i7tbMreL+i4H3tUc4wEE0kRfsqxXfmc8j1KQlr2yo0YGfqXPaIOnRPWUAgMCVepy/z+FyG/UxEy927ZGM7aaziIrvQB2VCftx+OCMURDk/cPi7Js9m9WrbJNqj8MDohCpb7j89PBHpxXo3K/xReksaGvJPt/J3nx7Ute+
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(396003)(39860400002)(366004)(376002)(346002)(136003)(230922051799003)(451199024)(1800799009)(186009)(316002)(54906003)(6916009)(66556008)(66476007)(66946007)(5660300002)(8936002)(41300700001)(8676002)(4326008)(83380400001)(6666004)(9686003)(6506007)(6486002)(6512007)(33716001)(85182001)(38100700002)(478600001)(82960400001)(86362001)(26005)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ekxRMC9JODQ0SWJQVDExYkVvcGRjNWswRlF4elNKMDg4OG0yQXFhWGhPdHZD?=
 =?utf-8?B?ZE5NcnhWbWdCR1cwOUJTZUI3MXUxVHF6SFh1WW9ITnZCa254Zk1hY29OTEJz?=
 =?utf-8?B?ZzRZWm1nZ2NLZ2JYY2hRaVlPOC90SGZuRElPa0hpRHkxZFVsSVlqbkJVelBT?=
 =?utf-8?B?Z0FQU0RJOG1SWWFSN2xteWVDWDhOWGVDT3BKWHZ6K0xTR0YrRmxCQytaMnZY?=
 =?utf-8?B?blptUHlvSjYvbExXTkdUVTRIMGduaThmVDcwTUZIbEp4Y1A4b2syVVJBUEVQ?=
 =?utf-8?B?OU5CSUZtVGNZT2RUREl2T0g1czdPSDJuTjlUaEZJQmYwVUZxMGpjTDVvZUsv?=
 =?utf-8?B?L0xPMy9sNUtBdXpRdTlTNExROXF3QTJ2ZC8ydmo3UTlKaGRobzgvWmZkVmkw?=
 =?utf-8?B?eWY1K3RVd1dkSFVDSzN0UTRMYzBYNnBPa1I1TXdBWlVtb2FzRUZOVVlUM2Mz?=
 =?utf-8?B?N0ZjOVlZdjYyMUhUMnI2YVNlSC9TeldtWm0zajlhaWgvSE5hdTloU2YwYVdy?=
 =?utf-8?B?UkR4OXd0ajR6cEw4SkFOeWFOLzltbm0xNFN4N3NWWjVkVzhhd2U4MGJSSEky?=
 =?utf-8?B?cFB2RnlXMCtBdjhIOC9mK2loQVVSelpITFlOWnU2WlR4bkhnZ0lvUGJCeENn?=
 =?utf-8?B?RHpIK0ZrUkNZemtXOGR5N1BrMnZGd1dueUdwUU1udjZLMFBkOHZ3YXZ6TGtG?=
 =?utf-8?B?VFFRRllFUXlGVmdkaU9zM3RRaUVTVUljK0pLaEx6aDc3MVhJekw4L0NKOUU3?=
 =?utf-8?B?ZXhNRGROUzl4T3hBNGVmYUphMDhVazhRZzJIK3BaRjZWTG43VEVMdFdEUHdM?=
 =?utf-8?B?Qlh2VXN3MkRvVjVVS0NXYWI1KzdJTCtOalNjRmYzaFB4RlY5ekVQanMzUXM5?=
 =?utf-8?B?YlFvUDgwbVltWWdWOHNGUFlCM3QyREttbmtEQzdsVTNKT3hpYnE1QS80YjFS?=
 =?utf-8?B?dmMwZzVWRVl1U2ZudXFUSU1FSWU0bUd5R0lya0IzN1RsM09BWEJtRE5JTG4y?=
 =?utf-8?B?VGxYR1Fya1JxL1ozTk50K2VrODhyQnpOVnJnS1VQeHl3djY5VHFkK216QUxP?=
 =?utf-8?B?cGU1YXEvL1N0UDJ4YTFLVVkvb0tEQkpuaEdsbnJtc1NWQWNtUXB6ZlR4K2tY?=
 =?utf-8?B?cTZMbGVseGxGZDVxdFQ1M3dEd1hPNEpBVnFmc0ZjYnRuVFFmRVhkZ29FV0hM?=
 =?utf-8?B?U1JzN3NkRHU0SENNSFZmSEFhT2hmd1ZualM3LzN6c1V0b1BWTm85MnpXNEcx?=
 =?utf-8?B?RXhvUEJLdDN3d2dvYXc4ekJ4TnJmZUEzdWYyVCtrckhpdkhPbitHdS9BUEM1?=
 =?utf-8?B?b3VKdWs3N3h5b0N4aFkrV0s3ZzlGbnhLNFErakRoTEJsZDhmcFd5Z2MrdzBO?=
 =?utf-8?B?NURZcWJOeFpIWm9QYXhzd3FVMTVmZWRHNE1LTGNVVTZTR0RPWVZ2RWpMeThB?=
 =?utf-8?B?NUR3NFo2UmpSSTViWCt0YUVxQXdkSzBzQzBPck5GeUdXVTdWV3dudkdnTUtD?=
 =?utf-8?B?Vk95RThNU2l6bzBCVXYzM01LeWszMEVrQWs1NnQrdmdQbnBhOEtJcXJJUnJ4?=
 =?utf-8?B?eW9Db0IzN3QyTjVsMVhJcTBMSjdZWmNpMTliSGhDQTlvNzc3ZjNXMGgrSzNP?=
 =?utf-8?B?bmk1QXovZUluUk1zUUdiWk4zb0RqTFZrcXFGS1prNHFIR0xKU2paYlRyVzZG?=
 =?utf-8?B?ZVRhWisvbDBtSVVHLzVQbm1qZzZKcjF6SjFpWGhlN0ZheHdzU3JYV1dsRUhz?=
 =?utf-8?B?Q2pTQ0s0ZEM4cGk1Z0dRbEpvWDdrOGVTQmR1dng5ZEE4VWhKOWNaT29wWHVz?=
 =?utf-8?B?NWpuL1RiZ3pqSDZRajgzNk4yRU4xcWRLbVoxTzBMSDRMdjd2RmQ0b2VBanRk?=
 =?utf-8?B?VHdlV2daYlUxeTlyMVhubXdSU0FCaXBzYjJtZGRLd3dCVlVrQXpHUW96ay9X?=
 =?utf-8?B?NlprZ2ZLbEZsMWNMdmFSQjB1VFdhM3BtQWRkb0o2aUlZeHlYVCt6Nk5MaWJC?=
 =?utf-8?B?K2RlY3BlN0dBc2xwUVFZZ09yVUZkOU5EUUF6S094RklmbjhOdkZTQ3RwTHBS?=
 =?utf-8?B?UDZRVWFuYzFiR0dQTEczZHQwV2Y0eUFKQnkyYTVwcVdmTTNadkRsRDJKRDJo?=
 =?utf-8?B?TVh1cnFoYWx1bHV0WFFaWVhCSlBhVmxndUhVNU9DWUF3dDVnSGJLZVJORFZI?=
 =?utf-8?B?Vmc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	OPRd6fXb13tq2bQ9X79/kf3y6OpJf6bdA/JTeuyxyNnzplHdKJGWIGp6EXSfS6e5zfRleqqdbN1ppYoIoqhoYWbllEbKyaDv/1oQ+MfwesFaPsGU3/X+fJGHkIQPpjprbPOXMl2zgeE3u+PEt31oazvpNpjKmn+ywR0DRbTj3L0rwyawO9iELoHo95rh6e4nkF/j++Jt+Ajl/YF2/We8ENn+1Mq5eNUoVF4Ms2qHqoSpbFthaVUMnwKHld5d+CR/Ft73IU9tOn9dZ7sz5JZ2B/mUSSRrww3LG/bhkphveeOrsJWpvs72J/yt5T1yxUXXg1Ie9P0JbDhjoXJJHUSl79yLAVFF2LMSMhzY5XEOujDZn05lllduEnzzK4xPhEYr1Zo67EoZtVnMCzPwD5+QKcJe0FgwMlP/lj1jphYp9CwbXYVNMdEtmRTO/AWgL+XQVlc4z100gK1tOAcds353SBsSzvaVC0d+lIThKgpXjoAgjgXIEOwIHd5gO07rX/XhHRHM8dEec1bVPM08aH7HjNy8GCkhADhYkwo20VvMMJippti/74aAFfx2LBU6gjD4kefkreqAEYbuHYTd5xrgnqTEc1shORlU/TNG2HtRj4+QZcF5llLzMAyYZ+kANEoCkedhnI1jTUFH0AsZTxhxLCzgeULViyl64Dca2y/VIMpLOybigOegb5NxQhF0jFdQM+bD53fFi7rl4tM4x2BuBFfBzmtx8Fmq2ZNRVcnymszqNBbKDFfRVQNlAWTD42mef6MYRUoimgcLJMysYbCDlj0h6tQTH8unXHwv7XQw37JsTEFvvnn3FxmyFMVGwMMSUCtdot9Szb0HgKSU3fVey2fKkh3EYB9Epj2ZK0+3+zs=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 76986c3a-7bd5-4020-4a02-08dbbf36ff1e
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 08:51:53.5620
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: /vd91kUZ38TNCHBwt+GjSUGuKoJfoZelj0gMc3J9WdHW1tiz4S4nJUi47NaimR8bWLKrsuXlAT3b8zltXVj8WA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB5701

On Wed, May 03, 2023 at 05:54:47PM +0200, Jan Beulich wrote:
> In preparation of the introduction of new vCPU operations allowing to
> register the respective areas (one of the two is x86-specific) by
> guest-physical address, add the necessary domain cleanup hooks.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> Reviewed-by: Julien Grall <jgrall@amazon.com>
> ---
> RFC: Zapping the areas in pv_shim_shutdown() may not be strictly
>      necessary: Aiui unmap_vcpu_info() is called only because the vCPU
>      info area cannot be re-registered. Beyond that I guess the
>      assumption is that the areas would only be re-registered as they
>      were before. If that's not the case I wonder whether the guest
>      handles for both areas shouldn't also be zapped.

IIRC the reason was to unset v->vcpu_info_mfn so that it could be set
again on resume from suspension, or else the hypercall will return an
error.

I guess we should also zap the runstate handlers, or else we might
corrupt guest state.

> ---
> v2: Add assertion in unmap_guest_area().
> 
> --- a/xen/arch/x86/domain.c
> +++ b/xen/arch/x86/domain.c
> @@ -1019,7 +1019,10 @@ int arch_domain_soft_reset(struct domain
>      }
>  
>      for_each_vcpu ( d, v )
> +    {
>          set_xen_guest_handle(v->arch.time_info_guest, NULL);
> +        unmap_guest_area(v, &v->arch.time_guest_area);
> +    }
>  
>   exit_put_gfn:
>      put_gfn(d, gfn_x(gfn));
> @@ -2356,6 +2359,8 @@ int domain_relinquish_resources(struct d
>              if ( ret )
>                  return ret;
>  
> +            unmap_guest_area(v, &v->arch.time_guest_area);
> +
>              vpmu_destroy(v);
>          }
>  
> --- a/xen/arch/x86/include/asm/domain.h
> +++ b/xen/arch/x86/include/asm/domain.h
> @@ -669,6 +669,7 @@ struct arch_vcpu
>  
>      /* A secondary copy of the vcpu time info. */
>      XEN_GUEST_HANDLE(vcpu_time_info_t) time_info_guest;
> +    struct guest_area time_guest_area;
>  
>      struct arch_vm_event *vm_event;
>  
> --- a/xen/arch/x86/pv/shim.c
> +++ b/xen/arch/x86/pv/shim.c
> @@ -382,8 +382,10 @@ int pv_shim_shutdown(uint8_t reason)
>  
>      for_each_vcpu ( d, v )
>      {
> -        /* Unmap guest vcpu_info pages. */
> +        /* Unmap guest vcpu_info page and runstate/time areas. */
>          unmap_vcpu_info(v);
> +        unmap_guest_area(v, &v->runstate_guest_area);
> +        unmap_guest_area(v, &v->arch.time_guest_area);
>  
>          /* Reset the periodic timer to the default value. */
>          vcpu_set_periodic_timer(v, MILLISECS(10));
> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -963,7 +963,10 @@ int domain_kill(struct domain *d)
>          if ( cpupool_move_domain(d, cpupool0) )
>              return -ERESTART;
>          for_each_vcpu ( d, v )
> +        {
>              unmap_vcpu_info(v);
> +            unmap_guest_area(v, &v->runstate_guest_area);
> +        }
>          d->is_dying = DOMDYING_dead;
>          /* Mem event cleanup has to go here because the rings 
>           * have to be put before we call put_domain. */
> @@ -1417,6 +1420,7 @@ int domain_soft_reset(struct domain *d,
>      {
>          set_xen_guest_handle(runstate_guest(v), NULL);
>          unmap_vcpu_info(v);
> +        unmap_guest_area(v, &v->runstate_guest_area);
>      }
>  
>      rc = arch_domain_soft_reset(d);
> @@ -1568,6 +1572,19 @@ void unmap_vcpu_info(struct vcpu *v)
>      put_page_and_type(mfn_to_page(mfn));
>  }
>  
> +/*
> + * This is only intended to be used for domain cleanup (or more generally only
> + * with at least the respective vCPU, if it's not the current one, reliably
> + * paused).
> + */
> +void unmap_guest_area(struct vcpu *v, struct guest_area *area)

vcpu param could be const given the current code, but I assume this
will be changed by future patches.  Same could be said about
guest_area but I'm confident that will change.

> +{
> +    struct domain *d = v->domain;
> +
> +    if ( v != current )
> +        ASSERT(atomic_read(&v->pause_count) | atomic_read(&d->pause_count));

Isn't this racy?  What guarantees that the vcpu won't be kicked just
after the check has been performed?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 09:35:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 09:35:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608775.947482 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQwS-0001bA-MS; Wed, 27 Sep 2023 09:34:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608775.947482; Wed, 27 Sep 2023 09:34:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQwS-0001aC-H3; Wed, 27 Sep 2023 09:34:48 +0000
Received: by outflank-mailman (input) for mailman id 608775;
 Wed, 27 Sep 2023 09:34:47 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=yPii=FL=suse.cz=jack@srs-se1.protection.inumbo.net>)
 id 1qlQwR-0001XY-8r
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 09:34:47 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1782fe29-5d19-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 11:34:44 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 967601FD5E;
 Wed, 27 Sep 2023 09:34:43 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 779CF13A74;
 Wed, 27 Sep 2023 09:34:43 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id YqW3HDP3E2X+EgAAMHmgww
 (envelope-from <jack@suse.cz>); Wed, 27 Sep 2023 09:34:43 +0000
Received: by quack3.suse.cz (Postfix, from userid 1000)
 id DAA33A07C9; Wed, 27 Sep 2023 11:34:42 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1782fe29-5d19-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa;
	t=1695807283; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:  content-transfer-encoding:content-transfer-encoding;
	bh=8yq/EWr5xgyIq2expGTOm/a8E50tdoL6jyUvlCURtkA=;
	b=AFBlD5DhZEt1NESHiYyz8SkegLzofp7eJ1WULrYqvNawr6FwYRs8YvfnxMMuueLH4oaPAr
	4/E8CfUtgD9JCSYdgqDNPTGf3WDqWggCkDqswdM4bg88sfMPDeWHH5NIlB2Bfj+JpMt9FG
	ZcOWlzLEUXG/bpJ8Kbaqy4vRi+qRmpA=
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz;
	s=susede2_ed25519; t=1695807283;
	h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:  content-transfer-encoding:content-transfer-encoding;
	bh=8yq/EWr5xgyIq2expGTOm/a8E50tdoL6jyUvlCURtkA=;
	b=mg4W9cwL1b35dhDAXFy+IpXoqDtwwHWZKy46oqV5YDeY2A866tqG4ZHrqCDezVtTxVLjRN
	B2SqzI+xFxiJavDw==
From: Jan Kara <jack@suse.cz>
To: Christian Brauner <brauner@kernel.org>
Cc: <linux-fsdevel@vger.kernel.org>,
	<linux-block@vger.kernel.org>,
	Christoph Hellwig <hch@infradead.org>,
	Jan Kara <jack@suse.cz>,
	Alasdair Kergon <agk@redhat.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Anna Schumaker <anna@kernel.org>,
	Chao Yu <chao@kernel.org>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	"Darrick J. Wong" <djwong@kernel.org>,
	Dave Kleikamp <shaggy@kernel.org>,
	David Sterba <dsterba@suse.com>,
	dm-devel@redhat.com,
	drbd-dev@lists.linbit.com,
	Gao Xiang <xiang@kernel.org>,
	Jack Wang <jinpu.wang@ionos.com>,
	Jaegeuk Kim <jaegeuk@kernel.org>,
	jfs-discussion@lists.sourceforge.net,
	Joern Engel <joern@lazybastard.org>,
	Joseph Qi <joseph.qi@linux.alibaba.com>,
	Kent Overstreet <kent.overstreet@gmail.com>,
	linux-bcache@vger.kernel.org,
	linux-btrfs@vger.kernel.org,
	linux-erofs@lists.ozlabs.org,
	linux-ext4@vger.kernel.org,
	linux-f2fs-devel@lists.sourceforge.net,
	linux-mm@kvack.org,
	linux-mtd@lists.infradead.org,
	linux-nfs@vger.kernel.org,
	linux-nilfs@vger.kernel.org,
	linux-nvme@lists.infradead.org,
	linux-pm@vger.kernel.org,
	linux-raid@vger.kernel.org,
	linux-s390@vger.kernel.org,
	linux-scsi@vger.kernel.org,
	linux-xfs@vger.kernel.org,
	"Md. Haris Iqbal" <haris.iqbal@ionos.com>,
	Mike Snitzer <snitzer@kernel.org>,
	Minchan Kim <minchan@kernel.org>,
	ocfs2-devel@oss.oracle.com,
	reiserfs-devel@vger.kernel.org,
	Sergey Senozhatsky <senozhatsky@chromium.org>,
	Song Liu <song@kernel.org>,
	Sven Schnelle <svens@linux.ibm.com>,
	target-devel@vger.kernel.org,
	Ted Tso <tytso@mit.edu>,
	Trond Myklebust <trond.myklebust@hammerspace.com>,
	xen-devel@lists.xenproject.org
Subject: [PATCH v4 0/29] block: Make blkdev_get_by_*() return handle
Date: Wed, 27 Sep 2023 11:34:06 +0200
Message-Id: <20230818123232.2269-1-jack@suse.cz>
X-Mailer: git-send-email 2.35.3
MIME-Version: 1.0
X-Developer-Signature: v=1; a=openpgp-sha256; l=3761; i=jack@suse.cz; h=from:subject:message-id; bh=szriGynEGZ/XhMNms+k06ASpRGig2ulDzrbrydRWx/Q=; b=owEBbQGS/pANAwAIAZydqgc/ZEDZAcsmYgBlE/cIrHCVKGuvNFZzgT9xiRfuRKr6Es2Qs4om7G7p jp8k2rmJATMEAAEIAB0WIQSrWdEr1p4yirVVKBycnaoHP2RA2QUCZRP3CAAKCRCcnaoHP2RA2XGWB/ 4+O+K19fPnUyIouL+A+izJvDBxQbTCWLdn5TEMu5YdIMbi0dvnwAfknt+NWIhJaTQX2oqlgt3Z+UIT peMYb+jQZabj8X4xHMMy3Sfq64tRwodJHlZby5Ux9AfTZe49zDp4M4B3yxQqarEhmz6e4FJUGDaSej vcJmLz6AuSnYuAh4QK/3jCXQrEElZRTjarZjfbunWocM/2dQ7CB+rOSwKJcRMoDpqntU8QyArxca4l q6I2pBMNjnYMgjtG+ABGSBtTrj87TuJSTB3V8qtI38sfCYjMVVEoQiJKuUm1GMh2sPOFelwVMXMCJH mKs8UbSjcFd3wsbJXc8EOKLxzYparl
X-Developer-Key: i=jack@suse.cz; a=openpgp; fpr=93C6099A142276A28BBE35D815BC833443038D8C
Content-Transfer-Encoding: 8bit

Hello,

this is a v3 of the patch series which implements the idea of blkdev_get_by_*()
calls returning bdev_handle which is then passed to blkdev_put() [1]. This
makes the get and put calls for bdevs more obviously matching and allows us to
propagate context from get to put without having to modify all the users
(again!). In particular I need to propagate used open flags to blkdev_put() to
be able count writeable opens and add support for blocking writes to mounted
block devices. I'll send that series separately.

The series is based on Btrfs tree's for-next branch [2] as of today as the
series depends on Christoph's changes to btrfs device handling.  Patches have
passed some reasonable testing - I've tested block changes, md, dm, bcache,
xfs, btrfs, ext4, swap. More testing or review is always welcome. Thanks! I've
pushed out the full branch to:

git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs.git bdev_handle

to ease review / testing. Christian, can you pull the patches to your tree
to get some exposure in linux-next as well? Thanks!

Changes since v3:
* Rebased on top on btrfs tree

Changes since v2:
* Rebased on top of current vfs tree
* Added some acks
* Reflected minor nits from Christoph
* Added missing conversion of blkdev_put() calls in cramfs and erofs
* Fixed possible leak of bdev handle in xfs if logdev is the same as fs dev

Changes since v1:
* Rebased on top of current vfs tree
* Renamed final functions to bdev_open_by_*() and bdev_release()
* Fixed detection of exclusive open in blkdev_ioctl() and blkdev_fallocate()
* Fixed swap conversion to properly reinitialize swap_info->bdev_handle
* Fixed xfs conversion to not oops with rtdev without logdev
* Couple other minor fixups

								Honza

[1] https://lore.kernel.org/all/ZJGNsVDhZx0Xgs2H@infradead.org
[2] git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux.git for-next

CC: Alasdair Kergon <agk@redhat.com>
CC: Andrew Morton <akpm@linux-foundation.org>
CC: Anna Schumaker <anna@kernel.org>
CC: Chao Yu <chao@kernel.org>
CC: Christian Borntraeger <borntraeger@linux.ibm.com>
CC: Coly Li <colyli@suse.de
CC: "Darrick J. Wong" <djwong@kernel.org>
CC: Dave Kleikamp <shaggy@kernel.org>
CC: David Sterba <dsterba@suse.com>
CC: dm-devel@redhat.com
CC: drbd-dev@lists.linbit.com
CC: Gao Xiang <xiang@kernel.org>
CC: Jack Wang <jinpu.wang@ionos.com>
CC: Jaegeuk Kim <jaegeuk@kernel.org>
CC: jfs-discussion@lists.sourceforge.net
CC: Joern Engel <joern@lazybastard.org>
CC: Joseph Qi <joseph.qi@linux.alibaba.com>
CC: Kent Overstreet <kent.overstreet@gmail.com>
CC: linux-bcache@vger.kernel.org
CC: linux-btrfs@vger.kernel.org
CC: linux-erofs@lists.ozlabs.org
CC: <linux-ext4@vger.kernel.org>
CC: linux-f2fs-devel@lists.sourceforge.net
CC: linux-mm@kvack.org
CC: linux-mtd@lists.infradead.org
CC: linux-nfs@vger.kernel.org
CC: linux-nilfs@vger.kernel.org
CC: linux-nvme@lists.infradead.org
CC: linux-pm@vger.kernel.org
CC: linux-raid@vger.kernel.org
CC: linux-s390@vger.kernel.org
CC: linux-scsi@vger.kernel.org
CC: linux-xfs@vger.kernel.org
CC: "Md. Haris Iqbal" <haris.iqbal@ionos.com>
CC: Mike Snitzer <snitzer@kernel.org>
CC: Minchan Kim <minchan@kernel.org>
CC: ocfs2-devel@oss.oracle.com
CC: reiserfs-devel@vger.kernel.org
CC: Sergey Senozhatsky <senozhatsky@chromium.org>
CC: Song Liu <song@kernel.org>
CC: Sven Schnelle <svens@linux.ibm.com>
CC: target-devel@vger.kernel.org
CC: Ted Tso <tytso@mit.edu>
CC: Trond Myklebust <trond.myklebust@hammerspace.com>
CC: xen-devel@lists.xenproject.org

Previous versions:
Link: http://lore.kernel.org/r/20230629165206.383-1-jack@suse.cz # v1
Link: http://lore.kernel.org/r/20230810171429.31759-1-jack@suse.cz # v2


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 09:35:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 09:35:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608774.947476 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQwS-0001Xl-Cw; Wed, 27 Sep 2023 09:34:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608774.947476; Wed, 27 Sep 2023 09:34:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlQwS-0001Xe-9y; Wed, 27 Sep 2023 09:34:48 +0000
Received: by outflank-mailman (input) for mailman id 608774;
 Wed, 27 Sep 2023 09:34:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=yPii=FL=suse.cz=jack@srs-se1.protection.inumbo.net>)
 id 1qlQwQ-0001XS-Bm
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 09:34:46 +0000
Received: from smtp-out2.suse.de (smtp-out2.suse.de [2001:67c:2178:6::1d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 17770de1-5d19-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 11:34:44 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 307D91FD61;
 Wed, 27 Sep 2023 09:34:44 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 1C91813A74;
 Wed, 27 Sep 2023 09:34:44 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id rZ71BjT3E2UWEwAAMHmgww
 (envelope-from <jack@suse.cz>); Wed, 27 Sep 2023 09:34:44 +0000
Received: by quack3.suse.cz (Postfix, from userid 1000)
 id 19095A07D6; Wed, 27 Sep 2023 11:34:43 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 17770de1-5d19-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa;
	t=1695807284; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=yUF1w/Fu5CgpkWZuk6MnW2aWHnUEG6OO2sOqetnT5qI=;
	b=o5vh8m0+hJeisOFrPvzZxxF622daywm37qK+dLjHaFld77YpoYo7/dxUjf6q6qXPJaihZ5
	2CKqNnAps1DKfJknBnUGTXxZceogXf2VXxFRUcGH2CJyiATi+l/Cjiq76EsqwNQidmm31Y
	4z6806tNCi8nX8ACA0HyIGuwhdS3qjA=
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz;
	s=susede2_ed25519; t=1695807284;
	h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=yUF1w/Fu5CgpkWZuk6MnW2aWHnUEG6OO2sOqetnT5qI=;
	b=Dn2GDcmVot4rTpFtMFG61g/qGoqGrtmFDDhCAyPlFJio0XGHbCWu2PqXZnmTGoatlOI5Ci
	upwogbtFiOx7pgCg==
From: Jan Kara <jack@suse.cz>
To: Christian Brauner <brauner@kernel.org>
Cc: <linux-fsdevel@vger.kernel.org>,
	<linux-block@vger.kernel.org>,
	Christoph Hellwig <hch@infradead.org>,
	Jan Kara <jack@suse.cz>,
	xen-devel@lists.xenproject.org,
	Christoph Hellwig <hch@lst.de>
Subject: [PATCH 07/29] xen/blkback: Convert to bdev_open_by_dev()
Date: Wed, 27 Sep 2023 11:34:13 +0200
Message-Id: <20230927093442.25915-7-jack@suse.cz>
X-Mailer: git-send-email 2.35.3
In-Reply-To: <20230818123232.2269-1-jack@suse.cz>
References: <20230818123232.2269-1-jack@suse.cz>
MIME-Version: 1.0
X-Developer-Signature: v=1; a=openpgp-sha256; l=6244; i=jack@suse.cz; h=from:subject; bh=TaZiZckOSGj4kkgk+WRmyzrudx2mpauq7xTcSHOyXPE=; b=owEBbQGS/pANAwAIAZydqgc/ZEDZAcsmYgBlE/cXNUOZ2xrLsHPosRGhi4bPdCFE0jlagzsJ3AOG pU2bThWJATMEAAEIAB0WIQSrWdEr1p4yirVVKBycnaoHP2RA2QUCZRP3FwAKCRCcnaoHP2RA2TQdB/ 9OablWl7HEtMGjuylNbIwBggmVd2s+LncfqcYu4Iag0U3e6fudWGn/SGfuATLOzvzrsnx65VB1/bcJ Q5MEEfVsaE7EPYiet3Y9U9PiOjW6H8VbyWlanTx3JVUtgruDbkumYuxg4GK/O5f4piOri8drH8cXBG nX6v5DTf9/xyhSudDPpc/J8zj92ZIDDn4D2iGZZAR00OZ0057fIwokjXkfcV60XZa3zWPIFgU7xFx9 gX3HU03OMY9rnZalZsvxccbcF0nti4v+CFf6UQluud3FE+nqPecm1JzXZ/mh1NPj9GbVnzunOaK3tD HqoYWRXL8fZmCG0wDIgxpoAR95E88i
X-Developer-Key: i=jack@suse.cz; a=openpgp; fpr=93C6099A142276A28BBE35D815BC833443038D8C
Content-Transfer-Encoding: 8bit

Convert xen/blkback to use bdev_open_by_dev() and pass the
handle around.

CC: xen-devel@lists.xenproject.org
Acked-by: Christoph Hellwig <hch@lst.de>
Acked-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Jan Kara <jack@suse.cz>
---
 drivers/block/xen-blkback/blkback.c |  4 +--
 drivers/block/xen-blkback/common.h  |  4 +--
 drivers/block/xen-blkback/xenbus.c  | 40 +++++++++++++++--------------
 3 files changed, 25 insertions(+), 23 deletions(-)

diff --git a/drivers/block/xen-blkback/blkback.c b/drivers/block/xen-blkback/blkback.c
index c362f4ad80ab..4defd7f387c7 100644
--- a/drivers/block/xen-blkback/blkback.c
+++ b/drivers/block/xen-blkback/blkback.c
@@ -465,7 +465,7 @@ static int xen_vbd_translate(struct phys_req *req, struct xen_blkif *blkif,
 	}
 
 	req->dev  = vbd->pdevice;
-	req->bdev = vbd->bdev;
+	req->bdev = vbd->bdev_handle->bdev;
 	rc = 0;
 
  out:
@@ -969,7 +969,7 @@ static int dispatch_discard_io(struct xen_blkif_ring *ring,
 	int err = 0;
 	int status = BLKIF_RSP_OKAY;
 	struct xen_blkif *blkif = ring->blkif;
-	struct block_device *bdev = blkif->vbd.bdev;
+	struct block_device *bdev = blkif->vbd.bdev_handle->bdev;
 	struct phys_req preq;
 
 	xen_blkif_get(blkif);
diff --git a/drivers/block/xen-blkback/common.h b/drivers/block/xen-blkback/common.h
index 40f67bfc052d..5ff50e76cee5 100644
--- a/drivers/block/xen-blkback/common.h
+++ b/drivers/block/xen-blkback/common.h
@@ -221,7 +221,7 @@ struct xen_vbd {
 	unsigned char		type;
 	/* phys device that this vbd maps to. */
 	u32			pdevice;
-	struct block_device	*bdev;
+	struct bdev_handle	*bdev_handle;
 	/* Cached size parameter. */
 	sector_t		size;
 	unsigned int		flush_support:1;
@@ -360,7 +360,7 @@ struct pending_req {
 };
 
 
-#define vbd_sz(_v)	bdev_nr_sectors((_v)->bdev)
+#define vbd_sz(_v)	bdev_nr_sectors((_v)->bdev_handle->bdev)
 
 #define xen_blkif_get(_b) (atomic_inc(&(_b)->refcnt))
 #define xen_blkif_put(_b)				\
diff --git a/drivers/block/xen-blkback/xenbus.c b/drivers/block/xen-blkback/xenbus.c
index bb66178c432b..e34219ea2b05 100644
--- a/drivers/block/xen-blkback/xenbus.c
+++ b/drivers/block/xen-blkback/xenbus.c
@@ -81,7 +81,7 @@ static void xen_update_blkif_status(struct xen_blkif *blkif)
 	int i;
 
 	/* Not ready to connect? */
-	if (!blkif->rings || !blkif->rings[0].irq || !blkif->vbd.bdev)
+	if (!blkif->rings || !blkif->rings[0].irq || !blkif->vbd.bdev_handle)
 		return;
 
 	/* Already connected? */
@@ -99,12 +99,13 @@ static void xen_update_blkif_status(struct xen_blkif *blkif)
 		return;
 	}
 
-	err = sync_blockdev(blkif->vbd.bdev);
+	err = sync_blockdev(blkif->vbd.bdev_handle->bdev);
 	if (err) {
 		xenbus_dev_error(blkif->be->dev, err, "block flush");
 		return;
 	}
-	invalidate_inode_pages2(blkif->vbd.bdev->bd_inode->i_mapping);
+	invalidate_inode_pages2(
+			blkif->vbd.bdev_handle->bdev->bd_inode->i_mapping);
 
 	for (i = 0; i < blkif->nr_rings; i++) {
 		ring = &blkif->rings[i];
@@ -472,9 +473,9 @@ static void xenvbd_sysfs_delif(struct xenbus_device *dev)
 
 static void xen_vbd_free(struct xen_vbd *vbd)
 {
-	if (vbd->bdev)
-		blkdev_put(vbd->bdev, NULL);
-	vbd->bdev = NULL;
+	if (vbd->bdev_handle)
+		bdev_release(vbd->bdev_handle);
+	vbd->bdev_handle = NULL;
 }
 
 static int xen_vbd_create(struct xen_blkif *blkif, blkif_vdev_t handle,
@@ -482,7 +483,7 @@ static int xen_vbd_create(struct xen_blkif *blkif, blkif_vdev_t handle,
 			  int cdrom)
 {
 	struct xen_vbd *vbd;
-	struct block_device *bdev;
+	struct bdev_handle *bdev_handle;
 
 	vbd = &blkif->vbd;
 	vbd->handle   = handle;
@@ -491,17 +492,17 @@ static int xen_vbd_create(struct xen_blkif *blkif, blkif_vdev_t handle,
 
 	vbd->pdevice  = MKDEV(major, minor);
 
-	bdev = blkdev_get_by_dev(vbd->pdevice, vbd->readonly ?
+	bdev_handle = bdev_open_by_dev(vbd->pdevice, vbd->readonly ?
 				 BLK_OPEN_READ : BLK_OPEN_WRITE, NULL, NULL);
 
-	if (IS_ERR(bdev)) {
+	if (IS_ERR(bdev_handle)) {
 		pr_warn("xen_vbd_create: device %08x could not be opened\n",
 			vbd->pdevice);
 		return -ENOENT;
 	}
 
-	vbd->bdev = bdev;
-	if (vbd->bdev->bd_disk == NULL) {
+	vbd->bdev_handle = bdev_handle;
+	if (vbd->bdev_handle->bdev->bd_disk == NULL) {
 		pr_warn("xen_vbd_create: device %08x doesn't exist\n",
 			vbd->pdevice);
 		xen_vbd_free(vbd);
@@ -509,14 +510,14 @@ static int xen_vbd_create(struct xen_blkif *blkif, blkif_vdev_t handle,
 	}
 	vbd->size = vbd_sz(vbd);
 
-	if (cdrom || disk_to_cdi(vbd->bdev->bd_disk))
+	if (cdrom || disk_to_cdi(vbd->bdev_handle->bdev->bd_disk))
 		vbd->type |= VDISK_CDROM;
-	if (vbd->bdev->bd_disk->flags & GENHD_FL_REMOVABLE)
+	if (vbd->bdev_handle->bdev->bd_disk->flags & GENHD_FL_REMOVABLE)
 		vbd->type |= VDISK_REMOVABLE;
 
-	if (bdev_write_cache(bdev))
+	if (bdev_write_cache(bdev_handle->bdev))
 		vbd->flush_support = true;
-	if (bdev_max_secure_erase_sectors(bdev))
+	if (bdev_max_secure_erase_sectors(bdev_handle->bdev))
 		vbd->discard_secure = true;
 
 	pr_debug("Successful creation of handle=%04x (dom=%u)\n",
@@ -569,7 +570,7 @@ static void xen_blkbk_discard(struct xenbus_transaction xbt, struct backend_info
 	struct xen_blkif *blkif = be->blkif;
 	int err;
 	int state = 0;
-	struct block_device *bdev = be->blkif->vbd.bdev;
+	struct block_device *bdev = be->blkif->vbd.bdev_handle->bdev;
 
 	if (!xenbus_read_unsigned(dev->nodename, "discard-enable", 1))
 		return;
@@ -930,15 +931,16 @@ static void connect(struct backend_info *be)
 		goto abort;
 	}
 	err = xenbus_printf(xbt, dev->nodename, "sector-size", "%lu",
-			    (unsigned long)
-			    bdev_logical_block_size(be->blkif->vbd.bdev));
+			    (unsigned long)bdev_logical_block_size(
+					be->blkif->vbd.bdev_handle->bdev));
 	if (err) {
 		xenbus_dev_fatal(dev, err, "writing %s/sector-size",
 				 dev->nodename);
 		goto abort;
 	}
 	err = xenbus_printf(xbt, dev->nodename, "physical-sector-size", "%u",
-			    bdev_physical_block_size(be->blkif->vbd.bdev));
+			    bdev_physical_block_size(
+					be->blkif->vbd.bdev_handle->bdev));
 	if (err)
 		xenbus_dev_error(dev, err, "writing %s/physical-sector-size",
 				 dev->nodename);
-- 
2.35.3



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 09:42:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 09:42:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608784.947496 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlR3j-00043p-D8; Wed, 27 Sep 2023 09:42:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608784.947496; Wed, 27 Sep 2023 09:42:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlR3j-00043i-9x; Wed, 27 Sep 2023 09:42:19 +0000
Received: by outflank-mailman (input) for mailman id 608784;
 Wed, 27 Sep 2023 09:42:18 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlR3i-00043W-22; Wed, 27 Sep 2023 09:42:18 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlR3h-0006tX-R8; Wed, 27 Sep 2023 09:42:17 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlR3h-00010P-Gi; Wed, 27 Sep 2023 09:42:17 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlR3h-00085q-GA; Wed, 27 Sep 2023 09:42:17 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=/YFP92eBbxsBimHAeJfJR1NKNZTbOqxQrHFl0nxq7ck=; b=yLfRLOBsQQYaxMwvpGtbiRret+
	X/aTENWyUyAkV9hsLhMQfRwIYNvyBftivioxndMF/tawGlmHLkzQwBWF27rj8zLhBiiIO5197sEpf
	UPJFsldWnBNWYXbP5DDYWhl4v2TsGIf0vVHrrs6inx+eQzHhlOHIdkSdPZMYaJo7uxes=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183190-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183190: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=ad1c0394b1770315099e511de7c88a04d7af76f2
X-Osstest-Versions-That:
    ovmf=be971fc302cbef8f47e2612eda114135f21205e6
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 27 Sep 2023 09:42:17 +0000

flight 183190 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183190/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 ad1c0394b1770315099e511de7c88a04d7af76f2
baseline version:
 ovmf                 be971fc302cbef8f47e2612eda114135f21205e6

Last test of basis   183186  2023-09-27 00:12:32 Z    0 days
Testing same since   183190  2023-09-27 05:23:10 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Nate DeSimone <nathaniel.l.desimone@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   be971fc302..ad1c0394b1  ad1c0394b1770315099e511de7c88a04d7af76f2 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 09:43:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 09:43:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608790.947506 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlR4N-0004a2-NM; Wed, 27 Sep 2023 09:42:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608790.947506; Wed, 27 Sep 2023 09:42:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlR4N-0004Zv-Jx; Wed, 27 Sep 2023 09:42:59 +0000
Received: by outflank-mailman (input) for mailman id 608790;
 Wed, 27 Sep 2023 09:42:59 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=e0y+=FL=gmail.com=xadimgnik@srs-se1.protection.inumbo.net>)
 id 1qlR4N-0004Zb-2O
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 09:42:59 +0000
Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com
 [2a00:1450:4864:20::331])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3de4ce60-5d1a-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 11:42:58 +0200 (CEST)
Received: by mail-wm1-x331.google.com with SMTP id
 5b1f17b1804b1-40537481094so107921655e9.0
 for <xen-devel@lists.xenproject.org>; Wed, 27 Sep 2023 02:42:58 -0700 (PDT)
Received: from [192.168.5.75] (54-240-197-233.amazon.com. [54.240.197.233])
 by smtp.gmail.com with ESMTPSA id
 14-20020a05600c230e00b00402f7b50517sm17441790wmo.40.2023.09.27.02.42.57
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 27 Sep 2023 02:42:57 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3de4ce60-5d1a-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695807778; x=1696412578; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:organization:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:from:to:cc:subject:date:message-id:reply-to;
        bh=jTz0G114erb+zgxWJJJu8ke7KB3cZFh8aNZRWXOoo4Y=;
        b=fMbTIUTVmXkSO2U9KGLNlgYdbAEHJpqbtRvNamAmciQnq4DwZe3MwG91DQEqpA62jv
         xPMY0WxIiH5Z41JFPpIxhZ/Qr62OWzpL8+cZfD3tmIJm6zYgZmNgj58kNTTcMjtp3CXz
         0SysG0sjlgC/kgEywLgCISckEPJ5+CtyBF/uz06Aht7il+GBcwki6FcEN+9pMqiSeuOg
         6F2IpgtJfhlgp5+MosbTLJGITRccgD0OMpof2F+i9g0wAHBCd4M35FKvb7pwaMdaur3L
         Hip9O8en2el8R/MglXbUmHW4TW+1zz4M4VKA2bN99mR6S+Wc8vZJLH0HlTBa/wquKFvd
         PD1g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695807778; x=1696412578;
        h=content-transfer-encoding:in-reply-to:organization:references:cc:to
         :content-language:subject:reply-to:user-agent:mime-version:date
         :message-id:from:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=jTz0G114erb+zgxWJJJu8ke7KB3cZFh8aNZRWXOoo4Y=;
        b=L75Dkuri/gZurfIdKhegqJKeLWJobI7Np5GeCDYSuA43Kq9kN0XHj+7jFcRGTQUya4
         dHvn9VBcWP6Yf/a/UhizFvjh16Ms3mHneQkqxjDo0N5It0cMw53ouPmEcwfcmr4KA6H1
         e3Di3+Bg0ySNoTxIEEsQpTBAJWN6dax+4C6WUwPSpoba4khzGV1ZjYbWrE6P5elhogMZ
         4V+0g8iE6+yk45iNoxjOg4jnhW3HEnUhpzr1/tXnXOgzh6NKLpHZPB8/6WyT1VA7vIL6
         742hlbJm7tQ3yJdojHZtv+ia/BAm1/Nurihqidt6uhEJCsJGhGNR1+qDb+pNc+JNzMrT
         9GkA==
X-Gm-Message-State: AOJu0YwU3h93y5dQJbo9GcGsBTRCBISldysNp7vkl8obea6yDsfIweXX
	JIlDjn2VJOj/MVOWpCaDCyQ=
X-Google-Smtp-Source: AGHT+IFn4ZBOp4RKT74Hg5qxa49Z0bguSdo8cmPa57d4aAjLkBpVSLnukdbSIBeJOh/yMuIR5EBzXw==
X-Received: by 2002:a05:600c:1e14:b0:406:44e6:15f0 with SMTP id ay20-20020a05600c1e1400b0040644e615f0mr1044093wmb.5.1695807777823;
        Wed, 27 Sep 2023 02:42:57 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Message-ID: <646b31b4-2fd6-4bff-ae6b-1b35626533c0@xen.org>
Date: Wed, 27 Sep 2023 10:42:56 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Reply-To: paul@xen.org
Subject: Re: [PATCH] net/xen-netback: Break build if netback slots > max_skbs
 + 1
Content-Language: en-US
To: David Kahurani <k.kahurani@gmail.com>, xen-devel@lists.xenproject.org
Cc: netdev@vger.kernel.org, wei.liu@kernel.org
References: <20230927082918.197030-1-k.kahurani@gmail.com>
Organization: Xen Project
In-Reply-To: <20230927082918.197030-1-k.kahurani@gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 27/09/2023 09:29, David Kahurani wrote:
> If XEN_NETBK_LEGACY_SLOTS_MAX and MAX_SKB_FRAGS have a difference of
> more than 1, with MAX_SKB_FRAGS being the lesser value, it opens up a
> path for null-dereference. It was also noted that some distributions
> were modifying upstream behaviour in that direction which necessitates
> this patch.
> 
> Signed-off-by: David Kahurani <k.kahurani@gmail.com>

Acked-by: Paul Durrant <paul@xen.org>



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 09:44:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 09:44:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608794.947516 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlR5o-0005Jg-1X; Wed, 27 Sep 2023 09:44:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608794.947516; Wed, 27 Sep 2023 09:44:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlR5n-0005JZ-Ui; Wed, 27 Sep 2023 09:44:27 +0000
Received: by outflank-mailman (input) for mailman id 608794;
 Wed, 27 Sep 2023 09:44:26 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WUTS=FL=citrix.com=prvs=6275c33bf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlR5m-0005JO-LR
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 09:44:26 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 705167b9-5d1a-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 11:44:24 +0200 (CEST)
Received: from mail-mw2nam10lp2107.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.107])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 27 Sep 2023 05:44:22 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB5807.namprd03.prod.outlook.com (2603:10b6:a03:2ad::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.27; Wed, 27 Sep
 2023 09:44:20 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Wed, 27 Sep 2023
 09:44:20 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 705167b9-5d1a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695807864;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=A87O4/epQO3MrXamSdb6qyQHSvOzUkfj/S95fuEJ6NU=;
  b=iNZpbJ8JjaXtVJuob6zlh8ccpzBflx9Lws0lMYJIwgctVObPiIMtAPyq
   UKnSkfIk8MWVv2U+TSMcBmuo1fVvSymWu63M/sbGqHK/8tbd78NRBQLJp
   PS8Q6Nisihwomo6pVH0DALjeO8z4kR5aRY4bzGNinlJPHKur2H31OLipT
   k=;
X-CSE-ConnectionGUID: LQoG/4xgTMWA7k8LsIsV+Q==
X-CSE-MsgGUID: oSMd0rARQc+xznLccCeLVQ==
X-IronPort-RemoteIP: 104.47.55.107
X-IronPort-MID: 123941180
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:O+yes6qME8m8UZHS0bKXnnZ0VuFeBmLWZBIvgKrLsJaIsI4StFCzt
 garIBmPP66JY2ahct0jYY23pBxUu8PUmt5qSgBu/yAyQnwX8JuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5wePzSZNVfrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXABQ0aT/E2/K5/JeEY7Zv1uA4DdLVf7pK7xmMzRmBZRonabbqZvySoPpnhnI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeWraYKKEjCJbZw9ckKwv
 GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdhJReHhr64y6LGV7msoLRFOT3KBmPL6mly4f9lUA
 EEwxBN7+MDe82TuFLERRSaQonSJoxodUNp4CPAh5UeGza+8yxaUAC0IQyBMbPQitdQqXno62
 1mRhdTrCDdz9rqPRhq19KqQrD60ETgYKykFfyBsZRAe/9DprYU3jxTOZtVuCqi4ipvyAz6Y6
 y+OhDgzgfMUl8Fj6kmg1VXOgjbpo4eTSAcwv13TRjj8tlw/Y5O5bYu171Sd9exHMIuSUliGu
 j4DhtSa6+cNS5qKkURhXdkwIV1g3N7dWBW0vLKlN8BJG+iFk5J7Qb1t3Q==
IronPort-HdrOrdr: A9a23:/CAd0K1a8319oMTrtp8A7wqjBHYkLtp133Aq2lEZdPU0SKGlfq
 GV7ZEmPHrP4gr5N0tOpTntAse9qBDnhPxICOsqXYtKNTOO0AeVxelZhrcKqAeQeBEWmNQ96U
 9hGZIOcuEZDzJB/LvHCN/TKadd/DGFmprY+ts31x1WPGVXgzkL1XYANu6ceHcGIzVuNN4CO7
 e3wNFInDakcWR/VLXBOpFUN9KzweEijfjdEGc7OyI=
X-Talos-CUID: 9a23:aGa07WDNjBgTuSn6Ew1e82FTRtAqTlji5SjTc2ujKH1XC4TAHA==
X-Talos-MUID: 9a23:kGY7UQizsCgNzoVz5qHONcMpM/xN7/y0IXo0mtYWqc+gPidbNhOjtWHi
X-IronPort-AV: E=Sophos;i="6.03,179,1694750400"; 
   d="scan'208";a="123941180"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KQPUNLQPG5guLBjrl3Um1y/jxt+g+Qtr6vjQMK0gmLVgUzakiy8n6ioHn14CcSSqCxpLkN9eJnKdmIObG4kk3sKmkBSbE4EtGDc+0yFP8pkmzQtcHmoLbDEh7f/MfM5TodEhLKEBhG0o+zBpCwKdvfB6gapa+2ac2NG48MWxOZxNwc9Sj2VmClLjliVcOh8xMaELp5emXKcxHmKySuVViOOLu/FfSti83ViD8qmc7iT0Hh89eFqy4ZGFsgoAUTgl4I6gvpSA/NA4DPxQBSoMIufgrDiV9BvFnWDtt5dN+qgJV0WJZhnii6HssD273wN7j9x+BoKXzs4ax8sGUm9tMg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=kRQOR4pn7vW1Uv3oIea21Tw40/Z1SPOjrWh+R4pYCH0=;
 b=DeB10ba290sLW2oCvptrtVW+s80YTgnR73fAgUo2Z9UXCvoGfb+sWYjFjQDf19aEeag89SmTTC8Alc3ocC4ja3R09iXO9L1dnZCbh8aCWdg8u1llPnsCFh2ZXxAmjeG8MCXCPloqgyiPJWqtZMuOFKQfKpsxyuifT7dxFtKI2FiPh5KcHA7zSjzIUi28KoFdEAootTp0yd+fgZ+1vsGPKh4XECaix0z6srQG94BWnArs5YW49VR8jOQOI3H46XmuWHup1sgPM3ed761NbfDmACxFOwv1K5GzUeT8Bz6/Nx2H2simHRuRAroGTHCflf5+wv5iGLOd9AqpGa6rhmLF0g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=kRQOR4pn7vW1Uv3oIea21Tw40/Z1SPOjrWh+R4pYCH0=;
 b=HPF1ioYn6EhS3i7XThUSBL2o6kNwhZQgyENVTIWki9XSq3I/B1qhvti9Ssxnp/Mtypw80+F9yRmCsEY+Jmd6X2kb985gYloWjMk/uW2N4aqKiS7dRi3D6DLbDTthiTrLWyYoB3xL3VuXuVuLLMgdEh/vUaa7qdtJW4jE3A9ISZ4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 27 Sep 2023 11:44:15 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v3 2/8] domain: update GADDR based runstate guest area
Message-ID: <ZRP5b9qOUK_sCL51@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <65893a9e-e2ae-6853-7c4d-54f2bf19b17b@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <65893a9e-e2ae-6853-7c4d-54f2bf19b17b@suse.com>
X-ClientProxiedBy: LO4P123CA0567.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:33b::20) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB5807:EE_
X-MS-Office365-Filtering-Correlation-Id: 3acbbf7d-7208-43f5-a32e-08dbbf3e52e5
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	r9hnc8bhWzrKuwT4Xw5hmZQgc0lHmWYJUePeKHvL6IXqef+xomMSMCx/LqWURHVjw/YBBN4MHbD9wRjaRsAoz9LqlWn7aKZoBbJkywov3EkDgkL70kuIiUdDaJaCtNzcxuShDXYTjAAQWVrtcUAJxF+Jpv75HfoZ/Yk9PGwbt0ltZOD1btGaOmd9TxzuNQXy6pAR89C3N6yYWDs0SX8d6Blhelk2ex6X3mFthSE/FM9rVmnGBZhJV6TrH4DHuRRI5qsxqoMyEOXHqjyqsCxEUB7reR9B+rs/02Wy9Xs9+NvRArGRsX5zSkpzQhppA4MtUPj5Qy5uy6l8fSwUGEaxYy2XvV/KXwtHB3lipYLnAcDe2xad5FFTzPRGjHXmUAOeHVcMq57f5wh2uZWni+PScUOxEdb54rp+z4+bPr4njoKS0b8wej0++KUtTfH20QWzKWDzvyr3twhGKXASW7KAot9hhX2CO0OynyijQQCdQ0e92EjCpjlVH41jMv6JQArQiKaVINP0N2VXH4G/WMfjFpqFP2HATB6/g7ckgd8dLMJkB5Tm/nlGQFP0lSrmbf5a
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(366004)(346002)(376002)(136003)(39860400002)(396003)(230922051799003)(1800799009)(186009)(451199024)(8676002)(33716001)(82960400001)(6506007)(9686003)(6512007)(6916009)(26005)(8936002)(85182001)(5660300002)(6666004)(478600001)(4326008)(316002)(86362001)(66556008)(66946007)(2906002)(41300700001)(38100700002)(66476007)(54906003)(6486002)(83380400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VUJCV2lpUnVMb2p2NW5reENHWFN3RlBaN28vYVdNa3lSQTAwNHFBWW1ya0VL?=
 =?utf-8?B?cFo3cU82dGtCZ3VEZUV2SGVKbXdxS2N6MW9iNWtaZjNINmJTTEJsb2FkR0k4?=
 =?utf-8?B?UkFpTndkek5nYUN4dVNINzZWcGpxV1Q0cnlmcVM0MGZvR0gvU2JnWHRDakd3?=
 =?utf-8?B?NHV1RjVSdzNBTEVPWnZKM0dLQThwQkpwRld1b3o1MXc1bkg5bmxWQkJSRko5?=
 =?utf-8?B?T1BBVEhuQWc2UlBmOFJUcGtqNmNTUnp4QTJ4bUJHYjYrc0NaeDJrZURobys2?=
 =?utf-8?B?bExPeHdmenNsVEkrOCtwSlAxSWNvYW11Qzd5d2NSZWdVcUhXT0hYcGk3anVS?=
 =?utf-8?B?QUVNVGJ1WHVrQjIyWXYxem9vU1VPNEVYUEpsMG80NlhRK011S2R3b0J1cEU5?=
 =?utf-8?B?WEJ3OWNkVFdnNWptbWMzVWdKaCtGVElsdzk3MldReEdzOWNqazRHNFVhSTRx?=
 =?utf-8?B?SC9jRlR2ZXJ1KzhpalVKeFdCM2FHeG9xSE1VUTB3Q2pkOHFxOGZGbEtwWkNE?=
 =?utf-8?B?Y2RTd3lYM0FWQUV5UHAvYzNQTXBCNlNyT0h0SHJyV09tQjVEZEdvQi9CUm5V?=
 =?utf-8?B?WWkyeHB0SVJQanpPZTIxVzFEdktVS21QeXZ2RGJMek4yMkZUVitEdDRqV0hu?=
 =?utf-8?B?QVVvcHY4YnpTTkZCOWtmWlJaWXJuT0NRcDZ6M3BGN0RzZUo2THdWa0srdzdO?=
 =?utf-8?B?VEcrc1RtSnQzdFYwSHEzNS9UVytzNHh4R3lQTnNzM0FoQjFuOVlTcE5iWldk?=
 =?utf-8?B?R1dIdUNPNnhZL1hXMFlxTTMzeHl1R1F0eGxqMzI1ZHdMR1RHeXRtY3ZBczBR?=
 =?utf-8?B?M3ZUMUJCc1k1dDJZWllneHhhMVpTcmdxVUhQMWhtUEZwZkpaK1Y1aWN0djFC?=
 =?utf-8?B?UHBHSW5YVHhOY3FXakxLUVRwOWFxeWh0MWJXL3MyemN0Wk8yOU5mV3dSMDQx?=
 =?utf-8?B?OGVDbERxMmhIQ24xQ1c3ZEtBYm5qbWdrdGhtRVpGby9DNEdXLzE0TG0zQXNx?=
 =?utf-8?B?K1hZaFcyTjA0ZjZIbzl0cmJGWFMwclBMQjUyS0V5MTJoSDdBcE1kNkZnYit4?=
 =?utf-8?B?eTF2L21oWVpLVCt6emJIWkhSNEc4azk1N0F4dngwUnpBb1R4VFg0SjJmbXBs?=
 =?utf-8?B?dEE5QUVHbDVnZ0dKaTZHLzRiMVl2NTZFbkZEVmtUZmV4Nnc5REFzVjhsSXoy?=
 =?utf-8?B?M2pXVVNQVmpTRUtJYWhJN3ZIcUwvRmJ2ZG9HQ01NMXQyMCtLWWFtd28zOTkw?=
 =?utf-8?B?b1BjbDNSNWlCR2wxeW04Qlk3NkZQUDN1ZnRPa0RYaERpQlljLzUza1hocE9s?=
 =?utf-8?B?dGZ5dFNFQm41T1RSSFFrZGk3bzZNOTdmajhHYnBlL0JRZ2JER3V1ZU9lYUlQ?=
 =?utf-8?B?aE1VdEIyVk1LbFZ5THRMYytEWDZURkRjZGdwV1pnRnpRcUdCYWQ1VG9wNDhK?=
 =?utf-8?B?MWNrUGZPRUZuOGRIV3dJNVFvbFNTNlgxQVBDc2cwTjAyVmtocVpNTHBBK0Y3?=
 =?utf-8?B?STd0RXBheWdZL1l2RDZwSmVlVXBVVzRmKzYvakdWZm9pcXBkQWpNZDdqd1Na?=
 =?utf-8?B?WWNRWnBVTjIzU1pOSFQza3ZKaWt3cS8xaFh3dVEwTFJqcnNGNExWenJ1L2VT?=
 =?utf-8?B?dVgwOVVpYWVueTBZT0FnKzNrRDBqc1ZZZVFRVTlIcWZwV2w3QzI1aFNsZTc1?=
 =?utf-8?B?aDV4ejc4U2RudWF1Qkl0bFFYVE9NMUhyYXFqZExwZDRjOE8ydHNXYVdvbkJo?=
 =?utf-8?B?OXVKd2NDdG1XS3M5UjhEVFoxYmZRUGQvQWhKNEhPOVladW9rbjQ5ZDduc2RC?=
 =?utf-8?B?alVEajBVblRHU2FscGxLM1Y3Z3A4Z1FVeldYM0hWZFhBV3lHUUllY3ZGekp0?=
 =?utf-8?B?aWlFVmdiR1F3YXFsdjN2ZDNORmRHdi9GdEJraTNGKzNGY3Zmb2pZc1ZRSWVl?=
 =?utf-8?B?UkVsNTVOWml5d1ZaWGhyTng4RHE2eWV2MXVnVVRJOHhMMHRZMXZMaHJHRWJk?=
 =?utf-8?B?TVNVZ05nTkd0ZzZqd24zVGJhM3BSMXYzWXVjTTNPSnpNblcwMnNxRk12RW5E?=
 =?utf-8?B?SWxST2c5Q3IzTEpPb3dENmFtRlhlSEF3cFlndlY1K1R4Q2VscFhTRlp4WlI2?=
 =?utf-8?B?RlA1V0Q1dWlUWUlEeHdYK2diQmlHc292cjkvT00rS09UVW5tMDVsTGljTUxQ?=
 =?utf-8?B?SHc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	2klfKJiiqM0ZE7ZpL7ocBRVr1+gWZmQWWoc1ZauHy5RVDkXoA1jSv5GpgpfaftHClettzCkeu9R3Gwsn2Ej4oNNXe6kxP8eumNPdy9lLHC8TfetQzTA73FNkzFYDR3XkvwDN0NoPT+OknutjHAqOO25cjfpZJNCEhUKcOGDFSozh6tybpbBSLk3SlB/dU3uzSJktqYoC6qgsTLQ2kZ/FkOZPaosrcL53g4dKk7wt6XybloIGmL3SFp/R9rOf/y+Wq4OU9xMNR1C3ufpuJGpiratg9w4FkDVzV6yxX/MgStPY78c8CnZgkqFN+MSSThYE9eWsGc5sFSU4RCUr5/C4KVxv+13yJFMEbhq45Gpghk7+ZySJmSf4uJlUbXbVUmoBpRmXTbWKhcPo5Rd9Hn0ZejszL7kCl3LSWgt7KG4cTl0d+aNhrWQGcfifpQnRXNn6+qeB6qfIFyRbWZvIJoJX6K1coJcvMPCcJMqw1s8FnqogCSAVIe9NBToh4rtcROVzfQzxoLn/ashQUTc99rp4SSW5WT0BuP/qZ43gOqCndPAtJcKk9Fv20O25kbCxgMIdX4vu4zMT6VfCZgGYunVPYC+42uFPMM3kG3RpZeAiFI3ZvyG9B9pFBj3Da148fEdOPe3Cn4mpMkTzJuIi98ncskrgiHgBNDFgMIW+lYkMIkj8YarW9WEK7TBA/X4Hxuns0faqng4zvelUM9kh3XayFrQj6DaE3zXmH4BPUgs3J6SkIXP1XZ+Haq4dcMN/GiBeyzrSAxB/+WJdn+1zDrv8sHmlnoOkPXBGwj+uzrQcbacpKRS/DU9BIt6GkbTUXZWReZrxxtjcV8dZsvBo7lniZ4yhRggVZtiCORIOKTLqY68=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3acbbf7d-7208-43f5-a32e-08dbbf3e52e5
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 09:44:20.5181
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: M/6JSh0VtUmCCSzMvMScHO2ERIzE9wy/Y0w4VdXMwUM5191IzP1jCbl9l6xxW9USwqt+7udRkMEXHwEXOxY4Gw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5807

On Wed, May 03, 2023 at 05:55:11PM +0200, Jan Beulich wrote:
> Before adding a new vCPU operation to register the runstate area by
> guest-physical address, add code to actually keep such areas up-to-date.
> 
> Note that updating of the area will be done exclusively following the
> model enabled by VMASST_TYPE_runstate_update_flag for virtual-address
> based registered areas.
> 
> Note further that pages aren't marked dirty when written to (matching
> the handling of space mapped by map_vcpu_info()), on the basis that the
> registrations are lost anyway across migration (or would need re-
> populating at the target for transparent migration). Plus the contents
> of the areas in question have to be deemed volatile in the first place
> (so saving a "most recent" value is pretty meaningless even for e.g.
> snapshotting).
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

> ---
> RFC: HVM guests (on x86) can change bitness and hence layout (and size!
>      and alignment) of the runstate area. I don't think it is an option
>      to require 32-bit code to pass a range such that even the 64-bit
>      layout wouldn't cross a page boundary (and be suitably aligned). I
>      also don't see any other good solution, so for now a crude approach
>      with an extra boolean is used (using has_32bit_shinfo() isn't race
>      free and could hence lead to overrunning the mapped space).

Shouldn't a well behaved guest attempt to unmap the runstate area
before changing bitness?  I would expect this to happen for example
when OVMF relinquishes control to the OS.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 09:53:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 09:53:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608802.947526 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRE2-00086F-RR; Wed, 27 Sep 2023 09:52:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608802.947526; Wed, 27 Sep 2023 09:52:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRE2-000868-OT; Wed, 27 Sep 2023 09:52:58 +0000
Received: by outflank-mailman (input) for mailman id 608802;
 Wed, 27 Sep 2023 09:52:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=U53p=FL=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qlRE1-0007w0-AJ
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 09:52:57 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a22a1cbf-5d1b-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 11:52:56 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id F25D94EE0737;
 Wed, 27 Sep 2023 11:52:54 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a22a1cbf-5d1b-11ee-878a-cb3800f73035
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	jbeulich@suse.com,
	andrew.cooper3@citrix.com,
	roger.pau@citrix.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [XEN PATCH v2 0/3] docs/misra: add documentation skeleton to address MISRA C:2012 Dir 4.1
Date: Wed, 27 Sep 2023 11:52:29 +0200
Message-Id: <cover.1695801813.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The headline of Directive 4.1 states: "Run-time failures shall be minimized".
Thus, it requires the project to supply documentation that pertains the measures
and techinques used to prevent run-time failures from happening. For ease of
reading, the documentation is in RST format, but since ECLAIR needs a source file
to check that the needed subsections and their format is the one expected, the
Makefiles for the docs/ are amended to generate such a file.

The format and categories of the subsections in the .rst file can be
customized based on feedback from the community: the one provided is just a
basic skeleton that should be tailored to the project.

CC-ing also Henry Wang, as these are just documentation and CI changes

Nicola Vetrini (3):
  docs/misra: add documentation skeleton for MISRA C:2012 Dir 4.1
  docs: make the docs for MISRA C:2012 Dir 4.1 visible to ECLAIR
  automation/eclair: build docs/misra to address MISRA C:2012 Dir 4.1

 automation/eclair_analysis/build.sh   |   6 +-
 automation/eclair_analysis/prepare.sh |   4 +-
 docs/Makefile                         |   7 +-
 docs/misra/C-runtime-failures.rst     | 200 ++++++++++++++++++++++++++
 docs/misra/Makefile                   |  22 +++
 docs/misra/rules.rst                  |   8 +-
 6 files changed, 240 insertions(+), 7 deletions(-)
 create mode 100644 docs/misra/C-runtime-failures.rst
 create mode 100644 docs/misra/Makefile

--
2.34.1


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 09:53:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 09:53:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608805.947549 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRE8-00008N-18; Wed, 27 Sep 2023 09:53:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608805.947549; Wed, 27 Sep 2023 09:53:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRE7-00005b-Np; Wed, 27 Sep 2023 09:53:03 +0000
Received: by outflank-mailman (input) for mailman id 608805;
 Wed, 27 Sep 2023 09:53:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=U53p=FL=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qlRE7-0008Lo-0z
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 09:53:03 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a5138742-5d1b-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 11:53:01 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 196E64EE073A;
 Wed, 27 Sep 2023 11:52:58 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a5138742-5d1b-11ee-9b0d-b553b5be7939
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	jbeulich@suse.com,
	andrew.cooper3@citrix.com,
	roger.pau@citrix.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Wei Liu <wl@xen.org>,
	Anthony PERARD <anthony.perard@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [XEN PATCH v2 2/3] docs: make the docs for MISRA C:2012 Dir 4.1 visible to ECLAIR
Date: Wed, 27 Sep 2023 11:52:31 +0200
Message-Id: <4e25395c844a312556303e3484a915e875e0e5a7.1695801813.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1695801813.git.nicola.vetrini@bugseng.com>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

To be able to check for the existence of the necessary subsections in
the documentation for MISRA C:2012 Dir 4.1, ECLAIR needs to have a source
file that is built.

This file is generated from 'C-runtime-failures.rst' in docs/misra
and the configuration is updated accordingly.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes from RFC:
- Dropped unused/useless code
- Revised the sed command
- Revised the clean target

Changes in v2:
- Added explanative comment to the makefile
- printf instead of echo
---
 docs/Makefile       |  7 ++++++-
 docs/misra/Makefile | 22 ++++++++++++++++++++++
 2 files changed, 28 insertions(+), 1 deletion(-)
 create mode 100644 docs/misra/Makefile

diff --git a/docs/Makefile b/docs/Makefile
index 966a104490ac..ff991a0c3ca2 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -43,7 +43,7 @@ DOC_PDF  := $(patsubst %.pandoc,pdf/%.pdf,$(PANDOCSRC-y)) \
 all: build
 
 .PHONY: build
-build: html txt pdf man-pages figs
+build: html txt pdf man-pages figs misra
 
 .PHONY: sphinx-html
 sphinx-html:
@@ -66,9 +66,14 @@ endif
 .PHONY: pdf
 pdf: $(DOC_PDF)
 
+.PHONY: misra
+misra:
+	$(MAKE) -C misra
+
 .PHONY: clean
 clean: clean-man-pages
 	$(MAKE) -C figs clean
+	$(MAKE) -C misra clean
 	rm -rf .word_count *.aux *.dvi *.bbl *.blg *.glo *.idx *~
 	rm -rf *.ilg *.log *.ind *.toc *.bak *.tmp core
 	rm -rf html txt pdf sphinx/html
diff --git a/docs/misra/Makefile b/docs/misra/Makefile
new file mode 100644
index 000000000000..8fd89404e96b
--- /dev/null
+++ b/docs/misra/Makefile
@@ -0,0 +1,22 @@
+TARGETS := C-runtime-failures.o
+
+all: $(TARGETS)
+
+# This Makefile will generate the object files indicated in TARGETS by taking
+# the corresponding .rst file, converting its content to a C block comment and
+# then compiling the resulting .c file. This is needed for the file's content to
+# be available when performing static analysis with ECLAIR on the project.
+
+# sed is used in place of cat to prevent occurrences of '*/'
+# in the .rst from breaking the compilation
+$(TARGETS:.o=.c): %.c: %.rst
+	printf "/*\n\n" > $@.tmp
+	sed -e 's|\*/|*//*|g' $< >> $@.tmp
+	printf "\n\n*/" >> $@.tmp
+	mv $@.tmp $@
+
+%.o: %.c
+	$(CC) -c $< -o $@
+
+clean:
+	rm -f C-runtime-failures.c *.o *.tmp
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 09:53:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 09:53:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608804.947543 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRE7-0008Ua-Kx; Wed, 27 Sep 2023 09:53:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608804.947543; Wed, 27 Sep 2023 09:53:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRE7-0008Rq-DF; Wed, 27 Sep 2023 09:53:03 +0000
Received: by outflank-mailman (input) for mailman id 608804;
 Wed, 27 Sep 2023 09:53:02 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=U53p=FL=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qlRE6-0007w0-Fu
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 09:53:02 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a58a12d9-5d1b-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 11:53:01 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 1A4824EE0739;
 Wed, 27 Sep 2023 11:53:01 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a58a12d9-5d1b-11ee-878a-cb3800f73035
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	jbeulich@suse.com,
	andrew.cooper3@citrix.com,
	roger.pau@citrix.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [XEN PATCH v2 3/3] automation/eclair: build docs/misra to address MISRA C:2012 Dir 4.1
Date: Wed, 27 Sep 2023 11:52:32 +0200
Message-Id: <bc2d62ad97a821f9c8e17a1ff3c9ed55922dbbd4.1695801813.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1695801813.git.nicola.vetrini@bugseng.com>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The documentation pertaining Directive 4.1 is contained in docs/misra.
The build script driving the analysis is amended to allow ECLAIR to
analyze such file.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- removed useless make flags
---
 automation/eclair_analysis/build.sh   | 6 +++---
 automation/eclair_analysis/prepare.sh | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/automation/eclair_analysis/build.sh b/automation/eclair_analysis/build.sh
index ec087dd822fa..ea7a1e5a59b0 100755
--- a/automation/eclair_analysis/build.sh
+++ b/automation/eclair_analysis/build.sh
@@ -34,11 +34,11 @@ else
 fi
 
 (
-  cd xen
-
+  make -C docs misra
   make "-j${PROCESSORS}" "-l${PROCESSORS}.0"    \
        "CROSS_COMPILE=${CROSS_COMPILE}"         \
        "CC=${CROSS_COMPILE}gcc-12"              \
        "CXX=${CROSS_COMPILE}g++-12"             \
-       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"
+       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"     \
+       -C xen
 )
diff --git a/automation/eclair_analysis/prepare.sh b/automation/eclair_analysis/prepare.sh
index 0cac5eba00ae..ebd5a2dde676 100755
--- a/automation/eclair_analysis/prepare.sh
+++ b/automation/eclair_analysis/prepare.sh
@@ -35,8 +35,8 @@ else
 fi
 
 (
-    cd xen
-    cp "${CONFIG_FILE}" .config
+    ./configure
+    cp "${CONFIG_FILE}" xen/.config
     make clean
     find . -type f -name "*.safparse" -print -delete
     make -f ${script_dir}/Makefile.prepare prepare
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 09:53:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 09:53:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608803.947535 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRE7-0008Nl-40; Wed, 27 Sep 2023 09:53:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608803.947535; Wed, 27 Sep 2023 09:53:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRE7-0008Nd-0c; Wed, 27 Sep 2023 09:53:03 +0000
Received: by outflank-mailman (input) for mailman id 608803;
 Wed, 27 Sep 2023 09:53:01 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=U53p=FL=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qlRE5-0008Lo-4J
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 09:53:01 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a3c3d07b-5d1b-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 11:52:59 +0200 (CEST)
Received: from nico.bugseng.com (unknown [147.123.100.131])
 by support.bugseng.com (Postfix) with ESMTPSA id 111C04EE073C;
 Wed, 27 Sep 2023 11:52:56 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a3c3d07b-5d1b-11ee-9b0d-b553b5be7939
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org,
	michal.orzel@amd.com,
	xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com,
	consulting@bugseng.com,
	jbeulich@suse.com,
	andrew.cooper3@citrix.com,
	roger.pau@citrix.com,
	Nicola Vetrini <nicola.vetrini@bugseng.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Wei Liu <wl@xen.org>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [XEN PATCH v2 1/3] docs/misra: add documentation skeleton for MISRA C:2012 Dir 4.1
Date: Wed, 27 Sep 2023 11:52:30 +0200
Message-Id: <5bb4dea2f48d0ef9a48a06c1b11c0dfcbd991aaf.1695801813.git.nicola.vetrini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1695801813.git.nicola.vetrini@bugseng.com>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The aforementioned directive requires the project to supply documentation
on the measures taken towards the minimization of run-time failures.

The actual content of the documentation still needs feedback from the
community.

The 'rules.rst' file is updated accordingly to mention the newly
added documentation.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
---
Changes in v2:
- Incorporated suggestions from Stefano.
---
 docs/misra/C-runtime-failures.rst | 200 ++++++++++++++++++++++++++++++
 docs/misra/rules.rst              |   8 +-
 2 files changed, 207 insertions(+), 1 deletion(-)
 create mode 100644 docs/misra/C-runtime-failures.rst

diff --git a/docs/misra/C-runtime-failures.rst b/docs/misra/C-runtime-failures.rst
new file mode 100644
index 000000000000..325d3fab1fa5
--- /dev/null
+++ b/docs/misra/C-runtime-failures.rst
@@ -0,0 +1,200 @@
+===================================================================
+Measures taken towards the minimization of Run-time failures in Xen
+===================================================================
+
+This document specifies which procedures and techinques are used troughout the
+Xen codebase to prevent or minimize the impact of certain classes of run-time
+errors that can occurr in the execution of a C program, due to the very minimal
+built-in checks that are present in the language.
+
+The presence of such documentation is requested by MISRA C:2012 Directive 4.1,
+whose headline states: "Run-time failures shall be minimized".
+
+
+Documentation for MISRA C:2012 Dir 4.1: overflow
+________________________________________________
+
+Pervasive use of assertions and extensive test suite.
+
+
+Documentation for MISRA C:2012 Dir 4.1: unexpected wrapping
+___________________________________________________________
+
+The only wrapping the is present in the code concerns
+unsigned integers and they are all expected.
+
+
+Documentation for MISRA C:2012 Dir 4.1: invalid shift
+_____________________________________________________
+
+Pervasive use of assertions and extensive test suite.
+
+
+Documentation for MISRA C:2012 Dir 4.1: division/remainder by zero
+__________________________________________________________________
+
+The division or remainder operations in the project code ensure that
+their second argument is never zero.
+
+
+Documentation for MISRA C:2012 Dir 4.1: unsequenced side effects
+________________________________________________________________
+
+Code executed in interrupt handlers uses spinlocks or disables interrupts
+at the right locations to avoid unsequenced side effects.
+
+
+Documentation for MISRA C:2012 Dir 4.1: read from uninitialized automatic object
+________________________________________________________________________________
+
+The amount of dynamically allocated objects is limited at runtime in
+static configurations. We make sure to initialize dynamically allocated
+objects before reading them, and we utilize static analysis tools to
+help check for that.
+
+
+Documentation for MISRA C:2012 Dir 4.1: read from uninitialized allocated object
+________________________________________________________________________________
+
+Dynamically allocated storage is used in a controlled manner, to prevent the
+access to uninitialized allocated storage.
+
+
+Documentation for MISRA C:2012 Dir 4.1: write to string literal or const object
+_______________________________________________________________________________
+
+The toolchain puts every string literal and const object into a read-only
+section of memory.  The hardware exception raised when a write is attempted
+on such a memory section is correctly handled.
+
+
+Documentation for MISRA C:2012 Dir 4.1: non-volatile access to volatile object
+______________________________________________________________________________
+
+Volatile access is limited to registers that are always accessed
+through macros or inline functions, or by limited code chunks that are only used
+to access a register.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access to dead allocated object
+_______________________________________________________________________
+
+Although dynamically allocated storage is used in the project, in safety
+configurations its usage is very limited at runtime (it is "almost" only used
+at boot time). Coverity is regularly used to scan the code to detect non-freed
+allocated objects.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access to dead automatic object
+_______________________________________________________________________
+
+Pointers to automatic variables are never returned, nor stored in
+wider-scoped objects.  No function does the same on any pointer
+received as a parameter.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access to dead thread object
+____________________________________________________________________
+
+The program does not use per-thread variables.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access using null pointer
+_________________________________________________________________
+
+All possibly null pointers are checked before access.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access using invalid pointer
+____________________________________________________________________
+
+Usage of pointers is limited.  Pointers passed as parameters are
+always checked for validity.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access using out-of-bounds pointer
+__________________________________________________________________________
+
+Pointers are never used to access arrays without checking for the array size
+first.
+
+
+Documentation for MISRA C:2012 Dir 4.1: access using unaligned pointer
+______________________________________________________________________
+
+Pointer conversion that may result in unaligned pointers are never used.
+
+
+Documentation for MISRA C:2012 Dir 4.1: mistyped access to object
+_________________________________________________________________
+
+Pointer conversions that may result in mistyped accesses to objects
+are never used.
+
+
+Documentation for MISRA C:2012 Dir 4.1: mistyped access to function
+___________________________________________________________________
+
+The code never uses function pointers.
+
+
+Documentation for MISRA C:2012 Dir 4.1: invalid pointer arithmetic
+__________________________________________________________________
+
+Pointer arithmetic is never used without checking object boundaries.
+
+
+Documentation for MISRA C:2012 Dir 4.1: invalid pointer comparison
+__________________________________________________________________
+
+Pointers to different objects are never compared (except for pointers that are
+actually linker symbols, but those cases are deviated with a justification).
+
+
+Documentation for MISRA C:2012 Dir 4.1: overlapping copy
+________________________________________________________
+
+The code never uses memcpy() to copy overlapping objects. The instances of
+assignments involving overlapping objects are very limited and motivated.
+
+
+Documentation for MISRA C:2012 Dir 4.1: invalid arguments to function
+_____________________________________________________________________
+
+Many parameters to functions are checked for validity; there is ongoing work to
+make this true for all parameters.
+
+
+Documentation for MISRA C:2012 Dir 4.1: returned function error
+_______________________________________________________________
+
+Many functions that may produce an error, do return a suitable status code
+that is checked at each call site. There is ongoing work to make this true for
+all such functions.
+
+
+Documentation for MISRA C:2012 Dir 4.1: tainted input
+_____________________________________________________
+
+All parameters of all functions in the extenal ABI are checked before being
+used.
+
+
+Documentation for MISRA C:2012 Dir 4.1: data race
+_________________________________________________
+
+Data that can be accessed concurrently from multiple threads and code executed
+by interrupt handlers is protected using spinlocks and other forms of locking,
+as appropriate.
+
+
+Documentation for MISRA C:2012 Dir 4.1: invariant violation
+___________________________________________________________
+
+To be written.
+
+
+Documentation for MISRA C:2012 Dir 4.1: communication error
+___________________________________________________________
+
+This project does not involve any external communication.
diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
index 8e7d17d242a0..dd71fbe87f43 100644
--- a/docs/misra/rules.rst
+++ b/docs/misra/rules.rst
@@ -47,7 +47,13 @@ maintainers if you want to suggest a change.
    * - `Dir 2.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_02_01.c>`_
      - Required
      - All source files shall compile without any compilation errors
-     -
+
+   * - `Dir 4.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_01.c>`_
+     - Required
+     - Run-time failures shall be minimized
+     - The strategies adopted by Xen to prevent certain classes of runtime
+       failures is be documented by
+       `C-runtime-failures.rst <docs/misra/C-runtime-failures.rst>`_
 
    * - `Dir 4.7 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_07.c>`_
      - Required
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 09:55:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 09:55:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608822.947566 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRGU-0002YT-A1; Wed, 27 Sep 2023 09:55:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608822.947566; Wed, 27 Sep 2023 09:55:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRGU-0002YM-7I; Wed, 27 Sep 2023 09:55:30 +0000
Received: by outflank-mailman (input) for mailman id 608822;
 Wed, 27 Sep 2023 09:55:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlRGS-0002Y5-Nd
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 09:55:28 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2061e.outbound.protection.outlook.com
 [2a01:111:f400:fe13::61e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id fa462d36-5d1b-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 11:55:24 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by GVXPR04MB9951.eurprd04.prod.outlook.com (2603:10a6:150:118::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 09:55:21 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 09:55:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fa462d36-5d1b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HUrY8TbvxWNnxbThYNTwylmPDODOfvo6rA4LDqZe4iOsU7KRVV+RRYFvCjrhDq2AEokrqiX78qoHq/chmdMB9Ie5RqhNmQBjuNjm2edmCNLLWJwIOWIOcDsqkvCPV5xP3u3g2CihMds8iVHezuagG0o8CJKXcH2/UcpQprQBGBbRwo5LoIwvEXQGfyYAGEEmHtAkzhD1GaPSeEjlcoYNr2VAAzfWsw3XD+DeZ2eudbwr4af0uTkQ0k9LbQumhkBFQ4nc0ns7tF9rjxj6pjGw+jw+XzY/yU4PPwoWrr5k1KHyOIZSLQWH+B+6VLAoaqBPyGFcGW5n4KmmU+STt4EdNg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GZK5W22VBLkSZiXmKBK83nYJ6ueN5kvZsNOsOvMCTUM=;
 b=Dt/QMsw8v0OyY3y7iu3B5Q8HIxbylLhgIszm5KZGhg7IAhe/Ppb8WheW2nV1EVQ32ITdjWqCyStDGkwEPxh8gvmitRuxsWKAxP+TWsAcLxjTowXyksFtVohg85bhmPtEv4/HNFkZNrg2x/kuZVDgNrExgBswYkQD/GHwMIMGEcIttsc1RmHpLF/HcnxqOmvhZG8HhBkCMlA5YFPtuNN5q/jc5YJH7HcyGB2F61cplJCRk+aA69RkoUvPyvk802wE1DLq84j3f6i/0vbvKLohPOfhHsWW0AJXd/KYJFmIYJfxsNWBtdbrem8iyzkOfrssIsYQFD+NVxmRWmT2ntH2LA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GZK5W22VBLkSZiXmKBK83nYJ6ueN5kvZsNOsOvMCTUM=;
 b=mtUmGCkPbdynlq9yix6DymSazUa9ImAWXr3RFTmNZsZVskf0/QvVl/8TgjtGtcSxx0cB7LCG5CgeysfAzJcwjZOzEIThMQRfOgdruLFyeVaznI39mWePPi++Aoj3kZtnxenLa78gQ2Kk+25FqlMa0IbEEjqxuOSdW2pvPVu7DEs0FYlfQl1+HLA9KVI6Z9Y10xyJnAWoyMVcDmb3q6K3treO2ZW8aTGirJJ6UEUGNiQy4+7AB5GYi7wU6WWvuf3okpBgTLnCRAnwyNIvi0rZeZizUGta3ABxMiUKDaf3gn57t8lR0C28OI62Qo5k0+P49f3YatvFSGAApa2Ztz700Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4e1e0b28-bb0b-03f9-d62e-dd04846dd2e4@suse.com>
Date: Wed, 27 Sep 2023 11:55:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 1/8] domain: GADDR based shared guest area registration
 alternative - teardown
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <68cdb299-c41c-b6a5-c9ce-bd915508ecf2@suse.com>
 <ZRPtI9UfgpCfQ4HU@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRPtI9UfgpCfQ4HU@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0205.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a5::17) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|GVXPR04MB9951:EE_
X-MS-Office365-Filtering-Correlation-Id: e710981d-c930-4adc-fe54-08dbbf3fdd09
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	o8t/Jo3b2odl2SMl398G21XetEevYdbR4sVoTTBYEylbXPdoCYnKD5C7zuKkltcX7/eSuuoMQu/XwFk1bc0p/HgAN4RiDduXIEcljKiQ8IJG/KopEn0CPV5pSxhOGMktESsNl9Y8eCrYfdF3hK6ydXOkWkQK/O9O7lsckIS7cGs+bGXiL5wHfUaQooOwsnQa+xTXwUItu/3vM6MltEIK4hg6MiEjLtbpFwZ91qLSqyLEZ+If6+XE/ltLY9klQDXRm1tWg2myZgm6o9dtd/J1EAsWSqutjZQjGseSepw4X1EYUK+m6cpxj7u7Xq5SVdTbocOJD0poohnz7UOubPO0oeZ6Nrd5irawxt0o6/792kWNIRytuT0ropWD9Lft2qAPkAs2agaO7VgFyHU7tuGt3WHVB1wrdiXeFv+86ZHoZGxCgGBwHKrL/xRkMB8Xe2sZ6iIiLlc8PYEYBfjR3zfWj1MxTAqaKCDeQ7intqCx6WOt6wEAC/g4iO1lmsQGt+McXRMvG6a4WtmLaWXDomjz5BGBJi3lrlLSDQGlyAn8WzbGTysSVfif0fyBMojjLwsbhBRmY+RHI/UlOkYEns5BMFOZQiA4lAVcrZGMRO5Hj3dXj6Y+OeRDAw6kRvlq9vT/cYO77wjqmm25aU06sCB4RA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(346002)(396003)(136003)(39860400002)(230922051799003)(1800799009)(451199024)(186009)(54906003)(31686004)(6512007)(83380400001)(2906002)(5660300002)(316002)(8676002)(36756003)(8936002)(4326008)(66476007)(6916009)(86362001)(66556008)(26005)(6486002)(478600001)(31696002)(66946007)(6506007)(53546011)(2616005)(38100700002)(41300700001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?d2d4NVcxaHFCTXdpQUJDNGU4eHpoMFVZRVB5cC9nV21wY0YrY3J4N2RWdFli?=
 =?utf-8?B?VTY5SGQzZUhtOWxhQUVEM0dva21aTG1OVEdCcWZmd1J3UURRYStINjgvbWZN?=
 =?utf-8?B?VjBrTzJlUDAyRFhiTG14R3AxZkRIRFNwZUFtQUZYaEg5NjRlVlZqSnNaOHZM?=
 =?utf-8?B?RmdSa2xVbkt4ejRORUs0U21ndE9NTElsNmNzMU9WNzkyQjlqZVR5YUl2STgr?=
 =?utf-8?B?SmtpZzhwVkJDcnJhbEVpNDlJSy9rYXEwd2c2UW5yT0w4MVJobExuL0Q3R3E1?=
 =?utf-8?B?SjQ5VE9DUWh6MERiQXdNN0I4MllwQWdzYm04WlJhLzNJSDZhQ1RuRXRXU3A0?=
 =?utf-8?B?V2F0anBOaTZmWUtmMkpzMmRsWk9iNk5MS1BhaTR4eGlaNm5mMFlXeTEwTTh1?=
 =?utf-8?B?ckY5NHU0RXZILzdFL0krMGdNc25ybzdLY1FRMmdJeWdlTVJidzNJZVVZblBm?=
 =?utf-8?B?dStiUndlQUpRdUZ5ZkF1dnJ6VTJya1JmengyOU9OQWIwbERnME1lQXNsckpi?=
 =?utf-8?B?MDUydHBMdUx1STdZNmphQlpNNnRkWjJ4aEZMUEp4UTBvMlNhMzErVHh0UFRj?=
 =?utf-8?B?RG1xSW1kbnY2bHB1Mnc5TTN2TEZRZkhEaGxYRW1SUkd1YWlBSGNWaHNCQmFM?=
 =?utf-8?B?VS9CV1FXVVJRSDc5MnZRNjdlK2d4UER3SGNiT2MxZXM0Kzk3aCt3WFhtRnJk?=
 =?utf-8?B?RDBOZjI5KzdIWlBGYjREcko0dTZ6eWFmdVhuYUNScDBTNmUxbGE2RUQ1czNN?=
 =?utf-8?B?RC9nc3NGdnY5eU8rSVFZdmRWUW1uU3VMVzlCVjc2c0xsSm5ma2FMTVNNTEZx?=
 =?utf-8?B?VkR0SEhGcGZ1cnFDVVI0NGFYd0poRm9TR09iQTQ4bnEzNUdnNjJ5RFlWMUhK?=
 =?utf-8?B?TXVIQ2NQS3lJNzBQSFdtcURQL0pHZnNIV2RpMW5jeHhCbE54NTlpNVZ6SEYy?=
 =?utf-8?B?anBxOVl4L0RlakVYTW9TREpGSUE1enZlQ3pITDRIaDAvVW1uUDZWQzZkenB6?=
 =?utf-8?B?QVBjQURhOHNLQ3JpdG5hK2ZCRUpIUGpDN1QzU2NpQ1p5bUNPajQxMUV5RXFD?=
 =?utf-8?B?cldmMVc4SzhETWpvRnZxOW5TcG5kUlRDWllKZkh5Nk1oMWtJMXZESXk4RTFP?=
 =?utf-8?B?bTZGSnc1MEpNLyt1Y0RpY01iUjA0b3BUcDJCOFpoUTYxa1JNQzNjUWQ4Ykp6?=
 =?utf-8?B?YmZjYXc4K3g5aXM0RlRoR1RRM1lpbWdmTW5JT3dYbVlHeloxaDVrL0wzbnZL?=
 =?utf-8?B?ZHppejFxbXVqM1NDQ3U4QlhLSG9acHlyUjNiMmZSZVUzQlpzNFBodC9ocjZP?=
 =?utf-8?B?K0lvLzh6TkVtZDNpYmE3R0VWS1pZSm5wcUg2bXFhVFdpTG9WMFBPa3N0RTB5?=
 =?utf-8?B?eVdrOWJYc1ZWcWhIRitsYW0xeDNYY1gvN3hSWW5qMUVMUTJPSFRIMENwbXNO?=
 =?utf-8?B?Ly9MbURXNjZZd2xORGsyL3BvMitTOER2RHNvbWcwZFBmb1NBMHhOelZHc3pH?=
 =?utf-8?B?OUxvbHpZcHdRdDFmcjVDTTBGVEJ5Ni9YQUc0cDlqZ3NNQThTWld3UGU1QTE0?=
 =?utf-8?B?ZnFhTkZ6WHh5QjFCREJQNWlNRWdtSnVCNktlYlkvV201U1YybEVXbTRoT250?=
 =?utf-8?B?NEZuT25GQVl0Nm1JeENacWNDeCtoQjVkNmJjTTFkTDc1MHJiZkZ0QlhnTGRs?=
 =?utf-8?B?b0xvOHR1czdDOWtIVjdvcEJMemZDN1l5ajVTdTFrVEpJcW1TMUlza2lqajdW?=
 =?utf-8?B?cERCUlkzeG9EczB4ZGRLZnlsUU9COTFCdG9iR0dVSUxNa3ZXeG5kSVYxTHQ4?=
 =?utf-8?B?NHdRcFdhYXFEUkNoUHdZQW1WeHJ6YlViYzVzY2Uyek5UajZ2K2R0VC9jTll3?=
 =?utf-8?B?R1lZTmFlbnBUeTFqdVNCUG44Z1NHZ0w1dS9FWTRKemQyYWxOWVhZQnh1L2tI?=
 =?utf-8?B?c3l3czQ3WGpKTUVaMzFBS21YMDVrR3RYVHc4N01hNkwvZVZYaEQrek5GV2N4?=
 =?utf-8?B?SXpqQlNWOUJzems5QWhOR3pyaXNvQ0FUYytkVnQzajVnbklKRXJkM2EycTJZ?=
 =?utf-8?B?emVzZjh5azZVckluOFYyUEZZRDROcTlHc0t5bzkzRXUySDJlWHRsY3U4S1hw?=
 =?utf-8?Q?VfdYTOgCRi/41bCBg7ELndZDP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e710981d-c930-4adc-fe54-08dbbf3fdd09
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 09:55:21.7200
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 0ezhx4upBoYfVTjSlaxTOGYHSAiznZjNNlNsnrRzB94OccKtn8zc//WrjZkNPanYGOi3AfykVJTHLG2A4/urig==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB9951

On 27.09.2023 10:51, Roger Pau Monné wrote:
> On Wed, May 03, 2023 at 05:54:47PM +0200, Jan Beulich wrote:
>> In preparation of the introduction of new vCPU operations allowing to
>> register the respective areas (one of the two is x86-specific) by
>> guest-physical address, add the necessary domain cleanup hooks.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>> Reviewed-by: Julien Grall <jgrall@amazon.com>
>> ---
>> RFC: Zapping the areas in pv_shim_shutdown() may not be strictly
>>      necessary: Aiui unmap_vcpu_info() is called only because the vCPU
>>      info area cannot be re-registered. Beyond that I guess the
>>      assumption is that the areas would only be re-registered as they
>>      were before. If that's not the case I wonder whether the guest
>>      handles for both areas shouldn't also be zapped.
> 
> IIRC the reason was to unset v->vcpu_info_mfn so that it could be set
> again on resume from suspension, or else the hypercall will return an
> error.

Right, that's the re-registration aspect mentioned.

> I guess we should also zap the runstate handlers, or else we might
> corrupt guest state.

So you think the guest might re-register a different area post resume?
I can certainly add another patch to zap the handles; I don't think it
should be done right here, not the least because if we see room for
such behavior, that change may even want backporting.

>> @@ -1568,6 +1572,19 @@ void unmap_vcpu_info(struct vcpu *v)
>>      put_page_and_type(mfn_to_page(mfn));
>>  }
>>  
>> +/*
>> + * This is only intended to be used for domain cleanup (or more generally only
>> + * with at least the respective vCPU, if it's not the current one, reliably
>> + * paused).
>> + */
>> +void unmap_guest_area(struct vcpu *v, struct guest_area *area)
> 
> vcpu param could be const given the current code, but I assume this
> will be changed by future patches.  Same could be said about
> guest_area but I'm confident that will change.

True for both.

>> +{
>> +    struct domain *d = v->domain;
>> +
>> +    if ( v != current )
>> +        ASSERT(atomic_read(&v->pause_count) | atomic_read(&d->pause_count));
> 
> Isn't this racy?

It is, yes.

>  What guarantees that the vcpu won't be kicked just
> after the check has been performed?

Nothing. This check isn't any better than assertions towards an ordinary
spinlock being held. I assume you realize that we've got a number of such
assertions elsewhere already.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 09:57:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 09:57:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608826.947576 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRIo-0003BC-LT; Wed, 27 Sep 2023 09:57:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608826.947576; Wed, 27 Sep 2023 09:57:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRIo-0003B5-Im; Wed, 27 Sep 2023 09:57:54 +0000
Received: by outflank-mailman (input) for mailman id 608826;
 Wed, 27 Sep 2023 09:57:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=x8T5=FL=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qlRIn-0003Av-8d
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 09:57:53 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20613.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 518f03cd-5d1c-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 11:57:50 +0200 (CEST)
Received: from AS9PR04CA0124.eurprd04.prod.outlook.com (2603:10a6:20b:531::11)
 by PAVPR08MB9355.eurprd08.prod.outlook.com (2603:10a6:102:300::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 09:57:46 +0000
Received: from AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:531:cafe::9e) by AS9PR04CA0124.outlook.office365.com
 (2603:10a6:20b:531::11) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21 via Frontend
 Transport; Wed, 27 Sep 2023 09:57:46 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT005.mail.protection.outlook.com (100.127.140.218) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.21 via Frontend Transport; Wed, 27 Sep 2023 09:57:46 +0000
Received: ("Tessian outbound c99fbc01d472:v175");
 Wed, 27 Sep 2023 09:57:46 +0000
Received: from 3356c32d4354.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 D6CDD614-C9C2-4E29-AA17-8DD98541F20B.1; 
 Wed, 27 Sep 2023 09:57:39 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3356c32d4354.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 27 Sep 2023 09:57:39 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAVPR08MB9061.eurprd08.prod.outlook.com (2603:10a6:102:325::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 09:57:36 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 09:57:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 518f03cd-5d1c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=lHC7WZBYfbPZkcxCyvkYvjbnV1eVTuoXV0VksTsp78E=;
 b=sn0/Ro7yFm9ZJ2KacwANuOk1gPJtuKads/EhxOpflk3rquBkAvHG0a58eggEAXDSX1IJD6F5DfkTPbsc/woWmGxXj5+dKYXyhOViQFBXCnFLmdaf9WNO4x9Cd2nOggPetXMy6apPm5lzdA//7EhMoDU7g/FbPwpKdegz8wxm+VI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: e5fc3fbaef466447
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=crTHIcIMUnzRVd/8G0TGwK6Gdho9TjrMHgPS+Ckw8hE6LvxdTU7qUjPXLvW4BPQGg0qidyEiX+7gSOJ7X7e+/+c/joEDmv2mj7WAGFagUp0fwj6ooJV3bHOgBSv/ulR6EZrcmqhyXUXtPzSVgiUlmdr1pdDbtG8FIlTW7Q40ttBDjJwQjl3/GY7KV0MhvLmo7QXZEM190he6uK0DqazqGBI/zECHGA88Q4O8Dd8W7MmilZAeZWwlV/e2kSvgwgnwmuCnamdGM4CKuxYvnBx96xpKASqcFZ5QU4mHOypVhK3UeV3dReOAGp0jHkf6tJe8aL8kVM/Opm7PfFAz6KzGGQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=lHC7WZBYfbPZkcxCyvkYvjbnV1eVTuoXV0VksTsp78E=;
 b=mVhAKesaYoZIptyE7IMtdZA2LpWt6aryE7VZpqUnSbePIvPGtWwgURdGeff+i9sZ9pUllBW0ThtT9WYtxtLmNynm0rwGeUbtrTldQIwaDorlru2X55HwiWc3gWEe0Hce8tsyuZTtbtHgqHRlJjvjtXpasdJGV4DaiJwNJxaY4pTlwun2IBIr2MV24inv/WYNjrmXHlseFhyQITO+HLZfKTfDTa5ZkIYu6YWw7ytzXfB/eQGwf+aVfLo2CUD9ldIv4LguRaRlo9XtItd/YhuIgtHAQdb6Jm7pyVJF/N4CwcUOoxE5gDH0Qya6dIsA3RisWz7BHBAvSiX6tAGAHEvC7w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=lHC7WZBYfbPZkcxCyvkYvjbnV1eVTuoXV0VksTsp78E=;
 b=sn0/Ro7yFm9ZJ2KacwANuOk1gPJtuKads/EhxOpflk3rquBkAvHG0a58eggEAXDSX1IJD6F5DfkTPbsc/woWmGxXj5+dKYXyhOViQFBXCnFLmdaf9WNO4x9Cd2nOggPetXMy6apPm5lzdA//7EhMoDU7g/FbPwpKdegz8wxm+VI=
From: Henry Wang <Henry.Wang@arm.com>
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Michal Orzel <michal.orzel@amd.com>,
	"xenia.ragiadakou@amd.com" <xenia.ragiadakou@amd.com>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>, "consulting@bugseng.com"
	<consulting@bugseng.com>, Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, "roger.pau@citrix.com" <roger.pau@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei
 Liu <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>
Subject: Re: [XEN PATCH v2 0/3] docs/misra: add documentation skeleton to
 address MISRA C:2012 Dir 4.1
Thread-Topic: [XEN PATCH v2 0/3] docs/misra: add documentation skeleton to
 address MISRA C:2012 Dir 4.1
Thread-Index: AQHZ8Shy2mMpVlpND0C+/CYXjLA/CrAub7eA
Date: Wed, 27 Sep 2023 09:57:36 +0000
Message-ID: <038E9560-2F91-4098-A681-9BC7872E986B@arm.com>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com>
In-Reply-To: <cover.1695801813.git.nicola.vetrini@bugseng.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PAVPR08MB9061:EE_|AM7EUR03FT005:EE_|PAVPR08MB9355:EE_
X-MS-Office365-Filtering-Correlation-Id: 9760cfb7-846d-4f79-211a-08dbbf403381
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 qVbQCtJtyJKCWCtM4ziG5Zy1tKJqpwovCCkwWvO3qwSuvM1WGEZMDYDGseJuyDh88BEdmvwtDIPSb0eaK6EFA56c0dxk3tLLsVpNj1WX5BpNYSeXZZhn1R0nw+793uPt/EM5lGHS8F53WplN6mcoxQU4agCa4R5PM36+uRnT41CseEnHH6V8zLcEX/s1U4VplBfjzbAPGzxpByE4+MSbu4AVKqU5xznlmUDCpJ2IzD6mjrhwXLJ7qUmdVwLNqCe8CnIzT/sEv/8Norh3f2l8P2ZqWkSWlAV/cE29FPvqEhHECuynaEwMrigWM5sIbK0EHbENCYfh94lKCMGqOC7imWpX0zyK2OpXicsiY/xQoCNuI4RwMg/7aZ8NIImHaPyFGWIvucjJ585VsFssuLx1zk0QK17dAlcyd6H/R1WXL34wyGZTvrtXbGuA6CElGyC7tTDTG7RWdic5n4iIDQ5dK3IyQ/iBH7wq2tl2MiP7gBgH1pYhLZn4TzJhm5ikkOgjhFzERmXuOMBgGVnygrTtxfQ5d6VUFO6ojZlxiQ8yjf7O0w1KJpkx8v/vqnv++wQHkJmaBF4gdwIkTejuGVrRPJYF0uhC+3mIwaERik0ueCf7MHCSF0lrNVu2VaRQS78DzfnSjvxRMNNDchWcKu3m7Q==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(376002)(346002)(366004)(396003)(230922051799003)(451199024)(186009)(1800799009)(83380400001)(6486002)(6506007)(53546011)(2616005)(86362001)(36756003)(38100700002)(38070700005)(122000001)(33656002)(7416002)(2906002)(8676002)(71200400001)(478600001)(26005)(6512007)(66556008)(8936002)(4326008)(5660300002)(41300700001)(64756008)(316002)(66946007)(66476007)(54906003)(6916009)(76116006)(91956017)(66446008)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <1FA60C29E9D61146857E4C9AEDCA03E6@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9061
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6e95b794-cc0d-4e90-79ec-08dbbf402d70
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+lvNMENQLDtLbqyiCc8dfU5ZCnWA4ZsNG3lpcEbfezOWUiPab2m4IF7FKAxZurqx2zgNW2j/JowP3Kt9C3WlW0ANhCABWZb/zqiBhplozI7VbJcYrFGDjdMAwHpJjp44Z09T6gQ5mBub6/smx8fyHN5dYmkp8eqpiPpaHQzD0ugTJcMvpVnw9lLzJ/GjstMY9URBmQ4NeDWtfzyo/qg28PvxFKRoyflesIryLPDlxtJwTbeQeCQE6p10KkF+DBS0FsB1RfVIHzji9nzxqK3tb7CXYbGFGJh8n0AivwjXlT4DSgb12VA9dMG1TtLwDLappep5rEs6ECU3SpvpqJWvJlDMUc2DMZrgcNw1BCegAGSSLFTBWK/ZbzW99IeDJoOwg7YNU9glK/+1hfhooq+jQ/+01L2mbAMAiIcsZLsbt5nbD9eQ4xp8TP+C1faKpdU+SV7TVvhYDFmXl0p1nA7oPa2MT5tA3DwG+WpyY+jzUY+ip5i3vS8xpaSqmNGS3rKJ9qzJg/Ln1nlCsOD7sMxFn6SjmKRhymAoU1V1xJVPxNrBcjqEkF91Kp0eIe2jkJCotcuXhi8l7rTEEFDuVdcsjGCSwNbDrbiLT38y1M0tQoODufKzlSeJcd19mnIvpwYn/peYpgkegn6SCTpxoQmVYaD8aplKQZMbYrtQfQbrqK856gDwqloUsl7aHoMzUvOxuRfx7m0IBbJDDbu3fqtPMX3QtyWlo8X0KRXUbR/wcwvIu9G+8c+rhR0L44PQUYRc
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(346002)(376002)(136003)(39860400002)(230922051799003)(82310400011)(186009)(451199024)(1800799009)(40470700004)(46966006)(36840700001)(40460700003)(2906002)(33656002)(47076005)(26005)(2616005)(53546011)(336012)(6486002)(6512007)(36756003)(6506007)(83380400001)(36860700001)(478600001)(86362001)(82740400003)(81166007)(107886003)(356005)(40480700001)(5660300002)(70586007)(54906003)(70206006)(8936002)(316002)(4326008)(8676002)(6862004)(41300700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 09:57:46.5188
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 9760cfb7-846d-4f79-211a-08dbbf403381
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9355

Hi Nicola,

> On Sep 27, 2023, at 17:52, Nicola Vetrini <nicola.vetrini@bugseng.com> wr=
ote:
>=20
> The headline of Directive 4.1 states: "Run-time failures shall be minimiz=
ed".
> Thus, it requires the project to supply documentation that pertains the m=
easures
> and techinques used to prevent run-time failures from happening. For ease=
 of
> reading, the documentation is in RST format, but since ECLAIR needs a sou=
rce file
> to check that the needed subsections and their format is the one expected=
, the
> Makefiles for the docs/ are amended to generate such a file.
>=20
> The format and categories of the subsections in the .rst file can be
> customized based on feedback from the community: the one provided is just=
 a
> basic skeleton that should be tailored to the project.
>=20
> CC-ing also Henry Wang, as these are just documentation and CI changes

Indeed, so technically it is safe to include this series to 4.18, if this s=
eries can
be properly reviewed, I am ok to add my release-ack tag for each patch:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


>=20
> Nicola Vetrini (3):
>  docs/misra: add documentation skeleton for MISRA C:2012 Dir 4.1
>  docs: make the docs for MISRA C:2012 Dir 4.1 visible to ECLAIR
>  automation/eclair: build docs/misra to address MISRA C:2012 Dir 4.1
>=20
> automation/eclair_analysis/build.sh   |   6 +-
> automation/eclair_analysis/prepare.sh |   4 +-
> docs/Makefile                         |   7 +-
> docs/misra/C-runtime-failures.rst     | 200 ++++++++++++++++++++++++++
> docs/misra/Makefile                   |  22 +++
> docs/misra/rules.rst                  |   8 +-
> 6 files changed, 240 insertions(+), 7 deletions(-)
> create mode 100644 docs/misra/C-runtime-failures.rst
> create mode 100644 docs/misra/Makefile
>=20
> --
> 2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 10:00:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 10:00:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608834.947586 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRLR-0004iV-8n; Wed, 27 Sep 2023 10:00:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608834.947586; Wed, 27 Sep 2023 10:00:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRLR-0004iO-4W; Wed, 27 Sep 2023 10:00:37 +0000
Received: by outflank-mailman (input) for mailman id 608834;
 Wed, 27 Sep 2023 10:00:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=yKED=FL=gmail.com=oleshiiwood@srs-se1.protection.inumbo.net>)
 id 1qlRLQ-0004iI-Bp
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 10:00:36 +0000
Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com
 [2a00:1450:4864:20::42e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b325865f-5d1c-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 12:00:34 +0200 (CEST)
Received: by mail-wr1-x42e.google.com with SMTP id
 ffacd0b85a97d-313e742a787so7155957f8f.1
 for <xen-devel@lists.xenproject.org>; Wed, 27 Sep 2023 03:00:34 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b325865f-5d1c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695808833; x=1696413633; darn=lists.xenproject.org;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=Ppec7Arbp5jrClzF4Ov2I+Cas5TkMngBgUXcg8S83oI=;
        b=X0wkaC6FQB2Jap2o6iWoA5zCLD+ygrokV+uMedmaoQNvQqKlnUgSpgxgGfrOKhd2ln
         lQsIRkNUa5dMx4/KT7PVM1y5AqiFkZex+yZNzgy52WSsFdCvZRVHV1B1VgtHFoo+4gNz
         jX5Eu1clxy6ZXiN7gtP3GDTDRS5TWs0BQo7pM4A9bUbLwuRkvvYZbvv/LWUhJrYdr0pZ
         ue7WdcNpv5teHixVYcAmwuYvKUDfCX4/YDZ+tMqJUVGtSi7hveAIokCKeaSISXNnPBhN
         4iSNR0Cv39mNLPv8H3NmM4YoHM3E6dczhKX/JKn91PEhtETdhTCAvtZoxF1D94nj1mVG
         DCRA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695808833; x=1696413633;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=Ppec7Arbp5jrClzF4Ov2I+Cas5TkMngBgUXcg8S83oI=;
        b=QoGE6wDykfFRYp28UfhcDsKAVJeBY29C5I34ZOerF5OKWMz0wovL58SI6QvnCqW/Iu
         GYDfBG/NlDIob7lzT8zbBe4/DAVyjM5YaDVlTxQsOjZG7nPuHgjrzmJVjOrUbbNAFNlb
         Zefcy9XVWo4AKFOtnBs+OkMmgeexzLoAfqBP3+ebBsEJPtZ0HWKtSNV1hLWLfndCzU1y
         paRZOglT/oLeYF0sNG7pp7pCR32Hk3myBJSFVDiZIHGF3kJgeJD37DzEvMEltB/qGnXD
         ioIwLN2eiy+gz83Dn4ZyOoYGfkfc/5BxGKd3jaO2uVX8Gvo8aBVY77tOsKCIvMcedLnE
         7GLw==
X-Gm-Message-State: AOJu0YzxOZIxEvUwg9j83uMQmXApbXqEbquC/IPT/afG+Dhkntgsw21Q
	IHsZxyC2EDuuJMV5gW9wwkrmeU+7f+WciZ6ZHoLX9rTR+3vBvQ==
X-Google-Smtp-Source: AGHT+IFzwTxW4CtN+lj9pKsHSsFsqL7PtsMdtIvc4SnEJeLboQ5akrCL5e4alDITjZ7i2R0muRdAFA6puVjh4yIcUe8=
X-Received: by 2002:adf:de11:0:b0:319:6b56:94d9 with SMTP id
 b17-20020adfde11000000b003196b5694d9mr1390241wrm.2.1695808833230; Wed, 27 Sep
 2023 03:00:33 -0700 (PDT)
MIME-Version: 1.0
From: Oleg Nikitenko <oleshiiwood@gmail.com>
Date: Wed, 27 Sep 2023 13:07:27 +0300
Message-ID: <CA+SAi2tXMupikB2YgEXuq98KnOcqm6zWrk19rNvWTfzf2=ku-w@mail.gmail.com>
Subject: changing Dom0 data during smc call inside of xen during cache coloring
To: xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="0000000000001ca4af06065443a7"

--0000000000001ca4af06065443a7
Content-Type: text/plain; charset="UTF-8"

Hello,

It is necessary to change some structure contents from xen.
I have access to the registers.
One of them keeps the physical address of the structure.
But this physical address is valid for Dom0 only.
Dom0 kernel gets it by the call dma_alloc_coherent
A lower mentioned scheme does not work.

            uint64_t paramaddr = (uint64_t)get_user_reg(regs, 2);
            uint64_t phyaddr = mfn_to_maddr(gfn_to_mfn(current->domain,
                gaddr_to_gfn(paramaddr)));
            phyaddr += (paramaddr & ~PAGE_MASK);

Regards,
Oleg Nikitenko

--0000000000001ca4af06065443a7
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hello,</div><div><br></div><div>It is necessary to ch=
ange some structure contents from xen.<br></div><div>I have access to the r=
egisters.</div><div>One of them keeps the physical address of the structure=
.</div><div>But this physical address is valid for Dom0 only.</div><div>Dom=
0 kernel gets it by the call dma_alloc_coherent</div><div>A lower mentioned=
 scheme does not work. <br></div><div><br></div>=C2=A0=C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0=C2=A0 uint64_t paramaddr =3D (uint64_t)get_user_reg(regs, 2);=
<br>=C2=A0=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=C2=A0 uint64_t phyaddr =3D mfn=
_to_maddr(gfn_to_mfn(current-&gt;domain,<br>=C2=A0=C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0=C2=A0 gaddr_to_gfn(paramaddr)));<br><div>=C2=A0=C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=C2=A0 phyaddr +=3D (paramaddr &amp; ~PAGE_M=
ASK);</div><div><br></div><div>Regards,</div><div>Oleg Nikitenko<br></div><=
div><br></div><br></div>

--0000000000001ca4af06065443a7--


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 10:15:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 10:15:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608844.947595 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRZQ-00009l-Dw; Wed, 27 Sep 2023 10:15:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608844.947595; Wed, 27 Sep 2023 10:15:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRZQ-00009c-BI; Wed, 27 Sep 2023 10:15:04 +0000
Received: by outflank-mailman (input) for mailman id 608844;
 Wed, 27 Sep 2023 10:15:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WUTS=FL=citrix.com=prvs=6275c33bf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlRZP-00009W-6d
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 10:15:03 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b616adce-5d1e-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 12:15:00 +0200 (CEST)
Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 27 Sep 2023 06:14:50 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by LV8PR03MB7472.namprd03.prod.outlook.com (2603:10b6:408:18f::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Wed, 27 Sep
 2023 10:14:47 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Wed, 27 Sep 2023
 10:14:46 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b616adce-5d1e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695809700;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=NvO3ZIJy0+83XkhKziI/BAuXzPy1eSp+zp5Cy+P5xY0=;
  b=UvFdkWn3gtSBloA7Mltln32JwLaP1PraRP4kvQHnyDHLFGXiyO7zG72+
   PerBVIejIMn7oRaq4LyiwEJnrUyfYTaB8oqTuuJfHuO9JISIiXbU0L9R9
   gZ+YuPrJcRLO211E3tcpmzuqrl/O4qrdcKbqzXAKs8se0sIQMgnz93BJm
   c=;
X-CSE-ConnectionGUID: sA55fg2fQzy3Q9PjHAoR1Q==
X-CSE-MsgGUID: KVV8NQ1dR0+ZDAmHR9nsqQ==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 122569197
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:ia6aE6qk0HIBwT2ehDGf8rKisQxeBmI+ZBIvgKrLsJaIsI4StFCzt
 garIBmAOqzeZzTzLo0ibtiy9k5U6J+EyNRlSwA4+302HngSopuZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5wePzSZNVfrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXACskM02NiLi4+aCqEdA9vsYDBc7RZbpK7xmMzRmBZRonabbqZvyToPV+jHI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeiraYSFEjCJbZw9ckKwv
 GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdhISePpr6816LGV7k8tNk0wbAK3m6H6uGKXXvJle
 koP4xN7+MDe82TuFLERRSaQonSJoxodUNp4CPAh5UeGza+8yxaUAC0IQyBMbPQitdQqXno62
 1mRhdTrCDdz9rqPRhq16bO8vT60fy8PIgc/iTQsSAIE55zpptE1hxeWF9J7Svfr3pvyBC36x
 C2MoG4mnbIPgMUX1qK9u1fanzaroZuPRQkwjunKYl+YAspCTNbNT+SVBZLztp6s8K7xooG9g
 UU5
IronPort-HdrOrdr: A9a23:Jyn2HK2mOhsrALpTmtpD4QqjBLIkLtp133Aq2lEZdPU1SL3/qy
 nKpp4mPHDP+VQssRIb+exoWpPwJE80nKQdieJxAV7IZniDhILHFvAE0WIg+VHd8u/Fm9K1GZ
 0OT0G2MrPN5f4Wt7eY3DWF
X-Talos-CUID: 9a23:vJDP1W7pW3sZ7gJzPtss72dJR84qKHPk3maLGh6AC0ZAT4fMcArF
X-Talos-MUID: 9a23:wicBRgldIMTdq9HkkiJidnpBCvk4xZ33BHpV0qcqksykD312IC6k2WE=
X-IronPort-AV: E=Sophos;i="6.03,179,1694750400"; 
   d="scan'208";a="122569197"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cEIKqXjOfvV01Lrs/E+3TIHDPNMxN0FeSG62dwLIQ6IRzFykc5e7EaxAxKRxcoz9KO9Zs/HAcNSXX4WMZAMcfFzqQySWkh5R+Err5lXCGL5XGio202p/I5Rv/gROalJcRxuiRGhov3iyVWFof8N5QtSPztPLl/cBJgXOm+jzTmvsOfiNmXBk/fK8id27CGO0tiI3evbCWhaGNObSY274R/pG2zw713Q61zlZ25ESXLChs3LZ3WHX7R27YuHgN5jC8Cx6NmeuopBousDk3P/YkM3Rjb5CAnJ8UgAcHWdxgcgNQzFOx4Ba9RyT9WfOCOMWB57FUHbqJJU1W0xuxwW3tA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pDC4qiSsCKmZiS2KKGzVp5yVwypRDfXXvGfr39vzRZ8=;
 b=PCMvOy7s45SGFN8z706crqJtG+DJE+e/EMr5kVNlR3HuD85DPPUXf+/VuDtMb3zqYu2MThAgSg39lMv1xCaVGzuJB30rYhIb7W4Mpr9cQMw+/9MkOo6CPUyNrcbPHvDN8ujFqAX13oBFcVPYCQKmI3HGF/TpOY7t22xydSvW+ScDH6TPuqnLYaSEJPIZWJ4iIk6k3DcJIxQ5oSg54fGwt/02M1MiIkuhFvHjA0x70ofbLFDZu1rwmxbyHBf3elP3/Y+0e96HV2sQ2NRDL3CfaQzk4jMkPEBeGX45tvKmF3GFVAs995ubGQsoBHq/VvJ1WsmV4MYh0eCIFDRDT/S+Iw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pDC4qiSsCKmZiS2KKGzVp5yVwypRDfXXvGfr39vzRZ8=;
 b=D6mW+EoN4nS1/nB5BdYne/BfzwfSzpSDdRUKEV4djZnr7YDfCGt6UMLXVP8mZKQkzNh0H6hID8wPv+Ja+cjK53Fr9HS8t7fC7cAA0ZHRNAwR9pqeMzqYC3RMqaexRS7WqNVh04C9wk6VmiLQkePSiqItrmay2whAFuXvkObf6P4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 27 Sep 2023 12:14:40 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v3 3/8] x86: update GADDR based secondary time area
Message-ID: <ZRQAkKzIR7dxnY_H@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <3cbc92ac-7817-e08c-0e7a-bddd0a4ce070@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <3cbc92ac-7817-e08c-0e7a-bddd0a4ce070@suse.com>
X-ClientProxiedBy: LO4P123CA0477.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1a8::14) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|LV8PR03MB7472:EE_
X-MS-Office365-Filtering-Correlation-Id: 0cecd5f2-9ff9-48bd-d17f-08dbbf429392
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8dg4cJTvRod583v9rSg9vV9HldLHSK/Sak4qYjFV2dkGzFyJqW+QtgI4BiDNxYWJF9J8zfZ88Ly9CpD5Sgy8CBW+eUyMCV5NVvW/vSwQK/usNlGqRYIPCP0Hbxi3eH+V9dyze/xkagEkYEwGl2EP0fxqALmzqZeGD0fyg6eO6frIASY/92MIPgH9E4RMcFYdMDQczjKOUvHhqs9Ij1yb+A0/ymKy/l1s77dt2dkVPQus+IJhRsAR25QqsbHhICF6MzfzI/tgBq4hVqWPupJKnOcWsFMjOyBvDnszLSyp+iVUoQgrDki9QZ+RFz6FxEUU1VdRZrCZ4MntlstXguyz5HjC1/GWEW1yEXS9p0Chq6F3+mfPw0EeY3zd8yR25dk5esLnpsg7ZwTbSAULsz1ppAK/xDoz2A9r1hCpTKFodq7xdCuGMHrFlqyn8pn2shP3AIfvn3Da5ljGxHDOzivw0PEp+U/UDIBmRoei7xa0K8r4K7h7ND+6728DXSB50avJLMPhw2mdWldvJNYQoguJBZMy0x1soZdR1iV7K6V6rOIFuM8CAJgZYPtVpYDVnSpv
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(346002)(396003)(366004)(376002)(136003)(39860400002)(230922051799003)(1800799009)(451199024)(186009)(66946007)(66556008)(316002)(6916009)(86362001)(66476007)(41300700001)(8676002)(8936002)(33716001)(5660300002)(4326008)(85182001)(54906003)(2906002)(4744005)(38100700002)(478600001)(26005)(6512007)(9686003)(6666004)(82960400001)(6506007)(6486002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UVJPdUZVelFGaEw2a2EzQllTNXVaZXRldGI5a2I3N21ucUxwUVlyZUkvU0pn?=
 =?utf-8?B?L1pKUnpKV2tZRnRXTmxqZUJtTGh2VkJjcVR5Y2o0dHRFanBwRkdaQm4rUXJV?=
 =?utf-8?B?d2xkMDc0SXl0TG4yamkxY2hyczd3NFZERFBIV1N1bm1rUWpOTW1ZRXhmVjhJ?=
 =?utf-8?B?eWlKY2dkYmtkbm1zM05uZnIwd0Q4QlRrODZPU21PUXRNZ2EwREVueU1JNzlk?=
 =?utf-8?B?cVVJTzYwMGJwU1JJMlVPQVVhRXdjTGpHZmc5dEVCdmhYc3BHb2hLWGpRNVp0?=
 =?utf-8?B?Y29HYnBTbE1VTVl4SG9IMjF6blBFUmhNeDRubEU4UDJPSTVkM0Q3UGFYZnYx?=
 =?utf-8?B?YmFBZWlncEliQmh1L3ZNTThsWGQzbzZyM2pnRFBUL3I3QThXTmNUTVJERFZw?=
 =?utf-8?B?dE1OTHhodCswSTNBVWVoRWtlZUIxKzZiVUtIeWpZdDF2YkJrRVE1eitVODhw?=
 =?utf-8?B?Nk5PL1FRcGxzUGl3c3owQkErRlJMNmpmZXMxN1NYSVM0VDU1VUJzRnBzRDZZ?=
 =?utf-8?B?NU5HY01MUUV2TlFQcVZTZUQxMllGdFJBSFdycDRSbUdiL1Y5cmdubGk4YnpQ?=
 =?utf-8?B?Y1FyK01CQjZRR09SZUxLTVJsRHhhVzA1U1BMQWUxSS90Uzh0V3VTTi91QUxn?=
 =?utf-8?B?czNpRWJDMTJ3cnBzWlhSQTlrWjlrZjFMSEp0eGtYazg1bkNpdjNHYk5JNFRO?=
 =?utf-8?B?RmllMGNqTjZUa3ZjVWN3R2VjVDFiOGtnN0EvUkZoeENRWmw2TFVqVG91UnB2?=
 =?utf-8?B?NmFkY1l6dUZVU2NjcVdBU1VhQU4ySktlTzBNNzJXY0VoS2V2S09tQWVCc2ls?=
 =?utf-8?B?UlhBUGVsaExaYVlpZGliaXU3dFFQeHJ2QlJ6OFdOQWNZT2NVTTRWLzdmU3RB?=
 =?utf-8?B?SEFzb1hTa1UzTUV6YXRESHBoT1FpZ3dDdjZEa3VKTUhRWmRPaUVSek9hU1Fm?=
 =?utf-8?B?VkF3NkRlS3ZpMkxHN1c1N1BuSzRSajFqZjY3eXdXS1FUTWY5NkpDeEtXUVh4?=
 =?utf-8?B?OUZ4ODdoYnJ2a1Z2NC9UTjlZT2M0YTc4L055dmFWQVZneklQd2VleWNYTHNr?=
 =?utf-8?B?VWdwT0QyRDQrbU8zb0pETWlyNjQ1N1loQkRoQUpzWFVTN3RjWVBUSkZ3bHNi?=
 =?utf-8?B?bm40Rzd5Wkt2UHB5anh5dGdZTURTUUlhSmZicDRHdk5yTEN4TUtWWXNTOXJk?=
 =?utf-8?B?RUxvUHcxQ0NycEswT3ZzTkJtVy85TlQ3dWE4U0tiT21EeEJRTW9kamh5MG1i?=
 =?utf-8?B?bE9DSE1FS1hvWGN6cjArVkZDTHJxejhCSWtybG9jRDdrendvNzdEV0xyL29U?=
 =?utf-8?B?TXFScFgrcUZlaitzTXJLMGtLN0xiMWRIVWxtOTUrZk16MnRuU1lBS2NtaTJ2?=
 =?utf-8?B?S3RMN3E1Q3ZRRDkxdTZZalo4SmFhd1VqSDlWYU4veVl2UDc1VVkxR2RsaFBt?=
 =?utf-8?B?dVB3QXJNZmJ3VndGNDg2SDE3SFpsMVhPeDliS1dCN1NidGxQMWpCV3dhU3pl?=
 =?utf-8?B?Skd3RzNQRGlyY1hpWGRCcFNYOUtOMkpEY1NSYWpTSHRjT1ozeElsVnA1cURn?=
 =?utf-8?B?Q0thNUhDL3QwWTYyWlI1UW1DNWd6dEZuWjBjbWlpWTVEL3F1eGlIYTdIbzJu?=
 =?utf-8?B?U1J4dFNFSzVvbmtyY0N1NDZpdXE5TVM1Ky9LTGxGTFZnTGU3YmszWm1OSGxv?=
 =?utf-8?B?WFhVZjh1aTMyeEc3K014YTZhMi8vTTRnN3hTamU0T3E0RUtvSWJhSjU1bUw1?=
 =?utf-8?B?cWxVUVJOd0dWS3dXdWlhVjhLbzN4NnVzZkF0b2crUVZKWlFVREJweFJsa1Nx?=
 =?utf-8?B?TktNenNORW5DNkZZeEtQMmphdkZ0dUJydENjVkRVdWM5NFlhRzVLSkEydWdH?=
 =?utf-8?B?S1N1M0tiNXNXdjkveDJoWUl1Z1dEa1Z2Y3lGYUNqMmNmWTVWWnBITGNlRmVN?=
 =?utf-8?B?dTNmeERqSEwzRUJ6RW8yRS9EVU1NdzBiVWRFYUJDYVNmRHRBZzRYdjk5MjZH?=
 =?utf-8?B?WmdZd295UHpmMXNhZHpVM1hRc0c4Z0RMSnFuSHgyeUQ1cUcyS3EyaHd4aEE5?=
 =?utf-8?B?ZFF0ZmVWMTA4QWZHNy9TRnRQSk9lL0lCVHNpcHVxMXVFOFlUeGtBR0RiTFNB?=
 =?utf-8?B?MlBUTkVFTlE3U3g3Z1BjblpsYTMxV2g2aFhXQ1dBRll4RWpZRE5DV3FJUkZ1?=
 =?utf-8?B?VUE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	hPZx98A6FO++wd5LfUphlHmTDLbNnZ2J0hpy7WgxypVRM2UATCzskLYMIJzpq1CesgtRp51uH8LXSaq0YmJYHGnaXxXDlrbY4yNIVTCQD1KCAikGLKN6d16a7l4FI2T3WRj5bhlA2j/jcOFt3A9eAldLMYnCRTRX1Fx39TJDqNT0Wbogxqy+ITUGmpvNXsb3F/RZy+m9sBjRnXR3BPfr/JMDSryBQ7I3zDO00oAL+RLAIHFSptMI2nOchQeYEeMekJAiVrPMQZQyuLzt19ujD0uO7HoHz2ZU1eMNBasfgv4sY/bRDi1B1lpzWG7gA6cZnz61jC7nRqFbU6blTJui3btK3KUCfPmgfh6xpw6iVntSyRHiigk87Z+j0n70rWL9uDqVwmyiMR3Id2IxmMp/HsLJWNELrEFagokC1IpHk8jZH3QWjqn4/fCGwBN+ZYpIjlsa+EgonUkD9GsbVD8BzwqAYyuuyjxxgkitmmnuk1q3wdN9UEyj1Q26sE9e5g2tl4bCLvwXpiPiWY/Mcs2TR7KXydb4AO8L7S4tN0YSYK+YyuhIxgNHWZUpMX87iFQrcH+eCzmsbUrYDihvb7cq2q9zJ+pY8zeHjGqP6ma2/7VrBSRpUzwP1u4Ru2wYvMC4UMgDKf0egnLqjdBjKpYhaLKuoFHNkuzfyX3n1zpRPwU8RKhWt5FukkY0s/mNdV648rW1o5HcMSYHYgkJiv8s53i0iTU94w1enjkYMPO8ybvWi+6/c0GBaFfn4+cnWBZvOk4yV3wiMCPOF2OX5TNC1mH74IOqkNJhjFOpSAAy3rEf1SjgiYsM2SP5Teix4Tmp57jtnRG9xcfmb0BKiCN9UA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0cecd5f2-9ff9-48bd-d17f-08dbbf429392
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 10:14:46.8915
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ECL+nzkbWtLWgOUHZ3wv1vbGdXgx3hb/yaaHiJiq743tbRdE22+tYlN9obIeXCY++bDQ6aZOnVJ1cPm0ae3TUQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR03MB7472

On Wed, May 03, 2023 at 05:55:52PM +0200, Jan Beulich wrote:
> Before adding a new vCPU operation to register the secondary time area
> by guest-physical address, add code to actually keep such areas up-to-
> date.
> 
> Note that pages aren't marked dirty when written to (matching the
> handling of space mapped by map_vcpu_info()), on the basis that the
> registrations are lost anyway across migration (or would need re-
> populating at the target for transparent migration). Plus the contents
> of the areas in question have to be deemed volatile in the first place
> (so saving a "most recent" value is pretty meaningless even for e.g.
> snapshotting).
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 10:20:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 10:20:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608851.947605 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlReM-0001cz-1I; Wed, 27 Sep 2023 10:20:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608851.947605; Wed, 27 Sep 2023 10:20:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlReL-0001cs-Ul; Wed, 27 Sep 2023 10:20:09 +0000
Received: by outflank-mailman (input) for mailman id 608851;
 Wed, 27 Sep 2023 10:20:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlReK-0001cT-HK
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 10:20:08 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20603.outbound.protection.outlook.com
 [2a01:111:f400:7d00::603])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6da682f6-5d1f-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 12:20:06 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by PA4PR04MB9567.eurprd04.prod.outlook.com (2603:10a6:102:26d::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 10:20:01 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 10:20:01 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6da682f6-5d1f-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mPloEKHuBDpDyejoLIXQic39XJGqZ1jm3DQbocSmuXAGXTB4SjUltdyq9vTXjgnt7UBU6XWojt0ym8FIYi27kPlDCpkARN8nREWcAaUmUg1hBCX1E243acW+2kpncAol7Ovml+d9rh0I7kuOynjxTuLAQeZYvMR5hi4V2wEr4tjqJWbqdPQd6Uq+ATB9GrxDJ6Q/UADq3zZ/P5vedYOFqLRJC/AulT/1jyQvqNWMN69gWqWKrY0R/szSpJI1gpGoF3chSXf5Zr9ItnsZyqwftN5WACWaubfHTdEKm1nhcT0V9cISqjg0H5c0mO7sNfkuGReslh4X0uUeJIApZ09ChQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=AGexAdk9bM7ssoOXTrZr+4jSeP4JbipQGyZ1N1Cikv4=;
 b=iSw9yh9doYgbARp7MLFGby7QzA1+h+eDqfTyUQj1+4+IQ+CI5MdiOk8Ig54giazZ9AkEr1PJa7EYbyqcIqr6qL8PpftOvU9bzqTdAXlyG9NVZoTj1mzKawljpeHLI2nwb0Uv0WX3ZBUtlQA/aSqV3sWStj56ZWWjlJqsKeYE7y44Drzb4VDg/vYgJjNOL5fqb24G1iJKgnt3x4EooU/fHHdJGCCae29u10NDIpP0qFDsSmuS4EwZR6i3Oiw2Ulzz7ZJdCyMFzWm2eu5B+zYLXze2SjUFPdMebqh/Sb79TvvkdS8i+NW2hktDEe1FeDUr21AUcuhrQcV7Ljz//MCfsQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=AGexAdk9bM7ssoOXTrZr+4jSeP4JbipQGyZ1N1Cikv4=;
 b=X7MR2mvKbk73nrya0yXN/btL2uxKlbSC4Pss0Ng3S4QdLyIltJZXiFu2oCRIUMUafBKBk7IcJ1JJ1/z8uGGowOa8Ifm2pWNEwi8f8SOrrBvZPpwNQUiMlNzp30rgUKDczWGIGvi0/7s+EwfD1DtVtRDyCOosLX7GH1GxsWCA4adL/5xD2XvChhMU4puwZh3jCd6pNnQBSAhduJhhfG/H5paUQDj3oo5hU8l9HwXjxWq3fGxYofnHlM5iXKX8OuAL557sIeI0AbZhKLPq7WZ8R3/t6k2zAWy6eEAUT1bSwbttPTMKbRhi6WknSvfZxWTtA/6a71pfHuHl0dkopK7G3g==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <058b1cea-3437-2779-0c2f-efca2adb1f15@suse.com>
Date: Wed, 27 Sep 2023 12:19:59 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 2/8] domain: update GADDR based runstate guest area
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <65893a9e-e2ae-6853-7c4d-54f2bf19b17b@suse.com>
 <ZRP5b9qOUK_sCL51@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRP5b9qOUK_sCL51@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0238.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b2::13) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PA4PR04MB9567:EE_
X-MS-Office365-Filtering-Correlation-Id: 4ef2ccf3-cc6b-4062-693b-08dbbf434eff
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0oIg0BNdGqC5xK1ZlqDA/6CiGCjoalMc5lZjLTp2yZnmo88XBjrwV006jVSFfnf6xDqFfYSpvwtLxZ1O0ncJIOcDo+NooTioYJldYmDUA1NeAlJv2Y8BzryHT2l7VChHDXDuppxBiQ+PUwHrToT2ZeIKiDrUJgqww7NzVp8/23o1iw2/GIGa/tdBSKwc2rj5K6Dc4UYQm/4JEaIqyMw9xbVx4Z1dPe3WmUoIt+TfHJnwDS84LHKEkjBFvWD+7+GFb+EkV7q+yQYGRK7PGYD25XyhTUwRh8CAnm6oD/vSnnGIU3EpPtdqT/5bp7P8lujwIXz4I+qeEpwqd9OyB4hQsVQ7thxJi93+ihqYrhWAdoRfH/wyajPUUHJAi+qZgD4rQ1oukhr9pR1Jkrwkrp4+gCv4MJPVn7jwb4lA1+gscBZ6WftJOILn4kaxJ4vl9OOgaQavtNj874D5UoWh+eqXI808FWQGjdAl+wYiyUimh5o97m1DllDVirCnm0jRui/81bcA7JgdniFqsArtAp538fe08IXofbge5RQ/yuGY5ULmvL128Ddb9juM9rIopCwJgo5G1QJ0Uf24COuvoTqk6LJThnBMnD1DmhsAN1IbzlU9jk82aKavJtfLKktK4GFbVtNLFi23MD7jjwweLMQo1A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(346002)(396003)(39860400002)(366004)(230922051799003)(186009)(451199024)(1800799009)(31686004)(54906003)(316002)(66476007)(66556008)(66946007)(6916009)(8676002)(6512007)(4326008)(8936002)(2906002)(41300700001)(478600001)(26005)(6486002)(6506007)(83380400001)(38100700002)(5660300002)(53546011)(2616005)(36756003)(86362001)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?UWMzOU44NFZ6Uy9yUGx1UlpPNWJaUDdzYXF2TGkrSjhoRGpjS1pEQkhkM1FU?=
 =?utf-8?B?UUF4OUxZOFVUNlpSUGo3c0o0STh2Q081YU5kUU5FRWRMZ1ZndUQxSy96UjFT?=
 =?utf-8?B?RXdJQXNFcWprTU5NWUtWNUZQaDVNOUNiMWx1V0pReHhPMmlwNlR2cXNSMGxU?=
 =?utf-8?B?RkNUTFRlM0c2SG52bXR1RHpjdkE1SE1EUEVRMnFWMUFBRUZGaVEzQndwSWJk?=
 =?utf-8?B?SnlrWEJheC9nb0ZhV1l2ZnpMYTlIYURRWUVUa2pCMWFnYi90b3hGbzNkZjMx?=
 =?utf-8?B?TmNiNnZBY1NJcHo4SFhWT1RYM2lkNEJGOG0zTVU0V01MT0ZCWVBrQjVKTzhM?=
 =?utf-8?B?VzNSUHJ1a241YVRIMWFDc0xiNDhxRmxWMllwZU44MUhVazcxbThVRFowY1ph?=
 =?utf-8?B?cjJsVFVzOUdVMzNZTFo5MkxBSVBjUEVZSWNLN29QSW5vdmpucGZZaENRMjRK?=
 =?utf-8?B?bHovMEFIUjBvMlhIY1h6ZE9IejJxcFI4bEU4Q3M5eExKVlhjWmI4Nyt6bGNH?=
 =?utf-8?B?d3N1UjJaZ1hLSC85NHZ2V1dYbTdzc0tDZG41bklNOWRXWGJtZTBFekJEajV2?=
 =?utf-8?B?Y2FUSDVjdDhiSDNaWEV5M0k1Q1R6M2JLWDJabjN6UXhndFBNMlU2SlFMdkxu?=
 =?utf-8?B?cmhESjFjZTRydVBpL1BSbnI5QkJwdkxHVzN2WHJCaWQ5ZmlCWmtVamhsYXp1?=
 =?utf-8?B?SzJYNjlIUU1rOUFpZkZFUGZjWVR2SC8zb2tiVEhEUXdBU2VrenpEOHd6K2tO?=
 =?utf-8?B?NmdNbnVXTisrRUlQNUNLRy9yVjNxdGZJTGhLRCtNMkdtSVBlQ0lhc2pSUzln?=
 =?utf-8?B?OFBkU2pZa0FpR1JiYUFOT2s4d1pHTzBpNXFjOFM0dXJpSXhvWWx4U3ZtZ3Vn?=
 =?utf-8?B?OCsxeUVGWjZmSW1sOUloeVRFOFVVZVRzOUFrUmpOZFlpaFhuLzNTTDRUZGdz?=
 =?utf-8?B?ZnZSdThqWnBYSnNjRmFiaXpKVFVnWlNEYTlqRS8zcThMdkErenJrelA1SjNU?=
 =?utf-8?B?OGpXbDROdXZHM0xCNUNJSFZJWnpzOGhMZVVNSDMyM2JuaSttSUYzT2dKcnVX?=
 =?utf-8?B?aG13R1RyN0FjWitUTTRmR1I2bU1IVHN4Q3hvb2lpT2F6OWNRQmJ3T0g2dmh0?=
 =?utf-8?B?ZHgrU2Q1cDg3eStQYi9hVmsxMWNtaE4rY1JQSHNRNVZzdlA5WndrTVI1VE9D?=
 =?utf-8?B?ZG5pMjN6U0NWNlozdFhEbEtWay80L0YyZmIwamtOTGF1aTVHbmRoVElTbnBR?=
 =?utf-8?B?WlFNRVB4Z2U5NC9LYlNvMXVjWDFqZW9ENHUybWlZWTlSNGN3UldjTjJnN0hP?=
 =?utf-8?B?K1lOVXdjUThvV21HN1F4ZHB5ZldEcHNyNEtUOGttWWJoOFdrdGtuWXlONEFh?=
 =?utf-8?B?U3ZSeGx1ekNYZlFPRUMrekxRQWRvcS9IbmlqVmJyaGhoVXZ1NEs5L2NpTmtz?=
 =?utf-8?B?NHpISkpGazRLSWhsdFJOdnRqTm1TOFR6bEJUZmlNZllZaUlMby9Rb240YXo2?=
 =?utf-8?B?MFlGM2hmY0lWMUt4dUtEdE9LeWVHTWVONlJIdyt3b2xKSm5TUTUxSXdXY0o0?=
 =?utf-8?B?bFE4Q0FRdUU0TWVzdG1lNzFiSzZ4YmJUVXRlMktZR3pjdzVycmYzR21FNHM4?=
 =?utf-8?B?YUNERnIrZjlsTmEwWHU5QkE0RzlFamdxNGkyeGd2d1d2Zkk2OU01bW16OGNy?=
 =?utf-8?B?ZEEvUU1idUpwVThqckxZMWxKZkwveDBxeGplOTlZT3lsZTZza0V5RmN5UlBK?=
 =?utf-8?B?a2gxaTNTYnBUeEp4NTdIOEFCMUNKNFBONmgxeVhyQWs0UExLWS8vb1l2eVgz?=
 =?utf-8?B?ajJLRDk3dFRmTFJFa2ZTUStWVUpVVWJCbTdiQzhwSmFTNFJqOHlRR3YrMjF2?=
 =?utf-8?B?ckhobDducS9FcWw5eUtaeGlNTDJWeXBZL3UvMnhadTJPbkxXdkcxQTA0cjNC?=
 =?utf-8?B?K2Z5ay9nUWJHNzRxU2hUNHlPZTcyMlJYbjUyNFhIRDcyUjFLd080OEpPWWJZ?=
 =?utf-8?B?VitKdEZVWGc5YzhSNktRQXRoUVE5NFF5ZUtZcUF3WHJ2TW1xVEFUdXd0N0tD?=
 =?utf-8?B?dHkzNWQ5VEFNdk5JOW9BcnNkNHZ6VjNJczRaK0REVGlzYUp2UnE4VHd2YTVF?=
 =?utf-8?Q?rdmTl+ICw++zU+mbDlYIIaXE0?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4ef2ccf3-cc6b-4062-693b-08dbbf434eff
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 10:20:01.3340
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: LyZE2K7nn4HCSWoj8xN3rvZ2CULqUXxi4e3YWbVLSZzbUq8tpedMhIBYPBg52GD7xS3PnLGlbLVD3ZralQoE8Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9567

On 27.09.2023 11:44, Roger Pau Monné wrote:
> On Wed, May 03, 2023 at 05:55:11PM +0200, Jan Beulich wrote:
>> Before adding a new vCPU operation to register the runstate area by
>> guest-physical address, add code to actually keep such areas up-to-date.
>>
>> Note that updating of the area will be done exclusively following the
>> model enabled by VMASST_TYPE_runstate_update_flag for virtual-address
>> based registered areas.
>>
>> Note further that pages aren't marked dirty when written to (matching
>> the handling of space mapped by map_vcpu_info()), on the basis that the
>> registrations are lost anyway across migration (or would need re-
>> populating at the target for transparent migration). Plus the contents
>> of the areas in question have to be deemed volatile in the first place
>> (so saving a "most recent" value is pretty meaningless even for e.g.
>> snapshotting).
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

>> ---
>> RFC: HVM guests (on x86) can change bitness and hence layout (and size!
>>      and alignment) of the runstate area. I don't think it is an option
>>      to require 32-bit code to pass a range such that even the 64-bit
>>      layout wouldn't cross a page boundary (and be suitably aligned). I
>>      also don't see any other good solution, so for now a crude approach
>>      with an extra boolean is used (using has_32bit_shinfo() isn't race
>>      free and could hence lead to overrunning the mapped space).
> 
> Shouldn't a well behaved guest attempt to unmap the runstate area
> before changing bitness?  I would expect this to happen for example
> when OVMF relinquishes control to the OS.

Well, the OVMF example falls in a different class: Before transferring
ownership of the system, it wants to unmap regardless of whether bitness
is going to change, or else memory corruption can occur to the following
entity.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 10:33:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 10:33:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608857.947616 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRr5-0004bk-8Z; Wed, 27 Sep 2023 10:33:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608857.947616; Wed, 27 Sep 2023 10:33:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRr5-0004bd-4f; Wed, 27 Sep 2023 10:33:19 +0000
Received: by outflank-mailman (input) for mailman id 608857;
 Wed, 27 Sep 2023 10:33:17 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=zJBf=FL=invisiblethingslab.com=marmarek@srs-se1.protection.inumbo.net>)
 id 1qlRr3-0004bX-1j
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 10:33:17 +0000
Received: from wout3-smtp.messagingengine.com (wout3-smtp.messagingengine.com
 [64.147.123.19]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4252c5ec-5d21-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 12:33:13 +0200 (CEST)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.west.internal (Postfix) with ESMTP id 9F2DF3200A35;
 Wed, 27 Sep 2023 06:33:10 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Wed, 27 Sep 2023 06:33:11 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed,
 27 Sep 2023 06:33:08 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4252c5ec-5d21-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm2; t=
	1695810790; x=1695897190; bh=lkrcTLrqA6Qjn2Pw1xJdjQCBFPJ76UGPozM
	U4OXQslg=; b=sjln5KaUlVXWrbuswKb4lmQGYwWBIXgXMiTBIJgLsDeQITIt1G+
	fnPPdt8a1zVaHN7O1YjhdbDeStk7kpuOuEmfVUITnBYVwx1uEIJCHi8G1bu2MxFc
	ymmpLjumvMy/VgIO1Vp1hCGdMT5Guly9gFZnJXrUWrUxmYrAbTc1KeQuSQmWWSCH
	xG/PRneKfe0LzX2Y2r/4avoLFBa4+ECMF9JUe6kX7kOXG4w2+aPmlUOLeX3KlpLz
	TDVgFgvxCsM5gyOkcZV49IZ0Zu+IGRlBzqudU1BtPclrxfcRK3cjLTHknLcnFWf+
	vgUsAka2O1bKmSoTVr4dk6jC4Pnz2IRg9Jw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; t=1695810790; x=1695897190; bh=lkrcTLrqA6Qjn
	2Pw1xJdjQCBFPJ76UGPozMU4OXQslg=; b=H7CdPAN2Xwuc2dK5MfJzRi0S/T6pe
	yc7cgaAY3UCUE9AgBC/3lWwH/R0KFFcgNdmXoKBjWJ0uR1AQsoOYHMTw4QeTDgx1
	VOU+H8v9DtFX2bgZvN6YumBCaxIl+Ffw0S1Z9xSI5Asj7rWrOcr0ynKapEs/TBQn
	M3XRwXfRFID5QtWuOp+1KL9r6DTBJMDsEkxmbnWslCCkzPqZqboUASnLWGkTWByw
	QFrJ3uqGySB+g76bEem0V+36oKk5seQQtTHPeEhfbkJiYwS1VQN51bZaTlNKszQX
	UOwKk5KHZS+ZNuEWEhDT3Z4IYlGTsWGwOMihbwg3DD37RcWPLDYGy1KjQ==
X-ME-Sender: <xms:5QQUZeL6x9GfywEivYAskIExTU15VgBm8bZ9yQAkEvuBu2nwDFayzA>
    <xme:5QQUZWL62omOA_n_iYwA9k7lPcc8cafl_nndMEqcCvfGFinwq0cNu9HPniOTlj7Fz
    glEEOCuaER0Xw>
X-ME-Received: <xmr:5QQUZev_6DR4CF1tl0URqgMzUj6vRDKBDV6KEyLfSscO9sloWicVCrrK8uvNm4rrq6Z03569pHx8HDN83jiyvReIqw9rsIx1DhY>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvjedrtdefgddtvdcutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeforghrvghk
    ucforghrtgiihihkohifshhkihdqifpkrhgvtghkihcuoehmrghrmhgrrhgvkhesihhnvh
    hishhisghlvghthhhinhhgshhlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpeegffdu
    udelffekhfejleefgeekgeetieekudetveelfeduhfefheeuudfhudegffenucffohhmrg
    hinhepgigvnhdrohhrghenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgr
    ihhlfhhrohhmpehmrghrmhgrrhgvkhesihhnvhhishhisghlvghthhhinhhgshhlrggsrd
    gtohhm
X-ME-Proxy: <xmx:5QQUZTaFqdj8Ee3XMoTiUJ89gXRy1TuO4vxIkQo-_yT71Zlh68vGBA>
    <xmx:5QQUZVYA6Gs6Thw-vC4gBuLr9zZ1KOP_IWOqRcBpA6URgcb2KS8vng>
    <xmx:5QQUZfAERMYPJwnDb99ghUMxaZc5Avy-7jKZXl322DSKCg6aZa4d6A>
    <xmx:5gQUZZEYLnpmSwWJ3w7iBkis6KWvpa9Zv8g9o9OSva9LZjCyeMvBQA>
Feedback-ID: i1568416f:Fastmail
Date: Wed, 27 Sep 2023 12:33:05 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: linux-kernel@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	Jan Beulich <jbeulich@suse.com>,
	"moderated list:XEN HYPERVISOR INTERFACE" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v3] xen-pciback: Consider INTx disabled when MSI/MSI-X is
 enabled
Message-ID: <ZRQE4jt/a1RJ0wUw@mail-itl>
References: <20221118154931.1928298-1-marmarek@invisiblethingslab.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="EOjJ45zJghDRhlN7"
Content-Disposition: inline
In-Reply-To: <20221118154931.1928298-1-marmarek@invisiblethingslab.com>


--EOjJ45zJghDRhlN7
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Wed, 27 Sep 2023 12:33:05 +0200
From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
To: linux-kernel@vger.kernel.org
Cc: Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	Jan Beulich <jbeulich@suse.com>,
	"moderated list:XEN HYPERVISOR INTERFACE" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v3] xen-pciback: Consider INTx disabled when MSI/MSI-X is
 enabled

On Fri, Nov 18, 2022 at 04:49:23PM +0100, Marek Marczykowski-G=C3=B3recki w=
rote:
> Linux enables MSI-X before disabling INTx, but keeps MSI-X masked until
> the table is filled. Then it disables INTx just before clearing MASKALL
> bit. Currently this approach is rejected by xen-pciback.
> According to the PCIe spec, device cannot use INTx when MSI/MSI-X is
> enabled (in other words: enabling MSI/MSI-X implicitly disables INTx).
>=20
> Change the logic to consider INTx disabled if MSI/MSI-X is enabled. This
> applies to three places:
>  - checking currently enabled interrupts type,
>  - transition to MSI/MSI-X - where INTx would be implicitly disabled,
>  - clearing INTx disable bit - which can be allowed even if MSI/MSI-X is
>    enabled, as device should consider INTx disabled anyway in that case
>=20
> Fixes: 5e29500eba2a ("xen-pciback: Allow setting PCI_MSIX_FLAGS_MASKALL t=
oo")
> Signed-off-by: Marek Marczykowski-G=C3=B3recki <marmarek@invisiblethingsl=
ab.com>

Ping?

The issue pointed out by Jason was fixed in Xen:
https://xenbits.xen.org/gitweb/?p=3Dxen.git;a=3Dcommit;h=3D913751d7af6e78d6=
5c1e2adf4887193c827f0c5e

> ---
> Changes in v3:
>  - allow clearing INTx regardless of MSI/MSI-X state, to be consistent
>    with enabling MSI/MSI-X
> Changes in v2:
>  - restructure the patch to consider not only MASKALL bit, but enabling
>    MSI/MSI-X generally, without explicitly disabling INTx first
> ---
>  drivers/xen/xen-pciback/conf_space.c          | 19 +++++++++++------
>  .../xen/xen-pciback/conf_space_capability.c   |  3 ++-
>  drivers/xen/xen-pciback/conf_space_header.c   | 21 +++----------------
>  3 files changed, 18 insertions(+), 25 deletions(-)
>=20
> diff --git a/drivers/xen/xen-pciback/conf_space.c b/drivers/xen/xen-pciba=
ck/conf_space.c
> index 059de92aea7d..d47eee6c5143 100644
> --- a/drivers/xen/xen-pciback/conf_space.c
> +++ b/drivers/xen/xen-pciback/conf_space.c
> @@ -288,12 +288,6 @@ int xen_pcibk_get_interrupt_type(struct pci_dev *dev)
>  	u16 val;
>  	int ret =3D 0;
> =20
> -	err =3D pci_read_config_word(dev, PCI_COMMAND, &val);
> -	if (err)
> -		return err;
> -	if (!(val & PCI_COMMAND_INTX_DISABLE))
> -		ret |=3D INTERRUPT_TYPE_INTX;
> -
>  	/*
>  	 * Do not trust dev->msi(x)_enabled here, as enabling could be done
>  	 * bypassing the pci_*msi* functions, by the qemu.
> @@ -316,6 +310,19 @@ int xen_pcibk_get_interrupt_type(struct pci_dev *dev)
>  		if (val & PCI_MSIX_FLAGS_ENABLE)
>  			ret |=3D INTERRUPT_TYPE_MSIX;
>  	}
> +
> +	/*
> +	 * PCIe spec says device cannot use INTx if MSI/MSI-X is enabled,
> +	 * so check for INTx only when both are disabled.
> +	 */
> +	if (!ret) {
> +		err =3D pci_read_config_word(dev, PCI_COMMAND, &val);
> +		if (err)
> +			return err;
> +		if (!(val & PCI_COMMAND_INTX_DISABLE))
> +			ret |=3D INTERRUPT_TYPE_INTX;
> +	}
> +
>  	return ret ?: INTERRUPT_TYPE_NONE;
>  }
> =20
> diff --git a/drivers/xen/xen-pciback/conf_space_capability.c b/drivers/xe=
n/xen-pciback/conf_space_capability.c
> index 097316a74126..eb4c1af44f5c 100644
> --- a/drivers/xen/xen-pciback/conf_space_capability.c
> +++ b/drivers/xen/xen-pciback/conf_space_capability.c
> @@ -236,10 +236,11 @@ static int msi_msix_flags_write(struct pci_dev *dev=
, int offset, u16 new_value,
>  		return PCIBIOS_SET_FAILED;
> =20
>  	if (new_value & field_config->enable_bit) {
> -		/* don't allow enabling together with other interrupt types */
> +		/* don't allow enabling together with other interrupt type */
>  		int int_type =3D xen_pcibk_get_interrupt_type(dev);
> =20
>  		if (int_type =3D=3D INTERRUPT_TYPE_NONE ||
> +		    int_type =3D=3D INTERRUPT_TYPE_INTX ||
>  		    int_type =3D=3D field_config->int_type)
>  			goto write;
>  		return PCIBIOS_SET_FAILED;
> diff --git a/drivers/xen/xen-pciback/conf_space_header.c b/drivers/xen/xe=
n-pciback/conf_space_header.c
> index 981435103af1..fc0332645966 100644
> --- a/drivers/xen/xen-pciback/conf_space_header.c
> +++ b/drivers/xen/xen-pciback/conf_space_header.c
> @@ -104,24 +104,9 @@ static int command_write(struct pci_dev *dev, int of=
fset, u16 value, void *data)
>  		pci_clear_mwi(dev);
>  	}
> =20
> -	if (dev_data && dev_data->allow_interrupt_control) {
> -		if ((cmd->val ^ value) & PCI_COMMAND_INTX_DISABLE) {
> -			if (value & PCI_COMMAND_INTX_DISABLE) {
> -				pci_intx(dev, 0);
> -			} else {
> -				/* Do not allow enabling INTx together with MSI or MSI-X. */
> -				switch (xen_pcibk_get_interrupt_type(dev)) {
> -				case INTERRUPT_TYPE_NONE:
> -					pci_intx(dev, 1);
> -					break;
> -				case INTERRUPT_TYPE_INTX:
> -					break;
> -				default:
> -					return PCIBIOS_SET_FAILED;
> -				}
> -			}
> -		}
> -	}
> +	if (dev_data && dev_data->allow_interrupt_control &&
> +	    ((cmd->val ^ value) & PCI_COMMAND_INTX_DISABLE))
> +		pci_intx(dev, !(value & PCI_COMMAND_INTX_DISABLE));
> =20
>  	cmd->val =3D value;
> =20
> --=20
> 2.37.3
>=20

--=20
Best Regards,
Marek Marczykowski-G=C3=B3recki
Invisible Things Lab

--EOjJ45zJghDRhlN7
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmUUBOEACgkQ24/THMrX
1yzBAQf/SHf0RTHfqbq+msnyxOU14bDfbEM8oyJHi5kRnq7CbBGWTQxj2SzluNcZ
rWnV06yAeD4uolUPHsgK86pKR3JDOQ89YhVj9aCMOe/n5cwVeV7V6S7PGrnOrzTt
i6ctMcafEA7gJtSPXnPI2q6t5rqQkS1YU15U5JxKB46RA9ALJx1/gnYdkzuiLgof
L4MX81mVKmniiTot3G5krhABVsVjAJXWP+Wuh8gVApaSqrPa76hGGpxmdmTsQ3KU
HuLtIO03tkjbogleWkMjH6rR8GP317Eq8ivwjna9qovV2Usn62x/HVO+ctl3+2/7
G9/IcYUCwe0HFI0AZucdc9Om/eqpCg==
=WCCk
-----END PGP SIGNATURE-----

--EOjJ45zJghDRhlN7--


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 10:35:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 10:35:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608864.947626 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRtK-00065A-Kk; Wed, 27 Sep 2023 10:35:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608864.947626; Wed, 27 Sep 2023 10:35:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRtK-000653-HU; Wed, 27 Sep 2023 10:35:38 +0000
Received: by outflank-mailman (input) for mailman id 608864;
 Wed, 27 Sep 2023 10:35:37 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qlRtJ-00063j-9w
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 10:35:37 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlRtH-0008AK-7D; Wed, 27 Sep 2023 10:35:35 +0000
Received: from [15.248.2.159] (helo=[10.24.67.27])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlRtG-0005L1-W6; Wed, 27 Sep 2023 10:35:35 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=KAkade0RO+m0CK+7ZEg5D3BY67Kkm4fVgYdPbdzG1qU=; b=XVTXUrdo1szCb3YQx7LdLspiZd
	7qCKyzFLCfyZY71ec7uZ5zQR+gqRBvxatltxZHg+uxHYhpIFMOf1hSxxPmHxkJEPXbt2/o+cLteKH
	hU82z+ge6Gnlji6IVeaHqpOGkNR6xUReekhM3YeVH/x/7Elbh2k4F8MeC2tZawKe0HBY=;
Message-ID: <165fb382-622a-4829-87c6-f41f6ff95014@xen.org>
Date: Wed, 27 Sep 2023 11:35:33 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [for-4.18] [PATCH v2] ARM: GICv3 ITS: flush caches for newly
 allocated ITT
Content-Language: en-GB
To: Henry Wang <Henry.Wang@arm.com>
Cc: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Stewart Hildebrand <stewart.hildebrand@amd.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>
References: <20230922222710.1383808-1-volodymyr_babchuk@epam.com>
 <d4ab6108-b190-437e-bd15-af9afb086794@xen.org>
 <9F5A8F55-DF3C-4D8D-AEB2-E009E6EB0C28@arm.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <9F5A8F55-DF3C-4D8D-AEB2-E009E6EB0C28@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit



On 25/09/2023 23:19, Henry Wang wrote:
> Hi Julien,

Hi Henry,

> Yes, I was about to ask the same question but somehow forgot it. This is a quite
> low risk patch and I think it is fine to have this in 4.18, so if the "Fixes” tag
> can be added on commit, please also add:
> 
> Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Thanks! It is now committed.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 10:42:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 10:42:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608869.947636 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRzu-000808-Aq; Wed, 27 Sep 2023 10:42:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608869.947636; Wed, 27 Sep 2023 10:42:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlRzu-000801-6g; Wed, 27 Sep 2023 10:42:26 +0000
Received: by outflank-mailman (input) for mailman id 608869;
 Wed, 27 Sep 2023 10:42:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WUTS=FL=citrix.com=prvs=6275c33bf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlRzs-0007zv-Uj
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 10:42:24 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 89d2cbae-5d22-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 12:42:23 +0200 (CEST)
Received: from mail-dm6nam12lp2175.outbound.protection.outlook.com (HELO
 NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.175])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 27 Sep 2023 06:42:19 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH7PR03MB7486.namprd03.prod.outlook.com (2603:10b6:510:2ec::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 10:42:16 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Wed, 27 Sep 2023
 10:42:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 89d2cbae-5d22-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695811343;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=z6qq5C/sYlnh4VYQepfEZa/KFfbnD/dYKqD2VH8GbJo=;
  b=crz+WWkQ41J47f6wJB0T0Xfop4UT5VEARaaKT7hxuWm4IHQHVcRkm40q
   YoRHmyIYr5INl+yDbEjMXbmu4cRM2v4sRSMUQScIP2wTG15ItwX5WgviW
   pGsryHw7gGr56DKdGc01I0u7Gq42MeBKI7gjlqMUMNn8FdNJhbZv26fdk
   4=;
X-CSE-ConnectionGUID: jV9YSxI+QtiKy1+ui7WWzg==
X-CSE-MsgGUID: DxipL6MnTei1aNZ371hLaA==
X-IronPort-RemoteIP: 104.47.59.175
X-IronPort-MID: 126688408
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:Lqwy064mQLg0PE8j5GZ0wAxRtPbGchMFZxGqfqrLsTDasY5as4F+v
 jZLXGuHaPmCYWameNpxb9+y9xgF7JHdm9JmSQdprCkwHi5G8cbLO4+Ufxz6V8+wwm8vb2o8t
 plDNYOQRCwQZiWBzvt4GuG59RGQ7YnRG/ykTraCY3gtLeNdYH9JoQp5nOIkiZJfj9G8Agec0
 fv/uMSaM1K+s9JOGjt8B5mr9lU355wehBtC5gZlPaER4weH/5UoJMl3yZ+ZfiOQrrZ8RoZWd
 86bpJml82XQ+QsaC9/Nut4XpWVTH9Y+lSDX4pZnc/DKbipq/0Te4Y5iXBYoUm9Fii3hojxE4
 I4lWapc6+seFvakdOw1C3G0GszlVEFM0OevzXOX6aR/w6BaGpdFLjoH4EweZOUlFuhL7W5m9
 8JJGQsdT1O6m+OV0ev4V+gzufsxI5y+VG8fkikIITDxK98DGMqGb4CUoNhS0XE3m9xEGuvYa
 4wBcz1zYR/cYhpJfFAKFJY5m+TujX76G9FagAvN+exrvC6OnUooj+WF3Nn9I7RmQe1PmUmVv
 CTe9nnRCRAGLt2PjzGC9xpAg8eWx32lCNJOTO3QGvhCrE2S3khNLRsqWFriqN+L0RHnW/ZWA
 hlBksYphe1onKCxdfH/VRClpH+PvjYHRsFdVeY97Wml2qfSpgqUGGUAZjpAc8A98t87QyQw0
 V2ElM+vAiZg2JWXVHac+7G8vT60fy8PIgcqfjQYRAEI593ipoAbjR/VSNtnVqmvgbXdBjXY0
 z2M6i8kiN0uYdUj0qy6+RXLhmyqr52QFAotvFyIAySi8x9zY5Oja8qw81/H4P1cLYGfCF6co
 HwDnMvY5+cLZX2QqBGwrCw2NOnBz5643Pf02DaDw7FJG+yRxkOe
IronPort-HdrOrdr: A9a23:aLnUj66M4N0M/4tShAPXwNvXdLJyesId70hD6qkRc203TiX2ra
 qTdZgguCMc6wxwZJhDo7690cC7KBu2yXcS2+Us1NyZPTUO1lHGEGmnhrGSpgEJ3EbFh4xg6Z
 s=
X-Talos-CUID: 9a23:X163l2/CgMID98/e6bqVv0wqS/EeYlye9WvRAF7hSntoF4KqW1DFrQ==
X-Talos-MUID: 9a23:CtGYvwXCITLlvGHq/BP8hSlGauJu36mvUUkro85Z4smgPAUlbg==
X-IronPort-AV: E=Sophos;i="6.03,179,1694750400"; 
   d="scan'208";a="126688408"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=B68sFV+rlF170qPeoy/8TBvAQm/dboRJbXNdIbSfllkh/7Eu5rxQy53T2LA/8e4+DdZlxwrTpNNfNxiZwe2iZ3JtUvFb2fP7+hqo+FHGz/3yP0uX9upk4W5BFG2fvxkoJlQjVtDfAVTMQudG+YCn4DHazprH7DS5DMmP/S+alWX/bJ7FHTx4z1qRurLTyNI/E8FJhOCBZ2ZYFVMCZJgxTz29Jklt3DCzqEEUSXcyGOghWgmsxWJEdqwtxJvzG+b7u0y/Z9EUHxxAz9RMWri03t547BqL+meNLkOwVm1Wuy8NX3dL7edRQZxLRPWXqIJASMU83a9sZhfrfSqhdHw2rw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=SRi5VjQgfxrYjczCVYIBrMc33L8M0BLiOCDQ6a1hbKc=;
 b=JUrCcm+TTXFchOHe8zdogbGBXokrdnwXPV1lWhrZ90IC411RiLbCx54ip7sDBvn/9lwDnFmILWdaHm8AqKK1pLBQWo0HHj6d58nlK85iDJFLofwnsxc4f4jt9RnjSyhghaHP63iK1wf4sAFkKl2TwOV5pQZs0Pau27NliEEjNvq9GwVhEJZ45klPfTMYZvJF9kAdSnVwQccYEZTO/o4X3hTJsQbR64S5nP7w5Xtjw6d33xW0+z9ztI7pFf54XOOkbPBRE3OMp0BXnwDdOdzgj5X0dKo2h6c+uJoZzukSKZesjiZtrtZn31+EdNfrMIzEdiYqIcBfvpfiLOWTuA3O0g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=SRi5VjQgfxrYjczCVYIBrMc33L8M0BLiOCDQ6a1hbKc=;
 b=tJO9nZposJMrj/ViXH/xG+t5uVxclm6AixuAOsvVQNe7gGl8vepW1oZhhvS49nBEbsfLrP+aN42tgt0f2SEWNriL/MNPdp5mBoIuIQHa59yYeT0XqKh0XO12InbHM2g2idSHwmM7NF7D/8P85F0m3J3Z8IhLS03xox89XRVqZyA=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 27 Sep 2023 12:42:11 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v3 1/8] domain: GADDR based shared guest area
 registration alternative - teardown
Message-ID: <ZRQHA0u5wPXkuILV@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <68cdb299-c41c-b6a5-c9ce-bd915508ecf2@suse.com>
 <ZRPtI9UfgpCfQ4HU@MacBookPdeRoger>
 <4e1e0b28-bb0b-03f9-d62e-dd04846dd2e4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <4e1e0b28-bb0b-03f9-d62e-dd04846dd2e4@suse.com>
X-ClientProxiedBy: LO4P265CA0322.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:390::16) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH7PR03MB7486:EE_
X-MS-Office365-Filtering-Correlation-Id: 16b6867e-6294-484c-bd99-08dbbf466aef
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	fZFRlUcDXjb1cdptvvWlFL+NCqFTyTGTQE1uwiL9+DRt+9bZZzgacVcRt+7VvzoTfr83v+aO4DgctTXsXTPTwG2g+8ZaXO3Ow+18fbN2Y0bWb0dt0suTbBZj5T/7v2d6M1V/rb2z7bq87OwV198zAKzNeVOtSyyVuB+Zkic4+cPky0IzkySM9/J2xNWFoiNSdcVC2JzhVBjeKcjOczYhKw4wGLpcayAN67JmPBbiQF/M02NpGyWk0ckkLzWNnSegRYKlC4DTK7AW/FABRh7c5i1VPf1yIm4q1egc3XErzlomyX4B2TBZ6LTBm7eTP7C3TbmnZOHhZgj/4wLpiiu4/YMXzE5K43cHkbTiuhRXrfD7h3fCdujwbSJcphcULiNpTqfgFj5YR2Pu7M0TfjJKFDJm6MbevTgdef4NJMSLO+YVV5sELLVBKvVk8sC4tS4PpfupbReVThYbop7jjW49hi/poiPbG+nsee9l4X8kX3Ymtx1dF3GC0PaVPCKBE4mgTsVCE6rK7mO1FkxyBFe0dPS16jUHnWfDrjnkr6oZ089vLMvMSoaQjJOoKwcNNMjT
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(366004)(346002)(396003)(136003)(39860400002)(376002)(230922051799003)(1800799009)(186009)(451199024)(2906002)(5660300002)(66476007)(66556008)(54906003)(33716001)(478600001)(6666004)(53546011)(6512007)(9686003)(66946007)(6486002)(26005)(6506007)(8936002)(6916009)(4326008)(316002)(41300700001)(83380400001)(8676002)(82960400001)(38100700002)(86362001)(85182001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZVY0bmowVlc5Y0FpQTFPUXlLWm4xdTNKaXVBQmI5RC8zMTVVR05nNHlOV2JW?=
 =?utf-8?B?emJlNHFGL0phKzgwS2Z5V2p2M1pMeWdqTm1EVWxyQU1rSFFkT01PTVJ3YU4y?=
 =?utf-8?B?MnQ4Ui9hcjB4RVZtaEJvVGk5MzNCcVF6VjBLVDBQMEhCNVBNUUFYUU5WNVcy?=
 =?utf-8?B?aDJBK1RmRDhrYmdXTXc4eklaU2IxSEQ1cEFieFk5Z1JiWjhhUDcxbkhUaFNy?=
 =?utf-8?B?TXE5a2ZBNFJDdnZwQUo1aDdRTDVIT2U4SVhJYWRmckU4d0kwa093VEVpNmRj?=
 =?utf-8?B?Mi96aW5jVmpzaUVka2UzSTdzUTg1SndLZ2Nqdk1ld0VjZXJsM0o3RXVSSHUv?=
 =?utf-8?B?eEFOc1ROMlJ0aEp6RGF2cXF4RWNBTHFQQVh2SG90Y1c4WERIb0o1bHNhcDll?=
 =?utf-8?B?U0JoOHMxZjM1ZmNvdnNnTjhZNGJkT1dKWnZEcmFGUG9LUkNqWGNNalpReEZ6?=
 =?utf-8?B?WHh6bldsNTRnSDJqUEZZdjZ1dVN2blhzQXNYMGN5RU5aVUttQXljdTNqNXBG?=
 =?utf-8?B?YzlDL0ttOThSVjlFdVM1dDI2R1NOY0xGR1g3SUNNWm81TXhmbC9GZElTcjdk?=
 =?utf-8?B?OHRBVUZ5VWxFYkFjYkMyUlQyb0M0M1hhZGozT2tQRHg1TEV4RXNSZ05Na3Fu?=
 =?utf-8?B?djg3K2dJVjNSQmFiNHNSaWlScXVVMDJ3dGF4NlBqSjNMTjNsRDR2bytTUTda?=
 =?utf-8?B?NUNrMnB6RTlYYVcwZWlsU2xSM3VLL3BFNlZvL2dXY2h0QTZqYlBKNkVUbXND?=
 =?utf-8?B?NEZkYkk0ZUNCWTRtYmhTcU9TeUN2dFQzZTFTSHlUbzVhdEJ5aDFVaE9mMDRS?=
 =?utf-8?B?dkc2b2Z2VVhKenFhWFBoZ3lFZDI1aEVNK0pOZjlLS3lTd2V5WTBqQk5Rc1hs?=
 =?utf-8?B?c21URk5PaXNXaWdIUy8yQlhKTjFPcGwvOVpqeGtJclpQZWhhSjYrSUJ5N1lh?=
 =?utf-8?B?K1hDZU1Fd1Z0Zld2YkRzdCtqbkI4cldCczRvVFRySWxoUm9rdkVhdG5VdkN6?=
 =?utf-8?B?eHRVaWxGVlJQMHhsdGxaMlE2UCtqUzRwQTFNcHVpVzhaL0tGSXd4ekxKN0U0?=
 =?utf-8?B?eU9GTnhVVkVhOUMyM0dFaktyOXNsUHZYdjI0bUdrYUt0SnBLY01TRWlqZ1ZK?=
 =?utf-8?B?dXJSZHU1VDNGeGpTWGVIN1FNdkZUNVRwc2dXem9heXRZNC9TTkJVQXNLRm4y?=
 =?utf-8?B?cjlqb1ZOZmswbGJpcS9rTFpiS0hlSDVWNUlWSGJaVWQ1eGc4MVpBUFdwMlVt?=
 =?utf-8?B?ZldZS3Vtb05XNm9yeFdldmZ2di80K1lWSUU5MDlUR2RrL3U2anJkNStRczBC?=
 =?utf-8?B?ekEzeitxamxaRWZFUjBRN2lEU3dBWUZSUndCRWFQVjlPRlZDak9hTzl2NzJS?=
 =?utf-8?B?TzlaSE05a2lDTytiYk9IcXlubVRINUFBMjZhODRpeE1yeEY3MHZaZllDYTVy?=
 =?utf-8?B?WFpHc0xNdG1zWGNodzU5ckR5KzEvM1FuMUZWZVZvS2dTaVkxUGFlQzZjNnVr?=
 =?utf-8?B?YTFycCtTSGxPZ3M5Q3JiejllMFdrZ3dOVzBabjE1Ulh4S0cvazV2Sm5Fc2JQ?=
 =?utf-8?B?aGRjQXlUMjE4VHdSOWFFcGR2bTljZ0psdWZXWWN1WGltSEhvYU5xdUxZTUVU?=
 =?utf-8?B?RnhnKzhvYzhoZ0pJVTBkWDYxaWNMc21FWWowZXZ6anNSUkpSd2VieGdpQjBN?=
 =?utf-8?B?Zkx3b1BwVUZXV0dhaklidDJqayt6UmxyU1gxYjhZWjJOYXN6SDhkY1FlWHpI?=
 =?utf-8?B?dXRmRXpwMWd4aHBYekFobk9VTysrd0x3Y2tYUEJGM2JacE4vUnYrVVJVTDB4?=
 =?utf-8?B?RlEvbkd5aHRjQ29RS0s1RnE1TUtjaW92OWdRMm44MnFTbCtTYTNrZUJsUzcz?=
 =?utf-8?B?dkUzWWZHVVlzOXYwK0NGMHFhdnlQNllyMFhvQUNiMHFaVG1WR3NGeXpKb2Rl?=
 =?utf-8?B?SVNIK1pWbGNBTUQ0dzBZQXVETEdDajB5ZWVKZE5MYmt1RTVRTXU3NlJ2OThG?=
 =?utf-8?B?UjB3bEFMaGhJcFhqd2EybzA4Tm1hVXkxckMrV21TeXBmMUYyVFNjNGMzUVp3?=
 =?utf-8?B?UUIwY1dEK0N6a3lOeEpKMGh3aG9RNGhWZUFIdjF4SUxhRHRrTkc3OG5aVkl6?=
 =?utf-8?B?VDgvdDB2d1BnRjNjb1REYUtMd0tlREFJUFNNTkVIYlJqTFhxeXhxUDZyWVVl?=
 =?utf-8?B?K2c9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	wXLBtl3TyxCSH4uhZ3q5bMoWvlddckmQ/59xO25W7gZ/xIOhjwlMg0OD2Ve+XEDnOg0QWiDy//g1tozTXgeCZ/zaipxYIXODewHFDBDBhHQ91XDx+YpdlziXzc/vD6xAoGtvMrJvgE7HhVJ3gDCR6rffKClJOu5yAyiQTkJsn9wdHU15czmSJaYBBm6BeLhapPFv+GKz7lBxNs+8n26CjxqMhN7MHTyohVT7RvsvlxW2tvk+FLE9IccjQRR43B7l1ST4wHObZHZAepGNNup2hB5dMwiWRnZrLad9yBFzlO703SO9lC7pwWO7zRoLDo7PsAvBDAIZJHEVhPzGW4YaX39kAcz0IVvONqAi6/l43itjuRePGjU+WhwKNWkx/3b4ppJkhd9h80+LXUFb7K5zrAQBWSnnfBGsOEwoqTzs7yOBoiVkOvSroVd+W61fpiqMRAD+JKpMHZ6lnfo2IvLI6GF7DABhCn/hdHtBmHHYL5cxPjyksc3MoaplAgLQpnC3KsHh3aWXCouXwuKEtW10lbEHzY7CZ4T0/cL0iCGI5pPZycTXEDpgiBW0NFVI9B7vMaI5yHYM3MAPwq4hdFS2mkYbfAFLrer0/7Rqxm6GH0FDAK+0gF89y++qtKig9GPnN41R97KdHqu8P3vWvgYF53PqGwXiCd0066Z6x/Sl9p2CR4Bnou0/zJSmZPFM9i5pLQijTwJlZAXYVeWVcP1wkOrLCd0GDNs7wEcsv3haGeheIEAosybz31SlsSCFlBpcmJ6UzwKqGKAPAGmqLuagIKm55Y3abhaQDkc154SaYA2TKEvODZMHEQ0yyfQE2K6uVPyzQ26tTo/Bp/Y+jEhmBztjfsyWQLCV3R7eZVGCXN8=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 16b6867e-6294-484c-bd99-08dbbf466aef
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 10:42:16.8175
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: OLt2DI3/TfjAkdQjq6zukoBL+z72uKpcWdjtMUCJn6WA+qJQM5hMK51gxgPDztARc7n+7ft5j/zDNI5qMuP5Vg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7486

On Wed, Sep 27, 2023 at 11:55:19AM +0200, Jan Beulich wrote:
> On 27.09.2023 10:51, Roger Pau Monné wrote:
> > On Wed, May 03, 2023 at 05:54:47PM +0200, Jan Beulich wrote:
> > I guess we should also zap the runstate handlers, or else we might
> > corrupt guest state.
> 
> So you think the guest might re-register a different area post resume?
> I can certainly add another patch to zap the handles; I don't think it
> should be done right here, not the least because if we see room for
> such behavior, that change may even want backporting.

For correctness it would be good to zap them, but there's no rush, as
I do think guests will set to the same address on resume.

> >> @@ -1568,6 +1572,19 @@ void unmap_vcpu_info(struct vcpu *v)
> >>      put_page_and_type(mfn_to_page(mfn));
> >>  }
> >>  
> >> +/*
> >> + * This is only intended to be used for domain cleanup (or more generally only
> >> + * with at least the respective vCPU, if it's not the current one, reliably
> >> + * paused).
> >> + */
> >> +void unmap_guest_area(struct vcpu *v, struct guest_area *area)
> > 
> > vcpu param could be const given the current code, but I assume this
> > will be changed by future patches.  Same could be said about
> > guest_area but I'm confident that will change.
> 
> True for both.
> 
> >> +{
> >> +    struct domain *d = v->domain;
> >> +
> >> +    if ( v != current )
> >> +        ASSERT(atomic_read(&v->pause_count) | atomic_read(&d->pause_count));
> > 
> > Isn't this racy?
> 
> It is, yes.
> 
> >  What guarantees that the vcpu won't be kicked just
> > after the check has been performed?
> 
> Nothing. This check isn't any better than assertions towards an ordinary
> spinlock being held. I assume you realize that we've got a number of such
> assertions elsewhere already.

Right, but different from spinlock assertions, the code here could be
made safe just by pausing the vCPU?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 10:42:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 10:42:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608872.947646 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlS0M-0008Rd-IE; Wed, 27 Sep 2023 10:42:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608872.947646; Wed, 27 Sep 2023 10:42:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlS0M-0008RW-F4; Wed, 27 Sep 2023 10:42:54 +0000
Received: by outflank-mailman (input) for mailman id 608872;
 Wed, 27 Sep 2023 10:42:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlS0L-0008Ha-IC
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 10:42:53 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2075.outbound.protection.outlook.com [40.107.7.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9b765daa-5d22-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 12:42:51 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by AS8PR04MB9126.eurprd04.prod.outlook.com (2603:10a6:20b:449::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Wed, 27 Sep
 2023 10:42:22 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 10:42:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9b765daa-5d22-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LGbrm3vrVISwmdRh5PfDZDO6YsaiAhEP3apU2/5y2/rh5h59wxNLzQGUtFttmfr2xnAeyZMBXoHOwQeaooqxdxXNCjaiaRn+5eLT295NL35LsL8cS4ZQmC1qBpCIlM4zil9ZkAkYnaPonUPi8Gpyd+/6ph6CgIrXye/qy7XWcUvMMhCse5I3t1w7JtBB7QI0lgIbq1PLDPjoYzJAlupJVSublBy3Kt+iwKMteRUF7ltngmF4q5n9nlm5PHTxYPORNn2RwZZszFXjDOMOvHbpMXc/uO5uh/IcupGn090e0/00842zYN+rHHaERsqUatp/lfG/dVUzbLeozK4jj3YlVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=omkVjQfeBv81Qnb7mWu3p+UblKFRDxvjBwxiZYEpSf4=;
 b=IQtXE4qknaAhfI8qj9PMhUHTWuQsiAhV6rjRxFx4YDkRy5q98iuR1sqZ4rGKaEy+Ald1dSr+jKNEalf7REfSMS/jI4rLD7jlKo6yHz0UxPLjRd4DQzPXSjf3Vu0JLztS3jp+teUDgJtY4Ld/+s+DED3VA0V9U+EQq/ngORmiJJcWHPlf2a9Y54PCmQotuYBCbRex2hD1B6QE1dFrf5Hilhh7Nwg9FHaOOj+rFeBcYRojEQKhNI7Vdl6/tmVVzFKBph/3jySyuVrAKGkaA9hciNtqQUcGXI2j1TzYCsiPIf9UaFuN1fFxNIPWhBi+a9hXzdkHk1PUm+rcWM/6OIsdAg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=omkVjQfeBv81Qnb7mWu3p+UblKFRDxvjBwxiZYEpSf4=;
 b=E+odiOI2uhLpoz2VSR2AnsRx58t0EbIOMOT9D8nRKDcW+a1FD5kN1hOqPiaHz95O5q7rnnYIl3Vv65GdPbdWBHfbPqGasw3xpd8iD8PFI8/mSGsgLuFWA6iNfBezqizmQ8/QjYeQtvqkXKO4wG0ves7XTuy7MVwUbQ8QP+pH+Ca6z8rwksOS2jb6kBvHhNHV4EI0FKA3wCw/Xl6dHkOU8mOSTxh+zsUzRoK605kio0IL69RSCVGSAkjZgyNUxXeR3gPkh0TT7EQyUY2flgMoc3tnsGyosj8f0zJacLGjRYFBdWgn+oK0xYfOpaLUOArWp5z6T7I8ModzgZUO+jQbdg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <0846e69c-22ec-0cc2-de5b-b895ff20e860@suse.com>
Date: Wed, 27 Sep 2023 12:42:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v3 for-4.18?] x86: support data operand independent timing
 mode
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Demi Marie Obenour <demi@invisiblethingslab.com>,
 Henry Wang <Henry.Wang@arm.com>
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0161.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:99::20) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AS8PR04MB9126:EE_
X-MS-Office365-Filtering-Correlation-Id: 0e0ade53-2782-48b9-120c-08dbbf466e3c
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xZovxUWyveolH0v91Pku/tag2f0p341T1jna6bSgkdsklh6rzAdQmCDy5cJty7m1Vz/ZhNNv5doKj+7JDmVS2C4GtlhxY7m79iJpm+ZQDrHXHyiHuAyF93ea56DA0ucHrwjNDT5Y8ZblDlEk3/K7Pxz9gymtkkXJAEKovjELtywH3bi5L2HvoNJxcCUjBT4mLgWu6hdi5FqPj7JG0eO/m+9l0iYnIKxVUqGDOPiH4RDpcd+x7WHoPyMdF7bYk5qNlVl79e+Ys043r0G9f4laLyn9Xq9DJPKODVVaMYZEusZv6uHw1dZBnXvKJB7DQQKhrLxRfm2gExKc5EnE5cngxHDhoEZtozldUzsOYHm+FD0qnQqPp0TTbBkkSVyjcuxPxe4svby6rnM0ysQkbzsbJHJJUlknjqG+W+E4fN6GwPCiSsaFtYVOnbArs23+HSJwTGE/U15mFKqaUaMDblbBVmkMdPF6buHsKRxm6nf0wmjulggf81gtLMlmq0rPo4TAVlvrDB7UgMoz4XiF7jghgAKtzkL/plolCcGRo5k7E9A2QuU83snxos9SsHvVf7Va5KG6yzav8U4jFCN9Q3PhZIGMfBPY/BMGJFYXPuL9cDEXkl/PmoHMMqXJNOphudYB7RYQzEShW2KY6GjW0QJvIw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(366004)(136003)(396003)(346002)(230922051799003)(186009)(451199024)(1800799009)(316002)(83380400001)(2616005)(26005)(54906003)(66946007)(6916009)(66476007)(66556008)(41300700001)(8936002)(8676002)(4326008)(6486002)(6506007)(6512007)(478600001)(966005)(2906002)(31696002)(36756003)(86362001)(38100700002)(5660300002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M1JRaTRxN3dHeVo3VzJXMU51dUg4U0JRMUE5VG1iVWNudmlTcmlDQXYvYVFq?=
 =?utf-8?B?SUQ2N3ZzTWYyUDhCbmJGTWhCMC9GSUpsWkZmMEVYSWxoVHVROHJzVmw4eENO?=
 =?utf-8?B?alBKcWo1b2NVbVlFUVJiOXU3M3Blcm5EL0FEY1NjeSt1ajkrQ2pBRjBaUVhQ?=
 =?utf-8?B?UW9qVlFqZG11aWNEN2owcnVTa0dkM2Y0dzUxeGJ3QkVaUVJjcUVJR0M0Z2VR?=
 =?utf-8?B?RlhISit5OGNpR0JicWhXOG1kSWpTUGVYcG81Z1YvSU9LRC9TRURtNEhvc08x?=
 =?utf-8?B?WThyTDBYUEptV2tVRnZYclVUZHpQbHZVV01GTXF2dDhOdEF3UUhBTlkwMGRD?=
 =?utf-8?B?RUVNeVZpSDFQTFV3MFlOdnZnN1Y4YkRpRU1SOHNiWE92OWQzYUh6VWczVG1S?=
 =?utf-8?B?blhocm1lTkM2Um43ZFJtNzYyK1JPOGpiWHVDWGJxVUcwWjcyblZzQUh6cEgz?=
 =?utf-8?B?aE92Wk9xOFdMWG9XMFJxN0ExOXZXV3BhZGEzcENhVDhJVHpzZXMzV0pWbGxQ?=
 =?utf-8?B?TFMrdGtYK1hKUnR2QnZDZFhpaXA5SVJYd3lsRFd1aFA1VXl2RE5UMmwzcU5S?=
 =?utf-8?B?Y0g4bnlDNnNzK2xWa2dYejZzSytHTjNBMWhiZnJYRjZkeldxaUYyeFRhdDR0?=
 =?utf-8?B?UUg1cmpMQnp5QTAzSCt4SlpLMFpEYyt6TThRQ0hRczkwM2tIbGNoMWIza0tl?=
 =?utf-8?B?RDRPOWJkMStEVXJYS0VVSEdnRGRmajNFQmFFRisrclNkTkc0QXRaeHJ3ZWVC?=
 =?utf-8?B?aUl6RUhrQzZ3d0JVNmp0ZnVFeThRN3U3MkQ5R0NsRGlDZDhQVXA5a3QvSEc1?=
 =?utf-8?B?dTNHY0lnV0t4RGhXQUlCajZVbktQODJuQmp1QXd2Qi80TTJOMTduOWJ6TGto?=
 =?utf-8?B?Z2pCYVI1TVliYVBEUDdiZEJpQVdoa3diQnRRcWl2ZU42ME1kcmh3b0kvMGs2?=
 =?utf-8?B?OEFra2JYd3VDT3U5L2x4QUMrU2srS085KzV3NnU2NXlQcDVYUDdTTzdST3RP?=
 =?utf-8?B?TWFhM1A3THlLTldvOEtsR3FXSlFCY2M2NDZoRGIrdGx4dzRQUHdCYzlCR0pR?=
 =?utf-8?B?RzhZUk9QdFBKRjZsV0RVMlkyL3FwQ1FPNHFUN1NOMGs0aWVCUFFFRFIrcWlS?=
 =?utf-8?B?OCtDcTY0bHE0M0hMS3dQLzRoTERwOEJiYWZvY1pQUy8xRTF0akNsclNmMUpq?=
 =?utf-8?B?a0RsSEVOTURQa0F3VlpKM2cyQmFDbVV0a2NQWFFOZm5DMkhTdVVzWXFMdG01?=
 =?utf-8?B?dlh1cy9FNXorQVFCMzh0MUZpWXh2SzgwVTlFMFhySk5rRjF0UENNOVlZeW1j?=
 =?utf-8?B?VVdTSHZqZTZjRmU3UGl3cVV1WU5DQlBuUVErVzBNZ0dTV1N2S3htcDVYVjRH?=
 =?utf-8?B?S3pZTVN0M1JJVlc2SWhuSmFERzRGQkxVQUE0ZytGdTFka2pyS0pOTkowVDE5?=
 =?utf-8?B?RzlSZXZRNThwWFEzcjBiYTVGWERKVkx2QXkyVk5qR0Q0Vm85cGVoRW1neHhw?=
 =?utf-8?B?azhXWFVmUUVVamQ5NzkwalVWWEVlQURRbkJOTm9KOUtCQ1JNZG1VenFFTmxI?=
 =?utf-8?B?VkJ4OU9URDN3OVI2dElQT2QxSTFGYVJVdXl5MXAwbkhSenQ5QkdERDJCZEJ1?=
 =?utf-8?B?d2QvMndwNGlJM0owRUJsTkxUV2lYc28zVFF4Uy93Tyt5dlIxNFZuNFlhL1ZC?=
 =?utf-8?B?azlxNkw3L2xUa2pZeHFuRytKNlI3Z1JFOG5oencxNVJKc0tYTkI5YjQ0Wnov?=
 =?utf-8?B?U0ZadmhiT3JKeGdROUR4TG5GandLTWlMWkRWLytPUlF4NlE5R0owd3A0ZEZX?=
 =?utf-8?B?ZnplSmd2ei9NdzIzbXh3OHdCUEJOeExuU0ZxYXFVYUdXYVZ0NUIrZjFSMVlN?=
 =?utf-8?B?dGovNVNLekVWMFFONEJWUUFXNTVWQmZqRGw4aDJZeEhnRzB5OXdhMnpXT1Bk?=
 =?utf-8?B?R3g4S2VBbEdrRTFxU1RCRHNycmNoTU1BcE1DdkIvTVd2WGdkTktrcDhySnQ2?=
 =?utf-8?B?dndRaWVrU1dsK1Z6TmNhcXo5akZtR3o1QmFZSFBpOGlqTUptdm9kbE15RTVh?=
 =?utf-8?B?NTFLR0pvRjFscGIwNnhGdXZvcjBDa1dNUDFRc3Jkc2NqSi9uQ1VMWExpRDBq?=
 =?utf-8?Q?W4diBngxGxlRZZLBvDxMYl/Na?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0e0ade53-2782-48b9-120c-08dbbf466e3c
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 10:42:22.2062
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: XhA7vOFcv8UP2hl56UY60U5oWGR7E1LsWxsSOe/lSJ+ZLmwtTgbbrI/1EaNFVPon3x7hqdu/XW1BJZoDxsW1hQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB9126

[1] specifies a long list of instructions which are intended to exhibit
timing behavior independent of the data they operate on. On certain
hardware this independence is optional, controlled by a bit in a new
MSR. Provide a command line option to control the mode Xen and its
guests are to operate in, with a build time control over the default.
Longer term we may want to allow guests to control this.

Since Arm64 supposedly also has such a control, put command line option
and Kconfig control in common files.

[1] https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/best-practices/data-operand-independent-timing-isa-guidance.html

Requested-by: Demi Marie Obenour <demi@invisiblethingslab.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Release-acked-by: Henry Wang <Henry.Wang@arm.com>
---
This may be viewed as a new feature, and hence be too late for 4.18. It
may, however, also be viewed as security relevant, which is why I'd like
to propose to at least consider it.

Slightly RFC, in particular for whether the Kconfig option should
default to Y or N.

I would have wanted to invoke setup_doitm() from cpu_init(), but that
works only on the BSP. On APs cpu_init() runs before ucode loading.
Plus recheck_cpu_features() invoking identify_cpu() takes care of the
BSP during S3 resume.
---
v3: Extend command line doc. Add changelog entry.
v2: Introduce and use cpu_has_doitm. Add comment "borrowed" from the
    XenServer patch queue patch providing similar functionality.
    Re-base.

--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -29,6 +29,8 @@ The format is based on [Keep a Changelog
  - Add Intel Hardware P-States (HWP) cpufreq driver.
  - On Arm, experimental support for dynamic addition/removal of Xen device tree
    nodes using a device tree overlay binary (.dtbo).
+ - On x86, support for enforcing system-wide operation in Data Operand
+   Independent Timing Mode.
 
 ### Removed
  - On x86, the "pku" command line option has been removed.  It has never
--- a/docs/misc/xen-command-line.pandoc
+++ b/docs/misc/xen-command-line.pandoc
@@ -788,6 +788,16 @@ Specify the size of the console debug tr
 additionally a trace buffer of the specified size is allocated per cpu.
 The debug trace feature is only enabled in debugging builds of Xen.
 
+### dit (x86/Intel)
+> `= <boolean>`
+
+> Default: `CONFIG_DIT_DEFAULT`
+
+Specify whether Xen and guests should operate in Data Independent Timing
+mode. Note that enabling this option cannot guarantee anything beyond what
+underlying hardware guarantees (with, where available and known to Xen,
+respective tweaks applied).
+
 ### dma_bits
 > `= <integer>`
 
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -15,6 +15,7 @@ config X86
 	select HAS_ALTERNATIVE
 	select HAS_COMPAT
 	select HAS_CPUFREQ
+	select HAS_DIT
 	select HAS_EHCI
 	select HAS_EX_TABLE
 	select HAS_FAST_MULTIPLY
--- a/xen/arch/x86/cpu/common.c
+++ b/xen/arch/x86/cpu/common.c
@@ -204,6 +204,28 @@ void ctxt_switch_levelling(const struct
 		alternative_vcall(ctxt_switch_masking, next);
 }
 
+static void setup_doitm(void)
+{
+    uint64_t msr;
+
+    if ( !cpu_has_doitm )
+        return;
+
+    /*
+     * We don't currently enumerate DOITM to guests.  As a conseqeuence, guest
+     * kernels will believe they're safe even when they are not.
+     *
+     * For now, set it unilaterally.  This prevents otherwise-correct crypto
+     * code from becoming vulnerable to timing sidechannels.
+     */
+
+    rdmsrl(MSR_UARCH_MISC_CTRL, msr);
+    msr |= UARCH_CTRL_DOITM;
+    if ( !opt_dit )
+        msr &= ~UARCH_CTRL_DOITM;
+    wrmsrl(MSR_UARCH_MISC_CTRL, msr);
+}
+
 bool opt_cpu_info;
 boolean_param("cpuinfo", opt_cpu_info);
 
@@ -589,6 +611,8 @@ void identify_cpu(struct cpuinfo_x86 *c)
 
 		mtrr_bp_init();
 	}
+
+	setup_doitm();
 }
 
 /* leaf 0xb SMT level */
--- a/xen/arch/x86/include/asm/cpufeature.h
+++ b/xen/arch/x86/include/asm/cpufeature.h
@@ -201,6 +201,7 @@ static inline bool boot_cpu_has(unsigned
 #define cpu_has_if_pschange_mc_no boot_cpu_has(X86_FEATURE_IF_PSCHANGE_MC_NO)
 #define cpu_has_tsx_ctrl        boot_cpu_has(X86_FEATURE_TSX_CTRL)
 #define cpu_has_taa_no          boot_cpu_has(X86_FEATURE_TAA_NO)
+#define cpu_has_doitm           boot_cpu_has(X86_FEATURE_DOITM)
 #define cpu_has_fb_clear        boot_cpu_has(X86_FEATURE_FB_CLEAR)
 #define cpu_has_rrsba           boot_cpu_has(X86_FEATURE_RRSBA)
 #define cpu_has_gds_ctrl        boot_cpu_has(X86_FEATURE_GDS_CTRL)
--- a/xen/common/Kconfig
+++ b/xen/common/Kconfig
@@ -41,6 +41,9 @@ config HAS_COMPAT
 config HAS_DEVICE_TREE
 	bool
 
+config HAS_DIT # Data Independent Timing
+	bool
+
 config HAS_EX_TABLE
 	bool
 
@@ -175,6 +178,18 @@ config SPECULATIVE_HARDEN_GUEST_ACCESS
 
 endmenu
 
+config DIT_DEFAULT
+	bool "Data Independent Timing default"
+	depends on HAS_DIT
+	help
+	  Hardware often surfaces instructions the timing of which is dependent
+	  on the data they process.  Some of these instructions may be used in
+	  timing sensitive environments, e.g. cryptography.  When such
+	  instructions exist, hardware may further surface a control allowing
+	  to make the behavior of such instructions independent of the data
+	  they act upon.  Choose the default here for when no "dit" command line
+	  option is present.
+
 config HYPFS
 	bool "Hypervisor file system support"
 	default y
--- a/xen/common/kernel.c
+++ b/xen/common/kernel.c
@@ -28,6 +28,11 @@ CHECK_feature_info;
 
 enum system_state system_state = SYS_STATE_early_boot;
 
+#ifdef CONFIG_HAS_DIT
+bool __ro_after_init opt_dit = IS_ENABLED(CONFIG_DIT_DEFAULT);
+boolean_param("dit", opt_dit);
+#endif
+
 static xen_commandline_t saved_cmdline;
 static const char __initconst opt_builtin_cmdline[] = CONFIG_CMDLINE;
 
--- a/xen/include/xen/param.h
+++ b/xen/include/xen/param.h
@@ -184,6 +184,8 @@ extern struct param_hypfs __paramhypfs_s
     string_param(_name, _var); \
     string_runtime_only_param(_name, _var)
 
+extern bool opt_dit;
+
 static inline void no_config_param(const char *cfg, const char *param,
                                    const char *s, const char *e)
 {


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 10:46:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 10:46:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608880.947656 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlS3a-0001yy-5t; Wed, 27 Sep 2023 10:46:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608880.947656; Wed, 27 Sep 2023 10:46:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlS3a-0001yr-2g; Wed, 27 Sep 2023 10:46:14 +0000
Received: by outflank-mailman (input) for mailman id 608880;
 Wed, 27 Sep 2023 10:46:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlS3Y-0001yl-Bx
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 10:46:12 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on2061d.outbound.protection.outlook.com
 [2a01:111:f400:fe12::61d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1264b495-5d23-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 12:46:11 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by AM9PR04MB8875.eurprd04.prod.outlook.com (2603:10a6:20b:40a::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 10:46:09 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 10:46:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1264b495-5d23-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aaw0Z8kbD7wRbwhXOR2k47JS9r05ocVVPWGOetg3YEg0LTASFJzo/kRSehAbPfx6WlPWyYgusknbsRuS2H0cqvwVeBgtW7FfdUg/m3TyWxMS3VK/nd3o49mE/sv8XVZb4+7QauG1qKC0g8dNKUKVvLv0fGsjl2/kuNJkJdLfizyxnRvrGLX03ArE7bFRos3dtq3yfgEWaPLXDZsB435pRYYqfYHSFqxg+FZK944uQy2knYpNRekYtmdDdJR0O58zOco1k36mfoXKVx/bQCr7hlCcvbC9cNk8Qdg37W4PALX1imqWOt4rPFUt90rObT4rA2dlGTgR3+hPN8G4KdnmyA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fAbnNI3Uwd/CcUPWgQ6Jmcm6lNFK9Lp38qZYaUCTxIw=;
 b=Hw/iIbcCTCP1RZu68CSOLWOpLWdAKWICgUOUxnu7NDpYHfWC6NZuy5pYBoszCuElC0P0+9hMwzrm2JPNppw5fIOWe1t7Q6mMxYTy2EdRgLyBUeT4rOXv3lJ/XD8ydUng3MDOlc26v7yTDvGLH0M70PhFnGcCL0sTac5+e4Gy+QKon0bQ99fveC2FTRSrVp+7dZfzLpNIoVr+YzuRX+DrpnfgOzEy1QbTxZJOtc/U8tKzUypGPho1lY3U3QzACjBHs7MKDtyVHUSD03skvZz8KYACL4VlF2ueIYSnl6C2hP6mawJhg/xCKzQZnCY/edcEqEvPQKvEwkjdIBC/7wyjmw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fAbnNI3Uwd/CcUPWgQ6Jmcm6lNFK9Lp38qZYaUCTxIw=;
 b=wlD7sy6Q0Z/gH3R50J9PN6E0AW98LmKrWxNGLQO5vjDa5ya1kyG5Nq7cUOtekJdbmGYWffpOByCdFqyBoTGWzZhDH+ZlqEHUTjxbb3k5SUrgCdAk0ZZtJ5Aeb6sxlc0XJMKurl6TH3kKq6FCRv55jnxevX/bfxedVFRImaudNQfCj7dUNBRWvCOclqei9VMcbMUlhNJlEq+FB97cvhpORdUl470JN0W8J+qw7s5KeOalsZglsJccX/bgV0i11jacX/IMZm+Tn1XF1JpNR7+rfE7TgT4qSG/gKNDN84SzEpxJNjwKWjjak1KJmlAXGyUKVPwI4BLrCZTnbsluQqRnIA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e0080de0-d64d-8b38-40e3-5bd779651ee6@suse.com>
Date: Wed, 27 Sep 2023 12:46:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 1/8] domain: GADDR based shared guest area registration
 alternative - teardown
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <68cdb299-c41c-b6a5-c9ce-bd915508ecf2@suse.com>
 <ZRPtI9UfgpCfQ4HU@MacBookPdeRoger>
 <4e1e0b28-bb0b-03f9-d62e-dd04846dd2e4@suse.com>
 <ZRQHA0u5wPXkuILV@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRQHA0u5wPXkuILV@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0121.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9d::12) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AM9PR04MB8875:EE_
X-MS-Office365-Filtering-Correlation-Id: b2812909-8ca7-4537-5ac4-08dbbf46f591
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	b3LYE1mXftp8Fcx2X3x2CVfqg2oUr6X2/psAHdw/+GTcyWy0wZ9TExX6VLq+jUIwcBE3MFZF32iQO2iGWtsXXv/0UPuVmP0AWbzBc6hAF/L1sJYZ5WCIlUNO2Tq3WEp3+hv+ElCRDFr4ukRwk+lzY7y09KldaHf0Yeyfr5MM6FSYeXlWbvJPJbFE8+fEgqLqw+TcE+fYT1Hy5jV79SNX9NmDU0e/Hyqey/6Xo/rPX/YyRhSycyiqPYTJ91CI4B9DZp4/n+qBXS4Ip7OPsYoVJ3nGD/0lnL+Iea4wvFH4rIi8V1oSv1aXRzgxqzAAX1WdNVMNdTMYuVX5fs/C/nu4T3y/jUdCNVOtjGt77X8kL7V+rZnPXqORceRQpFk2J6CSu5LarlzPSHKNjPwWaaZkal8wgkRPyXaEnlqSyOId/TGItemaH/pJMhhZbUPQYPHZFfQ+49U++wvW1UIqygfQ3aJNQLtQCpys3yJ1EDQGE3YxITj3pj5w0Zznu8gA2+dqO+1sHL0BTrkKkhvOh22ozmsYtRyDytbwKCGZa1PAGMA0y1UYTZgedNKZQY/Qxh+1XIbufcQ1rbfKt5EvlD8hBEuGXtWhaI/RvViEWyop8kJCYFwmex4y6/JB/u77PEfgqiECHb/i+SieogQ7ci6IPg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(346002)(136003)(39860400002)(366004)(396003)(230922051799003)(451199024)(1800799009)(186009)(478600001)(8676002)(8936002)(31686004)(26005)(4326008)(2906002)(66946007)(66476007)(66556008)(6916009)(54906003)(316002)(41300700001)(5660300002)(6506007)(6486002)(53546011)(6512007)(36756003)(2616005)(83380400001)(31696002)(86362001)(38100700002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dVBGVVcyQW1NVElyZFFRb00rRk40MVg3Lzk4Q3JGaVhnUENDU1BKMS9QbktY?=
 =?utf-8?B?OGdyYjA3ME56NnhUNWlMald6dlk2bjNWNEU2WTZQMUNYTjMyY1F6RUtQUlhS?=
 =?utf-8?B?VSt1UmdkM1hiQWp0OW9TT2NCRGMvbk5ZQ1c4Ym56a2lBdUEyY3djZkpvUEVW?=
 =?utf-8?B?QnFCM0dXazdaYkZTQWVIeThOZFhSYVpCVjl1WDVxdFNzWU1vNWc4Nm1SVGN3?=
 =?utf-8?B?VnFLSkxISElleFFJTkNZYlphOVB5M0hnaTBYU0NsdDNxNjhMeGkrRmlpMVpR?=
 =?utf-8?B?Q1FDUUVjN1lGVHFvU3BLYnpXclg1dXYrOElCR0IyUTVqaEZRa1ZOc1NGSEVL?=
 =?utf-8?B?SDZ3WWc4SWszNVlWWmo5SEMyRHp4aUZpYjl4bHVNM3I0bVRwd0hKdE1sYkNJ?=
 =?utf-8?B?aDgzQVdyV0t2VnMzdWhhRlliL1BEWEtGOElGVVFTeWluWlRJZXZPeG44VWxm?=
 =?utf-8?B?cWNJeUNueXZXbnB2cHBpTW1VOW5MUHA5Mmg5ZFp1bEV0Vm9lbngwNDJnUCsz?=
 =?utf-8?B?eFBsUlB1WGlYRHNoZmZTc0p3S2hpVCtuYkVBQ1F4clMvUEN3a2t3cmhpNE92?=
 =?utf-8?B?c3F2QzM2NGFQNDdHejJLbHQ2eUt1RUY5UGQ4YWlUcFBpY1NSOE1leHYrRElq?=
 =?utf-8?B?VjNLNnlvZ0pnNHhFMytwenFKd01BeUFDV05yTE44Z2taNnA5SzlocC9tdnV2?=
 =?utf-8?B?M3JKQnZXaFlXMWl2RHZrWHA1UXlWWGo0RUQxNCtCWDRuYWxVajZkS09PK1Bq?=
 =?utf-8?B?SHArc25uSmlPTGp2c2xkc3RjSkIrMVRUdHBtRzV5UTkwOExZdjQ5K2MyTFZv?=
 =?utf-8?B?Q2gzSm5wbUtnYURKY3Mrd2ZnT2xRQnVab0lQdGNZK0J2U0VlREdMSDUzTzIw?=
 =?utf-8?B?VjlCVHJwUlA1dkw1czRUdmJ2aWRyaUpIN05MS2NhQ2s3eGZzc3BjeC9Wc21k?=
 =?utf-8?B?ZWtDdDZ6aVVYVjU1NEs3NGk4djd2RlQ1RDFkRFRlYW16YTE0MU80WjJpM1Fh?=
 =?utf-8?B?c1RTMUVNMUhmQVdyWm8raXVVZXVBVldrRGxmVTh3eHZNNnN4dy93bUtkOVgx?=
 =?utf-8?B?QW1zNnJJYzRYRGdheEVwVkMxZUl6MzFYR3Bod1JyVVZuY1ZsYUhyTW5pUHJI?=
 =?utf-8?B?Y1pYK3F0aDJ0bnBsQk9yVnV1WXpQcjVTVzRtWm41eTVUYkJadDllZ0tzYmFE?=
 =?utf-8?B?WGRXa28vUm0ybkhvRTdhcFM3TUFzT3JXeWUzYWh3WnI4L3hETUZNL1hCZDVW?=
 =?utf-8?B?WXNkK0VkVUxVK3JxcEVmS3VHWnFWcTZPSFhWV2VPV3ZxUFBQTW5Bd2c1bG4x?=
 =?utf-8?B?bmVYVGdTNVovaExqTDNQZ01FMkdqODJNKzNBY01FWjZhSDczamppMENvR0N6?=
 =?utf-8?B?MEhycWdoVFJKOE5xT0pUNTQ0ZkcvZU1aZjRqMDVvOVZDZGo0b0dmWjArYldr?=
 =?utf-8?B?Q0FERFJ6REQxMmgyMmovSldIdFdnb0hUNENST1Y3ZXZjUHZuUExvODFBZzU4?=
 =?utf-8?B?TG1JWitpQ0JuSmV2N3MyaHAwL2V3NzlMNTRVdmVWVkM4WmtXcGhVQVpZY0l4?=
 =?utf-8?B?bmlQSCtWbGdaZndmU3BJSWlRdXlFWnZFUTV2M1YrSzd5UjRRTjZoMmhLUzIy?=
 =?utf-8?B?NXhacjlEMUFrZU43UDE5R1FaMFNQb2p2MFBVQ2o4SEpNdFkzeFc4cThmOVht?=
 =?utf-8?B?bXFIWFpMbWtUNk5kcUNUSTJwVUhnRWplVTQ4R1JXeG0yUEtEemZHbURwdGpr?=
 =?utf-8?B?cVlzRENDalFnNWNEbExkVnk5TzVMbjNRTmcyTU5YM0xReGRGYkd6RlNjK083?=
 =?utf-8?B?dlJjeDVkbGFXbkNMbUg3UjJLNVRkRjU2dXQ3L0NVUUpvVXUxcFFKcGlhVEdY?=
 =?utf-8?B?T2VoVXhFVWdZRDhXMU5pOGJsUEJLZUJoV0NnT2VMRisrdlQ5RnVrMllZZGNo?=
 =?utf-8?B?cngraW9FQ2x3U05aMXYwdFlaQUdLZktKMnUrSTYvSkQ3R3BIdG9MRTR1ZFBx?=
 =?utf-8?B?dW5hbDYrc3NFd1BoQ0tXcThuSis4cG5mQzVFaTV5cnlha1R6Z2RTZkdaYnF1?=
 =?utf-8?B?UjVzU1NHUERmWnBmN2xpTkRrK2hqNHpyQ1poY0hES1NOK3FacVVoM3czZVMy?=
 =?utf-8?Q?+uxTWXUwF4qnZqfdhM3OB1LAX?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b2812909-8ca7-4537-5ac4-08dbbf46f591
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 10:46:09.2713
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Y4tPi5nrLtngAGICbGB+jUzVyXtodQzmTavYQSYnjZqy9nUjxintQF06MAvtoSgNrXdF/0SNwCuRKRJ1+1nhcw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8875

On 27.09.2023 12:42, Roger Pau Monné wrote:
> On Wed, Sep 27, 2023 at 11:55:19AM +0200, Jan Beulich wrote:
>> On 27.09.2023 10:51, Roger Pau Monné wrote:
>>> On Wed, May 03, 2023 at 05:54:47PM +0200, Jan Beulich wrote:
>>> I guess we should also zap the runstate handlers, or else we might
>>> corrupt guest state.
>>
>> So you think the guest might re-register a different area post resume?
>> I can certainly add another patch to zap the handles; I don't think it
>> should be done right here, not the least because if we see room for
>> such behavior, that change may even want backporting.
> 
> For correctness it would be good to zap them, but there's no rush, as
> I do think guests will set to the same address on resume.

Well, I've already added a new patch coming ahead of this one.

>>>> @@ -1568,6 +1572,19 @@ void unmap_vcpu_info(struct vcpu *v)
>>>>      put_page_and_type(mfn_to_page(mfn));
>>>>  }
>>>>  
>>>> +/*
>>>> + * This is only intended to be used for domain cleanup (or more generally only
>>>> + * with at least the respective vCPU, if it's not the current one, reliably
>>>> + * paused).
>>>> + */
>>>> +void unmap_guest_area(struct vcpu *v, struct guest_area *area)
>>>
>>> vcpu param could be const given the current code, but I assume this
>>> will be changed by future patches.  Same could be said about
>>> guest_area but I'm confident that will change.
>>
>> True for both.
>>
>>>> +{
>>>> +    struct domain *d = v->domain;
>>>> +
>>>> +    if ( v != current )
>>>> +        ASSERT(atomic_read(&v->pause_count) | atomic_read(&d->pause_count));
>>>
>>> Isn't this racy?
>>
>> It is, yes.
>>
>>>  What guarantees that the vcpu won't be kicked just
>>> after the check has been performed?
>>
>> Nothing. This check isn't any better than assertions towards an ordinary
>> spinlock being held. I assume you realize that we've got a number of such
>> assertions elsewhere already.
> 
> Right, but different from spinlock assertions, the code here could be
> made safe just by pausing the vCPU?

That's what the assertion is checking (see also the comment ahead of the
function). It's just that the assertions cannot be made more strict, at
least from all I can tell.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 10:48:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 10:48:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608884.947666 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlS5j-0002Yw-IW; Wed, 27 Sep 2023 10:48:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608884.947666; Wed, 27 Sep 2023 10:48:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlS5j-0002Yp-EP; Wed, 27 Sep 2023 10:48:27 +0000
Received: by outflank-mailman (input) for mailman id 608884;
 Wed, 27 Sep 2023 10:48:26 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qlS5i-0002Yh-4f
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 10:48:26 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlS5h-00007v-El; Wed, 27 Sep 2023 10:48:25 +0000
Received: from [15.248.2.159] (helo=[10.24.67.27])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlS5h-0005uH-92; Wed, 27 Sep 2023 10:48:25 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=8NbhY/7bO6QFbd/8bdAUIDcE3hm36e7grSYaoGNBZu8=; b=1+3u3UJ+hbVRkmeBE/8kSjFCWA
	1molvidbarAbHZjw07Ee7n3qjfil2vPa8zj49QTo9fhE2Wy/N8U67WFb6rGKc+URDTLhL3h8qP1Ug
	xW9HZZJIP74MTVjCWKMQ+ebGBxQjr2hck7ASiHIiCmeqPbYExHjSc2oiKiB1WS9yG/h8=;
Message-ID: <73f0c7c5-8a35-47df-a1ab-dfe784fed3d9@xen.org>
Date: Wed, 27 Sep 2023 11:48:23 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Skip memory nodes if not enabled
Content-Language: en-GB
To: Leo Yan <leo.yan@linaro.org>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230926053333.180811-1-leo.yan@linaro.org>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230926053333.180811-1-leo.yan@linaro.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Leo,

Adding some comments on top of what already said.

On 26/09/2023 06:33, Leo Yan wrote:
> +static bool __init memory_node_is_available(const void *fdt, unsigned long node)
> +{
> +    const char *status = fdt_getprop(fdt, node, "status", NULL);
> +
> +    if (!status)
> +        return true;
> +

We have a similar implement based on the unflatten DT (see 
dt_device_is_available()). While trying to consolidate them is probably 
not worth it, I think the behavior should match.

In this case, you want to check the len is greater than 0 before doing 
the comparison.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 10:51:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 10:51:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608888.947676 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlS8K-0003zM-UV; Wed, 27 Sep 2023 10:51:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608888.947676; Wed, 27 Sep 2023 10:51:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlS8K-0003zF-RT; Wed, 27 Sep 2023 10:51:08 +0000
Received: by outflank-mailman (input) for mailman id 608888;
 Wed, 27 Sep 2023 10:51:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WUTS=FL=citrix.com=prvs=6275c33bf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlS8K-0003z9-4s
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 10:51:08 +0000
Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com
 [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id be924684-5d23-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 12:51:01 +0200 (CEST)
Received: from mail-dm6nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 27 Sep 2023 06:50:57 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB6769.namprd03.prod.outlook.com (2603:10b6:510:120::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.33; Wed, 27 Sep
 2023 10:50:54 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Wed, 27 Sep 2023
 10:50:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: be924684-5d23-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695811861;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Gr4dRfudEqPJua9kqOETZi67xgl59qH7LcW4XEccck4=;
  b=EQ0ejURRzw2G6sFbbtqLwT5DcaxxspYlFNNovQOvSRkH1Cky/VwpbBQW
   2nLHkid6TttnropIH3z9XjTBSQagJ2OkqYf9SNHhPPewO7uUCFnPSjKyT
   rCy/guRK/GCtejlJqrDRUZxINPBuYBuhT4FaZfh2WNScwV+OKqHKixIXo
   o=;
X-CSE-ConnectionGUID: vYcIOSQZQ6WsQpdu8+l/pQ==
X-CSE-MsgGUID: gjYCoj4bTvKEvkbUmk7Tbw==
X-IronPort-RemoteIP: 104.47.57.168
X-IronPort-MID: 123199452
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:izpV76nkArMSR0qn0vB7mNbo5gxPJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xIWWD3SM/vcYmv0Kth3a4/l/E8HscPcx95gTAts/y8zFCMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqga5gCGzhH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 eIpIxEqVSmxvryJ24ujRvQ8xcBkNPC+aevzulk4pd3YJdAPZMmaBonvu5pf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkVM3iea9WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmgAdNDSODinhJsqFKR90cUCkEcaUWYjOe6gHO7WI1jI
 VNBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rrZ5UOVC3YJShZFacc6r4kmSDoyz
 FiLktj1Qzt1v9W9S2+Z97qShSO/P24SN2BqTTQfUQIP7t3noYcyphHCVNBuFOiylNKdMS706
 yCHqm45nbp7sCIQ/6Cy/FSCjzfyoJHMF1cx/l+OADLj6R5lbom4YYDu8ULc8ftLMIeeSB+Go
 WQAnM+dqusJCPlhiRCwfQnEJ5nxj97tDdEWqQQH80UJn9h1x0OeQA==
IronPort-HdrOrdr: A9a23:2mP7Qq/ZyVsWUZJuw/tuk+G7db1zdoMgy1knxilNoENuH/Bwxv
 rFoB1E73TJYVEqKQodcLG7SdG9qBbnmaKdjrNhW4tKMDOW3FdAT7sSiLcKoQeQYREWn9Q1vc
 gPAssOauEcFWIbsS+T2njELz9K+qj/zEnHv5a4855Yd3AXV0gs1XYMNi+rVmlNACVWD5swE5
 SRouJBujqbYHwSKv+2A3EUNtKz1OEiwPjdACIuNloC0k2jnDmo4Ln1H1yzxREFSQ5Cxr8k7C
 zsjxH5zr/LiYDw9jbsk0voq7hGktrozdVOQOaWjNIOFznqggG0IKx8Rry5uiwvqu3H0idmrD
 D1mWZtAy1P0QKYQoj1m2ql5+DY6kdZ15Y28y7SvZPhyfaJNA7SRfAxyr6xSSGpmnbIjOsMr5
 6j4Fjpyaa/LSmw7hgVtOK4Ii2C0HDE1kYfrQ==
X-Talos-CUID: 9a23:IBUWom08OOV2mk9Br6zNHLxfBPEuU1rm9UXpfXCjMH5lVe3WTRiIwfYx
X-Talos-MUID: 9a23:7GCr6wuqrrlh8jxpfc2nizNTH8Bqv66SFmMgj5YMhsyHahB6JGLI
X-IronPort-AV: E=Sophos;i="6.03,179,1694750400"; 
   d="scan'208";a="123199452"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UW9mO5XMH7w9nfi/9lDj8bFtiaJnFFLrDw99F23MJnqbhw8Yi/GMPnB8j6+wIKDU8uh0wr1KKk5lHprKSR6m9wy4BGluxVddWAeT96+3O07c6I3mt+XRjwzX5D80O5pYzukkBQPVoZWAjouOmM6ey9/q/nQnoGFwwo93AKvlbnYtGcOvPqiRilG/S0hTaKXW/BzlSd8K5154awweNMaXNeLhVZiQX2F7zaUVKKkcFTHbhzP8JKYFKpH+4fho8QiDGw3mlm95o+1VIyiAbNVY0499e5OgL4DMrz74GT6gZDKqnnfI/e5u7Nv7yvIJvJpY0E1Eqr1twPCeZ/nndoFfIg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Fo9y/+R5j+0LjcclKqUAIb8lI9z3H+akWTGADDUbCIc=;
 b=cRhmYwzXMGFJF0Fv1XH/G5okU9Z6qMN4L8hyDaH1apJUto5r27GJxPyAcflv435NgcMZvCUyXu6pHg6EMn2IrkMv+0nTKniHHezOkWOI7ay/Ua6CqsoUaZCUxgErJhOW9oUb9a6XrDuddaCjYLxTByDR0/Z1Dtib64zP7fSqJ6TX9yfAff8DFP60jN8rXK1H3msBD/Un0aihr+PMHY18a4F2P6TjnV5lzOAiNYlb+cVvWolk2iWtK7ZUCGR7Dp9od7t1Z1yXTMedqao9BNJ6erxjXf3C5oEzdptiSYL+I1Y0HCxxwa6qe44pIskWxnFFU1aD307DRM9b6nF/U+rL/w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Fo9y/+R5j+0LjcclKqUAIb8lI9z3H+akWTGADDUbCIc=;
 b=E+1B7SBIwi2ac/AAcOIFBQowgIujVGQIdTCLzV2bbq1FB4H/2WA7KyDdzWfIHoKaB47Mlg9yzZWmtUtWjhjB6HBqOfWW+eqb9edlRfXYtq9KRd4oo9Mc5MFWSzJgyAxYbLMovPyyhTjIz8B5AYkBukmKcMcfhlBvlmOoUGS9GZ8=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 27 Sep 2023 12:50:48 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v3 1/8] domain: GADDR based shared guest area
 registration alternative - teardown
Message-ID: <ZRQJCPNvwMs_VO9B@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <68cdb299-c41c-b6a5-c9ce-bd915508ecf2@suse.com>
 <ZRPtI9UfgpCfQ4HU@MacBookPdeRoger>
 <4e1e0b28-bb0b-03f9-d62e-dd04846dd2e4@suse.com>
 <ZRQHA0u5wPXkuILV@MacBookPdeRoger>
 <e0080de0-d64d-8b38-40e3-5bd779651ee6@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <e0080de0-d64d-8b38-40e3-5bd779651ee6@suse.com>
X-ClientProxiedBy: LO4P265CA0277.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:37a::8) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB6769:EE_
X-MS-Office365-Filtering-Correlation-Id: 1ae69c35-7d0e-4f57-080e-08dbbf479f07
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	cuHSgTzZEchkLBWFqb63QAkhDiLbVudm3/DxJycYiz39XY0G1W1HheLKWqS9YdGf7vqN9IsBn7Jzm//CGM7liEjDj2/4UJZNB98J4JT17v0C+CjrkqbE7v0Iunfh9c6QR0JiGkKeZ+if8yJgmsj1HXNVDBcp9JvuCbuI8BeBMRqq2m1GH8/vcLTS2aqKURX6jZpFkMBt2EXt4JcReeFQj99jP+EKSSIByai2o6/MdnTye7WHEP3ajisRb2MxB/rWbRYxHr+dSzZQrvxkXd5d65xnTqVo4/MupFb7BkoFFVwTHRNeW5PrBtE38RD354PPLmCB4ABKiDt4NGYfbK+kU8YO5b+1PhfMxVMQOlUfmIiyYsBrlHVm26PTRAwfIU3ZtZn7Oc9GFZ+NEQ7yoLSnHin8NEIixlPvhnT9E9y2ZYFn62oCFY046hsTeSiOiPZZX3B5E3XCtZocMwym9UIkDVtLgBOeKNP+BQeoqDIJTPsRi8Q25H195xxXKLRk6JuT0FUYWprGd3mxBnLZhpFLkR4WOXhba9lm0UgKSPpzygYr/WKxVMFLvz+TePBLFN7d
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(39860400002)(366004)(136003)(346002)(396003)(376002)(230922051799003)(451199024)(1800799009)(186009)(83380400001)(6506007)(6666004)(53546011)(478600001)(6486002)(26005)(38100700002)(82960400001)(85182001)(8936002)(6916009)(316002)(66476007)(6512007)(5660300002)(41300700001)(86362001)(9686003)(54906003)(8676002)(4326008)(2906002)(33716001)(66946007)(66556008);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aHQ2MkYrUDBGUmp6UzZSNkxXWStJRHJkK05RV0NrbDVSaCtvd3o2aGFJRDBn?=
 =?utf-8?B?QUxpZDlZanZTRm9kS3RRbzVqVVlCODlFY0JqUkIwRkpjYU1obmpHY245em5W?=
 =?utf-8?B?VUlaeTIxaUhyT2hKVFJzTTE1VHAxNGU3cXFVZ2hrUVBnVStmK3krYy9La0ox?=
 =?utf-8?B?czJrckdWbElaUTNLUlR1Ykd5ZWx3Yk13dWJjRTh2d3RmdVVyTDRMV3gxb0RR?=
 =?utf-8?B?TzRQcndldUxOeEVhUnNjT0FVZ0RWblQ3c08zRFVwQk1Yd1BmMGJaWlh3ZEJC?=
 =?utf-8?B?WDFnQ2lDMUpEOEVzSTRkNm56VlprLzZEMXpsK2xrMERUZzkwZG9DUXZSY0hy?=
 =?utf-8?B?MjBKMnBxLzl5MDNESTFsQlFEdnJFR3ExSE5yWWdlWitON2wvZm5VVENGY0Ew?=
 =?utf-8?B?Q01FajQ3QXZtTmRIMEZFMVJ2QTRmMzdXSUt5bGpVQVZwWkxHa3VJWmhhdmN4?=
 =?utf-8?B?UTJoSGcrNEsxQzhRU2l4Qk1DNXZyYllmMEtvWWU2YVE5TjZyb2hUYXVmL0lo?=
 =?utf-8?B?MEtYeVkvZm5mbFRvNTlaUk5ncGFYSXg0MDFJZG9EWGM1enZEaWE2Z0pVZFVR?=
 =?utf-8?B?S0lkMmNwNGd6R0NNOEJGdEJHV29BOEM4UDQ4UGU1RHlFRXp0anBpbHdhbzBO?=
 =?utf-8?B?VFh3U2xBZmJGMDNTRE4vOUNXUnNvcWIzNlpXOXdEVEdYY1MvVjBIS2hQSnpC?=
 =?utf-8?B?L1Z4TmNpT3FDUk1JMUFBU3hCTkFXRVRPYkoyelVCTEYxd2RUSGowVnlqMjcv?=
 =?utf-8?B?bWtkVWdsVDZwbWhYSlNmckV4cmcrcWtiOFlCSU5Kb21ueng1cUQ4bTQxL3pI?=
 =?utf-8?B?K25MdkdCYmFBWHpoZ2RCOEtNcXZmVUVkaEJWdU5qSWx4SlhubmpLSnhDRnpt?=
 =?utf-8?B?OGJEK2IrY2NTM1F5YTNaYU9zQkc5MDI0dGpBek9aeHJsVWhVREg4RHh5OFFF?=
 =?utf-8?B?UDJDUWdCbUpldTFuN2liayt1OU9LdkFCMTNjTnNWV2M2Z2EwbHRwZjdHQWdD?=
 =?utf-8?B?U2ZwY2tHaXUwVWdGWDYydnBQMkRiOXlleURlWlJhMVFMWWVkaHBXN3p0dUoz?=
 =?utf-8?B?bHJ3SWtPVVAxWkZOWDVxSFVMdHlHbjRscmV5WE5Fb3BLaUxqZTZSenF2eGE5?=
 =?utf-8?B?dmUwQmFYazJZL3pNbmI5M0RLdmZtaTVGRTBKcUwvRHJOTXlaVDFaUFNlb2dL?=
 =?utf-8?B?MU5aWkpFQWZYM0hFV29BaXl5U29JL09DWDRKNk9YNE4wM2tpS3JHQzBldDZX?=
 =?utf-8?B?Y0puQjBXZ3JkSThuOThpdVpTc0V3Wmh3TjFWaUZ3bWluaGpRNFFqamFoNEhx?=
 =?utf-8?B?THowQTRncm9nZk4yemNXelpIUnpFMms0eXN1NjJzallVbGUyK2pMSEdqK00z?=
 =?utf-8?B?QXhVUnZHYjhnNmVDVFdzUXUycDVGTWRZTm45eUNmNkdHZTdCcWpVY1VEZlFV?=
 =?utf-8?B?Q1E1cUwwSjhpbGdmOE0yK3MrL1EvZjdWSXhTZ242K21hTlY5M0FVMGw5WlVv?=
 =?utf-8?B?VlphNWJTdm9UbkF4dWlMRkhsYUFpVWxPaXJ6MGYvNkFDbUlXYlhNdWRrdTIx?=
 =?utf-8?B?SEFoa1NQbmcvWGRGdGhzcjdyUkZlT01wNWVuNS9DUWpJTXpTQ1FqWTFsUjJW?=
 =?utf-8?B?OXRmVTJoTUk0U3lEdlMvRWYzNC9LT2dOcEo0UmxieExpcHFxWG1WTU85L2Fk?=
 =?utf-8?B?c28vWW1HUWdTWHZSQjlaQWw5a0VWVXpTSkN3SGswRk9FYVhha3RWRHZRa21P?=
 =?utf-8?B?cGE2eHNIdU1kOGE5V0tEcGZZeGtoVFdvMWhOVmZncitKdUxnMGZZR1FIUmx5?=
 =?utf-8?B?MTNSK2o3QnIvSHdsUGV0cml5RXJHWkgrMmY1dURCZ0EvdXFoZmQxejNEMzk5?=
 =?utf-8?B?c3ZCTEZHWFdPRlI5MU8za3JQR1VRQzFuZ2pHVUVkVXRtNGdkRk4wbjdlYS9z?=
 =?utf-8?B?eVRUTFZOZktMSW8rb21NS0JZMGtWNGZjT21OaEVBSjRBRDlNT1NRWjFtY1d6?=
 =?utf-8?B?ZlYzaHpmUVJoSGI4M2wyMTFaYXBHRVFtNm1QT2FLSGlPZmgxeUFTVHM3L29L?=
 =?utf-8?B?STMxTnNTaTU4dW5GUWtyYWc1aEpnOTkvcXZsYlhxSXViUDZuR3NyakJmUFFZ?=
 =?utf-8?B?aDBWekdNTHBEcGY2eWs1RkY5Y0w2UDQyTnN4TnUxa25MOVM5bllCQUFkVFRR?=
 =?utf-8?B?emc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	iyXW8jZc+AbDb9V5FTraVlUJTDM5tgvW8GWGOEVZ+vOgQ19DNudFNqisvHWn/suHIEarCSRuNtks7jl1aHZXz5dh+Vpp31gaFbraaN+SN57QLH7W/X23KdJxjQqajtFXRsNQ0QOXHhB0MQUQDssuc6bmAk+eykeuoWsGUT9kGRZc1dAysjq0PqmIlbR++Jare4N8jOE4fwS9c1FizSWgGHcVK7/jWei6TVDgwsw3phHF03h4Fr2NJbNN/LMfpjJHBmZ0RgjHVmtXxBUfHLwBQ4o/doz37w9z40wojhbYG1jsIj4LELBn+fGegyyiswizIPyuWTb6iNuMf2oxwph3cyqGfY+P9VvYdEQ+iYEnC5jCQ31NNTqbaqxgBHqWBv7JHa08vi18Jg1qT1T5NM2uNw+Pw2Pv+u3hcE5aIVDjU9UP9blkplM8yRY6VrpouUAaHIAN7E5tcF79ayoxc7LSRe+oVxLdveQL+gABnfPfOrBabz5/MnF08d9eYN89EyQTjibRKjPzXiRdUwd96qoYh9dhRYDFNQ47nWDpBT6JR3kSIGucgeX/hqCha3DWWxNROiaGtm3aRNwBl8lFhB+T/4hjtAqV5k14oEQ1mjIbikx6U0jUeSG0GFbSSpA8Yt9INZlVE1xjLV5S8snVy/BFwNnI6XQSCqdhNCxgylu+zuqpUj6Ys1Uew7S68Rjwu6R+DOOkMUt4fUFm6Cwf8L/7VHm81MaUcNCOPpyMLb/zyf7I3lw7ESegp0Ed/o3rcThTeeupec3ent57G/Dl/uumU9rBVN+fU7G09X0RNR0MOAZXIbAUFZ13rZfcXPZYPnxvyY38z8KF92jlJV5hniiKDY9AQcd+J+RUXCyMCDNotfk=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1ae69c35-7d0e-4f57-080e-08dbbf479f07
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 10:50:53.7075
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JyfOgAlLLs0fhZhyM0hIqgSvtGtB4NY8tMZn21+DYTn9VYcPf0XQ+u6C0aQ70gjj6AoxwcZqZDbUNO0Gd/0i2w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6769

On Wed, Sep 27, 2023 at 12:46:07PM +0200, Jan Beulich wrote:
> On 27.09.2023 12:42, Roger Pau Monné wrote:
> > On Wed, Sep 27, 2023 at 11:55:19AM +0200, Jan Beulich wrote:
> >> On 27.09.2023 10:51, Roger Pau Monné wrote:
> >>> On Wed, May 03, 2023 at 05:54:47PM +0200, Jan Beulich wrote:
> >>>> +{
> >>>> +    struct domain *d = v->domain;
> >>>> +
> >>>> +    if ( v != current )
> >>>> +        ASSERT(atomic_read(&v->pause_count) | atomic_read(&d->pause_count));
> >>>
> >>> Isn't this racy?
> >>
> >> It is, yes.
> >>
> >>>  What guarantees that the vcpu won't be kicked just
> >>> after the check has been performed?
> >>
> >> Nothing. This check isn't any better than assertions towards an ordinary
> >> spinlock being held. I assume you realize that we've got a number of such
> >> assertions elsewhere already.
> > 
> > Right, but different from spinlock assertions, the code here could be
> > made safe just by pausing the vCPU?
> 
> That's what the assertion is checking (see also the comment ahead of the
> function). It's just that the assertions cannot be made more strict, at
> least from all I can tell.

But the assertion might no longer be true by the time the code
afterwards is executed.  Why not wrap the code in a pair of
vcpu_{,un}pause() calls?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 11:02:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 11:02:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608893.947687 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlSIp-0007Ag-UP; Wed, 27 Sep 2023 11:01:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608893.947687; Wed, 27 Sep 2023 11:01:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlSIp-0007AZ-Pw; Wed, 27 Sep 2023 11:01:59 +0000
Received: by outflank-mailman (input) for mailman id 608893;
 Wed, 27 Sep 2023 11:01:58 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qlSIo-00079h-DH
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 11:01:58 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlSIn-0000Pp-5x; Wed, 27 Sep 2023 11:01:57 +0000
Received: from [15.248.2.159] (helo=[10.24.67.27])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlSIn-0006U7-01; Wed, 27 Sep 2023 11:01:57 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=2JEfC/ZPlO5SGkriVrZISKNIoClThAcqE5i+uy8OLhY=; b=2tA8GIkueSWOR2/9u4gVrsgpIS
	WhXlMDRiiune+5C76kc3GPLFaTPbR1PxtjTVkEA4JG4YjIBSKkIU8c4o2v1zj4QKEJawEFWjmp5NC
	K+FyHrc0eQqYbRRyRoEOtK5RgdABWaql23LgKnx+VgvO++v/8/exylRTHIE43t0rLpaw=;
Message-ID: <36d8f5ce-ef87-40cc-9515-12a2007bfa6d@xen.org>
Date: Wed, 27 Sep 2023 12:01:55 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Skip memory nodes if not enabled
Content-Language: en-GB
To: Michal Orzel <michal.orzel@amd.com>, Leo Yan <leo.yan@linaro.org>,
 xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230926053333.180811-1-leo.yan@linaro.org>
 <b0d2494a-8223-a101-5d10-f3803629f2f3@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <b0d2494a-8223-a101-5d10-f3803629f2f3@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Michal,

On 26/09/2023 09:36, Michal Orzel wrote:
> On 26/09/2023 07:33, Leo Yan wrote:
>>
>>
>> During the Linux kernel booting, an error is reported by the Xen
>> hypervisor:
>>
>>    (XEN) arch/arm/p2m.c:2202: d0v0: Failing to acquire the MFN 0x1a02dc
>>
>> The kernel attempts to use an invalid memory frame number, which can be
>> converted to: 0x1a02dc << PAGE_SHIFT, resulting in 0x1_a02d_c000.
>>
>> The invalid memory frame falls into a reserved memory node, which is
>> defined in the device tree as below:
>>
>>    reserved-memory {
>>            #address-cells = <0x02>;
>>            #size-cells = <0x02>;
>>            ranges;
>>
>>            ...
>>
>>            ethosn_reserved {
>>                    compatible = "shared-dma-pool";
>>                    reg = <0x01 0xa0000000 0x00 0x20000000>;
>>                    status = "disabled";
>>                    no-map;
>>            };
>>
>>            ...
>>    };
>>
>> Xen excludes all reserved memory regions from the frame management
>> through the dt_unreserved_regions() function. On the other hand, the
>> reserved memory nodes are passed to the Linux kernel. However, the Linux
>> kernel ignores the 'ethosn_reserved' node since its status is
>> "disabled". This leads to the Linux kernel to allocate pages from the
>> reserved memory range.
>>
>> As a result, when the kernel passes the data structure residing in the
>> frame 0x1_a02d_c000 in the Xen hypervisor, the hypervisor detects that
>> it misses to manage the frame and reports the error.
>>
>> Essentially, this issue is caused by the Xen hypervisor which misses to
>> handle the status for the memory nodes (for both the normal memory nodes
>> and the reserved memory nodes) and transfers them to the Linux kernel.
>>
>> This patch introduces a function memory_node_is_available(). If it
>> detects a memory node is not enabled, the hypervisor will not add the
>> memory region into the memory lists. In the end, this avoids to generate
>> the memory nodes from the memory lists sent to the kernel and the kernel
>> cannot use the disabled memory nodes any longer.
> 
> Interesting. So FWICS, we have 2 issues that have a common ground:
> 1) If the reserved memory node has a status "disabled", it implies that this region
> is no longer reserved and can be used which is not handled today by Xen and leads
> to the above mentioned problem.
> 
> 2) If the memory node has a status "disabled" it implies that it should not be used
> which is not the case in current Xen. This means that at the moment, Xen would try
> to use such a memory region which is incorrect.
> 
> I think the commit msg should be more generic and focus on these two issues.
> Summary:
> Xen does not handle the status property of memory nodes and ends up using them.
> Xen does not handle the status property of reserved memory nodes. If status is disabled
> it means the reserved region shall no longer be treated as reserved. Xen passes the reserved
> memory nodes untouched to dom0 fdt and creates a memory node to cover reserved regions.
> Disabled reserved memory nodes are ignored by the guest which leaves us with the exposed
> memory nodes. Guest can access such a region but it is excluded from the page management in Xen
> which results in Xen being unable to obtain the corresponding MFN.
> 
>>
>> Signed-off-by: Leo Yan <leo.yan@linaro.org>
>> ---
>>   xen/arch/arm/bootfdt.c | 16 ++++++++++++++++
>>   1 file changed, 16 insertions(+)
>>
>> diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
>> index 2673ad17a1..b46dde06a9 100644
>> --- a/xen/arch/arm/bootfdt.c
>> +++ b/xen/arch/arm/bootfdt.c
>> @@ -206,11 +206,27 @@ int __init device_tree_for_each_node(const void *fdt, int node,
>>       return 0;
>>   }
>>
>> +static bool __init memory_node_is_available(const void *fdt, unsigned long node)
> This function is not strictly related to memory node so it would be better to call it e.g. device_tree_node_is_available.

+1.

>> +{
>> +    const char *status = fdt_getprop(fdt, node, "status", NULL);
>> +
>> +    if (!status)
> white spaces between brackets and condition
> if ( !status )
> 
>> +        return true;
>> +
>> +    if (!strcmp(status, "ok") || !strcmp(status, "okay"))
> white spaces between brackets and condition
> if ( !strcmp(status, "ok") || !strcmp(status, "okay") )
> 
>> +        return true;
>> +
>> +    return false;
>> +}
>> +
>>   static int __init process_memory_node(const void *fdt, int node,
>>                                         const char *name, int depth,
>>                                         u32 address_cells, u32 size_cells,
>>                                         void *data)
>>   {
>> +    if (!memory_node_is_available(fdt, node))
>> +        return 0;
> I would move this check to device_tree_get_meminfo()

I am ok with that. But the commit message would need to gain a paragraph 
explaining that we will now support "status" for static memory/heap.

>> +
>>       return device_tree_get_meminfo(fdt, node, "reg", address_cells, size_cells,
>>                                      data, MEMBANK_DEFAULT);
>>   }
>> --
>> 2.39.2
>>
>>
> 
> Also, I think it would be nice to add ASSERT(bootinfo.mem.nr_banks); e.g. in boot_fdt_info().
> Otherwise the panic from Xen when there is no memory bank:
> The frametable cannot cover the physical region ...
> is not really meaningful for normal users.
> 
> This is just my suggestion (@Julien ?)

I think a check for the number of banks makes sense. But I would prefer 
if the check also happens in production. So, something like:

if ( !bootinfo.mem.nr_banks )
   panic(...);

We already have one in the setup_mm() for arm32. So we need another one 
for the arm64 version. The other solution is to consolidate it in one 
place you suggested.

I have a slightly preference for having it in setup_mm() even if this is 
duplicated.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 11:08:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 11:08:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608900.947696 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlSPD-0008Cs-O8; Wed, 27 Sep 2023 11:08:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608900.947696; Wed, 27 Sep 2023 11:08:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlSPD-0008Cl-JR; Wed, 27 Sep 2023 11:08:35 +0000
Received: by outflank-mailman (input) for mailman id 608900;
 Wed, 27 Sep 2023 11:08:34 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WUTS=FL=citrix.com=prvs=6275c33bf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlSPB-0008BM-Vw
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 11:08:34 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2f69b4eb-5d26-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 13:08:30 +0200 (CEST)
Received: from mail-co1nam11lp2171.outbound.protection.outlook.com (HELO
 NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.171])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 27 Sep 2023 07:08:26 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB7079.namprd03.prod.outlook.com (2603:10b6:a03:4e1::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Wed, 27 Sep
 2023 11:08:21 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Wed, 27 Sep 2023
 11:08:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2f69b4eb-5d26-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695812910;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=QD8teE9Vh7HY/QgJM6Plt1u2fYuVZ/GzUXLK5nc5C6M=;
  b=N8IvZTc0Pj2T+xELIspJ5ehZD7q8zyA96spKxrZ26lTwQL/+MBhunDcn
   ZKWmb5LeHMVV15AAf+v3SD68Kp89GFpqgjfPxTDpISp0f1YaLgK4y7MGu
   rMBGfrJlsZ7zAxDVDM7FL8m5szWjz4h6sJ4cYBR3c9LHaRqJxVIkoMFKT
   E=;
X-CSE-ConnectionGUID: NAuFwzPTTGS70CJij2vaUg==
X-CSE-MsgGUID: WtCXMLw7SyuHLc73kgxNWQ==
X-IronPort-RemoteIP: 104.47.56.171
X-IronPort-MID: 124363902
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:KP7JQaqVEp3sN8ShRkJUK3uwHsReBmL9ZBIvgKrLsJaIsI4StFCzt
 garIBnVPfzbYGr8LYwgPoiz80JSvZbVzoRjSgo9rHw9En4W8puZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5wePzSZNVfrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXABYkcz6cldqK/J2AFbFHpMUhdtfiAYxK7xmMzRmBZRonabbqZvyToPR/hXI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jearaYWMEjCJbZw9ckKwv
 GXJ8n6/GhgHHNee1SCE4jSngeqncSbTAdhOT+Pjp6Yw6LGV7lMPIy0zcUTkmuikqmq1BIlcJ
 FwyxRN7+MDe82TuFLERRSaQonSJoxodUNp4CPAh5UeGza+8yxaUAC0IQyBMbPQitdQqXno62
 1mRhdTrCDdz9rqPRhq19KqQrD60ETgYKykFfyBsZRAe/9DprYU3jxTOZtVuCqi4ipvyAz6Y6
 y+OhDgzgfMUl8Fj/7my+Fncqy6vopXPQR844kPcWWfN0+9iTIusZojt4l+C6/9Fdd+dVgPY4
 yFCnNWC5ucTC53LjDaKXOgGALCu4bCCLSHYhllsWZIm8lxB5kKeQGyZ2xkmTG8BDyrOUWWBj
 JP70e+J2KJuAQ==
IronPort-HdrOrdr: A9a23:mXwVjqqCuNgAXS8th73rWEsaV5oReYIsimQD101hICG9E/bo9P
 xG+c5x6faaslossR0b9uxoW5PhfZq/z/BICOAqVN/JMTUO01HIEGgN1/qE/xTQXwH46+5Bxe
 NBXsFFebvN5IFB/KPHCd+DYrIdKXK8gcKVuds=
X-Talos-CUID: 9a23:ucjW8mA49g9kD/T6Ew9O6WALCPgZTlLmky/7AU66U3hgdbLAHA==
X-Talos-MUID: =?us-ascii?q?9a23=3AWuQleg6IiKjl2l39r1eyhAUnxoxX/4+eLWQSzq4?=
 =?us-ascii?q?XpumgPnMrODiNqguOF9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,179,1694750400"; 
   d="scan'208";a="124363902"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=inCnb4Gr2TNvH0rL6Uz571/l8+dStlzuUYvjregxJwOTsX2WhWCfFsOHJzr4pJBwN9P2S4trx03NNTzn2AjX7V/NukWLyOENMj1fKaLOmQCraW5IfUSVguyKWa4bsffPVGCc3Hb8tAqCuZn0My8kdfnAGH9/XdenetY4NupZoboGlavwHELpOdzE3aM3j1IaVcWazYOR7uWw4X9T0qCVo1I1lAGJnqBLgRerVlKEVk4rzPjzhM37LlO6s3Cr72/7gIg2z7uFY31bYL2+fnHLOIwjafQJmMx/qAE3Ti0/uUiyeydx1v1wL4qZMbwI5cTVOSunC1vZffww4tqUvnu7HA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=j+ZR/0E4qwmZNPPg8n8gf8LwEnSkB4rEcp2LSW9abDg=;
 b=TshSEMQ9cgHOHgfI32suyJovjVao3a10ep5WdeT2NW7Zmy44z9oAERpVW3Ad0D/ovGad6fG2I7YJd4vQu3I5438Knpb88R+BPSmZ+3JQgiAX1H3aP7P7cVGUzdRj7Lnq10QhP9gJx+Pj2z2OD3VzVto+9eDEYdQVrICilfchCiXePb9Jvn+lcFBVLZMKYWkPva5nhe8ubRtZKWUR5u0g9yZx0YQjirRCGkqaRHFHAoI0tINNRlO4TjNSP534y7HL8HOrzciW0eX1+roWZrtxUWCmCjU9TaUuO9XvcfRCla6APDmuadqvBn4s6DMAesMwWZYXcMWnZqOcuUQjZH4yxA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=j+ZR/0E4qwmZNPPg8n8gf8LwEnSkB4rEcp2LSW9abDg=;
 b=E2uN4JrSiAk2KrCROO9CqufXWAzVJQ1cWkegOu3kDeApOPy8qvvKXFJ6iEXOKxkD0Pzhbt6QuW/7xgDfwvcMK2wysMrjAGaTXf4+BRCBmnlm0L0SlOTYHt04rHXAvSnaiv3nJrX4jrMwSHhpmwVccgoECgIcOHQd+xhhyt5G3Vk=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 27 Sep 2023 13:08:15 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Tamas K Lengyel <tamas@tklengyel.com>
Subject: Re: [PATCH v3 4/8] x86/mem-sharing: copy GADDR based shared guest
 areas
Message-ID: <ZRQNHyggOFD1FuMD@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <a79d2a8b-6d6e-bd31-b079-a30b555e5fd0@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <a79d2a8b-6d6e-bd31-b079-a30b555e5fd0@suse.com>
X-ClientProxiedBy: LO4P123CA0524.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:2c5::9) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB7079:EE_
X-MS-Office365-Filtering-Correlation-Id: ac47cc56-d0e0-471a-cfe9-08dbbf4a0f88
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hUiyfrnAlkAT/yehtVX1wQ2FONGJy6HtVIa9lj9QWIzDwYEO9GTba+yylZrqHdNXcuBiOb1rBQN+4XWR2B0bK3SPzZRXenUg8CLBBgXGbOInEFuWL2ytMy+mI2AKjYBX93iGXkbRdAeUdrvmLtmo/HXbJunOLvFE1zSfaCtr2QTTPyeojPMY88Al7i9EIkcTfoETSYwohjO0Ky1r+fsD6ZKt3LWV7O4ehQqQPVjRWAWxuEoQp8pAJXZurJ+oFMCaIToYmzPLDzMVmULAD4jCHQJ6j9lN/mqCPt/X937xH88LfdouRmjjRM53PQotdwLN5Kac/Ilf/RgLDOZ/6uvtX0dm7Yhihxa70Hn5ed277jeQCli7Bnpf54A7ACZM9GxupilsETXRE0ZAXUUFOdWSIyPWLWDCp/wpP67dTyBNvd+bYdn2vbXkIOG8UU6of5J5cyOXy9JE7QmhicMhcqGZ5I6NREXrSJmkM9wrsUGwsrdiekb2Ss96zcqbhITHu2s1xYYxh1uIOMdZLLvFbcy92aRtMZM2Ner3zJMW9Ce9Bh4127iETEVvfPoVBaYa26aJ
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(376002)(366004)(136003)(39860400002)(346002)(396003)(230922051799003)(451199024)(186009)(1800799009)(83380400001)(85182001)(82960400001)(26005)(86362001)(6666004)(6916009)(6506007)(6486002)(316002)(41300700001)(478600001)(6512007)(9686003)(54906003)(66946007)(66556008)(66476007)(8676002)(4326008)(38100700002)(8936002)(33716001)(2906002)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WVF0Lzl6bHRJeERHdmVCOVNjam9Od0dUeUdkM2NLSkRJZzdGVGoxR3RFV2FG?=
 =?utf-8?B?SjExd1lvTzV0T0dCaEtRbnNxREhUaFVWWXpZV29hd1d2RngycnplY2JNMGFX?=
 =?utf-8?B?YkUrNjBZVzdRVlYxOTJGOEZiSTh4cTZVOUJwaTdnRnhHeHl3TU84QUJrTEZE?=
 =?utf-8?B?SDFSaVpnZk1xUFJZRmJYbG40RSsxeUlRSFY2VE13MktGY0dzL2E5UHBqOU5U?=
 =?utf-8?B?R3hYV25GS1JFQ2FYU20zMUh3WUZLaXYybGwzNHlLZUFVMTdBTUowTGgra2VY?=
 =?utf-8?B?SHZrSzU4WWlQWGE2MUw1Nk9BL3JWdmVFVUdvSmo0SURUcVpkZzRQSnd5VkpW?=
 =?utf-8?B?VVU1Rlg0RWxUNXhuYXRIbllYT0VKU0dkaGhra3hRV1YrSzNGUDdiTUFPWGYz?=
 =?utf-8?B?bjZwMXVlbkxGY2dXUmp3S09NU1dnWmQxRkZ6ekhBaFFNMGxkVUlDeVJ6b0hi?=
 =?utf-8?B?cTBIT3YrNlJKcFJyeWF5VTJTbFM0YlNuRlNWV1gzZnhEZWFYWlpPdjRmNXZm?=
 =?utf-8?B?Z3BSNnd0TWhqTnYvMTBEbnpyS3BocVhDbFFuTlpQRE1VVVN3VFZPWkZPRkdq?=
 =?utf-8?B?cVIwdVB5NUpzNDdYQU0rMWVMZ3daQlFuSGo3SVZ6YjI4RFFmcFZ0eC9Bb1N5?=
 =?utf-8?B?MFg4RFBDbUNQQlhCN0VOSmNRVkpzRkJOYmhMVkUyKzNrQURHSGRzTUV3SU9B?=
 =?utf-8?B?WWRYQ09JZDVGdWJaRldsUWlqWVNPRlJzRnAxemFsZkZobGVBSDI5c1pHT0sy?=
 =?utf-8?B?SFNlZTZSakhJNXZ4RXVuZHZ1RGNMbXhPZFlPTjdDekg5NUI1OGQzOGIwR1E5?=
 =?utf-8?B?dTczM3hKWDIzUTY3N2xoc21uOHlJd2dXVGFJYlFYT3JBZkk5M3ZuYVQ1Q05N?=
 =?utf-8?B?T3hCQXBFT2lzU0svV3JhSFcyTkZtK2xSMkpBSU91Yy9SdW1XY0V3bFROK0tz?=
 =?utf-8?B?b256SHZRbjdKTG8xTWh2VExpeVdwYXNNTGlGTTJjREZWc01NQlNEZ1RxTDhJ?=
 =?utf-8?B?K01pNUsySm9FUU00MWYvNHlzdkx6azZQQTNaUHhxdXNCWGRoTk9mWW5JaG5l?=
 =?utf-8?B?MmRMWW50aFNWenl2WGMzVHkramNiZ2RtdnkwYWo4T0xTMlVkUXJTenBuUTJ0?=
 =?utf-8?B?L0hLbHptMWpOZTFlOHZ3bGxRY1A5TXZwWXBHQk5ldVpqWjR2RXFxRTJldmRa?=
 =?utf-8?B?Nk16bnR2d3d5Q1hVSHB1Snh5dCtpWjVmMzJXOWNBaGhTQWpNRXZOQm1LeHNE?=
 =?utf-8?B?SVJGeXZ4a2FtOXg3MUNUZmxxYUZBeFMzWnNiNCtSc09FTmxsNVU0NWMyb2M2?=
 =?utf-8?B?anhPU1JTSjlwYktLa1JTK1gzMTFmQ01DTzlhSjk3cHh0Yi9IaVVxOUFDV3J3?=
 =?utf-8?B?eHRFZXV6UUdBT2U0c3NxcFRJeHBUQ01vRE1sWUwvUUFhU1NXRVlLaVo0dE1B?=
 =?utf-8?B?bk45NVE3d01UV2FDcUFHWTBLNDNuckxHMU93bDYwMU9CSk5lZzlCNGJCVVIy?=
 =?utf-8?B?YmhnV0Uva2JwSmZTaWJ3Skt4QWI4S1hrdXRMTXRxZWhoeXUrbDBOaGFrcmN3?=
 =?utf-8?B?UXZsNWxuSGNOSmliYlVxeTZoZEZSdUtkTDFqUFZ5UnF4TnhYWloxSTBtSnN5?=
 =?utf-8?B?bUtHVmI0RThaNGJUQ0JQWWxnak1RUFBoOXJRSVpMMS9hT3lFRVpPOWlJbExr?=
 =?utf-8?B?WjQwZ0s2aEVGSmprZk9lQXBjaytoTlRBNmQ4dzRHMXRYOU01VkFmbXIwbWYw?=
 =?utf-8?B?a1MzTlhTTUtNN0NLZng0eUllazZJYnJaSzdhRHRTTzRkTEc1THJJZGV1TUFq?=
 =?utf-8?B?SlVOcldVS29CSWsvWUcxMFpqTDZtMEFSVGxrUGRwKy9Ed2VmandXSXQwNXU5?=
 =?utf-8?B?NGpaM1JYb3RLVEwwM1VvRHFtNDZ5NGVxUWZiQUVXK25SVnpnVDdBRWNvTTdw?=
 =?utf-8?B?V3A2UWt4VGdKdVNFdTVWbFFodWN1OW91VEpkNW9BbHZyUCt1ZGFadmE2RWxT?=
 =?utf-8?B?STZZSU9lRHlVamlObHVvOEpidm5TQkg0bUY1Uzl0aGxuYmZ3REZGdjhPRWZj?=
 =?utf-8?B?b1Z2S0czdjhpN0lCZEp6eEYzbkJBZWNVVGo2MFBncVIvTU9jUUw4QnVqVGYz?=
 =?utf-8?B?TGViTmNKbG0vUFZGRkNMeWhzSjFPaEIvYjhuNDJDVmN1UllsWFhOY0ZIOFEx?=
 =?utf-8?B?elE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	xF+zT2MDvLH7PG+wRZoIld+Mh56C8TB+xV6tlDSBEkjlJPSY8zDEUagBQjjttWVQ6yaW5CzQfkvOOpfrV5Q05CLf8v9OY7Kig0CJ15fTLH5/a1LpbnDzqLOHKHtfRfvGD8mpEn/gB0ye4BuvEMFrEZE2p1JY0yHYrhZLC5PW2v6ge4ZwIfwFgVFjrxPDAA49Xep2KmjTs2uvqie1YXwBZJTW7abnYn7auy1J1BDhzYBBZqfBFC0KZhpcorS7qA+KOTwF4w0CMGXnj+iCYjEA7kpFvPASvSOiuSAvpj+FmSoaAKyipWQPCNvCyuz26yvxAvbXMHPIpmaXmWO14645DaKgCvNMbHF2PFHMZ1JEQcuyy9+mGQV9Okui5nVCm8IoVlLlBXcE4LSmfYvidVGoXSpLVc906F4nzl2QjckwfyWmNzz7yGHidt3j/9Sb8UjtfZJMx6+itgi5O4XZ7Ih8XGjLYnkrnQMEHixzrs9YZ5jn9tnhkxTY3DfxYjbM1Hr7tkRn2Mc5HCxzACWR/milnc+MYVbeRlQD6elQWgW7TbArcMxSGhbyfp0DPoWRVTFOWkxUCaQCIv4ntzL+tKTE6a3rpvR02ITih7cdWd0I0DeoBgGvVoZ4HhQslj+Qej+fazVGI5dMQJid04xgK0dBFEOw6/PgrYJwy3JV05HodkU2UG3mQ77RSoL6pev2yEx4oyDwb9MDY8XIY+PVwodP6iuXWadVXsj1GTBbW1ubOgAu/XDOl/By8xoXhCx4E2nZZ/ertYWBMjX+wvmRHeXJm7D2pTdFYbTCq/dJTy/GUbjHEIXPiezoc7n85p7ZUwTbiIUyZ6BevvqnecxEhHhBLFaQcuw063myu8TM3atV+o2qAmx+CwaVtWGTGtdKQ7LPCvvcyDYA7oksZDkD0YSV/g==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ac47cc56-d0e0-471a-cfe9-08dbbf4a0f88
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 11:08:21.4653
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: lO78nLJKEP++2+ulYbBYnqtJT9GkZuSy9FF9nBm0qSbz5y7dvWVpTS/dVBcK8YPvQYXn7pFF3MPs7Zrvd+4UFw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB7079

On Wed, May 03, 2023 at 05:56:46PM +0200, Jan Beulich wrote:
> In preparation of the introduction of new vCPU operations allowing to
> register the respective areas (one of the two is x86-specific) by
> guest-physical address, add the necessary fork handling (with the
> backing function yet to be filled in).
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Given the very limited and specific usage of the current Xen forking
code, do we really need to bother about copying such areas?

IOW: I doubt that not updating the runstate/time areas will make any
difference to the forking code ATM.

> ---
> v3: Extend comment.
> 
> --- a/xen/arch/x86/mm/mem_sharing.c
> +++ b/xen/arch/x86/mm/mem_sharing.c
> @@ -1641,6 +1641,68 @@ static void copy_vcpu_nonreg_state(struc
>      hvm_set_nonreg_state(cd_vcpu, &nrs);
>  }
>  
> +static int copy_guest_area(struct guest_area *cd_area,
> +                           const struct guest_area *d_area,
> +                           struct vcpu *cd_vcpu,
> +                           const struct domain *d)
> +{
> +    mfn_t d_mfn, cd_mfn;
> +
> +    if ( !d_area->pg )
> +        return 0;
> +
> +    d_mfn = page_to_mfn(d_area->pg);
> +
> +    /* Allocate & map a page for the area if it hasn't been already. */
> +    if ( !cd_area->pg )
> +    {
> +        gfn_t gfn = mfn_to_gfn(d, d_mfn);
> +        struct p2m_domain *p2m = p2m_get_hostp2m(cd_vcpu->domain);
> +        p2m_type_t p2mt;
> +        p2m_access_t p2ma;
> +        unsigned int offset;
> +        int ret;
> +
> +        cd_mfn = p2m->get_entry(p2m, gfn, &p2mt, &p2ma, 0, NULL, NULL);
> +        if ( mfn_eq(cd_mfn, INVALID_MFN) )
> +        {
> +            struct page_info *pg = alloc_domheap_page(cd_vcpu->domain, 0);
> +
> +            if ( !pg )
> +                return -ENOMEM;
> +
> +            cd_mfn = page_to_mfn(pg);
> +            set_gpfn_from_mfn(mfn_x(cd_mfn), gfn_x(gfn));
> +
> +            ret = p2m->set_entry(p2m, gfn, cd_mfn, PAGE_ORDER_4K, p2m_ram_rw,
> +                                 p2m->default_access, -1);
> +            if ( ret )
> +                return ret;
> +        }
> +        else if ( p2mt != p2m_ram_rw )
> +            return -EBUSY;

Shouldn't the populate of the underlying gfn in the fork case
be done by map_guest_area itself?

What if a forked guest attempts to register a new runstate/time info
against an address not yet populated?

> +        /*
> +         * Map the into the guest. For simplicity specify the entire range up
> +         * to the end of the page: All the function uses it for is to check
> +         * that the range doesn't cross page boundaries. Having the area mapped
> +         * in the original domain implies that it fits there and therefore will
> +         * also fit in the clone.
> +         */
> +        offset = PAGE_OFFSET(d_area->map);
> +        ret = map_guest_area(cd_vcpu, gfn_to_gaddr(gfn) + offset,
> +                             PAGE_SIZE - offset, cd_area, NULL);
> +        if ( ret )
> +            return ret;
> +    }
> +    else
> +        cd_mfn = page_to_mfn(cd_area->pg);
> +
> +    copy_domain_page(cd_mfn, d_mfn);
> +
> +    return 0;
> +}
> +
>  static int copy_vpmu(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
>  {
>      struct vpmu_struct *d_vpmu = vcpu_vpmu(d_vcpu);
> @@ -1733,6 +1795,16 @@ static int copy_vcpu_settings(struct dom
>              copy_domain_page(new_vcpu_info_mfn, vcpu_info_mfn);
>          }
>  
> +        /* Same for the (physically registered) runstate and time info areas. */
> +        ret = copy_guest_area(&cd_vcpu->runstate_guest_area,
> +                              &d_vcpu->runstate_guest_area, cd_vcpu, d);
> +        if ( ret )
> +            return ret;
> +        ret = copy_guest_area(&cd_vcpu->arch.time_guest_area,
> +                              &d_vcpu->arch.time_guest_area, cd_vcpu, d);
> +        if ( ret )
> +            return ret;
> +
>          ret = copy_vpmu(d_vcpu, cd_vcpu);
>          if ( ret )
>              return ret;
> @@ -1974,7 +2046,10 @@ int mem_sharing_fork_reset(struct domain
>  
>   state:
>      if ( reset_state )
> +    {
>          rc = copy_settings(d, pd);
> +        /* TBD: What to do here with -ERESTART? */
> +    }
>  
>      domain_unpause(d);
>  
> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -1572,6 +1572,13 @@ void unmap_vcpu_info(struct vcpu *v)
>      put_page_and_type(mfn_to_page(mfn));
>  }
>  
> +int map_guest_area(struct vcpu *v, paddr_t gaddr, unsigned int size,
> +                   struct guest_area *area,
> +                   void (*populate)(void *dst, struct vcpu *v))

Oh, the prototype for this is added in patch 1, almost missed it.

Why not also add this dummy implementation in patch 1 then?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 11:09:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 11:09:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608904.947706 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlSPx-0000Ho-0D; Wed, 27 Sep 2023 11:09:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608904.947706; Wed, 27 Sep 2023 11:09:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlSPw-0000Hh-TG; Wed, 27 Sep 2023 11:09:20 +0000
Received: by outflank-mailman (input) for mailman id 608904;
 Wed, 27 Sep 2023 11:09:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Xec+=FL=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qlSPv-000051-ES
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 11:09:19 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on060c.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::60c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4c69efd0-5d26-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 13:09:18 +0200 (CEST)
Received: from DUZPR01CA0016.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:46b::9) by AS2PR08MB9973.eurprd08.prod.outlook.com
 (2603:10a6:20b:641::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 11:09:14 +0000
Received: from DBAEUR03FT019.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:46b:cafe::ac) by DUZPR01CA0016.outlook.office365.com
 (2603:10a6:10:46b::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend
 Transport; Wed, 27 Sep 2023 11:09:14 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT019.mail.protection.outlook.com (100.127.142.129) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Wed, 27 Sep 2023 11:09:14 +0000
Received: ("Tessian outbound 169aaa6bf2b7:v175");
 Wed, 27 Sep 2023 11:09:14 +0000
Received: from 2ea9abc1efe2.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 422D3FBB-B71D-47B6-9A50-C122DEEB32BE.1; 
 Wed, 27 Sep 2023 11:08:25 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2ea9abc1efe2.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 27 Sep 2023 11:08:25 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by GV1PR08MB8283.eurprd08.prod.outlook.com (2603:10a6:150:a4::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Wed, 27 Sep
 2023 11:08:19 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404%4]) with mapi id 15.20.6813.027; Wed, 27 Sep 2023
 11:08:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4c69efd0-5d26-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Qo82qcgFDD0QuxFm2go0rK0O3yo7G49KduV5dYacupE=;
 b=cycRwxNkSqNmT1IKHkMgzBhkgI3KBIO128fIz19m6NyLnbkvmltaI3cf56TP3TCA4DWXTi8sAuFTAldj9okL+bvxjbj2qS5cgfGMTQqGjhJaNVJ/7IkNodmIra4n4MIyRhAeY1k+aIW1r2E2Ax3tvsBXNKyvIvS4W5D1GReltRY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: d6e13fe187c69d8f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=TVGjtV2UrqE3VGWa0WNippoGP3U2YuxIQZQv5rfvjdTFHZ4DPyG2PiKgqQhCpznkWH6Gq+Nk2PhHthH7eeL9/yY7NsQ8QDOqK2cKINWH46oiNegY64/3oqOdcofSANMcjvALRIDEfK8UCjspNGEK3reN4f9a7TR5Ln/xmru+ziUwi+4kPVskuwyztxn5AKnoLDV5nNed2FlbIOtVCHVHv0WjwYDWXGwaGtAIgVWygrt4TVqE5tV55kc5H+VbKkG6TEyv3VXh6IaG66295X6G0C1z0+KxA4vaIPGhr1/Enose8M62y9hB6uCu2NX6dShqqAJ0XT0Q5FoZVTcLFnUmzA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Qo82qcgFDD0QuxFm2go0rK0O3yo7G49KduV5dYacupE=;
 b=A9D8ZvPgC4xLzAqdp4I2p/1DVCYlI1iEDMMktN4pof28MDGjxj7//guNZQ8Vanl6dzRr2Bc6DsQDKTKBvPVQFKW1LDfw8R2TUf2nBz4o6ab/fEhK9YQLgPVyxmNkcxC2cZuF4wKKR7AvBqf4kONF4Gam6GN7u//nDWb3/8b31oEzSbXoreL6iglNtzUpDa5mVZXIN0CMCiD9aKLi4XgrO4FwsUH0ZYGGlKvS+7LTs799n5f1IzJANuhnxaxreMxA2Y7ErWDppVfL2Z+S0k0zO6z4vcp/Fk6KAJx8mAzO9bYw+91iuONQ18fTvRRG3LfjBQ53qHtAwpdBKyaQ7etD+Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Qo82qcgFDD0QuxFm2go0rK0O3yo7G49KduV5dYacupE=;
 b=cycRwxNkSqNmT1IKHkMgzBhkgI3KBIO128fIz19m6NyLnbkvmltaI3cf56TP3TCA4DWXTi8sAuFTAldj9okL+bvxjbj2qS5cgfGMTQqGjhJaNVJ/7IkNodmIra4n4MIyRhAeY1k+aIW1r2E2Ax3tvsBXNKyvIvS4W5D1GReltRY=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
CC: Jan Beulich <jbeulich@suse.com>, Nicola Vetrini
	<nicola.vetrini@bugseng.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Xen-devel <xen-devel@lists.xenproject.org>, "andrew.cooper3@citrix.com"
	<andrew.cooper3@citrix.com>, "roger.pau@citrix.com" <roger.pau@citrix.com>,
	"george.dunlap@citrix.com" <george.dunlap@citrix.com>,
	"roberto.bagnara@bugseng.com" <roberto.bagnara@bugseng.com>, "julien@xen.org"
	<julien@xen.org>, Stefano Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] docs/misra: add rule 2.1 exceptions
Thread-Topic: [PATCH v3] docs/misra: add rule 2.1 exceptions
Thread-Index: AQHZ8RfN02/rDlrXwEmUei6wT31DmLAuUyoAgAACh4CAAANEAIAAKqUA
Date: Wed, 27 Sep 2023 11:08:19 +0000
Message-ID: <0DE75F8A-5D10-4E2F-B37C-74C758E0DAFE@arm.com>
References: <20230908230318.1719290-1-sstabellini@kernel.org>
 <91d5ea6d-bdfa-45bf-a54b-5acdf1784ec4@xen.org>
 <alpine.DEB.2.22.394.2309111740160.1847660@ubuntu-linux-20-04-desktop>
 <156fac1ee8e37cddac95813f72a108e0@bugseng.com>
 <BEAF1369-C1FE-4B81-A0A1-5A4F39426E9E@arm.com>
 <3002e10a-29d9-45f0-c3c2-ef79ec775934@suse.com>
 <971283B6-65BB-4D5F-BB04-E1C8A2AC0826@arm.com>
In-Reply-To: <971283B6-65BB-4D5F-BB04-E1C8A2AC0826@arm.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|GV1PR08MB8283:EE_|DBAEUR03FT019:EE_|AS2PR08MB9973:EE_
X-MS-Office365-Filtering-Correlation-Id: 0459e13f-97e4-4396-4d7b-08dbbf4a2f2a
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 7N6RribvYf1e9SzLbi8Lj67Dl9X2SSsXuQ58FXYpSpx8r4Jga4y4MrvjmffamhxXcp0lB8q/Bw5nWOPo9JuyBJdLfNNbvxI2TcO2WUq83cC6fICcuq+7tTfUyAvMMrMwGSFtkMVZjiWnjVv8FpYhjB4SpNNnAcXAHsARVTjiAKznJwILyzJnYy7BqkyUni9ep3Bb21UXKegVE8ag4iUz8n9mt4x3OhJ11K37++0eKx+AJIpH8H1NyHV3ceivrty7oR7uFwaDO70sQtenwI40fGPS01nIk/VGCrB9BykZSfSkgxyx8lLANG2IoBqoynkAXINyOrrRwZ0zHIiImUNF5jcfVo/6AKAPawryHGneFTlD8jgrm+wHUsW+3a3lArFla/AhDLklrzTX1qoNR6KnLUZBY6X3rAxttejpryk4DvCkl5AOaDGm0zwR0jV2BRDUnfmhAB3ybi3aeSGxCFp1CeHg0A+X+XTUdgCkMuF67ieZ5Jg5KePr51LOfjkQoGFA8qW+jvwdStC1uNG33tIoJhLz0XGIXGCAPPYxA9xQ4Ijam7QALGL9BtaRNVSCsbaAul7dO0rLZGaVe52wwafc82kGeOd3AbgJLxukhBc/Kg60KNhEdQfkIn1XOwNzSTM/MEqxrjKOtIX6KVn1BP8HOA==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(376002)(39860400002)(366004)(346002)(230922051799003)(186009)(1800799009)(451199024)(122000001)(6512007)(6486002)(6506007)(53546011)(26005)(71200400001)(2616005)(6636002)(41300700001)(91956017)(37006003)(66446008)(316002)(64756008)(66476007)(54906003)(76116006)(66556008)(66946007)(2906002)(6862004)(7416002)(33656002)(8936002)(8676002)(38100700002)(86362001)(4326008)(5660300002)(38070700005)(36756003)(478600001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <C6B15D071EAD9744A663710484E9A5C2@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8283
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT019.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	43f8ea57-d800-4844-5834-08dbbf4a0e88
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	4BrHkIo6q3JsBuBUGOfQwVjKouuWoRZ7ruxzd7EKahquGa63OUKsz2R/b4dqYSoNTdn7tdA76slMnqmUASW/k3VSr/BiuGq8WqIITZ6gnqKB/WntG33K+bOXLISyGt76DrhxAv0effXtqGp7kxJqepjXB3samfzSObcrhVWB6RQ8dyCRM7j4LjVulQ2Fn4IylHFHcaWON7vnyoQnNc3Eiba+JOVesdJN73XbQcdArDrLvI33+yHmbWmYeMv/PqIUys+TdsOr3gfu8iVKDLwi2M0bDcUYOhG9/htIDDeqsH1R7TXN6y4gwOXa4jzHN5rX1pg/3+wZT+BdU5FYz+hVoQMxxs1v+KqRTIrJ7CE3MQad+6KoaYdlTvLvQi+6JZ3ds6lu3L6/ihMvwZnxCObYwSO5jdFCEze6ongEz52Fl4iqH3K/g1fv0hGmCFBLtMj2MsWSuf2ccu7Ot2LTOYlst3m13n+eAbvRL4z+VFPMqrIhYeU04jGs4+Yoc+xOoJyiDYNh4MMgxt3BWN5SMqo6rh8rfmjaqE43rEIvKOCGFah7g/m+sUzaeC5WnPYVv4B9SQFuvPRBoZI1UUiATNKZR5L2TA5XzEhaVX4jJq0sqNzFqbnuH0yhSleLm4rGHKuTcbDzQBoarV6Fb4yvFEBoqOkX+hbBl2lP4CXd3KC2aBCJrEDfIcsgd0m6YZOQ48dijuIceP6gpWwfg9MLu2OZKNJaW8WkTpATjKhvN62ym/QeftF1uNchdAEiYXp/L+OA
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(376002)(396003)(136003)(39860400002)(230922051799003)(186009)(82310400011)(1800799009)(451199024)(40470700004)(36840700001)(46966006)(2906002)(40460700003)(86362001)(478600001)(33656002)(5660300002)(6512007)(6506007)(36756003)(53546011)(81166007)(6486002)(82740400003)(356005)(47076005)(40480700001)(6862004)(4326008)(8936002)(2616005)(41300700001)(8676002)(26005)(336012)(70206006)(54906003)(70586007)(37006003)(36860700001)(316002)(6636002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 11:09:14.2375
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0459e13f-97e4-4396-4d7b-08dbbf4a2f2a
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT019.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9973

DQoNCj4gT24gMjcgU2VwIDIwMjMsIGF0IDA5OjM1LCBCZXJ0cmFuZCBNYXJxdWlzIDxCZXJ0cmFu
ZC5NYXJxdWlzQGFybS5jb20+IHdyb3RlOg0KPiANCj4gSGkgSmFuLA0KPiANCj4+IE9uIDI3IFNl
cCAyMDIzLCBhdCAxMDoyMywgSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPiB3cm90ZToN
Cj4+IA0KPj4gT24gMjcuMDkuMjAyMyAxMDoxNCwgQmVydHJhbmQgTWFycXVpcyB3cm90ZToNCj4+
Pj4gT24gMjcgU2VwIDIwMjMsIGF0IDA5OjUzLCBOaWNvbGEgVmV0cmluaSA8bmljb2xhLnZldHJp
bmlAYnVnc2VuZy5jb20+IHdyb3RlOg0KPj4+PiBNeSBvcGluaW9uIGlzIHRoYXQgaXQncyBmYXIg
ZWFzaWVyIGZvciB0aGlzIHRvIGJlIGFuIGVjbGFpciBjb25maWd1cmF0aW9uICh3aGljaCBoYXMg
dGhlDQo+Pj4+IGFkdmFudGFnZSBub3QgdG8gZGVwZW5kIG9uIHRoZSBleGFjdCBkZWZpbml0aW9u
IG9mIHVucmVhY2hhYmxlKSBhbmQgdGhlbiBwZXJoYXBzIGEgY29tbWVudA0KPj4+PiBhYm92ZSBp
dCBleHBsYWluaW5nIHRoZSBzaXR1YXRpb24uDQo+Pj4gDQo+Pj4gSSBhZ3JlZSBoZXJlIGFuZCBp
dCBpcyBlYXNpZXIgdG8gbWFrZSBhbiBvdmVyYWxsIGV4Y2VwdGlvbiB3aGVyZSB3ZSBsaXN0IHRo
ZSBjYXNlcw0KPj4+IHdoZXJlIHRoaXMgaXMgYWNjZXB0YWJsZSAoaWUgYWxsIGZsYXZvcnMgb2Yg
dW5yZWFjaGVhYmxlKSBhbmQgZG9jdW1lbnQgdGhhdCBlY2xhaXINCj4+PiB3YXMgY29uZmlndXJl
ZCB1c2luZyAieHh4eCIgdG8gaGFuZGxlIHRoaXMuDQo+PiANCj4+IFdoYXQgYWJvdXQgY3BwY2hl
Y2sgdGhlbiwgZm9yIGV4YW1wbGU/DQo+IA0KPiBHb29kIHBvaW50IHdlIHNob3VsZCBjaGVjayBp
ZiBjcHBjaGVjayBvciBjb3Zlcml0eSBjYW4gZG8gc3VjaCB0aGluZ3MuDQo+IEBMdWNhOiBhbnkg
aWRlYSA/DQoNClNvLCBmb3IgY3BwY2hlY2sgSSBkb27igJl0IHRoaW5rIHdlIGhhdmUgc3VjaCBn
cmFudWxhcml0eSwgdGhlIG9ubHkgdGhpbmcgd2UgY2FuIGRvIGFyZSBzdXBwcmVzcyBhbGwgdmlv
bGF0aW9ucw0KZm9yIGEgZmlsZSwgc3VwcHJlc3Mgc29tZSB2aW9sYXRpb25zIGZvciBhIGZpbGUg
b3Igc3VwcHJlc3MgZ2xvYmFsbHkgYWxsIHZpb2xhdGlvbnMgcmVnYXJkaW5nIGNlcnRhaW4gcnVs
ZXMuDQoNCkZvciBjb3Zlcml0eSwgSeKAmXZlIGZvdW5kIHRoZSB3YXkgdG8gcmVtb3ZlIGZpbGVz
ICh0cmFuc2xhdGlvbiB1bml0cykgZnJvbSB0aGUgcmVwb3J0LCBidXQgSSBkaWRu4oCZdCBmaW5k
IGFueXRoaW5nDQphYm91dCBob3cgdG8gc3BlY2lmeSBzb21lIHBhdHRlcm5zIHRvIGJlIGV4Y2x1
ZGVkLiBGb3Igbm93IEkgY2FuIG9ubHkgZXhjbHVkZSBlbnRpcmUgZmlsZXMgb3IgSSBjYW4gZXhj
bHVkZQ0KcnVsZXMgZ2xvYmFsbHkuDQpJIHdpbGwgdHJ5IHRvIGdldCBzb21lIHN1cHBvcnQgZnJv
bSBTeW5vcHN5cyB0byBzZWUgaWYgdGhlcmUgaXMgYW55IHdheSB0byBzcGVjaWZ5IHNvbWUgZXhj
bHVzaW9uIHBhdHRlcm4gZm9yDQpzcGVjaWZpYyBydWxlcy4NCg0KQW55d2F5IEnigJl2ZSBydW4g
Q292ZXJpdHkgYW5kIGZvciB0aGUgMi4xIGl0IGlzIGZpbmRpbmcgMTQgdmlvbGF0aW9ucyBidXQg
bm9uZSBvZiB0aGVtIGFyZSBhYm91dCBfX2J1aWx0aW5fdW5yZWFjaGFibGUoKS4NCg0KSeKAmXZl
IGFsc28gcnVuIENwcGNoZWNrIGFuZCBpdCBpcyBub3QgY29tcGxhaW5pbmcsIG5vdCB0aGF0IEkg
d2FzIGxvb2tpbmcgZm9yIGl0IHRvIGJlIGEgYmVuY2htYXJrIGluIGFueSBjYXNlIQ0KDQpTbyBJ
IGd1ZXNzIEVjbGFpciBpcyBtb3JlIHN0cmljdCBvbiB0aGUgY2hlY2tzIGFuZCBuZWVkcyB0byBo
YXZlIGEgcHJvcGVyIGNvbmZpZ3VyYXRpb24gdGhhdCBjYW7igJl0IGJlIGdlbmVyYWxpc2VkDQpm
b3IgYWxsIHRoZSB0b29scy4NCg0KQ2hlZXJzLA0KTHVjYQ0KDQoNCg==


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 11:44:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 11:44:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608913.947716 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlSxe-0002bO-Mu; Wed, 27 Sep 2023 11:44:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608913.947716; Wed, 27 Sep 2023 11:44:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlSxe-0002bH-Jw; Wed, 27 Sep 2023 11:44:10 +0000
Received: by outflank-mailman (input) for mailman id 608913;
 Wed, 27 Sep 2023 11:44:09 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlSxd-0002as-AV
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 11:44:09 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20631.outbound.protection.outlook.com
 [2a01:111:f400:7d00::631])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2a386ed1-5d2b-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 13:44:07 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by PAXPR04MB9007.eurprd04.prod.outlook.com (2603:10a6:102:20f::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 11:44:04 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 11:44:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2a386ed1-5d2b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Z3cVZdR+ruLXlyEdknlEUXuI8AbuuY8Zn+aROrsayjWPrbxAPSuHDrCxThQyXPJllUm/33nHmQ6IdCsQnyV8FuazQHihP6FNEyrnuMs7Z5yX49KfRdPxikGiroohuu4m4yhRYelBp3QwiE8Y56ywibm7jInn48akNbwBwnempskx1GH3sK2SH2Kr63g0gwnAim5otswUaEfvLIG6diULwjWCReL7OzuZzIcmN5tqkegK4Rk9InkKB/n5eI+sNX6ktizO9Iw6s3QIbbqw6QZJIrpfSZZ9GP+gQT93dvkyr4hzhZK87tUyuMpx4HJI8jHPAbF1Iogp+1AjMgaazhjcbw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YRJGX9XiEtrrk9vEYMkVT1aeuKnmYmmlMELE39CGDEU=;
 b=n1M2CE19x0ZRWv0KpPypUkt+1vN642jR63LEUBuWFCwptFsaL1V0jsWwaFjTPkPWjpEFNyCA13sC4lZUeH+5XsINoignHRhMvsGVqa0sicYuvDKmvAcv7ndYNZi8bFhojhuA98pABz6hJVVpr6ggXRT2FB9XlaqEdBewEqPDFG89jsJyObOkgVUjhvQIwGTUaCRchtyNASWTJKahxDkChw8QB+rIihRnW2Mn2dh0DNmfy3v4WEmLX9jPGbNicZj5/GTEblzxuIm+gwb9k7LOA9MsbPPtrbQYUYxMegXcIQmPASisaf3tdx78DTorz7YQSdiVXhlR+169U354qEDRvA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YRJGX9XiEtrrk9vEYMkVT1aeuKnmYmmlMELE39CGDEU=;
 b=f+OvKRSm90T7dnFrZDpcnci4yLRfPS08ZI4iIM8vGdj2GZtQXUCEPPu7YsofoeHjll376QFUUIZfT5a7hL5xpF8k3v0pJ2BMpEoxxXGTI2PV/PUCcjF87jzQpiBSJUi9rXoPqfMWQKy70B8HZmIGU/lcmu7dXiRB4Owh11mr1WsDMST+uBrYZhR/+ozdn3/N/9pKuONrTlIXbktwZsgUUXxy8rPWMnXQi38EQmA4vWO9Z0kcTmk031aMwESo7svTqdwxsIF2tvGDJrLrg3zW9vjqbDYiOQgwfOuyN/jd2XE4dS7ZKhELJc2xOL2kwHbaEjtJYCmy74IqOq/SXnDARg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <233a6993-fa1b-fdb0-596c-ebbdeeeae226@suse.com>
Date: Wed, 27 Sep 2023 13:44:02 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 1/8] domain: GADDR based shared guest area registration
 alternative - teardown
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <68cdb299-c41c-b6a5-c9ce-bd915508ecf2@suse.com>
 <ZRPtI9UfgpCfQ4HU@MacBookPdeRoger>
 <4e1e0b28-bb0b-03f9-d62e-dd04846dd2e4@suse.com>
 <ZRQHA0u5wPXkuILV@MacBookPdeRoger>
 <e0080de0-d64d-8b38-40e3-5bd779651ee6@suse.com>
 <ZRQJCPNvwMs_VO9B@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRQJCPNvwMs_VO9B@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0209.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ad::6) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PAXPR04MB9007:EE_
X-MS-Office365-Filtering-Correlation-Id: bc457b38-34d6-4dd5-7adf-08dbbf4f0cb5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	lDW/F2o2uJLvUswqNdGJRepqLDckDe+p2p/ZNA8lylqy1vL5GBTP8WQVfBszfYD94RzEvF3c57gXRptwPgZdstyPHxN32YnL7lrX9qDD0oPXLZcQLciAYnRP+iTh2K7swsnb0OvU632GMZm+8G6otQZlTZ/HmvNK4lr8N01uoOw9tHhb0mwqg6vV9fvyi+r4e6ylnwK3PBsHjj+QAlFR/HkURvdTzJdKuiYe/pUEyqaL+9Si63jvRkm922cihmhksvuPLKLN1vc3DJ+kRVcm33ho4dTlSoJX3oinX2C3oztso6vFa6gtAHwSrfELsmv5Rje3zS4sz35SWR8PH7eqZrNaSVrwkeKUmYdIseIDV94rNy7NAi05qZOOx2KocSiDRkHkMvJLN/ufttDrWVgM9zsx4/Zs5HiqnfEBPpqWs9yxe3b28GpKMGOtt9f4JyOOsTiY2HuNuWGBZLmQEUjglEbrt3UGez4eFmDjzZKFb/RPxzFgEqmWUlwpLvKwOhA4ldhqli2H+1APste+wYT9PtBaXjU25qQ1lTlQITrF62LYZNARtX6DcugA8nk4+mDJCRp20wrQXAhrEYBkRyuej46Hitjqhn6x2mrdkajCpOIwxmDAfxi0t2ff+vPXcLUIpC1xI4DoZpU7JRqaYY5tOA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(376002)(39860400002)(136003)(396003)(230922051799003)(451199024)(1800799009)(186009)(316002)(41300700001)(26005)(2906002)(8676002)(5660300002)(478600001)(66556008)(8936002)(6916009)(66476007)(66946007)(4326008)(54906003)(31686004)(6486002)(53546011)(6506007)(6512007)(2616005)(36756003)(83380400001)(31696002)(38100700002)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ajNyaEV3azhBTE9kYUNBYnVHRHhjQ0JVeHNRNDVwMFNIZEJxVSs0dWxRejhE?=
 =?utf-8?B?d1VydDlKR0czSmpCYXJJSVNucWhQaGJoV080bVgxY2tYb0VBVjRCcjdVbEZk?=
 =?utf-8?B?NDA2UHFRKzJnNFVlMERwdUVuMjQ3YTdhYUtuSzJSSUFYZUFzNkpLcEdhdHpJ?=
 =?utf-8?B?cVUrWDVSSW1OTHJXVUR6aklvMnZOR0h3bGY5QmFXZXJacjFtNnlCbUFSRURZ?=
 =?utf-8?B?Umd3VXExLytLd0ZtZEx0RXNBY29xN3ZwYjQvS0tITTBnK2U0QUo3MU9rWmNH?=
 =?utf-8?B?a0l4L25yK3B0UzI1cmZDbTV5b01IOXRqb0kxTGpwUXRGclIwb1Q2YndaMlhl?=
 =?utf-8?B?amwweWRWMDRxUHZoRnZSaWtMclhWaFdZQzlCSWJqZEFaUlZVVnVEdEo4cUdp?=
 =?utf-8?B?R2s2cVBxcGNGbjVvd1F3cWtjSll0Z09lSjNGNHpKbUNvQUhzdnl1OXVUamxv?=
 =?utf-8?B?MUliaHpYRHFxR0VrZ2YxZWhpL1V1Sm1HRE8ycnhlRC8zZkgwWFdBUHZ6dzNP?=
 =?utf-8?B?NGJTK0FQTUdXR1k5T3RnM3J3RFBEamF0cXhXNUpMK3FSVEIwMkkybmRySWh1?=
 =?utf-8?B?N3JBK0VXdkRLaDYxT25TR3E1aXFtTVU5a2M2Q1lCZ1pTWDBLVThLWVBJT1VZ?=
 =?utf-8?B?L2RSdWNuV3ZyaEt2K09yendoUWlJRDdKRzdiQ3FVTEdtbUNKL2RUNDIrMlBG?=
 =?utf-8?B?UzdVTVozY2M5M2xZRUxnV2U4ZXQvVTNRUWc5V2Y5RzVocWxmQVI4R3dUR1pa?=
 =?utf-8?B?bWx4a3VXeTcrcGp2SG1RYW5EYVFtRi9wNDBhandSeXlVNzdhcHpYRWxhM2hR?=
 =?utf-8?B?a0UrK2xjRzR1dFFPeHh5Yk5uR1o2MURVQjNoR1NkUUpXYUdtVjNyOWpjQWl0?=
 =?utf-8?B?aXRtUHlXaGQ3QmpWVHNRdHYxYlVRcyt4YnJTaWhHbXVJNmNuWTlHTXRlelE4?=
 =?utf-8?B?Q3hpSUF0bmpxb1J5Z1U5WUtqRjBvR2pZM0hWZmJaUHlmbW5ZdThNMUhBZmJw?=
 =?utf-8?B?UENOeW9qd3RZbGhoQmhkTUMva29sZ3QzTG04M1pVdFVtSVV2anJrR0R2Zk5L?=
 =?utf-8?B?amFmT3BSTTUyT01nelRtVldBOUdsbTFjcUdCb0NLNmdxS3lMbnkxcUFiTkJQ?=
 =?utf-8?B?WXNzUnJBRDFhNDJmcitkSGxZYVZsWVk5MGRBTUpCaTdZWGE3WkJpOTlZYjZD?=
 =?utf-8?B?OVpKL1EzQkk2QVZxOTFxQ2lyTHVNUjdtQitDUXNhRzZkUGFqTUt3V05zWk1x?=
 =?utf-8?B?aFl1aDI1ek5NZjNOSW9mc2ZZOS9jMlZzOEhBbXNUbStYT3Fna3Q4OEx5KzVE?=
 =?utf-8?B?U00wOEp2SjZjRXhyTFFjcFI1RzhhZ3RlU2tTYXNqTUMvdjUvZXl6aWZEMjE5?=
 =?utf-8?B?blJMbGlRUkwybXRleGx6NlVoUjl6TVRTSGVVa2tUZVpZM25kSklaQVFGd01r?=
 =?utf-8?B?T2d6ZHRqMjF0NHc3NDcyVnNXMSttK0tQUnY5UWhEOVRDZUZ0MlpNMGhORFpr?=
 =?utf-8?B?dS8wemJ0Yzd3RXp3WDJqZDlIRWRqaWNYb0pQaHJqTHJMQkpvclN1Yy90aDlR?=
 =?utf-8?B?V2QyL0JEM0c0ZkErYXZ2TGFRZjVEN1loRXFXdHRnWFQzS213ZnVQTkZXZFM2?=
 =?utf-8?B?TWF4dWJuVGx4QlUyMW94WHduZW5FWkFLWTlVL1lDLzNPaDBKSUdPcGt3T0NY?=
 =?utf-8?B?ZGxMV1ZoWXZuUlltdG9MVUhCaERFQStlLzU3enR1V3ZvbVRSVnhFMDhiSGtN?=
 =?utf-8?B?T25GUTMvMTRRem4wdGJJbmg5MXZnUFh4QTFUN25kcHB5NTVLZ1V3Z24vZHFh?=
 =?utf-8?B?MGJWMkplRG1RMElPcCtHb3huMGk4dkZKM2NFN3pDUERWb0NjQzNIdDJTVjdR?=
 =?utf-8?B?eWIzTG8zSHhCUVNlODJydTFkeXNVR0lVcGoveStUVE0yeWZHTGMzYmtwai9U?=
 =?utf-8?B?MjBhOERzZXZxOWJ4ZFZzYm9qdVh0MWpWcUVVakxUWk1RZjZjOGI1b2daY1RP?=
 =?utf-8?B?TVU3OHdzaERVeUdtbkdHWk1GMXd0WTQyai9BTDZoQW9EWW9PMkpLYlZTU29J?=
 =?utf-8?B?R0hCdGJ4SnhhaE1zazBuTWo0aS9nM2REWERBdW1GQUFuU25tdmFBcUdna2sx?=
 =?utf-8?Q?uXxxKaxDt5Xz+5q/S+96FbA/l?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bc457b38-34d6-4dd5-7adf-08dbbf4f0cb5
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 11:44:04.5764
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: VgILOQEjLtgudiZ/dHd/L639rqYVDA+8khkt+zVvVqEjGHMpRhaLv2zaVR/NMPRVUeQ8JYkM5egWO83sR1AWcw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9007

On 27.09.2023 12:50, Roger Pau Monné wrote:
> On Wed, Sep 27, 2023 at 12:46:07PM +0200, Jan Beulich wrote:
>> On 27.09.2023 12:42, Roger Pau Monné wrote:
>>> On Wed, Sep 27, 2023 at 11:55:19AM +0200, Jan Beulich wrote:
>>>> On 27.09.2023 10:51, Roger Pau Monné wrote:
>>>>> On Wed, May 03, 2023 at 05:54:47PM +0200, Jan Beulich wrote:
>>>>>> +{
>>>>>> +    struct domain *d = v->domain;
>>>>>> +
>>>>>> +    if ( v != current )
>>>>>> +        ASSERT(atomic_read(&v->pause_count) | atomic_read(&d->pause_count));
>>>>>
>>>>> Isn't this racy?
>>>>
>>>> It is, yes.
>>>>
>>>>>  What guarantees that the vcpu won't be kicked just
>>>>> after the check has been performed?
>>>>
>>>> Nothing. This check isn't any better than assertions towards an ordinary
>>>> spinlock being held. I assume you realize that we've got a number of such
>>>> assertions elsewhere already.
>>>
>>> Right, but different from spinlock assertions, the code here could be
>>> made safe just by pausing the vCPU?
>>
>> That's what the assertion is checking (see also the comment ahead of the
>> function). It's just that the assertions cannot be made more strict, at
>> least from all I can tell.
> 
> But the assertion might no longer be true by the time the code
> afterwards is executed.  Why not wrap the code in a pair of
> vcpu_{,un}pause() calls?

Because it's not quite as simple (if I was to do so, I'd want to do it
correctly, and not just give the impression of universal usability). See
how map_guest_area() involves hypercall_deadlock_mutex. Hence I continue
to think it is okay the way I have it, with all callers satisfying the
requirement (afaict).

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 12:07:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 12:07:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608919.947726 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlTJe-0007v5-KF; Wed, 27 Sep 2023 12:06:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608919.947726; Wed, 27 Sep 2023 12:06:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlTJe-0007uy-HS; Wed, 27 Sep 2023 12:06:54 +0000
Received: by outflank-mailman (input) for mailman id 608919;
 Wed, 27 Sep 2023 12:06:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlTJd-0007us-Ji
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 12:06:53 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20630.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 57cd7dd5-5d2e-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 14:06:52 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by DBBPR04MB7515.eurprd04.prod.outlook.com (2603:10a6:10:202::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Wed, 27 Sep
 2023 12:06:50 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 12:06:49 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 57cd7dd5-5d2e-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=I28uU4ryiv9T6FYqDo8wcm2DoMZ1glCTKdNA2XJHM5QQCF7rxxSAcklaQTo6+7VwdUNooe8uBahkh/ot5d+kc0oLwhP9JLjtNIw8GH2xUYg5LYCr2UVh79ps5NJrDQDion4BLw5LYqcS/eaAPMsSlfOaAapthC3i4D2/zYcZPHBpJnUjPiIgIvL7BSQLq+x9cb88G2F4+rDUXAt4SaWp/da2bxMj0o62BCIv1eFFIFT8p4QV8dfKkj2vaYbjbsGydES5m8XJyj7wXmL7IJIAQeogZj4tsRoIor+IKq3cixheG1dK0GwffbFwf6SpWDVi6KM7qMOsuxqUP8IpVxVo3Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=VM6p6qb2FJFitCTznxEHROk9pzQ6PCqp4nEnKrT5lIU=;
 b=aZEDLhaJ7qEQmOcKUZUbZKL/LGO4PGLHs65QHwIPoWHAOHydFjSiKm843tVcfevIHTpfdVcgk1CIiHIhPfHUgAjMUT92m66q6Oo3y5gt2QePnJCoTsVYw1cPLP+cDZUxxIpJHHc9YVmUU0EGNSMJqK5tguMvh9F5LEIEwS2fHACGMBPpNjXYBNnjXOv9Ok+hDWFDohREQIDmrFNHEzvZnMbgoQYzRH5D2VbHV9xCIKgfICMGPflR3EBOroOLCOxFtNB7QR9g5CGN3y653Q/2TGvKaYPvF6bDIknGmOZ3Q5jXSCsgqu30bYcQHjATMFnjNoUCxCGq9dotwHryRbj2Wg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=VM6p6qb2FJFitCTznxEHROk9pzQ6PCqp4nEnKrT5lIU=;
 b=AusuW1jDGOm1N0BMzMAMcZsEx7Adxj/eYuWC/JkshZk/F1ijZQpYNgjzzwjeGoCQEpqAmzDZze1wyQTXXw62BHOVb45csqW9P3xsXqa9pFxaPyJxBlMnUSsMHR89FD9sbUw99DC9K/qOoI+PSqBa867eiiSlS7QKlxtDU3vNx2C2SaMVH8INfJez6hfLWMCwe/Khgvfw0RBpdl9GgM91gTdqAweKHQ5UiRxbOgPwR8tCX7ZRUPY+pd4O0pl48qqFXxzpf6fgkGOb3s32QlCdlJXyU2PE0cM4ZE3YOrooiTI4A0T3PUnUOaKH7XkZBu200o2mZ1l4S+sqp23eUAEAhA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6b55a773-c005-f524-531c-45247cac1d55@suse.com>
Date: Wed, 27 Sep 2023 14:06:47 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 4/8] x86/mem-sharing: copy GADDR based shared guest
 areas
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Tamas K Lengyel <tamas@tklengyel.com>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <a79d2a8b-6d6e-bd31-b079-a30b555e5fd0@suse.com>
 <ZRQNHyggOFD1FuMD@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRQNHyggOFD1FuMD@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0126.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b9::7) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|DBBPR04MB7515:EE_
X-MS-Office365-Filtering-Correlation-Id: 2bdcff9a-8424-4f7e-85db-08dbbf523a76
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	0Q8zphx558WNdZvghzZ+hVBsMbSMFFvUNl/JIcOD9tZNLJgMN0c4raHbfTJyTiRe0ulGSBs/0r+SkCl/J+ROBcdceS1znqMVs256RWtk9b1WhqFP4f/a9fmhvGPwl03jaI1p+PVC1iWmXgCwKk9Z5KqUoUrjwL2mrHdldchEvLzJcPlZMXuUuNPELL36hOHxig8qn18zXIyMz0RjOkh2W0kszUvHFdwbSYxu92AVc+kIOFHEA/zZhRghm9U51wR1NHp6Tgv9v7kf4TdRAkRw1jQF106E/HI41V3788WPDXzB/UuwmqKO5i0u27FChVksKEhEq9+54qWsw0VlybfsNj7azstBwg0Hnl92HP02V9P+UtGH8WlMZ94RmbxRIQJz/rY+yRAK9hNuTIS2+TMLiTcoURmbMqcqGYn+JbAUNSKKtxhbj2DOQIgUgS1jQbDlogt4aim0rYC9AjTuRrxSPx4dOOSjGUjTczh2B7sUW8VKIPOGJIsRj+CMgX4u9ONyUi3dAtllfskYuYKWHMrsjQoy859jLsF/cQ8s/LpQ4focV06SB7iywf8k7EsJPsDg570jKVnoI0QpIH8faDp49cbxKe2Xz69JmnyXvFgNUaau6TaINn4UFmNHIeUZMUTaaLE5RneqB7s6TQxfd3sYWA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(346002)(396003)(39860400002)(366004)(230922051799003)(1800799009)(451199024)(186009)(31686004)(53546011)(26005)(2616005)(6512007)(86362001)(31696002)(36756003)(38100700002)(83380400001)(2906002)(6506007)(6486002)(478600001)(5660300002)(316002)(41300700001)(6916009)(4326008)(66556008)(66946007)(8676002)(8936002)(66476007)(54906003)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SWNPNk5RTFQ0Z2toR2c0aFJKS0FJb1BuaVlldmorQ2VGS0dseHgwWlExZlpX?=
 =?utf-8?B?QkgvZ2plYjhkckI2L3hlU0FLM2Z5MDVOajJrQkdkNlY2QVR0dUoxTW5kaVNw?=
 =?utf-8?B?L2FNMmlKUFBmUWZXcmZLTDlzYzA3YjB4eVNDNTlWNjZKckhVRG9yOEFGQkpl?=
 =?utf-8?B?RDhnYXFKdjhjdTE2bmYvUnZhTitUQksvdWUyQXd4QllPcUhJK21DU2YvV2Ev?=
 =?utf-8?B?MTZ4WU0wSjdlWTBmeEVkMDZIVnN3bnkweHU1SWozUDAyY1hpL01JWC9YYXZI?=
 =?utf-8?B?c3hqcHZjaUxWVE84U0Z3MW4yZkJLWURuY2pHQWk1UENWbnBaQXVjbUNoRjRj?=
 =?utf-8?B?VGhDNHA3VFl4M0dLWThuMnR5TnBJakFiSmpCNExwR1ZpdmErVWxMUmRqZzRw?=
 =?utf-8?B?NXREUHFyWSthWnhaTGs1Zmp6VHhQaEZ2TndwNjl5LzFTd1FBeXJVMGQ5U01I?=
 =?utf-8?B?Tzhra1YxZk00WUhYRTd0dUp6VGtIc1A3ZmEyL2tLR2h2K1pVUzY4UVBDQnBy?=
 =?utf-8?B?endObnN0MisydUxRcE5rZFJtMks3a0R4R1ZZNHRwbzVFVjVTQzlPbnJXR2JY?=
 =?utf-8?B?RTNTbS9DdHVNZ0t0VUkxNXBQRDlxeUxlem44MzY3MGgrNjZaTk1GVGJIMU5U?=
 =?utf-8?B?czdGNjI3UnJ4QjlXenptS3JYTzM5QU9ob0hCdWlKWjEycllWNGVOOVIxNGtv?=
 =?utf-8?B?bXZJdFFpRTIzS3VJMnpmKzNvMkJISW5KY241MnZTV3BmT1ArYitPRGtnbFpB?=
 =?utf-8?B?cU1GQVNiNzVvaGcwb0YvS3dPakUwZHVhcm9Kb1hxWlRpeHV1ckFhWjJ1R1ZN?=
 =?utf-8?B?ejhwclZRTUI5QzRGSDJTMUw3YTNGREJqNDVpeXBUSmFackI5NGVYb0VPYyt0?=
 =?utf-8?B?ald3eXpJVnJOQ3V3dXJ0RU5PUHV1bzFhS0NSakREb0FSQ0oyZWE4OG5TUjRD?=
 =?utf-8?B?YU5ZMlFoSVlIZUJLVmZHY3dqbWpROU54MXQwdmVxRldwaXBvRnhsSHFMVXM2?=
 =?utf-8?B?R2JaOTVRUUxKL1BWa0s5cjI0K0tiNDJIOGNqVDl1UWw4Y0luUVBtaUxtTlp2?=
 =?utf-8?B?bzBGQm82cDN2T1NqaksrMGVOTmtFNHdkYmZ4d1dmUHNDc2ltWTA3RlpyWFBG?=
 =?utf-8?B?S0ZxcU9ZcTBWRHk2ZEl1S1hQNHhQV216QlRQMTlRYUVxWDd4UFA3WlB2dm1W?=
 =?utf-8?B?VFBsd0hxNmZZczRBbmVtUVI5STl5NzVVeXFyTUM1VGtHRS96anFhYmZhQzgv?=
 =?utf-8?B?ZUtJYmt1UXEydzFWNGZpdXVuc1QvbkdwMmRnWEgvTmQrQ3hNNndSdmh4d2pP?=
 =?utf-8?B?bWxvMEFDRWpSMTZhMlZtbGdpK05UMDMzd0k5WU15UERhVk9lZUIvcXlOK2xT?=
 =?utf-8?B?Y0w2YUNJdDlYa1pGakMyc2p5VGk4b3NYeFgybVg5d3p0ejU4SnYwSVBKc21u?=
 =?utf-8?B?N3dRRjBleFlEekx0bVNKcVU0NnRwYlNLYlE5N0xpcUdITzJVakU5V0YwcWRN?=
 =?utf-8?B?L2U2cXdlLzJkTFExbTk3SkZRbjZwbE5FTFBrSkFxSlp0OWxXcExhOU9EdGxh?=
 =?utf-8?B?MUM1NEg5UTQ5WkVBb1ljZTd5UmtmUUpyaEx5OWxSYUJod01zU0xmWXZyR2JH?=
 =?utf-8?B?Q3RoNGFOVjdsWWZYUEJTUkpqcWJISUxCMkY2K3VneE80cVJJVzY4bWFtSTMx?=
 =?utf-8?B?VGYrRFhtTWpEVEp2L1l5Q1JTa2ora1ZoTk56NUN1SUhMWmNuK3gxVm91YlQ3?=
 =?utf-8?B?enpNT2Y5YnJ4YlJFaE5sVmV2eDNreEZTU3g2aklLeFpLVUZPSmxycy9lMGhN?=
 =?utf-8?B?bjlIM2g2Ykp4Snh2bHVPS21BQU1IRUl1Wmg5Sm9IYmtSUEdSQ0pXd2xua1JE?=
 =?utf-8?B?eHlRM1VXQlp2cC9jdnErc3lUUURwZFJLeFo3OThyVWMyeXJ3aWRabk5EOVZ5?=
 =?utf-8?B?TVZvTHVWOEpJU3JXVk9Rcmt2eXFnUEgvd0pxY1dBa29uTXZOMDIvdnpFY01Q?=
 =?utf-8?B?RmJHZlNINWNabmNsKzU5cmlMY2RFMzB3WnlQd1ROaHYyQUk0VUJLd1hna0dO?=
 =?utf-8?B?THlWRm5DQWdLbHlQUEw2Z0ZrNFZHaDRZdWZXaEVDN0IxektTRTEvdW50YVMv?=
 =?utf-8?Q?wTMS3tbtVCUkp1Ov2kduOy8yj?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2bdcff9a-8424-4f7e-85db-08dbbf523a76
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 12:06:49.8239
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: K8fXWCLKn7ZO5EAKQiLertIRAcks70YIoCMlEoN9LsAqHdS2eoDDNw4cOayEUH1P+VVr6WO10KeMb6bQHtm6Vg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB7515

On 27.09.2023 13:08, Roger Pau Monné wrote:
> On Wed, May 03, 2023 at 05:56:46PM +0200, Jan Beulich wrote:
>> In preparation of the introduction of new vCPU operations allowing to
>> register the respective areas (one of the two is x86-specific) by
>> guest-physical address, add the necessary fork handling (with the
>> backing function yet to be filled in).
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Given the very limited and specific usage of the current Xen forking
> code, do we really need to bother about copying such areas?
> 
> IOW: I doubt that not updating the runstate/time areas will make any
> difference to the forking code ATM.

I expect Tamas'es reply has sufficiently addressed this question.

>> --- a/xen/arch/x86/mm/mem_sharing.c
>> +++ b/xen/arch/x86/mm/mem_sharing.c
>> @@ -1641,6 +1641,68 @@ static void copy_vcpu_nonreg_state(struc
>>      hvm_set_nonreg_state(cd_vcpu, &nrs);
>>  }
>>  
>> +static int copy_guest_area(struct guest_area *cd_area,
>> +                           const struct guest_area *d_area,
>> +                           struct vcpu *cd_vcpu,
>> +                           const struct domain *d)
>> +{
>> +    mfn_t d_mfn, cd_mfn;
>> +
>> +    if ( !d_area->pg )
>> +        return 0;
>> +
>> +    d_mfn = page_to_mfn(d_area->pg);
>> +
>> +    /* Allocate & map a page for the area if it hasn't been already. */
>> +    if ( !cd_area->pg )
>> +    {
>> +        gfn_t gfn = mfn_to_gfn(d, d_mfn);
>> +        struct p2m_domain *p2m = p2m_get_hostp2m(cd_vcpu->domain);
>> +        p2m_type_t p2mt;
>> +        p2m_access_t p2ma;
>> +        unsigned int offset;
>> +        int ret;
>> +
>> +        cd_mfn = p2m->get_entry(p2m, gfn, &p2mt, &p2ma, 0, NULL, NULL);
>> +        if ( mfn_eq(cd_mfn, INVALID_MFN) )
>> +        {
>> +            struct page_info *pg = alloc_domheap_page(cd_vcpu->domain, 0);
>> +
>> +            if ( !pg )
>> +                return -ENOMEM;
>> +
>> +            cd_mfn = page_to_mfn(pg);
>> +            set_gpfn_from_mfn(mfn_x(cd_mfn), gfn_x(gfn));
>> +
>> +            ret = p2m->set_entry(p2m, gfn, cd_mfn, PAGE_ORDER_4K, p2m_ram_rw,
>> +                                 p2m->default_access, -1);
>> +            if ( ret )
>> +                return ret;
>> +        }
>> +        else if ( p2mt != p2m_ram_rw )
>> +            return -EBUSY;
> 
> Shouldn't the populate of the underlying gfn in the fork case
> be done by map_guest_area itself?

I've used the existing logic for the info area to base my code on. As
noted in the patch switching the info area logic to use the generalize
infrastructure, I've taken the liberty to address an issue in the
original logic. But it was never a goal to re-write things from scratch.
If, as Tamas appears to agree, there a better way of layering things
here, then please as a follow-on patch.

> What if a forked guest attempts to register a new runstate/time info
> against an address not yet populated?

What if the same happened for the info area? Again, I'm not trying to
invent anything new here. But hopefully Tamas'es reply has helped here
as well.

>> --- a/xen/common/domain.c
>> +++ b/xen/common/domain.c
>> @@ -1572,6 +1572,13 @@ void unmap_vcpu_info(struct vcpu *v)
>>      put_page_and_type(mfn_to_page(mfn));
>>  }
>>  
>> +int map_guest_area(struct vcpu *v, paddr_t gaddr, unsigned int size,
>> +                   struct guest_area *area,
>> +                   void (*populate)(void *dst, struct vcpu *v))
> 
> Oh, the prototype for this is added in patch 1, almost missed it.
> 
> Why not also add this dummy implementation in patch 1 then?

The prototype isn't dead code, but the function would be until it gains
users here. If anything, I'd move the prototype introduction here; it
merely seemed desirable to me to touch xen/include/xen/domain.h no
more frequently than necessary.

Also, to be quite frank, I find this kind of nitpicking odd after the
series has been pending for almost a year.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 12:49:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 12:49:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608924.947737 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlTyy-0000Lt-Om; Wed, 27 Sep 2023 12:49:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608924.947737; Wed, 27 Sep 2023 12:49:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlTyy-0000Lm-K9; Wed, 27 Sep 2023 12:49:36 +0000
Received: by outflank-mailman (input) for mailman id 608924;
 Wed, 27 Sep 2023 12:49:34 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=eJCl=FL=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qlTyw-0000Lg-GR
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 12:49:34 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on2061e.outbound.protection.outlook.com
 [2a01:111:f400:7e89::61e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4d4fc220-5d34-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 14:49:32 +0200 (CEST)
Received: from DS7PR03CA0311.namprd03.prod.outlook.com (2603:10b6:8:2b::23) by
 SA3PR12MB8000.namprd12.prod.outlook.com (2603:10b6:806:31f::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 12:49:27 +0000
Received: from DS2PEPF00003440.namprd02.prod.outlook.com
 (2603:10b6:8:2b:cafe::2c) by DS7PR03CA0311.outlook.office365.com
 (2603:10b6:8:2b::23) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.22 via Frontend
 Transport; Wed, 27 Sep 2023 12:49:27 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 DS2PEPF00003440.mail.protection.outlook.com (10.167.18.43) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Wed, 27 Sep 2023 12:49:26 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 27 Sep
 2023 07:49:25 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 27 Sep
 2023 07:49:25 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 27 Sep 2023 07:49:24 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4d4fc220-5d34-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aHjnPgu3NZNR30spJ9vuBjUs8w0FYxXSWwLtlGdLJM2Pi5XdkLBIwO9GhhkQPPgcPs2f6wTWt9gOBQkp8BFfD2uo17skIPJtdrFIfEGdfH/ZIs+z68iHGq1rOakFlvqCGUNhXpPHZJ5ivg8ELllvZAgvY3QKBhJvS2naoK2zuDnsrem18FdBzXoyjza/XeBw7+6WhhNd2g6uU2XijpuS2Ss6oEVaMO1IGN8MpdvqO6AptZe2rRKmZ9iHwOfnRqB5Vo3dvucFUL4BfB99KSfyC337mkYfNBxGMYaUm1oQTv3jrro+zSE4I2o1S1txoU5Oon1+x6T/a62avu1v0bRJeg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=krWSpJxCG15kfLt9wnpPwPMoHEqbTjBN/EwRJsLeLiQ=;
 b=QCZ1mw+2JNMu3IL6T8+ypbnz/kXuiImaINgzzarndRDh98tDm3Gufr6b3tuB/iXc5aFKfWW+0O9BD3GcYFwu8F5KoHeQb2NoPgQ3Ue0/NVyQHY3bKVJGbx2Omkznpk9QcXDch26aVTww+O+BOWoibgIQzhLCDiVpjX7IG8lnJ4m/JTVtAAVHqcjLP9p1eNDLH6TMbYaYAqArIEm9OoHj07D4XlcJXYQ98A7HitvKwHm+1LOmsVxhdHJ4X7D5+RhTruGmMEVqTeWMY2UbUt/hybpBK/cpNfSHE4zrulm2serGyJP6a+pM3cwhqZFXqlcLBr79bI0UvsIFFEsRDr2Mtg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=krWSpJxCG15kfLt9wnpPwPMoHEqbTjBN/EwRJsLeLiQ=;
 b=JgZEemHLrIO61i/gCNJugwPhqF7k4Qwsy3W5fQY7isV4ZDxlXLAj2YLyRC1cxf1PmmbFK+3X1zs8L+aKm4UBOqhR2Z7XzTNU9eMuL7FmrmR3bRq6yx5uFbOi5SMqv9GMgza0DYxuazIocZHWmNqpunJhtJsbhDtkctQ13bHgoC4=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <3964a12c-b808-2ee4-9651-68c21ead817b@amd.com>
Date: Wed, 27 Sep 2023 14:49:23 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] xen/arm: Skip memory nodes if not enabled
Content-Language: en-US
To: Julien Grall <julien@xen.org>, Leo Yan <leo.yan@linaro.org>,
	<xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230926053333.180811-1-leo.yan@linaro.org>
 <b0d2494a-8223-a101-5d10-f3803629f2f3@amd.com>
 <36d8f5ce-ef87-40cc-9515-12a2007bfa6d@xen.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <36d8f5ce-ef87-40cc-9515-12a2007bfa6d@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS2PEPF00003440:EE_|SA3PR12MB8000:EE_
X-MS-Office365-Filtering-Correlation-Id: b214813a-2598-4114-4a82-08dbbf582ea4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	GImvHBPMIQf37XkM3U6TFVL1RqxzhbA8Y85Kd61TC7qaao+QVYXzRQQIBzzlUhOgMxa0O4I2LKRaRSWgEnUp9AojB+dWi3rVyu3WSZwSS7xZIfXoBH84xJNOpolD+mMCaRhtacGr8VAMpdRQJoItQL/8AhoGdByjIgREnqm0Gr0yr4JPSv18kzk1LnZlHiS44dW9A8EfxfNi4iaXfOTCWrp3IK0ODgWLUnZoMg2//i8Om1GUutyFXN0H/yeYjNyZQoyVbY5N1c63KkGgxnbaSw8gIWCxTZ6qk29ARXrUN9gPHx/AnXMIr3akBSehNSawbLo6MwNA+eCHhvxOz0FcM5q2I/P+CXLklpgDoIiMtKGJhd/nJg8h9Uu4gK+rtQZHstavkrutaqmq5LNImv+6ig0/MxRF434NPUwZtJVyDAB5zUknUnaElx7vlw9qCSmOtJhhte/jrdwNMnD4YlEVDT7t9giZEtnkBPbm3AZrfB9JdJZQUshTWefuPuhUVFVnxnGEyt8yAzoklfYXjteNSTjMAsfkVI6Lxqvi/+rK/6bKYNCi/BoC3g+o1UJOVpkAmGTYXgudVC75/23WhRfjGS+ahBbPrP+KwCPk55uYmNw+hfczp6yrlAI2rkWnmySTyIOHMF/IxA/W2eUBJJ5RjjIwiCaH8feA+BkXOIqZjvkWei3UHSbnIJmF9ZO71j9bS11JjAJK4MUdqSYd7wx2FlUvxe4xXGTCjD4EnypbAuoeGI8wLgS8Lfzmjde42RQYS8Usf7uARS25cCDHcz+6f2zxZpIylAsyvA7lfMcsmkRg6ZBqwkPlhs2NzHTCpCE3
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(376002)(396003)(346002)(230922051799003)(451199024)(82310400011)(186009)(1800799009)(40470700004)(36840700001)(46966006)(2906002)(47076005)(83380400001)(478600001)(4326008)(5660300002)(8676002)(70586007)(70206006)(336012)(426003)(44832011)(26005)(8936002)(36860700001)(41300700001)(110136005)(54906003)(316002)(16576012)(2616005)(31686004)(82740400003)(53546011)(81166007)(356005)(31696002)(86362001)(36756003)(40460700003)(66899024)(40480700001)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 12:49:26.2822
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b214813a-2598-4114-4a82-08dbbf582ea4
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS2PEPF00003440.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR12MB8000

Hi Julien,

On 27/09/2023 13:01, Julien Grall wrote:
> 
> 
> Hi Michal,
> 
> On 26/09/2023 09:36, Michal Orzel wrote:
>> On 26/09/2023 07:33, Leo Yan wrote:
>>>
>>>
>>> During the Linux kernel booting, an error is reported by the Xen
>>> hypervisor:
>>>
>>>    (XEN) arch/arm/p2m.c:2202: d0v0: Failing to acquire the MFN 0x1a02dc
>>>
>>> The kernel attempts to use an invalid memory frame number, which can be
>>> converted to: 0x1a02dc << PAGE_SHIFT, resulting in 0x1_a02d_c000.
>>>
>>> The invalid memory frame falls into a reserved memory node, which is
>>> defined in the device tree as below:
>>>
>>>    reserved-memory {
>>>            #address-cells = <0x02>;
>>>            #size-cells = <0x02>;
>>>            ranges;
>>>
>>>            ...
>>>
>>>            ethosn_reserved {
>>>                    compatible = "shared-dma-pool";
>>>                    reg = <0x01 0xa0000000 0x00 0x20000000>;
>>>                    status = "disabled";
>>>                    no-map;
>>>            };
>>>
>>>            ...
>>>    };
>>>
>>> Xen excludes all reserved memory regions from the frame management
>>> through the dt_unreserved_regions() function. On the other hand, the
>>> reserved memory nodes are passed to the Linux kernel. However, the Linux
>>> kernel ignores the 'ethosn_reserved' node since its status is
>>> "disabled". This leads to the Linux kernel to allocate pages from the
>>> reserved memory range.
>>>
>>> As a result, when the kernel passes the data structure residing in the
>>> frame 0x1_a02d_c000 in the Xen hypervisor, the hypervisor detects that
>>> it misses to manage the frame and reports the error.
>>>
>>> Essentially, this issue is caused by the Xen hypervisor which misses to
>>> handle the status for the memory nodes (for both the normal memory nodes
>>> and the reserved memory nodes) and transfers them to the Linux kernel.
>>>
>>> This patch introduces a function memory_node_is_available(). If it
>>> detects a memory node is not enabled, the hypervisor will not add the
>>> memory region into the memory lists. In the end, this avoids to generate
>>> the memory nodes from the memory lists sent to the kernel and the kernel
>>> cannot use the disabled memory nodes any longer.
>>
>> Interesting. So FWICS, we have 2 issues that have a common ground:
>> 1) If the reserved memory node has a status "disabled", it implies that this region
>> is no longer reserved and can be used which is not handled today by Xen and leads
>> to the above mentioned problem.
>>
>> 2) If the memory node has a status "disabled" it implies that it should not be used
>> which is not the case in current Xen. This means that at the moment, Xen would try
>> to use such a memory region which is incorrect.
>>
>> I think the commit msg should be more generic and focus on these two issues.
>> Summary:
>> Xen does not handle the status property of memory nodes and ends up using them.
>> Xen does not handle the status property of reserved memory nodes. If status is disabled
>> it means the reserved region shall no longer be treated as reserved. Xen passes the reserved
>> memory nodes untouched to dom0 fdt and creates a memory node to cover reserved regions.
>> Disabled reserved memory nodes are ignored by the guest which leaves us with the exposed
>> memory nodes. Guest can access such a region but it is excluded from the page management in Xen
>> which results in Xen being unable to obtain the corresponding MFN.
>>
>>>
>>> Signed-off-by: Leo Yan <leo.yan@linaro.org>
>>> ---
>>>   xen/arch/arm/bootfdt.c | 16 ++++++++++++++++
>>>   1 file changed, 16 insertions(+)
>>>
>>> diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
>>> index 2673ad17a1..b46dde06a9 100644
>>> --- a/xen/arch/arm/bootfdt.c
>>> +++ b/xen/arch/arm/bootfdt.c
>>> @@ -206,11 +206,27 @@ int __init device_tree_for_each_node(const void *fdt, int node,
>>>       return 0;
>>>   }
>>>
>>> +static bool __init memory_node_is_available(const void *fdt, unsigned long node)
>> This function is not strictly related to memory node so it would be better to call it e.g. device_tree_node_is_available.
> 
> +1.
> 
>>> +{
>>> +    const char *status = fdt_getprop(fdt, node, "status", NULL);
>>> +
>>> +    if (!status)
>> white spaces between brackets and condition
>> if ( !status )
>>
>>> +        return true;
>>> +
>>> +    if (!strcmp(status, "ok") || !strcmp(status, "okay"))
>> white spaces between brackets and condition
>> if ( !strcmp(status, "ok") || !strcmp(status, "okay") )
>>
>>> +        return true;
>>> +
>>> +    return false;
>>> +}
>>> +
>>>   static int __init process_memory_node(const void *fdt, int node,
>>>                                         const char *name, int depth,
>>>                                         u32 address_cells, u32 size_cells,
>>>                                         void *data)
>>>   {
>>> +    if (!memory_node_is_available(fdt, node))
>>> +        return 0;
>> I would move this check to device_tree_get_meminfo()
> 
> I am ok with that. But the commit message would need to gain a paragraph
> explaining that we will now support "status" for static memory/heap.
> 
>>> +
>>>       return device_tree_get_meminfo(fdt, node, "reg", address_cells, size_cells,
>>>                                      data, MEMBANK_DEFAULT);
>>>   }
>>> --
>>> 2.39.2
>>>
>>>
>>
>> Also, I think it would be nice to add ASSERT(bootinfo.mem.nr_banks); e.g. in boot_fdt_info().
>> Otherwise the panic from Xen when there is no memory bank:
>> The frametable cannot cover the physical region ...
>> is not really meaningful for normal users.
>>
>> This is just my suggestion (@Julien ?)
> 
> I think a check for the number of banks makes sense. But I would prefer
> if the check also happens in production. So, something like:
> 
> if ( !bootinfo.mem.nr_banks )
>    panic(...);
> 
> We already have one in the setup_mm() for arm32. So we need another one
> for the arm64 version. The other solution is to consolidate it in one
> place you suggested.
> 
> I have a slightly preference for having it in setup_mm() even if this is
> duplicated.
Either way is fine. The advantage of placing the check in boot_fdt_info() is
that we can have a single check instead of duplicated and we do the check before
the "first" use which happens to be the banks sorting. The advantage of setup_mm()
is that it is the one dealing with memory banks and is called after early_print_info()
so user can see some additional info.

@Leo, will you send a patch for that? Don't feel obliged as it is not strictly related
to your patch in which case I can handle it.

~Michal


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 12:59:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 12:59:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608928.947746 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlU8E-0002hU-Jh; Wed, 27 Sep 2023 12:59:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608928.947746; Wed, 27 Sep 2023 12:59:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlU8E-0002hN-G7; Wed, 27 Sep 2023 12:59:10 +0000
Received: by outflank-mailman (input) for mailman id 608928;
 Wed, 27 Sep 2023 12:59:09 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qlU8D-0002hH-2H
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 12:59:09 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlU8C-00038I-Eq; Wed, 27 Sep 2023 12:59:08 +0000
Received: from [15.248.2.159] (helo=[10.24.67.27])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlU8C-0003Z0-80; Wed, 27 Sep 2023 12:59:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=EKvD41HcYz4afrz/n+zLMTKRa2w+zuYP82K+RFIBBlM=; b=AOojjtx4U1z2RGF0HwZkAzW87D
	jdjNcZfi0bc3J6ZXOiX75fygdpK8TojoSBMX0WrTHDkQ8U+5rSOZWh3OoGmhVOsGbKGhDbG+D+WiL
	+2OBgvCyaU7zB0u3h74UbUas4YHdb7F3oWtWjXe2usSVPvybsPMuDg0ZQ4zp+5ZlQU0U=;
Message-ID: <ed3ea203-4244-4bbe-a9e0-ac8882ecc83c@xen.org>
Date: Wed, 27 Sep 2023 13:59:06 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen on AWS EC2 Graviton 2 metal instances (c6g.metal)
Content-Language: en-GB
To: "Driscoll, Dan" <dan.driscoll@siemens.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 "arvind.raghuraman@siemens.com" <arvind.raghuraman@siemens.com>,
 Bertrand Marquis <Bertrand.Marquis@arm.com>,
 "rahul.singh@arm.com" <rahul.singh@arm.com>,
 Luca Fancellu <Luca.Fancellu@arm.com>
References: <DM6PR07MB43168B0D4DEA80BF2474B9D89AC3A@DM6PR07MB4316.namprd07.prod.outlook.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <DM6PR07MB43168B0D4DEA80BF2474B9D89AC3A@DM6PR07MB4316.namprd07.prod.outlook.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Dan,

Thanks for the report.

On 26/09/2023 20:41, Driscoll, Dan wrote:
> 	First off - sorry for the very long email, but there are a lot of details related to this topic and I figured more details might be better than less but I could be wrong here....
> 
> 	Within Siemens Embedded, we have been doing some prototyping using Xen for some upcoming customer related work - this email thread attempts to explain what has been done here and our analysis of the problems we are having.
> 
> 	We have done some initial prototyping to get Xen running on an AWS Graviton 2 instance using an EC2 Arm64 "metal" instance (c6g.metal - no AWS hypervisor) and ran into some problems during this prototyping.
> 
> 	Since the Edge Workload Abstraction and Orchestration Layer (EWAOL) that is part of SOAFEE already has some enablement of Xen in various environments (including an Arm64 server environment), we used this as a starting point.
> 
> 	We were able to successfully bring up Xen and a Yocto dom0 and multiple domu Yocto guests on an Arm AVA server (AVA Developer Platform - 32 core Neoverse N1 server) following documented steps with some minimal configuration changes (we simply extended the configuration to include 3 Linux guests): https://ewaol.docs.arm.com/en/kirkstone-dev/manual/build_system.html#build-system
> 
> 	So, this specific EWAOL support has all the proper bitbake layers to generate images for both bare-metal (Linux running natively) and a virtualization build (using Xen) for AVA and also a Neoverse N1 System Development Platform (N1SDP), but we only verified this on AVA.
> c6g.medium
> 	AWS also has support for EWAOL on Graviton 2, but the only supported configuration is a bare-metal configuration (Linux running natively) and the virtualization build hasn't been implemented in the bitbake layers in their repo - here is the URL for information / instructions on this support: https://github.com/aws4embeddedlinux/meta-aws-ewaol
> https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/grub.html
> 	As part of our effort to bring this up, we did a VERY minimal patch to the repo used for the AWS EWAOL to generate a virtualization build (attached meta-aws-ewaol.patch).  The resultant build of the AWS EWAOL support with this patch applied does result in Xen being built as well as a dom0 Yocto kernel, but there is definitely missing support to properly build everything for this virtualization layer.  Following the instructions for meta-aws-ewaol,  we generated an AMI and started an EC2 instance with this AMI (c6g.metal type).  The resultant image does boot, but it boots into the dom0 Linux kernel with problems recorded in the boot log related to Xen (see dom0-linux-boot.txt).
> 
>         Looking more closely at the EFI partition, it was clear that systemd-boot was being used and it was set-up to boot the dom0 Linux kernel and not boot into Xen - the Xen EFI images were not present in the EFI partition and obviously no launch entries existed for Xen.  To rectify this, the Xen EFI image that were built as part of the AWS EWAOL build mentioned above where placed in the EFI partition, along with a Xen config file that provided the dom0 Linux kernel image details.  A new entry was added into the EFI image for Xen and the launch conf file was updated to boot Xen instead of dom0 Linux.  This resulted in the EC2 instance becoming "bricked" and no longer accessible.
>         
>         Details on the EFI related content and changes we made are captured in the meta-aws-ewaol-efi-boot-changes.txt file attached above.
>         
>         The next step was comparing the AVA Xen output that was working and we noticed a few differences - the AVA build did enable ACPI and UNSUPPORTED kconfig settings whereas the AWS Xen build did not.  So, we tried again to bring up another EC2 metal instance using the same AMI as before and utilized the AVA Xen EFI image instead and same Xen config file.  The result was the same - a "bricked" instance.
>         
>         We will likely try to use the entire AVA flow on AWS Graviton next as it is using GRUB 2 instead of systemd-boot and we hope to maybe extend or enable some of the debug output during boot.  The AWS EC2 instances have a "serial console", but we have yet to see any output on this console prior to Linux boot logs - no success in getting EC2 serial output during EFI booting.

That's interesting. The documentation for AWS [1] suggests that the logs 
from boot should be seen. They even have a page for troubleshooting 
using GRUB [2].

I just launched a c6g.metal and I could access the serial console but 
then it didn't work across reboot.

I have tried a c6g.medium and the serial was working across reboot (I 
could see some logs). So I wonder whether the serial console is there is 
a missing configuration for baremetal?

>         
>         We have had a call and some email exchanges with AWS on this topic (Luke Harvey, Jeremy Dahan, Robert DeOliveira, and Azim Siddique) and they said there have been multiple virtualization solutions successfully booted on Graviton 2 metal instances, so they felt that Xen should be useable once we figured out configuration / boot details.  The provided some guidance how we might go about some more exploration here, but nothing really specific to supporting Xen.

To be honest, without a properly working serial console, it is going to 
be very difficult to debug any issue in Xen.

Right now, it is unclear whether Xen has output anything. If we can 
confirm the serial console has intended and then are still no logs, then 
I would suggest to enable earlyprintk in Xen. For your Graviton2, I 
think the following lines in xen/.config should do the trick:

CONFIG_DEBUG=y
CONFIG_EARLY_UART_CHOICE_PL011=y
CONFIG_EARLY_UART_PL011=y
CONFIG_EARLY_PRINTK=y
CONFIG_EARLY_UART_BASE_ADDRESS=0x83e00000
CONFIG_EARLY_UART_PL011_BAUD_RATE=115200

>         
>         I have attached the following files for reference:
>         
> 	* meta-aws-ewaol.patch - patch to AWS EWAOL repo found at https://github.com/aws4embeddedlinux/meta-aws-ewaol
> 	* meta-aws-ewaol-efi-boot-changes.txt - Description of EFI related changes made to AWS EWAOL EFI partition in attempt to boot Xen
> 	* ava.xen.config - config file for Xen build for AVA using EWAOL virtualization build
> 	* aws.xen.config - config file for Xen build for AWS using EWAOL virtualization build
> 	* xen-4.16.1.cfg - Xen config file placed in root of EFI boot partition alongside xen-4.16.1.efi image

May I ask why you are using 4.16.1 rather than 4.17? In general I would 
recommend to use the latest stable version or even a staging (the 
on-going development branch) for bring-up because we don't always 
backport everything to stable branch. So a bug may have been fixed in 
newer revision.

That said, skimming through the logs, I couldn't spot any patches that 
may help on Graviton 2.

Best regards,

[1] 
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-serial-console.html
[2] https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/grub.html

> 
> Dan Driscoll
> Distinguished Engineer
> Siemens DISW - Embedded Platform Solutions

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 13:29:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 13:29:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608935.947756 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlUbf-00081z-1i; Wed, 27 Sep 2023 13:29:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608935.947756; Wed, 27 Sep 2023 13:29:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlUbe-00081s-VD; Wed, 27 Sep 2023 13:29:34 +0000
Received: by outflank-mailman (input) for mailman id 608935;
 Wed, 27 Sep 2023 13:29:34 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=U53p=FL=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qlUbe-00081m-CO
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 13:29:34 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e4468077-5d39-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 15:29:32 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 469BB4EE0737;
 Wed, 27 Sep 2023 15:29:31 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e4468077-5d39-11ee-878a-cb3800f73035
MIME-Version: 1.0
Date: Wed, 27 Sep 2023 15:29:31 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, Henry
 Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH v2 3/3] automation/eclair: build docs/misra to address
 MISRA C:2012 Dir 4.1
In-Reply-To: <bc2d62ad97a821f9c8e17a1ff3c9ed55922dbbd4.1695801813.git.nicola.vetrini@bugseng.com>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com>
 <bc2d62ad97a821f9c8e17a1ff3c9ed55922dbbd4.1695801813.git.nicola.vetrini@bugseng.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <14f44178655243a94ad3e51a72281637@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 27/09/2023 11:52, Nicola Vetrini wrote:
> The documentation pertaining Directive 4.1 is contained in docs/misra.
> The build script driving the analysis is amended to allow ECLAIR to
> analyze such file.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> Changes in v2:
> - removed useless make flags
> ---
>  automation/eclair_analysis/build.sh   | 6 +++---
>  automation/eclair_analysis/prepare.sh | 4 ++--
>  2 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/automation/eclair_analysis/build.sh
> b/automation/eclair_analysis/build.sh
> index ec087dd822fa..ea7a1e5a59b0 100755
> --- a/automation/eclair_analysis/build.sh
> +++ b/automation/eclair_analysis/build.sh
> @@ -34,11 +34,11 @@ else
>  fi
> 
>  (
> -  cd xen
> -
> +  make -C docs misra
>    make "-j${PROCESSORS}" "-l${PROCESSORS}.0"    \
>         "CROSS_COMPILE=${CROSS_COMPILE}"         \
>         "CC=${CROSS_COMPILE}gcc-12"              \
>         "CXX=${CROSS_COMPILE}g++-12"             \
> -       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"
> +       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"     \
> +       -C xen
>  )
> diff --git a/automation/eclair_analysis/prepare.sh
> b/automation/eclair_analysis/prepare.sh
> index 0cac5eba00ae..ebd5a2dde676 100755
> --- a/automation/eclair_analysis/prepare.sh
> +++ b/automation/eclair_analysis/prepare.sh
> @@ -35,8 +35,8 @@ else
>  fi
> 
>  (
> -    cd xen
> -    cp "${CONFIG_FILE}" .config
> +    ./configure
> +    cp "${CONFIG_FILE}" xen/.config
>      make clean
>      find . -type f -name "*.safparse" -print -delete
>      make -f ${script_dir}/Makefile.prepare prepare

Hi, I observed a failure when running the analysis job of this series 
through patchew, so
I think it's a good idea to put this patch on hold until I've figured 
out what's wrong.
Sorry for the inconvenience.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 13:54:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 13:54:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608941.947766 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlUzw-0004xD-SS; Wed, 27 Sep 2023 13:54:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608941.947766; Wed, 27 Sep 2023 13:54:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlUzw-0004x6-Ox; Wed, 27 Sep 2023 13:54:40 +0000
Received: by outflank-mailman (input) for mailman id 608941;
 Wed, 27 Sep 2023 13:54:39 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WUTS=FL=citrix.com=prvs=6275c33bf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlUzu-0004x0-SQ
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 13:54:39 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 641d6208-5d3d-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 15:54:36 +0200 (CEST)
Received: from mail-sn1nam02lp2040.outbound.protection.outlook.com (HELO
 NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.40])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 27 Sep 2023 09:54:30 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH7PR03MB7485.namprd03.prod.outlook.com (2603:10b6:510:2f1::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 13:54:25 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Wed, 27 Sep 2023
 13:54:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 641d6208-5d3d-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695822876;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=+DJkNwNagVsyNt44UxymKEZSGYTYGBwzmWtJys5IXMc=;
  b=fLyCQTy7JYVxExZvXK9vnIKsYXCm5Q6PS2oqs1AMi/ovPGt4QVF6dVU0
   5x6ateTRfXAAhaf7g64k99QZ1vvjwGQQ9IKOo6nEmX2axpx5rlRtu0DQI
   U+7/Ug2Bur36nfU4LCjQ74DQbyd9+7ku3zjyvyPI4QDK3R8DorbuehSTf
   8=;
X-CSE-ConnectionGUID: 9ICtexG0RDaR+GjTNA81sw==
X-CSE-MsgGUID: oYjugZF3QVyZ4M+QTmXuRw==
X-IronPort-RemoteIP: 104.47.57.40
X-IronPort-MID: 122591016
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:RkO4nK/VdOTcrMHQoOubDrUDWn+TJUtcMsCJ2f8bNWPcYEJGY0x3z
 WNMWD2EMvnZYzT0ct8laIji/R8BupSGzNM2SgA6qig8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdmNKoU5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkkf1
 NcEJSAiNiqvjtj177CHbMA83988eZyD0IM34hmMzBn/JNN+G9X4ZfyP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWMilApuFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WVwHKiANtMfFG+3vlbgkCc9EJIMSMHZwee4sCFj36jYc0Kf
 iT4/QJr98De7neDUtD4VgaQvH2AsxgTStdUVeY97WmlyKDZ/gKYDWgsVSNaZZots8pebSwn0
 BqFks3kARRrsaaJUjSN+7GMtzSwNCMJa2gYakcsTxYB4tTliJE+iFTIVNkLOLWuktT/FDX0w
 jaLhCsznbMeiYgMzarT1U/DqyKhoN7OVAFd2+nMdmes7wc8f4j8YYWtsQLf9awYcN7fSUSdt
 n8ZncTY9PoJEZyGiC2KRqMKAa2t4PGGdjbbhDaDAqUcythkwFb7Fag43d20DB4B3hosEdMxX
 HLuhA==
IronPort-HdrOrdr: A9a23:fNKeLaF6X/vWoWGMpLqE68eALOsnbusQ8zAXPo5KOHtom62j5q
 aTdZEgvyMc5wxhO03I9erhBEDiexLhHPxOkOss1N6ZNWGMhILCFvAG0WKN+UyFJ8Q8zIJgPG
 VbHpSWxOeeMbGyt6jH3DU=
X-Talos-CUID: =?us-ascii?q?9a23=3ArPrZ82labxvgzCEA2C5H/ImbEt3XOSz852vdM2D?=
 =?us-ascii?q?gM0pgcv66S2O20fM9iNU7zg=3D=3D?=
X-Talos-MUID: 9a23:F1F6xAtWizkgHxmt282ngwBgKchazf+XNlE/zbBFgvWBBTFKJGLI
X-IronPort-AV: E=Sophos;i="6.03,181,1694750400"; 
   d="scan'208";a="122591016"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=g+gl3SKQkkRA+5c4s4EJC2RolY5xQqYc5opD0+SbIdk8SmfSIH+4k9BKqf1Q4JKLFz+enCInkE7IZrELx1K/6pD/Z8i1r0PLHL+Dv+9Vb9ib85IwbiVRLZXyWRwZ+c/75hzIdVJ7NxeO6+o8y0n1gMzJ/UuIIgfo59wmXcjWzIq8+pVDYM7DMULRogY2QHCgD5zQbwR9tOrjzsfsNsiI8nNB9xfKHkdwfhw+ERGHh8I3vdHn+1HZnSmAL7wp32/Jx+mimiaYKccF1NA734c3oMO2CCoF3Mq6T65GPQiR5FVVhAqQ2Bn5/unbFmQ6jdkbXcLZv7V0gVqOqEUQJGftQQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WDbyBJpiMd8kNmCykIwb2h2wZOzB8phmMsnkxLLAnUM=;
 b=dLwMNIcVhoM5D514kuuvnweMWjq0n9o6mZCVIkK0e65/TtV3dH27PWW0DwXoQ+v32etwOo3l8QXbVffCU2thzKOEMiq89CW3MEY7trxYKWzfjE66gJZ6X0mnOf8c68vak+mQ6gCMHs/dmwvkigwlnCesn6axBUGWfFX9W3bXEbpFOunJ4zdxk3AA8sjqOrDWql9uqNr9iJymkVdGdjG75BGIKxkgXPHLr5THzED/Mn6pmmcngJS1X2691zpvNO3T8yQnzXwNpsHZzvc35UG99BK+IJ2qabNum/5S4qKME9cElvrWgBqT8p3hE4XUZ79xLxPxlODRcSo003Lyccz+ng==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WDbyBJpiMd8kNmCykIwb2h2wZOzB8phmMsnkxLLAnUM=;
 b=tKIEF4VqHOCrse6HWWfPDJa7zZvacDDQZFnAw4CPkAqrOdlTxnScXBrx41+LYSzULSuKjjm6zh5xeHu9VDAsJR82Np9WI17R4x65TJ2/a/UBQHXNN955jcNXFR0wsY8s35GSqrf10AI88V+erWgYDBSwGXq3hZrdDn0Enqv4oj8=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 27 Sep 2023 15:54:19 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Tamas K Lengyel <tamas@tklengyel.com>
Cc: Jan Beulich <jbeulich@suse.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v3 4/8] x86/mem-sharing: copy GADDR based shared guest
 areas
Message-ID: <ZRQ0C78jy5P2ghnn@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <a79d2a8b-6d6e-bd31-b079-a30b555e5fd0@suse.com>
 <ZRQNHyggOFD1FuMD@MacBookPdeRoger>
 <CABfawhkn1xXA+qEjB4-HtOVUZHONDE6ngMJZPe3fSPtoAtmg+Q@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CABfawhkn1xXA+qEjB4-HtOVUZHONDE6ngMJZPe3fSPtoAtmg+Q@mail.gmail.com>
X-ClientProxiedBy: LO3P265CA0019.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:387::18) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH7PR03MB7485:EE_
X-MS-Office365-Filtering-Correlation-Id: 62e07ffc-2f60-482d-8e86-08dbbf61420b
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pSEGMgzqmLS3BNq6t7F7kDFeN7ufRuxHos1qldReRHQyiWUk11gJTWiMaJmF+E/YwbUV2afJjqbZpiFvdsyC524EoXobU0kjrnPxM0tKgjLq/wx9CtVsZOho+fIlsvsxWq29cMXTTctPwj2N0JJsnlI7YhiwbnWw81gDW+QwOPfx6WwHbU/43EzPny0BTMRmn+6wfYS4Ig+Pp5vO1HwS/fhXAVZ1yTFKfNQ3jr6hAmJOn7gAK7Q4mhKLqzn9zX2jVfkromBnzQolNAgVCTDSYg68K9+4FNqQSMm+/XZnoDssOkKKsZAN733koXlec/NzSsVrQK6g234XJYvLO8P6wKC23H5GIP3Xcy6JGyFh2BywTPc0cNCFbgEAXM64BEaE3QYFAl29yrGY4PoaDLdyY34I20Z3xCC+bNJB+jtziYjQknu/1BoFlIaEdCmdoWmVuCRnWMbyW1nweByk7SxUtPAfuD9tu1PMIapfpKSipL/a9JLDB7041fOeNhRsr+796XjVgKwLruNHwfBDrQMEdYyqdOMcnu1qcYGwqE0LNQAzo6cAF2M83z4eUQwDdFzO
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(376002)(366004)(396003)(136003)(39860400002)(346002)(230922051799003)(186009)(1800799009)(451199024)(2906002)(5660300002)(66476007)(54906003)(66556008)(33716001)(478600001)(6666004)(66899024)(6512007)(53546011)(9686003)(66946007)(6486002)(26005)(6506007)(6916009)(8936002)(316002)(83380400001)(4326008)(8676002)(41300700001)(85182001)(86362001)(82960400001)(38100700002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QTJWK3RoMm5UT3hJU2dicGRYMk44NURwaVhlL3RSSVF0dW1hL2tKRGtPMk5v?=
 =?utf-8?B?OTdmL0NCOVdWUW5XNEQ2VEkxcmFTTy83ZW1rRnNLNWRTaW1EajJBTUpiSUJT?=
 =?utf-8?B?VjFvZk5YOWlSbG5UY0RFMFFhQ1BTTWI3ZlhKU0s4TFJINzJTYzY2NU9tWjh0?=
 =?utf-8?B?Vm5EZzIyblhOS0RqdzlyQk5RKy9Wb0s4OVJRS1l2emEzTGtNQm82VnN1VVVP?=
 =?utf-8?B?bS85K3RvQklwMWhYQ0tEK3VSQ21TWjRDTWZBYmM0NEJGZEhIZzBMZURiK2xt?=
 =?utf-8?B?QUwxUjdyWFE1dk5XTFNqcVJCZFpJOTJiT2tOc3pLK3pTNW5BSnE5RlpZd2Qv?=
 =?utf-8?B?NVBNMVBxdGs2YzFEam10QjZUbXVPcWVkRW5jR0pxekRweTRrVllBeklteFF6?=
 =?utf-8?B?dFh0dk5oVHNGMnRqUnpBVG9KY3ZHY1BaMStqVk9hM2xTVzh1N2tTbkVtSm5W?=
 =?utf-8?B?NGNzb0tIK1doZ25ac1ZVVUFaVWZDVEhLaUpVZ1J5WklrV3ZWVTFBTTJWUzlx?=
 =?utf-8?B?U3hZdTZQNWcxM0F2QWlaSTVlWXNCSlNsaFFNVG5oSmxEQWFvdHZTUkl0bFI3?=
 =?utf-8?B?MGZDbThvVFBkaHNleXlWcDBaZ0xjc3BWQkNwTFZSSHd0ak5PdnVqKzF1Y1hv?=
 =?utf-8?B?WEdOSmR4bm1VQmpWVEhjbThGNm1BRmhqakRHcEdFdTZtZXVMRzZSUGdDWjBX?=
 =?utf-8?B?NGpRRjhSd21wK2pLZi93Nm5EZHFSMGloT2FFVDlES2d3WGY1M0dYM3lGVkhY?=
 =?utf-8?B?OE9VOWpXRmtESFRjd3VBbnFKaUpHK2lBUUl0R1RtT3ZoYm0raHM0aDBZK0Zx?=
 =?utf-8?B?RkhtYXIyZ0lieXIvUHB2TmVESmlwUm9iS1hUdnMzdXJoTm80bDd5bDRsRElK?=
 =?utf-8?B?Z3NzRmF2UmdFN2s0cFV1VHRPdU9Db2x5Z0NIK1ZuUlBYL1AzdlJQTkp6UHpv?=
 =?utf-8?B?bXltQkdFQktNMHlSS1FxYjE1WnZOd2E5WFFTdG9LWmpyd3c2cm42WWJpcGtG?=
 =?utf-8?B?R2hMU3hOa1pLNWdTdUNhK1NiS2lZWDUwV0xsQVA0eUhBWldna1grWW1Zdkln?=
 =?utf-8?B?UjB3WXpkWG5zNTVzL2N4N0QrM0VjcHNvZVFML3BpM0djMEFrcnZGdkdDdVZy?=
 =?utf-8?B?a3pENFQ1MTE2eWNPeWpTTVdmUVE3SXFmcmNCaHhCMHJCbStBRUt0TndIMEt2?=
 =?utf-8?B?cVFqUTN0bVFzRWRXUWtpRjM3a09DR05MZldPSDVoWDQvUEw3d3ZpK3p5aEo5?=
 =?utf-8?B?NDNmR3N0eEZITVFLNjBxdjZ3eURRbXdkN2xrZE40VnRzMjdSQzlMRGs4TVdQ?=
 =?utf-8?B?NUlXMmFaejR5eHNFaG53NXFIcEIrMWFQRnNsTWJTZit2QzBtUlJEbzNxcS9k?=
 =?utf-8?B?Z0l3Nk41UXlzS2xnQnRSK2VVNVVPdEtQWWljakE0cm94T3RKUmtVUWxEaGdC?=
 =?utf-8?B?ZGlRV3g0enlNNDRwTTZzWWQxY2VScUowUEwzcVFjUkR0ajYrZVlGamVhc0ZF?=
 =?utf-8?B?ZWM5ZUNDMDV3L3FTZC9nbG1zNWJmam5FNW9vUm4xbm1ocXBtWk52dUFlTS94?=
 =?utf-8?B?azB5WFROVGdHek5CaUQrZmJLOG1keEhJcEJwRzE5VUJ4elBrUGNXZFplWjBx?=
 =?utf-8?B?UWFkVVMrakhjS0k4RlRkcE9mcHRjSGk5M2M0S1h3Wmp6VVFsK1k3OHhwVEY0?=
 =?utf-8?B?Y1ZmemtpQnM4eTQ1cUd5MVpsSE1NZHkzaEV6M3FXaVRkV3ZUYWVCTDJ0SVJa?=
 =?utf-8?B?UTNnc2JQTGhBWHZzV1hvaGs5U2xtS3huTlMzaHJjTHJEbEtKKzBNbSs0RkhX?=
 =?utf-8?B?Q1g1K3VIUUkva05iS1pXYVg5SWd1TWdpbVF1L3hsUk9WcmEzR243eExWN0RS?=
 =?utf-8?B?YWZyM1U0V2JKT2d2YkRWaUJxY1l2WE1IU0V0Sm1ZQW83aXhVZi92VWlEMm9V?=
 =?utf-8?B?aTJWZlVJVEJiVU9nYzRsTkd0VlRvdXMrZ3pQZnBxT0VDbG1VWUd6K3RWSGNm?=
 =?utf-8?B?enhPazRHNW5oQzQzdUE5aGJwcGZuZUNCSWpyQXJpSCtqbFdWTEJ4UFlBSWJH?=
 =?utf-8?B?QWNURWhQd0JrWjloRUhnZVdYOU85cGZsWUQrdzRuai9jaWZlWEtwUFkwRi9z?=
 =?utf-8?B?UzAvVHJ0WmpZMFRjRzNtNUhOSDRQM1NET2EvdzBBMDlIVGpxc3oya1djdVJ1?=
 =?utf-8?B?R1E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	EdeVoiMszbZZVlnJsdbpugld8r03ZLy6IhnjFXDw2BfioimTWz5EbSWTIjuyvVC7MaAoJ+fBqOY25fofdE36pXG7zzz4YTaAKBAqahKMYnPlAeKGI8/6iaevl8+3n5Lu3Bfucd/XEPrthCpbml8NhYqfkP6RNf3+QlVjEtqthg/+UTLDrxbtUwhmBQ+6T9XJI0laYaEQqPeftYT3OJuiAYhoql2p8VIDGPIiQhjjy1gAtDIv5qY6KiILOcKrCGFoOzNqydyUto3V9AzKqm5Qm3xogWhpbPKDCrbK2NZ3H9meWjnEqrUHrYkgLk317nxHLbzpzWlwobGkUZzfAuvJZukcqaIdLIZqpbJMT0KpfM9b3bw5nPcOD0mmGSYTLXtadHz1dLWLGFfH1yFDeS8P5GE0Y/ASdzfrb6PHwKkuvkBExLMQAqcPJp0IDrQuYsW/SuZ+wBypWGAKykUzLbq1rpUxhgNqjbDBDVZ4rpfLL/puSVHGwGV3Q39D+XrP4+w0bVA2y/aoRWu5PVyN2Ypgym1jXc9hPyIaRntGUOpBGPiE8k53J1XfXlO++JPiT5udPxDalF6NnrIB+iO3QojL4bvlYFrT+7Ui9gckPjBR/pBjJun3J4NiEttTnz2SY90S2TaBgBqvLK+fgpNHXNZJLF/oy7yR2yVL24urlLHwIbEGaM4VYawvuQaVZ7NRh/PsTPGzy1axB9y5h8aQ4xnIXxfnhN1Awuce9DivjC7znhcjaovmTerpANdBp2SQ+6bK9y0bGZyxE0qyWH8EtOEpIo8L3kaPZP2X+YNUsl2P6ZQk958o6ICtMnhsDwjSRCjic54EzgpKsG/Hxsz3Fo+qFNqJfVHfXrcve4izNOFb3pSz2vArYkTmHiGkFTRA8JkkPnMmM2M0VrR/mPHFXZj5Gg==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 62e07ffc-2f60-482d-8e86-08dbbf61420b
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 13:54:24.6607
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ddoFNKU3ZVRH3DckFpwU/rUtLJMJg4APYd1l1HZGg2vthW+lXWe4+ONpz5yGFQqXx8hhCucMkAdJv400msSDeA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7485

On Wed, Sep 27, 2023 at 07:43:26AM -0400, Tamas K Lengyel wrote:
> On Wed, Sep 27, 2023 at 7:08 AM Roger Pau Monné <roger.pau@citrix.com> wrote:
> >
> > On Wed, May 03, 2023 at 05:56:46PM +0200, Jan Beulich wrote:
> > > In preparation of the introduction of new vCPU operations allowing to
> > > register the respective areas (one of the two is x86-specific) by
> > > guest-physical address, add the necessary fork handling (with the
> > > backing function yet to be filled in).
> > >
> > > Signed-off-by: Jan Beulich <jbeulich@suse.com>
> >
> > Given the very limited and specific usage of the current Xen forking
> > code, do we really need to bother about copying such areas?
> >
> > IOW: I doubt that not updating the runstate/time areas will make any
> > difference to the forking code ATM.
> 
> The current implementation of forking allows for fully functional VM
> forks to be setup, including launching the dm for them. The toolstack
> side hasn't been merged for that into Xen but that doesn't mean it's
> not available or used already. So any internal changes to Xen that
> create guest-states that could potentially be interacted with and
> relied on by a guest should get properly wired in for forking. So I'm
> happy Jan took the initiative here for wiring this up, even if the
> use-case seems niche.

But there are still some bits missing in Xen, seeing the comment in
copy_vcpu_settings().  If we don't copy the timers already then I'm
unsure whether copying the runstate/time shared areas is very
relevant.

> >
> > > ---
> > > v3: Extend comment.
> > >
> > > --- a/xen/arch/x86/mm/mem_sharing.c
> > > +++ b/xen/arch/x86/mm/mem_sharing.c
> > > @@ -1641,6 +1641,68 @@ static void copy_vcpu_nonreg_state(struc
> > >      hvm_set_nonreg_state(cd_vcpu, &nrs);
> > >  }
> > >
> > > +static int copy_guest_area(struct guest_area *cd_area,
> > > +                           const struct guest_area *d_area,
> > > +                           struct vcpu *cd_vcpu,
> > > +                           const struct domain *d)
> > > +{
> > > +    mfn_t d_mfn, cd_mfn;
> > > +
> > > +    if ( !d_area->pg )
> > > +        return 0;
> > > +
> > > +    d_mfn = page_to_mfn(d_area->pg);
> > > +
> > > +    /* Allocate & map a page for the area if it hasn't been already. */
> > > +    if ( !cd_area->pg )
> > > +    {
> > > +        gfn_t gfn = mfn_to_gfn(d, d_mfn);
> > > +        struct p2m_domain *p2m = p2m_get_hostp2m(cd_vcpu->domain);
> > > +        p2m_type_t p2mt;
> > > +        p2m_access_t p2ma;
> > > +        unsigned int offset;
> > > +        int ret;
> > > +
> > > +        cd_mfn = p2m->get_entry(p2m, gfn, &p2mt, &p2ma, 0, NULL, NULL);
> > > +        if ( mfn_eq(cd_mfn, INVALID_MFN) )
> > > +        {
> > > +            struct page_info *pg = alloc_domheap_page(cd_vcpu->domain, 0);
> > > +
> > > +            if ( !pg )
> > > +                return -ENOMEM;
> > > +
> > > +            cd_mfn = page_to_mfn(pg);
> > > +            set_gpfn_from_mfn(mfn_x(cd_mfn), gfn_x(gfn));
> > > +
> > > +            ret = p2m->set_entry(p2m, gfn, cd_mfn, PAGE_ORDER_4K, p2m_ram_rw,
> > > +                                 p2m->default_access, -1);
> > > +            if ( ret )
> > > +                return ret;
> > > +        }
> > > +        else if ( p2mt != p2m_ram_rw )
> > > +            return -EBUSY;
> >
> > Shouldn't the populate of the underlying gfn in the fork case
> > be done by map_guest_area itself?
> 
> Would seem more logical, I agree, but then the call should be
> map_guest_area first, which conditionally calls down into a
> mem_sharing_copy_guest_area if the domain is a fork.
> 
> >
> > What if a forked guest attempts to register a new runstate/time info
> > against an address not yet populated?
> 
> Unpopulated memory will get forked from the parent for all access
> paths currently in existence, including access to a forked VMs memory
> from dom0/dm and the various internal Xen access paths. If the memory
> range is not mapped in the parent registering on that range ought to
> fail by I assume existing checks that validate that the memory is
> present during registration.

What I'm trying to say is that map_guest_area() already has to deal
with forked guests, and hence the populating of the gfn shouldn't be
needed as map_guest_area() must know how to deal with such guest
anyway.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:01:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:01:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608947.947776 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlV6p-0006ek-J9; Wed, 27 Sep 2023 14:01:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608947.947776; Wed, 27 Sep 2023 14:01:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlV6p-0006ed-Ff; Wed, 27 Sep 2023 14:01:47 +0000
Received: by outflank-mailman (input) for mailman id 608947;
 Wed, 27 Sep 2023 14:01:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Xec+=FL=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qlV6n-0006dA-NW
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 14:01:45 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 632b755b-5d3e-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 16:01:43 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 668BE1FB;
 Wed, 27 Sep 2023 07:02:20 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.arm.com [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 70EB83F59C;
 Wed, 27 Sep 2023 07:01:41 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 632b755b-5d3e-11ee-9b0d-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v2 0/5] Fine granular configuration
Date: Wed, 27 Sep 2023 15:01:28 +0100
Message-Id: <20230927140133.631192-1-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This serie aims to add more modularity to some feature that can be excluded
without issues from the build.

The first patch is already reviewed.

v2 update: So I've tried to see how to put the dom0less code in the common code,
but the amount of modifications are not trivial, even putting only the common
part and protecting them with ARM, leaving the ARM specific stuff under arch/
like gic etc... will leave a status that is not very nice, so I've decided for
now to keep everything on the arm architecture so that who is going to work
on unifying the code in common can just take from there and do the proper
rework.

This serie is not targeting 4.18.

Luca Fancellu (5):
  arm/gicv2: make GICv2 driver and vGICv2 optional
  xen/arm: Add asm/domain.h include to kernel.h
  arm/dom0less: put dom0less feature code in a separate module
  xen/arm: Move static memory build code in separate modules
  arm/dom0less: introduce Kconfig for dom0less feature

 xen/arch/arm/Kconfig                      |   28 +
 xen/arch/arm/Makefile                     |    7 +-
 xen/arch/arm/bootfdt.c                    |  161 +-
 xen/arch/arm/dom0less-build.c             | 1087 ++++++
 xen/arch/arm/domain_build.c               | 3676 ++++++---------------
 xen/arch/arm/efi/efi-boot.h               |    4 +
 xen/arch/arm/gic-v3.c                     |    4 +
 xen/arch/arm/include/asm/dom0less-build.h |   35 +
 xen/arch/arm/include/asm/domain_build.h   |   34 +
 xen/arch/arm/include/asm/kernel.h         |    1 +
 xen/arch/arm/include/asm/setup.h          |    1 -
 xen/arch/arm/include/asm/static-memory.h  |   50 +
 xen/arch/arm/include/asm/static-shmem.h   |   72 +
 xen/arch/arm/setup.c                      |   58 +-
 xen/arch/arm/static-memory.c              |  294 ++
 xen/arch/arm/static-shmem.c               |  515 +++
 xen/arch/arm/vgic.c                       |    2 +
 xen/arch/arm/vgic/Makefile                |    4 +-
 18 files changed, 3149 insertions(+), 2884 deletions(-)
 create mode 100644 xen/arch/arm/dom0less-build.c
 create mode 100644 xen/arch/arm/include/asm/dom0less-build.h
 create mode 100644 xen/arch/arm/include/asm/static-memory.h
 create mode 100644 xen/arch/arm/include/asm/static-shmem.h
 create mode 100644 xen/arch/arm/static-memory.c
 create mode 100644 xen/arch/arm/static-shmem.c

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:01:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:01:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608949.947788 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlV6q-0006u8-AN; Wed, 27 Sep 2023 14:01:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608949.947788; Wed, 27 Sep 2023 14:01:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlV6q-0006r2-5q; Wed, 27 Sep 2023 14:01:48 +0000
Received: by outflank-mailman (input) for mailman id 608949;
 Wed, 27 Sep 2023 14:01:47 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Xec+=FL=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qlV6p-0006dA-0D
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 14:01:47 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 649554e8-5d3e-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 16:01:45 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id B98BB11FB;
 Wed, 27 Sep 2023 07:02:22 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.arm.com [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C45953F7C5;
 Wed, 27 Sep 2023 07:01:43 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 649554e8-5d3e-11ee-9b0d-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v2 2/5] xen/arm: Add asm/domain.h include to kernel.h
Date: Wed, 27 Sep 2023 15:01:30 +0100
Message-Id: <20230927140133.631192-3-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230927140133.631192-1-luca.fancellu@arm.com>
References: <20230927140133.631192-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The 'enum domain_type' is defined by 'asm/domain.h' which is not
included (directly or indirectly) by 'asm/kernel.h'.

This currently doesn't break the compilation because asm/domain.h will
included by the user of 'kernel.h'. But it would be better to avoid
relying on it. So add the include in 'asm/domain.h'.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
Changes from v1:
 - Rephrased commit message (Julien)
---
 xen/arch/arm/include/asm/kernel.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/xen/arch/arm/include/asm/kernel.h b/xen/arch/arm/include/asm/kernel.h
index 4617cdc83bac..0a23e86c2d37 100644
--- a/xen/arch/arm/include/asm/kernel.h
+++ b/xen/arch/arm/include/asm/kernel.h
@@ -7,6 +7,7 @@
 #define __ARCH_ARM_KERNEL_H__
 
 #include <xen/device_tree.h>
+#include <asm/domain.h>
 #include <asm/setup.h>
 
 /*
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:01:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:01:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608948.947780 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlV6p-0006hR-Qu; Wed, 27 Sep 2023 14:01:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608948.947780; Wed, 27 Sep 2023 14:01:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlV6p-0006gM-MS; Wed, 27 Sep 2023 14:01:47 +0000
Received: by outflank-mailman (input) for mailman id 608948;
 Wed, 27 Sep 2023 14:01:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Xec+=FL=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qlV6o-0006eS-Dy
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 14:01:46 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 63f97ad7-5d3e-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 16:01:44 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id AAB1ADA7;
 Wed, 27 Sep 2023 07:02:21 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.arm.com [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 81FC13F7C5;
 Wed, 27 Sep 2023 07:01:42 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 63f97ad7-5d3e-11ee-878a-cb3800f73035
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Julien Grall <jgrall@amazon.com>,
	Michal Orzel <michal.orzel@amd.com>
Subject: [PATCH v2 1/5] arm/gicv2: make GICv2 driver and vGICv2 optional
Date: Wed, 27 Sep 2023 15:01:29 +0100
Message-Id: <20230927140133.631192-2-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230927140133.631192-1-luca.fancellu@arm.com>
References: <20230927140133.631192-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Introduce Kconfig GICV2 to be able to compile the GICv2 driver only
when needed, the option is active by default.

Introduce Kconfig VGICV2 that compiles the Generic Interrupt
Controller v2 emulation for domains, it is required only when using
GICv2 driver, otherwise using the GICv3 driver it is optional and can
be deselected if the user doesn't want to offer the v2 emulation to
domains or maybe its GICv3 hardware can't offer the GICv2 compatible
mode.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
Reviewed-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
---
 xen/arch/arm/Kconfig        | 19 +++++++++++++++++++
 xen/arch/arm/Makefile       |  4 ++--
 xen/arch/arm/domain_build.c |  4 ++++
 xen/arch/arm/gic-v3.c       |  4 ++++
 xen/arch/arm/vgic.c         |  2 ++
 xen/arch/arm/vgic/Makefile  |  4 ++--
 6 files changed, 33 insertions(+), 4 deletions(-)

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 632dd9792e3c..8dc704e802bc 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -81,6 +81,14 @@ config ARM_EFI
 	  UEFI firmware. A UEFI stub is provided to allow Xen to
 	  be booted as an EFI application.
 
+config GICV2
+	bool "GICv2 driver"
+	default y
+	select VGICV2
+	help
+	  Driver for the ARM Generic Interrupt Controller v2.
+	  If unsure, say Y
+
 config GICV3
 	bool "GICv3 driver"
 	depends on !NEW_VGIC
@@ -100,11 +108,22 @@ config OVERLAY_DTB
 	help
 	  Dynamic addition/removal of Xen device tree nodes using a dtbo.
 
+config VGICV2
+	bool "vGICv2 interface for domains"
+	default y
+	help
+	  Allow Xen to expose a Generic Interrupt Controller version 2 like to Xen
+	  domains. This can be configured at the domain creation.
+	  This option is mandatory when using GICv2.
+	  For GICv3, this allows domain to use GICv2 when the hardware supports it.
+	  If unsure say Y.
+
 config HVM
         def_bool y
 
 config NEW_VGIC
 	bool "Use new VGIC implementation"
+	select GICV2
 	---help---
 
 	This is an alternative implementation of the ARM GIC interrupt
diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile
index 7bf07e992046..81c31c36fc3d 100644
--- a/xen/arch/arm/Makefile
+++ b/xen/arch/arm/Makefile
@@ -22,7 +22,7 @@ obj-y += domctl.o
 obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
 obj-y += efi/
 obj-y += gic.o
-obj-y += gic-v2.o
+obj-$(CONFIG_GICV2) += gic-v2.o
 obj-$(CONFIG_GICV3) += gic-v3.o
 obj-$(CONFIG_HAS_ITS) += gic-v3-its.o
 obj-$(CONFIG_HAS_ITS) += gic-v3-lpi.o
@@ -57,7 +57,7 @@ obj-$(CONFIG_NEW_VGIC) += vgic/
 ifneq ($(CONFIG_NEW_VGIC),y)
 obj-y += gic-vgic.o
 obj-y += vgic.o
-obj-y += vgic-v2.o
+obj-$(CONFIG_VGICV2) += vgic-v2.o
 obj-$(CONFIG_GICV3) += vgic-v3.o
 obj-$(CONFIG_HAS_ITS) += vgic-v3-its.o
 endif
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 24c9019cc43c..f69f238ccea4 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -2490,6 +2490,7 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
     return res;
 }
 
+#ifdef CONFIG_VGICV2
 static int __init make_gicv2_domU_node(struct kernel_info *kinfo)
 {
     void *fdt = kinfo->fdt;
@@ -2541,6 +2542,7 @@ static int __init make_gicv2_domU_node(struct kernel_info *kinfo)
 
     return res;
 }
+#endif
 
 #ifdef CONFIG_GICV3
 static int __init make_gicv3_domU_node(struct kernel_info *kinfo)
@@ -2616,8 +2618,10 @@ static int __init make_gic_domU_node(struct kernel_info *kinfo)
     case GIC_V3:
         return make_gicv3_domU_node(kinfo);
 #endif
+#ifdef CONFIG_VGICV2
     case GIC_V2:
         return make_gicv2_domU_node(kinfo);
+#endif
     default:
         panic("Unsupported GIC version\n");
     }
diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
index 95e4f020febe..d18a3317ccc4 100644
--- a/xen/arch/arm/gic-v3.c
+++ b/xen/arch/arm/gic-v3.c
@@ -1334,6 +1334,7 @@ static paddr_t __initdata dbase = INVALID_PADDR;
 static paddr_t __initdata vbase = INVALID_PADDR, vsize = 0;
 static paddr_t __initdata cbase = INVALID_PADDR, csize = 0;
 
+#ifdef CONFIG_VGICV2
 /* If the GICv3 supports GICv2, initialize it */
 static void __init gicv3_init_v2(void)
 {
@@ -1359,6 +1360,9 @@ static void __init gicv3_init_v2(void)
 
     vgic_v2_setup_hw(dbase, cbase, csize, vbase, 0);
 }
+#else
+static inline void gicv3_init_v2(void) { }
+#endif
 
 static void __init gicv3_ioremap_distributor(paddr_t dist_paddr)
 {
diff --git a/xen/arch/arm/vgic.c b/xen/arch/arm/vgic.c
index f6b49766f97a..c04fc4f83f96 100644
--- a/xen/arch/arm/vgic.c
+++ b/xen/arch/arm/vgic.c
@@ -96,10 +96,12 @@ int domain_vgic_register(struct domain *d, unsigned int *mmio_count)
            return -ENODEV;
         break;
 #endif
+#ifdef CONFIG_VGICV2
     case GIC_V2:
         if ( vgic_v2_init(d, mmio_count) )
             return -ENODEV;
         break;
+#endif
     default:
         printk(XENLOG_G_ERR "d%d: Unknown vGIC version %u\n",
                d->domain_id, d->arch.vgic.version);
diff --git a/xen/arch/arm/vgic/Makefile b/xen/arch/arm/vgic/Makefile
index 806826948e20..60cbf7f2f94a 100644
--- a/xen/arch/arm/vgic/Makefile
+++ b/xen/arch/arm/vgic/Makefile
@@ -1,5 +1,5 @@
 obj-y += vgic.o
-obj-y += vgic-v2.o
+obj-$(CONFIG_VGICV2) += vgic-v2.o
 obj-y += vgic-mmio.o
-obj-y += vgic-mmio-v2.o
+obj-$(CONFIG_VGICV2) += vgic-mmio-v2.o
 obj-y += vgic-init.o
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:01:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:01:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608950.947806 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlV6t-0007Q1-It; Wed, 27 Sep 2023 14:01:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608950.947806; Wed, 27 Sep 2023 14:01:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlV6t-0007Po-FL; Wed, 27 Sep 2023 14:01:51 +0000
Received: by outflank-mailman (input) for mailman id 608950;
 Wed, 27 Sep 2023 14:01:50 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Xec+=FL=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qlV6s-0006dA-5c
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 14:01:50 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTP
 id 6566619c-5d3e-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 16:01:46 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 2731E1FB;
 Wed, 27 Sep 2023 07:02:24 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.arm.com [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id D744C3F59C;
 Wed, 27 Sep 2023 07:01:44 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6566619c-5d3e-11ee-9b0d-b553b5be7939
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v2 3/5] arm/dom0less: put dom0less feature code in a separate module
Date: Wed, 27 Sep 2023 15:01:31 +0100
Message-Id: <20230927140133.631192-4-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230927140133.631192-1-luca.fancellu@arm.com>
References: <20230927140133.631192-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Currently the dom0less feature code is mostly inside domain_build.c
and setup.c, it is a feature that may not be useful to everyone so
put the code in a different compilation module in order to make it
easier to disable the feature in the future.

Move gic_interrupt_t in domain_build.h to use it with the function
declaration, move its comment above the declaration.

The following functions are now visible externally from domain_build
because they are used also from the dom0less-build module:
 - get_allocation_size
 - set_interrupt
 - domain_fdt_begin_node
 - make_memory_node
 - make_resv_memory_node
 - make_hypervisor_node
 - make_psci_node
 - make_cpus_node
 - make_timer_node
 - handle_device_interrupts
 - construct_domain
 - process_shm

The functions allocate_static_memory and assign_static_memory_11
are now externally visible, so put their declarations into
domain_build.h and move the #else and stub definition in the header
as well.

Move is_dom0less_mode from setup.c to dom0less-build.c and make it
externally visible.

Where spotted, fix code style issues.

No functional change is intended.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 xen/arch/arm/Makefile                     |    1 +
 xen/arch/arm/dom0less-build.c             | 1087 ++++++++++++++++++
 xen/arch/arm/domain_build.c               | 1276 ++-------------------
 xen/arch/arm/include/asm/dom0less-build.h |   25 +
 xen/arch/arm/include/asm/domain_build.h   |   58 +
 xen/arch/arm/include/asm/setup.h          |    1 -
 xen/arch/arm/setup.c                      |   33 +-
 7 files changed, 1288 insertions(+), 1193 deletions(-)
 create mode 100644 xen/arch/arm/dom0less-build.c
 create mode 100644 xen/arch/arm/include/asm/dom0less-build.h

diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile
index 81c31c36fc3d..70dd7201ef30 100644
--- a/xen/arch/arm/Makefile
+++ b/xen/arch/arm/Makefile
@@ -15,6 +15,7 @@ obj-y += cpufeature.o
 obj-y += decode.o
 obj-y += device.o
 obj-$(CONFIG_IOREQ_SERVER) += dm.o
+obj-y += dom0less-build.init.o
 obj-y += domain.o
 obj-y += domain_build.init.o
 obj-$(CONFIG_ARCH_MAP_DOMAIN_PAGE) += domain_page.o
diff --git a/xen/arch/arm/dom0less-build.c b/xen/arch/arm/dom0less-build.c
new file mode 100644
index 000000000000..dc9c90cf00a7
--- /dev/null
+++ b/xen/arch/arm/dom0less-build.c
@@ -0,0 +1,1087 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * xen/arch/arm/dom0less-build.c
+ *
+ * Code related to the dom0less functionality
+ *
+ * Copyright (C) 2023 Arm Ltd.
+ */
+
+#include <xen/device_tree.h>
+#include <xen/err.h>
+#include <xen/event.h>
+#include <xen/grant_table.h>
+#include <xen/iocap.h>
+#include <xen/libfdt/libfdt.h>
+#include <xen/sched.h>
+#include <xen/serial.h>
+#include <xen/sizes.h>
+#include <xen/vmap.h>
+
+#include <asm/arm64/sve.h>
+#include <asm/dom0less-build.h>
+#include <asm/domain_build.h>
+
+bool __init is_dom0less_mode(void)
+{
+    struct bootmodules *mods = &bootinfo.modules;
+    struct bootmodule *mod;
+    unsigned int i;
+    bool dom0found = false;
+    bool domUfound = false;
+
+    /* Look into the bootmodules */
+    for ( i = 0 ; i < mods->nr_mods ; i++ )
+    {
+        mod = &mods->module[i];
+        /* Find if dom0 and domU kernels are present */
+        if ( mod->kind == BOOTMOD_KERNEL )
+        {
+            if ( mod->domU == false )
+            {
+                dom0found = true;
+                break;
+            }
+            else
+                domUfound = true;
+        }
+    }
+
+    /*
+     * If there is no dom0 kernel but at least one domU, then we are in
+     * dom0less mode
+     */
+    return ( !dom0found && domUfound );
+}
+
+static bool __init allocate_bank_memory(struct domain *d,
+                                        struct kernel_info *kinfo,
+                                        gfn_t sgfn,
+                                        paddr_t tot_size)
+{
+    int res;
+    struct page_info *pg;
+    struct membank *bank;
+    unsigned int max_order = ~0;
+
+    /*
+     * allocate_bank_memory can be called with a tot_size of zero for
+     * the second memory bank. It is not an error and we can safely
+     * avoid creating a zero-size memory bank.
+     */
+    if ( tot_size == 0 )
+        return true;
+
+    bank = &kinfo->mem.bank[kinfo->mem.nr_banks];
+    bank->start = gfn_to_gaddr(sgfn);
+    bank->size = tot_size;
+
+    while ( tot_size > 0 )
+    {
+        unsigned int order = get_allocation_size(tot_size);
+
+        order = min(max_order, order);
+
+        pg = alloc_domheap_pages(d, order, 0);
+        if ( !pg )
+        {
+            /*
+             * If we can't allocate one page, then it is unlikely to
+             * succeed in the next iteration. So bail out.
+             */
+            if ( !order )
+                return false;
+
+            /*
+             * If we can't allocate memory with order, then it is
+             * unlikely to succeed in the next iteration.
+             * Record the order - 1 to avoid re-trying.
+             */
+            max_order = order - 1;
+            continue;
+        }
+
+        res = guest_physmap_add_page(d, sgfn, page_to_mfn(pg), order);
+        if ( res )
+        {
+            dprintk(XENLOG_ERR, "Failed map pages to DOMU: %d", res);
+            return false;
+        }
+
+        sgfn = gfn_add(sgfn, 1UL << order);
+        tot_size -= (1ULL << (PAGE_SHIFT + order));
+    }
+
+    kinfo->mem.nr_banks++;
+    kinfo->unassigned_mem -= bank->size;
+
+    return true;
+}
+
+static void __init allocate_memory(struct domain *d, struct kernel_info *kinfo)
+{
+    unsigned int i;
+    paddr_t bank_size;
+
+    printk(XENLOG_INFO "Allocating mappings totalling %ldMB for %pd:\n",
+           /* Don't want format this as PRIpaddr (16 digit hex) */
+           (unsigned long)(kinfo->unassigned_mem >> 20), d);
+
+    kinfo->mem.nr_banks = 0;
+    bank_size = MIN(GUEST_RAM0_SIZE, kinfo->unassigned_mem);
+    if ( !allocate_bank_memory(d, kinfo, gaddr_to_gfn(GUEST_RAM0_BASE),
+                               bank_size) )
+        goto fail;
+
+    bank_size = MIN(GUEST_RAM1_SIZE, kinfo->unassigned_mem);
+    if ( !allocate_bank_memory(d, kinfo, gaddr_to_gfn(GUEST_RAM1_BASE),
+                               bank_size) )
+        goto fail;
+
+    if ( kinfo->unassigned_mem )
+        goto fail;
+
+    for( i = 0; i < kinfo->mem.nr_banks; i++ )
+    {
+        printk(XENLOG_INFO "%pd BANK[%d] %#"PRIpaddr"-%#"PRIpaddr" (%ldMB)\n",
+               d,
+               i,
+               kinfo->mem.bank[i].start,
+               kinfo->mem.bank[i].start + kinfo->mem.bank[i].size,
+               /* Don't want format this as PRIpaddr (16 digit hex) */
+               (unsigned long)(kinfo->mem.bank[i].size >> 20));
+    }
+
+    return;
+
+fail:
+    panic("Failed to allocate requested domain memory."
+          /* Don't want format this as PRIpaddr (16 digit hex) */
+          " %ldKB unallocated. Fix the VMs configurations.\n",
+          (unsigned long)kinfo->unassigned_mem >> 10);
+}
+
+#ifdef CONFIG_VGICV2
+static int __init make_gicv2_domU_node(struct kernel_info *kinfo)
+{
+    void *fdt = kinfo->fdt;
+    int res = 0;
+    __be32 reg[(GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS) * 2];
+    __be32 *cells;
+    const struct domain *d = kinfo->d;
+
+    res = domain_fdt_begin_node(fdt, "interrupt-controller",
+                                vgic_dist_base(&d->arch.vgic));
+    if ( res )
+        return res;
+
+    res = fdt_property_cell(fdt, "#address-cells", 0);
+    if ( res )
+        return res;
+
+    res = fdt_property_cell(fdt, "#interrupt-cells", 3);
+    if ( res )
+        return res;
+
+    res = fdt_property(fdt, "interrupt-controller", NULL, 0);
+    if ( res )
+        return res;
+
+    res = fdt_property_string(fdt, "compatible", "arm,gic-400");
+    if ( res )
+        return res;
+
+    cells = &reg[0];
+    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
+                       vgic_dist_base(&d->arch.vgic), GUEST_GICD_SIZE);
+    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
+                       vgic_cpu_base(&d->arch.vgic), GUEST_GICC_SIZE);
+
+    res = fdt_property(fdt, "reg", reg, sizeof(reg));
+    if (res)
+        return res;
+
+    res = fdt_property_cell(fdt, "linux,phandle", kinfo->phandle_gic);
+    if (res)
+        return res;
+
+    res = fdt_property_cell(fdt, "phandle", kinfo->phandle_gic);
+    if (res)
+        return res;
+
+    res = fdt_end_node(fdt);
+
+    return res;
+}
+#endif
+
+#ifdef CONFIG_GICV3
+static int __init make_gicv3_domU_node(struct kernel_info *kinfo)
+{
+    void *fdt = kinfo->fdt;
+    int res = 0;
+    __be32 *reg, *cells;
+    const struct domain *d = kinfo->d;
+    unsigned int i, len = 0;
+
+    res = domain_fdt_begin_node(fdt, "interrupt-controller",
+                                vgic_dist_base(&d->arch.vgic));
+    if ( res )
+        return res;
+
+    res = fdt_property_cell(fdt, "#address-cells", 0);
+    if ( res )
+        return res;
+
+    res = fdt_property_cell(fdt, "#interrupt-cells", 3);
+    if ( res )
+        return res;
+
+    res = fdt_property(fdt, "interrupt-controller", NULL, 0);
+    if ( res )
+        return res;
+
+    res = fdt_property_string(fdt, "compatible", "arm,gic-v3");
+    if ( res )
+        return res;
+
+    /* reg specifies all re-distributors and Distributor. */
+    len = (GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS) *
+          (d->arch.vgic.nr_regions + 1) * sizeof(__be32);
+    reg = xmalloc_bytes(len);
+    if ( reg == NULL )
+        return -ENOMEM;
+    cells = reg;
+
+    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
+                       vgic_dist_base(&d->arch.vgic), GUEST_GICV3_GICD_SIZE);
+
+    for ( i = 0; i < d->arch.vgic.nr_regions; i++ )
+        dt_child_set_range(&cells,
+                           GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
+                           d->arch.vgic.rdist_regions[i].base,
+                           d->arch.vgic.rdist_regions[i].size);
+
+    res = fdt_property(fdt, "reg", reg, len);
+    xfree(reg);
+    if (res)
+        return res;
+
+    res = fdt_property_cell(fdt, "linux,phandle", kinfo->phandle_gic);
+    if (res)
+        return res;
+
+    res = fdt_property_cell(fdt, "phandle", kinfo->phandle_gic);
+    if (res)
+        return res;
+
+    res = fdt_end_node(fdt);
+
+    return res;
+}
+#endif
+
+static int __init make_gic_domU_node(struct kernel_info *kinfo)
+{
+    switch ( kinfo->d->arch.vgic.version )
+    {
+#ifdef CONFIG_GICV3
+    case GIC_V3:
+        return make_gicv3_domU_node(kinfo);
+#endif
+#ifdef CONFIG_VGICV2
+    case GIC_V2:
+        return make_gicv2_domU_node(kinfo);
+#endif
+    default:
+        panic("Unsupported GIC version\n");
+    }
+}
+
+#ifdef CONFIG_SBSA_VUART_CONSOLE
+static int __init make_vpl011_uart_node(struct kernel_info *kinfo)
+{
+    void *fdt = kinfo->fdt;
+    int res;
+    gic_interrupt_t intr;
+    __be32 reg[GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS];
+    __be32 *cells;
+    struct domain *d = kinfo->d;
+
+    res = domain_fdt_begin_node(fdt, "sbsa-uart", d->arch.vpl011.base_addr);
+    if ( res )
+        return res;
+
+    res = fdt_property_string(fdt, "compatible", "arm,sbsa-uart");
+    if ( res )
+        return res;
+
+    cells = &reg[0];
+    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS,
+                       GUEST_ROOT_SIZE_CELLS, d->arch.vpl011.base_addr,
+                       GUEST_PL011_SIZE);
+
+    res = fdt_property(fdt, "reg", reg, sizeof(reg));
+    if ( res )
+        return res;
+
+    set_interrupt(intr, d->arch.vpl011.virq, 0xf, DT_IRQ_TYPE_LEVEL_HIGH);
+
+    res = fdt_property(fdt, "interrupts", intr, sizeof (intr));
+    if ( res )
+        return res;
+
+    res = fdt_property_cell(fdt, "interrupt-parent",
+                            kinfo->phandle_gic);
+    if ( res )
+        return res;
+
+    /* Use a default baud rate of 115200. */
+    fdt_property_u32(fdt, "current-speed", 115200);
+
+    res = fdt_end_node(fdt);
+    if ( res )
+        return res;
+
+    return 0;
+}
+#endif
+
+/*
+ * Scan device tree properties for passthrough specific information.
+ * Returns < 0 on error
+ *         0 on success
+ */
+static int __init handle_passthrough_prop(struct kernel_info *kinfo,
+                                          const struct fdt_property *xen_reg,
+                                          const struct fdt_property *xen_path,
+                                          bool xen_force,
+                                          uint32_t address_cells,
+                                          uint32_t size_cells)
+{
+    const __be32 *cell;
+    unsigned int i, len;
+    struct dt_device_node *node;
+    int res;
+    paddr_t mstart, size, gstart;
+
+    /* xen,reg specifies where to map the MMIO region */
+    cell = (const __be32 *)xen_reg->data;
+    len = fdt32_to_cpu(xen_reg->len) / ((address_cells * 2 + size_cells) *
+                                        sizeof(uint32_t));
+
+    for ( i = 0; i < len; i++ )
+    {
+        device_tree_get_reg(&cell, address_cells, size_cells,
+                            &mstart, &size);
+        gstart = dt_next_cell(address_cells, &cell);
+
+        if ( gstart & ~PAGE_MASK || mstart & ~PAGE_MASK || size & ~PAGE_MASK )
+        {
+            printk(XENLOG_ERR
+                   "DomU passthrough config has not page aligned addresses/sizes\n");
+            return -EINVAL;
+        }
+
+        res = iomem_permit_access(kinfo->d, paddr_to_pfn(mstart),
+                                  paddr_to_pfn(PAGE_ALIGN(mstart + size - 1)));
+        if ( res )
+        {
+            printk(XENLOG_ERR "Unable to permit to dom%d access to"
+                   " 0x%"PRIpaddr" - 0x%"PRIpaddr"\n",
+                   kinfo->d->domain_id,
+                   mstart & PAGE_MASK, PAGE_ALIGN(mstart + size) - 1);
+            return res;
+        }
+
+        res = map_regions_p2mt(kinfo->d,
+                               gaddr_to_gfn(gstart),
+                               PFN_DOWN(size),
+                               maddr_to_mfn(mstart),
+                               p2m_mmio_direct_dev);
+        if ( res < 0 )
+        {
+            printk(XENLOG_ERR
+                   "Failed to map %"PRIpaddr" to the guest at%"PRIpaddr"\n",
+                   mstart, gstart);
+            return -EFAULT;
+        }
+    }
+
+    /*
+     * If xen_force, we let the user assign a MMIO region with no
+     * associated path.
+     */
+    if ( xen_path == NULL )
+        return xen_force ? 0 : -EINVAL;
+
+    /*
+     * xen,path specifies the corresponding node in the host DT.
+     * Both interrupt mappings and IOMMU settings are based on it,
+     * as they are done based on the corresponding host DT node.
+     */
+    node = dt_find_node_by_path(xen_path->data);
+    if ( node == NULL )
+    {
+        printk(XENLOG_ERR "Couldn't find node %s in host_dt!\n",
+               (char *)xen_path->data);
+        return -EINVAL;
+    }
+
+    res = map_device_irqs_to_domain(kinfo->d, node, true, NULL);
+    if ( res < 0 )
+        return res;
+
+    res = iommu_add_dt_device(node);
+    if ( res < 0 )
+        return res;
+
+    /* If xen_force, we allow assignment of devices without IOMMU protection. */
+    if ( xen_force && !dt_device_is_protected(node) )
+        return 0;
+
+    return iommu_assign_dt_device(kinfo->d, node);
+}
+
+static int __init handle_prop_pfdt(struct kernel_info *kinfo,
+                                   const void *pfdt, int nodeoff,
+                                   uint32_t address_cells, uint32_t size_cells,
+                                   bool scan_passthrough_prop)
+{
+    void *fdt = kinfo->fdt;
+    int propoff, nameoff, res;
+    const struct fdt_property *prop, *xen_reg = NULL, *xen_path = NULL;
+    const char *name;
+    bool found, xen_force = false;
+
+    for ( propoff = fdt_first_property_offset(pfdt, nodeoff);
+          propoff >= 0;
+          propoff = fdt_next_property_offset(pfdt, propoff) )
+    {
+        if ( !(prop = fdt_get_property_by_offset(pfdt, propoff, NULL)) )
+            return -FDT_ERR_INTERNAL;
+
+        found = false;
+        nameoff = fdt32_to_cpu(prop->nameoff);
+        name = fdt_string(pfdt, nameoff);
+
+        if ( scan_passthrough_prop )
+        {
+            if ( dt_prop_cmp("xen,reg", name) == 0 )
+            {
+                xen_reg = prop;
+                found = true;
+            }
+            else if ( dt_prop_cmp("xen,path", name) == 0 )
+            {
+                xen_path = prop;
+                found = true;
+            }
+            else if ( dt_prop_cmp("xen,force-assign-without-iommu",
+                                  name) == 0 )
+            {
+                xen_force = true;
+                found = true;
+            }
+        }
+
+        /*
+         * Copy properties other than the ones above: xen,reg, xen,path,
+         * and xen,force-assign-without-iommu.
+         */
+        if ( !found )
+        {
+            res = fdt_property(fdt, name, prop->data, fdt32_to_cpu(prop->len));
+            if ( res )
+                return res;
+        }
+    }
+
+    /*
+     * Only handle passthrough properties if both xen,reg and xen,path
+     * are present, or if xen,force-assign-without-iommu is specified.
+     */
+    if ( xen_reg != NULL && (xen_path != NULL || xen_force) )
+    {
+        res = handle_passthrough_prop(kinfo, xen_reg, xen_path, xen_force,
+                                      address_cells, size_cells);
+        if ( res < 0 )
+        {
+            printk(XENLOG_ERR "Failed to assign device to %pd\n", kinfo->d);
+            return res;
+        }
+    }
+    else if ( (xen_path && !xen_reg) || (xen_reg && !xen_path && !xen_force) )
+    {
+        printk(XENLOG_ERR "xen,reg or xen,path missing for %pd\n",
+               kinfo->d);
+        return -EINVAL;
+    }
+
+    /* FDT_ERR_NOTFOUND => There is no more properties for this node */
+    return ( propoff != -FDT_ERR_NOTFOUND ) ? propoff : 0;
+}
+
+static int __init scan_pfdt_node(struct kernel_info *kinfo, const void *pfdt,
+                                 int nodeoff,
+                                 uint32_t address_cells, uint32_t size_cells,
+                                 bool scan_passthrough_prop)
+{
+    int rc = 0;
+    void *fdt = kinfo->fdt;
+    int node_next;
+
+    rc = fdt_begin_node(fdt, fdt_get_name(pfdt, nodeoff, NULL));
+    if ( rc )
+        return rc;
+
+    rc = handle_prop_pfdt(kinfo, pfdt, nodeoff, address_cells, size_cells,
+                          scan_passthrough_prop);
+    if ( rc )
+        return rc;
+
+    address_cells = device_tree_get_u32(pfdt, nodeoff, "#address-cells",
+                                        DT_ROOT_NODE_ADDR_CELLS_DEFAULT);
+    size_cells = device_tree_get_u32(pfdt, nodeoff, "#size-cells",
+                                     DT_ROOT_NODE_SIZE_CELLS_DEFAULT);
+
+    node_next = fdt_first_subnode(pfdt, nodeoff);
+    while ( node_next > 0 )
+    {
+        scan_pfdt_node(kinfo, pfdt, node_next, address_cells, size_cells,
+                       scan_passthrough_prop);
+        node_next = fdt_next_subnode(pfdt, node_next);
+    }
+
+    return fdt_end_node(fdt);
+}
+
+static int __init check_partial_fdt(void *pfdt, size_t size)
+{
+    int res;
+
+    if ( fdt_magic(pfdt) != FDT_MAGIC )
+    {
+        dprintk(XENLOG_ERR, "Partial FDT is not a valid Flat Device Tree");
+        return -EINVAL;
+    }
+
+    res = fdt_check_header(pfdt);
+    if ( res )
+    {
+        dprintk(XENLOG_ERR, "Failed to check the partial FDT (%d)", res);
+        return -EINVAL;
+    }
+
+    if ( fdt_totalsize(pfdt) > size )
+    {
+        dprintk(XENLOG_ERR, "Partial FDT totalsize is too big");
+        return -EINVAL;
+    }
+
+    return 0;
+}
+
+static int __init domain_handle_dtb_bootmodule(struct domain *d,
+                                               struct kernel_info *kinfo)
+{
+    void *pfdt;
+    int res, node_next;
+
+    pfdt = ioremap_cache(kinfo->dtb_bootmodule->start,
+                         kinfo->dtb_bootmodule->size);
+    if ( pfdt == NULL )
+        return -EFAULT;
+
+    res = check_partial_fdt(pfdt, kinfo->dtb_bootmodule->size);
+    if ( res < 0 )
+        goto out;
+
+    for ( node_next = fdt_first_subnode(pfdt, 0);
+          node_next > 0;
+          node_next = fdt_next_subnode(pfdt, node_next) )
+    {
+        const char *name = fdt_get_name(pfdt, node_next, NULL);
+
+        if ( name == NULL )
+            continue;
+
+        /*
+         * Only scan /gic /aliases /passthrough, ignore the rest.
+         * They don't have to be parsed in order.
+         *
+         * Take the GIC phandle value from the special /gic node in the
+         * DTB fragment.
+         */
+        if ( dt_node_cmp(name, "gic") == 0 )
+        {
+            kinfo->phandle_gic = fdt_get_phandle(pfdt, node_next);
+            continue;
+        }
+
+        if ( dt_node_cmp(name, "aliases") == 0 )
+        {
+            res = scan_pfdt_node(kinfo, pfdt, node_next,
+                                 DT_ROOT_NODE_ADDR_CELLS_DEFAULT,
+                                 DT_ROOT_NODE_SIZE_CELLS_DEFAULT,
+                                 false);
+            if ( res )
+                goto out;
+            continue;
+        }
+        if ( dt_node_cmp(name, "passthrough") == 0 )
+        {
+            res = scan_pfdt_node(kinfo, pfdt, node_next,
+                                 DT_ROOT_NODE_ADDR_CELLS_DEFAULT,
+                                 DT_ROOT_NODE_SIZE_CELLS_DEFAULT,
+                                 true);
+            if ( res )
+                goto out;
+            continue;
+        }
+    }
+
+ out:
+    iounmap(pfdt);
+
+    return res;
+}
+
+/*
+ * The max size for DT is 2MB. However, the generated DT is small (not including
+ * domU passthrough DT nodes whose size we account separately), 4KB are enough
+ * for now, but we might have to increase it in the future.
+ */
+#define DOMU_DTB_SIZE 4096
+static int __init prepare_dtb_domU(struct domain *d, struct kernel_info *kinfo)
+{
+    int addrcells, sizecells;
+    int ret, fdt_size = DOMU_DTB_SIZE;
+
+    kinfo->phandle_gic = GUEST_PHANDLE_GIC;
+    kinfo->gnttab_start = GUEST_GNTTAB_BASE;
+    kinfo->gnttab_size = GUEST_GNTTAB_SIZE;
+
+    addrcells = GUEST_ROOT_ADDRESS_CELLS;
+    sizecells = GUEST_ROOT_SIZE_CELLS;
+
+    /* Account for domU passthrough DT size */
+    if ( kinfo->dtb_bootmodule )
+        fdt_size += kinfo->dtb_bootmodule->size;
+
+    /* Cap to max DT size if needed */
+    fdt_size = min(fdt_size, SZ_2M);
+
+    kinfo->fdt = xmalloc_bytes(fdt_size);
+    if ( kinfo->fdt == NULL )
+        return -ENOMEM;
+
+    ret = fdt_create(kinfo->fdt, fdt_size);
+    if ( ret < 0 )
+        goto err;
+
+    ret = fdt_finish_reservemap(kinfo->fdt);
+    if ( ret < 0 )
+        goto err;
+
+    ret = fdt_begin_node(kinfo->fdt, "");
+    if ( ret < 0 )
+        goto err;
+
+    ret = fdt_property_cell(kinfo->fdt, "#address-cells", addrcells);
+    if ( ret )
+        goto err;
+
+    ret = fdt_property_cell(kinfo->fdt, "#size-cells", sizecells);
+    if ( ret )
+        goto err;
+
+    ret = make_chosen_node(kinfo);
+    if ( ret )
+        goto err;
+
+    ret = make_psci_node(kinfo->fdt);
+    if ( ret )
+        goto err;
+
+    ret = make_cpus_node(d, kinfo->fdt);
+    if ( ret )
+        goto err;
+
+    ret = make_memory_node(d, kinfo->fdt, addrcells, sizecells, &kinfo->mem);
+    if ( ret )
+        goto err;
+
+    ret = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells,
+                                &kinfo->shm_mem);
+    if ( ret )
+        goto err;
+
+    /*
+     * domain_handle_dtb_bootmodule has to be called before the rest of
+     * the device tree is generated because it depends on the value of
+     * the field phandle_gic.
+     */
+    if ( kinfo->dtb_bootmodule )
+    {
+        ret = domain_handle_dtb_bootmodule(d, kinfo);
+        if ( ret )
+            goto err;
+    }
+
+    ret = make_gic_domU_node(kinfo);
+    if ( ret )
+        goto err;
+
+    ret = make_timer_node(kinfo);
+    if ( ret )
+        goto err;
+
+    if ( kinfo->vpl011 )
+    {
+        ret = -EINVAL;
+#ifdef CONFIG_SBSA_VUART_CONSOLE
+        ret = make_vpl011_uart_node(kinfo);
+#endif
+        if ( ret )
+            goto err;
+    }
+
+    if ( kinfo->dom0less_feature & DOM0LESS_ENHANCED_NO_XS )
+    {
+        ret = make_hypervisor_node(d, kinfo, addrcells, sizecells);
+        if ( ret )
+            goto err;
+    }
+
+    ret = fdt_end_node(kinfo->fdt);
+    if ( ret < 0 )
+        goto err;
+
+    ret = fdt_finish(kinfo->fdt);
+    if ( ret < 0 )
+        goto err;
+
+    return 0;
+
+  err:
+    printk("Device tree generation failed (%d).\n", ret);
+    xfree(kinfo->fdt);
+
+    return -EINVAL;
+}
+
+static unsigned long __init domain_p2m_pages(unsigned long maxmem_kb,
+                                             unsigned int smp_cpus)
+{
+    /*
+     * Keep in sync with libxl__get_required_paging_memory().
+     * 256 pages (1MB) per vcpu, plus 1 page per MiB of RAM for the P2M map,
+     * plus 128 pages to cover extended regions.
+     */
+    unsigned long memkb = 4 * (256 * smp_cpus + (maxmem_kb / 1024) + 128);
+
+    BUILD_BUG_ON(PAGE_SIZE != SZ_4K);
+
+    return DIV_ROUND_UP(memkb, 1024) << (20 - PAGE_SHIFT);
+}
+
+static int __init alloc_xenstore_evtchn(struct domain *d)
+{
+    evtchn_alloc_unbound_t alloc;
+    int rc;
+
+    alloc.dom = d->domain_id;
+    alloc.remote_dom = hardware_domain->domain_id;
+    rc = evtchn_alloc_unbound(&alloc, 0);
+    if ( rc )
+    {
+        printk("Failed allocating event channel for domain\n");
+        return rc;
+    }
+
+    d->arch.hvm.params[HVM_PARAM_STORE_EVTCHN] = alloc.port;
+
+    return 0;
+}
+
+static int __init construct_domU(struct domain *d,
+                                 const struct dt_device_node *node)
+{
+    struct kernel_info kinfo = {};
+    const char *dom0less_enhanced;
+    int rc;
+    u64 mem;
+    u32 p2m_mem_mb;
+    unsigned long p2m_pages;
+
+    rc = dt_property_read_u64(node, "memory", &mem);
+    if ( !rc )
+    {
+        printk("Error building DomU: cannot read \"memory\" property\n");
+        return -EINVAL;
+    }
+    kinfo.unassigned_mem = (paddr_t)mem * SZ_1K;
+
+    rc = dt_property_read_u32(node, "xen,domain-p2m-mem-mb", &p2m_mem_mb);
+    /* If xen,domain-p2m-mem-mb is not specified, use the default value. */
+    p2m_pages = rc ?
+                p2m_mem_mb << (20 - PAGE_SHIFT) :
+                domain_p2m_pages(mem, d->max_vcpus);
+
+    spin_lock(&d->arch.paging.lock);
+    rc = p2m_set_allocation(d, p2m_pages, NULL);
+    spin_unlock(&d->arch.paging.lock);
+    if ( rc != 0 )
+        return rc;
+
+    printk("*** LOADING DOMU cpus=%u memory=%#"PRIx64"KB ***\n",
+           d->max_vcpus, mem);
+
+    kinfo.vpl011 = dt_property_read_bool(node, "vpl011");
+
+    rc = dt_property_read_string(node, "xen,enhanced", &dom0less_enhanced);
+    if ( rc == -EILSEQ ||
+         rc == -ENODATA ||
+         (rc == 0 && !strcmp(dom0less_enhanced, "enabled")) )
+    {
+        if ( hardware_domain )
+            kinfo.dom0less_feature = DOM0LESS_ENHANCED;
+        else
+            panic("At the moment, Xenstore support requires dom0 to be present\n");
+    }
+    else if ( rc == 0 && !strcmp(dom0less_enhanced, "no-xenstore") )
+        kinfo.dom0less_feature = DOM0LESS_ENHANCED_NO_XS;
+
+    if ( vcpu_create(d, 0) == NULL )
+        return -ENOMEM;
+
+    d->max_pages = ((paddr_t)mem * SZ_1K) >> PAGE_SHIFT;
+
+    kinfo.d = d;
+
+    rc = kernel_probe(&kinfo, node);
+    if ( rc < 0 )
+        return rc;
+
+#ifdef CONFIG_ARM_64
+    /* type must be set before allocate memory */
+    d->arch.type = kinfo.type;
+#endif
+    if ( !dt_find_property(node, "xen,static-mem", NULL) )
+        allocate_memory(d, &kinfo);
+    else if ( !is_domain_direct_mapped(d) )
+        allocate_static_memory(d, &kinfo, node);
+    else
+        assign_static_memory_11(d, &kinfo, node);
+
+#ifdef CONFIG_STATIC_SHM
+    rc = process_shm(d, &kinfo, node);
+    if ( rc < 0 )
+        return rc;
+#endif
+
+    /*
+     * Base address and irq number are needed when creating vpl011 device
+     * tree node in prepare_dtb_domU, so initialization on related variables
+     * shall be done first.
+     */
+    if ( kinfo.vpl011 )
+    {
+        rc = domain_vpl011_init(d, NULL);
+        if ( rc < 0 )
+            return rc;
+    }
+
+    rc = prepare_dtb_domU(d, &kinfo);
+    if ( rc < 0 )
+        return rc;
+
+    rc = construct_domain(d, &kinfo);
+    if ( rc < 0 )
+        return rc;
+
+    if ( kinfo.dom0less_feature & DOM0LESS_XENSTORE )
+    {
+        ASSERT(hardware_domain);
+        rc = alloc_xenstore_evtchn(d);
+        if ( rc < 0 )
+            return rc;
+        d->arch.hvm.params[HVM_PARAM_STORE_PFN] = ~0ULL;
+    }
+
+    return rc;
+}
+
+void __init create_domUs(void)
+{
+    struct dt_device_node *node;
+    const struct dt_device_node *cpupool_node,
+                                *chosen = dt_find_node_by_path("/chosen");
+
+    BUG_ON(chosen == NULL);
+    dt_for_each_child_node(chosen, node)
+    {
+        struct domain *d;
+        struct xen_domctl_createdomain d_cfg = {
+            .arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE,
+            .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
+            /*
+             * The default of 1023 should be sufficient for guests because
+             * on ARM we don't bind physical interrupts to event channels.
+             * The only use of the evtchn port is inter-domain communications.
+             * 1023 is also the default value used in libxl.
+             */
+            .max_evtchn_port = 1023,
+            .max_grant_frames = -1,
+            .max_maptrack_frames = -1,
+            .grant_opts = XEN_DOMCTL_GRANT_version(opt_gnttab_max_version),
+        };
+        unsigned int flags = 0U;
+        uint32_t val;
+        int rc;
+
+        if ( !dt_device_is_compatible(node, "xen,domain") )
+            continue;
+
+        if ( (max_init_domid + 1) >= DOMID_FIRST_RESERVED )
+            panic("No more domain IDs available\n");
+
+        if ( dt_find_property(node, "xen,static-mem", NULL) )
+            flags |= CDF_staticmem;
+
+        if ( dt_property_read_bool(node, "direct-map") )
+        {
+            if ( !(flags & CDF_staticmem) )
+                panic("direct-map is not valid for domain %s without static allocation.\n",
+                      dt_node_name(node));
+
+            flags |= CDF_directmap;
+        }
+
+        if ( !dt_property_read_u32(node, "cpus", &d_cfg.max_vcpus) )
+            panic("Missing property 'cpus' for domain %s\n",
+                  dt_node_name(node));
+
+        if ( dt_find_compatible_node(node, NULL, "multiboot,device-tree") &&
+             iommu_enabled )
+            d_cfg.flags |= XEN_DOMCTL_CDF_iommu;
+
+        if ( !dt_property_read_u32(node, "nr_spis", &d_cfg.arch.nr_spis) )
+        {
+            int vpl011_virq = GUEST_VPL011_SPI;
+
+            d_cfg.arch.nr_spis = gic_number_lines() - 32;
+
+            /*
+             * The VPL011 virq is GUEST_VPL011_SPI, unless direct-map is
+             * set, in which case it'll match the hardware.
+             *
+             * Since the domain is not yet created, we can't use
+             * d->arch.vpl011.irq. So the logic to find the vIRQ has to
+             * be hardcoded.
+             * The logic here shall be consistent with the one in
+             * domain_vpl011_init().
+             */
+            if ( flags & CDF_directmap )
+            {
+                vpl011_virq = serial_irq(SERHND_DTUART);
+                if ( vpl011_virq < 0 )
+                    panic("Error getting IRQ number for this serial port %d\n",
+                          SERHND_DTUART);
+            }
+
+            /*
+             * vpl011 uses one emulated SPI. If vpl011 is requested, make
+             * sure that we allocate enough SPIs for it.
+             */
+            if ( dt_property_read_bool(node, "vpl011") )
+                d_cfg.arch.nr_spis = MAX(d_cfg.arch.nr_spis,
+                                         vpl011_virq - 32 + 1);
+        }
+
+        /* Get the optional property domain-cpupool */
+        cpupool_node = dt_parse_phandle(node, "domain-cpupool", 0);
+        if ( cpupool_node )
+        {
+            int pool_id = btcpupools_get_domain_pool_id(cpupool_node);
+            if ( pool_id < 0 )
+                panic("Error getting cpupool id from domain-cpupool (%d)\n",
+                      pool_id);
+            d_cfg.cpupool_id = pool_id;
+        }
+
+        if ( dt_property_read_u32(node, "max_grant_version", &val) )
+            d_cfg.grant_opts = XEN_DOMCTL_GRANT_version(val);
+
+        if ( dt_property_read_u32(node, "max_grant_frames", &val) )
+        {
+            if ( val > INT32_MAX )
+                panic("max_grant_frames (%"PRIu32") overflow\n", val);
+            d_cfg.max_grant_frames = val;
+        }
+
+        if ( dt_property_read_u32(node, "max_maptrack_frames", &val) )
+        {
+            if ( val > INT32_MAX )
+                panic("max_maptrack_frames (%"PRIu32") overflow\n", val);
+            d_cfg.max_maptrack_frames = val;
+        }
+
+        if ( dt_get_property(node, "sve", &val) )
+        {
+#ifdef CONFIG_ARM64_SVE
+            unsigned int sve_vl_bits;
+            bool ret = false;
+
+            if ( !val )
+            {
+                /* Property found with no value, means max HW VL supported */
+                ret = sve_domctl_vl_param(-1, &sve_vl_bits);
+            }
+            else
+            {
+                if ( dt_property_read_u32(node, "sve", &val) )
+                    ret = sve_domctl_vl_param(val, &sve_vl_bits);
+                else
+                    panic("Error reading 'sve' property\n");
+            }
+
+            if ( ret )
+                d_cfg.arch.sve_vl = sve_encode_vl(sve_vl_bits);
+            else
+                panic("SVE vector length error\n");
+#else
+            panic("'sve' property found, but CONFIG_ARM64_SVE not selected\n");
+#endif
+        }
+
+        /*
+         * The variable max_init_domid is initialized with zero, so here it's
+         * very important to use the pre-increment operator to call
+         * domain_create() with a domid > 0. (domid == 0 is reserved for Dom0)
+         */
+        d = domain_create(++max_init_domid, &d_cfg, flags);
+        if ( IS_ERR(d) )
+            panic("Error creating domain %s (rc = %ld)\n",
+                  dt_node_name(node), PTR_ERR(d));
+
+        d->is_console = true;
+        dt_device_set_used_by(node, d->domain_id);
+
+        rc = construct_domU(d, node);
+        if ( rc )
+            panic("Could not set up domain %s (rc = %d)\n",
+                  dt_node_name(node), rc);
+    }
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index f69f238ccea4..a0d656b33629 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -28,6 +28,7 @@
 #include <asm/setup.h>
 #include <asm/arm64/sve.h>
 #include <asm/cpufeature.h>
+#include <asm/dom0less-build.h>
 #include <asm/domain_build.h>
 #include <xen/event.h>
 
@@ -117,7 +118,7 @@ struct vcpu *__init alloc_dom0_vcpu0(struct domain *dom0)
     return vcpu_create(dom0, 0);
 }
 
-static unsigned int __init get_allocation_size(paddr_t size)
+unsigned int __init get_allocation_size(paddr_t size)
 {
     /*
      * get_order_from_bytes returns the order greater than or equal to
@@ -413,113 +414,6 @@ static void __init allocate_memory_11(struct domain *d,
     }
 }
 
-static bool __init allocate_bank_memory(struct domain *d,
-                                        struct kernel_info *kinfo,
-                                        gfn_t sgfn,
-                                        paddr_t tot_size)
-{
-    int res;
-    struct page_info *pg;
-    struct membank *bank;
-    unsigned int max_order = ~0;
-
-    /*
-     * allocate_bank_memory can be called with a tot_size of zero for
-     * the second memory bank. It is not an error and we can safely
-     * avoid creating a zero-size memory bank.
-     */
-    if ( tot_size == 0 )
-        return true;
-
-    bank = &kinfo->mem.bank[kinfo->mem.nr_banks];
-    bank->start = gfn_to_gaddr(sgfn);
-    bank->size = tot_size;
-
-    while ( tot_size > 0 )
-    {
-        unsigned int order = get_allocation_size(tot_size);
-
-        order = min(max_order, order);
-
-        pg = alloc_domheap_pages(d, order, 0);
-        if ( !pg )
-        {
-            /*
-             * If we can't allocate one page, then it is unlikely to
-             * succeed in the next iteration. So bail out.
-             */
-            if ( !order )
-                return false;
-
-            /*
-             * If we can't allocate memory with order, then it is
-             * unlikely to succeed in the next iteration.
-             * Record the order - 1 to avoid re-trying.
-             */
-            max_order = order - 1;
-            continue;
-        }
-
-        res = guest_physmap_add_page(d, sgfn, page_to_mfn(pg), order);
-        if ( res )
-        {
-            dprintk(XENLOG_ERR, "Failed map pages to DOMU: %d", res);
-            return false;
-        }
-
-        sgfn = gfn_add(sgfn, 1UL << order);
-        tot_size -= (1ULL << (PAGE_SHIFT + order));
-    }
-
-    kinfo->mem.nr_banks++;
-    kinfo->unassigned_mem -= bank->size;
-
-    return true;
-}
-
-static void __init allocate_memory(struct domain *d, struct kernel_info *kinfo)
-{
-    unsigned int i;
-    paddr_t bank_size;
-
-    printk(XENLOG_INFO "Allocating mappings totalling %ldMB for %pd:\n",
-           /* Don't want format this as PRIpaddr (16 digit hex) */
-           (unsigned long)(kinfo->unassigned_mem >> 20), d);
-
-    kinfo->mem.nr_banks = 0;
-    bank_size = MIN(GUEST_RAM0_SIZE, kinfo->unassigned_mem);
-    if ( !allocate_bank_memory(d, kinfo, gaddr_to_gfn(GUEST_RAM0_BASE),
-                               bank_size) )
-        goto fail;
-
-    bank_size = MIN(GUEST_RAM1_SIZE, kinfo->unassigned_mem);
-    if ( !allocate_bank_memory(d, kinfo, gaddr_to_gfn(GUEST_RAM1_BASE),
-                               bank_size) )
-        goto fail;
-
-    if ( kinfo->unassigned_mem )
-        goto fail;
-
-    for( i = 0; i < kinfo->mem.nr_banks; i++ )
-    {
-        printk(XENLOG_INFO "%pd BANK[%d] %#"PRIpaddr"-%#"PRIpaddr" (%ldMB)\n",
-               d,
-               i,
-               kinfo->mem.bank[i].start,
-               kinfo->mem.bank[i].start + kinfo->mem.bank[i].size,
-               /* Don't want format this as PRIpaddr (16 digit hex) */
-               (unsigned long)(kinfo->mem.bank[i].size >> 20));
-    }
-
-    return;
-
-fail:
-    panic("Failed to allocate requested domain memory."
-          /* Don't want format this as PRIpaddr (16 digit hex) */
-          " %ldKB unallocated. Fix the VMs configurations.\n",
-          (unsigned long)kinfo->unassigned_mem >> 10);
-}
-
 #ifdef CONFIG_STATIC_MEMORY
 static bool __init append_static_memory_to_bank(struct domain *d,
                                                 struct membank *bank,
@@ -599,9 +493,8 @@ static int __init parse_static_mem_prop(const struct dt_device_node *node,
 }
 
 /* Allocate memory from static memory as RAM for one specific domain d. */
-static void __init allocate_static_memory(struct domain *d,
-                                          struct kernel_info *kinfo,
-                                          const struct dt_device_node *node)
+void __init allocate_static_memory(struct domain *d, struct kernel_info *kinfo,
+                                   const struct dt_device_node *node)
 {
     u32 addr_cells, size_cells, reg_cells;
     unsigned int nr_banks, gbank, bank = 0;
@@ -705,9 +598,8 @@ static void __init allocate_static_memory(struct domain *d,
  * The static memory will be directly mapped in the guest(Guest Physical
  * Address == Physical Address).
  */
-static void __init assign_static_memory_11(struct domain *d,
-                                           struct kernel_info *kinfo,
-                                           const struct dt_device_node *node)
+void __init assign_static_memory_11(struct domain *d, struct kernel_info *kinfo,
+                                    const struct dt_device_node *node)
 {
     u32 addr_cells, size_cells, reg_cells;
     unsigned int nr_banks, bank = 0;
@@ -941,8 +833,8 @@ static int __init append_shm_bank_to_domain(struct kernel_info *kinfo,
     return 0;
 }
 
-static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
-                              const struct dt_device_node *node)
+int __init process_shm(struct domain *d, struct kernel_info *kinfo,
+                       const struct dt_device_node *node)
 {
     struct dt_device_node *shm_node;
 
@@ -1047,20 +939,6 @@ static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
     return 0;
 }
 #endif /* CONFIG_STATIC_SHM */
-#else
-static void __init allocate_static_memory(struct domain *d,
-                                          struct kernel_info *kinfo,
-                                          const struct dt_device_node *node)
-{
-    ASSERT_UNREACHABLE();
-}
-
-static void __init assign_static_memory_11(struct domain *d,
-                                           struct kernel_info *kinfo,
-                                           const struct dt_device_node *node)
-{
-    ASSERT_UNREACHABLE();
-}
 #endif
 
 /*
@@ -1264,17 +1142,10 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
     return 0;
 }
 
-/*
- * Helper to write an interrupts with the GIC format
- * This code is assuming the irq is an PPI.
- */
-
-typedef __be32 gic_interrupt_t[3];
-
-static void __init set_interrupt(gic_interrupt_t interrupt,
-                                 unsigned int irq,
-                                 unsigned int cpumask,
-                                 unsigned int level)
+void __init set_interrupt(gic_interrupt_t interrupt,
+                          unsigned int irq,
+                          unsigned int cpumask,
+                          unsigned int level)
 {
     __be32 *cells = interrupt;
     bool is_ppi = !!(irq < 32);
@@ -1319,8 +1190,7 @@ static int __init fdt_property_interrupts(const struct kernel_info *kinfo,
  * unit (which contains the physical address) with name to generate a
  * node name.
  */
-static int __init domain_fdt_begin_node(void *fdt, const char *name,
-                                        uint64_t unit)
+int __init domain_fdt_begin_node(void *fdt, const char *name, uint64_t unit)
 {
     /*
      * The size of the buffer to hold the longest possible string (i.e.
@@ -1344,10 +1214,10 @@ static int __init domain_fdt_begin_node(void *fdt, const char *name,
     return fdt_begin_node(fdt, buf);
 }
 
-static int __init make_memory_node(const struct domain *d,
-                                   void *fdt,
-                                   int addrcells, int sizecells,
-                                   struct meminfo *mem)
+int __init make_memory_node(const struct domain *d,
+                            void *fdt,
+                            int addrcells, int sizecells,
+                            struct meminfo *mem)
 {
     unsigned int i;
     int res, reg_size = addrcells + sizecells;
@@ -1483,10 +1353,10 @@ static int __init make_shm_memory_node(const struct domain *d,
 }
 #endif
 
-static int __init make_resv_memory_node(const struct domain *d,
-                                        void *fdt,
-                                        int addrcells, int sizecells,
-                                        const struct meminfo *mem)
+int __init make_resv_memory_node(const struct domain *d,
+                                 void *fdt,
+                                 int addrcells, int sizecells,
+                                 const struct meminfo *mem)
 {
     int res = 0;
     /* Placeholder for reserved-memory\0 */
@@ -1819,9 +1689,9 @@ static int __init find_domU_holes(const struct kernel_info *kinfo,
     return res;
 }
 
-static int __init make_hypervisor_node(struct domain *d,
-                                       const struct kernel_info *kinfo,
-                                       int addrcells, int sizecells)
+int __init make_hypervisor_node(struct domain *d,
+                                const struct kernel_info *kinfo,
+                                int addrcells, int sizecells)
 {
     const char compat[] =
         "xen,xen-" XEN_VERSION_STRING "\0"
@@ -1938,7 +1808,7 @@ static int __init make_hypervisor_node(struct domain *d,
     return res;
 }
 
-static int __init make_psci_node(void *fdt)
+int __init make_psci_node(void *fdt)
 {
     int res;
     const char compat[] =
@@ -1974,7 +1844,7 @@ static int __init make_psci_node(void *fdt)
     return res;
 }
 
-static int __init make_cpus_node(const struct domain *d, void *fdt)
+int __init make_cpus_node(const struct domain *d, void *fdt)
 {
     int res;
     const struct dt_device_node *cpus = dt_find_node_by_path("/cpus");
@@ -2172,7 +2042,7 @@ static int __init make_gic_node(const struct domain *d, void *fdt,
     return res;
 }
 
-static int __init make_timer_node(const struct kernel_info *kinfo)
+int __init make_timer_node(const struct kernel_info *kinfo)
 {
     void *fdt = kinfo->fdt;
     static const struct dt_device_match timer_ids[] __initconst =
@@ -2490,743 +2360,134 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
     return res;
 }
 
-#ifdef CONFIG_VGICV2
-static int __init make_gicv2_domU_node(struct kernel_info *kinfo)
+static int __init prepare_dtb_hwdom(struct domain *d, struct kernel_info *kinfo)
 {
-    void *fdt = kinfo->fdt;
-    int res = 0;
-    __be32 reg[(GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS) * 2];
-    __be32 *cells;
-    const struct domain *d = kinfo->d;
-
-    res = domain_fdt_begin_node(fdt, "interrupt-controller",
-                                vgic_dist_base(&d->arch.vgic));
-    if ( res )
-        return res;
-
-    res = fdt_property_cell(fdt, "#address-cells", 0);
-    if ( res )
-        return res;
+    const p2m_type_t default_p2mt = p2m_mmio_direct_c;
+    const void *fdt;
+    int new_size;
+    int ret;
 
-    res = fdt_property_cell(fdt, "#interrupt-cells", 3);
-    if ( res )
-        return res;
+    ASSERT(dt_host && (dt_host->sibling == NULL));
 
-    res = fdt_property(fdt, "interrupt-controller", NULL, 0);
-    if ( res )
-        return res;
+    kinfo->phandle_gic = dt_interrupt_controller->phandle;
+    fdt = device_tree_flattened;
 
-    res = fdt_property_string(fdt, "compatible", "arm,gic-400");
-    if ( res )
-        return res;
+    new_size = fdt_totalsize(fdt) + DOM0_FDT_EXTRA_SIZE;
+    kinfo->fdt = xmalloc_bytes(new_size);
+    if ( kinfo->fdt == NULL )
+        return -ENOMEM;
 
-    cells = &reg[0];
-    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
-                       vgic_dist_base(&d->arch.vgic), GUEST_GICD_SIZE);
-    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
-                       vgic_cpu_base(&d->arch.vgic), GUEST_GICC_SIZE);
+    ret = fdt_create(kinfo->fdt, new_size);
+    if ( ret < 0 )
+        goto err;
 
-    res = fdt_property(fdt, "reg", reg, sizeof(reg));
-    if (res)
-        return res;
+    fdt_finish_reservemap(kinfo->fdt);
 
-    res = fdt_property_cell(fdt, "linux,phandle", kinfo->phandle_gic);
-    if (res)
-        return res;
+    ret = handle_node(d, kinfo, dt_host, default_p2mt);
+    if ( ret )
+        goto err;
 
-    res = fdt_property_cell(fdt, "phandle", kinfo->phandle_gic);
-    if (res)
-        return res;
+    ret = fdt_finish(kinfo->fdt);
+    if ( ret < 0 )
+        goto err;
 
-    res = fdt_end_node(fdt);
+    return 0;
 
-    return res;
+  err:
+    printk("Device tree generation failed (%d).\n", ret);
+    xfree(kinfo->fdt);
+    return -EINVAL;
 }
-#endif
 
-#ifdef CONFIG_GICV3
-static int __init make_gicv3_domU_node(struct kernel_info *kinfo)
+static void __init dtb_load(struct kernel_info *kinfo)
 {
-    void *fdt = kinfo->fdt;
-    int res = 0;
-    __be32 *reg, *cells;
-    const struct domain *d = kinfo->d;
-    unsigned int i, len = 0;
-
-    res = domain_fdt_begin_node(fdt, "interrupt-controller",
-                                vgic_dist_base(&d->arch.vgic));
-    if ( res )
-        return res;
-
-    res = fdt_property_cell(fdt, "#address-cells", 0);
-    if ( res )
-        return res;
-
-    res = fdt_property_cell(fdt, "#interrupt-cells", 3);
-    if ( res )
-        return res;
-
-    res = fdt_property(fdt, "interrupt-controller", NULL, 0);
-    if ( res )
-        return res;
-
-    res = fdt_property_string(fdt, "compatible", "arm,gic-v3");
-    if ( res )
-        return res;
-
-    /* reg specifies all re-distributors and Distributor. */
-    len = (GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS) *
-          (d->arch.vgic.nr_regions + 1) * sizeof(__be32);
-    reg = xmalloc_bytes(len);
-    if ( reg == NULL )
-        return -ENOMEM;
-    cells = reg;
-
-    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
-                       vgic_dist_base(&d->arch.vgic), GUEST_GICV3_GICD_SIZE);
-
-    for ( i = 0; i < d->arch.vgic.nr_regions; i++ )
-        dt_child_set_range(&cells,
-                           GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
-                           d->arch.vgic.rdist_regions[i].base,
-                           d->arch.vgic.rdist_regions[i].size);
-
-    res = fdt_property(fdt, "reg", reg, len);
-    xfree(reg);
-    if (res)
-        return res;
-
-    res = fdt_property_cell(fdt, "linux,phandle", kinfo->phandle_gic);
-    if (res)
-        return res;
-
-    res = fdt_property_cell(fdt, "phandle", kinfo->phandle_gic);
-    if (res)
-        return res;
+    unsigned long left;
 
-    res = fdt_end_node(fdt);
+    printk("Loading %pd DTB to 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
+           kinfo->d, kinfo->dtb_paddr,
+           kinfo->dtb_paddr + fdt_totalsize(kinfo->fdt));
 
-    return res;
-}
-#endif
+    left = copy_to_guest_phys_flush_dcache(kinfo->d, kinfo->dtb_paddr,
+                                           kinfo->fdt,
+                                           fdt_totalsize(kinfo->fdt));
 
-static int __init make_gic_domU_node(struct kernel_info *kinfo)
-{
-    switch ( kinfo->d->arch.vgic.version )
-    {
-#ifdef CONFIG_GICV3
-    case GIC_V3:
-        return make_gicv3_domU_node(kinfo);
-#endif
-#ifdef CONFIG_VGICV2
-    case GIC_V2:
-        return make_gicv2_domU_node(kinfo);
-#endif
-    default:
-        panic("Unsupported GIC version\n");
-    }
+    if ( left != 0 )
+        panic("Unable to copy the DTB to %pd memory (left = %lu bytes)\n",
+              kinfo->d, left);
+    xfree(kinfo->fdt);
 }
 
-#ifdef CONFIG_SBSA_VUART_CONSOLE
-static int __init make_vpl011_uart_node(struct kernel_info *kinfo)
+static void __init initrd_load(struct kernel_info *kinfo)
 {
-    void *fdt = kinfo->fdt;
+    const struct bootmodule *mod = kinfo->initrd_bootmodule;
+    paddr_t load_addr = kinfo->initrd_paddr;
+    paddr_t paddr, len;
+    int node;
     int res;
-    gic_interrupt_t intr;
-    __be32 reg[GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS];
-    __be32 *cells;
-    struct domain *d = kinfo->d;
-
-    res = domain_fdt_begin_node(fdt, "sbsa-uart", d->arch.vpl011.base_addr);
-    if ( res )
-        return res;
+    __be32 val[2];
+    __be32 *cellp;
+    void __iomem *initrd;
 
-    res = fdt_property_string(fdt, "compatible", "arm,sbsa-uart");
-    if ( res )
-        return res;
+    if ( !mod || !mod->size )
+        return;
 
-    cells = &reg[0];
-    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS,
-                       GUEST_ROOT_SIZE_CELLS, d->arch.vpl011.base_addr,
-                       GUEST_PL011_SIZE);
+    paddr = mod->start;
+    len = mod->size;
 
-    res = fdt_property(fdt, "reg", reg, sizeof(reg));
-    if ( res )
-        return res;
+    printk("Loading %pd initrd from %"PRIpaddr" to 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
+           kinfo->d, paddr, load_addr, load_addr + len);
 
-    set_interrupt(intr, d->arch.vpl011.virq, 0xf, DT_IRQ_TYPE_LEVEL_HIGH);
+    /* Fix up linux,initrd-start and linux,initrd-end in /chosen */
+    node = fdt_path_offset(kinfo->fdt, "/chosen");
+    if ( node < 0 )
+        panic("Cannot find the /chosen node\n");
 
-    res = fdt_property(fdt, "interrupts", intr, sizeof (intr));
+    cellp = (__be32 *)val;
+    dt_set_cell(&cellp, ARRAY_SIZE(val), load_addr);
+    res = fdt_setprop_inplace(kinfo->fdt, node, "linux,initrd-start",
+                              val, sizeof(val));
     if ( res )
-        return res;
+        panic("Cannot fix up \"linux,initrd-start\" property\n");
 
-    res = fdt_property_cell(fdt, "interrupt-parent",
-                            kinfo->phandle_gic);
+    cellp = (__be32 *)val;
+    dt_set_cell(&cellp, ARRAY_SIZE(val), load_addr + len);
+    res = fdt_setprop_inplace(kinfo->fdt, node, "linux,initrd-end",
+                              val, sizeof(val));
     if ( res )
-        return res;
+        panic("Cannot fix up \"linux,initrd-end\" property\n");
 
-    /* Use a default baud rate of 115200. */
-    fdt_property_u32(fdt, "current-speed", 115200);
+    initrd = ioremap_wc(paddr, len);
+    if ( !initrd )
+        panic("Unable to map the hwdom initrd\n");
 
-    res = fdt_end_node(fdt);
-    if ( res )
-        return res;
+    res = copy_to_guest_phys_flush_dcache(kinfo->d, load_addr,
+                                          initrd, len);
+    if ( res != 0 )
+        panic("Unable to copy the initrd in the hwdom memory\n");
 
-    return 0;
+    iounmap(initrd);
 }
-#endif
 
 /*
- * Scan device tree properties for passthrough specific information.
- * Returns < 0 on error
- *         0 on success
+ * Allocate the event channel PPIs and setup the HVM_PARAM_CALLBACK_IRQ.
+ * The allocated IRQ will be found in d->arch.evtchn_irq.
+ *
+ * Note that this should only be called once all PPIs used by the
+ * hardware domain have been registered.
  */
-static int __init handle_passthrough_prop(struct kernel_info *kinfo,
-                                          const struct fdt_property *xen_reg,
-                                          const struct fdt_property *xen_path,
-                                          bool xen_force,
-                                          uint32_t address_cells, uint32_t size_cells)
+void __init evtchn_allocate(struct domain *d)
 {
-    const __be32 *cell;
-    unsigned int i, len;
-    struct dt_device_node *node;
     int res;
-    paddr_t mstart, size, gstart;
-
-    /* xen,reg specifies where to map the MMIO region */
-    cell = (const __be32 *)xen_reg->data;
-    len = fdt32_to_cpu(xen_reg->len) / ((address_cells * 2 + size_cells) *
-                                        sizeof(uint32_t));
+    u64 val;
 
-    for ( i = 0; i < len; i++ )
-    {
-        device_tree_get_reg(&cell, address_cells, size_cells,
-                            &mstart, &size);
-        gstart = dt_next_cell(address_cells, &cell);
+    res = vgic_allocate_ppi(d);
+    if ( res < 0 )
+        panic("Unable to allocate a PPI for the event channel interrupt\n");
 
-        if ( gstart & ~PAGE_MASK || mstart & ~PAGE_MASK || size & ~PAGE_MASK )
-        {
-            printk(XENLOG_ERR
-                    "DomU passthrough config has not page aligned addresses/sizes\n");
-            return -EINVAL;
-        }
+    d->arch.evtchn_irq = res;
 
-        res = iomem_permit_access(kinfo->d, paddr_to_pfn(mstart),
-                                  paddr_to_pfn(PAGE_ALIGN(mstart + size - 1)));
-        if ( res )
-        {
-            printk(XENLOG_ERR "Unable to permit to dom%d access to"
-                   " 0x%"PRIpaddr" - 0x%"PRIpaddr"\n",
-                   kinfo->d->domain_id,
-                   mstart & PAGE_MASK, PAGE_ALIGN(mstart + size) - 1);
-            return res;
-        }
-
-        res = map_regions_p2mt(kinfo->d,
-                               gaddr_to_gfn(gstart),
-                               PFN_DOWN(size),
-                               maddr_to_mfn(mstart),
-                               p2m_mmio_direct_dev);
-        if ( res < 0 )
-        {
-            printk(XENLOG_ERR
-                   "Failed to map %"PRIpaddr" to the guest at%"PRIpaddr"\n",
-                   mstart, gstart);
-            return -EFAULT;
-        }
-    }
-
-    /*
-     * If xen_force, we let the user assign a MMIO region with no
-     * associated path.
-     */
-    if ( xen_path == NULL )
-        return xen_force ? 0 : -EINVAL;
-
-    /*
-     * xen,path specifies the corresponding node in the host DT.
-     * Both interrupt mappings and IOMMU settings are based on it,
-     * as they are done based on the corresponding host DT node.
-     */
-    node = dt_find_node_by_path(xen_path->data);
-    if ( node == NULL )
-    {
-        printk(XENLOG_ERR "Couldn't find node %s in host_dt!\n",
-               (char *)xen_path->data);
-        return -EINVAL;
-    }
-
-    res = map_device_irqs_to_domain(kinfo->d, node, true, NULL);
-    if ( res < 0 )
-        return res;
-
-    res = iommu_add_dt_device(node);
-    if ( res < 0 )
-        return res;
-
-    /* If xen_force, we allow assignment of devices without IOMMU protection. */
-    if ( xen_force && !dt_device_is_protected(node) )
-        return 0;
-
-    return iommu_assign_dt_device(kinfo->d, node);
-}
-
-static int __init handle_prop_pfdt(struct kernel_info *kinfo,
-                                   const void *pfdt, int nodeoff,
-                                   uint32_t address_cells, uint32_t size_cells,
-                                   bool scan_passthrough_prop)
-{
-    void *fdt = kinfo->fdt;
-    int propoff, nameoff, res;
-    const struct fdt_property *prop, *xen_reg = NULL, *xen_path = NULL;
-    const char *name;
-    bool found, xen_force = false;
-
-    for ( propoff = fdt_first_property_offset(pfdt, nodeoff);
-          propoff >= 0;
-          propoff = fdt_next_property_offset(pfdt, propoff) )
-    {
-        if ( !(prop = fdt_get_property_by_offset(pfdt, propoff, NULL)) )
-            return -FDT_ERR_INTERNAL;
-
-        found = false;
-        nameoff = fdt32_to_cpu(prop->nameoff);
-        name = fdt_string(pfdt, nameoff);
-
-        if ( scan_passthrough_prop )
-        {
-            if ( dt_prop_cmp("xen,reg", name) == 0 )
-            {
-                xen_reg = prop;
-                found = true;
-            }
-            else if ( dt_prop_cmp("xen,path", name) == 0 )
-            {
-                xen_path = prop;
-                found = true;
-            }
-            else if ( dt_prop_cmp("xen,force-assign-without-iommu",
-                                  name) == 0 )
-            {
-                xen_force = true;
-                found = true;
-            }
-        }
-
-        /*
-         * Copy properties other than the ones above: xen,reg, xen,path,
-         * and xen,force-assign-without-iommu.
-         */
-        if ( !found )
-        {
-            res = fdt_property(fdt, name, prop->data, fdt32_to_cpu(prop->len));
-            if ( res )
-                return res;
-        }
-    }
-
-    /*
-     * Only handle passthrough properties if both xen,reg and xen,path
-     * are present, or if xen,force-assign-without-iommu is specified.
-     */
-    if ( xen_reg != NULL && (xen_path != NULL || xen_force) )
-    {
-        res = handle_passthrough_prop(kinfo, xen_reg, xen_path, xen_force,
-                                      address_cells, size_cells);
-        if ( res < 0 )
-        {
-            printk(XENLOG_ERR "Failed to assign device to %pd\n", kinfo->d);
-            return res;
-        }
-    }
-    else if ( (xen_path && !xen_reg) || (xen_reg && !xen_path && !xen_force) )
-    {
-        printk(XENLOG_ERR "xen,reg or xen,path missing for %pd\n",
-               kinfo->d);
-        return -EINVAL;
-    }
-
-    /* FDT_ERR_NOTFOUND => There is no more properties for this node */
-    return ( propoff != -FDT_ERR_NOTFOUND ) ? propoff : 0;
-}
-
-static int __init scan_pfdt_node(struct kernel_info *kinfo, const void *pfdt,
-                                 int nodeoff,
-                                 uint32_t address_cells, uint32_t size_cells,
-                                 bool scan_passthrough_prop)
-{
-    int rc = 0;
-    void *fdt = kinfo->fdt;
-    int node_next;
-
-    rc = fdt_begin_node(fdt, fdt_get_name(pfdt, nodeoff, NULL));
-    if ( rc )
-        return rc;
-
-    rc = handle_prop_pfdt(kinfo, pfdt, nodeoff, address_cells, size_cells,
-                          scan_passthrough_prop);
-    if ( rc )
-        return rc;
-
-    address_cells = device_tree_get_u32(pfdt, nodeoff, "#address-cells",
-                                        DT_ROOT_NODE_ADDR_CELLS_DEFAULT);
-    size_cells = device_tree_get_u32(pfdt, nodeoff, "#size-cells",
-                                     DT_ROOT_NODE_SIZE_CELLS_DEFAULT);
-
-    node_next = fdt_first_subnode(pfdt, nodeoff);
-    while ( node_next > 0 )
-    {
-        scan_pfdt_node(kinfo, pfdt, node_next, address_cells, size_cells,
-                       scan_passthrough_prop);
-        node_next = fdt_next_subnode(pfdt, node_next);
-    }
-
-    return fdt_end_node(fdt);
-}
-
-static int __init check_partial_fdt(void *pfdt, size_t size)
-{
-    int res;
-
-    if ( fdt_magic(pfdt) != FDT_MAGIC )
-    {
-        dprintk(XENLOG_ERR, "Partial FDT is not a valid Flat Device Tree");
-        return -EINVAL;
-    }
-
-    res = fdt_check_header(pfdt);
-    if ( res )
-    {
-        dprintk(XENLOG_ERR, "Failed to check the partial FDT (%d)", res);
-        return -EINVAL;
-    }
-
-    if ( fdt_totalsize(pfdt) > size )
-    {
-        dprintk(XENLOG_ERR, "Partial FDT totalsize is too big");
-        return -EINVAL;
-    }
-
-    return 0;
-}
-
-static int __init domain_handle_dtb_bootmodule(struct domain *d,
-                                               struct kernel_info *kinfo)
-{
-    void *pfdt;
-    int res, node_next;
-
-    pfdt = ioremap_cache(kinfo->dtb_bootmodule->start,
-                         kinfo->dtb_bootmodule->size);
-    if ( pfdt == NULL )
-        return -EFAULT;
-
-    res = check_partial_fdt(pfdt, kinfo->dtb_bootmodule->size);
-    if ( res < 0 )
-        goto out;
-
-    for ( node_next = fdt_first_subnode(pfdt, 0); 
-          node_next > 0;
-          node_next = fdt_next_subnode(pfdt, node_next) )
-    {
-        const char *name = fdt_get_name(pfdt, node_next, NULL);
-
-        if ( name == NULL )
-            continue;
-
-        /*
-         * Only scan /gic /aliases /passthrough, ignore the rest.
-         * They don't have to be parsed in order.
-         *
-         * Take the GIC phandle value from the special /gic node in the
-         * DTB fragment.
-         */
-        if ( dt_node_cmp(name, "gic") == 0 )
-        {
-            kinfo->phandle_gic = fdt_get_phandle(pfdt, node_next);
-            continue;
-        }
-
-        if ( dt_node_cmp(name, "aliases") == 0 )
-        {
-            res = scan_pfdt_node(kinfo, pfdt, node_next,
-                                 DT_ROOT_NODE_ADDR_CELLS_DEFAULT,
-                                 DT_ROOT_NODE_SIZE_CELLS_DEFAULT,
-                                 false);
-            if ( res )
-                goto out;
-            continue;
-        }
-        if ( dt_node_cmp(name, "passthrough") == 0 )
-        {
-            res = scan_pfdt_node(kinfo, pfdt, node_next,
-                                 DT_ROOT_NODE_ADDR_CELLS_DEFAULT,
-                                 DT_ROOT_NODE_SIZE_CELLS_DEFAULT,
-                                 true);
-            if ( res )
-                goto out;
-            continue;
-        }
-    }
-
- out:
-    iounmap(pfdt);
-
-    return res;
-}
-
-/*
- * The max size for DT is 2MB. However, the generated DT is small (not including
- * domU passthrough DT nodes whose size we account separately), 4KB are enough
- * for now, but we might have to increase it in the future.
- */
-#define DOMU_DTB_SIZE 4096
-static int __init prepare_dtb_domU(struct domain *d, struct kernel_info *kinfo)
-{
-    int addrcells, sizecells;
-    int ret, fdt_size = DOMU_DTB_SIZE;
-
-    kinfo->phandle_gic = GUEST_PHANDLE_GIC;
-    kinfo->gnttab_start = GUEST_GNTTAB_BASE;
-    kinfo->gnttab_size = GUEST_GNTTAB_SIZE;
-
-    addrcells = GUEST_ROOT_ADDRESS_CELLS;
-    sizecells = GUEST_ROOT_SIZE_CELLS;
-
-    /* Account for domU passthrough DT size */
-    if ( kinfo->dtb_bootmodule )
-        fdt_size += kinfo->dtb_bootmodule->size;
-
-    /* Cap to max DT size if needed */
-    fdt_size = min(fdt_size, SZ_2M);
-
-    kinfo->fdt = xmalloc_bytes(fdt_size);
-    if ( kinfo->fdt == NULL )
-        return -ENOMEM;
-
-    ret = fdt_create(kinfo->fdt, fdt_size);
-    if ( ret < 0 )
-        goto err;
-
-    ret = fdt_finish_reservemap(kinfo->fdt);
-    if ( ret < 0 )
-        goto err;
-
-    ret = fdt_begin_node(kinfo->fdt, "");
-    if ( ret < 0 )
-        goto err;
-
-    ret = fdt_property_cell(kinfo->fdt, "#address-cells", addrcells);
-    if ( ret )
-        goto err;
-
-    ret = fdt_property_cell(kinfo->fdt, "#size-cells", sizecells);
-    if ( ret )
-        goto err;
-
-    ret = make_chosen_node(kinfo);
-    if ( ret )
-        goto err;
-
-    ret = make_psci_node(kinfo->fdt);
-    if ( ret )
-        goto err;
-
-    ret = make_cpus_node(d, kinfo->fdt);
-    if ( ret )
-        goto err;
-
-    ret = make_memory_node(d, kinfo->fdt, addrcells, sizecells, &kinfo->mem);
-    if ( ret )
-        goto err;
-
-    ret = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells,
-                                &kinfo->shm_mem);
-    if ( ret )
-        goto err;
-
-    /*
-     * domain_handle_dtb_bootmodule has to be called before the rest of
-     * the device tree is generated because it depends on the value of
-     * the field phandle_gic.
-     */
-    if ( kinfo->dtb_bootmodule )
-    {
-        ret = domain_handle_dtb_bootmodule(d, kinfo);
-        if ( ret )
-            goto err;
-    }
-
-    ret = make_gic_domU_node(kinfo);
-    if ( ret )
-        goto err;
-
-    ret = make_timer_node(kinfo);
-    if ( ret )
-        goto err;
-
-    if ( kinfo->vpl011 )
-    {
-        ret = -EINVAL;
-#ifdef CONFIG_SBSA_VUART_CONSOLE
-        ret = make_vpl011_uart_node(kinfo);
-#endif
-        if ( ret )
-            goto err;
-    }
-
-    if ( kinfo->dom0less_feature & DOM0LESS_ENHANCED_NO_XS )
-    {
-        ret = make_hypervisor_node(d, kinfo, addrcells, sizecells);
-        if ( ret )
-            goto err;
-    }
-
-    ret = fdt_end_node(kinfo->fdt);
-    if ( ret < 0 )
-        goto err;
-
-    ret = fdt_finish(kinfo->fdt);
-    if ( ret < 0 )
-        goto err;
-
-    return 0;
-
-  err:
-    printk("Device tree generation failed (%d).\n", ret);
-    xfree(kinfo->fdt);
-
-    return -EINVAL;
-}
-
-static int __init prepare_dtb_hwdom(struct domain *d, struct kernel_info *kinfo)
-{
-    const p2m_type_t default_p2mt = p2m_mmio_direct_c;
-    const void *fdt;
-    int new_size;
-    int ret;
-
-    ASSERT(dt_host && (dt_host->sibling == NULL));
-
-    kinfo->phandle_gic = dt_interrupt_controller->phandle;
-    fdt = device_tree_flattened;
-
-    new_size = fdt_totalsize(fdt) + DOM0_FDT_EXTRA_SIZE;
-    kinfo->fdt = xmalloc_bytes(new_size);
-    if ( kinfo->fdt == NULL )
-        return -ENOMEM;
-
-    ret = fdt_create(kinfo->fdt, new_size);
-    if ( ret < 0 )
-        goto err;
-
-    fdt_finish_reservemap(kinfo->fdt);
-
-    ret = handle_node(d, kinfo, dt_host, default_p2mt);
-    if ( ret )
-        goto err;
-
-    ret = fdt_finish(kinfo->fdt);
-    if ( ret < 0 )
-        goto err;
-
-    return 0;
-
-  err:
-    printk("Device tree generation failed (%d).\n", ret);
-    xfree(kinfo->fdt);
-    return -EINVAL;
-}
-
-static void __init dtb_load(struct kernel_info *kinfo)
-{
-    unsigned long left;
-
-    printk("Loading %pd DTB to 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
-           kinfo->d, kinfo->dtb_paddr,
-           kinfo->dtb_paddr + fdt_totalsize(kinfo->fdt));
-
-    left = copy_to_guest_phys_flush_dcache(kinfo->d, kinfo->dtb_paddr,
-                                           kinfo->fdt,
-                                           fdt_totalsize(kinfo->fdt));
-
-    if ( left != 0 )
-        panic("Unable to copy the DTB to %pd memory (left = %lu bytes)\n",
-              kinfo->d, left);
-    xfree(kinfo->fdt);
-}
-
-static void __init initrd_load(struct kernel_info *kinfo)
-{
-    const struct bootmodule *mod = kinfo->initrd_bootmodule;
-    paddr_t load_addr = kinfo->initrd_paddr;
-    paddr_t paddr, len;
-    int node;
-    int res;
-    __be32 val[2];
-    __be32 *cellp;
-    void __iomem *initrd;
-
-    if ( !mod || !mod->size )
-        return;
-
-    paddr = mod->start;
-    len = mod->size;
-
-    printk("Loading %pd initrd from %"PRIpaddr" to 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
-           kinfo->d, paddr, load_addr, load_addr + len);
-
-    /* Fix up linux,initrd-start and linux,initrd-end in /chosen */
-    node = fdt_path_offset(kinfo->fdt, "/chosen");
-    if ( node < 0 )
-        panic("Cannot find the /chosen node\n");
-
-    cellp = (__be32 *)val;
-    dt_set_cell(&cellp, ARRAY_SIZE(val), load_addr);
-    res = fdt_setprop_inplace(kinfo->fdt, node, "linux,initrd-start",
-                              val, sizeof(val));
-    if ( res )
-        panic("Cannot fix up \"linux,initrd-start\" property\n");
-
-    cellp = (__be32 *)val;
-    dt_set_cell(&cellp, ARRAY_SIZE(val), load_addr + len);
-    res = fdt_setprop_inplace(kinfo->fdt, node, "linux,initrd-end",
-                              val, sizeof(val));
-    if ( res )
-        panic("Cannot fix up \"linux,initrd-end\" property\n");
-
-    initrd = ioremap_wc(paddr, len);
-    if ( !initrd )
-        panic("Unable to map the hwdom initrd\n");
-
-    res = copy_to_guest_phys_flush_dcache(kinfo->d, load_addr,
-                                          initrd, len);
-    if ( res != 0 )
-        panic("Unable to copy the initrd in the hwdom memory\n");
-
-    iounmap(initrd);
-}
-
-/*
- * Allocate the event channel PPIs and setup the HVM_PARAM_CALLBACK_IRQ.
- * The allocated IRQ will be found in d->arch.evtchn_irq.
- *
- * Note that this should only be called once all PPIs used by the
- * hardware domain have been registered.
- */
-void __init evtchn_allocate(struct domain *d)
-{
-    int res;
-    u64 val;
-
-    res = vgic_allocate_ppi(d);
-    if ( res < 0 )
-        panic("Unable to allocate a PPI for the event channel interrupt\n");
-
-    d->arch.evtchn_irq = res;
-
-    printk("Allocating PPI %u for event channel interrupt\n",
-           d->arch.evtchn_irq);
+    printk("Allocating PPI %u for event channel interrupt\n",
+           d->arch.evtchn_irq);
 
     /* Set the value of domain param HVM_PARAM_CALLBACK_IRQ */
     val = MASK_INSR(HVM_PARAM_CALLBACK_TYPE_PPI,
@@ -3409,22 +2670,7 @@ static void __init find_gnttab_region(struct domain *d,
            kinfo->gnttab_start, kinfo->gnttab_start + kinfo->gnttab_size);
 }
 
-static unsigned long __init domain_p2m_pages(unsigned long maxmem_kb,
-                                             unsigned int smp_cpus)
-{
-    /*
-     * Keep in sync with libxl__get_required_paging_memory().
-     * 256 pages (1MB) per vcpu, plus 1 page per MiB of RAM for the P2M map,
-     * plus 128 pages to cover extended regions.
-     */
-    unsigned long memkb = 4 * (256 * smp_cpus + (maxmem_kb / 1024) + 128);
-
-    BUILD_BUG_ON(PAGE_SIZE != SZ_4K);
-
-    return DIV_ROUND_UP(memkb, 1024) << (20 - PAGE_SHIFT);
-}
-
-static int __init construct_domain(struct domain *d, struct kernel_info *kinfo)
+int __init construct_domain(struct domain *d, struct kernel_info *kinfo)
 {
     unsigned int i;
     struct vcpu *v = d->vcpu[0];
@@ -3515,296 +2761,6 @@ static int __init construct_domain(struct domain *d, struct kernel_info *kinfo)
     return 0;
 }
 
-static int __init alloc_xenstore_evtchn(struct domain *d)
-{
-    evtchn_alloc_unbound_t alloc;
-    int rc;
-
-    alloc.dom = d->domain_id;
-    alloc.remote_dom = hardware_domain->domain_id;
-    rc = evtchn_alloc_unbound(&alloc, 0);
-    if ( rc )
-    {
-        printk("Failed allocating event channel for domain\n");
-        return rc;
-    }
-
-    d->arch.hvm.params[HVM_PARAM_STORE_EVTCHN] = alloc.port;
-
-    return 0;
-}
-
-static int __init construct_domU(struct domain *d,
-                                 const struct dt_device_node *node)
-{
-    struct kernel_info kinfo = {};
-    const char *dom0less_enhanced;
-    int rc;
-    u64 mem;
-    u32 p2m_mem_mb;
-    unsigned long p2m_pages;
-
-    rc = dt_property_read_u64(node, "memory", &mem);
-    if ( !rc )
-    {
-        printk("Error building DomU: cannot read \"memory\" property\n");
-        return -EINVAL;
-    }
-    kinfo.unassigned_mem = (paddr_t)mem * SZ_1K;
-
-    rc = dt_property_read_u32(node, "xen,domain-p2m-mem-mb", &p2m_mem_mb);
-    /* If xen,domain-p2m-mem-mb is not specified, use the default value. */
-    p2m_pages = rc ?
-                p2m_mem_mb << (20 - PAGE_SHIFT) :
-                domain_p2m_pages(mem, d->max_vcpus);
-
-    spin_lock(&d->arch.paging.lock);
-    rc = p2m_set_allocation(d, p2m_pages, NULL);
-    spin_unlock(&d->arch.paging.lock);
-    if ( rc != 0 )
-        return rc;
-
-    printk("*** LOADING DOMU cpus=%u memory=%#"PRIx64"KB ***\n",
-           d->max_vcpus, mem);
-
-    kinfo.vpl011 = dt_property_read_bool(node, "vpl011");
-
-    rc = dt_property_read_string(node, "xen,enhanced", &dom0less_enhanced);
-    if ( rc == -EILSEQ ||
-         rc == -ENODATA ||
-         (rc == 0 && !strcmp(dom0less_enhanced, "enabled")) )
-    {
-        if ( hardware_domain )
-            kinfo.dom0less_feature = DOM0LESS_ENHANCED;
-        else
-            panic("At the moment, Xenstore support requires dom0 to be present\n");
-    }
-    else if ( rc == 0 && !strcmp(dom0less_enhanced, "no-xenstore") )
-        kinfo.dom0less_feature = DOM0LESS_ENHANCED_NO_XS;
-
-    if ( vcpu_create(d, 0) == NULL )
-        return -ENOMEM;
-
-    d->max_pages = ((paddr_t)mem * SZ_1K) >> PAGE_SHIFT;
-
-    kinfo.d = d;
-
-    rc = kernel_probe(&kinfo, node);
-    if ( rc < 0 )
-        return rc;
-
-#ifdef CONFIG_ARM_64
-    /* type must be set before allocate memory */
-    d->arch.type = kinfo.type;
-#endif
-    if ( !dt_find_property(node, "xen,static-mem", NULL) )
-        allocate_memory(d, &kinfo);
-    else if ( !is_domain_direct_mapped(d) )
-        allocate_static_memory(d, &kinfo, node);
-    else
-        assign_static_memory_11(d, &kinfo, node);
-
-#ifdef CONFIG_STATIC_SHM
-    rc = process_shm(d, &kinfo, node);
-    if ( rc < 0 )
-        return rc;
-#endif
-
-    /*
-     * Base address and irq number are needed when creating vpl011 device
-     * tree node in prepare_dtb_domU, so initialization on related variables
-     * shall be done first.
-     */
-    if ( kinfo.vpl011 )
-    {
-        rc = domain_vpl011_init(d, NULL);
-        if ( rc < 0 )
-            return rc;
-    }
-
-    rc = prepare_dtb_domU(d, &kinfo);
-    if ( rc < 0 )
-        return rc;
-
-    rc = construct_domain(d, &kinfo);
-    if ( rc < 0 )
-        return rc;
-
-    if ( kinfo.dom0less_feature & DOM0LESS_XENSTORE )
-    {
-        ASSERT(hardware_domain);
-        rc = alloc_xenstore_evtchn(d);
-        if ( rc < 0 )
-            return rc;
-        d->arch.hvm.params[HVM_PARAM_STORE_PFN] = ~0ULL;
-    }
-
-    return rc;
-}
-
-void __init create_domUs(void)
-{
-    struct dt_device_node *node;
-    const struct dt_device_node *cpupool_node,
-                                *chosen = dt_find_node_by_path("/chosen");
-
-    BUG_ON(chosen == NULL);
-    dt_for_each_child_node(chosen, node)
-    {
-        struct domain *d;
-        struct xen_domctl_createdomain d_cfg = {
-            .arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE,
-            .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
-            /*
-             * The default of 1023 should be sufficient for guests because
-             * on ARM we don't bind physical interrupts to event channels.
-             * The only use of the evtchn port is inter-domain communications.
-             * 1023 is also the default value used in libxl.
-             */
-            .max_evtchn_port = 1023,
-            .max_grant_frames = -1,
-            .max_maptrack_frames = -1,
-            .grant_opts = XEN_DOMCTL_GRANT_version(opt_gnttab_max_version),
-        };
-        unsigned int flags = 0U;
-        uint32_t val;
-        int rc;
-
-        if ( !dt_device_is_compatible(node, "xen,domain") )
-            continue;
-
-        if ( (max_init_domid + 1) >= DOMID_FIRST_RESERVED )
-            panic("No more domain IDs available\n");
-
-        if ( dt_find_property(node, "xen,static-mem", NULL) )
-            flags |= CDF_staticmem;
-
-        if ( dt_property_read_bool(node, "direct-map") )
-        {
-            if ( !(flags & CDF_staticmem) )
-                panic("direct-map is not valid for domain %s without static allocation.\n",
-                      dt_node_name(node));
-
-            flags |= CDF_directmap;
-        }
-
-        if ( !dt_property_read_u32(node, "cpus", &d_cfg.max_vcpus) )
-            panic("Missing property 'cpus' for domain %s\n",
-                  dt_node_name(node));
-
-        if ( dt_find_compatible_node(node, NULL, "multiboot,device-tree") &&
-             iommu_enabled )
-            d_cfg.flags |= XEN_DOMCTL_CDF_iommu;
-
-        if ( !dt_property_read_u32(node, "nr_spis", &d_cfg.arch.nr_spis) )
-        {
-            int vpl011_virq = GUEST_VPL011_SPI;
-
-            d_cfg.arch.nr_spis = gic_number_lines() - 32;
-
-            /*
-             * The VPL011 virq is GUEST_VPL011_SPI, unless direct-map is
-             * set, in which case it'll match the hardware.
-             *
-             * Since the domain is not yet created, we can't use
-             * d->arch.vpl011.irq. So the logic to find the vIRQ has to
-             * be hardcoded.
-             * The logic here shall be consistent with the one in
-             * domain_vpl011_init().
-             */
-            if ( flags & CDF_directmap )
-            {
-                vpl011_virq = serial_irq(SERHND_DTUART);
-                if ( vpl011_virq < 0 )
-                    panic("Error getting IRQ number for this serial port %d\n",
-                          SERHND_DTUART);
-            }
-
-            /*
-             * vpl011 uses one emulated SPI. If vpl011 is requested, make
-             * sure that we allocate enough SPIs for it.
-             */
-            if ( dt_property_read_bool(node, "vpl011") )
-                d_cfg.arch.nr_spis = MAX(d_cfg.arch.nr_spis,
-                                         vpl011_virq - 32 + 1);
-        }
-
-        /* Get the optional property domain-cpupool */
-        cpupool_node = dt_parse_phandle(node, "domain-cpupool", 0);
-        if ( cpupool_node )
-        {
-            int pool_id = btcpupools_get_domain_pool_id(cpupool_node);
-            if ( pool_id < 0 )
-                panic("Error getting cpupool id from domain-cpupool (%d)\n",
-                      pool_id);
-            d_cfg.cpupool_id = pool_id;
-        }
-
-        if ( dt_property_read_u32(node, "max_grant_version", &val) )
-            d_cfg.grant_opts = XEN_DOMCTL_GRANT_version(val);
-
-        if ( dt_property_read_u32(node, "max_grant_frames", &val) )
-        {
-            if ( val > INT32_MAX )
-                panic("max_grant_frames (%"PRIu32") overflow\n", val);
-            d_cfg.max_grant_frames = val;
-        }
-
-        if ( dt_property_read_u32(node, "max_maptrack_frames", &val) )
-        {
-            if ( val > INT32_MAX )
-                panic("max_maptrack_frames (%"PRIu32") overflow\n", val);
-            d_cfg.max_maptrack_frames = val;
-        }
-
-        if ( dt_get_property(node, "sve", &val) )
-        {
-#ifdef CONFIG_ARM64_SVE
-            unsigned int sve_vl_bits;
-            bool ret = false;
-
-            if ( !val )
-            {
-                /* Property found with no value, means max HW VL supported */
-                ret = sve_domctl_vl_param(-1, &sve_vl_bits);
-            }
-            else
-            {
-                if ( dt_property_read_u32(node, "sve", &val) )
-                    ret = sve_domctl_vl_param(val, &sve_vl_bits);
-                else
-                    panic("Error reading 'sve' property\n");
-            }
-
-            if ( ret )
-                d_cfg.arch.sve_vl = sve_encode_vl(sve_vl_bits);
-            else
-                panic("SVE vector length error\n");
-#else
-            panic("'sve' property found, but CONFIG_ARM64_SVE not selected\n");
-#endif
-        }
-
-        /*
-         * The variable max_init_domid is initialized with zero, so here it's
-         * very important to use the pre-increment operator to call
-         * domain_create() with a domid > 0. (domid == 0 is reserved for Dom0)
-         */
-        d = domain_create(++max_init_domid, &d_cfg, flags);
-        if ( IS_ERR(d) )
-            panic("Error creating domain %s (rc = %ld)\n",
-                  dt_node_name(node), PTR_ERR(d));
-
-        d->is_console = true;
-        dt_device_set_used_by(node, d->domain_id);
-
-        rc = construct_domU(d, node);
-        if ( rc )
-            panic("Could not set up domain %s (rc = %d)\n",
-                  dt_node_name(node), rc);
-    }
-}
-
 static int __init construct_dom0(struct domain *d)
 {
     struct kernel_info kinfo = {};
diff --git a/xen/arch/arm/include/asm/dom0less-build.h b/xen/arch/arm/include/asm/dom0less-build.h
new file mode 100644
index 000000000000..0d28fa1bee46
--- /dev/null
+++ b/xen/arch/arm/include/asm/dom0less-build.h
@@ -0,0 +1,25 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * xen/arch/arm/include/asm/dom0less-build.h
+ *
+ * Copyright (C) 2023 Arm Ltd.
+ */
+
+#ifndef __ARM_DOM0LESS_BUILD_H_
+#define __ARM_DOM0LESS_BUILD_H_
+
+#include <asm/kernel.h>
+
+void create_domUs(void);
+bool is_dom0less_mode(void);
+
+#endif  /* __ARM_DOM0LESS_BUILD_H_ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:b
+ */
diff --git a/xen/arch/arm/include/asm/domain_build.h b/xen/arch/arm/include/asm/domain_build.h
index b9329c9ee032..d95cf376048f 100644
--- a/xen/arch/arm/include/asm/domain_build.h
+++ b/xen/arch/arm/include/asm/domain_build.h
@@ -4,9 +4,45 @@
 #include <xen/sched.h>
 #include <asm/kernel.h>
 
+typedef __be32 gic_interrupt_t[3];
+
+int construct_domain(struct domain *d, struct kernel_info *kinfo);
+int domain_fdt_begin_node(void *fdt, const char *name, uint64_t unit);
+int make_resv_memory_node(const struct domain *d, void *fdt, int addrcells,
+                          int sizecells, const struct meminfo *mem);
 int make_chosen_node(const struct kernel_info *kinfo);
+int make_cpus_node(const struct domain *d, void *fdt);
+int make_hypervisor_node(struct domain *d, const struct kernel_info *kinfo,
+                         int addrcells, int sizecells);
+int make_memory_node(const struct domain *d, void *fdt, int addrcells,
+                     int sizecells, struct meminfo *mem);
+int make_psci_node(void *fdt);
+int make_timer_node(const struct kernel_info *kinfo);
 void evtchn_allocate(struct domain *d);
 
+unsigned int get_allocation_size(paddr_t size);
+
+/*
+ * handle_device_interrupts retrieves the interrupts configuration from
+ * a device tree node and maps those interrupts to the target domain.
+ *
+ * Returns:
+ *   < 0 error
+ *   0   success
+ */
+int handle_device_interrupts(struct domain *d, struct dt_device_node *dev,
+                             bool need_mapping);
+
+/*
+ * Helper to write an interrupts with the GIC format
+ * This code is assuming the irq is an PPI.
+ */
+void set_interrupt(gic_interrupt_t interrupt, unsigned int irq,
+                   unsigned int cpumask, unsigned int level);
+
+int process_shm(struct domain *d, struct kernel_info *kinfo,
+                const struct dt_device_node *node);
+
 #ifndef CONFIG_ACPI
 static inline int prepare_acpi(struct domain *d, struct kernel_info *kinfo)
 {
@@ -17,6 +53,28 @@ static inline int prepare_acpi(struct domain *d, struct kernel_info *kinfo)
 #else
 int prepare_acpi(struct domain *d, struct kernel_info *kinfo);
 #endif
+
+#ifdef CONFIG_STATIC_MEMORY
+void allocate_static_memory(struct domain *d, struct kernel_info *kinfo,
+                            const struct dt_device_node *node);
+void assign_static_memory_11(struct domain *d, struct kernel_info *kinfo,
+                             const struct dt_device_node *node);
+#else
+static inline void allocate_static_memory(struct domain *d,
+                                          struct kernel_info *kinfo,
+                                          const struct dt_device_node *node)
+{
+    ASSERT_UNREACHABLE();
+}
+
+static inline void assign_static_memory_11(struct domain *d,
+                                           struct kernel_info *kinfo,
+                                           const struct dt_device_node *node)
+{
+    ASSERT_UNREACHABLE();
+}
+#endif
+
 #endif
 
 /*
diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
index b8866c20f462..cd4c7815790b 100644
--- a/xen/arch/arm/include/asm/setup.h
+++ b/xen/arch/arm/include/asm/setup.h
@@ -135,7 +135,6 @@ void acpi_create_efi_mmap_table(struct domain *d,
 
 int acpi_make_efi_nodes(void *fdt, struct membank tbl_add[]);
 
-void create_domUs(void);
 void create_dom0(void);
 void alloc_static_evtchn(void);
 
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index db748839d383..db0299d540dc 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -34,6 +34,7 @@
 #include <xen/warning.h>
 #include <xen/hypercall.h>
 #include <asm/alternative.h>
+#include <asm/dom0less-build.h>
 #include <asm/page.h>
 #include <asm/current.h>
 #include <asm/setup.h>
@@ -1042,38 +1043,6 @@ static void __init setup_mm(void)
 }
 #endif
 
-static bool __init is_dom0less_mode(void)
-{
-    struct bootmodules *mods = &bootinfo.modules;
-    struct bootmodule *mod;
-    unsigned int i;
-    bool dom0found = false;
-    bool domUfound = false;
-
-    /* Look into the bootmodules */
-    for ( i = 0 ; i < mods->nr_mods ; i++ )
-    {
-        mod = &mods->module[i];
-        /* Find if dom0 and domU kernels are present */
-        if ( mod->kind == BOOTMOD_KERNEL )
-        {
-            if ( mod->domU == false )
-            {
-                dom0found = true;
-                break;
-            }
-            else
-                domUfound = true;
-        }
-    }
-
-    /*
-     * If there is no dom0 kernel but at least one domU, then we are in
-     * dom0less mode
-     */
-    return ( !dom0found && domUfound );
-}
-
 size_t __read_mostly dcache_line_bytes;
 
 /* C entry point for boot CPU */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:01:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:01:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608951.947810 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlV6t-0007TN-Sc; Wed, 27 Sep 2023 14:01:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608951.947810; Wed, 27 Sep 2023 14:01:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlV6t-0007S9-O3; Wed, 27 Sep 2023 14:01:51 +0000
Received: by outflank-mailman (input) for mailman id 608951;
 Wed, 27 Sep 2023 14:01:50 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Xec+=FL=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qlV6s-0006eS-7S
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 14:01:50 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 65fd9b5f-5d3e-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 16:01:47 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 5377CDA7;
 Wed, 27 Sep 2023 07:02:25 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.arm.com [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 43FE43F59C;
 Wed, 27 Sep 2023 07:01:46 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 65fd9b5f-5d3e-11ee-878a-cb3800f73035
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v2 4/5] xen/arm: Move static memory build code in separate modules
Date: Wed, 27 Sep 2023 15:01:32 +0100
Message-Id: <20230927140133.631192-5-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230927140133.631192-1-luca.fancellu@arm.com>
References: <20230927140133.631192-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Move static memory and static shared memory code in separate modules
so that they are included only when the corresponding feature is
enabled, doing that we modularise the features and we remove some
ifdefs from the code to improve readability.

Move process_shm_node function from bootfdt module and make it
externally visible.

A static inline helper called process_shm_chosen is introduced, it
will call the process_shm function for the '/chosen' node, and will
be used by the function construct_dom0 instead of using directly
process_shm, allowing some #ifdef to be removed.

No functional changes are intended.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 xen/arch/arm/Makefile                     |   2 +
 xen/arch/arm/bootfdt.c                    | 161 +-----
 xen/arch/arm/dom0less-build.c             |   4 +-
 xen/arch/arm/domain_build.c               | 614 +---------------------
 xen/arch/arm/include/asm/dom0less-build.h |   2 -
 xen/arch/arm/include/asm/domain_build.h   |  24 -
 xen/arch/arm/include/asm/static-memory.h  |  50 ++
 xen/arch/arm/include/asm/static-shmem.h   |  72 +++
 xen/arch/arm/setup.c                      |  25 +-
 xen/arch/arm/static-memory.c              | 294 +++++++++++
 xen/arch/arm/static-shmem.c               | 515 ++++++++++++++++++
 11 files changed, 939 insertions(+), 824 deletions(-)
 create mode 100644 xen/arch/arm/include/asm/static-memory.h
 create mode 100644 xen/arch/arm/include/asm/static-shmem.h
 create mode 100644 xen/arch/arm/static-memory.c
 create mode 100644 xen/arch/arm/static-shmem.c

diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile
index 70dd7201ef30..89ef0c9075b5 100644
--- a/xen/arch/arm/Makefile
+++ b/xen/arch/arm/Makefile
@@ -50,6 +50,8 @@ obj-y += setup.o
 obj-y += shutdown.o
 obj-y += smp.o
 obj-y += smpboot.o
+obj-$(CONFIG_STATIC_MEMORY) += static-memory.init.o
+obj-$(CONFIG_STATIC_SHM) += static-shmem.init.o
 obj-y += sysctl.o
 obj-y += time.o
 obj-y += traps.o
diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
index 2673ad17a1e1..fcf851b4c99b 100644
--- a/xen/arch/arm/bootfdt.c
+++ b/xen/arch/arm/bootfdt.c
@@ -15,6 +15,7 @@
 #include <xen/sort.h>
 #include <xsm/xsm.h>
 #include <asm/setup.h>
+#include <asm/static-shmem.h>
 
 static bool __init device_tree_node_matches(const void *fdt, int node,
                                             const char *match)
@@ -402,166 +403,6 @@ static int __init process_domain_node(const void *fdt, int node,
                                    MEMBANK_STATIC_DOMAIN);
 }
 
-#ifdef CONFIG_STATIC_SHM
-static int __init process_shm_node(const void *fdt, int node,
-                                   uint32_t address_cells, uint32_t size_cells)
-{
-    const struct fdt_property *prop, *prop_id, *prop_role;
-    const __be32 *cell;
-    paddr_t paddr, gaddr, size;
-    struct meminfo *mem = &bootinfo.reserved_mem;
-    unsigned int i;
-    int len;
-    bool owner = false;
-    const char *shm_id;
-
-    if ( address_cells < 1 || size_cells < 1 )
-    {
-        printk("fdt: invalid #address-cells or #size-cells for static shared memory node.\n");
-        return -EINVAL;
-    }
-
-    /*
-     * "xen,shm-id" property holds an arbitrary string with a strict limit
-     * on the number of characters, MAX_SHM_ID_LENGTH
-     */
-    prop_id = fdt_get_property(fdt, node, "xen,shm-id", NULL);
-    if ( !prop_id )
-        return -ENOENT;
-    shm_id = (const char *)prop_id->data;
-    if ( strnlen(shm_id, MAX_SHM_ID_LENGTH) == MAX_SHM_ID_LENGTH )
-    {
-        printk("fdt: invalid xen,shm-id %s, it must be limited to %u characters\n",
-               shm_id, MAX_SHM_ID_LENGTH);
-        return -EINVAL;
-    }
-
-    /*
-     * "role" property is optional and if it is defined explicitly,
-     * it must be either `owner` or `borrower`.
-     */
-    prop_role = fdt_get_property(fdt, node, "role", NULL);
-    if ( prop_role )
-    {
-        if ( !strcmp(prop_role->data, "owner") )
-            owner = true;
-        else if ( strcmp(prop_role->data, "borrower") )
-        {
-            printk("fdt: invalid `role` property for static shared memory node.\n");
-            return -EINVAL;
-        }
-    }
-
-    /*
-     * xen,shared-mem = <paddr, gaddr, size>;
-     * Memory region starting from physical address #paddr of #size shall
-     * be mapped to guest physical address #gaddr as static shared memory
-     * region.
-     */
-    prop = fdt_get_property(fdt, node, "xen,shared-mem", &len);
-    if ( !prop )
-        return -ENOENT;
-
-    if ( len != dt_cells_to_size(address_cells + size_cells + address_cells) )
-    {
-        if ( len == dt_cells_to_size(size_cells + address_cells) )
-            printk("fdt: host physical address must be chosen by users at the moment.\n");
-
-        printk("fdt: invalid `xen,shared-mem` property.\n");
-        return -EINVAL;
-    }
-
-    cell = (const __be32 *)prop->data;
-    device_tree_get_reg(&cell, address_cells, address_cells, &paddr, &gaddr);
-    size = dt_next_cell(size_cells, &cell);
-
-    if ( !size )
-    {
-        printk("fdt: the size for static shared memory region can not be zero\n");
-        return -EINVAL;
-    }
-
-    for ( i = 0; i < mem->nr_banks; i++ )
-    {
-        /*
-         * Meet the following check:
-         * 1) The shm ID matches and the region exactly match
-         * 2) The shm ID doesn't match and the region doesn't overlap
-         * with an existing one
-         */
-        if ( paddr == mem->bank[i].start && size == mem->bank[i].size )
-        {
-            if ( strncmp(shm_id, mem->bank[i].shm_id, MAX_SHM_ID_LENGTH) == 0 )
-                break;
-            else
-            {
-                printk("fdt: xen,shm-id %s does not match for all the nodes using the same region.\n",
-                       shm_id);
-                return -EINVAL;
-            }
-        }
-        else
-        {
-            paddr_t end = paddr + size;
-            paddr_t bank_end = mem->bank[i].start + mem->bank[i].size;
-
-            if ( (end <= paddr) || (bank_end <= mem->bank[i].start) )
-            {
-                printk("fdt: static shared memory region %s overflow\n", shm_id);
-                return -EINVAL;
-            }
-
-            if ( check_reserved_regions_overlap(paddr, size) )
-                return -EINVAL;
-            else
-            {
-                if ( strcmp(shm_id, mem->bank[i].shm_id) != 0 )
-                    continue;
-                else
-                {
-                    printk("fdt: different shared memory region could not share the same shm ID %s\n",
-                           shm_id);
-                    return -EINVAL;
-                }
-            }
-        }
-    }
-
-    if ( i == mem->nr_banks )
-    {
-        if ( i < NR_MEM_BANKS )
-        {
-            /* Static shared memory shall be reserved from any other use. */
-            safe_strcpy(mem->bank[mem->nr_banks].shm_id, shm_id);
-            mem->bank[mem->nr_banks].start = paddr;
-            mem->bank[mem->nr_banks].size = size;
-            mem->bank[mem->nr_banks].type = MEMBANK_STATIC_DOMAIN;
-            mem->nr_banks++;
-        }
-        else
-        {
-            printk("Warning: Max number of supported memory regions reached.\n");
-            return -ENOSPC;
-        }
-    }
-    /*
-     * keep a count of the number of borrowers, which later may be used
-     * to calculate the reference count.
-     */
-    if ( !owner )
-        mem->bank[i].nr_shm_borrowers++;
-
-    return 0;
-}
-#else
-static int __init process_shm_node(const void *fdt, int node,
-                                   uint32_t address_cells, uint32_t size_cells)
-{
-    printk("CONFIG_STATIC_SHM must be enabled for parsing static shared memory nodes\n");
-    return -EINVAL;
-}
-#endif
-
 static int __init early_scan_node(const void *fdt,
                                   int node, const char *name, int depth,
                                   u32 address_cells, u32 size_cells,
diff --git a/xen/arch/arm/dom0less-build.c b/xen/arch/arm/dom0less-build.c
index dc9c90cf00a7..a401501fd70c 100644
--- a/xen/arch/arm/dom0less-build.c
+++ b/xen/arch/arm/dom0less-build.c
@@ -21,6 +21,8 @@
 #include <asm/arm64/sve.h>
 #include <asm/dom0less-build.h>
 #include <asm/domain_build.h>
+#include <asm/static-memory.h>
+#include <asm/static-shmem.h>
 
 bool __init is_dom0less_mode(void)
 {
@@ -875,11 +877,9 @@ static int __init construct_domU(struct domain *d,
     else
         assign_static_memory_11(d, &kinfo, node);
 
-#ifdef CONFIG_STATIC_SHM
     rc = process_shm(d, &kinfo, node);
     if ( rc < 0 )
         return rc;
-#endif
 
     /*
      * Base address and irq number are needed when creating vpl011 device
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index a0d656b33629..9ffe498a434c 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -30,6 +30,7 @@
 #include <asm/cpufeature.h>
 #include <asm/dom0less-build.h>
 #include <asm/domain_build.h>
+#include <asm/static-shmem.h>
 #include <xen/event.h>
 
 #include <xen/irq.h>
@@ -414,533 +415,6 @@ static void __init allocate_memory_11(struct domain *d,
     }
 }
 
-#ifdef CONFIG_STATIC_MEMORY
-static bool __init append_static_memory_to_bank(struct domain *d,
-                                                struct membank *bank,
-                                                mfn_t smfn,
-                                                paddr_t size)
-{
-    int res;
-    unsigned int nr_pages = PFN_DOWN(size);
-    gfn_t sgfn;
-
-    /*
-     * For direct-mapped domain, the GFN match the MFN.
-     * Otherwise, this is inferred on what has already been allocated
-     * in the bank.
-     */
-    if ( !is_domain_direct_mapped(d) )
-        sgfn = gaddr_to_gfn(bank->start + bank->size);
-    else
-        sgfn = gaddr_to_gfn(mfn_to_maddr(smfn));
-
-    res = guest_physmap_add_pages(d, sgfn, smfn, nr_pages);
-    if ( res )
-    {
-        dprintk(XENLOG_ERR, "Failed to map pages to DOMU: %d", res);
-        return false;
-    }
-
-    bank->size = bank->size + size;
-
-    return true;
-}
-
-static mfn_t __init acquire_static_memory_bank(struct domain *d,
-                                               const __be32 **cell,
-                                               u32 addr_cells, u32 size_cells,
-                                               paddr_t *pbase, paddr_t *psize)
-{
-    mfn_t smfn;
-    int res;
-
-    device_tree_get_reg(cell, addr_cells, size_cells, pbase, psize);
-    ASSERT(IS_ALIGNED(*pbase, PAGE_SIZE) && IS_ALIGNED(*psize, PAGE_SIZE));
-    if ( PFN_DOWN(*psize) > UINT_MAX )
-    {
-        printk(XENLOG_ERR "%pd: static memory size too large: %#"PRIpaddr,
-               d, *psize);
-        return INVALID_MFN;
-    }
-
-    smfn = maddr_to_mfn(*pbase);
-    res = acquire_domstatic_pages(d, smfn, PFN_DOWN(*psize), 0);
-    if ( res )
-    {
-        printk(XENLOG_ERR
-               "%pd: failed to acquire static memory: %d.\n", d, res);
-        return INVALID_MFN;
-    }
-
-    return smfn;
-}
-
-static int __init parse_static_mem_prop(const struct dt_device_node *node,
-                                        u32 *addr_cells, u32 *size_cells,
-                                        int *length, const __be32 **cell)
-{
-    const struct dt_property *prop;
-
-    prop = dt_find_property(node, "xen,static-mem", NULL);
-
-    *addr_cells = dt_n_addr_cells(node);
-    *size_cells = dt_n_size_cells(node);
-
-    *cell = (const __be32 *)prop->value;
-    *length = prop->length;
-
-    return 0;
-}
-
-/* Allocate memory from static memory as RAM for one specific domain d. */
-void __init allocate_static_memory(struct domain *d, struct kernel_info *kinfo,
-                                   const struct dt_device_node *node)
-{
-    u32 addr_cells, size_cells, reg_cells;
-    unsigned int nr_banks, gbank, bank = 0;
-    const uint64_t rambase[] = GUEST_RAM_BANK_BASES;
-    const uint64_t ramsize[] = GUEST_RAM_BANK_SIZES;
-    const __be32 *cell;
-    u64 tot_size = 0;
-    paddr_t pbase, psize, gsize;
-    mfn_t smfn;
-    int length;
-
-    if ( parse_static_mem_prop(node, &addr_cells, &size_cells, &length, &cell) )
-        goto fail;
-    reg_cells = addr_cells + size_cells;
-
-    /*
-     * The static memory will be mapped in the guest at the usual guest memory
-     * addresses (GUEST_RAM0_BASE, GUEST_RAM1_BASE) defined by
-     * xen/include/public/arch-arm.h.
-     */
-    gbank = 0;
-    gsize = ramsize[gbank];
-    kinfo->mem.bank[gbank].start = rambase[gbank];
-    nr_banks = length / (reg_cells * sizeof (u32));
-
-    for ( ; bank < nr_banks; bank++ )
-    {
-        smfn = acquire_static_memory_bank(d, &cell, addr_cells, size_cells,
-                                          &pbase, &psize);
-        if ( mfn_eq(smfn, INVALID_MFN) )
-            goto fail;
-
-        printk(XENLOG_INFO "%pd: STATIC BANK[%u] %#"PRIpaddr"-%#"PRIpaddr"\n",
-               d, bank, pbase, pbase + psize);
-
-        while ( 1 )
-        {
-            /* Map as much as possible the static range to the guest bank */
-            if ( !append_static_memory_to_bank(d, &kinfo->mem.bank[gbank], smfn,
-                                               min(psize, gsize)) )
-                goto fail;
-
-            /*
-             * The current physical bank is fully mapped.
-             * Handle the next physical bank.
-             */
-            if ( gsize >= psize )
-            {
-                gsize = gsize - psize;
-                break;
-            }
-            /*
-             * When current guest bank is not enough to map, exhaust
-             * the current one and seek to the next.
-             * Before seeking to the next, check if we still have available
-             * guest bank.
-             */
-            else if ( (gbank + 1) >= GUEST_RAM_BANKS )
-            {
-                printk(XENLOG_ERR "Exhausted all possible guest banks.\n");
-                goto fail;
-            }
-            else
-            {
-                psize = psize - gsize;
-                smfn = mfn_add(smfn, gsize >> PAGE_SHIFT);
-                /* Update to the next guest bank. */
-                gbank++;
-                gsize = ramsize[gbank];
-                kinfo->mem.bank[gbank].start = rambase[gbank];
-            }
-        }
-
-        tot_size += psize;
-    }
-
-    kinfo->mem.nr_banks = ++gbank;
-
-    kinfo->unassigned_mem -= tot_size;
-    /*
-     * The property 'memory' should match the amount of memory given to the
-     * guest.
-     * Currently, it is only possible to either acquire static memory or let
-     * Xen allocate. *Mixing* is not supported.
-     */
-    if ( kinfo->unassigned_mem )
-    {
-        printk(XENLOG_ERR
-               "Size of \"memory\" property doesn't match up with the sum-up of \"xen,static-mem\". Unsupported configuration.\n");
-        goto fail;
-    }
-
-    return;
-
- fail:
-    panic("Failed to allocate requested static memory for domain %pd.\n", d);
-}
-
-/*
- * Allocate static memory as RAM for one specific domain d.
- * The static memory will be directly mapped in the guest(Guest Physical
- * Address == Physical Address).
- */
-void __init assign_static_memory_11(struct domain *d, struct kernel_info *kinfo,
-                                    const struct dt_device_node *node)
-{
-    u32 addr_cells, size_cells, reg_cells;
-    unsigned int nr_banks, bank = 0;
-    const __be32 *cell;
-    paddr_t pbase, psize;
-    mfn_t smfn;
-    int length;
-
-    if ( parse_static_mem_prop(node, &addr_cells, &size_cells, &length, &cell) )
-    {
-        printk(XENLOG_ERR
-               "%pd: failed to parse \"xen,static-mem\" property.\n", d);
-        goto fail;
-    }
-    reg_cells = addr_cells + size_cells;
-    nr_banks = length / (reg_cells * sizeof(u32));
-
-    if ( nr_banks > NR_MEM_BANKS )
-    {
-        printk(XENLOG_ERR
-               "%pd: exceed max number of supported guest memory banks.\n", d);
-        goto fail;
-    }
-
-    for ( ; bank < nr_banks; bank++ )
-    {
-        smfn = acquire_static_memory_bank(d, &cell, addr_cells, size_cells,
-                                          &pbase, &psize);
-        if ( mfn_eq(smfn, INVALID_MFN) )
-            goto fail;
-
-        printk(XENLOG_INFO "%pd: STATIC BANK[%u] %#"PRIpaddr"-%#"PRIpaddr"\n",
-               d, bank, pbase, pbase + psize);
-
-        /* One guest memory bank is matched with one physical memory bank. */
-        kinfo->mem.bank[bank].start = pbase;
-        if ( !append_static_memory_to_bank(d, &kinfo->mem.bank[bank],
-                                           smfn, psize) )
-            goto fail;
-
-        kinfo->unassigned_mem -= psize;
-    }
-
-    kinfo->mem.nr_banks = nr_banks;
-
-    /*
-     * The property 'memory' should match the amount of memory given to
-     * the guest.
-     * Currently, it is only possible to either acquire static memory or
-     * let Xen allocate. *Mixing* is not supported.
-     */
-    if ( kinfo->unassigned_mem != 0 )
-    {
-        printk(XENLOG_ERR
-               "Size of \"memory\" property doesn't match up with the sum-up of \"xen,static-mem\".\n");
-        goto fail;
-    }
-
-    return;
-
- fail:
-    panic("Failed to assign requested static memory for direct-map domain %pd.\n",
-          d);
-}
-
-#ifdef CONFIG_STATIC_SHM
-static int __init acquire_nr_borrower_domain(struct domain *d,
-                                             paddr_t pbase, paddr_t psize,
-                                             unsigned long *nr_borrowers)
-{
-    unsigned int bank;
-
-    /* Iterate reserved memory to find requested shm bank. */
-    for ( bank = 0 ; bank < bootinfo.reserved_mem.nr_banks; bank++ )
-    {
-        paddr_t bank_start = bootinfo.reserved_mem.bank[bank].start;
-        paddr_t bank_size = bootinfo.reserved_mem.bank[bank].size;
-
-        if ( (pbase == bank_start) && (psize == bank_size) )
-            break;
-    }
-
-    if ( bank == bootinfo.reserved_mem.nr_banks )
-        return -ENOENT;
-
-    *nr_borrowers = bootinfo.reserved_mem.bank[bank].nr_shm_borrowers;
-
-    return 0;
-}
-
-/*
- * This function checks whether the static shared memory region is
- * already allocated to dom_io.
- */
-static bool __init is_shm_allocated_to_domio(paddr_t pbase)
-{
-    struct page_info *page;
-    struct domain *d;
-
-    page = maddr_to_page(pbase);
-    d = page_get_owner_and_reference(page);
-    if ( d == NULL )
-        return false;
-    put_page(page);
-
-    if ( d != dom_io )
-    {
-        printk(XENLOG_ERR
-               "shm memory node has already been allocated to a specific owner %pd, Please check your configuration\n",
-               d);
-        return false;
-    }
-
-    return true;
-}
-
-static mfn_t __init acquire_shared_memory_bank(struct domain *d,
-                                               paddr_t pbase, paddr_t psize)
-{
-    mfn_t smfn;
-    unsigned long nr_pfns;
-    int res;
-
-    /*
-     * Pages of statically shared memory shall be included
-     * into domain_tot_pages().
-     */
-    nr_pfns = PFN_DOWN(psize);
-    if ( (UINT_MAX - d->max_pages) < nr_pfns )
-    {
-        printk(XENLOG_ERR "%pd: Over-allocation for d->max_pages: %lu.\n",
-               d, nr_pfns);
-        return INVALID_MFN;
-    }
-    d->max_pages += nr_pfns;
-
-    smfn = maddr_to_mfn(pbase);
-    res = acquire_domstatic_pages(d, smfn, nr_pfns, 0);
-    if ( res )
-    {
-        printk(XENLOG_ERR
-               "%pd: failed to acquire static memory: %d.\n", d, res);
-        d->max_pages -= nr_pfns;
-        return INVALID_MFN;
-    }
-
-    return smfn;
-}
-
-static int __init assign_shared_memory(struct domain *d,
-                                       uint32_t addr_cells, uint32_t size_cells,
-                                       paddr_t pbase, paddr_t psize,
-                                       paddr_t gbase)
-{
-    mfn_t smfn;
-    int ret = 0;
-    unsigned long nr_pages, nr_borrowers, i;
-    struct page_info *page;
-
-    printk("%pd: allocate static shared memory BANK %#"PRIpaddr"-%#"PRIpaddr".\n",
-           d, pbase, pbase + psize);
-
-    smfn = acquire_shared_memory_bank(d, pbase, psize);
-    if ( mfn_eq(smfn, INVALID_MFN) )
-        return -EINVAL;
-
-    /*
-     * DOMID_IO is not auto-translated (i.e. it sees RAM 1:1). So we do not need
-     * to create mapping in the P2M.
-     */
-    nr_pages = PFN_DOWN(psize);
-    if ( d != dom_io )
-    {
-        ret = guest_physmap_add_pages(d, gaddr_to_gfn(gbase), smfn,
-                                      PFN_DOWN(psize));
-        if ( ret )
-        {
-            printk(XENLOG_ERR "Failed to map shared memory to %pd.\n", d);
-            return ret;
-        }
-    }
-
-    /*
-     * Get the right amount of references per page, which is the number of
-     * borrower domains.
-     */
-    ret = acquire_nr_borrower_domain(d, pbase, psize, &nr_borrowers);
-    if ( ret )
-        return ret;
-
-    /*
-     * Instead of letting borrower domain get a page ref, we add as many
-     * additional reference as the number of borrowers when the owner
-     * is allocated, since there is a chance that owner is created
-     * after borrower.
-     * So if the borrower is created first, it will cause adding pages
-     * in the P2M without reference.
-     */
-    page = mfn_to_page(smfn);
-    for ( i = 0; i < nr_pages; i++ )
-    {
-        if ( !get_page_nr(page + i, d, nr_borrowers) )
-        {
-            printk(XENLOG_ERR
-                   "Failed to add %lu references to page %"PRI_mfn".\n",
-                   nr_borrowers, mfn_x(smfn) + i);
-            goto fail;
-        }
-    }
-
-    return 0;
-
- fail:
-    while ( --i >= 0 )
-        put_page_nr(page + i, nr_borrowers);
-    return ret;
-}
-
-static int __init append_shm_bank_to_domain(struct kernel_info *kinfo,
-                                            paddr_t start, paddr_t size,
-                                            const char *shm_id)
-{
-    if ( kinfo->shm_mem.nr_banks >= NR_MEM_BANKS )
-        return -ENOMEM;
-
-    kinfo->shm_mem.bank[kinfo->shm_mem.nr_banks].start = start;
-    kinfo->shm_mem.bank[kinfo->shm_mem.nr_banks].size = size;
-    safe_strcpy(kinfo->shm_mem.bank[kinfo->shm_mem.nr_banks].shm_id, shm_id);
-    kinfo->shm_mem.nr_banks++;
-
-    return 0;
-}
-
-int __init process_shm(struct domain *d, struct kernel_info *kinfo,
-                       const struct dt_device_node *node)
-{
-    struct dt_device_node *shm_node;
-
-    dt_for_each_child_node(node, shm_node)
-    {
-        const struct dt_property *prop;
-        const __be32 *cells;
-        uint32_t addr_cells, size_cells;
-        paddr_t gbase, pbase, psize;
-        int ret = 0;
-        unsigned int i;
-        const char *role_str;
-        const char *shm_id;
-        bool owner_dom_io = true;
-
-        if ( !dt_device_is_compatible(shm_node, "xen,domain-shared-memory-v1") )
-            continue;
-
-        /*
-         * xen,shared-mem = <pbase, gbase, size>;
-         * TODO: pbase is optional.
-         */
-        addr_cells = dt_n_addr_cells(shm_node);
-        size_cells = dt_n_size_cells(shm_node);
-        prop = dt_find_property(shm_node, "xen,shared-mem", NULL);
-        BUG_ON(!prop);
-        cells = (const __be32 *)prop->value;
-        device_tree_get_reg(&cells, addr_cells, addr_cells, &pbase, &gbase);
-        psize = dt_read_paddr(cells, size_cells);
-        if ( !IS_ALIGNED(pbase, PAGE_SIZE) || !IS_ALIGNED(gbase, PAGE_SIZE) )
-        {
-            printk("%pd: physical address 0x%"PRIpaddr", or guest address 0x%"PRIpaddr" is not suitably aligned.\n",
-                   d, pbase, gbase);
-            return -EINVAL;
-        }
-        if ( !IS_ALIGNED(psize, PAGE_SIZE) )
-        {
-            printk("%pd: size 0x%"PRIpaddr" is not suitably aligned\n",
-                   d, psize);
-            return -EINVAL;
-        }
-
-        for ( i = 0; i < PFN_DOWN(psize); i++ )
-            if ( !mfn_valid(mfn_add(maddr_to_mfn(pbase), i)) )
-            {
-                printk("%pd: invalid physical address 0x%"PRI_mfn"\n",
-                       d, mfn_x(mfn_add(maddr_to_mfn(pbase), i)));
-                return -EINVAL;
-            }
-
-        /*
-         * "role" property is optional and if it is defined explicitly,
-         * then the owner domain is not the default "dom_io" domain.
-         */
-        if ( dt_property_read_string(shm_node, "role", &role_str) == 0 )
-            owner_dom_io = false;
-
-        if ( dt_property_read_string(shm_node, "xen,shm-id", &shm_id) )
-        {
-            printk("%pd: invalid \"xen,shm-id\" property", d);
-            return -EINVAL;
-        }
-        BUG_ON((strlen(shm_id) <= 0) || (strlen(shm_id) >= MAX_SHM_ID_LENGTH));
-
-        /*
-         * DOMID_IO is a fake domain and is not described in the Device-Tree.
-         * Therefore when the owner of the shared region is DOMID_IO, we will
-         * only find the borrowers.
-         */
-        if ( (owner_dom_io && !is_shm_allocated_to_domio(pbase)) ||
-             (!owner_dom_io && strcmp(role_str, "owner") == 0) )
-        {
-            /*
-             * We found the first borrower of the region, the owner was not
-             * specified, so they should be assigned to dom_io.
-             */
-            ret = assign_shared_memory(owner_dom_io ? dom_io : d,
-                                       addr_cells, size_cells,
-                                       pbase, psize, gbase);
-            if ( ret )
-                return ret;
-        }
-
-        if ( owner_dom_io || (strcmp(role_str, "borrower") == 0) )
-        {
-            /* Set up P2M foreign mapping for borrower domain. */
-            ret = map_regions_p2mt(d, _gfn(PFN_UP(gbase)), PFN_DOWN(psize),
-                                   _mfn(PFN_UP(pbase)), p2m_map_foreign_rw);
-            if ( ret )
-                return ret;
-        }
-
-        /*
-         * Record static shared memory region info for later setting
-         * up shm-node in guest device tree.
-         */
-        ret = append_shm_bank_to_domain(kinfo, gbase, psize, shm_id);
-        if ( ret )
-            return ret;
-    }
-
-    return 0;
-}
-#endif /* CONFIG_STATIC_SHM */
-#endif
-
 /*
  * When PCI passthrough is available we want to keep the
  * "linux,pci-domain" in sync for every host bridge.
@@ -1274,85 +748,6 @@ int __init make_memory_node(const struct domain *d,
     return res;
 }
 
-#ifdef CONFIG_STATIC_SHM
-static int __init make_shm_memory_node(const struct domain *d,
-                                       void *fdt,
-                                       int addrcells, int sizecells,
-                                       const struct meminfo *mem)
-{
-    unsigned int i = 0;
-    int res = 0;
-
-    if ( mem->nr_banks == 0 )
-        return -ENOENT;
-
-    /*
-     * For each shared memory region, a range is exposed under
-     * the /reserved-memory node as a child node. Each range sub-node is
-     * named xen-shmem@<address>.
-     */
-    dt_dprintk("Create xen-shmem node\n");
-
-    for ( ; i < mem->nr_banks; i++ )
-    {
-        uint64_t start = mem->bank[i].start;
-        uint64_t size = mem->bank[i].size;
-        const char compat[] = "xen,shared-memory-v1";
-        /* Worst case addrcells + sizecells */
-        __be32 reg[GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS];
-        __be32 *cells;
-        unsigned int len = (addrcells + sizecells) * sizeof(__be32);
-
-        res = domain_fdt_begin_node(fdt, "xen-shmem", mem->bank[i].start);
-        if ( res )
-            return res;
-
-        res = fdt_property(fdt, "compatible", compat, sizeof(compat));
-        if ( res )
-            return res;
-
-        cells = reg;
-        dt_child_set_range(&cells, addrcells, sizecells, start, size);
-
-        res = fdt_property(fdt, "reg", reg, len);
-        if ( res )
-            return res;
-
-        dt_dprintk("Shared memory bank %u: %#"PRIx64"->%#"PRIx64"\n",
-                   i, start, start + size);
-
-        res = fdt_property_string(fdt, "xen,id", mem->bank[i].shm_id);
-        if ( res )
-            return res;
-
-        /*
-         * TODO:
-         * - xen,offset: (borrower VMs only)
-         *   64 bit integer offset within the owner virtual machine's shared
-         *   memory region used for the mapping in the borrower VM
-         */
-        res = fdt_property_u64(fdt, "xen,offset", 0);
-        if ( res )
-            return res;
-
-        res = fdt_end_node(fdt);
-        if ( res )
-            return res;
-    }
-
-    return res;
-}
-#else
-static int __init make_shm_memory_node(const struct domain *d,
-                                       void *fdt,
-                                       int addrcells, int sizecells,
-                                       const struct meminfo *mem)
-{
-    ASSERT_UNREACHABLE();
-    return -EOPNOTSUPP;
-}
-#endif
-
 int __init make_resv_memory_node(const struct domain *d,
                                  void *fdt,
                                  int addrcells, int sizecells,
@@ -2765,9 +2160,6 @@ static int __init construct_dom0(struct domain *d)
 {
     struct kernel_info kinfo = {};
     int rc;
-#ifdef CONFIG_STATIC_SHM
-    const struct dt_device_node *chosen = dt_find_node_by_path("/chosen");
-#endif
 
     /* Sanity! */
     BUG_ON(d->domain_id != 0);
@@ -2802,11 +2194,9 @@ static int __init construct_dom0(struct domain *d)
     allocate_memory_11(d, &kinfo);
     find_gnttab_region(d, &kinfo);
 
-#ifdef CONFIG_STATIC_SHM
-    rc = process_shm(d, &kinfo, chosen);
+    rc = process_shm_chosen(d, &kinfo);
     if ( rc < 0 )
         return rc;
-#endif
 
     /* Map extra GIC MMIO, irqs and other hw stuffs to dom0. */
     rc = gic_map_hwdom_extra_mappings(d);
diff --git a/xen/arch/arm/include/asm/dom0less-build.h b/xen/arch/arm/include/asm/dom0less-build.h
index 0d28fa1bee46..d95cb6234b62 100644
--- a/xen/arch/arm/include/asm/dom0less-build.h
+++ b/xen/arch/arm/include/asm/dom0less-build.h
@@ -8,8 +8,6 @@
 #ifndef __ARM_DOM0LESS_BUILD_H_
 #define __ARM_DOM0LESS_BUILD_H_
 
-#include <asm/kernel.h>
-
 void create_domUs(void);
 bool is_dom0less_mode(void);
 
diff --git a/xen/arch/arm/include/asm/domain_build.h b/xen/arch/arm/include/asm/domain_build.h
index d95cf376048f..b192bdadf3d8 100644
--- a/xen/arch/arm/include/asm/domain_build.h
+++ b/xen/arch/arm/include/asm/domain_build.h
@@ -40,9 +40,6 @@ int handle_device_interrupts(struct domain *d, struct dt_device_node *dev,
 void set_interrupt(gic_interrupt_t interrupt, unsigned int irq,
                    unsigned int cpumask, unsigned int level);
 
-int process_shm(struct domain *d, struct kernel_info *kinfo,
-                const struct dt_device_node *node);
-
 #ifndef CONFIG_ACPI
 static inline int prepare_acpi(struct domain *d, struct kernel_info *kinfo)
 {
@@ -54,27 +51,6 @@ static inline int prepare_acpi(struct domain *d, struct kernel_info *kinfo)
 int prepare_acpi(struct domain *d, struct kernel_info *kinfo);
 #endif
 
-#ifdef CONFIG_STATIC_MEMORY
-void allocate_static_memory(struct domain *d, struct kernel_info *kinfo,
-                            const struct dt_device_node *node);
-void assign_static_memory_11(struct domain *d, struct kernel_info *kinfo,
-                             const struct dt_device_node *node);
-#else
-static inline void allocate_static_memory(struct domain *d,
-                                          struct kernel_info *kinfo,
-                                          const struct dt_device_node *node)
-{
-    ASSERT_UNREACHABLE();
-}
-
-static inline void assign_static_memory_11(struct domain *d,
-                                           struct kernel_info *kinfo,
-                                           const struct dt_device_node *node)
-{
-    ASSERT_UNREACHABLE();
-}
-#endif
-
 #endif
 
 /*
diff --git a/xen/arch/arm/include/asm/static-memory.h b/xen/arch/arm/include/asm/static-memory.h
new file mode 100644
index 000000000000..0fe193b36861
--- /dev/null
+++ b/xen/arch/arm/include/asm/static-memory.h
@@ -0,0 +1,50 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * xen/arch/arm/include/asm/static-memory.h
+ *
+ * Copyright (C) 2023 Arm Ltd.
+ */
+
+#ifndef __ARM_STATIC_MEMORY_H_
+#define __ARM_STATIC_MEMORY_H_
+
+#include <asm/kernel.h>
+
+#ifdef CONFIG_STATIC_MEMORY
+
+void allocate_static_memory(struct domain *d, struct kernel_info *kinfo,
+                            const struct dt_device_node *node);
+void assign_static_memory_11(struct domain *d, struct kernel_info *kinfo,
+                             const struct dt_device_node *node);
+void init_staticmem_pages(void);
+
+#else /* !CONFIG_STATIC_MEMORY */
+
+static inline void allocate_static_memory(struct domain *d,
+                                          struct kernel_info *kinfo,
+                                          const struct dt_device_node *node)
+{
+    ASSERT_UNREACHABLE();
+}
+
+static inline void assign_static_memory_11(struct domain *d,
+                                           struct kernel_info *kinfo,
+                                           const struct dt_device_node *node)
+{
+    ASSERT_UNREACHABLE();
+}
+
+static inline void init_staticmem_pages(void) {};
+
+#endif /* CONFIG_STATIC_MEMORY */
+
+#endif  /* __ARM_STATIC_MEMORY_H_ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:b
+ */
diff --git a/xen/arch/arm/include/asm/static-shmem.h b/xen/arch/arm/include/asm/static-shmem.h
new file mode 100644
index 000000000000..5a8075fbee55
--- /dev/null
+++ b/xen/arch/arm/include/asm/static-shmem.h
@@ -0,0 +1,72 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * xen/arch/arm/include/asm/static-shmem.h
+ *
+ * Copyright (C) 2023 Arm Ltd.
+ */
+
+#ifndef __ARM_STATIC_SHMEM_H_
+#define __ARM_STATIC_SHMEM_H_
+
+#include <asm/kernel.h>
+
+#ifdef CONFIG_STATIC_SHM
+
+int make_shm_memory_node(const struct domain *d, void *fdt, int addrcells,
+                         int sizecells, const struct meminfo *mem);
+
+int process_shm(struct domain *d, struct kernel_info *kinfo,
+                const struct dt_device_node *node);
+
+static inline int process_shm_chosen(struct domain *d,
+                                     struct kernel_info *kinfo)
+{
+    const struct dt_device_node *node = dt_find_node_by_path("/chosen");
+
+    return process_shm(d, kinfo, node);
+}
+
+int process_shm_node(const void *fdt, int node, uint32_t address_cells,
+                     uint32_t size_cells);
+
+#else /* !CONFIG_STATIC_SHM */
+
+static inline int make_shm_memory_node(const struct domain *d, void *fdt,
+                                       int addrcells, int sizecells,
+                                       const struct meminfo *mem)
+{
+    ASSERT_UNREACHABLE();
+    return -EOPNOTSUPP;
+}
+
+static inline int process_shm(struct domain *d, struct kernel_info *kinfo,
+                              const struct dt_device_node *node)
+{
+    return 0;
+}
+
+static inline int process_shm_chosen(struct domain *d,
+                                     struct kernel_info *kinfo)
+{
+    return 0;
+}
+
+static inline int process_shm_node(const void *fdt, int node,
+                                   uint32_t address_cells, uint32_t size_cells)
+{
+    printk("CONFIG_STATIC_SHM must be enabled for parsing static shared memory nodes\n");
+    return -EINVAL;
+}
+
+#endif /* CONFIG_STATIC_SHM */
+
+#endif  /* __ARM_STATIC_SHMEM_H_ */
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:b
+ */
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
index db0299d540dc..f7de7170bacd 100644
--- a/xen/arch/arm/setup.c
+++ b/xen/arch/arm/setup.c
@@ -44,6 +44,7 @@
 #include <asm/platform.h>
 #include <asm/procinfo.h>
 #include <asm/setup.h>
+#include <asm/static-memory.h>
 #include <xsm/xsm.h>
 #include <asm/acpi.h>
 
@@ -758,30 +759,6 @@ static void __init init_pdx(void)
     }
 }
 
-/* Static memory initialization */
-static void __init init_staticmem_pages(void)
-{
-#ifdef CONFIG_STATIC_MEMORY
-    unsigned int bank;
-
-    for ( bank = 0 ; bank < bootinfo.reserved_mem.nr_banks; bank++ )
-    {
-        if ( bootinfo.reserved_mem.bank[bank].type == MEMBANK_STATIC_DOMAIN )
-        {
-            mfn_t bank_start = _mfn(PFN_UP(bootinfo.reserved_mem.bank[bank].start));
-            unsigned long bank_pages = PFN_DOWN(bootinfo.reserved_mem.bank[bank].size);
-            mfn_t bank_end = mfn_add(bank_start, bank_pages);
-
-            if ( mfn_x(bank_end) <= mfn_x(bank_start) )
-                return;
-
-            unprepare_staticmem_pages(mfn_to_page(bank_start),
-                                      bank_pages, false);
-        }
-    }
-#endif
-}
-
 /*
  * Populate the boot allocator.
  * If a static heap was not provided by the admin, all the RAM but the
diff --git a/xen/arch/arm/static-memory.c b/xen/arch/arm/static-memory.c
new file mode 100644
index 000000000000..9aecdae28846
--- /dev/null
+++ b/xen/arch/arm/static-memory.c
@@ -0,0 +1,294 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * xen/arch/arm/static-memory.c
+ *
+ * Code related to the static memory functionality
+ *
+ * Copyright (C) 2023 Arm Ltd.
+ */
+
+#include <xen/sched.h>
+
+#include <asm/static-memory.h>
+
+static bool __init append_static_memory_to_bank(struct domain *d,
+                                                struct membank *bank,
+                                                mfn_t smfn,
+                                                paddr_t size)
+{
+    int res;
+    unsigned int nr_pages = PFN_DOWN(size);
+    gfn_t sgfn;
+
+    /*
+     * For direct-mapped domain, the GFN match the MFN.
+     * Otherwise, this is inferred on what has already been allocated
+     * in the bank.
+     */
+    if ( !is_domain_direct_mapped(d) )
+        sgfn = gaddr_to_gfn(bank->start + bank->size);
+    else
+        sgfn = gaddr_to_gfn(mfn_to_maddr(smfn));
+
+    res = guest_physmap_add_pages(d, sgfn, smfn, nr_pages);
+    if ( res )
+    {
+        dprintk(XENLOG_ERR, "Failed to map pages to DOMU: %d", res);
+        return false;
+    }
+
+    bank->size = bank->size + size;
+
+    return true;
+}
+
+static mfn_t __init acquire_static_memory_bank(struct domain *d,
+                                               const __be32 **cell,
+                                               u32 addr_cells, u32 size_cells,
+                                               paddr_t *pbase, paddr_t *psize)
+{
+    mfn_t smfn;
+    int res;
+
+    device_tree_get_reg(cell, addr_cells, size_cells, pbase, psize);
+    ASSERT(IS_ALIGNED(*pbase, PAGE_SIZE) && IS_ALIGNED(*psize, PAGE_SIZE));
+    if ( PFN_DOWN(*psize) > UINT_MAX )
+    {
+        printk(XENLOG_ERR "%pd: static memory size too large: %#"PRIpaddr,
+               d, *psize);
+        return INVALID_MFN;
+    }
+
+    smfn = maddr_to_mfn(*pbase);
+    res = acquire_domstatic_pages(d, smfn, PFN_DOWN(*psize), 0);
+    if ( res )
+    {
+        printk(XENLOG_ERR
+               "%pd: failed to acquire static memory: %d.\n", d, res);
+        return INVALID_MFN;
+    }
+
+    return smfn;
+}
+
+static int __init parse_static_mem_prop(const struct dt_device_node *node,
+                                        u32 *addr_cells, u32 *size_cells,
+                                        int *length, const __be32 **cell)
+{
+    const struct dt_property *prop;
+
+    prop = dt_find_property(node, "xen,static-mem", NULL);
+
+    *addr_cells = dt_n_addr_cells(node);
+    *size_cells = dt_n_size_cells(node);
+
+    *cell = (const __be32 *)prop->value;
+    *length = prop->length;
+
+    return 0;
+}
+
+/* Allocate memory from static memory as RAM for one specific domain d. */
+void __init allocate_static_memory(struct domain *d, struct kernel_info *kinfo,
+                                   const struct dt_device_node *node)
+{
+    u32 addr_cells, size_cells, reg_cells;
+    unsigned int nr_banks, gbank, bank = 0;
+    const uint64_t rambase[] = GUEST_RAM_BANK_BASES;
+    const uint64_t ramsize[] = GUEST_RAM_BANK_SIZES;
+    const __be32 *cell;
+    u64 tot_size = 0;
+    paddr_t pbase, psize, gsize;
+    mfn_t smfn;
+    int length;
+
+    if ( parse_static_mem_prop(node, &addr_cells, &size_cells, &length, &cell) )
+        goto fail;
+    reg_cells = addr_cells + size_cells;
+
+    /*
+     * The static memory will be mapped in the guest at the usual guest memory
+     * addresses (GUEST_RAM0_BASE, GUEST_RAM1_BASE) defined by
+     * xen/include/public/arch-arm.h.
+     */
+    gbank = 0;
+    gsize = ramsize[gbank];
+    kinfo->mem.bank[gbank].start = rambase[gbank];
+    nr_banks = length / (reg_cells * sizeof (u32));
+
+    for ( ; bank < nr_banks; bank++ )
+    {
+        smfn = acquire_static_memory_bank(d, &cell, addr_cells, size_cells,
+                                          &pbase, &psize);
+        if ( mfn_eq(smfn, INVALID_MFN) )
+            goto fail;
+
+        printk(XENLOG_INFO "%pd: STATIC BANK[%u] %#"PRIpaddr"-%#"PRIpaddr"\n",
+               d, bank, pbase, pbase + psize);
+
+        while ( 1 )
+        {
+            /* Map as much as possible the static range to the guest bank */
+            if ( !append_static_memory_to_bank(d, &kinfo->mem.bank[gbank], smfn,
+                                               min(psize, gsize)) )
+                goto fail;
+
+            /*
+             * The current physical bank is fully mapped.
+             * Handle the next physical bank.
+             */
+            if ( gsize >= psize )
+            {
+                gsize = gsize - psize;
+                break;
+            }
+            /*
+             * When current guest bank is not enough to map, exhaust
+             * the current one and seek to the next.
+             * Before seeking to the next, check if we still have available
+             * guest bank.
+             */
+            else if ( (gbank + 1) >= GUEST_RAM_BANKS )
+            {
+                printk(XENLOG_ERR "Exhausted all possible guest banks.\n");
+                goto fail;
+            }
+            else
+            {
+                psize = psize - gsize;
+                smfn = mfn_add(smfn, gsize >> PAGE_SHIFT);
+                /* Update to the next guest bank. */
+                gbank++;
+                gsize = ramsize[gbank];
+                kinfo->mem.bank[gbank].start = rambase[gbank];
+            }
+        }
+
+        tot_size += psize;
+    }
+
+    kinfo->mem.nr_banks = ++gbank;
+
+    kinfo->unassigned_mem -= tot_size;
+    /*
+     * The property 'memory' should match the amount of memory given to the
+     * guest.
+     * Currently, it is only possible to either acquire static memory or let
+     * Xen allocate. *Mixing* is not supported.
+     */
+    if ( kinfo->unassigned_mem )
+    {
+        printk(XENLOG_ERR
+               "Size of \"memory\" property doesn't match up with the sum-up of \"xen,static-mem\". Unsupported configuration.\n");
+        goto fail;
+    }
+
+    return;
+
+ fail:
+    panic("Failed to allocate requested static memory for domain %pd.\n", d);
+}
+
+/*
+ * Allocate static memory as RAM for one specific domain d.
+ * The static memory will be directly mapped in the guest(Guest Physical
+ * Address == Physical Address).
+ */
+void __init assign_static_memory_11(struct domain *d, struct kernel_info *kinfo,
+                                    const struct dt_device_node *node)
+{
+    u32 addr_cells, size_cells, reg_cells;
+    unsigned int nr_banks, bank = 0;
+    const __be32 *cell;
+    paddr_t pbase, psize;
+    mfn_t smfn;
+    int length;
+
+    if ( parse_static_mem_prop(node, &addr_cells, &size_cells, &length, &cell) )
+    {
+        printk(XENLOG_ERR
+               "%pd: failed to parse \"xen,static-mem\" property.\n", d);
+        goto fail;
+    }
+    reg_cells = addr_cells + size_cells;
+    nr_banks = length / (reg_cells * sizeof(u32));
+
+    if ( nr_banks > NR_MEM_BANKS )
+    {
+        printk(XENLOG_ERR
+               "%pd: exceed max number of supported guest memory banks.\n", d);
+        goto fail;
+    }
+
+    for ( ; bank < nr_banks; bank++ )
+    {
+        smfn = acquire_static_memory_bank(d, &cell, addr_cells, size_cells,
+                                          &pbase, &psize);
+        if ( mfn_eq(smfn, INVALID_MFN) )
+            goto fail;
+
+        printk(XENLOG_INFO "%pd: STATIC BANK[%u] %#"PRIpaddr"-%#"PRIpaddr"\n",
+               d, bank, pbase, pbase + psize);
+
+        /* One guest memory bank is matched with one physical memory bank. */
+        kinfo->mem.bank[bank].start = pbase;
+        if ( !append_static_memory_to_bank(d, &kinfo->mem.bank[bank],
+                                           smfn, psize) )
+            goto fail;
+
+        kinfo->unassigned_mem -= psize;
+    }
+
+    kinfo->mem.nr_banks = nr_banks;
+
+    /*
+     * The property 'memory' should match the amount of memory given to
+     * the guest.
+     * Currently, it is only possible to either acquire static memory or
+     * let Xen allocate. *Mixing* is not supported.
+     */
+    if ( kinfo->unassigned_mem != 0 )
+    {
+        printk(XENLOG_ERR
+               "Size of \"memory\" property doesn't match up with the sum-up of \"xen,static-mem\".\n");
+        goto fail;
+    }
+
+    return;
+
+ fail:
+    panic("Failed to assign requested static memory for direct-map domain %pd.\n",
+          d);
+}
+
+/* Static memory initialization */
+void __init init_staticmem_pages(void)
+{
+    unsigned int bank;
+
+    for ( bank = 0 ; bank < bootinfo.reserved_mem.nr_banks; bank++ )
+    {
+        if ( bootinfo.reserved_mem.bank[bank].type == MEMBANK_STATIC_DOMAIN )
+        {
+            mfn_t bank_start = _mfn(PFN_UP(bootinfo.reserved_mem.bank[bank].start));
+            unsigned long bank_pages = PFN_DOWN(bootinfo.reserved_mem.bank[bank].size);
+            mfn_t bank_end = mfn_add(bank_start, bank_pages);
+
+            if ( mfn_x(bank_end) <= mfn_x(bank_start) )
+                return;
+
+            unprepare_staticmem_pages(mfn_to_page(bank_start),
+                                      bank_pages, false);
+        }
+    }
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
diff --git a/xen/arch/arm/static-shmem.c b/xen/arch/arm/static-shmem.c
new file mode 100644
index 000000000000..fd826f486e8a
--- /dev/null
+++ b/xen/arch/arm/static-shmem.c
@@ -0,0 +1,515 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * xen/arch/arm/static-shmem.c
+ *
+ * Code related to the static shared memory functionality
+ *
+ * Copyright (C) 2023 Arm Ltd.
+ */
+
+#include <xen/libfdt/libfdt.h>
+#include <xen/sched.h>
+
+#include <asm/domain_build.h>
+#include <asm/static-shmem.h>
+
+static int __init acquire_nr_borrower_domain(struct domain *d,
+                                             paddr_t pbase, paddr_t psize,
+                                             unsigned long *nr_borrowers)
+{
+    unsigned int bank;
+
+    /* Iterate reserved memory to find requested shm bank. */
+    for ( bank = 0 ; bank < bootinfo.reserved_mem.nr_banks; bank++ )
+    {
+        paddr_t bank_start = bootinfo.reserved_mem.bank[bank].start;
+        paddr_t bank_size = bootinfo.reserved_mem.bank[bank].size;
+
+        if ( (pbase == bank_start) && (psize == bank_size) )
+            break;
+    }
+
+    if ( bank == bootinfo.reserved_mem.nr_banks )
+        return -ENOENT;
+
+    *nr_borrowers = bootinfo.reserved_mem.bank[bank].nr_shm_borrowers;
+
+    return 0;
+}
+
+/*
+ * This function checks whether the static shared memory region is
+ * already allocated to dom_io.
+ */
+static bool __init is_shm_allocated_to_domio(paddr_t pbase)
+{
+    struct page_info *page;
+    struct domain *d;
+
+    page = maddr_to_page(pbase);
+    d = page_get_owner_and_reference(page);
+    if ( d == NULL )
+        return false;
+    put_page(page);
+
+    if ( d != dom_io )
+    {
+        printk(XENLOG_ERR
+               "shm memory node has already been allocated to a specific owner %pd, Please check your configuration\n",
+               d);
+        return false;
+    }
+
+    return true;
+}
+
+static mfn_t __init acquire_shared_memory_bank(struct domain *d,
+                                               paddr_t pbase, paddr_t psize)
+{
+    mfn_t smfn;
+    unsigned long nr_pfns;
+    int res;
+
+    /*
+     * Pages of statically shared memory shall be included
+     * into domain_tot_pages().
+     */
+    nr_pfns = PFN_DOWN(psize);
+    if ( (UINT_MAX - d->max_pages) < nr_pfns )
+    {
+        printk(XENLOG_ERR "%pd: Over-allocation for d->max_pages: %lu.\n",
+               d, nr_pfns);
+        return INVALID_MFN;
+    }
+    d->max_pages += nr_pfns;
+
+    smfn = maddr_to_mfn(pbase);
+    res = acquire_domstatic_pages(d, smfn, nr_pfns, 0);
+    if ( res )
+    {
+        printk(XENLOG_ERR
+               "%pd: failed to acquire static memory: %d.\n", d, res);
+        d->max_pages -= nr_pfns;
+        return INVALID_MFN;
+    }
+
+    return smfn;
+}
+
+static int __init assign_shared_memory(struct domain *d,
+                                       uint32_t addr_cells, uint32_t size_cells,
+                                       paddr_t pbase, paddr_t psize,
+                                       paddr_t gbase)
+{
+    mfn_t smfn;
+    int ret = 0;
+    unsigned long nr_pages, nr_borrowers, i;
+    struct page_info *page;
+
+    printk("%pd: allocate static shared memory BANK %#"PRIpaddr"-%#"PRIpaddr".\n",
+           d, pbase, pbase + psize);
+
+    smfn = acquire_shared_memory_bank(d, pbase, psize);
+    if ( mfn_eq(smfn, INVALID_MFN) )
+        return -EINVAL;
+
+    /*
+     * DOMID_IO is not auto-translated (i.e. it sees RAM 1:1). So we do not need
+     * to create mapping in the P2M.
+     */
+    nr_pages = PFN_DOWN(psize);
+    if ( d != dom_io )
+    {
+        ret = guest_physmap_add_pages(d, gaddr_to_gfn(gbase), smfn,
+                                      PFN_DOWN(psize));
+        if ( ret )
+        {
+            printk(XENLOG_ERR "Failed to map shared memory to %pd.\n", d);
+            return ret;
+        }
+    }
+
+    /*
+     * Get the right amount of references per page, which is the number of
+     * borrower domains.
+     */
+    ret = acquire_nr_borrower_domain(d, pbase, psize, &nr_borrowers);
+    if ( ret )
+        return ret;
+
+    /*
+     * Instead of letting borrower domain get a page ref, we add as many
+     * additional reference as the number of borrowers when the owner
+     * is allocated, since there is a chance that owner is created
+     * after borrower.
+     * So if the borrower is created first, it will cause adding pages
+     * in the P2M without reference.
+     */
+    page = mfn_to_page(smfn);
+    for ( i = 0; i < nr_pages; i++ )
+    {
+        if ( !get_page_nr(page + i, d, nr_borrowers) )
+        {
+            printk(XENLOG_ERR
+                   "Failed to add %lu references to page %"PRI_mfn".\n",
+                   nr_borrowers, mfn_x(smfn) + i);
+            goto fail;
+        }
+    }
+
+    return 0;
+
+ fail:
+    while ( --i >= 0 )
+        put_page_nr(page + i, nr_borrowers);
+    return ret;
+}
+
+static int __init append_shm_bank_to_domain(struct kernel_info *kinfo,
+                                            paddr_t start, paddr_t size,
+                                            const char *shm_id)
+{
+    if ( kinfo->shm_mem.nr_banks >= NR_MEM_BANKS )
+        return -ENOMEM;
+
+    kinfo->shm_mem.bank[kinfo->shm_mem.nr_banks].start = start;
+    kinfo->shm_mem.bank[kinfo->shm_mem.nr_banks].size = size;
+    safe_strcpy(kinfo->shm_mem.bank[kinfo->shm_mem.nr_banks].shm_id, shm_id);
+    kinfo->shm_mem.nr_banks++;
+
+    return 0;
+}
+
+int __init process_shm(struct domain *d, struct kernel_info *kinfo,
+                       const struct dt_device_node *node)
+{
+    struct dt_device_node *shm_node;
+
+    dt_for_each_child_node(node, shm_node)
+    {
+        const struct dt_property *prop;
+        const __be32 *cells;
+        uint32_t addr_cells, size_cells;
+        paddr_t gbase, pbase, psize;
+        int ret = 0;
+        unsigned int i;
+        const char *role_str;
+        const char *shm_id;
+        bool owner_dom_io = true;
+
+        if ( !dt_device_is_compatible(shm_node, "xen,domain-shared-memory-v1") )
+            continue;
+
+        /*
+         * xen,shared-mem = <pbase, gbase, size>;
+         * TODO: pbase is optional.
+         */
+        addr_cells = dt_n_addr_cells(shm_node);
+        size_cells = dt_n_size_cells(shm_node);
+        prop = dt_find_property(shm_node, "xen,shared-mem", NULL);
+        BUG_ON(!prop);
+        cells = (const __be32 *)prop->value;
+        device_tree_get_reg(&cells, addr_cells, addr_cells, &pbase, &gbase);
+        psize = dt_read_paddr(cells, size_cells);
+        if ( !IS_ALIGNED(pbase, PAGE_SIZE) || !IS_ALIGNED(gbase, PAGE_SIZE) )
+        {
+            printk("%pd: physical address 0x%"PRIpaddr", or guest address 0x%"PRIpaddr" is not suitably aligned.\n",
+                   d, pbase, gbase);
+            return -EINVAL;
+        }
+        if ( !IS_ALIGNED(psize, PAGE_SIZE) )
+        {
+            printk("%pd: size 0x%"PRIpaddr" is not suitably aligned\n",
+                   d, psize);
+            return -EINVAL;
+        }
+
+        for ( i = 0; i < PFN_DOWN(psize); i++ )
+            if ( !mfn_valid(mfn_add(maddr_to_mfn(pbase), i)) )
+            {
+                printk("%pd: invalid physical address 0x%"PRI_mfn"\n",
+                       d, mfn_x(mfn_add(maddr_to_mfn(pbase), i)));
+                return -EINVAL;
+            }
+
+        /*
+         * "role" property is optional and if it is defined explicitly,
+         * then the owner domain is not the default "dom_io" domain.
+         */
+        if ( dt_property_read_string(shm_node, "role", &role_str) == 0 )
+            owner_dom_io = false;
+
+        if ( dt_property_read_string(shm_node, "xen,shm-id", &shm_id) )
+        {
+            printk("%pd: invalid \"xen,shm-id\" property", d);
+            return -EINVAL;
+        }
+        BUG_ON((strlen(shm_id) <= 0) || (strlen(shm_id) >= MAX_SHM_ID_LENGTH));
+
+        /*
+         * DOMID_IO is a fake domain and is not described in the Device-Tree.
+         * Therefore when the owner of the shared region is DOMID_IO, we will
+         * only find the borrowers.
+         */
+        if ( (owner_dom_io && !is_shm_allocated_to_domio(pbase)) ||
+             (!owner_dom_io && strcmp(role_str, "owner") == 0) )
+        {
+            /*
+             * We found the first borrower of the region, the owner was not
+             * specified, so they should be assigned to dom_io.
+             */
+            ret = assign_shared_memory(owner_dom_io ? dom_io : d,
+                                       addr_cells, size_cells,
+                                       pbase, psize, gbase);
+            if ( ret )
+                return ret;
+        }
+
+        if ( owner_dom_io || (strcmp(role_str, "borrower") == 0) )
+        {
+            /* Set up P2M foreign mapping for borrower domain. */
+            ret = map_regions_p2mt(d, _gfn(PFN_UP(gbase)), PFN_DOWN(psize),
+                                   _mfn(PFN_UP(pbase)), p2m_map_foreign_rw);
+            if ( ret )
+                return ret;
+        }
+
+        /*
+         * Record static shared memory region info for later setting
+         * up shm-node in guest device tree.
+         */
+        ret = append_shm_bank_to_domain(kinfo, gbase, psize, shm_id);
+        if ( ret )
+            return ret;
+    }
+
+    return 0;
+}
+
+int __init make_shm_memory_node(const struct domain *d, void *fdt,
+                                int addrcells, int sizecells,
+                                const struct meminfo *mem)
+{
+    unsigned int i = 0;
+    int res = 0;
+
+    if ( mem->nr_banks == 0 )
+        return -ENOENT;
+
+    /*
+     * For each shared memory region, a range is exposed under
+     * the /reserved-memory node as a child node. Each range sub-node is
+     * named xen-shmem@<address>.
+     */
+    dt_dprintk("Create xen-shmem node\n");
+
+    for ( ; i < mem->nr_banks; i++ )
+    {
+        uint64_t start = mem->bank[i].start;
+        uint64_t size = mem->bank[i].size;
+        const char compat[] = "xen,shared-memory-v1";
+        /* Worst case addrcells + sizecells */
+        __be32 reg[GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS];
+        __be32 *cells;
+        unsigned int len = (addrcells + sizecells) * sizeof(__be32);
+
+        res = domain_fdt_begin_node(fdt, "xen-shmem", mem->bank[i].start);
+        if ( res )
+            return res;
+
+        res = fdt_property(fdt, "compatible", compat, sizeof(compat));
+        if ( res )
+            return res;
+
+        cells = reg;
+        dt_child_set_range(&cells, addrcells, sizecells, start, size);
+
+        res = fdt_property(fdt, "reg", reg, len);
+        if ( res )
+            return res;
+
+        dt_dprintk("Shared memory bank %u: %#"PRIx64"->%#"PRIx64"\n",
+                   i, start, start + size);
+
+        res = fdt_property_string(fdt, "xen,id", mem->bank[i].shm_id);
+        if ( res )
+            return res;
+
+        /*
+         * TODO:
+         * - xen,offset: (borrower VMs only)
+         *   64 bit integer offset within the owner virtual machine's shared
+         *   memory region used for the mapping in the borrower VM
+         */
+        res = fdt_property_u64(fdt, "xen,offset", 0);
+        if ( res )
+            return res;
+
+        res = fdt_end_node(fdt);
+        if ( res )
+            return res;
+    }
+
+    return res;
+}
+
+int __init process_shm_node(const void *fdt, int node, uint32_t address_cells,
+                            uint32_t size_cells)
+{
+    const struct fdt_property *prop, *prop_id, *prop_role;
+    const __be32 *cell;
+    paddr_t paddr, gaddr, size;
+    struct meminfo *mem = &bootinfo.reserved_mem;
+    unsigned int i;
+    int len;
+    bool owner = false;
+    const char *shm_id;
+
+    if ( address_cells < 1 || size_cells < 1 )
+    {
+        printk("fdt: invalid #address-cells or #size-cells for static shared memory node.\n");
+        return -EINVAL;
+    }
+
+    /*
+     * "xen,shm-id" property holds an arbitrary string with a strict limit
+     * on the number of characters, MAX_SHM_ID_LENGTH
+     */
+    prop_id = fdt_get_property(fdt, node, "xen,shm-id", NULL);
+    if ( !prop_id )
+        return -ENOENT;
+    shm_id = (const char *)prop_id->data;
+    if ( strnlen(shm_id, MAX_SHM_ID_LENGTH) == MAX_SHM_ID_LENGTH )
+    {
+        printk("fdt: invalid xen,shm-id %s, it must be limited to %u characters\n",
+               shm_id, MAX_SHM_ID_LENGTH);
+        return -EINVAL;
+    }
+
+    /*
+     * "role" property is optional and if it is defined explicitly,
+     * it must be either `owner` or `borrower`.
+     */
+    prop_role = fdt_get_property(fdt, node, "role", NULL);
+    if ( prop_role )
+    {
+        if ( !strcmp(prop_role->data, "owner") )
+            owner = true;
+        else if ( strcmp(prop_role->data, "borrower") )
+        {
+            printk("fdt: invalid `role` property for static shared memory node.\n");
+            return -EINVAL;
+        }
+    }
+
+    /*
+     * xen,shared-mem = <paddr, gaddr, size>;
+     * Memory region starting from physical address #paddr of #size shall
+     * be mapped to guest physical address #gaddr as static shared memory
+     * region.
+     */
+    prop = fdt_get_property(fdt, node, "xen,shared-mem", &len);
+    if ( !prop )
+        return -ENOENT;
+
+    if ( len != dt_cells_to_size(address_cells + size_cells + address_cells) )
+    {
+        if ( len == dt_cells_to_size(size_cells + address_cells) )
+            printk("fdt: host physical address must be chosen by users at the moment.\n");
+
+        printk("fdt: invalid `xen,shared-mem` property.\n");
+        return -EINVAL;
+    }
+
+    cell = (const __be32 *)prop->data;
+    device_tree_get_reg(&cell, address_cells, address_cells, &paddr, &gaddr);
+    size = dt_next_cell(size_cells, &cell);
+
+    if ( !size )
+    {
+        printk("fdt: the size for static shared memory region can not be zero\n");
+        return -EINVAL;
+    }
+
+    for ( i = 0; i < mem->nr_banks; i++ )
+    {
+        /*
+         * Meet the following check:
+         * 1) The shm ID matches and the region exactly match
+         * 2) The shm ID doesn't match and the region doesn't overlap
+         * with an existing one
+         */
+        if ( paddr == mem->bank[i].start && size == mem->bank[i].size )
+        {
+            if ( strncmp(shm_id, mem->bank[i].shm_id, MAX_SHM_ID_LENGTH) == 0 )
+                break;
+            else
+            {
+                printk("fdt: xen,shm-id %s does not match for all the nodes using the same region.\n",
+                       shm_id);
+                return -EINVAL;
+            }
+        }
+        else
+        {
+            paddr_t end = paddr + size;
+            paddr_t bank_end = mem->bank[i].start + mem->bank[i].size;
+
+            if ( (end <= paddr) || (bank_end <= mem->bank[i].start) )
+            {
+                printk("fdt: static shared memory region %s overflow\n", shm_id);
+                return -EINVAL;
+            }
+
+            if ( check_reserved_regions_overlap(paddr, size) )
+                return -EINVAL;
+            else
+            {
+                if ( strcmp(shm_id, mem->bank[i].shm_id) != 0 )
+                    continue;
+                else
+                {
+                    printk("fdt: different shared memory region could not share the same shm ID %s\n",
+                           shm_id);
+                    return -EINVAL;
+                }
+            }
+        }
+    }
+
+    if ( i == mem->nr_banks )
+    {
+        if ( i < NR_MEM_BANKS )
+        {
+            /* Static shared memory shall be reserved from any other use. */
+            safe_strcpy(mem->bank[mem->nr_banks].shm_id, shm_id);
+            mem->bank[mem->nr_banks].start = paddr;
+            mem->bank[mem->nr_banks].size = size;
+            mem->bank[mem->nr_banks].type = MEMBANK_STATIC_DOMAIN;
+            mem->nr_banks++;
+        }
+        else
+        {
+            printk("Warning: Max number of supported memory regions reached.\n");
+            return -ENOSPC;
+        }
+    }
+    /*
+     * keep a count of the number of borrowers, which later may be used
+     * to calculate the reference count.
+     */
+    if ( !owner )
+        mem->bank[i].nr_shm_borrowers++;
+
+    return 0;
+}
+
+/*
+ * Local variables:
+ * mode: C
+ * c-file-style: "BSD"
+ * c-basic-offset: 4
+ * tab-width: 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:01:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:01:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608952.947822 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlV6u-0007jB-Rz; Wed, 27 Sep 2023 14:01:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608952.947822; Wed, 27 Sep 2023 14:01:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlV6u-0007iJ-Jx; Wed, 27 Sep 2023 14:01:52 +0000
Received: by outflank-mailman (input) for mailman id 608952;
 Wed, 27 Sep 2023 14:01:51 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Xec+=FL=arm.com=luca.fancellu@srs-se1.protection.inumbo.net>)
 id 1qlV6t-0006eS-7l
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 14:01:51 +0000
Received: from foss.arm.com (foss.arm.com [217.140.110.172])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTP
 id 66b63b3b-5d3e-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 16:01:49 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 6292811FB;
 Wed, 27 Sep 2023 07:02:26 -0700 (PDT)
Received: from e125770.cambridge.arm.com (e125770.arm.com [10.1.199.1])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 6D6DE3F59C;
 Wed, 27 Sep 2023 07:01:47 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 66b63b3b-5d3e-11ee-878a-cb3800f73035
From: Luca Fancellu <luca.fancellu@arm.com>
To: xen-devel@lists.xenproject.org
Cc: wei.chen@arm.com,
	Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH v2 5/5] arm/dom0less: introduce Kconfig for dom0less feature
Date: Wed, 27 Sep 2023 15:01:33 +0100
Message-Id: <20230927140133.631192-6-luca.fancellu@arm.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20230927140133.631192-1-luca.fancellu@arm.com>
References: <20230927140133.631192-1-luca.fancellu@arm.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Introduce a Kconfig for the dom0less feature, enabled by default,
to be able to choose if the feature should be compiled or not.

Provide static inline stubs when the option is disabled for the
functions externally visible.

Use the new Kconfig to remove dom0less DT binding from the efi-boot.h
code when the Kconfig is not enabled.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 xen/arch/arm/Kconfig                      |  9 +++++++++
 xen/arch/arm/Makefile                     |  2 +-
 xen/arch/arm/efi/efi-boot.h               |  4 ++++
 xen/arch/arm/include/asm/dom0less-build.h | 12 ++++++++++++
 4 files changed, 26 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 8dc704e802bc..f84b2cc22d08 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -89,6 +89,15 @@ config GICV2
 	  Driver for the ARM Generic Interrupt Controller v2.
 	  If unsure, say Y
 
+config DOM0LESS_BOOT
+	bool "Dom0less boot support" if EXPERT
+	depends on ARM
+	default y
+	help
+	  Dom0less boot support enables Xen to create and start domU guests during
+	  Xen boot without the need of a control domain (Dom0), which could be
+	  present anyway.
+
 config GICV3
 	bool "GICv3 driver"
 	depends on !NEW_VGIC
diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile
index 89ef0c9075b5..5daf8f10114d 100644
--- a/xen/arch/arm/Makefile
+++ b/xen/arch/arm/Makefile
@@ -15,7 +15,7 @@ obj-y += cpufeature.o
 obj-y += decode.o
 obj-y += device.o
 obj-$(CONFIG_IOREQ_SERVER) += dm.o
-obj-y += dom0less-build.init.o
+obj-$(CONFIG_DOM0LESS_BOOT) += dom0less-build.init.o
 obj-y += domain.o
 obj-y += domain_build.init.o
 obj-$(CONFIG_ARCH_MAP_DOMAIN_PAGE) += domain_page.o
diff --git a/xen/arch/arm/efi/efi-boot.h b/xen/arch/arm/efi/efi-boot.h
index 1c3640bb65fd..689dc016d081 100644
--- a/xen/arch/arm/efi/efi-boot.h
+++ b/xen/arch/arm/efi/efi-boot.h
@@ -802,6 +802,7 @@ static int __init handle_module_node(const EFI_LOADED_IMAGE *loaded_image,
     return 1;
 }
 
+#ifdef CONFIG_DOM0LESS_BOOT
 /*
  * This function checks for boot modules under the domU guest domain node
  * in the DT.
@@ -849,6 +850,7 @@ static int __init handle_dom0less_domain_node(const EFI_LOADED_IMAGE *loaded_ima
 
     return mb_modules_found;
 }
+#endif
 
 /*
  * This function checks for xen domain nodes under the /chosen node for possible
@@ -876,6 +878,7 @@ static int __init efi_check_dt_boot(const EFI_LOADED_IMAGE *loaded_image)
     {
         int ret;
 
+#ifdef CONFIG_DOM0LESS_BOOT
         if ( !fdt_node_check_compatible(fdt_efi, node, "xen,domain") )
         {
             /* Found a node with compatible xen,domain; handle this node. */
@@ -884,6 +887,7 @@ static int __init efi_check_dt_boot(const EFI_LOADED_IMAGE *loaded_image)
                 return ERROR_DT_MODULE_DOMU;
         }
         else
+#endif
         {
             ret = handle_module_node(loaded_image, &dir_handle, node, addr_len,
                                      size_len, false);
diff --git a/xen/arch/arm/include/asm/dom0less-build.h b/xen/arch/arm/include/asm/dom0less-build.h
index d95cb6234b62..859944eece16 100644
--- a/xen/arch/arm/include/asm/dom0less-build.h
+++ b/xen/arch/arm/include/asm/dom0less-build.h
@@ -8,9 +8,21 @@
 #ifndef __ARM_DOM0LESS_BUILD_H_
 #define __ARM_DOM0LESS_BUILD_H_
 
+#ifdef CONFIG_DOM0LESS_BOOT
+
 void create_domUs(void);
 bool is_dom0less_mode(void);
 
+#else  /* !CONFIG_DOM0LESS_BOOT */
+
+static inline void create_domUs(void) {}
+static inline bool is_dom0less_mode(void)
+{
+    return false;
+}
+
+#endif /* CONFIG_DOM0LESS_BOOT */
+
 #endif  /* __ARM_DOM0LESS_BUILD_H_ */
 
 /*
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:05:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:05:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608968.947836 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVAM-0001vy-7t; Wed, 27 Sep 2023 14:05:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608968.947836; Wed, 27 Sep 2023 14:05:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVAM-0001vr-5D; Wed, 27 Sep 2023 14:05:26 +0000
Received: by outflank-mailman (input) for mailman id 608968;
 Wed, 27 Sep 2023 14:05:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WUTS=FL=citrix.com=prvs=6275c33bf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlVAK-0001uJ-PQ
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 14:05:24 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e48b0447-5d3e-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 16:05:21 +0200 (CEST)
Received: from mail-mw2nam10lp2107.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.107])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 27 Sep 2023 10:05:18 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by MN2PR03MB5216.namprd03.prod.outlook.com (2603:10b6:208:1e8::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 14:05:14 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Wed, 27 Sep 2023
 14:05:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e48b0447-5d3e-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695823521;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=bId/R5AcRuBPskvSnradQMBGg/Ic7MLDd7+Ah9kx4uo=;
  b=efPN3SxnXUg92iejcf2Vw5D7h+mckBHKBKw//o2LYYxgWixv+1REzjst
   OiJQN6eDmd1yBWgfFRTsshxrIal1dUu4GYS2MIpnudkPYpgDv/WFoDUz2
   RuaTFrWm/jcy1m6e++SWq5nRmh6LdNJKUaNCRS6lqPLK4y0FAPtVvkFRR
   A=;
X-CSE-ConnectionGUID: 2DihEJlYQF2lACKiLh0XFA==
X-CSE-MsgGUID: 4bDrnj6sQ1iOLrq2F9tSCQ==
X-IronPort-RemoteIP: 104.47.55.107
X-IronPort-MID: 123967447
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:rbl8E6sZmYEZ7PTxqZhA+/nR1efnVLNfMUV32f8akzHdYApBsoF/q
 tZmKWqBOPfeYWD9Ltx2aIiz8xwA65OHmNdgSwo5/y48ESkW+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5A6EyCFPZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwchwMbj2hg9OP7ui/Y8JPh+AjdPnFFdZK0p1g5Wmx4fcOZ7nmGv2PwOACmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osjf60aIW9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAtlDSuLkqqECbFu7mmY/EhsUC0CC+PierlSnAfwON
 3c/w397xUQ13AnxJjXnZDW6qnOZuh8XW/JLDvY3rgqKz8L88wufQ2QJUDNFQNgnr9MtAywn0
 EeTmNHkDiApt6eaIVqf67OVoDWaKSUTa2gYakcsVhAZ6tPupIUyiBPnTdt5FqOxyNrvFlnY3
 DSivCU4wbIJgqYjy6y+9EvvnzGoq57GXwMxoA7QWwqYAhhRYYekY8mt9gLd5PMZdIKBFADZ4
 z4DhtSU6/0IAdeVjiuRTe4RHbavofGYLDnbhl0pFJ4kn9iwx0OekUlryGkWDC9U3gwsI1cFv
 Ge7Vdtt2aJu
IronPort-HdrOrdr: A9a23:EQD7W6NTIaS2o8BcT4T155DYdb4zR+YMi2TDtnoBPCC9F/by+f
 xG88566faKskdsZJhNo7G90cq7MADhHOBOkOss1N6ZNWGNhILCFvAA0WKN+UyEJ8X0ntQtqp
 uJG8JFZOEZZjJB4voTL2ODfuoI8Z2/1OSNuM+b9nFqSGhRGtNdB8USMHfkLqWzLjM2dabQ0f
 Cnl7t6TkGbCBAqR/X+PGABQ+/A4/XTjfvdEGc7Li9i0hCKkTSrrJXnEx2Uty1uLg9n8PMZ6G
 3YlA68wa2mv5iAu3jh/l6W1Y1ShNzijv1cA8CW4/JlTAnEu0KTfYF8XL/HhhAZydvfkGoCoZ
 33uhI9OMY20X/LYW2vhhPo12DboU0Twk6n80acnXzg5fP0Xyg7Dc0pv/MiTifk
X-Talos-CUID: =?us-ascii?q?9a23=3Avq4HfWkosu3DETk171WopuvBxJbXOSfxzXf9AUu?=
 =?us-ascii?q?JMEgzTJS+al60+PtUveM7zg=3D=3D?=
X-Talos-MUID: 9a23:mc1RWQZ7WrYuHOBT6zXAnjdgatxRuqWJLFoUy7tXp/KvDHkl
X-IronPort-AV: E=Sophos;i="6.03,181,1694750400"; 
   d="scan'208";a="123967447"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=g7mIBRJOMVSrp54mgTOfTBzDcgbUdIYBxe2rCVFzuha9EyzEifYeQvZ12pLxMyxmT0rAZ3q7UYLyq/Tr0Dyi6NyJ7SSkwpQYnhSDTdJkZv4uJjEt4sWLFU0wRnn170N10omB0Cg13G3WTi4eWe+e4/6Hz5cHV8IjgwWWNKD4WP5HXnnAojO4JN1xbbbpOQA7ICOgLnYzADrtt21/G6/FNYXKXARU1SSZg+4YNxKITVH6e428RzJK2QNQlo4hPbQoyTsRpGmazJkHgZ7auIq/9B4bkdH3Po3GWf9YAmH0jDYtjtNEi0uu5aa+hyeeJQkLY6dNUJ8ro2clpdygGYZnSg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/ZCpo1kYmrtGA7YUPTTNRPeaWU/m5QXz0Aotta5mofc=;
 b=VSANVzZNexma0OKMT42CSI0KfOk/xnYbLFDM1x7Stk3NpkkTCHHlGyV9EIm03ABh6dzkicsdXLdPtur1Hqm+0xjFY1BUwZAukrbmUZmCQf6s8E4vbLDq0QMZ27zMpFSSg0LdU/0OPel5CF/W7SeeBC8etCLsHDQOt/0lR9bweiI7tKQAn0lFm3t2mPhThbEM6w3q45whI0eeyAe3gLXF+B66emRlwvq+N35eKMxYNRI5nXXE0mTmKamjmdIhb/RvHKWYSF2N0peT9DXy/yBiIN3ksZzRaKstfkHJvU+Z9o8s+SrF0KWGWN3Fvs/nO1uBEE67p9psl6uMuwFCmFpKBw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/ZCpo1kYmrtGA7YUPTTNRPeaWU/m5QXz0Aotta5mofc=;
 b=jy8Cjy5//domi6JEEY4+EZ4/b8kX4vJf1xrGWbYgVS3modDMI6JWtK949otFtqQ/ZGF688IkaJiTE3lo2HdqHrXfpnLzl6jT9b57Zd0gl+ykWXb1SaosjGSsxk9RP9hGYZEn7JiIOCtm29Qp9GS3O8M3VeiuEO4Sfcui0yyEbik=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 27 Sep 2023 16:05:08 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Tamas K Lengyel <tamas@tklengyel.com>
Subject: Re: [PATCH v3 4/8] x86/mem-sharing: copy GADDR based shared guest
 areas
Message-ID: <ZRQ2lHBHDlHJKYzp@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <a79d2a8b-6d6e-bd31-b079-a30b555e5fd0@suse.com>
 <ZRQNHyggOFD1FuMD@MacBookPdeRoger>
 <6b55a773-c005-f524-531c-45247cac1d55@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <6b55a773-c005-f524-531c-45247cac1d55@suse.com>
X-ClientProxiedBy: LO4P123CA0429.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18b::20) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|MN2PR03MB5216:EE_
X-MS-Office365-Filtering-Correlation-Id: 6e343fcd-6b53-480d-f080-08dbbf62c530
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	W6o6NpfY6sUfHMBTc9qZILHBTBJDQaBa1q2gUjinjEp/eQKDIPID9h7faGaP+8XRgSLlCmkWMDtiLfICPPzB8HQ0gimasu+O6puTqy8c3d00atn9D9EwEFrPUoNb9tkgz/MGEVLccVK/3viLz3PvJ1LddCryOaSu/9WCGzRIH5tPK5iTd1QK8lgyyjDxNQgcp5COXc4y5KYqizCSX+E4K0SQM9l1Px+AI23HT/aNwhXylBGksihIHE4Qmj0wC/akFZ95VY6VV4rywFL1osibcMgkBvZjR0/Q90EHHZm9cJr7U5t9kYXisU9yVy5yNEx5wCb4P1Sq5HG5btfngAfAimS86TdN56cnL6sYkQMjIBFofmS5/d7YCajZOU+WbZq+CbTJUxyvaFJShiTquC2c0hHy4Y8ElXDLT7aqcotsHEu4kfndqQ3NALueVtP/FMqLIjL2ftOmKo+XfKrmsYbCdLOoo88mKuuct+Ty9v1QaQ8s28QWKtjqwRWReofifhJbaSuAuvvx70sY9GxACxfvIUQyGHC0MZN+gQUFbGqZ1MIkzIsPlabZ9xqV0D36e2Sw
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(346002)(376002)(366004)(396003)(39860400002)(136003)(230922051799003)(451199024)(186009)(1800799009)(8676002)(8936002)(41300700001)(2906002)(26005)(4326008)(478600001)(66476007)(316002)(66946007)(5660300002)(54906003)(6916009)(66556008)(6506007)(6666004)(53546011)(6486002)(6512007)(9686003)(85182001)(33716001)(86362001)(83380400001)(38100700002)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aFd5QUZqTUxrMzdjYm8ySW5ocWJpdklCVnNzdHJVYlRnZWZNR0krSzNUbEYr?=
 =?utf-8?B?ZmE4M2swOXFaUXNma0RRRFppdllLRVJXN0ZYV3F5cSt1YWhrVW5pYldrL0ZN?=
 =?utf-8?B?dEZhQmVWQmlKaGRxbkVJOGJMYnZaYUk1S01ibHc5TXdidGFMejlqNjFvTHVo?=
 =?utf-8?B?RUlFQlVRUFg1c2FFL043N2t0Y3VwdTZYWi9GSytaUlBSeE9wWVEveDVicGxM?=
 =?utf-8?B?QVh0ckp0dlg0RHcrWDVnOWRlWmhJM1NJWEpxSGZnaVdxOTM1Ly8vMk13dFN4?=
 =?utf-8?B?REJCSGo3ZFFQM3Q3UUphejMwNW1hcTJ0NXJYM3RTYVhxYzhodG5oV3FGTGt3?=
 =?utf-8?B?Z0Fya0VjL2Rpc1ZMOG5FcnFUTVFjSUZqdlVNNWZHN1plRnRDRUtlaHZXSXR5?=
 =?utf-8?B?Yy9MbURHanppSUo1cEdac2JzZ2hWaG44SGlUUmRPT04rT2wzd25kUTJrd0dG?=
 =?utf-8?B?QWNLTlBRSllpS3B2UmFVZjEvL29Yc3NnekRWL1E3QlA2YU5ZVG5NSnVlTEtV?=
 =?utf-8?B?RXpwS0R1ZHBsdVNUL005MFYvVTF2V1h3ZFhqRno3VHBISDRVQWs1RjBKMU1q?=
 =?utf-8?B?UDJUUWZFem5VUWc4MzgzanNsUUxTdXE0dHg2VXBMVkhXL1pWOUg2c2NFcXB5?=
 =?utf-8?B?bTcxQlJXNDQwakxCaWR1YWtoTjBBaW5IeWp1OG4wd3h0ajRBZ0hnZStYKzZF?=
 =?utf-8?B?U1p1aGdQVGNoWlNxMHJFMlRzNUdtb3NiRjhNVUNVaHI1eU12YnQwZFVxdGkx?=
 =?utf-8?B?V3JzUmVYODJKdXpOTzF1NDJyWG94cVRUdU5SbGNhZUxVc1ZkSHh2TTNzQmFt?=
 =?utf-8?B?dEVIaFJIazhzem9xUmxTS3Z0ejJBQVlRaDRsOVJzRjJwSWFGUE5NZnRNQkMx?=
 =?utf-8?B?SGlEbWxjeXlRR3ZraWZwUHp2SXJvekorbXVtVjlVeTQ1ejhpTzl2M1VHYU00?=
 =?utf-8?B?bm8wemxCU3Mwc2w4eVo1eWlRY2lNU3lEbFBqMGdDQVBKTzBmc1BlOGpyWk5E?=
 =?utf-8?B?c2dDUVVzK3BwV0UxK2hxd3haZE9UcEV6TUxmb1NuQjNPTnpFem1RRHRaYlVZ?=
 =?utf-8?B?cTZqYUVpdTBpYjN0ZXN1QU4zaWI4TGJIOThBekJSNnBrUU5OQ0lWd1dWMnph?=
 =?utf-8?B?bnE1L2I2NVNROEdJUVVYWWVWZkQ4OHZMMjFiUEpWdGlMMWIycUsyK1haMGVi?=
 =?utf-8?B?ZHp1Wnp5ZXZTMDlFSHlCK3dacVNUNVhmc2FlVG90YnZxMFBWNmtkS292WkNS?=
 =?utf-8?B?SW80STBXcVhLcVU2L3djQ1IyemtyOGM3M0d4MzhTeXVIb3pya0piNzl2VXRr?=
 =?utf-8?B?YmdEVmwxTWRGT2swZ1cra052YU9OaksxY2d0YUpOU3JCaERTNVo2WkNPaDB0?=
 =?utf-8?B?T2V0djRVcTdYYnhLWGtoNHRzNnVheXo2cGhoSVI3cmIya0s5YTJTVngrd2F3?=
 =?utf-8?B?aForU0xZYjZyNWZaT2ZVSlhyMXUzZmo3bm5FQlF3Z2dMcjllamdhaHRLd25h?=
 =?utf-8?B?WU5HT0tNcnVhYkZGd3NtdHdFOHAwd2duaVJCZmtjNDVBUHJhUXFkT3c0RkpK?=
 =?utf-8?B?Tis4U1VtUUlqNWJLb2tacG5FSDBxM0JHUTJQVTFUNzQrczJOQTdTdDNYMjZ2?=
 =?utf-8?B?TXpoNGRKbXMwQ2JoNXFIS0ZVZUhxUE5mMVlxaXdsT1lROXQxQmpJSkFSNkNN?=
 =?utf-8?B?a09zWHdVRlJsYlo0cDJoaU1JUGRJYzlkbTNHY1RuRlpQWHdFekJnMjJHODVr?=
 =?utf-8?B?T1Y4UGp6c0Jpa3NuNTdSVFpkVFhySlNFczg0U0pubjJrd0dUeEw3QzBSMU0r?=
 =?utf-8?B?Vlp2ZzF0bGIwbXVLVXdmSSswaXM3RHNrRnNrYmhCR3RLWGJDMWNSL1NoWmtR?=
 =?utf-8?B?bERZMjNJVjN6N05YeUNJSGdsNU1PNU5NU1JYNVZkNklVK3g1ZndrMXFTdVVZ?=
 =?utf-8?B?QlNVdlJONFNZRjNwaFhRRmFmZ1ltMk5QV2Nra05vYXVTWFo0VEMxdzFibUVs?=
 =?utf-8?B?MzFTSWRhWGxVakNKUU8zemNhZWdTRjl5Ny9OZ2pHVTdMNTJFak44NXY2MjN4?=
 =?utf-8?B?Y25NSnJ1dWwxaWJvb1hPdDZJZDVjVmVqdDVNalNkdU9ud1N6RzhZTFhxZnlj?=
 =?utf-8?B?aWlRdXY5c2lxaUtDQVprMXVzOXptbUs3b0RzNjM2ako4SG1rRjRxRkdaclZI?=
 =?utf-8?B?b2c9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	o4qPEMpSLWd+M73KuRRI4LsFImUigSnqcYjgooPrYGMxr8RzIG1z5IhWWZ3v6fKWf77WMF225XRBeWiKwooybvC/m3NuWKbtCt1lU5kzaMYwQI+nP2ferMg8cY88kc7Lr4lJEPK30yivIJEy2PXKSoP0dvML03psPnjEa7BjZVMQ9TUcFpAKMJJ3jxCrAutZuMZLBDt7s5r5G7ElHm6YB+oG8zDyqO1SgWZ+l2BcSjFj96BcW8n2Dh/kcExEYfc8CHlRXZ+rmAL+bsgC04kF828qthNfHRY/MTXDPXqz6IDJFKg7/ie/CoQL91AE65Umk/6l+FnB6rM6sU9MoOU1eDjX4Gt+bQq0mZUqOBi2d+4iIsMT6LGCgdntcz2U8Kl0IQ6fqnkQ5Ag/x/rC08jbEC2qYEIsYbWeIUbK/A1htiR1oSG9sFkKtQx62bUIzKXV9r2Ubvo/gx3qiOAkYac4gqpcaDwjD/BvEmfJwEeepzhQaQlDsXOX8kz+T5Tzg4Vfo3o0URm7INQs1Rn3Ax5uh/tF4Lp4Hy7PmgS3Kmrgdox+TnsOJY6jlPISo8jvAobX8XT6XvQGjus9keHArSf2ns8iAUDDKTrnNQUAIXDQF+83JeSPbRAfQTNxVkVbLDoKWtP72/Sl/vOcbq1BNe5tgtyu59R9UKuFoZi2mc7dGfp6o3a6PmpJceDDebaZ54jrPgOXkuk2htCNjeatLhdCZfysPgkKFWZyo3Xk4G7S2/YaGxptyc7YdG7IoMXFShp0Ieb73mdoJN9gWb+QVbVml/PJ5Z7iUOni29GJxquv/eJfyuaZbslcbqXlWztU8kGhmdJ58af8SZlkvJhVV97QkljAcRU/EtdpHoeXBtSEJVuv7KG6LJKLer16KEJyPE9QCYZMlfA/zyP5PoCT2H044Q==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6e343fcd-6b53-480d-f080-08dbbf62c530
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 14:05:14.1625
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: W8s1l0BPj1GgCgItkk4uzUTelV/PiTMsW2TXlXwfLeVhjltYAPomdsE49zemwc6F8KDQlfZR5JpK+l56Bio8Yw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR03MB5216

On Wed, Sep 27, 2023 at 02:06:47PM +0200, Jan Beulich wrote:
> On 27.09.2023 13:08, Roger Pau Monné wrote:
> > On Wed, May 03, 2023 at 05:56:46PM +0200, Jan Beulich wrote:
> >> In preparation of the introduction of new vCPU operations allowing to
> >> register the respective areas (one of the two is x86-specific) by
> >> guest-physical address, add the necessary fork handling (with the
> >> backing function yet to be filled in).
> >>
> >> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> > 
> > Given the very limited and specific usage of the current Xen forking
> > code, do we really need to bother about copying such areas?
> > 
> > IOW: I doubt that not updating the runstate/time areas will make any
> > difference to the forking code ATM.
> 
> I expect Tamas'es reply has sufficiently addressed this question.

Seeing the TODO in copy_vcpu_settings() makes me wonder how well we
copy information for PV interfaces for forks.  Timers are not
migrated, neither runstate areas for example.

Which is all fine, but I expect VMs this is currently tested against
don't use (a lot of) PV interfaces, or else I don't know how they can
survive.

> >> --- a/xen/arch/x86/mm/mem_sharing.c
> >> +++ b/xen/arch/x86/mm/mem_sharing.c
> >> @@ -1641,6 +1641,68 @@ static void copy_vcpu_nonreg_state(struc
> >>      hvm_set_nonreg_state(cd_vcpu, &nrs);
> >>  }
> >>  
> >> +static int copy_guest_area(struct guest_area *cd_area,
> >> +                           const struct guest_area *d_area,
> >> +                           struct vcpu *cd_vcpu,
> >> +                           const struct domain *d)
> >> +{
> >> +    mfn_t d_mfn, cd_mfn;
> >> +
> >> +    if ( !d_area->pg )
> >> +        return 0;
> >> +
> >> +    d_mfn = page_to_mfn(d_area->pg);
> >> +
> >> +    /* Allocate & map a page for the area if it hasn't been already. */
> >> +    if ( !cd_area->pg )
> >> +    {
> >> +        gfn_t gfn = mfn_to_gfn(d, d_mfn);
> >> +        struct p2m_domain *p2m = p2m_get_hostp2m(cd_vcpu->domain);
> >> +        p2m_type_t p2mt;
> >> +        p2m_access_t p2ma;
> >> +        unsigned int offset;
> >> +        int ret;
> >> +
> >> +        cd_mfn = p2m->get_entry(p2m, gfn, &p2mt, &p2ma, 0, NULL, NULL);
> >> +        if ( mfn_eq(cd_mfn, INVALID_MFN) )
> >> +        {
> >> +            struct page_info *pg = alloc_domheap_page(cd_vcpu->domain, 0);
> >> +
> >> +            if ( !pg )
> >> +                return -ENOMEM;
> >> +
> >> +            cd_mfn = page_to_mfn(pg);
> >> +            set_gpfn_from_mfn(mfn_x(cd_mfn), gfn_x(gfn));
> >> +
> >> +            ret = p2m->set_entry(p2m, gfn, cd_mfn, PAGE_ORDER_4K, p2m_ram_rw,
> >> +                                 p2m->default_access, -1);
> >> +            if ( ret )
> >> +                return ret;
> >> +        }
> >> +        else if ( p2mt != p2m_ram_rw )
> >> +            return -EBUSY;
> > 
> > Shouldn't the populate of the underlying gfn in the fork case
> > be done by map_guest_area itself?
> 
> I've used the existing logic for the info area to base my code on. As
> noted in the patch switching the info area logic to use the generalize
> infrastructure, I've taken the liberty to address an issue in the
> original logic. But it was never a goal to re-write things from scratch.
> If, as Tamas appears to agree, there a better way of layering things
> here, then please as a follow-on patch.

Hm, I'm unsure the code that allocates the page and adds it to the p2m
for the vcpu_info area is required?  map_vcpu_info() should already be
able to handle this case and fork the page from the previous VM.

> > What if a forked guest attempts to register a new runstate/time info
> > against an address not yet populated?
> 
> What if the same happened for the info area? Again, I'm not trying to
> invent anything new here. But hopefully Tamas'es reply has helped here
> as well.

Yes, I don't think we should need to allocate and map a page for the
vcpu_info area before calling map_vcpu_info().

> >> --- a/xen/common/domain.c
> >> +++ b/xen/common/domain.c
> >> @@ -1572,6 +1572,13 @@ void unmap_vcpu_info(struct vcpu *v)
> >>      put_page_and_type(mfn_to_page(mfn));
> >>  }
> >>  
> >> +int map_guest_area(struct vcpu *v, paddr_t gaddr, unsigned int size,
> >> +                   struct guest_area *area,
> >> +                   void (*populate)(void *dst, struct vcpu *v))
> > 
> > Oh, the prototype for this is added in patch 1, almost missed it.
> > 
> > Why not also add this dummy implementation in patch 1 then?
> 
> The prototype isn't dead code, but the function would be until it gains
> users here. If anything, I'd move the prototype introduction here; it
> merely seemed desirable to me to touch xen/include/xen/domain.h no
> more frequently than necessary.
> 
> Also, to be quite frank, I find this kind of nitpicking odd after the
> series has been pending for almost a year.

TBH when I saw this I was about to comment that the patch won't build
because the prototypes was missing, but then I remembered about patch
1.  I don't think it's obvious, but anyway.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:19:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:19:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.608989.947846 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVOA-0004JL-ET; Wed, 27 Sep 2023 14:19:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 608989.947846; Wed, 27 Sep 2023 14:19:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVOA-0004JE-BN; Wed, 27 Sep 2023 14:19:42 +0000
Received: by outflank-mailman (input) for mailman id 608989;
 Wed, 27 Sep 2023 14:19:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=GFCO=FL=kernel.dk=axboe@srs-se1.protection.inumbo.net>)
 id 1qlVO8-0004J8-JC
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 14:19:40 +0000
Received: from mail-lj1-x235.google.com (mail-lj1-x235.google.com
 [2a00:1450:4864:20::235])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e4d1f5eb-5d40-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 16:19:39 +0200 (CEST)
Received: by mail-lj1-x235.google.com with SMTP id
 38308e7fff4ca-2bfe9447645so40486281fa.0
 for <xen-devel@lists.xenproject.org>; Wed, 27 Sep 2023 07:19:39 -0700 (PDT)
Received: from [172.20.13.88] ([45.147.210.162])
 by smtp.gmail.com with ESMTPSA id
 mh2-20020a170906eb8200b00992b2c55c67sm9370253ejb.156.2023.09.27.07.19.36
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 27 Sep 2023 07:19:37 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e4d1f5eb-5d40-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=kernel-dk.20230601.gappssmtp.com; s=20230601; t=1695824379; x=1696429179; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:content-language:references
         :cc:to:subject:from:user-agent:mime-version:date:message-id:from:to
         :cc:subject:date:message-id:reply-to;
        bh=Wwk46okUDVQfnnelgDDAXJI2PyNHcNwKe3ka13udWbU=;
        b=ucC1A0FGsL0RlzBHxURmUx/IR8PpTPOj35hZd5iFRLWI+qBpnzzrrDg7mAcZk5Y/gF
         r1W2hvF1PaguOTZGx3BkrQxUsoI0vzWyyG4xofAItSygArqkyO0Hosl28RMEmDp9QpQW
         zdsluj3jqG0vfudF1o8Bt2yyXrnG8F/cEmHBvI4dU2uZ+J9x+5vm0OgnmQhu+AtrG/t1
         nn6v8bhGThTF5BadB/hrgvCHuN7F1w9xkC+yX1xS1c8YglQInCp4WQz+rb/FP0lWjbwG
         Gt3zwnK/8cOuGZktPU02AU1eCmQWBsRVpBDhrt3zNZQALl7OODfZ0rld9ytdQPXhK1xM
         36aA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695824379; x=1696429179;
        h=content-transfer-encoding:in-reply-to:content-language:references
         :cc:to:subject:from:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=Wwk46okUDVQfnnelgDDAXJI2PyNHcNwKe3ka13udWbU=;
        b=Lmm4J0jzZwhRUgtxu+C3cNbMOGxbNZxlfoiDsR7Up4b16Kl619x0xDOjOrdsrVEwwB
         ZvMfD+ctVsSST4051yPJsjD4uL4kmltCkXSbkQpYdA0cuLemrgotPCc1SrsNzTpMQEdo
         AJ+2Q67Vcdqic6GdydGmu4BAvC2xfmxA1iyJnl1kJ3xlc+Nc3A+SZdwOibjmx1ajLzL7
         6HZ30rbkvRJvU+i7zvkSiks5j31n7Sx0VAutEyerhm4p4uZTdYLAimUe3cRKb7LfDYdF
         JPeylw3qzR0cU+2NWflVMz+P4TXG7YAbuY6BRO7swxZ0cuOFYY1Ogkrgpu8+RcT4m8aj
         jLeA==
X-Gm-Message-State: AOJu0YyXCAADDz1ZjvjXhaobeKc0QQFI6NKkIqymw5/MhjUM6zXme2Y7
	2NMltfoaOdqfqksXOST1b4z1iQ==
X-Google-Smtp-Source: AGHT+IExVCqrFIxKzo43T8FMa/9T5rz6/xdccYRyI4cqxFk27k3RqgKqbk6x0v1Y5TMyg8NtKFdEkg==
X-Received: by 2002:a05:651c:3cf:b0:2b6:cd7f:5ea8 with SMTP id f15-20020a05651c03cf00b002b6cd7f5ea8mr1801740ljp.1.1695824378667;
        Wed, 27 Sep 2023 07:19:38 -0700 (PDT)
Message-ID: <9cc59d88-4b77-4e56-ae54-737baca1d435@kernel.dk>
Date: Wed, 27 Sep 2023 08:19:36 -0600
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Jens Axboe <axboe@kernel.dk>
Subject: Re: [PATCH v4 0/29] block: Make blkdev_get_by_*() return handle
To: Jan Kara <jack@suse.cz>
Cc: Christian Brauner <brauner@kernel.org>, linux-fsdevel@vger.kernel.org,
 linux-block@vger.kernel.org, Christoph Hellwig <hch@infradead.org>,
 Jan Kara <jack@suse.cz>, Alasdair Kergon <agk@redhat.com>,
 Andrew Morton <akpm@linux-foundation.org>, Anna Schumaker <anna@kernel.org>,
 Chao Yu <chao@kernel.org>, Christian Borntraeger
 <borntraeger@linux.ibm.com>, "Darrick J. Wong" <djwong@kernel.org>,
 Dave Kleikamp <shaggy@kernel.org>, David Sterba <dsterba@suse.com>,
 dm-devel@redhat.com, drbd-dev@lists.linbit.com, Gao Xiang
 <xiang@kernel.org>, Jack Wang <jinpu.wang@ionos.com>,
 Jaegeuk Kim <jaegeuk@kernel.org>, jfs-discussion@lists.sourceforge.net,
 Joern Engel <joern@lazybastard.org>, Joseph Qi
 <joseph.qi@linux.alibaba.com>, Kent Overstreet <kent.overstreet@gmail.com>,
 linux-bcache@vger.kernel.org, linux-btrfs@vger.kernel.org,
 linux-erofs@lists.ozlabs.org, linux-ext4@vger.kernel.org,
 linux-f2fs-devel@lists.sourceforge.net, linux-mm@kvack.org,
 linux-mtd@lists.infradead.org, linux-nfs@vger.kernel.org,
 linux-nilfs@vger.kernel.org, linux-nvme@lists.infradead.org,
 linux-pm@vger.kernel.org, linux-raid@vger.kernel.org,
 linux-s390@vger.kernel.org, linux-scsi@vger.kernel.org,
 linux-xfs@vger.kernel.org, "Md. Haris Iqbal" <haris.iqbal@ionos.com>,
 Mike Snitzer <snitzer@kernel.org>, Minchan Kim <minchan@kernel.org>,
 ocfs2-devel@oss.oracle.com, reiserfs-devel@vger.kernel.org,
 Sergey Senozhatsky <senozhatsky@chromium.org>, Song Liu <song@kernel.org>,
 Sven Schnelle <svens@linux.ibm.com>, target-devel@vger.kernel.org,
 Ted Tso <tytso@mit.edu>, Trond Myklebust <trond.myklebust@hammerspace.com>,
 xen-devel@lists.xenproject.org
References: <20230818123232.2269-1-jack@suse.cz>
Content-Language: en-US
In-Reply-To: <20230818123232.2269-1-jack@suse.cz>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On Wed, Sep 27, 2023 at 3:34?AM Jan Kara <jack@suse.cz> wrote:
>
> Hello,
>
> this is a v3 of the patch series which implements the idea of blkdev_get_by_*()

v4?

> calls returning bdev_handle which is then passed to blkdev_put() [1]. This
> makes the get and put calls for bdevs more obviously matching and allows us to
> propagate context from get to put without having to modify all the users
> (again!). In particular I need to propagate used open flags to blkdev_put() to
> be able count writeable opens and add support for blocking writes to mounted
> block devices. I'll send that series separately.
>
> The series is based on Btrfs tree's for-next branch [2] as of today as the
> series depends on Christoph's changes to btrfs device handling.  Patches have
> passed some reasonable testing - I've tested block changes, md, dm, bcache,
> xfs, btrfs, ext4, swap. More testing or review is always welcome. Thanks! I've
> pushed out the full branch to:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs.git bdev_handle
>
> to ease review / testing. Christian, can you pull the patches to your tree
> to get some exposure in linux-next as well? Thanks!

For the block bits:

Acked-by: Jens Axboe <axboe@kernel.dk>

-- 
Jens Axboe



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:25:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:25:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609037.947889 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVU6-0008SX-T7; Wed, 27 Sep 2023 14:25:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609037.947889; Wed, 27 Sep 2023 14:25:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVU6-0008SQ-QM; Wed, 27 Sep 2023 14:25:50 +0000
Received: by outflank-mailman (input) for mailman id 609037;
 Wed, 27 Sep 2023 14:25:49 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlVU5-0008SG-Hj; Wed, 27 Sep 2023 14:25:49 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlVU5-0005KG-9z; Wed, 27 Sep 2023 14:25:49 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlVU5-0006AJ-0B; Wed, 27 Sep 2023 14:25:49 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlVU4-000804-Vv; Wed, 27 Sep 2023 14:25:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=LxK/GAfMd24VuAmXjTQ4Dsn0njXE2+R2ejtMkK9m5zE=; b=Wiye2jg16sCeHl0ab5KImO5Xuc
	rohFvQqBoG90bjUA/6wkTZlG+mVHA0s3PCarckvTYwHj+NMzuKhoxZbNj3jDUgWRq33/WDLd2gIlR
	wBp12/UINDPTuQ7kIW8njYq9uOWmkDCjb9UcMqfxOPJEw4qQS2qPIFyolcZdynuKCk/0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183193-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183193: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=a1f8b32af001c15ce3c6be2364826b1ca35b6caa
X-Osstest-Versions-That:
    xen=cbb71b95dd708b1e26899bbe1e7bf9a85081fd60
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 27 Sep 2023 14:25:48 +0000

flight 183193 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183193/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  a1f8b32af001c15ce3c6be2364826b1ca35b6caa
baseline version:
 xen                  cbb71b95dd708b1e26899bbe1e7bf9a85081fd60

Last test of basis   183179  2023-09-26 14:00:25 Z    1 days
Testing same since   183193  2023-09-27 11:02:05 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Stewart Hildebrand <stewart.hildebrand@amd.com>
  Volodymyr Babchuk <volodymyr_babchuk@epam.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   cbb71b95dd..a1f8b32af0  a1f8b32af001c15ce3c6be2364826b1ca35b6caa -> smoke


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:28:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:28:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609044.947899 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVWJ-0000dJ-8f; Wed, 27 Sep 2023 14:28:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609044.947899; Wed, 27 Sep 2023 14:28:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVWJ-0000dC-69; Wed, 27 Sep 2023 14:28:07 +0000
Received: by outflank-mailman (input) for mailman id 609044;
 Wed, 27 Sep 2023 14:28:06 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=bwnc=FL=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qlVWI-0000d4-Di
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 14:28:06 +0000
Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com
 [2a00:1450:4864:20::233])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 12843dbe-5d42-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 16:28:05 +0200 (CEST)
Received: by mail-lj1-x233.google.com with SMTP id
 38308e7fff4ca-2b9338e4695so187336681fa.2
 for <xen-devel@lists.xenproject.org>; Wed, 27 Sep 2023 07:28:05 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 12843dbe-5d42-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1695824885; x=1696429685; darn=lists.xenproject.org;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:from:to:cc:subject:date
         :message-id:reply-to;
        bh=TXuYqEgzh/iOAZe12fKV8DRfIXiJLypHN3eOCRvPQNA=;
        b=fJUvzyiYF5NqpJOGdlI+lzII+JnuV+Ik86BTGw+2gtDhKwi5IjbHxss9dT/h6dHuAO
         OOhSGXjI3EKt832dWA+ynzCKBxblz2giDQlQ61ieiobm/NMVgNZShG/eD3+Vb6FqQGEy
         rME7QsJvGtMIk9sMXgRzpU2vC67P/2F6QEqtA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695824885; x=1696429685;
        h=content-transfer-encoding:cc:to:subject:message-id:date:from
         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
         :subject:date:message-id:reply-to;
        bh=TXuYqEgzh/iOAZe12fKV8DRfIXiJLypHN3eOCRvPQNA=;
        b=remPczBF9vjZVvf6NxvjRN16c8Cuq+oREFTC6X80Bo4IkOmrpsXbOkIfgjWfRvQr2b
         G2oh9+S91I9AUi5QSwoNuR4TAknJECEFYGxzC28HKU1tbeW3+Ti8vNGEH8Hipws+XWAi
         nKknQe9dmR4NOjOy73XvI1jun+Qj53DU2sz/UOsojyLTkc6g72RYx3PuD1YLHP3WRISC
         aVcYBd7fM3NbVOy08AE2Gftgw5D/AFdD5eO6SaeHZGhhnwDXXiCqgo12FDXSsRLwRFp9
         QjnYdvT9zUsjpRBp9ldpt99PirMN2WpPuxcTLhhMSAoVFKBcv+7dJ5ysM3Px+TP35iBF
         AOZQ==
X-Gm-Message-State: AOJu0YylKBXmH/AEH9ca7pnUIZ0C47h0FibcJ8jvHVZk3pFHgiks+OG+
	bsHC0zrdIqYE6KvzLPweenJBUxjv2+ZmxiE8uXYBqg==
X-Google-Smtp-Source: AGHT+IH9zl9dYb2ITxRQzisH4C2CUKi6QMlXbt7v5lFTjGc61/hGsFV7yPsDBGltOhuIMtTyqoX5rBPEf4zlEMvyAWs=
X-Received: by 2002:a2e:3c10:0:b0:2bd:58b:3a0b with SMTP id
 j16-20020a2e3c10000000b002bd058b3a0bmr1899936lja.50.1695824884974; Wed, 27
 Sep 2023 07:28:04 -0700 (PDT)
MIME-Version: 1.0
References: <20230927002938.1770418-1-sstabellini@kernel.org>
In-Reply-To: <20230927002938.1770418-1-sstabellini@kernel.org>
From: George Dunlap <george.dunlap@cloud.com>
Date: Wed, 27 Sep 2023 15:27:54 +0100
Message-ID: <CA+zSX=YJ7CfydKXrz+VD3dd8BSG9zb=3bTo93QAFD5H6iQbk-w@mail.gmail.com>
Subject: Re: [PATCH v2] SUPPORT: downgrade Physical CPU Hotplug to Experimental
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, andrew.cooper3@citrix.com, 
	jbeulich@suse.com, julien@xen.org, wl@xen.org, roger.pau@citrix.com, 
	Stefano Stabellini <stefano.stabellini@amd.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Wed, Sep 27, 2023 at 1:29=E2=80=AFAM Stefano Stabellini
<sstabellini@kernel.org> wrote:
>
> From: Stefano Stabellini <stefano.stabellini@amd.com>
>
> The feature is not commonly used, and we don't have hardware to test it,
> not in OSSTest, not in Gitlab, and not even ad-hoc manually by community
> members. We could use QEMU to test it, but even that it is known not to
> work.
>
> Also take the opportunity to rename the feature to "ACPI CPU Hotplug"
> for clarity.
>
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

LGTM -- I guess it does want a changelog entry though.

 -George


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:35:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:35:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609063.947918 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVdK-0002nZ-1t; Wed, 27 Sep 2023 14:35:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609063.947918; Wed, 27 Sep 2023 14:35:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVdJ-0002nS-VQ; Wed, 27 Sep 2023 14:35:21 +0000
Received: by outflank-mailman (input) for mailman id 609063;
 Wed, 27 Sep 2023 14:35:20 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlVdI-0002lj-45; Wed, 27 Sep 2023 14:35:20 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlVdI-0005Uq-1o; Wed, 27 Sep 2023 14:35:20 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlVdH-0006N3-K2; Wed, 27 Sep 2023 14:35:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlVdH-00035B-JY; Wed, 27 Sep 2023 14:35:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=u0rVnJCgVOpwv359CR+7TDf3MslQEdG/FqD4znZunPw=; b=Mz8bbFTOgjpJUI7QDzYXHIdFBB
	/Hao+UhXDJIKTi5EhSl8wRaQDLjpe/NmUO5FKBOZkx0CUHMEDT6RfE+yMeobp41c/SzeCB1Yso7iM
	wExpbGGNdvqnjej4dNlrPrmsvy4jeTPEqD0YzbmxMjAavZJoGrNTDmmYPnyHltW/uIJc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183185-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183185: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=cbb71b95dd708b1e26899bbe1e7bf9a85081fd60
X-Osstest-Versions-That:
    xen=d6351a10c80fcbbf2b5996d351b7181ba17b3b32
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 27 Sep 2023 14:35:19 +0000

flight 183185 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183185/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183175
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183175
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183175
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183175
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183175
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183175
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183175
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183175
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183175
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183175
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183175
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183175
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  cbb71b95dd708b1e26899bbe1e7bf9a85081fd60
baseline version:
 xen                  d6351a10c80fcbbf2b5996d351b7181ba17b3b32

Last test of basis   183175  2023-09-26 08:45:53 Z    1 days
Testing same since   183185  2023-09-26 23:40:35 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jan Beulich <jbeulich@suse.com>
  Nicola Vetrini <nicola.vetrini@bugseng.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefano Stabellini <sstabellini@kernel.org>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   d6351a10c8..cbb71b95dd  cbb71b95dd708b1e26899bbe1e7bf9a85081fd60 -> master


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:52:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:52:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609078.947928 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVuC-0006t2-Kh; Wed, 27 Sep 2023 14:52:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609078.947928; Wed, 27 Sep 2023 14:52:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVuC-0006sv-Gl; Wed, 27 Sep 2023 14:52:48 +0000
Received: by outflank-mailman (input) for mailman id 609078;
 Wed, 27 Sep 2023 14:52:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=rBEE=FL=zytor.com=hpa@srs-se1.protection.inumbo.net>)
 id 1qlVuA-0006sp-TA
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 14:52:47 +0000
Received: from mail.zytor.com (unknown [2607:7c80:54:3::138])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 838d0a32-5d45-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 16:52:45 +0200 (CEST)
Received: from [127.0.0.1] ([98.35.210.218]) (authenticated bits=0)
 by mail.zytor.com (8.17.1/8.17.1) with ESMTPSA id 38REpsBI2813248
 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO);
 Wed, 27 Sep 2023 07:51:55 -0700
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 838d0a32-5d45-11ee-878a-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 38REpsBI2813248
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com;
	s=2023091101; t=1695826316;
	bh=MhJAHO9v2jzk2PvwqyNGETAyG1UpCoLntbh2yXQZUBo=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=aMHkj4DOv6DVKNQ2jE/JqTDv2qBKCKxAShqmzZ7y7C+Zw/OitN+OuLKpupSaDjwJz
	 vTeT5e4dp5j+0WoGrSNvIE+EYfKhq/Gbny4pLZzhEX0Z9E48d2Uo8zrv3W/biN0xWK
	 3nyBImm5pKOvKWPV+Qe000I/N5m43n7LNsOG2JUPA3iYHFO+sLliz82f5g/4SakiEz
	 OQR2CAx3IaHTxan5Pu6I1KGdyw27lHWo8cyikgm37DNdsPcruVzwRsapJKcnsJk9JW
	 I+g+vN1DXdpNzgIPOIV7Eu/zalBGDTREa5xWlPpQbACtoARZonM7Lecng3qmQMWZzr
	 eWmUR/REs6aOg==
Date: Wed, 27 Sep 2023 07:51:52 -0700
From: "H. Peter Anvin" <hpa@zytor.com>
To: Nikolay Borisov <nik.borisov@suse.com>, Xin Li <xin3.li@intel.com>,
        linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
        linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
        kvm@vger.kernel.org, xen-devel@lists.xenproject.org
CC: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
        dave.hansen@linux.intel.com, x86@kernel.org, luto@kernel.org,
        pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org,
        jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org,
        andrew.cooper3@citrix.com, jiangshanlai@gmail.com
Subject: =?US-ASCII?Q?Re=3A_=5BPATCH_v11_05/37=5D_x86/trapnr=3A_Ad?= =?US-ASCII?Q?d_event_type_macros_to_=3Casm/trapnr=2Eh=3E?=
User-Agent: K-9 Mail for Android
In-Reply-To: <7acd7bb3-0406-4fd9-8396-835bfd951d87@suse.com>
References: <20230923094212.26520-1-xin3.li@intel.com> <20230923094212.26520-6-xin3.li@intel.com> <7acd7bb3-0406-4fd9-8396-835bfd951d87@suse.com>
Message-ID: <22A5EA90-8B57-4376-BAE2-0FE982DF4E90@zytor.com>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable

On September 26, 2023 1:10:51 AM PDT, Nikolay Borisov <nik=2Eborisov@suse=
=2Ecom> wrote:
>
>
>On 23=2E09=2E23 =D0=B3=2E 12:41 =D1=87=2E, Xin Li wrote:
>> Intel VT-x classifies events into eight different types, which is
>> inherited by FRED for event identification=2E As such, event type
>> becomes a common x86 concept, and should be defined in a common x86
>> header=2E
>>=20
>> Add event type macros to <asm/trapnr=2Eh>, and use it in <asm/vmx=2Eh>=
=2E
>>=20
>> Suggested-by: H=2E Peter Anvin (Intel) <hpa@zytor=2Ecom>
>> Tested-by: Shan Kang <shan=2Ekang@intel=2Ecom>
>> Signed-off-by: Xin Li <xin3=2Eli@intel=2Ecom>
>> ---
>>=20
>> Changes since v10:
>> * A few comment fixes and improvements (Andrew Cooper)=2E
>> ---
>>   arch/x86/include/asm/trapnr=2Eh | 12 ++++++++++++
>>   arch/x86/include/asm/vmx=2Eh    | 17 +++++++++--------
>>   2 files changed, 21 insertions(+), 8 deletions(-)
>>=20
>> diff --git a/arch/x86/include/asm/trapnr=2Eh b/arch/x86/include/asm/tra=
pnr=2Eh
>> index f5d2325aa0b7=2E=2E8d1154cdf787 100644
>> --- a/arch/x86/include/asm/trapnr=2Eh
>> +++ b/arch/x86/include/asm/trapnr=2Eh
>> @@ -2,6 +2,18 @@
>>   #ifndef _ASM_X86_TRAPNR_H
>>   #define _ASM_X86_TRAPNR_H
>>   +/*
>> + * Event type codes used by FRED, Intel VT-x and AMD SVM
>> + */
>> +#define EVENT_TYPE_EXTINT	0	// External interrupt
>> +#define EVENT_TYPE_RESERVED	1
>> +#define EVENT_TYPE_NMI		2	// NMI
>> +#define EVENT_TYPE_HWEXC	3	// Hardware originated traps, exceptions
>> +#define EVENT_TYPE_SWINT	4	// INT n
>> +#define EVENT_TYPE_PRIV_SWEXC	5	// INT1
>> +#define EVENT_TYPE_SWEXC	6	// INTO, INT3
>
>nit: This turned into INTO (Oh) rather than INT0( zero) in v11
>
><nit>

INTO (letter) is correct=2E


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 14:53:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 14:53:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609082.947938 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVvG-0007eM-Um; Wed, 27 Sep 2023 14:53:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609082.947938; Wed, 27 Sep 2023 14:53:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlVvG-0007eF-Re; Wed, 27 Sep 2023 14:53:54 +0000
Received: by outflank-mailman (input) for mailman id 609082;
 Wed, 27 Sep 2023 14:53:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WUTS=FL=citrix.com=prvs=6275c33bf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlVvE-0007e4-SC
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 14:53:53 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id aa68d857-5d45-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 16:53:50 +0200 (CEST)
Received: from mail-dm6nam12lp2169.outbound.protection.outlook.com (HELO
 NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.169])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 27 Sep 2023 10:53:47 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA0PR03MB5529.namprd03.prod.outlook.com (2603:10b6:806:bc::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Wed, 27 Sep
 2023 14:53:45 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Wed, 27 Sep 2023
 14:53:45 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: aa68d857-5d45-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695826430;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=CStWi641TAwaJ4yfoBBemV1EpvOh4njKbK1MzZnocro=;
  b=X+AF706Wn1LRI+7z401rC3dfG4GSZ9DIY8glnUMfzYp/O+fsywgG51+f
   xvFm++Qp13F9/Rc1WoHdE49kdy+L2Oa0mWiwFj/fZcz/rEjsXiaw4xb6x
   gUOKsvAG3nHJK4mU7cyXQv210A9ocf2y7op79iFq9HJMB8snwnINXA2n/
   c=;
X-CSE-ConnectionGUID: dknzheeOTkiyZ2Eziq9CCw==
X-CSE-MsgGUID: KZUUhhySR46WjyyQZEzzqg==
X-IronPort-RemoteIP: 104.47.59.169
X-IronPort-MID: 123972727
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:LmJYxqyzbc3ipJi3hQt6t+f5xyrEfRIJ4+MujC+fZmUNrF6WrkUBy
 DYWCGuBPvvfNmf0c40jO97ioxkHvJ7Wm9M1TQJu/iAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QRvP68T5jcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KW1N8
 +4YJT0qUhOCltDs7aC6U7hHrdt2eaEHPKtH0p1h5RfwKK98BLzmHeDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjmVlVIguFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WUzHyhB9hNfFG+3t1YvWCTxn0oMkFIalmqsMCLp1ysQt0Kf
 iT4/QJr98De7neDTNPwQhm5q36spQMHVpxbFOhSwBGAzO/Y7hiUAkAATyVdc5o2uckuXzso2
 1SV2dTzClRHsqCRSH+b3qeZq3W1Iyd9BXQZeSYOQA8B4t/iiII+lBTCSpBkCqHdpsLxMSH9x
 XaNtidWulkIpcsC1qH+8VWZhTup/8LNVlRsuFSRWX+55ARkYoLjf5av9VXQ8fdHKsCeU0WFu
 38H3cOZ6YjiEK2wqcBEe81VdJnB2hpPGGe0bYJHd3X5ywmQxg==
IronPort-HdrOrdr: A9a23:cg1Ru63oToSVuOedvd1oAAqjBHYkLtp133Aq2lEZdPU0SKGlfq
 GV7ZEmPHrP4gr5N0tOpTntAse9qBDnhPxICOsqXYtKNTOO0AeVxelZhrcKqAeQeBEWmNQ96U
 9hGZIOcuEZDzJB/LvHCN/TKadd/DGFmprY+ts31x1WPGVXgzkL1XYANu6ceHcGIzVuNN4CO7
 e3wNFInDakcWR/VLXBOpFUN9KzweEijfjdEGc7OyI=
X-Talos-CUID: 9a23:gqpmKW8a2NTIPQxiWpWVv0IXHNIlf3D68HTRMn3iJHRoUey+YkDFrQ==
X-Talos-MUID: =?us-ascii?q?9a23=3AbxZFrg6j8FBzYVu5dRautk2WxoxL0ZmTCEAcqq9?=
 =?us-ascii?q?a5faGJD1JCRqPni24F9o=3D?=
X-IronPort-AV: E=Sophos;i="6.03,181,1694750400"; 
   d="scan'208";a="123972727"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GB6gygtiPnJ1OZ0PHv7eBOH9rNfxc4hgM9Ce2cmIaVf8kT0koNhpOO0ZL24Z3ojegDuoYHh7HuFtlswr7HRbQol2NgOjF41gq23PUPcUe/YSDeDkhNChBg28gRtkOTw0U708AfiNHT7CVFV4JvaXMGKTja/nWyFlPuQWXeZa6xBPpg/zQnCwglsSPdySDKRJFzV0PP9qxnCIL9mKVLDf0k8RkbUYolhNJ5ub+ozQ9HtDjwnR+C0qWOWGsqKIBumjeB8c94rp2DP1Bktgl0bc5vZTqZpdtSP0V19q0FFQBD8Q5jNgSoafQ8y9GiQWeimGhduT5CWSh55uoGUtDYdLaw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0B+c3Frbz8Lioj9t2uzh+9DwcCQBmsRVoYsycP/KRf8=;
 b=eGGKAFEP1OzlYqDsrVpFFqlk91Jf+MFEwlT+FOmJGoVURENAZWT8sLxnkx5OXxVsxa6FGHF3PqXb7cU9aFZQFQO2mqtVIaNj4TwE9n8zB9Q2DwZ/3YgdesalTPl39gXqc89Qk9VYEM8OUQKWsVa9K/A/BiJkagKLO6C1ZUb9nEHuNB54IAlOu6Nn0uL6HIUaTnSi8c24xSNodY0618it2GoP9KqYTaSZTW9AOy+asTrRfkHBoQjbvhrFHtRqM5HQc7gRSIu8eh4nFcc3sEbc9F+ACpkVtQAGP/grZtfKSxc2LBQFjFLFCIPOns3zUvpcBG4NjYwuaI55nZ7q/NTsXg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0B+c3Frbz8Lioj9t2uzh+9DwcCQBmsRVoYsycP/KRf8=;
 b=D08maTOxlT4gt2++AQ4nBcx8d68ZIfAr5KDS5TpnwcYtaVk+BNumh5aXIGTLliNrAXQQH5VJ2BLLRGrbnH1UTmTeC8GUKUbUL+K+VjO3W0cV8MBuNpTpw2wSmusD3+ejG67oK6Tke7ukW1ZVBIzH4BsVLB/FF8UUX3eBZz8NcIE=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 27 Sep 2023 16:53:38 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v3 5/8] domain: map/unmap GADDR based shared guest areas
Message-ID: <ZRRB8ug8mNyvVsnK@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <140e906f-07c4-ae40-1d37-ae9966709289@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <140e906f-07c4-ae40-1d37-ae9966709289@suse.com>
X-ClientProxiedBy: LO4P123CA0022.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:151::9) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA0PR03MB5529:EE_
X-MS-Office365-Filtering-Correlation-Id: df99945d-3800-44e1-3058-08dbbf698bd4
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	eEZtxPeJygASWmO9gB9bntMwc3l0neNprHda7dva1Rwf/jwepNLVWrUhVTRiw1DT9KiGaezd1uB/0FAWiSIeYyvzuZ8RGZ+jfcR9qL8Qs7TtkKuzUkT1ZtwYFjSPaucZcxlAvpWaYzueOj22HrnPhJcdM3Ryp/9YM2VCVqGT4bSoczRF5RlrCU4Hdi2h+QfKxBoxM7fmh2FaqjE/+RzNoP75gpqG2WCWqSgwDn/YiaB3D707FMe9w52ogMrics6nZStFWQVIDAAgathwLXNxT0I39uxzrSOHxF/oi2haJWWvl4iGhy9G+M0mdJwC0zsWtwUsQ/tjYSRnIfi4WiQq7VvkdFqoJzOvXlji+dmpAND7c53n761HY3HSgJW1A89biylQ7P9vcjzk/qdaPYeWSkRrT0UkWUBjl8wVmyWKL70NRdfXs73VvlvnCwMnukJOTqQfPQM32oSKkv4tuVj2GDOoDISPeWLmXp248PvvmfP9yynYLsBJQmkwzCjXNQ2gz3OZmouC8azMbT0EkDuQDr9cnQDL5eq69vDWYIOCMYm1YIcvRKxD3QwmVuVX9UuK
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(136003)(346002)(396003)(376002)(366004)(39860400002)(230922051799003)(1800799009)(186009)(451199024)(66946007)(33716001)(316002)(66556008)(6916009)(54906003)(85182001)(83380400001)(6486002)(6506007)(9686003)(6666004)(66476007)(26005)(6512007)(478600001)(82960400001)(5660300002)(8936002)(2906002)(8676002)(4326008)(38100700002)(86362001)(41300700001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?QVVpYjE4Qyt4eTR0QktWOHA3SEZybDhmdGdtYjVUeE9UNi8yQjlHZVFLWU9X?=
 =?utf-8?B?TWVZaGF0QjduaWZQaGdEbG9WMnhiMEFYMUt2eUIvL1V3RHYxalBFWkU1ZUdO?=
 =?utf-8?B?RXFvN3J5Tm1zOGprRFcydWRqSmMxMzlXenMyMWtDZzNIOWxVTUJxb3RGSUdZ?=
 =?utf-8?B?R0plT0p0M2UrdlEwUEZLTFhQd2p5Zy9iTk1UcWZ4bUZDeVRjNlRMR2l5NjQw?=
 =?utf-8?B?aVZBMTdjdERwV2k5MCtaTUlpLzErNGg5YjVtdVJMbUZMTUNvdmxwQlE1RlZK?=
 =?utf-8?B?bVk5VWUvbGF6SjNzTzVxQzMrVGljZ2xlSGZZYmJpUSs5dVF4UU5qRE9qYWgy?=
 =?utf-8?B?VGN5aHVuMDkwSW1sOFV6a1JzQXhZTDJJN1pwc2pyZ2szck94SDdYUlp0QU9x?=
 =?utf-8?B?cTFiMVdHaCtWQ0FSVWJWR24yQTZMQ0Z0VUxHSVdSckgyQytPRGxQdk9mM3hB?=
 =?utf-8?B?OUdiY01tWmQ3V1k0Sm9VL2hEUEI0RGlaZVZVQ1c1WlM1YjhOaGhVV2c1dlpo?=
 =?utf-8?B?KzFDRUkrWDlHSzMzdWhXWCtXMnJHY3h5QTBHUTIzRlpZQnVXeDVLOFlWVDR6?=
 =?utf-8?B?WTRxWnMyZFlMQjZUMHdaa3B6bmEvTEt1ZUlNWmNPNkxRNEgxSmk3eGNLMHhQ?=
 =?utf-8?B?N0xNZncwTVdITnNRVUNkdXJPT3h5c1NMcjU4UGRwWXJGOWJNZ1VTWjhhY2R3?=
 =?utf-8?B?MUdyMEx3ZTh4OHhGa1hOL2xhdEp0STBOVTFHMUUyNFg1Ukp1d0tTV2VIMVBr?=
 =?utf-8?B?RExqQjNlQWJWNzZaaTcrRGRUMjJGUmZoL1hGaXI1bisyTDc3VmlzdkxJUFg5?=
 =?utf-8?B?aFNuV2J3d0M2VnJOV21lOEhyRG4yR1ZpTjhxM0phdyt4djNmd3prcFRsUW1V?=
 =?utf-8?B?bytnSzUxNENCaTJna1dUcUVkOENweUxGdmRMbWlaUTdsQkVHanJCY0VsY0Fi?=
 =?utf-8?B?bi9qZFViQzkvMjlQQzhPSjBwVjlCYktzdHgzNk9WVk1wc0pOd2RFYXVKa2xM?=
 =?utf-8?B?RFdxR3NteXk0K3pnOWh6a3Fub29PbmY3ZTdGc0FqZ213Rk5oQjNnejVIbmly?=
 =?utf-8?B?WjU4QVIvUTcrKzF2aDUzUU1JNFhITDM0a3RCVHgySGFFQkpmendadVVIYjRK?=
 =?utf-8?B?bjdLaUVhbHBTQ21TaVRCRzFleGtLSmdjWVRCWmV1OHE3OFRlalJCSlpKYmtI?=
 =?utf-8?B?RzJwNVo2a01PaVpJakRHRU1ja3NFUFgwUXRJT3crKzJOYWFKV0VQSXluRUlE?=
 =?utf-8?B?Skd5YS9MaXI0dS9Gb3NWQTZtQWJkK2NKNXB2RlNmREJNdGRQRXFtUG9HdVhu?=
 =?utf-8?B?ZHFNN2tueUx2SURnSEZyNzd4VDdMUFRjZUNpeHI2YVFWV1Y2SDlZTFBzQVlE?=
 =?utf-8?B?T1hITSs5ZGxJTzRrS3ZnczlIT1JlOHM5MHZXUHRjTWxINHJuQTcxcU5vUDEy?=
 =?utf-8?B?R2VtcG52WENLTG1lcFRTY3BLSzl1d0IwTGJCalNyZ2N5Y3ZOVmJyT2xadXhT?=
 =?utf-8?B?MkFQUW5DamE5NW14MC9UR0JuQklONE1udTlOMVg2ZFVYM1RHc3RRemxmbklW?=
 =?utf-8?B?YTVsUVp4dXFJZytGQi9jYVJabDBOSHBPYldGcnowNGJTT3poQjhjeHBWTDBy?=
 =?utf-8?B?MXVvK05yTmJrMXZoenVzbnpRMGhjQU02aXZjeHplZ2dpV2pucTJEd3J5U1FQ?=
 =?utf-8?B?cWZKWDJWMzNCMGdJUkdDMEI3TzNaY2VTbEtoaHBQSWlzeFZMYVdiQklKMUxJ?=
 =?utf-8?B?VHNtR1pLS29WSTRoQllsZ3FqOVBkNG9tN0Zwb3UxSWo3cWU2NE5HMndSN2pI?=
 =?utf-8?B?NHdSQmZLZWNvcldJekF3cmEwQlRDSFB3cFlPT01QZklHRmZHZUhORTdieFRh?=
 =?utf-8?B?QnFNYmRSU2VSNXdWSXhZRTk0S1hwOVFFVEc5Y04zVkpXYk1TdzJMOElHTlhC?=
 =?utf-8?B?RHoxdGp4TzcrQ2NoSGpySythU0IraVllOHVDbXpyT09pREszdkV2dWc5OVFw?=
 =?utf-8?B?WnprVXU2K0dQcm5NV1ExckkvU25kYjVxT3hpSkdrSTZyS2hYTmp0eWg1azRH?=
 =?utf-8?B?dC9nMVBYeCtIZDRYcXA4VW1LY3N4VGtxM1J3ZERHZmJ5RFQ2MGRrd0VnNFE4?=
 =?utf-8?B?WDc4TUNWQ2pPRWpCMGpodUJvczN5anVMV1JOWmxrcFllZE14OUZ2Ty9udlEy?=
 =?utf-8?B?ZHc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	ztyIV2skYMYlOgEqPWtDOSjn5m8/rY4Nyn+AMZLiI7wx0spm1gKcPoLWA8MB7PXQSfZE9nUQpeFDWDsPsAvxQpjpG7ttoYHj3ydckcyEeK/pmTT8ocXca6yXwbny2lnK/3PZmkBI7IpgfOCxvV4wV/blLWYeay7k8/SsOhY1+3iOEI9IuAAqV1gGpNsxoEiZfRML5tqNzig/6zE2AP1oAKw83C0MmuyaGow6LZ2e6P7Ohx9fhC2biJyJ+5cj3OUwZuEwsEXydD6LEjKcSyeFRc5Ks6Ef+OG4u3zC9D5QxTBHjJgsyQS1kz1B/QPUoODmOfZ0A/0D3j7Bb0G8YrJsBsCgaYWu77JElv/jugUZ5ETnQwF/0YcnO58KNnmsZ4DZ2d4lvkrbaI6WiOMhQC/dCBHpgXhvpivWX4cKMI+docCMJykLY28rbuOC1OJxuB6rAnx0wPHCUHjRC6G2jO4p8+Lk5TKG74xSZtlRvHwXE4DOTmkJc+kPkm6WCifyGe/oVn68X1mUPntswRhiYLtN+GXksgnDExocqU2BnIWN2dECo8IB6AuKtiL4XJgx7FjvdE6QhMviU+EhyPsX7qIFoJMYS3+GdILzJTlYv/tJeknN4jTUjOdN4I22VHOtiIVoFA8DU2nGt4JTIsfyWZFclp4KbX3zdAEug+hBOkhZnOPtqce8oROg2tOJCCTbgd1yVRj0UQ/xyEf5ooy4kwfCLI7ZOZsgat9+UcNX604AuFn+APgkwkS7upYI3k7L7UJQckVRPqEcxLtfU29q+Ad5r2+ZF02zMdz7N3aSdnU0awMBaBXiK+QcZrt5RixVVX72HaxMGbRhhv+urxaBqjm+yqF+tzexgqnAD/JWSFnOtAk=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: df99945d-3800-44e1-3058-08dbbf698bd4
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 14:53:45.0881
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: xM54CJH1u15W2Xg9PkWBJjKcsOTRk9t6FurDhiZ20yMpK5gUy2Qn8W6yaNl0IiLeIpBMoyrcqOMk51YGScJhAg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5529

On Wed, May 03, 2023 at 05:57:09PM +0200, Jan Beulich wrote:
> The registration by virtual/linear address has downsides: At least on
> x86 the access is expensive for HVM/PVH domains. Furthermore for 64-bit
> PV domains the areas are inaccessible (and hence cannot be updated by
> Xen) when in guest-user mode, and for HVM guests they may be
> inaccessible when Meltdown mitigations are in place. (There are yet
> more issues.)
> 
> In preparation of the introduction of new vCPU operations allowing to
> register the respective areas (one of the two is x86-specific) by
> guest-physical address, flesh out the map/unmap functions.
> 
> Noteworthy differences from map_vcpu_info():
> - areas can be registered more than once (and de-registered),
> - remote vCPU-s are paused rather than checked for being down (which in
>   principle can change right after the check),
> - the domain lock is taken for a much smaller region.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> RFC: By using global domain page mappings the demand on the underlying
>      VA range may increase significantly. I did consider to use per-
>      domain mappings instead, but they exist for x86 only. Of course we
>      could have arch_{,un}map_guest_area() aliasing global domain page
>      mapping functions on Arm and using per-domain mappings on x86. Yet
>      then again map_vcpu_info() doesn't (and can't) do so.

I guess it's fine as you propose now, we might see about using
per-domain mappings.

> RFC: In map_guest_area() I'm not checking the P2M type, instead - just
>      like map_vcpu_info() - solely relying on the type ref acquisition.
>      Checking for p2m_ram_rw alone would be wrong, as at least
>      p2m_ram_logdirty ought to also be okay to use here (and in similar
>      cases, e.g. in Argo's find_ring_mfn()). p2m_is_pageable() could be
>      used here (like altp2m_vcpu_enable_ve() does) as well as in
>      map_vcpu_info(), yet then again the P2M type is stale by the time
>      it is being looked at anyway without the P2M lock held.

check_get_page_from_gfn() already does some type checks on the page.

> ---
> v2: currd -> d, to cover mem-sharing's copy_guest_area(). Re-base over
>     change(s) earlier in the series. Use ~0 as "unmap" request indicator.
> 
> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -1576,7 +1576,82 @@ int map_guest_area(struct vcpu *v, paddr
>                     struct guest_area *area,
>                     void (*populate)(void *dst, struct vcpu *v))
>  {
> -    return -EOPNOTSUPP;
> +    struct domain *d = v->domain;
> +    void *map = NULL;
> +    struct page_info *pg = NULL;
> +    int rc = 0;

Should you check/assert that size != 0?

> +    if ( ~gaddr )

I guess I will find in future patches, but why this special handling
for ~0 address?

Might be worth to add a comment here, or in the patch description.
Otherwise I would expect that when passed a ~0 address the first check
for page boundary crossing to fail.

> +    {
> +        unsigned long gfn = PFN_DOWN(gaddr);
> +        unsigned int align;
> +        p2m_type_t p2mt;
> +
> +        if ( gfn != PFN_DOWN(gaddr + size - 1) )
> +            return -ENXIO;
> +
> +#ifdef CONFIG_COMPAT
> +        if ( has_32bit_shinfo(d) )
> +            align = alignof(compat_ulong_t);
> +        else
> +#endif
> +            align = alignof(xen_ulong_t);
> +        if ( gaddr & (align - 1) )

IS_ALIGNED() might be clearer.

> +            return -ENXIO;
> +
> +        rc = check_get_page_from_gfn(d, _gfn(gfn), false, &p2mt, &pg);
> +        if ( rc )
> +            return rc;
> +
> +        if ( !get_page_type(pg, PGT_writable_page) )
> +        {
> +            put_page(pg);
> +            return -EACCES;
> +        }
> +
> +        map = __map_domain_page_global(pg);
> +        if ( !map )
> +        {
> +            put_page_and_type(pg);
> +            return -ENOMEM;
> +        }
> +        map += PAGE_OFFSET(gaddr);
> +    }
> +
> +    if ( v != current )
> +    {
> +        if ( !spin_trylock(&d->hypercall_deadlock_mutex) )
> +        {
> +            rc = -ERESTART;
> +            goto unmap;
> +        }
> +
> +        vcpu_pause(v);
> +
> +        spin_unlock(&d->hypercall_deadlock_mutex);
> +    }
> +
> +    domain_lock(d);
> +
> +    if ( map )
> +        populate(map, v);

The call to map_guest_area() in copy_guest_area() does pass NULL as
the populate parameter, hence this will crash?

Should you either assert that populate != NULL or change the if
condition to be map && populate?

> +
> +    SWAP(area->pg, pg);
> +    SWAP(area->map, map);
> +
> +    domain_unlock(d);
> +
> +    if ( v != current )
> +        vcpu_unpause(v);
> +
> + unmap:
> +    if ( pg )
> +    {
> +        unmap_domain_page_global(map);
> +        put_page_and_type(pg);
> +    }
> +
> +    return rc;
>  }
>  
>  /*
> @@ -1587,9 +1662,24 @@ int map_guest_area(struct vcpu *v, paddr
>  void unmap_guest_area(struct vcpu *v, struct guest_area *area)
>  {
>      struct domain *d = v->domain;
> +    void *map;
> +    struct page_info *pg;
>  
>      if ( v != current )
>          ASSERT(atomic_read(&v->pause_count) | atomic_read(&d->pause_count));
> +
> +    domain_lock(d);
> +    map = area->map;
> +    area->map = NULL;
> +    pg = area->pg;
> +    area->pg = NULL;

FWIW you could also use SWAP() here by initializing both map and pg to
NULL (I know it uses one extra local variable).

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 15:10:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 15:10:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609090.947948 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWB5-0002vz-As; Wed, 27 Sep 2023 15:10:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609090.947948; Wed, 27 Sep 2023 15:10:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWB5-0002vs-7x; Wed, 27 Sep 2023 15:10:15 +0000
Received: by outflank-mailman (input) for mailman id 609090;
 Wed, 27 Sep 2023 15:10:14 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=XInx=FL=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qlWB4-0002vm-Js
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 15:10:14 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f47f8452-5d47-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 17:10:12 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-11-204-216.retail.telecomitalia.it [87.11.204.216])
 by support.bugseng.com (Postfix) with ESMTPSA id 5FDC04EE0738;
 Wed, 27 Sep 2023 17:10:11 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f47f8452-5d47-11ee-9b0d-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH] x86/domain_page: address violations of MISRA C:2012 Rule 8.3
Date: Wed, 27 Sep 2023 17:09:34 +0200
Message-Id: <6f3538a91f719611e719066237568163ae90c95e.1695827160.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function declarations and definitions consistent.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/domain_page.c | 36 ++++++++++++++++++------------------
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/xen/arch/x86/domain_page.c b/xen/arch/x86/domain_page.c
index eac5e3304f..1cfa992a02 100644
--- a/xen/arch/x86/domain_page.c
+++ b/xen/arch/x86/domain_page.c
@@ -173,18 +173,18 @@ void *map_domain_page(mfn_t mfn)
     return (void *)MAPCACHE_VIRT_START + pfn_to_paddr(idx);
 }
 
-void unmap_domain_page(const void *ptr)
+void unmap_domain_page(const void *va)
 {
     unsigned int idx;
     struct vcpu *v;
     struct mapcache_domain *dcache;
-    unsigned long va = (unsigned long)ptr, mfn, flags;
+    unsigned long addr = (unsigned long)va, mfn, flags;
     struct vcpu_maphash_entry *hashent;
 
-    if ( !va || va >= DIRECTMAP_VIRT_START )
+    if ( !addr || addr >= DIRECTMAP_VIRT_START )
         return;
 
-    ASSERT(va >= MAPCACHE_VIRT_START && va < MAPCACHE_VIRT_END);
+    ASSERT(addr >= MAPCACHE_VIRT_START && addr < MAPCACHE_VIRT_END);
 
     v = mapcache_current_vcpu();
     ASSERT(v && is_pv_vcpu(v));
@@ -192,7 +192,7 @@ void unmap_domain_page(const void *ptr)
     dcache = &v->domain->arch.pv.mapcache;
     ASSERT(dcache->inuse);
 
-    idx = PFN_DOWN(va - MAPCACHE_VIRT_START);
+    idx = PFN_DOWN(addr - MAPCACHE_VIRT_START);
     mfn = l1e_get_pfn(MAPCACHE_L1ENT(idx));
     hashent = &v->arch.pv.mapcache.hash[MAPHASH_HASHFN(mfn)];
 
@@ -317,30 +317,30 @@ void *map_domain_page_global(mfn_t mfn)
     return vmap(&mfn, 1);
 }
 
-void unmap_domain_page_global(const void *ptr)
+void unmap_domain_page_global(const void *va)
 {
-    unsigned long va = (unsigned long)ptr;
+    unsigned long addr = (unsigned long)va;
 
-    if ( va >= DIRECTMAP_VIRT_START )
+    if ( addr >= DIRECTMAP_VIRT_START )
         return;
 
-    ASSERT(va >= VMAP_VIRT_START && va < VMAP_VIRT_END);
+    ASSERT(addr >= VMAP_VIRT_START && addr < VMAP_VIRT_END);
 
-    vunmap(ptr);
+    vunmap(va);
 }
 
 /* Translate a map-domain-page'd address to the underlying MFN */
-mfn_t domain_page_map_to_mfn(const void *ptr)
+mfn_t domain_page_map_to_mfn(const void *va)
 {
-    unsigned long va = (unsigned long)ptr;
+    unsigned long addr = (unsigned long)va;
 
-    if ( va >= DIRECTMAP_VIRT_START )
-        return _mfn(virt_to_mfn(ptr));
+    if ( addr >= DIRECTMAP_VIRT_START )
+        return _mfn(virt_to_mfn(va));
 
-    if ( va >= VMAP_VIRT_START && va < VMAP_VIRT_END )
-        return vmap_to_mfn(va);
+    if ( addr >= VMAP_VIRT_START && addr < VMAP_VIRT_END )
+        return vmap_to_mfn(addr);
 
-    ASSERT(va >= MAPCACHE_VIRT_START && va < MAPCACHE_VIRT_END);
+    ASSERT(addr >= MAPCACHE_VIRT_START && addr < MAPCACHE_VIRT_END);
 
-    return l1e_get_mfn(__linear_l1_table[l1_linear_offset(va)]);
+    return l1e_get_mfn(__linear_l1_table[l1_linear_offset(addr)]);
 }
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 15:11:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 15:11:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609096.947957 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWCJ-0003bV-KH; Wed, 27 Sep 2023 15:11:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609096.947957; Wed, 27 Sep 2023 15:11:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWCJ-0003bO-HX; Wed, 27 Sep 2023 15:11:31 +0000
Received: by outflank-mailman (input) for mailman id 609096;
 Wed, 27 Sep 2023 15:11:30 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlWCI-0003Zw-19
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 15:11:30 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2061f.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::61f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2200fd14-5d48-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 17:11:28 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by PA4PR04MB7952.eurprd04.prod.outlook.com (2603:10a6:102:b8::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 15:11:26 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 15:11:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2200fd14-5d48-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DRqpLWm28QAOGaQ6Ft1Fc6Z+kfFTTwS6mrE2FrdRS0D32O89P1/e6Ah+H9Pv/EMM7jwyZvyERWhxDW08KAIehvGXqcGlNBJBdryME3syh+xCd5ei5PnD858H6nSr3sRa5xvUjgv/jMtza02WBWCQLUDpTlMnyisc9y8M3KjA4mnPFLixpzvzjHqr2n9b7pwCcXwN1aH3OieYEinZrEQhsG+kAfh2oZDf9lBXTHT5l+PQ8MJt6zd+9m8xdLerIbshZGRwfkYdGJ1PPJrbC8X0lnoT6cr6lb9XQk0ysXIH5y8MErQfmGpu19tmCMws8j5ShC/2w/STFGJHuAhjWgt5lg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IOk+QKweONi2z8bAnwX4knNyXssB/MCcxlv0QAawzjg=;
 b=ma4Gv1zjDwfjoPUTYDpMaH/AHlDAE6EwbSeA8tyAo0nPkGVMo8i80eBZmYUbxEou2yzabjcdbS4PSMw16gdGEYSED8cem1fN2JFq8wvOZ6Q7ux5IShcMbO5Zf9S+fYJwi7qJr6hPSlM+MTI9yzsDh/OsBFZEeW1lX9skKS/SufKSB30sezXfnNGi7l06CVb/BnnlkkSs4NbqKcpVpEd/rXpjPitttMEz9Q5CHNw3owpYVwCUs8+7BGruKylBofoVh3CD+T1k4NcybLwbRwV3EyjkGzTDHGZBMxiL4zZ7jzmMZPlq3kt/5+nqn+qv5eGn4YAVMLd/Q8KG0qftxwLaFA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IOk+QKweONi2z8bAnwX4knNyXssB/MCcxlv0QAawzjg=;
 b=1fwe4EIOM0B01SgUXORJIa5O5bNx8EXofCzQsMqMPd0WLNYFdpBFt4qt05m/eFRZni2tdBm/f/9N0m6on1Gih9zXthnZYuhpgUPnFTMQygKxzLttAgAvs7NB+YUbHW4m3haueOddYre11qXXuvNA08SH2l1TveJWdz7Tw4cDHQNsGGHEk/kBKyBI/+sLx2Bk4T4OBBMolz6FISGenE6rhIBP0ttWHm8A/bITDpfZ4K8JaJAO/fNIL0gfD4JkfW1FvZFb3picHyvvydkd862F0Td6OdOG2aBkmT8Z9NWG+9S1384nsRFOs6v7zaNV/nwPYpE3I6P5OMkZPjdi3y3txg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b4676564-166c-b316-b91e-a9af18a69768@suse.com>
Date: Wed, 27 Sep 2023 17:11:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 4/8] x86/mem-sharing: copy GADDR based shared guest
 areas
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Tamas K Lengyel <tamas@tklengyel.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <a79d2a8b-6d6e-bd31-b079-a30b555e5fd0@suse.com>
 <ZRQNHyggOFD1FuMD@MacBookPdeRoger>
 <6b55a773-c005-f524-531c-45247cac1d55@suse.com>
 <ZRQ2lHBHDlHJKYzp@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRQ2lHBHDlHJKYzp@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0049.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:48::15) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PA4PR04MB7952:EE_
X-MS-Office365-Filtering-Correlation-Id: 71cee6a6-df87-4638-8741-08dbbf6c04c6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	aJ+fur3yD0XoE1z1JSqIU+eHfHa78rUrbONChi2d+3FIyF/lZCfL63GWflBoxgoYsZ3MwdZZzn5PEaYqVYyM0CE1A2CE45pA3U3aTnOrr8KDeAsmhKAMCQgFxncghntCEHs+L56rWyPacEvcyVZuKnXcxci7nMXYNSQKGufnrWMaAbyIDJTHKuRwE8Gp++VIsevjFxrMLaw78AX9OpZSfOm78q71eWDIl3kVoDJY09oZIg+rvmRW7wkgsIWhkvR5AHDljlScVSKBqpEvdSX9C1PKUMrcZKUgo9PGvzVV0mgYgliTn9y4Rxj6MoTp23RPMETLjOU0EQt1QoUHJaPRhkqucidMHsrXjIrOapJPYxbesBYhKhXZXOi8ChetJVWzW/oij5z0vYL0UpyywPWJC6LsRTur4QtmA9lNVtXwUXGgToiEVCnxx5wyXOTVLA/dFrjXLCHJQkCeYqTaiDw8t4EldEYClrHo5nOWVVhbhDxNlqqun6QAb1s7XRc7L8rCDnOGfRF4X2eBqYTPhKwy8msLET+x90I0a8P8JLJgNZX1Mu6BzGVd/WZxymHYF1Mavb9jGnCHAJoxxfG8nXcT1qIfp6fDoueGaxawAfxS1mZVehE8DYqTGWg1P6n1jfgyUXkcneR8vxlyl22QppzQng==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(376002)(366004)(396003)(136003)(230922051799003)(186009)(1800799009)(451199024)(2906002)(6506007)(53546011)(2616005)(6512007)(110136005)(478600001)(26005)(6486002)(86362001)(66946007)(31696002)(6666004)(66556008)(38100700002)(5660300002)(54906003)(66476007)(83380400001)(316002)(41300700001)(36756003)(8676002)(4326008)(8936002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?aWM3OGtzb3BRV3RNdVBWT1ExT3g5U013Mk9LcWRhZ0w5dkh0c3NBRGFpcUp0?=
 =?utf-8?B?VnZCTHh1SUpvd0tEbFFkN0x6YWxXR21xMzBwR01LZ21hb2pwM3hZTTlNQ3ls?=
 =?utf-8?B?YjhFKzJLTjRacCtQVXBnL2h0WXlhN1l5VGFrSVpUeW9MU1ZGSnA4TlZIcUk3?=
 =?utf-8?B?azJraUxOeUFPdVdPOWFxMk4rY0t6Qlkvd0Z2WWZrZ1Vwa3RKZ2JYVk1ia29O?=
 =?utf-8?B?ZTdkR2NZcUpaQXZYMUlQazZPQVdDVXNqa25iOWZYNWZxTjEzN3p5U3RnbzNr?=
 =?utf-8?B?UENkYm1ZU3FnS2c1TE5zVEd5MEhPS1ZxY0YydWtkcW4vbmZ0N1UzakxzMXFn?=
 =?utf-8?B?M0t3MFRzdjJobjZDNjVvcGNmNGwzQUgzLzB4YXA1cytrai96Y25YVzcvWjlS?=
 =?utf-8?B?bmRFVlFqbSs4T0lYVEVFYjVMWU5vcXowZzdNNEZVWWJtUHhRWVJlZnNTV0ZT?=
 =?utf-8?B?VjZZa1g1ZEZaTzI0RGF4VU9sV2x5RmZUeitsTm0rMllENTAxTUhBOVA1WTl3?=
 =?utf-8?B?L2svMEl5VWtGUCtUVjhCZnp1bXhwd20xUHI0WW5TSm5vUElrRkU4dWY2RjlT?=
 =?utf-8?B?Tlh0VjhZdENuR0FRdXc3ZGNqTHRramVvZkVvNE93Q1Yxd0FKVnVNTmFRYVNU?=
 =?utf-8?B?ZmU1KzFGUUtLWmVXMkQyNkUxSERta0twUXAySEY1Z3VHL1o0TU1DZ2ZlR1hK?=
 =?utf-8?B?c3hKZE9mUXY1N0pJZU5zeFE1aitBV252WGgyeGl4aUJ1WGJxV3ppOVZZK0Fr?=
 =?utf-8?B?N2JwdGVKN1FyVDVQZm1vbHZQcytSWlh3U0RaeEN5U1g5dk5KUjhYbm1idDlT?=
 =?utf-8?B?K3BIalhKZEltS0E3SUhlWk9VMWVnRUJCbHc0aWZxTUFSajVqaWplYW04YzF5?=
 =?utf-8?B?Z2c4R3FjN1V3Sks5a3hEVmpEZjVmWjJTYTAwbG1iT2dFTEUrUVFUd0FVSDlY?=
 =?utf-8?B?aHlHaS8zdVk1QVZxbzd2MXFEZmJyZGYxak5xVkdBdm5XOTJmVkt1UDJBQmFz?=
 =?utf-8?B?WGRpQTg2YkhtNWkvWXlXVklyUWpSa0J0VXZFOHpnNkVvNWhoVGpHTlcrTGhz?=
 =?utf-8?B?ZEZ1YVFlMit4TmR0L2gzUStnbVNyRDZFWFhjdGFmWWVJQnMvN0lOYWNScjd1?=
 =?utf-8?B?c2pRUTYzd1BseTZhZHBEaEw5ZWt5aGJtNFpGYTRHVmZMOTZVbmVHU1ZwL3Zr?=
 =?utf-8?B?MHB2cE4xNjgzUENxSlFxWjlMeXduQmUvN2pQYXhvVzl3elBoTWkwR3VPd1RQ?=
 =?utf-8?B?V2g3Q3Z1UmwxY0s1TWJqcWx4WS9wTVhic2dFWlRZRWxHNmdrVXdsUzlKVHVy?=
 =?utf-8?B?TGJ0a1dPUkdJSTZ2RjlwY01aamJ5cktxaklHRzY0U1pkSkxEODI5TTNQNmlK?=
 =?utf-8?B?dGVCVitOUGpiajliWU1jV3lwWEw5bEk4WkFRZ2FWUW1GRVFLRXp1UGdvRUtx?=
 =?utf-8?B?Ymlza2d1SGY5SWhrK2JwZUlWRkZCdE05Vk1zcHgzZVBFSmY1T21XTmtJK3pr?=
 =?utf-8?B?cmt5b0RXN3BZaEFlM0pPOUIvN2dOVWQzQy9BQ2w4cE5MVk8yU09aVVdIWUty?=
 =?utf-8?B?UGE3RUlyMm94bGZuWllCRkdvRXN3SWgyNTk3YWRFMlNySjhTZmU0TzlSTGhU?=
 =?utf-8?B?clMvZ3hxOUxMMlZUL1Y3VTA2U01WL2MyY3NJOSs0TGFsazNOL3lsaGVpQTk2?=
 =?utf-8?B?Ri83TUtaWklpVGNRVlJpZ2NDWnlvdzJIMjduaDJZdmV5Mm44ZU80SEVEWWwv?=
 =?utf-8?B?TEx2dHQvYkxmYy9HV1QxQjlmRi8xc3VsdGJLREphdzhsa1BvWjJtY3I3d2dh?=
 =?utf-8?B?c0N4K2xtRXJWM2lwdm1jL2Qwck5JaXVKbHN5ZUZ0aCt4RW9zazBrSkhtWGpL?=
 =?utf-8?B?RDVNSHoza0hSYzFpdmhQM3JhbkRKNjVrSzBSMnFWODVCMStLalhFUEtZOER4?=
 =?utf-8?B?cWlKQXFBTGFxYmFyOFhBbG5ta0NGaUpDWUZkdEdTZWZwb0FOM3RrM3dRRklw?=
 =?utf-8?B?ZU1wQnB1elFFYkgzYlJNU0RyYnkrcUpxSE8ycUJYbXdhZDl0OEtNTWVhRExV?=
 =?utf-8?B?b0pSYzYyWEpPbVVRVHVuV1M4d2VLL25MTVVRRUtpa0lOVTNSUWVFRWpDNXB0?=
 =?utf-8?Q?h86m90u93UZ5OHqgQxEDJNhN/?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 71cee6a6-df87-4638-8741-08dbbf6c04c6
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 15:11:26.3177
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: pBOsHTInKUSQNhLhgpTxU7m9hMZYW4ojb2kMk/L/K9w05v+9cZtLJgPLWatZQ2VUTSvLy1tU15sFLw3wZ4JQ6g==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7952

On 27.09.2023 16:05, Roger Pau Monné wrote:
> On Wed, Sep 27, 2023 at 02:06:47PM +0200, Jan Beulich wrote:
>> On 27.09.2023 13:08, Roger Pau Monné wrote:
>>> On Wed, May 03, 2023 at 05:56:46PM +0200, Jan Beulich wrote:
>>>> --- a/xen/arch/x86/mm/mem_sharing.c
>>>> +++ b/xen/arch/x86/mm/mem_sharing.c
>>>> @@ -1641,6 +1641,68 @@ static void copy_vcpu_nonreg_state(struc
>>>>      hvm_set_nonreg_state(cd_vcpu, &nrs);
>>>>  }
>>>>  
>>>> +static int copy_guest_area(struct guest_area *cd_area,
>>>> +                           const struct guest_area *d_area,
>>>> +                           struct vcpu *cd_vcpu,
>>>> +                           const struct domain *d)
>>>> +{
>>>> +    mfn_t d_mfn, cd_mfn;
>>>> +
>>>> +    if ( !d_area->pg )
>>>> +        return 0;
>>>> +
>>>> +    d_mfn = page_to_mfn(d_area->pg);
>>>> +
>>>> +    /* Allocate & map a page for the area if it hasn't been already. */
>>>> +    if ( !cd_area->pg )
>>>> +    {
>>>> +        gfn_t gfn = mfn_to_gfn(d, d_mfn);
>>>> +        struct p2m_domain *p2m = p2m_get_hostp2m(cd_vcpu->domain);
>>>> +        p2m_type_t p2mt;
>>>> +        p2m_access_t p2ma;
>>>> +        unsigned int offset;
>>>> +        int ret;
>>>> +
>>>> +        cd_mfn = p2m->get_entry(p2m, gfn, &p2mt, &p2ma, 0, NULL, NULL);
>>>> +        if ( mfn_eq(cd_mfn, INVALID_MFN) )
>>>> +        {
>>>> +            struct page_info *pg = alloc_domheap_page(cd_vcpu->domain, 0);
>>>> +
>>>> +            if ( !pg )
>>>> +                return -ENOMEM;
>>>> +
>>>> +            cd_mfn = page_to_mfn(pg);
>>>> +            set_gpfn_from_mfn(mfn_x(cd_mfn), gfn_x(gfn));
>>>> +
>>>> +            ret = p2m->set_entry(p2m, gfn, cd_mfn, PAGE_ORDER_4K, p2m_ram_rw,
>>>> +                                 p2m->default_access, -1);
>>>> +            if ( ret )
>>>> +                return ret;
>>>> +        }
>>>> +        else if ( p2mt != p2m_ram_rw )
>>>> +            return -EBUSY;
>>>
>>> Shouldn't the populate of the underlying gfn in the fork case
>>> be done by map_guest_area itself?
>>
>> I've used the existing logic for the info area to base my code on. As
>> noted in the patch switching the info area logic to use the generalize
>> infrastructure, I've taken the liberty to address an issue in the
>> original logic. But it was never a goal to re-write things from scratch.
>> If, as Tamas appears to agree, there a better way of layering things
>> here, then please as a follow-on patch.
> 
> Hm, I'm unsure the code that allocates the page and adds it to the p2m
> for the vcpu_info area is required?  map_vcpu_info() should already be
> able to handle this case and fork the page from the previous VM.

I don't think that's the case. It would be able to unshare, but the fork
doesn't use shared pages aiui. I think it instead runs on an extremely
sparse p2m, where pages from the parent are brought in only as they're
touched. Tamas?

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 15:25:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 15:25:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609102.947967 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWPN-00070V-RE; Wed, 27 Sep 2023 15:25:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609102.947967; Wed, 27 Sep 2023 15:25:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWPN-00070O-OK; Wed, 27 Sep 2023 15:25:01 +0000
Received: by outflank-mailman (input) for mailman id 609102;
 Wed, 27 Sep 2023 15:25:00 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WUTS=FL=citrix.com=prvs=6275c33bf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlWPM-00070I-GZ
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 15:25:00 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 033a44f9-5d4a-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 17:24:58 +0200 (CEST)
Received: from mail-bn7nam10lp2105.outbound.protection.outlook.com (HELO
 NAM10-BN7-obe.outbound.protection.outlook.com) ([104.47.70.105])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 27 Sep 2023 11:24:49 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BY1PR03MB7216.namprd03.prod.outlook.com (2603:10b6:a03:533::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Wed, 27 Sep
 2023 15:24:45 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Wed, 27 Sep 2023
 15:24:45 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 033a44f9-5d4a-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695828298;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=X6scQgBPzJ/pU+FSz0VZl9VVL609G+81lhsYqWvUjGE=;
  b=U1HZXFXzSbLOC6t5Q89ZclAGVxx2fLi5jX8pNSLkfb2IZGC59VgcXFv/
   cQ5qnOR/ZkCyiY3EuCEm14xnQpSdVEiO72pzBxHl9u1O7/9HtQ5CDsqa5
   ZlmPTTkcSe15SjQgr2Glx3k/16OAlW+JBhiXIwXm/6bfhCLoKDz5LEUeE
   M=;
X-CSE-ConnectionGUID: 6aotJQo1RjO9IMRgHckcTQ==
X-CSE-MsgGUID: ErDtSfRNRAyqkC8N4J/NAw==
X-IronPort-RemoteIP: 104.47.70.105
X-IronPort-MID: 122602136
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:0xS3y6/t2gojM2JGeSzPDrUDTn+TJUtcMsCJ2f8bNWPcYEJGY0x3x
 2oXC2HUP67fNzenLookOYq0/U4DuJ7Xm9NlGwM6pSo8E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdmNKoU5AW2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkkQ/
 PsECgkKNyqBoLOX5Yi0auJvjfgaeZyD0IM34hmMzBn/JNN/GdXpZfqP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTeLilUpjdABM/KMEjCObd9SkUuC4
 HrP4kzyAw0ANczZwj2Amp6prraVx32jAttJStVU8NZHmnGP/WIpLic/REK4iqmf1mz5fftAf
 hl8Fi0G6PJaGFaQZtv3UgC8oXWElgUBQNcWGOo/gCmdx6yR7wuHC2wsSj9adMdgpMIwXSYt1
 FKCg5XuHzMHmL+ITXOQ8J+EoDX0PjIaRUcZfjMNRwYB59jloakwgwjJQ9IlF7S65vXqHRngz
 jbMqzIx74j/luYO3qS/uFrB3DSlo8GRShZvv12KGGW48gl+eYipIZSy7kTW5upBK4DfSUSdu
 H8DmI6V6+Vm4YyxqRFhid4lRNmBj8tp+hWF6bKzN/HNLwiQxkM=
IronPort-HdrOrdr: A9a23:PqqlTK21EZ8cbMbUeI7N/QqjBEgkLtp133Aq2lEZdPU0SKGlfg
 6V/MjztCWE7Ar5PUtLpTnuAsa9qB/nm6KdgrNhWItKPjOW21dARbsKheffKlXbcBEWndQtt5
 uIHZIeNDXxZ2IK8PoT4mODYqodKA/sytHWuQ/cpU0dMz2Dc8tbnmBE4p7wKDwMeOFBb6BJcq
 a01458iBeLX28YVci/DmltZZm4mzWa/KiWGCLvHnQcmXGzsQ8=
X-Talos-CUID: 9a23:4SUlfmE3pd7PbHlRqmI5/UkIOPkiK0ff6ybxBnW3KW1qQ4GsHAo=
X-Talos-MUID: 9a23:z56r8gmmnkPBVdLLOFZzdnpPLut02KqULnokgIwFkJmiaQ43HR6C2WE=
X-IronPort-AV: E=Sophos;i="6.03,181,1694750400"; 
   d="scan'208";a="122602136"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LQsrlgQuJL2J2VmaUw8le02j4dHSG9FE8mcZl3BqtTeBjlTlzzjivcYc3Esp9s5njiqy1h4Tx2CTFR9hDE5ELvMaLRWd+oOSV66d1IlDanUTGB4zoaJRHXz0bP/73EMIb9BDuaH682xXCqKtb77MSGkSrP6Sikp3P7LKD8EQIrEFLEGIyRrR0Yj8KSAQ94rRSNqJi742Ec9lSKat3B6wMPn75V8kNhawSyIZfKUrIXumtjIQM3jfdjvn7IZmi49DOdeZyS8nihn/RnYDmjVFe9UadmzMuMqn023DA+eIm3nSp9sm85l05RdyZr32Vv9F/DcW72E3IcASyiflmjdJIQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=8QH8bWQOQixbauh0wVdBOpR/O1L3xaTNjpr8J5tngBU=;
 b=TF+e6rEJISkqf4m/Q1cbQd0pSntYH5qXUxr0inDXIpJV3RYj61mNHTsT9b32o57+yuoo1sbXx0RKNytOeRrRdC9j37OrbOZbgg+ZAIuBEjt9Q/jyNrRt/PlN9xDY2e1iC1nYQlp7gKjm2HhZsMXHn04VKc+0dqamtirxktEdUxgKm5lv8iDSBDN/Wx6NULcTuv1BbVeaO9ZtGHHg7ySFULsPS1j6u+ILefEjidUooyvOQxBZEd9wmnts1gYe8Wup7dyjxyCk6ymSVeNos3//XIfEgT/ZisLWpQ34F1Z/E0e7a6FNaEm31T81SwSPQaLedkZV341j5AvPn/WTL26Lsw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=8QH8bWQOQixbauh0wVdBOpR/O1L3xaTNjpr8J5tngBU=;
 b=xgUYT+c7lg/2XiU+9aPYnWlGiXR6KbdaJ22OIim8A7c31Bn8/ucZrpmHzS17gZOY3BYYm1nRlnCTQAQyRQbjefNzxfncc1QvpUrO3igviRFlruIbJ7II5aJG1ENCatHPd9KWC8ay4E98sw5oGyOfvjXdvZfDAgLzurqxtI2S10Y=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 27 Sep 2023 17:24:39 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v3 6/8] domain: introduce GADDR based runstate area
 registration alternative
Message-ID: <ZRRJNw-B5iT_TGJo@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <bb902943-c139-ec6c-66f9-284ceff3995d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <bb902943-c139-ec6c-66f9-284ceff3995d@suse.com>
X-ClientProxiedBy: LO4P265CA0219.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:33a::17) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BY1PR03MB7216:EE_
X-MS-Office365-Filtering-Correlation-Id: ce7259cf-1a3f-46f2-fd03-08dbbf6de0ea
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	03Lt8NrXVs4SA7sUm2rT4UtsQRYj+VKQ1IERqKKt3UvOLPrDMBeSlK8neuFuOnTUDTPpMK3JxvGfqdyCll60Ru5vfyodWSzUk7UHzIL41C/5+/PlnLvLWV1mqknVtoQvY7TwslzXNGd0MEF1OXcU/Myss3MFlzhKGo2pnQzXrfwQyHmSSyePwpNxhVRasp/bt8zcSwcgUragCZWI1k5t/mI8e7fQtGF9QzWC16M1SLZ2DIdY8Nn3XV3Ac+D7rmLiOXua62RJPybxmsOB/eIyOfU6dRageSHoBD9/mFQ1N+rWrTQ2em7H5wNW1WihAQ5gThHvjfp9YBQNiK36xW1Qr7xBQ0PpOqyN27WYmsx3YqUWVYl1Pwn53lW4P0/d24YBzgd5ApplD58kwy4VDeFcyMOgt0W6SSB2O5gjmkTYY4PMHljCpR5a738GpDuVuFjDsKKddUonaixMqXNAwFtHglPvM8rNA5uP3HNPh/GHUTYLlUv9LWLshU4SoGi9BUoHbJLgnq+clTVdts8rt5ugeTl4U3AZhJDNtrkVbJFYD1+2QbVQ7jWi8xF+1GhbALIz
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(376002)(136003)(39860400002)(346002)(366004)(396003)(230922051799003)(451199024)(1800799009)(186009)(26005)(6506007)(9686003)(6512007)(82960400001)(38100700002)(86362001)(85182001)(316002)(54906003)(83380400001)(8676002)(66946007)(5660300002)(8936002)(66556008)(4326008)(66476007)(41300700001)(2906002)(478600001)(6486002)(6666004)(33716001)(6916009);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SHQ4ZXpRZVVDNGVKRndidDNTZlZqVmxxaXZsaFYrQzlWNFlKNWVPVEVrQTk5?=
 =?utf-8?B?ZlpHNE1DNHBTSUU1YW5BTFdVazNneUlVSkJMMFk1TkxOdWttLzAzN0R2Y2Nz?=
 =?utf-8?B?elI2VEIrZFRlcXVqQzVEV0s2K2pBN2EvL20zUGU1V25Eb21La0lFMmY1MWk2?=
 =?utf-8?B?SnJadVNHUjFleFVEZmlYaThLVk1ObUtUcHcyNXM1V2hXU0JhQlVFMU5tNzRo?=
 =?utf-8?B?dFVDTGpIejlYRkxrQWpYTWdWQ0dZMW9XaUoyY05ieitGVzBaMTJpNnVXQnov?=
 =?utf-8?B?ME5jcFZYL1hDbUNUdHlOZ1pFc1g5YStVeE9wNTc0bDI2OFlQU2pGbFpsVE1y?=
 =?utf-8?B?cno1RTJkVmV1amlzTThwM2NzQTRaRkc1UERSdDhZVlFmSGlVTFpnMnhHZlRn?=
 =?utf-8?B?OXhjR0E4cnUwLzlZVnczS2lrUnFNQ1BtZTNuN0JIaUY4UERMT2hPcmVhb1Vm?=
 =?utf-8?B?a1MvSTB0THJtMFAvZVpJRCs0UDNCL1hQa3VUYUpaaVBMU1VhNjlDSUxSTDN0?=
 =?utf-8?B?ZlBmL3hsWlF2R1NqYW42YmVYSnRWbGhmRHB0RTBHdWZibURIN0JOUDJ0eTRv?=
 =?utf-8?B?eWtBbWxUODVXQTZPK0Y5NjlpandkbFVpTWRUSkJUNWNnd0kycXN6K1ZzbDBn?=
 =?utf-8?B?SXJ0bUV6NVoyRkxYcW5qMGJ5TmVBSmZhZllqek40TWlML3Ezc1JtNFpnbWVJ?=
 =?utf-8?B?N1BUakdsZ1ZFajFKNzJYeTA0bjZ4WWxSc3JrbDFFSEZ4WVp5M3VvYzJXcDZG?=
 =?utf-8?B?SkRQSlNCbEdsWHBPcGI1NkJKQXVCck84ek1VeU8zRzlwZ2Vvdk9EOFVhajZM?=
 =?utf-8?B?akZhOEJxU0RrdnJKdk9ES21EaG1iOSt0QnBWU3J6SXk4SnpQaW1FNHZMbzFE?=
 =?utf-8?B?dXFmNE1vMGhVU1kwTnNHTXprakFxT2VLdWxPRmdHRGhZVlFBU3hpT29HeXdp?=
 =?utf-8?B?TzRSb05xcGY0U0FabUptZ0dHRGZ3eGI1cmt6Qi9WQTJOMzlVczBGWjVXdWl3?=
 =?utf-8?B?d2ZYbmdOaHplS0VMaWhaVVpEM2JCeWxCSGNvcU5ha08xRzhJQ1dValcxSUpp?=
 =?utf-8?B?TGNNMVg5NnJ0UTNHZ3U1TmR0SXhGQVg3aEVEUzRXdjhOeGxnaTdVYS85RTBi?=
 =?utf-8?B?QjVpdWdTcWRJd3E3ZldPWWowSVJOUWw0Szd2ZXhoUHE3OWZGR1V6a3ZIbGRy?=
 =?utf-8?B?SXF2dUpmWU9vSzE1RnQ5NVZ6VmdTNEFZMTUybFR0VVVMS0kySjNVRkJBZjJK?=
 =?utf-8?B?RVNqNDBPUnp4NWFXVnQwbmtGaEFEZkZxblZXYVJpczJBcWZLWVFjWEpCNGli?=
 =?utf-8?B?K2dhRkRlWUE3SERTZjIyWWNqUmtvZDUxeWdWRUcraitVUGxBTkFRNHNSMHpO?=
 =?utf-8?B?cEpxcGFhNlpKMVlXNlpYNjMxbTFhWVQ1QVVkZWFPdFY5d0VUOWJydGF3WXE0?=
 =?utf-8?B?OG1iZmZkZy93K1FVZkVYRmJGSVVXMHdnMGE5SEZYS1NrS3NXT28rU3pJd2Jv?=
 =?utf-8?B?enh6Rk5nZk0zSi9KenIrMDJ0ZHFoaDNsaFVZeC84Q04yU21GWHJqL20xblZX?=
 =?utf-8?B?Mlg0bmZiajJwV25CWFk2MWFIOUg0YWF0QUMvOGlIbzhJcXkzZGY5SGVianJi?=
 =?utf-8?B?b2l5dFlwTTQrWndPd0hlUmtNaElvMEN6YTR6VWJoWWtXY3c0S25NYUdiNFJr?=
 =?utf-8?B?cHBtVjBxWFFyVis1T3I3cmVSOU0vb2Z2clNIcHUvQ1BwYWVjVHd2NExMWkhw?=
 =?utf-8?B?dXN3N0dYMzR2aTZwZTBZMFZGaXlLRUtZbi8zTkVaWDc1QkwrRGNTYkovKzhn?=
 =?utf-8?B?ZzlIcmsrTlg2QlBqV1VNRlVPMm5HSCt5OG5oRkxjTnlFVFpnM2ZsUUlkNFo5?=
 =?utf-8?B?N3NQTURLeDRSZCsrdU13ZmIvZXdLUUJob21BZjM3NUFBWDlvakVGb1RLZGds?=
 =?utf-8?B?L1F4cjIvZ0VINHRlZ2RSbG45SmVDU25IUEdjNytIK1RqY01SbEVRTHRrOVor?=
 =?utf-8?B?RHNpUlZBblVFaE5VYnpjRWRSd3MvQjR6TTlzbm5mNkF1ZEs2b21vTlNIZjRu?=
 =?utf-8?B?aHNETUlLODFhT1VOQVFGZFkzWTEyait6Vytacm1WcDBpY0oyNHA5ZUVxdWY5?=
 =?utf-8?B?MWRiTzJFd29yVHZNZDduak0zR0hBaUhQa2pWblRlblZqUk9vRytJeDhhTExL?=
 =?utf-8?B?amc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	OxqgLSyXT7dtI+TWcLMi3Fr9Avghla2I5kzlWSBZTgpQb3x0lxfgRpD8FPDMeF5ER4Vh58QCVt8/dVh1KQH6oNzCavEpdRnV7lQKS/Sj5er0yZeiQ4DbPbg0K33T35RUr8dzGTbpxhXp2N/H/b8zHuSsgIiExjPhMIC/SKcuKnbQdZ9balVj2G8n60LDG3uuIdI35pRvZjz+0mzupcyzO5x8+40Lh1KzlmrkDRewT13kCZG20i8O4NMuY38LZ77UGSmG32xR3E2azoyLwezr0GEKE2mO9yVecNghn84H27KWby6fOvIaalT0+oWlMhXad/+yRr5pE2CyAG6X984TeE9Ygrn1y/rp+k5yL8T4pmSmhmeVGamoYm+lkcU+anu8/8ut3DjClTYpxG0BppUTGMtOScivzVFfbnqBSCE+hcMSyX3ct7Cu6n23arZ+UYUddtMLwtz0gc0YU7Wo9unPkqJsOUf3RcSgkBSrs48ezR4/GWiTdo1f/uiMQoluUFr7AE0qF9jjhCNhcLn3OqLMx9eYXyopm+VBFIzxjAyq3v0EM+y/IOmi0r4l0HMDBpXvzZj/eAMp91y0nK/5BRkvB/68aK+vVH7NwP/Q5/Niz1vjyS157FjhefnYDZ88EbUNGSyE3XpYLSokwjnFeXspirDHBKDoXhSK/Ig+PR66h0xu90lyjE43hqjvtIJsXvQBgSnMvuGkyZZMl5i1+yFPOInxjVw6RMzIcAgO/ECcgHspWm1xT11sPyCywzE7qwn+/oObbUiJ9SOkJ2SkfnUIztCm4MVE+ImrFb9ymAL409nNOzVQ7sUXfwGv8FmBqk2nOcy637WiCtFEumMwz+r6cZHDFCTCAY6FmavWl+LcJAs=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: ce7259cf-1a3f-46f2-fd03-08dbbf6de0ea
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 15:24:45.1767
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: HCFN/DYNyP9NrdcLMEzaAEpqiZD3d3DBpalX1ACVTp6qIRcFk5PB4R1FWJg8WW4Agiq2ZROVgINdzSGw/Y+qBg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB7216

On Wed, May 03, 2023 at 05:57:40PM +0200, Jan Beulich wrote:
> The registration by virtual/linear address has downsides: At least on
> x86 the access is expensive for HVM/PVH domains. Furthermore for 64-bit
> PV domains the area is inaccessible (and hence cannot be updated by Xen)
> when in guest-user mode.
> 
> Introduce a new vCPU operation allowing to register the runstate area by
> guest-physical address.
> 
> An at least theoretical downside to using physically registered areas is
> that PV then won't see dirty (and perhaps also accessed) bits set in its
> respective page table entries.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

One comment below.

> --- a/xen/include/public/vcpu.h
> +++ b/xen/include/public/vcpu.h
> @@ -221,6 +221,19 @@ struct vcpu_register_time_memory_area {
>  typedef struct vcpu_register_time_memory_area vcpu_register_time_memory_area_t;
>  DEFINE_XEN_GUEST_HANDLE(vcpu_register_time_memory_area_t);
>  
> +/*
> + * Like the respective VCPUOP_register_*_memory_area, just using the "addr.p"
> + * field of the supplied struct as a guest physical address (i.e. in GFN space).
> + * The respective area may not cross a page boundary.  Pass ~0 to unregister an
> + * area.  Note that as long as an area is registered by physical address, the
> + * linear address based area will not be serviced (updated) by the hypervisor.
> + *
> + * Note that the area registered via VCPUOP_register_runstate_memory_area will
> + * be updated in the same manner as the one registered via virtual address PLUS
> + * VMASST_TYPE_runstate_update_flag engaged by the domain.
> + */
> +#define VCPUOP_register_runstate_phys_area      14

Just to make it more obvious, it might be nice to add a note in the
comment on VCPUOP_register_runstate_memory_area that `p` can also be
used with the `VCPUOP_register_runstate_phys_area` hypercall.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 15:29:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 15:29:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609109.947977 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWTl-0007d4-BL; Wed, 27 Sep 2023 15:29:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609109.947977; Wed, 27 Sep 2023 15:29:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWTl-0007cx-8c; Wed, 27 Sep 2023 15:29:33 +0000
Received: by outflank-mailman (input) for mailman id 609109;
 Wed, 27 Sep 2023 15:29:31 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlWTj-0007cr-O9
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 15:29:31 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2062d.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::62d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a6dbce9e-5d4a-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 17:29:30 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by PAXPR04MB9219.eurprd04.prod.outlook.com (2603:10a6:102:222::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 15:29:28 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 15:29:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a6dbce9e-5d4a-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EagsTpodPH0F3Mlk+HpSoKNd2KNHF7p8yk9EXXw+d6i0svvG8qsAE/gjFPV1p/nBNcs1qpcmn100cZcUGMF4mdEuVqc19TjBylhmNEQP2jcepY/C8aFVx45TlMPkOTTWA1MYApaWsqdGPooUjIPgde2aAR3MceV6F3vtUVTEL6zxAI9YHQ6VFQDGGbBarm3G3yKywwv+SNgpjLciZJRGOaJVvoLV2+L3HreWUtleLvVvNE3a44Tl6KhCeqeAZECh/7Enr0gAgx3svE6mZBGtkli7TQF3bAOCUx1i29esRF3YvrwaV8DbT2tUZMR/pNmsRsU2AI4CRd9YWVq1c7LaQg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=5fE17IRb2bZSAHcW8CQfpBVm8HAfBvc4YS6fVJ++ivY=;
 b=K0Npc6LZZ6zdAYpHcT0DzR6J3EHFq5MXahVS72+ndM1slhrVcb4voteidTbQKXp47K+4hKEL/UYB9dNciQAe6A+B5hxyr4Ol3xQ3X7plaiBvdrtopolfEEyY7KBQIMSC5lCTRX1xQzTPiewY2Zvnu7+v0iJVQoULJthMakhOrrC4V1H9gYK10iaTVeb7lPHAJw98AhIKD00qwBMRV6jdKwSbULApKT5degCisZcT7po4HKhAHRyOZ2WU+YNn1hvUNkeHg/QSlE15P2wDg4gZIKffB4UGChdzr78j9vZG+3PslPNrd6x+sL9o35jhY6JXBqb5ExIO2VRXJc1SSWXhgw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=5fE17IRb2bZSAHcW8CQfpBVm8HAfBvc4YS6fVJ++ivY=;
 b=tMlhW6oBPMOwEWe/EGkHMnJSSGI2pEbsULhAsvfHXXOE4843C/9lfbMFlSX+DX2m5aijCX/hQoQvjU8jLhi1quphASdLcnX5jNZWXD1aIXxBgang/ifrnMx2HgnLOU0/4aKvJPcX6ueO0vj4RXu/sUT3cu/ZVCrTmgauQUZwlD3ZEtodo6BBSvBe35dhEzWSUrw3xO7swQCMSAa1crj7Ll5yD/+GLp+jQa2ZtC+M8jRGWYSybpIvPf6sp1qVfCFt3hJ5/66mi0Sy+x1ehK9hIPVrxc/mQQUdwqnLZjbH7wjTwPnBTikbfei/XrN8fNEAB042do0ojyAjJyEXXCr1pw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <2b1703d3-9f22-b54f-5161-884c5931e692@suse.com>
Date: Wed, 27 Sep 2023 17:29:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 5/8] domain: map/unmap GADDR based shared guest areas
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <140e906f-07c4-ae40-1d37-ae9966709289@suse.com>
 <ZRRB8ug8mNyvVsnK@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRRB8ug8mNyvVsnK@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0066.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:4b::17) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PAXPR04MB9219:EE_
X-MS-Office365-Filtering-Correlation-Id: b8082ada-fd3d-4040-40e1-08dbbf6e89cb
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+lpxn5QwPMCGINhilAh/siR6DfPNX59CI98ST0gcD15RMbNKtXSfG7KlLGjSoF30+ve7KTRSNHc+Rys2Sds+vmDgaz8jq4uiROnjTbXa6KIcGCyiBnznt/rG8mwZ5PyeIraF6K1+u/uxyaoEZcuWoxD8ZXmdbwkY+Tt91v6Yb0B8O3G8zCS9OP9Cx/vAjFiNmWzIgv3Js0WqsxYHTwbbBsHVF5HEiK8x5uE4qabhT6fLHCTRp13ZvqHqLuEuEm3AJPrSpFPswH6nWGcyqpxlHLgnKctfPm4z9fffKq9ChAckS/KpRH16ZIHXqP0u34SNrumlTzlYiytI5vNdhxOxuQZk38HdYubkOmWrnQ84ih2ZUNE+qH8j+grtIGElj5DhliqfnUvyaSv1JaJ73Lg6Jm+SN2TXEUPsBTorZrR4mvKnpSxm5eKpgj3chk/E5fxQHX2kSmgYjQTCBRgilMt0ALp7R+wARR174jnbeysVOGOZq0XCg0brMjx2Ll3oT1M818QyPQ/lrJwssh2x2DXFVc89EjcTA8uMsit6xTart+djcA2daEu0niJ0ydEFYen5vp86E10gCOttijpMqPVRLnLBlELTY3K7WPFE9lFmaqc/y1lGBGvaMsHYEQ+0d9evc4mh05MDzLe6hN/Cado1Jg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(39860400002)(346002)(136003)(396003)(230922051799003)(186009)(1800799009)(451199024)(6512007)(53546011)(6506007)(31696002)(86362001)(38100700002)(36756003)(6486002)(83380400001)(2616005)(26005)(2906002)(316002)(41300700001)(66476007)(54906003)(66946007)(6916009)(31686004)(4326008)(8936002)(478600001)(8676002)(5660300002)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MkRCdU43Ung3aitwVmg4emJvZjUvVDM4ZVBqaWJiMXkweldRQTRmOUJhclpv?=
 =?utf-8?B?alo1c2U2Uk5NSnkyUURFeUtqMG1GQkFvVm5XellUa2RydjljNW1QemlsZ1Rz?=
 =?utf-8?B?ajN4V0RKRWp0NlloTEI5RFo4Sm5Id2hIRDJNbkRUY1pmbFlsZkFTS2svZ2hi?=
 =?utf-8?B?R1dVempYUGsyYkpZSUlxL0N4QnNlV3hhNE4vR2FocDMyKzRBUGFPVzhObCtt?=
 =?utf-8?B?SGxHQVlYTTF5cFBvbHdxVzdrQmdPVjRiSHgvOEE0VmtCcXExTGZlRGZmbGpP?=
 =?utf-8?B?UGZhUHRNTVRqeHRlMXFUN2pBcU5QbG9uV0lWTG1NWTdTOS9NSkdZVVorM0t5?=
 =?utf-8?B?UThaUENNNUp5Q1VkK3dzekprTWVYeGQ3dVcvVFdOYktYN0wzZEhJaGJFeWJ6?=
 =?utf-8?B?aGFKRWh4anVZWWZRU2txaENFWTBtYnpTQ2hBTGwxM0UwNDFxZjFtTjhzd3I2?=
 =?utf-8?B?K3hURzJES3RublMyOThRMklML3I3Wk84cGRJUWw4a2JmMWZrUTRRYVBuOTl1?=
 =?utf-8?B?TjZQcHQ1cEcvR3lpUnJuTHlGaW9CT1VDYldxZ1UwTUcwRGJTb2t1UUJkcExv?=
 =?utf-8?B?S29wNWltSUh1NFZpSkQxZmxQcEVFbUVsMzJCbU9LV2ppSmNTNVJNbER0dHRW?=
 =?utf-8?B?RTYrTmUvbW50MU82TG53M1JZS0ZtdHFwemdaZ2VTTTZIOHk2MFVlUHNjTlBR?=
 =?utf-8?B?YmpGQTMyditKNjhKbWo5YjI1S0F5ZTZuaG9JV29KeEhJODZPUGdONzQwTlp1?=
 =?utf-8?B?VHZMUXZTTWJWRFlOUk1iUGRVQzZQaWVFdFU4bk0ycGIvY0FMSGJDNDA5QlNY?=
 =?utf-8?B?d21ja2NCdUxQdDY5UnB2UUxSb0o5ZGM2eUFQR3BGeVFoVmcwbVlMVGRSWTh4?=
 =?utf-8?B?WHg2dDlmWEgxcWxWOGtMZ2FtdnlpMkFOV0NCRSthRVVrVXlwNE5ETkhVMXNL?=
 =?utf-8?B?RC9hT0FNbCt6U1FWY3VxUFR2azFsc1YxVk90U2h6aXQzWnppSXl2SXZDejV4?=
 =?utf-8?B?R01vZVFOcXVUYWY2T1BRS3ozRWpBS1liWlpSQVJFdk0xblEzRnYxRUQ1RnpL?=
 =?utf-8?B?QjZ0a3I2bjFRNzc3YllZU2NzZ28wVDhvQ3Q2ekRYM0pHa1dackNCUURqNWVk?=
 =?utf-8?B?Ky9uZllpa0pKMTRSUCtWdHg5bVozeWN0NEVmQkNSSVM1UEhZc2ZHR3duMmd5?=
 =?utf-8?B?UCtqczBkTWwwSTFydUtQY01nTVBHeDlYSjQvenNsR2NhVGNwWW9FU3d2aTBV?=
 =?utf-8?B?NHUwOEs5THdQSndLU2YxZjJOUDRyQlIxeTBNVjZrMGQ4djlNL2orUXBxV1dn?=
 =?utf-8?B?Q1ViZ25iaUlWUnZhUHB0SG4xWmdmMnJJc055eEN0M1Fsd040RjJtQW1RQnFr?=
 =?utf-8?B?YXJHU2EyK0VUNGVLdG5HNmxxd0pVR05CeTlyRFFad3ovcFJlY3IwVzIyaGJB?=
 =?utf-8?B?cmE2SmVkS2FzSTZvOE1vcEZHOW1jWmVKQzZLOVcwZ3VEWml1RGx4MnhZYXQ3?=
 =?utf-8?B?MC9XN0Irdit2K3hnUDZLQTJxNUdzcys2YWszQmZMMXRsTFhDTFU1Um9zRTdk?=
 =?utf-8?B?dUFsVE5jRlFaTC9NNXk0L1lMY1VWOGJOOEY0Ly93RTFlckFjWkwxN1FHNFdr?=
 =?utf-8?B?Ylh5NUdTOUpPQUlxME5SRUE3WkJ5L1RPNHB5VUw0NnY1RWdHZXBpSHFFcktq?=
 =?utf-8?B?dXpqRDJra2s4b2pKTWZFdlZZRmVlSHVHY1lmakZRdWp6ZjZQTzdvUC9ZcFhv?=
 =?utf-8?B?eTlYYlEvVFVLcXRYR0VYdjB3UzJ5ZnpURldzcVNEMUM2QWRJaGVpdUk1ZWZV?=
 =?utf-8?B?TWhBTzZ2Sm9Lc1RINnFZb3lZYko4WnN0bi9vMElmblJyckVSazFJZ0x2WlFl?=
 =?utf-8?B?K3o3alozTit1TG42OWlpdTNCc3BFdmRObTJKTTFDeGVPY09Td3Z6d0FDWE9j?=
 =?utf-8?B?eVBjK2pLS3V0S2l5aFc1MEFqcnhMSzIyNGVadU9CVEYwVEJ2cGY2dDdIZnk3?=
 =?utf-8?B?UGtZWHJyMklsYWhrZE8vald2aW5aMjBFNHQxeVZ4VnIzWHM4S3crT3FJdmZo?=
 =?utf-8?B?VCtzcFc1aENHN3k5ZzlWOVcwSnBPUmhjVXplUXZWRWVqVExYWFZWR09uWWRp?=
 =?utf-8?Q?rnxR7VWZoV6wI4FOKuOUegY9F?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b8082ada-fd3d-4040-40e1-08dbbf6e89cb
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 15:29:28.3201
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JdkMw5I7T7rhGk+SQtLidZGnIvDLnEyPh+vh8UQYVxNNfNkNrX2QsjikxEf/ZetQDBa3jnBHQ+Ko5WZbD1TLhw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9219

On 27.09.2023 16:53, Roger Pau Monné wrote:
> On Wed, May 03, 2023 at 05:57:09PM +0200, Jan Beulich wrote:
>> RFC: In map_guest_area() I'm not checking the P2M type, instead - just
>>      like map_vcpu_info() - solely relying on the type ref acquisition.
>>      Checking for p2m_ram_rw alone would be wrong, as at least
>>      p2m_ram_logdirty ought to also be okay to use here (and in similar
>>      cases, e.g. in Argo's find_ring_mfn()). p2m_is_pageable() could be
>>      used here (like altp2m_vcpu_enable_ve() does) as well as in
>>      map_vcpu_info(), yet then again the P2M type is stale by the time
>>      it is being looked at anyway without the P2M lock held.
> 
> check_get_page_from_gfn() already does some type checks on the page.

But that's still of no help without holding the p2m lock for long enough.
Also the checks there all are to fail the call, whereas the remark above
talks about distinguishing when to permit and when to fail the request
here.

>> ---
>> v2: currd -> d, to cover mem-sharing's copy_guest_area(). Re-base over
>>     change(s) earlier in the series. Use ~0 as "unmap" request indicator.
>>
>> --- a/xen/common/domain.c
>> +++ b/xen/common/domain.c
>> @@ -1576,7 +1576,82 @@ int map_guest_area(struct vcpu *v, paddr
>>                     struct guest_area *area,
>>                     void (*populate)(void *dst, struct vcpu *v))
>>  {
>> -    return -EOPNOTSUPP;
>> +    struct domain *d = v->domain;
>> +    void *map = NULL;
>> +    struct page_info *pg = NULL;
>> +    int rc = 0;
> 
> Should you check/assert that size != 0?

Not really, no, the more that this is an internal interface, and we
don't (and shouldn't) check similar aspects elsewhere. There's just
a single use of the value (see below).

>> +    if ( ~gaddr )
> 
> I guess I will find in future patches, but why this special handling
> for ~0 address?

Future patches aren't very likely to make this explicit. The most
explicit indicator for now was the revision log entry for v2.

> Might be worth to add a comment here, or in the patch description.
> Otherwise I would expect that when passed a ~0 address the first check
> for page boundary crossing to fail.

I've added "/* Map (i.e. not just unmap)? */" on the same line.

>> +    {
>> +        unsigned long gfn = PFN_DOWN(gaddr);
>> +        unsigned int align;
>> +        p2m_type_t p2mt;
>> +
>> +        if ( gfn != PFN_DOWN(gaddr + size - 1) )
>> +            return -ENXIO;

This is the only use of size. If size is 0 and gaddr is on a page boundary,
the call will fail. For any other gaddr nothing bad will happen (afaict).

>> +#ifdef CONFIG_COMPAT
>> +        if ( has_32bit_shinfo(d) )
>> +            align = alignof(compat_ulong_t);
>> +        else
>> +#endif
>> +            align = alignof(xen_ulong_t);
>> +        if ( gaddr & (align - 1) )
> 
> IS_ALIGNED() might be clearer.

Can switch, sure.

>> +            return -ENXIO;
>> +
>> +        rc = check_get_page_from_gfn(d, _gfn(gfn), false, &p2mt, &pg);
>> +        if ( rc )
>> +            return rc;
>> +
>> +        if ( !get_page_type(pg, PGT_writable_page) )
>> +        {
>> +            put_page(pg);
>> +            return -EACCES;
>> +        }
>> +
>> +        map = __map_domain_page_global(pg);
>> +        if ( !map )
>> +        {
>> +            put_page_and_type(pg);
>> +            return -ENOMEM;
>> +        }
>> +        map += PAGE_OFFSET(gaddr);
>> +    }
>> +
>> +    if ( v != current )
>> +    {
>> +        if ( !spin_trylock(&d->hypercall_deadlock_mutex) )
>> +        {
>> +            rc = -ERESTART;
>> +            goto unmap;
>> +        }
>> +
>> +        vcpu_pause(v);
>> +
>> +        spin_unlock(&d->hypercall_deadlock_mutex);
>> +    }
>> +
>> +    domain_lock(d);
>> +
>> +    if ( map )
>> +        populate(map, v);
> 
> The call to map_guest_area() in copy_guest_area() does pass NULL as
> the populate parameter, hence this will crash?
> 
> Should you either assert that populate != NULL or change the if
> condition to be map && populate?

Oh, yes - the latter.

>> @@ -1587,9 +1662,24 @@ int map_guest_area(struct vcpu *v, paddr
>>  void unmap_guest_area(struct vcpu *v, struct guest_area *area)
>>  {
>>      struct domain *d = v->domain;
>> +    void *map;
>> +    struct page_info *pg;
>>  
>>      if ( v != current )
>>          ASSERT(atomic_read(&v->pause_count) | atomic_read(&d->pause_count));
>> +
>> +    domain_lock(d);
>> +    map = area->map;
>> +    area->map = NULL;
>> +    pg = area->pg;
>> +    area->pg = NULL;
> 
> FWIW you could also use SWAP() here by initializing both map and pg to
> NULL (I know it uses one extra local variable).

When truly exchanging two values (like further up), I'm fine with using
SWAP() (and as you saw I do use it), but here I think it would be more
heavy than wanted/needed.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 15:36:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 15:36:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609114.947987 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWad-0001dY-0h; Wed, 27 Sep 2023 15:36:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609114.947987; Wed, 27 Sep 2023 15:36:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWac-0001dR-UC; Wed, 27 Sep 2023 15:36:38 +0000
Received: by outflank-mailman (input) for mailman id 609114;
 Wed, 27 Sep 2023 15:36:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlWab-0001dL-0q
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 15:36:37 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a3ca808c-5d4b-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 17:36:34 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by PA4PR04MB7759.eurprd04.prod.outlook.com (2603:10a6:102:c6::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 15:36:33 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 15:36:33 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a3ca808c-5d4b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Iln8dcra1KkEXb98bsB/MlwBIv+tX95c/deYzHQB04h/wXOm3+slwhxe5aMFdnRZFcso/itanwIsSpHD7fqDp1dgHjmbDMYD+M+uOAN35noYmZRUnNM1WuViok0K3xAJGoqk+ssePGSrfkpj80VDrSfj8ESlyd4bTH5TVZ7wiulq2xNHvWOge4t7k0x1y+XWrxWGct3abDUBZcrz3jVtBEuOTitSjV7F5nSK7Ra7E1qMxIYWugcXJVMM8QdejPbu9QvtCTDUV32iq1RhcAQUhhgXCG29HLIpohujrKYyteqhKWMRSLh9u4UL1qPqmEtiD/GSftCY4V1f1A/8F+lQAA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GDlIW4+9R8qB2gIkr00WQPjqJi8hTClh1ZuYhgzVzAU=;
 b=VHRcuixFYUI52vUG9ffs4XPtvmNd791gBgHG5Y0oh/DslUEtTZMvrzmMggQ3kbu1YHGnNj/rI7TSkhSw9KYf6c4q6IHoppwmQWXM6eGFaH69dp5DBxLopx4itnYcPROQapEyp9rLMLBszHFdI+alOYyS7Z+MUMcANA7qkcqde+RzSswDO5gMJwhj9mA/fG3+40BGf+Cdplo5WtEAoJxeReyi0zKR/Hr5f9ILRrmXTYRQr9Hss/wfndUD0U+XZAcbWA1yo6Ayf4BiC1JQlq3HsNUFLWiHDPcx9aCpHS8/Mt/+vzZvjoHja4PuEFfi0h+bLyrEbsyJ04nkCZZpio5H0g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GDlIW4+9R8qB2gIkr00WQPjqJi8hTClh1ZuYhgzVzAU=;
 b=fC7szqXQCvyLaMsIl0qgg66k2cTmruRDdKZ4a1xguGSNn/HUk42M6p4uhUlkrCLdbqc9tqtwAv+xOmuvuhEqzGZyaeCIZpnBh6AYqBaXtavMWnLVxIOovRn8VWmf+DfJ+dJk5evygE8jHHQr6wMsvpP5efDUqtwP74Ybkx7QBJa+cgdvnksAoSxrmpLIkPUSIOSvHLg0ZsiPqeN1D8l2X+OZzY8+SmFOem5h610Uzg2eroC/Scz8w6ZuZDuhNFrPVRppFcmMRqPPMEJqnaB5w3wEMMk3pR60PhNSG2j2lgNZCFMKvJDANzZJc4HeuLCS+YwPExfwToHgO0fSba/mVw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <ac87fd15-838f-e292-ba5b-9818ed4745c4@suse.com>
Date: Wed, 27 Sep 2023 17:36:30 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 6/8] domain: introduce GADDR based runstate area
 registration alternative
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <bb902943-c139-ec6c-66f9-284ceff3995d@suse.com>
 <ZRRJNw-B5iT_TGJo@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRRJNw-B5iT_TGJo@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0099.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cb::17) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PA4PR04MB7759:EE_
X-MS-Office365-Filtering-Correlation-Id: e72be2bc-285c-4b1a-cd86-08dbbf6f86ef
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	YlPngFh0vXIU4DJyvm2/SRmMDg4XT0LhoPjUR3ZH2UcGY+ETgmaczqcBwYHXRE+2lZl4FFbEXX6QhDy7KQ/C6sd7WzpWxssw31nY6Kwn0PkJKOBINcqPFnn39hhUw2Xi1OCZ2sb0lO/dbCBE95bWM7iA5nSuf76jAX+iGiZSX6XE+WqQ0vW5CYukHchAvUnxAATCGmVqX/Jtv1OSdedDGsgBJfkTsX9thQkpV8JKFO2Vse7t/3DFg2QBwnOQgV/fNTK4f9idcxdFaHJJP/GQs7T9AIcI2Vhx7OuuPhGUWwXUR3KEZegKffvebv20m1sQxbjA2NdPuWGQ4RNHap6eouvh90jFt1MO20kbfbS6ElLHFItGNM1Ko/8/2rs4NvJSwWL+fkHbEBdiwm3BDdrVXj/wn6M+CAoYhQ6NZyhLkvNz/qRPDiLV03glPNMTKQEwnsuFt9+QrDxp6sMROSJrRvIUw31Hwzc+5rrZl72H7R88FN+N/dPEDglUaKyuBVh5EMcgeMybxO+FANOkA2nY1LtYe/0tI124JOiuHVy032e92ytv/Fzcy+3xOsiUtrN4dwxrpZGpu88RR5t1npfkYMJi2WPIws0fqd4rFVigZWqSspbwQTgDkzkTzQIHWDojT6OR176Snq3rNxVlfjQ8FA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(376002)(346002)(366004)(396003)(230922051799003)(186009)(1800799009)(451199024)(6512007)(6506007)(53546011)(6486002)(86362001)(83380400001)(31696002)(38100700002)(36756003)(2616005)(26005)(2906002)(4326008)(8676002)(8936002)(31686004)(41300700001)(66946007)(54906003)(66556008)(5660300002)(6916009)(316002)(66476007)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZnBXUVRoVkNHTGRFKzJRREVKSkZodlEzUXVFVSswTHZmYjd6VHBJQkltR0VU?=
 =?utf-8?B?aVRhRDIxeGlwaEVKS0RTd1JrM0xsN2pPNEhHKzdIMFYvdGNVb0VXMDJqSldk?=
 =?utf-8?B?U1B1YnJTb2JlNnlVZmUzemo0SjVDSXk0ZEsxS2gybXl0K2ZsRDlBbG5NUlg0?=
 =?utf-8?B?VEs3c2tDSjE3bnZQcEt6SWRjaDZLcm1HVGhRd2NCbDIrT3dlaGRVU3ZaMzl2?=
 =?utf-8?B?aWhHaTBTV3FuRkhFcU5uTHBvTk9wWVgrY3BYRHprKzNiejZCMDcyVThFMExO?=
 =?utf-8?B?cDZzeVF5TWdOeXZwK2dBUk5IRWdRY2FXcDhORkZhd0QxUk1oT0ZRSmhlc3JR?=
 =?utf-8?B?RUJkSlRKODdaVEd5Q0EyQ2lUdmp5Q0N1TGxNekhJR0FTR3NWY29QMjdqdVVT?=
 =?utf-8?B?SXhBS3BNZVR2bU1aU0hpeFZzSHBzNVNpa2FsRjFnc28wOFN2MHJMMit6cVNx?=
 =?utf-8?B?dGZsWUhZdFpEL2JNT0NOaStUaUlKRmtickYyajNJVDRPQndoQiswZDFjYnZu?=
 =?utf-8?B?L1YxWU1xRmlKYXVpbkdISXAzZHBBZ0FXSlJVaytvUkxIRzBGUGxucnJIVUdO?=
 =?utf-8?B?Y3o1ZUhuWFhTYU12Tm5OaExVYWpEK0F1STY1VEozTFpRWUNtdTllZzh5c05P?=
 =?utf-8?B?TmVaZWkxQmNjaGt5TVdNQlpTdE1jd0kwMzBUZm9YSUtIODVYMTlVbS9ZTVE1?=
 =?utf-8?B?YWhWYVJyY2tXTnB4eVYzQ1RSTUc0N2NaL3d6Zk1zbkpLOVg0ZHF3TDZYc1ov?=
 =?utf-8?B?QlcrV2FCS3RIVE53QmtDbDF2OTU1MHQwdE9pZzJUaGJGdDNmNG5MQUkzcFdl?=
 =?utf-8?B?NnUremNmSGNKUWhvYU9zWDBkNTRDM203N0JmaHU1QThIS0pkc2V2QlFHVEtw?=
 =?utf-8?B?RDk4MG5xSXllckZvblA1cExSSTI4eFB0dUdQRjJDVDBhYXZvTVZFNHVLWmhX?=
 =?utf-8?B?NUkzQjMzZnJrR1dZbmxSNGllMStGQm1FWmdhQ1BaQXVCbU9MWlAvN1BURWFy?=
 =?utf-8?B?VkZKbFJkeGhIdTZkVDBlb3BsdnB6dDBPV2lVaXRrN3o0SmtwaU9LZWJUK2sy?=
 =?utf-8?B?SC8yQlpub3JyODlQUk05Z25ZclRPWlZWNWR2L2ZyVlhuK0ppVHJFaDN3cThR?=
 =?utf-8?B?a0ptbGdJRkpwTlF5T3k2S0hteFVNUzJoakVvb0w3SVVadWpYSllPQ01NUG5T?=
 =?utf-8?B?MnJWOVlVaDd0OFFacWZGYytnRHVydW5SNHVmZW1zSktMY2ZGWlA0Y3ZNNkN4?=
 =?utf-8?B?eWVYNmpSbytmL3A2L2srZlpuZ1EySnFZeVBCSE1TTlZMNEM5czVNRnpHa0JO?=
 =?utf-8?B?RWhPZktQbjdBNVlYNFdCa0pyR01CWkVvOEh4SGliejJaUWFMM1FHMzB5T25G?=
 =?utf-8?B?YzdyZ0ViS2NqT2JpWWd2Um5sQmVRbklxSXFmcW5PY2MreCtZRWhWdzI5R0h5?=
 =?utf-8?B?UUJ2eG1kZW1oVTFJZEdJVmVLZXZOVHh4b080QVZVbjg1aStFbVo4UEUrQW1t?=
 =?utf-8?B?RGtCUnZWVU1abHdneGJIam9OaUVqTmRwRnZ5cWRaYmx6QkUrcDBja0tYVDh5?=
 =?utf-8?B?YmZDQjc1MmRDeGttWVlnL2ZaZkdsWDR2UXJpMHBudGt3VmJySWtiQVZuNnFw?=
 =?utf-8?B?aVNJNFc2QUI3d0VPQWFCRWxiVklDdnRnWDBySWdieDg4UUpVK1pzRzlmYkVr?=
 =?utf-8?B?NVhCdkV3dzV4T0RvaWh6UFQ4eDlJczhEemNKSnI5bkhBTkZURTFVdzBOQzNZ?=
 =?utf-8?B?aGhXOCt5bkFWcGF5NkNVcVZoaFc5RldDbFJSRnNkeXlTZWViNjlxQXp3VTF1?=
 =?utf-8?B?eGdYUTZ3Y0RQcWhjT1VhbTgyQldvb2V0cUR0bDZxQy9mdUhhMWVsZ0RobEN0?=
 =?utf-8?B?QW1md0Q1clJsc2lKVHVCYm9xVE5MSFc1VURQQisrbzNkMlVVRmIvV2dXaXN5?=
 =?utf-8?B?MGN1TWI5TmJ1dVJVVnpYT2tOVDRVUHY2QmFDdUdLbkpWL2UzYTJZVVZPS0VG?=
 =?utf-8?B?aEo3L2lWc2twbVd0SzgxRnpjMW1XcFNzU3JybGVUc2R5amdrOWp5MTZ2NFoy?=
 =?utf-8?B?Ym9odWtrMGYrNzlzbWFoRzJoMERxUnpCRE5mV0ttRlRqcTFXMndlbkVsUTBv?=
 =?utf-8?Q?RHfe8xNCQ/2J/qupIgjveyEEb?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e72be2bc-285c-4b1a-cd86-08dbbf6f86ef
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 15:36:33.0220
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: zRnk5YHKw9R2W6I7VU3HlcZSloAGMwQT9J02h3wqn/Ii468P85+GojPZ/NUCmCD60q2B3HExcNVOm6ldLL+z2Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB7759

On 27.09.2023 17:24, Roger Pau Monné wrote:
> On Wed, May 03, 2023 at 05:57:40PM +0200, Jan Beulich wrote:
>> The registration by virtual/linear address has downsides: At least on
>> x86 the access is expensive for HVM/PVH domains. Furthermore for 64-bit
>> PV domains the area is inaccessible (and hence cannot be updated by Xen)
>> when in guest-user mode.
>>
>> Introduce a new vCPU operation allowing to register the runstate area by
>> guest-physical address.
>>
>> An at least theoretical downside to using physically registered areas is
>> that PV then won't see dirty (and perhaps also accessed) bits set in its
>> respective page table entries.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

> One comment below.
> 
>> --- a/xen/include/public/vcpu.h
>> +++ b/xen/include/public/vcpu.h
>> @@ -221,6 +221,19 @@ struct vcpu_register_time_memory_area {
>>  typedef struct vcpu_register_time_memory_area vcpu_register_time_memory_area_t;
>>  DEFINE_XEN_GUEST_HANDLE(vcpu_register_time_memory_area_t);
>>  
>> +/*
>> + * Like the respective VCPUOP_register_*_memory_area, just using the "addr.p"
>> + * field of the supplied struct as a guest physical address (i.e. in GFN space).
>> + * The respective area may not cross a page boundary.  Pass ~0 to unregister an
>> + * area.  Note that as long as an area is registered by physical address, the
>> + * linear address based area will not be serviced (updated) by the hypervisor.
>> + *
>> + * Note that the area registered via VCPUOP_register_runstate_memory_area will
>> + * be updated in the same manner as the one registered via virtual address PLUS
>> + * VMASST_TYPE_runstate_update_flag engaged by the domain.
>> + */
>> +#define VCPUOP_register_runstate_phys_area      14
> 
> Just to make it more obvious, it might be nice to add a note in the
> comment on VCPUOP_register_runstate_memory_area that `p` can also be
> used with the `VCPUOP_register_runstate_phys_area` hypercall.

I can add a reference there (and then in the later patch also for the
time area), but I don't think it wants or needs to emphasize p. It
merely needs to point to the alternative sub-function imo.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 15:50:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 15:50:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609120.947998 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWnx-0005JK-A5; Wed, 27 Sep 2023 15:50:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609120.947998; Wed, 27 Sep 2023 15:50:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWnx-0005JD-5G; Wed, 27 Sep 2023 15:50:25 +0000
Received: by outflank-mailman (input) for mailman id 609120;
 Wed, 27 Sep 2023 15:50:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=WUTS=FL=citrix.com=prvs=6275c33bf=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlWnv-0005J7-WA
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 15:50:24 +0000
Received: from esa5.hc3370-68.iphmx.com (esa5.hc3370-68.iphmx.com
 [216.71.155.168]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8fbc16fb-5d4d-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 17:50:21 +0200 (CEST)
Received: from mail-dm6nam10lp2104.outbound.protection.outlook.com (HELO
 NAM10-DM6-obe.outbound.protection.outlook.com) ([104.47.58.104])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 27 Sep 2023 11:50:16 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA1PR03MB7100.namprd03.prod.outlook.com (2603:10b6:806:339::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Wed, 27 Sep
 2023 15:50:14 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Wed, 27 Sep 2023
 15:50:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8fbc16fb-5d4d-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695829821;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=fV+MInmBq14dFu7Vk/0gtK2ki3voS5XwxPRyqWRvQZU=;
  b=EkTAtUvSl/tS9yoq7TLEuXW/35hdTQ7m3dj3Gu8J5yZFTH8ROCyoAX4+
   3duKZyr6lzKX7Ws73hCpnU9PGAB+dT37TXXQub4BhaagpRee9qJ2peff3
   1cdd2m8ZNA/M1EaSwRVTY9SLaDGzxx+RZv/WcMvI2fxgdBfrRkmmObgnV
   w=;
X-CSE-ConnectionGUID: f3pPAYbpSpeEJg4EKtcDfQ==
X-CSE-MsgGUID: 7AOsZNadSnmGfxM70SbTjw==
X-IronPort-RemoteIP: 104.47.58.104
X-IronPort-MID: 122605272
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:vUj/CKBbMGrAMBVW/+Diw5YqxClBgxIJ4kV8jS/XYbTApD1w0j0Oz
 mpODzuDMvreYmKnLYh+a9i2/EoOv5TVzdNhQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4GJC4QRkDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw9L1vOUh//
 +QjMD0gTB/fqsGqy561c7w57igjBJGD0II3nFhFlGmcIdN4BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI9exuuzS7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqCjy3rKVwnmTtIQ6S5Sf7cxMiVGowGk8Bg0zCgOAq8W7lRvrMz5YA
 wlOksY0loAw/kG2Stj2XzWjvWWJ+BUbXrJ4A+A8rQ2A1KfQywKYHXQfCC5MbsQ8s807TiBs0
 UWG9/vrGDhuvbu9WX+bsLCOoluaIjMJJGUPYSsFSwot4NT5pow3yBXVQb5LD6qdntDzXzbqz
 Fi3QDMWgrwSiYsH0vu99FWe2za0/MGREkgy+xndWX+j4kVhfom5aoe06F/dq/FdMIKeSVrHt
 38B8ySD0N0z4Vi2vHTlaI0w8HuBvqft3OH06bK3I6Qcyg==
IronPort-HdrOrdr: A9a23:N8lUc6x02eY582f561gvKrPwBr1zdoMgy1knxilNoEpuA6qlfq
 eV7ZcmPH7P6Ar5N0tKpTntAsO9qBDnlKKdg7N/AV74ZniDhILAFugL0WKF+VDd8kbFmNK1u5
 0NT0DQYueAdGSTIazBkWuF+3dL+qjjzImpgf7Z1GpkSgtnApsQiDtENg==
X-Talos-CUID: =?us-ascii?q?9a23=3AqqAKtWscyceD1ZiVXGC22dls6IsrKWXl5UbaO3S?=
 =?us-ascii?q?gBEtLR+G4akOb1K1dxp8=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3AWeiSNw/QjKHQrKFKxOdkfxyQf5hBxL+cLkkBqpM?=
 =?us-ascii?q?DlMeUEHMoAD2hjiviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,181,1694750400"; 
   d="scan'208";a="122605272"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HZTD3/xl2ilR5uY44BglVkoNEKB05RVeWc8LMQdD00KMDUGGJdbWN8YJBVdoJ7MnP9zyPUAtfhpUVQt9W8PXMcrGPUb44YE7M+AX1F+HmDxCj4KjVFWeMMDCKJ2vsDGyCTvOv87D5P1ZER3rtOj41/rv1BWoNua+bqxLVz63BAyqMfcwOC0ky/qn08rBVfYt8NypnGRWvGPYO72tyvTKmjPQUIWMdYNzzEGAYYv/Cqf8WQ0v/S9Yd9ISNqjmOg6o3bpyXFambPwa+8isFnRX6bm4XxYeIkINFB36fsCv2w5Df2LyVObKApPEk461StMVthEzvrcyAkCamaTXTzZ98Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=L8Kca20AOx2EYnmCaABKEpvuuzEnsR8PeDWsogRdxnY=;
 b=e1KVs/YmMc7tfnCb7K+iNOUr27MbDIcrKRbAJNHb+sxjN1MU3UZ83qzSPjz+nQgS931yxJWKidceP/xZGd/SBHzwBLsoqoI9rc0bc5dTgqYQ/SKBnXQRq7C93jdn9p4EYQQB7OaZj1d0rFiaswFnKVXiVuGjzjlT29GaWWPP7kGM2d15Gyw4oAHMaHVZ4wFTg6gh1nyR2ZZ8WHNr/9JQY2nny2EDpi5HtiLx3dLVeyA1WkPf89S+USeQbGjDXQa0lzb4cpgzeIzqGJt5299KvcJcKoYnV7tyrv7f1LPwhTIz/25VkgGBokEuytOUmXvypL3MrHOiyP5pY4YoVwsE3A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=L8Kca20AOx2EYnmCaABKEpvuuzEnsR8PeDWsogRdxnY=;
 b=fBzyH7UR6l7hJO89bXBS4VVKb5W7ixQ46RFQuJpGzeEVQErI2TwB2uSDhdr29/RsrdmZRy6QJP/3OfYEpvUxxq/+0On2KiFCVF99YfDb6OWaViLr5rz6hO6HAa4kuwVfUCHfoibyWhBNBiNOOQJFeSLiTZV0Ds0W9wO1UglXzeY=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Wed, 27 Sep 2023 17:50:08 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v3 7/8] x86: introduce GADDR based secondary time area
 registration alternative
Message-ID: <ZRRPMAxlpB03_GMJ@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <77218fb0-5e96-4ecb-c2b0-4fe8c3ba683f@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <77218fb0-5e96-4ecb-c2b0-4fe8c3ba683f@suse.com>
X-ClientProxiedBy: LO4P123CA0625.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:294::23) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA1PR03MB7100:EE_
X-MS-Office365-Filtering-Correlation-Id: 6deb59d9-fccf-4e2f-1481-08dbbf71702c
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/HjZ+9KsBq5i8YYeiKMH6SXI5hDnbbnTyzmQr743xiBuo78++iXohusqgi1e8Yr89a4gjQkC97tOPxD/CFMBZ+CBtBcRw5XS+Q+u7BmvSzcbIo3oDn8c0P0hpgermvhH7etjY9+6Jbr6OeUf3FZbX9bDVuPg47kS9CHzJxPifsfJHyYO95lO88nzbsHWSHRA8mmWvtyItMBbJ4z1LcTvhgDAh3locIZ74fSrM7XQ7O5MKqsJaFxjlUadB+bJp52uY9XWgRPUwt11W9jZ6XTLyFrTDWFKwHMvFOtGPw5TtjFKuO8pJk0LbXKVQKFQMxsDreuWP1ALcw1XlOP/OP35F8bD54Iq7z11/kpJdNylNco63pcTtZGaA9KTlVgoL3QwuA1NEpkODtZ1E1Wo6w6eIFvWX5egoZnXuVJ0VV8UH4WV3VKY++MvojSaI2qRM1/PsiXUCJBnPLjZNMMefAsB136Jcoe6O2rTI8Kt0NfIkMP/6GWplmHNSeENq5/UJWvOEf4+gQuDIlRR3FehDpfmmYnPO3WkMjsXPY1P3/zjenk27XvwJcPkWDwI07cdcwGC
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(396003)(366004)(136003)(346002)(376002)(39860400002)(230922051799003)(1800799009)(451199024)(186009)(66556008)(54906003)(6916009)(82960400001)(66476007)(86362001)(316002)(2906002)(38100700002)(85182001)(66946007)(41300700001)(5660300002)(478600001)(6666004)(33716001)(8936002)(6486002)(6512007)(9686003)(4326008)(83380400001)(6506007)(26005)(8676002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NXEyaE5lTGhKWjI4SjBKa1dENWlTVnhOeEFPbUVQRFlrQ0JGTXpMU1Byb0Z0?=
 =?utf-8?B?UmdiU0JSdzJGcVY4OGhKTDNRSldTdXdsRm5MNktqUjVaSUp5aFRWcVVRVHo1?=
 =?utf-8?B?YU9yd3Q2TjBHbkJ1WGlmYXQxNGhYdjRRQnNaREJuOXB1OEUrc1gxazR4ZThz?=
 =?utf-8?B?bXdObExnblVIRnNTRExwWkR2akVUVHl2ay9GZFZhaTBZWmxGYnNMZGxibHRU?=
 =?utf-8?B?UUE1UFJCajE2VEIwL1JRa29RcXg3amdoazl5RE9xSkovbHNIcHBIYkRHN0Vy?=
 =?utf-8?B?NzlwT0hkbjMzVWNtQU5sczNRTmdYZ3F5c1RUVmtNSzlXNjROWG9IY3owS2hK?=
 =?utf-8?B?bGdmSUJPVlByc09ieTVabEp4QVhCK1NRVVBvRUF6MU81Q0NYb2NSQXJEcWhL?=
 =?utf-8?B?bS85NS92empsYU1salZUZEUxNEFESDRxKzBTbXVXWVI1T3paRVFmdlg5dnRy?=
 =?utf-8?B?bXltZVp2STlwMVhLam9HQVJoU1ZLNktTZTUxa2pOeXp5Z084M3Y4ZTlTYUxZ?=
 =?utf-8?B?MU14L0E1SENibGpIVjRmTWpMWGd4T2dGZmdVMy9UVXVVa3FaaE5abVFRR2Fq?=
 =?utf-8?B?TnNIOXVYUUVCRmpiSEtOaXJ4d3V5L1NDOW9zTkVNYTJXOXQ4SHk2RGlCUUhk?=
 =?utf-8?B?RUVIbEJ4NTRUQS93QUxGbDk3b0FkVVhFcGcyK3czQzZ6aU5hY1Q4RVBaUk8r?=
 =?utf-8?B?c0JpZjJya084RlpMU1R6aDU5NS95dWdCVFVXMGpNY2FJNlk3UUZGRHlNdy9X?=
 =?utf-8?B?YXhDN1AwSlRwNktOcjBLOTJWYmxKc3N1d09wSnpkRUVHWHkzUm1XK2d5K05C?=
 =?utf-8?B?bldTWnRaenBhekN1OTdpN01qbDNDTUttUnJrdEx4YmZwVjBoZy9ZVW1oWHlX?=
 =?utf-8?B?V1lnQ1lTdGQ5ZEVZWnFZaXF6V1d5Qm5kLzYrUUkyTXJXb0FrV1JBQ2hIbTVz?=
 =?utf-8?B?cnJTaXJ6U2VRbU1ESEthR1Q1QmdjL09pNFhqRVUvSVE3aVRDajhuUHJNWEFr?=
 =?utf-8?B?RHhMZlJBOXlRcW9EelFHSzF5RmJVQ2NVbFpnbGNXQ0k4aXAzV2RKVE1oaktW?=
 =?utf-8?B?Wk9rNHZFZmRCTG5uYm5GVzlHcEI1N0hEL3AvNUJ2aEZtcUhZRFJFTjJhVG9z?=
 =?utf-8?B?SmFwQTFlV0ZnSTV2cjg5V2lmZGhSZDRqcDIybG9kVEsyYUdQNVlwR0ozRVNn?=
 =?utf-8?B?bHJmaFFrcUhJMkVHR25GdGZ6dGJPY2dUdWJlc1BzR3RTVjU2VmNZTTJHSUNs?=
 =?utf-8?B?WUlPR0VmMUNIWERqS040cjBLMjBzOTR0MkxGWWRTOGQwU2NVRHNSR3pDblJW?=
 =?utf-8?B?K2pJdEw5THNlRHFvbHEyVXhVbGNRWmNqZ0NhTUtvWEc3RUY0RjFlVDMwZmhL?=
 =?utf-8?B?TkFxY3pXTzJaVlJFdHNyYVhrbjJTZnRyLzMyeDdNM2UwV1BQNmY4c3hMMGFY?=
 =?utf-8?B?TDBYWmc3UFdoRzR1Vy9haDVJQ0JDOFBza09aZXd5aXM4STdKTENUWXBxVXNZ?=
 =?utf-8?B?QmVSNzROVjM4Z25DRVBJSkc1Uk5KL0ZnMjNTMnZINXJsb3hUTk4raEo4MUJy?=
 =?utf-8?B?QU42cXJDSDdzR0ZGck42T2R0MlpEcGxlTmxYOVF1enpIdnVIaTJBTENVMkIv?=
 =?utf-8?B?ZER1TE9ua3g1dmhPaS9ZTllyekRrYWNjRUsvcjdhYU9FdERYT05PanA2RjNr?=
 =?utf-8?B?OSt5b1JHTGtEZXM2aWY0V0JPOFRqMUYrSkR5YW44N3dUcDlqZTFnRFVDYkgv?=
 =?utf-8?B?M0V6YVVhb1NyS0szK3A4bnlSYTRHVVpTcXhjQUdYYkVHS29LNW94d3FZM28z?=
 =?utf-8?B?WnE2MlFQUDZzYWRHSGVjaVUwTlJ1V2lvL0IyeTFwY2hjNVlqM1NYREZKV3BD?=
 =?utf-8?B?TEJCM0U0MTlvUUhDWERKZ1pKYjlLbkNrN1NpVDhWdlJKbVNYWTVCL2R3OWpH?=
 =?utf-8?B?Z3ZHbVBJWDdZbTlyWWRRTDEwcGFuMTJjN0FGK3RxVTk2cEpzaEp4RjR2QXFM?=
 =?utf-8?B?d1NvVFZpYTJLUHNFZU81aW9oclZWa0Y1NVhTUllxQWYyVXYrMFVZVTZOTDhU?=
 =?utf-8?B?Nkl6SUhIT01MUlA4SlY2OEsvc2dDU0FISjAzd2dabWhQT1lxZmdKV0tyOUpT?=
 =?utf-8?B?Q2pldzcyTEJBRU42K0xmUjI2UytxWllaVCtkZit2SGpaSUhYcHh3WVZpUFFS?=
 =?utf-8?B?c1E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	3QKa8f7QGFxQf/3jTGAeB6Rq2vtJ7u5tsGbdVx9bL/ey0gi5vCGzlodAwPuXWUjh139zQCqGCeWpWf6CZsSNF82Mk7ilaF7L7fO1Rb1wITUfRt2X/Vyxw6D+mZDXnog5+m0UwbggRIwVhedrqSYUkFtY9QNuFP2qqOhLe18zqxdrhgKQ43+ubG2y7bnIeaQ9YizxsWtudGohQqW96SuPLvyPKlq1ZvYENCrKc6ko0k3olKdaqc8PmmpU58jK2XHHwaSGtjUlO7Wx0+AlmsqBH2/yMX3msW0inQkIqzTmBKS2tVZWl4XKfUJVcy5wZ4FxDfdmu1qUNhp9wNVUaT/Tq0Yy/XMDVeWM+5xqSx/l2oNkUyM66TaZnG+8wvZSbgL77O4LUUUgmxuau+pBbP34DkOCXWfjTAXKb1SLFUrxin836zpw9fS2KUoESsaLw//eE0SvuVFE+AHWjoyJU0UUHiNT6Fj9KTIiE7MkDwlziG9kaUDxC+b7RNfvjFQpjWMXy5r6xFqeLVSrurPBmhhPoOmGtLs62q8dt9S+DJGpLOxQ93eFBn6XqqQU+nVnkNznxzqMbDNgfTVe+4KX9vIinuHNMe1djUz6fNajDE7R51SEvCx3ut038zNDw302FuxjFNIk5JLPYdZx8rMIIoO58hmVD9aIne4T7J6/mLOBMfx2E9EGL6Ia2iXnjOp63o81Q67G80fCGWy/R0b/Pq5SLFGlRz2tIRLYX3M99cjjdht8SFMsiDtdVEegRkvM+duR+hnce9whanuDJdVnJgm4oDiKU+c6CHpCNVao35uq4HhwfzxEp8PkD6OyvA2v2uZMkz+7YjGvkFRN2ulxhIZlBvFHyH2nna6Xss8BZ1tTPGk=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6deb59d9-fccf-4e2f-1481-08dbbf71702c
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 15:50:14.0130
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: jzlbqxRqfrH0bOqYOIdlV6DDWYPhyrJygawJDa+fQN3nkAWLFzjgO6qRGhDSWneAxQ0r4bQmKWxNp4ouHmMC+A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR03MB7100

On Wed, May 03, 2023 at 05:58:01PM +0200, Jan Beulich wrote:
> The registration by virtual/linear address has downsides: The access is
> expensive for HVM/PVH domains. Furthermore for 64-bit PV domains the area
> is inaccessible (and hence cannot be updated by Xen) when in guest-user
> mode.
> 
> Introduce a new vCPU operation allowing to register the secondary time
> area by guest-physical address.
> 
> An at least theoretical downside to using physically registered areas is
> that PV then won't see dirty (and perhaps also accessed) bits set in its
> respective page table entries.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

> ---
> v3: Re-base.
> v2: Forge version in force_update_secondary_system_time().
> 
> --- a/xen/arch/x86/domain.c
> +++ b/xen/arch/x86/domain.c
> @@ -1504,6 +1504,15 @@ int arch_vcpu_reset(struct vcpu *v)
>      return 0;
>  }
>  
> +static void cf_check
> +time_area_populate(void *map, struct vcpu *v)
> +{
> +    if ( is_pv_vcpu(v) )
> +        v->arch.pv.pending_system_time.version = 0;
> +
> +    force_update_secondary_system_time(v, map);
> +}
> +
>  long do_vcpu_op(int cmd, unsigned int vcpuid, XEN_GUEST_HANDLE_PARAM(void) arg)
>  {
>      long rc = 0;
> @@ -1541,6 +1550,25 @@ long do_vcpu_op(int cmd, unsigned int vc
>  
>          break;
>      }
> +
> +    case VCPUOP_register_vcpu_time_phys_area:
> +    {
> +        struct vcpu_register_time_memory_area area;
> +
> +        rc = -EFAULT;
> +        if ( copy_from_guest(&area.addr.p, arg, 1) )
> +            break;
> +
> +        rc = map_guest_area(v, area.addr.p,
> +                            sizeof(vcpu_time_info_t),
> +                            &v->arch.time_guest_area,
> +                            time_area_populate);
> +        if ( rc == -ERESTART )
> +            rc = hypercall_create_continuation(__HYPERVISOR_vcpu_op, "iih",
> +                                               cmd, vcpuid, arg);
> +
> +        break;
> +    }
>  
>      case VCPUOP_get_physid:
>      {
> --- a/xen/arch/x86/include/asm/domain.h
> +++ b/xen/arch/x86/include/asm/domain.h
> @@ -692,6 +692,8 @@ void domain_cpu_policy_changed(struct do
>  
>  bool update_secondary_system_time(struct vcpu *,
>                                    struct vcpu_time_info *);
> +void force_update_secondary_system_time(struct vcpu *,
> +                                        struct vcpu_time_info *);
>  
>  void vcpu_show_registers(const struct vcpu *);
>  
> --- a/xen/arch/x86/time.c
> +++ b/xen/arch/x86/time.c
> @@ -1633,6 +1633,16 @@ void force_update_vcpu_system_time(struc
>      __update_vcpu_system_time(v, 1);
>  }
>  
> +void force_update_secondary_system_time(struct vcpu *v,
> +                                        struct vcpu_time_info *map)
> +{
> +    struct vcpu_time_info u;
> +
> +    collect_time_info(v, &u);
> +    u.version = -1; /* Compensate for version_update_end(). */

Hm, we do not seem to compensate in
VCPUOP_register_vcpu_time_memory_area, what's more, in that case the
initial version is picked from the contents of the guest address.
Hopefully the guest will have zeroed the memory.

FWIW, I would be fine with leaving this at 0, so the first version
guest sees is 1.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 15:58:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 15:58:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609125.948008 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWw0-00076G-2h; Wed, 27 Sep 2023 15:58:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609125.948008; Wed, 27 Sep 2023 15:58:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlWvz-000769-Vr; Wed, 27 Sep 2023 15:58:43 +0000
Received: by outflank-mailman (input) for mailman id 609125;
 Wed, 27 Sep 2023 15:58:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=7BWj=FL=cloud.com=anthony.perard@srs-se1.protection.inumbo.net>)
 id 1qlWvz-000761-1m
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 15:58:43 +0000
Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com
 [2a00:1450:4864:20::432])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ba29ea24-5d4e-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 17:58:41 +0200 (CEST)
Received: by mail-wr1-x432.google.com with SMTP id
 ffacd0b85a97d-32329d935d4so6385100f8f.2
 for <xen-devel@lists.xenproject.org>; Wed, 27 Sep 2023 08:58:41 -0700 (PDT)
Received: from perard.uk.xensource.com (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 j13-20020adfd20d000000b003232c2109cbsm7555172wrh.7.2023.09.27.08.58.39
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 27 Sep 2023 08:58:39 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ba29ea24-5d4e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695830320; x=1696435120; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=qjjhkzh+nSri1VRDKkw1DrOsgSHLju6NOUp/L35SrdQ=;
        b=oxOKQU3xpm4uY6UJBotJKin+Ml0yMCjs9uckv87yHbCSq+/ApY/tFTS20Wk5O8JJiA
         vrv0uRp7ZW6bBZkJofKZge2BlHkGLj4Q/l5A+B9NBqWDY2zZmoLym5UAzrZ5lOu+L67w
         HM+m1Mtu8jdu67npnA27y8Vy09m+Dh/xF1DSs=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695830320; x=1696435120;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=qjjhkzh+nSri1VRDKkw1DrOsgSHLju6NOUp/L35SrdQ=;
        b=fZGhOPU4SeJYMp1XDeKmR9QarUwjXHtyH4m5B4HaHLGicZx5DbM0T71X3k01N3XhMd
         honB3AgAj/uCxFpGynTvg6XoJX2OTLX74YEKW6v2M8NUdA62bqyWq/o6QipdWmY4zF2H
         wUXQm5rWvtBnbIvN3bhkGmgJuEmfUhaXM7XYdcZir/WxVDRFEqNEquKid7y/G3nJSRUN
         04hN5lOhWBgNdzPBIUlp4c7j82sOvP3mt5Oy1Qo7Az9uBDnnuEXHoVUUSraYJxdEyn2f
         Z4aVsi0Gfiq1VG+L95lo9pYRNHPWa5qK2z7XLjW9Tsr2VEl2uOqlFZw+orfOkhdjfcj+
         Ow9w==
X-Gm-Message-State: AOJu0YyIESRnQ9eibGoTe+Jdbc5GNdKU5hvnkfdmYvkF+AX8qWlXXa6m
	fljMX/RxoagGFkJngVqu6zVuwA==
X-Google-Smtp-Source: AGHT+IGzQjQVBt3MY3twRw61jLcoHR40oTH5yKXmfeJ26Sm7183gxJRHv7lyxSSfRbTyAgw/etr1kg==
X-Received: by 2002:a5d:66c2:0:b0:31f:b0ba:f2ce with SMTP id k2-20020a5d66c2000000b0031fb0baf2cemr2418868wrw.9.1695830320311;
        Wed, 27 Sep 2023 08:58:40 -0700 (PDT)
Date: Wed, 27 Sep 2023 16:58:39 +0100
From: Anthony PERARD <anthony.perard@citrix.com>
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
Cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org,
	michal.orzel@amd.com, xenia.ragiadakou@amd.com,
	ayan.kumar.halder@amd.com, consulting@bugseng.com,
	jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com,
	Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH v2 2/3] docs: make the docs for MISRA C:2012 Dir 4.1
 visible to ECLAIR
Message-ID: <d8b23542-27ae-4435-bf9e-0dd96891b43e@perard>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com>
 <4e25395c844a312556303e3484a915e875e0e5a7.1695801813.git.nicola.vetrini@bugseng.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <4e25395c844a312556303e3484a915e875e0e5a7.1695801813.git.nicola.vetrini@bugseng.com>

On Wed, Sep 27, 2023 at 11:52:31AM +0200, Nicola Vetrini wrote:
> To be able to check for the existence of the necessary subsections in
> the documentation for MISRA C:2012 Dir 4.1, ECLAIR needs to have a source
> file that is built.
> 
> This file is generated from 'C-runtime-failures.rst' in docs/misra
> and the configuration is updated accordingly.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> Changes from RFC:
> - Dropped unused/useless code
> - Revised the sed command
> - Revised the clean target
> 
> Changes in v2:
> - Added explanative comment to the makefile
> - printf instead of echo

Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 16:12:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 16:12:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609130.948018 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlX94-0002Ud-6R; Wed, 27 Sep 2023 16:12:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609130.948018; Wed, 27 Sep 2023 16:12:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlX94-0002UW-3h; Wed, 27 Sep 2023 16:12:14 +0000
Received: by outflank-mailman (input) for mailman id 609130;
 Wed, 27 Sep 2023 16:12:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=3bhA=FL=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlX92-0002Sn-Fi
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 16:12:12 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2060f.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::60f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9cffc6f9-5d50-11ee-878a-cb3800f73035;
 Wed, 27 Sep 2023 18:12:11 +0200 (CEST)
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21)
 by PA4PR04MB9712.eurprd04.prod.outlook.com (2603:10a6:102:26d::8)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 16:12:08 +0000
Received: from AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc]) by AS8PR04MB8788.eurprd04.prod.outlook.com
 ([fe80::afae:3fda:c84d:bcdc%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 16:12:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9cffc6f9-5d50-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KPb0yfjJAUOkzA0r2wcL+gR5C1pBX7FewIZFxB6UZHw8bIMgv1Xi4qDJvZHymTP31c6cWdbhTcCo1sCx8P+c3kJxzvhPs6lAFqnxC/wqtq58TiOW3eam/MNXnzXV1dzsOT9OrBtZ6cTR9jmzPMdpu8gztBiVTYp6nnLUQYX4yw9LArusDCCqRjeas6SnALTKJyWXgcdjOlW3XDI7KkQdAiFV0ycoEj4D6Vx5aw3cErNPX25gN/l09frzzb1sXOmHlLyGdIS1ufBzBbZWm0/BCIvqjFdnxm8u0Q0+c7MB8fhtwnFD3OV/jVX3DcukMPfjOmjZcayU4NqgD+17Jrvr6A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=UGt2db/I8ZsdiyoeoQKfOki2MrPy/3s5vKobaQ+Y+v8=;
 b=HauAKhTTAjSN3F7IvmZQhZSSw7Oi2yXseqZeVn7R0sJq4UEiLhNyEqEgAm1letZeBNU6nxqaUXgoITCupbDr2zavAO4v9xmsUmeQD2y5LkBCJFY3hQ5lvlCaMCJZ37zO766+xwRM+x/ofDW0qgZA1GuvEOCU7f7Zi3n6lMIy6wbQ35yKkm3t/ZAnR1AARsevv8R/4qeGUHcbr4TtQzYhxBWD+2YUGitTqAp5fh6VHkwbkwGeNOI7WyTNziU/iLBJJ469EcdpVd0iZJPHBFjrbxQBoDTjkcnkbgNGLoLn8O5313TjnitXsQP+PFRy9XiXOo6C10t9/3edTLd4Zu8tzw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=UGt2db/I8ZsdiyoeoQKfOki2MrPy/3s5vKobaQ+Y+v8=;
 b=3LZWnfy0eb+tEWht09nVLA3/P8UTM2YN4mJiQzUHkvqGyRPw5Z/weB66a7kNFY92DIDin4LkBNljce7GDqK5WiyCmIwIEMyx0ofQ9ACQl1w2/6UI5XWOrzb07ENFyyk16+cT3l2GWLsmq3m9lHBVD8UgPkFVt8SzZeukNhIkN8aJtzICmCwPsPTLt8v3taYG+2b05oeTMnxCMJAaC4XIbMLIIGqOK1D38oP0eo81B1FgCVWISRe+IJppnWg/j8GLDOKYKMOvA6FEbFYxG32WTyIaqCG937Ns3YY9uFFaiH9ib9CO/ORj5Lfjs8PNBiX2R8C4l0Ob4ZdTjaSP0nGvEQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4f3a6728-bd4c-715c-a822-4e8f3db447ad@suse.com>
Date: Wed, 27 Sep 2023 18:12:06 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 7/8] x86: introduce GADDR based secondary time area
 registration alternative
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <77218fb0-5e96-4ecb-c2b0-4fe8c3ba683f@suse.com>
 <ZRRPMAxlpB03_GMJ@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRRPMAxlpB03_GMJ@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0022.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:14::9) To AS8PR04MB8788.eurprd04.prod.outlook.com
 (2603:10a6:20b:42f::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PA4PR04MB9712:EE_
X-MS-Office365-Filtering-Correlation-Id: 550d6693-8cde-4d29-76f7-08dbbf747fd4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	+L22MgFs25y4Oco+rim7/1soKGtmKqyTB2eCZC0vbAklMsICRURQ1hf6PLdcOAPiFBY4CH8Elp7q4TWRmgLKN8Ex+Ldr85cFgb2pIP5Q4/si5DDMj5HjBD4jL33jDlfXCD9riT9C/7FbDoSi1ofGCRRmN1Zu6QExhX/VhCJWWvHBEQqILR+SM7U9N4HIQtqVvidUif40Fx4T0LiHAGHrh5cSc4HuAEPmMm0EAXnKAPE0sEag93OIv4o5Go7jLAcVNpgBXUObXFzUWMHm98N3pLrIniNLOtkEfcFFgjzdMH5s3c3YeWrZheof6J5kUCBvz9Zf//PN3/Wja14MhJbSr6bmNv66WOyxIjKL8sAn31VVGxU3ZS82fmp3zuRREeMoKUlKhMzTk80ujy+7vtUq8k3+4nzbqIcWWZdYs/zU5XaCQrSMF7jA6VxvUx1xzep12gdOqevNyFIGYCT/60bSTYxqt2cqxm+unge1XeeWB0LCQdeoXqIcDba9STZ/1wVSgE05cSS/ZU0hEB/raX6tTCohkLzdCTCQkriD40Xj5gvQ4T1X/fDJ6Fplz251MhKINXivA77RD5KUel1HuDZxGdIyAm96m974o3gbTXt0qi7tkKskGTCSz4Ri/L6UtkT5lkruSmhtpGUrt4RJ7zjS0Q==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(396003)(136003)(39860400002)(376002)(230922051799003)(451199024)(1800799009)(186009)(66946007)(66476007)(66556008)(5660300002)(31686004)(41300700001)(6916009)(54906003)(316002)(8936002)(8676002)(4326008)(2906002)(478600001)(83380400001)(31696002)(26005)(53546011)(2616005)(86362001)(38100700002)(6506007)(6512007)(6486002)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MHlVV3pQbEd4Q1BxL3hBUzhqZHJtTU9pRzdGUHIyOVZzR3hYbk1mSVFiSUk0?=
 =?utf-8?B?MnZqSVpGaTJWNTdiOXRiWThOWThiRUhCQ1E0a2czWkdxRnZvS3ZEbWRPdzJn?=
 =?utf-8?B?VjVKYnk0cHA0bURBQ2R4YnltdDFBMTQrQkNjUm9iSWxYTTMyT0RYcENNbFRR?=
 =?utf-8?B?UWFWQ20yWjUvTTFFa1Y4TS9xbU1Xd0NmckEzckdCQS9ZaFI1VGZHc255bzJz?=
 =?utf-8?B?QmtyZytVY2pmZzh0U3lGL29PL3JaYURCU2tjdDk2OGZTcnBFUFVnTlNDVkNG?=
 =?utf-8?B?eWdKWEQxZzYwczYzd0xtbUZ1TUkwZ0hnZ2FJNFl1U1BrQlFqdldWZDVrNklC?=
 =?utf-8?B?WDJWMlg2bTJvMkFIdlNZMEVUcWM1a1ZJNDl4NzRSZTBZMHk3R0c0ck85UDZH?=
 =?utf-8?B?b0RpWkpJU0FqWFltYmZ0TDJoMXVYOHgxWEF2L3FOMUY5MXl2VktmUDd5cVhM?=
 =?utf-8?B?YjByTUhEWTJQWEtVZGJUQStZVGRwb1ZQekovSDBodHc1cXhGVHRUT20xVmhG?=
 =?utf-8?B?eERFenIzRUZCZ3JGM2ZGTWxCbnd2YjJJeWZRL1dpRkdjOTJxM3dXS0taWW8v?=
 =?utf-8?B?K1huWXE1bGc4V3BuQjRXQ2lJTlF4VHh6ejRRd1IzVG14WHM5cXhGZER6cTdt?=
 =?utf-8?B?Q3lBN1F1amZ4dEIvaExuQ212V2dnK3hUcncwdFBaSTc4OTN3emVqNzlZVGdq?=
 =?utf-8?B?M25LSVBWYW96TmJRV1J2bVFpbzYvVWl5eXY5WDExL05ic1dlUUlNdFJ3TU1o?=
 =?utf-8?B?WG9JUTlDZGxmMW9KRUR3enBtVnpRMVZSbjdTeG01Y0pRZmNVUHZqa1NOMGFj?=
 =?utf-8?B?NzFCQ3p0WHppZDRtbHpFOHMwUnkrTVVpMWhZM1NjZ3dVRVN2WmJ1UGNTdTFK?=
 =?utf-8?B?cVhOWGNrM1lMSG43U3NsQXdhaWtNM2R5bXAwSWdFRHNRaXlHOEwyMVFpa3E5?=
 =?utf-8?B?Wk9UcEY4SWZLR1grbFdSTFM3RExKQmxaNkRIRWNaejRtcytKeW92amJBQ05Q?=
 =?utf-8?B?ck52eE9UZU1IUys2MWhpMHR6UG9tT29OZGdEUmN2QnpQem1MQmdqcEw2MjNm?=
 =?utf-8?B?cGEyU2FFaUN1SlEvaTNvU212Qjh4Kzl3Vk1wVzRMVDY4OE80eEU5ckhCSWow?=
 =?utf-8?B?R0tHMThQTlpDZDBzKzJtd25OMkNBNVdJM29abjcyQ2tQaVBFUVJHU3ZId3I1?=
 =?utf-8?B?ZHBiS3dYRGU1OURXa1h3QWEzcDVoWWZGY3gybC9lOFhSb2VmN24xSFFtVDZL?=
 =?utf-8?B?ckdBdVZ3UmdNYlRZbGVrMnhKTjVEQm81Qm53TWNNK1l1L2locGpGMCtFOE9h?=
 =?utf-8?B?WXh5OEZHbmdDc043bEFNMit1VXhPU05LREw5NTdUcW12M1Fac2hFN1R1Vktm?=
 =?utf-8?B?bEVKS2h2aGV1L1RRMnBHSFkzbjVlcVYvcDJyT0hneWtNSnFhQSt0ZTY3YUQ2?=
 =?utf-8?B?ME5oQ1hPQjJSaVRWOExwZmlqNU9VKytsOTVHK3Jla2p3RGgvSDRIaVRyN2hB?=
 =?utf-8?B?MGlJTmJXalkyUDlETGgzbVQyNXNaM2RjSVduanluN051U0ZRTkZ3Ymlla052?=
 =?utf-8?B?c3NHMFVoMlZ6S2wwbjNvTGpENGxoUU1MVkVzRUNzYTIraXozUTlETHpScGJG?=
 =?utf-8?B?aGhZN2FYaUJ1Sitib0ppQ0FzUTA5SzN6cUx6NDJ3b1REb05DL0xUdjNJNWpx?=
 =?utf-8?B?UmRwNmcxcjVnTEdGZzhXdnV5NDZodUN1SWRVOS9CME53MXdGSUw1SXh3bW50?=
 =?utf-8?B?VVJmN3JXR21BUUtIUmJ5ZnJiNW1IQU53NlV6UXVHNlhpVmw1TXc1NEFGWmtk?=
 =?utf-8?B?VFJkV0tOaWJRUjRsbXNhVEN2ZHpUMDZZWXRjLzBvRlZNTTYydFFsU0xldVB4?=
 =?utf-8?B?aE0zczZ0Ujg2bVpuQ3lOczlOK2RheEpUb2E5OHV4OExUVm9QTGROSUFPQTdk?=
 =?utf-8?B?N1Fob0RKU0FnaTR4Zyt0cFFyWldOY2U5c05PbHpBaU1xcVNhc0xlQVU2N2dV?=
 =?utf-8?B?TlUrbVczRlR3L3R3dnhVVE5vSm9qR0t3cXRmTlhyL0xpNnEvRTVGUDZUTTIr?=
 =?utf-8?B?b0lFeVFBWlpnYnpKcWROQTZzNWZPSWhvN3gyZGw1M1NuSUtuVW1Ib20reDA3?=
 =?utf-8?Q?P5xKovVszXaEw826h6kdvMSKP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 550d6693-8cde-4d29-76f7-08dbbf747fd4
X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 16:12:08.5642
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rZMvJvwemAUQpnsc43H37ful9iLb6YOzu7V7C+BzPlswnLyfAzplYiJ7MvNHw+bcHoWrQ8Uv+fiti6XV1oGsDQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9712

On 27.09.2023 17:50, Roger Pau Monné wrote:
> On Wed, May 03, 2023 at 05:58:01PM +0200, Jan Beulich wrote:
>> The registration by virtual/linear address has downsides: The access is
>> expensive for HVM/PVH domains. Furthermore for 64-bit PV domains the area
>> is inaccessible (and hence cannot be updated by Xen) when in guest-user
>> mode.
>>
>> Introduce a new vCPU operation allowing to register the secondary time
>> area by guest-physical address.
>>
>> An at least theoretical downside to using physically registered areas is
>> that PV then won't see dirty (and perhaps also accessed) bits set in its
>> respective page table entries.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

>> ---
>> v3: Re-base.
>> v2: Forge version in force_update_secondary_system_time().

For your question below, note this revision log entry. I didn't have the
compensation originally, and my made-up XTF test thus failed.

>> --- a/xen/arch/x86/time.c
>> +++ b/xen/arch/x86/time.c
>> @@ -1633,6 +1633,16 @@ void force_update_vcpu_system_time(struc
>>      __update_vcpu_system_time(v, 1);
>>  }
>>  
>> +void force_update_secondary_system_time(struct vcpu *v,
>> +                                        struct vcpu_time_info *map)
>> +{
>> +    struct vcpu_time_info u;
>> +
>> +    collect_time_info(v, &u);
>> +    u.version = -1; /* Compensate for version_update_end(). */
> 
> Hm, we do not seem to compensate in
> VCPUOP_register_vcpu_time_memory_area, what's more, in that case the
> initial version is picked from the contents of the guest address.
> Hopefully the guest will have zeroed the memory.
> 
> FWIW, I would be fine with leaving this at 0, so the first version
> guest sees is 1.

No, we can't. Odd numbers mean "update in progress". In
__update_vcpu_system_time() we properly use version_update_begin(),
so there's no need for any compensation. If the guest puts a non-zero
value there, that's also fine from the perspective of the protocol.
Just that if the initial value is odd, the guest will mislead itself
into thinking "oh, the hypervisor is updating this right now" until
the first real update has happened. Yet even that is hypothetical,
since upon registration the area is first populated, so upon the
registration hypercall returning the field will already properly have
an even value.

Jan


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 16:21:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 16:21:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609135.948027 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlXIC-0005ML-5w; Wed, 27 Sep 2023 16:21:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609135.948027; Wed, 27 Sep 2023 16:21:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlXIC-0005ME-3R; Wed, 27 Sep 2023 16:21:40 +0000
Received: by outflank-mailman (input) for mailman id 609135;
 Wed, 27 Sep 2023 16:21:39 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=SvcD=FL=kernel.org=brauner@srs-se1.protection.inumbo.net>)
 id 1qlXIA-0005M8-V7
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 16:21:38 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ecd6043c-5d51-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 18:21:36 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 89EFFCE1A9C;
 Wed, 27 Sep 2023 16:21:32 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id AF3E3C433C7;
 Wed, 27 Sep 2023 16:21:21 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ecd6043c-5d51-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695831690;
	bh=5fVqTod0fsU3D85/NgpH5eX11yWtVW2s8jme29QI3SA=;
	h=Date:From:To:Cc:Subject:References:In-Reply-To:From;
	b=K+SdxwDZhx8uxbb5abeHgPolVgmwSiIBL6/AzX/eEpmg7s5Jd1TwEPpueT17Z+y1i
	 r/3aJFhGZoIRaqB+ADboLRaAQZpJm6SMvyfu5jpdUX9fmjLLqHrtdJHSnoHaBHBoNB
	 1Ras0NDOeGzjZ5rjoNJ7hj3RFSgjPFHQeOCu0doiR1ZFlmc7Dtn7+Tg4yFYE5HRxY7
	 FflbgLOEB1zCas3wjtrhbqXfzlZd6DZqKcBXDoRDLeETsNHRLxD2cXgjOH7guvx0ma
	 AufPlRnLwdi+pMqoWiBGk6SGa+Snjtz53w/pXkwTjOc2fDnSaUxFN105snuKm+T14u
	 FBsBAdYo6oMFA==
Date: Wed, 27 Sep 2023 18:21:19 +0200
From: Christian Brauner <brauner@kernel.org>
To: Jan Kara <jack@suse.cz>
Cc: linux-fsdevel@vger.kernel.org, linux-block@vger.kernel.org,
	Christoph Hellwig <hch@infradead.org>,
	Alasdair Kergon <agk@redhat.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Anna Schumaker <anna@kernel.org>, Chao Yu <chao@kernel.org>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	"Darrick J. Wong" <djwong@kernel.org>,
	Dave Kleikamp <shaggy@kernel.org>, David Sterba <dsterba@suse.com>,
	dm-devel@redhat.com, drbd-dev@lists.linbit.com,
	Gao Xiang <xiang@kernel.org>, Jack Wang <jinpu.wang@ionos.com>,
	Jaegeuk Kim <jaegeuk@kernel.org>,
	jfs-discussion@lists.sourceforge.net,
	Joern Engel <joern@lazybastard.org>,
	Joseph Qi <joseph.qi@linux.alibaba.com>,
	Kent Overstreet <kent.overstreet@gmail.com>,
	linux-bcache@vger.kernel.org, linux-btrfs@vger.kernel.org,
	linux-erofs@lists.ozlabs.org, linux-ext4@vger.kernel.org,
	linux-f2fs-devel@lists.sourceforge.net, linux-mm@kvack.org,
	linux-mtd@lists.infradead.org, linux-nfs@vger.kernel.org,
	linux-nilfs@vger.kernel.org, linux-nvme@lists.infradead.org,
	linux-pm@vger.kernel.org, linux-raid@vger.kernel.org,
	linux-s390@vger.kernel.org, linux-scsi@vger.kernel.org,
	linux-xfs@vger.kernel.org,
	"Md. Haris Iqbal" <haris.iqbal@ionos.com>,
	Mike Snitzer <snitzer@kernel.org>, Minchan Kim <minchan@kernel.org>,
	ocfs2-devel@oss.oracle.com, reiserfs-devel@vger.kernel.org,
	Sergey Senozhatsky <senozhatsky@chromium.org>,
	Song Liu <song@kernel.org>, Sven Schnelle <svens@linux.ibm.com>,
	target-devel@vger.kernel.org, Ted Tso <tytso@mit.edu>,
	Trond Myklebust <trond.myklebust@hammerspace.com>,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v4 0/29] block: Make blkdev_get_by_*() return handle
Message-ID: <20230927-prahlen-reintreten-93706074e58d@brauner>
References: <20230818123232.2269-1-jack@suse.cz>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20230818123232.2269-1-jack@suse.cz>

On Wed, 27 Sep 2023 11:34:07 +0200, Jan Kara wrote:
> Create struct bdev_handle that contains all parameters that need to be
> passed to blkdev_put() and provide bdev_open_* functions that return
> this structure instead of plain bdev pointer. This will eventually allow
> us to pass one more argument to blkdev_put() (renamed to bdev_release())
> without too much hassle.
> 
> 
> [...]

> to ease review / testing. Christian, can you pull the patches to your tree
> to get some exposure in linux-next as well? Thanks!

Yep. So I did it slighly differently. I pulled in the btrfs prereqs and
then applied your series on top of it so we get all the Link: tags right.
I'm running tests right now. Please double-check.

---

Applied to the vfs.super branch of the vfs/vfs.git tree.
Patches in the vfs.super branch should appear in linux-next soon.

Please report any outstanding bugs that were missed during review in a
new review to the original patch series allowing us to drop it.

It's encouraged to provide Acked-bys and Reviewed-bys even though the
patch has now been applied. If possible patch trailers will be updated.

Note that commit hashes shown below are subject to change due to rebase,
trailer updates or similar. If in doubt, please check the listed branch.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git
branch: vfs.super

[01/29] block: Provide bdev_open_* functions
       https://git.kernel.org/vfs/vfs/c/b7c828aa0b3c
[02/29] block: Use bdev_open_by_dev() in blkdev_open()
        https://git.kernel.org/vfs/vfs/c/d4e36f27b45a
[03/29] block: Use bdev_open_by_dev() in disk_scan_partitions() and blkdev_bszset()
        https://git.kernel.org/vfs/vfs/c/5f9bd6764c7a
[04/29] drdb: Convert to use bdev_open_by_path()
        https://git.kernel.org/vfs/vfs/c/0220ca8e443d
[05/29] pktcdvd: Convert to bdev_open_by_dev()
        https://git.kernel.org/vfs/vfs/c/7af10b889789
[06/29] rnbd-srv: Convert to use bdev_open_by_path()
        https://git.kernel.org/vfs/vfs/c/3d27892a4be7
[07/29] xen/blkback: Convert to bdev_open_by_dev()
        https://git.kernel.org/vfs/vfs/c/26afb0ed10b3
[08/29] zram: Convert to use bdev_open_by_dev()
        https://git.kernel.org/vfs/vfs/c/efc8e3f4c6dc
[09/29] bcache: Convert to bdev_open_by_path()
        https://git.kernel.org/vfs/vfs/c/dc893f51d24a
[10/29] dm: Convert to bdev_open_by_dev()
        https://git.kernel.org/vfs/vfs/c/80c2267c6d07
[11/29] md: Convert to bdev_open_by_dev()
        https://git.kernel.org/vfs/vfs/c/15db36126ca6
[12/29] mtd: block2mtd: Convert to bdev_open_by_dev/path()
        https://git.kernel.org/vfs/vfs/c/4c27234bf3ce
[13/29] nvmet: Convert to bdev_open_by_path()
        https://git.kernel.org/vfs/vfs/c/70cffddcc300
[14/29] s390/dasd: Convert to bdev_open_by_path()
        https://git.kernel.org/vfs/vfs/c/5581d03457f8
[15/29] scsi: target: Convert to bdev_open_by_path()
        https://git.kernel.org/vfs/vfs/c/43de7d844d47
[16/29] PM: hibernate: Convert to bdev_open_by_dev()
        https://git.kernel.org/vfs/vfs/c/105ea4a2fd18
[17/29] PM: hibernate: Drop unused snapshot_test argument
        https://git.kernel.org/vfs/vfs/c/b589a66e3688
[18/29] mm/swap: Convert to use bdev_open_by_dev()
        https://git.kernel.org/vfs/vfs/c/615af8e29233
[19/29] fs: Convert to bdev_open_by_dev()
        https://git.kernel.org/vfs/vfs/c/5173192bcfe6
[20/29] btrfs: Convert to bdev_open_by_path()
        https://git.kernel.org/vfs/vfs/c/8cf64782764f
[21/29] erofs: Convert to use bdev_open_by_path()
        https://git.kernel.org/vfs/vfs/c/4d41880bf249
[22/29] ext4: Convert to bdev_open_by_dev()
        https://git.kernel.org/vfs/vfs/c/f7507612395e
[23/29] f2fs: Convert to bdev_open_by_dev/path()
        https://git.kernel.org/vfs/vfs/c/d9ff8e3b6498
[24/29] jfs: Convert to bdev_open_by_dev()
        https://git.kernel.org/vfs/vfs/c/459dc6376338
[25/29] nfs/blocklayout: Convert to use bdev_open_by_dev/path()
        https://git.kernel.org/vfs/vfs/c/5b1df9a40929
[26/29] ocfs2: Convert to use bdev_open_by_dev()
        https://git.kernel.org/vfs/vfs/c/b6b95acbd943
[27/29] reiserfs: Convert to bdev_open_by_dev/path()
        https://git.kernel.org/vfs/vfs/c/7e3615ff6119
[28/29] xfs: Convert to bdev_open_by_path()
        https://git.kernel.org/vfs/vfs/c/176ccb99e207
[29/29] block: Remove blkdev_get_by_*() functions
        https://git.kernel.org/vfs/vfs/c/953863a5a2ff


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 17:27:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 17:27:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609141.948038 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlYJF-0000rA-Td; Wed, 27 Sep 2023 17:26:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609141.948038; Wed, 27 Sep 2023 17:26:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlYJF-0000r3-QA; Wed, 27 Sep 2023 17:26:49 +0000
Received: by outflank-mailman (input) for mailman id 609141;
 Wed, 27 Sep 2023 17:26:48 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlYJE-0000qt-Ie; Wed, 27 Sep 2023 17:26:48 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlYJE-0001pl-7J; Wed, 27 Sep 2023 17:26:48 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlYJD-0003xK-PF; Wed, 27 Sep 2023 17:26:47 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlYJD-0000eA-Om; Wed, 27 Sep 2023 17:26:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=NtIHchGUhl1RZpnAMOgOrwWS/bt8cCKzNNrMgiMy0II=; b=GD+KFQY0AISqP0X9cr8kOtkLYK
	Z6lXzfvawHcWwkTHdJVERjQOKe/YbDLTeNOIvb7m/x7qKLM8XguBdiuKqq6t/KWZPM36Jg5E5I8us
	zYEm9q4VMkcKRISeROuEZtxL42Ry+WVAdPlRjOQtJ21XgYdgrl8Lv+bDqrDgQ5P4Swhc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183188-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183188: tolerable FAIL - PUSHED
X-Osstest-Failures:
    libvirt:test-amd64-i386-libvirt-xsm:xen-install:fail:heisenbug
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=d77cc21d4b5f60f950aa7f0106d4190dde2b0f1b
X-Osstest-Versions-That:
    libvirt=51a074e74c6ef2fb95e6f53d41315e3f1e00be77
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 27 Sep 2023 17:26:47 +0000

flight 183188 libvirt real [real]
flight 183195 libvirt real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183188/
http://logs.test-lab.xenproject.org/osstest/logs/183195/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-libvirt-xsm   7 xen-install         fail pass in 183195-retest

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt-xsm 15 migrate-support-check fail in 183195 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183172
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183172
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183172
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              d77cc21d4b5f60f950aa7f0106d4190dde2b0f1b
baseline version:
 libvirt              51a074e74c6ef2fb95e6f53d41315e3f1e00be77

Last test of basis   183172  2023-09-26 04:20:27 Z    1 days
Testing same since   183188  2023-09-27 04:20:33 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrea Bolognani <abologna@redhat.com>
  Fedora Weblate Translation <i18n@lists.fedoraproject.org>
  Jiri Denemark <jdenemar@redhat.com>
  Weblate <noreply@weblate.org>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  fail    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   51a074e74c..d77cc21d4b  d77cc21d4b5f60f950aa7f0106d4190dde2b0f1b -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 18:03:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 18:03:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609149.948048 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlYso-0006z2-Qr; Wed, 27 Sep 2023 18:03:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609149.948048; Wed, 27 Sep 2023 18:03:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlYso-0006yv-Ml; Wed, 27 Sep 2023 18:03:34 +0000
Received: by outflank-mailman (input) for mailman id 609149;
 Wed, 27 Sep 2023 18:03:33 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PTSH=FL=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qlYsn-0006yp-K5
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 18:03:33 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20603.outbound.protection.outlook.com
 [2a01:111:f400:7e89::603])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 2998c0f7-5d60-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 20:03:30 +0200 (CEST)
Received: from MW4PR04CA0089.namprd04.prod.outlook.com (2603:10b6:303:6b::34)
 by SA1PR12MB6970.namprd12.prod.outlook.com (2603:10b6:806:24d::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Wed, 27 Sep
 2023 18:03:21 +0000
Received: from CO1PEPF000044EF.namprd05.prod.outlook.com
 (2603:10b6:303:6b:cafe::a8) by MW4PR04CA0089.outlook.office365.com
 (2603:10b6:303:6b::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21 via Frontend
 Transport; Wed, 27 Sep 2023 18:03:21 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CO1PEPF000044EF.mail.protection.outlook.com (10.167.241.69) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Wed, 27 Sep 2023 18:03:21 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 27 Sep
 2023 13:03:20 -0500
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 27 Sep 2023 13:03:19 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2998c0f7-5d60-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=LHMaiMxAcYTTpZTYWf2xF8qNPCyZmQYb0JN8iMBX/O5Na767FQbo7ixWIwQfjuIynFNcwnViDxe/f6PNacqFz06wH8guOrIEIomuRwXy17qy5z07DwskdDHDlTSJhvVt35lCx4e+eMpssqf7AepzAzby3yAlY3cWIJPwXBKtAc+HIx3EQglfOGvDouV/ysCUbrEomZ+A17ehcbbrgaHsK4ahZB0DeGlLfsqTvygv1nqqlkqKCHO+Ogh3ArTBzWvKysMYZNnLdfebZT1J932+y09NlYK1Z+lFCXAii40Oo1LxZNrFL/rygweOkiF8iRmQXID5Nnpwv5IhONP4YxSFUQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=d3KLmic/LTfcaPVTS/B6T8X2vutBB0Fb2n422DwHmqg=;
 b=cZ8NxLZ96Cu+3Z/waeOMUYMh6CDrPJhY3K3sU4Nk+Y9uRcsrxMdh+1eeefxrlphNs4XVc6Z2cPGY6EPBN26mBRfcWGIs1aC73EO1U3sTifNeBWOyWTWjM340kpwn+xzzWI3sjOnZof3vlnFo8eE1rNWMLz2M7iLEs9/BTH1fMu2NOl7a20XTKH5Wj0ABn340EkUfvBVHOYBJHWnbw52kkaN+QY4Cyiu4qHtgVazfnFHbqZNs03xCnF5d/SZGpkmJv/1ZRGL2g/deIMquPmbLzyVguHC56Ep/IHmVid0v9cgohWLSEKjM1tZGqIIz4xZqVlVDxDWfA9C5OpwnpAGWYA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=citrix.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=d3KLmic/LTfcaPVTS/B6T8X2vutBB0Fb2n422DwHmqg=;
 b=nw1i7xNLwXfWTr5SV6Qpk1IddbPzV9T77V6lyhBvkAZbAl/kTXQ8sQkaXUpMJSsMQM839WVO1vlU778so8DlRSySN7bVB2TIV6TQdTNohN63uMuFo9tR2V1H2Kl6bkshO4xmG4rg36e/BUajOXbw3KPDyArdCvsaIoYUt4x8XXM=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <0d4b7115-8cc6-3b11-9a46-0f222bcb864a@amd.com>
Date: Wed, 27 Sep 2023 14:03:30 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v9 15/16] xen/arm: vpci: check guest range
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
CC: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-16-volodymyr_babchuk@epam.com>
 <ZQ1T8vImUxAaeLdj@MacBookPdeRoger>
 <0a1bc845-28b7-4af8-d6d9-cd5fc7bb4d74@amd.com>
 <ZRKRNcypuvP26luu@MacBookPdeRoger>
 <8a300dad-29d5-2017-70ad-09abc2c62368@amd.com>
 <ZRL9QalvI4VrDQhF@MacBookPdeRoger>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <ZRL9QalvI4VrDQhF@MacBookPdeRoger>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044EF:EE_|SA1PR12MB6970:EE_
X-MS-Office365-Filtering-Correlation-Id: 840a8a60-a833-4ce6-4b78-08dbbf840925
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ItaETbvOzoKVm2jbwbNoCZmc5eFVDORy3+lwh05yNhyrmW+CvpkC1hHMfS+WmWu8OcNdnJ9ngypq2oY05uwW9S6k35u7+GK8mKIm1jVylv/ATaDCsIkbbc4w2zQamGQ8gBEHn3nsy6YaDhnyjxOqRD+cBt2pcPFWbbGfaIIIXYKfSNk6bB/LSNKHxYQSqiS0QWWnscU64vBTGTbrHTlbFn8Omqx47JetXbocfpHwDgNDrtVTkQlHbyMMXwA7cfeuP9L+wnTbrEz1YgZZZ4cQ+GEMBwU6drHnmjh+xXM4Lys7kEZPPSu18+sl1ifMcZs/E40Yi6jZ3LGOYIiojqJaakVHKrJ9lTeEqVUeIl5Nx46qaehC3PWqII+DxD14p1pK2EbFaHuLBjRIYCIWSdXATBtEfGYkSv8GaMzZVcO/zyDZAHMbGnMJrNf9VongFF2AgKbqlIQ2vEwUdO0ZMfRV5z0WNACFmnS8JNx1outHnht7H8pT++cU6oBGFylciw721FSiUOyFjXSql20D6Ej+wCYpZpi1Akn20SW78kxGMPbHkI0Rin2yZcmZTa4lQni3bf6nbl6rfGuo0wVySE+Z7/62yKyQloVDfp9NLEHpFJ26PK69Yzz2kjGzCVQAijcZCH4CZjRmXxV5DIfsXYx6vyocDTFFWFXnO8kWtHx7+7wR4vTTk7rIkyWSuHVc4B8Gp1SITvika7hDend8pFwYjtrWHgCinnyNlsoLKmlf6dkuA06jl4QbFa3wskC2LLO9JYj341Rgx2oZiPM3ZiHRM+aWCKMZyk31yXGE5/OjjN1gCzspbGw2Z7mkPECOjBbb
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(346002)(376002)(396003)(230922051799003)(451199024)(82310400011)(186009)(1800799009)(36840700001)(46966006)(40470700004)(31686004)(44832011)(6666004)(2906002)(41300700001)(4326008)(8676002)(8936002)(5660300002)(47076005)(316002)(70206006)(70586007)(6916009)(16576012)(478600001)(54906003)(53546011)(2616005)(336012)(426003)(26005)(40460700003)(83380400001)(36860700001)(81166007)(31696002)(86362001)(40480700001)(36756003)(82740400003)(356005)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 18:03:21.1678
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 840a8a60-a833-4ce6-4b78-08dbbf840925
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000044EF.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB6970

On 9/26/23 11:48, Roger Pau Monné wrote:
> On Tue, Sep 26, 2023 at 11:27:48AM -0400, Stewart Hildebrand wrote:
>> On 9/26/23 04:07, Roger Pau Monné wrote:
>>> On Mon, Sep 25, 2023 at 05:49:00PM -0400, Stewart Hildebrand wrote:
>>>> On 9/22/23 04:44, Roger Pau Monné wrote:
>>>>> On Tue, Aug 29, 2023 at 11:19:47PM +0000, Volodymyr Babchuk wrote:
>>>>>> From: Stewart Hildebrand <stewart.hildebrand@amd.com>
>>>>>>
>>>>>> Skip mapping the BAR if it is not in a valid range.
>>>>>>
>>>>>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>>>>>> ---
>>>>>>  xen/drivers/vpci/header.c | 9 +++++++++
>>>>>>  1 file changed, 9 insertions(+)
>>>>>>
>>>>>> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
>>>>>> index 1d243eeaf9..dbabdcbed2 100644
>>>>>> --- a/xen/drivers/vpci/header.c
>>>>>> +++ b/xen/drivers/vpci/header.c
>>>>>> @@ -345,6 +345,15 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>>>>>>               bar->enabled == !!(cmd & PCI_COMMAND_MEMORY) )
>>>>>>              continue;
>>>>>>
>>>>>> +#ifdef CONFIG_ARM
>>>>>> +        if ( !is_hardware_domain(pdev->domain) )
>>>>>> +        {
>>>>>> +            if ( (start_guest < PFN_DOWN(GUEST_VPCI_MEM_ADDR)) ||
>>>>>> +                 (end_guest >= PFN_DOWN(GUEST_VPCI_MEM_ADDR + GUEST_VPCI_MEM_SIZE)) )
>>>>>> +                continue;
>>>>>> +        }
>>>>>> +#endif
>>>>>
>>>>> Hm, I think this should be in a hook similar to pci_check_bar() that
>>>>> can be implemented per-arch.
>>>>>
>>>>> IIRC at least on x86 we allow the guest to place the BARs whenever it
>>>>> wants, would such placement cause issues to the hypervisor on Arm?
>>>>
>>>> Hm. I wrote this patch in a hurry to make v9 of this series work on ARM. In my haste I also forgot about the prefetchable range starting at GUEST_VPCI_PREFETCH_MEM_ADDR, but that won't matter as we can probably throw this patch out.
>>>>
>>>> Now that I've had some more time to investigate, I believe the check in this patch is more or less redundant to the existing check in map_range() added in baa6ea700386 ("vpci: add permission checks to map_range()").
>>>>
>>>> The issue is that during initialization bar->guest_addr is zeroed, and this initial value of bar->guest_addr will fail the permissions check in map_range() and crash the domain. When the guest writes a new valid BAR, the old invalid address remains in the rangeset to be mapped. If we simply remove the old invalid BAR from the rangeset, that seems to fix the issue. So something like this:
>>>
>>> It does seem to me we are missing a proper cleanup of the rangeset
>>> contents in some paths then.  In the above paragraph you mention "the
>>> old invalid address remains in the rangeset to be mapped", how does it
>>> get in there in the first place, and why is the rangeset not emptied
>>> if the mapping failed?
>>
>> Back in ("vpci/header: handle p2m range sets per BAR") I added a v->domain == pdev->domain check near the top of vpci_process_pending() as you appropriately suggested.
>>
>> +    if ( v->domain != pdev->domain )
>> +    {
>> +        read_unlock(&v->domain->pci_lock);
>> +        return false;
>> +    }
>>
>> I have also reverted this patch ("xen/arm: vpci: check guest range").
>>
>> The sequence of events leading to the old value remaining in the rangeset are:
>>
>> # xl pci-assignable-add 01:00.0
>> drivers/vpci/vpci.c:vpci_deassign_device()
>>     deassign 0000:01:00.0 from d0
>> # grep pci domu.cfg
>> pci = [ "01:00.0" ]
>> # xl create domu.cfg
>> drivers/vpci/vpci.c:vpci_deassign_device()
>>     deassign 0000:01:00.0 from d[IO]
>> drivers/vpci/vpci.c:vpci_assign_device()
>>     assign 0000:01:00.0 to d1
>>     bar->guest_addr is initialized to zero because of the line: pdev->vpci = xzalloc(struct vpci);
>> drivers/vpci/header.c:init_bars()
>> drivers/vpci/header.c:modify_bars()
> 
> I think I've commented this on another patch, but why is the device
> added with memory decoding enabled?  I would expect the FLR performed
> before assigning would leave the device with memory decoding disabled?

It seems the device is indeed being assigned to the domU with memory decoding enabled, but I'm not entirely sure why. The device I'm testing with doesn't support FLR, but it does support pm bus reset:
# cat /sys/bus/pci/devices/0000\:01\:00.0/reset_method
pm bus

As I understand it, libxl__device_pci_reset() should still be able to issue a reset in this case.

> Otherwise we might have to force init_bars() to assume memory decoding
> to be disabled, IOW: memory decoding would be set as disabled in the
> guest cmd view, and leave the physical device cmd as-is.  We might
> also consider switching memory decoding off unconditionally for domUs
> on the physical device.

I did a quick test and it works as expected with my apparently quirky test case:

diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index de29e5322d34..0ad0ad947759 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -790,7 +790,12 @@ static int cf_check init_bars(struct pci_dev *pdev)

     /* Disable memory decoding before sizing. */
     if ( cmd & PCI_COMMAND_MEMORY )
+    {
+        if ( !is_hwdom )
+            cmd &= ~PCI_COMMAND_MEMORY;
+
         pci_conf_write16(pdev->sbdf, PCI_COMMAND, cmd & ~PCI_COMMAND_MEMORY);
+    }

     header->guest_cmd = cmd & ~PCI_COMMAND_MEMORY;

> 
>>     BAR0: start 0xe0000, end 0xe000f, start_guest 0x0, end_guest 0xf
>>     The range { 0-f } is added to the BAR0 rangeset for d1
>> drivers/vpci/header.c:defer_map()
>>     raise_softirq(SCHEDULE_SOFTIRQ);
>> drivers/vpci/header.c:vpci_process_pending()
>>     vpci_process_pending() returns because v->domain != pdev->domain (i.e. d0 != d1)
> 
> I don't think we can easily handle BAR mappings during device
> assignment with vPCI, because that would require adding some kind of
> continuation support which we don't have ATM.  Might be better to just
> switch memory decoding unconditionally off at init_bars() for domUs as
> that's the easier solution right now that would allow us to move
> forward.

+1


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 18:18:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 18:18:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609155.948057 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlZ6z-0000bB-4q; Wed, 27 Sep 2023 18:18:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609155.948057; Wed, 27 Sep 2023 18:18:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlZ6z-0000b4-2F; Wed, 27 Sep 2023 18:18:13 +0000
Received: by outflank-mailman (input) for mailman id 609155;
 Wed, 27 Sep 2023 18:18:11 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=PTSH=FL=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qlZ6x-0000ay-EK
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 18:18:11 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20608.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::608])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 355657ec-5d62-11ee-9b0d-b553b5be7939;
 Wed, 27 Sep 2023 20:18:08 +0200 (CEST)
Received: from BYAPR03CA0024.namprd03.prod.outlook.com (2603:10b6:a02:a8::37)
 by DM4PR12MB6544.namprd12.prod.outlook.com (2603:10b6:8:8d::6) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.26; Wed, 27 Sep 2023 18:18:03 +0000
Received: from CO1PEPF000044F0.namprd05.prod.outlook.com
 (2603:10b6:a02:a8:cafe::b8) by BYAPR03CA0024.outlook.office365.com
 (2603:10b6:a02:a8::37) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21 via Frontend
 Transport; Wed, 27 Sep 2023 18:18:02 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 CO1PEPF000044F0.mail.protection.outlook.com (10.167.241.70) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Wed, 27 Sep 2023 18:18:02 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 27 Sep
 2023 13:18:01 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 27 Sep
 2023 11:18:01 -0700
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Wed, 27 Sep 2023 13:18:00 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 355657ec-5d62-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ncAln+xSowuJTJGNJUEfGixpmQzcH9roNYsY8427lKG4Gkyt6VsYjAwPdhex1LlHfWzpcYi3TLYEeuxJLrD+DiYPHWDGJs+a6VNV2Bcb5bUhhFjq6FECV3MCFj//tAN6QXIE9xWwIryh6z1aE7SXDjoeN4MZD5M/WLo7eryfM+c9ed4YqHPqfUxhtGleSxzzk/qHV7PzBVJUXPmAygcuVRiHEuiPHlmOshMuQSBcep3ZaI0FQFCE4on5TByOvlike24My6HkB9oaMizCSSV+qqoycIMsbIzVoKLvih/13zsUpA1Sg6E0p91A7nWv69HwW6V2kH8IktbjhTS5gQFgfA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xQnMk1kdUzPx0umjAMVNF7OS1oL0eGWwyXm40MxTW5o=;
 b=VTkA3fwLnn7X4EVmIBH4SPQzYQ5Q96o6/vz/R/aXigVTUt7PChQ+t7QN5TbaKLLINbGQtM10NyFvk1/T6B/rkNzny7T8wSv/S/KJ/toSAcVt6de7YpHAL+lNu5WwqPeUrMjHobZoDADu4tVvhWIKWMCT+6/Hd67YBmUj4MDz77zSNlEcyXEJ69Rjc4v9rV0qd7ztf3Q/X32hOqBiS6w5u/a6rpEZvYk70Qt9z1HjCqQBc3y4U6BOURzLBzSEbBbxeVn7n85CjBEfpA4u/if/1VAQSFyRwyRu8pNeaeJFvfJkWRJ9uAftlVAtQPWvJrp3UcIx5IPhAK+UYjUf2KXpHQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=epam.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xQnMk1kdUzPx0umjAMVNF7OS1oL0eGWwyXm40MxTW5o=;
 b=rGacOHuJfH2QNkoO9ovMV3KjUJz6llWQumasgZ8dFKkm013V9aNWsbq0Y8pnAyF92lDgfPJiziHxLn7+tRi076PkcQIliDrWuv34d0oo8EyEjxo/R9ku/yX7pMT92damImyL7gT5N7EeOLDNnGYuqvB0RB6qq4tyMpYK5eHFHDc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <80e75099-e6c1-4a92-ede0-2db6f06e801d@amd.com>
Date: Wed, 27 Sep 2023 14:18:11 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v9 08/16] vpci/header: handle p2m range sets per BAR
Content-Language: en-US
To: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Oleksandr Andrushchenko <Oleksandr_Andrushchenko@epam.com>,
	=?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-9-volodymyr_babchuk@epam.com>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <20230829231912.4091958-9-volodymyr_babchuk@epam.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044F0:EE_|DM4PR12MB6544:EE_
X-MS-Office365-Filtering-Correlation-Id: 6f9b2c0f-694c-47b4-ecdd-08dbbf861667
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BqcH3x6WGZLADTy7sMCNzg/385R3UGRf7rGYadsgC7sJ6ckGpH9K6aTbWrAsaqYUSM4Kc1Z26T9yVfMf9UzkcBNULqYnF9kKEwpL9K3935B3P3SUTZoVo25MZWSGMmFrEaDjFzHIaTl37mc4EP3Q4sp84MUVpvGY3RAyILST9RpMxw1ZGCmOlzQDdV63d9RYk5F6LpvCvDb9pAnGiqIpl6nvOaKziXZodlmQLuxoCyuiNJW7cU4sn6PzwpFstvXZrHZUL8e4RbgjFhMbLSU3aoB8aEwbJ6lFkKGcC6ijqpUztkOyEKW1K78NgfJjMjt/caHpOIXLzWbpvbdyGmXYKrE7chJ4KnzBtKLawYpudd2J09XqJGV0LMlwhIyLFP3vdn7+qee2tUO9ed6SMjmmu4oKhVgqTBZKwKwqV8wZjdX5C861bLg9hwal0iU7AAeoAGcuKopvFZSMehfPsfrGQMQyTGjId3KZMWB0QhytZROt6/pkZMUmZA/6qTLUTRF+r1+dI7HW7CZZgYltJ1UUFZNllskSxxcm1G1xVQJglwyGOQNxhfDLpfWAs6uGlea5trWrlt6+f/vAyDr8hpQ4Se98BpdAHce6kvc5ykRNb9BgD14+tYTLVsw9FMbHjaQlntZGAC9P+85wE7Kk0W0lmDp6dU4ya/5JTNh3GO/HzM3comUzaQe/v1fIsOYEfqqMmUHdmf74kJuPwksy1MP1kRL32TAxHg/sDBXcMGGXnqBSpqJT4mcu6u8UB8obMBiMpQ37DZLjXA8vGpEUWnqgihW9g5svizdD4QSWUQcnYI8=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(39860400002)(136003)(376002)(230922051799003)(82310400011)(1800799009)(186009)(451199024)(40470700004)(36840700001)(46966006)(84970400001)(2906002)(5660300002)(44832011)(86362001)(16576012)(41300700001)(316002)(110136005)(8936002)(31696002)(70206006)(8676002)(70586007)(54906003)(478600001)(4326008)(31686004)(6666004)(26005)(53546011)(356005)(82740400003)(81166007)(40460700003)(2616005)(83380400001)(426003)(40480700001)(336012)(36860700001)(47076005)(36756003)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 18:18:02.4083
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6f9b2c0f-694c-47b4-ecdd-08dbbf861667
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000044F0.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6544

On 8/29/23 19:19, Volodymyr Babchuk wrote:
> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> index e96d7b2b37..3cc6a96849 100644
> --- a/xen/drivers/vpci/header.c
> +++ b/xen/drivers/vpci/header.c
> @@ -161,63 +161,101 @@ static void modify_decoding(const struct pci_dev *pdev, uint16_t cmd,
> 
>  bool vpci_process_pending(struct vcpu *v)
>  {
> -    if ( v->vpci.mem )
> +    struct pci_dev *pdev = v->vpci.pdev;
> +    struct map_data data = {
> +        .d = v->domain,
> +        .map = v->vpci.cmd & PCI_COMMAND_MEMORY,
> +    };
> +    struct vpci_header *header = NULL;
> +    unsigned int i;
> +
> +    if ( !pdev )
> +        return false;
> +
> +    read_lock(&v->domain->pci_lock);
> +    header = &pdev->vpci->header;
> +    for ( i = 0; i < ARRAY_SIZE(header->bars); i++ )
>      {
> -        struct map_data data = {
> -            .d = v->domain,
> -            .map = v->vpci.cmd & PCI_COMMAND_MEMORY,
> -        };
> -        int rc = rangeset_consume_ranges(v->vpci.mem, map_range, &data);
> +        struct vpci_bar *bar = &header->bars[i];
> +        int rc;
> +
> +        if ( rangeset_is_empty(bar->mem) )
> +            continue;
> +
> +        rc = rangeset_consume_ranges(bar->mem, map_range, &data);
> 
>          if ( rc == -ERESTART )
> +        {
> +            read_unlock(&v->domain->pci_lock);
>              return true;
> +        }
> 
> -        write_lock(&v->domain->pci_lock);
> -        spin_lock(&v->vpci.pdev->vpci->lock);
> -        /* Disable memory decoding unconditionally on failure. */
> -        modify_decoding(v->vpci.pdev,
> -                        rc ? v->vpci.cmd & ~PCI_COMMAND_MEMORY : v->vpci.cmd,
> -                        !rc && v->vpci.rom_only);
> -        spin_unlock(&v->vpci.pdev->vpci->lock);
> -
> -        rangeset_destroy(v->vpci.mem);
> -        v->vpci.mem = NULL;
>          if ( rc )
> -            /*
> -             * FIXME: in case of failure remove the device from the domain.
> -             * Note that there might still be leftover mappings. While this is
> -             * safe for Dom0, for DomUs the domain will likely need to be
> -             * killed in order to avoid leaking stale p2m mappings on
> -             * failure.
> -             */
> -            vpci_deassign_device(v->vpci.pdev);
> -        write_unlock(&v->domain->pci_lock);
> +        {
> +            spin_lock(&pdev->vpci->lock);
> +            /* Disable memory decoding unconditionally on failure. */
> +            modify_decoding(pdev, v->vpci.cmd & ~PCI_COMMAND_MEMORY,
> +                            false);
> +            spin_unlock(&pdev->vpci->lock);
> +
> +            v->vpci.pdev = NULL;
> +
> +            read_unlock(&v->domain->pci_lock);
> +
> +            if ( is_hardware_domain(v->domain) )
> +            {
> +                write_lock(&v->domain->pci_lock);
> +                vpci_deassign_device(v->vpci.pdev);

s/v->vpci.pdev/pdev/ since v->vpci.pdev was assigned NULL a few lines earlier.


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 21:05:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 21:05:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609162.948067 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlbii-0005tc-1H; Wed, 27 Sep 2023 21:05:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609162.948067; Wed, 27 Sep 2023 21:05:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlbih-0005tV-Uc; Wed, 27 Sep 2023 21:05:19 +0000
Received: by outflank-mailman (input) for mailman id 609162;
 Wed, 27 Sep 2023 21:05:18 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlbig-0005tJ-TB; Wed, 27 Sep 2023 21:05:18 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlbif-0007ZS-Pm; Wed, 27 Sep 2023 21:05:17 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlbif-0008I1-6R; Wed, 27 Sep 2023 21:05:17 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlbif-0007c8-60; Wed, 27 Sep 2023 21:05:17 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=kIvd91gaWw98kUUXGyYiOfo5c6BJrALubXFyvKkwPKU=; b=UMzPhz+RTWFudOvFIPNoLjWt0s
	o1oM79OPK+UIgy6HBNE4AOrLotb59xnti4dMMILCj0O1By9OiJB5smIl/JlQbIhqONtsNWQVTFHTf
	0hezYc+GM6QXY1oI8uz0ggy2BPjoISz1pc4IML2Y7MRne2hka2PEERSEaEe4XgiCpvVQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183189-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183189: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=0e945134b680040b8613e962f586d91b6d40292d
X-Osstest-Versions-That:
    linux=50768a425b46ad7d98f6d88c22d41aa026c463cf
From: osstest service owner <osstest-admin@xenproject.org>
Date: Wed, 27 Sep 2023 21:05:17 +0000

flight 183189 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183189/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183181
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183181
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183181
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183181
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183181
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183181
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183181
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183181
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                0e945134b680040b8613e962f586d91b6d40292d
baseline version:
 linux                50768a425b46ad7d98f6d88c22d41aa026c463cf

Last test of basis   183181  2023-09-26 16:40:34 Z    1 days
Testing same since   183189  2023-09-27 04:54:33 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  David Sterba <dsterba@suse.com>
  Filipe Manana <fdmanana@suse.com>
  Jens Axboe <axboe@kernel.dk>
  Josef Bacik <josef@toxicpanda.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Qu Wenruo <wqu@suse.com>
  Steven Rostedt (Google) <rostedt@goodmis.org>
  Tejun Heo <tj@kernel.org>
  Zqiang <qiang.zhang1211@gmail.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-freebsd11-amd64                             pass    
 test-amd64-amd64-freebsd12-amd64                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-amd64-xl-vhd                                      pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

hint: The 'hooks/update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-receive' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
To xenbits.xen.org:/home/xen/git/linux-pvops.git
   50768a425b46..0e945134b680  0e945134b680040b8613e962f586d91b6d40292d -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 23:05:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 23:05:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609170.948077 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qldaT-0003QM-GX; Wed, 27 Sep 2023 23:04:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609170.948077; Wed, 27 Sep 2023 23:04:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qldaT-0003QF-Dv; Wed, 27 Sep 2023 23:04:57 +0000
Received: by outflank-mailman (input) for mailman id 609170;
 Wed, 27 Sep 2023 23:04:56 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Hjpc=FL=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qldaS-0003Q9-AU
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 23:04:56 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 437a1dc0-5d8a-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 01:04:54 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 48FEFCE1B0C;
 Wed, 27 Sep 2023 23:04:50 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0BFCCC433C7;
 Wed, 27 Sep 2023 23:04:47 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 437a1dc0-5d8a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695855889;
	bh=uiAk5ue/Br3jyQEL/OKpTejQkMNpGbaaeNPmAo+LsOM=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=J7AzHq2Bl39s/JrJSFl682BoKusQKkeVbB/Rb97oyCo9U2rVVssCgz2zSwjqUYpGK
	 xSSe/OeS6hn8POHUtz+vLRJHlHM7ShJ7tSY4Qnakx4xgDB3R0N1f4g1ONAeSA2waPi
	 K/G1BiMV5NPONTQmVhnnUzlVSxiKIAHKIaq3+vF5YiA/ykWvEFFi9jpTGkTDRHkKL1
	 doiTUca4JqCLRjP+WcTlgwc8f/lxuQAkco1f3ybzy/1GhoHeDHB8wVqai32Dw6bAHT
	 Ak9ylOt6rvHYzyIqEsVnfk2j0rKU3IXPxmi9YRWza7J1lkoT7tv7ITf6ScJm/HEnpD
	 TSFHor3wY6b8A==
Date: Wed, 27 Sep 2023 16:04:46 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Henry Wang <Henry.Wang@arm.com>
cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
    Julien Grall <julien@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>, 
    "sstabellini@kernel.org" <sstabellini@kernel.org>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    Jan Beulich <jbeulich@suse.com>, "jgross@suse.com" <jgross@suse.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Anthony PERARD <anthony.perard@citrix.com>, 
    "community.manager@xenproject.org" <community.manager@xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about code freeze
In-Reply-To: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
Message-ID: <alpine.DEB.2.22.394.2309271603590.1403502@ubuntu-linux-20-04-desktop>
References: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Mon, 25 Sep 2023, Henry Wang wrote:
> 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for staging | 6a47ba2f
> 
> https://marc.info/?l=xen-devel&m=168312468808977
> 
> https://marc.info/?l=xen-devel&m=168312687610283

For this issue I suggest to go with this fix unless someone can produce
a better fix before RC2. I don't think we should cut RC2 with this issue
unsolved.

---
[PATCH] xenstored: reset domain connection before XENSTORE_CONNECTED

From: Julien Grall <julien@xen.org>

xenstored will set interface->connection to XENSTORE_CONNECTED before
finalizing the connection which can cause initialization errors on the
guest side. Make sure to call domain_conn_reset(domain) before setting
XENSTORE_CONNECTED.

Signed-off-by: Julien Grall <julien@xen.org>
[stefano: rebase, commit message]
Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>

diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c
index a6cd199fdc..9cd6678015 100644
--- a/tools/xenstored/domain.c
+++ b/tools/xenstored/domain.c
@@ -989,6 +989,7 @@ static struct domain *introduce_domain(const void *ctx,
 		talloc_steal(domain->conn, domain);
 
 		if (!restore) {
+			domain_conn_reset(domain);
 			/* Notify the domain that xenstore is available */
 			interface->connection = XENSTORE_CONNECTED;
 			xenevtchn_notify(xce_handle, domain->port);
@@ -1031,8 +1032,6 @@ int do_introduce(const void *ctx, struct connection *conn,
 	if (!domain)
 		return errno;
 
-	domain_conn_reset(domain);
-
 	send_ack(conn, XS_INTRODUCE);
 
 	return 0;


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 23:20:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 23:20:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609176.948088 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qldpG-0006Bh-SL; Wed, 27 Sep 2023 23:20:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609176.948088; Wed, 27 Sep 2023 23:20:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qldpG-0006Ba-Pd; Wed, 27 Sep 2023 23:20:14 +0000
Received: by outflank-mailman (input) for mailman id 609176;
 Wed, 27 Sep 2023 23:20:13 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Hjpc=FL=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qldpF-0006BU-Fu
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 23:20:13 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 66e8cacb-5d8c-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 01:20:12 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 54056B818F3;
 Wed, 27 Sep 2023 23:20:09 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 66D36C433C7;
 Wed, 27 Sep 2023 23:20:07 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 66e8cacb-5d8c-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695856808;
	bh=GgRKXEkiIvH3XdyU4PPmjhD4prwZBp3rGOtG2KtWupY=;
	h=From:To:Cc:Subject:Date:From;
	b=VEuOWgL7silRe1sIYKAN20WIb3bgLG86g7N/iOH2hvDeNbmYERDxfmahtTghxYy8+
	 kFCzGi6CP/Z4Jg+b9NUMY3egefs9kkEpBynqVWyRXv0jwEMLYeUIAU3nVxP0s42I6/
	 tmUyQ6Nj2CIKWcaMkrFVwBCo0ryU7+e7XigRT1DnYbwQaCkwla/Af9AxfGlOSlApkL
	 Zlo87PF/RWJy4faiGjOIDnIQVMBQIRELA6dCfFMyTJXB3r1D9ZvFXZutCmvx7Q9CM8
	 cyMc/phxG4mhsJtErHcu7AjpcXGX1AJ23iirtCkjMap8k8tGmD4BVIH6ZIcD0Cqc60
	 WpiyLE2gmz3fg==
From: Stefano Stabellini <sstabellini@kernel.org>
To: xen-devel@lists.xenproject.org
Cc: andrew.cooper3@citrix.com,
	jbeulich@suse.com,
	george.dunlap@citrix.com,
	julien@xen.org,
	sstabellini@kernel.org,
	bertrand.marquis@arm.com,
	roger.pau@citrix.com,
	wl@xen.org,
	Stefano Stabellini <stefano.stabellini@amd.com>
Subject: [PATCH v3] SUPPORT: downgrade Physical CPU Hotplug to Experimental
Date: Wed, 27 Sep 2023 16:20:04 -0700
Message-Id: <20230927232004.1981595-1-sstabellini@kernel.org>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Stefano Stabellini <stefano.stabellini@amd.com>

The feature is not commonly used, and we don't have hardware to test it,
not in OSSTest, not in Gitlab, and not even ad-hoc manually by community
members. We could use QEMU to test it, but even that it is known not to
work.

Also take the opportunity to rename the feature to "ACPI CPU Hotplug"
for clarity.

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
---
Changes in v3:
- add note to CHANGELOG.md
---
 CHANGELOG.md | 2 ++
 SUPPORT.md   | 4 ++--
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 24636b8eaf..e33cf4e1b1 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -13,6 +13,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
    known user doesn't use it properly, leading to in-guest breakage.
  - The "dom0" option is now supported on Arm and "sve=" sub-option can be used
    to enable dom0 guest to use SVE/SVE2 instructions.
+ - Physical CPU Hotplug downgraded to Experimental and renamed "ACPI CPU
+   Hotplug" for clarity
 
 ### Added
  - On x86, support for features new in Intel Sapphire Rapids CPUs:
diff --git a/SUPPORT.md b/SUPPORT.md
index 3461f5cf2f..3472b6edfa 100644
--- a/SUPPORT.md
+++ b/SUPPORT.md
@@ -46,9 +46,9 @@ For the Cortex A77 r0p0 - r1p0, see Errata 1508412.
 
 ## Host hardware support
 
-### Physical CPU Hotplug
+### ACPI CPU Hotplug
 
-    Status, x86: Supported
+    Status, x86: Experimental
 
 ### Physical Memory
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 23:51:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 23:51:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609182.948097 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qleJT-0002Qv-6c; Wed, 27 Sep 2023 23:51:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609182.948097; Wed, 27 Sep 2023 23:51:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qleJT-0002Qo-3Y; Wed, 27 Sep 2023 23:51:27 +0000
Received: by outflank-mailman (input) for mailman id 609182;
 Wed, 27 Sep 2023 23:51:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=x8T5=FL=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qleJR-0002O2-2Y
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 23:51:25 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on20630.outbound.protection.outlook.com
 [2a01:111:f400:fe13::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c34ad8b6-5d90-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 01:51:23 +0200 (CEST)
Received: from AS9P194CA0026.EURP194.PROD.OUTLOOK.COM (2603:10a6:20b:46d::34)
 by DB9PR08MB7675.eurprd08.prod.outlook.com (2603:10a6:10:37e::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 23:51:15 +0000
Received: from AM7EUR03FT048.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:46d:cafe::93) by AS9P194CA0026.outlook.office365.com
 (2603:10a6:20b:46d::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21 via Frontend
 Transport; Wed, 27 Sep 2023 23:51:15 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT048.mail.protection.outlook.com (100.127.140.86) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.22 via Frontend Transport; Wed, 27 Sep 2023 23:51:14 +0000
Received: ("Tessian outbound d219f9a4f5c9:v211");
 Wed, 27 Sep 2023 23:51:13 +0000
Received: from 9119fb056a23.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 2734ACB6-748B-4181-ABA7-C9D8BFB9968B.1; 
 Wed, 27 Sep 2023 23:51:02 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9119fb056a23.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 27 Sep 2023 23:51:02 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DBBPR08MB6105.eurprd08.prod.outlook.com (2603:10a6:10:20d::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Wed, 27 Sep
 2023 23:51:00 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 23:50:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c34ad8b6-5d90-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZBuOaCTR45stCCxIoLUYSUEQxxPFwRRQ+18KGY0xOh8=;
 b=FX6pQkEiBAB7fKR1P6NBikKYYFGr6FsHq4cr17oGLQrywshH3CEFJaJ2ZQorTuMVGpUhQsFxpzaFAZu4zcigONZ8n9WWVLXm6287HeuLQfINwVfPP6u9bB7Wz+/dBuYrACNCxFMAfbbvggNP4Cu2PNQhRDJs4N5acxFLZp/Y6Mw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 2769e6d640be69f4
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=T9gs7YIuoJRIN40ILIrkPMNsFt2mLmv863KoIXjmv/s15tRD+HK5Qa+g0EFoLyHVMrFYkuFETFsITGkXM+L40J2viLR7LSQ0BI2zfKTsiu/LHQzL34PrYXMjBg4XITChmx1Kxb4Fw12kaeZQJgAHFKGZTStdxMTr0CHH1/KLnchh1PNpSWxq5aDccpOg2N+x5zi6yTRJiXPma/Gx175+e+ybBd5NVhRCoCTmtj18YyPKoteB1lMUxwdLoQQBxA6vMWc+sPBnHvfzzpr30Bsl8ZzZ24ZdRh81bGk/zVAXdbCpX99/rQMpg9hmXoYavcGSfFUjY+ETiuZqrNog70RDqQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZBuOaCTR45stCCxIoLUYSUEQxxPFwRRQ+18KGY0xOh8=;
 b=ZhSb9CoPAhCgHCyEKr0nqW58Qz3QtcEMBWDEQhR2NnuMqRU/4W0KOoWQU3RUIS4EGRMoOk+4xgLOn1U4AWEJte0hDvxmvllmhUr8g+jmfvW6vdlQOIJO+xPK+y058ahZbSe6X14X57LPeFOKAtbhBf7/yjq3qD4FhC1aCciBb6EGgJ6coNjP6vm4spaJnsguYHfuWDRJrgfSvvMop/8DqswQ6q14FFqv24Ta5N+7sgKuamy6MAoEcKnpIKgFXgKBmkBXOU6oe5Bzn7W4MmKjyq/Epj1Bx3lGJ80kQQdBkZBMdG8qPoAs4KR7V2WxrdRq0TAJbLHu+pgDUdunjsd10Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZBuOaCTR45stCCxIoLUYSUEQxxPFwRRQ+18KGY0xOh8=;
 b=FX6pQkEiBAB7fKR1P6NBikKYYFGr6FsHq4cr17oGLQrywshH3CEFJaJ2ZQorTuMVGpUhQsFxpzaFAZu4zcigONZ8n9WWVLXm6287HeuLQfINwVfPP6u9bB7Wz+/dBuYrACNCxFMAfbbvggNP4Cu2PNQhRDJs4N5acxFLZp/Y6Mw=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Jan Beulich <jbeulich@suse.com>, George Dunlap
	<george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, "roger.pau@citrix.com" <roger.pau@citrix.com>,
	"wl@xen.org" <wl@xen.org>, Stefano Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] SUPPORT: downgrade Physical CPU Hotplug to
 Experimental
Thread-Topic: [PATCH v3] SUPPORT: downgrade Physical CPU Hotplug to
 Experimental
Thread-Index: AQHZ8Zk4q0YFU+4IqkCxx1TGfRQp3bAvV64A
Date: Wed, 27 Sep 2023 23:50:59 +0000
Message-ID: <F9C3C613-B09C-478F-99C0-46A5A80DFDF1@arm.com>
References: <20230927232004.1981595-1-sstabellini@kernel.org>
In-Reply-To: <20230927232004.1981595-1-sstabellini@kernel.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DBBPR08MB6105:EE_|AM7EUR03FT048:EE_|DB9PR08MB7675:EE_
X-MS-Office365-Filtering-Correlation-Id: 91adc0cf-cee3-4694-93be-08dbbfb4a248
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 4XoC5zxBXzJvQmUCHPlBv+mtOTGrc27Wl34oRzK07zZulPU9RJ8j2IPEc5fXLmi55RmUEypfmCMJZNQzbZ9ldLwPgG6+mhprjgriV1deDVZMZJrxw6GjEGNQniyYeuZDDVzEC/Ls1cmcesTdYoAgkap0vkqRAojW5FTNpz09us9uJUv2T7lYHlqWQLaYQX/09YjQs4AIMVTyZrKw3KPVnfW9BYI6XcITpgy7WflxnlYz9jx3s/9Ol/M1DNusP7N75hkbXgMSjzioksCleF8It4jtom5CWRcSE+NIzOWH2UJ+GA8QWQt/AlJXfJonDs33cFPoO+Au/+oe3KuNyKB2sPKOVAUy5RU4xVO087HdK4YSCfmy0mefmn/3HirOsJE1p0T20cW4Uikfg0NDAiTCxg3XV699ysh9rZ0ji61auUKKxARpRYJr68YQEWEgkcavv24R9zwpucqh7e5LiwEIRY2Av4KCb6qAvBC9fLwyzr2QBNVwW+4JqZYiU3iFzR8Uf9iCwDO+gIEKhRIYFenhEUrlnlWoSLVv78R579pEDaNLgS2hSnfGu58rYgzGvFGYrAuvQxnA8X0ttx+lUH91qZ6PyT2Q5WBfGNZYqx8JGj8u/BafhWb6d3xqwa3y64ZP2H/hAgF+Ld0ZCbAmoYsoHg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(366004)(396003)(39860400002)(376002)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(36756003)(2616005)(26005)(478600001)(38070700005)(71200400001)(53546011)(38100700002)(6486002)(6506007)(6512007)(33656002)(66556008)(66946007)(316002)(41300700001)(76116006)(91956017)(6916009)(66476007)(64756008)(66446008)(54906003)(5660300002)(8676002)(4326008)(8936002)(4744005)(86362001)(122000001)(2906002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <8ACCA3DBA41F7C458C772876C4ACE3B3@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6105
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT048.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	e85aab7a-0d85-457d-19bc-08dbbfb499b0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	eozKehyndhoYEReKkB4b/ofSVGNMIXodbD3yJQjrDqp7K4MvEeXcWX/d8NqQJemYt0BMJodJTkylpFuGAWIga8J8Ns8abcAzc6HVHZXfb9o0N3kHV0acnuycr+N9E0cMONhny4Nn0zfk8MOKuu/bAob2MKMHpo0RZCIRKJJEMcxOHH+4XucJ0zn1ywk3VaSx/LLpfPhWvlnZEKPYly4ak3ubn4lSUIhmzA8GLFFipGjPy31IlNArkaVjOjesBltqpvESb2jYUtd/+pcQWqEHJdt0nk4QadOGpm3cXSfaSFi55ZvT7RqZtvNrIworQvtATIZh0z3Akpchm3bSWKO1qG4RSpGQdHOHKgCSi5il6VPpFeHFz2Fe3THFtbGDb5fgY/ELC9uZ36WCGJ4J2ImeFwS1bgP8qm7W/kL3k4B+QkHMgfgFwDQIFC6Fitnk9899z/EHRBUnPhj4pcWgWq0z1foVhWEfoXRWzfnv2hFY6KCH7A2TuhtI2nW+cXE2w5LPOqv6Z0vf2iXNPxBD/RYsnx5aO4c8qlZ3PbZub0jHdN2/YM26H827YYtkx5gMKlQHpP3sQ+xrTpiFVRZfE7XvUVzdjPU/JfjRSmcsJAoHf8cUheIBaQFU6iabx5D8HSQZFXx7zFranmCvcVR106nHXee30CcnJ1vt+HkPvYkz5z0bNLC5fz+PZwmgLCwbeCQRuBMEL+qYsb85qXjTAzP2LqiVXLgUCjCeVCA2kXybjnDHbha6wtmoJ0nBf2r2h8Nc
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(376002)(136003)(346002)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(82310400011)(36840700001)(46966006)(40470700004)(41300700001)(6862004)(8936002)(2616005)(4326008)(8676002)(36860700001)(70586007)(54906003)(316002)(336012)(26005)(70206006)(86362001)(4744005)(2906002)(40460700003)(47076005)(356005)(81166007)(478600001)(82740400003)(40480700001)(33656002)(53546011)(36756003)(6486002)(6512007)(6506007)(5660300002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 23:51:14.0116
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 91adc0cf-cee3-4694-93be-08dbbfb4a248
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT048.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7675

Hi Stefano,

> On Sep 28, 2023, at 07:20, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> From: Stefano Stabellini <stefano.stabellini@amd.com>
>=20
> The feature is not commonly used, and we don't have hardware to test it,
> not in OSSTest, not in Gitlab, and not even ad-hoc manually by community
> members. We could use QEMU to test it, but even that it is known not to
> work.
>=20
> Also take the opportunity to rename the feature to "ACPI CPU Hotplug"
> for clarity.
>=20
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry



From xen-devel-bounces@lists.xenproject.org Wed Sep 27 23:52:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 23:52:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609185.948107 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qleKi-00030P-GD; Wed, 27 Sep 2023 23:52:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609185.948107; Wed, 27 Sep 2023 23:52:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qleKi-00030I-DN; Wed, 27 Sep 2023 23:52:44 +0000
Received: by outflank-mailman (input) for mailman id 609185;
 Wed, 27 Sep 2023 23:52:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=KiVY=FL=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qleKh-0002zs-GQ
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 23:52:43 +0000
Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com
 [2a00:1450:4864:20::32c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f2b814ef-5d90-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 01:52:42 +0200 (CEST)
Received: by mail-wm1-x32c.google.com with SMTP id
 5b1f17b1804b1-405361bba99so120339875e9.2
 for <xen-devel@lists.xenproject.org>; Wed, 27 Sep 2023 16:52:42 -0700 (PDT)
Received: from [192.168.1.10] (host-92-12-62-212.as13285.net. [92.12.62.212])
 by smtp.gmail.com with ESMTPSA id
 d29-20020adfa41d000000b003197869bcd7sm13021847wra.13.2023.09.27.16.52.40
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Wed, 27 Sep 2023 16:52:41 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f2b814ef-5d90-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695858762; x=1696463562; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:from:to:cc:subject:date:message-id:reply-to;
        bh=K74mjmEvgSGZBxH98NSZ2fJL7O7MrHJ5pRZ+4flV+hI=;
        b=cpsu8aJgK5CsokaPgGox80wAaCU74Mll4JjqNg58mFV4OUbKlp9XoUWg0rrM2zzgD2
         8lmozD0S0jjYRBJpTd9fQFMGUTW3GEM+f7+ZvXmyS6vuZRY+djkHFoZkNhGTJpL0ERTl
         oESyO9W1wKa6yA1gUULe0eZTyNZ1GFu/kTX+Y=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695858762; x=1696463562;
        h=content-transfer-encoding:in-reply-to:references:cc:to
         :content-language:subject:from:user-agent:mime-version:date
         :message-id:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=K74mjmEvgSGZBxH98NSZ2fJL7O7MrHJ5pRZ+4flV+hI=;
        b=jKqdSE3ImH1urlgkvAI89oZ32v87ee075LIQlFWKDrcb3jvFwwWS5e9k9+0wXbCGb/
         nVV1s9Q2rwti9NPLawwvjCOeVJL17BgN3sEFuqDc0jb2YVC/pd5ZBNMsjEtgDyHOcf0k
         rlMDzdHJ7JPp284fblxQWpWQO9rCBIHCfjzgND/2+KPE+gFQtVP8mXBiOg1p4OU7IZeD
         X7EtiyrdUPD4X3446425UXdHLXT1FGTC36GNjdeGdWcm4Y4m15pZH3gnkJ5oq+HkPso7
         myZeiZv1+QYzSWPNKK5sa0ArVlp2EmsbxRRxwbgXf2NMj5rPkEOBZdGa6p5wRfOkV3P/
         a7Cw==
X-Gm-Message-State: AOJu0YyQKXV/wcOS7xUhhAgp9Ae50PF2ijxy6GSV8vOVS9z4sTlsordF
	nlm5K8dPMnLnS6JQG7gklJ1gNQ==
X-Google-Smtp-Source: AGHT+IHN6/ZlARfR3fPMWQum55Zi9m6EL9BZdMQuVrcfMH7L3m05JV2KD/CqiWqTQNAZR/iM0JYu0Q==
X-Received: by 2002:adf:ec05:0:b0:323:1df0:c039 with SMTP id x5-20020adfec05000000b003231df0c039mr2901417wrn.56.1695858762022;
        Wed, 27 Sep 2023 16:52:42 -0700 (PDT)
Message-ID: <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
Date: Thu, 28 Sep 2023 00:52:34 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: Xen 4.18 release: Reminder about code freeze
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 Henry Wang <Henry.Wang@arm.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Julien Grall <julien@xen.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>,
 Jan Beulich <jbeulich@suse.com>, "jgross@suse.com" <jgross@suse.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Anthony PERARD <anthony.perard@citrix.com>,
 "community.manager@xenproject.org" <community.manager@xenproject.org>
References: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com>
 <alpine.DEB.2.22.394.2309271603590.1403502@ubuntu-linux-20-04-desktop>
In-Reply-To: <alpine.DEB.2.22.394.2309271603590.1403502@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 28/09/2023 12:04 am, Stefano Stabellini wrote:
> On Mon, 25 Sep 2023, Henry Wang wrote:
>> 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for staging | 6a47ba2f
>>
>> https://marc.info/?l=xen-devel&m=168312468808977
>>
>> https://marc.info/?l=xen-devel&m=168312687610283
> For this issue I suggest to go with this fix unless someone can produce
> a better fix before RC2. I don't think we should cut RC2 with this issue
> unsolved.
>
> ---
> [PATCH] xenstored: reset domain connection before XENSTORE_CONNECTED
>
> From: Julien Grall <julien@xen.org>
>
> xenstored will set interface->connection to XENSTORE_CONNECTED before
> finalizing the connection which can cause initialization errors on the
> guest side. Make sure to call domain_conn_reset(domain) before setting
> XENSTORE_CONNECTED.
>
> Signed-off-by: Julien Grall <julien@xen.org>
> [stefano: rebase, commit message]
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> Acked-by: Stefano Stabellini <sstabellini@kernel.org>

No - this hasn't got any better at fixing the problem than the last time
it failed to fix the problem.

You cannot have 3 entities in parallel fight for control in a 2-way
communication channel.

Failure to understand this is what created the problem to begin with.

You took an existing ABI from oxenstored, and implemented it
incompatibly in other entities, had init-dom0less corrupt a shared comms
buffer that it isn't the producer or consumer of, and added bug in Linux
because you didn't write down the behaviour you wanted, let alone the
behaviour you actually provided.

Stop tinkering in the hope that it hides the problem.  You're only
making it harder to fix properly.

Tell me, when was the last time this failed...

~Andrew


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 23:52:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 23:52:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609186.948117 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qleKj-0003FV-NA; Wed, 27 Sep 2023 23:52:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609186.948117; Wed, 27 Sep 2023 23:52:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qleKj-0003FO-Ju; Wed, 27 Sep 2023 23:52:45 +0000
Received: by outflank-mailman (input) for mailman id 609186;
 Wed, 27 Sep 2023 23:52:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Hjpc=FL=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qleKi-0002zs-6P
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 23:52:44 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f2f0bdd7-5d90-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 01:52:42 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 50E1FB81907;
 Wed, 27 Sep 2023 23:52:42 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4F841C433C9;
 Wed, 27 Sep 2023 23:52:40 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f2f0bdd7-5d90-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695858761;
	bh=6nHPpORlUP7QGEbOcj+UStECZkv7qzsx8Tsiz3wPVII=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=WqK1eSnUAknxHewh5QiYxrlaXNUP1me4ZdBIdUUenOiUMmsfzDUbVxkkC+2mz5U2m
	 eyoAn4ybCKrMoaSIGyhZ0nx+rAEeduAOdRCHhsESj1QNnmU+osY8fjPTsfJkExUALb
	 diCHC0m5/UrmwgcQ4aXuk8YaZWUpsaeOANFF8Aq0i2v1KsXLGj0TY/4OVHy3rsIzQz
	 Q1aT+/49BJFEdkP0NEWaYdvBYkWSEXuIEwdIaO3PieD7V9jkHjqwlLNXnNNv4Trrfu
	 CySZQm7kuZvz3SwT01xrD/SjDesmCNEepdUY0kE26f1Wu2hrzriOVGo/gDIIyu41o1
	 BjgpzCDiH462g==
Date: Wed, 27 Sep 2023 16:52:38 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Stefano Stabellini <sstabellini@kernel.org>
cc: xen-devel@lists.xenproject.org, jbeulich@suse.com, 
    andrew.cooper3@citrix.com, roger.pau@citrix.com, julien@xen.org, 
    george.dunlap@citrix.com, bertrand.marquis@arm.com, 
    roberto.bagnara@bugseng.com, nicola.vetrini@bugseng.com, 
    Stefano Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] docs/misra: add 14.3
In-Reply-To: <20230908202723.1641469-1-sstabellini@kernel.org>
Message-ID: <alpine.DEB.2.22.394.2309271649120.1403502@ubuntu-linux-20-04-desktop>
References: <20230908202723.1641469-1-sstabellini@kernel.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

Hi Henry,

This patch is now acked. Should it go in 4.18?

In terms of risk of breaking, it is zero as nothing builds or runs based
on this document.

At the same time, the benefit is also low because the main value of this
document is for future coding changes that would be too late now for
4.18. So the benefits of committing it now are ease of keeping track of
the change and positive PR when we make the 4.18 release and we talk
about the total number of MISRA C rules we adopted.



On Fri, 8 Sep 2023, Stefano Stabellini wrote:
> From: Stefano Stabellini <stefano.stabellini@amd.com>
> 
> Add 14.3, with project-wide deviations.
> 
> Also take the opportunity to clarify that parameters of function pointer
> types are expected to have names (Rule 8.2).
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> ---
> Changes in v3:
> - add ,
> - add switch(sizeof(...)) and switch(offsetof(...))
> ---
>  docs/misra/rules.rst | 15 ++++++++++++++-
>  1 file changed, 14 insertions(+), 1 deletion(-)
> 
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 34916e266a..ac76e20a9c 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -234,7 +234,8 @@ maintainers if you want to suggest a change.
>     * - `Rule 8.2 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_08_02.c>`_
>       - Required
>       - Function types shall be in prototype form with named parameters
> -     -
> +     - Clarification: both function and function pointers types shall
> +       have named parameters.
>  
>     * - `Rule 8.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_08_03.c>`_
>       - Required
> @@ -385,6 +386,18 @@ maintainers if you want to suggest a change.
>       - A loop counter shall not have essentially floating type
>       -
>  
> +   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_03.c>`_
> +     - Required
> +     - Controlling expressions shall not be invariant
> +     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
> +       checks, and other constructs that are detected as errors by MISRA
> +       C scanners, managing the configuration of a MISRA C scanner for
> +       this rule would be unmanageable. Thus, this rule is adopted with
> +       a project-wide deviation on if, ?:, switch(sizeof(...)), and
> +       switch(offsetof(...)) statements.
> +
> +       while(0) and while(1) and alike are allowed.
> +
>     * - `Rule 16.7 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_16_07.c>`_
>       - Required
>       - A switch-expression shall not have essentially Boolean type
> -- 
> 2.25.1
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 23:53:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 23:53:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609192.948128 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qleLZ-00043L-Vn; Wed, 27 Sep 2023 23:53:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609192.948128; Wed, 27 Sep 2023 23:53:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qleLZ-00043E-Sx; Wed, 27 Sep 2023 23:53:37 +0000
Received: by outflank-mailman (input) for mailman id 609192;
 Wed, 27 Sep 2023 23:53:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Hjpc=FL=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qleLY-0003cO-67
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 23:53:36 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 10f4975c-5d91-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 01:53:34 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id AD75B619E8;
 Wed, 27 Sep 2023 23:53:32 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 080F7C433C7;
 Wed, 27 Sep 2023 23:53:30 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 10f4975c-5d91-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695858812;
	bh=iKQSm+yuzdevAwQLBdmpZzt613vfc4wD8oRwVjtAE+Y=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=AOBARUHZ+mFAAFSFZZCqRpFsYXs5K2Jwsjb/bKXqj162khQ25hbIHA2ZltFYcXeQO
	 LJQv0ly4dM91L9S5wgMEeiXSyf6YL01PC8YLVYfCEmdQkzihd+rgpWVov8uph8/KEK
	 4+5Hy/U0LLcDFbibe9wRdNBJ1DvCrqX6dqrEBdJyReJgrXddHODXZcVPv06fLSUNDt
	 TroNp9vgPJSpliY8bhfLYrKd4K+QwVDznEz44v18MLMwGYRBC9YYYPXJbDbh44Xwtj
	 EtSzTxfJTBWaZbhe+AC1uUOM8EHbLnpElnheIeWd0IJrk1UgD4a0IA5CboANC5V0RE
	 Ltyfr6MbUOckA==
Date: Wed, 27 Sep 2023 16:53:29 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Henry.Wang@arm.com
cc: xen-devel@lists.xenproject.org, jbeulich@suse.com, 
    andrew.cooper3@citrix.com, roger.pau@citrix.com, julien@xen.org, 
    george.dunlap@citrix.com, bertrand.marquis@arm.com, 
    roberto.bagnara@bugseng.com, nicola.vetrini@bugseng.com, 
    Stefano Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] docs/misra: add 14.3
In-Reply-To: <alpine.DEB.2.22.394.2309271649120.1403502@ubuntu-linux-20-04-desktop>
Message-ID: <alpine.DEB.2.22.394.2309271653110.1403502@ubuntu-linux-20-04-desktop>
References: <20230908202723.1641469-1-sstabellini@kernel.org> <alpine.DEB.2.22.394.2309271649120.1403502@ubuntu-linux-20-04-desktop>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

Actually adding Henry

On Wed, 27 Sep 2023, Stefano Stabellini wrote:
> Hi Henry,
> 
> This patch is now acked. Should it go in 4.18?
> 
> In terms of risk of breaking, it is zero as nothing builds or runs based
> on this document.
> 
> At the same time, the benefit is also low because the main value of this
> document is for future coding changes that would be too late now for
> 4.18. So the benefits of committing it now are ease of keeping track of
> the change and positive PR when we make the 4.18 release and we talk
> about the total number of MISRA C rules we adopted.
> 
> 
> 
> On Fri, 8 Sep 2023, Stefano Stabellini wrote:
> > From: Stefano Stabellini <stefano.stabellini@amd.com>
> > 
> > Add 14.3, with project-wide deviations.
> > 
> > Also take the opportunity to clarify that parameters of function pointer
> > types are expected to have names (Rule 8.2).
> > 
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> > ---
> > Changes in v3:
> > - add ,
> > - add switch(sizeof(...)) and switch(offsetof(...))
> > ---
> >  docs/misra/rules.rst | 15 ++++++++++++++-
> >  1 file changed, 14 insertions(+), 1 deletion(-)
> > 
> > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> > index 34916e266a..ac76e20a9c 100644
> > --- a/docs/misra/rules.rst
> > +++ b/docs/misra/rules.rst
> > @@ -234,7 +234,8 @@ maintainers if you want to suggest a change.
> >     * - `Rule 8.2 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_08_02.c>`_
> >       - Required
> >       - Function types shall be in prototype form with named parameters
> > -     -
> > +     - Clarification: both function and function pointers types shall
> > +       have named parameters.
> >  
> >     * - `Rule 8.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_08_03.c>`_
> >       - Required
> > @@ -385,6 +386,18 @@ maintainers if you want to suggest a change.
> >       - A loop counter shall not have essentially floating type
> >       -
> >  
> > +   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_14_03.c>`_
> > +     - Required
> > +     - Controlling expressions shall not be invariant
> > +     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
> > +       checks, and other constructs that are detected as errors by MISRA
> > +       C scanners, managing the configuration of a MISRA C scanner for
> > +       this rule would be unmanageable. Thus, this rule is adopted with
> > +       a project-wide deviation on if, ?:, switch(sizeof(...)), and
> > +       switch(offsetof(...)) statements.
> > +
> > +       while(0) and while(1) and alike are allowed.
> > +
> >     * - `Rule 16.7 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_16_07.c>`_
> >       - Required
> >       - A switch-expression shall not have essentially Boolean type
> > -- 
> > 2.25.1
> > 
> 


From xen-devel-bounces@lists.xenproject.org Wed Sep 27 23:57:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 27 Sep 2023 23:57:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609197.948139 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlePa-0004ot-L1; Wed, 27 Sep 2023 23:57:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609197.948139; Wed, 27 Sep 2023 23:57:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlePa-0004om-Gh; Wed, 27 Sep 2023 23:57:46 +0000
Received: by outflank-mailman (input) for mailman id 609197;
 Wed, 27 Sep 2023 23:57:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=x8T5=FL=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qlePY-0004og-Fr
 for xen-devel@lists.xenproject.org; Wed, 27 Sep 2023 23:57:44 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2043.outbound.protection.outlook.com [40.107.7.43])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a54b9c95-5d91-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 01:57:42 +0200 (CEST)
Received: from AS9PR06CA0632.eurprd06.prod.outlook.com (2603:10a6:20b:46f::6)
 by VI1PR08MB10123.eurprd08.prod.outlook.com (2603:10a6:800:1c7::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep
 2023 23:57:03 +0000
Received: from AM7EUR03FT040.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:46f:cafe::d4) by AS9PR06CA0632.outlook.office365.com
 (2603:10a6:20b:46f::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21 via Frontend
 Transport; Wed, 27 Sep 2023 23:57:03 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT040.mail.protection.outlook.com (100.127.140.128) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.22 via Frontend Transport; Wed, 27 Sep 2023 23:57:02 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Wed, 27 Sep 2023 23:57:02 +0000
Received: from 74008df298ac.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 D6078077-EF64-4ABD-8B14-7F06238428F9.1; 
 Wed, 27 Sep 2023 23:56:50 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 74008df298ac.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Wed, 27 Sep 2023 23:56:50 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DBBPR08MB6105.eurprd08.prod.outlook.com (2603:10a6:10:20d::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Wed, 27 Sep
 2023 23:56:47 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Wed, 27 Sep 2023
 23:56:47 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a54b9c95-5d91-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZtCkp7ugLd4B/i5tixAu80fbaUEAWEUh/fHUs/BFhYc=;
 b=0v6sN2BnU4X+tbIaN5Vgf9oT+XIQTmG56uA/2PNNP9mWnMww2KFuBQWEMP90IHLrIyMDFJuc2kqTgU3dOYtQfZBu8DW12l/bp3IVV4OBFo6J6x7bwYDUa7RseGhH8w/cxpvs+uogg1DDtVb/RPjubFPvWKAdcQydgfuppEoyShk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: cfd6e7def60a48df
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=d4qgoDKE4/Visj0j7e1V9GE1kWf1XrEJayxrTzxpH7Uhrni8eZv1Q3bnOlWZoL7rmjLTMzouFXJ9WTotciWCsS1n0Sx21V5wA8/RSpZbO7LyOzL0citaL6N/vEyKicZFvGWa1ow4DPcXkmS4vxw9xubklarBbmpWGseCYiq83d8nUOXUzL3dU4SlZDVzEZw4spZ38jgKBkseu2UcRCJbiXIxhmPIpqxJrLK9iAQznpx1SKNCPr9Zn/CoVyJQo+FYkattm9tubnsPtaM1KliuMn4TWtB3xxGjUOUmygMJ6bLVyIVhW3fYsNsNdIhkCKhnq74X4kZfvtq1SG7X8mwviQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ZtCkp7ugLd4B/i5tixAu80fbaUEAWEUh/fHUs/BFhYc=;
 b=TwOUgBa6w/lzZ4afgOayLKvNQt0SOAqpCxSmeUQuZzNeMYfIXc4cp35Pwe1JiNAWGWcykveI+m3QA0zaSdoy0MzyRFsfBK5JneZSopln1VDpkYbehBHhSOgTTkp8C+/HFLcGZWspXz9oNPMVsiPZnkhSyAq0KjSmxHXPaY2aAYMpifAnOb2I9g+gA2/i8FxA+e5FOb+AgNMS5XuCu2A9aNn/QvmmYWmP9/e6UHlgbB7fZ0pN9+jEewUOZzcG4jrsWJP3dVBgyQBKbcSrqWhbIi6zep6lWszQdh+uD9DtVc8QlE94Q2RtqsE+bdJg0cyLMDv1JkUKHoJ+plde+BvSqQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ZtCkp7ugLd4B/i5tixAu80fbaUEAWEUh/fHUs/BFhYc=;
 b=0v6sN2BnU4X+tbIaN5Vgf9oT+XIQTmG56uA/2PNNP9mWnMww2KFuBQWEMP90IHLrIyMDFJuc2kqTgU3dOYtQfZBu8DW12l/bp3IVV4OBFo6J6x7bwYDUa7RseGhH8w/cxpvs+uogg1DDtVb/RPjubFPvWKAdcQydgfuppEoyShk=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	=?iso-8859-1?Q?Roger_Pau_Monn=E9?= <roger.pau@citrix.com>, "julien@xen.org"
	<julien@xen.org>, "george.dunlap@citrix.com" <george.dunlap@citrix.com>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>, "roberto.bagnara@bugseng.com"
	<roberto.bagnara@bugseng.com>, "nicola.vetrini@bugseng.com"
	<nicola.vetrini@bugseng.com>, Stefano Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] docs/misra: add 14.3
Thread-Topic: [PATCH v3] docs/misra: add 14.3
Thread-Index: AQHZ4pLvPiwH8j4chkujiNUVRiOVPbAvdj0AgAAAPYCAAADfAA==
Date: Wed, 27 Sep 2023 23:56:47 +0000
Message-ID: <56C2CF5B-0021-4F22-80A3-3EB1F2BC6756@arm.com>
References: <20230908202723.1641469-1-sstabellini@kernel.org>
 <alpine.DEB.2.22.394.2309271649120.1403502@ubuntu-linux-20-04-desktop>
 <alpine.DEB.2.22.394.2309271653110.1403502@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309271653110.1403502@ubuntu-linux-20-04-desktop>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DBBPR08MB6105:EE_|AM7EUR03FT040:EE_|VI1PR08MB10123:EE_
X-MS-Office365-Filtering-Correlation-Id: c8102ea0-c4e2-4424-bf14-08dbbfb5723d
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 mQ5sWzgMxyYOQUFTdF/FzBjbg9R7eZvvFrgkYyTqyodVUvuSNr6smlPfUZt+6fheQ+YWTLXk6ggzERtP7oCj8hIDeu/foQYHXzNyMQrwfJTI3zz72c4WTYCR1Ag2/CpCpZsNvRowHxNy6DJfxPD/egs4lPnqJ8lYOb0v/tWN3vgnCSnY0TA58lDiX1M5zf4jrZIp8Z+ocvJjjJatI8sHoSX/8fTPJNoErgHeaXL9Yt7m9v79PhGGRn6h8kDNtczF3bQCl2IFrgEPZ565EqoSYPWouyTrCyt+b12W/x6ep0eq1KJqfM8h13lX0sncARlY44rz+AY95AGmo6+PT26EdSuKzdgqszPwCwQCQtuGZJkBGXtU/+ZVyLbPIzrJd4Tt5qDrZ1IzwcwBSHlb2JAKa4+fAS/u3QQTK9KT4y+IQirf+dcpf03Xaf0b6BQq3R6HbNck7ErY7pZC8PJ/9f0kcko23JfHjaWcgsrbl0KfmpdvyK1js77EDt9wWTJAAZqnjD2U5caYiKqfr0ica+ILqtTXLA4kE/ik46qZWVp+tO1zajzeKVJZcpU3HIAT+5mkUI3ZMkT1u+hn3R3XP+fgFL/gfqiXPfmBjY3gormiybslUDRTxOjZS4ZJl2Az3JTZSwikbk6jk9u26c4hewXts8LNgyDZKXTm7tABE1vhXk1N1yHETs8AfVnrea0wbTeM
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(396003)(366004)(346002)(136003)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(7416002)(8676002)(4326008)(8936002)(5660300002)(86362001)(122000001)(2906002)(38100700002)(38070700005)(71200400001)(53546011)(83380400001)(6512007)(6486002)(6506007)(478600001)(2616005)(26005)(36756003)(76116006)(91956017)(64756008)(66446008)(54906003)(66476007)(6916009)(41300700001)(316002)(33656002)(66946007)(66556008)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <5D5BBDA1254B354EA8504BF97094EF53@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6105
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT040.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	8b024110-20f2-456b-00e6-08dbbfb568e4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	rTnjDmXRU4AcBDfvKxd9JCqezcsi9VHrZYAOJ3C7aeuOv7TpjX81BRJ16MUvFeGi2F+14H3TZ3lhzRHYc3XileLRqMbYEZ78Yn8S+/BMTaMwQtd8luTfjWBbq2vD65OIqS6/5lEjPpN1Wt5dW+Lk8TDmtuVoIngokxaPI5S7GKw/JlzvCXAnLcmzQU7gmohLh3bvaq8MzlcytJV+gaN2jJVDHyTHaX1CRdSjnG53FG9UkeqVrxpHamHPZxaPeDCbe406gQpaRI6GjVUoxVAaBgF9LN5kMs/bHI5L/aewOyOgcrRBGTBdyVe8mkPeJ0mahj4WA023w6PrqTghpwo6YSU+Jmvn+4BGcoDNzWDjDy+NNr91peDUfxpqP0voM73JmftoAznnPp5w8p/d4uZfH3hnG0POQJzVuokCsDEXpFdhWdtl0UcY78tBskYz/ijCnBJaGVA5iIaUCqzjuzAs4do80fQyJdAtwiF62g2falkO65Gkl5ZmPAr9h9839lTdbN9bFdNm2NNtR5iORGnM+JarIuuQ1oPLdwflD3J9Ypi65Hn40yIqKjBSDfhQ+xIyjCQGQw95o93fNmO8ZxZgbXizmy/sVBGyLFgtcwHZcJphqKz9T+SPAG8Dx+Ig730btbT48cpZMsw0gP3nERF/ftoG+Wl92QWzO0nPxEzlY+Sv2qv5YfXdHY48/PoQlBLxcYmEOFoK2j43N0fEjxCPhgX6jG/TZ9kUWY/dtrbnoMdgfmw8/Lw8HaMJ6vMEFXhmo+yipJLqk/XHNScWthr3xA==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(376002)(346002)(136003)(39860400002)(230922051799003)(82310400011)(1800799009)(186009)(64100799003)(451199024)(36840700001)(40470700004)(46966006)(40480700001)(6506007)(82740400003)(47076005)(2906002)(356005)(6486002)(40460700003)(83380400001)(81166007)(36860700001)(6512007)(54906003)(70586007)(26005)(5660300002)(53546011)(478600001)(8936002)(41300700001)(336012)(70206006)(4326008)(8676002)(316002)(6862004)(2616005)(36756003)(86362001)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 23:57:02.9067
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c8102ea0-c4e2-4424-bf14-08dbbfb5723d
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT040.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB10123

Hi Stefano,

> On Sep 28, 2023, at 07:53, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> Actually adding Henry
>=20
> On Wed, 27 Sep 2023, Stefano Stabellini wrote:
>> Hi Henry,
>>=20
>> This patch is now acked. Should it go in 4.18?

Sure, a doc change should be harmless so:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


>>=20
>> In terms of risk of breaking, it is zero as nothing builds or runs based
>> on this document.
>>=20
>> At the same time, the benefit is also low because the main value of this
>> document is for future coding changes that would be too late now for
>> 4.18. So the benefits of committing it now are ease of keeping track of
>> the change and positive PR when we make the 4.18 release and we talk
>> about the total number of MISRA C rules we adopted.
>>=20
>>=20
>>=20
>> On Fri, 8 Sep 2023, Stefano Stabellini wrote:
>>> From: Stefano Stabellini <stefano.stabellini@amd.com>
>>>=20
>>> Add 14.3, with project-wide deviations.
>>>=20
>>> Also take the opportunity to clarify that parameters of function pointe=
r
>>> types are expected to have names (Rule 8.2).
>>>=20
>>> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
>>> ---
>>> Changes in v3:
>>> - add ,
>>> - add switch(sizeof(...)) and switch(offsetof(...))
>>> ---
>>> docs/misra/rules.rst | 15 ++++++++++++++-
>>> 1 file changed, 14 insertions(+), 1 deletion(-)
>>>=20
>>> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
>>> index 34916e266a..ac76e20a9c 100644
>>> --- a/docs/misra/rules.rst
>>> +++ b/docs/misra/rules.rst
>>> @@ -234,7 +234,8 @@ maintainers if you want to suggest a change.
>>>    * - `Rule 8.2 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example=
-Suite/-/blob/master/R_08_02.c>`_
>>>      - Required
>>>      - Function types shall be in prototype form with named parameters
>>> -     -
>>> +     - Clarification: both function and function pointers types shall
>>> +       have named parameters.
>>>=20
>>>    * - `Rule 8.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example=
-Suite/-/blob/master/R_08_03.c>`_
>>>      - Required
>>> @@ -385,6 +386,18 @@ maintainers if you want to suggest a change.
>>>      - A loop counter shall not have essentially floating type
>>>      -
>>>=20
>>> +   * - `Rule 14.3 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Examp=
le-Suite/-/blob/master/R_14_03.c>`_
>>> +     - Required
>>> +     - Controlling expressions shall not be invariant
>>> +     - Due to the extensive usage of IS_ENABLED, sizeof compile-time
>>> +       checks, and other constructs that are detected as errors by MIS=
RA
>>> +       C scanners, managing the configuration of a MISRA C scanner for
>>> +       this rule would be unmanageable. Thus, this rule is adopted wit=
h
>>> +       a project-wide deviation on if, ?:, switch(sizeof(...)), and
>>> +       switch(offsetof(...)) statements.
>>> +
>>> +       while(0) and while(1) and alike are allowed.
>>> +
>>>    * - `Rule 16.7 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Exampl=
e-Suite/-/blob/master/R_16_07.c>`_
>>>      - Required
>>>      - A switch-expression shall not have essentially Boolean type
>>> --=20
>>> 2.25.1
>>>=20
>>=20



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 00:18:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 00:18:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609206.948148 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlejT-0001Ce-KP; Thu, 28 Sep 2023 00:18:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609206.948148; Thu, 28 Sep 2023 00:18:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlejT-0001CX-Gd; Thu, 28 Sep 2023 00:18:19 +0000
Received: by outflank-mailman (input) for mailman id 609206;
 Thu, 28 Sep 2023 00:18:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlejS-0001C4-8P
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 00:18:18 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 84081435-5d94-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 02:18:16 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id D7734CE1AAB;
 Thu, 28 Sep 2023 00:18:10 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id B2921C433C8;
 Thu, 28 Sep 2023 00:18:08 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 84081435-5d94-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695860290;
	bh=+itPXB9mEbWrLqd/o6VLy66qwlS5iwG8iN+9UE4WHio=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=OBpQrOha/mgPVJKCjunPE0c2ZaoZp6TremyR9QFZ3jQ9yGzuI8uQzPFM5v6qKXF4p
	 HpPmFeuhfHDoNzEWnHY+32CunWYZYBmkKCuC/63Ci7tuljIKMEIdOR8ZSBJh7zYHAO
	 1FM2EsItXPy+YQkqfy+aPlhZk8yP27DXpXL0/SEjpa32JL2glLnevXyEY7HNO+CNWZ
	 d2YI2afQZzEV/wthCRdRblYo+Ky8SBzTACVA8+ZiKequo4W2i5eIgJtKPjsmw+qq2P
	 +RBv7VkEdjktHNa74H37kS0kNm5Y/CALKgKX/4ZNzcjFhZx0sWm32WOB4PII9L6q9I
	 IbOefvpxTnSbg==
Date: Wed, 27 Sep 2023 17:18:07 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Andrew Cooper <andrew.cooper3@citrix.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    Henry Wang <Henry.Wang@arm.com>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
    Julien Grall <julien@xen.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    Jan Beulich <jbeulich@suse.com>, "jgross@suse.com" <jgross@suse.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Anthony PERARD <anthony.perard@citrix.com>, 
    "community.manager@xenproject.org" <community.manager@xenproject.org>
Subject: Re: Xen 4.18 release: Reminder about code freeze
In-Reply-To: <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
Message-ID: <alpine.DEB.2.22.394.2309271658500.1403502@ubuntu-linux-20-04-desktop>
References: <AS8PR08MB7991D1099E32CC9F03B0E0F692FCA@AS8PR08MB7991.eurprd08.prod.outlook.com> <alpine.DEB.2.22.394.2309271603590.1403502@ubuntu-linux-20-04-desktop> <a31ce6cb-6234-5e7f-5cd4-ed190f029811@citrix.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-1362337263-1695859553=:1403502"
Content-ID: <alpine.DEB.2.22.394.2309271706050.1403502@ubuntu-linux-20-04-desktop>

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-1362337263-1695859553=:1403502
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2309271706051.1403502@ubuntu-linux-20-04-desktop>

On Thu, 28 Sep 2023, Andrew Cooper wrote:
> On 28/09/2023 12:04 am, Stefano Stabellini wrote:
> > On Mon, 25 Sep 2023, Henry Wang wrote:
> >> 3. dom0less vs xenstored setup race Was: xen | Failed pipeline for staging | 6a47ba2f
> >>
> >> https://marc.info/?l=xen-devel&m=168312468808977
> >>
> >> https://marc.info/?l=xen-devel&m=168312687610283
> > For this issue I suggest to go with this fix unless someone can produce
> > a better fix before RC2. I don't think we should cut RC2 with this issue
> > unsolved.
> >
> > ---
> > [PATCH] xenstored: reset domain connection before XENSTORE_CONNECTED
> >
> > From: Julien Grall <julien@xen.org>
> >
> > xenstored will set interface->connection to XENSTORE_CONNECTED before
> > finalizing the connection which can cause initialization errors on the
> > guest side. Make sure to call domain_conn_reset(domain) before setting
> > XENSTORE_CONNECTED.
> >
> > Signed-off-by: Julien Grall <julien@xen.org>
> > [stefano: rebase, commit message]
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> > Acked-by: Stefano Stabellini <sstabellini@kernel.org>
> 
> No - this hasn't got any better at fixing the problem than the last time
> it failed to fix the problem.

It does solve one of the issues: the sporadic failure of the gitlab-ci
job. Even if the fix is not complete, if nothing else, it does that.

Of course, if someone comes up with a better fix all the better!

There hasn't been a lot of movement on this issue so I am being
pessimistic and I am offering the (maybe partial) solution we have
today. I don't mean to take anything away from the value of doing a
better fix.


> You cannot have 3 entities in parallel fight for control in a 2-way
> communication channel.
> 
> Failure to understand this is what created the problem to begin with.
> 
> You took an existing ABI from oxenstored, and implemented it
> incompatibly in other entities, had init-dom0less corrupt a shared comms
> buffer that it isn't the producer or consumer of, and added bug in Linux
> because you didn't write down the behaviour you wanted, let alone the
> behaviour you actually provided.

I think I could write a document covering the intended behavior at the
time of contributing the original feature. That might be good to have
regardless of the bug.


> Stop tinkering in the hope that it hides the problem.  You're only
> making it harder to fix properly.
 
Making it harder to fix properly would be a valid reason not to commit
the (maybe partial) fix. But looking at the fix again:

diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c
index a6cd199fdc..9cd6678015 100644
--- a/tools/xenstored/domain.c
+++ b/tools/xenstored/domain.c
@@ -989,6 +989,7 @@ static struct domain *introduce_domain(const void *ctx,
                talloc_steal(domain->conn, domain);
 
                if (!restore) {
+                       domain_conn_reset(domain);
                        /* Notify the domain that xenstore is available */
                        interface->connection = XENSTORE_CONNECTED;
                        xenevtchn_notify(xce_handle, domain->port);
@@ -1031,8 +1032,6 @@ int do_introduce(const void *ctx, struct connection *conn,
        if (!domain)
                return errno;
 
-       domain_conn_reset(domain);
-
        send_ack(conn, XS_INTRODUCE);

It is a 1-line movement. Textually small. Easy to understand and to
revert. It doesn't seem to be making things harder to fix? We could
revert it any time if a better fix is offered.

Maybe we could have a XXX note in the commit message or in-code
comment?


> Tell me, when was the last time this failed...

I went through all the gitlab reports and this is the last one I found
which is from 1 month ago:
https://gitlab.com/xen-project/xen/-/pipelines/953569140

Even if the heinsenbug manifests only once a month I think it is bad.
Of course it is up to Henry but I don't think we should go far into the
release process without this problem being (at least partially) fixed.
--8323329-1362337263-1695859553=:1403502--


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 00:22:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 00:22:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609212.948157 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlenT-00036v-3D; Thu, 28 Sep 2023 00:22:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609212.948157; Thu, 28 Sep 2023 00:22:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlenT-00036o-0C; Thu, 28 Sep 2023 00:22:27 +0000
Received: by outflank-mailman (input) for mailman id 609212;
 Thu, 28 Sep 2023 00:22:26 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlenS-00036d-Dw
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 00:22:26 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 18c04058-5d95-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 02:22:24 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id A555FB818F3;
 Thu, 28 Sep 2023 00:22:23 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id AA8D9C433C7;
 Thu, 28 Sep 2023 00:22:21 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 18c04058-5d95-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695860543;
	bh=cKDgf5q4s9QhAjNqzGiP5PwXY9fagaWPBraMKehOhYw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=p/K7x3jpWWSOj0jVfZwfbDrFqVsOdORJvzSNYRjdYmw+aFsnjobWX2H5OBVvQE3Zu
	 eczR4xyMLsxFiplI8kqGdxTq/Gk0d26SQX8t1Wwz4nJEp810JmbEfRDI/8dShMxWPZ
	 tx6L6jckVJ6G3NV6GZz+L6JkHpu9zMc93Ao0VdCkJhKUtZtQf+VRl1dbrMTALmehDl
	 sgfpo2F7OtMhxE5RB1EXpLwUHJWzerR4HvW4JZI5sY4feb2MQBUDEZmOEW7OJJu//X
	 mBi1EHndhfF2u9WT1CX1FS92nQLLktGkeUBESPkEiWfr8IlgPyeTJ+4AxJfQ8mirOf
	 4ZZpZ6uZCPI3Q==
Date: Wed, 27 Sep 2023 17:22:20 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    "jbeulich@suse.com" <jbeulich@suse.com>, 
    "george.dunlap@citrix.com" <george.dunlap@citrix.com>, 
    "julien@xen.org" <julien@xen.org>, 
    "roger.pau@citrix.com" <roger.pau@citrix.com>, 
    "roberto.bagnara@bugseng.com" <roberto.bagnara@bugseng.com>, 
    Stefano Stabellini <stefano.stabellini@amd.com>, Henry.Wang@arm.com
Subject: Re: [PATCH] docs/misra: add rule 11.9
In-Reply-To: <068B9E0E-8EC1-47AC-9D24-64ACD9994013@arm.com>
Message-ID: <alpine.DEB.2.22.394.2309271721482.1403502@ubuntu-linux-20-04-desktop>
References: <20230927010538.1778201-1-sstabellini@kernel.org> <068B9E0E-8EC1-47AC-9D24-64ACD9994013@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

Hi Henry, since we are doing doc changes, would you also agree on this
one?


On Wed, 27 Sep 2023, Bertrand Marquis wrote:
> Hi Stefano,
> 
> > On 27 Sep 2023, at 03:05, Stefano Stabellini <sstabellini@kernel.org> wrote:
> > 
> > From: Stefano Stabellini <stefano.stabellini@amd.com>
> > 
> > Following up from the MISRA C group discussion, add Rule 11.9 to
> > docs/misra/rules.rst.
> > 
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> 
> I agree with Jan on dropping the "integer" word here.
> 
> With that done:
> Acked-by: Bertrand Marquis <bertrand.marquis@arm.com>
> 
> Cheers
> Bertrand
> 
> > ---
> > Rule 13.1 also discussed but it is already in docs/misra/rules.rst
> > ---
> > docs/misra/rules.rst | 5 +++++
> > 1 file changed, 5 insertions(+)
> > 
> > diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> > index 8e7d17d242..28dc3a4d66 100644
> > --- a/docs/misra/rules.rst
> > +++ b/docs/misra/rules.rst
> > @@ -373,6 +373,11 @@ maintainers if you want to suggest a change.
> >      - A cast shall not remove any const or volatile qualification from the type pointed to by a pointer
> >      -
> > 
> > +   * - `Rule 11.9 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_11_09.c>`_
> > +     - Required
> > +     - The macro NULL shall be the only permitted form of integer null pointer constant
> > +     -
> > +
> >    * - `Rule 12.5 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/R_12_05.c>`_
> >      - Mandatory
> >      - The sizeof operator shall not have an operand which is a function
> > -- 
> > 2.25.1
> > 
> 
> 


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 00:33:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 00:33:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609217.948167 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qleyJ-0005qR-3J; Thu, 28 Sep 2023 00:33:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609217.948167; Thu, 28 Sep 2023 00:33:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qleyJ-0005qK-0f; Thu, 28 Sep 2023 00:33:39 +0000
Received: by outflank-mailman (input) for mailman id 609217;
 Thu, 28 Sep 2023 00:33:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OL7R=FM=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qleyH-0005ou-A4
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 00:33:37 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062f.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a888211e-5d96-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 02:33:34 +0200 (CEST)
Received: from AM0PR10CA0094.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:15::47)
 by PA4PR08MB7481.eurprd08.prod.outlook.com (2603:10a6:102:2a5::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 00:33:31 +0000
Received: from AM7EUR03FT035.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:208:15:cafe::16) by AM0PR10CA0094.outlook.office365.com
 (2603:10a6:208:15::47) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21 via Frontend
 Transport; Thu, 28 Sep 2023 00:33:31 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT035.mail.protection.outlook.com (100.127.141.24) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.22 via Frontend Transport; Thu, 28 Sep 2023 00:33:31 +0000
Received: ("Tessian outbound 9aeaca65ec26:v211");
 Thu, 28 Sep 2023 00:33:30 +0000
Received: from 3de3e2841157.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 EF12595A-E193-489D-B593-530B5E5FD98E.1; 
 Thu, 28 Sep 2023 00:33:23 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 3de3e2841157.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 28 Sep 2023 00:33:23 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV1PR08MB7331.eurprd08.prod.outlook.com (2603:10a6:150:1e::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 28 Sep
 2023 00:33:19 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 00:33:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a888211e-5d96-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fcuuJuvaqAUuWv16bW0td/B6blOy9u1DhFo24UzzdIE=;
 b=Q8Mp+GEL6OhjzpcT0+eLuupVh6Pm/j23berBdlbEU7NcnW0dFdkBcj2wsOkCIDNWZEsKRC255O6aB82PECRQMPqBtqqupwmlGvgOvPtAjj+q/+7g9WcwFERDe++qTJ2uqV+/Dw+ttguvis39dn5K3VfWTZAArzaAiKANrIxJkqk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 9c6dcce1f2514d39
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ncY1WRhNJf7jmqOGvBZnW9ouJsHgG+CaPf5CwJOi/IkXCnPHVp6vYgNeif7ZyUFjp/dIhY6W2U41KxeDQmkjK2JbtEyhto2fNsoDoMK+sAaR7xsjtaJkbKUjoVOAOHOBGrCn09zJ1PR63aeDjLE0QS6SP44jmN0X/2YXuTHXahIs0+ScWfsBmIPmaj0vmfe8PvtlHK2F8hsPlhQ/p+d/XyFew1D26sXX+s0a2sFMgCng574icd3oERqcJirdSPLxbW8gJJe1C+s6XR9NWy8Dp1v9LkhSJ3DPO8+AZcjiAJqtU4jRGSltLupDeSTQX4pBSJF0yRzGM5DENmCv+uqEbw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fcuuJuvaqAUuWv16bW0td/B6blOy9u1DhFo24UzzdIE=;
 b=Pnp7JQdSpQpLh14mAlXk4JYmKzQVcTyWOiG/RnMlbHW6Cgm4NNp6WZfei5u3KiJaxn8wxlFNzAgAxC2v28Y6+vqrPip+KYCR2IxTJOm7rETR9WYe+WRTBjJU2jBtbFBar5o+WZ83cBmlqaR17Fh419lD1u7ZzHFtIZHL/XXJBiWNo2Dz1rfOxf0QXURhG2OTtOvSlkcg548yRgTUdeN29/8sLxb/5LoPgtatXGVzlgjk6Ql/riJPH8VoZc/wO/skRxj0p2Tq42vSvtFqQYCwtrt4/+NtSkGlXuOmehwi42mnGjBHfbVbiiJ9gOFMj4/4t2mJ0OWmtxPapnElTNGqvQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fcuuJuvaqAUuWv16bW0td/B6blOy9u1DhFo24UzzdIE=;
 b=Q8Mp+GEL6OhjzpcT0+eLuupVh6Pm/j23berBdlbEU7NcnW0dFdkBcj2wsOkCIDNWZEsKRC255O6aB82PECRQMPqBtqqupwmlGvgOvPtAjj+q/+7g9WcwFERDe++qTJ2uqV+/Dw+ttguvis39dn5K3VfWTZAArzaAiKANrIxJkqk=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Bertrand Marquis <Bertrand.Marquis@arm.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Andrew Cooper <andrew.cooper3@citrix.com>,
	"jbeulich@suse.com" <jbeulich@suse.com>, "george.dunlap@citrix.com"
	<george.dunlap@citrix.com>, "julien@xen.org" <julien@xen.org>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, "roberto.bagnara@bugseng.com"
	<roberto.bagnara@bugseng.com>, Stefano Stabellini
	<stefano.stabellini@amd.com>
Subject: Re: [PATCH] docs/misra: add rule 11.9
Thread-Topic: [PATCH] docs/misra: add rule 11.9
Thread-Index: AQHZ8N7MEETcH3eGqk6AvXqds6kzgbAuVA8AgAEN4wCAAAMBgA==
Date: Thu, 28 Sep 2023 00:33:16 +0000
Message-ID: <D38F282B-27C9-48B9-85A7-24A9D0858FCF@arm.com>
References: <20230927010538.1778201-1-sstabellini@kernel.org>
 <068B9E0E-8EC1-47AC-9D24-64ACD9994013@arm.com>
 <alpine.DEB.2.22.394.2309271721482.1403502@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309271721482.1403502@ubuntu-linux-20-04-desktop>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|GV1PR08MB7331:EE_|AM7EUR03FT035:EE_|PA4PR08MB7481:EE_
X-MS-Office365-Filtering-Correlation-Id: e5e2cc68-0572-464c-8ef6-08dbbfba8a74
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 7pyzGKpppCST8QU/pVJj28YNbY6My3AIvjGJO5pgkgWbjQg6VfZJ7wcAoRJfv21rQEMnvkA9ZAfy1ypqrPyBz4SlWSya96Ost6HqHbI+efkcs2vAJfm8Qumyok0/NOmZtvM3O55nZeT5I0L5nNdKvxzl7LnezwFqcwvloKxNA/7mijIWU8cZUXLfe78SStAzrY0wMevEbQ1W+Rf5pdka1SM7yETUg9f8D2Doonrpbj07/0OpThntHZpdACi8Fo/DI/dPwjOf970EENxI9Ls4cMDaswBQeUliryvb6UGI4+EggZesHMVvQxfALNblmEsRMZRcNUJsNR7Te8/dbi0U+pZ/hUnyrN7cBMWFObrJcUrILkHe5NsREcw3nwHQOmh1amTpZiI2853Xte6FDsl0ZLMzyXZtV/T0hu83pdoNXLszAJxgN7MDYoTtL+1zfMGHkTEmzvhimYDkuoGRxTP/7DrAAXzpKxfFlLugQ41qnPtm3S5dYR36H9e0gGblitacDE4wEgoLrgTQWPEsOUgJUKqy7BGbw1CgweC2lVrzcPwgpKecpHtBNFKYJBIYBzE3BrAak9XsgMfCTxTyx8vhFn+lX15UZP4NUpEJfVhlGsZdu9V/k2WDIDWEJsBtjTuCgbVt/w6d7RHiav2dVgVWlddIQdq4q1Te8ET4gQ7e0SsuRG3ppPYpGMnsLbfiitxp7DejRJuK5tulvvzgjoyVeZAyNzv0upJTnoVtUhs7IjE=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(39860400002)(366004)(136003)(376002)(396003)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(91956017)(2906002)(76116006)(316002)(26005)(2616005)(66446008)(54906003)(64756008)(66946007)(6916009)(66476007)(66556008)(41300700001)(71200400001)(6666004)(8936002)(4326008)(6512007)(8676002)(478600001)(6506007)(6486002)(53546011)(33656002)(86362001)(36756003)(122000001)(38070700005)(38100700002)(5660300002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <6EFFDBB79E5FCC448B223120BFA8FA71@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7331
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT035.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	a08d870f-5146-4d2f-f9ec-08dbbfba81b9
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mhNZXTMLreylY2DIoX7gAtycTe6cxeS4YRrTqkrBwMOIpKtFphAJo7kYFlkGyupxPfSh/3s7wMp9rEx+W9Zp+C3nibqfSYwMqTdJS5xxQ/nxLkqKhRFN63KMebDGZI11APfYqfbtCD2L3aa93BKBW7ba2Iw8izeiVocCj+Qhdo4dow2rvYqo/6AqS4/+bc0hjXOgQD9r8rcichLClWX+4/XifRs9LHkYf7oigIxBnS6cuuKWS/K6wuunQyiJq+MHa+xZoCzVKraffdKMY71tgMix8+qwsQLCMF0ptEyBMfz26PdhncoWkZdMMB+z4bACueqVITNKVjuZF6EPXYdnK0HzXsZb8oYrskXqpHl2mo+5kukLlPkgz98bwCW+lBmKod4vLTv0PMZ90Kvgpi/xXHgHVSgS3wFs0E2COCXfZxkOEzsx0Ekk8hRFlWyf9OweddqISatCxh1yke8uBRNhoffnpLFn9NvIm3ozjFtbRlsg6Jo9blwfHDWyGzJeUYX9mzhA1xB5vfKwHCM0fMVlKx9vWPSaw6D7uw/dS0vxzyCml7dBQLqs4+dQ3Evpg/oxG6+4wmqho1oB+hKy2kO84geDXUcigGS0j6n+PSi9l6XZzqyfTdFFiMUF6CT6kE7YIt380abyimX53fV1NR3FGsxbu5L3PDXGpV5oqt9nqYhwWDfvVzVuM+XGFad1EAF6kvrAClAizM/hqtUUULzE9jhDK+KfAsl0VJJZH2b/fSXsNGz9WSzDE8DlEvoIlpW1AspZ92g+l5gVkGinz5bXaw==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(376002)(136003)(346002)(396003)(230922051799003)(82310400011)(64100799003)(186009)(1800799009)(451199024)(46966006)(40470700004)(36840700001)(40480700001)(40460700003)(47076005)(356005)(36860700001)(82740400003)(6506007)(81166007)(70586007)(53546011)(54906003)(6512007)(6486002)(5660300002)(26005)(4326008)(70206006)(478600001)(8936002)(336012)(6666004)(2906002)(8676002)(41300700001)(6862004)(2616005)(316002)(36756003)(86362001)(33656002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 00:33:31.0149
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e5e2cc68-0572-464c-8ef6-08dbbfba8a74
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT035.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB7481

Hi Stefano,

> On Sep 28, 2023, at 08:22, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> Hi Henry, since we are doing doc changes, would you also agree on this
> one?
>=20

Yes, same as the last patch that I just release acked.

Kind regards,
Henry


>=20
> On Wed, 27 Sep 2023, Bertrand Marquis wrote:
>> Hi Stefano,
>>=20
>>> On 27 Sep 2023, at 03:05, Stefano Stabellini <sstabellini@kernel.org> w=
rote:
>>>=20
>>> From: Stefano Stabellini <stefano.stabellini@amd.com>
>>>=20
>>> Following up from the MISRA C group discussion, add Rule 11.9 to
>>> docs/misra/rules.rst.
>>>=20
>>> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
>>=20
>> I agree with Jan on dropping the "integer" word here.
>>=20
>> With that done:
>> Acked-by: Bertrand Marquis <bertrand.marquis@arm.com>
>>=20
>> Cheers
>> Bertrand
>>=20
>>> ---
>>> Rule 13.1 also discussed but it is already in docs/misra/rules.rst
>>> ---
>>> docs/misra/rules.rst | 5 +++++
>>> 1 file changed, 5 insertions(+)
>>>=20
>>> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
>>> index 8e7d17d242..28dc3a4d66 100644
>>> --- a/docs/misra/rules.rst
>>> +++ b/docs/misra/rules.rst
>>> @@ -373,6 +373,11 @@ maintainers if you want to suggest a change.
>>>     - A cast shall not remove any const or volatile qualification from =
the type pointed to by a pointer
>>>     -
>>>=20
>>> +   * - `Rule 11.9 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Examp=
le-Suite/-/blob/master/R_11_09.c>`_
>>> +     - Required
>>> +     - The macro NULL shall be the only permitted form of integer null=
 pointer constant
>>> +     -
>>> +
>>>   * - `Rule 12.5 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example=
-Suite/-/blob/master/R_12_05.c>`_
>>>     - Mandatory
>>>     - The sizeof operator shall not have an operand which is a function
>>> --=20
>>> 2.25.1
>>>=20
>>=20
>>=20
>=20



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 00:41:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 00:41:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609225.948178 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlf5P-0007ai-0t; Thu, 28 Sep 2023 00:40:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609225.948178; Thu, 28 Sep 2023 00:40:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlf5O-0007ab-UB; Thu, 28 Sep 2023 00:40:58 +0000
Received: by outflank-mailman (input) for mailman id 609225;
 Thu, 28 Sep 2023 00:40:57 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlf5N-0007aP-F0
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 00:40:57 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ad38f90a-5d97-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 02:40:52 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id F2D73B81819;
 Thu, 28 Sep 2023 00:40:51 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id D4CFDC433C7;
 Thu, 28 Sep 2023 00:40:49 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ad38f90a-5d97-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695861651;
	bh=qb+nZ2Ty5fH2BLL7h8de8y+xiHmeW6hV0wyqPScchAQ=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=DXq9rSQQ7t0hWMa9Ec9oSpv3yb//joLxqbgPQ9DddVpSwFNGRZ+uqKpLlVQdqttKq
	 hAP+8LDug4fS/IUUnuWNz/wrd83yvVG7RbZ2UTbkqMpcQP81OdSyTLeVACvwfgZTe8
	 sY0VsGgOsko8pYWbJPGjCyjrMmdWBN3or0F1LsOGAwwNLB7GCjxVfiXA6KScZo/kWM
	 6PVb9Ig8tSjphQf6Dii34Q/b69LqCevamzofozZcBOLmnBhCLW+VM1f42B7j8/ege/
	 VqjIZvOowf7jyCzUG89LAG4kMR6WgY+/3Mtz1zSL1wZ/HB04ZDZnJJTyPuOAeIGtqC
	 7qPlPB4C8+0XA==
Date: Wed, 27 Sep 2023 17:40:45 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Bertrand Marquis <Bertrand.Marquis@arm.com>
cc: Nicola Vetrini <nicola.vetrini@bugseng.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    Jan Beulich <jbeulich@suse.com>, 
    "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>, 
    "roger.pau@citrix.com" <roger.pau@citrix.com>, 
    "george.dunlap@citrix.com" <george.dunlap@citrix.com>, 
    "roberto.bagnara@bugseng.com" <roberto.bagnara@bugseng.com>, 
    "julien@xen.org" <julien@xen.org>, 
    Stefano Stabellini <stefano.stabellini@amd.com>, Henry.Wang@arm.com
Subject: Re: [PATCH v3] docs/misra: add rule 2.1 exceptions
In-Reply-To: <BEAF1369-C1FE-4B81-A0A1-5A4F39426E9E@arm.com>
Message-ID: <alpine.DEB.2.22.394.2309271740280.1996340@ubuntu-linux-20-04-desktop>
References: <20230908230318.1719290-1-sstabellini@kernel.org> <91d5ea6d-bdfa-45bf-a54b-5acdf1784ec4@xen.org> <alpine.DEB.2.22.394.2309111740160.1847660@ubuntu-linux-20-04-desktop> <156fac1ee8e37cddac95813f72a108e0@bugseng.com>
 <BEAF1369-C1FE-4B81-A0A1-5A4F39426E9E@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 27 Sep 2023, Bertrand Marquis wrote:
> > On 27 Sep 2023, at 09:53, Nicola Vetrini <nicola.vetrini@bugseng.com> wrote:
> > 
> >>> > diff --git a/xen/arch/arm/psci.c b/xen/arch/arm/psci.c
> >>> > index 695d2fa1f1..2a8527cacc 100644
> >>> > --- a/xen/arch/arm/psci.c
> >>> > +++ b/xen/arch/arm/psci.c
> >>> > @@ -59,6 +59,7 @@ void call_psci_cpu_off(void)
> >>> >       }
> >>> >   }
> >>> >   +/* SAF-2-safe */
> >>> I think any use of SAF-2-safe should be accompanied with an attribute...
> >>> >   void call_psci_system_off(void)
> >>> ... noreturn for function or ...
> >>> >   {
> >>> >       if ( psci_ver > PSCI_VERSION(0, 1) )
> >>> > diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
> >>> > index 7619544d14..47e0f59024 100644
> >>> > --- a/xen/arch/x86/shutdown.c
> >>> > +++ b/xen/arch/x86/shutdown.c
> >>> > @@ -118,6 +118,7 @@ static inline void kb_wait(void)
> >>> >               break;
> >>> >   }
> >>> >   +/* SAF-2-safe */
> >>> >   static void noreturn cf_check __machine_halt(void *unused)
> >>> >   {
> >>> >       local_irq_disable();
> >>> > diff --git a/xen/include/xen/bug.h b/xen/include/xen/bug.h
> >>> > index e8a4eea71a..d47c54f034 100644
> >>> > --- a/xen/include/xen/bug.h
> >>> > +++ b/xen/include/xen/bug.h
> >>> > @@ -117,6 +117,7 @@ struct bug_frame {
> >>> >   #endif
> >>> >     #ifndef BUG
> >>> > +/* SAF-2-safe */
> >>> >   #define BUG() do {                                              \
> >>> >       BUG_FRAME(BUGFRAME_bug,  __LINE__, __FILE__, 0, NULL);      \
> >>> >       unreachable();                                              \
> >>> ... unreachable for macros. But the /* SAF-2-safe */ feels a little bit
> >>> redundant when a function is marked as 'noreturn'.
> >>> Is there any way to teach eclair about noreturn?
> >> Actually I had the same thought while writing this patch. If we can
> >> adopt unreachable and noreturn consistently maybe we don't need
> >> SAF-2-safe. If the checker can support it.
> >> Nicola, what do you think?
> > 
> > A couple of remarks:
> > - if you put the noreturn attribute on some functions, then surely the code after those is
> > reported as unreachable. ECLAIR should pick up all forms of noreturn automatically; otherwise, a simple configuration can be used.
> > 
> > - Note that the cause of unreachability in the vast majority of cases is the call to
> > __builtin_unreachable(), therefore a textual deviation on the definition of unreachable, plus
> > a bit of ECLAIR configuration, can deviate it (to be clear, just the SAF comment is not
> > sufficient, since deviations comments are meant to be applied at the top expansion location,
> > which is not on the macro definition).
> > This is what it should look like, roughly:
> > 
> > -config=MC3R1.R2.1,reports+={deliberate, "any_area(any_loc(text(^<REGEX>$, -1)))"}
> > 
> > #if (!defined(__clang__) && (__GNUC__ == 4) && (__GNUC_MINOR__ < 5))
> > /* SAF-2-safe */
> > #define unreachable() do {} while (1)
> > #else
> > /* SAF-2-safe */
> > #define unreachable() __builtin_unreachable()
> > #endif
> > 
> > where REGEX will match the translation of SAF-2-safe.
> > 
> > However, this will then entail that *some* SAF comments are treated specially and, moreover,
> > that some modification to the definition of unreachable won't work
> > (e.g.
> > #define M() __builtin_unreachable()
> > /* SAF-2-safe */
> > #define unreachable() M()
> > 
> > My opinion is that it's far easier for this to be an eclair configuration (which has the
> > advantage not to depend on the exact definition of unreachable) and then perhaps a comment
> > above it explaining the situation.
> 
> I agree here and it is easier to make an overall exception where we list the cases
> where this is acceptable (ie all flavors of unreacheable) and document that eclair
> was configured using "xxxx" to handle this.

In that case it looks like we all agree that we can go ahead with this
patch with just the changes to docs/misra/rules.rst to add rule 2.1 and
remove everything else. Which is v2 of this patch:
https://marc.info/?l=xen-devel&m=169283027729298

Henry, can I get one more release-ack for v2 of this patch (only changes
to docs/misra, no code changes)?

Also Bertrand can you provide a formal Ack for v2?


I do think we should have a document to track this kind of deviations
that are not managed by safe.json or exclude-list.json. But I think for
now the rules.rst notes and the ECLAIR config file (which is under
xen.git) will suffice.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 00:49:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 00:49:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609231.948188 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlfDa-0000va-MV; Thu, 28 Sep 2023 00:49:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609231.948188; Thu, 28 Sep 2023 00:49:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlfDa-0000vT-Jr; Thu, 28 Sep 2023 00:49:26 +0000
Received: by outflank-mailman (input) for mailman id 609231;
 Thu, 28 Sep 2023 00:49:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlfDY-0000vL-MX
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 00:49:24 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id dd3bd9e0-5d98-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 02:49:23 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id B65AC619F2;
 Thu, 28 Sep 2023 00:49:21 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 76405C433C8;
 Thu, 28 Sep 2023 00:49:19 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dd3bd9e0-5d98-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695862161;
	bh=YXzwrS2ny1/pwVsQb+JjW5/Svg1/ZTFW92WJW1zxVA4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=ncrprf4mX/CIG20OzyYrc5bh3J4Mr/AFqHxruCdOS1/2TfADfQ2k/Mj/s+JHCC6Sn
	 uNiK3sDX8VFy/S5JbDKEMtOvjKmzUOLHs7eepuUsMEqH8ButrQXIVwtsCHnFP7ZzJK
	 mkRCLwcEfaWyVfn29hvIncDj1WNoVjzx5RxlNulFfufBwjDQw60czcGOktveo9AbIt
	 zaByC3XE7hMP50zCR2YLdQhFShzSrJv6MLLW3wgpSjUdg+HPKzdmq97khlu1MfryoH
	 L5UHKutl6/T2iDq+4GV4nPZ/UgZaDd+k2dp1sibIu+gHf5GjXbPOt6ZRdjfZde75zy
	 TB73cRZXD6GnQ==
Date: Wed, 27 Sep 2023 17:49:17 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, 
    michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, Wei Liu <wl@xen.org>, 
    Anthony PERARD <anthony.perard@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Henry Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH v2 2/3] docs: make the docs for MISRA C:2012 Dir 4.1
 visible to ECLAIR
In-Reply-To: <4e25395c844a312556303e3484a915e875e0e5a7.1695801813.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309271749110.1996340@ubuntu-linux-20-04-desktop>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com> <4e25395c844a312556303e3484a915e875e0e5a7.1695801813.git.nicola.vetrini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 27 Sep 2023, Nicola Vetrini wrote:
> To be able to check for the existence of the necessary subsections in
> the documentation for MISRA C:2012 Dir 4.1, ECLAIR needs to have a source
> file that is built.
> 
> This file is generated from 'C-runtime-failures.rst' in docs/misra
> and the configuration is updated accordingly.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> Changes from RFC:
> - Dropped unused/useless code
> - Revised the sed command
> - Revised the clean target
> 
> Changes in v2:
> - Added explanative comment to the makefile
> - printf instead of echo
> ---
>  docs/Makefile       |  7 ++++++-
>  docs/misra/Makefile | 22 ++++++++++++++++++++++
>  2 files changed, 28 insertions(+), 1 deletion(-)
>  create mode 100644 docs/misra/Makefile
> 
> diff --git a/docs/Makefile b/docs/Makefile
> index 966a104490ac..ff991a0c3ca2 100644
> --- a/docs/Makefile
> +++ b/docs/Makefile
> @@ -43,7 +43,7 @@ DOC_PDF  := $(patsubst %.pandoc,pdf/%.pdf,$(PANDOCSRC-y)) \
>  all: build
>  
>  .PHONY: build
> -build: html txt pdf man-pages figs
> +build: html txt pdf man-pages figs misra
>  
>  .PHONY: sphinx-html
>  sphinx-html:
> @@ -66,9 +66,14 @@ endif
>  .PHONY: pdf
>  pdf: $(DOC_PDF)
>  
> +.PHONY: misra
> +misra:
> +	$(MAKE) -C misra
> +
>  .PHONY: clean
>  clean: clean-man-pages
>  	$(MAKE) -C figs clean
> +	$(MAKE) -C misra clean
>  	rm -rf .word_count *.aux *.dvi *.bbl *.blg *.glo *.idx *~
>  	rm -rf *.ilg *.log *.ind *.toc *.bak *.tmp core
>  	rm -rf html txt pdf sphinx/html
> diff --git a/docs/misra/Makefile b/docs/misra/Makefile
> new file mode 100644
> index 000000000000..8fd89404e96b
> --- /dev/null
> +++ b/docs/misra/Makefile
> @@ -0,0 +1,22 @@
> +TARGETS := C-runtime-failures.o
> +
> +all: $(TARGETS)
> +
> +# This Makefile will generate the object files indicated in TARGETS by taking
> +# the corresponding .rst file, converting its content to a C block comment and
> +# then compiling the resulting .c file. This is needed for the file's content to
> +# be available when performing static analysis with ECLAIR on the project.
> +
> +# sed is used in place of cat to prevent occurrences of '*/'
> +# in the .rst from breaking the compilation
> +$(TARGETS:.o=.c): %.c: %.rst
> +	printf "/*\n\n" > $@.tmp
> +	sed -e 's|\*/|*//*|g' $< >> $@.tmp
> +	printf "\n\n*/" >> $@.tmp
> +	mv $@.tmp $@
> +
> +%.o: %.c
> +	$(CC) -c $< -o $@
> +
> +clean:
> +	rm -f C-runtime-failures.c *.o *.tmp
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 00:54:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 00:54:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609237.948198 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlfHy-0003Tc-74; Thu, 28 Sep 2023 00:53:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609237.948198; Thu, 28 Sep 2023 00:53:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlfHy-0003TV-42; Thu, 28 Sep 2023 00:53:58 +0000
Received: by outflank-mailman (input) for mailman id 609237;
 Thu, 28 Sep 2023 00:53:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=OL7R=FM=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qlfHx-0003TN-26
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 00:53:57 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0604.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::604])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7f735298-5d99-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 02:53:55 +0200 (CEST)
Received: from AS9PR04CA0163.eurprd04.prod.outlook.com (2603:10a6:20b:530::19)
 by DU0PR08MB8884.eurprd08.prod.outlook.com (2603:10a6:10:47f::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Thu, 28 Sep
 2023 00:53:44 +0000
Received: from AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:530:cafe::90) by AS9PR04CA0163.outlook.office365.com
 (2603:10a6:20b:530::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.23 via Frontend
 Transport; Thu, 28 Sep 2023 00:53:44 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT043.mail.protection.outlook.com (100.127.140.160) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.22 via Frontend Transport; Thu, 28 Sep 2023 00:53:43 +0000
Received: ("Tessian outbound 9aeaca65ec26:v211");
 Thu, 28 Sep 2023 00:53:43 +0000
Received: from bc662198a024.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 CA0DA8B2-B16B-4D6A-B198-DCE3665446F3.1; 
 Thu, 28 Sep 2023 00:53:36 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id bc662198a024.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 28 Sep 2023 00:53:36 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DB9PR08MB9731.eurprd08.prod.outlook.com (2603:10a6:10:45d::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 00:53:33 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 00:53:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7f735298-5d99-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/XD0k6XY3UGd1KI6ghs3WdoJL5f1kSZPTQvp2UdKnIw=;
 b=p9XX2+x5mb/9Z0rObHwiU7NWUaMhz0l0Af0kd4ezOwXmUXvSbuGC/eTI9fvBZWCqthBNdz9ZJ/zfdDdTMfbgLwRp1fzQV1/xoejBoT0PiTeiPw4tnYgcHFs+NB+0lN8AfVj7j+5y9Bq0marxaSH2UTkoifyCb89227ukzBy0zC0=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: dd2577846dd9516f
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GGRJlxaHHhPUBmclXBVFdfnoEliyYVfai9dfeO4XBg8C+/8sA4sKCCM23M1vNJTaZ+isaOPWKpI8TpjVv8G5hDwEigWRTscVzPGrPah5nt30/0C/joXhXIK3/8zj8/yjIOimRECXzP7one8kBC1S/PK6wMOmWi+GSnMmKCVkip1IkNGKbr/+xkIiz7SPuWj7X+yOiacZ31Jss+/7mQR7XJu/2bW1YbPaMXOxD3FzYERX0eYsRhswQTD4GmTFOYPQT+4xSk9yHpsmAqrPZrYB52kT/LKxjDvMWHIXqYtveHcu4Wt/91npr26oYDxtcxXhWLCsdQk+xBA3HgftiY8OIA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/XD0k6XY3UGd1KI6ghs3WdoJL5f1kSZPTQvp2UdKnIw=;
 b=aD2+3uJwBKlXH9wTxQ1fjafaaOaBL75BdGd14+966fKFUTR4dBvjv+K4NaADAk3Hw1i+3CTytWLbGUBKfdJVtJVSK0UloLMjXs61qej0OgH+P2sgNeOGhw1+xTY3qBHFxNkHJehFhxZkQeOC5Eau5uXAp/Wddd/pt3cUEEhEF8k8GR1Q3EnVPo9U1IAj8rrGu78fFo2qhb3h6FmcPUMvsUPn79cZ86DRflDNbbScXTjOOvMZOio+owjFYOasbqCxH5RSVswGdMT2ryWlXhW5olnmaI0hVqqQkU4E5s1pDnT+upbixzrw6RSLAPx4j5Y0fDmsmspsxu3BBclxM/LVlw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/XD0k6XY3UGd1KI6ghs3WdoJL5f1kSZPTQvp2UdKnIw=;
 b=p9XX2+x5mb/9Z0rObHwiU7NWUaMhz0l0Af0kd4ezOwXmUXvSbuGC/eTI9fvBZWCqthBNdz9ZJ/zfdDdTMfbgLwRp1fzQV1/xoejBoT0PiTeiPw4tnYgcHFs+NB+0lN8AfVj7j+5y9Bq0marxaSH2UTkoifyCb89227ukzBy0zC0=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Michal Orzel <michal.orzel@amd.com>,
	"xenia.ragiadakou@amd.com" <xenia.ragiadakou@amd.com>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>, "consulting@bugseng.com"
	<consulting@bugseng.com>, "jbeulich@suse.com" <jbeulich@suse.com>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, Wei Liu <wl@xen.org>, Anthony
 PERARD <anthony.perard@citrix.com>, George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>
Subject: Re: [XEN PATCH v2 2/3] docs: make the docs for MISRA C:2012 Dir 4.1
 visible to ECLAIR
Thread-Topic: [XEN PATCH v2 2/3] docs: make the docs for MISRA C:2012 Dir 4.1
 visible to ECLAIR
Thread-Index: AQHZ8ShxJs2WsoZlEkeaevb5QFdHibAvaOaAgAABIYA=
Date: Thu, 28 Sep 2023 00:53:30 +0000
Message-ID: <1BCB1493-218E-44D0-88D9-6B42B8DEC439@arm.com>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com>
 <4e25395c844a312556303e3484a915e875e0e5a7.1695801813.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2309271749110.1996340@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309271749110.1996340@ubuntu-linux-20-04-desktop>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DB9PR08MB9731:EE_|AM7EUR03FT043:EE_|DU0PR08MB8884:EE_
X-MS-Office365-Filtering-Correlation-Id: e454d13c-6b81-4249-b6d9-08dbbfbd5d48
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 SnBkTmnyajBlNs+bi3GTFCZlfDEBXdrkpPrVY2NYXvVzBP8tL3kqBgoJUMGt/OxndvUYul2MRrhsdCjx3CjFzDuvpnndhQ8zvwibHZTPz/PQaaVYOv+odI88MYv9nZQ/Qr1DS0QUHLu7So1LWtLDPsfKQ/yD7dnIwZ39MZX/85E7agpAjmIBeXZ05D1Gc2v15YHqtGLj27d6MxwU8hSyuunINkdq8nQOJcatKl22SeLv/uszkHbsUYrUl6dU8Z8UB2wACgbFK68NFfm57a0d0QoAU/dLfZGWSV5jdzZgTyqSXSq0O81nFPIsHs0EkENEETeENex74mCrb11j0v2McPU4hKPuG1gowk7JAADqEBJ6bHfrEC78HSACKdPXOYFRLuVDZmBPmSPyyjG5RuL/d1vJxOAAoCi3eJDIHoSl8fhScOXcXPvVgoMnrFfnEua44IAiP2+ffNsG+m3m5yQGamEpRHA8Eo4NpTm9xDd5DdFoRKceR3p0SzekNnasOfgGs8SfFkI8t672SksBlzd48QWTmsiuNtKIdZJWPXvVKWyHjF0eCwSfqjuQdLUHETvvTqAPGumPFZHHgoBjCiswKZMk7dla0tWXtMVrzPJUys36yuwUKZw3Al1k8SoZsJZxjMjlIzEJODYHETfxQ9oFZg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(136003)(39860400002)(376002)(396003)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(2616005)(6512007)(53546011)(6506007)(5660300002)(6486002)(4326008)(26005)(83380400001)(8936002)(8676002)(2906002)(7416002)(91956017)(316002)(54906003)(66556008)(66476007)(66946007)(66446008)(64756008)(76116006)(41300700001)(478600001)(6916009)(86362001)(38070700005)(122000001)(36756003)(38100700002)(33656002)(71200400001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <F2614D1590234F4C94B787D5F0B31C9C@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB9731
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	da393f87-101d-4e67-fce1-08dbbfbd552a
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	TI1RbiSM60cgg94MmPQCMtL8XBQMej2Sk0Xj51gCARictXGE6FXaJFdo9s2WZFNu4KAkAaJqFiE+FDryXpRU8YrYAMvD5vysNn4neZ/I1PI/jSnkWN7zGMqfUjKf/QS68gCewo8EBO5KCydjiyHyh9x7IEoXSDBiVT86X3V+ekoaPzBo1pFSbcY6BoSI20njGZS82To++zN6wXEKVAQwc4KzfsqHFYXrwDXNtPgkXeDy38dQ4KWRIuclAU2xJ3T5N8a9I3PCCmAye2kgNd/nDtz6c0IzSTpTClQzvpdk4KpM758u6qd+XX8fDgo/IJ7M6sguMxoTnakwVh0967+Im3P2TXYGnGWvpL801ScRzDeF+vxbojD+msGS23JPgcCKTZmNoQ6SFZJAvBNJbLgP7g4lNpbDPumB27HiPvhggv4nQ3u+GtQ1/HWeDw5qxTopupBjvDDVRQnSMbGsQwsnDMfGM1ZNEjeYaf2aVDF+07+M5grlGLTvhb6Z+/3bkKbdbetjU+eQjsNqWpy5rWnozIK+a+aofDlJGklfSF1xujWBcFJGaoZ0LoZuuq7vN4/4tFQytlYOgyfBZubvOd3MGiYiuqN0BMlw73ujFlflC/xP6ySTSAtSjTxjwkPR+hNYh9muVQEnr9w3py3WQc53chigqin2Mbu7hz1xufAevFRKq1RVaF05qMwJe98e/hAKRSkQpVw0dewchsoEImrRmS9IPY6E8yB2IScvCNBKAGnJR82RifKDwshV1wiZqUvO
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(39860400002)(396003)(136003)(346002)(230922051799003)(64100799003)(186009)(82310400011)(451199024)(1800799009)(36840700001)(40470700004)(46966006)(40460700003)(2906002)(33656002)(47076005)(26005)(2616005)(53546011)(336012)(6486002)(36756003)(6506007)(83380400001)(36860700001)(6512007)(478600001)(86362001)(82740400003)(81166007)(356005)(40480700001)(70586007)(5660300002)(70206006)(54906003)(4326008)(8936002)(316002)(8676002)(6862004)(41300700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 00:53:43.7359
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e454d13c-6b81-4249-b6d9-08dbbfbd5d48
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT043.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8884



> On Sep 28, 2023, at 08:49, Stefano Stabellini <sstabellini@kernel.org> wr=
ote:
>=20
> On Wed, 27 Sep 2023, Nicola Vetrini wrote:
>> To be able to check for the existence of the necessary subsections in
>> the documentation for MISRA C:2012 Dir 4.1, ECLAIR needs to have a sourc=
e
>> file that is built.
>>=20
>> This file is generated from 'C-runtime-failures.rst' in docs/misra
>> and the configuration is updated accordingly.
>>=20
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>=20
> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry
>=20
>=20
>> ---
>> Changes from RFC:
>> - Dropped unused/useless code
>> - Revised the sed command
>> - Revised the clean target
>>=20
>> Changes in v2:
>> - Added explanative comment to the makefile
>> - printf instead of echo
>> ---
>> docs/Makefile       |  7 ++++++-
>> docs/misra/Makefile | 22 ++++++++++++++++++++++
>> 2 files changed, 28 insertions(+), 1 deletion(-)
>> create mode 100644 docs/misra/Makefile
>>=20
>> diff --git a/docs/Makefile b/docs/Makefile
>> index 966a104490ac..ff991a0c3ca2 100644
>> --- a/docs/Makefile
>> +++ b/docs/Makefile
>> @@ -43,7 +43,7 @@ DOC_PDF  :=3D $(patsubst %.pandoc,pdf/%.pdf,$(PANDOCSR=
C-y)) \
>> all: build
>>=20
>> .PHONY: build
>> -build: html txt pdf man-pages figs
>> +build: html txt pdf man-pages figs misra
>>=20
>> .PHONY: sphinx-html
>> sphinx-html:
>> @@ -66,9 +66,14 @@ endif
>> .PHONY: pdf
>> pdf: $(DOC_PDF)
>>=20
>> +.PHONY: misra
>> +misra:
>> + $(MAKE) -C misra
>> +
>> .PHONY: clean
>> clean: clean-man-pages
>> $(MAKE) -C figs clean
>> + $(MAKE) -C misra clean
>> rm -rf .word_count *.aux *.dvi *.bbl *.blg *.glo *.idx *~
>> rm -rf *.ilg *.log *.ind *.toc *.bak *.tmp core
>> rm -rf html txt pdf sphinx/html
>> diff --git a/docs/misra/Makefile b/docs/misra/Makefile
>> new file mode 100644
>> index 000000000000..8fd89404e96b
>> --- /dev/null
>> +++ b/docs/misra/Makefile
>> @@ -0,0 +1,22 @@
>> +TARGETS :=3D C-runtime-failures.o
>> +
>> +all: $(TARGETS)
>> +
>> +# This Makefile will generate the object files indicated in TARGETS by =
taking
>> +# the corresponding .rst file, converting its content to a C block comm=
ent and
>> +# then compiling the resulting .c file. This is needed for the file's c=
ontent to
>> +# be available when performing static analysis with ECLAIR on the proje=
ct.
>> +
>> +# sed is used in place of cat to prevent occurrences of '*/'
>> +# in the .rst from breaking the compilation
>> +$(TARGETS:.o=3D.c): %.c: %.rst
>> + printf "/*\n\n" > $@.tmp
>> + sed -e 's|\*/|*//*|g' $< >> $@.tmp
>> + printf "\n\n*/" >> $@.tmp
>> + mv $@.tmp $@
>> +
>> +%.o: %.c
>> + $(CC) -c $< -o $@
>> +
>> +clean:
>> + rm -f C-runtime-failures.c *.o *.tmp
>> --=20
>> 2.34.1
>>=20



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 00:55:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 00:55:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609241.948209 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlfJq-00042d-K2; Thu, 28 Sep 2023 00:55:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609241.948209; Thu, 28 Sep 2023 00:55:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlfJq-00042W-F1; Thu, 28 Sep 2023 00:55:54 +0000
Received: by outflank-mailman (input) for mailman id 609241;
 Thu, 28 Sep 2023 00:55:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlfJp-00042O-Ea
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 00:55:53 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c4da2074-5d99-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 02:55:51 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 99544B81802;
 Thu, 28 Sep 2023 00:55:50 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 55F0DC433C7;
 Thu, 28 Sep 2023 00:55:48 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c4da2074-5d99-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695862550;
	bh=l1jJuMrqQNeMLcCUFbV3oxtKFpwg/vXcujYdzv9tnyI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=MUi45NlyQkKxrJN2etWG+AuPzdMPfjflcrvUWRcNkH7pP0BzYs4jh4WVdW9J2lbfL
	 1hq5tUDRnLvzcZ0WDHO6Dj5N/nqzALszMFscie//UmVyxoIu68dM7yBNhQ3Nuabb54
	 aEirpEyVtdQV0lFs2sWCYM/f5iVw+/jzaLSb1T1KM1SWZybl/VYx3rn3akdVDftZeq
	 6+fPetqmj2W0DIzvOw0AA1CHd2lqIBG7surygvjWNWCkDSNWjXsSC8w6s5qVALeSMZ
	 0cQeH8NtdDwCpN+B1HH18iEiuD7tBLW9kG2PpTiadz/CZyV0c2U/pCk8Lpi48yCeXd
	 gT7Zzw8p0Q7aw==
Date: Wed, 27 Sep 2023 17:55:46 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: xen-devel@lists.xenproject.org, sstabellini@kernel.org, 
    michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, George Dunlap <george.dunlap@citrix.com>, 
    Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>, 
    Henry Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH v2 1/3] docs/misra: add documentation skeleton for
 MISRA C:2012 Dir 4.1
In-Reply-To: <5bb4dea2f48d0ef9a48a06c1b11c0dfcbd991aaf.1695801813.git.nicola.vetrini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309271750130.1996340@ubuntu-linux-20-04-desktop>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com> <5bb4dea2f48d0ef9a48a06c1b11c0dfcbd991aaf.1695801813.git.nicola.vetrini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 27 Sep 2023, Nicola Vetrini wrote:
> The aforementioned directive requires the project to supply documentation
> on the measures taken towards the minimization of run-time failures.
> 
> The actual content of the documentation still needs feedback from the
> community.
> 
> The 'rules.rst' file is updated accordingly to mention the newly
> added documentation.
> 
> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
> ---
> Changes in v2:
> - Incorporated suggestions from Stefano.
> ---
>  docs/misra/C-runtime-failures.rst | 200 ++++++++++++++++++++++++++++++
>  docs/misra/rules.rst              |   8 +-
>  2 files changed, 207 insertions(+), 1 deletion(-)
>  create mode 100644 docs/misra/C-runtime-failures.rst
> 
> diff --git a/docs/misra/C-runtime-failures.rst b/docs/misra/C-runtime-failures.rst
> new file mode 100644
> index 000000000000..325d3fab1fa5
> --- /dev/null
> +++ b/docs/misra/C-runtime-failures.rst
> @@ -0,0 +1,200 @@
> +===================================================================
> +Measures taken towards the minimization of Run-time failures in Xen
> +===================================================================
> +
> +This document specifies which procedures and techinques are used troughout the
> +Xen codebase to prevent or minimize the impact of certain classes of run-time
> +errors that can occurr in the execution of a C program, due to the very minimal
> +built-in checks that are present in the language.
> +
> +The presence of such documentation is requested by MISRA C:2012 Directive 4.1,
> +whose headline states: "Run-time failures shall be minimized".
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: overflow
> +________________________________________________
> +
> +Pervasive use of assertions and extensive test suite.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: unexpected wrapping
> +___________________________________________________________
> +
> +The only wrapping the is present in the code concerns
                     ^ that


> +unsigned integers and they are all expected.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: invalid shift
> +_____________________________________________________
> +
> +Pervasive use of assertions and extensive test suite.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: division/remainder by zero
> +__________________________________________________________________
> +
> +The division or remainder operations in the project code ensure that
> +their second argument is never zero.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: unsequenced side effects
> +________________________________________________________________
> +
> +Code executed in interrupt handlers uses spinlocks or disables interrupts
> +at the right locations to avoid unsequenced side effects.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: read from uninitialized automatic object
> +________________________________________________________________________________
> +
> +The amount of dynamically allocated objects is limited at runtime in
> +static configurations. We make sure to initialize dynamically allocated
> +objects before reading them, and we utilize static analysis tools to
> +help check for that.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: read from uninitialized allocated object
> +________________________________________________________________________________
> +
> +Dynamically allocated storage is used in a controlled manner, to prevent the
> +access to uninitialized allocated storage.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: write to string literal or const object
> +_______________________________________________________________________________
> +
> +The toolchain puts every string literal and const object into a read-only
> +section of memory.  The hardware exception raised when a write is attempted
> +on such a memory section is correctly handled.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: non-volatile access to volatile object
> +______________________________________________________________________________
> +
> +Volatile access is limited to registers that are always accessed
> +through macros or inline functions, or by limited code chunks that are only used
> +to access a register.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: access to dead allocated object
> +_______________________________________________________________________
> +
> +Although dynamically allocated storage is used in the project, in safety
> +configurations its usage is very limited at runtime (it is "almost" only used
> +at boot time). Coverity is regularly used to scan the code to detect non-freed
> +allocated objects.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: access to dead automatic object
> +_______________________________________________________________________
> +
> +Pointers to automatic variables are never returned, nor stored in
> +wider-scoped objects.  No function does the same on any pointer
> +received as a parameter.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: access to dead thread object
> +____________________________________________________________________
> +
> +The program does not use per-thread variables.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: access using null pointer
> +_________________________________________________________________
> +
> +All possibly null pointers are checked before access.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: access using invalid pointer
> +____________________________________________________________________
> +
> +Usage of pointers is limited.  Pointers passed as parameters are
> +always checked for validity.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: access using out-of-bounds pointer
> +__________________________________________________________________________
> +
> +Pointers are never used to access arrays without checking for the array size
> +first.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: access using unaligned pointer
> +______________________________________________________________________
> +
> +Pointer conversion that may result in unaligned pointers are never used.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: mistyped access to object
> +_________________________________________________________________
> +
> +Pointer conversions that may result in mistyped accesses to objects
> +are never used.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: mistyped access to function
> +___________________________________________________________________
> +
> +The code never uses function pointers.

You missed my previous comment on this one



> +Documentation for MISRA C:2012 Dir 4.1: invalid pointer arithmetic
> +__________________________________________________________________
> +
> +Pointer arithmetic is never used without checking object boundaries.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: invalid pointer comparison
> +__________________________________________________________________
> +
> +Pointers to different objects are never compared (except for pointers that are
> +actually linker symbols, but those cases are deviated with a justification).
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: overlapping copy
> +________________________________________________________
> +
> +The code never uses memcpy() to copy overlapping objects. The instances of
> +assignments involving overlapping objects are very limited and motivated.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: invalid arguments to function
> +_____________________________________________________________________
> +
> +Many parameters to functions are checked for validity; there is ongoing work to
> +make this true for all parameters.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: returned function error
> +_______________________________________________________________
> +
> +Many functions that may produce an error, do return a suitable status code
> +that is checked at each call site. There is ongoing work to make this true for
> +all such functions.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: tainted input
> +_____________________________________________________
> +
> +All parameters of all functions in the extenal ABI are checked before being
> +used.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: data race
> +_________________________________________________
> +
> +Data that can be accessed concurrently from multiple threads and code executed
> +by interrupt handlers is protected using spinlocks and other forms of locking,
> +as appropriate.
> +
> +
> +Documentation for MISRA C:2012 Dir 4.1: invariant violation
> +___________________________________________________________
> +
> +To be written.

Also this one escaped.

Overall, this is much better!



> +Documentation for MISRA C:2012 Dir 4.1: communication error
> +___________________________________________________________
> +
> +This project does not involve any external communication.
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 8e7d17d242a0..dd71fbe87f43 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -47,7 +47,13 @@ maintainers if you want to suggest a change.
>     * - `Dir 2.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_02_01.c>`_
>       - Required
>       - All source files shall compile without any compilation errors
> -     -
> +
> +   * - `Dir 4.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_01.c>`_
> +     - Required
> +     - Run-time failures shall be minimized
> +     - The strategies adopted by Xen to prevent certain classes of runtime
> +       failures is be documented by
> +       `C-runtime-failures.rst <docs/misra/C-runtime-failures.rst>`_
>  
>     * - `Dir 4.7 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-Suite/-/blob/master/D_04_07.c>`_
>       - Required
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 01:55:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 01:55:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609250.948217 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlgFF-0005hM-3T; Thu, 28 Sep 2023 01:55:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609250.948217; Thu, 28 Sep 2023 01:55:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlgFF-0005hF-0k; Thu, 28 Sep 2023 01:55:13 +0000
Received: by outflank-mailman (input) for mailman id 609250;
 Thu, 28 Sep 2023 01:55:11 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlgFD-0005h4-Dg; Thu, 28 Sep 2023 01:55:11 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlgFD-0004qJ-5w; Thu, 28 Sep 2023 01:55:11 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlgFC-0001xU-JR; Thu, 28 Sep 2023 01:55:10 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlgFC-0008Q0-Ie; Thu, 28 Sep 2023 01:55:10 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=dfOBBw7JnUpqNxDtdl9RBi18hz4yT13dBm8JW95GqIQ=; b=wKylAEW3aCE0dESCxC+1iC+KiR
	YC3eUO0W5bRvKeIQ9Gwuk3hvW5DDoeszMB4VSW5N9XGgkkp3GBoU2hFaLz/Sr9+6C60MFvI27xp/M
	3dT2dNT7/Msak0OqAtfu3c2j1uflxqNzPIHrWnbvhjAzb4eeNj1iDuSyLehBKjB+mvkE=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183192-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183192: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start.2:fail:regression
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 28 Sep 2023 01:55:10 +0000

flight 183192 linux-5.4 real [real]
flight 183198 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183192/
http://logs.test-lab.xenproject.org/osstest/logs/183198/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1  19 guest-start.2  fail in 183144 REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183144 pass in 183192
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail in 183144 pass in 183192
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 183183 pass in 183144
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail pass in 183183
 test-armhf-armhf-xl-credit2  14 guest-start                fail pass in 183183
 test-armhf-armhf-xl-credit1  14 guest-start                fail pass in 183183

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail blocked in 182613
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 183144 like 182613
 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail in 183183 like 182613
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail in 183183 never pass
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 183183 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 183183 never pass
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 183183 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 183183 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-armhf-armhf-xl-arndale  18 guest-start/debian.repeat    fail  like 182613
 test-armhf-armhf-xl          18 guest-start/debian.repeat    fail  like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182613
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat    fail  like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182613
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   25 days
Testing same since   183129  2023-09-23 09:20:22 Z    4 days    9 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 02:49:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 02:49:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609257.948227 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlh5i-0005OR-1Z; Thu, 28 Sep 2023 02:49:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609257.948227; Thu, 28 Sep 2023 02:49:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlh5h-0005OK-VF; Thu, 28 Sep 2023 02:49:25 +0000
Received: by outflank-mailman (input) for mailman id 609257;
 Thu, 28 Sep 2023 02:49:24 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlh5g-0005O9-RY; Thu, 28 Sep 2023 02:49:24 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlh5f-0006fW-OP; Thu, 28 Sep 2023 02:49:23 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlh5f-0003Fg-An; Thu, 28 Sep 2023 02:49:23 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlh5f-0003Jn-AD; Thu, 28 Sep 2023 02:49:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=ud6LBV7QzW2EEaotojxEi8RHgdSkPn4mHW9HI4M3E6U=; b=fJv4lua16y1MKJFFHMLmjKB/vi
	x+tD6hVYeepDsFLrDQ7kgX4UPXPEe2gIffJ3SQzDGOMVW/9KpTKJA/u5ynhNTFHA28ct6lG7KX9og
	oyVBb1mJThiki9kscn/JTipYhkQNOvHRMoGn3ECkI4gOBfS1G0sYtVIY/zCCSnOmB3W0=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183197-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183197: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=a363089e68ed677fef12c296253535753fe817e3
X-Osstest-Versions-That:
    xen=a1f8b32af001c15ce3c6be2364826b1ca35b6caa
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 28 Sep 2023 02:49:23 +0000

flight 183197 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183197/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  a363089e68ed677fef12c296253535753fe817e3
baseline version:
 xen                  a1f8b32af001c15ce3c6be2364826b1ca35b6caa

Last test of basis   183193  2023-09-27 11:02:05 Z    0 days
Testing same since   183197  2023-09-28 00:02:01 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Shawn Anastasio <sanastasio@raptorengineering.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   a1f8b32af0..a363089e68  a363089e68ed677fef12c296253535753fe817e3 -> smoke


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 05:55:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 05:55:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609264.948238 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qljz8-0001yr-RB; Thu, 28 Sep 2023 05:54:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609264.948238; Thu, 28 Sep 2023 05:54:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qljz8-0001yk-OM; Thu, 28 Sep 2023 05:54:50 +0000
Received: by outflank-mailman (input) for mailman id 609264;
 Thu, 28 Sep 2023 05:54:49 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qljz7-0001yU-H1; Thu, 28 Sep 2023 05:54:49 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qljz7-0003F4-5H; Thu, 28 Sep 2023 05:54:49 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qljz6-0004vs-QJ; Thu, 28 Sep 2023 05:54:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qljz6-00043K-Pr; Thu, 28 Sep 2023 05:54:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=kjWyeFesFUhJkNFKgYhSGp0rWhnvDhafqdjwlm2KNBM=; b=H+U39it8vvgujjcJ3/F8umIydf
	OCYg0WaM/I+UwJJ25IKRF6zwAAy3nuxiEMGmLtdJ95NbooGJduHZ49Yami5WSZngmHVwRmyJ9H6op
	rG2QE04gEd1PxNCaTy57hugy7H+TuDckZNdYNZ/N0uOgdNPhsofycWwnnSV3CR91FlN8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183200-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [ovmf test] 183200: all pass - PUSHED
X-Osstest-Versions-This:
    ovmf=f36e1ec1f0a5fd3be84913e09181d7813444b620
X-Osstest-Versions-That:
    ovmf=ad1c0394b1770315099e511de7c88a04d7af76f2
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 28 Sep 2023 05:54:48 +0000

flight 183200 ovmf real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183200/

Perfect :-)
All tests in this flight passed as required
version targeted for testing:
 ovmf                 f36e1ec1f0a5fd3be84913e09181d7813444b620
baseline version:
 ovmf                 ad1c0394b1770315099e511de7c88a04d7af76f2

Last test of basis   183190  2023-09-27 05:23:10 Z    1 days
Testing same since   183200  2023-09-28 02:10:46 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Gao Cheng <gao.cheng@intel.com>

jobs:
 build-amd64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/osstest/ovmf.git
   ad1c0394b1..f36e1ec1f0  f36e1ec1f0a5fd3be84913e09181d7813444b620 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 06:26:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 06:26:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609272.948248 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlkTI-0005hA-AS; Thu, 28 Sep 2023 06:26:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609272.948248; Thu, 28 Sep 2023 06:26:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlkTI-0005h3-7R; Thu, 28 Sep 2023 06:26:00 +0000
Received: by outflank-mailman (input) for mailman id 609272;
 Thu, 28 Sep 2023 06:25:58 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlkTG-0005gx-Hr
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 06:25:58 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20626.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::626])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e1659134-5dc7-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 08:25:56 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7809.eurprd04.prod.outlook.com (2603:10a6:20b:242::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 06:25:53 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 06:25:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e1659134-5dc7-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=GQNPgjnV6tUhpm7vo47/qxAFAqSH0DYTtcJEpxvNNa4ZMDjjgIduKadKZTC4NDW2B/TjR+mKgvTcLO7urFscOL/ZaO9tOJLlB+mbgoZg8h2A3bl0CxZS+nVCjQLR4hhzpiFo0yi2Jex+oClScboRkkQp6TAsqinfa+tXhd3m4a2eis7CP/gwvCXql+2U5lHl13tbbL/hq4uNHbUqjvxpLdjPpugigbEEnn25c5AW1SL/8+B7gF79V3hk7ITZhZthRRKozHsNyKDhBZTHZm+vOOPdajk7ugV8im2HbFOzdzu5yByj93RXY0NowH/FRLaZ9IDt6Q21ZY8bfApuJPZ/QA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=sKQTNh+YhOkIo/Whcq7H0tmI5hZxy65obV9kR55ubmA=;
 b=Zeh/B4ZmiD2p4nsS3xE51vQy8FPXcujEsSORT8ncyyv9dT5ry9o3J/cYVsYM6KpBJlK8dRdk9gAph9N2xsIkqIIPLTDYgpkkxtrXPNdU+TfuGmQmDcc2a2uLbGb4ykv8cc/xb7OwfDhLW8fR5yzPgFrJznfBff5+gNO/4DJ+qXj8W8PJO6gR/+QOL+jRQG2a6P7ZrnItrw5SWIHi1DSAywq4lugKMii+p8cieLiMnksYm7jnNaLU5LnF7gfttHhzakPJOb6kJGVtWotaQkw6ANd7BkZ4Q1Uexi29kN29iRo/QFab1ooH4F08nSkcDvA/TxhpmsBp/HniQ5+5xH/zvA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=sKQTNh+YhOkIo/Whcq7H0tmI5hZxy65obV9kR55ubmA=;
 b=uUUSgnXbdVDjjGIYakVdgD4vvZDrwYTWP23J41JOTQoOTZLY0KxM3+mG/wEjEwtXUL7+B+2l+LOYcoMrWP2zpMv4+Qubi3wIvcdqnzetLJ/5gRikFO8WHq0lSQ4IvUU6cJJ5DwCugajx6/iSaUpviGlc4KVFfTGF9XtOf7AcO76AvBbS1hgKs28h8fFGkzVaDd8P/brDXC43AMALNE+uYPg/bGrJNVC0Sdybo4IA9aKFl2wDebkw47dz3ek9PF+P2FYPIbmVBLsxzENsmjS1kqLa9i/LwnP5aY/okP7hJL8gSEtdRhj4575TfkJ7Fxa9l2CptsdhCoKKbABz/Cx4LA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3727a667-fada-faea-27ec-cde7612c358d@suse.com>
Date: Thu, 28 Sep 2023 08:25:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH] x86/domain_page: address violations of MISRA C:2012
 Rule 8.3
Content-Language: en-US
To: Federico Serafini <federico.serafini@bugseng.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Henry Wang <henry.wang@arm.com>, xen-devel@lists.xenproject.org
References: <6f3538a91f719611e719066237568163ae90c95e.1695827160.git.federico.serafini@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <6f3538a91f719611e719066237568163ae90c95e.1695827160.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0190.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a4::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7809:EE_
X-MS-Office365-Filtering-Correlation-Id: 1720ef4b-850f-4e73-81a3-08dbbfebc446
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mLtGF1lcFSmI3Ty3ibSWZ9HLSYVCIoYlDb9p0Ica0Ug2h3uRlxV4TSKb+xPR1ur2MLkvrNdG45hv2OGmCkpy4lIv4UX4NbeQyQWBW7zKWVoTWfQWaztzlxhqPJcIsSVGcDjHWaVaf2Wh7fausxsfBIhag4KqpUBIBWof0PlhQOjB6MCkcyvBwWGeRLTAkSqJ0REm60cUCOh+QA7hRtSc1/c0cSEjeYdTRSPiMnDK0hnkYYAp4bmrpAtloXJAqvp8SdEheicD169a0cS2tNStm7sBDMjqTuWG5mYL2mArBBc5myyq3nvpOulZufZ8qNaN2rIuT59+YB7M4rtXmfOvnlzI/+oBq+bE7AvvFmYNnIl5Clo/u2NJhWHLlNdttcqyExJ9/v/he4OWJQ5VrD5uJSVnKBh8IScn0NMOs+hH5opZXMJSiostZw9B69Y1FkjabcSlQPEhafHPCqhOCgVPVHm4LaKXubr5fbd9xqR6ewKVja/QJ7q/yM3SD+fV5LiqMihdT5vKZ/R1NRffhs5MdJB+yW7E2oHp3Wei230uss5yhKcB/cF/C9yE/uVti1vnSXhxVzzrW27tVeVeZaZUT4/8IT7YmFChGTpe0/sYv47VaMyj9AFCzbINYpTrVGsp9tu/nTNXG2W+T2C6yepIVA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(366004)(39860400002)(376002)(396003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(6506007)(26005)(66476007)(66556008)(86362001)(6486002)(6512007)(53546011)(31696002)(478600001)(2906002)(38100700002)(54906003)(83380400001)(6916009)(316002)(8936002)(36756003)(2616005)(5660300002)(4326008)(66946007)(8676002)(41300700001)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?L3NZSHoyNCsvVEU4eWZ3c24xelE2T1UzeEYwRmo3TUhXd215czQwbkc3czlr?=
 =?utf-8?B?WjI1VjVPV0RWN3o2c1J6dmNDTTY2Y3d3YTZIQnRVWDl1YTg5bXFwNDRReVIz?=
 =?utf-8?B?QlZBTERSbEJ0ZW43bThmZ3ZpVWJmNnVrQlBteGowcVFVcVp6bnl6eUdjOU5H?=
 =?utf-8?B?cDZiS00wOHhEZm10ZjU4WUl5bExFN0pSQVJ2VnJqbHJMTTBmRnRzTDh0VXdS?=
 =?utf-8?B?QVFZM1V1aGFmVm50SDdveXMyV2lYd1BNdjFkclBvQnBwSjJ1N2lKYkU3cjFX?=
 =?utf-8?B?UERZT2hzbmtoeVM2VXRvTnBWY1pNbzJNZDU5by9yUng4a3hzRWVJNkt3RFox?=
 =?utf-8?B?bDY5OGRXT1hGOTR1elk3cXZtZW05K1dNQjN4SmF1bktoVTdNMzNWbHphWDJ6?=
 =?utf-8?B?WVUycTQ5MTZnQWx3UXZlQUI0Mmw4cW1HRVFtbDB0aDNtTUVKU0FyaE1rdndq?=
 =?utf-8?B?MFIrWGVIQWlMVktOQU15MTUvOWJXa1RNYnRUVHNaVkk4VWh2Y1J1MnRQeHdW?=
 =?utf-8?B?aEFyenplYkl6LzNPZVNkendub0ZPNGYycDM4eDNPRHo3NU80ZXU4RXdrYkFl?=
 =?utf-8?B?U1RsTjVGNGd2bzhwV28zdTAvK1VEZDB5dUdQZnlRU2NHcXRKS2FqNzdRcmVF?=
 =?utf-8?B?bk5YTm9kcXB5UmF1MDlXdU5GNmJhVXZCTE5YQXJ1S2lCOVR5TStka0ZQSmZu?=
 =?utf-8?B?elJ4bTV6WHlQSU9ZOG1teGNsSSsrNzVZRi8rTmNqVW1YUkVlOEdoT2lNb0hI?=
 =?utf-8?B?TEhFN3FVRGcrSG9DUktmVytLbldWSC9LdFNPRUVPNWVKLzZwcHU3L0hFR3dF?=
 =?utf-8?B?U3NiUE5vckZ6OVRLQVdlRXNMTjQvTzYrRndLeVdUY2lETUl0NHMwUWI3Yyt4?=
 =?utf-8?B?cUM1REpFTzZwcnZQekpyWE9yVjFIbk9ibVpuVHNyNCtHdzNvaWg3dDNrRjJr?=
 =?utf-8?B?RVRPMzgxQ1FtVHBySytBc2RSaGk3ZVdmMEJ1U05FOHU2eHkyell5MmpWRnVX?=
 =?utf-8?B?eFVXRWtzVHd6RG5sbUI4QmYyUkdsM2QwcjRDYjBRWVBSSXB2dGhYVDNyUW9X?=
 =?utf-8?B?b1VqZ1IwSWxDWUZlYlpxM3BjWjYzcG1rYVU4cmhLVEM3amFZMVRDamYrbTFJ?=
 =?utf-8?B?RFcvZDFqaFpOZjhKa2cxMG40LytIRmsvTWJDa1RpSGdwWlk1dS8xejRqMFIx?=
 =?utf-8?B?MmxSdEN0UDJ6MHd1WHZYMWhVSC9EMFA4UnY1cGsxV1NvWlM5ZDNWWTUwcjBO?=
 =?utf-8?B?dDRaS0ZpdUt0eWtiYlZnZ0hVM0FtcG9tWlU5cHQxY29PNE5vR3BMcm55QzB4?=
 =?utf-8?B?djdQQzcwdkc3WmZ5dTJDMHE5cWtYd2JIZmZ2dDNIMHJRQWxnNnlhT3JtV3dN?=
 =?utf-8?B?ZE90VUhXeGY3UFU1MmZhbWpvaXQzTUxkRWQzMURWNXBBSXp6dERJblU0VVRq?=
 =?utf-8?B?SFIrVkdtMldlSDJFOVNhZitnZFI0Y0paWW5pQzE4UVR6UTRDc25pcmRoSk5Z?=
 =?utf-8?B?TjA2bno2UkZOY1cxaEp4bzNnZG93S3NPU3pRdHpKQ0VYMVZyUHNvTFVXc3Rs?=
 =?utf-8?B?c05vTzlhVUhxTVRiM0pkNjVhVkhSaFNWaTVnZ0dtNW9TOUhWa1RzOGE2V0JI?=
 =?utf-8?B?dC9xSjdlZE10aElrWU01bm90b1JEOVVGSmlKL2h3elRyb0hveEgzandmNzQ2?=
 =?utf-8?B?UGIyR2F1V0VwdC9pRFBUZDdTdS90dFdSejVTSEZ4THY0VnA0ZWxjZHJ1VWtL?=
 =?utf-8?B?R2FTOWh5b0k4MXRoWWdtVWgyT3ZmUkVXTEJOVDFUTm9saGxCOXd3elA2cUI4?=
 =?utf-8?B?aFdWUFBpZ0c5akpkVGZsTDJWKzh4aUpRRjBQTUl4UWxPNnJvcGUydWI0U2F3?=
 =?utf-8?B?Q3dVYlA2aHJyTnU3cFNHZ2dwYjNSa2ZBWFFTc2FkZ1I4VEJQR3dDdTdiNFAv?=
 =?utf-8?B?bzlxcitGZ1lDcUk5TCtVSnA2dk5ZalJXL0hiNVZadmcyQ0VFUzJObXVFKzRj?=
 =?utf-8?B?S3hOU3lablozSVA4czFSTm5sRG45NFQyNHNuWEtIYXJ0ZTNmczV4c0I0WG5p?=
 =?utf-8?B?RDdwZU9meUhFZW8zaUdEOW5KampBd21UTTR0MlE2cHA2b1pPSGJSUlc5c2FD?=
 =?utf-8?Q?5jLVaIwAyH6yTvJQbG1BMnhNg?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1720ef4b-850f-4e73-81a3-08dbbfebc446
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 06:25:53.5736
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Vf0E4m0HfrFDIcmol/YDjylKuEIOa/dg7eya/PcH6wJqZ2RXVAKB2/9i7lNehghWM6owv6MRHDHpq9uOnQM/HQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7809

On 27.09.2023 17:09, Federico Serafini wrote:
> Make function declarations and definitions consistent.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> ---
>  xen/arch/x86/domain_page.c | 36 ++++++++++++++++++------------------
>  1 file changed, 18 insertions(+), 18 deletions(-)
> 
> diff --git a/xen/arch/x86/domain_page.c b/xen/arch/x86/domain_page.c
> index eac5e3304f..1cfa992a02 100644
> --- a/xen/arch/x86/domain_page.c
> +++ b/xen/arch/x86/domain_page.c
> @@ -173,18 +173,18 @@ void *map_domain_page(mfn_t mfn)
>      return (void *)MAPCACHE_VIRT_START + pfn_to_paddr(idx);
>  }
>  
> -void unmap_domain_page(const void *ptr)
> +void unmap_domain_page(const void *va)
>  {
>      unsigned int idx;
>      struct vcpu *v;
>      struct mapcache_domain *dcache;
> -    unsigned long va = (unsigned long)ptr, mfn, flags;
> +    unsigned long addr = (unsigned long)va, mfn, flags;
>      struct vcpu_maphash_entry *hashent;
>  
> -    if ( !va || va >= DIRECTMAP_VIRT_START )
> +    if ( !addr || addr >= DIRECTMAP_VIRT_START )
>          return;
>  
> -    ASSERT(va >= MAPCACHE_VIRT_START && va < MAPCACHE_VIRT_END);
> +    ASSERT(addr >= MAPCACHE_VIRT_START && addr < MAPCACHE_VIRT_END);
>  
>      v = mapcache_current_vcpu();
>      ASSERT(v && is_pv_vcpu(v));
> @@ -192,7 +192,7 @@ void unmap_domain_page(const void *ptr)
>      dcache = &v->domain->arch.pv.mapcache;
>      ASSERT(dcache->inuse);
>  
> -    idx = PFN_DOWN(va - MAPCACHE_VIRT_START);
> +    idx = PFN_DOWN(addr - MAPCACHE_VIRT_START);
>      mfn = l1e_get_pfn(MAPCACHE_L1ENT(idx));
>      hashent = &v->arch.pv.mapcache.hash[MAPHASH_HASHFN(mfn)];
>  
> @@ -317,30 +317,30 @@ void *map_domain_page_global(mfn_t mfn)
>      return vmap(&mfn, 1);
>  }
>  
> -void unmap_domain_page_global(const void *ptr)
> +void unmap_domain_page_global(const void *va)
>  {
> -    unsigned long va = (unsigned long)ptr;
> +    unsigned long addr = (unsigned long)va;
>  
> -    if ( va >= DIRECTMAP_VIRT_START )
> +    if ( addr >= DIRECTMAP_VIRT_START )
>          return;
>  
> -    ASSERT(va >= VMAP_VIRT_START && va < VMAP_VIRT_END);
> +    ASSERT(addr >= VMAP_VIRT_START && addr < VMAP_VIRT_END);
>  
> -    vunmap(ptr);
> +    vunmap(va);
>  }

Up to here a statement in the description is needed why this apparently
much heavier code churn (compared to changing the declaration) is still
the (likely) better approach. (It may still be worthwhile to consider
changing declaration and Arm code, for "ptr" being the imo better name
for a const void * parameter, and "va" being more specific than just
"addr" as a local variable.)

>  /* Translate a map-domain-page'd address to the underlying MFN */
> -mfn_t domain_page_map_to_mfn(const void *ptr)
> +mfn_t domain_page_map_to_mfn(const void *va)
>  {
> -    unsigned long va = (unsigned long)ptr;
> +    unsigned long addr = (unsigned long)va;
>  
> -    if ( va >= DIRECTMAP_VIRT_START )
> -        return _mfn(virt_to_mfn(ptr));
> +    if ( addr >= DIRECTMAP_VIRT_START )
> +        return _mfn(virt_to_mfn(va));
>  
> -    if ( va >= VMAP_VIRT_START && va < VMAP_VIRT_END )
> -        return vmap_to_mfn(va);
> +    if ( addr >= VMAP_VIRT_START && addr < VMAP_VIRT_END )
> +        return vmap_to_mfn(addr);
>  
> -    ASSERT(va >= MAPCACHE_VIRT_START && va < MAPCACHE_VIRT_END);
> +    ASSERT(addr >= MAPCACHE_VIRT_START && addr < MAPCACHE_VIRT_END);
>  
> -    return l1e_get_mfn(__linear_l1_table[l1_linear_offset(va)]);
> +    return l1e_get_mfn(__linear_l1_table[l1_linear_offset(addr)]);
>  }

This change, otoh, moves the violation from x86 to Arm, afaict. IOW
this likely wants taking care of by changing the declaration. Then,
for consistency, the consideration above gains one more supporting
factor.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 06:52:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 06:52:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609277.948258 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlktE-0000zg-EK; Thu, 28 Sep 2023 06:52:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609277.948258; Thu, 28 Sep 2023 06:52:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlktE-0000zZ-As; Thu, 28 Sep 2023 06:52:48 +0000
Received: by outflank-mailman (input) for mailman id 609277;
 Thu, 28 Sep 2023 06:52:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LRrN=FM=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qlktD-0000zT-IR
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 06:52:47 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a13eaba6-5dcb-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 08:52:46 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 7AF004EE0738;
 Thu, 28 Sep 2023 08:52:45 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a13eaba6-5dcb-11ee-878a-cb3800f73035
MIME-Version: 1.0
Date: Thu, 28 Sep 2023 08:52:45 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, Henry
 Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH v2 3/3] automation/eclair: build docs/misra to address
 MISRA C:2012 Dir 4.1
In-Reply-To: <14f44178655243a94ad3e51a72281637@bugseng.com>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com>
 <bc2d62ad97a821f9c8e17a1ff3c9ed55922dbbd4.1695801813.git.nicola.vetrini@bugseng.com>
 <14f44178655243a94ad3e51a72281637@bugseng.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <0b5ff4ad22f42622befbdaf5ef3a9ae2@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 27/09/2023 15:29, Nicola Vetrini wrote:
> On 27/09/2023 11:52, Nicola Vetrini wrote:
>> The documentation pertaining Directive 4.1 is contained in docs/misra.
>> The build script driving the analysis is amended to allow ECLAIR to
>> analyze such file.
>> 
>> Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
>> ---
>> Changes in v2:
>> - removed useless make flags
>> ---
>>  automation/eclair_analysis/build.sh   | 6 +++---
>>  automation/eclair_analysis/prepare.sh | 4 ++--
>>  2 files changed, 5 insertions(+), 5 deletions(-)
>> 
>> diff --git a/automation/eclair_analysis/build.sh
>> b/automation/eclair_analysis/build.sh
>> index ec087dd822fa..ea7a1e5a59b0 100755
>> --- a/automation/eclair_analysis/build.sh
>> +++ b/automation/eclair_analysis/build.sh
>> @@ -34,11 +34,11 @@ else
>>  fi
>> 
>>  (
>> -  cd xen
>> -
>> +  make -C docs misra
>>    make "-j${PROCESSORS}" "-l${PROCESSORS}.0"    \
>>         "CROSS_COMPILE=${CROSS_COMPILE}"         \
>>         "CC=${CROSS_COMPILE}gcc-12"              \
>>         "CXX=${CROSS_COMPILE}g++-12"             \
>> -       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"
>> +       "XEN_TARGET_ARCH=${XEN_TARGET_ARCH}"     \
>> +       -C xen
>>  )
>> diff --git a/automation/eclair_analysis/prepare.sh
>> b/automation/eclair_analysis/prepare.sh
>> index 0cac5eba00ae..ebd5a2dde676 100755
>> --- a/automation/eclair_analysis/prepare.sh
>> +++ b/automation/eclair_analysis/prepare.sh
>> @@ -35,8 +35,8 @@ else
>>  fi
>> 
>>  (
>> -    cd xen
>> -    cp "${CONFIG_FILE}" .config
>> +    ./configure
>> +    cp "${CONFIG_FILE}" xen/.config
>>      make clean
>>      find . -type f -name "*.safparse" -print -delete
>>      make -f ${script_dir}/Makefile.prepare prepare
> 
> Hi, I observed a failure when running the analysis job of this series
> through patchew, so
> I think it's a good idea to put this patch on hold until I've figured
> out what's wrong.
> Sorry for the inconvenience.

I found the culprit; there is a minor issue with patches 2/3 and 3/3.
I'll submit a new one and address the other review comments as well.
The changes will be minimal, so perhaps I will be able to retain the 
R-by-s.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 07:00:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 07:00:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609284.948273 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qll0H-0002Js-7M; Thu, 28 Sep 2023 07:00:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609284.948273; Thu, 28 Sep 2023 07:00:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qll0H-0002Jl-2g; Thu, 28 Sep 2023 07:00:05 +0000
Received: by outflank-mailman (input) for mailman id 609284;
 Thu, 28 Sep 2023 07:00:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qll0F-00024S-PH
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 07:00:03 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on060d.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::60d])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a54a30f7-5dcc-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 09:00:02 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PR3PR04MB7227.eurprd04.prod.outlook.com (2603:10a6:102:82::8) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 07:00:00 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 06:59:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a54a30f7-5dcc-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=AcT/wUXUqTb8SX041RBhvMJLVWRDVeZa6GESxoXLMOk29oVGPpzlPvAVatedZKYylnDhc0pDsMSYE9gl4lS7tstd1Ip5D9bqCO/ljoWY0xjsPCqEzRzEmTPXdFu0kj2IZbqfkLmQxhWAWo+Vkfcb4Tou7G5FG18UdXj2oFou7hwDYW5SauDOZ8OFspn5RVZ8DVUTcQGU8i57ZMDDCwV42BrvvjXewSK8X+p8EjBlcskY9MhV/NACgLGQhFr3ogKL3mYohvz6qU3buyNtTk0ZbBds6dWREYVUic86A/vRsNc5IGYS8b8/nVO5UJjPJcehE4TvixUTFoiiDZ8jzxvOmg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=D5kVhgsmVo6prWpSNz/DxhQUVKA2Z76+pRoLqMJ1B5g=;
 b=n12Kql64z3avHJwORdVhjHPtTD3E01bk4V88VRIDPdGnKo0KcviSJe7e1t6Tj8cN16sChQMr24bGVxs/XVekkZopde1ATNFfnkOPyEq0/VJpEhvvNu4P867xmY23HgREscUmztjqk/5P+cTXG92IfozJXtJqoprL6u6rk6mliJpgTOnPfD1t1vZ8smMrBoEAjB5k1+D3eZwOslyjaWHZzpqg1MACW+neb5zYju9b/jH907kmb5+d9GwK6TATtasCo4Rm+0US3zelja3A384GtDK06RH99kOqXVhr4EW2Ajkges7kYgcTY/103C4G+R614gQi+Kqx9TYdSvnEVb0lXA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=D5kVhgsmVo6prWpSNz/DxhQUVKA2Z76+pRoLqMJ1B5g=;
 b=0qtwZN/XDrk5MGn+wx5/eVBaO76VDcuSUt3gS2DTRk5V0trjCSJ6UI6r5lKiLF4xPYBI4HEpn6EwDBOBI7jJevrbLAc7jz2P0+VbEEisFR1/VfVOlPmsEIy69L52GsW+V/0ZN+4tZuUfe79rx4+hGG614pEahssAijIU903SPYADskRIl0+52HEqeZK/aNOEllOkP93ItgjWZYaC77ebqhdrbzjDBVWAN6Xg625wTtJk1lTw77b5Z7jfkibudf7xZnBTneGja0BeTZ7LxVTc+p2iYtlp94iApBXUXSVQmaRTd59vDe2Ss/rtmAqDq2v+sr14bf9uIKiMllMlcWp6XQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
Date: Thu, 28 Sep 2023 08:59:57 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH v4 0/9] runstate/time area registration by (guest) physical
 address
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0102.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cb::9) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PR3PR04MB7227:EE_
X-MS-Office365-Filtering-Correlation-Id: 35f90a52-22e7-4e22-f1af-08dbbff087c9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	xYKtjCZ9CiMQ9oNoqtsqTPZ7HyrCnoH0leh9erD5j35RZ4tdEdH8/65CPYvJ9F6KpZM0Ox5REWPMMZrhu2iVXZd1M6PzneIuagTq9O6ExW/SDRmUtOMw9vI4i8oGdQfzL9SNKVpY5O5oM8B6SkYyGfSDauvTGPMxll8hfY1gyrmuAU9ro88oCUFx4S42raWj9jtPfMy5lOTixGnFDWUZIK+zst4zJJsXMY+uOJaGDsYzsmzk+SSg8TJ1Rcq3ENN0aHWRSQJIB0u9EK+OBrO3HetfsRInsQonqSfRGnYKryC66C7klyVi3zLbP3QeRr/SdjpNcd7WKdhtD41L/YJ6sI480MvfimbjLzjAZQ22Z5l/UYWC5V36CvZ8Va++VludONahfoO0lfgmOI0zdQBWPigl4zB7yDDzNRjvCungs4el4suaLKA6AJvnwNCLIdbHBMtk2Nz3w9m+Dy9GHyskDfEojGEnlyVOvXtz8Jd4GFaaqeorwJQV4lVG6mNpU7djK6j6qCcodBSTmY1+2sFqMw6x84t+EPxQUnJR2Qi+/YzZEUwxQHsRlqEKpZ8Q26Bt7Wgm6kxU0j5FHdyVVkBauMTxc8ZRdhI9hwzRgrQ+I12KxJ6lLXVx3TM+JfIYnnTiigPWV6zoQoClMG55VW6mLg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(376002)(39860400002)(346002)(366004)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(6512007)(6486002)(6506007)(83380400001)(31696002)(38100700002)(86362001)(2616005)(36756003)(26005)(2906002)(41300700001)(316002)(4744005)(66476007)(6916009)(66946007)(54906003)(4326008)(8936002)(31686004)(478600001)(8676002)(5660300002)(66556008)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?R29XaGJibDhkNzFvdHdVVDIxUU5RZ0h5QUJLcWM5MUtEbFlPNVh5WUNKMnh2?=
 =?utf-8?B?ZUNobjV1blJLNkFsVTU3bmpJMkdHekE5UTNMa2xGenJTWHZqKzdyNDhjbWpL?=
 =?utf-8?B?bDJ4dDJHSTdjN3RhVkl3MC9JL3crK1UyYno1RlF6M3l6R09ScWN5UStBdVNJ?=
 =?utf-8?B?RWRZZDhacXE3OFFXdHk1c0h3MjFxV1NtVmViaml6dDJ4Zm1XVDltblFBMEFW?=
 =?utf-8?B?aTZlNVR5b29aYTRkMHQvNVE2bExPaTFZMm9XSU9xVzY1OHhTRDhmR29wQkNM?=
 =?utf-8?B?aFpBanJsY3pNN2VEWkU2UGlJT3F6bVA2VExoYmg2ZHZjVnNHdUhsU1RzNVJM?=
 =?utf-8?B?THdLc0E0K2FjOW9QbEJZTXQzRHJBUjB3RDVkUDNXTEl0ZDJSZ0ZxZElEQXdR?=
 =?utf-8?B?WG5NajEwaGtIVDJETW1icmxWdm5LMlhKUUZwUWNDVEZteUpaUjZ4b25IdlAz?=
 =?utf-8?B?cXNLWEJMYVEwcnFhVkJuSitIWkhWK29DR0ZzQldBaDg3eGQ5K0YxTlRUUUFn?=
 =?utf-8?B?YWowUVdBRWNMMHRtaVZQQjY3WXNMZVk1ZlpxbSt0c0Rxc05SMGFpVGljcjVl?=
 =?utf-8?B?dG1laHFTNm5RSU1VT2pBc3d4V0NNRmw2YmJGV2ZSSmlaUXhFWTdEd1owekI5?=
 =?utf-8?B?SUltTFZGMzhlei9NZ0toVDZNN1RSK21YVVAwWStOTm5FbDdncFE0VUMyRlZv?=
 =?utf-8?B?RjZySDE5OGxoWlRlRThRZ0J6NkxTTGdNTkYzbzFyWnB5YjVvdjJVdXZ5U21B?=
 =?utf-8?B?ek5yV3dobjdEN3FlYVA2VnR3MkNjTFV6OEZ3cWNOVEpBaUR5ZlZGZTlzWDhS?=
 =?utf-8?B?bGZZMnZrOGRGVHdYTFNxTlN2WVdrQUdvVTZWWWJMM2ZiWmhkRzlmOXVWK2pr?=
 =?utf-8?B?Z2FiK3l2UmhTLzhpSmtYQVB5Yko1Uk1TQmUyRUlZbmtpUjl0K0RPYnp1K1pB?=
 =?utf-8?B?SDdCd0RqQlFhOEFjZy9nZmtjQkplblp1bjFxWFZoWThBVU52Y0RTQ00vUFRi?=
 =?utf-8?B?MFBpMFl6QjhESWtpbnpRUGIxc2FRY0t6bmVub3VNNFdRRk9oRTJnbEx6S095?=
 =?utf-8?B?dnVjaDEwSUVidDlPOWV3WUpJRFZqQTdxKzhoMlhRSzlySHhtQzA2b3prWitP?=
 =?utf-8?B?czBaemc2Ky9VaVpqWmlXN05UUWNQa3hhNFBNMWVpUHRsWkdNT1dWcFNhTWlH?=
 =?utf-8?B?Y2N1OGtPNEkxTnNYbVh1dytoOEhUQk85Wm5rUUVLaE9DaU5ZVnZtS1c2MkR0?=
 =?utf-8?B?YjhzZFpqWlQxd3luTlh4QjByYkJUSCtjSVBFREhLT3pMN1l3YjNTM3NsZzk2?=
 =?utf-8?B?MC9iYi9NY1VXYmhoVUg2RWd5NFlSTTJva0lWSnVsaDVGTDl2ZHpFWFhmOGtB?=
 =?utf-8?B?Vkk1VkZiUUE1SkxCZjNsRGVvSEJMSmhpMXlzKzRDbFRRZ0dMRTJwanU2NXNo?=
 =?utf-8?B?ZlBMc1B5T082SUxHb1BObTdvUkxEMGZqT1F0a3NnNkNYd2xDemhqUGo2QWZ4?=
 =?utf-8?B?ZjlRSVZMZm5MaXBsUGc5Y1Vqa1I5WXd0Q3RDcTdtVGp5ZWY0UUx3RHF3SEsv?=
 =?utf-8?B?RkNTbktkRGFTdWtOVHI4T0NOMUt6S3Fnckc4bFpnMjExWFg0VmowbnNNOEZM?=
 =?utf-8?B?aUpwOWJ0S0RHL00zM0gzY3ByWnVRM2xWRG9lZGVSWk5teEhscXV3R1BzMFhu?=
 =?utf-8?B?SlYyQXg5bjlvL1VUU2N0Q0IwRGRkSEM2TkpFeUF3R2JPSm1YYjI5L3Y4UWJk?=
 =?utf-8?B?d3VMdDRqRzdYajV6dXNWUkpTWS9NbjQwbDltTDYzcVEyM1VpTFkxSXVZQlhy?=
 =?utf-8?B?aGxwSWpSUEtrQ0VIL1Q1SU03MlI3R0VSK1FNTEZISlAvUUZUbkJ0SnI2a244?=
 =?utf-8?B?ejc3TEpWMGhtbU4xM01HbVZKb0p3T1VZMk8yYzVqb3U3dzRMYkNzSUhCMWMy?=
 =?utf-8?B?dDhhUURCcUVWbkJpM1l5WWdvQnpzclExcWdJaXpGcEY4eGttTG80V3Z4aFcr?=
 =?utf-8?B?dzQxSUcvTjMvMlBoZWd2V1NMYlN2dlFPcGlHV2swUTMvUUFEQWlTQnZIVElx?=
 =?utf-8?B?TEhhS2pLUjc2dm1uM1N3TXNibmM2WXVOKzAyOGtCVVVRV1ZMbW9GM3lGTlI0?=
 =?utf-8?Q?zL9SeAiho+NWRUfCrMlJQQWXH?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 35f90a52-22e7-4e22-f1af-08dbbff087c9
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 06:59:59.7050
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 1p8b7SZv2ZfgZOyfNNdumUMdNTsQHi9dMYGSp7ckGxiZWdBPT0kB0fnNOxx8pXrhtVO8yxclfGvLWwmy15N1IQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7227

Since it was indicated that introducing specific new vCPU ops may be
beneficial independent of the introduction of a fully physical-
address-based ABI flavor, here we go. There continue to be a few open
questions throughout the series, resolving of which was one of the main
goals of the earlier postings. v4 adds one (small) new patch and
addresses review comments; see individual patches.

1: x86/shim: zap runstate and time area handles during shutdown
2: domain: GADDR based shared guest area registration alternative - cleanup
3: domain: update GADDR based runstate guest area
4: x86: update GADDR based secondary time area
5: x86/mem-sharing: copy GADDR based shared guest areas
6: domain: map/unmap GADDR based shared guest areas
7: domain: introduce GADDR based runstate area registration alternative
8: x86: introduce GADDR based secondary time area registration alternative
9: common: convert vCPU info area registration

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 07:00:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 07:00:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609286.948282 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qll0a-0002wU-E1; Thu, 28 Sep 2023 07:00:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609286.948282; Thu, 28 Sep 2023 07:00:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qll0a-0002wN-Ak; Thu, 28 Sep 2023 07:00:24 +0000
Received: by outflank-mailman (input) for mailman id 609286;
 Thu, 28 Sep 2023 07:00:22 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qll0Y-0002vM-Om; Thu, 28 Sep 2023 07:00:22 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qll0Y-0004mo-MC; Thu, 28 Sep 2023 07:00:22 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qll0Y-0007gb-6V; Thu, 28 Sep 2023 07:00:22 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qll0Y-0004A2-61; Thu, 28 Sep 2023 07:00:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=WuzzGYTZUhv757oSK16T2wulqjAOxEqQM8BUHS34y6c=; b=jJUUJ6otM5pTjmeAmXCtWDZMm1
	lLPGg+VpfoNrv1jEBTW589V455AYoKWG7NMOvhK8HLTwi1EghHfpY6NpHiY/Y9D1P72GHg+409Pey
	O+IiLViOUSKIPQPZGTbZJ5POGtDxLZP4TS5N03FBBiPLsSqBSHzZT3RY6N3AB2OTH+1A=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183194-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183194: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=a1f8b32af001c15ce3c6be2364826b1ca35b6caa
X-Osstest-Versions-That:
    xen=cbb71b95dd708b1e26899bbe1e7bf9a85081fd60
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 28 Sep 2023 07:00:22 +0000

flight 183194 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183194/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183185
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183185
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183185
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183185
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183185
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183185
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183185
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183185
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183185
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183185
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183185
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183185
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  a1f8b32af001c15ce3c6be2364826b1ca35b6caa
baseline version:
 xen                  cbb71b95dd708b1e26899bbe1e7bf9a85081fd60

Last test of basis   183185  2023-09-26 23:40:35 Z    1 days
Testing same since   183194  2023-09-27 14:39:51 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Stewart Hildebrand <stewart.hildebrand@amd.com>
  Volodymyr Babchuk <volodymyr_babchuk@epam.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   cbb71b95dd..a1f8b32af0  a1f8b32af001c15ce3c6be2364826b1ca35b6caa -> master


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 07:02:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 07:02:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609295.948292 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qll2A-0003qx-U4; Thu, 28 Sep 2023 07:02:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609295.948292; Thu, 28 Sep 2023 07:02:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qll2A-0003qq-RZ; Thu, 28 Sep 2023 07:02:02 +0000
Received: by outflank-mailman (input) for mailman id 609295;
 Thu, 28 Sep 2023 07:02:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qll29-0003qa-C3
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 07:02:01 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on060f.outbound.protection.outlook.com
 [2a01:111:f400:fe02::60f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id eb772a1b-5dcc-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 09:02:00 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8055.eurprd04.prod.outlook.com (2603:10a6:20b:2a4::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Thu, 28 Sep
 2023 07:01:56 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 07:01:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: eb772a1b-5dcc-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=F8OP2uujbZjt2hEsXLa1W7apm8GJO4oJtqTVfK+aZycEEMZ8CkGKN8lYfbds6ONfng1eyRbsNPt+bCEU3M5Bf5k5eb8B5MqEbx+ifr9JGuRKiXupWZiY+dO157MkRYMsNws9jzIpspO+Sz99mVPoKyBkUgn+L6cB0uO4HSVZgsrl5NMDV6rJJY5rHBRbb1xJ1Dk/A8kU5QsHCF2OHY597PuIAmnReNfir7qeLBllbtSvMcDWz7RTzrQP1GT9qpKySqzjXcR0cTxgrdJH+0YwI+Wmu0Vsr8B5U4IMQT0j2JcT5CGanumJ/8p/HgpiBvt0AjZJiQL6yarUTWITTMdyoQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=oufazdANeZ9w0vDBuU2Z3ztqUcCD/UC60JbgAsH595s=;
 b=fnQEwAcdIkG/EshODfg5GrHITaUesvJiyX7YeVFq2mRziu/3KfZ3d4TCMbydFqbiYN9m8DSfHqFwqtnIjYH+wH6PAUyuBHCWY7eKXi0aMiKHxDMPRoylW5CLOzs0/mZFXQAhiFvVkTMYz5PesJhPJKOgu2vZUVKK1JqNjJfmhJnvG2WNpi72vbaRvzm4RgwnaZs+OZObQfV18icoXo5AgQur2GgVAO7wZ8DA0S1IU1eY2+RxwGiF8rMpRpAQb0Ljg9FBEmqNTaJaQ+x92tLCozPOpggr4YSh+Z6zU/icFUk2ES3CwmZRTrml0xLA9ADUf/XvD8f4g3s41VBxfR6A7g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=oufazdANeZ9w0vDBuU2Z3ztqUcCD/UC60JbgAsH595s=;
 b=IpV/id5KLZYwoYKkNSQ4Ip9Y2u6eRuDZ8xZGSKz0dZxv2nD31t26Y5rUdvyMtStTAGJZ6/W2Y4xHBQbNdbe5IKvuZXj+aOo8o5Oe1s+FdKSathp5O3C6s7JJdQRGzfOlBg/Gzb71ZfqRhV+kDGr6ycjBI5QNRzwuw5o2Ak7JhMKrTtbmPOLK+u/7M48SPfIgAPYBK48FVlfeF6g+JIVUxqr71lmNSdMfiBZRKW/X21PsiDehyDA49/3Gqq4GZF4bH7RdwaL1AwuaPZ6LZLq0BQfKK7CpkpFXku8RMRephKC+TiBI/JbYdVxA82tI9aJ5Dy5aXqNDKOU/92vs/URdKA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <91db0bae-5485-680c-ef95-7316328583a2@suse.com>
Date: Thu, 28 Sep 2023 09:01:53 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: [PATCH v4 1/9] x86/shim: zap runstate and time area handles during
 shutdown
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
In-Reply-To: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR3P281CA0002.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:1d::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8055:EE_
X-MS-Office365-Filtering-Correlation-Id: f4e029f9-ed97-408c-69a5-08dbbff0cd32
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RYqK8H6rY6EzbPVxVvqpyqnyHuSytJvO4Mir0baMGr6All2k0KTFc5nxAzDcqEcxK75vCcqa+bGWbDuttcibrwL39+ZUr8FEhZuNl5/FQ7GT+15gAhGwyWLziZDCZPwwBA0Q75vWUH6zI43orgYdzfIVFtA2Ty0zmblee7IWbV22RhCzPE+/bI1slTqFlMug554Qh2Besn4mdFmPQnTtSAlF7qZWBUWPz6CsEquHFPCvX8TsmqbnedhSdbIES2s/Damk7/icFCLFCmcIMOenf8nvJdjyUjg4NDoL70p2r70fUhGYaRxVc3iQB9KZxl5rU6+JbSdJ1GvN1WCtwN5+K6df7Nnv/VGzkJnpTO8TJ4RDcE4kXvIt9ux4Ahhm7sdssOTLv/IH8p+im1y8iC/O9cY911kJIHO5a/MXw9y3eLUiKGyM0z8Jk+zge7+Ozezm93VUoJsiakeNkSGTQ1hlGr5s9U2VdNmTxY6+GTTvG4mbYrdL9iY51eKAIwehK1j1lTxUUFaRlTu+c5lGFXMvsfToJpLi151A+R2pt9i4l1X07eUVfXg3v72cM1/UNd27T+KnBoSj4X3DW7umPCneX/8Uz2zS+jDLcqXlW/97ZyjVi9SUoxeTivPneLRA0THj0lk7z0Njb+c4qzKSlfhDVg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(366004)(396003)(39860400002)(136003)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(6512007)(8676002)(5660300002)(4744005)(83380400001)(36756003)(6666004)(38100700002)(8936002)(66946007)(66556008)(41300700001)(6916009)(54906003)(316002)(86362001)(31696002)(6506007)(6486002)(478600001)(66476007)(4326008)(31686004)(2906002)(26005)(2616005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?U3ZJU081MVlIS250YkxwZjJLU1BKWUFBSktqV3RTeXphM3NDd1JYclpHOU8y?=
 =?utf-8?B?NzNxSXcyMTlnS1NGNDQrTmVtTDg4MWp3SlpvOFVCdDRwbXA2ZUJjaGVFM1pF?=
 =?utf-8?B?NmFBdzVkUW5yZ3h1ZFd4TkdNZ0xNRnlMWFczZGF6aGJseXpuTW82YUlIaGtq?=
 =?utf-8?B?NmxNRGV6RU1qeGxlN2doNHMzcGYxNEFuMVhMQnhsYWM1OGNQczdaaXVqVGpT?=
 =?utf-8?B?WE5zdTZnSUhGZlJRditTeG1LbmZDamQxSC9KRFgzVkFva09nODUwb3k0UkRw?=
 =?utf-8?B?NnM5d3IvKytJb3FQTVlLRzBDclMwelVzZmRtUGlNUWR3ZElpRmFOMysyamhj?=
 =?utf-8?B?VEJMQVZTMU5PeXMvcnZsZ29KS3FPRGNPZnhXNU5rK3NLYzgvb3JWZUZBQmpZ?=
 =?utf-8?B?amtSZktGcDZNd1RUQTJvSmdJZEgyRkRDblBuZWp3M0t4SVR6V2hQL3NtNmNu?=
 =?utf-8?B?R1BVSjl6V3NXaXJaKzZNL1lrWjJTbEcwbDhvdWpGeHRQbFdNUWNRWm8rOXpo?=
 =?utf-8?B?US9IVmxTNnpuUG1ZdDIzYmcxYUs2QmlLTHAzUVlRamdod3BZWmhSUGtBemx4?=
 =?utf-8?B?alhQemYramVzb1BzMS9Ua0tVeFlYSkprbzNzanJCWlFLajNzU1JqKy9qUlBt?=
 =?utf-8?B?WExveWdGODFSZEowaFlrSkh0VWhKOVI1MzJLV1I5WE1hTlJYc0JOa285dDl4?=
 =?utf-8?B?dXpwdU1ZYzZmUVVxWWFqcXlSNDF6eUg3ZWFsOW9xajR4Q0lURXpKNFNzRjNH?=
 =?utf-8?B?M2FSRmpnYUZpSWMyY01BcnFjTzJRekVZcW9VK2k5RjU5ME81VkhjZkNlZWU5?=
 =?utf-8?B?dXorL04ySThTMDRQaEVCOVk0Y0FhWHZlQkVmSGVKSHdKOXkvSGNlZ2Noc3pU?=
 =?utf-8?B?a2RQaG5RWS9iKzFLbWdVd3VWaTllWGt2c2lYS3hveDM1MllHajFSME9walBV?=
 =?utf-8?B?eUR5Z1RTdjgrSjVOdFJHMjgrRFVKZ09FMzlaYk5jRHA2ZnRRQ256UVNLblJM?=
 =?utf-8?B?UUxKaUFjSTlRTXRWNURSeUZrWDMwT1h1UnN2dXozWi9OL1Q2NVE4UGUvNFJi?=
 =?utf-8?B?enlEckRKeHhPUVlYbVhWeGpOUWFwMlFQdGxubllsWjA4T1NKYlF4MUVCMEtS?=
 =?utf-8?B?VWxaSU1xdTJESy9yTmlGdEF1Y2RobXREdnM4T2trRjJ6QVZoOFJtc1lQKzd1?=
 =?utf-8?B?VExSZ3ZibFo1aEVUdlJoUEdTUGR3clFYc0dKc0V6L2VlYi93bDI2dm51ZlA4?=
 =?utf-8?B?TzN5T0JXV0ZwTXFrY1BSYTI4QXlQT1c4dDhYWmsrRVJYR0lVVm5DQnhwaXVC?=
 =?utf-8?B?aEUxQXJZclB2bGN0Q3pYSUxaazJZR1ZUa1VrZDM3M1lxMk13dURiYkhJQlp6?=
 =?utf-8?B?cUpUMnV4SUNMNC9oWFZJUWllSzNFcUJNbVZYNnhzSlp3RENtYkJqMzdROU5i?=
 =?utf-8?B?ejh0WW43Y0s5bDVDWllnWmVCd1JlL0F0bzlHNGQzbmoySmd6a2hodTFtdFRl?=
 =?utf-8?B?eWNNTmlUMnlMWXlrb2RBRWhacGJRRGhTSTJUdUM0SUM5djB0bmhRWnNUcHNM?=
 =?utf-8?B?RUFyc0tMdkF0S0ZrSVpubUc1YUlXVWJrd3FJQVJoWndaaTRZQ3Jpd091aUFz?=
 =?utf-8?B?eVZBOGF0SG1YYnF2QW9URXlUYUdLODN5TFA3Mnlna0RuRXBaL2M4TFJ0STNX?=
 =?utf-8?B?WGc3d1VTQksvczFZdjZxbEgyNyt6TGxLcDNDZ3FMT3d6Y0Z3K3pBQk5GNmpU?=
 =?utf-8?B?SjJPelgxMjJRRURDOVd5ZVdzUXBrNTNXM3J1Smc3VWllRGptakNFTHN0dFlm?=
 =?utf-8?B?K3Nudmo1Zk51Y3NWUGxiV2FvbHZoYlB2WVc5Q1BhNSt5SnZKTDZZdFI4aHBY?=
 =?utf-8?B?VFdTYnFNb04rSWR6SXFvemhNclJqNFV2STZIbG44UU84L21vdzNMc2JLT3Qw?=
 =?utf-8?B?WnpRNThHZWM5MUNOUldyVnRRcFZDNHdBdjcxYzk0NDRlQmZUZzVLaS9xSzd2?=
 =?utf-8?B?RUxxMFJKOFVwTi9iWW5Oek1qUVN6OFFENnR0amNVU3krbDVxdk5iRXdSaG5q?=
 =?utf-8?B?akRnMWtpKzlCSkhNQXhnRitmV2RLS2FYZEVPb3d6SnplbDk2OHdGN01MOGJo?=
 =?utf-8?Q?pTwGS3wyNmuAtq4dguDp5b18z?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f4e029f9-ed97-408c-69a5-08dbbff0cd32
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 07:01:55.9954
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Vla3gW6qXsUybVXOSVathxtW092U7TdCTTC0XvghvES5JMaRzMSMGj0wyqlad+J71Dx0DMnGdVqRRoslHg+tnA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8055

While likely the guest would just re-register the same areas after
a possible resume, let's not take this for granted and avoid the risk of
otherwise corrupting guest memory.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v4: New.

--- a/xen/arch/x86/pv/shim.c
+++ b/xen/arch/x86/pv/shim.c
@@ -385,6 +385,10 @@ int pv_shim_shutdown(uint8_t reason)
         /* Unmap guest vcpu_info pages. */
         unmap_vcpu_info(v);
 
+        /* Zap runstate and time area handles. */
+        set_xen_guest_handle(runstate_guest(v), NULL);
+        set_xen_guest_handle(v->arch.time_info_guest, NULL);
+
         /* Reset the periodic timer to the default value. */
         vcpu_set_periodic_timer(v, MILLISECS(10));
         /* Stop the singleshot timer. */



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 07:15:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 07:15:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609301.948302 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllEi-0005tY-0I; Thu, 28 Sep 2023 07:15:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609301.948302; Thu, 28 Sep 2023 07:14:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllEh-0005tR-Tx; Thu, 28 Sep 2023 07:14:59 +0000
Received: by outflank-mailman (input) for mailman id 609301;
 Thu, 28 Sep 2023 07:14:58 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qllEg-0005tI-Ag
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 07:14:58 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20613.outbound.protection.outlook.com
 [2a01:111:f400:7d00::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b925a907-5dce-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 09:14:54 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7811.eurprd04.prod.outlook.com (2603:10a6:20b:236::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Thu, 28 Sep
 2023 07:14:53 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 07:14:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b925a907-5dce-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XncfQc0sIzeHxi+64sRriMtsouf4h/fYcmpMckmZdPL10dfHqwhGShMnvoGaEWz5sETszq5daV+UltXJoBtfSo5YaVMHAL3VhEj8NOgcOJ5OZNBbIvVUzezH+gt6tgOhRcCg+rqogAxQwkPoWklZOOk/aGzxOhOnfPSjk1dHZ/fGIWWmoxop/SwQGBABeEErOT0NBg48JjZknm87BXPMi3ykbAWQC8faoemC7tUUTNycoL6u7yMgFmDTjkhzaoJNHEUK7fhSzSTifrxnBG3D6fLKfVlV13GHnCWQbalwWVvZT/ud4i/bw02FRbZW2suW3ccCakVNztRx6nVxE9/RwQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=INAcouYCwzSE0qAgMcfbHm4G+IYIvkxnPJ/SO/FIaKw=;
 b=S6eEd8eVwE9QNavKmcg3jn+G1qd+otdGxFUCqA0njVNLRc1TWC9aJTiOBjq128G9QG4L/t81EQXh7rChKwL26gedZydD2xt2Z0O0ZFgHxj/2ypUx8tMnLQZBKF8lU4ytsY/p/rdwsuzWm4TueqP23rTAcrhwOfCRBuezRa4uzzvCJbFVjfYvhwlKPi/rh5dQPZ/32sOf2PPiF9ZGwaQ7YQpCwDTmtXMzxWrVC1GgAvFXv505HR6NhVqKymvNY/jkU1bzB2cm3hWzmQQXsMsNiu6zeFvksQz0BTM2pIEUC25xH48GXxgTvXryKg58UQmGcE5t93APOa8921VXfx9Lhg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=INAcouYCwzSE0qAgMcfbHm4G+IYIvkxnPJ/SO/FIaKw=;
 b=zAdYvV1esiUOdqVmqfP71NVuZ+EHT0buBkBhIe1mNJ7Y6EBiwIl9LMDLVrGmHiJvIvT3P4OLsxrZB0dvSWVr5ns+ksVcaCZYWOZhmzQZWsnA7OtKhIauLxG/mYUpW5LcHffyGCHF5MWUJ0wPKuxp/UeD8iIXiwsPWvR2NvgmkPrNQs2IJrlgrP0dTWezOSYLfJ6Tc4sky0eDX5GGARn0y2gmL/1l9QF67xKqgzliymiTq93cJew0dN7hvWc17Rmt8SA3oRgVZOQd6elNyjRkycNEBHyvH1HeiPRJQIIvwT8bYbu3EoKR23d/5rnsdOIjJG0+16eCQrf8kErhfMrg9Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <298c3470-643c-5f73-ceb0-4b0fc2441952@suse.com>
Date: Thu, 28 Sep 2023 09:14:50 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: [PATCH v4 2/9] domain: GADDR based shared guest area registration
 alternative - teardown
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
In-Reply-To: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0002.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7811:EE_
X-MS-Office365-Filtering-Correlation-Id: d7dde82e-15e3-4663-599f-08dbbff29c79
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7uNXY13Zzk0PNbxDT05wIo/eyG7s+4xY2whxeWqYE0RZdsruVNZJyngvxCnIt0NRMIDYIRnlnIC9Sxm5hAxsaGRwcJYcXMzKvMpqDlChVA+Gadvlg7yO0xXpIoDRGVX3BwFhK/1ufZVd0kDSbD+tkJ12igoJUdZjiZrjhwizeQbyx5+Yw5SsgVd+eUrKWgyVECFl64Mw81hDJ5cePZBd7XlYYK4PFSDwvipzU/OrlDlLZEblIl7/2jYnW8uBYlFpQqZqwdNthkc7AxMKJ8xpVxcm9p1nDLz9M3Dtx2GqySjvv81c8FdmFl2HFlCQNlcVue5J3ZLvQAaLLecC3KHuLo4RE5SeKkw8NKCgLhnU537YoxC07/Ggl07vWMel3y5QUYeSY3PlxEmDraqbmAK9ofrVghw+WeJbI4IyZgz5UUtUMS+wR7YEn/DrZz3XILW5/Ri4/NSKrC3swW+j5cusi1yCvIMsKvz4mGeN1McNNeUs3EtlX+fu+n5JhyJhgPqWKUVeciNW8UNtr6RTUgiPcatYaOtivKRSY0/bmeHB6wF2qBaevLCtPWN2MA4N4UzsgRvRKRP3rPXfdQyOX47neIfSxcRx8sJ6K2UufG0+M4RALYp/FYvwrT52e0h68A86dIMSnB4z4QbwSJ5a1Or7Kw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(376002)(39860400002)(136003)(366004)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(26005)(6512007)(6486002)(6506007)(478600001)(2616005)(2906002)(316002)(6916009)(66556008)(54906003)(66476007)(66946007)(8936002)(41300700001)(8676002)(5660300002)(4326008)(36756003)(38100700002)(31696002)(86362001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?MGhUanloVGhYc0pUcTlGQTVPMi92ZzJmT1hacUNCcUhyZkxqSXlmcUljOFNl?=
 =?utf-8?B?N0RoRWhINXlsZW9HKzFaMVpoOHkwc0pGQ054NzA0ZEpyVEEveTdwUUVpN21p?=
 =?utf-8?B?L2t0QjFxRk00VGlsQy9mN0FnaVRPWDE4OFpIT25GcG5RTEJCZEYvVFkrVnY2?=
 =?utf-8?B?VEVFRHRjTVdGcGIraXhvbW0vU2NwMEJtYVdmZmpRWmw0bkhva256UG5aWHJI?=
 =?utf-8?B?NmdvelVmaUduZW1heWRmbHNZeElXWkJobnhTRTFmR0xTUE8vWHYvQUJFeHpO?=
 =?utf-8?B?UEowYk9uRDNEMnlhVzdpOWh1R2NxNnQwbW9zbDB3Zm5Zalg1SGo3TnJYRE5R?=
 =?utf-8?B?SEpoRGVNMm9hZ1c1TFhXOCtsVm5YOG1Ra1RzMXFiMDJsM00rV3lZYmpDT1ZL?=
 =?utf-8?B?VlRTRENmNkxBVFNyakxPM0pGcTJjZ2d0eDBEMlllU1NVS2d5RzBWK2kvT1FB?=
 =?utf-8?B?elVhbENRYkxFZmJUMWgrUVNCbHpIQUpwSWhLaW92RUI5ZmxuYy9vUjdCSzdV?=
 =?utf-8?B?VnhZbjQ1SEdVRHIwYlhrTHcyZmxiNUhIa3lmNkE3QXpaVzNTZWdtQmVMTitM?=
 =?utf-8?B?cDRteVlEcHZJN0l1ZWRoSi9pT0JCRE9EWlN0cjhIYU10VlFkQWVobjZ2bDNq?=
 =?utf-8?B?TVNXenB1SmE1SWtpTkZYaXdkOHdCbG9OSlp3MUhjY0FWbUp3Z09xU0lKQVRq?=
 =?utf-8?B?L21KU1lPSjA3QXJab2VGeFYvaEkrb1ZuOGNBNFNya2U3QXEwZmUzRnd3WUZO?=
 =?utf-8?B?K1BiV0lmcTlOSVFsSWcwdU1XZVEydll5SUZnbElJRCtyajM0NC9Gd3dYcS90?=
 =?utf-8?B?S0dzZyt5Qmt3QW5xc0tLdGk5b25ieUVTdXdLV0ZVNFdxbVRrbkZZdzljV1Rr?=
 =?utf-8?B?WkRKWnBIWjV2d2N3K3lGWVRvUFAyZGdKNDExTitWU014UXdJY2pjUGJuWFk5?=
 =?utf-8?B?dDJJZzZKTVRQdWdsTmErMmdsSUlIeWtlMmFHZ2loNUg0QXFxakFzTEl0NlJE?=
 =?utf-8?B?eWlJNG8vc1kxUUhKd3F2c2lidnNneUtmdUVnMVdCdVJVUFhrRWJLcklPTkEz?=
 =?utf-8?B?NmZJQ0p5WnJqRUFFcmtMa3JvNWUzU2RvczhzYTBnRmF6N0xGN0wyL3AwWWRU?=
 =?utf-8?B?SkYyOXliaDV5cEg1N1kyUDQ5NFR3NWxlVnJmR1VodkcrWkV4RHJUeGlUSndv?=
 =?utf-8?B?RTlsamk2b1NNbmpzT0lGMUZlaEt5TWhJWXcwWUJ5dkZKbXZ2VmRZMWxvMHhW?=
 =?utf-8?B?UHJsL0pLM09iL1d5Rmw1QmdJSUhZeWVLUThES2hEdjRTN3AxSmcwVHJ4U2E5?=
 =?utf-8?B?cGNVZUwxTUVLbTdFN2k2N2M3WTZCdkZWUnZQcjgvMTQwNkVMdnAzR2tQOXho?=
 =?utf-8?B?dk1TN0xMSTRKQldFcm4wVGluQVo5VitFNHBnb29VNmcrTjZuNTY2anlkMGtU?=
 =?utf-8?B?N2UyMERiTWFUVmFGbEkyT3YwRG1vOVZKRWs3KzhaSDF4MklHQzZDWXBXZUs2?=
 =?utf-8?B?TXJReVNhcmtGUkY4YisrZXJYMU1RZ1paUkI4QU5UR3VYcmJVK0NGV0ZyUVZs?=
 =?utf-8?B?ZWhvcnpESHFFbk91RkUvaGVQcTNmRnB5R2c1M2FpMk1vS3o4ZEtjenF6dnhE?=
 =?utf-8?B?eGUvYUlhcmQ1Snh0VUdKUmtRa0d4SDVYLzBZNm5pc1EwckZnOC8yWkwxWjB2?=
 =?utf-8?B?L3kyN21KWm02TjhVU25Bb2V6REtudUJvbG5Uc2JKWVY3MGV5dDg4dE01YWRu?=
 =?utf-8?B?MGpzUThnZ0x2SkJXVGw3SWVlK21remJIcUdVK0laL29hQ283VlFNZjZvUmVF?=
 =?utf-8?B?TXpPWEpieGFDR0x5cjhWN0dBTUM5dEpVdTRocCtxUWhZWThGMWJIUmxiRWVl?=
 =?utf-8?B?MG9Fc2xhcG9JaGQ3Q1dJTW1hQ2RwZ2dKcFN4emkyK3pqV3MzdmY0eXJqK2NO?=
 =?utf-8?B?SXZpOEZCZ0lSNHZHN0xNdzZ0Um93UTFjVHpMMzh3ejZob2ZZNlJiSnlaVGc5?=
 =?utf-8?B?M3RWN1g1cHJzd1NkSVJabHE1TVlPTjJmUyt4SERJL3JiVTExbVhVa3o2NjJN?=
 =?utf-8?B?cTByajVvaVZieWNGWGxFaTNHek9HUnIzTFVkeFhYNXBBb0N3Q0E4QjgrSlUv?=
 =?utf-8?Q?pi4PmRnP6A6S5s4aXf67qw/YP?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d7dde82e-15e3-4663-599f-08dbbff29c79
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 07:14:53.2770
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: yrrNK5DkDPLi0kbA3ws+huJTiC35quKfi8mjyvT0ijM2904QdPXSecx3HxMZTd3WO9RPu3a29/4NbZRBWfiipQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7811

In preparation of the introduction of new vCPU operations allowing to
register the respective areas (one of the two is x86-specific) by
guest-physical address, add the necessary domain cleanup hooks.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Julien Grall <jgrall@amazon.com>
---
v4: Re-base.
v2: Add assertion in unmap_guest_area().

--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -1024,7 +1024,10 @@ int arch_domain_soft_reset(struct domain
     }
 
     for_each_vcpu ( d, v )
+    {
         set_xen_guest_handle(v->arch.time_info_guest, NULL);
+        unmap_guest_area(v, &v->arch.time_guest_area);
+    }
 
  exit_put_gfn:
     put_gfn(d, gfn_x(gfn));
@@ -2381,6 +2384,8 @@ int domain_relinquish_resources(struct d
             if ( ret )
                 return ret;
 
+            unmap_guest_area(v, &v->arch.time_guest_area);
+
             vpmu_destroy(v);
         }
 
--- a/xen/arch/x86/include/asm/domain.h
+++ b/xen/arch/x86/include/asm/domain.h
@@ -669,6 +669,7 @@ struct arch_vcpu
 
     /* A secondary copy of the vcpu time info. */
     XEN_GUEST_HANDLE(vcpu_time_info_t) time_info_guest;
+    struct guest_area time_guest_area;
 
     struct arch_vm_event *vm_event;
 
--- a/xen/arch/x86/pv/shim.c
+++ b/xen/arch/x86/pv/shim.c
@@ -382,8 +382,10 @@ int pv_shim_shutdown(uint8_t reason)
 
     for_each_vcpu ( d, v )
     {
-        /* Unmap guest vcpu_info pages. */
+        /* Unmap guest vcpu_info page and runstate/time areas. */
         unmap_vcpu_info(v);
+        unmap_guest_area(v, &v->runstate_guest_area);
+        unmap_guest_area(v, &v->arch.time_guest_area);
 
         /* Zap runstate and time area handles. */
         set_xen_guest_handle(runstate_guest(v), NULL);
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -992,7 +992,10 @@ int domain_kill(struct domain *d)
         if ( cpupool_move_domain(d, cpupool0) )
             return -ERESTART;
         for_each_vcpu ( d, v )
+        {
             unmap_vcpu_info(v);
+            unmap_guest_area(v, &v->runstate_guest_area);
+        }
         d->is_dying = DOMDYING_dead;
         /* Mem event cleanup has to go here because the rings 
          * have to be put before we call put_domain. */
@@ -1446,6 +1449,7 @@ int domain_soft_reset(struct domain *d,
     {
         set_xen_guest_handle(runstate_guest(v), NULL);
         unmap_vcpu_info(v);
+        unmap_guest_area(v, &v->runstate_guest_area);
     }
 
     rc = arch_domain_soft_reset(d);
@@ -1597,6 +1601,19 @@ void unmap_vcpu_info(struct vcpu *v)
     put_page_and_type(mfn_to_page(mfn));
 }
 
+/*
+ * This is only intended to be used for domain cleanup (or more generally only
+ * with at least the respective vCPU, if it's not the current one, reliably
+ * paused).
+ */
+void unmap_guest_area(struct vcpu *v, struct guest_area *area)
+{
+    struct domain *d = v->domain;
+
+    if ( v != current )
+        ASSERT(atomic_read(&v->pause_count) | atomic_read(&d->pause_count));
+}
+
 int default_initialise_vcpu(struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
 {
     struct vcpu_guest_context *ctxt;
--- a/xen/include/xen/domain.h
+++ b/xen/include/xen/domain.h
@@ -5,6 +5,12 @@
 #include <xen/types.h>
 
 #include <public/xen.h>
+
+struct guest_area {
+    struct page_info *pg;
+    void *map;
+};
+
 #include <asm/domain.h>
 #include <asm/numa.h>
 
@@ -77,6 +83,11 @@ void arch_vcpu_destroy(struct vcpu *v);
 int map_vcpu_info(struct vcpu *v, unsigned long gfn, unsigned int offset);
 void unmap_vcpu_info(struct vcpu *v);
 
+int map_guest_area(struct vcpu *v, paddr_t gaddr, unsigned int size,
+                   struct guest_area *area,
+                   void (*populate)(void *dst, struct vcpu *v));
+void unmap_guest_area(struct vcpu *v, struct guest_area *area);
+
 struct xen_domctl_createdomain;
 int arch_domain_create(struct domain *d,
                        struct xen_domctl_createdomain *config,
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -203,6 +203,7 @@ struct vcpu
         XEN_GUEST_HANDLE(vcpu_runstate_info_compat_t) compat;
     } runstate_guest; /* guest address */
 #endif
+    struct guest_area runstate_guest_area;
     unsigned int     new_state;
 
     /* Has the FPU been initialised? */



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 07:15:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 07:15:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609304.948312 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllFC-0006K3-A1; Thu, 28 Sep 2023 07:15:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609304.948312; Thu, 28 Sep 2023 07:15:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllFC-0006Jw-7F; Thu, 28 Sep 2023 07:15:30 +0000
Received: by outflank-mailman (input) for mailman id 609304;
 Thu, 28 Sep 2023 07:15:28 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qllFA-0005tI-6R
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 07:15:28 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on20606.outbound.protection.outlook.com
 [2a01:111:f400:7d00::606])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cb1fc30e-5dce-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 09:15:25 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7811.eurprd04.prod.outlook.com (2603:10a6:20b:236::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Thu, 28 Sep
 2023 07:15:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 07:15:23 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cb1fc30e-5dce-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=VbFPiYwOhifIbt1NM1mxTVIVbqPV564zTdle3GTgCkVgU0nZCvYU2HA0PMfbCF9baKqMAY8BnMke/o2ZAJR5m3tbGPKOO51EaOZkxdTx4wNZXlZkeztdXwqYjJnSe0/28Qs00GuBg3r7BwIZqWVTMk47As+oo32b70g0HSwUVW/t1xGOyPj5Br3grw/miIVsAUqZoBUfrsz7U4fA/qtnHRvLIEKHqJkTiEJi+r7MEzVeppuso8YZYz5pI7K5kOTJ8/GhyPYlKWi6NJT9LordX+/2aKPOQHfwqk7ISd7ot08SDmjBCurfRt+c9ojls9xEfK7yCu59JiPPRWYpOuTSkg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nDhjKzeHPCvDjdSeahyLl9mEZAFQA0ykwX0ENFaYkNo=;
 b=Cxfqu6SS2JvIR3NbA7R7/NOpK593g54EuZWe/waNav6pyCHp4kheHcbLJ7yeMR9JlE/1pJ/054x+sKTqDIchP9iiSpfpu389J8SLyUEqROcnDqT0d+8RHh5eWqSd454taSLUgE9loPgGx8NF389P4SKj6IystqnUq2Rnrf9Naz5gIUwOmliISuX8+zB4+0EMcWUMT4avl1rqm7by86CS782mnMBYuReZLuFL+FPmtgG9sM+oPx1JDqrTGWKm5DvFsfp4XNKrzIvUdb+uXSGPM2C0NN0n+EYYvnnQJm486+Ob1rG2dslcW9E2mM3ApSfM+DfZavpOP3Dl/LNLjTUhzQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nDhjKzeHPCvDjdSeahyLl9mEZAFQA0ykwX0ENFaYkNo=;
 b=pTBEjckrWHD8y5a4iKJwF3dZEg6coFR5XVHWBqTxZB0CPkA5kqm84SDeKC6ozIxA26xXjYL26P9FFVjvbczwuCO6bqmfADhr+URs6IklN223MNCQv5LI5sEcSEJTo5OTtx858qJFpAX0QgO8g+4gwD2z+FKP+U34X0HrTRXVNy8dOI+m2SsyNaLvNe8lJAtEmyo2tbmBM9mVtYB1EbPzLBIYHdlQnm8H5sB0gZTj0C/EuByWH3uRjTluxCsNx/cg22A8+Rt8JUXE3WQz9TGVdewR1AL8pOPARbPtQ7c1OMSGZIbS340xzNNt0is8pMzrXAHsqoGcu20Ghh3lkfUQ2A==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <fedb0869-a26f-8080-4e3c-7d8f55db00ed@suse.com>
Date: Thu, 28 Sep 2023 09:15:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: [PATCH v4 3/9] domain: update GADDR based runstate guest area
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
In-Reply-To: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0016.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a::26) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7811:EE_
X-MS-Office365-Filtering-Correlation-Id: 838047bd-c25e-44fd-be17-08dbbff2aeb4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9BVXjzIc2LxQVKyzzFgSelRPBXdrqMLRb4emBmmANbpCh3ksbsZ16QoHm4VZ0497VapLb8IvVirgT4xcEPwSRBBPvEchHFJv6pCOLfQTgs8C1GScZXYZqIiPUD8E9Ypa0ahzcf51Mb2dJix/JP+OVcPAAnUI6ESA2+5t9xXuPMBJ7jUYxanPa3nDFwLdvLkg+JSTVGPvv6VCUcf7CDqQLnzYaPorHBlQVAQXT8wb+cLb3H1auqiVzWJM20nWP5g9/4Tb4q6OscYyZwKXMkIa9hpaOnMnkPqQEePrYaNkHSnAiKvGFU5z4PbP6XLNSDCSc5Ve1g0kETILuweS5W1e0whq6x1tyOLs582cCKViYUr8G5ZY69VqssVAfPWsfVgSZ77hcngG5p1MU0FeG7nKPvnVD7zSNuhxRyZRqzCJ6mKfAocVhTjR1Ht61FVd3iGdPDRRZtgVZiO5Ny1eM0HkgoeS3V/BvkTsnN0OD3AzWneJ7YRVWb4H9dbuy3LCXlOZ28SBrotpSUihxcM6AtHSaLirclpKZ86kqo9p2W+evJNv5FfSsk9ytwh84Ok9+xk3uH4NPsa/rfanwKcd6qZzs40wEQDA9Kn4MsLN9tZ3cyAx9ogiVE/FUFdp8rQT5bdbOc4Z2CyPMr01nWh+DJZjjQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(376002)(39860400002)(136003)(366004)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(26005)(6512007)(6486002)(6506007)(478600001)(83380400001)(2616005)(2906002)(15650500001)(316002)(6916009)(66556008)(54906003)(66476007)(66946007)(8936002)(41300700001)(8676002)(5660300002)(4326008)(36756003)(38100700002)(31696002)(86362001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?YmRkUm9MU1RIQUlNL2hDUXJsbm5iL1ppbFhnR09ueUtxNVJ0UEpMLzNhM0t0?=
 =?utf-8?B?VVYzS3ZlZWNTdllCRmZBSjVTQldXNDlOejh0dzlLUVVpR2xpRUxPUDdIL3li?=
 =?utf-8?B?aWRRODl5UEcybWE2TUlGZlhUUkF2UnRsdDVJZDlwM3Y4NS9EZ3c4R1U3U0Uz?=
 =?utf-8?B?WW1mazIwQmhMa2MvUU1PVWhyRzVnWG01Unh6SFFjd05jWGJ1OVZtbXUwdGFZ?=
 =?utf-8?B?UVJxOWxzdnZ4MkhwMDYveDEzODRadTE0T2JUM2psWjNDNUxQVG9jT1B1c21H?=
 =?utf-8?B?b0I5V0p0UVVRc1dMa1A2TXNNbmE0b2l1TFRidTlQUHd3THl5T0w5cDlmT3ZZ?=
 =?utf-8?B?bnpPeVhwSXBkcUZVUDZNaCt6VU84YmxRZnlpM2pIVmVXVklKcTVSOUROU2Vz?=
 =?utf-8?B?bmFQdU5UcHBDYUxnTTF0WCtaSW52Z3hkajZlcGJ2dmpGbTNicnRDL0ZLWjVZ?=
 =?utf-8?B?RlZXWHl1cjNmNWZiZ2lXSGlGc2hlc3Q0V1FBMENmd1dIdXZ5OXg1T053VkJG?=
 =?utf-8?B?MVc3RHI0STd4Rk1LL3lkTkRGRWFMZHBWZlArVkdYeWloZnJvOVM0RWlUczlC?=
 =?utf-8?B?UEJFdmJPSC8vVklCSXpCakZYOTFHRnFsVTBqNEpaczdrTnlkSUQrQVFCd2xF?=
 =?utf-8?B?N2V5ekxoWmwwcE03L2lvMHM0NUljeUtiaVBjRmt1NDRocHpINXIwTmZ3TFNo?=
 =?utf-8?B?VVpJakVIeitCdWlwMTBSbmFOZ2hXemY0RHhTZ0NBeGoyQk9SYVFFdTBURG92?=
 =?utf-8?B?VHorN2xsRmkzcHpqcXRNSlhuK1lyQm5XdXA1bGxwZG81WkRQRmZtaSs3c2pt?=
 =?utf-8?B?UnNwWk8zWVM4b0JOS2xVdzVoK3haYkhsdGxNSFk1SFJWcUUzWnRPM1d0TzhW?=
 =?utf-8?B?TmNzUWhWUmpvVnAxVFF4bEpKODhENC9IdGZkMlBNazZINnFkUWZ2VFJoMFZO?=
 =?utf-8?B?R0JldUNTSmgxRDBSQ0NIYW5OY3pEeCtqejR2czVSUGIrWm04YWpJcTF1UDJi?=
 =?utf-8?B?MzBLT3Z3VzMwQmNPUEY0QjlFaXdtbWNxbGdsbXQ5RWtGZlIwOWhjNjMxcTIx?=
 =?utf-8?B?WFNpYnNVYjV1SVpFbGFFU0orR1NzcEIyT2lGbUpwcjdaRE9LVmk5ZTVHeG1Y?=
 =?utf-8?B?QzIwT2NlUURQNC9LVXlzS0MwNEVGOWhjN2p4dVZUS252eHBTanR5MFoyM2sw?=
 =?utf-8?B?ZlZNVG1UWXV4N2FaQWtTWUVYY1d3Nk11bEJ6a1YxQjJXYW1ESGlaNTdqNXJ4?=
 =?utf-8?B?TDNwWGtDejFTYjNocnIvTDVablg5ZmpRNkR6ZVllanVQVWpGaS9vQW5mREF6?=
 =?utf-8?B?N0hVRlU3WFZlTHJzNGxhdkF5NEVMc3lrMUxha0pBaHNPZ1ZMVmR3cER5VUxJ?=
 =?utf-8?B?UGt1MDVLLzkzRXgrM2xvY3lQTUMxVjUvMEF6WkZoeUcwWHhvaHF4cHluOVFY?=
 =?utf-8?B?Z1VFTkJINy9nSEpuTEZ6K3RFcWNTNnVrK2hVT09vNXpKZ1huaGpxSlI2VkJD?=
 =?utf-8?B?bFd6MmZjdVZHbkNxcDNuM3RoQUgwSFBQSW9qY1c2aEJYdldnV3cxdGlmbVZL?=
 =?utf-8?B?S25nTEs3NDgxbDQ4YUFCUjBYTU5ienFmTkNVQVA3cE10ajVkVGpTZGJJYndN?=
 =?utf-8?B?Sng5bS9lMnlzRlI2STFvbGcwTkRqUUFRR3Vpb3ltL1hMZzNHOE9zY2RaNUxI?=
 =?utf-8?B?SmRrVVhLUzZUaWNWeU5Dbkxla0VuTlpKc1VGRHJHWTZrOUZ3ZnFQUHA3eENs?=
 =?utf-8?B?bTdoMDdHbjF2RW8xMDFnSm9wa1l5bWtOQjlOalJwM3Mwd3NZSU5xbW1Fc3dF?=
 =?utf-8?B?V1g2UlBIZXI5SUhVVUNrVTdjZUI2SDR2U0FDd2ZRcndLM0RNbkJSbHFEV1ZD?=
 =?utf-8?B?Q0RHK0o2K3JXUnNad2tLMzl5ck1xZURiVWNMQVU2TGMxeEJNWWFoUStOU1N1?=
 =?utf-8?B?VlBRenFPb0pjeFpVVGFkclcvOWZ2QzM4VndUc3hYdmV3bU5icTFDb3VSRkZw?=
 =?utf-8?B?a2RCcFJIeXpsb1dpSndyQUdoTHpTMFhqWGVsbEpZSFNzTTByc25heHE1d2xt?=
 =?utf-8?B?bEFEYnBOMm13dE5zL2l5RU9KTThVbEoxWHZJeEVwcUEzcDUrVTZhd3Y4blJh?=
 =?utf-8?Q?oVu6WkIDdOfCL/82LQFviB1DE?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 838047bd-c25e-44fd-be17-08dbbff2aeb4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 07:15:23.8086
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: NNEER+3DpGt6wAojgTSRaD4UAu57IMTtOgV+nN7JzMY3Set5DM3ac+Xo8FvzHjYGBC/EikupuihNyqAGOUR/dw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7811

Before adding a new vCPU operation to register the runstate area by
guest-physical address, add code to actually keep such areas up-to-date.

Note that updating of the area will be done exclusively following the
model enabled by VMASST_TYPE_runstate_update_flag for virtual-address
based registered areas.

Note further that pages aren't marked dirty when written to (matching
the handling of space mapped by map_vcpu_info()), on the basis that the
registrations are lost anyway across migration (or would need re-
populating at the target for transparent migration). Plus the contents
of the areas in question have to be deemed volatile in the first place
(so saving a "most recent" value is pretty meaningless even for e.g.
snapshotting).

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
---
RFC: HVM guests (on x86) can change bitness and hence layout (and size!
     and alignment) of the runstate area. I don't think it is an option
     to require 32-bit code to pass a range such that even the 64-bit
     layout wouldn't cross a page boundary (and be suitably aligned). I
     also don't see any other good solution, so for now a crude approach
     with an extra boolean is used (using has_32bit_shinfo() isn't race
     free and could hence lead to overrunning the mapped space).
---
v3: Use assignment instead of memcpy().
v2: Drop VM-assist conditionals.

--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -1644,15 +1644,52 @@ bool update_runstate_area(struct vcpu *v
     bool rc;
     struct guest_memory_policy policy = { };
     void __user *guest_handle = NULL;
-    struct vcpu_runstate_info runstate;
+    struct vcpu_runstate_info runstate = v->runstate;
+    struct vcpu_runstate_info *map = v->runstate_guest_area.map;
+
+    if ( map )
+    {
+        uint64_t *pset;
+#ifdef CONFIG_COMPAT
+        struct compat_vcpu_runstate_info *cmap = NULL;
+
+        if ( v->runstate_guest_area_compat )
+            cmap = (void *)map;
+#endif
+
+        /*
+         * NB: No VM_ASSIST(v->domain, runstate_update_flag) check here.
+         *     Always using that updating model.
+         */
+#ifdef CONFIG_COMPAT
+        if ( cmap )
+            pset = &cmap->state_entry_time;
+        else
+#endif
+            pset = &map->state_entry_time;
+        runstate.state_entry_time |= XEN_RUNSTATE_UPDATE;
+        write_atomic(pset, runstate.state_entry_time);
+        smp_wmb();
+
+#ifdef CONFIG_COMPAT
+        if ( cmap )
+            XLAT_vcpu_runstate_info(cmap, &runstate);
+        else
+#endif
+            *map = runstate;
+
+        smp_wmb();
+        runstate.state_entry_time &= ~XEN_RUNSTATE_UPDATE;
+        write_atomic(pset, runstate.state_entry_time);
+
+        return true;
+    }
 
     if ( guest_handle_is_null(runstate_guest(v)) )
         return true;
 
     update_guest_memory_policy(v, &policy);
 
-    memcpy(&runstate, &v->runstate, sizeof(runstate));
-
     if ( VM_ASSIST(v->domain, runstate_update_flag) )
     {
 #ifdef CONFIG_COMPAT
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -232,6 +232,8 @@ struct vcpu
 #ifdef CONFIG_COMPAT
     /* A hypercall is using the compat ABI? */
     bool             hcall_compat;
+    /* Physical runstate area registered via compat ABI? */
+    bool             runstate_guest_area_compat;
 #endif
 
 #ifdef CONFIG_IOREQ_SERVER



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 07:15:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 07:15:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609308.948321 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllFc-0006uG-LW; Thu, 28 Sep 2023 07:15:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609308.948321; Thu, 28 Sep 2023 07:15:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllFc-0006u9-Iv; Thu, 28 Sep 2023 07:15:56 +0000
Received: by outflank-mailman (input) for mailman id 609308;
 Thu, 28 Sep 2023 07:15:56 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qllFc-0005tI-4r
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 07:15:56 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur05on2062f.outbound.protection.outlook.com
 [2a01:111:f400:7d00::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dc5530f7-5dce-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 09:15:53 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7811.eurprd04.prod.outlook.com (2603:10a6:20b:236::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Thu, 28 Sep
 2023 07:15:53 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 07:15:53 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dc5530f7-5dce-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ak/6LZXoGblaIYV1cb9K7e4Cjj7CbkKgr+dJxzx4e4bnDmAmRrZxJJ/5g3B+oZ7KQw/OTku7OO2l48MdWM2L/bhd8zV7oE/XhA7ljKFQSk3d1MBwuSz5iz2CJaWuhqEUwP1GywiuMUCW5ceSQBPT3zgZF5LPEeevkX5eEyzrLUnrL6sRcWKmQUCojbqgoYPyPHRlWPwNfKHiRbNvVAN6YHAz9Lt1YJWfnYFyKcXHiHwCmqAURgWPq1vYVRCOeaCYF2dZOoeZ3pfuY2nNefZEUTklQ9bSiYO7TWKzAIuF9qAW7rNbYDkNuH7e/MXfscdDyYZZpyhdegGILfxaQV8UnQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+s4DsrfFOHtuNkr1T98TjoML0TVrNHd1UjKvdCbUR0U=;
 b=bMSubdvkgcWfmCe9chRcwCNNKuVDfwi11y23lgtZKaWK6vZ7wcNCMnOkM4k7jZjgT6dAyB0DQi7YDlTAv5BJTfEYvw4Xtw4VDRi4V+KDX1nHe5d6Ipa9zEEwxOnwiC5ArrKjwnE+gGa984rb8ODGaR8snt6y+52+wbbRzjlbQPGy3M0g90Euy9XZTRDgG67/gL2pBW539EcF9zT/8zotT3n/NBsj8iztwLHuV6jmqBwednAfnyi8EZEdA4W5Y572JsqiKbwNWsCCPn/HQMN6IM1a3OjXeUeXAhCuj7Cv6QSQzzE5yUDDuYz5tDuoxqpUaxZNYmiqGUg3P1y/sKtkeQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+s4DsrfFOHtuNkr1T98TjoML0TVrNHd1UjKvdCbUR0U=;
 b=SKXXc2drqLOCEIf0MRa6CIRJ+nTtaQN6aolcerelsiNFPcgqrbGSY1N41z5l9s1eHI2W/mXUowUq0LVBqVYYK2lLwT8+GpQVYIJjkkzKNLe7NVJIERWM6o/L0/aloogmjnOe1mKZhilhhkt+aDdU5dWXglNYR2y1/sD1/r6EElnOVSMyS8ToeAxmil8hhCFk5JMDCR3CtrwPgQQvQ88A56fbn1nVhqrIX7CzUD0k/9FV9TrtI/2wETLDxS9CSDPy/l06T1ydBqzR3I56iy4TzDZn4lIRVWtfH1DLX/sp6XWbWPa+9VTC62zVJ4LkRY9qvRgUnOHIivnOiseDm9myng==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b5346355-108b-b978-c4b9-3f55e6f7bea3@suse.com>
Date: Thu, 28 Sep 2023 09:15:51 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: [PATCH v4 4/9] x86: update GADDR based secondary time area
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
In-Reply-To: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0098.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cb::15) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7811:EE_
X-MS-Office365-Filtering-Correlation-Id: 5d5b67e4-77d0-4c18-2d55-08dbbff2c074
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	XWdqj1YJTXyQU+plhk3Ibcidbb8+7f1pfuqtwLiduD1x5ZTHYOxs5GWQk5+gWilHhvhIAnzQDiq2qRF6MZYc9WmRVJweWEGjdpRKBSDKLNYWJ59mfH4LDabq9FGGbuP5g910i4Ov/Dz1hN4W8saBYhTH3EJcB1QgX5gqwZToWlIToh0O/f/ff4JZC5Y+YTGKxt6VcboIWMTMCQG+HWzuCeTsCNmtJN25Ul2LL31mpJXhVbU7ZfD8Jgar7zmAL5OgnkzucNWiZpDQRHo6Gz0mMSUsyiZUyHASksOEYplFrD0nI/70LDTb8AYRhL70S6nBuOw4QVHrzmpTp1I8VVXwUKPVq5uc51BLu1wobzbwrnICVxu39twFeH+AbtAUFdqZRDeRuP2jGG9zb3+Ad78iXFX0NTI0DQYdreqPziKTUcyWnq6NrlhwAhTAGyz0/wYoPBVrIzf/ekz6FyL4mc2ac4FK1eSMarShNSYyhdl4FQtgl2XBRMVYFDmUadtWGBMLtGHXIB50OHVqgmyWjDrd1JABDr2mHTLEyNRejedKBLI7kprZ6yH/79V0qPzRk45BY3COf35vOT4NPZEBUoR/EqniHuRWLnWt2wKQmfs4iWB0ru7p4pmKXtGByUNbnc+6QVSbXVFfC7wKyrglONFDNA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(376002)(39860400002)(136003)(366004)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(26005)(6512007)(6486002)(6506007)(478600001)(83380400001)(2616005)(2906002)(15650500001)(316002)(6916009)(66556008)(54906003)(66476007)(66946007)(8936002)(41300700001)(8676002)(5660300002)(4326008)(36756003)(38100700002)(31696002)(86362001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZFdkYmRtWjhVQ09NUnBadDVzNmd5bmpHT2d0SXhBTmhlcEI0bDdJcDB3L2gz?=
 =?utf-8?B?WGpQbklmS05sOGxZdGsyL3FwTXNiNG5PVURtOXkrSGJjMWpSN1pjWWJ3bEJ0?=
 =?utf-8?B?SW1JS2MvN0duWHJOU1NMUHhWVVlGZ0s2V0JJenlQV2duQUJhNlROMUtEOGg2?=
 =?utf-8?B?T1VoYUVYUTJNY3V5L0dQMnd6T0Nta1Z1bFhicG5RM0dzbTRxcG1qaFg0UzFJ?=
 =?utf-8?B?NFM4SGQweU9EQUZ5K0pxNXp2Rm03VGd4UlEySDhNbCtEZFk1aUhOeUxLb0lI?=
 =?utf-8?B?UDBRc3M3eWlKSnQyaE5ud1Q4cWFnR3F0UCszTTNzMHNjS2RuaExoNm5yQm9n?=
 =?utf-8?B?dE5tT1U2elpEVWxjL0RYOUI0cm16blEwYkM2c2h3bHdTR2xQMCtOR21XbGRE?=
 =?utf-8?B?VVYwUnZBSnJydHZsU1cyWStiRzdDQ0VZeFowWk5VNVpvWTFFd1RHNjBvQjVk?=
 =?utf-8?B?NFZIam1YY2ZFanlURC9aUW41WXN4SkdJQmRxN2ZjcjJTZ2RIRGxhVEJiTGdU?=
 =?utf-8?B?dTNranlIZ0VJajdXL1V6YlkvQno2UWdKQXJtMkJGaXM1M2VET2VBU3VFajZG?=
 =?utf-8?B?OWJnbWlYcFNXS3V2VXBUdE5HdFFpam53QldnUk5VOHJsRVZLUWQ5NUkxT1ls?=
 =?utf-8?B?Wlo5d1hoSWRTYnZ4U0E1TXF2UCtrREN1VE9uT095WlZ0S1lIWXhBNHRKZ05w?=
 =?utf-8?B?eUhrQ0IrUUZNQ3lFeVdUYXMwWHgwL3hLYTJOcUFSL2hSck5ZQS9sT0lOT0J5?=
 =?utf-8?B?U252ek9qNGN4bjYycmNVREFWM2ZTd3BBSlo4Z2VJY3FxNE90enJXMmxwbUMv?=
 =?utf-8?B?M3pQU1M3TERwNFdPcjFNZGsrTC96Qk5xMHhJei9rYm9rYXk2Rk1xc1JrK05B?=
 =?utf-8?B?T1d5OTV5a0dpSk14S2FwcXdxMXl2b1ltMDNBQXgvZDgxT2FEVGJ2Q2doZHUy?=
 =?utf-8?B?N1g5WCtLYllyRGdsUTdjeXhXNUhQSGQ4OFRiM2gybDlNb2N6aXEwRE5VYzl1?=
 =?utf-8?B?c1hDTFhQRjJXV1h6SHlHUkhKYUVwY2VpdnFTVHRLTGd1R3J3bzVuWmpSb25k?=
 =?utf-8?B?TTJBSjNWQUozQ2JaZkZLQ2hDVTh3VFpsUElEd1dEckwzQzNjbno4c2Yxd1Jn?=
 =?utf-8?B?eDZKeWtUTGtZbGRUUEpYMlJCOFBRNlo4RTdzT3dTcFVCdG9oOW8vayt0ZjI3?=
 =?utf-8?B?ZFJ2dWlROFpIOU41cTd0eExuOFFFYUw3djd3MmhHc0pmZnVRakFyd2lqZkZu?=
 =?utf-8?B?cFMwL09HUmRhazlPMGs2dWFQVFJaUGppclNEWFZNd1B5dEJvQ0EwdlBYWUov?=
 =?utf-8?B?eFhSVCsxa2ZJT21SU0xhZzVZUFVrS2lhWmcyK1k5RlpoUWRQOXk2cWhKUXRh?=
 =?utf-8?B?dVN3cFo0bVF6NlVCZEVTQVJDYzdxTDRGc05sNkZXSTh0Z2tPdGhvZjdhY0g0?=
 =?utf-8?B?MWEyUEdqRTdOaXFOOFZBaEY1aU90ekJ4RTJ1T2Q3M3RIMk5TbXh0ZEZGMGhR?=
 =?utf-8?B?cjBSYldOdGZrUFcwZmV3QlBrWDZtS3BwQWVwSStBcWJYT0kzNXY0UkxNdGFB?=
 =?utf-8?B?WlJBN1NuRlJWQjFGblNJbzZGMUJ2SERQelg5WlpIek1nbGZiU2VkQktjUFVv?=
 =?utf-8?B?Y3VtbHBadEt3L2pKMDdQM3JLQXY4c09rbHBncjFNUHJBbkphMWw0Umt1YStm?=
 =?utf-8?B?eDZFQ1BDSHVtY0h2UnpxaDVodmNDZGJ0TU1tcnB5aVRISnRyL1pUZVQ2dHAx?=
 =?utf-8?B?UXMwV3cvdFNlVlFjd3hyNlVVcDdOZ3FrM3RyVUxsMVZHZG5xeTU2OWthUzRJ?=
 =?utf-8?B?MzJvNVM4Wk0zc1RBQXdNVk05Uk9ZN0VIcjZDZkpQV1dtdCswd1pmMytqb1Ft?=
 =?utf-8?B?a3pTZUpmazJ1VlUzM1Q0cHhNT2taZk5JUHBYcUFNd05sRmE4K2RkdFRZMkZt?=
 =?utf-8?B?OXkxVnhlR3VydkFqK3EzWDc4NjRwZnZLMlVBdDNIUDMwK3RIcWZnT2NiWlJS?=
 =?utf-8?B?MGU4MjBDaTIxRUpFT0hjVDJsWjhjcXZqT3NoaWFlcHYrVlIwUit5dkE1aTFD?=
 =?utf-8?B?NGE2NmFyWGlqMTMxVlVFdk0vdFJFc0h5M3F2aXRuZno0cVZOV3JPTE1EeTc1?=
 =?utf-8?Q?mfhRrpGix1fgq7NrDeXgEXDQb?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5d5b67e4-77d0-4c18-2d55-08dbbff2c074
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 07:15:53.5863
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: GYmXnp8Xua0tmrZz+wnjNR5Da1Riso1lvfEcMRGM+zcanixt6eEqcJhSzE+UPT0ne/YDNU4rw2un/PK04Fo9YA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7811

Before adding a new vCPU operation to register the secondary time area
by guest-physical address, add code to actually keep such areas up-to-
date.

Note that pages aren't marked dirty when written to (matching the
handling of space mapped by map_vcpu_info()), on the basis that the
registrations are lost anyway across migration (or would need re-
populating at the target for transparent migration). Plus the contents
of the areas in question have to be deemed volatile in the first place
(so saving a "most recent" value is pretty meaningless even for e.g.
snapshotting).

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

--- a/xen/arch/x86/time.c
+++ b/xen/arch/x86/time.c
@@ -1566,12 +1566,34 @@ static void __update_vcpu_system_time(st
         v->arch.pv.pending_system_time = _u;
 }
 
+static void write_time_guest_area(struct vcpu_time_info *map,
+                                  const struct vcpu_time_info *src)
+{
+    /* 1. Update userspace version. */
+    write_atomic(&map->version, src->version);
+    smp_wmb();
+
+    /* 2. Update all other userspace fields. */
+    *map = *src;
+
+    /* 3. Update userspace version again. */
+    smp_wmb();
+    write_atomic(&map->version, version_update_end(src->version));
+}
+
 bool update_secondary_system_time(struct vcpu *v,
                                   struct vcpu_time_info *u)
 {
     XEN_GUEST_HANDLE(vcpu_time_info_t) user_u = v->arch.time_info_guest;
+    struct vcpu_time_info *map = v->arch.time_guest_area.map;
     struct guest_memory_policy policy = { .nested_guest_mode = false };
 
+    if ( map )
+    {
+        write_time_guest_area(map, u);
+        return true;
+    }
+
     if ( guest_handle_is_null(user_u) )
         return true;
 



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 07:16:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 07:16:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609313.948332 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllG5-0007V4-Tf; Thu, 28 Sep 2023 07:16:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609313.948332; Thu, 28 Sep 2023 07:16:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllG5-0007Ux-Qk; Thu, 28 Sep 2023 07:16:25 +0000
Received: by outflank-mailman (input) for mailman id 609313;
 Thu, 28 Sep 2023 07:16:24 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qllG4-0006Ef-U4
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 07:16:24 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0608.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::608])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ee869f12-5dce-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 09:16:24 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AM8PR04MB7811.eurprd04.prod.outlook.com (2603:10a6:20b:236::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25; Thu, 28 Sep
 2023 07:16:22 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 07:16:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ee869f12-5dce-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ik1Z6SGZniPoadUy6Y0iWT4IO0fJ1XKLeQiEnbqV3rjvfjheCFhjBC+k91SFFBBzIDV7hzsC4KN25flVa0X/augInjT77x6AW3eLxsCjrUQ3MMG2W6ZSIpZca7xfXkDXgVPxKW2mupA+YcWSb8/fVXPI1jUBED6GowTxsEV4CYZCersute0eQLp1eyvtVP82BFG+gaGVZ5z/k0OTzFcyztHD/LAIUk5ypVKJbcFiuZx6+JzK9r8ezVCjpnOKk3GKIFpOIhQMnwM6Rclv88QFCmSr7RHTa+mVJFJK/HW62v/5ZlwhAjHQDRhxm+5OaIifKBYMIVs2CtSBOFW1e3J2Lw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=hFNzhnlZYLwd/kWq59whthOZS8He4sxkxz1sCnsgnuY=;
 b=FGPrfC9tV4zDrLJL6INjalDVWRRx2OQ+eG1Xqv+/4UZnd3UAwwhgt2/rfTo49x0mrsPAQUUJwZUpNUiufexaoTg+AtxBClEOMvzWGiijrXonFK1MYWOaaNAXHqz2HWxzVQzhlKvwlbSvs0VcRuE76zFk0MJdYbVh0O4crm2iHIHVx5PpiK37bu7utJx3YYpQxueIZ0ahFW9NYAeBOc3uqXqIsDAhthKSZ0rahfNhPUtcHjz+2PQcwhMB+buWCLI1D/SXPXhNepvwKHOBBtE6kWuQW0YX4DKIoWJobZk1dqIBv9yKTqTnYIsxmAlhOBYGJyf1vKQBt1SZF91kOG/uHA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=hFNzhnlZYLwd/kWq59whthOZS8He4sxkxz1sCnsgnuY=;
 b=lbo+5WCqr4bx1tvr4RZC0s8w+6nKwwDCnlGX3duH8aAW9Z8/bQEvqsBwjLVj2k3XVJ1XN+2dfej9+12HjA1ZGHpMFwYfdkYxvZQnb555BmkLAAHPeo7SCikoMoiTwSP5Ko3/FQJXI5y7fPlnp1xIKXz3BqTnu7kNS/Y9F+s2M7Llz56zh6mTB+5aq88i0JW12eVFVL4pONqQA077QKEqYlTlAhWHk0kQTY0KRrV9eahdSKLj5R4a13r0xiX9kHiD7HW6IknBR8DwVXGHYZxOS/L4UxHHlLRZwrYXHW3Z91z3oTrIs82SIMVgdeXPWxBbt5oi5Iyjo8x/SWgR1xasUw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <6047c192-0f37-e4ff-5980-fd137b3f1869@suse.com>
Date: Thu, 28 Sep 2023 09:16:20 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: [PATCH v4 5/9] x86/mem-sharing: copy GADDR based shared guest areas
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>, Tamas K Lengyel <tamas@tklengyel.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
In-Reply-To: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0086.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cd::13) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AM8PR04MB7811:EE_
X-MS-Office365-Filtering-Correlation-Id: e5f8ad04-a696-43e7-6917-08dbbff2d1db
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7p0C3hssJFP850737gbIlelIBFP0p0NUm31GL6kYHINl+i6jDv+25PwdehQAwyKYBMFzO3rX3wHg/bAIUU3bqvinbGuef6PDYb5UUVSdoH/hi+OYYKmAdHDKwEo6mV/FrSw461L/MBYtvVyWyOqowWyQML4tHCgarBocTKEBE7oZhovYb6vRgmRkKSuWD4pamq/iArh1J5NUx2/hEfNhuiFoyMjpWVCcFjh34m+19lRWrmPoppdNkM6sLpmLXjyPS8fOVuzrPhWlI9il+FsDJlVe6Ng8TjQqabhQAghkznYbd6wKlTsAcoB8PW6zgHQ2wB3NdCFVcWZ1p6SHa6+L2jC7HoEO2bCh/wui+1Sz7DQixcDXuLIyEMlr/N8AlZw9oxh1eURi2xXrF+YkfF0q34NWO86tsGQJZY8smRXb4HWJJmZj5qFfIBjKNuNjP1AvB6pjBW/G2b8QtIXbcAV8Y1mUi8jyBqcbFhwCetezFgYElbVJzkeI+8C+CLV6BqC+//IE99C5O3d+QUJLM4IKrm0z80sfD/20wvq/4SeAyucFwyLZ8CEZ6yyuFMDOyhPLSkpl/Eb4wije0/77StQ4WtRCJMkxujw+P5NB35cqBzOT7d3MVKD7xWYSOWcj+5E4JmFYlHpZYy3jy1byg3Hqnw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(396003)(376002)(39860400002)(136003)(366004)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(26005)(6512007)(6486002)(6506007)(478600001)(83380400001)(2616005)(2906002)(316002)(6916009)(66556008)(54906003)(66476007)(66946007)(8936002)(41300700001)(8676002)(5660300002)(4326008)(36756003)(38100700002)(31696002)(86362001)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bEROS2pFRUEwZlV1MzFXZkh0NnNoQjNnd3dHckUrWmtKN0JPMTRVOG9iZUZ0?=
 =?utf-8?B?MDBGWW9vS3IzeHZoNWVCYWt3NCswenliQWxzVmRiQmZHbDRIU2JPMTJaMjc3?=
 =?utf-8?B?bHZwc1Zib3RPWnFCaDZGMm5ISGs5a1NXQW9aL0diSnhLUFAxQmtMdTB1TEVX?=
 =?utf-8?B?K205Z09mbTNSdlpsVFU1dHlNNFVNSXVRZmlPMG03N1gxOFBpN1Z4TGd6TGc1?=
 =?utf-8?B?QW9HM3RIUFRLTkkxTlp3M0E2WE1zT1MzMVBGeDRQQ1dTbWdOZkVXdU4zVFh3?=
 =?utf-8?B?aE9xRStSVFhIYzhJbUlDWTVZVm4rYmJFWVU3NkRoMzJpN2w0d2NGVDYyYStj?=
 =?utf-8?B?Q3p5aGpJVGNOaWI5cG1kQjg0dVhmQ1N0V3QyREtRR09LajNqamtlYk9zQ3Er?=
 =?utf-8?B?eVloa3VBY3N2MXc2aDNMMU5JVVNNQzFodGZhbVRNdzNqWjhiL2w5SUlseE1O?=
 =?utf-8?B?c2F5MzlxbC8wSjVnSGZWaWx2L2NpV2tTWnRHWXpIVm0vYzF0ajVqQnJLbDF5?=
 =?utf-8?B?M2V3N0daYUZBT0VCM0RuQ21vU29VOCtzZURzVkZQOUUrQmZ3WCtEMm9hVHlX?=
 =?utf-8?B?SnB0clZWdENCcVJxcWI0UzFJdjFEUXE1MW1hYlFYRkFRRFF3VEdBdDBWZUk1?=
 =?utf-8?B?anE2V3BqdmlpNUVqT2RSd3UxZmtnbEVidENYV3lHOFlSak9hUDUrcXVtUjQy?=
 =?utf-8?B?dDRNUDZyaEh3b005MzhLUnl2Tms0Z2l2MVp4TmcwWjNFQy9FbkVlNlFDSjU0?=
 =?utf-8?B?N2lLVWdqMmNiVjVrTzZJQndqWHRIRUFjYXJ4eGVkbml2QzhjSzdZeTJsUndv?=
 =?utf-8?B?dzh4N3hMb3ZXbHR5MXJxTm9ySU0yUThJRlNUZ1NwVjN3elB1RDFUTnJRNUZH?=
 =?utf-8?B?MGxWYU8ycUxVNEtUcDRzaVNhRmRQU2dZNlg4emtVRE9BL0FvTHZMLzlIR2tP?=
 =?utf-8?B?R2YzVmZWT1NLRk5lOFBrQWI5TElXVGpuekhLK0tWOEhCWklIa3VzNUprSzRR?=
 =?utf-8?B?aUxQcWIrTEdPZVRqcnNSRExnTDllWmxrcmZGNEhpWE5oWEZGNXp3TGJkMGgw?=
 =?utf-8?B?NktXallCUU8yWDJMQlh1YnlFdDhvTXl6VU40K3RJZXE0dkpDNDVPL0JONnBN?=
 =?utf-8?B?TTRNMnd3QS9BanlxNHo5U3Fobmc1ZDY4UlgramE1SDBUYy9lWUxPcm50TFo3?=
 =?utf-8?B?Yy9Xd291WFJRaWtFKzhlRFkrV2RlYlMwa0xCbUN3Um1CM1R4enBQTjhNSTZ5?=
 =?utf-8?B?d2ZTTTA2eTJUSHVPbjJXSGlPYWRBQW9kRDBOZE9FTkh3ZEJvYlRyejJrMk5i?=
 =?utf-8?B?WEpiSmowcTNHRlYwNUdiQ2lMK0c2ODR0dVpsdEVPNGhrQ2Y1MEFuNkZ5Wi9i?=
 =?utf-8?B?N1daVWc2WlY3cGZPaHQ2RlJIRDNEOEVORFlETkZiKzR3MXpNWG1la05jRmdR?=
 =?utf-8?B?V2NQcmdEN05IRU0xTWF3VjRxRWlmK3g5TkxWQWlkdjZyd0M0QXIxcUExam9H?=
 =?utf-8?B?aHhkemNVSjFhblNBcXNYbU1oUldWRUZmM1Vydm11UUdGY25weWhlazlBQ1NP?=
 =?utf-8?B?WlM2VjFSRkZYeUp1T3pCbWpzV2VUMVo4SGx1YzlnbjJranB5VHdkcVEzNFc0?=
 =?utf-8?B?L2p2ZFZWRjFDQzdsZy9hTXhhZHZLSmFzSFhqdUpSVjBGMmdlazRWY3hIMHU0?=
 =?utf-8?B?NFpnWjRpekkwYjN5UmNGdkJCVU5YK0RRYnp2VVFFSGlJUnhzRldiMFptV2px?=
 =?utf-8?B?UEdHYVZ5WENFcTcwYU9FVDI4T0Exd29PL1FOVWxpUGk2elRqSkdzeGg3dEsr?=
 =?utf-8?B?aGEySW44T0VqaHFDNTRwS1RsRG9LcW1NRFRTTTdJTUlRNzJtK2NxM0MrS2Fy?=
 =?utf-8?B?NlVNM1kwanJVcDdHc1JrQUdVTTlCU0Z4cno4TmlZRUFCZ3hNQ3RNVTFUN21X?=
 =?utf-8?B?N3NSdS9waVRxK1huZ3g4SWtLVXFiR09aZWN5aHZYVXhEdEE2VmNrWm00VHBW?=
 =?utf-8?B?cEtQSEl6OE9MTGNJT0lCL2JRZkRIeVJzblZnRVFCSDEzK3R6MC9MM0wvbmt5?=
 =?utf-8?B?Q1FmOVE4dHhuc1htTkttTlU5WW8rKzJESlpxVUFNWUt2WnBjQWZPVk1uSllt?=
 =?utf-8?Q?VPQlD9R5SDaxwB+10zekcW+ok?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e5f8ad04-a696-43e7-6917-08dbbff2d1db
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 07:16:22.7935
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: AjGjRS0/cBXs0oO7XXpCO/PCxNz5XcYsTOtkwV5FEpgoXJvIwwMarxJjSLNmsLs5zX3L8yhKgLxC1DdXPS5kdQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7811

In preparation of the introduction of new vCPU operations allowing to
register the respective areas (one of the two is x86-specific) by
guest-physical address, add the necessary fork handling (with the
backing function yet to be filled in).

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
v3: Extend comment.

--- a/xen/arch/x86/mm/mem_sharing.c
+++ b/xen/arch/x86/mm/mem_sharing.c
@@ -1641,6 +1641,68 @@ static void copy_vcpu_nonreg_state(struc
     hvm_set_nonreg_state(cd_vcpu, &nrs);
 }
 
+static int copy_guest_area(struct guest_area *cd_area,
+                           const struct guest_area *d_area,
+                           struct vcpu *cd_vcpu,
+                           const struct domain *d)
+{
+    mfn_t d_mfn, cd_mfn;
+
+    if ( !d_area->pg )
+        return 0;
+
+    d_mfn = page_to_mfn(d_area->pg);
+
+    /* Allocate & map a page for the area if it hasn't been already. */
+    if ( !cd_area->pg )
+    {
+        gfn_t gfn = mfn_to_gfn(d, d_mfn);
+        struct p2m_domain *p2m = p2m_get_hostp2m(cd_vcpu->domain);
+        p2m_type_t p2mt;
+        p2m_access_t p2ma;
+        unsigned int offset;
+        int ret;
+
+        cd_mfn = p2m->get_entry(p2m, gfn, &p2mt, &p2ma, 0, NULL, NULL);
+        if ( mfn_eq(cd_mfn, INVALID_MFN) )
+        {
+            struct page_info *pg = alloc_domheap_page(cd_vcpu->domain, 0);
+
+            if ( !pg )
+                return -ENOMEM;
+
+            cd_mfn = page_to_mfn(pg);
+            set_gpfn_from_mfn(mfn_x(cd_mfn), gfn_x(gfn));
+
+            ret = p2m->set_entry(p2m, gfn, cd_mfn, PAGE_ORDER_4K, p2m_ram_rw,
+                                 p2m->default_access, -1);
+            if ( ret )
+                return ret;
+        }
+        else if ( p2mt != p2m_ram_rw )
+            return -EBUSY;
+
+        /*
+         * Map the area into the guest. For simplicity specify the entire range
+         * up to the end of the page: All the function uses it for is to check
+         * that the range doesn't cross page boundaries. Having the area mapped
+         * in the original domain implies that it fits there and therefore will
+         * also fit in the clone.
+         */
+        offset = PAGE_OFFSET(d_area->map);
+        ret = map_guest_area(cd_vcpu, gfn_to_gaddr(gfn) + offset,
+                             PAGE_SIZE - offset, cd_area, NULL);
+        if ( ret )
+            return ret;
+    }
+    else
+        cd_mfn = page_to_mfn(cd_area->pg);
+
+    copy_domain_page(cd_mfn, d_mfn);
+
+    return 0;
+}
+
 static int copy_vpmu(struct vcpu *d_vcpu, struct vcpu *cd_vcpu)
 {
     struct vpmu_struct *d_vpmu = vcpu_vpmu(d_vcpu);
@@ -1733,6 +1795,16 @@ static int copy_vcpu_settings(struct dom
             copy_domain_page(new_vcpu_info_mfn, vcpu_info_mfn);
         }
 
+        /* Same for the (physically registered) runstate and time info areas. */
+        ret = copy_guest_area(&cd_vcpu->runstate_guest_area,
+                              &d_vcpu->runstate_guest_area, cd_vcpu, d);
+        if ( ret )
+            return ret;
+        ret = copy_guest_area(&cd_vcpu->arch.time_guest_area,
+                              &d_vcpu->arch.time_guest_area, cd_vcpu, d);
+        if ( ret )
+            return ret;
+
         ret = copy_vpmu(d_vcpu, cd_vcpu);
         if ( ret )
             return ret;
@@ -1974,7 +2046,10 @@ int mem_sharing_fork_reset(struct domain
 
  state:
     if ( reset_state )
+    {
         rc = copy_settings(d, pd);
+        /* TBD: What to do here with -ERESTART? */
+    }
 
     domain_unpause(d);
 
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -1601,6 +1601,13 @@ void unmap_vcpu_info(struct vcpu *v)
     put_page_and_type(mfn_to_page(mfn));
 }
 
+int map_guest_area(struct vcpu *v, paddr_t gaddr, unsigned int size,
+                   struct guest_area *area,
+                   void (*populate)(void *dst, struct vcpu *v))
+{
+    return -EOPNOTSUPP;
+}
+
 /*
  * This is only intended to be used for domain cleanup (or more generally only
  * with at least the respective vCPU, if it's not the current one, reliably



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 07:16:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 07:16:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609317.948342 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllGZ-00082o-5M; Thu, 28 Sep 2023 07:16:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609317.948342; Thu, 28 Sep 2023 07:16:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllGZ-00082h-2m; Thu, 28 Sep 2023 07:16:55 +0000
Received: by outflank-mailman (input) for mailman id 609317;
 Thu, 28 Sep 2023 07:16:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qllGX-0006Ef-Ka
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 07:16:53 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on0630.outbound.protection.outlook.com
 [2a01:111:f400:fe02::630])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ff87a13e-5dce-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 09:16:53 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8884.eurprd04.prod.outlook.com (2603:10a6:20b:42f::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 28 Sep
 2023 07:16:50 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 07:16:50 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ff87a13e-5dce-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IRdCXcFMZD/dDg2QepxbmOXYN383dBovQj7Qf2G2B+Yr3w/vRoTXgd+Bg4fHclfW7zfkB13XYbvTvVGBfzZ1RWRA/DXLiMFaPL4u5O4w/wGAPHedSzA0ofUhUf+yhobqosd+Pc5LBV0vulx6MiAR7E2LQPkASNXYMMlMQqbA6x0KI9ML3x+WWfvgfFluDNs4rlQ4rm3MO8UHpnIUC0uFDW/28Sr4pYsK/5wzuE2FuVQaaEvM8naM8ZvF78qGAhYvjzIwv0vrDwaVVPSTmumW6QEOPcZrJbyVQLqSVHJidk3WZ0cNa7MMZqt17kHYj/a41UNvL8kLK9t9ioOor7XXqQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=OdVm0Th937N+vCPEHX+Fu1YV+tgza1dfXYx9xJHohDc=;
 b=Vc0c6IlTEEWGFNwmGAmgRWOG8lxHlxqo6Fdw/W2K4ptxYPFiNNI6rp8vkuhGHJSdAEscfCbIWXW0c/HuhrKk45vDLkUGaFwMT9nqUdLnRgcjFxbuXPiBlj+RA0fldk7X2+i5mXeqeMO9jZMghUMJeLpJaEG/pNgua8wx8Yexr4JX9M0D+3Q/GNhjKXA21j7XnW03x0CGRYp9xP5F9QNq6091R/ggGzobCOIrejB4EtFvaWYqQCTOVwRvAe618ZjFCfRz2ucDzQucGYkM1Zxp3WApVMErmBSKvl/f3vvYk5Cohgr7CTlpNGk6h8AUZVzZyZaiRFkF7WozB4f8Uzq1Tw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=OdVm0Th937N+vCPEHX+Fu1YV+tgza1dfXYx9xJHohDc=;
 b=vvK/cUQW5B84WIIKvJ0Vu/0pZpjuTBvczb1JL97KLnUWO7Qc3azK+GUtEoKSHLDoD5L28urNOfXGnK/I88uWZL/94awiWqBFV1ZEGzW/EgPLfWPlcusH59W33x/Rb78LMQGAaCfPmSs3g1eY9T0t7aECLNSE9+nt2e0HxWtS3dPL8byhtF5PV8e043ni4CUiIeTLn6MyDp3rvcX5CWMDv5K5JbYGOeN0Qh20RiIO0EeJ58uFqw72wPBv8l7suZqhnznp92H61JSDH2P4O2R+FgRJKcpxWxM2D0CCDTkYHmyoJDUtIlh53pey639fTsozrdZiU+ZTTU1QcobSGkBJ7Q==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <a34cef71-d60f-43ae-f61d-13d6c846eaa4@suse.com>
Date: Thu, 28 Sep 2023 09:16:48 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: [PATCH v4 6/9] domain: map/unmap GADDR based shared guest areas
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
In-Reply-To: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR4P281CA0174.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b7::20) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8884:EE_
X-MS-Office365-Filtering-Correlation-Id: 27b1300c-26e7-422e-445a-08dbbff2e254
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	PmZ41yt+6DG856FdpwT8OaP3ILcSwVYtrwbmb4kXDTjqk68qKFQPyxxe2BqyGZDRJ9ToMwJ1kd+NrhAOVK7EDTA7rIQyfWhCM+pujl13VKRwLv+KUkWvR6JEDsm3TR8uZV+zpC9YXosaiT9Uc5hhkv2CLqT2VKUqAS3u/Eex54ETdSTlQqjSYSDJ96fUR2ah2yM5HOPkKgdklrB8W+A1EyTu9vXJYer2HdkS3v/o3C6Q6PSNURlkluvbKUGIuIW85g01digsSL0ZTnU1vxrJqjW5zuPZTlZKNmhdFscUnDifd3Fz82xLNwGhF5NtN2bNvzhVhGWQtZ+f/syty96X9etGzd4r3sDQdsVgoUW0ob2iDDfAfV5ZGGHjkikqgHgDnBxSM+fhUqNrGl5cVre8TT+IdKtj7/br0xRnJEFo8QQJe+UIGOhK9Hodni4TwcZ+UzD/RSCDcBFbiOioNUgKQl3dL02WuNNtv7Hbteoss8YH4qZ/thN20G6trM/X37O/Ax8aqjXXRk3C4FZOxRf1icjnaQTR3fXd7wkr9RTJdZeGAB8/u9Jnzj7/hvxhuPsHYEiwTMJMau20qXvC6gueiOkQXxM/LpK1v+EHWp3ojpqWi39nV5QxKoYUAXhMC+41ETF+DmGIcmBn95W1t/qDjw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(346002)(376002)(396003)(136003)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(2616005)(83380400001)(26005)(31686004)(478600001)(36756003)(6512007)(6506007)(6486002)(66946007)(66476007)(316002)(66556008)(54906003)(6916009)(8676002)(41300700001)(8936002)(4326008)(86362001)(5660300002)(31696002)(38100700002)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VUg4Z3VvakdtZ0tlOVRRM0pKdjNYeXJzRGtiU05vVTBDcnR0MmJEWXdIbjI1?=
 =?utf-8?B?Wit2aG91U2FyVlczNDBtMW83ZmlDWXI0V3VaWDN3MmxZb1JKZ0wvcjJsZlFt?=
 =?utf-8?B?aFp3dVgzdWV2TGJLMitZRVc4dmUvcERtNEpXTk50SDBJbWRPRmVXWHBId0Q3?=
 =?utf-8?B?TkpySnBrVWJjR2ErMFMyS0RuVERWSXRtalplcVZBS0xKRlhmbDIzdkpiWTQ0?=
 =?utf-8?B?SWV4bDFlRHVlMGhuaVFPTitaUVNoYWgrRTFzSEp6Z0NGeFJZekdjdWhNemxy?=
 =?utf-8?B?dkl4T3g4WEk2NlRsSkRYSnJCY1ZWKzlKRVR4VmJSR3pYenZUSm9SdnNWaXFu?=
 =?utf-8?B?QTZWc3RYdFNxaGlIRlFoVFhKdGl6Nk9jVm8vWk5uNXVuWnJzckhabUZEbi9O?=
 =?utf-8?B?Vys2WGw2NzBVOUxFM013emx3dzVhc3RvY2Nod25UY0Y2RjNNRGxDZkJVKy8x?=
 =?utf-8?B?QjcvRTIwMlNaMWhSME1NbFZTNGU2R3lwcWFIQzdzOTZPRjJDSGdvcEhvR1BR?=
 =?utf-8?B?Y0E4ZTF3NlpZVGxBM21qL1EwZyt2aWQxOEljZHVlRTBkWVlhNlRZbGZCUlBL?=
 =?utf-8?B?QTlsNm5ZYzdacDVkRnJEdm1yTEtud2xvaTdqdWxPYksraE8ydTdlN1MxRGNH?=
 =?utf-8?B?bUFYY2l2Q1Y1TjR3U25XcnRKS3pBRHE4WVM4MkN5cUpYcHg5NVIralhRQ0lh?=
 =?utf-8?B?Y1BWK1V6OTdPNGNqRTZMaC9FSFlBOWVFOGdLWmVXdVNwVldseXl1VE0yeURM?=
 =?utf-8?B?T25hVTVhbG1GVzRLN29RUC85SlpJUXRXSTNFNGZmam9GYWgyenhQV1pRc3ZX?=
 =?utf-8?B?M2N4M0NxZ3NobERaT0k3am5DZ1JUYnZQR04rQUhnUnJXeXU3WGRkZXh4YjFH?=
 =?utf-8?B?YWc3dGVIeUh5N3JwUWVQZ1BJS1RoOTBEdmlkRzFKSGpzMGFLYU5GQ01SMTdJ?=
 =?utf-8?B?eE5Ndjk4SC9DRkN5UkVEOElWaU96Rkd1eklDNVRTdGQyWHN0SXVXUU50cjdx?=
 =?utf-8?B?V2pmbDh2UzFZN0FJRDV5ckhXS2twSVJRZXF6Rnl5T0RmUW9ET1k5elBtSjJu?=
 =?utf-8?B?RjNnMUtrN1JsdGxaOWZycFFQc3M5UXFnTExXUGsyMlZ6d3ZVUTM3dzY3L3lL?=
 =?utf-8?B?aFhjMm5WdGdkUnIyN2VzckwwY0d4cmM3TFZuQzdkdXhzNXBCWXByTllJTGNB?=
 =?utf-8?B?UWIxMDBrM2RyaGZNN25ZQjVTditoZHVKQ0lRd0ZpTmZBMWdJL2NaK1lLSU1G?=
 =?utf-8?B?YXF2WmlReWdMK0JQdFJ1dkd2U1l4SFJPdUxRNnFlM1NMUnN2bFlaUHNtaWJi?=
 =?utf-8?B?dkFmR2dJRUxGRXRTZ2FSUUpKd2w1cG85UVpIdzVXcHF0aXBRYU1EWHVCelB3?=
 =?utf-8?B?djB1WkxMSDdtU095bTBMR1krR2V6S2dPazNCb0dZK2ovM0xybWJXUWdsVFlM?=
 =?utf-8?B?TWliY3l5TlUzd2NrVWlWQzRzM1dOc3R5ekc1c2RiRW0rOENha3lWMkF4ZFV5?=
 =?utf-8?B?RjlqVTRMR2dTR2ZNbUhwSnpNVlZXSWNpK3gvQXBicmNYaEs5djh6TUkyeFc0?=
 =?utf-8?B?cGNrWVJsQWNYNk16YTBuRkpma1VHLzNGWDRzVkJGM0o3M1NHWTBQZjNuM2Mv?=
 =?utf-8?B?aDFIR2hrMGRxSmNVeStkc2V5RzcyZHZKdko0VHFGM0lzZ2cxTUZtc0NrNE1K?=
 =?utf-8?B?U0Q4eE84cjhhUGJ1UzlwRnB1cURSaUc0Z0pPY0hUZDlOTGNMSW5YNXVUWUl2?=
 =?utf-8?B?TlNzNENSM1NNNGJ6UVdmOHh2N2NzOTVLOFRsWHVmaitxUVUrNlpxa3NBakNQ?=
 =?utf-8?B?T0RtMENONnhuY1V0ZldiRW9zSDMwQ3drUU9rVzVoLy8wNFRaQnFWbG50d2Rh?=
 =?utf-8?B?SlBNQUtnTnN6SVdwd0pDb2RadG9hL0ZScjU0MnFRVmhxNVQ1d1hzU2RFRnVw?=
 =?utf-8?B?UkZiZXkxWXpYOXUyUExleEVSamxWUWkrZ3VtN2hNb3V4NXpoM2xmbEhzb2t6?=
 =?utf-8?B?TlRWb3lnR2FwVWgzQ0VTalBUUUIrMC9jREpPWStYMGZIK281NlhFVzRGNUFY?=
 =?utf-8?B?dEQxN3pZN1pmbWJ4OU1tNC9HMS94WHBmMFlLbmdGUStmc0I1K1JxQzkxT3lo?=
 =?utf-8?Q?/NESz3i3iKqbuXo8P6VPgQ2HA?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 27b1300c-26e7-422e-445a-08dbbff2e254
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 07:16:50.4452
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: m2N6kSdbpwh4Rp0vk+49qovBzPiq/Gu1xyKIaWk4qyliFiRkt1Nlr1WL8QlfPRiabOHh1+CNBqh3aX5DdLmTaQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8884

The registration by virtual/linear address has downsides: At least on
x86 the access is expensive for HVM/PVH domains. Furthermore for 64-bit
PV domains the areas are inaccessible (and hence cannot be updated by
Xen) when in guest-user mode, and for HVM guests they may be
inaccessible when Meltdown mitigations are in place. (There are yet
more issues.)

In preparation of the introduction of new vCPU operations allowing to
register the respective areas (one of the two is x86-specific) by
guest-physical address, flesh out the map/unmap functions.

Noteworthy differences from map_vcpu_info():
- areas can be registered more than once (and de-registered),
- remote vCPU-s are paused rather than checked for being down (which in
  principle can change right after the check),
- the domain lock is taken for a much smaller region.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
RFC: By using global domain page mappings the demand on the underlying
     VA range may increase significantly. I did consider to use per-
     domain mappings instead, but they exist for x86 only. Of course we
     could have arch_{,un}map_guest_area() aliasing global domain page
     mapping functions on Arm and using per-domain mappings on x86. Yet
     then again map_vcpu_info() doesn't (and can't) do so.

RFC: In map_guest_area() I'm not checking the P2M type, instead - just
     like map_vcpu_info() - solely relying on the type ref acquisition.
     Checking for p2m_ram_rw alone would be wrong, as at least
     p2m_ram_logdirty ought to also be okay to use here (and in similar
     cases, e.g. in Argo's find_ring_mfn()). p2m_is_pageable() could be
     used here (like altp2m_vcpu_enable_ve() does) as well as in
     map_vcpu_info(), yet then again the P2M type is stale by the time
     it is being looked at anyway without the P2M lock held.
---
v4: Add another comment. Use IS_ALIGNED(). Add another NULL check.
v2: currd -> d, to cover mem-sharing's copy_guest_area(). Re-base over
    change(s) earlier in the series. Use ~0 as "unmap" request indicator.

--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -1605,7 +1605,82 @@ int map_guest_area(struct vcpu *v, paddr
                    struct guest_area *area,
                    void (*populate)(void *dst, struct vcpu *v))
 {
-    return -EOPNOTSUPP;
+    struct domain *d = v->domain;
+    void *map = NULL;
+    struct page_info *pg = NULL;
+    int rc = 0;
+
+    if ( ~gaddr ) /* Map (i.e. not just unmap)? */
+    {
+        unsigned long gfn = PFN_DOWN(gaddr);
+        unsigned int align;
+        p2m_type_t p2mt;
+
+        if ( gfn != PFN_DOWN(gaddr + size - 1) )
+            return -ENXIO;
+
+#ifdef CONFIG_COMPAT
+        if ( has_32bit_shinfo(d) )
+            align = alignof(compat_ulong_t);
+        else
+#endif
+            align = alignof(xen_ulong_t);
+        if ( !IS_ALIGNED(gaddr, align) )
+            return -ENXIO;
+
+        rc = check_get_page_from_gfn(d, _gfn(gfn), false, &p2mt, &pg);
+        if ( rc )
+            return rc;
+
+        if ( !get_page_type(pg, PGT_writable_page) )
+        {
+            put_page(pg);
+            return -EACCES;
+        }
+
+        map = __map_domain_page_global(pg);
+        if ( !map )
+        {
+            put_page_and_type(pg);
+            return -ENOMEM;
+        }
+        map += PAGE_OFFSET(gaddr);
+    }
+
+    if ( v != current )
+    {
+        if ( !spin_trylock(&d->hypercall_deadlock_mutex) )
+        {
+            rc = -ERESTART;
+            goto unmap;
+        }
+
+        vcpu_pause(v);
+
+        spin_unlock(&d->hypercall_deadlock_mutex);
+    }
+
+    domain_lock(d);
+
+    if ( map && populate )
+        populate(map, v);
+
+    SWAP(area->pg, pg);
+    SWAP(area->map, map);
+
+    domain_unlock(d);
+
+    if ( v != current )
+        vcpu_unpause(v);
+
+ unmap:
+    if ( pg )
+    {
+        unmap_domain_page_global(map);
+        put_page_and_type(pg);
+    }
+
+    return rc;
 }
 
 /*
@@ -1616,9 +1691,24 @@ int map_guest_area(struct vcpu *v, paddr
 void unmap_guest_area(struct vcpu *v, struct guest_area *area)
 {
     struct domain *d = v->domain;
+    void *map;
+    struct page_info *pg;
 
     if ( v != current )
         ASSERT(atomic_read(&v->pause_count) | atomic_read(&d->pause_count));
+
+    domain_lock(d);
+    map = area->map;
+    area->map = NULL;
+    pg = area->pg;
+    area->pg = NULL;
+    domain_unlock(d);
+
+    if ( pg )
+    {
+        unmap_domain_page_global(map);
+        put_page_and_type(pg);
+    }
 }
 
 int default_initialise_vcpu(struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 07:17:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 07:17:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609323.948352 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllHF-0000IV-Gx; Thu, 28 Sep 2023 07:17:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609323.948352; Thu, 28 Sep 2023 07:17:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllHF-0000IK-EG; Thu, 28 Sep 2023 07:17:37 +0000
Received: by outflank-mailman (input) for mailman id 609323;
 Thu, 28 Sep 2023 07:17:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qllHE-0007vD-DA
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 07:17:36 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0605.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::605])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 1804ff52-5dcf-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 09:17:34 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8884.eurprd04.prod.outlook.com (2603:10a6:20b:42f::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 28 Sep
 2023 07:17:32 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 07:17:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1804ff52-5dcf-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gBH63qH2I2T1kLmiH0qUjmap+t0DXcgR0/Gke2lrwyxN7P9CEt3kig/Wn6wio1R08Grgjpln/+7+io/Tn70jayxGXF6CM7LPCMaWRRxH3Z9OSO14GrJynwZigbkCT4peXcvfEVpJreH+WetEcW4AqoXn2z6DXBRg0MX+IjyN+Me+oiJS6Q4VLJPpO31+RX9RKB0j9AdLhthe4iW1XshFFxmjiY7zKf51m+cM2I6DRvooJMaEg0F93jCmzjEMIYZ74IyGDF708luzUYv7MpiXFXI7Q49u1V5XiEvzlwPoVaNKBSXUkQofc3nzAirOKR0SzshgWph1fuIlnHG6jkVzFQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iHe12jYFCsixkC+lD66ZJrCoQJgG2Et89o2kOEOZydg=;
 b=VpJyExhxKzCC6rUcM0D0xGEMdMNIGXhkOFOLzmreoRDT6HyNGiGLB+6nZP1IeSeSl+/ZR+MJdEfCyolo4c4RsqRfX8yg+4BcR5jb+gzBNiOfdjqonfAY2pHGMiIomkNpoo6ReZTGhXIjTDHEZHVUmITovklisR9Hf7yuuWtt0hirxD5hHiLNGy5AnetZbKf/+pXvPVZ7A9su3z3ei66S5npeCUbWM0VVMWodylBoKS83mpKrUUmTmRV48WEDZkHdChLxVHCyuuQaS6EZNvJj7TMN/90YrD5bU19V4w77nQMFFu3VC5DOYIpLMjIRhXhGdnsER1B/cCKuHVpgml7DWQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iHe12jYFCsixkC+lD66ZJrCoQJgG2Et89o2kOEOZydg=;
 b=xFMu8r8JuEU2YjKCWjdIKRzeWtqXG7RFR6oDic0x0/Lxk1o824jCSL/Wp3tvoSbfi+d1yQD0BVAg2DXtQE3cdSzGc3MGl3QCWmGanvwxlbeh+JC3zj1+RPP3sdRgvA7eaGVC/YfqQTeU8gDWN+aO5wkP6+PdGvfL+K+7u8T3Q/M9dgbWikpioM4vIqGurfKGvXbNCHTOeBr363R158XAu68cX5kVo5zeJa0kR2Wl0tztgOPlFV62WXIkXNiTXXBRAFSHHi8vXb1A2dso9/0bj7Mk6JsYsI2SRaHiMmIoFXu+G3GC6rhRr1EncxWcz83D5RqodoKyWVomNctMcevA4w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <00736f1f-6a0e-f368-194c-edca196ec577@suse.com>
Date: Thu, 28 Sep 2023 09:17:30 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: [PATCH v4 7/9] domain: introduce GADDR based runstate area
 registration alternative
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
In-Reply-To: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0177.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b7::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8884:EE_
X-MS-Office365-Filtering-Correlation-Id: 4c8b28f6-3851-4203-ffa3-08dbbff2fb94
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	mM5aKLELW8bAnciazI5LknkegWzpP6f4wYSpqcqQ/TF5LwllXCOmkEeRdVvP7XaXnMWtxe08yWdHUO3O0jAR9hpFI8rPzCHblKu0WDb8aFVhvPIZWSYmb/Y3zNOSlyUODb2i0fajShQif9QIP1R5MFEMA3KuAUdPEbDXALmcr42Vbi+AJ90EojVilTyyxu4H4+0g4hK62clSDNjbYa2J8nKo6b1hB/kLZAVPyocKDBWQupSnRNcPnQJUfwWd+U5bsVeFQUacKDvq7Awc2bVA5cKJs3xpStCcv1fVeIHdHsv+e/hRB0UfBIVMoOP38SGnePGHP822qk51pcq55g8eEYxQC1Fqd+sWgBrH3c15XUzCKm/ESroEG8AA0l1pQqpL4wyKgQi1R6/qP6KBayu55Uh/NruRTy0O414rQNmF5/HPnHXQq+Y3ksqRCALV5fh1bogjx3ABtsqtyjdPr21ebl8Is3q3JMyphAxDqTzMCbJrCWppYLRiqwwy+MXsOWIUcwrELMA5OQ2VkCClWxlFXOjzqJbyFcxfsnWKMQ3Nb/+g82QApxaGnjW56Biz9c67iMTvprUQTzdczFOL0hwJncbEmntkURC2nzFrSE3s9Z1lTvzvpaDDvP1h7H7VTp4QuFdBZXj9UCEMcl+qwhBEPQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(346002)(376002)(396003)(136003)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(2616005)(83380400001)(26005)(31686004)(478600001)(36756003)(6512007)(6506007)(6486002)(66946007)(66476007)(316002)(66556008)(54906003)(6916009)(8676002)(41300700001)(8936002)(4326008)(86362001)(5660300002)(31696002)(38100700002)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?blhiSnNwN0oreFFzR0h5NUpySTd4S0pQTUx2cURBTkJIZlE2RkVIMXc2dVNo?=
 =?utf-8?B?c3JaSUZFeStBbmdnM0pyYjZqcUF5SUY5UkVYVEFzdWhqdERnY0RQbVBXeGRS?=
 =?utf-8?B?bjRNSTZjVkg3eHc4OGN5cUVXUDR2R2JCSWpSUlB6SHNiL3ltY2kvblNyeEMz?=
 =?utf-8?B?dTdJcG9TdHpaeTQzLzJOM0dTTHJiWG9QeHYwZG9LSGZQYzk5b2tIMXNtamZa?=
 =?utf-8?B?WFhGVHZpdGViUDcyZi9qMEMzbEV0eVY3Y1FCT1ZXMTZDb2gwR24wZmVhRHRu?=
 =?utf-8?B?VHpKOHZmQjVqaTBsNFBFSmRHVFg3NFpHYjdMU1JVMlVYMUpYWVY3ZHcxc1N0?=
 =?utf-8?B?OWg2aGxUNUNpWmNEQ3RSUVpvc3NiS3grUmVSUG5TRjBrWkJPQmR5NHlVNzV0?=
 =?utf-8?B?R0MvSm1wUW1FdDBLaVozelozTTZ1eXViTHlld1BHRVlRdldhVmpveWJERU9t?=
 =?utf-8?B?VVZyLzdNek54SkcyTWRnWnZiam4vQS8vKzFhWmZxOVhwTndHa2lpd2RTSmhw?=
 =?utf-8?B?OS94MVJmVEEydzRLSDE0VG8xTHFnMldnc1FJOXp5MjhHUURjTDN5cGxGUDZW?=
 =?utf-8?B?UVE5ZHRRdlFMdUpGeXZyRVQ2NG1CczB4ZTJaSTdreUlvcEp3M3BPNWNDOWpC?=
 =?utf-8?B?U0QvZm5TSGNHOW5tazNkLzBHbnRjeWZ3VnVvUDNkZEhWWHB1MmtqMEovK25u?=
 =?utf-8?B?TnU5R3JOZ3pKT0lqYmxTUXorWlVkY2FiNXBlQ1Q3dWRteW9UMGRIL09Wdmhq?=
 =?utf-8?B?NVk5dm9YakJNNVNCdWFRdUFheU5Qbm95YnRBK3BzcGNWN0RNSkljeDZHVEJU?=
 =?utf-8?B?NVlzVFpuVlh3S1JLOFJRM0V0NzYvd0hBRXIyTktvYjN1UGVoZHN5R3RiTDVr?=
 =?utf-8?B?Mi9RLzRoUHEzNDNpZlRXdk0yVWJtZDdkaDBuU3ZKZXpaVWJRNGI3Rk1VSlIy?=
 =?utf-8?B?a2lWcitSYjdHTEkzcHpWdUFiR3JHSVlBMkZGZFU1amVjdTMxdmsxcUhXbEpJ?=
 =?utf-8?B?U1NlSkl2dVBtVVEwMUkrRlFDN1BxSXBnRlhyYnV6WnpyOVRGUTBUZTYyVEJK?=
 =?utf-8?B?UkxhdDZiWnk2Ym9VYm5WT2w1TUNDM25NcmFENWppWERyTHB0K2V5eC9EVkM4?=
 =?utf-8?B?d20rUjBFL3RPWDJyUHhNNHV0S0hZdFo4RG9abDVoZzFad3ZNM1R3Y3FDK0U0?=
 =?utf-8?B?dmNXcDZMS09td3FnY2dlc0FaaHVhaVJPeDlITVpoNndMSEk2ZGlCZnFxQk56?=
 =?utf-8?B?Rmk1SytsWDIrUXpFRnE0dW5JaHhTQ28yRHlSQVhZUHh1cEVBT2lUWW1za1Z2?=
 =?utf-8?B?Z2lPd1VoUmdFdFZTUWdGVmdzMmlaREIrRVJHaXk4RGRCa3J4UkhKd0RFQ3k5?=
 =?utf-8?B?aC9QYjkyU0p3bFVzYmZXUzYxRVljSi83eGVPaWZHMFR0ZEp2UGoxL0ZMb0x5?=
 =?utf-8?B?Y1I0VEx2TC82N0ljR3R3R2tHM245RkJBR1NVOFRPRFoyZkRESGlKeWx2L3Vx?=
 =?utf-8?B?a05pejFvNGlLaUVjTzhsbGJkeVVKdFN0ak9WcGhkVXc1T3paR3Z4RVhVN0Q1?=
 =?utf-8?B?UUtIZVFuNGtjZFUxRkJXV2dnd1FQSmJUWWxIRWREWlEwemtJMU1MOTlCUHlE?=
 =?utf-8?B?bHN4QzcwelFVVkJtTkdWN1JZaGdYbng3dlU0VVcvb2R6VGJMTXlOS3Vyd0Zn?=
 =?utf-8?B?M0k5alZDVkZpTFR5dXRDekRGdm5Nb3dZSXJGalg2MGFqNGtRdXl3b0Fwd2VI?=
 =?utf-8?B?Z2dFdS9YNHk0SXJaOXB2K2lFYXJEUjJHZmhLLzliQnk3YzdLM2p2UHViNzhC?=
 =?utf-8?B?QXhvS0xuWk16Uyt3ZFI0V3IyYlMvMTQ2RUwzK283N1YvNDVORlNPMmhNM3hp?=
 =?utf-8?B?RnRtbWx0NFZwd0dhSVJlaFlTdGZsd1d0RExEeU1OcGl0bWZva2tVaVJhK1Zh?=
 =?utf-8?B?L3ZnK0FqbW91TVFkaWgzR3dvbDNpV1JwYWNscFhad0d4Tndxa2x0WTVINCs4?=
 =?utf-8?B?Nm9vYnVuWlVHUDkyL2FqZU9mNHVhQ3lzZEEwL3AzMm1WVmdXMk5BcE81bUZt?=
 =?utf-8?B?bmQwWndyVmk0VTAzWWN5MzB2aXJzZHQ3d25UTklmSEZOanNSRkM5eXlqR2xi?=
 =?utf-8?Q?YRTs8bV6u+i2JiZr9cBCRLYtn?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4c8b28f6-3851-4203-ffa3-08dbbff2fb94
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 07:17:32.7990
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: nlRg5ig4Xhl20PRt6+MguBjWK/7mIxaqEzfUVvwN9mu9HpjgqU9X9pTou3BHPlTgwYbHFmbjiPQWvDavD6bo1w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8884

The registration by virtual/linear address has downsides: At least on
x86 the access is expensive for HVM/PVH domains. Furthermore for 64-bit
PV domains the area is inaccessible (and hence cannot be updated by Xen)
when in guest-user mode.

Introduce a new vCPU operation allowing to register the runstate area by
guest-physical address.

An at least theoretical downside to using physically registered areas is
that PV then won't see dirty (and perhaps also accessed) bits set in its
respective page table entries.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
---
v4: Add xref in public header.
v2: Extend comment in public header.

--- a/xen/arch/x86/x86_64/domain.c
+++ b/xen/arch/x86/x86_64/domain.c
@@ -12,6 +12,22 @@
 CHECK_vcpu_get_physid;
 #undef xen_vcpu_get_physid
 
+static void cf_check
+runstate_area_populate(void *map, struct vcpu *v)
+{
+    if ( is_pv_vcpu(v) )
+        v->arch.pv.need_update_runstate_area = false;
+
+    v->runstate_guest_area_compat = true;
+
+    if ( v == current )
+    {
+        struct compat_vcpu_runstate_info *info = map;
+
+        XLAT_vcpu_runstate_info(info, &v->runstate);
+    }
+}
+
 int
 compat_vcpu_op(int cmd, unsigned int vcpuid, XEN_GUEST_HANDLE_PARAM(void) arg)
 {
@@ -57,6 +73,25 @@ compat_vcpu_op(int cmd, unsigned int vcp
 
         break;
     }
+
+    case VCPUOP_register_runstate_phys_area:
+    {
+        struct compat_vcpu_register_runstate_memory_area area;
+
+        rc = -EFAULT;
+        if ( copy_from_guest(&area.addr.p, arg, 1) )
+            break;
+
+        rc = map_guest_area(v, area.addr.p,
+                            sizeof(struct compat_vcpu_runstate_info),
+                            &v->runstate_guest_area,
+                            runstate_area_populate);
+        if ( rc == -ERESTART )
+            rc = hypercall_create_continuation(__HYPERVISOR_vcpu_op, "iih",
+                                               cmd, vcpuid, arg);
+
+        break;
+    }
 
     case VCPUOP_register_vcpu_time_memory_area:
     {
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -1830,6 +1830,26 @@ bool update_runstate_area(struct vcpu *v
     return rc;
 }
 
+static void cf_check
+runstate_area_populate(void *map, struct vcpu *v)
+{
+#ifdef CONFIG_PV
+    if ( is_pv_vcpu(v) )
+        v->arch.pv.need_update_runstate_area = false;
+#endif
+
+#ifdef CONFIG_COMPAT
+    v->runstate_guest_area_compat = false;
+#endif
+
+    if ( v == current )
+    {
+        struct vcpu_runstate_info *info = map;
+
+        *info = v->runstate;
+    }
+}
+
 long common_vcpu_op(int cmd, struct vcpu *v, XEN_GUEST_HANDLE_PARAM(void) arg)
 {
     long rc = 0;
@@ -2011,6 +2031,25 @@ long common_vcpu_op(int cmd, struct vcpu
 
         break;
     }
+
+    case VCPUOP_register_runstate_phys_area:
+    {
+        struct vcpu_register_runstate_memory_area area;
+
+        rc = -EFAULT;
+        if ( copy_from_guest(&area.addr.p, arg, 1) )
+            break;
+
+        rc = map_guest_area(v, area.addr.p,
+                            sizeof(struct vcpu_runstate_info),
+                            &v->runstate_guest_area,
+                            runstate_area_populate);
+        if ( rc == -ERESTART )
+            rc = hypercall_create_continuation(__HYPERVISOR_vcpu_op, "iih",
+                                               cmd, vcpuid, arg);
+
+        break;
+    }
 
     default:
         rc = -ENOSYS;
--- a/xen/include/public/vcpu.h
+++ b/xen/include/public/vcpu.h
@@ -110,6 +110,8 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_runstate_in
  *     runstate.state will always be RUNSTATE_running and
  *     runstate.state_entry_time will indicate the system time at which the
  *     VCPU was last scheduled to run.
+ *  3. New code wants to prefer VCPUOP_register_runstate_phys_area, and only
+ *     fall back to the operation here for backwards compatibility.
  * @extra_arg == pointer to vcpu_register_runstate_memory_area structure.
  */
 #define VCPUOP_register_runstate_memory_area 5
@@ -221,6 +223,19 @@ struct vcpu_register_time_memory_area {
 typedef struct vcpu_register_time_memory_area vcpu_register_time_memory_area_t;
 DEFINE_XEN_GUEST_HANDLE(vcpu_register_time_memory_area_t);
 
+/*
+ * Like the respective VCPUOP_register_*_memory_area, just using the "addr.p"
+ * field of the supplied struct as a guest physical address (i.e. in GFN space).
+ * The respective area may not cross a page boundary.  Pass ~0 to unregister an
+ * area.  Note that as long as an area is registered by physical address, the
+ * linear address based area will not be serviced (updated) by the hypervisor.
+ *
+ * Note that the area registered via VCPUOP_register_runstate_memory_area will
+ * be updated in the same manner as the one registered via virtual address PLUS
+ * VMASST_TYPE_runstate_update_flag engaged by the domain.
+ */
+#define VCPUOP_register_runstate_phys_area      14
+
 #endif /* __XEN_PUBLIC_VCPU_H__ */
 
 /*



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 07:18:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 07:18:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609325.948362 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllHe-0000mu-Pi; Thu, 28 Sep 2023 07:18:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609325.948362; Thu, 28 Sep 2023 07:18:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllHe-0000mn-Mr; Thu, 28 Sep 2023 07:18:02 +0000
Received: by outflank-mailman (input) for mailman id 609325;
 Thu, 28 Sep 2023 07:18:02 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qllHe-0007vD-1U
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 07:18:02 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0614.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::614])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 27434696-5dcf-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 09:17:59 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8884.eurprd04.prod.outlook.com (2603:10a6:20b:42f::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 28 Sep
 2023 07:17:58 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 07:17:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 27434696-5dcf-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=EPkMsnabufSmpbx6QIx/y3RCccc5Paton0OJnj41bAN3dXbHTFSqGkgYG3Qi4+PloxpwDoYGO/dbEF9egUO/C0d1E5IM0lxQE95p69cTcu8P4VjNDOVImzOVVnz5YAnSpLEljluTmQnL3PLZ2j+n7rZ3+kDvNBeo3OfWA52GsTc+DtTyr0SHtbzfa9alblHD3HNMLsZg63uMb8wVxTnTu4rBq9hh25js3Ca1dsxrAK34SSKISKvxTGKlTS5w7GN1sUOxdM6LRI9AYf7Fr5Eap3PPz2GtSAbToolwgwnSp/HQXM6WTWIKG0CYLKaG9CnRu0rET/IPoEpp8PFHydQ/Zw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=I+OV0nhX0WwhrZMdhQwtKb70aws/RhTWdhHwFYCofOM=;
 b=mrhqEjHRXtJUxmNvp9wW1MEkvphEqWFqav8h2IB52p62ZHDI4UW9kSpYAyuVeXqPgaOHJJ8sY/x/kCmc3ZC5/JZruS+BYNTqvRXsKOzOr3XwUVijA8Ho9aK4wVqw/CwZJtUFAm6XXRxAMg4+t8TVse+lbbp1070ad/Wu2ALEvvS/O38TLhZp8UVHWZHXqtIRAOphaOOyvCKSW2LTa7ypAcWGttpOuLnm0+hF5xaoFk7lNoy6zTqmF+Z0HsNoFBjmlEeTorJEF4DOyiSmvCo5dxSFbaYZUoG19r7WdXHdEUQSWSDstG3oTGlibYI/v3tPBiYCDJ29EeLaccysfpS7JA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=I+OV0nhX0WwhrZMdhQwtKb70aws/RhTWdhHwFYCofOM=;
 b=Pmr6EypQ4XsfLWOElSTKZltr/62Zn0TLRMewjFu65Pq2x/s3iJWloW+PjKLCsqPZITw9LO/AR6LeTpX5Vuko8v8pnCJToVd5bOAXLJjU0esbuHBzoKEsDruJSv8+AdaTQQg+xzbdVJj2wAT6hK5UwRRDrDxzOK0lyZTJhhu3TvFsc9PoIQW2T39EFWIU1eb8Askmyib8AHJPd83m/7pmb/WwZZ3YYt2rx1cxG5/pug5I7rsE6jbfCAfknkvasxTOvLiTxFAoyYl32qwCFagQsxSo7Oucc5bqTdoaXKj+jazPhj6YRWKFIMvYij2i701wYjw0OuSXiCbN7bnrQC7WMw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4f28ae35-031a-461a-4be2-b24a057ea20b@suse.com>
Date: Thu, 28 Sep 2023 09:17:55 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: [PATCH v4 8/9] x86: introduce GADDR based secondary time area
 registration alternative
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
In-Reply-To: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0163.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ba::8) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8884:EE_
X-MS-Office365-Filtering-Correlation-Id: 264fa25e-f1c8-4ea0-23aa-08dbbff30ac0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Ept45ednt5cbtDXb7ICCfhgIFUH+r7U7YPlm4uROa/5tKfzn/QiurLtb0tSYg3CEs8wyT+EvZm+534IbU+MpixjtbL6vruaKBZzkfs4GRYUI/n3JmGx3sf9sDT7KbH4dgRXyhvxgrL3i58d9ZZM0ggBtGzuo+bM7yjQgnJisIjoQxORzvWKJ4bOLM4Ag7dIOL4+m0OFOhj/DfvDhkb0wlUoYOwIclVD1eO7qpu9noOL9GIHLE/BWhV1gzRdJlVq9h8iTy5W39CHa+66ZjRoDF1RLUu9gj/H8pGSAN2BTnq0gy6lNrLmKS8J+ud3EwV8XuvzZA7TIBLv5BKZugy1vNAavgJ63EXQEQGHWIcBUMNc0LPaSYqy/h43baUeajoSWNmfe/La6QYLIRiW3FyG9/quCG6w58447VWO6iEZHPp8LEW6qNLF22w38QGNbABk+lqQRx2RB/Ntf/KVRnzw4EXv6RpVebLfB7ujK4GKp4vTiUEANYvboZ4SKDNA5hBuf6PKUGsCVGs4cK3KEyy+0izfX7YBGX1Cun0cHhvwOx0ME66TBie2U4JSEmAV+XGFcFKMw7jfcwnEGr0cJTJ20+3sD/psc6NQO/olfunkyG1Ul3toi+7PAE53TtSacNprvFK7eE8CLvy6sjxYXqK/tlg==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(346002)(376002)(396003)(136003)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(2616005)(83380400001)(26005)(31686004)(478600001)(36756003)(6666004)(6512007)(6506007)(6486002)(66946007)(66476007)(316002)(66556008)(54906003)(6916009)(8676002)(41300700001)(8936002)(4326008)(86362001)(5660300002)(31696002)(38100700002)(2906002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RkVBeWhuS1dDUEhZYUs5cWorWkJ3YW8rc2pVMC93Qkl2V1F5Mmlac09ZSldn?=
 =?utf-8?B?R2xpQW4rRTZRNWJtYkNoZGRpOC9BMi9FWUd2amlhNlJCK1JEeHZHUk9vRTE3?=
 =?utf-8?B?T1dkS1hMd1VxMzczYWtrVnlMKzNkQ2VsTER1RzdBTEVIL3g4TEtTSTBUYVRM?=
 =?utf-8?B?YUJaRXdqLzFMWHRFdkVVbnVyM0lCM3hwU0ZNTjVQMStFS0JIYjJHTXdqdDZo?=
 =?utf-8?B?RVZZNDQ2Sk9RRWx5T1ZCUGpENnVNQ1lqOGlPZ0xuN1pUbkxTazRZdVZidFZm?=
 =?utf-8?B?NWZPMkltWE5HUTZrVkxmVDVtdm1paVRObnhBY3JKWlYzTlRuK3U5LzYxWTJq?=
 =?utf-8?B?Mm5wc0VWTG1iSjIxbElxVVhFSHRVQWNBb0VrMDZPakxXNndHNFJ1THRYU0tB?=
 =?utf-8?B?dStac0hkTjFLckRjOUpPSkhTWjE4YnNhdGVZQjBFelI0ZWJkWXFMRW1xbHd5?=
 =?utf-8?B?c3pGRnVCWVhqcXRLL3hoVkd4WnMzSU8wYXpDcUlCaEFtaStCRDJ0a3hsRWZx?=
 =?utf-8?B?cGhqZ2RQVFJ6bXRabWVFYko3WEJIUDI3ZnZQUHY2OWhHSTlSWFFwTDJOVlNF?=
 =?utf-8?B?Tmp0YXhRMzIxc0xteWluN2E5cVhNQ1Q5U2QwZE9kNVEvNEx5QTdlTnVLaDVy?=
 =?utf-8?B?NkUxRnJnUWI4aS9ZYzduSjZvTjNGUm1oeXVKTU5UZnN4WFp1MloxZ1NMdVZ6?=
 =?utf-8?B?akFJSTF4bkl0SURvSnp1eUY0MTNRbDlrZ1R6U2V1WDFZM0xVenMrS3JJaXg3?=
 =?utf-8?B?S2J1TE5LMlZPRlRRT2tjek9zaEVyNEtWL3FOeFV3dE9wdHpqRURwUlRoM1F2?=
 =?utf-8?B?cHBWbTJKTFRDejNGUlpHcWRaMDlkaFJkNkRJQ2VvZ214VlVRZE9yTGVva3Fm?=
 =?utf-8?B?Rk5GRThCaUJFOTUwUVBxZ3gramlCN2gvRjVXSVNFaXNzNnBWWFR1SFVtQVNi?=
 =?utf-8?B?clVseEJxeDBZenE0WS9xTSszbDAvWk50aThpMHhYaS9JR21pZlQ2UUZPM29V?=
 =?utf-8?B?eExTZjgydEFGTVJ5S29vYXpreHNhbXdNVGNCU3dBSGVZWlZyVU1JQTJDeDRZ?=
 =?utf-8?B?TFVGTGF2VWlNUVBkcXd2am1Iajc5Z2U2NjNmNitnSng3bGpHVytYSlZxZDZN?=
 =?utf-8?B?ZWlWYWZicUJVYzlwK0ZIcWJyNUFURHBzYjE4Tk1ZbXduRk5FQSthUVhFRjJE?=
 =?utf-8?B?S3ptdlA0cVRabXlUL1N4SjFBOE1pREJ0YndQdlZqSmVwd0JyKytldEFlZHFY?=
 =?utf-8?B?N2VWV0xmTTdXQmdZbThLazEzOG9mbkhRZFV0VitJb2ZzSjhHWG5wMGtxK2pm?=
 =?utf-8?B?bEhqZ2JXVzNGM3VWa2FQMk5qVkUrZk15RllBSjY1SnJOT3ZERnc3cDVQdDZZ?=
 =?utf-8?B?MGowQmFpYmcybVFsQkpkeHphQW9nWm9zK2hWVi93b2ZuR3pKOU9HeHhIVXNB?=
 =?utf-8?B?OXhGaVZ5UmpETHpQSmNyKytMMzE4bmk1YnhBbWpVYmg4SnJEZ1doNUgrazZv?=
 =?utf-8?B?Tnc4R1RSMXM0aWxFYysya3ZEUWRxMjJDeEZTeTMvRzFxdjBuVGViQXo1bjlQ?=
 =?utf-8?B?Q1kyQTg2UEZndVZJTzVwUW54eUlUU3B3cjNsaFNRSWJRSjZ0R3E5VmtLdGlp?=
 =?utf-8?B?M3h2NUxxbG9QQzdIaEdhNENwWkhNNllqR09LT0JpdFg3bEI5VFYrTEJEbHdm?=
 =?utf-8?B?WnNsYmhNS24vT2tSend6NGdzc25sS1RlZStrQ1E4R29BNmw5WWJDTEY0ZEVr?=
 =?utf-8?B?RjR4WjBxK1YvQ290OXc2VGNQR2lmK0NHQ25mTlV2Mk1HMWRlMTNkOUx1ZWlK?=
 =?utf-8?B?cFpFUHk2Q0RMMlJOcm9VUzFGNUIrWXJubmNOdTNwM2dhYSsraHRHM1hFSUZ1?=
 =?utf-8?B?Z1MrczVFelRzeGRsa2d3V3VnM1MrODFPUnY0NE1WYk1jM2U1TFJmQm9BK1Rk?=
 =?utf-8?B?MjNsbldFbkM3Q09JUXBoRXpZRFVhR056SklicTZocXN4TkRYd2RDak55TjZO?=
 =?utf-8?B?ZkxkVndqS09nNTRVeGhoc1lDdTluUXhCNzIxdG9pUEFaT0JqWldHcko0TEhr?=
 =?utf-8?B?SFh6YmlyL0V6aXZxcFl1aUY3WXFlTVVpQW9qOXhOTVBtT1FZZ2ZBQWZoam1V?=
 =?utf-8?Q?nAFyjuRJ3gEnHSmBLxB08sQ+k?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 264fa25e-f1c8-4ea0-23aa-08dbbff30ac0
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 07:17:58.2340
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: zE0Oa4A0aBCKJbQ/T7En8QNEbcdI/pLyRESvOf5uR7byHXgr9WLhlZZBvr6avDMSYPT6X0yDfjU03E+HPBWRlw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8884

The registration by virtual/linear address has downsides: The access is
expensive for HVM/PVH domains. Furthermore for 64-bit PV domains the area
is inaccessible (and hence cannot be updated by Xen) when in guest-user
mode.

Introduce a new vCPU operation allowing to register the secondary time
area by guest-physical address.

An at least theoretical downside to using physically registered areas is
that PV then won't see dirty (and perhaps also accessed) bits set in its
respective page table entries.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
---
v4: Add xref in public header.
v3: Re-base.
v2: Forge version in force_update_secondary_system_time().

--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -1529,6 +1529,15 @@ int arch_vcpu_reset(struct vcpu *v)
     return 0;
 }
 
+static void cf_check
+time_area_populate(void *map, struct vcpu *v)
+{
+    if ( is_pv_vcpu(v) )
+        v->arch.pv.pending_system_time.version = 0;
+
+    force_update_secondary_system_time(v, map);
+}
+
 long do_vcpu_op(int cmd, unsigned int vcpuid, XEN_GUEST_HANDLE_PARAM(void) arg)
 {
     long rc = 0;
@@ -1566,6 +1575,25 @@ long do_vcpu_op(int cmd, unsigned int vc
 
         break;
     }
+
+    case VCPUOP_register_vcpu_time_phys_area:
+    {
+        struct vcpu_register_time_memory_area area;
+
+        rc = -EFAULT;
+        if ( copy_from_guest(&area.addr.p, arg, 1) )
+            break;
+
+        rc = map_guest_area(v, area.addr.p,
+                            sizeof(vcpu_time_info_t),
+                            &v->arch.time_guest_area,
+                            time_area_populate);
+        if ( rc == -ERESTART )
+            rc = hypercall_create_continuation(__HYPERVISOR_vcpu_op, "iih",
+                                               cmd, vcpuid, arg);
+
+        break;
+    }
 
     case VCPUOP_get_physid:
     {
--- a/xen/arch/x86/include/asm/domain.h
+++ b/xen/arch/x86/include/asm/domain.h
@@ -692,6 +692,8 @@ void domain_cpu_policy_changed(struct do
 
 bool update_secondary_system_time(struct vcpu *,
                                   struct vcpu_time_info *);
+void force_update_secondary_system_time(struct vcpu *,
+                                        struct vcpu_time_info *);
 
 void vcpu_show_registers(const struct vcpu *);
 
--- a/xen/arch/x86/time.c
+++ b/xen/arch/x86/time.c
@@ -1628,6 +1628,16 @@ void force_update_vcpu_system_time(struc
     __update_vcpu_system_time(v, 1);
 }
 
+void force_update_secondary_system_time(struct vcpu *v,
+                                        struct vcpu_time_info *map)
+{
+    struct vcpu_time_info u;
+
+    collect_time_info(v, &u);
+    u.version = -1; /* Compensate for version_update_end(). */
+    write_time_guest_area(map, &u);
+}
+
 static void update_domain_rtc(void)
 {
     struct domain *d;
--- a/xen/arch/x86/x86_64/domain.c
+++ b/xen/arch/x86/x86_64/domain.c
@@ -115,6 +115,7 @@ compat_vcpu_op(int cmd, unsigned int vcp
 
     case VCPUOP_send_nmi:
     case VCPUOP_get_physid:
+    case VCPUOP_register_vcpu_time_phys_area:
         rc = do_vcpu_op(cmd, vcpuid, arg);
         break;
 
--- a/xen/include/public/vcpu.h
+++ b/xen/include/public/vcpu.h
@@ -209,6 +209,9 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_get_physid_
  * segment limit).  It can then apply the normal algorithm to compute
  * system time from the tsc.
  *
+ * New code wants to prefer VCPUOP_register_vcpu_time_phys_area, and only
+ * fall back to the operation here for backwards compatibility.
+ *
  * @extra_arg == pointer to vcpu_register_time_info_memory_area structure.
  */
 #define VCPUOP_register_vcpu_time_memory_area   13
@@ -235,6 +238,7 @@ DEFINE_XEN_GUEST_HANDLE(vcpu_register_ti
  * VMASST_TYPE_runstate_update_flag engaged by the domain.
  */
 #define VCPUOP_register_runstate_phys_area      14
+#define VCPUOP_register_vcpu_time_phys_area     15
 
 #endif /* __XEN_PUBLIC_VCPU_H__ */
 



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 07:22:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 07:22:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609330.948371 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllLX-0002hO-9z; Thu, 28 Sep 2023 07:22:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609330.948371; Thu, 28 Sep 2023 07:22:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qllLX-0002hH-7K; Thu, 28 Sep 2023 07:22:03 +0000
Received: by outflank-mailman (input) for mailman id 609330;
 Thu, 28 Sep 2023 07:22:02 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qllI0-0006Ef-EX
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 07:18:24 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on062a.outbound.protection.outlook.com
 [2a01:111:f400:fe02::62a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3579f611-5dcf-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 09:18:23 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS8PR04MB8884.eurprd04.prod.outlook.com (2603:10a6:20b:42f::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 28 Sep
 2023 07:18:22 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 07:18:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3579f611-5dcf-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=SSW9KEgqBO+SWH32jJ4Eccxs48NNvf1VhDfFCnezm2+Io+UmO4FOLuLDfCWT2jqm+NsQXZtd2XKIEnpzjaBdNqLw7jkmO3ah0ekzetrW9dGzGpcVEKp7rf/5YfoOGZK+/VQlgF6kKvPNV+onET44tt9Kp1qaOBrtRW/YWicmFErgNff7fr/U3lXgvabFu3YrjM0HiPP7LWoz8oIqKQ9TPwI5OYPOCFYTqhEVuT5VpZjrkVzawohPR1O1wnhrlwAHwzZbiNlMWhyUQFN2LVyIYZapFRCakwo6nTDdUpuloFn2Fmsx9bIyjoP1lO6YWeUycAo21fxQkA0Zyl/GNbionQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Q6heSYFw3PZWXqBzIsXffgtlNiPmiim8ZkFs/SFPCFs=;
 b=gysA0cNKlbKivDWhRxGfOYCmbiXbd/m4xj+b7KyKyZTS52XuT7uAKFtPRDX/elURjGqHFe2pIb8Fo7o6NRbTt5Q80BAg2inVhrhVR8TL9EVQuZOoCKYXaqUwJQdsPLNHbpKgfsMLUjk961dIO5F8aQcEUKucNDp2HuYsX0yvXerw/eVMfbTK4qidlhxu2ay83aL20NBAIpWSi2QJaeDHxbYO9kbPaDqq0ZGambpAClLP2g6Q02JWCw2MGgxWK27/00XJbEbcVvCrcC7gYn0TtlV6mve6Q0MtT6vz1RED8Jr77GvMUfffla50yEQPxSOQOqyZMP3kodD7SA2MFXDonA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Q6heSYFw3PZWXqBzIsXffgtlNiPmiim8ZkFs/SFPCFs=;
 b=o5bf5PNj6onGkKiC+FYf2tLtKGhOBDmw2s+1wUKLA84o3VqJn1dl7k88xopnuMvHz/1RnmIK1mKuKqf95haRvKXp01FqWmMJL8Vefr1ZhH5SB7AwcyXSIFurCCpGTfI+nwqrI1I5i7cFj3WhBC2MGky1MRb4JDV59Q7vMxxQPBukFLlzajkKN12bwsN4eQbsrkxnN3Mg0HFddvyBYPVGW2xbdUchOoKZcODDxsxadUSv/NXx0fLnauGloJqv6PxO1hkCl22APngZY749olXqPXnDHyvmx3heORSwIB7wxu9bn5eWQpEFru82+5JERoxr7F+44QodB3wQdu8helaP2w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <3e8c1577-783b-ece2-3302-b1a85a2f53fb@suse.com>
Date: Thu, 28 Sep 2023 09:18:19 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: [PATCH v4 9/9] common: convert vCPU info area registration
Content-Language: en-US
From: Jan Beulich <jbeulich@suse.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
In-Reply-To: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0164.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b3::6) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS8PR04MB8884:EE_
X-MS-Office365-Filtering-Correlation-Id: bfda5261-4595-48f0-0a90-08dbbff318e5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	nDxN0hqlgVbkRULRYvsnh/lYwr16uuYUcxKyN4xFQ6pvfun8UJIu3a4UlEl3+lPxamp9xuzrX+AakXkZNoPyKrS4Lcdluy14P91eAzTZUfy9h1Hsl0NV+CxZUJvbQxDHuKmHzwT52sS/K/Xza4XThp0H3Mkmf0wwGYRbwJ28Mjj8YKwkJbCJg/Q5ZQcBny4RCpw2oe5VK9pHH/0HhyQUgMRFKqaCt3CtWbR6srX1i/m9+ucHqGe770RABRF74DYMI24N1U3Mlv7fWIdqG9mKa4H0qXIm35vZ7Va4hpQogze9Z93TnrFFW5m/5d7Pz/x4bvMHEm0cj0kV0yRrqDR0LHN0HqxzotmxfSNCh6b+MFszppGEC0R6puphoETws9jF0cWb4UyTB+Bwkke5ikzd0u1f05MOESYSiwe4hdHtTkW6dOdPXtKJ1lqrQsPzKu6zs104u3vLyAtYGzc8wIU7yn/TsqJ9Nx4fMILeD9sugHT9H6FIYm2k7JJe8K4oJENs9v+7vwDc+XzqNRtxXOjyM3p6cunLoQm8Ho8/ygFTTt+rAm7AfkM3geeS7gF6AyzYqP1aAKpQHDOYy9dqw+2JPKaviMcFaRoAt3YaucV9oy7W/ACP8zk6LzDt2+aDflrST3hwXCW/ULiINg2YD9z/nLlVmi3vYPSkVhi+vtz12Y1Jtro9UlEQVkW2dExBC946
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(346002)(376002)(396003)(136003)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(2616005)(83380400001)(26005)(31686004)(478600001)(36756003)(6666004)(6512007)(6506007)(6486002)(66946007)(66476007)(316002)(66556008)(54906003)(6916009)(8676002)(41300700001)(8936002)(4326008)(86362001)(5660300002)(31696002)(38100700002)(2906002)(30864003)(45980500001)(43740500002)(309714004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?TnhaTmpDK3g0OURjZ01FVTBYRnVSN2NZWG9kVUMrVUlHNGhNN0xBVHI1dEZK?=
 =?utf-8?B?WEJpSHFxMmN4OGNDYW9EeUhITEdFQUkvUEQvT3p3S1V4WkdmTmZVNXp6Mk15?=
 =?utf-8?B?dXJMd2pKbjZFRlFiK2lmMkdmaWRUNlAvQ1o0YnNUQ1c4YnloSFExc1ZFVm1V?=
 =?utf-8?B?ZjlIZEdLMG12cXEvZ3p3RHpWSzJ5R3RLUzlsTW92c3pBeGdWUDBHSitHeHZF?=
 =?utf-8?B?Q2EzU0JQMlFIY1dFdWEzclZCaUV5bms3SnFKcXVjN0hrcGxoTlRKMnZHZUcy?=
 =?utf-8?B?NUlQUGNac2M1eUpFc3BXV2YxKzRvdlBoaXNxQnpRMmpmZXY0SllxZ1RLMWov?=
 =?utf-8?B?bUlpWU1NbDFvci82KzJLd1JCY1ZjTE11Q0h6WU0wbE1CaFE5MENYcy94WmUv?=
 =?utf-8?B?aTQxRklVRkJQNURoeVNHa0lvaFY2czVqSnd0Wm1KZE5mUEVUTTZXY1c4aW9q?=
 =?utf-8?B?UDl0UVQzd21OVWtGNjRndU9rTG4zTlNubUdoSTNWNUJPTXk3aUhYaS9JVFpi?=
 =?utf-8?B?ZTRSamNmT29iRnlBVlFBTmRjRnZWRlgvaDFaQnRZSUVWZnJQQzFZK3N6dHVJ?=
 =?utf-8?B?TmdWakQrWkNhVXF6NEZOaGVyWnBlOHR2aURxUTRDcjBIMVhESFdMMjVIeHU0?=
 =?utf-8?B?a1poSm9xYW1pS3ZvYVJ4Qm9acUN4TzdGZWZtd1ZNV2docjYvMTB3Z2VTcS90?=
 =?utf-8?B?MHArQWZlaVZVd0ZySy93dk8vUWJhK0k2clF0c1lkV01iZ3B6Zk9ydUZIRFBW?=
 =?utf-8?B?bmhGZ1oyWnl3ZXBQazdUMkJkNzlpMlA1bUxTeUF6eGlPRDJJZ0FmQWRIcm9i?=
 =?utf-8?B?ZXhQdG5zZ0RCRzcyOGc5UnpZRDJWWnFmbkJRM3M3enlUUjNzUy9raHMvbE1h?=
 =?utf-8?B?MmlJazd1aXIwS3hUUmpTZUhPUW8vWUNPalFlUFR6Z2hlSnNFZFhrQWE2WW5V?=
 =?utf-8?B?VVhYNm5PbGFFTDZPbDBOaWltdmNLeFVwUEVDcmN4elBCem9INFljMWtaT1RM?=
 =?utf-8?B?cFlkei95SFF6RFBQTEpHTlpOSUtxSDBlYytoVXpodDE0NW9GUWVucVdIVXBw?=
 =?utf-8?B?ZUJZSkZ3enlxRE1nYWRvNEVjeDZhZ04xTmdEeWNTTXhIMGFDY0NmUjFEWExx?=
 =?utf-8?B?QzJ6c0s4bWZuT3ZjMUdpa3RlaHZWeWw2NVd1VjU3QThtRDM2SEFtbzdRTG9K?=
 =?utf-8?B?MlYvSjNCNkhacHVHNTdvNWVpZ0VKeWp3aVVVQ29IdEhuekJ3NmRjL2tPZzc2?=
 =?utf-8?B?RnBFV3pHS0hMN3FVMitUMndCemhyaVEyN2VVQUNYVjc5dUNMdTNJcHl3Qmww?=
 =?utf-8?B?WW94M0pPTEx2S3o3QjNkRUV1TE5EUjhuV09pSkxLd1IwWkZMK0pRWUwvSXRP?=
 =?utf-8?B?MFZGWHpYalpVcGxUSU52ekZlcWVVR2pmblh1dHE2RlZzRjNzSCsydmxCK1du?=
 =?utf-8?B?T0pUbW9KMy9mZUU0OVhGdENpVWVvS3BWUGlqRmpYQjJEbWFwU3RTRGtzZjg1?=
 =?utf-8?B?UnRoN3kyNk1OZE9KNmI0eVhqWTFIL3djOGhmeEFVQjJQeEdFZFVqcHdtR1dh?=
 =?utf-8?B?UXlESlQ1Tnk3eUNsQkNzV1FuSklpY01DK1JQV1V2OE9GdTRISzVVUUwxaTBG?=
 =?utf-8?B?b29YRWpBYms2NjJBekREVEk3M0lYeFZpSXkvQ1d5bU9BdlNFTFlVRUZqMU5a?=
 =?utf-8?B?M3g2WElhSWt4SE1UT1Z5emZkSEtYcEFtSWRyT1Uwa1BUMzZ5M2h1NWV5bi9a?=
 =?utf-8?B?ZlVlT0x2di83K0pHSU9JNUR2LzNtRVNMaFFWVzUrRWRQZTRPOThmQTBDck5v?=
 =?utf-8?B?VjZWSmxLOEZZN0h4eDY3ZEZsa1hjc1kzQVFhT2VWUlZZOU8yRUdvMmlicTlk?=
 =?utf-8?B?bHI1Y2pnU1MvdGNwOFlKMHhPdUJ0N0Z0dVhPRnl6cWNuWXFPT24zMkNyaU1i?=
 =?utf-8?B?NW1uSDVxVEo0NGV3SUYwSlhGVG1MZW5yWmV6Y3ppN0lUN3dDZTRBUm8xWUFs?=
 =?utf-8?B?VjgrWE1UUGZtNVUxNC9oRW0zaThGN0kvejBNcEo1anNpNkRteDJrYmdlajEv?=
 =?utf-8?B?ZElLV0M1T1pIOEw1aFcrOFRrcU5ZUzhpMnFNaXdMaW00bng1c2JpUmc3VVdx?=
 =?utf-8?Q?McrH/bV0RXIfnFOXKeWPPiTKu?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bfda5261-4595-48f0-0a90-08dbbff318e5
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 07:18:22.0098
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: k0oxxg3k/dNKwDq0kzhsXNJF99TL+zfgCP4tLJDeQsm6mv1bfDASCdw8PWZol43DzwLGGZHBYq9f2KgZ5TDbkw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8884

Switch to using map_guest_area(). Noteworthy differences from
map_vcpu_info():
- remote vCPU-s are paused rather than checked for being down (which in
  principle can change right after the check),
- the domain lock is taken for a much smaller region,
- the error code for an attempt to re-register the area is now -EBUSY,
- we could in principle permit de-registration when no area was
  previously registered (which would permit "probing", if necessary for
  anything).

Note that this eliminates a bug in copy_vcpu_settings(): The function
did allocate a new page regardless of the GFN already having a mapping,
thus in particular breaking the case of two vCPU-s having their info
areas on the same page.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
---
RFC: I'm not really certain whether the preliminary check (ahead of
     calling map_guest_area()) is worthwhile to have.
---
v4: Re-base over changes earlier in the series.
v2: Re-base over changes earlier in the series. Properly enforce no re-
    registration. Avoid several casts by introducing local variables.

--- a/xen/arch/x86/include/asm/shared.h
+++ b/xen/arch/x86/include/asm/shared.h
@@ -26,17 +26,20 @@ static inline void arch_set_##field(stru
 #define GET_SET_VCPU(type, field)                               \
 static inline type arch_get_##field(const struct vcpu *v)       \
 {                                                               \
+    const vcpu_info_t *vi = v->vcpu_info_area.map;              \
+                                                                \
     return !has_32bit_shinfo(v->domain) ?                       \
-           v->vcpu_info->native.arch.field :                    \
-           v->vcpu_info->compat.arch.field;                     \
+           vi->native.arch.field : vi->compat.arch.field;       \
 }                                                               \
 static inline void arch_set_##field(struct vcpu *v,             \
                                     type val)                   \
 {                                                               \
+    vcpu_info_t *vi = v->vcpu_info_area.map;                    \
+                                                                \
     if ( !has_32bit_shinfo(v->domain) )                         \
-        v->vcpu_info->native.arch.field = val;                  \
+        vi->native.arch.field = val;                            \
     else                                                        \
-        v->vcpu_info->compat.arch.field = val;                  \
+        vi->compat.arch.field = val;                            \
 }
 
 #else
@@ -57,12 +60,16 @@ static inline void arch_set_##field(stru
 #define GET_SET_VCPU(type, field)                           \
 static inline type arch_get_##field(const struct vcpu *v)   \
 {                                                           \
-    return v->vcpu_info->arch.field;                        \
+    const vcpu_info_t *vi = v->vcpu_info_area.map;          \
+                                                            \
+    return vi->arch.field;                                  \
 }                                                           \
 static inline void arch_set_##field(struct vcpu *v,         \
                                     type val)               \
 {                                                           \
-    v->vcpu_info->arch.field = val;                         \
+    vcpu_info_t *vi = v->vcpu_info_area.map;                \
+                                                            \
+    vi->arch.field = val;                                   \
 }
 
 #endif
--- a/xen/arch/x86/mm/mem_sharing.c
+++ b/xen/arch/x86/mm/mem_sharing.c
@@ -1749,53 +1749,24 @@ static int copy_vpmu(struct vcpu *d_vcpu
 static int copy_vcpu_settings(struct domain *cd, const struct domain *d)
 {
     unsigned int i;
-    struct p2m_domain *p2m = p2m_get_hostp2m(cd);
     int ret = -EINVAL;
 
     for ( i = 0; i < cd->max_vcpus; i++ )
     {
         struct vcpu *d_vcpu = d->vcpu[i];
         struct vcpu *cd_vcpu = cd->vcpu[i];
-        mfn_t vcpu_info_mfn;
 
         if ( !d_vcpu || !cd_vcpu )
             continue;
 
-        /* Copy & map in the vcpu_info page if the guest uses one */
-        vcpu_info_mfn = d_vcpu->vcpu_info_mfn;
-        if ( !mfn_eq(vcpu_info_mfn, INVALID_MFN) )
-        {
-            mfn_t new_vcpu_info_mfn = cd_vcpu->vcpu_info_mfn;
-
-            /* Allocate & map the page for it if it hasn't been already */
-            if ( mfn_eq(new_vcpu_info_mfn, INVALID_MFN) )
-            {
-                gfn_t gfn = mfn_to_gfn(d, vcpu_info_mfn);
-                unsigned long gfn_l = gfn_x(gfn);
-                struct page_info *page;
-
-                if ( !(page = alloc_domheap_page(cd, 0)) )
-                    return -ENOMEM;
-
-                new_vcpu_info_mfn = page_to_mfn(page);
-                set_gpfn_from_mfn(mfn_x(new_vcpu_info_mfn), gfn_l);
-
-                ret = p2m->set_entry(p2m, gfn, new_vcpu_info_mfn,
-                                     PAGE_ORDER_4K, p2m_ram_rw,
-                                     p2m->default_access, -1);
-                if ( ret )
-                    return ret;
-
-                ret = map_vcpu_info(cd_vcpu, gfn_l,
-                                    PAGE_OFFSET(d_vcpu->vcpu_info));
-                if ( ret )
-                    return ret;
-            }
-
-            copy_domain_page(new_vcpu_info_mfn, vcpu_info_mfn);
-        }
-
-        /* Same for the (physically registered) runstate and time info areas. */
+        /*
+         * Copy and map the vcpu_info page and the (physically registered)
+         * runstate and time info areas.
+         */
+        ret = copy_guest_area(&cd_vcpu->vcpu_info_area,
+                              &d_vcpu->vcpu_info_area, cd_vcpu, d);
+        if ( ret )
+            return ret;
         ret = copy_guest_area(&cd_vcpu->runstate_guest_area,
                               &d_vcpu->runstate_guest_area, cd_vcpu, d);
         if ( ret )
--- a/xen/arch/x86/pv/shim.c
+++ b/xen/arch/x86/pv/shim.c
@@ -383,7 +383,7 @@ int pv_shim_shutdown(uint8_t reason)
     for_each_vcpu ( d, v )
     {
         /* Unmap guest vcpu_info page and runstate/time areas. */
-        unmap_vcpu_info(v);
+        unmap_guest_area(v, &v->vcpu_info_area);
         unmap_guest_area(v, &v->runstate_guest_area);
         unmap_guest_area(v, &v->arch.time_guest_area);
 
--- a/xen/arch/x86/time.c
+++ b/xen/arch/x86/time.c
@@ -1542,7 +1542,7 @@ static void __update_vcpu_system_time(st
     struct vcpu_time_info *u = &vcpu_info(v, time), _u;
     const struct domain *d = v->domain;
 
-    if ( v->vcpu_info == NULL )
+    if ( !v->vcpu_info_area.map )
         return;
 
     collect_time_info(v, &_u);
--- a/xen/arch/x86/x86_64/asm-offsets.c
+++ b/xen/arch/x86/x86_64/asm-offsets.c
@@ -53,7 +53,7 @@ void __dummy__(void)
 
     OFFSET(VCPU_processor, struct vcpu, processor);
     OFFSET(VCPU_domain, struct vcpu, domain);
-    OFFSET(VCPU_vcpu_info, struct vcpu, vcpu_info);
+    OFFSET(VCPU_vcpu_info, struct vcpu, vcpu_info_area.map);
     OFFSET(VCPU_trap_bounce, struct vcpu, arch.pv.trap_bounce);
     OFFSET(VCPU_thread_flags, struct vcpu, arch.flags);
     OFFSET(VCPU_event_addr, struct vcpu, arch.pv.event_callback_eip);
--- a/xen/arch/x86/x86_64/traps.c
+++ b/xen/arch/x86/x86_64/traps.c
@@ -96,7 +96,7 @@ static void _show_registers(
     if ( context == CTXT_hypervisor )
         printk(" %pS", _p(regs->rip));
     printk("\nRFLAGS: %016lx   ", regs->rflags);
-    if ( (context == CTXT_pv_guest) && v && v->vcpu_info )
+    if ( (context == CTXT_pv_guest) && v && v->vcpu_info_area.map )
         printk("EM: %d   ", !!vcpu_info(v, evtchn_upcall_mask));
     printk("CONTEXT: %s", context_names[context]);
     if ( v && !is_idle_vcpu(v) )
--- a/xen/common/compat/domain.c
+++ b/xen/common/compat/domain.c
@@ -49,7 +49,7 @@ int compat_common_vcpu_op(int cmd, struc
     {
     case VCPUOP_initialise:
     {
-        if ( v->vcpu_info == &dummy_vcpu_info )
+        if ( v->vcpu_info_area.map == &dummy_vcpu_info )
             return -EINVAL;
 
 #ifdef CONFIG_HVM
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -127,10 +127,10 @@ static void vcpu_info_reset(struct vcpu
 {
     struct domain *d = v->domain;
 
-    v->vcpu_info = ((v->vcpu_id < XEN_LEGACY_MAX_VCPUS)
-                    ? (vcpu_info_t *)&shared_info(d, vcpu_info[v->vcpu_id])
-                    : &dummy_vcpu_info);
-    v->vcpu_info_mfn = INVALID_MFN;
+    v->vcpu_info_area.map =
+        ((v->vcpu_id < XEN_LEGACY_MAX_VCPUS)
+         ? (vcpu_info_t *)&shared_info(d, vcpu_info[v->vcpu_id])
+         : &dummy_vcpu_info);
 }
 
 static void vmtrace_free_buffer(struct vcpu *v)
@@ -993,7 +993,7 @@ int domain_kill(struct domain *d)
             return -ERESTART;
         for_each_vcpu ( d, v )
         {
-            unmap_vcpu_info(v);
+            unmap_guest_area(v, &v->vcpu_info_area);
             unmap_guest_area(v, &v->runstate_guest_area);
         }
         d->is_dying = DOMDYING_dead;
@@ -1448,7 +1448,7 @@ int domain_soft_reset(struct domain *d,
     for_each_vcpu ( d, v )
     {
         set_xen_guest_handle(runstate_guest(v), NULL);
-        unmap_vcpu_info(v);
+        unmap_guest_area(v, &v->vcpu_info_area);
         unmap_guest_area(v, &v->runstate_guest_area);
     }
 
@@ -1496,111 +1496,6 @@ int vcpu_reset(struct vcpu *v)
     return rc;
 }
 
-/*
- * Map a guest page in and point the vcpu_info pointer at it.  This
- * makes sure that the vcpu_info is always pointing at a valid piece
- * of memory, and it sets a pending event to make sure that a pending
- * event doesn't get missed.
- */
-int map_vcpu_info(struct vcpu *v, unsigned long gfn, unsigned int offset)
-{
-    struct domain *d = v->domain;
-    void *mapping;
-    vcpu_info_t *new_info;
-    struct page_info *page;
-    unsigned int align;
-
-    if ( offset > (PAGE_SIZE - sizeof(*new_info)) )
-        return -ENXIO;
-
-#ifdef CONFIG_COMPAT
-    BUILD_BUG_ON(sizeof(*new_info) != sizeof(new_info->compat));
-    if ( has_32bit_shinfo(d) )
-        align = alignof(new_info->compat);
-    else
-#endif
-        align = alignof(*new_info);
-    if ( offset & (align - 1) )
-        return -ENXIO;
-
-    if ( !mfn_eq(v->vcpu_info_mfn, INVALID_MFN) )
-        return -EINVAL;
-
-    /* Run this command on yourself or on other offline VCPUS. */
-    if ( (v != current) && !(v->pause_flags & VPF_down) )
-        return -EINVAL;
-
-    page = get_page_from_gfn(d, gfn, NULL, P2M_UNSHARE);
-    if ( !page )
-        return -EINVAL;
-
-    if ( !get_page_type(page, PGT_writable_page) )
-    {
-        put_page(page);
-        return -EINVAL;
-    }
-
-    mapping = __map_domain_page_global(page);
-    if ( mapping == NULL )
-    {
-        put_page_and_type(page);
-        return -ENOMEM;
-    }
-
-    new_info = (vcpu_info_t *)(mapping + offset);
-
-    if ( v->vcpu_info == &dummy_vcpu_info )
-    {
-        memset(new_info, 0, sizeof(*new_info));
-#ifdef XEN_HAVE_PV_UPCALL_MASK
-        __vcpu_info(v, new_info, evtchn_upcall_mask) = 1;
-#endif
-    }
-    else
-    {
-        memcpy(new_info, v->vcpu_info, sizeof(*new_info));
-    }
-
-    v->vcpu_info = new_info;
-    v->vcpu_info_mfn = page_to_mfn(page);
-
-    /* Set new vcpu_info pointer /before/ setting pending flags. */
-    smp_wmb();
-
-    /*
-     * Mark everything as being pending just to make sure nothing gets
-     * lost.  The domain will get a spurious event, but it can cope.
-     */
-#ifdef CONFIG_COMPAT
-    if ( !has_32bit_shinfo(d) )
-        write_atomic(&new_info->native.evtchn_pending_sel, ~0);
-    else
-#endif
-        write_atomic(&vcpu_info(v, evtchn_pending_sel), ~0);
-    vcpu_mark_events_pending(v);
-
-    return 0;
-}
-
-/*
- * Unmap the vcpu info page if the guest decided to place it somewhere
- * else. This is used from domain_kill() and domain_soft_reset().
- */
-void unmap_vcpu_info(struct vcpu *v)
-{
-    mfn_t mfn = v->vcpu_info_mfn;
-
-    if ( mfn_eq(mfn, INVALID_MFN) )
-        return;
-
-    unmap_domain_page_global((void *)
-                             ((unsigned long)v->vcpu_info & PAGE_MASK));
-
-    vcpu_info_reset(v); /* NB: Clobbers v->vcpu_info_mfn */
-
-    put_page_and_type(mfn_to_page(mfn));
-}
-
 int map_guest_area(struct vcpu *v, paddr_t gaddr, unsigned int size,
                    struct guest_area *area,
                    void (*populate)(void *dst, struct vcpu *v))
@@ -1662,14 +1557,44 @@ int map_guest_area(struct vcpu *v, paddr
 
     domain_lock(d);
 
-    if ( map && populate )
-        populate(map, v);
+    /* No re-registration of the vCPU info area. */
+    if ( area != &v->vcpu_info_area || !area->pg )
+    {
+        if ( map && populate )
+            populate(map, v);
 
-    SWAP(area->pg, pg);
-    SWAP(area->map, map);
+        SWAP(area->pg, pg);
+        SWAP(area->map, map);
+    }
+    else
+        rc = -EBUSY;
 
     domain_unlock(d);
 
+    /* Set pending flags /after/ new vcpu_info pointer was set. */
+    if ( area == &v->vcpu_info_area && !rc )
+    {
+        /*
+         * Mark everything as being pending just to make sure nothing gets
+         * lost.  The domain will get a spurious event, but it can cope.
+         */
+#ifdef CONFIG_COMPAT
+        if ( !has_32bit_shinfo(d) )
+        {
+            vcpu_info_t *info = area->map;
+
+            /* For VCPUOP_register_vcpu_info handling in common_vcpu_op(). */
+            BUILD_BUG_ON(sizeof(*info) != sizeof(info->compat));
+            write_atomic(&info->native.evtchn_pending_sel, ~0);
+        }
+        else
+#endif
+            write_atomic(&vcpu_info(v, evtchn_pending_sel), ~0);
+        vcpu_mark_events_pending(v);
+
+        force_update_vcpu_system_time(v);
+    }
+
     if ( v != current )
         vcpu_unpause(v);
 
@@ -1699,7 +1624,10 @@ void unmap_guest_area(struct vcpu *v, st
 
     domain_lock(d);
     map = area->map;
-    area->map = NULL;
+    if ( area == &v->vcpu_info_area )
+        vcpu_info_reset(v);
+    else
+        area->map = NULL;
     pg = area->pg;
     area->pg = NULL;
     domain_unlock(d);
@@ -1830,6 +1758,27 @@ bool update_runstate_area(struct vcpu *v
     return rc;
 }
 
+/*
+ * This makes sure that the vcpu_info is always pointing at a valid piece of
+ * memory, and it sets a pending event to make sure that a pending event
+ * doesn't get missed.
+ */
+static void cf_check
+vcpu_info_populate(void *map, struct vcpu *v)
+{
+    vcpu_info_t *info = map;
+
+    if ( v->vcpu_info_area.map == &dummy_vcpu_info )
+    {
+        memset(info, 0, sizeof(*info));
+#ifdef XEN_HAVE_PV_UPCALL_MASK
+        __vcpu_info(v, info, evtchn_upcall_mask) = 1;
+#endif
+    }
+    else
+        memcpy(info, v->vcpu_info_area.map, sizeof(*info));
+}
+
 static void cf_check
 runstate_area_populate(void *map, struct vcpu *v)
 {
@@ -1859,7 +1808,7 @@ long common_vcpu_op(int cmd, struct vcpu
     switch ( cmd )
     {
     case VCPUOP_initialise:
-        if ( v->vcpu_info == &dummy_vcpu_info )
+        if ( v->vcpu_info_area.map == &dummy_vcpu_info )
             return -EINVAL;
 
         rc = arch_initialise_vcpu(v, arg);
@@ -1990,16 +1939,29 @@ long common_vcpu_op(int cmd, struct vcpu
     case VCPUOP_register_vcpu_info:
     {
         struct vcpu_register_vcpu_info info;
+        paddr_t gaddr;
 
         rc = -EFAULT;
         if ( copy_from_guest(&info, arg, 1) )
             break;
 
-        domain_lock(d);
-        rc = map_vcpu_info(v, info.mfn, info.offset);
-        domain_unlock(d);
+        rc = -EINVAL;
+        gaddr = gfn_to_gaddr(_gfn(info.mfn)) + info.offset;
+        if ( !~gaddr ||
+             gfn_x(gaddr_to_gfn(gaddr)) != info.mfn )
+            break;
 
-        force_update_vcpu_system_time(v);
+        /* Preliminary check only; see map_guest_area(). */
+        rc = -EBUSY;
+        if ( v->vcpu_info_area.pg )
+            break;
+
+        /* See the BUILD_BUG_ON() in vcpu_info_populate(). */
+        rc = map_guest_area(v, gaddr, sizeof(vcpu_info_t),
+                            &v->vcpu_info_area, vcpu_info_populate);
+        if ( rc == -ERESTART )
+            rc = hypercall_create_continuation(__HYPERVISOR_vcpu_op, "iih",
+                                               cmd, vcpuid, arg);
 
         break;
     }
--- a/xen/include/xen/domain.h
+++ b/xen/include/xen/domain.h
@@ -80,9 +80,6 @@ void cf_check free_pirq_struct(void *);
 int  arch_vcpu_create(struct vcpu *v);
 void arch_vcpu_destroy(struct vcpu *v);
 
-int map_vcpu_info(struct vcpu *v, unsigned long gfn, unsigned int offset);
-void unmap_vcpu_info(struct vcpu *v);
-
 int map_guest_area(struct vcpu *v, paddr_t gaddr, unsigned int size,
                    struct guest_area *area,
                    void (*populate)(void *dst, struct vcpu *v));
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -176,7 +176,7 @@ struct vcpu
 
     int              processor;
 
-    vcpu_info_t     *vcpu_info;
+    struct guest_area vcpu_info_area;
 
     struct domain   *domain;
 
@@ -289,9 +289,6 @@ struct vcpu
 
     struct waitqueue_vcpu *waitqueue_vcpu;
 
-    /* Guest-specified relocation of vcpu_info. */
-    mfn_t            vcpu_info_mfn;
-
     struct evtchn_fifo_vcpu *evtchn_fifo;
 
     /* vPCI per-vCPU area, used to store data for long running operations. */
--- a/xen/include/xen/shared.h
+++ b/xen/include/xen/shared.h
@@ -44,6 +44,7 @@ typedef struct vcpu_info vcpu_info_t;
 extern vcpu_info_t dummy_vcpu_info;
 
 #define shared_info(d, field)      __shared_info(d, (d)->shared_info, field)
-#define vcpu_info(v, field)        __vcpu_info(v, (v)->vcpu_info, field)
+#define vcpu_info(v, field)        \
+        __vcpu_info(v, (vcpu_info_t *)(v)->vcpu_info_area.map, field)
 
 #endif /* __XEN_SHARED_H__ */



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 08:15:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 08:15:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609353.948382 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlmB2-0005Ld-O8; Thu, 28 Sep 2023 08:15:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609353.948382; Thu, 28 Sep 2023 08:15:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlmB2-0005LW-K5; Thu, 28 Sep 2023 08:15:16 +0000
Received: by outflank-mailman (input) for mailman id 609353;
 Thu, 28 Sep 2023 08:15:15 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qlmB1-0005LQ-0A
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 08:15:15 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlmB0-0007D4-Qc; Thu, 28 Sep 2023 08:15:14 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlmB0-0001rh-K0; Thu, 28 Sep 2023 08:15:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:Cc:
	References:To:Subject:MIME-Version:Date:Message-ID;
	bh=viE0Oye7B3X4rwylIwHWjoNBA9YJD8fcBZrsWeANWDQ=; b=Ksz1vsoi83hcVd9TDFhoIDR6zr
	4SoGqj4sDVMXw2vYwS7yaQQ7TPwV5Dw7TjMFQLrqKKZnIV21Gs970sjoQdKRJKxasGhaySzjTnbHC
	nTCXKSarazvHXT/Yub+cq9obOpsqG3AA2lwte8bl5jKdd+EWSnLAVIw0q5ENLj5fCjhY=;
Message-ID: <dba88398-3aef-4541-a8e8-8fd075c0d40e@xen.org>
Date: Thu, 28 Sep 2023 09:15:12 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: changing Dom0 data during smc call inside of xen during cache
 coloring
Content-Language: en-GB
To: Oleg Nikitenko <oleshiiwood@gmail.com>, xen-devel@lists.xenproject.org
References: <CA+SAi2tXMupikB2YgEXuq98KnOcqm6zWrk19rNvWTfzf2=ku-w@mail.gmail.com>
Cc: Bertrand Marquis <bertrand.marquis@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>
From: Julien Grall <julien@xen.org>
In-Reply-To: <CA+SAi2tXMupikB2YgEXuq98KnOcqm6zWrk19rNvWTfzf2=ku-w@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 27/09/2023 11:07, Oleg Nikitenko wrote:
> Hello,

Hi,

> It is necessary to change some structure contents from xen.
> I have access to the registers.
> One of them keeps the physical address of the structure.
> But this physical address is valid for Dom0 only.
> Dom0 kernel gets it by the call dma_alloc_coherent
> A lower mentioned scheme does not work.

It is not clear to me what you mean by does not work. Are you getting 
the wrong address?

> 
>              uint64_t paramaddr = (uint64_t)get_user_reg(regs, 2);
>              uint64_t phyaddr = mfn_to_maddr(gfn_to_mfn(current->domain,
>                  gaddr_to_gfn(paramaddr)));
>              phyaddr += (paramaddr & ~PAGE_MASK);

Can you provide a bit more context of what are you trying to do with 
phyaddr afterwards? Are you trying to map it in Xen?

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 08:25:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 08:25:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609357.948392 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlmKN-0007mU-Ip; Thu, 28 Sep 2023 08:24:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609357.948392; Thu, 28 Sep 2023 08:24:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlmKN-0007mN-Er; Thu, 28 Sep 2023 08:24:55 +0000
Received: by outflank-mailman (input) for mailman id 609357;
 Thu, 28 Sep 2023 08:24:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJIK=FM=citrix.com=prvs=6283bbd10=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlmKL-0007mH-9Y
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 08:24:53 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7ca72ee3-5dd8-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 10:24:50 +0200 (CEST)
Received: from mail-bn8nam12lp2169.outbound.protection.outlook.com (HELO
 NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.169])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 28 Sep 2023 04:24:45 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB5583.namprd03.prod.outlook.com (2603:10b6:a03:28e::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.25; Thu, 28 Sep
 2023 08:24:40 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Thu, 28 Sep 2023
 08:24:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7ca72ee3-5dd8-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695889490;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=8B6HPR9dEfjIj2hem+WNqZ6lxwQ258Q+4w0NYzUFdy0=;
  b=gkzs242Id9P86+OqTiEkvWRibHrTnB0s1sEypfdSag0TuO08LMOgK4m1
   +VOLinwR7y+ftlIaVaqCJo1PUDVZPpO3nwhZb76qjSFtr+EuTLYuV9ZpF
   xHiIma25Zw4EZZYhHZo2pbmYYV3xYbuEMiV8WpfoXcXVEK0JXqPtoEu4H
   U=;
X-CSE-ConnectionGUID: VqUCK9meQTuh8qrolze/ew==
X-CSE-MsgGUID: 7ux880z+TPmBtCnDVGa5iQ==
X-IronPort-RemoteIP: 104.47.55.169
X-IronPort-MID: 124462796
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:LMq0QqL3hTgbyWR1FE+RNJQlxSXFcZb7ZxGr2PjKsXjdYENS1mdSz
 zYaUWDXbPvYamryctBxb9+zp0gH6JLTy9NrSlNlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhA7wZuPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5JGFxl1
 q0dJQkxcxDTnvixxKC2DeRz05FLwMnDZOvzu1lG5BSAV7MMZ8CGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dqpTGNnWSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv22rORx3yqBur+EpXn6+460AWBhVArDTcKfl2Xn9aw10+HDoc3x
 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8Uq5QfIxqfK7gKxAmkfUiUHeNEgrNUxRzEhy
 hmOhdyBLT5ytLyYT1qN+7HSqim9UQAONnMLbyIASQoD4vHgrZs1gxaJScxseIaqivXlFDe2x
 CqFxAAijrAaluYX1KG2+1/WjjbqrZ/MJjPZ/S3SV2Ohqwl/NIisYtXy7UCBtKgRaoGEUlOGo
 X4I3dCE6/wDBo2MkyrLR/gRGLau5LCONzi0bUNTIqTNPg+FoxaLFb28KhklTKu1Gq7ooQPUX
 XI=
IronPort-HdrOrdr: A9a23:VLsD/atCY2kuQE/9f6k1/sF27skCBYMji2hC6mlwRA09TyVXrb
 HLoB0+726PtN93YgBcpTngAtj6fZq4z/JICOYqTNSftTfdySqVxe1ZnOnfKnjbalHDHgA079
 YrT0BRYOeAQWSSp/yKqDVRKr4bsZS6GErBv5aQ854Vd3AgV0gC1XYANu/4KDwReOAcP+txKH
 P03KMuzFDMFhV2UimiPAh1YwGAnayzqHuBW29JO/cJ0njPsdrC0s+cL/H35GZ6b9oC+8ZczY
 AF+zaJkZlKHpqApCM1WAfonuJrcLeN8Ko8OOW8zvINIjHbggy0ZIJnMofyyAwdkaWU8V4vpt
 LFuH4bTrZOwkKURHi8pS331xDnyytG0Q6W9XaoxUH7qcjOXjg9EMYpv/MrTjLpr3A4tNVLyq
 hMxG6ut51LZCmw7BjA2w==
X-Talos-CUID: 9a23:tCFvzmHIFZIyBAvcqmJZ7XM/OZEgf0Th0XeAOlW/DXRkD7CKHAo=
X-Talos-MUID: 9a23:o8h/oQVRRuYiOIrq/GDxlGEybNUr35yrIlwml7k4lMDZNBUlbg==
X-IronPort-AV: E=Sophos;i="6.03,183,1694750400"; 
   d="scan'208";a="124462796"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=P7+qcZwvdzio+NlNEOfaE+QpZNyT+eOeNP/powS3K9hX3dNLS2bvIZtBUpS3ApHe/F74fqEt4tNY+alWkEnQrUvVlZOFKSsbJE5AhDPUm0zeRubCkcqwOS3U7pSgBRTqSSz37Uoe6LivK1eTY2d2426zJQBsI8X8YJxM9WjwjSCju3oY0tNeS+tM4OWGfvbACiitARlojIuhiYOsBdZwLZvX0l2+yPTmb5RkfFb8XP6lcJw7AQGk31QrxRDaJmw0JxHDkNbTfvf1SbaPTs29yZ3bMIf81oYv/3Elex6/ED1sgWxi/q9V3Gnd9YSfDZLqaKarPlfHdeSdYmtkMg9LTQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Aid/D0BOm83IvQS0evn5GSVqtpz+aJj91bQcOu2b620=;
 b=BPVReFnrKhJz0Rwrfn/7VGOmT0lyxY9usKEL3oPTkiNTxXlYM9zzJB05+apnoKozi8fXg/B1bATH8SWHrl6ip1eO3uM3v1ejZb81Ub/ltrC/42nVcDrsw1jZGrx2VFzn5huZOvYp9coDHkYs/skbk25eUFawhTjgjBFpyqDzCQMTWABJ61xSgiV3tfFUh0ECIeq2XJOUgemLUDootDi/WbSfVcVgIQfrOsTKzMGcI1gmNFg5uRHtPJBeI9gvhjCr0nJJTHlDYQobUdpuJLzZ9JbDnphpBiIiTF35k7NJVtiolUCnpBrj2ILh2OLqjc1V9xMpAzhOrwrHxoDXW81tuQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Aid/D0BOm83IvQS0evn5GSVqtpz+aJj91bQcOu2b620=;
 b=K5cIKHCW5XSgw0ZMtTc9xs0LIzFJWk2LBOx1i+biwUb90/bor8POG7UQ5PQ+OEzZT0uIE675LkGYsG8SUI7H8ZTQSMawywEGAh0BkwG/Ey0wWw3ahoYP6axSbqoJDLBR8mdahgdBxn4vTpyp2H2/VjU8f31tfcH/WGgCg0f3OyU=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 28 Sep 2023 10:24:33 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Tamas K Lengyel <tamas@tklengyel.com>
Subject: Re: [PATCH v3 8/8] common: convert vCPU info area registration
Message-ID: <ZRU4QQcFL5Le5cFz@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <ada41793-629b-3864-c2fc-412bd8d0047d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <ada41793-629b-3864-c2fc-412bd8d0047d@suse.com>
X-ClientProxiedBy: LO4P123CA0081.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:190::14) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB5583:EE_
X-MS-Office365-Filtering-Correlation-Id: d2af8840-8e46-4ba6-9429-08dbbffc5bb3
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3ia7aYjapAnaNcNyvgJX18K1Qhgv4J9p+OoGsFX3UBqZtBViRjMjZZ1IMhd8bu+uk119DUaXUJgukuRriBgdpH4IaPigHUXoDuw6ZD79fAU6DgGMFSVgkSE4sckOQJYyC/X/Szzamw0DOicslhZMCk3gk0hgp7tOvjMr62l4XotRc6mbnd6RN5CP2CVNgt7LmbUQzRC4TrEVuKeSfipsZXl+T70fXKOusRM5LqeA3HVa6hYqRWw5aAqbdWkX5OS292hGivwnARI5pNES5o+qhmwloMRXm/AAiDeVphBTZhPEnP71KUflxFwYQ7oaBc/n5jFi9yv/BfoLfQuxnMUnxWakwdAA8yCdpecLpoIF0saQawaqE93FvJMGnwE/yuPbaMWkz7ayPAAJ+sPBbCQLLXap29gshehWgvxwScwyCHYQ4ISJzb7xUx7i/TLfTnIomL8S9no+Z9UY1WvZnQwWRZD9DlX5FuZCCvbYn7Eb1RUGtZI9OXrf7h15dc8rKlZONAYM1iszHCGYXQ9th4Kd3PXv5fQbp5uEfy7huBXCeeBo0pAp/KWpSiZQ3MMrFzzGzC+VTlKWCISDPII0sMfy593PnwQtnGINby5vlj/ArwL1zKGej7qOu/SrDCzaX1s6
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(366004)(376002)(396003)(346002)(136003)(39860400002)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(30864003)(2906002)(8936002)(8676002)(4326008)(66946007)(41300700001)(5660300002)(33716001)(478600001)(6486002)(66476007)(6666004)(66556008)(9686003)(6506007)(26005)(86362001)(54906003)(6916009)(316002)(6512007)(38100700002)(83380400001)(82960400001)(85182001)(309714004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WHgvZUtXREhEcDAwT1huZFdBdkRQemlYUUEzM1lZa1pyNlBDbExoV3R1ZmNC?=
 =?utf-8?B?T0RxR0psQlNiZElnTFlQSTJJYkRGVzJIWmNvOFlLREVqTk5KUFlCREFiUDUx?=
 =?utf-8?B?T3Y3enJMZ1NlYkdrUHZBTGlJVkpORXEzbm5VTEY0UkdsVllhVXByV1I0dlF2?=
 =?utf-8?B?RkY4N1hMWXdFV3BQYnVReEdqQU9pdFNsSHR5ZGU5dGp4L1M4eFFpV0FOTkdl?=
 =?utf-8?B?bllId1ZGdjYvdVBWUkYzcHMxYm5lMC9HSHh3Y29vcUtRMWhtaytJbDdyNXY4?=
 =?utf-8?B?Mks4T0xsUlBIQkFxTTdaMXAwLy9tTVcrekRIZ09qNUhEWGhBK2pmcG9xQW1D?=
 =?utf-8?B?bDFrWlFhbUZXUUxUcTRTYUs3eE9BOXRUZzR6SlJzSVFrOVpCeEZsNFZSWENw?=
 =?utf-8?B?UTRCbkhNelJOVllHRkN5Ylo4azlWRDBMWWV0a0dVMW1YeWJqZjVUVTBHY1N0?=
 =?utf-8?B?VXJCS1RsU3ZBRDB3b3FKV04xVnBNOVZDd1M3VEw0YVJCb1lBZkg4eXNSd0lI?=
 =?utf-8?B?SUN1UnhERGlERUwwU3hKaWVhNTloZjZWeTZwMHR6WWJ0RnVqR0NLNk5PcTdz?=
 =?utf-8?B?UXY5NzJQYmFQaGNEcm5xRHFHR3VSWGViQ3dJanpOSGMxVXVlMzVWcm50bnB0?=
 =?utf-8?B?Yk5PeXlKMVRheVlXMytBRjl5UVFCdG9HVzBvTkd1NVJKbWhReEhHbjQ4MlFh?=
 =?utf-8?B?MCtvVFFjYkVzUWFIbGh5SXJaSjAwc1lHQS85WC9CYzQ1ZXRtcldSS0xuUHpl?=
 =?utf-8?B?V2NTN0I2WXE2ZFBJcTlmUk01N1FBYTU4SnhBQlFLMUFWYXJMYjFaZXNSanhS?=
 =?utf-8?B?N0lWVVhaQUxDLzNjRlNOMUpOVnZRRDRBenJiZlpNTW05NTVOYmF5ak1EcVRu?=
 =?utf-8?B?TVZWZUREaTNySDMzV0xhVEhvbFhBV0JHSkQrcU4vemRBYUJtNzhtNmpzVVRR?=
 =?utf-8?B?L1VsZmZ5NVJPRWl4VFRpOUF5cFBFN0VRZnlKUUJoMms3YWtxYS9lY0NmZktj?=
 =?utf-8?B?SWZNcmtzWlcyc1R5RGR1Ny9xSjRCV1NBaDBJazJxcWdZRXlhRXMxWVhoRXEz?=
 =?utf-8?B?bEdYdkgwTlpPMzFDRXlodUhkNkpFcG9TbTBWWjkzMU0rQWd3WlNWVVdvSlJH?=
 =?utf-8?B?VXBORFgyNkJkby9hZldvdXdtOEcxbkZub1BmbkNjR2xhdlVsWHpKMVNhejh4?=
 =?utf-8?B?d0QzQnN1NjcvWGNqTTB5NEpMQ3NRZ1lmRURsK2dnNDFRT21iL2g5T3AvVTNv?=
 =?utf-8?B?Y2lHY1lVbk53cTEwY2poVy9DZ3B5ZUVYL3BJaVNjMG1JZW5EemNOVUlYOW1s?=
 =?utf-8?B?NkgrOVNKMHpsNmJBaUE5dkI1Z0dKWlBvRTJzMmZyM3JNZ2c1TWM1T1BQOVNT?=
 =?utf-8?B?Tko3V0dleUlXb2o5ZGN0YmxLZFlHWDl6Nlp0WnNHZEhGVGYycFByc2M3S0JW?=
 =?utf-8?B?K0tLNVZ1RHpqMlh4Nm9LRENQajdUbDN4UVhOUllVYnZJYy9oT28rNVEzQ3Rw?=
 =?utf-8?B?TFZnSSs1cXlJTE1jWkZpaXRUMG9aL1BncUdudmFOVUZuOWJSRUc5eFdKNU9Q?=
 =?utf-8?B?YlIyWlJWb2p5Ukl5elFtVmFPVzVSR2NJRldEYUZuZUdBdXN0N051c1NTeC80?=
 =?utf-8?B?K1N2SUZaMXVlODFJSGVDcitCUTFRRzBHYzVlckZnUDFraktTeGdJRDVtTzhK?=
 =?utf-8?B?cGlpSTh0dHhlV3RIVC8wYUxsQ3pCWnMrUnI3eHQzU2hzMlFMemFtYlRyV2pq?=
 =?utf-8?B?ek1qVE5LdTZ5cDY2Y1NNNXA0aU5yZk10YjNoNExmT0NaV2ZiWEMxRTFTTndB?=
 =?utf-8?B?bkJsNDFPbzRsblhrbFZreDA4YTVzcE1veWhoNTNoUHAxclRUakRrczVlUFJl?=
 =?utf-8?B?QTN0QzhYU0E1czhya2RGd0xkSk5uNnhHNjBXcjZQTUZYREoxaU5nNUZ0cU5Y?=
 =?utf-8?B?WXRiSGJxVzZVaGJYYmZjRlNCcWFoMXVFeU52cGVqQnFjOXVqYTR1a2luYzU0?=
 =?utf-8?B?R1NLUFlEMHUzZXhPV05wZTFVS1kyQldWbnZXMFducGg4LzNRSW04OGNheDkx?=
 =?utf-8?B?OHpaN2FHT3VyVFMzclhnaGthaDlKbkNFMDE2K1lSQ3VnUHkwM3RqdkxrQ093?=
 =?utf-8?B?Y2kwOXBaRnVXMHYyNFdZY3JmZXR6d0R0VVZtUDZzZWRzNVRreTZ2WCtlZmlS?=
 =?utf-8?B?WVE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	Ly0liCOOrP6miMNAJEOMeAltejSPcR61cUYGB2AGNhhyYkTfndwGb5hWsMNaaJOFvPNKwJRhw5iF7iONW1JqaMCC1i/hHZwvrlDHgMc05zRg4OY8acP3X19LYFZmUq2O4Cw18/B49uQ6JTiA9SAK5PRNPsxk7x/8aPXxbUVOk8SFRUEIzkceBRhPw1izv06quVsxX3EEodmq0KfvyI7d9zWwG8fSCvpTUn6P5XfNkloKou9zv6wVy7g69nMF5H1TBVp4ow4H48Pl66hi0wWB/dQGbglquGDW7ae2xw4DDBRwSsrINxrOeA0bzvjUOEm5NNEMOTCThOG2x6n9STjRTZltyULY5f2QsYlSRRZjlebgHpGiMV/+j8t+CQ+gF0kO4A1+zR7wZCKLrsc2zo715802H9dzh6M5CU5nJh7EaM35CGbq7PzFyw2Zn3lMcmqJF7iaRrHFTHdGBIvHwTOd0xux3k35ToDsSGOGbBDe1AdtlhP+05R4X2zsrcv5S5VRPWgi/JTC+KrXFzuWTh6M5D1QodS/nab+WjR6shfuIle1MO3EE3OCoKtm2xGP9UYiG4QuhgCY7zRPpm7AT5U2cCIZjxCtZzQ7Qxa+AleokDldXXvIInEFhzT8d8qUDKbOoPezOydmXTFeqxzXj1H27kIFLGhkwA9q1pbDuOgA+ciu/mwfEVr10tP6BBCMxeuTHug0rRB8wmwv4jAu91zLwtmACyvXELjv+6wFqaKCwzLgwT+er9aQGSE98iti9KWVmFfMBcnubEEuJdVBl2+eq4lJH9AHvhBH7oU23xDwi5OIRXloqyC1yQA3H4svSj9Spm+jR/Q78oFnfBj6PF/ASFmD56XZqcx30er0Jp5xXEzdb3991O1xSBGX6PA//aFqF9T00OJXg+hqxTbwUJsgqw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d2af8840-8e46-4ba6-9429-08dbbffc5bb3
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 08:24:40.1674
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 5LWV/s+0YWwf8/3ebEtewyXYcGgISRZiLNnQdqIOZTt+hhXk3Lmig+Dde/vSiE1gl9eAxPV7jYhFHBtbC+VtPg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5583

On Wed, May 03, 2023 at 05:58:30PM +0200, Jan Beulich wrote:
> Switch to using map_guest_area(). Noteworthy differences from
> map_vcpu_info():
> - remote vCPU-s are paused rather than checked for being down (which in
>   principle can change right after the check),
> - the domain lock is taken for a much smaller region,
> - the error code for an attempt to re-register the area is now -EBUSY,
> - we could in principle permit de-registration when no area was
>   previously registered (which would permit "probing", if necessary for
>   anything).
> 
> Note that this eliminates a bug in copy_vcpu_settings(): The function
> did allocate a new page regardless of the GFN already having a mapping,
> thus in particular breaking the case of two vCPU-s having their info
> areas on the same page.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Some minor comments below:

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

> ---
> RFC: I'm not really certain whether the preliminary check (ahead of
>      calling map_guest_area()) is worthwhile to have.
> ---
> v2: Re-base over changes earlier in the series. Properly enforce no re-
>     registration. Avoid several casts by introducing local variables.
> 
> --- a/xen/arch/x86/include/asm/shared.h
> +++ b/xen/arch/x86/include/asm/shared.h
> @@ -26,17 +26,20 @@ static inline void arch_set_##field(stru
>  #define GET_SET_VCPU(type, field)                               \
>  static inline type arch_get_##field(const struct vcpu *v)       \
>  {                                                               \
> +    const vcpu_info_t *vi = v->vcpu_info_area.map;              \
> +                                                                \
>      return !has_32bit_shinfo(v->domain) ?                       \
> -           v->vcpu_info->native.arch.field :                    \
> -           v->vcpu_info->compat.arch.field;                     \
> +           vi->native.arch.field : vi->compat.arch.field;       \
>  }                                                               \
>  static inline void arch_set_##field(struct vcpu *v,             \
>                                      type val)                   \
>  {                                                               \
> +    vcpu_info_t *vi = v->vcpu_info_area.map;                    \
> +                                                                \
>      if ( !has_32bit_shinfo(v->domain) )                         \
> -        v->vcpu_info->native.arch.field = val;                  \
> +        vi->native.arch.field = val;                            \
>      else                                                        \
> -        v->vcpu_info->compat.arch.field = val;                  \
> +        vi->compat.arch.field = val;                            \
>  }
>  
>  #else
> @@ -57,12 +60,16 @@ static inline void arch_set_##field(stru
>  #define GET_SET_VCPU(type, field)                           \
>  static inline type arch_get_##field(const struct vcpu *v)   \
>  {                                                           \
> -    return v->vcpu_info->arch.field;                        \
> +    const vcpu_info_t *vi = v->vcpu_info_area.map;          \
> +                                                            \
> +    return vi->arch.field;                                  \
>  }                                                           \
>  static inline void arch_set_##field(struct vcpu *v,         \
>                                      type val)               \
>  {                                                           \
> -    v->vcpu_info->arch.field = val;                         \
> +    vcpu_info_t *vi = v->vcpu_info_area.map;                \
> +                                                            \
> +    vi->arch.field = val;                                   \
>  }
>  
>  #endif
> --- a/xen/arch/x86/mm/mem_sharing.c
> +++ b/xen/arch/x86/mm/mem_sharing.c
> @@ -1749,53 +1749,24 @@ static int copy_vpmu(struct vcpu *d_vcpu
>  static int copy_vcpu_settings(struct domain *cd, const struct domain *d)
>  {
>      unsigned int i;
> -    struct p2m_domain *p2m = p2m_get_hostp2m(cd);
>      int ret = -EINVAL;
>  
>      for ( i = 0; i < cd->max_vcpus; i++ )
>      {
>          struct vcpu *d_vcpu = d->vcpu[i];
>          struct vcpu *cd_vcpu = cd->vcpu[i];
> -        mfn_t vcpu_info_mfn;
>  
>          if ( !d_vcpu || !cd_vcpu )
>              continue;
>  
> -        /* Copy & map in the vcpu_info page if the guest uses one */
> -        vcpu_info_mfn = d_vcpu->vcpu_info_mfn;
> -        if ( !mfn_eq(vcpu_info_mfn, INVALID_MFN) )
> -        {
> -            mfn_t new_vcpu_info_mfn = cd_vcpu->vcpu_info_mfn;
> -
> -            /* Allocate & map the page for it if it hasn't been already */
> -            if ( mfn_eq(new_vcpu_info_mfn, INVALID_MFN) )
> -            {
> -                gfn_t gfn = mfn_to_gfn(d, vcpu_info_mfn);
> -                unsigned long gfn_l = gfn_x(gfn);
> -                struct page_info *page;
> -
> -                if ( !(page = alloc_domheap_page(cd, 0)) )
> -                    return -ENOMEM;
> -
> -                new_vcpu_info_mfn = page_to_mfn(page);
> -                set_gpfn_from_mfn(mfn_x(new_vcpu_info_mfn), gfn_l);
> -
> -                ret = p2m->set_entry(p2m, gfn, new_vcpu_info_mfn,
> -                                     PAGE_ORDER_4K, p2m_ram_rw,
> -                                     p2m->default_access, -1);
> -                if ( ret )
> -                    return ret;
> -
> -                ret = map_vcpu_info(cd_vcpu, gfn_l,
> -                                    PAGE_OFFSET(d_vcpu->vcpu_info));
> -                if ( ret )
> -                    return ret;
> -            }
> -
> -            copy_domain_page(new_vcpu_info_mfn, vcpu_info_mfn);
> -        }
> -
> -        /* Same for the (physically registered) runstate and time info areas. */
> +        /*
> +         * Copy and map the vcpu_info page and the (physically registered)
> +         * runstate and time info areas.
> +         */
> +        ret = copy_guest_area(&cd_vcpu->vcpu_info_area,
> +                              &d_vcpu->vcpu_info_area, cd_vcpu, d);
> +        if ( ret )
> +            return ret;
>          ret = copy_guest_area(&cd_vcpu->runstate_guest_area,
>                                &d_vcpu->runstate_guest_area, cd_vcpu, d);
>          if ( ret )
> --- a/xen/arch/x86/pv/shim.c
> +++ b/xen/arch/x86/pv/shim.c
> @@ -383,7 +383,7 @@ int pv_shim_shutdown(uint8_t reason)
>      for_each_vcpu ( d, v )
>      {
>          /* Unmap guest vcpu_info page and runstate/time areas. */
> -        unmap_vcpu_info(v);
> +        unmap_guest_area(v, &v->vcpu_info_area);
>          unmap_guest_area(v, &v->runstate_guest_area);
>          unmap_guest_area(v, &v->arch.time_guest_area);
>  
> --- a/xen/arch/x86/time.c
> +++ b/xen/arch/x86/time.c
> @@ -1547,7 +1547,7 @@ static void __update_vcpu_system_time(st
>      struct vcpu_time_info *u = &vcpu_info(v, time), _u;
>      const struct domain *d = v->domain;
>  
> -    if ( v->vcpu_info == NULL )
> +    if ( !v->vcpu_info_area.map )
>          return;
>  
>      collect_time_info(v, &_u);
> --- a/xen/arch/x86/x86_64/asm-offsets.c
> +++ b/xen/arch/x86/x86_64/asm-offsets.c
> @@ -53,7 +53,7 @@ void __dummy__(void)
>  
>      OFFSET(VCPU_processor, struct vcpu, processor);
>      OFFSET(VCPU_domain, struct vcpu, domain);
> -    OFFSET(VCPU_vcpu_info, struct vcpu, vcpu_info);
> +    OFFSET(VCPU_vcpu_info, struct vcpu, vcpu_info_area.map);
>      OFFSET(VCPU_trap_bounce, struct vcpu, arch.pv.trap_bounce);
>      OFFSET(VCPU_thread_flags, struct vcpu, arch.flags);
>      OFFSET(VCPU_event_addr, struct vcpu, arch.pv.event_callback_eip);
> --- a/xen/arch/x86/x86_64/traps.c
> +++ b/xen/arch/x86/x86_64/traps.c
> @@ -96,7 +96,7 @@ static void _show_registers(
>      if ( context == CTXT_hypervisor )
>          printk(" %pS", _p(regs->rip));
>      printk("\nRFLAGS: %016lx   ", regs->rflags);
> -    if ( (context == CTXT_pv_guest) && v && v->vcpu_info )
> +    if ( (context == CTXT_pv_guest) && v && v->vcpu_info_area.map )
>          printk("EM: %d   ", !!vcpu_info(v, evtchn_upcall_mask));
>      printk("CONTEXT: %s", context_names[context]);
>      if ( v && !is_idle_vcpu(v) )
> --- a/xen/common/compat/domain.c
> +++ b/xen/common/compat/domain.c
> @@ -49,7 +49,7 @@ int compat_common_vcpu_op(int cmd, struc
>      {
>      case VCPUOP_initialise:
>      {
> -        if ( v->vcpu_info == &dummy_vcpu_info )
> +        if ( v->vcpu_info_area.map == &dummy_vcpu_info )
>              return -EINVAL;
>  
>  #ifdef CONFIG_HVM
> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -127,10 +127,10 @@ static void vcpu_info_reset(struct vcpu
>  {
>      struct domain *d = v->domain;

d could likely be made const?

>  
> -    v->vcpu_info = ((v->vcpu_id < XEN_LEGACY_MAX_VCPUS)
> -                    ? (vcpu_info_t *)&shared_info(d, vcpu_info[v->vcpu_id])
> -                    : &dummy_vcpu_info);
> -    v->vcpu_info_mfn = INVALID_MFN;
> +    v->vcpu_info_area.map =
> +        ((v->vcpu_id < XEN_LEGACY_MAX_VCPUS)
> +         ? (vcpu_info_t *)&shared_info(d, vcpu_info[v->vcpu_id])
> +         : &dummy_vcpu_info);
>  }
>  
>  static void vmtrace_free_buffer(struct vcpu *v)
> @@ -964,7 +964,7 @@ int domain_kill(struct domain *d)
>              return -ERESTART;
>          for_each_vcpu ( d, v )
>          {
> -            unmap_vcpu_info(v);
> +            unmap_guest_area(v, &v->vcpu_info_area);
>              unmap_guest_area(v, &v->runstate_guest_area);
>          }
>          d->is_dying = DOMDYING_dead;
> @@ -1419,7 +1419,7 @@ int domain_soft_reset(struct domain *d,
>      for_each_vcpu ( d, v )
>      {
>          set_xen_guest_handle(runstate_guest(v), NULL);
> -        unmap_vcpu_info(v);
> +        unmap_guest_area(v, &v->vcpu_info_area);
>          unmap_guest_area(v, &v->runstate_guest_area);
>      }
>  
> @@ -1467,111 +1467,6 @@ int vcpu_reset(struct vcpu *v)
>      return rc;
>  }
>  
> -/*
> - * Map a guest page in and point the vcpu_info pointer at it.  This
> - * makes sure that the vcpu_info is always pointing at a valid piece
> - * of memory, and it sets a pending event to make sure that a pending
> - * event doesn't get missed.
> - */
> -int map_vcpu_info(struct vcpu *v, unsigned long gfn, unsigned int offset)
> -{
> -    struct domain *d = v->domain;
> -    void *mapping;
> -    vcpu_info_t *new_info;
> -    struct page_info *page;
> -    unsigned int align;
> -
> -    if ( offset > (PAGE_SIZE - sizeof(*new_info)) )
> -        return -ENXIO;
> -
> -#ifdef CONFIG_COMPAT
> -    BUILD_BUG_ON(sizeof(*new_info) != sizeof(new_info->compat));
> -    if ( has_32bit_shinfo(d) )
> -        align = alignof(new_info->compat);
> -    else
> -#endif
> -        align = alignof(*new_info);
> -    if ( offset & (align - 1) )
> -        return -ENXIO;
> -
> -    if ( !mfn_eq(v->vcpu_info_mfn, INVALID_MFN) )
> -        return -EINVAL;
> -
> -    /* Run this command on yourself or on other offline VCPUS. */
> -    if ( (v != current) && !(v->pause_flags & VPF_down) )
> -        return -EINVAL;
> -
> -    page = get_page_from_gfn(d, gfn, NULL, P2M_UNSHARE);
> -    if ( !page )
> -        return -EINVAL;
> -
> -    if ( !get_page_type(page, PGT_writable_page) )
> -    {
> -        put_page(page);
> -        return -EINVAL;
> -    }
> -
> -    mapping = __map_domain_page_global(page);
> -    if ( mapping == NULL )
> -    {
> -        put_page_and_type(page);
> -        return -ENOMEM;
> -    }
> -
> -    new_info = (vcpu_info_t *)(mapping + offset);
> -
> -    if ( v->vcpu_info == &dummy_vcpu_info )
> -    {
> -        memset(new_info, 0, sizeof(*new_info));
> -#ifdef XEN_HAVE_PV_UPCALL_MASK
> -        __vcpu_info(v, new_info, evtchn_upcall_mask) = 1;
> -#endif
> -    }
> -    else
> -    {
> -        memcpy(new_info, v->vcpu_info, sizeof(*new_info));
> -    }
> -
> -    v->vcpu_info = new_info;
> -    v->vcpu_info_mfn = page_to_mfn(page);
> -
> -    /* Set new vcpu_info pointer /before/ setting pending flags. */
> -    smp_wmb();
> -
> -    /*
> -     * Mark everything as being pending just to make sure nothing gets
> -     * lost.  The domain will get a spurious event, but it can cope.
> -     */
> -#ifdef CONFIG_COMPAT
> -    if ( !has_32bit_shinfo(d) )
> -        write_atomic(&new_info->native.evtchn_pending_sel, ~0);
> -    else
> -#endif
> -        write_atomic(&vcpu_info(v, evtchn_pending_sel), ~0);
> -    vcpu_mark_events_pending(v);
> -
> -    return 0;
> -}
> -
> -/*
> - * Unmap the vcpu info page if the guest decided to place it somewhere
> - * else. This is used from domain_kill() and domain_soft_reset().
> - */
> -void unmap_vcpu_info(struct vcpu *v)
> -{
> -    mfn_t mfn = v->vcpu_info_mfn;
> -
> -    if ( mfn_eq(mfn, INVALID_MFN) )
> -        return;
> -
> -    unmap_domain_page_global((void *)
> -                             ((unsigned long)v->vcpu_info & PAGE_MASK));
> -
> -    vcpu_info_reset(v); /* NB: Clobbers v->vcpu_info_mfn */
> -
> -    put_page_and_type(mfn_to_page(mfn));
> -}
> -
>  int map_guest_area(struct vcpu *v, paddr_t gaddr, unsigned int size,
>                     struct guest_area *area,
>                     void (*populate)(void *dst, struct vcpu *v))
> @@ -1633,14 +1528,44 @@ int map_guest_area(struct vcpu *v, paddr
>  
>      domain_lock(d);
>  
> -    if ( map )
> -        populate(map, v);
> +    /* No re-registration of the vCPU info area. */
> +    if ( area != &v->vcpu_info_area || !area->pg )

It would be nice if this check could be done earlier, as to avoid
having to fetch and map the page just to discard it.  That would
however require taking the domain lock earlier.

> +    {
> +        if ( map )
> +            populate(map, v);
>  
> -    SWAP(area->pg, pg);
> -    SWAP(area->map, map);
> +        SWAP(area->pg, pg);
> +        SWAP(area->map, map);
> +    }
> +    else
> +        rc = -EBUSY;
>  
>      domain_unlock(d);
>  
> +    /* Set pending flags /after/ new vcpu_info pointer was set. */
> +    if ( area == &v->vcpu_info_area && !rc )
> +    {
> +        /*
> +         * Mark everything as being pending just to make sure nothing gets
> +         * lost.  The domain will get a spurious event, but it can cope.
> +         */
> +#ifdef CONFIG_COMPAT
> +        if ( !has_32bit_shinfo(d) )
> +        {
> +            vcpu_info_t *info = area->map;
> +
> +            /* For VCPUOP_register_vcpu_info handling in common_vcpu_op(). */
> +            BUILD_BUG_ON(sizeof(*info) != sizeof(info->compat));
> +            write_atomic(&info->native.evtchn_pending_sel, ~0);
> +        }
> +        else
> +#endif
> +            write_atomic(&vcpu_info(v, evtchn_pending_sel), ~0);

Can't the setting of evtchn_pending_sel be done in
vcpu_info_populate()?

> +        vcpu_mark_events_pending(v);
> +
> +        force_update_vcpu_system_time(v);
> +    }
> +
>      if ( v != current )
>          vcpu_unpause(v);
>  
> @@ -1670,7 +1595,10 @@ void unmap_guest_area(struct vcpu *v, st
>  
>      domain_lock(d);
>      map = area->map;
> -    area->map = NULL;
> +    if ( area == &v->vcpu_info_area )
> +        vcpu_info_reset(v);
> +    else
> +        area->map = NULL;
>      pg = area->pg;
>      area->pg = NULL;
>      domain_unlock(d);
> @@ -1801,6 +1729,27 @@ bool update_runstate_area(struct vcpu *v
>      return rc;
>  }
>  
> +/*
> + * This makes sure that the vcpu_info is always pointing at a valid piece of
> + * memory, and it sets a pending event to make sure that a pending event
> + * doesn't get missed.
> + */
> +static void cf_check
> +vcpu_info_populate(void *map, struct vcpu *v)
> +{
> +    vcpu_info_t *info = map;
> +
> +    if ( v->vcpu_info_area.map == &dummy_vcpu_info )
> +    {
> +        memset(info, 0, sizeof(*info));
> +#ifdef XEN_HAVE_PV_UPCALL_MASK
> +        __vcpu_info(v, info, evtchn_upcall_mask) = 1;
> +#endif

I'm not sure about the point of those guards, this will always be 1,
as we always build the hypervisor with the headers in xen/public?

Is it to make backports easier?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 08:28:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 08:28:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609363.948401 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlmNs-0008RC-56; Thu, 28 Sep 2023 08:28:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609363.948401; Thu, 28 Sep 2023 08:28:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlmNs-0008R5-2S; Thu, 28 Sep 2023 08:28:32 +0000
Received: by outflank-mailman (input) for mailman id 609363;
 Thu, 28 Sep 2023 08:28:31 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJIK=FM=citrix.com=prvs=6283bbd10=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlmNq-0008Qz-UB
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 08:28:31 +0000
Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com
 [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id feff9be1-5dd8-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 10:28:28 +0200 (CEST)
Received: from mail-bn8nam11lp2169.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.169])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 28 Sep 2023 04:28:18 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BLAPR03MB5635.namprd03.prod.outlook.com (2603:10b6:208:299::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 08:28:16 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Thu, 28 Sep 2023
 08:28:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: feff9be1-5dd8-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695889708;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=3xvMs48F04Ir8BQ+lgfUD7pIuTIwAz1z5AVnaBgPikQ=;
  b=gytmRiM2k23EGzo5jInaGIoRTfdDGt0bVR13B0Tw7y+oWGY28d88K0KH
   +BB1GFdGT+CS6CZVx2D7Vhvy5SGAH7N71f3YHOvwpPwgxF2DauSo6K5xT
   UCkzoPDTu2gz4KpJeWICuxrbVmb4EuG/5CuBjqyOEPk4Wd5Jtm21j/hkm
   k=;
X-CSE-ConnectionGUID: ZfBXJ+yNR+KWoe77r12Gqg==
X-CSE-MsgGUID: PrYZa4gBTa6gGK52J5ZW/Q==
X-IronPort-RemoteIP: 104.47.58.169
X-IronPort-MID: 123299732
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:9HYcwqgIRYunwGA0KZ6tddJnX161WREKZh0ujC45NGQN5FlHY01je
 htvW2mDb6qDZGD9fYp0O9nl/UsAsJSAzoNkTFY9r39jFSIb9cadCdqndUqhZCn6wu8v7q5Ex
 55HNoSfdpBcolv0/ErF3m3J9CEkvU2wbuOhTraCYmYoHVMMpB4J0XpLg/Q+jpNjne+3CgaMv
 cKai8DEMRqu1iUc3lg8sspvkzsx+qyp0N8klgZmP6sT7QWOzyB94K83fsldEVOpGuG4IcbiL
 wrz5OnR1n/U+R4rFuSknt7TGqHdauePVeQmoiM+t5mK2nCulARrukoIHKN0hXNsoyeIh7hMJ
 OBl7vRcf+uL0prkw4zxWzEAe8130DYvFLXveRBTuuTLp6HKnueFL1yDwyjaMKVBktubD12i+
 tQqJho9TFOSodj14428R7YznJ15A9DkadZ3VnFIlVk1DN4AaLWaGuDgw48d2z09wMdTAfzZe
 swVLyJ1awjNaAFOPVFRD48imOCvhT/0dDgwRFC9/PJrpTSMilEhluGzYbI5efTTLSlRtlyfq
 W/cuXzwHzkRNcCFyCrD+XWp7gPKtXqhA9hDReLjrJaGhnWr3F0hAUEZf2ey//aWqRPkeY9tF
 Astr39GQa8asRbDosPGdwakrWGNpAJaW9tUH+Aw8giLxoLd5grfDW8BJhZ/b9ghuN4zVCYd/
 FaDlNP0BhRiqLSQD3ma89+8vT60fCQYM2IGTSsFVhcepcnuppkpiRDCRcolF7S65uAZAhn1y
 jGO6SI417MaiJdS073hpA6WxTWxupLOUwg5oB3NWX6o5R94Y4jjYJG07V/c7rBLK4PxokS9g
 UXoUvO2tIgmZaxhXgTUKAnRNNlFP8q4DQA=
IronPort-HdrOrdr: A9a23:C1mHoKEcpMqGZml2pLqFiJLXdLJyesId70hD6qkvc3Fom52j/f
 xGws5x6faVslkssb8b6LW90Y27MAvhHPlOkPIs1NaZLXDbUQ6TQL2KgrGD/9SNIVycygcZ79
 YbT0EcMqyOMbEZt7ec3ODQKb9Jrri6GeKT9IHjJh9WPH1XgspbnmNE42igYy9LrF4sP+tFKH
 PQ3LswmxOQPVAsKuirDHgMWObO4/XNiZLdeBYDQzI39QWUijusybjiVzyVxA0XXT9jyaortT
 GtqX2y2oyT99WAjjPM3W7a6Jpb3PPn19t4HcSJzuQFNzn2jQ6sRYJ5H5mPpio8ru2D4Esj1P
 PMvxAjFcJu7G65RBD/nTLdny3blBo+4X7rzlGVxVPlvMzCXTo/T+5Mn5hQfBf141cp+IgU6t
 MC40up875sST/QliX04NbFEzlsi0qPuHIn1coelWZWX4cyYKJY6aYf4ERWOpEdGz+S0vFvLM
 BeSOXnoNpGe1KTaH7U+kFp3dyXR3w2WiyLR0AT0/blpgR+rTRc9Q811cYflnAP+NYWUJ9f/d
 nJNaxuifVnUtIWRbgVPpZOfeKHTkj2BT7cOmObJlrqUIsdPWjWlpLx6LIpoMm3ZZ0zyocokp
 ipaiIWiYcLQTOvNSSy5uwJzviUK1/NHwgFi/suq6SRg4eMBYYCaka4ORUTe8jJmYRsPiSUYY
 f2BHtsOY6SEYLfI/c24+TAYegiFZA/arxghj9pYSP4nuv7bqvXi8f8TNH/YJLQLBdMYBKNPp
 JEZkm/GPl9
X-Talos-CUID: 9a23:uOf4SG/we29rcfIyo2iVv3waMPAHMWz79jTzHEi1VjlzEee6UFDFrQ==
X-Talos-MUID: 9a23:SK6/HwnV/Ba+llglEgUVdnpaLvZa6vihInwEz5opmJTeF3FCBHCk2WE=
X-IronPort-AV: E=Sophos;i="6.03,183,1694750400"; 
   d="scan'208";a="123299732"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=fFgZbNV1v16cMKzzMcoT90EYpb2Hg8NoL1jm2qzqsR9QiHJXoVOZtSIPiqkuRwzM9WXfSTcDrq0bGB9/ftTg+F13YIu7C1r0v09RpsKGdCEqhwK2m5Yn1c1EU7Uu56WLlsTkdefWBpEUwSQkS7qV2SlZUSwj0p1vzbAggQJhWRdhLMAvdclTZFQGFdsL1s5KU5UtvqoNZSepX7veCQ3IFnqzvPombxz+7vMZA9gv2O8yT1gAyn0sjUsV6UGiQeaAW4GZQfcjv3W9OI7F6RSQWSLwGzytirrA9mXleHYbp9YRUFsBJWlWlNm/vORtgnxKlcNDF7lrrvo4+WpbIaXKFQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=phUvxmXs4K3ahXvVb0MlG58+gQmZ+yZ/sIHjUV4Rhro=;
 b=kBXvyVN37zQO3+pmTpmUhOY8cY+NgCMA+MFrFmtFPWK3UFt6c+W3fLv4Ks7vyWf99Uwb3kBybeqGh28iNpxtnJmEqgRU1omRf/ofiHd8a9/hV8WE5Pk9EIFxn0aDzye6L6XjNLKdcL1UOpJh6u/79i4neye4xoFThkTI+lBlHsB6U2vhGjlGnm6caXfphdbBxzrZN+o0Pi6Gou9gif29PAt++F7m9eTYyVNpmVkDJExZCcLkeLKsftDRDNHZbLrYRQuexZtlQ/e+XU0FQrEwj0WXpVmMupQ2vaBUbsS5asHlOuHasnll0jjHSOLkp3v5w3+Z2pWs4Z4iN6dTvwQ3jQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=phUvxmXs4K3ahXvVb0MlG58+gQmZ+yZ/sIHjUV4Rhro=;
 b=d1CiIT7BPk7NhW1T0d2lcbQ3pW17WaFAHyUsqi7dRFf1INkfyZLNxryGz5dO/L8tQoJ/b4X7ulcyYWSW57ImSiKvmsAxwRzQoy0c43rhLpzCuU6GeFQg0i9MU35CtcajrJvOfeBMF2XrWz8c66FhvWbKnZodAgmnUH3IXVoYNkA=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 28 Sep 2023 10:28:11 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Stewart Hildebrand <stewart.hildebrand@amd.com>
Cc: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v9 15/16] xen/arm: vpci: check guest range
Message-ID: <ZRU5G4Ae8B-A2iWd@MacBookPdeRoger>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-16-volodymyr_babchuk@epam.com>
 <ZQ1T8vImUxAaeLdj@MacBookPdeRoger>
 <0a1bc845-28b7-4af8-d6d9-cd5fc7bb4d74@amd.com>
 <ZRKRNcypuvP26luu@MacBookPdeRoger>
 <8a300dad-29d5-2017-70ad-09abc2c62368@amd.com>
 <ZRL9QalvI4VrDQhF@MacBookPdeRoger>
 <0d4b7115-8cc6-3b11-9a46-0f222bcb864a@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <0d4b7115-8cc6-3b11-9a46-0f222bcb864a@amd.com>
X-ClientProxiedBy: LO2P265CA0137.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:9f::29) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BLAPR03MB5635:EE_
X-MS-Office365-Filtering-Correlation-Id: 49ca3654-ae4c-42df-ea4a-08dbbffcdcea
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	sFtCLlf0WUyiPcfmOK+SlmfMX0bXohisI0GupIiQ0HxCbNhX3sw02kk7NQK/z5BbtpZyKwqPh7E9wEq4e2sauaMf1DQ9YJYOsIrAk9Er/rT5V6uXCSdhO3afq9pJ0HcX2UM5qW37A5mUq4cmV5JC/y32cYLhYUIxQuhwEW17v+ScEpzkFD+MML7ODFRNmLoCMKdj8k6z3q9A8Ii0pwbuWSrrR0qmyBPultsfq8SHc2euEUeInloTXeaZOYDPaS8iLdqwFe9HMJBjMZ/FQvy/EN7yGSfP7SfJPn4BEnhy3DVricDY0oZJLwXyLFSAJUNNYyaIXa/uxrU9wB4lVHb2XLPHQcE1uy7CUFVZgU//hmeUAi2uK8/D0OuvD67kkdrhCWKvnGcwaUBVVyRETBW/r4mYSwN9pp2TUBmX7lnPvT8yHAYfUNIjh9Q694b9SFUgGm8m1PiqFJQPz4D9nCdef3x4UqDZVw0RwqZDl1xOfwqs+AmgESOM/6fvdnh6aYt1ckKr3lhCQffuIGF10GNvG01T9vNfnHe4QEBtOzmhi7kxlJLXHO8DeHqxG6tMVB+S
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(136003)(366004)(396003)(346002)(376002)(39860400002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(6506007)(26005)(66476007)(54906003)(66556008)(6666004)(86362001)(9686003)(53546011)(6512007)(6486002)(478600001)(33716001)(2906002)(38100700002)(83380400001)(6916009)(316002)(8936002)(85182001)(82960400001)(5660300002)(4326008)(66946007)(8676002)(41300700001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SmRiRUdGQnUxYWxBN0tPODNUdndXMEphaGtFOHh6TkJRNXBLZmszMDliZ0Jo?=
 =?utf-8?B?bUJpbzU5UzNDOTU3OUxpRWFBTlNGN0NOSmE2QmdvcUV1d0h3UFVEUkNOaExv?=
 =?utf-8?B?enJudkYySmQyOVovWTdDeExsVEp0Q240ZmJ5a1dOMDk1c2VtNEhGL0dOTmJs?=
 =?utf-8?B?bmJVa2hnQXdDNTJ4aVB4K3FlaE5wZ1JIZjJWRnpoS3BmWjd5M1ZaejRSNUtt?=
 =?utf-8?B?SkRMS1dPNDdxQUNXTXRYUGpnODF1N3J5OStIcWM3NHRqMDdRU3FtaW12VEk5?=
 =?utf-8?B?RXBDVm00L1FTdmFuZUREUitRVlJNc1d6OENLOVZWZXFNNWl0blo5UmJtVnVB?=
 =?utf-8?B?V012VjNYbjF0SU9hSXQ0SzYzWHVGTkVDdm40S2RiU0FzNWVQS3E4ZmVhaWQ2?=
 =?utf-8?B?UGxrQloxa05jT01XRjZGcE1ra0JMbFVCVkRrODlaRFBEVnZZL3RCNE9xb1lD?=
 =?utf-8?B?WEVVbERlWnp5OC9NZWVGK3RzNGIyWXBxaEpaVURXOXZKM0ppTXljZ3NOY0lS?=
 =?utf-8?B?akw5NHlkYU5VcDNhV2RYRURzSm94d2NrWUZhM3BJN2FoUUF4RFM3Y1RHbExH?=
 =?utf-8?B?WGZ2c0cyOG5IVHVIN1BFQW83aWtERWppdnJ1Mis4bHVaQnQ3NkpTMDlOdTBl?=
 =?utf-8?B?b3lHeHlnVlNUQkNZdysyUEJXOTl1YUV2K1IxTWlwVmpKSWpqTkE3a2hCZlhR?=
 =?utf-8?B?ZitFU2ZmaWFoOUE4c0g0ZkN4RTF2eGg4U3B0TSswWjNuV0VCdHJ6c0RCNlFX?=
 =?utf-8?B?RUkvT0VmSUE1UmxCL2ExUkpPQllUVlArdGUxNk1SNERaaUhsTkFxd3cycWhl?=
 =?utf-8?B?bXhCVFZyaTFvMXRNWDFXdE50U1p6QmJuakhXY0tlRExJNi8xclNxY0JRREV3?=
 =?utf-8?B?MjVLeHFidlVlQUlYZjJGNElPSkt5RldhM0dyenZFU2ZWQ3htTG02akJzNmh6?=
 =?utf-8?B?b2lrYU5TNlk0TzgvT3VVdnJYWk9LTTJjYjZhMVhaczV5QTRWNnptSS85TER3?=
 =?utf-8?B?a21zUExlNC9tRWQzM0ViL3hJSVpWc2JLVmpHcTlUbzh0Rk9OTUtVeWhqd0ty?=
 =?utf-8?B?THhGRkJPU0pRWkp6VS9qY09tbTlMbTlMdWJFV3dxYi9nQkJjd05jMi81dWpF?=
 =?utf-8?B?d2NuT0hnY0xYZEttWHlGZm5qejhqLzNyTjZzbmVaVGE0WmZhRWtvVlZvY1BF?=
 =?utf-8?B?Y2Zlc2ljL2lYUzJoR1EvU2ZyK1piQk9mY3F4bnRzVENKU2FTanNzbGZTdWtM?=
 =?utf-8?B?R28xQUpUdkdWL3VhZ0toVlFRdkVDd1JIYm1UWEVMOXlIYkpPMkZwZUhIVElR?=
 =?utf-8?B?Rk52b2NqaW5WMWVTUVFiNWF3NHZqVEh2UjdrcUMvMTk3TlhoQWcxalpMZW16?=
 =?utf-8?B?Uy9kTUM1eXNtMzNYVHIxazNyS1l3eVp2NnFMOFJZVkJHVGtjbmk2Tk5OVnNs?=
 =?utf-8?B?K1ovd3hFOXhHUFNVemp0M0IwUjBUNit2b0IvQmpUbTN5Z25Oa0p6OW43K0RW?=
 =?utf-8?B?a2dQU2hkdG95TXNjRE4rNGtLSFFQYVFhMVQrbUhVaWViUC91T3RzK0xlR3Rk?=
 =?utf-8?B?UUpNTnBXWmJZVEtzVDdQcDJQakM3Rk5XQVB2L2pBcVJPcncwR2ZVaC9rVzdH?=
 =?utf-8?B?QXJGOGxGRWw2N1lPbkppTnhaaTg0Z20yekVMbGRXcjRIYXVpU3RSb3NhdHJR?=
 =?utf-8?B?WHhCSktUV0Zjb0paMnVQSnJxMFFpNWVsRWVGQnVHVVVjM2IrSUpvZGJpYkkr?=
 =?utf-8?B?WjBJVk1md1JwYVV2Y2dFd2JYdlN2QjVMbzMwZ2tXQlcrU0dJZlg2ZXdqT1Jp?=
 =?utf-8?B?enlXeEhpZUhsOUcvR3ZVVGFPaWt6ejdUMVUwOXlLREYxRFVNd3JxdlRZM0di?=
 =?utf-8?B?VXJoZDV2c0xCU0JveTB5R2NNYi9PcXA5cjNRWDlWR1ZpTzkzS0NOWWVtMy9T?=
 =?utf-8?B?dDJqbmdnalI3dFNsNDN3MDNXb1JVeWRITUFwbXF1WVhWankyOXpPVFpCb0ZS?=
 =?utf-8?B?UGlxcmFDelRPSzJTTVJvTWJ4MFpKamljNDNSa0M4RllhSE1RRVY0ZUFCSXdE?=
 =?utf-8?B?ZGJiaDVGaWRPSXZRS0lvYTQyZm9VT0wyUXFkc1cwQ28zMyt0UzJDbGJ2Q1Rz?=
 =?utf-8?B?djgvWEdTbTNqVXNlQXBFS1RnZUQwRmZtc0hQRFc0UFJQcytjVEMwa1hheGs5?=
 =?utf-8?B?VVE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	T/nGE2xR15nxDRJ5yQ/FxIHDLFqwZrbhNFJQXPnw7NmgK15bqcSx9jZ4HzbA83uMGEn+HWd14WRtNeI4RG+7Z47USemp3+CK3yqAEWiPbnFzqLDk7LsDqwtbAf3cBlFs9ADC2ol/VNGA7qEMYLSPovzroin8jC4DIJU2Wu0ku7/SOH8KhuUPAhXbLOBbefCBEfVS/WkhkyGscs27Xzt8L2F1pvFJjJCKx+RHoqbz3KgjlHtpSSzBSmi99TB1rQol2hA+0kLS49zf9PqXqP/Z6viQHBzcVR/aC1XB379CzTbd1OTF0i63e6FTaoPXhulyUmdsyXhKtTNIv8uF2FLrWbpeW/R/7j6WE7dRrPEzOy1YAUfJ/10tuZLXsSvybyinm6il+l5ODujWaM7r3VZqutIxPTvfrahiXcivsRgoE9VczECcbBUOGSE2U0YYtIOoVzYu0kcNLgC5c+wR+41WtDxElM/bLng5b4w+LjTZpY+fIiqqmWp2XLw/xX2haFbSHjmUXc4n/z6Rql4m05NiDrAbQjmmkyqEa7Uwvi1ahdG0mw6rbgdnE8MmDLazi5Hi6A+Lz7FdWwiUdDnjRtPSMdAAlnzqrzA9JUgX5NzPeDQej+IHOTUt+w9zPYgvUH9HEWRjv8pdC2w23rYxcZgixulVvfxq67uDCbVKcPOJXGV/RLSllO+xPA40/2i/QXuZPD+CSIXnk/7g6bmv8VvTpdpzGLUge4ZrUlLufYGQyv5WfJcLcP9QELaCPwb1o1+GTerv24URAn6QU21x4bq3+6lwL6+agKrxNCuXEqUUUc7CYxpru0TPu62uT7c56Ho3
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 49ca3654-ae4c-42df-ea4a-08dbbffcdcea
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 08:28:16.4995
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9FuOCQoF4zv8uSgEvs9H2TBv9HTxZO3viH71CZ1On0FSFgHbkVQThesWydURCpFGyorfUFFn8NCIxHtqZSgQ9Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR03MB5635

On Wed, Sep 27, 2023 at 02:03:30PM -0400, Stewart Hildebrand wrote:
> On 9/26/23 11:48, Roger Pau Monné wrote:
> > On Tue, Sep 26, 2023 at 11:27:48AM -0400, Stewart Hildebrand wrote:
> >> On 9/26/23 04:07, Roger Pau Monné wrote:
> >>> On Mon, Sep 25, 2023 at 05:49:00PM -0400, Stewart Hildebrand wrote:
> >>>> On 9/22/23 04:44, Roger Pau Monné wrote:
> >>>>> On Tue, Aug 29, 2023 at 11:19:47PM +0000, Volodymyr Babchuk wrote:
> >>>>>> From: Stewart Hildebrand <stewart.hildebrand@amd.com>
> >>>>>>
> >>>>>> Skip mapping the BAR if it is not in a valid range.
> >>>>>>
> >>>>>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
> >>>>>> ---
> >>>>>>  xen/drivers/vpci/header.c | 9 +++++++++
> >>>>>>  1 file changed, 9 insertions(+)
> >>>>>>
> >>>>>> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
> >>>>>> index 1d243eeaf9..dbabdcbed2 100644
> >>>>>> --- a/xen/drivers/vpci/header.c
> >>>>>> +++ b/xen/drivers/vpci/header.c
> >>>>>> @@ -345,6 +345,15 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
> >>>>>>               bar->enabled == !!(cmd & PCI_COMMAND_MEMORY) )
> >>>>>>              continue;
> >>>>>>
> >>>>>> +#ifdef CONFIG_ARM
> >>>>>> +        if ( !is_hardware_domain(pdev->domain) )
> >>>>>> +        {
> >>>>>> +            if ( (start_guest < PFN_DOWN(GUEST_VPCI_MEM_ADDR)) ||
> >>>>>> +                 (end_guest >= PFN_DOWN(GUEST_VPCI_MEM_ADDR + GUEST_VPCI_MEM_SIZE)) )
> >>>>>> +                continue;
> >>>>>> +        }
> >>>>>> +#endif
> >>>>>
> >>>>> Hm, I think this should be in a hook similar to pci_check_bar() that
> >>>>> can be implemented per-arch.
> >>>>>
> >>>>> IIRC at least on x86 we allow the guest to place the BARs whenever it
> >>>>> wants, would such placement cause issues to the hypervisor on Arm?
> >>>>
> >>>> Hm. I wrote this patch in a hurry to make v9 of this series work on ARM. In my haste I also forgot about the prefetchable range starting at GUEST_VPCI_PREFETCH_MEM_ADDR, but that won't matter as we can probably throw this patch out.
> >>>>
> >>>> Now that I've had some more time to investigate, I believe the check in this patch is more or less redundant to the existing check in map_range() added in baa6ea700386 ("vpci: add permission checks to map_range()").
> >>>>
> >>>> The issue is that during initialization bar->guest_addr is zeroed, and this initial value of bar->guest_addr will fail the permissions check in map_range() and crash the domain. When the guest writes a new valid BAR, the old invalid address remains in the rangeset to be mapped. If we simply remove the old invalid BAR from the rangeset, that seems to fix the issue. So something like this:
> >>>
> >>> It does seem to me we are missing a proper cleanup of the rangeset
> >>> contents in some paths then.  In the above paragraph you mention "the
> >>> old invalid address remains in the rangeset to be mapped", how does it
> >>> get in there in the first place, and why is the rangeset not emptied
> >>> if the mapping failed?
> >>
> >> Back in ("vpci/header: handle p2m range sets per BAR") I added a v->domain == pdev->domain check near the top of vpci_process_pending() as you appropriately suggested.
> >>
> >> +    if ( v->domain != pdev->domain )
> >> +    {
> >> +        read_unlock(&v->domain->pci_lock);
> >> +        return false;
> >> +    }
> >>
> >> I have also reverted this patch ("xen/arm: vpci: check guest range").
> >>
> >> The sequence of events leading to the old value remaining in the rangeset are:
> >>
> >> # xl pci-assignable-add 01:00.0
> >> drivers/vpci/vpci.c:vpci_deassign_device()
> >>     deassign 0000:01:00.0 from d0
> >> # grep pci domu.cfg
> >> pci = [ "01:00.0" ]
> >> # xl create domu.cfg
> >> drivers/vpci/vpci.c:vpci_deassign_device()
> >>     deassign 0000:01:00.0 from d[IO]
> >> drivers/vpci/vpci.c:vpci_assign_device()
> >>     assign 0000:01:00.0 to d1
> >>     bar->guest_addr is initialized to zero because of the line: pdev->vpci = xzalloc(struct vpci);
> >> drivers/vpci/header.c:init_bars()
> >> drivers/vpci/header.c:modify_bars()
> > 
> > I think I've commented this on another patch, but why is the device
> > added with memory decoding enabled?  I would expect the FLR performed
> > before assigning would leave the device with memory decoding disabled?
> 
> It seems the device is indeed being assigned to the domU with memory decoding enabled, but I'm not entirely sure why. The device I'm testing with doesn't support FLR, but it does support pm bus reset:
> # cat /sys/bus/pci/devices/0000\:01\:00.0/reset_method
> pm bus
> 
> As I understand it, libxl__device_pci_reset() should still be able to issue a reset in this case.

Maybe pciback is somehow restoring part of the previous state?  I
have no insight in what state we expect the device to be handled by
pciback, but this needs investigation in order to know what to expect.

Can you paste the full contents of the command register for this
device?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 08:30:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 08:30:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609368.948412 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlmPw-0001PA-Gk; Thu, 28 Sep 2023 08:30:40 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609368.948412; Thu, 28 Sep 2023 08:30:40 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlmPw-0001P1-Dz; Thu, 28 Sep 2023 08:30:40 +0000
Received: by outflank-mailman (input) for mailman id 609368;
 Thu, 28 Sep 2023 08:30:39 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qlmPv-0001Ov-A0
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 08:30:39 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlmPu-0007Uf-7j; Thu, 28 Sep 2023 08:30:38 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlmPu-0002S1-2O; Thu, 28 Sep 2023 08:30:38 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:To:Subject:MIME-Version:Date:Message-ID;
	bh=oyaGeOMJ9cRvPlQOEWWEOBBZ5rEzbY7JIVr6SlN+veI=; b=ulG0Z34gkmag8O12plsl2Qs9Qr
	YwDiw4MxplNdSQw2PiNqldLFlsdtMvOid8+5UBkCmOYCRTY9wWjVFmIE35T5wDN6jDb/uLO+mqO7P
	IH+hsiJM4SUCVV3i8djy/dk1rbuM+WTw3LEuIT/IrNOW7K+k5kosXM+qnTJ7DllN1HyA=;
Message-ID: <7aeea21c-a2e5-4619-b177-e433e50bd4f4@xen.org>
Date: Thu, 28 Sep 2023 09:30:36 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Xen(arm64) hang on suspend/resume
Content-Language: en-GB
To: Jonas Blixt <jonas.blixt@actia.se>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Stefano Stabellini <sstabellini@kernel.org>,
 George Dunlap <george.dunlap@citrix.com>
References: <3c79ea2fec984e21b07d9365c08a5862@actia.se>
From: Julien Grall <julien@xen.org>
In-Reply-To: <3c79ea2fec984e21b07d9365c08a5862@actia.se>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



On 25/09/2023 12:15, Jonas Blixt wrote:
> Hello,

Hi,

> 
> I've encountered a strange behavior with Xen on arm64 with regards to suspend/resume.
> 
> My setup:
> Version: Xen 4.13.1

This has been relaesed in 2019 and not even the latest point release for 
4.13 (it is 4.13.5). For new development, I would strongly recommend to 
use the latest stable (4.17) if not staging.

But you should at least use the lastest point release (4.13.5). Note 
that this tree is not anymore supported at all by the community. So it 
may contain (security) bugs.

> Target: NXP imx8x SoC
> 
> We also use a set of patches from Aggios (https://xen-devel.narkive.com/yGps0HKG/rfc-v2-xen-arm-suspend-to-ram-support-in-xen-for-arm)

There was a new version of the series sent in 2022 [1]. This is based on 
a more recent Xen (4.16). I would suggest to give a try and check if it 
helps.

Note that this series is still in development and has not yet been 
accepted by the community. So if there are any bugs, then I would 
recommend to contact the original author.


> Occasionally xen gets stuck on resume. We know that the lower levels wake up and xen starts to resume because xen's debug console is available. When we're in this state dom0 does not resume and both pCPU's are in idle loops. If we at this point issue debug console commands (like 'h' for the help menu) that schedule tasklets dom0 wakes up and continues. Debug function that run in the irq-handler does not have the same effect.

It sounds like the dom0 vCPUs were not unblocked. That said, it is 
unclear why 'h' would help. Would you be able to print the field 
'pause_flags' for each vCPU?

You could use the key 'q' to dump all the domain information. Hopefully, 
this doesn't have a side-effect. If it has, then I would suggest to add 
some printk at boot.

Cheers,

[1] https://lore.kernel.org/cover.1665128335.git.mykyta_poturai@epam.com

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 08:32:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 08:32:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609374.948422 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlmRw-0002Ad-SC; Thu, 28 Sep 2023 08:32:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609374.948422; Thu, 28 Sep 2023 08:32:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlmRw-0002AW-PK; Thu, 28 Sep 2023 08:32:44 +0000
Received: by outflank-mailman (input) for mailman id 609374;
 Thu, 28 Sep 2023 08:32:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJIK=FM=citrix.com=prvs=6283bbd10=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlmRv-0002AQ-JI
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 08:32:43 +0000
Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com
 [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 960b17d4-5dd9-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 10:32:41 +0200 (CEST)
Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO
 NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 28 Sep 2023 04:32:14 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BLAPR03MB5635.namprd03.prod.outlook.com (2603:10b6:208:299::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 08:32:09 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Thu, 28 Sep 2023
 08:32:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 960b17d4-5dd9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695889961;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=nolEQaUhwB8RtEujk9fNiHtaVsqqipH3a7RNEeyC6kw=;
  b=dFGJJA/XzjjUpbh1b/XclwPDDIpLariMp3IfShf0vq7c3mapO8BCs49O
   NfKtjLwT4c2FSYLZxRSuC5wyp8aYnnyq9g7YKIbyAiaSZohxFc7vxTs8L
   l0719mHdUQJExsrR07auz+2vhcvp0+Fg62i1K7Hgd/rrMA54LV+a9NLC0
   k=;
X-CSE-ConnectionGUID: EEsqage5QGqZ3cE1xSZRVg==
X-CSE-MsgGUID: A9/zgut2Riq5MPNi1HNRYA==
X-IronPort-RemoteIP: 104.47.58.168
X-IronPort-MID: 123300047
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:5iXjlqLsLXOQIt5mFE+RVpQlxSXFcZb7ZxGr2PjKsXjdYENS1jdRm
 GcfWj+EOa2OamejeNx2YY+z8kkH78ODn9NnG1BlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t
 ZV2hv3odp1coqr0/0/1WlTZhSAhk/nOHvylULKs1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws
 Jb5rta31GWNglaYCUpKrfrYwP9TlK6q4mhA7wZuPakjUGL2zBH5MrpOfcldEFOgKmVkNrbSb
 /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/
 jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c5aLHpX/
 PMVdQkidyLYjM/v0ImJcNdj05FLwMnDZOvzu1lG5BSAVLMMZ8CGRK/Ho9hFwD03m8ZCW+7EY
 NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dnpTGNnGSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv23bSXxXunB+r+EpWRp7l4j0CPnFYSEUAzbX26+NmfsH+XDoc3x
 0s8v3BGQbIJ3FewUtD3Uhm8oXiFlh0RQdxdF6s98g7l4rrZ5UOVC3YJShZFacc6r4kmSDoyz
 FiLktj1Qzt1v9W9S3iQ67OVpjOaIjUOICkJYipsZQkY59jupqkjgxSJScxseIa/g8fpAzj2z
 3aPpTInmrQIpccR0uOw+lWvqy2ojojESEgy/Aq/dnm54w1wYonjfJCh41Xf6fdGLa6QS1XHt
 38B8/Vy98gLBJCJ0SaLEOMEGejw4+7faWOMx1lyA5Mm6jKhvWa5epxd6y1/I0EvNdsYfTjuY
 wnYvgY5CIJvAUZGpJRfO+qZY/nGB4C7RLwJiti8ggJyX6VM
IronPort-HdrOrdr: A9a23:DNfslayVfNZNQzFncio7KrPxaeskLtp133Aq2lEZdPU1SL3sqy
 nKpp906faaslYssQ4b6Ky90cW7IE80lqQFkrX5Q43SPjUO0VHAROtfBODZsl7d8kPFh4tgPa
 wJSdkANDWZZ2IXsS6QijPWLz7uquPrzImYwd77i1NRZUVSbadkhj0JeDpy0CdNNXd77V5SLu
 vt2iKDzQDQCEj/Ff7LYkUtbqz4vtjWk5CjSQcebiRXkTWmvHeT8bvnFBrd9QsfVj4n+8ZezU
 H11zbh47mlsbWdwhvRvlWjiKh+qZ/a095eA87JrNYTJi6EsHfPWK1RH4eauSwzoqWUyHtCqq
 i1nz4Qe/5r7m/XfCWOrQDz1xLG2DIjgkWSsmOwsD/YuMnkQzB/NMZbn4JedXLimjAdgO0=
X-Talos-CUID: 9a23:Ix8Yv2zOT9Gt5fugqa9hBgU5N9s8e3LQkU7/On3jAkswWIanc2GfrfY=
X-Talos-MUID: 9a23:+Qv9Owt7ME/dDfxmeM2nrWAlJsh1//6UCVlQtK0gupCkExZBEmLI
X-IronPort-AV: E=Sophos;i="6.03,183,1694750400"; 
   d="scan'208";a="123300047"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=j/2mk5SWVusdNmXP5SM3JnyeH/X/ogFpenl9FBSzRi2hJEjWQAnb3xZrzJpRogvLjMttdSTuWFLwjKp89ZaaNYtJfXKcbZcdgomFMh4qXPP2CuvaQsm1FXyBcTGcyfikSYEl7GplcflLwGaPZHXjHiPZylUEetrvTIkJIXp6/naF27/2LKZVphtZY8r/+D5++4i1WGChDZmEJTXY+jImHmNZthSoztbZeRyg2B/fSdCXyBcjH1zEK/c+JRPk8dSeCvts4qv2FWu257Ab+9QQbEifvpwLxjKeKW3KLo8iZEBoY20c0rF8QUdwc7HDURTdeecH5qckU+4hC651Fif/kg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=DTtB7ttfbqojrmfUtXuliVIqABohiExfvshaWDWyV8c=;
 b=NgxYbjKOANF3au+eWJvKyOkE2SOAnYUgtzq0JDUHe7m8QtSV+kStyxy1vamtiuZojJSjcr2O963X+fQOYChANIF3NHJTzZLJOq4ITXrBnlw2aaU03ZBLc4xsYBJ8r9eKDuGirhaM0MX0tQUnEbTIuNqSKwe6DkTYJNN5k95jEK5Lx5vp69JkvtBV7yTQKBfmamCGe06/xOw7r7UzPWgfN0XcTJSnxzKL8Mxh2QHxHosj4iNnqy8/mdEhXeN/EhvFZlZz9zNRn1L8cuD1q9JUonCur0V5ES6z31xQ2trpCVgkzWHkX9IXakhlR4KaiF439TpwGkK8LmVpWg2vwWXDpw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=DTtB7ttfbqojrmfUtXuliVIqABohiExfvshaWDWyV8c=;
 b=ePvUnizk7Yt8OMRigb1/fBLwLPMyXL3kN1Yf3Z+Yz/MOygmwUCjaL0Fvb8dkCAo5GkVzsARYm+VUIIkjo2ps8MsMmQG5HgUbXZEcA6bSo2B5FL6UVzW5EJD4EHHBkasj13ZOce51gsP/JT5Z2nXJt3NCkSeUq5Cyw0T0rPiV0EU=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 28 Sep 2023 10:32:03 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, andrew.cooper3@citrix.com,
	jbeulich@suse.com, george.dunlap@citrix.com, julien@xen.org,
	bertrand.marquis@arm.com, wl@xen.org,
	Stefano Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] SUPPORT: downgrade Physical CPU Hotplug to
 Experimental
Message-ID: <ZRU6A2wDSVEEHGbK@MacBookPdeRoger>
References: <20230927232004.1981595-1-sstabellini@kernel.org>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20230927232004.1981595-1-sstabellini@kernel.org>
X-ClientProxiedBy: LO4P302CA0035.GBRP302.PROD.OUTLOOK.COM
 (2603:10a6:600:317::11) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BLAPR03MB5635:EE_
X-MS-Office365-Filtering-Correlation-Id: 4413ac73-dc61-4a11-e3d0-08dbbffd67da
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	8SnRDzf7kGOpXqaWFNyvxrnL+qX6kJx7r37jYVUTgANVI2w9EFP/n4I7kK/6Sy/GSGFi/QjXiqti7pNK2uvuUIVluCrH+7Q2gHgcFG8iu2ff/hGe1jWOJSkOzMNGwoVDeKZWRIwGMj30GJy+JvAu6pLXtIAy8h3yrSb0r9IswL+zpP3ZialXGeKCkWXgXXKzQIMSlXHIsYvYO+bIA4ArdlYZI26Qx8g4A5onDluZrADLvu80g9yU8AMA0hZ3+HwDTOzEDj62aQv6ODGAYaYKfeG+wGH3wUXk4Ryag7WOzL/rMi4jbqOVgzJOat3QiPyoMzErdYlgufdM79Yfc3g9LJiVclzOmkFG0LFgXcP8GoF1bhJ6f3hpQ3770FHR6Te60dE1+bGR1nlGW9fTFNeF5EuWKbNrwaRJEyDElT63FNbPL0kWN/eealJCq/fAhRW4WXSjyN+1OUKmeVSpKVVO662HysIj+p5BtVCF/36E50Dyg1w637JEJsjL+z2/GFqa7+zgwPIeNZ34ILqjgV/y/Q9yvD6tLX0rCh9hWYeSyN6Kc/rZKLW5i3s9yxc3QiL7
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(136003)(366004)(396003)(346002)(376002)(39860400002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(6506007)(26005)(66476007)(66556008)(6666004)(86362001)(9686003)(6512007)(6486002)(478600001)(33716001)(2906002)(38100700002)(4744005)(6916009)(316002)(8936002)(85182001)(82960400001)(5660300002)(4326008)(66946007)(8676002)(41300700001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?M0oyamk4Z3docFhQUGlWM1dZaldHUG5BWVpVbWVIOGM4aVlnNWxUNXFzV1FC?=
 =?utf-8?B?REh2dFFDUXM1U0s5b0tyblkzU2lnVFNIRlJ3ZTZsS2R0WENwMFA2VUtpVXpy?=
 =?utf-8?B?dXhyUFoxbWtYMDBRUHUwb1EwU1pZcjVVclQyd2diUmRwZ1cyd3c1NmFzd3F2?=
 =?utf-8?B?ZDlBRHoyOVpzVENublRnOVpXZmg0Vkl2SVhsVHJLZlhwSGxPeEFEY3ZqeEo4?=
 =?utf-8?B?dTFmbFo0cEF0ejJQaWdHK1VjMXVlNlEvamlaTW5TaGx1TFErclZJeWNGbHBJ?=
 =?utf-8?B?QnVQSHBNODl2VklVVXJaTjNtK3pnWktPeGtSV2h2a2ZkME9JMzFjL2lEaGht?=
 =?utf-8?B?UjVZZ2NlZGVSejRrWUN3MGYzVklONWtsMWpBcHJLUUpaN3dINTBFSGN1dUlj?=
 =?utf-8?B?c2JXeHZjaEtRNVYyQmoxTVlYVlBPUUVnR1ZUS1NKUXNNbWRkQ1BaWG4rejVO?=
 =?utf-8?B?dzZab2F2dTE2UlBiNkpOYXVxd21FQ0MxTHQ5eWlYNk8xN1ZtOXducHhMbndK?=
 =?utf-8?B?dWpuQUdwZEYzZkUyZW9ZUXB3ZksrSTh5Wjk3R1d1cnp1bHE2M3BZeVhXdjZG?=
 =?utf-8?B?OTRHSXVqSUpuL3RnTmlnQUgwTXFUa3lqMGxCWHhIejdpeFNGcUNxbFRQSklM?=
 =?utf-8?B?QkxVY0JUSXJaTHd1RDZGNU5qeFNyTHdPQUUzUURrVUFMMXBXT2JucllqcTND?=
 =?utf-8?B?RDZZdXFBTlJBT3dOMVRkcU9lcFlCQS9RVWdlc3hIbHFCczFwM250M1hJVXJj?=
 =?utf-8?B?MzVmTDBxWTd5N0VNR3JicjNhU0dPSmFqa3JKcVlWM3BPeDZjOWkrUW04dFVQ?=
 =?utf-8?B?S0Vvb09PYkthclBtTUx4QVJYb1FKa0ZhTzk1Q2FzSG1EREl4Uk9MaWRGR251?=
 =?utf-8?B?RGpkTEM1YlQ5RmNnTWVWMkFPQ3NQVTM0bEVlNWlOS2hXTmJzVHZwbzJnbWRC?=
 =?utf-8?B?aklQUUUyR3Z4ZUFVT1drSEk5NEk5WjdqODZpMzhwRXBGQmlXNC9BWVF2M2JT?=
 =?utf-8?B?NTBleThxTzdVZkFIMElKNmR0dFpvNkRwT3B2d0RmdFN0Z2FBWnM3QnJEOFpQ?=
 =?utf-8?B?MmV6NVZRNmhrVVh0cXJ5VnpqajhHOFhxQ2x5ZEU3bVU3bkdEUnFqSklqdUZP?=
 =?utf-8?B?Q00yMEJPVExJb0V1bFBGTFFtWHpxL0NSWEljb1lxUVppRDFXSWgzcW1EcTFW?=
 =?utf-8?B?MXdzQkJyUHZQLytIcWdUb29mWEFzcSt1UHdYb1dqdWp3TWFKKzc4Q1NacU0v?=
 =?utf-8?B?dmZuZVM5K3hPUXpnbnVkVlR2QjNBV1NYQS9wZnZhdWRmWnF5VmhweDlwcVI4?=
 =?utf-8?B?SmJYREFhdjNxL2ErcXc3K056aFpKRUtKalRrTmkwbEdmekd4eGRGc1dCbVhZ?=
 =?utf-8?B?NlRraHBUSzlVbklDMWJEK3F6UlRhK3hTdFQ5RGtCakdHd25RYjhDMWFRNnMr?=
 =?utf-8?B?cTI5WjZpSlFRVm5QT0IyVHdqKy8vRlZCd3FRc3IreGM3dDBUNytmcnNWdTc0?=
 =?utf-8?B?OTlybE9lYng5ZW0yQnBkQ00va09IM01Zd0pnc0ZSVjVFTE1RRGRhOGNXNGRm?=
 =?utf-8?B?ZVJoazYvRW92T3ZHTGIvNHpuUTBtOXRvNXNIN2NTSFhKc1MxVmVtUDhDK0Ni?=
 =?utf-8?B?Z2I4RG9KMEtoMkdRbk1WM0hkZi9tazR1R1JlM1NmaGlVRStmS3RsSXVYQXRu?=
 =?utf-8?B?WFg4aytsN056S3V1U2VjUld4YTMrVVlUbGpVWjVGTytyaG9pbXVwSytoc2FE?=
 =?utf-8?B?amZTZGszT2VQNzlqeXdkSWo5RnVPOVpyelluYTkzUjh0ZHFNL05oMW92ZVR4?=
 =?utf-8?B?OGd4V0laTTRYYno2SmlDK2xqRmdMS0VLQkx2bUd1TEliRk1WNldyZkY5alE2?=
 =?utf-8?B?SjV3SHdLYmtnS1QzdzVLQ2RBTnhBeEpqeS8wc1ViWTlBN0tvNnl0VnRyakxN?=
 =?utf-8?B?ZlZYOU5CMDNCY3FwZU9tM0pmcmp6SndZTnpVeEdIdUdCWXZvL3IvUE1yMnFu?=
 =?utf-8?B?WFJJYnR4SWhMNnAyc0VtSFc5NjlXL0VKK0UvUjk3Vnc1M3BIZDJUNERwYmVF?=
 =?utf-8?B?ay8vMFFDbERzb2pCcUl0c3hNRy9ocndOTVRiSWVkeXZycTVKWmxwQUhlUjl3?=
 =?utf-8?B?L1FRNHBYdG55L29qMzdCQTQ3RnZRSllmUG1FOFRweFRzSjMyMm5MNFEzTlI5?=
 =?utf-8?B?RFE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	quSkIYxr3e+A7zi6cwXcplDdVBcd/+aXW0TXL4QyvzK5JP8Ziq36Rn3yWDicXzkHzYJmVGUQ9bWC3q7rWci9HgEDoxAO6KSSZMzp05Rg3pCREhuNPpCFnXE0r4ruWQhnZmmJH4HJ3BsZVMvDxiv1OB7dmbkDsBOJOYVKrdZLq0zHV+kULXBp5T6mUgMLnxrjNLwKaPvBNQWLymnrKx9/0hcbvydA4LKLqEh9DwZgv6FaIrSrFOBZfh/bhRlWmfSHNtXkzbtIkbPoZzKjhIVvbKR4kiBhoSy50w3SHEvSdbMULjMw7j1+GpU6F8YvoancdhxXb8klsSlQ+KMSmWRx6i0fOWSW2XRAa8yy2NDkkWAfDhITuFKhdsZvJyp7gKOrc2R7nKTkeGDM0cN52nC9xuxmIn95b3mmRIkBwwXGr/ttABQ501h+bqleO904cF5LU2u70c8xcNjO8a8qNNbnNcWUF0IyOGhX/ANSluUrqlIXMiCeUud702G/XM9BF6rGCTdi3ZhRq2Y949QoSoXzes4W054makPWOm9pvwncNQfOo6cKD72dJxZgyfF+xM3V3lPRUJoLXTkFfyCdmHpkoYZTCmPaPUo4vjNAmm0GCOb7FxTVN1otUqIwP2dRNqdT57USet1mvlsUlEqiGL8YwWo8bw+TR1ZvXfQGSvjF0PgsXQ2qwfRVncBFZPq4NV2ficCRfP74beITbBZPmuqxCeWHxpOLc6eshJWoU4RlviRi7umM3EhI0DnJDrjbWMqBciwx6ug9sTQiCKevSOQmvELuTsp0HErLweTwwdAkAqZZi2gDbupSOpH+v7w13slp/y78sO2i4bqKchW3oXs0bYNpPl2Q6xo1UvRfWvfdBR99b0/hWbtuVssvFO9+8jTp4ERZaJay0uwCLH015+FSaw==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4413ac73-dc61-4a11-e3d0-08dbbffd67da
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 08:32:09.4372
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: pWEZQjbxUDKr8F2JOKatiTuTbrJg/6aO327WeTR8Kv8BTpxGJwqin3rcUPZvObqpAN+7wSyFn8yZ0WXKVDjVBw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR03MB5635

On Wed, Sep 27, 2023 at 04:20:04PM -0700, Stefano Stabellini wrote:
> From: Stefano Stabellini <stefano.stabellini@amd.com>
> 
> The feature is not commonly used, and we don't have hardware to test it,
> not in OSSTest, not in Gitlab, and not even ad-hoc manually by community
> members. We could use QEMU to test it, but even that it is known not to
> work.

I think this last sentence is ambiguous.  QEMU ACPI CPU hotplug
implementation does work AFAIK, it's Xen implementation of ACPI
hotplug that explodes (or so I've been told).  I would drop or reword
the "but even that it is known not to work." part of the sentence.

> 
> Also take the opportunity to rename the feature to "ACPI CPU Hotplug"
> for clarity.
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 08:35:28 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 08:35:28 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609380.948432 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlmUZ-0003FL-Dh; Thu, 28 Sep 2023 08:35:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609380.948432; Thu, 28 Sep 2023 08:35:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlmUZ-0003FE-Au; Thu, 28 Sep 2023 08:35:27 +0000
Received: by outflank-mailman (input) for mailman id 609380;
 Thu, 28 Sep 2023 08:35:25 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ABaI=FM=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qlmUX-0003F8-L2
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 08:35:25 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0622.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::622])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f75e33d8-5dd9-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 10:35:23 +0200 (CEST)
Received: from AM0P190CA0022.EURP190.PROD.OUTLOOK.COM (2603:10a6:208:190::32)
 by PAXPR08MB6672.eurprd08.prod.outlook.com (2603:10a6:102:137::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 08:35:18 +0000
Received: from AM7EUR03FT027.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:208:190:cafe::a1) by AM0P190CA0022.outlook.office365.com
 (2603:10a6:208:190::32) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.22 via Frontend
 Transport; Thu, 28 Sep 2023 08:35:17 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT027.mail.protection.outlook.com (100.127.140.124) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.19 via Frontend Transport; Thu, 28 Sep 2023 08:35:17 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Thu, 28 Sep 2023 08:35:17 +0000
Received: from 0826ecf9e73e.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 91886FD0-ACB9-4427-AC34-179CABD52E51.1; 
 Thu, 28 Sep 2023 08:34:48 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 0826ecf9e73e.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 28 Sep 2023 08:34:48 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by GV1PR08MB9940.eurprd08.prod.outlook.com (2603:10a6:150:3d::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.25; Thu, 28 Sep
 2023 08:34:45 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404%4]) with mapi id 15.20.6838.024; Thu, 28 Sep 2023
 08:34:45 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f75e33d8-5dd9-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=eMVqCK0kXiVmGMX2a2a40fHhjkIkMdApTYGC+hUUqVY=;
 b=wl6ixudMtuf1PDwjlNN0uXEoRWaaPMnxVhClHN2FeQfVyitrbGqiAs2Mtis7Gs6ZYlpyqQaFoAH8FPYZodUctaMI1el6Xo8zUbjJz9iuo/aG0Ld2Vl6aX/d82krAWmFgbfyKmJ1QqWxCLKC+BO4QvxPdgtddaY7tWen/R2PIFfI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: cdd7ac4fc2f7aa9c
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hPcwlowuKmfQ6qzDDooy44A2veC9jiWOZFM8CeV7CTNiNlI83vNTugTC9yjbLe7pwjVPkJz80rjEv91ogwCwj3wyROKs3DTKik+ZQ0gQNCJTv0ajPxPRmhwCImSpLvl0lUJvF0VpTbv7k/0NKFapp+kEHk/35EihocJWtlCTz3LxlE0e7bmd6+6LetZRSVAUm7ggIivPGuZ6u68Cuzv+eRdkdFAHKDq6pBHE+I2ikfd9cZmVPJCVswN9fNJz+znVGdyq2o5sYLRULltnj36i11IjUNHNPLSmAuRWfwHcYyRKNRiV0ltSeK0VSNyiun+9NF3C6Qh0LKZFC0FNSgpoDQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=eMVqCK0kXiVmGMX2a2a40fHhjkIkMdApTYGC+hUUqVY=;
 b=TewFImOj8zZIUqTXZCmW4dkgCXREV6qbgeSUaZIVFxoOc0dGVq8uhbEc+ooUuEYJsabwrDyX7YnkcgppiosFrNFiDWeCS0DoKZdgb1/BlSdDodbmuidIhPKhDevtI+ZwuHiDVrSVSvIsHh5G51bdBFkIJImbOg6qFcs9BRD/g1Wm43avDuRQZ8ueUUigW1rKRK8iybKQZtb39xde1LJ0PF/67JilDHf+xZ4tOwOTVYHWDMAzb0B8zwk9cPN7DUJJuH8UeLgrP9Cb670Hk01yY40pBJpaU2fSNsfmndBYcs2bC+SOJb4pER+iubA+12JRU4ngap0QRkAXeEa4+1bUnw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=eMVqCK0kXiVmGMX2a2a40fHhjkIkMdApTYGC+hUUqVY=;
 b=wl6ixudMtuf1PDwjlNN0uXEoRWaaPMnxVhClHN2FeQfVyitrbGqiAs2Mtis7Gs6ZYlpyqQaFoAH8FPYZodUctaMI1el6Xo8zUbjJz9iuo/aG0Ld2Vl6aX/d82krAWmFgbfyKmJ1QqWxCLKC+BO4QvxPdgtddaY7tWen/R2PIFfI=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, "andrew.cooper3@citrix.com"
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Jan
 Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>
Subject: Misra rule 10.3 violations report script
Thread-Topic: Misra rule 10.3 violations report script
Thread-Index: AQHZ8eaivorSHG23DU+9+Dq6J0nkFw==
Date: Thu, 28 Sep 2023 08:34:45 +0000
Message-ID: <D36FE722-43D5-4A93-B725-AD4157A1BA61@arm.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3774.100.2.1.4)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|GV1PR08MB9940:EE_|AM7EUR03FT027:EE_|PAXPR08MB6672:EE_
X-MS-Office365-Filtering-Correlation-Id: b0070657-55c5-4b85-7467-08dbbffdd80b
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 sq6YkAMTo1grC9jpOCdDVUgYe4FevaAjxV3sjPWn6SkGHZMQWe/ftJRDkaNLXTUSYc9MSHS3bNBeu87jWqpt4WHJPaA3gOjjIjEMUtJ1m9ssG4lXUGi6vG3bg7cBiwMjPCJGe50TvXIIO/BH6w5W0WnKst7vkWRnpZyDgrFhto6AgbJx+rWM9XUQ6O2SuVMMRm5qUNub+nzIizcZLkIL6P+tMcDqsZB1hrZob1SlgpQAMNsdFSd4ZuI9ptS0QTdpurYi2teAz/eJJhPWwbT1jC1Xuv6ZeRikBDLAMMIsiTrt8ZPYvJMs8nI9ePgDByxIj2VbyjROOR0rm9NfKjhkg0yYHxC5SXOBmchyLnCjMyYhVjUojDD/LlaDDl9LIX7pRPnYsceClQykPUE1a28K+49KFu6VjTP+I91GgdV2LO2t2HidIo7Uo8yI7oZxSkYiizmKosHlzfRjD8XAJgdlvd8Oeg3JZkZtYX/WSyxlHx6tV4AcmTAdxAEtEUbv8MY+4dgixCXtwfvAlFY38WzL2jPR4XtoDty3PT/OWHbC3VnYsPdkXoOj2f3La5m6AzFFJI3Y90SjIpVPCFSPQiEdDOu7qtM1YjhENqlYfT8TTdMyRME1aczf2e2uuDS3aU1uifwNEvQyRh7YEkqQ9XBbKw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(39860400002)(396003)(346002)(376002)(366004)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(2906002)(8676002)(8936002)(91956017)(6512007)(76116006)(316002)(66446008)(6916009)(66476007)(66946007)(4744005)(54906003)(64756008)(66556008)(4326008)(41300700001)(478600001)(38070700005)(71200400001)(38100700002)(5660300002)(33656002)(6486002)(6506007)(36756003)(83380400001)(26005)(2616005)(86362001)(99936003)(122000001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: multipart/mixed;
	boundary="_002_D36FE72243D54A93B725AD4157A1BA61armcom_"
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB9940
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT027.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	2d850249-be7e-4993-44e8-08dbbffdc4b4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	QKQdNbbmdIX3pli8SBLfOgEpb9Li1cqBisXGmAbwtx4dwzZdLbqMYvyAIMNZLAXHdRgVDc+rNIGoyOgvryQrZ+vCE4AEKglTO3ZCi+7x81GS0zxDpRC/7ysO3/AD6d5+MxlGsNruR5JIjxH/r/H50U3GtwwI8fX5hq0263GpcgYsog59nz7XzEXHP+Ng3MVtQV2Jo4DCv6EPKhlJyC4qCEjBdiYFUdtQLvnAP9YXi3kru0US12r6M8miRS4wDCrNkAh7BgHcXPvQB61DqXEvjs5q46N7qaiIO84lp29LgIkS5yWBFOJAkm5ANuWbgDOnC16QnlkP9F59xm9aUU13gju39f2EJblfZgOjgHsNWFbZc5ZCyUyK/Fmo2ORS+p8gjP2G+gcJWxjLSe52t3wZvGEr+nuDKL4rewvpIz8UZUaSRlXhZCQ9CDuRZ9stCsL6MHyhe+xNO2XLCKyuUy15lwHE7Upub3Wi250yZIEBthAkTgfRrU3k7vgIiHOXYZRyZ5DD/TXyyUC6ApvY1lJpeIN7Jx3oKpp7+TrLaFUPtxZKsK+KpqwZQYMwUIWzJKnqG35RAW+vVDZ3he3cPdgTLjhkt7qRx3UdNooOM02qHFoKQi2DY9GVhipdbAc0tzlBLUK60Epz2gy53Nub0trjxtGaGKethwODwW7U1jNYzK5NyT4pCQuhKPxm46PfM+g1aMfNuHSi97QN9r7KoXBCY9s56Zg4iXSj4cYAlGLPOLk4AXhTShW2Vp78mIIEn5DF
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(376002)(346002)(39860400002)(396003)(230922051799003)(82310400011)(1800799009)(451199024)(64100799003)(186009)(36840700001)(40470700004)(46966006)(83380400001)(47076005)(36860700001)(40460700003)(40480700001)(5660300002)(45080400002)(70586007)(70206006)(8936002)(41300700001)(54906003)(6486002)(81166007)(6916009)(316002)(99936003)(235185007)(86362001)(356005)(2906002)(4326008)(6512007)(2616005)(33656002)(33964004)(82740400003)(478600001)(8676002)(6506007)(336012)(36756003)(26005);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 08:35:17.4536
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: b0070657-55c5-4b85-7467-08dbbffdd80b
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT027.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6672

--_002_D36FE72243D54A93B725AD4157A1BA61armcom_
Content-Type: text/plain; charset="utf-8"
Content-ID: <105CAD3A560B2E46A69BD37922FF8FD9@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64

SGkgYWxsLA0KDQpJbiB0aGUgbGFzdCBNSVNSQSBtZWV0aW5nIFN0ZWZhbm8gdG9sZCBtZSBhYm91
dCB0aGUgUnVsZSAxMC4zIGFuZCB0aGF0IHdlIGhhdmUgYSBsb3Qgb2YgdmlvbGF0aW9ucywNCmJ1
dCBHQ0MgaGFzIGEgd2F5IHRvIGxpc3QgdGhlbSBhcyB3cml0dGVuIGluIHJ1bGVzLnJzdC4NCg0K
U28gdGhlIGlzc3VlIHdhcyBqdXN0IHRoYXQgd2UgaGF2ZSBhIGxvdCBvZiB2aW9sYXRpb25zLCBt
b3N0IG9mIHRoZW0gY29taW5nIGZyb20gaGVhZGVycyBhbmQgdGhlDQpEZXZlbG9wZXIgbWlnaHQg
ZmVlbCBhIGJpdCBsb3N0IHNpbmNlIHRoZSBudW1iZXIgaXMgdmVyeSBoaWdoLCBzbyBJ4oCZdmUg
ZGV2ZWxvcGVkIHRoaXMgc2NyaXB0IHRvIHRha2UNCnRoZSBHQ0MgYnVpbGQgbG9nIGFuZCBjcmVh
dGUgYSBsaXN0IG9mIHVuaXF1ZSBvY2N1cnJlbmNlcyBvZiB0aGUgdmlvbGF0aW9ucyBzb3J0ZWQg
aW4gZGVzY2VuZGluZw0Kb3JkZXIsIHNvIHRoYXQgd2hvIGhhcyBhIGJpdCBvZiB0aW1lIGNhbiB0
cnkgdG8gZml4IHNvbWUgb2YgdGhvc2UgYW5kIG1heWJlIGNhbiBzdGFydCBmcm9tIHRoZSB0b3AN
Cm9mIHRoZSBsaXN0IHRvIGZpeCBhcyBtYW55IGFzIHBvc3NpYmxlIG9jY3VycmVuY2VzLg0KDQpJ
IGF0dGFjaCB0aGUgc2NyaXB0IGFzIHBhdGNoIGZpbGUuDQoNCkNoZWVycywNCkx1Y2ENCg0K

--_002_D36FE72243D54A93B725AD4157A1BA61armcom_
Content-Type: application/octet-stream;
	name="0001-Script-to-analyse-the-rule-10.3-GCC-output.patch"
Content-Description: 0001-Script-to-analyse-the-rule-10.3-GCC-output.patch
Content-Disposition: attachment;
	filename="0001-Script-to-analyse-the-rule-10.3-GCC-output.patch"; size=4615;
	creation-date="Thu, 28 Sep 2023 08:34:44 GMT";
	modification-date="Thu, 28 Sep 2023 08:34:45 GMT"
Content-ID: <27DD8DBB3DE0514687F159A01F1E9351@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64

RnJvbSAwMDM1ZmM2OTNmOGM5N2ZiNDFmZjRlNTY5N2I5MzIxMDQyNDg0YjM2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBMdWNhIEZhbmNlbGx1IDxsdWNhLmZhbmNlbGx1QGFybS5jb20+
CkRhdGU6IFRodSwgMjggU2VwIDIwMjMgMDg6NDg6MzMgKzAxMDAKU3ViamVjdDogW1BBVENIXSBT
Y3JpcHQgdG8gYW5hbHlzZSB0aGUgcnVsZSAxMC4zIEdDQyBvdXRwdXQKClNpZ25lZC1vZmYtYnk6
IEx1Y2EgRmFuY2VsbHUgPGx1Y2EuZmFuY2VsbHVAYXJtLmNvbT4KLS0tClRoaXMgc2NyaXB0IGlz
IG5vdCBtZWFudCB0byBiZSBwYXJ0IG9mIFhlbiwgSSdtIHNlbmRpbmcgaXQganVzdCBhcyBhIHJl
ZmVyZW5jZS4KLS0tCiB4ZW4vc2NyaXB0cy9ydWxlXzEwXzMucHkgfCAxMTEgKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgMTExIGluc2VydGlv
bnMoKykKIGNyZWF0ZSBtb2RlIDEwMDc1NSB4ZW4vc2NyaXB0cy9ydWxlXzEwXzMucHkKCmRpZmYg
LS1naXQgYS94ZW4vc2NyaXB0cy9ydWxlXzEwXzMucHkgYi94ZW4vc2NyaXB0cy9ydWxlXzEwXzMu
cHkKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwLi40MGIzNGI0NzA4MDgK
LS0tIC9kZXYvbnVsbAorKysgYi94ZW4vc2NyaXB0cy9ydWxlXzEwXzMucHkKQEAgLTAsMCArMSwx
MTEgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitp
bXBvcnQgcmUKK2Zyb20gYXJncGFyc2UgaW1wb3J0IEFyZ3VtZW50UGFyc2VyCisKKyMgVGhpcyBz
Y3JpcHQgYW5hbHlzZSB0aGUgYnVpbGQgb3V0cHV0IGhhdmluZyB0aGUgR0NDIGNvbnZlcnNpb24g
d2FybmluZworIyBlbmFibGVkIGZvciB3aGF0IGNvbmNlcm5zIHRoZSBydWxlIDEwLjMsIGl0IHBy
b3ZpZGVzIGEgcmVwb3J0IHdpdGggdW5pcXVlCisjIG9jY3VyZW5jZXMgZm9yIGEgdmlvbGF0aW9u
IGxpc3RlZCBhczoKKyMgZmlsZSBwYXRoOmxpbmUgbnVtYmVyOmNvbHVtbiBudW1iZXIgKGNvdW50
KQorIyBUaGUgbGlzdCBpcyBzb3J0ZWQgaW4gZGVzY2VuZGluZyBjb3VudCBvcmRlciwgc28gdGhh
dCBmaXhpbmcgdGhlIHZpb2xhdGlvbnMKKyMgYXQgdGhlIGJlZ2lubmluZyB3aWxsIHByb3ZpZGUg
YSBiZXR0ZXIgaW1wYWN0IG9uIHRoZSB0b3RhbCBjb3VudCBvZiB2aW9sYXRpb25zCisjIEJ1aWxk
IFhlbiB3aXRoIHRoZSBjb21tYW5kIGxpbmUgc3VnZ2VzdGVkIGluIHJ1bGVzLnJzdCBhbmQgZ2Vu
ZXJhdGUgYW4gb3V0cHV0CisjIGZpbGUsIGFuIGV4YW1wbGUgaGVyZSBidWlsZGluZyBmb3IgYXJt
NjQ6CisjIENGTEFHUz0iLVdjb252ZXJzaW9uIC1Xbm8tZXJyb3I9c2lnbi1jb252ZXJzaW9uIC1X
bm8tZXJyb3I9Y29udmVyc2lvbiIgXAorIyBtYWtlIC1DIHhlbiBDUk9TU19DT01QSUxFPSJhYXJj
aDY0LWxpbnV4LWdudS0iIFhFTl9UQVJHRVRfQVJDSD0iYXJtNjQiIFwKKyMgMj4gPih0ZWUgLWEg
Li4vYnVpbGQtYXJtNjQudHh0ID4mMikKKworY2xhc3MgVmlvbGF0aW9uTGlzdDoKKyAgICBjbGFz
cyBMaXN0RWxlbWVudDoKKyAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZpbGVfcGF0aCwgbGlu
ZV9udW0sIGNvbF9udW0pOgorICAgICAgICAgICAgc2VsZi5wYXRoID0gZmlsZV9wYXRoCisgICAg
ICAgICAgICBzZWxmLmxpbmUgPSBzdHIobGluZV9udW0pCisgICAgICAgICAgICBzZWxmLmNvbCA9
IHN0cihjb2xfbnVtKQorICAgICAgICAgICAgc2VsZi5jb3VudCA9IDEKKworICAgICAgICBkZWYg
X19lcV9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgICAgIGlmIHNlbGYucGF0aCA9PSBvdGhlci5w
YXRoIGFuZCBzZWxmLmxpbmUgPT0gb3RoZXIubGluZSBcCisgICAgICAgICAgICAgICBhbmQgc2Vs
Zi5jb2wgPT0gb3RoZXIuY29sOgorICAgICAgICAgICAgICAgIHJldHVybiBUcnVlCisKKyAgICAg
ICAgICAgIHJldHVybiBGYWxzZQorCisgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICAj
IF9fbGlzdCBpcyBhIGRpY3Rpb25hcnkgd2l0aCB0aGlzIGZvcm1hdDoKKyAgICAgICAgIyBrZXkg
ICAgICAgICAtPiB2YWx1ZQorICAgICAgICAjIFtmaWxlIHBhdGhdICAgIFthcnJheSBvZiBpdGVt
cyB3aXRoIGxpbmUgbnVtYmVyIGFuZCBjb2wgbnVtYmVyXQorICAgICAgICBzZWxmLl9fbGlzdCA9
IHt9CisKKyAgICBkZWYgYWRkX2VsZW1lbnQoc2VsZiwgZmlsZV9wYXRoLCBsaW5lX251bSwgY29s
X251bSk6CisgICAgICAgIGVudHJ5ID0gc2VsZi5MaXN0RWxlbWVudChmaWxlX3BhdGgsIGxpbmVf
bnVtLCBjb2xfbnVtKQorICAgICAgICBpZiBmaWxlX3BhdGggaW4gc2VsZi5fX2xpc3Qua2V5cygp
OgorICAgICAgICAgICAgaWYgZW50cnkgaW4gc2VsZi5fX2xpc3RbZmlsZV9wYXRoXToKKyAgICAg
ICAgICAgICAgICBmb3IgZWwgaW4gc2VsZi5fX2xpc3RbZmlsZV9wYXRoXToKKyAgICAgICAgICAg
ICAgICAgICAgaWYgZWwgPT0gZW50cnk6CisgICAgICAgICAgICAgICAgICAgICAgICBlbC5jb3Vu
dCArPSAxCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuX19saXN0W2Zp
bGVfcGF0aF0uYXBwZW5kKGVudHJ5KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5f
X2xpc3RbZmlsZV9wYXRoXSA9IFtlbnRyeV0KKworICAgIGRlZiB0b19saXN0KHNlbGYpOgorICAg
ICAgICByZXBvcnRfbGlzdCA9IFtdCisgICAgICAgIGZvciBfLCBlbnRyaWVzIGluIHNlbGYuX19s
aXN0Lml0ZW1zKCk6CisgICAgICAgICAgICBmb3IgZW50cnkgaW4gZW50cmllczoKKyAgICAgICAg
ICAgICAgICByZXBvcnRfbGlzdC5hcHBlbmQoZW50cnkpCisKKyAgICAgICAgcmVwb3J0X2xpc3Qu
c29ydChyZXZlcnNlPVRydWUsIGtleT1sYW1iZGEgeDogeC5jb3VudCkKKyAgICAgICAgcmV0dXJu
IHJlcG9ydF9saXN0CisKKyAgICBkZWYgX19zdHJfXyhzZWxmKToKKyAgICAgICAgcmV0ID0gIiIK
KyAgICAgICAgdG90YWwgPSAwCisgICAgICAgIGZvciBlbnRyeSBpbiBzZWxmLnRvX2xpc3QoKToK
KyAgICAgICAgICAgIHJldCArPSBlbnRyeS5wYXRoICsgIjoiICsgZW50cnkubGluZSArICI6IiAr
IGVudHJ5LmNvbCArICIgKCIgXAorICAgICAgICAgICAgICAgICAgICsgc3RyKGVudHJ5LmNvdW50
KSArICIpXG4iCisgICAgICAgICAgICB0b3RhbCArPSBlbnRyeS5jb3VudAorCisgICAgICAgIHJl
dCArPSAiXG5cblRvdGFsIGNvdW50OiAiICsgc3RyKHRvdGFsKSArICJcbiIKKworICAgICAgICBy
ZXR1cm4gcmV0CisKKworZGVmIG1haW4oYXJndik6CisgICAgcGFyc2VyID0gQXJndW1lbnRQYXJz
ZXIocHJvZz0icnVsZV8xMF8zLnB5IikKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCItbCIsICIt
LWxvZyIsIHJlcXVpcmVkPVRydWUsIHR5cGU9c3RyLAorICAgICAgICAgICAgICAgICAgICAgICAg
aGVscD0iUGF0aCB0byB0aGUgYnVpbGQgbG9nLiIpCisgICAgYXJncyA9IHBhcnNlci5wYXJzZV9h
cmdzKCkKKworICAgIGxvZ19wYXRoID0gb3MucGF0aC5yZWFscGF0aChhcmdzLmxvZykKKyAgICBp
ZiBsb2dfcGF0aCA9PSAiIjoKKyAgICAgICAgcHJpbnQoIlBsZWFzZSBwYXNzIHRoZSBsb2cuIikK
KyAgICAgICAgc3lzLmV4aXQoMSkKKworICAgIHRyeToKKyAgICAgICAgd2l0aCBvcGVuKGxvZ19w
YXRoLCAicnQiKSBhcyBpbmZpbGU6CisgICAgICAgICAgICBsb2dfbGluZXMgPSBpbmZpbGUucmVh
ZGxpbmVzKCkKKyAgICBleGNlcHQgT1NFcnJvciBhcyBlOgorICAgICAgICBwcmludCgiSXNzdWUg
d2l0aCByZWFkaW5nIGZpbGUge306IHt9Ii5mb3JtYXQobG9nX3BhdGgsIGUpKQorICAgICAgICBz
eXMuZXhpdCgxKQorCisgICAgdmlvbGF0aW9uX2VudHJ5ID0gcmUuY29tcGlsZShyJ14oLiopOihc
ZCspOihcZCspOi4qJCcpCisgICAgdmlvbGF0aW9uX2xpc3QgPSBWaW9sYXRpb25MaXN0KCkKKwor
ICAgIGZvciBsaW5lIGluIGxvZ19saW5lczoKKyAgICAgICAgaWYgKCJbLVdzaWduLWNvbnZlcnNp
b25dIiBpbiBsaW5lKSBvciAoIlstV2NvbnZlcnNpb25dIiBpbiBsaW5lKToKKyAgICAgICAgICAg
IGVudHJ5ID0gdmlvbGF0aW9uX2VudHJ5Lm1hdGNoKGxpbmUpCisgICAgICAgICAgICBpZiBlbnRy
eSBhbmQgZW50cnkuZ3JvdXAoMSkgYW5kIGVudHJ5Lmdyb3VwKDIpIGFuZCBlbnRyeS5ncm91cCgz
KToKKyAgICAgICAgICAgICAgICBmaWxlX3BhdGggPSBlbnRyeS5ncm91cCgxKQorICAgICAgICAg
ICAgICAgIGxpbmVfbnVtYmVyID0gaW50KGVudHJ5Lmdyb3VwKDIpKQorICAgICAgICAgICAgICAg
IGNvbF9udW1iZXIgPSBpbnQoZW50cnkuZ3JvdXAoMykpCisgICAgICAgICAgICAgICAgdmlvbGF0
aW9uX2xpc3QuYWRkX2VsZW1lbnQoZmlsZV9wYXRoLCBsaW5lX251bWJlciwgY29sX251bWJlcikK
KyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcHJpbnQoIk1hbGZvcm1lZCByZXBv
cnQgZW50cnkgaW4gZmlsZSB7fTpcbnt9IgorICAgICAgICAgICAgICAgICAgICAgIC5mb3JtYXQo
bG9nX3BhdGgsIGxpbmUpKQorICAgIHByaW50KHZpb2xhdGlvbl9saXN0KQorCisKK2lmIF9fbmFt
ZV9fID09ICJfX21haW5fXyI6CisgICAgbWFpbihzeXMuYXJndlsxOl0pCi0tIAoyLjM0LjEKCg==

--_002_D36FE72243D54A93B725AD4157A1BA61armcom_--


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 09:11:10 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 09:11:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609386.948442 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qln2x-0001Y4-1T; Thu, 28 Sep 2023 09:10:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609386.948442; Thu, 28 Sep 2023 09:10:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qln2w-0001Xx-Us; Thu, 28 Sep 2023 09:10:58 +0000
Received: by outflank-mailman (input) for mailman id 609386;
 Thu, 28 Sep 2023 09:10:58 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IVKH=FM=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qln2w-0001Xr-Ci
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 09:10:58 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on060e.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::60e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ee29b5b9-5dde-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 11:10:55 +0200 (CEST)
Received: from DB8PR09CA0021.eurprd09.prod.outlook.com (2603:10a6:10:a0::34)
 by AM0PR08MB5443.eurprd08.prod.outlook.com (2603:10a6:208:183::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 28 Sep
 2023 09:10:52 +0000
Received: from DBAEUR03FT010.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:a0:cafe::b9) by DB8PR09CA0021.outlook.office365.com
 (2603:10a6:10:a0::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.22 via Frontend
 Transport; Thu, 28 Sep 2023 09:10:52 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT010.mail.protection.outlook.com (100.127.142.78) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.21 via Frontend Transport; Thu, 28 Sep 2023 09:10:52 +0000
Received: ("Tessian outbound d219f9a4f5c9:v211");
 Thu, 28 Sep 2023 09:10:52 +0000
Received: from 53173c12577c.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 A3F989A5-0DBF-4A6D-924E-1733CA8120CB.1; 
 Thu, 28 Sep 2023 09:10:45 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 53173c12577c.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 28 Sep 2023 09:10:45 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AS8PR08MB9148.eurprd08.prod.outlook.com (2603:10a6:20b:57f::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 28 Sep
 2023 09:10:43 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::30ea:681d:5fa7:8bfb]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::30ea:681d:5fa7:8bfb%2]) with mapi id 15.20.6813.027; Thu, 28 Sep 2023
 09:10:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ee29b5b9-5dde-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=E8OEIFLGNbEbr8ewFOPuLQ03fLbfQCDHcDnJZWqWZC0=;
 b=qUtxhFo1ocxTDKGdVOiQGzcsA2lfMuHObntyckeEw3zIlKPDdR7tsSQUDerqSnqDQAXtsPzuJ1l2/VDkVWySlmf2Qeq3x7/quQ2u5yQ1LU0IKdv5n0r/70wcQyd4maTq7o5R4bUSdm605AKmMpmlraS6h6Ufn3J4L9GvixKnOy0=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 3ed919f879bff576
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UFiGpHvoJeFtDaiWXOuFZ1+wR8Uiu/dud9HHECB6+ZahULMimpaZvNbbuxC0gEM8yAKO9OQ6saRQKvLLtGd9EroBGK+p4NMfI7RrlgsxHVmEyUfXIPrSL4wTMEEjOngpTkwp1QXwd4kYVJa3EcPXPLt2LYhOKNVIzublitQFOlm8vjx78G5dRyEXYvz3Y4yEepQ4XOhKvDbGwhjP6CO4Z3SDvI+kMCHjLL2HQdDuzGd8RYzy4EiSjlAKxX3PGkrrxzNf2aC6isOIHyxms+u2TER2nq9r7oYftrc4jlk58ckrsEL7qmhm+AkxUY314/3mys25GceB5EKH9FXolnI9nQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=E8OEIFLGNbEbr8ewFOPuLQ03fLbfQCDHcDnJZWqWZC0=;
 b=nGJswWWhsP4AI6c3OuYyjti4JLm2g68hx9ybWzo5JymM9uL10Kgd9ll95Mr6+GCAYY0iAtrjncE2944YnJmjQJujcBHbySEyg5gEdRm1dOJT/7wD3oq76jCO2LBOZdYRIblwKtiMy/2B59tykj8D7X7JELq8j093O3/tmNeibV+OyHpoBqHTKLzEfZcfgJ9kEiPdTH/ebP5jxVVwdsjGsr5305qFTC6a6FY4WsuGpRVjMSCFJHZ105yCJ/S5eEVH2Owd+TXHZ0qwq1P3pgoVwp7lFfyMqt0AhqBkHzXh9FoJwLUR5QBn148jGcwrN18XnzI/15ZoOQD0JnRqe+iXfA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=E8OEIFLGNbEbr8ewFOPuLQ03fLbfQCDHcDnJZWqWZC0=;
 b=qUtxhFo1ocxTDKGdVOiQGzcsA2lfMuHObntyckeEw3zIlKPDdR7tsSQUDerqSnqDQAXtsPzuJ1l2/VDkVWySlmf2Qeq3x7/quQ2u5yQ1LU0IKdv5n0r/70wcQyd4maTq7o5R4bUSdm605AKmMpmlraS6h6Ufn3J4L9GvixKnOy0=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, "julien@xen.org"
	<julien@xen.org>, "george.dunlap@citrix.com" <george.dunlap@citrix.com>,
	"nicola.vetrini@bugseng.com" <nicola.vetrini@bugseng.com>, Stefano Stabellini
	<stefano.stabellini@amd.com>
Subject: Re: [PATCH v2] docs/misra: add rule 2.1 exceptions
Thread-Topic: [PATCH v2] docs/misra: add rule 2.1 exceptions
Thread-Index: AQHZ1hLASNqKg0R4JUWaB9eFf7S+WLAwKx4A
Date: Thu, 28 Sep 2023 09:10:43 +0000
Message-ID: <57A3B9BE-BBB2-42D4-B576-C539CDA9A539@arm.com>
References: <20230823223942.2981782-1-sstabellini@kernel.org>
In-Reply-To: <20230823223942.2981782-1-sstabellini@kernel.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|AS8PR08MB9148:EE_|DBAEUR03FT010:EE_|AM0PR08MB5443:EE_
X-MS-Office365-Filtering-Correlation-Id: 1bfa4ca0-5f80-4def-69d3-08dbc002d072
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 /v3lyNmiIHTj1R0FbjuOGpVGQIUwMceD4wUo9mlFAayZg6SrIeSOFLto5/pvZCi1Pt1YmeDTFOegeo7ubpBFiCaFeQxyiqoSRR6kuQOZVxtdD5KHnJaRPouDLAcHMy5cQqgNqTK/MNUnltQXrcb35NB2HeAqDO8UTyMND7cD+69QlGMb/XsBohSXxuZxLhCFiCbjO+Vq9EsLJTo7kaku8hcSWTGadLF6EG3L8HhDNLekBMMzSF+7o3riaHIMDnhLhbb9oDNL1o7nBgxaP7eS0mAPgtE4X1ak/CJad5EAz2AjKJQag+7ru2y4bz2G8c5jH4/LQ+nPCeV/+0iRgjCsX+v2WGdTX9uRm9Nj0mPwxQIHZan/hAcK28YvVvN6EU+bQJy9Kn2kt4DFSCTZ27b50eM0hVfUeSNAE0CfKtVBLAr4Ee0nRrK+AI0JP/8nzCOuE++3xbSBdBfST61fJlVf/BICohmHUNKJI3Xe2Ig3fzPFUUT8+j88Ohx/+l4j0/CAEi8qWjnHiH+fGIFbVEOQw7J9YQew2hkk5iz8Cp/HOnSU6eMaN5csbfWiG8im/XHpt8sKiQOJZAPRutjZZM55+ny748zITzQDB2Nvz46txLVyE4csSABlMR6AZDaWzktMqnoiMW+wQp/h60Y5u1arRMVpuiYSUcG0dhlTmpS9L+muM8DK/x14sz8GYO1a2AGL
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(396003)(366004)(346002)(376002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(83380400001)(5660300002)(76116006)(91956017)(66556008)(41300700001)(66476007)(64756008)(66946007)(66446008)(54906003)(316002)(2616005)(53546011)(478600001)(6506007)(71200400001)(6512007)(6486002)(2906002)(6916009)(8676002)(122000001)(4326008)(38070700005)(8936002)(33656002)(36756003)(86362001)(38100700002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <B6D4391BC1BAF14CBA580FFBB8C1F343@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9148
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	44a29294-264b-436f-bc43-08dbc002caff
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	sK9te0LFCWjaZqDvg1QlrXTwy3jWHzggZzc8gDSJUKK3uSmOWxF33hm+KSm+mFfjBmyhzylo8E9GKH7FQiJYZAi3FkianN+hzoSDUcDoxiZvPf8+6tijqY6f1Bz+hVlkAQQQ3ShJGNnKQ4FVDkLj+lJruRMRHtU3aUuRWgJRxDAm1jGadmLz8qzxf2hOPSwo7LGExfwtsXun5SMakyRrPU7bRguu0WUQOiM8RoQlfUe5Cf+AK/jfKM5c2MCt1mjkoT2vlfmxhcNT6nJ3J94IVgGIsCf4BDLARWVyFbWL0hpOP9gphpYgzwNCwpuQTxiiEpvWcJPEm3PKo94NpDUEXlWzd3BUW4LAy/X2gCwshkV3PKJkDmAFWgIEnq5YHEyk+OJFQrFGlJqIhIhtKdmcfJ1TsmpI4EA6TZI9zwv441UGiufw7MJSnOmVpN40QilJSRKC/uQec0y+ZUcS8Pybzl4/741E0D3ZCpx/p+lrBECbkEJIxJ509UKUrJR6kYFC6ft4jFD1MhH2XXUASVdvVAHZ5oSGOFRAx7qETsGGMT1I2Ni9S/FLEYn2ToNcRcZb+i52x/N8azU9YM9POqszHXC+u0PNbWdsbqdKVTbGqNGt2taYgDSnEnNyfP28pRCFY8/yrv0ZDn0PrthY5u3+GxDrn8xHGMSL6MCBGeohpv23ox83eHwNWeSEP/ZHNELyJEmi4pb9km+IWgX5D7Pi6e95vepJ8i1iRmDgJUAKFM9rEpe0ElAIG72zF6oncXGCfbvn+UE11i27P1u2F8Q6cA==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(396003)(136003)(346002)(39860400002)(230922051799003)(1800799009)(64100799003)(451199024)(82310400011)(186009)(46966006)(40470700004)(36840700001)(36756003)(86362001)(356005)(81166007)(82740400003)(33656002)(40460700003)(40480700001)(53546011)(478600001)(6506007)(6512007)(2616005)(336012)(41300700001)(26005)(5660300002)(4326008)(8676002)(8936002)(6862004)(2906002)(316002)(6486002)(54906003)(70206006)(70586007)(36860700001)(47076005)(83380400001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 09:10:52.2527
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1bfa4ca0-5f80-4def-69d3-08dbc002d072
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB5443

Hi Stefano,

> On 24 Aug 2023, at 00:39, Stefano Stabellini <sstabellini@kernel.org> wro=
te:
>=20
> From: Stefano Stabellini <stefano.stabellini@amd.com>
>=20
> During the discussions that led to the acceptance of Rule 2.1, we
> decided on a few exceptions that were not properly recorded in
> rules.rst. Add them now.
>=20
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> Acked-by: Jan Beulich <jbeulich@suse.com>
> ---
> Note that safe.json and the codebase are not yet updated with an
> appropriate tag for BUG, panic and friends.
>=20
> v2:
> - fix typo in commit message
> - use "only referenced from assembly"
> - use "Deliberate unreachability caused by"
> - add "See safe.json"
> - add acked-by (although I also added "See safe.json")
> ---
> docs/misra/rules.rst | 13 ++++++++++++-
> 1 file changed, 12 insertions(+), 1 deletion(-)
>=20
> diff --git a/docs/misra/rules.rst b/docs/misra/rules.rst
> index 8f0e4d3f25..4f33ed4ba6 100644
> --- a/docs/misra/rules.rst
> +++ b/docs/misra/rules.rst
> @@ -106,7 +106,18 @@ maintainers if you want to suggest a change.
>    * - `Rule 2.1 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-S=
uite/-/blob/master/R_02_01_1.c>`_
>      - Required
>      - A project shall not contain unreachable code
> -     -
> +     - The following are allowed:
> +         - Invariantly constant conditions, e.g. if(IS_ENABLED(CONFIG_HV=
M)) { S; }
> +         - Switch with a controlling value statically determined not to
> +           match one or more case statements
> +         - Functions that are intended to be referenced only from
> +           assembly code (e.g. 'do_trap_fiq')
> +         - Deliberate unreachability caused by certain macros/functions,
> +           e.g. BUG, assert_failed, panic, etc. See safe.json.

As Julien requested, you should remove this.

With that handled:

Acked-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

> +         - asm-offsets.c, as they are not linked deliberately, because
> +           they are used to generate definitions for asm modules
> +         - Declarations without initializer are safe, as they are not
> +           executed
>=20
>    * - `Rule 2.6 <https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/Example-S=
uite/-/blob/master/R_02_06.c>`_
>      - Advisory
> --=20
> 2.25.1
>=20



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 09:11:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 09:11:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609390.948452 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qln3Y-00023x-Cc; Thu, 28 Sep 2023 09:11:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609390.948452; Thu, 28 Sep 2023 09:11:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qln3Y-00023q-9g; Thu, 28 Sep 2023 09:11:36 +0000
Received: by outflank-mailman (input) for mailman id 609390;
 Thu, 28 Sep 2023 09:11:35 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=IVKH=FM=arm.com=Bertrand.Marquis@srs-se1.protection.inumbo.net>)
 id 1qln3X-0001Xr-Gk
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 09:11:35 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0614.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::614])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 048c65d6-5ddf-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 11:11:33 +0200 (CEST)
Received: from AS9PR07CA0051.eurprd07.prod.outlook.com (2603:10a6:20b:46b::16)
 by AS8PR08MB9071.eurprd08.prod.outlook.com (2603:10a6:20b:5c1::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 28 Sep
 2023 09:11:30 +0000
Received: from AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:46b:cafe::69) by AS9PR07CA0051.outlook.office365.com
 (2603:10a6:20b:46b::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.13 via Frontend
 Transport; Thu, 28 Sep 2023 09:11:30 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT063.mail.protection.outlook.com (100.127.140.221) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.21 via Frontend Transport; Thu, 28 Sep 2023 09:11:29 +0000
Received: ("Tessian outbound ee9c7f88acf7:v211");
 Thu, 28 Sep 2023 09:11:29 +0000
Received: from b229d2465802.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 14F85139-130D-4323-8F00-C109FD94C63B.1; 
 Thu, 28 Sep 2023 09:11:18 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b229d2465802.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 28 Sep 2023 09:11:18 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com (2603:10a6:20b:85::25)
 by AS8PR08MB9148.eurprd08.prod.outlook.com (2603:10a6:20b:57f::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 28 Sep
 2023 09:11:15 +0000
Received: from AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::30ea:681d:5fa7:8bfb]) by AM6PR08MB3784.eurprd08.prod.outlook.com
 ([fe80::30ea:681d:5fa7:8bfb%2]) with mapi id 15.20.6813.027; Thu, 28 Sep 2023
 09:11:15 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 048c65d6-5ddf-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iAPzE90dL9OQX53OaVeeCgxM9CGdm/CkDpxDOJlfpuw=;
 b=E++pCQXRt4CKJtnsnIT+nZVgy3JdyH3a3gMDP4aVavqS9UzE3oDxDEhynmU6crCYQyq8FExxL2Hlys3fLYKWzG/rB1CxsNNRsmfOfQdpaUXgLYW8f/4CgNVOwyzN9jvQxEtopR1inLVIZ/1vkx80Kvd00D/fMhVIL2jYpWYdb/c=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 1849e17d47198fc4
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=IpPywE9jYLAb9yFvCIs3pqdhZSAM1HDh9Zs75oS5r7RJjfTYRZ8ekhaq2vEPeA88axb2j3sQIEuk6tg9GBi6paBuU9/ZKJIPKhbSUnyQfMxiG/pcwoZFZdidOdzcEj+FCPcnCFZwwJqD9gJ6Te3h37EtRtccpsVxCsvhiUeeEFihkmqTOKUhA1qzgXwani0oy/9r9wUuLXXH0LOkcG0th5a8/9TSz5LAWW5QW/Em3bwmnP209Xt0j2pP8egX7PB4Axa/8YkIhtBaFYd2OAMm7l17N06UB9EG2GXGuE5YM28fKo+mCCwOonev1Hkrhc179wX9JcNMHZDcotWH2dbF0Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=iAPzE90dL9OQX53OaVeeCgxM9CGdm/CkDpxDOJlfpuw=;
 b=UbA8OWJrmhGaunMRWZP3SXha3NdIv+U4Aqw2EcmIgQUliJN/9g79TRtieYp5u1UdYoJaWwo8jOU9aUHJ2wKQLLFt1ohFIGqCXBK0ueDfbx2rX7ciQs0BHs5/smHzpMMV7iPdTCOqiJCMHX6oe/JXUiUsFPN8ZVDiTskTshXie4MmbFTGlJhbblDvBNgQ1pNBzb6p9pwqHrZ1LqJsAm5U6qef5leppDkhpFE+e/kpPjCmHfPJ7T7gqhj5L5GjLkpJzB2Q4KBQ3+jM3yl6BArmt/YImyVJ4kHTqTHJHN1dBn/4MHCxRf4qgMe/XShe7O4uS7tCpngZjUU1rLL2rka5lA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=iAPzE90dL9OQX53OaVeeCgxM9CGdm/CkDpxDOJlfpuw=;
 b=E++pCQXRt4CKJtnsnIT+nZVgy3JdyH3a3gMDP4aVavqS9UzE3oDxDEhynmU6crCYQyq8FExxL2Hlys3fLYKWzG/rB1CxsNNRsmfOfQdpaUXgLYW8f/4CgNVOwyzN9jvQxEtopR1inLVIZ/1vkx80Kvd00D/fMhVIL2jYpWYdb/c=
From: Bertrand Marquis <Bertrand.Marquis@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Jan Beulich <jbeulich@suse.com>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, "george.dunlap@citrix.com"
	<george.dunlap@citrix.com>, "roberto.bagnara@bugseng.com"
	<roberto.bagnara@bugseng.com>, "julien@xen.org" <julien@xen.org>, Stefano
 Stabellini <stefano.stabellini@amd.com>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH v3] docs/misra: add rule 2.1 exceptions
Thread-Topic: [PATCH v3] docs/misra: add rule 2.1 exceptions
Thread-Index:
 AQHZ4qiwUwH3koR9JUa91LeAyizAArAVxOqAgACZsICAGAuKgIAABdgAgAETh4CAAI6WgA==
Date: Thu, 28 Sep 2023 09:11:15 +0000
Message-ID: <0CAE1C36-7823-429B-8D29-1E7F9D69A06E@arm.com>
References: <20230908230318.1719290-1-sstabellini@kernel.org>
 <91d5ea6d-bdfa-45bf-a54b-5acdf1784ec4@xen.org>
 <alpine.DEB.2.22.394.2309111740160.1847660@ubuntu-linux-20-04-desktop>
 <156fac1ee8e37cddac95813f72a108e0@bugseng.com>
 <BEAF1369-C1FE-4B81-A0A1-5A4F39426E9E@arm.com>
 <alpine.DEB.2.22.394.2309271740280.1996340@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309271740280.1996340@ubuntu-linux-20-04-desktop>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3784:EE_|AS8PR08MB9148:EE_|AM7EUR03FT063:EE_|AS8PR08MB9071:EE_
X-MS-Office365-Filtering-Correlation-Id: ca8f3b41-2303-4784-ac28-08dbc002e6ec
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 2s/En6IF+lGkWYL2jmTm/sLEwQrMCCjgfL5hxXkO1Q7Lh3ozt0lbLt5JkHq12oYxCB+DHq9ZHHswLGpDrdti1x0xvJ0Mf2SKsCCekHCpeJYN6z98/f6RmzoHkajG4vP7zxlLjJrYu93nX4BhKDnK8swJ7RHqCCoR9+eOm4P3SKE5rdUN23AjWJv4VGeUujZJTalFVCPy9l4/fdtBtNv6PE+Kpm6XNEJ23OzbQ5zu7prkr4+hH/AfmSKcQ+stj/ucdT2nnfRqG4V37b67Ef42u7wrrmMAm0u/OY+i4Hwabwd16YXUpb4Y+Ebg7g68FBLeBkJzIy+3dr20mEng61jxq2pG9XMbrvAWht8Ozp5b2N4ibyGQeCcQPsj8SwpKzdfOhuesOrRYX+X1KuBfLBzMoqMXX0yEzUvULhYq8jh/U7PyQiSUWY65A/lgnngCgslhXUeQVvKN0uOwLM1S1MzaV07zjEUIW3doNvI5hVML+pXODOjlQexjDXBgsug1nsXB09/srBfbzIDDptMaauDIH7AxHVi5qzZi/VTSv2UuwdWKt/5uav9Hci4Fhs/vUY2yveCbTyFXnuitsD2PLQyYerdxbXs8AmdBNOEYodntZ7LNx4brzih8lAWuDzbHzPS+Wv/sqEFBUPjcekPqk+YPNA==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3784.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(396003)(366004)(346002)(376002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(5660300002)(76116006)(91956017)(66556008)(41300700001)(66476007)(64756008)(66946007)(66446008)(54906003)(316002)(2616005)(53546011)(478600001)(6506007)(71200400001)(6512007)(6486002)(2906002)(6916009)(8676002)(122000001)(7416002)(4326008)(38070700005)(8936002)(33656002)(966005)(36756003)(86362001)(38100700002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <E703E4F4B478EC42B9FCE1E24F8658DD@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9148
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	50b62348-d439-41c4-519a-08dbc002de6f
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3CYmalauatwGPbqLvtp/LNNXFPJtvFIFWJwhVpvqqx2hn/yBBi/rWzNxSUq6vxrMP1g7VHHdEMA4KujdHmKsyn4kjaUroSk/M0KuNRsr0QKRDthFPjVj35k0z8zwY791sRIxQFoh0GXSi2arOcZSFHKfpkVK4R6dw1sKBvwNUvdkDdx7qdyv2Dt2LcwVfi0Rf6lwa1tP71fzu7SJvZvya4JR+Npg5zRcZXzXYW8AizooViviiBY754RMcilAlRierkOdRqZniaY1r+YPx0oHr/9oB794fVAciCY8zwLxLGPFAuPN/fB8HbCDRfuSQt4s8Q1eMK80l+vV5zlajMrOigpQ7k9hWklRGeUoczaPwVjwvXCXB4BrrVo6Yafh98ifDiEWhrwxGF/DeYNxs2vSjz80AMdiPuaHOavXLVqcyYO/hpfQFWBM4ouANEdPqV14/pC2MTzuwQP/DCVIpsqIUIta8a6m+J0ar5ZsIMb5oZW86xRVOLcYUm1xyP1zsUol75tsNnw+4PLCqgHzHRvbQRmJHxNmnjRV3NPTU3H3wjrxYaT5vu8xk5ZlBUgZYWALTZT1Te7GmdQmbRdm9HQ/RWkGS1pL5QQnhl1Jjb3YHNu1+FoNWcwwCxAv50lVQsP0wiJUaIAYTkMdVFu3YQlSyRsHyMMtOg5jg7u7dXcHpJ3vyA5c2pAAk6Cs2XYaH6nJlBqB8+T3dm4v0BogmglOf2Ip0Nya5rzQmn5uVUWLFBc=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(136003)(346002)(376002)(230922051799003)(186009)(64100799003)(1800799009)(82310400011)(451199024)(46966006)(36840700001)(40470700004)(2616005)(336012)(26005)(53546011)(6506007)(6512007)(36860700001)(47076005)(86362001)(81166007)(82740400003)(36756003)(40480700001)(356005)(33656002)(40460700003)(70586007)(70206006)(2906002)(54906003)(316002)(8936002)(41300700001)(8676002)(4326008)(6862004)(5660300002)(966005)(478600001)(6486002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 09:11:29.9013
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: ca8f3b41-2303-4784-ac28-08dbc002e6ec
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT063.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9071



> On 28 Sep 2023, at 02:40, Stefano Stabellini <sstabellini@kernel.org> wro=
te:
>=20
> On Wed, 27 Sep 2023, Bertrand Marquis wrote:
>>> On 27 Sep 2023, at 09:53, Nicola Vetrini <nicola.vetrini@bugseng.com> w=
rote:
>>>=20
>>>>>> diff --git a/xen/arch/arm/psci.c b/xen/arch/arm/psci.c
>>>>>> index 695d2fa1f1..2a8527cacc 100644
>>>>>> --- a/xen/arch/arm/psci.c
>>>>>> +++ b/xen/arch/arm/psci.c
>>>>>> @@ -59,6 +59,7 @@ void call_psci_cpu_off(void)
>>>>>>      }
>>>>>>  }
>>>>>>  +/* SAF-2-safe */
>>>>> I think any use of SAF-2-safe should be accompanied with an attribute=
...
>>>>>>  void call_psci_system_off(void)
>>>>> ... noreturn for function or ...
>>>>>>  {
>>>>>>      if ( psci_ver > PSCI_VERSION(0, 1) )
>>>>>> diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
>>>>>> index 7619544d14..47e0f59024 100644
>>>>>> --- a/xen/arch/x86/shutdown.c
>>>>>> +++ b/xen/arch/x86/shutdown.c
>>>>>> @@ -118,6 +118,7 @@ static inline void kb_wait(void)
>>>>>>              break;
>>>>>>  }
>>>>>>  +/* SAF-2-safe */
>>>>>>  static void noreturn cf_check __machine_halt(void *unused)
>>>>>>  {
>>>>>>      local_irq_disable();
>>>>>> diff --git a/xen/include/xen/bug.h b/xen/include/xen/bug.h
>>>>>> index e8a4eea71a..d47c54f034 100644
>>>>>> --- a/xen/include/xen/bug.h
>>>>>> +++ b/xen/include/xen/bug.h
>>>>>> @@ -117,6 +117,7 @@ struct bug_frame {
>>>>>>  #endif
>>>>>>    #ifndef BUG
>>>>>> +/* SAF-2-safe */
>>>>>>  #define BUG() do {                                              \
>>>>>>      BUG_FRAME(BUGFRAME_bug,  __LINE__, __FILE__, 0, NULL);      \
>>>>>>      unreachable();                                              \
>>>>> ... unreachable for macros. But the /* SAF-2-safe */ feels a little b=
it
>>>>> redundant when a function is marked as 'noreturn'.
>>>>> Is there any way to teach eclair about noreturn?
>>>> Actually I had the same thought while writing this patch. If we can
>>>> adopt unreachable and noreturn consistently maybe we don't need
>>>> SAF-2-safe. If the checker can support it.
>>>> Nicola, what do you think?
>>>=20
>>> A couple of remarks:
>>> - if you put the noreturn attribute on some functions, then surely the =
code after those is
>>> reported as unreachable. ECLAIR should pick up all forms of noreturn au=
tomatically; otherwise, a simple configuration can be used.
>>>=20
>>> - Note that the cause of unreachability in the vast majority of cases i=
s the call to
>>> __builtin_unreachable(), therefore a textual deviation on the definitio=
n of unreachable, plus
>>> a bit of ECLAIR configuration, can deviate it (to be clear, just the SA=
F comment is not
>>> sufficient, since deviations comments are meant to be applied at the to=
p expansion location,
>>> which is not on the macro definition).
>>> This is what it should look like, roughly:
>>>=20
>>> -config=3DMC3R1.R2.1,reports+=3D{deliberate, "any_area(any_loc(text(^<R=
EGEX>$, -1)))"}
>>>=20
>>> #if (!defined(__clang__) && (__GNUC__ =3D=3D 4) && (__GNUC_MINOR__ < 5)=
)
>>> /* SAF-2-safe */
>>> #define unreachable() do {} while (1)
>>> #else
>>> /* SAF-2-safe */
>>> #define unreachable() __builtin_unreachable()
>>> #endif
>>>=20
>>> where REGEX will match the translation of SAF-2-safe.
>>>=20
>>> However, this will then entail that *some* SAF comments are treated spe=
cially and, moreover,
>>> that some modification to the definition of unreachable won't work
>>> (e.g.
>>> #define M() __builtin_unreachable()
>>> /* SAF-2-safe */
>>> #define unreachable() M()
>>>=20
>>> My opinion is that it's far easier for this to be an eclair configurati=
on (which has the
>>> advantage not to depend on the exact definition of unreachable) and the=
n perhaps a comment
>>> above it explaining the situation.
>>=20
>> I agree here and it is easier to make an overall exception where we list=
 the cases
>> where this is acceptable (ie all flavors of unreacheable) and document t=
hat eclair
>> was configured using "xxxx" to handle this.
>=20
> In that case it looks like we all agree that we can go ahead with this
> patch with just the changes to docs/misra/rules.rst to add rule 2.1 and
> remove everything else. Which is v2 of this patch:
> https://marc.info/?l=3Dxen-devel&m=3D169283027729298
>=20
> Henry, can I get one more release-ack for v2 of this patch (only changes
> to docs/misra, no code changes)?
>=20
> Also Bertrand can you provide a formal Ack for v2?
>=20

Done, you just need to handle the comment from Julien for it.

Cheers
Bertrand

>=20
> I do think we should have a document to track this kind of deviations
> that are not managed by safe.json or exclude-list.json. But I think for
> now the rules.rst notes and the ECLAIR config file (which is under
> xen.git) will suffice.



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 09:28:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 09:28:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609396.948462 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlnJU-0005tT-OK; Thu, 28 Sep 2023 09:28:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609396.948462; Thu, 28 Sep 2023 09:28:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlnJU-0005tL-LM; Thu, 28 Sep 2023 09:28:04 +0000
Received: by outflank-mailman (input) for mailman id 609396;
 Thu, 28 Sep 2023 09:28:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJIK=FM=citrix.com=prvs=6283bbd10=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlnJT-0005tF-K8
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 09:28:03 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 504abf5c-5de1-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 11:28:01 +0200 (CEST)
Received: from mail-dm6nam11lp2169.outbound.protection.outlook.com (HELO
 NAM11-DM6-obe.outbound.protection.outlook.com) ([104.47.57.169])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 28 Sep 2023 05:27:57 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BY5PR03MB5316.namprd03.prod.outlook.com (2603:10b6:a03:220::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 09:27:52 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Thu, 28 Sep 2023
 09:27:52 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 504abf5c-5de1-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695893281;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=Yoo4vDOafjR4Mh7MJsww1hzSC+QIKXwtOqckr731rjA=;
  b=BCgcz3WJZhxeSg1A1q7wWaCrRfFZ7BYT/zy6rfMHH5VkQPvXT0MVdITc
   LZd2gDCc0Ctaj6+KH27AviA1E4CmtejVqNrOi+YENwYQjOvC7o29gdlLs
   pma6PITO3LQ/eRalesxGGlCpWvUptO+HbsdixMNKPw4s0ItdmrR2OXrPt
   w=;
X-CSE-ConnectionGUID: hfg0uwQ4QmmOA4SLqaQiyg==
X-CSE-MsgGUID: j80VDoFsQeqkhJhs1qtwNg==
X-IronPort-RemoteIP: 104.47.57.169
X-IronPort-MID: 124052886
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:jUYI5KxRO+bWnIEPiy96t+ftxyrEfRIJ4+MujC+fZmUNrF6WrkUAm
 2QXWDiBb/uLZ2GnedhxPISw9kpQvpOAm4BrQVY4pSAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s
 ppEOrEsCOhuExcwcz/0auCJQUFUjPzOHvykTrecZkidfCc8IA85kxVvhuUltYBhhNm9Emult
 Mj75sbSIzdJ4RYtWo4vw/zF8EgHUMja4mtC5QRvP6AT5TcyqlFOZH4hDfDpR5fHatE88t6SH
 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo
 Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KWFA+
 qQFNwlRVxWGoMvq+5aiQ9Btl8t2eaEHPKtH0p1h5RfwKK9/BLzmHeDN79Ie2yosjMdTG/qYf
 9AedTdkcBXHZVtIJ0sTD5U92uyvgxETcRUB8A7T+fVxvjeVlVIguFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WTxX6hCNJMfFG+3vw62GO/wUIIMRAPVluZoeLgk1Khfd0Kf
 iT4/QJr98De7neDTNPwQhm5q36spQMHVpxbFOhSwBGAzO/Y7hiUAkAATyVdc5o2uckuXzso2
 1SV2dTzClRHsqCRSH+b3qeZq3W1Iyd9BXQZeSYOQA8B4t/iiII+lBTCSpBkCqHdpsLxMSH9x
 XaNtidWr5Uei9QakZqy+1/viiip4JPOS2YICh7/W2uk6kZ1YdCjbonxsFzDt68efcCeU0WLu
 2UCl46G9ucSAJqRlSuLBuIQALWu4PXDOzrZ6bJyI6QcG/2W0ybLVehtDPtWfi+F7u5slefVX
 XLu
IronPort-HdrOrdr: A9a23:Ko9u0K1dInMxOJCYZkUSlwqjBGgkLtp133Aq2lEZdPUzSL38qy
 nOpoV46faQslwssR4b6LO90cW7MAjhHL9OkO8s1NWZLXPbUGrBFvAb0WKK+VSJcE3DH4ZmtJ
 uIGJIOb+EYY2IK6foSIzPVLz/j+rS6GWyT6ts2tE0dND2CopsP0y58CgKWVlJ7XxNHA51RLu
 vg2vZ6
X-Talos-CUID: 9a23:n5PkD2CUf+l5ql76Eylp+xYJBfl5S3jY616MGGuhAF9oWbLAHA==
X-Talos-MUID: 9a23:C21UZQsiCt5AByVxGM2nhmE6Cutvzb+XBVkOkbcGoJCdKTNWNGLI
X-IronPort-AV: E=Sophos;i="6.03,183,1694750400"; 
   d="scan'208";a="124052886"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Np9QR1CMFeN8UGmHCZGd5O/HiDxogcoHoO8GoIyNzUY6Zd+xKiNZjKaQ4uqfw9sUeE/zi+0mfqltfrSyUEZV3pIV9N8PjPpJInUajE/fuJyO34abw2b98f2IadwMa7q6mqTipB1whhFsldl8pW8ULDqExOIzMFXxq8isOkbqnw5zbhNODI3WBwBhlEP2y3q7zNPs7DaVd7tuQBaxVOZZZ4hc78W07gTZU3gIOxsc4lcDVrk+g1IiO6UdkCF4K9iLK8/yRLjHlOQNqYcZcXGY/w/iMK1ZnDTbBoxhlSTcF/42wSqMDpWpzn93HYneP4mlyg4o+ERexcQqHpILJk0LoQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=01StaotK0HgDkezeeS6/FMdcFVkO0Ft70QaH83mTi3Y=;
 b=HB8Rh9nXubOfb3ZiwC2znzpjZVCPkM7DpAkn3+RaL9FYWOyWOJ+bfvefYzizYS10GetjSrZp/7mtCd6eNe9C6i7DfdDnXrVeknj1wgJQZOQYJvzTBWN1M4Jb9UF4ovpviPTtPPdEC9WurTf3ZQ262oi+/xbAMEhuNOz0KPvjvaSkjPSTx61I5PqPvPkXWmg2fAlYIojIn7JNbth2IppEfeR2gl0T4wV+7mFoL2cI/9jlT13XYgSxraigggWkTAFlB66n5+j3zYXK7JGgIWMYkvi88CoodOWpoCYnp+7Mzq9k1EvGwpz9nNY5r6XchJqkeWO6BGnJ45YNGZLXjRapZA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=01StaotK0HgDkezeeS6/FMdcFVkO0Ft70QaH83mTi3Y=;
 b=hXwDNenzQIs6M0CxIy6RH3SQTbzKfBWAFrhugWumsvvajfotsmGh3SxKEuQ+mI6w9MtYi1DJHkdtpfT0mkFunxtX5cfh/8QhBeQo+M4JMiSa0Xm73burILBUDeXrW8TDYUioFMdg0T6m1jReBAvekC/BGyuHCZ9h5mofBEFTpf4=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 28 Sep 2023 11:27:47 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH v4 1/9] x86/shim: zap runstate and time area handles
 during shutdown
Message-ID: <ZRVHE5XADO4mBtN9@MacBookPdeRoger>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
 <91db0bae-5485-680c-ef95-7316328583a2@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <91db0bae-5485-680c-ef95-7316328583a2@suse.com>
X-ClientProxiedBy: LO4P123CA0598.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:295::22) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BY5PR03MB5316:EE_
X-MS-Office365-Filtering-Correlation-Id: 2823fc2b-c93c-4aae-55e1-08dbc0053081
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hRA2U12I5wXKE7QB6AB2xCLzHNeYBPU/pKXCP15EDpHpA3+0Uwr5hfHlMq1uuHNRo4TZOFo0UCV5+XLeYcvrKOT3E36d6eyi4Odwl/4W8PwrftXbieRxaiqxj0qna+y5yZLGLcl1lco+mCEP0lhODtQ57uPBHG3CsNLTBqMgGYnk6NmCd23vXl1dhqmezOKxACZbDb0q4ggbgrJF0iaW6XXA6RjbnxoOlJuy4gaVMrtV2jBMaPOuKlMRM8Spj4lWY83PPNqb1EC96cMgEkB4fICfxo59G6LZ1m4ugys1tsKY898FNzq7p+DDPE3HEszIrJnqm6NEqpEoo6r9Eee6lOcvsYC7DTrUnC0vwOTZLYklTHCQO+aOl5oKam9XLSBzfFbxKu9f2Whfs512X8kEskGY5HNuKf5SVe545TIN3utYkxSAFzQMClyQGbjCM+3EuAZ/ltX5TOtqUnfu6f1pz29K7TLUmaSbmw+EkQgSdunS2rHiP3+15O6boC4dxYn2P1z7UNHwAUtfobAY9hLrgcBEo4NP5UQWJCSwixEXw7cTJLW6cPaL/D9VQ3yE7nwm
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(136003)(346002)(39860400002)(396003)(366004)(376002)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(66946007)(6486002)(26005)(6506007)(9686003)(6512007)(85182001)(82960400001)(86362001)(38100700002)(8936002)(8676002)(4326008)(316002)(6916009)(83380400001)(41300700001)(66476007)(66556008)(54906003)(5660300002)(2906002)(4744005)(33716001)(478600001)(6666004);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?SVNnVHZjd0FFbUtJcmZENExkT3BMQVVUMnJaS1BPMEpKWHBOa3pLT3U3dmtx?=
 =?utf-8?B?QzdHdFErcVVNOEZyTWhHb3cxRHRMZ2g1MnZpZDNIR3FIL0hTTStSQXEzaEk1?=
 =?utf-8?B?Z2ZqczduMlgxcDYzMlg3aEpxTVRuRUs3SFJuUU53OEh0S3FQSk5XYmlOc1g1?=
 =?utf-8?B?dGlyL0xQZVI3ZmY4eWlHMVh6MWFZbFBNeXgwYmt3cXRMckR0TXhJSGFMNnhK?=
 =?utf-8?B?SktmM2htR3FmK3ZPekRKY3RnUkhlNDFuK0VNbFZUYVlvOGk5aHI3OGNDclNB?=
 =?utf-8?B?TmJQdU9VVG5tOW1YaEYrTHVqemMwVnU3TEI4Q1dCOTE0RDRmeXBQVEt2RTlX?=
 =?utf-8?B?cU42dzYyT28vTUZhM0FTNzcrS3Jkb1g5a0hmS1hOZ0NEb1NJRGw4Ti92RU04?=
 =?utf-8?B?TGtab2diTURtbXFlVmNZbzhQazBESFh4aVl6UkUyUWJIRUVBVytDbjBaWS9J?=
 =?utf-8?B?RUxwQ08yNDJRSlNhNml5MU1qTGkvM2t0dHFpZ1A3cnY3NUtyYlFSMzQzMHhn?=
 =?utf-8?B?MHV0Rjg1bHFJSVBCNVVpMlF5bEtkNjY0S3BTbFA0QXZ4bTgzZ2h1SDNHSjdr?=
 =?utf-8?B?Yk0rQ2ZTZkRlVlVWTnFqaTNGSG96Nll1b2QrSVFDMXBkKzY2WlhqdUhkUWty?=
 =?utf-8?B?b2lnWTJrSEcwZDNjRVRlTnMrM2dhVUZUWVVTNVlnQ1dldDFlNjJNalVhN0Yw?=
 =?utf-8?B?TnhSSkJpMlU4dDFuYjZtWTlQNlRoem8wUUJyS0lOVWJCWTE5REVySnF2Yjdl?=
 =?utf-8?B?U3UvOVRrUEY5dDhGL085bXJhcU81Sko2NExlbk02VG82QWtzS05NMEVyS2lU?=
 =?utf-8?B?Y0dNR1h0RjRuZ2VNUUIrNXk3Y2RFYkRvNU5kM0FqOHJ6cFdZeEVOWkgzTFJ2?=
 =?utf-8?B?VGl6SVlVMmlWb3d0V2tha1lNdEpnUW9aQXJsOThKQnozWmlOOGVPSU5rSGNz?=
 =?utf-8?B?V01rWVdvcW0yU2F0cHlaZDVWME0rWllSN3c0Q0J1SnovT1ZlN1dnVnJRVGhE?=
 =?utf-8?B?WnF2OXBETE42UjBEb0lKL3M3UEdZdUZOWm13bElmZWFSNDJ6N3ZLL1ZWMkdq?=
 =?utf-8?B?WWVYWGxXMUloKzdHbzZuTmVvQkRwaGM1MUxMb1lVYlpVZG1GNUthaEdLc25m?=
 =?utf-8?B?QXphSHV4c2x4YjJCa0tjK1p1bjQ0d1FQWWR2NlRoWi8vc0VFUjhVaWVoZ3c4?=
 =?utf-8?B?Y3FtbHQ3Y1ZlaUYwRjlvQitLNnRWUS9mVEh3SlN2bzBCUGNpcUQ2cmNjUUo2?=
 =?utf-8?B?YnhGQjBRTThpdVoydE1SMGYvcVFLOFV3aHhzS3RDR0NZaEx6MUtYZmhQeDhU?=
 =?utf-8?B?ZC9LTEhUMS9MOXpwQnNFS3daeVFxdUV0N2lIWXBTLzN6aWZ2L3VDWjFnTkRw?=
 =?utf-8?B?ckNXcEg1OCtlenlNcUtsVWg4cHdrS3hCMWltcDJPZVVRSW9HRlZBdldSd3NV?=
 =?utf-8?B?YW5paHdrWnU5dDRGZDJWT0dWODZZb3MzNWxzQkRpSTZWMmZ5UkE3RHFaY1BB?=
 =?utf-8?B?dzMyOWorMTRTYWdSbk1GWlNueG5JNk5hK3ltUGEzb3VudjRpc3ZOdEFnSDlx?=
 =?utf-8?B?MGlRZUhUSGpMT3lyK05jUjhtVm9UZVJDVWFqak5hakxGVkkrM1hjNkJla1cr?=
 =?utf-8?B?YlE0UjJuS25rUi9VbDY3bER6N2dqa0IvSk4zL0ZqT2VXODByd05qWDh0VkZ1?=
 =?utf-8?B?R3JEZUlRQnRPci9CeW5LQzF1TTBRQXZtS2x0TExjeExISVNEb2FiaGhNZzJr?=
 =?utf-8?B?Rk5jSWJBMkNMaWNXMUN1V3FtSHlNMkh3UnlHdlhJN2F5dzFHUTRmeENIMmdy?=
 =?utf-8?B?TFFHaWhUWXpsYXZCRmNHTVpYdHZ0cVlGbWNFUFpuQzRsYUJyd1dTRGxqK2lH?=
 =?utf-8?B?USs4S1ZCMmN5UGJ6SEV3SFZ5ODFhaUVDcXFIWGlTLzhUaFVRTDZzRngwZzU4?=
 =?utf-8?B?NmpKMC94SzR5OHRUR3JLaUZiWFZTd3RDOExoUTJ5YjVzcTdqcUdndWdYc0JG?=
 =?utf-8?B?Yi9ra0ttUDRkRDlyd1NJaS82WjdqYVpObVV2R3VJd3FpRUtJeGJYSlNyN2Fw?=
 =?utf-8?B?RGlNZFNrR3Z5YVNYUk1PK1hFYTRMVXEyT2VHWGNtTVYrNHZVNWFWMFRsZ0NW?=
 =?utf-8?B?UnBVajYzQXp5dU5oTmpsdVJybjNiejBJUWxoQ094aUFYc1JqaEtCdENlTXhH?=
 =?utf-8?B?UXc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	p5+iJtOoMSWorC+XzTCHoRxArK4t64gtwjNYnger+pNtS5zWm7wMwXIK+I+ZT24UUMW1+iIeiRzaDgT6sqLpKu3VN0rReYXFuHdmSYzZ0KAwZWJg+QewIOgTZv8M9I8lLGP1hUjjFZUGgGzZCs6b39Bo4GrjFoh359CLdnUMYke2ywLYOJ4ZbCEWus9k7LHCgtO1gKY8k/Hbt5/7dTbVv6Vh/RqhVeM/kMnJdstmQMCllR2v0rqHNvhg7IGxn2HUC7sAeBDJd3RzPYnLKn2cED+OC1cV+jSXRkQGSSIaHLZeQaUcxja0m9gHn5gcd6SWduQXqEhmdyk13fN0M2+SXjz2bXDt7phbtQc/WbSMqcHU6C0gN43zFAJGG6C7wIcz2raCjtDRY6cjErFk2A7jgkEVka3u+ueBKJhC/2Y5R2BZV83b93eA0g8FenVWS9TWZDM0Wv5q5rUJIswQIlhpsK4wxFYvPAuIOwfUzvhUM/ZmjZildLVh8OOntOLHIeLScEOrfbJpdP7hKcevpELCwjOpbkcIiuAXsN4yBGVteVLaA8KZeEG0Wa/bfiUdJyKXy2aB6y86vgJ4Mp6fG6+y2t0FT8gJZSgnGfvI2+bIlJf0sE+1wA/16+lckFCVA1q/V42B08M/KS+j/Z11HKj2cM+C23SSWc4bB643p62TAEeHo4q8hrp24OZa8FyKAVeShWi8APbL64xashd31c8q5UKcWdjh+3471S+8gt5Pea0MyW9f5VC56vpmMYseZvcDgThFn8mlwIqZXYmpmzPGNerWcpU3UhLEINdwMiJJpcXbRG80zRN14Z3xVl/FHFVmHsGyYxLQpiZlJ+IGks2q2tJbXDfv3QIrXWLhTTawMle4MPl0cqnLXgVy/v2oFUMO
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 2823fc2b-c93c-4aae-55e1-08dbc0053081
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 09:27:52.5729
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: K22oXkzdAxZmHSqDgkewWBhhEsO4imJ6oyxR6bCaHyNTR+u5XsBQO0+MTa7NBEs3PHU85dM4ovdMiYmleVO/aA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR03MB5316

On Thu, Sep 28, 2023 at 09:01:53AM +0200, Jan Beulich wrote:
> While likely the guest would just re-register the same areas after
> a possible resume, let's not take this for granted and avoid the risk of
> otherwise corrupting guest memory.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 09:29:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 09:29:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609400.948472 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlnKX-0006Om-2a; Thu, 28 Sep 2023 09:29:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609400.948472; Thu, 28 Sep 2023 09:29:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlnKW-0006Of-Vy; Thu, 28 Sep 2023 09:29:08 +0000
Received: by outflank-mailman (input) for mailman id 609400;
 Thu, 28 Sep 2023 09:29:08 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=np3/=FM=gmail.com=oleshiiwood@srs-se1.protection.inumbo.net>)
 id 1qlnKV-0006OV-R6
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 09:29:07 +0000
Received: from mail-ed1-x534.google.com (mail-ed1-x534.google.com
 [2a00:1450:4864:20::534])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7887ce5c-5de1-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 11:29:06 +0200 (CEST)
Received: by mail-ed1-x534.google.com with SMTP id
 4fb4d7f45d1cf-533c8f8f91dso12289361a12.0
 for <xen-devel@lists.xenproject.org>; Thu, 28 Sep 2023 02:29:06 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7887ce5c-5de1-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695893346; x=1696498146; darn=lists.xenproject.org;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:from:to:cc:subject:date:message-id:reply-to;
        bh=KHRJXD7DiRS40s3/8QZnjCp2rbNIRcGZKRJ74EW+bgk=;
        b=a1Iwa1jwhR/YtwksfeSyZlJG9OZUMuPZzx7jGJBvB8OT9avi3jFac5IkQrPVSfK/ff
         nasO5EfXCXL/Ilux/EVd686KoE0YqCBcWUvQQj3ZnMrZQNqZHHnI0rs+LXbKuifnWBas
         AkWCPpKZsSCX+YI1elt4BjdgOCypMPNrXGszi8njewQHSOhXU/fcHEmPmo3/azMmiWo8
         Offa9101y2hKZdNuWqEC0Wk4oqrVYHDQnM365VomLGnnpVQnnXh5gWKsak/8UGwRYVa1
         x2Me5/V5Vj3RSbW1a7QjXDUXGQ/t7V2If5Sc465CSO6jKlCLIcpIse5UUmPO/kp6hL4y
         8eXQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695893346; x=1696498146;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=KHRJXD7DiRS40s3/8QZnjCp2rbNIRcGZKRJ74EW+bgk=;
        b=sFKwDd70aHHAvGp55ik/tyJpSZYKJvmJlrIKZdEvmIxtDH741IotGIbupsazzOMDGf
         KA2eUz/lK4sEjHIFhUt8REtGJSmOqcpLwvTOSfPr0+NBG8zqse0BE4Ggyg0EGhZOK+tw
         c3Q1LAeipZq4TXnNr/9MN7blZbZKFB8dS9n2G42/vZ0ysxfbY0AlRtZYcdmwghepRCQA
         2JcPmH2jNggsOKoIRmh11pPvwqcb/MNrs/arpRwYQWqnZrFbCAv5rgBzkJGuCUlgaUCR
         6A94I7p9GTh/I5IgaHUMy9bGpqJcoKofn+X4O/FsX8+B9nJp6GIx3WZ/pkYcCYPCpoAQ
         OyDA==
X-Gm-Message-State: AOJu0YwK52uKKVqIl9qqk7lnnMdzT6rALEol8gOMC8IdVZ3LyCK7hgUf
	T2b4hS+uzGrtMPWAai0h2cVdWO6QCKj3R8gFh6U=
X-Google-Smtp-Source: AGHT+IHGy7HIbVdVgdFn+o4Rai6ZOxww0cBR30dFqZ2nNVkcO/8QC48zWAoTDwjFliQwl81aKxqNFMMPPcilzgrHJuI=
X-Received: by 2002:a17:907:985b:b0:9ae:55f5:180a with SMTP id
 jj27-20020a170907985b00b009ae55f5180amr749229ejc.9.1695893345889; Thu, 28 Sep
 2023 02:29:05 -0700 (PDT)
MIME-Version: 1.0
References: <CA+SAi2tXMupikB2YgEXuq98KnOcqm6zWrk19rNvWTfzf2=ku-w@mail.gmail.com>
 <dba88398-3aef-4541-a8e8-8fd075c0d40e@xen.org>
In-Reply-To: <dba88398-3aef-4541-a8e8-8fd075c0d40e@xen.org>
From: Oleg Nikitenko <oleshiiwood@gmail.com>
Date: Thu, 28 Sep 2023 12:36:01 +0300
Message-ID: <CA+SAi2tHLVDj+q8KMD7OuhHoj0sSZ-39qs3Z94WGmL2OA3TM_g@mail.gmail.com>
Subject: Re: changing Dom0 data during smc call inside of xen during cache coloring
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org, 
	Bertrand Marquis <bertrand.marquis@arm.com>, Stefano Stabellini <sstabellini@kernel.org>
Content-Type: multipart/alternative; boundary="000000000000757301060667f067"

--000000000000757301060667f067
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hello Julien,

I am still fighting with xen Cache Coloring with aes.
When I sent a request to hardware aes after xen with CC started I got the
mistake in CSU.
When I dumped structure contents on both sides I got the different data.
Xilinx related contact wrote to me.

When cache coloring is enabled, Dom0 is not 1:1 mapped (guest physical
addresses in Dom0 !=3D physical addresses). If the Xilinx drivers in Linux
(xcsudma.c) issue EEMI calls with a guest physical address (for instance
the address of a memory buffer allocated by Linux), then this address is no
longer a physical address and would need to be translated. EEMI calls
always get forwarded to Xen first, then Xen issues a corresponding EEMI
call to the firmware (see
xen/arch/arm/platforms/xilinx-eemi.c:xilinx_eemi). But Xen is probably
passing the EEMI calls parameters unmodified. Then PMU tries to read the
address but since this is not a physical address, it fails. Basically we
need to add code to Xen xen/arch/arm/platforms/xilinx-eemi.c:xilinx_eemi to
translate any guest physical addresses passed as EEMI calls arguments into
physical addresses before making the EEMI call to firmware.

This is an example patch, which is translating the parameter on register x2
for the EEMI call 0xC200002F. I haven't checked the EEMI protocol for this
call but this just an example to show you how to translate parameters.

diff --git a/xen/arch/arm/platforms/xilinx-eemi.c
b/xen/arch/arm/platforms/xilinx-eemi.c index 500c86dc69..bff1b71196 100644
--- a/xen/arch/arm/platforms/xilinx-eemi.c +++
b/xen/arch/arm/platforms/xilinx-eemi.c @@ -409,6 +409,30 @@ bool
xilinx_eemi(struct cpu_user_regs *regs, const uint32_t fid, } goto
forward_to_fw;

   - case 0xC200002F:
   - {
   - uint64_t example_possible_address_param =3D get_user_reg(regs, 2);
   - uint64_t translated_address =3D mfn_to_maddr(gfn_to_mfn(current->domai=
n,
   - gaddr_to_gfn(example_possible_address_param)));
   - translated_address +=3D example_possible_address_param & ~PAGE_MASK; +
   - arm_smccc_1_1_smc(get_user_reg(regs, 0),
   - get_user_reg(regs, 1),
   - translated_address,
   - get_user_reg(regs, 3),
   - get_user_reg(regs, 4),
   - get_user_reg(regs, 5),
   - get_user_reg(regs, 6),
   - get_user_reg(regs, 7),
   - &res); +
   - set_user_reg(regs, 0, res.a0);
   - set_user_reg(regs, 1, res.a1);
   - set_user_reg(regs, 2, res.a2);
   - set_user_reg(regs, 3, res.a3);
   - return true;
   - }

+ default: if ( is_hardware_domain(current->domain) ) goto forward_to_fw;
The aes request structure contains physical addresses of the source and
destination.
These addresses are obtained via two calls dma_alloc_coherent.
The address of this structure is kept at x2 register.
I applied the suggested scheme in xen for xilinx_eemi(...) function.

case 0xC200002F:
{
uint64_t paramaddr =3D get_user_reg(regs, 2);
uint64_t phyaddr =3D mfn_to_maddr(gfn_to_mfn(current->domain,
gaddr_to_gfn(paramaddr)));
phyaddr +=3D (paramaddr & ~PAGE_MASK);
gprintk(XENLOG_DEBUG, "Forwarding AES operation: %u r2 %lx -> %lx\n", fid,
paramaddr, phyaddr);
set_user_reg(regs, 2, phyaddr);
}
goto forward_to_fw;

As a result I got the same issue as earlier.

[   17.350086]
zynq_aes_gcm
user log

[   17.350202] @ dma_alloc firmware:zynqmp-firmware:zynqmp-aes
@                                                       kernel log from Dom=
0
[   17.353015] @@@ firmware:zynqmp-firmware:zynqmp-aes 0 @@@
[   17.358515] zynqmp_aes [0] ffffffc00910d000 2806000
firmware:zynqmp-firmware:zynqmp-aes
[   17.366546] @ dma_alloc firmware:zynqmp-firmware:zynqmp-aes @
[   17.372347] @@@ firmware:zynqmp-firmware:zynqmp-aes 0 @@@
[   17.377775] zynqmp_aes [1] ffffffc009115000 42a14000 keytype 1
[   17.383660] zynqmp_aes [2] dump request align 1 ++
[   17.388501] 00 60 80 02 00 00 00 00
[   17.392032] 50 60 80 02 00 00 00 00
[   17.395583] 00 00 00 00 00 00 00 00
[   17.399117] 00 60 80 02 00 00 00 00
[   17.402664] 40 00 00 00 00 00 00 00
[   17.406226] 00 00 00 00 00 00 00 00
[   17.409755] 01 00 00 00 00 00 00 00
[   17.413311] zynqmp_aes [3] dump request --

(XEN) d0v1 Forwarding AES operation: 3254779951 r2 0 ->
11432000                                                        log from xe=
n

@ 000042A14000
@
csu log from aes
04 E4 00 6F 05 E4 00 6F
06 E4 00 6F 07 E4 00 6F
10 E4 00 6F 11 E4 00 6F
12 E4 00 6F 13 E4 00 6F
14 E4 00 6F 15 E4 00 6F
16 E4 00 6F 17 E4 00 6F
18 E4 00 6F 19 E4 00 6F

ERROR:   pm_aes_engine ### args 6 ret 0 addr 0 42a14000
###                                                                ATF log

So the address of the structure was not changed.
This is the question.
How can I map this address to xen and change physical addresses there ?

Regards,
Oleg Nikitenko

=D1=87=D1=82, 28 =D1=81=D0=B5=D0=BD=D1=82. 2023=E2=80=AF=D0=B3. =D0=B2 11:1=
5, Julien Grall <julien@xen.org>:

> On 27/09/2023 11:07, Oleg Nikitenko wrote:
> > Hello,
>
> Hi,
>
> > It is necessary to change some structure contents from xen.
> > I have access to the registers.
> > One of them keeps the physical address of the structure.
> > But this physical address is valid for Dom0 only.
> > Dom0 kernel gets it by the call dma_alloc_coherent
> > A lower mentioned scheme does not work.
>
> It is not clear to me what you mean by does not work. Are you getting
> the wrong address?
>
> >
> >              uint64_t paramaddr =3D (uint64_t)get_user_reg(regs, 2);
> >              uint64_t phyaddr =3D mfn_to_maddr(gfn_to_mfn(current->doma=
in,
> >                  gaddr_to_gfn(paramaddr)));
> >              phyaddr +=3D (paramaddr & ~PAGE_MASK);
>
> Can you provide a bit more context of what are you trying to do with
> phyaddr afterwards? Are you trying to map it in Xen?
>
> Cheers,
>
> --
> Julien Grall
>

--000000000000757301060667f067
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hello Julien,</div><div><br></div><div>I am still fig=
hting with xen Cache Coloring with aes.</div><div>When I sent a request to =
hardware aes after xen with CC started I got the mistake in CSU.</div><div>=
When I dumped structure contents on both sides I got the different data.</d=
iv><div>Xilinx related contact wrote to me.</div><div><p>When cache colorin=
g is enabled, Dom0 is not 1:1 mapped (guest physical addresses in Dom0 !=3D=
 physical addresses).
If the Xilinx drivers in Linux (xcsudma.c) issue EEMI calls with a guest ph=
ysical address (for instance the address of a memory buffer allocated by Li=
nux),
then this address is no longer a physical address and would need to be tran=
slated.
EEMI calls always get forwarded to Xen first, then Xen issues a correspondi=
ng EEMI call to the firmware (see xen/arch/arm/platforms/xilinx-eemi.c:xili=
nx_eemi).
But Xen is probably passing the EEMI calls parameters unmodified.=20
Then PMU tries to read the address but since this is not a physical address=
, it fails.
Basically we need to add code to Xen xen/arch/arm/platforms/xilinx-eemi.c:x=
ilinx_eemi to translate any guest physical addresses passed as EEMI calls a=
rguments into physical addresses before making the EEMI call to firmware.</=
p>
<p>This is an example patch, which is translating the parameter on register=
 x2 for the EEMI call 0xC200002F.
I haven&#39;t checked the EEMI protocol for this call but this just an exam=
ple to show you how to translate parameters.</p>
<p>diff --git a/xen/arch/arm/platforms/xilinx-eemi.c b/xen/arch/arm/platfor=
ms/xilinx-eemi.c
index 500c86dc69..bff1b71196 100644
--- a/xen/arch/arm/platforms/xilinx-eemi.c
+++ b/xen/arch/arm/platforms/xilinx-eemi.c
@@ -409,6 +409,30 @@ bool xilinx_eemi(struct cpu_user_regs *regs, const uin=
t32_t fid,
         }
         goto forward_to_fw;
 </p>
<ul><li><span>case 0xC200002F:</span></li><li><span>{</span></li><li><span>=
uint64_t example_possible_address_param =3D get_user_reg(regs, 2);</span></=
li><li><span>uint64_t translated_address =3D mfn_to_maddr(gfn_to_mfn(curren=
t-&gt;domain,</span></li><li><span>gaddr_to_gfn(example_possible_address_pa=
ram)));</span></li><li><span>translated_address +=3D example_possible_addre=
ss_param &amp; ~PAGE_MASK;
+</span></li><li><span>arm_smccc_1_1_smc(get_user_reg(regs, 0),</span></li>=
<li><span>get_user_reg(regs, 1),</span></li><li><span>translated_address,</=
span></li><li><span>get_user_reg(regs, 3),</span></li><li><span>get_user_re=
g(regs, 4),</span></li><li><span>get_user_reg(regs, 5),</span></li><li><spa=
n>get_user_reg(regs, 6),</span></li><li><span>get_user_reg(regs, 7),</span>=
</li><li><span>&amp;res);
+</span></li><li><span>set_user_reg(regs, 0, res.a0);</span></li><li><span>=
set_user_reg(regs, 1, res.a1);</span></li><li><span>set_user_reg(regs, 2, r=
es.a2);</span></li><li><span>set_user_reg(regs, 3, res.a3);</span></li><li>=
<span>return true;</span></li><li><span>}</span></li></ul><p>+
     default:
         if ( is_hardware_domain(current-&gt;domain) )
             goto forward_to_fw;</p></div><div></div><div>The aes request s=
tructure contains physical addresses of the source and destination.</div><d=
iv>These addresses are obtained via two calls dma_alloc_coherent.<br></div>=
<div>The address of this structure is kept at x2 register.</div><div>I appl=
ied the suggested scheme in xen for xilinx_eemi(...) function.</div><div></=
div><div><br></div><div>case 0xC200002F:<br>{<br>uint64_t paramaddr =3D get=
_user_reg(regs, 2);<br>uint64_t phyaddr =3D mfn_to_maddr(gfn_to_mfn(current=
-&gt;domain, gaddr_to_gfn(paramaddr)));<br>phyaddr +=3D (paramaddr &amp; ~P=
AGE_MASK);<br>gprintk(XENLOG_DEBUG, &quot;Forwarding AES operation: %u r2 %=
lx -&gt; %lx\n&quot;, fid, paramaddr, phyaddr);<br>set_user_reg(regs, 2, ph=
yaddr);<br>}<br>goto forward_to_fw;<br></div><div><br></div><div>As a resul=
t I got the same issue as earlier.</div><div><br></div><div>[ =C2=A0 17.350=
086] zynq_aes_gcm=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 user log</div><di=
v><br>[ =C2=A0 17.350202] @ dma_alloc firmware:zynqmp-firmware:zynqmp-aes @=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0 kernel log from Dom0<br>[ =C2=A0 17.353015] @@@ fi=
rmware:zynqmp-firmware:zynqmp-aes 0 @@@<br>[ =C2=A0 17.358515] zynqmp_aes [=
0] ffffffc00910d000 2806000 firmware:zynqmp-firmware:zynqmp-aes<br>[ =C2=A0=
 17.366546] @ dma_alloc firmware:zynqmp-firmware:zynqmp-aes @<br>[ =C2=A0 1=
7.372347] @@@ firmware:zynqmp-firmware:zynqmp-aes 0 @@@<br>[ =C2=A0 17.3777=
75] zynqmp_aes [1] ffffffc009115000 42a14000 keytype 1<br>[ =C2=A0 17.38366=
0] zynqmp_aes [2] dump request align 1 ++<br>[ =C2=A0 17.388501] 00 60 80 0=
2 00 00 00 00<br>[ =C2=A0 17.392032] 50 60 80 02 00 00 00 00<br>[ =C2=A0 17=
.395583] 00 00 00 00 00 00 00 00<br>[ =C2=A0 17.399117] 00 60 80 02 00 00 0=
0 00<br>[ =C2=A0 17.402664] 40 00 00 00 00 00 00 00<br>[ =C2=A0 17.406226] =
00 00 00 00 00 00 00 00<br>[ =C2=A0 17.409755] 01 00 00 00 00 00 00 00<br>[=
 =C2=A0 17.413311] zynqmp_aes [3] dump request --<br></div><div><br></div><=
div>(XEN) d0v1 Forwarding AES operation: 3254779951 r2 0 -&gt; 11432000=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0 log from xen<br></div><div><br></div><div>@ 000=
042A14000 @=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 csu log from a=
es<br>04 E4 00 6F 05 E4 00 6F<br>06 E4 00 6F 07 E4 00 6F<br>10 E4 00 6F 11 =
E4 00 6F<br>12 E4 00 6F 13 E4 00 6F<br>14 E4 00 6F 15 E4 00 6F<br>16 E4 00 =
6F 17 E4 00 6F<br>18 E4 00 6F 19 E4 00 6F</div><div><br>ERROR: =C2=A0 pm_ae=
s_engine ### args 6 ret 0 addr 0 42a14000 ###=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ATF log<br></div><div><br>=
</div><div>So the address of the structure was not changed.</div><div>This =
is the question.=C2=A0</div><div>How can I map this address to xen and chan=
ge physical addresses there ?</div><div><br></div><div>Regards,</div><div>O=
leg Nikitenko<br></div><div><br></div><div>=D1=87=D1=82, 28 =D1=81=D0=B5=D0=
=BD=D1=82. 2023=E2=80=AF=D0=B3. =D0=B2 11:15, Julien Grall &lt;<a href=3D"m=
ailto:julien@xen.org" target=3D"_blank">julien@xen.org</a>&gt;:</div><div c=
lass=3D"gmail_quote"><blockquote class=3D"gmail_quote" style=3D"margin:0px =
0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 2=
7/09/2023 11:07, Oleg Nikitenko wrote:<br>
&gt; Hello,<br>
<br>
Hi,<br>
<br>
&gt; It is necessary to change some structure contents from xen.<br>
&gt; I have access to the registers.<br>
&gt; One of them keeps the physical address of the structure.<br>
&gt; But this physical address is valid for Dom0 only.<br>
&gt; Dom0 kernel gets it by the call dma_alloc_coherent<br>
&gt; A lower mentioned scheme does not work.<br>
<br>
It is not clear to me what you mean by does not work. Are you getting <br>
the wrong address?<br>
<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 uint64_t paramaddr =3D=
 (uint64_t)get_user_reg(regs, 2);<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 uint64_t phyaddr =3D m=
fn_to_maddr(gfn_to_mfn(current-&gt;domain,<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 gaddr_to=
_gfn(paramaddr)));<br>
&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 phyaddr +=3D (paramadd=
r &amp; ~PAGE_MASK);<br>
<br>
Can you provide a bit more context of what are you trying to do with <br>
phyaddr afterwards? Are you trying to map it in Xen?<br>
<br>
Cheers,<br>
<br>
-- <br>
Julien Grall<br>
</blockquote></div></div>

--000000000000757301060667f067--


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 09:32:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 09:32:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609406.948482 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlnNl-0008D8-Mg; Thu, 28 Sep 2023 09:32:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609406.948482; Thu, 28 Sep 2023 09:32:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlnNl-0008D1-JW; Thu, 28 Sep 2023 09:32:29 +0000
Received: by outflank-mailman (input) for mailman id 609406;
 Thu, 28 Sep 2023 09:32:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlnNl-0008Cv-1i
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 09:32:29 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on20618.outbound.protection.outlook.com
 [2a01:111:f400:fe16::618])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id efbc1109-5de1-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 11:32:26 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB9277.eurprd04.prod.outlook.com (2603:10a6:102:2b9::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 09:32:24 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 09:32:24 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: efbc1109-5de1-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=duM5Qym1gqXbhM3Rkx8B3fLFvNV0lD5xjVuOzAvo9QgYo8g7bjCVShXxcodkSyUP7/Vs8fqd8ZKbDEoFCAt2mDSOhqla+UZkcZLgqDIOGE+dSkb0Cnwx0MDKg7YZP2ngprQEOoXcEFK8/SFIEVBfZO/N5Aybk2p30q8dV/3NC5cd6z6/l+ZLn+iwnyqLL0VaRq5cZvNccLt4HBxPM22OCOui+8qzZ7AJDJiaelogTbEGTQQizFFKs7USFkHCJF4DWzgf4Zfwj2ESHjp/OEIh9nw/HN42oTuCKGpk+d7cNAHXYXX70rhxug/Y3nvvAykSadQbMxihh248Jf6ck3+I/g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6NFRCU9QRcYEtzo4mdkDhqekqVC3/HznqijbN/lqlhw=;
 b=WIveFWMuTAhRRgn2RR/1gvDeY5vtOGI4OMbdw+/VqtTsnSp0cyk7Gmih4yk5UPsvmMDxT2HRk6ZYfSmHhai5+kNwRG+lGxjsxGR1QZbqDTcz+ixTXgG4zlkDrWoRN2PnVzbybskqyTJEioASHjT36RZ52rsStWI+BsQ8TqgR9joYzUzqJuV+MKnBSkGYgFoTx0Nh6TtlvxfPNakLQPhqsdkNgxWA/Zz+eptCRggTAHPVef30W3+CDtoiWWKcYmY64i27Nah+aQ8s7weh6mjWiWdsUjqgA6VYlUtO2+HevBpDC+gQmopif0woy2p/li9frMjn/z8jQJ5Af+tzjfrfYQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6NFRCU9QRcYEtzo4mdkDhqekqVC3/HznqijbN/lqlhw=;
 b=rVdw6mf2ntnX/OSyXNoWRvqE0wjSmIbZx6KSdeY/nCvW+0W8UMiNHfE6QTJO+ZaDsti509CUqjv6Q+mLvU1NYxGG4Q8H9QgzmEyP4FexP3iAcRhcv6q0tynk+WHylGpsS3HS6rdUOv/hHe5fpvTiKywNr0V1UXtQVdyBt2cI7qFBFukVl2GkUNZpr6yUVJd0KHDEWQHtTkcbu+M8lCezc7dU6455kfYWAwByGw4kdftbju2K/AO+159qKzFV+BsXEJ8pJAhoWctkGYJZN31NKye/Ya69xWLRmLgsYrNzj2k3HokRH1VZrRVCraZpJ8osILsye/f6eFEyv4Fd9uhYig==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e1cc81b4-d990-b995-a24a-ba80c1e970ba@suse.com>
Date: Thu, 28 Sep 2023 11:32:22 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3] SUPPORT: downgrade Physical CPU Hotplug to
 Experimental
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, andrew.cooper3@citrix.com,
 george.dunlap@citrix.com, julien@xen.org, bertrand.marquis@arm.com,
 wl@xen.org, Stefano Stabellini <stefano.stabellini@amd.com>
References: <20230927232004.1981595-1-sstabellini@kernel.org>
 <ZRU6A2wDSVEEHGbK@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRU6A2wDSVEEHGbK@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0181.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ca::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB9277:EE_
X-MS-Office365-Filtering-Correlation-Id: 875e6f54-1b03-4a79-b22c-08dbc005d2b0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	IMlF02ildPJRUtULw6B1hCFNvsJJF9PY3j8g0u4LtTe92NGOL8i6CC+0+AQ60A77x75zuBzOWxGU7HVbGS1VDid8xw6w/yIkSCeanv4lp807MGkpsNFmNd0Y941ZnvqBGGXqo00cnLL6qTEDEWFHgIAvQP4H7rwsLQel7WID9uPsOEGTLOS4soL7LE6OEEJf322cKvne7EJLna8+I06OEXEFuagv005sQiN+OgWYpa4M9+QfFF/RC44czWGLXCYWoLsIe8OVcUc6Rdi62FLIBAVeuyee0DRMSY0azfVhfpYXGR/U4tt5Yi2M+WR1ajZMqFR2/FBiXUjoYMcfZFeT2CGPwccx4Jm+rxhr7ptobUIcHUx8zgws6wjqOnHTZW3tibmHrD2Dg/FQyc86cSsJGm2Tlb7DhxVXKf4ztUUOk5aJJeBmmvkhEZZaXe8hQdbLCcwBSUXga5N+w0yrKilPdefxxdZJqmHWboHCqi5Tdet5Ad9Q9sfkpu3Gy4Mp8NwW1xoXMGnr0KZE+AITcEMt1uMKswUmh0YajTeIczITK9JX6QqqCw3C2n+k2pG043eRi3fXjjv8gjNzF+3lWFyxVEPRPtIHGTEm8qGqF5jta+a6ex1c6BL8o5SAtm+vIGRES2hTmVojIIWB0FnXrNnd5g==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(136003)(346002)(376002)(366004)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(4326008)(5660300002)(8676002)(6512007)(8936002)(36756003)(6506007)(2616005)(53546011)(66476007)(26005)(86362001)(41300700001)(66556008)(478600001)(4744005)(66946007)(31696002)(2906002)(110136005)(316002)(6486002)(38100700002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Mmk4MUpuc2l0SEdyb0gvVyt5NmZYOUhOdHR0cWRKYkx4YkwzdTJ1UEF2SFhn?=
 =?utf-8?B?aStqQVBXQnQyVnJQejI2QVZEQ2h0TG1tWlgrM1Y2S1VES3JJcGlxbFdIeFVs?=
 =?utf-8?B?THJLRHVWb2xGSEpsTS9sUnFCVlBJWkQzQWVZTXJCYXA0SjRRTnh3ODFZU3Zk?=
 =?utf-8?B?enVSM05nVnJoaHZEb0Y0aGREeU1FMEdSUE1GRmNVYWY2VWl0cmpaT1lHY2Rn?=
 =?utf-8?B?WVBIc251YWl0L1BwVDBDcUwweDRhVXkwdUpzOTVaZ0tES0UyMmZMZlNLSU05?=
 =?utf-8?B?bjNLMTN0cGxkYVE0clZjdDZOQ1ZLUGNDbzlqMUQwcitGdXZ3TVJKa3BxalM4?=
 =?utf-8?B?ZFJjZG45UjdFWUl0YlRDdzBpTmloYWtlYkJsVjN6OXV0dCtmRm42b1JPWGFD?=
 =?utf-8?B?TVZnWDJLTGljT1ladERuQXVNa2cvd0hjV1RZLzBQNEN6bVFFVkdtbDhTSVFu?=
 =?utf-8?B?RHVjOWFxb3E0LzlLUFNvYktMZ3B6QjJGdG13UEU2UVNiT2tOQXh0eGtJQ09s?=
 =?utf-8?B?ZS9jYnZHM3lTYzl4SDJGdnZSNGY2STltMEk5WGoycWw0dnJTeWx0cnFkZEM3?=
 =?utf-8?B?dVVBcUN5STY0TmltaERKUDJjZW9VU1dwVWZNMkh0YTFPdFFkYnh1cURHK3k2?=
 =?utf-8?B?S0I1NGVOSmxrVzRYRnZPM01FZVpjOExCRmFWYVBQclRHYndDVWFiR3FhNnU3?=
 =?utf-8?B?U2wzOEdKMi9EYzgzVEdMUVFFcWVYY2NwZFViWDAycVJVc0Vwc0dvS3JmUzBM?=
 =?utf-8?B?bHAwYnViOFhiZENaOFBXRXZBRHZ3V1ZENWFDNHlvLzBPT1hKaEFDbWhTckxU?=
 =?utf-8?B?QWgrN2U4aFc3YVMrdzN1YnZqTi9rcS9IWHo4M1lrZmk0YVdYTHY1MXhaTWkv?=
 =?utf-8?B?d2dhN2ErZXVOUU1QV3pMbGxraHk0T1lNSTVoVGhWWklYNjZpYnhpT2F0cmdj?=
 =?utf-8?B?SzNqYmdSL1l1Ym1NT0hNZ2ZKaStpUlM0alJCZTBZMi9iQXV4dDdqTk8rVnk2?=
 =?utf-8?B?RG5lSENWVFpSWFVEUTBWcmc0L3JBT2FNUE95UjZUZXlxcmRqbm9kdFdqK1ZW?=
 =?utf-8?B?TXY3clQ4OVhDR08ybmxZM1lNTEFBRlhRUE9Bemp2ckV2N1MzZkV1RDQyTUVJ?=
 =?utf-8?B?YjF4aHRrY2VrS0RkRlpvbThmaEN4NXZOeGlXeUxETHNJNy9GTlZwU1JnQ01D?=
 =?utf-8?B?dGpWa2IrNDhMODJWODByc2FaSDNJVU14a1FibmtEb2lhNWppbnp0Ym1MUDgr?=
 =?utf-8?B?V0FVeW5aYUlhWlVmMXV3SE9qU1ZwUy9peG5CcGR6Und5ZytSbmYwS1hFanV2?=
 =?utf-8?B?SzIzdGdLWnlLaFVZN0UyclFWZXhIM0RBNkFmM2t5UHYycjVJZytsWlRVZEYw?=
 =?utf-8?B?U2ZLb2R4T0JGMFFseHJYR2hrcUpVYjI4L0I4R3EvZzlTckZ5TDBMaVdpWGd5?=
 =?utf-8?B?OVc3TTQwMU9lRkxFU2VFZ3dzRER5U01LWE93UzB0OHVaT2NKZjRyaDRybTJV?=
 =?utf-8?B?UWJrMW5MTmV6U0RVRG82TVoxaEZIVHBDUjF1b3RrN2RhUURlTEphb1NDaFgv?=
 =?utf-8?B?NEdOMUR2cFE2MXFLM1Z6M0xsbnBSczJiMVZLSS8rdndDY1Y2Y3l2MzZLdzNX?=
 =?utf-8?B?YUVUbExqSHhpU3l3TGEwTFVML1RKY0llVTFVMkk5YjAxMWxpMUxUaUYxa0dj?=
 =?utf-8?B?M1VqcFgzV1BxTzZWeEIvbGxRalYvSk5ubFQxeitQbkNaN3ZrQldYbktiaVM0?=
 =?utf-8?B?dGtPaUZjQkRsdGNPdTlVTVp3TnE2R1JiV3FLNFJoNWtFMEY2SzhkYk95a1VD?=
 =?utf-8?B?aGo4UFZwRWlWQVBlRG1ma3JvNE9mWUdFaE5oME9KMkNQVkZiSTNSZzFPSFZv?=
 =?utf-8?B?RDl3bUtuSmU3cmFNOFBlbHZEYWN0MXRUdWsvMlBIQitmV2U5MUZ0YTFTdG5H?=
 =?utf-8?B?SmZ4QnJnRG56dy9nem90R2dqemFTS2hIYU9Ob3paVG1ZS3dRVEZEcGJLK0pa?=
 =?utf-8?B?RGcyVmlsQ1dldDgrVmN5TjlxMHNZOUdpNW5Yc1V6MklZRU51NFRWTmR1Nkhx?=
 =?utf-8?B?azAwbk1YMk9yTlFJNkMxQlpSQWxGTlZERVhGbTFmVEd6WFFZT1JXUTFUQVVX?=
 =?utf-8?Q?EycFp2X/vMZVJ3MBJ26PmhAGR?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 875e6f54-1b03-4a79-b22c-08dbc005d2b0
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 09:32:24.6606
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: rFQuPHmiTA0HtUJOYdE2dEQ7Ak9bp2a5hwZ89PiHZSkA+3db3s+UcQENhx1NQDrnIBznrOpm/zNjqsQbxsqfwA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9277

On 28.09.2023 10:32, Roger Pau Monné wrote:
> On Wed, Sep 27, 2023 at 04:20:04PM -0700, Stefano Stabellini wrote:
>> From: Stefano Stabellini <stefano.stabellini@amd.com>
>>
>> The feature is not commonly used, and we don't have hardware to test it,
>> not in OSSTest, not in Gitlab, and not even ad-hoc manually by community
>> members. We could use QEMU to test it, but even that it is known not to
>> work.
> 
> I think this last sentence is ambiguous.  QEMU ACPI CPU hotplug
> implementation does work AFAIK, it's Xen implementation of ACPI
> hotplug that explodes (or so I've been told).  I would drop or reword
> the "but even that it is known not to work." part of the sentence.

Maybe simply add "... on our end"?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 09:51:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 09:51:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609413.948502 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlngT-0004D6-En; Thu, 28 Sep 2023 09:51:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609413.948502; Thu, 28 Sep 2023 09:51:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlngT-0004Cz-By; Thu, 28 Sep 2023 09:51:49 +0000
Received: by outflank-mailman (input) for mailman id 609413;
 Thu, 28 Sep 2023 09:51:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJIK=FM=citrix.com=prvs=6283bbd10=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlngS-0004CX-Cs
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 09:51:48 +0000
Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com
 [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a1f71438-5de4-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 11:51:46 +0200 (CEST)
Received: from mail-dm6nam12lp2173.outbound.protection.outlook.com (HELO
 NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.173])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 28 Sep 2023 05:51:38 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DM6PR03MB5372.namprd03.prod.outlook.com (2603:10b6:5:24f::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 09:51:37 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Thu, 28 Sep 2023
 09:51:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a1f71438-5de4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695894705;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=diqiNbN/U74hz6qmzCOmta/uMm1SCczfZunTxnGuQJ4=;
  b=AmzWvOspc+4dafMsN8ohfcVqYVJF6/ofGbDW3NdWTIfgp19lbW7vVfIN
   GblGG+pptVOuB6Gk9clM5xjSImqUDAh92OPW6LSsBkYoCU6ynzFz0x/L+
   ftimV629/yj19rHGgygF4gHv1R6TMg8+zzzkkL1xXe5qfUgdN61HPQYLt
   s=;
X-CSE-ConnectionGUID: 9ybBK0uDSCK7r2BdxgFx2g==
X-CSE-MsgGUID: fOiQ0CEQTaeeKnrfD211yg==
X-IronPort-RemoteIP: 104.47.59.173
X-IronPort-MID: 123306411
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:wmLO66k2zdifef4JOLIxa1Lo5gwFJ0RdPkR7XQ2eYbSJt1+Wr1Gzt
 xJNXjqBOayDN2X0f9skbIq/pElSvMKExtNgGQBv/yxkFyMWpZLJC+rCIxarNUt+DCFhoGFPt
 JxCN4aafKjYaleG+39B55C49SEUOZmgH+e6UKicfHkpGWeIcQ954Tp7gek1n4V0ttawBgKJq
 LvartbWfVSowFaYCEpNg064gE0p5K+aVA8w5ARkPqga5g+GzhH5MbpETU2PByqgKmVrNrbSq
 9brlNmR4m7f9hExPdKp+p6TnpoiG+O60aCm0xK6aoD66vRwjnVaPpUTbZLwXXx/mTSR9+2d/
 f0W3XCGpaXFCYWX8AgVe0Ew/yiTpsSq8pefSZS0mZT7I0Er7xIAahihZa07FdRwxwp5PY1B3
 a0JIhouNg2vvMmVn6jhYOV8ieozdsa+aevzulk4pd3YJdAPZMmZBonvu5pf1jp2gd1SF/HDY
 cZfcSBocBnLfxxIPBEQFY46m+CrwHL4dlW0qnrM/fZxvzeVkV03iee2WDbWUoXiqcF9hEGXq
 3iA523kKhobKMae2XyO9XfEaurnxHmgA9pMSOThnhJsqFO0x1VLIzAvaVK2rNq/kECSAYsGO
 kNBr0LCqoB3riRHVOLVXRe1vXqFtR40QMdLHqsx7wTl4rHP/w+TC2wATzhAQN8rrsk7QXotz
 FDht8PkA3ljvaOYTVqZ96yItnWiNC4NN2gAaCQYCwwf7LHLopw3jx/JZsZuFuiylNKdMTv92
 SyQpS4ywbAal9cW1r6T9ErCxTmro/DhUQod9gjRGGW/4WtRf5KoaYWu7h7A8f9KIYKdT1+Al
 HEBl46V6+VmMH2WvCmEQeFIELT34f+AaWfYmQQ2QMJn8Cmx8Xm+e4wW+Ct5OEpiLscDf3nuf
 VPXvgRSopRUORNGcJNKXm54MOxypYCIKDgvfqq8ggZmCnSpSDK6wQ==
IronPort-HdrOrdr: A9a23:1JL9pa++UfaVAmV6kZZuk+G/dr1zdoMgy1knxilNoENuH/Bwxv
 rFoB1E73TJYVYqN03IV+rwXZVoZUmsjaKdhrNhRotKPTOWwVdASbsP0WKM+V3d8kHFh41gPO
 JbAtJD4b7LfCdHZKTBkW6F+r8bqbHokZxAx92uqUuFJTsaF52IhD0JbjpzfHcGJjWvUvECZe
 ehD4d81nOdkTN9VLXJOlA1G8z44/HbnpPvZhALQzYh9Qm1lDutrJLqDhSC2R8acjVXhZMv63
 LMnQDV7riq96jT8G6Q60bjq7Bt3PfxwNpKA8KBzuATNzXXkw6tIKhxRrGYuzgxgee3rHInis
 PFrRsMN9l6r1nRYma2ix3w3BSI6kdl11bSjXujxVfzq83wQzw3T+JHmIJiaxPcr24tpst13q
 5n13+Q88M/N2KKoA3No/zzEz16nEu9pnQv1cYVknxkSIMbLJtct5YW8k95GIoJWAj69IckOu
 9zC9y03ocfTXqqK1Ti+kV/yt2lWXo+Wj+AX0g5o8SQlwNbmXhopnFosPA3rzMlztYQWpNE7+
 PLPuBDj7dVVPIbaqp7GaMoXda3Inale2OMDEuiZXDcUI0XMXPErJD6pJ8v4vuxRZAOxJwu3L
 zcTVJjs3IocU6GM7zB4HRyyGGPfIyBZ0Wu9ikHjKIJ/4EUBYCbfhFrcWpe0/dJ+J4kc4nms/
 XaAuMiPxasFxqoJW9z5XyPZ3BjEwhhbCQrgKdLZ7uvmLO9FmS4jJ2sTN/jYJzQLB0DZkTTRl
 M+YRmbHrQz0qnsYA61vCTs
X-Talos-CUID: 9a23:zY3Cxm06qmtxv+Nu2qMH5rxfS9EvWF6F0VvrCGznEzxDRK2aZ0/K9/Yx
X-Talos-MUID: =?us-ascii?q?9a23=3AbbShXA2qv+IKSS5pMro0AWrdpTUj7YOvMRgmvKw?=
 =?us-ascii?q?6ssSJFipqNRvH1W2mTdpy?=
X-IronPort-AV: E=Sophos;i="6.03,183,1694750400"; 
   d="scan'208";a="123306411"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=BXLIdlEa7gpJ8MMIxEt79gMajmHnSieEYjEI0MvONZw3c1Ji8J7u08XxOcKKNTGvLU2wsOqnFpzaZOqAlm+FsmNF85jCJILj0WBZTtO48TtoOLIsmko9Vw+XQhS+ElybZzaNmlp+0KegGSSmvI33H1ft+6sYrhnoFjYznIyP8jWcPnAFlHZyPQpZcBaYL+kYWQ1hEyYktnjBEXoPwIRKjbjHJSm5aSTFFbYgtinLyTp+vVNYoeFcKUWWKfPUYEicGVotKUyzc/vr3yL6Ozbrr19aRQ7DKbUstsrH1Tg6FVT/OVpvLqcYIhCYFkxuvs1A7eBbwx8UUB1QeRCw9O/9oA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=xK/DPYfyu/u3AiC3c2Zk2DNuHZXYJYgJAg+DkbExsn8=;
 b=cBBQ+SpQQk1PUS4ZOTKrDBnxCRBWF4zyS+sZyqedCnD0uD4QkG2kpaQkGyrA3necfPB8Px3J44Il6xkSogXacNF5Jk1b9+aAYP28KrKfPDtQLgTQelP8f236OI4UGkFr4ULc81fryYtA7D3MppZOTwgRaktyYbz8l7myuJFYVqijxZtyRgrtiXbySNUkpt3cOYlut4ZJ+xaRKtC7geG/vd9blh00mnpdeEncW/xhtlgSbY1GidIqc2ulWzuOmK0/1Iq2Gqvv/1Dk6jFjh9sNUg/RjS6L52k3dQerSKYfg5TPDzlVAAELwV6WpTcxScACHUds3+94QLcCo8IH/Kkkhw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=xK/DPYfyu/u3AiC3c2Zk2DNuHZXYJYgJAg+DkbExsn8=;
 b=ANaZw1zl7Nb16byWBvxElLfhUxQXsctEZnBvuEX3P1P/SGSIgjd3rdlt3Oaiwhq1FGmSC9mi/4/usCpvFbZZOQZkHqEzJM6ZFnheHVGO8P36/0F+0osOuuieWbsrkuNNfBN+2EMCCQUAUFP22I4X+lsPS5p0yOoAUk/wZnOLAjM=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 28 Sep 2023 11:51:31 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	xen-devel@lists.xenproject.org, andrew.cooper3@citrix.com,
	george.dunlap@citrix.com, julien@xen.org, bertrand.marquis@arm.com,
	wl@xen.org, Stefano Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] SUPPORT: downgrade Physical CPU Hotplug to
 Experimental
Message-ID: <ZRVMo6Uf7occc0Zs@MacBookPdeRoger>
References: <20230927232004.1981595-1-sstabellini@kernel.org>
 <ZRU6A2wDSVEEHGbK@MacBookPdeRoger>
 <e1cc81b4-d990-b995-a24a-ba80c1e970ba@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <e1cc81b4-d990-b995-a24a-ba80c1e970ba@suse.com>
X-ClientProxiedBy: LO3P265CA0004.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:bb::9) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DM6PR03MB5372:EE_
X-MS-Office365-Filtering-Correlation-Id: da9483fd-61f5-4347-b5b7-08dbc008818c
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	ua8pwfuM+xy6d4OdLDU2fnR0sLjJOYcufN0Yq6lKNyU7GSEKhZOJAB85mw4HUVi8+xmDRIK/Hg0FSRzXuu6wOnZ2TJUo5zbWsY3K5ANmzTN86z9qYrHQ+zn3lrjwxXYuh85Gt9d1IyC361hxV6jcXkIx6orNVl0Ad3HRLMHYBdlD5hQUrqY7+OGmnFZr429D9bYHDpfWSTwIXbjFkOJTnkoUmJnA9o2PCJvLdurHBZPNpWb39cFR0lKK2X75esCADEkj4TRVBgQvNzMKkxUX/QAvktqIYbJPGAGN++iNNOVZvxvynZoa9i7RBDzyUZUD4fvtDvEuLRf6VnUZuBzmPvwQPCgzt817HRLlpb9oYPAFBkMLdrtB9OXEaJ63BuXLay0KXF41jTZR0ZXndnpjvT/Hu2a+tPVVp4yhY1bl/o9kQaGkdKxtSRItN09MfPv1dEqSqYQMkWHODkSUac1cz28xWEPzZmzeO3iOegE5bQ2nNadIBjwzn7Yo5YKbES66aKpjxo12OiX4/1/1rXHvApAr4EAXuKPXyrffEB4BenAgXxSy0x5h1+dMdkXyRUZF
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(346002)(39860400002)(136003)(396003)(366004)(376002)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(33716001)(82960400001)(38100700002)(85182001)(86362001)(66946007)(53546011)(6512007)(2906002)(5660300002)(9686003)(66556008)(41300700001)(316002)(54906003)(478600001)(6666004)(6486002)(6506007)(6916009)(66476007)(8676002)(4744005)(4326008)(8936002)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?K0o5ZW9TK3hiSFR5M285cUhCSjFSRWltRDh3eFRtN1FHcUZ5R2dqRDhFelpk?=
 =?utf-8?B?U0lpcnFWcnlmU29IRmo5LzhiOHo3cEsrZ0pGS1JtWlNrREVnMnZaL1JDcVNp?=
 =?utf-8?B?TzIxWTczNVVueHc0b2VkS3hMcW12dlFQbUhkd09wa0syM2VEQU13UnVyQlFq?=
 =?utf-8?B?YWtwUWhlR2hkTWJaUU9pNFNoVUgrbldMRXZmbUpXQmdxeHFVM0N1aDVMQmJy?=
 =?utf-8?B?YkdvQkFiTGM0enZyTVdZaUJxNTVKS29XME5Ra0k1YXIzdTMyQkdod2orWU56?=
 =?utf-8?B?NHRzWmxvLzlxWE5SdTdITzNkdGVMejBBTDgxcVB3clo0VUtseUphYmk3Y00v?=
 =?utf-8?B?d2kySkh2ck5VSmlscjFtd25MYkJuZzFLcmZORS8xZ1hRZkVEanpCTUozNnJU?=
 =?utf-8?B?Nm4vK3k5aFk0VXFNWTl4a0RMY3E5TkVaWUZJNkhOTVRMandJdHAxVVViWW1Z?=
 =?utf-8?B?a2MwWjRrbXQyLy81Uk1ERk1hMmJnZG5ieGVLNW5mUDFROHJBdlo0ZmNhdlJt?=
 =?utf-8?B?R0V1RHpSa2dVV29rWVBqWmMyRWpSVlRKQkhVMnpBcGRCcXBWRmszeHVqVkFk?=
 =?utf-8?B?V2NRVW1vTFl6dzRmeXk2aWtIandlYTR0VHFBa2RQanZ5WmVCT0hFa1owZmxl?=
 =?utf-8?B?SDFiVUJTd2dlOHlDRTRURStJN2VidE9UYUFjTTE3ajNxYmxRRFMxeDZiZnd3?=
 =?utf-8?B?Q0tEV1poTnV1N2FWNHhVdHM3cWxiYUt5dVRndUtCUFJzdU1GWlJpeXJBSlFC?=
 =?utf-8?B?QUpYYzY1OTFTbWZNOGFhMVBxc08vR0lwOEdNYjdRRmtsSXBacnkvM1BpZnk0?=
 =?utf-8?B?ZW9pM2QrekFnMEc5bDBha0V2ZGFPQXpBTjFnVS81cHdOSDJnWnV5bEUxSUlR?=
 =?utf-8?B?WGkydVp2aGEvSi80eStGT3ZSUVpBUXFkNWY4QkxaRmxWSHJ5UWZITk1GT3Jv?=
 =?utf-8?B?RWQvTVIxYklvc3FDVkUyWVp3R0dVZi9UZEZJK1VDcFZDUXZaQVVmMjllN2s5?=
 =?utf-8?B?azNwUVhXNFlPeWFNT1dicHRkOW5Pd1RrSThVeXR3TlhYNXFCb3NwdHFERXZG?=
 =?utf-8?B?Um5JYldGYXF4RDJ2aGxOcW9lSjFhZ0prdFlMQlJ3S2IwV1hvcFN6Ujh5RXFT?=
 =?utf-8?B?TGxDZkh4TEZDbGZ5QlBGVGl0bEJvUGVCT0U4Q2pWdVQvd3hXOG80aHpFcVVt?=
 =?utf-8?B?U0ZheHBGS253UzhZb21MM3E0biswSTZJTm4rajVTNUpZRXpoQlNsSmpITFZX?=
 =?utf-8?B?OFpJVlBuNGZjc1NuSmM1Vm5FT1lvcFIvQ0ozbHByQlVneWZkUEFrd2tXS29W?=
 =?utf-8?B?WmFpS1R3V2dld2wxTmhLZnpjQVBVOHl0MzNDRkFHVWU5RUFEWlRzTFp1dFQy?=
 =?utf-8?B?YlRsWUV3RG9nWXU1NVdkcWVpeXVQb1JuUUt6R0dMWWVsaFdmUkUzY1BKa3Zx?=
 =?utf-8?B?dkhZdlZNUEhuaVBMMUdPaW5BMHVzUmVoMUxJRDdEVEpVdUl5UEt6YjFWWG4v?=
 =?utf-8?B?bHFPL3drVGRjUVNXOVhSbnZqQWpEQy9GWVZRcUZVZGVuQWptdE10ekdpa0JO?=
 =?utf-8?B?V1NxeTZEYndLTVBxNnZZQXVQQ0hSaEw4eXlYMHE0VG8zdS9USndDZC8wbHdW?=
 =?utf-8?B?OUVReEpXb1R3NDBjekc0SXlaL1hpbWM2ZnRndjBJZnFuOWE4MXNuaTI0UTNE?=
 =?utf-8?B?YjV5dnFnVDMyOUdxQmZydEtQVzRNRGFyRFY3SGRxZnFrM1ZOTjF0dEl4bDg5?=
 =?utf-8?B?dWFZWHhjWjN5MGRXUmJEN3hUQ05qV0RrNzZiRVp0S3pDVmRsU095TzMyZ29u?=
 =?utf-8?B?RFk1cERYOU5ZcmZPbE9XMHBVMHV1aW15UTQvMHcyL29PdEtQZGZZcmpVZzB0?=
 =?utf-8?B?SHZ6b3ZxK1RWRHRnT0lrdk5IWkV6UUlDc256YnNJRFZuaDBXYjNMOG5jbVVv?=
 =?utf-8?B?YVhYNlVQS0tvVmpNT0FXM1hnZXIrelF3cVlYbkN4ODRmbkhBRWFHOXRnbnhx?=
 =?utf-8?B?QW1Ya3MzaWprOXlFS3hROVlnM2Y1TXpMYnR6TWhjNDFMcERWdUpoUDZiUldU?=
 =?utf-8?B?ckFVUnY0cTRiR2tFYzhKVldtTDdidUtCc0hWNWFDczJFaFpKS3AwcVhlVEtQ?=
 =?utf-8?B?N0tWRXdkK0NxMG5yM0NwNnUvNU1QTEJpSnJ2WnA5VHNOaWQ1VklYNjZyLzQ5?=
 =?utf-8?B?S2c9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	RukahipFIFi4Wr7uzfer1Ixy0Q/uYQTtjAHzHIXYPl2upy6sJgcFa+P9Pzd8qx4ptEmB3m4P+u8Ewg5X34l+gB8AqHPaAIWEbuzW89m1rDW9zlxQXr7Z81Tjb+AUgeQFnoTu2YY3PMbxBniEr7i6+2KDDfrGGamPawmHIojBNf6b0rpPOa9GfGDPDAg2Yo318+Col6PedrhJ0CxNPVpA/QgWLwy6WbmfdN1aKkfZ2ofU49zUvMZHiKGNNg5EdxxnV+/QgqFQMwJVz5sEHydNwPS0iH2OYyy0+lsKx7jXdZLvGMrMgzSXJTGoUxRySf6YQ/8TXfymf7SKdY4dSyn45gxjng1U5Bbh3R9KTs6Jfj+QD9dOw4nkv/WgEPKl+K5Hwr/lm5u6I7oeVLNYzqy2A5WS1KREJt5MPE9iQ4bwleLu1PdBFZ3GIjkHLGmrzltYXB6F5rwcqoPZ0kmlT19RtUjlT3rHaAzNAZnu1hbWJPJKuWudAO8pTc5tCewf8G07cPBII01JDmw8NRz2nyfSaVc9Xj8Fwuz1x2y+T3jkK+WsvRUijtY/902vWJJmKlBcwaAtaWRgWL/iYcKEr0C2PP9baoXd/f20lXerjM6Ft2QH6J+COL9zAz5/PARhW5WwZ3EHSvrgL5MNZp8nNgE896Mb9qETb4cKs0+z8bnbc4lzvONvcUPv0SPyhzz4Qmg5XBd8kjtymqK+4uAd0mkKHfOEt5iX8GugUEG+lgvh6RPBEscoJ/OPSrb/RQreOfFTsnx57GYrnXoDBXf3NIGmDAkvHYK7FBdkymlSVnuk8o2o5Aw3rdsUlHRoyjRRItFzPY37j5VLg2J2nfN8RKXcy+nlM7Nmd+Po4KS+H9cZUzSzQvdBytmw6xe1K1ODE9FHoZjx6ekO7/AxCN/CHTA3AA==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: da9483fd-61f5-4347-b5b7-08dbc008818c
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 09:51:36.9969
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: MPGi4XaDQCqfm9GjSUyGBElPf5Hu5viGcYenEQq40hoR6N/6Qx0ZtO5yeheriSmit7fMPYEyabMuDU2nw43Dew==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5372

On Thu, Sep 28, 2023 at 11:32:22AM +0200, Jan Beulich wrote:
> On 28.09.2023 10:32, Roger Pau Monné wrote:
> > On Wed, Sep 27, 2023 at 04:20:04PM -0700, Stefano Stabellini wrote:
> >> From: Stefano Stabellini <stefano.stabellini@amd.com>
> >>
> >> The feature is not commonly used, and we don't have hardware to test it,
> >> not in OSSTest, not in Gitlab, and not even ad-hoc manually by community
> >> members. We could use QEMU to test it, but even that it is known not to
> >> work.
> > 
> > I think this last sentence is ambiguous.  QEMU ACPI CPU hotplug
> > implementation does work AFAIK, it's Xen implementation of ACPI
> > hotplug that explodes (or so I've been told).  I would drop or reword
> > the "but even that it is known not to work." part of the sentence.
> 
> Maybe simply add "... on our end"?

WFM.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 09:51:52 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 09:51:52 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609412.948491 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlngO-0003xV-88; Thu, 28 Sep 2023 09:51:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609412.948491; Thu, 28 Sep 2023 09:51:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlngO-0003xO-53; Thu, 28 Sep 2023 09:51:44 +0000
Received: by outflank-mailman (input) for mailman id 609412;
 Thu, 28 Sep 2023 09:51:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJIK=FM=citrix.com=prvs=6283bbd10=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlngN-0003xI-9I
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 09:51:43 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9ecb0957-5de4-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 11:51:40 +0200 (CEST)
Received: from mail-bn8nam12lp2168.outbound.protection.outlook.com (HELO
 NAM12-BN8-obe.outbound.protection.outlook.com) ([104.47.55.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 28 Sep 2023 05:51:11 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by DM6PR03MB5372.namprd03.prod.outlook.com (2603:10b6:5:24f::15) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 09:51:08 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Thu, 28 Sep 2023
 09:51:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9ecb0957-5de4-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695894701;
  h=date:from:to:cc:subject:message-id:references:
   in-reply-to:mime-version;
  bh=Q7bXhaynD8VoyBY+kc8ve/t3fP4Gu3xyePfX39ALNCY=;
  b=P/Je7JdufDsGvZOaAn6MeaLQFynnI6GnFpCxbozqaCgWf8Jo+1mD8PMb
   +Md14y9vz6Hda1CAJXqeVFe61U3m2rI5Z7wN3mofnQXtYipoQdk1kjU6F
   KwR/KOk5HKnlRLp2r8oDeQZONoOLLnSMToVmwBOvjNKnkNzum8yKgM4qZ
   o=;
X-CSE-ConnectionGUID: 5NpCtRbDRPuNWDyquNNwCw==
X-CSE-MsgGUID: Do31LC3ZRpmThV3vnTKjig==
X-IronPort-RemoteIP: 104.47.55.168
X-IronPort-MID: 124469974
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:2vD5GKOh3J5u2RbvrR1UlsFynXyQoLVcMsEvi/4bfWQNrUoq02RTy
 WMXWmuPbvyJZjGjf98nYIW2pxtVsZLUxoM2Hgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v
 63yTvGacajYm1eF/k/F3oDJ9CQ6jefQAOOkVIYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/
 Nj/uKUzAnf8s9JPGjxSs/nrRC9H5qyo42tJ5AxmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW
 +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ
 HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0rtRGUpSz
 /Y0EggQSC+vlvur5pSkYfY506zPLOGzVG8ekldJ6GiDSNwAEdXESaiM4sJE1jAtgMwIBezZe
 8cSdTtoalLHfgFLPVAUTpk5mY9EhFGmK2Ee9A3T+PdxujaDpOBy+OGF3N79YNuFSN8Thk+Fj
 mnH4374ElcRM9n3JT+tqyjw2rGezHynMG4UPJG/radOqwah/HQWNB0oDkW9ndq7i0HrDrqzL
 GRRoELCt5Ma9kamU938VB2Qu2Ofs1gXXN84O/037kSBx7TZ5y6dB3MYVXhRZdo+rsg0SDc2k
 FiTkLvBByFrsbCTYWKQ8PGTtzzaETMOMWYIaCsATA0Ey9ruuoc+ilTIVNkLOLGxps34H3f32
 T/ihAgzga8Cy/EC0aqT9ErCxTmro/DhUgcw7x7/QmGh4wV2dYOhIYev7DDmAe1oKY+YShyLu
 igCks3HtuQWV8jTxGqKXfkHG6yv67CdKjrAjFVzHp4nsTOw53qkeoMW6zZ7TKt0Dvs5lfbSS
 Be7kWtsCFV7YhNGsYcfj1qNNvkX
IronPort-HdrOrdr: A9a23:nnrXq6p6dQCV+uvgG6wXJvgaV5tKLNV00zEX/kB9WHVpm5Oj+v
 xGzc5w6farsl0ssREb9uxo9pPwJE800aQFmbX5XI3SJTUO3VHFEGgM1+vfKlHbak7DH6tmpN
 xdmstFeaHN5DpB/KHHCWCDer5PoeVvsprY49s2p00dMD2CAJsQizuRZDzrcHGfE2J9dOAE/d
 enl7x6T33KQwVmUu2LQl0+G8TTrdzCk5zrJTYAGh4c8QGLyR+49bLgFBCc/xEGFxdC260r/2
 TpmxHwovzLiYDw9jbsk0voq7hGktrozdVOQOSKl8guMz3pziq4eYh7XLWGnTYt5MWi8kwjnt
 Xgqwope+5z93TSVGeopgaF4Xiq7B8er1vZjXOIi3rqpsL0ABo8Fsp6nIpcNj/U8VApst1Q2L
 9CmzvxjeseMTrw2ADGo/TYXRBjkUS55VIkjO4olnRaFa8TcqVYo4Az9F5cVL0AACX5woY6F/
 QGNrCU2N9mNXehK1zJtGhmx9KhGlw1Axe9W0AH/veY1jBH9UoJuncw9Yg6pDMt5Zg9Q55L66
 DvKaJzjoxDSccQcOZUGPoBadHfMB2CfTv8dEapZXj3HqAOPHzA77Tt5q8u2e2scJsUiLMvhZ
 X6Vk9Cv2JaQTOgNSS35uwKzvnxehT/Ydy0ofsupaSR+4eMCIYDCBfzCWzHyKCb0rAi6s6yYY
 fABHsZOY6mEYLUI/c54+TPYegsFZAgarxqhj8aYSP7niuZEPycisXrNNDuGZHKLREIHkvCP1
 prZkmBGCwH1DHnZkPF
X-Talos-CUID: =?us-ascii?q?9a23=3AwnTLsWn+C+OT5nfjWGyM5u2aLFfXOSD71FzMGUW?=
 =?us-ascii?q?UM150boK5WEaN3oV7uNU7zg=3D=3D?=
X-Talos-MUID: 9a23:znZJGgqCMlBeHfD/LCsezx1lb55MyP+cMlgIrZU44NeCCQ9yOjjI2Q==
X-IronPort-AV: E=Sophos;i="6.03,183,1694750400"; 
   d="scan'208";a="124469974"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gDcqFlAaDbGS/vaECUytldfg1mmBLDhfwYUUVifefHdVeziV/YHlWYLCaFGAfa4TSQL+loJQPiOXfWY5Yt1nYxCSlLIfujfjF+2CWebQNHfLRtJRFjJX5tZHUcbjhcIMpgUYj812I6V4nTlsuhSyIekr9aFWG9mkKT01srkCTb2nLKDjq6RiR0atxRz9phQTc0HbVdjzpdQD3LLT27+BuTbB9PtDK1si33MFP/VDb0/KRMg3UzH+KAX8jTb23nkQnL73WO/++Cke/xZrR6TxDDH6s3+DbFCvshfWJm3AOlHuc7IpNMO9CwEyPs3XQTa/+fSW2vDbiP2MiFkqCWA2wA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=WZ1uQIXpe/xn1a+D3xk0No54WWaT+xVrl3zYj54YSVk=;
 b=McY9bWTUx4NPJ54cvFED2NTdok4ml4+FATObFbpJ+IbMAeb35h5hcJvxUHC8ozJgDjxhrVV3agl++Q9YWM8aVG2pZx276dIOYLVZ3E+0EhkQAr7sNKZQMswww+xsIXEJoe3ZtyYKMvCC0oFn1DYKeFmH8Du2qwGqZs7604++GelqJVKV/c2yt948xlcQMhazXtHtSbdiavVd6z46LKouugRU81DNgjpv7XqhPbJubA7XDeug2Ang2E0wZ4hzTWweOElue/F5YfuSO5XTCXiui+cqzIl/EB5LTnJD06evJY5hIn+G4sT2Ip7bqKUWO9nRVg2EAZDJxrWqiQ5dBAebxA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=WZ1uQIXpe/xn1a+D3xk0No54WWaT+xVrl3zYj54YSVk=;
 b=KK42UapYTIs1yGRGflVEzbgqSd5JQ+dL4X7NTiEZBuycI2i9wmIZ/fjbzrsq/hG1mB0gXH+eQri4beOm8pxYtrclP7fkHJfmL2Nnuylxe0MGHTaXaoz4ngkhqH7piE+q3Zj9Sak3uQOHVqB6O32sQngPM2Aq99TWDHWNKHZ6Cf0=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 28 Sep 2023 11:51:01 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Henry Wang <Henry.Wang@arm.com>,
	Tamas K Lengyel <tamas@tklengyel.com>
Subject: Re: [PATCH v4 5/9] x86/mem-sharing: copy GADDR based shared guest
 areas
Message-ID: <ZRVMhdyI8s4chr7b@MacBookPdeRoger>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
 <6047c192-0f37-e4ff-5980-fd137b3f1869@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <6047c192-0f37-e4ff-5980-fd137b3f1869@suse.com>
X-ClientProxiedBy: LO4P265CA0066.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2af::9) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|DM6PR03MB5372:EE_
X-MS-Office365-Filtering-Correlation-Id: 3db81749-4ab1-4d1e-ee07-08dbc008703a
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3tmrMkweBYBVXSqLPBDw3vdUpnxAAzLvUulqFNel+rm8ARPJnrbmKexEgDN2j2MLcctB8FgaFLxo77C/C9m18DE8wHnFa9/y9KtDJfs1CGwI6PX4hGe2X2OTBwYSxNblwYVFoDq4CKx0FSm6na9tbsN4yjZobpLqttrcBpe+dJlrCYcKw2zgO46akA53HlNlnp3avf+OU/iI7jqhAEJFMl1XWmAkT6wzqeirbCYJPNaPP8ZZ1DERrZnAbPqP7OOiDs+5XHPhG7hWnH0iJjjgCMnjxKev6Y2Ri5idLFAwzBRqVMqMNngYrjvaJHgyh7MpUN0Z0k+HwxCaid6eqkn56/Ly6nn+m3Eglav6LUdyUf0z09/3Htar037lKrd2itYrSAacqJOFFzvp9LjP6s0PFIJqFquMF8sEC6zYVSGmjb1v5zDikVmDmuC/DrdVkvUJH9XV1jVD9rFMCGLI98Fj4vqN51UuSl/4r31wlx7NyFEoQVlEVMYPTZqTj62IWFwcFbsi+MeshdQHpAwAJqpjjlmeds3SliO2GmV6m9oz08ZLd6rzOtxgShUqhML1XwME
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(346002)(39860400002)(136003)(396003)(366004)(376002)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(33716001)(82960400001)(38100700002)(85182001)(86362001)(83380400001)(66946007)(6512007)(2906002)(5660300002)(9686003)(66556008)(41300700001)(316002)(54906003)(478600001)(6666004)(6486002)(6506007)(6916009)(66476007)(8676002)(66899024)(4326008)(8936002)(26005);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bUM2ZS9FQkZHbE8zMCtaZHYvb0grbkYvVytJK0JjL2xhS3dwdlBDdzhBNlNJ?=
 =?utf-8?B?cXRQby9ORDltS3BjS1djb2NjUTM0dlVieUVNK0VVRDRiOS9Wd0JLeUhSWCt2?=
 =?utf-8?B?a2FkSkc3dzNIcnd2ekl1cGQ1T3RIVDJ0YVFWdzFPUmxoUzkyMzFHZ0JyOFNT?=
 =?utf-8?B?b2xzMnJlUTB5RVZqQytKUzRSYWltdXRJTGNxUHViRGp1KzFSK0F2Q0RnRUdm?=
 =?utf-8?B?Nm9JdU0vbEl5NWNnMTNtb01FMzBiaEd3L3AyTis4ekRZT2ViRXJnQzVJclE3?=
 =?utf-8?B?MkFBWnRKTFhkUVZsVG9JVUFYODNmc3o0Si8xUUprOWdWYWVDbnpkMXllWlJo?=
 =?utf-8?B?MW4yZ1VCTDlxK2NYMWltaS9PUjVIaVpOYjdNTDdseVpnVVNXaEhQbVFlWEVZ?=
 =?utf-8?B?UjNyM3k3TFMyNSt5Y3BvbExxN0RrbXRZOUQyRUVkRHZJYXBId3BLY0FvQ3JC?=
 =?utf-8?B?RDVGRHlEMjMrbmU1MnhjVVY1QjFDSHB5bEZYSXNXRW8zaVJoWkdNanBBOWlh?=
 =?utf-8?B?Z0FxbnkwKzJ1cUk1S2ZHTHRaZ3E4NEpSdTZjOWwya3RRV0tMQXhVZEcwMURo?=
 =?utf-8?B?RlNzNU5aUlRNSnV0NURwZ0l3Y3VFRE9iR3ROcTdIYllaTm42cW5DSEZVdW0y?=
 =?utf-8?B?bUFncFpmamdnMVZyLzF0MUs4SExsTWdIUjZHQjg0ditLRXY4VjV5N01FM2lm?=
 =?utf-8?B?bEpMbzZUckVZcXNsTGpTZTlFd05EMW9aUytmVlZOK2YwL040cHVxOWlxRmVt?=
 =?utf-8?B?U2NMUjlyTVZsTDc2b2xOQ1FhdjNWK1RPb1JVNXhReGFSVnRCL240OGJiekpu?=
 =?utf-8?B?LzJFd0pVOXlYeDU4eWtCV0JVa2srbURsTTAzKzgzb1hPVGdSUmFjSGo0MUYw?=
 =?utf-8?B?SEpNZC8xQ3NvVU1vNnYxUFVzbzJ6OEo1cWV1d2tIU09zaEZWZDNvTVhvcGFZ?=
 =?utf-8?B?ME5zWnoxWGNJbkQrSExSb3lWUjY4UzQyVzhjSDRNcTNxbUVlNVgyeElxczhx?=
 =?utf-8?B?ajQ1MTliYXgzb2kzamJYdVRIVTlwL2M5Z09QY3pMcWhRWWVTYUdsVVA2RWlw?=
 =?utf-8?B?NTE5UmJ5OHZIL21wM3o5eDA1R0JkdzNvRWlaWkhGK2lYUlZ6czlvd3B5cFFt?=
 =?utf-8?B?cXBPWVFEUXQ5Mm5DMjJFSmtiMGtqOFlITkxDZUpsU1BLMWdiTlFDalZ2L3Jj?=
 =?utf-8?B?ek1qR2JJT1VuaDB2Y2VhZER2Q2VQTkJTSTBTV3AzUzFLVFpDbVIzZ2FnTmY3?=
 =?utf-8?B?OW9ENy9LU1Bjc29mY2JGUkZ3V0J1Z1I4eUtaTVpjYkU3TDc1NkRmQ3ZhY3BT?=
 =?utf-8?B?NEJid0YwL0dzSnlQdU03aFF6UE4rNTl6Sk43akltUEZBVUt6MjBXWXNJVGJB?=
 =?utf-8?B?Njd3QnJoMUl6dzVlVmhFMEJ1aDBwNThWVFJuZVFmWWlxdnp1NlN1VnNJZzNn?=
 =?utf-8?B?Y0JOWTVVYmdlWmszOFJGS09iMW5wZjRDcm14ZVl5Z1FtcE4xb3RQZzU0ckhq?=
 =?utf-8?B?OXVid0kyYkNPa1NkY3FwQmtZTVhIYzRXcitaZHRmSk1TMmtaUDMrcE8wSS9v?=
 =?utf-8?B?OHVlL0p0bVQrbllMWE5PMHBoTklMTU9OekdCY0lkTUhpb3oxSUFMdXIxK3dp?=
 =?utf-8?B?bXZtVXE3clpxZHMrNHNoaTROcEZDczBBNUhhTEJwZGFNbC90dEFObDF3Uzdi?=
 =?utf-8?B?b1h3V0s5TUQ4NzAxTm5MOWlmNy9PRDduc0hhWkozcURoMjV0RlBaSWh4WGdR?=
 =?utf-8?B?UE9BZTJvWXczc1RXdDFCSVdCQXA4dDA1SWg5bVdxcFVSNENwVC8wR1JzUjY3?=
 =?utf-8?B?bzM3YVk5Skt4M2dycDBPSTE3NmVYSFZ5UGtVQzhyQ2lKeWRhYzBWMm53M0dY?=
 =?utf-8?B?cTBkN0xxM1NCR3ZsM205dGxCdGw1NmppMjQyNVZLdUc2WXF1OGp4SUd6Q0Rq?=
 =?utf-8?B?MmZUOHUyM1NiRTk4eHVkUGFNdVdzL0NQK1pWaEg2M0N0TEwxcStia2ZuNUNp?=
 =?utf-8?B?c3pzSU16SWs5YWwwODVEMEp5OUw4aklBcnlCV3ZMc0Y4Tm8xSXc3cGYwYi9u?=
 =?utf-8?B?eWt0TmVSc3FrTUloSFhobDhKeEJyUjU1TFRnSlBrRnRqd0NPSzZTTklNaWVz?=
 =?utf-8?B?Rlo1bUV0WExXanJ4QWhLSFgvalI0dVAyd3JzN2h3bi91RnpWeCtUOVdiYnVC?=
 =?utf-8?B?WlE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	zh3bdaaFIfTi5no4DclMEib473Vxf9SBvfCNZGNUUJOV8Md6jeF2uP99B1DwSdP+akJDkWAfQmO6SqYkkF5Styp/OWoxApj0iUmBZljLH+apZd5opYLGgnh/Su+YyQXMxJzqrpACwHeT9sRk1JpJHPQ6OS+hxaeTmgyrgU6BPb4g8L5Qg4EgUtQiQC/HND+XYlwfgOaBGaaDCPt45W1LSSjRp9+yuN4tyO8OarN8nmURZtnmxzZfaduA5ELZyOx2j9m5RsVlpKsu5elNI0Nu9hT1rwNoxwemHykvcVdUbEyv5KbVP/3dbdINgTwbUDu3xUWCWt8lo1sn1PtF7u16p46ylPiNuGzyBwdE/DLzoACs94HEz9OhoH8pLziZd/2Hl9Tf27XX3lbNbpA0q75//2PhClULgBT5NoZr09XkCyf2VODDQ328dgSjAvYBLzcvj17DrbXRqqTcwZVdnKZ8Izvng0BxC/XKvY6sBW12LuJZqQTtXM4OtuMwLIQR2PzJHj76pp19lPyUQrM5x2ytopakYmqLAA+XhLiDJwmQsKva5YLG55WcPtQ+XeNT7+41xPzzOddj6LDuxeIfISBAj3APUcBp7dqpzQTvt/JndwNtE5M+ZgK2yO7CjjZoinW5cOOVM+qTzGjJ9/CNjxJP9Cbr366UGSPh24UKMDUOaxyFGKRg2li/etLXu1JOCKb3jlkUJ9aP7hg23OTCsDBKJ5BdoFX4qDXekf/cuwmuAJfXgdtcIQLsLTMc2fC4CVhQ7uN9q3Zv+qYopERIJDIvjL1dUSGx1inwd1XYObS24SQuzLBDPBAOfCY2JSDiJmYSP4RyWOqUPPcYQubCOzw6D2qvkHUtA0pxCDZY9FL9fCUc1wVYEbur2pAubhppu4lbVdJ/UcxUyHPjMqif7gsN9lcj1/SYrmQTPcxyVdE2/Bs=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3db81749-4ab1-4d1e-ee07-08dbc008703a
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 09:51:08.1764
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: JLGNOEV4vavx2eV2OsNiqVhQ3gQ723elwn1bLcx9dERG5BjgK9DDXNxDdVt9RUoLPNGBrS2G7qprqa2tCE4Z6w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5372

On Thu, Sep 28, 2023 at 09:16:20AM +0200, Jan Beulich wrote:
> In preparation of the introduction of new vCPU operations allowing to
> register the respective areas (one of the two is x86-specific) by
> guest-physical address, add the necessary fork handling (with the
> backing function yet to be filled in).
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> ---
> v3: Extend comment.
> 
> --- a/xen/arch/x86/mm/mem_sharing.c
> +++ b/xen/arch/x86/mm/mem_sharing.c
> @@ -1641,6 +1641,68 @@ static void copy_vcpu_nonreg_state(struc
>      hvm_set_nonreg_state(cd_vcpu, &nrs);
>  }
>  
> +static int copy_guest_area(struct guest_area *cd_area,
> +                           const struct guest_area *d_area,
> +                           struct vcpu *cd_vcpu,
> +                           const struct domain *d)
> +{
> +    mfn_t d_mfn, cd_mfn;
> +
> +    if ( !d_area->pg )
> +        return 0;
> +
> +    d_mfn = page_to_mfn(d_area->pg);
> +
> +    /* Allocate & map a page for the area if it hasn't been already. */
> +    if ( !cd_area->pg )
> +    {
> +        gfn_t gfn = mfn_to_gfn(d, d_mfn);
> +        struct p2m_domain *p2m = p2m_get_hostp2m(cd_vcpu->domain);
> +        p2m_type_t p2mt;
> +        p2m_access_t p2ma;
> +        unsigned int offset;
> +        int ret;
> +
> +        cd_mfn = p2m->get_entry(p2m, gfn, &p2mt, &p2ma, 0, NULL, NULL);
> +        if ( mfn_eq(cd_mfn, INVALID_MFN) )
> +        {
> +            struct page_info *pg = alloc_domheap_page(cd_vcpu->domain, 0);
> +
> +            if ( !pg )
> +                return -ENOMEM;
> +
> +            cd_mfn = page_to_mfn(pg);
> +            set_gpfn_from_mfn(mfn_x(cd_mfn), gfn_x(gfn));
> +
> +            ret = p2m->set_entry(p2m, gfn, cd_mfn, PAGE_ORDER_4K, p2m_ram_rw,
> +                                 p2m->default_access, -1);
> +            if ( ret )
> +                return ret;
> +        }

I'm still unsure why map_guest_area() shouldn't be able to deal with a
forked child needing the page to be mapped.  What happens when a
forked child executes the hypercall to map such areas against not yet
populated gfns?

Shouldn't map_guest_area() be capable of handling those calls and
populating on demand?

> +        else if ( p2mt != p2m_ram_rw )
> +            return -EBUSY;
> +
> +        /*
> +         * Map the area into the guest. For simplicity specify the entire range
> +         * up to the end of the page: All the function uses it for is to check
> +         * that the range doesn't cross page boundaries. Having the area mapped
> +         * in the original domain implies that it fits there and therefore will
> +         * also fit in the clone.
> +         */
> +        offset = PAGE_OFFSET(d_area->map);
> +        ret = map_guest_area(cd_vcpu, gfn_to_gaddr(gfn) + offset,
> +                             PAGE_SIZE - offset, cd_area, NULL);
> +        if ( ret )
> +            return ret;
> +    }
> +    else
> +        cd_mfn = page_to_mfn(cd_area->pg);
> +
> +    copy_domain_page(cd_mfn, d_mfn);

I think the page copy should be done only once, when the page is
populated on the child p2m.  Otherwise areas smaller than a page size
(like vpcu_time_info_t) that share the same page will get multiple
copies of the same data for no reason.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 09:53:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 09:53:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609421.948512 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlniK-0005W9-Ua; Thu, 28 Sep 2023 09:53:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609421.948512; Thu, 28 Sep 2023 09:53:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlniK-0005W2-Qn; Thu, 28 Sep 2023 09:53:44 +0000
Received: by outflank-mailman (input) for mailman id 609421;
 Thu, 28 Sep 2023 09:53:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlniJ-0005Rv-1l
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 09:53:43 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on20604.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::604])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e753f609-5de4-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 11:53:41 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PA4PR04MB8015.eurprd04.prod.outlook.com (2603:10a6:102:c6::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 09:53:39 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 09:53:39 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e753f609-5de4-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=MKavI3ewF4WLevuJEm8ZB+Z2/Z/KRfbDjfy9C40v40NEb2XLYJdwKB/T4Ljx0rNCYVE/VMFtNkonafURFJoBxcEEsBF6/Iymh5bh1XpTptWfEnj4jnPX8qEkvmV0MqqBTRjUNHye8r3wPCn2ZaTtF35uQArDUqribr02Q2Q6QRQXRAmh2k+CrJKlmtNQ0rb3EI1ygEio3PASSuMcTmz+TJlW4xIOLvSvtIAt3dONR6KqSP74+Mn89GG4XxifBiF1pHWZFhuITtFOK4j7snNv2bzx+NaO4wOBR2e554c4PQ3D82CrRRpsv5Yne+pO61hIVCWaP/qYo/dOhVQi2Fju3g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bWHiHjI85xQV1NOYpVZbE1Zb9wgZbEFDfLsTzhJ3dCo=;
 b=Jy0utQeW38SE1Ay8cx3Av/BHSvTGzGKjZ+YC5h11tIc3Oi4vO88q3t8evBRO+uo5AOvp/0JuBH+yW8GzIXr24Q2fJxDPus4MCImXljeqhFOszfBD6JRpaEUePrlFT6GiJJCFItdvelujF56ce5dXmHA/ZKzwacpcH65HWvhJ7nnZF4l+mvPMoTjaTKtmTWKF1yFGUidckkBnwPw8Vf7aPm96BZgqw/KU+f+E6OQRaXy1KmnfwKjTFkatTminm2E1scIHKCbA7bvszBjwVl5HjbnuGKEEPvD/RJWKAUs/Lo1wc9blyaGZvha6hsg5MVsaUcyZniurFN/7yWAbDJC6Zg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bWHiHjI85xQV1NOYpVZbE1Zb9wgZbEFDfLsTzhJ3dCo=;
 b=5iVUiEKXkTNvf3kauBa7QxKWYFd0yLvN+lACJWW3skM3lo3onTiuDHegV4fQZHwtueWCLPcfVRRUxVL3M5st5z0npRFL+WvkcqjjSlAxqqOizWkHLZCsSf0xGtTjcWQ47mYrdKreVwLRFmOwDllmO0i1SWEPjidKwHIFhfuuE30boUI01eVvJW8hOWu+G7ll1bauW7icFx3Yzzz8q6kkjBEa19kHQMeaqd7sCXrgL3NLnov9NvVhtX7kLLJaMd3UAmiO90TU45Ov8Lmg6tNCtdOtrOlv/4m6safnEa42kIYRYw4rvufQslWwepj9TTyymOMs/K6qg0IIkaLeZaZdaQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <c82494b6-d6c9-8252-4eac-5c50fdf7e477@suse.com>
Date: Thu, 28 Sep 2023 11:53:36 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 8/8] common: convert vCPU info area registration
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Tamas K Lengyel <tamas@tklengyel.com>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <ada41793-629b-3864-c2fc-412bd8d0047d@suse.com>
 <ZRU4QQcFL5Le5cFz@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRU4QQcFL5Le5cFz@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR3P281CA0172.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a0::10) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PA4PR04MB8015:EE_
X-MS-Office365-Filtering-Correlation-Id: fd5139d8-80a4-48c7-ba24-08dbc008ca61
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	LGdXcXeJhbQLsltonEuiib8c6h+y3yCpIs/mudQa6lvkTVgKc60y1UG3xT6FyAM0jvAY+BlMg+QJ/d9bigsvpLVTPN1un7kF/AfwtaSNEUL3oDcJKydGOeFzJBHazp6UnCW7MW3MqkfyYJDua/bJTsDQoTW/r9aeLl22O3WE3iTkouGTIfV/xiwVTNIPv0Top/8Ztb3fiN2og9uXQnjn4oVrB9sKEU2df/MUROyrfkRILvHbBd4Vsrn15tDUH/qIIDfPhGqYiM6c0PWs6hpIj7bPG4ZhSfSYDX2W59X82Yws6dcKQII2H03a5Qk+sfmIv0nDghb8MdxgN5D2htEP176MTOK34cmVt+PsY5KgZDQEqWONKIf0r3fq9/RS8Dz82JnCbyPbLFjYZ7esypAk4mINuq7ITjMVllIeLVT0uVJq2dPin3btWK7jJW7NAZ/o//42lrhPGTk9Z4GYm7KQN0BDXwyY5bO57K3s8HWbJ3B+4E/0rWbpCs0BLsei0HzBxHr8jjtUaFGtuXqcYmmj25sYe82LZhU8qJhlgdYT08Tammx/COx/npAvUTU74skRnlrbi52o/yDJMFeKLtveXAZGZc2aqu70CCBqZEji1j88uj0zcBAelxYTyAcfOZg48gdafjEp+Kzl+yhS9wdvwQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(346002)(136003)(376002)(39860400002)(366004)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(316002)(41300700001)(26005)(2906002)(5660300002)(8676002)(66556008)(8936002)(66946007)(66476007)(6916009)(54906003)(4326008)(478600001)(31686004)(6486002)(6666004)(53546011)(6506007)(6512007)(2616005)(36756003)(83380400001)(31696002)(38100700002)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cElUeUk1S0lhMDg3bWZoajRmejdrTkhFYnNWcDN0UUFzVTJMdDYxemFUVDQv?=
 =?utf-8?B?azVlSkV6Qk5ZMkhSdWkzaHdycWdoM29NODBlSDhGcGZhSWppbm53WlpQenFX?=
 =?utf-8?B?azJuN1AwZlUxTlNhUjRscTJlQ0J3RnhPd2o1dlB0bHBoUUN1NlZuK1BneFU0?=
 =?utf-8?B?MGFKK2tybzl5ZDN3N3UwVC80WXdvSUQwTzNxVkxvZHFXNFQ0ZUlza0p0NFM5?=
 =?utf-8?B?ais2bkdsTWtqWlF4RFdxdXFEKzdObXRtdG9qK1RxYVZ3RE1XM3JDdVJ0eWZS?=
 =?utf-8?B?ZnN3M1YwOUZIelg3MERmUFczdU0yd2VxUFNXNkVzVnFPMHI3Z1BVK1VWQTk3?=
 =?utf-8?B?eWJTb0xDc2lJWHpReEtYT00yTmFGM013bHZUSmRydUt3K3dIV2pTWVRDZTZL?=
 =?utf-8?B?ellXbUoxc1NnblZ1VUdBMUVzNmMrcWsvR25TRFZTbElYVzdnekxoL2FvMEFV?=
 =?utf-8?B?ZlJCVXU0VFM4VzFIcXluUm1ZblZrakhVVElTMUM3ZlNYQTNDbnoyYnBSZnkw?=
 =?utf-8?B?dzJ4bkF5ZWdHTXhqNXluRENxOVRIa2dyS29jTGQza1Yyai92OXRQRFJUZmxQ?=
 =?utf-8?B?a2IxUzZQMzV3enBXeHh3U0FOcWxYRFJCWEc5Z0FHYmc5OFlzMjdBQk92TFYx?=
 =?utf-8?B?cVdGSmovcVUvS2lDSWduZ0ptOVA5ZmhyTWs3WGphcU4rZTViZzZVQkFJUXdr?=
 =?utf-8?B?ZnhGZGJSUmc0YVhpZDdDMGl1cjhGODVicGpIUDRMNlMvNnRSZFJhSGs4Nmc2?=
 =?utf-8?B?aTNOb1BkWUZwN0xVZEtUenVPS1p3WHNZallaME1XS3pQSjhwQnduV3diSURU?=
 =?utf-8?B?b3IxZEMwWXAwSXd1aS9DNVpNTmpDdCtSR1k0Q2FzZFV4WmppdUNXc2xUVjQ4?=
 =?utf-8?B?T3JHazJrV3U5R0RjcWxmSVc2OGgvVlJXaFExNXhxSFY1dVRGY3Y5NzBEWFZK?=
 =?utf-8?B?ZmJhQS9OcjgwU0tQTks0djBmVzFoVVluZ1M2ZEY0TzBjQkI5VG5pN2xZVVc0?=
 =?utf-8?B?RnVLYjJVMi9ZRGNDM3BLM2NNVytuZ25QYXA0TzJWeWIyM3lySGx5MDdiY0VO?=
 =?utf-8?B?RG5wT0xTUjFWSlljT3NWWUdWZ3Y2QjI3cG9uVXVGWTEvYXE1NTFVeE10TnF2?=
 =?utf-8?B?dStOeHNUUXpTT2NHWEF4TG10UFVKSXdkMUxrVFk3dWVVaHM5NFB4WG9XNHo2?=
 =?utf-8?B?eHZCc1BpQWFpTEJibWlNRlN4ajJ0ZEQreEdudk9ROEVJMnhoZGVmTmw4R091?=
 =?utf-8?B?M2pBZ2UraUczV0hic05oWlhuTDdWMTh6WHFrTXVWcW16c1NQcVM2SHhpd2FL?=
 =?utf-8?B?OFBnZVdqOGxZekR6bngwRmh5S25xWkIyZHdFZ2J0bDE4NkJFeElqMWltZzBp?=
 =?utf-8?B?VGhIRmtQTUlyOWZBdUY5bUhiQ3ZFWW5STVlLQXBLbkRBNi9lYnJjUUFScW01?=
 =?utf-8?B?c2tMdWJ6WHdrbEFlZHJSNis0Tm9qajVzWm5hYXZ3NjFYbG5JRjJzaWVaSjRu?=
 =?utf-8?B?Rllnc1BCcTVVakxERE1VNUt4cnBXZ1RmY01kSU45Zzh1Z3JDR04raS9iK2I3?=
 =?utf-8?B?WmlIL0NmZnFpUTlUeW9pcnIzclhYUWJ4T0ZzOUtlS3JsSGZINTBNd1pFdGU3?=
 =?utf-8?B?c3c0TU5jTmJFUXNVd3preUFUT2dtZldsYzlUMnp4ZzlzVXRUZ1psSExGK0di?=
 =?utf-8?B?V1RkWkF2dk9wK1hWRWVCMC9wcms5cGxpNFBWQ3hqWm4yQmF5TnFYVlRZczJZ?=
 =?utf-8?B?OHhLMDM2WFMxS1F2OG4vYm1sZzNLcHlzMklkbWplTm5xVkRqR1g2VkpUek80?=
 =?utf-8?B?SzJTM1ZkUWt3QmMrb2w4djFJWHhPTTlVL3RTRmRiWWlCZjgxaEpmNnZZL3RM?=
 =?utf-8?B?QUJEd2tDeXdnZmoxYlBybU1aRUsyMUs0T0xmaHNPVUZIWkhHbENPZ29uR085?=
 =?utf-8?B?MTgrdzNMaUlDSWk4ZzB2MzdvQm4wT2lYWkM1bURFTWlwaWd0dVIrNi9YMDJE?=
 =?utf-8?B?UmhHbnRsNXA2RDZxSlFVZjNhekEyRHBOY0FCTWdMbkJMUC9xUnEwTTlVdGNV?=
 =?utf-8?B?S2JIbEtUVVhNL1ZvWGo0bXp0RVJTc1loWHJyaUI0UU9FTVdYaDQ2STVyU2tT?=
 =?utf-8?Q?Y5kUwP2v2YCTJGlBLGfKDd6gL?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: fd5139d8-80a4-48c7-ba24-08dbc008ca61
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 09:53:39.1738
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: r/Z9UsZcvZVvtBeVuNHlEl/0ieWErRARCY5Vp1nVcajXgoYQxs4/wiFYVH1Gp8Anc5jM8XfUwzRlmy7lhLgTnA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB8015

On 28.09.2023 10:24, Roger Pau Monné wrote:
> On Wed, May 03, 2023 at 05:58:30PM +0200, Jan Beulich wrote:
>> Switch to using map_guest_area(). Noteworthy differences from
>> map_vcpu_info():
>> - remote vCPU-s are paused rather than checked for being down (which in
>>   principle can change right after the check),
>> - the domain lock is taken for a much smaller region,
>> - the error code for an attempt to re-register the area is now -EBUSY,
>> - we could in principle permit de-registration when no area was
>>   previously registered (which would permit "probing", if necessary for
>>   anything).
>>
>> Note that this eliminates a bug in copy_vcpu_settings(): The function
>> did allocate a new page regardless of the GFN already having a mapping,
>> thus in particular breaking the case of two vCPU-s having their info
>> areas on the same page.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Some minor comments below:
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks.

>> --- a/xen/common/domain.c
>> +++ b/xen/common/domain.c
>> @@ -127,10 +127,10 @@ static void vcpu_info_reset(struct vcpu
>>  {
>>      struct domain *d = v->domain;
> 
> d could likely be made const?

Probably, but this is just context here.

>> @@ -1633,14 +1528,44 @@ int map_guest_area(struct vcpu *v, paddr
>>  
>>      domain_lock(d);
>>  
>> -    if ( map )
>> -        populate(map, v);
>> +    /* No re-registration of the vCPU info area. */
>> +    if ( area != &v->vcpu_info_area || !area->pg )
> 
> It would be nice if this check could be done earlier, as to avoid
> having to fetch and map the page just to discard it.  That would
> however require taking the domain lock earlier.

In order to kind of balance the conflicting goals, there is an unlocked
early check in the caller. See also the related RFC remark; I might
interpret your remark as "yes, keep the early check".

>> +    {
>> +        if ( map )
>> +            populate(map, v);
>>  
>> -    SWAP(area->pg, pg);
>> -    SWAP(area->map, map);
>> +        SWAP(area->pg, pg);
>> +        SWAP(area->map, map);
>> +    }
>> +    else
>> +        rc = -EBUSY;
>>  
>>      domain_unlock(d);
>>  
>> +    /* Set pending flags /after/ new vcpu_info pointer was set. */
>> +    if ( area == &v->vcpu_info_area && !rc )
>> +    {
>> +        /*
>> +         * Mark everything as being pending just to make sure nothing gets
>> +         * lost.  The domain will get a spurious event, but it can cope.
>> +         */
>> +#ifdef CONFIG_COMPAT
>> +        if ( !has_32bit_shinfo(d) )
>> +        {
>> +            vcpu_info_t *info = area->map;
>> +
>> +            /* For VCPUOP_register_vcpu_info handling in common_vcpu_op(). */
>> +            BUILD_BUG_ON(sizeof(*info) != sizeof(info->compat));
>> +            write_atomic(&info->native.evtchn_pending_sel, ~0);
>> +        }
>> +        else
>> +#endif
>> +            write_atomic(&vcpu_info(v, evtchn_pending_sel), ~0);
> 
> Can't the setting of evtchn_pending_sel be done in
> vcpu_info_populate()?

No, see the comment ahead of the outer if(). populate() needs calling
ahead of updating the pointer.

>> @@ -1801,6 +1729,27 @@ bool update_runstate_area(struct vcpu *v
>>      return rc;
>>  }
>>  
>> +/*
>> + * This makes sure that the vcpu_info is always pointing at a valid piece of
>> + * memory, and it sets a pending event to make sure that a pending event
>> + * doesn't get missed.
>> + */
>> +static void cf_check
>> +vcpu_info_populate(void *map, struct vcpu *v)
>> +{
>> +    vcpu_info_t *info = map;
>> +
>> +    if ( v->vcpu_info_area.map == &dummy_vcpu_info )
>> +    {
>> +        memset(info, 0, sizeof(*info));
>> +#ifdef XEN_HAVE_PV_UPCALL_MASK
>> +        __vcpu_info(v, info, evtchn_upcall_mask) = 1;
>> +#endif
> 
> I'm not sure about the point of those guards, this will always be 1,
> as we always build the hypervisor with the headers in xen/public?

That's the case on x86, but this is common code, and hence the build would
break on other architectures if the guard wasn't there.

> Is it to make backports easier?

I'm afraid I don't see how backporting considerations could play into here.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 10:05:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 10:05:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609428.948522 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlnt8-0007lh-Ss; Thu, 28 Sep 2023 10:04:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609428.948522; Thu, 28 Sep 2023 10:04:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlnt8-0007la-Pm; Thu, 28 Sep 2023 10:04:54 +0000
Received: by outflank-mailman (input) for mailman id 609428;
 Thu, 28 Sep 2023 10:04:53 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJIK=FM=citrix.com=prvs=6283bbd10=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlnt7-0007iw-08
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 10:04:53 +0000
Received: from esa4.hc3370-68.iphmx.com (esa4.hc3370-68.iphmx.com
 [216.71.155.144]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 761408ee-5de6-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 12:04:51 +0200 (CEST)
Received: from mail-sn1nam02lp2047.outbound.protection.outlook.com (HELO
 NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.47])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 28 Sep 2023 06:04:39 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by CH2PR03MB5176.namprd03.prod.outlook.com (2603:10b6:610:97::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 10:04:34 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Thu, 28 Sep 2023
 10:04:32 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 761408ee-5de6-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695895491;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=/kycG0XxaITPfv+yY8by2OTz3zrG7EZckwkORPOzhmM=;
  b=MJKegY8MKL39Ws4itdYK+gsjfGKrk7m31p/+UfO+JUVpeWAVvFtmu4Bc
   WSlWc72BVpXcVbmviMuL87FA/OPGwaMIRGozQvPDEDg3s7QuzDNHZjZs3
   xbZTxjF4pWqMiCpQEwr28dio4/Zxfv75UtIpmKfOmpJOwpLvl36Qfwl9L
   o=;
X-CSE-ConnectionGUID: D75XRfOuSvWm2oGddJiHyg==
X-CSE-MsgGUID: HJ1TuFGlTSiJJ0WgCa6k8Q==
X-IronPort-RemoteIP: 104.47.57.47
X-IronPort-MID: 126798090
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:hGQ8ua9zfWKLK1/Pd78QDrUDW3+TJUtcMsCJ2f8bNWPcYEJGY0x3z
 DAbUWnTM6mJazP1fYglPYqxpk1Q6MDcmtdlSFY9+C08E34SpcT7XtnIdU2Y0wF+jCHgZBk+s
 5hBMImowOQcFCK0SsKFa+C5xZVE/fjVAOK6UKidYnwZqTZMEE8JkQhkl/MynrlmiN24BxLlk
 d7pqojUNUTNNwRcawr40Ird7ks01BjOkGlA5AdmNKob5Aa2e0Q9V/rzG4ngdxMUfaEMdgKKb
 76r5K20+Grf4yAsBruN+losWhRXKlJ6FVHmZkt+A8BOsDAbzsAB+v9T2M4nQVVWk120c+VZk
 72hg3ASpTABZcUgkMxFO/VR/roX0aduoNcrKlDn2SCfItGvn9IBDJyCAWlvVbD09NqbDkliq
 qEoEj4qcyuduOfsx523RsttptUseZyD0IM34hmMzBn/JNN+G9X4ZfyP4tVVmjAtmspJAPDSI
 dIDbiZiZwjBZBsJPUoLDJU5n6GjgXyXnz9w8QrJ4/ZopTWMilAuuFTuGIO9ltiiX8Jak1zev
 mvb12/4HgsbJJqUzj/tHneE37WRwnKrANNKfFG+3t5I2WGO6EMXNCYXd3njnvaSgxC9C+sKf
 iT4/QJr98De7neDTNPwQhm5q36spQMHVpxbFOhSwBGAzO/Y7hiUAkAATyVdc5o2uckuXzso2
 1SV2dTzClRHsqCRSH+b3qeZq3W1Iyd9BXQZeSYOQA8B4t/iiII+lBTCSpBkCqHdpsLxMSH9x
 XaNtidWr5Uei9QakZqy+1/viiip4JPOS2YICh7/W2uk6kZiYtejbonws1zDt64cc8CeU0WLu
 2UCl46G9ucSAJqRlSuLBuIQALWu4PXDOzrZ6bJyI6QcG/2W0ybLVehtDPtWfi+F7u5slefVX
 XLu
IronPort-HdrOrdr: A9a23:067Xa6+VhRNPiXChm+Ruk+G/dr1zdoMgy1knxilNoENuH/Bwxv
 rFoB1E73TJYVYqN03IV+rwXZVoZUmsjaKdhrNhRotKPTOWwVdASbsP0WKM+V3d8kHFh41gPO
 JbAtJD4b7LfCdHZKTBkW6F+r8bqbHokZxAx92uqUuFJTsaF52IhD0JbjpzfHcGJjWvUvECZe
 ehD4d81nOdkTN9VLXJOlA1G8z44/HbnpPvZhALQzYh9Qm1lDutrJLqDhSC2R8acjVXhZMv63
 LMnQDV7riq96jT8G6Q60bjq7Bt3PfxwNpKA8KBzuATNzXXkw6tIKhxRrGYuzgxgee3rHInis
 PFrRsMN9l6r1nRYma2ix3w3BSI6kdl11bSjXujxVfzq83wQzw3T+JHmIJiaxPcr24tpst13q
 5n13+Q88M/N2KKoA3No/zzEz16nEu9pnQv1cYVknxkSIMbLJtct5YW8k95GIoJWAj69IckOu
 9zC9y03ocfTXqqK1Ti+kV/yt2lWXo+Wj+AX0g5o8SQlwNbmXhopnFosPA3rzMlztYQWpNE7+
 PLPuBDj7dVVPIbaqp7GaMoXda3Inale2OMDEuiZXDcUI0XMXPErJD6pJ8v4vuxRZAOxJwu3L
 zcTVJjs3IocU6GM7zB4HRyyGGPfIyBZ0Wu9ikHjKIJ/4EUBYCbfhFrcWpe0/dJ+J4kc4nms/
 XaAuMiPxasFxqoJW9z5XyPZ3BjEwhhbCQrgKdLZ7uvmLO9FmS4jJ2sTN/jYJzQLB0DZkTTRl
 M+YRmbHrQz0qnsYA61vCTs
X-Talos-CUID: 9a23:aNvIGmMIuBRVi+5DdHY6xHQaPd0ebELYlnD/L0OaCEZ4R+jA
X-Talos-MUID: 9a23:8BaMdAmbBvvCdU3x8bVidnpCFp5U/oqBDHw2kLck4/aLHiUuOGek2WE=
X-IronPort-AV: E=Sophos;i="6.03,183,1694750400"; 
   d="scan'208";a="126798090"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=THOPFS/e5cQtxhDmvFB8Pf3i19JmqTBMjHb8qfoHR9yOEMqNrqcPOij7UA9g5i8pfv0gzSUs64vs3IIkiG0aCt2NujhFPx2l2+MauOnIu+rVOnoLVlNfSYzU9RczcFjM6hbuuwA0nY1qE7ZPUV2P/oc9rk/ZR5VxPnYPAKk/v+5RZy6Ief1zxSGxDcI28ho132vIdTmFHmqMTmWCkrt1M/LXl/74qTGLWYYmtQPytJR5zqqjUXi88i19P6XzyFNg7t7x3xgSJoownKr84BadUilFj3wxPcyp5PpJQbS9+Mbt5odq4xhBQ6U0uDjHUry9yVePd7pqbsjozvrwP6ec/A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=zPJL4F6Muxwvcbd1+7+UbRxgAoi/5KhWAtvuw5wuwzw=;
 b=CbF3OhdSIOo9amTW78c62kn1/v7CimA9idvN2CG/jskfD3yhE+rQI8K7p3ytTZW1Cw3lz9i+xQBJfXNHIGH54rx+7fG/Pcdt1hzss55taVlceyBhu3+Z3gd1NFNkB+6KorxgRxV8YuQTNRrCRunrHWRSwerTWzL7k/WwdwW6KyOktzQQHmnMEIFBp7mpF393avsn1rsOkrOKfQluXV8CaLKptK/l7tHArzGOpLoctXOIw5uaukAVgYB03RD6Xp3tfwaf/q9cmeMQgOMiG5M2ISQxCHnNSaoYdWEKu8fZrmK43uN6Reg8GLcO0BJ4UvfSJZ+P8WnLppk5iGOdIlMMYg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=zPJL4F6Muxwvcbd1+7+UbRxgAoi/5KhWAtvuw5wuwzw=;
 b=ELZDDv+ecOyNJBO6tQ60bpDjsd+eDoE99gm2zrmto0L1rMOldVrcahM2AzGARJYM3TGs6d7iOBz/uLx/QiUgGA5oVyLSIqK0bAZOrE4IWIdU9cK13jK4UPBWCisSMJkmhP4R9Fbp4oVl1TbLn7VFGYJsYd+YDmPWL1uInj4SCqo=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 28 Sep 2023 12:04:26 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH v4 6/9] domain: map/unmap GADDR based shared guest areas
Message-ID: <ZRVPqiRHXMJC3Bo9@MacBookPdeRoger>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
 <a34cef71-d60f-43ae-f61d-13d6c846eaa4@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <a34cef71-d60f-43ae-f61d-13d6c846eaa4@suse.com>
X-ClientProxiedBy: LO4P265CA0117.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2c3::20) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|CH2PR03MB5176:EE_
X-MS-Office365-Filtering-Correlation-Id: f123d2cd-4647-4cda-fe8a-08dbc00a4fab
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	hPov307Tsj4rYTovYnjCTBX4OwWrS7WsmZd/fzE7LZUunG9i5i/W2iDFrbgXtEqhbREf/96/ICp6q4TJr6mtvq2zcYNdKd6zPpfSlnQZvMT6NTvVTjkvFv8/EUs/QmCahFDR6LBwvp/IZgUvYJvzNpIz5a71EE/U19WEoqz0xQn8NmsvmhJ45j0YikQeBCM0MlYAHPuk6kaRx4Dk7WU+crNFeocbDzWd8psgm03WcbySV1shxqoMcJIfVvjJ1EIlLtODwqYDIOa+5v7YuLAHxvIWbW74rbiLGGm3RC3uB47/VERKIadVNdy5KP6/2jyGAeeHFyPw8ACDnq+llLnAr5g0eU+4kIbifJqcdCkWvGc6GKl4ELlNApuegtwmm9fjazVWzGylqMBx02/rraiYek84/fNLTaDGZTMMCRKT4zIjLIZNYoVqinDBYpoYXHJ+Hh+4e54rFVfpGY2EuGCSAkpXTZQlKhUgAqYbuiCQQkQXXVe1tYDmThbMFoxixnyHNP+xs+PLiidx1qkqzApo6VqOfdPWsFEbiZrCb2tppQIYslHa+yCSaiGAV/EgAxtq
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(396003)(346002)(136003)(39860400002)(376002)(366004)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(9686003)(6512007)(66946007)(316002)(6916009)(2906002)(66476007)(66556008)(54906003)(41300700001)(8936002)(8676002)(4326008)(478600001)(6666004)(5660300002)(38100700002)(6506007)(85182001)(82960400001)(86362001)(26005)(33716001)(6486002)(83380400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?c3ZSSVU1dUJLVkpzbjFnQmNzVXE3YW5HL1UwV2ZiWXRlK05nUHczZjF0dmZY?=
 =?utf-8?B?QjhCU0RKY3J6WGdDbEJwcGphWkQ2bjh3THBleHFQU3k1UDJ4UFBCdWMwM1VN?=
 =?utf-8?B?blJnaHN1cnFVNDVvZ0p1Y1ZzUXpMNTUwK2pwNytzR0dGSzBoYjZGLzZFMDRT?=
 =?utf-8?B?aHQyMEJmZDZYd0tSYUI4Y0lJSlNONnkxS0ZMYXdyeE1sTzdHSmZId3NYV3pl?=
 =?utf-8?B?MG1PR21ZVk5ETzhJR2VNckZLYy9yZzZzQWFIcDhLcFEyczBieWdTUEJ5NEVv?=
 =?utf-8?B?a2NlKzRDQmg3VlNQZzQ4ZkpweGZyNzZBWlNKSWZEWEl4VzFnWHdKdDN6dVo2?=
 =?utf-8?B?cTVDWnNmWEVMbWhZcWE0THl3VkZOSWZVOTlQTmpmNEpPcStzZVpVYURYSFhm?=
 =?utf-8?B?dDdNNEYxb3RZZzU1LzVIdGtiZW9ITHNhYk5pcnMyVnhRc2RJTlNwTE9xSUZS?=
 =?utf-8?B?S2kwZllMaXM4Um50ZTl5alJlM0RQVjRaVWFTZmZacThhZUQzNjdicEoyN0Nm?=
 =?utf-8?B?MjdNaVFteUp4MlhRWWdmNVhjb0hBM0FhVEN1UURFY1g1L2YzTDJIcmlWWVZ6?=
 =?utf-8?B?VzBQWG1qMWVYdjRoUnRaNWt0L3IwMEFRMWJTdldJdGc2bm1qWnY3WU45V1Bs?=
 =?utf-8?B?eU5weUMwcjg1M2RCR2JDMDR5TmtYRlhrc2czTGp0M3BGT2tGbkpGSVUxbDV0?=
 =?utf-8?B?SnY2OXY3cXJwQnl5QlRRTmJHTlA5OUdDeThEdkNsZkNrT3kvVDVmazg2b3d1?=
 =?utf-8?B?OEtHVyt1b1doY1FTblE5ZGtTZ3ZnUFRONHVTRmlrU0luSVoxRllYWGFXYjIx?=
 =?utf-8?B?RmdHd2hyaTluc0RrZUNHYWpTUWtyYkVxWU14YnE1b3FWYktQT1JEUEhOWERa?=
 =?utf-8?B?MEo1OEUzNE5OM0JkVW9EM2pOekVYemZtc3JmeFgvWDRvRFV2Tnd0WVcyZmk1?=
 =?utf-8?B?NVJRdmE4cSt0RzdjTDIxS1RSc3RxcFJCcURXa01aSWNzelJWaGpHdmRKcy9u?=
 =?utf-8?B?MDFWVTRtTUFRU3NiczNjcEdOcTgveC9iWlhjaUczQ2QrUDF0MlZrSHYwR2dw?=
 =?utf-8?B?ejEvK2tpTmVFaE9ZMkUzZFo2Wm9zZ1lYSE9CUGlqQUsyT3JjelFaVzJiUXU2?=
 =?utf-8?B?UE5jZTR5WVVsazBKVlRraFcyeHpWY25BdjBKUW1XOFlHeWZoS1JpTDEzdGlq?=
 =?utf-8?B?eCtEUlZBd0trQmxrRWtPWGRBc1dHdXV6di9uYVRSMTNiOVNobCtiM0dlNzVY?=
 =?utf-8?B?WU9wWVVvd0g3ZG1FMFFQRTExSU1PbjJIQ053WmNqd29KR2FOcE5kcE5MTDVW?=
 =?utf-8?B?V2ZXbHZOaEJsKzl5QXprOVc4RjgzTzhGZjdXaGQ1cXFydVBYWHRFZk1yb0p6?=
 =?utf-8?B?ZnZ5V0JmZVVxK1pJUWFqUCtyOGtYSng4bTVHTUZOemR3eDVsYXlFbXJiMW52?=
 =?utf-8?B?cHFHOC9ORzFZaFhwZDE3L2E2dUVuN05OOUhITW0vT3VSOFhtS2FrY0x5alp6?=
 =?utf-8?B?emsvcUxiV08zckpLY0VEbVRYbENLS2l3ZXRSNlBONnQ4c0lEbG5mQk12SCs0?=
 =?utf-8?B?MHllYkE5QTR6aFdsK2N5NENlSko3Q21iYVM4c2ZibnpaNldMN3AvQ3FNcm9J?=
 =?utf-8?B?QThhbHhvTEJpNWtVVzZrVjZ1dW1SU29vMFZ6RkdwQ3Rtc3RISGg5SzVuUGQz?=
 =?utf-8?B?RG1aVzB5VFIxNmc0cUdES2poWHFkTm8valJ2Q2hjdmRIcWJyL1dRYlNrK0Vm?=
 =?utf-8?B?NzZDTzd3UFBkanVVbURKRlltTGhXc1BEM1ZJOE9UblpoTXQyK1FHTjRRTm95?=
 =?utf-8?B?VWxiR05tWGhia0tHUXM5cDVTZzVsZUFwLzhtWVl1Z1BrZ2h5clJWcFpuZmdE?=
 =?utf-8?B?empwN2FtanFoQjRzREViSk1ZSVlOTVluMDBoaDhMVjNWWmpqWUI0b3RKQXFl?=
 =?utf-8?B?TWpHSGVzV0VoV0NzMjRxTkhxaGZndFprdFFvbkc4TFA2Rm5EelVOeklvWENZ?=
 =?utf-8?B?NUNIaXUyYkg5cUVId0l3TXRNZ1BkaUdPWk9qQkhsT2RYWG1KNVh1Y2wyMmtR?=
 =?utf-8?B?RUthaHNpekh4SVVxVm4zNXo2cEdBOVpmVUVhbGs0QU0ydU01UkxNYUVIbFAz?=
 =?utf-8?B?dkNkcDBoQ29hcU5obitjYXZmR2VUelRmaU9DaWxzU0NkSm00aGp2aXJFWEZL?=
 =?utf-8?B?Mnc9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	F8q8VLt0o2qSfRiuLKahNLTGY+O/uHkZTHmh6KU/Gy0fsf1newjQGgcoFLUyN0YMWruqb2ajNADl22Pg0l2TEyYqjz9Bwo3q8p7F9HqBDbfkpByfUl17JG3J4NKyb7P5bLHJEU1ENyoeiIPnx9ZlFq/EDFFwH5PPpncEEpMlIUiB16tAlvWCxb5YL12yAa15/FDq6/qOMRYF3IgQA+fBdGx/S3wL1CrprytqotM7+/KD8myK5Z0KUhljCnmUNmFFJxvq8N/NvfQnie2911lGtwSQsVOy4O3imoAoj3XMBXzzt1Qa16oucSUeh1MFtlSoRagGezNlJJcPYfLh+DG1HqAKArc4gh0q0roalWxD9UZYusqiEmQDWmvwWIbtyfuwQdPmlyhihHrVpGg4e03ekcunRVlOLFjiAGFs1kfFtXNfgdO0oSab3FfFac5VcYPmbjAyjhUsESyxDdDLkXYEICHADYCbztMImJzJLLv7sOsWKT+iTiDN37q2Ihq7kwvgTOg0Xd9GNkHVrS5ylgc7AoAdORGZGQtxpx3GG0zEelWfLSacMnfSehroc3mZ3nZ2b42DQD0jROF3ynMD0IKhfh5qaMmuYHHrjQEb3bD3gkUWtAjuoa8r/hhHs5teq9IWH2FvQF7bJSSEjy7LURi+D10b5+MJlm9X4aAZTZsuiEHo1TPzGMfXspZeGSnWMR+0VGnTkAUXbRitCBKtphoWkhbWhPUQPx1qHCjeyD40uz3KmANpKJtxMUvrfGTiqbp54VuLj2B+bJG9VsTIQJhkCPpbGfnA6fq1y3YxPe+ytUBNSYV8Ty7WJTiR/QFM1/dCdoNsreiLMKGhkntQjfHMwX5IjvclqXKhlZRBQwAaZJDy947ymigqMHGrKMKYDuAi
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f123d2cd-4647-4cda-fe8a-08dbc00a4fab
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 10:04:32.3571
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: lGRT5NKI0HXzOXMvWrbcX/QTpmw8/4uVVNSrgNVRZUErXjs+ZIw1vwFzPiynmDMvZXu31B2q94qTELpZk6TkaA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR03MB5176

On Thu, Sep 28, 2023 at 09:16:48AM +0200, Jan Beulich wrote:
> The registration by virtual/linear address has downsides: At least on
> x86 the access is expensive for HVM/PVH domains. Furthermore for 64-bit
> PV domains the areas are inaccessible (and hence cannot be updated by
> Xen) when in guest-user mode, and for HVM guests they may be
> inaccessible when Meltdown mitigations are in place. (There are yet
> more issues.)
> 
> In preparation of the introduction of new vCPU operations allowing to
> register the respective areas (one of the two is x86-specific) by
> guest-physical address, flesh out the map/unmap functions.
> 
> Noteworthy differences from map_vcpu_info():
> - areas can be registered more than once (and de-registered),
> - remote vCPU-s are paused rather than checked for being down (which in
>   principle can change right after the check),
> - the domain lock is taken for a much smaller region.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 10:11:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 10:11:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609433.948532 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlnzC-0001Vi-If; Thu, 28 Sep 2023 10:11:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609433.948532; Thu, 28 Sep 2023 10:11:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlnzC-0001Vb-Fu; Thu, 28 Sep 2023 10:11:10 +0000
Received: by outflank-mailman (input) for mailman id 609433;
 Thu, 28 Sep 2023 10:11:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlnzB-0001VT-7D
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 10:11:09 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0616.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::616])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 572f4cd7-5de7-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 12:11:08 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB8PR04MB7097.eurprd04.prod.outlook.com (2603:10a6:10:12a::11)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Thu, 28 Sep
 2023 10:11:05 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 10:11:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 572f4cd7-5de7-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mbdilbLjUW1bp8PSYWocBA1WPxl+1ov31P6490xeFTnXUOxBfkE1WBAWjWRve42sd7K9f/+RFkWmLe97FO+G7+yVjx34dr6Urx69X1CP83XlolaYIFuqeDb7fqzbbwfL7Y7ZGMiuuKg8LsFAkoJdF5Ob1WbiUzGV/2u5WErFy0djdnc+X7hoNpx0hWDglXwkw4N2t8adZ+vlCHke/vzKH5YQU2QQa0dVHUvwsCr820to6GZSP3/oh/Jn7hDOBdsMqgpj0wlbuuvW2s+OrX7Oku8pPXpt/GjvGP/eYwXph0MI2+8UUbooAZfz5g8rKCpOCqotaFvvX6XCJAsmgKmk+w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=FMXGBBlkA6slFqLbMvehze/eWvDnTt87mceZCPdp12w=;
 b=FgGEZAFCEKZ4FEWZIBA/2hZoCGCHMl0YYPx0kjl5VTBeF5VtfDxO7/dioXiW1FqaWmK4KkfbdoDEYc3ueXFfzNoly91vlJcY10FtMjvj42pdllOVEifgi9jvRXx6wDPhhfBbBytVGaxcEimFVBT9qbhr8yjrXuzKF75gdz4PZ2WaB4tjkfTC399mBWJjd+d5t1BYLEbU7TeE4GEFzelEiLeTCXy3C6LcZcakkiV4ynyL/U758O+eMjNXMAwXyF9mxm6tOWOI9cd2FkhSH1nvS6gbQV0UH36c5C+NhakpM8LyTWO5uKPV36jOechRY3MuOLqwZlaDkUuzXE8jvyl7Pg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=FMXGBBlkA6slFqLbMvehze/eWvDnTt87mceZCPdp12w=;
 b=MeEcBPWPDsjmQxtO76cHwZYU7BVUqgZsFDEuvBwcYWFW/k6hdIEOD7VAU1Nl9DqroxDn1uY/jiFB89EmBJh8RRkBN4aA1KFz5kLCAT6Obb8ImSbitdAfw7ZmC+J7BD3cv16VOqLzKzinEIurNKMywchvOdPITT8Tjaio6BQZlSWeR/6q6vR+3UvLoxBjunx4MfVi/b8fwNEFdTpKZ/PcwafEXJjNxmUCs4LZNCLnylon22oOqyQSDWUcOLQpgcANa6BZPBI49FnR6RZf0o2j8WMlIyI9SMoVvI1VxlTmbMn/4bHk5YjM9e7VZS9RK6AReK/HtqqqMfCapIrNSDjt+w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <d285a456-307a-0a36-0910-cb80f419627d@suse.com>
Date: Thu, 28 Sep 2023 12:11:02 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v4 5/9] x86/mem-sharing: copy GADDR based shared guest
 areas
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
 Tamas K Lengyel <tamas@tklengyel.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Henry Wang <Henry.Wang@arm.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
 <6047c192-0f37-e4ff-5980-fd137b3f1869@suse.com>
 <ZRVMhdyI8s4chr7b@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRVMhdyI8s4chr7b@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR2P281CA0005.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:a::15) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB8PR04MB7097:EE_
X-MS-Office365-Filtering-Correlation-Id: a7b5a579-f8b2-4fd2-bcc4-08dbc00b39e6
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	JfPdr/kErUhirlYqZqE4ufoa7Igf4wRNwo7HaZVzXZFXWljRaBAHo9ZzbBRVuDvgIbL6QBBWa+m6NhMz1l2JT3mwHyZPJn+NTF3HW+hiihbw913RoRMf7PX6UpsVmrIjbVmCbP64I+MpMjd7+zuWLp2tCi0g5NXYyHCqrKI7A15oThawxeKKM1GxDmvm4T998X0+VcvjPsjBRDO9Gjw5uJO9pvG+lB5hVLq/O2ByhGwGThLGmHdeVzsn70v6bikpbmLFpOTB1szX/FRakpz4oRAzV0fpQkhq8vsgjiWXGxLYTqTWXTKX3xVi0x4TDl519p27pYjhqedNudaZvEd5oeMzdqnArOTmssLmyQyoQ7voGKOQ1mxDWP3KDh3T6+rvw26xreRJEzXtOUYCgo8bMn9vXKW3sp0/MFgE58skHtvT42MnW0H5aUWCHqDiVYjnwomVANycCyxO9KPt4Vuw9aRpOP9TWA6BaY4il1tC9Cpa38WEegMGy17cNj2lK+Iz6Jnidsq0XFdSZ3iLO3ce9kqyUjCeF51rLi5eN3gkgLkqNirOJFrG2m2QWtCZvAChb8zOuFybM8X+Y6A/0FE90VOxiWC4Sft5Tf2iaJJbNj9kVBQUkued17RMXYakpigZU64YOwsGbXoJjdFiF3/aEQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(366004)(136003)(346002)(376002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(8676002)(8936002)(4326008)(31686004)(110136005)(5660300002)(66899024)(53546011)(6512007)(66476007)(66946007)(54906003)(83380400001)(316002)(26005)(6666004)(41300700001)(31696002)(38100700002)(2616005)(86362001)(6506007)(6486002)(66556008)(2906002)(478600001)(36756003)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bXZnM2VHaElMTnUzZDJ3YVN1anFUQTVacURKQy94V2JQV25GQjRqdVhFaFJt?=
 =?utf-8?B?QWFHdnQ4VFh1ODBtMzhpS1JXOUU3U3o0cEl0aXFXUGd1My80dVZsSTM1KzRH?=
 =?utf-8?B?R1JFVEl3V2tiRm0rK1I3Rjd3QTRlUmpFclJKeVBrVS95SXByclp2aDQ3YVIw?=
 =?utf-8?B?a3QxQXVxNk5LOG9hWUpHYlFPWHcxb0ZEcVJwNkNzcXRJUXppSTdJekdKcDlL?=
 =?utf-8?B?c3hSbXdGY0lEUXh5Mm1mYkRkeXQya2FrdUpLRjNIR0lkTUxYWXlOL3dLYXJD?=
 =?utf-8?B?dEFtTUoxV0xaQU9CdVFEa1ZmTDR2U3Vuc2xneUJuOGFrZytYa1cxUU5sdU1L?=
 =?utf-8?B?cmgyOGxsNWcxSjJMcVVPenQwQWJ3bkZpaWI2OVpXNmxNT0hJTzdYMk45QUxz?=
 =?utf-8?B?ZGo5aUxLaUFId1g5MnVQOEpLZXF2dUJydzJXNTd6ZEhKYVF4RVIrS2ZYNStE?=
 =?utf-8?B?UXZaczhXSzRCUFFUTm5zVTV6cUtWYnNYN21kdGpGTTl4ZE4zM1hmU0RoN1RS?=
 =?utf-8?B?MWtQcXZiMDB6SmRQVFpvY2ZNTmxjSU8yUWdlRGpiTjRTdFRTV3F0WXozSDA2?=
 =?utf-8?B?ZjhPWVhaNG9OSkJ0bTY4SDFnekpRVDlvQUxGQzJ0M2NPNGxoMy9EakRrNnp1?=
 =?utf-8?B?REFQTXRURy9Ta1FTQVZ1Z2Q1Q1dDa21zdGFhV1VIWGpvU2xIWEQrTFp5ckpB?=
 =?utf-8?B?eThzZWlrNFRIdDRRMWIxcjFVa2FodG1pUW5XTEh6aXN4OW1SVEppcnU5SFpC?=
 =?utf-8?B?RGFITmJnVzJOU29JZHB0VE9zNXRqekNmek1LQ1Q4eE5VNGtFR0phYVdhNzhR?=
 =?utf-8?B?YVMweVRVSEFsZEdYYU8vREdQSms2T2p5ZzdCeHJPUVdSS0dqWk5lK2ZaeDNR?=
 =?utf-8?B?enVBTDcvRGdMNTJVOEZZWkxnYUE5YndqbDZMMzEwYUhZWXpSdlFJdWo3Qmw4?=
 =?utf-8?B?dU44aVBpMkNOOHNLMG1YUlhnTGNoRHc4K1RtaTZZbUhWUWR1WFRvUUt5RU9R?=
 =?utf-8?B?OXhnemdRYlcyUkQ2c3RZMmRVUWVnSlVZS0ZHc1ByWWFtbm4rNTVYWjVrVzVF?=
 =?utf-8?B?WExuZGl3MDY3aXpJOWo4TnlxSjhheTFMUXIwTVRyTjMrN1c0K0QyQ2RSS0pS?=
 =?utf-8?B?Z1lyMFlZU1BmS3ZMa3FKUWN3UDZQNXB4Yit3OCsrK3Nvc1ovUGpSVC9ycUox?=
 =?utf-8?B?OVhjREsxTHYvZGdhZGtiaEZ0VjV2ODhvTXJoa0x5bExwdllqcWRBRXhGajd5?=
 =?utf-8?B?SlZ3bUpwYkZyQ25udFRqSDQ1ZWQwWEdvM1NoYUhKUVQwd0V6QUg5WWlucHBv?=
 =?utf-8?B?dHpCZUUwblE2eEQ1K3RuMklmZXZJSm4vWVJ6eWlqeG1ONnZrcUhNZkRtbmRF?=
 =?utf-8?B?SEUzcDhGZnNhaDVDU2pXY1lrblVkZ1VNcktKQUlUdk4xb3M3YVk5eGhnMGti?=
 =?utf-8?B?cGdBTC9nOE5QMk9RU2dQNzZmekZCOEJEZzF0WkRXN1lIWHZYbVV6a3Jkdzhk?=
 =?utf-8?B?T1pnYlF4VmJlZzdneVhPYUZRUjVyZm5rQUdXbkpOekhQUFNnR0ZjM2pLK1ZY?=
 =?utf-8?B?dHdIc1lzOHZqS2JvRWZZWWs4Vk9OSlh0bUV0YkEweUd0dmU3bnNwenNsS0lX?=
 =?utf-8?B?RmhJNHRmT1lrLytlV3JpYkgyTUEvS3I1Q0dGdGlaWWdZV2FOQklNZUVpTksr?=
 =?utf-8?B?YlowdllSV1o5TFRjeU5uNFBJbnFzdjRoS204MVpyQzFHYTJKbFdnK2Q4am1F?=
 =?utf-8?B?cHNhK2Z1WE91dWRTMktWZFRvSjQ5U0NqNmZKbzBORnhXaElibnh1R0NoUlho?=
 =?utf-8?B?dGhhZTR5aXlxTmtuVE9kUGtuemNDN2dSdWhFSFdQdlZlVU9Tam9jaUh1ekFl?=
 =?utf-8?B?RFhlMkFUUWxTL2c4K0t0NElaRDRxTmhvRGNCYlByZ3VrRDhORUFjSURqRTBS?=
 =?utf-8?B?VFZ3QzQrdHp0M0RLWXNlKzlBUVc0bFN1cUtnRE4zK3QwanliL3ZCQWR0MmN1?=
 =?utf-8?B?WXJyK2ltaW5FQmk0OEEvTitEZkNPdThNMkdhT09lU0ljSDBtTkw5bUM5NHJl?=
 =?utf-8?B?VzA2WGNTbCtLbjNQWHFpTTk2WVJ3M2NGR1JaT3Q5dTJHbS90SlNOVTl1SG1V?=
 =?utf-8?Q?i0tpm2HGlcKH1pF5RffnFMKdp?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: a7b5a579-f8b2-4fd2-bcc4-08dbc00b39e6
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 10:11:05.2808
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: r4gDBd1iB10Pt5Ih8VsIBC1qCDs60+2IxvAtD/BydRh8aPW29bCL8fyl/jG0M+o5tCQtW46cltnR71W8OQ7edQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR04MB7097

On 28.09.2023 11:51, Roger Pau Monné wrote:
> On Thu, Sep 28, 2023 at 09:16:20AM +0200, Jan Beulich wrote:
>> --- a/xen/arch/x86/mm/mem_sharing.c
>> +++ b/xen/arch/x86/mm/mem_sharing.c
>> @@ -1641,6 +1641,68 @@ static void copy_vcpu_nonreg_state(struc
>>      hvm_set_nonreg_state(cd_vcpu, &nrs);
>>  }
>>  
>> +static int copy_guest_area(struct guest_area *cd_area,
>> +                           const struct guest_area *d_area,
>> +                           struct vcpu *cd_vcpu,
>> +                           const struct domain *d)
>> +{
>> +    mfn_t d_mfn, cd_mfn;
>> +
>> +    if ( !d_area->pg )
>> +        return 0;
>> +
>> +    d_mfn = page_to_mfn(d_area->pg);
>> +
>> +    /* Allocate & map a page for the area if it hasn't been already. */
>> +    if ( !cd_area->pg )
>> +    {
>> +        gfn_t gfn = mfn_to_gfn(d, d_mfn);
>> +        struct p2m_domain *p2m = p2m_get_hostp2m(cd_vcpu->domain);
>> +        p2m_type_t p2mt;
>> +        p2m_access_t p2ma;
>> +        unsigned int offset;
>> +        int ret;
>> +
>> +        cd_mfn = p2m->get_entry(p2m, gfn, &p2mt, &p2ma, 0, NULL, NULL);
>> +        if ( mfn_eq(cd_mfn, INVALID_MFN) )
>> +        {
>> +            struct page_info *pg = alloc_domheap_page(cd_vcpu->domain, 0);
>> +
>> +            if ( !pg )
>> +                return -ENOMEM;
>> +
>> +            cd_mfn = page_to_mfn(pg);
>> +            set_gpfn_from_mfn(mfn_x(cd_mfn), gfn_x(gfn));
>> +
>> +            ret = p2m->set_entry(p2m, gfn, cd_mfn, PAGE_ORDER_4K, p2m_ram_rw,
>> +                                 p2m->default_access, -1);
>> +            if ( ret )
>> +                return ret;
>> +        }
> 
> I'm still unsure why map_guest_area() shouldn't be able to deal with a
> forked child needing the page to be mapped.  What happens when a
> forked child executes the hypercall to map such areas against not yet
> populated gfns?
> 
> Shouldn't map_guest_area() be capable of handling those calls and
> populating on demand?

Funny you should use this wording: P2M_ALLOC will deal with populating
PoD slots, yes, but aiui forks don't fill their p2m with all PoD slots,
but rather leave them empty. Yet again I need to leave it to Tamas to
confirm or prove me wrong.

>> +        else if ( p2mt != p2m_ram_rw )
>> +            return -EBUSY;
>> +
>> +        /*
>> +         * Map the area into the guest. For simplicity specify the entire range
>> +         * up to the end of the page: All the function uses it for is to check
>> +         * that the range doesn't cross page boundaries. Having the area mapped
>> +         * in the original domain implies that it fits there and therefore will
>> +         * also fit in the clone.
>> +         */
>> +        offset = PAGE_OFFSET(d_area->map);
>> +        ret = map_guest_area(cd_vcpu, gfn_to_gaddr(gfn) + offset,
>> +                             PAGE_SIZE - offset, cd_area, NULL);
>> +        if ( ret )
>> +            return ret;
>> +    }
>> +    else
>> +        cd_mfn = page_to_mfn(cd_area->pg);
>> +
>> +    copy_domain_page(cd_mfn, d_mfn);
> 
> I think the page copy should be done only once, when the page is
> populated on the child p2m.  Otherwise areas smaller than a page size
> (like vpcu_time_info_t) that share the same page will get multiple
> copies of the same data for no reason.

I think you're right, but this would then be another issue in the original
code that I merely didn't spot (and it's not just "copy for no reason",
we'd actually corrupt what was put there before). IOW the copying needs to
move ahead of map_guest_area() (or yet more precisely after the error
checking for p2m->set_entry()), and in the original code it would have
needed to live ahead of map_vcpu_info(). Once again I'd like Tamas to
confirm (or otherwise) before making that change, though.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 10:14:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 10:14:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609438.948541 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlo2L-0002eg-8W; Thu, 28 Sep 2023 10:14:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609438.948541; Thu, 28 Sep 2023 10:14:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlo2L-0002eZ-5s; Thu, 28 Sep 2023 10:14:25 +0000
Received: by outflank-mailman (input) for mailman id 609438;
 Thu, 28 Sep 2023 10:14:23 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlo2J-0002ct-Os
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 10:14:23 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2060e.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::60e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cb0cb2f8-5de7-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 12:14:22 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by AS1PR04MB9285.eurprd04.prod.outlook.com (2603:10a6:20b:4df::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.22; Thu, 28 Sep
 2023 10:14:19 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 10:14:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cb0cb2f8-5de7-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Vc0dcChFXauKE8UcIRo/1H7GjQK/YSgU+EOIEmBI8LDG+Qz/LBGKCvE8rdSWkUeBfDNSGq7ogXdUBqteiaqWjafJlDNBleXX0/WqQ42DY2l2DVc9Fxp6m7eNCMJOtmSRRcbwUIlX0nsqNyqMIc+NoslBVqqb4CXHkgW5rrOEXe2pnGGtU+E/d622Qi3lBMoAnX6iKFko2RiOCkZSBM+Npb1fY7up6THcrlYJPFb2uuBxxHTGKO7U1CxRyQUeE6LeE5AVnzBWcZKCZX+NkbFXa1rKMiDqvd8gTl2TScMg2swgKF87hQwLv6yhtwKUXk3bxxxX3v8eWkfXh/0KmVP1Ew==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=jHVDb1/eJmLr2TOz/kFmxKMBsA+MXe+vOM3vKURTNRc=;
 b=E64mwH7vduWV9jPbZmbgs6xsPkce6NAFNpTYw72fd340DvKCQdSIk6kDUapw5O+vI1JcSQp/ygzaO19yTB1Al+wfYdMGLTLLq6yfgalZiojSNv5nM1J7u3xLjEL5c3W3X6GVN6yD5HyZi6f40HL3ABNRO9dRMYTvotBXTWYWeBn2UofGZDgstucDR20Akl/p9m7zGyB7zQCKEQp3mhNXOtsgZQRi+r8HkTyYHgrjL7/t7+3aA+2LPonQmEGfYaBhadGKzXzJF0EhdYUPBM/X40pMcmoFyrzzF8o6LumFOAkWblMnN1T5QLPj85sFwL7XsaLFdxx1uG+iXQz0JgaFNw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=jHVDb1/eJmLr2TOz/kFmxKMBsA+MXe+vOM3vKURTNRc=;
 b=EdS5EEGLa3+SGJcp5ZR+6ypIRXrb/hYTb9JGuWMkoun/Bi3G6xBP4P/ecHl1Mgq2YEaoFkfP8YGZe6Zx4vj14Wbpq+vptBb6/XAsOIY/x7rY0BGjt3LIhJOol1CeW6SDySEqmvLxt2xl8/SeskDmbiG4JxJWRUJ3ypGXEzLOXGs6UG97jNfsP2zouseuhJbmFwh/B9aBMEM0/BrXfcek09v7l8SoUEupMdg3RE9U9X4+TT+/EaUxo30tqaxUjbIQQ/iuAQfLnTZOpViwf2/yrBmfhTT72V8WV3Mv7IwI5pFJ96ptgjS8/DOKU02AM1Y//LE5k9AFL51294N3hbgxzQ==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <4566ffee-7e97-0309-f5ff-7ce24b050e8a@suse.com>
Date: Thu, 28 Sep 2023 12:14:17 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v4 6/9] domain: map/unmap GADDR based shared guest areas
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Henry Wang <Henry.Wang@arm.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
 <a34cef71-d60f-43ae-f61d-13d6c846eaa4@suse.com>
 <ZRVPqiRHXMJC3Bo9@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRVPqiRHXMJC3Bo9@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0114.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:bb::15) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS1PR04MB9285:EE_
X-MS-Office365-Filtering-Correlation-Id: 7be5ddd5-940d-4c7a-b17c-08dbc00bade2
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	LgjlEGiaRC11OdtbMtYHKh78mvaw89tYUvlgPhKjuL5FOas3IB3e9kwfrzczZBMnaBhtFH5vom+a9mzHUih2ORD1yFm6SqKmgKRtzoUsIZIJxgX/KkqJVmpVswquwVE3KhqiwaWyFJnfZZ0FVm/N8wuwTgdZtwibSewKzWjYPECkRWG5wuCUEPVp0kckus0R2eD28ZAFgjCNB/2r3tjTXhEpDBFbdNlU834/ErTp/4i1uZzUFyi2qGxBREFRVUQ1b/Kt21yLpMk2flHA1oZYfQKk1JHbsMpxaBWOadSzM4ggUNxAA40EbePhj+4uSfloiGRPGQhknsXXLhoD3Fa11aJnKELx/IBpG5mbkiw4zOIcrhS2NSOVwoQ8oX2jpDAfrLKNDd4OeBSGYabBMdU85AmsWvIKmvnGXye/dWCbxlwaVcrOkZDpmmf+ZWl2LdgCcsEhXHWR9do9g8jQ2d7Le1rSLu9quOMsRYozGkN3vFy9wdwNDNxgSBHLxKpOwdHFvNdgkA4HlpO40u5CMf28+HJT7msctT8j7QBi0BT1HauJAViN26NkTPYvFafCCPWTomXu2TxAVSCCbkenkH62xdWS+VbSYyfBuL8niy8JaBf2SOWRBXYyTr3L147yi08dexEcgJgDYiVuv/BX7ugyBA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(136003)(39860400002)(396003)(366004)(346002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(36756003)(31686004)(316002)(2906002)(83380400001)(6916009)(41300700001)(5660300002)(8676002)(4326008)(8936002)(2616005)(66946007)(66476007)(66556008)(86362001)(31696002)(6486002)(6506007)(53546011)(6512007)(54906003)(26005)(38100700002)(478600001)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Q1ZPN292Q2dPY05zTUY0OVhIaDdleG1rZExEcXhNR0k4VVhiUzJmZE4vblhH?=
 =?utf-8?B?c0Jqa3J2c1VCRmdKUUgrMXk5MnpYUjM3eWVYb2s3aEp5MkpJdDlpL2VQNUZD?=
 =?utf-8?B?QUFSanY5bHp1TktIREtOeEtaZWdiYkYvdmdlZ1BVajlrOHJXU294Um9HS0Rh?=
 =?utf-8?B?Y1U4a0dIOENLRXd6WjJCRHZTak9kMEN3NTFUYmx4dW5rMThIYklUa0F0V0E5?=
 =?utf-8?B?WWJQY0U4RXJOUDJjRGRReHBTQjNpdHZsRTEvd2dOeDdweWFiNVlwSXBWaGpx?=
 =?utf-8?B?dytGT0tHTHp0ajUrM3BXcHdvZHdidk82NjA3TGNXbFdRMDdMaGtKNGpTbGNH?=
 =?utf-8?B?S0l5cmxNbDRVSzhRdG1PUXVIdTVIb1EwdFp6TENZdUdLSGV3M0w3YnhNRGM3?=
 =?utf-8?B?aXhoYW1kejUvZytZaE1td0JnbWZVVmZndjdWaEVZbzQrR0FxWTdFNmJIbmZW?=
 =?utf-8?B?eE8rNm1GdmZ6aUJTYkl0MVI2NTJMUnVialRqMGVvaHEwM0I3S1h4Mm1JRU13?=
 =?utf-8?B?UEFqbmxnYUJjT2M3TkJ1SGdjUUJvclFVNTJqSldNUzlMeHdQK0VNYXMxQTA5?=
 =?utf-8?B?cGpKczBMbEs0MzJwc0xUd1A2S05FQ21vQnAxdW4rRE5rMjNNclJDYWJ1bHA4?=
 =?utf-8?B?UXJzcXlQZzF1Tm1NTFJPaVhHNVRUVDN4OHJqbFJDeHlkNDVhYmpCYVlrMnU1?=
 =?utf-8?B?blZCT2ZWS2E2K2xYc05vTzBhWWxZYVV4U0EwaFZCSFBsQjZTNmlJbVdOVVgv?=
 =?utf-8?B?VEFFMFZEUFFabm1mVWJlQW9NM1ByaFJwWGN2TGNJZEJlK1FTOE1YR0d3bnQw?=
 =?utf-8?B?NmRkT3M2RTIyanVqQjc3Y1dRWnhnMHJaK2J1eVhhbjlkbURnRDVWVDlYUzVB?=
 =?utf-8?B?UUVUbjZVZFZZeksrSFNXcmdUM3NkWGQwTVNmcGRENTBraW5vdTQrUVQ0MlN6?=
 =?utf-8?B?SDhRcXFCOXVRTFpJS0JibWFlTVJRczIyQ0tFbzFJWUltNUtqekZrN3A0eXMv?=
 =?utf-8?B?MVZaQk9xUzVlTUI3eHZlOGZ2cDZEU2Y0QW5xU0xUYmhWT2VsdVU4QnhaK1c1?=
 =?utf-8?B?OW1aTk9ZRFhpcVRXenU0N0VWZjNvZ1lzNmwxMFpZUE5JOVZDVHZCQ2JmVGNL?=
 =?utf-8?B?WVJKOVdrSDQxd3BKbXpRMG9GN1pyYWhnK2xleDJUVDVic3IyRldxZ2hwM3lM?=
 =?utf-8?B?Rm5OQlJpNGRCanBrVVN1QjlzZnRRY01CYWdkdElHNkhmUzZRODIxOHFGUitx?=
 =?utf-8?B?YlJxWDFkZ0FvS1A3NGNWL2dCbnMva2E4eDM1bGE2L00zRjBEbjgyalhEMHlm?=
 =?utf-8?B?VEZ4eWFHekg4dGc3d3BGVXFycUV0Y0FheFJqbHhISitpNUppMW9FTmthTVNr?=
 =?utf-8?B?NFVhNjgrc08zeWFBSVhIZlhyVXQwTnc0QkVwcVJKSmhGTlJXK2Z3VE5OZklI?=
 =?utf-8?B?bGZLOUxUYURaTWozdGMvd3BMOW1QVjFLUDVreVBJOUlZQkJCekJpSHhYUmFS?=
 =?utf-8?B?VGZDYWw1d00yQ1g2Z29NNHNxdjhZT2FlS0IxZG1zRUpNdXMzSlhiblFhVUZS?=
 =?utf-8?B?MUtDVzFncnd5b00zbVJCN1doTFFqY1ZDR1hjQzJFZnA3c1ZIU2VzMUNTRHBm?=
 =?utf-8?B?QlZSUFJLZURXbVR0cFZYTGlJRHoxcnJvcHFEL2pGQ0JVUm1QZ0d2ZVovdFhM?=
 =?utf-8?B?ZzJ2OXJrMDFRVE5aeUZTS2VWSFQycDhTVHovQTJXUFdxdjdTYURTekZkaEhQ?=
 =?utf-8?B?dmRzNzh2Z0d0RStpbU1xWndFQTRydGFQTFArZ29jeHBpQzVaU0xsNG9SQTBy?=
 =?utf-8?B?aHNpdDBIdjNaTU9JWmN1SkcrVHZ1WWJKcERxYnJDTHgzNUUyYWljdzkxbTNh?=
 =?utf-8?B?OWplQXJyL05Rblk3bXgraW1QdFVJVEZaaHdBVXFhZUdRZWY5c1hiNXZkWjZq?=
 =?utf-8?B?TWl3TUtmcUdudGowOE94QjBjSmM4bThVb29uZXlkc3BzYUVMbm05ek90TEZt?=
 =?utf-8?B?d2kvTXVSSVZGcjVUWEQyQ2U0Z0YvKzR5T3E2WkFpODl1RnIvaDZJTk9YN01i?=
 =?utf-8?B?aG5pQnNXQVlRZWxlR0xvcjJrQnEvRXQ2U3BUTkQ0QWhPSEl2VERzSGkvSXRY?=
 =?utf-8?Q?JBiupQemD89rgUGexLUROyhev?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7be5ddd5-940d-4c7a-b17c-08dbc00bade2
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 10:14:19.8771
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 2digPlPUEDwKGN+x/qgrxclUxGCNUpu8slrBBN1+D0q724pB4DX/sXGgCMUXz6yDpg6rOLHyZEvW5vtwPmSCaQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9285

On 28.09.2023 12:04, Roger Pau Monné wrote:
> On Thu, Sep 28, 2023 at 09:16:48AM +0200, Jan Beulich wrote:
>> The registration by virtual/linear address has downsides: At least on
>> x86 the access is expensive for HVM/PVH domains. Furthermore for 64-bit
>> PV domains the areas are inaccessible (and hence cannot be updated by
>> Xen) when in guest-user mode, and for HVM guests they may be
>> inaccessible when Meltdown mitigations are in place. (There are yet
>> more issues.)
>>
>> In preparation of the introduction of new vCPU operations allowing to
>> register the respective areas (one of the two is x86-specific) by
>> guest-physical address, flesh out the map/unmap functions.
>>
>> Noteworthy differences from map_vcpu_info():
>> - areas can be registered more than once (and de-registered),
>> - remote vCPU-s are paused rather than checked for being down (which in
>>   principle can change right after the check),
>> - the domain lock is taken for a much smaller region.
>>
>> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> 
> Acked-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, but to be clear: Formally this doesn't help this patch make any
progress, aiui. I'll still need an A-b by a REST maintainer then. An R-b
from you would be different in this regard.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 10:15:40 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 10:15:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609441.948552 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlo3U-0003E6-It; Thu, 28 Sep 2023 10:15:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609441.948552; Thu, 28 Sep 2023 10:15:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlo3U-0003Dz-Fd; Thu, 28 Sep 2023 10:15:36 +0000
Received: by outflank-mailman (input) for mailman id 609441;
 Thu, 28 Sep 2023 10:15:34 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJIK=FM=citrix.com=prvs=6283bbd10=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlo3S-0003Dp-Od
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 10:15:34 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f4ac46a6-5de7-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 12:15:33 +0200 (CEST)
Received: from mail-co1nam11lp2170.outbound.protection.outlook.com (HELO
 NAM11-CO1-obe.outbound.protection.outlook.com) ([104.47.56.170])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 28 Sep 2023 06:15:30 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by BN9PR03MB6202.namprd03.prod.outlook.com (2603:10b6:408:11f::14)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.35; Thu, 28 Sep
 2023 10:15:28 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Thu, 28 Sep 2023
 10:15:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f4ac46a6-5de7-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695896133;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=3JqlKKRkRzwQYWRaskagJZrOmAm1mnCTpra2w0CtNuY=;
  b=CXyh3LffqvxQzQMqAF+a7PVM4+Z4k2QtsKvWmnvOymVz8FuWgVjh9h7j
   e2pQDdBJs1PSmeKq6gptNTIAfU6LHhH4nrfTSBq6zfBHF1j25kPcH/sP4
   kX+svopXVCsEdANVw+uF9PhBaXTxyd8dbgfNSlg5p6rjQkW72PHOxOYN3
   8=;
X-CSE-ConnectionGUID: s4PbHL9qSLaKeaQV4z2Q3Q==
X-CSE-MsgGUID: eilT+yp0R+G1ZjheNqJbKQ==
X-IronPort-RemoteIP: 104.47.56.170
X-IronPort-MID: 124471991
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:8Hi82aCkXG6wxhVW/8ziw5YqxClBgxIJ4kV8jS/XYbTApDIr1WcCx
 mEbWWCDP/+CMTP2fItyO4/npxwGup6BydJiQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4GJC7gRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIw4bpPC0Fqp
 OUjDDkuYxm6ub6kmovgc7w57igjBJGD0II3nFhFlGicJtF/BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI++xuvDC7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqC7w2baezHqTtIQ6Gby8yr17mAWphUNKOh8WWH2ig/OasxvrMz5YA
 wlOksY0loAw/kG2Stj2XzWjvWWJ+BUbXrJ4A+A8rQ2A1KfQywKYHXQfCC5MbsQ8s807TiBs0
 UWG9/vrGDhuvbu9WX+bsLCOoluaIjMJJGUPYSsFSwot4NT5pow3yBXVQb5LD6qdntDzXzbqz
 FiisCE7jq47kc0P2qO07F3DxTmro/D0ohUd4wzWWieu6Vp/bYv8PoiwswGEtbBHMZqTSUSHs
 D4cgc+C4esSDJaL0iuQXOEKG7Lv7PGAWNHBvWNS81Aa32zF0xaekUp4uVmS+G8B3h44RALU
IronPort-HdrOrdr: A9a23:HmS5JKAxrT+kc1vlHemT55DYdb4zR+YMi2TDGXoBMCC9E/bo7/
 xG+c5w6faaskd1ZJhNo6HjBEDEewK+yXcX2+gs1NWZLW3bUQKTRekI0WKh+V3d8kbFh4lgPM
 lbAs5D4R7LYWSST/yW3OB1KbkdKRC8npyVuQ==
X-Talos-CUID: 9a23:YjH6Km+2Xs21yEX1OXKVv1VIIsoFVizE91PZAEKxMFg1WuesEmbFrQ==
X-Talos-MUID: 9a23:djLT4QuC9rWzOwERr82niTBmCIR5+/yUS29Uo5cGtu+dFyZTAmLI
X-IronPort-AV: E=Sophos;i="6.03,183,1694750400"; 
   d="scan'208";a="124471991"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XNFBeb4liRa4uBU2tKTPh2NEhCbFqcjfAvWvxpnMjWwXDDk+C6ytWIjDK+cT8VQrFrl9b7sV89F7ZXx1U/yvkNZgqGA2ThKR930ysIcGEfw6Pis2H6rCa5bcx72OcIJ3wl5fE9v79PAwXmBYDpc7zXaaZbzKaUuv9VLbVfrnnTprPwXNKA4PdImt2yfeXaMZ7bYwR34M4ujQBK3wxUMOTC2ye9dlNj+MEC+H/piMW5kzajHq4ZKMz4lWOUpilh7umpdUbhcmNPdj6CmLGC9es56BZeMmn9HXJ2WcVcmhDhfUCJzeGkkU/9UcmZXPUhrM+YkJu6YuYHQvlRAfIh1I7w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+nH2Art6T4/MCklXzOTcMhEpuiaF1SYFMn0ATROEjgk=;
 b=BelfnvAKAxlD9IvqLFJUoDKgmHsdT+2uNbL0b8cLOIpSCYDE3ZIX9JzDKYrCelidLEwuK4LPpaoVUiJrY9F/WV24p0CfydpX5+K+dHkUzyTfWIbxEqi6+s+njyVYXq9U8/rikLoFiHP6X09SqwQsyvYQKtLOti3fLDh1zaRywDBeh2WzJno/uoRHoPMkmo5aTpmyumKrv0H4vf641iwGNS2kqOi3sNgcvWXtDStccN+WS3yIElEWVFH0/ymbq+LO2VBs17AMgZM0P46iDRrGiGc5UReEl7Ix/wxCpEmW+3kmUs3ep5K/RKMhtny46Q9PU7+NzYomeFBxJOk+lo9uzg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+nH2Art6T4/MCklXzOTcMhEpuiaF1SYFMn0ATROEjgk=;
 b=waZEUQ0f5KcfdBrPZfE91D6R+GNDwhtUPH3okbURbIa8jjzlFSosI8sBiteXFliQmjhYHJxk5crkVjLVQCnVqGbaQR8+4gdj0fFUhPtegmP6Zh3BM/9EgRii7Q5usEymeTrB7JIVQSOQZVK97TpLsjO7JlRdzFLj+imbtg+eTJM=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 28 Sep 2023 12:15:22 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Tamas K Lengyel <tamas@tklengyel.com>
Subject: Re: [PATCH v3 8/8] common: convert vCPU info area registration
Message-ID: <ZRVSOi-nPTagCWq9@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <ada41793-629b-3864-c2fc-412bd8d0047d@suse.com>
 <ZRU4QQcFL5Le5cFz@MacBookPdeRoger>
 <c82494b6-d6c9-8252-4eac-5c50fdf7e477@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <c82494b6-d6c9-8252-4eac-5c50fdf7e477@suse.com>
X-ClientProxiedBy: LO4P123CA0487.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:1ab::6) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|BN9PR03MB6202:EE_
X-MS-Office365-Filtering-Correlation-Id: 835fba6b-aaf0-4881-1fc9-08dbc00bd63c
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	EHwaM1QvfRqjNP8Kk2P0uiXkEcamaAamMRMOLAlHCZ8zP5JEk5g7kOvI2gjvfZ2p+EGWnOmmPK6cfCOelex+N5t6FDSfEVlnTUrR68G0gN6WmY/A7LGkE9vBh6uhshHRBhLEQiEHRcJJqgq/YAxqSUk8xkYYrbNSW7jT0b9sDOfrr0Bb0dQaXHnkxOpJr+V5sXFrd1uQD6boUZl2wTrnUqIw9L74iDFmb76vYoKW/I21c0D70TRJKdz/QFtoyO0QQzufl6Sqs/mqTdtuw8SuLH7AxVbWZ/mpy6mUEpnPoCDJDPWhWoN6+MV8hlZmJKemmgU3smJAdZt25hL3gZR5aAtYVJ9w1bBrvKyoZpqKC3IiTIh8IsYoozirZy7AL1WGLSLQu1hIIbK14R3xi82oTPhXDlw9CysNSRqGSF32PQ6vqK0seJLHPx8Y9CoHgxLp6WDASmJi/6rgxrwxbpu2392IpL5I5f0yKIlnwW/IrRTipnoCNyxQhgSJtldJQFOBT5LgDvePXX87XDbCFF8G520CX3Fm5GYNmIkiCxjKsrq94qDzw4Y1PPLn2llU1EO6
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(346002)(136003)(366004)(376002)(396003)(39860400002)(230922051799003)(1800799009)(64100799003)(186009)(451199024)(66556008)(66476007)(6916009)(316002)(66946007)(54906003)(478600001)(38100700002)(6666004)(6486002)(2906002)(33716001)(85182001)(86362001)(41300700001)(4326008)(8676002)(8936002)(5660300002)(26005)(83380400001)(6506007)(53546011)(82960400001)(9686003)(6512007);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?ZXBiQVRRc1kybE0xUU1QUG5BaENqUFNKU1NVOUU1NGhoS2YxenBUbEhPQW1r?=
 =?utf-8?B?TWk5bGF6VWpOY2M1Y1JFZmM4am50a21CWHJTOFZhZG9xZ1lpQzM0c3ZkV3Nz?=
 =?utf-8?B?WEhpY244TVFZZU1ISHE3NTRYK1hwUzVIWDE5VjlScjAxVVIxTGV0bndDMzBQ?=
 =?utf-8?B?LzlhSmphSk43K1dPMmJMSTdxSGovQndFeU5RdThGRWQrc3N5ME83ejFWM0lS?=
 =?utf-8?B?cXFrNjVGdWJVMUltNTM5Y1FKcHJvMWtRVTA5S2pzTzBhVnJQbThjb3VhdTJr?=
 =?utf-8?B?c3Y2NWZkUlBVSUNEbjNaTC9yVGVQTXh2MlFpUjhSZ0dNaHhuV0M0V0dsVElU?=
 =?utf-8?B?S2dkU3pkZFJEZGN6cTVZMUhUdEI4Z1ZsQmkzU0hrZVFwYitGWnE5ZW16NkU1?=
 =?utf-8?B?ZW8yVHZ1ZTJsbmk1MEpmbldwTUxLNFF1UGQyZUo3cFdFZG1GYXF5THIwZ3Vw?=
 =?utf-8?B?dUp1V1ZKbGhwQVJpenp4aC9hZlEwTnZ0OWlybmd0WFdDM0M1WVRDK3VEN3Nx?=
 =?utf-8?B?L0U3eEZWT1lCUDdXS2tqMUt6L0x1ZGhOZXNIVG1UVU96T0F6dXNqMmVRL2N5?=
 =?utf-8?B?c2F4ODJzSzlOUnN1dVFqUWZhODByWU5KdmlIMjM3QXFmci9nVEJBMVRLVWQv?=
 =?utf-8?B?OGtSRS96STg0Z0dQK3lNQlV5QWtwUTRSMnUrTkl1VlJJTVdXRVpNTXhqc2JK?=
 =?utf-8?B?T2dFZFhYTFMwQkZQZUJMSEJjb3FJaVg2c2owMzJaN2cwem1NRFl1bGpiOExv?=
 =?utf-8?B?RU85RTdZK2RiVUJTd1c5RWFYSTN3WkJMQUJNdVRnMjlHdkRQKy9SdlMwR2FE?=
 =?utf-8?B?a1Rxd0dCVWk3TThkNTgxZnZaQlV3MnRIRmoyOGo2RDFoc25rZGU2cFpSZXFz?=
 =?utf-8?B?UnJSbUZKN05YYkNCbnBaUXFWd3A5ZFhoYU1tSFRrNHMwaGZwTTNwcnBCNllw?=
 =?utf-8?B?TGMwVlhGaHdUOXhybXJIbkVlN2lJQWdvVzhXbjJlTTdRaU1XZXdqMlppYnRV?=
 =?utf-8?B?N1cvUFRJckFnMDBreWFOQkVBa1hTbDdQTDB4dUlCcjB2RGNOMi84L0s0K0Z5?=
 =?utf-8?B?OVhYVm1DMUpNaFRzaVQyTXg0KzJKSWVHU1BIS1ArWXZrM05ERDVuV0FnKzZ2?=
 =?utf-8?B?Y3lNdS85bXBWSHRHV3piQ21yNGMvR2hrWVdpb3VicDJ2b2VoZGRhdThHYVFO?=
 =?utf-8?B?TW1yVUJ1VERoR08vZ3lBZ1BzeEdKOFBpakxwOHJWY0IyM0MvdFVpMmhudDA4?=
 =?utf-8?B?Rm5aeENHQ0hmOUJEZ1VVVTlOZUwrZy9mYXR0YzJHQXFHMjVZbFFIWXY2dkNG?=
 =?utf-8?B?TjFSYkhDNmVkcWREd1ZGai9xWUFoUG1YdHZYZWpjdnJIK2RMcGFzRHM1ZUVZ?=
 =?utf-8?B?dzhDeGJ2TDV6aU9icWdBaUIxWC81NmdkbEZZenc0VC9aU3R2bkFPL1FTMU9T?=
 =?utf-8?B?RVFmSjA2dUVhdU9hMlhnTmxiMjh0UHo2ck0xQ0QxOWgyTGZJZjUyd1dtZnRn?=
 =?utf-8?B?aUxLc2UzajN2ZzJvdUZlZk9vSndIbnkzQU1YRDlPTElQNmZpU3RjRFZ3dU5J?=
 =?utf-8?B?aDVtMnBaM241ek9RdkMybzRoSWoxUjBLYjZwdFV2UWJlbmZJclNuR3dXc2Rq?=
 =?utf-8?B?U25DbzRPZVdZUVczMEtpcHhuS2E0K1QzNlE0YnpUa3RMT2ZHc21qUW1YeS9z?=
 =?utf-8?B?MzVkYS8zeFZXVVpNbjNJNjNPdVhlYnI4eTN0bW1COGY1ZndKTEFZV0ZlSlU5?=
 =?utf-8?B?dnBoY0lXUDNxQlo2VWh1elBISmkrMnlnZ1BSdEhtNlVVTXhIMjNNZGFLNFN5?=
 =?utf-8?B?ZlZoeEdwZGFERFN3OHMvQXFGQmlMZlcxM2JBTUdqUitJT1g2aHNmMVlGTGZU?=
 =?utf-8?B?V01FdzhZMllhQUkvTVlPSXRhekZTRUdOVmlibmw2TzdCVElxS3BjemMvS2l1?=
 =?utf-8?B?K1pLVVd2Q3k4RkxGQllrSWFKeDNocEhFT3p6bVhqd1NTN2R3M2NDL3BpbWJj?=
 =?utf-8?B?Nm5TQ1IwTEgxdXBCRVVEUkxtTjBkcTNNdUIwVEJ5ZHNWbkVuOUhOZVlpdzFK?=
 =?utf-8?B?ckdkYzhlMkJ6Uk1rcDdkSUtjOXQwQ1lQbk10aUl5bDF0ajVoU2hlLzlhNWpy?=
 =?utf-8?B?THNlbUlsT2FteVpMTGhjZEFMNWJwU2Jwem4vKzVzN0l6ZDZ1a1MwVzh0T0Z4?=
 =?utf-8?B?d2c9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	YnQixJbroNPbknXwFR7IrRrGNhfuICz/7ZMX+zsOdZorjf5UfFO3X5wOzMcbJFc3xONdOt69b2K1nyNGScUAbNfkl0+ofw/0Gm2Xn4e5a68BC/V0zm27lSPMj15PXSMcjlW+fblWIg5O4TIFD8kRSd1V+4eukJ7wbpqLw2eua8OsBKz8sCJbPIq9Q/mTaicpUEHX6lrvbgkggP/UHFpoMmhdpf6V9y8jl2F0i5BgDxsLf1r/aDZXVSBfFjYd81ftVbD9h/w1EzdJH45g659qKcE6Lz6rcLC6ZXOzIbMqxTvxp837fToV3SE/n7y8k3xbfTs3/6v80h8sB27mZ0mW4k5m13kgVUuz+hjz8R+69vYDHgqg7WKIfGZe6ra5YrVTtWKgzToZZjWFV+o23ZJVM2CpM0HCxduOxR19EMHtFMeXHjZ2i0jLex+DiGBjcweq9IYPjlX+nnL213C1AEejpBUhulLTGxcgNdsWivydW0jBI3IajpRVDKZnVwawF/DEfNSMpfVBogsK3MpBFdcowZX+FhF+0kDPfZ/USE0CPexUg1kybx0rUcMZ7OVXbRM6CGkjsiVTocWd1gs+fC9G/NWPPh6XMKMorpfF/r4zwcGkWWONAQ11VLnyGBpapmmLC0BoU8vMrFMhMnEhRcbWQLtR1e5WzgTMyX218MryXgzb5GJwWYIAh6907OsEvbC3HDZTwqhnqut+2AmtsRaf+2ste+p0pDpdPM/ZjQ1x6RGtglmHa7T8M/KO8RA2Jj1tENxp5fJiQCA1QZu01mIrima/3CLHkAunsAvspZsv+RL3CJOonwfgWA0KCilMxT3YOuOLmPe1qGBuSvJvOR4mcYjQAdOIJNMJ62iN/0X+ijKIll8esDqZdYc2CcFh9kVUuh5wxd4lTg/vaHpNqjcUpg==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 835fba6b-aaf0-4881-1fc9-08dbc00bd63c
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 10:15:27.6902
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 6WGYjLdThjkrdcjODbkHzxCNyerqk5kbrdxMtRZ4j4QkUZl877jsiJu7i8hfIpooh9itVs5sKS0cs6bbVcMdJQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR03MB6202

On Thu, Sep 28, 2023 at 11:53:36AM +0200, Jan Beulich wrote:
> On 28.09.2023 10:24, Roger Pau Monné wrote:
> > On Wed, May 03, 2023 at 05:58:30PM +0200, Jan Beulich wrote:
> >> Switch to using map_guest_area(). Noteworthy differences from
> >> map_vcpu_info():
> >> - remote vCPU-s are paused rather than checked for being down (which in
> >>   principle can change right after the check),
> >> - the domain lock is taken for a much smaller region,
> >> - the error code for an attempt to re-register the area is now -EBUSY,
> >> - we could in principle permit de-registration when no area was
> >>   previously registered (which would permit "probing", if necessary for
> >>   anything).
> >>
> >> Note that this eliminates a bug in copy_vcpu_settings(): The function
> >> did allocate a new page regardless of the GFN already having a mapping,
> >> thus in particular breaking the case of two vCPU-s having their info
> >> areas on the same page.
> >>
> >> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> > 
> > Some minor comments below:
> > 
> > Acked-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> Thanks.
> 
> >> --- a/xen/common/domain.c
> >> +++ b/xen/common/domain.c
> >> @@ -127,10 +127,10 @@ static void vcpu_info_reset(struct vcpu
> >>  {
> >>      struct domain *d = v->domain;
> > 
> > d could likely be made const?
> 
> Probably, but this is just context here.
> 
> >> @@ -1633,14 +1528,44 @@ int map_guest_area(struct vcpu *v, paddr
> >>  
> >>      domain_lock(d);
> >>  
> >> -    if ( map )
> >> -        populate(map, v);
> >> +    /* No re-registration of the vCPU info area. */
> >> +    if ( area != &v->vcpu_info_area || !area->pg )
> > 
> > It would be nice if this check could be done earlier, as to avoid
> > having to fetch and map the page just to discard it.  That would
> > however require taking the domain lock earlier.
> 
> In order to kind of balance the conflicting goals, there is an unlocked
> early check in the caller. See also the related RFC remark; I might
> interpret your remark as "yes, keep the early check".

Oh, yes, do keep the check.

> >> +    {
> >> +        if ( map )
> >> +            populate(map, v);
> >>  
> >> -    SWAP(area->pg, pg);
> >> -    SWAP(area->map, map);
> >> +        SWAP(area->pg, pg);
> >> +        SWAP(area->map, map);
> >> +    }
> >> +    else
> >> +        rc = -EBUSY;
> >>  
> >>      domain_unlock(d);
> >>  
> >> +    /* Set pending flags /after/ new vcpu_info pointer was set. */
> >> +    if ( area == &v->vcpu_info_area && !rc )
> >> +    {
> >> +        /*
> >> +         * Mark everything as being pending just to make sure nothing gets
> >> +         * lost.  The domain will get a spurious event, but it can cope.
> >> +         */
> >> +#ifdef CONFIG_COMPAT
> >> +        if ( !has_32bit_shinfo(d) )
> >> +        {
> >> +            vcpu_info_t *info = area->map;
> >> +
> >> +            /* For VCPUOP_register_vcpu_info handling in common_vcpu_op(). */
> >> +            BUILD_BUG_ON(sizeof(*info) != sizeof(info->compat));
> >> +            write_atomic(&info->native.evtchn_pending_sel, ~0);
> >> +        }
> >> +        else
> >> +#endif
> >> +            write_atomic(&vcpu_info(v, evtchn_pending_sel), ~0);
> > 
> > Can't the setting of evtchn_pending_sel be done in
> > vcpu_info_populate()?
> 
> No, see the comment ahead of the outer if(). populate() needs calling
> ahead of updating the pointer.

I'm afraid I don't obviously see why evtchn_pending_sel can't be set
before v->vcpu_info is updated.  It will end up being ~0 anyway,
regardless of the order of operations, and we do force an event
channel injection.  There's something I'm clearly missing.

vcpu_mark_events_pending() and force_update_vcpu_system_time()
obviously cannot be moved to the populate hook.

> >> @@ -1801,6 +1729,27 @@ bool update_runstate_area(struct vcpu *v
> >>      return rc;
> >>  }
> >>  
> >> +/*
> >> + * This makes sure that the vcpu_info is always pointing at a valid piece of
> >> + * memory, and it sets a pending event to make sure that a pending event
> >> + * doesn't get missed.
> >> + */
> >> +static void cf_check
> >> +vcpu_info_populate(void *map, struct vcpu *v)
> >> +{
> >> +    vcpu_info_t *info = map;
> >> +
> >> +    if ( v->vcpu_info_area.map == &dummy_vcpu_info )
> >> +    {
> >> +        memset(info, 0, sizeof(*info));
> >> +#ifdef XEN_HAVE_PV_UPCALL_MASK
> >> +        __vcpu_info(v, info, evtchn_upcall_mask) = 1;
> >> +#endif
> > 
> > I'm not sure about the point of those guards, this will always be 1,
> > as we always build the hypervisor with the headers in xen/public?
> 
> That's the case on x86, but this is common code, and hence the build would
> break on other architectures if the guard wasn't there.

Ah, I see, sorry for the noise.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 10:32:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 10:32:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609466.948561 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qloK3-0007ii-79; Thu, 28 Sep 2023 10:32:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609466.948561; Thu, 28 Sep 2023 10:32:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qloK3-0007ib-40; Thu, 28 Sep 2023 10:32:43 +0000
Received: by outflank-mailman (input) for mailman id 609466;
 Thu, 28 Sep 2023 10:32:41 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qloK1-0007iR-Ps; Thu, 28 Sep 2023 10:32:41 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qloK1-0002CZ-KY; Thu, 28 Sep 2023 10:32:41 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qloK1-0003Px-2X; Thu, 28 Sep 2023 10:32:41 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qloK1-0005Vt-1n; Thu, 28 Sep 2023 10:32:41 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=K0P/Qpqfv2mkOD0YytfaqUyez/5fptUdsyTUYHFdAKI=; b=i5M48xZQQVMdDvs5HDZCdlfg9q
	jU1MYrbq8RgtT05/r/Xf+MTeSHTmjujIgAqG+GrO97YxBdUOs8qNsOURF5NNBc+YHpN97iBgQTT0X
	JW39eO63rjU/nf/baZl9ss6Kz1Wv7YEEXT3JFrul6aSQ2Cg8Pqpv7aNv/OtghM+/ycMo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183196-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183196: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-xl-rtds:xen-boot:fail:allowable
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=633b47cb009d09dc8f4ba9cdb3a0ca138809c7c7
X-Osstest-Versions-That:
    linux=0e945134b680040b8613e962f586d91b6d40292d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 28 Sep 2023 10:32:41 +0000

flight 183196 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183196/

Failures :-/ but no regressions.

Regressions which are regarded as allowable (not blocking):
 test-armhf-armhf-xl-rtds      8 xen-boot                 fail REGR. vs. 183189

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183189
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183189
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183189
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183189
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183189
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183189
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183189
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183189
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                633b47cb009d09dc8f4ba9cdb3a0ca138809c7c7
baseline version:
 linux                0e945134b680040b8613e962f586d91b6d40292d

Last test of basis   183189  2023-09-27 04:54:33 Z    1 days
Testing same since   183196  2023-09-27 21:11:50 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Alex Williamson <alex.williamson@redhat.com>
  Damien Le Moal <dlemoal@kernel.org>
  David Gow <david@davidgow.net>
  Jinjie Ruan <ruanjinjie@huawei.com>
  Linus Torvalds <torvalds@linux-foundation.org>
  Martin K. Petersen <martin.petersen@oracle.com>
  Shixiong Ou <oushixiong@kylinos.cn>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-freebsd11-amd64                             pass    
 test-amd64-amd64-freebsd12-amd64                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-amd64-xl-vhd                                      pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

hint: The 'hooks/update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-receive' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
To xenbits.xen.org:/home/xen/git/linux-pvops.git
   0e945134b680..633b47cb009d  633b47cb009d09dc8f4ba9cdb3a0ca138809c7c7 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 10:35:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 10:35:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609473.948572 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qloMn-0008L4-Ow; Thu, 28 Sep 2023 10:35:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609473.948572; Thu, 28 Sep 2023 10:35:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qloMn-0008Kx-Ll; Thu, 28 Sep 2023 10:35:33 +0000
Received: by outflank-mailman (input) for mailman id 609473;
 Thu, 28 Sep 2023 10:35:32 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qloMm-0008Kr-EH
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 10:35:32 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2060f.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::60f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id be6c7906-5dea-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 12:35:30 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by PAXPR04MB8605.eurprd04.prod.outlook.com (2603:10a6:102:218::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 10:35:26 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 10:35:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: be6c7906-5dea-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=I0IXcu1+5/GDkmAiY86YLuhYs/0fC6FreuPdhZj8a0GKdnKBq0lMKunV8h4C5lqTZJWi0P3rTcrvALXz7z9eJmgICON0l6V4fRyNGxPOiaYMvlvC3a0WUWhFUQcSrMNWMkG9csXIoGF3yeyATzXNiG+nxDoPqrJuLwbDNDRGCAXEHII1um/7ixaebq69WAjsJa2lwjB5GqETWMAsqO5uwog+uYMVQetui9qDU5nDOUjeVBzPcybdOe+8MWhX+/cNVziHvYzB0AuHOkjsO9JDVZ6yuhzJgPgMBMH/gnRIrG9NiYzxIselMAhwPoxJBPLI122W81zYgGqLJjQMkgG0wA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=9YT9W8O8m7Nv7Wwb3IuBS8EovbbqgaRxMuwFkXh7YO0=;
 b=a2zTp/YuwKobsi6SObWUC7hqNpow/SByny0xnFJMDf1gfH4sxf7GHWfL/5Mrl55VTUFQSDz0B3w/Wk2VnwhsoFFsriG+IukT7egynljSnxw8E49AiJJqjLcbIMZM3t1pHAxHXSC4AFa+ZG4flT7NnIZsM4FylgJrY7Suvajqn0r33yXOcVLIXhtxhrJ0gGavZBfCGr6Il0DHedB2mdFt/C/8dmhJobTQmw1lqzwC+YFXMqw3KujVJgEN3DbNhwifC0WZEeAUD1dj+6C8DW68xBNlkV1ojwwSn03pBFAD3JGbGnbUm+9qX0xKS4GvoQC2OBc4NOkDtTREo1PO8D08Hw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=9YT9W8O8m7Nv7Wwb3IuBS8EovbbqgaRxMuwFkXh7YO0=;
 b=Ou2w/w29SL8cK2SAgKt0gwQQjpMz7pNd9nPNMwrUD9zyN8xquUs5xojg99tFRBT1BSdqFHLZSXjKm01bwTC5ZFQyfEuzPZ720xAQX5Tc/qrC4TgHYc+UigUqRIdneXoXkpCum8kqjg/pgc23zTSmucucYtiG2vy114IWis3I4DZyVGdNqLlo4EDcHEEScKNXCAfNdQpYYSmTJvkrSp2qQJTgOFlmnFMGJKNBedh6OWrcElUDesIdITrX5A0wCmwSpH07bNluM1w0qHTp8js4fTr6GoG7e1YUNVYI/WIL21DIt0dLKOBJwY1B1CAesf3I0aBAe3eIKhwY/c/tG3o7og==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <cc175a33-0e04-4731-3bc2-ed15eb62525e@suse.com>
Date: Thu, 28 Sep 2023 12:35:23 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v3 8/8] common: convert vCPU info area registration
Content-Language: en-US
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Tamas K Lengyel <tamas@tklengyel.com>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <ada41793-629b-3864-c2fc-412bd8d0047d@suse.com>
 <ZRU4QQcFL5Le5cFz@MacBookPdeRoger>
 <c82494b6-d6c9-8252-4eac-5c50fdf7e477@suse.com>
 <ZRVSOi-nPTagCWq9@MacBookPdeRoger>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <ZRVSOi-nPTagCWq9@MacBookPdeRoger>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0223.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ac::16) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8605:EE_
X-MS-Office365-Filtering-Correlation-Id: 55bce2fb-fdb0-4a57-1161-08dbc00ea0e7
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	9K0DlG7FMBk+1dxGInTa4TDO1ljeJMOKN1X2fHRQbrV1HoNRgd1uabDYZq5v/F6RcmXb2qcA1RMz/rV/DpcIEjZKoAoT2xTK56f5zJJY5TGUaWTmj0WUUub23KgtdNI9WU2C2s9yyd3rnUafvlqSTvioBw24xaDAqqr/p/VjlrVSRGe2oJoAYL83wfNCJpkuR/I0Dq+3aDlXjxnlXjNIhSmfUhQaQUDmdwTHuCZeVXEqzsgb8yQ4VVHHE2kNJNGJCH+TC9M31FsISy2L10nNL18nIVXMFGvw6AvtVPgHdqz8LXYdWwJ/Kp51QxZ3JqQ0M8YYdQXNQBg6fhEUfcRDBhRtHVce+jEkTG5rCh1N7nAKlmKygRSU2Dy4R9W5nfq9VSyCkXN6f4e8nujqe0DY6qhWt3lYvOP3G8lWqxgOzPYI3Ts1awZ3l4b3LfqcfikYyrvTrbME1PjxCNggo1rfFDHW7mwKVBNbR+/T6KE8wkg7dpbFyjSdCD8dCZKyonvE6DWiXZH7cY3X11s788N376g7eogOoJG8s+z1hdttuJF1vrSwUNhF60IUO+d5JmBJmqRDvtklF6YSrHUB781WClrRANOGt5Kk1DDZo7GC9kz0Ni3kV0a/o+rmSQ9qgDQzCZVJgkzvf7jMlVYmbBjnog==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(376002)(39860400002)(136003)(396003)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(316002)(41300700001)(26005)(2906002)(8676002)(66556008)(478600001)(54906003)(5660300002)(66476007)(6916009)(66946007)(4326008)(31686004)(8936002)(6486002)(6666004)(6506007)(6512007)(53546011)(2616005)(36756003)(83380400001)(86362001)(31696002)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OXJ6dE1XMEJwNXZrVkRNQ003eER3ZjJ0UGtWWjR4M0pIWkwzZ29ENnQ0cTZL?=
 =?utf-8?B?UWNacG1MWVNBMFlhWDhuenRKTWUzZFh0VlRCL0JMK2J2eHkwdCtoc2k1NnZR?=
 =?utf-8?B?MiswcnFXTmErNmpXbThOaitNSHdoMmVDMzVqTTB1ZmZXUFZsSk1DTExNSjVp?=
 =?utf-8?B?MERGWGNhU1pmQS8wYmZSMDY4RVlpeHlmQTlCbFE5dFh2S2E4cHdvU3BYUElk?=
 =?utf-8?B?YkZIaEhJOVJnWi85cUtqWWhkWlp3aGdOZDFyQTZDTWpsM0ZYWXZyZmhzd0R6?=
 =?utf-8?B?UUxhZE1lR09wWFVCSkFmRUxsakR4Zlh0VWF6dEl6TUFHaU5IRVlqVXJtLzNr?=
 =?utf-8?B?b2UremRSbGJNaHpwaEdDeG80b0h3OS92MWpqaFJwOWtnbU5GeWZ6MTkvcXlB?=
 =?utf-8?B?dXJJMFY2Q1VjK2RqdUp5Q2FjU1hCTVNpZWdiOThieDhyUC84OTBBWmt3bnRD?=
 =?utf-8?B?bmJVbDlrRzhjTGgraWY0NnZtemJuamhjOUVsRGNTdGYyVW8xQ292WEdjZ2hZ?=
 =?utf-8?B?OHhDTjhqNFdyWXZSRzJTQ1QyY1FLQ21xaWsxVnNRTE1CSWFPdjVLU1c4TjRs?=
 =?utf-8?B?RzZJQ2RWaStaSnNuYnAwT2Q5VmM2V0FHOE5ZYWlUUldjLytuU1RjdXZWSW9h?=
 =?utf-8?B?djJGeDF2NUZHV0tGUnI4NWhpQmE0Y2RVckFyS1I4UU1zSndLTHVtdm9URHpl?=
 =?utf-8?B?bk02QjlyRzR5c2NiMEJGNHZRaldBTUhJTkhBSjRkWTZ3bHkvTWxHYWtTeE5N?=
 =?utf-8?B?Q3J6ZFdyeUFlWS9EQUxTdU1LU2VIaldyTk9ZSXFYTHV3U0lyWndmelAwbzZo?=
 =?utf-8?B?OTA2aDB0aHc2Mlhqb3FZS2s5YWRGMUVMRFQwWkR6NnlZZ3h6QVdDakVybjlt?=
 =?utf-8?B?UVJUOGVDWXdiODhqai8zdnRQWDdZaTdFaDFqSk85cGc2RTRrOW5CSFQxYkFz?=
 =?utf-8?B?VFM2SHJHOUZmUlB0QkpXMnd1RCt6TjQwaXJzZ2NpK3RGMjBQTEp4VkQ1aXNt?=
 =?utf-8?B?cjZEV0NpV1ZKWitmNkllb1pZLzY4eCt4cG5KZnFGc2xTMGZPU3o2WFJTOHZC?=
 =?utf-8?B?RG1ibnZsV0I2UldqSXFmd3U3eHBHOXZGQXVxZDI5K1BLMytBbnJuVndRNm81?=
 =?utf-8?B?WmRSb2ZodUsxb2o2MTlleStRUlB6U1d2bW5hK3ZkY1JRUWxSZGFabHlFTmth?=
 =?utf-8?B?T25CcGVHQkExeE1EWm1NbXZJMzlSOFRTampZdWxkR3l3cUM3WTQxcTI3NzNU?=
 =?utf-8?B?dmpQdkE2N1FqbDQxOEl6WGxGTHp6L29qZEV6M1R4VHZzbnAxeUhNZ0xqYUsr?=
 =?utf-8?B?NHQwMGZlNUM2RkxGVGxoWXVOYTJpcVFaT2lOTzJxMTJwSFJlUkdLRXBJbi9a?=
 =?utf-8?B?Wnp3T1l1dS9DRWpIMTNOQVVqUTBmSTgwUGJtZGRLZThuV3BsZjVFZGkxYnh6?=
 =?utf-8?B?ZDY4cm1GN084T3ZuRzg4UzBReGZXSlVtV3BhSzdaR0Z4alJWZHlPUUFXSFBM?=
 =?utf-8?B?bXU5Vk5tTFhJM1hDK0ZvSEZzK1UyM3hoRXE1VXJIN000TkFHdGZENEl5NEov?=
 =?utf-8?B?bmpjRXpweVV1TVhseml1Q0hycU9VVWIrWnhIVkp6RlRsbjJ2YUdscEgwRmQ1?=
 =?utf-8?B?SVRMVkZUcUtvVFl1STdFMEx2ajFGTHBmZVBoQ1JLRnZQeW5OWUJvQUcyMStK?=
 =?utf-8?B?Nm00YUtRLzRHQmZyNGtGTHd5Z3NiY2JIS3g4eEZBUFhHd2ZYby9OUVN1d3dt?=
 =?utf-8?B?OHY4TFE0NHliQjl6dC90NWVLZEw0NHplWlJKQkoyUFQvelBUZW55RVVpTFhV?=
 =?utf-8?B?L1VrazVnRFJkYzFaVm4xVklYTzYzTENid0xwTkJSVDhlTzZTdDI2VVRVRnk1?=
 =?utf-8?B?ZUFQVkUzQnFMaTBqTmZyYmN4ZHVQcmJzUW55MkhqVDF4YW9EbWwwMXB6eENZ?=
 =?utf-8?B?aTJZbHVMekxBM1YvWERyRHFKSHZFZFpTbnBPNTRLL3dub2V0cmE4Nk8xUFFv?=
 =?utf-8?B?VWhtcU5INFVBRTJwaitmYithRDhHVStPdmc0M2xCWVU3T2tiaWZ3ZGcwajE3?=
 =?utf-8?B?QUJrbUNBWFJnSFpmUXA2bVp4SzBmNnJlbENicHdXRWl2TWluQndtMmo5NWRY?=
 =?utf-8?Q?ty/pSU8MLrqUVXX3BO1w8Z0IJ?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 55bce2fb-fdb0-4a57-1161-08dbc00ea0e7
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 10:35:26.5731
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: V4JLgI+pgWWHN23Tjb3RkyOt544OtLpbX9LOmOcpm+kK4HmKP9FjlyYhzefCwCeBIxIv6Xp6uQ4pWx9io4OCNw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8605

On 28.09.2023 12:15, Roger Pau Monné wrote:
> On Thu, Sep 28, 2023 at 11:53:36AM +0200, Jan Beulich wrote:
>> On 28.09.2023 10:24, Roger Pau Monné wrote:
>>> On Wed, May 03, 2023 at 05:58:30PM +0200, Jan Beulich wrote:
>>>> @@ -1633,14 +1528,44 @@ int map_guest_area(struct vcpu *v, paddr
>>>>  
>>>>      domain_lock(d);
>>>>  
>>>> -    if ( map )
>>>> -        populate(map, v);
>>>> +    /* No re-registration of the vCPU info area. */
>>>> +    if ( area != &v->vcpu_info_area || !area->pg )
>>>
>>> It would be nice if this check could be done earlier, as to avoid
>>> having to fetch and map the page just to discard it.  That would
>>> however require taking the domain lock earlier.
>>
>> In order to kind of balance the conflicting goals, there is an unlocked
>> early check in the caller. See also the related RFC remark; I might
>> interpret your remark as "yes, keep the early check".
> 
> Oh, yes, do keep the check.
> 
>>>> +    {
>>>> +        if ( map )
>>>> +            populate(map, v);
>>>>  
>>>> -    SWAP(area->pg, pg);
>>>> -    SWAP(area->map, map);
>>>> +        SWAP(area->pg, pg);
>>>> +        SWAP(area->map, map);
>>>> +    }
>>>> +    else
>>>> +        rc = -EBUSY;
>>>>  
>>>>      domain_unlock(d);
>>>>  
>>>> +    /* Set pending flags /after/ new vcpu_info pointer was set. */
>>>> +    if ( area == &v->vcpu_info_area && !rc )
>>>> +    {
>>>> +        /*
>>>> +         * Mark everything as being pending just to make sure nothing gets
>>>> +         * lost.  The domain will get a spurious event, but it can cope.
>>>> +         */
>>>> +#ifdef CONFIG_COMPAT
>>>> +        if ( !has_32bit_shinfo(d) )
>>>> +        {
>>>> +            vcpu_info_t *info = area->map;
>>>> +
>>>> +            /* For VCPUOP_register_vcpu_info handling in common_vcpu_op(). */
>>>> +            BUILD_BUG_ON(sizeof(*info) != sizeof(info->compat));
>>>> +            write_atomic(&info->native.evtchn_pending_sel, ~0);
>>>> +        }
>>>> +        else
>>>> +#endif
>>>> +            write_atomic(&vcpu_info(v, evtchn_pending_sel), ~0);
>>>
>>> Can't the setting of evtchn_pending_sel be done in
>>> vcpu_info_populate()?
>>
>> No, see the comment ahead of the outer if(). populate() needs calling
>> ahead of updating the pointer.
> 
> I'm afraid I don't obviously see why evtchn_pending_sel can't be set
> before v->vcpu_info is updated.  It will end up being ~0 anyway,
> regardless of the order of operations, and we do force an event
> channel injection.  There's something I'm clearly missing.

Considering the target vCPU is paused (or is current), doing so may be
possible (albeit I fear I'm overlooking something). But re-ordering of
operations shouldn't be done as a side effect of this change; if the
original ordering constraints were too strict, then imo relaxing should
either be a separate earlier change, or a separate follow-on one.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 10:47:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 10:47:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609479.948581 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qloXp-0002WY-PI; Thu, 28 Sep 2023 10:46:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609479.948581; Thu, 28 Sep 2023 10:46:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qloXp-0002WR-Mm; Thu, 28 Sep 2023 10:46:57 +0000
Received: by outflank-mailman (input) for mailman id 609479;
 Thu, 28 Sep 2023 10:46:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/RWs=FM=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qloXo-0002WL-RA
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 10:46:56 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5736bcbd-5dec-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 12:46:55 +0200 (CEST)
Received: from [192.168.1.15] (host-87-11-204-216.retail.telecomitalia.it
 [87.11.204.216])
 by support.bugseng.com (Postfix) with ESMTPSA id 681204EE0739;
 Thu, 28 Sep 2023 12:46:54 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5736bcbd-5dec-11ee-878a-cb3800f73035
Message-ID: <253a11a7-7d90-4e86-97b2-37a483ef5f73@bugseng.com>
Date: Thu, 28 Sep 2023 12:46:53 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH] x86/domain_page: address violations of MISRA C:2012
 Rule 8.3
To: Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Henry Wang <henry.wang@arm.com>, xen-devel@lists.xenproject.org
References: <6f3538a91f719611e719066237568163ae90c95e.1695827160.git.federico.serafini@bugseng.com>
 <3727a667-fada-faea-27ec-cde7612c358d@suse.com>
Content-Language: en-US, it
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <3727a667-fada-faea-27ec-cde7612c358d@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 28/09/23 08:25, Jan Beulich wrote:
> On 27.09.2023 17:09, Federico Serafini wrote:
>> Make function declarations and definitions consistent.
>> No functional change.
>>
>> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
>> ---
>>   xen/arch/x86/domain_page.c | 36 ++++++++++++++++++------------------
>>   1 file changed, 18 insertions(+), 18 deletions(-)
>>
>> diff --git a/xen/arch/x86/domain_page.c b/xen/arch/x86/domain_page.c
>> index eac5e3304f..1cfa992a02 100644
>> --- a/xen/arch/x86/domain_page.c
>> +++ b/xen/arch/x86/domain_page.c
>> @@ -173,18 +173,18 @@ void *map_domain_page(mfn_t mfn)
>>       return (void *)MAPCACHE_VIRT_START + pfn_to_paddr(idx);
>>   }
>>   
>> -void unmap_domain_page(const void *ptr)
>> +void unmap_domain_page(const void *va)
>>   {
>>       unsigned int idx;
>>       struct vcpu *v;
>>       struct mapcache_domain *dcache;
>> -    unsigned long va = (unsigned long)ptr, mfn, flags;
>> +    unsigned long addr = (unsigned long)va, mfn, flags;
>>       struct vcpu_maphash_entry *hashent;
>>   
>> -    if ( !va || va >= DIRECTMAP_VIRT_START )
>> +    if ( !addr || addr >= DIRECTMAP_VIRT_START )
>>           return;
>>   
>> -    ASSERT(va >= MAPCACHE_VIRT_START && va < MAPCACHE_VIRT_END);
>> +    ASSERT(addr >= MAPCACHE_VIRT_START && addr < MAPCACHE_VIRT_END);
>>   
>>       v = mapcache_current_vcpu();
>>       ASSERT(v && is_pv_vcpu(v));
>> @@ -192,7 +192,7 @@ void unmap_domain_page(const void *ptr)
>>       dcache = &v->domain->arch.pv.mapcache;
>>       ASSERT(dcache->inuse);
>>   
>> -    idx = PFN_DOWN(va - MAPCACHE_VIRT_START);
>> +    idx = PFN_DOWN(addr - MAPCACHE_VIRT_START);
>>       mfn = l1e_get_pfn(MAPCACHE_L1ENT(idx));
>>       hashent = &v->arch.pv.mapcache.hash[MAPHASH_HASHFN(mfn)];
>>   
>> @@ -317,30 +317,30 @@ void *map_domain_page_global(mfn_t mfn)
>>       return vmap(&mfn, 1);
>>   }
>>   
>> -void unmap_domain_page_global(const void *ptr)
>> +void unmap_domain_page_global(const void *va)
>>   {
>> -    unsigned long va = (unsigned long)ptr;
>> +    unsigned long addr = (unsigned long)va;
>>   
>> -    if ( va >= DIRECTMAP_VIRT_START )
>> +    if ( addr >= DIRECTMAP_VIRT_START )
>>           return;
>>   
>> -    ASSERT(va >= VMAP_VIRT_START && va < VMAP_VIRT_END);
>> +    ASSERT(addr >= VMAP_VIRT_START && addr < VMAP_VIRT_END);
>>   
>> -    vunmap(ptr);
>> +    vunmap(va);
>>   }
> 
> Up to here a statement in the description is needed why this apparently
> much heavier code churn (compared to changing the declaration) is still
> the (likely) better approach. (It may still be worthwhile to consider
> changing declaration and Arm code, for "ptr" being the imo better name
> for a const void * parameter, and "va" being more specific than just
> "addr" as a local variable.)

I thought keeping "va" would be better because of the comments on the
declaration side, which focus on taking a VA as parameter.
However, I will follow your naming conventions.

> 
>>   /* Translate a map-domain-page'd address to the underlying MFN */
>> -mfn_t domain_page_map_to_mfn(const void *ptr)
>> +mfn_t domain_page_map_to_mfn(const void *va)
>>   {
>> -    unsigned long va = (unsigned long)ptr;
>> +    unsigned long addr = (unsigned long)va;
>>   
>> -    if ( va >= DIRECTMAP_VIRT_START )
>> -        return _mfn(virt_to_mfn(ptr));
>> +    if ( addr >= DIRECTMAP_VIRT_START )
>> +        return _mfn(virt_to_mfn(va));
>>   
>> -    if ( va >= VMAP_VIRT_START && va < VMAP_VIRT_END )
>> -        return vmap_to_mfn(va);
>> +    if ( addr >= VMAP_VIRT_START && addr < VMAP_VIRT_END )
>> +        return vmap_to_mfn(addr);
>>   
>> -    ASSERT(va >= MAPCACHE_VIRT_START && va < MAPCACHE_VIRT_END);
>> +    ASSERT(addr >= MAPCACHE_VIRT_START && addr < MAPCACHE_VIRT_END);
>>   
>> -    return l1e_get_mfn(__linear_l1_table[l1_linear_offset(va)]);
>> +    return l1e_get_mfn(__linear_l1_table[l1_linear_offset(addr)]);
>>   }
> 
> This change, otoh, moves the violation from x86 to Arm, afaict. IOW
> this likely wants taking care of by changing the declaration. Then,
> for consistency, the consideration above gains one more supporting
> factor.
> 
> Jan
> 

Thanks, I missed this (it is a violation related to Arm 32
that is not under the ECLAIR analysis).

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 11:08:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 11:08:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609501.948599 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlosJ-00072U-Ha; Thu, 28 Sep 2023 11:08:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609501.948599; Thu, 28 Sep 2023 11:08:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlosJ-00072N-Ea; Thu, 28 Sep 2023 11:08:07 +0000
Received: by outflank-mailman (input) for mailman id 609501;
 Thu, 28 Sep 2023 11:08:05 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJIK=FM=citrix.com=prvs=6283bbd10=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlosH-00070k-KK
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 11:08:05 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 4aa5b833-5def-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 13:08:04 +0200 (CEST)
Received: from mail-bn1nam02lp2040.outbound.protection.outlook.com (HELO
 NAM02-BN1-obe.outbound.protection.outlook.com) ([104.47.51.40])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 28 Sep 2023 07:08:00 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH0PR03MB6367.namprd03.prod.outlook.com (2603:10b6:510:a9::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Thu, 28 Sep
 2023 11:07:58 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Thu, 28 Sep 2023
 11:07:58 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4aa5b833-5def-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695899284;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=1x78ZHXLdUf9UVvhR9CzPKnsXCvoHGNsIZWegIB4w6o=;
  b=GdDWiIlSpvkuwIkLXkTV37mVs5DYJ8jStIRIssN1Y3Dr239x/op8yre7
   qwrA09aisa7CMqbqMyte9h4Pzv1s5P3+vAv11nPfH9me2QyoDNDpNG9PJ
   XkkEd1gtbfq6ivQy4DEyxtvoXShUerLTd9NaTef8FUSHb0hWsAint17h5
   A=;
X-CSE-ConnectionGUID: qP5D8ReGQjiEoBc3JXl3Lw==
X-CSE-MsgGUID: PJGEJ01sRdWMhcvh9JGjzw==
X-IronPort-RemoteIP: 104.47.51.40
X-IronPort-MID: 124060896
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:8qa3LavnfxX5vYemm9VY/n+qtOfnVKBfMUV32f8akzHdYApBsoF/q
 tZmKTyGO63bM2L9KtAgbI2+9kkD65LXzN82TlZt/i9jEnxH+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5A6ExyFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwMQhQQkC5is2PwrOWTcNn3eYTKJLPI9ZK0p1g5Wmx4fcOZ7nmG/+Pz/kBmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osif6xaLI5efTTLSlRtlyfq
 W/cuXzwHzkRNcCFyCrD+XWp7gPKtXqhBNpMTO3pqJaGhnWr5EM+KkVPTmG3nty5gVC+CvBwK
 V4Lr39GQa8asRbDosPGdx+yrWOAvxUcc8FNCOB84waIooLI6gOQHUAYTTpMbtM3uctwTjsvv
 neZktWsCTFxvbm9TXOG6qzSvT60ITISL2IJeWkDVwRty9v+pIA+iDrfQ9AlF7S65vXuAi35y
 T2OqCk4hp0QgNQN2qH9+krI6xqzorDZQwhz4R/YNkqF4wVjdciaboqnwVHB6LBLK4Pxc7Wal
 H0Nmszb5uZXC5iIzHaJWL9VQOnv4OuZOjrBh1IpB4Mm6zmm53+ke8ZX/S16I0BqdM0DfFcFf
 XPuhO+Y37cLVFPCUEO9S9vZ5xgCpUQ4KenYaw==
IronPort-HdrOrdr: A9a23:nbJlB6wq2y9rQO3SOveCKrPwCb1zdoMgy1knxilNoH1uEvBw8v
 rEoB1173HJYVoqKRQdcLO7V5VoI0m8yXcd2+B4V9rPYOCBghrQEGgL1/qE/9TOIVydygc379
 YFT0ERMqyLMXFKyer8/QmkA5IB7bC8gd2Vbay39QYKcegQUdAC0+6hMHfiLqShfng8OaYE
X-Talos-CUID: =?us-ascii?q?9a23=3A/BrBL2sCrnWxrbuxKhWOb/he6Is8SiDxnE3dDHa?=
 =?us-ascii?q?6CEtuYrbOa2+Uo4d7xp8=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3AqZLozg9LzTZYESR2RTpwApGQf/9KzImMUBkWq5k?=
 =?us-ascii?q?5nsmPKywhGRifniviFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,183,1694750400"; 
   d="scan'208";a="124060896"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gbiHZrvQC6Fo7lOgCBEKzMssG5TMNNa1Mrk4yOicTDtzeTOADnwPdYXX1W0okrFs4AddAZsXtRajFSapEyVn8eAkAUt1J+sfXh04G8FxmlQQ3s9+EywxgCknVd2g8fniECfEXUwkNzLm5WhjNfjXGmuWtnPsnmEWI4CLrZNgU04HUE6XJnJZFuwhXbgZ9P65LSi69B2SOymhxXcDGnn2VugcDehJhmj16u6vgsqNfqYFhvBEeZi5mzjA7nSNVKhxya0EBPbkPRhvPmdtrZwuGs8W5n4o2PR6O51ii12I6X/oCl1zdhMWmalvwspWBj8xaXFqIdoXqKahFuWCArjo7Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+k8Gqw7WTNJMkFZiBUjDxI20/SI9o9Eq5dWC5QRyy0g=;
 b=YFjKEUAnH8RBdWiS8Pp9nsUYB33y7n+0BzIEgsmQSA4fEEhIkQmklTyXxDQ4tNbZotELMrvH4Nr+8eebOlgd8FQK4hWRqmN+9b1RwxD2cjqjk31XoWoJJeKbzLotZBpbrEbR7dw6uYI4k4rx5gP9YhEh5jpeSTBjmDP4xb3kS9bYPT1jLgfHB1c1A1Lh6JIH1+5QsGOQ/qw4RroL/ZNA3b624osuyx2ELbvJQOzvTPv/Sy9pVVcitVA5BIod5KHrT7WPp66c1SlLwo7zs1BRZNF7ibUgM/vxRMEByDsbW4K+Dod9NIqh7cWFjRm32jXuLHSSJ3lyKSwjd7d/+I9v/g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+k8Gqw7WTNJMkFZiBUjDxI20/SI9o9Eq5dWC5QRyy0g=;
 b=tZJpX9lpNZSQMgEtKKlnzmzB30hH9YbelRZJu2Fc/hX03mEbYpCp+tneY4tGx2Sic4+W6L1iyhR/+/TKKbyEsZt0g6os3jjm2+XwkvBBRakUCsVzxCZZMO3ogoAGaSIzXjTJf8k7XdIBIru2ER4Vp88lTNhrrhIOlcuZzXRg9Zo=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 28 Sep 2023 13:07:52 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Tamas K Lengyel <tamas@tklengyel.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH v4 5/9] x86/mem-sharing: copy GADDR based shared guest
 areas
Message-ID: <ZRVeiAFlyf1LJ2qR@MacBookPdeRoger>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
 <6047c192-0f37-e4ff-5980-fd137b3f1869@suse.com>
 <ZRVMhdyI8s4chr7b@MacBookPdeRoger>
 <d285a456-307a-0a36-0910-cb80f419627d@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <d285a456-307a-0a36-0910-cb80f419627d@suse.com>
X-ClientProxiedBy: LO4P265CA0295.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:38f::8) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH0PR03MB6367:EE_
X-MS-Office365-Filtering-Correlation-Id: 0e1dc528-ecce-4c1a-f6b3-08dbc0132c27
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iCNzq8K+8nltELO3oOyn4uozvz4A2JwNPNoi0gzZtLBHtwVKpI9d9MT68KxRh/Y6DKpYOFvtwDKUzcjMXTTV+nYPaBHVYomyiQhFu6B6r2BiGEMbNg8xn7JrxHQpKUIdO/PU3OtbQ5ZRoUgDCPRW62OjJwNdNlE4hIyiDlPR6xBVZqN1I67dMfYmbwWJA6A6uXhhqbrC9Nu7wSnL42mVy1BTz+po8EHLsEwKKv7LSJasZ/G7O9EM1SvbpKIJ7hiTV3J9Xd/RAdLIQj8/uE4rDQiChwk9cAyR1HwDdmyc147XpKeOSWJW7EtZu0dRz4h84AUPjEOp32NEo9TvLRaSZCEm23nV4LdL2UG3/29LVNIsdDhC1SlduLKp+JwW7izh/uJlnlcighEJ5xabVtjmlx7rwfLaxcl657IctHXoKvdbFkgz89faRCLeZH/g+gcounnC18JLL444mIYEcKhw1WRFJSkJVE3dGoxpE7wku9T07awkohxemXIGRpzKdFwpi4SLVxu+scmL5eV3gjfm3ocN+Q3J00hGPWO+rnx4XwCurtddtVpViX3UjqkBLxoX
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(346002)(396003)(376002)(136003)(39860400002)(366004)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(6916009)(4326008)(41300700001)(85182001)(38100700002)(6486002)(86362001)(6506007)(53546011)(83380400001)(8936002)(316002)(66476007)(66556008)(8676002)(5660300002)(54906003)(66946007)(33716001)(26005)(478600001)(9686003)(66899024)(6512007)(6666004)(82960400001)(2906002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?RHJ3ZWZvSXVOSmJpT25mbTZ1cDdlbWR4SU15b3E3bmlVdHBld3pmOVJNMnJQ?=
 =?utf-8?B?VjlzcXpQUy9jdU9BdjdqcVA4b3g3QUlFU1huVEtUWU5xRXMxaCtzK1N5QU1l?=
 =?utf-8?B?K0g2UGJTdTYzQmR1aTJIa2VvUWJmd3I0Rzd2TDFCRnVUZjgwSllkSzZ6NVRy?=
 =?utf-8?B?aUxpbDRTd0Z4clFtMGRscEFyV1ZKaTZaWUVNc1VaSGpuM1U5VGsvUnFmOE9h?=
 =?utf-8?B?TitvajhIUHREZ2c4MGNRK3NEWjJTZE5uclpMa3J5QXhnb1VUd0NJTkZjSU00?=
 =?utf-8?B?VlI3TmY1WlRJYllWY3Rud1JlV20yV1d3YXM3TXZFWUtqSTJkMSsyRFZQdjM1?=
 =?utf-8?B?dzM1K2RXWXlteXBoS00xMUpnS0ZLSTlmVDRWUkZIWUJRQmRCVDBWT21NbXdI?=
 =?utf-8?B?SmFwUzEwbmhNM2ZZdjN1S1RIY1cwTXlxazNmaGRVQ1hFYXFvN1FUWFREWWVq?=
 =?utf-8?B?alQwai9JSFJkVnBOR05lUUYwSm82a0dQUHdINkQrOWtWT0FRdUY0TUR1MWpk?=
 =?utf-8?B?WkE0ZWdSNXBJbEp5a0Q2ODNMZDZvU2t2RHZJR1d5OTFlT1RieEJSU2dreGZl?=
 =?utf-8?B?ZU5Sb01qSkJDRlpqazhTT3E0ckNxRWhYa3JUMWwvd1NodUN6TmZ5V1NnSXds?=
 =?utf-8?B?dEduQkl0dFN4SFN0NUE3VmVvMDBOTWRMOS93d0J1UzJ2STBQTlpzMExyMlhy?=
 =?utf-8?B?YXp3YjFkd1k4MG9NNEt3MHpNQUN5ckZzUnlvVm9KNjk1OUtXc1phNzdiaWxL?=
 =?utf-8?B?U2k3Uk1ETXJYcGdnZU54bHg3ejVZeURwWUxiSUY5bDFPVE5GSWdoZnZKZWQy?=
 =?utf-8?B?VXJ0Mi9xZmFQbndicXdJZUV5SXREbmhkVHgyZ2pzemhoYWtHODJGaGZYTjNJ?=
 =?utf-8?B?bzFsWkIwNS9rSFRMU2tvSFd4QWJ2K2lPeDFaSGFuUmE5TmFBMTBsVURnbXNF?=
 =?utf-8?B?TG5PYzViZ1EyK3FqRlIvWXg1THdod1YrZ3BUZDgrbGVnOWRVNFFJSmUvbFdH?=
 =?utf-8?B?QVRJU1NiU3dOL3QyMis2dnFQVHhLV2FZbkdLMmt5WnRiT2pBQ3ViRC9uaGlG?=
 =?utf-8?B?UjJpSk1PNXR1UHdyNHE5cW9kdHVtVTBnb0RyTzhjekErWHhkSEo5MXd3eVVF?=
 =?utf-8?B?MTJqNGZmWERPWk9LRVNnU1haVjk1d0hwaHF6UHB3UUpyM3RsYUJ4TlRkbC82?=
 =?utf-8?B?VjVIY2wwNFJLTlpCV0VUaGZRd0FCdFdCeUl1azRtRDh1bDJuZTAxcDhzaFhS?=
 =?utf-8?B?K0FrSndBQ1NyZkJLMHFrLzJqVHczQUNrUGxsbExWYXpVY3VpSi8rUVlsZUdH?=
 =?utf-8?B?M1FRWHFCL2NqZmVWVTVZY015N1FYZVR3ZEt2RSt0d01vTXFEcXlTN1FxTnFn?=
 =?utf-8?B?bFJpakJNZWlabEZvQUlOb0M0QWpLUTgySzl0ci9aNThUb3M1N3U3b3N6Sjkr?=
 =?utf-8?B?Vy9DNG5IRGdCck5DdU5tVHV6RkFkTjgwcTVjMmYvUE55M2srYnJmVkxsZkU2?=
 =?utf-8?B?UFNTRTJDK1VLb2ZDVjJMZWduV0xlNEI4WVJZMzcycEdjaUxWZVhKampQZmhY?=
 =?utf-8?B?emgvM2FtV1hiZEZkMVVaMENnSkkxa05EcXpjdmZGSzBVK29UYS9kSlBqSHU2?=
 =?utf-8?B?b3RIRmJEa0ZXS2YrcStPdTc2bVZUMUNmczN1Zi9QUE9WSXFtSFRuQVBhUHJv?=
 =?utf-8?B?Q3pvUWZ1REV5aGVrR0htUCtscnZyRzhUL3FrODk2SlE1U3Jzb2hMNkV4ckhG?=
 =?utf-8?B?bU5ISWNPREpBSHA0czdnRE0zeE56YWtaT25mQjVaVzlJRGlYVEo3MGZiYXBn?=
 =?utf-8?B?bGU3aXJJdlYwSlljZTcyZHBLTGRHek9nQ2U5M3V6VmIxM2xMQ0xHYnBoc2hH?=
 =?utf-8?B?V3Q0Nk83aytZeUIvQUpFWXRUdzNjNWh1RXlNS2VRcWs1RHp0MngzaythRUhK?=
 =?utf-8?B?bjJFNitUN3hMdWFmeTJIRUU5VUVFcEIvUFNoOVFBZUpJVHlLTWgya0RBeXh4?=
 =?utf-8?B?WnJyZ09iVTB1cEszdUFRaWExT2FKLzk5Wnp0NWNiZW55MnI2TFRCNGFIRGx6?=
 =?utf-8?B?dHlwWUVzTWVqZnh6bEUzVzdIYVpPUXNNekZ2czlHZk8zWTlIU3hERlJ1NWRZ?=
 =?utf-8?B?Y0ZvRGUzUnhVcTdyRjA5S21Yb3F4eFVSZm4xdU04N3lPR1JWZ25kZUdOa2hU?=
 =?utf-8?B?MlE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	h+tUZ3hndgLl1axsbviAoy6PVM/JnQcm9c8G3RYIDC/a3HrNO8pokH+AGVBS424oowtvSlhFZiUmRm+fodrxyf/3ZNnITnw7jDX09vizhVOyxb1KTKyciEk35lFKAvRHcimE9zaLcEYssjaz96KBhxmoTOO3xVjQjYXZdiL3OF0vbwMDa+hGQQ0uxwqOf1a1yAD5rZ/8wcAJchNCnbYWQ4/JizDl5cXCdGJUA+hJtfbDtXmX9XBpBEnm3+He9uvyQ8wWoXAlAQ+uVSTahkF9Rx1QiApT8085P4RLpfVnLSBuxUbZiaK9kmPPteqX2DiAv8x7ePiF+U8WGcW4pVYwjtRTddVJ7uTZmJCR/zxBjRjvnQEhrmszV5TKnlssFBgjLYL+AtJZWza/oWvwa1KCOlrYAluIz/tH/duAMNgCIUzrmaNAV196jjDiJ8eGP/mcS8IWwAh48Y/qEuS1nf4OXSG1tPap1/2svLZ5bjtbsh5t7eYDSQk5NxseOc8oLDfRtOHBxNDhQ9gg0a8pCxjfwvjtwghAGupSe7oXLUC4G2k3Ylc95pV2tTm3/1b63J2VJZPv9QM9HiblxNSjEFA13c/adPzgY21/Gwvi4kg0lN5PXwBTRTn3NKMND+ytM+mIyIQlKzBqiVw1y5jcj9D66dWw9nWyc0sfxn9Z4S/1ffBDnljZrXz2rWjgg8iK3L27Xe/LcEEPl1O3zvFZjRUjYqBpV9UO5/IGRvui/beIBkVuEyuztC3Hv6qum/PeBzAVWFDlvIj1nwxOMNUlFeYXQgp9YYQ2qSTS2nrHCzXLvafHWKjpxMR9F2ICIqZG/FEivttGTBukgRAr0/oQDq6SnX4i9tt5EmozpvwHoKgiu7zcpJryH6cJjIbqIc3Ah71hsklbm3lbF8fLECMqSAM4bf+s/ygJWyLKIvZJvWu8SCw=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0e1dc528-ecce-4c1a-f6b3-08dbc0132c27
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 11:07:58.3528
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: Pg0jdU9Rg6O5+iu6F6Ej9gXbgkKJxITv5tNNTCAwkfXaGvvdnjWLZhgIAlFzlnMtn5FUHtCmrF+X7f1YPdCl6A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB6367

On Thu, Sep 28, 2023 at 12:11:02PM +0200, Jan Beulich wrote:
> On 28.09.2023 11:51, Roger Pau Monné wrote:
> > On Thu, Sep 28, 2023 at 09:16:20AM +0200, Jan Beulich wrote:
> >> --- a/xen/arch/x86/mm/mem_sharing.c
> >> +++ b/xen/arch/x86/mm/mem_sharing.c
> >> @@ -1641,6 +1641,68 @@ static void copy_vcpu_nonreg_state(struc
> >>      hvm_set_nonreg_state(cd_vcpu, &nrs);
> >>  }
> >>  
> >> +static int copy_guest_area(struct guest_area *cd_area,
> >> +                           const struct guest_area *d_area,
> >> +                           struct vcpu *cd_vcpu,
> >> +                           const struct domain *d)
> >> +{
> >> +    mfn_t d_mfn, cd_mfn;
> >> +
> >> +    if ( !d_area->pg )
> >> +        return 0;
> >> +
> >> +    d_mfn = page_to_mfn(d_area->pg);
> >> +
> >> +    /* Allocate & map a page for the area if it hasn't been already. */
> >> +    if ( !cd_area->pg )
> >> +    {
> >> +        gfn_t gfn = mfn_to_gfn(d, d_mfn);
> >> +        struct p2m_domain *p2m = p2m_get_hostp2m(cd_vcpu->domain);
> >> +        p2m_type_t p2mt;
> >> +        p2m_access_t p2ma;
> >> +        unsigned int offset;
> >> +        int ret;
> >> +
> >> +        cd_mfn = p2m->get_entry(p2m, gfn, &p2mt, &p2ma, 0, NULL, NULL);
> >> +        if ( mfn_eq(cd_mfn, INVALID_MFN) )
> >> +        {
> >> +            struct page_info *pg = alloc_domheap_page(cd_vcpu->domain, 0);
> >> +
> >> +            if ( !pg )
> >> +                return -ENOMEM;
> >> +
> >> +            cd_mfn = page_to_mfn(pg);
> >> +            set_gpfn_from_mfn(mfn_x(cd_mfn), gfn_x(gfn));
> >> +
> >> +            ret = p2m->set_entry(p2m, gfn, cd_mfn, PAGE_ORDER_4K, p2m_ram_rw,
> >> +                                 p2m->default_access, -1);
> >> +            if ( ret )
> >> +                return ret;
> >> +        }
> > 
> > I'm still unsure why map_guest_area() shouldn't be able to deal with a
> > forked child needing the page to be mapped.  What happens when a
> > forked child executes the hypercall to map such areas against not yet
> > populated gfns?
> > 
> > Shouldn't map_guest_area() be capable of handling those calls and
> > populating on demand?
> 
> Funny you should use this wording: P2M_ALLOC will deal with populating
> PoD slots, yes, but aiui forks don't fill their p2m with all PoD slots,
> but rather leave them empty. Yet again I need to leave it to Tamas to
> confirm or prove me wrong.

If the child p2m populating is only triggered by guest accesses then a
lot of hypercalls are likely to not work correctly on childs.

> 
> >> +        else if ( p2mt != p2m_ram_rw )
> >> +            return -EBUSY;
> >> +
> >> +        /*
> >> +         * Map the area into the guest. For simplicity specify the entire range
> >> +         * up to the end of the page: All the function uses it for is to check
> >> +         * that the range doesn't cross page boundaries. Having the area mapped
> >> +         * in the original domain implies that it fits there and therefore will
> >> +         * also fit in the clone.
> >> +         */
> >> +        offset = PAGE_OFFSET(d_area->map);
> >> +        ret = map_guest_area(cd_vcpu, gfn_to_gaddr(gfn) + offset,
> >> +                             PAGE_SIZE - offset, cd_area, NULL);
> >> +        if ( ret )
> >> +            return ret;
> >> +    }
> >> +    else
> >> +        cd_mfn = page_to_mfn(cd_area->pg);
> >> +
> >> +    copy_domain_page(cd_mfn, d_mfn);
> > 
> > I think the page copy should be done only once, when the page is
> > populated on the child p2m.  Otherwise areas smaller than a page size
> > (like vpcu_time_info_t) that share the same page will get multiple
> > copies of the same data for no reason.
> 
> I think you're right, but this would then be another issue in the original
> code that I merely didn't spot (and it's not just "copy for no reason",
> we'd actually corrupt what was put there before). IOW the copying needs to
> move ahead of map_guest_area() (or yet more precisely after the error
> checking for p2m->set_entry()), and in the original code it would have
> needed to live ahead of map_vcpu_info(). Once again I'd like Tamas to
> confirm (or otherwise) before making that change, though.

Yes, it's already an issue in the current code.  I wonder whether
logic in the guest or Xen could malfunctions due to the fact that
map_vcpu_info() unconditionally sets evtchn_upcall_pending and injects
an event channel upcall, but the later call to copy_domain_page()
might unset evtchn_upcall_pending while the vector is already injected.

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 11:10:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 11:10:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609507.948610 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlov1-0000RH-2L; Thu, 28 Sep 2023 11:10:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609507.948610; Thu, 28 Sep 2023 11:10:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlov0-0000RA-W0; Thu, 28 Sep 2023 11:10:54 +0000
Received: by outflank-mailman (input) for mailman id 609507;
 Thu, 28 Sep 2023 11:10:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJIK=FM=citrix.com=prvs=6283bbd10=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlouz-0000R0-CT
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 11:10:53 +0000
Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com
 [216.71.145.142]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id ae30b4be-5def-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 13:10:51 +0200 (CEST)
Received: from mail-dm6nam12lp2168.outbound.protection.outlook.com (HELO
 NAM12-DM6-obe.outbound.protection.outlook.com) ([104.47.59.168])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 28 Sep 2023 07:10:48 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH7PR03MB7105.namprd03.prod.outlook.com (2603:10b6:510:2b8::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 11:10:41 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Thu, 28 Sep 2023
 11:10:41 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ae30b4be-5def-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695899450;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=yV7OMOE7LtZ5y48lvresqQnMS0cGupeD89tY/RjZiEQ=;
  b=JqfR1nHoltpOxU/4ccSuGdbOb5yHnAi9poooUT2k4bG6/hA+QYPsyxKx
   Qs6/NsfHhX6PksaKtD8MBZ7baZifX4wErDDxUi6Ml3uoGbpvJQ5MC7NVV
   Hi0F4ZbY2K4lWtXbm8JY6I+fb28ykWyPmC/wVWhtOnSA5IqS2g/NwvKx+
   g=;
X-CSE-ConnectionGUID: 1YplpTPXQ7qUDerlJh8QxQ==
X-CSE-MsgGUID: u7JoJ6KyQ0emnjhr5clgwA==
X-IronPort-RemoteIP: 104.47.59.168
X-IronPort-MID: 124476439
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:YaoOE6sAGHp3PU60tP1AORfF7ufnVIxfMUV32f8akzHdYApBsoF/q
 tZmKWjVOPyLM2ekLdgkO96w/UIBvsPdz9RrQAdrqC9nRihD+JbJXdiXEBz9bniYRiHhoOCLz
 O1FM4Wdc5pkJpP4jk3wWlQ0hSAkjclkfpKlVaicfHg3HFc4IMsYoUoLs/YjhYJ1isSODQqIu
 Nfjy+XSI1bg0DNvWo4uw/vrRChH4rKq41v0gnRkPaoQ5A6ExyFMZH4iDfrZw0XQE9E88tGSH
 44v/JnhlkvF8hEkDM+Sk7qTWiXmlZaLYGBiIlIPM0STqkAqSh4ai87XB9JFAatjsB2bnsgZ9
 Tl4ncfYpTHFnEH7sL91vxFwS0mSNEDdkVPNCSDXXce7lyUqf5ZwqhnH4Y5f0YAwo45K7W9yG
 fMwcQEVagi/v9KPn6uGZuR2guYjfPD7BdZK0p1g5Wmx4fcOZ7nmGv+PyfoGmTA6i4ZJAOrUY
 NcfZXx3dhPcbhZTO1ARTpUjgOOvgXq5eDpdwL6XjfNvvy6Pk0osgf60boq9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAt5OS+Pkra8CbFu72zMxDz9IdkqC+fS8jEy+QY9UL
 0ML0397xUQ13AnxJjXnZDW6qnOZuh8XW/JLDvY3rgqKz8L88wufQ2QJUDNFQNgnr9MtAywn0
 EeTmNHkDiApt6eaIVqf67OVoDWaKSUTa2gYakcsVhAZ6tPupIUyiBPnTdt5FqOxyNrvFlnY3
 DSivCU4wbIJgqYj96i950GBvDuqqbDAVAtz7QLSNl9J9St8bY+hIoCtt17S6K8aKJ7DFwfR+
 n8Zh8KZ8eYCS4mXkzCAS/kMG7fv4OuZNDrbghhkGJxJGymRxkNPtLt4uFlWTHqF+O5dEdM1S
 Cc/YT9s2aI=
IronPort-HdrOrdr: A9a23:q3/Nza1z9GiIUmGJVJwxkAqjBJckLtp133Aq2lEZdPU1SKylfq
 WV98jzuiWbtN98YgBEpTniAsa9qBHnlKKdiLN5Vd3OMDUO3lHYVb2KhbGSpAEINBeOlNK1vp
 0QF5SWZueAd2RSvILX5xS5DsZl4PTvytHUuQ+Up00dKz2CEJsQjDuR0zzranGekjM2fqYEKA
 ==
X-Talos-CUID: =?us-ascii?q?9a23=3AUXCDYmjl6noM4O9vB0YNN1iePzJuK0zFyG/sG3+?=
 =?us-ascii?q?BVn9UZLCPTX2QqJp0qp87?=
X-Talos-MUID: 9a23:BNyuyAkBduHRYgn2Rwmfdnp/a+VvwfqNGXlVnJAAucmeaCd0NCi02WE=
X-IronPort-AV: E=Sophos;i="6.03,183,1694750400"; 
   d="scan'208";a="124476439"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=mT1nyfgLK/VCLQ1EBd94SU/5tJHtj8scQtQQuFX6CJJo7szy6w+1zrCXI61q0IaK7m8RY2b4vKJqXhvztmnhepnq2jHEYG2TvUdIMvbVpB54tzkPu1HOX65UdpBwNMi3NKTLRJWHHBNUpeVym/dPXv2OFIpcIiJzjCvfgySsW/M2fEnDfD3JRlaN8G1ji64xzb/uxAqXGkERLIy4QBxSxtB1mn1ih23lcf+kgY4AxmfLIQPpPOsvNk/SqbMXquOOGm5crGYLlSmKAh5e2OVLnEEXBhzoBEn7qqvhwFzwjBlPHGEHkPXFIfWGQ0JsmNcl82UPxy6MZgQ9ovXziU5mOQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=BCYsISzUf3IEAEdoXzsWBm5kNv5TXJ89DzAwx7TnxXk=;
 b=W5k3uV2uRMIlHFbcSNQtwPlnmsd4/WffItHnbmSA7+nC2oV/TmOtW5K43C6YCC0ycHSl1HHekm57pBPVIg+wDCfWcqoAsg0QAVZJdVnAwJ5X0v4npCcx3vSIiT12pBUkfcuFj/yM2ebJQ1brtJ1uEREAzwmC96+zJOWI0HbacHRlhrYlwlcV7/0v3nlWJj3UA6Qrrs5EhT5N4UPGlmTbCjiP1LS6KA00V20GJElKJQggZnTrldQTy12bvixqv0ydTp0D3F7GOOkQp+0vUo+n290D9I4g1G8CRm+ba7IOJLWxout+SFOb+ANvLXOPMCLJhChb49q05UMgBhj/MZEz9Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=BCYsISzUf3IEAEdoXzsWBm5kNv5TXJ89DzAwx7TnxXk=;
 b=WfhRFjEPOwFRPc7eoY8EZfhP2qauqpxmgOxAiXE+7QGa+b7tSDUwYxiQl9xGQZBaevBSx3XBwJJSsQJKqvepIvPnmEe2pB7ZJfdfxAWGnJLrBVjhSMPjDN9tnkv3cyD9HGRRe0XAPRWrq5RHfoo5n5wNs7R7hGpBtLx2f1kjzHc=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 28 Sep 2023 13:10:35 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH v4 6/9] domain: map/unmap GADDR based shared guest areas
Message-ID: <ZRVfK4d5rQIWve8M@MacBookPdeRoger>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
 <a34cef71-d60f-43ae-f61d-13d6c846eaa4@suse.com>
 <ZRVPqiRHXMJC3Bo9@MacBookPdeRoger>
 <4566ffee-7e97-0309-f5ff-7ce24b050e8a@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <4566ffee-7e97-0309-f5ff-7ce24b050e8a@suse.com>
X-ClientProxiedBy: LO4P123CA0699.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:37b::6) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH7PR03MB7105:EE_
X-MS-Office365-Filtering-Correlation-Id: 55a4e31f-6cb2-4f74-caca-08dbc0138d73
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	7rPVev7QYtzTmEeV15W/4i43nA4jShtIhktTzFe8tO2yzE0QkfAY55IfG3FvjdUNyUMV3Muq21ygP3cSmPmDzHYLq7Dm5BzXJDs6RKKIPDXE4vUBZaF1Cup8pD6pLdT9QTl+vbmqeCCcTCim/LaM5/jNPcVBEvYUVLhfZFT5vNF27962CY2LsT4nLBhU2MLCzLQ7p5u/BgdwIu4AV8Fmf8b+5bpS1qPxVyrtZy4KZbVH2w8TD4c6ezmMvnwb7wXKeUmSBwlvgYdHgbvHgijyUoh7Z9ne9JuzpZ6UrLcf18+n86IMd9c+AluDC8TqQ+d5r7op4RSd9dYLxbQbs5J1HD2kLSe90E0fUpX4OXYGNUyEEgoSAm60h/R+swAknBN61OCmiiwxc26pqH6cIuFKgoB/w1MoUZDI4b8u130nZPqffZA1ZWGA9hzdItLRQLQQpjcSNbFuy2m8KkFSDVdObnO79en0L/rnDRGNbnUNeDBZYaSPmTm9NbRKlLOzZmOfDrIes+rDBsFPjO3GpVoCTL+IoKXd3q4jDtLCk/TtM4Kee2qJwU5pBqsTho9aNyyn
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(346002)(136003)(376002)(39860400002)(366004)(396003)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(6486002)(83380400001)(33716001)(478600001)(26005)(8676002)(66556008)(85182001)(54906003)(38100700002)(5660300002)(4326008)(2906002)(6666004)(316002)(6916009)(66476007)(9686003)(41300700001)(86362001)(66946007)(8936002)(6512007)(6506007)(82960400001)(53546011);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?Mk5pcFRlMW9tYnN1eElsOTZRem40Qzl6dmsvLzBSOXIxV1F0ZmVnTWNvQXRk?=
 =?utf-8?B?WnFjcjFaRm1nZ21YQUc3alhhRWpmcEZNTStqa25tbmptY1JtZk9DSVlLU1RR?=
 =?utf-8?B?S1VwNllCT1YybnZYbWZIWXlIT2ZHaVhPMGRMemZaQ0FaZURqekRmOS9POWR4?=
 =?utf-8?B?eGQ2VitLY0lQNmRXSS9BVFRYYTlmdkMxc0pDelh3R1R1ejFEeTFuWERUdTI5?=
 =?utf-8?B?QUQ1TWdQc2l5em9JRnJ0OFB2SlhoOGNsTDlzU01nRlNaZnFSbXNUV3dHTGNp?=
 =?utf-8?B?OGQycDhVODhCT2hXaXRQMzZxNHorS0tha2N6Nyt2c1NBNEdXdURXZGRoVzRO?=
 =?utf-8?B?QjNGS29Td3l0aFV6RG5uSm85Y3FqUGNxZWx4ZFhsTnFIaTZ2Nk9VdFFMTEw2?=
 =?utf-8?B?c0VleU9LNmZRT1BBZXZvM2UwNU5hZy9GejFwVWc0R2orQW5VTGNqbThwdkFL?=
 =?utf-8?B?cXBCOFhzZkZQTWFuWFhQYzNaTE9rbEI1S25PNktxVkdqKzlIYmF5U05WZnFI?=
 =?utf-8?B?U0llUnpOblBWUXJYMDJBb05DNk5rZ0pvdGEzRC9lVUkyZSs1dEx4YWFyZm1u?=
 =?utf-8?B?K3lPa0x6dVh6OFMzZ1poMElweldJZ0ZZRFZmS1VvK0U4NWptdlk0MTJacVB6?=
 =?utf-8?B?NnhZeGwxaTJFclRwTjBOUDg1aWN4OVFYdXJ3QVFRZWJWWEl4L0k2bTEzNWlZ?=
 =?utf-8?B?YkVHUW96d0FvVjY2M0kvN0dCeWVIc0hLYVVHUzJCbE1RaHRTZ2I2ejUycWNk?=
 =?utf-8?B?dGh2djRkUXUxTlJHajhSTlh6WVB0dm9mN09wTXNSWHoyRGpaM3NESUxyMEV6?=
 =?utf-8?B?MVlYY2hvU0xOUWlXTTBNaEk4eER2VWdxNkNsdkhFMElsem1VeVdQUitTY3JC?=
 =?utf-8?B?OW83K2xJLy9ianh4MjJOYjF5WjlGaGt6U2sycXRHMHVMR2dJdjRNZWgxYk5S?=
 =?utf-8?B?S3dHRkNkN1dSbEZHVno1UytjWkNXRmUvRCtFajkxRXV3SGZGVVhHNmlpa2Y4?=
 =?utf-8?B?aVpxbGVneWxVNEN3ZFRmODRmekhSbGhmVUhRcVYySVlibFZmZ3ZuTWhWWVJF?=
 =?utf-8?B?VFh5MjBrdjNLdlJMSUtoNEltdkZXeUxsREZjUFltaTR5dWNrWEJxM1cxZFNB?=
 =?utf-8?B?VWpTb3FGL3RNcGM5WjVoci9YbHRDVkxuUURVMGlYNDhPTTY2dHJFL2YrdXRa?=
 =?utf-8?B?TEJDZXh2RjVIRHpCbnRBR05aSFhqK0p1elB4U1VGRGZieVk3N0pNbkVGU0Rq?=
 =?utf-8?B?U05LNUU4VHExUTdsck42amdTejgyU3ZldlhPblNwZ3g3ZlMwZGlXLzl0VDln?=
 =?utf-8?B?dzI4eEVCc0duNEF5Rk5nRmNxRW9vRXQ4YzNEMHpzZzg3OW5DRWtpTXU2ang1?=
 =?utf-8?B?Q3I2RGEvL0lVQ0E3S1VCczcvMFQ5cG5TVDFuSTBTTS82a1NTUFhNMUl3TnRF?=
 =?utf-8?B?OUJacnRyakhsTUNkTGQwZXRoemxaQXEyYTYrQ0JqaTZIT2U2MlZxWTBEdkJs?=
 =?utf-8?B?TFcxbTh5WVE3WmNWSG9ySXJuTGYvSDEvZ0xsaTNpZ0g2eklybTdOMUM2NzhX?=
 =?utf-8?B?Y1FCdUJRNm50Mk5ybEpNaXRkaXpQUTEyWHA0ZVUyZ3FrRXo1dGN6U2w5emZD?=
 =?utf-8?B?dEdOelVTTGV0U1lOOFc3cEFhUUVDVVA5RGFVMTdVcjJpcm8xQ0lIQmRmbGlr?=
 =?utf-8?B?WVQ1dzEzZUZyRDh6UUJCeisyWjgxeVdKaXFnc245UktmYk5HMjd5R0hySE00?=
 =?utf-8?B?ZWw0eFBRZWZ6UnlpT1JZazV1ZEh1ekdyaHZKdUNmQitSaStnaHc0OW9CT0VE?=
 =?utf-8?B?TURaQVNhYlhuak1GakRFTitVN3ZJczNITllyT2lOOTk5dGZVMmVOaFpBSHpR?=
 =?utf-8?B?WG10WXgwakgrVy94WlZYZnpiaTNidEM0Q2dmNzlJVmZQVnBwS0h5Zmw5dnNE?=
 =?utf-8?B?SFJkSlE1bEhKdWdJcUViOHNtT3JVOHkvNVIrKzZJeWJhdmVKelNSbDU5N0E0?=
 =?utf-8?B?V2xteVMzbEkrZVY5QTZnTkxDV3lGcUtJci9xUkRiSFd4MCsvVHlVZTFETjVW?=
 =?utf-8?B?M21HdDgzUDF4aXBIZktXWmJSL01xL1hnaDIxZ213NmY4WGFnek9zRFZTbVA4?=
 =?utf-8?B?Zk9mdm1peCtyVjc4aW5uc3d2b1RLNlNkZEFuU2lKOGthVmhGcGNYcG9lV0ho?=
 =?utf-8?B?YVE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	FIWsi3dX8ISnGUtYTLxp6ePEhUTMjaRYV4xQOzU9DwJRVekUdDD484bUfUITGxjs9MvOJkMr8uPyVuf9uW5o8cY6lKb//KAMT9HZoOwALlXxigJem2NLDWW/SkWyurvmD97xPCgOrqnSLuRgEgwEAPoQMb+QEgqumefO5l/r/1vX0CFWps8YuiRDvfIHttjmb6W8Dp897nOI5poPZWvXAtyTKYBXXYIP38VesCEWaYE9QCkO9h8RmOyE/mtXIxUzS4+wtGzmJWLaU/1f7MNRtl7sRw9W5XpjtoQubFa1IgF8BgLQzSTV0tCIBUcw9hIcWIwkPnqjp19cRAemJAx/gnYHmI9arHS5L0hbM0w1FO4V70KeRzSJziIQfdE+efaSQ6MkPwREEs1c+5r7qwVtXO+R6/pTrTOQnFoyyjl15ump6x0pQ1Q+TiK15FymUw3F2yEhH5Pf+L4Oj8sKugMBQyKAzuX1czzKsl5kFirqpfPk8n82p7GlyC5kn0KfAKC+bqObyo4xPPiIjBtLlucRcc8rg01Zcym0uH8WHt/2ErOhNBnU0cbikIX65+PL5uIXjknJgqSVYs0I9Iz4ccyx+yqJLfd/EfbCbUYIE/4nF5GQOqHO++P+YI5pj3G6DxZkaLystOXN6qGHndlHo3CEzIpcDAP2IxhXs+0AzmvLoD1Z1NifiGUPmQuQD/1edOw+GGgyQTkFpkG2tYfwItRAhn/isWk8pUVXI5th6Ze1cJasxSq3JirWMqMh5EnsCjcLN4YMs5WB/crtEuziD4TI/VGa7fbilBZ9eXOkvHQ0M3Um57qrss5nvuP/KsFs4Kf4Nx4TpVii5SJOzp3QPebbFQcrf0tjukCzNzbpp++ib1dBzJo/s+/vZ6/0ymt9rTFK
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 55a4e31f-6cb2-4f74-caca-08dbc0138d73
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 11:10:41.5765
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 7b5vObyUd4KVOQITXPCYcUAtScpvgqsCY4cFPFwIlBpBwHm2WIAmRHXU4t6anF/rdcd1KKUDFxSpKWBEdV0oeg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB7105

On Thu, Sep 28, 2023 at 12:14:17PM +0200, Jan Beulich wrote:
> On 28.09.2023 12:04, Roger Pau Monné wrote:
> > On Thu, Sep 28, 2023 at 09:16:48AM +0200, Jan Beulich wrote:
> >> The registration by virtual/linear address has downsides: At least on
> >> x86 the access is expensive for HVM/PVH domains. Furthermore for 64-bit
> >> PV domains the areas are inaccessible (and hence cannot be updated by
> >> Xen) when in guest-user mode, and for HVM guests they may be
> >> inaccessible when Meltdown mitigations are in place. (There are yet
> >> more issues.)
> >>
> >> In preparation of the introduction of new vCPU operations allowing to
> >> register the respective areas (one of the two is x86-specific) by
> >> guest-physical address, flesh out the map/unmap functions.
> >>
> >> Noteworthy differences from map_vcpu_info():
> >> - areas can be registered more than once (and de-registered),
> >> - remote vCPU-s are paused rather than checked for being down (which in
> >>   principle can change right after the check),
> >> - the domain lock is taken for a much smaller region.
> >>
> >> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> > 
> > Acked-by: Roger Pau Monné <roger.pau@citrix.com>
> 
> Thanks, but to be clear: Formally this doesn't help this patch make any
> progress, aiui. I'll still need an A-b by a REST maintainer then. An R-b
> from you would be different in this regard.

I see.

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 11:11:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 11:11:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609508.948620 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlovB-0000lB-CH; Thu, 28 Sep 2023 11:11:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609508.948620; Thu, 28 Sep 2023 11:11:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlovB-0000l4-8w; Thu, 28 Sep 2023 11:11:05 +0000
Received: by outflank-mailman (input) for mailman id 609508;
 Thu, 28 Sep 2023 11:11:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QRba=FM=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qlovA-0000R0-O2
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 11:11:04 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b6333c2e-5def-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 13:11:03 +0200 (CEST)
Received: from [192.168.1.9] (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id 645694EE0739;
 Thu, 28 Sep 2023 13:11:02 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b6333c2e-5def-11ee-9b0d-b553b5be7939
Message-ID: <0d75770b-cb95-434b-b3fe-32431c2e1b15@bugseng.com>
Date: Thu, 28 Sep 2023 13:11:01 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v6 2/7] x86/hvm: address violations of MISRA C:2012
 Rule 7.2
To: Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
 <1231f5eeebf6f2e30b91780e92dc4d6015cefdb7.1694532795.git.simone.ballarin@bugseng.com>
 <40606e79-65b4-f344-1d4f-19c8946a67e2@suse.com>
Content-Language: en-US
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <40606e79-65b4-f344-1d4f-19c8946a67e2@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 13/09/23 11:44, Jan Beulich wrote:
> On 12.09.2023 17:38, Simone Ballarin wrote:
>> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
>> headline states:
>> "A 'u' or 'U' suffix shall be applied to all integer constants
>> that are represented in an unsigned type".
>>
>> Add the 'U' suffix to integers literals with unsigned type.
>>
>> For the sake of uniformity, the following change is made:
>> - add 'U' suffixes to 'mask16' in 'stdvga.c'
>>
>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
> 
> Comparing with v5 - are the two tags in the correct order? And is there
> a From: Gianluca missing now? Apart from that I'm now okay with the
> changes presented here.
> 
> Jan
> 

The commit is new and it has been obtained splitting a previous commit 
made by Luparini. Currently Luparini is not working on that, for this 
reason I'm the author of the new commit.

I thought that the first signed-off tag should be the commit author, 
this is the reason why I've changed the order.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 11:24:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 11:24:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609518.948630 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlp8S-0004Jf-G1; Thu, 28 Sep 2023 11:24:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609518.948630; Thu, 28 Sep 2023 11:24:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlp8S-0004JY-CD; Thu, 28 Sep 2023 11:24:48 +0000
Received: by outflank-mailman (input) for mailman id 609518;
 Thu, 28 Sep 2023 11:24:47 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJIK=FM=citrix.com=prvs=6283bbd10=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlp8R-0004JS-Dp
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 11:24:47 +0000
Received: from esa2.hc3370-68.iphmx.com (esa2.hc3370-68.iphmx.com
 [216.71.145.153]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 9f1bdc20-5df1-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 13:24:45 +0200 (CEST)
Received: from mail-mw2nam10lp2108.outbound.protection.outlook.com (HELO
 NAM10-MW2-obe.outbound.protection.outlook.com) ([104.47.55.108])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 28 Sep 2023 07:24:42 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SJ0PR03MB6256.namprd03.prod.outlook.com (2603:10b6:a03:303::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 28 Sep
 2023 11:24:38 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Thu, 28 Sep 2023
 11:24:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9f1bdc20-5df1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695900284;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=4GMBvUHcjS0yrLicBqUm/d84Gjb1TM7PxO/V3P1aZhg=;
  b=AMJLhgRcbk4h1brIdygKlYu9lNkHDfnVaChvyv/FuHh+fAfzdjdeLf6A
   p+il9k/htXS0NbF1wBvrGBdiVmBsOHVAj0mx8mLRKjxSe5IhgMXeJkiV/
   uQ5+PCZEflPF2FfszV2ElCtRzSbOdlwAKVxTzLEqPs319/GepW4dA6KlT
   E=;
X-CSE-ConnectionGUID: 1rbSC6gnSCOx1qghDwlkww==
X-CSE-MsgGUID: RQQKcMwzTq6l95YB08IncA==
X-IronPort-RemoteIP: 104.47.55.108
X-IronPort-MID: 123915832
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:Rd4BWaAlAnaRkxVW/8ziw5YqxClBgxIJ4kV8jS/XYbTApDsghjBWy
 WsZC23TbP+IMzPxKNBwbNu19EJSuMfQx9ZjQQY4rX1jcSlH+JHPbTi7wuUcHAvJd5GeExg3h
 yk6QoOdRCzhZiaE/n9BCpC48D8kk/nOH+KgYAL9EngZbRd+Tys8gg5Ulec8g4p56fC0GArIs
 t7pyyHlEAbNNwVcbCRMsMpvlDs15K6p4GJC7gRnDRx2lAS2e0c9Xcp3yZ6ZdxMUcqEMdsamS
 uDKyq2O/2+x13/B3fv8z94X2mVTKlLjFVDmZkh+AsBOsTAbzsAG6Y4pNeJ0VKtio27hc+ada
 jl6ncfYpQ8BZsUgkQmGOvVSO3kW0aZuoNcrLZUj2CA6IoKvn3bEmp1T4E8K0YIwo/x9OkoQ+
 vojAxcdNwmMh86pxLGkVbw57igjBJGD0II3nFhFlGmcKMl8BJfJTuPN+MNS2yo2ioZWB/HCa
 sEFaD1pKhPdfxlIPVRRA5U79AuqriCnL3sE9xTI+Oxuuzi7IA9ZidABNPLPfdOHX4NNl1uwr
 WPa5WXpRBodMbRzzBLcqCn937KfxnmTtIQ6LoSB1fVPn0+v3zIXWUAnfwPrgP+yoxvrMz5YA
 wlOksY0loAw/kG2Stj2XzWjvWWJ+BUbXrJ4A+A8rQ2A1KfQywKYHXQfCC5MbsQ8s807TiBs0
 UWG9/vrGDhuvbu9WX+bsLCOoluaIjMJJGUPYSsFSwot4NT5pow3yBXVQb5LD6qdntDzXzbqz
 FiisCE7jq47kc0P2qO07F3DxTmro/D0ohUd4wzWWieg8Vl/bYv8P4iwswGDvbBHMZqTSUSHs
 D4cgc+C4esSDJaL0iuQXOEKG7Lv7PGAWNHBvWNS81Aa32zF0xaekUp4ulmS+G8B3h44RALU
IronPort-HdrOrdr: A9a23:b5QSxqC21V2gLGTlHemQ55DYdb4zR+YMi2TDsHoBMCC9E/bo8f
 xG+c5x6faaslkssR0b9+xoW5PwIk80l6QV3WB5B97LNmSLhILCFuFfBOXZslndMhy72ulB1b
 pxN4hSYeeAamSSVPyKgjVQxexQpeW6zA==
X-Talos-CUID: =?us-ascii?q?9a23=3A7ZfcPWpZ0o6Gy9Geifg6F1jmUZk/eEb2knjWGGS?=
 =?us-ascii?q?fGT9wR725VluT57wxxg=3D=3D?=
X-Talos-MUID: 9a23:j1a4wgkc4N4pmVoSfifJdnpYDf5L6IGxGnwUz5FX5viubXxRPTy02WE=
X-IronPort-AV: E=Sophos;i="6.03,183,1694750400"; 
   d="scan'208";a="123915832"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=U9rwbH9ZfQhVeht4qqdc5OtTPBktK2EfIZnePDfL6R8oXo70dSiUz8lRk77hx72xtKvyDfMdT75DxtbTnraGoWP1qnhxRY/Mb/dERpCcJOMNvXmUz2zKO6I+ydFrq/zTUtulEbhgfz6ts29aYXqpIehIf+5ndpoEk9V7Nc0OUue4mdQP8QhUFbzw8yWSYoE9xWdMD8zApE9wI5FzKKCCa/8Bg9qKckSVUc1Sf8lj4QdMU9U9qD3lzGec7N0S+Wt/pg1uQJ8A+ltgjXvgrrF5xUvVrdFdvoP31Xi5NlJ2OltphywX590DXNSVUSNCwXb1T1p5IV7KH2Zn2Jc5bapplQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rIyDJ3eRzRBEP4lF+DKyXWjmFWrVuwlBaH/GUuCd39U=;
 b=dkUrRrgUmv/NNgiNBnHcgpAWRmvHgeU23LvFVgNNMz9NTr0JBeASbMu63TK1j36it3oikfB4DBH5EYHBKWPyfKBxyoQRWLW0iFgZCAn/X8mNZJ+YfkSWvkYZ2LAaX4M3X+fK+MNuaJD/6ycMbSr4hT00eqzqbLuQmsu2u2N598Q2eiL4z87oRt5IbuDGS2Csa4A62UZaVRWn/oeSGPoBPvy4N4U4Lx414HKdhKAyxqJBmygzFIEQTqEnW4DugUt/oaSbxxUwRXac7rNXvhv7ehp6lLo1cbcgw+/GPkljfZBzWWXzKecpJ6E8AAAY6KK08Chguf5i2nAnIukxKlYoDA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rIyDJ3eRzRBEP4lF+DKyXWjmFWrVuwlBaH/GUuCd39U=;
 b=raO0MQaf4SQoghS0lbsl6NUpMMvOeXFU2mB5yQM5WDYYGHr0LlEzx5cCJhDvJ2UlPw1KHC6DiD5iclCtuXr+yPTIce6/jxomIKyvimg0Pnz0r1wKQIL1d9gSP/5tVqvdKAOuJT03iXImpWcK7SYfbkTNlJR69yi5JeMp1rxYkkM=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 28 Sep 2023 13:24:31 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Tamas K Lengyel <tamas@tklengyel.com>
Subject: Re: [PATCH v3 8/8] common: convert vCPU info area registration
Message-ID: <ZRVib9rVoHZCxTLx@MacBookPdeRoger>
References: <472f8314-9ad7-523a-32dc-d5c2138c2c8c@suse.com>
 <ada41793-629b-3864-c2fc-412bd8d0047d@suse.com>
 <ZRU4QQcFL5Le5cFz@MacBookPdeRoger>
 <c82494b6-d6c9-8252-4eac-5c50fdf7e477@suse.com>
 <ZRVSOi-nPTagCWq9@MacBookPdeRoger>
 <cc175a33-0e04-4731-3bc2-ed15eb62525e@suse.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <cc175a33-0e04-4731-3bc2-ed15eb62525e@suse.com>
X-ClientProxiedBy: LO3P123CA0023.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:388::16) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SJ0PR03MB6256:EE_
X-MS-Office365-Filtering-Correlation-Id: 1449ecc4-8396-47b5-4f01-08dbc0157fe1
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	jjO7wziFsBDFUK3cUUsXDdd2pasymAtsx2Nrkqy1gAnmGitZfPyd/4n/paHhCXc98cPUbImvkC9oDaqvSKbMiBOEa+pgVNIvrTJ4vW11hEItZYIZnfC68n6xb8ghc2BtIcZHFc8/tAkaXhwGRCkb6C+hV2qIGgBDaaUZ54UZUbJL7CGIlUgM+L7gqOeE0+62Z504RKWojy68DpNmizmLeZ4pQxHvo6ns+4F2Yk3BAAcHVlbAGoKYT4hIzKg0H9cpvkvlVO8jPc1ptVOf5QKO8oP49uu1OpdyhOOZKjUZr9xMfr7SoUTpOWNWW5tGIw3j6Qyyd5axji3cEWQGazpHLH9yqe7JUlwUSe34Mu64oIjCQxCKo4V09Y6P64hGfJoUAoIJLYEoEX9WZ8+3rw9D9zV6fXhR7nqpac6SPYZCS/+m6r/j+03MnOgDmwdEDhIhk6uXiVqJvMYNAPOqf/Y8eo5sNso+NWhJ3CKVwRD+iJOASOPfl/isvM/g2Gjqb+UR5daXh2PeCVWZvUvz4U5mp1XxTSMrO01ar5+O2vHUDPFgFXiTpWWQHyJQXsAJlryh
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(136003)(39860400002)(396003)(376002)(346002)(366004)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(316002)(6916009)(66556008)(66476007)(54906003)(66946007)(478600001)(38100700002)(6666004)(6486002)(2906002)(33716001)(85182001)(86362001)(41300700001)(5660300002)(8936002)(4326008)(8676002)(26005)(83380400001)(6506007)(6512007)(9686003)(53546011)(82960400001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WklRRjUwQlVneStaWkFMVENrRU5sZEtTN2k1VXRuUFhISUE1QmNaQVJkUkt4?=
 =?utf-8?B?ejJBaHFTNVgvaHlRMnhtL1Q5NkJaVTNRVWNiNVkvMUdFVFZTcDFaV1pOLzcy?=
 =?utf-8?B?RVd5UEVZMmtQVE9iTFBmcjRyZzMxNTE5ZU5YSmpUbVVFbzV4OXVCTFZnUjFB?=
 =?utf-8?B?akN2T2NLL2I0WithMHFHd1ovWUFGK1YwY1NOT28rckpHd091bU1aY3l2emNB?=
 =?utf-8?B?bUwzREtQaG1tK0JCMlZXTTJVbTY5SFNjTlNNbUtVaDJRaVBlQVVxZmlLa3lY?=
 =?utf-8?B?RXFQUlZRd3lTc2crVDdOTTh5S0pEbWJPcUNTQlN6S2xLVmplbVRHczk2aVhZ?=
 =?utf-8?B?OXZCQlNwRmNDaTBXZGMrMzkvVkFPNk1WL1JOMHJTcXFJVkh2RHlickQ5OEdn?=
 =?utf-8?B?R241bVlwZnRxVkc4NXMwd2l0TkgraWJwRGdqeW84SGVmZ0s3cHRyTnNwTVI5?=
 =?utf-8?B?YTRrdHdFRTNYYVh3cHF0WXR1QWloTlhCZC9oUG9ONWVJeDZySmZWTXM2T0lK?=
 =?utf-8?B?N3ZhR0VrNlViSTcxTnpQWnEzTUZvUVBXTHo1TTkyb3FmMWcyWHJudHJ4c2JK?=
 =?utf-8?B?TVpqYmZjMzNneTN2dFN4VXkzbndrOHgxdCtqYkd4K0FiMGVFNkZ2YlkwNUdC?=
 =?utf-8?B?THhQdEx1VHhaS3hOT1FVSXN2dFRneVdKVThrVll4V0RQWWVqMW5NenhwdjJr?=
 =?utf-8?B?T2pFbDl6MnN3UkZRNTJ2Z1lpRmVnM01uQVNrb0h2TThtK1JUcUR2UHZSL21X?=
 =?utf-8?B?TzFnQ3psZE5vbjhtQU1CdFUwRjE5ekU0RElwK21qWDdGNGNlWlRLaGpRNVdC?=
 =?utf-8?B?QVVtTGs0M1N1VDRhTElDbmN4bGJ6eUFpNHd1dHNnT05WMHhkY2g1ODhodm43?=
 =?utf-8?B?MXNuRmE4LytzTXpZbVRmeG91MG1aWC9EdGJ1R0RuVS9SZGNGbHFsL0ZBclhh?=
 =?utf-8?B?Q2haOW1IRU80WWQ0dkdPcWp1Y2I3WnkyaWkyVlFQbzUrNE9ML254Y0p1ZUNC?=
 =?utf-8?B?YldxNGZucUJFTHMyWkM1MWxyOVI4RExwV0V0YjB3ZjVZRFE3S2xpTDJNQzhR?=
 =?utf-8?B?dkpoekpkQ1owWFR0TkNQSm9RZk10SzRjU1BPUFR0VFRvTW5tb0tOcjFlOS81?=
 =?utf-8?B?RnJtS3pKek5YMFZGWHBMbDRaK0JMNFZyek8vbE5JV09yb2owUjZLMGlqQ2pt?=
 =?utf-8?B?VzhkUkFYS3N3aDJidC93WS83dGpDdzBBTWNab2xyU0MxU2srQmNFUmZLYjZJ?=
 =?utf-8?B?Rit6THlzbE9GYTJJdUpKUXN5bTYvN2poS1F4NU5DMm1WWUtCWWtCWFZ5bGpo?=
 =?utf-8?B?V1FWYTRodXNNSkNyZWlIWkhya1BhSUNGbVRrQldGanoxNnhTVzdDaWM2UmV4?=
 =?utf-8?B?cng5ektacldFSlVzTXZkU3V1T2xlaG80Ym8zNWZHMjFqTnNRRmMyNC94K3M2?=
 =?utf-8?B?R0xJZkNYdks0cHROV21LL29hZzBqeERwSkI0dFM3QTFMZFdiVDVNdjQyR2p5?=
 =?utf-8?B?RmZxQVZoanJqWGdBSkVKc0t3RVcvSm5BcVVLV3pDYndNd3J5eUFUV0t0eEFO?=
 =?utf-8?B?aTlzdkNabmV1dlR2Szl2T09tcXJPTUtkaHBJcE96TllQMXFWalZpTkZ0MXVR?=
 =?utf-8?B?cUVzNVB4L0h5Mys4cmgxbjFxOGVteU53ZHlVSkN2eFJocTJjbDNPeEQ1SUZO?=
 =?utf-8?B?RUpubllwVGMwUlRFSGR4UE9pekhPdkJ4UTlrdHVRZ0FMODg1ck03M3pCUG1F?=
 =?utf-8?B?NkZNb3RBeEJaRzZrS203WG5zTy85OHZhODdPWnRObjRIVnRRWkZrQU45NHFh?=
 =?utf-8?B?N0R2YVpvTktGZWJqdW9wc2ZGVTVGNnBrNXo1bjEzMDcrYjRreGhObzUrZWhS?=
 =?utf-8?B?RmRGdEVOcVljZnk0cjBVVEpTd2c5aGRKWFYwVHdTaThVWCtyekVzTGhMbnRs?=
 =?utf-8?B?RjR6UHc1L2twUCtnWXFaZm1nWVgyMEdzcEtGRHp5NFNSVTBpSnM5V2ZLY2Js?=
 =?utf-8?B?cThQalBteUpOZ2dKcENsQjJlY0lUZFNBV3dZMDJHbWk4dW90Q2pTUDU4Wmlx?=
 =?utf-8?B?K01YMWR1MzlGbG51MmlNRzUybWpzVnhoQnNyRkwrNVdkWllyQ09LMGtWTmRB?=
 =?utf-8?B?c3JkbmtTUmFjM3RLczJGWXljNThWWnMybDBiRWFaNDhaSVM4ay9KaFlFS2l3?=
 =?utf-8?B?L1E9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	+JpPfOsoppEIA9ZAbiDv2XT8eLRNQC7zlGBx55YSF2HTQ6+jzVP/kMLZrxU/LE1JpUyeXP4Z2ASKKDMB2sx/Sk9oTGu2pakjjJGjE4qCQwekKmO3y460Hq7qBE0WeJamx+90wLEuPgMOJJHx3Id/ylBOfD1cfYWm/45FvP3bGzgAy8Kwvbuwn4buRHfgl4fq91QiHnCSkgBFwmbIlEVhx/ukTl1NlPA+CRkkGuZDarBK1zdQxknWwZ9/Fjif7WCNjlAKwqVZnpu0op/a9NrtyxGhWuWYAngH5SeIf+7+rBAdLhkp3Oo13TcBlg15Z+Fu87nlkum/+xktPPvZuwaBSh03ooup+Z2N3EHeFXLLtf81gh+ykCFld/B6a2TD9BaFrTMxJqmICGBp1XDsO65iz0OlvMGyR8f9sdA/Q0NYdixQzjUuGTyV3LXW3aLf3QgpwW3CgQ+1H9et7Q1B46SeLLs1mrv+vy7qFd3QCeJo/FJMp9MBhEMI0sQ8SAtPaFOiJ8VNCZRMvzW3sSjugjerFQHbBUqFEuhljLl4t9tSQdPNIzbiziQSAkSByTGhIuP7aUr0nHEqM4G3zrTgPW9zQIybzMQzFp4NXtLipgHYvsT1qF64RJVyQ0cNnh7ttTEBndxqJl/Cr18NaET4Vg8pk5InCU8vcAd7ij0/eQD0G4VuxmewP7csS/6DTZRqHjmdm80fqkUBD8WVkaWXH+SnoE8V48JaPKj9KHBCCPKmjXmQI+mZH4i7NCH4uQ8hF4FXwSoodUIVKOaBwj/HiNmWet4S3Hupy4M8XENkaK2Esea7SdsoMR1V3C/Xoj/KCiJ3yGbSgMWPmEywn1GPKo4b7UhFs+zKMP63xQJsmplOl2AqxAYNTvxpHDBcQanVCHuklkLzqYbPKUSjfJeevR81EQ==
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1449ecc4-8396-47b5-4f01-08dbc0157fe1
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 11:24:37.8035
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: aJaS4xq7s/1fu4m1WL73XOz02FNmoccvF6uCryYO1Biz5LRdwkxkzAZ7r41km9GN6dOtbbmFbWnqi+ODUH6wyA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB6256

On Thu, Sep 28, 2023 at 12:35:23PM +0200, Jan Beulich wrote:
> On 28.09.2023 12:15, Roger Pau Monné wrote:
> > On Thu, Sep 28, 2023 at 11:53:36AM +0200, Jan Beulich wrote:
> >> On 28.09.2023 10:24, Roger Pau Monné wrote:
> >>> On Wed, May 03, 2023 at 05:58:30PM +0200, Jan Beulich wrote:
> >>>> @@ -1633,14 +1528,44 @@ int map_guest_area(struct vcpu *v, paddr
> >>>> +    {
> >>>> +        if ( map )
> >>>> +            populate(map, v);
> >>>>  
> >>>> -    SWAP(area->pg, pg);
> >>>> -    SWAP(area->map, map);
> >>>> +        SWAP(area->pg, pg);
> >>>> +        SWAP(area->map, map);
> >>>> +    }
> >>>> +    else
> >>>> +        rc = -EBUSY;
> >>>>  
> >>>>      domain_unlock(d);
> >>>>  
> >>>> +    /* Set pending flags /after/ new vcpu_info pointer was set. */
> >>>> +    if ( area == &v->vcpu_info_area && !rc )
> >>>> +    {
> >>>> +        /*
> >>>> +         * Mark everything as being pending just to make sure nothing gets
> >>>> +         * lost.  The domain will get a spurious event, but it can cope.
> >>>> +         */
> >>>> +#ifdef CONFIG_COMPAT
> >>>> +        if ( !has_32bit_shinfo(d) )
> >>>> +        {
> >>>> +            vcpu_info_t *info = area->map;
> >>>> +
> >>>> +            /* For VCPUOP_register_vcpu_info handling in common_vcpu_op(). */
> >>>> +            BUILD_BUG_ON(sizeof(*info) != sizeof(info->compat));
> >>>> +            write_atomic(&info->native.evtchn_pending_sel, ~0);
> >>>> +        }
> >>>> +        else
> >>>> +#endif
> >>>> +            write_atomic(&vcpu_info(v, evtchn_pending_sel), ~0);
> >>>
> >>> Can't the setting of evtchn_pending_sel be done in
> >>> vcpu_info_populate()?
> >>
> >> No, see the comment ahead of the outer if(). populate() needs calling
> >> ahead of updating the pointer.
> > 
> > I'm afraid I don't obviously see why evtchn_pending_sel can't be set
> > before v->vcpu_info is updated.  It will end up being ~0 anyway,
> > regardless of the order of operations, and we do force an event
> > channel injection.  There's something I'm clearly missing.
> 
> Considering the target vCPU is paused (or is current), doing so may be
> possible (albeit I fear I'm overlooking something). But re-ordering of
> operations shouldn't be done as a side effect of this change; if the
> original ordering constraints were too strict, then imo relaxing should
> either be a separate earlier change, or a separate follow-on one.

Let's do a followup then.  This will also need an RB instead of an
Ack:

Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 11:49:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 11:49:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609526.948639 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlpVf-0000HZ-HB; Thu, 28 Sep 2023 11:48:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609526.948639; Thu, 28 Sep 2023 11:48:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlpVf-0000HS-EY; Thu, 28 Sep 2023 11:48:47 +0000
Received: by outflank-mailman (input) for mailman id 609526;
 Thu, 28 Sep 2023 11:48:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=baK2=FM=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qlpVd-0000HM-PA
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 11:48:45 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20621.outbound.protection.outlook.com
 [2a01:111:f400:7e89::621])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f960d76a-5df4-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 13:48:44 +0200 (CEST)
Received: from DS7PR06CA0005.namprd06.prod.outlook.com (2603:10b6:8:2a::20) by
 SN7PR12MB7274.namprd12.prod.outlook.com (2603:10b6:806:2ad::18) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 11:48:40 +0000
Received: from CY4PEPF0000E9D9.namprd05.prod.outlook.com
 (2603:10b6:8:2a:cafe::41) by DS7PR06CA0005.outlook.office365.com
 (2603:10b6:8:2a::20) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25 via Frontend
 Transport; Thu, 28 Sep 2023 11:48:40 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CY4PEPF0000E9D9.mail.protection.outlook.com (10.167.241.77) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Thu, 28 Sep 2023 11:48:39 +0000
Received: from SATLEXMB08.amd.com (10.181.40.132) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 28 Sep
 2023 06:48:39 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB08.amd.com
 (10.181.40.132) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 28 Sep
 2023 04:48:38 -0700
Received: from xcbayankuma40.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via
 Frontend Transport; Thu, 28 Sep 2023 06:48:37 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f960d76a-5df4-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UMPodM3XbNxASitkFfwSazORM1qeqtnUaLuw8rNyR8eE3VQ1oa+rs1TEkAclIEvwnQR0C1wUBzvZP/4q2NcyP8PuNehbMVfBytJCimXABboIKFkf1jkbOAjKdtVqHffw8BEcSLrHkUYEJH1xaWaOa9D0BXAo1fwBTMs8lA7oidzWGubHjKOVpnu2guJiiR9Vk+h3dDJ0cljcjvvH9d0FBnk6XZQ+YjH7UnM95NnrLX8uaLuZOfKqBhDRIYCjY9ANjM0SCXfr9h3xL3DZeLTSXyocZJ6DsgNK9x8af7jH6ZdQtriJ4xVgQ6rHvBgqlHx/fKEDpGHvBqS+6OKj2lEsDg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=NuvlsZm4EMigaLXq8EkQf3gQOt40eTrodiYgA3KbH5s=;
 b=Z7b49BG9fFhByiHun3muTDtIzT+ZX9JvnQ5CwxksiHV39hIZ2WIs0/XhVSuyhcbv2tnTTDFWlPgnsBnUz60/MRUuty8Xep1Ei9O/lBC2AsQG5A48JWc8Ab0U8CHke3JGCxsGwEBdTMarOMsJRpxTb/OyXZGd4jFvN9kfQsncZmE7/of7D23IaSD2Wkk+pOZFmPaghI56KF1sZwpMQKXyNm/VwrbWnSy2I1hHfo+uy8+bK9zhafs2sVbbUHsvxw2hwXOczN2VNKMsdC9lH8cBgYJgajNEAUa2W3tNUxZTbUxVf/lCPbtotTl4WrcmDRum6v7fk1Yzwqz6Oqg7LjM1vQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=NuvlsZm4EMigaLXq8EkQf3gQOt40eTrodiYgA3KbH5s=;
 b=haYTRsgb6hrPYWOaZVl5vFsys7RTxpfmUNNRp1pszr3HvPzYDliG1+YHAVIgSGjxTCfZdu5BWRplh82gpL5arboFJVDafJbAaK08UVD6TrPCS91ELTwo4TPp0Gyxh26zEFaz27cJGvHISK2sHX28K2os7WavWkCaM7OYfMs1hH0=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <stefano.stabellini@amd.com>, <julien@xen.org>,
	<bertrand.marquis@arm.com>, <Volodymyr_Babchuk@epam.com>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>
Subject: [XEN v1] xen: arm: procinfo.h: Fixed a typo
Date: Thu, 28 Sep 2023 12:48:35 +0100
Message-ID: <20230928114835.2592187-1-ayan.kumar.halder@amd.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D9:EE_|SN7PR12MB7274:EE_
X-MS-Office365-Filtering-Correlation-Id: 0e9ec272-aaee-414f-d53e-08dbc018db87
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	eCxCsNCnrUeZxkDWSTRN/n48mmI1qidBlRMUKre7OVryvWUfJXR/jsS07DLQeJoLcxznhgYqzDR1ELjTdQ3u1pI3gCnOEfUcqTCBEGtFxWGnvR9NdeJBTJ8z4Kl+xbd79inMsR2262JBUqVuMu0R3PvkT3tXCKTuXtKshADQTmVbBUldwRjqgHwFoF49wkdKfCtuM/K7UApHq81yfk8CW6Jj0qcbrTQxobucsah9aGutMO0sQjfUs7Hd5AphM581MkNJ2Z5kJLuMwhfe/ip1v7wBVbz8yvuTulGycz1+bGPY7PkqQZNkpBDf3+95TGj0LBdy8G+E5qIAxJ10ZMO+09V1komeJJQYg/eriQu8Vk6Ies/hL9GPd52wKpl2uWvY4OfYomcDM8KxBKSjQfzwohYzrB+d+IH3Jo4tJXe/ADTtq/DbkmBgBmo9RPDDuZkc9nQFjnMkG4j+6Ymu+YEKYDXXywKPbOP0rD39UCcmloLU8PrqAacOVhLQmcciBe08wB3Icmhktq6FgZM608iI1zQBz+4ZuEkfFu2gPauTiiXFKgoIBi5bxngbqrJxJC8dRcgMQZnM5bVVwkLdtni3C1gZw4KH01JY0epFNz3AWx1CDsOPCvpvpO6SaqIeQ5HzdWAvu9ZhICov/Cr9qS6l+j1ldSefGDl2s7T/8+LcAlSCqgOsSRppUZ0Zlvwj1Cj888QO7zCuQHg+vfRykpvMj2A9oveVCXqnUkXXmrG/9pPFn7evzF/hkMxuCU/wA1QBhGll+FqWc85gel4Vs+tHqQ==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(39860400002)(346002)(396003)(136003)(230922051799003)(64100799003)(1800799009)(82310400011)(186009)(451199024)(40470700004)(36840700001)(46966006)(70586007)(40480700001)(40460700003)(47076005)(356005)(83380400001)(36860700001)(4744005)(82740400003)(81166007)(70206006)(2616005)(26005)(5660300002)(478600001)(1076003)(316002)(8936002)(41300700001)(4326008)(2906002)(336012)(426003)(54906003)(8676002)(6916009)(86362001)(36756003)(103116003)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 11:48:39.6823
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 0e9ec272-aaee-414f-d53e-08dbc018db87
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CY4PEPF0000E9D9.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7274

Change VPCU to VCPU.

Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
---
 xen/arch/arm/include/asm/procinfo.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/arm/include/asm/procinfo.h b/xen/arch/arm/include/asm/procinfo.h
index 02be56e348..8b8dae3dd4 100644
--- a/xen/arch/arm/include/asm/procinfo.h
+++ b/xen/arch/arm/include/asm/procinfo.h
@@ -24,7 +24,7 @@
 #include <xen/sched.h>
 
 struct processor {
-    /* Initialize specific processor register for the new VPCU*/
+    /* Initialize specific processor register for the new VCPU*/
     void (*vcpu_initialise)(struct vcpu *v);
 };
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 11:57:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 11:57:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609529.948650 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlpds-0002Si-BY; Thu, 28 Sep 2023 11:57:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609529.948650; Thu, 28 Sep 2023 11:57:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlpds-0002Sb-8v; Thu, 28 Sep 2023 11:57:16 +0000
Received: by outflank-mailman (input) for mailman id 609529;
 Thu, 28 Sep 2023 11:57:15 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qlpdq-0002SS-Vu
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 11:57:14 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlpdp-00047l-Lo; Thu, 28 Sep 2023 11:57:13 +0000
Received: from [15.248.3.2] (helo=[10.24.67.34])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlpdp-0003Am-DT; Thu, 28 Sep 2023 11:57:13 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=dqCjwjtHEpYaOq6H0DOZDkxxn7AhxPtK/RcyzrrmEYU=; b=CN88CP7fTEsytQWjjYOJF2m6al
	dN7+Eq8hewAp326wBgMH+fmwQFOVTfIdITqxP7//CYxbe+6L9i1uLQVVCND5ynOhgmrM2ud1JoObf
	CQLyyClPcLkMny0auYvjmRCF3XXDsL7xAn3NVmLJv2aF4kjTMX0V1Wx5yope2d5TdmJM=;
Message-ID: <42527c3c-2c47-4feb-ae96-37c6ac9547a8@xen.org>
Date: Thu, 28 Sep 2023 12:57:11 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN v1] xen: arm: procinfo.h: Fixed a typo
Content-Language: en-GB
To: Ayan Kumar Halder <ayan.kumar.halder@amd.com>,
 xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, stefano.stabellini@amd.com,
 bertrand.marquis@arm.com, Volodymyr_Babchuk@epam.com
References: <20230928114835.2592187-1-ayan.kumar.halder@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230928114835.2592187-1-ayan.kumar.halder@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit


Hi Ayan,

On 28/09/2023 12:48, Ayan Kumar Halder wrote:
> Change VPCU to VCPU.
> 
> Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
> ---
>   xen/arch/arm/include/asm/procinfo.h | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/arch/arm/include/asm/procinfo.h b/xen/arch/arm/include/asm/procinfo.h
> index 02be56e348..8b8dae3dd4 100644
> --- a/xen/arch/arm/include/asm/procinfo.h
> +++ b/xen/arch/arm/include/asm/procinfo.h
> @@ -24,7 +24,7 @@
>   #include <xen/sched.h>
>   
>   struct processor {
> -    /* Initialize specific processor register for the new VPCU*/
> +    /* Initialize specific processor register for the new VCPU*/

As you are modifying the line, can you also add the missing space before */?

I have also a slight preference for using vCPU over VCPU.

With that addressed:

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 12:01:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 12:01:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609547.948664 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlphi-00046O-8h; Thu, 28 Sep 2023 12:01:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609547.948664; Thu, 28 Sep 2023 12:01:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlphi-00046H-4m; Thu, 28 Sep 2023 12:01:14 +0000
Received: by outflank-mailman (input) for mailman id 609547;
 Thu, 28 Sep 2023 12:01:12 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlphg-00043T-N1
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 12:01:12 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0601.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b66c7f39-5df6-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 14:01:10 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB9703.eurprd04.prod.outlook.com (2603:10a6:10:302::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 12:01:05 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 12:01:04 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b66c7f39-5df6-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=HGW4DafNN8JIXKrP2szhRg4u1q8rUhUiTG1teNPh/zMD/VMfmfMpBOr/gqMwxAaVh3ob6KHRAW97XvQCxhlNkuu1pSRg8TyAnevIGmypJD4cuihlK4J9NDoJVo35s2O/rb2nce3QXmK2sNLTwjmK10LTH2HWcdDk8XviteWu2pGN4rjYxvRkq0CxyZW2drjLNgDDTj+rrV3ESHoo2kl+cTLqlI4aU6lp+hSHwEFJ0eJ561HOes8rYEflXwZ2jv0vrskAKbfdwGpgvPi+9XCTHvtzP1IPwSTu32RBpnuFYoCDoJZBLUpdmMjkm0/oNNYDxS++pVYJmNmQUo+4XZfNMw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=6zyyKID/KslGTjHmp0B6uVL1Gi7ynLQi6C0qkbW50DQ=;
 b=VrO0GeG6qaKR2dRHNVZJk9eLtzD0aOZMByn21ma5OtoSJud3NhDXHhcWjhWzlDBh1r7whdYAazDdV5fw+XQcIJuKgocrYnNdrXpHAauR8v63m77RbcQOMNUWcyOwER6QnTjkzQBEqBYW6oIfVV7XSh9pc0aiMp1ykIxHWzlu08czRgBOEA7UIfBq1zNMcKaRsmdV8rlVVJ72VApV+WvJGmhVmNn+y7mUI/EgKJQ8ddP3RjzYl78XnsYVq5OV5ruKfCkUJRugFcieJqFV+ZP4w4tXY1EjDbzZyM3ArlJFFGO+5hzpRXX80m2MY8cbLSgHnTxVPC2vVa/O3OV6eRabFA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=6zyyKID/KslGTjHmp0B6uVL1Gi7ynLQi6C0qkbW50DQ=;
 b=x1N/yPKl2VOhNJwaGWoPCOw+wI1iBz9z2ftXEzt9jqIUGNegXz811htYPUY/a+CPOV4YdVG4lv3YN3tcigVh+qTenYiXx5UwqNbUqhSHUv0AjebmLVztCYiMTIYOIr7bYz7ejCZD4vE6ToXZsNDBSanhXQXHZ3qnJsn/RT221Cr3dOAqHeYVQpRq2FUQaR9mhb6ZntGxn+kBg6rzPjHKeLQUqyrO8fiJ5kwIU5RdXChNgNNsPV7D1TCc+d19QpWSSl3JUixnxo0Ad70L+ABXyPxNTBb0qPQGnZVvyDlM9oDCuWMt8wqzA7b5kFFpVOdkKr24DlH7y332cpYK6Wkp4w==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <50bfcf5e-d232-08e7-ec8b-38682359035d@suse.com>
Date: Thu, 28 Sep 2023 14:01:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH v6 2/7] x86/hvm: address violations of MISRA C:2012
 Rule 7.2
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
 <1231f5eeebf6f2e30b91780e92dc4d6015cefdb7.1694532795.git.simone.ballarin@bugseng.com>
 <40606e79-65b4-f344-1d4f-19c8946a67e2@suse.com>
 <0d75770b-cb95-434b-b3fe-32431c2e1b15@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <0d75770b-cb95-434b-b3fe-32431c2e1b15@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0095.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9b::17) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB9703:EE_
X-MS-Office365-Filtering-Correlation-Id: 6dd2afd1-0cdc-4265-1ae6-08dbc01a96fe
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	y5XxZUU/8JG1triy7VJw5u/E4MgMOLu3nMatC3LQVegf76jzHx3Jti+9TG2BDBrXtA0Qxw8Sz/B1o3RbHg0JmjlAfgXXyO/jCmxyB5oFE0KNptfdXKTDp+ZAbCz/G5WBmInxF8K1ZZqdZEoqct370YCK9OBlWVnPvlEx4ovQXiNcSS2gyFQKPa2Y6akBQoe99JuMnEqg2OHN5OvxeQwEL7whiF/GlNz04Sxt1IAVmjYbmzXRqAQe+JL+xOdsz1YeVUWbSfUcQ+rp1TSHkvoJAixhoe15Ikj7BRBWMwiJYAwLCUY3x4c2hzSMAOGkq/ocE21FODpKWZJql2Np17+8rDNCFjR8bBdDpbZeJmmnXVufHyDTgTqHEtP0WUFkuCd3yIKS1B6FSnh6YvqU0ChYFYlgyD2cLWCsDXMjgCAU+tGD9u/3yDr9NnecfHfQbWqNggiRPokzakvsbHW5QLO9DFbqjLNl5V9xMCKHOkLmIBnc55z1YwZPta5xw8RTDpCAbh1FTpghfyrHIDgHOhnjXdrRWXoN1ZiN+LRChSkywDXKor7K4oDoHn9YvUjEcAbCqTZ6PvDDt+PnrKXOo9D/kSDYCHGEOqRUXRB1xxzEXJM4zE42v4zeXCyzQlJuxfvqfc1ch92a3iDNrXPZ85Gx5A==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(376002)(136003)(39860400002)(396003)(346002)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(83380400001)(316002)(31696002)(86362001)(26005)(2616005)(41300700001)(8936002)(6666004)(4326008)(2906002)(66556008)(6916009)(36756003)(5660300002)(478600001)(66946007)(54906003)(66476007)(38100700002)(53546011)(6512007)(8676002)(6506007)(6486002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?OHlEcjlsa0JZZlJicngxeGxSWk9Ua21mZWRqakUrODM3Lzk1ZHhEWFI2T3k1?=
 =?utf-8?B?SzhieXdkN1Zsb09UMkxHYWs0LzRSVzJTc2RkU0NINmp4VTNNU0lRTmRVV3Jj?=
 =?utf-8?B?SDZGT2VlRHZCYUhxMlNvY0VnTXdxT05EcGNUdG9Kb21rYkpXYzUvMnh0SlBi?=
 =?utf-8?B?Uk1kTHBpeVhTNjFuS3Rpb0UrUzdtWDJ2WUVwaHQ1N0xGcWoxaURBWHgwTDBB?=
 =?utf-8?B?Z0N3Ylk4aXhBUjcyVkxDSjVVSER0STNpWWh0N0lmd2pJWlBCRXpPdWhjQWF4?=
 =?utf-8?B?d2RVdmZwOTFvTzhrbksvUWtwQzZMZWlhOVBJQUF6Z2JGVkliS2VSWjR4YVJt?=
 =?utf-8?B?NGRWNTh5NTlPRGNaaFNBUEhIZEdBWDNmd2UrMytNbHZrNzd3V2dlZ0RSMGlR?=
 =?utf-8?B?UWFRRW9mQWFheWtWOGUvbUZFY3RiNnB2SXNWN1pyeEE3cldJODZyUzdHeVZr?=
 =?utf-8?B?SG1aQkZ2T3AwWW91eG1rNytjcU9pRzlvTFFzR0xsRnN2WFdWWStoKzFSSlQ0?=
 =?utf-8?B?VzNjUnJhblNubFZJOTRMQWNwZFRCNFNaYjZBRTJ0bXVuamVrSFJBdkRtdlJG?=
 =?utf-8?B?emp0Y2dEQ2FDSVZja0oxZGx1ZmZEUlFBd3JBRDNwRGRjckppOWorVmxaYnM2?=
 =?utf-8?B?ZEFwVkRQN1pub2hvK3ZVb0loR1dZTk9Vejk4SU92Tis0SEZqWkRHaE81YXBR?=
 =?utf-8?B?RTJKSzRuWURLOTFKaDV6U3hkTk05a1UwWkNBSWViZ1M5NlRXUkZoQmNMczlN?=
 =?utf-8?B?ODBpdEphNk5aTXdMSmZ3bnE2VjkyTENVQzU2bFF5NWZ2UThXRUQweWJkR2Nx?=
 =?utf-8?B?MHJFTzNMYVIrLytzT2ZEYW1PS292SVBvajRmVG9QZjZQK1dKNHI4RUozV0xL?=
 =?utf-8?B?bjFxUG1PZ0U5bEF3cHRGRjFYSHZHc0tNeDh0YkwwWjJ0QnJIT1h2dDZBaHpG?=
 =?utf-8?B?VlFVL3E3dmlMblRQUEhLRUx0UjRXcTExWTZVbzRJSjkva0VkenBBNEJwSzNL?=
 =?utf-8?B?Zmp5anM3dCtZa1FVYTkyYk5qaHVvWERDd3ZKQi9SWU8vMzRhY3VxM3FDOFFQ?=
 =?utf-8?B?Z3pDMTBoVk1HelZRb056SVEwMXZuME04Wng1WkR0QWxxandXTGR6TlhwSXB2?=
 =?utf-8?B?ejdPWVRKa0lId3Vrano1S243SWNpUFpGQXBRZGgxVVBHSUJENTgySnJKUnhR?=
 =?utf-8?B?bFc2THFudXM5c0RzT2NUNXpaRUNBWkpCNGMzNnRpVEMxZXhpQnprbStqVCtS?=
 =?utf-8?B?WFRseGhxajR5OE5ieXFtWThjUXZyd3M4OXBnd0VSazFMTXA1T1ZFbmVPMzAz?=
 =?utf-8?B?ZHlNWGJsWXd0VlJiVDdXdU9uOUxIVHR0cVozNDFQdzMxM2lCREVlSkEwR2Fi?=
 =?utf-8?B?cTJWZVNPL2hOcVhQOU9QbUpJNHlyZEpoUE90STZqWEh5cTRUaVczN0xYcDlN?=
 =?utf-8?B?REI5Wks4b01IeTk5TzlmV2ZNS1ZaZzhYTHE5WlgwT3VhL1ZmdWliRUJmY2J1?=
 =?utf-8?B?WndaVXJiWFByNnNhUHd4amZxSGN1MVJwSVFnc1lKTUVaTkl5S2hPTHplWjdo?=
 =?utf-8?B?UUJ6NTBRRkJtWFlKSzl0L1g3R3VhK1NFWHdab2Q4aVhVRmQ2bVJCeWZ2d2h3?=
 =?utf-8?B?K05QWVVZaGxSMnJYLzB4QU9vL0xLMEhseUM0T0ZPMm1MNUtrVnZnTjdjeFl5?=
 =?utf-8?B?YVZJK0dpemZmY2lEN09qNVdEeUUwZWx5Lyt3WnpVRGFyMlAwQlBjWCtYcUt3?=
 =?utf-8?B?UCt2Z0NiUEs5YUpYQTB3Y0ZXN2J6YTl5RmRCS0JRblkxbTliY2t3NGRYa2Fn?=
 =?utf-8?B?Q1dKRFhUcFA4WXd6YmZlYkg3MFRmbytSRDBsUUUyajBWKzg1bWdUTGFpbm1E?=
 =?utf-8?B?dXRFeFVDRTJqaFRrVFhzZTAxT005VVJDMEFBSldZKzFQcEh2T256dCtJcXBY?=
 =?utf-8?B?WGc2dUVwYTR1bmJ6aGkvREVMMk5uRVh3TzFPSzMvSlM4TUZRV3NUc1ZrREVW?=
 =?utf-8?B?UGpNYnFDb0FLYnIyNnV2eXZNR3J3YUZ5RUdOK3o0V28ycEZLRHBkSFNvaG1q?=
 =?utf-8?B?dDhNYjlEMXhPYVNvVFdlNkxuMml3VDZXZ3VWbGlNM0RUYzFxdUExdnFRRERn?=
 =?utf-8?Q?GORMKsGg4ZD6NqUaT276phx3E?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6dd2afd1-0cdc-4265-1ae6-08dbc01a96fe
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 12:01:03.9377
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: ruZTWTgJJNE4qU2uSDohy0yXPslblxQahPcUlBiRxJdAKWW3cd+CPz74326NSykOKVJqSgNcFdQovhktC3k+uQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB9703

On 28.09.2023 13:11, Simone Ballarin wrote:
> On 13/09/23 11:44, Jan Beulich wrote:
>> On 12.09.2023 17:38, Simone Ballarin wrote:
>>> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
>>> headline states:
>>> "A 'u' or 'U' suffix shall be applied to all integer constants
>>> that are represented in an unsigned type".
>>>
>>> Add the 'U' suffix to integers literals with unsigned type.
>>>
>>> For the sake of uniformity, the following change is made:
>>> - add 'U' suffixes to 'mask16' in 'stdvga.c'
>>>
>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
>>
>> Comparing with v5 - are the two tags in the correct order? And is there
>> a From: Gianluca missing now? Apart from that I'm now okay with the
>> changes presented here.
> 
> The commit is new and it has been obtained splitting a previous commit 
> made by Luparini. Currently Luparini is not working on that, for this 
> reason I'm the author of the new commit.
> 
> I thought that the first signed-off tag should be the commit author, 
> this is the reason why I've changed the order.

If this patch is a the result of splitting an earlier larger one, then
the question still is who made the (initial part of the) changes that
are now in here. If it was all you, then I don't see why there's a 2nd
SoB. If part came from Gianluca's earlier work, then imo the first SoB
still ought to be his.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 12:02:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 12:02:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609553.948674 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlpiV-0004jM-Gr; Thu, 28 Sep 2023 12:02:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609553.948674; Thu, 28 Sep 2023 12:02:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlpiV-0004jD-Db; Thu, 28 Sep 2023 12:02:03 +0000
Received: by outflank-mailman (input) for mailman id 609553;
 Thu, 28 Sep 2023 12:02:01 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QRba=FM=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qlpiT-0004is-Ub
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 12:02:01 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d415c4b9-5df6-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 14:01:59 +0200 (CEST)
Received: from [192.168.1.9] (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id E74664EE0739;
 Thu, 28 Sep 2023 14:01:58 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d415c4b9-5df6-11ee-9b0d-b553b5be7939
Message-ID: <26488bd1-551e-40f2-a9ac-577df69d5325@bugseng.com>
Date: Thu, 28 Sep 2023 14:01:58 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v6 2/7] x86/hvm: address violations of MISRA C:2012
 Rule 7.2
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694532795.git.simone.ballarin@bugseng.com>
 <1231f5eeebf6f2e30b91780e92dc4d6015cefdb7.1694532795.git.simone.ballarin@bugseng.com>
 <40606e79-65b4-f344-1d4f-19c8946a67e2@suse.com>
 <0d75770b-cb95-434b-b3fe-32431c2e1b15@bugseng.com>
 <50bfcf5e-d232-08e7-ec8b-38682359035d@suse.com>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <50bfcf5e-d232-08e7-ec8b-38682359035d@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 28/09/23 14:01, Jan Beulich wrote:
> On 28.09.2023 13:11, Simone Ballarin wrote:
>> On 13/09/23 11:44, Jan Beulich wrote:
>>> On 12.09.2023 17:38, Simone Ballarin wrote:
>>>> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
>>>> headline states:
>>>> "A 'u' or 'U' suffix shall be applied to all integer constants
>>>> that are represented in an unsigned type".
>>>>
>>>> Add the 'U' suffix to integers literals with unsigned type.
>>>>
>>>> For the sake of uniformity, the following change is made:
>>>> - add 'U' suffixes to 'mask16' in 'stdvga.c'
>>>>
>>>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>>>> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
>>>
>>> Comparing with v5 - are the two tags in the correct order? And is there
>>> a From: Gianluca missing now? Apart from that I'm now okay with the
>>> changes presented here.
>>
>> The commit is new and it has been obtained splitting a previous commit
>> made by Luparini. Currently Luparini is not working on that, for this
>> reason I'm the author of the new commit.
>>
>> I thought that the first signed-off tag should be the commit author,
>> this is the reason why I've changed the order.
> 
> If this patch is a the result of splitting an earlier larger one, then
> the question still is who made the (initial part of the) changes that
> are now in here. If it was all you, then I don't see why there's a 2nd
> SoB. If part came from Gianluca's earlier work, then imo the first SoB
> still ought to be his.
> 
> Jan
> 

Ok.

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 12:08:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 12:08:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609578.948696 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlpok-00061D-8Q; Thu, 28 Sep 2023 12:08:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609578.948696; Thu, 28 Sep 2023 12:08:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlpok-000616-5o; Thu, 28 Sep 2023 12:08:30 +0000
Received: by outflank-mailman (input) for mailman id 609578;
 Thu, 28 Sep 2023 12:08:28 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=baK2=FM=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qlpoi-0005x7-TW
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 12:08:28 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on20628.outbound.protection.outlook.com
 [2a01:111:f400:7e89::628])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id bacb8720-5df7-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 14:08:28 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by SN7PR12MB7202.namprd12.prod.outlook.com (2603:10b6:806:2a9::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 12:08:22 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::5a5a:18dd:4832:75db]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::5a5a:18dd:4832:75db%4]) with mapi id 15.20.6813.027; Thu, 28 Sep 2023
 12:08:22 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bacb8720-5df7-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DIFE6dgB60Rtj5HQozgbre7byYLMQhS0iUDGK4Wk3vlobtHh9XzjYjG3ow41SUyFq9usO2lvYzVY9VPQzR5jOBaOlWI8iHTL94uQ7XT7Zn3KYIWxWNHK0E1M/NjZ94SjtTa2gZbNQkw2aD6dwmXO/QxzouST29dc9u2MVx2ZouqgVVtTHX68cin8KLeApwTSe+uvyUloGolXfqqsRL5v+mln6w2bhVRpCpgXL9I89H/F1weorZSBdAO8/Z80mr4ThKVyIuIyUDYCbi1jECOeMCPhyIGEGbO110v6Ylr3xGuQVWNT24ZDugaMcYWVyzEja06RFv9VXblfyaMvdNYhWg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fe3NYOEuIOZwDAafggleyOdpQk6WXMnGNJeKTzyllKo=;
 b=ZY7HSTNxtkOiF0XCGFo46or9bj8MOJIIfD7nnuXNL5S4CKeceCQrB1AxNt4mL02n1hMBUTUDcl67Sa7he0klg12fyjlw/C8k6aVg2b0Nt9mE959SSu6QU7aVa4RrdB+9XdHWgiHX/SzjMnasTKJAVWqAn7tCmK4Rc4lKeKvvvexZBPSAGtzogxTudgdk7nw083u2vyfOC8/wrZFTIvQ2Biq5ZA4ng+aednbF6HK3ggJKMkQ2ssiM+EBH2m31gP6G3bUSj8U2/FxSOdCkHZmp3T1RyfD9l3FYXT0whBl/qlYEUJzPgGTO1JnJkYla+dWMLbdVjGhsvcN1WyDuPpHpbg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fe3NYOEuIOZwDAafggleyOdpQk6WXMnGNJeKTzyllKo=;
 b=Wybq/a1f4wbJifCANuENARjKJWGaYWIFoRtgLNkezOKCM22TpHwEO83OGxtyK2u1HWBDOjVnfjB2dpI8UVnvd8bbIPtGUgVnQyc7K7Y/BIOjqAtcflSox+aCfzn+axPN4PFewXIrzggUna35yAmejFw28QcVG2hHmZQZeW6cXt0=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <e5f6aa6a-7f9c-fdcd-a5b7-8714c15b0b3f@amd.com>
Date: Thu, 28 Sep 2023 13:08:14 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.1
Subject: Re: [XEN v1] xen: arm: procinfo.h: Fixed a typo
To: Julien Grall <julien@xen.org>,
 Ayan Kumar Halder <ayan.kumar.halder@amd.com>, xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, stefano.stabellini@amd.com,
 bertrand.marquis@arm.com, Volodymyr_Babchuk@epam.com
References: <20230928114835.2592187-1-ayan.kumar.halder@amd.com>
 <42527c3c-2c47-4feb-ae96-37c6ac9547a8@xen.org>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <42527c3c-2c47-4feb-ae96-37c6ac9547a8@xen.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO2P265CA0119.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:c::35) To SN6PR12MB2621.namprd12.prod.outlook.com
 (2603:10b6:805:73::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|SN7PR12MB7202:EE_
X-MS-Office365-Filtering-Correlation-Id: 6b206ec2-855d-47b0-5139-08dbc01b9c46
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	UcBQyeeqW9ZN6yFMYD5PdNKBU5+AnHh31yUbgoeUCCPpPOhEBXCc9XOfszNksDtJw4Y5NwFmyI8qosANqRC+vnCG6SeqjY7ahsaGOjniNjRmLVtAFy8wjiZXNL/PIDDd3UeCH499bpUq0S81h76TkNGk5ZLe7/s2xxnOQW4h+2N036ot2Hi1H5mQH6/xuLyLaDFtvnJG5tDyOmo84CUC3W7ZiP2hGinHkFXMSdxJNSD5WxRdt/FicI8KHhcBnvMmNbchXbax/arkvBp6v7j1yYG/3mQUDVzNWbAXNE4iNXTKDrpZUietlVTGbLcIGQU715P5t3cEwXfdfxuGX4TqeTHVcCjlflFGK2ADRWw1LcvRxoTjqkd7HXAqFtgc9BZNIGOxbhN9XfhS5b20HcEvdSXhXdGc0LUFDOnz2z7YTbyDYHQ3wlHGoOwJR5WlZCggnFmXkmlpmhxux0Ln+76HPmH6dmZaTD2iUYUQeiE0+qAPYPCcb6fTLaIm/hPqVl9g3SXDGk5RumeDaFRTvBYLUhG4E/Xd+3rC9xQfJhnIO4hW9k4WE0x538zlNKEXoJmI4uV8szvJJLVwZGHMp58r9ty/5K1gaDTCYiuLFFBb0I7eaEM4hC2odouHe87/1iuGePn4X+0x10ISt1lUAXGsZA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(230922051799003)(451199024)(186009)(1800799009)(6666004)(26005)(6486002)(508600001)(2616005)(83380400001)(36756003)(31696002)(53546011)(5660300002)(38100700002)(6506007)(6512007)(8676002)(31686004)(2906002)(66556008)(66476007)(66946007)(4326008)(110136005)(8936002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?T1I4Tlk2ZVVLVGV1RTNXNFJpQUIvc2UyazIxVXZubytJNVhZc2h4Y1h6S2J2?=
 =?utf-8?B?am1QZVN5TldLY25uTDB1elF1dS9LRUJ4ZVpxZ1NCMEdPVmpsWW9EWTdNUFAr?=
 =?utf-8?B?aUNwVWUycFM3ak1CZkZUZnRYaWFLMTdJT2V5eDJrS0h0Sm15eDFadGgwNmFl?=
 =?utf-8?B?ZjZVMUdsZEc3YlBMcHNFK3lVS3Z1OFVSVVpUbVpFdSt4a282SllnNXVVb0lx?=
 =?utf-8?B?RUxOMTB5N1FUUmltTmliNzNrSlZJeFRFcW14ZVpaVlY2bnhSTjJBa3ZLMWx1?=
 =?utf-8?B?dmhqL0x3Rk5QWUJwOXdXRUxoN0ZHcXIzY3E0b0Fva3Q2dU9SOTJDaXk3VkN2?=
 =?utf-8?B?M2JUZDNtL2Y4bVZWRDduWkE4cmVaVXV6T0NOT2VUQzU0UWtDbTcwVFRUU1pH?=
 =?utf-8?B?SmM5VTFaMTRJT210UEp2T3VqNUJUTTNjWWhnUkkrcnJTOHZheGloYUNNSTVz?=
 =?utf-8?B?SkJicnZKaFpXTGVKMFZOYSt6cjRpM3dyUHByNThWRXpIVXhrWWp0RisyaEll?=
 =?utf-8?B?SS9relZoTm5YY1g5M2d6eFlnLzlpQy9PN0dwQkRZYUJCMVhHVko2ci83WWpu?=
 =?utf-8?B?OUhWcmpNRGtNT0V2OGRFMWczK204SGwxUVoxUGl5eFB0NytJcDJqejFpenlP?=
 =?utf-8?B?MnF0Skc1QXREams0V2UyRytVekFtMTRJK0lCV01ZQVI2NS8zV1duZHgyZjdJ?=
 =?utf-8?B?OEVMd3liVW9oTEJqUDJhcXlDVlIyU0M1eTc4VnZrZmYzWERmLyswTzc3YTBM?=
 =?utf-8?B?a29PaXNubndjUzZNTzNvMDZuWEI2WDRQY2JuWm1yMWU4cGRnT0M4VFlWMENp?=
 =?utf-8?B?cDdUd0JSdlJMNGhXYlZXT0FsNnB4ZEFZamxibXZsZEZkMGVtaHFTdFVIMkJC?=
 =?utf-8?B?WGVNOW1KME1aS2ZTc1gxazhYeW1yYjNweHl1RHg1cDNMamFHZllwM1pGR0Za?=
 =?utf-8?B?ME9DVjN5Q1BXdFBBODRiOWl2cklNOVZqbXZabHRFeVFFem40ZDY0bkdySDk3?=
 =?utf-8?B?bjNuWHozUXhZQ25NeExpb0NNZW4wUGZ6TVh4c0oySHR4c2xvVmY0MXVVeGc5?=
 =?utf-8?B?TmJ6MWVUSExXajNoczNCeWVRSlViWExBNUt5aDBOK3hIOXNNQlZ3N08rQmE3?=
 =?utf-8?B?Z3J5ZzR6eE96RUJyZTcxVmNneU9McSt2NzlHZFZDZlBLVFBXRVhybDJ2OUJE?=
 =?utf-8?B?VjFCRldjNjZndWJqckh2d0FXTEtlYUVwVVlwK0wwUG9CWk43aGJXNHZWYWpB?=
 =?utf-8?B?UElZVCtlSFFta05pbmkwSzlONDBFTnREZ3k3eGJyTGlxSnM5eHBBa0N5Q3lU?=
 =?utf-8?B?Q0JHL1RwTDlrN1pyU1ZTdms1UjkyYm5yRW5McFJpeXZacHBnRGxtc211WkdQ?=
 =?utf-8?B?L0pUOUFPdTZKK2tjZm5pejlBUWF1KzE1SHRoWHY3NUlGc3kvU3lPeHMrUEhP?=
 =?utf-8?B?aHBBUG4wM2Q3bVRQcE1GNFp6ZDNJQjZlOFNaSkcxbU1NamZ6dUFDOUtHNkpn?=
 =?utf-8?B?Mnp6QmcrcVZrL2QzV2pmOU1lMTFaV2tTTVZPVDdyTnVpY25EUVB2dTF5ZW1H?=
 =?utf-8?B?YnZNazhLOVZkZkw3NVBhWHFhaHR3WVp5NFIzMnhDNHJGOE4ydlJQQnlXMnMv?=
 =?utf-8?B?dUQrNU40Y3B1dEYwUURlVy9tVldIa2lYTElBTXZXOGdpMHpkM2sxMEIxQ0tr?=
 =?utf-8?B?N1B0NDg5WVNpbmhUQk10THdwK1ZXcmRjTHlTZTcxa2ZCd3E4bXNuaHlqRjVM?=
 =?utf-8?B?dzFjNlh1THFLMzVhVy9Nd2FJQ1NHMVVDeEVYNXY2aU8vVmUxandFWG93c3RY?=
 =?utf-8?B?cjRyOGJaNExVNXhXQ1pwbjJjbGNIZmpjK1FmZzFOMW92Tk9pdit3UGJiQ2pJ?=
 =?utf-8?B?R1ZhRWZZR0JtRzY5bWRrRzFmTTV3alZZdWJ1dVl5MmphaXNSU0dWcTMvWXJl?=
 =?utf-8?B?d203RDZwcm8rbmkvcUlPT2FDdERnaU54ZWx5YXZqbnl2SGhxeHhjQzNWSlo0?=
 =?utf-8?B?dE00cVNMVlBjZjBlcURvSnhtdzNKaHZIS3NpM0NjM2pTY3dtNWdSSmhhWVVW?=
 =?utf-8?B?Q1VEc0xwL0Z3NFBGc1R2VG1sQjlGVGUxUDl4a3czMTZ6YUpZbjFqRFc0ODJy?=
 =?utf-8?Q?0KVJafOZU/9y4O3bh0u7sxQ50?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 6b206ec2-855d-47b0-5139-08dbc01b9c46
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 12:08:22.2541
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: gtZZk6ca56vIpRYjODD7q6LX19hU0V0mxQd0RlFtj1kFZ00RapE0F5GUnGqpZPJefT1CMPTK+2vNeDsjfUkzIg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7202


On 28/09/2023 12:57, Julien Grall wrote:
>
> Hi Ayan,
Hi Julien,
>
> On 28/09/2023 12:48, Ayan Kumar Halder wrote:
>> Change VPCU to VCPU.
>>
>> Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
>> ---
>>   xen/arch/arm/include/asm/procinfo.h | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/xen/arch/arm/include/asm/procinfo.h 
>> b/xen/arch/arm/include/asm/procinfo.h
>> index 02be56e348..8b8dae3dd4 100644
>> --- a/xen/arch/arm/include/asm/procinfo.h
>> +++ b/xen/arch/arm/include/asm/procinfo.h
>> @@ -24,7 +24,7 @@
>>   #include <xen/sched.h>
>>     struct processor {
>> -    /* Initialize specific processor register for the new VPCU*/
>> +    /* Initialize specific processor register for the new VCPU*/
>
> As you are modifying the line, can you also add the missing space 
> before */?
>
> I have also a slight preference for using vCPU over VCPU.

I will address both of your suggestions and send a v2.

Just fyi, I see vCPU and VCPU used interchangebly.

xen/arch/arm/include/asm/new_vgic.h uses VCPU.

xen/arch/arm/vgic-v2.c uses vCPU.

>
> With that addressed:
>
> Acked-by: Julien Grall <jgrall@amazon.com>
>
> Cheers,
- Ayan


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 12:12:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 12:12:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609602.948713 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlpt2-0008Hc-SD; Thu, 28 Sep 2023 12:12:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609602.948713; Thu, 28 Sep 2023 12:12:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlpt2-0008HV-Pb; Thu, 28 Sep 2023 12:12:56 +0000
Received: by outflank-mailman (input) for mailman id 609602;
 Thu, 28 Sep 2023 12:12:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=baK2=FM=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qlpt2-0008Ca-1o
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 12:12:56 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on2061b.outbound.protection.outlook.com
 [2a01:111:f400:7eab::61b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 58f987ad-5df8-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 14:12:55 +0200 (CEST)
Received: from PR1P264CA0084.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:345::6)
 by PH7PR12MB6720.namprd12.prod.outlook.com (2603:10b6:510:1b3::17) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.19; Thu, 28 Sep
 2023 12:12:49 +0000
Received: from SN1PEPF0002529F.namprd05.prod.outlook.com
 (2603:10a6:102:345:cafe::1a) by PR1P264CA0084.outlook.office365.com
 (2603:10a6:102:345::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.23 via Frontend
 Transport; Thu, 28 Sep 2023 12:12:49 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF0002529F.mail.protection.outlook.com (10.167.242.6) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.22 via Frontend Transport; Thu, 28 Sep 2023 12:12:48 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 28 Sep
 2023 07:12:46 -0500
Received: from xcbayankuma40.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via
 Frontend Transport; Thu, 28 Sep 2023 07:12:45 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 58f987ad-5df8-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iCxDe67moqguVdYFyeGqxqQ2qL9tM6ZEK/Hnduxh4JcNati1ta3Nxe6tdq0AK/VkBrXL8sokExTAr2SKFsv9kqFkY2UjDxCSMTJrE5zG2wH22PbGHlUiXT/Necd//EHrMzhVOreUbSxzU9OLakfCNbJU9Saeview9gzahsOlM2MMaz7qaIqkN90FL6cVMwiqJXpQjeXOmmzLqq8Fmc/sB9PhjcAjC3MZGXULEXO7w9XtuGD1fTZP07tRDVqAkuiNfL9LruuqxJ2rhWaYRZD7zz/trLMD7prtgBCXyEDskuei/+WtIiKrSIdheVwdXNV0EkiNqlpRlbu/wA5R9cV8hA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=bLs7cWsrv36ddscBKP8phBoxnUVI14/WwSVOc6mlSBE=;
 b=hzsnnuHVoGX6AcmOgRP9Nt0lWUYv7Doul1Aaa9Rz4Omhd6ZZtq0gH4swKbR3M5ZnKeMKQjuoBYzM6Q/t1qDmcYJtNVrNglbOVLSk4OIAlB2x8KpgFRR3WWvRTa/urD4cZBzPMd0lVsE2NmB7i3yG06CvTDcR0N34idmpuaVTqGCC5yorc5ZACNYwPzUD8NTJHHRlYi9Bi6rsy7iH0IGmABtrdkJ8bGkmM/JBPk6/LDdHSn1Q0G+X78P4R4MVvkx4j8+3rnIh+fH+a9S+6FC852noh2yhC7MO1/OKsdSfavMnuvr//Geq/GHZ4FwAfTqLiIhwf+mI9bD7OUd9LIIuvw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=bLs7cWsrv36ddscBKP8phBoxnUVI14/WwSVOc6mlSBE=;
 b=ZbydSgq5Z0tTAflxALm45z51Jc1y4swVPJzkJ/MDPiZnTORfocX4M3qZHnbAsnrpYMIEb7QFG6Vsa2lUDGA12yRREfeyEDsChw6rFTbSNv1kjR54J5IagQU0PLyWs1isFFdqf5DanM3zOkPgqqbszIzsUk490AdMm4TUdFX0oeI=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
From: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
To: <xen-devel@lists.xenproject.org>, <jgrall@amazon.com>
CC: <sstabellini@kernel.org>, <stefano.stabellini@amd.com>, <julien@xen.org>,
	<bertrand.marquis@arm.com>, <Volodymyr_Babchuk@epam.com>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>
Subject: [XEN v2] xen: arm: procinfo.h: Fixed a typo
Date: Thu, 28 Sep 2023 13:12:43 +0100
Message-ID: <20230928121243.2636484-1-ayan.kumar.halder@amd.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002529F:EE_|PH7PR12MB6720:EE_
X-MS-Office365-Filtering-Correlation-Id: bd20bc9b-9e70-4920-0a1a-08dbc01c3ad8
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	b28uLbokxixGwQ6DwQPNiJ3ni8x6BPeoUF5AODsoKqkhdCIpom/ECx66TTCgormdkSHAKHDjY3WjGuLo+W1bqEzT0vOMiTovh8rq0b8yT0oe8Z99uCWe9SvFhDbJNsg4L9QKF+OwBewOJv4g7RkGzrBwACOVsty5ww1WBDa3V+XGezjB7bPX/f1BeNaiRfiaCzMuD8Y4Y/sr/Lfv7qxFBCudWje5QSmiqbuzDBGrl3TWjcuwYQxzu6eXAvdcHmpvgV2CpVQADNtiY9FYwR0JmqMalehCVx5Vr4sEUsv1YfwdYaFhpWHD8VIgOCenNYtzcit7t2UgNni8X3fMlBzemP+WGQRoRluen8m1ceFiW+H9/Ie9UDAUCYz2F9RmYdhKvYnE5wzm6/Qd52iIfqbJkLajJGvQNbDgjRfvoTwcl31+UEelQ85C/NQEAKCUjObDk+QuivH2G/NkfGUevPF/KxsDEYyL029J/Wkiwsd7AvohAJ1MRWUQ5XtoNGPPHkKa/11h5CYB6Azhvz9Mmsm5ww4+CD4+otyVjJBSToCYBl8uXROLK2vULP++luN8spDiaWyrQZcqMlrb6QGE78Eed1IXjJfqWVD87I8Znkx5QPyX4j2AxTM7+akc/flcv5tWZVsnYvgQCJHnCTrxjgFxoFvdmdursUe6zKclw0VenljAueOP9XU7POt4ieAjAXrMFohNWwPY7YVzoioin19CIX+6Iuy4dPVsL1aQARJ+foiGl3fzhnxF3JDOisiA2nfNQoi8mCQ3p6OAlK9SO1JJKg==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(376002)(136003)(396003)(39860400002)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(82310400011)(46966006)(36840700001)(40470700004)(40480700001)(40460700003)(86362001)(478600001)(103116003)(36756003)(36860700001)(356005)(82740400003)(81166007)(4744005)(47076005)(336012)(8936002)(8676002)(426003)(83380400001)(54906003)(70586007)(316002)(26005)(1076003)(5660300002)(2906002)(2616005)(4326008)(41300700001)(110136005)(70206006)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 12:12:48.1130
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: bd20bc9b-9e70-4920-0a1a-08dbc01c3ad8
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002529F.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6720

Change VPCU to vCPU.
Also add a space before '*/'.

Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@amd.com>
Acked-by: Julien Grall <jgrall@amazon.com>
---

Changes from -

v1 - 1. Change VCPU --> vCPU.
2. Add a space before '*/'.

 xen/arch/arm/include/asm/procinfo.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/arm/include/asm/procinfo.h b/xen/arch/arm/include/asm/procinfo.h
index 02be56e348..3a05f27784 100644
--- a/xen/arch/arm/include/asm/procinfo.h
+++ b/xen/arch/arm/include/asm/procinfo.h
@@ -24,7 +24,7 @@
 #include <xen/sched.h>
 
 struct processor {
-    /* Initialize specific processor register for the new VPCU*/
+    /* Initialize specific processor register for the new vCPU */
     void (*vcpu_initialise)(struct vcpu *v);
 };
 
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 12:15:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 12:15:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609618.948732 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlpv7-000113-Is; Thu, 28 Sep 2023 12:15:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609618.948732; Thu, 28 Sep 2023 12:15:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlpv7-00010w-Er; Thu, 28 Sep 2023 12:15:05 +0000
Received: by outflank-mailman (input) for mailman id 609618;
 Thu, 28 Sep 2023 12:15:04 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qlpv6-00010g-61
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 12:15:04 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlpv5-0004fA-3L; Thu, 28 Sep 2023 12:15:03 +0000
Received: from [15.248.3.2] (helo=[10.24.67.34])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qlpv4-0004FW-QH; Thu, 28 Sep 2023 12:15:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=hcNBIAS9gBqjOWcbxMvlCAKf2weIDKo5xudiBl9DnyE=; b=4Q4BabDPmCSIdgWVVt9qfoDNMs
	+T32fJzTc1ldn59pURtX7kc/XlDcMNhal6FMznJcI8YGr1Pp6tsBLPxn1unCj5inSzvVewtEB7ZUJ
	8FESFJfHljeF3+GKxgQnJG8xX1vXRmmnc9KRyx46YL5CRYH16IoG76bQenXQ07mr7Lcc=;
Message-ID: <9ccd719a-ad1e-4ab0-b15f-056ae629c071@xen.org>
Date: Thu, 28 Sep 2023 13:15:00 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4 3/9] domain: update GADDR based runstate guest area
Content-Language: en-GB
To: Jan Beulich <jbeulich@suse.com>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>,
 Henry Wang <Henry.Wang@arm.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
 <fedb0869-a26f-8080-4e3c-7d8f55db00ed@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <fedb0869-a26f-8080-4e3c-7d8f55db00ed@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Jan,

On 28/09/2023 08:15, Jan Beulich wrote:
> Before adding a new vCPU operation to register the runstate area by
> guest-physical address, add code to actually keep such areas up-to-date.
> 
> Note that updating of the area will be done exclusively following the
> model enabled by VMASST_TYPE_runstate_update_flag for virtual-address
> based registered areas.
> 
> Note further that pages aren't marked dirty when written to (matching
> the handling of space mapped by map_vcpu_info()), on the basis that the
> registrations are lost anyway across migration (or would need re-
> populating at the target for transparent migration). Plus the contents
> of the areas in question have to be deemed volatile in the first place
> (so saving a "most recent" value is pretty meaningless even for e.g.
> snapshotting).
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>

Reviewed-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 12:35:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 12:35:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609655.948754 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqET-00040s-7D; Thu, 28 Sep 2023 12:35:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609655.948754; Thu, 28 Sep 2023 12:35:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqET-00040l-3f; Thu, 28 Sep 2023 12:35:05 +0000
Received: by outflank-mailman (input) for mailman id 609655;
 Thu, 28 Sep 2023 12:35:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TwOV=FM=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qlqES-00040f-Lh
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 12:35:04 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 704bc10c-5dfb-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 14:35:00 +0200 (CEST)
Received: from BYAPR05CA0078.namprd05.prod.outlook.com (2603:10b6:a03:e0::19)
 by SN7PR12MB6789.namprd12.prod.outlook.com (2603:10b6:806:26b::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 12:34:57 +0000
Received: from CO1PEPF000044F0.namprd05.prod.outlook.com
 (2603:10b6:a03:e0:cafe::d8) by BYAPR05CA0078.outlook.office365.com
 (2603:10b6:a03:e0::19) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.22 via Frontend
 Transport; Thu, 28 Sep 2023 12:34:56 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 CO1PEPF000044F0.mail.protection.outlook.com (10.167.241.70) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Thu, 28 Sep 2023 12:34:55 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 28 Sep
 2023 07:34:54 -0500
Received: from XIR-MICHALO-L1.xilinx.com (10.180.168.240) by
 SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27
 via Frontend Transport; Thu, 28 Sep 2023 07:34:53 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 704bc10c-5dfb-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=bQsfDjB7xowwh9BjxxJdbRVMGp+Kna5Y3TE29PfxPAjRdoEQtVk57+SzzSG6UJksiR8CUsPKu/d3FWOqSgPVMCikPQWCvvoJ33sS8erb4BFuM1sGeEMNAAsiEC4yaeRm3Lx8qkyhruYlMXugR00jZ5SOpEJ6CapoLqTAGxbtwKq78wFVjGFXPjcVNuPuPe8rXNWZL1PvyPdNpIFmvdWYS9MjJN05Ocaf7bCW81Q8gSrhBcgs0xSCPrdjXN66cFUV5JrK0zWHNj7RVuBDIjZx+HjCWH+4O65bWLD6Ojrp75UJjNGbWN/uXSJYhoLH000j2YiKrTZiMJVlSPFXFQcnjg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=V7Ju6bu8OgEJVGjFjrrzrrtbaw0w5O1j5OSxaTy1o/A=;
 b=JwCWU/xV/jVD3bRJ9LXMivQu49WtNl85tQCoodbAmqaNCmCRWk/eSIQUXHht8VVvWyyEjOXgRUXBBnN+F+68Phqpa01/xxIUJ8Gz2gQjZTJDgNd56FAoc0fBSo9q0x4TYRx8Lip0xbJP1/ST0pVPKocNteJ6vZ5DpfN8dSiz84p23pOeOZP6pu8B+ItzyM/53XW1ESas/OjxgpsmzJf28IgJjls0UUKIw5oOH7IGq7cyzJe8iLHmJuaFl8QqZpTy8HWWjb019Bxh94JbaB17Gmmadsc1TRZNbijEV9hb+gW63WkEscgZkI546ea29TYYWDRO/s3R/Uln131wayz49w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com;
 dmarc=pass (p=quarantine sp=quarantine pct=100) action=none
 header.from=amd.com; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=V7Ju6bu8OgEJVGjFjrrzrrtbaw0w5O1j5OSxaTy1o/A=;
 b=J6OpmDOwmmbEr5KczlugJpbmt703Rhao0GyuWOmbv826fzC2AOwASSsdg1+dq9UwOHEUXgsbGZZJcWse9r9ssBjJWHoTmOEtkEhtVlA692AiTxhoHohxn/vmJrP13TmZMsN1/ZIlJJTJx5Dfm/lF6tJgLjA0Nwde29tfK9WquNY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
From: Michal Orzel <michal.orzel@amd.com>
To: <xen-devel@lists.xenproject.org>
CC: Michal Orzel <michal.orzel@amd.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: [PATCH] xen/arm: Validate generic timer frequency
Date: Thu, 28 Sep 2023 14:34:35 +0200
Message-ID: <20230928123435.2802-1-michal.orzel@amd.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: CO1PEPF000044F0:EE_|SN7PR12MB6789:EE_
X-MS-Office365-Filtering-Correlation-Id: 3d1a1e34-30fa-469f-61d4-08dbc01f5228
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	OGezZu6TwigfmAu/OGBj/6S/TYh0kazivo+uzd+bRWnoiHafuQhfbiEg4h32vYY9BHoT5jmkF+1OSnY7gbiwHjr0o8V2VZiswA8MTHOro9kBViWbi12CmU76UjUquCVzX83x7yJtW3RSjypdXGGrOYzleToTnaf4AZa3oOqpa2O+f3APidmfAY+/bPLDq/6+KOesfziKf+HSXXRr7SPC4HoAI1PIHhNda+G2Q75UGzpjzFbPgU/rhZU146J1YAQPGrgVrWAZDzfoG2Ra2b4JuaeLiFi1CIEVCAMgkZfZ/32vFjyRE4UjclXAn+h35KPo0osdCJPO6GNrXyOjsGitOKZ3uKpbrOFZX+9QkriM3d+NDU5C1BOx1MQTKwntjZRMF2p0gVH2ZXyF8eqD1fnZku6vBNiQIkzmELJ3g/gYxE6hh9Yng/HVCY1TSkdVZ/tIuSelVWg7O1X3cGxETS4RtJ1gGzISjKiqfbfEWhnRQCLFeeUgO9GQnYYxbBSWSRTG07zGVQ3U9R2dd21xRTx+TuCfJy4E0P7iCbatJO/F4vMIoQ7VDqccXSamw/d1LdyWJvcDqda5v/qfqkmKZZmAgYWTM+9xu3uedQ9j9T2/Stq/6eRmFj9sceonCVfrSbsT8QRPhM+5BNLIljYhgUVYStVUG9fCDVxMiDqfu7FIATZ06bZhu/UwXgbxwJA4cXLlKl17JT9+X7+K3Sfnv/mx0KX4I8GPAREPIyggSaL50KAZU6UHWQQGilMEKUqBL/ArFm92XZjA10uFux0hb+f9U2YWPd7s206pbjNVQpDoP+Y=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(396003)(136003)(376002)(230922051799003)(64100799003)(82310400011)(186009)(451199024)(1800799009)(46966006)(36840700001)(40470700004)(316002)(54906003)(41300700001)(8936002)(6916009)(70206006)(70586007)(40480700001)(4326008)(2906002)(8676002)(44832011)(15650500001)(478600001)(40460700003)(6666004)(26005)(5660300002)(47076005)(83380400001)(81166007)(1076003)(336012)(2616005)(426003)(86362001)(36860700001)(356005)(82740400003)(36756003)(41533002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 12:34:55.6235
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 3d1a1e34-30fa-469f-61d4-08dbc01f5228
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	CO1PEPF000044F0.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB6789

Generic timer dt node property "clock-frequency" (refer Linux dt binding
Documentation/devicetree/bindings/timer/arm,arch_timer.yaml) is used to
override the incorrect value set by firmware in CNTFRQ_EL0. If the value
of this property is 0 (i.e. by mistake), Xen would continue to work and
use the value from the sysreg instead. The logic is thus incorrect and
results in inconsistency when creating timer node for domUs:
 - libxl domUs: clock_frequency member of struct xen_arch_domainconfig
   is set to 0 and libxl ignores setting the "clock-frequency" property,
 - dom0less domUs: "clock-frequency" property is taken from dt_host and
   thus set to 0.

Property "clock-frequency" is used to override the value from sysreg,
so if it is also invalid, there is nothing we can do and we shall panic
to let user know about incorrect setting. Going even further, we operate
under assumption that the frequency must be at least 1KHz (i.e. cpu_khz
not 0) in order for Xen to boot. Therefore, introduce a new helper
validate_timer_frequency() to verify this assumption and use it to check
the frequency obtained either from dt property or from sysreg.

Signed-off-by: Michal Orzel <michal.orzel@amd.com>
---
 xen/arch/arm/time.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/xen/arch/arm/time.c b/xen/arch/arm/time.c
index 3535bd8ac7c7..04b07096b165 100644
--- a/xen/arch/arm/time.c
+++ b/xen/arch/arm/time.c
@@ -101,6 +101,17 @@ static void __init preinit_acpi_xen_time(void)
 static void __init preinit_acpi_xen_time(void) { }
 #endif
 
+static void __init validate_timer_frequency(void)
+{
+    /*
+     * ARM ARM does not impose any strict limit on the range of allowable
+     * system counter frequencies. However, we operate under the assumption
+     * that cpu_khz must not be 0.
+     */
+    if ( !cpu_khz )
+        panic("Timer frequency is less than 1 KHz\n");
+}
+
 /* Set up the timer on the boot CPU (early init function) */
 static void __init preinit_dt_xen_time(void)
 {
@@ -122,6 +133,7 @@ static void __init preinit_dt_xen_time(void)
     if ( res )
     {
         cpu_khz = rate / 1000;
+        validate_timer_frequency();
         timer_dt_clock_frequency = rate;
     }
 }
@@ -137,7 +149,10 @@ void __init preinit_xen_time(void)
         preinit_acpi_xen_time();
 
     if ( !cpu_khz )
+    {
         cpu_khz = (READ_SYSREG(CNTFRQ_EL0) & CNTFRQ_MASK) / 1000;
+        validate_timer_frequency();
+    }
 
     res = platform_init_time();
     if ( res )
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 12:47:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 12:47:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609683.948776 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqPz-00083l-DR; Thu, 28 Sep 2023 12:46:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609683.948776; Thu, 28 Sep 2023 12:46:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqPz-00083Y-9U; Thu, 28 Sep 2023 12:46:59 +0000
Received: by outflank-mailman (input) for mailman id 609683;
 Thu, 28 Sep 2023 12:46:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QRba=FM=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qlqPx-000822-NZ
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 12:46:57 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1b914042-5dfd-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 14:46:56 +0200 (CEST)
Received: from [192.168.1.9] (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id 8F9394EE0739;
 Thu, 28 Sep 2023 14:46:55 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1b914042-5dfd-11ee-878a-cb3800f73035
Message-ID: <f1759081-eb18-4597-82b6-d7d9ee1754ab@bugseng.com>
Date: Thu, 28 Sep 2023 14:46:55 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Doug Goldstein <cardoe@cardoe.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <b62205a1-885b-ea4e-3ce2-7ad58cfc938d@suse.com>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <b62205a1-885b-ea4e-3ce2-7ad58cfc938d@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 13/09/23 10:02, Jan Beulich wrote:
> On 12.09.2023 11:36, Simone Ballarin wrote:
>> Add or move inclusion guards to address violations of
>> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
>> to prevent the contents of a header file being included more than
>> once").
>>
>> Inclusion guards must appear at the beginning of the headers
>> (comments are permitted anywhere) and the #if directive cannot
>> be used for other checks.
>>
>> Simone Ballarin (10):
>>    misra: add deviation for headers that explicitly avoid guards
>>    misra: modify deviations for empty and generated headers
>>    misra: add deviations for direct inclusion guards
>>    xen/arm: address violations of MISRA C:2012 Directive 4.10
>>    xen/x86: address violations of MISRA C:2012 Directive 4.10
>>    x86/EFI: address violations of MISRA C:2012 Directive 4.10
>>    xen/common: address violations of MISRA C:2012 Directive 4.10
>>    xen/efi: address violations of MISRA C:2012 Directive 4.10
>>    xen: address violations of MISRA C:2012 Directive 4.10
>>    x86/asm: address violations of MISRA C:2012 Directive 4.10
> 
> Just to mention it here again for the entire series, seeing that despite
> my earlier comments to this effect a few R-b have arrived: If private
> headers need to gain guards (for, imo, no real reason), we first need to
> settle on a naming scheme for these guards, such that guards used in
> private headers aren't at risk of colliding with ones used headers
> living in one of the usual include directories. IOW imo fair parts of
> this series may need redoing.
> 
> Jan
> 

My proposal is:
- the relative path from "xen/arch" for files in this directory
   (i.e. X86_X86_X86_MMCONFIG_H for "xen/arch/x86/x86_64/mmconfig.h";
- for the others, the entire path.

What do you think?

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 12:51:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 12:51:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609689.948786 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqUH-00019E-U4; Thu, 28 Sep 2023 12:51:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609689.948786; Thu, 28 Sep 2023 12:51:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqUH-000197-Qp; Thu, 28 Sep 2023 12:51:25 +0000
Received: by outflank-mailman (input) for mailman id 609689;
 Thu, 28 Sep 2023 12:51:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlqUG-00018v-Gc
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 12:51:24 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062a.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b9c4e0b5-5dfd-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 14:51:22 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by VI1PR04MB6846.eurprd04.prod.outlook.com (2603:10a6:803:12f::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 12:51:19 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 12:51:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b9c4e0b5-5dfd-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kQcgXGfsQsLlkIYje9fdVAvqBQ64f4+7X+lnjhk+KHhLMxGwEkNPI+BtCAKR7fQBfqD3Hf5Gh6Q2Mg+wYAmG4X3wGTaQ2uNq++dyfjhFPhg8ngGgfGKTQgdhjneDcCERLHhr+XOi2bUrWafEu3MtCPhBmkVU8P3ruOIqEHL9cXfTtdsHmhVaN+tefGqddYqafys6fgE+D5gcdUYbMvReaGKNwGlk5Xp39sfPUe4b+vY4pRaFNWcF4HxI5SDQdhS7obYNQyccOvJ40DqYOUgFONzWGK2P7kztCpW9VfrabRiCZ2JXUQc8iynsvr/z8fkDrRBdJ/r+xJnFaRjRqKuJSw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IW63JsLgwKOuQZ88dJt/vuqFR1CwMNRu/oM0hCsFhY0=;
 b=dKQFlf8yc+9eMhiEfwnSpYNCmqw3FZW+aJxkIxd7UX6dNHwUE7CrwsqO40EIGSQSgDxJHuyqHnL+dZzeZ+p3AYhQEPE8FN1YI8eQKQ6tG6xsJw1l0pxZjpU1NedDEe9lCVqUPJpAhqIw4/UjCbKJtVXIhRpm08Vw58KjBZX4VbT8WD65jn78JYR6c5xTa+1+vhHB+Tl+GsSrKejHFVh5SfKcLAim6tDPMIfqnss9N9+gTiwXpbzgZoRBP2cwbwoKvYGy6aLaXTj4S8yo2GYvQWSV1QYXE+8LHHruzGebzF1PFlt0mtd29Ir2mGGQeeFzNUtqzTG/+SYD24jFs1yiEA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IW63JsLgwKOuQZ88dJt/vuqFR1CwMNRu/oM0hCsFhY0=;
 b=nagIasJf5jcMhdnZLqs+44IkXsv1NX+LwR/aJHIbVzodYSp42tIMN/NF7CxnQgbDUKe2/KFsgmfoHMin6wwkxtMTWjI9zyrsX4NW+ks9woTkACRkwYqPtIeTKeImk+hqJyn7L4OFdxph2K5NMBTVYPV5hxmD+WVwciqLXYWXRrNVDSElUKv3UuOUNnLCvDLFBG1cyjYpENJg0vjjOpnJplaohxQMmqNW9KofokbdNPzegnWkQdlvnxgVoocZOJwvdExhXfAZ3Yag/ARym8HS4BOk6DvnKQ2XqMDbUsEyFCvj0OrPcS3KLHgJUY2UiBnttOg6f/jTrNwFoINaiAVwyg==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <e0ff3307-99ee-7740-bc5f-52dd7f589057@suse.com>
Date: Thu, 28 Sep 2023 14:51:16 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Doug Goldstein <cardoe@cardoe.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <b62205a1-885b-ea4e-3ce2-7ad58cfc938d@suse.com>
 <f1759081-eb18-4597-82b6-d7d9ee1754ab@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <f1759081-eb18-4597-82b6-d7d9ee1754ab@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR2P281CA0164.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:99::14) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|VI1PR04MB6846:EE_
X-MS-Office365-Filtering-Correlation-Id: 8d29a633-4729-4566-9ed0-08dbc0219c87
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	wyilUfX2Qy6vPs7o/9HFL6CNvLNxEfjbBX6ZjxYcWWrkTzgO8xFq9Lu9CHx8aqP88Rz5ve3o8hRqb5njrRvZ5OHz+Ifoqbaa3S6Sc+Erlildusl5qyb0LNz6A6mhI64ClKgYJPoTDHrEws1cbtm2nKjTdIEQtLEseR4FpIiqRFf64rU4g2NiOCniPa9wxHrqJdiaB4EXlBD19lbW5Nupk5ycEUvHW1iCZl+mRNlPexJDatc+N7T/BDXiPYssDlSP7I2WgfpAGP+kh5/70ISEbxH3105zHnoczd0GHprw8+uspPlGPAWXwmBgVQXURyjSREtgId9dLIzhNtg78RRL4Iv6bbM2uXNojlbKUyqcGR9yXN+MInmpY7MmKiEKrhi+N9lkUgBlrN1P1q91eqOHf9dQEDBU3jRk0kc8EsYUbMzx5YidSFUby2PR2A7Sya6x5RaiBFEESiGr5Nfw2LJjcfLsrgZJOSwQFTXTrcnxz/vswC52C0xyOUZjJZXmoj77V5jmU6ycF40o4Ig4nIzyA0YDMJBrcsoxegX/sOFf0C5pKM7iW4Q5P4tsc7RRj7KfJy/iV7HGAHYfcu8iOphrjQN5wLjw5Rky/NSbpvXfsbWE61NqOrPUpq6N1mL6MgZlSNod+NyM+G/zoH7muBxxsw==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(346002)(396003)(376002)(136003)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(41300700001)(7416002)(31686004)(6506007)(26005)(5660300002)(54906003)(6916009)(2906002)(316002)(36756003)(8936002)(8676002)(4326008)(83380400001)(86362001)(6512007)(6666004)(31696002)(6486002)(66556008)(53546011)(66946007)(2616005)(66476007)(478600001)(38100700002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?bW1mcEdLSmxqekFCWGxxMXpqZDNsYkV5MVY1Q2tEZFM3R0x6cWR4djNXNktQ?=
 =?utf-8?B?M3FTcHVSVnVBN1JzdGtMWk9COUlaV3d4ck1rbUVRMXlmN243UUZRN2JvUFFn?=
 =?utf-8?B?WVF1WGQ0SnpuUllHcmZZcktQaXdmMzQ0NWxGYVZKbkplcHFvV3dJQnRJamIz?=
 =?utf-8?B?SGZOWUFtNWo4VzB2QVd4UFJqMCtkaDR4aXZRRlZFR2hEaXJSaUtkNncybWRX?=
 =?utf-8?B?TE1rU3dxZWV5MkpNMWRNMTI2dW1Sd2xUeFliZHplUEJHbUZRaTlZN3dRVHpR?=
 =?utf-8?B?OFNwc3NUc3dyeSsrd1p4WWdGMmIvWk9MaUt0bmRvbllVS2dxTEI1TFNpOFdB?=
 =?utf-8?B?eEZjaHNIb2dzWnAvdUlCQS93VUE1T2hNS1dOZS82S092OGNJUUYwQmYxZ3BR?=
 =?utf-8?B?WGh6VnBFQUpSNVlOSkZvVThBMWJJNnJzdGJvd0twcDU1MEwxN3dnSSs2bFVN?=
 =?utf-8?B?a0lHS2xHSHh2RVBkVXNoUkdmMTVsd3VJVzVVNUZ6ak5KbEc4b2pOdUhNcVI4?=
 =?utf-8?B?cEtzMmpZVjFocy9YbFN4WjZFRXg1THBUU2dWbjZSZGY0WVMzdlRWd1NqaHFG?=
 =?utf-8?B?cGVOa2JLaEI5NVk4VGRFWVk1RGw3M2wvSm1OalkvVmlqQkU0YS9Yc25odkxN?=
 =?utf-8?B?dG0vQUpTcWg1c2dhVmlmRkFDSDFicnhBcE4xS2VOYkV2Qm5xaDdIQkpMUjl5?=
 =?utf-8?B?K0hJZlBCU3pBUUswS3hqME9FZHZXd2JqckwxMjJNVzBleUtTL2NQQm94VUtx?=
 =?utf-8?B?RWpnaTBSQzU0RGhFajFuQ2UvWk0zd09lT1Jia0JxNlFTZjZ6aGNPWHJMaWYr?=
 =?utf-8?B?MFNzeVpiRVR2N2NVYU14K0YwYXRyT0lIcmJyNm5xVjVWTjRYNG1UQlBwVi9x?=
 =?utf-8?B?SlBWTUpTeEM5TDVRaVVQYWlxaksrOHNOTytEV2NjTjcvbnJvcVZkYmlVOHpo?=
 =?utf-8?B?U3ZvOTVUeW1FbmE4ekJHUjN6RjVuL3VRVXR3MDJYS0hXRU1DMlVjbmFOTTc0?=
 =?utf-8?B?WDhNWGhobXFXQ2phbTh4R0xWaXo1L2c5a3VOeERGcWViQkhiaVVaV3NtS3BH?=
 =?utf-8?B?K3MyUlhKYWtnYTcrbGVGWnRhcWgwcUI5QVdMYmdJdWo2V1Y5V0duUDdTcVdV?=
 =?utf-8?B?RzJ0ZlQwQTZEdFpObUFQMGRndzZKMXQ3VS9RbUt5UkwvdFpjWUJaeXd0UGdF?=
 =?utf-8?B?c05ZUTBZaVJSTHl6VnhVM0dCaFJiZHZVOXdQdVRSWHRoNEtFS2l3bHl3WHNQ?=
 =?utf-8?B?aGVkUi82cDg2eXk3Z0pXWU5SWkJSek12UUVnNGFjWFE5eHZESFhpMFFsMWZ1?=
 =?utf-8?B?eHlkTmszd1dqLzRyNm83dUhaRFhsZzViWUVXblBtTDdhMGp2S1NRT2txeWFx?=
 =?utf-8?B?YWk3dkpoSnZnblQvSmdiajViM1FsKzNFOVY2eUhvVnY0L3lYVFkrYmRVdWl6?=
 =?utf-8?B?TUpFL1pjVUhWcG52a25DNkxCWTd6RWVnM2pGV01KV3pqS0hwb2xITUdKdkhp?=
 =?utf-8?B?eHVtZ0tpM3RiRVlPLzVyaGtHeERkS0J1SDJESW9iZjIxRmhPa0xxZ2xkNjFu?=
 =?utf-8?B?cUdlbkx1M2l6NHNZZTNDSkl6VmtZZFZRZjNTaTQrUEVOUHpBSDBxSVo4N2M2?=
 =?utf-8?B?cjJhakx3OEJuNjU4QW4vSjN2YmluSWhYaU81MXM2NjZ6SlVMd3ZoME03cyt0?=
 =?utf-8?B?Q0lEdURybmdQeHZmejBmT1VYZldXZVp0ZnVQZkZpNmsvWmtoMFlzZmdIaFMw?=
 =?utf-8?B?cWhJdnNEdDF4MmkrRW94bFlSSmdSL1dVZFgybEgvTjl4UzUybDFmdHMraXRM?=
 =?utf-8?B?SXptR1NZSzJCd0QwR3dSeUJEYjJVY2lkYVdMQlU3Vkk1VDlFcUpDMEhacUY5?=
 =?utf-8?B?aW4xdEE4MWovR2Jjc3dFamNpSG9rQzZQU25tNEg4MDZRV1pKZEFQeUxUTDJz?=
 =?utf-8?B?V05lRXZ1SDRSWVY1NnhSMnM2eDhkRWJWamxxUzZrNGhsYy9zNmZOUTNyMVlu?=
 =?utf-8?B?STFFMmhUSStYQVNJZkNUWCtPcVpMOUdEcXpHbnByZWk1aW05YllqTmlTWmR4?=
 =?utf-8?B?bHl6YWl0ZUVNUXRTU2dwRkhvak1YeElHNUJUNDJXNDY4USt4WVZKeTA1dXVL?=
 =?utf-8?Q?jc0rYRqyiQFvBhq+Mmu3MGW2Q?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 8d29a633-4729-4566-9ed0-08dbc0219c87
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 12:51:19.6738
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: w9P0x8S47pydkLfbScN2C7UH+qW8evcjfJezj8pMkfsIBmi2Wjc/TLD4eR9aTPBP4O6efRO32uysxrGV8KaVUA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB6846

On 28.09.2023 14:46, Simone Ballarin wrote:
> On 13/09/23 10:02, Jan Beulich wrote:
>> On 12.09.2023 11:36, Simone Ballarin wrote:
>>> Add or move inclusion guards to address violations of
>>> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
>>> to prevent the contents of a header file being included more than
>>> once").
>>>
>>> Inclusion guards must appear at the beginning of the headers
>>> (comments are permitted anywhere) and the #if directive cannot
>>> be used for other checks.
>>>
>>> Simone Ballarin (10):
>>>    misra: add deviation for headers that explicitly avoid guards
>>>    misra: modify deviations for empty and generated headers
>>>    misra: add deviations for direct inclusion guards
>>>    xen/arm: address violations of MISRA C:2012 Directive 4.10
>>>    xen/x86: address violations of MISRA C:2012 Directive 4.10
>>>    x86/EFI: address violations of MISRA C:2012 Directive 4.10
>>>    xen/common: address violations of MISRA C:2012 Directive 4.10
>>>    xen/efi: address violations of MISRA C:2012 Directive 4.10
>>>    xen: address violations of MISRA C:2012 Directive 4.10
>>>    x86/asm: address violations of MISRA C:2012 Directive 4.10
>>
>> Just to mention it here again for the entire series, seeing that despite
>> my earlier comments to this effect a few R-b have arrived: If private
>> headers need to gain guards (for, imo, no real reason), we first need to
>> settle on a naming scheme for these guards, such that guards used in
>> private headers aren't at risk of colliding with ones used headers
>> living in one of the usual include directories. IOW imo fair parts of
>> this series may need redoing.
>>
>> Jan
>>
> 
> My proposal is:
> - the relative path from "xen/arch" for files in this directory
>    (i.e. X86_X86_X86_MMCONFIG_H for "xen/arch/x86/x86_64/mmconfig.h";

X86_X86_64_MMCONFIG_H that is?

Yet then this scheme won't hold for xen/arch/include/asm/... ? It's also
not clear whether you're deliberately omitting leading/trailing underscores
here, which may be a way to distinguish private from global headers.

> - for the others, the entire path.

What exactly is "entire" here?

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:17:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:17:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609699.948798 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqtj-0006Cn-3v; Thu, 28 Sep 2023 13:17:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609699.948798; Thu, 28 Sep 2023 13:17:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqtj-0006Cg-1B; Thu, 28 Sep 2023 13:17:43 +0000
Received: by outflank-mailman (input) for mailman id 609699;
 Thu, 28 Sep 2023 13:17:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QRba=FM=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qlqth-0006Ca-AU
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:17:41 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 66487f85-5e01-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:17:40 +0200 (CEST)
Received: from [192.168.1.9] (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id 948EF4EE0739;
 Thu, 28 Sep 2023 15:17:38 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 66487f85-5e01-11ee-878a-cb3800f73035
Message-ID: <c2b10554-673c-4452-a35c-0d2f314e8ad2@bugseng.com>
Date: Thu, 28 Sep 2023 15:17:37 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Doug Goldstein <cardoe@cardoe.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <b62205a1-885b-ea4e-3ce2-7ad58cfc938d@suse.com>
 <f1759081-eb18-4597-82b6-d7d9ee1754ab@bugseng.com>
 <e0ff3307-99ee-7740-bc5f-52dd7f589057@suse.com>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <e0ff3307-99ee-7740-bc5f-52dd7f589057@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 28/09/23 14:51, Jan Beulich wrote:
> On 28.09.2023 14:46, Simone Ballarin wrote:
>> On 13/09/23 10:02, Jan Beulich wrote:
>>> On 12.09.2023 11:36, Simone Ballarin wrote:
>>>> Add or move inclusion guards to address violations of
>>>> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
>>>> to prevent the contents of a header file being included more than
>>>> once").
>>>>
>>>> Inclusion guards must appear at the beginning of the headers
>>>> (comments are permitted anywhere) and the #if directive cannot
>>>> be used for other checks.
>>>>
>>>> Simone Ballarin (10):
>>>>     misra: add deviation for headers that explicitly avoid guards
>>>>     misra: modify deviations for empty and generated headers
>>>>     misra: add deviations for direct inclusion guards
>>>>     xen/arm: address violations of MISRA C:2012 Directive 4.10
>>>>     xen/x86: address violations of MISRA C:2012 Directive 4.10
>>>>     x86/EFI: address violations of MISRA C:2012 Directive 4.10
>>>>     xen/common: address violations of MISRA C:2012 Directive 4.10
>>>>     xen/efi: address violations of MISRA C:2012 Directive 4.10
>>>>     xen: address violations of MISRA C:2012 Directive 4.10
>>>>     x86/asm: address violations of MISRA C:2012 Directive 4.10
>>>
>>> Just to mention it here again for the entire series, seeing that despite
>>> my earlier comments to this effect a few R-b have arrived: If private
>>> headers need to gain guards (for, imo, no real reason), we first need to
>>> settle on a naming scheme for these guards, such that guards used in
>>> private headers aren't at risk of colliding with ones used headers
>>> living in one of the usual include directories. IOW imo fair parts of
>>> this series may need redoing.
>>>
>>> Jan
>>>
>>
>> My proposal is:
>> - the relative path from "xen/arch" for files in this directory
>>     (i.e. X86_X86_X86_MMCONFIG_H for "xen/arch/x86/x86_64/mmconfig.h";
> 
> X86_X86_64_MMCONFIG_H that is?
> 
> Yet then this scheme won't hold for xen/arch/include/asm/... ? It's also
> not clear whether you're deliberately omitting leading/trailing underscores
> here, which may be a way to distinguish private from global headers.

Each name that begins with a double or single underscore (__, _) 
followed by an uppercase letter is reserved. Using a reserved identifier 
is an undefined-b.

I would be better to avoid them.

> 
>> - for the others, the entire path.
> 
> What exactly is "entire" here?
> 
> Jan

Let me try again.

If we are inside xen/arch the relative path starting from this directory:
   | xen/arch/x86/include/asm/compat.h
   X86_INCLUDE_ASM_COMPAT_H

For xen/include, the current convention.
Maybe, in a future patch, we can consider removing the leading _.

For the others, the relative path after xen:
   | xen/common/efi/efi.h
   COMMON_EFI_EFI_H



-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:19:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:19:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609704.948809 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqvU-0006l3-FO; Thu, 28 Sep 2023 13:19:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609704.948809; Thu, 28 Sep 2023 13:19:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqvU-0006kw-CC; Thu, 28 Sep 2023 13:19:32 +0000
Received: by outflank-mailman (input) for mailman id 609704;
 Thu, 28 Sep 2023 13:19:31 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlqvS-0006ko-Sm
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:19:31 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur02on2061a.outbound.protection.outlook.com
 [2a01:111:f400:fe12::61a])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a7adbc0b-5e01-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:19:30 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DU2PR04MB8774.eurprd04.prod.outlook.com (2603:10a6:10:2e1::21)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 13:19:28 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 13:19:28 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a7adbc0b-5e01-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=gz68zQTyJtiiVW92YrskSaMXKXNCXybXHC2quvrhgfLb4JRfy9+7TifjI+dN3qHB37DlcvDN9gNyWlghetG3lBlkG7SeGQsS86wMfYh2zyc+G2wX/ScOy+kQJGt8mmmWaVcexbgyNjS0sMt755IKObFVPZcnxM1Tq8wu3cV/QGuka8wnFMbbVsxXAXq6oDIS8DEh0TotGRJNBc2FztHJ1pd5As2nggX+i3l8kdiig0pJ0ZpEE7yFyDDe2t/hCGBel2KjB9R+Rd8ygyNXXAc3HGOaH4Dg5R0ks9FXDgC0F3GhHu5ji6kXIda1ng8NxOJWlamTfwom+T6KRLMdwqblBA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=YV6fOoxT4lI+0q9BhmcjphMe+Os1d1bLqPZmkU063w4=;
 b=D3ngVyW2lhJCo42HYGuK47uIjFkFq27SofR4dD9h6uHJkxzAmSG9QlFNAJZEAUNGpKfiI5yxZ6gE/cZmil3CGV+MGD/2DTaa3X48wWQspSqgnAEJrWVNNdUjiB6NY4CClcQPkUgJoMQX2A7LDjNPzS0kEv5gWGp0aDWBrcOUyCwqRy2tCcqow8Vcaz8tYcaoZOhCoU43iH1uJQLm0H3KSAA6T6s7J9OICW5XC2rFyQBWSRe09/qFHUA4RklP7dcakrETlebvLF14rzEAqdSHY/JDjKzUkjoxE0o0xZuNv+ua1UgBm+EXypToQvTmNT+Pw6RYbZwda76IjC0LBRrxRg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=YV6fOoxT4lI+0q9BhmcjphMe+Os1d1bLqPZmkU063w4=;
 b=EBXkoZscjX7ZBwtHswYNTaHFVspKyLIwzdjaHNCLMg4zasZDcRqb1SoIUcYE4PiQzHNCsjbxCAoq9SWJ5YLU0lAyulimpyJ330gx3OM30GY/AUd9ExPGTGItU0pq+wZmEmnU8uJk1KwpeAeWBwsBHsQq3MEISv0FRUsaKR4LQRU8V34VxvFmwTmkG1bomAIX4RlYCtmAO4lA78Jr1hTuAbM1egpcUBhJLKqa8bbgoEOX3HvwXMuKi2maDI3Ykyts/1qwc3/qYaNQ9RM5KyVbmwLbJtgDxVejtnjt6+SVs54nNGvVxiON3r46/wei45AHpshpmdIEjitRQQimJY8ALw==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <b05190e0-f091-b52c-7d89-d72bd993fec9@suse.com>
Date: Thu, 28 Sep 2023 15:19:25 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v4 5/9] x86/mem-sharing: copy GADDR based shared guest
 areas
Content-Language: en-US
To: Tamas K Lengyel <tamas@tklengyel.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
 Henry Wang <Henry.Wang@arm.com>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
 <6047c192-0f37-e4ff-5980-fd137b3f1869@suse.com>
 <ZRVMhdyI8s4chr7b@MacBookPdeRoger>
 <d285a456-307a-0a36-0910-cb80f419627d@suse.com>
 <ZRVeiAFlyf1LJ2qR@MacBookPdeRoger>
 <CABfawhmAZGTaKZfmwY4t8599i6qKaTOJ-fngFmtvS4LhJMh7iA@mail.gmail.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <CABfawhmAZGTaKZfmwY4t8599i6qKaTOJ-fngFmtvS4LhJMh7iA@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR0P281CA0219.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:ac::12) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DU2PR04MB8774:EE_
X-MS-Office365-Filtering-Correlation-Id: bcdbed50-0012-466a-fcf6-08dbc0258ae4
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	P2i0UpFNiH1ddo/df91eE3lqtT+XuDAk4VRymBwYnKwb5hLvhICjzdH5CcLvY4FKCIDxP8V/Q62lCd0p6zrXKSB0aRbzEG93PaP8KWfzIiSRVyaErXSnwj4Hh714nvOIadLBNKpZkZOP+ZGwbhN9efgPtrR+O32Enmvw9wtf9NFQE07qDc45KTh6jfVJCm1lFsPsxZ0WPaapkbaYTUp8WiVOvhEL8VDYv23PvlQRBs59w5ffzruhU6m0c966+sFLwvf/V3Bwj/mRYIDCSQ3xzOcsZ0Z7NHhfXad+bI2LDQmAxG4Pgg6C9tXDljw6p9FGAphgmzHp1nTFpgSAXqZfI8b0CTgQXLnDbUcSettKtxCGEdw6SlaDEaYuAohlom0NaD/+q+W7/SGoBM7XTmXTvCKfk3Iylrk8kGuMZ0ELxRVj1wWa9th+STwayD0dGqu7Lg3i3JL4KbctxuLpDC0rK1B489QeoQb7pnQhvH6RqjYWYqx8PuNKdNzLt2+Nbc/ksl5ukntlv+e22mLeLmFvy92smifosH9+PzcfBwOKbMaUrTeF/yi80TfE5xpPZVQDopoL+PxYvxTLXJ8Z/ie/z2E87bk3lxvhx3BH8tg0wYXGERQQxyIzNGZVvUZjZ3oL3juLW2KsbkYGjhGNUWJ6TQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(39860400002)(396003)(376002)(136003)(346002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(41300700001)(31686004)(6916009)(316002)(83380400001)(8676002)(66946007)(36756003)(8936002)(4326008)(5660300002)(2616005)(6486002)(31696002)(6512007)(53546011)(86362001)(6506007)(54906003)(66476007)(6666004)(26005)(66556008)(38100700002)(2906002)(478600001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?cHk3QXpDRDVGRXZSbFphbjR1U0x1ZEk5bFhwSFNDcFdLVEw1amY0UTNPYm55?=
 =?utf-8?B?Qjh5WEh2a3VkeGR0UUtyWEp3bmNmSzRFUm9CeDgwN29ZN2tjWmpGaE9GMHRV?=
 =?utf-8?B?V28zK1FkMDhEUUIwbnhobEt6dE1wSEs4ME5FaE03bG5EdktsN0FDOFY5VUMz?=
 =?utf-8?B?eFQ1MGQxcDJOTDdtaFYwZkRvTkZCUjIrd1pUNFRaNTg3MGg2dnRSdWcvOW4w?=
 =?utf-8?B?b2xwYmlFeDlvUlNwL3NLSDFVTzllejJybkd0QjdRZ0lKZFJLRWVUWFdib0pR?=
 =?utf-8?B?dHhvMnRESG0xK2xwN3NTb0N6akkwMDVRbXpzNnBmelBvOTdSNEpSQ2J0dWZi?=
 =?utf-8?B?ZXR1WGNvaTdHcWY3UlRPQmdSSDBUeGEzTk5nK0J5SXVhSTdadmNwcWl4dWV5?=
 =?utf-8?B?M011Vk9RQXZoN216V25ISGtSczJUT2N3WlBYa2pRaXRXOStYbGd6dTZPajBv?=
 =?utf-8?B?S1l4VTVxNHlpd2grUWYySDV2K2JDa1Z0NW9qazFNWFQ1djAvUmwvLzJ2dUk4?=
 =?utf-8?B?czJsTUV1VUVPb0NsOHRIeFA2RlJGVllBOWlrdUdPN3h0RTFScnZDVzlNZUJo?=
 =?utf-8?B?Tkc1ZmxGUmdIOWNCdTg2ZWs4VFB5dEJmUFFsRC9RUXkyZkNuYVNlSGFMZGZi?=
 =?utf-8?B?N3ZHN1FMZFl0QlEzRmI5WFl4bVpYZWVxNGRNQWlqUjZCLzNFRyt0aUI1ajBL?=
 =?utf-8?B?QzFNdUZOakdMR0ZQK1lwWVJOSjI3VDg0Rjk4RFhSek9IUERRUUdNVm9UUENX?=
 =?utf-8?B?d2ZuUG5SblEzNXZlVkYxZlVZRi9ERjlWK3QzaTlyK2IyOGJPM2N2Y2R0aWhE?=
 =?utf-8?B?MzBJMDNlNkJraVJrbTlhYzV5WGFsMVl1cXpnTHFjVlJrd01jNWRWb1F4cnFR?=
 =?utf-8?B?UWFsQ3h2WXJDVlJzc25ZVHNHMG9NTW5uTm0xeHhnMkNRMGJLQVhuaVdBWEU1?=
 =?utf-8?B?QjVxRllJT2N2dmxablppN0F5NVNjSE16L24vNWl4bmZVUWhVaWpOWWdtbW1I?=
 =?utf-8?B?L0VoWCsyM3pGUk4vaW1HYTlsZjhtNE9BdjNrVW5ZeGhpV3BoVmJoa0sxZW8y?=
 =?utf-8?B?WHV6Z05MVXU3Rmx6ZEp0SkxjRytvWGN3L0VtWEpxWkFZYWVQUVB5UmhyOHA5?=
 =?utf-8?B?OGJKK29lZTBGTWpVMXF6dy9icFdrTFY2RmVPV1d1cnJYMHJJalRpUXBzdkN6?=
 =?utf-8?B?NGhKNXN2eGlVTDJRNUd6aU5hUzYzZFZDTGsreno1TlFDdWdIdEFpc3JIZ1Ey?=
 =?utf-8?B?b2VZMlVnN0xTVUxjRGFCSjRGSG1NQTdIbld3eGU5MmFQVlFaWm5qWXdvVVkz?=
 =?utf-8?B?RlhEc1ViVGttaUFBOFo3VnhFQnk4S2F3S1RZK1lWOVF4YnJYUmNVeFJNdkdI?=
 =?utf-8?B?SldJeG5CaHN2Wml2S0RwSHVYY3BRQkpJVkZ6Z2hwUGh0bWh0dU1CMXNieENV?=
 =?utf-8?B?OEozc2FFLzZ5VG9zOEVhK2k5eVZHM1pGRFdra25XZzNZZ3JyQnJEdkRzVE9K?=
 =?utf-8?B?VFNDdi9uYThicjlKK0NsWWRSemFUSHB0bVhpSEJoOXJSdkRjeDhRSWxjQmow?=
 =?utf-8?B?Z1ZkTllvR2x2amNWbjUySGtjWVBiNm1Wd29LNjcvcHR5c29DbnFRSEJyWGRU?=
 =?utf-8?B?WkhJdi9IVFhqWDhjYk9EQWJaOXRSbDJDSTl5YjF6VXVEaDRMdzZ0YWZlc2JP?=
 =?utf-8?B?Z05LWGRaSzUyRGtOSWd3YjgyT2EzQ0VRNDU0TE5RYkF5K2Rad0VlR3Q3d3NO?=
 =?utf-8?B?WFplK1o1cWZNWEpZTEgrd2tSS1pISWNwZlduZytvWXVzbExXWXlNK3ZabDlN?=
 =?utf-8?B?blF6d0dSNERxRFZMT0lmeWVybXMwS2dLZUx5SzN0SmdMNEwvYTdZRWR5UTlU?=
 =?utf-8?B?Ym44MkZqakE2YzFkN1lJTmkyUzV4bGdkRkFaZU1rYXJvdy9LWE0vQlg1YnQ0?=
 =?utf-8?B?VThneVgxOE9jWWtQZ0MxQ3NTb0Q4WG9UczlxQjdLOG5CdHVLWlVUT2FXdHJh?=
 =?utf-8?B?K1Mrc0JPMEplRFdJM3N0dXVsS1JyWFJKazY0UDN5emZBQkEycERiYklOUVI3?=
 =?utf-8?B?Y1Q5a3hPc0pGMTFLSzYybEFudFQ4bGxFZXdTOHNOU2JLWmxLSW9QcENYSVJG?=
 =?utf-8?Q?nDTYCE0Qhl60RyQ1i1zzB4ehp?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: bcdbed50-0012-466a-fcf6-08dbc0258ae4
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 13:19:28.0656
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: kLBnKig+oajcwDrVe11hPwHSyaTXLpeRONfVstBzoipZbPesOsNc0SgusyU7jNccivRWbX0qxzlNZ+8OWsJSaA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8774

On 28.09.2023 14:57, Tamas K Lengyel wrote:
> On Thu, Sep 28, 2023 at 7:08 AM Roger Pau Monné <roger.pau@citrix.com> wrote:
>> On Thu, Sep 28, 2023 at 12:11:02PM +0200, Jan Beulich wrote:
>>> On 28.09.2023 11:51, Roger Pau Monné wrote:
>>>> On Thu, Sep 28, 2023 at 09:16:20AM +0200, Jan Beulich wrote:
>>>>> +        /*
>>>>> +         * Map the area into the guest. For simplicity specify the entire range
>>>>> +         * up to the end of the page: All the function uses it for is to check
>>>>> +         * that the range doesn't cross page boundaries. Having the area mapped
>>>>> +         * in the original domain implies that it fits there and therefore will
>>>>> +         * also fit in the clone.
>>>>> +         */
>>>>> +        offset = PAGE_OFFSET(d_area->map);
>>>>> +        ret = map_guest_area(cd_vcpu, gfn_to_gaddr(gfn) + offset,
>>>>> +                             PAGE_SIZE - offset, cd_area, NULL);
>>>>> +        if ( ret )
>>>>> +            return ret;
>>>>> +    }
>>>>> +    else
>>>>> +        cd_mfn = page_to_mfn(cd_area->pg);
>>>>> +
>>>>> +    copy_domain_page(cd_mfn, d_mfn);
>>>>
>>>> I think the page copy should be done only once, when the page is
>>>> populated on the child p2m.  Otherwise areas smaller than a page size
>>>> (like vpcu_time_info_t) that share the same page will get multiple
>>>> copies of the same data for no reason.
>>>
>>> I think you're right, but this would then be another issue in the original
>>> code that I merely didn't spot (and it's not just "copy for no reason",
>>> we'd actually corrupt what was put there before). IOW the copying needs to
>>> move ahead of map_guest_area() (or yet more precisely after the error
>>> checking for p2m->set_entry()), and in the original code it would have
>>> needed to live ahead of map_vcpu_info(). Once again I'd like Tamas to
>>> confirm (or otherwise) before making that change, though.
>>
>> Yes, it's already an issue in the current code.  I wonder whether
>> logic in the guest or Xen could malfunctions due to the fact that
>> map_vcpu_info() unconditionally sets evtchn_upcall_pending and injects
>> an event channel upcall, but the later call to copy_domain_page()
>> might unset evtchn_upcall_pending while the vector is already injected.
> 
> Sorry but I really don't follow the discussion here. My understanding
> was that map_vcpu_info, as its name suggests, maps the page. We use it
> to map a new page into that position in case the fork hasn't set it up
> yet but the parent has one. Then we follow with the copy from the
> parent so the page content is matching. If there is already a
> vcpu_info page in the fork, we just do the copy.
> 
> Now, if map_vcpu_info does more then mapping, then I don't know what
> it does, why it does it, and what happens if we skip it when the fork
> is reset for example. Is the suggestion to call it map_vcpu_info every
> time the page content is reset (ie after the copy)?

The vCPU info area (already prior to this series) and the two other areas
can be updated by the hypervisor at any time. Once one such area is
registered within a certain page, if another such area happens to live in
the same page, copying the entire page again would overwrite all updates
that might already have been made for the first area. IOW copying ought
to - imo - happen exactly once, when the new page is allocated.

As to map_vcpu_info() - just look at the function: It writes to the newly
registered area. Even if the function name says just "map", that's an
integral part of the operation. We can't just map it, but leave the area
untouched.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609710.948829 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyZ-0000Lh-Mz; Thu, 28 Sep 2023 13:22:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609710.948829; Thu, 28 Sep 2023 13:22:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyZ-0000Jq-Gc; Thu, 28 Sep 2023 13:22:43 +0000
Received: by outflank-mailman (input) for mailman id 609710;
 Thu, 28 Sep 2023 13:20:41 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwb-00087E-9K
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:41 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d11bd5ed-5e01-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 15:20:39 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 1BE9DB81C37;
 Thu, 28 Sep 2023 13:20:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 4A18DC433C9;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id 330D6E732C8;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d11bd5ed-5e01-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907236;
	bh=+p+3vHCOnUcUaEzZMikCulI1IPUTmdWXYayvngQD2c0=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=mzqRR96IqOZqBV5Yb0dgWU0g+ijF3CCcgQV8S2BnNG36CqililXyXW37lordws2Vw
	 bNf6j8BwbWRDMeAcl1HJOdx6hI377pUARbrjgx7ob7RjW3rDK9yC8WDNFe49rBrihM
	 SRax7GlmUHTBCuaX68KoMbgdJpg1g29quUvtPBJM71IxEEhlfArNI2+MLgFFFhp6ut
	 XGt2pYmn3y+gLvv0J+hT8UGnuqIt6mca8/uqCZe0Hm7ts6AedSzrn1CEAb/tIm6X7K
	 frhHjXYWRlVVztapw0snIidTYgTTytN8HP2qM9OzocYqcnEp6AZflrO0g9MJuc5r2A
	 6HJCN2L6WD34Q==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:27 +0200
Subject: [PATCH 02/15] hpet: Remove now superfluous sentinel element from
 ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-2-e59120fca9f9@samsung.com>
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=923; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=Cw9ABMFpnyv2zFyB+i4J8EYtdLPON6S7im56m99/UHA=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3cZP4/W+a6sX+4Mbxog+vl7vqsH0tWzrKp3
 dRTfVbxK26JAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93AAKCRC6l81St5ZB
 T9riDACUD/Jre8jcU5+OvZKiBvH9XjdFMaKU0co+i5vm3FNZOXTjdH7XvrWf6kbuzCSiDyCiJkt
 FfwX7rwRlRjmiTOkycbkZJcqJagqVg7uxyKIGWg3P79nnNJnjxx9YOiegks9BtVKXknXd9MO6Ux
 PleMQagWbT5PrsWC+oMdYZNVsHntVjOY0lE3WjXs/ZjSvYBZByjEuLvDehTeCxmCs2m5jgfqdq7
 Fnd8lWtAAQY+Um+ElRHzadglJc3Akj6O3oGUTjhj1ZgmfGw8oPgW4JfezIFSMZo+AJDJGk2b9HZ
 8j7uwkNQgJtwaH/Ty6v0XoEFtMcHHgmQFyzMoZzJfoIL5FTp4SB105XILABtwkECic2YKTT09QZ
 Qn5wS4xu4MPLFa4Jl6c8dVu8oH0XW2vZwYzLxsCAns1xaSjTneTH8mzdjL0Nynb1mzwEKekXUwd
 rquzFSuo8rALGrUnmLnGnAeyuf3mXIjz59ACyQlZQwNAgoxYbuktFTrpIxa5wy4CngcnM=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove the last empty element from hpet_table.

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/char/hpet.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/char/hpet.c b/drivers/char/hpet.c
index ee71376f174b..11f466fea5ed 100644
--- a/drivers/char/hpet.c
+++ b/drivers/char/hpet.c
@@ -727,8 +727,7 @@ static struct ctl_table hpet_table[] = {
 	 .maxlen = sizeof(int),
 	 .mode = 0644,
 	 .proc_handler = proc_dointvec,
-	 },
-	{}
+	}
 };
 
 static struct ctl_table_header *sysctl_header;

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609711.948836 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqya-0000V5-1t; Thu, 28 Sep 2023 13:22:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609711.948836; Thu, 28 Sep 2023 13:22:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyZ-0000RB-Rl; Thu, 28 Sep 2023 13:22:43 +0000
Received: by outflank-mailman (input) for mailman id 609711;
 Thu, 28 Sep 2023 13:20:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwb-000873-LV
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:41 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d116f6d1-5e01-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:20:40 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 6E3DE61C4E;
 Thu, 28 Sep 2023 13:20:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id BED95C193E8;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id A3DA3E732D1;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d116f6d1-5e01-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907236;
	bh=nAi5VbjqEwCdzEJp+fv2i3DZ2flYuZxXsPFVaGvUXhY=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=OCqp5Ov4BuszVW/bn2+B72ZJ/xR3YaoFzsxv1aU/Z/A6Yiz+vQBMRZYu9gRm50imR
	 K11dYBBDgVq7Y+4mkAEjfyc9Mr2Vddg80rfjalPbMOLCeYjxvJUtGTGjCtMsQDIyZG
	 69ACgpYY7cXbxiYCo8BeXxnyR6MXKMP9H8DMEu8plDx2Klk4byrQhBa6ZGR4w53klP
	 15pmoFTU9JD5o+tjgr5bW2Ty0Kf+493NXvptiLCb5TLwX7ifpFHe46htbDlZMKsRft
	 zFi2JB642EhNoMROZ50HGgRbYl+dJbDORovyFGMJkDrtkq9P9uVJgrhrn2mVRPayZD
	 w/mbiY4QoFQhQ==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:32 +0200
Subject: [PATCH 07/15] macintosh: Remove the now superfluous sentinel
 element from ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-7-e59120fca9f9@samsung.com>
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=964; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=ZdDGNSOnPHmccRg9DswRbcjrpwllnv7treH59axwgKs=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3dFNTsUUB9JSBv/bi9fMcZELcv/Pd6Ielps
 Tv0fYg6ZTyJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93QAKCRC6l81St5ZB
 T86TDACD/olsUJCMaYNGhUK8fOC4ygULgoETxczjsUrJ3FqFvf/W9eYaJd8QqGpcMOYjw1h96ab
 o9zfYcNrx79mUCqL0BoqwuQuu11iB7mdcubin7N6ctOUnQ8WGw8URbiLP3jjYc91vkQPgtLk2Mk
 wvNRnAFG9xEe1DMlr4I7VrAIvMnA/9NYZ+Qw9UvC2pl8wNvR52krqU2VCn6kBWoexdWZws8BTQi
 jxm4KCrIsTy+GCeGsGQLYA2bO8Hc1og/PrMiZ0UzRkQAqsoVN3pdMsPMw9cbOYg+DdC9+C1sfp6
 Bl28JzSUEdBKn/gw5xOg2CuQYrwFvPIIKyQ5PxT7cnZcGIF8XtUJLAhQ8fbQ+lGxfqRvNEJPWpK
 FkouzOuPr0ghUqJ7B4QCGC+U0ubZrPdVrUHvniAcEBtCff5KXZJOiMn45G46hZB4ZKH91Egk66L
 7ibjw96S82RLY88IHUBdKyX4xWoP14f8vilMOHLoR27kPe4oc4fVlOZcjQtA3ARSiai4o=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel from mac_hid_files

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/macintosh/mac_hid.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/macintosh/mac_hid.c b/drivers/macintosh/mac_hid.c
index d8c4d5664145..5a228c7d9aeb 100644
--- a/drivers/macintosh/mac_hid.c
+++ b/drivers/macintosh/mac_hid.c
@@ -235,8 +235,7 @@ static struct ctl_table mac_hid_files[] = {
 		.maxlen		= sizeof(int),
 		.mode		= 0644,
 		.proc_handler	= proc_dointvec,
-	},
-	{ }
+	}
 };
 
 static struct ctl_table_header *mac_hid_sysctl_header;

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609709.948823 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyZ-0000Et-BG; Thu, 28 Sep 2023 13:22:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609709.948823; Thu, 28 Sep 2023 13:22:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyZ-0000DA-73; Thu, 28 Sep 2023 13:22:43 +0000
Received: by outflank-mailman (input) for mailman id 609709;
 Thu, 28 Sep 2023 13:20:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwa-000873-LG
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:40 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d1731376-5e01-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:20:39 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 05D8CB81C28;
 Thu, 28 Sep 2023 13:20:39 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id DE664C4E66A;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id C56BAE732D5;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d1731376-5e01-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907237;
	bh=zIDxsd9iCOvFOj9DYvrPAPNadW1ey6fN+cIKsMZCqhc=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=pQB4GXSp6WbCB4GG53qnSlwP+fh2gdR7EMlxk5vQZAtpUkEriTJChfKgxb+SceJ+x
	 gYWCN9vmuPsc9w9o83mac0IwHQy4N6UAZ5iKgsw1vTE2QEmijUO8OTQX9oZZkHVELb
	 k6MqhAkKqkj4LTUhjKFdxnLINC+b1CG9SjDGYZcMbOmd6c/DeXAJMvu4aMep2qu4IB
	 Apy++h4Zox4ImHAmVEt753bty94AHq0BuCjLHodEX77G4HBt7c0M7b5m6GEorYnKxB
	 u+tdfpegbbi7v8HcIh5gnn82sM/qztK3Wxk0N9ChwawW56/HvAQhjku8AZ7ySUMA+/
	 4ZH7vD5NxNQcA==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:33 +0200
Subject: [PATCH 08/15] infiniband: Remove the now superfluous sentinel
 element from ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-8-e59120fca9f9@samsung.com>
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=1398;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=oMVRgRy513gbjpJ/8gwXhcFvr0Ll4WG0wpO8gVUy5SI=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3evpOp/5vnYyEzJdxXZ21uRM3BLLBrF9iet
 6magp65Z8CJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93gAKCRC6l81St5ZB
 TyMpC/9vIPQcmOkywGCjv6hB2J+JNumv5GkIZJVtZPgvAg/hlP+WJUP4Xiq8mnVZ+z/ct5AeldL
 adjJKMeeGFJgbYiNGurLY6hsGZ16i5ASdNvVUppbOlhDPfHOHF2HfaJdbQ0laRpGROkZnN0YMum
 RZZPsHt+esqZvTZm3ZPZ5g8tuvbrngmHfcEwkGqCRYTk3HPxIT+IqwTfkKcTDXtrjWRD0hyRQTJ
 O7RtIfDK2Cr+VjIm9dIE08jgnQzbEcKCfot2tHi2ncOeTnsEjyF5v+HrAeAx2Z9AOA61TBQJ1OM
 zIfqU45B0jYFpyxPzvNSMvGNipoc8HbzsxzCseMIJ2QCIgwQW/gzh7/WDvNZMtFlmvXlKC4Puxt
 d0apigmOn9JdY6eAG9E+Bzix/Mv1Tg1NKLdAFJm80g6Q2zoCz6H3B0Llq5gC5hRDfFZYbc1qSkK
 W+txzQYUtii1iMXK9mtF7hn+t/HUfLOdmAsDy67zTTpjFr6uw5KigDBqR/a7fSmIUspYU=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel from iwcm_ctl_table and ucma_ctl_table

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/infiniband/core/iwcm.c | 3 +--
 drivers/infiniband/core/ucma.c | 3 +--
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/infiniband/core/iwcm.c b/drivers/infiniband/core/iwcm.c
index 2b47073c61a6..fefb9ae75789 100644
--- a/drivers/infiniband/core/iwcm.c
+++ b/drivers/infiniband/core/iwcm.c
@@ -110,8 +110,7 @@ static struct ctl_table iwcm_ctl_table[] = {
 		.maxlen		= sizeof(default_backlog),
 		.mode		= 0644,
 		.proc_handler	= proc_dointvec,
-	},
-	{ }
+	}
 };
 
 /*
diff --git a/drivers/infiniband/core/ucma.c b/drivers/infiniband/core/ucma.c
index bf42650f125b..92ad24ddf12a 100644
--- a/drivers/infiniband/core/ucma.c
+++ b/drivers/infiniband/core/ucma.c
@@ -70,8 +70,7 @@ static struct ctl_table ucma_ctl_table[] = {
 		.maxlen		= sizeof max_backlog,
 		.mode		= 0644,
 		.proc_handler	= proc_dointvec,
-	},
-	{ }
+	}
 };
 
 struct ucma_file {

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609708.948818 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyZ-0000C4-1z; Thu, 28 Sep 2023 13:22:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609708.948818; Thu, 28 Sep 2023 13:22:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyY-0000Bx-V7; Thu, 28 Sep 2023 13:22:42 +0000
Received: by outflank-mailman (input) for mailman id 609708;
 Thu, 28 Sep 2023 13:20:40 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwZ-000873-Vc
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:39 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d0669bfb-5e01-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:20:38 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 522D461C50;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 3C67AC433CB;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id 1CF38E732CF;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d0669bfb-5e01-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907236;
	bh=j/2eYg//PJ1GbwZhUAaOz18f7AbRQ4O+NNbYuKt3mq4=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=WRmGiG4AsourgR8PePRCUHkmrHTjGa0GLOwLlRslD9y6Gxglwb/sKdeaYMIiM+m2U
	 HCEzm7JFG1uUimaSxcCst+jqGOAk+LPd5ofcZjp7Dr/INDF6+dXWJzwECnaIlHFcRw
	 LEZBmRJGbn8CUOMTRZ7oRD405kgYVjEhh4TF32uTBtIqzoTuo9rHeIERNGqM3IsJTd
	 E3AOMsUDv9ORWkadDdcnKmhR9zz5DqiW7MH0ddnh45htLMFfazKbEwb6eN+rYXmR1r
	 qDAClZUoaj39Nqk9YphBEF7rdkqlcU4nn2uOKk0jMqKnWUeeRkM0qbnycd10U9Ld3x
	 iYyDOHPWNIO8w==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:26 +0200
Subject: [PATCH 01/15] cdrom: Remove now superfluous sentinel element from
 ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-1-e59120fca9f9@samsung.com>
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=944; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=qSsthXDIpINcD2xITRy2TOv8R22x0qMRyMvqjqljpm0=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3bxBTXVZalX2OxDj+67GtOqe8IxIGJwSLF1
 iLnIskFGxCJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV92wAKCRC6l81St5ZB
 T9hZC/wJ7EgDM6vrFYYmNrYQRkQQUSj4jjafOUPMhsZdNSqZu4kVh8xyDtcKgxhctnq+INR87Nr
 dwm3eyWcssi6Zi3rFSiOI9vdZ2zESFY5OJ4dNUGBRAofgcVpLAvu4ZYQeXaCx7XzSIlzsCyd/dg
 +Ym3KCHhaY2KSd0wJE8MuZN8/J6RxSwT1SyXgnBMjieGNWnw/mxbi7RnSHxARqjAMrAacvr1pUr
 vqS9lxYeOv5aKInqTkx7sBu2iXx1/kgQGA7MNqvKgrgooVkICokoKPgcDvDR1nWTDzrnUzKEAa4
 LroyVmn9iYYNuuXhhBl1BVgWeXVdkN7/r1r69wCAZWcVaadyFOoMNLxRsOvwsw6kynVTfbNOo+4
 OxoS60XgqKVygBBx6urNukqqtiEYIzpDpU/QU00wUDSoHwIOyq4geKJEjTui+QORzF2/rfMdAii
 IGAGzQM4oARjvwY26lxvyJdVBd4NtwRMk5g7yxIYVwfBC4G3Y6+/HFF2COHYzGYBEU5es=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel element from cdrom_table

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/cdrom/cdrom.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c
index cc2839805983..451907ade389 100644
--- a/drivers/cdrom/cdrom.c
+++ b/drivers/cdrom/cdrom.c
@@ -3654,8 +3654,7 @@ static struct ctl_table cdrom_table[] = {
 		.maxlen		= sizeof(int),
 		.mode		= 0644,
 		.proc_handler	= cdrom_sysctl_handler
-	},
-	{ }
+	}
 };
 static struct ctl_table_header *cdrom_sysctl_header;
 

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609713.948844 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqya-0000aV-GI; Thu, 28 Sep 2023 13:22:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609713.948844; Thu, 28 Sep 2023 13:22:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqya-0000ZM-62; Thu, 28 Sep 2023 13:22:44 +0000
Received: by outflank-mailman (input) for mailman id 609713;
 Thu, 28 Sep 2023 13:20:42 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwb-00087E-VY
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:41 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d14bc883-5e01-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 15:20:39 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id BE62BB81C4C;
 Thu, 28 Sep 2023 13:20:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id A692BC116D2;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id 8C5ADE732D4;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d14bc883-5e01-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907236;
	bh=037Ze6Oh3D2awDcZtKZjRWRmyXeBya+W4CX5rPaqzIo=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=pU3Eq0ijKK73kzmdJ+ylSZryDoz7esCxxiGEWFn0fUyU2pbYj+g3oDo4B2D//OLAZ
	 EAuJqWXLHJcfP/sWHMQ+nq2gXHsF3pmrxsknsc8ipoY9K/BN0UfqX/9i1kOMLV1Gfq
	 UrRqoY6xJOCrvcixf/iiMEBJWk3MIbjU3FQ5Z8bG9O+7EdG9SjPJNzHDhTKSjKYYEP
	 aZBghfVv5ZG9DBNwn9SCgRA9eCm3HTtKRCGg/ekMG4BW0eAP/SYED43uqw/Y2wcHkh
	 nmRagNQKjRUwuozNh1Eh3QCSddVdmyGwZjF7qfCJEWoCpf/ObEWrgp1Z01q+gSHcuI
	 G/cDFVqhlSkVQ==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:31 +0200
Subject: [PATCH 06/15] parport: Remove the now superfluous sentinel element
 from ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-6-e59120fca9f9@samsung.com>
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=4351;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=WChTYX7s4/WvuQm5SyjCReq4OLhKQc/jMANe9UKK8MA=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3domrs1Rr8nCLu3I2SozBNrKydcRCbph2hu
 qHdrIVsBJGJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93QAKCRC6l81St5ZB
 T03WDACBmWcNFPTto1zM9apZjylAnDoNPMsUznqyxFf8kY2U9iRHXbIxgeTlIPEo7qZMmu1m5/J
 sX1nwnUwAdUaji0Q4eLEKLDGEOqU473kX4ysJaOf4v81JMRwF5WvaiFXFgI+XQZI5icxGY+mxuG
 iSH+hJofoKo2WdHnnDV+xfcFS5Q7F32a0wY705vontJcNmQsaupkws8MxZar0hCVXyMRkmqk8O2
 8GrB+kL0MeUKc5ewZtAKuWPCuKSSWXRBOAYXFE9xHFAFAuEucyF++YrG+hYvcLvyHiHl0KXSlft
 AqUwfJSnjFw/kMt/PkFeXArBwIoc1O+dhwm1NflO2GlT+yNZ2I1mOMZSZlvJX6nedNWzXoXlHPd
 +RdWZoKt3uKvrhG2SzZ87drY9N7egpXbrqtlklIO0eBmsm2niO6RJX0PariUYYv6Ca2FPBnsj2o
 4WEP1Kpo3C5EbdAOfNZiLWtOc0wOabRtggAZzBVqo0lPpwIr5zxOU1TLAXL8njXS696Dg=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove the unneeded ctl_tables that were used to register intermediate
parport directories; only the path is needed at this point. From
parport_device_sysctl_table we removed: devices_root_dir, port_dir,
parport_dir and dev_dir. From parport_default_sysctl_table we removed:
default_dir, parport_dir and dev_dir. Reduce the size by one of the
ctl_table arrays that were not removed

Assign different sizes to the vars array in parport_sysctl_table
depending on CONFIG_PARPORT_1284; this is necessary now that the sysctl
register function uses ARRAY_SIZE to calculate the elements within.
Remove the sentinel element from parport_sysctl_template,
parport_device_sysctl_table and parport_default_sysctl_table.

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/parport/procfs.c | 42 ++++++++++++++++++------------------------
 1 file changed, 18 insertions(+), 24 deletions(-)

diff --git a/drivers/parport/procfs.c b/drivers/parport/procfs.c
index 4e5b972c3e26..4118b3e52223 100644
--- a/drivers/parport/procfs.c
+++ b/drivers/parport/procfs.c
@@ -259,8 +259,12 @@ PARPORT_MAX_SPINTIME_VALUE;
 struct parport_sysctl_table {
 	struct ctl_table_header *port_header;
 	struct ctl_table_header *devices_header;
-	struct ctl_table vars[12];
-	struct ctl_table device_dir[2];
+#ifdef CONFIG_PARPORT_1284
+	struct ctl_table vars[10];
+#else
+	struct ctl_table vars[5];
+#endif /* IEEE 1284 support */
+	struct ctl_table device_dir[1];
 };
 
 static const struct parport_sysctl_table parport_sysctl_template = {
@@ -303,9 +307,9 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.maxlen		= 0,
 			.mode		= 0444,
 			.proc_handler	= do_hardware_modes
-		},
+		}
 #ifdef CONFIG_PARPORT_1284
-		{
+		, {
 			.procname	= "autoprobe",
 			.data		= NULL,
 			.maxlen		= 0,
@@ -339,9 +343,8 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.maxlen		= 0,
 			.mode		= 0444,
 			.proc_handler	= do_autoprobe
-		},
+		}
 #endif /* IEEE 1284 support */
-		{}
 	},
 	{
 		{
@@ -350,20 +353,15 @@ static const struct parport_sysctl_table parport_sysctl_template = {
 			.maxlen		= 0,
 			.mode		= 0444,
 			.proc_handler	= do_active_device
-		},
-		{}
+		}
 	},
 };
 
 struct parport_device_sysctl_table
 {
 	struct ctl_table_header *sysctl_header;
-	struct ctl_table vars[2];
-	struct ctl_table device_dir[2];
-	struct ctl_table devices_root_dir[2];
-	struct ctl_table port_dir[2];
-	struct ctl_table parport_dir[2];
-	struct ctl_table dev_dir[2];
+	struct ctl_table vars[1];
+	struct ctl_table device_dir[1];
 };
 
 static const struct parport_device_sysctl_table
@@ -378,8 +376,7 @@ parport_device_sysctl_template = {
 			.proc_handler	= proc_doulongvec_ms_jiffies_minmax,
 			.extra1		= (void*) &parport_min_timeslice_value,
 			.extra2		= (void*) &parport_max_timeslice_value
-		},
-		{}
+		}
 	},
 	{
 		{
@@ -387,18 +384,14 @@ parport_device_sysctl_template = {
 			.data		= NULL,
 			.maxlen		= 0,
 			.mode		= 0555,
-		},
-		{}
+		}
 	}
 };
 
 struct parport_default_sysctl_table
 {
 	struct ctl_table_header *sysctl_header;
-	struct ctl_table vars[3];
-	struct ctl_table default_dir[2];
-	struct ctl_table parport_dir[2];
-	struct ctl_table dev_dir[2];
+	struct ctl_table vars[2];
 };
 
 static struct parport_default_sysctl_table
@@ -422,8 +415,7 @@ parport_default_sysctl_table = {
 			.proc_handler	= proc_dointvec_minmax,
 			.extra1		= (void*) &parport_min_spintime_value,
 			.extra2		= (void*) &parport_max_spintime_value
-		},
-		{}
+		}
 	}
 };
 
@@ -443,7 +435,9 @@ int parport_proc_register(struct parport *port)
 	t->vars[0].data = &port->spintime;
 	for (i = 0; i < 5; i++) {
 		t->vars[i].extra1 = port;
+#ifdef CONFIG_PARPORT_1284
 		t->vars[5 + i].extra2 = &port->probe_info[i];
+#endif /* IEEE 1284 support */
 	}
 
 	port_name_len = strnlen(port->name, PARPORT_NAME_MAX_LEN);

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609714.948848 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqya-0000in-Q3; Thu, 28 Sep 2023 13:22:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609714.948848; Thu, 28 Sep 2023 13:22:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqya-0000fo-IL; Thu, 28 Sep 2023 13:22:44 +0000
Received: by outflank-mailman (input) for mailman id 609714;
 Thu, 28 Sep 2023 13:20:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwc-000873-Lh
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:42 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d226ec99-5e01-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:20:41 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 23E9A61CB6;
 Thu, 28 Sep 2023 13:20:39 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 694BAC32792;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id 505F0E732D7;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d226ec99-5e01-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907237;
	bh=qEbYGqUMnAni5CU3u1xnFGdb1FPLHz8knsrTsoBqy2s=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=EHLQaBcOwLswCBdGO23q6TptXW6rEuRsuyDDju9YDgRwtTJAFZW1glERTx2pWCUDF
	 tOjVoIbCmJcAzVL9/nTdUYWAUEoFOLTZaeqDmRP7/hYb80DQCpMkK431kVYV4MtfFt
	 nuFRCQTcKbRTwk6aFUMiInxZgGf9g5PN30MfE6Qn8BPKnhdkF5OHjDHyNHlefR16a7
	 kovNGZEJ82o8HzdaJTXh1lfiwnQ7miRpMa5No/lMwaB3fxzvkpo62uyXd+OJ7Lamtz
	 GFU10q1sSUCvk3aoq4J6ku2lDemCv1JH5wQAVTiONg+P8BHZEPDbPLIxqj2PRpLtAJ
	 88YnEQ7UZgt5Q==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:39 +0200
Subject: [PATCH 14/15] hyper-v/azure: Remove now superfluous sentinel
 element from ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id: =?utf-8?q?=3C20230928-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=
 =?utf-8?q?rs-v1-14-e59120fca9f9=40samsung=2Ecom=3E?=
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=961; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=4F2+ffa3GXhFGEYppFEHm2Mtt4QSfNMs1+9vGf3WJxo=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3f7bbg+0UaO56WXQOXlIq7JJTQoGGJcP1ef
 /0I3/y2l9yJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93wAKCRC6l81St5ZB
 T4FKC/9a2qdj27UKReYhOR67fov89RkcBAc0SAtrPXpSnnrATI2eCpgilBgK1TJnsd0vUJGn0v3
 HjutmUfnoXup+S3WT9l3Slop3hFazPlp4SGiLhCk1S23c/OlDwWO3IiAx8fA32NnNESs+MiBioa
 mXZu1jueoTISV7491NrBE5AqSzUD6+hA+gD6YfMNt4IFj5W3Hgy97oNrKmbVPktauNusnunZZ3F
 o192QRllKpTe1YlCVbYhL7flWa+1/barEVZyZWVtxgNuB0P57zgVImqQ8XQmCxmECx8AD0wq5Ks
 O59WWgdwa2mnVSl6yc2foQ8tNalHJ38XJAfBwByhMtcPnw4jsyyRTs/yPy24cW1Ht3s4r+RdWr1
 SWhzfXIIcW9zXul6wENWenDvXgVnHgPonLkKr/3w7ZFnRaLRczi94+a9SLqVIsthKPjIE+3Oj1E
 nOgzwMEh2XX72oDthoVuqB9I+Pl7Reo4jpwdDfbqp1O6tARRauhhozGbiE+umxbAGQwJo=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel from hv_ctl_table

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/hv/hv_common.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/hv/hv_common.c b/drivers/hv/hv_common.c
index ccad7bca3fd3..bc7d678030aa 100644
--- a/drivers/hv/hv_common.c
+++ b/drivers/hv/hv_common.c
@@ -147,8 +147,7 @@ static struct ctl_table hv_ctl_table[] = {
 		.proc_handler	= proc_dointvec_minmax,
 		.extra1		= SYSCTL_ZERO,
 		.extra2		= SYSCTL_ONE
-	},
-	{}
+	}
 };
 
 static int hv_die_panic_notify_crash(struct notifier_block *self,

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609717.948868 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyc-0001DW-40; Thu, 28 Sep 2023 13:22:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609717.948868; Thu, 28 Sep 2023 13:22:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyb-00018y-QI; Thu, 28 Sep 2023 13:22:45 +0000
Received: by outflank-mailman (input) for mailman id 609717;
 Thu, 28 Sep 2023 13:20:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwd-000873-Ls
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:43 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d261a30e-5e01-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:20:42 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 116A061CD2;
 Thu, 28 Sep 2023 13:20:39 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 59697C4E761;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id 3C47FE732D5;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d261a30e-5e01-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907237;
	bh=fWtGC2peWHoKZ6N8AA50X9AIZEedAkuMckI2hu3M+U8=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=HIAjbYFv4yxMx+1blkLH7800NvQbuHe67EKLPcXMMpt8ZVc/GFy+MaZ1kf2teY1qs
	 KFuESLa7oGw6nZPYsv4OpMFTn5MxUK5Rp92mDTL4BDCt3MR8X7/KPccR3rwlFpdf+b
	 UIbxgYyL3XBIYzWeR7cbfa6S2k6h2N7xXqv39yha+rd8fqa6WdLyWNcOpqJmjZ6RfJ
	 ko0frpUTijee8fGpA3VLtsgOjQjXg7iXO66WGuwHnjSmUGSUsT3Gr1lekS+rvE9+Pp
	 mMhIwQStpiSvi2lr3yShM/tIwIvbrGWup26dfEIEr8kG6EFZgtScPTFy7fKpKf+MX9
	 tijo/7GE3LdRg==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:38 +0200
Subject: [PATCH 13/15] raid: Remove now superfluous sentinel element from
 ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id: =?utf-8?q?=3C20230928-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=
 =?utf-8?q?rs-v1-13-e59120fca9f9=40samsung=2Ecom=3E?=
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=881; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=hLoUxHXjHICsfJhbjVPlPY534xjBTCrGFUyV0qQFO8k=;
 b=owEB7AET/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3fSmb3JiEBomhDsQ0pRhV92J1BiKariV8CH
 I/W/L1q3F+JAbIEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93wAKCRC6l81St5ZB
 T8aLC/jP8MCZa3PEhuvknQGR+TNEMb9/sNQf49cF1k/BAyzDsFzY66dheGN5WfDfw9gFPH1BAGC
 mYDHGZ/Ef83bVTjOKxWIr5FY1xZPPiq8Lj0IOUY885EE0Vqta+zhznwJy48L+DavP+QTdcdzNGr
 /SjfAg1wQH7UoWdImUsYYFEZwFYdTasgOIq+kHYD1dVl5/7YQ48ksc/ZBUPKcOZTnbASa2XLJ6U
 8eZSJDcHZNJFf40edYxbXObiufbuPYN7qxohVYR8Dss/si8enpUhlp2t4KSgpZoXixNFVdhqTfc
 lXP1vgHjnT6dLILhSOYJBI/nvGtjo2UiIbRio9vQ1bdy6IbVkv3oytkBjNrblyOcP2EGiM2SbL2
 xiSaTb8iKFmbrr4OP5Ub4xjOTfInkaQjhKuLLcsfJFTqkEpjbjT88xxGZiSKrJnKK5n4vj2tTgw
 CYz/Ud2OnEk44McFYHvFQhN+Kfn87BbWv6vLXMouD4AmlbqVVp4Ri7xfLqVqEIVrBvjg==
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel from raid_table

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/md/md.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/md/md.c b/drivers/md/md.c
index a104a025084d..3866d8f754a0 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -304,8 +304,7 @@ static struct ctl_table raid_table[] = {
 		.maxlen		= sizeof(int),
 		.mode		= S_IRUGO|S_IWUSR,
 		.proc_handler	= proc_dointvec,
-	},
-	{ }
+	}
 };
 
 static int start_readonly;

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609716.948858 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyb-0000wb-GB; Thu, 28 Sep 2023 13:22:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609716.948858; Thu, 28 Sep 2023 13:22:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyb-0000rg-3L; Thu, 28 Sep 2023 13:22:45 +0000
Received: by outflank-mailman (input) for mailman id 609716;
 Thu, 28 Sep 2023 13:20:43 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwc-00087E-Vn
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:43 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d0416a6c-5e01-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 15:20:38 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 8693D61B7D;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 22F39C433C7;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id E9633E732D0;
 Thu, 28 Sep 2023 13:20:35 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d0416a6c-5e01-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907236;
	bh=/ReCWJpDrK72V/iL+mSIF6lFswNe6gbu22VtPYv0d5U=;
	h=From:Subject:Date:To:Cc:Reply-To:From;
	b=scDsG9Gnm4LK1PUQmm/g4t7Yvsh9MWkqBLOTgxKwSv1rX0HENZ99rl9HkYmZid4Zb
	 bIn8GQ4wV7+unUrupqZjboa6kgSdyT8476xXJ1nJX2i90M1s3RHtRZaS2HFXL81A9a
	 dySqhoGIT7lwggto3jmjfRopEK9uYgDdirPJaa3DkpVDer/E0WzANyQHvbwBrUtIUq
	 HCabb4Y0YRwY1SDpgpJKhfjkadV/eSRTJmhHg6sTlZZqgnNBb+A4itWQ8FqDIa0qTt
	 EBJorY1Q3z4tLv5PiZ71YL8SHfoeNT8QNK01uMcakd4pQPkPR4oX5F/BTOP1gOobk2
	 t07n0M7IKCT4A==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Subject: [PATCH 00/15] sysctl: Remove sentinel elements from drivers
Date: Thu, 28 Sep 2023 15:21:25 +0200
Message-Id:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
X-B4-Tracking: v=1; b=H4sIANV9FWUC/x3NQQrCMBBG4auUWRuIqaj1KiIhJH/rSNOWmRIsp
 Xc3uPw27+2kEIbSo9lJUFh5nirOp4biO0wDDKdqcta1tnM38wmD0U3jOnpBngs88rJuHiOyT8I
 Foqa37aW7umDTPVJNLYKev//N83UcPwjXVN92AAAA
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=10065;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=fRUi88e8Yrfs5rdUzu1POWjh/qONRBnWNcqSlQXmGgc=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3bNyb1VxuwdtMXcfZEsTF6o4ERzgUMNE5M8
 lqmBKMN3YiJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV92wAKCRC6l81St5ZB
 T4AtC/4mhShg1QMnei1FJl3JIv1Quh127jI/+NM0CoRgmiCk+zTJLLlylW6VOYX1i8V8pr9JOo4
 vny6+C4lgliXTc+PohQ77bmfuM/TDLZeVOnKnuIrsJWYwW4Kf8EshmF7Z+S3HzYBDHWn4jC6r7l
 Pffc4T8MVQMtDD2xLl3mDsjmiCLck/UiOBLcpNFd5gKKLiICG33x/vmFvDN5Bt01LeEe45GD4NG
 O1uuxbZLByRu2Nxs5hSMK+WstfoyThZ9klbHQdSyFzlRNVbZsJhNV/35qYf8JSInt63K/fwVivN
 pftbvCU/Yu7xhzpGL0OcEQMhW+TwzbRh72FP7LoRbW9Y+KWfogwMPIdWHWSW/yU4Grw1DWHEU+I
 lI8DJ789JvZR3iYix0NrBVRczvxeopZSBMLSbu4KcByTnJm5/egA6gwRDwR/mDO8qZV41BwmsKH
 ffucunTJ6gTNc87dnIILxwbb13f7weZvk5go6QdqwvuIgXwv2hZyR90mGRyNdtFobBzT8=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

What?
These commits remove the sentinel element (last empty element) from the
sysctl arrays of all the files under the "drivers/" directory that use a
sysctl array for registration. The merging of the preparation patches
(in https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)
to mainline allows us to just remove sentinel elements without changing
behavior (more info here [1]).

These commits are part of a bigger set (here
https://github.com/Joelgranados/linux/tree/tag/sysctl_remove_empty_elem_V4)
that remove the ctl_table sentinel. Make the review process easier by
chunking the commits into manageable pieces. Each chunk can be reviewed
separately without noise from parallel sets.

Now that the architecture chunk has been mostly reviewed [6], we send
the "drivers/" directory. Once this one is done, it will be follwed by
"fs/*", "kernel/*", "net/*" and miscellaneous. The final set will remove
the unneeded check for ->procname == NULL.

Why?
By removing the sysctl sentinel elements we avoid kernel bloat as
ctl_table arrays get moved out of kernel/sysctl.c into their own
respective subsystems. This move was started long ago to avoid merge
conflicts; the sentinel removal bit came after Mathew Wilcox suggested
it to avoid bloating the kernel by one element as arrays moved out. This
patchset will reduce the overall build time size of the kernel and run
time memory bloat by about ~64 bytes per declared ctl_table array. I
have consolidated some links that shed light on the history of this
effort [2].

Testing:
* Ran sysctl selftests (./tools/testing/selftests/sysctl/sysctl.sh)
* Ran this through 0-day with no errors or warnings

Size saving after removing all sentinels:
  These are the bytes that we save after removing all the sentinels
  (this plus all the other chunks). I included them to get an idea of
  how much memory we are talking about.
    * bloat-o-meter:
        - The "yesall" configuration results save 9158 bytes
          https://lore.kernel.org/all/20230621091000.424843-1-j.granados@samsung.com/
        - The "tiny" config + CONFIG_SYSCTL save 1215 bytes
          https://lore.kernel.org/all/20230809105006.1198165-1-j.granados@samsung.com/
    * memory usage:
        In memory savings are measured to be 7296 bytes. (here is how to
        measure [3])

Size saving after this patchset:
    * bloat-o-meter
        - The "yesall" config saves 2432 bytes [4]
        - The "tiny" config saves 64 bytes [5]
    * memory usage:
        In this case there were no bytes saved because I do not have any
        of the drivers in the patch. To measure it comment the printk in
        `new_dir` and uncomment the if conditional in `new_links` [3].

Comments/feedback greatly appreciated

Best
Joel

[1]
We are able to remove a sentinel table without behavioral change by
introducing a table_size argument in the same place where procname is
checked for NULL. The idea is for it to keep stopping when it hits
->procname == NULL, while the sentinel is still present. And when the
sentinel is removed, it will stop on the table_size. You can go to 
(https://lore.kernel.org/all/20230809105006.1198165-1-j.granados@samsung.com/)
for more information.

[2]
Links Related to the ctl_table sentinel removal:
* Good summary from Luis sent with the "pull request" for the
  preparation patches.
  https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/
* Another very good summary from Luis.
  https://lore.kernel.org/all/ZMFizKFkVxUFtSqa@bombadil.infradead.org/
* This is a patch set that replaces register_sysctl_table with register_sysctl
  https://lore.kernel.org/all/20230302204612.782387-1-mcgrof@kernel.org/
* Patch set to deprecate register_sysctl_paths()
  https://lore.kernel.org/all/20230302202826.776286-1-mcgrof@kernel.org/
* Here there is an explicit expectation for the removal of the sentinel element.
  https://lore.kernel.org/all/20230321130908.6972-1-frank.li@vivo.com
* The "ARRAY_SIZE" approach was mentioned (proposed?) in this thread
  https://lore.kernel.org/all/20220220060626.15885-1-tangmeng@uniontech.com

[3]
To measure the in memory savings apply this on top of this patchset.

"
diff --git a/fs/proc/proc_sysctl.c b/fs/proc/proc_sysctl.c
index c88854df0b62..e0073a627bac 100644
--- a/fs/proc/proc_sysctl.c
+++ b/fs/proc/proc_sysctl.c
@@ -976,6 +976,8 @@ static struct ctl_dir *new_dir(struct ctl_table_set *set,
        table[0].procname = new_name;
        table[0].mode = S_IFDIR|S_IRUGO|S_IXUGO;
        init_header(&new->header, set->dir.header.root, set, node, table, 1);
+       // Counts additional sentinel used for each new dir.
+       printk("%ld sysctl saved mem kzalloc \n", sizeof(struct ctl_table));

        return new;
 }
@@ -1199,6 +1201,9 @@ static struct ctl_table_header *new_links(struct ctl_dir *dir, struct ctl_table_
                link_name += len;
                link++;
        }
+       // Counts additional sentinel used for each new registration
+       //if ((head->ctl_table + head->ctl_table_size)->procname)
+               printk("%ld sysctl saved mem kzalloc \n", sizeof(struct ctl_table));
        init_header(links, dir->header.root, dir->header.set, node, link_table,
                    head->ctl_table_size);
        links->nreg = nr_entries;
"
and then run the following bash script in the kernel:

accum=0
for n in $(dmesg | grep kzalloc | awk '{print $3}') ; do
    echo $n
    accum=$(calc "$accum + $n")
done
echo $accum

[4]
add/remove: 0/0 grow/shrink: 0/21 up/down: 0/-2432 (-2432)
Function                                     old     new   delta
xpc_sys_xpc_hb                               192     128     -64
xpc_sys_xpc                                  128      64     -64
vrf_table                                    128      64     -64
ucma_ctl_table                               128      64     -64
tty_table                                    192     128     -64
sg_sysctls                                   128      64     -64
scsi_table                                   128      64     -64
random_table                                 448     384     -64
raid_table                                   192     128     -64
oa_table                                     192     128     -64
mac_hid_files                                256     192     -64
iwcm_ctl_table                               128      64     -64
ipmi_table                                   128      64     -64
hv_ctl_table                                 128      64     -64
hpet_table                                   128      64     -64
firmware_config_table                        192     128     -64
cdrom_table                                  448     384     -64
balloon_table                                128      64     -64
parport_sysctl_template                      912     720    -192
parport_default_sysctl_table                 584     136    -448
parport_device_sysctl_template               776     136    -640
Total: Before=429940038, After=429937606, chg -0.00%

[5]
add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-64 (-64)
Function                                     old     new   delta
random_table                                 448     384     -64
Total: Before=1885527, After=1885463, chg -0.00%

[6] https://lore.kernel.org/all/20230913-jag-sysctl_remove_empty_elem_arch-v2-0-d1bd13a29bae@samsung.com/

Signed-off-by: Joel Granados <j.granados@samsung.com>

---

---
Joel Granados (15):
      cdrom: Remove now superfluous sentinel element from ctl_table array
      hpet: Remove now superfluous sentinel element from ctl_table array
      xen: Remove now superfluous sentinel element from ctl_table array
      tty: Remove now superfluous sentinel element from ctl_table array
      scsi: Remove now superfluous sentinel element from ctl_table array
      parport: Remove the now superfluous sentinel element from ctl_table array
      macintosh: Remove the now superfluous sentinel element from ctl_table array
      infiniband: Remove the now superfluous sentinel element from ctl_table array
      char-misc: Remove the now superfluous sentinel element from ctl_table array
      vrf: Remove the now superfluous sentinel element from ctl_table array
      sgi-xp: Remove the now superfluous sentinel element from ctl_table array
      fw loader: Remove the now superfluous sentinel element from ctl_table array
      raid: Remove now superfluous sentinel element from ctl_table array
      hyper-v/azure: Remove now superfluous sentinel element from ctl_table array
      intel drm: Remove now superfluous sentinel element from ctl_table array

 drivers/base/firmware_loader/fallback_table.c |  3 +-
 drivers/cdrom/cdrom.c                         |  3 +-
 drivers/char/hpet.c                           |  3 +-
 drivers/char/ipmi/ipmi_poweroff.c             |  3 +-
 drivers/char/random.c                         |  3 +-
 drivers/gpu/drm/i915/i915_perf.c              |  3 +-
 drivers/hv/hv_common.c                        |  3 +-
 drivers/infiniband/core/iwcm.c                |  3 +-
 drivers/infiniband/core/ucma.c                |  3 +-
 drivers/macintosh/mac_hid.c                   |  3 +-
 drivers/md/md.c                               |  3 +-
 drivers/misc/sgi-xp/xpc_main.c                |  6 ++--
 drivers/net/vrf.c                             |  3 +-
 drivers/parport/procfs.c                      | 42 ++++++++++++---------------
 drivers/scsi/scsi_sysctl.c                    |  3 +-
 drivers/scsi/sg.c                             |  3 +-
 drivers/tty/tty_io.c                          |  3 +-
 drivers/xen/balloon.c                         |  3 +-
 18 files changed, 36 insertions(+), 60 deletions(-)
---
base-commit: 0e945134b680040b8613e962f586d91b6d40292d
change-id: 20230927-jag-sysctl_remove_empty_elem_drivers-f034962a0d8c

Best regards,
-- 
Joel Granados <j.granados@samsung.com>



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609721.948880 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyc-0001Qj-WC; Thu, 28 Sep 2023 13:22:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609721.948880; Thu, 28 Sep 2023 13:22:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyc-0001JI-CI; Thu, 28 Sep 2023 13:22:46 +0000
Received: by outflank-mailman (input) for mailman id 609721;
 Thu, 28 Sep 2023 13:20:44 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwd-00087E-Vu
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:43 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d0d1f613-5e01-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 15:20:39 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id F387061C65;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 6660CC433B7;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id 49DE6E732D3;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d0d1f613-5e01-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907236;
	bh=ZiddoNak8xngG9OnuptxMqfnw66bfyd+crUdRoxUWRA=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=IrDBFkuyzY+Ng43NW5CObULZ9zN56OlT2VEqKv18Oi62hn3Ba5jUPt4I3qx7DMfR1
	 iClMR/LIIt1XnQIgRltkMB4+LOIgkWSMhbR7CfhlbmnT/BGZJ2XtaXsEqgbb4xAB9t
	 TLYb061KJ4KoRTWSS5MdST92LOdBUCeEPjdspHnf4NGzu12f02uAb4Od6TC0OmAJnR
	 apSlxI9QTcGfdI3/lmQLCxo2rhbrFnSX7O7oFKg7FYUEXajtv64x6flcQ1V9ClpYZ+
	 nMbok3TzNwDG13BzdjvdLXGRqHIcBceyOjXpyc+4iU8lSgkD6RYUMjqAPbw3wacXHs
	 b0mvTk0cg0M3g==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:28 +0200
Subject: [PATCH 03/15] xen: Remove now superfluous sentinel element from
 ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-3-e59120fca9f9@samsung.com>
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=912; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=ui4IGPfTdbR4IGIAbOL4shdoo/J3irZZsIZz3gQ0drk=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3cGe6+E9/0a9eLNoVmJv9uNx1R1TMQIFknp
 t06QGx9crqJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93AAKCRC6l81St5ZB
 T0iCC/4lxYvMPNd56KR9syOhBIjjjL9lOce4FFI9vFCYQ+mZ2iaIno0bBSEmQkEZmez5m10au1S
 g0f8xmfOlU8VaBYmXZwS9WI6d/n6JlMrXlR3plY5Ibf6gPNZgkl8UA4+7SpV6EGGvTeGa4UAkzB
 EXlfYtJNdHkEif74xQjVuQ90sFI3vTWw/qigOxjd4mGmsYhbplpB5NwvVmzV7W0LkH7B6avJXm3
 +HQUyIr5z88PAoFr6xYA+jke9C0E8GfGNyC5xL2BQhlJODuT4otaVMK/c4JGh/LwqHcRCmmBGwY
 9lvf2bY9kysK3mP9qJMxP28IUTW7zlX6v4+ORKyLTUdUSB897zeP+PEecTC8Mq42dUyclAgoUNg
 fLUIUT/Y/nXQcKkPBp8UIZ8Drd829GBO1HjbRjyyO4x2eFGLDe0i3eQPuSUZcYO97lbzOgGicJ8
 XxdRUuA5sTcFBxzCjoIW+6HYKoJz9dRGmUI0TjgcgKEdCLlpYLezYmjA2W+fGyqkVcKT4=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel from balloon_table

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/xen/balloon.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/xen/balloon.c b/drivers/xen/balloon.c
index 586a1673459e..091eb2931ac4 100644
--- a/drivers/xen/balloon.c
+++ b/drivers/xen/balloon.c
@@ -93,8 +93,7 @@ static struct ctl_table balloon_table[] = {
 		.proc_handler	= proc_dointvec_minmax,
 		.extra1         = SYSCTL_ZERO,
 		.extra2         = SYSCTL_ONE,
-	},
-	{ }
+	}
 };
 
 #else

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609722.948889 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyd-0001jS-TG; Thu, 28 Sep 2023 13:22:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609722.948889; Thu, 28 Sep 2023 13:22:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyd-0001gw-Bi; Thu, 28 Sep 2023 13:22:47 +0000
Received: by outflank-mailman (input) for mailman id 609722;
 Thu, 28 Sep 2023 13:20:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwe-000873-MA
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:44 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d29cdd7f-5e01-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:20:42 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 1E1BA61CD6;
 Thu, 28 Sep 2023 13:20:39 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 40FAAC4E75A;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id 26E4FE732D1;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d29cdd7f-5e01-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907237;
	bh=pdmmOE3H0wl7JFnvUs0cXne6T7FXMEXGOOHMgYRq81A=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=McrTLgHDanDgnZWCaB/eneBszGhElISFiQo6HjDYeW3/iQ7vK4TEsIr9rCVBFP7VV
	 jJrpav4wOkhdr9+H0n9dA07uVfAIbW4bu7uDORQLms5gr2BVHM95p8nhjbshPidbcm
	 oGKfzbqnNsfNHDx8xl4r04xNGUmbWlrXE+3JrTurNRAyLwAQPDcUD4TVwX1my9st6c
	 myBX24/Y3sM0TgM9G24BHP2iiYSVWJw7WofK5uW4U8Q4ncZokrEmf/BuZ0/5xBI+ax
	 JcQkdY9Cq2AxLm0PimNb5cKLGQPe5VlDOtR7vbZgHrx72JdJLBoL1XloPEp/OtMHBM
	 qxf6Ws66a3HNQ==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:37 +0200
Subject: [PATCH 12/15] fw loader: Remove the now superfluous sentinel
 element from ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id: =?utf-8?q?=3C20230928-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=
 =?utf-8?q?rs-v1-12-e59120fca9f9=40samsung=2Ecom=3E?=
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=1099;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=IR+b7PptXcF/Oyt7GII4OytQxFoRCLXOyY8FOTQVz/s=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3fTo3kXpUY6L3nYABmnsBNawGT28Z3SlPam
 YfpaY395dKJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93wAKCRC6l81St5ZB
 T8TaC/9cDBQVLZYH4Fdmw6vKuueXYd7pABhWuZZOmPgU8kP984zBWEF8yAPOxtCqZKnUQVkYDT9
 waw5OPrbtH7Cj5Ljs6zW7XQjbeHOXi/mCJnfxYKOJYgP46vtfuBJLls3tXnVd1YYOnCm9RWYr37
 JtU0m7McLmcwBDou77zQKrmFA2NQLgVPt8w+q+UgXo1XKtCuiLSu3G9pqUkcUZWNbDt2slckrdI
 D3PL+UVlpD9hz7SXyy4dbOqOMMBH5GNGZ+jLrM00pLwb1cKDqFFmIS9/6YCc7Mi2SXUpAaICEdw
 296JfYljQ93faYsdJfS/vz1mP0qOl8oxlwNN3MB/zLBT51rkA4CkBz3o7Uc2UHMNA+XvKjpEsB0
 YT/Sex/r1M8Rs2guSZE0bqzXIpOmgF/aIgLP6mpRS4H7kVLn7641YhjsAGpapmRxcwDowR1yYks
 LUkw71CcusI5v074k5FRJK5s8cHeKcBUgr/I21329k6u29vxMfRVdPlR/ZQILG6HhQqHg=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel from firmware_config_table

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/base/firmware_loader/fallback_table.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/base/firmware_loader/fallback_table.c b/drivers/base/firmware_loader/fallback_table.c
index e5ac098d0742..968aef19e118 100644
--- a/drivers/base/firmware_loader/fallback_table.c
+++ b/drivers/base/firmware_loader/fallback_table.c
@@ -43,8 +43,7 @@ static struct ctl_table firmware_config_table[] = {
 		.proc_handler   = proc_douintvec_minmax,
 		.extra1		= SYSCTL_ZERO,
 		.extra2		= SYSCTL_ONE,
-	},
-	{ }
+	}
 };
 
 static struct ctl_table_header *firmware_config_sysct_table_header;

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609725.948894 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqye-0001ut-C4; Thu, 28 Sep 2023 13:22:48 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609725.948894; Thu, 28 Sep 2023 13:22:48 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqye-0001sE-14; Thu, 28 Sep 2023 13:22:48 +0000
Received: by outflank-mailman (input) for mailman id 609725;
 Thu, 28 Sep 2023 13:20:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwe-00087E-W5
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:44 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d18a5ad1-5e01-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 15:20:40 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id A9B2D61CB8;
 Thu, 28 Sep 2023 13:20:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id F3C10C32779;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id DD06BE732CF;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d18a5ad1-5e01-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907237;
	bh=5zO7s9Lwosi7QmmL2WLVnIc8u/uJoPITOshfrd6dPWg=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=OZuf7hMNQH/6jfPbtQZPCoyl72bn87/HT1LPJ3FoDxaF5e08+Voy29HA90DNmKOoG
	 K8KTyPsT29Q26moP3JUFagj7TAexacVLiF290EeK6+rY62iPg6ZyRTx4ilgv7E7E8F
	 DvR4G7zQgEsTokMkNy6lVyh3stCdclTnVH5Vp3bKDcYTPfCdpzizojbvyyoPPS5pjd
	 Mq7h9q+sOBnZ7vG+kASbLG/sVqWDBGgHfd0LO7kF40frLpwZuwHCNu4vrFnpG85OVQ
	 lokojtHlhEBwQcvtiHV40wjfGBbAImHeFyFCmXQ0lP4q6HD2l3RILeABD1jxtaSzcZ
	 GfMvBEvqEdDYQ==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:34 +0200
Subject: [PATCH 09/15] char-misc: Remove the now superfluous sentinel
 element from ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-9-e59120fca9f9@samsung.com>
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=1462;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=tCD6uUjpENwGRI1wSieFMxVn0HaUdToj9oadXuH2mRs=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3e649I8iEgCQ+8jvmfVnSbEH+5cM+/uGjHp
 +7sMjQufCiJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93gAKCRC6l81St5ZB
 TwJnC/0dPQEskd6EkB4tfpnbwc2TgKq0dfoj8tKncz1G9fyLn3o0DNocpaZy1J4AYL6xD9M4XOC
 kb8puBCX15k3E5sE5lbIupq0uxghhIz2QY6VgfmuomBSGqMVmc8v3gckB2sJCJ0z5cPwmGU9LLM
 wq7K6pONMby24XwTPGt/fPbLT0WQ6y5WkunD9VwmNnFA7zmxQCtUqfY644ugivFOBW5pgclR9hM
 C5jdw8MqjkddlipW10caCiPkzcMV+kSoo3qs3wHncPTT7vISH2e6tkmI2Xy75z1budS54vtamLX
 QwV6V1xjrMUdchaAvkfWGb/tMSrwmBFOgQuQ0mmvFwoQ26xpdGB0iMIQEopG12V2aUFxEI1/vaJ
 8Q6aXtkcH9hwbAp8iR1LbVAzPoCeivNtsvq9A8ogh/og192Qwas7QVtFgbNNcPKSovvljsGIJ6c
 iM6sGTzKbWd6JxxlKEyGZw2u6ept3Ng28GdM6XTYEcyB8nWkVSiKcpqhOpbwekS5ZZmaI=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel from impi_table and random_table

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/char/ipmi/ipmi_poweroff.c | 3 +--
 drivers/char/random.c             | 3 +--
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/char/ipmi/ipmi_poweroff.c b/drivers/char/ipmi/ipmi_poweroff.c
index 870659d91db2..b65ab51bf9fa 100644
--- a/drivers/char/ipmi/ipmi_poweroff.c
+++ b/drivers/char/ipmi/ipmi_poweroff.c
@@ -655,8 +655,7 @@ static struct ctl_table ipmi_table[] = {
 	  .data		= &poweroff_powercycle,
 	  .maxlen	= sizeof(poweroff_powercycle),
 	  .mode		= 0644,
-	  .proc_handler	= proc_dointvec },
-	{ }
+	  .proc_handler	= proc_dointvec }
 };
 
 static struct ctl_table_header *ipmi_table_header;
diff --git a/drivers/char/random.c b/drivers/char/random.c
index 3cb37760dfec..4040715cba19 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -1682,8 +1682,7 @@ static struct ctl_table random_table[] = {
 		.procname	= "uuid",
 		.mode		= 0444,
 		.proc_handler	= proc_do_uuid,
-	},
-	{ }
+	}
 };
 
 /*

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609729.948918 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyg-0002Sp-MY; Thu, 28 Sep 2023 13:22:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609729.948918; Thu, 28 Sep 2023 13:22:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyf-0002Pi-UR; Thu, 28 Sep 2023 13:22:49 +0000
Received: by outflank-mailman (input) for mailman id 609729;
 Thu, 28 Sep 2023 13:20:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwg-00087E-0H
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:46 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id d1edb375-5e01-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 15:20:41 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id D863961C67;
 Thu, 28 Sep 2023 13:20:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 28DEAC3277C;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id 0F863E732D0;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d1edb375-5e01-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907237;
	bh=WESDWSBIxBgTV46NKfEUHelTwfrWg95I2h4/Iqr/LRM=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=X1KG2CslKyXTmAHOE9ut19dU3D1ndZDLDdqUloNr92yULn+YqrPZji2xw2INBYpUm
	 6F9yTU649cXeMkhlXPNSEgx9CZEqSU2KI7nIVnuEAcHdctqE7BBYS5qhtEf2yOfQnG
	 R1mpQOonF6UvHW7ScvUsXX6PuQxhn8SfiZiDQ0St7xAhbhnYOBS6MvxU2R0XUDnGt/
	 DBV2CmPFYybbpaGP/rLAB1yXMe/SnzrzBKC0su2BZmK87DmShTLpzxZCLR/mQ4v1pN
	 8cUsQWYemfXRz8FCPMeF9hl3BfYwspIRCViLCTG6Pj0iu6BAbtFCXNuyprY8KmJO9t
	 qJcclRkDU4adA==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:36 +0200
Subject: [PATCH 11/15] sgi-xp: Remove the now superfluous sentinel element
 from ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id: =?utf-8?q?=3C20230928-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=
 =?utf-8?q?rs-v1-11-e59120fca9f9=40samsung=2Ecom=3E?=
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=1399;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=pY2XyujxOt+Rj6u6+44+o009/nkYZtGGPZk9nN2iFyE=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3fe3sdkuVX/cH9+wfjrH5ueAgUPjamrIOH4
 /3zyIkdfAqJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93wAKCRC6l81St5ZB
 TwpRC/4lSj5L+OahMU8+3S1fvTtKAyIY/uKM1bPNHdispZZPQR1Rd3tvqJTptup1mzRuFuO8L1m
 8PJXRwGmMWlfPnW6wWYP/M4Aqq1CITeSckvnMuyUa9IAlZg0a3oKSGu5yX6zSvvAQ0+k7mBAb3y
 UBqDMmlaWuIsDoJskRRHROj9+KwmhMmsEKZWwN5UGxnjSX57Ws5oYdteVXY5AI8Zp7Hy8Tx0heX
 FCndhRyQrnj2jq8I3cC94HaHBQ+r/FbCmV0KJSg5xqjdEy9VmQiEja6TCN2IAUta6kgV5r3iSsz
 uRL2Spqp9oaZW9r25KtgCboTiH5fnCIkTB16pgKJEydjH49JsnKqmlAleVwBd/WjEU86E4be+/t
 V9Kx7iqRDYUo2aZWNOMBizEJlyYBMYHFFIiSdMNx4xMMW78VnCfWmHYPolywQlOL/IO7kdASIva
 qz9zA7cr0tjD3lcLzXnQuXIHAhNUbhz37de0+vmc7TtbbfZaFsJe0s2ItUEMGxrc4UUuo=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel from xpc_sys_xpc_hb and xpc_sys_xpc

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/misc/sgi-xp/xpc_main.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/misc/sgi-xp/xpc_main.c b/drivers/misc/sgi-xp/xpc_main.c
index 6da509d692bb..c898092ff3ac 100644
--- a/drivers/misc/sgi-xp/xpc_main.c
+++ b/drivers/misc/sgi-xp/xpc_main.c
@@ -109,8 +109,7 @@ static struct ctl_table xpc_sys_xpc_hb[] = {
 	 .mode = 0644,
 	 .proc_handler = proc_dointvec_minmax,
 	 .extra1 = &xpc_hb_check_min_interval,
-	 .extra2 = &xpc_hb_check_max_interval},
-	{}
+	 .extra2 = &xpc_hb_check_max_interval}
 };
 static struct ctl_table xpc_sys_xpc[] = {
 	{
@@ -120,8 +119,7 @@ static struct ctl_table xpc_sys_xpc[] = {
 	 .mode = 0644,
 	 .proc_handler = proc_dointvec_minmax,
 	 .extra1 = &xpc_disengage_min_timelimit,
-	 .extra2 = &xpc_disengage_max_timelimit},
-	{}
+	 .extra2 = &xpc_disengage_max_timelimit}
 };
 
 static struct ctl_table_header *xpc_sysctl;

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609728.948908 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyf-0002Dh-OF; Thu, 28 Sep 2023 13:22:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609728.948908; Thu, 28 Sep 2023 13:22:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyf-0002AQ-1Z; Thu, 28 Sep 2023 13:22:49 +0000
Received: by outflank-mailman (input) for mailman id 609728;
 Thu, 28 Sep 2023 13:20:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwf-000873-MQ
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:45 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d2128950-5e01-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:20:42 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id C0CFCCE21C3;
 Thu, 28 Sep 2023 13:20:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 8CE4FC4AF5E;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id 7596BE732D0;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d2128950-5e01-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907236;
	bh=8o6Wkw35mSCVhnOKFt6ClknFvPUd13GONPb8bhwpADE=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=HIlWOSKnflZYvel5mQyGeX+gmJJL1K+LilMXYd6IzuwCYD/pX0XE7cmHV9c4nOI4A
	 G/mkwjoUMxgPO9uLZV65HoYUoBxIiALIDd0v2EKOMEFnp5AOGGZpQFUJcruJ22uEaK
	 6hZ/DjT4HKVs4Gn2aq0Qzauo+hlbISOX5wXlDc4/dqdkKwmBrrv64aJxB/7ayPmA3u
	 SkJc3jtqdOhQq7fmfr4AfTJYsZ9nSQh0GwQ3B3bM6Ss0AJ+E8yLi6VkYwl9SjIv0Nk
	 dbDndA8ukr878p7LrXNVzfNdGRORSE7mwMQVaG7cGntwej+ICqVYE0DUR7BraOIYwS
	 zpRNDsJdBMXOw==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:30 +0200
Subject: [PATCH 05/15] scsi: Remove now superfluous sentinel element from
 ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-5-e59120fca9f9@samsung.com>
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=1435;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=AA2i2ffT9doWEzIff4Zajp6KzJDIS2fsOGTMhAaBzPI=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3dBMzSGGCPjKqz33CWWmIlVPmX0ZG079rEE
 swyLW78XdWJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93QAKCRC6l81St5ZB
 T7GeC/9Fj9+4xEMnCkTQFapmBGFCFKtx2YJeRuHAo0GBWLACG0DDu2Bq/aeCqY5a1VRczUgy2iG
 MrB6KcEeBrzNF65Rwq9n3LkqKtvhqBlEjpL5VUDRytrhp++LB+9uWq7GBE9kSvsg2iFVLzL5Kf1
 vukcj20IN9ZHg5L7G6S1rf0Qme59NiTfQqPWrtQhBlLqQpUQFOyIwb4yWxeEK8uNy1IYuvqQ/E3
 wpfg3TIxo1KHtVLm3h8zqAlW+Pf7n9Y1ojT4DscU67RqIoN6p133XKh/Uq1z4e72TMkqH1aD5Qi
 l2C+Ecc0DO8jdIHFP+hmPcu5ZurChtUCC6BrrPHZRCo3loAWnJ5rBX3dOF4MCrvRNX6wOab8Flg
 pn8K8Ewtqr7MP+RrGIXSz9pUu0EjBHk0kMBzENIu+m0ePrG3gpz7NpW2WUBWjZiSiw4buzxgKzz
 ZFP6ljJZXft/+hBDXWcJJ+AnT99TNDZeD3fJ8/6bRGsWAUGQQuzNNpVq0vK4U47NfOCGI=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel from scsi_table and sg_sysctls.

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/scsi/scsi_sysctl.c | 3 +--
 drivers/scsi/sg.c          | 3 +--
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/scsi/scsi_sysctl.c b/drivers/scsi/scsi_sysctl.c
index 7f0914ea168f..c74da88b20d3 100644
--- a/drivers/scsi/scsi_sysctl.c
+++ b/drivers/scsi/scsi_sysctl.c
@@ -17,8 +17,7 @@ static struct ctl_table scsi_table[] = {
 	  .data		= &scsi_logging_level,
 	  .maxlen	= sizeof(scsi_logging_level),
 	  .mode		= 0644,
-	  .proc_handler	= proc_dointvec },
-	{ }
+	  .proc_handler	= proc_dointvec }
 };
 
 static struct ctl_table_header *scsi_table_header;
diff --git a/drivers/scsi/sg.c b/drivers/scsi/sg.c
index 0d8afffd1683..22a59c5e22eb 100644
--- a/drivers/scsi/sg.c
+++ b/drivers/scsi/sg.c
@@ -1649,8 +1649,7 @@ static struct ctl_table sg_sysctls[] = {
 		.maxlen		= sizeof(int),
 		.mode		= 0444,
 		.proc_handler	= proc_dointvec,
-	},
-	{}
+	}
 };
 
 static struct ctl_table_header *hdr;

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609733.948926 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyh-0002kq-Ci; Thu, 28 Sep 2023 13:22:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609733.948926; Thu, 28 Sep 2023 13:22:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyg-0002h0-Rk; Thu, 28 Sep 2023 13:22:50 +0000
Received: by outflank-mailman (input) for mailman id 609733;
 Thu, 28 Sep 2023 13:20:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwg-000873-Mj
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:46 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org
 [2604:1380:40e1:4800::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d208484d-5e01-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:20:43 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 9D4FECE21BD;
 Thu, 28 Sep 2023 13:20:38 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 80E56C07618;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id 60545E732D1;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d208484d-5e01-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907236;
	bh=jejSCWbFLCFF2dkjqTkEdiAPz2XEiyBfn7Kx6dJyBRE=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=cZ7nyMzaaFGJTdj0cQqjiU1KLFU7WnEfcSz8Z8D1PNPaIUWfpiEvebX1GZG3Vu9xk
	 pcCQC9yWnO5mDjBeYV68yUbfxRDGX0NUmqDLT9IPyXgaUbbXA2UKWfuTYHhsjplAVs
	 sHYt++vYmu+132G0xpM5JpYteq3GwkUvZmpjMJ2kO4eAfNSzH/nteMMsaDWjkLc9D+
	 Dab8WB+OuUjY9J4ifmA3HpOLo0eSGtZwKMnEb7ul//qTMBnvZ4PaJYrNi94a/7hF1c
	 LKhHi0gdw60QhY+KcUG5P8VSRB3JuT1hyPOFvcUN+xR8XlYb3TwFJnXF93xwVUFv1d
	 Y10RNqtfK6wXg==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:29 +0200
Subject: [PATCH 04/15] tty: Remove now superfluous sentinel element from
 ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-4-e59120fca9f9@samsung.com>
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=879; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=8sTvUGRVDTp9H1bDylG6Zdr7SdjuawIyFt9Rw8abcOY=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3cdF4EIlnMzaDc9G1cMmQnLIu/8Bu3kPy9n
 QS3nW1BnkyJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93AAKCRC6l81St5ZB
 TymCC/93IOLpSBLeRvxqmQfi+lOXxSMU432q2hGOTJuwaFN4hoNYNr5JYby9ccthVv/ftgOHQWc
 M9C+kthX5+CFu7e0qqMVk/DE+aSJ4xeiApfapfP7GJjYu8sQ7XDPEVcqWSG0mWBUGo3CvDDgAXj
 VrOGclYbtMQ5oVdoJOzh/2ppeRTUPRIoeM/xZGcvNSsDeIPl0/3eOaTjZ5rXe5MVOagVGsiRTP3
 ezgKR03gT8Yingu9bLjUv7OnG9nl1QoJYIDP4/FVL1BTSUXU5yv7j77gZzRRQIbzk4ipEXAyv5c
 RrGUnHweFzoUFB4S3PkbWCKDKsNqwxU7WLvG2w5iAYfe/RYHS/0f9eRdcydszQ7u8ndwuDnCi9w
 uoQTfWDAeadPvRLvv6gnqZnsVQRFswvm9os0gC8/WUJizL51h0PN6Xk1tTcFBVrMNIOyHRONik8
 q0ZJIlhNLM4i70qg1sQ94ogeJkRyTF9X0puD9rr+5zpwm2KBw80tiFM1eim5U1g9W+n+o=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel from tty_table

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/tty/tty_io.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c
index 8a94e5a43c6d..2f925dc54a20 100644
--- a/drivers/tty/tty_io.c
+++ b/drivers/tty/tty_io.c
@@ -3607,8 +3607,7 @@ static struct ctl_table tty_table[] = {
 		.proc_handler	= proc_dointvec,
 		.extra1		= SYSCTL_ZERO,
 		.extra2		= SYSCTL_ONE,
-	},
-	{ }
+	}
 };
 
 /*

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609734.948937 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyi-00039e-Pt; Thu, 28 Sep 2023 13:22:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609734.948937; Thu, 28 Sep 2023 13:22:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyi-00035T-9O; Thu, 28 Sep 2023 13:22:52 +0000
Received: by outflank-mailman (input) for mailman id 609734;
 Thu, 28 Sep 2023 13:20:47 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwh-000873-N0
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:47 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d2a8f04f-5e01-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:20:43 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 549DDCE21D5;
 Thu, 28 Sep 2023 13:20:39 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 156AFC3277A;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id EE3F5E732D4;
 Thu, 28 Sep 2023 13:20:36 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d2a8f04f-5e01-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907237;
	bh=lrXHVV3iKHeN1GBo4fXrfsJZ5+V8aEe9bhvkg3xQu78=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=TWsVtO1se30j6NzRsQjznKd0IGCNIY2VgIg21hGNa14HC3vwxzs1aVq4U4DLOEsfT
	 vQbxlngy5nU2UnJYZDYUyFIYmMWGnsQnlKbC22dRFKc074V3GF2R65SppEJW2FUD6N
	 IXO4n+4W6rJ6vuS2fVDGW2rfRnJ509II8Amksn6W8cNuHoWjUjPqnPiMHHFuQl2GtJ
	 4EN9T0bOlFEfubaFgkknSCgzfOEIbfjhhaJdVWQnxqL/g3zNbR9XAg06lmEDArens3
	 5pg3ppf9QpErzQbOwwM6QfDuD/ut8bNLQAA9LcKsi0cVAHbIjDQOnVyunv179quYiT
	 9Pd5mZe9q6Tqg==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:35 +0200
Subject: [PATCH 10/15] vrf: Remove the now superfluous sentinel element
 from ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id: =?utf-8?q?=3C20230928-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=
 =?utf-8?q?rs-v1-10-e59120fca9f9=40samsung=2Ecom=3E?=
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=957; i=j.granados@samsung.com;
 h=from:subject:message-id; bh=1NLC9qP1CY5hbDPyr23yN2zoH2+i6NGjxa91ihvztxA=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3efmxA5MIacGiPYUJqzMHLsUucZXUhKmZvp
 uwNl2wpIdyJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV93gAKCRC6l81St5ZB
 T7zVC/9nccm8Jt9uhH7oQGv/uUE1TUHdyD8riQXjy6Q7siM8V6fZZKtqQAuVbgk+dQ+XYCY0MXU
 +gofOFghmvbuZW33bSsn6BpCMPsZitmR2AIrJz40JNmDes9atMglKzaw6YK2sktVhAl5vRjsBF6
 C5J/9HUHSFTD8MEiz/KG9qmfVDtOhZJrKQgG/eDxaK/tTOWULGYjcrTRsBdqVkhYUwiQyEmiisu
 obKNXMg1SnhtJyaW6u1yDjXdEuCYd7wdKEyFxJI/TVAsD80Usfi+gJ22UC1YiyxBWVYbaLTcm3/
 zXaEujj/bV6H7Mg+H3VBldoOzwUvs2J/KXMTzFHPGN3CideOlJrNCrkFP8axi7opC2TPD+ep4pW
 0zw45g4ZcDDdEZ7ttDDSQIcb3A6YNO2mXHNC8l8Op9uQPlfVSgcF0E0Tm7cxZd0lrEy+neUKS8q
 GUMrJtSPCvRNPD4xWGcwfpGrX5UX9Vuuit+whdxcOw2k8YWghpbrglRWCjHk82JtuA8a4=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel from vrf_table

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/net/vrf.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/vrf.c b/drivers/net/vrf.c
index a3408e4e1491..94eed8708467 100644
--- a/drivers/net/vrf.c
+++ b/drivers/net/vrf.c
@@ -1962,8 +1962,7 @@ static const struct ctl_table vrf_table[] = {
 		.proc_handler	= vrf_shared_table_handler,
 		/* set by the vrf_netns_init */
 		.extra1		= NULL,
-	},
-	{ },
+	}
 };
 
 static int vrf_netns_init_sysctl(struct net *net, struct netns_vrf *nn_vrf)

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:22:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:22:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609737.948948 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyk-0003YG-Aj; Thu, 28 Sep 2023 13:22:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609737.948948; Thu, 28 Sep 2023 13:22:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlqyj-0003TQ-Mw; Thu, 28 Sep 2023 13:22:53 +0000
Received: by outflank-mailman (input) for mailman id 609737;
 Thu, 28 Sep 2023 13:20:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=c6vw=FM=kernel.org=devnull+j.granados.samsung.com@srs-se1.protection.inumbo.net>)
 id 1qlqwi-000873-NH
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:20:48 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org
 [2604:1380:40e1:4800::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d3ddcd6d-5e01-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:20:45 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 681E5CE21D7;
 Thu, 28 Sep 2023 13:20:39 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPS id 7D24DC3278F;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org
 (localhost.localdomain [127.0.0.1])
 by smtp.lore.kernel.org (Postfix) with ESMTP id 65ACDE732D0;
 Thu, 28 Sep 2023 13:20:37 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d3ddcd6d-5e01-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695907237;
	bh=ZUiksl6W6uAlLzfzmV82mN2ZY2mOo2/OdWLFk3qByI8=;
	h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;
	b=XAmlR43N6LnlJWcxBRfJ4bGYX3efFf3VyDERCl9d9561sagPAB7JBOqTCKHhzbBws
	 Co5bW1LR04BRjXSzgqgigGnspcMgU7Ay7e7Dswa57sw5pcE6eLuRpRmV0qB9dyFpJo
	 ePxhk5Q1d+Wg4yRBouhE37dS8A8LHGsGW/jjgvFD4QC1wFaogI1GXyCa0PQV4OCVRC
	 NjTSXs4ab4JtUkPvyk3A/6ypSj1z8UEtEd2jT17geAa3bVI7XSijzJ/y7ZPKJM3mfw
	 JCFOFie1GX3MB32wgsEqQ9dPhxu5u+5L3oj+Gz6KUuq2yEeQEVLF6JScdvZYV7FKaD
	 tL3TGuj7xNI7w==
From: Joel Granados via B4 Relay <devnull+j.granados.samsung.com@kernel.org>
Date: Thu, 28 Sep 2023 15:21:40 +0200
Subject: [PATCH 15/15] intel drm: Remove now superfluous sentinel element
 from ctl_table array
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Message-Id: =?utf-8?q?=3C20230928-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=
 =?utf-8?q?rs-v1-15-e59120fca9f9=40samsung=2Ecom=3E?=
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
To: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, 
 josh@joshtriplett.org, Kees Cook <keescook@chromium.org>, 
 Phillip Potter <phil@philpotter.co.uk>, 
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>, 
 Juergen Gross <jgross@suse.com>, 
 Stefano Stabellini <sstabellini@kernel.org>, 
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, 
 Jiri Slaby <jirislaby@kernel.org>, 
 "James E.J. Bottomley" <jejb@linux.ibm.com>, 
 "Martin K. Petersen" <martin.petersen@oracle.com>, 
 Doug Gilbert <dgilbert@interlog.com>, 
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
 Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, 
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, 
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, 
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, 
 Russ Weight <russell.h.weight@intel.com>, 
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, 
 "K. Y. Srinivasan" <kys@microsoft.com>, 
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, 
 Rodrigo Vivi <rodrigo.vivi@intel.com>, 
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, 
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, 
 linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org, 
 linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org, 
 openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org, 
 linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org, 
 intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, 
 Joel Granados <j.granados@samsung.com>
X-Mailer: b4 0.13-dev-86aa5
X-Developer-Signature: v=1; a=openpgp-sha256; l=1010;
 i=j.granados@samsung.com; h=from:subject:message-id;
 bh=Z9ZtfK3DEA99EXZ7fr8sV5mKU3DvB0mjVyvX0TU3lCI=;
 b=owEB7QES/pANAwAKAbqXzVK3lkFPAcsmYgBlFX3gFlneS4Mf90CaCbyJH1c7W29aNmmDMi/fY
 CLHmU/OGzqJAbMEAAEKAB0WIQSuRwlXJeYxJc7LJ5C6l81St5ZBTwUCZRV94AAKCRC6l81St5ZB
 T+SdC/9jFG0RUkuS7dLpAVcMO6D7jlVD+ZtX/jfu+rwthZV8WGVLtJ8kcAR7BPdgAWXivaJ86Dp
 P8HoauS68D0RI9Rl9X/gHaLDOKz2eejqJOE8LOTNyc5oeWYoHn33YzNJbhBnz6UoWV0vUdddE34
 GRQqY6MKoVxUSV4CWxcsjFchdIDzBQiMIwUqspGaJghb9FT9hzSCLfXyl5vJzx8A+y2J8mT49k2
 Zu4B/1iFwUdke4OebC6tbh93+vu6byFilf9UV3QNKYcRyJ5GGOmA8VWdq1U89/l+7ecOpeI+39E
 VAvGXaumDhZWUpNQ1QcR6XhGrFL3IBE/XkZwVuXcVyY6NfbR19/0xgBykkluiUglYLyjlLnmfcl
 5XmrIaXdLBsIKU3e2gt+wdTGHqGSyzFDdbp0RF2kkLOO1GnpNivaGGSl8okOViY6fb1bAGKWSZM
 FhB8ybdTYNi+IqN7tj+lwciJDUGicuxAJy3KGeA8aLCwF3Lo29sNp5FS7A428ifTZoZbQ=
X-Developer-Key: i=j.granados@samsung.com; a=openpgp;
 fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77
X-Endpoint-Received:
 by B4 Relay for j.granados@samsung.com/default with auth_id=70
X-Original-From: Joel Granados <j.granados@samsung.com>
Reply-To: <j.granados@samsung.com>

From: Joel Granados <j.granados@samsung.com>

This commit comes at the tail end of a greater effort to remove the
empty elements at the end of the ctl_table arrays (sentinels) which
will reduce the overall build time size of the kernel and run time
memory bloat by ~64 bytes per sentinel (further information Link :
https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)

Remove sentinel from oa_table

Signed-off-by: Joel Granados <j.granados@samsung.com>
---
 drivers/gpu/drm/i915/i915_perf.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
index 04bc1f4a1115..97ef6d2ad037 100644
--- a/drivers/gpu/drm/i915/i915_perf.c
+++ b/drivers/gpu/drm/i915/i915_perf.c
@@ -4895,8 +4895,7 @@ static struct ctl_table oa_table[] = {
 	 .proc_handler = proc_dointvec_minmax,
 	 .extra1 = SYSCTL_ZERO,
 	 .extra2 = &oa_sample_rate_hard_limit,
-	 },
-	{}
+	}
 };
 
 static u32 num_perf_groups_per_gt(struct intel_gt *gt)

-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:33:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:33:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609795.948978 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlr9E-0002SM-LW; Thu, 28 Sep 2023 13:33:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609795.948978; Thu, 28 Sep 2023 13:33:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlr9E-0002SF-Is; Thu, 28 Sep 2023 13:33:44 +0000
Received: by outflank-mailman (input) for mailman id 609795;
 Thu, 28 Sep 2023 13:33:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=LMSP=FM=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qlr9D-0002S7-EI
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:33:43 +0000
Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a3e30777-5e03-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:33:42 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id 67E94218F6;
 Thu, 28 Sep 2023 13:33:41 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 30ADA138E9;
 Thu, 28 Sep 2023 13:33:40 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id Kft8CbSAFWWVcQAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 28 Sep 2023 13:33:40 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a3e30777-5e03-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695908021; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=J7XYfBNJCPVTZbqpCY8elyTd0rptVgojsn4tPFFx5cQ=;
	b=q/Ab4JicXAapmsOnZJFIpYXlFBZFzQpU5Q959jxAduZR2sfnkckU3XvYE+VJF8Qgu3nBXC
	VkC3c+5foismVJH0WeVEQ+xoyN/5uMZemmvJP8RKhdDr2ltRdZKxr16a8wmAwcpQlexkgl
	RY//qYnHu0513gjwDdrBZabQuBcxiTI=
Message-ID: <4607b3c0-b992-4b23-9a89-4ddfb9447c82@suse.com>
Date: Thu, 28 Sep 2023 15:33:38 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 03/15] xen: Remove now superfluous sentinel element from
 ctl_table array
Content-Language: en-US
To: j.granados@samsung.com, Luis Chamberlain <mcgrof@kernel.org>,
 willy@infradead.org, josh@joshtriplett.org, Kees Cook
 <keescook@chromium.org>, Phillip Potter <phil@philpotter.co.uk>,
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>,
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Jiri Slaby <jirislaby@kernel.org>, "James E.J. Bottomley"
 <jejb@linux.ibm.com>, "Martin K. Petersen" <martin.petersen@oracle.com>,
 Doug Gilbert <dgilbert@interlog.com>,
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, Jason Gunthorpe
 <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>,
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>,
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>,
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>,
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>,
 Russ Weight <russell.h.weight@intel.com>,
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>,
 "K. Y. Srinivasan" <kys@microsoft.com>,
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>,
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>,
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>,
 Rodrigo Vivi <rodrigo.vivi@intel.com>,
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>,
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-3-e59120fca9f9@samsung.com>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-3-e59120fca9f9@samsung.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------SeFKlArjiibReMSAFzJfhGG0"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------SeFKlArjiibReMSAFzJfhGG0
Content-Type: multipart/mixed; boundary="------------0ZW6nDW7eE13o0syrRxubfk6";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: j.granados@samsung.com, Luis Chamberlain <mcgrof@kernel.org>,
 willy@infradead.org, josh@joshtriplett.org, Kees Cook
 <keescook@chromium.org>, Phillip Potter <phil@philpotter.co.uk>,
 Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>,
 Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
 Jiri Slaby <jirislaby@kernel.org>, "James E.J. Bottomley"
 <jejb@linux.ibm.com>, "Martin K. Petersen" <martin.petersen@oracle.com>,
 Doug Gilbert <dgilbert@interlog.com>,
 Sudip Mukherjee <sudipm.mukherjee@gmail.com>, Jason Gunthorpe
 <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>,
 Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>,
 "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>,
 "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>,
 Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
 Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>,
 Russ Weight <russell.h.weight@intel.com>,
 "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>,
 "K. Y. Srinivasan" <kys@microsoft.com>,
 Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>,
 Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>,
 Joonas Lahtinen <joonas.lahtinen@linux.intel.com>,
 Rodrigo Vivi <rodrigo.vivi@intel.com>,
 Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>,
 David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org
Message-ID: <4607b3c0-b992-4b23-9a89-4ddfb9447c82@suse.com>
Subject: Re: [PATCH 03/15] xen: Remove now superfluous sentinel element from
 ctl_table array
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-3-e59120fca9f9@samsung.com>
In-Reply-To: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-3-e59120fca9f9@samsung.com>

--------------0ZW6nDW7eE13o0syrRxubfk6
Content-Type: multipart/mixed; boundary="------------LcwAXBbPGfDBE07m39FWafwE"

--------------LcwAXBbPGfDBE07m39FWafwE
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjguMDkuMjMgMTU6MjEsIEpvZWwgR3JhbmFkb3MgdmlhIEI0IFJlbGF5IHdyb3RlOg0K
PiBGcm9tOiBKb2VsIEdyYW5hZG9zIDxqLmdyYW5hZG9zQHNhbXN1bmcuY29tPg0KPiANCj4g
VGhpcyBjb21taXQgY29tZXMgYXQgdGhlIHRhaWwgZW5kIG9mIGEgZ3JlYXRlciBlZmZvcnQg
dG8gcmVtb3ZlIHRoZQ0KPiBlbXB0eSBlbGVtZW50cyBhdCB0aGUgZW5kIG9mIHRoZSBjdGxf
dGFibGUgYXJyYXlzIChzZW50aW5lbHMpIHdoaWNoDQo+IHdpbGwgcmVkdWNlIHRoZSBvdmVy
YWxsIGJ1aWxkIHRpbWUgc2l6ZSBvZiB0aGUga2VybmVsIGFuZCBydW4gdGltZQ0KPiBtZW1v
cnkgYmxvYXQgYnkgfjY0IGJ5dGVzIHBlciBzZW50aW5lbCAoZnVydGhlciBpbmZvcm1hdGlv
biBMaW5rIDoNCj4gaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvYWxsL1pPNVl4NUpGb2dHaSUy
RmNCb0Bib21iYWRpbC5pbmZyYWRlYWQub3JnLykNCj4gDQo+IFJlbW92ZSBzZW50aW5lbCBm
cm9tIGJhbGxvb25fdGFibGUNCj4gDQo+IFNpZ25lZC1vZmYtYnk6IEpvZWwgR3JhbmFkb3Mg
PGouZ3JhbmFkb3NAc2Ftc3VuZy5jb20+DQoNCkFja2VkLWJ5OiBKdWVyZ2VuIEdyb3NzIDxq
Z3Jvc3NAc3VzZS5jb20+DQoNCg0KSnVlcmdlbg0KDQo=
--------------LcwAXBbPGfDBE07m39FWafwE
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------LcwAXBbPGfDBE07m39FWafwE--

--------------0ZW6nDW7eE13o0syrRxubfk6--

--------------SeFKlArjiibReMSAFzJfhGG0
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUVgLMFAwAAAAAACgkQsN6d1ii/Ey8V
GQf/bIe1mAML3lO7z0/31oud11LQ5zQBcxwiW5lzF6ZeuVP1TBjHaf26R1neWJKkBHmeLq8qHU0P
qcpp+wgxBrMvV8VRlUkbb/Ts+ILP/SA4tyq87G9li0o5JvMeHWJRXacx3fWQW5AGm0Z7Cja5EEqQ
p8STnVcEYuW2oB8VKnxr139uvZIsRDk0s3pOWKy7B/P3FGyZQjSDt0JODtqUdXujIz2J2xXNkRGM
VY6myGjH/OP1pH2wJzshvobjUNLz9bxs5tVzC+nk7XzNExeWVBZ0lKxduA334HptbEXibflg9vDF
QcK4ngjHeMbRhdDGWaMfB+8ZtOTDvd6FEHFTihTYCw==
=fBr/
-----END PGP SIGNATURE-----

--------------SeFKlArjiibReMSAFzJfhGG0--


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:37:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:37:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609811.948989 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlrCh-0003b0-72; Thu, 28 Sep 2023 13:37:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609811.948989; Thu, 28 Sep 2023 13:37:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlrCh-0003at-2y; Thu, 28 Sep 2023 13:37:19 +0000
Received: by outflank-mailman (input) for mailman id 609811;
 Thu, 28 Sep 2023 13:37:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=nhI2=FM=linuxfoundation.org=gregkh@srs-se1.protection.inumbo.net>)
 id 1qlrCf-0003an-3p
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:37:17 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1f676bff-5e04-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 15:37:15 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id AF3DFCE21CE;
 Thu, 28 Sep 2023 13:37:01 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 30ED8C433C8;
 Thu, 28 Sep 2023 13:36:59 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1f676bff-5e04-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org;
	s=korg; t=1695908220;
	bh=+wQRUm2msRT1Vv6LzHjx16q1r07oTZukLX6w4Q72cRo=;
	h=Date:From:To:Cc:Subject:References:In-Reply-To:From;
	b=fQY4RQBXMdvdqFGAIafv/Phk7Y1oE+EJjzKjC3TRuINAbWxqzcqLPwyX0a9VAn7db
	 lrLv0OwYBTVD2TtgiIEZJRfo0bKqoMi2GBhCLXf4v+k2xekgAHOfI6frhHYfLI3c4k
	 s478XPbm0PhMMeW0NqTPzj3Xl+SvTPCIBgs7SdE0=
Date: Thu, 28 Sep 2023 15:36:55 +0200
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: j.granados@samsung.com
Cc: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org,
	josh@joshtriplett.org, Kees Cook <keescook@chromium.org>,
	Phillip Potter <phil@philpotter.co.uk>,
	Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	Jiri Slaby <jirislaby@kernel.org>,
	"James E.J. Bottomley" <jejb@linux.ibm.com>,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	Doug Gilbert <dgilbert@interlog.com>,
	Sudip Mukherjee <sudipm.mukherjee@gmail.com>,
	Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>,
	Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>,
	"Jason A. Donenfeld" <Jason@zx2c4.com>,
	David Ahern <dsahern@kernel.org>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>,
	Russ Weight <russell.h.weight@intel.com>,
	"Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>,
	"K. Y. Srinivasan" <kys@microsoft.com>,
	Haiyang Zhang <haiyangz@microsoft.com>,
	Wei Liu <wei.liu@kernel.org>, Dexuan Cui <decui@microsoft.com>,
	Jani Nikula <jani.nikula@linux.intel.com>,
	Joonas Lahtinen <joonas.lahtinen@linux.intel.com>,
	Rodrigo Vivi <rodrigo.vivi@intel.com>,
	Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>,
	David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
	linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org,
	linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org,
	openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org,
	linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org,
	intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 01/15] cdrom: Remove now superfluous sentinel element
 from ctl_table array
Message-ID: <2023092855-cultivate-earthy-4d25@gregkh>
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-1-e59120fca9f9@samsung.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-1-e59120fca9f9@samsung.com>

On Thu, Sep 28, 2023 at 03:21:26PM +0200, Joel Granados via B4 Relay wrote:
> From: Joel Granados <j.granados@samsung.com>
> 
> This commit comes at the tail end of a greater effort to remove the
> empty elements at the end of the ctl_table arrays (sentinels) which
> will reduce the overall build time size of the kernel and run time
> memory bloat by ~64 bytes per sentinel (further information Link :
> https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)
> 
> Remove sentinel element from cdrom_table
> 
> Signed-off-by: Joel Granados <j.granados@samsung.com>
> ---
>  drivers/cdrom/cdrom.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c
> index cc2839805983..451907ade389 100644
> --- a/drivers/cdrom/cdrom.c
> +++ b/drivers/cdrom/cdrom.c
> @@ -3654,8 +3654,7 @@ static struct ctl_table cdrom_table[] = {
>  		.maxlen		= sizeof(int),
>  		.mode		= 0644,
>  		.proc_handler	= cdrom_sysctl_handler
> -	},
> -	{ }
> +	}

You should have the final entry as "}," so as to make any future
additions to the list to only contain that entry, that's long been the
kernel style for lists like this.

So your patches will just remove one line, not 2 and add 1, making it a
smaller diff.

thanks,

greg k-h


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 13:42:43 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 13:42:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609809.948999 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlrHo-0005rD-Nz; Thu, 28 Sep 2023 13:42:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609809.948999; Thu, 28 Sep 2023 13:42:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlrHo-0005r6-LP; Thu, 28 Sep 2023 13:42:36 +0000
Received: by outflank-mailman (input) for mailman id 609809;
 Thu, 28 Sep 2023 13:36:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=iMsa=FM=gmail.com=icegambit91@srs-se1.protection.inumbo.net>)
 id 1qlrCN-0003Yn-TI
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 13:36:59 +0000
Received: from mail-pj1-x102e.google.com (mail-pj1-x102e.google.com
 [2607:f8b0:4864:20::102e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 17bb6941-5e04-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 15:36:57 +0200 (CEST)
Received: by mail-pj1-x102e.google.com with SMTP id
 98e67ed59e1d1-274b3d48e15so9083693a91.0
 for <xen-devel@lists.xenproject.org>; Thu, 28 Sep 2023 06:36:57 -0700 (PDT)
Received: from valdaarhun.localnet ([2401:4900:1c42:8fff::2e:ebb7])
 by smtp.gmail.com with ESMTPSA id
 c3-20020a637243000000b005742092c211sm12673566pgn.64.2023.09.28.06.36.54
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 28 Sep 2023 06:36:55 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 17bb6941-5e04-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695908216; x=1696513016; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=MUdU7BGqF/nk4/vKNdMRuoOiP4xEs6VLIiAHMkfMm4Y=;
        b=gRGAB9g+y7gtYzBfId5ls6oOYBaBXo/ZJZIR9fvIsR9hrvV9Cfchmkd/Q/9uKlWEa0
         Vad6MAkayAnlAFR6/p6Ylfj7it7dBYmKkbZrobz/g8dNimhi6h5jF3TIBZCtySgOrOZt
         z421IJqcMV7ctlptKbr9Dzh4fST0ZOhobaSUpX0VlVfOZJU2RzcvA76Jyl+kvsfkIpNr
         1VIdbQV5r2L2W64Wzxqr61K9yI8q8cSmQlM+nwhQr46apeEGhUL3zH+CnUCRyhy4Sb9L
         h9x/okWt9h3EC61uDNSzc//kmtcz8FeSaHgsb3lT4Ax2lGq2Sd03TWzTx82wwINgaRkg
         FVWw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695908216; x=1696513016;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=MUdU7BGqF/nk4/vKNdMRuoOiP4xEs6VLIiAHMkfMm4Y=;
        b=E66vP5I6Y+D5X5q8c4JtX86/M44roaG9EzqXvY4vTYqOifZdDC+UYlht1/JiRBXIEx
         8/3XPq3zu+uNxUSrkq8AcJuCQc6W50hTw6CH+PrrgeEG/JFxiMDnn5Un+BSbwineZDIx
         d6+unTbTZ8eGAjcSOOpJkEbz4Bct43pUsiYg7tgXbRLORw1RBdco0H5FyTfeZaqU+Iq7
         +udxSFw+BSlpzMiHtG+vEi0CpfOmny8hb09aJw3M7rzyy73BQke/0vTaXtI+nDFlkIOj
         HZKxcWSWhGYrHPMj0seM2biYz1kWknqNj2DahwEQT0xHx3m/KPyjLpXyzKymLM477wrB
         gUtQ==
X-Gm-Message-State: AOJu0YxId+nSRLAa63jmHwRloxHq+LHFwEhx8Gy4EiFbkSwQk9JhDDLA
	6zYwVDwPvn9bhTnesCFpwQPumyl+7FU=
X-Google-Smtp-Source: AGHT+IEnWREIIqcQsh4vg/PAgL20KUG4vk3pWeKRbf4AqDNv+wSYxJ6eTWZvV1ZHz8ZWzfw8x2QxuQ==
X-Received: by 2002:a17:90a:ce92:b0:26d:4ab3:fe11 with SMTP id g18-20020a17090ace9200b0026d4ab3fe11mr1002946pju.24.1695908216137;
        Thu, 28 Sep 2023 06:36:56 -0700 (PDT)
From: Sahil <icegambit91@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: andrew.cooper3@citrix.com
Subject: Beginner looking to contribute to project in archived list
Date: Thu, 28 Sep 2023 19:06:52 +0530
Message-ID: <3269277.aeNJFYEL58@valdaarhun>
MIME-Version: 1.0
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="us-ascii"

Hi,

I have never contributed to the Xen Project before. I am interested in virtualization,
firmware and low-level systems programming. I would like to start contributing to
Xen and learn more about these fields while working on the job.

I was going through the archived project listings [1] in the wiki and I came across the
project - "CPU/RAM/PCI diagram tool" [2]. The project was suggested in 2014 but I could
not find any updates on the status of the project.

Is this project still open for development? If so, I would like to work on it. If not, is there
an open project/task that I could work on or contribute to? I am comfortable with C and
Python. I am also currently working on my Rust skills.

I look forward to hearing from you.

[1] https://wiki.xenproject.org/wiki/Archived/GSoC_2015
[2] https://wiki.xenproject.org/wiki/Archived/GSoC_2015#CPU.2FRAM.2FPCI_diagram_tool

Thanks,
Sahil




From xen-devel-bounces@lists.xenproject.org Thu Sep 28 14:02:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 14:02:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609852.949013 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlrb6-0006bi-J2; Thu, 28 Sep 2023 14:02:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609852.949013; Thu, 28 Sep 2023 14:02:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlrb6-0006bb-F0; Thu, 28 Sep 2023 14:02:32 +0000
Received: by outflank-mailman (input) for mailman id 609852;
 Thu, 28 Sep 2023 14:02:31 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=ABaI=FM=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qlrb5-0006bT-Ky
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 14:02:31 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0614.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::614])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a956cdcd-5e07-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 16:02:29 +0200 (CEST)
Received: from AM6PR04CA0027.eurprd04.prod.outlook.com (2603:10a6:20b:92::40)
 by GV1PR08MB8353.eurprd08.prod.outlook.com (2603:10a6:150:a3::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 14:02:26 +0000
Received: from AM7EUR03FT051.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:92:cafe::8c) by AM6PR04CA0027.outlook.office365.com
 (2603:10a6:20b:92::40) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21 via Frontend
 Transport; Thu, 28 Sep 2023 14:02:26 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT051.mail.protection.outlook.com (100.127.140.64) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.25 via Frontend Transport; Thu, 28 Sep 2023 14:02:26 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Thu, 28 Sep 2023 14:02:26 +0000
Received: from 1d227fcefd7a.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 05B61E83-3024-4EDF-8EB8-5B03BE159111.1; 
 Thu, 28 Sep 2023 14:02:19 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1d227fcefd7a.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Thu, 28 Sep 2023 14:02:19 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by AS8PR08MB6183.eurprd08.prod.outlook.com (2603:10a6:20b:29e::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 28 Sep
 2023 14:02:18 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404%4]) with mapi id 15.20.6838.024; Thu, 28 Sep 2023
 14:02:17 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a956cdcd-5e07-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vU6B8YTkkRGNzno57AG1oohjFBYQQ410vcrX4AIZ8oE=;
 b=K2SnpfZJrt7/Ih64pIypgPJahq+PUNcut1qHiQAt0BJYbIGWd2H1k6WvNH82aGm044Y89nr4QJ8r5IH9EN0fG61x3wRxYjk7UZsHbbgrWJ6B60EQnGjeXHy24U8JOMGBI1+XhIRW4KH2zXD8ak+MuQ9xMfZc7ts0nC4u1VrSwUY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: cbe8cd9fa62133a3
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Lh0OKXOi7+5UzODja08zgR3RFCsoMG9u49A6rPpNdK6I1+UJIwh6n0b2jm2IykyreAvRHe8r4nn73vCsjunr3/DSKp8cHzZZ6xlifj7XBPsNbmpThF0m5OjviUpQAfOPWEsPcSVtnVPdYBH7pz7tIgbYFJ4ZZYwAVZ7WoWlxssWDCJff8CXsrfrUJxKc5KVf4IzV5yyVEU1OEHPD+kzoRfvvPmKH5GY4LlA4uowOyhAA5rlDeZBSXE+7vf2QO+X4EhH7Bg78ZVV20ecSN401oD8KvBiuR9BRO+xBiZQ0WU8VP970IM+OEaRAideqlHz9KtgRodxXdG9VQ0gha0QALQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=vU6B8YTkkRGNzno57AG1oohjFBYQQ410vcrX4AIZ8oE=;
 b=ShsiIIqGF5jQBu7PATzGEYlbpKm8iOUYdzNHPt9vvRbCJNH9F5OPWUCvNf8qj4TzGy0OkECI46zjgAGoZB0V9J8rWIvbC7XcPPjWbFpgLRBJu9xR9TmhWarFsLTS51tGkz1HM8admLL7adabfqo001qv5aYSzxz4NKnQXLPDzDshLP7IGdcRyIhZiucPRSDmgQJurCx4fjdntrpNLHad2K2hqD3ZxQ0tDO5mqw/0IA2AEHivsbgigbM0uW1Kc6+zgEyMYQxNBSljtGWx4P4j0cxQTpoWGRZjvMejnp09mlNrM6J5W0u+ao+9EjQ9I/3nGEi/m6isbGKi3f2LNpltHw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=vU6B8YTkkRGNzno57AG1oohjFBYQQ410vcrX4AIZ8oE=;
 b=K2SnpfZJrt7/Ih64pIypgPJahq+PUNcut1qHiQAt0BJYbIGWd2H1k6WvNH82aGm044Y89nr4QJ8r5IH9EN0fG61x3wRxYjk7UZsHbbgrWJ6B60EQnGjeXHy24U8JOMGBI1+XhIRW4KH2zXD8ak+MuQ9xMfZc7ts0nC4u1VrSwUY=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Michal Orzel <michal.orzel@amd.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: Validate generic timer frequency
Thread-Topic: [PATCH] xen/arm: Validate generic timer frequency
Thread-Index: AQHZ8ghdP0qqL8lJK0yXEjdflFNrbLAwRKqA
Date: Thu, 28 Sep 2023 14:02:17 +0000
Message-ID: <EBA97CE4-CA12-4958-9666-FE4E1CA91495@arm.com>
References: <20230928123435.2802-1-michal.orzel@amd.com>
In-Reply-To: <20230928123435.2802-1-michal.orzel@amd.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3774.100.2.1.4)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|AS8PR08MB6183:EE_|AM7EUR03FT051:EE_|GV1PR08MB8353:EE_
X-MS-Office365-Filtering-Correlation-Id: 55515d2b-3380-4d49-d1ec-08dbc02b8bb5
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 KWVNXpi4tUpmAzWef6ggShoeDqEsbRCdkpDaM2RVIaXSmdbAhPs2WIJQR33eMy6HGrZ6ZpE8cEXWiTFv05ccXhrSwp3H4SO7exyRIfKgLJfqm1s2+IPVg2XO8oqbk44SSCEtprDTiUfT5AwfFEt0oOoKOMZxmd1DRlnQ6HgVTzN1eVuanrPICVtq5yPHoLJjlnznFOHt8zIFbjJ3GsVz3PwkR7SDzuHCnOvr4XnlZoBAN/jR+fqMYNqRkdura1haQGcLB0neqO6SbsHRJe9HAJ6Xf59LTyzXZDTXXbb/GLa9WJVNTHfmo8syQdHU1WIry2+gE3Sx3bH5ZGrByMwoF5LxDg109FhtlUkhYj8zwADQQguDw66vyAmqReAJR75u9FJtkIRg14XY2AEmA/W1hYzYLkFy19/e2UrinjExD3WhZk0Bz8P6yHPHu4iBLUtC6zCCfkAL3vd6KveZsuPg2bvyJFOeKPvBwSuADBp4+q8Wd2JfNshYC/h3jruMManOKkS9v6gFWQDYGY5WiYbFNQioCqPnJ9EYGf+4b6nn+3+BOSuTkCIo1kLxSMcWVQsDBdab1Pay5MA8rFbDWkmd+wFnzk+VKB+kyWL0IT4UKXTMUVDpxzd2BNFI82aFRvF6ZhrFd2gEC06aEsP/j2OpGLSCYK0cJhMkrqo/b9MrlP8=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(346002)(136003)(376002)(39860400002)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(2616005)(8676002)(4326008)(8936002)(122000001)(6916009)(53546011)(33656002)(6506007)(15650500001)(2906002)(26005)(38070700005)(38100700002)(54906003)(66446008)(66946007)(66556008)(41300700001)(76116006)(66476007)(64756008)(316002)(5660300002)(91956017)(6512007)(86362001)(36756003)(83380400001)(478600001)(6486002)(71200400001)(41533002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <B5DA600E03D36D41AEFA1AC230ED554B@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6183
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT051.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	5aee89d1-d279-45b8-b003-08dbc02b86b3
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	cHPXvttLSEygKKQ9geGc7Av4rFnSXq7FcaUiV9eJngU80oOjP0CAkusXXAxJZu0GukXa7zLXOFR6bSMtZyRq/DHGgI1iuKByWG65T3ectY7OfB1Thf4wftb82TxA0EUsm9FrQegHcVfQ7BVtEK/Mkl6OMKkfsAF1Wvyjdqe2ynM+kRxvTAJTxiM+bKeYA1PzgRONxQpfPe+sbrWhz2WlfBek7tIcXCs41Y3ROFkXRmKVdFEGH2ZPnjv5X+MLJ7hHR+3bcWX1UshI+pZ2ymMb1MG1m5F4IbA28BoOCbcBDk36WMOU116bvC7TwFC+r8qKSYh6eknNhgtHfjv8x1+f9zo5UbphAg0hEoVC3hFdLn7xPnLZDq9DhpSYkmyQ74lfV5v04SUM1GejHjV0YzkYAImYhRZvXIEpgTxi16wRbTyGdAbH+7RWkllJd5xKojcYpFhU4YkWNld2IhSNpd1ijmGBxdANRwfX1OWuHMqnMtZGteaXEESLXepzDfkNNLZRm6Vepu9SJFZ6IkOkVFG7YpBMBTW+7exQo6KqiiLHx7isb5eiWqrs3X8sMjFzif0TgBXoTvMdK8sJee3xZ2En2C7XWqxkaiBKRcHUWcjQeIdVFqNzisIS/kuRD0u2iY1oZahFwUxrpOzLlvfarHhMvsaW5M+0tciIbKyX4kY2KG5bBltlPycIH5znwzp6Bp7pjpgiev+rteIUtpGnPH9DxYZ0XRVrJI4ni0UWqUL1GlfnkeR0VvWnJxrYY85CFNxbbywRBeN2GkfnaiWiWc3IYA==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(346002)(136003)(376002)(230922051799003)(64100799003)(1800799009)(186009)(82310400011)(451199024)(36840700001)(46966006)(40470700004)(6486002)(26005)(40460700003)(478600001)(2616005)(83380400001)(107886003)(47076005)(336012)(356005)(82740400003)(86362001)(81166007)(33656002)(5660300002)(36756003)(36860700001)(53546011)(6506007)(6862004)(6512007)(4326008)(40480700001)(8936002)(8676002)(2906002)(316002)(70586007)(70206006)(54906003)(15650500001)(41300700001)(41533002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 14:02:26.2507
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 55515d2b-3380-4d49-d1ec-08dbc02b8bb5
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT051.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8353



> On 28 Sep 2023, at 13:34, Michal Orzel <michal.orzel@amd.com> wrote:
>=20
> Generic timer dt node property "clock-frequency" (refer Linux dt binding
> Documentation/devicetree/bindings/timer/arm,arch_timer.yaml) is used to
> override the incorrect value set by firmware in CNTFRQ_EL0. If the value
> of this property is 0 (i.e. by mistake), Xen would continue to work and
> use the value from the sysreg instead. The logic is thus incorrect and
> results in inconsistency when creating timer node for domUs:
> - libxl domUs: clock_frequency member of struct xen_arch_domainconfig
>   is set to 0 and libxl ignores setting the "clock-frequency" property,
> - dom0less domUs: "clock-frequency" property is taken from dt_host and
>   thus set to 0.
>=20
> Property "clock-frequency" is used to override the value from sysreg,
> so if it is also invalid, there is nothing we can do and we shall panic
> to let user know about incorrect setting. Going even further, we operate
> under assumption that the frequency must be at least 1KHz (i.e. cpu_khz
> not 0) in order for Xen to boot. Therefore, introduce a new helper
> validate_timer_frequency() to verify this assumption and use it to check
> the frequency obtained either from dt property or from sysreg.
>=20
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>
> ---

Reviewed-by: Luca Fancellu <luca.fancellu@arm.com>





From xen-devel-bounces@lists.xenproject.org Thu Sep 28 14:08:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 14:08:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609872.949027 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlrh6-0007d4-8e; Thu, 28 Sep 2023 14:08:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609872.949027; Thu, 28 Sep 2023 14:08:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlrh6-0007cx-5t; Thu, 28 Sep 2023 14:08:44 +0000
Received: by outflank-mailman (input) for mailman id 609872;
 Thu, 28 Sep 2023 14:08:42 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=qJIK=FM=citrix.com=prvs=6283bbd10=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qlrh3-0007cr-Vw
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 14:08:42 +0000
Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com
 [216.71.155.175]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 84cb6656-5e08-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 16:08:38 +0200 (CEST)
Received: from mail-mw2nam12lp2040.outbound.protection.outlook.com (HELO
 NAM12-MW2-obe.outbound.protection.outlook.com) ([104.47.66.40])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 28 Sep 2023 10:08:32 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by SA3PR03MB7346.namprd03.prod.outlook.com (2603:10b6:806:382::19)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 14:08:27 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Thu, 28 Sep 2023
 14:08:27 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 84cb6656-5e08-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695910119;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=AUiYQwJ67v0Xx4SFfRPihqBzXghz4nyDPkyDzsrdACA=;
  b=huPlOaHjgWgEARZZl3Dhvgat0iUkjTpvm9xUz5YUzrm+ut7GIRr3nJE6
   4MZ7zAsjYKagp7x2DyzYP/XHTVjGFc1REBu+Phb87kTvDI4SMgkY7UzPb
   B0UBX6sK+yAvb7JLAe+e3NVrSMOLmmkNAthHspNLfJiJ29uFSEerMx36l
   o=;
X-CSE-ConnectionGUID: 6p4IEvxvTx+IGtai8wSpDg==
X-CSE-MsgGUID: Lpl47fXhTmOY08IFPoBuQQ==
X-IronPort-RemoteIP: 104.47.66.40
X-IronPort-MID: 123332610
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:pwp2MK3zNZyUXpmhHvbD5SVwkn2cJEfYwER7XKvMYLTBsI5bpzRSm
 GoZDWGPPKqNNmHxKIh1b9m1ox4AvMPUzNFqHgZlpC1hF35El5HIVI+TRqvS04F+DeWYFR46s
 J9OAjXkBJppJpMJjk71atANlVEliOfQAOK6UbaYUsxIbVcMYD87jh5+kPIOjIdtgNyoayuAo
 tq3qMDEULOf82cc3lk8teTb83uDgNyo4GlD5g1kNagR1LPjvyJ94Kw3dPnZw0TQGuG4LsbiL
 87fwbew+H/u/htFIrtJRZ6iLyXm6paLVeS/oiI+t5qK23CulQRrukoPD9IOaF8/ttm8t4sZJ
 OOhF3CHYVxB0qXkwIzxWvTDes10FfUuFLTveRBTvSEPpqFvnrSFL/hGVSkL0YMkFulfX3kS1
 NEGOC4xflOiqP6/weKkcfFAiZF2RCXrFNt3VnBI6xj8VKxjZK+ZBqLA6JlfwSs6gd1IEbDGf
 c0FZDFzbRPGJRpSJlMQD5F4l+Ct7pX9W2QA9BTJ+uxpvS6PlGSd05C0WDbRUsaNSshP2F6Ru
 0rN/njjAwFcP9uaodaA2iv23bSUx32iAOr+EpWc7vo231OjxlAWLyxOBXqVmf6Tl3eHDoc3x
 0s8v3BGQbIJ3FCiS9DmdwG7pHOCsQ8RX5xbFOhSwAOHx7fQ4g2ZLnMZVTMHY9sj3OcmSDpv2
 lKXktfBAT10rKbTWX+b7q2Trz65JW4SN2BqTS0ZSQoI5fHzrYd1iQjAJv54C7K8hNDxHTD2w
 hiJoTI4irFVitQEv42k+XjXjjTqoYLGJiYV6wPNTySa5wV2TIe/Ysqj7l2z0BpbBIOQT13Eu
 WdencGbtboKFcvVyHTLR/gRFra04frDKCfbnVNkA5gm8XKq5mKneodTpjp5IS+FL/o5RNMgW
 2eL0Ss52XOZFCHCgXNfC25pN/kX8A==
IronPort-HdrOrdr: A9a23:k6rFTKrWQ0Q+SBFIokEMlu8aV5oJeYIsimQD101hICG9E/bo8v
 xG+c5wuCMc5wx8ZJhNo7+90dC7MBThHP1OkOss1NWZPDUO0VHARL2Ki7GN/9SKIVycygcy78
 Zdmp9FebnN5AhB5voSODPIaerIGuP3iJxAWN2uqUuFkTsaEJ2IMT0JdzpyfSVNNXB7OaY=
X-Talos-CUID: =?us-ascii?q?9a23=3APfbiPGuMQqUQLFzarWDiOn7X6It7aiH84WnAPXO?=
 =?us-ascii?q?oSkdGVLSUGUCr4I9rxp8=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3A88utcQxbPJXVOqvpCbVWNf7d6KaaqIC2DBxSn6U?=
 =?us-ascii?q?Gh8yjBHQgGhmlix6qe7Zyfw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,184,1694750400"; 
   d="scan'208";a="123332610"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=nM/BOliumtzQoSicvnXC+BScUZM/8oukFahXJgGnllnk3UReHovoTr7EMMBOTpj7T/WUzF/L7RRtdJRr/l09JTHab15+dlZeagwxJtNwfH2L1oonqBmks3Lkau6j25mR01J9FFH6g/QF4D47vPLvqzNre3Dy8aer2EpxUIKD3O0AXgEJ1RZa/9Vgp+5IoQWrlex5qtkoCplYM//h5KddfHZOkgO4klOSCeppMWyg2q30ODm72ubUhPZFxrQ+poVieJYC/Y3GfO3THYTHmBjJz+EzW3X2iNnxGM/DP/n+CdFljc4J/KDeQHJmACN7DSJ9P7mWozTO3qoK4ztgY7n2+w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=HQ09ZLM2bWVt/zqEhBwLTLGEgTmQ6io+0t023Q+v9ZU=;
 b=P5koBy62Jf//Y/G8j2X878NFRW6jntTmsz3rW4UEjZXprFSpiVrunvC+OcnqJdsmoSVtCQfzTR2uZRuCzV9zOoMbWagn0yJtyvT/5a3ckf42AyzmtOdeNj40GX2dU5g5rEqSmg+Odhs00X1Ne9jooI3cpZds75jB+193sAvB1rJP8ribnB3IfLJWa3XzqDZ3hfdxXY497avxpofsrj4N+eu/frsoHcZP/K8gtREryczGv8FIeTGcasaJO5cWdGe7hKsBpRJC5lbrbqlSxiurVO394s6PZ4EbP/CK20NIV+SevKyfhW13L8Miv6duDN7qSoZ1EdcWl5nfKNbz7jDG6Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HQ09ZLM2bWVt/zqEhBwLTLGEgTmQ6io+0t023Q+v9ZU=;
 b=EKksKwDxlghF/mCG7JzXZPh9kx7IDuZQ1O6qFd5lMHdORUs+hYFjrSb268J9VTTFKTxeWkCDvBRBc6gdc1eLjgyDmD8J7FP3QRir6Jk9hD5O+jwowXJj1TVXyMvjkU8LE4YVFjUQct1p3Okq31jKolXWjBE6zNgi18b+Hjr9Dls=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Thu, 28 Sep 2023 16:08:22 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Tamas K Lengyel <tamas@tklengyel.com>
Cc: Jan Beulich <jbeulich@suse.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH v4 5/9] x86/mem-sharing: copy GADDR based shared guest
 areas
Message-ID: <ZRWI1vGscL9ItRMk@MacBookPdeRoger>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
 <6047c192-0f37-e4ff-5980-fd137b3f1869@suse.com>
 <ZRVMhdyI8s4chr7b@MacBookPdeRoger>
 <d285a456-307a-0a36-0910-cb80f419627d@suse.com>
 <ZRVeiAFlyf1LJ2qR@MacBookPdeRoger>
 <CABfawhmAZGTaKZfmwY4t8599i6qKaTOJ-fngFmtvS4LhJMh7iA@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CABfawhmAZGTaKZfmwY4t8599i6qKaTOJ-fngFmtvS4LhJMh7iA@mail.gmail.com>
X-ClientProxiedBy: LO4P123CA0379.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:18f::6) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|SA3PR03MB7346:EE_
X-MS-Office365-Filtering-Correlation-Id: abb8b6f6-f91a-4d69-61e0-08dbc02c62c3
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	aXitKEg0+mUlp5wieIgyZzll5bfDqBj+MPfDXTvsfXHwVFeRlhYMlOm4a9d723Ptsv2BE9frbv5Odg35ilTViNq8n6q6U66JvJT+B26NyvJNL3Aue62WTzY4Iz4vSjFI9wN+u6d6PT/C0kp0pUin6qHEC291cvipC+GJdDjyQBSeQ2E1ak/9Hu3/DOD9GeBP4yHkuMhmm51DQbK0X1Vc77L5V6JVrzLJvZoJ60pvd6IeAnw1IjZblwcPy2LMeMeajhRDO6S9l2oCL0ByfynxX30pGo+7cGOzxYthHk72iccfZnt9ldwzj+TfElabel2iSC/fHNrCUWICBmsxVvVmJMdWUjEgCQXfmdBn877jQoFmFPFbC3OhrpIYwyf6DTAwsPIMTFcFp29kLLXZauodwKxHroKdSUoj1sfSwkOqBzVhPbx5/0K0xwH+eFA69xZJyF9m7CNFLnZt7FUtdbcP86pFpQ+/OGdBSvxQjGMKAvzoGg473jo0/eWrjZ8l5tiahMqb82QuEqro8r+fmo1LSv6Lln5P3nj5OnMyPgm1sapc0ZCFI4jJzya+ath1mF+8
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(136003)(346002)(396003)(39860400002)(366004)(376002)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(6666004)(26005)(6486002)(478600001)(66899024)(85182001)(33716001)(83380400001)(86362001)(82960400001)(38100700002)(5660300002)(53546011)(6506007)(6512007)(8676002)(9686003)(2906002)(4326008)(41300700001)(316002)(6916009)(54906003)(66946007)(66476007)(66556008)(8936002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?eDJscSt1UVVZYzFXT3oyMFBKZlNPZm9remxmaGd4SEZuWDNzaksyN2JaRWRp?=
 =?utf-8?B?Z3diNzkyNWZ2bmc0cGFKTElvYXIwOUE3QmN1NWlCcFYvVkpKcFlNMzU5SExB?=
 =?utf-8?B?V2x1ZFlRbG9KWFJWNDNBbnJYUldqcmZ6bzdXaUZYQ0VBcVdyYW5oNDhSTXJM?=
 =?utf-8?B?T2pXQWxrWmtmdVRrVnBVRkxWYUtaRHJybXZYQjl5dDgzSEZJQWE0ZEcyQXFS?=
 =?utf-8?B?b1R0YUZrTk1SMTJpdWQrdjBsblc5UEErdjh5WW9ZdWozTnNZcGs3RFlybVM3?=
 =?utf-8?B?Q3pYVTZsd1p3SVYrTEdDWE9Ka2dldTJVU2ZYWWFFMU1vT2lmV2lQMVVoaWVn?=
 =?utf-8?B?RTZsd25MNjlXdEdnTmVYeTZSc0xtRGd4ekRzZ0pEeVlpZ1FXcDYrYVZLRCs0?=
 =?utf-8?B?d0UrKzRuenVVWUN2QzhVb0lUbWlrWllNWU5ZSVZBSmpEUXNuY2ZENE5YU0o1?=
 =?utf-8?B?TGkvclJBNTA1eHdNNExSSDVZb1FDS3I3dVJpQlZhMjBtS0ZFai9pSGk3Nlcr?=
 =?utf-8?B?amxzQnhlOWNVUVI3TUZsRmtjSGh6MW1maU9WaXR0NkxtQ3l6YjVQWlpkdGFU?=
 =?utf-8?B?WG52OUxDQ0hPRzg1TTdnTFZ1OGhqWmEydUtpa0dWUUdjWjF4TzExRXhNRWxo?=
 =?utf-8?B?V2NHY29RUTRXVGNwRjY3VDRKenU4aFRDRUhQS2U4M2hpUzBMV3ZQenI5VkJu?=
 =?utf-8?B?ekdFakQyQXI2OEFEbUYwTmU5MytqK3ZxUHZ5b1ZrZWdWZHB3QnBvcWwxVzVV?=
 =?utf-8?B?VXNZTW5Jc0hNbVM3TC9MZ3hxTWxMcWhERXp4VTdLYUVwUU5XVG1Sd05vTklz?=
 =?utf-8?B?SVBrWGhHSFd2YlU3SFBiY3E3b1Q3K0I2alhoT21XZmZRaHhINUl6YUQrLzVj?=
 =?utf-8?B?VFNVQVhMdUZZQndNZHNOcUNjYnNzVEZKMitiUVlLdERDT3UzV1pEbEZJamVP?=
 =?utf-8?B?dGdVNnNvUUVuNWJRTkV0MEI1d1p3OWw3TkhOamdRUnJlcmpqWk0zbjRVeGpi?=
 =?utf-8?B?OHkyam5kYjV6cUpiYnJDYTRpWVdMNWlWc09BWFdDVWVKMEZQNERjY2hPNDIr?=
 =?utf-8?B?NFIyZjhiZFFCZDdYV1NPV0EyU1BmSkI3R3lJbkdYOE9ha2p3YWZSNkd4VjJK?=
 =?utf-8?B?alN0MHhPY2FNUVZySjNwbTRNSUNib2FMTmZWVWg0SDdsSzMya01kWUpKWUZo?=
 =?utf-8?B?TWZYSTNoQUY2TGNmWFlUOS9VT3dGNjFzcFlUQU1BaWQ3NUNZZCt2QTJqQVF3?=
 =?utf-8?B?dlBjWHRPZll5ZE9Pb0J1eCtNUThjVXRmS29UU2owU2pJcFg2SGsxVExQZHNG?=
 =?utf-8?B?WWNaSjIwQTVDK09kazNNN2pXQVk1MlRDN0haVUl4eEtZL0MrNjJEWWZBTDQx?=
 =?utf-8?B?ZGZld1BxTzZKZmtsalBPb0VYZ2RYUjFvUTVOOEI3cFN5S3Q3M0pPZnlZTjdM?=
 =?utf-8?B?SUlnQXBPcExJWmNCbUZFa0I1QWg0aXdGcWVGQTNEUDBlVzdEalpmWGlxWEFS?=
 =?utf-8?B?dDR2dVl0ME5WR3VwS1V6eExuRTNKbHdLVFJYOG1MS3RERDQ0TUhnNit3bExI?=
 =?utf-8?B?R2FzV3p6QUtmSUZSenlhTHMyVHBwRXVjQjRDVmtGUTdTWXl4Y2Z6Z0R4S2Yv?=
 =?utf-8?B?bG1YeUhjVkJ2VUxldFdkQ3o5aWh5UTJQL2dNSXNOR1M0VVgwRDZGdFFqODcy?=
 =?utf-8?B?aWtyMGtHTFJleFZ5cGhjSEJ1d2RkdVorMGNEZHFKWVNtTlV5RTBRUk8yVlFB?=
 =?utf-8?B?Wi80MHNIS0VkUFZubDJoZC9tb3pjUzZiZkhBSXZQL0oveXJ6M0U2dlVlTWhX?=
 =?utf-8?B?Tnl1OHlxbGJQMWpENTIzRFBoL2UzSjVtTXRFVUh6TUxBTnVVU2RENnE4MTVJ?=
 =?utf-8?B?K3BMektiQ1ZnNHhOOG5TbTArSE51L1hmcFY1TFU1TnRlT1E3OW16SFk4SThx?=
 =?utf-8?B?a1VIblFsS09rYnlzR3hlR3BrYlF0dzJnWlcrbXJBa1dIMm9oTGIzRjJrREgz?=
 =?utf-8?B?blpKYXJlaHI1QXdWaUVTbHNtTDlWdHFKR3NzdlN5bUgxcmVkTWVQSldFMytT?=
 =?utf-8?B?aU9LZUZ2cUhaeExoT1VsUUlPUUt2Z2c3b3BTZG55WEs0bHQzb3ZJVzhNYm9O?=
 =?utf-8?B?Q0NocUltZm44NE5qbmJEZ0NWRmI4K0JvUWNxTmw5NEk2V0hWR0hua3ZZYkc2?=
 =?utf-8?B?eVE9PQ==?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	a2jBREmW1c4+eQu3JbHhTvbmRQ+65BwwSTedopZlgpnYouDQb8qpxRS80G0M5QRuNCAKX3h5jclnUEZDKPXBDxQUFKDlZHnARo5Tg7UlcXMIU9LHevTqrmzlgICh0jouZ9331mYNvXprKQzKJ5/eGvTdtSphfKMBlZP8noUMw/chGE/71vVEuxr+SXEbJ9hE+yOVHW0wowVFZDPlHLNKwEevHiJRuwvSTPqM7b6OwWJUmfDuFDdxlRcJKarhMWNZHxI/JOOzTGUvLFOKmv2bQyQNEpGW1gP6ZFoBCbM022S6zfTRUoeWNgbswtaVe+ltueDGKsbBJ7tSmcFKjqmunUJqutVNMEX6aWcPHZjfCfpD1JWNqkwokVi7NVso4s2apCUb75Rg/ZrDE/LpShq7GVlCemqJVqWaLQsDQiS5Cz3b/Pyot2gdP/R3R4k7qwy7JlcfEVG0o4P+gB6MjkByAw4ySMXiS2WBlrvATadghIcWyhsfFIBmhxHsrC0/WgpVwYipznV1PeGJqFafWheyu3Ufa/vYpAGqSezqzNZp832QOdyCASkguvVV+cBitfMpxNH1mtmIXPYuaqdtHrFo8pXkdBn/ZEyrSIe+aucNwK7shQQSIzkUoQZINQbW4BzBP2NJ5lLTocOfT6OlHZwfyN6qDEXeIzP5VRPWm7gq3u+nn0hiRIe2h4660eY93X1oG/ftA4RRCOzT3halsFzWiwiXu90/ut4uROtIdUHyPQDBzn23DqYBO3HOpwzuRKR5iwnVwyK0OVbW7deozOvSE4lIdxChj7ZG0lcm5MZY09FJma4gz2D0s7MR3Z/0nSwxu/TX7tG/1u17Vi6CWEJCTuQgTnEqkDxo2U3R4Y8zBmzVUsx/wpp08/lokESDKpkw0zf9K3fZEvgHSb66Yf/rqy3ekNatX52vkRVLVqfzg+Y=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: abb8b6f6-f91a-4d69-61e0-08dbc02c62c3
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 14:08:27.3796
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9RN3mE/97FtmmGQP5uPQRC1pxpDX97ZFMZTKIR+keBlM/7oXYduTOj/Bm2N0ohO7etqTc+cTWR1DX5jkyrfUiQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR03MB7346

On Thu, Sep 28, 2023 at 08:57:04AM -0400, Tamas K Lengyel wrote:
> On Thu, Sep 28, 2023 at 7:08 AM Roger Pau Monné <roger.pau@citrix.com> wrote:
> >
> > On Thu, Sep 28, 2023 at 12:11:02PM +0200, Jan Beulich wrote:
> > > On 28.09.2023 11:51, Roger Pau Monné wrote:
> > > > On Thu, Sep 28, 2023 at 09:16:20AM +0200, Jan Beulich wrote:
> > > >> --- a/xen/arch/x86/mm/mem_sharing.c
> > > >> +++ b/xen/arch/x86/mm/mem_sharing.c
> > > >> @@ -1641,6 +1641,68 @@ static void copy_vcpu_nonreg_state(struc
> > > >>      hvm_set_nonreg_state(cd_vcpu, &nrs);
> > > >>  }
> > > >>
> > > >> +static int copy_guest_area(struct guest_area *cd_area,
> > > >> +                           const struct guest_area *d_area,
> > > >> +                           struct vcpu *cd_vcpu,
> > > >> +                           const struct domain *d)
> > > >> +{
> > > >> +    mfn_t d_mfn, cd_mfn;
> > > >> +
> > > >> +    if ( !d_area->pg )
> > > >> +        return 0;
> > > >> +
> > > >> +    d_mfn = page_to_mfn(d_area->pg);
> > > >> +
> > > >> +    /* Allocate & map a page for the area if it hasn't been already. */
> > > >> +    if ( !cd_area->pg )
> > > >> +    {
> > > >> +        gfn_t gfn = mfn_to_gfn(d, d_mfn);
> > > >> +        struct p2m_domain *p2m = p2m_get_hostp2m(cd_vcpu->domain);
> > > >> +        p2m_type_t p2mt;
> > > >> +        p2m_access_t p2ma;
> > > >> +        unsigned int offset;
> > > >> +        int ret;
> > > >> +
> > > >> +        cd_mfn = p2m->get_entry(p2m, gfn, &p2mt, &p2ma, 0, NULL, NULL);
> > > >> +        if ( mfn_eq(cd_mfn, INVALID_MFN) )
> > > >> +        {
> > > >> +            struct page_info *pg = alloc_domheap_page(cd_vcpu->domain, 0);
> > > >> +
> > > >> +            if ( !pg )
> > > >> +                return -ENOMEM;
> > > >> +
> > > >> +            cd_mfn = page_to_mfn(pg);
> > > >> +            set_gpfn_from_mfn(mfn_x(cd_mfn), gfn_x(gfn));
> > > >> +
> > > >> +            ret = p2m->set_entry(p2m, gfn, cd_mfn, PAGE_ORDER_4K, p2m_ram_rw,
> > > >> +                                 p2m->default_access, -1);
> > > >> +            if ( ret )
> > > >> +                return ret;
> > > >> +        }
> > > >
> > > > I'm still unsure why map_guest_area() shouldn't be able to deal with a
> > > > forked child needing the page to be mapped.  What happens when a
> > > > forked child executes the hypercall to map such areas against not yet
> > > > populated gfns?
> > > >
> > > > Shouldn't map_guest_area() be capable of handling those calls and
> > > > populating on demand?
> > >
> > > Funny you should use this wording: P2M_ALLOC will deal with populating
> > > PoD slots, yes, but aiui forks don't fill their p2m with all PoD slots,
> > > but rather leave them empty. Yet again I need to leave it to Tamas to
> > > confirm or prove me wrong.
> >
> > If the child p2m populating is only triggered by guest accesses then a
> > lot of hypercalls are likely to not work correctly on childs.
> 
> That's not what's happening. As I said before, ALL access paths, be
> that from the guest, dom0 or Xen trigger page population. If there is
> a hole and P2M_ALLOC is set we do the following in
> p2m_get_gfn_type_access:
> 
>     /* Check if we need to fork the page */
>     if ( (q & P2M_ALLOC) && p2m_is_hole(*t) &&
>          !mem_sharing_fork_page(p2m->domain, gfn, q & P2M_UNSHARE) )
>         mfn = p2m->get_entry(p2m, gfn, t, a, q, page_order, NULL);
> 
> Depending on the type of access we either populate the hole with a
> shared memory entry or a copy.

Then the code here is redundant, as the call to get_page_from_gfn(...,
P2M_UNSHARE) in map_vcpu_info() will already take care of populating
the child p2m and copy the parents page contents?

Thanks, Roger.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 14:31:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 14:31:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609893.949045 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qls33-00011u-5J; Thu, 28 Sep 2023 14:31:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609893.949045; Thu, 28 Sep 2023 14:31:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qls33-00011n-2Y; Thu, 28 Sep 2023 14:31:25 +0000
Received: by outflank-mailman (input) for mailman id 609893;
 Thu, 28 Sep 2023 14:31:23 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=s/xa=FM=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qls31-00011h-5u
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 14:31:23 +0000
Received: from mail-oo1-xc29.google.com (mail-oo1-xc29.google.com
 [2607:f8b0:4864:20::c29])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b179463c-5e0b-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 16:31:21 +0200 (CEST)
Received: by mail-oo1-xc29.google.com with SMTP id
 006d021491bc7-57b64731334so6417092eaf.1
 for <xen-devel@lists.xenproject.org>; Thu, 28 Sep 2023 07:31:21 -0700 (PDT)
Received: from leoy-yangtze.lan (211-75-219-203.hinet-ip.hinet.net.
 [211.75.219.203]) by smtp.gmail.com with ESMTPSA id
 r16-20020a638f50000000b00578db618c83sm13093128pgn.36.2023.09.28.07.31.17
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 28 Sep 2023 07:31:19 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b179463c-5e0b-11ee-878a-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1695911480; x=1696516280; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=BfTcJV/a1b6cAFtwTa7R4HeOQgV7MOOw/WXNMyr4BUw=;
        b=qKRP2xetvxYtT7ace+Fy3jYJMtyVyRLzd0GrVQBgQy5pNRPg7WRWXbGb8GxHlky3Nj
         5BSqq2mml7OTBv157Rz+knbTfpbcqnSdXV+UaxxacbNBRCvNtc5iGmAaJzrJd96H2IdK
         wTMjWWLjbipTN1HfnZvtNZYwkLLMcAFh1sPkCyaGP4wH3kc6MDul7yBwu1+pO27nGHcR
         HaBFtD4bWmjj35eAR9SatFlmGDFDCxCyIbOq3TMNgaNXlMNfvh3EifpmAhE6OKbe6YMI
         r8h+b8XCkee9kb8oIE8c5oJJSmC+njEmH/wmbiGZLi7KN2xkzIXd4X3TQ/ecxe59k+ms
         ULMw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695911480; x=1696516280;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=BfTcJV/a1b6cAFtwTa7R4HeOQgV7MOOw/WXNMyr4BUw=;
        b=XrITvmj+a0y6BD4DIaZJs0H7Kxa1QmzR28dT7cB679gn34QyZmhgqH3kKPEpV1zY0x
         FG52GNehSauqOLOCY71hehiEdCEsRl/gMyaERb83JoyMg/RN0FMnFEV4Wep1i7M70s8A
         arMbecJyYsOZz8BIfQcU9bHr3xHBRrA226eKQWjZd69Qj0JQIY710e5OVd1nbI6Tu9ah
         20curik9QtDIr4BiCn56q+vF0p/4o8Ld7c59GR7zvCtLojlcQ+1T6nBKJfocTnCJZ2OD
         +HHONwRS2QA0oc73pvwqwrUjL8hVhNP6ldpnst4heIUe19IoX5LqSNzZSE2HWL4LFHiz
         s11A==
X-Gm-Message-State: AOJu0YxZjRKImEaPGK0JMCJrX6Y7Z1v5dLC5ndTR7S1BeJqIO2nCJw7F
	Enbgx/Ugt4RV6TKII4SmZiEi7FiRfMJRg0KSpKuWRMzD
X-Google-Smtp-Source: AGHT+IEycY0JaHtVyHyzFWhV7ziTWGKnK7VcK2jBVk6k15k8+iAV7xrH3ZOlHFfnhaiYHK+81bRMQw==
X-Received: by 2002:a05:6358:3406:b0:141:d2d:6da7 with SMTP id h6-20020a056358340600b001410d2d6da7mr1373240rwd.17.1695911480115;
        Thu, 28 Sep 2023 07:31:20 -0700 (PDT)
From: Leo Yan <leo.yan@linaro.org>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
	Julien Grall <julien@xen.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	Michal Orzel <michal.orzel@amd.com>,
	Leo Yan <leo.yan@linaro.org>
Subject: [PATCH v2] xen/arm: Skip memory nodes if not enabled
Date: Thu, 28 Sep 2023 22:31:10 +0800
Message-Id: <20230928143110.248221-1-leo.yan@linaro.org>
X-Mailer: git-send-email 2.39.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Currently, the Xen hypervisor doesn't handle the status, the issue can
be described from two perspectives: the memory nodes and the reserved
memory nodes.

- If a memory node has a status "disabled" it implies that it should
  not be used. Xen does not handle the status property for the memory
  node and ends up using it.

- If a reserved memory node has a status "disabled", it means that this
  region is no longer reserved and can be used, but the "disabled"
  status is not handled by Xen.

  Xen passes the intact device tree binding of the reserved memory nodes
  to Dom0 and creates a memory node to cover reserved regions. Disabled
  reserved memory nodes are ignored by the Dom0 Linux kernel, thus the
  Dom0 Linux kernel will continue to allocate pages from such a region.

  On the other hand, since the disabled status is not handled by Xen,
  the disabled reserved memory regions are excluded from the page
  management in Xen which results in Xen being unable to obtain the
  corresponding MFN, in the end, Xen reports error like:

  (XEN) arch/arm/p2m.c:2202: d0v0: Failing to acquire the MFN 0x1a02dc

This patch introduces a function device_tree_node_is_available(). If it
detects a memory node is not enabled, Xen will not add the memory region
into the memory lists. In the end, this avoids to generate the memory
node for the disabled memory regions sent to the kernel and the kernel
cannot use the disabled memory nodes any longer.

Since this patch adds checking device node's status in the
device_tree_get_meminfo() function, except it checks for memory nodes
and reserved memory nodes, it also supports status for static memory
and static heap.

Suggested-by: Michal Orzel <michal.orzel@amd.com>
Signed-off-by: Leo Yan <leo.yan@linaro.org>
---

Changes from v1:
- Renamed function to device_tree_node_is_available() (Michal Orzel);
- Polished coding style (Michal Orzel);
- Refined commit log (Michal Orzel, Julien Grall).

 xen/arch/arm/bootfdt.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
index 2673ad17a1..1b80d2d622 100644
--- a/xen/arch/arm/bootfdt.c
+++ b/xen/arch/arm/bootfdt.c
@@ -16,6 +16,19 @@
 #include <xsm/xsm.h>
 #include <asm/setup.h>
 
+static bool __init device_tree_node_is_available(const void *fdt, int node)
+{
+    const char *status = fdt_getprop(fdt, node, "status", NULL);
+
+    if ( !status )
+        return true;
+
+    if ( !strcmp(status, "ok") || !strcmp(status, "okay") )
+        return true;
+
+    return false;
+}
+
 static bool __init device_tree_node_matches(const void *fdt, int node,
                                             const char *match)
 {
@@ -97,6 +110,9 @@ static int __init device_tree_get_meminfo(const void *fdt, int node,
     paddr_t start, size;
     struct meminfo *mem = data;
 
+    if ( !device_tree_node_is_available(fdt, node) )
+        return 0;
+
     if ( address_cells < 1 || size_cells < 1 )
     {
         printk("fdt: property `%s': invalid #address-cells or #size-cells",
-- 
2.39.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 14:37:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 14:37:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609899.949054 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qls8w-0002P3-P4; Thu, 28 Sep 2023 14:37:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609899.949054; Thu, 28 Sep 2023 14:37:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qls8w-0002Ow-M7; Thu, 28 Sep 2023 14:37:30 +0000
Received: by outflank-mailman (input) for mailman id 609899;
 Thu, 28 Sep 2023 14:37:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=s/xa=FM=linaro.org=leo.yan@srs-se1.protection.inumbo.net>)
 id 1qls8v-0002Oq-Qv
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 14:37:29 +0000
Received: from mail-pf1-x434.google.com (mail-pf1-x434.google.com
 [2607:f8b0:4864:20::434])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8b86fb5f-5e0c-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 16:37:27 +0200 (CEST)
Received: by mail-pf1-x434.google.com with SMTP id
 d2e1a72fcca58-68fdcc37827so10518875b3a.0
 for <xen-devel@lists.xenproject.org>; Thu, 28 Sep 2023 07:37:27 -0700 (PDT)
Received: from leoy-huanghe.lan ([240e:389:8607:8800:b7f0:9e8e:f56d:dc32])
 by smtp.gmail.com with ESMTPSA id
 w88-20020a17090a6be100b00263f41a655esm10610899pjj.43.2023.09.28.07.37.23
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 28 Sep 2023 07:37:25 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8b86fb5f-5e0c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=linaro.org; s=google; t=1695911846; x=1696516646; darn=lists.xenproject.org;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;
        bh=JQ0rJPXS35GO8p0fFCs7bDNx05H3IoiF/C+rPmOWaCE=;
        b=a7n4+yfdzsdPKAhUqdWLwZYVnQI3ukja89KxrPaHheSmbP8Z/oT/Fx8VevjgP4J99P
         pU0t57gPhhjmYWO6YOJmdcu860NyBDPvo+bHD576ss1d0b7KSuYdFfKoNpINq3oK76ci
         cleErDu2rZDxw9VnDU5AtNlcDaOsWNTsO+4CZyf08lIjiDE93iLSn0HRAbKmSROmYxe4
         e2S+UwKHj+QXw1gimrCvivJLN2DAsPKueulzOgzpxZ/A85UE+vMpb3AuMxjEd7h2VDu6
         jm+Fwk6SCU/XLjtmQT0GAdwMeAF4xg/Qpisd08+sFF07AeTreH55UQhv0y5nzx9vIQay
         ndWQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695911846; x=1696516646;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=JQ0rJPXS35GO8p0fFCs7bDNx05H3IoiF/C+rPmOWaCE=;
        b=t2hXD7fLBeOvCppEckT8FWG7+zqtRLkNVgiyqqKwJFRKaMK3Nrke4VrwgTafp3T7Ye
         PiONitOV0d0KKAlGC4lJFYQ6hUtC2nmln7bEyeqDkDARiSO3yuhVpgKa3M1BSXCDbKFq
         PFi8HaZXhTZkGYT6Dw3edUizYInyfMDKkLegPFx8+69sgq5R3ksYBH4upXh7qkAdF5Oq
         mUTw5J+8eOVZx6pbuZO2pm9iNUACQCSKZfMRcCupdwVQxFP6QXBowK88jxb+npRbFu+s
         pBtRrsW7waN+A1ZTmNESMxImMeepOeySadoRu07aVnlIKvrjGm46mx5Q+ZlMVoFY4l46
         chtw==
X-Gm-Message-State: AOJu0Yz82k7asbf2zvDPRComI2hadXju6Tf3K1LVjtHA/Q8PLeTs2DOs
	pkz5YfRjDd1RLhuSXm0dMdXrYQ==
X-Google-Smtp-Source: AGHT+IFdVE+NLJrYKiM4cYj166xIZFGNtUVdG0OSeMyd0GFFxisQbQmXp0cuwJE6R55+EPWYVdghng==
X-Received: by 2002:a17:90a:880c:b0:274:751a:3f3 with SMTP id s12-20020a17090a880c00b00274751a03f3mr2442975pjn.7.1695911845939;
        Thu, 28 Sep 2023 07:37:25 -0700 (PDT)
Date: Thu, 28 Sep 2023 22:37:19 +0800
From: Leo Yan <leo.yan@linaro.org>
To: Michal Orzel <michal.orzel@amd.com>
Cc: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org,
	Stefano Stabellini <sstabellini@kernel.org>,
	Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: Skip memory nodes if not enabled
Message-ID: <20230928143719.GA58021@leoy-huanghe.lan>
References: <20230926053333.180811-1-leo.yan@linaro.org>
 <b0d2494a-8223-a101-5d10-f3803629f2f3@amd.com>
 <36d8f5ce-ef87-40cc-9515-12a2007bfa6d@xen.org>
 <3964a12c-b808-2ee4-9651-68c21ead817b@amd.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <3964a12c-b808-2ee4-9651-68c21ead817b@amd.com>

Hi Michal, Julien,

On Wed, Sep 27, 2023 at 02:49:23PM +0200, Michal Orzel wrote:

[...]

> Either way is fine. The advantage of placing the check in boot_fdt_info() is
> that we can have a single check instead of duplicated and we do the check before
> the "first" use which happens to be the banks sorting. The advantage of setup_mm()
> is that it is the one dealing with memory banks and is called after early_print_info()
> so user can see some additional info.
> 
> @Leo, will you send a patch for that? Don't feel obliged as it is not strictly related
> to your patch in which case I can handle it.

@Michal, since you have much better sense than me for adding check for
memory banks, I'd like to leave it to you.

I just refined the patch v2 according to your comments and sent out
for review.

Thanks,
Leo


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 15:00:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 15:00:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609905.949065 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlsVP-0002wU-Jl; Thu, 28 Sep 2023 15:00:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609905.949065; Thu, 28 Sep 2023 15:00:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlsVP-0002wN-GT; Thu, 28 Sep 2023 15:00:43 +0000
Received: by outflank-mailman (input) for mailman id 609905;
 Thu, 28 Sep 2023 15:00:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=Ur7q=FM=suse.com=JBeulich@srs-se1.protection.inumbo.net>)
 id 1qlsVO-0002wH-3h
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 15:00:42 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on061c.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::61c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ca38682f-5e0f-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 17:00:41 +0200 (CEST)
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23)
 by DB9PR04MB10068.eurprd04.prod.outlook.com (2603:10a6:10:4c9::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Thu, 28 Sep
 2023 15:00:37 +0000
Received: from DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a]) by DU2PR04MB8790.eurprd04.prod.outlook.com
 ([fe80::9f5d:8bed:7a5b:e75a%6]) with mapi id 15.20.6838.016; Thu, 28 Sep 2023
 15:00:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ca38682f-5e0f-11ee-878a-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XzawOOYAw5tOORaheSmlxe1CKqIrUWvEg0LDo4Wg+cY+nDGggLm9Aeu2mny+zUtlNGVmJjuiP+02CM+O6xbJkScpRxIRxdbOOTrkMg5zYukvislIrQycFNJlSf1ioHT2Zxrc9npk4Yr0wY5tpWJCHrgEFDnWxS5ZWPqAp9eM55qqzxFzTwHHCDqAbilccHDlHTdyF2KQwwaSN9inZZPdRqEeaFe8964fm79T4cfPgFYr3hYegHC6wRGGv8cd3guy0RNCvD0+c4JE1/NXVlpU4SkcTl1Q4G3S5CnYmES1+Uu/3tzmLLisNA/nqdsbiGoqOcssT8jWpCtJ8cp9phyPNA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=uazprJvSM6VJ27kxIQM/wKdKzmFdmrYVeDRBRicwxmE=;
 b=fxmFQqnN3i4s9ddB53OKY+INUXtsr16MUXiITMgFnDQLnkEE2V5e9M2KnJcFPP2NQys5lSUQ7vkOjWARboRB0YpSxrAE0lbk/DwTkhucbXKIkvHA577zAB22eA/1agAcMA1dVrpPeYj6zM4llG3ljCqx6W9TQsb0joAH3x8096RHO43X+FSXpVN88zmuVtEFz9ai1nfS1mdaqS9YOqGYMF/l5Qp+klYikOp8MotVtj4CWQovYTmMzzi20MeF0qiaoLWqSX3dPWYTnCnd953yO3W7HYHCArelnwGsb8SsioJM2NwUChP/uMl7VclQmtoRuMrrD4BFikrwRl6mIFRx8g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=uazprJvSM6VJ27kxIQM/wKdKzmFdmrYVeDRBRicwxmE=;
 b=G/X1+u8UKqqL4BkSawfZgvZ9I+z7PiBhUb0D/8RybSo7LbPEoYaZGxyEHwKSAJ2oseYI8sHYb6+lxELF/3ouyVKyulWEiv4lgxkF5cJb6pfFnoKy5O3Cey4HU2pZgRX/GIOhoTOhtuUnJ0x1BqGEsJiFb6djoTc0NMCfiVf7jr2o/aCe+2+WjC2REz0kiU59B5zwlaDYG4hQO/j+SlvZUX5j/1B47aDX8OpAjKjrbmM78O0TzK5vlAXNy1CthNCYhNaRQZuwyYRkINmld4vNA9HkvattreHymiUSb8T2RDCZdKVemoBwOFDtZRDh/F39w35LiI4YVa+hKaZ0TiPuTA==
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=suse.com;
Message-ID: <f0cd8400-5e37-6704-75ce-d965540bc2b7@suse.com>
Date: Thu, 28 Sep 2023 17:00:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
Content-Language: en-US
To: Simone Ballarin <simone.ballarin@bugseng.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?=
 <roger.pau@citrix.com>, Doug Goldstein <cardoe@cardoe.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <b62205a1-885b-ea4e-3ce2-7ad58cfc938d@suse.com>
 <f1759081-eb18-4597-82b6-d7d9ee1754ab@bugseng.com>
 <e0ff3307-99ee-7740-bc5f-52dd7f589057@suse.com>
 <c2b10554-673c-4452-a35c-0d2f314e8ad2@bugseng.com>
From: Jan Beulich <jbeulich@suse.com>
In-Reply-To: <c2b10554-673c-4452-a35c-0d2f314e8ad2@bugseng.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: FR0P281CA0174.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:b4::7) To DU2PR04MB8790.eurprd04.prod.outlook.com
 (2603:10a6:10:2e1::23)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|DB9PR04MB10068:EE_
X-MS-Office365-Filtering-Correlation-Id: 0afc9661-afff-40a3-9600-08dbc033ac61
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	gqnZUtqRur2scKeAOEF6UzR2G6mis3axK+/JyHVs21EYoguJxuz9IpvtAlY4B98J0GRT5k/id+GKbCkH8oOhkUulK+eboFq/3mVnWyv4Pa3VbA7eIvMrkhsKEAtnERHxA8888okiHEBdZF6c7T58S0MIX/RV58pDCYzA4+z8cwQkjmoankiaUJ4HO3towS5OTay0CheWhjbOgC+BUIBIJSne4hCQC0gO597wCnxcbyR5e1JJigo+sRv65O49oJMz3JIUVQNnahsmqCakdPnboTvfE5UCrbVr9zXhsQjQZyd4jAx1Yfsg168Wi/bgI+HrQqtIAjL8ku0LzsQLyds+QmpDw7QlD9iBKJw04xW2U4Q3gB9uUoPzbhomeK68qj5G51K6l3vcrvPwqsRHvlgcBCzwIm5UJkSdQiLrHkSyt3DTT08usidJ2MU5wEzYBN7C1ijXPTXCeVNFhTRu60eYEJaHP8hvrX8Lmn5kKjPjqEdEUdLXkZfD9FaHtrIyeHyo1PsyaM2MIj2TEBTRyq+XoxQGDJryJegiS8cR7Zto1r2E5vFNoeN7H98pd+V1pR4zVfGKiWcSIlB31Snp0XssSxdbhwI4oP7taTCJqxezYcWHa6l1lJdrifc9XhDcpy6I0AnXItU5n3HgiccTJGwBkQ==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(366004)(346002)(136003)(396003)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(26005)(38100700002)(478600001)(6666004)(36756003)(6486002)(86362001)(31696002)(83380400001)(53546011)(5660300002)(2616005)(6506007)(6512007)(316002)(66946007)(66556008)(66476007)(6916009)(54906003)(2906002)(31686004)(7416002)(41300700001)(8936002)(4326008)(8676002)(43740500002)(45980500001);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?WTRYRzFmcmI2RHlONnJVNUVWMHVZOU4wNWlLMDZXSGNSQTJ6V0RHWk8zZElx?=
 =?utf-8?B?d2Y4SXE5aGxMZ21uM083SmVZRXBrUktNZlBQQ0tlVTFJU2MyS05CNk1JRzUw?=
 =?utf-8?B?QVJwQVArQ3IzNUxQc0I5ZUFDVUtOVGI0eWJQYitVSGRFR3FWWEJBY3ZMK0lp?=
 =?utf-8?B?ODN3bDNseXQ5MGs5VUFXbW1YbFAvZVNKK01TZEpXTGF1eVBiaU9CWWJHL3Vv?=
 =?utf-8?B?RnJZQ3JaRVRzOVhJTS9hK3RXUlptVlJkR1psbTRmdExreHhvbCtnZUFGaytq?=
 =?utf-8?B?c0ZMWEFJSSt2c1J3M2h5R1FzWmpqdUh6VjlKekdmSDlhc04xekdqY0FZQlpq?=
 =?utf-8?B?WW1BYW11dUFoYVpmK1Y3S3BhQ2RiQmdxWUplcjFGQXlsWmdzdGxJczQ0d3NX?=
 =?utf-8?B?aDZjNUQvMGRWU0lyRDlGSlJRTWgzbTB2eEpKRUErd2dabGhJd25rdU54T2FN?=
 =?utf-8?B?Kys1UjcyckRRbjA5OGViSmQzUzBEem9WSS9zOHlLUGJhMXhqMk1kOUkzRjFw?=
 =?utf-8?B?T2lNN0RCaUFFS1ZCSjM3Y2ZRK2gvbjZnRlVuMWs2dm1vMTBaeXFFS3dCRzJh?=
 =?utf-8?B?QTlwTEVwZUs3S2llV3pqWElHVDBBTWhoamlmeUxkTXdQN1JBemxRQVNGS3RE?=
 =?utf-8?B?VmRBRnZCTFQyWlY1TWtETm5WSWI1R3pFT3BLWDlVVVEva0lOYXpzcGljMER2?=
 =?utf-8?B?YUV5bzh5TjArTnErNks1Y29OaWJldWkwdllqRWkzVE00NFJ5bEZodW5jdlJ4?=
 =?utf-8?B?Wnd6MnVlOVZBUjByZE1lQWZJWUVJVnRTK0VKZzA1K2phRnVZT29TWkx4aHpV?=
 =?utf-8?B?YXEyT3RxVzYwcUFDSDIrUWZIWWtqTTN2bjFpZEtHYmFiSWlTZS9MMFJpaC9k?=
 =?utf-8?B?TFFwd21GVWp0NThRLy9qWG5HU0UyMk1FTUo1TVhuRU5KS1RJaGdnYlE1R2hU?=
 =?utf-8?B?Rm1QdE1oanN1QzNoSFJxdXM3ckJLRU55YzczMElJNXV0dGVFb3ZsNTNKeG56?=
 =?utf-8?B?RkVlbFFPbkQxa1B3S3JvTU5ET2xzMDFzT1FFeUEzRkVCQjRkbjR6RVpmZzR4?=
 =?utf-8?B?MXZWT2pWbEYxN0wwSWtjN0IwaG1rdnFldHo3TXZ0Y3hod3ErWFEzRUFiMU9a?=
 =?utf-8?B?RTE5SU9vcXVNQU9mR3hQbFZHNHBCYW5hT2J3WlpEU3VSL1lac243NDd6TDVp?=
 =?utf-8?B?RkgrdjRkaW10ZGZPNllmVFl3RjVvSTVQUGI5Ym8zbU9sWXE5Z3hKT3RwWUtR?=
 =?utf-8?B?ZmRhOFdkRHVTbDZTMkMxekdEY1E5M090UlljRFZodE81WG11cWo2aVo1amlM?=
 =?utf-8?B?ZmhFU3RHYVBFWUFwNHVQSjBkWGoycmFhVElrcG9QV1ZLVnFBWFRXQno4TStF?=
 =?utf-8?B?QnBqWk0zbTVPM3ZwSzRQaGJUaDNKQTJZQURObmlkTmw2OFA1S0t3OUNKYkEv?=
 =?utf-8?B?ckxzMXhldzNSMFFaVyt6MkM2aVcrajQ1UGp6QU12UzI3azhvcWZvYVdoeHN4?=
 =?utf-8?B?WW4zVTJVK3Z0VzNWM0lra1pJOUlVZFZVTUJ4ZlBQTWdaNmxsSTArMTlnUjJt?=
 =?utf-8?B?K3JMbWExbmlUazkzalRYbFVVZXBkdWhDbmNmN01ZVUI3V2g4cnJ0VjVyUmVC?=
 =?utf-8?B?emtVZnhxcFpOekw5RVAvYTA2aTZtc3JUTmFVL1pwRkNZVlB4eHBXZmd6VzVN?=
 =?utf-8?B?d05YUzZCRDJWQ1pjNUp4R1ZJNWxjbjRWYVFCWTljOC9rL3MzbVdQUmZtSzZQ?=
 =?utf-8?B?VXZCaitQSFpzeTAxRXlDQVlZV2ljVGlCQXRLb0l4OWd6NFV2Y2wxcTNmMi9P?=
 =?utf-8?B?MTdLQWRZbFQrd0Q3b2ovRkhDMThMWFRhT2R3RngrOFpQNkZhdUNuM24wMHdB?=
 =?utf-8?B?ZmpJS3NDRk1tTWhWY3V0TWNZUkNScmdqOVpZYTEwM2o2eDhCQUdaVzVVMWg3?=
 =?utf-8?B?d2xGL3JCYWVUQnJ5cm1kK3NVZ3VUY0E4TFQ0bG8yMk1RdDFYVHU4NGJUY2hm?=
 =?utf-8?B?ZDgvTDByN3lmOFdvT3lGbEhvY2JVU1hLTndTUlZkdm41bWJtTEJOVmdxN1Fh?=
 =?utf-8?B?UlhYaWZKcU9OR25VT25zeGRDdS9hQmZrOWt0Q3JCdlhqVzc2Qk1tNWJWeHV3?=
 =?utf-8?Q?KH5cLqHtSlnQNDRIOw4OkyMen?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 0afc9661-afff-40a3-9600-08dbc033ac61
X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 15:00:37.2165
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 2UKCCz4PBzCQvg0oTeqhniBLDqtTd/1lLGidWN/VRhlColoU6k+1+I1g/kpt+mvoHGYwLzUSp+2UJJM8o1Gq+A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB10068

On 28.09.2023 15:17, Simone Ballarin wrote:
> On 28/09/23 14:51, Jan Beulich wrote:
>> On 28.09.2023 14:46, Simone Ballarin wrote:
>>> On 13/09/23 10:02, Jan Beulich wrote:
>>>> On 12.09.2023 11:36, Simone Ballarin wrote:
>>>>> Add or move inclusion guards to address violations of
>>>>> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
>>>>> to prevent the contents of a header file being included more than
>>>>> once").
>>>>>
>>>>> Inclusion guards must appear at the beginning of the headers
>>>>> (comments are permitted anywhere) and the #if directive cannot
>>>>> be used for other checks.
>>>>>
>>>>> Simone Ballarin (10):
>>>>>     misra: add deviation for headers that explicitly avoid guards
>>>>>     misra: modify deviations for empty and generated headers
>>>>>     misra: add deviations for direct inclusion guards
>>>>>     xen/arm: address violations of MISRA C:2012 Directive 4.10
>>>>>     xen/x86: address violations of MISRA C:2012 Directive 4.10
>>>>>     x86/EFI: address violations of MISRA C:2012 Directive 4.10
>>>>>     xen/common: address violations of MISRA C:2012 Directive 4.10
>>>>>     xen/efi: address violations of MISRA C:2012 Directive 4.10
>>>>>     xen: address violations of MISRA C:2012 Directive 4.10
>>>>>     x86/asm: address violations of MISRA C:2012 Directive 4.10
>>>>
>>>> Just to mention it here again for the entire series, seeing that despite
>>>> my earlier comments to this effect a few R-b have arrived: If private
>>>> headers need to gain guards (for, imo, no real reason), we first need to
>>>> settle on a naming scheme for these guards, such that guards used in
>>>> private headers aren't at risk of colliding with ones used headers
>>>> living in one of the usual include directories. IOW imo fair parts of
>>>> this series may need redoing.
>>>>
>>>> Jan
>>>>
>>>
>>> My proposal is:
>>> - the relative path from "xen/arch" for files in this directory
>>>     (i.e. X86_X86_X86_MMCONFIG_H for "xen/arch/x86/x86_64/mmconfig.h";
>>
>> X86_X86_64_MMCONFIG_H that is?
>>
>> Yet then this scheme won't hold for xen/arch/include/asm/... ? It's also
>> not clear whether you're deliberately omitting leading/trailing underscores
>> here, which may be a way to distinguish private from global headers.
> 
> Each name that begins with a double or single underscore (__, _) 
> followed by an uppercase letter is reserved. Using a reserved identifier 
> is an undefined-b.
> 
> I would be better to avoid them.

I'm with you about avoiding them, except that we use such all over the
place. Taking this together with ...

>>> - for the others, the entire path.
>>
>> What exactly is "entire" here?
> 
> Let me try again.
> 
> If we are inside xen/arch the relative path starting from this directory:
>    | xen/arch/x86/include/asm/compat.h
>    X86_INCLUDE_ASM_COMPAT_H
> 
> For xen/include, the current convention.
> Maybe, in a future patch, we can consider removing the leading _.
> 
> For the others, the relative path after xen:
>    | xen/common/efi/efi.h
>    COMMON_EFI_EFI_H

... this you're effectively suggesting to change all existing guards.
That's an option, but likely not a preferred one. Personally I'd prefer
if in particular the headers in xen/include/ and in xen/arch/*include/
didn't needlessly include _INCLUDE_ in their guard names.

I'm really curious what others think.

Jan


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 15:21:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 15:21:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609911.949074 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlspH-0007Nc-6w; Thu, 28 Sep 2023 15:21:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609911.949074; Thu, 28 Sep 2023 15:21:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlspH-0007NV-3t; Thu, 28 Sep 2023 15:21:15 +0000
Received: by outflank-mailman (input) for mailman id 609911;
 Thu, 28 Sep 2023 15:21:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=pn+n=FM=kernel.org=song@srs-se1.protection.inumbo.net>)
 id 1qlspF-0007NP-HW
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 15:21:13 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a6f82f69-5e12-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 17:21:10 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 3343E61D16
 for <xen-devel@lists.xenproject.org>; Thu, 28 Sep 2023 15:21:09 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id D846AC433C8
 for <xen-devel@lists.xenproject.org>; Thu, 28 Sep 2023 15:21:08 +0000 (UTC)
Received: by mail-wr1-f44.google.com with SMTP id
 ffacd0b85a97d-3247d69ed2cso2542731f8f.0
 for <xen-devel@lists.xenproject.org>; Thu, 28 Sep 2023 08:21:08 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a6f82f69-5e12-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695914468;
	bh=5QGsjlLA6+fSdsYbT2wgVXCyV5RBnz+gCDO8qtKxudM=;
	h=References:In-Reply-To:From:Date:Subject:To:Cc:From;
	b=gY6bnbm4Br2Su1APlGkn1sEu4r+c6sdQLDsonp71NsJQbUQraKl8xXh9rGZORDHDX
	 1QshNOkVFu0tNkDMf36lbn30zkyYzhLTGnPTXNjw1k+PIvKKZGUYxKQ7wvRHp1f4Yx
	 zc21t6uxwYapN/InHw4nKU1MlE+GefjFMudIrCx51jeRHViIFjwTYbeCQ0LaQLHNDy
	 K6pRADykVVDDE9WhFVGCoH8yaA4fYcRbfTjd6dVfgkxkaTlBtpIRkVKRbieDzAxAlu
	 +hjpSkHGs3H12owDA6PgfqSF8KGYMJHSlAYsT2GtXigCu2wgFul2znYOe2oL1/yATw
	 HlBza/JCHsDzg==
X-Gm-Message-State: AOJu0YzAvzg2Vqra6W/70Jp3AnX2fF4RO1lUXYmZEG206HnvoaJJw2OS
	hDMkH30vs94Yhsp1V3GlkeWwNzRLRJ8dCLjPKA0=
X-Google-Smtp-Source: AGHT+IFGxnL1jLxRJ82JHSkotXT+AJQbGwcj+NsBF8Wdz/LihQ1gwaw7yDfPbhv4CL9qBIGKh5TUPhf228x9wFIkjTk=
X-Received: by 2002:a05:6512:1595:b0:500:b828:7a04 with SMTP id
 bp21-20020a056512159500b00500b8287a04mr1542995lfb.18.1695914446757; Thu, 28
 Sep 2023 08:20:46 -0700 (PDT)
MIME-Version: 1.0
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
 <65157da7.5d0a0220.13b5e.9e95SMTPIN_ADDED_BROKEN@mx.google.com>
In-Reply-To: <65157da7.5d0a0220.13b5e.9e95SMTPIN_ADDED_BROKEN@mx.google.com>
From: Song Liu <song@kernel.org>
Date: Thu, 28 Sep 2023 08:20:34 -0700
X-Gmail-Original-Message-ID: <CAPhsuW6WRen7Udqc+O+haAH8PZXH2jYdpUj1X7UCuQYngVWxoA@mail.gmail.com>
Message-ID: <CAPhsuW6WRen7Udqc+O+haAH8PZXH2jYdpUj1X7UCuQYngVWxoA@mail.gmail.com>
Subject: Re: [PATCH 13/15] raid: Remove now superfluous sentinel element from
 ctl_table array
To: j.granados@samsung.com
Cc: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org, josh@joshtriplett.org, 
	Kees Cook <keescook@chromium.org>, Phillip Potter <phil@philpotter.co.uk>, 
	Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, 
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Juergen Gross <jgross@suse.com>, 
	Stefano Stabellini <sstabellini@kernel.org>, 
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, Jiri Slaby <jirislaby@kernel.org>, 
	"James E.J. Bottomley" <jejb@linux.ibm.com>, "Martin K. Petersen" <martin.petersen@oracle.com>, 
	Doug Gilbert <dgilbert@interlog.com>, Sudip Mukherjee <sudipm.mukherjee@gmail.com>, 
	Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, Corey Minyard <minyard@acm.org>, 
	"Theodore Ts'o" <tytso@mit.edu>, "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, 
	"David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, 
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, Robin Holt <robinmholt@gmail.com>, 
	Steve Wahl <steve.wahl@hpe.com>, Russ Weight <russell.h.weight@intel.com>, 
	"Rafael J. Wysocki" <rafael@kernel.org>, "K. Y. Srinivasan" <kys@microsoft.com>, 
	Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>, 
	Dexuan Cui <decui@microsoft.com>, Jani Nikula <jani.nikula@linux.intel.com>, 
	Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, Rodrigo Vivi <rodrigo.vivi@intel.com>, 
	Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, David Airlie <airlied@gmail.com>, 
	Daniel Vetter <daniel@ffwll.ch>, linux-kernel@vger.kernel.org, 
	xen-devel@lists.xenproject.org, linux-serial@vger.kernel.org, 
	linux-scsi@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, 
	linux-rdma@vger.kernel.org, openipmi-developer@lists.sourceforge.net, 
	netdev@vger.kernel.org, linux-raid@vger.kernel.org, 
	linux-hyperv@vger.kernel.org, intel-gfx@lists.freedesktop.org, 
	dri-devel@lists.freedesktop.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 28, 2023 at 6:20=E2=80=AFAM Joel Granados via B4 Relay
<devnull+j.granados.samsung.com@kernel.org> wrote:
>
> From: Joel Granados <j.granados@samsung.com>
>
> This commit comes at the tail end of a greater effort to remove the
> empty elements at the end of the ctl_table arrays (sentinels) which
> will reduce the overall build time size of the kernel and run time
> memory bloat by ~64 bytes per sentinel (further information Link :
> https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)
>
> Remove sentinel from raid_table
>
> Signed-off-by: Joel Granados <j.granados@samsung.com>
> ---
>  drivers/md/md.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/md/md.c b/drivers/md/md.c
> index a104a025084d..3866d8f754a0 100644
> --- a/drivers/md/md.c
> +++ b/drivers/md/md.c
> @@ -304,8 +304,7 @@ static struct ctl_table raid_table[] =3D {
>                 .maxlen         =3D sizeof(int),
>                 .mode           =3D S_IRUGO|S_IWUSR,
>                 .proc_handler   =3D proc_dointvec,
> -       },
> -       { }
> +       }
>  };

Please keep "}," as Greg suggested. Otherwise,

Acked-by: Song Liu <song@kernel.org>

Thanks,
Song


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 15:25:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 15:25:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609916.949086 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlssx-00033M-Nd; Thu, 28 Sep 2023 15:25:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609916.949086; Thu, 28 Sep 2023 15:25:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlssx-00033F-Ir; Thu, 28 Sep 2023 15:25:03 +0000
Received: by outflank-mailman (input) for mailman id 609916;
 Thu, 28 Sep 2023 15:25:01 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QRba=FM=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qlssv-00032t-PZ
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 15:25:01 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3048edcd-5e13-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 17:25:00 +0200 (CEST)
Received: from beta.station (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id 361B14EE0739;
 Thu, 28 Sep 2023 17:24:59 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3048edcd-5e13-11ee-878a-cb3800f73035
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	jbeulich@suse.com,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>
Subject: [XEN PATCH v7 0/4] xen/x86: address violations of MISRA C:2012 Rule 7.2
Date: Thu, 28 Sep 2023 17:23:00 +0200
Message-Id: <cover.1695913900.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose headline
states:
"A 'u' or 'U' suffix shall be applied to all integer constants that are
represented in an unsigned type".

These violations are caused by the missing "u" or "U" suffix in unsigned
integer constants, such as:

xen/arch/x86/hvm/hypercall.c:132.17-132.26
if ( (eax & 0x80000000) && is_viridian_domain(currd) )

If a rule is not met, changes are needed in order to achieve compliance.
The patches in this series achieve compliance for MISRA C:2012 Rule 7.2 by
adding the 'U' suffix to integers literals with unsigned type and also to
other
literals used in the same contexts or near violations, when their positive
nature is immediately clear. The latter changes are done for the sake of
uniformity.

Gianluca Luparini (1):
  x86/vmx: address violations of MISRA C:2012 Rule 7.2

Simone Ballarin (3):
  x86/hvm: address violations of MISRA C:2012 Rule 7.2
  x86/include: address violations of MISRA C:2012 Rule 7.2
  xen/x86: address violations of MISRA C:2012 Rule 7.2

 xen/arch/x86/apic.c                     |   2 +-
 xen/arch/x86/cpu-policy.c               |  18 +--
 xen/arch/x86/cpu/vpmu_intel.c           |   2 +-
 xen/arch/x86/cpuid.c                    |   8 +-
 xen/arch/x86/extable.c                  |   2 +-
 xen/arch/x86/hvm/hypercall.c            |   2 +-
 xen/arch/x86/hvm/pmtimer.c              |   4 +-
 xen/arch/x86/hvm/stdvga.c               |  32 ++---
 xen/arch/x86/hvm/vlapic.c               |   6 +-
 xen/arch/x86/hvm/vmx/vmcs.c             |   6 +-
 xen/arch/x86/hvm/vmx/vvmx.c             |   8 +-
 xen/arch/x86/include/asm/apicdef.h      |   2 +-
 xen/arch/x86/include/asm/config.h       |   2 +-
 xen/arch/x86/include/asm/hpet.h         |   2 +-
 xen/arch/x86/include/asm/hvm/trace.h    |   4 +-
 xen/arch/x86/include/asm/hvm/vioapic.h  |   2 +-
 xen/arch/x86/include/asm/hvm/vmx/vmcs.h |  84 +++++------
 xen/arch/x86/include/asm/hvm/vmx/vmx.h  |  16 +--
 xen/arch/x86/include/asm/msi.h          |   2 +-
 xen/arch/x86/include/asm/msr-index.h    | 182 ++++++++++++------------
 xen/arch/x86/include/asm/pci.h          |   8 +-
 xen/arch/x86/include/asm/x86-defns.h    |  22 +--
 xen/arch/x86/percpu.c                   |   2 +-
 xen/arch/x86/psr.c                      |   2 +-
 xen/arch/x86/spec_ctrl.c                |  12 +-
 25 files changed, 216 insertions(+), 216 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 15:25:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 15:25:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609918.949100 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlssy-0003KC-G3; Thu, 28 Sep 2023 15:25:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609918.949100; Thu, 28 Sep 2023 15:25:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlssy-0003Fk-A5; Thu, 28 Sep 2023 15:25:04 +0000
Received: by outflank-mailman (input) for mailman id 609918;
 Thu, 28 Sep 2023 15:25:03 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QRba=FM=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qlssx-000335-2q
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 15:25:03 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 30842d1e-5e13-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 17:25:00 +0200 (CEST)
Received: from beta.station (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id 1B1D74EE073D;
 Thu, 28 Sep 2023 17:25:00 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 30842d1e-5e13-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	jbeulich@suse.com,
	Gianluca Luparini <gianluca.luparini@bugseng.com>,
	Jun Nakajima <jun.nakajima@intel.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Simone Ballarin <simone.ballarin@bugseng.com>
Subject: [XEN PATCH v7 1/4] x86/vmx: address violations of MISRA C:2012 Rule 7.2
Date: Thu, 28 Sep 2023 17:23:01 +0200
Message-Id: <c4118bbd16944df7f123955b168a85b6751e7e8d.1695913900.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1695913900.git.simone.ballarin@bugseng.com>
References: <cover.1695913900.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Gianluca Luparini <gianluca.luparini@bugseng.com>

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
headline states:
"A 'u' or 'U' suffix shall be applied to all integer constants
that are represented in an unsigned type".

Add the 'U' suffix to integers literals with unsigned type.

For the sake of uniformity, the following changes are made:
- add the 'U' suffix to macros near
  'CPU_BASED_ACTIVATE_SECONDARY_CONTROLS' and
  'SECONDARY_EXEC_NOTIFY_VM_EXITING' macros in 'vmcs.h'
- add the 'U' suffix to macros near 'INTR_INFO_VALID_MASK'
  macro in 'vmx.h'

Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Reviewed-by: Jan Beulich <jbeulich@suse.com>

---
No changes in v5, v6 and v7.
Changes in v4:
- change commit headline

Changes in v3:
- change 'Signed-off-by' ordering
- change commit message
- remove unnecessary changes in 'vvmx.c'
- add 'uint32_t' casts in 'vvmx.c'
- add missing 'U' in 'vmcs.h' macros
- change macro to '(1u << 31)' in 'vmx.h'
- remove unnecessary changes to 'vmx.h'

Changes in v2:
- minor change to commit title
- change commit message
- remove unnecessary changes in 'vpmu_intel.c' and 'vmx.h'
- add 'ULL' suffix in 'vpmu_intel.c'
- add zero-padding to constants in 'vmx.h'
- add missing 'U' in 'vmx.h'
---
 xen/arch/x86/cpu/vpmu_intel.c           |  2 +-
 xen/arch/x86/hvm/vmx/vmcs.c             |  6 +-
 xen/arch/x86/hvm/vmx/vvmx.c             |  8 +--
 xen/arch/x86/include/asm/hvm/vmx/vmcs.h | 84 ++++++++++++-------------
 xen/arch/x86/include/asm/hvm/vmx/vmx.h  | 16 ++---
 5 files changed, 58 insertions(+), 58 deletions(-)

diff --git a/xen/arch/x86/cpu/vpmu_intel.c b/xen/arch/x86/cpu/vpmu_intel.c
index fa5b40c65c..6330c89b47 100644
--- a/xen/arch/x86/cpu/vpmu_intel.c
+++ b/xen/arch/x86/cpu/vpmu_intel.c
@@ -945,7 +945,7 @@ const struct arch_vpmu_ops *__init core2_vpmu_init(void)
     fixed_counters_mask = ~((1ull << core2_get_bitwidth_fix_count()) - 1);
     global_ctrl_mask = ~((((1ULL << fixed_pmc_cnt) - 1) << 32) |
                          ((1ULL << arch_pmc_cnt) - 1));
-    global_ovf_ctrl_mask = ~(0xC000000000000000 |
+    global_ovf_ctrl_mask = ~(0xC000000000000000ULL |
                              (((1ULL << fixed_pmc_cnt) - 1) << 32) |
                              ((1ULL << arch_pmc_cnt) - 1));
     if ( version > 2 )
diff --git a/xen/arch/x86/hvm/vmx/vmcs.c b/xen/arch/x86/hvm/vmx/vmcs.c
index 13719cc923..6cefb88aec 100644
--- a/xen/arch/x86/hvm/vmx/vmcs.c
+++ b/xen/arch/x86/hvm/vmx/vmcs.c
@@ -911,7 +911,7 @@ void vmx_clear_msr_intercept(struct vcpu *v, unsigned int msr,
         if ( type & VMX_MSR_W )
             clear_bit(msr, msr_bitmap->write_low);
     }
-    else if ( (msr >= 0xc0000000) && (msr <= 0xc0001fff) )
+    else if ( (msr >= 0xc0000000U) && (msr <= 0xc0001fffU) )
     {
         msr &= 0x1fff;
         if ( type & VMX_MSR_R )
@@ -939,7 +939,7 @@ void vmx_set_msr_intercept(struct vcpu *v, unsigned int msr,
         if ( type & VMX_MSR_W )
             set_bit(msr, msr_bitmap->write_low);
     }
-    else if ( (msr >= 0xc0000000) && (msr <= 0xc0001fff) )
+    else if ( (msr >= 0xc0000000U) && (msr <= 0xc0001fffU) )
     {
         msr &= 0x1fff;
         if ( type & VMX_MSR_R )
@@ -957,7 +957,7 @@ bool vmx_msr_is_intercepted(struct vmx_msr_bitmap *msr_bitmap,
     if ( msr <= 0x1fff )
         return test_bit(msr, is_write ? msr_bitmap->write_low
                                       : msr_bitmap->read_low);
-    else if ( (msr >= 0xc0000000) && (msr <= 0xc0001fff) )
+    else if ( (msr >= 0xc0000000U) && (msr <= 0xc0001fffU) )
         return test_bit(msr & 0x1fff, is_write ? msr_bitmap->write_high
                                                : msr_bitmap->read_high);
     else
diff --git a/xen/arch/x86/hvm/vmx/vvmx.c b/xen/arch/x86/hvm/vmx/vvmx.c
index 16b0ef82b6..b7be424afb 100644
--- a/xen/arch/x86/hvm/vmx/vvmx.c
+++ b/xen/arch/x86/hvm/vmx/vvmx.c
@@ -263,7 +263,7 @@ uint64_t get_vvmcs_virtual(void *vvmcs, uint32_t vmcs_encoding)
             res >>= 32;
         break;
     case VVMCS_WIDTH_32:
-        res &= 0xffffffff;
+        res = (uint32_t)res;
         break;
     case VVMCS_WIDTH_NATURAL:
     default:
@@ -315,14 +315,14 @@ void set_vvmcs_virtual(void *vvmcs, uint32_t vmcs_encoding, uint64_t val)
     case VVMCS_WIDTH_64:
         if ( enc.access_type )
         {
-            res &= 0xffffffff;
+            res = (uint32_t)res;
             res |= val << 32;
         }
         else
             res = val;
         break;
     case VVMCS_WIDTH_32:
-        res = val & 0xffffffff;
+        res = (uint32_t)val;
         break;
     case VVMCS_WIDTH_NATURAL:
     default:
@@ -2306,7 +2306,7 @@ int nvmx_msr_read_intercept(unsigned int msr, u64 *msr_content)
         break;
     case MSR_IA32_VMX_CR0_FIXED1:
         /* allow 0-settings for all bits */
-        data = 0xffffffff;
+        data = 0xffffffffU;
         break;
     case MSR_IA32_VMX_CR4_FIXED0:
         /* VMXE bit must be 1 in VMX operation */
diff --git a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h
index d07fcb2bc9..e056643993 100644
--- a/xen/arch/x86/include/asm/hvm/vmx/vmcs.h
+++ b/xen/arch/x86/include/asm/hvm/vmx/vmcs.h
@@ -187,27 +187,27 @@ bool_t __must_check vmx_vmcs_try_enter(struct vcpu *v);
 void vmx_vmcs_exit(struct vcpu *v);
 void vmx_vmcs_reload(struct vcpu *v);
 
-#define CPU_BASED_VIRTUAL_INTR_PENDING        0x00000004
-#define CPU_BASED_USE_TSC_OFFSETING           0x00000008
-#define CPU_BASED_HLT_EXITING                 0x00000080
-#define CPU_BASED_INVLPG_EXITING              0x00000200
-#define CPU_BASED_MWAIT_EXITING               0x00000400
-#define CPU_BASED_RDPMC_EXITING               0x00000800
-#define CPU_BASED_RDTSC_EXITING               0x00001000
-#define CPU_BASED_CR3_LOAD_EXITING            0x00008000
-#define CPU_BASED_CR3_STORE_EXITING           0x00010000
-#define CPU_BASED_CR8_LOAD_EXITING            0x00080000
-#define CPU_BASED_CR8_STORE_EXITING           0x00100000
-#define CPU_BASED_TPR_SHADOW                  0x00200000
-#define CPU_BASED_VIRTUAL_NMI_PENDING         0x00400000
-#define CPU_BASED_MOV_DR_EXITING              0x00800000
-#define CPU_BASED_UNCOND_IO_EXITING           0x01000000
-#define CPU_BASED_ACTIVATE_IO_BITMAP          0x02000000
-#define CPU_BASED_MONITOR_TRAP_FLAG           0x08000000
-#define CPU_BASED_ACTIVATE_MSR_BITMAP         0x10000000
-#define CPU_BASED_MONITOR_EXITING             0x20000000
-#define CPU_BASED_PAUSE_EXITING               0x40000000
-#define CPU_BASED_ACTIVATE_SECONDARY_CONTROLS 0x80000000
+#define CPU_BASED_VIRTUAL_INTR_PENDING        0x00000004U
+#define CPU_BASED_USE_TSC_OFFSETING           0x00000008U
+#define CPU_BASED_HLT_EXITING                 0x00000080U
+#define CPU_BASED_INVLPG_EXITING              0x00000200U
+#define CPU_BASED_MWAIT_EXITING               0x00000400U
+#define CPU_BASED_RDPMC_EXITING               0x00000800U
+#define CPU_BASED_RDTSC_EXITING               0x00001000U
+#define CPU_BASED_CR3_LOAD_EXITING            0x00008000U
+#define CPU_BASED_CR3_STORE_EXITING           0x00010000U
+#define CPU_BASED_CR8_LOAD_EXITING            0x00080000U
+#define CPU_BASED_CR8_STORE_EXITING           0x00100000U
+#define CPU_BASED_TPR_SHADOW                  0x00200000U
+#define CPU_BASED_VIRTUAL_NMI_PENDING         0x00400000U
+#define CPU_BASED_MOV_DR_EXITING              0x00800000U
+#define CPU_BASED_UNCOND_IO_EXITING           0x01000000U
+#define CPU_BASED_ACTIVATE_IO_BITMAP          0x02000000U
+#define CPU_BASED_MONITOR_TRAP_FLAG           0x08000000U
+#define CPU_BASED_ACTIVATE_MSR_BITMAP         0x10000000U
+#define CPU_BASED_MONITOR_EXITING             0x20000000U
+#define CPU_BASED_PAUSE_EXITING               0x40000000U
+#define CPU_BASED_ACTIVATE_SECONDARY_CONTROLS 0x80000000U
 extern u32 vmx_cpu_based_exec_control;
 
 #define PIN_BASED_EXT_INTR_MASK         0x00000001
@@ -238,26 +238,26 @@ extern u32 vmx_vmexit_control;
 #define VM_ENTRY_LOAD_BNDCFGS           0x00010000
 extern u32 vmx_vmentry_control;
 
-#define SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES 0x00000001
-#define SECONDARY_EXEC_ENABLE_EPT               0x00000002
-#define SECONDARY_EXEC_DESCRIPTOR_TABLE_EXITING 0x00000004
-#define SECONDARY_EXEC_ENABLE_RDTSCP            0x00000008
-#define SECONDARY_EXEC_VIRTUALIZE_X2APIC_MODE   0x00000010
-#define SECONDARY_EXEC_ENABLE_VPID              0x00000020
-#define SECONDARY_EXEC_WBINVD_EXITING           0x00000040
-#define SECONDARY_EXEC_UNRESTRICTED_GUEST       0x00000080
-#define SECONDARY_EXEC_APIC_REGISTER_VIRT       0x00000100
-#define SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY    0x00000200
-#define SECONDARY_EXEC_PAUSE_LOOP_EXITING       0x00000400
-#define SECONDARY_EXEC_ENABLE_INVPCID           0x00001000
-#define SECONDARY_EXEC_ENABLE_VM_FUNCTIONS      0x00002000
-#define SECONDARY_EXEC_ENABLE_VMCS_SHADOWING    0x00004000
-#define SECONDARY_EXEC_ENABLE_PML               0x00020000
-#define SECONDARY_EXEC_ENABLE_VIRT_EXCEPTIONS   0x00040000
-#define SECONDARY_EXEC_XSAVES                   0x00100000
-#define SECONDARY_EXEC_TSC_SCALING              0x02000000
-#define SECONDARY_EXEC_BUS_LOCK_DETECTION       0x40000000
-#define SECONDARY_EXEC_NOTIFY_VM_EXITING        0x80000000
+#define SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES 0x00000001U
+#define SECONDARY_EXEC_ENABLE_EPT               0x00000002U
+#define SECONDARY_EXEC_DESCRIPTOR_TABLE_EXITING 0x00000004U
+#define SECONDARY_EXEC_ENABLE_RDTSCP            0x00000008U
+#define SECONDARY_EXEC_VIRTUALIZE_X2APIC_MODE   0x00000010U
+#define SECONDARY_EXEC_ENABLE_VPID              0x00000020U
+#define SECONDARY_EXEC_WBINVD_EXITING           0x00000040U
+#define SECONDARY_EXEC_UNRESTRICTED_GUEST       0x00000080U
+#define SECONDARY_EXEC_APIC_REGISTER_VIRT       0x00000100U
+#define SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY    0x00000200U
+#define SECONDARY_EXEC_PAUSE_LOOP_EXITING       0x00000400U
+#define SECONDARY_EXEC_ENABLE_INVPCID           0x00001000U
+#define SECONDARY_EXEC_ENABLE_VM_FUNCTIONS      0x00002000U
+#define SECONDARY_EXEC_ENABLE_VMCS_SHADOWING    0x00004000U
+#define SECONDARY_EXEC_ENABLE_PML               0x00020000U
+#define SECONDARY_EXEC_ENABLE_VIRT_EXCEPTIONS   0x00040000U
+#define SECONDARY_EXEC_XSAVES                   0x00100000U
+#define SECONDARY_EXEC_TSC_SCALING              0x02000000U
+#define SECONDARY_EXEC_BUS_LOCK_DETECTION       0x40000000U
+#define SECONDARY_EXEC_NOTIFY_VM_EXITING        0x80000000U
 extern u32 vmx_secondary_exec_control;
 
 #define VMX_EPT_EXEC_ONLY_SUPPORTED                         0x00000001
@@ -346,7 +346,7 @@ extern u64 vmx_ept_vpid_cap;
 #define cpu_has_vmx_notify_vm_exiting \
     (vmx_secondary_exec_control & SECONDARY_EXEC_NOTIFY_VM_EXITING)
 
-#define VMCS_RID_TYPE_MASK              0x80000000
+#define VMCS_RID_TYPE_MASK              0x80000000U
 
 /* GUEST_INTERRUPTIBILITY_INFO flags. */
 #define VMX_INTR_SHADOW_STI             0x00000001
diff --git a/xen/arch/x86/include/asm/hvm/vmx/vmx.h b/xen/arch/x86/include/asm/hvm/vmx/vmx.h
index c84acc221d..d4b335a2bc 100644
--- a/xen/arch/x86/include/asm/hvm/vmx/vmx.h
+++ b/xen/arch/x86/include/asm/hvm/vmx/vmx.h
@@ -137,7 +137,7 @@ static inline void pi_clear_sn(struct pi_desc *pi_desc)
 /*
  * Exit Reasons
  */
-#define VMX_EXIT_REASONS_FAILED_VMENTRY 0x80000000
+#define VMX_EXIT_REASONS_FAILED_VMENTRY (1u << 31)
 #define VMX_EXIT_REASONS_BUS_LOCK       (1u << 26)
 
 #define EXIT_REASON_EXCEPTION_NMI       0
@@ -209,12 +209,12 @@ static inline void pi_clear_sn(struct pi_desc *pi_desc)
  * Note INTR_INFO_NMI_UNBLOCKED_BY_IRET is also used with Exit Qualification
  * field for EPT violations, PML full and SPP-related event vmexits.
  */
-#define INTR_INFO_VECTOR_MASK           0xff            /* 7:0 */
-#define INTR_INFO_INTR_TYPE_MASK        0x700           /* 10:8 */
-#define INTR_INFO_DELIVER_CODE_MASK     0x800           /* 11 */
-#define INTR_INFO_NMI_UNBLOCKED_BY_IRET 0x1000          /* 12 */
-#define INTR_INFO_VALID_MASK            0x80000000      /* 31 */
-#define INTR_INFO_RESVD_BITS_MASK       0x7ffff000
+#define INTR_INFO_VECTOR_MASK           0x000000ffU     /* 7:0 */
+#define INTR_INFO_INTR_TYPE_MASK        0x00000700U     /* 10:8 */
+#define INTR_INFO_DELIVER_CODE_MASK     0x00000800U     /* 11 */
+#define INTR_INFO_NMI_UNBLOCKED_BY_IRET 0x00001000U     /* 12 */
+#define INTR_INFO_VALID_MASK            0x80000000U     /* 31 */
+#define INTR_INFO_RESVD_BITS_MASK       0x7ffff000U
 
 /*
  * Exit Qualifications for NOTIFY VM EXIT
@@ -607,7 +607,7 @@ static inline void vmx_pi_hooks_assign(struct domain *d) {}
 static inline void vmx_pi_hooks_deassign(struct domain *d) {}
 #endif
 
-#define APIC_INVALID_DEST           0xffffffff
+#define APIC_INVALID_DEST           0xffffffffU
 
 /* EPT violation qualifications definitions */
 typedef union ept_qual {
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 15:25:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 15:25:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609917.949091 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlssx-00036n-Vt; Thu, 28 Sep 2023 15:25:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609917.949091; Thu, 28 Sep 2023 15:25:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlssx-000368-QC; Thu, 28 Sep 2023 15:25:03 +0000
Received: by outflank-mailman (input) for mailman id 609917;
 Thu, 28 Sep 2023 15:25:02 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QRba=FM=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qlssw-00032t-FF
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 15:25:02 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 30d2370d-5e13-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 17:25:01 +0200 (CEST)
Received: from beta.station (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id A66FB4EE0C81;
 Thu, 28 Sep 2023 17:25:00 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 30d2370d-5e13-11ee-878a-cb3800f73035
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	jbeulich@suse.com,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Gianluca Luparini <gianluca.luparini@bugseng.com>
Subject: [XEN PATCH v7 2/4] x86/hvm: address violations of MISRA C:2012 Rule 7.2
Date: Thu, 28 Sep 2023 17:23:02 +0200
Message-Id: <02713e9b349a4d45262e808da1968474bf86284f.1695913900.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1695913900.git.simone.ballarin@bugseng.com>
References: <cover.1695913900.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
headline states:
"A 'u' or 'U' suffix shall be applied to all integer constants
that are represented in an unsigned type".

Add the 'U' suffix to integers literals with unsigned type.

For the sake of uniformity, the following change is made:
- add 'U' suffixes to 'mask16' in 'stdvga.c'

Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
---
Changes in v7:
- add Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
- switch order of Signed-off-by tags
Changes in v6:
- new patch obtained by splitting HVM related changes from
"xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
- fix inadvertent changes to "sr_mask"
---
 xen/arch/x86/hvm/hypercall.c           |  2 +-
 xen/arch/x86/hvm/pmtimer.c             |  4 ++--
 xen/arch/x86/hvm/stdvga.c              | 32 +++++++++++++-------------
 xen/arch/x86/hvm/vlapic.c              |  6 ++---
 xen/arch/x86/include/asm/hvm/trace.h   |  4 ++--
 xen/arch/x86/include/asm/hvm/vioapic.h |  2 +-
 6 files changed, 25 insertions(+), 25 deletions(-)

diff --git a/xen/arch/x86/hvm/hypercall.c b/xen/arch/x86/hvm/hypercall.c
index 20d266ffd5..eeb73e1aa5 100644
--- a/xen/arch/x86/hvm/hypercall.c
+++ b/xen/arch/x86/hvm/hypercall.c
@@ -129,7 +129,7 @@ int hvm_hypercall(struct cpu_user_regs *regs)
         break;
     }
 
-    if ( (eax & 0x80000000) && is_viridian_domain(currd) )
+    if ( (eax & 0x80000000U) && is_viridian_domain(currd) )
     {
         int ret;
 
diff --git a/xen/arch/x86/hvm/pmtimer.c b/xen/arch/x86/hvm/pmtimer.c
index 2145c531b6..eb4a455763 100644
--- a/xen/arch/x86/hvm/pmtimer.c
+++ b/xen/arch/x86/hvm/pmtimer.c
@@ -40,8 +40,8 @@
 #define SCI_IRQ 9
 
 /* We provide a 32-bit counter (must match the TMR_VAL_EXT bit in the FADT) */
-#define TMR_VAL_MASK  (0xffffffff)
-#define TMR_VAL_MSB   (0x80000000)
+#define TMR_VAL_MASK  (0xffffffffU)
+#define TMR_VAL_MSB   (0x80000000U)
 
 /* Dispatch SCIs based on the PM1a_STS and PM1a_EN registers */
 static void pmt_update_sci(PMTState *s)
diff --git a/xen/arch/x86/hvm/stdvga.c b/xen/arch/x86/hvm/stdvga.c
index 2586891863..8da07ff8a2 100644
--- a/xen/arch/x86/hvm/stdvga.c
+++ b/xen/arch/x86/hvm/stdvga.c
@@ -39,22 +39,22 @@
 
 #define PAT(x) (x)
 static const uint32_t mask16[16] = {
-    PAT(0x00000000),
-    PAT(0x000000ff),
-    PAT(0x0000ff00),
-    PAT(0x0000ffff),
-    PAT(0x00ff0000),
-    PAT(0x00ff00ff),
-    PAT(0x00ffff00),
-    PAT(0x00ffffff),
-    PAT(0xff000000),
-    PAT(0xff0000ff),
-    PAT(0xff00ff00),
-    PAT(0xff00ffff),
-    PAT(0xffff0000),
-    PAT(0xffff00ff),
-    PAT(0xffffff00),
-    PAT(0xffffffff),
+    PAT(0x00000000U),
+    PAT(0x000000ffU),
+    PAT(0x0000ff00U),
+    PAT(0x0000ffffU),
+    PAT(0x00ff0000U),
+    PAT(0x00ff00ffU),
+    PAT(0x00ffff00U),
+    PAT(0x00ffffffU),
+    PAT(0xff000000U),
+    PAT(0xff0000ffU),
+    PAT(0xff00ff00U),
+    PAT(0xff00ffffU),
+    PAT(0xffff0000U),
+    PAT(0xffff00ffU),
+    PAT(0xffffff00U),
+    PAT(0xffffffffU),
 };
 
 /* force some bits to zero */
diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c
index c7ce82d064..a8e87c4446 100644
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -237,7 +237,7 @@ bool_t vlapic_match_dest(
     case APIC_DEST_NOSHORT:
         if ( dest_mode )
             return vlapic_match_logical_addr(target, dest);
-        return (dest == _VLAPIC_ID(target, 0xffffffff)) ||
+        return (dest == _VLAPIC_ID(target, 0xffffffffU)) ||
                (dest == VLAPIC_ID(target));
 
     case APIC_DEST_SELF:
@@ -467,7 +467,7 @@ static bool_t is_multicast_dest(struct vlapic *vlapic, unsigned int short_hand,
         return short_hand != APIC_DEST_SELF;
 
     if ( vlapic_x2apic_mode(vlapic) )
-        return dest_mode ? hweight16(dest) > 1 : dest == 0xffffffff;
+        return dest_mode ? hweight16(dest) > 1 : dest == 0xffffffffU;
 
     if ( dest_mode )
         return hweight8(dest &
@@ -831,7 +831,7 @@ void vlapic_reg_write(struct vcpu *v, unsigned int reg, uint32_t val)
         break;
 
     case APIC_ICR2:
-        vlapic_set_reg(vlapic, APIC_ICR2, val & 0xff000000);
+        vlapic_set_reg(vlapic, APIC_ICR2, val & 0xff000000U);
         break;
 
     case APIC_LVTT:         /* LVT Timer Reg */
diff --git a/xen/arch/x86/include/asm/hvm/trace.h b/xen/arch/x86/include/asm/hvm/trace.h
index 696e42eb94..22eadbdd47 100644
--- a/xen/arch/x86/include/asm/hvm/trace.h
+++ b/xen/arch/x86/include/asm/hvm/trace.h
@@ -58,7 +58,7 @@
 #define DO_TRC_HVM_VLAPIC           DEFAULT_HVM_MISC
 
 
-#define TRC_PAR_LONG(par) ((par)&0xFFFFFFFF),((par)>>32)
+#define TRC_PAR_LONG(par) ((uint32_t)(par)), ((par) >> 32)
 
 #define TRACE_2_LONG_2D(_e, d1, d2, ...) \
     TRACE_4D(_e, d1, d2)
@@ -93,7 +93,7 @@
     HVMTRACE_ND(evt, 0, 0)
 
 #define HVMTRACE_LONG_1D(evt, d1)                  \
-                   HVMTRACE_2D(evt ## 64, (d1) & 0xFFFFFFFF, (d1) >> 32)
+                   HVMTRACE_2D(evt ## 64, (uint32_t)(d1), (d1) >> 32)
 #define HVMTRACE_LONG_2D(evt, d1, d2, ...)              \
                    HVMTRACE_3D(evt ## 64, d1, d2)
 #define HVMTRACE_LONG_3D(evt, d1, d2, d3, ...)      \
diff --git a/xen/arch/x86/include/asm/hvm/vioapic.h b/xen/arch/x86/include/asm/hvm/vioapic.h
index 2944ec20dd..68af6dce79 100644
--- a/xen/arch/x86/include/asm/hvm/vioapic.h
+++ b/xen/arch/x86/include/asm/hvm/vioapic.h
@@ -32,7 +32,7 @@
 #define VIOAPIC_EDGE_TRIG  0
 #define VIOAPIC_LEVEL_TRIG 1
 
-#define VIOAPIC_DEFAULT_BASE_ADDRESS  0xfec00000
+#define VIOAPIC_DEFAULT_BASE_ADDRESS  0xfec00000U
 #define VIOAPIC_MEM_LENGTH            0x100
 
 /* Direct registers. */
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 15:25:04 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 15:25:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609919.949105 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlssy-0003Nc-Pc; Thu, 28 Sep 2023 15:25:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609919.949105; Thu, 28 Sep 2023 15:25:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlssy-0003MT-Hr; Thu, 28 Sep 2023 15:25:04 +0000
Received: by outflank-mailman (input) for mailman id 609919;
 Thu, 28 Sep 2023 15:25:03 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QRba=FM=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qlssx-00032t-FK
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 15:25:03 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3164e8e3-5e13-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 17:25:02 +0200 (CEST)
Received: from beta.station (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id 9E3544EE073C;
 Thu, 28 Sep 2023 17:25:01 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3164e8e3-5e13-11ee-878a-cb3800f73035
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	jbeulich@suse.com,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Gianluca Luparini <gianluca.luparini@bugseng.com>
Subject: [XEN PATCH v7 4/4] xen/x86: address violations of MISRA C:2012 Rule 7.2
Date: Thu, 28 Sep 2023 17:23:04 +0200
Message-Id: <bdd904ece02fdd6365db4911b411ba8b20b7debc.1695913900.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1695913900.git.simone.ballarin@bugseng.com>
References: <cover.1695913900.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
headline states:
"A 'u' or 'U' suffix shall be applied to all integer constants
that are represented in an unsigned type".

Add the 'U' suffix to integers literals with unsigned type.

For the sake of uniformity, the following change is made:
- add the 'U' suffix to switch cases in 'cpuid.c'

Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
---
Changes in v7:
- change cast to long in a cast to unsigned long in INVALID_PERCPU_AREA
  to match the type of the first operand
- add missing Signed-off-by tags
Changes in v6:
- new patch obtained by splitting X86 related changes from
"xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
---
 xen/arch/x86/apic.c       |  2 +-
 xen/arch/x86/cpu-policy.c | 18 +++++++++---------
 xen/arch/x86/cpuid.c      |  8 ++++----
 xen/arch/x86/extable.c    |  2 +-
 xen/arch/x86/percpu.c     |  2 +-
 xen/arch/x86/psr.c        |  2 +-
 xen/arch/x86/spec_ctrl.c  | 12 ++++++------
 7 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/xen/arch/x86/apic.c b/xen/arch/x86/apic.c
index f1264ce7ed..6a43d81d2a 100644
--- a/xen/arch/x86/apic.c
+++ b/xen/arch/x86/apic.c
@@ -1191,7 +1191,7 @@ static void __init calibrate_APIC_clock(void)
      * Setup the APIC counter to maximum. There is no way the lapic
      * can underflow in the 100ms detection time frame.
      */
-    __setup_APIC_LVTT(0xffffffff);
+    __setup_APIC_LVTT(0xffffffffU);
 
     bus_freq = calibrate_apic_timer();
     if ( !bus_freq )
diff --git a/xen/arch/x86/cpu-policy.c b/xen/arch/x86/cpu-policy.c
index 81e574390f..423932bc13 100644
--- a/xen/arch/x86/cpu-policy.c
+++ b/xen/arch/x86/cpu-policy.c
@@ -321,7 +321,7 @@ static void recalculate_misc(struct cpu_policy *p)
         p->extd.vendor_edx = p->basic.vendor_edx;
 
         p->extd.raw_fms = p->basic.raw_fms;
-        p->extd.raw[0x1].b &= 0xff00ffff;
+        p->extd.raw[0x1].b &= 0xff00ffffU;
         p->extd.e1d |= p->basic._1d & CPUID_COMMON_1D_FEATURES;
 
         p->extd.raw[0x8].a &= 0x0000ffff; /* GuestMaxPhysAddr hidden. */
@@ -378,10 +378,10 @@ static void __init calculate_host_policy(void)
      * this information.
      */
     if ( cpu_has_lfence_dispatch )
-        max_extd_leaf = max(max_extd_leaf, 0x80000021);
+        max_extd_leaf = max(max_extd_leaf, 0x80000021U);
 
-    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, max_extd_leaf & 0xffff,
-                                          ARRAY_SIZE(p->extd.raw) - 1);
+    p->extd.max_leaf = 0x80000000U | min_t(uint32_t, max_extd_leaf & 0xffff,
+                                           ARRAY_SIZE(p->extd.raw) - 1);
 
     x86_cpu_featureset_to_policy(boot_cpu_data.x86_capability, p);
     recalculate_xstate(p);
@@ -793,11 +793,11 @@ void recalculate_cpuid_policy(struct domain *d)
 
     p->basic.max_leaf   = min(p->basic.max_leaf,   max->basic.max_leaf);
     p->feat.max_subleaf = min(p->feat.max_subleaf, max->feat.max_subleaf);
-    p->extd.max_leaf    = 0x80000000 | min(p->extd.max_leaf & 0xffff,
-                                           ((p->x86_vendor & (X86_VENDOR_AMD |
-                                                              X86_VENDOR_HYGON))
-                                            ? CPUID_GUEST_NR_EXTD_AMD
-                                            : CPUID_GUEST_NR_EXTD_INTEL) - 1);
+    p->extd.max_leaf    = 0x80000000U | min(p->extd.max_leaf & 0xffff,
+                                            ((p->x86_vendor & (X86_VENDOR_AMD |
+                                                               X86_VENDOR_HYGON))
+                                             ? CPUID_GUEST_NR_EXTD_AMD
+                                             : CPUID_GUEST_NR_EXTD_INTEL) - 1);
 
     x86_cpu_policy_to_featureset(p, fs);
     x86_cpu_policy_to_featureset(max, max_fs);
diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
index 455a09b2dd..7290a979c6 100644
--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -93,7 +93,7 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
         }
         break;
 
-    case 0x40000000 ... 0x400000ff:
+    case 0x40000000U ... 0x400000ffU:
         if ( is_viridian_domain(d) )
             return cpuid_viridian_leaves(v, leaf, subleaf, res);
 
@@ -103,10 +103,10 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
          * Intel reserve up until 0x4fffffff for hypervisor use.  AMD reserve
          * only until 0x400000ff, but we already use double that.
          */
-    case 0x40000100 ... 0x400001ff:
+    case 0x40000100U ... 0x400001ffU:
         return cpuid_hypervisor_leaves(v, leaf, subleaf, res);
 
-    case 0x80000000 ... 0x80000000 + CPUID_GUEST_NR_EXTD - 1:
+    case 0x80000000U ... 0x80000000U + CPUID_GUEST_NR_EXTD - 1:
         ASSERT((p->extd.max_leaf & 0xffff) < ARRAY_SIZE(p->extd.raw));
         if ( (leaf & 0xffff) > min_t(uint32_t, p->extd.max_leaf & 0xffff,
                                      ARRAY_SIZE(p->extd.raw) - 1) )
@@ -352,7 +352,7 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
         }
         break;
 
-    case 0x80000001:
+    case 0x80000001U:
         /* SYSCALL is hidden outside of long mode on Intel. */
         if ( p->x86_vendor == X86_VENDOR_INTEL &&
              is_hvm_domain(d) && !hvm_long_mode_active(v) )
diff --git a/xen/arch/x86/extable.c b/xen/arch/x86/extable.c
index 74b14246e9..652010f413 100644
--- a/xen/arch/x86/extable.c
+++ b/xen/arch/x86/extable.c
@@ -141,7 +141,7 @@ static int __init cf_check stub_selftest(void)
           .rax = 0x0123456789abcdef,
           .res.fields.trapnr = X86_EXC_GP },
         { .opc = { endbr64, 0x02, 0x04, 0x04, 0xc3 }, /* add (%rsp,%rax),%al */
-          .rax = 0xfedcba9876543210,
+          .rax = 0xfedcba9876543210UL,
           .res.fields.trapnr = X86_EXC_SS },
         { .opc = { endbr64, 0xcc, 0xc3, 0xc3, 0xc3 }, /* int3 */
           .res.fields.trapnr = X86_EXC_BP },
diff --git a/xen/arch/x86/percpu.c b/xen/arch/x86/percpu.c
index 288050cdba..3205eacea6 100644
--- a/xen/arch/x86/percpu.c
+++ b/xen/arch/x86/percpu.c
@@ -12,7 +12,7 @@ unsigned long __per_cpu_offset[NR_CPUS];
  * possible #PF at (NULL + a little) which has security implications in the
  * context of PV guests.
  */
-#define INVALID_PERCPU_AREA (0x8000000000000000L - (long)__per_cpu_start)
+#define INVALID_PERCPU_AREA (0x8000000000000000UL - (unsigned long)__per_cpu_start)
 #define PERCPU_ORDER get_order_from_bytes(__per_cpu_data_end - __per_cpu_start)
 
 void __init percpu_init_areas(void)
diff --git a/xen/arch/x86/psr.c b/xen/arch/x86/psr.c
index 4c01813c4b..0b9631ac44 100644
--- a/xen/arch/x86/psr.c
+++ b/xen/arch/x86/psr.c
@@ -191,7 +191,7 @@ static struct feat_node *feat_l2_cat;
 static struct feat_node *feat_mba;
 
 /* Common functions */
-#define cat_default_val(len) (0xffffffff >> (32 - (len)))
+#define cat_default_val(len) (0xffffffffU >> (32 - (len)))
 
 /*
  * get_cdp_data - get DATA COS register value from input COS ID.
diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c
index 6fd7d44ce4..c53632089e 100644
--- a/xen/arch/x86/spec_ctrl.c
+++ b/xen/arch/x86/spec_ctrl.c
@@ -406,10 +406,10 @@ static void __init print_details(enum ind_thunk thunk)
         cpuid_count(7, 0, &max, &tmp, &tmp, &_7d0);
     if ( max >= 2 )
         cpuid_count(7, 2, &tmp, &tmp, &tmp, &_7d2);
-    if ( boot_cpu_data.extended_cpuid_level >= 0x80000008 )
-        cpuid(0x80000008, &tmp, &e8b, &tmp, &tmp);
-    if ( boot_cpu_data.extended_cpuid_level >= 0x80000021 )
-        cpuid(0x80000021, &e21a, &tmp, &tmp, &tmp);
+    if ( boot_cpu_data.extended_cpuid_level >= 0x80000008U )
+        cpuid(0x80000008U, &tmp, &e8b, &tmp, &tmp);
+    if ( boot_cpu_data.extended_cpuid_level >= 0x80000021U )
+        cpuid(0x80000021U, &e21a, &tmp, &tmp, &tmp);
     if ( cpu_has_arch_caps )
         rdmsrl(MSR_ARCH_CAPABILITIES, caps);
 
@@ -1612,8 +1612,8 @@ void __init init_speculation_mitigations(void)
          * TODO: Adjust cpu_has_svm_spec_ctrl to be usable earlier on boot.
          */
         if ( opt_msr_sc_hvm &&
-             (boot_cpu_data.extended_cpuid_level >= 0x8000000a) &&
-             (cpuid_edx(0x8000000a) & (1u << SVM_FEATURE_SPEC_CTRL)) )
+             (boot_cpu_data.extended_cpuid_level >= 0x8000000aU) &&
+             (cpuid_edx(0x8000000aU) & (1u << SVM_FEATURE_SPEC_CTRL)) )
             setup_force_cpu_cap(X86_FEATURE_SC_MSR_HVM);
     }
 
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 15:25:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 15:25:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609920.949124 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlssz-0003zP-Tc; Thu, 28 Sep 2023 15:25:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609920.949124; Thu, 28 Sep 2023 15:25:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlssz-0003wZ-Op; Thu, 28 Sep 2023 15:25:05 +0000
Received: by outflank-mailman (input) for mailman id 609920;
 Thu, 28 Sep 2023 15:25:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QRba=FM=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qlssx-000335-UB
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 15:25:04 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 31157516-5e13-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 17:25:01 +0200 (CEST)
Received: from beta.station (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id 272334EE0C88;
 Thu, 28 Sep 2023 17:25:01 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 31157516-5e13-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	sstabellini@kernel.org,
	jbeulich@suse.com,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Gianluca Luparini <gianluca.luparini@bugseng.com>
Subject: [XEN PATCH v7 3/4] x86/include: address violations of MISRA C:2012 Rule 7.2
Date: Thu, 28 Sep 2023 17:23:03 +0200
Message-Id: <6f0ac778edc5de8cf079a657917696ceae919e8b.1695913900.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1695913900.git.simone.ballarin@bugseng.com>
References: <cover.1695913900.git.simone.ballarin@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
headline states:
"A 'u' or 'U' suffix shall be applied to all integer constants
that are represented in an unsigned type".

Add the 'U' suffix to integers literals with unsigned type.
Use _AC() for macro costants that are used also in assembly files.

For the sake of uniformity, the following changes are made:
- add the 'U' suffix to macros in 'pci.h'
- use _AC() for macros near 'X86_CR0_PG'

Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
---
Changes in v7:
- switch order of Signed-off-by tags
- change tag from x86/arm to x86/include
Changes in v6:
- new patch obtained by splitting ASM related changes from
"xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
- use UL suffix for X86_CR0_* macros
---
 xen/arch/x86/include/asm/apicdef.h   |   2 +-
 xen/arch/x86/include/asm/config.h    |   2 +-
 xen/arch/x86/include/asm/hpet.h      |   2 +-
 xen/arch/x86/include/asm/msi.h       |   2 +-
 xen/arch/x86/include/asm/msr-index.h | 182 +++++++++++++--------------
 xen/arch/x86/include/asm/pci.h       |   8 +-
 xen/arch/x86/include/asm/x86-defns.h |  22 ++--
 7 files changed, 110 insertions(+), 110 deletions(-)

diff --git a/xen/arch/x86/include/asm/apicdef.h b/xen/arch/x86/include/asm/apicdef.h
index a261436993..8d1b0087d4 100644
--- a/xen/arch/x86/include/asm/apicdef.h
+++ b/xen/arch/x86/include/asm/apicdef.h
@@ -8,7 +8,7 @@
  * Ingo Molnar <mingo@redhat.com>, 1999, 2000
  */
 
-#define		APIC_DEFAULT_PHYS_BASE	0xfee00000
+#define		APIC_DEFAULT_PHYS_BASE	0xfee00000U
  
 #define		APIC_ID		0x20
 #define			APIC_ID_MASK		(0xFFu<<24)
diff --git a/xen/arch/x86/include/asm/config.h b/xen/arch/x86/include/asm/config.h
index fbc4bb3416..bbced338be 100644
--- a/xen/arch/x86/include/asm/config.h
+++ b/xen/arch/x86/include/asm/config.h
@@ -257,7 +257,7 @@ extern unsigned char boot_edid_info[128];
 #endif /* CONFIG_PV32 */
 
 #define MACH2PHYS_COMPAT_VIRT_START    HYPERVISOR_COMPAT_VIRT_START
-#define MACH2PHYS_COMPAT_VIRT_END      0xFFE00000
+#define MACH2PHYS_COMPAT_VIRT_END      0xFFE00000U
 #define MACH2PHYS_COMPAT_NR_ENTRIES(d) \
     ((MACH2PHYS_COMPAT_VIRT_END-MACH2PHYS_COMPAT_VIRT_START(d))>>2)
 
diff --git a/xen/arch/x86/include/asm/hpet.h b/xen/arch/x86/include/asm/hpet.h
index 9919f74730..c5e8e9c8db 100644
--- a/xen/arch/x86/include/asm/hpet.h
+++ b/xen/arch/x86/include/asm/hpet.h
@@ -41,7 +41,7 @@
 #define HPET_TN_ROUTE		0x3e00
 #define HPET_TN_FSB		0x4000
 #define HPET_TN_FSB_CAP		0x8000
-#define HPET_TN_RESERVED	0xffff0081
+#define HPET_TN_RESERVED	0xffff0081U
 #define HPET_TN_INT_ROUTE_CAP	(0xffffffffULL << 32)
 
 
diff --git a/xen/arch/x86/include/asm/msi.h b/xen/arch/x86/include/asm/msi.h
index a53ade95c9..d89723d009 100644
--- a/xen/arch/x86/include/asm/msi.h
+++ b/xen/arch/x86/include/asm/msi.h
@@ -37,7 +37,7 @@
  */
 
 #define MSI_ADDR_BASE_HI            0
-#define MSI_ADDR_BASE_LO            0xfee00000
+#define MSI_ADDR_BASE_LO            0xfee00000U
 #define MSI_ADDR_BASE_MASK          (~0xfffff)
 #define MSI_ADDR_HEADER             MSI_ADDR_BASE_LO
 
diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
index 11ffed543a..718f8f860d 100644
--- a/xen/arch/x86/include/asm/msr-index.h
+++ b/xen/arch/x86/include/asm/msr-index.h
@@ -22,7 +22,7 @@
 #define  APIC_BASE_BSP                      (_AC(1, ULL) <<  8)
 #define  APIC_BASE_EXTD                     (_AC(1, ULL) << 10)
 #define  APIC_BASE_ENABLE                   (_AC(1, ULL) << 11)
-#define  APIC_BASE_ADDR_MASK                0x000ffffffffff000ULL
+#define  APIC_BASE_ADDR_MASK                _AC(0x000ffffffffff000, ULL)
 
 #define MSR_TEST_CTRL                       0x00000033
 #define  TEST_CTRL_SPLITLOCK_DETECT         (_AC(1, ULL) << 29)
@@ -30,7 +30,7 @@
 
 #define MSR_INTEL_CORE_THREAD_COUNT         0x00000035
 #define  MSR_CTC_THREAD_MASK                0x0000ffff
-#define  MSR_CTC_CORE_MASK                  0xffff0000
+#define  MSR_CTC_CORE_MASK                  _AC(0xffff0000, U)
 
 #define MSR_SPEC_CTRL                       0x00000048
 #define  SPEC_CTRL_IBRS                     (_AC(1, ULL) <<  0)
@@ -186,7 +186,7 @@
 #define MSR_UARCH_MISC_CTRL                 0x00001b01
 #define  UARCH_CTRL_DOITM                   (_AC(1, ULL) <<  0)
 
-#define MSR_EFER                            0xc0000080 /* Extended Feature Enable Register */
+#define MSR_EFER                            _AC(0xc0000080, U) /* Extended Feature Enable Register */
 #define  EFER_SCE                           (_AC(1, ULL) <<  0) /* SYSCALL Enable */
 #define  EFER_LME                           (_AC(1, ULL) <<  8) /* Long Mode Enable */
 #define  EFER_LMA                           (_AC(1, ULL) << 10) /* Long Mode Active */
@@ -199,35 +199,35 @@
     (EFER_SCE | EFER_LME | EFER_LMA | EFER_NXE | EFER_SVME | EFER_FFXSE | \
      EFER_AIBRSE)
 
-#define MSR_STAR                            0xc0000081 /* legacy mode SYSCALL target */
-#define MSR_LSTAR                           0xc0000082 /* long mode SYSCALL target */
-#define MSR_CSTAR                           0xc0000083 /* compat mode SYSCALL target */
-#define MSR_SYSCALL_MASK                    0xc0000084 /* EFLAGS mask for syscall */
-#define MSR_FS_BASE                         0xc0000100 /* 64bit FS base */
-#define MSR_GS_BASE                         0xc0000101 /* 64bit GS base */
-#define MSR_SHADOW_GS_BASE                  0xc0000102 /* SwapGS GS shadow */
-#define MSR_TSC_AUX                         0xc0000103 /* Auxiliary TSC */
+#define MSR_STAR                            _AC(0xc0000081, U) /* legacy mode SYSCALL target */
+#define MSR_LSTAR                           _AC(0xc0000082, U) /* long mode SYSCALL target */
+#define MSR_CSTAR                           _AC(0xc0000083, U) /* compat mode SYSCALL target */
+#define MSR_SYSCALL_MASK                    _AC(0xc0000084, U) /* EFLAGS mask for syscall */
+#define MSR_FS_BASE                         _AC(0xc0000100, U) /* 64bit FS base */
+#define MSR_GS_BASE                         _AC(0xc0000101, U) /* 64bit GS base */
+#define MSR_SHADOW_GS_BASE                  _AC(0xc0000102, U) /* SwapGS GS shadow */
+#define MSR_TSC_AUX                         _AC(0xc0000103, U) /* Auxiliary TSC */
 
-#define MSR_K8_SYSCFG                       0xc0010010
+#define MSR_K8_SYSCFG                       _AC(0xc0010010, U)
 #define  SYSCFG_MTRR_FIX_DRAM_EN            (_AC(1, ULL) << 18)
 #define  SYSCFG_MTRR_FIX_DRAM_MOD_EN        (_AC(1, ULL) << 19)
 #define  SYSCFG_MTRR_VAR_DRAM_EN            (_AC(1, ULL) << 20)
 #define  SYSCFG_MTRR_TOM2_EN                (_AC(1, ULL) << 21)
 #define  SYSCFG_TOM2_FORCE_WB               (_AC(1, ULL) << 22)
 
-#define MSR_K8_IORR_BASE0                   0xc0010016
-#define MSR_K8_IORR_MASK0                   0xc0010017
-#define MSR_K8_IORR_BASE1                   0xc0010018
-#define MSR_K8_IORR_MASK1                   0xc0010019
+#define MSR_K8_IORR_BASE0                   _AC(0xc0010016, U)
+#define MSR_K8_IORR_MASK0                   _AC(0xc0010017, U)
+#define MSR_K8_IORR_BASE1                   _AC(0xc0010018, U)
+#define MSR_K8_IORR_MASK1                   _AC(0xc0010019, U)
 
-#define MSR_K8_TSEG_BASE                    0xc0010112 /* AMD doc: SMMAddr */
-#define MSR_K8_TSEG_MASK                    0xc0010113 /* AMD doc: SMMMask */
+#define MSR_K8_TSEG_BASE                    _AC(0xc0010112, U) /* AMD doc: SMMAddr */
+#define MSR_K8_TSEG_MASK                    _AC(0xc0010113, U) /* AMD doc: SMMMask */
 
-#define MSR_K8_VM_CR                        0xc0010114
+#define MSR_K8_VM_CR                        _AC(0xc0010114, U)
 #define  VM_CR_INIT_REDIRECTION             (_AC(1, ULL) <<  1)
 #define  VM_CR_SVM_DISABLE                  (_AC(1, ULL) <<  4)
 
-#define MSR_VIRT_SPEC_CTRL                  0xc001011f /* Layout matches MSR_SPEC_CTRL */
+#define MSR_VIRT_SPEC_CTRL                  _AC(0xc001011f, U) /* Layout matches MSR_SPEC_CTRL */
 
 #define MSR_AMD_CSTATE_CFG                  0xc0010296
 
@@ -313,7 +313,7 @@
 #define CMCI_EN 			(1UL<<30)
 #define CMCI_THRESHOLD_MASK		0x7FFF
 
-#define MSR_AMD64_MC0_MASK		0xc0010044
+#define MSR_AMD64_MC0_MASK		0xc0010044U
 
 #define MSR_IA32_MCx_CTL(x)		(MSR_IA32_MC0_CTL + 4*(x))
 #define MSR_IA32_MCx_STATUS(x)		(MSR_IA32_MC0_STATUS + 4*(x))
@@ -345,82 +345,82 @@
 
 /* K7/K8 MSRs. Not complete. See the architecture manual for a more
    complete list. */
-#define MSR_K7_EVNTSEL0			0xc0010000
-#define MSR_K7_PERFCTR0			0xc0010004
-#define MSR_K7_EVNTSEL1			0xc0010001
-#define MSR_K7_PERFCTR1			0xc0010005
-#define MSR_K7_EVNTSEL2			0xc0010002
-#define MSR_K7_PERFCTR2			0xc0010006
-#define MSR_K7_EVNTSEL3			0xc0010003
-#define MSR_K7_PERFCTR3			0xc0010007
-#define MSR_K8_TOP_MEM1			0xc001001a
-#define MSR_K8_TOP_MEM2			0xc001001d
-
-#define MSR_K8_HWCR			0xc0010015
+#define MSR_K7_EVNTSEL0			0xc0010000U
+#define MSR_K7_PERFCTR0			0xc0010004U
+#define MSR_K7_EVNTSEL1			0xc0010001U
+#define MSR_K7_PERFCTR1			0xc0010005U
+#define MSR_K7_EVNTSEL2			0xc0010002U
+#define MSR_K7_PERFCTR2			0xc0010006U
+#define MSR_K7_EVNTSEL3			0xc0010003U
+#define MSR_K7_PERFCTR3			0xc0010007U
+#define MSR_K8_TOP_MEM1			0xc001001aU
+#define MSR_K8_TOP_MEM2			0xc001001dU
+
+#define MSR_K8_HWCR			0xc0010015U
 #define K8_HWCR_TSC_FREQ_SEL		(1ULL << 24)
 #define K8_HWCR_CPUID_USER_DIS		(1ULL << 35)
 
-#define MSR_K7_FID_VID_CTL		0xc0010041
-#define MSR_K7_FID_VID_STATUS		0xc0010042
-#define MSR_K8_PSTATE_LIMIT		0xc0010061
-#define MSR_K8_PSTATE_CTRL		0xc0010062
-#define MSR_K8_PSTATE_STATUS		0xc0010063
-#define MSR_K8_PSTATE0			0xc0010064
-#define MSR_K8_PSTATE1			0xc0010065
-#define MSR_K8_PSTATE2			0xc0010066
-#define MSR_K8_PSTATE3			0xc0010067
-#define MSR_K8_PSTATE4			0xc0010068
-#define MSR_K8_PSTATE5			0xc0010069
-#define MSR_K8_PSTATE6			0xc001006A
-#define MSR_K8_PSTATE7			0xc001006B
-#define MSR_K8_ENABLE_C1E		0xc0010055
-#define MSR_K8_VM_HSAVE_PA		0xc0010117
-
-#define MSR_AMD_FAM15H_EVNTSEL0		0xc0010200
-#define MSR_AMD_FAM15H_PERFCTR0		0xc0010201
-#define MSR_AMD_FAM15H_EVNTSEL1		0xc0010202
-#define MSR_AMD_FAM15H_PERFCTR1		0xc0010203
-#define MSR_AMD_FAM15H_EVNTSEL2		0xc0010204
-#define MSR_AMD_FAM15H_PERFCTR2		0xc0010205
-#define MSR_AMD_FAM15H_EVNTSEL3		0xc0010206
-#define MSR_AMD_FAM15H_PERFCTR3		0xc0010207
-#define MSR_AMD_FAM15H_EVNTSEL4		0xc0010208
-#define MSR_AMD_FAM15H_PERFCTR4		0xc0010209
-#define MSR_AMD_FAM15H_EVNTSEL5		0xc001020a
-#define MSR_AMD_FAM15H_PERFCTR5		0xc001020b
-
-#define MSR_AMD_L7S0_FEATURE_MASK	0xc0011002
-#define MSR_AMD_THRM_FEATURE_MASK	0xc0011003
-#define MSR_K8_FEATURE_MASK		0xc0011004
-#define MSR_K8_EXT_FEATURE_MASK		0xc0011005
+#define MSR_K7_FID_VID_CTL		0xc0010041U
+#define MSR_K7_FID_VID_STATUS		0xc0010042U
+#define MSR_K8_PSTATE_LIMIT		0xc0010061U
+#define MSR_K8_PSTATE_CTRL		0xc0010062U
+#define MSR_K8_PSTATE_STATUS		0xc0010063U
+#define MSR_K8_PSTATE0			0xc0010064U
+#define MSR_K8_PSTATE1			0xc0010065U
+#define MSR_K8_PSTATE2			0xc0010066U
+#define MSR_K8_PSTATE3			0xc0010067U
+#define MSR_K8_PSTATE4			0xc0010068U
+#define MSR_K8_PSTATE5			0xc0010069U
+#define MSR_K8_PSTATE6			0xc001006AU
+#define MSR_K8_PSTATE7			0xc001006BU
+#define MSR_K8_ENABLE_C1E		0xc0010055U
+#define MSR_K8_VM_HSAVE_PA		0xc0010117U
+
+#define MSR_AMD_FAM15H_EVNTSEL0		0xc0010200U
+#define MSR_AMD_FAM15H_PERFCTR0		0xc0010201U
+#define MSR_AMD_FAM15H_EVNTSEL1		0xc0010202U
+#define MSR_AMD_FAM15H_PERFCTR1		0xc0010203U
+#define MSR_AMD_FAM15H_EVNTSEL2		0xc0010204U
+#define MSR_AMD_FAM15H_PERFCTR2		0xc0010205U
+#define MSR_AMD_FAM15H_EVNTSEL3		0xc0010206U
+#define MSR_AMD_FAM15H_PERFCTR3		0xc0010207U
+#define MSR_AMD_FAM15H_EVNTSEL4		0xc0010208U
+#define MSR_AMD_FAM15H_PERFCTR4		0xc0010209U
+#define MSR_AMD_FAM15H_EVNTSEL5		0xc001020aU
+#define MSR_AMD_FAM15H_PERFCTR5		0xc001020bU
+
+#define MSR_AMD_L7S0_FEATURE_MASK	0xc0011002U
+#define MSR_AMD_THRM_FEATURE_MASK	0xc0011003U
+#define MSR_K8_FEATURE_MASK			0xc0011004U
+#define MSR_K8_EXT_FEATURE_MASK		0xc0011005U
 
 /* AMD64 MSRs */
-#define MSR_AMD64_NB_CFG		0xc001001f
+#define MSR_AMD64_NB_CFG		0xc001001fU
 #define AMD64_NB_CFG_CF8_EXT_ENABLE_BIT	46
-#define MSR_AMD64_LS_CFG		0xc0011020
-#define MSR_AMD64_IC_CFG		0xc0011021
-#define MSR_AMD64_DC_CFG		0xc0011022
-#define MSR_AMD64_DE_CFG		0xc0011029
+#define MSR_AMD64_LS_CFG		0xc0011020U
+#define MSR_AMD64_IC_CFG		0xc0011021U
+#define MSR_AMD64_DC_CFG		0xc0011022U
+#define MSR_AMD64_DE_CFG		0xc0011029U
 #define AMD64_DE_CFG_LFENCE_SERIALISE	(_AC(1, ULL) << 1)
-#define MSR_AMD64_EX_CFG		0xc001102c
-#define MSR_AMD64_DE_CFG2		0xc00110e3
+#define MSR_AMD64_EX_CFG		0xc001102cU
+#define MSR_AMD64_DE_CFG2		0xc00110e3U
 
-#define MSR_AMD64_DR0_ADDRESS_MASK	0xc0011027
-#define MSR_AMD64_DR1_ADDRESS_MASK	0xc0011019
-#define MSR_AMD64_DR2_ADDRESS_MASK	0xc001101a
-#define MSR_AMD64_DR3_ADDRESS_MASK	0xc001101b
+#define MSR_AMD64_DR0_ADDRESS_MASK	0xc0011027U
+#define MSR_AMD64_DR1_ADDRESS_MASK	0xc0011019U
+#define MSR_AMD64_DR2_ADDRESS_MASK	0xc001101aU
+#define MSR_AMD64_DR3_ADDRESS_MASK	0xc001101bU
 
 /* AMD Family10h machine check MSRs */
-#define MSR_F10_MC4_MISC1		0xc0000408
-#define MSR_F10_MC4_MISC2		0xc0000409
-#define MSR_F10_MC4_MISC3		0xc000040A
+#define MSR_F10_MC4_MISC1		0xc0000408U
+#define MSR_F10_MC4_MISC2		0xc0000409U
+#define MSR_F10_MC4_MISC3		0xc000040AU
 
 /* AMD Family10h Bus Unit MSRs */
-#define MSR_F10_BU_CFG 		0xc0011023
-#define MSR_F10_BU_CFG2		0xc001102a
+#define MSR_F10_BU_CFG 		0xc0011023U
+#define MSR_F10_BU_CFG2		0xc001102aU
 
 /* Other AMD Fam10h MSRs */
-#define MSR_FAM10H_MMIO_CONF_BASE	0xc0010058
+#define MSR_FAM10H_MMIO_CONF_BASE	0xc0010058U
 #define FAM10H_MMIO_CONF_ENABLE         (1<<0)
 #define FAM10H_MMIO_CONF_BUSRANGE_MASK	0xf
 #define FAM10H_MMIO_CONF_BUSRANGE_SHIFT 2
@@ -429,22 +429,22 @@
 
 /* AMD Microcode MSRs */
 #define MSR_AMD_PATCHLEVEL		0x0000008b
-#define MSR_AMD_PATCHLOADER		0xc0010020
+#define MSR_AMD_PATCHLOADER		0xc0010020U
 
 /* AMD TSC RATE MSR */
-#define MSR_AMD64_TSC_RATIO		0xc0000104
+#define MSR_AMD64_TSC_RATIO		0xc0000104U
 
 /* AMD Lightweight Profiling MSRs */
-#define MSR_AMD64_LWP_CFG		0xc0000105
-#define MSR_AMD64_LWP_CBADDR		0xc0000106
+#define MSR_AMD64_LWP_CFG		0xc0000105U
+#define MSR_AMD64_LWP_CBADDR		0xc0000106U
 
 /* AMD OS Visible Workaround MSRs */
-#define MSR_AMD_OSVW_ID_LENGTH          0xc0010140
-#define MSR_AMD_OSVW_STATUS             0xc0010141
+#define MSR_AMD_OSVW_ID_LENGTH          0xc0010140U
+#define MSR_AMD_OSVW_STATUS             0xc0010141U
 
 /* AMD Protected Processor Inventory Number */
-#define MSR_AMD_PPIN_CTL                0xc00102f0
-#define MSR_AMD_PPIN                    0xc00102f1
+#define MSR_AMD_PPIN_CTL                0xc00102f0U
+#define MSR_AMD_PPIN                    0xc00102f1U
 
 /* VIA Cyrix defined MSRs*/
 #define MSR_VIA_FCR			0x00001107
diff --git a/xen/arch/x86/include/asm/pci.h b/xen/arch/x86/include/asm/pci.h
index f4a58c8acf..e1dd12eb19 100644
--- a/xen/arch/x86/include/asm/pci.h
+++ b/xen/arch/x86/include/asm/pci.h
@@ -3,10 +3,10 @@
 
 #include <xen/mm.h>
 
-#define CF8_BDF(cf8)     (  ((cf8) & 0x00ffff00) >> 8)
-#define CF8_ADDR_LO(cf8) (   (cf8) & 0x000000fc)
-#define CF8_ADDR_HI(cf8) (  ((cf8) & 0x0f000000) >> 16)
-#define CF8_ENABLED(cf8) (!!((cf8) & 0x80000000))
+#define CF8_BDF(cf8)     (  ((cf8) & 0x00ffff00U) >> 8)
+#define CF8_ADDR_LO(cf8) (   (cf8) & 0x000000fcU)
+#define CF8_ADDR_HI(cf8) (  ((cf8) & 0x0f000000U) >> 16)
+#define CF8_ENABLED(cf8) (!!((cf8) & 0x80000000U))
 
 #define IS_SNB_GFX(id) (id == 0x01068086 || id == 0x01168086 \
                         || id == 0x01268086 || id == 0x01028086 \
diff --git a/xen/arch/x86/include/asm/x86-defns.h b/xen/arch/x86/include/asm/x86-defns.h
index 5838631ef6..48d7a3b7af 100644
--- a/xen/arch/x86/include/asm/x86-defns.h
+++ b/xen/arch/x86/include/asm/x86-defns.h
@@ -30,17 +30,17 @@
 /*
  * Intel CPU flags in CR0
  */
-#define X86_CR0_PE              0x00000001 /* Enable Protected Mode    (RW) */
-#define X86_CR0_MP              0x00000002 /* Monitor Coprocessor      (RW) */
-#define X86_CR0_EM              0x00000004 /* Require FPU Emulation    (RO) */
-#define X86_CR0_TS              0x00000008 /* Task Switched            (RW) */
-#define X86_CR0_ET              0x00000010 /* Extension type           (RO) */
-#define X86_CR0_NE              0x00000020 /* Numeric Error Reporting  (RW) */
-#define X86_CR0_WP              0x00010000 /* Supervisor Write Protect (RW) */
-#define X86_CR0_AM              0x00040000 /* Alignment Checking       (RW) */
-#define X86_CR0_NW              0x20000000 /* Not Write-Through        (RW) */
-#define X86_CR0_CD              0x40000000 /* Cache Disable            (RW) */
-#define X86_CR0_PG              0x80000000 /* Paging                   (RW) */
+#define X86_CR0_PE              _AC(0x00000001, UL) /* Enable Protected Mode    (RW) */
+#define X86_CR0_MP              _AC(0x00000002, UL) /* Monitor Coprocessor      (RW) */
+#define X86_CR0_EM              _AC(0x00000004, UL) /* Require FPU Emulation    (RO) */
+#define X86_CR0_TS              _AC(0x00000008, UL) /* Task Switched            (RW) */
+#define X86_CR0_ET              _AC(0x00000010, UL) /* Extension type           (RO) */
+#define X86_CR0_NE              _AC(0x00000020, UL) /* Numeric Error Reporting  (RW) */
+#define X86_CR0_WP              _AC(0x00010000, UL) /* Supervisor Write Protect (RW) */
+#define X86_CR0_AM              _AC(0x00040000, UL) /* Alignment Checking       (RW) */
+#define X86_CR0_NW              _AC(0x20000000, UL) /* Not Write-Through        (RW) */
+#define X86_CR0_CD              _AC(0x40000000, UL) /* Cache Disable            (RW) */
+#define X86_CR0_PG              _AC(0x80000000, UL) /* Paging                   (RW) */
 
 /*
  * Intel CPU flags in CR3
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 15:33:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 15:33:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609945.949135 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlt0r-000708-RN; Thu, 28 Sep 2023 15:33:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609945.949135; Thu, 28 Sep 2023 15:33:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlt0r-000701-OP; Thu, 28 Sep 2023 15:33:13 +0000
Received: by outflank-mailman (input) for mailman id 609945;
 Thu, 28 Sep 2023 15:33:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=LMSP=FM=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qlt0q-0006yi-Sm
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 15:33:12 +0000
Received: from smtp-out1.suse.de (smtp-out1.suse.de [2001:67c:2178:6::1c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 547b95db-5e14-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 17:33:10 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id E0B96218E6;
 Thu, 28 Sep 2023 15:33:09 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 96E44138E9;
 Thu, 28 Sep 2023 15:33:09 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id tL2aI7WcFWUbMQAAMHmgww
 (envelope-from <jgross@suse.com>); Thu, 28 Sep 2023 15:33:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 547b95db-5e14-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695915189; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=R4vy0zU0Pr1f3U56GuNDaWODiU85Wy0KJE3fHb1+eWo=;
	b=em9roNfYcAkpdHg8RN8J4aS5lXXniLVeSqcg4TDUGnKLURMJEdPh7eUUdOMoonDbfVMlAI
	++XAUtLrwdmvCjlJ+o/CmGQMdJGCaaqEflLLfL2yhlw6N1TPK1HzVFQWEWb0GrLLCqSPyU
	JHwy8itCmB/fEt0RHTONGRfvXWoffnc=
Message-ID: <8c0f3255-83ea-4108-847f-63b895997577@suse.com>
Date: Thu, 28 Sep 2023 17:33:08 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 1/2] xen: evtchn: Allow shared registration of IRQ handers
Content-Language: en-US
To: Viresh Kumar <viresh.kumar@linaro.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: Vincent Guittot <vincent.guittot@linaro.org>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 stratos-dev@op-lists.linaro.org, Erik Schilling <erik.schilling@linaro.org>,
 Manos Pitsidianakis <manos.pitsidianakis@linaro.org>,
 Mathieu Poirier <mathieu.poirier@linaro.org>,
 xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org
References: <cover.1693311370.git.viresh.kumar@linaro.org>
 <fc6d47de76a8b77d0a1b4bc8204694c079715f2e.1693311370.git.viresh.kumar@linaro.org>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <fc6d47de76a8b77d0a1b4bc8204694c079715f2e.1693311370.git.viresh.kumar@linaro.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------JVTR8m52YxNgV4MDl5HMuc3s"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------JVTR8m52YxNgV4MDl5HMuc3s
Content-Type: multipart/mixed; boundary="------------fh0Fr5pHK4fHyrXGogPynGTi";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Viresh Kumar <viresh.kumar@linaro.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: Vincent Guittot <vincent.guittot@linaro.org>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 stratos-dev@op-lists.linaro.org, Erik Schilling <erik.schilling@linaro.org>,
 Manos Pitsidianakis <manos.pitsidianakis@linaro.org>,
 Mathieu Poirier <mathieu.poirier@linaro.org>,
 xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org
Message-ID: <8c0f3255-83ea-4108-847f-63b895997577@suse.com>
Subject: Re: [PATCH 1/2] xen: evtchn: Allow shared registration of IRQ handers
References: <cover.1693311370.git.viresh.kumar@linaro.org>
 <fc6d47de76a8b77d0a1b4bc8204694c079715f2e.1693311370.git.viresh.kumar@linaro.org>
In-Reply-To: <fc6d47de76a8b77d0a1b4bc8204694c079715f2e.1693311370.git.viresh.kumar@linaro.org>

--------------fh0Fr5pHK4fHyrXGogPynGTi
Content-Type: multipart/mixed; boundary="------------S0lyxxAH05x0JFhaooIfch0M"

--------------S0lyxxAH05x0JFhaooIfch0M
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjkuMDguMjMgMTQ6MjksIFZpcmVzaCBLdW1hciB3cm90ZToNCj4gQ3VycmVudGx5IHRo
ZSBoYW5kbGluZyBvZiBldmVudHMgaXMgc3VwcG9ydGVkIGVpdGhlciBpbiB0aGUga2VybmVs
IG9yDQo+IHVzZXJzcGFjZSwgYnV0IG5vdCBib3RoLg0KPiANCj4gSW4gb3JkZXIgdG8gc3Vw
cG9ydCBmYXN0IGRlbGl2ZXJ5IG9mIGludGVycnVwdHMgZnJvbSB0aGUgZ3Vlc3QgdG8gdGhl
DQo+IGJhY2tlbmQsIHdlIG5lZWQgdG8gaGFuZGxlIHRoZSBRdWV1ZSBub3RpZnkgcGFydCBv
ZiBWaXJ0aW8gcHJvdG9jb2wgaW4NCj4ga2VybmVsIGFuZCB0aGUgcmVzdCBpbiB1c2Vyc3Bh
Y2UuDQo+IA0KPiBVcGRhdGUgdGhlIGludGVycnVwdCBoYW5kbGVyIHJlZ2lzdHJhdGlvbiBm
bGFnIHRvIElSUUZfU0hBUkVEIGZvciBldmVudA0KPiBjaGFubmVscywgd2hpY2ggd291bGQg
YWxsb3cgbXVsdGlwbGUgZW50aXRpZXMgdG8gYmluZCB0aGVpciBpbnRlcnJ1cHQNCj4gaGFu
ZGxlciBmb3IgdGhlIHNhbWUgZXZlbnQgY2hhbm5lbCBwb3J0Lg0KPiANCj4gQWxzbyBpbmNy
ZW1lbnQgdGhlIHJlZmVyZW5jZSBjb3VudCBvZiBpcnFfaW5mbyB3aGVuIG11bHRpcGxlIGVu
dGl0aWVzDQo+IHRyeSB0byBiaW5kIGV2ZW50IGNoYW5uZWwgdG8gaXJxY2hpcCwgc28gdGhl
IHVuYmluZGluZyBoYXBwZW5zIG9ubHkNCj4gYWZ0ZXIgYWxsIHRoZSB1c2VycyBhcmUgZ29u
ZS4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IFZpcmVzaCBLdW1hciA8dmlyZXNoLmt1bWFyQGxp
bmFyby5vcmc+DQo+IC0tLQ0KPiAgIGRyaXZlcnMveGVuL2V2ZW50cy9ldmVudHNfYmFzZS5j
IHwgMSArDQo+ICAgZHJpdmVycy94ZW4vZXZ0Y2huLmMgICAgICAgICAgICAgfCAyICstDQo+
ICAgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkNCj4g
DQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3hlbi9ldmVudHMvZXZlbnRzX2Jhc2UuYyBiL2Ry
aXZlcnMveGVuL2V2ZW50cy9ldmVudHNfYmFzZS5jDQo+IGluZGV4IGM3NzE1ZjhiZDQ1Mi4u
MDE4MjY4MGRhYjNhIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL3hlbi9ldmVudHMvZXZlbnRz
X2Jhc2UuYw0KPiArKysgYi9kcml2ZXJzL3hlbi9ldmVudHMvZXZlbnRzX2Jhc2UuYw0KPiBA
QCAtMTIzOSw2ICsxMjM5LDcgQEAgc3RhdGljIGludCBiaW5kX2V2dGNobl90b19pcnFfY2hp
cChldnRjaG5fcG9ydF90IGV2dGNobiwgc3RydWN0IGlycV9jaGlwICpjaGlwLA0KPiAgIAl9
IGVsc2Ugew0KPiAgIAkJc3RydWN0IGlycV9pbmZvICppbmZvID0gaW5mb19mb3JfaXJxKGly
cSk7DQo+ICAgCQlXQVJOX09OKGluZm8gPT0gTlVMTCB8fCBpbmZvLT50eXBlICE9IElSUVRf
RVZUQ0hOKTsNCj4gKwkJaW5mby0+cmVmY250Kys7DQoNClRoaXMgc2hvdWxkIGJlIGNvbmRp
dGlvbmFsIG9uIHRoZSBXQVJOX09OKCkgbm90IHRyaWdnZXJpbmcuDQoNCj4gICAJfQ0KPiAg
IA0KPiAgIG91dDoNCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMveGVuL2V2dGNobi5jIGIvZHJp
dmVycy94ZW4vZXZ0Y2huLmMNCj4gaW5kZXggYzk5NDE1YTcwMDUxLi40M2Y3NzkxNWZlYjUg
MTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMveGVuL2V2dGNobi5jDQo+ICsrKyBiL2RyaXZlcnMv
eGVuL2V2dGNobi5jDQo+IEBAIC0zOTcsNyArMzk3LDcgQEAgc3RhdGljIGludCBldnRjaG5f
YmluZF90b191c2VyKHN0cnVjdCBwZXJfdXNlcl9kYXRhICp1LCBldnRjaG5fcG9ydF90IHBv
cnQpDQo+ICAgCWlmIChyYyA8IDApDQo+ICAgCQlnb3RvIGVycjsNCj4gICANCj4gLQlyYyA9
IGJpbmRfZXZ0Y2huX3RvX2lycWhhbmRsZXJfbGF0ZWVvaShwb3J0LCBldnRjaG5faW50ZXJy
dXB0LCAwLA0KPiArCXJjID0gYmluZF9ldnRjaG5fdG9faXJxaGFuZGxlcl9sYXRlZW9pKHBv
cnQsIGV2dGNobl9pbnRlcnJ1cHQsIElSUUZfU0hBUkVELA0KPiAgIAkJCQkJICAgICAgIHUt
Pm5hbWUsIGV2dGNobik7DQo+ICAgCWlmIChyYyA8IDApDQo+ICAgCQlnb3RvIGVycjsNCg0K
DQpKdWVyZ2VuDQo=
--------------S0lyxxAH05x0JFhaooIfch0M
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------S0lyxxAH05x0JFhaooIfch0M--

--------------fh0Fr5pHK4fHyrXGogPynGTi--

--------------JVTR8m52YxNgV4MDl5HMuc3s
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUVnLUFAwAAAAAACgkQsN6d1ii/Ey/3
KQf+IET6cM4Bo9o34kH8hoFxRF9K2Dbi0YZXC7NdlDK9OVrbqJ9SruSDaoo/z65Jaz3HGdX6uyXC
eGC8JwcRUyrc+SWUTb6sm776y83CykA9SPXY3FizGjBv97X1t87Xdez4fudFELKSljdhU1IQimDz
aAi6ekhfGP2iCV1r/jDqCRnQb9Rv/FZ8VDVDnURV3HrudhNmWeL2q9hYww/ZovU4YcDJNUoTJz+9
PnXMwuLuZVq9BguAkiQevecjs+OXfFEgZN8CcnoqvE6SZlCoqKbrudaajYZwzniyHPihI1ZOVFzx
OXGaMiGVUQLB3HKbb+u/IL0VEs5xVGZGTIMkRcNllA==
=H/n6
-----END PGP SIGNATURE-----

--------------JVTR8m52YxNgV4MDl5HMuc3s--


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 15:36:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 15:36:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609950.949146 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlt40-0007lp-B2; Thu, 28 Sep 2023 15:36:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609950.949146; Thu, 28 Sep 2023 15:36:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlt40-0007li-6Q; Thu, 28 Sep 2023 15:36:28 +0000
Received: by outflank-mailman (input) for mailman id 609950;
 Thu, 28 Sep 2023 15:36:27 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=oxVr=FM=gmail.com=wei.liu.linux@srs-se1.protection.inumbo.net>)
 id 1qlsuD-00032t-FE
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 15:26:21 +0000
Received: from mail-ot1-f48.google.com (mail-ot1-f48.google.com
 [209.85.210.48]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 5f6bdcd9-5e13-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 17:26:20 +0200 (CEST)
Received: by mail-ot1-f48.google.com with SMTP id
 46e09a7af769-6c4e7951dddso4759200a34.1
 for <xen-devel@lists.xenproject.org>; Thu, 28 Sep 2023 08:26:20 -0700 (PDT)
Received: from liuwe-devbox-debian-v2 ([20.69.120.36])
 by smtp.gmail.com with ESMTPSA id
 j14-20020aa78dce000000b006906aaf1e4dsm13514673pfr.150.2023.09.28.08.26.17
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 28 Sep 2023 08:26:18 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5f6bdcd9-5e13-11ee-878a-cb3800f73035
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695914779; x=1696519579;
        h=in-reply-to:content-disposition:mime-version:references:message-id
         :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date
         :message-id:reply-to;
        bh=PYPUiAEm0lZNQbU6hKmoJKqPGRAnrTCwSSHfRdZ7LfA=;
        b=Bt/JtE2c0XpULgI1BcBBNZTQejlaC2BXxa3AWeMWYcCgzj/EG6igByfQAf/Q9xdSEm
         7HZjJwO+06EP1dBRDTgRT1V/18k3GGdodlNjH7/I7AcaNoBcq7m0G0vvx2F8j7jpkQlb
         TGxHXfJpUV+sJaSFGx3yfeNk8STUjWrl9dV5aaJISSKXqSSM5/uvz/J0CcglDwUfcIRf
         3v+tMn42o1F7agBjF/cdV/S0wGPtkFcAXfvpPibs3wEtst7Y82mSrPUxF+ido9YalEnp
         lCw7eqLUhKX22AvXF92h1FQR1IolTnGrhJSowkdzrbhZm1ucaRiK3OWPER+hE1Zud2BC
         Qq1A==
X-Gm-Message-State: AOJu0YyElMdHVTpzUbmPNKWGoaUOEMxyZLKYNnWOu2ouIg3wxQodbzGp
	PAMS9a6tZ8RNsKSKhUTFezg=
X-Google-Smtp-Source: AGHT+IEkFDTusLpYox11EoA1Tl2MJIdC5Ad7Ua286wH6ql8JYqDg2cQ1Wc6Zlzvv071aY+VufA88gQ==
X-Received: by 2002:a9d:73d5:0:b0:6c4:b339:2528 with SMTP id m21-20020a9d73d5000000b006c4b3392528mr1632381otk.16.1695914778722;
        Thu, 28 Sep 2023 08:26:18 -0700 (PDT)
Date: Thu, 28 Sep 2023 15:26:16 +0000
From: Wei Liu <wei.liu@kernel.org>
To: j.granados@samsung.com
Cc: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org,
	josh@joshtriplett.org, Kees Cook <keescook@chromium.org>,
	Phillip Potter <phil@philpotter.co.uk>,
	Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
	Jiri Slaby <jirislaby@kernel.org>,
	"James E.J. Bottomley" <jejb@linux.ibm.com>,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	Doug Gilbert <dgilbert@interlog.com>,
	Sudip Mukherjee <sudipm.mukherjee@gmail.com>,
	Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>,
	Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>,
	"Jason A. Donenfeld" <Jason@zx2c4.com>,
	David Ahern <dsahern@kernel.org>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Robin Holt <robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>,
	Russ Weight <russell.h.weight@intel.com>,
	"Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>,
	"K. Y. Srinivasan" <kys@microsoft.com>,
	Haiyang Zhang <haiyangz@microsoft.com>,
	Wei Liu <wei.liu@kernel.org>, Dexuan Cui <decui@microsoft.com>,
	Jani Nikula <jani.nikula@linux.intel.com>,
	Joonas Lahtinen <joonas.lahtinen@linux.intel.com>,
	Rodrigo Vivi <rodrigo.vivi@intel.com>,
	Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>,
	David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
	linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org,
	linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org,
	openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org,
	linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org,
	intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 14/15] hyper-v/azure: Remove now superfluous sentinel
 element from ctl_table array
Message-ID: <ZRWbGDlXCS4t8tMf@liuwe-devbox-debian-v2>
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
 <65157da8.050a0220.fb263.fdb1SMTPIN_ADDED_BROKEN@mx.google.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <65157da8.050a0220.fb263.fdb1SMTPIN_ADDED_BROKEN@mx.google.com>

Please change the prefix to "Drivers: hv:" in the subject line in the
two patches.

On Thu, Sep 28, 2023 at 03:21:39PM +0200, Joel Granados via B4 Relay wrote:
> From: Joel Granados <j.granados@samsung.com>
> 
> This commit comes at the tail end of a greater effort to remove the
> empty elements at the end of the ctl_table arrays (sentinels) which
> will reduce the overall build time size of the kernel and run time
> memory bloat by ~64 bytes per sentinel (further information Link :
> https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)
> 
> Remove sentinel from hv_ctl_table
> 
> Signed-off-by: Joel Granados <j.granados@samsung.com>
> ---
>  drivers/hv/hv_common.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/hv/hv_common.c b/drivers/hv/hv_common.c
> index ccad7bca3fd3..bc7d678030aa 100644
> --- a/drivers/hv/hv_common.c
> +++ b/drivers/hv/hv_common.c
> @@ -147,8 +147,7 @@ static struct ctl_table hv_ctl_table[] = {
>  		.proc_handler	= proc_dointvec_minmax,
>  		.extra1		= SYSCTL_ZERO,
>  		.extra2		= SYSCTL_ONE
> -	},
> -	{}
> +	}

Please keep the comma at the end.

>  };
>  
>  static int hv_die_panic_notify_crash(struct notifier_block *self,
> 
> -- 
> 2.30.2
> 


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 15:39:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 15:39:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609956.949155 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlt6a-0000EG-MO; Thu, 28 Sep 2023 15:39:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609956.949155; Thu, 28 Sep 2023 15:39:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlt6a-0000E9-Jg; Thu, 28 Sep 2023 15:39:08 +0000
Received: by outflank-mailman (input) for mailman id 609956;
 Thu, 28 Sep 2023 15:39:07 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QRba=FM=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qlt6Z-0000E1-E3
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 15:39:07 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 27fab11d-5e15-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 17:39:05 +0200 (CEST)
Received: from [192.168.1.9] (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id 139D34EE0739;
 Thu, 28 Sep 2023 17:39:04 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 27fab11d-5e15-11ee-9b0d-b553b5be7939
Message-ID: <9ae46731-d553-4fca-b2b9-a056f018e23f@bugseng.com>
Date: Thu, 28 Sep 2023 17:39:03 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
Content-Language: en-US
To: Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.com, sstabellini@kernel.org,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Doug Goldstein <cardoe@cardoe.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <b62205a1-885b-ea4e-3ce2-7ad58cfc938d@suse.com>
 <f1759081-eb18-4597-82b6-d7d9ee1754ab@bugseng.com>
 <e0ff3307-99ee-7740-bc5f-52dd7f589057@suse.com>
 <c2b10554-673c-4452-a35c-0d2f314e8ad2@bugseng.com>
 <f0cd8400-5e37-6704-75ce-d965540bc2b7@suse.com>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <f0cd8400-5e37-6704-75ce-d965540bc2b7@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 28/09/23 17:00, Jan Beulich wrote:
> On 28.09.2023 15:17, Simone Ballarin wrote:
>> On 28/09/23 14:51, Jan Beulich wrote:
>>> On 28.09.2023 14:46, Simone Ballarin wrote:
>>>> On 13/09/23 10:02, Jan Beulich wrote:
>>>>> On 12.09.2023 11:36, Simone Ballarin wrote:
>>>>>> Add or move inclusion guards to address violations of
>>>>>> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
>>>>>> to prevent the contents of a header file being included more than
>>>>>> once").
>>>>>>
>>>>>> Inclusion guards must appear at the beginning of the headers
>>>>>> (comments are permitted anywhere) and the #if directive cannot
>>>>>> be used for other checks.
>>>>>>
>>>>>> Simone Ballarin (10):
>>>>>>      misra: add deviation for headers that explicitly avoid guards
>>>>>>      misra: modify deviations for empty and generated headers
>>>>>>      misra: add deviations for direct inclusion guards
>>>>>>      xen/arm: address violations of MISRA C:2012 Directive 4.10
>>>>>>      xen/x86: address violations of MISRA C:2012 Directive 4.10
>>>>>>      x86/EFI: address violations of MISRA C:2012 Directive 4.10
>>>>>>      xen/common: address violations of MISRA C:2012 Directive 4.10
>>>>>>      xen/efi: address violations of MISRA C:2012 Directive 4.10
>>>>>>      xen: address violations of MISRA C:2012 Directive 4.10
>>>>>>      x86/asm: address violations of MISRA C:2012 Directive 4.10
>>>>>
>>>>> Just to mention it here again for the entire series, seeing that despite
>>>>> my earlier comments to this effect a few R-b have arrived: If private
>>>>> headers need to gain guards (for, imo, no real reason), we first need to
>>>>> settle on a naming scheme for these guards, such that guards used in
>>>>> private headers aren't at risk of colliding with ones used headers
>>>>> living in one of the usual include directories. IOW imo fair parts of
>>>>> this series may need redoing.
>>>>>
>>>>> Jan
>>>>>
>>>>
>>>> My proposal is:
>>>> - the relative path from "xen/arch" for files in this directory
>>>>      (i.e. X86_X86_X86_MMCONFIG_H for "xen/arch/x86/x86_64/mmconfig.h";
>>>
>>> X86_X86_64_MMCONFIG_H that is?
>>>
>>> Yet then this scheme won't hold for xen/arch/include/asm/... ? It's also
>>> not clear whether you're deliberately omitting leading/trailing underscores
>>> here, which may be a way to distinguish private from global headers.
>>
>> Each name that begins with a double or single underscore (__, _)
>> followed by an uppercase letter is reserved. Using a reserved identifier
>> is an undefined-b.
>>
>> I would be better to avoid them.
> 
> I'm with you about avoiding them, except that we use such all over the
> place. Taking this together with ...
> 
>>>> - for the others, the entire path.
>>>
>>> What exactly is "entire" here?
>>
>> Let me try again.
>>
>> If we are inside xen/arch the relative path starting from this directory:
>>     | xen/arch/x86/include/asm/compat.h
>>     X86_INCLUDE_ASM_COMPAT_H
>>
>> For xen/include, the current convention.
>> Maybe, in a future patch, we can consider removing the leading _.
>>
>> For the others, the relative path after xen:
>>     | xen/common/efi/efi.h
>>     COMMON_EFI_EFI_H
> 
> ... this you're effectively suggesting to change all existing guards.
> That's an option, but likely not a preferred one. Personally I'd prefer
> if in particular the headers in xen/include/ and in xen/arch/*include/
> didn't needlessly include _INCLUDE_ in their guard names.
> 
> I'm really curious what others think.
> 
> Jan

I suggest starting using this new naming schema just on the files 
touched by this series: I do not think is a good idea changing all
guards now.

This should be done in any case if you will decide to be compliant
with Rule 21.2 (Set3):
(required) A reserved identifier or reserved macro name shall not be 
declared.



-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 16:13:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 16:13:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609974.949165 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qltdb-00029w-V8; Thu, 28 Sep 2023 16:13:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609974.949165; Thu, 28 Sep 2023 16:13:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qltdb-00029p-Rw; Thu, 28 Sep 2023 16:13:15 +0000
Received: by outflank-mailman (input) for mailman id 609974;
 Thu, 28 Sep 2023 16:13:14 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LRrN=FM=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qltda-00028O-TR
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 16:13:14 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id ebd9fd22-5e19-11ee-878a-cb3800f73035;
 Thu, 28 Sep 2023 18:13:12 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 7B4994EE0739;
 Thu, 28 Sep 2023 18:13:11 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ebd9fd22-5e19-11ee-878a-cb3800f73035
MIME-Version: 1.0
Date: Thu, 28 Sep 2023 18:13:11 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, michal.orzel@amd.com,
 xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com,
 jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, George
 Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
 <wl@xen.org>, Henry Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH v2 1/3] docs/misra: add documentation skeleton for
 MISRA C:2012 Dir 4.1
In-Reply-To: <alpine.DEB.2.22.394.2309271750130.1996340@ubuntu-linux-20-04-desktop>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com>
 <5bb4dea2f48d0ef9a48a06c1b11c0dfcbd991aaf.1695801813.git.nicola.vetrini@bugseng.com>
 <alpine.DEB.2.22.394.2309271750130.1996340@ubuntu-linux-20-04-desktop>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <3bf90dc627f6cd68dcd535461cbbdf32@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 28/09/2023 02:55, Stefano Stabellini wrote:
> On Wed, 27 Sep 2023, Nicola Vetrini wrote:
>> The aforementioned directive requires the project to supply 
>> documentation
>> on the measures taken towards the minimization of run-time failures.

>> +
>> +Documentation for MISRA C:2012 Dir 4.1: mistyped access to function
>> +___________________________________________________________________
>> +
>> +The code never uses function pointers.
> 
> You missed my previous comment on this one
> 

You're right.
This is about the usage of a function having a certain signature as 
having another.
It could happen for instance:
- with incongruent declarations
- no prototypes
- casts on function pointers
Most of these can be caught by complying with other rules, but I'm not 
sure if they
fully cover every case, and besides there are still violations on the 
rules tied to this.
I guess we can say that this is a WIP.

>> +
>> +Documentation for MISRA C:2012 Dir 4.1: invariant violation
>> +___________________________________________________________
>> +
>> +To be written.
> 
> Also this one escaped.
> 
> Overall, this is much better!
> 

I replied on v1, but maybe I missed some further reply:
It's the violation of a project invariant (e.g., an assert or 
BUILD_BUG).
Something along the lines of this could fit in the documentation:
"The extensive checks in the code ensure that any violation of a
compile-time invariant will be detected in prior to release builds, and 
failure
of run-time invariant is also extensively tested."

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 16:26:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 16:26:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609981.949174 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qltqF-00069Q-4z; Thu, 28 Sep 2023 16:26:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609981.949174; Thu, 28 Sep 2023 16:26:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qltqF-00069J-2J; Thu, 28 Sep 2023 16:26:19 +0000
Received: by outflank-mailman (input) for mailman id 609981;
 Thu, 28 Sep 2023 16:26:17 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qltqD-000699-7S; Thu, 28 Sep 2023 16:26:17 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qltqC-0002bh-Vj; Thu, 28 Sep 2023 16:26:17 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qltqC-0004ig-Gj; Thu, 28 Sep 2023 16:26:16 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qltqC-0005y6-GL; Thu, 28 Sep 2023 16:26:16 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=lpHM1U8k7C3dzZO2VpzaegDRVQGQlDLbx7Bc4Q8MtaM=; b=UH4m7aMbx7HuH9+SRbCk/XdzuC
	Yf7lIQy6pIxjkj6MN9IkaYhLd07q6sbzBj4/w7+x8YdzA+fWBzkrnOwtDovvPJtTDYm3dN3V6KLMu
	arqK/A/DswD8NKRTIrT28E7AfvvPWblKEbcJ9akNGlNOpXpBXUOkcKIkwDPhjgLvdj2c=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183199-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183199: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start.2:fail:regression
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    linux-5.4:test-amd64-i386-xl:xen-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 28 Sep 2023 16:26:16 +0000

flight 183199 linux-5.4 real [real]
flight 183204 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183199/
http://logs.test-lab.xenproject.org/osstest/logs/183204/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1  19 guest-start.2  fail in 183144 REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183144 pass in 183199
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail in 183144 pass in 183199
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 183183 pass in 183144
 test-armhf-armhf-xl-credit2  14 guest-start      fail in 183192 pass in 183199
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail pass in 183183
 test-armhf-armhf-xl-credit1  14 guest-start                fail pass in 183183
 test-amd64-i386-xl            7 xen-install                fail pass in 183192

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail blocked in 182613
 test-armhf-armhf-xl-rtds 18 guest-start/debian.repeat fail in 183144 like 182613
 test-armhf-armhf-xl-credit2 18 guest-start/debian.repeat fail in 183183 like 182613
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail in 183183 never pass
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 183183 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 183183 never pass
 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail in 183192 like 182613
 test-armhf-armhf-xl    18 guest-start/debian.repeat fail in 183192 like 182613
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat fail in 183192 like 182613
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182613
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   26 days
Testing same since   183129  2023-09-23 09:20:22 Z    5 days   10 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            fail    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 16:31:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 16:31:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609989.949185 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qltvO-0008Cl-PC; Thu, 28 Sep 2023 16:31:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609989.949185; Thu, 28 Sep 2023 16:31:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qltvO-0008Ce-MB; Thu, 28 Sep 2023 16:31:38 +0000
Received: by outflank-mailman (input) for mailman id 609989;
 Thu, 28 Sep 2023 16:31:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VjaJ=FM=csgroup.eu=christophe.leroy@srs-se1.protection.inumbo.net>)
 id 1qltvM-0008CY-VT
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 16:31:37 +0000
Received: from FRA01-PR2-obe.outbound.protection.outlook.com
 (mail-pr2fra01on20612.outbound.protection.outlook.com
 [2a01:111:f400:7e18::612])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7ca1cc2c-5e1c-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 18:31:34 +0200 (CEST)
Received: from MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:31::15)
 by MRZP264MB2237.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:a::14) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.22; Thu, 28 Sep
 2023 16:31:30 +0000
Received: from MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM
 ([fe80::27df:697c:bd7d:774f]) by MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM
 ([fe80::27df:697c:bd7d:774f%6]) with mapi id 15.20.6838.024; Thu, 28 Sep 2023
 16:31:30 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7ca1cc2c-5e1c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Y6dkVbQVXA0XHTlGoW2huBJY4KLX++5OSOnFj65LLvUODPgYec6ORCtTJbBXDv6TLPOVDy3DlwYrN6WnjHFdWVkAII+fHGYA+PYYFo/oPP2zjoYIC2MA1ctijWoCFoYuIqYv2vtvzj8QLV2t0YU2rw7nPtRIxyOQAwU2W81EXNsS96CjcgI4JmRCh5HJM2oBrNvSQcc05lVTJ0F8cmfTsv+YNoIazqDvLGmoYXu51j6cFcXeaz+bapsjBXXi9/bNphJb7BdzNWIB35RYn/VHISfojIVLY7DrXcVDUqM/G92Npy/Wmv0c8YAVWarR8d4TZ8CL7FJcxQFjzxXjWx0wTw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=4SjRlaws87DqdJ200wFIeiR1GUjiiRFF0xFqChJ2j08=;
 b=BFes7LtD3sS7pdlVaR4LKyMLTXY/i/yKIUhpWhyHYdvYKbpS94rPus5Pk2yYNqHO7FBfcJY6D+oW3Vhg24drkx6m2miBJkq6DDBUQ468D82A7k7yO1DXh6QuESsAz9fi+HO07OevTD1gQ+mXZP4wOlR624PToA2XAlA5Lk2BFIZZWuLuKNOP8ZRozn5cP0/rt9NAxAhzx1MffHO8khk5vA0SlOZK3xLSEsNzeY9iajZ5Zl6X96eC1pa3qy6fN3eQ53nTNkDqpXkidYbMEpo2ne+fxFOgLNweYjnNHHN22au/HiVcZztGaCPZQK+UUPd+YWo6GZ8612jik6qSRSYKFA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=csgroup.eu; dmarc=pass action=none header.from=csgroup.eu;
 dkim=pass header.d=csgroup.eu; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=csgroup.eu;
 s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=4SjRlaws87DqdJ200wFIeiR1GUjiiRFF0xFqChJ2j08=;
 b=gFvE+6LdFEQ+6FvtgXXultBniDEkWH3BCKnXc05koFTeZz+CoWFXqW1FDgHQNrCq6lOYZlJDjBjWhFLvqmmZ/FNYzqY4bUWTjHde9NerqHG5rT7aJz7W71ZPtT3D7uyzeMC6y9vBUzwFG9s1oBA4Bnmlf0HLxwJbrbChbcqMR87JFlUCRXJh0TeJGVT4m2eYcKGBB9mMt4OOrwywCbhX8WNzzKLeNoCrNWfSQ9y98U5jn/1Hdk/HTQ1wElaAPKHzdTZ/7GY3YuJSToyLBTjJaq5a7JqRZuFUZpfEX3dmMRZSZUJhzu8ehNhgBzxmffjt0/aXjV3XNKnIXvAqYb6VMg==
From: Christophe Leroy <christophe.leroy@csgroup.eu>
To: "j.granados@samsung.com" <j.granados@samsung.com>, Luis Chamberlain
	<mcgrof@kernel.org>, "willy@infradead.org" <willy@infradead.org>,
	"josh@joshtriplett.org" <josh@joshtriplett.org>, Kees Cook
	<keescook@chromium.org>, Phillip Potter <phil@philpotter.co.uk>, Clemens
 Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>, Greg
 Kroah-Hartman <gregkh@linuxfoundation.org>, Juergen Gross <jgross@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Oleksandr Tyshchenko
	<oleksandr_tyshchenko@epam.com>, Jiri Slaby <jirislaby@kernel.org>, "James
 E.J. Bottomley" <jejb@linux.ibm.com>, "Martin K. Petersen"
	<martin.petersen@oracle.com>, Doug Gilbert <dgilbert@interlog.com>, Sudip
 Mukherjee <sudipm.mukherjee@gmail.com>, Jason Gunthorpe <jgg@ziepe.ca>, Leon
 Romanovsky <leon@kernel.org>, Corey Minyard <minyard@acm.org>, Theodore Ts'o
	<tytso@mit.edu>, "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern
	<dsahern@kernel.org>, "David S. Miller" <davem@davemloft.net>, Eric Dumazet
	<edumazet@google.com>, Jakub Kicinski <kuba@kernel.org>, Paolo Abeni
	<pabeni@redhat.com>, Robin Holt <robinmholt@gmail.com>, Steve Wahl
	<steve.wahl@hpe.com>, Russ Weight <russell.h.weight@intel.com>, "Rafael J.
 Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, "K. Y. Srinivasan"
	<kys@microsoft.com>, Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu
	<wei.liu@kernel.org>, Dexuan Cui <decui@microsoft.com>, Jani Nikula
	<jani.nikula@linux.intel.com>, Joonas Lahtinen
	<joonas.lahtinen@linux.intel.com>, Rodrigo Vivi <rodrigo.vivi@intel.com>,
	Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, David Airlie
	<airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>
CC: "linux-hyperv@vger.kernel.org" <linux-hyperv@vger.kernel.org>,
	"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>,
	"linux-rdma@vger.kernel.org" <linux-rdma@vger.kernel.org>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	"intel-gfx@lists.freedesktop.org" <intel-gfx@lists.freedesktop.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"dri-devel@lists.freedesktop.org" <dri-devel@lists.freedesktop.org>,
	"linux-raid@vger.kernel.org" <linux-raid@vger.kernel.org>,
	"linux-serial@vger.kernel.org" <linux-serial@vger.kernel.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	"openipmi-developer@lists.sourceforge.net"
	<openipmi-developer@lists.sourceforge.net>, "linuxppc-dev@lists.ozlabs.org"
	<linuxppc-dev@lists.ozlabs.org>
Subject: Re: [PATCH 00/15] sysctl: Remove sentinel elements from drivers
Thread-Topic: [PATCH 00/15] sysctl: Remove sentinel elements from drivers
Thread-Index: AQHZ8g7L9GtM3GaC7kiSbpIXyc5PdrAwblgA
Date: Thu, 28 Sep 2023 16:31:30 +0000
Message-ID: <5fadd85e-f2d7-878c-b709-3523e89dd93a@csgroup.eu>
References:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
In-Reply-To:
 <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
Accept-Language: fr-FR, en-US
Content-Language: fr-FR
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.13.0
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=csgroup.eu;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: MRZP264MB2988:EE_|MRZP264MB2237:EE_
x-ms-office365-filtering-correlation-id: 3de82bfd-26a4-45bf-2044-08dbc0405ef1
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 +YxBgPyUZkGAKsVZwpQf4fqi7yjCvV8+ufd0EicVNF/eyKVKZvi7Lwl1xFjJiLukNwLJS9t0HZJYCQ2+03C+up7ZEIz5ymZe+kHtAi6EQ0kzcqOJJwdxVHG5mVgPRkB3Ou1SJNQbYMnekdz1btKufm7jAxLdrmJ6KLsv68LZBnvEJXOOSADxspXlioHRILEWYFsdcKQvNWCype4OMm8+Z9ZXxQcYnvZOaOza8Q2gehN0T6O9L381mBmyJgxVvrd28kMbrso5/sEVP1uG5GztbCmtf2Ucrv/DGEjpG5VT+f9ewugmbseUe6Dp60ikL3vWUdJkpqBQ6Kw+ogPeBy3R0/0NzHRoPrB55a0ycvVzdBYlQSfhjJ9FV3RkIeKwsy3r0M4iDz2UCXX8RogSwQk51gxrIsQ02VXNZUnlJ7jzcWsElNsx+anWgeyRrw/XS2hnKLpWtU6dpelTpZZhT4xjPEwO+It8uY6TVveBp5KOahgUb5dl6bvmMkxPGgkjTK3EClIc3ryRXGQfKhfxjWG4vMFodswnsM+72kiPDkdNiG93ttFnoakaobIAzfh0Fk59b5zzVu0DXfev4PFpjwBUxU0VoGes3xV2OOjmcdLx0rY2AEAbvTZO9sO1PFeHS9qW2QhKJsBqult1vTqXkRWXrhOjEyLH/yXX/C506vETr2iENPyKR78ZjiGXoIr+RUNA
x-forefront-antispam-report:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(366004)(376002)(346002)(39860400002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(7416002)(7366002)(30864003)(2906002)(31686004)(7406005)(41300700001)(5660300002)(8936002)(8676002)(66476007)(44832011)(66446008)(4326008)(66556008)(66946007)(91956017)(110136005)(76116006)(6486002)(966005)(478600001)(45080400002)(71200400001)(6512007)(6506007)(26005)(2616005)(66574015)(54906003)(64756008)(316002)(31696002)(36756003)(38100700002)(38070700005)(86362001)(122000001)(83380400001)(921005)(45980500001)(43740500002);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?utf-8?B?REYzSk1GdXRtaEZVdjFPZHdUZ3ByNTNDVTBUVm5qbWhIa29qTHpxYkMzQm82?=
 =?utf-8?B?c1BBeUVia3NzWi9ReUJJSjgzajY2dG82alZzWDNwbkVGejltV0RKclJwVzZy?=
 =?utf-8?B?SEljN3R6MXJxRUxuZk8vRmIvRk52T0pzTDZ2RDNpMW5Bb2plRC9KaDlPblhK?=
 =?utf-8?B?YVJ2bGhzeVhUZjc1dXpKUzdRTGJHZVZaV0FHWDk0aDFvVmNjUlh3ek5TaUlY?=
 =?utf-8?B?OXdsdU9vRjRsNkpkUy9tQ3UyV3pmQ0NELy9UUjNiaFdvaFA1VmQ4U1ZFdlc4?=
 =?utf-8?B?YWFHcS9EbXFHVlIrSGdJaTlwdEROR0pLV1BHQmxwWGpkZC9mMHlLYllKb0pP?=
 =?utf-8?B?Rkg4TzNzQWRsNU5CNDRBdEVSZy9rV09RV1E1aGFzUi9RcXVMbnFLZmkrS0dK?=
 =?utf-8?B?UHh3cTVSMXhtNE14N1FPbnQxT1p4OUNXU1JsZ2Q4SDh4L0FUK2VrVkw0WkRH?=
 =?utf-8?B?RjBEWEdwY2UyTk4ycjBwTFV0UWdPTWh3L1pjZXU4RzNNMmVpZlVmTTVrWVlY?=
 =?utf-8?B?aDhzeWgwbjlmZHRNM3h6RktjbjZ0ajJaWGV1RzNqWDJCVUw0bm1uTU8vSDFl?=
 =?utf-8?B?T2hFcWpKWEF0ZmZlMmQ4Tk9BRVh0Zjg0Vm5jRUJkd2IzY1cxWjJlY0dRV0cz?=
 =?utf-8?B?dVRyaFB6NDlNUzJlYk1DUnNyMmg2K1J4bUc0d3ZXOURqWVhxNDBnNlorN2M1?=
 =?utf-8?B?NUF4ZHBCQnFQMGZUNVlkd2ZsN3hWWUlJTnVyV0dUQlpuWmJsQ3d0U0hKREc1?=
 =?utf-8?B?THNLL3NpYUlnbWNyQTdmeU5nTDM0UEcrRWlPekZ2Mmk3NENiMFgrb2U0bkw5?=
 =?utf-8?B?ZWU1MFRUZnFCZkJ3alNJS0swSUVkTWRuOTVrZ2h2bHFuUVFQbUNyWC9KMHBx?=
 =?utf-8?B?U3g2UDVsTkpYR0hBakUvNnVyeTFRM0g1OVVZd2d0SkFPU3IvaDdGODkrWVZV?=
 =?utf-8?B?eXVOMjgzcE5ybkN5R3pYK25zYlQ1TFFvRTkyMVpBcG9JbzYrWTJDQklxcFR0?=
 =?utf-8?B?ZnJkYnpKQytqamZzdk05ZXU5eS9KeEhodUIydjdZdW0rSExPU25BcC9WNUFI?=
 =?utf-8?B?dktMQUw5YWx0Z0FiYWc5WGhCT3orRmE3bDgzb2wvWEpTUFc4bm9COENoV0dm?=
 =?utf-8?B?TlpKaFFOaGlQbHE2eCs3dGM0Wk0ycjdmelRWY2VLTng4MjNvUk40SVNndlJE?=
 =?utf-8?B?Y1ZkZjNNdUdzQnc3Qm5OMy8rZFh6Z1pXTy9ScERzTEUzMXJpSEJjZ3VidzdW?=
 =?utf-8?B?aU16ZUprcDcyNGNjUXVUWHJ5R0JDUWRmV2hId2VRVy94Q2VScjRaV3I5bEtV?=
 =?utf-8?B?OC92RzI4ZWtXRmpXZ0Zqc2NpdElYQmxBTWVMNTVhUmNSV21YcE9tVlFHRm1J?=
 =?utf-8?B?NmhFSFlNa2hrN0RLTWZ5eU1heWY0SjBWQUpsZDFOWDkxTVN1bnJ5UTFPWnFx?=
 =?utf-8?B?djVRZnFRY25DdEk4MTluOFlmcWlrK1hCaUwyODFITnVIZFhucDhRbGNKdDBp?=
 =?utf-8?B?TjltNlMwdExjd281SCtUYlNiRzU5NC9GWnAwalRqNS9nNzZ4MkxRZFBlQ2l1?=
 =?utf-8?B?Wk9NZUdOZ2hiMVdlMVNmZ3h2N1NMNE5ReHhkMDcrSnFIOFdDNVNROFcwT1BL?=
 =?utf-8?B?ZWV3UXFOaUFTLzd2Y3o5TUZibTkrbXRXWjdqN2cyWm1KWFdWRlVoU20zSmRr?=
 =?utf-8?B?VTVUY0F3R1lSV0tnWWxXOURYOUVnQnlvdE1CdmxUQ0UrZ1ZzQ3FackIrdDNx?=
 =?utf-8?B?OFdtMWlDRE13aGc5eWhhMjlsQW5IN002cG92TUdocmxVMXZhWkxtNHR2VG5Z?=
 =?utf-8?B?dnJURkNrbThMV1A1Z3Eyamt6aGxmbXBPNTdaZUZFWm4zRWFiejU2V3Ryblpz?=
 =?utf-8?B?aWhUZkFlVzdIbkRURCswZjIwYUpvTWYwZHlHRTlVeU5FenZSUTRhdm43MU1n?=
 =?utf-8?B?a1V5eG5WcTc3cm85bGlJaFh5V29wTXlkTGxYWFFMTWZXbk9WM0V1Zld0M3lh?=
 =?utf-8?B?VGdkZHEreEFwVC9TOEUxenpLWk5WdmZCZFR6RUNMSDI4S3pVQ3VUQjl4Qzli?=
 =?utf-8?B?Mzh5VmRMMnNWOVAvUmpIZHFaWWRQMlphaFlybmg1YXJGRXVVS2hjb3JOdndH?=
 =?utf-8?B?cDdpRCtpSUxFYUpva2NVSmIzczRyZ0xQSnBXUHptWUZWUEJCTTZDWmFIRmdM?=
 =?utf-8?B?L3c9PQ==?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <0AC6851D6D9D6844B0532F20FDDDF28E@FRAP264.PROD.OUTLOOK.COM>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: csgroup.eu
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-Network-Message-Id: 3de82bfd-26a4-45bf-2044-08dbc0405ef1
X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Sep 2023 16:31:30.5775
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 9914def7-b676-4fda-8815-5d49fb3b45c8
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: ZtUifeZBrTrMAeQAS7Cu00e9Wzne2mTj5e/NFGgmSVJyzIzaai6kIFB5AqByLmF/xyFxQhChwd9F5Hyxpvxc2xNChxLlS7bEu51m4c2IHiY=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MRZP264MB2237

DQoNCkxlIDI4LzA5LzIwMjMgw6AgMTU6MjEsIEpvZWwgR3JhbmFkb3MgdmlhIEI0IFJlbGF5IGEg
w6ljcml0wqA6DQo+IEZyb206IEpvZWwgR3JhbmFkb3MgPGouZ3JhbmFkb3NAc2Ftc3VuZy5jb20+
DQoNCkF1dG9tYXRpYyB0ZXN0IGZhaWxzIG9uIHBvd2VycGMsIHNlZSANCmh0dHBzOi8vcGF0Y2h3
b3JrLm96bGFicy5vcmcvcHJvamVjdC9saW51eHBwYy1kZXYvcGF0Y2gvMjAyMzA5MjgtamFnLXN5
c2N0bF9yZW1vdmVfZW1wdHlfZWxlbV9kcml2ZXJzLXYxLTE1LWU1OTEyMGZjYTlmOUBzYW1zdW5n
LmNvbS8NCg0KS2VybmVsIGF0dGVtcHRlZCB0byByZWFkIHVzZXIgcGFnZSAoMWExMTEzMTYpIC0g
ZXhwbG9pdCBhdHRlbXB0PyAodWlkOiAwKQ0KQlVHOiBVbmFibGUgdG8gaGFuZGxlIGtlcm5lbCBk
YXRhIGFjY2VzcyBvbiByZWFkIGF0IDB4MWExMTEzMTYNCkZhdWx0aW5nIGluc3RydWN0aW9uIGFk
ZHJlc3M6IDB4YzA1NDUzMzgNCk9vcHM6IEtlcm5lbCBhY2Nlc3Mgb2YgYmFkIGFyZWEsIHNpZzog
MTEgWyMxXQ0KQkUgUEFHRV9TSVpFPTRLIFBvd2VyUEMgNDR4IFBsYXRmb3JtDQpNb2R1bGVzIGxp
bmtlZCBpbjoNCkNQVTogMCBQSUQ6IDEgQ29tbTogc3dhcHBlciBOb3QgdGFpbnRlZCA2LjUuMC1y
YzYtZ2RlZjEzMjc3YmFjYiAjMQ0KSGFyZHdhcmUgbmFtZTogYW1jYyxiYW1ib28gNDQwR1IgUmV2
LiBCIDB4NDIyMjE4ZDMgUG93ZXJQQyA0NHggUGxhdGZvcm0NCk5JUDogIGMwNTQ1MzM4IExSOiBj
MDU0ODQ2OCBDVFI6IGZmZmZmZmZmDQpSRUdTOiBjMDg0ZmFlMCBUUkFQOiAwMzAwICAgTm90IHRh
aW50ZWQgICg2LjUuMC1yYzYtZ2RlZjEzMjc3YmFjYikNCk1TUjogIDAwMDIxMDAwIDxDRSxNRT4g
IENSOiA4NDAwNDI4OCAgWEVSOiAwMDAwMDAwMA0KREVBUjogMWExMTEzMTYgRVNSOiAwMDAwMDAw
MA0KR1BSMDA6IGMwNTQ4NDY4IGMwODRmYmQwIGMwODg4MDAwIGMwODRmYzk5IDAwMDAwMDAwIGMw
ODRmYzdjIDFhMTEwMzE2IA0KMDAwYWZmZmYNCkdQUjA4OiBmZmZmZmZmZiBjMDg0ZmQxOCAxYTEx
MTMxNiAwNGZmZmZmZiAyMjAwMDI4MiAwMDAwMDAwMCBjMDAwMjdjMCANCjAwMDAwMDAwDQpHUFIx
NjogMDAwMDAwMDAgMDAwMDAwMDAgYzAwNDAwMDAgYzAwM2Q1NDQgMDAwMDAwMDEgYzAwM2ViMmMg
MDk2MDIzZDQgDQowMDAwMDAwMA0KR1BSMjQ6IGMwNjM2NTAyIGMwNjM2NTAyIGMwODRmYzc0IGMw
NTg4NTEwIGMwODRmYzY4IGMwODRmYzdjIGMwODRmYzk5IA0KMDAwMDAwMDINCk5JUCBbYzA1NDUz
MzhdIHN0cmluZysweDc4LzB4MTQ4DQpMUiBbYzA1NDg0NjhdIHZzbnByaW50ZisweDNkOC8weDgy
NA0KQ2FsbCBUcmFjZToNCltjMDg0ZmJkMF0gW2MwODRmYzdjXSAweGMwODRmYzdjICh1bnJlbGlh
YmxlKQ0KW2MwODRmYmUwXSBbYzA1NDg0NjhdIHZzbnByaW50ZisweDNkOC8weDgyNA0KW2MwODRm
YzMwXSBbYzAwNzJkZWNdIHZwcmludGtfc3RvcmUrMHgxN2MvMHg0YzgNCltjMDg0ZmNjMF0gW2Mw
MDczMjJjXSB2cHJpbnRrX2VtaXQrMHhmNC8weDJhMA0KW2MwODRmZDAwXSBbYzAwNzNkMDRdIF9w
cmludGsrMHg2MC8weDg4DQpbYzA4NGZkNDBdIFtjMDFhYjYzY10gc3lzY3RsX2VycisweDc4LzB4
YTQNCltjMDg0ZmQ4MF0gW2MwMWFiNDA0XSBfX3JlZ2lzdGVyX3N5c2N0bF90YWJsZSsweDZhMC8w
eDZjNA0KW2MwODRmZGUwXSBbYzA2YTU4NWNdIF9fcmVnaXN0ZXJfc3lzY3RsX2luaXQrMHgzMC8w
eDc4DQpbYzA4NGZlMDBdIFtjMDZhOGNjOF0gdHR5X2luaXQrMHg0NC8weDE2OA0KW2MwODRmZTMw
XSBbYzAwMDIzYzRdIGRvX29uZV9pbml0Y2FsbCsweDY0LzB4MmEwDQpbYzA4NGZlYTBdIFtjMDY4
ZjA2MF0ga2VybmVsX2luaXRfZnJlZWFibGUrMHgxODQvMHgyMzANCltjMDg0ZmVlMF0gW2MwMDAy
N2U0XSBrZXJuZWxfaW5pdCsweDI0LzB4MTI0DQpbYzA4NGZmMDBdIFtjMDAwZjFmY10gcmV0X2Zy
b21fa2VybmVsX3VzZXJfdGhyZWFkKzB4MTQvMHgxYw0KLS0tIGludGVycnVwdDogMCBhdCAweDAN
Ck5JUDogIDAwMDAwMDAwIExSOiAwMDAwMDAwMCBDVFI6IDAwMDAwMDAwDQpSRUdTOiBjMDg0ZmYx
MCBUUkFQOiAwMDAwICAgTm90IHRhaW50ZWQgICg2LjUuMC1yYzYtZ2RlZjEzMjc3YmFjYikNCk1T
UjogIDAwMDAwMDAwIDw+ICBDUjogMDAwMDAwMDAgIFhFUjogMDAwMDAwMDANCg0KR1BSMDA6IDAw
MDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAw
MDAwIA0KMDAwMDAwMDANCkdQUjA4OiAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAw
MCAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAwMCANCjAwMDAwMDAwDQpHUFIxNjogMDAwMDAwMDAg
MDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgMDAwMDAwMDAgDQow
MDAwMDAwMA0KR1BSMjQ6IDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAw
MDAwIDAwMDAwMDAwIDAwMDAwMDAwIA0KMDAwMDAwMDANCk5JUCBbMDAwMDAwMDBdIDB4MA0KTFIg
WzAwMDAwMDAwXSAweDANCi0tLSBpbnRlcnJ1cHQ6IDANCkNvZGU6IDkxNjEwMDA4IDkwZTEwMDBj
IDRiZmZkMGI1IDgwMDEwMDE0IDM4MjEwMDEwIDdjMDgwM2E2IDRlODAwMDIwIA0KNDA5ZDAwMDgg
OTkyMzAwMDAgMzg2MzAwMDEgMzg4NDAwMDEgNDI0MGZmZDAgPDdkMmEyMGFlPiA3Zjg1MTg0MCAN
CjU1MjgwNjNlIDJjMDgwMDAwDQotLS1bIGVuZCB0cmFjZSAwMDAwMDAwMDAwMDAwMDAwIF0tLS0N
Cg0Kbm90ZTogc3dhcHBlclsxXSBleGl0ZWQgd2l0aCBpcnFzIGRpc2FibGVkDQpLZXJuZWwgcGFu
aWMgLSBub3Qgc3luY2luZzogQXR0ZW1wdGVkIHRvIGtpbGwgaW5pdCEgZXhpdGNvZGU9MHgwMDAw
MDAwYg0KDQoNCj4gDQo+IFdoYXQ/DQo+IFRoZXNlIGNvbW1pdHMgcmVtb3ZlIHRoZSBzZW50aW5l
bCBlbGVtZW50IChsYXN0IGVtcHR5IGVsZW1lbnQpIGZyb20gdGhlDQo+IHN5c2N0bCBhcnJheXMg
b2YgYWxsIHRoZSBmaWxlcyB1bmRlciB0aGUgImRyaXZlcnMvIiBkaXJlY3RvcnkgdGhhdCB1c2Ug
YQ0KPiBzeXNjdGwgYXJyYXkgZm9yIHJlZ2lzdHJhdGlvbi4gVGhlIG1lcmdpbmcgb2YgdGhlIHBy
ZXBhcmF0aW9uIHBhdGNoZXMNCj4gKGluIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2FsbC9aTzVZ
eDVKRm9nR2klMkZjQm9AYm9tYmFkaWwuaW5mcmFkZWFkLm9yZy8pDQo+IHRvIG1haW5saW5lIGFs
bG93cyB1cyB0byBqdXN0IHJlbW92ZSBzZW50aW5lbCBlbGVtZW50cyB3aXRob3V0IGNoYW5naW5n
DQo+IGJlaGF2aW9yIChtb3JlIGluZm8gaGVyZSBbMV0pLg0KPiANCj4gVGhlc2UgY29tbWl0cyBh
cmUgcGFydCBvZiBhIGJpZ2dlciBzZXQgKGhlcmUNCj4gaHR0cHM6Ly9naXRodWIuY29tL0pvZWxn
cmFuYWRvcy9saW51eC90cmVlL3RhZy9zeXNjdGxfcmVtb3ZlX2VtcHR5X2VsZW1fVjQpDQo+IHRo
YXQgcmVtb3ZlIHRoZSBjdGxfdGFibGUgc2VudGluZWwuIE1ha2UgdGhlIHJldmlldyBwcm9jZXNz
IGVhc2llciBieQ0KPiBjaHVua2luZyB0aGUgY29tbWl0cyBpbnRvIG1hbmFnZWFibGUgcGllY2Vz
LiBFYWNoIGNodW5rIGNhbiBiZSByZXZpZXdlZA0KPiBzZXBhcmF0ZWx5IHdpdGhvdXQgbm9pc2Ug
ZnJvbSBwYXJhbGxlbCBzZXRzLg0KPiANCj4gTm93IHRoYXQgdGhlIGFyY2hpdGVjdHVyZSBjaHVu
ayBoYXMgYmVlbiBtb3N0bHkgcmV2aWV3ZWQgWzZdLCB3ZSBzZW5kDQo+IHRoZSAiZHJpdmVycy8i
IGRpcmVjdG9yeS4gT25jZSB0aGlzIG9uZSBpcyBkb25lLCBpdCB3aWxsIGJlIGZvbGx3ZWQgYnkN
Cj4gImZzLyoiLCAia2VybmVsLyoiLCAibmV0LyoiIGFuZCBtaXNjZWxsYW5lb3VzLiBUaGUgZmlu
YWwgc2V0IHdpbGwgcmVtb3ZlDQo+IHRoZSB1bm5lZWRlZCBjaGVjayBmb3IgLT5wcm9jbmFtZSA9
PSBOVUxMLg0KPiANCj4gV2h5Pw0KPiBCeSByZW1vdmluZyB0aGUgc3lzY3RsIHNlbnRpbmVsIGVs
ZW1lbnRzIHdlIGF2b2lkIGtlcm5lbCBibG9hdCBhcw0KPiBjdGxfdGFibGUgYXJyYXlzIGdldCBt
b3ZlZCBvdXQgb2Yga2VybmVsL3N5c2N0bC5jIGludG8gdGhlaXIgb3duDQo+IHJlc3BlY3RpdmUg
c3Vic3lzdGVtcy4gVGhpcyBtb3ZlIHdhcyBzdGFydGVkIGxvbmcgYWdvIHRvIGF2b2lkIG1lcmdl
DQo+IGNvbmZsaWN0czsgdGhlIHNlbnRpbmVsIHJlbW92YWwgYml0IGNhbWUgYWZ0ZXIgTWF0aGV3
IFdpbGNveCBzdWdnZXN0ZWQNCj4gaXQgdG8gYXZvaWQgYmxvYXRpbmcgdGhlIGtlcm5lbCBieSBv
bmUgZWxlbWVudCBhcyBhcnJheXMgbW92ZWQgb3V0LiBUaGlzDQo+IHBhdGNoc2V0IHdpbGwgcmVk
dWNlIHRoZSBvdmVyYWxsIGJ1aWxkIHRpbWUgc2l6ZSBvZiB0aGUga2VybmVsIGFuZCBydW4NCj4g
dGltZSBtZW1vcnkgYmxvYXQgYnkgYWJvdXQgfjY0IGJ5dGVzIHBlciBkZWNsYXJlZCBjdGxfdGFi
bGUgYXJyYXkuIEkNCj4gaGF2ZSBjb25zb2xpZGF0ZWQgc29tZSBsaW5rcyB0aGF0IHNoZWQgbGln
aHQgb24gdGhlIGhpc3Rvcnkgb2YgdGhpcw0KPiBlZmZvcnQgWzJdLg0KPiANCj4gVGVzdGluZzoN
Cj4gKiBSYW4gc3lzY3RsIHNlbGZ0ZXN0cyAoLi90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9zeXNj
dGwvc3lzY3RsLnNoKQ0KPiAqIFJhbiB0aGlzIHRocm91Z2ggMC1kYXkgd2l0aCBubyBlcnJvcnMg
b3Igd2FybmluZ3MNCj4gDQo+IFNpemUgc2F2aW5nIGFmdGVyIHJlbW92aW5nIGFsbCBzZW50aW5l
bHM6DQo+ICAgIFRoZXNlIGFyZSB0aGUgYnl0ZXMgdGhhdCB3ZSBzYXZlIGFmdGVyIHJlbW92aW5n
IGFsbCB0aGUgc2VudGluZWxzDQo+ICAgICh0aGlzIHBsdXMgYWxsIHRoZSBvdGhlciBjaHVua3Mp
LiBJIGluY2x1ZGVkIHRoZW0gdG8gZ2V0IGFuIGlkZWEgb2YNCj4gICAgaG93IG11Y2ggbWVtb3J5
IHdlIGFyZSB0YWxraW5nIGFib3V0Lg0KPiAgICAgICogYmxvYXQtby1tZXRlcjoNCj4gICAgICAg
ICAgLSBUaGUgInllc2FsbCIgY29uZmlndXJhdGlvbiByZXN1bHRzIHNhdmUgOTE1OCBieXRlcw0K
PiAgICAgICAgICAgIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2FsbC8yMDIzMDYyMTA5MTAwMC40
MjQ4NDMtMS1qLmdyYW5hZG9zQHNhbXN1bmcuY29tLw0KPiAgICAgICAgICAtIFRoZSAidGlueSIg
Y29uZmlnICsgQ09ORklHX1NZU0NUTCBzYXZlIDEyMTUgYnl0ZXMNCj4gICAgICAgICAgICBodHRw
czovL2xvcmUua2VybmVsLm9yZy9hbGwvMjAyMzA4MDkxMDUwMDYuMTE5ODE2NS0xLWouZ3JhbmFk
b3NAc2Ftc3VuZy5jb20vDQo+ICAgICAgKiBtZW1vcnkgdXNhZ2U6DQo+ICAgICAgICAgIEluIG1l
bW9yeSBzYXZpbmdzIGFyZSBtZWFzdXJlZCB0byBiZSA3Mjk2IGJ5dGVzLiAoaGVyZSBpcyBob3cg
dG8NCj4gICAgICAgICAgbWVhc3VyZSBbM10pDQo+IA0KPiBTaXplIHNhdmluZyBhZnRlciB0aGlz
IHBhdGNoc2V0Og0KPiAgICAgICogYmxvYXQtby1tZXRlcg0KPiAgICAgICAgICAtIFRoZSAieWVz
YWxsIiBjb25maWcgc2F2ZXMgMjQzMiBieXRlcyBbNF0NCj4gICAgICAgICAgLSBUaGUgInRpbnki
IGNvbmZpZyBzYXZlcyA2NCBieXRlcyBbNV0NCj4gICAgICAqIG1lbW9yeSB1c2FnZToNCj4gICAg
ICAgICAgSW4gdGhpcyBjYXNlIHRoZXJlIHdlcmUgbm8gYnl0ZXMgc2F2ZWQgYmVjYXVzZSBJIGRv
IG5vdCBoYXZlIGFueQ0KPiAgICAgICAgICBvZiB0aGUgZHJpdmVycyBpbiB0aGUgcGF0Y2guIFRv
IG1lYXN1cmUgaXQgY29tbWVudCB0aGUgcHJpbnRrIGluDQo+ICAgICAgICAgIGBuZXdfZGlyYCBh
bmQgdW5jb21tZW50IHRoZSBpZiBjb25kaXRpb25hbCBpbiBgbmV3X2xpbmtzYCBbM10uDQo+IA0K
PiBDb21tZW50cy9mZWVkYmFjayBncmVhdGx5IGFwcHJlY2lhdGVkDQo+IA0KPiBCZXN0DQo+IEpv
ZWwNCj4gDQo+IFsxXQ0KPiBXZSBhcmUgYWJsZSB0byByZW1vdmUgYSBzZW50aW5lbCB0YWJsZSB3
aXRob3V0IGJlaGF2aW9yYWwgY2hhbmdlIGJ5DQo+IGludHJvZHVjaW5nIGEgdGFibGVfc2l6ZSBh
cmd1bWVudCBpbiB0aGUgc2FtZSBwbGFjZSB3aGVyZSBwcm9jbmFtZSBpcw0KPiBjaGVja2VkIGZv
ciBOVUxMLiBUaGUgaWRlYSBpcyBmb3IgaXQgdG8ga2VlcCBzdG9wcGluZyB3aGVuIGl0IGhpdHMN
Cj4gLT5wcm9jbmFtZSA9PSBOVUxMLCB3aGlsZSB0aGUgc2VudGluZWwgaXMgc3RpbGwgcHJlc2Vu
dC4gQW5kIHdoZW4gdGhlDQo+IHNlbnRpbmVsIGlzIHJlbW92ZWQsIGl0IHdpbGwgc3RvcCBvbiB0
aGUgdGFibGVfc2l6ZS4gWW91IGNhbiBnbyB0bw0KPiAoaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcv
YWxsLzIwMjMwODA5MTA1MDA2LjExOTgxNjUtMS1qLmdyYW5hZG9zQHNhbXN1bmcuY29tLykNCj4g
Zm9yIG1vcmUgaW5mb3JtYXRpb24uDQo+IA0KPiBbMl0NCj4gTGlua3MgUmVsYXRlZCB0byB0aGUg
Y3RsX3RhYmxlIHNlbnRpbmVsIHJlbW92YWw6DQo+ICogR29vZCBzdW1tYXJ5IGZyb20gTHVpcyBz
ZW50IHdpdGggdGhlICJwdWxsIHJlcXVlc3QiIGZvciB0aGUNCj4gICAgcHJlcGFyYXRpb24gcGF0
Y2hlcy4NCj4gICAgaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvYWxsL1pPNVl4NUpGb2dHaSUyRmNC
b0Bib21iYWRpbC5pbmZyYWRlYWQub3JnLw0KPiAqIEFub3RoZXIgdmVyeSBnb29kIHN1bW1hcnkg
ZnJvbSBMdWlzLg0KPiAgICBodHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwvWk1GaXpLRmtWeFVG
dFNxYUBib21iYWRpbC5pbmZyYWRlYWQub3JnLw0KPiAqIFRoaXMgaXMgYSBwYXRjaCBzZXQgdGhh
dCByZXBsYWNlcyByZWdpc3Rlcl9zeXNjdGxfdGFibGUgd2l0aCByZWdpc3Rlcl9zeXNjdGwNCj4g
ICAgaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvYWxsLzIwMjMwMzAyMjA0NjEyLjc4MjM4Ny0xLW1j
Z3JvZkBrZXJuZWwub3JnLw0KPiAqIFBhdGNoIHNldCB0byBkZXByZWNhdGUgcmVnaXN0ZXJfc3lz
Y3RsX3BhdGhzKCkNCj4gICAgaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvYWxsLzIwMjMwMzAyMjAy
ODI2Ljc3NjI4Ni0xLW1jZ3JvZkBrZXJuZWwub3JnLw0KPiAqIEhlcmUgdGhlcmUgaXMgYW4gZXhw
bGljaXQgZXhwZWN0YXRpb24gZm9yIHRoZSByZW1vdmFsIG9mIHRoZSBzZW50aW5lbCBlbGVtZW50
Lg0KPiAgICBodHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwvMjAyMzAzMjExMzA5MDguNjk3Mi0x
LWZyYW5rLmxpQHZpdm8uY29tDQo+ICogVGhlICJBUlJBWV9TSVpFIiBhcHByb2FjaCB3YXMgbWVu
dGlvbmVkIChwcm9wb3NlZD8pIGluIHRoaXMgdGhyZWFkDQo+ICAgIGh0dHBzOi8vbG9yZS5rZXJu
ZWwub3JnL2FsbC8yMDIyMDIyMDA2MDYyNi4xNTg4NS0xLXRhbmdtZW5nQHVuaW9udGVjaC5jb20N
Cj4gDQo+IFszXQ0KPiBUbyBtZWFzdXJlIHRoZSBpbiBtZW1vcnkgc2F2aW5ncyBhcHBseSB0aGlz
IG9uIHRvcCBvZiB0aGlzIHBhdGNoc2V0Lg0KPiANCj4gIg0KPiBkaWZmIC0tZ2l0IGEvZnMvcHJv
Yy9wcm9jX3N5c2N0bC5jIGIvZnMvcHJvYy9wcm9jX3N5c2N0bC5jDQo+IGluZGV4IGM4ODg1NGRm
MGI2Mi4uZTAwNzNhNjI3YmFjIDEwMDY0NA0KPiAtLS0gYS9mcy9wcm9jL3Byb2Nfc3lzY3RsLmMN
Cj4gKysrIGIvZnMvcHJvYy9wcm9jX3N5c2N0bC5jDQo+IEBAIC05NzYsNiArOTc2LDggQEAgc3Rh
dGljIHN0cnVjdCBjdGxfZGlyICpuZXdfZGlyKHN0cnVjdCBjdGxfdGFibGVfc2V0ICpzZXQsDQo+
ICAgICAgICAgIHRhYmxlWzBdLnByb2NuYW1lID0gbmV3X25hbWU7DQo+ICAgICAgICAgIHRhYmxl
WzBdLm1vZGUgPSBTX0lGRElSfFNfSVJVR098U19JWFVHTzsNCj4gICAgICAgICAgaW5pdF9oZWFk
ZXIoJm5ldy0+aGVhZGVyLCBzZXQtPmRpci5oZWFkZXIucm9vdCwgc2V0LCBub2RlLCB0YWJsZSwg
MSk7DQo+ICsgICAgICAgLy8gQ291bnRzIGFkZGl0aW9uYWwgc2VudGluZWwgdXNlZCBmb3IgZWFj
aCBuZXcgZGlyLg0KPiArICAgICAgIHByaW50aygiJWxkIHN5c2N0bCBzYXZlZCBtZW0ga3phbGxv
YyBcbiIsIHNpemVvZihzdHJ1Y3QgY3RsX3RhYmxlKSk7DQo+IA0KPiAgICAgICAgICByZXR1cm4g
bmV3Ow0KPiAgIH0NCj4gQEAgLTExOTksNiArMTIwMSw5IEBAIHN0YXRpYyBzdHJ1Y3QgY3RsX3Rh
YmxlX2hlYWRlciAqbmV3X2xpbmtzKHN0cnVjdCBjdGxfZGlyICpkaXIsIHN0cnVjdCBjdGxfdGFi
bGVfDQo+ICAgICAgICAgICAgICAgICAgbGlua19uYW1lICs9IGxlbjsNCj4gICAgICAgICAgICAg
ICAgICBsaW5rKys7DQo+ICAgICAgICAgIH0NCj4gKyAgICAgICAvLyBDb3VudHMgYWRkaXRpb25h
bCBzZW50aW5lbCB1c2VkIGZvciBlYWNoIG5ldyByZWdpc3RyYXRpb24NCj4gKyAgICAgICAvL2lm
ICgoaGVhZC0+Y3RsX3RhYmxlICsgaGVhZC0+Y3RsX3RhYmxlX3NpemUpLT5wcm9jbmFtZSkNCj4g
KyAgICAgICAgICAgICAgIHByaW50aygiJWxkIHN5c2N0bCBzYXZlZCBtZW0ga3phbGxvYyBcbiIs
IHNpemVvZihzdHJ1Y3QgY3RsX3RhYmxlKSk7DQo+ICAgICAgICAgIGluaXRfaGVhZGVyKGxpbmtz
LCBkaXItPmhlYWRlci5yb290LCBkaXItPmhlYWRlci5zZXQsIG5vZGUsIGxpbmtfdGFibGUsDQo+
ICAgICAgICAgICAgICAgICAgICAgIGhlYWQtPmN0bF90YWJsZV9zaXplKTsNCj4gICAgICAgICAg
bGlua3MtPm5yZWcgPSBucl9lbnRyaWVzOw0KPiAiDQo+IGFuZCB0aGVuIHJ1biB0aGUgZm9sbG93
aW5nIGJhc2ggc2NyaXB0IGluIHRoZSBrZXJuZWw6DQo+IA0KPiBhY2N1bT0wDQo+IGZvciBuIGlu
ICQoZG1lc2cgfCBncmVwIGt6YWxsb2MgfCBhd2sgJ3twcmludCAkM30nKSA7IGRvDQo+ICAgICAg
ZWNobyAkbg0KPiAgICAgIGFjY3VtPSQoY2FsYyAiJGFjY3VtICsgJG4iKQ0KPiBkb25lDQo+IGVj
aG8gJGFjY3VtDQo+IA0KPiBbNF0NCj4gYWRkL3JlbW92ZTogMC8wIGdyb3cvc2hyaW5rOiAwLzIx
IHVwL2Rvd246IDAvLTI0MzIgKC0yNDMyKQ0KPiBGdW5jdGlvbiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBvbGQgICAgIG5ldyAgIGRlbHRhDQo+IHhwY19zeXNfeHBjX2hiICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE5MiAgICAgMTI4ICAgICAtNjQNCj4geHBjX3N5
c194cGMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTI4ICAgICAgNjQgICAgIC02
NA0KPiB2cmZfdGFibGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMjggICAg
ICA2NCAgICAgLTY0DQo+IHVjbWFfY3RsX3RhYmxlICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDEyOCAgICAgIDY0ICAgICAtNjQNCj4gdHR5X3RhYmxlICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgMTkyICAgICAxMjggICAgIC02NA0KPiBzZ19zeXNjdGxzICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAxMjggICAgICA2NCAgICAgLTY0DQo+IHNjc2lfdGFi
bGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyOCAgICAgIDY0ICAgICAtNjQN
Cj4gcmFuZG9tX3RhYmxlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDQ4ICAgICAz
ODQgICAgIC02NA0KPiByYWlkX3RhYmxlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAxOTIgICAgIDEyOCAgICAgLTY0DQo+IG9hX3RhYmxlICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIDE5MiAgICAgMTI4ICAgICAtNjQNCj4gbWFjX2hpZF9maWxlcyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgMjU2ICAgICAxOTIgICAgIC02NA0KPiBpd2NtX2N0bF90
YWJsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMjggICAgICA2NCAgICAgLTY0DQo+
IGlwbWlfdGFibGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyOCAgICAgIDY0
ICAgICAtNjQNCj4gaHZfY3RsX3RhYmxlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
MTI4ICAgICAgNjQgICAgIC02NA0KPiBocGV0X3RhYmxlICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAxMjggICAgICA2NCAgICAgLTY0DQo+IGZpcm13YXJlX2NvbmZpZ190YWJsZSAg
ICAgICAgICAgICAgICAgICAgICAgIDE5MiAgICAgMTI4ICAgICAtNjQNCj4gY2Ryb21fdGFibGUg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDQ4ICAgICAzODQgICAgIC02NA0KPiBi
YWxsb29uX3RhYmxlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMjggICAgICA2NCAg
ICAgLTY0DQo+IHBhcnBvcnRfc3lzY3RsX3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgIDkx
MiAgICAgNzIwICAgIC0xOTINCj4gcGFycG9ydF9kZWZhdWx0X3N5c2N0bF90YWJsZSAgICAgICAg
ICAgICAgICAgNTg0ICAgICAxMzYgICAgLTQ0OA0KPiBwYXJwb3J0X2RldmljZV9zeXNjdGxfdGVt
cGxhdGUgICAgICAgICAgICAgICA3NzYgICAgIDEzNiAgICAtNjQwDQo+IFRvdGFsOiBCZWZvcmU9
NDI5OTQwMDM4LCBBZnRlcj00Mjk5Mzc2MDYsIGNoZyAtMC4wMCUNCj4gDQo+IFs1XQ0KPiBhZGQv
cmVtb3ZlOiAwLzAgZ3Jvdy9zaHJpbms6IDAvMSB1cC9kb3duOiAwLy02NCAoLTY0KQ0KPiBGdW5j
dGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbGQgICAgIG5ldyAgIGRl
bHRhDQo+IHJhbmRvbV90YWJsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQ0OCAg
ICAgMzg0ICAgICAtNjQNCj4gVG90YWw6IEJlZm9yZT0xODg1NTI3LCBBZnRlcj0xODg1NDYzLCBj
aGcgLTAuMDAlDQo+IA0KPiBbNl0gaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvYWxsLzIwMjMwOTEz
LWphZy1zeXNjdGxfcmVtb3ZlX2VtcHR5X2VsZW1fYXJjaC12Mi0wLWQxYmQxM2EyOWJhZUBzYW1z
dW5nLmNvbS8NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IEpvZWwgR3JhbmFkb3MgPGouZ3JhbmFkb3NA
c2Ftc3VuZy5jb20+DQo+IA0KPiAtLS0NCj4gDQo+IC0tLQ0KPiBKb2VsIEdyYW5hZG9zICgxNSk6
DQo+ICAgICAgICBjZHJvbTogUmVtb3ZlIG5vdyBzdXBlcmZsdW91cyBzZW50aW5lbCBlbGVtZW50
IGZyb20gY3RsX3RhYmxlIGFycmF5DQo+ICAgICAgICBocGV0OiBSZW1vdmUgbm93IHN1cGVyZmx1
b3VzIHNlbnRpbmVsIGVsZW1lbnQgZnJvbSBjdGxfdGFibGUgYXJyYXkNCj4gICAgICAgIHhlbjog
UmVtb3ZlIG5vdyBzdXBlcmZsdW91cyBzZW50aW5lbCBlbGVtZW50IGZyb20gY3RsX3RhYmxlIGFy
cmF5DQo+ICAgICAgICB0dHk6IFJlbW92ZSBub3cgc3VwZXJmbHVvdXMgc2VudGluZWwgZWxlbWVu
dCBmcm9tIGN0bF90YWJsZSBhcnJheQ0KPiAgICAgICAgc2NzaTogUmVtb3ZlIG5vdyBzdXBlcmZs
dW91cyBzZW50aW5lbCBlbGVtZW50IGZyb20gY3RsX3RhYmxlIGFycmF5DQo+ICAgICAgICBwYXJw
b3J0OiBSZW1vdmUgdGhlIG5vdyBzdXBlcmZsdW91cyBzZW50aW5lbCBlbGVtZW50IGZyb20gY3Rs
X3RhYmxlIGFycmF5DQo+ICAgICAgICBtYWNpbnRvc2g6IFJlbW92ZSB0aGUgbm93IHN1cGVyZmx1
b3VzIHNlbnRpbmVsIGVsZW1lbnQgZnJvbSBjdGxfdGFibGUgYXJyYXkNCj4gICAgICAgIGluZmlu
aWJhbmQ6IFJlbW92ZSB0aGUgbm93IHN1cGVyZmx1b3VzIHNlbnRpbmVsIGVsZW1lbnQgZnJvbSBj
dGxfdGFibGUgYXJyYXkNCj4gICAgICAgIGNoYXItbWlzYzogUmVtb3ZlIHRoZSBub3cgc3VwZXJm
bHVvdXMgc2VudGluZWwgZWxlbWVudCBmcm9tIGN0bF90YWJsZSBhcnJheQ0KPiAgICAgICAgdnJm
OiBSZW1vdmUgdGhlIG5vdyBzdXBlcmZsdW91cyBzZW50aW5lbCBlbGVtZW50IGZyb20gY3RsX3Rh
YmxlIGFycmF5DQo+ICAgICAgICBzZ2kteHA6IFJlbW92ZSB0aGUgbm93IHN1cGVyZmx1b3VzIHNl
bnRpbmVsIGVsZW1lbnQgZnJvbSBjdGxfdGFibGUgYXJyYXkNCj4gICAgICAgIGZ3IGxvYWRlcjog
UmVtb3ZlIHRoZSBub3cgc3VwZXJmbHVvdXMgc2VudGluZWwgZWxlbWVudCBmcm9tIGN0bF90YWJs
ZSBhcnJheQ0KPiAgICAgICAgcmFpZDogUmVtb3ZlIG5vdyBzdXBlcmZsdW91cyBzZW50aW5lbCBl
bGVtZW50IGZyb20gY3RsX3RhYmxlIGFycmF5DQo+ICAgICAgICBoeXBlci12L2F6dXJlOiBSZW1v
dmUgbm93IHN1cGVyZmx1b3VzIHNlbnRpbmVsIGVsZW1lbnQgZnJvbSBjdGxfdGFibGUgYXJyYXkN
Cj4gICAgICAgIGludGVsIGRybTogUmVtb3ZlIG5vdyBzdXBlcmZsdW91cyBzZW50aW5lbCBlbGVt
ZW50IGZyb20gY3RsX3RhYmxlIGFycmF5DQo+IA0KPiAgIGRyaXZlcnMvYmFzZS9maXJtd2FyZV9s
b2FkZXIvZmFsbGJhY2tfdGFibGUuYyB8ICAzICstDQo+ICAgZHJpdmVycy9jZHJvbS9jZHJvbS5j
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDMgKy0NCj4gICBkcml2ZXJzL2NoYXIvaHBldC5j
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyArLQ0KPiAgIGRyaXZlcnMvY2hhci9pcG1p
L2lwbWlfcG93ZXJvZmYuYyAgICAgICAgICAgICB8ICAzICstDQo+ICAgZHJpdmVycy9jaGFyL3Jh
bmRvbS5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDMgKy0NCj4gICBkcml2ZXJzL2dwdS9k
cm0vaTkxNS9pOTE1X3BlcmYuYyAgICAgICAgICAgICAgfCAgMyArLQ0KPiAgIGRyaXZlcnMvaHYv
aHZfY29tbW9uLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAzICstDQo+ICAgZHJpdmVycy9p
bmZpbmliYW5kL2NvcmUvaXdjbS5jICAgICAgICAgICAgICAgIHwgIDMgKy0NCj4gICBkcml2ZXJz
L2luZmluaWJhbmQvY29yZS91Y21hLmMgICAgICAgICAgICAgICAgfCAgMyArLQ0KPiAgIGRyaXZl
cnMvbWFjaW50b3NoL21hY19oaWQuYyAgICAgICAgICAgICAgICAgICB8ICAzICstDQo+ICAgZHJp
dmVycy9tZC9tZC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDMgKy0NCj4gICBk
cml2ZXJzL21pc2Mvc2dpLXhwL3hwY19tYWluLmMgICAgICAgICAgICAgICAgfCAgNiArKy0tDQo+
ICAgZHJpdmVycy9uZXQvdnJmLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDMgKy0N
Cj4gICBkcml2ZXJzL3BhcnBvcnQvcHJvY2ZzLmMgICAgICAgICAgICAgICAgICAgICAgfCA0MiAr
KysrKysrKysrKystLS0tLS0tLS0tLS0tLS0NCj4gICBkcml2ZXJzL3Njc2kvc2NzaV9zeXNjdGwu
YyAgICAgICAgICAgICAgICAgICAgfCAgMyArLQ0KPiAgIGRyaXZlcnMvc2NzaS9zZy5jICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAzICstDQo+ICAgZHJpdmVycy90dHkvdHR5X2lvLmMg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDMgKy0NCj4gICBkcml2ZXJzL3hlbi9iYWxsb29u
LmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyArLQ0KPiAgIDE4IGZpbGVzIGNoYW5nZWQs
IDM2IGluc2VydGlvbnMoKyksIDYwIGRlbGV0aW9ucygtKQ0KPiAtLS0NCj4gYmFzZS1jb21taXQ6
IDBlOTQ1MTM0YjY4MDA0MGI4NjEzZTk2MmY1ODZkOTFiNmQ0MDI5MmQNCj4gY2hhbmdlLWlkOiAy
MDIzMDkyNy1qYWctc3lzY3RsX3JlbW92ZV9lbXB0eV9lbGVtX2RyaXZlcnMtZjAzNDk2MmEwZDhj
DQo+IA0KPiBCZXN0IHJlZ2FyZHMsDQo=


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 17:52:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 17:52:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.609997.949195 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlvBb-0000Je-Ha; Thu, 28 Sep 2023 17:52:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 609997.949195; Thu, 28 Sep 2023 17:52:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlvBb-0000JX-Dx; Thu, 28 Sep 2023 17:52:27 +0000
Received: by outflank-mailman (input) for mailman id 609997;
 Thu, 28 Sep 2023 17:52:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=scc0=FM=hpe.com=steve.wahl@srs-se1.protection.inumbo.net>)
 id 1qlvBY-0000JP-Sz
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 17:52:25 +0000
Received: from mx0b-002e3701.pphosted.com (mx0b-002e3701.pphosted.com
 [148.163.143.35]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c48f8d1f-5e27-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 19:52:20 +0200 (CEST)
Received: from pps.filterd (m0134424.ppops.net [127.0.0.1])
 by mx0b-002e3701.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 38SHhHiB002198; Thu, 28 Sep 2023 17:51:26 GMT
Received: from p1lg14881.it.hpe.com ([16.230.97.202])
 by mx0b-002e3701.pphosted.com (PPS) with ESMTPS id 3tde4ur2yg-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);
 Thu, 28 Sep 2023 17:51:25 +0000
Received: from p1lg14885.dc01.its.hpecorp.net (unknown [10.119.18.236])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by p1lg14881.it.hpe.com (Postfix) with ESMTPS id A9CF8805E26;
 Thu, 28 Sep 2023 17:51:23 +0000 (UTC)
Received: from swahl-home.5wahls.com (unknown [16.231.227.36])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (Client did not present a certificate)
 by p1lg14885.dc01.its.hpecorp.net (Postfix) with ESMTPS id DAC6681566E;
 Thu, 28 Sep 2023 17:51:16 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c48f8d1f-5e27-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hpe.com; h=date : from : to : cc :
 subject : message-id : references : content-type : in-reply-to :
 mime-version; s=pps0720; bh=mZrC/t7ae+Z2o86iz704abLpUMsth0bb5IgGpyWjrnM=;
 b=APaa5kKkE4mpyTjbaPlvnbYIWIT9A784n1fDZhZsP48Q4BO9uSG32bZsfAF52jrU1bOT
 1h7DtIZq8CfCoiXJzZq8iCLGpdSe2PlQIjBXHSbzsrerYmN3AzKoVoUge3gno+oOKne0
 TZt5ZpPcmFxaL8khHe4Ax9IRzjtiszQvxqsciJsyNpAD6ZY84bLt17ZecVDpe5s/3MjB
 a3q5Nj2zzP41qNl43/8ndPzzA6qoqUz03rp+3yjfOcXzoZpJvReW4KIp/RtMFfifP+Ul
 Z6IbclgwAUZ5SJhoTsDmi8nxYS4v/OvpF1TAywHM0NXqhjlAEPK6WdmkxzbGRG8AthqO KA== 
Date: Thu, 28 Sep 2023 12:51:15 -0500
From: Steve Wahl <steve.wahl@hpe.com>
To: j.granados@samsung.com
Cc: Luis Chamberlain <mcgrof@kernel.org>, willy@infradead.org,
        josh@joshtriplett.org, Kees Cook <keescook@chromium.org>,
        Phillip Potter <phil@philpotter.co.uk>,
        Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann <arnd@arndb.de>,
        Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
        Juergen Gross <jgross@suse.com>,
        Stefano Stabellini <sstabellini@kernel.org>,
        Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>,
        Jiri Slaby <jirislaby@kernel.org>,
        "James E.J. Bottomley" <jejb@linux.ibm.com>,
        "Martin K. Petersen" <martin.petersen@oracle.com>,
        Doug Gilbert <dgilbert@interlog.com>,
        Sudip Mukherjee <sudipm.mukherjee@gmail.com>,
        Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>,
        Corey Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>,
        "Jason A. Donenfeld" <Jason@zx2c4.com>,
        David Ahern <dsahern@kernel.org>,
        "David S. Miller" <davem@davemloft.net>,
        Eric Dumazet <edumazet@google.com>, Jakub Kicinski <kuba@kernel.org>,
        Paolo Abeni <pabeni@redhat.com>, Robin Holt <robinmholt@gmail.com>,
        Steve Wahl <steve.wahl@hpe.com>,
        Russ Weight <russell.h.weight@intel.com>,
        "Rafael J. Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>,
        "K. Y. Srinivasan" <kys@microsoft.com>,
        Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu <wei.liu@kernel.org>,
        Dexuan Cui <decui@microsoft.com>,
        Jani Nikula <jani.nikula@linux.intel.com>,
        Joonas Lahtinen <joonas.lahtinen@linux.intel.com>,
        Rodrigo Vivi <rodrigo.vivi@intel.com>,
        Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>,
        David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
        linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org,
        linux-serial@vger.kernel.org, linux-scsi@vger.kernel.org,
        linuxppc-dev@lists.ozlabs.org, linux-rdma@vger.kernel.org,
        openipmi-developer@lists.sourceforge.net, netdev@vger.kernel.org,
        linux-raid@vger.kernel.org, linux-hyperv@vger.kernel.org,
        intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 11/15] sgi-xp: Remove the now superfluous sentinel
 element from ctl_table array
Message-ID: <ZRW9Eywl831h/YhW@swahl-home.5wahls.com>
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
 <=?utf-8?q?=3C20230928-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=>
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <=?utf-8?q?=3C20230928-jag-sysctl=5Fremove=5Fempty=5Felem=5Fdrive?=>
X-Proofpoint-GUID: ARXao25-avAoloITuhrfvukM5pXVcFhf
X-Proofpoint-ORIG-GUID: ARXao25-avAoloITuhrfvukM5pXVcFhf
X-Proofpoint-UnRewURL: 0 URL was un-rewritten
MIME-Version: 1.0
X-HPE-SCL: -1
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-09-28_16,2023-09-28_03,2023-05-22_02
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1011 phishscore=0
 malwarescore=0 adultscore=0 spamscore=0 priorityscore=1501
 lowpriorityscore=0 suspectscore=0 impostorscore=0 mlxlogscore=999
 mlxscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1
 engine=8.12.0-2309180000 definitions=main-2309280155

On Thu, Sep 28, 2023 at 03:21:36PM +0200, Joel Granados via B4 Relay wrote:
> From: Joel Granados <j.granados@samsung.com>
> 
> This commit comes at the tail end of a greater effort to remove the
> empty elements at the end of the ctl_table arrays (sentinels) which
> will reduce the overall build time size of the kernel and run time
> memory bloat by ~64 bytes per sentinel (further information Link :
> https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)
> 
> Remove sentinel from xpc_sys_xpc_hb and xpc_sys_xpc
> 
> Signed-off-by: Joel Granados <j.granados@samsung.com>
> ---
>  drivers/misc/sgi-xp/xpc_main.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/misc/sgi-xp/xpc_main.c b/drivers/misc/sgi-xp/xpc_main.c
> index 6da509d692bb..c898092ff3ac 100644
> --- a/drivers/misc/sgi-xp/xpc_main.c
> +++ b/drivers/misc/sgi-xp/xpc_main.c
> @@ -109,8 +109,7 @@ static struct ctl_table xpc_sys_xpc_hb[] = {
>  	 .mode = 0644,
>  	 .proc_handler = proc_dointvec_minmax,
>  	 .extra1 = &xpc_hb_check_min_interval,
> -	 .extra2 = &xpc_hb_check_max_interval},
> -	{}
> +	 .extra2 = &xpc_hb_check_max_interval}
>  };
>  static struct ctl_table xpc_sys_xpc[] = {
>  	{
> @@ -120,8 +119,7 @@ static struct ctl_table xpc_sys_xpc[] = {
>  	 .mode = 0644,
>  	 .proc_handler = proc_dointvec_minmax,
>  	 .extra1 = &xpc_disengage_min_timelimit,
> -	 .extra2 = &xpc_disengage_max_timelimit},
> -	{}
> +	 .extra2 = &xpc_disengage_max_timelimit}
>  };
>  
>  static struct ctl_table_header *xpc_sysctl;
> 
> -- 
> 2.30.2
> 

I assume you'll match the rest of the changes with regards to the
trailing comma.

Reviewed-by: Steve Wahl <steve.wahl@hpe.com>

-- 
Steve Wahl, Hewlett Packard Enterprise


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 17:56:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 17:56:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610001.949205 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlvFO-0000to-Uy; Thu, 28 Sep 2023 17:56:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610001.949205; Thu, 28 Sep 2023 17:56:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlvFO-0000tg-SG; Thu, 28 Sep 2023 17:56:22 +0000
Received: by outflank-mailman (input) for mailman id 610001;
 Thu, 28 Sep 2023 17:56:22 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlvFO-0000tX-Hx; Thu, 28 Sep 2023 17:56:22 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlvFO-0004e9-8o; Thu, 28 Sep 2023 17:56:22 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qlvFN-0007jX-QA; Thu, 28 Sep 2023 17:56:21 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qlvFN-00041g-Pg; Thu, 28 Sep 2023 17:56:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=d0WFC5S9/Rla5QwfPn1DMSj14qfCQ6F3vecxaYQDjx0=; b=2WzJrH67/F5Bvq1/3BzFbHgsSz
	25N0OoCCjL8r4AQ/y0dWmlJMWZre+1UTgd3xlQDJYlloGdVXIZSjjd2DTlIgNCRTHn6ERMON/403Y
	Clj1S+1rOq3CmWWL+85XuO4lbLVzhgCQnDsk5n9tge+MGS6oEeBVXmBYwOuwIfkd3rXQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183201-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183201: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=dd403f8873cf8de7675b89ed757a4228af7bc05e
X-Osstest-Versions-That:
    libvirt=d77cc21d4b5f60f950aa7f0106d4190dde2b0f1b
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 28 Sep 2023 17:56:21 +0000

flight 183201 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183201/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183188
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183188
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183188
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              dd403f8873cf8de7675b89ed757a4228af7bc05e
baseline version:
 libvirt              d77cc21d4b5f60f950aa7f0106d4190dde2b0f1b

Last test of basis   183188  2023-09-27 04:20:33 Z    1 days
Testing same since   183201  2023-09-28 04:20:29 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Jonathon Jongsma <jjongsma@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   d77cc21d4b..dd403f8873  dd403f8873cf8de7675b89ed757a4228af7bc05e -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 18:01:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 18:01:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610010.949214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlvKk-0002jd-Ik; Thu, 28 Sep 2023 18:01:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610010.949214; Thu, 28 Sep 2023 18:01:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlvKk-0002jW-GA; Thu, 28 Sep 2023 18:01:54 +0000
Received: by outflank-mailman (input) for mailman id 610010;
 Thu, 28 Sep 2023 18:01:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=EiTq=FM=linutronix.de=tglx@srs-se1.protection.inumbo.net>)
 id 1qlvKi-0002jP-Cl
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 18:01:52 +0000
Received: from galois.linutronix.de (galois.linutronix.de
 [2a0a:51c0:0:12e:550::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1966e210-5e29-11ee-878b-cb3800f73035;
 Thu, 28 Sep 2023 20:01:51 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1966e210-5e29-11ee-878b-cb3800f73035
From: Thomas Gleixner <tglx@linutronix.de>
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020; t=1695924109;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=qCBpASJoVOKX9VMMrGRtPeWsM1IggJ7ZK6sK+Vspaeo=;
	b=qXsrR3/GF7IJihiwraCz8qKW8U2b68LXMY6UjZ3+IEZeLlUpwu8yBGJPZy408Azlz7lycz
	Rj4kjTzZnybeQh46tlfV3i5eXQjbE+k3IssGRQ4iYbgsbCvt4dOIX9AKqFF9hqpsouLjx2
	5dQumKoM/U8QfaT52MkqPCzA/3NncDElzueKLwl6yW7w9WdPutYT2GZt+BO2WQXIQNr16o
	pb7RU8OwZ0GJUC6iDnIyj7Ozlo7Hw6pkxxHYXRzlQNA5gQN4cSz5tE0QLuBN4tFVR61d5h
	0BA7cVC1H0gu2vmgG66P30S3HeoFV0NmX/Pu5uwdjaEwyQI7KG6IBTpFaFOfMA==
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de;
	s=2020e; t=1695924109;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=qCBpASJoVOKX9VMMrGRtPeWsM1IggJ7ZK6sK+Vspaeo=;
	b=ZggqpdKB9KJL/89VvpA8wkdGK0oIINIwb21C02kaTkeWIRIgr4OEOE1ZY9ScEBJVZYX9F2
	/nS9HIbISQc7oGDA==
To: "H. Peter Anvin" <hpa@zytor.com>, Xin Li <xin3.li@intel.com>,
 linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
 linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org,
 kvm@vger.kernel.org, xen-devel@lists.xenproject.org
Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com,
 x86@kernel.org, luto@kernel.org, pbonzini@redhat.com, seanjc@google.com,
 peterz@infradead.org, jgross@suse.com, ravi.v.shankar@intel.com,
 mhiramat@kernel.org, andrew.cooper3@citrix.com, jiangshanlai@gmail.com,
 nik.borisov@suse.com
Subject: Re: [PATCH v11 35/37] x86/syscall: Split IDT syscall setup code
 into idt_syscall_init()
In-Reply-To: <D4167CD5-B619-448D-B660-24ABC0786E0A@zytor.com>
References: <20230923094212.26520-1-xin3.li@intel.com>
 <20230923094212.26520-36-xin3.li@intel.com>
 <D4167CD5-B619-448D-B660-24ABC0786E0A@zytor.com>
Date: Thu, 28 Sep 2023 20:01:48 +0200
Message-ID: <87y1gqdvn7.ffs@tglx>
MIME-Version: 1.0
Content-Type: text/plain

On Mon, Sep 25 2023 at 09:07, H. Peter Anvin wrote:
> On September 23, 2023 2:42:10 AM PDT, Xin Li <xin3.li@intel.com> wrote:
>>+/* May not be marked __init: used by software suspend */
>>+void syscall_init(void)
>>+{
>>+	/* The default user and kernel segments */
>>+	wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
>>+
>>+	idt_syscall_init();
>>+}
>>+
>> #else	/* CONFIG_X86_64 */
>> 
>> #ifdef CONFIG_STACKPROTECTOR
>
> Am I missing something, or is this patch a noop?

Yes. It's a noop at this point. Later on it gains a

     if (!fred)
        idt_syscall_init();

Sure we could do

     if (!fred) {
     	write_msr(foo...);
        ...
     }

too, but I prefer the separation. No strong opinion though.

Thanks,

        tglx


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 18:20:49 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 18:20:49 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610015.949224 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlvcl-00073p-3N; Thu, 28 Sep 2023 18:20:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610015.949224; Thu, 28 Sep 2023 18:20:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlvcl-00073i-0d; Thu, 28 Sep 2023 18:20:31 +0000
Received: by outflank-mailman (input) for mailman id 610015;
 Thu, 28 Sep 2023 18:20:30 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=baK2=FM=amd.com=ayan.kumar.halder@srs-se1.protection.inumbo.net>)
 id 1qlvcj-00073J-S3
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 18:20:30 +0000
Received: from NAM10-BN7-obe.outbound.protection.outlook.com
 (mail-bn7nam10on20621.outbound.protection.outlook.com
 [2a01:111:f400:7e8a::621])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b2413822-5e2b-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 20:20:27 +0200 (CEST)
Received: from SN6PR12MB2621.namprd12.prod.outlook.com (2603:10b6:805:73::15)
 by SN7PR12MB8146.namprd12.prod.outlook.com (2603:10b6:806:323::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Thu, 28 Sep
 2023 18:20:22 +0000
Received: from SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::5a5a:18dd:4832:75db]) by SN6PR12MB2621.namprd12.prod.outlook.com
 ([fe80::5a5a:18dd:4832:75db%4]) with mapi id 15.20.6813.027; Thu, 28 Sep 2023
 18:20:21 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b2413822-5e2b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aaMxakZPjZu7MizOPqYFBufsZeOhnQw9MFNoM6Z832nTU9Yec2zw8ZtvKlB+aMuEfX30A9DI5Hx+wWBnN3kkoH3G9LM9YverKsVvE+CGgKRupdUii5I8YX0naxKiYQfRTrgezns2JwVx89px/eTeH1pwV5DBW91PzBn3Q3m1wcx48DJL9R9hGbPYdH0S5/FTinwLhXwguuaceYV7Pnlg0sAbkYoil1p96VY1T1KHzQC8QJ2MkOWoyTSwJnyPB1LQzR+74zD/6KgIIvF1/hVuoaWBr9zbkkJlRznvrVTluR5kw/itV2BzPB01bqIdXUehZoB7ObqUvBq2C5u/+2RCWw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ugrOY89PIWfa9NXUFzEQkr8whd/Ny5XGFm/32b9VS0s=;
 b=d030f8sxF6eL4ujR6ZPTZf7rnCOthgab75jFg2a1/5NpA6SXxqS/ZJl381/Yy+UCaVVnMtq6LL50xqTPXkQAASGgodIZAw2xb/GBmxEo378y6KUyh1R1WHb5H/fOHY+toGdL2FQdugVZggYVXCLR/MVW2s1oOxBBHtft8hj8k7sPFVhwOZMSrivMOH07qzfZChZy/Jj2NXi+ji6wxFLc0A3kk+gjuUMkBHUVonhSKz8uXlB7lA8KoapY6Q+m4GQcJO52QLCukNtGYkljlPZAZJkudMYRnR48teE44fkpOkHXNGcMvBpycYXIuTuBgRAaFP2X4g5HKJo6anpIBatHAQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass
 header.d=amd.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ugrOY89PIWfa9NXUFzEQkr8whd/Ny5XGFm/32b9VS0s=;
 b=KB5NH/hPvh7vIx/01bS73QQ/kgKKuNB4NH27JnPE+CLakRHP88BwY7ZFETdFU8/gFEkvnob4DHGlKanSrxpCZCTjd6gjHtXyS5G6vfpGtqqt2xGa3l6gvTrum1Q2x9DLe/LcN0PRa7+0iEyrAk0W6FLr75nq7ZQ0NgHlAaNu7n0=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Message-ID: <fff7c46c-78ea-4656-fcca-85667e176104@amd.com>
Date: Thu, 28 Sep 2023 19:20:14 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0)
 Gecko/20100101 Thunderbird/102.15.1
Subject: Re: Misra rule 10.3 violations report script
To: Luca Fancellu <Luca.Fancellu@arm.com>,
 Xen-devel <xen-devel@lists.xenproject.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Julien Grall <julien@xen.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>
References: <D36FE722-43D5-4A93-B725-AD4157A1BA61@arm.com>
From: Ayan Kumar Halder <ayankuma@amd.com>
In-Reply-To: <D36FE722-43D5-4A93-B725-AD4157A1BA61@arm.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO6P123CA0054.GBRP123.PROD.OUTLOOK.COM
 (2603:10a6:600:310::11) To SN6PR12MB2621.namprd12.prod.outlook.com
 (2603:10b6:805:73::15)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN6PR12MB2621:EE_|SN7PR12MB8146:EE_
X-MS-Office365-Filtering-Correlation-Id: 79c745c7-ba3a-472c-121c-08dbc04f939a
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	3mZsVpXAdHuWczaWAgS9tSMgLlZxHe94aeGdxLVkPL5uvPkLzAYefGnDc71/+ao0GlbHHT5j+AlHJxo2tI3iAa/cs2OBZeUKaETQx5Z6JF0dhC4JX0qVesTPVUMxypfMWhIkJ7Ay8cRlQSVpVcIU5iNiCglW7m1ZOu9gLkb91bSSzbYEbwuRSQQz40ExtnnbCLZQ7/J3agh1Yc2/xEtQryVTCh/5a/HGEphEppRTbCQVEkuOXKVu6s+f1zRD8pyLJhFX17w3c44UJ9se2NNbyXBbqHFDKdOf/dou16OmGflnf7DQ/LxlHm6L6iSMHsQnolVnqeA51E+SIJwOZw4d9d7P+J+duIcr6fpYSXq/25E5mGNThLeoRizRTz6qYeAnQc8vPdLyM2vB7mdsBLGGBhAVdhNCAjkZ8Noois2UrHU5bceQj/lXD966pu/1q0wdj3D9gweH9TFcl82h9HAMUvnVZQ8/+5mXGMj/DMlreYbBoU49+gY8PILwJKbF4ekvQaSHKMN7tzfIjVUMydS4/PNADTnepawFKiFvU4a8ce3P28ZlEEPY1THA1GiFyrEcQzx0uX/pDIYqRY970GnXAUZy2Ca7NTEyhKT991KDWQdBjB/zV/jy9iJRs00+5C9xeiBq5lHU0zq3Xn83RhP9xA==
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR12MB2621.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(230922051799003)(1800799009)(451199024)(186009)(6512007)(6486002)(6506007)(53546011)(26005)(2616005)(8936002)(5660300002)(4326008)(8676002)(31696002)(2906002)(38100700002)(110136005)(36756003)(66556008)(66476007)(66946007)(54906003)(6666004)(966005)(508600001)(31686004)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?dngvSmEyMDUrT2tUekZwVmMzZ1lIcVc5dVlyUVduWTFFSTF5aDdtUzZQZ3FT?=
 =?utf-8?B?Wm5nenU1QnE5bmgwSmRxSTNpZVM3amlncERaU3hzMURqanNKbllQT0RIN2VC?=
 =?utf-8?B?OXl6QzE3U3M3ZllER2xRYTlrQU1RenRxRkZkWEMrSmIvNStKQjVMYVFucG9W?=
 =?utf-8?B?T2lpN2VpbGZSSFlQcW5PbWplQXJXaG5kekhyWm05dzBqd3M1OEtXQ0N4c2hu?=
 =?utf-8?B?c2ZwSVF3Q2lQREdMNEYySTl5dEVNOHlQcnBGNDhVNFRiWFpsTXdIK3kwdlh1?=
 =?utf-8?B?Sy9qNkZzUVV0K01KbFNBSUFHKzB5aDRFZTVyWC9PYVFSTCtuNVR5cHRUZ2cv?=
 =?utf-8?B?cTkxNWJCcE85L3c3OEh4MEd0YnprOHdHRTRVSW5YbHRqUGVxY2ZVVDIvbTZM?=
 =?utf-8?B?UlJ0UVR2M0UxeW9hRWFLeUU4TlYxblNRZGV1WFRueFlhZ0oyNHdKSnM4QUJs?=
 =?utf-8?B?djl0c2JTeW8zdTQ1VXBQMzg1THNsQWh0a2FBemtsODJMYmRVMnN6Lzk2c1dT?=
 =?utf-8?B?bUpidWRxRWVOVFVJMXY0WVdKNW0rUU5idllIM3JhTlNVTmRnc2lxYUxmakR0?=
 =?utf-8?B?MFlWY05Qd3d6WnNWMk54VEtUT3JiRGpST0trRDRWSlNuUlNxN3lsRWFENXBu?=
 =?utf-8?B?MGNQcjc1cHNSMjJONUNjM25yZTVFZGo2aFlrVTN6eEVoSkRLK0U0Q3h0dlpp?=
 =?utf-8?B?eXFRZ1lkNVN5MTR4QTFvNnBrWnMySW12VjBUQllaWWNMdXRYRDJZeGtZK0sy?=
 =?utf-8?B?SDFvbDUvM2JMOFVYOGVnVnVwczlNeWtra3NESUFydVBBcFRvZjExelNva2Fi?=
 =?utf-8?B?Z2NqNmFwMnhhMzJVbUxGOGR2Wjc0OGhUYTZZbjZLUDVoVlBPRnNKMDF3Nm5R?=
 =?utf-8?B?SzQ1TWJ4ZWJ6MUtOcWpBV0g5dHg3amdIc1Y0UmZSQU1yeHBjaXRCMXBJcjZS?=
 =?utf-8?B?R2RpVWFHbDROekVWQTY5bjBBUUpieGJDQXIzN05Lc0hGd25ZVTkyYzBFcEYz?=
 =?utf-8?B?Ny9uN0VBMGZXM3Nqa1cwdnFhZVhpWkRwK3dvNlMwTnZxR0x6VzdkMVNkajBV?=
 =?utf-8?B?SUlMMkFhUENvUHlmaGR4TjNFeDIyWkpoM0FEd3hhMmxRZERZYUdpcmZHVmxK?=
 =?utf-8?B?dXR1YVBnVTJBU2FOZnM4MUE1ZGdEQWdFM045YVRwSXJpamgrK2JtS3dCOEFj?=
 =?utf-8?B?OXVjd3E3ZGdVSnFrYkhkWXJVczBhRFdoT1NvbU94bFdJK2hhd1h2NEcvZC8x?=
 =?utf-8?B?anZtQ25IU1RyNVNaQVlZNHRzSEozYmNuN0pUbmRTWU1tWFo4RVNHNGNCZEEv?=
 =?utf-8?B?OWVVOUdKN1VjUUNMMWljWUxoakR6aCtmVVJoZkpUbStuNUxoS2tLLzg4RnJD?=
 =?utf-8?B?S3o0Uk5WVzk5MGdMSXRVekcweHZEMnlKUi9LRXYwZkVBTUtEcXZJMzIzM1F3?=
 =?utf-8?B?U2hPZUhzK0lpMU51cTRFdXl0R1l1T3M3aHJiWTluSzhpYWFXUFBuUkJ2REJz?=
 =?utf-8?B?YlptRjgwU1YxcUpjSUNwZkRtUDc3NFZ6S0JWcnVwenh6MVh2OFJPTVFFdHUx?=
 =?utf-8?B?RStGSkhhTG1NR2JLZlFDUm1BS21paXRiRlVHSlZjY0I1T1AvTk9BRVpHQTE2?=
 =?utf-8?B?TUZ1Y0o1c2xKYkhsa1ZvSWtQSGMyczhONDVZU25WMUg5Z2NLQy9oUVZqb3E4?=
 =?utf-8?B?WlRQUTEzNmFyeWRkMjdFTmtqMjBLcFk5VVNpTU85SDVjSWo1M2w2Qk5WbitW?=
 =?utf-8?B?RzFrNVp0cHFER1ZZOEhORHdPUmZHam1vMURTVzQyblZOUURVVllPaTFMYStk?=
 =?utf-8?B?ZUN2VkF0a00wZXAxVXI2Z2hRR2MwdnNKSlhUbTlkUEpEeGxwT0tValIxb1dG?=
 =?utf-8?B?Mit1NVI4UDNTMWUzQmltdXhvR2Z0T1pENElzVjA3Y1YyRFJTRExzU212cXJP?=
 =?utf-8?B?NmFKRU9rYXZrNXFwS3pZQkg4SERESGdUTm9pbFVHbTNZYXBRbzBNRlFCTEp1?=
 =?utf-8?B?RllrQjhUQzE5OVB6RXR6aDdVcktsam5vc0tVc2JQK1NOY3RvMmF3NXg4MmV5?=
 =?utf-8?B?Sy9tQ3hXZlFEWFF0V0t4d0paenIrZWlZQXdmclN5TTcwQmt1ZFdOYzYvY0pZ?=
 =?utf-8?Q?Cy+QDV2ETu4X7JQQvHvP5989N?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 79c745c7-ba3a-472c-121c-08dbc04f939a
X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2621.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 18:20:21.6822
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: GpLwOBH68sPL4QB0mUl3bBuJ+prgAebpDPVpgZ5bzHEVWWOiUj0loBH9Ow2i3iurV2ZD6VVG52uiIHdVWwKOBg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB8146


On 28/09/2023 09:34, Luca Fancellu wrote:
> CAUTION: This message has originated from an External Source. Please use proper judgment and caution when opening attachments, clicking links, or responding to this email.
>
>
> Hi all,
Hi Luca,
>
> In the last MISRA meeting Stefano told me about the Rule 10.3 and that we have a lot of violations,
> but GCC has a way to list them as written in rules.rst.
>
> So the issue was just that we have a lot of violations, most of them coming from headers and the
> Developer might feel a bit lost since the number is very high, so I’ve developed this script to take
> the GCC build log and create a list of unique occurrences of the violations sorted in descending
> order, so that who has a bit of time can try to fix some of those and maybe can start from the top
> of the list to fix as many as possible occurrences.
>
> I attach the script as patch file.

This is an excellent script to see the violations in a neat way. For eg, 
I see this

arch/arm/domain_build.c:3883:28 (1)
arch/arm/domain_build.c:3910:36 (1)
./include/xen/pfn.h:6:23 (1)
./include/xen/macros.h:4:40 (1)
arch/arm/setup.c:221:10 (1)
arch/arm/setup.c:227:59 (1)

I think once in a while, we have been approached by newbies wanting to 
contribute to Xen project.

For eg "Beginner looking to contribute to project in archived list"

Sometimes people reach out individually as well.

Do you have such similar tasks (like this) within or beyond the scope of 
MISRA which will require some basic programming skills and is a great 
first step to learn and contribute to Xen project ?

This can be things which students/folks can contribute on an ad-hoc basis.

I can work with Kelly to see if we can put them in a wiki page.

I could see https://wiki.xenproject.org/wiki/Outreach_Program_Projects , 
but don't know if it is up to date.

- Ayan

>
> Cheers,
> Luca
>


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 18:28:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 18:28:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610022.949234 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlvk7-0000WX-UO; Thu, 28 Sep 2023 18:28:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610022.949234; Thu, 28 Sep 2023 18:28:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlvk7-0000WQ-Rn; Thu, 28 Sep 2023 18:28:07 +0000
Received: by outflank-mailman (input) for mailman id 610022;
 Thu, 28 Sep 2023 18:28:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=i95c=FM=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qlvk6-0000WK-9c
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 18:28:06 +0000
Received: from NAM04-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam04on20613.outbound.protection.outlook.com
 [2a01:111:f400:7e8b::613])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c225bc5a-5e2c-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 20:28:03 +0200 (CEST)
Received: from MW4PR03CA0061.namprd03.prod.outlook.com (2603:10b6:303:b6::6)
 by CYYPR12MB8751.namprd12.prod.outlook.com (2603:10b6:930:ba::19) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Thu, 28 Sep
 2023 18:27:59 +0000
Received: from MWH0EPF000989E6.namprd02.prod.outlook.com
 (2603:10b6:303:b6:cafe::c1) by MW4PR03CA0061.outlook.office365.com
 (2603:10b6:303:b6::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Thu, 28 Sep 2023 18:27:59 +0000
Received: from SATLEXMB04.amd.com (165.204.84.17) by
 MWH0EPF000989E6.mail.protection.outlook.com (10.167.241.133) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.22 via Frontend Transport; Thu, 28 Sep 2023 18:27:59 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB04.amd.com
 (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 28 Sep
 2023 13:27:58 -0500
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Thu, 28 Sep 2023 13:27:58 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c225bc5a-5e2c-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=DDgwsMqY5K+bAzHnxMvwAOsPj7M5hgQRJsk+wRAt0FgNsg/2zNBpV0sqWRxThI8CAZ5shZiEZYuJFHSRZVmVX6ezqjoWoflTrl4IMtor7Vgy7ZbfAO1EbqLI0KBoWNxQe+tCpZzDZTPE061mUNLtA/6ISmsVmfi7zSkiH3fAQ4Fa/GOntcuWF1jTlvCM+Tx95Tj4a4g40Q3W5TJ/HwCFN5iAg8V/Q1oMI7/Lr46fJjmiu3EUuUA62nPxeMcHH5XP3rgK5x4zWZ5RDiaX9BnA8C3Gp4lduw8f+7B3hPoVT+vQGNpFH+o/J7D+IVTvoKCvw4dyr97ozeYFyaNKYcJXGg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pbgVN9siqoU0orFJZhdhbTsHBoi/nFYOXk23kfEX5EY=;
 b=bd9fUaRASPZ3/zdorGehgS4ooMEzM1g9j+LvNtfGYuvvSv0HgM1VqXf/GeL+btAtMEL9uXhHmiXDFpmxMsRXVlUNs9GMLkZ75bcaHyUHC1iOF5kO57ac1JCpQAPF0/Tbg/7xVROGBzq4lQlNwT+82L/ZFAs3qeN+lrBf2nQPktbJUsRB3S1ks4+BgEUc5DCxtvCXK69Il/Bt6Glp5xO48TmoENQHW9rqGmi2AL7e/c3cAcwp3oF1j2JmYKXjxai+1IAZKvX7xJYC0mdZMePZC8n+zf59saIXRPAl/yXaURt4wVpe9rTH8Gb8nu1Z4DI4IMn1oeR8W5524sVlPO+Z9g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=citrix.com smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pbgVN9siqoU0orFJZhdhbTsHBoi/nFYOXk23kfEX5EY=;
 b=dm02h27Eu+jnONu9VsOKu/dBItR2izTtw69fC+0W7V4nVdi0N93GBySOm5VeGy5pDAT7reDYdkOYakIPwQjACvtklybwEgyNgG4kq/PmRun3Wk1JqNAqmSKJhEkdM1pI+xHkQf3Yr7scTa07gkOa43oCKN91uf6Pxa/icT0Te0o=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Message-ID: <168709e2-0a1d-a474-a9a4-c3c086b7f134@amd.com>
Date: Thu, 28 Sep 2023 14:28:11 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v9 15/16] xen/arm: vpci: check guest range
To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>
CC: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <20230829231912.4091958-1-volodymyr_babchuk@epam.com>
 <20230829231912.4091958-16-volodymyr_babchuk@epam.com>
 <ZQ1T8vImUxAaeLdj@MacBookPdeRoger>
 <0a1bc845-28b7-4af8-d6d9-cd5fc7bb4d74@amd.com>
 <ZRKRNcypuvP26luu@MacBookPdeRoger>
 <8a300dad-29d5-2017-70ad-09abc2c62368@amd.com>
 <ZRL9QalvI4VrDQhF@MacBookPdeRoger>
 <0d4b7115-8cc6-3b11-9a46-0f222bcb864a@amd.com>
 <ZRU5G4Ae8B-A2iWd@MacBookPdeRoger>
Content-Language: en-US
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <ZRU5G4Ae8B-A2iWd@MacBookPdeRoger>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MWH0EPF000989E6:EE_|CYYPR12MB8751:EE_
X-MS-Office365-Filtering-Correlation-Id: adc3d894-5de3-4be2-8d8c-08dbc050a4de
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/teq6XZ/rLFDz1vOe21tApt3H0S1znRlfUYNm5vMKNYTrp5RBXPUPE7vERspbWdAL3ZpiNhyFyxVJDC8f/CRMmVPuVRQl3tpPqhydr97wUxXLuHtzNR4zlsadKcE7P4pbtUbycL3IqJ7eRjTku4Q6dnyyg1Y11BIYlhT9jEuZNlv0S+FKLiXgXfIUXOUFq/5qZvLVaQyBohdCx1i5zCoRH3/fhndmPQYF/ObP5+ncgRyQg7bkeBRNOGkHmbR4URKuGKwCatPsZGX4JRFl3XtigJa50tpk7LkzMTR56/v48LUo5DmYLPKgsEDmtsipJFEu3K/wMB95FduRWDUqpcdZw7gXg4EyWy1sTtOELXV4qLaZDHTEgH0pOwe7NanODX6F6fOGNJRc8kH8cyvFUKF57Aj8MtMus3nFdKSjSH6JFdlLpISvuXmz7yK9kj6yb9esKVRtsvcWS9xKN66TxCZWMfMq8DWolzZ6KEHNlnCwEMDSjTshYppzVe2HsjasbyqS5P2u7y5r9W3qRLX5KvOzikXZr9x+T/EssW6+8YDvHL/89Qr2mefK7C5+E544+h7tkecoCQzTKFz0LCyVBEjxoD66BGviEEwP8hhbn3X6B4BzbevXD7N8MlVNYRHTyaDsasg+jnkvtlR8Vc5MNUSCm9qRShApAfDBREObzVP44g47R0+mCI5h6V2AOEhPkern/Y47n0TDiDK2rmJHpXyMDAnodKGQYc7DrkCJW4lHrbrxxwsE4bRcOkMmHxer2Br/R42BkfI8EqKYHsTtOLphg4SgHsfo2U5A9rL5dxFvs/2yj7sfVPHE8hVDH2fah7V
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(396003)(39860400002)(136003)(346002)(376002)(230922051799003)(64100799003)(186009)(451199024)(82310400011)(1800799009)(36840700001)(46966006)(40470700004)(478600001)(2616005)(53546011)(26005)(426003)(336012)(16576012)(47076005)(5660300002)(83380400001)(2906002)(6666004)(70206006)(4326008)(8676002)(70586007)(54906003)(44832011)(316002)(6916009)(41300700001)(8936002)(36756003)(40460700003)(36860700001)(356005)(86362001)(31696002)(81166007)(31686004)(40480700001)(82740400003)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 18:27:59.7303
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: adc3d894-5de3-4be2-8d8c-08dbc050a4de
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	MWH0EPF000989E6.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CYYPR12MB8751



On 9/28/23 04:28, Roger Pau Monné wrote:
> Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
> 
> 
> On Wed, Sep 27, 2023 at 02:03:30PM -0400, Stewart Hildebrand wrote:
>> On 9/26/23 11:48, Roger Pau Monné wrote:
>>> On Tue, Sep 26, 2023 at 11:27:48AM -0400, Stewart Hildebrand wrote:
>>>> On 9/26/23 04:07, Roger Pau Monné wrote:
>>>>> On Mon, Sep 25, 2023 at 05:49:00PM -0400, Stewart Hildebrand wrote:
>>>>>> On 9/22/23 04:44, Roger Pau Monné wrote:
>>>>>>> On Tue, Aug 29, 2023 at 11:19:47PM +0000, Volodymyr Babchuk wrote:
>>>>>>>> From: Stewart Hildebrand <stewart.hildebrand@amd.com>
>>>>>>>>
>>>>>>>> Skip mapping the BAR if it is not in a valid range.
>>>>>>>>
>>>>>>>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>>>>>>>> ---
>>>>>>>>  xen/drivers/vpci/header.c | 9 +++++++++
>>>>>>>>  1 file changed, 9 insertions(+)
>>>>>>>>
>>>>>>>> diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
>>>>>>>> index 1d243eeaf9..dbabdcbed2 100644
>>>>>>>> --- a/xen/drivers/vpci/header.c
>>>>>>>> +++ b/xen/drivers/vpci/header.c
>>>>>>>> @@ -345,6 +345,15 @@ static int modify_bars(const struct pci_dev *pdev, uint16_t cmd, bool rom_only)
>>>>>>>>               bar->enabled == !!(cmd & PCI_COMMAND_MEMORY) )
>>>>>>>>              continue;
>>>>>>>>
>>>>>>>> +#ifdef CONFIG_ARM
>>>>>>>> +        if ( !is_hardware_domain(pdev->domain) )
>>>>>>>> +        {
>>>>>>>> +            if ( (start_guest < PFN_DOWN(GUEST_VPCI_MEM_ADDR)) ||
>>>>>>>> +                 (end_guest >= PFN_DOWN(GUEST_VPCI_MEM_ADDR + GUEST_VPCI_MEM_SIZE)) )
>>>>>>>> +                continue;
>>>>>>>> +        }
>>>>>>>> +#endif
>>>>>>>
>>>>>>> Hm, I think this should be in a hook similar to pci_check_bar() that
>>>>>>> can be implemented per-arch.
>>>>>>>
>>>>>>> IIRC at least on x86 we allow the guest to place the BARs whenever it
>>>>>>> wants, would such placement cause issues to the hypervisor on Arm?
>>>>>>
>>>>>> Hm. I wrote this patch in a hurry to make v9 of this series work on ARM. In my haste I also forgot about the prefetchable range starting at GUEST_VPCI_PREFETCH_MEM_ADDR, but that won't matter as we can probably throw this patch out.
>>>>>>
>>>>>> Now that I've had some more time to investigate, I believe the check in this patch is more or less redundant to the existing check in map_range() added in baa6ea700386 ("vpci: add permission checks to map_range()").
>>>>>>
>>>>>> The issue is that during initialization bar->guest_addr is zeroed, and this initial value of bar->guest_addr will fail the permissions check in map_range() and crash the domain. When the guest writes a new valid BAR, the old invalid address remains in the rangeset to be mapped. If we simply remove the old invalid BAR from the rangeset, that seems to fix the issue. So something like this:
>>>>>
>>>>> It does seem to me we are missing a proper cleanup of the rangeset
>>>>> contents in some paths then.  In the above paragraph you mention "the
>>>>> old invalid address remains in the rangeset to be mapped", how does it
>>>>> get in there in the first place, and why is the rangeset not emptied
>>>>> if the mapping failed?
>>>>
>>>> Back in ("vpci/header: handle p2m range sets per BAR") I added a v->domain == pdev->domain check near the top of vpci_process_pending() as you appropriately suggested.
>>>>
>>>> +    if ( v->domain != pdev->domain )
>>>> +    {
>>>> +        read_unlock(&v->domain->pci_lock);
>>>> +        return false;
>>>> +    }
>>>>
>>>> I have also reverted this patch ("xen/arm: vpci: check guest range").
>>>>
>>>> The sequence of events leading to the old value remaining in the rangeset are:
>>>>
>>>> # xl pci-assignable-add 01:00.0
>>>> drivers/vpci/vpci.c:vpci_deassign_device()
>>>>     deassign 0000:01:00.0 from d0
>>>> # grep pci domu.cfg
>>>> pci = [ "01:00.0" ]
>>>> # xl create domu.cfg
>>>> drivers/vpci/vpci.c:vpci_deassign_device()
>>>>     deassign 0000:01:00.0 from d[IO]
>>>> drivers/vpci/vpci.c:vpci_assign_device()
>>>>     assign 0000:01:00.0 to d1
>>>>     bar->guest_addr is initialized to zero because of the line: pdev->vpci = xzalloc(struct vpci);
>>>> drivers/vpci/header.c:init_bars()
>>>> drivers/vpci/header.c:modify_bars()
>>>
>>> I think I've commented this on another patch, but why is the device
>>> added with memory decoding enabled?  I would expect the FLR performed
>>> before assigning would leave the device with memory decoding disabled?
>>
>> It seems the device is indeed being assigned to the domU with memory decoding enabled, but I'm not entirely sure why. The device I'm testing with doesn't support FLR, but it does support pm bus reset:
>> # cat /sys/bus/pci/devices/0000\:01\:00.0/reset_method
>> pm bus
>>
>> As I understand it, libxl__device_pci_reset() should still be able to issue a reset in this case.
> 
> Maybe pciback is somehow restoring part of the previous state?  I
> have no insight in what state we expect the device to be handled by
> pciback, but this needs investigation in order to know what to expect.

Yep, during "xl pci-assignable-add ..." pciback resets the device and restores the state, including whether memory decoding is enabled.

drivers/xen/xen-pciback/pci_stub.c:pcistub_init_device():

	/* We need the device active to save the state. */
	dev_dbg(&dev->dev, "save state of device\n");
	pci_save_state(dev);
	dev_data->pci_saved_state = pci_store_saved_state(dev);
	if (!dev_data->pci_saved_state)
		dev_err(&dev->dev, "Could not store PCI conf saved state!\n");
	else {
		dev_dbg(&dev->dev, "resetting (FLR, D3, etc) the device\n");
		__pci_reset_function_locked(dev);
		pci_restore_state(dev);
	}
	/* Now disable the device (this also ensures some private device
	 * data is setup before we export)
	 */
	dev_dbg(&dev->dev, "reset device\n");
	xen_pcibk_reset_device(dev);

That last function, xen_pcibk_reset_device(), clears the bus master enable bit in the command register for devices with PCI_HEADER_TYPE_NORMAL (not a reset contrary to the function name).

xl create should reset the device again, but, similarly, this also seems to restore the state.

> Can you paste the full contents of the command register for this
> device?
Start of day (PCIe controller and bridge initialized, no device BARs or anything have been programmed yet): 0x0000
After dom0 boot, device is in use: 0x0006
After pci-assignable-add: 0x0002
After echo 1 > /sys/bus/pci/devices/0000\:01\:00.0/reset: 0x0002
After xl create, domU booted: 0x0006

Should mapping bars should be conditional on PCI_COMMAND_MASTER, not PCI_COMMAND_MEMORY? E.g.:

diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c
index 9cf701b3c464..9ce1793d64b8 100644
--- a/xen/drivers/vpci/header.c
+++ b/xen/drivers/vpci/header.c
@@ -1162,7 +1162,7 @@ static int cf_check init_bars(struct pci_dev *pdev)
             goto fail;
     }

-    return (cmd & PCI_COMMAND_MEMORY) ? modify_bars(pdev, cmd, false) : 0;
+    return (cmd & PCI_COMMAND_MASTER) ? modify_bars(pdev, cmd, false) : 0;

  fail:
     pci_conf_write16(pdev->sbdf, PCI_COMMAND, cmd);


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 20:21:33 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 20:21:33 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610029.949245 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlxVa-0007k9-1p; Thu, 28 Sep 2023 20:21:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610029.949245; Thu, 28 Sep 2023 20:21:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlxVZ-0007k2-VC; Thu, 28 Sep 2023 20:21:13 +0000
Received: by outflank-mailman (input) for mailman id 610029;
 Thu, 28 Sep 2023 20:21:13 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlxVY-0007jw-TN
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 20:21:13 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8c410957-5e3c-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 22:21:04 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 54C0C61D1E;
 Thu, 28 Sep 2023 20:21:03 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1D820C433C7;
 Thu, 28 Sep 2023 20:21:01 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8c410957-5e3c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695932463;
	bh=sejX9pXLRGpidZ+kpQmQM1u0brz//PKs7DTFEsWWEEw=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=aeWuBJr90Lpg3sp/4yXdaALv+WZ5p+jZ0sl9rYYDog0ogkemFZeaDZpf6t78BVi3l
	 79HkmwYUcmBjgWnM+X26CcxITZMGv7F+rTIhj4MWGDNLzYyu9nT5xJ7IIE70Ntw5Wy
	 oM1H/WnjX81D7nmy5bnjO0Qthqgh6VCf7bhPbu0jah1q4X4Dg8LJ9pxZJJNVZ/RkdV
	 2kDXmxrvxw4nkqaNwrrQPe3d6M9m9GKxG8PIwU1kRQb6Po2NM63nVdtbd6WHKPr3Zi
	 fAQxsnSx57c16n1IMrrJpWnVob3sLwy4Etj8SO1S58AAx/jXYokE+LhjuU/mTmBMRN
	 fQWAtxqgiZe3Q==
Date: Thu, 28 Sep 2023 13:21:00 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Michal Orzel <michal.orzel@amd.com>
cc: xen-devel@lists.xenproject.org, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH] xen/arm: Validate generic timer frequency
In-Reply-To: <20230928123435.2802-1-michal.orzel@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309281320540.1996340@ubuntu-linux-20-04-desktop>
References: <20230928123435.2802-1-michal.orzel@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 27 Sep 2023, Michal Orzel wrote:
> Generic timer dt node property "clock-frequency" (refer Linux dt binding
> Documentation/devicetree/bindings/timer/arm,arch_timer.yaml) is used to
> override the incorrect value set by firmware in CNTFRQ_EL0. If the value
> of this property is 0 (i.e. by mistake), Xen would continue to work and
> use the value from the sysreg instead. The logic is thus incorrect and
> results in inconsistency when creating timer node for domUs:
>  - libxl domUs: clock_frequency member of struct xen_arch_domainconfig
>    is set to 0 and libxl ignores setting the "clock-frequency" property,
>  - dom0less domUs: "clock-frequency" property is taken from dt_host and
>    thus set to 0.
> 
> Property "clock-frequency" is used to override the value from sysreg,
> so if it is also invalid, there is nothing we can do and we shall panic
> to let user know about incorrect setting. Going even further, we operate
> under assumption that the frequency must be at least 1KHz (i.e. cpu_khz
> not 0) in order for Xen to boot. Therefore, introduce a new helper
> validate_timer_frequency() to verify this assumption and use it to check
> the frequency obtained either from dt property or from sysreg.
> 
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
>  xen/arch/arm/time.c | 15 +++++++++++++++
>  1 file changed, 15 insertions(+)
> 
> diff --git a/xen/arch/arm/time.c b/xen/arch/arm/time.c
> index 3535bd8ac7c7..04b07096b165 100644
> --- a/xen/arch/arm/time.c
> +++ b/xen/arch/arm/time.c
> @@ -101,6 +101,17 @@ static void __init preinit_acpi_xen_time(void)
>  static void __init preinit_acpi_xen_time(void) { }
>  #endif
>  
> +static void __init validate_timer_frequency(void)
> +{
> +    /*
> +     * ARM ARM does not impose any strict limit on the range of allowable
> +     * system counter frequencies. However, we operate under the assumption
> +     * that cpu_khz must not be 0.
> +     */
> +    if ( !cpu_khz )
> +        panic("Timer frequency is less than 1 KHz\n");
> +}
> +
>  /* Set up the timer on the boot CPU (early init function) */
>  static void __init preinit_dt_xen_time(void)
>  {
> @@ -122,6 +133,7 @@ static void __init preinit_dt_xen_time(void)
>      if ( res )
>      {
>          cpu_khz = rate / 1000;
> +        validate_timer_frequency();
>          timer_dt_clock_frequency = rate;
>      }
>  }
> @@ -137,7 +149,10 @@ void __init preinit_xen_time(void)
>          preinit_acpi_xen_time();
>  
>      if ( !cpu_khz )
> +    {
>          cpu_khz = (READ_SYSREG(CNTFRQ_EL0) & CNTFRQ_MASK) / 1000;
> +        validate_timer_frequency();
> +    }
>  
>      res = platform_init_time();
>      if ( res )
> -- 
> 2.25.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 20:49:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 20:49:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610036.949255 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlxwg-0004Qz-3P; Thu, 28 Sep 2023 20:49:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610036.949255; Thu, 28 Sep 2023 20:49:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlxwf-0004Qs-Va; Thu, 28 Sep 2023 20:49:13 +0000
Received: by outflank-mailman (input) for mailman id 610036;
 Thu, 28 Sep 2023 20:49:12 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlxwe-0004Qk-Qh
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 20:49:12 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 77e12c7e-5e40-11ee-9b0d-b553b5be7939;
 Thu, 28 Sep 2023 22:49:09 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id EEEACCE2244;
 Thu, 28 Sep 2023 20:49:03 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id AE258C433C8;
 Thu, 28 Sep 2023 20:49:01 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 77e12c7e-5e40-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695934143;
	bh=itpYXVAd5BUCJelW8AaQOXk52F0jocdxEiENQvTN0w0=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=t4Zb4SSMbANVqnhmGcg75fkDicr7w4sPaP8zOmr8Ieruj0hSRUA/jbOrfUPYL0Fr2
	 vnWUjZ4plnr3Q2657HU512l77m0mD/tWaYuBOnR8sWIOpXSgL5/hQH9MAse7S7HHYp
	 k8megfZ6ryMpRFd+86wP4REaVCkfyNxDFsJSUu2S/nXwY+MhpF8/eF5cxKhQHTssO5
	 W7yL8z0b2n9Mpd1e60mP79TnmNikhcRTTSd77EcT062qKVnNz309taRiHPM4bzZcKK
	 V652F+6u5EYQa+ZRRsgDf8xjxo48DTlGPwqsT0mD7srhsk0a0nI9wncMS6leTK+fI3
	 CdmJyxjj0osCA==
Date: Thu, 28 Sep 2023 13:48:59 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>
cc: Jan Beulich <jbeulich@suse.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, andrew.cooper3@citrix.com, 
    george.dunlap@citrix.com, julien@xen.org, bertrand.marquis@arm.com, 
    wl@xen.org, Stefano Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] SUPPORT: downgrade Physical CPU Hotplug to
 Experimental
In-Reply-To: <ZRVMo6Uf7occc0Zs@MacBookPdeRoger>
Message-ID: <alpine.DEB.2.22.394.2309281346160.1996340@ubuntu-linux-20-04-desktop>
References: <20230927232004.1981595-1-sstabellini@kernel.org> <ZRU6A2wDSVEEHGbK@MacBookPdeRoger> <e1cc81b4-d990-b995-a24a-ba80c1e970ba@suse.com> <ZRVMo6Uf7occc0Zs@MacBookPdeRoger>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-34514524-1695934015=:1996340"
Content-ID: <alpine.DEB.2.22.394.2309281347070.1996340@ubuntu-linux-20-04-desktop>

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-34514524-1695934015=:1996340
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2309281347071.1996340@ubuntu-linux-20-04-desktop>

On Thu, 28 Sep 2023, Roger Pau Monné wrote:
> On Thu, Sep 28, 2023 at 11:32:22AM +0200, Jan Beulich wrote:
> > On 28.09.2023 10:32, Roger Pau Monné wrote:
> > > On Wed, Sep 27, 2023 at 04:20:04PM -0700, Stefano Stabellini wrote:
> > >> From: Stefano Stabellini <stefano.stabellini@amd.com>
> > >>
> > >> The feature is not commonly used, and we don't have hardware to test it,
> > >> not in OSSTest, not in Gitlab, and not even ad-hoc manually by community
> > >> members. We could use QEMU to test it, but even that it is known not to
> > >> work.
> > > 
> > > I think this last sentence is ambiguous.  QEMU ACPI CPU hotplug
> > > implementation does work AFAIK, it's Xen implementation of ACPI
> > > hotplug that explodes (or so I've been told).  I would drop or reword
> > > the "but even that it is known not to work." part of the sentence.
> > 
> > Maybe simply add "... on our end"?
> 
> WFM.

Just to be clear we are going for:

"The feature is not commonly used, and we don't have hardware to test it,
not in OSSTest, not in Gitlab, and not even ad-hoc manually by community
members. We could use QEMU to test it, but even that it is known not to
work on our end."

Can the change be done on commit?
--8323329-34514524-1695934015=:1996340--


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 21:50:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 21:50:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610043.949266 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlyuB-0000Cl-Ls; Thu, 28 Sep 2023 21:50:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610043.949266; Thu, 28 Sep 2023 21:50:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlyuB-0000Ce-HP; Thu, 28 Sep 2023 21:50:43 +0000
Received: by outflank-mailman (input) for mailman id 610043;
 Thu, 28 Sep 2023 21:50:41 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlyu9-0000CY-T0
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 21:50:41 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 107499b5-5e49-11ee-878b-cb3800f73035;
 Thu, 28 Sep 2023 23:50:39 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 58420B81DC7;
 Thu, 28 Sep 2023 21:50:39 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A8DAEC433C8;
 Thu, 28 Sep 2023 21:50:37 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 107499b5-5e49-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695937838;
	bh=KYNUa5ryU0RL0VJ175+q3fCUjAGzW34k7+kEkZSv/m8=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Pac2YD7kwhmZKRLAvnTbcbxfm4j6pUCdNwi4UgUk+xbF0alVHMhWsVmYb4+wowDzq
	 yTiMhxOjGwE+Z+7/amHFntDGjYFo5/GW1fJ7f29NIBs8oHxd/B8RWs1Ei7z+cAIq0o
	 zidCBsq0ZZagQH7Zyh0ZbmV/pJuwwebT+t4LzJguiGHnuL7QpO73avqSBAldVRQk0P
	 C39H6vKq8tB9ixEe2V96vMnbzE+p1KuFwMTjjUpo5786I9Pf8FaMxXOK7EJe/QGVBA
	 mIhcRh9o3/cuj9fboPa8A/BL9DdlnlBC6QNX9uETnDprjjz4thkWMJEwD+PKbNqKML
	 ipiYU0jsWjwug==
Date: Thu, 28 Sep 2023 14:50:35 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Oleg Nikitenko <oleshiiwood@gmail.com>
cc: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Stefano Stabellini <sstabellini@kernel.org>, michal.orzel@amd.com
Subject: Re: changing Dom0 data during smc call inside of xen during cache
 coloring
In-Reply-To: <CA+SAi2tHLVDj+q8KMD7OuhHoj0sSZ-39qs3Z94WGmL2OA3TM_g@mail.gmail.com>
Message-ID: <alpine.DEB.2.22.394.2309281447180.1996340@ubuntu-linux-20-04-desktop>
References: <CA+SAi2tXMupikB2YgEXuq98KnOcqm6zWrk19rNvWTfzf2=ku-w@mail.gmail.com> <dba88398-3aef-4541-a8e8-8fd075c0d40e@xen.org> <CA+SAi2tHLVDj+q8KMD7OuhHoj0sSZ-39qs3Z94WGmL2OA3TM_g@mail.gmail.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-2062875528-1695937640=:1996340"
Content-ID: <alpine.DEB.2.22.394.2309281447310.1996340@ubuntu-linux-20-04-desktop>

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-2062875528-1695937640=:1996340
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2309281447311.1996340@ubuntu-linux-20-04-desktop>

On Thu, 28 Sep 2023, Oleg Nikitenko wrote:
> Hello Julien,
> 
> I am still fighting with xen Cache Coloring with aes.
> When I sent a request to hardware aes after xen with CC started I got the mistake in CSU.
> When I dumped structure contents on both sides I got the different data.
> Xilinx related contact wrote to me.
> 
> When cache coloring is enabled, Dom0 is not 1:1 mapped (guest physical addresses in Dom0 != physical addresses). If the Xilinx drivers in
> Linux (xcsudma.c) issue EEMI calls with a guest physical address (for instance the address of a memory buffer allocated by Linux), then
> this address is no longer a physical address and would need to be translated. EEMI calls always get forwarded to Xen first, then Xen issues
> a corresponding EEMI call to the firmware (see xen/arch/arm/platforms/xilinx-eemi.c:xilinx_eemi). But Xen is probably passing the EEMI
> calls parameters unmodified. Then PMU tries to read the address but since this is not a physical address, it fails. Basically we need to
> add code to Xen xen/arch/arm/platforms/xilinx-eemi.c:xilinx_eemi to translate any guest physical addresses passed as EEMI calls arguments
> into physical addresses before making the EEMI call to firmware.
> 
> This is an example patch, which is translating the parameter on register x2 for the EEMI call 0xC200002F. I haven't checked the EEMI
> protocol for this call but this just an example to show you how to translate parameters.
> 
> diff --git a/xen/arch/arm/platforms/xilinx-eemi.c b/xen/arch/arm/platforms/xilinx-eemi.c index 500c86dc69..bff1b71196 100644 ---
> a/xen/arch/arm/platforms/xilinx-eemi.c +++ b/xen/arch/arm/platforms/xilinx-eemi.c @@ -409,6 +409,30 @@ bool xilinx_eemi(struct
> cpu_user_regs *regs, const uint32_t fid, } goto forward_to_fw;
> 
>  *  case 0xC200002F:
>  *  {
>  *  uint64_t example_possible_address_param = get_user_reg(regs, 2);
>  *  uint64_t translated_address = mfn_to_maddr(gfn_to_mfn(current->domain,
>  *  gaddr_to_gfn(example_possible_address_param)));
>  *  translated_address += example_possible_address_param & ~PAGE_MASK; +
>  *  arm_smccc_1_1_smc(get_user_reg(regs, 0),
>  *  get_user_reg(regs, 1),
>  *  translated_address,
>  *  get_user_reg(regs, 3),
>  *  get_user_reg(regs, 4),
>  *  get_user_reg(regs, 5),
>  *  get_user_reg(regs, 6),
>  *  get_user_reg(regs, 7),
>  *  &res); +
>  *  set_user_reg(regs, 0, res.a0);
>  *  set_user_reg(regs, 1, res.a1);
>  *  set_user_reg(regs, 2, res.a2);
>  *  set_user_reg(regs, 3, res.a3);
>  *  return true;
>  *  }
> 
> + default: if ( is_hardware_domain(current->domain) ) goto forward_to_fw;
> 
> The aes request structure contains physical addresses of the source and destination.
> These addresses are obtained via two calls dma_alloc_coherent.
> The address of this structure is kept at x2 register.

OK I see the question is about the Xilinx Xen tree. In the logs below we
have:

> (XEN) d0v1 Forwarding AES operation: 3254779951 r2 0 -> 11432000                                                        log from xen
 
So it looks Linux passed 0 as address in x2, which cannot be right?



> I applied the suggested scheme in xen for xilinx_eemi(...) function.
> 
> case 0xC200002F:
> {
> uint64_t paramaddr = get_user_reg(regs, 2);

It would seem that this is not read correctly? It should not be zero.


> uint64_t phyaddr = mfn_to_maddr(gfn_to_mfn(current->domain, gaddr_to_gfn(paramaddr)));
> phyaddr += (paramaddr & ~PAGE_MASK);
> gprintk(XENLOG_DEBUG, "Forwarding AES operation: %u r2 %lx -> %lx\n", fid, paramaddr, phyaddr);
> set_user_reg(regs, 2, phyaddr);
> }
> goto forward_to_fw;
> 
> As a result I got the same issue as earlier.
> 
> [   17.350086]
> zynq_aes_gcm                                                                                                                        user
> log
> 
> [   17.350202] @ dma_alloc firmware:zynqmp-firmware:zynqmp-aes @                                                       kernel log from Dom0
> [   17.353015] @@@ firmware:zynqmp-firmware:zynqmp-aes 0 @@@
> [   17.358515] zynqmp_aes [0] ffffffc00910d000 2806000 firmware:zynqmp-firmware:zynqmp-aes
> [   17.366546] @ dma_alloc firmware:zynqmp-firmware:zynqmp-aes @
> [   17.372347] @@@ firmware:zynqmp-firmware:zynqmp-aes 0 @@@
> [   17.377775] zynqmp_aes [1] ffffffc009115000 42a14000 keytype 1
> [   17.383660] zynqmp_aes [2] dump request align 1 ++
> [   17.388501] 00 60 80 02 00 00 00 00
> [   17.392032] 50 60 80 02 00 00 00 00
> [   17.395583] 00 00 00 00 00 00 00 00
> [   17.399117] 00 60 80 02 00 00 00 00
> [   17.402664] 40 00 00 00 00 00 00 00
> [   17.406226] 00 00 00 00 00 00 00 00
> [   17.409755] 01 00 00 00 00 00 00 00
> [   17.413311] zynqmp_aes [3] dump request --
> 
> (XEN) d0v1 Forwarding AES operation: 3254779951 r2 0 -> 11432000                                                        log from xen

Here


> @ 000042A14000
> @                                                                                                                                      csu
> log from aes
> 04 E4 00 6F 05 E4 00 6F
> 06 E4 00 6F 07 E4 00 6F
> 10 E4 00 6F 11 E4 00 6F
> 12 E4 00 6F 13 E4 00 6F
> 14 E4 00 6F 15 E4 00 6F
> 16 E4 00 6F 17 E4 00 6F
> 18 E4 00 6F 19 E4 00 6F
> 
> ERROR:   pm_aes_engine ### args 6 ret 0 addr 0 42a14000 ###                                                                ATF log
> 
> So the address of the structure was not changed.
> This is the question. 
> How can I map this address to xen and change physical addresses there ?
--8323329-2062875528-1695937640=:1996340--


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 22:24:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 22:24:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610050.949274 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlzQl-0007LC-6F; Thu, 28 Sep 2023 22:24:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610050.949274; Thu, 28 Sep 2023 22:24:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlzQl-0007L5-3j; Thu, 28 Sep 2023 22:24:23 +0000
Received: by outflank-mailman (input) for mailman id 610050;
 Thu, 28 Sep 2023 22:24:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlzQk-0007Kz-Cz
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 22:24:22 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c45f8f31-5e4d-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 00:24:21 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 2505861DA7;
 Thu, 28 Sep 2023 22:24:19 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1D40EC433C8;
 Thu, 28 Sep 2023 22:24:16 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c45f8f31-5e4d-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695939858;
	bh=H76zN8S7OvC1y7q1g6XWTHf1rNyWR18UVQ0hRqwlfNg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=jyi7k4desFqjUDXcp3jNflMX33Lfc3oOUq2sbS9tR4HzIVHbkMoTnWhNPqbFBRyeC
	 42s2sssnMRi3MnX/a59ozywGBI0+07N3KhPdb6Oz5ByWteygWqbOjWiq+wUZAa0YJE
	 qoD0M2Q7xmTZVc06YXBePs989iCjq3IYb0QB+XaRRJvq1hV5k+5db4Yz0F7YzE3zTp
	 jJ8GWwe2VlR4NVbCIrjikHfLRTYoGqUAvVacazWXhciwaeLgS6TBdItLVnZ8iP+iwO
	 ThVPQDnr8wTBfXqHn/4Sj30Q/NmeArIgmC3+x/CGcZJgi364rCjFaieS5bZGX3Znai
	 NX0X1WzcYpelg==
Date: Thu, 28 Sep 2023 15:24:15 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Jan Beulich <jbeulich@suse.com>
cc: Simone Ballarin <simone.ballarin@bugseng.com>, consulting@bugseng.com, 
    sstabellini@kernel.org, Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
In-Reply-To: <f0cd8400-5e37-6704-75ce-d965540bc2b7@suse.com>
Message-ID: <alpine.DEB.2.22.394.2309281515570.1996340@ubuntu-linux-20-04-desktop>
References: <cover.1694510856.git.simone.ballarin@bugseng.com> <b62205a1-885b-ea4e-3ce2-7ad58cfc938d@suse.com> <f1759081-eb18-4597-82b6-d7d9ee1754ab@bugseng.com> <e0ff3307-99ee-7740-bc5f-52dd7f589057@suse.com> <c2b10554-673c-4452-a35c-0d2f314e8ad2@bugseng.com>
 <f0cd8400-5e37-6704-75ce-d965540bc2b7@suse.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 28 Sep 2023, Jan Beulich wrote:
> On 28.09.2023 15:17, Simone Ballarin wrote:
> > On 28/09/23 14:51, Jan Beulich wrote:
> >> On 28.09.2023 14:46, Simone Ballarin wrote:
> >>> On 13/09/23 10:02, Jan Beulich wrote:
> >>>> On 12.09.2023 11:36, Simone Ballarin wrote:
> >>>>> Add or move inclusion guards to address violations of
> >>>>> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
> >>>>> to prevent the contents of a header file being included more than
> >>>>> once").
> >>>>>
> >>>>> Inclusion guards must appear at the beginning of the headers
> >>>>> (comments are permitted anywhere) and the #if directive cannot
> >>>>> be used for other checks.
> >>>>>
> >>>>> Simone Ballarin (10):
> >>>>>     misra: add deviation for headers that explicitly avoid guards
> >>>>>     misra: modify deviations for empty and generated headers
> >>>>>     misra: add deviations for direct inclusion guards
> >>>>>     xen/arm: address violations of MISRA C:2012 Directive 4.10
> >>>>>     xen/x86: address violations of MISRA C:2012 Directive 4.10
> >>>>>     x86/EFI: address violations of MISRA C:2012 Directive 4.10
> >>>>>     xen/common: address violations of MISRA C:2012 Directive 4.10
> >>>>>     xen/efi: address violations of MISRA C:2012 Directive 4.10
> >>>>>     xen: address violations of MISRA C:2012 Directive 4.10
> >>>>>     x86/asm: address violations of MISRA C:2012 Directive 4.10
> >>>>
> >>>> Just to mention it here again for the entire series, seeing that despite
> >>>> my earlier comments to this effect a few R-b have arrived: If private
> >>>> headers need to gain guards (for, imo, no real reason), we first need to
> >>>> settle on a naming scheme for these guards, such that guards used in
> >>>> private headers aren't at risk of colliding with ones used headers
> >>>> living in one of the usual include directories. IOW imo fair parts of
> >>>> this series may need redoing.
> >>>>
> >>>> Jan
> >>>>
> >>>
> >>> My proposal is:
> >>> - the relative path from "xen/arch" for files in this directory
> >>>     (i.e. X86_X86_X86_MMCONFIG_H for "xen/arch/x86/x86_64/mmconfig.h";
> >>
> >> X86_X86_64_MMCONFIG_H that is?
> >>
> >> Yet then this scheme won't hold for xen/arch/include/asm/... ? It's also
> >> not clear whether you're deliberately omitting leading/trailing underscores
> >> here, which may be a way to distinguish private from global headers.
> > 
> > Each name that begins with a double or single underscore (__, _) 
> > followed by an uppercase letter is reserved. Using a reserved identifier 
> > is an undefined-b.
> > 
> > I would be better to avoid them.
> 
> I'm with you about avoiding them, except that we use such all over the
> place. Taking this together with ...
> 
> >>> - for the others, the entire path.
> >>
> >> What exactly is "entire" here?
> > 
> > Let me try again.
> > 
> > If we are inside xen/arch the relative path starting from this directory:
> >    | xen/arch/x86/include/asm/compat.h
> >    X86_INCLUDE_ASM_COMPAT_H
> > 
> > For xen/include, the current convention.
> > Maybe, in a future patch, we can consider removing the leading _.
> > 
> > For the others, the relative path after xen:
> >    | xen/common/efi/efi.h
> >    COMMON_EFI_EFI_H
> 
> ... this you're effectively suggesting to change all existing guards.
> That's an option, but likely not a preferred one. Personally I'd prefer
> if in particular the headers in xen/include/ and in xen/arch/*include/
> didn't needlessly include _INCLUDE_ in their guard names.
> 
> I'm really curious what others think.

If it is a MISRA requirement to avoid names that begin with single or
double underscore, then I think we should bite the bullet and change all
guard names, taking the opportunity to make them consistent.

If it is not a MISRA requirement, then I think we should go for the path
of least resistance and try to make the smallest amount of changes
overall, which seems to be:

- for xen/include/blah.h, __BLAH_H__
- for xen/arch/arm/asm/include/blah.h, __ASM_ARM_BLAH_H__
- for xen/arch/x86/asm/include/blah.h, it is far less consistent, maybe __ASM_X86_BLAH_H__ ?


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 22:32:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 22:32:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610056.949284 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlzYV-00016X-UH; Thu, 28 Sep 2023 22:32:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610056.949284; Thu, 28 Sep 2023 22:32:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlzYV-00016Q-R4; Thu, 28 Sep 2023 22:32:23 +0000
Received: by outflank-mailman (input) for mailman id 610056;
 Thu, 28 Sep 2023 22:32:23 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlzYV-00016K-7z
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 22:32:23 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e34e47d1-5e4e-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 00:32:21 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 8892161D9E;
 Thu, 28 Sep 2023 22:32:20 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6C191C433C7;
 Thu, 28 Sep 2023 22:32:18 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e34e47d1-5e4e-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695940340;
	bh=dBuXBy3TylXN/QVUSxaztn4EmidT8l7aSHCf1BqAKJc=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=XelxxT0KdZubwcdvmjDv5Z6XJ0NyiZvsQFt2wMa0en+vD9eyGJ1zwulnJGH95tDAU
	 FaFRLBOAqGkeEarvJuamVAKIvyb2rilkTa2JeOZyeeyk2aMzUNVVDeTu8f4eoeI/hu
	 eQzlf3RcpOGp8Gz93RCP6rVrVBZOlT9KGkRexP6VC9ZacxY2AdoAQZ13lRwSjH47jG
	 bIuQjKOivBGFBLd+4+oJ4n+fjDXVpzfuV1zHXAFVrvQcV1oqaLgcOHHyRaPCEPOW1y
	 ZPIAIJTmtP8dBkIO7PxdNxQq8qHj5ul6eDrTG+Y1yWt+Vn3sg9RBUXNXIcASsfDOEI
	 2y1PCvkPG8WzQ==
Date: Thu, 28 Sep 2023 15:32:16 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, michal.orzel@amd.com, 
    xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, 
    consulting@bugseng.com, jbeulich@suse.com, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, George Dunlap <george.dunlap@citrix.com>, 
    Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>, 
    Henry Wang <Henry.Wang@arm.com>
Subject: Re: [XEN PATCH v2 1/3] docs/misra: add documentation skeleton for
 MISRA C:2012 Dir 4.1
In-Reply-To: <3bf90dc627f6cd68dcd535461cbbdf32@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309281527070.1996340@ubuntu-linux-20-04-desktop>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com> <5bb4dea2f48d0ef9a48a06c1b11c0dfcbd991aaf.1695801813.git.nicola.vetrini@bugseng.com> <alpine.DEB.2.22.394.2309271750130.1996340@ubuntu-linux-20-04-desktop>
 <3bf90dc627f6cd68dcd535461cbbdf32@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 28 Sep 2023, Nicola Vetrini wrote:
> On 28/09/2023 02:55, Stefano Stabellini wrote:
> > On Wed, 27 Sep 2023, Nicola Vetrini wrote:
> > > The aforementioned directive requires the project to supply documentation
> > > on the measures taken towards the minimization of run-time failures.
> 
> > > +
> > > +Documentation for MISRA C:2012 Dir 4.1: mistyped access to function
> > > +___________________________________________________________________
> > > +
> > > +The code never uses function pointers.
> > 
> > You missed my previous comment on this one
> > 
> 
> You're right.
> This is about the usage of a function having a certain signature as having
> another.
> It could happen for instance:
> - with incongruent declarations
> - no prototypes
> - casts on function pointers
> Most of these can be caught by complying with other rules, but I'm not sure if
> they
> fully cover every case, and besides there are still violations on the rules
> tied to this.
> I guess we can say that this is a WIP.

We do want to follow these guidelines and like you wrote they are
covered by other MISRA rules that we have adopted and we are already
scanning for (or planning to) using ECLAIR. I think we should highlight
that, especially we have done a lot of work on incongruent declarations
and missing prototypes.


> > > +
> > > +Documentation for MISRA C:2012 Dir 4.1: invariant violation
> > > +___________________________________________________________
> > > +
> > > +To be written.
> > 
> > Also this one escaped.
> > 
> > Overall, this is much better!
> > 
> 
> I replied on v1, but maybe I missed some further reply:
> It's the violation of a project invariant (e.g., an assert or BUILD_BUG).
> Something along the lines of this could fit in the documentation:
> "The extensive checks in the code ensure that any violation of a
> compile-time invariant will be detected in prior to release builds, and
> failure
> of run-time invariant is also extensively tested."

We can also add the number of invariants is drastically reduced in
release builds.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 22:59:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 22:59:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610061.949294 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlzyF-0005vG-0O; Thu, 28 Sep 2023 22:58:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610061.949294; Thu, 28 Sep 2023 22:58:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlzyE-0005v9-Td; Thu, 28 Sep 2023 22:58:58 +0000
Received: by outflank-mailman (input) for mailman id 610061;
 Thu, 28 Sep 2023 22:58:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlzyD-0005v3-Gp
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 22:58:57 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 992d3ce3-5e52-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 00:58:54 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id AD2EEB81DC5;
 Thu, 28 Sep 2023 22:58:54 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id B77F6C433C8;
 Thu, 28 Sep 2023 22:58:52 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 992d3ce3-5e52-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695941934;
	bh=B0lWu1LISBh9WWGEJJaecjB1YUI8+/OjapCyIOgMWCY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=doDeMGcRBYgc8pgYRSKeJWLwhuX/q7v6YUBgR0A/epU7fai8bFKJPqPo/PqGowIuy
	 m3sb1iwgPZwBa12PDMJb8g1EunFwGb8TVNF4QK3nDc9wKgN813kLC+5eTqUfDxmKCR
	 WiZ50KwnWaQPMOIO6iK3x3q9Xf2nwb1tSLZqe//LzGhnYnvstHVRTfjKLndUa2i+Co
	 Xk7VRJE3FsslCttJp06eTXc7JjaqxPfdj1djzWqDMEI2ffGPYwA+FkVXcF0lXNb5Uz
	 oh7VZVK24RuJwC3cCf0MLKu25P3GNQ7TXWkYrMK+xlV4101oZOfsOE0numbZFKfmOQ
	 xC+7YzTe7W1nA==
Date: Thu, 28 Sep 2023 15:58:51 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    sstabellini@kernel.org, jbeulich@suse.com, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Liu <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>
Subject: Re: [XEN PATCH v7 3/4] x86/include: address violations of MISRA
 C:2012 Rule 7.2
In-Reply-To: <6f0ac778edc5de8cf079a657917696ceae919e8b.1695913900.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309281552130.1996340@ubuntu-linux-20-04-desktop>
References: <cover.1695913900.git.simone.ballarin@bugseng.com> <6f0ac778edc5de8cf079a657917696ceae919e8b.1695913900.git.simone.ballarin@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 28 Sep 2023, Simone Ballarin wrote:
> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
> headline states:
> "A 'u' or 'U' suffix shall be applied to all integer constants
> that are represented in an unsigned type".
> 
> Add the 'U' suffix to integers literals with unsigned type.
> Use _AC() for macro costants that are used also in assembly files.
> 
> For the sake of uniformity, the following changes are made:
> - add the 'U' suffix to macros in 'pci.h'
> - use _AC() for macros near 'X86_CR0_PG'
> 
> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> ---
> Changes in v7:
> - switch order of Signed-off-by tags
> - change tag from x86/arm to x86/include
> Changes in v6:
> - new patch obtained by splitting ASM related changes from
> "xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
> - use UL suffix for X86_CR0_* macros
> ---
>  xen/arch/x86/include/asm/apicdef.h   |   2 +-
>  xen/arch/x86/include/asm/config.h    |   2 +-
>  xen/arch/x86/include/asm/hpet.h      |   2 +-
>  xen/arch/x86/include/asm/msi.h       |   2 +-
>  xen/arch/x86/include/asm/msr-index.h | 182 +++++++++++++--------------
>  xen/arch/x86/include/asm/pci.h       |   8 +-
>  xen/arch/x86/include/asm/x86-defns.h |  22 ++--
>  7 files changed, 110 insertions(+), 110 deletions(-)
> 
> diff --git a/xen/arch/x86/include/asm/apicdef.h b/xen/arch/x86/include/asm/apicdef.h
> index a261436993..8d1b0087d4 100644
> --- a/xen/arch/x86/include/asm/apicdef.h
> +++ b/xen/arch/x86/include/asm/apicdef.h
> @@ -8,7 +8,7 @@
>   * Ingo Molnar <mingo@redhat.com>, 1999, 2000
>   */
>  
> -#define		APIC_DEFAULT_PHYS_BASE	0xfee00000
> +#define		APIC_DEFAULT_PHYS_BASE	0xfee00000U
>   
>  #define		APIC_ID		0x20
>  #define			APIC_ID_MASK		(0xFFu<<24)
> diff --git a/xen/arch/x86/include/asm/config.h b/xen/arch/x86/include/asm/config.h
> index fbc4bb3416..bbced338be 100644
> --- a/xen/arch/x86/include/asm/config.h
> +++ b/xen/arch/x86/include/asm/config.h
> @@ -257,7 +257,7 @@ extern unsigned char boot_edid_info[128];
>  #endif /* CONFIG_PV32 */
>  
>  #define MACH2PHYS_COMPAT_VIRT_START    HYPERVISOR_COMPAT_VIRT_START
> -#define MACH2PHYS_COMPAT_VIRT_END      0xFFE00000
> +#define MACH2PHYS_COMPAT_VIRT_END      0xFFE00000U
>  #define MACH2PHYS_COMPAT_NR_ENTRIES(d) \
>      ((MACH2PHYS_COMPAT_VIRT_END-MACH2PHYS_COMPAT_VIRT_START(d))>>2)
>  
> diff --git a/xen/arch/x86/include/asm/hpet.h b/xen/arch/x86/include/asm/hpet.h
> index 9919f74730..c5e8e9c8db 100644
> --- a/xen/arch/x86/include/asm/hpet.h
> +++ b/xen/arch/x86/include/asm/hpet.h
> @@ -41,7 +41,7 @@
>  #define HPET_TN_ROUTE		0x3e00
>  #define HPET_TN_FSB		0x4000
>  #define HPET_TN_FSB_CAP		0x8000
> -#define HPET_TN_RESERVED	0xffff0081
> +#define HPET_TN_RESERVED	0xffff0081U
>  #define HPET_TN_INT_ROUTE_CAP	(0xffffffffULL << 32)
>  
>  
> diff --git a/xen/arch/x86/include/asm/msi.h b/xen/arch/x86/include/asm/msi.h
> index a53ade95c9..d89723d009 100644
> --- a/xen/arch/x86/include/asm/msi.h
> +++ b/xen/arch/x86/include/asm/msi.h
> @@ -37,7 +37,7 @@
>   */
>  
>  #define MSI_ADDR_BASE_HI            0
> -#define MSI_ADDR_BASE_LO            0xfee00000
> +#define MSI_ADDR_BASE_LO            0xfee00000U
>  #define MSI_ADDR_BASE_MASK          (~0xfffff)
>  #define MSI_ADDR_HEADER             MSI_ADDR_BASE_LO
>  
> diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
> index 11ffed543a..718f8f860d 100644
> --- a/xen/arch/x86/include/asm/msr-index.h
> +++ b/xen/arch/x86/include/asm/msr-index.h
> @@ -22,7 +22,7 @@
>  #define  APIC_BASE_BSP                      (_AC(1, ULL) <<  8)
>  #define  APIC_BASE_EXTD                     (_AC(1, ULL) << 10)
>  #define  APIC_BASE_ENABLE                   (_AC(1, ULL) << 11)
> -#define  APIC_BASE_ADDR_MASK                0x000ffffffffff000ULL
> +#define  APIC_BASE_ADDR_MASK                _AC(0x000ffffffffff000, ULL)

This is not used by assembly code?


>  #define MSR_TEST_CTRL                       0x00000033
>  #define  TEST_CTRL_SPLITLOCK_DETECT         (_AC(1, ULL) << 29)
> @@ -30,7 +30,7 @@
>  
>  #define MSR_INTEL_CORE_THREAD_COUNT         0x00000035
>  #define  MSR_CTC_THREAD_MASK                0x0000ffff
> -#define  MSR_CTC_CORE_MASK                  0xffff0000
> +#define  MSR_CTC_CORE_MASK                  _AC(0xffff0000, U)

Also this one is not?


>  #define MSR_SPEC_CTRL                       0x00000048
>  #define  SPEC_CTRL_IBRS                     (_AC(1, ULL) <<  0)
> @@ -186,7 +186,7 @@
>  #define MSR_UARCH_MISC_CTRL                 0x00001b01
>  #define  UARCH_CTRL_DOITM                   (_AC(1, ULL) <<  0)
>  
> -#define MSR_EFER                            0xc0000080 /* Extended Feature Enable Register */
> +#define MSR_EFER                            _AC(0xc0000080, U) /* Extended Feature Enable Register */
>  #define  EFER_SCE                           (_AC(1, ULL) <<  0) /* SYSCALL Enable */
>  #define  EFER_LME                           (_AC(1, ULL) <<  8) /* Long Mode Enable */
>  #define  EFER_LMA                           (_AC(1, ULL) << 10) /* Long Mode Active */
> @@ -199,35 +199,35 @@
>      (EFER_SCE | EFER_LME | EFER_LMA | EFER_NXE | EFER_SVME | EFER_FFXSE | \
>       EFER_AIBRSE)
>  
> -#define MSR_STAR                            0xc0000081 /* legacy mode SYSCALL target */
> -#define MSR_LSTAR                           0xc0000082 /* long mode SYSCALL target */
> -#define MSR_CSTAR                           0xc0000083 /* compat mode SYSCALL target */
> -#define MSR_SYSCALL_MASK                    0xc0000084 /* EFLAGS mask for syscall */
> -#define MSR_FS_BASE                         0xc0000100 /* 64bit FS base */
> -#define MSR_GS_BASE                         0xc0000101 /* 64bit GS base */
> -#define MSR_SHADOW_GS_BASE                  0xc0000102 /* SwapGS GS shadow */
> -#define MSR_TSC_AUX                         0xc0000103 /* Auxiliary TSC */
> +#define MSR_STAR                            _AC(0xc0000081, U) /* legacy mode SYSCALL target */
> +#define MSR_LSTAR                           _AC(0xc0000082, U) /* long mode SYSCALL target */
> +#define MSR_CSTAR                           _AC(0xc0000083, U) /* compat mode SYSCALL target */
> +#define MSR_SYSCALL_MASK                    _AC(0xc0000084, U) /* EFLAGS mask for syscall */
> +#define MSR_FS_BASE                         _AC(0xc0000100, U) /* 64bit FS base */
> +#define MSR_GS_BASE                         _AC(0xc0000101, U) /* 64bit GS base */
> +#define MSR_SHADOW_GS_BASE                  _AC(0xc0000102, U) /* SwapGS GS shadow */
> +#define MSR_TSC_AUX                         _AC(0xc0000103, U) /* Auxiliary TSC */

None of these set seems to be used by assembly code


> -#define MSR_K8_SYSCFG                       0xc0010010
> +#define MSR_K8_SYSCFG                       _AC(0xc0010010, U)

This one also is not?


>  #define  SYSCFG_MTRR_FIX_DRAM_EN            (_AC(1, ULL) << 18)
>  #define  SYSCFG_MTRR_FIX_DRAM_MOD_EN        (_AC(1, ULL) << 19)
>  #define  SYSCFG_MTRR_VAR_DRAM_EN            (_AC(1, ULL) << 20)
>  #define  SYSCFG_MTRR_TOM2_EN                (_AC(1, ULL) << 21)
>  #define  SYSCFG_TOM2_FORCE_WB               (_AC(1, ULL) << 22)
>  
> -#define MSR_K8_IORR_BASE0                   0xc0010016
> -#define MSR_K8_IORR_MASK0                   0xc0010017
> -#define MSR_K8_IORR_BASE1                   0xc0010018
> -#define MSR_K8_IORR_MASK1                   0xc0010019
> +#define MSR_K8_IORR_BASE0                   _AC(0xc0010016, U)
> +#define MSR_K8_IORR_MASK0                   _AC(0xc0010017, U)
> +#define MSR_K8_IORR_BASE1                   _AC(0xc0010018, U)
> +#define MSR_K8_IORR_MASK1                   _AC(0xc0010019, U)

These ones are not?


> -#define MSR_K8_TSEG_BASE                    0xc0010112 /* AMD doc: SMMAddr */
> -#define MSR_K8_TSEG_MASK                    0xc0010113 /* AMD doc: SMMMask */
> +#define MSR_K8_TSEG_BASE                    _AC(0xc0010112, U) /* AMD doc: SMMAddr */
> +#define MSR_K8_TSEG_MASK                    _AC(0xc0010113, U) /* AMD doc: SMMMask */

These ones are not?

>  
> -#define MSR_K8_VM_CR                        0xc0010114
> +#define MSR_K8_VM_CR                        _AC(0xc0010114, U)

Also this one


>  #define  VM_CR_INIT_REDIRECTION             (_AC(1, ULL) <<  1)
>  #define  VM_CR_SVM_DISABLE                  (_AC(1, ULL) <<  4)
>  
> -#define MSR_VIRT_SPEC_CTRL                  0xc001011f /* Layout matches MSR_SPEC_CTRL */
> +#define MSR_VIRT_SPEC_CTRL                  _AC(0xc001011f, U) /* Layout matches MSR_SPEC_CTRL */

And this one.

What am I missing? Did you also add _AC to all the places where the
constants end up being used in asm inline? Because I don't think that
asm inline needs the _AC...


>  #define MSR_AMD_CSTATE_CFG                  0xc0010296
>  
> @@ -313,7 +313,7 @@
>  #define CMCI_EN 			(1UL<<30)
>  #define CMCI_THRESHOLD_MASK		0x7FFF
>  
> -#define MSR_AMD64_MC0_MASK		0xc0010044
> +#define MSR_AMD64_MC0_MASK		0xc0010044U
>  
>  #define MSR_IA32_MCx_CTL(x)		(MSR_IA32_MC0_CTL + 4*(x))
>  #define MSR_IA32_MCx_STATUS(x)		(MSR_IA32_MC0_STATUS + 4*(x))
> @@ -345,82 +345,82 @@
>  
>  /* K7/K8 MSRs. Not complete. See the architecture manual for a more
>     complete list. */
> -#define MSR_K7_EVNTSEL0			0xc0010000
> -#define MSR_K7_PERFCTR0			0xc0010004
> -#define MSR_K7_EVNTSEL1			0xc0010001
> -#define MSR_K7_PERFCTR1			0xc0010005
> -#define MSR_K7_EVNTSEL2			0xc0010002
> -#define MSR_K7_PERFCTR2			0xc0010006
> -#define MSR_K7_EVNTSEL3			0xc0010003
> -#define MSR_K7_PERFCTR3			0xc0010007
> -#define MSR_K8_TOP_MEM1			0xc001001a
> -#define MSR_K8_TOP_MEM2			0xc001001d
> -
> -#define MSR_K8_HWCR			0xc0010015
> +#define MSR_K7_EVNTSEL0			0xc0010000U
> +#define MSR_K7_PERFCTR0			0xc0010004U
> +#define MSR_K7_EVNTSEL1			0xc0010001U
> +#define MSR_K7_PERFCTR1			0xc0010005U
> +#define MSR_K7_EVNTSEL2			0xc0010002U
> +#define MSR_K7_PERFCTR2			0xc0010006U
> +#define MSR_K7_EVNTSEL3			0xc0010003U
> +#define MSR_K7_PERFCTR3			0xc0010007U
> +#define MSR_K8_TOP_MEM1			0xc001001aU
> +#define MSR_K8_TOP_MEM2			0xc001001dU
> +
> +#define MSR_K8_HWCR			0xc0010015U
>  #define K8_HWCR_TSC_FREQ_SEL		(1ULL << 24)
>  #define K8_HWCR_CPUID_USER_DIS		(1ULL << 35)
>  
> -#define MSR_K7_FID_VID_CTL		0xc0010041
> -#define MSR_K7_FID_VID_STATUS		0xc0010042
> -#define MSR_K8_PSTATE_LIMIT		0xc0010061
> -#define MSR_K8_PSTATE_CTRL		0xc0010062
> -#define MSR_K8_PSTATE_STATUS		0xc0010063
> -#define MSR_K8_PSTATE0			0xc0010064
> -#define MSR_K8_PSTATE1			0xc0010065
> -#define MSR_K8_PSTATE2			0xc0010066
> -#define MSR_K8_PSTATE3			0xc0010067
> -#define MSR_K8_PSTATE4			0xc0010068
> -#define MSR_K8_PSTATE5			0xc0010069
> -#define MSR_K8_PSTATE6			0xc001006A
> -#define MSR_K8_PSTATE7			0xc001006B
> -#define MSR_K8_ENABLE_C1E		0xc0010055
> -#define MSR_K8_VM_HSAVE_PA		0xc0010117
> -
> -#define MSR_AMD_FAM15H_EVNTSEL0		0xc0010200
> -#define MSR_AMD_FAM15H_PERFCTR0		0xc0010201
> -#define MSR_AMD_FAM15H_EVNTSEL1		0xc0010202
> -#define MSR_AMD_FAM15H_PERFCTR1		0xc0010203
> -#define MSR_AMD_FAM15H_EVNTSEL2		0xc0010204
> -#define MSR_AMD_FAM15H_PERFCTR2		0xc0010205
> -#define MSR_AMD_FAM15H_EVNTSEL3		0xc0010206
> -#define MSR_AMD_FAM15H_PERFCTR3		0xc0010207
> -#define MSR_AMD_FAM15H_EVNTSEL4		0xc0010208
> -#define MSR_AMD_FAM15H_PERFCTR4		0xc0010209
> -#define MSR_AMD_FAM15H_EVNTSEL5		0xc001020a
> -#define MSR_AMD_FAM15H_PERFCTR5		0xc001020b
> -
> -#define MSR_AMD_L7S0_FEATURE_MASK	0xc0011002
> -#define MSR_AMD_THRM_FEATURE_MASK	0xc0011003
> -#define MSR_K8_FEATURE_MASK		0xc0011004
> -#define MSR_K8_EXT_FEATURE_MASK		0xc0011005
> +#define MSR_K7_FID_VID_CTL		0xc0010041U
> +#define MSR_K7_FID_VID_STATUS		0xc0010042U
> +#define MSR_K8_PSTATE_LIMIT		0xc0010061U
> +#define MSR_K8_PSTATE_CTRL		0xc0010062U
> +#define MSR_K8_PSTATE_STATUS		0xc0010063U
> +#define MSR_K8_PSTATE0			0xc0010064U
> +#define MSR_K8_PSTATE1			0xc0010065U
> +#define MSR_K8_PSTATE2			0xc0010066U
> +#define MSR_K8_PSTATE3			0xc0010067U
> +#define MSR_K8_PSTATE4			0xc0010068U
> +#define MSR_K8_PSTATE5			0xc0010069U
> +#define MSR_K8_PSTATE6			0xc001006AU
> +#define MSR_K8_PSTATE7			0xc001006BU
> +#define MSR_K8_ENABLE_C1E		0xc0010055U
> +#define MSR_K8_VM_HSAVE_PA		0xc0010117U
> +
> +#define MSR_AMD_FAM15H_EVNTSEL0		0xc0010200U
> +#define MSR_AMD_FAM15H_PERFCTR0		0xc0010201U
> +#define MSR_AMD_FAM15H_EVNTSEL1		0xc0010202U
> +#define MSR_AMD_FAM15H_PERFCTR1		0xc0010203U
> +#define MSR_AMD_FAM15H_EVNTSEL2		0xc0010204U
> +#define MSR_AMD_FAM15H_PERFCTR2		0xc0010205U
> +#define MSR_AMD_FAM15H_EVNTSEL3		0xc0010206U
> +#define MSR_AMD_FAM15H_PERFCTR3		0xc0010207U
> +#define MSR_AMD_FAM15H_EVNTSEL4		0xc0010208U
> +#define MSR_AMD_FAM15H_PERFCTR4		0xc0010209U
> +#define MSR_AMD_FAM15H_EVNTSEL5		0xc001020aU
> +#define MSR_AMD_FAM15H_PERFCTR5		0xc001020bU
> +
> +#define MSR_AMD_L7S0_FEATURE_MASK	0xc0011002U
> +#define MSR_AMD_THRM_FEATURE_MASK	0xc0011003U
> +#define MSR_K8_FEATURE_MASK			0xc0011004U
> +#define MSR_K8_EXT_FEATURE_MASK		0xc0011005U
>  
>  /* AMD64 MSRs */
> -#define MSR_AMD64_NB_CFG		0xc001001f
> +#define MSR_AMD64_NB_CFG		0xc001001fU
>  #define AMD64_NB_CFG_CF8_EXT_ENABLE_BIT	46
> -#define MSR_AMD64_LS_CFG		0xc0011020
> -#define MSR_AMD64_IC_CFG		0xc0011021
> -#define MSR_AMD64_DC_CFG		0xc0011022
> -#define MSR_AMD64_DE_CFG		0xc0011029
> +#define MSR_AMD64_LS_CFG		0xc0011020U
> +#define MSR_AMD64_IC_CFG		0xc0011021U
> +#define MSR_AMD64_DC_CFG		0xc0011022U
> +#define MSR_AMD64_DE_CFG		0xc0011029U
>  #define AMD64_DE_CFG_LFENCE_SERIALISE	(_AC(1, ULL) << 1)
> -#define MSR_AMD64_EX_CFG		0xc001102c
> -#define MSR_AMD64_DE_CFG2		0xc00110e3
> +#define MSR_AMD64_EX_CFG		0xc001102cU
> +#define MSR_AMD64_DE_CFG2		0xc00110e3U
>  
> -#define MSR_AMD64_DR0_ADDRESS_MASK	0xc0011027
> -#define MSR_AMD64_DR1_ADDRESS_MASK	0xc0011019
> -#define MSR_AMD64_DR2_ADDRESS_MASK	0xc001101a
> -#define MSR_AMD64_DR3_ADDRESS_MASK	0xc001101b
> +#define MSR_AMD64_DR0_ADDRESS_MASK	0xc0011027U
> +#define MSR_AMD64_DR1_ADDRESS_MASK	0xc0011019U
> +#define MSR_AMD64_DR2_ADDRESS_MASK	0xc001101aU
> +#define MSR_AMD64_DR3_ADDRESS_MASK	0xc001101bU
>  
>  /* AMD Family10h machine check MSRs */
> -#define MSR_F10_MC4_MISC1		0xc0000408
> -#define MSR_F10_MC4_MISC2		0xc0000409
> -#define MSR_F10_MC4_MISC3		0xc000040A
> +#define MSR_F10_MC4_MISC1		0xc0000408U
> +#define MSR_F10_MC4_MISC2		0xc0000409U
> +#define MSR_F10_MC4_MISC3		0xc000040AU
>  
>  /* AMD Family10h Bus Unit MSRs */
> -#define MSR_F10_BU_CFG 		0xc0011023
> -#define MSR_F10_BU_CFG2		0xc001102a
> +#define MSR_F10_BU_CFG 		0xc0011023U
> +#define MSR_F10_BU_CFG2		0xc001102aU
>  
>  /* Other AMD Fam10h MSRs */
> -#define MSR_FAM10H_MMIO_CONF_BASE	0xc0010058
> +#define MSR_FAM10H_MMIO_CONF_BASE	0xc0010058U
>  #define FAM10H_MMIO_CONF_ENABLE         (1<<0)
>  #define FAM10H_MMIO_CONF_BUSRANGE_MASK	0xf
>  #define FAM10H_MMIO_CONF_BUSRANGE_SHIFT 2
> @@ -429,22 +429,22 @@
>  
>  /* AMD Microcode MSRs */
>  #define MSR_AMD_PATCHLEVEL		0x0000008b
> -#define MSR_AMD_PATCHLOADER		0xc0010020
> +#define MSR_AMD_PATCHLOADER		0xc0010020U
>  
>  /* AMD TSC RATE MSR */
> -#define MSR_AMD64_TSC_RATIO		0xc0000104
> +#define MSR_AMD64_TSC_RATIO		0xc0000104U
>  
>  /* AMD Lightweight Profiling MSRs */
> -#define MSR_AMD64_LWP_CFG		0xc0000105
> -#define MSR_AMD64_LWP_CBADDR		0xc0000106
> +#define MSR_AMD64_LWP_CFG		0xc0000105U
> +#define MSR_AMD64_LWP_CBADDR		0xc0000106U
>  
>  /* AMD OS Visible Workaround MSRs */
> -#define MSR_AMD_OSVW_ID_LENGTH          0xc0010140
> -#define MSR_AMD_OSVW_STATUS             0xc0010141
> +#define MSR_AMD_OSVW_ID_LENGTH          0xc0010140U
> +#define MSR_AMD_OSVW_STATUS             0xc0010141U
>  
>  /* AMD Protected Processor Inventory Number */
> -#define MSR_AMD_PPIN_CTL                0xc00102f0
> -#define MSR_AMD_PPIN                    0xc00102f1
> +#define MSR_AMD_PPIN_CTL                0xc00102f0U
> +#define MSR_AMD_PPIN                    0xc00102f1U
>  
>  /* VIA Cyrix defined MSRs*/
>  #define MSR_VIA_FCR			0x00001107
> diff --git a/xen/arch/x86/include/asm/pci.h b/xen/arch/x86/include/asm/pci.h
> index f4a58c8acf..e1dd12eb19 100644
> --- a/xen/arch/x86/include/asm/pci.h
> +++ b/xen/arch/x86/include/asm/pci.h
> @@ -3,10 +3,10 @@
>  
>  #include <xen/mm.h>
>  
> -#define CF8_BDF(cf8)     (  ((cf8) & 0x00ffff00) >> 8)
> -#define CF8_ADDR_LO(cf8) (   (cf8) & 0x000000fc)
> -#define CF8_ADDR_HI(cf8) (  ((cf8) & 0x0f000000) >> 16)
> -#define CF8_ENABLED(cf8) (!!((cf8) & 0x80000000))
> +#define CF8_BDF(cf8)     (  ((cf8) & 0x00ffff00U) >> 8)
> +#define CF8_ADDR_LO(cf8) (   (cf8) & 0x000000fcU)
> +#define CF8_ADDR_HI(cf8) (  ((cf8) & 0x0f000000U) >> 16)
> +#define CF8_ENABLED(cf8) (!!((cf8) & 0x80000000U))
>  
>  #define IS_SNB_GFX(id) (id == 0x01068086 || id == 0x01168086 \
>                          || id == 0x01268086 || id == 0x01028086 \
> diff --git a/xen/arch/x86/include/asm/x86-defns.h b/xen/arch/x86/include/asm/x86-defns.h
> index 5838631ef6..48d7a3b7af 100644
> --- a/xen/arch/x86/include/asm/x86-defns.h
> +++ b/xen/arch/x86/include/asm/x86-defns.h
> @@ -30,17 +30,17 @@
>  /*
>   * Intel CPU flags in CR0
>   */
> -#define X86_CR0_PE              0x00000001 /* Enable Protected Mode    (RW) */
> -#define X86_CR0_MP              0x00000002 /* Monitor Coprocessor      (RW) */
> -#define X86_CR0_EM              0x00000004 /* Require FPU Emulation    (RO) */
> -#define X86_CR0_TS              0x00000008 /* Task Switched            (RW) */
> -#define X86_CR0_ET              0x00000010 /* Extension type           (RO) */
> -#define X86_CR0_NE              0x00000020 /* Numeric Error Reporting  (RW) */
> -#define X86_CR0_WP              0x00010000 /* Supervisor Write Protect (RW) */
> -#define X86_CR0_AM              0x00040000 /* Alignment Checking       (RW) */
> -#define X86_CR0_NW              0x20000000 /* Not Write-Through        (RW) */
> -#define X86_CR0_CD              0x40000000 /* Cache Disable            (RW) */
> -#define X86_CR0_PG              0x80000000 /* Paging                   (RW) */
> +#define X86_CR0_PE              _AC(0x00000001, UL) /* Enable Protected Mode    (RW) */
> +#define X86_CR0_MP              _AC(0x00000002, UL) /* Monitor Coprocessor      (RW) */
> +#define X86_CR0_EM              _AC(0x00000004, UL) /* Require FPU Emulation    (RO) */
> +#define X86_CR0_TS              _AC(0x00000008, UL) /* Task Switched            (RW) */
> +#define X86_CR0_ET              _AC(0x00000010, UL) /* Extension type           (RO) */
> +#define X86_CR0_NE              _AC(0x00000020, UL) /* Numeric Error Reporting  (RW) */
> +#define X86_CR0_WP              _AC(0x00010000, UL) /* Supervisor Write Protect (RW) */
> +#define X86_CR0_AM              _AC(0x00040000, UL) /* Alignment Checking       (RW) */
> +#define X86_CR0_NW              _AC(0x20000000, UL) /* Not Write-Through        (RW) */
> +#define X86_CR0_CD              _AC(0x40000000, UL) /* Cache Disable            (RW) */
> +#define X86_CR0_PG              _AC(0x80000000, UL) /* Paging                   (RW) */
 
While "UL" here instead of "U"? They are all 32-bit values.


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 23:00:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 23:00:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610066.949304 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlzze-0007NY-EE; Thu, 28 Sep 2023 23:00:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610066.949304; Thu, 28 Sep 2023 23:00:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qlzze-0007NR-BP; Thu, 28 Sep 2023 23:00:26 +0000
Received: by outflank-mailman (input) for mailman id 610066;
 Thu, 28 Sep 2023 23:00:24 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qlzzc-0007NH-IM
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 23:00:24 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cd70e398-5e52-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 01:00:22 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 01F51B81E16;
 Thu, 28 Sep 2023 23:00:22 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 349A9C433C7;
 Thu, 28 Sep 2023 23:00:20 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cd70e398-5e52-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695942021;
	bh=oWiDcTCWnTPA+Ezpxy3EMg9XaW24OleLY1S7s7vSfeU=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=BLgPHA+Z1pyoroorVpLkF7jnujyIB3Fy8seNhTDa32Y3PTcXFhuLrz9/Ft6uII9y6
	 56WSr3pAVm/vFeyLmIhHI2eLqsPuyBNceIRkWa6VmZ9mAAE05LTHSBCCo1mN1OMcPP
	 7Mge4psiRErcn7vAhxrKV0e8un6zyGy/oHF2gvvGDZ2p+YoOUyitTzan2jKQMsCSHz
	 qc2tORzcJlXwPD7EWx0zultcAGG7GCQ8zYa7//W1PRS1RE2fVbJjQRHX65fw9ucYEA
	 rpqgmpGH4VNiEUYc8ZLPLDjoX9jqq9ixwaok4PFCrAa87zYZkytPEbhpkCkx2d+lMN
	 wDHKxLxHknhXA==
Date: Thu, 28 Sep 2023 16:00:18 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    sstabellini@kernel.org, jbeulich@suse.com, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Liu <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>
Subject: Re: [XEN PATCH v7 4/4] xen/x86: address violations of MISRA C:2012
 Rule 7.2
In-Reply-To: <bdd904ece02fdd6365db4911b411ba8b20b7debc.1695913900.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309281559200.1996340@ubuntu-linux-20-04-desktop>
References: <cover.1695913900.git.simone.ballarin@bugseng.com> <bdd904ece02fdd6365db4911b411ba8b20b7debc.1695913900.git.simone.ballarin@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Thu, 28 Sep 2023, Simone Ballarin wrote:
> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
> headline states:
> "A 'u' or 'U' suffix shall be applied to all integer constants
> that are represented in an unsigned type".
> 
> Add the 'U' suffix to integers literals with unsigned type.
> 
> For the sake of uniformity, the following change is made:
> - add the 'U' suffix to switch cases in 'cpuid.c'
> 
> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


> ---
> Changes in v7:
> - change cast to long in a cast to unsigned long in INVALID_PERCPU_AREA
>   to match the type of the first operand
> - add missing Signed-off-by tags
> Changes in v6:
> - new patch obtained by splitting X86 related changes from
> "xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
> ---
>  xen/arch/x86/apic.c       |  2 +-
>  xen/arch/x86/cpu-policy.c | 18 +++++++++---------
>  xen/arch/x86/cpuid.c      |  8 ++++----
>  xen/arch/x86/extable.c    |  2 +-
>  xen/arch/x86/percpu.c     |  2 +-
>  xen/arch/x86/psr.c        |  2 +-
>  xen/arch/x86/spec_ctrl.c  | 12 ++++++------
>  7 files changed, 23 insertions(+), 23 deletions(-)
> 
> diff --git a/xen/arch/x86/apic.c b/xen/arch/x86/apic.c
> index f1264ce7ed..6a43d81d2a 100644
> --- a/xen/arch/x86/apic.c
> +++ b/xen/arch/x86/apic.c
> @@ -1191,7 +1191,7 @@ static void __init calibrate_APIC_clock(void)
>       * Setup the APIC counter to maximum. There is no way the lapic
>       * can underflow in the 100ms detection time frame.
>       */
> -    __setup_APIC_LVTT(0xffffffff);
> +    __setup_APIC_LVTT(0xffffffffU);
>  
>      bus_freq = calibrate_apic_timer();
>      if ( !bus_freq )
> diff --git a/xen/arch/x86/cpu-policy.c b/xen/arch/x86/cpu-policy.c
> index 81e574390f..423932bc13 100644
> --- a/xen/arch/x86/cpu-policy.c
> +++ b/xen/arch/x86/cpu-policy.c
> @@ -321,7 +321,7 @@ static void recalculate_misc(struct cpu_policy *p)
>          p->extd.vendor_edx = p->basic.vendor_edx;
>  
>          p->extd.raw_fms = p->basic.raw_fms;
> -        p->extd.raw[0x1].b &= 0xff00ffff;
> +        p->extd.raw[0x1].b &= 0xff00ffffU;
>          p->extd.e1d |= p->basic._1d & CPUID_COMMON_1D_FEATURES;
>  
>          p->extd.raw[0x8].a &= 0x0000ffff; /* GuestMaxPhysAddr hidden. */
> @@ -378,10 +378,10 @@ static void __init calculate_host_policy(void)
>       * this information.
>       */
>      if ( cpu_has_lfence_dispatch )
> -        max_extd_leaf = max(max_extd_leaf, 0x80000021);
> +        max_extd_leaf = max(max_extd_leaf, 0x80000021U);
>  
> -    p->extd.max_leaf = 0x80000000 | min_t(uint32_t, max_extd_leaf & 0xffff,
> -                                          ARRAY_SIZE(p->extd.raw) - 1);
> +    p->extd.max_leaf = 0x80000000U | min_t(uint32_t, max_extd_leaf & 0xffff,
> +                                           ARRAY_SIZE(p->extd.raw) - 1);
>  
>      x86_cpu_featureset_to_policy(boot_cpu_data.x86_capability, p);
>      recalculate_xstate(p);
> @@ -793,11 +793,11 @@ void recalculate_cpuid_policy(struct domain *d)
>  
>      p->basic.max_leaf   = min(p->basic.max_leaf,   max->basic.max_leaf);
>      p->feat.max_subleaf = min(p->feat.max_subleaf, max->feat.max_subleaf);
> -    p->extd.max_leaf    = 0x80000000 | min(p->extd.max_leaf & 0xffff,
> -                                           ((p->x86_vendor & (X86_VENDOR_AMD |
> -                                                              X86_VENDOR_HYGON))
> -                                            ? CPUID_GUEST_NR_EXTD_AMD
> -                                            : CPUID_GUEST_NR_EXTD_INTEL) - 1);
> +    p->extd.max_leaf    = 0x80000000U | min(p->extd.max_leaf & 0xffff,
> +                                            ((p->x86_vendor & (X86_VENDOR_AMD |
> +                                                               X86_VENDOR_HYGON))
> +                                             ? CPUID_GUEST_NR_EXTD_AMD
> +                                             : CPUID_GUEST_NR_EXTD_INTEL) - 1);
>  
>      x86_cpu_policy_to_featureset(p, fs);
>      x86_cpu_policy_to_featureset(max, max_fs);
> diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c
> index 455a09b2dd..7290a979c6 100644
> --- a/xen/arch/x86/cpuid.c
> +++ b/xen/arch/x86/cpuid.c
> @@ -93,7 +93,7 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
>          }
>          break;
>  
> -    case 0x40000000 ... 0x400000ff:
> +    case 0x40000000U ... 0x400000ffU:
>          if ( is_viridian_domain(d) )
>              return cpuid_viridian_leaves(v, leaf, subleaf, res);
>  
> @@ -103,10 +103,10 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
>           * Intel reserve up until 0x4fffffff for hypervisor use.  AMD reserve
>           * only until 0x400000ff, but we already use double that.
>           */
> -    case 0x40000100 ... 0x400001ff:
> +    case 0x40000100U ... 0x400001ffU:
>          return cpuid_hypervisor_leaves(v, leaf, subleaf, res);
>  
> -    case 0x80000000 ... 0x80000000 + CPUID_GUEST_NR_EXTD - 1:
> +    case 0x80000000U ... 0x80000000U + CPUID_GUEST_NR_EXTD - 1:
>          ASSERT((p->extd.max_leaf & 0xffff) < ARRAY_SIZE(p->extd.raw));
>          if ( (leaf & 0xffff) > min_t(uint32_t, p->extd.max_leaf & 0xffff,
>                                       ARRAY_SIZE(p->extd.raw) - 1) )
> @@ -352,7 +352,7 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
>          }
>          break;
>  
> -    case 0x80000001:
> +    case 0x80000001U:
>          /* SYSCALL is hidden outside of long mode on Intel. */
>          if ( p->x86_vendor == X86_VENDOR_INTEL &&
>               is_hvm_domain(d) && !hvm_long_mode_active(v) )
> diff --git a/xen/arch/x86/extable.c b/xen/arch/x86/extable.c
> index 74b14246e9..652010f413 100644
> --- a/xen/arch/x86/extable.c
> +++ b/xen/arch/x86/extable.c
> @@ -141,7 +141,7 @@ static int __init cf_check stub_selftest(void)
>            .rax = 0x0123456789abcdef,
>            .res.fields.trapnr = X86_EXC_GP },
>          { .opc = { endbr64, 0x02, 0x04, 0x04, 0xc3 }, /* add (%rsp,%rax),%al */
> -          .rax = 0xfedcba9876543210,
> +          .rax = 0xfedcba9876543210UL,
>            .res.fields.trapnr = X86_EXC_SS },
>          { .opc = { endbr64, 0xcc, 0xc3, 0xc3, 0xc3 }, /* int3 */
>            .res.fields.trapnr = X86_EXC_BP },
> diff --git a/xen/arch/x86/percpu.c b/xen/arch/x86/percpu.c
> index 288050cdba..3205eacea6 100644
> --- a/xen/arch/x86/percpu.c
> +++ b/xen/arch/x86/percpu.c
> @@ -12,7 +12,7 @@ unsigned long __per_cpu_offset[NR_CPUS];
>   * possible #PF at (NULL + a little) which has security implications in the
>   * context of PV guests.
>   */
> -#define INVALID_PERCPU_AREA (0x8000000000000000L - (long)__per_cpu_start)
> +#define INVALID_PERCPU_AREA (0x8000000000000000UL - (unsigned long)__per_cpu_start)
>  #define PERCPU_ORDER get_order_from_bytes(__per_cpu_data_end - __per_cpu_start)
>  
>  void __init percpu_init_areas(void)
> diff --git a/xen/arch/x86/psr.c b/xen/arch/x86/psr.c
> index 4c01813c4b..0b9631ac44 100644
> --- a/xen/arch/x86/psr.c
> +++ b/xen/arch/x86/psr.c
> @@ -191,7 +191,7 @@ static struct feat_node *feat_l2_cat;
>  static struct feat_node *feat_mba;
>  
>  /* Common functions */
> -#define cat_default_val(len) (0xffffffff >> (32 - (len)))
> +#define cat_default_val(len) (0xffffffffU >> (32 - (len)))
>  
>  /*
>   * get_cdp_data - get DATA COS register value from input COS ID.
> diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c
> index 6fd7d44ce4..c53632089e 100644
> --- a/xen/arch/x86/spec_ctrl.c
> +++ b/xen/arch/x86/spec_ctrl.c
> @@ -406,10 +406,10 @@ static void __init print_details(enum ind_thunk thunk)
>          cpuid_count(7, 0, &max, &tmp, &tmp, &_7d0);
>      if ( max >= 2 )
>          cpuid_count(7, 2, &tmp, &tmp, &tmp, &_7d2);
> -    if ( boot_cpu_data.extended_cpuid_level >= 0x80000008 )
> -        cpuid(0x80000008, &tmp, &e8b, &tmp, &tmp);
> -    if ( boot_cpu_data.extended_cpuid_level >= 0x80000021 )
> -        cpuid(0x80000021, &e21a, &tmp, &tmp, &tmp);
> +    if ( boot_cpu_data.extended_cpuid_level >= 0x80000008U )
> +        cpuid(0x80000008U, &tmp, &e8b, &tmp, &tmp);
> +    if ( boot_cpu_data.extended_cpuid_level >= 0x80000021U )
> +        cpuid(0x80000021U, &e21a, &tmp, &tmp, &tmp);
>      if ( cpu_has_arch_caps )
>          rdmsrl(MSR_ARCH_CAPABILITIES, caps);
>  
> @@ -1612,8 +1612,8 @@ void __init init_speculation_mitigations(void)
>           * TODO: Adjust cpu_has_svm_spec_ctrl to be usable earlier on boot.
>           */
>          if ( opt_msr_sc_hvm &&
> -             (boot_cpu_data.extended_cpuid_level >= 0x8000000a) &&
> -             (cpuid_edx(0x8000000a) & (1u << SVM_FEATURE_SPEC_CTRL)) )
> +             (boot_cpu_data.extended_cpuid_level >= 0x8000000aU) &&
> +             (cpuid_edx(0x8000000aU) & (1u << SVM_FEATURE_SPEC_CTRL)) )
>              setup_force_cpu_cap(X86_FEATURE_SC_MSR_HVM);
>      }
>  
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 23:19:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 23:19:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610076.949324 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0IM-00037S-3I; Thu, 28 Sep 2023 23:19:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610076.949324; Thu, 28 Sep 2023 23:19:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0IM-00037L-0k; Thu, 28 Sep 2023 23:19:46 +0000
Received: by outflank-mailman (input) for mailman id 610076;
 Thu, 28 Sep 2023 23:19:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Pu57=FM=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qm0IL-0002sR-2t
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 23:19:45 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 7ffe708f-5e55-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 01:19:42 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id A703E8284D90;
 Thu, 28 Sep 2023 18:19:39 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id w6jUswYTHsPN; Thu, 28 Sep 2023 18:19:38 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 2FD6082853BD;
 Thu, 28 Sep 2023 18:19:38 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id j6S8hQ2P1Xir; Thu, 28 Sep 2023 18:19:37 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id AE1018284D90;
 Thu, 28 Sep 2023 18:19:37 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7ffe708f-5e55-11ee-878b-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 2FD6082853BD
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695943178; bh=GkMCrT7OHafY6FbubsKZsxllbhsBSWueAlw69PuDHXQ=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=eUQcW3UraTUZ7nzSyESt7BmZo4mGA7FXigenvV1BSMrHuYnM5K3RXt8ZANlMG2Hrn
	 O3kR1XboTq22cniR0IwYkVkYjq48o9OBV8n0azI/8kq5ur1r1tvlNUh1N2oPkPXbjP
	 XnJtivZfww/pqa7Y7OvRfSgP1PxDEceNygqeznIQ=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH 0/3] Early exception handlers on Power
Date: Thu, 28 Sep 2023 18:19:26 -0500
Message-Id: <cover.1695942864.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Hello all,

This series implements a basic exception handler and the required
support infrastructure on Power. Currently the handler just dumps all
registers to the serial console and nothing else, but even this is
useful for debugging during early bring-up.

An additional patch to fix the stack setup code in head.S is also
included.

Thanks,

Shawn Anastasio (3):
  xen/ppc: Fix stack initialization in head.S
  xen/ppc: Add .text.exceptions section for exception vectors
  xen/ppc: Implement a basic exception handler

 xen/arch/ppc/include/asm/config.h    |   3 +
 xen/arch/ppc/include/asm/processor.h |  31 +++++++
 xen/arch/ppc/ppc64/Makefile          |   2 +
 xen/arch/ppc/ppc64/asm-offsets.c     |   1 +
 xen/arch/ppc/ppc64/exceptions-asm.S  | 122 +++++++++++++++++++++++++++
 xen/arch/ppc/ppc64/exceptions.c      | 102 ++++++++++++++++++++++
 xen/arch/ppc/ppc64/head.S            |   2 +-
 xen/arch/ppc/setup.c                 |  11 +++
 xen/arch/ppc/xen.lds.S               |   7 ++
 9 files changed, 280 insertions(+), 1 deletion(-)
 create mode 100644 xen/arch/ppc/ppc64/exceptions-asm.S
 create mode 100644 xen/arch/ppc/ppc64/exceptions.c

--
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 23:19:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 23:19:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610077.949335 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0IP-0003NV-B3; Thu, 28 Sep 2023 23:19:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610077.949335; Thu, 28 Sep 2023 23:19:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0IP-0003NM-7z; Thu, 28 Sep 2023 23:19:49 +0000
Received: by outflank-mailman (input) for mailman id 610077;
 Thu, 28 Sep 2023 23:19:47 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Pu57=FM=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qm0IN-0003MQ-Ri
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 23:19:47 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 80a0531a-5e55-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 01:19:44 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 9C44282853BD;
 Thu, 28 Sep 2023 18:19:41 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id W-RDBVAdorpd; Thu, 28 Sep 2023 18:19:38 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 677D382856BA;
 Thu, 28 Sep 2023 18:19:38 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id 7oh06pz4SJAY; Thu, 28 Sep 2023 18:19:38 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 116AD82856A3;
 Thu, 28 Sep 2023 18:19:38 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 80a0531a-5e55-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 677D382856BA
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695943178; bh=yq32tJnjVPi0z2MoxNzoP3nmP/w0YsbUxnmfU/xjCrc=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=OcDVyObeeEUYxXGFJnYIeEtpA8HetstdTgrgltg70dOZdVrQGVDD56vsKgK4LuErM
	 nM9/aN/NLpj5mdaML3wefZaqMbRmze1Y1U7TXAtvAmMmB/j4+VBB1n3TxWuXbCPWEm
	 9vnFMKWKajjKr9XJr6U8kO+VAN2QsALORwMoA+0U=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH 1/3] xen/ppc: Fix stack initialization in head.S
Date: Thu, 28 Sep 2023 18:19:27 -0500
Message-Id: <4d733b1f17215616b7ab00f0e44d2f483436b1d6.1695942864.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1695942864.git.sanastasio@raptorengineering.com>
References: <cover.1695942864.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

The code to set up the stack in head.S erroneously loads the bottom of
the stack (the symbol cpu0_boot_stack) into r1 instead of the top of the
stack (cpu0_boot_stack + STACK_SIZE).

Fixes: 3a4e6f67bc68 ("xen/ppc: Set up a basic C environment")
Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
 xen/arch/ppc/ppc64/head.S | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/ppc/ppc64/head.S b/xen/arch/ppc/ppc64/head.S
index e600ddb05f..6ce313aff8 100644
--- a/xen/arch/ppc/ppc64/head.S
+++ b/xen/arch/ppc/ppc64/head.S
@@ -46,7 +46,7 @@ ENTRY(start)
 .L_correct_address:
 
     /* set up the initial stack */
-    LOAD_REG_ADDR(%r1, cpu0_boot_stack)
+    LOAD_REG_ADDR(%r1, cpu0_boot_stack + STACK_SIZE)
     li      %r11, 0
     stdu    %r11, -STACK_FRAME_OVERHEAD(%r1)
 
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 23:19:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 23:19:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610075.949315 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0IK-0002se-Tr; Thu, 28 Sep 2023 23:19:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610075.949315; Thu, 28 Sep 2023 23:19:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0IK-0002sX-Pv; Thu, 28 Sep 2023 23:19:44 +0000
Received: by outflank-mailman (input) for mailman id 610075;
 Thu, 28 Sep 2023 23:19:44 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Pu57=FM=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qm0IK-0002sR-DA
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 23:19:44 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 80e37062-5e55-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 01:19:42 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id B139D82856BA;
 Thu, 28 Sep 2023 18:19:41 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id kpdzDgLxv7cd; Thu, 28 Sep 2023 18:19:39 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 0B06B82856A3;
 Thu, 28 Sep 2023 18:19:39 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id aFswkOKDHXrZ; Thu, 28 Sep 2023 18:19:38 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id 6651D8284D90;
 Thu, 28 Sep 2023 18:19:38 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 80e37062-5e55-11ee-878b-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 0B06B82856A3
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695943179; bh=WMnR/C+eSXX7X3ub66zwiAaYNV2V3FLjeRwKCWkfcKI=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=dHYb9QEidfv4o3XuTsIdia8HCBvDOUo1Rm9h2eMv2nFnWi/LVzI7x/9BTm74awf3y
	 ABxH4u/8ZHSiRiLEd72Q+qaGCa+ueJXuIKPMV7lm949p7iG6WCECGdQd+/dfyuEiue
	 qGMb03rzWjV/71/Tftxl67vS0B32CGhc54urHpco=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH 2/3] xen/ppc: Add .text.exceptions section for exception vectors
Date: Thu, 28 Sep 2023 18:19:28 -0500
Message-Id: <de5b99d79671a7fe11c5720797aaa6e3207661d1.1695942864.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1695942864.git.sanastasio@raptorengineering.com>
References: <cover.1695942864.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

On Power, the exception vectors must lie at a fixed address, depending
on the state of the Alternate Interrupt Location (AIL) field of the
Logical Partition Control Register (LPCR). Create a .text.exceptions
section in the linker script at an address suitable for AIL=3 plus an
accompanying assertion to pave the way for implementing exception
support.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
 xen/arch/ppc/include/asm/config.h | 3 +++
 xen/arch/ppc/xen.lds.S            | 7 +++++++
 2 files changed, 10 insertions(+)

diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm/config.h
index a11a09c570..e012b75beb 100644
--- a/xen/arch/ppc/include/asm/config.h
+++ b/xen/arch/ppc/include/asm/config.h
@@ -42,6 +42,9 @@
 
 #define XEN_VIRT_START _AC(0xc000000000000000, UL)
 
+/* Fixed address for start of the section containing exception vectors */
+#define EXCEPTION_VECTORS_START _AC(0xc000000000000100, UL)
+
 #define VMAP_VIRT_START (XEN_VIRT_START + GB(1))
 #define VMAP_VIRT_SIZE  GB(1)
 
diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S
index 9e46035155..9e888d7383 100644
--- a/xen/arch/ppc/xen.lds.S
+++ b/xen/arch/ppc/xen.lds.S
@@ -24,6 +24,10 @@ SECTIONS
         _stext = .;            /* Text section */
         *(.text.header)
 
+        . = ALIGN(256);
+        _stext_exceptions = .;
+        *(.text.exceptions)
+
         *(.text.cold)
         *(.text.unlikely .text.*_unlikely .text.unlikely.*)
 
@@ -184,3 +188,6 @@ ASSERT(IS_ALIGNED(__bss_end,        POINTER_ALIGN), "__bss_end is misaligned")
 
 ASSERT(!SIZEOF(.got),      ".got non-empty")
 ASSERT(!SIZEOF(.got.plt),  ".got.plt non-empty")
+
+ASSERT(_stext_exceptions == EXCEPTION_VECTORS_START, \
+       ".text.exceptions not at expected location -- .text.header too big?");
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 23:19:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 23:19:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610078.949345 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0IQ-0003dg-IO; Thu, 28 Sep 2023 23:19:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610078.949345; Thu, 28 Sep 2023 23:19:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0IQ-0003dZ-Eo; Thu, 28 Sep 2023 23:19:50 +0000
Received: by outflank-mailman (input) for mailman id 610078;
 Thu, 28 Sep 2023 23:19:48 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Pu57=FM=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qm0IO-0003MQ-H3
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 23:19:48 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8159849b-5e55-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 01:19:44 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id D566582856A3;
 Thu, 28 Sep 2023 18:19:42 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id 7ql7Jw5hxUIB; Thu, 28 Sep 2023 18:19:40 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id F37C782858AE;
 Thu, 28 Sep 2023 18:19:39 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id bsWFJGSbE-tz; Thu, 28 Sep 2023 18:19:39 -0500 (CDT)
Received: from raptor-ewks-026.rptsys.com (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id BF8438285A09;
 Thu, 28 Sep 2023 18:19:38 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8159849b-5e55-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com F37C782858AE
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1695943180; bh=sdfjUy1B7pxMGdguio7N5pjwT+r7o+wuvEx5hP1/rzw=;
	h=From:To:Date:Message-Id:MIME-Version;
	b=CjRoOL8UEQiUg7rcw03yTicFDLazRCQijNWvqIh+rOXv4Z+IAp5EZCQVsD23R+zyA
	 n2m1MW+uuPCUXamblAvIs6KF138wpQoksfW0oM0lZzDVjmLL8+NFtFLlyXxj0cHZKT
	 t6ZJPhTCs5np7NeAS9zur9uLFhjExd2MzuHpQHMk=
X-Virus-Scanned: amavisd-new at rptsys.com
From: Shawn Anastasio <sanastasio@raptorengineering.com>
To: xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
	Jan Beulich <jbeulich@suse.com>,
	Shawn Anastasio <sanastasio@raptorengineering.com>
Subject: [PATCH 3/3] xen/ppc: Implement a basic exception handler
Date: Thu, 28 Sep 2023 18:19:29 -0500
Message-Id: <edbe94f5ba1db05beb36fef6589b6a79a30c4a7c.1695942864.git.sanastasio@raptorengineering.com>
X-Mailer: git-send-email 2.30.2
In-Reply-To: <cover.1695942864.git.sanastasio@raptorengineering.com>
References: <cover.1695942864.git.sanastasio@raptorengineering.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

Implement a basic exception handler that dumps the CPU state to the
console, as well as the code required to set the correct exception
vector table's base address in setup.c.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
---
 xen/arch/ppc/include/asm/processor.h |  31 +++++++
 xen/arch/ppc/ppc64/Makefile          |   2 +
 xen/arch/ppc/ppc64/asm-offsets.c     |   1 +
 xen/arch/ppc/ppc64/exceptions-asm.S  | 122 +++++++++++++++++++++++++++
 xen/arch/ppc/ppc64/exceptions.c      | 102 ++++++++++++++++++++++
 xen/arch/ppc/setup.c                 |  11 +++
 6 files changed, 269 insertions(+)
 create mode 100644 xen/arch/ppc/ppc64/exceptions-asm.S
 create mode 100644 xen/arch/ppc/ppc64/exceptions.c

diff --git a/xen/arch/ppc/include/asm/processor.h b/xen/arch/ppc/include/asm/processor.h
index d3dd943c20..a01b62b8a4 100644
--- a/xen/arch/ppc/include/asm/processor.h
+++ b/xen/arch/ppc/include/asm/processor.h
@@ -103,6 +103,37 @@
 #define PVR_BE        0x0070
 #define PVR_PA6T      0x0090
 
+/* Exception Definitions */
+#define EXC_SYSTEM_RESET    0x0100 /* System Reset Interrupt */
+#define EXC_MACHINE_CHECK   0x0200 /* Machine Check Interrupt */
+#define EXC_DATA_STORAGE    0x0300 /* Data Storage Interrupt */
+#define EXC_DATA_SEGMENT    0x0380 /* Data Segment Interrupt */
+#define EXC_INSN_STORAGE    0x0400 /* Instruction Storage Interrupt */
+#define EXC_INSN_SEGMENT    0x0480 /* Instruction Segment Interrupt */
+#define EXC_EXTERNAL        0x0500 /* External Interrupt */
+#define EXC_ALIGNMENT       0x0600 /* Alignment Interrupt */
+#define EXC_PROGRAM         0x0700 /* Program Interrupt */
+#define EXC_FPU_UNAVAIL     0x0800 /* Floating-Point Unavailable Interrupt */
+#define EXC_DECREMENTER     0x0900 /* Decrementer Interrupt */
+#define EXC_H_DECREMENTER   0x0980 /* Hypervisor Decrementer Interrupt */
+#define EXC_PRIV_DOORBELL   0x0A00 /* Directed Privileged Doorbell Interrupt */
+#define EXC_SYSTEM_CALL     0x0C00 /* System Call Interrupt */
+#define EXC_TRACE           0x0D00 /* Trace Interrupt */
+#define EXC_H_DATA_STORAGE  0x0E00 /* Hypervisor Data Storage Interrupt */
+#define EXC_H_INSN_STORAGE  0x0E20 /* Hypervisor Instruction Storage Interrupt */
+#define EXC_H_EMUL_ASST     0x0E40 /* Hypervisor Emulation Assistance Interrupt */
+#define EXC_H_MAINTENANCE   0x0E60 /* Hypervisor Maintenance Interrupt */
+#define EXC_H_DOORBELL      0x0E80 /* Directed Hypervisor Doorbell Interrupt */
+#define EXC_H_VIRT          0x0EA0 /* Hypervisor Virtualization Interrupt */
+#define EXC_PERF_MON        0x0F00 /* Performance Monitor Interrupt */
+#define EXC_VECTOR_UNAVAIL  0x0F20 /* Vector Unavailable Interrupt */
+#define EXC_VSX_UNAVAIL     0x0F40 /* VSX Unavailable Interrupt */
+#define EXC_FACIL_UNAVAIL   0x0F60 /* Facility Unavailable Interrupt */
+#define EXC_H_FACIL_UNAVAIL 0x0F80 /* Hypervisor Facility Unavailable Interrupt */
+
+/* Base address of interrupt vector table when LPCR[AIL]=3 */
+#define AIL_VECTOR_BASE _AC(0xc000000000004000, UL)
+
 #ifndef __ASSEMBLY__
 
 #include <xen/types.h>
diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile
index 5b88355bb2..914bb21c40 100644
--- a/xen/arch/ppc/ppc64/Makefile
+++ b/xen/arch/ppc/ppc64/Makefile
@@ -1,2 +1,4 @@
+obj-y += exceptions.o
+obj-y += exceptions-asm.o
 obj-y += head.o
 obj-y += opal-calls.o
diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-offsets.c
index c15c1bf136..634d7260e3 100644
--- a/xen/arch/ppc/ppc64/asm-offsets.c
+++ b/xen/arch/ppc/ppc64/asm-offsets.c
@@ -46,6 +46,7 @@ void __dummy__(void)
     OFFSET(UREGS_dsisr, struct cpu_user_regs, dsisr);
     OFFSET(UREGS_cr, struct cpu_user_regs, cr);
     OFFSET(UREGS_fpscr, struct cpu_user_regs, fpscr);
+    OFFSET(UREGS_entry_vector, struct cpu_user_regs, entry_vector);
     DEFINE(UREGS_sizeof, sizeof(struct cpu_user_regs));
 
     OFFSET(OPAL_base, struct opal, base);
diff --git a/xen/arch/ppc/ppc64/exceptions-asm.S b/xen/arch/ppc/ppc64/exceptions-asm.S
new file mode 100644
index 0000000000..877df97c9b
--- /dev/null
+++ b/xen/arch/ppc/ppc64/exceptions-asm.S
@@ -0,0 +1,122 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+#include <asm/asm-defns.h>
+#include <asm/processor.h>
+
+    /* Helper to dump CPU state to struct cpu_user_regs pointed to by r1. */
+ENTRY(exception_common)
+    /* Save GPRs 1-31 */
+    SAVE_GPRS(1, 31, %r1)
+
+    /* Save LR, CTR, CR */
+    mflr    %r0
+    std     %r0, UREGS_lr(%r1)
+    mfctr   %r0
+    std     %r0, UREGS_ctr(%r1)
+    mfcr    %r0
+    stw     %r0, UREGS_cr(%r1) /* 32-bit */
+
+    /* Save Exception Registers */
+    mfsrr0  %r0
+    std     %r0, UREGS_pc(%r1)
+    mfsrr1  %r0
+    std     %r0, UREGS_msr(%r1)
+    mfdsisr %r0
+    stw     %r0, UREGS_dsisr(%r1) /* 32-bit */
+    mfdar   %r0
+    std     %r0, UREGS_dar(%r1)
+    li      %r0, -1 /* OS's SRR0/SRR1 have been clobbered */
+    std     %r0, UREGS_srr0(%r1)
+    std     %r0, UREGS_srr1(%r1)
+
+    /* Setup TOC and a stack frame then call C exception handler */
+    mr      %r3, %r1
+    bcl     20, 31, 1f
+1:  mflr    %r12
+    addis   %r2, %r12, .TOC.-1b@ha
+    addi    %r2, %r2, .TOC.-1b@l
+
+    li      %r0, 0
+    stdu    %r0, -STACK_FRAME_OVERHEAD(%r1)
+    bl      exception_handler
+
+    .size exception_common, . - exception_common
+    .type exception_common, %function
+
+    /* Same as exception_common, but for exceptions that set HSRR{0,1} */
+ENTRY(h_exception_common)
+    /* Save GPRs 1-31 */
+    SAVE_GPRS(1, 31, %r1)
+
+    /* Save LR, CTR, CR */
+    mflr    %r0
+    std     %r0, UREGS_lr(%r1)
+    mfctr   %r0
+    std     %r0, UREGS_ctr(%r1)
+    mfcr    %r0
+    stw     %r0, UREGS_cr(%r1) /* 32-bit */
+
+    /* Save Exception Registers */
+    mfhsrr0 %r0
+    std     %r0, UREGS_pc(%r1)
+    mfhsrr1 %r0
+    std     %r0, UREGS_msr(%r1)
+    mfsrr0  %r0
+    std     %r0, UREGS_srr0(%r1)
+    mfsrr1  %r0
+    std     %r0, UREGS_srr1(%r1)
+    mfdsisr %r0
+    stw     %r0, UREGS_dsisr(%r1) /* 32-bit */
+    mfdar   %r0
+    std     %r0, UREGS_dar(%r1)
+
+    /* Setup TOC and a stack frame then call C exception handler */
+    mr      %r3, %r1
+    bcl     20, 31, 1f
+1:  mflr    %r12
+    addis   %r2, %r12, .TOC.-1b@ha
+    addi    %r2, %r2, .TOC.-1b@l
+
+    li      %r0, 0
+    stdu    %r0, -STACK_FRAME_OVERHEAD(%r1)
+    bl      exception_handler
+
+    .size h_exception_common, . - h_exception_common
+    .type h_exception_common, %function
+
+/*
+ * Declare an ISR for the provided exception that jumps to `continue`
+ */
+#define DEFINE_ISR(name, exc, continue)                                        \
+    . = (AIL_VECTOR_BASE - EXCEPTION_VECTORS_START) + (exc);                   \
+    ENTRY(name)                                                                \
+    /* TODO: switch stack */                                                   \
+    /* Reserve space for struct cpu_user_regs */                               \
+    subi    %r1, %r1, UREGS_sizeof;                                            \
+    /* Save r0 immediately so we can use it as scratch space */                \
+    SAVE_GPR(0, %r1);                                                          \
+    /* Save exception vector number */                                         \
+    li      %r0, (exc);                                                        \
+    std     %r0, UREGS_entry_vector(%r1);                                      \
+    /* Branch to common code */                                                \
+    b       (continue);                                                        \
+    .size name, . - name;                                                      \
+    .type name, %function;
+
+    .section .text.exceptions, "ax", %progbits
+
+DEFINE_ISR(exc_sysreset, EXC_SYSTEM_RESET, exception_common)
+DEFINE_ISR(exc_mcheck, EXC_MACHINE_CHECK, exception_common)
+DEFINE_ISR(exc_dstore, EXC_DATA_STORAGE, exception_common)
+DEFINE_ISR(exc_dsegment, EXC_DATA_SEGMENT, exception_common)
+DEFINE_ISR(exc_istore, EXC_INSN_STORAGE, exception_common)
+DEFINE_ISR(exc_isegment, EXC_INSN_SEGMENT, exception_common)
+DEFINE_ISR(exc_extern, EXC_EXTERNAL, exception_common)
+DEFINE_ISR(exc_align, EXC_ALIGNMENT, exception_common)
+DEFINE_ISR(exc_program, EXC_PROGRAM, exception_common)
+DEFINE_ISR(exc_fpu, EXC_FPU_UNAVAIL, exception_common)
+DEFINE_ISR(exc_dec, EXC_DECREMENTER, exception_common)
+DEFINE_ISR(exc_h_dec, EXC_H_DECREMENTER, h_exception_common)
+/* EXC_PRIV_DOORBELL ... EXC_TRACE */
+DEFINE_ISR(exc_h_dstore, EXC_H_DATA_STORAGE, h_exception_common)
+DEFINE_ISR(exc_h_istore, EXC_H_INSN_STORAGE, h_exception_common)
diff --git a/xen/arch/ppc/ppc64/exceptions.c b/xen/arch/ppc/ppc64/exceptions.c
new file mode 100644
index 0000000000..ad5ab545f0
--- /dev/null
+++ b/xen/arch/ppc/ppc64/exceptions.c
@@ -0,0 +1,102 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+#include <xen/lib.h>
+
+#include <asm/processor.h>
+
+static const char *exception_name_from_vec(uint32_t vec)
+{
+    switch ( vec )
+    {
+    case EXC_SYSTEM_RESET:
+        return "System Reset Interrupt";
+    case EXC_MACHINE_CHECK:
+        return "Machine Check Interrupt";
+    case EXC_DATA_STORAGE:
+        return "Data Storage Interrupt";
+    case EXC_DATA_SEGMENT:
+        return "Data Segment Interrupt";
+    case EXC_INSN_STORAGE:
+        return "Instruction Storage Interrupt";
+    case EXC_INSN_SEGMENT:
+        return "Instruction Segment Interrupt";
+    case EXC_EXTERNAL:
+        return "External Interrupt";
+    case EXC_ALIGNMENT:
+        return "Alignment Interrupt";
+    case EXC_PROGRAM:
+        return "Program Interrupt";
+    case EXC_FPU_UNAVAIL:
+        return "Floating-Point Unavailable Interrupt";
+    case EXC_DECREMENTER:
+        return "Decrementer Interrupt";
+    case EXC_H_DECREMENTER:
+        return "Hypervisor Decrementer Interrupt";
+    case EXC_PRIV_DOORBELL:
+        return "Directed Privileged Doorbell Interrupt";
+    case EXC_SYSTEM_CALL:
+        return "System Call Interrupt";
+    case EXC_TRACE:
+        return "Trace Interrupt";
+    case EXC_H_DATA_STORAGE:
+        return "Hypervisor Data Storage Interrupt";
+    case EXC_H_INSN_STORAGE:
+        return "Hypervisor Instruction Storage Interrupt";
+    case EXC_H_EMUL_ASST:
+        return "Hypervisor Emulation Assistance Interrupt";
+    case EXC_H_MAINTENANCE:
+        return "Hypervisor Maintenance Interrupt";
+    case EXC_H_DOORBELL:
+        return "Directed Hypervisor Doorbell Interrupt";
+    case EXC_H_VIRT:
+        return "Hypervisor Virtualization Interrupt";
+    case EXC_PERF_MON:
+        return "Performance Monitor Interrupt";
+    case EXC_VECTOR_UNAVAIL:
+        return "Vector Unavailable Interrupt";
+    case EXC_VSX_UNAVAIL:
+        return "VSX Unavailable Interrupt";
+    case EXC_FACIL_UNAVAIL:
+        return "Facility Unavailable Interrupt";
+    case EXC_H_FACIL_UNAVAIL:
+        return "Hypervisor Facility Unavailable Interrupt";
+    default:
+        return "(unknown)";
+    }
+}
+
+void exception_handler(struct cpu_user_regs *regs)
+{
+    /* TODO: this is currently only useful for debugging */
+
+    printk("UNRECOVERABLE EXCEPTION: %s (0x%04x)\n\n"
+           "GPR 0-3   : 0x%016lx 0x%016lx 0x%016lx 0x%016lx\n"
+           "GPR 4-7   : 0x%016lx 0x%016lx 0x%016lx 0x%016lx\n"
+           "GPR 8-11  : 0x%016lx 0x%016lx 0x%016lx 0x%016lx\n"
+           "GPR 12-15 : 0x%016lx 0x%016lx 0x%016lx 0x%016lx\n"
+           "GPR 16-19 : 0x%016lx 0x%016lx 0x%016lx 0x%016lx\n"
+           "GPR 20-23 : 0x%016lx 0x%016lx 0x%016lx 0x%016lx\n"
+           "GPR 24-27 : 0x%016lx 0x%016lx 0x%016lx 0x%016lx\n"
+           "GPR 28-31 : 0x%016lx 0x%016lx 0x%016lx 0x%016lx\n\n",
+           exception_name_from_vec(regs->entry_vector), regs->entry_vector,
+           regs->gprs[0], regs->gprs[1], regs->gprs[2], regs->gprs[3],
+           regs->gprs[4], regs->gprs[5], regs->gprs[6], regs->gprs[7],
+           regs->gprs[8], regs->gprs[9], regs->gprs[10], regs->gprs[11],
+           regs->gprs[12], regs->gprs[13], regs->gprs[14], regs->gprs[15],
+           regs->gprs[16], regs->gprs[17], regs->gprs[18], regs->gprs[19],
+           regs->gprs[20], regs->gprs[21], regs->gprs[22], regs->gprs[23],
+           regs->gprs[24], regs->gprs[25], regs->gprs[26], regs->gprs[27],
+           regs->gprs[28], regs->gprs[29], regs->gprs[30], regs->gprs[31]);
+    printk("LR        : 0x%016lx\n"
+           "CTR       : 0x%016lx\n"
+           "CR        : 0x%08x\n"
+           "PC        : 0x%016lx\n"
+           "MSR       : 0x%016lx\n"
+           "SRR0      : 0x%016lx\n"
+           "SRR1      : 0x%016lx\n"
+           "DAR       : 0x%016lx\n"
+           "DSISR     : 0x%08x\n",
+           regs->lr, regs->ctr, regs->cr, regs->pc, regs->msr, regs->srr0,
+           regs->srr1, regs->dar, regs->dsisr);
+
+    die();
+}
diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c
index 959c1454a0..101bdd8bb6 100644
--- a/xen/arch/ppc/setup.c
+++ b/xen/arch/ppc/setup.c
@@ -11,6 +11,15 @@
 /* Xen stack for bringing up the first CPU. */
 unsigned char __initdata cpu0_boot_stack[STACK_SIZE] __aligned(STACK_SIZE);
 
+void setup_exceptions(void)
+{
+    unsigned long lpcr;
+
+    /* Set appropriate interrupt location in LPCR */
+    lpcr = mfspr(SPRN_LPCR);
+    mtspr(SPRN_LPCR, lpcr | LPCR_AIL_3);
+}
+
 void __init noreturn start_xen(unsigned long r3, unsigned long r4,
                                unsigned long r5, unsigned long r6,
                                unsigned long r7)
@@ -26,6 +35,8 @@ void __init noreturn start_xen(unsigned long r3, unsigned long r4,
         boot_opal_init((void *)r3);
     }
 
+    setup_exceptions();
+
     setup_initial_pagetables();
 
     early_printk("Hello, ppc64le!\n");
-- 
2.30.2



From xen-devel-bounces@lists.xenproject.org Thu Sep 28 23:19:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 23:19:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610079.949349 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0IQ-0003hZ-Tk; Thu, 28 Sep 2023 23:19:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610079.949349; Thu, 28 Sep 2023 23:19:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0IQ-0003gp-OK; Thu, 28 Sep 2023 23:19:50 +0000
Received: by outflank-mailman (input) for mailman id 610079;
 Thu, 28 Sep 2023 23:19:49 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qm0IP-0003MQ-HA
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 23:19:49 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 83802657-5e55-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 01:19:47 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 4330A61DA0;
 Thu, 28 Sep 2023 23:19:46 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id B483FC433C7;
 Thu, 28 Sep 2023 23:19:44 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 83802657-5e55-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695943185;
	bh=N3bxzgJ1s2K6v+njeepztZaSboFqG44A04jELbAY81w=;
	h=Date:From:To:cc:Subject:From;
	b=YfaBnK07AZJvJvc8X0IpNQl1JJqdCsvG0+pLxfxyslw1frmyLEWvd/eV76YRWtrbo
	 eYfhkz2+kwyBeHiRrEe8PWY+qWp8q6NoerFdVmdNUkEYcNPnjo1j56W1y8BslQ+01z
	 aamioCiuavD0b5tni6ba83RV4iexyZAqHkZ7uF/EQVwEufkU4MbXt4Z7AaxFjxfuzu
	 5P5fAWsq7SwKt7aEIVM9uV7txCkZoX7a0/tr/gWk3OHdc8gtnKYf2gNCkvTMEg9HI0
	 lVGfO5JTZQvGVLKrh/IgAM7cZ5qLWs+j3SF2FiJUbyM3icRU6epocRXRkxCNsT6fiV
	 b1NbfJk0k+GHg==
Date: Thu, 28 Sep 2023 16:19:43 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: xen-devel@lists.xenproject.org
cc: sstabellini@kernel.org, jbeulich@suse.com, andrew.cooper3@citrix.com, 
    roger.pau@citrix.com, julien@xen.org, bertrand.marquis@arm.com, 
    george.dunlap@citrix.com, wl@xen.org
Subject: [PATCH] bitmap: fix n__ signess 
Message-ID: <alpine.DEB.2.22.394.2309281616200.1996340@ubuntu-linux-20-04-desktop>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

All callers of the bitmap_switch macro (which are all within bitmap.h)
pass an int as first parameter. Do not assign it to an unsigned int
potentially introducing errors.

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
---

We could also have gone the other way and change all the callers and the
callers' callers to use an unsigned int instead, but I went for the path
of least resistance.

diff --git a/xen/include/xen/bitmap.h b/xen/include/xen/bitmap.h
index 3caf92c76d..7caec098d7 100644
--- a/xen/include/xen/bitmap.h
+++ b/xen/include/xen/bitmap.h
@@ -101,7 +101,7 @@ extern int bitmap_allocate_region(unsigned long *bitmap, int pos, int order);
 #define bitmap_bytes(nbits) (BITS_TO_LONGS(nbits) * sizeof(unsigned long))
 
 #define bitmap_switch(nbits, zero, small, large)			  \
-	unsigned int n__ = (nbits);					  \
+	int n__ = (nbits);					  \
 	if (__builtin_constant_p(nbits) && !n__) {			  \
 		zero;							  \
 	} else if (__builtin_constant_p(nbits) && n__ <= BITS_PER_LONG) { \


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 23:20:11 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 23:20:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610088.949365 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0Il-0005g1-Bw; Thu, 28 Sep 2023 23:20:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610088.949365; Thu, 28 Sep 2023 23:20:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0Il-0005fu-8E; Thu, 28 Sep 2023 23:20:11 +0000
Received: by outflank-mailman (input) for mailman id 610088;
 Thu, 28 Sep 2023 23:20:10 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qm0Ik-0003MQ-Az
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 23:20:10 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org
 [2604:1380:4601:e00::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8ff880c7-5e55-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 01:20:07 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 4C843B81E16;
 Thu, 28 Sep 2023 23:20:07 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 441C6C433C7;
 Thu, 28 Sep 2023 23:20:05 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8ff880c7-5e55-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695943206;
	bh=P9oQEpp660p+W181qm5R/e3m+TprZ/k4G/1Ywu6oqu4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=EMhWPWUc71GnJCG8/NXr0RSXB2IvYoFMrBw+hxLIhHzJ5fzDiAOQ6MinO0NfQfQpL
	 vJU1mcojHkaH4Km+AByXxGSg0828TJcNQ22nxFsN0MwH9Y/veLmieq/UCCmHSlOb3O
	 tqoYelSv+E2FIKeHM9dGiW/0tysUYPW8v80DbfbU0Yzx1mGrEKMPcyU8FwSj+4McLQ
	 ZWMhj6gEiJZafc6U3WkHofJpF+H4EWP5kljjxQwwYpiZ1CoE58TuSxb/Y+Yhad8OC3
	 Ml3mDKaninu2pqG7+IUs/ilxv4eVsh1TAkrPi9kfB2XrV91z3IUyXYTeBesEHRoJ42
	 pqr0nxoinP67A==
Date: Thu, 28 Sep 2023 16:20:03 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Luca Fancellu <Luca.Fancellu@arm.com>
cc: Xen-devel <xen-devel@lists.xenproject.org>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    nicola.vetrini@bugseng.com, simone.ballarin@bugseng.com, 
    federico.serafini@bugseng.com
Subject: Re: Misra rule 10.3 violations report script
In-Reply-To: <D36FE722-43D5-4A93-B725-AD4157A1BA61@arm.com>
Message-ID: <alpine.DEB.2.22.394.2309281609360.1996340@ubuntu-linux-20-04-desktop>
References: <D36FE722-43D5-4A93-B725-AD4157A1BA61@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-963039786-1695942939=:1996340"
Content-ID: <alpine.DEB.2.22.394.2309281615450.1996340@ubuntu-linux-20-04-desktop>

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-963039786-1695942939=:1996340
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2309281615451.1996340@ubuntu-linux-20-04-desktop>

On Thu, 28 Sep 2023, Luca Fancellu wrote:
> Hi all,
> 
> In the last MISRA meeting Stefano told me about the Rule 10.3 and that we have a lot of violations,
> but GCC has a way to list them as written in rules.rst.
> 
> So the issue was just that we have a lot of violations, most of them coming from headers and the
> Developer might feel a bit lost since the number is very high, so I’ve developed this script to take
> the GCC build log and create a list of unique occurrences of the violations sorted in descending
> order, so that who has a bit of time can try to fix some of those and maybe can start from the top
> of the list to fix as many as possible occurrences.
> 
> I attach the script as patch file.

Thanks Luca! Actually I think this is great! The script makes it much
easier to use the GCC output to address 10.3 violations. I think we
should have it in the xen.git tree.

Thanks to the script I was able to quickly address the top violation in
bitmap.h.
--8323329-963039786-1695942939=:1996340--


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 23:32:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 23:32:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610108.949375 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0Ua-0001hX-GF; Thu, 28 Sep 2023 23:32:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610108.949375; Thu, 28 Sep 2023 23:32:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0Ua-0001hQ-DS; Thu, 28 Sep 2023 23:32:24 +0000
Received: by outflank-mailman (input) for mailman id 610108;
 Thu, 28 Sep 2023 23:32:23 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=33nX=FM=amdcloud.onmicrosoft.com=bounces+SRS=0floO=FM@srs-se1.protection.inumbo.net>)
 id 1qm0UZ-0001hK-FJ
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 23:32:23 +0000
Received: from NAM12-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam12on20606.outbound.protection.outlook.com
 [2a01:111:f400:fe5b::606])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 43c71bf1-5e57-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 01:32:22 +0200 (CEST)
Received: from BLAPR03CA0065.namprd03.prod.outlook.com (2603:10b6:208:329::10)
 by IA1PR12MB6140.namprd12.prod.outlook.com (2603:10b6:208:3e8::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.23; Thu, 28 Sep
 2023 23:32:15 +0000
Received: from BL6PEPF0001AB55.namprd02.prod.outlook.com
 (2603:10b6:208:329:cafe::87) by BLAPR03CA0065.outlook.office365.com
 (2603:10b6:208:329::10) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25 via Frontend
 Transport; Thu, 28 Sep 2023 23:32:15 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 BL6PEPF0001AB55.mail.protection.outlook.com (10.167.241.7) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Thu, 28 Sep 2023 23:32:15 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 28 Sep
 2023 18:32:14 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 28 Sep
 2023 18:32:14 -0500
Received: from ubuntu-20.04.2-arm64.shared (10.180.168.240) by
 SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.27 via Frontend Transport; Thu, 28 Sep 2023 18:32:13 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 43c71bf1-5e57-11ee-878b-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UkzikMpcedhbHF1TiOZN3IIAu+SUOaJUJpOTbA3rbv5+RAllEkB8yk6CGHY+78dhTDJG24GAnl8yTzikBSn0QKF1aD9igg+EX0ZJyA4IiH5ejovsiM5I7WK72vQOlh//9vzEcHuw6yzF/Ew7R/mc0MrccySLdudfs9fRRxFVUnMeC80DpLocYa8VqSEVNh60hMM3LUsmNfxZZfjEWPVXWTIQ4NhF7JQsSiZJWJAivkP3v4aVahYJPLTxzCZEgT/P5tLH8vg4b201RKTshp51Kl0nnEWNuN2yDoNGtouT+s7EjJn+ItN7EGKH+GkdYO5qxPJjlhxJWH0FJXbC2e5BHg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=2HFekxmIWiGuxZhkHilRxFo21oGlCAbLTUeYT9BvpbU=;
 b=YJaB+tbKt1K/3fKybJ9e1JN5EgBJmOJ8TCCVAdcqN4cMsjNPG6z8gwWHPiyUIFAY/W08/qGFAOpKMa63yQN0/ODOuR+nafR7NwNgfoszHjJLE9hEuPWjnQsf/UGyCOaeZgUzHwKRj8esDwWW//mmWRjq8Q9Wzc3tJ7nhNZqnR5WsDZ7cwklt0Cek3RLrPr8syu37Vx/F9z0p95DBC8Sf50OJmPuMZ0p+R6v4y8f4jgCwxhBDc+Kj/nkdMTXDM3O2gOpNh7MSFUPNxeTWe6FMVviX2yaHvh/UCAD/Ztk5p+P72GuSfw7ZooXTyJCeDORmd6iosknJpZcvaaAowV8K1A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=softfail (sender ip
 is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org
 smtp.mailfrom=kernel.org; dmarc=fail (p=none sp=none pct=100) action=none
 header.from=kernel.org; dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=amdcloud.onmicrosoft.com; s=selector1-amdcloud-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=2HFekxmIWiGuxZhkHilRxFo21oGlCAbLTUeYT9BvpbU=;
 b=ZVKTRljnYXOjf8WQfNozEgFGrTbvGEwCPhh6QYYN3ces5VWxh5Y29BzhtmrYPdKiw9h/lpypDOw1rE4Z2TrRSdqlgrWbB+krfwT0Vz7M6J1DyYxWFm6P7zJqVwcXfc6VkgWxmbn2WaqKSnjM9kZ8p3sE8mOw8PEOBmbsIO0SAS3VrqkTxRThLZdIPA1rWaTtSpCO3HFcMlcCW673oA7obvz0teccu/ookZ0Xn7Doi+nVbVwRNRRMlbUj5l8Xs1KUNGlDToImTi5YJbtBrLQCjR+kxyiV8NaBDK3R5EezhWNJD2A2PyHBNF0iaurWIbt1jmQeO4YpTx/eitVP9lPE6g==
X-MS-Exchange-Authentication-Results: spf=softfail (sender IP is
 165.204.84.17) smtp.mailfrom=kernel.org; dkim=none (message not signed)
 header.d=none;dmarc=fail action=none header.from=kernel.org;
Received-SPF: SoftFail (protection.outlook.com: domain of transitioning
 kernel.org discourages use of 165.204.84.17 as permitted sender)
Date: Thu, 28 Sep 2023 16:32:12 -0700
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: <xen-devel@lists.xenproject.org>
CC: <sstabellini@kernel.org>, <jbeulich@suse.com>,
	<andrew.cooper3@citrix.com>, <roger.pau@citrix.com>, <julien@xen.org>,
	<bertrand.marquis@arm.com>, <george.dunlap@citrix.com>, <wl@xen.org>
Subject: [PATCH] cpumask: fix integer type in cpumask_first
Message-ID: <alpine.DEB.2.22.394.2309281629360.1996340@ubuntu-linux-20-04-desktop>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset="US-ASCII"
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB55:EE_|IA1PR12MB6140:EE_
X-MS-Office365-Filtering-Correlation-Id: 8db9a137-869a-4515-43b8-08dbc07b2606
X-MS-Exchange-SenderADCheck: 2
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	/saHeQVemjVhpkwFSVSyFeeavwrUIKWOQhHxoZwtPEmOSp8iryEJCWFN5nrWq643M/Vf8RhABEcox++AnE478ZlZ0EXlEgbBN9l1f3MfX9hA4XnWdisE6nIka1OPqJ3dpYBaq/sO23hl8jliSk7Kg+CRELsc7XoQy1RBCCv/6ynQVRxoGR6wfUrMdFi/d4S7JCboTPm1UJaztcl3xW4kcZM6+sYRfufwkTs3cgYW45Dh/nanTiWSHdiWOD3KLF5zZIfmOF/iM3h6abTrz+oHo/03qB2x8jUDKW6MyoqZxKqcNX9TJWDrDUkh33voI0bk2dibhH09vgoU3gYoiXh2oFxAsFRllk8rxR4fVg+JYSdYMjOble3HSYLQpU+tO6EHwzzuK1ZGn7Zrc88D3vjq5A8i57IrHVOubbx9IU7ImVcOf+X0ubSpH4rLj+f7Ab5zjLJ9VIRrvN+oxoDJr3O3fZDDG5Xwc7+iJRIDJVdXNt5KZDiMJ+haKoWakJDiih+qgRZzzR42+HdoEbuSXWr3cMz+B709Z8/xXykv3oqRO33m9ccUJetr97u8Y7zBqhciVqtpx7NlKYqM094GH6yrxzu0NDecwOC6WMdAk/rtoM8w0SlxEsseaRX2s1brZqV9AZ7U2L+tlxhDeChhKe1JNUgn7PHFgbLiXoSBsnwHdS7p5rtYVQxCxP/+Wgjg2NRabR8s0IJnvXcjGSRCbCXfYFy9/1KbDNrwkUyxO+NL06WWZt+LOTSlkhIqNUdW4ZIxIpzegD0vKctuCt+dfRAE5g==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(7916004)(39860400002)(376002)(136003)(346002)(396003)(230922051799003)(82310400011)(61400799006)(48200799006)(64100799003)(451199024)(46966006)(40470700004)(47076005)(498600001)(35950700001)(40460700003)(26005)(336012)(82740400003)(40480700001)(9686003)(356005)(81166007)(86362001)(4744005)(2906002)(33716001)(8936002)(8676002)(4326008)(5660300002)(316002)(70586007)(70206006)(54906003)(6916009)(41300700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amdcloud.onmicrosoft.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2023 23:32:15.4043
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8db9a137-869a-4515-43b8-08dbc07b2606
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	BL6PEPF0001AB55.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6140

nr_cpu_ids is unsigned int, but find_first_bit returns unsigned long (at
least on arm). Use the larger type for min_t to avoid larger-to-smaller
type assignments. This address 141 MISRA C 10.3 violations.

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
---

diff --git a/xen/include/xen/cpumask.h b/xen/include/xen/cpumask.h
index 9826707909..a6ed6a28e8 100644
--- a/xen/include/xen/cpumask.h
+++ b/xen/include/xen/cpumask.h
@@ -208,7 +208,7 @@ static inline void cpumask_copy(cpumask_t *dstp, const cpumask_t *srcp)
 
 static inline int cpumask_first(const cpumask_t *srcp)
 {
-	return min_t(int, nr_cpu_ids, find_first_bit(srcp->bits, nr_cpu_ids));
+	return min_t(unsigned long, nr_cpu_ids, find_first_bit(srcp->bits, nr_cpu_ids));
 }
 
 static inline int cpumask_next(int n, const cpumask_t *srcp)


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 23:34:16 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 23:34:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610114.949393 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0WM-0002t3-UN; Thu, 28 Sep 2023 23:34:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610114.949393; Thu, 28 Sep 2023 23:34:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0WM-0002sw-RK; Thu, 28 Sep 2023 23:34:14 +0000
Received: by outflank-mailman (input) for mailman id 610114;
 Thu, 28 Sep 2023 23:34:13 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=NjmF=FM=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qm0WL-0002so-4H
 for xen-devel@lists.xenproject.org; Thu, 28 Sep 2023 23:34:13 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 85f326d3-5e57-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 01:34:11 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id 3AFC5CE234A;
 Thu, 28 Sep 2023 23:34:07 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 36DB3C433C8;
 Thu, 28 Sep 2023 23:34:05 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 85f326d3-5e57-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695944046;
	bh=Xoa5PZmDzQ5MQQ8MQ2N3+vxiCgdCik3g10fqh+WmT0Y=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=LbjkUBeLMLdkb2d5yY1b+xoQIEioZJRx44dk3+TYcmqLsBdTejk+2FZKW5GVTCR/3
	 8JtEiOq8Ch/PUpEnklDr5oj9ioXmJhunIhzL7kymL99T07M252G1je5Dc/atadjkj1
	 gKpZpajUGLGC0rCpSXUA7hW+NqQuRuHFBoBaxfJRm2bE191hoQQMuNaaLsRBEJ2sjU
	 0wFkiKZw3cZcu9cN3AISsixzAleCjhW2blnoW9/taxo3gNLnQo2n3l002mjQgsD+3n
	 F1zYTnx8FQpXD5/ZtBmE8yMzo58T6URnVFBuC8yp8NKMlD58yM4TnU0ZBY2QqwZrQq
	 s3Beun0Pw4TzQ==
Date: Thu, 28 Sep 2023 16:34:03 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Ayan Kumar Halder <ayankuma@amd.com>
cc: Luca Fancellu <Luca.Fancellu@arm.com>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>
Subject: Re: Misra rule 10.3 violations report script
In-Reply-To: <fff7c46c-78ea-4656-fcca-85667e176104@amd.com>
Message-ID: <alpine.DEB.2.22.394.2309281633450.1996340@ubuntu-linux-20-04-desktop>
References: <D36FE722-43D5-4A93-B725-AD4157A1BA61@arm.com> <fff7c46c-78ea-4656-fcca-85667e176104@amd.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-407177967-1695944046=:1996340"

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-407177967-1695944046=:1996340
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Thu, 28 Sep 2023, Ayan Kumar Halder wrote:
> On 28/09/2023 09:34, Luca Fancellu wrote:
> > CAUTION: This message has originated from an External Source. Please use
> > proper judgment and caution when opening attachments, clicking links, or
> > responding to this email.
> > 
> > 
> > Hi all,
> Hi Luca,
> > 
> > In the last MISRA meeting Stefano told me about the Rule 10.3 and that we
> > have a lot of violations,
> > but GCC has a way to list them as written in rules.rst.
> > 
> > So the issue was just that we have a lot of violations, most of them coming
> > from headers and the
> > Developer might feel a bit lost since the number is very high, so I’ve
> > developed this script to take
> > the GCC build log and create a list of unique occurrences of the violations
> > sorted in descending
> > order, so that who has a bit of time can try to fix some of those and maybe
> > can start from the top
> > of the list to fix as many as possible occurrences.
> > 
> > I attach the script as patch file.
> 
> This is an excellent script to see the violations in a neat way. For eg, I see
> this
> 
> arch/arm/domain_build.c:3883:28 (1)
> arch/arm/domain_build.c:3910:36 (1)
> ./include/xen/pfn.h:6:23 (1)
> ./include/xen/macros.h:4:40 (1)
> arch/arm/setup.c:221:10 (1)
> arch/arm/setup.c:227:59 (1)
> 
> I think once in a while, we have been approached by newbies wanting to
> contribute to Xen project.
> 
> For eg "Beginner looking to contribute to project in archived list"
> 
> Sometimes people reach out individually as well.
> 
> Do you have such similar tasks (like this) within or beyond the scope of MISRA
> which will require some basic programming skills and is a great first step to
> learn and contribute to Xen project ?
> 
> This can be things which students/folks can contribute on an ad-hoc basis.
> 
> I can work with Kelly to see if we can put them in a wiki page.

That's a great idea


> I could see https://wiki.xenproject.org/wiki/Outreach_Program_Projects , but
> don't know if it is up to date.

I don't think it is
--8323329-407177967-1695944046=:1996340--


From xen-devel-bounces@lists.xenproject.org Thu Sep 28 23:34:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Thu, 28 Sep 2023 23:34:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610118.949403 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0Wq-0003dy-70; Thu, 28 Sep 2023 23:34:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610118.949403; Thu, 28 Sep 2023 23:34:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm0Wq-0003dr-3Z; Thu, 28 Sep 2023 23:34:44 +0000
Received: by outflank-mailman (input) for mailman id 610118;
 Thu, 28 Sep 2023 23:34:43 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qm0Wp-0003cR-6c; Thu, 28 Sep 2023 23:34:43 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qm0Wp-0004bL-4M; Thu, 28 Sep 2023 23:34:43 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qm0Wo-0000F2-NM; Thu, 28 Sep 2023 23:34:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qm0Wo-00068I-Mt; Thu, 28 Sep 2023 23:34:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=rP1tP8mQsdM5Kkmw3PvBZoQEYrAApxILe19iiMng5qA=; b=dXQkS4iV6KZXBP9kSWd/Fk/l7b
	sNqZlzhrD/lhenogVtxfJPIRPBv5Epyz8p5oW9JuHDaZrFPqennrJdiLmsH8BYzDK6LcRAaBMrfry
	MuXBvsRzHi78xphhjmHNlbv0C5cns8J3aXIfSRe4cJ4aD0ihB6VA7MyMFSUZrVmmDSKo=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183202-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183202: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl:xen-install:fail:heisenbug
    xen-unstable:test-arm64-arm64-xl-credit2:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-i386-qemuu-rhel6hvm-intel:guest-start/redhat.repeat:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=a363089e68ed677fef12c296253535753fe817e3
X-Osstest-Versions-That:
    xen=a1f8b32af001c15ce3c6be2364826b1ca35b6caa
From: osstest service owner <osstest-admin@xenproject.org>
Date: Thu, 28 Sep 2023 23:34:42 +0000

flight 183202 xen-unstable real [real]
flight 183207 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183202/
http://logs.test-lab.xenproject.org/osstest/logs/183207/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl            7 xen-install         fail pass in 183207-retest
 test-arm64-arm64-xl-credit2   8 xen-boot            fail pass in 183207-retest
 test-armhf-armhf-xl-vhd       8 xen-boot            fail pass in 183207-retest
 test-amd64-i386-qemuu-rhel6hvm-intel 14 guest-start/redhat.repeat fail pass in 183207-retest
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install fail pass in 183207-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop  fail in 183207 like 183194
 test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 183207 never pass
 test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 183207 never pass
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 183207 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 183207 never pass
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183194
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183194
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183194
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183194
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183194
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183194
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183194
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183194
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183194
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183194
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183194
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  a363089e68ed677fef12c296253535753fe817e3
baseline version:
 xen                  a1f8b32af001c15ce3c6be2364826b1ca35b6caa

Last test of basis   183194  2023-09-27 14:39:51 Z    1 days
Testing same since   183202  2023-09-28 07:04:43 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Shawn Anastasio <sanastasio@raptorengineering.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           fail    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  fail    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         fail    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      fail    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   a1f8b32af0..a363089e68  a363089e68ed677fef12c296253535753fe817e3 -> master


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 00:34:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 00:34:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610135.949413 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm1S1-00042z-LN; Fri, 29 Sep 2023 00:33:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610135.949413; Fri, 29 Sep 2023 00:33:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm1S1-00042s-IQ; Fri, 29 Sep 2023 00:33:49 +0000
Received: by outflank-mailman (input) for mailman id 610135;
 Fri, 29 Sep 2023 00:33:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qm1Rz-00042m-Is
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 00:33:48 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d86448b1-5e5f-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 02:33:44 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 2B99FB81E47;
 Fri, 29 Sep 2023 00:33:43 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 362C4C433C8;
 Fri, 29 Sep 2023 00:33:41 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d86448b1-5e5f-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1695947622;
	bh=QexCWOOwGWT840yDk1NC03+G1l259fqBp69MALW8GNo=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=PXZY/QncsMrq9O0Pb/N8Z+Zm+P7Uigdecjd7eqpgkohmEVJYm2tymQSoeAs+ZQDmc
	 JeAflcAlJL6gQLQPjor/lNiJ/7Nb/txoZ+bGpKGSweN1dBSN4rh7eGUJLHlTHwMrk/
	 +erf0Vrc3y36PEYEBz3qKMV6B8ABX5s/Oj74L/P2/cedgSJ/2HAZLRkS20aFrmStMO
	 /ZPpDE4CRMvByckMr+9LZGSWaQ+fHqmm8VhBea51C/ri3n38WT+rqgS0D/eQCynC/u
	 kUfpioPqzKHVS4hkp620a7zaCNyuGW+Aq5Ug3LA7thb7YRjARwXXlxD1a43XxWqZpF
	 MEdeIRLjUbohA==
Date: Thu, 28 Sep 2023 17:33:39 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Luca Fancellu <luca.fancellu@arm.com>
cc: xen-devel@lists.xenproject.org, wei.chen@arm.com, 
    Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v2 3/5] arm/dom0less: put dom0less feature code in a
 separate module
In-Reply-To: <20230927140133.631192-4-luca.fancellu@arm.com>
Message-ID: <alpine.DEB.2.22.394.2309281726440.1996340@ubuntu-linux-20-04-desktop>
References: <20230927140133.631192-1-luca.fancellu@arm.com> <20230927140133.631192-4-luca.fancellu@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Wed, 27 Sep 2023, Luca Fancellu wrote:
> Currently the dom0less feature code is mostly inside domain_build.c
> and setup.c, it is a feature that may not be useful to everyone so
> put the code in a different compilation module in order to make it
> easier to disable the feature in the future.
> 
> Move gic_interrupt_t in domain_build.h to use it with the function
> declaration, move its comment above the declaration.
> 
> The following functions are now visible externally from domain_build
> because they are used also from the dom0less-build module:
>  - get_allocation_size
>  - set_interrupt
>  - domain_fdt_begin_node
>  - make_memory_node
>  - make_resv_memory_node
>  - make_hypervisor_node
>  - make_psci_node
>  - make_cpus_node
>  - make_timer_node
>  - handle_device_interrupts
>  - construct_domain
>  - process_shm
> 
> The functions allocate_static_memory and assign_static_memory_11
> are now externally visible, so put their declarations into
> domain_build.h and move the #else and stub definition in the header
> as well.
> 
> Move is_dom0less_mode from setup.c to dom0less-build.c and make it
> externally visible.
> 
> Where spotted, fix code style issues.
> 
> No functional change is intended.
> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>

This is great! A couple of questions.

Why was allocate_static_memory not moved to dom0less-build.c ?

Would it make sense to also move construct_dom0 to dom0less-build.c
given the similarities with construct_domU? I am not sure about this.



> ---
>  xen/arch/arm/Makefile                     |    1 +
>  xen/arch/arm/dom0less-build.c             | 1087 ++++++++++++++++++
>  xen/arch/arm/domain_build.c               | 1276 ++-------------------
>  xen/arch/arm/include/asm/dom0less-build.h |   25 +
>  xen/arch/arm/include/asm/domain_build.h   |   58 +
>  xen/arch/arm/include/asm/setup.h          |    1 -
>  xen/arch/arm/setup.c                      |   33 +-
>  7 files changed, 1288 insertions(+), 1193 deletions(-)
>  create mode 100644 xen/arch/arm/dom0less-build.c
>  create mode 100644 xen/arch/arm/include/asm/dom0less-build.h
> 
> diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile
> index 81c31c36fc3d..70dd7201ef30 100644
> --- a/xen/arch/arm/Makefile
> +++ b/xen/arch/arm/Makefile
> @@ -15,6 +15,7 @@ obj-y += cpufeature.o
>  obj-y += decode.o
>  obj-y += device.o
>  obj-$(CONFIG_IOREQ_SERVER) += dm.o
> +obj-y += dom0less-build.init.o
>  obj-y += domain.o
>  obj-y += domain_build.init.o
>  obj-$(CONFIG_ARCH_MAP_DOMAIN_PAGE) += domain_page.o
> diff --git a/xen/arch/arm/dom0less-build.c b/xen/arch/arm/dom0less-build.c
> new file mode 100644
> index 000000000000..dc9c90cf00a7
> --- /dev/null
> +++ b/xen/arch/arm/dom0less-build.c
> @@ -0,0 +1,1087 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
> +/*
> + * xen/arch/arm/dom0less-build.c
> + *
> + * Code related to the dom0less functionality
> + *
> + * Copyright (C) 2023 Arm Ltd.
> + */
> +
> +#include <xen/device_tree.h>
> +#include <xen/err.h>
> +#include <xen/event.h>
> +#include <xen/grant_table.h>
> +#include <xen/iocap.h>
> +#include <xen/libfdt/libfdt.h>
> +#include <xen/sched.h>
> +#include <xen/serial.h>
> +#include <xen/sizes.h>
> +#include <xen/vmap.h>
> +
> +#include <asm/arm64/sve.h>
> +#include <asm/dom0less-build.h>
> +#include <asm/domain_build.h>
> +
> +bool __init is_dom0less_mode(void)
> +{
> +    struct bootmodules *mods = &bootinfo.modules;
> +    struct bootmodule *mod;
> +    unsigned int i;
> +    bool dom0found = false;
> +    bool domUfound = false;
> +
> +    /* Look into the bootmodules */
> +    for ( i = 0 ; i < mods->nr_mods ; i++ )
> +    {
> +        mod = &mods->module[i];
> +        /* Find if dom0 and domU kernels are present */
> +        if ( mod->kind == BOOTMOD_KERNEL )
> +        {
> +            if ( mod->domU == false )
> +            {
> +                dom0found = true;
> +                break;
> +            }
> +            else
> +                domUfound = true;
> +        }
> +    }
> +
> +    /*
> +     * If there is no dom0 kernel but at least one domU, then we are in
> +     * dom0less mode
> +     */
> +    return ( !dom0found && domUfound );
> +}
> +
> +static bool __init allocate_bank_memory(struct domain *d,
> +                                        struct kernel_info *kinfo,
> +                                        gfn_t sgfn,
> +                                        paddr_t tot_size)
> +{
> +    int res;
> +    struct page_info *pg;
> +    struct membank *bank;
> +    unsigned int max_order = ~0;
> +
> +    /*
> +     * allocate_bank_memory can be called with a tot_size of zero for
> +     * the second memory bank. It is not an error and we can safely
> +     * avoid creating a zero-size memory bank.
> +     */
> +    if ( tot_size == 0 )
> +        return true;
> +
> +    bank = &kinfo->mem.bank[kinfo->mem.nr_banks];
> +    bank->start = gfn_to_gaddr(sgfn);
> +    bank->size = tot_size;
> +
> +    while ( tot_size > 0 )
> +    {
> +        unsigned int order = get_allocation_size(tot_size);
> +
> +        order = min(max_order, order);
> +
> +        pg = alloc_domheap_pages(d, order, 0);
> +        if ( !pg )
> +        {
> +            /*
> +             * If we can't allocate one page, then it is unlikely to
> +             * succeed in the next iteration. So bail out.
> +             */
> +            if ( !order )
> +                return false;
> +
> +            /*
> +             * If we can't allocate memory with order, then it is
> +             * unlikely to succeed in the next iteration.
> +             * Record the order - 1 to avoid re-trying.
> +             */
> +            max_order = order - 1;
> +            continue;
> +        }
> +
> +        res = guest_physmap_add_page(d, sgfn, page_to_mfn(pg), order);
> +        if ( res )
> +        {
> +            dprintk(XENLOG_ERR, "Failed map pages to DOMU: %d", res);
> +            return false;
> +        }
> +
> +        sgfn = gfn_add(sgfn, 1UL << order);
> +        tot_size -= (1ULL << (PAGE_SHIFT + order));
> +    }
> +
> +    kinfo->mem.nr_banks++;
> +    kinfo->unassigned_mem -= bank->size;
> +
> +    return true;
> +}
> +
> +static void __init allocate_memory(struct domain *d, struct kernel_info *kinfo)
> +{
> +    unsigned int i;
> +    paddr_t bank_size;
> +
> +    printk(XENLOG_INFO "Allocating mappings totalling %ldMB for %pd:\n",
> +           /* Don't want format this as PRIpaddr (16 digit hex) */
> +           (unsigned long)(kinfo->unassigned_mem >> 20), d);
> +
> +    kinfo->mem.nr_banks = 0;
> +    bank_size = MIN(GUEST_RAM0_SIZE, kinfo->unassigned_mem);
> +    if ( !allocate_bank_memory(d, kinfo, gaddr_to_gfn(GUEST_RAM0_BASE),
> +                               bank_size) )
> +        goto fail;
> +
> +    bank_size = MIN(GUEST_RAM1_SIZE, kinfo->unassigned_mem);
> +    if ( !allocate_bank_memory(d, kinfo, gaddr_to_gfn(GUEST_RAM1_BASE),
> +                               bank_size) )
> +        goto fail;
> +
> +    if ( kinfo->unassigned_mem )
> +        goto fail;
> +
> +    for( i = 0; i < kinfo->mem.nr_banks; i++ )
> +    {
> +        printk(XENLOG_INFO "%pd BANK[%d] %#"PRIpaddr"-%#"PRIpaddr" (%ldMB)\n",
> +               d,
> +               i,
> +               kinfo->mem.bank[i].start,
> +               kinfo->mem.bank[i].start + kinfo->mem.bank[i].size,
> +               /* Don't want format this as PRIpaddr (16 digit hex) */
> +               (unsigned long)(kinfo->mem.bank[i].size >> 20));
> +    }
> +
> +    return;
> +
> +fail:
> +    panic("Failed to allocate requested domain memory."
> +          /* Don't want format this as PRIpaddr (16 digit hex) */
> +          " %ldKB unallocated. Fix the VMs configurations.\n",
> +          (unsigned long)kinfo->unassigned_mem >> 10);
> +}
> +
> +#ifdef CONFIG_VGICV2
> +static int __init make_gicv2_domU_node(struct kernel_info *kinfo)
> +{
> +    void *fdt = kinfo->fdt;
> +    int res = 0;
> +    __be32 reg[(GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS) * 2];
> +    __be32 *cells;
> +    const struct domain *d = kinfo->d;
> +
> +    res = domain_fdt_begin_node(fdt, "interrupt-controller",
> +                                vgic_dist_base(&d->arch.vgic));
> +    if ( res )
> +        return res;
> +
> +    res = fdt_property_cell(fdt, "#address-cells", 0);
> +    if ( res )
> +        return res;
> +
> +    res = fdt_property_cell(fdt, "#interrupt-cells", 3);
> +    if ( res )
> +        return res;
> +
> +    res = fdt_property(fdt, "interrupt-controller", NULL, 0);
> +    if ( res )
> +        return res;
> +
> +    res = fdt_property_string(fdt, "compatible", "arm,gic-400");
> +    if ( res )
> +        return res;
> +
> +    cells = &reg[0];
> +    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
> +                       vgic_dist_base(&d->arch.vgic), GUEST_GICD_SIZE);
> +    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
> +                       vgic_cpu_base(&d->arch.vgic), GUEST_GICC_SIZE);
> +
> +    res = fdt_property(fdt, "reg", reg, sizeof(reg));
> +    if (res)
> +        return res;
> +
> +    res = fdt_property_cell(fdt, "linux,phandle", kinfo->phandle_gic);
> +    if (res)
> +        return res;
> +
> +    res = fdt_property_cell(fdt, "phandle", kinfo->phandle_gic);
> +    if (res)
> +        return res;
> +
> +    res = fdt_end_node(fdt);
> +
> +    return res;
> +}
> +#endif
> +
> +#ifdef CONFIG_GICV3
> +static int __init make_gicv3_domU_node(struct kernel_info *kinfo)
> +{
> +    void *fdt = kinfo->fdt;
> +    int res = 0;
> +    __be32 *reg, *cells;
> +    const struct domain *d = kinfo->d;
> +    unsigned int i, len = 0;
> +
> +    res = domain_fdt_begin_node(fdt, "interrupt-controller",
> +                                vgic_dist_base(&d->arch.vgic));
> +    if ( res )
> +        return res;
> +
> +    res = fdt_property_cell(fdt, "#address-cells", 0);
> +    if ( res )
> +        return res;
> +
> +    res = fdt_property_cell(fdt, "#interrupt-cells", 3);
> +    if ( res )
> +        return res;
> +
> +    res = fdt_property(fdt, "interrupt-controller", NULL, 0);
> +    if ( res )
> +        return res;
> +
> +    res = fdt_property_string(fdt, "compatible", "arm,gic-v3");
> +    if ( res )
> +        return res;
> +
> +    /* reg specifies all re-distributors and Distributor. */
> +    len = (GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS) *
> +          (d->arch.vgic.nr_regions + 1) * sizeof(__be32);
> +    reg = xmalloc_bytes(len);
> +    if ( reg == NULL )
> +        return -ENOMEM;
> +    cells = reg;
> +
> +    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
> +                       vgic_dist_base(&d->arch.vgic), GUEST_GICV3_GICD_SIZE);
> +
> +    for ( i = 0; i < d->arch.vgic.nr_regions; i++ )
> +        dt_child_set_range(&cells,
> +                           GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
> +                           d->arch.vgic.rdist_regions[i].base,
> +                           d->arch.vgic.rdist_regions[i].size);
> +
> +    res = fdt_property(fdt, "reg", reg, len);
> +    xfree(reg);
> +    if (res)
> +        return res;
> +
> +    res = fdt_property_cell(fdt, "linux,phandle", kinfo->phandle_gic);
> +    if (res)
> +        return res;
> +
> +    res = fdt_property_cell(fdt, "phandle", kinfo->phandle_gic);
> +    if (res)
> +        return res;
> +
> +    res = fdt_end_node(fdt);
> +
> +    return res;
> +}
> +#endif
> +
> +static int __init make_gic_domU_node(struct kernel_info *kinfo)
> +{
> +    switch ( kinfo->d->arch.vgic.version )
> +    {
> +#ifdef CONFIG_GICV3
> +    case GIC_V3:
> +        return make_gicv3_domU_node(kinfo);
> +#endif
> +#ifdef CONFIG_VGICV2
> +    case GIC_V2:
> +        return make_gicv2_domU_node(kinfo);
> +#endif
> +    default:
> +        panic("Unsupported GIC version\n");
> +    }
> +}
> +
> +#ifdef CONFIG_SBSA_VUART_CONSOLE
> +static int __init make_vpl011_uart_node(struct kernel_info *kinfo)
> +{
> +    void *fdt = kinfo->fdt;
> +    int res;
> +    gic_interrupt_t intr;
> +    __be32 reg[GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS];
> +    __be32 *cells;
> +    struct domain *d = kinfo->d;
> +
> +    res = domain_fdt_begin_node(fdt, "sbsa-uart", d->arch.vpl011.base_addr);
> +    if ( res )
> +        return res;
> +
> +    res = fdt_property_string(fdt, "compatible", "arm,sbsa-uart");
> +    if ( res )
> +        return res;
> +
> +    cells = &reg[0];
> +    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS,
> +                       GUEST_ROOT_SIZE_CELLS, d->arch.vpl011.base_addr,
> +                       GUEST_PL011_SIZE);
> +
> +    res = fdt_property(fdt, "reg", reg, sizeof(reg));
> +    if ( res )
> +        return res;
> +
> +    set_interrupt(intr, d->arch.vpl011.virq, 0xf, DT_IRQ_TYPE_LEVEL_HIGH);
> +
> +    res = fdt_property(fdt, "interrupts", intr, sizeof (intr));
> +    if ( res )
> +        return res;
> +
> +    res = fdt_property_cell(fdt, "interrupt-parent",
> +                            kinfo->phandle_gic);
> +    if ( res )
> +        return res;
> +
> +    /* Use a default baud rate of 115200. */
> +    fdt_property_u32(fdt, "current-speed", 115200);
> +
> +    res = fdt_end_node(fdt);
> +    if ( res )
> +        return res;
> +
> +    return 0;
> +}
> +#endif
> +
> +/*
> + * Scan device tree properties for passthrough specific information.
> + * Returns < 0 on error
> + *         0 on success
> + */
> +static int __init handle_passthrough_prop(struct kernel_info *kinfo,
> +                                          const struct fdt_property *xen_reg,
> +                                          const struct fdt_property *xen_path,
> +                                          bool xen_force,
> +                                          uint32_t address_cells,
> +                                          uint32_t size_cells)
> +{
> +    const __be32 *cell;
> +    unsigned int i, len;
> +    struct dt_device_node *node;
> +    int res;
> +    paddr_t mstart, size, gstart;
> +
> +    /* xen,reg specifies where to map the MMIO region */
> +    cell = (const __be32 *)xen_reg->data;
> +    len = fdt32_to_cpu(xen_reg->len) / ((address_cells * 2 + size_cells) *
> +                                        sizeof(uint32_t));
> +
> +    for ( i = 0; i < len; i++ )
> +    {
> +        device_tree_get_reg(&cell, address_cells, size_cells,
> +                            &mstart, &size);
> +        gstart = dt_next_cell(address_cells, &cell);
> +
> +        if ( gstart & ~PAGE_MASK || mstart & ~PAGE_MASK || size & ~PAGE_MASK )
> +        {
> +            printk(XENLOG_ERR
> +                   "DomU passthrough config has not page aligned addresses/sizes\n");
> +            return -EINVAL;
> +        }
> +
> +        res = iomem_permit_access(kinfo->d, paddr_to_pfn(mstart),
> +                                  paddr_to_pfn(PAGE_ALIGN(mstart + size - 1)));
> +        if ( res )
> +        {
> +            printk(XENLOG_ERR "Unable to permit to dom%d access to"
> +                   " 0x%"PRIpaddr" - 0x%"PRIpaddr"\n",
> +                   kinfo->d->domain_id,
> +                   mstart & PAGE_MASK, PAGE_ALIGN(mstart + size) - 1);
> +            return res;
> +        }
> +
> +        res = map_regions_p2mt(kinfo->d,
> +                               gaddr_to_gfn(gstart),
> +                               PFN_DOWN(size),
> +                               maddr_to_mfn(mstart),
> +                               p2m_mmio_direct_dev);
> +        if ( res < 0 )
> +        {
> +            printk(XENLOG_ERR
> +                   "Failed to map %"PRIpaddr" to the guest at%"PRIpaddr"\n",
> +                   mstart, gstart);
> +            return -EFAULT;
> +        }
> +    }
> +
> +    /*
> +     * If xen_force, we let the user assign a MMIO region with no
> +     * associated path.
> +     */
> +    if ( xen_path == NULL )
> +        return xen_force ? 0 : -EINVAL;
> +
> +    /*
> +     * xen,path specifies the corresponding node in the host DT.
> +     * Both interrupt mappings and IOMMU settings are based on it,
> +     * as they are done based on the corresponding host DT node.
> +     */
> +    node = dt_find_node_by_path(xen_path->data);
> +    if ( node == NULL )
> +    {
> +        printk(XENLOG_ERR "Couldn't find node %s in host_dt!\n",
> +               (char *)xen_path->data);
> +        return -EINVAL;
> +    }
> +
> +    res = map_device_irqs_to_domain(kinfo->d, node, true, NULL);
> +    if ( res < 0 )
> +        return res;
> +
> +    res = iommu_add_dt_device(node);
> +    if ( res < 0 )
> +        return res;
> +
> +    /* If xen_force, we allow assignment of devices without IOMMU protection. */
> +    if ( xen_force && !dt_device_is_protected(node) )
> +        return 0;
> +
> +    return iommu_assign_dt_device(kinfo->d, node);
> +}
> +
> +static int __init handle_prop_pfdt(struct kernel_info *kinfo,
> +                                   const void *pfdt, int nodeoff,
> +                                   uint32_t address_cells, uint32_t size_cells,
> +                                   bool scan_passthrough_prop)
> +{
> +    void *fdt = kinfo->fdt;
> +    int propoff, nameoff, res;
> +    const struct fdt_property *prop, *xen_reg = NULL, *xen_path = NULL;
> +    const char *name;
> +    bool found, xen_force = false;
> +
> +    for ( propoff = fdt_first_property_offset(pfdt, nodeoff);
> +          propoff >= 0;
> +          propoff = fdt_next_property_offset(pfdt, propoff) )
> +    {
> +        if ( !(prop = fdt_get_property_by_offset(pfdt, propoff, NULL)) )
> +            return -FDT_ERR_INTERNAL;
> +
> +        found = false;
> +        nameoff = fdt32_to_cpu(prop->nameoff);
> +        name = fdt_string(pfdt, nameoff);
> +
> +        if ( scan_passthrough_prop )
> +        {
> +            if ( dt_prop_cmp("xen,reg", name) == 0 )
> +            {
> +                xen_reg = prop;
> +                found = true;
> +            }
> +            else if ( dt_prop_cmp("xen,path", name) == 0 )
> +            {
> +                xen_path = prop;
> +                found = true;
> +            }
> +            else if ( dt_prop_cmp("xen,force-assign-without-iommu",
> +                                  name) == 0 )
> +            {
> +                xen_force = true;
> +                found = true;
> +            }
> +        }
> +
> +        /*
> +         * Copy properties other than the ones above: xen,reg, xen,path,
> +         * and xen,force-assign-without-iommu.
> +         */
> +        if ( !found )
> +        {
> +            res = fdt_property(fdt, name, prop->data, fdt32_to_cpu(prop->len));
> +            if ( res )
> +                return res;
> +        }
> +    }
> +
> +    /*
> +     * Only handle passthrough properties if both xen,reg and xen,path
> +     * are present, or if xen,force-assign-without-iommu is specified.
> +     */
> +    if ( xen_reg != NULL && (xen_path != NULL || xen_force) )
> +    {
> +        res = handle_passthrough_prop(kinfo, xen_reg, xen_path, xen_force,
> +                                      address_cells, size_cells);
> +        if ( res < 0 )
> +        {
> +            printk(XENLOG_ERR "Failed to assign device to %pd\n", kinfo->d);
> +            return res;
> +        }
> +    }
> +    else if ( (xen_path && !xen_reg) || (xen_reg && !xen_path && !xen_force) )
> +    {
> +        printk(XENLOG_ERR "xen,reg or xen,path missing for %pd\n",
> +               kinfo->d);
> +        return -EINVAL;
> +    }
> +
> +    /* FDT_ERR_NOTFOUND => There is no more properties for this node */
> +    return ( propoff != -FDT_ERR_NOTFOUND ) ? propoff : 0;
> +}
> +
> +static int __init scan_pfdt_node(struct kernel_info *kinfo, const void *pfdt,
> +                                 int nodeoff,
> +                                 uint32_t address_cells, uint32_t size_cells,
> +                                 bool scan_passthrough_prop)
> +{
> +    int rc = 0;
> +    void *fdt = kinfo->fdt;
> +    int node_next;
> +
> +    rc = fdt_begin_node(fdt, fdt_get_name(pfdt, nodeoff, NULL));
> +    if ( rc )
> +        return rc;
> +
> +    rc = handle_prop_pfdt(kinfo, pfdt, nodeoff, address_cells, size_cells,
> +                          scan_passthrough_prop);
> +    if ( rc )
> +        return rc;
> +
> +    address_cells = device_tree_get_u32(pfdt, nodeoff, "#address-cells",
> +                                        DT_ROOT_NODE_ADDR_CELLS_DEFAULT);
> +    size_cells = device_tree_get_u32(pfdt, nodeoff, "#size-cells",
> +                                     DT_ROOT_NODE_SIZE_CELLS_DEFAULT);
> +
> +    node_next = fdt_first_subnode(pfdt, nodeoff);
> +    while ( node_next > 0 )
> +    {
> +        scan_pfdt_node(kinfo, pfdt, node_next, address_cells, size_cells,
> +                       scan_passthrough_prop);
> +        node_next = fdt_next_subnode(pfdt, node_next);
> +    }
> +
> +    return fdt_end_node(fdt);
> +}
> +
> +static int __init check_partial_fdt(void *pfdt, size_t size)
> +{
> +    int res;
> +
> +    if ( fdt_magic(pfdt) != FDT_MAGIC )
> +    {
> +        dprintk(XENLOG_ERR, "Partial FDT is not a valid Flat Device Tree");
> +        return -EINVAL;
> +    }
> +
> +    res = fdt_check_header(pfdt);
> +    if ( res )
> +    {
> +        dprintk(XENLOG_ERR, "Failed to check the partial FDT (%d)", res);
> +        return -EINVAL;
> +    }
> +
> +    if ( fdt_totalsize(pfdt) > size )
> +    {
> +        dprintk(XENLOG_ERR, "Partial FDT totalsize is too big");
> +        return -EINVAL;
> +    }
> +
> +    return 0;
> +}
> +
> +static int __init domain_handle_dtb_bootmodule(struct domain *d,
> +                                               struct kernel_info *kinfo)
> +{
> +    void *pfdt;
> +    int res, node_next;
> +
> +    pfdt = ioremap_cache(kinfo->dtb_bootmodule->start,
> +                         kinfo->dtb_bootmodule->size);
> +    if ( pfdt == NULL )
> +        return -EFAULT;
> +
> +    res = check_partial_fdt(pfdt, kinfo->dtb_bootmodule->size);
> +    if ( res < 0 )
> +        goto out;
> +
> +    for ( node_next = fdt_first_subnode(pfdt, 0);
> +          node_next > 0;
> +          node_next = fdt_next_subnode(pfdt, node_next) )
> +    {
> +        const char *name = fdt_get_name(pfdt, node_next, NULL);
> +
> +        if ( name == NULL )
> +            continue;
> +
> +        /*
> +         * Only scan /gic /aliases /passthrough, ignore the rest.
> +         * They don't have to be parsed in order.
> +         *
> +         * Take the GIC phandle value from the special /gic node in the
> +         * DTB fragment.
> +         */
> +        if ( dt_node_cmp(name, "gic") == 0 )
> +        {
> +            kinfo->phandle_gic = fdt_get_phandle(pfdt, node_next);
> +            continue;
> +        }
> +
> +        if ( dt_node_cmp(name, "aliases") == 0 )
> +        {
> +            res = scan_pfdt_node(kinfo, pfdt, node_next,
> +                                 DT_ROOT_NODE_ADDR_CELLS_DEFAULT,
> +                                 DT_ROOT_NODE_SIZE_CELLS_DEFAULT,
> +                                 false);
> +            if ( res )
> +                goto out;
> +            continue;
> +        }
> +        if ( dt_node_cmp(name, "passthrough") == 0 )
> +        {
> +            res = scan_pfdt_node(kinfo, pfdt, node_next,
> +                                 DT_ROOT_NODE_ADDR_CELLS_DEFAULT,
> +                                 DT_ROOT_NODE_SIZE_CELLS_DEFAULT,
> +                                 true);
> +            if ( res )
> +                goto out;
> +            continue;
> +        }
> +    }
> +
> + out:
> +    iounmap(pfdt);
> +
> +    return res;
> +}
> +
> +/*
> + * The max size for DT is 2MB. However, the generated DT is small (not including
> + * domU passthrough DT nodes whose size we account separately), 4KB are enough
> + * for now, but we might have to increase it in the future.
> + */
> +#define DOMU_DTB_SIZE 4096
> +static int __init prepare_dtb_domU(struct domain *d, struct kernel_info *kinfo)
> +{
> +    int addrcells, sizecells;
> +    int ret, fdt_size = DOMU_DTB_SIZE;
> +
> +    kinfo->phandle_gic = GUEST_PHANDLE_GIC;
> +    kinfo->gnttab_start = GUEST_GNTTAB_BASE;
> +    kinfo->gnttab_size = GUEST_GNTTAB_SIZE;
> +
> +    addrcells = GUEST_ROOT_ADDRESS_CELLS;
> +    sizecells = GUEST_ROOT_SIZE_CELLS;
> +
> +    /* Account for domU passthrough DT size */
> +    if ( kinfo->dtb_bootmodule )
> +        fdt_size += kinfo->dtb_bootmodule->size;
> +
> +    /* Cap to max DT size if needed */
> +    fdt_size = min(fdt_size, SZ_2M);
> +
> +    kinfo->fdt = xmalloc_bytes(fdt_size);
> +    if ( kinfo->fdt == NULL )
> +        return -ENOMEM;
> +
> +    ret = fdt_create(kinfo->fdt, fdt_size);
> +    if ( ret < 0 )
> +        goto err;
> +
> +    ret = fdt_finish_reservemap(kinfo->fdt);
> +    if ( ret < 0 )
> +        goto err;
> +
> +    ret = fdt_begin_node(kinfo->fdt, "");
> +    if ( ret < 0 )
> +        goto err;
> +
> +    ret = fdt_property_cell(kinfo->fdt, "#address-cells", addrcells);
> +    if ( ret )
> +        goto err;
> +
> +    ret = fdt_property_cell(kinfo->fdt, "#size-cells", sizecells);
> +    if ( ret )
> +        goto err;
> +
> +    ret = make_chosen_node(kinfo);
> +    if ( ret )
> +        goto err;
> +
> +    ret = make_psci_node(kinfo->fdt);
> +    if ( ret )
> +        goto err;
> +
> +    ret = make_cpus_node(d, kinfo->fdt);
> +    if ( ret )
> +        goto err;
> +
> +    ret = make_memory_node(d, kinfo->fdt, addrcells, sizecells, &kinfo->mem);
> +    if ( ret )
> +        goto err;
> +
> +    ret = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells,
> +                                &kinfo->shm_mem);
> +    if ( ret )
> +        goto err;
> +
> +    /*
> +     * domain_handle_dtb_bootmodule has to be called before the rest of
> +     * the device tree is generated because it depends on the value of
> +     * the field phandle_gic.
> +     */
> +    if ( kinfo->dtb_bootmodule )
> +    {
> +        ret = domain_handle_dtb_bootmodule(d, kinfo);
> +        if ( ret )
> +            goto err;
> +    }
> +
> +    ret = make_gic_domU_node(kinfo);
> +    if ( ret )
> +        goto err;
> +
> +    ret = make_timer_node(kinfo);
> +    if ( ret )
> +        goto err;
> +
> +    if ( kinfo->vpl011 )
> +    {
> +        ret = -EINVAL;
> +#ifdef CONFIG_SBSA_VUART_CONSOLE
> +        ret = make_vpl011_uart_node(kinfo);
> +#endif
> +        if ( ret )
> +            goto err;
> +    }
> +
> +    if ( kinfo->dom0less_feature & DOM0LESS_ENHANCED_NO_XS )
> +    {
> +        ret = make_hypervisor_node(d, kinfo, addrcells, sizecells);
> +        if ( ret )
> +            goto err;
> +    }
> +
> +    ret = fdt_end_node(kinfo->fdt);
> +    if ( ret < 0 )
> +        goto err;
> +
> +    ret = fdt_finish(kinfo->fdt);
> +    if ( ret < 0 )
> +        goto err;
> +
> +    return 0;
> +
> +  err:
> +    printk("Device tree generation failed (%d).\n", ret);
> +    xfree(kinfo->fdt);
> +
> +    return -EINVAL;
> +}
> +
> +static unsigned long __init domain_p2m_pages(unsigned long maxmem_kb,
> +                                             unsigned int smp_cpus)
> +{
> +    /*
> +     * Keep in sync with libxl__get_required_paging_memory().
> +     * 256 pages (1MB) per vcpu, plus 1 page per MiB of RAM for the P2M map,
> +     * plus 128 pages to cover extended regions.
> +     */
> +    unsigned long memkb = 4 * (256 * smp_cpus + (maxmem_kb / 1024) + 128);
> +
> +    BUILD_BUG_ON(PAGE_SIZE != SZ_4K);
> +
> +    return DIV_ROUND_UP(memkb, 1024) << (20 - PAGE_SHIFT);
> +}
> +
> +static int __init alloc_xenstore_evtchn(struct domain *d)
> +{
> +    evtchn_alloc_unbound_t alloc;
> +    int rc;
> +
> +    alloc.dom = d->domain_id;
> +    alloc.remote_dom = hardware_domain->domain_id;
> +    rc = evtchn_alloc_unbound(&alloc, 0);
> +    if ( rc )
> +    {
> +        printk("Failed allocating event channel for domain\n");
> +        return rc;
> +    }
> +
> +    d->arch.hvm.params[HVM_PARAM_STORE_EVTCHN] = alloc.port;
> +
> +    return 0;
> +}
> +
> +static int __init construct_domU(struct domain *d,
> +                                 const struct dt_device_node *node)
> +{
> +    struct kernel_info kinfo = {};
> +    const char *dom0less_enhanced;
> +    int rc;
> +    u64 mem;
> +    u32 p2m_mem_mb;
> +    unsigned long p2m_pages;
> +
> +    rc = dt_property_read_u64(node, "memory", &mem);
> +    if ( !rc )
> +    {
> +        printk("Error building DomU: cannot read \"memory\" property\n");
> +        return -EINVAL;
> +    }
> +    kinfo.unassigned_mem = (paddr_t)mem * SZ_1K;
> +
> +    rc = dt_property_read_u32(node, "xen,domain-p2m-mem-mb", &p2m_mem_mb);
> +    /* If xen,domain-p2m-mem-mb is not specified, use the default value. */
> +    p2m_pages = rc ?
> +                p2m_mem_mb << (20 - PAGE_SHIFT) :
> +                domain_p2m_pages(mem, d->max_vcpus);
> +
> +    spin_lock(&d->arch.paging.lock);
> +    rc = p2m_set_allocation(d, p2m_pages, NULL);
> +    spin_unlock(&d->arch.paging.lock);
> +    if ( rc != 0 )
> +        return rc;
> +
> +    printk("*** LOADING DOMU cpus=%u memory=%#"PRIx64"KB ***\n",
> +           d->max_vcpus, mem);
> +
> +    kinfo.vpl011 = dt_property_read_bool(node, "vpl011");
> +
> +    rc = dt_property_read_string(node, "xen,enhanced", &dom0less_enhanced);
> +    if ( rc == -EILSEQ ||
> +         rc == -ENODATA ||
> +         (rc == 0 && !strcmp(dom0less_enhanced, "enabled")) )
> +    {
> +        if ( hardware_domain )
> +            kinfo.dom0less_feature = DOM0LESS_ENHANCED;
> +        else
> +            panic("At the moment, Xenstore support requires dom0 to be present\n");
> +    }
> +    else if ( rc == 0 && !strcmp(dom0less_enhanced, "no-xenstore") )
> +        kinfo.dom0less_feature = DOM0LESS_ENHANCED_NO_XS;
> +
> +    if ( vcpu_create(d, 0) == NULL )
> +        return -ENOMEM;
> +
> +    d->max_pages = ((paddr_t)mem * SZ_1K) >> PAGE_SHIFT;
> +
> +    kinfo.d = d;
> +
> +    rc = kernel_probe(&kinfo, node);
> +    if ( rc < 0 )
> +        return rc;
> +
> +#ifdef CONFIG_ARM_64
> +    /* type must be set before allocate memory */
> +    d->arch.type = kinfo.type;
> +#endif
> +    if ( !dt_find_property(node, "xen,static-mem", NULL) )
> +        allocate_memory(d, &kinfo);
> +    else if ( !is_domain_direct_mapped(d) )
> +        allocate_static_memory(d, &kinfo, node);
> +    else
> +        assign_static_memory_11(d, &kinfo, node);
> +
> +#ifdef CONFIG_STATIC_SHM
> +    rc = process_shm(d, &kinfo, node);
> +    if ( rc < 0 )
> +        return rc;
> +#endif
> +
> +    /*
> +     * Base address and irq number are needed when creating vpl011 device
> +     * tree node in prepare_dtb_domU, so initialization on related variables
> +     * shall be done first.
> +     */
> +    if ( kinfo.vpl011 )
> +    {
> +        rc = domain_vpl011_init(d, NULL);
> +        if ( rc < 0 )
> +            return rc;
> +    }
> +
> +    rc = prepare_dtb_domU(d, &kinfo);
> +    if ( rc < 0 )
> +        return rc;
> +
> +    rc = construct_domain(d, &kinfo);
> +    if ( rc < 0 )
> +        return rc;
> +
> +    if ( kinfo.dom0less_feature & DOM0LESS_XENSTORE )
> +    {
> +        ASSERT(hardware_domain);
> +        rc = alloc_xenstore_evtchn(d);
> +        if ( rc < 0 )
> +            return rc;
> +        d->arch.hvm.params[HVM_PARAM_STORE_PFN] = ~0ULL;
> +    }
> +
> +    return rc;
> +}
> +
> +void __init create_domUs(void)
> +{
> +    struct dt_device_node *node;
> +    const struct dt_device_node *cpupool_node,
> +                                *chosen = dt_find_node_by_path("/chosen");
> +
> +    BUG_ON(chosen == NULL);
> +    dt_for_each_child_node(chosen, node)
> +    {
> +        struct domain *d;
> +        struct xen_domctl_createdomain d_cfg = {
> +            .arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE,
> +            .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
> +            /*
> +             * The default of 1023 should be sufficient for guests because
> +             * on ARM we don't bind physical interrupts to event channels.
> +             * The only use of the evtchn port is inter-domain communications.
> +             * 1023 is also the default value used in libxl.
> +             */
> +            .max_evtchn_port = 1023,
> +            .max_grant_frames = -1,
> +            .max_maptrack_frames = -1,
> +            .grant_opts = XEN_DOMCTL_GRANT_version(opt_gnttab_max_version),
> +        };
> +        unsigned int flags = 0U;
> +        uint32_t val;
> +        int rc;
> +
> +        if ( !dt_device_is_compatible(node, "xen,domain") )
> +            continue;
> +
> +        if ( (max_init_domid + 1) >= DOMID_FIRST_RESERVED )
> +            panic("No more domain IDs available\n");
> +
> +        if ( dt_find_property(node, "xen,static-mem", NULL) )
> +            flags |= CDF_staticmem;
> +
> +        if ( dt_property_read_bool(node, "direct-map") )
> +        {
> +            if ( !(flags & CDF_staticmem) )
> +                panic("direct-map is not valid for domain %s without static allocation.\n",
> +                      dt_node_name(node));
> +
> +            flags |= CDF_directmap;
> +        }
> +
> +        if ( !dt_property_read_u32(node, "cpus", &d_cfg.max_vcpus) )
> +            panic("Missing property 'cpus' for domain %s\n",
> +                  dt_node_name(node));
> +
> +        if ( dt_find_compatible_node(node, NULL, "multiboot,device-tree") &&
> +             iommu_enabled )
> +            d_cfg.flags |= XEN_DOMCTL_CDF_iommu;
> +
> +        if ( !dt_property_read_u32(node, "nr_spis", &d_cfg.arch.nr_spis) )
> +        {
> +            int vpl011_virq = GUEST_VPL011_SPI;
> +
> +            d_cfg.arch.nr_spis = gic_number_lines() - 32;
> +
> +            /*
> +             * The VPL011 virq is GUEST_VPL011_SPI, unless direct-map is
> +             * set, in which case it'll match the hardware.
> +             *
> +             * Since the domain is not yet created, we can't use
> +             * d->arch.vpl011.irq. So the logic to find the vIRQ has to
> +             * be hardcoded.
> +             * The logic here shall be consistent with the one in
> +             * domain_vpl011_init().
> +             */
> +            if ( flags & CDF_directmap )
> +            {
> +                vpl011_virq = serial_irq(SERHND_DTUART);
> +                if ( vpl011_virq < 0 )
> +                    panic("Error getting IRQ number for this serial port %d\n",
> +                          SERHND_DTUART);
> +            }
> +
> +            /*
> +             * vpl011 uses one emulated SPI. If vpl011 is requested, make
> +             * sure that we allocate enough SPIs for it.
> +             */
> +            if ( dt_property_read_bool(node, "vpl011") )
> +                d_cfg.arch.nr_spis = MAX(d_cfg.arch.nr_spis,
> +                                         vpl011_virq - 32 + 1);
> +        }
> +
> +        /* Get the optional property domain-cpupool */
> +        cpupool_node = dt_parse_phandle(node, "domain-cpupool", 0);
> +        if ( cpupool_node )
> +        {
> +            int pool_id = btcpupools_get_domain_pool_id(cpupool_node);
> +            if ( pool_id < 0 )
> +                panic("Error getting cpupool id from domain-cpupool (%d)\n",
> +                      pool_id);
> +            d_cfg.cpupool_id = pool_id;
> +        }
> +
> +        if ( dt_property_read_u32(node, "max_grant_version", &val) )
> +            d_cfg.grant_opts = XEN_DOMCTL_GRANT_version(val);
> +
> +        if ( dt_property_read_u32(node, "max_grant_frames", &val) )
> +        {
> +            if ( val > INT32_MAX )
> +                panic("max_grant_frames (%"PRIu32") overflow\n", val);
> +            d_cfg.max_grant_frames = val;
> +        }
> +
> +        if ( dt_property_read_u32(node, "max_maptrack_frames", &val) )
> +        {
> +            if ( val > INT32_MAX )
> +                panic("max_maptrack_frames (%"PRIu32") overflow\n", val);
> +            d_cfg.max_maptrack_frames = val;
> +        }
> +
> +        if ( dt_get_property(node, "sve", &val) )
> +        {
> +#ifdef CONFIG_ARM64_SVE
> +            unsigned int sve_vl_bits;
> +            bool ret = false;
> +
> +            if ( !val )
> +            {
> +                /* Property found with no value, means max HW VL supported */
> +                ret = sve_domctl_vl_param(-1, &sve_vl_bits);
> +            }
> +            else
> +            {
> +                if ( dt_property_read_u32(node, "sve", &val) )
> +                    ret = sve_domctl_vl_param(val, &sve_vl_bits);
> +                else
> +                    panic("Error reading 'sve' property\n");
> +            }
> +
> +            if ( ret )
> +                d_cfg.arch.sve_vl = sve_encode_vl(sve_vl_bits);
> +            else
> +                panic("SVE vector length error\n");
> +#else
> +            panic("'sve' property found, but CONFIG_ARM64_SVE not selected\n");
> +#endif
> +        }
> +
> +        /*
> +         * The variable max_init_domid is initialized with zero, so here it's
> +         * very important to use the pre-increment operator to call
> +         * domain_create() with a domid > 0. (domid == 0 is reserved for Dom0)
> +         */
> +        d = domain_create(++max_init_domid, &d_cfg, flags);
> +        if ( IS_ERR(d) )
> +            panic("Error creating domain %s (rc = %ld)\n",
> +                  dt_node_name(node), PTR_ERR(d));
> +
> +        d->is_console = true;
> +        dt_device_set_used_by(node, d->domain_id);
> +
> +        rc = construct_domU(d, node);
> +        if ( rc )
> +            panic("Could not set up domain %s (rc = %d)\n",
> +                  dt_node_name(node), rc);
> +    }
> +}
> +
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * tab-width: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index f69f238ccea4..a0d656b33629 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -28,6 +28,7 @@
>  #include <asm/setup.h>
>  #include <asm/arm64/sve.h>
>  #include <asm/cpufeature.h>
> +#include <asm/dom0less-build.h>
>  #include <asm/domain_build.h>
>  #include <xen/event.h>
>  
> @@ -117,7 +118,7 @@ struct vcpu *__init alloc_dom0_vcpu0(struct domain *dom0)
>      return vcpu_create(dom0, 0);
>  }
>  
> -static unsigned int __init get_allocation_size(paddr_t size)
> +unsigned int __init get_allocation_size(paddr_t size)
>  {
>      /*
>       * get_order_from_bytes returns the order greater than or equal to
> @@ -413,113 +414,6 @@ static void __init allocate_memory_11(struct domain *d,
>      }
>  }
>  
> -static bool __init allocate_bank_memory(struct domain *d,
> -                                        struct kernel_info *kinfo,
> -                                        gfn_t sgfn,
> -                                        paddr_t tot_size)
> -{
> -    int res;
> -    struct page_info *pg;
> -    struct membank *bank;
> -    unsigned int max_order = ~0;
> -
> -    /*
> -     * allocate_bank_memory can be called with a tot_size of zero for
> -     * the second memory bank. It is not an error and we can safely
> -     * avoid creating a zero-size memory bank.
> -     */
> -    if ( tot_size == 0 )
> -        return true;
> -
> -    bank = &kinfo->mem.bank[kinfo->mem.nr_banks];
> -    bank->start = gfn_to_gaddr(sgfn);
> -    bank->size = tot_size;
> -
> -    while ( tot_size > 0 )
> -    {
> -        unsigned int order = get_allocation_size(tot_size);
> -
> -        order = min(max_order, order);
> -
> -        pg = alloc_domheap_pages(d, order, 0);
> -        if ( !pg )
> -        {
> -            /*
> -             * If we can't allocate one page, then it is unlikely to
> -             * succeed in the next iteration. So bail out.
> -             */
> -            if ( !order )
> -                return false;
> -
> -            /*
> -             * If we can't allocate memory with order, then it is
> -             * unlikely to succeed in the next iteration.
> -             * Record the order - 1 to avoid re-trying.
> -             */
> -            max_order = order - 1;
> -            continue;
> -        }
> -
> -        res = guest_physmap_add_page(d, sgfn, page_to_mfn(pg), order);
> -        if ( res )
> -        {
> -            dprintk(XENLOG_ERR, "Failed map pages to DOMU: %d", res);
> -            return false;
> -        }
> -
> -        sgfn = gfn_add(sgfn, 1UL << order);
> -        tot_size -= (1ULL << (PAGE_SHIFT + order));
> -    }
> -
> -    kinfo->mem.nr_banks++;
> -    kinfo->unassigned_mem -= bank->size;
> -
> -    return true;
> -}
> -
> -static void __init allocate_memory(struct domain *d, struct kernel_info *kinfo)
> -{
> -    unsigned int i;
> -    paddr_t bank_size;
> -
> -    printk(XENLOG_INFO "Allocating mappings totalling %ldMB for %pd:\n",
> -           /* Don't want format this as PRIpaddr (16 digit hex) */
> -           (unsigned long)(kinfo->unassigned_mem >> 20), d);
> -
> -    kinfo->mem.nr_banks = 0;
> -    bank_size = MIN(GUEST_RAM0_SIZE, kinfo->unassigned_mem);
> -    if ( !allocate_bank_memory(d, kinfo, gaddr_to_gfn(GUEST_RAM0_BASE),
> -                               bank_size) )
> -        goto fail;
> -
> -    bank_size = MIN(GUEST_RAM1_SIZE, kinfo->unassigned_mem);
> -    if ( !allocate_bank_memory(d, kinfo, gaddr_to_gfn(GUEST_RAM1_BASE),
> -                               bank_size) )
> -        goto fail;
> -
> -    if ( kinfo->unassigned_mem )
> -        goto fail;
> -
> -    for( i = 0; i < kinfo->mem.nr_banks; i++ )
> -    {
> -        printk(XENLOG_INFO "%pd BANK[%d] %#"PRIpaddr"-%#"PRIpaddr" (%ldMB)\n",
> -               d,
> -               i,
> -               kinfo->mem.bank[i].start,
> -               kinfo->mem.bank[i].start + kinfo->mem.bank[i].size,
> -               /* Don't want format this as PRIpaddr (16 digit hex) */
> -               (unsigned long)(kinfo->mem.bank[i].size >> 20));
> -    }
> -
> -    return;
> -
> -fail:
> -    panic("Failed to allocate requested domain memory."
> -          /* Don't want format this as PRIpaddr (16 digit hex) */
> -          " %ldKB unallocated. Fix the VMs configurations.\n",
> -          (unsigned long)kinfo->unassigned_mem >> 10);
> -}
> -
>  #ifdef CONFIG_STATIC_MEMORY
>  static bool __init append_static_memory_to_bank(struct domain *d,
>                                                  struct membank *bank,
> @@ -599,9 +493,8 @@ static int __init parse_static_mem_prop(const struct dt_device_node *node,
>  }
>  
>  /* Allocate memory from static memory as RAM for one specific domain d. */
> -static void __init allocate_static_memory(struct domain *d,
> -                                          struct kernel_info *kinfo,
> -                                          const struct dt_device_node *node)
> +void __init allocate_static_memory(struct domain *d, struct kernel_info *kinfo,
> +                                   const struct dt_device_node *node)
>  {
>      u32 addr_cells, size_cells, reg_cells;
>      unsigned int nr_banks, gbank, bank = 0;
> @@ -705,9 +598,8 @@ static void __init allocate_static_memory(struct domain *d,
>   * The static memory will be directly mapped in the guest(Guest Physical
>   * Address == Physical Address).
>   */
> -static void __init assign_static_memory_11(struct domain *d,
> -                                           struct kernel_info *kinfo,
> -                                           const struct dt_device_node *node)
> +void __init assign_static_memory_11(struct domain *d, struct kernel_info *kinfo,
> +                                    const struct dt_device_node *node)
>  {
>      u32 addr_cells, size_cells, reg_cells;
>      unsigned int nr_banks, bank = 0;
> @@ -941,8 +833,8 @@ static int __init append_shm_bank_to_domain(struct kernel_info *kinfo,
>      return 0;
>  }
>  
> -static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
> -                              const struct dt_device_node *node)
> +int __init process_shm(struct domain *d, struct kernel_info *kinfo,
> +                       const struct dt_device_node *node)
>  {
>      struct dt_device_node *shm_node;
>  
> @@ -1047,20 +939,6 @@ static int __init process_shm(struct domain *d, struct kernel_info *kinfo,
>      return 0;
>  }
>  #endif /* CONFIG_STATIC_SHM */
> -#else
> -static void __init allocate_static_memory(struct domain *d,
> -                                          struct kernel_info *kinfo,
> -                                          const struct dt_device_node *node)
> -{
> -    ASSERT_UNREACHABLE();
> -}
> -
> -static void __init assign_static_memory_11(struct domain *d,
> -                                           struct kernel_info *kinfo,
> -                                           const struct dt_device_node *node)
> -{
> -    ASSERT_UNREACHABLE();
> -}
>  #endif
>  
>  /*
> @@ -1264,17 +1142,10 @@ static int __init write_properties(struct domain *d, struct kernel_info *kinfo,
>      return 0;
>  }
>  
> -/*
> - * Helper to write an interrupts with the GIC format
> - * This code is assuming the irq is an PPI.
> - */
> -
> -typedef __be32 gic_interrupt_t[3];
> -
> -static void __init set_interrupt(gic_interrupt_t interrupt,
> -                                 unsigned int irq,
> -                                 unsigned int cpumask,
> -                                 unsigned int level)
> +void __init set_interrupt(gic_interrupt_t interrupt,
> +                          unsigned int irq,
> +                          unsigned int cpumask,
> +                          unsigned int level)
>  {
>      __be32 *cells = interrupt;
>      bool is_ppi = !!(irq < 32);
> @@ -1319,8 +1190,7 @@ static int __init fdt_property_interrupts(const struct kernel_info *kinfo,
>   * unit (which contains the physical address) with name to generate a
>   * node name.
>   */
> -static int __init domain_fdt_begin_node(void *fdt, const char *name,
> -                                        uint64_t unit)
> +int __init domain_fdt_begin_node(void *fdt, const char *name, uint64_t unit)
>  {
>      /*
>       * The size of the buffer to hold the longest possible string (i.e.
> @@ -1344,10 +1214,10 @@ static int __init domain_fdt_begin_node(void *fdt, const char *name,
>      return fdt_begin_node(fdt, buf);
>  }
>  
> -static int __init make_memory_node(const struct domain *d,
> -                                   void *fdt,
> -                                   int addrcells, int sizecells,
> -                                   struct meminfo *mem)
> +int __init make_memory_node(const struct domain *d,
> +                            void *fdt,
> +                            int addrcells, int sizecells,
> +                            struct meminfo *mem)
>  {
>      unsigned int i;
>      int res, reg_size = addrcells + sizecells;
> @@ -1483,10 +1353,10 @@ static int __init make_shm_memory_node(const struct domain *d,
>  }
>  #endif
>  
> -static int __init make_resv_memory_node(const struct domain *d,
> -                                        void *fdt,
> -                                        int addrcells, int sizecells,
> -                                        const struct meminfo *mem)
> +int __init make_resv_memory_node(const struct domain *d,
> +                                 void *fdt,
> +                                 int addrcells, int sizecells,
> +                                 const struct meminfo *mem)
>  {
>      int res = 0;
>      /* Placeholder for reserved-memory\0 */
> @@ -1819,9 +1689,9 @@ static int __init find_domU_holes(const struct kernel_info *kinfo,
>      return res;
>  }
>  
> -static int __init make_hypervisor_node(struct domain *d,
> -                                       const struct kernel_info *kinfo,
> -                                       int addrcells, int sizecells)
> +int __init make_hypervisor_node(struct domain *d,
> +                                const struct kernel_info *kinfo,
> +                                int addrcells, int sizecells)
>  {
>      const char compat[] =
>          "xen,xen-" XEN_VERSION_STRING "\0"
> @@ -1938,7 +1808,7 @@ static int __init make_hypervisor_node(struct domain *d,
>      return res;
>  }
>  
> -static int __init make_psci_node(void *fdt)
> +int __init make_psci_node(void *fdt)
>  {
>      int res;
>      const char compat[] =
> @@ -1974,7 +1844,7 @@ static int __init make_psci_node(void *fdt)
>      return res;
>  }
>  
> -static int __init make_cpus_node(const struct domain *d, void *fdt)
> +int __init make_cpus_node(const struct domain *d, void *fdt)
>  {
>      int res;
>      const struct dt_device_node *cpus = dt_find_node_by_path("/cpus");
> @@ -2172,7 +2042,7 @@ static int __init make_gic_node(const struct domain *d, void *fdt,
>      return res;
>  }
>  
> -static int __init make_timer_node(const struct kernel_info *kinfo)
> +int __init make_timer_node(const struct kernel_info *kinfo)
>  {
>      void *fdt = kinfo->fdt;
>      static const struct dt_device_match timer_ids[] __initconst =
> @@ -2490,743 +2360,134 @@ static int __init handle_node(struct domain *d, struct kernel_info *kinfo,
>      return res;
>  }
>  
> -#ifdef CONFIG_VGICV2
> -static int __init make_gicv2_domU_node(struct kernel_info *kinfo)
> +static int __init prepare_dtb_hwdom(struct domain *d, struct kernel_info *kinfo)
>  {
> -    void *fdt = kinfo->fdt;
> -    int res = 0;
> -    __be32 reg[(GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS) * 2];
> -    __be32 *cells;
> -    const struct domain *d = kinfo->d;
> -
> -    res = domain_fdt_begin_node(fdt, "interrupt-controller",
> -                                vgic_dist_base(&d->arch.vgic));
> -    if ( res )
> -        return res;
> -
> -    res = fdt_property_cell(fdt, "#address-cells", 0);
> -    if ( res )
> -        return res;
> +    const p2m_type_t default_p2mt = p2m_mmio_direct_c;
> +    const void *fdt;
> +    int new_size;
> +    int ret;
>  
> -    res = fdt_property_cell(fdt, "#interrupt-cells", 3);
> -    if ( res )
> -        return res;
> +    ASSERT(dt_host && (dt_host->sibling == NULL));
>  
> -    res = fdt_property(fdt, "interrupt-controller", NULL, 0);
> -    if ( res )
> -        return res;
> +    kinfo->phandle_gic = dt_interrupt_controller->phandle;
> +    fdt = device_tree_flattened;
>  
> -    res = fdt_property_string(fdt, "compatible", "arm,gic-400");
> -    if ( res )
> -        return res;
> +    new_size = fdt_totalsize(fdt) + DOM0_FDT_EXTRA_SIZE;
> +    kinfo->fdt = xmalloc_bytes(new_size);
> +    if ( kinfo->fdt == NULL )
> +        return -ENOMEM;
>  
> -    cells = &reg[0];
> -    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
> -                       vgic_dist_base(&d->arch.vgic), GUEST_GICD_SIZE);
> -    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
> -                       vgic_cpu_base(&d->arch.vgic), GUEST_GICC_SIZE);
> +    ret = fdt_create(kinfo->fdt, new_size);
> +    if ( ret < 0 )
> +        goto err;
>  
> -    res = fdt_property(fdt, "reg", reg, sizeof(reg));
> -    if (res)
> -        return res;
> +    fdt_finish_reservemap(kinfo->fdt);
>  
> -    res = fdt_property_cell(fdt, "linux,phandle", kinfo->phandle_gic);
> -    if (res)
> -        return res;
> +    ret = handle_node(d, kinfo, dt_host, default_p2mt);
> +    if ( ret )
> +        goto err;
>  
> -    res = fdt_property_cell(fdt, "phandle", kinfo->phandle_gic);
> -    if (res)
> -        return res;
> +    ret = fdt_finish(kinfo->fdt);
> +    if ( ret < 0 )
> +        goto err;
>  
> -    res = fdt_end_node(fdt);
> +    return 0;
>  
> -    return res;
> +  err:
> +    printk("Device tree generation failed (%d).\n", ret);
> +    xfree(kinfo->fdt);
> +    return -EINVAL;
>  }
> -#endif
>  
> -#ifdef CONFIG_GICV3
> -static int __init make_gicv3_domU_node(struct kernel_info *kinfo)
> +static void __init dtb_load(struct kernel_info *kinfo)
>  {
> -    void *fdt = kinfo->fdt;
> -    int res = 0;
> -    __be32 *reg, *cells;
> -    const struct domain *d = kinfo->d;
> -    unsigned int i, len = 0;
> -
> -    res = domain_fdt_begin_node(fdt, "interrupt-controller",
> -                                vgic_dist_base(&d->arch.vgic));
> -    if ( res )
> -        return res;
> -
> -    res = fdt_property_cell(fdt, "#address-cells", 0);
> -    if ( res )
> -        return res;
> -
> -    res = fdt_property_cell(fdt, "#interrupt-cells", 3);
> -    if ( res )
> -        return res;
> -
> -    res = fdt_property(fdt, "interrupt-controller", NULL, 0);
> -    if ( res )
> -        return res;
> -
> -    res = fdt_property_string(fdt, "compatible", "arm,gic-v3");
> -    if ( res )
> -        return res;
> -
> -    /* reg specifies all re-distributors and Distributor. */
> -    len = (GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS) *
> -          (d->arch.vgic.nr_regions + 1) * sizeof(__be32);
> -    reg = xmalloc_bytes(len);
> -    if ( reg == NULL )
> -        return -ENOMEM;
> -    cells = reg;
> -
> -    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
> -                       vgic_dist_base(&d->arch.vgic), GUEST_GICV3_GICD_SIZE);
> -
> -    for ( i = 0; i < d->arch.vgic.nr_regions; i++ )
> -        dt_child_set_range(&cells,
> -                           GUEST_ROOT_ADDRESS_CELLS, GUEST_ROOT_SIZE_CELLS,
> -                           d->arch.vgic.rdist_regions[i].base,
> -                           d->arch.vgic.rdist_regions[i].size);
> -
> -    res = fdt_property(fdt, "reg", reg, len);
> -    xfree(reg);
> -    if (res)
> -        return res;
> -
> -    res = fdt_property_cell(fdt, "linux,phandle", kinfo->phandle_gic);
> -    if (res)
> -        return res;
> -
> -    res = fdt_property_cell(fdt, "phandle", kinfo->phandle_gic);
> -    if (res)
> -        return res;
> +    unsigned long left;
>  
> -    res = fdt_end_node(fdt);
> +    printk("Loading %pd DTB to 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
> +           kinfo->d, kinfo->dtb_paddr,
> +           kinfo->dtb_paddr + fdt_totalsize(kinfo->fdt));
>  
> -    return res;
> -}
> -#endif
> +    left = copy_to_guest_phys_flush_dcache(kinfo->d, kinfo->dtb_paddr,
> +                                           kinfo->fdt,
> +                                           fdt_totalsize(kinfo->fdt));
>  
> -static int __init make_gic_domU_node(struct kernel_info *kinfo)
> -{
> -    switch ( kinfo->d->arch.vgic.version )
> -    {
> -#ifdef CONFIG_GICV3
> -    case GIC_V3:
> -        return make_gicv3_domU_node(kinfo);
> -#endif
> -#ifdef CONFIG_VGICV2
> -    case GIC_V2:
> -        return make_gicv2_domU_node(kinfo);
> -#endif
> -    default:
> -        panic("Unsupported GIC version\n");
> -    }
> +    if ( left != 0 )
> +        panic("Unable to copy the DTB to %pd memory (left = %lu bytes)\n",
> +              kinfo->d, left);
> +    xfree(kinfo->fdt);
>  }
>  
> -#ifdef CONFIG_SBSA_VUART_CONSOLE
> -static int __init make_vpl011_uart_node(struct kernel_info *kinfo)
> +static void __init initrd_load(struct kernel_info *kinfo)
>  {
> -    void *fdt = kinfo->fdt;
> +    const struct bootmodule *mod = kinfo->initrd_bootmodule;
> +    paddr_t load_addr = kinfo->initrd_paddr;
> +    paddr_t paddr, len;
> +    int node;
>      int res;
> -    gic_interrupt_t intr;
> -    __be32 reg[GUEST_ROOT_ADDRESS_CELLS + GUEST_ROOT_SIZE_CELLS];
> -    __be32 *cells;
> -    struct domain *d = kinfo->d;
> -
> -    res = domain_fdt_begin_node(fdt, "sbsa-uart", d->arch.vpl011.base_addr);
> -    if ( res )
> -        return res;
> +    __be32 val[2];
> +    __be32 *cellp;
> +    void __iomem *initrd;
>  
> -    res = fdt_property_string(fdt, "compatible", "arm,sbsa-uart");
> -    if ( res )
> -        return res;
> +    if ( !mod || !mod->size )
> +        return;
>  
> -    cells = &reg[0];
> -    dt_child_set_range(&cells, GUEST_ROOT_ADDRESS_CELLS,
> -                       GUEST_ROOT_SIZE_CELLS, d->arch.vpl011.base_addr,
> -                       GUEST_PL011_SIZE);
> +    paddr = mod->start;
> +    len = mod->size;
>  
> -    res = fdt_property(fdt, "reg", reg, sizeof(reg));
> -    if ( res )
> -        return res;
> +    printk("Loading %pd initrd from %"PRIpaddr" to 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
> +           kinfo->d, paddr, load_addr, load_addr + len);
>  
> -    set_interrupt(intr, d->arch.vpl011.virq, 0xf, DT_IRQ_TYPE_LEVEL_HIGH);
> +    /* Fix up linux,initrd-start and linux,initrd-end in /chosen */
> +    node = fdt_path_offset(kinfo->fdt, "/chosen");
> +    if ( node < 0 )
> +        panic("Cannot find the /chosen node\n");
>  
> -    res = fdt_property(fdt, "interrupts", intr, sizeof (intr));
> +    cellp = (__be32 *)val;
> +    dt_set_cell(&cellp, ARRAY_SIZE(val), load_addr);
> +    res = fdt_setprop_inplace(kinfo->fdt, node, "linux,initrd-start",
> +                              val, sizeof(val));
>      if ( res )
> -        return res;
> +        panic("Cannot fix up \"linux,initrd-start\" property\n");
>  
> -    res = fdt_property_cell(fdt, "interrupt-parent",
> -                            kinfo->phandle_gic);
> +    cellp = (__be32 *)val;
> +    dt_set_cell(&cellp, ARRAY_SIZE(val), load_addr + len);
> +    res = fdt_setprop_inplace(kinfo->fdt, node, "linux,initrd-end",
> +                              val, sizeof(val));
>      if ( res )
> -        return res;
> +        panic("Cannot fix up \"linux,initrd-end\" property\n");
>  
> -    /* Use a default baud rate of 115200. */
> -    fdt_property_u32(fdt, "current-speed", 115200);
> +    initrd = ioremap_wc(paddr, len);
> +    if ( !initrd )
> +        panic("Unable to map the hwdom initrd\n");
>  
> -    res = fdt_end_node(fdt);
> -    if ( res )
> -        return res;
> +    res = copy_to_guest_phys_flush_dcache(kinfo->d, load_addr,
> +                                          initrd, len);
> +    if ( res != 0 )
> +        panic("Unable to copy the initrd in the hwdom memory\n");
>  
> -    return 0;
> +    iounmap(initrd);
>  }
> -#endif
>  
>  /*
> - * Scan device tree properties for passthrough specific information.
> - * Returns < 0 on error
> - *         0 on success
> + * Allocate the event channel PPIs and setup the HVM_PARAM_CALLBACK_IRQ.
> + * The allocated IRQ will be found in d->arch.evtchn_irq.
> + *
> + * Note that this should only be called once all PPIs used by the
> + * hardware domain have been registered.
>   */
> -static int __init handle_passthrough_prop(struct kernel_info *kinfo,
> -                                          const struct fdt_property *xen_reg,
> -                                          const struct fdt_property *xen_path,
> -                                          bool xen_force,
> -                                          uint32_t address_cells, uint32_t size_cells)
> +void __init evtchn_allocate(struct domain *d)
>  {
> -    const __be32 *cell;
> -    unsigned int i, len;
> -    struct dt_device_node *node;
>      int res;
> -    paddr_t mstart, size, gstart;
> -
> -    /* xen,reg specifies where to map the MMIO region */
> -    cell = (const __be32 *)xen_reg->data;
> -    len = fdt32_to_cpu(xen_reg->len) / ((address_cells * 2 + size_cells) *
> -                                        sizeof(uint32_t));
> +    u64 val;
>  
> -    for ( i = 0; i < len; i++ )
> -    {
> -        device_tree_get_reg(&cell, address_cells, size_cells,
> -                            &mstart, &size);
> -        gstart = dt_next_cell(address_cells, &cell);
> +    res = vgic_allocate_ppi(d);
> +    if ( res < 0 )
> +        panic("Unable to allocate a PPI for the event channel interrupt\n");
>  
> -        if ( gstart & ~PAGE_MASK || mstart & ~PAGE_MASK || size & ~PAGE_MASK )
> -        {
> -            printk(XENLOG_ERR
> -                    "DomU passthrough config has not page aligned addresses/sizes\n");
> -            return -EINVAL;
> -        }
> +    d->arch.evtchn_irq = res;
>  
> -        res = iomem_permit_access(kinfo->d, paddr_to_pfn(mstart),
> -                                  paddr_to_pfn(PAGE_ALIGN(mstart + size - 1)));
> -        if ( res )
> -        {
> -            printk(XENLOG_ERR "Unable to permit to dom%d access to"
> -                   " 0x%"PRIpaddr" - 0x%"PRIpaddr"\n",
> -                   kinfo->d->domain_id,
> -                   mstart & PAGE_MASK, PAGE_ALIGN(mstart + size) - 1);
> -            return res;
> -        }
> -
> -        res = map_regions_p2mt(kinfo->d,
> -                               gaddr_to_gfn(gstart),
> -                               PFN_DOWN(size),
> -                               maddr_to_mfn(mstart),
> -                               p2m_mmio_direct_dev);
> -        if ( res < 0 )
> -        {
> -            printk(XENLOG_ERR
> -                   "Failed to map %"PRIpaddr" to the guest at%"PRIpaddr"\n",
> -                   mstart, gstart);
> -            return -EFAULT;
> -        }
> -    }
> -
> -    /*
> -     * If xen_force, we let the user assign a MMIO region with no
> -     * associated path.
> -     */
> -    if ( xen_path == NULL )
> -        return xen_force ? 0 : -EINVAL;
> -
> -    /*
> -     * xen,path specifies the corresponding node in the host DT.
> -     * Both interrupt mappings and IOMMU settings are based on it,
> -     * as they are done based on the corresponding host DT node.
> -     */
> -    node = dt_find_node_by_path(xen_path->data);
> -    if ( node == NULL )
> -    {
> -        printk(XENLOG_ERR "Couldn't find node %s in host_dt!\n",
> -               (char *)xen_path->data);
> -        return -EINVAL;
> -    }
> -
> -    res = map_device_irqs_to_domain(kinfo->d, node, true, NULL);
> -    if ( res < 0 )
> -        return res;
> -
> -    res = iommu_add_dt_device(node);
> -    if ( res < 0 )
> -        return res;
> -
> -    /* If xen_force, we allow assignment of devices without IOMMU protection. */
> -    if ( xen_force && !dt_device_is_protected(node) )
> -        return 0;
> -
> -    return iommu_assign_dt_device(kinfo->d, node);
> -}
> -
> -static int __init handle_prop_pfdt(struct kernel_info *kinfo,
> -                                   const void *pfdt, int nodeoff,
> -                                   uint32_t address_cells, uint32_t size_cells,
> -                                   bool scan_passthrough_prop)
> -{
> -    void *fdt = kinfo->fdt;
> -    int propoff, nameoff, res;
> -    const struct fdt_property *prop, *xen_reg = NULL, *xen_path = NULL;
> -    const char *name;
> -    bool found, xen_force = false;
> -
> -    for ( propoff = fdt_first_property_offset(pfdt, nodeoff);
> -          propoff >= 0;
> -          propoff = fdt_next_property_offset(pfdt, propoff) )
> -    {
> -        if ( !(prop = fdt_get_property_by_offset(pfdt, propoff, NULL)) )
> -            return -FDT_ERR_INTERNAL;
> -
> -        found = false;
> -        nameoff = fdt32_to_cpu(prop->nameoff);
> -        name = fdt_string(pfdt, nameoff);
> -
> -        if ( scan_passthrough_prop )
> -        {
> -            if ( dt_prop_cmp("xen,reg", name) == 0 )
> -            {
> -                xen_reg = prop;
> -                found = true;
> -            }
> -            else if ( dt_prop_cmp("xen,path", name) == 0 )
> -            {
> -                xen_path = prop;
> -                found = true;
> -            }
> -            else if ( dt_prop_cmp("xen,force-assign-without-iommu",
> -                                  name) == 0 )
> -            {
> -                xen_force = true;
> -                found = true;
> -            }
> -        }
> -
> -        /*
> -         * Copy properties other than the ones above: xen,reg, xen,path,
> -         * and xen,force-assign-without-iommu.
> -         */
> -        if ( !found )
> -        {
> -            res = fdt_property(fdt, name, prop->data, fdt32_to_cpu(prop->len));
> -            if ( res )
> -                return res;
> -        }
> -    }
> -
> -    /*
> -     * Only handle passthrough properties if both xen,reg and xen,path
> -     * are present, or if xen,force-assign-without-iommu is specified.
> -     */
> -    if ( xen_reg != NULL && (xen_path != NULL || xen_force) )
> -    {
> -        res = handle_passthrough_prop(kinfo, xen_reg, xen_path, xen_force,
> -                                      address_cells, size_cells);
> -        if ( res < 0 )
> -        {
> -            printk(XENLOG_ERR "Failed to assign device to %pd\n", kinfo->d);
> -            return res;
> -        }
> -    }
> -    else if ( (xen_path && !xen_reg) || (xen_reg && !xen_path && !xen_force) )
> -    {
> -        printk(XENLOG_ERR "xen,reg or xen,path missing for %pd\n",
> -               kinfo->d);
> -        return -EINVAL;
> -    }
> -
> -    /* FDT_ERR_NOTFOUND => There is no more properties for this node */
> -    return ( propoff != -FDT_ERR_NOTFOUND ) ? propoff : 0;
> -}
> -
> -static int __init scan_pfdt_node(struct kernel_info *kinfo, const void *pfdt,
> -                                 int nodeoff,
> -                                 uint32_t address_cells, uint32_t size_cells,
> -                                 bool scan_passthrough_prop)
> -{
> -    int rc = 0;
> -    void *fdt = kinfo->fdt;
> -    int node_next;
> -
> -    rc = fdt_begin_node(fdt, fdt_get_name(pfdt, nodeoff, NULL));
> -    if ( rc )
> -        return rc;
> -
> -    rc = handle_prop_pfdt(kinfo, pfdt, nodeoff, address_cells, size_cells,
> -                          scan_passthrough_prop);
> -    if ( rc )
> -        return rc;
> -
> -    address_cells = device_tree_get_u32(pfdt, nodeoff, "#address-cells",
> -                                        DT_ROOT_NODE_ADDR_CELLS_DEFAULT);
> -    size_cells = device_tree_get_u32(pfdt, nodeoff, "#size-cells",
> -                                     DT_ROOT_NODE_SIZE_CELLS_DEFAULT);
> -
> -    node_next = fdt_first_subnode(pfdt, nodeoff);
> -    while ( node_next > 0 )
> -    {
> -        scan_pfdt_node(kinfo, pfdt, node_next, address_cells, size_cells,
> -                       scan_passthrough_prop);
> -        node_next = fdt_next_subnode(pfdt, node_next);
> -    }
> -
> -    return fdt_end_node(fdt);
> -}
> -
> -static int __init check_partial_fdt(void *pfdt, size_t size)
> -{
> -    int res;
> -
> -    if ( fdt_magic(pfdt) != FDT_MAGIC )
> -    {
> -        dprintk(XENLOG_ERR, "Partial FDT is not a valid Flat Device Tree");
> -        return -EINVAL;
> -    }
> -
> -    res = fdt_check_header(pfdt);
> -    if ( res )
> -    {
> -        dprintk(XENLOG_ERR, "Failed to check the partial FDT (%d)", res);
> -        return -EINVAL;
> -    }
> -
> -    if ( fdt_totalsize(pfdt) > size )
> -    {
> -        dprintk(XENLOG_ERR, "Partial FDT totalsize is too big");
> -        return -EINVAL;
> -    }
> -
> -    return 0;
> -}
> -
> -static int __init domain_handle_dtb_bootmodule(struct domain *d,
> -                                               struct kernel_info *kinfo)
> -{
> -    void *pfdt;
> -    int res, node_next;
> -
> -    pfdt = ioremap_cache(kinfo->dtb_bootmodule->start,
> -                         kinfo->dtb_bootmodule->size);
> -    if ( pfdt == NULL )
> -        return -EFAULT;
> -
> -    res = check_partial_fdt(pfdt, kinfo->dtb_bootmodule->size);
> -    if ( res < 0 )
> -        goto out;
> -
> -    for ( node_next = fdt_first_subnode(pfdt, 0); 
> -          node_next > 0;
> -          node_next = fdt_next_subnode(pfdt, node_next) )
> -    {
> -        const char *name = fdt_get_name(pfdt, node_next, NULL);
> -
> -        if ( name == NULL )
> -            continue;
> -
> -        /*
> -         * Only scan /gic /aliases /passthrough, ignore the rest.
> -         * They don't have to be parsed in order.
> -         *
> -         * Take the GIC phandle value from the special /gic node in the
> -         * DTB fragment.
> -         */
> -        if ( dt_node_cmp(name, "gic") == 0 )
> -        {
> -            kinfo->phandle_gic = fdt_get_phandle(pfdt, node_next);
> -            continue;
> -        }
> -
> -        if ( dt_node_cmp(name, "aliases") == 0 )
> -        {
> -            res = scan_pfdt_node(kinfo, pfdt, node_next,
> -                                 DT_ROOT_NODE_ADDR_CELLS_DEFAULT,
> -                                 DT_ROOT_NODE_SIZE_CELLS_DEFAULT,
> -                                 false);
> -            if ( res )
> -                goto out;
> -            continue;
> -        }
> -        if ( dt_node_cmp(name, "passthrough") == 0 )
> -        {
> -            res = scan_pfdt_node(kinfo, pfdt, node_next,
> -                                 DT_ROOT_NODE_ADDR_CELLS_DEFAULT,
> -                                 DT_ROOT_NODE_SIZE_CELLS_DEFAULT,
> -                                 true);
> -            if ( res )
> -                goto out;
> -            continue;
> -        }
> -    }
> -
> - out:
> -    iounmap(pfdt);
> -
> -    return res;
> -}
> -
> -/*
> - * The max size for DT is 2MB. However, the generated DT is small (not including
> - * domU passthrough DT nodes whose size we account separately), 4KB are enough
> - * for now, but we might have to increase it in the future.
> - */
> -#define DOMU_DTB_SIZE 4096
> -static int __init prepare_dtb_domU(struct domain *d, struct kernel_info *kinfo)
> -{
> -    int addrcells, sizecells;
> -    int ret, fdt_size = DOMU_DTB_SIZE;
> -
> -    kinfo->phandle_gic = GUEST_PHANDLE_GIC;
> -    kinfo->gnttab_start = GUEST_GNTTAB_BASE;
> -    kinfo->gnttab_size = GUEST_GNTTAB_SIZE;
> -
> -    addrcells = GUEST_ROOT_ADDRESS_CELLS;
> -    sizecells = GUEST_ROOT_SIZE_CELLS;
> -
> -    /* Account for domU passthrough DT size */
> -    if ( kinfo->dtb_bootmodule )
> -        fdt_size += kinfo->dtb_bootmodule->size;
> -
> -    /* Cap to max DT size if needed */
> -    fdt_size = min(fdt_size, SZ_2M);
> -
> -    kinfo->fdt = xmalloc_bytes(fdt_size);
> -    if ( kinfo->fdt == NULL )
> -        return -ENOMEM;
> -
> -    ret = fdt_create(kinfo->fdt, fdt_size);
> -    if ( ret < 0 )
> -        goto err;
> -
> -    ret = fdt_finish_reservemap(kinfo->fdt);
> -    if ( ret < 0 )
> -        goto err;
> -
> -    ret = fdt_begin_node(kinfo->fdt, "");
> -    if ( ret < 0 )
> -        goto err;
> -
> -    ret = fdt_property_cell(kinfo->fdt, "#address-cells", addrcells);
> -    if ( ret )
> -        goto err;
> -
> -    ret = fdt_property_cell(kinfo->fdt, "#size-cells", sizecells);
> -    if ( ret )
> -        goto err;
> -
> -    ret = make_chosen_node(kinfo);
> -    if ( ret )
> -        goto err;
> -
> -    ret = make_psci_node(kinfo->fdt);
> -    if ( ret )
> -        goto err;
> -
> -    ret = make_cpus_node(d, kinfo->fdt);
> -    if ( ret )
> -        goto err;
> -
> -    ret = make_memory_node(d, kinfo->fdt, addrcells, sizecells, &kinfo->mem);
> -    if ( ret )
> -        goto err;
> -
> -    ret = make_resv_memory_node(d, kinfo->fdt, addrcells, sizecells,
> -                                &kinfo->shm_mem);
> -    if ( ret )
> -        goto err;
> -
> -    /*
> -     * domain_handle_dtb_bootmodule has to be called before the rest of
> -     * the device tree is generated because it depends on the value of
> -     * the field phandle_gic.
> -     */
> -    if ( kinfo->dtb_bootmodule )
> -    {
> -        ret = domain_handle_dtb_bootmodule(d, kinfo);
> -        if ( ret )
> -            goto err;
> -    }
> -
> -    ret = make_gic_domU_node(kinfo);
> -    if ( ret )
> -        goto err;
> -
> -    ret = make_timer_node(kinfo);
> -    if ( ret )
> -        goto err;
> -
> -    if ( kinfo->vpl011 )
> -    {
> -        ret = -EINVAL;
> -#ifdef CONFIG_SBSA_VUART_CONSOLE
> -        ret = make_vpl011_uart_node(kinfo);
> -#endif
> -        if ( ret )
> -            goto err;
> -    }
> -
> -    if ( kinfo->dom0less_feature & DOM0LESS_ENHANCED_NO_XS )
> -    {
> -        ret = make_hypervisor_node(d, kinfo, addrcells, sizecells);
> -        if ( ret )
> -            goto err;
> -    }
> -
> -    ret = fdt_end_node(kinfo->fdt);
> -    if ( ret < 0 )
> -        goto err;
> -
> -    ret = fdt_finish(kinfo->fdt);
> -    if ( ret < 0 )
> -        goto err;
> -
> -    return 0;
> -
> -  err:
> -    printk("Device tree generation failed (%d).\n", ret);
> -    xfree(kinfo->fdt);
> -
> -    return -EINVAL;
> -}
> -
> -static int __init prepare_dtb_hwdom(struct domain *d, struct kernel_info *kinfo)
> -{
> -    const p2m_type_t default_p2mt = p2m_mmio_direct_c;
> -    const void *fdt;
> -    int new_size;
> -    int ret;
> -
> -    ASSERT(dt_host && (dt_host->sibling == NULL));
> -
> -    kinfo->phandle_gic = dt_interrupt_controller->phandle;
> -    fdt = device_tree_flattened;
> -
> -    new_size = fdt_totalsize(fdt) + DOM0_FDT_EXTRA_SIZE;
> -    kinfo->fdt = xmalloc_bytes(new_size);
> -    if ( kinfo->fdt == NULL )
> -        return -ENOMEM;
> -
> -    ret = fdt_create(kinfo->fdt, new_size);
> -    if ( ret < 0 )
> -        goto err;
> -
> -    fdt_finish_reservemap(kinfo->fdt);
> -
> -    ret = handle_node(d, kinfo, dt_host, default_p2mt);
> -    if ( ret )
> -        goto err;
> -
> -    ret = fdt_finish(kinfo->fdt);
> -    if ( ret < 0 )
> -        goto err;
> -
> -    return 0;
> -
> -  err:
> -    printk("Device tree generation failed (%d).\n", ret);
> -    xfree(kinfo->fdt);
> -    return -EINVAL;
> -}
> -
> -static void __init dtb_load(struct kernel_info *kinfo)
> -{
> -    unsigned long left;
> -
> -    printk("Loading %pd DTB to 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
> -           kinfo->d, kinfo->dtb_paddr,
> -           kinfo->dtb_paddr + fdt_totalsize(kinfo->fdt));
> -
> -    left = copy_to_guest_phys_flush_dcache(kinfo->d, kinfo->dtb_paddr,
> -                                           kinfo->fdt,
> -                                           fdt_totalsize(kinfo->fdt));
> -
> -    if ( left != 0 )
> -        panic("Unable to copy the DTB to %pd memory (left = %lu bytes)\n",
> -              kinfo->d, left);
> -    xfree(kinfo->fdt);
> -}
> -
> -static void __init initrd_load(struct kernel_info *kinfo)
> -{
> -    const struct bootmodule *mod = kinfo->initrd_bootmodule;
> -    paddr_t load_addr = kinfo->initrd_paddr;
> -    paddr_t paddr, len;
> -    int node;
> -    int res;
> -    __be32 val[2];
> -    __be32 *cellp;
> -    void __iomem *initrd;
> -
> -    if ( !mod || !mod->size )
> -        return;
> -
> -    paddr = mod->start;
> -    len = mod->size;
> -
> -    printk("Loading %pd initrd from %"PRIpaddr" to 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
> -           kinfo->d, paddr, load_addr, load_addr + len);
> -
> -    /* Fix up linux,initrd-start and linux,initrd-end in /chosen */
> -    node = fdt_path_offset(kinfo->fdt, "/chosen");
> -    if ( node < 0 )
> -        panic("Cannot find the /chosen node\n");
> -
> -    cellp = (__be32 *)val;
> -    dt_set_cell(&cellp, ARRAY_SIZE(val), load_addr);
> -    res = fdt_setprop_inplace(kinfo->fdt, node, "linux,initrd-start",
> -                              val, sizeof(val));
> -    if ( res )
> -        panic("Cannot fix up \"linux,initrd-start\" property\n");
> -
> -    cellp = (__be32 *)val;
> -    dt_set_cell(&cellp, ARRAY_SIZE(val), load_addr + len);
> -    res = fdt_setprop_inplace(kinfo->fdt, node, "linux,initrd-end",
> -                              val, sizeof(val));
> -    if ( res )
> -        panic("Cannot fix up \"linux,initrd-end\" property\n");
> -
> -    initrd = ioremap_wc(paddr, len);
> -    if ( !initrd )
> -        panic("Unable to map the hwdom initrd\n");
> -
> -    res = copy_to_guest_phys_flush_dcache(kinfo->d, load_addr,
> -                                          initrd, len);
> -    if ( res != 0 )
> -        panic("Unable to copy the initrd in the hwdom memory\n");
> -
> -    iounmap(initrd);
> -}
> -
> -/*
> - * Allocate the event channel PPIs and setup the HVM_PARAM_CALLBACK_IRQ.
> - * The allocated IRQ will be found in d->arch.evtchn_irq.
> - *
> - * Note that this should only be called once all PPIs used by the
> - * hardware domain have been registered.
> - */
> -void __init evtchn_allocate(struct domain *d)
> -{
> -    int res;
> -    u64 val;
> -
> -    res = vgic_allocate_ppi(d);
> -    if ( res < 0 )
> -        panic("Unable to allocate a PPI for the event channel interrupt\n");
> -
> -    d->arch.evtchn_irq = res;
> -
> -    printk("Allocating PPI %u for event channel interrupt\n",
> -           d->arch.evtchn_irq);
> +    printk("Allocating PPI %u for event channel interrupt\n",
> +           d->arch.evtchn_irq);
>  
>      /* Set the value of domain param HVM_PARAM_CALLBACK_IRQ */
>      val = MASK_INSR(HVM_PARAM_CALLBACK_TYPE_PPI,
> @@ -3409,22 +2670,7 @@ static void __init find_gnttab_region(struct domain *d,
>             kinfo->gnttab_start, kinfo->gnttab_start + kinfo->gnttab_size);
>  }
>  
> -static unsigned long __init domain_p2m_pages(unsigned long maxmem_kb,
> -                                             unsigned int smp_cpus)
> -{
> -    /*
> -     * Keep in sync with libxl__get_required_paging_memory().
> -     * 256 pages (1MB) per vcpu, plus 1 page per MiB of RAM for the P2M map,
> -     * plus 128 pages to cover extended regions.
> -     */
> -    unsigned long memkb = 4 * (256 * smp_cpus + (maxmem_kb / 1024) + 128);
> -
> -    BUILD_BUG_ON(PAGE_SIZE != SZ_4K);
> -
> -    return DIV_ROUND_UP(memkb, 1024) << (20 - PAGE_SHIFT);
> -}
> -
> -static int __init construct_domain(struct domain *d, struct kernel_info *kinfo)
> +int __init construct_domain(struct domain *d, struct kernel_info *kinfo)
>  {
>      unsigned int i;
>      struct vcpu *v = d->vcpu[0];
> @@ -3515,296 +2761,6 @@ static int __init construct_domain(struct domain *d, struct kernel_info *kinfo)
>      return 0;
>  }
>  
> -static int __init alloc_xenstore_evtchn(struct domain *d)
> -{
> -    evtchn_alloc_unbound_t alloc;
> -    int rc;
> -
> -    alloc.dom = d->domain_id;
> -    alloc.remote_dom = hardware_domain->domain_id;
> -    rc = evtchn_alloc_unbound(&alloc, 0);
> -    if ( rc )
> -    {
> -        printk("Failed allocating event channel for domain\n");
> -        return rc;
> -    }
> -
> -    d->arch.hvm.params[HVM_PARAM_STORE_EVTCHN] = alloc.port;
> -
> -    return 0;
> -}
> -
> -static int __init construct_domU(struct domain *d,
> -                                 const struct dt_device_node *node)
> -{
> -    struct kernel_info kinfo = {};
> -    const char *dom0less_enhanced;
> -    int rc;
> -    u64 mem;
> -    u32 p2m_mem_mb;
> -    unsigned long p2m_pages;
> -
> -    rc = dt_property_read_u64(node, "memory", &mem);
> -    if ( !rc )
> -    {
> -        printk("Error building DomU: cannot read \"memory\" property\n");
> -        return -EINVAL;
> -    }
> -    kinfo.unassigned_mem = (paddr_t)mem * SZ_1K;
> -
> -    rc = dt_property_read_u32(node, "xen,domain-p2m-mem-mb", &p2m_mem_mb);
> -    /* If xen,domain-p2m-mem-mb is not specified, use the default value. */
> -    p2m_pages = rc ?
> -                p2m_mem_mb << (20 - PAGE_SHIFT) :
> -                domain_p2m_pages(mem, d->max_vcpus);
> -
> -    spin_lock(&d->arch.paging.lock);
> -    rc = p2m_set_allocation(d, p2m_pages, NULL);
> -    spin_unlock(&d->arch.paging.lock);
> -    if ( rc != 0 )
> -        return rc;
> -
> -    printk("*** LOADING DOMU cpus=%u memory=%#"PRIx64"KB ***\n",
> -           d->max_vcpus, mem);
> -
> -    kinfo.vpl011 = dt_property_read_bool(node, "vpl011");
> -
> -    rc = dt_property_read_string(node, "xen,enhanced", &dom0less_enhanced);
> -    if ( rc == -EILSEQ ||
> -         rc == -ENODATA ||
> -         (rc == 0 && !strcmp(dom0less_enhanced, "enabled")) )
> -    {
> -        if ( hardware_domain )
> -            kinfo.dom0less_feature = DOM0LESS_ENHANCED;
> -        else
> -            panic("At the moment, Xenstore support requires dom0 to be present\n");
> -    }
> -    else if ( rc == 0 && !strcmp(dom0less_enhanced, "no-xenstore") )
> -        kinfo.dom0less_feature = DOM0LESS_ENHANCED_NO_XS;
> -
> -    if ( vcpu_create(d, 0) == NULL )
> -        return -ENOMEM;
> -
> -    d->max_pages = ((paddr_t)mem * SZ_1K) >> PAGE_SHIFT;
> -
> -    kinfo.d = d;
> -
> -    rc = kernel_probe(&kinfo, node);
> -    if ( rc < 0 )
> -        return rc;
> -
> -#ifdef CONFIG_ARM_64
> -    /* type must be set before allocate memory */
> -    d->arch.type = kinfo.type;
> -#endif
> -    if ( !dt_find_property(node, "xen,static-mem", NULL) )
> -        allocate_memory(d, &kinfo);
> -    else if ( !is_domain_direct_mapped(d) )
> -        allocate_static_memory(d, &kinfo, node);
> -    else
> -        assign_static_memory_11(d, &kinfo, node);
> -
> -#ifdef CONFIG_STATIC_SHM
> -    rc = process_shm(d, &kinfo, node);
> -    if ( rc < 0 )
> -        return rc;
> -#endif
> -
> -    /*
> -     * Base address and irq number are needed when creating vpl011 device
> -     * tree node in prepare_dtb_domU, so initialization on related variables
> -     * shall be done first.
> -     */
> -    if ( kinfo.vpl011 )
> -    {
> -        rc = domain_vpl011_init(d, NULL);
> -        if ( rc < 0 )
> -            return rc;
> -    }
> -
> -    rc = prepare_dtb_domU(d, &kinfo);
> -    if ( rc < 0 )
> -        return rc;
> -
> -    rc = construct_domain(d, &kinfo);
> -    if ( rc < 0 )
> -        return rc;
> -
> -    if ( kinfo.dom0less_feature & DOM0LESS_XENSTORE )
> -    {
> -        ASSERT(hardware_domain);
> -        rc = alloc_xenstore_evtchn(d);
> -        if ( rc < 0 )
> -            return rc;
> -        d->arch.hvm.params[HVM_PARAM_STORE_PFN] = ~0ULL;
> -    }
> -
> -    return rc;
> -}
> -
> -void __init create_domUs(void)
> -{
> -    struct dt_device_node *node;
> -    const struct dt_device_node *cpupool_node,
> -                                *chosen = dt_find_node_by_path("/chosen");
> -
> -    BUG_ON(chosen == NULL);
> -    dt_for_each_child_node(chosen, node)
> -    {
> -        struct domain *d;
> -        struct xen_domctl_createdomain d_cfg = {
> -            .arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE,
> -            .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
> -            /*
> -             * The default of 1023 should be sufficient for guests because
> -             * on ARM we don't bind physical interrupts to event channels.
> -             * The only use of the evtchn port is inter-domain communications.
> -             * 1023 is also the default value used in libxl.
> -             */
> -            .max_evtchn_port = 1023,
> -            .max_grant_frames = -1,
> -            .max_maptrack_frames = -1,
> -            .grant_opts = XEN_DOMCTL_GRANT_version(opt_gnttab_max_version),
> -        };
> -        unsigned int flags = 0U;
> -        uint32_t val;
> -        int rc;
> -
> -        if ( !dt_device_is_compatible(node, "xen,domain") )
> -            continue;
> -
> -        if ( (max_init_domid + 1) >= DOMID_FIRST_RESERVED )
> -            panic("No more domain IDs available\n");
> -
> -        if ( dt_find_property(node, "xen,static-mem", NULL) )
> -            flags |= CDF_staticmem;
> -
> -        if ( dt_property_read_bool(node, "direct-map") )
> -        {
> -            if ( !(flags & CDF_staticmem) )
> -                panic("direct-map is not valid for domain %s without static allocation.\n",
> -                      dt_node_name(node));
> -
> -            flags |= CDF_directmap;
> -        }
> -
> -        if ( !dt_property_read_u32(node, "cpus", &d_cfg.max_vcpus) )
> -            panic("Missing property 'cpus' for domain %s\n",
> -                  dt_node_name(node));
> -
> -        if ( dt_find_compatible_node(node, NULL, "multiboot,device-tree") &&
> -             iommu_enabled )
> -            d_cfg.flags |= XEN_DOMCTL_CDF_iommu;
> -
> -        if ( !dt_property_read_u32(node, "nr_spis", &d_cfg.arch.nr_spis) )
> -        {
> -            int vpl011_virq = GUEST_VPL011_SPI;
> -
> -            d_cfg.arch.nr_spis = gic_number_lines() - 32;
> -
> -            /*
> -             * The VPL011 virq is GUEST_VPL011_SPI, unless direct-map is
> -             * set, in which case it'll match the hardware.
> -             *
> -             * Since the domain is not yet created, we can't use
> -             * d->arch.vpl011.irq. So the logic to find the vIRQ has to
> -             * be hardcoded.
> -             * The logic here shall be consistent with the one in
> -             * domain_vpl011_init().
> -             */
> -            if ( flags & CDF_directmap )
> -            {
> -                vpl011_virq = serial_irq(SERHND_DTUART);
> -                if ( vpl011_virq < 0 )
> -                    panic("Error getting IRQ number for this serial port %d\n",
> -                          SERHND_DTUART);
> -            }
> -
> -            /*
> -             * vpl011 uses one emulated SPI. If vpl011 is requested, make
> -             * sure that we allocate enough SPIs for it.
> -             */
> -            if ( dt_property_read_bool(node, "vpl011") )
> -                d_cfg.arch.nr_spis = MAX(d_cfg.arch.nr_spis,
> -                                         vpl011_virq - 32 + 1);
> -        }
> -
> -        /* Get the optional property domain-cpupool */
> -        cpupool_node = dt_parse_phandle(node, "domain-cpupool", 0);
> -        if ( cpupool_node )
> -        {
> -            int pool_id = btcpupools_get_domain_pool_id(cpupool_node);
> -            if ( pool_id < 0 )
> -                panic("Error getting cpupool id from domain-cpupool (%d)\n",
> -                      pool_id);
> -            d_cfg.cpupool_id = pool_id;
> -        }
> -
> -        if ( dt_property_read_u32(node, "max_grant_version", &val) )
> -            d_cfg.grant_opts = XEN_DOMCTL_GRANT_version(val);
> -
> -        if ( dt_property_read_u32(node, "max_grant_frames", &val) )
> -        {
> -            if ( val > INT32_MAX )
> -                panic("max_grant_frames (%"PRIu32") overflow\n", val);
> -            d_cfg.max_grant_frames = val;
> -        }
> -
> -        if ( dt_property_read_u32(node, "max_maptrack_frames", &val) )
> -        {
> -            if ( val > INT32_MAX )
> -                panic("max_maptrack_frames (%"PRIu32") overflow\n", val);
> -            d_cfg.max_maptrack_frames = val;
> -        }
> -
> -        if ( dt_get_property(node, "sve", &val) )
> -        {
> -#ifdef CONFIG_ARM64_SVE
> -            unsigned int sve_vl_bits;
> -            bool ret = false;
> -
> -            if ( !val )
> -            {
> -                /* Property found with no value, means max HW VL supported */
> -                ret = sve_domctl_vl_param(-1, &sve_vl_bits);
> -            }
> -            else
> -            {
> -                if ( dt_property_read_u32(node, "sve", &val) )
> -                    ret = sve_domctl_vl_param(val, &sve_vl_bits);
> -                else
> -                    panic("Error reading 'sve' property\n");
> -            }
> -
> -            if ( ret )
> -                d_cfg.arch.sve_vl = sve_encode_vl(sve_vl_bits);
> -            else
> -                panic("SVE vector length error\n");
> -#else
> -            panic("'sve' property found, but CONFIG_ARM64_SVE not selected\n");
> -#endif
> -        }
> -
> -        /*
> -         * The variable max_init_domid is initialized with zero, so here it's
> -         * very important to use the pre-increment operator to call
> -         * domain_create() with a domid > 0. (domid == 0 is reserved for Dom0)
> -         */
> -        d = domain_create(++max_init_domid, &d_cfg, flags);
> -        if ( IS_ERR(d) )
> -            panic("Error creating domain %s (rc = %ld)\n",
> -                  dt_node_name(node), PTR_ERR(d));
> -
> -        d->is_console = true;
> -        dt_device_set_used_by(node, d->domain_id);
> -
> -        rc = construct_domU(d, node);
> -        if ( rc )
> -            panic("Could not set up domain %s (rc = %d)\n",
> -                  dt_node_name(node), rc);
> -    }
> -}
> -
>  static int __init construct_dom0(struct domain *d)
>  {
>      struct kernel_info kinfo = {};
> diff --git a/xen/arch/arm/include/asm/dom0less-build.h b/xen/arch/arm/include/asm/dom0less-build.h
> new file mode 100644
> index 000000000000..0d28fa1bee46
> --- /dev/null
> +++ b/xen/arch/arm/include/asm/dom0less-build.h
> @@ -0,0 +1,25 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
> +/*
> + * xen/arch/arm/include/asm/dom0less-build.h
> + *
> + * Copyright (C) 2023 Arm Ltd.
> + */
> +
> +#ifndef __ARM_DOM0LESS_BUILD_H_
> +#define __ARM_DOM0LESS_BUILD_H_
> +
> +#include <asm/kernel.h>
> +
> +void create_domUs(void);
> +bool is_dom0less_mode(void);
> +
> +#endif  /* __ARM_DOM0LESS_BUILD_H_ */
> +
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * indent-tabs-mode: nil
> + * End:b
> + */
> diff --git a/xen/arch/arm/include/asm/domain_build.h b/xen/arch/arm/include/asm/domain_build.h
> index b9329c9ee032..d95cf376048f 100644
> --- a/xen/arch/arm/include/asm/domain_build.h
> +++ b/xen/arch/arm/include/asm/domain_build.h
> @@ -4,9 +4,45 @@
>  #include <xen/sched.h>
>  #include <asm/kernel.h>
>  
> +typedef __be32 gic_interrupt_t[3];
> +
> +int construct_domain(struct domain *d, struct kernel_info *kinfo);
> +int domain_fdt_begin_node(void *fdt, const char *name, uint64_t unit);
> +int make_resv_memory_node(const struct domain *d, void *fdt, int addrcells,
> +                          int sizecells, const struct meminfo *mem);
>  int make_chosen_node(const struct kernel_info *kinfo);
> +int make_cpus_node(const struct domain *d, void *fdt);
> +int make_hypervisor_node(struct domain *d, const struct kernel_info *kinfo,
> +                         int addrcells, int sizecells);
> +int make_memory_node(const struct domain *d, void *fdt, int addrcells,
> +                     int sizecells, struct meminfo *mem);
> +int make_psci_node(void *fdt);
> +int make_timer_node(const struct kernel_info *kinfo);
>  void evtchn_allocate(struct domain *d);
>  
> +unsigned int get_allocation_size(paddr_t size);
> +
> +/*
> + * handle_device_interrupts retrieves the interrupts configuration from
> + * a device tree node and maps those interrupts to the target domain.
> + *
> + * Returns:
> + *   < 0 error
> + *   0   success
> + */
> +int handle_device_interrupts(struct domain *d, struct dt_device_node *dev,
> +                             bool need_mapping);
> +
> +/*
> + * Helper to write an interrupts with the GIC format
> + * This code is assuming the irq is an PPI.
> + */
> +void set_interrupt(gic_interrupt_t interrupt, unsigned int irq,
> +                   unsigned int cpumask, unsigned int level);
> +
> +int process_shm(struct domain *d, struct kernel_info *kinfo,
> +                const struct dt_device_node *node);
> +
>  #ifndef CONFIG_ACPI
>  static inline int prepare_acpi(struct domain *d, struct kernel_info *kinfo)
>  {
> @@ -17,6 +53,28 @@ static inline int prepare_acpi(struct domain *d, struct kernel_info *kinfo)
>  #else
>  int prepare_acpi(struct domain *d, struct kernel_info *kinfo);
>  #endif
> +
> +#ifdef CONFIG_STATIC_MEMORY
> +void allocate_static_memory(struct domain *d, struct kernel_info *kinfo,
> +                            const struct dt_device_node *node);
> +void assign_static_memory_11(struct domain *d, struct kernel_info *kinfo,
> +                             const struct dt_device_node *node);
> +#else
> +static inline void allocate_static_memory(struct domain *d,
> +                                          struct kernel_info *kinfo,
> +                                          const struct dt_device_node *node)
> +{
> +    ASSERT_UNREACHABLE();
> +}
> +
> +static inline void assign_static_memory_11(struct domain *d,
> +                                           struct kernel_info *kinfo,
> +                                           const struct dt_device_node *node)
> +{
> +    ASSERT_UNREACHABLE();
> +}
> +#endif
> +
>  #endif
>  
>  /*
> diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h
> index b8866c20f462..cd4c7815790b 100644
> --- a/xen/arch/arm/include/asm/setup.h
> +++ b/xen/arch/arm/include/asm/setup.h
> @@ -135,7 +135,6 @@ void acpi_create_efi_mmap_table(struct domain *d,
>  
>  int acpi_make_efi_nodes(void *fdt, struct membank tbl_add[]);
>  
> -void create_domUs(void);
>  void create_dom0(void);
>  void alloc_static_evtchn(void);
>  
> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
> index db748839d383..db0299d540dc 100644
> --- a/xen/arch/arm/setup.c
> +++ b/xen/arch/arm/setup.c
> @@ -34,6 +34,7 @@
>  #include <xen/warning.h>
>  #include <xen/hypercall.h>
>  #include <asm/alternative.h>
> +#include <asm/dom0less-build.h>
>  #include <asm/page.h>
>  #include <asm/current.h>
>  #include <asm/setup.h>
> @@ -1042,38 +1043,6 @@ static void __init setup_mm(void)
>  }
>  #endif
>  
> -static bool __init is_dom0less_mode(void)
> -{
> -    struct bootmodules *mods = &bootinfo.modules;
> -    struct bootmodule *mod;
> -    unsigned int i;
> -    bool dom0found = false;
> -    bool domUfound = false;
> -
> -    /* Look into the bootmodules */
> -    for ( i = 0 ; i < mods->nr_mods ; i++ )
> -    {
> -        mod = &mods->module[i];
> -        /* Find if dom0 and domU kernels are present */
> -        if ( mod->kind == BOOTMOD_KERNEL )
> -        {
> -            if ( mod->domU == false )
> -            {
> -                dom0found = true;
> -                break;
> -            }
> -            else
> -                domUfound = true;
> -        }
> -    }
> -
> -    /*
> -     * If there is no dom0 kernel but at least one domU, then we are in
> -     * dom0less mode
> -     */
> -    return ( !dom0found && domUfound );
> -}
> -
>  size_t __read_mostly dcache_line_bytes;
>  
>  /* C entry point for boot CPU */
> -- 
> 2.34.1
> 


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 00:47:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 00:47:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610142.949422 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm1fd-00071t-0X; Fri, 29 Sep 2023 00:47:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610142.949422; Fri, 29 Sep 2023 00:47:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm1fc-00071m-U9; Fri, 29 Sep 2023 00:47:52 +0000
Received: by outflank-mailman (input) for mailman id 610142;
 Fri, 29 Sep 2023 00:47:52 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xnwI=FN=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qm1fc-00071g-7p
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 00:47:52 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id cfdf2589-5e61-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 02:47:50 +0200 (CEST)
Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7])
 by mailhost.m5p.com (8.17.1/8.15.2) with ESMTPS id 38T0lH4M008150
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Thu, 28 Sep 2023 20:47:23 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 38T0lHkZ008149;
 Thu, 28 Sep 2023 17:47:17 -0700 (PDT) (envelope-from ehem)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cfdf2589-5e61-11ee-878b-cb3800f73035
Date: Thu, 28 Sep 2023 17:47:17 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
        Roger Pau =?iso-8859-1?Q?Monn=E9?= <roger.pau@citrix.com>,
        Wei Liu <wl@xen.org>, George Dunlap <george.dunlap@citrix.com>,
        Julien Grall <julien@xen.org>,
        Stefano Stabellini <sstabellini@kernel.org>,
        xen-devel@lists.xenproject.org
Subject: Re: [PATCH WIP] xen/public: move incomplete type definitions to xen.h
Message-ID: <ZRYelcEKD63xl2Uj@mattapan.m5p.com>
References: <7a880e33ff91d0c76986159e3559c56ee6894d21.1695324653.git.ehem+xen@m5p.com>
 <7aaf91c7-6330-fffc-8df6-4be4b531f456@suse.com>
 <ZQ21//HP/d2Ppdrh@mattapan.m5p.com>
 <b9966ac8-dfc6-b6c4-bf61-05a8b61f9ac3@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <b9966ac8-dfc6-b6c4-bf61-05a8b61f9ac3@suse.com>
X-Spam-Status: No, score=0.4 required=10.0 tests=KHOP_HELO_FCRDNS autolearn=no
	autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mattapan.m5p.com

On Mon, Sep 25, 2023 at 08:27:31AM +0200, Jan Beulich wrote:
> On 22.09.2023 17:42, Elliott Mitchell wrote:
> > On Fri, Sep 22, 2023 at 10:21:21AM +0200, Jan Beulich wrote:
> >> On 21.09.2023 18:18, Elliott Mitchell wrote:
> >>>  As such these incomplete definitions should be
> >>> in xen.h next to their hypercalls, rather than spread all over.
> >>
> >> Perhaps s/incomplete definitions/forward declarations/.
> >>
> >> There's a downside to the movement, though: You now introduce items
> >> into the namespace which may be entirely unused. The two contradicting
> >> goals need weighing as to their usefulness.
> > 
> > For the case which this is part of, they're not 100% unused.
> > 
> >>> trap_info_t is particularly notable since even though the hypercall is
> >>> x86-only, the wrapper is likely to be visible to generic source code.
> >>
> >> Why would it be?
> > 
> > Related to converting ARM to using inline assembly-language wrappers
> > instead of the current declarations+small assembly wrapper function.
> > 
> > The first step is you split the Linux header
> > arch/x86/include/asm/xen/hypercall.h.  The upper portion (the x86
> > inline assembly language) remains in arch/x86/include, all the
> > HYPERVISOR_*() wrappers go into include/xen/$somewhere.  Several months
> > ago I sent a candidate header to implement _hypercall#() for ARM.
> > 
> > Problem is:
> > static inline int
> > HYPERVISOR_set_trap_table(struct trap_info *table)
> > {
> >         return _hypercall1(int, set_trap_table, table);
> > }
> > Without without `struct trap_info;` somewhere, this fails.
> > 
> > Now, this isn't used on ARM, but this is tricky to guess.  Someone
> > setting this up won't know whether any given function is absent due to
> > being legacy and unlikely to ever be on non-x86.  Versus simply not /yet/
> > being available on non-x86 (vPCI).
> > 
> > Perhaps xen/include/public/xen.h should only conditionally #define some
> > of the __HYPERVISOR_* constants.  Likely there should be a way to force
> > all the hypercall numbers to be available (for linting).  Yet as the
> > current Linux header hints, perhaps there should be a way to disable the
> > PV constants even on x86.
> 
> Downstream consumers of the public headers are free to adjust them to their
> needs. The upstream form wants to remain sufficiently generic, which to me
> includes not exposing types which aren't relevant for a particular arch.

Problem with not exposing the type is you instead get inconsistency,
which can be worse than pollution of the namespace.  There is the case
I'm bring up here which makes sharing headers difficult.

What if some project was developed to run on Xen/ARM.  Such a project
might create a "trap_info" structure for something unrelated to the
Xen/x86 one, they might similarly create a "trap_info_t" type definition.
If such a hypothetical project later tried to port to Xen/x86, the
inconsistency would be painful to deal with.

So might consistency be a rather more important virtue?


-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \BS (    |         ehem+sigmsg@m5p.com  PGP 87145445         |    )   /
  \_CS\   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445




From xen-devel-bounces@lists.xenproject.org Fri Sep 29 02:50:02 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 02:50:02 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610149.949432 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm3ZX-0006an-F1; Fri, 29 Sep 2023 02:49:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610149.949432; Fri, 29 Sep 2023 02:49:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm3ZX-0006ag-CS; Fri, 29 Sep 2023 02:49:43 +0000
Received: by outflank-mailman (input) for mailman id 610149;
 Fri, 29 Sep 2023 02:49:42 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xnwI=FN=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qm3ZW-0006aa-0M
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 02:49:42 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d4984372-5e72-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 04:49:39 +0200 (CEST)
Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7])
 by mailhost.m5p.com (8.17.1/8.15.2) with ESMTPS id 38T2nLxi008435
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Thu, 28 Sep 2023 22:49:26 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 38T2nIJL008434;
 Thu, 28 Sep 2023 19:49:18 -0700 (PDT) (envelope-from ehem)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d4984372-5e72-11ee-878b-cb3800f73035
Date: Thu, 28 Sep 2023 19:49:18 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall <julien@xen.org>,
        Bertrand Marquis <bertrand.marquis@arm.com>,
        Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Issue with shared information page on Xen/ARM 4.17
Message-ID: <ZRY7Ls3p6M6pakMq@mattapan.m5p.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
X-Spam-Status: No, score=0.4 required=10.0 tests=KHOP_HELO_FCRDNS autolearn=no
	autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mattapan.m5p.com

I'm trying to get FreeBSD/ARM operational on Xen/ARM.  Current issue is
the changes with the handling of the shared information page appear to
have broken things for me.

With a pre-4.17 build of Xen/ARM things worked fine.  Yet with a build
of the 4.17 release, mapping the shared information page doesn't work.

I'm using Tianocore as the first stage loader.  This continues to work
fine.  The build is using tag "edk2-stable202211", commit fff6d81270.
While Tianocore does map the shared information page, my reading of their
source is that it properly unmaps the page and therefore shouldn't cause
trouble.

Notes on the actual call is gpfn was 0x0000000000040072.  This is outside
the recommended address range, but my understanding is this is supposed
to be okay.

The return code is -16, which is EBUSY.

Ideas?

The obvious spot for EBUSY is from already having the shared information
page mapped.  Issue is I'm pretty sure it isn't mapped.

Did the policy change and now the shared information page *must* be
mapped within the recommended address ranges?

Is it a problem to map the shared information page at one address.  Unmap
it, then map it at another address?


-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \BS (    |         ehem+sigmsg@m5p.com  PGP 87145445         |    )   /
  \_CS\   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445




From xen-devel-bounces@lists.xenproject.org Fri Sep 29 04:57:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 04:57:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610158.949443 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm5ZH-0005xU-BF; Fri, 29 Sep 2023 04:57:35 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610158.949443; Fri, 29 Sep 2023 04:57:35 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm5ZH-0005xN-7M; Fri, 29 Sep 2023 04:57:35 +0000
Received: by outflank-mailman (input) for mailman id 610158;
 Fri, 29 Sep 2023 04:57:33 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/U+m=FN=gmail.com=k.kahurani@srs-se1.protection.inumbo.net>)
 id 1qm5ZF-0005xH-S8
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 04:57:33 +0000
Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com
 [2a00:1450:4864:20::52e])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b1ae20ee-5e84-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 06:57:30 +0200 (CEST)
Received: by mail-ed1-x52e.google.com with SMTP id
 4fb4d7f45d1cf-5347e657a11so6658118a12.2
 for <xen-devel@lists.xenproject.org>; Thu, 28 Sep 2023 21:57:30 -0700 (PDT)
Received: from localhost.localdomain ([105.29.162.58])
 by smtp.gmail.com with ESMTPSA id
 cb25-20020a170906a45900b009ad778a68c5sm11914319ejb.60.2023.09.28.21.57.28
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 28 Sep 2023 21:57:29 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b1ae20ee-5e84-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20230601; t=1695963450; x=1696568250; darn=lists.xenproject.org;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=nXa6TIRRuLGAOfXeMDWjLcsviL/p0AD6ZFGbl3p8aRQ=;
        b=kwGLY3Zt4cHXIz7jAd6gU2A1G0JqXMDtuta3cwLgQps8Vx6Saw6yburDAICG73KX1M
         ZrE8lomvlxj/x2kBnoeD9IA1EEoO9Zrdjv5qJkxv5RB+ByDf2iBXY1qYdR4yldab2PTU
         HOTJLGVcZDekL/eVzgg1PRIla4ABh9/YsUpe/exDLOs4bs48UUSGIMyfD2aP0Od4K5tp
         hevqXkngiopNvy6Dk0NQ48Xg4VpaW6ALSscOy/wrnaXUHjuC9PwNTFf4pEnNVp5s+TCP
         QV+tSinA6G+Z9mQpr9e6RSfKtnGP+96/BrBZUPPlNb/+XOXeLy8Al3ieZIh9Pk16Ge0i
         TkBQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695963450; x=1696568250;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=nXa6TIRRuLGAOfXeMDWjLcsviL/p0AD6ZFGbl3p8aRQ=;
        b=Tpr3m2niEZWYpg2S8yrBhRc+UGIuqv5M0e63ZrrGoUhy6+O2IZJSBsglleiqhbS6r4
         6Poxdq6Wl84kcLuLPFaaD7da4tWqocdop57DJt3BUxYZW5wqZf4MZd3MStFgBNF/Kafp
         x8fT1WpsbA2qM1eHy9MnBZMfNyITJxJ9xRtEYd5IqlXoXvkNxmu8ogxU1AWdvuz8Wdv2
         9ozytjH4VnEDxBZ35IxNi3dXnYuw6jyTGq8UGl2GbNRiH1tseN/x99zmnyF1YSw0YV0o
         j2LTaD8zErAk0uhBK+IPr/70fNJqbzugqKPHL4FURZl/uVOdYmQ5Z2uRGmFPD6iY9dZ+
         k3Nw==
X-Gm-Message-State: AOJu0YzBluXOCOWVfdHLT7Wu9t6MZ2nHCKI9bYYOY7eDZdT1oZUmW5ra
	uOH7neVj+E0rl8SwgdQmnUZ1WzfCyCY=
X-Google-Smtp-Source: AGHT+IGsTSrLfRldjHAJa2jRFD2tOF9jewMS0r9ODruBxmLHSeLi5Rh7DI0v4LJvxaruXRk6RdrQeg==
X-Received: by 2002:a17:907:2cd2:b0:9ae:621b:ae4e with SMTP id hg18-20020a1709072cd200b009ae621bae4emr2750794ejc.13.1695963449523;
        Thu, 28 Sep 2023 21:57:29 -0700 (PDT)
From: David Kahurani <k.kahurani@gmail.com>
To: xen-devel@lists.xenproject.org
Cc: jgross@suse.com,
	David Kahurani <k.kahurani@gmail.com>
Subject: [PATCH] tools/xenstore: Avoid leaking memory in check_store
Date: Fri, 29 Sep 2023 07:57:24 +0300
Message-Id: <20230929045724.6844-1-k.kahurani@gmail.com>
X-Mailer: git-send-email 2.25.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

While this code should not be trigger-able from an unprivileged domain
it is called multiple times when the database gets inconsistent. This
means that a malicious guest able to corrupt the database will trigger
the leaks here.

Fix the leaks so that this code can be safely called from anywhere

Signed-off-by: David Kahurani <k.kahurani@gmail.com>
---
 tools/xenstored/core.c | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/tools/xenstored/core.c b/tools/xenstored/core.c
index 092de76a2e..edd07711db 100644
--- a/tools/xenstored/core.c
+++ b/tools/xenstored/core.c
@@ -2535,18 +2535,18 @@ static void clean_store(struct check_store_data *data)
 	domain_check_acc(data->domains);
 }
 
-int check_store_path(const char *name, struct check_store_data *data)
+int check_store_path(const void *ctx, const char *name, struct check_store_data *data)
 {
 	struct node *node;
 
-	node = read_node(NULL, NULL, name);
+	node = read_node(NULL, ctx, name);
 	if (!node) {
 		log("check_store: error %d reading special node '%s'", errno,
 		    name);
 		return errno;
 	}
 
-	return check_store_step(NULL, NULL, node, data);
+	return check_store_step(ctx, NULL, node, data);
 }
 
 void check_store(void)
@@ -2556,6 +2556,7 @@ void check_store(void)
 		.enoent = check_store_enoent,
 	};
 	struct check_store_data data;
+	void *ctx;
 
 	/* Don't free values (they are all void *1) */
 	data.reachable = create_hashtable(NULL, "checkstore", hash_from_key_fn,
@@ -2571,17 +2572,19 @@ void check_store(void)
 		goto out_hash;
 	}
 
+	ctx = talloc_new(NULL);
 	log("Checking store ...");
-	if (walk_node_tree(NULL, NULL, "/", &walkfuncs, &data)) {
+	if (walk_node_tree(ctx, NULL, "/", &walkfuncs, &data)) {
 		if (errno == ENOMEM)
 			log("check_store: ENOMEM");
-	} else if (!check_store_path("@introduceDomain", &data) &&
-		   !check_store_path("@releaseDomain", &data) &&
+	} else if (!check_store_path(ctx, "@introduceDomain", &data) &&
+		   !check_store_path(ctx, "@releaseDomain", &data) &&
 		   !check_transactions(data.reachable))
 		clean_store(&data);
 	log("Checking store complete.");
 
 	hashtable_destroy(data.domains);
+	talloc_free(ctx);
  out_hash:
 	hashtable_destroy(data.reachable);
 }
-- 
2.25.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 05:23:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 05:23:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610163.949453 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm5yP-0003xd-BB; Fri, 29 Sep 2023 05:23:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610163.949453; Fri, 29 Sep 2023 05:23:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm5yP-0003xW-6v; Fri, 29 Sep 2023 05:23:33 +0000
Received: by outflank-mailman (input) for mailman id 610163;
 Fri, 29 Sep 2023 05:23:32 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qm5yO-0003xM-8C; Fri, 29 Sep 2023 05:23:32 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qm5yO-0004lt-2t; Fri, 29 Sep 2023 05:23:32 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qm5yN-0005mB-Fb; Fri, 29 Sep 2023 05:23:31 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qm5yN-0008Uz-DQ; Fri, 29 Sep 2023 05:23:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=a48AQq4ebCaktIIjmfVnwD03Zm13ck4QPa5TQaBL5CQ=; b=uDXUZAutYzICsuUlE8qHFAokeC
	FtCQq2uuxKTrh1rk39gaiPDloY8ooqoCdiqw9oSZWY9LnGynTSrePHwEgETjnuP4Nyv8EB8bbo56R
	8cXieIRcL4bw+5RpmaQ0iAHVCA+PD6qj0dF/47MAcKPZ6RwMdMSCrakCVDmD5TQGJm2o=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183205-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183205: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start.2:fail:regression
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:heisenbug
    linux-5.4:test-amd64-i386-xl:xen-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:heisenbug
    linux-5.4:test-amd64-i386-examine-bios:xen-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 29 Sep 2023 05:23:31 +0000

flight 183205 linux-5.4 real [real]
flight 183209 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183205/
http://logs.test-lab.xenproject.org/osstest/logs/183209/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1  19 guest-start.2  fail in 183144 REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183144 pass in 183205
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail in 183199 pass in 183205
 test-amd64-i386-xl            7 xen-install      fail in 183199 pass in 183205
 test-armhf-armhf-xl-credit1  14 guest-start      fail in 183199 pass in 183205
 test-armhf-armhf-xl-credit1  18 guest-start/debian.repeat  fail pass in 183144
 test-amd64-amd64-xl-qemut-debianhvm-amd64  8 xen-boot      fail pass in 183199
 test-amd64-i386-examine-bios  6 xen-install                fail pass in 183199
 test-armhf-armhf-xl-credit2  14 guest-start                fail pass in 183199
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail pass in 183199

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 183199 blocked in 182613
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check fail in 183199 never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check fail in 183199 never pass
 test-armhf-armhf-xl-credit2 15 migrate-support-check fail in 183199 never pass
 test-armhf-armhf-xl-credit2 16 saverestore-support-check fail in 183199 never pass
 test-armhf-armhf-xl-multivcpu 14 guest-start                  fail like 182613
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-armhf-armhf-xl-arndale  18 guest-start/debian.repeat    fail  like 182613
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182613
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   26 days
Testing same since   183129  2023-09-23 09:20:22 Z    5 days   11 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    fail    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  fail    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                fail    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               fail    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 05:46:25 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 05:46:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610172.949462 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm6KP-0008KT-7B; Fri, 29 Sep 2023 05:46:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610172.949462; Fri, 29 Sep 2023 05:46:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm6KP-0008KM-3F; Fri, 29 Sep 2023 05:46:17 +0000
Received: by outflank-mailman (input) for mailman id 610172;
 Fri, 29 Sep 2023 05:46:15 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=sDS6=FN=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qm6KN-0008KG-Iu
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 05:46:15 +0000
Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 7f5c84c8-5e8b-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 07:46:12 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id DD23521858;
 Fri, 29 Sep 2023 05:46:11 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 89DD41377D;
 Fri, 29 Sep 2023 05:46:11 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id 7FlbIKNkFmXfHwAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 29 Sep 2023 05:46:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7f5c84c8-5e8b-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695966371; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=cRv0woMJjNsvgDE5k9aD0peatjeAQGuqCqF3hBqwIpo=;
	b=Ju+B27mDtxJYXXeB871m09j0ziz+5j/S5Q2h7rKly2l7zSHOkiP52VRPCTn8kaAcG1zta2
	FtpgwM7MhHQhe1RJpQ9Vi1UEApN/PbJbIvMEGSySARd9HfZuI4S8Jg0pRoPxoW5m+J5gHM
	ma791tt9B4o7qSGAJ+4DckIZQccvBjE=
Message-ID: <fb79fa9a-e91c-4bb7-8aee-c384b99df953@suse.com>
Date: Fri, 29 Sep 2023 07:46:10 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 2/2] xen: privcmd: Add support for ioeventfd
Content-Language: en-US
To: Viresh Kumar <viresh.kumar@linaro.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: Vincent Guittot <vincent.guittot@linaro.org>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 stratos-dev@op-lists.linaro.org, Erik Schilling <erik.schilling@linaro.org>,
 Manos Pitsidianakis <manos.pitsidianakis@linaro.org>,
 Mathieu Poirier <mathieu.poirier@linaro.org>, linux-kernel@vger.kernel.org,
 xen-devel@lists.xenproject.org
References: <cover.1693311370.git.viresh.kumar@linaro.org>
 <52b07a3861a34fb0deb6251bae8bd885815c6944.1693311370.git.viresh.kumar@linaro.org>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <52b07a3861a34fb0deb6251bae8bd885815c6944.1693311370.git.viresh.kumar@linaro.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------U15JgZAVRkbvXfjmLooUY2pH"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------U15JgZAVRkbvXfjmLooUY2pH
Content-Type: multipart/mixed; boundary="------------T0u0YRmSnHlZNcYP30qCMrY1";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Viresh Kumar <viresh.kumar@linaro.org>,
 Stefano Stabellini <sstabellini@kernel.org>,
 Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Cc: Vincent Guittot <vincent.guittot@linaro.org>,
 =?UTF-8?Q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,
 stratos-dev@op-lists.linaro.org, Erik Schilling <erik.schilling@linaro.org>,
 Manos Pitsidianakis <manos.pitsidianakis@linaro.org>,
 Mathieu Poirier <mathieu.poirier@linaro.org>, linux-kernel@vger.kernel.org,
 xen-devel@lists.xenproject.org
Message-ID: <fb79fa9a-e91c-4bb7-8aee-c384b99df953@suse.com>
Subject: Re: [PATCH 2/2] xen: privcmd: Add support for ioeventfd
References: <cover.1693311370.git.viresh.kumar@linaro.org>
 <52b07a3861a34fb0deb6251bae8bd885815c6944.1693311370.git.viresh.kumar@linaro.org>
In-Reply-To: <52b07a3861a34fb0deb6251bae8bd885815c6944.1693311370.git.viresh.kumar@linaro.org>

--------------T0u0YRmSnHlZNcYP30qCMrY1
Content-Type: multipart/mixed; boundary="------------rwGcTgUuy4nLg1yiCA001CoP"

--------------rwGcTgUuy4nLg1yiCA001CoP
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjkuMDguMjMgMTQ6MjksIFZpcmVzaCBLdW1hciB3cm90ZToNCj4gVmlydGlvIGd1ZXN0
cyBzZW5kIFZJUlRJT19NTUlPX1FVRVVFX05PVElGWSBub3RpZmljYXRpb24gd2hlbiB0aGV5
IG5lZWQNCj4gdG8gbm90aWZ5IHRoZSBiYWNrZW5kIG9mIGFuIHVwZGF0ZSB0byB0aGUgc3Rh
dHVzIG9mIHRoZSB2aXJ0cXVldWUuIFRoZQ0KPiBiYWNrZW5kIG9yIGFub3RoZXIgZW50aXR5
LCBwb2xscyB0aGUgTU1JTyBhZGRyZXNzIGZvciB1cGRhdGVzIHRvIGtub3cNCj4gd2hlbiB0
aGUgbm90aWZpY2F0aW9uIGlzIHNlbnQuDQo+IA0KPiBJdCB3b3JrcyB3ZWxsIGlmIHRoZSBi
YWNrZW5kIGRvZXMgdGhpcyBwb2xsaW5nIGJ5IGl0c2VsZi4gQnV0IGFzIHdlIG1vdmUNCj4g
dG93YXJkcyBnZW5lcmljIGJhY2tlbmQgaW1wbGVtZW50YXRpb25zLCB3ZSBlbmQgdXAgaW1w
bGVtZW50aW5nIHRoaXMgaW4NCj4gYSBzZXBhcmF0ZSB1c2VyLXNwYWNlIHByb2dyYW0uDQo+
IA0KPiBHZW5lcmFsbHksIHRoZSBWaXJ0aW8gYmFja2VuZHMgYXJlIGltcGxlbWVudGVkIHRv
IHdvcmsgd2l0aCB0aGUgRXZlbnRmZA0KPiBiYXNlZCBtZWNoYW5pc20uIEluIG9yZGVyIHRv
IG1ha2Ugc3VjaCBiYWNrZW5kcyB3b3JrIHdpdGggWGVuLCBhbm90aGVyDQo+IHNvZnR3YXJl
IGxheWVyIG5lZWRzIHRvIGRvIHRoZSBwb2xsaW5nIGFuZCBzZW5kIGFuIGV2ZW50IHZpYSBl
dmVudGZkIHRvDQo+IHRoZSBiYWNrZW5kIG9uY2UgdGhlIG5vdGlmaWNhdGlvbiBmcm9tIGd1
ZXN0IGlzIHJlY2VpdmVkLiBUaGlzIHJlc3VsdHMNCj4gaW4gYW4gZXh0cmEgY29udGV4dCBz
d2l0Y2guDQo+IA0KPiBUaGlzIGlzIG5vdCBhIG5ldyBwcm9ibGVtIGluIExpbnV4IHRob3Vn
aC4gSXQgaXMgcHJlc2VudCB3aXRoIG90aGVyDQo+IGh5cGVydmlzb3JzIGxpa2UgS1ZNLCBl
dGMuIGFzIHdlbGwuIFRoZSBnZW5lcmljIHNvbHV0aW9uIGltcGxlbWVudGVkIGluDQo+IHRo
ZSBrZXJuZWwgZm9yIHRoZW0gaXMgdG8gcHJvdmlkZSBhbiBJT0NUTCBjYWxsIHRvIHBhc3Mg
dGhlIGFkZHJlc3MgdG8NCj4gcG9sbCBhbmQgZXZlbnRmZCwgd2hpY2ggbGV0cyB0aGUga2Vy
bmVsIHRha2UgY2FyZSBvZiBwb2xsaW5nIGFuZCByYWlzZQ0KPiBhbiBldmVudCBvbiB0aGUg
ZXZlbnRmZCwgaW5zdGVhZCBvZiBoYW5kbGluZyB0aGlzIGluIHVzZXIgc3BhY2UgKHdoaWNo
DQo+IGludm9sdmVzIGFuIGV4dHJhIGNvbnRleHQgc3dpdGNoKS4NCj4gDQo+IFRoaXMgcGF0
Y2ggYWRkcyBzaW1pbGFyIHN1cHBvcnQgZm9yIHhlbi4NCj4gDQo+IEluc3BpcmVkIGJ5IGV4
aXN0aW5nIGltcGxlbWVudGF0aW9ucyBmb3IgS1ZNLCBldGMuLg0KPiANCj4gVGhpcyBhbHNv
IGNvcGllcyBpb3JlcS5oIGhlYWRlciBmaWxlIChvbmx5IHN0cnVjdCBpb3JlcSBhbmQgcmVs
YXRlZA0KPiBtYWNyb3MpIGZyb20gWGVuJ3Mgc291cmNlIHRyZWUgKFRvcCBjb21taXQgNWQ4
NGYwN2ZlNmJmICgieGVuL3BjaTogZHJvcA0KPiByZW1haW5pbmcgdXNlcyBvZiBib29sX3Qi
KSkuDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBWaXJlc2ggS3VtYXIgPHZpcmVzaC5rdW1hckBs
aW5hcm8ub3JnPg0KPiAtLS0NCj4gICBkcml2ZXJzL3hlbi9LY29uZmlnICAgICAgICAgICAg
ICAgfCAgIDggKy0NCj4gICBkcml2ZXJzL3hlbi9wcml2Y21kLmMgICAgICAgICAgICAgfCAz
ODUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKystDQo+ICAgaW5jbHVkZS91YXBpL3hl
bi9wcml2Y21kLmggICAgICAgIHwgIDE4ICsrDQo+ICAgaW5jbHVkZS94ZW4vaW50ZXJmYWNl
L2h2bS9pb3JlcS5oIHwgIDUxICsrKysNCj4gICA0IGZpbGVzIGNoYW5nZWQsIDQ1NiBpbnNl
cnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQ0KPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNs
dWRlL3hlbi9pbnRlcmZhY2UvaHZtL2lvcmVxLmgNCj4gDQo+IGRpZmYgLS1naXQgYS9kcml2
ZXJzL3hlbi9LY29uZmlnIGIvZHJpdmVycy94ZW4vS2NvbmZpZw0KPiBpbmRleCBkNDMxNTNm
ZWMxOGUuLmQ1OTg5ODcxZGQ1ZCAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy94ZW4vS2NvbmZp
Zw0KPiArKysgYi9kcml2ZXJzL3hlbi9LY29uZmlnDQo+IEBAIC0yNjksMTIgKzI2OSwxMiBA
QCBjb25maWcgWEVOX1BSSVZDTUQNCj4gICAJICBkaXNhZ2dyZWdhdGVkIFhlbiBzZXR1cHMg
dGhpcyBkcml2ZXIgbWlnaHQgYmUgbmVlZGVkIGZvciBvdGhlcg0KPiAgIAkgIGRvbWFpbnMs
IHRvby4NCj4gICANCj4gLWNvbmZpZyBYRU5fUFJJVkNNRF9JUlFGRA0KPiAtCWJvb2wgIlhl
biBpcnFmZCBzdXBwb3J0Ig0KPiArY29uZmlnIFhFTl9QUklWQ01EX0VWRU5URkQNCj4gKwli
b29sICJYZW4gSW9ldmVudGZkIGFuZCBpcnFmZCBzdXBwb3J0Ig0KPiAgIAlkZXBlbmRzIG9u
IFhFTl9QUklWQ01EICYmIFhFTl9WSVJUSU8gJiYgRVZFTlRGRA0KPiAgIAloZWxwDQo+IC0J
ICBVc2luZyB0aGUgaXJxZmQgbWVjaGFuaXNtIGEgdmlydGlvIGJhY2tlbmQgcnVubmluZyBp
biBhIGRhZW1vbiBjYW4NCj4gLQkgIHNwZWVkIHVwIGludGVycnVwdCBpbmplY3Rpb24gaW50
byBhIGd1ZXN0Lg0KPiArCSAgVXNpbmcgdGhlIGlvZXZlbnRmZCAvIGlycWZkIG1lY2hhbmlz
bSBhIHZpcnRpbyBiYWNrZW5kIHJ1bm5pbmcgaW4gYQ0KPiArCSAgZGFlbW9uIGNhbiBzcGVl
ZCB1cCBpbnRlcnJ1cHQgZGVsaXZlcnkgZnJvbSAvIHRvIGEgZ3Vlc3QuDQo+ICAgDQo+ICAg
Y29uZmlnIFhFTl9BQ1BJX1BST0NFU1NPUg0KPiAgIAl0cmlzdGF0ZSAiWGVuIEFDUEkgcHJv
Y2Vzc29yIg0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy94ZW4vcHJpdmNtZC5jIGIvZHJpdmVy
cy94ZW4vcHJpdmNtZC5jDQo+IGluZGV4IDEyMGFmNTc5OTlmYy4uNGIxOGM1MWI2YjJlIDEw
MDY0NA0KPiAtLS0gYS9kcml2ZXJzL3hlbi9wcml2Y21kLmMNCj4gKysrIGIvZHJpdmVycy94
ZW4vcHJpdmNtZC5jDQo+IEBAIC0yOSwxNSArMjksMTggQEANCj4gICAjaW5jbHVkZSA8bGlu
dXgvc2VxX2ZpbGUuaD4NCj4gICAjaW5jbHVkZSA8bGludXgvbWlzY2RldmljZS5oPg0KPiAg
ICNpbmNsdWRlIDxsaW51eC9tb2R1bGVwYXJhbS5oPg0KPiArI2luY2x1ZGUgPGxpbnV4L3Zp
cnRpb19tbWlvLmg+DQo+ICAgDQo+ICAgI2luY2x1ZGUgPGFzbS94ZW4vaHlwZXJ2aXNvci5o
Pg0KPiAgICNpbmNsdWRlIDxhc20veGVuL2h5cGVyY2FsbC5oPg0KPiAgIA0KPiAgICNpbmNs
dWRlIDx4ZW4veGVuLmg+DQo+ICsjaW5jbHVkZSA8eGVuL2V2ZW50cy5oPg0KPiAgICNpbmNs
dWRlIDx4ZW4vcHJpdmNtZC5oPg0KPiAgICNpbmNsdWRlIDx4ZW4vaW50ZXJmYWNlL3hlbi5o
Pg0KPiAgICNpbmNsdWRlIDx4ZW4vaW50ZXJmYWNlL21lbW9yeS5oPg0KPiAgICNpbmNsdWRl
IDx4ZW4vaW50ZXJmYWNlL2h2bS9kbV9vcC5oPg0KPiArI2luY2x1ZGUgPHhlbi9pbnRlcmZh
Y2UvaHZtL2lvcmVxLmg+DQo+ICAgI2luY2x1ZGUgPHhlbi9mZWF0dXJlcy5oPg0KPiAgICNp
bmNsdWRlIDx4ZW4vcGFnZS5oPg0KPiAgICNpbmNsdWRlIDx4ZW4veGVuLW9wcy5oPg0KPiBA
QCAtNzgyLDYgKzc4NSw3IEBAIHN0YXRpYyBsb25nIHByaXZjbWRfaW9jdGxfbW1hcF9yZXNv
dXJjZShzdHJ1Y3QgZmlsZSAqZmlsZSwNCj4gICAJCQlnb3RvIG91dDsNCj4gICANCj4gICAJ
CXBhZ2VzID0gdm1hLT52bV9wcml2YXRlX2RhdGE7DQo+ICsNCj4gICAJCWZvciAoaSA9IDA7
IGkgPCBrZGF0YS5udW07IGkrKykgew0KPiAgIAkJCXhlbl9wZm5fdCBwZm4gPQ0KPiAgIAkJ
CQlwYWdlX3RvX3hlbl9wZm4ocGFnZXNbaSAvIFhFTl9QRk5fUEVSX1BBR0VdKTsNCj4gQEAg
LTgzOCw3ICs4NDIsNyBAQCBzdGF0aWMgbG9uZyBwcml2Y21kX2lvY3RsX21tYXBfcmVzb3Vy
Y2Uoc3RydWN0IGZpbGUgKmZpbGUsDQo+ICAgCXJldHVybiByYzsNCj4gICB9DQo+ICAgDQo+
IC0jaWZkZWYgQ09ORklHX1hFTl9QUklWQ01EX0lSUUZEDQo+ICsjaWZkZWYgQ09ORklHX1hF
Tl9QUklWQ01EX0VWRU5URkQNCj4gICAvKiBJcnFmZCBzdXBwb3J0ICovDQo+ICAgc3RhdGlj
IHN0cnVjdCB3b3JrcXVldWVfc3RydWN0ICppcnFmZF9jbGVhbnVwX3dxOw0KPiAgIHN0YXRp
YyBERUZJTkVfTVVURVgoaXJxZmRzX2xvY2spOw0KPiBAQCAtMTA3OSw2ICsxMDgzLDM2OSBA
QCBzdGF0aWMgdm9pZCBwcml2Y21kX2lycWZkX2V4aXQodm9pZCkNCj4gICANCj4gICAJZGVz
dHJveV93b3JrcXVldWUoaXJxZmRfY2xlYW51cF93cSk7DQo+ICAgfQ0KPiArDQo+ICsvKiBJ
b2V2ZW50ZmQgU3VwcG9ydCAqLw0KPiArI2RlZmluZSBRVUVVRV9OT1RJRllfVlFfTUFTSyAw
eEZGRkYNCj4gKw0KPiArc3RhdGljIERFRklORV9NVVRFWChpb3JlcV9sb2NrKTsNCj4gK3N0
YXRpYyBMSVNUX0hFQUQoaW9yZXFfbGlzdCk7DQo+ICsNCj4gKy8qIHBlci1ldmVudGZkIHN0
cnVjdHVyZSAqLw0KPiArc3RydWN0IHByaXZjbWRfa2VybmVsX2lvZXZlbnRmZCB7DQo+ICsJ
c3RydWN0IGV2ZW50ZmRfY3R4ICpldmVudGZkOw0KPiArCXN0cnVjdCBsaXN0X2hlYWQgbGlz
dDsNCj4gKwl1bnNpZ25lZCBsb25nIGxvbmcgYWRkcjsNCg0KVGhpcyBpcyBwb3B1bGF0ZWQg
ZnJvbSBhIF9fdTY0IGZpZWxkLiBNYXliZSBtYWtlIGl0IHVpbnQ2NF90Pw0KDQo+ICsJdW5z
aWduZWQgaW50IGFkZHJfbGVuOw0KPiArCXVuc2lnbmVkIGludCB2cTsNCj4gK307DQo+ICsN
Cj4gKy8qIHBlci1ndWVzdCBDUFUgLyBwb3J0IHN0cnVjdHVyZSAqLw0KPiArc3RydWN0IGlv
cmVxX3BvcnQgew0KPiArCWludCB2Y3B1Ow0KPiArCXVuc2lnbmVkIGludCBwb3J0Ow0KPiAr
CXN0cnVjdCBwcml2Y21kX2tlcm5lbF9pb3JlcSAqa2lvcmVxOw0KPiArfTsNCj4gKw0KPiAr
LyogcGVyLWd1ZXN0IHN0cnVjdHVyZSAqLw0KPiArc3RydWN0IHByaXZjbWRfa2VybmVsX2lv
cmVxIHsNCj4gKwlkb21pZF90IGRvbTsNCj4gKwl1bnNpZ25lZCBpbnQgdmNwdXM7DQo+ICsJ
dm9pZCBfX3VzZXIgKnVpb3JlcTsNCj4gKwlzdHJ1Y3QgaW9yZXEgKmlvcmVxOw0KPiArCXN0
cnVjdCBtdXRleCBsb2NrOyAvKiBQcm90ZWN0cyBpb2V2ZW50ZmRzIGxpc3QgKi8NCj4gKwlz
dHJ1Y3QgbGlzdF9oZWFkIGlvZXZlbnRmZHM7DQo+ICsJc3RydWN0IGxpc3RfaGVhZCBsaXN0
Ow0KPiArCXN0cnVjdCBpb3JlcV9wb3J0ICpwb3J0czsNCj4gK307DQo+ICsNCj4gK3N0YXRp
YyBpcnFyZXR1cm5fdCBpb2V2ZW50ZmRfaW50ZXJydXB0KGludCBpcnEsIHZvaWQgKmRldl9p
ZCkNCj4gK3sNCj4gKwlzdHJ1Y3QgaW9yZXFfcG9ydCAqcG9ydCA9IGRldl9pZDsNCj4gKwlz
dHJ1Y3QgcHJpdmNtZF9rZXJuZWxfaW9yZXEgKmtpb3JlcSA9IHBvcnQtPmtpb3JlcTsNCj4g
KwlzdHJ1Y3QgaW9yZXEgKmlvcmVxID0gJmtpb3JlcS0+aW9yZXFbcG9ydC0+dmNwdV07DQo+
ICsJc3RydWN0IHByaXZjbWRfa2VybmVsX2lvZXZlbnRmZCAqa2lvZXZlbnRmZDsNCj4gKwl1
bnNpZ25lZCBpbnQgc3RhdGUgPSBTVEFURV9JT1JFUV9SRUFEWTsNCj4gKw0KPiArCWlmIChp
b3JlcS0+c3RhdGUgIT0gU1RBVEVfSU9SRVFfUkVBRFkgfHwNCj4gKwkgICAgaW9yZXEtPnR5
cGUgIT0gSU9SRVFfVFlQRV9DT1BZIHx8IGlvcmVxLT5kaXIgIT0gSU9SRVFfV1JJVEUpDQo+
ICsJCXJldHVybiBJUlFfTk9ORTsNCj4gKw0KPiArCXNtcF9tYigpOw0KDQpBZ2FpbnN0IHdo
YXQgaXMgdGhpcyBiYXJyaWVyIHByb3RlY3Rpbmc/IFBsZWFzZSBhZGQgYSBjb21tZW50Lg0K
DQo+ICsJaW9yZXEtPnN0YXRlID0gU1RBVEVfSU9SRVFfSU5QUk9DRVNTOw0KPiArDQo+ICsJ
bXV0ZXhfbG9jaygma2lvcmVxLT5sb2NrKTsNCj4gKwlsaXN0X2Zvcl9lYWNoX2VudHJ5KGtp
b2V2ZW50ZmQsICZraW9yZXEtPmlvZXZlbnRmZHMsIGxpc3QpIHsNCj4gKwkJaWYgKGlvcmVx
LT5hZGRyID09IGtpb2V2ZW50ZmQtPmFkZHIgKyBWSVJUSU9fTU1JT19RVUVVRV9OT1RJRlkg
JiYNCj4gKwkJICAgIGlvcmVxLT5zaXplID09IGtpb2V2ZW50ZmQtPmFkZHJfbGVuICYmDQo+
ICsJCSAgICAoaW9yZXEtPmRhdGEgJiBRVUVVRV9OT1RJRllfVlFfTUFTSykgPT0ga2lvZXZl
bnRmZC0+dnEpIHsNCj4gKwkJCWV2ZW50ZmRfc2lnbmFsKGtpb2V2ZW50ZmQtPmV2ZW50ZmQs
IDEpOw0KPiArCQkJc3RhdGUgPSBTVEFURV9JT1JFU1BfUkVBRFk7DQo+ICsJCQlicmVhazsN
Cj4gKwkJfQ0KPiArCX0NCj4gKwltdXRleF91bmxvY2soJmtpb3JlcS0+bG9jayk7DQo+ICsN
Cj4gKwlzbXBfbWIoKTsNCg0KSXMgdGhpcyByZWFsbHkgbmVlZGVkIGFmdGVyIGNhbGxpbmcg
bXV0ZXhfdW5sb2NrKCk/IEkgdGhpbmsgeW91IGFyZSB0cnlpbmcgdG8NCmF2b2lkIGFueSBh
Y2Nlc3NlcyB0byBnbyBwYXN0IGlvcmVxLT5zdGF0ZSBtb2RpZmljYXRpb24uIElmIHNvLCBh
ZGQgYSBjb21tZW50DQooZWl0aGVyIHdoeSB5b3UgbmVlZCB0aGUgYmFycmllciwgb3IgdGhh
dCB5b3UgZG9uJ3QgbmVlZCBpdCBkdWUgdG8gdGhlIHVubG9jaykuDQoNCkluIGdlbmVyYWws
IHNob3VsZG4ndCB0aGUgc3RhdGUgYmUgY2hlY2tlZCBhbmQgbW9kaWZpZWQgaW4gdGhlIGxv
Y2tlZCBhcmVhPw0KDQpBbmQgYSBtdXRleF9sb2NrKCkgaW5zaWRlIGFuIElSUS1oYW5kbGVy
IHNlZW1zIGR1YmlvdXM6IFRoaXMgaXMgYWxsb3dlZCBvbmx5IGluDQpjYXNlIHRoZSBoYW5k
bGVyIGhhcyBiZWVuIGRlZmluZWQgdG8gcnVuIGluIGEgdGhyZWFkZWQgSVJRLiBPdGhlcndp
c2UgeW91J2QNCmVuZCB1cCB0cnlpbmcgdG8gc2NoZWR1bGUoKSBpbiBhbiBpbnRlcnJ1cHQt
b2ZmIHNlY3Rpb24uIEknZCBzdWdnZXN0IHlvdSB1c2UNCmEgc3BpbmxvY2sgaW5zdGVhZC4N
Cg0KPiArCWlvcmVxLT5zdGF0ZSA9IHN0YXRlOw0KPiArDQo+ICsJaWYgKHN0YXRlID09IFNU
QVRFX0lPUkVTUF9SRUFEWSkgew0KPiArCQlub3RpZnlfcmVtb3RlX3ZpYV9ldnRjaG4ocG9y
dC0+cG9ydCk7DQo+ICsJCXJldHVybiBJUlFfSEFORExFRDsNCj4gKwl9DQo+ICsNCj4gKwly
ZXR1cm4gSVJRX05PTkU7DQo+ICt9DQo+ICsNCj4gK3N0YXRpYyB2b2lkIGlvcmVxX2ZyZWUo
c3RydWN0IHByaXZjbWRfa2VybmVsX2lvcmVxICpraW9yZXEpDQo+ICt7DQo+ICsJc3RydWN0
IGlvcmVxX3BvcnQgKnBvcnRzID0ga2lvcmVxLT5wb3J0czsNCj4gKwlpbnQgaTsNCj4gKw0K
PiArCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJmlvcmVxX2xvY2spOw0KPiArDQo+ICsJaWYgKCFs
aXN0X2VtcHR5KCZraW9yZXEtPmlvZXZlbnRmZHMpKQ0KPiArCQlyZXR1cm47DQoNCklzIHRo
aXMgYSBub3JtYWwgc2l0dWF0aW9uPyBJZiBub3QsIG1heWJlIGlzc3VlIGEgd2FybmluZyAo
cHJvYmFibHkgcmF0ZQ0KbGltaXRlZCk/DQoNCj4gKw0KPiArCWxpc3RfZGVsKCZraW9yZXEt
Pmxpc3QpOw0KPiArDQo+ICsJZm9yIChpID0ga2lvcmVxLT52Y3B1cyAtIDE7IGkgPj0gMDsg
aS0tKQ0KPiArCQl1bmJpbmRfZnJvbV9pcnFoYW5kbGVyKGlycV9mcm9tX2V2dGNobihwb3J0
c1tpXS5wb3J0KSwgJnBvcnRzW2ldKTsNCj4gKw0KPiArCWtmcmVlKGtpb3JlcSk7DQo+ICt9
DQo+ICsNCj4gK3N0YXRpYw0KPiArc3RydWN0IHByaXZjbWRfa2VybmVsX2lvcmVxICphbGxv
Y19pb3JlcShzdHJ1Y3QgcHJpdmNtZF9pb2V2ZW50ZmQgKmlvZXZlbnRmZCkNCj4gK3sNCj4g
KwlzdHJ1Y3QgcHJpdmNtZF9rZXJuZWxfaW9yZXEgKmtpb3JlcTsNCj4gKwlzdHJ1Y3QgbW1f
c3RydWN0ICptbSA9IGN1cnJlbnQtPm1tOw0KPiArCXN0cnVjdCB2bV9hcmVhX3N0cnVjdCAq
dm1hOw0KPiArCXN0cnVjdCBwYWdlICoqcGFnZXM7DQo+ICsJdW5zaWduZWQgaW50ICpwb3J0
czsNCj4gKwlpbnQgcmV0LCBzaXplLCBpOw0KPiArDQo+ICsJbG9ja2RlcF9hc3NlcnRfaGVs
ZCgmaW9yZXFfbG9jayk7DQo+ICsNCj4gKwlzaXplID0gc2l6ZW9mKCpraW9yZXEpICsgc2l6
ZW9mKCpraW9yZXEtPnBvcnRzKSAqIGlvZXZlbnRmZC0+dmNwdXM7DQoNClVzZSB0aGUgc3Ry
dWN0X3NpemUoKSBtYWNybyBpbnN0ZWFkPyBZb3UgbmVlZCB0byBkZWZpbmUga2lvcmVxLT5w
b3J0cyBhcyBhbg0KZW1wdHkgYXJyYXkgZm9yIHRoYXQgdG8gd29yay4NCg0KPiArCWtpb3Jl
cSA9IGt6YWxsb2Moc2l6ZSwgR0ZQX0tFUk5FTCk7DQo+ICsJaWYgKCFraW9yZXEpDQo+ICsJ
CXJldHVybiBFUlJfUFRSKC1FTk9NRU0pOw0KPiArCWtpb3JlcS0+cG9ydHMgPSAoc3RydWN0
IGlvcmVxX3BvcnQgKikoa2lvcmVxICsgMSk7DQo+ICsNCj4gKwlraW9yZXEtPmRvbSA9IGlv
ZXZlbnRmZC0+ZG9tOw0KPiArCWtpb3JlcS0+dmNwdXMgPSBpb2V2ZW50ZmQtPnZjcHVzOw0K
PiArCWtpb3JlcS0+dWlvcmVxID0gaW9ldmVudGZkLT5pb3JlcTsNCj4gKwltdXRleF9pbml0
KCZraW9yZXEtPmxvY2spOw0KPiArCUlOSVRfTElTVF9IRUFEKCZraW9yZXEtPmlvZXZlbnRm
ZHMpOw0KPiArDQo+ICsJLyogVGhlIG1lbW9yeSBmb3IgaW9yZXEgc2VydmVyIG11c3QgaGF2
ZSBiZWVuIG1hcHBlZCBlYXJsaWVyICovDQo+ICsJbW1hcF93cml0ZV9sb2NrKG1tKTsNCj4g
Kwl2bWEgPSBmaW5kX3ZtYShtbSwgKHVuc2lnbmVkIGxvbmcpaW9ldmVudGZkLT5pb3JlcSk7
DQo+ICsJaWYgKCF2bWEpIHsNCj4gKwkJcHJfZXJyKCJGYWlsZWQgdG8gZmluZCB2bWEgZm9y
IGlvcmVxIHBhZ2UhXG4iKTsNCj4gKwkJbW1hcF93cml0ZV91bmxvY2sobW0pOw0KPiArCQly
ZXQgPSAtRUZBVUxUOw0KPiArCQlnb3RvIGVycm9yX2tmcmVlOw0KPiArCX0NCj4gKw0KPiAr
CXBhZ2VzID0gdm1hLT52bV9wcml2YXRlX2RhdGE7DQo+ICsJa2lvcmVxLT5pb3JlcSA9IChz
dHJ1Y3QgaW9yZXEgKikocGFnZV90b192aXJ0KHBhZ2VzWzBdKSk7DQo+ICsJbW1hcF93cml0
ZV91bmxvY2sobW0pOw0KPiArDQo+ICsJc2l6ZSA9IHNpemVvZigqcG9ydHMpICoga2lvcmVx
LT52Y3B1czsNCj4gKwlwb3J0cyA9IGt6YWxsb2Moc2l6ZSwgR0ZQX0tFUk5FTCk7DQo+ICsJ
aWYgKCFwb3J0cykgew0KPiArCQlyZXQgPSAtRU5PTUVNOw0KPiArCQlnb3RvIGVycm9yX2tm
cmVlOw0KPiArCX0NCj4gKw0KPiArCWlmIChjb3B5X2Zyb21fdXNlcihwb3J0cywgaW9ldmVu
dGZkLT5wb3J0cywgc2l6ZSkpIHsNCj4gKwkJcmV0ID0gLUVGQVVMVDsNCj4gKwkJZ290byBl
cnJvcl9rZnJlZV9wb3J0czsNCj4gKwl9DQo+ICsNCj4gKwlmb3IgKGkgPSAwOyBpIDwga2lv
cmVxLT52Y3B1czsgaSsrKSB7DQo+ICsJCWtpb3JlcS0+cG9ydHNbaV0udmNwdSA9IGk7DQo+
ICsJCWtpb3JlcS0+cG9ydHNbaV0ucG9ydCA9IHBvcnRzW2ldOw0KPiArCQlraW9yZXEtPnBv
cnRzW2ldLmtpb3JlcSA9IGtpb3JlcTsNCj4gKw0KPiArCQlyZXQgPSBiaW5kX2V2dGNobl90
b19pcnFoYW5kbGVyX2xhdGVlb2kocG9ydHNbaV0sDQo+ICsJCQkJaW9ldmVudGZkX2ludGVy
cnVwdCwgSVJRRl9TSEFSRUQsICJpb2V2ZW50ZmQiLA0KPiArCQkJCSZraW9yZXEtPnBvcnRz
W2ldKTsNCj4gKwkJaWYgKHJldCA8IDApDQo+ICsJCQlnb3RvIGVycm9yX3VuYmluZDsNCj4g
Kwl9DQo+ICsNCj4gKwlrZnJlZShwb3J0cyk7DQo+ICsNCj4gKwlsaXN0X2FkZF90YWlsKCZr
aW9yZXEtPmxpc3QsICZpb3JlcV9saXN0KTsNCj4gKw0KPiArCXJldHVybiBraW9yZXE7DQo+
ICsNCj4gK2Vycm9yX3VuYmluZDoNCj4gKwl3aGlsZSAoLS1pID49IDApDQo+ICsJCXVuYmlu
ZF9mcm9tX2lycWhhbmRsZXIoaXJxX2Zyb21fZXZ0Y2huKHBvcnRzW2ldKSwgJmtpb3JlcS0+
cG9ydHNbaV0pOw0KPiArZXJyb3Jfa2ZyZWVfcG9ydHM6DQo+ICsJa2ZyZWUocG9ydHMpOw0K
PiArZXJyb3Jfa2ZyZWU6DQo+ICsJa2ZyZWUoa2lvcmVxKTsNCj4gKwlyZXR1cm4gRVJSX1BU
UihyZXQpOw0KPiArfQ0KPiArDQo+ICtzdGF0aWMgc3RydWN0IHByaXZjbWRfa2VybmVsX2lv
cmVxICoNCj4gK2dldF9pb3JlcShzdHJ1Y3QgcHJpdmNtZF9pb2V2ZW50ZmQgKmlvZXZlbnRm
ZCwgc3RydWN0IGV2ZW50ZmRfY3R4ICpldmVudGZkKQ0KPiArew0KPiArCXN0cnVjdCBwcml2
Y21kX2tlcm5lbF9pb3JlcSAqa2lvcmVxOw0KPiArDQo+ICsJbGlzdF9mb3JfZWFjaF9lbnRy
eShraW9yZXEsICZpb3JlcV9saXN0LCBsaXN0KSB7DQo+ICsJCXN0cnVjdCBwcml2Y21kX2tl
cm5lbF9pb2V2ZW50ZmQgKmtpb2V2ZW50ZmQ7DQo+ICsNCj4gKwkJLyoNCj4gKwkJICoga2lv
cmVxIGZpZWxkcyBjYW4gYmUgYWNjZXNzZWQgaGVyZSB3aXRob3V0IGEgbG9jayBhcyB0aGV5
IGFyZQ0KPiArCQkgKiBuZXZlciB1cGRhdGVkIGFmdGVyIGJlaW5nIGFkZGVkIHRvIHRoZSBp
b3JlcV9saXN0Lg0KPiArCQkgKi8NCj4gKwkJaWYgKGtpb3JlcS0+dWlvcmVxICE9IGlvZXZl
bnRmZC0+aW9yZXEpIHsNCj4gKwkJCWNvbnRpbnVlOw0KPiArCQl9IGVsc2UgaWYgKGtpb3Jl
cS0+ZG9tICE9IGlvZXZlbnRmZC0+ZG9tIHx8DQo+ICsJCQkgICBraW9yZXEtPnZjcHVzICE9
IGlvZXZlbnRmZC0+dmNwdXMpIHsNCj4gKwkJCXByX2VycigiSW52YWxpZCBpb2V2ZW50ZmQg
Y29uZmlndXJhdGlvbiBtaXNtYXRjaCwgZG9tICgldSB2cyAldSksIHZjcHVzICgldSB2cyAl
dSlcbiIsDQo+ICsJCQkgICAgICAga2lvcmVxLT5kb20sIGlvZXZlbnRmZC0+ZG9tLCBraW9y
ZXEtPnZjcHVzLA0KPiArCQkJICAgICAgIGlvZXZlbnRmZC0+dmNwdXMpOw0KPiArCQkJcmV0
dXJuIEVSUl9QVFIoLUVJTlZBTCk7DQo+ICsJCX0NCj4gKw0KPiArCQkvKiBMb29rIGZvciBh
IGR1cGxpY2F0ZSBldmVudGZkIGZvciB0aGUgc2FtZSBndWVzdCAqLw0KPiArCQltdXRleF9s
b2NrKCZraW9yZXEtPmxvY2spOw0KPiArCQlsaXN0X2Zvcl9lYWNoX2VudHJ5KGtpb2V2ZW50
ZmQsICZraW9yZXEtPmlvZXZlbnRmZHMsIGxpc3QpIHsNCj4gKwkJCWlmIChldmVudGZkID09
IGtpb2V2ZW50ZmQtPmV2ZW50ZmQpIHsNCj4gKwkJCQltdXRleF91bmxvY2soJmtpb3JlcS0+
bG9jayk7DQo+ICsJCQkJcmV0dXJuIEVSUl9QVFIoLUVCVVNZKTsNCj4gKwkJCX0NCj4gKwkJ
fQ0KPiArCQltdXRleF91bmxvY2soJmtpb3JlcS0+bG9jayk7DQo+ICsNCj4gKwkJcmV0dXJu
IGtpb3JlcTsNCj4gKwl9DQo+ICsNCj4gKwkvKiBNYXRjaGluZyBraW9yZXEgaXNuJ3QgZm91
bmQsIGFsbG9jYXRlIGEgbmV3IG9uZSAqLw0KPiArCXJldHVybiBhbGxvY19pb3JlcShpb2V2
ZW50ZmQpOw0KPiArfQ0KPiArDQo+ICtzdGF0aWMgdm9pZCBpb2V2ZW50ZmRfZnJlZShzdHJ1
Y3QgcHJpdmNtZF9rZXJuZWxfaW9ldmVudGZkICpraW9ldmVudGZkKQ0KPiArew0KPiArCWxp
c3RfZGVsKCZraW9ldmVudGZkLT5saXN0KTsNCj4gKwlldmVudGZkX2N0eF9wdXQoa2lvZXZl
bnRmZC0+ZXZlbnRmZCk7DQo+ICsJa2ZyZWUoa2lvZXZlbnRmZCk7DQo+ICt9DQo+ICsNCj4g
K3N0YXRpYyBpbnQgcHJpdmNtZF9pb2V2ZW50ZmRfYXNzaWduKHN0cnVjdCBwcml2Y21kX2lv
ZXZlbnRmZCAqaW9ldmVudGZkKQ0KPiArew0KPiArCXN0cnVjdCBwcml2Y21kX2tlcm5lbF9p
b2V2ZW50ZmQgKmtpb2V2ZW50ZmQ7DQo+ICsJc3RydWN0IHByaXZjbWRfa2VybmVsX2lvcmVx
ICpraW9yZXE7DQo+ICsJc3RydWN0IGZkIGY7DQo+ICsJaW50IHJldDsNCj4gKw0KPiArCS8q
IENoZWNrIGZvciByYW5nZSBvdmVyZmxvdyAqLw0KPiArCWlmIChpb2V2ZW50ZmQtPmFkZHIg
KyBpb2V2ZW50ZmQtPmFkZHJfbGVuIDwgaW9ldmVudGZkLT5hZGRyKQ0KPiArCQlyZXR1cm4g
LUVJTlZBTDsNCj4gKw0KPiArCS8qIFZob3N0IHJlcXVpcmVzIHVzIHRvIHN1cHBvcnQgbGVu
Z3RoIDEsIDIsIDQsIGFuZCA4ICovDQo+ICsJaWYgKCEoaW9ldmVudGZkLT5hZGRyX2xlbiA9
PSAxIHx8IGlvZXZlbnRmZC0+YWRkcl9sZW4gPT0gMiB8fA0KPiArCSAgICAgIGlvZXZlbnRm
ZC0+YWRkcl9sZW4gPT0gNCB8fCBpb2V2ZW50ZmQtPmFkZHJfbGVuID09IDgpKQ0KPiArCQly
ZXR1cm4gLUVJTlZBTDsNCg0KSSB0aGluayB5b3Ugc2hvdWxkIGNoZWNrIHRoZSBudW1iZXJz
IG9mIHZjcHVzIHRvIGJlIGluIGEgc2FuZSByYW5nZS4gTmVpdGhlcg0KMCBub3IgNCBiaWxs
aW9uIGFyZSBhcHByb3ByaWF0ZS4NCg0KPiArDQo+ICsJa2lvZXZlbnRmZCA9IGt6YWxsb2Mo
c2l6ZW9mKCpraW9ldmVudGZkKSwgR0ZQX0tFUk5FTCk7DQo+ICsJaWYgKCFraW9ldmVudGZk
KQ0KPiArCQlyZXR1cm4gLUVOT01FTTsNCj4gKw0KPiArCWYgPSBmZGdldChpb2V2ZW50ZmQt
PmV2ZW50X2ZkKTsNCj4gKwlpZiAoIWYuZmlsZSkgew0KPiArCQlyZXQgPSAtRUJBREY7DQo+
ICsJCWdvdG8gZXJyb3Jfa2ZyZWU7DQo+ICsJfQ0KPiArDQo+ICsJa2lvZXZlbnRmZC0+ZXZl
bnRmZCA9IGV2ZW50ZmRfY3R4X2ZpbGVnZXQoZi5maWxlKTsNCj4gKwlmZHB1dChmKTsNCj4g
Kw0KPiArCWlmIChJU19FUlIoa2lvZXZlbnRmZC0+ZXZlbnRmZCkpIHsNCj4gKwkJcmV0ID0g
UFRSX0VSUihraW9ldmVudGZkLT5ldmVudGZkKTsNCj4gKwkJZ290byBlcnJvcl9rZnJlZTsN
Cj4gKwl9DQo+ICsNCj4gKwlraW9ldmVudGZkLT5hZGRyID0gaW9ldmVudGZkLT5hZGRyOw0K
PiArCWtpb2V2ZW50ZmQtPmFkZHJfbGVuID0gaW9ldmVudGZkLT5hZGRyX2xlbjsNCj4gKwlr
aW9ldmVudGZkLT52cSA9IGlvZXZlbnRmZC0+dnE7DQo+ICsNCj4gKwltdXRleF9sb2NrKCZp
b3JlcV9sb2NrKTsNCj4gKwlraW9yZXEgPSBnZXRfaW9yZXEoaW9ldmVudGZkLCBraW9ldmVu
dGZkLT5ldmVudGZkKTsNCj4gKwlpZiAoSVNfRVJSKGtpb3JlcSkpIHsNCj4gKwkJbXV0ZXhf
dW5sb2NrKCZpb3JlcV9sb2NrKTsNCj4gKwkJcmV0ID0gUFRSX0VSUihraW9yZXEpOw0KPiAr
CQlnb3RvIGVycm9yX2V2ZW50ZmQ7DQo+ICsJfQ0KPiArDQo+ICsJbXV0ZXhfbG9jaygma2lv
cmVxLT5sb2NrKTsNCj4gKwlsaXN0X2FkZF90YWlsKCZraW9ldmVudGZkLT5saXN0LCAma2lv
cmVxLT5pb2V2ZW50ZmRzKTsNCj4gKwltdXRleF91bmxvY2soJmtpb3JlcS0+bG9jayk7DQo+
ICsNCj4gKwltdXRleF91bmxvY2soJmlvcmVxX2xvY2spOw0KPiArDQo+ICsJcmV0dXJuIDA7
DQo+ICsNCj4gK2Vycm9yX2V2ZW50ZmQ6DQo+ICsJZXZlbnRmZF9jdHhfcHV0KGtpb2V2ZW50
ZmQtPmV2ZW50ZmQpOw0KPiArDQo+ICtlcnJvcl9rZnJlZToNCj4gKwlrZnJlZShraW9ldmVu
dGZkKTsNCj4gKwlyZXR1cm4gcmV0Ow0KPiArfQ0KPiArDQo+ICtzdGF0aWMgaW50IHByaXZj
bWRfaW9ldmVudGZkX2RlYXNzaWduKHN0cnVjdCBwcml2Y21kX2lvZXZlbnRmZCAqaW9ldmVu
dGZkKQ0KPiArew0KPiArCXN0cnVjdCBwcml2Y21kX2tlcm5lbF9pb3JlcSAqa2lvcmVxLCAq
dGtpb3JlcTsNCj4gKwlzdHJ1Y3QgZXZlbnRmZF9jdHggKmV2ZW50ZmQ7DQo+ICsJaW50IHJl
dCA9IDA7DQo+ICsNCj4gKwlldmVudGZkID0gZXZlbnRmZF9jdHhfZmRnZXQoaW9ldmVudGZk
LT5ldmVudF9mZCk7DQo+ICsJaWYgKElTX0VSUihldmVudGZkKSkNCj4gKwkJcmV0dXJuIFBU
Ul9FUlIoZXZlbnRmZCk7DQo+ICsNCj4gKwltdXRleF9sb2NrKCZpb3JlcV9sb2NrKTsNCj4g
KwlsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUoa2lvcmVxLCB0a2lvcmVxLCAmaW9yZXFfbGlz
dCwgbGlzdCkgew0KPiArCQlzdHJ1Y3QgcHJpdmNtZF9rZXJuZWxfaW9ldmVudGZkICpraW9l
dmVudGZkLCAqdG1wOw0KPiArCQkvKg0KPiArCQkgKiBraW9yZXEgZmllbGRzIGNhbiBiZSBh
Y2Nlc3NlZCBoZXJlIHdpdGhvdXQgYSBsb2NrIGFzIHRoZXkgYXJlDQo+ICsJCSAqIG5ldmVy
IHVwZGF0ZWQgYWZ0ZXIgYmVpbmcgYWRkZWQgdG8gdGhlIGlvcmVxX2xpc3QuDQo+ICsJCSAq
Lw0KPiArCQlpZiAoa2lvcmVxLT5kb20gIT0gaW9ldmVudGZkLT5kb20gfHwNCj4gKwkJICAg
IGtpb3JlcS0+dWlvcmVxICE9IGlvZXZlbnRmZC0+aW9yZXEgfHwNCj4gKwkJICAgIGtpb3Jl
cS0+dmNwdXMgIT0gaW9ldmVudGZkLT52Y3B1cykNCj4gKwkJCWNvbnRpbnVlOw0KPiArDQo+
ICsJCW11dGV4X2xvY2soJmtpb3JlcS0+bG9jayk7DQo+ICsJCWxpc3RfZm9yX2VhY2hfZW50
cnlfc2FmZShraW9ldmVudGZkLCB0bXAsICZraW9yZXEtPmlvZXZlbnRmZHMsIGxpc3QpIHsN
Cj4gKwkJCWlmIChldmVudGZkID09IGtpb2V2ZW50ZmQtPmV2ZW50ZmQpIHsNCj4gKwkJCQlp
b2V2ZW50ZmRfZnJlZShraW9ldmVudGZkKTsNCj4gKwkJCQltdXRleF91bmxvY2soJmtpb3Jl
cS0+bG9jayk7DQo+ICsNCj4gKwkJCQlpb3JlcV9mcmVlKGtpb3JlcSk7DQo+ICsJCQkJZ290
byB1bmxvY2s7DQo+ICsJCQl9DQo+ICsJCX0NCj4gKwkJbXV0ZXhfdW5sb2NrKCZraW9yZXEt
PmxvY2spOw0KPiArCQlicmVhazsNCj4gKwl9DQo+ICsNCj4gKwlwcl9lcnIoIklvZXZlbnRm
ZCBpc24ndCBhbHJlYWR5IGFzc2lnbmVkLCBkb206ICV1LCBhZGRyOiAlbGx1XG4iLA0KPiAr
CQkJaW9ldmVudGZkLT5kb20sIGlvZXZlbnRmZC0+YWRkcik7DQo+ICsJcmV0ID0gLUVOT0RF
VjsNCj4gKw0KPiArdW5sb2NrOg0KPiArCW11dGV4X3VubG9jaygmaW9yZXFfbG9jayk7DQo+
ICsJZXZlbnRmZF9jdHhfcHV0KGV2ZW50ZmQpOw0KPiArDQo+ICsJcmV0dXJuIDA7DQo+ICt9
DQo+ICsNCj4gK3N0YXRpYyBsb25nIHByaXZjbWRfaW9jdGxfaW9ldmVudGZkKHN0cnVjdCBm
aWxlICpmaWxlLCB2b2lkIF9fdXNlciAqdWRhdGEpDQo+ICt7DQo+ICsJc3RydWN0IHByaXZj
bWRfZGF0YSAqZGF0YSA9IGZpbGUtPnByaXZhdGVfZGF0YTsNCj4gKwlzdHJ1Y3QgcHJpdmNt
ZF9pb2V2ZW50ZmQgaW9ldmVudGZkOw0KPiArDQo+ICsJaWYgKGNvcHlfZnJvbV91c2VyKCZp
b2V2ZW50ZmQsIHVkYXRhLCBzaXplb2YoaW9ldmVudGZkKSkpDQo+ICsJCXJldHVybiAtRUZB
VUxUOw0KPiArDQo+ICsJLyogTm8gb3RoZXIgZmxhZ3Mgc2hvdWxkIGJlIHNldCAqLw0KPiAr
CWlmIChpb2V2ZW50ZmQuZmxhZ3MgJiB+UFJJVkNNRF9JT0VWRU5URkRfRkxBR19ERUFTU0lH
TikNCj4gKwkJcmV0dXJuIC1FSU5WQUw7DQo+ICsNCj4gKwkvKiBJZiByZXN0cmljdGlvbiBp
cyBpbiBwbGFjZSwgY2hlY2sgdGhlIGRvbWlkIG1hdGNoZXMgKi8NCj4gKwlpZiAoZGF0YS0+
ZG9taWQgIT0gRE9NSURfSU5WQUxJRCAmJiBkYXRhLT5kb21pZCAhPSBpb2V2ZW50ZmQuZG9t
KQ0KPiArCQlyZXR1cm4gLUVQRVJNOw0KPiArDQo+ICsJaWYgKGlvZXZlbnRmZC5mbGFncyAm
IFBSSVZDTURfSU9FVkVOVEZEX0ZMQUdfREVBU1NJR04pDQo+ICsJCXJldHVybiBwcml2Y21k
X2lvZXZlbnRmZF9kZWFzc2lnbigmaW9ldmVudGZkKTsNCj4gKw0KPiArCXJldHVybiBwcml2
Y21kX2lvZXZlbnRmZF9hc3NpZ24oJmlvZXZlbnRmZCk7DQo+ICt9DQo+ICsNCj4gK3N0YXRp
YyB2b2lkIHByaXZjbWRfaW9ldmVudGZkX2V4aXQodm9pZCkNCj4gK3sNCj4gKwlzdHJ1Y3Qg
cHJpdmNtZF9rZXJuZWxfaW9yZXEgKmtpb3JlcSwgKnRtcDsNCj4gKw0KPiArCW11dGV4X2xv
Y2soJmlvcmVxX2xvY2spOw0KPiArCWxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZShraW9yZXEs
IHRtcCwgJmlvcmVxX2xpc3QsIGxpc3QpIHsNCj4gKwkJc3RydWN0IHByaXZjbWRfa2VybmVs
X2lvZXZlbnRmZCAqa2lvZXZlbnRmZCwgKnRtcDsNCj4gKw0KPiArCQltdXRleF9sb2NrKCZr
aW9yZXEtPmxvY2spOw0KPiArCQlsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUoa2lvZXZlbnRm
ZCwgdG1wLCAma2lvcmVxLT5pb2V2ZW50ZmRzLCBsaXN0KQ0KPiArCQkJaW9ldmVudGZkX2Zy
ZWUoa2lvZXZlbnRmZCk7DQo+ICsJCW11dGV4X3VubG9jaygma2lvcmVxLT5sb2NrKTsNCj4g
Kw0KPiArCQlpb3JlcV9mcmVlKGtpb3JlcSk7DQo+ICsJfQ0KPiArCW11dGV4X3VubG9jaygm
aW9yZXFfbG9jayk7DQo+ICt9DQo+ICAgI2Vsc2UNCj4gICBzdGF0aWMgaW5saW5lIGxvbmcg
cHJpdmNtZF9pb2N0bF9pcnFmZChzdHJ1Y3QgZmlsZSAqZmlsZSwgdm9pZCBfX3VzZXIgKnVk
YXRhKQ0KPiAgIHsNCj4gQEAgLTEwOTMsNyArMTQ2MCwxNiBAQCBzdGF0aWMgaW5saW5lIGlu
dCBwcml2Y21kX2lycWZkX2luaXQodm9pZCkNCj4gICBzdGF0aWMgaW5saW5lIHZvaWQgcHJp
dmNtZF9pcnFmZF9leGl0KHZvaWQpDQo+ICAgew0KPiAgIH0NCj4gLSNlbmRpZiAvKiBDT05G
SUdfWEVOX1BSSVZDTURfSVJRRkQgKi8NCj4gKw0KPiArc3RhdGljIGlubGluZSBsb25nIHBy
aXZjbWRfaW9jdGxfaW9ldmVudGZkKHN0cnVjdCBmaWxlICpmaWxlLCB2b2lkIF9fdXNlciAq
dWRhdGEpDQo+ICt7DQo+ICsJcmV0dXJuIC1FT1BOT1RTVVBQOw0KPiArfQ0KPiArDQo+ICtz
dGF0aWMgaW5saW5lIHZvaWQgcHJpdmNtZF9pb2V2ZW50ZmRfZXhpdCh2b2lkKQ0KPiArew0K
PiArfQ0KPiArI2VuZGlmIC8qIENPTkZJR19YRU5fUFJJVkNNRF9FVkVOVEZEICovDQo+ICAg
DQo+ICAgc3RhdGljIGxvbmcgcHJpdmNtZF9pb2N0bChzdHJ1Y3QgZmlsZSAqZmlsZSwNCj4g
ICAJCQkgIHVuc2lnbmVkIGludCBjbWQsIHVuc2lnbmVkIGxvbmcgZGF0YSkNCj4gQEAgLTEx
MzQsNiArMTUxMCwxMCBAQCBzdGF0aWMgbG9uZyBwcml2Y21kX2lvY3RsKHN0cnVjdCBmaWxl
ICpmaWxlLA0KPiAgIAkJcmV0ID0gcHJpdmNtZF9pb2N0bF9pcnFmZChmaWxlLCB1ZGF0YSk7
DQo+ICAgCQlicmVhazsNCj4gICANCj4gKwljYXNlIElPQ1RMX1BSSVZDTURfSU9FVkVOVEZE
Og0KPiArCQlyZXQgPSBwcml2Y21kX2lvY3RsX2lvZXZlbnRmZChmaWxlLCB1ZGF0YSk7DQo+
ICsJCWJyZWFrOw0KPiArDQo+ICAgCWRlZmF1bHQ6DQo+ICAgCQlicmVhazsNCj4gICAJfQ0K
PiBAQCAtMTI3OCw2ICsxNjU4LDcgQEAgc3RhdGljIGludCBfX2luaXQgcHJpdmNtZF9pbml0
KHZvaWQpDQo+ICAgDQo+ICAgc3RhdGljIHZvaWQgX19leGl0IHByaXZjbWRfZXhpdCh2b2lk
KQ0KPiAgIHsNCj4gKwlwcml2Y21kX2lvZXZlbnRmZF9leGl0KCk7DQo+ICAgCXByaXZjbWRf
aXJxZmRfZXhpdCgpOw0KPiAgIAltaXNjX2RlcmVnaXN0ZXIoJnByaXZjbWRfZGV2KTsNCj4g
ICAJbWlzY19kZXJlZ2lzdGVyKCZ4ZW5fcHJpdmNtZGJ1Zl9kZXYpOw0KPiBkaWZmIC0tZ2l0
IGEvaW5jbHVkZS91YXBpL3hlbi9wcml2Y21kLmggYi9pbmNsdWRlL3VhcGkveGVuL3ByaXZj
bWQuaA0KPiBpbmRleCAzNzU3MThiYTRhYjYuLmNlNzEzOTBmMDAyNCAxMDA2NDQNCj4gLS0t
IGEvaW5jbHVkZS91YXBpL3hlbi9wcml2Y21kLmgNCj4gKysrIGIvaW5jbHVkZS91YXBpL3hl
bi9wcml2Y21kLmgNCj4gQEAgLTExMCw2ICsxMTAsMjIgQEAgc3RydWN0IHByaXZjbWRfaXJx
ZmQgew0KPiAgIAlfX3U4IHBhZFsyXTsNCj4gICB9Ow0KPiAgIA0KPiArLyogRm9yIHByaXZj
bWRfaW9ldmVudGZkOjpmbGFncyAqLw0KPiArI2RlZmluZSBQUklWQ01EX0lPRVZFTlRGRF9G
TEFHX0RFQVNTSUdOICgxIDw8IDApDQo+ICsNCj4gK3N0cnVjdCBwcml2Y21kX2lvZXZlbnRm
ZCB7DQo+ICsJdm9pZCBfX3VzZXIgKmlvcmVxOw0KPiArCXVuc2lnbmVkIGludCBfX3VzZXIg
KnBvcnRzOw0KPiArCV9fdTY0IGFkZHI7DQo+ICsJX191MzIgYWRkcl9sZW47DQo+ICsJX191
MzIgZXZlbnRfZmQ7DQo+ICsJX191MzIgdmNwdXM7DQo+ICsJX191MzIgdnE7DQo+ICsJX191
MzIgZmxhZ3M7DQo+ICsJZG9taWRfdCBkb207DQo+ICsJX191OCBwYWRbMl07DQo+ICt9Ow0K
PiArDQo+ICAgLyoNCj4gICAgKiBAY21kOiBJT0NUTF9QUklWQ01EX0hZUEVSQ0FMTA0KPiAg
ICAqIEBhcmc6ICZwcml2Y21kX2h5cGVyY2FsbF90DQo+IEBAIC0xMzksNSArMTU1LDcgQEAg
c3RydWN0IHByaXZjbWRfaXJxZmQgew0KPiAgIAlfSU9DKF9JT0NfTk9ORSwgJ1AnLCA3LCBz
aXplb2Yoc3RydWN0IHByaXZjbWRfbW1hcF9yZXNvdXJjZSkpDQo+ICAgI2RlZmluZSBJT0NU
TF9QUklWQ01EX0lSUUZECQkJCQlcDQo+ICAgCV9JT0MoX0lPQ19OT05FLCAnUCcsIDgsIHNp
emVvZihzdHJ1Y3QgcHJpdmNtZF9pcnFmZCkpDQo+ICsjZGVmaW5lIElPQ1RMX1BSSVZDTURf
SU9FVkVOVEZECQkJCQlcDQo+ICsJX0lPQyhfSU9DX05PTkUsICdQJywgOSwgc2l6ZW9mKHN0
cnVjdCBwcml2Y21kX2lvZXZlbnRmZCkpDQo+ICAgDQo+ICAgI2VuZGlmIC8qIF9fTElOVVhf
UFVCTElDX1BSSVZDTURfSF9fICovDQo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3hlbi9pbnRl
cmZhY2UvaHZtL2lvcmVxLmggYi9pbmNsdWRlL3hlbi9pbnRlcmZhY2UvaHZtL2lvcmVxLmgN
Cj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAwLi5iMDJjZmVh
ZTdlYjUNCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9pbmNsdWRlL3hlbi9pbnRlcmZhY2Uv
aHZtL2lvcmVxLmgNCj4gQEAgLTAsMCArMSw1MSBAQA0KPiArLyogU1BEWC1MaWNlbnNlLUlk
ZW50aWZpZXI6IE1JVCAqLw0KPiArLyoNCj4gKyAqIGlvcmVxLmg6IEkvTyByZXF1ZXN0IGRl
ZmluaXRpb25zIGZvciBkZXZpY2UgbW9kZWxzDQo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMDQs
IEludGVsIENvcnBvcmF0aW9uLg0KPiArICovDQo+ICsNCj4gKyNpZm5kZWYgX19YRU5fUFVC
TElDX0hWTV9JT1JFUV9IX18NCj4gKyNkZWZpbmUgX19YRU5fUFVCTElDX0hWTV9JT1JFUV9I
X18NCj4gKw0KPiArI2RlZmluZSBJT1JFUV9SRUFEICAgICAgMQ0KPiArI2RlZmluZSBJT1JF
UV9XUklURSAgICAgMA0KPiArDQo+ICsjZGVmaW5lIFNUQVRFX0lPUkVRX05PTkUgICAgICAg
IDANCj4gKyNkZWZpbmUgU1RBVEVfSU9SRVFfUkVBRFkgICAgICAgMQ0KPiArI2RlZmluZSBT
VEFURV9JT1JFUV9JTlBST0NFU1MgICAyDQo+ICsjZGVmaW5lIFNUQVRFX0lPUkVTUF9SRUFE
WSAgICAgIDMNCj4gKw0KPiArI2RlZmluZSBJT1JFUV9UWVBFX1BJTyAgICAgICAgICAwIC8q
IHBpbyAqLw0KPiArI2RlZmluZSBJT1JFUV9UWVBFX0NPUFkgICAgICAgICAxIC8qIG1taW8g
b3BzICovDQo+ICsjZGVmaW5lIElPUkVRX1RZUEVfUENJX0NPTkZJRyAgIDINCj4gKyNkZWZp
bmUgSU9SRVFfVFlQRV9USU1FT0ZGU0VUICAgNw0KPiArI2RlZmluZSBJT1JFUV9UWVBFX0lO
VkFMSURBVEUgICA4IC8qIG1hcGNhY2hlICovDQo+ICsNCj4gKy8qDQo+ICsgKiBWTUV4aXQg
ZGlzcGF0Y2hlciBzaG91bGQgY29vcGVyYXRlIHdpdGggaW5zdHJ1Y3Rpb24gZGVjb2RlciB0
bw0KPiArICogcHJlcGFyZSB0aGlzIHN0cnVjdHVyZSBhbmQgbm90aWZ5IHNlcnZpY2UgT1Mg
YW5kIERNIGJ5IHNlbmRpbmcNCj4gKyAqIHZpcnEuDQo+ICsgKg0KPiArICogRm9yIEkvTyB0
eXBlIElPUkVRX1RZUEVfUENJX0NPTkZJRywgdGhlIHBoeXNpY2FsIGFkZHJlc3MgaXMgZm9y
bWF0dGVkDQo+ICsgKiBhcyBmb2xsb3dzOg0KPiArICoNCj4gKyAqIDYzLi4uLjQ4fDQ3Li40
MHwzOS4uMzV8MzQuLjMyfDMxLi4uLi4uLi4wDQo+ICsgKiBTRUdNRU5UIHxCVVMgICB8REVW
ICAgfEZOICAgIHxPRkZTRVQNCj4gKyAqLw0KPiArc3RydWN0IGlvcmVxIHsNCj4gKwl1aW50
NjRfdCBhZGRyOyAgICAgICAgICAvKiBwaHlzaWNhbCBhZGRyZXNzICovDQo+ICsJdWludDY0
X3QgZGF0YTsgICAgICAgICAgLyogZGF0YSAob3IgcGFkZHIgb2YgZGF0YSkgKi8NCj4gKwl1
aW50MzJfdCBjb3VudDsgICAgICAgICAvKiBmb3IgcmVwIHByZWZpeGVzICovDQo+ICsJdWlu
dDMyX3Qgc2l6ZTsgICAgICAgICAgLyogc2l6ZSBpbiBieXRlcyAqLw0KPiArCXVpbnQzMl90
IHZwX2Vwb3J0OyAgICAgIC8qIGV2dGNobiBmb3Igbm90aWZpY2F0aW9ucyB0by9mcm9tIGRl
dmljZSBtb2RlbCAqLw0KPiArCXVpbnQxNl90IF9wYWQwOw0KPiArCXVpbnQ4X3Qgc3RhdGU6
NDsNCj4gKwl1aW50OF90IGRhdGFfaXNfcHRyOjE7ICAvKiBpZiAxLCBkYXRhIGFib3ZlIGlz
IHRoZSBndWVzdCBwYWRkcg0KPiArCQkJCSAqIG9mIHRoZSByZWFsIGRhdGEgdG8gdXNlLiAq
Lw0KPiArCXVpbnQ4X3QgZGlyOjE7ICAgICAgICAgIC8qIDE9cmVhZCwgMD13cml0ZSAqLw0K
PiArCXVpbnQ4X3QgZGY6MTsNCj4gKwl1aW50OF90IF9wYWQxOjE7DQo+ICsJdWludDhfdCB0
eXBlOyAgICAgICAgICAgLyogSS9PIHR5cGUgKi8NCj4gK307DQo+ICsNCj4gKyNlbmRpZiAv
KiBfX1hFTl9QVUJMSUNfSFZNX0lPUkVRX0hfXyAqLw0KDQpKdWVyZ2VuDQo=
--------------rwGcTgUuy4nLg1yiCA001CoP
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------rwGcTgUuy4nLg1yiCA001CoP--

--------------T0u0YRmSnHlZNcYP30qCMrY1--

--------------U15JgZAVRkbvXfjmLooUY2pH
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUWZKMFAwAAAAAACgkQsN6d1ii/Ey/+
YQgAljWmTFBEywB+ae8Cbk1HimN3MfAcGhbq2D31QBfu2j1p8W6G8FSl3srJVxB9pUdohByEqpqs
Ot3ahMMaL7xbq2vZjlEfTw7s2IWXSoeJ+ITdMEv8+DuWPsDFj21nF+5rU5fxlwuxyVJMJUpmwH8Q
Hv8MIVr2GflQfW+df0FofoFOQcVjCVyA6qa1hzaiKH3nSpxQ/qjEUrNh2Hrriq/+oWn5NBPz3o3i
Ndu171kzyyr2aROfyOB1uMKLIJOMEKqLaMjEKpeTMMi5+/n1s6RjGco2TcJ3MdznBOF+jqdDdDbZ
ezgDzsF9uYq62imvW9QWUWmUsnrJjWWQCgVFRtCJug==
=hVrM
-----END PGP SIGNATURE-----

--------------U15JgZAVRkbvXfjmLooUY2pH--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 05:56:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 05:56:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610178.949483 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm6UY-0002kl-FW; Fri, 29 Sep 2023 05:56:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610178.949483; Fri, 29 Sep 2023 05:56:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm6UY-0002ke-Ci; Fri, 29 Sep 2023 05:56:46 +0000
Received: by outflank-mailman (input) for mailman id 610178;
 Fri, 29 Sep 2023 05:56:45 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=l95f=FN=redhat.com=armbru@srs-se1.protection.inumbo.net>)
 id 1qm6UX-0002U9-1d
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 05:56:45 +0000
Received: from us-smtp-delivery-124.mimecast.com
 (us-smtp-delivery-124.mimecast.com [170.10.133.124])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f6a6757c-5e8c-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 07:56:43 +0200 (CEST)
Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
 [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
 (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 us-mta-144-7vGo5wEPPlKEgP2nmR_zHg-1; Fri, 29 Sep 2023 01:56:36 -0400
Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com
 [10.11.54.9])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by mimecast-mx02.redhat.com (Postfix) with ESMTPS id B4E898015AB;
 Fri, 29 Sep 2023 05:56:35 +0000 (UTC)
Received: from blackfin.pond.sub.org (unknown [10.39.192.25])
 by smtp.corp.redhat.com (Postfix) with ESMTPS id 14A15492B16;
 Fri, 29 Sep 2023 05:56:35 +0000 (UTC)
Received: by blackfin.pond.sub.org (Postfix, from userid 1000)
 id 0A0DB21E6904; Fri, 29 Sep 2023 07:56:34 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f6a6757c-5e8c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;
	s=mimecast20190719; t=1695967002;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references;
	bh=wiIE8vdpxXShE267kbclgaAGOh644MOJx97HDq593yw=;
	b=TtDEzoZpcO7uQQX1lm+JjSgNUIT/Pm/4L0TIzlTXrVdd8Gy1GT58OtGxDYxdFzDJmtHMrf
	gkxDHfSj3RlNPtk5+HczSjJgQOLkgXPc4ZV/PZ2PLVQzeH/cZUNXuhKt6T/KNvKR7R2gHw
	NXYIntm+LUU03mLf6jbh9aCeB9PIMrI=
X-MC-Unique: 7vGo5wEPPlKEgP2nmR_zHg-1
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com,  hreitz@redhat.com,  eblake@redhat.com,
  vsementsov@yandex-team.ru,  jsnow@redhat.com,  idryomov@gmail.com,
  sw@weilnetz.de,  sstabellini@kernel.org,  anthony.perard@citrix.com,
  paul@xen.org,  pbonzini@redhat.com,  marcandre.lureau@redhat.com,
  berrange@redhat.com,  thuth@redhat.com,  philmd@linaro.org,
  stefanha@redhat.com,  fam@euphon.net,  quintela@redhat.com,
  peterx@redhat.com,  leobras@redhat.com,  kraxel@redhat.com,
  qemu-block@nongnu.org,  xen-devel@lists.xenproject.org,
  alex.bennee@linaro.org,  peter.maydell@linaro.org
Subject: Re: [PATCH v3 0/7] Steps towards enabling -Wshadow=local
References: <20230921121312.1301864-1-armbru@redhat.com>
Date: Fri, 29 Sep 2023 07:56:34 +0200
In-Reply-To: <20230921121312.1301864-1-armbru@redhat.com> (Markus Armbruster's
	message of "Thu, 21 Sep 2023 14:13:05 +0200")
Message-ID: <87il7tjze5.fsf@pond.sub.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Scanned-By: MIMEDefang 3.1 on 10.11.54.9

Markus Armbruster <armbru@redhat.com> writes:

> Local variables shadowing other local variables or parameters make the
> code needlessly hard to understand.  Bugs love to hide in such code.
> Evidence: PATCH 1.
>
> Enabling -Wshadow would prevent bugs like this one.  But we'd have to
> clean up all the offenders first.  We got a lot of them.
>
> Enabling -Wshadow=local should be less work for almost as much gain.
> I took a stab at it.  There's a small, exciting part, and a large,
> boring part.
>
> The exciting part is dark preprocessor sorcery to let us nest macro
> calls without shadowing: PATCH 7.

[...]

Queued.



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 05:56:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 05:56:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610177.949473 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm6UT-0002UM-83; Fri, 29 Sep 2023 05:56:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610177.949473; Fri, 29 Sep 2023 05:56:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm6UT-0002UF-51; Fri, 29 Sep 2023 05:56:41 +0000
Received: by outflank-mailman (input) for mailman id 610177;
 Fri, 29 Sep 2023 05:56:40 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=sDS6=FN=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qm6US-0002U9-9g
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 05:56:40 +0000
Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id f42ca776-5e8c-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 07:56:38 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id 69B0A21858;
 Fri, 29 Sep 2023 05:56:37 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 4E95E13434;
 Fri, 29 Sep 2023 05:56:37 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id pxmyERVnFmUtJAAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 29 Sep 2023 05:56:37 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f42ca776-5e8c-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695966997; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=AO6Gq2sf/cSlqGB5of6a+fXKopuaHbEFhqlPjuDCmAY=;
	b=o+oWvQ3fuCTT+hwY6bc0sGGdPkm6pRnSFZe62qBf7Zazch6mwXBj6ICjtln5yRgqtXGwTm
	IKve4z4g6o4aDf4ftMIT6BGjB4i8acrg+D+OnzJapLq1I/BZcdcS8XvatY/GYGcp6ef542
	ZHSTiiYlzxjtjp7d5zhYmuTmGBbmENU=
Message-ID: <43936092-75f5-42ff-b0c2-2f79147e2f86@suse.com>
Date: Fri, 29 Sep 2023 07:56:36 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] tools/xenstore: Avoid leaking memory in check_store
Content-Language: en-US
To: David Kahurani <k.kahurani@gmail.com>, xen-devel@lists.xenproject.org
References: <20230929045724.6844-1-k.kahurani@gmail.com>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <20230929045724.6844-1-k.kahurani@gmail.com>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------1fm8fSXYxlOaj08YnZzjxKdP"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------1fm8fSXYxlOaj08YnZzjxKdP
Content-Type: multipart/mixed; boundary="------------6xPkkDAkQyeM4MAVqlERY5Rt";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: David Kahurani <k.kahurani@gmail.com>, xen-devel@lists.xenproject.org
Message-ID: <43936092-75f5-42ff-b0c2-2f79147e2f86@suse.com>
Subject: Re: [PATCH] tools/xenstore: Avoid leaking memory in check_store
References: <20230929045724.6844-1-k.kahurani@gmail.com>
In-Reply-To: <20230929045724.6844-1-k.kahurani@gmail.com>

--------------6xPkkDAkQyeM4MAVqlERY5Rt
Content-Type: multipart/mixed; boundary="------------j3v09Ya6WkGrdrz6Z7FI0yGu"

--------------j3v09Ya6WkGrdrz6Z7FI0yGu
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjkuMDkuMjMgMDY6NTcsIERhdmlkIEthaHVyYW5pIHdyb3RlOg0KDQpJJ2QgbGlrZSB0
aGUgZm9sbG93aW5nIHBhcmFncmFwaCBhZGRlZCB0byB0aGUgY29tbWl0IG1lc3NhZ2U6DQoN
CiAgIGNoZWNrX3N0b3JlKCkgd2lsbCBsZWFrIHRoZSBtZW1vcnkgZnJvbSByZWFkaW5nIHRo
ZSAiQGludHJvZHVjZURvbWFpbiINCiAgIGFuZCAiQHJlbGVhc2VEb21haW4iIG5vZGVzLg0K
DQo+IFdoaWxlIHRoaXMgY29kZSBzaG91bGQgbm90IGJlIHRyaWdnZXItYWJsZSBmcm9tIGFu
IHVucHJpdmlsZWdlZCBkb21haW4NCj4gaXQgaXMgY2FsbGVkIG11bHRpcGxlIHRpbWVzIHdo
ZW4gdGhlIGRhdGFiYXNlIGdldHMgaW5jb25zaXN0ZW50LiBUaGlzDQo+IG1lYW5zIHRoYXQg
YSBtYWxpY2lvdXMgZ3Vlc3QgYWJsZSB0byBjb3JydXB0IHRoZSBkYXRhYmFzZSB3aWxsIHRy
aWdnZXINCj4gdGhlIGxlYWtzIGhlcmUuDQo+IA0KPiBGaXggdGhlIGxlYWtzIHNvIHRoYXQg
dGhpcyBjb2RlIGNhbiBiZSBzYWZlbHkgY2FsbGVkIGZyb20gYW55d2hlcmUNCj4gDQoNCkZp
eGVzOiA2NzYxNzA2N2YwYjYgKCJ0b29scy94ZW5zdG9yZTogbGV0IGNoZWNrX3N0b3JlKCkg
Y2hlY2sgdGhlIGFjY291bnRpbmcgZGF0YSIpDQoNCj4gU2lnbmVkLW9mZi1ieTogRGF2aWQg
S2FodXJhbmkgPGsua2FodXJhbmlAZ21haWwuY29tPg0KDQpXaXRoIGFib3ZlIGFkZGl0aW9u
cyAoY2FuIHByb2JhYmx5IGJlIGRvbmUgd2hpbGUgY29tbWl0dGluZyk6DQoNClJldmlld2Vk
LWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+DQoNCg0KSnVlcmdlbg0KDQo=

--------------j3v09Ya6WkGrdrz6Z7FI0yGu
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------j3v09Ya6WkGrdrz6Z7FI0yGu--

--------------6xPkkDAkQyeM4MAVqlERY5Rt--

--------------1fm8fSXYxlOaj08YnZzjxKdP
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUWZxQFAwAAAAAACgkQsN6d1ii/Ey9G
awf7BoErdMHSRO+Vj058p/7aoZsfXhE9ZRGyUIOXCgqTrE5tMRH0TMyLbWVS4tm1j05z38MdiFYm
2LDABMnNZTPmVErD1JlZ9eHg+pfFFeScGIZO6lsrl/fI+izONxpddF00uh3Pzz9sDnq1TzTLizmF
sYrmOxsUdD4FpZZVNusDlYgRHtlYd5HlrV+ndzojfUBTtnSflamGldWCGxtzNtc8IAxLGStFFxO7
Uflf5UaW8oK/BGglK202KHcJ13RnndrehTKF8a733J9IAuslDTOnYWLp0Lw9uqqCqlHkaQcJyQeq
wDeXoKexF0czHLj9LBBcuQTLUf32CaVg88Ixbh+dEg==
=VjvR
-----END PGP SIGNATURE-----

--------------1fm8fSXYxlOaj08YnZzjxKdP--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 07:16:30 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 07:16:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610187.949493 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm7jU-00046T-TW; Fri, 29 Sep 2023 07:16:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610187.949493; Fri, 29 Sep 2023 07:16:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm7jU-00046M-QT; Fri, 29 Sep 2023 07:16:16 +0000
Received: by outflank-mailman (input) for mailman id 610187;
 Fri, 29 Sep 2023 07:16:15 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JGVc=FN=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qm7jT-00046G-7y
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 07:16:15 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01on0603.outbound.protection.outlook.com
 [2a01:111:f400:fe1f::603])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0c12f506-5e98-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 09:16:03 +0200 (CEST)
Received: from AS9P194CA0014.EURP194.PROD.OUTLOOK.COM (2603:10a6:20b:46d::25)
 by GV2PR08MB8341.eurprd08.prod.outlook.com (2603:10a6:150:bb::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.25; Fri, 29 Sep
 2023 07:15:58 +0000
Received: from AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:46d:cafe::a4) by AS9P194CA0014.outlook.office365.com
 (2603:10a6:20b:46d::25) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Fri, 29 Sep 2023 07:15:57 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT059.mail.protection.outlook.com (100.127.140.215) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.24 via Frontend Transport; Fri, 29 Sep 2023 07:15:57 +0000
Received: ("Tessian outbound ee9c7f88acf7:v211");
 Fri, 29 Sep 2023 07:15:57 +0000
Received: from 6d2641f2d434.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 9B604A36-6310-48C6-8CBE-917DC0707012.1; 
 Fri, 29 Sep 2023 07:15:50 +0000
Received: from EUR05-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 6d2641f2d434.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 07:15:50 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by AM8PR08MB5825.eurprd08.prod.outlook.com (2603:10a6:20b:1d6::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 07:15:48 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404%4]) with mapi id 15.20.6838.024; Fri, 29 Sep 2023
 07:15:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0c12f506-5e98-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=J1EtuaFbmtSfEpDKmW8UsU7lftlaVd1qVeGFCMqybMQ=;
 b=jS7Vahev73t+W7oMqQbHcyChPek5Vk0lS5sEmVZHxzH7UPUt/CQjuTBR0BLJhw7tnGNrgiongiH1HLyU8EUrVWndrP/ea9iJGaM1chTV8vovZ1fwgPQQ22E+VUuPvLtLtRPf0bpiKWNKVQW/u44dEe/gFoeRMs3ghWFWnNTFdkg=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 8e809c2742c82889
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=aI95eU6cfSCZw5xBCCAFja9YkVY3wbOkf4kj2pDzGLDeAZu3d/+AjJK5830oIh1mnzc39gF42ZU3viJVgjelxc6ONuQJJvTkxyFt3pf05mtIvu2HhtqLHKiHjkWcdYbnNbLkVNycSEmHhZT3v9F1SLskbTNt11QiUu4IlnRRk8IPjD+hVf9SyVPiQdCVoetNYUnNL5UW4wnUy22NVRfv4Xjh1KNmWM9lfkucdte2V9YJikIsHodML5LpUmIQnboOVMmF4yaWZS1GYb+2Ay75pHPq8pJENfT/bGGeIdpQmwtm1U3BVxbEy6TKLawDoHMgjlPgSJsgR0dUNmyydW3xxQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=J1EtuaFbmtSfEpDKmW8UsU7lftlaVd1qVeGFCMqybMQ=;
 b=aZJm7RIX6Mjd0pPf+oj6b534dIBrA8tlkbgUr54Fc1QoHlIy1YTvXRqxzX5rOOLtlxmay3l3VqVKpShB690Sl7DsSjQzSiIPI4gbgyTjAyPeXc8EAODX0J00nPSKxT6MNg7DEcg1llK3/pV3nGdNPC0WvSIbHel68i0Q/v00qI0YAKYV4L65Mu5JSVlvHE1i2PHoSgA2vci4LHrfWQjougatG2R45Me/or7OB+W53qWjbHUt1wLTQm/eBwhvHGQyJQAEZy5TkuuSwiOzD0Bc/HcPtBoyZKeWIrCVLoxhmuMJK0cfYxiVGZpaayEkTmB6SERPIaIvfHlaTKksy6LEgQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=J1EtuaFbmtSfEpDKmW8UsU7lftlaVd1qVeGFCMqybMQ=;
 b=jS7Vahev73t+W7oMqQbHcyChPek5Vk0lS5sEmVZHxzH7UPUt/CQjuTBR0BLJhw7tnGNrgiongiH1HLyU8EUrVWndrP/ea9iJGaM1chTV8vovZ1fwgPQQ22E+VUuPvLtLtRPf0bpiKWNKVQW/u44dEe/gFoeRMs3ghWFWnNTFdkg=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen <Wei.Chen@arm.com>,
	Julien Grall <julien@xen.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v2 3/5] arm/dom0less: put dom0less feature code in a
 separate module
Thread-Topic: [PATCH v2 3/5] arm/dom0less: put dom0less feature code in a
 separate module
Thread-Index: AQHZ8UtNgBNI2koBH0+cEATmTDiuOrAw9peAgABwTYA=
Date: Fri, 29 Sep 2023 07:15:48 +0000
Message-ID: <725342EA-730F-4961-88A4-43EC0CBAD5BA@arm.com>
References: <20230927140133.631192-1-luca.fancellu@arm.com>
 <20230927140133.631192-4-luca.fancellu@arm.com>
 <alpine.DEB.2.22.394.2309281726440.1996340@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309281726440.1996340@ubuntu-linux-20-04-desktop>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3774.100.2.1.4)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|AM8PR08MB5825:EE_|AM7EUR03FT059:EE_|GV2PR08MB8341:EE_
X-MS-Office365-Filtering-Correlation-Id: 69ea78cf-ec9d-4dea-2cea-08dbc0bbed43
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 +IwHPMwqeoZM64JPJcC39YwdpMfmpnfgyYKztVyzW5i84paY5szwB61pr4OA/KsifDLBY5TMTXrQx+iq9x3YP/VHdpqqZ56MzAdiuYo17R+PZRzUIHTnVQRryHVz3I4gvUQvIi79XEdTN9zL2gWC/P7mos/2I8DG9tPxLFtK4vlZxMZVrHa1od3ubscDYL9OoGIwh5T5A53O4ANEJYAuPccKQnz+4NsRp6tsX2nNGZ+OZSnTi6x7YOYTbwSjxFmp0pmZZV4d4yCSx+8PZ63ZUKL3vrhlcANttVsSTksOoqHBXej8XFWAesnBwE98mwdUmB4cM1+t761zFHBo5Ac/t5ueeIl0M+3wwdm0QFad6wzxYIxBM/X9YTNgpjDM2WfzewHhPFr+kDDDCU48h1DMNo7ZWuexVAyHEXuxEGcMJ8CbcflSejBUjR/BH3Chr8Hc3eZ/osHQVw5ll9RrNhTqRs/q3kKYdd8wekDQHJ6veEccNZ+LMk2QpKXHTsTn+0n5A8YCzLSBfUQVW/gqxvJlaYH5ue4iKcDFPr6L0vZidQe09GH+ko1lN4bj64PSRuFO24uKeY7adLjdJPGPYZbcC814CgT3Gb2WvvHyckTkvU78GN6tmy7AhX8zBA13wdCvI45/Qcs8gYFP/JOZGwaOMEO/mrUE/pIzZf4jmdl9SAc=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(39860400002)(366004)(136003)(346002)(396003)(230922051799003)(64100799003)(451199024)(186009)(1800799009)(33656002)(2616005)(26005)(2906002)(53546011)(6512007)(6506007)(86362001)(38070700005)(38100700002)(122000001)(316002)(6916009)(91956017)(36756003)(41300700001)(71200400001)(6486002)(5660300002)(54906003)(66476007)(66556008)(66946007)(66446008)(64756008)(76116006)(8936002)(8676002)(4326008)(478600001)(83380400001)(32563001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <B9161234D699C448AAB2E4B0BBF595D7@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5825
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	cfe3af80-1f02-4cc8-bf52-08dbc0bbe7de
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	qKq+8ATXNdIRU+EBPE7a1WbwMdkVB2vgZtpiFylyrWWVR4wDfdUi5pAI1bOvGx2QXMF3IOaJP+sPcWugtyl69L8EqbzzijKzT8MFbeybdf2IMNl11GobA63XwAFG6o+KcL01WYzVhDvLYqW71LXilOvQLYdCQ/ouN7YgDur1o7Cg+lvf4mrmTFWZVnbYSeOWlRpp9Hr7md8bqwNucC/fVpqyO5SCVgDXNvgBixZQyqqqtpyB4biF/E3T/Ji5kimYerIcXMnhnWUh3WMVSHtnbEZPC3uGuD1mfFgOVjbiD3PywzGJ7nxfFMHCv5xkhqSHmfJ509NUKDtdlhJvcnXNUi0O9Y8BtcaQIySts3MZ+04DmYlt+UydUUWx/Wuk36qXXxwGXrRnSss6DlVAwoTlTxDJcBBlwfovKybZ4JvMKPgRfc65d+N+e2te81VPBVtzBR87AYIbrB4pgwa0PSqvI0nJvb1kCJ46OTjAnRFa2iv0RnB+aMKm0IlWkJeBWdxCrODl/u+CHfkTCkOsfrZeWeIJeNCLtZJmFIuZKZGxZuAx1OCrvUjYT1U9S1cmG0fhyLGRvzelL7KtfhcR6gbvaK/YOJ01/mj9CIUFRV+XG1li/UNjYSLZm4vCHe0zfiBSvia1A29QdVel/ZD1cL1Zz7FaGD6V2mXQq5R7OmukPHMHmV+Z9C97qodKatDlhJ+uZRJjfDyYxSWyP1P/pBehVGzqsZbSj96FkUwPAdi/G45sTINXe/6pelmonpr8Ux5tYFXX64IeW9pIt083sUFnEA==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(346002)(39860400002)(396003)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(82310400011)(36840700001)(40470700004)(46966006)(40460700003)(336012)(40480700001)(6486002)(53546011)(6506007)(6512007)(478600001)(36860700001)(47076005)(81166007)(86362001)(356005)(82740400003)(2906002)(107886003)(41300700001)(83380400001)(2616005)(26005)(36756003)(5660300002)(54906003)(8676002)(70586007)(33656002)(8936002)(70206006)(316002)(6862004)(4326008)(32563001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 07:15:57.4452
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 69ea78cf-ec9d-4dea-2cea-08dbc0bbed43
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT059.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8341

SGkgU3RlZmFubywNCg0KPiBPbiAyOSBTZXAgMjAyMywgYXQgMDE6MzMsIFN0ZWZhbm8gU3RhYmVs
bGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4gd3JvdGU6DQo+IA0KPiBPbiBXZWQsIDI3IFNl
cCAyMDIzLCBMdWNhIEZhbmNlbGx1IHdyb3RlOg0KPj4gQ3VycmVudGx5IHRoZSBkb20wbGVzcyBm
ZWF0dXJlIGNvZGUgaXMgbW9zdGx5IGluc2lkZSBkb21haW5fYnVpbGQuYw0KPj4gYW5kIHNldHVw
LmMsIGl0IGlzIGEgZmVhdHVyZSB0aGF0IG1heSBub3QgYmUgdXNlZnVsIHRvIGV2ZXJ5b25lIHNv
DQo+PiBwdXQgdGhlIGNvZGUgaW4gYSBkaWZmZXJlbnQgY29tcGlsYXRpb24gbW9kdWxlIGluIG9y
ZGVyIHRvIG1ha2UgaXQNCj4+IGVhc2llciB0byBkaXNhYmxlIHRoZSBmZWF0dXJlIGluIHRoZSBm
dXR1cmUuDQo+PiANCj4+IE1vdmUgZ2ljX2ludGVycnVwdF90IGluIGRvbWFpbl9idWlsZC5oIHRv
IHVzZSBpdCB3aXRoIHRoZSBmdW5jdGlvbg0KPj4gZGVjbGFyYXRpb24sIG1vdmUgaXRzIGNvbW1l
bnQgYWJvdmUgdGhlIGRlY2xhcmF0aW9uLg0KPj4gDQo+PiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9u
cyBhcmUgbm93IHZpc2libGUgZXh0ZXJuYWxseSBmcm9tIGRvbWFpbl9idWlsZA0KPj4gYmVjYXVz
ZSB0aGV5IGFyZSB1c2VkIGFsc28gZnJvbSB0aGUgZG9tMGxlc3MtYnVpbGQgbW9kdWxlOg0KPj4g
LSBnZXRfYWxsb2NhdGlvbl9zaXplDQo+PiAtIHNldF9pbnRlcnJ1cHQNCj4+IC0gZG9tYWluX2Zk
dF9iZWdpbl9ub2RlDQo+PiAtIG1ha2VfbWVtb3J5X25vZGUNCj4+IC0gbWFrZV9yZXN2X21lbW9y
eV9ub2RlDQo+PiAtIG1ha2VfaHlwZXJ2aXNvcl9ub2RlDQo+PiAtIG1ha2VfcHNjaV9ub2RlDQo+
PiAtIG1ha2VfY3B1c19ub2RlDQo+PiAtIG1ha2VfdGltZXJfbm9kZQ0KPj4gLSBoYW5kbGVfZGV2
aWNlX2ludGVycnVwdHMNCj4+IC0gY29uc3RydWN0X2RvbWFpbg0KPj4gLSBwcm9jZXNzX3NobQ0K
Pj4gDQo+PiBUaGUgZnVuY3Rpb25zIGFsbG9jYXRlX3N0YXRpY19tZW1vcnkgYW5kIGFzc2lnbl9z
dGF0aWNfbWVtb3J5XzExDQo+PiBhcmUgbm93IGV4dGVybmFsbHkgdmlzaWJsZSwgc28gcHV0IHRo
ZWlyIGRlY2xhcmF0aW9ucyBpbnRvDQo+PiBkb21haW5fYnVpbGQuaCBhbmQgbW92ZSB0aGUgI2Vs
c2UgYW5kIHN0dWIgZGVmaW5pdGlvbiBpbiB0aGUgaGVhZGVyDQo+PiBhcyB3ZWxsLg0KPj4gDQo+
PiBNb3ZlIGlzX2RvbTBsZXNzX21vZGUgZnJvbSBzZXR1cC5jIHRvIGRvbTBsZXNzLWJ1aWxkLmMg
YW5kIG1ha2UgaXQNCj4+IGV4dGVybmFsbHkgdmlzaWJsZS4NCj4+IA0KPj4gV2hlcmUgc3BvdHRl
ZCwgZml4IGNvZGUgc3R5bGUgaXNzdWVzLg0KPj4gDQo+PiBObyBmdW5jdGlvbmFsIGNoYW5nZSBp
cyBpbnRlbmRlZC4NCj4+IA0KPj4gU2lnbmVkLW9mZi1ieTogTHVjYSBGYW5jZWxsdSA8bHVjYS5m
YW5jZWxsdUBhcm0uY29tPg0KPiANCj4gVGhpcyBpcyBncmVhdCEgQSBjb3VwbGUgb2YgcXVlc3Rp
b25zLg0KPiANCj4gV2h5IHdhcyBhbGxvY2F0ZV9zdGF0aWNfbWVtb3J5IG5vdCBtb3ZlZCB0byBk
b20wbGVzcy1idWlsZC5jID8NCg0KTXkgYWltIGlzIHRvIGRlY291cGxlIHRoZSBmZWF0dXJlcywg
c28gaW4gcGF0Y2ggNCB3ZSBtb3ZlIChqdXN0IG9uY2UgYXMgSnVsaWVuIHN1Z2dlc3RlZCkNCnRo
ZSBzdGF0aWMgbWVtb3J5IGNvZGUgb24gYSBtb2R1bGUgb24gaXRzIG93biwgYmVjYXVzZSB3ZSBj
YW4gaGF2ZSBhIGd1ZXN0IGJvb3RlZCB3aXRoDQpkb20wbGVzcyBmZWF0dXJlIGJ1dCBoYXZpbmcg
aXQgd2l0aCBzdGF0aWMgbWVtb3J5IGlzIG9wdGlvbmFsLg0KDQo+IA0KPiBXb3VsZCBpdCBtYWtl
IHNlbnNlIHRvIGFsc28gbW92ZSBjb25zdHJ1Y3RfZG9tMCB0byBkb20wbGVzcy1idWlsZC5jDQo+
IGdpdmVuIHRoZSBzaW1pbGFyaXRpZXMgd2l0aCBjb25zdHJ1Y3RfZG9tVT8gSSBhbSBub3Qgc3Vy
ZSBhYm91dCB0aGlzLg0KPiANCg0KV2UgY2Fu4oCZdCBkbyB0aGF0IGJlY2F1c2UgdGhlIGZpbmFs
IGdvYWwgb2YgdGhpcyBzZXJpZSBpcyB0byBoYXZlIGEgS2NvbmZpZyBkaXNhYmxpbmcgZG9tMGxl
c3MsDQpzbyBpbiB0aGF0IGNhc2Ugd2Ugd2lsbCBlbmQgdXAgcmVtb3ZpbmcgZnJvbSB0aGUgY29t
cGlsYXRpb24gYWxzbyBjb25zdHJ1Y3RfZG9tMC4NCg0KQ2hlZXJzLA0KTHVjYQ0KDQoNCg==


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 07:20:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 07:20:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610192.949503 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm7nR-0005XP-EA; Fri, 29 Sep 2023 07:20:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610192.949503; Fri, 29 Sep 2023 07:20:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm7nR-0005XI-AN; Fri, 29 Sep 2023 07:20:21 +0000
Received: by outflank-mailman (input) for mailman id 610192;
 Fri, 29 Sep 2023 07:20:20 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JGVc=FN=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qm7nQ-0005XC-5p
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 07:20:20 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2062c.outbound.protection.outlook.com
 [2a01:111:f400:fe16::62c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a4b723ee-5e98-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 09:20:19 +0200 (CEST)
Received: from AS9PR01CA0007.eurprd01.prod.exchangelabs.com
 (2603:10a6:20b:540::12) by DU2PR08MB10160.eurprd08.prod.outlook.com
 (2603:10a6:10:496::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Fri, 29 Sep
 2023 07:20:14 +0000
Received: from AM7EUR03FT039.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:540:cafe::d1) by AS9PR01CA0007.outlook.office365.com
 (2603:10a6:20b:540::12) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Fri, 29 Sep 2023 07:20:13 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT039.mail.protection.outlook.com (100.127.140.224) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.22 via Frontend Transport; Fri, 29 Sep 2023 07:20:13 +0000
Received: ("Tessian outbound ee9c7f88acf7:v211");
 Fri, 29 Sep 2023 07:20:13 +0000
Received: from 40780ee2711f.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B20B8E37-F506-4D7E-8004-FCF10E7D1362.1; 
 Fri, 29 Sep 2023 07:19:37 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 40780ee2711f.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 07:19:37 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by AS8PR08MB8468.eurprd08.prod.outlook.com (2603:10a6:20b:566::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 07:19:33 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404%4]) with mapi id 15.20.6838.024; Fri, 29 Sep 2023
 07:19:33 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a4b723ee-5e98-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IXTzOvv36gkakp5jcYNiOYC1FPCh+BbyaRJzdx4aPWE=;
 b=SMUOjxHEJ/L9vKAE8h45pwQURbTmseYCaTXVB/iffM23HNw5LRoq16saJyJCMFJ5pZoRPt+hvHp6KcjdQYyDYnIF5xqAfdpT4ntEqRleVHwLn7pG7g99EzZttNQbsAauYIo7s6fNaIP3qr37RJFHWk7pBS6o5YUiCyQ0xkCGw1c=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 741cba55415988fc
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Z6HWF2ULgumtXCUxiMlNJFBTVzqhrG23j3iNXiBimOxMXdXFOdJEh/rgDPf7YpXPyGGvEScwnZ+AT1gNOPNHe6jEcW40vV4wX2JTblD5f5zI1/oaBep5JVkaJPIgSt8Y014eYc4GM+Dh3mgYzi4Y7BYBzBdhFHzZ4Nf1pboFzoYpkgQ5SFWXQK3x3JMIkqAfDGPlbyZZBDlCvGfwHvDMd2CeprO7CxOyREmqotD50FhG1VKOVrS45PHTc4M1v+qzqPim/Bjxe7RrKqQVpVe2Wj1IxBu7kTeLEWriecHkGboOzAzl9vBRx65d/0/qIDT5LZZ8HxWELpzewEHIP8B6DQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IXTzOvv36gkakp5jcYNiOYC1FPCh+BbyaRJzdx4aPWE=;
 b=QnWHQkMPewro2ZRlhyiilEdidhkORIrhEQtndav/Bh6pERBSsxApIzaDMiwpi4yq2wrURGw3hqdoFNTlY/hY8nYqQp+Tww9UG/d/FRXp67pKmTtSgKv3cQd+dby6/rG2hJVNZi7eiRVCQIgS7zk5/u0j99n858yXm0PYVBc2xYpDzP/MniMAyVk1ZUA7uYnMVWAYWMj1Bbfh9CTyJXr3MUh6guLJ4U73k0MR4aKs3uNeTLPKXc8kfJhYCIMluwhBtnVF6Vrp4or+9AWRv02KG3vnk6Rc413qpJLGQB5qcfypXU1qKW9t2x+n8LrdcX/mDz6YO6F8IX7y7jkB6OUinQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IXTzOvv36gkakp5jcYNiOYC1FPCh+BbyaRJzdx4aPWE=;
 b=SMUOjxHEJ/L9vKAE8h45pwQURbTmseYCaTXVB/iffM23HNw5LRoq16saJyJCMFJ5pZoRPt+hvHp6KcjdQYyDYnIF5xqAfdpT4ntEqRleVHwLn7pG7g99EzZttNQbsAauYIo7s6fNaIP3qr37RJFHWk7pBS6o5YUiCyQ0xkCGw1c=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Ayan Kumar Halder <ayankuma@amd.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, "andrew.cooper3@citrix.com"
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Jan
 Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>
Subject: Re: Misra rule 10.3 violations report script
Thread-Topic: Misra rule 10.3 violations report script
Thread-Index: AQHZ8eai6IW78bNFI0CROv/LSYbjorAwjQwAgADZrQA=
Date: Fri, 29 Sep 2023 07:19:33 +0000
Message-ID: <A6C26881-C239-4F19-AD5C-EF8448743497@arm.com>
References: <D36FE722-43D5-4A93-B725-AD4157A1BA61@arm.com>
 <fff7c46c-78ea-4656-fcca-85667e176104@amd.com>
In-Reply-To: <fff7c46c-78ea-4656-fcca-85667e176104@amd.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3774.100.2.1.4)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|AS8PR08MB8468:EE_|AM7EUR03FT039:EE_|DU2PR08MB10160:EE_
X-MS-Office365-Filtering-Correlation-Id: c2d0f2f4-b6ec-4bf4-2702-08dbc0bc85c4
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 wRFmRIePpmtbmD8vopGjiwHucS/WZiBG39UCb6bZecZv0cvh07geh1IXXqBesQVti17AvzAU+vDdVLaLQm+7VvHt3aimWxV5Zzgr0pDMLJ8fC45Zg0AQgRLs51Fkt0voEHTpOlBrlv2nlsSjrfGkiwHcDtHCdny/0sRyRRXaY7Rv4yrTaQ9UuOtQHMTIKsBrhf6gbWeJYAT2glTJR4huHMX4HYugaKQTTmYaPikTG/9f4jxODjppXoDiXrJbvspub+R8QeHDGysRhBN4SiUOS5W0XHeUFmlfXKoI02e+Fs6zj9N/8ZYNYLIyjiwNW6bXvfS240gTEe3FI1jdynwKmkeRBaJuIG9Wy0wQRU5IH1qlTBzggIUacn47sEwca58aXqJhZZDRRUwALPlI1v64N11ILv089U1L6ggmDJogrIwIOOI5xkvk+ni4+tmsbjJN3qou/81IvXpZNPeRUDBTuKOivP49pFDxkrNmadCuMYVWKuTue1QYMdb8StIwTYM88IeKe58XegXwkEVcVu/rLcjMwgdiMwzIEtpANo4lUrLtV4kfUgk98rj75ylMeCReBfKdP6zgj/EVt1B3MvCBvFCOBZNaUiKcR33PbAYidbh/pd47oWy5a4QiIlrsKEIywgIcA5NtCLKzWcxKdy4A/Q==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(376002)(136003)(366004)(346002)(230922051799003)(186009)(64100799003)(1800799009)(451199024)(2906002)(5660300002)(8936002)(4326008)(8676002)(26005)(36756003)(2616005)(41300700001)(64756008)(66556008)(66946007)(66476007)(66446008)(76116006)(316002)(54906003)(6916009)(91956017)(6506007)(71200400001)(83380400001)(6486002)(478600001)(966005)(33656002)(38100700002)(38070700005)(6512007)(86362001)(122000001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <EB8011E8E0BF6B46A989DF8F648E94B3@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8468
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT039.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	f1af3769-cfd5-4236-02be-08dbc0bc6dc4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	oJR4OPWQrsjA8uEfbHVhwj9jhq/j/3ylVvyzloeafQ1LKrk5U3vkag45fQE7v5dljBDB4uyLToZ+zz3DCpqx+9O4FpyGXFI4zHRME5cWYgXVSvpdG6sCqzHajRPFUcz6sPYtrIwxq1VMMNKq9kW1udNYNjsYcBQXaCJV7n2NziIusd5euPLGHw2EzHdjEJSQNS/UIWLw7TG+na6QkrrIqG4IyrPp0SWmZn34YXm7kjN28zXDRQu1Bj4L/gQepye9OTw3VCCPuCSzUDfmnK3247GPH3Ck+9B9dNKEs46AFYCR/9hsAal8UTV7HKUiG4+hEOZHW6cWBfYlWPMY+HKFAXPvdnQqRIOaagb0zCP1DiCohFhW4wivOlersiX58oDHX1zPTdgqfkm0nBNofC+DNgbeZJn2Au3PBopHpTiyk1ot4GU66gt/g0Us+4tdZatWGbl1QJqcG4KYnfjjc9CoEsJIql66ZKYV9+k2kmVHs/NC7XXh2Ay8EX/3sm92MFgTqj8MP2q2N15vrOCEhjfpJaYfIdIa37V57W+SCGZVIwEQ6XLGv8vknf/7ULAlOfLmPXbevlHtsmesYm03QndKGpOGax3bC8e2DrNltVfTMER/pWJaI6iEQNYt6u1E2xYLQWN3Gjs1g7k3pp+0Cj93kdadjfO20u8kKHN1FJSHCbFlBmTj6NK8Hk/Wz8TBQfwOqQ9XnFrV0q543mkx+rhRSs5YAcX0BlInORjhhFAJI9c=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39850400004)(376002)(346002)(396003)(136003)(230922051799003)(186009)(451199024)(1800799009)(82310400011)(64100799003)(40470700004)(36840700001)(46966006)(40460700003)(966005)(6486002)(41300700001)(40480700001)(6506007)(6512007)(478600001)(70586007)(70206006)(316002)(54906003)(356005)(81166007)(8676002)(2616005)(336012)(82740400003)(26005)(86362001)(8936002)(83380400001)(47076005)(4326008)(33656002)(36860700001)(2906002)(36756003)(5660300002)(6862004);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 07:20:13.3041
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c2d0f2f4-b6ec-4bf4-2702-08dbc0bc85c4
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT039.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR08MB10160

DQo+IEhpIEx1Y2EsDQoNCkhpIEF5YW4sDQoNCj4+IA0KPj4gSW4gdGhlIGxhc3QgTUlTUkEgbWVl
dGluZyBTdGVmYW5vIHRvbGQgbWUgYWJvdXQgdGhlIFJ1bGUgMTAuMyBhbmQgdGhhdCB3ZSBoYXZl
IGEgbG90IG9mIHZpb2xhdGlvbnMsDQo+PiBidXQgR0NDIGhhcyBhIHdheSB0byBsaXN0IHRoZW0g
YXMgd3JpdHRlbiBpbiBydWxlcy5yc3QuDQo+PiANCj4+IFNvIHRoZSBpc3N1ZSB3YXMganVzdCB0
aGF0IHdlIGhhdmUgYSBsb3Qgb2YgdmlvbGF0aW9ucywgbW9zdCBvZiB0aGVtIGNvbWluZyBmcm9t
IGhlYWRlcnMgYW5kIHRoZQ0KPj4gRGV2ZWxvcGVyIG1pZ2h0IGZlZWwgYSBiaXQgbG9zdCBzaW5j
ZSB0aGUgbnVtYmVyIGlzIHZlcnkgaGlnaCwgc28gSeKAmXZlIGRldmVsb3BlZCB0aGlzIHNjcmlw
dCB0byB0YWtlDQo+PiB0aGUgR0NDIGJ1aWxkIGxvZyBhbmQgY3JlYXRlIGEgbGlzdCBvZiB1bmlx
dWUgb2NjdXJyZW5jZXMgb2YgdGhlIHZpb2xhdGlvbnMgc29ydGVkIGluIGRlc2NlbmRpbmcNCj4+
IG9yZGVyLCBzbyB0aGF0IHdobyBoYXMgYSBiaXQgb2YgdGltZSBjYW4gdHJ5IHRvIGZpeCBzb21l
IG9mIHRob3NlIGFuZCBtYXliZSBjYW4gc3RhcnQgZnJvbSB0aGUgdG9wDQo+PiBvZiB0aGUgbGlz
dCB0byBmaXggYXMgbWFueSBhcyBwb3NzaWJsZSBvY2N1cnJlbmNlcy4NCj4+IA0KPj4gSSBhdHRh
Y2ggdGhlIHNjcmlwdCBhcyBwYXRjaCBmaWxlLg0KPiANCj4gVGhpcyBpcyBhbiBleGNlbGxlbnQg
c2NyaXB0IHRvIHNlZSB0aGUgdmlvbGF0aW9ucyBpbiBhIG5lYXQgd2F5LiBGb3IgZWcsIEkgc2Vl
IHRoaXMNCj4gDQo+IGFyY2gvYXJtL2RvbWFpbl9idWlsZC5jOjM4ODM6MjggKDEpDQo+IGFyY2gv
YXJtL2RvbWFpbl9idWlsZC5jOjM5MTA6MzYgKDEpDQo+IC4vaW5jbHVkZS94ZW4vcGZuLmg6Njoy
MyAoMSkNCj4gLi9pbmNsdWRlL3hlbi9tYWNyb3MuaDo0OjQwICgxKQ0KPiBhcmNoL2FybS9zZXR1
cC5jOjIyMToxMCAoMSkNCj4gYXJjaC9hcm0vc2V0dXAuYzoyMjc6NTkgKDEpDQo+IA0KPiBJIHRo
aW5rIG9uY2UgaW4gYSB3aGlsZSwgd2UgaGF2ZSBiZWVuIGFwcHJvYWNoZWQgYnkgbmV3YmllcyB3
YW50aW5nIHRvIGNvbnRyaWJ1dGUgdG8gWGVuIHByb2plY3QuDQo+IA0KPiBGb3IgZWcgIkJlZ2lu
bmVyIGxvb2tpbmcgdG8gY29udHJpYnV0ZSB0byBwcm9qZWN0IGluIGFyY2hpdmVkIGxpc3QiDQo+
IA0KPiBTb21ldGltZXMgcGVvcGxlIHJlYWNoIG91dCBpbmRpdmlkdWFsbHkgYXMgd2VsbC4NCj4g
DQo+IERvIHlvdSBoYXZlIHN1Y2ggc2ltaWxhciB0YXNrcyAobGlrZSB0aGlzKSB3aXRoaW4gb3Ig
YmV5b25kIHRoZSBzY29wZSBvZiBNSVNSQSB3aGljaCB3aWxsIHJlcXVpcmUgc29tZSBiYXNpYyBw
cm9ncmFtbWluZyBza2lsbHMgYW5kIGlzIGEgZ3JlYXQgZmlyc3Qgc3RlcCB0byBsZWFybiBhbmQg
Y29udHJpYnV0ZSB0byBYZW4gcHJvamVjdCA/DQo+IA0KPiBUaGlzIGNhbiBiZSB0aGluZ3Mgd2hp
Y2ggc3R1ZGVudHMvZm9sa3MgY2FuIGNvbnRyaWJ1dGUgb24gYW4gYWQtaG9jIGJhc2lzLg0KDQpZ
ZXMgaW5kZWVkLCB0aGVzZSBhcmUgdGhlIGtpbmQgb2YgZml4ZXMgdGhhdCBjb3VsZCBiZSBoYW5k
bGVkIGJ5IGJlZ2lubmVycyBjb250cmlidXRvcnMsDQpnaXZlbiB0aGUgYW1vdW50IG9mIHRoZW0g
d2UgbmVlZCBzb21lIGhlbHAgZm9yIHN1cmUhDQoNCg0KPiANCj4gSSBjYW4gd29yayB3aXRoIEtl
bGx5IHRvIHNlZSBpZiB3ZSBjYW4gcHV0IHRoZW0gaW4gYSB3aWtpIHBhZ2UuDQo+IA0KPiBJIGNv
dWxkIHNlZSBodHRwczovL3dpa2kueGVucHJvamVjdC5vcmcvd2lraS9PdXRyZWFjaF9Qcm9ncmFt
X1Byb2plY3RzICwgYnV0IGRvbid0IGtub3cgaWYgaXQgaXMgdXAgdG8gZGF0ZS4NCg0KDQpTdXJl
IHdlIGNhbiBzeW5jIHdpdGggS2VsbHkgdG8gc2VlIHdoYXQgd2UgY2FuIGRvIQ0KDQpDaGVlcnMs
DQpMdWNh


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 07:24:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 07:24:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610197.949513 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm7re-0007Sv-1E; Fri, 29 Sep 2023 07:24:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610197.949513; Fri, 29 Sep 2023 07:24:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm7rd-0007So-Uh; Fri, 29 Sep 2023 07:24:41 +0000
Received: by outflank-mailman (input) for mailman id 610197;
 Fri, 29 Sep 2023 07:24:40 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qm7rc-0007Si-GD
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 07:24:40 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm7rb-0007oJ-H2; Fri, 29 Sep 2023 07:24:39 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm7rb-00015W-Al; Fri, 29 Sep 2023 07:24:39 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=m2hJRUIrXlpuzkFSfB1yK8abhTgaLU72R1H8Bl0/D+A=; b=EzsP1E6pIzS3sfDa2f+KjbpOdK
	OjowWHXk0pIo8eoMJL3RKK6OtlkTOlq9lpADsfpub8MhU5f4nzhYdJXjNncHiFV0E/+hnP4E1FXS0
	JUjHpHAzZBiP6/2zGIxAfAIbEyXMbtWtOb+jKLIj0B0rVcSH/jx5wxonFWY0AyNpO27k=;
Message-ID: <592517ec-f093-4789-8cd6-320f886e45ae@xen.org>
Date: Fri, 29 Sep 2023 08:24:37 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] bitmap: fix n__ signess
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
Cc: jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com,
 bertrand.marquis@arm.com, george.dunlap@citrix.com, wl@xen.org
References: <alpine.DEB.2.22.394.2309281616200.1996340@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2309281616200.1996340@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 29/09/2023 00:19, Stefano Stabellini wrote:
> All callers of the bitmap_switch macro (which are all within bitmap.h)
> pass an int as first parameter. Do not assign it to an unsigned int
> potentially introducing errors.
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> ---
> 
> We could also have gone the other way and change all the callers and the
> callers' callers to use an unsigned int instead, but I went for the path
> of least resistance.

I understand this will solve the issue right now because the callers are 
all passing 'int'. However, all the callers will need to switch to 
'unsigned int' in order to solve violations in their callers.

That unless we decide to use 'int' everywhere, but I think this is a bad 
idea because 'n__' is not supposed to be negative.

Overall, this may be an easy win right now, but this will need to be 
reverted. So, I am not happy to ack it and would in fact be leaning 
towards Nacking it.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 07:31:47 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 07:31:47 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610201.949523 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm7yN-0000ly-KI; Fri, 29 Sep 2023 07:31:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610201.949523; Fri, 29 Sep 2023 07:31:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm7yN-0000lr-GR; Fri, 29 Sep 2023 07:31:39 +0000
Received: by outflank-mailman (input) for mailman id 610201;
 Fri, 29 Sep 2023 07:31:38 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qm7yM-0000ge-Hp
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 07:31:38 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm7yL-0007ww-0g; Fri, 29 Sep 2023 07:31:37 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm7yK-0001Jp-PA; Fri, 29 Sep 2023 07:31:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=cf3P6Xha10c6eZm5xMgDzFwpFIHGl/8qwjJB+boIC/o=; b=p3MhVSryteqY1a3XfGlycybWLB
	n3WuR3ynucfn3550/0sud70gFPOU73W2f3uYeJlfmZMAFhg0Xc353xoocMGX31UsgtLkGMiaTBLra
	Jy9V0j3xsxRMNaynPcpU/N/U+2WN9KrDPh6dedif3/QlWdiH/I/HtoKtFnp4QzfXD7OA=;
Message-ID: <e5815f93-80a4-4628-9eae-98c431c70dcc@xen.org>
Date: Fri, 29 Sep 2023 08:31:34 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] cpumask: fix integer type in cpumask_first
Content-Language: en-GB
To: Stefano Stabellini <sstabellini@kernel.org>,
 xen-devel@lists.xenproject.org
Cc: jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com,
 bertrand.marquis@arm.com, george.dunlap@citrix.com, wl@xen.org
References: <alpine.DEB.2.22.394.2309281629360.1996340@ubuntu-linux-20-04-desktop>
From: Julien Grall <julien@xen.org>
In-Reply-To: <alpine.DEB.2.22.394.2309281629360.1996340@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Stefano,

On 29/09/2023 00:32, Stefano Stabellini wrote:
> nr_cpu_ids is unsigned int, but find_first_bit returns unsigned long (at
> least on arm).

find_* are meant to be used by common code. So I think the first step is 
to correct the return type so it is consistent across all architectures.

I don't have a strong opinion on whether they should all return 
'unsigned long'.

Then we can discuss if the MISRA rule is still violated.

> Use the larger type for min_t to avoid larger-to-smaller
> type assignments. This address 141 MISRA C 10.3 violations.

I find interesting you are saying this given that...
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> ---
> 
> diff --git a/xen/include/xen/cpumask.h b/xen/include/xen/cpumask.h
> index 9826707909..a6ed6a28e8 100644
> --- a/xen/include/xen/cpumask.h
> +++ b/xen/include/xen/cpumask.h
> @@ -208,7 +208,7 @@ static inline void cpumask_copy(cpumask_t *dstp, const cpumask_t *srcp)
>   
>   static inline int cpumask_first(const cpumask_t *srcp)
>   {
> -	return min_t(int, nr_cpu_ids, find_first_bit(srcp->bits, nr_cpu_ids));
> +	return min_t(unsigned long, nr_cpu_ids, find_first_bit(srcp->bits, nr_cpu_ids));

... cpumask_first() is return 'int'. So rather than fixing it, you seem 
to have just moved the violation.

>   }
>   
>   static inline int cpumask_next(int n, const cpumask_t *srcp)

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 07:34:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 07:34:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610205.949533 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm81G-0002Oe-1M; Fri, 29 Sep 2023 07:34:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610205.949533; Fri, 29 Sep 2023 07:34:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm81F-0002OX-Uu; Fri, 29 Sep 2023 07:34:37 +0000
Received: by outflank-mailman (input) for mailman id 610205;
 Fri, 29 Sep 2023 07:34:36 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JGVc=FN=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qm81E-0002OR-Cc
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 07:34:36 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on20600.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a23754c3-5e9a-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 09:34:33 +0200 (CEST)
Received: from DUZPR01CA0250.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b5::6) by DB3PR08MB8962.eurprd08.prod.outlook.com
 (2603:10a6:10:43f::15) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 07:34:29 +0000
Received: from DBAEUR03FT032.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b5:cafe::63) by DUZPR01CA0250.outlook.office365.com
 (2603:10a6:10:4b5::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Fri, 29 Sep 2023 07:34:29 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT032.mail.protection.outlook.com (100.127.142.185) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.22 via Frontend Transport; Fri, 29 Sep 2023 07:34:29 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Fri, 29 Sep 2023 07:34:29 +0000
Received: from 49bb745e87f4.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 6A18D1D2-F371-4DE9-B2C8-F926BCA12F49.1; 
 Fri, 29 Sep 2023 07:33:58 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 49bb745e87f4.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 07:33:58 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by AS4PR08MB7653.eurprd08.prod.outlook.com (2603:10a6:20b:4cf::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 07:33:55 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404%4]) with mapi id 15.20.6838.024; Fri, 29 Sep 2023
 07:33:55 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a23754c3-5e9a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JqAO5OIhOuqvoJAZN3fDVXFBtyrR9lVW0pffhrRBATM=;
 b=AlRVJC3dBT2BLw/1ALgIERykl9O2nbOduNq5QiUUrDWaXI6LH+78abZCaQGUJTbLWCog1P9ybaUZXqCALMquUVKc1xd07oBvFnTG13Q5aUTo89xaqGEGd5XRvck7tiGVQmDsYjEKmNrrlxFz5XzUPlnFn/lO5DLkGTMaEuRqfmE=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: f1fbf8b5b55173bc
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Ck+Q/kss4jy04+Z4fvJr9skcFjFoV6bf51kYZIr2uT7pL9CYenDIpyKogebWS0vuhkyUGVxMqJKNvoQq0PYa+DbHcNLnLoSrpvW7EUtLMDECBbFS9p8dS0pdWJ5DgQg6B9BR/NFrbtxHmdnPoBRSCmWVQ/UBz1Bgqgrnj/tQ3+8NLz+PfmI22ln1IsdOfAb4jOQSzC5BYC/wZAUc2DISZbAaYBDMTvWToLLWfBlq4SvxjuMy9Xj0z3D99UQxktVNQOl/4BazVU5nlpuuJbBtwVIr3xt6ZZ0Rzk97HL6ROYIblYZ+VOWW39G81mB3xoYuTSbbNlgzuQN5P/gaSpTONw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=JqAO5OIhOuqvoJAZN3fDVXFBtyrR9lVW0pffhrRBATM=;
 b=HXGGubNU0AMyUf2NuyA7KtpHKnSJ/8L5HfP6Mx/Lge7SyJdWhnW81vG1vA+zXODoFSg5iPQSQfquAqVi8mAJ6sq2dBYow8whjCIGNASpHZBk6XeKUL26Qrfn4s6gjAWTRjI0fad0PL0wjNYBigF3AgpDLPqvmdmoDT3rDvQ39cxsr/95zoQdNxMrU+p141k7FZFiuRVXp+8pxdLCKxz56CkaRW77WUyzBBIrh7qkL6EZBCFfKwvEPBEg/wNO4/YfhABODPD7MQrfgq2FoC33MoBfRRE4geOH6PBnr/2B5c8JB1ib6F75K/x9yaBKYh0tVh7QYjA2IbNYp8CcHyn+Bg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JqAO5OIhOuqvoJAZN3fDVXFBtyrR9lVW0pffhrRBATM=;
 b=AlRVJC3dBT2BLw/1ALgIERykl9O2nbOduNq5QiUUrDWaXI6LH+78abZCaQGUJTbLWCog1P9ybaUZXqCALMquUVKc1xd07oBvFnTG13Q5aUTo89xaqGEGd5XRvck7tiGVQmDsYjEKmNrrlxFz5XzUPlnFn/lO5DLkGTMaEuRqfmE=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, "andrew.cooper3@citrix.com"
	<andrew.cooper3@citrix.com>, George Dunlap <george.dunlap@citrix.com>, Jan
 Beulich <jbeulich@suse.com>, Julien Grall <julien@xen.org>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, "nicola.vetrini@bugseng.com"
	<nicola.vetrini@bugseng.com>, "simone.ballarin@bugseng.com"
	<simone.ballarin@bugseng.com>, "federico.serafini@bugseng.com"
	<federico.serafini@bugseng.com>
Subject: Re: Misra rule 10.3 violations report script
Thread-Topic: Misra rule 10.3 violations report script
Thread-Index: AQHZ8eai6IW78bNFI0CROv/LSYbjorAw4NCAgACJ7wA=
Date: Fri, 29 Sep 2023 07:33:55 +0000
Message-ID: <AB2332E6-1EE4-4657-8403-F090D1E6C13E@arm.com>
References: <D36FE722-43D5-4A93-B725-AD4157A1BA61@arm.com>
 <alpine.DEB.2.22.394.2309281609360.1996340@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309281609360.1996340@ubuntu-linux-20-04-desktop>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3774.100.2.1.4)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|AS4PR08MB7653:EE_|DBAEUR03FT032:EE_|DB3PR08MB8962:EE_
X-MS-Office365-Filtering-Correlation-Id: 6b9569b4-6ce0-42f2-b255-08dbc0be83f2
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 K0q9DRKHWw2yRSBLJKBJGw8eQSPBlAZEvWHRVoSBCSZ0+9l7/1YZsXmQOMR6zs1yhsnZGeWtAn/xFFyEKdl+hu4vxNgsPs/u2RQG+ujcFdK7dZl1aLzKnIZ11M29H+Z/QM/p0ZEBrg6Yxr1Y0/Zqi6zrMrZNN6kKj7TpxcvV5QgBkW1Rv3PkKtJQvwER/CddnzXr4MUCt5n11XRV63pBeASoGCRDLnRvRhlAgH5HAk8KNH0Tx6/BIwOBX8K+LShBtbitVP1yTyaSVKD7jP29UEV3Ggq+zDJmGDa4YcuWcDmEJ+1kp9mJSkHY+Feb98qTl8JJ2fI/YTOhvhnZ76/VQg96OXtNYMPJD6F1wHEVESEaNGKgw9J9kWdGrhBjxLoOF+p6K7jwDtAcKIQa8BvdKlpJ2kBvejOC1CKlgVSOE1Ykl+vhJf4MGW3OpqIcxn/V5EKL7XbqUjrO2VS9TxIxgee6IUX17uLuvoyb1ouvozqqDgNVyUPbjqmYBMeJ2vaLLfCROe7XoazIMHJB/BVEmKyEWe5PlKxkwlfWgGBOAphCYV2fn/CbBZ0rblbFfVweTzAdeJe9D1TOUenUczKRIv8xGfpm4/M8SIWI3KoASuUUNPqWpl6nSwInM9FXo7+TrXJcaPQ3/fIBUpBUPM3IZQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(396003)(366004)(376002)(39860400002)(346002)(230922051799003)(64100799003)(1800799009)(451199024)(186009)(6506007)(6486002)(6512007)(2616005)(53546011)(86362001)(33656002)(36756003)(38100700002)(122000001)(38070700005)(26005)(2906002)(71200400001)(478600001)(83380400001)(316002)(8936002)(66556008)(4326008)(8676002)(41300700001)(66476007)(5660300002)(91956017)(76116006)(64756008)(54906003)(6916009)(66946007)(66446008)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <0FD7342F9010964ABA2B61252FE3021E@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7653
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT032.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	6057173d-e3d7-4c48-776e-08dbc0be6fb4
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	c+XMRRb2e6GRXi3ATSZsJSyVH18+vUSa0zSDWvctl/y3pu2KkkzddAcvIkrmKqe/z/do2XZpZG7CDpAX+k27nVTlRiE68H8IsDCxA9R3psMM8tZs6Yn2+hBSuesn0ygRl8ned2RuO4PXl7QbqdGwopZaLMMeTHAh4FtkZSTyDPmJ/VDzwRKQXLL6B+IYBcsLtmHtaqKwuOHRYFviFLv+DLhmYjeUV+byAVHfhOLlOU6LoNZkjzvfnJ+0iF3NlLW0DURQt3vLXX/qkDL2txOVeUrmn9n0WMuK0bbAf99+4/v8umG8fuSUj5hdEZq8Z9n63ywe76yphl+aAJzxidN8xfOxfmKJaT3aW5KGqEGd4TddWbr8ekGO2J9EiwBzLgzthKN3gNKduY+UBmuwchSc++sPxPc9l2NndrQlWg0yZrmV4cjHJnODvBeQd2CVpliOi2PeF21cgVI43NWG31/xhEr3V18V9t8xxHDlmFIQQMpKGggltBjEJQ6i21494TISvU/vdYur74kDm8b5tt9FP9lMZ0EqEG8UXJiru1NJS4X6vroiixC/qXsIQbPT++LSEwFfWv7Bwv+z+iJuPXViIFb9RbxWYC4+O89ANhDe/AsJsnjoyQXg/FLBwe4iA+B50ncwJkM7bHapGdiiLWrDLjJlIwnGmILEfgzLxaa3rviRwWvDt9OJ+E6d+SdQw9CmcrnR4tvM4v2i0/YXYwt7iO96lttWf0yYTA//1lODABQr7QLcmoL5Kx5OJJdYp7u9
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(376002)(39850400004)(136003)(230922051799003)(82310400011)(186009)(1800799009)(64100799003)(451199024)(46966006)(36840700001)(40470700004)(2616005)(47076005)(336012)(5660300002)(4326008)(6862004)(8936002)(8676002)(6486002)(53546011)(6506007)(81166007)(6512007)(82740400003)(356005)(83380400001)(33656002)(107886003)(26005)(36860700001)(478600001)(70206006)(70586007)(36756003)(316002)(54906003)(40480700001)(86362001)(2906002)(41300700001)(40460700003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 07:34:29.3097
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6b9569b4-6ce0-42f2-b255-08dbc0be83f2
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT032.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB8962

DQoNCj4gT24gMjkgU2VwIDIwMjMsIGF0IDAwOjIwLCBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFi
ZWxsaW5pQGtlcm5lbC5vcmc+IHdyb3RlOg0KPiANCj4gT24gVGh1LCAyOCBTZXAgMjAyMywgTHVj
YSBGYW5jZWxsdSB3cm90ZToNCj4+IEhpIGFsbCwNCj4+IA0KPj4gSW4gdGhlIGxhc3QgTUlTUkEg
bWVldGluZyBTdGVmYW5vIHRvbGQgbWUgYWJvdXQgdGhlIFJ1bGUgMTAuMyBhbmQgdGhhdCB3ZSBo
YXZlIGEgbG90IG9mIHZpb2xhdGlvbnMsDQo+PiBidXQgR0NDIGhhcyBhIHdheSB0byBsaXN0IHRo
ZW0gYXMgd3JpdHRlbiBpbiBydWxlcy5yc3QuDQo+PiANCj4+IFNvIHRoZSBpc3N1ZSB3YXMganVz
dCB0aGF0IHdlIGhhdmUgYSBsb3Qgb2YgdmlvbGF0aW9ucywgbW9zdCBvZiB0aGVtIGNvbWluZyBm
cm9tIGhlYWRlcnMgYW5kIHRoZQ0KPj4gRGV2ZWxvcGVyIG1pZ2h0IGZlZWwgYSBiaXQgbG9zdCBz
aW5jZSB0aGUgbnVtYmVyIGlzIHZlcnkgaGlnaCwgc28gSeKAmXZlIGRldmVsb3BlZCB0aGlzIHNj
cmlwdCB0byB0YWtlDQo+PiB0aGUgR0NDIGJ1aWxkIGxvZyBhbmQgY3JlYXRlIGEgbGlzdCBvZiB1
bmlxdWUgb2NjdXJyZW5jZXMgb2YgdGhlIHZpb2xhdGlvbnMgc29ydGVkIGluIGRlc2NlbmRpbmcN
Cj4+IG9yZGVyLCBzbyB0aGF0IHdobyBoYXMgYSBiaXQgb2YgdGltZSBjYW4gdHJ5IHRvIGZpeCBz
b21lIG9mIHRob3NlIGFuZCBtYXliZSBjYW4gc3RhcnQgZnJvbSB0aGUgdG9wDQo+PiBvZiB0aGUg
bGlzdCB0byBmaXggYXMgbWFueSBhcyBwb3NzaWJsZSBvY2N1cnJlbmNlcy4NCj4+IA0KPj4gSSBh
dHRhY2ggdGhlIHNjcmlwdCBhcyBwYXRjaCBmaWxlLg0KDQpIaSBTdGVmYW5vLA0KDQo+IA0KPiBU
aGFua3MgTHVjYSEgQWN0dWFsbHkgSSB0aGluayB0aGlzIGlzIGdyZWF0ISBUaGUgc2NyaXB0IG1h
a2VzIGl0IG11Y2gNCj4gZWFzaWVyIHRvIHVzZSB0aGUgR0NDIG91dHB1dCB0byBhZGRyZXNzIDEw
LjMgdmlvbGF0aW9ucy4gSSB0aGluayB3ZQ0KPiBzaG91bGQgaGF2ZSBpdCBpbiB0aGUgeGVuLmdp
dCB0cmVlLg0KDQpPayBJIGNhbiByZWZpbmUgaXQgYSBiaXQgaW4gdGhhdCBjYXNlIGFuZCBwdXNo
IGl0IHRvIHRoZSBNTC4NCg0KPiANCj4gVGhhbmtzIHRvIHRoZSBzY3JpcHQgSSB3YXMgYWJsZSB0
byBxdWlja2x5IGFkZHJlc3MgdGhlIHRvcCB2aW9sYXRpb24gaW4NCj4gYml0bWFwLmguDQoNCkni
gJltIHdvbmRlcmluZyBpZiB3ZSBuZWVkIHRvIHJlbW92ZSBmcm9tIHRoZSBsaXN0IHRoZSBleGNs
dWRlZCBmaWxlcywgaW4gdGhpcw0KZmlyc3Qgc2hvdCBJIGRpZG7igJl0IGRvIHRoYXQgYnV0IHNo
b3VsZCBiZSBlYXN5Lg0KDQoNCg==


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 07:38:17 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 07:38:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610210.949543 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm84j-00031h-Hk; Fri, 29 Sep 2023 07:38:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610210.949543; Fri, 29 Sep 2023 07:38:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm84j-00031a-Dv; Fri, 29 Sep 2023 07:38:13 +0000
Received: by outflank-mailman (input) for mailman id 610210;
 Fri, 29 Sep 2023 07:38:11 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qm84h-00031U-Lr
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 07:38:11 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm84h-0008Di-8R; Fri, 29 Sep 2023 07:38:11 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm84h-0001lK-2m; Fri, 29 Sep 2023 07:38:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=inFTXOSGih0pzzXbhKFdO70QzhmdWdhrVd+vsphXbks=; b=CI+NXh4u4TzYElN6msQ6FkGWQk
	jkdJeDh8B2iEKe/7OaeVD16FqdywdFXnyJCZTauKdwShprCfjR486EztSS4ca2qkgDX6QkaWORsEe
	WNS1MJ1VyJ1QW+IYcNBH5A1gxWg3mcdOBUgB/fLHe+6ULaObqCWLdOGK9vNqKYgwTPk4=;
Message-ID: <d406c4c6-07f7-442f-8bef-8ba42308ae93@xen.org>
Date: Fri, 29 Sep 2023 08:38:09 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] xen/arm: Validate generic timer frequency
Content-Language: en-GB
To: Michal Orzel <michal.orzel@amd.com>, xen-devel@lists.xenproject.org
Cc: Stefano Stabellini <sstabellini@kernel.org>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230928123435.2802-1-michal.orzel@amd.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <20230928123435.2802-1-michal.orzel@amd.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi Michal,

On 28/09/2023 13:34, Michal Orzel wrote:
> Generic timer dt node property "clock-frequency" (refer Linux dt binding
> Documentation/devicetree/bindings/timer/arm,arch_timer.yaml) is used to
> override the incorrect value set by firmware in CNTFRQ_EL0. If the value
> of this property is 0 (i.e. by mistake), Xen would continue to work and
> use the value from the sysreg instead. The logic is thus incorrect and
> results in inconsistency when creating timer node for domUs:
>   - libxl domUs: clock_frequency member of struct xen_arch_domainconfig
>     is set to 0 and libxl ignores setting the "clock-frequency" property,
>   - dom0less domUs: "clock-frequency" property is taken from dt_host and
>     thus set to 0.
> 
> Property "clock-frequency" is used to override the value from sysreg,
> so if it is also invalid, there is nothing we can do and we shall panic
> to let user know about incorrect setting. Going even further, we operate
> under assumption that the frequency must be at least 1KHz (i.e. cpu_khz
> not 0) in order for Xen to boot. Therefore, introduce a new helper
> validate_timer_frequency() to verify this assumption and use it to check
> the frequency obtained either from dt property or from sysreg.
> 
> Signed-off-by: Michal Orzel <michal.orzel@amd.com>

Acked-by: Julien Grall <jgrall@amazon.com>

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 07:46:48 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 07:46:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610239.949564 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Cw-0006Hw-KS; Fri, 29 Sep 2023 07:46:42 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610239.949564; Fri, 29 Sep 2023 07:46:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Cw-0006Hp-Hp; Fri, 29 Sep 2023 07:46:42 +0000
Received: by outflank-mailman (input) for mailman id 610239;
 Fri, 29 Sep 2023 07:46:42 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m+YX=FN=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qm8Cv-0006Hj-RP
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 07:46:41 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 52a4951b-5e9c-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 09:46:39 +0200 (CEST)
Received: from [192.168.1.9] (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id 3821D4EE0739;
 Fri, 29 Sep 2023 09:46:38 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 52a4951b-5e9c-11ee-9b0d-b553b5be7939
Message-ID: <c07fbce7-2da7-4d0b-9068-00e27b508d83@bugseng.com>
Date: Fri, 29 Sep 2023 09:46:37 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v7 3/4] x86/include: address violations of MISRA
 C:2012 Rule 7.2
Content-Language: en-US
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com,
 jbeulich@suse.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, Wei Liu
 <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>
References: <cover.1695913900.git.simone.ballarin@bugseng.com>
 <6f0ac778edc5de8cf079a657917696ceae919e8b.1695913900.git.simone.ballarin@bugseng.com>
 <alpine.DEB.2.22.394.2309281552130.1996340@ubuntu-linux-20-04-desktop>
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <alpine.DEB.2.22.394.2309281552130.1996340@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 29/09/23 00:58, Stefano Stabellini wrote:
> On Thu, 28 Sep 2023, Simone Ballarin wrote:
>> The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
>> headline states:
>> "A 'u' or 'U' suffix shall be applied to all integer constants
>> that are represented in an unsigned type".
>>
>> Add the 'U' suffix to integers literals with unsigned type.
>> Use _AC() for macro costants that are used also in assembly files.
>>
>> For the sake of uniformity, the following changes are made:
>> - add the 'U' suffix to macros in 'pci.h'
>> - use _AC() for macros near 'X86_CR0_PG'
>>
>> Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>> ---
>> Changes in v7:
>> - switch order of Signed-off-by tags
>> - change tag from x86/arm to x86/include
>> Changes in v6:
>> - new patch obtained by splitting ASM related changes from
>> "xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
>> - use UL suffix for X86_CR0_* macros
>> ---
>>   xen/arch/x86/include/asm/apicdef.h   |   2 +-
>>   xen/arch/x86/include/asm/config.h    |   2 +-
>>   xen/arch/x86/include/asm/hpet.h      |   2 +-
>>   xen/arch/x86/include/asm/msi.h       |   2 +-
>>   xen/arch/x86/include/asm/msr-index.h | 182 +++++++++++++--------------
>>   xen/arch/x86/include/asm/pci.h       |   8 +-
>>   xen/arch/x86/include/asm/x86-defns.h |  22 ++--
>>   7 files changed, 110 insertions(+), 110 deletions(-)
>>
>> diff --git a/xen/arch/x86/include/asm/apicdef.h b/xen/arch/x86/include/asm/apicdef.h
>> index a261436993..8d1b0087d4 100644
>> --- a/xen/arch/x86/include/asm/apicdef.h
>> +++ b/xen/arch/x86/include/asm/apicdef.h
>> @@ -8,7 +8,7 @@
>>    * Ingo Molnar <mingo@redhat.com>, 1999, 2000
>>    */
>>   
>> -#define		APIC_DEFAULT_PHYS_BASE	0xfee00000
>> +#define		APIC_DEFAULT_PHYS_BASE	0xfee00000U
>>    
>>   #define		APIC_ID		0x20
>>   #define			APIC_ID_MASK		(0xFFu<<24)
>> diff --git a/xen/arch/x86/include/asm/config.h b/xen/arch/x86/include/asm/config.h
>> index fbc4bb3416..bbced338be 100644
>> --- a/xen/arch/x86/include/asm/config.h
>> +++ b/xen/arch/x86/include/asm/config.h
>> @@ -257,7 +257,7 @@ extern unsigned char boot_edid_info[128];
>>   #endif /* CONFIG_PV32 */
>>   
>>   #define MACH2PHYS_COMPAT_VIRT_START    HYPERVISOR_COMPAT_VIRT_START
>> -#define MACH2PHYS_COMPAT_VIRT_END      0xFFE00000
>> +#define MACH2PHYS_COMPAT_VIRT_END      0xFFE00000U
>>   #define MACH2PHYS_COMPAT_NR_ENTRIES(d) \
>>       ((MACH2PHYS_COMPAT_VIRT_END-MACH2PHYS_COMPAT_VIRT_START(d))>>2)
>>   
>> diff --git a/xen/arch/x86/include/asm/hpet.h b/xen/arch/x86/include/asm/hpet.h
>> index 9919f74730..c5e8e9c8db 100644
>> --- a/xen/arch/x86/include/asm/hpet.h
>> +++ b/xen/arch/x86/include/asm/hpet.h
>> @@ -41,7 +41,7 @@
>>   #define HPET_TN_ROUTE		0x3e00
>>   #define HPET_TN_FSB		0x4000
>>   #define HPET_TN_FSB_CAP		0x8000
>> -#define HPET_TN_RESERVED	0xffff0081
>> +#define HPET_TN_RESERVED	0xffff0081U
>>   #define HPET_TN_INT_ROUTE_CAP	(0xffffffffULL << 32)
>>   
>>   
>> diff --git a/xen/arch/x86/include/asm/msi.h b/xen/arch/x86/include/asm/msi.h
>> index a53ade95c9..d89723d009 100644
>> --- a/xen/arch/x86/include/asm/msi.h
>> +++ b/xen/arch/x86/include/asm/msi.h
>> @@ -37,7 +37,7 @@
>>    */
>>   
>>   #define MSI_ADDR_BASE_HI            0
>> -#define MSI_ADDR_BASE_LO            0xfee00000
>> +#define MSI_ADDR_BASE_LO            0xfee00000U
>>   #define MSI_ADDR_BASE_MASK          (~0xfffff)
>>   #define MSI_ADDR_HEADER             MSI_ADDR_BASE_LO
>>   
>> diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
>> index 11ffed543a..718f8f860d 100644
>> --- a/xen/arch/x86/include/asm/msr-index.h
>> +++ b/xen/arch/x86/include/asm/msr-index.h
>> @@ -22,7 +22,7 @@
>>   #define  APIC_BASE_BSP                      (_AC(1, ULL) <<  8)
>>   #define  APIC_BASE_EXTD                     (_AC(1, ULL) << 10)
>>   #define  APIC_BASE_ENABLE                   (_AC(1, ULL) << 11)
>> -#define  APIC_BASE_ADDR_MASK                0x000ffffffffff000ULL
>> +#define  APIC_BASE_ADDR_MASK                _AC(0x000ffffffffff000, ULL)
> 
> This is not used by assembly code?
> 
> 
>>   #define MSR_TEST_CTRL                       0x00000033
>>   #define  TEST_CTRL_SPLITLOCK_DETECT         (_AC(1, ULL) << 29)
>> @@ -30,7 +30,7 @@
>>   
>>   #define MSR_INTEL_CORE_THREAD_COUNT         0x00000035
>>   #define  MSR_CTC_THREAD_MASK                0x0000ffff
>> -#define  MSR_CTC_CORE_MASK                  0xffff0000
>> +#define  MSR_CTC_CORE_MASK                  _AC(0xffff0000, U)
> 
> Also this one is not?
> 
> 
>>   #define MSR_SPEC_CTRL                       0x00000048
>>   #define  SPEC_CTRL_IBRS                     (_AC(1, ULL) <<  0)
>> @@ -186,7 +186,7 @@
>>   #define MSR_UARCH_MISC_CTRL                 0x00001b01
>>   #define  UARCH_CTRL_DOITM                   (_AC(1, ULL) <<  0)
>>   
>> -#define MSR_EFER                            0xc0000080 /* Extended Feature Enable Register */
>> +#define MSR_EFER                            _AC(0xc0000080, U) /* Extended Feature Enable Register */
>>   #define  EFER_SCE                           (_AC(1, ULL) <<  0) /* SYSCALL Enable */
>>   #define  EFER_LME                           (_AC(1, ULL) <<  8) /* Long Mode Enable */
>>   #define  EFER_LMA                           (_AC(1, ULL) << 10) /* Long Mode Active */
>> @@ -199,35 +199,35 @@
>>       (EFER_SCE | EFER_LME | EFER_LMA | EFER_NXE | EFER_SVME | EFER_FFXSE | \
>>        EFER_AIBRSE)
>>   
>> -#define MSR_STAR                            0xc0000081 /* legacy mode SYSCALL target */
>> -#define MSR_LSTAR                           0xc0000082 /* long mode SYSCALL target */
>> -#define MSR_CSTAR                           0xc0000083 /* compat mode SYSCALL target */
>> -#define MSR_SYSCALL_MASK                    0xc0000084 /* EFLAGS mask for syscall */
>> -#define MSR_FS_BASE                         0xc0000100 /* 64bit FS base */
>> -#define MSR_GS_BASE                         0xc0000101 /* 64bit GS base */
>> -#define MSR_SHADOW_GS_BASE                  0xc0000102 /* SwapGS GS shadow */
>> -#define MSR_TSC_AUX                         0xc0000103 /* Auxiliary TSC */
>> +#define MSR_STAR                            _AC(0xc0000081, U) /* legacy mode SYSCALL target */
>> +#define MSR_LSTAR                           _AC(0xc0000082, U) /* long mode SYSCALL target */
>> +#define MSR_CSTAR                           _AC(0xc0000083, U) /* compat mode SYSCALL target */
>> +#define MSR_SYSCALL_MASK                    _AC(0xc0000084, U) /* EFLAGS mask for syscall */
>> +#define MSR_FS_BASE                         _AC(0xc0000100, U) /* 64bit FS base */
>> +#define MSR_GS_BASE                         _AC(0xc0000101, U) /* 64bit GS base */
>> +#define MSR_SHADOW_GS_BASE                  _AC(0xc0000102, U) /* SwapGS GS shadow */
>> +#define MSR_TSC_AUX                         _AC(0xc0000103, U) /* Auxiliary TSC */
> 
> None of these set seems to be used by assembly code
> 
> 
>> -#define MSR_K8_SYSCFG                       0xc0010010
>> +#define MSR_K8_SYSCFG                       _AC(0xc0010010, U)
> 
> This one also is not?
> 
> 
>>   #define  SYSCFG_MTRR_FIX_DRAM_EN            (_AC(1, ULL) << 18)
>>   #define  SYSCFG_MTRR_FIX_DRAM_MOD_EN        (_AC(1, ULL) << 19)
>>   #define  SYSCFG_MTRR_VAR_DRAM_EN            (_AC(1, ULL) << 20)
>>   #define  SYSCFG_MTRR_TOM2_EN                (_AC(1, ULL) << 21)
>>   #define  SYSCFG_TOM2_FORCE_WB               (_AC(1, ULL) << 22)
>>   
>> -#define MSR_K8_IORR_BASE0                   0xc0010016
>> -#define MSR_K8_IORR_MASK0                   0xc0010017
>> -#define MSR_K8_IORR_BASE1                   0xc0010018
>> -#define MSR_K8_IORR_MASK1                   0xc0010019
>> +#define MSR_K8_IORR_BASE0                   _AC(0xc0010016, U)
>> +#define MSR_K8_IORR_MASK0                   _AC(0xc0010017, U)
>> +#define MSR_K8_IORR_BASE1                   _AC(0xc0010018, U)
>> +#define MSR_K8_IORR_MASK1                   _AC(0xc0010019, U)
> 
> These ones are not?
> 
> 
>> -#define MSR_K8_TSEG_BASE                    0xc0010112 /* AMD doc: SMMAddr */
>> -#define MSR_K8_TSEG_MASK                    0xc0010113 /* AMD doc: SMMMask */
>> +#define MSR_K8_TSEG_BASE                    _AC(0xc0010112, U) /* AMD doc: SMMAddr */
>> +#define MSR_K8_TSEG_MASK                    _AC(0xc0010113, U) /* AMD doc: SMMMask */
> 
> These ones are not?
> 
>>   
>> -#define MSR_K8_VM_CR                        0xc0010114
>> +#define MSR_K8_VM_CR                        _AC(0xc0010114, U)
> 
> Also this one
> 
> 
>>   #define  VM_CR_INIT_REDIRECTION             (_AC(1, ULL) <<  1)
>>   #define  VM_CR_SVM_DISABLE                  (_AC(1, ULL) <<  4)
>>   
>> -#define MSR_VIRT_SPEC_CTRL                  0xc001011f /* Layout matches MSR_SPEC_CTRL */
>> +#define MSR_VIRT_SPEC_CTRL                  _AC(0xc001011f, U) /* Layout matches MSR_SPEC_CTRL */
> 
> And this one.
> 
> What am I missing? Did you also add _AC to all the places where the
> constants end up being used in asm inline? Because I don't think that
> asm inline needs the _AC...

Initially I've used _AC only when strictly required, then I've received
the following comment 
(https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02207.html):

	I understand you use _AC() here because the constant is used in
	assembly code. But I don't understand why you use it only here,
	and not throughout at least the "modern" portion of the file. I
	wonder what other x86 maintainers think about this.

> 
> 
>>   #define MSR_AMD_CSTATE_CFG                  0xc0010296
>>   
>> @@ -313,7 +313,7 @@
>>   #define CMCI_EN 			(1UL<<30)
>>   #define CMCI_THRESHOLD_MASK		0x7FFF
>>   
>> -#define MSR_AMD64_MC0_MASK		0xc0010044
>> +#define MSR_AMD64_MC0_MASK		0xc0010044U
>>   
>>   #define MSR_IA32_MCx_CTL(x)		(MSR_IA32_MC0_CTL + 4*(x))
>>   #define MSR_IA32_MCx_STATUS(x)		(MSR_IA32_MC0_STATUS + 4*(x))
>> @@ -345,82 +345,82 @@
>>   
>>   /* K7/K8 MSRs. Not complete. See the architecture manual for a more
>>      complete list. */
>> -#define MSR_K7_EVNTSEL0			0xc0010000
>> -#define MSR_K7_PERFCTR0			0xc0010004
>> -#define MSR_K7_EVNTSEL1			0xc0010001
>> -#define MSR_K7_PERFCTR1			0xc0010005
>> -#define MSR_K7_EVNTSEL2			0xc0010002
>> -#define MSR_K7_PERFCTR2			0xc0010006
>> -#define MSR_K7_EVNTSEL3			0xc0010003
>> -#define MSR_K7_PERFCTR3			0xc0010007
>> -#define MSR_K8_TOP_MEM1			0xc001001a
>> -#define MSR_K8_TOP_MEM2			0xc001001d
>> -
>> -#define MSR_K8_HWCR			0xc0010015
>> +#define MSR_K7_EVNTSEL0			0xc0010000U
>> +#define MSR_K7_PERFCTR0			0xc0010004U
>> +#define MSR_K7_EVNTSEL1			0xc0010001U
>> +#define MSR_K7_PERFCTR1			0xc0010005U
>> +#define MSR_K7_EVNTSEL2			0xc0010002U
>> +#define MSR_K7_PERFCTR2			0xc0010006U
>> +#define MSR_K7_EVNTSEL3			0xc0010003U
>> +#define MSR_K7_PERFCTR3			0xc0010007U
>> +#define MSR_K8_TOP_MEM1			0xc001001aU
>> +#define MSR_K8_TOP_MEM2			0xc001001dU
>> +
>> +#define MSR_K8_HWCR			0xc0010015U
>>   #define K8_HWCR_TSC_FREQ_SEL		(1ULL << 24)
>>   #define K8_HWCR_CPUID_USER_DIS		(1ULL << 35)
>>   
>> -#define MSR_K7_FID_VID_CTL		0xc0010041
>> -#define MSR_K7_FID_VID_STATUS		0xc0010042
>> -#define MSR_K8_PSTATE_LIMIT		0xc0010061
>> -#define MSR_K8_PSTATE_CTRL		0xc0010062
>> -#define MSR_K8_PSTATE_STATUS		0xc0010063
>> -#define MSR_K8_PSTATE0			0xc0010064
>> -#define MSR_K8_PSTATE1			0xc0010065
>> -#define MSR_K8_PSTATE2			0xc0010066
>> -#define MSR_K8_PSTATE3			0xc0010067
>> -#define MSR_K8_PSTATE4			0xc0010068
>> -#define MSR_K8_PSTATE5			0xc0010069
>> -#define MSR_K8_PSTATE6			0xc001006A
>> -#define MSR_K8_PSTATE7			0xc001006B
>> -#define MSR_K8_ENABLE_C1E		0xc0010055
>> -#define MSR_K8_VM_HSAVE_PA		0xc0010117
>> -
>> -#define MSR_AMD_FAM15H_EVNTSEL0		0xc0010200
>> -#define MSR_AMD_FAM15H_PERFCTR0		0xc0010201
>> -#define MSR_AMD_FAM15H_EVNTSEL1		0xc0010202
>> -#define MSR_AMD_FAM15H_PERFCTR1		0xc0010203
>> -#define MSR_AMD_FAM15H_EVNTSEL2		0xc0010204
>> -#define MSR_AMD_FAM15H_PERFCTR2		0xc0010205
>> -#define MSR_AMD_FAM15H_EVNTSEL3		0xc0010206
>> -#define MSR_AMD_FAM15H_PERFCTR3		0xc0010207
>> -#define MSR_AMD_FAM15H_EVNTSEL4		0xc0010208
>> -#define MSR_AMD_FAM15H_PERFCTR4		0xc0010209
>> -#define MSR_AMD_FAM15H_EVNTSEL5		0xc001020a
>> -#define MSR_AMD_FAM15H_PERFCTR5		0xc001020b
>> -
>> -#define MSR_AMD_L7S0_FEATURE_MASK	0xc0011002
>> -#define MSR_AMD_THRM_FEATURE_MASK	0xc0011003
>> -#define MSR_K8_FEATURE_MASK		0xc0011004
>> -#define MSR_K8_EXT_FEATURE_MASK		0xc0011005
>> +#define MSR_K7_FID_VID_CTL		0xc0010041U
>> +#define MSR_K7_FID_VID_STATUS		0xc0010042U
>> +#define MSR_K8_PSTATE_LIMIT		0xc0010061U
>> +#define MSR_K8_PSTATE_CTRL		0xc0010062U
>> +#define MSR_K8_PSTATE_STATUS		0xc0010063U
>> +#define MSR_K8_PSTATE0			0xc0010064U
>> +#define MSR_K8_PSTATE1			0xc0010065U
>> +#define MSR_K8_PSTATE2			0xc0010066U
>> +#define MSR_K8_PSTATE3			0xc0010067U
>> +#define MSR_K8_PSTATE4			0xc0010068U
>> +#define MSR_K8_PSTATE5			0xc0010069U
>> +#define MSR_K8_PSTATE6			0xc001006AU
>> +#define MSR_K8_PSTATE7			0xc001006BU
>> +#define MSR_K8_ENABLE_C1E		0xc0010055U
>> +#define MSR_K8_VM_HSAVE_PA		0xc0010117U
>> +
>> +#define MSR_AMD_FAM15H_EVNTSEL0		0xc0010200U
>> +#define MSR_AMD_FAM15H_PERFCTR0		0xc0010201U
>> +#define MSR_AMD_FAM15H_EVNTSEL1		0xc0010202U
>> +#define MSR_AMD_FAM15H_PERFCTR1		0xc0010203U
>> +#define MSR_AMD_FAM15H_EVNTSEL2		0xc0010204U
>> +#define MSR_AMD_FAM15H_PERFCTR2		0xc0010205U
>> +#define MSR_AMD_FAM15H_EVNTSEL3		0xc0010206U
>> +#define MSR_AMD_FAM15H_PERFCTR3		0xc0010207U
>> +#define MSR_AMD_FAM15H_EVNTSEL4		0xc0010208U
>> +#define MSR_AMD_FAM15H_PERFCTR4		0xc0010209U
>> +#define MSR_AMD_FAM15H_EVNTSEL5		0xc001020aU
>> +#define MSR_AMD_FAM15H_PERFCTR5		0xc001020bU
>> +
>> +#define MSR_AMD_L7S0_FEATURE_MASK	0xc0011002U
>> +#define MSR_AMD_THRM_FEATURE_MASK	0xc0011003U
>> +#define MSR_K8_FEATURE_MASK			0xc0011004U
>> +#define MSR_K8_EXT_FEATURE_MASK		0xc0011005U
>>   
>>   /* AMD64 MSRs */
>> -#define MSR_AMD64_NB_CFG		0xc001001f
>> +#define MSR_AMD64_NB_CFG		0xc001001fU
>>   #define AMD64_NB_CFG_CF8_EXT_ENABLE_BIT	46
>> -#define MSR_AMD64_LS_CFG		0xc0011020
>> -#define MSR_AMD64_IC_CFG		0xc0011021
>> -#define MSR_AMD64_DC_CFG		0xc0011022
>> -#define MSR_AMD64_DE_CFG		0xc0011029
>> +#define MSR_AMD64_LS_CFG		0xc0011020U
>> +#define MSR_AMD64_IC_CFG		0xc0011021U
>> +#define MSR_AMD64_DC_CFG		0xc0011022U
>> +#define MSR_AMD64_DE_CFG		0xc0011029U
>>   #define AMD64_DE_CFG_LFENCE_SERIALISE	(_AC(1, ULL) << 1)
>> -#define MSR_AMD64_EX_CFG		0xc001102c
>> -#define MSR_AMD64_DE_CFG2		0xc00110e3
>> +#define MSR_AMD64_EX_CFG		0xc001102cU
>> +#define MSR_AMD64_DE_CFG2		0xc00110e3U
>>   
>> -#define MSR_AMD64_DR0_ADDRESS_MASK	0xc0011027
>> -#define MSR_AMD64_DR1_ADDRESS_MASK	0xc0011019
>> -#define MSR_AMD64_DR2_ADDRESS_MASK	0xc001101a
>> -#define MSR_AMD64_DR3_ADDRESS_MASK	0xc001101b
>> +#define MSR_AMD64_DR0_ADDRESS_MASK	0xc0011027U
>> +#define MSR_AMD64_DR1_ADDRESS_MASK	0xc0011019U
>> +#define MSR_AMD64_DR2_ADDRESS_MASK	0xc001101aU
>> +#define MSR_AMD64_DR3_ADDRESS_MASK	0xc001101bU
>>   
>>   /* AMD Family10h machine check MSRs */
>> -#define MSR_F10_MC4_MISC1		0xc0000408
>> -#define MSR_F10_MC4_MISC2		0xc0000409
>> -#define MSR_F10_MC4_MISC3		0xc000040A
>> +#define MSR_F10_MC4_MISC1		0xc0000408U
>> +#define MSR_F10_MC4_MISC2		0xc0000409U
>> +#define MSR_F10_MC4_MISC3		0xc000040AU
>>   
>>   /* AMD Family10h Bus Unit MSRs */
>> -#define MSR_F10_BU_CFG 		0xc0011023
>> -#define MSR_F10_BU_CFG2		0xc001102a
>> +#define MSR_F10_BU_CFG 		0xc0011023U
>> +#define MSR_F10_BU_CFG2		0xc001102aU
>>   
>>   /* Other AMD Fam10h MSRs */
>> -#define MSR_FAM10H_MMIO_CONF_BASE	0xc0010058
>> +#define MSR_FAM10H_MMIO_CONF_BASE	0xc0010058U
>>   #define FAM10H_MMIO_CONF_ENABLE         (1<<0)
>>   #define FAM10H_MMIO_CONF_BUSRANGE_MASK	0xf
>>   #define FAM10H_MMIO_CONF_BUSRANGE_SHIFT 2
>> @@ -429,22 +429,22 @@
>>   
>>   /* AMD Microcode MSRs */
>>   #define MSR_AMD_PATCHLEVEL		0x0000008b
>> -#define MSR_AMD_PATCHLOADER		0xc0010020
>> +#define MSR_AMD_PATCHLOADER		0xc0010020U
>>   
>>   /* AMD TSC RATE MSR */
>> -#define MSR_AMD64_TSC_RATIO		0xc0000104
>> +#define MSR_AMD64_TSC_RATIO		0xc0000104U
>>   
>>   /* AMD Lightweight Profiling MSRs */
>> -#define MSR_AMD64_LWP_CFG		0xc0000105
>> -#define MSR_AMD64_LWP_CBADDR		0xc0000106
>> +#define MSR_AMD64_LWP_CFG		0xc0000105U
>> +#define MSR_AMD64_LWP_CBADDR		0xc0000106U
>>   
>>   /* AMD OS Visible Workaround MSRs */
>> -#define MSR_AMD_OSVW_ID_LENGTH          0xc0010140
>> -#define MSR_AMD_OSVW_STATUS             0xc0010141
>> +#define MSR_AMD_OSVW_ID_LENGTH          0xc0010140U
>> +#define MSR_AMD_OSVW_STATUS             0xc0010141U
>>   
>>   /* AMD Protected Processor Inventory Number */
>> -#define MSR_AMD_PPIN_CTL                0xc00102f0
>> -#define MSR_AMD_PPIN                    0xc00102f1
>> +#define MSR_AMD_PPIN_CTL                0xc00102f0U
>> +#define MSR_AMD_PPIN                    0xc00102f1U
>>   
>>   /* VIA Cyrix defined MSRs*/
>>   #define MSR_VIA_FCR			0x00001107
>> diff --git a/xen/arch/x86/include/asm/pci.h b/xen/arch/x86/include/asm/pci.h
>> index f4a58c8acf..e1dd12eb19 100644
>> --- a/xen/arch/x86/include/asm/pci.h
>> +++ b/xen/arch/x86/include/asm/pci.h
>> @@ -3,10 +3,10 @@
>>   
>>   #include <xen/mm.h>
>>   
>> -#define CF8_BDF(cf8)     (  ((cf8) & 0x00ffff00) >> 8)
>> -#define CF8_ADDR_LO(cf8) (   (cf8) & 0x000000fc)
>> -#define CF8_ADDR_HI(cf8) (  ((cf8) & 0x0f000000) >> 16)
>> -#define CF8_ENABLED(cf8) (!!((cf8) & 0x80000000))
>> +#define CF8_BDF(cf8)     (  ((cf8) & 0x00ffff00U) >> 8)
>> +#define CF8_ADDR_LO(cf8) (   (cf8) & 0x000000fcU)
>> +#define CF8_ADDR_HI(cf8) (  ((cf8) & 0x0f000000U) >> 16)
>> +#define CF8_ENABLED(cf8) (!!((cf8) & 0x80000000U))
>>   
>>   #define IS_SNB_GFX(id) (id == 0x01068086 || id == 0x01168086 \
>>                           || id == 0x01268086 || id == 0x01028086 \
>> diff --git a/xen/arch/x86/include/asm/x86-defns.h b/xen/arch/x86/include/asm/x86-defns.h
>> index 5838631ef6..48d7a3b7af 100644
>> --- a/xen/arch/x86/include/asm/x86-defns.h
>> +++ b/xen/arch/x86/include/asm/x86-defns.h
>> @@ -30,17 +30,17 @@
>>   /*
>>    * Intel CPU flags in CR0
>>    */
>> -#define X86_CR0_PE              0x00000001 /* Enable Protected Mode    (RW) */
>> -#define X86_CR0_MP              0x00000002 /* Monitor Coprocessor      (RW) */
>> -#define X86_CR0_EM              0x00000004 /* Require FPU Emulation    (RO) */
>> -#define X86_CR0_TS              0x00000008 /* Task Switched            (RW) */
>> -#define X86_CR0_ET              0x00000010 /* Extension type           (RO) */
>> -#define X86_CR0_NE              0x00000020 /* Numeric Error Reporting  (RW) */
>> -#define X86_CR0_WP              0x00010000 /* Supervisor Write Protect (RW) */
>> -#define X86_CR0_AM              0x00040000 /* Alignment Checking       (RW) */
>> -#define X86_CR0_NW              0x20000000 /* Not Write-Through        (RW) */
>> -#define X86_CR0_CD              0x40000000 /* Cache Disable            (RW) */
>> -#define X86_CR0_PG              0x80000000 /* Paging                   (RW) */
>> +#define X86_CR0_PE              _AC(0x00000001, UL) /* Enable Protected Mode    (RW) */
>> +#define X86_CR0_MP              _AC(0x00000002, UL) /* Monitor Coprocessor      (RW) */
>> +#define X86_CR0_EM              _AC(0x00000004, UL) /* Require FPU Emulation    (RO) */
>> +#define X86_CR0_TS              _AC(0x00000008, UL) /* Task Switched            (RW) */
>> +#define X86_CR0_ET              _AC(0x00000010, UL) /* Extension type           (RO) */
>> +#define X86_CR0_NE              _AC(0x00000020, UL) /* Numeric Error Reporting  (RW) */
>> +#define X86_CR0_WP              _AC(0x00010000, UL) /* Supervisor Write Protect (RW) */
>> +#define X86_CR0_AM              _AC(0x00040000, UL) /* Alignment Checking       (RW) */
>> +#define X86_CR0_NW              _AC(0x20000000, UL) /* Not Write-Through        (RW) */
>> +#define X86_CR0_CD              _AC(0x40000000, UL) /* Cache Disable            (RW) */
>> +#define X86_CR0_PG              _AC(0x80000000, UL) /* Paging                   (RW) */
>   
> While "UL" here instead of "U"? They are all 32-bit values.

Initially U was used, then I've received the following indication
(https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02308.html):

	CR0 being a 64-bit register, I consider this risky. Imo either
	UL needs to be used as suffix, or the change needs limiting to
	just PG (and even then perhaps better using UL).

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 07:54:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 07:54:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610246.949576 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8KU-0000u0-H2; Fri, 29 Sep 2023 07:54:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610246.949576; Fri, 29 Sep 2023 07:54:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8KU-0000tt-Cu; Fri, 29 Sep 2023 07:54:30 +0000
Received: by outflank-mailman (input) for mailman id 610246;
 Fri, 29 Sep 2023 07:54:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m+YX=FN=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qm8KT-0000tn-9V
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 07:54:29 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6a164f55-5e9d-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 09:54:28 +0200 (CEST)
Received: from [192.168.1.9] (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id E01D54EE0739;
 Fri, 29 Sep 2023 09:54:26 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6a164f55-5e9d-11ee-878b-cb3800f73035
Message-ID: <5d42e276-67ca-4f56-910f-d2c95a91de34@bugseng.com>
Date: Fri, 29 Sep 2023 09:54:26 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
To: Stefano Stabellini <sstabellini@kernel.org>,
 Jan Beulich <jbeulich@suse.com>
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>,
 Wei Liu <wl@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?=
 <roger.pau@citrix.com>, Doug Goldstein <cardoe@cardoe.com>,
 Bertrand Marquis <bertrand.marquis@arm.com>,
 Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>,
 xen-devel@lists.xenproject.org
References: <cover.1694510856.git.simone.ballarin@bugseng.com>
 <b62205a1-885b-ea4e-3ce2-7ad58cfc938d@suse.com>
 <f1759081-eb18-4597-82b6-d7d9ee1754ab@bugseng.com>
 <e0ff3307-99ee-7740-bc5f-52dd7f589057@suse.com>
 <c2b10554-673c-4452-a35c-0d2f314e8ad2@bugseng.com>
 <f0cd8400-5e37-6704-75ce-d965540bc2b7@suse.com>
 <alpine.DEB.2.22.394.2309281515570.1996340@ubuntu-linux-20-04-desktop>
Content-Language: en-US
From: Simone Ballarin <simone.ballarin@bugseng.com>
Organization: BUGSENG
In-Reply-To: <alpine.DEB.2.22.394.2309281515570.1996340@ubuntu-linux-20-04-desktop>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 29/09/23 00:24, Stefano Stabellini wrote:
> On Thu, 28 Sep 2023, Jan Beulich wrote:
>> On 28.09.2023 15:17, Simone Ballarin wrote:
>>> On 28/09/23 14:51, Jan Beulich wrote:
>>>> On 28.09.2023 14:46, Simone Ballarin wrote:
>>>>> On 13/09/23 10:02, Jan Beulich wrote:
>>>>>> On 12.09.2023 11:36, Simone Ballarin wrote:
>>>>>>> Add or move inclusion guards to address violations of
>>>>>>> MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
>>>>>>> to prevent the contents of a header file being included more than
>>>>>>> once").
>>>>>>>
>>>>>>> Inclusion guards must appear at the beginning of the headers
>>>>>>> (comments are permitted anywhere) and the #if directive cannot
>>>>>>> be used for other checks.
>>>>>>>
>>>>>>> Simone Ballarin (10):
>>>>>>>      misra: add deviation for headers that explicitly avoid guards
>>>>>>>      misra: modify deviations for empty and generated headers
>>>>>>>      misra: add deviations for direct inclusion guards
>>>>>>>      xen/arm: address violations of MISRA C:2012 Directive 4.10
>>>>>>>      xen/x86: address violations of MISRA C:2012 Directive 4.10
>>>>>>>      x86/EFI: address violations of MISRA C:2012 Directive 4.10
>>>>>>>      xen/common: address violations of MISRA C:2012 Directive 4.10
>>>>>>>      xen/efi: address violations of MISRA C:2012 Directive 4.10
>>>>>>>      xen: address violations of MISRA C:2012 Directive 4.10
>>>>>>>      x86/asm: address violations of MISRA C:2012 Directive 4.10
>>>>>>
>>>>>> Just to mention it here again for the entire series, seeing that despite
>>>>>> my earlier comments to this effect a few R-b have arrived: If private
>>>>>> headers need to gain guards (for, imo, no real reason), we first need to
>>>>>> settle on a naming scheme for these guards, such that guards used in
>>>>>> private headers aren't at risk of colliding with ones used headers
>>>>>> living in one of the usual include directories. IOW imo fair parts of
>>>>>> this series may need redoing.
>>>>>>
>>>>>> Jan
>>>>>>
>>>>>
>>>>> My proposal is:
>>>>> - the relative path from "xen/arch" for files in this directory
>>>>>      (i.e. X86_X86_X86_MMCONFIG_H for "xen/arch/x86/x86_64/mmconfig.h";
>>>>
>>>> X86_X86_64_MMCONFIG_H that is?
>>>>
>>>> Yet then this scheme won't hold for xen/arch/include/asm/... ? It's also
>>>> not clear whether you're deliberately omitting leading/trailing underscores
>>>> here, which may be a way to distinguish private from global headers.
>>>
>>> Each name that begins with a double or single underscore (__, _)
>>> followed by an uppercase letter is reserved. Using a reserved identifier
>>> is an undefined-b.
>>>
>>> I would be better to avoid them.
>>
>> I'm with you about avoiding them, except that we use such all over the
>> place. Taking this together with ...
>>
>>>>> - for the others, the entire path.
>>>>
>>>> What exactly is "entire" here?
>>>
>>> Let me try again.
>>>
>>> If we are inside xen/arch the relative path starting from this directory:
>>>     | xen/arch/x86/include/asm/compat.h
>>>     X86_INCLUDE_ASM_COMPAT_H
>>>
>>> For xen/include, the current convention.
>>> Maybe, in a future patch, we can consider removing the leading _.
>>>
>>> For the others, the relative path after xen:
>>>     | xen/common/efi/efi.h
>>>     COMMON_EFI_EFI_H
>>
>> ... this you're effectively suggesting to change all existing guards.
>> That's an option, but likely not a preferred one. Personally I'd prefer
>> if in particular the headers in xen/include/ and in xen/arch/*include/
>> didn't needlessly include _INCLUDE_ in their guard names.
>>
>> I'm really curious what others think.
> 
> If it is a MISRA requirement to avoid names that begin with single or
> double underscore, then I think we should bite the bullet and change all
> guard names, taking the opportunity to make them consistent.
> 

Yes, it is.

Rule 21.2, found in Set3, addresses this Undef.-b.:
A reserved identifier or reserved macro name shall not be declared.

> If it is not a MISRA requirement, then I think we should go for the path
> of least resistance and try to make the smallest amount of changes
> overall, which seems to be:
> 
> - for xen/include/blah.h, __BLAH_H__
> - for xen/arch/arm/asm/include/blah.h, __ASM_ARM_BLAH_H__
> - for xen/arch/x86/asm/include/blah.h, it is far less consistent, maybe __ASM_X86_BLAH_H__ ?

-- 
Simone Ballarin, M.Sc.

Field Application Engineer, BUGSENG (https://bugseng.com)



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 07:59:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 07:59:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610251.949585 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Ot-0001Vm-0x; Fri, 29 Sep 2023 07:59:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610251.949585; Fri, 29 Sep 2023 07:59:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Os-0001Vf-U6; Fri, 29 Sep 2023 07:59:02 +0000
Received: by outflank-mailman (input) for mailman id 610251;
 Fri, 29 Sep 2023 07:59:01 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qm8Or-0001VT-Aj
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 07:59:01 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm8Oq-00007U-Up; Fri, 29 Sep 2023 07:59:00 +0000
Received: from 54-240-197-232.amazon.com ([54.240.197.232]
 helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm8Oq-0002Zh-L0; Fri, 29 Sep 2023 07:59:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:Message-Id:Date:
	Subject:Cc:To:From; bh=iO+ntqZZAhDsHeLWQe9395Aok6MQcB2166OXkuds7pY=; b=sHjfwF
	uU0A2ZILwQ4ED65jkKApLEZE5sMNveoukDnz9Vbud3JXK2NkVKMkE+5CHM0B+khTgRHZ126Vm9Suo
	hKVywek62GZ3qss0s3XrOR/4Y8NqZanloVwUa6P66oGvm6Qkjk+fuhNTfDICArSP3MQocbJELIaT2
	Ni1tIWcCyEk=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 0/2] Prepare the tree for Xen 4.18 RC1
Date: Fri, 29 Sep 2023 08:58:55 +0100
Message-Id: <20230929075857.87092-1-julien@xen.org>
X-Mailer: git-send-email 2.40.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Julien Grall <jgrall@amazon.com>

Hi all,

This small series is to prepare the tree for Xen 4.18 RC1.

Cheers,

Julien Grall (2):
  Config.mk pin QEMU_UPSTREAM_REVISION (prep for Xen 4.18 RC1)
  Update Xen version to 4.18-rc

 Config.mk    |  2 +-
 README       | 16 ++++++++--------
 SUPPORT.md   |  2 +-
 xen/Makefile |  2 +-
 4 files changed, 11 insertions(+), 11 deletions(-)

-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 07:59:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 07:59:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610252.949590 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Ot-0001ZB-9z; Fri, 29 Sep 2023 07:59:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610252.949590; Fri, 29 Sep 2023 07:59:03 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Ot-0001Yz-5a; Fri, 29 Sep 2023 07:59:03 +0000
Received: by outflank-mailman (input) for mailman id 610252;
 Fri, 29 Sep 2023 07:59:02 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qm8Os-0001VZ-GM
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 07:59:02 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm8Os-00007r-77; Fri, 29 Sep 2023 07:59:02 +0000
Received: from 54-240-197-232.amazon.com ([54.240.197.232]
 helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm8Or-0002Zh-Tw; Fri, 29 Sep 2023 07:59:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References:
	In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	bh=yU0MsHHePNZzyX4DJE1iFsvAuBlXPDpigjF24FFvtBc=; b=zgNOmmUPQRp5qzL1Z10PTxfBKB
	XePsUJgH6KbxD8XRkSyvmK7DivKNnd1M9FZHNasW44QdP7WB29iD/Sm2IXqG0i08CHTUUdbA9bOeM
	1g2kt+6/Sm9+WzBXPu1aiL6S+teNEVjP2iKLSxO1AffrLaN6+9kxxof4knjhDudDycbc=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 1/2] Config.mk pin QEMU_UPSTREAM_REVISION (prep for Xen 4.18 RC1)
Date: Fri, 29 Sep 2023 08:58:56 +0100
Message-Id: <20230929075857.87092-2-julien@xen.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20230929075857.87092-1-julien@xen.org>
References: <20230929075857.87092-1-julien@xen.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Julien Grall <jgrall@amazon.com>

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 Config.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Config.mk b/Config.mk
index 29c29f8d7fb9..000cf06d418f 100644
--- a/Config.mk
+++ b/Config.mk
@@ -223,7 +223,7 @@ OVMF_UPSTREAM_URL ?= https://xenbits.xen.org/git-http/ovmf.git
 OVMF_UPSTREAM_REVISION ?= ba91d0292e593df8528b66f99c1b0b14fadc8e16
 
 QEMU_UPSTREAM_URL ?= https://xenbits.xen.org/git-http/qemu-xen.git
-QEMU_UPSTREAM_REVISION ?= master
+QEMU_UPSTREAM_REVISION ?= 0df9387c8983e1b1e72d8c574356f572342c03e6
 
 MINIOS_UPSTREAM_URL ?= https://xenbits.xen.org/git-http/mini-os.git
 MINIOS_UPSTREAM_REVISION ?= 5bcb28aaeba1c2506a82fab0cdad0201cd9b54b3
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 07:59:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 07:59:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610253.949605 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Ov-00020E-IE; Fri, 29 Sep 2023 07:59:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610253.949605; Fri, 29 Sep 2023 07:59:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Ov-000207-F3; Fri, 29 Sep 2023 07:59:05 +0000
Received: by outflank-mailman (input) for mailman id 610253;
 Fri, 29 Sep 2023 07:59:04 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qm8Ou-0001xN-4o
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 07:59:04 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm8Ot-000083-DJ; Fri, 29 Sep 2023 07:59:03 +0000
Received: from 54-240-197-232.amazon.com ([54.240.197.232]
 helo=dev-dsk-jgrall-1b-035652ec.eu-west-1.amazon.com)
 by xenbits.xenproject.org with esmtpsa
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm8Ot-0002Zh-5J; Fri, 29 Sep 2023 07:59:03 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:MIME-Version:References:
	In-Reply-To:Message-Id:Date:Subject:Cc:To:From;
	bh=FOdLbJYKeSslSGIaMrvCRYHWhhpxx90C/bQZ5zISIQI=; b=u/0jA1qVIXVS8zEwMhlCOzZqjX
	r01CfJlf3yA0+Z2vNgifuX11nupvNkqcKW2STarnuJkS+jHpnWFxGo5qF75mhqaHi+PW8mfTk0NNN
	7xcKrEchO0eJ7ngUIyfZWjnEHK/Jx1mwKzfbMNLS/0CmlXjR9D7wjY9qXUXxr6jDOEmc=;
From: Julien Grall <julien@xen.org>
To: xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com,
	Julien Grall <jgrall@amazon.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH 2/2] Update Xen version to 4.18-rc
Date: Fri, 29 Sep 2023 08:58:57 +0100
Message-Id: <20230929075857.87092-3-julien@xen.org>
X-Mailer: git-send-email 2.40.1
In-Reply-To: <20230929075857.87092-1-julien@xen.org>
References: <20230929075857.87092-1-julien@xen.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

From: Julien Grall <jgrall@amazon.com>

Signed-off-by: Julien Grall <jgrall@amazon.com>
---
 README       | 16 ++++++++--------
 SUPPORT.md   |  2 +-
 xen/Makefile |  2 +-
 3 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/README b/README
index a491c8dce55b..f45e1ef1cdca 100644
--- a/README
+++ b/README
@@ -1,11 +1,11 @@
-###############################################
-__  __            _  _    _  ___
-\ \/ /___ _ __   | || |  / |( _ )
- \  // _ \ '_ \  | || |_ | |/ _ \
- /  \  __/ | | | |__   _|| | (_) |
-/_/\_\___|_| |_|    |_|(_)_|\___/
-
-###############################################
+#################################################
+                  _  _    _  ___
+__  _____ _ __   | || |  / |( _ )       _ __ ___
+\ \/ / _ \ '_ \  | || |_ | |/ _ \ _____| '__/ __|
+ >  <  __/ | | | |__   _|| | (_) |_____| | | (__
+/_/\_\___|_| |_|    |_|(_)_|\___/      |_|  \___|
+
+#################################################
 
 https://www.xen.org/
 
diff --git a/SUPPORT.md b/SUPPORT.md
index 3461f5cf2fe3..44dbd4f19040 100644
--- a/SUPPORT.md
+++ b/SUPPORT.md
@@ -9,7 +9,7 @@ for the definitions of the support status levels etc.
 
 # Release Support
 
-    Xen-Version: 4.18-unstable
+    Xen-Version: 4.18-rc
     Initial-Release: n/a
     Supported-Until: TBD
     Security-Support-Until: Unreleased - not yet security-supported
diff --git a/xen/Makefile b/xen/Makefile
index 2dc5e3526de9..fd0e63d29efb 100644
--- a/xen/Makefile
+++ b/xen/Makefile
@@ -6,7 +6,7 @@ this-makefile := $(call lastword,$(MAKEFILE_LIST))
 # All other places this is stored (eg. compile.h) should be autogenerated.
 export XEN_VERSION       = 4
 export XEN_SUBVERSION    = 18
-export XEN_EXTRAVERSION ?= -unstable$(XEN_VENDORVERSION)
+export XEN_EXTRAVERSION ?= -rc$(XEN_VENDORVERSION)
 export XEN_FULLVERSION   = $(XEN_VERSION).$(XEN_SUBVERSION)$(XEN_EXTRAVERSION)
 -include xen-version
 
-- 
2.40.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:04:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:04:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610278.949627 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Tu-0005Gk-R9; Fri, 29 Sep 2023 08:04:14 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610278.949627; Fri, 29 Sep 2023 08:04:14 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Tu-0005Gd-Ny; Fri, 29 Sep 2023 08:04:14 +0000
Received: by outflank-mailman (input) for mailman id 610278;
 Fri, 29 Sep 2023 08:04:14 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=sDS6=FN=suse.com=jgross@srs-se1.protection.inumbo.net>)
 id 1qm8Tu-00058n-8z
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:04:14 +0000
Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id c6707334-5e9e-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 10:04:12 +0200 (CEST)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id CC6742184D;
 Fri, 29 Sep 2023 08:04:11 +0000 (UTC)
Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 86B051390A;
 Fri, 29 Sep 2023 08:04:11 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap2.suse-dmz.suse.de with ESMTPSA id Ou+DH/uEFmUeXwAAMHmgww
 (envelope-from <jgross@suse.com>); Fri, 29 Sep 2023 08:04:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c6707334-5e9e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1695974651; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:content-type:content-type:
	 in-reply-to:in-reply-to:references:references:autocrypt:autocrypt;
	bh=/tHC8trRAXcfxn+jVNWqLxf5kYCfD7YhLTzjmOqarr0=;
	b=jkiFMqvsJ3acfk5nQbURPpwVttgJsVv/RXyeY9KfHjx3vsvoc0na1TqzkXCfYTN3fyvvdU
	WXW9sQt8AQLvrlpZXHUhnVyC03kcpq42duJirxG/cb71/3Gh7BbS86mplx/v59ZmPUxcNh
	mkb5RIXrmA4WNN2Hxx0XRGdKVIALNVk=
Message-ID: <a0d6f669-1e1d-47ec-9670-a9e5c3d7f130@suse.com>
Date: Fri, 29 Sep 2023 10:04:10 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 2/2] Update Xen version to 4.18-rc
Content-Language: en-US
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com, Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <20230929075857.87092-1-julien@xen.org>
 <20230929075857.87092-3-julien@xen.org>
From: Juergen Gross <jgross@suse.com>
Autocrypt: addr=jgross@suse.com; keydata=
 xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB
 ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve
 dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ
 NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx
 XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB
 AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH
 CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh
 mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0
 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH
 kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc
 Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO
 RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy
 vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn
 sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa
 aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg
 w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS
 auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d
 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn
 fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g
 HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk
 QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6
 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw==
In-Reply-To: <20230929075857.87092-3-julien@xen.org>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------uQ6MOOQ0Tn05otOST8sjLUjP"

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------uQ6MOOQ0Tn05otOST8sjLUjP
Content-Type: multipart/mixed; boundary="------------p4Uwi0Pj2Q0xwWSxnKz30KOP";
 protected-headers="v1"
From: Juergen Gross <jgross@suse.com>
To: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com, Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Message-ID: <a0d6f669-1e1d-47ec-9670-a9e5c3d7f130@suse.com>
Subject: Re: [PATCH 2/2] Update Xen version to 4.18-rc
References: <20230929075857.87092-1-julien@xen.org>
 <20230929075857.87092-3-julien@xen.org>
In-Reply-To: <20230929075857.87092-3-julien@xen.org>

--------------p4Uwi0Pj2Q0xwWSxnKz30KOP
Content-Type: multipart/mixed; boundary="------------iFcsF1KuFoexZg5RutW3ZyWM"

--------------iFcsF1KuFoexZg5RutW3ZyWM
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

T24gMjkuMDkuMjMgMDk6NTgsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gRnJvbTogSnVsaWVu
IEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IEp1bGll
biBHcmFsbCA8amdyYWxsQGFtYXpvbi5jb20+DQo+IC0tLQ0KPiAgIFJFQURNRSAgICAgICB8
IDE2ICsrKysrKysrLS0tLS0tLS0NCj4gICBTVVBQT1JULm1kICAgfCAgMiArLQ0KPiAgIHhl
bi9NYWtlZmlsZSB8ICAyICstDQo+ICAgMyBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25z
KCspLCAxMCBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS9SRUFETUUgYi9SRUFE
TUUNCj4gaW5kZXggYTQ5MWM4ZGNlNTViLi5mNDVlMWVmMWNkY2EgMTAwNjQ0DQo+IC0tLSBh
L1JFQURNRQ0KPiArKysgYi9SRUFETUUNCj4gQEAgLTEsMTEgKzEsMTEgQEANCj4gLSMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQo+IC1fXyAgX18g
ICAgICAgICAgICBfICBfICAgIF8gIF9fXw0KPiAtXCBcLyAvX19fIF8gX18gICB8IHx8IHwg
IC8gfCggXyApDQo+IC0gXCAgLy8gXyBcICdfIFwgIHwgfHwgfF8gfCB8LyBfIFwNCj4gLSAv
ICBcICBfXy8gfCB8IHwgfF9fICAgX3x8IHwgKF8pIHwNCj4gLS9fL1xfXF9fX3xffCB8X3wg
ICAgfF98KF8pX3xcX19fLw0KPiAtDQo+IC0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIw0KPiArIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIw0KPiArICAgICAgICAgICAgICAgICAgXyAgXyAgICBfICBf
X18NCj4gK19fICBfX19fXyBfIF9fICAgfCB8fCB8ICAvIHwoIF8gKSAgICAgICBfIF9fIF9f
Xw0KPiArXCBcLyAvIF8gXCAnXyBcICB8IHx8IHxfIHwgfC8gXyBcIF9fX19ffCAnX18vIF9f
fA0KPiArID4gIDwgIF9fLyB8IHwgfCB8X18gICBffHwgfCAoXykgfF9fX19ffCB8IHwgKF9f
DQo+ICsvXy9cX1xfX198X3wgfF98ICAgIHxffChfKV98XF9fXy8gICAgICB8X3wgIFxfX198
DQo+ICsNCj4gKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMNCg0KSXMgaXQgb24gcHVycG9zZSB0byB1c2UgInhlbiIgaW5zdGVhZCBvZiAiWGVu
Ij8NCg0KDQpKdWVyZ2VuDQo=
--------------iFcsF1KuFoexZg5RutW3ZyWM
Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjri
oyspZKOBycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2
kaV2KL9650I1SJvedYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i
1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/B
BLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xqG7/377qptDmrk42GlSK
N4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR3Jvc3Mg
PGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsE
FgIDAQIeAQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4F
UGNQH2lvWAUy+dnyThpwdtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3Tye
vpB0CA3dbBQp0OW0fgCetToGIQrg0MbD1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u
+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbvoPHZ8SlM4KWm8rG+lIkGurq
qu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v5QL+qHI3EIP
tyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVy
Z2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJ
CAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4
RF7HoZhPVPogNVbC4YA6lW7DrWf0teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz7
8X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC/nuAFVGy+67q2DH8As3KPu0344T
BDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0LhITTd9jLzdDad1pQ
SToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLmXBK
7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkM
nQfvUewRz80hSnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMB
AgAjBQJTjHDXAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/
Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJnFOXgMLdBQgBlVPO3/D9R8LtF9DBAFPN
hlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1jnDkfJZr6jrbjgyoZHi
w/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0N51N5Jf
VRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwP
OoE+lotufe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK
/1xMI3/+8jbO0tsn1tqSEUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuZGU+wsB5BBMBAgAjBQJTjHDrAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgEC
F4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3g3OZUEBmDHVVbqMtzwlmNC4
k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5dM7wRqzgJpJ
wK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu
5D+jLRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzB
TNh30FVKK1EvmV2xAKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37Io
N1EblHI//x/e2AaIHpzK5h88NEawQsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6
AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpWnHIs98ndPUDpnoxWQugJ6MpMncr
0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZRwgnBC5mVM6JjQ5x
Dk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNVbVF
LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mm
we0icXKLkpEdIXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0I
v3OOImwTEe4co3c1mwARAQABwsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMv
Q/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEwTbe8YFsw2V/Buv6Z4Mysln3nQK5ZadD
534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1vJzQ1fOU8lYFpZXTXIH
b+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8VGiwXvT
yJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqc
suylWsviuGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5B
jR/i1DG86lem3iBDXzXsZDn8R38=3D
=3D2wuH
-----END PGP PUBLIC KEY BLOCK-----

--------------iFcsF1KuFoexZg5RutW3ZyWM--

--------------p4Uwi0Pj2Q0xwWSxnKz30KOP--

--------------uQ6MOOQ0Tn05otOST8sjLUjP
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature.asc"

-----BEGIN PGP SIGNATURE-----

wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmUWhPsFAwAAAAAACgkQsN6d1ii/Ey+Q
mAf/SSCZ5K9YU2JPKNHjBcSpqWI2kqFRMTppDRbtlGT9m31mh9PvqUA5d2c71gjgjyJZIdIFbFfU
4YpaHwEpSQLU4NH9ztAL88VA1pkYr+sGI3PpS4laBWQR943ptZ9HdNDrG7OSuMewxUBVdf6Gn2B/
mtgUp2qSOtq2jcMnWQa5LLZ+8dRMJoWhQ9p4rGN9hY5amd91yriyvQZAI9Qer57h9UzMzvLWPHRk
GQnj/cHrcweW9270c7iEfYr+xBeh4XzINULP6V6zPIMFM9H/Ows8EEfj7V/h6rOGAfdqO9V3Pg5M
xELX+T2WceJLPB9cME9wqSAlZYQTDtQonLnIbb8SpA==
=AvMr
-----END PGP SIGNATURE-----

--------------uQ6MOOQ0Tn05otOST8sjLUjP--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:04:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:04:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610288.949636 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8UB-0005h1-3q; Fri, 29 Sep 2023 08:04:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610288.949636; Fri, 29 Sep 2023 08:04:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8UB-0005gu-0n; Fri, 29 Sep 2023 08:04:31 +0000
Received: by outflank-mailman (input) for mailman id 610288;
 Fri, 29 Sep 2023 08:04:30 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xPTL=FN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qm8UA-00053y-5B
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:04:30 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2060b.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::60b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id d0413439-5e9e-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 10:04:29 +0200 (CEST)
Received: from AS9PR07CA0043.eurprd07.prod.outlook.com (2603:10a6:20b:46b::6)
 by DU0PR08MB7437.eurprd08.prod.outlook.com (2603:10a6:10:354::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.36; Fri, 29 Sep
 2023 08:04:25 +0000
Received: from AM7EUR03FT054.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:46b:cafe::24) by AS9PR07CA0043.outlook.office365.com
 (2603:10a6:20b:46b::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.14 via Frontend
 Transport; Fri, 29 Sep 2023 08:04:24 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT054.mail.protection.outlook.com (100.127.140.133) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.25 via Frontend Transport; Fri, 29 Sep 2023 08:04:24 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Fri, 29 Sep 2023 08:04:24 +0000
Received: from 58408885f934.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 B49F8CE0-5AD1-4739-831B-6B47AB1E2F4E.1; 
 Fri, 29 Sep 2023 08:04:16 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 58408885f934.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 08:04:16 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS1PR08MB7425.eurprd08.prod.outlook.com (2603:10a6:20b:4c6::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.37; Fri, 29 Sep
 2023 08:04:14 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Fri, 29 Sep 2023
 08:04:14 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: d0413439-5e9e-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Ikr0SFHNN5ALAmZlj5YnTwAadTRTjJyL66PE3loUSeg=;
 b=rjsd+XEtzox9oTx6T/Y5AgfheBHgxbQlkQ0NVWaDT6+qf2CYJbrXtC1H1LyQbdGOeEc1GHM87gJcQpmcmH4Epy8B0EVbsW7B7xi1Aui2Qwi5tiN0gKj56bK0crDfWn5InmRsi8XlD0ySyqsnpHOwU5l1dkbTLpfGb83c59B0zfY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 7c9b3ec389d54f0b
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=W21egUw57bAsxm96NmhPUBJ2mbNuH+RK4fFTg/QUNlG2edm+dC+xlBFs8Fx2zqKfNx8AqlZOu7OOIymOhM8zg+OcpA71qsNSMvUapoSP38+KaGxab6qOQefeIVSB0owTNdkRZ6OHprhPkcsNaxmf/RtWjaUFnMHYpAXUGNBzmVPJ1QfqcACXRHheVl5iooqd4DY1E2nI/kDkh/3Sjf/edqF6FK4vabdf0k5tu4n/I2XOoRHcQh1q7nP0APRe/DgVyzRdhmuT1UGziiW8eKeyGU4CJNyhAQApKB8hp8ycyfkBg3OG1SaM2h18sWiy5yNYQ/61MnA+L2phLp2P7W9w3w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=Ikr0SFHNN5ALAmZlj5YnTwAadTRTjJyL66PE3loUSeg=;
 b=QQjGi+Ji7tw7BHzbHWO1iPi/XCtxlvp5KmCJx+UKML7f0fdxPHDbc9jEaMIHspefzYg1A4cCjn/svR4rtNzVwljrsBUcd+XDjKKBxPWHFYU/MfJVC+Ys8jP8w+InD6Gl6GjAlzub1+fXtDoBfQ4d4QSUdp3zU0xKj12mfGGYt5MW4PFv52FvAACO/U/0xi9YinE7hvvSA5vNfZgwvXQLouPcrDVhGH0VNs2JqSgUFEYQnnmA9JLxkENkUo8fzAKbug2WZJEgM4v33asHjJUEcM9iKAbm73bjdaObchKbo9SqpsIHF/2tQYv6mctaFPNmn684kX5xTNFP3OfIPJONDA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=Ikr0SFHNN5ALAmZlj5YnTwAadTRTjJyL66PE3loUSeg=;
 b=rjsd+XEtzox9oTx6T/Y5AgfheBHgxbQlkQ0NVWaDT6+qf2CYJbrXtC1H1LyQbdGOeEc1GHM87gJcQpmcmH4Epy8B0EVbsW7B7xi1Aui2Qwi5tiN0gKj56bK0crDfWn5InmRsi8XlD0ySyqsnpHOwU5l1dkbTLpfGb83c59B0zfY=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Julien Grall
	<jgrall@amazon.com>, Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 1/2] Config.mk pin QEMU_UPSTREAM_REVISION (prep for Xen
 4.18 RC1)
Thread-Topic: [PATCH 1/2] Config.mk pin QEMU_UPSTREAM_REVISION (prep for Xen
 4.18 RC1)
Thread-Index: AQHZ8qraFalO+9fmeUy7aHVwsSZPHLAxca2A
Date: Fri, 29 Sep 2023 08:04:11 +0000
Message-ID: <9E26D4C2-4592-427F-8A97-D73C7E0AD791@arm.com>
References: <20230929075857.87092-1-julien@xen.org>
 <20230929075857.87092-2-julien@xen.org>
In-Reply-To: <20230929075857.87092-2-julien@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS1PR08MB7425:EE_|AM7EUR03FT054:EE_|DU0PR08MB7437:EE_
X-MS-Office365-Filtering-Correlation-Id: 55a7b695-5d30-4408-1b76-08dbc0c2b1e3
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 AMa+bC96AExTQ0P4U6pHB84WfzIQZ4QlqW0aSpDe9+IKjOn4bVbfH3JIY68xHZlamnXMLbeec8DBOPHJdAp1B82veWCtgsW1KoypnXV82D45PtHR4mSfG5L7Czd0GFg77kAp8jAh3StwMdEFZGppXVAjduuukCsME9po0FmTi5O29X2unvC0Q0aa6smCvuse5kh1gFtU+d+wQtvkYOPzI7ryVuKuOvmbBUXNDfojmOdXZAr2nWdoFdJvDFcl1PLYreQ7NFrnuw6teH0ot1PKIMeIJvzlF2f1VpSHUvnTDtNrNmMSmHf1krFMjV0QYwiZBNYSbCyWjHonEH/U2XwkzvhyQfWYBy8EHBtTWeeMSnItelEhgDdzkAzlKwqwVGqr0iQ5g+6dhfjoVXu+EVnO2ZSH5cmqqVepQ9fzLdxASq6eD2Q5IdOcDY9l1o6WWtIMNPJUA4V3SbFz8PbyK5gT78kKGd7U9ucHqRP/aRI1lI2p1Y9zbujHyPItAwKl0PRCpfcarMpRBR9o3uZto0PwgIKRSx5g4csUtXOk5wfsNUTqyJMnhv63ldBLgBYA01/g6/BRBcoFrp09nyaU26AQ42GRgmiw3mCDx2ELyJYCVvyACZW3b/V8TFyR7dBvkkaAx1cwIo2kfR+4iWXRpRPGwbqLQaI47rVXRiTQrwk2u7hvxVv4qoTSBWtX+voJITmw
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(396003)(136003)(366004)(39860400002)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(36756003)(91956017)(76116006)(71200400001)(6916009)(54906003)(66476007)(66446008)(64756008)(316002)(66946007)(478600001)(66556008)(41300700001)(33656002)(6666004)(86362001)(122000001)(38100700002)(38070700005)(6512007)(2616005)(6506007)(6486002)(53546011)(26005)(8936002)(4744005)(8676002)(4326008)(966005)(2906002)(5660300002)(83380400001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <0FD5200A599188468BC0C1152B0F6D41@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7425
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	167912d6-3124-481a-b76f-08dbc0c2aa7e
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	Dk8zv5AoV5jRiOEJbhKNeXsY34c+ZZRLhY18xg08OmdD1f2T8yPMQzsQqKDCXC38gKObJnlrwXHsU47cUZSE4L4r4AQZ0/1QJ650t3vvL3c/Bcf3h3Zuq0qVgFxqgYikpfgrtTy7rCHiXC+hOpKHiLIxKlpCVaK89zu4njrNAG47X3hBKARjvI6ubTLzODmziGQTocVvLduyYCesnpmEsex+1yCngw8M796FwaQ2osE9WyK8auVpxWbVNR30s7a5nJGw/r9NmQkgY/NfId299fcH6OkVFBcPovC8vvuAxcny80fsfgVpXPiRqyScmF0l2ccFqeVL08LRnICDjZYp8Vu+/0wzQcZdIHIn7YuRpGKf9YSZZKSs1jahKN3eMXTkhjmDjwFAGYsz1d5eThFhc9tEhZlm9jlOX6uRYBIsvIaGlqmkoEtbzHCOcRbRafOnTSUr4DwkoDaT0C8QTl/crllEdQ1nwqP6voPRT1v3veDS7Emf/1KcD/5zZbc317EMfc3J04MPVVm5qTLn9Naoso0qMshzqDp3zoPGBi12tEe8nAr1wntwOHyrsufLYWZnU0c4q1JO2UEBRe+3Hky8nYbF5K2k8htO1jN7kAZkS77wGg8Ti3/6x77rtI9pWQIbfpayFNlBFeVTRD4QZk0y7YNq4NWrPFP3Uh4oW8UH1D2309WYek8uMA5lR8edoPlnes9rvuLB4j3Agcg6UsAQb3BQESkiZu1pYuVpkiCWmlNr+JCVb2AfYA0yOALLWCh9OkyQ8Vi+nyzd8QT71UUOVg==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(396003)(39860400002)(376002)(346002)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(82310400011)(46966006)(40470700004)(36840700001)(6512007)(40460700003)(6486002)(6506007)(53546011)(6666004)(83380400001)(82740400003)(86362001)(81166007)(356005)(33656002)(47076005)(36860700001)(36756003)(2616005)(40480700001)(26005)(336012)(4744005)(2906002)(5660300002)(8936002)(316002)(70206006)(70586007)(54906003)(8676002)(4326008)(41300700001)(966005)(478600001)(6862004);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 08:04:24.3071
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 55a7b695-5d30-4408-1b76-08dbc0c2b1e3
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT054.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7437

Hi Julien,

> On Sep 29, 2023, at 15:58, Julien Grall <julien@xen.org> wrote:
>=20
> From: Julien Grall <jgrall@amazon.com>
>=20
> Signed-off-by: Julien Grall <jgrall@amazon.com>

Thanks for doing the changes,

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

> ---
> Config.mk | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>=20
> diff --git a/Config.mk b/Config.mk
> index 29c29f8d7fb9..000cf06d418f 100644
> --- a/Config.mk
> +++ b/Config.mk
> @@ -223,7 +223,7 @@ OVMF_UPSTREAM_URL ?=3D https://xenbits.xen.org/git-ht=
tp/ovmf.git
> OVMF_UPSTREAM_REVISION ?=3D ba91d0292e593df8528b66f99c1b0b14fadc8e16
>=20
> QEMU_UPSTREAM_URL ?=3D https://xenbits.xen.org/git-http/qemu-xen.git
> -QEMU_UPSTREAM_REVISION ?=3D master
> +QEMU_UPSTREAM_REVISION ?=3D 0df9387c8983e1b1e72d8c574356f572342c03e6
>=20
> MINIOS_UPSTREAM_URL ?=3D https://xenbits.xen.org/git-http/mini-os.git
> MINIOS_UPSTREAM_REVISION ?=3D 5bcb28aaeba1c2506a82fab0cdad0201cd9b54b3
> --=20
> 2.40.1
>=20



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:04:59 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:04:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610297.949647 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Ud-0006e8-Er; Fri, 29 Sep 2023 08:04:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610297.949647; Fri, 29 Sep 2023 08:04:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Ud-0006dn-CC; Fri, 29 Sep 2023 08:04:59 +0000
Received: by outflank-mailman (input) for mailman id 610297;
 Fri, 29 Sep 2023 08:04:57 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xPTL=FN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qm8Ub-00058n-P9
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:04:57 +0000
Received: from EUR01-DB5-obe.outbound.protection.outlook.com
 (mail-db5eur01on061a.outbound.protection.outlook.com
 [2a01:111:f400:fe02::61a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id e0666753-5e9e-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 10:04:56 +0200 (CEST)
Received: from AM6P192CA0093.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:8d::34)
 by AM0PR08MB5475.eurprd08.prod.outlook.com (2603:10a6:208:188::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Fri, 29 Sep
 2023 08:04:53 +0000
Received: from AM7EUR03FT061.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:209:8d:cafe::83) by AM6P192CA0093.outlook.office365.com
 (2603:10a6:209:8d::34) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Fri, 29 Sep 2023 08:04:53 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT061.mail.protection.outlook.com (100.127.140.72) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.21 via Frontend Transport; Fri, 29 Sep 2023 08:04:53 +0000
Received: ("Tessian outbound ee9c7f88acf7:v211");
 Fri, 29 Sep 2023 08:04:53 +0000
Received: from 2af6e0f5c819.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 D430F98A-20C4-4C31-88B2-EE22C433BD5A.1; 
 Fri, 29 Sep 2023 08:04:46 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2af6e0f5c819.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 08:04:46 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AS1PR08MB7425.eurprd08.prod.outlook.com (2603:10a6:20b:4c6::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.37; Fri, 29 Sep
 2023 08:04:42 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Fri, 29 Sep 2023
 08:04:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e0666753-5e9e-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rhBfNWNtiYtgtIk2Wn5roEu9eOCUXO/Wb8zE9Ygsd6o=;
 b=6LsUZX5faDF8E53mm3DUnQyP7v77ZYu2AsjKGiPjiZDuedqb1E1XWXR29Hb796JLhN1gReaJbBgTwgyRs5eE1fMgGCZVtB7VXnMn7eSmo4SueBTe2+Rc23J5/1++TCtKiq5sKwmBmlZUlXGtvHp7JdwgGosZAQvB5G9XbFkYLgk=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 349e0afc0b494f0d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=eWK7fDczO+PdxBTgSBjNEaZ1wxx7yAMNpmWL/uwGZAxTPVBXz05KFURsV9iLl+uGCMFb7UE4K3gjsMzVHly6yadQDu2sSyietF02mXh/2fnYf8qW5cPX+HasHTOPpUmnKlNBWtgw/tUYh1reO6S3mNiyM8UHhFo0ZUFXVVLvxjuG8gQTOyDZZxq57odpeqfKjj1569wIk8Z3RKS4cqTSH6mwMsGBZ2bH+1J4K5JyyQ/21Ele1XIs4JynPnFpt44+si9EByiI/zTzWmZ2rEa0TdbbZSPdCs2THNATPSe+n2EWyfF1gfnCBE1PxdRo2uC6eo2bZIcAlV3PVjU/DGsRCQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=rhBfNWNtiYtgtIk2Wn5roEu9eOCUXO/Wb8zE9Ygsd6o=;
 b=C/8BdxdhyMcYHVM0IqDQgZiF3EhQa1J046n5HG1zoqd2HiDzcTWIIJe5K7n5ifj5yV0D2iyia+lGUO11B2QrUKljYvDgLg//8gHU4oNNK6zIiminN+2+67GBAXshbQ7lJCyzO73mD4+PSPvTi2qQZ5lyVx9QjGNCEHpxk4Dun3BvlxNgrKzD/z/+J9pUD8UrOT9rbb/rDcICjsfhkO5X1qcRxK7o24gOUjwozqnUm7yhTgdMfNS8y0vkgh19nK7DomooR/XIAmMohXEJmzY+SPeWxXHZ/Q8TgJ7Hny6SmEXjUln2eGuJCYeCTxvAG/WoK2IpDoXRFII9T/jtzq/dJw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=rhBfNWNtiYtgtIk2Wn5roEu9eOCUXO/Wb8zE9Ygsd6o=;
 b=6LsUZX5faDF8E53mm3DUnQyP7v77ZYu2AsjKGiPjiZDuedqb1E1XWXR29Hb796JLhN1gReaJbBgTwgyRs5eE1fMgGCZVtB7VXnMn7eSmo4SueBTe2+Rc23J5/1++TCtKiq5sKwmBmlZUlXGtvHp7JdwgGosZAQvB5G9XbFkYLgk=
From: Henry Wang <Henry.Wang@arm.com>
To: Julien Grall <julien@xen.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Julien Grall
	<jgrall@amazon.com>, Andrew Cooper <andrew.cooper3@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, Stefano
 Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 2/2] Update Xen version to 4.18-rc
Thread-Topic: [PATCH 2/2] Update Xen version to 4.18-rc
Thread-Index: AQHZ8qrc61Z2/2x5F0+YOWbVm7G1MrAxcdIA
Date: Fri, 29 Sep 2023 08:04:42 +0000
Message-ID: <CADEE5AC-6414-4696-9B03-6608261D4FD1@arm.com>
References: <20230929075857.87092-1-julien@xen.org>
 <20230929075857.87092-3-julien@xen.org>
In-Reply-To: <20230929075857.87092-3-julien@xen.org>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AS1PR08MB7425:EE_|AM7EUR03FT061:EE_|AM0PR08MB5475:EE_
X-MS-Office365-Filtering-Correlation-Id: 40b1d08b-2bd0-4fac-2573-08dbc0c2c367
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 kMCA+tCFFIMU1ohEpdFch3pxihRQE9uycqr3FcC++KClrbvro/Q/oHlMLLrXs9fFOeJLpqWDLTTDXTlwmYdhd0LmsoHqbWmP9MoNdy7XhT9J/mZWFEQNHJDw8bSTDAVq2wjGY0bl6Mz01gq2uHHFoNzMWJHMsr6hg6srfMvWePX5I5bUu4T7PEk4KFffXtH780fyJXQxVYuQF4xzxyK1XbSkVsUUR03Bura3g8/HqrEnGxIZxBwtkXz5eAteuF1ShIfq9aaLKz7bpbaae/Lu4bm3fwzyopJKTKR10Lb0jDgpxjHBqWqyh/3V6HpqsJiAwSuhXOYwEQbDCVZBvcu8xp9ruVj0SE4YCHukmvvtD/sw8AZD/yyDFJgIAW6Airdy89r01Te/jMQrIUilMMas6ERlaW2FTCLpU17zmeFFj6YPx55Sv8Qd6wYJnBolqAsm+Cs/K+4qgHd5BQi1ry9risrOIlA1weIaaSXWhUL+igL3//ZKm63CERLnwz7HQ0FA66mFbNR+7ChGcTPcsoO1uFDRpQxRS3sPKacU6bivs5wgGVEWn0U30oVdPBJ9AWMwZmMGkU4Y26HHyWbg6JKhQY6aaKrqDAeTEWao0t6zOLITsjJvbVcfItZ/bhXEpv/p+StEy+SIxmTNFD3ko0mXbA==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(376002)(396003)(136003)(366004)(39860400002)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(36756003)(91956017)(76116006)(71200400001)(6916009)(54906003)(66476007)(66446008)(64756008)(316002)(66946007)(478600001)(66556008)(41300700001)(33656002)(86362001)(122000001)(38100700002)(38070700005)(6512007)(2616005)(6506007)(6486002)(53546011)(26005)(15650500001)(8936002)(8676002)(4326008)(966005)(2906002)(5660300002)(83380400001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <574166A349C4AE49A8E7ABE13766BE8F@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7425
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT061.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	642d02ea-26e1-422f-b158-08dbc0c2bccb
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	iGIFvkQ6b801IhOJ6+QpT86WW14Yas8bKNDf4DwL+PPWQIs8nPgGtst9tGAm/T8TVhbz/vijpYyK5WH4lDq6IQ5dcW4U5UT7yD+mW6pFqhm/8Rbd/qMKJPU2ra1Ka2B+sZgeOiW0NO2PuQBzwcBPoZhxERcGNn4GGh0cQwt6lG9fHAT0fBB0fp+RkGBWx3wnEK9AwSR33/UlucqxYMPRFLj4s1WuTKfepgIOZH+y08ZLAoanGRaVzbfOwp2BYfOmPyUoFWJcyETAi1LRHf8bf+vSHz3/6uqH5f8Npn6vfo/9ozQYflB5w8BbTOk0nQoz3XA7WPkH+HWbCN+oJ2GQSIr+/uWp1Jw9HfOW93hVdLALWAD8LcKTesIcHd76JJd7c+ESVi0Qm4T0Xe5UJfPuxWIj/vpg1HDHybQHO3poFd6wCVvN3hLmy8wgnixeVpF5pf9g7tpA9GEgl2wT/y/JgIqjpExTuPg6Dv7LM8kFayUocCndBM2wOjUXLrrKcoUNKLNBJy6dIxBh9eyO3vxB5bdHuh0sCbkVbdQxFTKW6TeAOEP4ojqZl5fNIbWFiYrhrWHUd6x0lGVXZZXki8q4JaGO26/j6cZbVlXQBVwdGq1SYXuu405E7ca/nOVUN7w0QiwRkyMyeuNEWrdJ7utvIJr1F3vQj+lpKIJSwFZC8Uw8CQ1J9Ng//ai+OFss/6KUO/5IeoapGdvzxDVPnwCJYW6gWO4y6NdRmuMUXWLelsA=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(396003)(39860400002)(376002)(136003)(230922051799003)(82310400011)(64100799003)(451199024)(186009)(1800799009)(36840700001)(40470700004)(46966006)(2906002)(40460700003)(86362001)(966005)(81166007)(36860700001)(33656002)(36756003)(5660300002)(53546011)(6506007)(6512007)(83380400001)(6486002)(82740400003)(478600001)(47076005)(40480700001)(356005)(6862004)(4326008)(8936002)(2616005)(8676002)(41300700001)(26005)(336012)(70586007)(15650500001)(316002)(70206006)(54906003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 08:04:53.6937
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 40b1d08b-2bd0-4fac-2573-08dbc0c2c367
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT061.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB5475

Hi Julien,

> On Sep 29, 2023, at 15:58, Julien Grall <julien@xen.org> wrote:
>=20
> From: Julien Grall <jgrall@amazon.com>
>=20
> Signed-off-by: Julien Grall <jgrall@amazon.com>

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry

> ---
> README       | 16 ++++++++--------
> SUPPORT.md   |  2 +-
> xen/Makefile |  2 +-
> 3 files changed, 10 insertions(+), 10 deletions(-)
>=20
> diff --git a/README b/README
> index a491c8dce55b..f45e1ef1cdca 100644
> --- a/README
> +++ b/README
> @@ -1,11 +1,11 @@
> -###############################################
> -__  __            _  _    _  ___
> -\ \/ /___ _ __   | || |  / |( _ )
> - \  // _ \ '_ \  | || |_ | |/ _ \
> - /  \  __/ | | | |__   _|| | (_) |
> -/_/\_\___|_| |_|    |_|(_)_|\___/
> -
> -###############################################
> +#################################################
> +                  _  _    _  ___
> +__  _____ _ __   | || |  / |( _ )       _ __ ___
> +\ \/ / _ \ '_ \  | || |_ | |/ _ \ _____| '__/ __|
> + >  <  __/ | | | |__   _|| | (_) |_____| | | (__
> +/_/\_\___|_| |_|    |_|(_)_|\___/      |_|  \___|
> +
> +#################################################
>=20
> https://www.xen.org/
>=20
> diff --git a/SUPPORT.md b/SUPPORT.md
> index 3461f5cf2fe3..44dbd4f19040 100644
> --- a/SUPPORT.md
> +++ b/SUPPORT.md
> @@ -9,7 +9,7 @@ for the definitions of the support status levels etc.
>=20
> # Release Support
>=20
> -    Xen-Version: 4.18-unstable
> +    Xen-Version: 4.18-rc
>     Initial-Release: n/a
>     Supported-Until: TBD
>     Security-Support-Until: Unreleased - not yet security-supported
> diff --git a/xen/Makefile b/xen/Makefile
> index 2dc5e3526de9..fd0e63d29efb 100644
> --- a/xen/Makefile
> +++ b/xen/Makefile
> @@ -6,7 +6,7 @@ this-makefile :=3D $(call lastword,$(MAKEFILE_LIST))
> # All other places this is stored (eg. compile.h) should be autogenerated=
.
> export XEN_VERSION       =3D 4
> export XEN_SUBVERSION    =3D 18
> -export XEN_EXTRAVERSION ?=3D -unstable$(XEN_VENDORVERSION)
> +export XEN_EXTRAVERSION ?=3D -rc$(XEN_VENDORVERSION)
> export XEN_FULLVERSION   =3D $(XEN_VERSION).$(XEN_SUBVERSION)$(XEN_EXTRAV=
ERSION)
> -include xen-version
>=20
> --=20
> 2.40.1
>=20
>=20



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:06:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:06:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610300.949657 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Vj-0007p7-OO; Fri, 29 Sep 2023 08:06:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610300.949657; Fri, 29 Sep 2023 08:06:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Vj-0007p0-Ll; Fri, 29 Sep 2023 08:06:07 +0000
Received: by outflank-mailman (input) for mailman id 610300;
 Fri, 29 Sep 2023 08:06:05 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>) id 1qm8Vh-0007lI-Mf
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:06:05 +0000
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm8Vh-0000rW-7h; Fri, 29 Sep 2023 08:06:05 +0000
Received: from gw1.octic.net ([88.97.20.152] helo=[10.0.1.240])
 by xenbits.xenproject.org with esmtpsa
 (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92)
 (envelope-from <julien@xen.org>)
 id 1qm8Vh-00030z-1x; Fri, 29 Sep 2023 08:06:05 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org;
	s=20200302mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From:
	References:Cc:To:Subject:MIME-Version:Date:Message-ID;
	bh=vNXHmiB27WHbEuFGrHnMPrQ0psLJYO8eqNZX6zLp+Cw=; b=fAxlRuf92r6fJxtKy+L1tG1weZ
	LzNXHh50lY90qFHG4ou5CIXknpYAN4Vjbf0cHreB31NOe/sUYIvEqIWvUTN/HK1VQx/xv1FUp4kyf
	2LOYGptq20FdSKClXEQO2KKPF8SWaWBA5qtvH+I5HEhA6BJxcOhNtztylarPFl+n94ek=;
Message-ID: <7a9d0129-d400-4c64-904b-3fbefd924543@xen.org>
Date: Fri, 29 Sep 2023 09:06:03 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 2/2] Update Xen version to 4.18-rc
Content-Language: en-GB
To: Juergen Gross <jgross@suse.com>, xen-devel@lists.xenproject.org
Cc: Henry.Wang@arm.com, Julien Grall <jgrall@amazon.com>,
 Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
References: <20230929075857.87092-1-julien@xen.org>
 <20230929075857.87092-3-julien@xen.org>
 <a0d6f669-1e1d-47ec-9670-a9e5c3d7f130@suse.com>
From: Julien Grall <julien@xen.org>
In-Reply-To: <a0d6f669-1e1d-47ec-9670-a9e5c3d7f130@suse.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Juergen,

On 29/09/2023 09:04, Juergen Gross wrote:
> On 29.09.23 09:58, Julien Grall wrote:
>> From: Julien Grall <jgrall@amazon.com>
>>
>> Signed-off-by: Julien Grall <jgrall@amazon.com>
>> ---
>>   README       | 16 ++++++++--------
>>   SUPPORT.md   |  2 +-
>>   xen/Makefile |  2 +-
>>   3 files changed, 10 insertions(+), 10 deletions(-)
>>
>> diff --git a/README b/README
>> index a491c8dce55b..f45e1ef1cdca 100644
>> --- a/README
>> +++ b/README
>> @@ -1,11 +1,11 @@
>> -###############################################
>> -__  __            _  _    _  ___
>> -\ \/ /___ _ __   | || |  / |( _ )
>> - \  // _ \ '_ \  | || |_ | |/ _ \
>> - /  \  __/ | | | |__   _|| | (_) |
>> -/_/\_\___|_| |_|    |_|(_)_|\___/
>> -
>> -###############################################
>> +#################################################
>> +                  _  _    _  ___
>> +__  _____ _ __   | || |  / |( _ )       _ __ ___
>> +\ \/ / _ \ '_ \  | || |_ | |/ _ \ _____| '__/ __|
>> + >  <  __/ | | | |__   _|| | (_) |_____| | | (__
>> +/_/\_\___|_| |_|    |_|(_)_|\___/      |_|  \___|
>> +
>> +#################################################
> 
> Is it on purpose to use "xen" instead of "Xen"?

It is not, thanks for spotting. Here the new figlet:

__  __            _  _    _  ___
\ \/ /___ _ __   | || |  / |( _ )       _ __ ___
  \  // _ \ '_ \  | || |_ | |/ _ \ _____| '__/ __|
  /  \  __/ | | | |__   _|| | (_) |_____| | | (__
/_/\_\___|_| |_|    |_|(_)_|\___/      |_|  \___|

I will update the tree directly.

Cheers,

-- 
Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:07:20 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:07:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610305.949666 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Ws-0000Mj-5T; Fri, 29 Sep 2023 08:07:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610305.949666; Fri, 29 Sep 2023 08:07:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8Ws-0000Mc-2b; Fri, 29 Sep 2023 08:07:18 +0000
Received: by outflank-mailman (input) for mailman id 610305;
 Fri, 29 Sep 2023 08:07:16 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xPTL=FN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qm8Wq-0000MB-OY
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:07:16 +0000
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2062c.outbound.protection.outlook.com
 [2a01:111:f400:7e1b::62c])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 33202d63-5e9f-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 10:07:14 +0200 (CEST)
Received: from DB8PR06CA0018.eurprd06.prod.outlook.com (2603:10a6:10:100::31)
 by PAXPR08MB6366.eurprd08.prod.outlook.com (2603:10a6:102:153::7)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 08:07:12 +0000
Received: from DBAEUR03FT015.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:100:cafe::f7) by DB8PR06CA0018.outlook.office365.com
 (2603:10a6:10:100::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Fri, 29 Sep 2023 08:07:12 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT015.mail.protection.outlook.com (100.127.142.112) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.15 via Frontend Transport; Fri, 29 Sep 2023 08:07:11 +0000
Received: ("Tessian outbound 0ae75d4034ba:v211");
 Fri, 29 Sep 2023 08:07:11 +0000
Received: from 1072b0482129.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 328448DC-E26F-4FD9-B6B2-EE3E772DE423.1; 
 Fri, 29 Sep 2023 08:07:04 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 1072b0482129.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 08:07:04 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by AM8PR08MB5652.eurprd08.prod.outlook.com (2603:10a6:20b:1d8::10)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 08:07:02 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Fri, 29 Sep 2023
 08:07:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 33202d63-5e9f-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fQAgr73R7D4FMoW/vkFwhI47aTK4oP1Vq0XMilS+uao=;
 b=e0sZ/wpkFD43mmjAUdX8FoNt+vuEUzarCaxWjuSE5w30K3+Kay/GpFmB4KXih2jnSsdsSrY6/nJ32hNxouTzJakDcI302z/+iN5zhELx9dtocIUiCk4nGIeRSfUlT56WEhKTa7OI1DEdEOqwAcmpU0EhBA44ZiyJDuUDzB6U2OY=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: ab74482044e668cc
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kXXkJn9OiXk9o+Pl71xmSjsLe/P+qnhroTnIpLX12+Do8eflCZYS3ZGHo2yGpnShaL56Kv17XuRNuPKAJ9HriO4o4FWJbvVR2Ab+9eiHyZgxnp5bGynzg4+wGRoqpKlG5FFELehboONNe/AnHFfVUQNBUrLQK9wsfLPjTbyeGkKT2G2DNVoRIX0kLYm2eO7IJfcO6RPpvvdblp2tViJED7s7ZsRijIRFrP1qjTfF76bbYjlpJ81WV7XzHzLyXjtFTGkCKkNDD7Lp4/c1Dgs0hGojIxUJpgMVZpoxdP3hI2N/ibRVjJGymTIJusoLykkQFyNUrsqkDBFHNWB30GsAFA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=fQAgr73R7D4FMoW/vkFwhI47aTK4oP1Vq0XMilS+uao=;
 b=bGUjR1pLdoMJkvBWxgsyceIpQPJsyn2X8xMxOxkh8hpouSruF9PlKsrhz4riVva4viasV2wkaLnV1bXDPlmvM8s686H3JBUBPzSWbhg1VDgigPDg8tfCBoEoilmCUVPJ5UWhxC7UHNSeMsswLeOmSlB/zw+0JB54q8zEVISCLZRxBr/OG5SMMcxH6a/AiHeA3zqhWNpl7z7CctdNYSqHK7slORTKA0YaR/Pm+JZiO2SQA/ru3xXV+bKLoxlWtTTEtd3w6O4j5Geh39VHyhHcmG59pNUWUSI+aOD+jz2BM9Ff38/v20oIrb0b7EwsPkT6FCpGke88snvtmMsik7A0Kw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=fQAgr73R7D4FMoW/vkFwhI47aTK4oP1Vq0XMilS+uao=;
 b=e0sZ/wpkFD43mmjAUdX8FoNt+vuEUzarCaxWjuSE5w30K3+Kay/GpFmB4KXih2jnSsdsSrY6/nJ32hNxouTzJakDcI302z/+iN5zhELx9dtocIUiCk4nGIeRSfUlT56WEhKTa7OI1DEdEOqwAcmpU0EhBA44ZiyJDuUDzB6U2OY=
From: Henry Wang <Henry.Wang@arm.com>
To: Juergen Gross <jgross@suse.com>
CC: Julien Grall <julien@xen.org>, Xen-devel <xen-devel@lists.xenproject.org>,
	Julien Grall <jgrall@amazon.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH 2/2] Update Xen version to 4.18-rc
Thread-Topic: [PATCH 2/2] Update Xen version to 4.18-rc
Thread-Index: AQHZ8qrc61Z2/2x5F0+YOWbVm7G1MrAxcbcAgAAAwgA=
Date: Fri, 29 Sep 2023 08:07:02 +0000
Message-ID: <43F7D136-6C39-42C3-95E7-D1751A7B83D1@arm.com>
References: <20230929075857.87092-1-julien@xen.org>
 <20230929075857.87092-3-julien@xen.org>
 <a0d6f669-1e1d-47ec-9670-a9e5c3d7f130@suse.com>
In-Reply-To: <a0d6f669-1e1d-47ec-9670-a9e5c3d7f130@suse.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|AM8PR08MB5652:EE_|DBAEUR03FT015:EE_|PAXPR08MB6366:EE_
X-MS-Office365-Filtering-Correlation-Id: 85cdf4cd-588f-4f68-a601-08dbc0c315bf
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 RaevbuVA6fElzS6E7zeUMQfVUAEcKz01iUD30LQCJtdDSMWCH7WG9+UTAP0nfY0rwjdJEPo110irGz54AIHRxsAm3dhWfcrTt4WLPPs0z8q0FI5e/hQ+Tz9mkqAPiB0xvd8KZ0+yDLdap9W6l3EK/cbDHsRgfuyGznQObwxfp88wwe0xxZCO9HJeMI0q+S71IRRqVaMk+sWKJPYVHEqpw2WB1egLekZwNnZzZtj3s5H8p0ZeCi82zDHafLuYfKoQgYJgClJ2rnnvBOhQsMc6qWeZ69oCb503SYkK8T2DlPSnOwmzuJ9MPIrxug6ezDecZC7q6c315Do85fM46VI4ZyfbX5+kcdO+zZJhXkGP7kbPow/ky+2SqBdxt2Er6hf/OvRbMN/9bVAT2VRfALwss8HA0MxHGRIIWnBVoKU86jlyKV0nA5n/Kyg9UT+t91PPIfnb2Wd1GKiUZk3zIqYPueKyCK5o0hLu44Y5y2YgW7NPh15/Fpdmz3H3Q+hdfHK4PSZcVo2LdvR9qPPOJ5oC6ZmjgvvohXMPIRoTqn2uvnoEs5991R6DPxZcS1DfQTyqX7PGpKf/HxK00KfvHnv+yGCNxDiLpyNXhTdGMkMHbE+pzPeWs91MfTE5NuQbTDsb0vdB+gsVRhtdLnv69TxbKg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(366004)(136003)(346002)(376002)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(83380400001)(2616005)(71200400001)(53546011)(6506007)(6512007)(6486002)(478600001)(36756003)(33656002)(86362001)(26005)(122000001)(38100700002)(38070700005)(54906003)(64756008)(66946007)(76116006)(66476007)(66446008)(66556008)(6916009)(316002)(91956017)(4326008)(8936002)(8676002)(2906002)(5660300002)(41300700001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <E082021205467746B70174DE77A60AB4@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5652
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT015.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	1fda0b18-8ae7-409f-61ff-08dbc0c31045
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	tmVEeRBJmWCsGoM8M/g742TToPOMz9uuM6NLnIaOX3HNg7RMNOzVJATQEv+tJQH7fUcfOVc/VV2c5ZlHM4Fq4WbYmiSvEUBlCY6B6tE8Fe0BYyVjRDrjpip2vHRL5tK2xfZxD982Px6yOCNZBAwFCeXnOfLJqbt6AAEp6fVELM4fJuwWZhByK/ZUFijQA2bg6hpbT0rv6HkT3/MhgX1IUQHmskN9Fyqu3Nm9OazYM9nfXKWBqaJl9ltPaEGNAV+SHug0QxkYzi6sPXudWTHHBaN1t/hFkHlR+S8IGxfke0aM3q3Jk9FpzFcetnr/krEpf5DejCAFKCcRB9YoT7Q8YwERNHg+KxunFGjMMhRQjeGa2mdZ1kuxkHxfS+kH3tNXadH/5f3VVUKcgk7i97QP5vsCsYt93slkSQF/gPr9bHJ2lPGxQuVkUClUPvvpx99gQPc4/i55UNd0oSF9shWdlRmk4UXjXAHK9+WPGU6QHP1dXzn+Lip33p7bCWCS3NPcTgN8sPlDmkxQrLW3iOKgNDjrV1E/O66xd8KvcZxIHAq6iy2e3vBGv8yFSBzLw+YiQkc6i4a0dvnl7LYGlAWZ8K+cSIrAU7ocP9mNJbMlk1TNhRCUhag1saOS3oJZNSWO6yxuJKARCcbStAWNa9Lbjtkon+tjwospa0QpzlMr1982OdNtR6Rjnq+XrSRm2BoPfY+kalzXaGX+M6x03lv50s7H9OKrdgza8+aBprpar7s=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(376002)(396003)(39860400002)(136003)(230922051799003)(186009)(1800799009)(82310400011)(64100799003)(451199024)(36840700001)(40470700004)(46966006)(53546011)(6486002)(6506007)(6512007)(2616005)(478600001)(83380400001)(47076005)(336012)(26005)(2906002)(70206006)(70586007)(5660300002)(54906003)(8936002)(316002)(4326008)(8676002)(41300700001)(6862004)(40460700003)(36860700001)(36756003)(33656002)(86362001)(82740400003)(356005)(81166007)(40480700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 08:07:11.9094
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 85cdf4cd-588f-4f68-a601-08dbc0c315bf
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT015.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6366

DQoNCj4gT24gU2VwIDI5LCAyMDIzLCBhdCAxNjowNCwgSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1
c2UuY29tPiB3cm90ZToNCj4gDQo+IE9uIDI5LjA5LjIzIDA5OjU4LCBKdWxpZW4gR3JhbGwgd3Jv
dGU6DQo+PiBGcm9tOiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPg0KPj4gU2lnbmVk
LW9mZi1ieTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4NCj4+IC0tLQ0KPj4gIFJF
QURNRSAgICAgICB8IDE2ICsrKysrKysrLS0tLS0tLS0NCj4+ICBTVVBQT1JULm1kICAgfCAgMiAr
LQ0KPj4gIHhlbi9NYWtlZmlsZSB8ICAyICstDQo+PiAgMyBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNl
cnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkNCj4+IGRpZmYgLS1naXQgYS9SRUFETUUgYi9SRUFE
TUUNCj4+IGluZGV4IGE0OTFjOGRjZTU1Yi4uZjQ1ZTFlZjFjZGNhIDEwMDY0NA0KPj4gLS0tIGEv
UkVBRE1FDQo+PiArKysgYi9SRUFETUUNCj4+IEBAIC0xLDExICsxLDExIEBADQo+PiAtIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCj4+IC1fXyAgX18gICAg
ICAgICAgICBfICBfICAgIF8gIF9fXw0KPj4gLVwgXC8gL19fXyBfIF9fICAgfCB8fCB8ICAvIHwo
IF8gKQ0KPj4gLSBcICAvLyBfIFwgJ18gXCAgfCB8fCB8XyB8IHwvIF8gXA0KPj4gLSAvICBcICBf
Xy8gfCB8IHwgfF9fICAgX3x8IHwgKF8pIHwNCj4+IC0vXy9cX1xfX198X3wgfF98ICAgIHxffChf
KV98XF9fXy8NCj4+IC0NCj4+IC0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIw0KPj4gKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMNCj4+ICsgICAgICAgICAgICAgICAgICBfICBfICAgIF8gIF9fXw0KPj4gK19fICBf
X19fXyBfIF9fICAgfCB8fCB8ICAvIHwoIF8gKSAgICAgICBfIF9fIF9fXw0KPj4gK1wgXC8gLyBf
IFwgJ18gXCAgfCB8fCB8XyB8IHwvIF8gXCBfX19fX3wgJ19fLyBfX3wNCj4+ICsgPiAgPCAgX18v
IHwgfCB8IHxfXyAgIF98fCB8IChfKSB8X19fX198IHwgfCAoX18NCj4+ICsvXy9cX1xfX198X3wg
fF98ICAgIHxffChfKV98XF9fXy8gICAgICB8X3wgIFxfX198DQo+PiArDQo+PiArIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KPiANCj4gSXMgaXQgb24g
cHVycG9zZSB0byB1c2UgInhlbiIgaW5zdGVhZCBvZiAiWGVuIj8NCg0KSSBhY3R1YWxseSBoYWQg
dGhlIHNhbWUgcXVlc3Rpb24sIGJ1dCBub3Qgc3VyZSBpZiBpdCByZWFsbHkgbWF0dGVycyBzbyBk
aWRu4oCZdA0KYWRkIGFueSBjb21tZW50c+KApiBEbyB3ZSBoYXZlIHNvbWUgY29udmVudGlvbiBv
biB0aGlzPyBTbyBmYXIgSQ0KaGF2ZSBzZWVuIOKAnHhlbuKAnSwg4oCcWEVO4oCdIGFuZCDigJxY
ZW7igJ0gaW4gZGlmZmVyZW50IGNvbnRleHRzLg0KDQpLaW5kIHJlZ2FyZHMsDQpIZW5yeQ0KDQo+
IA0KPiANCj4gSnVlcmdlbg0KPiA8T3BlblBHUF8weEIwREU5REQ2MjhCRjEzMkYuYXNjPg0KDQo=


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:11:38 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:11:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610312.949676 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8av-00027p-T5; Fri, 29 Sep 2023 08:11:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610312.949676; Fri, 29 Sep 2023 08:11:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8av-00027i-QV; Fri, 29 Sep 2023 08:11:29 +0000
Received: by outflank-mailman (input) for mailman id 610312;
 Fri, 29 Sep 2023 08:11:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VcG0=FN=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qm8au-00027Z-QD
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:11:28 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20601.outbound.protection.outlook.com
 [2a01:111:f400:7eae::601])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id c83344b8-5e9f-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 10:11:25 +0200 (CEST)
Received: from PH8PR20CA0014.namprd20.prod.outlook.com (2603:10b6:510:23c::24)
 by MW4PR12MB6753.namprd12.prod.outlook.com (2603:10b6:303:1ec::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.39; Fri, 29 Sep
 2023 08:11:22 +0000
Received: from SN1PEPF0002BA4E.namprd03.prod.outlook.com
 (2603:10b6:510:23c:cafe::13) by PH8PR20CA0014.outlook.office365.com
 (2603:10b6:510:23c::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Fri, 29 Sep 2023 08:11:21 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF0002BA4E.mail.protection.outlook.com (10.167.242.71) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Fri, 29 Sep 2023 08:11:21 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 29 Sep
 2023 03:11:21 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 29 Sep 2023 03:11:20 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c83344b8-5e9f-11ee-878b-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=kRXXebcavbAIu3x/ou5DlaA9GciEF5ZsBRic6/2NqXfdLQHgBAOs5FThbVf/lhFwyiaL1faDzu2ScqsydDE0et6fc75fqyeUrIQ4j18Vp892aiK14MV0ccgI6MZUUd4+OGUbGyTuPBvNINQnHd85NAb7hH3x1f22R6LRfgC8zOctihCV/S4+lGzmXWJUD8RTnSLVAMSZ+SGBDCDKW4k1TM0yW5ee7kGztx4I+LNDEWa44yMmP3o0GT1hsT5HJz9q/DH/+r7X/TuAi7k5Is1FZ/f/p/JTYuPUCD/6mof7W3vcqTMPTPpOINc37rnyo3w498MQxFpWorpGeh34l/xtxg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=U1D+PNNW93vlI/3WCk1GgWBTwXO4O/elQhxDG0g/BZU=;
 b=mPwUfET+U1I2ILXfIefrkIQp16P+eAG+53iDsOt1OzYsk1B1oEonm05XT8TPze8CkHJ1+z8TJ4rgPCG6+vhgRKxx6XGCeW+qftGuDiFxxxv1FCespKXswn0rwsY17ZDLe+Q50jiob89CRocPiRZ4Bx1jvmm+4Nnx0VA9Wrp3VW7QkzlgBsgCkj1KjjuXZqZhaOgi8V/m/3/SP2MbyfkpIho+gjR/PN7324RZk4BNDn0q4dgxqCIcwQ6k+7YjTwpnUn+7eOZmS55HBtKWwAziW16PBltHLcV9QbJ7DE2MPkCjbNt50Vr2m5RUgcBP/cb7BJyqVWjMUJx5R6PJ73SEmw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=linaro.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=U1D+PNNW93vlI/3WCk1GgWBTwXO4O/elQhxDG0g/BZU=;
 b=t85RRYp7H6/Z15K6YoQ+pCKIWBl6DSq8y4ODkaidSYcxn3+wmVWMuhVNApLwXxcpdR9dA7XeazX84ctyn2jLEsf9OGLQsuSsWfP5BWHH9e1fDQgaqTDSeriwWpS6es9bosim0WXMmnh7dFmCOWXvW7s/GqPCwk+fCHaJISCRy1g=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <a8d87efe-908b-8eed-dc42-550037051492@amd.com>
Date: Fri, 29 Sep 2023 10:11:19 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v2] xen/arm: Skip memory nodes if not enabled
Content-Language: en-US
To: Leo Yan <leo.yan@linaro.org>, <xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Julien Grall
	<julien@xen.org>, Bertrand Marquis <bertrand.marquis@arm.com>, Volodymyr
 Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230928143110.248221-1-leo.yan@linaro.org>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20230928143110.248221-1-leo.yan@linaro.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002BA4E:EE_|MW4PR12MB6753:EE_
X-MS-Office365-Filtering-Correlation-Id: 6b416b5b-4c47-4825-cc13-08dbc0c3aab0
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	6RimbXb+Ph2SyU4HWQ8wSKn0tSoMQomyN5/PegrpwI6POBzvoUoxzWVtS+3t+CXGdZrzqLeWa3iACCiRkWPN1NxRLEnWrSzyAHAYggaxmnJ5pLV4DucvxU5GERLgJrMXi4Sh6qDHRcRwMhEan9NGuueg08lqSh2wh2LxMG0ZDhJj0lzQXD0IP8PgcBfe7lFZ7umSip7MbXMR67uoy9TtfW+0oiuD/TYYKjo8WC1Kp54p45ylj6BS4zuWgzmqj76HR28+Fu08qiCPGI7X0kByn0GovWychJmnGOyazyB/Q5ROfroILtywJSLU8TmtVXNBO6xGcJemT3BdZG8lvYT5ehqnS124v5L4cczQKi+MzBRivpPZAD/iRCiRyDlwPKcoFxy1Bw9egG/YimOkzAqMIGsTUOoAINn2M9beJ/tzaY0heG3FFmLl8onlORgctvTZo/u1Fpgc9z9EsTw+kbLM34a1ZLAaCylzDopgxLwyFj1o9UaJarLokb7Aug84uqcvc0IgTYFjg2ayIuORUoRcrnkXVmlnid5tdE3f46fUPw0Cs/bvX8S/A3PCjyLrRuR5WFN7VAoiF96FGmtvowF42XvBwvZCg8dK+HntBf6sKkMda5FfvOUmyvSRYqQ0VjE5GeTTR4JQoLA+fDey8ChTauUtiwAqhuWP9ShwKdY/wjq2xDK71FHN3GZisAhEEVX9I2FtbG3RPJQJmzeRrzHokbFF39/xCJgGuv9h0332Wnt0oGYVP05JrL8W7b6xKTqCygG8NK9RrHN6jtHYINODKYXATUHVk7gP9aXjiTtmBWWD+ojfa2vMHn+mJMnoUeZq
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(346002)(376002)(136003)(396003)(230922051799003)(451199024)(82310400011)(1800799009)(186009)(64100799003)(40470700004)(36840700001)(46966006)(40480700001)(86362001)(54906003)(16576012)(110136005)(70206006)(70586007)(2906002)(36756003)(478600001)(40460700003)(5660300002)(44832011)(31696002)(316002)(41300700001)(4326008)(8676002)(8936002)(2616005)(47076005)(336012)(426003)(26005)(83380400001)(53546011)(36860700001)(356005)(82740400003)(31686004)(81166007)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 08:11:21.7301
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 6b416b5b-4c47-4825-cc13-08dbc0c3aab0
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002BA4E.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR12MB6753

Hi Leo,

On 28/09/2023 16:31, Leo Yan wrote:
> 
> 
> Currently, the Xen hypervisor doesn't handle the status, the issue can
> be described from two perspectives: the memory nodes and the reserved
> memory nodes.
> 
> - If a memory node has a status "disabled" it implies that it should
>   not be used. Xen does not handle the status property for the memory
>   node and ends up using it.
> 
> - If a reserved memory node has a status "disabled", it means that this
>   region is no longer reserved and can be used, but the "disabled"
>   status is not handled by Xen.
> 
>   Xen passes the intact device tree binding of the reserved memory nodes
>   to Dom0 and creates a memory node to cover reserved regions. Disabled
>   reserved memory nodes are ignored by the Dom0 Linux kernel, thus the
>   Dom0 Linux kernel will continue to allocate pages from such a region.
> 
>   On the other hand, since the disabled status is not handled by Xen,
>   the disabled reserved memory regions are excluded from the page
>   management in Xen which results in Xen being unable to obtain the
>   corresponding MFN, in the end, Xen reports error like:
> 
>   (XEN) arch/arm/p2m.c:2202: d0v0: Failing to acquire the MFN 0x1a02dc
> 
> This patch introduces a function device_tree_node_is_available(). If it
> detects a memory node is not enabled, Xen will not add the memory region
> into the memory lists. In the end, this avoids to generate the memory
> node for the disabled memory regions sent to the kernel and the kernel
> cannot use the disabled memory nodes any longer.
> 
> Since this patch adds checking device node's status in the
> device_tree_get_meminfo() function, except it checks for memory nodes
> and reserved memory nodes, it also supports status for static memory
> and static heap.
> 
> Suggested-by: Michal Orzel <michal.orzel@amd.com>
> Signed-off-by: Leo Yan <leo.yan@linaro.org>
> ---
> 
> Changes from v1:
> - Renamed function to device_tree_node_is_available() (Michal Orzel);
> - Polished coding style (Michal Orzel);
> - Refined commit log (Michal Orzel, Julien Grall).
> 
>  xen/arch/arm/bootfdt.c | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/xen/arch/arm/bootfdt.c b/xen/arch/arm/bootfdt.c
> index 2673ad17a1..1b80d2d622 100644
> --- a/xen/arch/arm/bootfdt.c
> +++ b/xen/arch/arm/bootfdt.c
> @@ -16,6 +16,19 @@
>  #include <xsm/xsm.h>
>  #include <asm/setup.h>
> 
> +static bool __init device_tree_node_is_available(const void *fdt, int node)
> +{
> +    const char *status = fdt_getprop(fdt, node, "status", NULL);
Please see Julien's comment for v1. To save some jumps,instructions
we should also check for length of the property to be > 0, just like we do in dt_device_is_available().

Apart from that the patch looks good.

~Michal


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:13:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:13:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610319.949686 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8cs-0004Zm-9t; Fri, 29 Sep 2023 08:13:30 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610319.949686; Fri, 29 Sep 2023 08:13:30 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8cs-0004ZY-7A; Fri, 29 Sep 2023 08:13:30 +0000
Received: by outflank-mailman (input) for mailman id 610319;
 Fri, 29 Sep 2023 08:13:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=VcG0=FN=amd.com=Michal.Orzel@srs-se1.protection.inumbo.net>)
 id 1qm8cq-0004Y7-Vt
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:13:28 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20617.outbound.protection.outlook.com
 [2a01:111:f400:7eab::617])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0fab7e7e-5ea0-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 10:13:26 +0200 (CEST)
Received: from SA1P222CA0137.NAMP222.PROD.OUTLOOK.COM (2603:10b6:806:3c2::6)
 by DM6PR12MB4186.namprd12.prod.outlook.com (2603:10b6:5:21b::11) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 08:13:21 +0000
Received: from SN1PEPF0002BA51.namprd03.prod.outlook.com
 (2603:10b6:806:3c2:cafe::37) by SA1P222CA0137.outlook.office365.com
 (2603:10b6:806:3c2::6) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.25 via Frontend
 Transport; Fri, 29 Sep 2023 08:13:21 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 SN1PEPF0002BA51.mail.protection.outlook.com (10.167.242.74) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Fri, 29 Sep 2023 08:13:20 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 29 Sep
 2023 03:13:20 -0500
Received: from [10.71.193.39] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 29 Sep 2023 03:13:19 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0fab7e7e-5ea0-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XuTpErqs6a9UvxjGFSbFE9sjzXMr7tb8DDsARYK1fQpO3Kvvp9Ku+GFMor/HjUPF2SWcjif3JeONWuEujSNsJTwEgKezR0EJUxfVndJKF8Kvk43KigmJbvPSU3vxXE06b4tRc/LaSEhf6TbvGVUJsOsecNCuk+TQINLVVsSz5+AsgJaapY7IoORq7qNaOscM0hOL3Fqv+QeISd/CJaxar3QfceG1QUZ1CGHeh4WMYMJ+dDEucInJDKk5g2KpmddNj1ycBaODGbgvSaBnkzIwLbcg9C+1FVGBK0o/+z5qWVNZX+zg8XBgxH3iZzS7hYTn7jn539NCrBuevWJVxnqgEA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+zK8PYbqMgWjTT7+BWgIy5Ap5w/Tr855imzXimnjSfs=;
 b=U4zN9S+jogwulR4AwCFKYhe3ebVXd27Cr5QXzaSESG1x3evyo3TBP8FHfOYorPKjOKYXDGvQbTwntm+F6JxGsBh8jtl+CSOmFiZn8hiuTzcWMF81f9zED3YboUSitj4wMv+UcgLCzjd+803N99xDgC5qhnXEvCS8tyPcotUf4DeYcNqRRh7kD7JXk20wMMyzilN7wXfzYkCEGKt5c7byM1CrPNIXW1Gv1nvrd2E1r2/3dQzKO6ro3YGLnjM3VUCOvHIjihgh9ol3NyhjF40UREaHRdLX0yUl3FMhrDcnOJCj5BGqXNw07QRg97PlcnVjqLKzkFqM9K9JNzWWq1ChPQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=linaro.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+zK8PYbqMgWjTT7+BWgIy5Ap5w/Tr855imzXimnjSfs=;
 b=BRHfHSqOqRYMGaY/fq80OZb3bjDHY6YsVXm0ivaH/1jB7mcl595wJ0Mj2iu69j1d9Wc+HpDKXwUBU7l8FYeFvcwcDOoP+Q8gtJ7t22BnTR3mQTQRgQMeUzFOMohGlx+hBAHEhwayJPHTJ40/7+POw9K+dtTJd8mYYH+vm76BFT8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <f6493f08-f19c-51a0-c0e2-2ba9938e3d3a@amd.com>
Date: Fri, 29 Sep 2023 10:13:13 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH] xen/arm: Skip memory nodes if not enabled
Content-Language: en-US
To: Leo Yan <leo.yan@linaro.org>
CC: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>, Stefano
 Stabellini <sstabellini@kernel.org>, Bertrand Marquis
	<bertrand.marquis@arm.com>, Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
References: <20230926053333.180811-1-leo.yan@linaro.org>
 <b0d2494a-8223-a101-5d10-f3803629f2f3@amd.com>
 <36d8f5ce-ef87-40cc-9515-12a2007bfa6d@xen.org>
 <3964a12c-b808-2ee4-9651-68c21ead817b@amd.com>
 <20230928143719.GA58021@leoy-huanghe.lan>
From: Michal Orzel <michal.orzel@amd.com>
In-Reply-To: <20230928143719.GA58021@leoy-huanghe.lan>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002BA51:EE_|DM6PR12MB4186:EE_
X-MS-Office365-Filtering-Correlation-Id: 1a8c3e0c-017a-4657-ae66-08dbc0c3f1b9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KFbPWs2gUF5rZHEwHTGU9WbAg4kipPk7lgW6r+XdPtUKhdafm9ww1P0ac0iay6cKKjllrntaYaH98Z79ywfgHrCtJPC/ozCpUvOSFBMwZCouNd0o+KLufVZe6WC+pwQUpOV3DYAsi8co5J7jPUUztHH7LTlBTTNsQV0p2kHCvAIQb/xEgbf4evLk9cmLIIiM4GXM+J6inYMXMxEF/ILKShjArBAgvD/BTZDGnt0LeiTCnTlFE++kSiHxRTmV8bUOffLHEB0AYb8esgKJtEwtzJbTulDzEXBy0YmDF6Pa3KVKrmFGRSJiZOK1lMqd/JEbwwxEPRoeMW5Zxn+5MfjddwhT8VAjglYkRU6ptxBcqwj1IOUvwR1+Ni/rcPCVst03YVhX1Yfo731hYjDJ0U4+wMvlt80BfFGtrhHMdtG8CZUv/z2JwbFv85ax/EtNQOwPfL5ca/xgxRbDVicEV5zg7dHq2w8FsPmteuYlXuV09yuDyHbduMtEC0c6QGBL9ZzNtXDCSQWkXCKtcdacQMiuQ+r03ztZDK2PCz+h5B2mArnHe51xTtlp1N3kDrb9jOYZa+zuSErnfVmCqK+uoAyb+VxhbWuXXqU6Ccg2FI23cgnsHtdNdYAeGGL6nNZk9ENHtJS3x80Go2ZOjmk9O2b3GOoNknAOzP6AMUjIG2tvOsYzNiA8VLiUzr5AK0GAsjK1Igx3QlQu6ZS0bBk5dHXc8jjleBFz3VPXZh1HkKUnzvshkD7akR6qDI2MuaPAtzbR0PF3t9VSQkFQuZeVFDnVGaTEdiNzJhraM9TOQxebxew=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(396003)(136003)(39860400002)(346002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(82310400011)(46966006)(40470700004)(36840700001)(31686004)(66899024)(2616005)(53546011)(40460700003)(86362001)(36756003)(31696002)(40480700001)(356005)(81166007)(82740400003)(36860700001)(336012)(426003)(26005)(4744005)(2906002)(6666004)(478600001)(83380400001)(47076005)(4326008)(316002)(8676002)(8936002)(41300700001)(44832011)(5660300002)(70586007)(70206006)(54906003)(16576012)(6916009)(43740500002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 08:13:20.9065
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1a8c3e0c-017a-4657-ae66-08dbc0c3f1b9
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	SN1PEPF0002BA51.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4186

Hi Leo,

On 28/09/2023 16:37, Leo Yan wrote:
> 
> 
> Hi Michal, Julien,
> 
> On Wed, Sep 27, 2023 at 02:49:23PM +0200, Michal Orzel wrote:
> 
> [...]
> 
>> Either way is fine. The advantage of placing the check in boot_fdt_info() is
>> that we can have a single check instead of duplicated and we do the check before
>> the "first" use which happens to be the banks sorting. The advantage of setup_mm()
>> is that it is the one dealing with memory banks and is called after early_print_info()
>> so user can see some additional info.
>>
>> @Leo, will you send a patch for that? Don't feel obliged as it is not strictly related
>> to your patch in which case I can handle it.
> 
> @Michal, since you have much better sense than me for adding check for
> memory banks, I'd like to leave it to you.
Ok, no problem.

~Michal


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:23:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:23:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610327.949696 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8mM-000847-5t; Fri, 29 Sep 2023 08:23:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610327.949696; Fri, 29 Sep 2023 08:23:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8mM-00083K-36; Fri, 29 Sep 2023 08:23:18 +0000
Received: by outflank-mailman (input) for mailman id 610327;
 Fri, 29 Sep 2023 08:23:16 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Fe2t=FN=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qm8mJ-0007zW-UE
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:23:16 +0000
Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com
 [2a00:1450:4864:20::434])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 6e1f3510-5ea1-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 10:23:12 +0200 (CEST)
Received: by mail-wr1-x434.google.com with SMTP id
 ffacd0b85a97d-3231d6504e1so9869935f8f.2
 for <xen-devel@lists.xenproject.org>; Fri, 29 Sep 2023 01:23:12 -0700 (PDT)
Received: from [192.168.1.10] (host-92-26-107-252.as13285.net. [92.26.107.252])
 by smtp.gmail.com with ESMTPSA id
 o13-20020a5d408d000000b003258934a4bfsm760236wrp.36.2023.09.29.01.23.11
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 29 Sep 2023 01:23:11 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6e1f3510-5ea1-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695975792; x=1696580592; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:autocrypt:from:cc:references
         :to:content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=9o6JEPJVR7BkSajVkGYd0Kw3B9HunC4NQNrd+lAnh9c=;
        b=uG8fEqRsvAnObrFI/YvzJ5FNgpXJrfl2Kx9iU38EGK1HG8pikej0ELj14l9/lVvpPS
         sHeZLhUcs5PkGekxeovvMpfbz+l8Rqz7f6PPM2BzAlmh04edJv5yqIc1buQXmJNc0hrN
         jHlsmFyfE4FR7Ox0KpRo8FbGJdrPYKJg6tdMI=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695975792; x=1696580592;
        h=content-transfer-encoding:in-reply-to:autocrypt:from:cc:references
         :to:content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=9o6JEPJVR7BkSajVkGYd0Kw3B9HunC4NQNrd+lAnh9c=;
        b=jtnxdewwKTJVvQ7gc4Yl3ypOab0/9GujPe+RYD00Q3vPNIihoOmmgtvyEyHFr7dpGk
         We0tU/1KIhaydAcuk9zbkVqLCi8xcGe8Q3fkgdeqLwdCNzWKUF51lArr4P0bYJyZfu08
         Lc2jVYox0wgSizp7W0wis1CG7doSKrn39Az9XIancpWVgqTbRvtqbzScAoclHna79ena
         eOEpce36QLRq+gk72VGZV9xSwP0vkE3J3/wdNzmty5hsji5Dx57yUiEl3pz69ZUzAlPw
         UWuIT4IfjNaqRmlM1R/WcExeFelD0p7Lo/uKFHy4nlkrskQfjxyGU91jgmdVIMEFFX8B
         0tbg==
X-Gm-Message-State: AOJu0YxrgTmq8JceDnpUvPSBmzyQEzRN0NNXmep4X8J4sLencTBVtZq7
	QOWSvaV6toH78Ufk0SRvMB9hhw==
X-Google-Smtp-Source: AGHT+IH0xw7y6X5M+KvnroN0gKfm+xinutOKNIYiAcaOB0fwjSs59vE6j/lISjm1zzp4pEYLc+9k9g==
X-Received: by 2002:adf:ef11:0:b0:31c:6591:d415 with SMTP id e17-20020adfef11000000b0031c6591d415mr3174870wro.39.1695975792131;
        Fri, 29 Sep 2023 01:23:12 -0700 (PDT)
Message-ID: <0a5bab77-5cac-47a2-805b-76396e4d4c89@citrix.com>
Date: Fri, 29 Sep 2023 09:23:11 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] tools/xenstore: Avoid leaking memory in check_store
Content-Language: en-GB
To: Juergen Gross <jgross@suse.com>, David Kahurani <k.kahurani@gmail.com>,
 xen-devel@lists.xenproject.org
References: <20230929045724.6844-1-k.kahurani@gmail.com>
 <43936092-75f5-42ff-b0c2-2f79147e2f86@suse.com>
Cc: Henry Wang <Henry.Wang@arm.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Autocrypt: addr=andrew.cooper3@citrix.com; keydata=
 xsFNBFLhNn8BEADVhE+Hb8i0GV6mihnnr/uiQQdPF8kUoFzCOPXkf7jQ5sLYeJa0cQi6Penp
 VtiFYznTairnVsN5J+ujSTIb+OlMSJUWV4opS7WVNnxHbFTPYZVQ3erv7NKc2iVizCRZ2Kxn
 srM1oPXWRic8BIAdYOKOloF2300SL/bIpeD+x7h3w9B/qez7nOin5NzkxgFoaUeIal12pXSR
 Q354FKFoy6Vh96gc4VRqte3jw8mPuJQpfws+Pb+swvSf/i1q1+1I4jsRQQh2m6OTADHIqg2E
 ofTYAEh7R5HfPx0EXoEDMdRjOeKn8+vvkAwhviWXTHlG3R1QkbE5M/oywnZ83udJmi+lxjJ5
 YhQ5IzomvJ16H0Bq+TLyVLO/VRksp1VR9HxCzItLNCS8PdpYYz5TC204ViycobYU65WMpzWe
 LFAGn8jSS25XIpqv0Y9k87dLbctKKA14Ifw2kq5OIVu2FuX+3i446JOa2vpCI9GcjCzi3oHV
 e00bzYiHMIl0FICrNJU0Kjho8pdo0m2uxkn6SYEpogAy9pnatUlO+erL4LqFUO7GXSdBRbw5
 gNt25XTLdSFuZtMxkY3tq8MFss5QnjhehCVPEpE6y9ZjI4XB8ad1G4oBHVGK5LMsvg22PfMJ
 ISWFSHoF/B5+lHkCKWkFxZ0gZn33ju5n6/FOdEx4B8cMJt+cWwARAQABzSlBbmRyZXcgQ29v
 cGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPsLBegQTAQgAJAIbAwULCQgHAwUVCgkI
 CwUWAgMBAAIeAQIXgAUCWKD95wIZAQAKCRBlw/kGpdefoHbdD/9AIoR3k6fKl+RFiFpyAhvO
 59ttDFI7nIAnlYngev2XUR3acFElJATHSDO0ju+hqWqAb8kVijXLops0gOfqt3VPZq9cuHlh
 IMDquatGLzAadfFx2eQYIYT+FYuMoPZy/aTUazmJIDVxP7L383grjIkn+7tAv+qeDfE+txL4
 SAm1UHNvmdfgL2/lcmL3xRh7sub3nJilM93RWX1Pe5LBSDXO45uzCGEdst6uSlzYR/MEr+5Z
 JQQ32JV64zwvf/aKaagSQSQMYNX9JFgfZ3TKWC1KJQbX5ssoX/5hNLqxMcZV3TN7kU8I3kjK
 mPec9+1nECOjjJSO/h4P0sBZyIUGfguwzhEeGf4sMCuSEM4xjCnwiBwftR17sr0spYcOpqET
 ZGcAmyYcNjy6CYadNCnfR40vhhWuCfNCBzWnUW0lFoo12wb0YnzoOLjvfD6OL3JjIUJNOmJy
 RCsJ5IA/Iz33RhSVRmROu+TztwuThClw63g7+hoyewv7BemKyuU6FTVhjjW+XUWmS/FzknSi
 dAG+insr0746cTPpSkGl3KAXeWDGJzve7/SBBfyznWCMGaf8E2P1oOdIZRxHgWj0zNr1+ooF
 /PzgLPiCI4OMUttTlEKChgbUTQ+5o0P080JojqfXwbPAyumbaYcQNiH1/xYbJdOFSiBv9rpt
 TQTBLzDKXok86M7BTQRS4TZ/ARAAkgqudHsp+hd82UVkvgnlqZjzz2vyrYfz7bkPtXaGb9H4
 Rfo7mQsEQavEBdWWjbga6eMnDqtu+FC+qeTGYebToxEyp2lKDSoAsvt8w82tIlP/EbmRbDVn
 7bhjBlfRcFjVYw8uVDPptT0TV47vpoCVkTwcyb6OltJrvg/QzV9f07DJswuda1JH3/qvYu0p
 vjPnYvCq4NsqY2XSdAJ02HrdYPFtNyPEntu1n1KK+gJrstjtw7KsZ4ygXYrsm/oCBiVW/OgU
 g/XIlGErkrxe4vQvJyVwg6YH653YTX5hLLUEL1NS4TCo47RP+wi6y+TnuAL36UtK/uFyEuPy
 wwrDVcC4cIFhYSfsO0BumEI65yu7a8aHbGfq2lW251UcoU48Z27ZUUZd2Dr6O/n8poQHbaTd
 6bJJSjzGGHZVbRP9UQ3lkmkmc0+XCHmj5WhwNNYjgbbmML7y0fsJT5RgvefAIFfHBg7fTY/i
 kBEimoUsTEQz+N4hbKwo1hULfVxDJStE4sbPhjbsPCrlXf6W9CxSyQ0qmZ2bXsLQYRj2xqd1
 bpA+1o1j2N4/au1R/uSiUFjewJdT/LX1EklKDcQwpk06Af/N7VZtSfEJeRV04unbsKVXWZAk
 uAJyDDKN99ziC0Wz5kcPyVD1HNf8bgaqGDzrv3TfYjwqayRFcMf7xJaL9xXedMcAEQEAAcLB
 XwQYAQgACQUCUuE2fwIbDAAKCRBlw/kGpdefoG4XEACD1Qf/er8EA7g23HMxYWd3FXHThrVQ
 HgiGdk5Yh632vjOm9L4sd/GCEACVQKjsu98e8o3ysitFlznEns5EAAXEbITrgKWXDDUWGYxd
 pnjj2u+GkVdsOAGk0kxczX6s+VRBhpbBI2PWnOsRJgU2n10PZ3mZD4Xu9kU2IXYmuW+e5KCA
 vTArRUdCrAtIa1k01sPipPPw6dfxx2e5asy21YOytzxuWFfJTGnVxZZSCyLUO83sh6OZhJkk
 b9rxL9wPmpN/t2IPaEKoAc0FTQZS36wAMOXkBh24PQ9gaLJvfPKpNzGD8XWR5HHF0NLIJhgg
 4ZlEXQ2fVp3XrtocHqhu4UZR4koCijgB8sB7Tb0GCpwK+C4UePdFLfhKyRdSXuvY3AHJd4CP
 4JzW0Bzq/WXY3XMOzUTYApGQpnUpdOmuQSfpV9MQO+/jo7r6yPbxT7CwRS5dcQPzUiuHLK9i
 nvjREdh84qycnx0/6dDroYhp0DFv4udxuAvt1h4wGwTPRQZerSm4xaYegEFusyhbZrI0U9tJ
 B8WrhBLXDiYlyJT6zOV2yZFuW47VrLsjYnHwn27hmxTC/7tvG3euCklmkn9Sl9IAKFu29RSo
 d5bD8kMSCYsTqtTfT6W4A3qHGvIDta3ptLYpIAOD2sY3GYq2nf3Bbzx81wZK14JdDDHUX2Rs
 6+ahAA==
In-Reply-To: <43936092-75f5-42ff-b0c2-2f79147e2f86@suse.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 29/09/2023 6:56 am, Juergen Gross wrote:
> On 29.09.23 06:57, David Kahurani wrote:
>
> I'd like the following paragraph added to the commit message:
>
>   check_store() will leak the memory from reading the "@introduceDomain"
>   and "@releaseDomain" nodes.
>
>> While this code should not be trigger-able from an unprivileged domain
>> it is called multiple times when the database gets inconsistent. This
>> means that a malicious guest able to corrupt the database will trigger
>> the leaks here.
>>
>> Fix the leaks so that this code can be safely called from anywhere
>>
>
> Fixes: 67617067f0b6 ("tools/xenstore: let check_store() check the
> accounting data")
>
>> Signed-off-by: David Kahurani <k.kahurani@gmail.com>
>
> With above additions (can probably be done while committing):
>
> Reviewed-by: Juergen Gross <jgross@suse.com>

Can do, but this needs Henry's approval too at this point in 4.18

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:26:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:26:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610334.949707 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8pp-0000kx-LJ; Fri, 29 Sep 2023 08:26:53 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610334.949707; Fri, 29 Sep 2023 08:26:53 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm8pp-0000kq-IQ; Fri, 29 Sep 2023 08:26:53 +0000
Received: by outflank-mailman (input) for mailman id 610334;
 Fri, 29 Sep 2023 08:26:52 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JGVc=FN=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qm8pn-0000kh-S6
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:26:51 +0000
Received: from EUR04-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur04on2044.outbound.protection.outlook.com [40.107.7.44])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id efab4489-5ea1-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 10:26:50 +0200 (CEST)
Received: from DU2PR04CA0227.eurprd04.prod.outlook.com (2603:10a6:10:2b1::22)
 by DBBPR08MB5913.eurprd08.prod.outlook.com (2603:10a6:10:20b::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Fri, 29 Sep
 2023 08:26:20 +0000
Received: from DBAEUR03FT008.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:2b1:cafe::1d) by DU2PR04CA0227.outlook.office365.com
 (2603:10a6:10:2b1::22) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.22 via Frontend
 Transport; Fri, 29 Sep 2023 08:26:20 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT008.mail.protection.outlook.com (100.127.142.107) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.15 via Frontend Transport; Fri, 29 Sep 2023 08:26:19 +0000
Received: ("Tessian outbound fb5c0777b309:v211");
 Fri, 29 Sep 2023 08:26:19 +0000
Received: from 106741332470.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 68F9254C-0A39-49FB-8C0A-DA27E6853FD0.1; 
 Fri, 29 Sep 2023 08:25:47 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 106741332470.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 08:25:47 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by PAWPR08MB10166.eurprd08.prod.outlook.com (2603:10a6:102:368::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.34; Fri, 29 Sep
 2023 08:25:45 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404%4]) with mapi id 15.20.6838.024; Fri, 29 Sep 2023
 08:25:45 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: efab4489-5ea1-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IZv4QVXxFhqWRtjh+/NfpMtiqTMZziieLu2FrKUZ4OE=;
 b=4qBB6slQv9OQXljVGrC3Trap++zdf67qA4ZbFeF3BwQu0mUQ6ZgCiX8H98SD3Ia27eL4ABhZF13S1Ia+rYAq7u4zx24pI08ixr78Du8itfr7IGQtyAOrn92Hf8lBKVFnHbTQZev9FsPvirXNB8MItPMUWkkjMc1wA/pbWKHtg1w=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 398987bb5a34e7d5
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PD8YdJp16RiuPfyyByu5lndAeaRblX9IWXBkY2YpyzUbQqUJT8ZSrpnFf1i5GIEHlspr8wctyU66vluNRTmQv3dKADDRQf3l8J6AEqgwh7HrbTSY4KsH1PwF2DRYKqZxnVSKVFDXIJ4ISZXBmxIRx4cCP8VhzyYRNkRsZBw6RGFSahvjUHRDuYPW0SSr9migd4gn60fzvXarl+vKWJ82HVfO1k6gczKaOVNaNtsQkp8Hn8IWYuazr+KRiyBSkCP8CV+pzKd1GonU5I8ybbJknpi77jbWtforEIML6Yvfw749D7FvyA8+BFHICpWrqg3tWVwfuS3MxztHfWIMdLPpuw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=IZv4QVXxFhqWRtjh+/NfpMtiqTMZziieLu2FrKUZ4OE=;
 b=j9YShkCB/WVpr/+c3Kg9betbP4KkHiZE4Gk/hmegW3BkJ0MnfAn6nMSogO+hGuzRwEC5C0XxpDW46SYvvAfgHdQQuJ21cS9o8fQFzRJkeeGOjAHIYRkptRdQIQDpBy4Ql0WTF6jYitgYG5BkrKy38C+NklsFiRhxmPTBvnkxWROwXhKup6QEg/iSUaGgdZSIEXy9qKcucCKdc5b2tx+9QOyFumqHQVznwxjLB1uo9OvYyB9PrwgoLeu0qz/rgDPbwUyuVd/1tja/8gwDNZ9DfwUXQsNaqPWohHl2BElBcTFk9ApOZa+tdSAGQg9bHpJi3W8sNXrqk19gn2rOdUw46w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=IZv4QVXxFhqWRtjh+/NfpMtiqTMZziieLu2FrKUZ4OE=;
 b=4qBB6slQv9OQXljVGrC3Trap++zdf67qA4ZbFeF3BwQu0mUQ6ZgCiX8H98SD3Ia27eL4ABhZF13S1Ia+rYAq7u4zx24pI08ixr78Du8itfr7IGQtyAOrn92Hf8lBKVFnHbTQZev9FsPvirXNB8MItPMUWkkjMc1wA/pbWKHtg1w=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Julien Grall <julien@xen.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Xen-devel
	<xen-devel@lists.xenproject.org>, Jan Beulich <jbeulich@suse.com>, Andrew
 Cooper <andrew.cooper3@citrix.com>, "roger.pau@citrix.com"
	<roger.pau@citrix.com>, Bertrand Marquis <Bertrand.Marquis@arm.com>,
	"george.dunlap@citrix.com" <george.dunlap@citrix.com>, "wl@xen.org"
	<wl@xen.org>
Subject: Re: [PATCH] bitmap: fix n__ signess
Thread-Topic: [PATCH] bitmap: fix n__ signess
Thread-Index: AQHZ8mJT1hRW8AvsV0W7X8Uoqm4UN7AxZzyAgAARBwA=
Date: Fri, 29 Sep 2023 08:25:45 +0000
Message-ID: <7A91A10F-90BE-4C5E-9E58-967D158CB4D8@arm.com>
References:
 <alpine.DEB.2.22.394.2309281616200.1996340@ubuntu-linux-20-04-desktop>
 <592517ec-f093-4789-8cd6-320f886e45ae@xen.org>
In-Reply-To: <592517ec-f093-4789-8cd6-320f886e45ae@xen.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3774.100.2.1.4)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|PAWPR08MB10166:EE_|DBAEUR03FT008:EE_|DBBPR08MB5913:EE_
X-MS-Office365-Filtering-Correlation-Id: e70cc9db-29f6-4b08-fa6e-08dbc0c5c1c2
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 VJxZx3s56wG0ur/NQpE6/Ga7f0aSY2bwh5mRUiyw5gKbNQPJD+sE5r6ywB518jMejgRlntfU7y+33iNt7WdCgfSXYOQKAoKfYTlcRMduCBDY7Fwy2X5UB8ERiMeRgBwupeOOK9JnrJxU8ChpKzYJQUHRzhUx3QG9QfptdWgrCQmuzD1TY9/DG0Ktzr0WbOOgaIUZX+beiwnYUKVZdX+FeX8DtSbnR1RASMGuxoGjTeFeSJWgZD4UtN+jf/HtHBS9w3b0V/DM+//HvnlEHhEYGHHx1HZsN9lXzg19Otl7UQNfBInryNP4p7t4EmX2LYwZM+0zm3H2D2xMaQcnMC8vNMmwPJgSk2PMNQiGtU7E8aLBMT5nUQOSbEuatlWOJei6OwSwdztNioxpy5eHUhl9BfK3G8+l61bXMFN/AnPay+CReJJ/zhBEaTPtzJd5MQi9jq0x+AXUq3tUmy83Rl0NrsPBocY5gtnPC5FiZVA+MP0w08gJY2vwZa8Xwhuepyf5R0TLqhn/z09xfdm1fiR4QLqpl3dEViM7iLKpW0um6Ov0pz6xb9M1iBCC5X4nrAf21hBP7/MU0ekNOCqyTShrlrh+5k0pIG5L0Y6TQMUcfZqCKm7Ki9QpJQTF3PSTSI2ze5uQxR7xWGlifKWC9WDVKw==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(376002)(136003)(396003)(39860400002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(38070700005)(71200400001)(478600001)(83380400001)(26005)(2616005)(6512007)(122000001)(6506007)(53546011)(6486002)(38100700002)(4744005)(2906002)(33656002)(86362001)(8676002)(4326008)(8936002)(5660300002)(64756008)(66446008)(91956017)(66556008)(66946007)(36756003)(66476007)(316002)(54906003)(41300700001)(6916009)(76116006)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <330DC49B641DC04097BF7A2FFF2298E4@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB10166
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT008.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	4812598e-b233-481f-71c8-08dbc0c5ad75
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	FlCPpJtfYA/ALodg7eiaBAHo3UGuAvcqB+YkzpipSK61ilRr8vHGh605K4iQYCoMhtYA3juh49UnX/p6IZIrb4KvdoezxfbKI2NMVWzP2Nh8M3VYCUXaaX3ct2qjUNXOrx5Su6ATm+pRjl//cvuGyZBotQDjA6wxpUoghmmq9U/NzJfvvy4CGrFiO9AHo8gdDut9FX+jeK2UOQ6gaGzxu08u5/4GNmrTidonJ9cR84xqnI9e+4lARIhanOFrmSDwjR2Bz7xCgU4/8V3JXBD+FgmQhWWLwgJ6bC5SHobMWmL8I2KO/0WwVb2HJF1Wf6Z2O46My/MRvWCh67WPO34vqxzAKFB3O/WAnE6bZ1OI6QHOl/uQT9Cv8lYcQHREyfMI8p+ekvtAg8EriiOHvJ4Yb6U5OnGYz/OQFmfWQu/OANAtG4KQPI5ENkJgEKqyp/PsAiTTQJhmPx1AqmGVZb2t3JKCL1Uk4dPKbC3PrExxFIMmx8ZMWdUyiPn47Z+mKA3bueIBSK96UyLVmzm8zXJhTizF6GsEihucxJAg3TSTLY4U3yEwApzZM5bhnMwop/ECAvHh9660ogi2QAM6NKaaPMh0z+3T5WKfu9z/V4Ic9n4sf8CVlknDaB+kz0qJHwLWZGm08q2eJwfyNq335RUlXZJ9vFa//NVDXkhcWybH9K5Z5UTmZxgGIgWmwfvUEho5rem148VPBpL+dCZWPfilgTy2v+cuFGxctl1uIGbGrXHIYxH3Tx5yW/ztMz/ndpye
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(346002)(39860400002)(136003)(376002)(396003)(230922051799003)(82310400011)(64100799003)(1800799009)(451199024)(186009)(46966006)(40470700004)(36840700001)(6512007)(2616005)(6506007)(53546011)(6486002)(83380400001)(8936002)(26005)(70206006)(336012)(478600001)(2906002)(6862004)(70586007)(356005)(4744005)(316002)(4326008)(41300700001)(5660300002)(54906003)(8676002)(36860700001)(86362001)(82740400003)(40460700003)(40480700001)(47076005)(81166007)(33656002)(36756003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 08:26:19.4928
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: e70cc9db-29f6-4b08-fa6e-08dbc0c5c1c2
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT008.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB5913



> On 29 Sep 2023, at 08:24, Julien Grall <julien@xen.org> wrote:
>=20
> Hi Stefano,
>=20
> On 29/09/2023 00:19, Stefano Stabellini wrote:
>> All callers of the bitmap_switch macro (which are all within bitmap.h)
>> pass an int as first parameter. Do not assign it to an unsigned int
>> potentially introducing errors.
>> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
>> ---
>> We could also have gone the other way and change all the callers and the
>> callers' callers to use an unsigned int instead, but I went for the path
>> of least resistance.
>=20
> I understand this will solve the issue right now because the callers are =
all passing 'int'. However, all the callers will need to switch to 'unsigne=
d int' in order to solve violations in their callers.

I was about to send a patch like this but Stefano beat me sending this one,
anyway I confirm that switching the callers type will solve this violation.

Cheers,
Luca



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:41:55 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:41:55 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610366.949729 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm94I-0006HN-7M; Fri, 29 Sep 2023 08:41:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610366.949729; Fri, 29 Sep 2023 08:41:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm94I-0006HG-3O; Fri, 29 Sep 2023 08:41:50 +0000
Received: by outflank-mailman (input) for mailman id 610366;
 Fri, 29 Sep 2023 08:41:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xPTL=FN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qm94G-0006C1-Jk
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:41:48 +0000
Received: from EUR02-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur02on2062c.outbound.protection.outlook.com
 [2a01:111:f400:fe16::62c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 04f71b5b-5ea4-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 10:41:47 +0200 (CEST)
Received: from DUZPR01CA0202.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:4b6::13) by VI1PR08MB5373.eurprd08.prod.outlook.com
 (2603:10a6:803:131::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.26; Fri, 29 Sep
 2023 08:41:40 +0000
Received: from DBAEUR03FT036.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:4b6:cafe::60) by DUZPR01CA0202.outlook.office365.com
 (2603:10a6:10:4b6::13) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Fri, 29 Sep 2023 08:41:40 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT036.mail.protection.outlook.com (100.127.142.193) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.21 via Frontend Transport; Fri, 29 Sep 2023 08:41:40 +0000
Received: ("Tessian outbound fb5c0777b309:v211");
 Fri, 29 Sep 2023 08:41:40 +0000
Received: from 306493108f4d.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 0386A908-91C4-4FE6-AA1C-27D70C5CF231.1; 
 Fri, 29 Sep 2023 08:41:33 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 306493108f4d.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 08:41:33 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAVPR08MB9842.eurprd08.prod.outlook.com (2603:10a6:102:31e::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Fri, 29 Sep
 2023 08:41:31 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Fri, 29 Sep 2023
 08:41:31 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 04f71b5b-5ea4-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GcvLXMfA++2OGLOfDdM12WuDckKtpEbX/QxM9ZtrOpE=;
 b=mDcpYc4yWB5317jAfU+NdMt+53J+GwVVPLtHTZ1qk4oGSWHduZH0E+vi87DKCSMuPcDmwPLfnbpbBJrffmSRbt7gfP3FuIHLyVbXPtNlKgziWsIZDu4xQ2dHuHVmVXJFoCG73X2669/S6oV5P/sno/pqyDiFuancvAaLyja5kjs=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: b3b8a75c1ab81a12
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ODmzE2ALD+Pr0KMHQJ29j8zsPzTB4EX6Uoeys/wCbjbjt/YO5SdQXVIo/baq7VS6FF5eyuLnCYMLfkW4hANz1UREYVXHcM8zV2rhVyILaO38aXa6/pRz+n4iJw11VL3c58RQSY0VGKwCEVN3TZ4rApOPU2B9rIwCauvi2AxJAGBD+ytcmqPBvI1TXXXsARkojKYrfVKoZnTNOAFt9S+a1gvBzQzje5Ajcpd3qQQ/oqbExv6s1kOq4McJBbWZRy6zxGT+COsYXQWZd+YIZWxIEr9khmIvv3RTldhGm5RU5s0bC04h56Vsq4+6B7jmyim9TD18o23SjK5RvHSjkT1JYA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=GcvLXMfA++2OGLOfDdM12WuDckKtpEbX/QxM9ZtrOpE=;
 b=MGYmivX+CF3aHIxtT9rqUm+mN8t1y+jIqEYaZBk5vtmpU4Ed2cIdNAJn+LoX06ZdONS2k8P1gOHPMGgWNWBmweRugwtQQBQw/aPHCyCs+9F0bNvrwMAMnzlGxgTI4/hBgNh1kgIe+dsDm9CExetZGS1UCswcRdqK3UIVdh0MoVx0bs5NYid9iCHpx8vacDstyJnRVvCu8kGFsUxFdUhqlpjcLlKlYxNR2BxMaXB1vBpBHWbfwt2B0rPNnc6PrmVXSkYFzGODOzXWJxs7pBpEFEYPofJ36qbyV+BzFb8kyDmB3ThCo1TOxHqS8YxBRyj+oQVryQT4UVQ78NfWJPOAGA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=GcvLXMfA++2OGLOfDdM12WuDckKtpEbX/QxM9ZtrOpE=;
 b=mDcpYc4yWB5317jAfU+NdMt+53J+GwVVPLtHTZ1qk4oGSWHduZH0E+vi87DKCSMuPcDmwPLfnbpbBJrffmSRbt7gfP3FuIHLyVbXPtNlKgziWsIZDu4xQ2dHuHVmVXJFoCG73X2669/S6oV5P/sno/pqyDiFuancvAaLyja5kjs=
From: Henry Wang <Henry.Wang@arm.com>
To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	"xen-announce@lists.xenproject.org" <xen-announce@lists.xenproject.org>,
	Xen-users <xen-users@lists.xenproject.org>
CC: "community.manager@xenproject.org" <community.manager@xenproject.org>
Subject: Xen 4.18 rc1
Thread-Topic: Xen 4.18 rc1
Thread-Index: AQHZ8rCK24ghm9ApRk6ymvGIHuNicg==
Date: Fri, 29 Sep 2023 08:41:31 +0000
Message-ID:
 <AS8PR08MB799131EDEFFD01D2BB223B1C92C0A@AS8PR08MB7991.eurprd08.prod.outlook.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PAVPR08MB9842:EE_|DBAEUR03FT036:EE_|VI1PR08MB5373:EE_
X-MS-Office365-Filtering-Correlation-Id: f64b83bc-b59b-4c8c-f23e-08dbc0c7e6a0
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 YjCTYNM68kWn/VECwLoseUAtEfw3Bh47CuyzRxgtswbjmEKW/da+VXlBs7RGwQT0TjjO+jBpf+Vsqc0lNr6GRbjyAoZOy5wNPuwn/RVAkWiEtrf14XzIuNcfkk5740fBEISoo/P13PICKl12wfaNxtwX66fQt7BqG7DAWQwByHMr+p/upbm13L0tvpDOJBvdNOkeCzAS3NLPmF2pV6vOWqqRCYMFaTkIowpcJV15XTMxiF5CiaZTaWruSK6qnYKXQtSJwJSIBxv/fGqcAoGRMVhQAKKyTZCPWl/KqaVbojxzIseqhQ8djYZ2bcoKp6AJuDW+Hj4Afyw7wv0a8IhDXisEUSVOb8dGLUZFkBwZ0zEpXvkhMn/Em73jJiq93xkuT/Ubh1romhoTqwb0xPPsNBG/qE64fTFG8rd2ISPDkXERscrK6HtHflc7IC8VxzgNeCmrI7QxeKLpTLOUsyykGbGEWiHSvRF0hfSO8r97hQ9K/OzqGXd4iBzvqqp/k8ac85uZ4e9MjUXoDd5rTWY5i6iSb2nR/MAxQ98uUjhHCptV9P74o9TOyjP6n2AZ5DxmBYKgtIaO3mL1D+ICNZFrcZIDvHIGZn1C8bCz0vosTUs=
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(396003)(366004)(376002)(346002)(136003)(230922051799003)(451199024)(1800799009)(64100799003)(186009)(71200400001)(26005)(478600001)(122000001)(7696005)(86362001)(38100700002)(166002)(33656002)(55016003)(5660300002)(38070700005)(83380400001)(966005)(6506007)(4326008)(2906002)(8936002)(8676002)(110136005)(41300700001)(66946007)(316002)(64756008)(66556008)(66476007)(66446008)(76116006)(4744005)(52536014)(7116003)(9686003);DIR:OUT;SFP:1101;
Content-Type: multipart/alternative;
	boundary="_000_AS8PR08MB799131EDEFFD01D2BB223B1C92C0AAS8PR08MB7991eurp_"
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9842
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	00584097-8a37-45fd-bfb4-08dbc0c7e164
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	O/cDxTgNle16sysbanknPDfARoHqHmOSUcIzcuIWC7HPmSqU3yAX5E39UUeHPXPJmXZT2Wvjmw5KcgXKG7TD/Bv9ndCBL8O+SMS7cs2PikU1yzPbZ1H/pLJthKUNU7ltSZoMz1XnCAhexBsFSRhvxc4n7wkKiL8dn087nfuQJ2W+C8D74NlBUeEm07i++Fc3mlz1HlcXLS8bsxaY2ZHNtlJkdtEwrPwyUtdRITLja3EsuXUkc1+66mqSWOPWmCzgIvSdZFS3JwfoHIBsDBajQ9kHgkybwQodFFysVOH0C7OvYGXbUtKF3eQ0sqr43fbh1hj8WCIn7yiM8FUfU7iWSK+ZMOZFki1rvRl6xk6SgrR76R1nM8oHZfwYijq5RpbBK3WHxCcXj/8+vOLrkkSd5UMq5HSNVIir1jIR4ocIs42zolkSg8+seSRtptP/UGXy3Hq96QYWiGaD+jBI3iTKvRchKl8n9mtQ28KD69VM6d+vCQ+VZJI/z2yrMpL6HtimFKPhQdVqOA8Q9JpfZ8O7xww/qooat1/GDkarADJwiDnCmIiADIyWA76hv8FzOlyhklQr7hBU4NZXGAZBo7DhxHtyJaiPtaeE7RNvUk75YSrjhMPD9QWMK4ycyDkV7S+ZrJT6Xtu0slQpwngRUk5abV/Yx6rPQyRNeyQiOcFaz3ZYpvu/ha2+CENyjh7YNJZM
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(396003)(39850400004)(346002)(376002)(230922051799003)(186009)(1800799009)(64100799003)(451199024)(82310400011)(36840700001)(46966006)(7116003)(55016003)(7696005)(6506007)(83380400001)(9686003)(450100002)(316002)(478600001)(70206006)(8936002)(26005)(81166007)(336012)(70586007)(2906002)(966005)(82740400003)(356005)(5660300002)(110136005)(41300700001)(4326008)(47076005)(86362001)(33656002)(40480700001)(36860700001)(8676002)(166002)(52536014);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 08:41:40.3233
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: f64b83bc-b59b-4c8c-f23e-08dbc0c7e6a0
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT036.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5373

--_000_AS8PR08MB799131EDEFFD01D2BB223B1C92C0AAS8PR08MB7991eurp_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hi all,

Xen 4.18 rc1 is tagged. You can check that out from xen.git:

git://xenbits.xen.org/xen.git 4.18.0-rc1

For your convenience there is also a tarball at:
https://downloads.xenproject.org/release/xen/4.18.0-rc1/xen-4.18.0-rc1.tar.=
gz

And the signature is at:
https://downloads.xenproject.org/release/xen/4.18.0-rc1/xen-4.18.0-rc1.tar.=
gz.sig

Please send bug reports and test reports to xen-devel@lists.xenproject.org<=
mailto:xen-devel@lists.xenproject.org>.
When sending bug reports, please CC relevant maintainers and me
(Henry.Wang@arm.com<mailto:Henry.Wang@arm.com>).

Kind regards,
Henry

--_000_AS8PR08MB799131EDEFFD01D2BB223B1C92C0AAS8PR08MB7991eurp_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:o=3D"urn:schemas-microsoft-com:office:office" xmlns:w=3D"urn:sc=
hemas-microsoft-com:office:word" xmlns:m=3D"http://schemas.microsoft.com/of=
fice/2004/12/omml" xmlns=3D"http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:DengXian;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:"\@DengXian";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;
	mso-ligatures:standardcontextual;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri",sans-serif;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style>
</head>
<body lang=3D"en-CN" link=3D"#0563C1" vlink=3D"#954F72" style=3D"word-wrap:=
break-word">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span lang=3D"EN-US">Hi all,<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Xen 4.18 rc1 is tagged. You can=
 check that out from xen.git:<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">git://xenbits.xen.org/xen.git 4=
.18.0-rc1<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">For your convenience there is a=
lso a tarball at:<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><a href=3D"https://downloads.xe=
nproject.org/release/xen/4.18.0-rc1/xen-4.18.0-rc1.tar.gz">https://download=
s.xenproject.org/release/xen/4.18.0-rc1/xen-4.18.0-rc1.tar.gz</a><o:p></o:p=
></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">And the signature is at:<o:p></=
o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><a href=3D"https://downloads.xe=
nproject.org/release/xen/4.18.0-rc1/xen-4.18.0-rc1.tar.gz.sig">https://down=
loads.xenproject.org/release/xen/4.18.0-rc1/xen-4.18.0-rc1.tar.gz.sig</a><o=
:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Please send bug reports and tes=
t reports to
<a href=3D"mailto:xen-devel@lists.xenproject.org">xen-devel@lists.xenprojec=
t.org</a>.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">When sending bug reports, pleas=
e CC relevant maintainers and me<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">(<a href=3D"mailto:Henry.Wang@a=
rm.com">Henry.Wang@arm.com</a>).<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Kind regards,<o:p></o:p></span>=
</p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Henry<o:p></o:p></span></p>
</div>
</body>
</html>

--_000_AS8PR08MB799131EDEFFD01D2BB223B1C92C0AAS8PR08MB7991eurp_--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:45:35 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:45:35 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610397.949756 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm97r-0001Gr-2v; Fri, 29 Sep 2023 08:45:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610397.949756; Fri, 29 Sep 2023 08:45:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm97q-0001Gi-W7; Fri, 29 Sep 2023 08:45:30 +0000
Received: by outflank-mailman (input) for mailman id 610397;
 Fri, 29 Sep 2023 08:45:29 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xPTL=FN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qm97p-0001Eu-4Y
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:45:29 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 (mail-db8eur05on2060e.outbound.protection.outlook.com
 [2a01:111:f400:7e1a::60e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8992c866-5ea4-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 10:45:27 +0200 (CEST)
Received: from DUZPR01CA0070.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:3c2::9) by GV1PR08MB7899.eurprd08.prod.outlook.com
 (2603:10a6:150:5e::16) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 08:45:22 +0000
Received: from DBAEUR03FT061.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:3c2:cafe::ec) by DUZPR01CA0070.outlook.office365.com
 (2603:10a6:10:3c2::9) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Fri, 29 Sep 2023 08:45:22 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT061.mail.protection.outlook.com (100.127.143.28) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.26 via Frontend Transport; Fri, 29 Sep 2023 08:45:21 +0000
Received: ("Tessian outbound 9aeaca65ec26:v211");
 Fri, 29 Sep 2023 08:45:21 +0000
Received: from 7ef519e64068.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 434B119D-28A5-49EA-80FC-D819E277064C.1; 
 Fri, 29 Sep 2023 08:45:14 +0000
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 7ef519e64068.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 08:45:14 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by GV2PR08MB9304.eurprd08.prod.outlook.com (2603:10a6:150:d4::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Fri, 29 Sep
 2023 08:45:11 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Fri, 29 Sep 2023
 08:45:11 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8992c866-5ea4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nX5jYifE4AR+XHJQejcaPs0cFsjITqj2JOSczgNhGLQ=;
 b=UgClp/ca9HNPOLxsPlU9qsmYPZWyaCo2cmwCzjxeVwm7tP6mpQL9K980t2isRRABkFd4F3gua3anuJCxjzEKjWf4beEtEaFXWhcURgzS8jLcMxSjqYLcIxyfFisHZZS5U7lOo7MSBD2TqhtZIrH30YLZjvOQZhCskpezstKtuw8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 7c0040a865715278
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=D04UYkOqG147HGn3ZSpw58EJhAqvW8rpP2SYmooyXwYIz0WNe9LKRIXWE7OJ+8/amIa7dyTwF29dQhKygohF7a3JFL0LHBiIhIVJF/SvyJM8zTy/fASZBSoTMw2PNl5bMJAH1mE13CxFTI0bJHZJ3RxQ1u1wD/aPuEaj6xDwzQnq2e47/93M7WfheeVmtKS3RztnCu3C/oJxvIzROsl82A2Fc8vVAAQKzM/BsbcNnBddWN6vc2EsnA5TeWDxlcN4BoVBj4kMN0fFl/vGA11sz9ADpbyMdslY2uxNZMQIolbxO9bPY/q1+KpNH46JGJgt+d1FefRvSdAl5T1eQsF0Ww==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=nX5jYifE4AR+XHJQejcaPs0cFsjITqj2JOSczgNhGLQ=;
 b=OPt1nnVOVZ1quDuKfnSN0NgmYscJ8hqk55F49Qnwu1gJJbe8Es3RCW/U45jtgeHyRcGzSdlvjV07RZqWgMTGByaueWfWO1kVdPB0nhf67oCQ/be3JgfI+ikGz6W4OOBiKOWpJkR3HsJtwIcfaN0Ye0Y/oymzsWv7gugoP4kkoYx/KzKz1zKrUG1Evdoouz/5y8VjG463VSTjnZ9fZ5f0dDx5bUl3/rzNyrblL2zk2DQ5Y0SUK1bcnzOyEmAwVkgLgurGA/zI7FyWNVoNtYrFzbRsWBefXHuBsZgUqbc9A5OMtVEIZm6aiC75OViCX7jbMdcVsxCTMAGcsO9+ESchHQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=nX5jYifE4AR+XHJQejcaPs0cFsjITqj2JOSczgNhGLQ=;
 b=UgClp/ca9HNPOLxsPlU9qsmYPZWyaCo2cmwCzjxeVwm7tP6mpQL9K980t2isRRABkFd4F3gua3anuJCxjzEKjWf4beEtEaFXWhcURgzS8jLcMxSjqYLcIxyfFisHZZS5U7lOo7MSBD2TqhtZIrH30YLZjvOQZhCskpezstKtuw8=
From: Henry Wang <Henry.Wang@arm.com>
To: "committers@xenproject.org" <committers@xenproject.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
CC: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
	<andrew.cooper3@citrix.com>, Julien Grall <julien@xen.org>,
	"sstabellini@kernel.org" <sstabellini@kernel.org>,
	"community.manager@xenproject.org" <community.manager@xenproject.org>
Subject: Re: Temporary commit moratorium for 4.18 RC1
Thread-Topic: Temporary commit moratorium for 4.18 RC1
Thread-Index: AQHZ8NWHieDtW3L/RkOX7PfWoLrW7rAxgMyA
Date: Fri, 29 Sep 2023 08:45:11 +0000
Message-ID: <63DD7E33-55A1-41BE-B2EA-FC8CFDEDBFA4@arm.com>
References:
 <AS8PR08MB799113F8D3EFDD9AC16DD88F92C3A@AS8PR08MB7991.eurprd08.prod.outlook.com>
In-Reply-To:
 <AS8PR08MB799113F8D3EFDD9AC16DD88F92C3A@AS8PR08MB7991.eurprd08.prod.outlook.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|GV2PR08MB9304:EE_|DBAEUR03FT061:EE_|GV1PR08MB7899:EE_
X-MS-Office365-Filtering-Correlation-Id: 825b9504-a415-4151-128c-08dbc0c86a8c
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 xar/ufOcoALaP6ZncA+DJhCkJdUvTHO6PXCQ+FOt5rOtvaba13uYDpl/1lNosXhOEtxM1Ogykh+qxPKIFp3d0iVNRGfcq9Mjwon+r436SKHByIxPYBcrDqM6PcYxTHtjGSui2TooJiw0CgILCIJ37WG2GArOCxbZEKDLwZba72c5zwsf5QQ++qCRnmlF+ksYFEjFzjAnin78P/BsqE/aTFGp2IeAxqZig3tozJXgdjHwm3SS4SlTdJl+6rSerKvVqk/knsLe4BUTaCdZ2QdMAloHy2/ypoSjmQYpp12bybr8PZXfKk0IEYo95jmk5L8OKCxnSdjxKWavARgTkF3whhLKpyB39dqc2RLGz0GixoBcg14zPQNAasJQ6CAADL2ykj0/B8QnHHYlqeNNjY9MEtAtI6JsQf+HiGkUqhD5388Achh99wjUGNdtPgesyVXhrT0P+URjoMXz7FlZECiAEzSUUj+32rVwkJlnBS+23rtZ9jFsXvCs2hWE0Ep8GXb8hOE3uKjmKEpTgPGTm4UTEA+/FZPJQxGx0cLAizz68OY6cnCP67YF3GsW9KvBMsty/hP6THJ4SQskex9jUtPPgN9/ZK8z17+kn6pQDKHHlMUzQsdHie2r7tz3TfkwjiUXc2ndpp/KF4BnPbAcUXEFlQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(376002)(39860400002)(396003)(346002)(366004)(230922051799003)(64100799003)(186009)(451199024)(1800799009)(2616005)(66946007)(6486002)(26005)(6506007)(53546011)(6512007)(38100700002)(38070700005)(86362001)(36756003)(33656002)(122000001)(316002)(8676002)(8936002)(83380400001)(4326008)(41300700001)(5660300002)(66476007)(66446008)(54906003)(110136005)(91956017)(76116006)(4744005)(2906002)(64756008)(71200400001)(66556008)(478600001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <2372F9D222557C49ADF135DED64244A9@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB9304
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT061.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	52023760-e8e4-428b-8eb4-08dbc0c86499
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	BNOVmEa/kkLbkAE0dwiq2LTcdcHaksqRAFu1N7SYJ5doPM2f+aa5jd0s6TPJmbbKLgZcWK1eHFGDvBJogJziZxKjga+WmX/8Yyltla5pMWtI7zO1vaiQa6KcVVbsbL7yzOc3I63ZGiFxuicoRE214uGtEm/xtABLWwtHmABZXyLQMi0Gzu+QVyrNxpbXHHYRk99Hm/MKchDMij7mglslUtY1WNzG6emyl3Wf5JvunAE67XKgIEDbdPV4YdQKFNRgT1Np7X1LahV3V9d0SQwRWNv4B10n0QQHnwexhUpB7QfaitWBvVAC06h9t3IMQR/owLJ3Fr5kiT5LO5Jq2CXV4sMN6nal1vrEolUhb9dr+0BMWYstNuLU9aOgf0DdwxlmObkAQMBmEW6/SiEOMZN12xOowO+aVGCF7XW8/90EZlG9BUAfMVKn4ybzGsVs+pEZ15tuXapLoCJ1ODDUw3HqsCoEUeEnoYctWPfJV3uF4o42h16pIru3VRL6d7enWCb9iCJMD3QbjwwOHDkceXZ13WWmFVituGOnPzpEyIXgk93oN8EnZfg/uBQM/WzlJzez9pHp+zxZtzBRqGQ7lFXdFX4kSumhh42k0EgRE0pk99dpuBLOn+uPXN0gCqEo2uuquz3pewCF5YMPnw4JWpAu/TDCPwAPZvATZv4qt4+sBM9BVWS+zLUhuzEp13DCTx7beghop7KEuEAmJj2p+YP7RGDzAOGtV/UWIDRtueR7grx75Ki7/7h0lT2cOcla2Oct
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(376002)(346002)(39860400002)(136003)(230922051799003)(64100799003)(186009)(82310400011)(1800799009)(451199024)(36840700001)(46966006)(40470700004)(86362001)(2906002)(4744005)(478600001)(5660300002)(8676002)(4326008)(8936002)(41300700001)(316002)(54906003)(70586007)(70206006)(110136005)(40480700001)(33656002)(40460700003)(81166007)(82740400003)(356005)(6486002)(6512007)(36860700001)(53546011)(6506007)(2616005)(26005)(336012)(47076005)(36756003)(83380400001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 08:45:21.6614
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 825b9504-a415-4151-128c-08dbc0c86a8c
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT061.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7899

Hi all,

> On Sep 27, 2023, at 08:10, Henry Wang <Henry.Wang@arm.com> wrote:
>=20
> Hi committers,
>  We will be tagging the 4.18 RC1 on Fri Sep 29, 2023. In order to have en=
ough time
> for OSSTest to do the sync between staging and master, if there is any pa=
tch to be
> committed, please commit them by the morning of Thu Sep 28, 2023, EU time=
 and
> avoid committing to the staging until 4.18 RC1 is prepared. Thanks!

The 4.18 RC1 is now prepared, so the staging branch is re-opened.

I will send another email about temporary commit moratorium for RC2 when RC=
2
needs to be prepared. Thanks!

Kind regards,
Henry


>  Kind regards,
> Henry




From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:46:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:46:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610404.949766 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm998-0001s9-Db; Fri, 29 Sep 2023 08:46:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610404.949766; Fri, 29 Sep 2023 08:46:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm998-0001s2-Aj; Fri, 29 Sep 2023 08:46:50 +0000
Received: by outflank-mailman (input) for mailman id 610404;
 Fri, 29 Sep 2023 08:46:49 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xPTL=FN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qm997-0001rh-Hh
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:46:49 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on0616.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::616])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b986110f-5ea4-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 10:46:48 +0200 (CEST)
Received: from DUZPR01CA0064.eurprd01.prod.exchangelabs.com
 (2603:10a6:10:3c2::17) by AS8PR08MB8778.eurprd08.prod.outlook.com
 (2603:10a6:20b:5bf::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 08:46:45 +0000
Received: from DBAEUR03FT035.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:3c2:cafe::c7) by DUZPR01CA0064.outlook.office365.com
 (2603:10a6:10:3c2::17) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.24 via Frontend
 Transport; Fri, 29 Sep 2023 08:46:45 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT035.mail.protection.outlook.com (100.127.142.136) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.21 via Frontend Transport; Fri, 29 Sep 2023 08:46:44 +0000
Received: ("Tessian outbound d219f9a4f5c9:v211");
 Fri, 29 Sep 2023 08:46:44 +0000
Received: from e2ad50fe000d.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 22818982-42E6-48F8-8EFE-C1CD829BD661.1; 
 Fri, 29 Sep 2023 08:46:38 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e2ad50fe000d.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 08:46:38 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by PAVPR08MB9433.eurprd08.prod.outlook.com (2603:10a6:102:319::13)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.21; Fri, 29 Sep
 2023 08:46:36 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Fri, 29 Sep 2023
 08:46:36 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b986110f-5ea4-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/Z/18ITuBagn3j6CdrLAC7BenFW5denps1Qs/5TXe9g=;
 b=hV/oH13V5i0jhtNIvjG2G3WwXk2Mwpdb7N9WWg7ESsTGUOe8ZmB0HUiZDEbEUKtB0LGgso823WZkFd+5KpWm9dO0/SHfi2M8lsVgH+OxSgJTA7i42W7rywK3q4P5A0MaBYlhklL++l7jE68w3LzY7cqc28ZaWFrfywmCN1ZLIB8=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 1b11eec1ca70dcf5
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=YfDnQKAWhsGDACNM7xWgVk4admFMxNZnqCSYwfJLFy/sRbzACltB8ea0WiAhn2BCcKGfsMSuQYzSAHmaucbsO+WQt0jlu6eFNuwfbwGXM9Zp9cBwWI05od69pCywQ2b5MU6M6LikwkYcXFJOYDty7O9RmhiiFTC/a0hQkG+dBZ51oBA7ALFVSA9lFF16fg7qVN2Eyb7BZkcigL3lgS4J83TXBl87l4hZFgn++oIixrazG0WDxLPVgOjQtq+WvycFz1vLe699X9bq4iY+n4ZJDUUG9rLXvrW7MB/Jwj/CdXDBsR3NBThKwIeCAIFkXp/SJzROjqKCdpuhEshZ32sxXQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/Z/18ITuBagn3j6CdrLAC7BenFW5denps1Qs/5TXe9g=;
 b=dTpTSSXBZoX4E41D+scKr/IPYzO796eXUcFZJaGebx+4ZfIRTFNL7nT4aW6jJzwFEQZOuIjKDOuNB+Ef49uAtR3dtV7vlOu246fmu9VYFX+1fQQYdkAL+dSmLowyn6uSGHk+FPhtVZ2kR64zekHAYZI2xzN/aPtUMUSZ8QaBt4eSGKFty/Rk9zZZriOJRL7wUGGWXMXj2d+CWvMNKGjiqDh9TP0eUlhS8XE4cn1IK8J8Prnun2hKe6VrEdZpWxwEPmMVEEu1+SDzIL1dgQls3gTaI6DC6y4nI28OORgbZLLQemd6j6hwoxRcfQjMDfb/g7S/hrrIWu8scPulDx31MA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/Z/18ITuBagn3j6CdrLAC7BenFW5denps1Qs/5TXe9g=;
 b=hV/oH13V5i0jhtNIvjG2G3WwXk2Mwpdb7N9WWg7ESsTGUOe8ZmB0HUiZDEbEUKtB0LGgso823WZkFd+5KpWm9dO0/SHfi2M8lsVgH+OxSgJTA7i42W7rywK3q4P5A0MaBYlhklL++l7jE68w3LzY7cqc28ZaWFrfywmCN1ZLIB8=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Juergen Gross <jgross@suse.com>, David Kahurani <k.kahurani@gmail.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH] tools/xenstore: Avoid leaking memory in check_store
Thread-Topic: [PATCH] tools/xenstore: Avoid leaking memory in check_store
Thread-Index: AQHZ8pGDrH8+iI/p30O2arocOudwy7AxTkYAgAAo9ICAAAZ+gA==
Date: Fri, 29 Sep 2023 08:46:36 +0000
Message-ID: <AEA1F572-50B4-4EBE-922F-25A212243C4A@arm.com>
References: <20230929045724.6844-1-k.kahurani@gmail.com>
 <43936092-75f5-42ff-b0c2-2f79147e2f86@suse.com>
 <0a5bab77-5cac-47a2-805b-76396e4d4c89@citrix.com>
In-Reply-To: <0a5bab77-5cac-47a2-805b-76396e4d4c89@citrix.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|PAVPR08MB9433:EE_|DBAEUR03FT035:EE_|AS8PR08MB8778:EE_
X-MS-Office365-Filtering-Correlation-Id: 08109da7-da4f-40de-85e9-08dbc0c89c37
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 V5u8rw5qn8wFZzmspHM9pz+TNOXRSNhAmKYdsg8YHUY+WR7227ThU9rc4nTOIvfy8GOjb9z8DARaAPMjom49/1cz/cWOE1NfE1TBksv/9UboYzOdeUYb9CLr37CG3iK5zxgTgzyYrU2YDyd4WEWrOq+uqjiR7X5Avn0IDFuqv31/h7gl2UhsEyb6e65S8CsRBNqEd+oRgrOaH03oOjd5wZ2okG5xItyK69FVBNKORmPW16OdcjD5+/ILE2iYgqoskr0PO19eKTfCvxsd9TCx43VPOY28RK9grnYLJuZZh7XT6qIuyIxOevF2TpVmGWvK+c3C5WrWoXq4MsFCGdHzIAm9tsdQAQRJSjevulHnhMXomwnBa7lCdg7pYjBV6hubGO32TpVsMMeXGCLmuGeRKufq0tiSjLmVgZw/SgDYOEz609b18n0KMcbNNFyEYq6QZXEltOO/cydURSWFWGX+z3ZoSeKl4QqJuD+Ny1fRaKiRTxLmiH2WhPu0XpYYh5EU9OK+iC1kAYByk2iCihaubEMYzdbpBTxAGFu9iLwPgNfy8Gz+0uJI8oTWHRlehhwXtWhwtJMtdRBsvg2S9M/+SDKOrXP+afFzHMZxrLwBxznYP8p+tqToTty8GezFqmnrFPEIHGrjFMBNMiImzpP+fQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(346002)(376002)(366004)(136003)(39860400002)(230922051799003)(1800799009)(186009)(451199024)(64100799003)(122000001)(83380400001)(316002)(6506007)(53546011)(38070700005)(26005)(6512007)(4326008)(66556008)(64756008)(8936002)(54906003)(2906002)(5660300002)(6486002)(36756003)(8676002)(6916009)(33656002)(41300700001)(38100700002)(91956017)(2616005)(76116006)(71200400001)(478600001)(66476007)(66446008)(86362001)(66946007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <6892D4E3D83042498188D85371333CB7@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9433
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT035.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	bd698f0e-4bfa-4816-1532-08dbc0c89727
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	KdiqH/J8beTOiJAo5slb4cWdDS/hoouh4IL1FeykOwfvT/zYOOhgUvYCMNpy54or5UipEcGH9Yta6uVHGTUU+nDaH698WJxzc3dlZcfCPeicyhR1vF/6Z5Z4K24lrh9pwmi9FwNyKHLOdUTp52YrbUBdwNssF4EvBQycP8GxgzgB6Zenyv2MBsGzH5CrZhW+SXjUqF3qwD+Qf0RxGiVdtOSs/F6akUXsgiFP7ykW/cTv+ar6/iM0EIU7MfPejtJ4AmHyAXa6fq5Otsriz9AeQfRSMDQ+ZhY//g3lojrbZjrYjvW0NSYOGCY5T2zd5EbBupLWptnScAtEjYuWQ232pUlejh0JBuN4ebpoIy+Ml01CqbOAKcmZft3fvRzg06f4tIpZP7mx0qiwW602u3KzI4G7rvutZd9VA7NllhjFh5clqRw/caLsHrguYWawKHdDExQCK/JNVoqRSUpx4EHJ+o9o2e4oCFlpbOKQSDyLCeKS55ZQxqnuZr14gUeLUS/yciNVOJhznaGRdIQ7ykEhFtO9Rv7OeOneyM6n1RThKKU5QdwysS4OYll9xw+iDdH3gWfNmSCNgHwff0a65a5slcfPHVmAIOwFJ7q8euXP+CVG2CswqyTu2Osg3yt/NLzc9kXPMbvQWT6p3Cngxzt2bNq3RfnOQsR8bSP4W94uFzOHa7KsOJsgPgVFWGK+j56Z/bghhEukyMkSN+cVAUU83EmZHPuxlvTwND8s40S7he4E2torzPP06S4hKmIy4I+i
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(346002)(376002)(396003)(39860400002)(230922051799003)(64100799003)(1800799009)(186009)(82310400011)(451199024)(46966006)(36840700001)(40470700004)(40460700003)(6512007)(6506007)(6486002)(53546011)(2616005)(26005)(336012)(33656002)(70586007)(70206006)(54906003)(86362001)(478600001)(47076005)(36860700001)(82740400003)(81166007)(83380400001)(356005)(2906002)(8936002)(8676002)(6862004)(4326008)(41300700001)(316002)(40480700001)(36756003)(5660300002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 08:46:44.9777
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 08109da7-da4f-40de-85e9-08dbc0c89c37
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT035.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8778

Hi all,

> On Sep 29, 2023, at 16:23, Andrew Cooper <andrew.cooper3@citrix.com> wrot=
e:
>=20
> On 29/09/2023 6:56 am, Juergen Gross wrote:
>> On 29.09.23 06:57, David Kahurani wrote:
>>=20
>> I'd like the following paragraph added to the commit message:
>>=20
>>   check_store() will leak the memory from reading the "@introduceDomain"
>>   and "@releaseDomain" nodes.
>>=20
>>> While this code should not be trigger-able from an unprivileged domain
>>> it is called multiple times when the database gets inconsistent. This
>>> means that a malicious guest able to corrupt the database will trigger
>>> the leaks here.
>>>=20
>>> Fix the leaks so that this code can be safely called from anywhere
>>>=20
>>=20
>> Fixes: 67617067f0b6 ("tools/xenstore: let check_store() check the
>> accounting data")
>>=20
>>> Signed-off-by: David Kahurani <k.kahurani@gmail.com>
>>=20
>> With above additions (can probably be done while committing):
>>=20
>> Reviewed-by: Juergen Gross <jgross@suse.com>
>=20
> Can do, but this needs Henry's approval too at this point in 4.18

This is definitely a patch that should go with 4.18 so:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

Kind regards,
Henry


>=20
> ~Andrew



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:51:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:51:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610409.949776 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Dv-0003rH-3V; Fri, 29 Sep 2023 08:51:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610409.949776; Fri, 29 Sep 2023 08:51:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Dv-0003rA-0t; Fri, 29 Sep 2023 08:51:47 +0000
Received: by outflank-mailman (input) for mailman id 610409;
 Fri, 29 Sep 2023 08:51:46 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S2/E=FN=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qm9Du-0003r3-79
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:51:46 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6a19b94b-5ea5-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 10:51:44 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id 6797A4EE0739;
 Fri, 29 Sep 2023 10:51:43 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6a19b94b-5ea5-11ee-9b0d-b553b5be7939
MIME-Version: 1.0
Date: Fri, 29 Sep 2023 10:51:43 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Jan Beulich <jbeulich@suse.com>, Andrew Cooper
 <andrew.cooper3@citrix.com>, roger.pau@citrix.com, Wei Liu <wl@xen.org>
Subject: Definition of mfn_t in x86's hvm/grant_table.h
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <a4b6710b66ed05292388ac6882b940ec@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

Hi,

while fixing a violation of R8.4 related to a missing include in 
x86/hvm/grant_table.c
I included <asm/hvm/grant_table.h>, since that file contains just the 
declarations needed
by the .c file. However, since the declaration uses the type mfn_t, 
which is defined in an
header not included from hvm/grant_table.h I'm wondering what is 
preferred:
1. include #include <asm/paging.h> in asm/hvm/grant_table.h, so that 
mfn_t can be used
   without relying on other headers using this one to provide it.
2. include <asm/grant_table.h> in x86/hvm/grant_table.c, which includes 
more declarations
   than needed, but has all type definitions.

I prefer (1), but (2) does not have major downsides either.

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:54:41 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:54:41 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610415.949786 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Gg-0005ix-G3; Fri, 29 Sep 2023 08:54:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610415.949786; Fri, 29 Sep 2023 08:54:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Gg-0005iq-DF; Fri, 29 Sep 2023 08:54:38 +0000
Received: by outflank-mailman (input) for mailman id 610415;
 Fri, 29 Sep 2023 08:54:37 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xPTL=FN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qm9Gf-0005ik-Au
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:54:37 +0000
Received: from EUR04-VI1-obe.outbound.protection.outlook.com
 (mail-vi1eur04on0602.outbound.protection.outlook.com
 [2a01:111:f400:fe0e::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cfca499d-5ea5-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 10:54:34 +0200 (CEST)
Received: from DU2PR04CA0073.eurprd04.prod.outlook.com (2603:10a6:10:232::18)
 by DU0PR08MB10360.eurprd08.prod.outlook.com (2603:10a6:10:417::16)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 08:54:31 +0000
Received: from DBAEUR03FT057.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:232:cafe::dc) by DU2PR04CA0073.outlook.office365.com
 (2603:10a6:10:232::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.23 via Frontend
 Transport; Fri, 29 Sep 2023 08:54:31 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT057.mail.protection.outlook.com (100.127.142.182) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.15 via Frontend Transport; Fri, 29 Sep 2023 08:54:30 +0000
Received: ("Tessian outbound ee9c7f88acf7:v211");
 Fri, 29 Sep 2023 08:54:30 +0000
Received: from 9a716e986459.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 4CFA3DCF-681E-4C23-B87C-3A24B7B0E52D.1; 
 Fri, 29 Sep 2023 08:54:19 +0000
Received: from EUR05-DB8-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9a716e986459.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 08:54:19 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DU0PR08MB8638.eurprd08.prod.outlook.com (2603:10a6:10:402::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 08:54:17 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Fri, 29 Sep 2023
 08:54:17 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cfca499d-5ea5-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=F8R0HNnMthj6L2c2E2MijyV9VWJC45dUfrKwax/v7nA=;
 b=IcUql1awMkAKQ+iNqTAd9ZdZL6D3oj+EN3vSXm1b1bHv68hvwNEpcIdDteuVVXWillKJRe+mano556eARgQmmNzL0d/WZGqROSfOB5fzrV/5hy1mDHI3M4MKmf38dx0/mJmZvmme1SZJon+8xh2TVc40sq6zmqH+61fZvLpH7/k=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: a9dbaa2f3201eed5
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=jZ/Ez8YzDD0fIRQq1j+b1LnsUzvt4mAmHgwzKNw8FhZd5Njdqzp+OA4YoVP/Q7sI0cAmW/Q6eZClDdzY+Z3FvhSNm0HOxV9Z5BLQl/Eudmaf5wkjn9rl5eXCtTc1ukzEG2hvSn96Ks05cw0TGnOoQKBXiLOT3cHt935MO4873qfWuKyC3P/mgum937sfXUVQevoM4GpjtNU4ondNEASdpcZ47TQ1tey3D+HJh/vH9R9EbbvAJbtNEojwGGKYwCl9agDG7lhFvwvxOwXLKBFwBFEYDF61MPyQCK8cNHhkrzoottWjkjQjj+gd0hu2hk6ahdrJqc9I9+2R1ZQ1b8YjFA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=F8R0HNnMthj6L2c2E2MijyV9VWJC45dUfrKwax/v7nA=;
 b=joVrnKHJhbTzLw9VhFVLRXSov95PofvvAfyhYB9fyquXUaf7aTL4Ddk5UQpXmUv1U6Wtg73du0xB6maLMXhZ9eoHG9HjP+x33M0/bTYv9Gy6C/nojvIBoKI5Q+vUwJxLO04/H1SwqRoYIpOoSWKGWM4SIssfXlyjm8q3PdA2gSRQOg/Rk+9vOucbW2CAeNmu7NXDLS7bUkfdD37Vq3uI5HyjIgXoDLHBggmWotA9d68QIU+ItgllQF9u3gaH4k84YlvQu4lWmW+XIuoHcjpAnq0C9RAiAJIbvOYBzGkbJZXl22JADVCTNVKzuW0aZtJnYddEsQfdJl2uBqPeWPNJPQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=F8R0HNnMthj6L2c2E2MijyV9VWJC45dUfrKwax/v7nA=;
 b=IcUql1awMkAKQ+iNqTAd9ZdZL6D3oj+EN3vSXm1b1bHv68hvwNEpcIdDteuVVXWillKJRe+mano556eARgQmmNzL0d/WZGqROSfOB5fzrV/5hy1mDHI3M4MKmf38dx0/mJmZvmme1SZJon+8xh2TVc40sq6zmqH+61fZvLpH7/k=
From: Henry Wang <Henry.Wang@arm.com>
To: Stefano Stabellini <sstabellini@kernel.org>
CC: Bertrand Marquis <Bertrand.Marquis@arm.com>, Nicola Vetrini
	<nicola.vetrini@bugseng.com>, Xen-devel <xen-devel@lists.xenproject.org>, Jan
 Beulich <jbeulich@suse.com>, "andrew.cooper3@citrix.com"
	<andrew.cooper3@citrix.com>, "roger.pau@citrix.com" <roger.pau@citrix.com>,
	"george.dunlap@citrix.com" <george.dunlap@citrix.com>,
	"roberto.bagnara@bugseng.com" <roberto.bagnara@bugseng.com>, "julien@xen.org"
	<julien@xen.org>, Stefano Stabellini <stefano.stabellini@amd.com>
Subject: Re: [PATCH v3] docs/misra: add rule 2.1 exceptions
Thread-Topic: [PATCH v3] docs/misra: add rule 2.1 exceptions
Thread-Index:
 AQHZ4qjBIQGe2fKDmkOYw+1/qK97q7AVxOqAgACZsICAGAuKgIAABeQAgAETe4CAAhwsAA==
Date: Fri, 29 Sep 2023 08:54:17 +0000
Message-ID: <F06DBCA1-E316-4CEA-AC92-0F923CA97CDB@arm.com>
References: <20230908230318.1719290-1-sstabellini@kernel.org>
 <91d5ea6d-bdfa-45bf-a54b-5acdf1784ec4@xen.org>
 <alpine.DEB.2.22.394.2309111740160.1847660@ubuntu-linux-20-04-desktop>
 <156fac1ee8e37cddac95813f72a108e0@bugseng.com>
 <BEAF1369-C1FE-4B81-A0A1-5A4F39426E9E@arm.com>
 <alpine.DEB.2.22.394.2309271740280.1996340@ubuntu-linux-20-04-desktop>
In-Reply-To:
 <alpine.DEB.2.22.394.2309271740280.1996340@ubuntu-linux-20-04-desktop>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DU0PR08MB8638:EE_|DBAEUR03FT057:EE_|DU0PR08MB10360:EE_
X-MS-Office365-Filtering-Correlation-Id: c0d0a637-3d45-47d3-473d-08dbc0c9b1eb
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 303W9eCAMU03ME9p/z8IHCPmnfEEwgk6an8eVdDwLwkzcC33wSANGwlqQNwK0bAAUmp70Y3LqW9tHkKoR7MfNq4iY5hDa1YhhgfpSwOXchy+HrvPXOMNFN5NihBazKLL60Yx44h53Xt30/vGApzlwC9PVqda02BGY32+bWpSIpEPCa9VPi9/ingAqXdAQIrQdOQp5xt/JB2TfKYxIUMC/pw6JeQaSQpLNwl944ShEaEPiWT58r7+VHP1B+EcTF5+MOGy8KqJbDpLawzOkASBKvsARwj2O9Pdiliix2L+ylRaHX9s/hl9YR9Btrsx7ceuSsXjxI3zDHD1T8AkoyzWvAKDoPXYLipl61FpX1JneCbv9nn9IKPUsehH5HfH6n8yDp6g+rV6v6y7ussUTTyIZFyPlOTi0RJEjf79oFlbfn8yIiIwC4RKC18olo/U8ICAALcwg+S09rz7+B7EARZZcKMqelwJJWMEUTHB27XjMXO38/tukwpvg7FWvDplPUsoeTcP+uAIMooxdvdfysT5cX0WMu7xfUv9uXG2ECB+UaCdzbZtDIeGXh26dIkpDMfQHgJYfuHdjSaRJNw0fSPQmjYphwUqD5Kxpu01/7nKDwOgakICpGt/e2AkFo2avvxXt7KCuGiVdBjzNHNwVu1qKQ==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(366004)(396003)(346002)(376002)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(316002)(6916009)(91956017)(54906003)(64756008)(76116006)(86362001)(66446008)(66556008)(66946007)(66476007)(36756003)(966005)(478600001)(38100700002)(38070700005)(71200400001)(7416002)(2906002)(41300700001)(5660300002)(4326008)(8676002)(8936002)(2616005)(26005)(33656002)(122000001)(6506007)(53546011)(6512007)(6486002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <5E3645BD20370C41AA5DFADBD17A43BF@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8638
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT057.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	05409729-4f42-45c5-4d1b-08dbc0c9a9b3
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	pNCGL74XNp9xAXibEQlH5nZXbvhSjFcz7m6JIMIHnq5r9by9K7E9EEzF5e3sWCjec/aDM5DR4vDgl9rYtUxmKQVGO6i3VyvkV5PCGcX+fAIt20WVFWpc6WjL4M+Z9QnjZI89H18EvYNWPriPi9DP8gBm0HX78qdCcLCuZFWLryi4Mi3wUrHaE+dca42DJwXVrjS7kaIAF9dNg9hdIsRWgLvTMHvDK8FF5a0L3IwI3fb5fYbxEC/g+MRux2bV62DjDDuwrxZ84jwBBXZbWhU0JPoekRBraSyZt77MUYSdhVQp0l8glzqLzNL/Z2FvoaMaUbAMrs8OoJXIW6+ezQ94L/igLD/asATCQUv9kv5jmkBgouzEmpKAr/m2M+v2Xiz5eyHAXw5FtSZGe6thpRMkKSfWHJk62ATMtTAHCTP3+P14opHChRCFH23wp+uC+wMHDBxK8S15o7czJOedyxXFoy2kgMiTVIqNtyLPr6GplZRGmoEWDjUUQYZ8C4/zF3Byn8bE4wGD4bjq+gtZYnLGmhSw1zfZ+KFprFuLiA4apV3IC1ZqrWd/ID41whOKTy/8yNRuzKYK2S8YFvZQP3rQ3a7YIjOdb7cC4E9VlKWYjH2R3XOYDc02/JnzgDjdxe/CXhvvBbDbA3zOu0Tw0VdLFtLtKC2DozWmf9zefFc3JGwQn4QrPVexH9eY5738avWbCil/XToZS+/RX283aJk26hvpKvzADVXl46eWv5CWo2k=
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(396003)(136003)(39860400002)(346002)(230922051799003)(1800799009)(186009)(64100799003)(82310400011)(451199024)(46966006)(36840700001)(40470700004)(6486002)(6512007)(6506007)(53546011)(2616005)(40460700003)(33656002)(40480700001)(86362001)(36756003)(81166007)(82740400003)(356005)(36860700001)(8676002)(336012)(26005)(2906002)(966005)(478600001)(47076005)(316002)(8936002)(6862004)(4326008)(41300700001)(70206006)(54906003)(70586007)(5660300002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 08:54:30.8690
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c0d0a637-3d45-47d3-473d-08dbc0c9b1eb
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT057.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB10360

SGkgU3RlZmFubywNCg0KPiBPbiBTZXAgMjgsIDIwMjMsIGF0IDA4OjQwLCBTdGVmYW5vIFN0YWJl
bGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+IHdyb3RlOg0KPiANCj4gT24gV2VkLCAyNyBT
ZXAgMjAyMywgQmVydHJhbmQgTWFycXVpcyB3cm90ZToNCj4+PiBPbiAyNyBTZXAgMjAyMywgYXQg
MDk6NTMsIE5pY29sYSBWZXRyaW5pIDxuaWNvbGEudmV0cmluaUBidWdzZW5nLmNvbT4gd3JvdGU6
DQo+Pj4gDQo+Pj4+Pj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9wc2NpLmMgYi94ZW4vYXJj
aC9hcm0vcHNjaS5jDQo+Pj4+Pj4gaW5kZXggNjk1ZDJmYTFmMS4uMmE4NTI3Y2FjYyAxMDA2NDQN
Cj4+Pj4+PiAtLS0gYS94ZW4vYXJjaC9hcm0vcHNjaS5jDQo+Pj4+Pj4gKysrIGIveGVuL2FyY2gv
YXJtL3BzY2kuYw0KPj4+Pj4+IEBAIC01OSw2ICs1OSw3IEBAIHZvaWQgY2FsbF9wc2NpX2NwdV9v
ZmYodm9pZCkNCj4+Pj4+PiAgICAgIH0NCj4+Pj4+PiAgfQ0KPj4+Pj4+ICArLyogU0FGLTItc2Fm
ZSAqLw0KPj4+Pj4gSSB0aGluayBhbnkgdXNlIG9mIFNBRi0yLXNhZmUgc2hvdWxkIGJlIGFjY29t
cGFuaWVkIHdpdGggYW4gYXR0cmlidXRlLi4uDQo+Pj4+Pj4gIHZvaWQgY2FsbF9wc2NpX3N5c3Rl
bV9vZmYodm9pZCkNCj4+Pj4+IC4uLiBub3JldHVybiBmb3IgZnVuY3Rpb24gb3IgLi4uDQo+Pj4+
Pj4gIHsNCj4+Pj4+PiAgICAgIGlmICggcHNjaV92ZXIgPiBQU0NJX1ZFUlNJT04oMCwgMSkgKQ0K
Pj4+Pj4+IGRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvc2h1dGRvd24uYyBiL3hlbi9hcmNoL3g4
Ni9zaHV0ZG93bi5jDQo+Pj4+Pj4gaW5kZXggNzYxOTU0NGQxNC4uNDdlMGY1OTAyNCAxMDA2NDQN
Cj4+Pj4+PiAtLS0gYS94ZW4vYXJjaC94ODYvc2h1dGRvd24uYw0KPj4+Pj4+ICsrKyBiL3hlbi9h
cmNoL3g4Ni9zaHV0ZG93bi5jDQo+Pj4+Pj4gQEAgLTExOCw2ICsxMTgsNyBAQCBzdGF0aWMgaW5s
aW5lIHZvaWQga2Jfd2FpdCh2b2lkKQ0KPj4+Pj4+ICAgICAgICAgICAgICBicmVhazsNCj4+Pj4+
PiAgfQ0KPj4+Pj4+ICArLyogU0FGLTItc2FmZSAqLw0KPj4+Pj4+ICBzdGF0aWMgdm9pZCBub3Jl
dHVybiBjZl9jaGVjayBfX21hY2hpbmVfaGFsdCh2b2lkICp1bnVzZWQpDQo+Pj4+Pj4gIHsNCj4+
Pj4+PiAgICAgIGxvY2FsX2lycV9kaXNhYmxlKCk7DQo+Pj4+Pj4gZGlmZiAtLWdpdCBhL3hlbi9p
bmNsdWRlL3hlbi9idWcuaCBiL3hlbi9pbmNsdWRlL3hlbi9idWcuaA0KPj4+Pj4+IGluZGV4IGU4
YTRlZWE3MWEuLmQ0N2M1NGYwMzQgMTAwNjQ0DQo+Pj4+Pj4gLS0tIGEveGVuL2luY2x1ZGUveGVu
L2J1Zy5oDQo+Pj4+Pj4gKysrIGIveGVuL2luY2x1ZGUveGVuL2J1Zy5oDQo+Pj4+Pj4gQEAgLTEx
Nyw2ICsxMTcsNyBAQCBzdHJ1Y3QgYnVnX2ZyYW1lIHsNCj4+Pj4+PiAgI2VuZGlmDQo+Pj4+Pj4g
ICAgI2lmbmRlZiBCVUcNCj4+Pj4+PiArLyogU0FGLTItc2FmZSAqLw0KPj4+Pj4+ICAjZGVmaW5l
IEJVRygpIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XA0KPj4+Pj4+ICAgICAgQlVHX0ZSQU1FKEJVR0ZSQU1FX2J1ZywgIF9fTElORV9fLCBfX0ZJTEVf
XywgMCwgTlVMTCk7ICAgICAgXA0KPj4+Pj4+ICAgICAgdW5yZWFjaGFibGUoKTsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPj4+Pj4gLi4uIHVucmVhY2hh
YmxlIGZvciBtYWNyb3MuIEJ1dCB0aGUgLyogU0FGLTItc2FmZSAqLyBmZWVscyBhIGxpdHRsZSBi
aXQNCj4+Pj4+IHJlZHVuZGFudCB3aGVuIGEgZnVuY3Rpb24gaXMgbWFya2VkIGFzICdub3JldHVy
bicuDQo+Pj4+PiBJcyB0aGVyZSBhbnkgd2F5IHRvIHRlYWNoIGVjbGFpciBhYm91dCBub3JldHVy
bj8NCj4+Pj4gQWN0dWFsbHkgSSBoYWQgdGhlIHNhbWUgdGhvdWdodCB3aGlsZSB3cml0aW5nIHRo
aXMgcGF0Y2guIElmIHdlIGNhbg0KPj4+PiBhZG9wdCB1bnJlYWNoYWJsZSBhbmQgbm9yZXR1cm4g
Y29uc2lzdGVudGx5IG1heWJlIHdlIGRvbid0IG5lZWQNCj4+Pj4gU0FGLTItc2FmZS4gSWYgdGhl
IGNoZWNrZXIgY2FuIHN1cHBvcnQgaXQuDQo+Pj4+IE5pY29sYSwgd2hhdCBkbyB5b3UgdGhpbms/
DQo+Pj4gDQo+Pj4gQSBjb3VwbGUgb2YgcmVtYXJrczoNCj4+PiAtIGlmIHlvdSBwdXQgdGhlIG5v
cmV0dXJuIGF0dHJpYnV0ZSBvbiBzb21lIGZ1bmN0aW9ucywgdGhlbiBzdXJlbHkgdGhlIGNvZGUg
YWZ0ZXIgdGhvc2UgaXMNCj4+PiByZXBvcnRlZCBhcyB1bnJlYWNoYWJsZS4gRUNMQUlSIHNob3Vs
ZCBwaWNrIHVwIGFsbCBmb3JtcyBvZiBub3JldHVybiBhdXRvbWF0aWNhbGx5OyBvdGhlcndpc2Us
IGEgc2ltcGxlIGNvbmZpZ3VyYXRpb24gY2FuIGJlIHVzZWQuDQo+Pj4gDQo+Pj4gLSBOb3RlIHRo
YXQgdGhlIGNhdXNlIG9mIHVucmVhY2hhYmlsaXR5IGluIHRoZSB2YXN0IG1ham9yaXR5IG9mIGNh
c2VzIGlzIHRoZSBjYWxsIHRvDQo+Pj4gX19idWlsdGluX3VucmVhY2hhYmxlKCksIHRoZXJlZm9y
ZSBhIHRleHR1YWwgZGV2aWF0aW9uIG9uIHRoZSBkZWZpbml0aW9uIG9mIHVucmVhY2hhYmxlLCBw
bHVzDQo+Pj4gYSBiaXQgb2YgRUNMQUlSIGNvbmZpZ3VyYXRpb24sIGNhbiBkZXZpYXRlIGl0ICh0
byBiZSBjbGVhciwganVzdCB0aGUgU0FGIGNvbW1lbnQgaXMgbm90DQo+Pj4gc3VmZmljaWVudCwg
c2luY2UgZGV2aWF0aW9ucyBjb21tZW50cyBhcmUgbWVhbnQgdG8gYmUgYXBwbGllZCBhdCB0aGUg
dG9wIGV4cGFuc2lvbiBsb2NhdGlvbiwNCj4+PiB3aGljaCBpcyBub3Qgb24gdGhlIG1hY3JvIGRl
ZmluaXRpb24pLg0KPj4+IFRoaXMgaXMgd2hhdCBpdCBzaG91bGQgbG9vayBsaWtlLCByb3VnaGx5
Og0KPj4+IA0KPj4+IC1jb25maWc9TUMzUjEuUjIuMSxyZXBvcnRzKz17ZGVsaWJlcmF0ZSwgImFu
eV9hcmVhKGFueV9sb2ModGV4dChePFJFR0VYPiQsIC0xKSkpIn0NCj4+PiANCj4+PiAjaWYgKCFk
ZWZpbmVkKF9fY2xhbmdfXykgJiYgKF9fR05VQ19fID09IDQpICYmIChfX0dOVUNfTUlOT1JfXyA8
IDUpKQ0KPj4+IC8qIFNBRi0yLXNhZmUgKi8NCj4+PiAjZGVmaW5lIHVucmVhY2hhYmxlKCkgZG8g
e30gd2hpbGUgKDEpDQo+Pj4gI2Vsc2UNCj4+PiAvKiBTQUYtMi1zYWZlICovDQo+Pj4gI2RlZmlu
ZSB1bnJlYWNoYWJsZSgpIF9fYnVpbHRpbl91bnJlYWNoYWJsZSgpDQo+Pj4gI2VuZGlmDQo+Pj4g
DQo+Pj4gd2hlcmUgUkVHRVggd2lsbCBtYXRjaCB0aGUgdHJhbnNsYXRpb24gb2YgU0FGLTItc2Fm
ZS4NCj4+PiANCj4+PiBIb3dldmVyLCB0aGlzIHdpbGwgdGhlbiBlbnRhaWwgdGhhdCAqc29tZSog
U0FGIGNvbW1lbnRzIGFyZSB0cmVhdGVkIHNwZWNpYWxseSBhbmQsIG1vcmVvdmVyLA0KPj4+IHRo
YXQgc29tZSBtb2RpZmljYXRpb24gdG8gdGhlIGRlZmluaXRpb24gb2YgdW5yZWFjaGFibGUgd29u
J3Qgd29yaw0KPj4+IChlLmcuDQo+Pj4gI2RlZmluZSBNKCkgX19idWlsdGluX3VucmVhY2hhYmxl
KCkNCj4+PiAvKiBTQUYtMi1zYWZlICovDQo+Pj4gI2RlZmluZSB1bnJlYWNoYWJsZSgpIE0oKQ0K
Pj4+IA0KPj4+IE15IG9waW5pb24gaXMgdGhhdCBpdCdzIGZhciBlYXNpZXIgZm9yIHRoaXMgdG8g
YmUgYW4gZWNsYWlyIGNvbmZpZ3VyYXRpb24gKHdoaWNoIGhhcyB0aGUNCj4+PiBhZHZhbnRhZ2Ug
bm90IHRvIGRlcGVuZCBvbiB0aGUgZXhhY3QgZGVmaW5pdGlvbiBvZiB1bnJlYWNoYWJsZSkgYW5k
IHRoZW4gcGVyaGFwcyBhIGNvbW1lbnQNCj4+PiBhYm92ZSBpdCBleHBsYWluaW5nIHRoZSBzaXR1
YXRpb24uDQo+PiANCj4+IEkgYWdyZWUgaGVyZSBhbmQgaXQgaXMgZWFzaWVyIHRvIG1ha2UgYW4g
b3ZlcmFsbCBleGNlcHRpb24gd2hlcmUgd2UgbGlzdCB0aGUgY2FzZXMNCj4+IHdoZXJlIHRoaXMg
aXMgYWNjZXB0YWJsZSAoaWUgYWxsIGZsYXZvcnMgb2YgdW5yZWFjaGVhYmxlKSBhbmQgZG9jdW1l
bnQgdGhhdCBlY2xhaXINCj4+IHdhcyBjb25maWd1cmVkIHVzaW5nICJ4eHh4IiB0byBoYW5kbGUg
dGhpcy4NCj4gDQo+IEluIHRoYXQgY2FzZSBpdCBsb29rcyBsaWtlIHdlIGFsbCBhZ3JlZSB0aGF0
IHdlIGNhbiBnbyBhaGVhZCB3aXRoIHRoaXMNCj4gcGF0Y2ggd2l0aCBqdXN0IHRoZSBjaGFuZ2Vz
IHRvIGRvY3MvbWlzcmEvcnVsZXMucnN0IHRvIGFkZCBydWxlIDIuMSBhbmQNCj4gcmVtb3ZlIGV2
ZXJ5dGhpbmcgZWxzZS4gV2hpY2ggaXMgdjIgb2YgdGhpcyBwYXRjaDoNCj4gaHR0cHM6Ly9tYXJj
LmluZm8vP2w9eGVuLWRldmVsJm09MTY5MjgzMDI3NzI5Mjk4DQo+IA0KPiBIZW5yeSwgY2FuIEkg
Z2V0IG9uZSBtb3JlIHJlbGVhc2UtYWNrIGZvciB2MiBvZiB0aGlzIHBhdGNoIChvbmx5IGNoYW5n
ZXMNCj4gdG8gZG9jcy9taXNyYSwgbm8gY29kZSBjaGFuZ2VzKT8NCg0KU29ycnkgZm9yIHRoZSBs
YXRlIHJlcGx5LCBJIHdhcyB3YWl0aW5nIGZvciB0aGUgUkMxIHRvIGNvbWUgb3V0IGZpcnN0LiBJ
IGNoZWNrZWQgdGhhdCBwYXRjaCBhbmQgSQ0KdGhpbmsgeW91IGNhbiBhZGQgbXkgcmVsZWFzZS1h
Y2sgd2l0aCBCZXJ0cmFuZOKAmXMgY29tbWVudHMgZml4ZWQuDQoNCktpbmQgcmVnYXJkcywNCkhl
bnJ5DQoNCj4gDQo+IEFsc28gQmVydHJhbmQgY2FuIHlvdSBwcm92aWRlIGEgZm9ybWFsIEFjayBm
b3IgdjI/DQo+IA0K


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:56:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:56:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610419.949796 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9I7-0006hk-SK; Fri, 29 Sep 2023 08:56:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610419.949796; Fri, 29 Sep 2023 08:56:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9I7-0006hd-Oc; Fri, 29 Sep 2023 08:56:07 +0000
Received: by outflank-mailman (input) for mailman id 610419;
 Fri, 29 Sep 2023 08:56:06 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xPTL=FN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qm9I6-0006gQ-Bv
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:56:06 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 (mail-am7eur03on20602.outbound.protection.outlook.com
 [2a01:111:f400:7eaf::602])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0539fc33-5ea6-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 10:56:04 +0200 (CEST)
Received: from AM5PR04CA0017.eurprd04.prod.outlook.com (2603:10a6:206:1::30)
 by GV1PR08MB7802.eurprd08.prod.outlook.com (2603:10a6:150:59::6) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Fri, 29 Sep
 2023 08:55:53 +0000
Received: from AM7EUR03FT040.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:206:1:cafe::41) by AM5PR04CA0017.outlook.office365.com
 (2603:10a6:206:1::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Fri, 29 Sep 2023 08:55:53 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT040.mail.protection.outlook.com (100.127.140.128) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6838.22 via Frontend Transport; Fri, 29 Sep 2023 08:55:52 +0000
Received: ("Tessian outbound fdf44c93bd44:v211");
 Fri, 29 Sep 2023 08:55:52 +0000
Received: from 286210650e3f.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 919D08E3-DA8B-4654-855E-5B45C12C371B.1; 
 Fri, 29 Sep 2023 08:55:45 +0000
Received: from EUR03-AM7-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 286210650e3f.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 08:55:45 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DU0PR08MB8638.eurprd08.prod.outlook.com (2603:10a6:10:402::5) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 08:55:43 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Fri, 29 Sep 2023
 08:55:43 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0539fc33-5ea6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pLgX0KY7zC1SRsSG1ebaSn3YYeLI8ocnEIZMZpMUAW0=;
 b=r/PIV/17OqzeT7d3XUwCuGiag6x43OInsan05SNxGKH5lbxulBhXjRZxLKnRFUCDFGzT0HW9UOjETFX1VzinXm7PuVI//HYLDv6TB4l9TmYubRjdTKqYPIpMvQNsQ94SRj4OoQEM2NVotRuitOjt0TKppMhXrH6yR0uYXzKOw+c=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 45981c5be2741f8e
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=iVTrwX00PA+R8HLA9yoctuSxVgiC6K/GEAtpY7CqswdMrCq7JXsZiqVIUUAtalmg5lr/iFvx2keIOY9mk7rAHOcviGFxxbOv9Y+hPaye8flnHpWYOPn6KOtyjqGmTaxH/bYQDgYZOrs2qxDZLi4/6wdENZXEejlbnR34zTYe41I7GP0JsyPze6PLhmuShjy0xQkpBMLL7JpVFIvcbM7SyG3yHK56QeBvN94fJ+uEVwylYesS0UOJhIzBqyWQLU60gK6xV0ydR2bt8RTgd/a9OKuczY/HbqezP7ut86K4o8JEcCarqSY6Dlk3N7v1yGUeZxa/SJb94aQKpLiTzMLYYg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=pLgX0KY7zC1SRsSG1ebaSn3YYeLI8ocnEIZMZpMUAW0=;
 b=VnAd0NEHSv5Az+XUfrCLjsGxYBx+AaQhb3DvelYNSIn0uE36fA1EhnOF2KHtcGENtVFm5uqlluoS/5hw9McB4IEcJaPE9PYBY7xNYf/z3p8NyelShVTvinJH6YgQ68QTGTHY8AQl6M/NqjynYXApNNf9/r44+mKBRIEKlfLdqvmYf5OrO8t08X2J9vWPb7D7HDn2Updq0Cv9vEKA2BntVHgtaokgTeaDx/+Fnf5ucx+x31sRVUDmThAA1sBEGSrkEbnjVzFCTSVVEG5thKjNyRWWZ5qezTP0o1qA72kMuOLXrMyfoEWXQxO1IoclODsesJhYhejAKJnvgfEYAkp4kA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=pLgX0KY7zC1SRsSG1ebaSn3YYeLI8ocnEIZMZpMUAW0=;
 b=r/PIV/17OqzeT7d3XUwCuGiag6x43OInsan05SNxGKH5lbxulBhXjRZxLKnRFUCDFGzT0HW9UOjETFX1VzinXm7PuVI//HYLDv6TB4l9TmYubRjdTKqYPIpMvQNsQ94SRj4OoQEM2NVotRuitOjt0TKppMhXrH6yR0uYXzKOw+c=
From: Henry Wang <Henry.Wang@arm.com>
To: Bertrand Marquis <Bertrand.Marquis@arm.com>, Stefano Stabellini
	<sstabellini@kernel.org>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Jan Beulich
	<jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, "julien@xen.org"
	<julien@xen.org>, "george.dunlap@citrix.com" <george.dunlap@citrix.com>,
	"nicola.vetrini@bugseng.com" <nicola.vetrini@bugseng.com>, Stefano Stabellini
	<stefano.stabellini@amd.com>
Subject: Re: [PATCH v2] docs/misra: add rule 2.1 exceptions
Thread-Topic: [PATCH v2] docs/misra: add rule 2.1 exceptions
Thread-Index: AQHZ1hLNZ0a6rcghx0ulDP6jzcXqzbAwKyuAgAGOFwA=
Date: Fri, 29 Sep 2023 08:55:43 +0000
Message-ID: <A70C1BD5-29B3-40A7-BB82-313EC5569F21@arm.com>
References: <20230823223942.2981782-1-sstabellini@kernel.org>
 <57A3B9BE-BBB2-42D4-B576-C539CDA9A539@arm.com>
In-Reply-To: <57A3B9BE-BBB2-42D4-B576-C539CDA9A539@arm.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DU0PR08MB8638:EE_|AM7EUR03FT040:EE_|GV1PR08MB7802:EE_
X-MS-Office365-Filtering-Correlation-Id: 73ddf5dc-050b-4e74-ead5-08dbc0c9e2d3
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 MUMGGuaH21cv2+M9/YGAlTf1tCd4UvtA4+8TwnT9Silu+g6L6q6UmlmlCQhll/U83Xav1SBpwniWurn+PyDRRV1JY1yYFgs/6rgmXMnYpJ7k3mNne46Ez5OJI39OCEszS5bA6IRxm642q4zlVYzkKHq+WxTT0kPwzowZ9/1zoFtTHU1NkHaAxKIf4xc6zfBHPwX37MlI/XpRapga9Uz9BfFgCk6wHFOxKlpOJmB2a8jCTvftj4wegjs06gK9zfpBjJTKfaFpwsumKuh15MnP9HxS647uYXBn0/Uek1PhDmvFdDAYW1p6pzKgxjSY4GGxphByqjCzTJtQ8XJV538HS5UMqIm3CG5qyaJGIYPH7yiMjclcnHzLNonp5+54BE0/XbBzinROO74BmcqgaWlmbYoG9kLXqrtldSoz6f5HGVcKmLoqG2F+QZ06C9Az4DNQ24pvKuzAyascstUhkqivE5A8bc1vyYkbhycgEkRxPVT/pnFfB41g9ZSSXTdz56HJ+sT7rIXgIk/yhd4h+hqF8hcNvd104NWPDMg+vSFS5bnKjH1X+CzRMd4HCaeZnUwkS2/QE3hhJFmPCG7kLXVYrpeMusar31nNQfv3vy3kqtyY/OpvIyG3Wcw1bdYuWzTd5BE7v2u7fE3BttGIMwC7FYXMIHthnk54RmcoCqCtYZgDnzINqK0HNJ2YAffZG93v
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(136003)(366004)(396003)(346002)(376002)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(316002)(110136005)(91956017)(54906003)(64756008)(76116006)(86362001)(66446008)(66556008)(66946007)(66476007)(36756003)(478600001)(38100700002)(38070700005)(71200400001)(2906002)(41300700001)(5660300002)(4326008)(8676002)(8936002)(2616005)(26005)(83380400001)(33656002)(122000001)(6506007)(53546011)(6512007)(6486002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <95F654D7D2B20C408FB090594FC90501@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8638
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT040.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	b7ad9e6e-0798-49ad-136e-08dbc0c9dd09
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	R8hbVUIHgAwU/UNqaaKne9+7q+JVp6ZvDVK7ORcGdUWYFWS9RvtJbGZOLK6eJ4MD/VY1F09VjqvQuJvzhW9AZz7jA858UmtrRAINtTVjOh3vw/o7L2+SR00ezW2Js6kN64rnS5JuXupP3PcsoL6QABljoHMt+81CTG7i1AHqE7sO6i83/1t3Bo+caE3DAf019WwoRfJtqddJkQJk8sVtBAJx19f9ER2F+0T+0Y4pIezwvYvTQHCUZB62+faKREXCiOuclnPbBhTJgse0BU5MCa3KuIXU41cbM6qG4HEJr4XxAsw/Br1BuynHxeFWd9w5psA1hprHyknfeF6Z2fGLhtDVNng0YT5yB17t9r9470mMhZI5+rAeEmQ4ySGgXk8X8mz/56X5fbMbaW+7OABV/vhTHj0hKrWarFJ+ARr6hdwy9GyeCFdXyUGk1hCjrtCvPhESYqbTfkL7AAEvPg35Q5BzNsyiouSbDpABXNPbajmULRZuNADlhesFFO687rEnd1TaTJKVfNuLYlKWKOlji1HovDnruW1nwn1EnvtuvFJJU6u87uXFpFZBNtMCM7GQN+/WuJARwci7oXvs7O2D95eedmcCeuuGNBxY5NK8TRA4zeTtoE3M4qoeeZIE7/7Y0Ana/Sbl1qxF2+4gJnXoZIwuuXbuzIcGZZwqq1IUklqG6r5XjGd7RqbxjbkAo1JN5ISOrkUDG8dsnSm/HDH72HBydhXZXiuP9E/7E1w/gunasjMg9yqKwJO1d1HtMvkXsviymNINLP0uTFVirYd0qA==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(396003)(376002)(346002)(39860400002)(136003)(230922051799003)(82310400011)(64100799003)(451199024)(186009)(1800799009)(40470700004)(36840700001)(46966006)(36860700001)(316002)(47076005)(40460700003)(36756003)(40480700001)(83380400001)(70206006)(478600001)(54906003)(8676002)(2906002)(6486002)(110136005)(41300700001)(6512007)(8936002)(81166007)(4326008)(6506007)(356005)(70586007)(82740400003)(53546011)(33656002)(26005)(336012)(2616005)(86362001)(5660300002);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 08:55:52.8774
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 73ddf5dc-050b-4e74-ead5-08dbc0c9e2d3
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT040.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7802

SGkgU3RlZmFubywNCg0KPiBPbiBTZXAgMjgsIDIwMjMsIGF0IDE3OjEwLCBCZXJ0cmFuZCBNYXJx
dWlzIDxCZXJ0cmFuZC5NYXJxdWlzQGFybS5jb20+IHdyb3RlOg0KPiANCj4gSGkgU3RlZmFubywN
Cj4gDQo+PiBPbiAyNCBBdWcgMjAyMywgYXQgMDA6MzksIFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0
YWJlbGxpbmlAa2VybmVsLm9yZz4gd3JvdGU6DQo+PiANCj4+IEZyb206IFN0ZWZhbm8gU3RhYmVs
bGluaSA8c3RlZmFuby5zdGFiZWxsaW5pQGFtZC5jb20+DQo+PiANCj4+IER1cmluZyB0aGUgZGlz
Y3Vzc2lvbnMgdGhhdCBsZWQgdG8gdGhlIGFjY2VwdGFuY2Ugb2YgUnVsZSAyLjEsIHdlDQo+PiBk
ZWNpZGVkIG9uIGEgZmV3IGV4Y2VwdGlvbnMgdGhhdCB3ZXJlIG5vdCBwcm9wZXJseSByZWNvcmRl
ZCBpbg0KPj4gcnVsZXMucnN0LiBBZGQgdGhlbSBub3cuDQo+PiANCj4+IFNpZ25lZC1vZmYtYnk6
IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3RlZmFuby5zdGFiZWxsaW5pQGFtZC5jb20+DQo+PiBBY2tl
ZC1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPg0KPj4gLS0tDQo+PiBOb3RlIHRo
YXQgc2FmZS5qc29uIGFuZCB0aGUgY29kZWJhc2UgYXJlIG5vdCB5ZXQgdXBkYXRlZCB3aXRoIGFu
DQo+PiBhcHByb3ByaWF0ZSB0YWcgZm9yIEJVRywgcGFuaWMgYW5kIGZyaWVuZHMuDQo+PiANCj4+
IHYyOg0KPj4gLSBmaXggdHlwbyBpbiBjb21taXQgbWVzc2FnZQ0KPj4gLSB1c2UgIm9ubHkgcmVm
ZXJlbmNlZCBmcm9tIGFzc2VtYmx5Ig0KPj4gLSB1c2UgIkRlbGliZXJhdGUgdW5yZWFjaGFiaWxp
dHkgY2F1c2VkIGJ5Ig0KPj4gLSBhZGQgIlNlZSBzYWZlLmpzb24iDQo+PiAtIGFkZCBhY2tlZC1i
eSAoYWx0aG91Z2ggSSBhbHNvIGFkZGVkICJTZWUgc2FmZS5qc29uIikNCj4+IC0tLQ0KPj4gZG9j
cy9taXNyYS9ydWxlcy5yc3QgfCAxMyArKysrKysrKysrKystDQo+PiAxIGZpbGUgY2hhbmdlZCwg
MTIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQ0KPj4gDQo+PiBkaWZmIC0tZ2l0IGEvZG9j
cy9taXNyYS9ydWxlcy5yc3QgYi9kb2NzL21pc3JhL3J1bGVzLnJzdA0KPj4gaW5kZXggOGYwZTRk
M2YyNS4uNGYzM2VkNGJhNiAxMDA2NDQNCj4+IC0tLSBhL2RvY3MvbWlzcmEvcnVsZXMucnN0DQo+
PiArKysgYi9kb2NzL21pc3JhL3J1bGVzLnJzdA0KPj4gQEAgLTEwNiw3ICsxMDYsMTggQEAgbWFp
bnRhaW5lcnMgaWYgeW91IHdhbnQgdG8gc3VnZ2VzdCBhIGNoYW5nZS4NCj4+ICAgKiAtIGBSdWxl
IDIuMSA8aHR0cHM6Ly9naXRsYWIuY29tL01JU1JBL01JU1JBLUMvTUlTUkEtQy0yMDEyL0V4YW1w
bGUtU3VpdGUvLS9ibG9iL21hc3Rlci9SXzAyXzAxXzEuYz5gXw0KPj4gICAgIC0gUmVxdWlyZWQN
Cj4+ICAgICAtIEEgcHJvamVjdCBzaGFsbCBub3QgY29udGFpbiB1bnJlYWNoYWJsZSBjb2RlDQo+
PiAtICAgICAtDQo+PiArICAgICAtIFRoZSBmb2xsb3dpbmcgYXJlIGFsbG93ZWQ6DQo+PiArICAg
ICAgICAgLSBJbnZhcmlhbnRseSBjb25zdGFudCBjb25kaXRpb25zLCBlLmcuIGlmKElTX0VOQUJM
RUQoQ09ORklHX0hWTSkpIHsgUzsgfQ0KPj4gKyAgICAgICAgIC0gU3dpdGNoIHdpdGggYSBjb250
cm9sbGluZyB2YWx1ZSBzdGF0aWNhbGx5IGRldGVybWluZWQgbm90IHRvDQo+PiArICAgICAgICAg
ICBtYXRjaCBvbmUgb3IgbW9yZSBjYXNlIHN0YXRlbWVudHMNCj4+ICsgICAgICAgICAtIEZ1bmN0
aW9ucyB0aGF0IGFyZSBpbnRlbmRlZCB0byBiZSByZWZlcmVuY2VkIG9ubHkgZnJvbQ0KPj4gKyAg
ICAgICAgICAgYXNzZW1ibHkgY29kZSAoZS5nLiAnZG9fdHJhcF9maXEnKQ0KPj4gKyAgICAgICAg
IC0gRGVsaWJlcmF0ZSB1bnJlYWNoYWJpbGl0eSBjYXVzZWQgYnkgY2VydGFpbiBtYWNyb3MvZnVu
Y3Rpb25zLA0KPj4gKyAgICAgICAgICAgZS5nLiBCVUcsIGFzc2VydF9mYWlsZWQsIHBhbmljLCBl
dGMuIFNlZSBzYWZlLmpzb24uDQo+IA0KPiBBcyBKdWxpZW4gcmVxdWVzdGVkLCB5b3Ugc2hvdWxk
IHJlbW92ZSB0aGlzLg0KPiANCj4gV2l0aCB0aGF0IGhhbmRsZWQ6DQo+IA0KPiBBY2tlZC1ieTog
QmVydHJhbmQgTWFycXVpcyA8YmVydHJhbmQubWFycXVpc0Bhcm0uY29tPg0KDQpXaXRoIEJlcnRy
YW5k4oCZcyBjb21tZW50cyBhZGRyZXNzZWQ6DQoNClJlbGVhc2UtYWNrZWQtYnk6IEhlbnJ5IFdh
bmcgPEhlbnJ5LldhbmdAYXJtLmNvbT4NCg0KS2luZCByZWdhcmRzLA0KSGVucnkNCg0KDQo+IA0K
PiBDaGVlcnMNCj4gQmVydHJhbmQNCj4gDQo+PiArICAgICAgICAgLSBhc20tb2Zmc2V0cy5jLCBh
cyB0aGV5IGFyZSBub3QgbGlua2VkIGRlbGliZXJhdGVseSwgYmVjYXVzZQ0KPj4gKyAgICAgICAg
ICAgdGhleSBhcmUgdXNlZCB0byBnZW5lcmF0ZSBkZWZpbml0aW9ucyBmb3IgYXNtIG1vZHVsZXMN
Cj4+ICsgICAgICAgICAtIERlY2xhcmF0aW9ucyB3aXRob3V0IGluaXRpYWxpemVyIGFyZSBzYWZl
LCBhcyB0aGV5IGFyZSBub3QNCj4+ICsgICAgICAgICAgIGV4ZWN1dGVkDQo+PiANCj4+ICAgKiAt
IGBSdWxlIDIuNiA8aHR0cHM6Ly9naXRsYWIuY29tL01JU1JBL01JU1JBLUMvTUlTUkEtQy0yMDEy
L0V4YW1wbGUtU3VpdGUvLS9ibG9iL21hc3Rlci9SXzAyXzA2LmM+YF8NCj4+ICAgICAtIEFkdmlz
b3J5DQo+PiAtLSANCj4+IDIuMjUuMQ0KPj4gDQo+IA0KPiANCg0K


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:58:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:58:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610430.949835 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Jv-0008Us-N3; Fri, 29 Sep 2023 08:57:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610430.949835; Fri, 29 Sep 2023 08:57:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Jv-0008TO-Ew; Fri, 29 Sep 2023 08:57:59 +0000
Received: by outflank-mailman (input) for mailman id 610430;
 Fri, 29 Sep 2023 08:57:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2FIE=FN=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qm9Ju-0007un-9Z
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:57:58 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 489beda4-5ea6-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 10:57:57 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-11-204-216.retail.telecomitalia.it [87.11.204.216])
 by support.bugseng.com (Postfix) with ESMTPSA id 9C2B14EE0C88;
 Fri, 29 Sep 2023 10:57:56 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 489beda4-5ea6-11ee-878b-cb3800f73035
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH 4/4] x86/psr: address a violation of MISRA C:2012 Rule 8.3
Date: Fri, 29 Sep 2023 10:56:17 +0200
Message-Id: <c7673a1cd70e1f4901b8f6a6a0ffe3019c9307ac.1695972930.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1695972930.git.federico.serafini@bugseng.com>
References: <cover.1695972930.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function declaration and definition consistent.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/psr.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/arch/x86/include/asm/psr.h b/xen/arch/x86/include/asm/psr.h
index c2257da7fc..8ecb7a0eea 100644
--- a/xen/arch/x86/include/asm/psr.h
+++ b/xen/arch/x86/include/asm/psr.h
@@ -81,7 +81,7 @@ int psr_get_info(unsigned int socket, enum psr_type type,
 int psr_get_val(struct domain *d, unsigned int socket,
                 uint32_t *val, enum psr_type type);
 int psr_set_val(struct domain *d, unsigned int socket,
-                uint64_t val, enum psr_type type);
+                uint64_t new_val, enum psr_type type);
 
 void psr_domain_init(struct domain *d);
 void psr_domain_free(struct domain *d);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:58:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:58:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610429.949830 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Jv-0008Ln-Bd; Fri, 29 Sep 2023 08:57:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610429.949830; Fri, 29 Sep 2023 08:57:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Jv-0008KS-1g; Fri, 29 Sep 2023 08:57:59 +0000
Received: by outflank-mailman (input) for mailman id 610429;
 Fri, 29 Sep 2023 08:57:57 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2FIE=FN=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qm9Jt-0007us-PU
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:57:57 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 480b17ea-5ea6-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 10:57:56 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-11-204-216.retail.telecomitalia.it [87.11.204.216])
 by support.bugseng.com (Postfix) with ESMTPSA id A91CA4EE0C81;
 Fri, 29 Sep 2023 10:57:55 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 480b17ea-5ea6-11ee-9b0d-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH 2/4] x86/uaccess: address violations of MISRA C:2012 Rule 8.3
Date: Fri, 29 Sep 2023 10:56:15 +0200
Message-Id: <7e32d3b6c078a7692668a509d05c44175ad99310.1695972930.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1695972930.git.federico.serafini@bugseng.com>
References: <cover.1695972930.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function declarations and definitions consistent.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/uaccess.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/xen/arch/x86/include/asm/uaccess.h b/xen/arch/x86/include/asm/uaccess.h
index 684fccd95c..7443519d5b 100644
--- a/xen/arch/x86/include/asm/uaccess.h
+++ b/xen/arch/x86/include/asm/uaccess.h
@@ -10,10 +10,10 @@
 #include <asm/x86_64/uaccess.h>
 
 unsigned int copy_to_guest_pv(void __user *to, const void *from,
-                              unsigned int len);
-unsigned int clear_guest_pv(void __user *to, unsigned int len);
+                              unsigned int n);
+unsigned int clear_guest_pv(void __user *to, unsigned int n);
 unsigned int copy_from_guest_pv(void *to, const void __user *from,
-                                unsigned int len);
+                                unsigned int n);
 
 /* Handles exceptions in both to and from, but doesn't do access_ok */
 unsigned int copy_to_guest_ll(void __user*to, const void *from, unsigned int n);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:58:00 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:58:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610427.949816 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Ju-0008A8-HQ; Fri, 29 Sep 2023 08:57:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610427.949816; Fri, 29 Sep 2023 08:57:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Ju-0008A0-El; Fri, 29 Sep 2023 08:57:58 +0000
Received: by outflank-mailman (input) for mailman id 610427;
 Fri, 29 Sep 2023 08:57:57 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2FIE=FN=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qm9Jt-0007us-0i
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:57:57 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 476c3b42-5ea6-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 10:57:55 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-11-204-216.retail.telecomitalia.it [87.11.204.216])
 by support.bugseng.com (Postfix) with ESMTPSA id 6D9AD4EE0739;
 Fri, 29 Sep 2023 10:57:54 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 476c3b42-5ea6-11ee-9b0d-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Henry Wang <Henry.Wang@arm.com>
Subject: [XEN PATCH 0/4] Address violations of MISRA C:2012 Rule 8.3
Date: Fri, 29 Sep 2023 10:56:13 +0200
Message-Id: <cover.1695972930.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

This series contains small and uncontroversial patches to address some
violations of Rule 8.3.
No functonal changes are introduced.

Federico Serafini (4):
  video/vesa: drop bool_t
  x86/uaccess: address violations of MISRA C:2012 Rule 8.3
  x86/xstate: address a violation of MISRA C:2012 Rule 8.3
  x86/psr: address a violation of MISRA C:2012 Rule 8.3

 xen/arch/x86/include/asm/psr.h     | 2 +-
 xen/arch/x86/include/asm/uaccess.h | 6 +++---
 xen/arch/x86/xstate.c              | 8 ++++----
 xen/drivers/video/vesa.c           | 2 +-
 4 files changed, 9 insertions(+), 9 deletions(-)

-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:58:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:58:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610426.949806 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Jt-0007v8-9z; Fri, 29 Sep 2023 08:57:57 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610426.949806; Fri, 29 Sep 2023 08:57:57 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Jt-0007v1-76; Fri, 29 Sep 2023 08:57:57 +0000
Received: by outflank-mailman (input) for mailman id 610426;
 Fri, 29 Sep 2023 08:57:56 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2FIE=FN=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qm9Js-0007un-Kq
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:57:56 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 47c760eb-5ea6-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 10:57:55 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-11-204-216.retail.telecomitalia.it [87.11.204.216])
 by support.bugseng.com (Postfix) with ESMTPSA id 18FDA4EE073E;
 Fri, 29 Sep 2023 10:57:55 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 47c760eb-5ea6-11ee-878b-cb3800f73035
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Wei Liu <wl@xen.org>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH 1/4] video/vesa: drop bool_t
Date: Fri, 29 Sep 2023 10:56:14 +0200
Message-Id: <96027a74236514f38f54051d24a93b6d692644ac.1695972930.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1695972930.git.federico.serafini@bugseng.com>
References: <cover.1695972930.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Drop bool_t to make function declaration and definition consistent and address
a violation of MISRA C:2012 Rule 8.3.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/drivers/video/vesa.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/xen/drivers/video/vesa.c b/xen/drivers/video/vesa.c
index b007ff5678..70feca21ac 100644
--- a/xen/drivers/video/vesa.c
+++ b/xen/drivers/video/vesa.c
@@ -145,7 +145,7 @@ static void cf_check lfb_flush(void)
     __asm__ __volatile__ ("sfence" : : : "memory");
 }
 
-void __init vesa_endboot(bool_t keep)
+void __init vesa_endboot(bool keep)
 {
     if ( keep )
     {
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 08:58:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 08:58:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610428.949821 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Ju-0008Dj-S2; Fri, 29 Sep 2023 08:57:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610428.949821; Fri, 29 Sep 2023 08:57:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9Ju-0008DE-N3; Fri, 29 Sep 2023 08:57:58 +0000
Received: by outflank-mailman (input) for mailman id 610428;
 Fri, 29 Sep 2023 08:57:57 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2FIE=FN=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qm9Jt-0007un-9L
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 08:57:57 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 485340ee-5ea6-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 10:57:56 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-11-204-216.retail.telecomitalia.it [87.11.204.216])
 by support.bugseng.com (Postfix) with ESMTPSA id 287E54EE0C87;
 Fri, 29 Sep 2023 10:57:56 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 485340ee-5ea6-11ee-878b-cb3800f73035
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH 3/4] x86/xstate: address a violation of MISRA C:2012 Rule 8.3
Date: Fri, 29 Sep 2023 10:56:16 +0200
Message-Id: <198577fa8876efc48a08a89b55fa5f95694b37c1.1695972930.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <cover.1695972930.git.federico.serafini@bugseng.com>
References: <cover.1695972930.git.federico.serafini@bugseng.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Make function declaration and definition consistent.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/xstate.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/xstate.c b/xen/arch/x86/xstate.c
index f442610fc5..cf94761d05 100644
--- a/xen/arch/x86/xstate.c
+++ b/xen/arch/x86/xstate.c
@@ -54,16 +54,16 @@ static inline bool xsetbv(u32 index, u64 xfeatures)
     return lo != 0;
 }
 
-bool set_xcr0(u64 val)
+bool set_xcr0(u64 xfeatures)
 {
     uint64_t *this_xcr0 = &this_cpu(xcr0);
 
-    if ( *this_xcr0 != val )
+    if ( *this_xcr0 != xfeatures )
     {
-        if ( !xsetbv(XCR_XFEATURE_ENABLED_MASK, val) )
+        if ( !xsetbv(XCR_XFEATURE_ENABLED_MASK, xfeatures) )
             return false;
 
-        *this_xcr0 = val;
+        *this_xcr0 = xfeatures;
     }
 
     return true;
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 09:00:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 09:00:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610448.949856 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9MS-00033n-2W; Fri, 29 Sep 2023 09:00:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610448.949856; Fri, 29 Sep 2023 09:00:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9MR-00033g-W1; Fri, 29 Sep 2023 09:00:35 +0000
Received: by outflank-mailman (input) for mailman id 610448;
 Fri, 29 Sep 2023 09:00:34 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JGVc=FN=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qm9MQ-00033Y-LO
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 09:00:34 +0000
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02on2062b.outbound.protection.outlook.com
 [2a01:111:f400:fe13::62b])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id a5d76939-5ea6-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 11:00:33 +0200 (CEST)
Received: from DBBPR09CA0019.eurprd09.prod.outlook.com (2603:10a6:10:c0::31)
 by VE1PR08MB5760.eurprd08.prod.outlook.com (2603:10a6:800:1af::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Fri, 29 Sep
 2023 09:00:27 +0000
Received: from DBAEUR03FT003.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:c0:cafe::e1) by DBBPR09CA0019.outlook.office365.com
 (2603:10a6:10:c0::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Fri, 29 Sep 2023 09:00:27 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT003.mail.protection.outlook.com (100.127.142.89) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.15 via Frontend Transport; Fri, 29 Sep 2023 09:00:27 +0000
Received: ("Tessian outbound ab4fc72d2cd4:v211");
 Fri, 29 Sep 2023 09:00:27 +0000
Received: from f64a9214f205.2
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 78C70093-ED52-4FAE-BA8C-A84892E5630C.1; 
 Fri, 29 Sep 2023 08:59:58 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f64a9214f205.2
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 08:59:58 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by VE1PR08MB5869.eurprd08.prod.outlook.com (2603:10a6:800:1b2::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 08:59:56 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404%4]) with mapi id 15.20.6838.024; Fri, 29 Sep 2023
 08:59:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a5d76939-5ea6-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=c7V3x9oVYCnwnwQ0ylQkJgK9flJdUkJoM1L/gTTnOsA=;
 b=lPGk7Y4SzLbtAq9qCqpMM1jW57SrPFz57hDvK9n4LPhsuUFzeWcsGKpDVR/ClhfbmOjje/ytfYidJNKzY+eXj/v0KJKP+VSuL9ZQZw5o1nBGnsNMtrpgIhXpQIQ7szggSugM6kjX7H+RHUJ4Q1CLiwLJyDPPKGeeSmY+TeNre+k=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 2d1df9274edf3210
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=PH5BSLZGfx98Za4nIfuphyMs+uUTyElTs2BiLVhgNEoK/iVPT5VxKD5mwiUo//6iysKqNkXvML4aEZUmyeDCQ4fauh8IuPp8IXDd7bq/TldO3sHziJr1uuVW2Ht+/bRvkm8oSGUJoqrplVEoq79pum5T/R50XoF0ATaHvs917QtEBWSxqYzxJvvDtRYE3oSq1dTT37VT+wQx5fKwNGbaOEKyAp7kOG+5sM+iJ/YU3ItKlQibg1YMg8kTMFLKkqaF0pYRbSgw25lQvvDQwF5TvF/BTTyVI+3fp5gmaXerzdfrV3Z/69dn4aE0Xw9zqMcqxtAJ5WcPhPpDaMtQpUOjow==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=c7V3x9oVYCnwnwQ0ylQkJgK9flJdUkJoM1L/gTTnOsA=;
 b=Qd8HxMO2sR/9Ys7Gb20eS+D2uxVq38lu/rOlvCac38CcpUeFY4i5q9y+GYbmofm4lyDcAwRWBPUkbk9rsx3Rf7dxAN8AUGfh/2ppUtjak52PtU3OrhzpMJGXNY501BM+UCh96bF9X45EfWGw27uWIhMCd/vWQn8QjzOlUqAUNBrwSG+LzZBJXTZ7u8c2iMhJ3YgWsOCj5b/O7NQocPgiow8seeAYsbJLZ7iTkam3U0bErJfyhih7m6wjJlPKU8mIBpA63zjRvioQ8+X2T9aSw+VjftRacggMqUbElTTcGQp8kXHJhLjXcjoXdDwuq9EBHRoZ+5HDh+ZrQyUdS4sAMQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=c7V3x9oVYCnwnwQ0ylQkJgK9flJdUkJoM1L/gTTnOsA=;
 b=lPGk7Y4SzLbtAq9qCqpMM1jW57SrPFz57hDvK9n4LPhsuUFzeWcsGKpDVR/ClhfbmOjje/ytfYidJNKzY+eXj/v0KJKP+VSuL9ZQZw5o1nBGnsNMtrpgIhXpQIQ7szggSugM6kjX7H+RHUJ4Q1CLiwLJyDPPKGeeSmY+TeNre+k=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Julien Grall <julien@xen.org>
CC: Stefano Stabellini <sstabellini@kernel.org>, Xen-devel
	<xen-devel@lists.xenproject.org>, Jan Beulich <jbeulich@suse.com>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, Bertrand Marquis
	<Bertrand.Marquis@arm.com>, "george.dunlap@citrix.com"
	<george.dunlap@citrix.com>, "wl@xen.org" <wl@xen.org>
Subject: Re: [PATCH] cpumask: fix integer type in cpumask_first
Thread-Topic: [PATCH] cpumask: fix integer type in cpumask_first
Thread-Index: AQHZ8mQSonovcLbkmUGYIzmbCmvOrrAxaSkAgAAYpIA=
Date: Fri, 29 Sep 2023 08:59:56 +0000
Message-ID: <DD5A5A95-82B2-4886-8B5F-BC75C64CC7FC@arm.com>
References:
 <alpine.DEB.2.22.394.2309281629360.1996340@ubuntu-linux-20-04-desktop>
 <e5815f93-80a4-4628-9eae-98c431c70dcc@xen.org>
In-Reply-To: <e5815f93-80a4-4628-9eae-98c431c70dcc@xen.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3774.100.2.1.4)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|VE1PR08MB5869:EE_|DBAEUR03FT003:EE_|VE1PR08MB5760:EE_
X-MS-Office365-Filtering-Correlation-Id: c063bd42-f811-4cb9-4b3f-08dbc0ca866a
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 jVr6AKd/v/SmJLiWwbmwKCG8664c3tgFl3K8xk7pqGz+HhsfjL9y1+fjGWp8viHqjC2esrr4vd9Q2VvfQJh11K8rQ22T4V7Pk8ebGwJ99mqR2IPpaU+VvA/NWv1XjGXpjm+ZWFgwiRxTjzxr8EJdc/PCAdXIYknGaMFbdBSicEPGSbovxUZeCLetRJd0NhniONwSw/RhL6n7WCd4hi2TFrTeMFtZen0iO1JbhhYGcfIDGY8KcFXyc9EvPqSwyjcGRRhDv1b6zf18y2+iea34QHuawdPO/vdb7DKSronZsFFEfFUjN4ywVWYT4ADawZUtnBJfwcZ3xs8IX/X8E8IF7oUJSVpuRiALmjBwqegzbbqFr1JKaUYyj1tUPMsCTnfs3Nab4xVqAC408tZ4ul0qggQECdTJdmILQa3t7xl5RqFzDweQj89M8Mvkk506jfwLWTtdTodGWiwJ2c5xvM5jICTydNeioyBPhVegHSFXFNYYjHhP3FzRBGLvsV8+44RHquntZnAx9LcqQm2Hws0GMFqEcTMSSs/1gq1hcmiBrpqkCnsJvDbwLzNnfEveMObIjHxGuDLk1hVeWmjthW4s7qeN3Tejux0smZcsxqf8xK4UHmd5GwoPH+9LUa90zSYT8TA9+7QxP8MkSVaMjCPPig==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(376002)(346002)(366004)(39850400004)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(2616005)(6506007)(53546011)(122000001)(86362001)(36756003)(38100700002)(38070700005)(33656002)(26005)(2906002)(71200400001)(6512007)(6486002)(478600001)(8936002)(8676002)(5660300002)(4326008)(41300700001)(76116006)(66446008)(66476007)(66556008)(91956017)(64756008)(54906003)(6916009)(316002)(66946007)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <1B43041B3C579B46955A93456CB621BD@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5869
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT003.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	1f91aef8-70a3-4bf9-39a7-08dbc0ca73c7
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	St1822YuEQIXbATna2iHrqp0ye32m7iX5tb9hAXj5v9CoW9WRDb+yeDOA9WixBarQ5rXbIGSXo33ukLdrJWPalHZwgxTNvuOLGfdi+K5Y65zX8vEF6mfiIFiWoKolscc7OPt5kmXOjxlpFTxUfET33kiCcsheWW8aBef0mMH16nkrY/3ZRj/JEiS/kBZ7nXkK/7iKVaElR62FalpdBHegFmmkP8fT0OmH10RDHJnFUtrHYVd5N9NJKj7+esEc3A7hmjwW2rwFbdaLzFULxznK18hhjcjyX9RhVwD5Im/habvYi0KYSl9A/EjyZZL3nQdYFvhoHEiTneclqKhezxhQupFHR0VfHPn+BacL1gfxdbkDMAATk+EoruBEZLYPEbYS42+Yo8WdQx+JlyXxZRaH6KF/dEm3ksyrXktOehkkMxx42GPOxhGMF+yjckujMg/lTrsKmdAg1XcvXpyeaSH2uQvj4NSjdMguW30huu9WvnWzYE8uC1r6BAvCmXUZTyU3B3WJ8oScFeizVqMxQswOxtboLF/T0hJw1EIzMnkjfckCb7r1LcKomD90nwdk/NyMuLF8tlBKSCk95fSwSA+GQ32gdVoQ6SiRyVHAzpYUws2V8lnKlLo6iGKJ3EX3twHe8YbpYB3TLBOk451lsKbyjsIq6q9G0K62Qnrgg5Zdp8RyDoepYQ6O67vfTw+9js77yBykffojIuiqQ4n2LBW2w==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39850400004)(136003)(376002)(346002)(396003)(230922051799003)(82310400011)(64100799003)(451199024)(1800799009)(186009)(46966006)(36840700001)(8676002)(478600001)(6862004)(8936002)(40480700001)(336012)(26005)(4326008)(2906002)(70206006)(5660300002)(70586007)(41300700001)(54906003)(316002)(6506007)(53546011)(6486002)(6512007)(47076005)(2616005)(36860700001)(36756003)(33656002)(356005)(86362001)(81166007)(82740400003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 09:00:27.3940
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: c063bd42-f811-4cb9-4b3f-08dbc0ca866a
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT003.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5760

DQoNCj4gT24gMjkgU2VwIDIwMjMsIGF0IDA4OjMxLCBKdWxpZW4gR3JhbGwgPGp1bGllbkB4ZW4u
b3JnPiB3cm90ZToNCj4gDQo+IEhpIFN0ZWZhbm8sDQo+IA0KPiBPbiAyOS8wOS8yMDIzIDAwOjMy
LCBTdGVmYW5vIFN0YWJlbGxpbmkgd3JvdGU6DQo+PiBucl9jcHVfaWRzIGlzIHVuc2lnbmVkIGlu
dCwgYnV0IGZpbmRfZmlyc3RfYml0IHJldHVybnMgdW5zaWduZWQgbG9uZyAoYXQNCj4+IGxlYXN0
IG9uIGFybSkuDQo+IA0KPiBmaW5kXyogYXJlIG1lYW50IHRvIGJlIHVzZWQgYnkgY29tbW9uIGNv
ZGUuIFNvIEkgdGhpbmsgdGhlIGZpcnN0IHN0ZXAgaXMgdG8gY29ycmVjdCB0aGUgcmV0dXJuIHR5
cGUgc28gaXQgaXMgY29uc2lzdGVudCBhY3Jvc3MgYWxsIGFyY2hpdGVjdHVyZXMuDQo+IA0KPiBJ
IGRvbid0IGhhdmUgYSBzdHJvbmcgb3BpbmlvbiBvbiB3aGV0aGVyIHRoZXkgc2hvdWxkIGFsbCBy
ZXR1cm4gJ3Vuc2lnbmVkIGxvbmcnLg0KPiANCj4gVGhlbiB3ZSBjYW4gZGlzY3VzcyBpZiB0aGUg
TUlTUkEgcnVsZSBpcyBzdGlsbCB2aW9sYXRlZC4NCj4gDQo+PiBVc2UgdGhlIGxhcmdlciB0eXBl
IGZvciBtaW5fdCB0byBhdm9pZCBsYXJnZXItdG8tc21hbGxlcg0KPj4gdHlwZSBhc3NpZ25tZW50
cy4gVGhpcyBhZGRyZXNzIDE0MSBNSVNSQSBDIDEwLjMgdmlvbGF0aW9ucy4NCj4gDQo+IEkgZmlu
ZCBpbnRlcmVzdGluZyB5b3UgYXJlIHNheWluZyB0aGlzIGdpdmVuIHRoYXQuLi4NCj4+IFNpZ25l
ZC1vZmYtYnk6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3RlZmFuby5zdGFiZWxsaW5pQGFtZC5jb20+
DQo+PiAtLS0NCj4+IGRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS94ZW4vY3B1bWFzay5oIGIveGVu
L2luY2x1ZGUveGVuL2NwdW1hc2suaA0KPj4gaW5kZXggOTgyNjcwNzkwOS4uYTZlZDZhMjhlOCAx
MDA2NDQNCj4+IC0tLSBhL3hlbi9pbmNsdWRlL3hlbi9jcHVtYXNrLmgNCj4+ICsrKyBiL3hlbi9p
bmNsdWRlL3hlbi9jcHVtYXNrLmgNCj4+IEBAIC0yMDgsNyArMjA4LDcgQEAgc3RhdGljIGlubGlu
ZSB2b2lkIGNwdW1hc2tfY29weShjcHVtYXNrX3QgKmRzdHAsIGNvbnN0IGNwdW1hc2tfdCAqc3Jj
cCkNCj4+ICAgIHN0YXRpYyBpbmxpbmUgaW50IGNwdW1hc2tfZmlyc3QoY29uc3QgY3B1bWFza190
ICpzcmNwKQ0KPj4gIHsNCj4+IC0gcmV0dXJuIG1pbl90KGludCwgbnJfY3B1X2lkcywgZmluZF9m
aXJzdF9iaXQoc3JjcC0+Yml0cywgbnJfY3B1X2lkcykpOw0KPj4gKyByZXR1cm4gbWluX3QodW5z
aWduZWQgbG9uZywgbnJfY3B1X2lkcywgZmluZF9maXJzdF9iaXQoc3JjcC0+Yml0cywgbnJfY3B1
X2lkcykpOw0KPiANCj4gLi4uIGNwdW1hc2tfZmlyc3QoKSBpcyByZXR1cm4gJ2ludCcuIFNvIHJh
dGhlciB0aGFuIGZpeGluZyBpdCwgeW91IHNlZW0gdG8gaGF2ZSBqdXN0IG1vdmVkIHRoZSB2aW9s
YXRpb24uDQo+IA0KPj4gIH0NCj4+ICAgIHN0YXRpYyBpbmxpbmUgaW50IGNwdW1hc2tfbmV4dChp
bnQgbiwgY29uc3QgY3B1bWFza190ICpzcmNwKQ0KDQpJ4oCZdmUgYWxzbyBmb3VuZCB0aGF0IGZp
bmRfZmlyc3RfYml0IHJldHVybnM6DQoNCiAtIHVuc2lnbmVkIGludCBvbiB4ODYNCiAtIHVuc2ln
bmVkIGxvbmcgb24gcHBjDQogLSB1bnNpZ25lZCBsb25nIG9uIGFybTY0DQogLSBpbnQgb24gYXJt
MzIgKHNlZW1zIHRoYXQgdmFsdWUgaXMgYWx3YXlzID49IDANCg0KU28gbWF5YmUgdGhleSBjYW4g
YmUgYWxsIHVuc2lnbmVkIGludCwgYW5kIGNwdW1hc2tfZmlyc3QgY2FuIGJlIGFzIHdlbGwgdW5z
aWduZWQgaW50Pw0KDQoNCj4gDQo+IENoZWVycywNCj4gDQo+IC0tIA0KPiBKdWxpZW4gR3JhbGwN
Cj4gDQoNCg==


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 09:15:34 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 09:15:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610463.949865 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9ar-0001qL-IK; Fri, 29 Sep 2023 09:15:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610463.949865; Fri, 29 Sep 2023 09:15:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9ar-0001qE-Fp; Fri, 29 Sep 2023 09:15:29 +0000
Received: by outflank-mailman (input) for mailman id 610463;
 Fri, 29 Sep 2023 09:15:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Fe2t=FN=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qm9ap-0001q0-AQ
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 09:15:27 +0000
Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com
 [2a00:1450:4864:20::32a])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id b987a6fb-5ea8-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 11:15:25 +0200 (CEST)
Received: by mail-wm1-x32a.google.com with SMTP id
 5b1f17b1804b1-40652e570d9so15094645e9.1
 for <xen-devel@lists.xenproject.org>; Fri, 29 Sep 2023 02:15:25 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 o11-20020a5d4a8b000000b0031ffb51f6f9sm21162253wrq.30.2023.09.29.02.15.24
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 29 Sep 2023 02:15:24 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b987a6fb-5ea8-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695978925; x=1696583725; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:autocrypt:from:references:cc
         :to:content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=PlPo02fj7bR+4WAVvkZPb3ySbR7GzSa56eRxSbChG30=;
        b=tkCUPdt5pOLRYshRAbrUHEldDQpvfLq3vWvAzIVpuud88G/7mB2s6t0yviSFmmSzu4
         uFShuD4drIS4tNfBVK21/YIeAOIS0wy19+yOoC6LPTKn2fyK7SMMSbekyauZFLkcWQBo
         1TzTvxE4lydNqK+DhgYK5C9JVJ0w5dZ35pu0M=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695978925; x=1696583725;
        h=content-transfer-encoding:in-reply-to:autocrypt:from:references:cc
         :to:content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=PlPo02fj7bR+4WAVvkZPb3ySbR7GzSa56eRxSbChG30=;
        b=ZOw6AK94VRF5bRByRvxlVlVHYasOC+4R25nLRd2uTwufrga5w9d9UtWqCX+wRDxJQz
         Y+oxMxDxzo2PPyTuDXK9hKdA79ljc6wd75GD66d9rnu1paxgwzOhnQ0tpHByePc6ye8d
         JUuqBFuNuQW8sltDCYM1wwJLoneYAkWcvhcEnC1UaiXBRTSYbaSKAY3p9PFtCdv9R0V2
         qXJJZ1X1AVwK3aeYsB8OeFJ2Zly7aYumedgg1Ld4j+ilv38K68myJR8wf7l+sjkZg9Oy
         +Xf848oIBo1NX2dwCP/IZU3EP+zzuzILCeqkSpDgJvpMxt72lIY2afes1RErS5LX7gQl
         Uf5A==
X-Gm-Message-State: AOJu0YzTX5HAae11SfCll1qDZNZxFobGMmWkmwn9TeJDAv8gUZKzbHrc
	/RpSxLV5TFzhpWkE/7TY8A+YWw==
X-Google-Smtp-Source: AGHT+IGlw/Hw37PmsEVaDX/2cuEKBNVuqHjmvWxy2xfyk+YVB696Mt4d3B5JubMbVPxrrDoD+U+PlA==
X-Received: by 2002:a05:600c:21a:b0:405:3d04:5f4c with SMTP id 26-20020a05600c021a00b004053d045f4cmr3699494wmi.38.1695978925110;
        Fri, 29 Sep 2023 02:15:25 -0700 (PDT)
Message-ID: <2199cbc4-de83-4c91-b4dd-e69e0ed79866@citrix.com>
Date: Fri, 29 Sep 2023 10:15:24 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 1/3] xen/ppc: Fix stack initialization in head.S
Content-Language: en-GB
To: Shawn Anastasio <sanastasio@raptorengineering.com>,
 xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Jan Beulich <jbeulich@suse.com>, Henry Wang <Henry.Wang@arm.com>
References: <cover.1695942864.git.sanastasio@raptorengineering.com>
 <4d733b1f17215616b7ab00f0e44d2f483436b1d6.1695942864.git.sanastasio@raptorengineering.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Autocrypt: addr=andrew.cooper3@citrix.com; keydata=
 xsFNBFLhNn8BEADVhE+Hb8i0GV6mihnnr/uiQQdPF8kUoFzCOPXkf7jQ5sLYeJa0cQi6Penp
 VtiFYznTairnVsN5J+ujSTIb+OlMSJUWV4opS7WVNnxHbFTPYZVQ3erv7NKc2iVizCRZ2Kxn
 srM1oPXWRic8BIAdYOKOloF2300SL/bIpeD+x7h3w9B/qez7nOin5NzkxgFoaUeIal12pXSR
 Q354FKFoy6Vh96gc4VRqte3jw8mPuJQpfws+Pb+swvSf/i1q1+1I4jsRQQh2m6OTADHIqg2E
 ofTYAEh7R5HfPx0EXoEDMdRjOeKn8+vvkAwhviWXTHlG3R1QkbE5M/oywnZ83udJmi+lxjJ5
 YhQ5IzomvJ16H0Bq+TLyVLO/VRksp1VR9HxCzItLNCS8PdpYYz5TC204ViycobYU65WMpzWe
 LFAGn8jSS25XIpqv0Y9k87dLbctKKA14Ifw2kq5OIVu2FuX+3i446JOa2vpCI9GcjCzi3oHV
 e00bzYiHMIl0FICrNJU0Kjho8pdo0m2uxkn6SYEpogAy9pnatUlO+erL4LqFUO7GXSdBRbw5
 gNt25XTLdSFuZtMxkY3tq8MFss5QnjhehCVPEpE6y9ZjI4XB8ad1G4oBHVGK5LMsvg22PfMJ
 ISWFSHoF/B5+lHkCKWkFxZ0gZn33ju5n6/FOdEx4B8cMJt+cWwARAQABzSlBbmRyZXcgQ29v
 cGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPsLBegQTAQgAJAIbAwULCQgHAwUVCgkI
 CwUWAgMBAAIeAQIXgAUCWKD95wIZAQAKCRBlw/kGpdefoHbdD/9AIoR3k6fKl+RFiFpyAhvO
 59ttDFI7nIAnlYngev2XUR3acFElJATHSDO0ju+hqWqAb8kVijXLops0gOfqt3VPZq9cuHlh
 IMDquatGLzAadfFx2eQYIYT+FYuMoPZy/aTUazmJIDVxP7L383grjIkn+7tAv+qeDfE+txL4
 SAm1UHNvmdfgL2/lcmL3xRh7sub3nJilM93RWX1Pe5LBSDXO45uzCGEdst6uSlzYR/MEr+5Z
 JQQ32JV64zwvf/aKaagSQSQMYNX9JFgfZ3TKWC1KJQbX5ssoX/5hNLqxMcZV3TN7kU8I3kjK
 mPec9+1nECOjjJSO/h4P0sBZyIUGfguwzhEeGf4sMCuSEM4xjCnwiBwftR17sr0spYcOpqET
 ZGcAmyYcNjy6CYadNCnfR40vhhWuCfNCBzWnUW0lFoo12wb0YnzoOLjvfD6OL3JjIUJNOmJy
 RCsJ5IA/Iz33RhSVRmROu+TztwuThClw63g7+hoyewv7BemKyuU6FTVhjjW+XUWmS/FzknSi
 dAG+insr0746cTPpSkGl3KAXeWDGJzve7/SBBfyznWCMGaf8E2P1oOdIZRxHgWj0zNr1+ooF
 /PzgLPiCI4OMUttTlEKChgbUTQ+5o0P080JojqfXwbPAyumbaYcQNiH1/xYbJdOFSiBv9rpt
 TQTBLzDKXok86M7BTQRS4TZ/ARAAkgqudHsp+hd82UVkvgnlqZjzz2vyrYfz7bkPtXaGb9H4
 Rfo7mQsEQavEBdWWjbga6eMnDqtu+FC+qeTGYebToxEyp2lKDSoAsvt8w82tIlP/EbmRbDVn
 7bhjBlfRcFjVYw8uVDPptT0TV47vpoCVkTwcyb6OltJrvg/QzV9f07DJswuda1JH3/qvYu0p
 vjPnYvCq4NsqY2XSdAJ02HrdYPFtNyPEntu1n1KK+gJrstjtw7KsZ4ygXYrsm/oCBiVW/OgU
 g/XIlGErkrxe4vQvJyVwg6YH653YTX5hLLUEL1NS4TCo47RP+wi6y+TnuAL36UtK/uFyEuPy
 wwrDVcC4cIFhYSfsO0BumEI65yu7a8aHbGfq2lW251UcoU48Z27ZUUZd2Dr6O/n8poQHbaTd
 6bJJSjzGGHZVbRP9UQ3lkmkmc0+XCHmj5WhwNNYjgbbmML7y0fsJT5RgvefAIFfHBg7fTY/i
 kBEimoUsTEQz+N4hbKwo1hULfVxDJStE4sbPhjbsPCrlXf6W9CxSyQ0qmZ2bXsLQYRj2xqd1
 bpA+1o1j2N4/au1R/uSiUFjewJdT/LX1EklKDcQwpk06Af/N7VZtSfEJeRV04unbsKVXWZAk
 uAJyDDKN99ziC0Wz5kcPyVD1HNf8bgaqGDzrv3TfYjwqayRFcMf7xJaL9xXedMcAEQEAAcLB
 XwQYAQgACQUCUuE2fwIbDAAKCRBlw/kGpdefoG4XEACD1Qf/er8EA7g23HMxYWd3FXHThrVQ
 HgiGdk5Yh632vjOm9L4sd/GCEACVQKjsu98e8o3ysitFlznEns5EAAXEbITrgKWXDDUWGYxd
 pnjj2u+GkVdsOAGk0kxczX6s+VRBhpbBI2PWnOsRJgU2n10PZ3mZD4Xu9kU2IXYmuW+e5KCA
 vTArRUdCrAtIa1k01sPipPPw6dfxx2e5asy21YOytzxuWFfJTGnVxZZSCyLUO83sh6OZhJkk
 b9rxL9wPmpN/t2IPaEKoAc0FTQZS36wAMOXkBh24PQ9gaLJvfPKpNzGD8XWR5HHF0NLIJhgg
 4ZlEXQ2fVp3XrtocHqhu4UZR4koCijgB8sB7Tb0GCpwK+C4UePdFLfhKyRdSXuvY3AHJd4CP
 4JzW0Bzq/WXY3XMOzUTYApGQpnUpdOmuQSfpV9MQO+/jo7r6yPbxT7CwRS5dcQPzUiuHLK9i
 nvjREdh84qycnx0/6dDroYhp0DFv4udxuAvt1h4wGwTPRQZerSm4xaYegEFusyhbZrI0U9tJ
 B8WrhBLXDiYlyJT6zOV2yZFuW47VrLsjYnHwn27hmxTC/7tvG3euCklmkn9Sl9IAKFu29RSo
 d5bD8kMSCYsTqtTfT6W4A3qHGvIDta3ptLYpIAOD2sY3GYq2nf3Bbzx81wZK14JdDDHUX2Rs
 6+ahAA==
In-Reply-To: <4d733b1f17215616b7ab00f0e44d2f483436b1d6.1695942864.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 29/09/2023 12:19 am, Shawn Anastasio wrote:
> The code to set up the stack in head.S erroneously loads the bottom of
> the stack (the symbol cpu0_boot_stack) into r1 instead of the top of the
> stack (cpu0_boot_stack + STACK_SIZE).
>
> Fixes: 3a4e6f67bc68 ("xen/ppc: Set up a basic C environment")
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>

Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>

We're in code freeze for 4.18 now.  Bugfixes are still fine, and this
one does want including IMO.  CC Henry.


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 09:19:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 09:19:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610468.949875 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9eL-0002VN-5Y; Fri, 29 Sep 2023 09:19:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610468.949875; Fri, 29 Sep 2023 09:19:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9eL-0002VG-2z; Fri, 29 Sep 2023 09:19:05 +0000
Received: by outflank-mailman (input) for mailman id 610468;
 Fri, 29 Sep 2023 09:19:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xPTL=FN=arm.com=Henry.Wang@srs-se1.protection.inumbo.net>)
 id 1qm9eK-0002VA-9r
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 09:19:04 +0000
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-db3eur04on061d.outbound.protection.outlook.com
 [2a01:111:f400:fe0c::61d])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3a66d30a-5ea9-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 11:19:02 +0200 (CEST)
Received: from AM7PR04CA0021.eurprd04.prod.outlook.com (2603:10a6:20b:110::31)
 by DU2PR08MB10129.eurprd08.prod.outlook.com (2603:10a6:10:492::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Fri, 29 Sep
 2023 09:18:59 +0000
Received: from AM7EUR03FT025.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:20b:110:cafe::7a) by AM7PR04CA0021.outlook.office365.com
 (2603:10a6:20b:110::31) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Fri, 29 Sep 2023 09:18:59 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 AM7EUR03FT025.mail.protection.outlook.com (100.127.140.199) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.15 via Frontend Transport; Fri, 29 Sep 2023 09:18:58 +0000
Received: ("Tessian outbound 6d14f3380669:v211");
 Fri, 29 Sep 2023 09:18:58 +0000
Received: from 17e79e5abfd1.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 1B9349BE-6F57-41C4-AA6B-0835A89949A7.1; 
 Fri, 29 Sep 2023 09:18:50 +0000
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 17e79e5abfd1.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 09:18:50 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com (2603:10a6:20b:570::15)
 by DBAPR08MB5671.eurprd08.prod.outlook.com (2603:10a6:10:1a1::15)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Fri, 29 Sep
 2023 09:18:48 +0000
Received: from AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b]) by AS8PR08MB7991.eurprd08.prod.outlook.com
 ([fe80::dfff:49d6:ed04:118b%7]) with mapi id 15.20.6838.016; Fri, 29 Sep 2023
 09:18:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3a66d30a-5ea9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1nXCaHdd/21Wyu8BLjV3dvAYQYfch2q+RAoWuQMLhTY=;
 b=WvzRFaZ85Y+6GrY+E8tg68mK3erEZK3vIpQlbEpWbi63UDb8Jpaxwhv/vxI5GhF1Rh8fYUre9I/SiBIliK9nfBDzwjy44GxK3+O4y4yoVl6khgSreI9AsJRbxM2TWUT0ORA3a7QOVQUSnHhwufOVrdpTerqqTBilO1SYZgj94jo=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: 55ba9a286566d454
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=P8yl/ZXGlxosqNNA89T77yBZ7aibL4OrCMZcCHiz2U051Fmq05RddncU8zl7B6bc05LTEusArv7HgqOA+9XLDKB8iP83owEV67OoNhiHFmIFezESpyuLfcfU5eNS2K4tuH5LcKgef6YbNJ9iboteXwAIg3z286i7O4IliXI83MzbWhxWLoewL6twLjP9ILbRfA98s/GXiNPQDcwt/goTrpBURP01FFhMV43LTrl10nGK1Xs+smflcfcr8F6srgKmTq8/4RvSmdJJwfTSf6jw/DbTuw2b9gbUQgkIFmH1zjuNSXuALnJfVrAOz8vkt2CXXcJsHt8/cGJAQHQxl4Ny/Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=1nXCaHdd/21Wyu8BLjV3dvAYQYfch2q+RAoWuQMLhTY=;
 b=jHqe++/w86Jriv7y9aWuw8zaWJ1uCqtFYzcVzuY1wqgS8wlyRqAWGeQNGQ4/oYInmoFUZ3Td6UID65DtgckpRFnqC1kRY1sGQCFwiXdpA8OdoCJQoUtmZw4KgD3uxDga6PLZn37V3BuNXPM+W6I5FOzmoro9Nu9Zew4it+xj77HVi+esWoJpTS4/VdTQUDg/4SanQjzGC+K+LtmdcIOmmeXmSbxjrO22l8kjF9WU3tEXgR6xI7is/ZZVfjfXDuOeT120NJjJHDI1Aj2cwnD/WuvYSqDGbVXFmGFuDUrSUFEUOTk3d+OV5RPHZLVA21mQ7skVO8wMx85MoEJOj76v6w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=1nXCaHdd/21Wyu8BLjV3dvAYQYfch2q+RAoWuQMLhTY=;
 b=WvzRFaZ85Y+6GrY+E8tg68mK3erEZK3vIpQlbEpWbi63UDb8Jpaxwhv/vxI5GhF1Rh8fYUre9I/SiBIliK9nfBDzwjy44GxK3+O4y4yoVl6khgSreI9AsJRbxM2TWUT0ORA3a7QOVQUSnHhwufOVrdpTerqqTBilO1SYZgj94jo=
From: Henry Wang <Henry.Wang@arm.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Shawn Anastasio <sanastasio@raptorengineering.com>, Xen-devel
	<xen-devel@lists.xenproject.org>, Timothy Pearson
	<tpearson@raptorengineering.com>, Jan Beulich <jbeulich@suse.com>
Subject: Re: [PATCH 1/3] xen/ppc: Fix stack initialization in head.S
Thread-Topic: [PATCH 1/3] xen/ppc: Fix stack initialization in head.S
Thread-Index: AQHZ8mJQH31HusejxUOizMOhUuSKLbAxhjAAgAAA5oA=
Date: Fri, 29 Sep 2023 09:18:48 +0000
Message-ID: <01440197-49D8-4ACD-97C7-0A68370965C0@arm.com>
References: <cover.1695942864.git.sanastasio@raptorengineering.com>
 <4d733b1f17215616b7ab00f0e44d2f483436b1d6.1695942864.git.sanastasio@raptorengineering.com>
 <2199cbc4-de83-4c91-b4dd-e69e0ed79866@citrix.com>
In-Reply-To: <2199cbc4-de83-4c91-b4dd-e69e0ed79866@citrix.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3731.700.6)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AS8PR08MB7991:EE_|DBAPR08MB5671:EE_|AM7EUR03FT025:EE_|DU2PR08MB10129:EE_
X-MS-Office365-Filtering-Correlation-Id: 8bd13b3e-fede-4664-4337-08dbc0cd1cb5
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 1OhkVNOUyLkXAxYrJCJdTdkzS1HRbloKZw1bb/dN6NUAfEnS/wF4hKl2O22zZFSfurNBbAPwDpJVSJO7UjG8ZioONt05RSffH+cS44Aqf6k01IMYM57h3pnGWXBrfyxuANUt6KOmbNY1C9c+wyjmTIHEeAg2/jMBAY7PPMvQUkaQnkGccRKec0beeZoFrUTC1CZXNEFqq3gWtZGGUzbXRogKR38f62/nTcCw5/UOYCzLyDbUL6s0HFnCb7YW6XwRoKmeMFCF3ZB6WA2R1HOzJdZ02hgBzTeWtk61fKe5TbSP6iN9TNiz1NWGla7I7rjZHBHld8NT87MzFNKC69bAYBdX9lLqn1tw8USUYw39pJI/8+u4nyMxL1u0mS1ruKTJx34y/wUabQcjJSeIWYaNJDYSPwh6gBhJvNdFfb5DClZDIj+ZJOCLCHOrYJRFxQfu+BXAy5a9kJeBcjjnhBpKNdfUH30LIL0dt0a39TjfemuxPaWPcnf+VSqM0MCcmrv92JS2lmkIhlRb7bMNQtY4L9YSQWj1YasOyZ/aPaXHL18hOtYz2UYYZfU3NB6vSOOQiTRkHAw2i4w86L/ZhnR5d2ogXfv/DfVWEXuJKxvFROZpY3GVoFXRsS10f35xnFQ9yIYtfcmxJk3TfFypi9wLGg==
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7991.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39850400004)(396003)(136003)(376002)(366004)(346002)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(2616005)(71200400001)(26005)(53546011)(6506007)(478600001)(66946007)(4744005)(6512007)(5660300002)(6486002)(76116006)(64756008)(2906002)(66476007)(91956017)(4326008)(66556008)(66446008)(54906003)(8676002)(41300700001)(6916009)(8936002)(316002)(122000001)(86362001)(33656002)(36756003)(38070700005)(38100700002)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="us-ascii"
Content-ID: <44D9F6B7A166884AB56C1D6C9CF1F0DF@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR08MB5671
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 AM7EUR03FT025.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	3b117535-f45a-4bbc-b049-08dbc0cd167e
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	RbylhU58yqYgPCAljPMWXd/K04mRcurjyp4TE40YWEfIWjkGhUynlCaTpLSfJkFZB8LcNVJVrOiEfLuO4oqV0r2VUm08H54jCzTyUCQCwCIWLGEGh6zoqNDxix7tVLPgsPlZC6tMi9ZZpusHfK4fGBTP9xHMYSRUuhSgAQXh9U9+g2JihFPL7aTv7ESGoWC0hGmm4aD+pyeSPlWSeH6C1DColSOt20tv/cPZNiIVihTL02OskH7l27P2n37y35RqK229q9XR8KklDHcprW41UPy1LXHy4GCcMwe6f+HPiH10yRcV9dVRqLXN/j7Cf9IeCTtAOMK9C6IE0EmY6Wigg/P9HzSMlH8cG6BEYiriG282R6W14os7FRq2QPQmC1bZQWtZ4lbDRqjtIv8lx35mKJ37jQZ/9kRRbcNgbPB7sb1PAjEZIbZfrIOGqGyW82USoYK9iRMn4JopXsMftflzhIqd+A485KvvsdAmS25FFErma/+ZanxeLSbBxvPEggYFhrP522vTQb7D6fz9icaYYcoXyS8m4ZhrzW50AtkinSVEn6bWgq+FnaEidauDGOhnlHMk9loSdNWy5BekG2HPW8O5xZ4T7J7tU2A20jPz+LDDRH4c718AIF31Bx7aTpJxT8y/U8Dc9ukuU+uNzHqu3wYaRBTTiYNYsXOAepUraJHaoqyi01llPWPI9T+ZizlL7MxPj/db4XaMYjTBc9vd8Q==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(376002)(346002)(396003)(39850400004)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(82310400011)(46966006)(36840700001)(54906003)(8676002)(41300700001)(316002)(4744005)(6862004)(70206006)(70586007)(40480700001)(6512007)(4326008)(8936002)(2906002)(36860700001)(6486002)(478600001)(26005)(5660300002)(47076005)(6506007)(53546011)(81166007)(336012)(86362001)(107886003)(2616005)(82740400003)(356005)(33656002)(36756003);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 09:18:58.4902
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 8bd13b3e-fede-4664-4337-08dbc0cd1cb5
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	AM7EUR03FT025.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR08MB10129

Hi Andrew, Shawn,

> On Sep 29, 2023, at 17:15, Andrew Cooper <andrew.cooper3@citrix.com> wrot=
e:
>=20
> On 29/09/2023 12:19 am, Shawn Anastasio wrote:
>> The code to set up the stack in head.S erroneously loads the bottom of
>> the stack (the symbol cpu0_boot_stack) into r1 instead of the top of the
>> stack (cpu0_boot_stack + STACK_SIZE).
>>=20
>> Fixes: 3a4e6f67bc68 ("xen/ppc: Set up a basic C environment")
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>=20
> Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
>=20
> We're in code freeze for 4.18 now.  Bugfixes are still fine, and this
> one does want including IMO.

Indeed, so:

Release-acked-by: Henry Wang <Henry.Wang@arm.com>

> CC Henry.

Thanks!

Kind regards,
Henry


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 09:29:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 09:29:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610471.949886 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9nm-0006NZ-2k; Fri, 29 Sep 2023 09:28:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610471.949886; Fri, 29 Sep 2023 09:28:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9nm-0006NS-02; Fri, 29 Sep 2023 09:28:50 +0000
Received: by outflank-mailman (input) for mailman id 610471;
 Fri, 29 Sep 2023 09:28:48 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Fe2t=FN=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qm9nk-0006NM-NC
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 09:28:48 +0000
Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com
 [2a00:1450:4864:20::336])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 9733b2eb-5eaa-11ee-878b-cb3800f73035;
 Fri, 29 Sep 2023 11:28:47 +0200 (CEST)
Received: by mail-wm1-x336.google.com with SMTP id
 5b1f17b1804b1-406618d0992so377835e9.0
 for <xen-devel@lists.xenproject.org>; Fri, 29 Sep 2023 02:28:47 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 u1-20020adfed41000000b003247d3e5d99sm2073784wro.55.2023.09.29.02.28.45
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 29 Sep 2023 02:28:46 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9733b2eb-5eaa-11ee-878b-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695979726; x=1696584526; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:autocrypt:from:references:cc
         :to:content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=gMDLHMVgoYbOdpdm2cv/nAe98keOQzBHp6Q/s1TSvfM=;
        b=h3kj0AeMl67r/G4xY8GGnBLQYfqDB7BMBeNkV4hYtcmEu272jLxjskMSpYFaf3oRf4
         Rnr813u1wXPEFt/DV8taw+qDF03gvC00lq+jwTLo9/osbbU3uAXCJ+tvBG/dhqWwkgwZ
         UQqROifzCukZiJubVLa6U1eqP3IwgtQvyTvvE=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695979726; x=1696584526;
        h=content-transfer-encoding:in-reply-to:autocrypt:from:references:cc
         :to:content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=gMDLHMVgoYbOdpdm2cv/nAe98keOQzBHp6Q/s1TSvfM=;
        b=GC2O4/BjE0VWMDwsCMxk+D9Y3iT+njuY01OW/OGB5BI/vQaengxjhdptoV03aNi9Yg
         chr5Fp1zMxIFLvHJIPAeSjhmT9gljELdaM8PoMrfwlzrAzoBfgPMsuLXb0wFGb9glMlp
         LkHGg/crvZK/vDrf7oqnCs6KdHsU8rJ7bQkkC4a0H4ogeCgD4JwyFYRDD0raPXGIAaMi
         0K8C8oWc8kz6Te+leH4SjjSMxbb0NP+3xJksmvMEuilBu/gUmdpmtNTE1Uf8tvrnd0Xv
         sg/sL6EozVva/svq0cvlRfoDh+4aC8B3/FCQSnV2FZ19RiyK7FssBTOj50ntnuk8OKsi
         yI7w==
X-Gm-Message-State: AOJu0Yw4HhaghItjVJmZK1d/+D5V8hMVwqffTlhWof4u14YrrxtK6j1+
	5VNQpjdaIgnH5UN/YNCJd+1g+g==
X-Google-Smtp-Source: AGHT+IHWWxd370tGTCgbkbbcaftSsY3Hfwt+KwapyEMeqi+RlInxERSNxnie9UWowRox+hXx+/2rDQ==
X-Received: by 2002:a5d:50c9:0:b0:317:64f4:5536 with SMTP id f9-20020a5d50c9000000b0031764f45536mr3190210wrt.44.1695979726439;
        Fri, 29 Sep 2023 02:28:46 -0700 (PDT)
Message-ID: <dc966303-6b94-4b82-8b66-4c55bc325449@citrix.com>
Date: Fri, 29 Sep 2023 10:28:45 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 2/3] xen/ppc: Add .text.exceptions section for exception
 vectors
Content-Language: en-GB
To: Shawn Anastasio <sanastasio@raptorengineering.com>,
 xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Jan Beulich <jbeulich@suse.com>, Henry Wang <Henry.Wang@arm.com>
References: <cover.1695942864.git.sanastasio@raptorengineering.com>
 <de5b99d79671a7fe11c5720797aaa6e3207661d1.1695942864.git.sanastasio@raptorengineering.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Autocrypt: addr=andrew.cooper3@citrix.com; keydata=
 xsFNBFLhNn8BEADVhE+Hb8i0GV6mihnnr/uiQQdPF8kUoFzCOPXkf7jQ5sLYeJa0cQi6Penp
 VtiFYznTairnVsN5J+ujSTIb+OlMSJUWV4opS7WVNnxHbFTPYZVQ3erv7NKc2iVizCRZ2Kxn
 srM1oPXWRic8BIAdYOKOloF2300SL/bIpeD+x7h3w9B/qez7nOin5NzkxgFoaUeIal12pXSR
 Q354FKFoy6Vh96gc4VRqte3jw8mPuJQpfws+Pb+swvSf/i1q1+1I4jsRQQh2m6OTADHIqg2E
 ofTYAEh7R5HfPx0EXoEDMdRjOeKn8+vvkAwhviWXTHlG3R1QkbE5M/oywnZ83udJmi+lxjJ5
 YhQ5IzomvJ16H0Bq+TLyVLO/VRksp1VR9HxCzItLNCS8PdpYYz5TC204ViycobYU65WMpzWe
 LFAGn8jSS25XIpqv0Y9k87dLbctKKA14Ifw2kq5OIVu2FuX+3i446JOa2vpCI9GcjCzi3oHV
 e00bzYiHMIl0FICrNJU0Kjho8pdo0m2uxkn6SYEpogAy9pnatUlO+erL4LqFUO7GXSdBRbw5
 gNt25XTLdSFuZtMxkY3tq8MFss5QnjhehCVPEpE6y9ZjI4XB8ad1G4oBHVGK5LMsvg22PfMJ
 ISWFSHoF/B5+lHkCKWkFxZ0gZn33ju5n6/FOdEx4B8cMJt+cWwARAQABzSlBbmRyZXcgQ29v
 cGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPsLBegQTAQgAJAIbAwULCQgHAwUVCgkI
 CwUWAgMBAAIeAQIXgAUCWKD95wIZAQAKCRBlw/kGpdefoHbdD/9AIoR3k6fKl+RFiFpyAhvO
 59ttDFI7nIAnlYngev2XUR3acFElJATHSDO0ju+hqWqAb8kVijXLops0gOfqt3VPZq9cuHlh
 IMDquatGLzAadfFx2eQYIYT+FYuMoPZy/aTUazmJIDVxP7L383grjIkn+7tAv+qeDfE+txL4
 SAm1UHNvmdfgL2/lcmL3xRh7sub3nJilM93RWX1Pe5LBSDXO45uzCGEdst6uSlzYR/MEr+5Z
 JQQ32JV64zwvf/aKaagSQSQMYNX9JFgfZ3TKWC1KJQbX5ssoX/5hNLqxMcZV3TN7kU8I3kjK
 mPec9+1nECOjjJSO/h4P0sBZyIUGfguwzhEeGf4sMCuSEM4xjCnwiBwftR17sr0spYcOpqET
 ZGcAmyYcNjy6CYadNCnfR40vhhWuCfNCBzWnUW0lFoo12wb0YnzoOLjvfD6OL3JjIUJNOmJy
 RCsJ5IA/Iz33RhSVRmROu+TztwuThClw63g7+hoyewv7BemKyuU6FTVhjjW+XUWmS/FzknSi
 dAG+insr0746cTPpSkGl3KAXeWDGJzve7/SBBfyznWCMGaf8E2P1oOdIZRxHgWj0zNr1+ooF
 /PzgLPiCI4OMUttTlEKChgbUTQ+5o0P080JojqfXwbPAyumbaYcQNiH1/xYbJdOFSiBv9rpt
 TQTBLzDKXok86M7BTQRS4TZ/ARAAkgqudHsp+hd82UVkvgnlqZjzz2vyrYfz7bkPtXaGb9H4
 Rfo7mQsEQavEBdWWjbga6eMnDqtu+FC+qeTGYebToxEyp2lKDSoAsvt8w82tIlP/EbmRbDVn
 7bhjBlfRcFjVYw8uVDPptT0TV47vpoCVkTwcyb6OltJrvg/QzV9f07DJswuda1JH3/qvYu0p
 vjPnYvCq4NsqY2XSdAJ02HrdYPFtNyPEntu1n1KK+gJrstjtw7KsZ4ygXYrsm/oCBiVW/OgU
 g/XIlGErkrxe4vQvJyVwg6YH653YTX5hLLUEL1NS4TCo47RP+wi6y+TnuAL36UtK/uFyEuPy
 wwrDVcC4cIFhYSfsO0BumEI65yu7a8aHbGfq2lW251UcoU48Z27ZUUZd2Dr6O/n8poQHbaTd
 6bJJSjzGGHZVbRP9UQ3lkmkmc0+XCHmj5WhwNNYjgbbmML7y0fsJT5RgvefAIFfHBg7fTY/i
 kBEimoUsTEQz+N4hbKwo1hULfVxDJStE4sbPhjbsPCrlXf6W9CxSyQ0qmZ2bXsLQYRj2xqd1
 bpA+1o1j2N4/au1R/uSiUFjewJdT/LX1EklKDcQwpk06Af/N7VZtSfEJeRV04unbsKVXWZAk
 uAJyDDKN99ziC0Wz5kcPyVD1HNf8bgaqGDzrv3TfYjwqayRFcMf7xJaL9xXedMcAEQEAAcLB
 XwQYAQgACQUCUuE2fwIbDAAKCRBlw/kGpdefoG4XEACD1Qf/er8EA7g23HMxYWd3FXHThrVQ
 HgiGdk5Yh632vjOm9L4sd/GCEACVQKjsu98e8o3ysitFlznEns5EAAXEbITrgKWXDDUWGYxd
 pnjj2u+GkVdsOAGk0kxczX6s+VRBhpbBI2PWnOsRJgU2n10PZ3mZD4Xu9kU2IXYmuW+e5KCA
 vTArRUdCrAtIa1k01sPipPPw6dfxx2e5asy21YOytzxuWFfJTGnVxZZSCyLUO83sh6OZhJkk
 b9rxL9wPmpN/t2IPaEKoAc0FTQZS36wAMOXkBh24PQ9gaLJvfPKpNzGD8XWR5HHF0NLIJhgg
 4ZlEXQ2fVp3XrtocHqhu4UZR4koCijgB8sB7Tb0GCpwK+C4UePdFLfhKyRdSXuvY3AHJd4CP
 4JzW0Bzq/WXY3XMOzUTYApGQpnUpdOmuQSfpV9MQO+/jo7r6yPbxT7CwRS5dcQPzUiuHLK9i
 nvjREdh84qycnx0/6dDroYhp0DFv4udxuAvt1h4wGwTPRQZerSm4xaYegEFusyhbZrI0U9tJ
 B8WrhBLXDiYlyJT6zOV2yZFuW47VrLsjYnHwn27hmxTC/7tvG3euCklmkn9Sl9IAKFu29RSo
 d5bD8kMSCYsTqtTfT6W4A3qHGvIDta3ptLYpIAOD2sY3GYq2nf3Bbzx81wZK14JdDDHUX2Rs
 6+ahAA==
In-Reply-To: <de5b99d79671a7fe11c5720797aaa6e3207661d1.1695942864.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 29/09/2023 12:19 am, Shawn Anastasio wrote:
> On Power, the exception vectors must lie at a fixed address, depending
> on the state of the Alternate Interrupt Location (AIL) field of the
> Logical Partition Control Register (LPCR). Create a .text.exceptions
> section in the linker script at an address suitable for AIL=3 plus an
> accompanying assertion to pave the way for implementing exception
> support.

Thanks - this is a perfect level of detail as far as I'm concerned as a
PPC novice.

>
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> ---
>  xen/arch/ppc/include/asm/config.h | 3 +++
>  xen/arch/ppc/xen.lds.S            | 7 +++++++
>  2 files changed, 10 insertions(+)
>
> diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm/config.h
> index a11a09c570..e012b75beb 100644
> --- a/xen/arch/ppc/include/asm/config.h
> +++ b/xen/arch/ppc/include/asm/config.h
> @@ -42,6 +42,9 @@
>  
>  #define XEN_VIRT_START _AC(0xc000000000000000, UL)
>  
> +/* Fixed address for start of the section containing exception vectors */
> +#define EXCEPTION_VECTORS_START _AC(0xc000000000000100, UL)

The patch looks fine, but a PPC question.  Does AIL=3 really mean a hard
coded address at 0xc000000000000100 ?

Or is it +0x100 from something else that happens to be programmed to
XEN_VIRT_START ?

> +
>  #define VMAP_VIRT_START (XEN_VIRT_START + GB(1))
>  #define VMAP_VIRT_SIZE  GB(1)
>  
> diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S
> index 9e46035155..9e888d7383 100644
> --- a/xen/arch/ppc/xen.lds.S
> +++ b/xen/arch/ppc/xen.lds.S
> @@ -24,6 +24,10 @@ SECTIONS
>          _stext = .;            /* Text section */
>          *(.text.header)
>  
> +        . = ALIGN(256);
> +        _stext_exceptions = .;

If this is really only used for the linker assertion, then it wants to be

    HIDDEN(_stext_exceptions = .);

otherwise the debugging symbols will have _stext_exceptions typically
hiding exc_sysreset in the disassembly and symbol table.

> +        *(.text.exceptions)
> +
>          *(.text.cold)
>          *(.text.unlikely .text.*_unlikely .text.unlikely.*)
>  
> @@ -184,3 +188,6 @@ ASSERT(IS_ALIGNED(__bss_end,        POINTER_ALIGN), "__bss_end is misaligned")
>  
>  ASSERT(!SIZEOF(.got),      ".got non-empty")
>  ASSERT(!SIZEOF(.got.plt),  ".got.plt non-empty")
> +
> +ASSERT(_stext_exceptions == EXCEPTION_VECTORS_START, \
> +       ".text.exceptions not at expected location -- .text.header too big?");

No need for ; at the end, and no need for \ either.

As I said for patch 1, we're now at 4.18-rc1.   Does this need to be
included now, or wait for 4.19?  There's something to be said for having
a basic exception handler, but it is technically a new feature...

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 09:40:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 09:40:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610476.949896 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9yn-00036D-0g; Fri, 29 Sep 2023 09:40:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610476.949896; Fri, 29 Sep 2023 09:40:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qm9ym-000366-UG; Fri, 29 Sep 2023 09:40:12 +0000
Received: by outflank-mailman (input) for mailman id 610476;
 Fri, 29 Sep 2023 09:40:11 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qm9yl-000311-Bt; Fri, 29 Sep 2023 09:40:11 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qm9yl-0003Fq-2o; Fri, 29 Sep 2023 09:40:11 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qm9yk-0003Iv-IC; Fri, 29 Sep 2023 09:40:10 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qm9yk-00012a-HK; Fri, 29 Sep 2023 09:40:10 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Oc/20ZmWQP9cLZhR+orZmmfkqFeiBc7L5TcLCR9lmw4=; b=gQw0C3I6orBHsXAmOC3scDQtXh
	6agd+kAWCUwq7cxQlKL/DeUPUvystvffMOQMFBHku1nXRcI/ypgB52lUoWSzd/Hzr9tjfieRTjEV9
	Dq/gTfWYQPGEW/1SjrEam7wXyNrWLpDaiFBGaztVH6JmC7JrpCw04qHUuGPpKAZ5HlbQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183206-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183206: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-amd64-amd64-xl-credit2:debian-fixup:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-linus:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    linux-linus:test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm:guest-start/debianhvm.repeat:fail:heisenbug
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=9ed22ae6be817d7a3f5c15ca22cbc9d3963b481d
X-Osstest-Versions-That:
    linux=633b47cb009d09dc8f4ba9cdb3a0ca138809c7c7
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 29 Sep 2023 09:40:10 +0000

flight 183206 linux-linus real [real]
flight 183212 linux-linus real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183206/
http://logs.test-lab.xenproject.org/osstest/logs/183212/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-amd64-xl-credit2  13 debian-fixup        fail pass in 183212-retest
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183212-retest
 test-armhf-armhf-xl-vhd       8 xen-boot            fail pass in 183212-retest
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm 20 guest-start/debianhvm.repeat fail pass in 183212-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 183212 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 183212 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183196
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183196
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183196
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183196
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183196
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183196
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183196
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183196
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 linux                9ed22ae6be817d7a3f5c15ca22cbc9d3963b481d
baseline version:
 linux                633b47cb009d09dc8f4ba9cdb3a0ca138809c7c7

Last test of basis   183196  2023-09-27 21:11:50 Z    1 days
Testing same since   183206  2023-09-28 18:44:04 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Charles Kearney <charles.kearney@hpe.com>
  Charles Keepax <ckeepax@opensource.cirrus.com>
  Chong Qiao <qiaochong@loongson.cn>
  Christoph Hellwig <hch@lst.de>
  Fabio Estevam <festevam@denx.de>
  Huacai Chen <chenhuacai@loongson.cn>
  Linus Torvalds <torvalds@linux-foundation.org>
  Mark Brown <broonie@kernel.org>
  Randy Dunlap <rdunlap@infradead.org>
  Randy Dunlap <rdunlap@infradead.org> # build-tested
  Thomas Bogendoerfer <tsbogend@alpha.franken.de>
  Tiezhu Yang <yangtiezhu@loongson.cn>
  Youling Tang <tangyouling@loongson.cn>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        fail    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 fail    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-freebsd11-amd64                             pass    
 test-amd64-amd64-freebsd12-amd64                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  fail    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-amd64-xl-vhd                                      pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      fail    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

hint: The 'hooks/update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-receive' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
To xenbits.xen.org:/home/xen/git/linux-pvops.git
   633b47cb009d..9ed22ae6be81  9ed22ae6be817d7a3f5c15ca22cbc9d3963b481d -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 09:48:31 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 09:48:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610483.949905 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmA6k-0006CI-U7; Fri, 29 Sep 2023 09:48:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610483.949905; Fri, 29 Sep 2023 09:48:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmA6k-0006CB-Qr; Fri, 29 Sep 2023 09:48:26 +0000
Received: by outflank-mailman (input) for mailman id 610483;
 Fri, 29 Sep 2023 09:48:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Fe2t=FN=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qmA6j-0006C5-Dz
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 09:48:26 +0000
Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com
 [2a00:1450:4864:20::231])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 54f32493-5ead-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 11:48:24 +0200 (CEST)
Received: by mail-lj1-x231.google.com with SMTP id
 38308e7fff4ca-2c007d6159aso219406381fa.3
 for <xen-devel@lists.xenproject.org>; Fri, 29 Sep 2023 02:48:24 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 y13-20020adff6cd000000b003180027d67asm21140783wrp.19.2023.09.29.02.48.23
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 29 Sep 2023 02:48:23 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 54f32493-5ead-11ee-878c-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1695980904; x=1696585704; darn=lists.xenproject.org;
        h=content-transfer-encoding:in-reply-to:autocrypt:from:references:cc
         :to:content-language:subject:user-agent:mime-version:date:message-id
         :from:to:cc:subject:date:message-id:reply-to;
        bh=sDfi4ZhGMRdi1EBHjC6h8kjIQ5crZiVXrqUq1j3IyAk=;
        b=dgR+bMHJBILIoUfVOYVcXvyGF4ysGcoh9eAnqvCpbxlm9vYoeKbi/lH70cABCdHa/5
         FBqBALt7ybrxSaMYuohXq8BHZhgsUNQxbAzmC/DOYa4arhkJqvbPgBaLyUd1+tz6LzM/
         Mr1zvITLtTkxrddnWhyxG6PstOAtmwuzKzxL4=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1695980904; x=1696585704;
        h=content-transfer-encoding:in-reply-to:autocrypt:from:references:cc
         :to:content-language:subject:user-agent:mime-version:date:message-id
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=sDfi4ZhGMRdi1EBHjC6h8kjIQ5crZiVXrqUq1j3IyAk=;
        b=QO0BB8zxjyC0J+9gI032qgtmkgpsfKq02SkBZ8vJvZ3d7DcSx3wv8+3WWFnBqNDA96
         ihMnRAlwk2RGuj2m6mbSb8jTWh9gPf/vbK62ieoXm+UaEzE3jvz08gO68zJCTJlTTR3U
         GXOnNgT91H4izcSat5gMwbAG4IAnvqBmC9VWzjOclglLMgGoCyclnxIGHQYDLgx7Fh+k
         z9oK8uA1xlMJjLgR6Fc9ccY70vDlZDnSh/CEfC0e4IcqxCMyDfzmnUzQt+GdSvkNE3ZV
         leULJpIgwZ3UMVytCdNay0zbYlJZasn+YolKmUNBoqNsXJxBB5zAh4FBI3mmpO/tW95e
         rmsA==
X-Gm-Message-State: AOJu0YxbX7ZXSBfosRab4B5yh+mQGFd7o/hroVAD2E9rlrjtpdKRgv9U
	ZbrP59M6/u1Hni44RQ8M5zDgUA==
X-Google-Smtp-Source: AGHT+IFHvHQP7PgueAdMYOB2Ekaf4zDgewjmIGFnf+PqMQM0CfasUPbKlFuemmPlH3uW3TV/n8FmHw==
X-Received: by 2002:a2e:2e09:0:b0:2c0:167e:dd8c with SMTP id u9-20020a2e2e09000000b002c0167edd8cmr2964319lju.10.1695980903604;
        Fri, 29 Sep 2023 02:48:23 -0700 (PDT)
Message-ID: <bfeb8d21-66ae-4bc4-99d7-33fd9ede266e@citrix.com>
Date: Fri, 29 Sep 2023 10:48:22 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH 3/3] xen/ppc: Implement a basic exception handler
Content-Language: en-GB
To: Shawn Anastasio <sanastasio@raptorengineering.com>,
 xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Jan Beulich <jbeulich@suse.com>
References: <cover.1695942864.git.sanastasio@raptorengineering.com>
 <edbe94f5ba1db05beb36fef6589b6a79a30c4a7c.1695942864.git.sanastasio@raptorengineering.com>
From: Andrew Cooper <andrew.cooper3@citrix.com>
Autocrypt: addr=andrew.cooper3@citrix.com; keydata=
 xsFNBFLhNn8BEADVhE+Hb8i0GV6mihnnr/uiQQdPF8kUoFzCOPXkf7jQ5sLYeJa0cQi6Penp
 VtiFYznTairnVsN5J+ujSTIb+OlMSJUWV4opS7WVNnxHbFTPYZVQ3erv7NKc2iVizCRZ2Kxn
 srM1oPXWRic8BIAdYOKOloF2300SL/bIpeD+x7h3w9B/qez7nOin5NzkxgFoaUeIal12pXSR
 Q354FKFoy6Vh96gc4VRqte3jw8mPuJQpfws+Pb+swvSf/i1q1+1I4jsRQQh2m6OTADHIqg2E
 ofTYAEh7R5HfPx0EXoEDMdRjOeKn8+vvkAwhviWXTHlG3R1QkbE5M/oywnZ83udJmi+lxjJ5
 YhQ5IzomvJ16H0Bq+TLyVLO/VRksp1VR9HxCzItLNCS8PdpYYz5TC204ViycobYU65WMpzWe
 LFAGn8jSS25XIpqv0Y9k87dLbctKKA14Ifw2kq5OIVu2FuX+3i446JOa2vpCI9GcjCzi3oHV
 e00bzYiHMIl0FICrNJU0Kjho8pdo0m2uxkn6SYEpogAy9pnatUlO+erL4LqFUO7GXSdBRbw5
 gNt25XTLdSFuZtMxkY3tq8MFss5QnjhehCVPEpE6y9ZjI4XB8ad1G4oBHVGK5LMsvg22PfMJ
 ISWFSHoF/B5+lHkCKWkFxZ0gZn33ju5n6/FOdEx4B8cMJt+cWwARAQABzSlBbmRyZXcgQ29v
 cGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPsLBegQTAQgAJAIbAwULCQgHAwUVCgkI
 CwUWAgMBAAIeAQIXgAUCWKD95wIZAQAKCRBlw/kGpdefoHbdD/9AIoR3k6fKl+RFiFpyAhvO
 59ttDFI7nIAnlYngev2XUR3acFElJATHSDO0ju+hqWqAb8kVijXLops0gOfqt3VPZq9cuHlh
 IMDquatGLzAadfFx2eQYIYT+FYuMoPZy/aTUazmJIDVxP7L383grjIkn+7tAv+qeDfE+txL4
 SAm1UHNvmdfgL2/lcmL3xRh7sub3nJilM93RWX1Pe5LBSDXO45uzCGEdst6uSlzYR/MEr+5Z
 JQQ32JV64zwvf/aKaagSQSQMYNX9JFgfZ3TKWC1KJQbX5ssoX/5hNLqxMcZV3TN7kU8I3kjK
 mPec9+1nECOjjJSO/h4P0sBZyIUGfguwzhEeGf4sMCuSEM4xjCnwiBwftR17sr0spYcOpqET
 ZGcAmyYcNjy6CYadNCnfR40vhhWuCfNCBzWnUW0lFoo12wb0YnzoOLjvfD6OL3JjIUJNOmJy
 RCsJ5IA/Iz33RhSVRmROu+TztwuThClw63g7+hoyewv7BemKyuU6FTVhjjW+XUWmS/FzknSi
 dAG+insr0746cTPpSkGl3KAXeWDGJzve7/SBBfyznWCMGaf8E2P1oOdIZRxHgWj0zNr1+ooF
 /PzgLPiCI4OMUttTlEKChgbUTQ+5o0P080JojqfXwbPAyumbaYcQNiH1/xYbJdOFSiBv9rpt
 TQTBLzDKXok86M7BTQRS4TZ/ARAAkgqudHsp+hd82UVkvgnlqZjzz2vyrYfz7bkPtXaGb9H4
 Rfo7mQsEQavEBdWWjbga6eMnDqtu+FC+qeTGYebToxEyp2lKDSoAsvt8w82tIlP/EbmRbDVn
 7bhjBlfRcFjVYw8uVDPptT0TV47vpoCVkTwcyb6OltJrvg/QzV9f07DJswuda1JH3/qvYu0p
 vjPnYvCq4NsqY2XSdAJ02HrdYPFtNyPEntu1n1KK+gJrstjtw7KsZ4ygXYrsm/oCBiVW/OgU
 g/XIlGErkrxe4vQvJyVwg6YH653YTX5hLLUEL1NS4TCo47RP+wi6y+TnuAL36UtK/uFyEuPy
 wwrDVcC4cIFhYSfsO0BumEI65yu7a8aHbGfq2lW251UcoU48Z27ZUUZd2Dr6O/n8poQHbaTd
 6bJJSjzGGHZVbRP9UQ3lkmkmc0+XCHmj5WhwNNYjgbbmML7y0fsJT5RgvefAIFfHBg7fTY/i
 kBEimoUsTEQz+N4hbKwo1hULfVxDJStE4sbPhjbsPCrlXf6W9CxSyQ0qmZ2bXsLQYRj2xqd1
 bpA+1o1j2N4/au1R/uSiUFjewJdT/LX1EklKDcQwpk06Af/N7VZtSfEJeRV04unbsKVXWZAk
 uAJyDDKN99ziC0Wz5kcPyVD1HNf8bgaqGDzrv3TfYjwqayRFcMf7xJaL9xXedMcAEQEAAcLB
 XwQYAQgACQUCUuE2fwIbDAAKCRBlw/kGpdefoG4XEACD1Qf/er8EA7g23HMxYWd3FXHThrVQ
 HgiGdk5Yh632vjOm9L4sd/GCEACVQKjsu98e8o3ysitFlznEns5EAAXEbITrgKWXDDUWGYxd
 pnjj2u+GkVdsOAGk0kxczX6s+VRBhpbBI2PWnOsRJgU2n10PZ3mZD4Xu9kU2IXYmuW+e5KCA
 vTArRUdCrAtIa1k01sPipPPw6dfxx2e5asy21YOytzxuWFfJTGnVxZZSCyLUO83sh6OZhJkk
 b9rxL9wPmpN/t2IPaEKoAc0FTQZS36wAMOXkBh24PQ9gaLJvfPKpNzGD8XWR5HHF0NLIJhgg
 4ZlEXQ2fVp3XrtocHqhu4UZR4koCijgB8sB7Tb0GCpwK+C4UePdFLfhKyRdSXuvY3AHJd4CP
 4JzW0Bzq/WXY3XMOzUTYApGQpnUpdOmuQSfpV9MQO+/jo7r6yPbxT7CwRS5dcQPzUiuHLK9i
 nvjREdh84qycnx0/6dDroYhp0DFv4udxuAvt1h4wGwTPRQZerSm4xaYegEFusyhbZrI0U9tJ
 B8WrhBLXDiYlyJT6zOV2yZFuW47VrLsjYnHwn27hmxTC/7tvG3euCklmkn9Sl9IAKFu29RSo
 d5bD8kMSCYsTqtTfT6W4A3qHGvIDta3ptLYpIAOD2sY3GYq2nf3Bbzx81wZK14JdDDHUX2Rs
 6+ahAA==
In-Reply-To: <edbe94f5ba1db05beb36fef6589b6a79a30c4a7c.1695942864.git.sanastasio@raptorengineering.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

On 29/09/2023 12:19 am, Shawn Anastasio wrote:
> Implement a basic exception handler that dumps the CPU state to the
> console, as well as the code required to set the correct exception
> vector table's base address in setup.c.
>
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> ---
>  xen/arch/ppc/include/asm/processor.h |  31 +++++++
>  xen/arch/ppc/ppc64/Makefile          |   2 +
>  xen/arch/ppc/ppc64/asm-offsets.c     |   1 +
>  xen/arch/ppc/ppc64/exceptions-asm.S  | 122 +++++++++++++++++++++++++++
>  xen/arch/ppc/ppc64/exceptions.c      | 102 ++++++++++++++++++++++
>  xen/arch/ppc/setup.c                 |  11 +++
>  6 files changed, 269 insertions(+)
>  create mode 100644 xen/arch/ppc/ppc64/exceptions-asm.S
>  create mode 100644 xen/arch/ppc/ppc64/exceptions.c
>
> diff --git a/xen/arch/ppc/include/asm/processor.h b/xen/arch/ppc/include/asm/processor.h
> index d3dd943c20..a01b62b8a4 100644
> --- a/xen/arch/ppc/include/asm/processor.h
> +++ b/xen/arch/ppc/include/asm/processor.h
> @@ -103,6 +103,37 @@
>  #define PVR_BE        0x0070
>  #define PVR_PA6T      0x0090
>  
> +/* Exception Definitions */
> +#define EXC_SYSTEM_RESET    0x0100 /* System Reset Interrupt */
> +#define EXC_MACHINE_CHECK   0x0200 /* Machine Check Interrupt */
> +#define EXC_DATA_STORAGE    0x0300 /* Data Storage Interrupt */
> +#define EXC_DATA_SEGMENT    0x0380 /* Data Segment Interrupt */
> +#define EXC_INSN_STORAGE    0x0400 /* Instruction Storage Interrupt */
> +#define EXC_INSN_SEGMENT    0x0480 /* Instruction Segment Interrupt */
> +#define EXC_EXTERNAL        0x0500 /* External Interrupt */
> +#define EXC_ALIGNMENT       0x0600 /* Alignment Interrupt */
> +#define EXC_PROGRAM         0x0700 /* Program Interrupt */
> +#define EXC_FPU_UNAVAIL     0x0800 /* Floating-Point Unavailable Interrupt */
> +#define EXC_DECREMENTER     0x0900 /* Decrementer Interrupt */
> +#define EXC_H_DECREMENTER   0x0980 /* Hypervisor Decrementer Interrupt */
> +#define EXC_PRIV_DOORBELL   0x0A00 /* Directed Privileged Doorbell Interrupt */
> +#define EXC_SYSTEM_CALL     0x0C00 /* System Call Interrupt */
> +#define EXC_TRACE           0x0D00 /* Trace Interrupt */
> +#define EXC_H_DATA_STORAGE  0x0E00 /* Hypervisor Data Storage Interrupt */
> +#define EXC_H_INSN_STORAGE  0x0E20 /* Hypervisor Instruction Storage Interrupt */
> +#define EXC_H_EMUL_ASST     0x0E40 /* Hypervisor Emulation Assistance Interrupt */
> +#define EXC_H_MAINTENANCE   0x0E60 /* Hypervisor Maintenance Interrupt */
> +#define EXC_H_DOORBELL      0x0E80 /* Directed Hypervisor Doorbell Interrupt */
> +#define EXC_H_VIRT          0x0EA0 /* Hypervisor Virtualization Interrupt */
> +#define EXC_PERF_MON        0x0F00 /* Performance Monitor Interrupt */
> +#define EXC_VECTOR_UNAVAIL  0x0F20 /* Vector Unavailable Interrupt */
> +#define EXC_VSX_UNAVAIL     0x0F40 /* VSX Unavailable Interrupt */
> +#define EXC_FACIL_UNAVAIL   0x0F60 /* Facility Unavailable Interrupt */
> +#define EXC_H_FACIL_UNAVAIL 0x0F80 /* Hypervisor Facility Unavailable Interrupt */
> +
> +/* Base address of interrupt vector table when LPCR[AIL]=3 */
> +#define AIL_VECTOR_BASE _AC(0xc000000000004000, UL)
> +
>  #ifndef __ASSEMBLY__
>  
>  #include <xen/types.h>
> diff --git a/xen/arch/ppc/ppc64/Makefile b/xen/arch/ppc/ppc64/Makefile
> index 5b88355bb2..914bb21c40 100644
> --- a/xen/arch/ppc/ppc64/Makefile
> +++ b/xen/arch/ppc/ppc64/Makefile
> @@ -1,2 +1,4 @@
> +obj-y += exceptions.o
> +obj-y += exceptions-asm.o
>  obj-y += head.o
>  obj-y += opal-calls.o
> diff --git a/xen/arch/ppc/ppc64/asm-offsets.c b/xen/arch/ppc/ppc64/asm-offsets.c
> index c15c1bf136..634d7260e3 100644
> --- a/xen/arch/ppc/ppc64/asm-offsets.c
> +++ b/xen/arch/ppc/ppc64/asm-offsets.c
> @@ -46,6 +46,7 @@ void __dummy__(void)
>      OFFSET(UREGS_dsisr, struct cpu_user_regs, dsisr);
>      OFFSET(UREGS_cr, struct cpu_user_regs, cr);
>      OFFSET(UREGS_fpscr, struct cpu_user_regs, fpscr);
> +    OFFSET(UREGS_entry_vector, struct cpu_user_regs, entry_vector);
>      DEFINE(UREGS_sizeof, sizeof(struct cpu_user_regs));
>  
>      OFFSET(OPAL_base, struct opal, base);
> diff --git a/xen/arch/ppc/ppc64/exceptions-asm.S b/xen/arch/ppc/ppc64/exceptions-asm.S
> new file mode 100644
> index 0000000000..877df97c9b
> --- /dev/null
> +++ b/xen/arch/ppc/ppc64/exceptions-asm.S
> @@ -0,0 +1,122 @@
> +/* SPDX-License-Identifier: GPL-2.0-or-later */
> +
> +#include <asm/asm-defns.h>
> +#include <asm/processor.h>
> +
> +    /* Helper to dump CPU state to struct cpu_user_regs pointed to by r1. */
> +ENTRY(exception_common)
> +    /* Save GPRs 1-31 */
> +    SAVE_GPRS(1, 31, %r1)
> +
> +    /* Save LR, CTR, CR */
> +    mflr    %r0
> +    std     %r0, UREGS_lr(%r1)
> +    mfctr   %r0
> +    std     %r0, UREGS_ctr(%r1)
> +    mfcr    %r0
> +    stw     %r0, UREGS_cr(%r1) /* 32-bit */
> +
> +    /* Save Exception Registers */
> +    mfsrr0  %r0
> +    std     %r0, UREGS_pc(%r1)
> +    mfsrr1  %r0
> +    std     %r0, UREGS_msr(%r1)
> +    mfdsisr %r0
> +    stw     %r0, UREGS_dsisr(%r1) /* 32-bit */
> +    mfdar   %r0
> +    std     %r0, UREGS_dar(%r1)
> +    li      %r0, -1 /* OS's SRR0/SRR1 have been clobbered */
> +    std     %r0, UREGS_srr0(%r1)
> +    std     %r0, UREGS_srr1(%r1)
> +
> +    /* Setup TOC and a stack frame then call C exception handler */
> +    mr      %r3, %r1
> +    bcl     20, 31, 1f
> +1:  mflr    %r12
> +    addis   %r2, %r12, .TOC.-1b@ha
> +    addi    %r2, %r2, .TOC.-1b@l
> +
> +    li      %r0, 0
> +    stdu    %r0, -STACK_FRAME_OVERHEAD(%r1)
> +    bl      exception_handler
> +
> +    .size exception_common, . - exception_common
> +    .type exception_common, %function
> +
> +    /* Same as exception_common, but for exceptions that set HSRR{0,1} */
> +ENTRY(h_exception_common)
> +    /* Save GPRs 1-31 */
> +    SAVE_GPRS(1, 31, %r1)
> +
> +    /* Save LR, CTR, CR */
> +    mflr    %r0
> +    std     %r0, UREGS_lr(%r1)
> +    mfctr   %r0
> +    std     %r0, UREGS_ctr(%r1)
> +    mfcr    %r0
> +    stw     %r0, UREGS_cr(%r1) /* 32-bit */
> +
> +    /* Save Exception Registers */
> +    mfhsrr0 %r0
> +    std     %r0, UREGS_pc(%r1)
> +    mfhsrr1 %r0
> +    std     %r0, UREGS_msr(%r1)
> +    mfsrr0  %r0
> +    std     %r0, UREGS_srr0(%r1)
> +    mfsrr1  %r0
> +    std     %r0, UREGS_srr1(%r1)
> +    mfdsisr %r0
> +    stw     %r0, UREGS_dsisr(%r1) /* 32-bit */
> +    mfdar   %r0
> +    std     %r0, UREGS_dar(%r1)
> +
> +    /* Setup TOC and a stack frame then call C exception handler */
> +    mr      %r3, %r1
> +    bcl     20, 31, 1f
> +1:  mflr    %r12
> +    addis   %r2, %r12, .TOC.-1b@ha
> +    addi    %r2, %r2, .TOC.-1b@l
> +
> +    li      %r0, 0
> +    stdu    %r0, -STACK_FRAME_OVERHEAD(%r1)
> +    bl      exception_handler
> +
> +    .size h_exception_common, . - h_exception_common
> +    .type h_exception_common, %function

These two are almost identical, and differ only by the handling of
srr{0,1} as far as I can tell.

Is that just because the handler is fatal, or are they likely to stay
this similar longterm?

One thing you could do, which would remove the duplicated logic
constructing cpu_regs would be

exception_common_ssr
    mfsrr0  %r0
    std     %r0, UREGS_srr0(%r1)
    mfsrr1  %r0
    std     %r0, UREGS_srr1(%r1)
    b exception_common

exception_common_clobber_ssr
    li      %r0, -1 /* OS's SRR0/SRR1 have been clobbered */
    std     %r0, UREGS_srr0(%r1)
    std     %r0, UREGS_srr1(%r1)
    b exception_common

but this only works if the internal differences aren't going to get larger.

> +
> +/*
> + * Declare an ISR for the provided exception that jumps to `continue`
> + */
> +#define DEFINE_ISR(name, exc, continue)                                        \
> +    . = (AIL_VECTOR_BASE - EXCEPTION_VECTORS_START) + (exc);                   \
> +    ENTRY(name)                                                                \
> +    /* TODO: switch stack */                                                   \
> +    /* Reserve space for struct cpu_user_regs */                               \
> +    subi    %r1, %r1, UREGS_sizeof;                                            \
> +    /* Save r0 immediately so we can use it as scratch space */                \
> +    SAVE_GPR(0, %r1);                                                          \
> +    /* Save exception vector number */                                         \
> +    li      %r0, (exc);                                                        \
> +    std     %r0, UREGS_entry_vector(%r1);                                      \
> +    /* Branch to common code */                                                \
> +    b       (continue);                                                        \
> +    .size name, . - name;                                                      \
> +    .type name, %function;

This will be much nicer as an ASM macro rather than a preprocessor macro.

.macro ISR name, exc, handler
    ...
.endm

Everything inside can stay the same, but no need for ; or \, and a few
newlines go a long way for readability.


> +
> +    .section .text.exceptions, "ax", %progbits
> +
> +DEFINE_ISR(exc_sysreset, EXC_SYSTEM_RESET, exception_common)
> +DEFINE_ISR(exc_mcheck, EXC_MACHINE_CHECK, exception_common)
> +DEFINE_ISR(exc_dstore, EXC_DATA_STORAGE, exception_common)
> +DEFINE_ISR(exc_dsegment, EXC_DATA_SEGMENT, exception_common)
> +DEFINE_ISR(exc_istore, EXC_INSN_STORAGE, exception_common)
> +DEFINE_ISR(exc_isegment, EXC_INSN_SEGMENT, exception_common)
> +DEFINE_ISR(exc_extern, EXC_EXTERNAL, exception_common)
> +DEFINE_ISR(exc_align, EXC_ALIGNMENT, exception_common)
> +DEFINE_ISR(exc_program, EXC_PROGRAM, exception_common)
> +DEFINE_ISR(exc_fpu, EXC_FPU_UNAVAIL, exception_common)
> +DEFINE_ISR(exc_dec, EXC_DECREMENTER, exception_common)
> +DEFINE_ISR(exc_h_dec, EXC_H_DECREMENTER, h_exception_common)
> +/* EXC_PRIV_DOORBELL ... EXC_TRACE */
> +DEFINE_ISR(exc_h_dstore, EXC_H_DATA_STORAGE, h_exception_common)
> +DEFINE_ISR(exc_h_istore, EXC_H_INSN_STORAGE, h_exception_common)

It also makes this less cluttered, and I'd recommend tabulating it too.

~Andrew


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 10:31:03 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 10:31:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610490.949915 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmAlj-00039B-3m; Fri, 29 Sep 2023 10:30:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610490.949915; Fri, 29 Sep 2023 10:30:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmAlj-000394-1A; Fri, 29 Sep 2023 10:30:47 +0000
Received: by outflank-mailman (input) for mailman id 610490;
 Fri, 29 Sep 2023 10:30:45 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2FIE=FN=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qmAlh-00038y-27
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 10:30:45 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3e1facad-5eb3-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 12:30:43 +0200 (CEST)
Received: from [192.168.1.15] (host-87-11-204-216.retail.telecomitalia.it
 [87.11.204.216])
 by support.bugseng.com (Postfix) with ESMTPSA id 481A64EE0739;
 Fri, 29 Sep 2023 12:30:42 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3e1facad-5eb3-11ee-878c-cb3800f73035
Message-ID: <837cde69-eb15-66ba-1b91-974f8307f295@bugseng.com>
Date: Fri, 29 Sep 2023 12:30:41 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [XEN PATCH 1/4] video/vesa: drop bool_t
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com, Andrew Cooper <andrew.cooper3@citrix.com>,
 George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>,
 Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>,
 Wei Liu <wl@xen.org>, Henry Wang <henry.wang@arm.com>
References: <cover.1695972930.git.federico.serafini@bugseng.com>
 <96027a74236514f38f54051d24a93b6d692644ac.1695972930.git.federico.serafini@bugseng.com>
Content-Language: en-US, it
From: Federico Serafini <federico.serafini@bugseng.com>
Organization: BUGSENG srl
In-Reply-To: <96027a74236514f38f54051d24a93b6d692644ac.1695972930.git.federico.serafini@bugseng.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 29/09/23 10:56, Federico Serafini wrote:
> Drop bool_t to make function declaration and definition consistent and address
> a violation of MISRA C:2012 Rule 8.3.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
> ---
>   xen/drivers/video/vesa.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xen/drivers/video/vesa.c b/xen/drivers/video/vesa.c
> index b007ff5678..70feca21ac 100644
> --- a/xen/drivers/video/vesa.c
> +++ b/xen/drivers/video/vesa.c
> @@ -145,7 +145,7 @@ static void cf_check lfb_flush(void)
>       __asm__ __volatile__ ("sfence" : : : "memory");
>   }
>   
> -void __init vesa_endboot(bool_t keep)
> +void __init vesa_endboot(bool keep)
>   {
>       if ( keep )
>       {

I am seeing that there is an acked patch that solves this,
so this patch should be dropped.

-- 
Federico Serafini, M.Sc.

Software Engineer, BUGSENG (http://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 12:04:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 12:04:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610504.949926 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmCEH-0000m2-7v; Fri, 29 Sep 2023 12:04:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610504.949926; Fri, 29 Sep 2023 12:04:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmCEH-0000lv-4s; Fri, 29 Sep 2023 12:04:21 +0000
Received: by outflank-mailman (input) for mailman id 610504;
 Fri, 29 Sep 2023 12:04:20 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmCEG-0000ll-5M; Fri, 29 Sep 2023 12:04:20 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmCEF-0006Qa-VM; Fri, 29 Sep 2023 12:04:19 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmCEF-0000NH-J5; Fri, 29 Sep 2023 12:04:19 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmCEF-0007FL-Id; Fri, 29 Sep 2023 12:04:19 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=7hP4Eyx6AKnE9gvX0WriO2kYrbxz/c0e2yO/3JFUPro=; b=vcqyDBc9dMkvgYoGvjh31VAQls
	O8d+X/7cMdrrrMpytKeTeLqtOq+ELMvmK1j166mU7X4uV/vrLgcg0yKpwonzrh9OlmZra5ihc4S7o
	yCXoxagdHBAEgJL5m7HX9VAZ1YXCwt8OaniAZ5G+DhkmkUe6orYnawVTK3arygzzdjXI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183213-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183213: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=a8ab67cae01eca7bba8627ce13429c59fda056f3
X-Osstest-Versions-That:
    xen=a363089e68ed677fef12c296253535753fe817e3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 29 Sep 2023 12:04:19 +0000

flight 183213 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183213/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  a8ab67cae01eca7bba8627ce13429c59fda056f3
baseline version:
 xen                  a363089e68ed677fef12c296253535753fe817e3

Last test of basis   183197  2023-09-28 00:02:01 Z    1 days
Testing same since   183213  2023-09-29 09:02:08 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   a363089e68..a8ab67cae0  a8ab67cae01eca7bba8627ce13429c59fda056f3 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 12:14:06 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 12:14:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610512.949935 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmCNd-0003O3-3o; Fri, 29 Sep 2023 12:14:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610512.949935; Fri, 29 Sep 2023 12:14:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmCNd-0003Nw-0w; Fri, 29 Sep 2023 12:14:01 +0000
Received: by outflank-mailman (input) for mailman id 610512;
 Fri, 29 Sep 2023 12:13:59 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DuqE=FN=samsung.com=j.granados@srs-se1.protection.inumbo.net>)
 id 1qmCNb-0003Nq-4w
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 12:13:59 +0000
Received: from mailout2.w1.samsung.com (mailout2.w1.samsung.com
 [210.118.77.12]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a91e65ee-5ec1-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 14:13:56 +0200 (CEST)
Received: from eucas1p2.samsung.com (unknown [182.198.249.207])
 by mailout2.w1.samsung.com (KnoxPortal) with ESMTP id
 20230929121355euoutp029355d2b77491cadd67994111037d28a5~JXZZf4USK0777807778euoutp02o;
 Fri, 29 Sep 2023 12:13:55 +0000 (GMT)
Received: from eusmges1new.samsung.com (unknown [203.254.199.242]) by
 eucas1p2.samsung.com (KnoxPortal) with ESMTP id
 20230929121354eucas1p25742ddebbe1cfa7ed6cca8c8327da2b9~JXZZQ0UAB2204222042eucas1p2F;
 Fri, 29 Sep 2023 12:13:54 +0000 (GMT)
Received: from eucas1p2.samsung.com ( [182.198.249.207]) by
 eusmges1new.samsung.com (EUCPMTA) with SMTP id 96.E4.42423.28FB6156; Fri, 29
 Sep 2023 13:13:54 +0100 (BST)
Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by
 eucas1p2.samsung.com (KnoxPortal) with ESMTPA id
 20230929121353eucas1p222db2685fd99727840771a59abb770ce~JXZYHgAdt1405914059eucas1p2f;
 Fri, 29 Sep 2023 12:13:53 +0000 (GMT)
Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by
 eusmtrp2.samsung.com (KnoxPortal) with ESMTP id
 20230929121353eusmtrp2af1af6bf573e1ce71e31c070f88b0d2f~JXZYGNQIA1483714837eusmtrp2R;
 Fri, 29 Sep 2023 12:13:53 +0000 (GMT)
Received: from eusmtip1.samsung.com ( [203.254.199.221]) by
 eusmgms1.samsung.com (EUCPMTA) with SMTP id CD.21.10549.18FB6156; Fri, 29
 Sep 2023 13:13:53 +0100 (BST)
Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by
 eusmtip1.samsung.com (KnoxPortal) with ESMTPA id
 20230929121353eusmtip13974bd648951759583fb359b46754e5e~JXZXzSlko2058220582eusmtip1C;
 Fri, 29 Sep 2023 12:13:53 +0000 (GMT)
Received: from localhost (106.210.248.178) by CAMSVWEXC02.scsc.local
 (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2;
 Fri, 29 Sep 2023 13:13:52 +0100
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a91e65ee-5ec1-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.w1.samsung.com 20230929121355euoutp029355d2b77491cadd67994111037d28a5~JXZZf4USK0777807778euoutp02o
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com;
	s=mail20170921; t=1695989635;
	bh=8lyq3NbxKETKAT4kssG9Gl7+6++BIm6RujbjJHzxU10=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=M88XxnqjOeCFtmJ1iLUvg3cga7VIuTJv+1GqYmT6uofLJq3jgsotPtjN5QZA7t1oZ
	 fs7iWrQBoROVkp7B5E2c/zp8eMYLVW4UMFGtNGm5/jfkl9qXkXZMN/pTuYUUkxDHfR
	 HIDo2xQNUMaOXM4Qdv/qAl1z11RhR58+4jS2E998=
X-AuditID: cbfec7f2-a51ff7000002a5b7-c6-6516bf82728c
Date: Fri, 29 Sep 2023 14:14:59 +0200
From: Joel Granados <j.granados@samsung.com>
To: Steve Wahl <steve.wahl@hpe.com>
CC: Luis Chamberlain <mcgrof@kernel.org>, <willy@infradead.org>,
	<josh@joshtriplett.org>, Kees Cook <keescook@chromium.org>, Phillip Potter
	<phil@philpotter.co.uk>, Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann
	<arnd@arndb.de>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, "Juergen
 Gross" <jgross@suse.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, Jiri Slaby
	<jirislaby@kernel.org>, "James E.J. Bottomley" <jejb@linux.ibm.com>, "Martin
 K. Petersen" <martin.petersen@oracle.com>, Doug Gilbert
	<dgilbert@interlog.com>, Sudip Mukherjee <sudipm.mukherjee@gmail.com>,
	"Jason Gunthorpe" <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, Corey
	Minyard <minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, "Jason A.
 Donenfeld" <Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, "David S.
 Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, Jakub
	Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, Robin Holt
	<robinmholt@gmail.com>, Russ Weight <russell.h.weight@intel.com>, "Rafael J.
 Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, "K. Y. Srinivasan"
	<kys@microsoft.com>, Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu
	<wei.liu@kernel.org>, Dexuan Cui <decui@microsoft.com>, Jani Nikula
	<jani.nikula@linux.intel.com>, Joonas Lahtinen
	<joonas.lahtinen@linux.intel.com>, Rodrigo Vivi <rodrigo.vivi@intel.com>,
	Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, David Airlie
	<airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
	<linux-kernel@vger.kernel.org>, <xen-devel@lists.xenproject.org>,
	<linux-serial@vger.kernel.org>, <linux-scsi@vger.kernel.org>,
	<linuxppc-dev@lists.ozlabs.org>, <linux-rdma@vger.kernel.org>,
	<openipmi-developer@lists.sourceforge.net>, <netdev@vger.kernel.org>,
	<linux-raid@vger.kernel.org>, <linux-hyperv@vger.kernel.org>,
	<intel-gfx@lists.freedesktop.org>, <dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH 11/15] sgi-xp: Remove the now superfluous sentinel
 element from ctl_table array
Message-ID: <20230929121459.t7dfskyybi6jovjn@localhost>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg="pgp-sha512";
	protocol="application/pgp-signature"; boundary="4w7nhf7oeskaesco"
Content-Disposition: inline
In-Reply-To: <ZRW9Eywl831h/YhW@swahl-home.5wahls.com>
X-Originating-IP: [106.210.248.178]
X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To
	CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348)
X-Brightmail-Tracker: H4sIAAAAAAAAA2VTa1BUZRjuO+dwzoKhh9XkG9QsyJzAQBitdxIaDR0PozQ0jkyXGWSV00rJ
	JZYN0hxBQW4hF2GEVWRBYTc2F1hhlUXBcAMURzRALkLIhqSCiigCEksLB8uZ/j3vc3m/9/nx
	iUhxD+MgCg6N5CNCJXscaRtKXz/R/P7B2sX86vLkVdDYXkjAVGY9A6cb+wiY1meQcKI5joKa
	OB2CmpwzNLSOPqZBa4gn4G69iYFDp0ppuHWOg+PpZwlQtZQiuNPmAIUdegJycxoRnOj0gEd5
	S+FigWWfMgyupYTADf0RK+jXVDKQ9aKIhOyMYRpaDCdoSMg3IBioS6Ugpf08DddOpTIwOWa2
	AlWDmYCO9LsIktMSENQrF8P45KQVXLjTj+B50xCC7GJXyHuWTYJ6KI+EWsUtBopy1SQ0qKZo
	0Gh3QG3WLyRcasqyUOa9EP/TBAOXdV0ETI5bHh6rOEqsX8u1tG7hJl9kIu54zE2Kq/i5k+C6
	i6oQd/G5kuKqFD0Mp9TJOYMhluHOqp25UxfuE9xU0gdc16AXpytJorlxdRrJpRdeQn7Lv7Tx
	DOL3BH/PR7h9HGiz++TgQyJ8zD7aqLxCxKCMRcnIWoTZNVgzncMkIxuRmFUjfNtYSQjDM4TT
	9VNzylOE2y6dYV5GShLuk4KgQjjn1zSrf11NjQmUMFQinKpKn41Q7Aqc+fcjNINpdhVuHuom
	Z/Ai1gkfuds2mybZ0gXYWJNHzwgLWR6bOmY2WYts2Q/xUJWRELAdvpLbP8uTbDQu6iy0YJEF
	L8Eqs2iGtmbX4ou/mynhVCc8XtZEC3g/vlrRNVsOs4dfx+VZGWgmi9mNOD5znuBZiB80VMzV
	XIqnq/Ln/EcRrjUPM8KgQbg4dpQQXOtwXGv/XGIDNo1OWglL5+OOh3bCnfNxpv4YKdC2OPGw
	WHC/izV/DFHpyEnxSjPFK80U/zUT6FVYWT1C/492wcUFg6SAvbBW+5hSIqYE2fNyWYiUl7mH
	8lGuMkmITB4qdd0VFqJDll/XZG4YOY/yHjxxrUOECNWhdyxhU5nmBnKgQsNCecdFtn23xbzY
	Nkjyw14+ImxHhHwPL6tDS0SUo72ti9eVXWJWKonkv+X5cD7ipUqIrB1iCDffnR5Kl5vBsbmb
	JCEfna2TrjBWzQ8yRmnf7vW9GlAm763YF34g4VgXvtcem+Oz2fFG5dPAFP9zLVBa/Z6mt9ok
	O65IUhV8suC7qEPXD+8L8tYmOo33te6PHtbbpZgrt/odvfdF0/q0nq+2F9ce1L1p9VYnXSD1
	Wbd5udZvwQaDNHtjoo+fybj65Gvb+gLs/E3bjGHr893m3Xlj2YC2qmQqvnjQ23nU3dPJI3B8
	59Z+nyVXvZNW+qvVI3KFf7CU+etAu4P50yd1seGRW+w3GwKoxgHjZVtPl+ZlX+foMn7MX3ld
	ah481l3mtl0/cUH8m/dned01IX8mTnec1n0et8b3m4W7y+WOlGy3xN2ZjJBJ/gHETZrc8AQA
	AA==
X-Brightmail-Tracker: H4sIAAAAAAAAA2WTezBcVxzHe+5d9y4zJtulcoa0SZbMtNosK5YfQdK0f9yONG1H2mRobLbc
	ISlWd5eGSac0VFDP0IlFCRVi1TOejSV0PEpDSWSjdBKDjFBq4rFeq8tOp5npf5/z/X2/33Pm
	zDlckr9OWXMvhClZeZg0RECZcfr03eOHY9usWEfdvA30PCwiYCuzi4Yfe54QsN2QQULeQBwH
	NHG1CDTXf6Lg/vICBZUt8QRMdU3QcKW4ioKRRgZy0+sIKB2uQvD4gTUUaRsIyLnegyDvkRPM
	5++D1huGvkIZ9CeHwmBDqglMqutpyFovISE7428KhlvyKEgoaEEw3ZHCgeSHTRT0F6fQsLGq
	N4HSbj0B2vQpBElpCQi6Cq1At7FhAnceTyJY6ZtDkH1TCPlL2SSUzeWT0KYaoaEkp4yE7tIt
	CtSVEmjLqiChvS/LIOmjIf67NRo6a0cJ2NAZNl69fY04LmaG73szG+uZiMmN+Z3D3L71iGDG
	SpoR07pSyGGaVeM0U1gbwbS0xNJMXZk9U3xnhmC2El2Y0VlPprY8kWJ0ZWkkk17Ujj7c7yv0
	kMsilOyBYJlC6SnwE4GTUOQGQidnN6HoiOs5dyexwMHLI5ANuRDJyh28zguDf9V9i8KX916a
	mdymY1CaZRIy5WKeMy5PmCGTkBmXzytBuKEzljYO9uGapQcmRrbAmyNJlNG0iLAuZos2LuoR
	rsnQoh0Xh3cIZ27O7zLFewsPzI2RO2zJs8WpUztNZlySV7UH39I27ZoseCye0CZwdtic54rn
	mn8hjK1XCVww02hiHLyMe3Mmd00kLxJ/M7diCHMNbINL9dwd2ZQnxq1Deo7xqLZYV91HGfkr
	/HxrGqUjC9ULTaoXmlT/NRlle6zVzxD/k9/EN2/Mkkb2xJWVC5xCRJcjSzZCERoUqhAJFdJQ
	RURYkDBAFlqLDA+/oWutrgn98GxR2IEILupAdobkRLV6EFlzwmRhrMDS/MkffJZvHiiNimbl
	Mok8IoRVdCCx4RozSOtXAmSGXxSmlIhcHMUiZxc3R7GbyxHBXvP3wq9K+bwgqZL9nGXDWfm/
	OYJrah1DXPz5GRO1UL+c4Vitno87yifvvREt8beLRy+dS0tM9/b4LOOEpkJz2eO5j04iZGzt
	lvq9X0VfPHWN9Sw9GdN/xrTouLZq/eNUn9ZAq+oo3pka9+2oPh+xH3tos/MuPiU5fF5SHL2n
	4q+v0UeXUg6MfzLl9Kem0V9b8K7nta3O7lZMDX868Pa2CA36qZvOXrTxiuwdsmx7f/9rlwVS
	qaNl8+Lo6bWmu3m+pxtsj6rG6O+PXUHTg/l1X6pcfQtP2r0OfRIdpZtrP+Z+Nr4iIPeew3Lj
	b4r5Do3/qlqTN3Sqt3tVGJejfMe984O2VnG5iejqevIJq4GDmoPBT5Nmhe4zjrYOAo4iWCqy
	J+UK6T/T24AkjQQAAA==
X-CMS-MailID: 20230929121353eucas1p222db2685fd99727840771a59abb770ce
X-Msg-Generator: CA
X-RootMTR: 20230928175234eucas1p2c62c48251c66c0016180977783dd2314
X-EPHeader: CA
CMS-TYPE: 201P
X-CMS-RootMailID: 20230928175234eucas1p2c62c48251c66c0016180977783dd2314
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
	<20230928-jag-sysctl_remove_empty_elem_drive>
	<CGME20230928175234eucas1p2c62c48251c66c0016180977783dd2314@eucas1p2.samsung.com>
	<ZRW9Eywl831h/YhW@swahl-home.5wahls.com>

--4w7nhf7oeskaesco
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 28, 2023 at 12:51:15PM -0500, Steve Wahl wrote:
> On Thu, Sep 28, 2023 at 03:21:36PM +0200, Joel Granados via B4 Relay wrot=
e:
> > From: Joel Granados <j.granados@samsung.com>
> >=20
> > This commit comes at the tail end of a greater effort to remove the
> > empty elements at the end of the ctl_table arrays (sentinels) which
> > will reduce the overall build time size of the kernel and run time
> > memory bloat by ~64 bytes per sentinel (further information Link :
> > https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)
> >=20
> > Remove sentinel from xpc_sys_xpc_hb and xpc_sys_xpc
> >=20
> > Signed-off-by: Joel Granados <j.granados@samsung.com>
> > ---
> >  drivers/misc/sgi-xp/xpc_main.c | 6 ++----
> >  1 file changed, 2 insertions(+), 4 deletions(-)
> >=20
> > diff --git a/drivers/misc/sgi-xp/xpc_main.c b/drivers/misc/sgi-xp/xpc_m=
ain.c
> > index 6da509d692bb..c898092ff3ac 100644
> > --- a/drivers/misc/sgi-xp/xpc_main.c
> > +++ b/drivers/misc/sgi-xp/xpc_main.c
> > @@ -109,8 +109,7 @@ static struct ctl_table xpc_sys_xpc_hb[] =3D {
> >  	 .mode =3D 0644,
> >  	 .proc_handler =3D proc_dointvec_minmax,
> >  	 .extra1 =3D &xpc_hb_check_min_interval,
> > -	 .extra2 =3D &xpc_hb_check_max_interval},
> > -	{}
> > +	 .extra2 =3D &xpc_hb_check_max_interval}
> >  };
> >  static struct ctl_table xpc_sys_xpc[] =3D {
> >  	{
> > @@ -120,8 +119,7 @@ static struct ctl_table xpc_sys_xpc[] =3D {
> >  	 .mode =3D 0644,
> >  	 .proc_handler =3D proc_dointvec_minmax,
> >  	 .extra1 =3D &xpc_disengage_min_timelimit,
> > -	 .extra2 =3D &xpc_disengage_max_timelimit},
> > -	{}
> > +	 .extra2 =3D &xpc_disengage_max_timelimit}
> >  };
> > =20
> >  static struct ctl_table_header *xpc_sysctl;
> >=20
> > --=20
> > 2.30.2
> >=20
>=20
> I assume you'll match the rest of the changes with regards to the
> trailing comma.
If you are refering to Greg's comments. yes. I'll send a V2 with the
trailing comma.

Best

>=20
> Reviewed-by: Steve Wahl <steve.wahl@hpe.com>
>=20
> --=20
> Steve Wahl, Hewlett Packard Enterprise

--=20

Joel Granados

--4w7nhf7oeskaesco
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmUWv8IACgkQupfNUreW
QU9DQwv+Opqxeb0JXEqqCeoSyrjiYyUtb6SlSpGMHgzSUMrdGnvmrA3cDGKGUhGd
TNgpEJ+tN5ZYPPvQD5O1pqTlaBxf4VZytJ8DonLDtW6cyREdb4WLvjb1yMxn6LJh
bgJYc7vgcgaK53S2uIm8MJhT3OR33Ft2sAxtR8fuOW59OONGh3vDB+GwxspJ/zaM
VR21A7Dpj802nQLhSbKzMo2zv2Za22ltVbKjZOhfo/gH3aDaxJ2OnaVXGlR4oLpw
K7oDpV7SlZzWpia4hixX9z0PeNzNheViN4LmyY0jR11VXnCpOBOM4RUkwtDa5N21
GwipoG/V/D2rGuyWtcKTKRbHkBl3klgfwyeeN17PPVqllgyafCeMPIflxb7Dnuxk
24dDkirouJRzNnsF1F7VPr1YGd9MJNFJ+4OB2C/4eOk/b3ql0r9iZXyQUw3A1OH2
hL977fnUzbzPk/dZYy3qVEFJwj+B1agVRH25sPKRqUNQLD7QnFtgu8xPfKrbuQ0N
1jFybOz5
=hyLo
-----END PGP SIGNATURE-----

--4w7nhf7oeskaesco--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 12:14:58 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 12:14:58 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610517.949946 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmCOW-0003t4-DM; Fri, 29 Sep 2023 12:14:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610517.949946; Fri, 29 Sep 2023 12:14:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmCOW-0003sx-9F; Fri, 29 Sep 2023 12:14:56 +0000
Received: by outflank-mailman (input) for mailman id 610517;
 Fri, 29 Sep 2023 12:14:55 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DuqE=FN=samsung.com=j.granados@srs-se1.protection.inumbo.net>)
 id 1qmCOV-0003Nq-1r
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 12:14:55 +0000
Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com
 [210.118.77.11]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id cb3791ba-5ec1-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 14:14:53 +0200 (CEST)
Received: from eucas1p2.samsung.com (unknown [182.198.249.207])
 by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id
 20230929121452euoutp015a6105e043c6903a24b28d4b4b217ba8~JXaOukA_q0847108471euoutp01S;
 Fri, 29 Sep 2023 12:14:52 +0000 (GMT)
Received: from eusmges1new.samsung.com (unknown [203.254.199.242]) by
 eucas1p2.samsung.com (KnoxPortal) with ESMTP id
 20230929121451eucas1p2a7e7e18a5a15c683a238ba4654f8397f~JXaOZzpIM0273802738eucas1p2Q;
 Fri, 29 Sep 2023 12:14:51 +0000 (GMT)
Received: from eucas1p1.samsung.com ( [182.198.249.206]) by
 eusmges1new.samsung.com (EUCPMTA) with SMTP id 0C.15.42423.BBFB6156; Fri, 29
 Sep 2023 13:14:51 +0100 (BST)
Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by
 eucas1p1.samsung.com (KnoxPortal) with ESMTPA id
 20230929121450eucas1p1d1a7bc0ee3fa33c4f52984e2a106c7fe~JXaNbUkgg1521115211eucas1p1O;
 Fri, 29 Sep 2023 12:14:50 +0000 (GMT)
Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by
 eusmtrp2.samsung.com (KnoxPortal) with ESMTP id
 20230929121450eusmtrp25645b9bc156f69c7b11e1d51dfe5f1de~JXaNYJmB41537015370eusmtrp2U;
 Fri, 29 Sep 2023 12:14:50 +0000 (GMT)
Received: from eusmtip1.samsung.com ( [203.254.199.221]) by
 eusmgms1.samsung.com (EUCPMTA) with SMTP id A5.51.10549.ABFB6156; Fri, 29
 Sep 2023 13:14:50 +0100 (BST)
Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by
 eusmtip1.samsung.com (KnoxPortal) with ESMTPA id
 20230929121450eusmtip155061490e2c9660bc8fd18ead32730b8~JXaNDlSRH1908319083eusmtip1A;
 Fri, 29 Sep 2023 12:14:50 +0000 (GMT)
Received: from localhost (106.210.248.178) by CAMSVWEXC02.scsc.local
 (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2;
 Fri, 29 Sep 2023 13:14:50 +0100
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cb3791ba-5ec1-11ee-9b0d-b553b5be7939
DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20230929121452euoutp015a6105e043c6903a24b28d4b4b217ba8~JXaOukA_q0847108471euoutp01S
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com;
	s=mail20170921; t=1695989692;
	bh=Mom1/fyOUmOVuOQ+PmCi85/qSNk2f9N499eF11GQ+Tc=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=KJZLKPUXlfesrJ/y4S5EYpMquQAdhJ6hBirKRoOzEXmnhHade3/Jh/fbusw4kxXEX
	 Yr37D8o0BvK+QI9tM6VdOKrFgIpuFa2xKUBLJ2qiIkEhQP1ANcFQLvvv9PxHknbA4f
	 XQMxTXAZ5Ux3Wu+rMTsVWlSfPDDCZeYzgXh5auVM=
X-AuditID: cbfec7f2-a3bff7000002a5b7-79-6516bfbbe54a
Date: Fri, 29 Sep 2023 14:15:58 +0200
From: Joel Granados <j.granados@samsung.com>
To: Wei Liu <wei.liu@kernel.org>
CC: Luis Chamberlain <mcgrof@kernel.org>, <willy@infradead.org>,
	<josh@joshtriplett.org>, Kees Cook <keescook@chromium.org>, Phillip Potter
	<phil@philpotter.co.uk>, Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann
	<arnd@arndb.de>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Juergen
	Gross <jgross@suse.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, Jiri Slaby
	<jirislaby@kernel.org>, "James E.J. Bottomley" <jejb@linux.ibm.com>, "Martin
 K. Petersen" <martin.petersen@oracle.com>, Doug Gilbert
	<dgilbert@interlog.com>, Sudip Mukherjee <sudipm.mukherjee@gmail.com>, Jason
	Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, Corey Minyard
	<minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, "Jason A. Donenfeld"
	<Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, "David S. Miller"
	<davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, Jakub Kicinski
	<kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, Robin Holt
	<robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, Russ Weight
	<russell.h.weight@intel.com>, "Rafael J. Wysocki" <rafael@kernel.org>, Song
	Liu <song@kernel.org>, "K. Y. Srinivasan" <kys@microsoft.com>, Haiyang Zhang
	<haiyangz@microsoft.com>, Dexuan Cui <decui@microsoft.com>, Jani Nikula
	<jani.nikula@linux.intel.com>, Joonas Lahtinen
	<joonas.lahtinen@linux.intel.com>, Rodrigo Vivi <rodrigo.vivi@intel.com>,
	Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, David Airlie
	<airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
	<linux-kernel@vger.kernel.org>, <xen-devel@lists.xenproject.org>,
	<linux-serial@vger.kernel.org>, <linux-scsi@vger.kernel.org>,
	<linuxppc-dev@lists.ozlabs.org>, <linux-rdma@vger.kernel.org>,
	<openipmi-developer@lists.sourceforge.net>, <netdev@vger.kernel.org>,
	<linux-raid@vger.kernel.org>, <linux-hyperv@vger.kernel.org>,
	<intel-gfx@lists.freedesktop.org>, <dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH 14/15] hyper-v/azure: Remove now superfluous sentinel
 element from ctl_table array
Message-ID: <20230929121558.pvsbbnxlijawaioz@localhost>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg="pgp-sha512";
	protocol="application/pgp-signature"; boundary="3qlh5qneoyp3rgzw"
Content-Disposition: inline
In-Reply-To: <ZRWbGDlXCS4t8tMf@liuwe-devbox-debian-v2>
X-Originating-IP: [106.210.248.178]
X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To
	CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348)
X-Brightmail-Tracker: H4sIAAAAAAAAA2WTe0xTZxjG951z6CkE2LE4+VKMW1DUeIHhEN6Egc655MQ51IXoZma0wxMw
	o61pZSrZMojcUblYBAqEAoMWOi5BKBcVTN24i0yYAnIf6gZMhSEClbLCwc1k//2e5/2e93KS
	IyRF/bRYeEp2hlPIJMHOAhvK0DDXvv16/Rru/as526HpQS4BC8kNNPzYNEzAoiGJhMy7ERTU
	RZQjqEsrFkDXi2cCKKmNJOBRwwgNF/JKBXC/ioWMxGsEaDtLEQz9JobcbgMB6WlNCDJ7dsDT
	rLVwM8fSTyOHtngpdBguW8GovpIG1Xw+CSlJzwXQWZspgOjsWgSPjZcoiH9QLYC2vEs0mF6a
	rUDbaCagO/ERgriEaAQNmjUwazJZwY2hUQQzrRMIUgpcIWs6hQTdRBYJ9er7NOSn60ho1C4I
	QF9yHOpVP5Fwq1VlscyhEHlxjobb5b0EmGYtg19WXCF272Q7uz5lTfPJiM0I+5ViKwp7CLYv
	vwaxN2c0FFuj7qdZTXkIW1sbTrPXdFvYvBt/EuxCrCfbO+7DlhfFCthZXQLJJubeQgffPWrz
	4Uku+NS3nMLN94RNUMdkGHH6lehcb53RKgxFMXHIWogZD5wTk07EIRuhiNEhPDCmpngxjXDs
	RRXNi78RXuzUC15HqsqqSb6gRTi7OJ7695XROIB4UWkRWYvUUoRiXPDFtG5iiQXMNnx3oo9c
	4tXMe9jQH7Y8g2RK3sbPftdZLRUcmCD8yxP1csCO8cKF7ZU0z6twc/roclOSOYcji0os04QW
	dsJas3DJtmY88dhcAsWvuh7PlrWurP09bqnoJXiOs8Xtsc4878U/t9WRPDvgscYKmue1eLEm
	e/nLYOYKwvXm5zQv9AgXhL9Y6eSNI7pGVxIf4ck/8silhTBjj7v/WsXvaY+TDakrth2OiRLx
	rzdi/cAElYjWq9+4TP3GZer/LuPtbVhzfUrwP3srLsgZJ3n2wSUlzygNoouQIxeilAZySncZ
	d9ZVKZEqQ2SBrgFyaTmy/HWt5sapapQ1NulqRIQQGdEGS3ikTN+BxJRMLuOcV9sNPxRxIruT
	kvOhnEJ+XBESzCmNyElIOTvabfVpDhAxgZIz3Dccd5pTvK4SQmtxGOFhe95vy+f+Ow7mB9yK
	feK0OC2MTj1he3o+ele+/Ijbg8371C4bnDzCa+zLmn8oncFjs45DUw45+48NzURt4qLuJeTb
	mePfyiz0vwP7pjdpdku1Pa0Htqq8JL4jmaNVAR9sbup2s844FLQ/o+OeWL25ePJed/ThwWl/
	U8KM7yEJvXEvIXbYU5/llXzAttiUJDXrglrqbg+PBoSsi93pq++aNfiJ1z0fzHk1HN5SOnhY
	VHDj6xrNsYwKlyOhu7wffjH8iaff4LjM8bvjj586vpLb0LbekzP61UURCcW5gV9+ZVD49+9x
	/yxquqxC9VA72Gf4+J078rzUy9LDMQNH3Zsv7B87G+5MKYMk7ltIhVLyD88kKJzwBAAA
X-Brightmail-Tracker: H4sIAAAAAAAAA2WTe1BUVRzHOffu3l0oxutCeCJmRAgkqIUFFn4YoJk6V62pLI2pEDe4gQUs
	7bJoNE6YEG95BAjLo+WxgCCIIM/hNZgLDUwY4IokjhDY8I5RkUdQC1uTM/33ne93vp/f+Z05
	h08KVihz/unQcFYWKgm2oow4vRvdo6+1dJixThenbKHnThEB6+kaHpT0jBHwV0MaCXn90Rxo
	j65F0J5dRcHQkwUKqltiCJjUjPPgQvFVCrSNDOSm1hFQNngVwYPb5lA03EBATnYPgry7zjCf
	bwFthTqeSgp9iSFwq+EiFyYq63mQsaomITPtDwoGW/IoiP2hBcHDrmQOJN5poqCvOJkHa083
	uFDWvUHAcOokgoSUWAQalRksr61xofXBBIKl3lkEmaVCyH+cSUL5bD4JHUotD9Q55SR0l61T
	UFntBx0ZV0jo7M3QWRuREJO0woMbtSMErC3rBj+9/j2xT8wMDh1l1lbTEZMb9QuHuX75LsHc
	Uzcjpm1JxWGalaM8RlWrYFpazvOYunJ7prh1imDW492YkRkvprYinmKWy1NIJrWoE7278yOh
	p0yqCGctg6TycC+rj0XgLBR5gNDZ1UMocnH33eMstnL09gxgg09HsDJH71PCoNKRNk7YquBs
	4swMGYWi6QRkyMe0K26saSITkBFfQKsRLpxLp/SBBb72+DZXr03wn9qELV9ALyJcN8nqC/UI
	F8VOczYDDm2Dk7KHiU1N0a/i/tl75KY2pS1xw2gUb7NA0tXbcHKnnmpCB+Gbvyu3Csa0O778
	cz1PT80l8G/TlZQ+2I5/ypnYmkDSEVgdf01X4Ov0S7hsg79pG9JueHolhaM/qTVerun9Z4Nz
	+NH6Q5SKTJTPkJTPkJT/kfS2PR7emPq/7YBLC2dIvfbC1dULHBXiVSBTViEPCQyRi4RySYhc
	ERoo9JeG1CLdu2/QrNQ1oYLpRWEXIvioC72sa47XVN5C5pxQaShrZWo89quAFRgHSL6KZGVS
	P5kimJV3IbHuGtNI8xf8pbpPFBruJ3JzEotc3TycxB5uLlY7jA+HxUkEdKAknP2CZcNY2b89
	gm9oHkVcOCG5VOXwoV+k8oo22fr5UV6jvP+Qt5fg7aVPD64lxfgUDyzYG/me2t2ubb35urHT
	8dixb2IC1KU2b/04sC1L80mbytc7zoc77mC224flSg6U85tzAzQeBjt7lMQ5x/KqkjnTLyXb
	Zw3eX/r2nYR9dt/ZhDs+ai7Ym34ktfHE4HpJQRyX8owYOTmnOPBBaVegyS7bF29M27l/puye
	8uqY7xtwq+hejmg6c2nH/sTCgSyHxqR586V89cnZ+69YmFj3VDqU3v/8PWqock+1pX+v2eib
	ZzzFZxeOnp89dHCJa2Py3NeHmzW7fCLemFA8MSg6fizWNitzUWtXcsQaH7NzSdk7yPoXYCuO
	PEgisidlcsnfXJsG0YwEAAA=
X-CMS-MailID: 20230929121450eucas1p1d1a7bc0ee3fa33c4f52984e2a106c7fe
X-Msg-Generator: CA
X-RootMTR: 20230928152622eucas1p20ca3dd701247895e232e59fb84e33e1f
X-EPHeader: CA
CMS-TYPE: 201P
X-CMS-RootMailID: 20230928152622eucas1p20ca3dd701247895e232e59fb84e33e1f
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
	<65157da8.050a0220.fb263.fdb1SMTPIN_ADDED_BROKEN@mx.google.com>
	<CGME20230928152622eucas1p20ca3dd701247895e232e59fb84e33e1f@eucas1p2.samsung.com>
	<ZRWbGDlXCS4t8tMf@liuwe-devbox-debian-v2>

--3qlh5qneoyp3rgzw
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 28, 2023 at 03:26:16PM +0000, Wei Liu wrote:
> Please change the prefix to "Drivers: hv:" in the subject line in the
> two patches.
>=20
> On Thu, Sep 28, 2023 at 03:21:39PM +0200, Joel Granados via B4 Relay wrot=
e:
> > From: Joel Granados <j.granados@samsung.com>
> >=20
> > This commit comes at the tail end of a greater effort to remove the
> > empty elements at the end of the ctl_table arrays (sentinels) which
> > will reduce the overall build time size of the kernel and run time
> > memory bloat by ~64 bytes per sentinel (further information Link :
> > https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)
> >=20
> > Remove sentinel from hv_ctl_table
> >=20
> > Signed-off-by: Joel Granados <j.granados@samsung.com>
> > ---
> >  drivers/hv/hv_common.c | 3 +--
> >  1 file changed, 1 insertion(+), 2 deletions(-)
> >=20
> > diff --git a/drivers/hv/hv_common.c b/drivers/hv/hv_common.c
> > index ccad7bca3fd3..bc7d678030aa 100644
> > --- a/drivers/hv/hv_common.c
> > +++ b/drivers/hv/hv_common.c
> > @@ -147,8 +147,7 @@ static struct ctl_table hv_ctl_table[] =3D {
> >  		.proc_handler	=3D proc_dointvec_minmax,
> >  		.extra1		=3D SYSCTL_ZERO,
> >  		.extra2		=3D SYSCTL_ONE
> > -	},
> > -	{}
> > +	}
>=20
> Please keep the comma at the end.
My V2 will have this.

>=20
> >  };
> > =20
> >  static int hv_die_panic_notify_crash(struct notifier_block *self,
> >=20
> > --=20
> > 2.30.2
> >=20

--=20

Joel Granados

--3qlh5qneoyp3rgzw
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmUWv/0ACgkQupfNUreW
QU+whgv+InxnpA/bTntZv2zXmVfPlCF5wQv1v2Pr8xRi1bqKD131BW2w2KHwG/lQ
4nA4DNk4RBgJc9QG5vsJFBnULGy0FyMqYh75isB+3byS1FqVcbm4sDAYLgNTc/E8
JYKQcBsnUIO3H2bwRKLC+PD8PpU1uhT96k+4Y0qXW7YI4CXsixf9194xOXrmMJDN
vUckHh5HbmM5M38c4/I+91DEVZxbT6ucuxpGH9peNO6R0SExi9fH6R22WqC6Vbdq
eGFsS5X2OYcG6wIpqmqTSY+hA4BRP3uXlEqJddoVz7HirrCwoIvkniDOxdLaikiC
Vwb1mr4T/Hw3weIEzXdih8v2/ZCXdOhA0v4Aasme6jd6c+JLQN/3BqwXHCzbTwWL
npF+7w2a2v4P3XjX3nIcTk/Y7IiY5wsnptjwc43D9NX1DG6hw/q2NB3Crkm6M3ek
D48OTTGHZEMLidLgAORqIWlAD/Ta2wxaQHe6L5iU+VWYky7mdXjXUaId/qvNocqV
E1CKZWSN
=tJ3K
-----END PGP SIGNATURE-----

--3qlh5qneoyp3rgzw--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 12:16:29 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 12:16:29 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610521.949955 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmCQ0-0004UA-MT; Fri, 29 Sep 2023 12:16:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610521.949955; Fri, 29 Sep 2023 12:16:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmCQ0-0004U1-Ja; Fri, 29 Sep 2023 12:16:28 +0000
Received: by outflank-mailman (input) for mailman id 610521;
 Fri, 29 Sep 2023 12:16:26 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DuqE=FN=samsung.com=j.granados@srs-se1.protection.inumbo.net>)
 id 1qmCPy-0004Tr-Mj
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 12:16:26 +0000
Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com
 [210.118.77.11]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 022902b2-5ec2-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 14:16:25 +0200 (CEST)
Received: from eucas1p2.samsung.com (unknown [182.198.249.207])
 by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id
 20230929121624euoutp01de2544920d5c5f332d3892fb00ca92f9~JXbkk7tk41063110631euoutp01I;
 Fri, 29 Sep 2023 12:16:24 +0000 (GMT)
Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by
 eucas1p2.samsung.com (KnoxPortal) with ESMTP id
 20230929121624eucas1p27199de26748151267e32dfe79c617fd4~JXbkVdv0N3145131451eucas1p2J;
 Fri, 29 Sep 2023 12:16:24 +0000 (GMT)
Received: from eucas1p2.samsung.com ( [182.198.249.207]) by
 eusmges2new.samsung.com (EUCPMTA) with SMTP id 4A.92.11320.710C6156; Fri, 29
 Sep 2023 13:16:24 +0100 (BST)
Received: from eusmtrp1.samsung.com (unknown [182.198.249.138]) by
 eucas1p2.samsung.com (KnoxPortal) with ESMTPA id
 20230929121623eucas1p2500651283c0dfe212127844c61ed9d23~JXbjxT1iI0248502485eucas1p21;
 Fri, 29 Sep 2023 12:16:23 +0000 (GMT)
Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by
 eusmtrp1.samsung.com (KnoxPortal) with ESMTP id
 20230929121623eusmtrp17c9678af9dbea2f492a4dbec682bf168~JXbjuIMco1450314503eusmtrp1i;
 Fri, 29 Sep 2023 12:16:23 +0000 (GMT)
Received: from eusmtip1.samsung.com ( [203.254.199.221]) by
 eusmgms1.samsung.com (EUCPMTA) with SMTP id FB.91.10549.710C6156; Fri, 29
 Sep 2023 13:16:23 +0100 (BST)
Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by
 eusmtip1.samsung.com (KnoxPortal) with ESMTPA id
 20230929121623eusmtip1d3e2f6bb3accde09091b07bde550487e~JXbjaIUt42058220582eusmtip1w;
 Fri, 29 Sep 2023 12:16:23 +0000 (GMT)
Received: from localhost (106.210.248.178) by CAMSVWEXC02.scsc.local
 (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2;
 Fri, 29 Sep 2023 13:16:22 +0100
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 022902b2-5ec2-11ee-878c-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20230929121624euoutp01de2544920d5c5f332d3892fb00ca92f9~JXbkk7tk41063110631euoutp01I
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com;
	s=mail20170921; t=1695989784;
	bh=PASHHEyP2CkxpN9N4L3kLehKjI5RN7oHEZcm3GbcotM=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=sIIMdzCDWTL3n5QYCAYuS4svR+ViKbFYykTF6Tn1g/RRWywRGRFTKKiMggc1NKSJJ
	 77PfWgBQf7IQt6d8DbZzo4n8PkbCkW+OefxTzWOTd5IxWwvhPiAw08TvwWFpLtAEhI
	 lg48Qa7GwYqF0YQNakAtrRKrc3xfjTuk1x2NpIbQ=
X-AuditID: cbfec7f4-97dff70000022c38-ca-6516c017bb15
Date: Fri, 29 Sep 2023 14:17:30 +0200
From: Joel Granados <j.granados@samsung.com>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
CC: Luis Chamberlain <mcgrof@kernel.org>, <willy@infradead.org>,
	<josh@joshtriplett.org>, Kees Cook <keescook@chromium.org>, Phillip Potter
	<phil@philpotter.co.uk>, Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann
	<arnd@arndb.de>, Juergen Gross <jgross@suse.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Oleksandr Tyshchenko
	<oleksandr_tyshchenko@epam.com>, Jiri Slaby <jirislaby@kernel.org>, "James
 E.J. Bottomley" <jejb@linux.ibm.com>, "Martin K. Petersen"
	<martin.petersen@oracle.com>, Doug Gilbert <dgilbert@interlog.com>, Sudip
	Mukherjee <sudipm.mukherjee@gmail.com>, Jason Gunthorpe <jgg@ziepe.ca>, Leon
	Romanovsky <leon@kernel.org>, Corey Minyard <minyard@acm.org>, Theodore Ts'o
	<tytso@mit.edu>, "Jason A. Donenfeld" <Jason@zx2c4.com>, David Ahern
	<dsahern@kernel.org>, "David S. Miller" <davem@davemloft.net>, Eric Dumazet
	<edumazet@google.com>, Jakub Kicinski <kuba@kernel.org>, Paolo Abeni
	<pabeni@redhat.com>, Robin Holt <robinmholt@gmail.com>, Steve Wahl
	<steve.wahl@hpe.com>, Russ Weight <russell.h.weight@intel.com>, "Rafael J.
 Wysocki" <rafael@kernel.org>, Song Liu <song@kernel.org>, "K. Y. Srinivasan"
	<kys@microsoft.com>, Haiyang Zhang <haiyangz@microsoft.com>, Wei Liu
	<wei.liu@kernel.org>, Dexuan Cui <decui@microsoft.com>, Jani Nikula
	<jani.nikula@linux.intel.com>, Joonas Lahtinen
	<joonas.lahtinen@linux.intel.com>, Rodrigo Vivi <rodrigo.vivi@intel.com>,
	Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, David Airlie
	<airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
	<linux-kernel@vger.kernel.org>, <xen-devel@lists.xenproject.org>,
	<linux-serial@vger.kernel.org>, <linux-scsi@vger.kernel.org>,
	<linuxppc-dev@lists.ozlabs.org>, <linux-rdma@vger.kernel.org>,
	<openipmi-developer@lists.sourceforge.net>, <netdev@vger.kernel.org>,
	<linux-raid@vger.kernel.org>, <linux-hyperv@vger.kernel.org>,
	<intel-gfx@lists.freedesktop.org>, <dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH 01/15] cdrom: Remove now superfluous sentinel element
 from ctl_table array
Message-ID: <20230929121730.bwzhrpaptf45smfy@localhost>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg="pgp-sha512";
	protocol="application/pgp-signature"; boundary="zcz64lhnvlbjtldp"
Content-Disposition: inline
In-Reply-To: <2023092855-cultivate-earthy-4d25@gregkh>
X-Originating-IP: [106.210.248.178]
X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To
	CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348)
X-Brightmail-Tracker: H4sIAAAAAAAAA2WTe1BUZRjG/c45e85CgYdF5eMyo4OlBkIGiu+kFDU4nhnHcqyxGafCTc4A
	AYvDcoumxOQm1+U2wgq6XlgWMaAFV1y5RQ2gSFAQVyFgwFKWEEW5Y7scLGf67/c9z/t83/P+
	8YlJyQBjJw6QhfGhMmmQI21O6Rrn2lxw/QZ+x9lFEpq7LxGwlNnIwJXmYQKe6zJIyG+LpaA2
	VougNvd7GjqfTtJQqo8jYKxxhIHTl8to6LrBwTlFBQFFHWUIhn63g0s9OgLycpsR5Pe6wd8F
	DlBz0XifKgTuJgdDuy5NBKMl1xnIni8kISfjEQ0d+nwaEi7oEdxvSKUgubuKhruXUxlYmFkW
	QVHTMgE9ijEESekJCBpVG2B2YUEE1UOjCJ61GBDkqF2hYDqHBI2hgIQ6ZRcDhXkaEpqKlmgo
	KfWBuuxrJNS3ZBul5WiIS5lj4CdtHwELs8aHZyqzCK9dXEfnAW5hPhNx52J+pbjK4l6Cu1d4
	E3E1z1QUd1M5wHAqbTin159iuAqNE3e5+gHBLZ3x4PrGPTnt1TM0N6tJJznFpXp0aONR872+
	fFBABB/65jvHzP311cXEiVbrqPw5DYpBP7NJyEyM2Z14uKZKlITMxRJWg/BYuZo0GRJ2GuEO
	BScYTxCeq+6kXyRia7IowShCOF1hIP+dKlYlEsLhOsJlBecpU4RiX8ffpd8gTEyz23Gb4d7K
	G+tYd5zeqmRMAZI9txbHLjYxJsOaPYafTypEJrZgd+OMwQEksBW+nTe6cinJRuFf/hgystjI
	9rhoWWySzVgPfGWmQCRU3Yxny1tWa3+D71T2rZTDbNKreKBYSQmGN1Y/UJACW+OHTZWMwA64
	JSuFEgJZCNctP2KEQwnC6lNPCWFqD47tHF1NvIfvlCWSpkaYtcQ9E1ZCUUucqTu7KlvgxHiJ
	ML0FlwwaKAXarHxpNeVLqyn/W02Qt2PVrcf0/2RnrL44TgrsiUtLJykVYq4iGz5cHuzHy91k
	fKSrXBosD5f5uR4PCdYi469rWW6arkJFD6dcGxAhRg3oNWN4pLykHdlRshAZ77jOYrhfwkss
	fKVfRfOhIT6h4UG8vAHZiylHGwtnz9vHJayfNIwP5PkTfOgLlxCb2cUQqdx67XG7kW6Pare7
	KfNu8fYVMxW/6Y7+4KIe+eLwRJxjUGvCJnMVe+TqlQsnq2wnvF1992vG91908LpGpS2+odl7
	uP3rrolXbH4MXN/8ef+ha6RVVmRSQ+BWL++tke9PnVYOubWuc1pz0Mxh6v5Bifj8/gOG5H46
	J3/02aYP3T2UXqR7/KflDmaZH3TFDlblFxoiIm39PopS+vSfHIcxF9u8pb5P6tz/itj5di34
	39omKz/y5VDlxj0+uwOmpniJJtfbxzIvty7aumrbYck+94HKP7U1CzmBQbrm5k3SQ85+LlvW
	pNU+Vn8ckFiw4+guq7x9YUvTxU/a3vWdL/Sr7a77rFf07QNHSu4vfcuJDJVL/wHmgstA8AQA
	AA==
X-Brightmail-Tracker: H4sIAAAAAAAAA2WTe0xTZxjG951TTgtbZ8dFTxA3R11cUAsFWl4QcJdkOW7JMjZlC26BBk4o
	DlrWFjcxRqYQLg5ablEKVQQrIAywXGVcak0AhxuwykUEAgxwDCZT7reyQl1msv9+3/M+7/O+
	+fJ9LNx2hXBkRUgUtEwiinQmbBgdprahQ7v0O2m3/hoHaO8rwGAjo5UJ19tHMdisTcchrzOe
	Ac3xOgTNl38k4MHCLAHlDQkYTLSOMeFCYQUBvXUU5KqqMCgyViAY6XGEgv5aDHIutyPIe+gO
	TzRO0HTNnJcvhfsXo6CrNs0KxktrmJC1qsUhO/1vAowNeQQkXm1AMGlIZcDFvnoC7hemMmFt
	yWQFRW0mDPpVEwhSlIkIWvN3wvLamhU0jowjWOyYQZB9gwea+Wwcimc0OLSoe5mgzSnGoa1o
	g4DS8mBoySrDQd+RZZZMsZDwwwoT7uoGMFhbNg9eqs7E3hFQxgcfUWurGYjKjetmUNUlDzFq
	UHsbUU2L+QzqtnqISeXrYqiGhu+ZVFWxC1XYOIVRG8lCamDaj9LdTCao5WIlTqkK9OiTN4J4
	vjJpjILeK5bKFX7OJ/jgzuN7A8/d05vH9/D6ysdd4Ozq7xtGR0acomWu/iE8cV1zYHSH3XeZ
	iWlYHDJwUpA1i+R4kvFNmYwUZMOy5WgRWfisl2EpOJG35nusLGxHrvemEBbTU0TqVJeeH2oQ
	WV/yF7blYnDeIs8r67aZ4BwkO2cG8S2253iQyl/UzK0GnJO7g2xe6N+OteOEkJuzqm1mc7zI
	9OEhZEktwcjRjGzMUniNvJczvr0TzjlFTlWsmk0sM+8mi0ysLdmaIySvL2mer8ollys7CAuf
	Jec2JpEK2alfSFK/kKT+L8kiu5D9pinsf/IB8sa1adzCfmR5+SwjHzFvIns6Rh4VHiXn8+Si
	KHmMJJwXKo3SIfO7r21dqapHV/58yjMgjIUMaJ+5c6yytAs5MiRSCe1szx59ZEvbssNEp2Np
	mTRYFhNJyw1IYL7GdNzRIVRq/kQSRTBf6Cbgewq93QTeQg/nXeyj0UkiW064SEF/TdPRtOzf
	Poxl7RiHYTuaNtvLXtLHV40PU/Hrh+99WpKsHPfz/y3sWE7P/HHfIemzpHf3VT+O6LuTtt7i
	WlIW8NnxSK8cA4vrM5WU+2SifC/RGHqF+8h3/88H2YKgRT3L/oOPz2h2K60SJ86lfvFYrDzZ
	Nlp7waZr9KersYfSZ/1OfzMV5DAZppWURJsUAbXH5kyBxtUD57QB1e69c9zEDmHSq3bdZ9hW
	xCsh72uGZ9biB2zm5h3/qHyZKwo6kifsDNT7Gk86hZz/3Paw10JDknr/hnjqS2nayNmx1/3Z
	70XsieOKj04UfassvNPrsDR45M3Eu906pfyWMSErLzjF+pI6dXpPtM/bfr9Gf5ij+N33hDND
	LhbxXXCZXPQP0Flh2owEAAA=
X-CMS-MailID: 20230929121623eucas1p2500651283c0dfe212127844c61ed9d23
X-Msg-Generator: CA
X-RootMTR: 20230928133705eucas1p182bd81a8e6aff530e43f9b0746a24eaa
X-EPHeader: CA
CMS-TYPE: 201P
X-CMS-RootMailID: 20230928133705eucas1p182bd81a8e6aff530e43f9b0746a24eaa
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
	<20230928-jag-sysctl_remove_empty_elem_drivers-v1-1-e59120fca9f9@samsung.com>
	<CGME20230928133705eucas1p182bd81a8e6aff530e43f9b0746a24eaa@eucas1p1.samsung.com>
	<2023092855-cultivate-earthy-4d25@gregkh>

--zcz64lhnvlbjtldp
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 28, 2023 at 03:36:55PM +0200, Greg Kroah-Hartman wrote:
> On Thu, Sep 28, 2023 at 03:21:26PM +0200, Joel Granados via B4 Relay wrot=
e:
> > From: Joel Granados <j.granados@samsung.com>
> >=20
> > This commit comes at the tail end of a greater effort to remove the
> > empty elements at the end of the ctl_table arrays (sentinels) which
> > will reduce the overall build time size of the kernel and run time
> > memory bloat by ~64 bytes per sentinel (further information Link :
> > https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)
> >=20
> > Remove sentinel element from cdrom_table
> >=20
> > Signed-off-by: Joel Granados <j.granados@samsung.com>
> > ---
> >  drivers/cdrom/cdrom.c | 3 +--
> >  1 file changed, 1 insertion(+), 2 deletions(-)
> >=20
> > diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c
> > index cc2839805983..451907ade389 100644
> > --- a/drivers/cdrom/cdrom.c
> > +++ b/drivers/cdrom/cdrom.c
> > @@ -3654,8 +3654,7 @@ static struct ctl_table cdrom_table[] =3D {
> >  		.maxlen		=3D sizeof(int),
> >  		.mode		=3D 0644,
> >  		.proc_handler	=3D cdrom_sysctl_handler
> > -	},
> > -	{ }
> > +	}
>=20
> You should have the final entry as "}," so as to make any future
> additions to the list to only contain that entry, that's long been the
> kernel style for lists like this.
Will send a V2 with this included. Thx.

>=20
> So your patches will just remove one line, not 2 and add 1, making it a
> smaller diff.
indeed.

>=20
> thanks,
>=20
> greg k-h

--=20

Joel Granados

--zcz64lhnvlbjtldp
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmUWwFoACgkQupfNUreW
QU/Eqwv/RH28JknZG1s6JWiUUmWVbCiC6ZMEv1fxYdNyfq+X2wpGNHySWx2kmx+B
/mF0BfTu/5o5adc5Pb8fw8w5N1n/9zGlG1MuGg6WiiKT5Bfrj3Y96+u3ngMrNkHN
+LlqjMxZNw2Snrq6J0PiecEOD/jhSP2dWmf7nuvkqQOrSjMEaGKWr58aguiB6Cw3
ZCeicpyWHltbn8QGkeX8OSjfRnQplKwd8FxbE97gIbAwRCv0gisjaHJ13JVnghcG
0Zu3q+D6iJRz4ZCftC7ZOwSqqzpIywrKiKO3+4IB9Bi33+BOBJcntewv4mJiqR6x
sCJmMrtEQ7O/4lp5pBQrpnGfH/LieKfQ6T86LoiQJrVCIuNp6AgJxKSFOduHnjLV
/DlSB4ChJAQmyQMjk/Gu4cOPAnCZjbGv6bRFTQR3vuBJ+fhpcPdwW/ASDRFkP5VQ
LPsDEF9Xkvs9ywDFfc5NNMHqqAfHe27BAWILap3GaoB4pIQG04m1Snw7ttTrWnUI
X93esemi
=klCv
-----END PGP SIGNATURE-----

--zcz64lhnvlbjtldp--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 12:56:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 12:56:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610532.949965 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmD2A-0006JU-Na; Fri, 29 Sep 2023 12:55:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610532.949965; Fri, 29 Sep 2023 12:55:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmD2A-0006JN-Ky; Fri, 29 Sep 2023 12:55:54 +0000
Received: by outflank-mailman (input) for mailman id 610532;
 Fri, 29 Sep 2023 12:55:53 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=2FIE=FN=bugseng.com=federico.serafini@srs-se1.protection.inumbo.net>)
 id 1qmD29-0006JH-8o
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 12:55:53 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 84596abf-5ec7-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 14:55:50 +0200 (CEST)
Received: from Dell.homenet.telecomitalia.it
 (host-87-11-204-216.retail.telecomitalia.it [87.11.204.216])
 by support.bugseng.com (Postfix) with ESMTPSA id EE0C14EE0739;
 Fri, 29 Sep 2023 14:55:49 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 84596abf-5ec7-11ee-9b0d-b553b5be7939
From: Federico Serafini <federico.serafini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Federico Serafini <federico.serafini@bugseng.com>,
	Jan Beulich <jbeulich@suse.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	=?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= <roger.pau@citrix.com>,
	Wei Liu <wl@xen.org>,
	Henry Wang <henry.wang@arm.com>
Subject: [XEN PATCH] x86/msi: address violations of MISRA C:2012 Rules 8.2 and 8.3
Date: Fri, 29 Sep 2023 14:55:42 +0200
Message-Id: <d8023a832f77dc872a92e71c4df2da39ddbe06b0.1695978595.git.federico.serafini@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Add missing parameter names and make function declarations and
definitions consistent.
No functional change.

Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>
---
 xen/arch/x86/include/asm/msi.h | 22 +++++++++++-----------
 xen/arch/x86/msi.c             |  2 +-
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/xen/arch/x86/include/asm/msi.h b/xen/arch/x86/include/asm/msi.h
index a53ade95c9..63582fdea4 100644
--- a/xen/arch/x86/include/asm/msi.h
+++ b/xen/arch/x86/include/asm/msi.h
@@ -82,12 +82,12 @@ struct hw_interrupt_type;
 struct msi_desc;
 /* Helper functions */
 extern int pci_enable_msi(struct msi_info *msi, struct msi_desc **desc);
-extern void pci_disable_msi(struct msi_desc *desc);
+extern void pci_disable_msi(struct msi_desc *msi_desc);
 extern int pci_prepare_msix(u16 seg, u8 bus, u8 devfn, bool off);
 extern void pci_cleanup_msi(struct pci_dev *pdev);
-extern int setup_msi_irq(struct irq_desc *, struct msi_desc *);
-extern int __setup_msi_irq(struct irq_desc *, struct msi_desc *,
-                           const struct hw_interrupt_type *);
+extern int setup_msi_irq(struct irq_desc *desc, struct msi_desc *msidesc);
+extern int __setup_msi_irq(struct irq_desc *desc, struct msi_desc *msidesc,
+                           hw_irq_controller *handler);
 extern void teardown_msi_irq(int irq);
 extern int msi_free_vector(struct msi_desc *entry);
 extern int pci_restore_msi_state(struct pci_dev *pdev);
@@ -133,7 +133,7 @@ struct msi_desc {
 #define MSI_TYPE_HPET    1
 #define MSI_TYPE_IOMMU   2
 
-int msi_maskable_irq(const struct msi_desc *);
+int msi_maskable_irq(const struct msi_desc *entry);
 int msi_free_irq(struct msi_desc *entry);
 
 /*
@@ -220,13 +220,13 @@ struct arch_msix {
 };
 
 void early_msi_init(void);
-void msi_compose_msg(unsigned vector, const cpumask_t *mask,
+void msi_compose_msg(unsigned vector, const cpumask_t *cpu_mask,
                      struct msi_msg *msg);
 void __msi_set_enable(u16 seg, u8 bus, u8 slot, u8 func, int pos, int enable);
-void cf_check mask_msi_irq(struct irq_desc *);
-void cf_check unmask_msi_irq(struct irq_desc *);
-void guest_mask_msi_irq(struct irq_desc *, bool mask);
-void cf_check ack_nonmaskable_msi_irq(struct irq_desc *);
-void cf_check set_msi_affinity(struct irq_desc *, const cpumask_t *);
+void cf_check mask_msi_irq(struct irq_desc *desc);
+void cf_check unmask_msi_irq(struct irq_desc *desc);
+void guest_mask_msi_irq(struct irq_desc *desc, bool mask);
+void cf_check ack_nonmaskable_msi_irq(struct irq_desc *desc);
+void cf_check set_msi_affinity(struct irq_desc *desc, const cpumask_t *mask);
 
 #endif /* __ASM_MSI_H */
diff --git a/xen/arch/x86/msi.c b/xen/arch/x86/msi.c
index a78367d7cf..7f8e794254 100644
--- a/xen/arch/x86/msi.c
+++ b/xen/arch/x86/msi.c
@@ -37,7 +37,7 @@
 static s8 __read_mostly use_msi = -1;
 boolean_param("msi", use_msi);
 
-static void __pci_disable_msix(struct msi_desc *);
+static void __pci_disable_msix(struct msi_desc *entry);
 
 /* bitmap indicate which fixed map is free */
 static DEFINE_SPINLOCK(msix_fixmap_lock);
-- 
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 13:44:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 13:44:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610537.949975 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmDnB-0000t2-Bh; Fri, 29 Sep 2023 13:44:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610537.949975; Fri, 29 Sep 2023 13:44:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmDnB-0000sv-92; Fri, 29 Sep 2023 13:44:29 +0000
Received: by outflank-mailman (input) for mailman id 610537;
 Fri, 29 Sep 2023 13:44:27 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmDn9-0000sl-Dg; Fri, 29 Sep 2023 13:44:27 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmDn9-0000pG-6P; Fri, 29 Sep 2023 13:44:27 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmDn8-0002oY-P6; Fri, 29 Sep 2023 13:44:26 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmDn8-0001Vs-Og; Fri, 29 Sep 2023 13:44:26 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=Vu25EeLXujqEfdilIK7GkRfcfuv7jBN9kfsFOEI1ZYk=; b=lgZb29jN8vTcIRfMF3iOD+PzKP
	O+ymolaK8sF/pFUzwljx7mrIxXUHfHPTtBwF184VEzcGKg8pZlmOqVsVWdaqOa7jMaFsWMQnXPkzF
	lI/zAN+7LdhlVR0cyks8gbOL7wY0mgm/N0CwYUPXBKahRjA3/rZK6lg2X55Muv2YWy04=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183208-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183208: tolerable FAIL
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-xl:xen-install:fail:heisenbug
    xen-unstable:test-arm64-arm64-xl-credit2:xen-boot:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:xen-boot:fail:heisenbug
    xen-unstable:test-amd64-i386-qemuu-rhel6hvm-intel:guest-start/redhat.repeat:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-raw:xen-install:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:windows-install:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=a363089e68ed677fef12c296253535753fe817e3
X-Osstest-Versions-That:
    xen=a363089e68ed677fef12c296253535753fe817e3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 29 Sep 2023 13:44:26 +0000

flight 183208 xen-unstable real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183208/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl            7 xen-install      fail in 183202 pass in 183208
 test-arm64-arm64-xl-credit2   8 xen-boot         fail in 183202 pass in 183208
 test-armhf-armhf-xl-vhd       8 xen-boot         fail in 183202 pass in 183208
 test-amd64-i386-qemuu-rhel6hvm-intel 14 guest-start/redhat.repeat fail in 183202 pass in 183208
 test-amd64-i386-libvirt-raw   7 xen-install                fail pass in 183202
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183202

Tests which did not succeed, but are not blocking:
 test-amd64-i386-libvirt-raw 14 migrate-support-check fail in 183202 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183202
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183202
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183202
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183202
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183202
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183202
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183202
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183202
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183202
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183202
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183202
 test-amd64-amd64-xl-qemuu-win7-amd64 12 windows-install       fail like 183202
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  a363089e68ed677fef12c296253535753fe817e3
baseline version:
 xen                  a363089e68ed677fef12c296253535753fe817e3

Last test of basis   183208  2023-09-29 01:55:17 Z    0 days
Testing same since                          (not found)         0 attempts

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  fail    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Published tested tree is already up to date.



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 14:02:54 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 14:02:54 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610543.949986 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmE4t-00055k-SU; Fri, 29 Sep 2023 14:02:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610543.949986; Fri, 29 Sep 2023 14:02:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmE4t-00055d-PJ; Fri, 29 Sep 2023 14:02:47 +0000
Received: by outflank-mailman (input) for mailman id 610543;
 Fri, 29 Sep 2023 14:02:46 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DuqE=FN=samsung.com=j.granados@srs-se1.protection.inumbo.net>)
 id 1qmE4s-00055X-7O
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 14:02:46 +0000
Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com
 [210.118.77.11]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id da4e1083-5ed0-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 16:02:42 +0200 (CEST)
Received: from eucas1p1.samsung.com (unknown [182.198.249.206])
 by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id
 20230929140240euoutp01afe66b9e4e0ffa1bcecba49359025df5~JY4WWDxoK3251532515euoutp01d;
 Fri, 29 Sep 2023 14:02:40 +0000 (GMT)
Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by
 eucas1p1.samsung.com (KnoxPortal) with ESMTP id
 20230929140239eucas1p1917c6db31ae8d968a725d3a0824c4271~JY4WG4bVE1493514935eucas1p1Q;
 Fri, 29 Sep 2023 14:02:39 +0000 (GMT)
Received: from eucas1p2.samsung.com ( [182.198.249.207]) by
 eusmges2new.samsung.com (EUCPMTA) with SMTP id B7.4B.11320.FF8D6156; Fri, 29
 Sep 2023 15:02:39 +0100 (BST)
Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by
 eucas1p1.samsung.com (KnoxPortal) with ESMTPA id
 20230929140239eucas1p100707358803bb5652bd2e506e93dfaf3~JY4VkDryJ1519215192eucas1p12;
 Fri, 29 Sep 2023 14:02:39 +0000 (GMT)
Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by
 eusmtrp2.samsung.com (KnoxPortal) with ESMTP id
 20230929140239eusmtrp20681390d79a16dcf189beecae65e74a3~JY4VidnSl1185111851eusmtrp2b;
 Fri, 29 Sep 2023 14:02:39 +0000 (GMT)
Received: from eusmtip2.samsung.com ( [203.254.199.222]) by
 eusmgms1.samsung.com (EUCPMTA) with SMTP id 3B.14.10549.EF8D6156; Fri, 29
 Sep 2023 15:02:39 +0100 (BST)
Received: from CAMSVWEXC02.scsc.local (unknown [106.1.227.72]) by
 eusmtip2.samsung.com (KnoxPortal) with ESMTPA id
 20230929140238eusmtip2c25894434db9fa8e8bfc2867c15761a4~JY4VOmMMj3161831618eusmtip2F;
 Fri, 29 Sep 2023 14:02:38 +0000 (GMT)
Received: from localhost (106.210.248.178) by CAMSVWEXC02.scsc.local
 (2002:6a01:e348::6a01:e348) with Microsoft SMTP Server (TLS) id 15.0.1497.2;
 Fri, 29 Sep 2023 15:02:38 +0100
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: da4e1083-5ed0-11ee-878c-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20230929140240euoutp01afe66b9e4e0ffa1bcecba49359025df5~JY4WWDxoK3251532515euoutp01d
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com;
	s=mail20170921; t=1695996160;
	bh=Btrm8Ac8d2kEpEoRPdLI6EsuqjId3rLOgFjkXf4LLYQ=;
	h=Date:From:To:CC:Subject:In-Reply-To:References:From;
	b=AFYNkKpSlDSLgKTy1BFqKkjzrxsiEUyok/P+wi9niUPxPhYWD9cBsK1yjoUw/noIU
	 XMR9yFl90mqqjH9tb/YgNMjRvuGUqinn8j+EtI2Bt9enmbe4U3pQT008WX8/SYh93R
	 gdC2CWgh1OKveRJVjaffdbYgq7tqctX33NWhJz6Y=
X-AuditID: cbfec7f4-993ff70000022c38-bd-6516d8ffe5ca
Date: Fri, 29 Sep 2023 16:03:47 +0200
From: Joel Granados <j.granados@samsung.com>
To: Wei Liu <wei.liu@kernel.org>
CC: Luis Chamberlain <mcgrof@kernel.org>, <willy@infradead.org>,
	<josh@joshtriplett.org>, Kees Cook <keescook@chromium.org>, Phillip Potter
	<phil@philpotter.co.uk>, Clemens Ladisch <clemens@ladisch.de>, Arnd Bergmann
	<arnd@arndb.de>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Juergen
	Gross <jgross@suse.com>, Stefano Stabellini <sstabellini@kernel.org>,
	Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, Jiri Slaby
	<jirislaby@kernel.org>, "James E.J. Bottomley" <jejb@linux.ibm.com>, "Martin
 K. Petersen" <martin.petersen@oracle.com>, Doug Gilbert
	<dgilbert@interlog.com>, Sudip Mukherjee <sudipm.mukherjee@gmail.com>, Jason
	Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, Corey Minyard
	<minyard@acm.org>, Theodore Ts'o <tytso@mit.edu>, "Jason A. Donenfeld"
	<Jason@zx2c4.com>, David Ahern <dsahern@kernel.org>, "David S. Miller"
	<davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, Jakub Kicinski
	<kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, Robin Holt
	<robinmholt@gmail.com>, Steve Wahl <steve.wahl@hpe.com>, Russ Weight
	<russell.h.weight@intel.com>, "Rafael J. Wysocki" <rafael@kernel.org>, Song
	Liu <song@kernel.org>, "K. Y. Srinivasan" <kys@microsoft.com>, Haiyang Zhang
	<haiyangz@microsoft.com>, Dexuan Cui <decui@microsoft.com>, Jani Nikula
	<jani.nikula@linux.intel.com>, Joonas Lahtinen
	<joonas.lahtinen@linux.intel.com>, Rodrigo Vivi <rodrigo.vivi@intel.com>,
	Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>, David Airlie
	<airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>,
	<linux-kernel@vger.kernel.org>, <xen-devel@lists.xenproject.org>,
	<linux-serial@vger.kernel.org>, <linux-scsi@vger.kernel.org>,
	<linuxppc-dev@lists.ozlabs.org>, <linux-rdma@vger.kernel.org>,
	<openipmi-developer@lists.sourceforge.net>, <netdev@vger.kernel.org>,
	<linux-raid@vger.kernel.org>, <linux-hyperv@vger.kernel.org>,
	<intel-gfx@lists.freedesktop.org>, <dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH 14/15] hyper-v/azure: Remove now superfluous sentinel
 element from ctl_table array
Message-ID: <20230929140347.dzpk5xfdfkxrcln7@localhost>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg="pgp-sha512";
	protocol="application/pgp-signature"; boundary="pe36q5lo2npaavkw"
Content-Disposition: inline
In-Reply-To: <ZRWbGDlXCS4t8tMf@liuwe-devbox-debian-v2>
X-Originating-IP: [106.210.248.178]
X-ClientProxiedBy: CAMSVWEXC01.scsc.local (2002:6a01:e347::6a01:e347) To
	CAMSVWEXC02.scsc.local (2002:6a01:e348::6a01:e348)
X-Brightmail-Tracker: H4sIAAAAAAAAA2VTfUxTVxzNfe/1vcpAn8jgBvwoqEtArcJQf3GwzMXF55Zs+0OXZdE4Im+g
	k9a1osyFpG6IAuNbptQyih20ilSsWNsqQljkY2XaDZDa0c0PmE7q0A3kS9pRH24m+++c8zvn
	3t+5yRWTwX1MuHinbC+vkCXtjqIDKHPr+PUVPmcov8rSHAPtvScJmCppZeC79tsE+MzFJGiu
	Z1FwJcuE4MrxOhq6R4ZoMNoOETDQeoeBr3RnabhxkYMTRecJ0HedRXCrJxxOOs0ElB9vR6C5
	GQd/VsyHxqrp87Ry6MxLA4e5QAT9tRcYODpRTUJZ8SMaumwaGg5X2hD83pJPQV6vhYZOXT4D
	k6NeEejbvAQ4iwYQ5BYeRtCqDYWxyUkRXL7Vj+CJ3YOgrEYKFcNlJBg8FSQ0qW8wUF1uIKFN
	P0VDrXE7NB09Q0Kz/ei05D0Ah74eZ+B7k4uAybHpi0cbSok3VnNd3e9wkxMliDuh+oniGk7d
	JLi+aiviGp9oKc6qdjOc1pTO2WwHGe68IYbTXf6D4KZy1nCuwUTOdDqH5sYMhSRXdLIZvb/o
	o4CEZH73zn28YuXrHwekTvV0MnvyQjJs6kuECk2wuUgsxmw8truoXBQgDmYNCNfd/oUUyDDC
	/d+4kED+RriwZ4TJRbOeJZ4aymdceoRbXEPkv67GQ6OEQC4gPJllof0Ril2Kq358+ixOs8vx
	dU8f6cchrASb3SrGHyBZ4xw8dNcg8g/msan46j014cdB7FpsvVbKCHgu7ijvp/yYZDPwzz4d
	4W9BshFY7xX75VnsGvxgvJASVl2Mx+rttIAz8Q8NrmfLYTY7EDcN6kjhBTZg00OF4JmHH7Q1
	zNScj33Wyhl/KcJN3keMQGoRrjk4Qgiu13BWd/9MYj1+fP/5obOx8+FcYc/ZuMR8bEYOwkey
	gwX3K7j2Vw9VhBarX2imfqGZ+r9mgrwcay/9Rf9PXoZrqgZJASdio3GI0iLmNArj05VpKbwy
	TsbvlyqT0pTpshTpDnmaCU1/Oru3bdiC9A8eS1sQIUYtaMl0+E59rQOFUzK5jI8KCcp2hPLB
	QclJnx/gFfLtivTdvLIFRYipqLCgZYkdO4LZlKS9/Kc8v4dXPJ8S4lnhKiK549K7czJdsU2b
	E6wSWFldsXDJwIL6Hs02Yr7U+mWCalm0s6JwaWCRJPBbzcVoLnZXKKrMXNvR5RqOL35c/dm6
	6PwvHLGbblfGuWtydW7TvdlUnoob3/CWZPmHjQVvFp/IOdf8akaJzyt5e4Hnk9H6/N9y+8Ii
	txgt7ZGS4qp8e99lIuLMqSn39uGSI3clPZHuuDvhg4sGN5bFd/Z2uuVOi2jze/vtAatliaVV
	AdckWze9XBA24jhfWZAa4vDoJyJXZO/6QLa+F8uPiUUJzID0XMzdgc77iqW79oGje0lcYHf+
	pvJS27qr8HCVL3lz/LYtmpe2beg1bb3YdW5hSupiT10UpUxNio0hFcqkfwAu818d7wQAAA==
X-Brightmail-Tracker: H4sIAAAAAAAAA2WTe1BUVRzHPfde7l1osBsgXomE1rCGcGEXWH8oOE5TebEam2oiqYQdvAEF
	u7QLaozNrMMb46XgwALGI1iUWgxkEUQgmpYt3iKIiA0Q4rAyIqmwvJZ225qc6b/P+f7O73N+
	c+YcHu6wQrrwoqXxnFwqieGTdkS3qev3XRujzpzP6VIC9DcrMFg/o6PgO/0kBhvaPBxK+pMJ
	aEuuR9BW+AMJN57Mk6BpScHgrm6KgqTKOhJGmlgozm3AQD1Uh2Bi2AUqRrUYFBXqEZTcEsGD
	Ule4Vm72lcmg53QsDGizbWC6tpGC/JUqHAryHpIw1FJCQtq3LQhmOrMIOH3zCgk9lVkUrC6Z
	bEDdZcJgNPcugsycNAS6Mmcwrq7aQOvENILF7jkEBdUCKH1cgEPNXCkO7aoRCqqKanDoUq+T
	UKsJg/b873Ho6M43R6ZESPlmmYKf68cwWDWaD166fBbb788O3XiLXV05g9hi5SDBXr5wC2PH
	q5oRe22xjGCbVXcotqw+gW1pOUWxDTWebGXrLMauZ4jZsftBbP3FDJI11uTgbG5FB3rXLVQQ
	KJclxHPuUTJFfBD/YyGIBMIAEIj8AgRC392f7hH58733BR7lYqKPcXLvfeGCqLyNQiIuw+lE
	+oMsQomMdCay5TG0H7NWU4RnIjueA12FGKUuj7AWXJkfHw/bWNmRWRvJJK2bFhCjHjUQ1kUj
	Yp70dZGWXQTtwZT3rlEWJmkvpn9uHLewE+3OaO8oKUsDTmueZbI6rFpHOor55Z4Ks7A9vZtp
	7jtLWa3FGPOHoZa0Fp5jfi2a/nsmnD7GXDVqzFaemZ9n1CaeJbalxYxhOeefsXcwxkvdpJW/
	Zh6tz6Bc5Kh6yqR6yqT6z2SNPZlR0yz2v/hVprr8Pm7lIEajmSfKEHUROXEJitjIWIVQoJDE
	KhKkkYIIWWw9Mj98rW654Qo6b1gQdCKMhzrRS+bOqUu1A8iFkMqkHN/JPnXAmXOwPyr5KpGT
	y8LkCTGcohP5m68xD3fZEiEz/yJpfJhQ7OMv9BMH+PgHiH35W+2D49IlDnSkJJ77guPiOPm/
	fRjP1kWJvT7m7zWett+0zS2s1TdaLAmX8ju0IvEKb0kxnHrkfTjhEdBYEGwzFvLC58qXw3m9
	mZSkP5Tu+XDQePwTvZuBVSr+zA5+7zN9xF6N4WD6eRgfF82l73FOSlE/2tRmu7m3tqrVveWV
	mPYU92L7N+I9xlOnUqJ3vsjfu91QeP3tn9w2IrWGukB1yDMHZq+uh8xo8u0mpX1RDxeGFnlf
	em0xnNQfvj7ptJJ2mNt6aOLA2lTSIb9z98q3nTzlGtrkPZ+0Xp24Vqm6/U7yphzhbVHAjn4M
	iO2c3cF+m4Ijv7l6f4CTF9xnRnc5bP7o3LzuzeWCqqadxzOZwdd6shu64voWm0gPgk8ooiRC
	T1yukPwF2ZBtso0EAAA=
X-CMS-MailID: 20230929140239eucas1p100707358803bb5652bd2e506e93dfaf3
X-Msg-Generator: CA
X-RootMTR: 20230928152622eucas1p20ca3dd701247895e232e59fb84e33e1f
X-EPHeader: CA
CMS-TYPE: 201P
X-CMS-RootMailID: 20230928152622eucas1p20ca3dd701247895e232e59fb84e33e1f
References: <20230928-jag-sysctl_remove_empty_elem_drivers-v1-0-e59120fca9f9@samsung.com>
	<65157da8.050a0220.fb263.fdb1SMTPIN_ADDED_BROKEN@mx.google.com>
	<CGME20230928152622eucas1p20ca3dd701247895e232e59fb84e33e1f@eucas1p2.samsung.com>
	<ZRWbGDlXCS4t8tMf@liuwe-devbox-debian-v2>

--pe36q5lo2npaavkw
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Sep 28, 2023 at 03:26:16PM +0000, Wei Liu wrote:
> Please change the prefix to "Drivers: hv:" in the subject line in the
> two patches.
I'll change the commit message for the 14/15 patch from "hyper-v/azure"
to "Drivers: hv:". But I only see one patch that needs this. Which is
the other one?

best
>=20
> On Thu, Sep 28, 2023 at 03:21:39PM +0200, Joel Granados via B4 Relay wrot=
e:
> > From: Joel Granados <j.granados@samsung.com>
> >=20
> > This commit comes at the tail end of a greater effort to remove the
> > empty elements at the end of the ctl_table arrays (sentinels) which
> > will reduce the overall build time size of the kernel and run time
> > memory bloat by ~64 bytes per sentinel (further information Link :
> > https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)
> >=20
> > Remove sentinel from hv_ctl_table
> >=20
> > Signed-off-by: Joel Granados <j.granados@samsung.com>
> > ---
> >  drivers/hv/hv_common.c | 3 +--
> >  1 file changed, 1 insertion(+), 2 deletions(-)
> >=20
> > diff --git a/drivers/hv/hv_common.c b/drivers/hv/hv_common.c
> > index ccad7bca3fd3..bc7d678030aa 100644
> > --- a/drivers/hv/hv_common.c
> > +++ b/drivers/hv/hv_common.c
> > @@ -147,8 +147,7 @@ static struct ctl_table hv_ctl_table[] =3D {
> >  		.proc_handler	=3D proc_dointvec_minmax,
> >  		.extra1		=3D SYSCTL_ZERO,
> >  		.extra2		=3D SYSCTL_ONE
> > -	},
> > -	{}
> > +	}
>=20
> Please keep the comma at the end.
>=20
> >  };
> > =20
> >  static int hv_die_panic_notify_crash(struct notifier_block *self,
> >=20
> > --=20
> > 2.30.2
> >=20

--=20

Joel Granados

--pe36q5lo2npaavkw
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQGzBAABCgAdFiEErkcJVyXmMSXOyyeQupfNUreWQU8FAmUW2UEACgkQupfNUreW
QU+ZyQv9HSXCGinIOipdlVjAjwhhj6RTSXKmVOPKYpS5Rg7aN0U82HzUpe/YGUvE
dEkLD50b0Mo5onU0fxk7PxAo7caRLYwpTki5RqjceH1a3DgPuH0jozn4rbxb10ym
v0B/fxvdHH9rxasac48TToOUPvqcbelPpQ59h7PEj84QwcYkd7pV6Wt7elbOt2fI
w8dfe8vvnNXGLquYe0hqGv7c6TGjOXwY06dTtga5LzmalTp0IMELfKNebRsWhhPQ
gsL9i6erlZUN75ZmgZM+YMnhEcEQwRFxapO1r2nENKMoWHNKglPIZ8BHfkZnXy48
HCo5Kt8JZ1E1XArWKL6N58dcSyWJx2U9aMXC7Ugl8WWKDGuW3W9+v/1uxuxE7Bsi
wfooQe5Df/UjY3wvmdcooleqJ8NFjWgv7/pU0i/WXS2dxzUB9VF27Ghgj9sRNY7V
IUGRM7apb2US7rjwyn1DuDn4A+iO4ZRBH1tZr3RtnIigP9fboAI8E3+sEIhdL0FX
R517c3qf
=7vL7
-----END PGP SIGNATURE-----

--pe36q5lo2npaavkw--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 14:17:26 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 14:17:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610549.949995 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmEIy-0000it-8H; Fri, 29 Sep 2023 14:17:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610549.949995; Fri, 29 Sep 2023 14:17:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmEIy-0000im-4p; Fri, 29 Sep 2023 14:17:20 +0000
Received: by outflank-mailman (input) for mailman id 610549;
 Fri, 29 Sep 2023 14:17:18 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=kdNd=FN=citrix.com=prvs=6299eddeb=roger.pau@srs-se1.protection.inumbo.net>)
 id 1qmEIw-0000ig-3A
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 14:17:18 +0000
Received: from esa3.hc3370-68.iphmx.com (esa3.hc3370-68.iphmx.com
 [216.71.145.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e2df283e-5ed2-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 16:17:16 +0200 (CEST)
Received: from mail-sn1nam02lp2047.outbound.protection.outlook.com (HELO
 NAM02-SN1-obe.outbound.protection.outlook.com) ([104.47.57.47])
 by ob1.hc3370-68.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256;
 29 Sep 2023 10:17:12 -0400
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com (2603:10b6:a03:38d::21)
 by PH7PR03MB6944.namprd03.prod.outlook.com (2603:10b6:510:15c::12)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.21; Fri, 29 Sep
 2023 14:17:09 +0000
Received: from SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3]) by SJ0PR03MB6423.namprd03.prod.outlook.com
 ([fe80::86fe:5402:9485:35c3%5]) with mapi id 15.20.6813.024; Fri, 29 Sep 2023
 14:17:08 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e2df283e-5ed2-11ee-878c-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1695997036;
  h=date:from:to:cc:subject:message-id:references:
   content-transfer-encoding:in-reply-to:mime-version;
  bh=5SWco/b7eZWbDM+2rRN+VTyhvGyiPaAvdv8L84S81t8=;
  b=DsvFMNn86ktfcmra1IcVMNv6mPQo/NNJDAe1vUOfzTstJBrACub5UNJe
   LgG2gxgZxBBgYJqMM/eU8s3B1naNxSA2mazHIzkN0GJLTj+FUNaZg0fL3
   7rMxOGO63V5slkvGv7rLhGsoRylVk9dC1Qa17aANFryCc1qWg8w0eC7Ow
   I=;
X-CSE-ConnectionGUID: l89dakrkRCKcCL7ZStAOFg==
X-CSE-MsgGUID: 0BuyFZpRSDudyKCLJVwbVQ==
X-IronPort-RemoteIP: 104.47.57.47
X-IronPort-MID: 124191488
X-IronPort-Reputation: None
X-IronPort-Listener: OutboundMail
X-IronPort-SenderGroup: RELAY_O365
X-IronPort-MailFlowPolicy: $RELAYED
X-ThreatScanner-Verdict: Negative
IronPort-Data: A9a23:zF62RKpX28rrlax2gdOgMyUXDsteBmLuZBIvgKrLsJaIsI4StFCzt
 garIBmDMqvcYzf3ctt0PIrn9hgGvJbQndQ2GgVuqSpnHilDp5uZCYyVIHmrMnLJJKUvbq7FA
 +Y2MYCccZ9uHhcwgj/3b9ANeFEljfngqoLUUbOCYmYpA1Y8FE/NsDo788YhmIlknNOlNA2Ev
 NL2sqX3NUSsnjV5KQr40YrawP9UlKq04GhwUmAWP6gR5wePzShNVvrzGInqR5fGatgMdgKFb
 76rIIGRpgvx4xorA9W5pbf3GmVirmn6ZFXmZtJ+AsBOszAazsAA+v9T2Mk0MC+7vw6hjdFpo
 OihgLTrIesf0g8gr8xGO/VQO3kW0aSrY9YrK1Dn2SCY5xWun3cBX5yCpaz5VGEV0r8fPI1Ay
 RAXADRdPxyKhPi1+pmYQcJI2fYYMODMEoxK7xmMzRmBZRonabbqZv2QoOR+hXI3jM0IGuvCb
 c0EbzYpdA7HfxBEJlYQDtQ5gfusgX78NTZfrTp5p4JuuzSVkFM3jeerbIW9lt+iHK25mm6Co
 W3L5SLhCwwyP92D0zuVtHmrg4cjmAuiAt5LReTkpq4CbFu7nkYOGTMkTWGAjeS1m22Vf/BhN
 EYqw397xUQ13AnxJjXnZDWkqXuNpTYAWN5dFeIr5QXLwa3Riy6bDGUZSj9KaPQ9qdQ7Azct0
 zehj97vQDBirrCRYXac7auP6yO/PzAPKm0PbjNCShEKi/HhvYUygxTnXttlVqmvgbXdAirsy
 jqHqCw/gbQ7jsMR0ai/u1fdjFqEuZzhXgMzoALNUQqNzg5/fp/jWIWu5nDS9/MGJ4GcJmRtp
 1ABksmaqfsIVJeEkXTXRP1XRO32ofGYLDfbnFhjWYE78Cig8GKieoYW5yxiIEBuMYAPfjqBj
 FLvhD69LaR7ZBOCBZKbqartYyj25cAMzejYa80=
IronPort-HdrOrdr: A9a23:q2/ZZKhveKpY6/RYVG7sXQ1sM3BQX/p23DAbv31ZSRFFG/FwyP
 rAoB1L73PJYWgqNU3IwerwQJVoMkmsjqKdgLNhS4tKMzOW3FdAQLsD0WKm+UyYJ8SczJ8V6U
 4DSdkYNDSYNzET5qyVgTVQUexQpuVvm5rYw9s2uk0dKD2CHJsQjTuRZDzrcXFedU1jP94UBZ
 Cc7s1Iq36JfmkWVN2yAj0oTvXOvNrCkbPheFojCwQ84AeDoDu04PqieiLolSs2Yndq+/MP4G
 LFmwv26uGKtOy68AbV0yv+/olbg9zoz/pEHYiphtIOIjvhpw60bMBKWqGEvhoyvOazgWxa2O
 XkklMFBYBe+nnRdma6rV/GwA/7ygsj7Hfk1BuxnWbjidaRfkN2N+NxwaZiNjfJ4Uspu99xlI
 hR2XiCipZRBRTc2Azg+tnzUQ1wnEbcmwtvrQdTtQ0RbWItUs4RkWUtxjIULH7GJlO41GkTKp
 ghMCgb3ocVTbrVVQGdgoAl+q3XYp16JGb6fqFFgL3e7xFm2EljyU0W3coemWpF2q4cZvB/lq
 D5G5UtrapJSMAOa6J7GaMmeuuYTkLwYT+kChPUHbzAfJt3Y04lb6SHuYkd9aWkfocFw4A1n4
 mEWFREtXQqc0arEsGW2oZXmyq9NVlVcA6duf223aIJyIHUVf7uK2mOWVoum8yvr7EWBdDaQe
 +6PNZTD+X4JWXjFI5V10mmMqMiXkU2QYkQoJI2SliOqsXEJsnjsfHaau/aIP7oHSw/Um3yD3
 MfVHz4JdlG7EqsRnjk6SKhL0/Fawj659Z9AaLa9+8cxMwEMZBNqBEcjRCj6sSCOVR5w9wLlY
 tFUcLae4+A1BeLFDzznhlU0zJmfzlo3Ik=
X-Talos-CUID: =?us-ascii?q?9a23=3AEggbzmqQQkkxm8dHsXUd+23mUcR1I3HUz23TGWS?=
 =?us-ascii?q?bAk1NF4+uVXa31qwxxg=3D=3D?=
X-Talos-MUID: =?us-ascii?q?9a23=3A4meGTw9jCK95/rq6SeofGwGQf59C/rWAOlg3qrk?=
 =?us-ascii?q?bt9inHghSBSiXsg3iFw=3D=3D?=
X-IronPort-AV: E=Sophos;i="6.03,187,1694750400"; 
   d="scan'208";a="124191488"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=k4yQh2hRjwEg/iiyqhxEkjzomBIrJdhhz6CwR3qXzsWmpOR/Yx/i5XyNDT3uA1NqSzrTxLoUADvEW33C2l5XUr2Icu97jjl2UoFwaLQ1NcQN1/XCAGibijoOOfwId8LPi8nZOsx5pQo+YcdzsBzvRPxENtcYa30ZQ3zbHJH9+erE+vCI46D02XvEDKD3iMzCrknh5lq3HlsMQQawzuyhen9dVRBS7ghyNyQGYjh+lLPHpZfQqndRifckFI/reRaEQAMXw+qHTal4GTJzg/aV4T9DiTHQmcFa1j5N4QHXaymdBCVzRU9cNWxE6NaVZiSVY/StrDq/RJ6zhIJ9xxk5kA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=ntp9RtGQDFqshZ2hLlhC/ZTLBjyevaTXr24A+tTXupo=;
 b=KVhgXXAuaXSz8rZvlmkDbTaGacoG8DF+n9cx9VYuhVf0Avsja9EAn6C4NsbZTU8Iw34Gk5bTWILJnNnWJMv4wxQqhCl5FI9X05csju09O52F52SVsTM/+/+KILsMZqSXIyMAmD2nLMoimdowBwjs7V8wyMlRJ1JOP0fPkzjcw2M/oILGc5Oz1u8aRnNC5RC26zj+8WIqALo0L5yIojngaykw0yS/cuPPSqCUCVcmP9wyrIDW6tjd53RnfLkoJ9htXIXpMyUnTEg1zK83Fu2Bqq1hhoi/JgWD7mFwxO5dzHXPOT7ZjRkDcXHVxrb45ahX/4vNag2JekL9PlxTBh9P4w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=ntp9RtGQDFqshZ2hLlhC/ZTLBjyevaTXr24A+tTXupo=;
 b=mrVSkuGiQFHbWHpAU6DLdt2BczyhVFBAFvKnoShwNXJ6H6//IfQCWctGMA9dzua+jVPj6m/RehZpfPp++O3RkUgs0PoDwltefhbti2xfn49/eqQdc35h717ZEr4lACkbES8zIi0JkLqbuyf6YMfXAr/i1EJVJrCw0PEhbOFnjt8=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=citrix.com;
Date: Fri, 29 Sep 2023 16:17:03 +0200
From: Roger Pau =?utf-8?B?TW9ubsOp?= <roger.pau@citrix.com>
To: Tamas K Lengyel <tamas@tklengyel.com>
Cc: Jan Beulich <jbeulich@suse.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Julien Grall <julien@xen.org>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>,
	Henry Wang <Henry.Wang@arm.com>
Subject: Re: [PATCH v4 5/9] x86/mem-sharing: copy GADDR based shared guest
 areas
Message-ID: <ZRbcX2CRIFrqYzSA@MacBookPdeRoger>
References: <3ba59868-101d-b68a-d8b7-767ee94910ec@suse.com>
 <6047c192-0f37-e4ff-5980-fd137b3f1869@suse.com>
 <ZRVMhdyI8s4chr7b@MacBookPdeRoger>
 <d285a456-307a-0a36-0910-cb80f419627d@suse.com>
 <ZRVeiAFlyf1LJ2qR@MacBookPdeRoger>
 <CABfawhmAZGTaKZfmwY4t8599i6qKaTOJ-fngFmtvS4LhJMh7iA@mail.gmail.com>
 <ZRWI1vGscL9ItRMk@MacBookPdeRoger>
 <CABfawhmfFuB14CiPdyaP4HNayms0AG5=4h1FNURu4MDgt2HzAg@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CABfawhmfFuB14CiPdyaP4HNayms0AG5=4h1FNURu4MDgt2HzAg@mail.gmail.com>
X-ClientProxiedBy: LO4P265CA0029.GBRP265.PROD.OUTLOOK.COM
 (2603:10a6:600:2ae::9) To SJ0PR03MB6423.namprd03.prod.outlook.com
 (2603:10b6:a03:38d::21)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ0PR03MB6423:EE_|PH7PR03MB6944:EE_
X-MS-Office365-Filtering-Correlation-Id: 1ef8f832-d27d-4a7b-729b-08dbc0f6c37e
X-LD-Processed: 335836de-42ef-43a2-b145-348c2ee9ca5b,ExtAddr,ExtFwd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	21plthIDUbKEOfoBhrlNhwaltPU0bbiHT/3vLcJ3+/7cxlHHe5CANltcPiBZBvpW7Le4hPgVLG/iwt93n426YhK9eCy9XsA0ImlOteyVnvgPTzr0D15flOirCs9egcOFC3BIP7i+QkwX48LR69lw1WYY4soiT2LBgH+QbrDb2deK1NWM7aO98Vbr8M2FosLwmOepi8ylf/3LL4/RAqgpyg0ebDh1hpzBWqaCrKD3Fa2RLu/S+N8yzMGNS5Wajamkhaf3ORluyCC+ekHWddNgVAHO2W4LJT/GPDDfW03rGpgheEgWV4POrbm5SPYrUlpRGUSCTQbDAi5sqHu9eydKhZtg7yo7XUF4o5lyEUq02qKR16sSBEn8oKdAzRcJCOh2IOgyWFkX2yKaLeu2ndJGTdHCWgvW2+ouVCf2dGtxeXCqPDyA+2qzOUbPd1eUXDQElyKF58ObCTZ6UuLulzI/DZOzZoHcqW3z+awtmhlXasjE6dsPp611c2mozNdq0cIH9VnknDhHipRsy6naLoblnjGlzy7yb3v6HtshBpu93Ndjn+lE8n71BlfoFgNEbTNf
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6423.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(7916004)(396003)(39860400002)(136003)(366004)(376002)(346002)(230922051799003)(186009)(451199024)(64100799003)(1800799009)(85182001)(33716001)(38100700002)(82960400001)(86362001)(66899024)(6666004)(6486002)(8676002)(478600001)(2906002)(4326008)(66946007)(53546011)(6506007)(26005)(66476007)(8936002)(54906003)(66556008)(9686003)(6512007)(83380400001)(6916009)(316002)(41300700001)(5660300002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?NVhzY3huUTU2eGdRNFpyS3ZKaWpVV0NpWDZOME5HQ0JWSnUrU0FvNWNMdzFU?=
 =?utf-8?B?YmNBZUI5Q1lSZW4rZDVVQXdmVzZPb3hyZFBvZFdXTTV2WWtXS0F1WFB6d050?=
 =?utf-8?B?WFZyRkhSWkFZWUxFaTh0eFdLY1hmMlJ6WkNGd0I3Y1krMVhqSWorZjVaSXhn?=
 =?utf-8?B?N1lGaVFEamxEZ3ZvY2VrY3Q5WkdiazlVZk9wZFl5Q0JPc0RWaXBJZWphUU83?=
 =?utf-8?B?bUo3NUFDWHNTZzNvOHFoUVdUUkZsVW8wK3dQZzZCaFc3ZTlXOWlMZ0xKcEdI?=
 =?utf-8?B?b0N2S3NoOFNDMXJ3TGc2U2dtVE01U3MrMDBPNENCTndUSFlWNzMvMjZJNFU4?=
 =?utf-8?B?SVU3OWJQM2xNcnc4REd4Z2h1QWVHdWRNZE1ES1RrSDVHUXl2QUxBWjRBVG1W?=
 =?utf-8?B?MXU0Z0tZM0IwQU5CS1pIZXhNUndNL21tMGJtVXpFbzk5eGx2c0xTV2ppS1Bl?=
 =?utf-8?B?VUlsZkdhaGF0a2JVakFwdEF6akUxcUVtWE0vTDVJZHVyZ29EcmtMQ0lOQ3o0?=
 =?utf-8?B?Vko3V1dSVVQ4QnpPZ1l0NTR3OGRRMytZRnNWTEVKQisyZG1VK1F2Nzh2ZXdJ?=
 =?utf-8?B?VGVnSzErY2s1dVpKYWFHNTI4Z0h2UkY2NlAwQjFXajVMUFc2MGlkekhLem8y?=
 =?utf-8?B?SytRNVIwbmxCS2h1Q3VhbjZER3RUMG56NnlzMDlPUTFxQm90aXorZzRlUUNE?=
 =?utf-8?B?ZWRMRC8vbENyWnYwRTFBN1hKYVMwbHA1TWU2Z0dTTVp5cEFuTzVRR2xqVXZZ?=
 =?utf-8?B?UG9pOE1iUDlibHNNa1czaFM0ZW5jSHJRelViMTQ2Qnkva1M4U2tNckZYTG9X?=
 =?utf-8?B?aDRNczRjc1JJVlRHNzF0UHMrdzY5RENmYUtyRGtUMWNqZFAyRlVkMHZKbllu?=
 =?utf-8?B?ZUdrR0dVdStIZlYxYlZMRitoWUN5ajlxcGcwcUZSaVhITEpqcW5IcTJscit1?=
 =?utf-8?B?bC9USisyK0oyOENXeVo5d2NHZjk3ZFc4S1NaeVZIS1ZhT1RmVGpMV3NPaVJW?=
 =?utf-8?B?LzFucm93THFBNnc2UjVnTExaT3dUSGNFS1pCZUJHbE5rRHQ4UmNmT0lNbzNN?=
 =?utf-8?B?VHl0MjVMVWJpQlRFaWZTLys4di9ROU5XMjJpMHdtVDBabGk3N3VNL2FhWTlp?=
 =?utf-8?B?dGhZTXpnZ2lNU0twVCs5ZkZEeVU0eFNQZFRYZ3haTm9FMW0rbHZCTnRQUVNk?=
 =?utf-8?B?d0x3UkV6T2RYUnVoVVVCZEF5RUw1MlBDYkJvRWNrM1lVQ01GMDFKRzB1Nkhn?=
 =?utf-8?B?TElTUFdxMStnRHFEekdmVVNTbmQ2SDRqbVB3RU1CNnpMUjRGbkVtaFV1a1cr?=
 =?utf-8?B?TDQ0NE1rMkRCK3RDakMyRGQxanVadEs2WmFzcWZobFVxL3pReDBhUmJsWjls?=
 =?utf-8?B?ZzQxYXNSMFJFMktVMmRkQ1l0M0NudjduZzk1RTdCb1pPVHZ0WEplMmZoelRU?=
 =?utf-8?B?SDI2MXNOd3N5Q3l0NmVyVTJraHAvTy9oQXAyMStJbnZJcnhmbzM2VjJSRHRI?=
 =?utf-8?B?VDNxUHJORFAvRzg4NlN0NDBIMk5uVXhLYzNpOUF0b1orYjI5blJSQm5uSFBQ?=
 =?utf-8?B?WEtEVWs2OXA1aHlNV2tiMnpYN25Qc0VvRytITnVIQUg5SWpvVUxoTlJNeTYw?=
 =?utf-8?B?Z2Qzd3o2c2hVbGgyajVGK216Z2NQeDd2eTJJQUVvOFJyL0RPU3RBL20zNkNZ?=
 =?utf-8?B?bW0xazc4d1Yxem5RNVJsY3dTTkFPaWMrMWJjR2JJdkp6SnVwZllrTUMxc2RT?=
 =?utf-8?B?MzhlaUZXNkNGa20vWG5POGw2NzRCSEo0Qk1vN1orZklnbERBcDVsWEt6UHY3?=
 =?utf-8?B?dDNxZDNnSFp3NlVSQWV3VCswTXBoSWdkaERqWHk2d2Rpa1lSUVNFZ01CMkRF?=
 =?utf-8?B?ckdZUy9ORldsdzJjMFZ6YStsckdHc3YxRU81YVQ1L0t1dlluZlVucUxiUVll?=
 =?utf-8?B?OWF1aHRibGR5WU0vK2VXdmtodTdtU2RMMEZFcnV2dkkzMkh1ZGV0MXVUeHo2?=
 =?utf-8?B?OU5LSE9ET1pZQ1B4SnlWVTM3UFVaUlAyaHpOZTArMUcxUkpJdG1FWVBqRUNI?=
 =?utf-8?B?WlQyVm5PSHJldm9HbGhxeFR4YlBZNTY2bzhHUnlOOTdBRkRKcHFWMnZYelB4?=
 =?utf-8?Q?pTt3+doHx4aUQp+pykSOnBjRo?=
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0:
	N55QeIgt7NzQMg4YHaAsT22cqqkbg5oIfq3PhMs85cXrFSnvrBu7N/MvVdrhkGyGu/35FoNqkxDNMj56JWH1M6hp7KM57TeJ4YkJLcKrWemyU0mE2tJSKwMNNlfo85tX82k59Oq7au4yWT2o5+zD74ppoGHyyGQke1yJWkG7afiAK/l/I8ru7xHeTjwX3mgrjGYYCfc5Fv+w5XMmkhi4p9Q1nkp6FHuet7GD6/YkKIKK+aH7LZIjxEktC2Bco6CxKjS7IoU4KpikmHXl32lqh2ZridYmUZSEcNO8os5DnGlHWg4SgRl0tsZTiLBR080gztfWM31h8jiHFKukgLbUHEmtztF4jy28LYmqSNNdrVG2FbY2yoDf8HJ1hezb9RZuO7FHpsSB7H7NDFARpI2ZHmNLkaK87GjJcXd+QeOFFE/pMhGd/eYWy1kK7vIg3KAgY3bTmZ3EPC8t///AcsDVSQdJW9aDfCCRnM9alHRIK8kZCVkLk2ilD6Y1lczPJ24GC44g+4P7XrHzvzcHLUlJLaGYBem62ZS3BLcNuErxX/qfwvQa/vEmbJgOdv+u8nNi5KlFf+wSMX7+wG51WjPvpvTGeC6u29aRTOyMUiC2E4jeAW8FLCRFaTE00KtH2IAtTtjA6NYeDZr+d+rr16OY8PJ9xzL6wIYmlkzI2LDC96QSqVnHXmbBhplcyqwVvh+NpDRsfnrhWJ8G7leNkPi3h03UmwTXyubJeezuCazuZOjojQZf6FIQyA+rJ84JOC9lsnt4UbL+kv++5qLEo/305V5zXPQ/1I0+DmkdBENAlnVJEcicr8U9wYMrf32uhJ3SSPlRaIZBFDchsBYQycy73GcCznWzCws75q8n4f/JTv3j5cf3bikgJ7tx1UKmKylMwgLUONuRAzfNjrIHrDWSHxZsRQnkfJK295x6rj9IFP0=
X-OriginatorOrg: citrix.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1ef8f832-d27d-4a7b-729b-08dbc0f6c37e
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6423.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 14:17:08.1179
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: crQp95AcFQA0HdrAYALx3XGfrNrd7Kw6ffb4Jon1ypvA7VAUSuprboyOZJlnSAM9TKrCtYg0He6YcV4+ASmT/w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR03MB6944

On Fri, Sep 29, 2023 at 08:31:58AM -0400, Tamas K Lengyel wrote:
> On Thu, Sep 28, 2023 at 10:08 AM Roger Pau Monné <roger.pau@citrix.com> wrote:
> >
> > On Thu, Sep 28, 2023 at 08:57:04AM -0400, Tamas K Lengyel wrote:
> > > On Thu, Sep 28, 2023 at 7:08 AM Roger Pau Monné <roger.pau@citrix.com> wrote:
> > > >
> > > > On Thu, Sep 28, 2023 at 12:11:02PM +0200, Jan Beulich wrote:
> > > > > On 28.09.2023 11:51, Roger Pau Monné wrote:
> > > > > > On Thu, Sep 28, 2023 at 09:16:20AM +0200, Jan Beulich wrote:
> > > > > >> --- a/xen/arch/x86/mm/mem_sharing.c
> > > > > >> +++ b/xen/arch/x86/mm/mem_sharing.c
> > > > > >> @@ -1641,6 +1641,68 @@ static void copy_vcpu_nonreg_state(struc
> > > > > >>      hvm_set_nonreg_state(cd_vcpu, &nrs);
> > > > > >>  }
> > > > > >>
> > > > > >> +static int copy_guest_area(struct guest_area *cd_area,
> > > > > >> +                           const struct guest_area *d_area,
> > > > > >> +                           struct vcpu *cd_vcpu,
> > > > > >> +                           const struct domain *d)
> > > > > >> +{
> > > > > >> +    mfn_t d_mfn, cd_mfn;
> > > > > >> +
> > > > > >> +    if ( !d_area->pg )
> > > > > >> +        return 0;
> > > > > >> +
> > > > > >> +    d_mfn = page_to_mfn(d_area->pg);
> > > > > >> +
> > > > > >> +    /* Allocate & map a page for the area if it hasn't been already. */
> > > > > >> +    if ( !cd_area->pg )
> > > > > >> +    {
> > > > > >> +        gfn_t gfn = mfn_to_gfn(d, d_mfn);
> > > > > >> +        struct p2m_domain *p2m = p2m_get_hostp2m(cd_vcpu->domain);
> > > > > >> +        p2m_type_t p2mt;
> > > > > >> +        p2m_access_t p2ma;
> > > > > >> +        unsigned int offset;
> > > > > >> +        int ret;
> > > > > >> +
> > > > > >> +        cd_mfn = p2m->get_entry(p2m, gfn, &p2mt, &p2ma, 0, NULL, NULL);
> > > > > >> +        if ( mfn_eq(cd_mfn, INVALID_MFN) )
> > > > > >> +        {
> > > > > >> +            struct page_info *pg = alloc_domheap_page(cd_vcpu->domain, 0);
> > > > > >> +
> > > > > >> +            if ( !pg )
> > > > > >> +                return -ENOMEM;
> > > > > >> +
> > > > > >> +            cd_mfn = page_to_mfn(pg);
> > > > > >> +            set_gpfn_from_mfn(mfn_x(cd_mfn), gfn_x(gfn));
> > > > > >> +
> > > > > >> +            ret = p2m->set_entry(p2m, gfn, cd_mfn, PAGE_ORDER_4K, p2m_ram_rw,
> > > > > >> +                                 p2m->default_access, -1);
> > > > > >> +            if ( ret )
> > > > > >> +                return ret;
> > > > > >> +        }
> > > > > >
> > > > > > I'm still unsure why map_guest_area() shouldn't be able to deal with a
> > > > > > forked child needing the page to be mapped.  What happens when a
> > > > > > forked child executes the hypercall to map such areas against not yet
> > > > > > populated gfns?
> > > > > >
> > > > > > Shouldn't map_guest_area() be capable of handling those calls and
> > > > > > populating on demand?
> > > > >
> > > > > Funny you should use this wording: P2M_ALLOC will deal with populating
> > > > > PoD slots, yes, but aiui forks don't fill their p2m with all PoD slots,
> > > > > but rather leave them empty. Yet again I need to leave it to Tamas to
> > > > > confirm or prove me wrong.
> > > >
> > > > If the child p2m populating is only triggered by guest accesses then a
> > > > lot of hypercalls are likely to not work correctly on childs.
> > >
> > > That's not what's happening. As I said before, ALL access paths, be
> > > that from the guest, dom0 or Xen trigger page population. If there is
> > > a hole and P2M_ALLOC is set we do the following in
> > > p2m_get_gfn_type_access:
> > >
> > >     /* Check if we need to fork the page */
> > >     if ( (q & P2M_ALLOC) && p2m_is_hole(*t) &&
> > >          !mem_sharing_fork_page(p2m->domain, gfn, q & P2M_UNSHARE) )
> > >         mfn = p2m->get_entry(p2m, gfn, t, a, q, page_order, NULL);
> > >
> > > Depending on the type of access we either populate the hole with a
> > > shared memory entry or a copy.
> >
> > Then the code here is redundant, as the call to get_page_from_gfn(...,
> > P2M_UNSHARE) in map_vcpu_info() will already take care of populating
> > the child p2m and copy the parents page contents?
> 
> Reading the code now, yes, calling map_vcpu_info() would take care of
> populating the page for us as well so we can remove that code from
> mem_sharing.

Thanks for confirming.  Will try to prepare a patch next week to get
rid of the explicit child p2m populate for the vcpu_info page, and
hopefully simply the code here also as a result.

Roger.


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 14:46:15 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 14:46:15 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610569.950014 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmEki-0008GF-Gy; Fri, 29 Sep 2023 14:46:00 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610569.950014; Fri, 29 Sep 2023 14:46:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmEki-0008G8-EC; Fri, 29 Sep 2023 14:46:00 +0000
Received: by outflank-mailman (input) for mailman id 610569;
 Fri, 29 Sep 2023 14:45:59 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=w1P3=FN=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qmEkg-0008G0-SX
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 14:45:59 +0000
Received: from NAM12-DM6-obe.outbound.protection.outlook.com
 (mail-dm6nam12on2062c.outbound.protection.outlook.com
 [2a01:111:f400:fe59::62c])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e5dcb8b1-5ed6-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 16:45:56 +0200 (CEST)
Received: from BL1PR13CA0079.namprd13.prod.outlook.com (2603:10b6:208:2b8::24)
 by LV3PR12MB9168.namprd12.prod.outlook.com (2603:10b6:408:19a::6)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Fri, 29 Sep
 2023 14:45:53 +0000
Received: from MN1PEPF0000ECD8.namprd02.prod.outlook.com
 (2603:10b6:208:2b8:cafe::67) by BL1PR13CA0079.outlook.office365.com
 (2603:10b6:208:2b8::24) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.17 via Frontend
 Transport; Fri, 29 Sep 2023 14:45:53 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 MN1PEPF0000ECD8.mail.protection.outlook.com (10.167.242.137) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Fri, 29 Sep 2023 14:45:53 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 29 Sep
 2023 09:45:52 -0500
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 29 Sep 2023 09:45:51 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e5dcb8b1-5ed6-11ee-878c-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=cT4G7THiQBvZwlxLVZshf4KbDETvCYf7Qpyz8FHA9fJDv0TwQ3Cyhzh7FBGRyDyn41D20GPipNzWKtnoHY2S/tK9SeD1XouVD7+VXLc41H8+C8eNJZFdUjZCL+uLCofx6sDLb/hOWcEk+bIh983qXSjlLItBOJxh94c3GZ0FcZSzrI06xeNTtTJ7TK2jXAfhEW+N+Lg2BmBPOngUVV3AcQrro1RqZ2O6iG80aPtr1GPu9VbMzoxFqPKlD747aVJwhdz72zJR1LAQ4ZWLO18S3Z4MFnKuyKO2xwqieWSxkRRmZFonY652o+NGcpF7ZOI0y1oDuYTICR+14P8o51gPWA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=D/rACsvD9deej7mRHRLgIYaQ+88uyhwhaY1776gumyo=;
 b=OM+KBYm9jwmauTy4dAuL8S2wmQPO5EBPHLoMstM2DQC5KQpeZ5+EwMNwgQcbqA0UvTdfqml5a+Ru9xM5RtCE+GMp4QaJQNJUzGcMOhyifsYEkqhIr/UsApc7Gie0y9U02hQNHlz8E7Mu2gDwF2TCUuLDpivEPJlvVzxCtHSUS9W+LZHMzRXC5/uzWqaOy0vmQYLOL5aLND7EQDMtb+vyLKivLfWFP/luT3G/UGJcxpktXy2VU46eaUIjvUROo8CLbaCMoNGgqRKVf/NDq7F9QJf1f3u2Q5BGvpCBBb6D3jDNYyQZ//Vzq9pjKJU8eYDP++7JjF8kA+0QUkPjHK9AWg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=D/rACsvD9deej7mRHRLgIYaQ+88uyhwhaY1776gumyo=;
 b=fhsH0Vg15knUNBIot16XexabLTPsagjajfh2/FNjHxpZV40JtFQ4m+NO8mH+7UYpiUqzKp3H3G5t5+j0zd6HJxLLeCfHNpN84vWla3xt4yCf7hFUQ4ilas2evUSQbkn/RGehudeN9Du6F3+sDz5MwyGHix7MfHaPTByigFUQpWw=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <3c54fe2b-0174-d5f1-55e4-30e2ae88d94c@amd.com>
Date: Fri, 29 Sep 2023 10:45:46 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v4 2/7] xen/arm: Move is_protected flag to struct device
To: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>
CC: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Bertrand Marquis <bertrand.marquis@arm.com>,
	Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, Rahul Singh
	<rahul.singh@arm.com>
References: <20230607030220.22698-1-stewart.hildebrand@amd.com>
 <20230607030220.22698-3-stewart.hildebrand@amd.com>
 <78ad0cfd-1046-36b1-ab17-68b5ea29f35c@xen.org>
Content-Language: en-US
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <78ad0cfd-1046-36b1-ab17-68b5ea29f35c@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: MN1PEPF0000ECD8:EE_|LV3PR12MB9168:EE_
X-MS-Office365-Filtering-Correlation-Id: 19a0d79d-f282-4129-2a61-08dbc0fac7ee
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	A/EuMtTYFCy+W+k90PWBqHytivmodVw51ZQ8bIAnNhFJfmNCFDBgMsz5XN/xLlSaDeR+Vk3Q4FWQJLUPeV7jX+VYFSIUagaQuL9q4051JYB91N34b7N8IDfFa9RQ294ArfgKq7HX6ZZW9634rRYirS7aDymXFPbLswb4UL06vnmpftfNXH39AVGOW8TS8E2iAw/k50O93m9Y6D0b0DagfaHJ6MSlJ5dIkZ2RGlG1XNsMIFVTNCiVVzvapkRHhLXaoJmfLFSJqDspWOLx5W9l2lqwqIH7yR7265B0N08W441g/IrsAt2OG88YFBvdlFefITey2Xkkujj6CJeafVBfdtObTCHOi3dw9eUlOZz+ory8Cu7AdRbA0LMM5D337EUITBkjvXmONC1RTm94N38zmSHyyew3YhM+STb/KCCsKFChTUVvFocIJqd0FkwoenCE0acGGHw+4y6D/5mm0AUsbc4S67pXWZ/AJ3iFSHNI/zMGDDDdUwtLVz6Z+N+1DSsvNqjmNFqCbUKhCB9vh/yQc/sJK97NAj9WtjZ6UveyFDr+vgjxQlYHj7mWjuB7WYBCnIoEkjFYfqDWbC3aSYClzo7b8Sh4eRnDy8HdEW33v3rcbtg0mKG6bLIYsypTx7NfZnbVQspbE/4B9mOuXJlTrnLa8kZNG8fvWSc4Tu7I78szt7Bzi/yZ9+TiNo+3tikobi0/3E5sBTCh4LljgzPl0+q1sMtAq5m4H81+noqGehdsEQj5xNllucgGfJQt9iuG66Rbex29FJmzgx/vKZElytE4Ega0rc+IRA6000WY+7o=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(346002)(39860400002)(396003)(136003)(230922051799003)(186009)(451199024)(64100799003)(82310400011)(1800799009)(40470700004)(46966006)(36840700001)(36756003)(31696002)(86362001)(31686004)(70586007)(53546011)(40480700001)(5660300002)(8936002)(26005)(478600001)(54906003)(70206006)(2616005)(110136005)(426003)(2906002)(336012)(8676002)(4326008)(316002)(41300700001)(16576012)(44832011)(47076005)(356005)(6666004)(40460700003)(82740400003)(81166007)(83380400001)(4744005)(36860700001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 14:45:53.1219
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 19a0d79d-f282-4129-2a61-08dbc0fac7ee
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	MN1PEPF0000ECD8.namprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV3PR12MB9168

On 6/29/23 18:22, Julien Grall wrote:
> Hi Stewart,
> 
> On 07/06/2023 04:02, Stewart Hildebrand wrote:
>> From: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
>>
>> This flag will be re-used for PCI devices by the subsequent
>> patches.
> 
> I was expecting that we would only do PCI passthrough on boards where
> all the PCI devices are behind an IOMMU. So it would be a all or nothing
> and therefore is_protected would not be used.

That makes sense.

> Do you have an example where this wouldn't be the case?

No. I'll drop this patch for v5 of the series.


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 15:29:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 15:29:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610602.950040 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmFQL-0001ha-PG; Fri, 29 Sep 2023 15:29:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610602.950040; Fri, 29 Sep 2023 15:29:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmFQL-0001hT-LY; Fri, 29 Sep 2023 15:29:01 +0000
Received: by outflank-mailman (input) for mailman id 610602;
 Fri, 29 Sep 2023 15:29:00 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmFQK-0001hJ-K4; Fri, 29 Sep 2023 15:29:00 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmFQK-0003FL-FR; Fri, 29 Sep 2023 15:29:00 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmFQJ-0006Fe-UW; Fri, 29 Sep 2023 15:29:00 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmFQJ-0004i4-Ty; Fri, 29 Sep 2023 15:28:59 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=N6MWPdVpm3uKO4usnKxZNyvBptHLNnAkqkgx34TiYHs=; b=aMrT0t4opW7N2U52RpOEmH0ii/
	0bOAx07aPT9jxOq/0kQLyCBFSWKKITetAPOAOqOsNPtUlC1RTsnvvtjjlyOhC9LGCwz499+/cIgiY
	Ph1Zyyw0/ovJxksbxAjfIQRHVOsN4tBMhY4uvGbeD3e01T1oaIysQg01FDU3EW+6v0/8=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183214-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183214: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=2797a717121cda0da5eeea3a17203d1c155c5e54
X-Osstest-Versions-That:
    xen=a8ab67cae01eca7bba8627ce13429c59fda056f3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 29 Sep 2023 15:28:59 +0000

flight 183214 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183214/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  2797a717121cda0da5eeea3a17203d1c155c5e54
baseline version:
 xen                  a8ab67cae01eca7bba8627ce13429c59fda056f3

Last test of basis   183213  2023-09-29 09:02:08 Z    0 days
Testing same since   183214  2023-09-29 13:03:41 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  David Kahurani <k.kahurani@gmail.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   a8ab67cae0..2797a71712  2797a717121cda0da5eeea3a17203d1c155c5e54 -> smoke


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 15:36:23 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 15:36:23 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610609.950050 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmFXO-0004X0-Iz; Fri, 29 Sep 2023 15:36:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610609.950050; Fri, 29 Sep 2023 15:36:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmFXO-0004Wt-GV; Fri, 29 Sep 2023 15:36:18 +0000
Received: by outflank-mailman (input) for mailman id 610609;
 Fri, 29 Sep 2023 15:36:17 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=S2/E=FN=bugseng.com=nicola.vetrini@srs-se1.protection.inumbo.net>)
 id 1qmFXN-0004Wj-QE
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 15:36:17 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id edb14750-5edd-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 17:36:16 +0200 (CEST)
Received: from support.bugseng.com (support.bugseng.com [162.55.131.47])
 by support.bugseng.com (Postfix) with ESMTPA id B434B4EE0739;
 Fri, 29 Sep 2023 17:36:15 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: edb14750-5edd-11ee-878c-cb3800f73035
MIME-Version: 1.0
Date: Fri, 29 Sep 2023 17:36:15 +0200
From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com,
 ayan.kumar.halder@amd.com, consulting@bugseng.com, jbeulich@suse.com,
 andrew.cooper3@citrix.com, roger.pau@citrix.com, George Dunlap
 <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
 <wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>, Simone Ballarin
 <simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, Henry
 Wang <Henry.Wang@arm.com>, Luca Fancellu <Luca.Fancellu@arm.com>
Subject: Re: [XEN PATCH v2 0/3] docs/misra: add documentation skeleton to
 address MISRA C:2012 Dir 4.1
In-Reply-To: <cover.1695801813.git.nicola.vetrini@bugseng.com>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com>
User-Agent: Roundcube Webmail/1.4.3
Message-ID: <a8b3af7951ad68e02a25ea9347f9de4d@bugseng.com>
X-Sender: nicola.vetrini@bugseng.com
Organization: BUGSENG s.r.l.
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit

On 27/09/2023 11:52, Nicola Vetrini wrote:
> The headline of Directive 4.1 states: "Run-time failures shall be 
> minimized".
> Thus, it requires the project to supply documentation that pertains the 
> measures
> and techinques used to prevent run-time failures from happening. For 
> ease of
> reading, the documentation is in RST format, but since ECLAIR needs a
> source file
> to check that the needed subsections and their format is the one 
> expected, the
> Makefiles for the docs/ are amended to generate such a file.
> 
> The format and categories of the subsections in the .rst file can be
> customized based on feedback from the community: the one provided is 
> just a
> basic skeleton that should be tailored to the project.
> 
> CC-ing also Henry Wang, as these are just documentation and CI changes
> 
> Nicola Vetrini (3):
>   docs/misra: add documentation skeleton for MISRA C:2012 Dir 4.1
>   docs: make the docs for MISRA C:2012 Dir 4.1 visible to ECLAIR
>   automation/eclair: build docs/misra to address MISRA C:2012 Dir 4.1
> 
>  automation/eclair_analysis/build.sh   |   6 +-
>  automation/eclair_analysis/prepare.sh |   4 +-
>  docs/Makefile                         |   7 +-
>  docs/misra/C-runtime-failures.rst     | 200 ++++++++++++++++++++++++++
>  docs/misra/Makefile                   |  22 +++
>  docs/misra/rules.rst                  |   8 +-
>  6 files changed, 240 insertions(+), 7 deletions(-)
>  create mode 100644 docs/misra/C-runtime-failures.rst
>  create mode 100644 docs/misra/Makefile
> 
> --
> 2.34.1

CC-ing Luca as well:
I'm testing the next version of this series, and I'm seeing a failure on 
cppcheck
containers on this pipeline [1]. I'm not sure about what is causing that 
conversion script
to fail. Any pointer in debugging this would be greatly appreciated.

[1] 
https://gitlab.com/xen-project/people/bugseng/xen/-/pipelines/1020917280

-- 
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 16:08:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 16:08:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610617.950060 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmG2X-0003kQ-1Q; Fri, 29 Sep 2023 16:08:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610617.950060; Fri, 29 Sep 2023 16:08:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmG2W-0003kJ-VA; Fri, 29 Sep 2023 16:08:28 +0000
Received: by outflank-mailman (input) for mailman id 610617;
 Fri, 29 Sep 2023 16:08:27 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=xnwI=FN=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qmG2V-0003kD-Mg
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 16:08:27 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 6b0379ac-5ee2-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 18:08:25 +0200 (CEST)
Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7])
 by mailhost.m5p.com (8.17.1/8.15.2) with ESMTPS id 38TG825N011485
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Fri, 29 Sep 2023 12:08:07 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 38TG81cg011484;
 Fri, 29 Sep 2023 09:08:01 -0700 (PDT) (envelope-from ehem)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6b0379ac-5ee2-11ee-9b0d-b553b5be7939
Date: Fri, 29 Sep 2023 09:08:01 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Julien Grall <julien@xen.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
        xen-devel@lists.xenproject.org, jbeulich@suse.com,
        andrew.cooper3@citrix.com, roger.pau@citrix.com,
        bertrand.marquis@arm.com, george.dunlap@citrix.com, wl@xen.org
Subject: Re: [PATCH] bitmap: fix n__ signess
Message-ID: <ZRb2YTMPzDsncZAR@mattapan.m5p.com>
References: <alpine.DEB.2.22.394.2309281616200.1996340@ubuntu-linux-20-04-desktop>
 <592517ec-f093-4789-8cd6-320f886e45ae@xen.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <592517ec-f093-4789-8cd6-320f886e45ae@xen.org>
X-Spam-Status: No, score=0.4 required=10.0 tests=KHOP_HELO_FCRDNS autolearn=no
	autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mattapan.m5p.com

On Fri, Sep 29, 2023 at 08:24:37AM +0100, Julien Grall wrote:
> Hi Stefano,
> 
> On 29/09/2023 00:19, Stefano Stabellini wrote:
> > All callers of the bitmap_switch macro (which are all within bitmap.h)
> > pass an int as first parameter. Do not assign it to an unsigned int
> > potentially introducing errors.
> > 
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> > ---
> > 
> > We could also have gone the other way and change all the callers and the
> > callers' callers to use an unsigned int instead, but I went for the path
> > of least resistance.
> 
> I understand this will solve the issue right now because the callers are 
> all passing 'int'. However, all the callers will need to switch to 
> 'unsigned int' in order to solve violations in their callers.
> 
> That unless we decide to use 'int' everywhere, but I think this is a bad 
> idea because 'n__' is not supposed to be negative.
> 
> Overall, this may be an easy win right now, but this will need to be 
> reverted. So, I am not happy to ack it and would in fact be leaning 
> towards Nacking it.

I would have tended to review on the basis situations like this unsigned
is always the way to go.  n__ *wants* to be unsigned since such
structures nearly always have some level of implicit assemption of being
unsigned.

Turns out though the situation is worse since as proposed this also
significantly changes the logic.  The value of `(int)n__ <= BITS_PER_LONG`
may differ from `(unsigned int)n__ <= BITS_PER_LONG`.  I wouldn't expect
these functions to get negative values, but if they did a lurking issue
has been added.


-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \BS (    |         ehem+sigmsg@m5p.com  PGP 87145445         |    )   /
  \_CS\   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445




From xen-devel-bounces@lists.xenproject.org Fri Sep 29 16:32:05 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 16:32:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610625.950070 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmGPD-0001gg-O4; Fri, 29 Sep 2023 16:31:55 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610625.950070; Fri, 29 Sep 2023 16:31:55 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmGPD-0001gZ-KW; Fri, 29 Sep 2023 16:31:55 +0000
Received: by outflank-mailman (input) for mailman id 610625;
 Fri, 29 Sep 2023 16:31:54 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=w1P3=FN=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qmGPC-0001gT-Jf
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 16:31:54 +0000
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on20628.outbound.protection.outlook.com
 [2a01:111:f400:7eab::628])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id b16a2247-5ee5-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 18:31:52 +0200 (CEST)
Received: from CH0PR13CA0043.namprd13.prod.outlook.com (2603:10b6:610:b2::18)
 by IA0PR12MB7555.namprd12.prod.outlook.com (2603:10b6:208:43d::5)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 16:31:48 +0000
Received: from DS3PEPF000099E2.namprd04.prod.outlook.com
 (2603:10b6:610:b2:cafe::bb) by CH0PR13CA0043.outlook.office365.com
 (2603:10b6:610:b2::18) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.15 via Frontend
 Transport; Fri, 29 Sep 2023 16:31:45 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 DS3PEPF000099E2.mail.protection.outlook.com (10.167.17.201) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Fri, 29 Sep 2023 16:31:44 +0000
Received: from SATLEXMB05.amd.com (10.181.40.146) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 29 Sep
 2023 11:31:43 -0500
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB05.amd.com
 (10.181.40.146) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 29 Sep
 2023 11:31:43 -0500
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 29 Sep 2023 11:31:42 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: b16a2247-5ee5-11ee-878c-cb3800f73035
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Su+F8ZccrkeCm6fZZH5Np9zXRw57nVgjisonX2tX7HNrkShCfciI3+OsVlpWwrbr5srKPJ0+1+XpGLFZMBMaN7qL9JlyPFBB8R3nxKcdzbtR2l98u/a2Gjy+0jEuEd3lMATdYXFHMecwetb40ZT2Jgo+LqPEm7jXIbXvoJrWhJawigiKBZuyzoLO0JdFndq4qQIPJH51NPqlKAOKO2+DD4Yn6HspVdZjiV5y0ePpjzmmy1Rk5xINwYLi6bcoTAn4TsRwki98svYM2begZe6TciqrU5iM2XRUy/5QPQ+fY20SI++f2IB1D2Mte2pDWYH4gLR95E1sootsFfKGGfXKhg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=0c1jMchONhmdqpDYGTTgvy9A6jxz/UVnQE7QmhbfraU=;
 b=gp4imKRY9y3/qMdOrT5PlkSaxgwxQE+ueoSAt5uC/A0B8b0FnO4vYC680b4QUHtCeFYUfMzDNxzL9cqR4nOc6XJZFz35SW8pUJS6PVELH4Pumc2SlCWc7StGmlt0TqmrwmRrn7QHTNlG+AaMzKgA6L98sL3u4+tTSVxcJ5OgqOizAlHrH8LvBs3X+OcM6vX33l8nImZpPAX4dp1eIpP9/cxOIiVcy1GvSJS8+PSd/tUpRr2SzJeCvwQQcKJHPLsw/yggZu06bUyVTbwCSWjYZ4lmeW5nWX4eCtvn6DOr85nbMykBw/8Xwv7nsVt1L2qxU69H3FseC1efMbcObgE3bg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=0c1jMchONhmdqpDYGTTgvy9A6jxz/UVnQE7QmhbfraU=;
 b=HUoKLfP2sq4Uwo9T8hQBHgc0+Ej2d4yl8remLcyox1ONzz07AC/860blWxM0F8uhazwNDQj7VZM6MZ5JJKFgzPtH8BmLL27kWfVm43nypTS3nUJ4NDOgMqY8FzMfeWkHhPlALS1HPOjdRkZxdprcRdylONZZEido/3VVCQF0O8k=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <af5e49e2-7c37-8539-716e-928ae9ccd2f5@amd.com>
Date: Fri, 29 Sep 2023 12:31:42 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v4 3/7] iommu/arm: Add iommu_dt_xlate()
Content-Language: en-US
To: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>
CC: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Rahul Singh <rahul.singh@arm.com>, Bertrand Marquis
	<bertrand.marquis@arm.com>
References: <20230607030220.22698-1-stewart.hildebrand@amd.com>
 <20230607030220.22698-4-stewart.hildebrand@amd.com>
 <eaec93ad-bd6d-aef6-fa46-d1830f2b65ff@xen.org>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <eaec93ad-bd6d-aef6-fa46-d1830f2b65ff@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099E2:EE_|IA0PR12MB7555:EE_
X-MS-Office365-Filtering-Correlation-Id: 1d16a29b-eaf9-4720-2f3a-08dbc10991cd
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	g+EKWCDz+9kMm/q9TBooYL0a7uaz3QcYQWDGhuoFhsM45gWAuaqxDWkvYayES1bZRlEk5nB0DzSMYcTkwNCZC06y/ayUzf/YOnGooqqfbHz5zI0xzjGSzuG071xoS8VSYRCraBIOS4bYJZfgXq6X4LEjr+D+TQM/DKXvuQSqYZ8mc+U+qI01jHE/yHJ9rQFIOljJhIIL59KiWYjanXkpTYqI2S18lx3Vb+Sw116Ox25iVt0y81ulW25uuCw3OrljTqRYUJPY3NgD5yEUJTU9+kmKGnf9U2W1eFl0GHSIO2lnlEHUSlRVKxqHlkCV9zShh6S5a8wFsTKVMnSe3FtbCYEXepEgC+1Wtup10JR0Iw0Hgn2jLXiilU10Y6Cn9GgEBgJ2fhX0KOxUhQzM+tJRi3fAInFaqJv6svEGpzIjXGtdsF/jZoZ1GgKT8mtRcjMgdLKa2WuNaSE3EnMpo6HHt7AqkW77vmWcPH9SHJ3reiyfYvFYuytRWziHPbkbaY9fQl7ECGwj/xTfX0e9KjL1eduIbaXfeZWRnbCW9/674LQIZpKKyd0iCajV7n6STzxiPNZD47ZGVRZDPTX8KRpB/ECczRRrxsiK28x+VDQ6bufIF6mey+gNgVr8hdug1tyA1cIYiJcXvT35s3Q6NK1Eh2ejdP3SuGN0AjuMzqYPDEgQl8syzOU+/zsuOMNVg3+4wefY0+a6yes98lc2MrP0lwRwD0Nbw9PgebsAmA1TpC+BmTCz3jhqS+pfDMlwrWw4Y/jbVE5M8vgBmudvWZJ1toz17nni3u/8twhWxuDkYG0=
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(376002)(346002)(396003)(136003)(230922051799003)(186009)(64100799003)(1800799009)(82310400011)(451199024)(46966006)(40470700004)(36840700001)(2906002)(44832011)(5660300002)(31686004)(4326008)(8936002)(8676002)(26005)(40480700001)(2616005)(36756003)(41300700001)(316002)(16576012)(54906003)(40460700003)(110136005)(356005)(83380400001)(70586007)(70206006)(478600001)(966005)(336012)(426003)(47076005)(53546011)(36860700001)(81166007)(82740400003)(31696002)(86362001)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 16:31:44.7285
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 1d16a29b-eaf9-4720-2f3a-08dbc10991cd
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS3PEPF000099E2.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB7555

On 6/29/23 18:29, Julien Grall wrote:
> Hi Stewart,
> 
> On 07/06/2023 04:02, Stewart Hildebrand wrote:
>> From: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
>>
>> Move code for processing DT IOMMU specifier to a separate helper.
>> This helper will be re-used for adding PCI devices by the subsequent
>> patches as we will need exact the same actions for processing
>> DT PCI-IOMMU specifier.
>>
>> While at it introduce NO_IOMMU to avoid magic "1".
>>
>> Signed-off-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>> ---
>> v3->v4:
>> * make dt_phandle_args *iommu_spec const
>> * move !ops->add_device check to helper
>>
>> v2->v3:
>> * no change
>>
>> v1->v2:
>> * no change
>>
>> downstream->v1:
>> * trivial rebase
>> * s/dt_iommu_xlate/iommu_dt_xlate/
>>
>> (cherry picked from commit c26bab0415ca303df86aba1d06ef8edc713734d3 from
>>   the downstream branch poc/pci-passthrough from
>>   https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc.git)
>> ---
>>   xen/drivers/passthrough/device_tree.c | 47 ++++++++++++++++++---------
>>   1 file changed, 31 insertions(+), 16 deletions(-)
>>
>> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
>> index c60e78eaf556..ff9e66ebf92a 100644
>> --- a/xen/drivers/passthrough/device_tree.c
>> +++ b/xen/drivers/passthrough/device_tree.c
>> @@ -127,15 +127,42 @@ int iommu_release_dt_devices(struct domain *d)
>>       return 0;
>>   }
>>
>> +/* This correlation must not be altered */
> 
> Please expand why.

I don't have any insight regarding the rationale for why the comment was added. I don't believe the comment is adding any value, so I'll remove it.

>> +#define NO_IOMMU    1
> 
> Given that the value is returned, should not this be moved to an header
> and used by the callers?

Moving it to a header: yes. I'll move it to xen/include/xen/iommu.h, as that is where the iommu_add_dt_device() prototype also lives.

Used by callers: the callers currently are checking for error by comparing ( rc < 0 ). I think that's okay to leave as is since the comment in iommu.h by the prototype describe the possible return value for iommu_add_dt_device() as:
 * Return values:
 *  0 : device is protected by an IOMMU
 * <0 : device is not protected by an IOMMU, but must be (error condition)
 * >0 : device doesn't need to be protected by an IOMMU
 *      (IOMMU is not enabled/present or device is not connected to it).

>> +
>> +static int iommu_dt_xlate(struct device *dev,
>> +                          const struct dt_phandle_args *iommu_spec)
>> +{
>> +    const struct iommu_ops *ops = iommu_get_ops();
>> +    int rc;
>> +
>> +    if ( !ops->dt_xlate )
>> +        return -EINVAL;
>> +
>> +    if ( !dt_device_is_available(iommu_spec->np) )
>> +        return NO_IOMMU;
>> +
>> +    rc = iommu_fwspec_init(dev, &iommu_spec->np->dev);
>> +    if ( rc )
>> +        return rc;
>> +
>> +    /*
>> +     * Provide DT IOMMU specifier which describes the IOMMU master
>> +     * interfaces of that device (device IDs, etc) to the driver.
>> +     * The driver is responsible to decide how to interpret them.
>> +     */
>> +    return ops->dt_xlate(dev, iommu_spec);
>> +}
>> +
>>   int iommu_add_dt_device(struct dt_device_node *np)
>>   {
>>       const struct iommu_ops *ops = iommu_get_ops();
>>       struct dt_phandle_args iommu_spec;
>>       struct device *dev = dt_to_dev(np);
>> -    int rc = 1, index = 0;
>> +    int rc = NO_IOMMU, index = 0;
>>
>>       if ( !iommu_enabled )
>> -        return 1;
>> +        return NO_IOMMU;
>>
>>       if ( !ops )
>>           return -EINVAL;
>> @@ -163,22 +190,10 @@ int iommu_add_dt_device(struct dt_device_node *np)
>>            * The driver which supports generic IOMMU DT bindings must have
>>            * these callback implemented.
> 
> The 's' was missing to callback. But now, I think you want to replace
> 'these' with 'this' as you move the second check.

I will fix it

>>            */
>> -        if ( !ops->add_device || !ops->dt_xlate )
>> +        if ( !ops->add_device )
>>               return -EINVAL;
>>
>> -        if ( !dt_device_is_available(iommu_spec.np) )
>> -            break;
>> -
>> -        rc = iommu_fwspec_init(dev, &iommu_spec.np->dev);
>> -        if ( rc )
>> -            break;
>> -
>> -        /*
>> -         * Provide DT IOMMU specifier which describes the IOMMU master
>> -         * interfaces of that device (device IDs, etc) to the driver.
>> -         * The driver is responsible to decide how to interpret them.
>> -         */
>> -        rc = ops->dt_xlate(dev, &iommu_spec);
>> +        rc = iommu_dt_xlate(dev, &iommu_spec);
>>           if ( rc )
>>               break;
>>
> 
> Cheers,
> 
> -- 
> Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 16:35:37 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 16:35:37 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610629.950080 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmGSm-0002qh-5b; Fri, 29 Sep 2023 16:35:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610629.950080; Fri, 29 Sep 2023 16:35:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmGSm-0002qa-2m; Fri, 29 Sep 2023 16:35:36 +0000
Received: by outflank-mailman (input) for mailman id 610629;
 Fri, 29 Sep 2023 16:35:34 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=m+YX=FN=bugseng.com=simone.ballarin@srs-se1.protection.inumbo.net>)
 id 1qmGSk-0002qU-Fl
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 16:35:34 +0000
Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 34cf6c6d-5ee6-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 18:35:31 +0200 (CEST)
Received: from beta.station (net-188-218-250-245.cust.vodafonedsl.it
 [188.218.250.245])
 by support.bugseng.com (Postfix) with ESMTPSA id 3C6854EE0739;
 Fri, 29 Sep 2023 18:35:31 +0200 (CEST)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 34cf6c6d-5ee6-11ee-9b0d-b553b5be7939
From: Simone Ballarin <simone.ballarin@bugseng.com>
To: xen-devel@lists.xenproject.org
Cc: consulting@bugseng.com,
	Simone Ballarin <simone.ballarin@bugseng.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Subject: [XEN PATCH] automation/eclair: update accepted and clean guidelines
Date: Fri, 29 Sep 2023 18:35:10 +0200
Message-Id: <b163d56b606a86a8772e97cd1938c737aeef4754.1696003647.git.simone.ballarin@bugseng.com>
X-Mailer: git-send-email 2.34.1
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

This patch updates accepted and clean guidelines selectors.

Align accepted selector with docs/misra/rules.txt.
Add rule 7.3 in the clean selector for ARM.
Avoid regular expressions in all service selectors: usign them
requires escaping dots, which make selectors hard to read.

Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
---
 automation/eclair_analysis/ECLAIR/tagging.ecl | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/automation/eclair_analysis/ECLAIR/tagging.ecl b/automation/ecl=
air_analysis/ECLAIR/tagging.ecl
index 3f589fd716..78a0bc948b 100644
--- a/automation/eclair_analysis/ECLAIR/tagging.ecl
+++ b/automation/eclair_analysis/ECLAIR/tagging.ecl
@@ -18,7 +18,8 @@
 #######################
=20
 -doc=3D"Accepted guidelines as reported in XEN/docs/misra/rules.rst"
--service_selector=3D{accepted_guidelines,"^(MC3R1\\.D1\\.1|MC3R1\\.D2\\.1|=
MC3R1\\.D4\\.3|MC3R1\\.D4\\.7|MC3R1\\.D4\\.10|MC3R1\\.D4\\.11|MC3R1\\.D4\\.=
14|MC3R1\\.R1\\.1|MC3R1\\.R1\\.3|MC3R1\\.R1\\.4|MC3R1\\.R2\\.1|MC3R1\\.R2\\=
.6|MC3R1\\.R2\\.2|MC3R1\\.R3\\.1|MC3R1\\.R3\\.2|MC3R1\\.R4\\.1|MC3R1\\.R4\\=
.2|MC3R1\\.R5\\.1|MC3R1\\.R5\\.2|MC3R1\\.R5\\.3|MC3R1\\.R5\\.4|MC3R1\\.R5\\=
.6|MC3R1\\.R6\\.1|MC3R1\\.R6\\.2|MC3R1\\.R7\\.1|MC3R1\\.R7\\.2|MC3R1\\.R7\\=
.3|MC3R1\\.R7\\.4|MC3R1\\.R8\\.1|MC3R1\\.R8\\.2|MC3R1\\.R8\\.3|MC3R1\\.R8\\=
.4|MC3R1\\.R8\\.5|MC3R1\\.R8\\.6|MC3R1\\.R8\\.8|MC3R1\\.R8\\.10|MC3R1\\.R8\=
\.12|MC3R1\\.R8\\.14|MC3R1\\.R9\\.1|MC3R1\\.R9\\.2|MC3R1\\.R9\\.3|MC3R1\\.R=
9\\.4|MC3R1\\.R9\\.5|MC3R1\\.R12\\.5|MC3R1\\.R13\\.6|MC3R1\\.R13\\.1|MC3R1\=
\.R14\\.1|MC3R1\\.R16\\.7|MC3R1\\.R17\\.3|MC3R1\\.R17\\.4|MC3R1\\.R17\\.6|M=
C3R1\\.R18\\.3|MC3R1\\.R19\\.1|MC3R1\\.R20\\.7|MC3R1\\.R20\\.13|MC3R1\\.R20=
\\.14|MC3R1\\.R21\\.13|MC3R1\\.R21\\.17|MC3R1\\.R21\\.18|MC3R1\\.R21\\.19|M=
C3R1\\.R21\\.20|MC3R1\\.R21\\.21|MC3R1\\.R22\\.2|MC3R1\\.R22\\.4|MC3R1\\.R2=
2\\.5|MC3R1\\.R22\\.6)$"
+-service_selector=3D{accepted_guidelines,
+    "MC3R1.D1.1||MC3R1.D2.1||MC3R1.D4.1||MC3R1.D4.3||MC3R1.D4.7||MC3R1.D4.=
10||MC3R1.D4.11||MC3R1.D4.14||MC3R1.R1.1||MC3R1.R1.3||MC3R1.R1.4||MC3R1.R2.=
1||MC3R1.R2.2||MC3R1.R2.6||MC3R1.R2.2||MC3R1.R3.1||MC3R1.R3.2||MC3R1.R4.1||=
MC3R1.R4.2||MC3R1.R5.1||MC3R1.R5.2||MC3R1.R5.3||MC3R1.R5.4||MC3R1.R5.6||MC3=
R1.R6.1||MC3R1.R6.2||MC3R1.R7.1||MC3R1.R7.2||MC3R1.R7.3||MC3R1.R7.4||MC3R1.=
R8.1||MC3R1.R8.2||MC3R1.R8.3||MC3R1.R8.4||MC3R1.R8.5||MC3R1.R8.6||MC3R1.R8.=
8||MC3R1.R8.10||MC3R1.R8.12||MC3R1.R8.14||MC3R1.R9.1||MC3R1.R9.2||MC3R1.R9.=
3||MC3R1.R9.4||MC3R1.R9.5||MC3R1.R10.1||MC3R1.R10.2||MC3R1.R10.3||MC3R1.R10=
.4||MC3R1.R12.5||MC3R1.R13.6||MC3R1.R13.1||MC3R1.R14.1||MC3R1.R14.3||MC3R1.=
R16.7||MC3R1.R17.3||MC3R1.R17.4||MC3R1.R17.6||MC3R1.R18.3||MC3R1.R19.1||MC3=
R1.R20.7||MC3R1.R20.13||MC3R1.R20.14||MC3R1.R21.13||MC3R1.R21.17||MC3R1.R21=
.18||MC3R1.R21.19||MC3R1.R21.20||MC3R1.R21.21||MC3R1.R22.2||MC3R1.R22.4||MC=
3R1.R22.5||MC3R1.R22.6"
 }
 -doc=3D"All reports of accepted guidelines are tagged as accepted."
 -reports+=3D{status:accepted,"service(accepted_guidelines)"}
@@ -29,17 +30,17 @@
=20
 -doc_begin=3D"Clean guidelines: new violations for these guidelines are no=
t accepted."
=20
--service_selector=3D{clean_guidelines_common,"^(MC3R1\\.D1\\.1|MC3R1\\.D2\=
\.1|MC3R1\\.D4\\.11|MC3R1\\.D4\\.14|MC3R1\\.R1\\.1|MC3R1\\.R1\\.3|MC3R1\\.R=
1\\.4|MC3R1\\.R2\\.2|MC3R1\\.R3\\.1|MC3R1\\.R3\\.2|MC3R1\\.R4\\.1|MC3R1\\.R=
5\\.1|MC3R1\\.R5\\.2|MC3R1\\.R5\\.4|MC3R1\\.R6\\.1|MC3R1\\.R6\\.2|MC3R1\\.R=
7\\.1|MC3R1\\.R8\\.1|MC3R1\\.R8\\.5|MC3R1\\.R8\\.8|MC3R1\\.R8\\.10|MC3R1\\.=
R8\\.12|MC3R1\\.R8\\.14|MC3R1\\.R9\\.2|MC3R1\\.R9\\.4|MC3R1\\.R9\\.5|MC3R1\=
\.R12\\.5|MC3R1\\.R17\\.3|MC3R1\\.R17\\.4|MC3R1\\.R17\\.6|MC3R1\\.R21\\.13|=
MC3R1\\.R21\\.19|MC3R1\\.R21\\.21|MC3R1\\.R22\\.2|MC3R1\\.R22\\.4|MC3R1\\.R=
22\\.5|MC3R1\\.R22\\.6)$"
+-service_selector=3D{clean_guidelines_common,"MC3R1.D1.1||MC3R1.D2.1||MC3R=
1.D4.11||MC3R1.D4.14||MC3R1.R1.1||MC3R1.R1.3||MC3R1.R1.4||MC3R1.R2.2||MC3R1=
.R3.1||MC3R1.R3.2||MC3R1.R4.1||MC3R1.R5.1||MC3R1.R5.2||MC3R1.R5.4||MC3R1.R6=
.1||MC3R1.R6.2||MC3R1.R7.1||MC3R1.R8.1||MC3R1.R8.5||MC3R1.R8.8||MC3R1.R8.10=
||MC3R1.R8.12||MC3R1.R8.14||MC3R1.R9.2||MC3R1.R9.4||MC3R1.R9.5||MC3R1.R12.5=
||MC3R1.R17.3||MC3R1.R17.4||MC3R1.R17.6||MC3R1.R21.13||MC3R1.R21.19||MC3R1.=
R21.21||MC3R1.R22.2||MC3R1.R22.4||MC3R1.R22.5||MC3R1.R22.6"
 }
=20
 -setq=3Dtarget,getenv("XEN_TARGET_ARCH")
=20
 if(string_equal(target,"x86_64"),
-    service_selector({"additional_clean_guidelines","^(MC3R1\\.D4\\.3)$"})
+    service_selector({"additional_clean_guidelines","MC3R1.D4.3"})
 )
=20
 if(string_equal(target,"arm64"),
-    service_selector({"additional_clean_guidelines","^(MC3R1\\.R5\\.3|MC3R=
1\\.R7\\.2|MC3R1\\.R8\\.6|MC3R1\\.R9\\.3)$"})
+    service_selector({"additional_clean_guidelines","MC3R1.R5.3||MC3R1.R7.=
2||MC3R1.R7.3||MC3R1.R8.6||MC3R1.R9.3"})
 )
=20
 -reports+=3D{clean:added,"service(clean_guidelines_common||additional_clea=
n_guidelines)"}
--=20
2.34.1



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 16:42:36 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 16:42:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610634.950089 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmGZR-0005TK-SF; Fri, 29 Sep 2023 16:42:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610634.950089; Fri, 29 Sep 2023 16:42:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmGZR-0005TD-PO; Fri, 29 Sep 2023 16:42:29 +0000
Received: by outflank-mailman (input) for mailman id 610634;
 Fri, 29 Sep 2023 16:42:29 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=LkXg=FN=cloud.com=george.dunlap@srs-se1.protection.inumbo.net>)
 id 1qmGZR-0005T7-9S
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 16:42:29 +0000
Received: from mail-lj1-x230.google.com (mail-lj1-x230.google.com
 [2a00:1450:4864:20::230])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2d1607bb-5ee7-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 18:42:28 +0200 (CEST)
Received: by mail-lj1-x230.google.com with SMTP id
 38308e7fff4ca-2bffa8578feso235825351fa.2
 for <xen-devel@lists.xenproject.org>; Fri, 29 Sep 2023 09:42:28 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2d1607bb-5ee7-11ee-878c-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1696005747; x=1696610547; darn=lists.xenproject.org;
        h=cc:to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=z3RayBwtucIeYOJBYJcU44qYWWgYdJyFKw1GhJhGYEo=;
        b=jabxkHFCVpJ9VfypNWXDaQ5QQTPhS07vLir7lILltOnifWUG2ReCupfG2RnpHMRgJA
         hD77vUePWOmkbbi37ushze1xGAcRvvxjcyiZl4HKZIqHVYsb2Hdmp+kGQbofrgV2fTTV
         xjYAOoakH7eyuQ51ZruYXQOMzXT1ktFlqCk6M=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696005747; x=1696610547;
        h=cc:to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=z3RayBwtucIeYOJBYJcU44qYWWgYdJyFKw1GhJhGYEo=;
        b=nZ7tvSrcVcbOcxrAcQOH1PKdB7/cANLdhFONREVdmtkYTe+040PJ+heGfR9Ea266oF
         nAVUuGTIWKFIL2PD0L/macTqqFZyM5vt3QqrQ2PxiHcolVZKmNU4ba8UvKJVn6HOwd48
         ra+oauz1+ZQmrs8I0LJWWush8INlxcfz7ploiWJ7BEvDc7YfCc7x9sdesogM+jzty86t
         b8zU5OjuoQWAMmWJM9d1/2163YTtqbg98lA6rktquD+Jom00ycWzxdrNWPywmmQeLCTt
         BACA4+cy8OGsg7tOGIfWc+z6GoSlmFA6/8iZ95+RzKwjFdbeA3rUXJPvIOzzjCbXKEn2
         9wfQ==
X-Gm-Message-State: AOJu0YyHTrwWIHddhEBSg9hVVtI/gXFAg8beBYVYI0dymwjwbMYGkCd1
	bRsw4d7NBc4yIX0+V6TxU29Gp7C7gWuuNqw+chTmwcXbtsP5SmKsiIk=
X-Google-Smtp-Source: AGHT+IFuZ1OovX6uWjpk/NwTAun5kAwS1EZVURByyXM17qFdCIfGIkU/uS3BjHy6BgAJP2N9uE5yBDym6nTWTgZoOF0=
X-Received: by 2002:ac2:4898:0:b0:503:3816:c42c with SMTP id
 x24-20020ac24898000000b005033816c42cmr3839036lfc.41.1696005747157; Fri, 29
 Sep 2023 09:42:27 -0700 (PDT)
MIME-Version: 1.0
From: George Dunlap <george.dunlap@cloud.com>
Date: Fri, 29 Sep 2023 17:42:16 +0100
Message-ID: <CA+zSX=Z904nF0yD1grRZc1miEOhdTHqAd4j-S1j8GY+1bo9COw@mail.gmail.com>
Subject: Sketch of an idea for handling the "mixed workload" problem
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: Juergen Gross <jgross@suse.com>, Demi Marie Obenour <demi@invisiblethingslab.com>, 
	=?UTF-8?Q?Marek_Marczykowski=2DG=C3=B3recki?= <marmarek@invisiblethingslab.com>
Content-Type: text/plain; charset="UTF-8"

The basic credit2 algorithm goes something like this:

1. All vcpus start with the same number of credits; about 10ms worth
if everyone has the same weight

2. vcpus burn credits as they consume cpu, based on the relative
weights: higher weights burn slower, lower weights burn faster

3. At any given point in time, the runnable vcpu with the highest
credit is allowed to run

4. When the "next runnable vcpu" on a runqueue is negative, credit is
reset: everyone gets another 10ms, and can carry over at most 2ms of
credit over the reset.

Generally speaking, vcpus that use less than their quota and have lots
of interrupts are scheduled immediately, since when they wake up they
always have more credit than the vcpus who are burning through their
slices.

But what about a situation as described recently on Matrix, where a VM
uses a non-negligible amount of cpu doing un-accelerated encryption
and decryption, which can be delayed by a few MS, as well as handling
audio events?  How can we make sure that:

1. We can run whenever interrupts happen
2. We get no more than our fair share of the cpu?

The counter-intuitive key here is that in order to achieve the above,
you need to *deschedule or preempt early*, so that when the interrupt
comes, you have spare credit to run the interrupt handler.  How do we
manage that?

The idea I'm working out comes from a phrase I used in the Matrix
discussion, about a vcpu that "foolishly burned all its credits".
Naturally the thing you want to do to have credits available is to
save them up.

So the idea would be this.  Each vcpu would have a "boost credit
ratio" and a "default boost interval"; there would be sensible
defaults based on typical workloads, but these could be tweaked for
individual VMs.

When credit is assigned, all VMs would get the same amount of credit,
but divided into two "buckets", according to the boost credit ratio.

Under certain conditions, a vcpu would be considered "boosted"; this
state would last either until the default boost interval, or until
some other event (such as a de-boost yield).

The queue would be sorted thus:

* Boosted vcpus, by boost credit available
* Non-boosted vcpus, by non-boost credit available

Getting more boost credit means having lower priority when not
boosted; and burning through your boost credit means not being
scheduled when you need to be.

Other ways we could consider putting a vcpu into a boosted state (some
discussed on Matrix or emails linked from Matrix):
* Xen is about to preempt, but finds that the vcpu interrupts are
blocked (this sort of overlaps with the "when we deliver an interrupt"
one)
* Xen is about to preempt, but finds that the (currently out-of-tree)
"dont_desched" bit has been set in the shared memory area

Other ways to consider de-boosting:
* There's a way to trigger a VMEXIT when interrupts have been
re-enabled; setting this up when the VM is in the boost state

Getting the defaults right might take some thinking.  If you set the
default "boost credit ratio" to 25% and the "default boost interval"
to 500ms, then you'd basically have five "boosts" per scheduling
window.  The window depends on how active other vcpus are, but if it's
longer than 20ms your system is too overloaded.

Thoughts?  Demi, what kinds of interrupt counts are you getting for your VM?

 -George


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 16:50:27 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 16:50:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610638.950100 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmGh5-0006xL-MX; Fri, 29 Sep 2023 16:50:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610638.950100; Fri, 29 Sep 2023 16:50:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmGh5-0006xE-Ju; Fri, 29 Sep 2023 16:50:23 +0000
Received: by outflank-mailman (input) for mailman id 610638;
 Fri, 29 Sep 2023 16:50:22 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=JGVc=FN=arm.com=Luca.Fancellu@srs-se1.protection.inumbo.net>)
 id 1qmGh4-0006x8-B7
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 16:50:22 +0000
Received: from EUR03-DBA-obe.outbound.protection.outlook.com
 (mail-dbaeur03on2060f.outbound.protection.outlook.com
 [2a01:111:f400:fe1a::60f])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 46084e48-5ee8-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 18:50:20 +0200 (CEST)
Received: from DB8PR03CA0025.eurprd03.prod.outlook.com (2603:10a6:10:be::38)
 by DB9PR08MB6684.eurprd08.prod.outlook.com (2603:10a6:10:26d::13) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 16:50:16 +0000
Received: from DBAEUR03FT010.eop-EUR03.prod.protection.outlook.com
 (2603:10a6:10:be:cafe::80) by DB8PR03CA0025.outlook.office365.com
 (2603:10a6:10:be::38) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26 via Frontend
 Transport; Fri, 29 Sep 2023 16:50:16 +0000
Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by
 DBAEUR03FT010.mail.protection.outlook.com (100.127.142.78) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6863.15 via Frontend Transport; Fri, 29 Sep 2023 16:50:15 +0000
Received: ("Tessian outbound 6d14f3380669:v211");
 Fri, 29 Sep 2023 16:50:15 +0000
Received: from 9678217f690a.1
 by 64aa7808-outbound-1.mta.getcheckrecipient.com id
 3DD5FF05-E79B-4C77-9233-ACBB3D9E6782.1; 
 Fri, 29 Sep 2023 16:49:44 +0000
Received: from EUR02-DB5-obe.outbound.protection.outlook.com
 by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 9678217f690a.1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);
 Fri, 29 Sep 2023 16:49:44 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com (2603:10a6:20b:8f::22)
 by PAWPR08MB9100.eurprd08.prod.outlook.com (2603:10a6:102:341::22)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.26; Fri, 29 Sep
 2023 16:49:42 +0000
Received: from AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404]) by AM6PR08MB3749.eurprd08.prod.outlook.com
 ([fe80::d0ef:bed9:d414:e404%4]) with mapi id 15.20.6838.024; Fri, 29 Sep 2023
 16:49:41 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 46084e48-5ee8-11ee-878c-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=G7PvRLtURPRfUHdKaC3ynLf00Iq8JeFE1Je7gYdcfUA=;
 b=A7x+qR1KY1BVtI55oHm48uHPtjvBndOuoINj35jPrxAD7E3U5ab3/IrCGiwcUnfNwHUsJhmHQBHo5UG1ZlxnzXIx6VO6a2aaPyrW020FK+m4Cs8gd6ybPyj9o+QWM2r3Z5mlGeZ9WcxRc4xi9E8f3d2w4pbkeuojcr4Z0OYKIGc=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123)
 smtp.mailfrom=arm.com; dkim=pass (signature was verified)
 header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com;
Received-SPF: Pass (protection.outlook.com: domain of arm.com designates
 63.35.35.123 as permitted sender) receiver=protection.outlook.com;
 client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;
 pr=C
X-CheckRecipientChecked: true
X-CR-MTA-CID: a774492013e2920d
X-CR-MTA-TID: 64aa7808
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=XdsJOjblTCEOgGap7I32U5EeUO5mPjLKdurNroCxWtvz7E0/04uUBTSGctKGhX2YuV4DOZ4U2udOah1FyQeBEJthIFFe6zyBkxoRQm6QEHOi7eJac7gNr7rez1SRx1ZcSx4IhBgXIEC8LCMS8sn+he5hqirVzUBEzSMWK4ADWqZXCGS55zElH4P0AD1mZyuLHmCk/HP+NWn909bLwB9XFn2qvKWJz9Kp9CgCmR3P9BpN0zKJ6hjgtTbv8SuSvBufGe3U7meeUi9kt2hCHWON2gftB1xuVNiFtjq9gr59gtOBYb440Obewlgc9sayhZM4R6UbP8S8lUpnhuD2vJztpQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=G7PvRLtURPRfUHdKaC3ynLf00Iq8JeFE1Je7gYdcfUA=;
 b=jtUvhIeYBeUQhjp+0lSJWQgWsQshYPh5TP+MQ4MGoYaXlzRjUMg0VnWMgb2fAXzGkS+CYG2vsVoP3SFsXPHzV0JOr2nOOJTOXCYs6cMtreFRLg89+elhoF0muTtExneSxeMaosKROFhy/WTZyM3k1T0Bh+1j8RPpNXDHTy7M8E0ZUAkT90SDI4MeaY95SQMdtD8oO+lixNs7EASCuFnvwDSTDRiVDXGr89jqfrrjtKS98OnPUF8yy1sFo5A7dIsV9cniz2HtNJBnn8St+kqdOe8PAPRO7OanG3/mpt+ul2mGIjXzqmXSCfyyuzcWOKYxJLeETNcEFdt37h2EwF09QQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass
 header.d=arm.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com;
 s=selector2-armh-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=G7PvRLtURPRfUHdKaC3ynLf00Iq8JeFE1Je7gYdcfUA=;
 b=A7x+qR1KY1BVtI55oHm48uHPtjvBndOuoINj35jPrxAD7E3U5ab3/IrCGiwcUnfNwHUsJhmHQBHo5UG1ZlxnzXIx6VO6a2aaPyrW020FK+m4Cs8gd6ybPyj9o+QWM2r3Z5mlGeZ9WcxRc4xi9E8f3d2w4pbkeuojcr4Z0OYKIGc=
From: Luca Fancellu <Luca.Fancellu@arm.com>
To: Nicola Vetrini <nicola.vetrini@bugseng.com>
CC: Xen-devel <xen-devel@lists.xenproject.org>, Stefano Stabellini
	<sstabellini@kernel.org>, "michal.orzel@amd.com" <michal.orzel@amd.com>,
	"xenia.ragiadakou@amd.com" <xenia.ragiadakou@amd.com>, Ayan Kumar Halder
	<ayan.kumar.halder@amd.com>, "consulting@bugseng.com"
	<consulting@bugseng.com>, "jbeulich@suse.com" <jbeulich@suse.com>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>, George Dunlap
	<george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, Wei Liu
	<wl@xen.org>, Anthony PERARD <anthony.perard@citrix.com>, Simone Ballarin
	<simone.ballarin@bugseng.com>, Doug Goldstein <cardoe@cardoe.com>, Henry Wang
	<Henry.Wang@arm.com>
Subject: Re: [XEN PATCH v2 0/3] docs/misra: add documentation skeleton to
 address MISRA C:2012 Dir 4.1
Thread-Topic: [XEN PATCH v2 0/3] docs/misra: add documentation skeleton to
 address MISRA C:2012 Dir 4.1
Thread-Index: AQHZ8uq6JQBfM1ccxUeWd6hakfVo37AyA/8A
Date: Fri, 29 Sep 2023 16:49:41 +0000
Message-ID: <4633BBCC-E0C9-4A93-8B26-D65C2DB65EFC@arm.com>
References: <cover.1695801813.git.nicola.vetrini@bugseng.com>
 <a8b3af7951ad68e02a25ea9347f9de4d@bugseng.com>
In-Reply-To: <a8b3af7951ad68e02a25ea9347f9de4d@bugseng.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-mailer: Apple Mail (2.3774.100.2.1.4)
Authentication-Results-Original: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
x-ms-traffictypediagnostic:
	AM6PR08MB3749:EE_|PAWPR08MB9100:EE_|DBAEUR03FT010:EE_|DB9PR08MB6684:EE_
X-MS-Office365-Filtering-Correlation-Id: 25ba44b5-7b61-4267-9904-08dbc10c27cf
x-checkrecipientrouted: true
nodisclaimer: true
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam-Untrusted: BCL:0;
X-Microsoft-Antispam-Message-Info-Original:
 ZLGFQkYFPSCwH6Fg9YUAEl2J1BFbsGOSpXQOSyfrcMhwOaUh12ssK9K3/GamnUU1xjwgEwLWkhFKXInLuc73k7bcJktmHzdv9fNiebV/AGbHD5nYtdJ6HAbKty9bEjdANN2M47Cx8GkTU3cIgI/NFKwe+jrnBaEHnHFwkfrucAQ7pKi2Rf/viueF42ByhP19q6dr4xS5fkdt38F4fkIajUwMQoCzTNV6C3oE1muBb+Bd+YTWwYQQUbMP57OFFK3KpBSa9ulE1IhPXGKBljaJHanfcKZV+nzNFEXhtv51rShbmOLsVdZKeIsWpYMHcu5bMF57wzQt8Rda5iCh0+TZO32fQ/e1Qz34EUcXoqIeUm11aaiQNt3+dcE59qc9vWLMuGonQv6Nwk17bcBfYtXMXMRPSpIIajTu5kSlpNoyCHEBn+8zX2o1WRT+MeRQwCjHVT2bi77q3fVBIwu2Sp0VgB5KofhdYEnS8Oys6AflzjBNw8/E8NbxoJVOCTdH3AR30oKXJTqbPxg8wp4nY0Xcmr1APvakhHBx2z+z4k7b9CtrbBp14FHTKxX8jFwL1y/EsnYf4niCHw3iUrRqbyduipIFNzQRlzgXSxSY0YtRuHNrYOGLtUbH32r3XgJinNTMpYGsh578MLwzk78f8vMIj7dhrLfemxFR0NDvoTadRMjkaJ4yX/3CAESzxlw62C8T
X-Forefront-Antispam-Report-Untrusted:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM6PR08MB3749.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(136003)(396003)(39860400002)(366004)(376002)(230922051799003)(64100799003)(186009)(1800799009)(451199024)(6512007)(71200400001)(6506007)(83380400001)(122000001)(33656002)(86362001)(38100700002)(38070700005)(2616005)(36756003)(26005)(2906002)(5660300002)(4326008)(8676002)(8936002)(66556008)(66446008)(54906003)(64756008)(91956017)(66946007)(76116006)(6916009)(7416002)(41300700001)(316002)(6486002)(966005)(66476007)(478600001)(45980500001);DIR:OUT;SFP:1101;
Content-Type: text/plain; charset="utf-8"
Content-ID: <FC6879A234766B43942F37B8966E64B5@eurprd08.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9100
Original-Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=arm.com;
X-EOPAttributedMessage: 0
X-MS-Exchange-Transport-CrossTenantHeadersStripped:
 DBAEUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id-Prvs:
	7674e479-2ca3-4629-c489-08dbc10c1374
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	5LWUsmXKQ8j6L0/UHyZd4CTEDn5N+fdaHEmJPnxqcNzsvxhtHFJTohE+Jc+IB/u3H4Lp0RsQEmOiMdvoAnpjcVccxed/Al4TkPSz1rtXez5LADFaodrfYdenvlkmYdbh1yBZwr4sFmFpSMysKMH2RsbIMBE1jxZ34wMr7/PyPK3TXAPVAPfvA/I8+RqJQLPGrGHNlu+GTib7n49G2d1wwIzy/rk7knFuNsTlWQfdW2Z9Txqw/HyVC5Y3FRLN8omQ8ZEXNqlAQLA/jTNKxE18UsaBi97F34wWf2SmPmGfjuZPP23hxrfNdFa/xkrZo0pNwfZmnH1AGlXgmW7rjK/x3US1WpHQkiOAsrCn0XiLk8I7Hsj+MuUs6U+5XHLpKSlpu88X9/EpsDnYFDc5vUQZUxoIDwDFTX6d+B4Yech4Bj1dVSlrJyLUjHMs5tNIcOeHl/GHPm5o2rCOGNqMUFb4WrABAlncbxH+TNe6MR5ontR4uEkxBal6/jMh3pw+t++L7HiIQS9jWxOZT5e7+Ua33fR5CDAUCtVA7tf9oZcgsdrZI/dZVxzgsRUCert4g7Oft2dXC1nJtAcfP7aCF4ZGCVOomq2rvvm3T2prwDc+EX8LVuLcO4YP9CGjN3t2KLAhELQLB4zOkEq1gDaCMOKjAkf5qW3zMit0rhl8ho95KZXdzENBva5xSa1PFbiHE2lwgvBR2lDMxZgHGIqnhHKkOVq0cWv6pDIN0bpu1uB/NL/OmKMuiwD1gahdFBSXzf3iON7h99gPHJjW3mj0EGoSTg==
X-Forefront-Antispam-Report:
	CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(396003)(136003)(376002)(346002)(230922051799003)(451199024)(186009)(64100799003)(1800799009)(82310400011)(46966006)(36840700001)(40470700004)(40460700003)(36860700001)(70586007)(316002)(54906003)(41300700001)(70206006)(47076005)(82740400003)(6862004)(8676002)(8936002)(356005)(81166007)(6506007)(6512007)(478600001)(966005)(26005)(6486002)(83380400001)(2616005)(336012)(4326008)(86362001)(2906002)(33656002)(5660300002)(36756003)(40480700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: arm.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 16:50:15.4742
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 25ba44b5-7b61-4267-9904-08dbc10c27cf
X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DBAEUR03FT010.eop-EUR03.prod.protection.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6684

PiANCj4gQ0MtaW5nIEx1Y2EgYXMgd2VsbDoNCj4gSSdtIHRlc3RpbmcgdGhlIG5leHQgdmVyc2lv
biBvZiB0aGlzIHNlcmllcywgYW5kIEknbSBzZWVpbmcgYSBmYWlsdXJlIG9uIGNwcGNoZWNrDQo+
IGNvbnRhaW5lcnMgb24gdGhpcyBwaXBlbGluZSBbMV0uIEknbSBub3Qgc3VyZSBhYm91dCB3aGF0
IGlzIGNhdXNpbmcgdGhhdCBjb252ZXJzaW9uIHNjcmlwdA0KPiB0byBmYWlsLiBBbnkgcG9pbnRl
ciBpbiBkZWJ1Z2dpbmcgdGhpcyB3b3VsZCBiZSBncmVhdGx5IGFwcHJlY2lhdGVkLg0KPiANCj4g
WzFdIGh0dHBzOi8vZ2l0bGFiLmNvbS94ZW4tcHJvamVjdC9wZW9wbGUvYnVnc2VuZy94ZW4vLS9w
aXBlbGluZXMvMTAyMDkxNzI4MA0KDQpIaSBOaWNvbGEsDQoNCkluIHRoZSBsb2dzIEkgY2FuIHNl
ZToNCg0KKyB4ZW4vc2NyaXB0cy94ZW4tYW5hbHlzaXMucHkgLS1ydW4tY3BwY2hlY2sgLS1jcHBj
aGVjay1taXNyYSAtLSAtajgwDQpObyBub3RlcyBmb3IgcnVsZSAyLjENCldBUk5JTkc6IENhbid0
IG9wZW4gL2J1aWxkcy94ZW4tcHJvamVjdC9wZW9wbGUvYnVnc2VuZy94ZW4veGVuL2RyaXZlcnMv
dmlkZW8vZm9udF84eDE0LmM6ICd1dGYtOCcgY29kZWMgY2FuJ3QgZGVjb2RlIGJ5dGUgMHg5ZiBp
biBwb3NpdGlvbiA3MjI4OiBpbnZhbGlkIHN0YXJ0IGJ5dGUNCldBUk5JTkc6IENhbid0IG9wZW4g
L2J1aWxkcy94ZW4tcHJvamVjdC9wZW9wbGUvYnVnc2VuZy94ZW4veGVuL2RyaXZlcnMvdmlkZW8v
Zm9udF84eDE2LmM6ICd1dGYtOCcgY29kZWMgY2FuJ3QgZGVjb2RlIGJ5dGUgMHg4MCBpbiBwb3Np
dGlvbiA1NDM2OiBpbnZhbGlkIHN0YXJ0IGJ5dGUNCldBUk5JTkc6IENhbid0IG9wZW4gL2J1aWxk
cy94ZW4tcHJvamVjdC9wZW9wbGUvYnVnc2VuZy94ZW4veGVuL2RyaXZlcnMvdmlkZW8vZm9udF84
eDguYzogJ3V0Zi04JyBjb2RlYyBjYW4ndCBkZWNvZGUgYnl0ZSAweDgwIGluIHBvc2l0aW9uIDQ0
MTA6IGludmFsaWQgc3RhcnQgYnl0ZQ0KRVJST1I6IEFuIGVycm9yIG9jY3VyZWQgd2hlbiBydW5u
aW5nOg0KL2J1aWxkcy94ZW4tcHJvamVjdC9wZW9wbGUvYnVnc2VuZy94ZW4veGVuL3Rvb2xzL2Nv
bnZlcnRfbWlzcmFfZG9jLnB5IC1pIC9idWlsZHMveGVuLXByb2plY3QvcGVvcGxlL2J1Z3Nlbmcv
eGVuL2RvY3MvbWlzcmEvcnVsZXMucnN0IC1vIC9idWlsZHMveGVuLXByb2plY3QvcGVvcGxlL2J1
Z3NlbmcveGVuL3hlbi9jcHBjaGVjay1taXNyYS50eHQgLWogL2J1aWxkcy94ZW4tcHJvamVjdC9w
ZW9wbGUvYnVnc2VuZy94ZW4veGVuL2NwcGNoZWNrLW1pc3JhLmpzb24NCg0KU28gSSB0aGluayB0
aGF0IHRoZSBydWxlcy5yc3QgZG9lc27igJl0IGhhdmUgdGhlIGV4cGVjdGVkIHN5bnRheCwgb24g
cGF0Y2ggMSB0cnkgdG8gbGVhdmUgdGhlIHRoaXJkIOKAmC3igJggb24gdGhlIHJ1bGUgMi4xOg0K
DQoqIC0gYERpciAyLjEgPGh0dHBzOi8vZ2l0bGFiLmNvbS9NSVNSQS9NSVNSQS1DL01JU1JBLUMt
MjAxMi9FeGFtcGxlLVN1aXRlLy0vYmxvYi9tYXN0ZXIvRF8wMl8wMS5jPmBfDQotIFJlcXVpcmVk
DQotIEFsbCBzb3VyY2UgZmlsZXMgc2hhbGwgY29tcGlsZSB3aXRob3V0IGFueSBjb21waWxhdGlv
biBlcnJvcnMNCi0NCg0KQ2hlZXJzLA0KTHVjYQ0KDQo=


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 18:16:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 18:16:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610655.950122 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmI1v-0001Jr-RA; Fri, 29 Sep 2023 18:15:59 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610655.950122; Fri, 29 Sep 2023 18:15:59 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmI1v-0001Jk-OA; Fri, 29 Sep 2023 18:15:59 +0000
Received: by outflank-mailman (input) for mailman id 610655;
 Fri, 29 Sep 2023 18:15:58 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=xaAI=FN=raptorengineering.com=sanastasio@srs-se1.protection.inumbo.net>)
 id 1qmI1u-0001Je-LS
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 18:15:58 +0000
Received: from raptorengineering.com (mail.raptorengineering.com
 [23.155.224.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 3b95f6db-5ef4-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 20:15:56 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 49E578285644;
 Fri, 29 Sep 2023 13:15:55 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id QrZE8fcX8f7x; Fri, 29 Sep 2023 13:15:54 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.rptsys.com (Postfix) with ESMTP id 5AE4082856CF;
 Fri, 29 Sep 2023 13:15:54 -0500 (CDT)
Received: from mail.rptsys.com ([127.0.0.1])
 by localhost (vali.starlink.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id ZgkATqvkucEI; Fri, 29 Sep 2023 13:15:54 -0500 (CDT)
Received: from [10.11.0.3] (5.edge.rptsys.com [23.155.224.38])
 by mail.rptsys.com (Postfix) with ESMTPSA id E06128285644;
 Fri, 29 Sep 2023 13:15:53 -0500 (CDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3b95f6db-5ef4-11ee-878c-cb3800f73035
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.rptsys.com 5AE4082856CF
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=raptorengineering.com; s=B8E824E6-0BE2-11E6-931D-288C65937AAD;
	t=1696011354; bh=xsCVRKGyYaJM/8/272BDM+ViI9Cavt7wNk+6JaXwXzk=;
	h=Message-ID:Date:MIME-Version:To:From;
	b=Uw8MB5B3mp7HT31ztf94qMx0/K96HvImWSJA88dHafk4C9HtCdkpbmSoH5ac/BvBl
	 caKU8nfpROBlGMy/cAIbXBDesuqFnTRWfRR5WGWTRdCchJIJ0l+/15oxYvNrMcrp+c
	 nPnfspnbvBpYZZKtVANmZQOAUFFocmqPam3xY6Dk=
X-Virus-Scanned: amavisd-new at rptsys.com
Message-ID: <1c54864c-e2c2-56eb-1b42-6013d9e609e1@raptorengineering.com>
Date: Fri, 29 Sep 2023 13:15:53 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux ppc64le; rv:102.0) Gecko/20100101
 Thunderbird/102.14.0
Subject: Re: [PATCH 2/3] xen/ppc: Add .text.exceptions section for exception
 vectors
Content-Language: en-US
To: Andrew Cooper <andrew.cooper3@citrix.com>, xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Jan Beulich <jbeulich@suse.com>, Henry Wang <Henry.Wang@arm.com>
References: <cover.1695942864.git.sanastasio@raptorengineering.com>
 <de5b99d79671a7fe11c5720797aaa6e3207661d1.1695942864.git.sanastasio@raptorengineering.com>
 <dc966303-6b94-4b82-8b66-4c55bc325449@citrix.com>
From: Shawn Anastasio <sanastasio@raptorengineering.com>
In-Reply-To: <dc966303-6b94-4b82-8b66-4c55bc325449@citrix.com>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 9/29/23 4:28 AM, Andrew Cooper wrote:
> On 29/09/2023 12:19 am, Shawn Anastasio wrote:
>> On Power, the exception vectors must lie at a fixed address, depending
>> on the state of the Alternate Interrupt Location (AIL) field of the
>> Logical Partition Control Register (LPCR). Create a .text.exceptions
>> section in the linker script at an address suitable for AIL=3 plus an
>> accompanying assertion to pave the way for implementing exception
>> support.
> 
> Thanks - this is a perfect level of detail as far as I'm concerned as a
> PPC novice.
> 
>>
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>> ---
>>  xen/arch/ppc/include/asm/config.h | 3 +++
>>  xen/arch/ppc/xen.lds.S            | 7 +++++++
>>  2 files changed, 10 insertions(+)
>>
>> diff --git a/xen/arch/ppc/include/asm/config.h b/xen/arch/ppc/include/asm/config.h
>> index a11a09c570..e012b75beb 100644
>> --- a/xen/arch/ppc/include/asm/config.h
>> +++ b/xen/arch/ppc/include/asm/config.h
>> @@ -42,6 +42,9 @@
>>  
>>  #define XEN_VIRT_START _AC(0xc000000000000000, UL)
>>  
>> +/* Fixed address for start of the section containing exception vectors */
>> +#define EXCEPTION_VECTORS_START _AC(0xc000000000000100, UL)
> 
> The patch looks fine, but a PPC question.  Does AIL=3 really mean a hard
> coded address at 0xc000000000000100 ?
> 
> Or is it +0x100 from something else that happens to be programmed to
> XEN_VIRT_START ?
> 

AIL=3 means a hardcoded address at 0xc000000000004000, actually, but by
placing the section earlier we can take advantage of some of the space
in between ...0100 and ...4000 for things like the {h_,}exception_common
routines introduced in the next patch instead of just having the linker
pad it with nops.

(Now that I look closely though, I see that I erroneously placed those
routines in .text rather than .text.exceptions in the next patch --
that's something I'll fix for v2).

>> +
>>  #define VMAP_VIRT_START (XEN_VIRT_START + GB(1))
>>  #define VMAP_VIRT_SIZE  GB(1)
>>  
>> diff --git a/xen/arch/ppc/xen.lds.S b/xen/arch/ppc/xen.lds.S
>> index 9e46035155..9e888d7383 100644
>> --- a/xen/arch/ppc/xen.lds.S
>> +++ b/xen/arch/ppc/xen.lds.S
>> @@ -24,6 +24,10 @@ SECTIONS
>>          _stext = .;            /* Text section */
>>          *(.text.header)
>>  
>> +        . = ALIGN(256);
>> +        _stext_exceptions = .;
> 
> If this is really only used for the linker assertion, then it wants to be
> 
>     HIDDEN(_stext_exceptions = .);
> 
> otherwise the debugging symbols will have _stext_exceptions typically
> hiding exc_sysreset in the disassembly and symbol table.
>

It is indeed only used for the assertion -- I'll make this change in v2.

>> +        *(.text.exceptions)
>> +
>>          *(.text.cold)
>>          *(.text.unlikely .text.*_unlikely .text.unlikely.*)
>>  
>> @@ -184,3 +188,6 @@ ASSERT(IS_ALIGNED(__bss_end,        POINTER_ALIGN), "__bss_end is misaligned")
>>  
>>  ASSERT(!SIZEOF(.got),      ".got non-empty")
>>  ASSERT(!SIZEOF(.got.plt),  ".got.plt non-empty")
>> +
>> +ASSERT(_stext_exceptions == EXCEPTION_VECTORS_START, \
>> +       ".text.exceptions not at expected location -- .text.header too big?");
> 
> No need for ; at the end, and no need for \ either.
>

Will fix.

> As I said for patch 1, we're now at 4.18-rc1.   Does this need to be
> included now, or wait for 4.19?  There's something to be said for having
> a basic exception handler, but it is technically a new feature...
>

I don't think there's any pressing need to bring this into 4.18, unless
the burden of doing so is trivial.

> ~Andrew

Thanks,
Shawn


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 18:30:01 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 18:30:01 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610662.950132 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmIFM-00044N-6J; Fri, 29 Sep 2023 18:29:52 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610662.950132; Fri, 29 Sep 2023 18:29:52 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmIFM-00044G-3G; Fri, 29 Sep 2023 18:29:52 +0000
Received: by outflank-mailman (input) for mailman id 610662;
 Fri, 29 Sep 2023 18:29:50 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Fe2t=FN=cloud.com=andrew.cooper@srs-se1.protection.inumbo.net>)
 id 1qmIFK-00044A-SQ
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 18:29:50 +0000
Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com
 [2a00:1450:4864:20::436])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 2c591893-5ef6-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 20:29:49 +0200 (CEST)
Received: by mail-wr1-x436.google.com with SMTP id
 ffacd0b85a97d-32615eaa312so589324f8f.2
 for <xen-devel@lists.xenproject.org>; Fri, 29 Sep 2023 11:29:49 -0700 (PDT)
Received: from [10.80.67.28] (default-46-102-197-194.interdsl.co.uk.
 [46.102.197.194]) by smtp.gmail.com with ESMTPSA id
 j2-20020a5d4642000000b00317e77106dbsm21995538wrs.48.2023.09.29.11.29.48
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 29 Sep 2023 11:29:48 -0700 (PDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2c591893-5ef6-11ee-878c-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=citrix.com; s=google; t=1696012189; x=1696616989; darn=lists.xenproject.org;
        h=in-reply-to:autocrypt:references:cc:to:content-language:subject
         :from:user-agent:mime-version:date:message-id:from:to:cc:subject
         :date:message-id:reply-to;
        bh=AEa7As8/xtsWqegGei6A5Tb7gDmWHgxkdZMeYqU9Hhw=;
        b=TveDoswcSlR6IcIfqvsBG4iFFCzzqBvhobGrtTeRFtO6UWr/SzBfhHdc8PZPONEOO8
         gqPydJne+3cx1IiTb1cWCBtybDnfhQ1lhekLuauLyHYxS8nJk8jAWmsVI9og9MytMPD7
         8OCvcD5FhQnPbs6TMqGaEAO9CiffyrfJDtrhg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1696012189; x=1696616989;
        h=in-reply-to:autocrypt:references:cc:to:content-language:subject
         :from:user-agent:mime-version:date:message-id:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=AEa7As8/xtsWqegGei6A5Tb7gDmWHgxkdZMeYqU9Hhw=;
        b=GRDyev05khYlksJoYv+GZZtFpAlp0K6POtr4PYqBAyhdZeqL/FW0e7hkC1mkWGl/pa
         JpemXJi2+si4cB/EX66KRiKbZaCU2v6XHHyPXAPQ4AUXt2iq8XeDYK0sRbffVh3FQ3P0
         ug6wvlvz0uuuXsNGojFdfwJp6ebbhAVEM1OLP44mqB8qvg0d6MY81B4clx3rgQxVZbXE
         W2lyw6kjuj/t9aFX7BUw7twMjl9y0waUrtjF9Q+IHXlwQ77ULrG+cWH8PyEzGdqCGoQX
         BGe8+TASdjsOXsbFSmBhYXhN37lJG3eYHREJkt+Ier0qOO34vhRtOfwHEkH0mDPlFUn3
         8kwg==
X-Gm-Message-State: AOJu0YzQ6ZWMqkSCNZgMCUUL81QxaRs4ZlUZwNHigHMt4kRlqg1RMsoA
	7DNmqCNcOfEFE2RD4uLgYn6nGxxlLyxjL5VGFwc=
X-Google-Smtp-Source: AGHT+IE2BF0lpgwgfaaaSu1aNeA1stGgTGNY7hmwUqvq7w6VvkOW+a2Scmg6d5KsqdYpEYy7KDunBQ==
X-Received: by 2002:a5d:5610:0:b0:319:6d91:28bf with SMTP id l16-20020a5d5610000000b003196d9128bfmr4173592wrv.60.1696012188908;
        Fri, 29 Sep 2023 11:29:48 -0700 (PDT)
Content-Type: multipart/alternative;
 boundary="------------M0arufweOvb06m7RsghkJaY9"
Message-ID: <0ef3fd80-e6bf-46e2-8f2e-a349d8528cef@citrix.com>
Date: Fri, 29 Sep 2023 19:29:48 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH 2/3] xen/ppc: Add .text.exceptions section for exception
 vectors
Content-Language: en-GB
To: Shawn Anastasio <sanastasio@raptorengineering.com>,
 xen-devel@lists.xenproject.org
Cc: Timothy Pearson <tpearson@raptorengineering.com>,
 Jan Beulich <jbeulich@suse.com>, Henry Wang <Henry.Wang@arm.com>
References: <cover.1695942864.git.sanastasio@raptorengineering.com>
 <de5b99d79671a7fe11c5720797aaa6e3207661d1.1695942864.git.sanastasio@raptorengineering.com>
 <dc966303-6b94-4b82-8b66-4c55bc325449@citrix.com>
 <1c54864c-e2c2-56eb-1b42-6013d9e609e1@raptorengineering.com>
Autocrypt: addr=andrew.cooper3@citrix.com; keydata=
 xsFNBFLhNn8BEADVhE+Hb8i0GV6mihnnr/uiQQdPF8kUoFzCOPXkf7jQ5sLYeJa0cQi6Penp
 VtiFYznTairnVsN5J+ujSTIb+OlMSJUWV4opS7WVNnxHbFTPYZVQ3erv7NKc2iVizCRZ2Kxn
 srM1oPXWRic8BIAdYOKOloF2300SL/bIpeD+x7h3w9B/qez7nOin5NzkxgFoaUeIal12pXSR
 Q354FKFoy6Vh96gc4VRqte3jw8mPuJQpfws+Pb+swvSf/i1q1+1I4jsRQQh2m6OTADHIqg2E
 ofTYAEh7R5HfPx0EXoEDMdRjOeKn8+vvkAwhviWXTHlG3R1QkbE5M/oywnZ83udJmi+lxjJ5
 YhQ5IzomvJ16H0Bq+TLyVLO/VRksp1VR9HxCzItLNCS8PdpYYz5TC204ViycobYU65WMpzWe
 LFAGn8jSS25XIpqv0Y9k87dLbctKKA14Ifw2kq5OIVu2FuX+3i446JOa2vpCI9GcjCzi3oHV
 e00bzYiHMIl0FICrNJU0Kjho8pdo0m2uxkn6SYEpogAy9pnatUlO+erL4LqFUO7GXSdBRbw5
 gNt25XTLdSFuZtMxkY3tq8MFss5QnjhehCVPEpE6y9ZjI4XB8ad1G4oBHVGK5LMsvg22PfMJ
 ISWFSHoF/B5+lHkCKWkFxZ0gZn33ju5n6/FOdEx4B8cMJt+cWwARAQABzSlBbmRyZXcgQ29v
 cGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPsLBegQTAQgAJAIbAwULCQgHAwUVCgkI
 CwUWAgMBAAIeAQIXgAUCWKD95wIZAQAKCRBlw/kGpdefoHbdD/9AIoR3k6fKl+RFiFpyAhvO
 59ttDFI7nIAnlYngev2XUR3acFElJATHSDO0ju+hqWqAb8kVijXLops0gOfqt3VPZq9cuHlh
 IMDquatGLzAadfFx2eQYIYT+FYuMoPZy/aTUazmJIDVxP7L383grjIkn+7tAv+qeDfE+txL4
 SAm1UHNvmdfgL2/lcmL3xRh7sub3nJilM93RWX1Pe5LBSDXO45uzCGEdst6uSlzYR/MEr+5Z
 JQQ32JV64zwvf/aKaagSQSQMYNX9JFgfZ3TKWC1KJQbX5ssoX/5hNLqxMcZV3TN7kU8I3kjK
 mPec9+1nECOjjJSO/h4P0sBZyIUGfguwzhEeGf4sMCuSEM4xjCnwiBwftR17sr0spYcOpqET
 ZGcAmyYcNjy6CYadNCnfR40vhhWuCfNCBzWnUW0lFoo12wb0YnzoOLjvfD6OL3JjIUJNOmJy
 RCsJ5IA/Iz33RhSVRmROu+TztwuThClw63g7+hoyewv7BemKyuU6FTVhjjW+XUWmS/FzknSi
 dAG+insr0746cTPpSkGl3KAXeWDGJzve7/SBBfyznWCMGaf8E2P1oOdIZRxHgWj0zNr1+ooF
 /PzgLPiCI4OMUttTlEKChgbUTQ+5o0P080JojqfXwbPAyumbaYcQNiH1/xYbJdOFSiBv9rpt
 TQTBLzDKXok86M7BTQRS4TZ/ARAAkgqudHsp+hd82UVkvgnlqZjzz2vyrYfz7bkPtXaGb9H4
 Rfo7mQsEQavEBdWWjbga6eMnDqtu+FC+qeTGYebToxEyp2lKDSoAsvt8w82tIlP/EbmRbDVn
 7bhjBlfRcFjVYw8uVDPptT0TV47vpoCVkTwcyb6OltJrvg/QzV9f07DJswuda1JH3/qvYu0p
 vjPnYvCq4NsqY2XSdAJ02HrdYPFtNyPEntu1n1KK+gJrstjtw7KsZ4ygXYrsm/oCBiVW/OgU
 g/XIlGErkrxe4vQvJyVwg6YH653YTX5hLLUEL1NS4TCo47RP+wi6y+TnuAL36UtK/uFyEuPy
 wwrDVcC4cIFhYSfsO0BumEI65yu7a8aHbGfq2lW251UcoU48Z27ZUUZd2Dr6O/n8poQHbaTd
 6bJJSjzGGHZVbRP9UQ3lkmkmc0+XCHmj5WhwNNYjgbbmML7y0fsJT5RgvefAIFfHBg7fTY/i
 kBEimoUsTEQz+N4hbKwo1hULfVxDJStE4sbPhjbsPCrlXf6W9CxSyQ0qmZ2bXsLQYRj2xqd1
 bpA+1o1j2N4/au1R/uSiUFjewJdT/LX1EklKDcQwpk06Af/N7VZtSfEJeRV04unbsKVXWZAk
 uAJyDDKN99ziC0Wz5kcPyVD1HNf8bgaqGDzrv3TfYjwqayRFcMf7xJaL9xXedMcAEQEAAcLB
 XwQYAQgACQUCUuE2fwIbDAAKCRBlw/kGpdefoG4XEACD1Qf/er8EA7g23HMxYWd3FXHThrVQ
 HgiGdk5Yh632vjOm9L4sd/GCEACVQKjsu98e8o3ysitFlznEns5EAAXEbITrgKWXDDUWGYxd
 pnjj2u+GkVdsOAGk0kxczX6s+VRBhpbBI2PWnOsRJgU2n10PZ3mZD4Xu9kU2IXYmuW+e5KCA
 vTArRUdCrAtIa1k01sPipPPw6dfxx2e5asy21YOytzxuWFfJTGnVxZZSCyLUO83sh6OZhJkk
 b9rxL9wPmpN/t2IPaEKoAc0FTQZS36wAMOXkBh24PQ9gaLJvfPKpNzGD8XWR5HHF0NLIJhgg
 4ZlEXQ2fVp3XrtocHqhu4UZR4koCijgB8sB7Tb0GCpwK+C4UePdFLfhKyRdSXuvY3AHJd4CP
 4JzW0Bzq/WXY3XMOzUTYApGQpnUpdOmuQSfpV9MQO+/jo7r6yPbxT7CwRS5dcQPzUiuHLK9i
 nvjREdh84qycnx0/6dDroYhp0DFv4udxuAvt1h4wGwTPRQZerSm4xaYegEFusyhbZrI0U9tJ
 B8WrhBLXDiYlyJT6zOV2yZFuW47VrLsjYnHwn27hmxTC/7tvG3euCklmkn9Sl9IAKFu29RSo
 d5bD8kMSCYsTqtTfT6W4A3qHGvIDta3ptLYpIAOD2sY3GYq2nf3Bbzx81wZK14JdDDHUX2Rs
 6+ahAA==
In-Reply-To: <1c54864c-e2c2-56eb-1b42-6013d9e609e1@raptorengineering.com>

This is a multi-part message in MIME format.
--------------M0arufweOvb06m7RsghkJaY9
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

On 29/09/2023 7:15 pm, Shawn Anastasio wrote:
> On 9/29/23 4:28 AM, Andrew Cooper wrote:
>> As I said for patch 1, we're now at 4.18-rc1.   Does this need to be
>> included now, or wait for 4.19?  There's something to be said for having
>> a basic exception handler, but it is technically a new feature...
>>
> I don't think there's any pressing need to bring this into 4.18, unless
> the burden of doing so is trivial.

Ok, in which case lets not complicate 4.18 with this.

Shortly I'll start up my usual xen-next branch to hold okay'd content
for 4.19, but the patches can sit on mailing list in the short term.

Thanks,

~Andrew
--------------M0arufweOvb06m7RsghkJaY9
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 29/09/2023 7:15 pm, Shawn Anastasio
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:1c54864c-e2c2-56eb-1b42-6013d9e609e1@raptorengineering.com">
      <pre class="moz-quote-pre" wrap="">On 9/29/23 4:28 AM, Andrew Cooper wrote:<span
      style="white-space: pre-wrap">
</span></pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">As I said for patch 1, we're now at 4.18-rc1.   Does this need to be
included now, or wait for 4.19?  There's something to be said for having
a basic exception handler, but it is technically a new feature...

</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
I don't think there's any pressing need to bring this into 4.18, unless
the burden of doing so is trivial.</pre>
    </blockquote>
    <br>
    Ok, in which case lets not complicate 4.18 with this.<br>
    <br>
    Shortly I'll start up my usual xen-next branch to hold okay'd
    content for 4.19, but the patches can sit on mailing list in the
    short term.<br>
    <br>
    Thanks,<br>
    <br>
    ~Andrew<br>
  </body>
</html>

--------------M0arufweOvb06m7RsghkJaY9--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 18:34:53 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 18:34:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610666.950142 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmIK9-0006p9-SG; Fri, 29 Sep 2023 18:34:49 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610666.950142; Fri, 29 Sep 2023 18:34:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmIK9-0006p2-PG; Fri, 29 Sep 2023 18:34:49 +0000
Received: by outflank-mailman (input) for mailman id 610666;
 Fri, 29 Sep 2023 18:34:49 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qmIK9-0006ow-2K
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 18:34:49 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dd53221b-5ef6-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 20:34:46 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id C7600B81FBD;
 Fri, 29 Sep 2023 18:34:45 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0BC24C433C8;
 Fri, 29 Sep 2023 18:34:43 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dd53221b-5ef6-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696012485;
	bh=Flr1Vn5p4ZMDz7FEA1fGrSM45gVLCFWuxRudoWLlXUg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=lwHT24RLCYotYantG+hJuWr+k3WVAH/pkyHUg2clNLPPP1n1ZFJk18xQ6ofmjYSqD
	 aC7NWnzkhRR48whunMc6fw2IuCvrhBB00YqLkVP4ywck4hSPGDm1YCGIuvUxlUS3qH
	 mswnECC03balIBkNDwx2eSqnbJIgzdOG465ypScYvBHo2JKuVrnd04nNqnU5Fku625
	 o2gasMpZKmo5gjUjbqV2Jr19QYreeD40eczgzNQ74BRz81WCUoq2Ic1b8zyIboKt/v
	 9CHGYbqnp/Ow2h+d/sonLQpVM5ooaoYnrAaKgSIkNJ9m89hHF7JL8hOZTPWY95VsRP
	 n1T7vHY6RRsrg==
Date: Fri, 29 Sep 2023 11:34:40 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, consulting@bugseng.com, jbeulich@suse.com, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Liu <wl@xen.org>, Gianluca Luparini <gianluca.luparini@bugseng.com>
Subject: Re: [XEN PATCH v7 3/4] x86/include: address violations of MISRA
 C:2012 Rule 7.2
In-Reply-To: <c07fbce7-2da7-4d0b-9068-00e27b508d83@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309291134350.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1695913900.git.simone.ballarin@bugseng.com> <6f0ac778edc5de8cf079a657917696ceae919e8b.1695913900.git.simone.ballarin@bugseng.com> <alpine.DEB.2.22.394.2309281552130.1996340@ubuntu-linux-20-04-desktop>
 <c07fbce7-2da7-4d0b-9068-00e27b508d83@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 29 Sep 2023, Simone Ballarin wrote:
> On 29/09/23 00:58, Stefano Stabellini wrote:
> > On Thu, 28 Sep 2023, Simone Ballarin wrote:
> > > The xen sources contains violations of MISRA C:2012 Rule 7.2 whose
> > > headline states:
> > > "A 'u' or 'U' suffix shall be applied to all integer constants
> > > that are represented in an unsigned type".
> > > 
> > > Add the 'U' suffix to integers literals with unsigned type.
> > > Use _AC() for macro costants that are used also in assembly files.
> > > 
> > > For the sake of uniformity, the following changes are made:
> > > - add the 'U' suffix to macros in 'pci.h'
> > > - use _AC() for macros near 'X86_CR0_PG'
> > > 
> > > Signed-off-by: Gianluca Luparini <gianluca.luparini@bugseng.com>
> > > Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
> > > ---
> > > Changes in v7:
> > > - switch order of Signed-off-by tags
> > > - change tag from x86/arm to x86/include
> > > Changes in v6:
> > > - new patch obtained by splitting ASM related changes from
> > > "xen/x86: address violations of MISRA C:2012 Rule 7.2 (v5)"
> > > - use UL suffix for X86_CR0_* macros
> > > ---
> > >   xen/arch/x86/include/asm/apicdef.h   |   2 +-
> > >   xen/arch/x86/include/asm/config.h    |   2 +-
> > >   xen/arch/x86/include/asm/hpet.h      |   2 +-
> > >   xen/arch/x86/include/asm/msi.h       |   2 +-
> > >   xen/arch/x86/include/asm/msr-index.h | 182 +++++++++++++--------------
> > >   xen/arch/x86/include/asm/pci.h       |   8 +-
> > >   xen/arch/x86/include/asm/x86-defns.h |  22 ++--
> > >   7 files changed, 110 insertions(+), 110 deletions(-)
> > > 
> > > diff --git a/xen/arch/x86/include/asm/apicdef.h
> > > b/xen/arch/x86/include/asm/apicdef.h
> > > index a261436993..8d1b0087d4 100644
> > > --- a/xen/arch/x86/include/asm/apicdef.h
> > > +++ b/xen/arch/x86/include/asm/apicdef.h
> > > @@ -8,7 +8,7 @@
> > >    * Ingo Molnar <mingo@redhat.com>, 1999, 2000
> > >    */
> > >   -#define		APIC_DEFAULT_PHYS_BASE	0xfee00000
> > > +#define		APIC_DEFAULT_PHYS_BASE	0xfee00000U
> > >      #define		APIC_ID		0x20
> > >   #define			APIC_ID_MASK		(0xFFu<<24)
> > > diff --git a/xen/arch/x86/include/asm/config.h
> > > b/xen/arch/x86/include/asm/config.h
> > > index fbc4bb3416..bbced338be 100644
> > > --- a/xen/arch/x86/include/asm/config.h
> > > +++ b/xen/arch/x86/include/asm/config.h
> > > @@ -257,7 +257,7 @@ extern unsigned char boot_edid_info[128];
> > >   #endif /* CONFIG_PV32 */
> > >     #define MACH2PHYS_COMPAT_VIRT_START    HYPERVISOR_COMPAT_VIRT_START
> > > -#define MACH2PHYS_COMPAT_VIRT_END      0xFFE00000
> > > +#define MACH2PHYS_COMPAT_VIRT_END      0xFFE00000U
> > >   #define MACH2PHYS_COMPAT_NR_ENTRIES(d) \
> > >       ((MACH2PHYS_COMPAT_VIRT_END-MACH2PHYS_COMPAT_VIRT_START(d))>>2)
> > >   diff --git a/xen/arch/x86/include/asm/hpet.h
> > > b/xen/arch/x86/include/asm/hpet.h
> > > index 9919f74730..c5e8e9c8db 100644
> > > --- a/xen/arch/x86/include/asm/hpet.h
> > > +++ b/xen/arch/x86/include/asm/hpet.h
> > > @@ -41,7 +41,7 @@
> > >   #define HPET_TN_ROUTE		0x3e00
> > >   #define HPET_TN_FSB		0x4000
> > >   #define HPET_TN_FSB_CAP		0x8000
> > > -#define HPET_TN_RESERVED	0xffff0081
> > > +#define HPET_TN_RESERVED	0xffff0081U
> > >   #define HPET_TN_INT_ROUTE_CAP	(0xffffffffULL << 32)
> > >     diff --git a/xen/arch/x86/include/asm/msi.h
> > > b/xen/arch/x86/include/asm/msi.h
> > > index a53ade95c9..d89723d009 100644
> > > --- a/xen/arch/x86/include/asm/msi.h
> > > +++ b/xen/arch/x86/include/asm/msi.h
> > > @@ -37,7 +37,7 @@
> > >    */
> > >     #define MSI_ADDR_BASE_HI            0
> > > -#define MSI_ADDR_BASE_LO            0xfee00000
> > > +#define MSI_ADDR_BASE_LO            0xfee00000U
> > >   #define MSI_ADDR_BASE_MASK          (~0xfffff)
> > >   #define MSI_ADDR_HEADER             MSI_ADDR_BASE_LO
> > >   diff --git a/xen/arch/x86/include/asm/msr-index.h
> > > b/xen/arch/x86/include/asm/msr-index.h
> > > index 11ffed543a..718f8f860d 100644
> > > --- a/xen/arch/x86/include/asm/msr-index.h
> > > +++ b/xen/arch/x86/include/asm/msr-index.h
> > > @@ -22,7 +22,7 @@
> > >   #define  APIC_BASE_BSP                      (_AC(1, ULL) <<  8)
> > >   #define  APIC_BASE_EXTD                     (_AC(1, ULL) << 10)
> > >   #define  APIC_BASE_ENABLE                   (_AC(1, ULL) << 11)
> > > -#define  APIC_BASE_ADDR_MASK                0x000ffffffffff000ULL
> > > +#define  APIC_BASE_ADDR_MASK                _AC(0x000ffffffffff000, ULL)
> > 
> > This is not used by assembly code?
> > 
> > 
> > >   #define MSR_TEST_CTRL                       0x00000033
> > >   #define  TEST_CTRL_SPLITLOCK_DETECT         (_AC(1, ULL) << 29)
> > > @@ -30,7 +30,7 @@
> > >     #define MSR_INTEL_CORE_THREAD_COUNT         0x00000035
> > >   #define  MSR_CTC_THREAD_MASK                0x0000ffff
> > > -#define  MSR_CTC_CORE_MASK                  0xffff0000
> > > +#define  MSR_CTC_CORE_MASK                  _AC(0xffff0000, U)
> > 
> > Also this one is not?
> > 
> > 
> > >   #define MSR_SPEC_CTRL                       0x00000048
> > >   #define  SPEC_CTRL_IBRS                     (_AC(1, ULL) <<  0)
> > > @@ -186,7 +186,7 @@
> > >   #define MSR_UARCH_MISC_CTRL                 0x00001b01
> > >   #define  UARCH_CTRL_DOITM                   (_AC(1, ULL) <<  0)
> > >   -#define MSR_EFER                            0xc0000080 /* Extended
> > > Feature Enable Register */
> > > +#define MSR_EFER                            _AC(0xc0000080, U) /*
> > > Extended Feature Enable Register */
> > >   #define  EFER_SCE                           (_AC(1, ULL) <<  0) /*
> > > SYSCALL Enable */
> > >   #define  EFER_LME                           (_AC(1, ULL) <<  8) /* Long
> > > Mode Enable */
> > >   #define  EFER_LMA                           (_AC(1, ULL) << 10) /* Long
> > > Mode Active */
> > > @@ -199,35 +199,35 @@
> > >       (EFER_SCE | EFER_LME | EFER_LMA | EFER_NXE | EFER_SVME | EFER_FFXSE
> > > | \
> > >        EFER_AIBRSE)
> > >   -#define MSR_STAR                            0xc0000081 /* legacy mode
> > > SYSCALL target */
> > > -#define MSR_LSTAR                           0xc0000082 /* long mode
> > > SYSCALL target */
> > > -#define MSR_CSTAR                           0xc0000083 /* compat mode
> > > SYSCALL target */
> > > -#define MSR_SYSCALL_MASK                    0xc0000084 /* EFLAGS mask for
> > > syscall */
> > > -#define MSR_FS_BASE                         0xc0000100 /* 64bit FS base
> > > */
> > > -#define MSR_GS_BASE                         0xc0000101 /* 64bit GS base
> > > */
> > > -#define MSR_SHADOW_GS_BASE                  0xc0000102 /* SwapGS GS
> > > shadow */
> > > -#define MSR_TSC_AUX                         0xc0000103 /* Auxiliary TSC
> > > */
> > > +#define MSR_STAR                            _AC(0xc0000081, U) /* legacy
> > > mode SYSCALL target */
> > > +#define MSR_LSTAR                           _AC(0xc0000082, U) /* long
> > > mode SYSCALL target */
> > > +#define MSR_CSTAR                           _AC(0xc0000083, U) /* compat
> > > mode SYSCALL target */
> > > +#define MSR_SYSCALL_MASK                    _AC(0xc0000084, U) /* EFLAGS
> > > mask for syscall */
> > > +#define MSR_FS_BASE                         _AC(0xc0000100, U) /* 64bit
> > > FS base */
> > > +#define MSR_GS_BASE                         _AC(0xc0000101, U) /* 64bit
> > > GS base */
> > > +#define MSR_SHADOW_GS_BASE                  _AC(0xc0000102, U) /* SwapGS
> > > GS shadow */
> > > +#define MSR_TSC_AUX                         _AC(0xc0000103, U) /*
> > > Auxiliary TSC */
> > 
> > None of these set seems to be used by assembly code
> > 
> > 
> > > -#define MSR_K8_SYSCFG                       0xc0010010
> > > +#define MSR_K8_SYSCFG                       _AC(0xc0010010, U)
> > 
> > This one also is not?
> > 
> > 
> > >   #define  SYSCFG_MTRR_FIX_DRAM_EN            (_AC(1, ULL) << 18)
> > >   #define  SYSCFG_MTRR_FIX_DRAM_MOD_EN        (_AC(1, ULL) << 19)
> > >   #define  SYSCFG_MTRR_VAR_DRAM_EN            (_AC(1, ULL) << 20)
> > >   #define  SYSCFG_MTRR_TOM2_EN                (_AC(1, ULL) << 21)
> > >   #define  SYSCFG_TOM2_FORCE_WB               (_AC(1, ULL) << 22)
> > >   -#define MSR_K8_IORR_BASE0                   0xc0010016
> > > -#define MSR_K8_IORR_MASK0                   0xc0010017
> > > -#define MSR_K8_IORR_BASE1                   0xc0010018
> > > -#define MSR_K8_IORR_MASK1                   0xc0010019
> > > +#define MSR_K8_IORR_BASE0                   _AC(0xc0010016, U)
> > > +#define MSR_K8_IORR_MASK0                   _AC(0xc0010017, U)
> > > +#define MSR_K8_IORR_BASE1                   _AC(0xc0010018, U)
> > > +#define MSR_K8_IORR_MASK1                   _AC(0xc0010019, U)
> > 
> > These ones are not?
> > 
> > 
> > > -#define MSR_K8_TSEG_BASE                    0xc0010112 /* AMD doc:
> > > SMMAddr */
> > > -#define MSR_K8_TSEG_MASK                    0xc0010113 /* AMD doc:
> > > SMMMask */
> > > +#define MSR_K8_TSEG_BASE                    _AC(0xc0010112, U) /* AMD
> > > doc: SMMAddr */
> > > +#define MSR_K8_TSEG_MASK                    _AC(0xc0010113, U) /* AMD
> > > doc: SMMMask */
> > 
> > These ones are not?
> > 
> > >   -#define MSR_K8_VM_CR                        0xc0010114
> > > +#define MSR_K8_VM_CR                        _AC(0xc0010114, U)
> > 
> > Also this one
> > 
> > 
> > >   #define  VM_CR_INIT_REDIRECTION             (_AC(1, ULL) <<  1)
> > >   #define  VM_CR_SVM_DISABLE                  (_AC(1, ULL) <<  4)
> > >   -#define MSR_VIRT_SPEC_CTRL                  0xc001011f /* Layout
> > > matches MSR_SPEC_CTRL */
> > > +#define MSR_VIRT_SPEC_CTRL                  _AC(0xc001011f, U) /* Layout
> > > matches MSR_SPEC_CTRL */
> > 
> > And this one.
> > 
> > What am I missing? Did you also add _AC to all the places where the
> > constants end up being used in asm inline? Because I don't think that
> > asm inline needs the _AC...
> 
> Initially I've used _AC only when strictly required, then I've received
> the following comment
> (https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02207.html):
> 
> 	I understand you use _AC() here because the constant is used in
> 	assembly code. But I don't understand why you use it only here,
> 	and not throughout at least the "modern" portion of the file. I
> 	wonder what other x86 maintainers think about this.

Ah OK...

 
> >   While "UL" here instead of "U"? They are all 32-bit values.
> 
> Initially U was used, then I've received the following indication
> (https://lists.xenproject.org/archives/html/xen-devel/2023-08/msg02308.html):
> 
> 	CR0 being a 64-bit register, I consider this risky. Imo either
> 	UL needs to be used as suffix, or the change needs limiting to
> 	just PG (and even then perhaps better using UL).


In that case, I'll leave it to you and from my perspective:

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 18:37:24 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 18:37:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610671.950152 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmIMa-0007Q0-9C; Fri, 29 Sep 2023 18:37:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610671.950152; Fri, 29 Sep 2023 18:37:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmIMa-0007Ps-5V; Fri, 29 Sep 2023 18:37:20 +0000
Received: by outflank-mailman (input) for mailman id 610671;
 Fri, 29 Sep 2023 18:37:19 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qmIMZ-0007Pm-52
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 18:37:19 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 36a6983a-5ef7-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 20:37:17 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id C11C261E60;
 Fri, 29 Sep 2023 18:37:15 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1B3C6C433C7;
 Fri, 29 Sep 2023 18:37:14 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 36a6983a-5ef7-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696012635;
	bh=6AttsrdlHwcqgy5BFIqx1gbmhA9SO1rE0b9T+ky3AwA=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Z8FZhCTvVgyzqepXZQNDCLl7b4WlDI+tyKAPXSlbf9q5Y7Pr440QD1ss8goPkSOcI
	 XQ2NSUgJ2hJFpQzYIKB+Fxt04Y8l7gYhJoPxZ6PRtjtpPSGA+FEHGBtjBijQymaALb
	 KZhBIuko+WCLc9O5zhtWy2GX0cOVtNwKUaw7/wjtDgYWQ3Nwjn5drI6d3CvNadd7bt
	 zsOREvBnLDJvfw3lRZg9URX67ozM21fekligCPbakzPeKYeOQageq4doRcp/iHTZD5
	 1WzNhEksIIfxvhDD/ghQygz5iKKzaBFwSu0ZLy7G89Junmye6UDxV9Ehc1lD2e9FXF
	 2tn4zMom8o3AQ==
Date: Fri, 29 Sep 2023 11:37:12 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Luca Fancellu <Luca.Fancellu@arm.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Jan Beulich <jbeulich@suse.com>, 
    Julien Grall <julien@xen.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    "nicola.vetrini@bugseng.com" <nicola.vetrini@bugseng.com>, 
    "simone.ballarin@bugseng.com" <simone.ballarin@bugseng.com>, 
    "federico.serafini@bugseng.com" <federico.serafini@bugseng.com>
Subject: Re: Misra rule 10.3 violations report script
In-Reply-To: <AB2332E6-1EE4-4657-8403-F090D1E6C13E@arm.com>
Message-ID: <alpine.DEB.2.22.394.2309291136590.2348112@ubuntu-linux-20-04-desktop>
References: <D36FE722-43D5-4A93-B725-AD4157A1BA61@arm.com> <alpine.DEB.2.22.394.2309281609360.1996340@ubuntu-linux-20-04-desktop> <AB2332E6-1EE4-4657-8403-F090D1E6C13E@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="8323329-843683343-1696012635=:2348112"

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-843683343-1696012635=:2348112
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8BIT

On Fri, 29 Sep 2023, Luca Fancellu wrote:
> > On 29 Sep 2023, at 00:20, Stefano Stabellini <sstabellini@kernel.org> wrote:
> > 
> > On Thu, 28 Sep 2023, Luca Fancellu wrote:
> >> Hi all,
> >> 
> >> In the last MISRA meeting Stefano told me about the Rule 10.3 and that we have a lot of violations,
> >> but GCC has a way to list them as written in rules.rst.
> >> 
> >> So the issue was just that we have a lot of violations, most of them coming from headers and the
> >> Developer might feel a bit lost since the number is very high, so I’ve developed this script to take
> >> the GCC build log and create a list of unique occurrences of the violations sorted in descending
> >> order, so that who has a bit of time can try to fix some of those and maybe can start from the top
> >> of the list to fix as many as possible occurrences.
> >> 
> >> I attach the script as patch file.
> 
> Hi Stefano,
> 
> > 
> > Thanks Luca! Actually I think this is great! The script makes it much
> > easier to use the GCC output to address 10.3 violations. I think we
> > should have it in the xen.git tree.
> 
> Ok I can refine it a bit in that case and push it to the ML.
> 
> > 
> > Thanks to the script I was able to quickly address the top violation in
> > bitmap.h.
> 
> I’m wondering if we need to remove from the list the excluded files, in this
> first shot I didn’t do that but should be easy.

Uhm, maybe with a command line option?
--8323329-843683343-1696012635=:2348112--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 19:49:21 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 19:49:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610679.950161 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmJU1-0007AX-Lo; Fri, 29 Sep 2023 19:49:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610679.950161; Fri, 29 Sep 2023 19:49:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmJU1-0007AQ-JE; Fri, 29 Sep 2023 19:49:05 +0000
Received: by outflank-mailman (input) for mailman id 610679;
 Fri, 29 Sep 2023 19:49:04 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qmJU0-0007AK-4J
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 19:49:04 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 3c2346cb-5f01-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 21:49:01 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id C4BD761F96;
 Fri, 29 Sep 2023 19:48:59 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8DBA1C433C8;
 Fri, 29 Sep 2023 19:48:58 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 3c2346cb-5f01-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696016939;
	bh=tmQEkieqWFC2ArBs2Uw6mo4JCU0RmXKSjJbDYXVpN58=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=rpqFveqWPi0z4ODOcBt4kWudpiUaa6m6q/iWwlas6YtFx+kPTQ6zNg8L5BckiqSOw
	 dykIN8qZszNcvblHZ0nc+jY2vbwguSdxDFN5bwE5kNLAG4OTv2xrEA7kLhVXvrjths
	 5OrrQIUrGN2VdNpahGnDXZSsCQTypExzESzaY00gIenjCy96v4stT0rUW/n7cxKMyw
	 HllwDYbWtxpKcqCl+ZR7NDiHISZmGYzoGdwLJ0+aTeSlRfR8nqhXIm7Prs1s+XqwyY
	 sS5Thdx7oKYXWwSYK9xfxbkSjC2lNnwm1nIwDYyKyhSZ8SkLIzNLbUdgeKIvB/B48i
	 UanmHlZTj9efA==
Date: Fri, 29 Sep 2023 12:48:57 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Luca Fancellu <Luca.Fancellu@arm.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    Xen-devel <xen-devel@lists.xenproject.org>, Wei Chen <Wei.Chen@arm.com>, 
    Julien Grall <julien@xen.org>, Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
Subject: Re: [PATCH v2 3/5] arm/dom0less: put dom0less feature code in a
 separate module
In-Reply-To: <725342EA-730F-4961-88A4-43EC0CBAD5BA@arm.com>
Message-ID: <alpine.DEB.2.22.394.2309291242570.2348112@ubuntu-linux-20-04-desktop>
References: <20230927140133.631192-1-luca.fancellu@arm.com> <20230927140133.631192-4-luca.fancellu@arm.com> <alpine.DEB.2.22.394.2309281726440.1996340@ubuntu-linux-20-04-desktop> <725342EA-730F-4961-88A4-43EC0CBAD5BA@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-1360969929-1696016668=:2348112"
Content-ID: <alpine.DEB.2.22.394.2309291244320.2348112@ubuntu-linux-20-04-desktop>

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-1360969929-1696016668=:2348112
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2309291244321.2348112@ubuntu-linux-20-04-desktop>

On Fri, 29 Sep 2023, Luca Fancellu wrote:
> > On 29 Sep 2023, at 01:33, Stefano Stabellini <sstabellini@kernel.org> wrote:
> > 
> > On Wed, 27 Sep 2023, Luca Fancellu wrote:
> >> Currently the dom0less feature code is mostly inside domain_build.c
> >> and setup.c, it is a feature that may not be useful to everyone so
> >> put the code in a different compilation module in order to make it
> >> easier to disable the feature in the future.
> >> 
> >> Move gic_interrupt_t in domain_build.h to use it with the function
> >> declaration, move its comment above the declaration.
> >> 
> >> The following functions are now visible externally from domain_build
> >> because they are used also from the dom0less-build module:
> >> - get_allocation_size
> >> - set_interrupt
> >> - domain_fdt_begin_node
> >> - make_memory_node
> >> - make_resv_memory_node
> >> - make_hypervisor_node
> >> - make_psci_node
> >> - make_cpus_node
> >> - make_timer_node
> >> - handle_device_interrupts
> >> - construct_domain
> >> - process_shm
> >> 
> >> The functions allocate_static_memory and assign_static_memory_11
> >> are now externally visible, so put their declarations into
> >> domain_build.h and move the #else and stub definition in the header
> >> as well.
> >> 
> >> Move is_dom0less_mode from setup.c to dom0less-build.c and make it
> >> externally visible.
> >> 
> >> Where spotted, fix code style issues.
> >> 
> >> No functional change is intended.
> >> 
> >> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
> > 
> > This is great! A couple of questions.
> > 
> > Why was allocate_static_memory not moved to dom0less-build.c ?
> 
> My aim is to decouple the features, so in patch 4 we move (just once as Julien suggested)
> the static memory code on a module on its own, because we can have a guest booted with
> dom0less feature but having it with static memory is optional.

OK


> > Would it make sense to also move construct_dom0 to dom0less-build.c
> > given the similarities with construct_domU? I am not sure about this.
> > 
> 
> We can’t do that because the final goal of this serie is to have a Kconfig disabling dom0less,
> so in that case we will end up removing from the compilation also construct_dom0.

OK. Probably we can't do much better than this.


One more question on the code movement, and I would also like Julien and
Bertrand to express their opinions on this.

Given that code movement is painful from a git history perspective, and
given that we have to move dom0less code to xen/common anyway to make
it available to RISC-V and also x86, could we do it in one shot here?

I am not asking to refactor the code to make it buildable on RISC-V or
X86. I am only asking to move the code to xen/common/dom0less (or
xen/common/hyperlaunch or xen/common/domain-builder as Danien and
Christopher called it) the same way you are doing it as part of this
series. It shouldn't require additional work on your side I hope.
--8323329-1360969929-1696016668=:2348112--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 20:15:14 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 20:15:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610689.950175 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmJtE-0005YY-NW; Fri, 29 Sep 2023 20:15:08 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610689.950175; Fri, 29 Sep 2023 20:15:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmJtE-0005YR-Kk; Fri, 29 Sep 2023 20:15:08 +0000
Received: by outflank-mailman (input) for mailman id 610689;
 Fri, 29 Sep 2023 20:15:08 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=CPsi=FN=siemens.com=dan.driscoll@srs-se1.protection.inumbo.net>)
 id 1qmJtD-0005X6-N4
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 20:15:08 +0000
Received: from NAM11-BN8-obe.outbound.protection.outlook.com
 (mail-bn8nam11on20600.outbound.protection.outlook.com
 [2a01:111:f400:7eae::600])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id dfd1798f-5f04-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 22:15:04 +0200 (CEST)
Received: from DM6PR07MB4316.namprd07.prod.outlook.com (2603:10b6:5:c1::17) by
 BN0PR07MB8295.namprd07.prod.outlook.com (2603:10b6:408:129::23) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.27; Fri, 29 Sep
 2023 20:15:00 +0000
Received: from DM6PR07MB4316.namprd07.prod.outlook.com
 ([fe80::ca48:1494:943c:3430]) by DM6PR07MB4316.namprd07.prod.outlook.com
 ([fe80::ca48:1494:943c:3430%5]) with mapi id 15.20.6838.027; Fri, 29 Sep 2023
 20:15:00 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: dfd1798f-5f04-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=naOi9KXwlqd+uvwE7VnSfaL7X7oj/+UuJBZoSXf45y580KLf8WAmO1VaWC/xjEhnAO+EgAgvMrqkvrjOsEDsj9949A5NCY/8gImUXd+gwodtrmG/LlD5rt5ePOX1Jzh7PYpW2jI8XKXqSl9aDSfb5dQBYlLBNAGAi2JNs3aaVWlYsco3g9NGtTlCMzYNGrJc3dh09T795MQvKIUb3VL2AuQD29yC/lfEJGQR2GYKhDsE6Lz7aaOm1emk8cPXqy5/aDlBU6PAoVAc4FYod4ZC+JunQ1MLZjekyrOhYM0U0RPSqtRGz2tTQRNCK2xTfhbyfnUL4btfl7XBT+HibIh9qQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=V/hygJry5wZv/MSkmMm11JaP6xmwsgYP02waF3c6fJ4=;
 b=Z//38aB5MwpMMI2Vt6LIsRPTIQ9MT1FmXs1VWgVTBDVuBEzaDrmKSTBcvhXyTPrYOb7qigK0f3aDyujBSPL7PTdLK5G2U6D022d6N9rbBzz5QcfMQjM8+8B85Hjs5SrrqtTFHi/S+hnovr1py3bdcvNNctTdYPfcuQuJ8ABW+Bt9nd0c6D1G5BDuec/b0N1ephs18MBVq6OEFuQNYpS8Zc7v+I3HZ2mZYUHl5PhNtAsyqRR+8ONoo49Ht1x95pedVCuqGQB26n+GBCW3m0/kHhhoDHq61NwsDcHwY3O93YRMptj5OrDW+mK9WIGWryVqn/WOgcBqZefzlJxiTVCH5g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=siemens.com; dmarc=pass action=none header.from=siemens.com;
 dkim=pass header.d=siemens.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=siemens.com;
 s=selector2;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=V/hygJry5wZv/MSkmMm11JaP6xmwsgYP02waF3c6fJ4=;
 b=TfZnu3cSsEIQaeznZ1E7KtqCYyyur61iuFTw6QzMQgM5rWHE2ZHzACw45/7569YHBAx4FjeHz9NG4iVeohqbJd2fcLZrPBFHN0WrC70xvEe3pLiptxzt+ENZRIVmRkn5G3gJd3vK0Q1gBKgEvYH5kuIeeXa0S1CmpjKjsM2DVybuj49jbvgux1vyc+KBRGrXnN/hkPlx+Q4IGaUJF01E6VXOKwudrxXxYxl0sGan8sgORrldp9v7Z9w4XfFZOx1vrCaE7VYX9NBNl1n4Oke22+0h7R/u444woJF+04kg69y7LVQYteJ1TrAF/tGV0z+I6iOTV+caZ+DbWJP//VZlmQ==
From: "Driscoll, Dan" <dan.driscoll@siemens.com>
To: Julien Grall <julien@xen.org>, "xen-devel@lists.xenproject.org"
	<xen-devel@lists.xenproject.org>
CC: Stefano Stabellini <sstabellini@kernel.org>,
	"arvind.raghuraman@siemens.com" <arvind.raghuraman@siemens.com>, Bertrand
 Marquis <Bertrand.Marquis@arm.com>, "rahul.singh@arm.com"
	<rahul.singh@arm.com>, Luca Fancellu <Luca.Fancellu@arm.com>
Subject: RE: Xen on AWS EC2 Graviton 2 metal instances (c6g.metal)
Thread-Topic: Xen on AWS EC2 Graviton 2 metal instances (c6g.metal)
Thread-Index: AdnwsItjvuOZZuTtRQy72nkgCbOw3QAkdpIAAHOBb7A=
Date: Fri, 29 Sep 2023 20:15:00 +0000
Message-ID:
 <DM6PR07MB4316E030CEF6D6E27ACD58819AC0A@DM6PR07MB4316.namprd07.prod.outlook.com>
References:
 <DM6PR07MB43168B0D4DEA80BF2474B9D89AC3A@DM6PR07MB4316.namprd07.prod.outlook.com>
 <ed3ea203-4244-4bbe-a9e0-ac8882ecc83c@xen.org>
In-Reply-To: <ed3ea203-4244-4bbe-a9e0-ac8882ecc83c@xen.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
msip_labels: MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_Enabled=true;
 MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_SetDate=2023-09-29T20:14:59Z;
 MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_Method=Standard;
 MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_Name=restricted;
 MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_SiteId=38ae3bcd-9579-4fd4-adda-b42e1495d55a;
 MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_ActionId=d1533a6a-78fc-4628-b8a3-93e6a6f3a83c;
 MSIP_Label_9d258917-277f-42cd-a3cd-14c4e9ee58bc_ContentBits=0
document_confidentiality: Restricted
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=siemens.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DM6PR07MB4316:EE_|BN0PR07MB8295:EE_
x-ms-office365-filtering-correlation-id: 5b54f6af-1fc0-455f-0546-08dbc128c217
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info:
 Jk41uOvZmmV9SezOzIriEeym5bEp8kR7DYFwAWqVcfsDVF+76ptxr81aMapFk51PkGtgTqcBE/rk8mCKSHjAR0WB6Vo1iHtlGA9fWWrQdvLfHSTi0v5GoDE5nU2BfGQ8QyOPmGYZXBU3TwtD25xE+et+1hMc/bsPeWdyJP/9BgMEatfI24CJzJ4UjuIIB9CX8FAhwq0ZqTZkE4+CwNU/ZHmh7jMiWY7qrAvfka/wzyscWi2OhChuLTL9MBYe6n2SbVqFVkoj4z86tS97INWBdROz7uteqpTtrf85v6WMK/XikI95rEjFoyr5kw1eQTHTku9w2YlxT0zLTvKhIUynb92jQGv3gHxuc3ySewgM9K2E4CktjKChSD7+6MbG7mEyRQjL2wf8nuUFreMlqa+VGL9I3o6/O8ja6ZEJ2q8JkKN9Z3iAacGwyl179tV++obqNzrs/WU4RIeL5MKzECGjwZ23dOR4lRZ/CHYJ2Yfx5WpRAGMQ1bFhSOht018aAHXyrdqNi6yWtDOwqHTL99BEfIOTVADbMofkmkhmatSY91KbO1+xQ1lbRAN/96jigrCrJ6mAI9KeZ0O+oclyKRzxfbpw1jsLeiSG2nRAL69WsQc=
x-forefront-antispam-report:
 CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR07MB4316.namprd07.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(366004)(376002)(396003)(39860400002)(230922051799003)(186009)(451199024)(1800799009)(64100799003)(71200400001)(5660300002)(45080400002)(26005)(2906002)(33656002)(83380400001)(30864003)(38100700002)(82960400001)(122000001)(86362001)(38070700005)(53546011)(55016003)(7696005)(6506007)(9686003)(4326008)(8936002)(8676002)(54906003)(66946007)(66446008)(64756008)(66476007)(66556008)(316002)(41300700001)(478600001)(52536014)(966005)(76116006)(110136005);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0:
 =?us-ascii?Q?g//iC7f2neYYL0or+eQOF3UYuwd/uMOeD3Gnl/3qfAhAvj+KtWonvCqn2IiU?=
 =?us-ascii?Q?E1jXKknOb8BE1DoL8l2u96U7irZgU+D40cOWkfj0glyzEvN4xAmebLRWYEeI?=
 =?us-ascii?Q?meQEs4tk738520d8BYepV3SIPZtfdbA5OdAjE/7+ee/m1/IrE3zcCUkcG8Lb?=
 =?us-ascii?Q?mc/c5wQaP2IfCZGAoIRCjPemDYjX1VkNbRsfeDFb7wQoQdvAOC7KZwIucJuH?=
 =?us-ascii?Q?xMXl1rDQzczgVtGjAJRs3/z2W9taIyWE+b+ys+9qdhcoEyFYkfXiJVSa31dg?=
 =?us-ascii?Q?8SCA0tuAq95HmosnND3Mvw9cB/mH97eRpsneie49o1Zab9fLmTQzqb0qBbqz?=
 =?us-ascii?Q?+y1gqerDNwJMfAN9VZ0Lp61uJkfV06udg9y1QkXzhA6EZx0oeCf8rOnAJ2Bk?=
 =?us-ascii?Q?WIakjfXDN+lmyFscZAZxsCO+5TRZMBLGlpZD9KBYVLzBrO9qj1bsUAMuMGQ1?=
 =?us-ascii?Q?khwa7MEV1dfNbXEhllpdId4xnZJGofhezOz6fHF0uJPIsH7q+anaCUDo/trE?=
 =?us-ascii?Q?cUOqMKYyhJwX30+7/rTHvTcsICS5kylk6eC6Ay1M379k66P2ro1XcQ80kTAO?=
 =?us-ascii?Q?5TRgtHarbOyYY51EiN2NbO/ZiOGzVHkPm+XNdZXoGFanMcn1fmeeoPBF7k+J?=
 =?us-ascii?Q?MngVB7IV4yP6+FRujQExsaJqry+LUPfq0dNrgmRNJ/ExgvblD/kg/+j+cy5e?=
 =?us-ascii?Q?Olup42dmTp0JieDPGWWRaKoSYKqauwm+V2JIkfGZgdWpRnz2RxSRhcWIV66+?=
 =?us-ascii?Q?HCbXbExa6s0lfxsf/bOHmQf7zQi7IatyqS4D9toRUROS3ezLN9mO2LdCtK3k?=
 =?us-ascii?Q?q5YYapNFRe/WmDA4WsNB9NbjPoNOkT7O3mRAy8NnOXk0Oili6jV6oQY7RJza?=
 =?us-ascii?Q?jxt64lbN0bP+UGcYUsAsKL/Hbu6q2h4SMB6KLiD3mc98r3tf75h/hs+gPh4b?=
 =?us-ascii?Q?P7o2WvLqSIqRhehzY5INAZRUDoBQymtXVcJGYgK/KFHMPGlbkff6GKeVAQJv?=
 =?us-ascii?Q?189C/k1Rd0VCailPxNcRKtSK3tMcv3F9JC9iCHXfocT9HS6cMv3slSIHoRhR?=
 =?us-ascii?Q?+0i0ook63j0p7jN1KGIt7p3YmHKnzho+H3HkrdHPIQSMoydZvuygHYWylsqd?=
 =?us-ascii?Q?OhPiULeF9xHwAUZhkCLxr3A7kTdKJeqdYfvWTPkQpQVSrqWwystOIvAmPGrQ?=
 =?us-ascii?Q?AZ8xa+WhLQoGBVUPgDvxOk74TNr/y0ADH68Yeo0JhYDKLurB7N00ipvgMPQ3?=
 =?us-ascii?Q?UmGeNh4sI8Y/CON9icJDd5lV3nGps7DylB34sDH8dIXYQP8XVLP3tQa5Ucza?=
 =?us-ascii?Q?KScaMUiyz0fGjGiiqAmn1qVEOFlyC3ZUIBJ/lzkNhDQzgQKok1qwwAOJVRZv?=
 =?us-ascii?Q?dg5yju7/WJ0N5ycCrrzz9LRHnjasKlNjGVQh2nLSzX8vMkaqsL5M6c4xqv67?=
 =?us-ascii?Q?8zKymTTVyfsuL/cyW5G/Lh5540knoiQPXVZIHUO3eImqgQ2W9/T7MYdtVKZs?=
 =?us-ascii?Q?MF4wTfB9OskXO6s4al+/pL0FN/nPVSF8aAiZEDLTt0KBXgjTJP3hjokU3xTO?=
 =?us-ascii?Q?6NXyKZP3ahmbu9TglKG437+akhQj1D78nWynKYeS?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: siemens.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DM6PR07MB4316.namprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 5b54f6af-1fc0-455f-0546-08dbc128c217
X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Sep 2023 20:15:00.1716
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 38ae3bcd-9579-4fd4-adda-b42e1495d55a
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: Xht7s7X15gzT+2nOd0cwjCMM+KnwUrhVrPAPSTKpSqVdNzgIjEBNuETPbxGhRvus6MojAh3kkEbQi6RHShomG4P/gaEWNHD5yR8m9tRZUmU=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR07MB8295

All,

        Just an FYI - using the debug guidance from Julien on Graviton 2, w=
e have successfully been able to boot Xen and 3 Linux VMs on a Graviton 2 c=
6g.metal instance.

        The problem turned out to be that the ACPI table containing the arc=
h timer interrupt vectors had an issue - the result was that the secure phy=
sical timer IRQ was getting set to a value of 0 which resulted in Xen panic=
king at vtimer.c:75 and stop booting the system.  The quick work-around for=
 this was to just hard-code this IRQ to 29 which is the "typical" PPI assig=
ned for this interrupt (and I suspect it isn't even used, so kind of a don'=
t care).  This fixed the problem and we encountered no other issues.

        Out of curiosity, is this problem we found here one that has been s=
een before?  I guess I could argue that the ACPI tables are incorrect and s=
hould provide a valid PPI number for the secure physical timer, but I could=
 also argue that Xen shouldn't panic if this value is 0 and should maybe re=
place with a "suitable" value and continue booting since it really is not u=
sed?  I can provide more details as well as the patch used to work around t=
his issue - we are using Xen 4.16.1 BTW.

        Much appreciated for the support and help here... as we progress in=
 our work in this domain, we might have some more questions but, for right =
now, it appears that things are working properly with the limited testing w=
e conducted.

Thanks,
Dan

> -----Original Message-----
> From: Julien Grall <julien@xen.org>
> Sent: Wednesday, September 27, 2023 7:59 AM
> To: Driscoll, Dan (DI SW CAS ES TO) <dan.driscoll@siemens.com>; xen-
> devel@lists.xenproject.org
> Cc: Stefano Stabellini <sstabellini@kernel.org>; Raghuraman, Arvind (DI S=
W CAS
> ES) <arvind.raghuraman@siemens.com>; Bertrand Marquis
> <Bertrand.Marquis@arm.com>; rahul.singh@arm.com; Luca Fancellu
> <Luca.Fancellu@arm.com>
> Subject: Re: Xen on AWS EC2 Graviton 2 metal instances (c6g.metal)
>
> Hi Dan,
>
> Thanks for the report.
>
> On 26/09/2023 20:41, Driscoll, Dan wrote:
> >     First off - sorry for the very long email, but there are a lot of d=
etails related
> to this topic and I figured more details might be better than less but I =
could be
> wrong here....
> >
> >     Within Siemens Embedded, we have been doing some prototyping using
> Xen for some upcoming customer related work - this email thread attempts =
to
> explain what has been done here and our analysis of the problems we are h=
aving.
> >
> >     We have done some initial prototyping to get Xen running on an AWS
> Graviton 2 instance using an EC2 Arm64 "metal" instance (c6g.metal - no A=
WS
> hypervisor) and ran into some problems during this prototyping.
> >
> >     Since the Edge Workload Abstraction and Orchestration Layer (EWAOL)
> that is part of SOAFEE already has some enablement of Xen in various
> environments (including an Arm64 server environment), we used this as a s=
tarting
> point.
> >
> >     We were able to successfully bring up Xen and a Yocto dom0 and
> > multiple domu Yocto guests on an Arm AVA server (AVA Developer
> > Platform - 32 core Neoverse N1 server) following documented steps with
> > some minimal configuration changes (we simply extended the
> > configuration to include 3 Linux guests):
> > https://ewao/
> > l.docs.arm.com%2Fen%2Fkirkstone-
> dev%2Fmanual%2Fbuild_system.html%23bui
> > ld-
> system&data=3D05%7C01%7Cdan.driscoll%40siemens.com%7Cc7c8b262cbfc43ce
> >
> 45b908dbbf598a6d%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C63
> 831416
> >
> 3551872035%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV
> 2luMzI
> >
> iLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=3DTfGY5InUn
> BnfUO0z
> > ato7l%2Fa5IIAek%2FOip%2FdNMxuXEgM%3D&reserved=3D0
> >
> >     So, this specific EWAOL support has all the proper bitbake layers t=
o
> generate images for both bare-metal (Linux running natively) and a virtua=
lization
> build (using Xen) for AVA and also a Neoverse N1 System Development Platf=
orm
> (N1SDP), but we only verified this on AVA.
> > c6g.medium
> >     AWS also has support for EWAOL on Graviton 2, but the only supporte=
d
> > configuration is a bare-metal configuration (Linux running natively)
> > and the virtualization build hasn't been implemented in the bitbake
> > layers in their repo - here is the URL for information / instructions
> > on this support:
> > https://gith/
> > ub.com%2Faws4embeddedlinux%2Fmeta-aws-
> ewaol&data=3D05%7C01%7Cdan.driscol
> >
> l%40siemens.com%7Cc7c8b262cbfc43ce45b908dbbf598a6d%7C38ae3bcd95794f
> d4a
> >
> ddab42e1495d55a%7C1%7C0%7C638314163551872035%7CUnknown%7CTWFp
> bGZsb3d8e
> >
> yJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7
> C30
> >
> 00%7C%7C%7C&sdata=3DrPcqfn9w9C9cS81Ee5HpyupEBD%2BqDY18dvPm0N6tB
> Mk%3D&res
> > erved=3D0
> >
> https://docs.aws.am/
> azon.com%2FAWSEC2%2Flatest%2FUserGuide%2Fgrub.html&data=3D05%7C01%
> 7Cdan.driscoll%40siemens.com%7Cc7c8b262cbfc43ce45b908dbbf598a6d%7C38a
> e3bcd95794fd4addab42e1495d55a%7C1%7C0%7C638314163551872035%7CUnk
> nown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1h
> aWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=3DZwLDw%2B3vOtaVJwg%
> 2B7kgHXJcE8yuu%2F7TNewmE2Yn4AiQ%3D&reserved=3D0
> >     As part of our effort to bring this up, we did a VERY minimal patch=
 to the
> repo used for the AWS EWAOL to generate a virtualization build (attached =
meta-
> aws-ewaol.patch).  The resultant build of the AWS EWAOL support with this=
 patch
> applied does result in Xen being built as well as a dom0 Yocto kernel, bu=
t there is
> definitely missing support to properly build everything for this virtuali=
zation layer.
> Following the instructions for meta-aws-ewaol,  we generated an AMI and s=
tarted
> an EC2 instance with this AMI (c6g.metal type).  The resultant image does=
 boot,
> but it boots into the dom0 Linux kernel with problems recorded in the boo=
t log
> related to Xen (see dom0-linux-boot.txt).
> >
> >         Looking more closely at the EFI partition, it was clear that sy=
stemd-boot
> was being used and it was set-up to boot the dom0 Linux kernel and not bo=
ot into
> Xen - the Xen EFI images were not present in the EFI partition and obviou=
sly no
> launch entries existed for Xen.  To rectify this, the Xen EFI image that =
were built as
> part of the AWS EWAOL build mentioned above where placed in the EFI parti=
tion,
> along with a Xen config file that provided the dom0 Linux kernel image de=
tails.  A
> new entry was added into the EFI image for Xen and the launch conf file w=
as
> updated to boot Xen instead of dom0 Linux.  This resulted in the EC2 inst=
ance
> becoming "bricked" and no longer accessible.
> >
> >         Details on the EFI related content and changes we made are capt=
ured in
> the meta-aws-ewaol-efi-boot-changes.txt file attached above.
> >
> >         The next step was comparing the AVA Xen output that was working=
 and we
> noticed a few differences - the AVA build did enable ACPI and UNSUPPORTED
> kconfig settings whereas the AWS Xen build did not.  So, we tried again t=
o bring up
> another EC2 metal instance using the same AMI as before and utilized the =
AVA
> Xen EFI image instead and same Xen config file.  The result was the same =
- a
> "bricked" instance.
> >
> >         We will likely try to use the entire AVA flow on AWS Graviton n=
ext as it is
> using GRUB 2 instead of systemd-boot and we hope to maybe extend or enabl=
e
> some of the debug output during boot.  The AWS EC2 instances have a "seri=
al
> console", but we have yet to see any output on this console prior to Linu=
x boot logs
> - no success in getting EC2 serial output during EFI booting.
>
> That's interesting. The documentation for AWS [1] suggests that the logs =
from boot
> should be seen. They even have a page for troubleshooting using GRUB [2].
>
> I just launched a c6g.metal and I could access the serial console but the=
n it didn't
> work across reboot.
>
> I have tried a c6g.medium and the serial was working across reboot (I cou=
ld see
> some logs). So I wonder whether the serial console is there is a missing
> configuration for baremetal?
>
> >
> >         We have had a call and some email exchanges with AWS on this to=
pic
> (Luke Harvey, Jeremy Dahan, Robert DeOliveira, and Azim Siddique) and the=
y said
> there have been multiple virtualization solutions successfully booted on =
Graviton 2
> metal instances, so they felt that Xen should be useable once we figured =
out
> configuration / boot details.  The provided some guidance how we might go=
 about
> some more exploration here, but nothing really specific to supporting Xen=
.
>
> To be honest, without a properly working serial console, it is going to b=
e very
> difficult to debug any issue in Xen.
>
> Right now, it is unclear whether Xen has output anything. If we can confi=
rm the
> serial console has intended and then are still no logs, then I would sugg=
est to
> enable earlyprintk in Xen. For your Graviton2, I think the following line=
s in
> xen/.config should do the trick:
>
> CONFIG_DEBUG=3Dy
> CONFIG_EARLY_UART_CHOICE_PL011=3Dy
> CONFIG_EARLY_UART_PL011=3Dy
> CONFIG_EARLY_PRINTK=3Dy
> CONFIG_EARLY_UART_BASE_ADDRESS=3D0x83e00000
> CONFIG_EARLY_UART_PL011_BAUD_RATE=3D115200
>
> >
> >         I have attached the following files for reference:
> >
> >     * meta-aws-ewaol.patch - patch to AWS EWAOL repo found at
> https://eur01.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgithu=
b.com%25
> 2Faws4embeddedlinux%2Fmeta-aws-
> ewaol&data=3D05%7C01%7Cdan.driscoll%40siemens.com%7Cc7c8b262cbfc43ce45
> b908dbbf598a6d%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C6383
> 14163551872035%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJ
> QIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata
> =3DrPcqfn9w9C9cS81Ee5HpyupEBD%2BqDY18dvPm0N6tBMk%3D&reserved=3D0
> >     * meta-aws-ewaol-efi-boot-changes.txt - Description of EFI related
> changes made to AWS EWAOL EFI partition in attempt to boot Xen
> >     * ava.xen.config - config file for Xen build for AVA using EWAOL
> virtualization build
> >     * aws.xen.config - config file for Xen build for AWS using EWAOL
> virtualization build
> >     * xen-4.16.1.cfg - Xen config file placed in root of EFI boot
> > partition alongside xen-4.16.1.efi image
>
> May I ask why you are using 4.16.1 rather than 4.17? In general I would
> recommend to use the latest stable version or even a staging (the on-goin=
g
> development branch) for bring-up because we don't always backport everyth=
ing to
> stable branch. So a bug may have been fixed in newer revision.
>
> That said, skimming through the logs, I couldn't spot any patches that ma=
y help on
> Graviton 2.
>
> Best regards,
>
> [1]
> https://docs.aws.am/
> azon.com%2FAWSEC2%2Flatest%2FUserGuide%2Fec2-serial-
> console.html&data=3D05%7C01%7Cdan.driscoll%40siemens.com%7Cc7c8b262cbfc
> 43ce45b908dbbf598a6d%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7
> C638314163551872035%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMD
> AiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&
> sdata=3D%2BQF9rA7KVEGbGJZIX0lhCv0du4oKR5632Eff2EoC2PY%3D&reserved=3D0
> [2]
> https://docs.aws.am/
> azon.com%2FAWSEC2%2Flatest%2FUserGuide%2Fgrub.html&data=3D05%7C01%
> 7Cdan.driscoll%40siemens.com%7Cc7c8b262cbfc43ce45b908dbbf598a6d%7C38a
> e3bcd95794fd4addab42e1495d55a%7C1%7C0%7C638314163551872035%7CUnk
> nown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1h
> aWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=3DZwLDw%2B3vOtaVJwg%
> 2B7kgHXJcE8yuu%2F7TNewmE2Yn4AiQ%3D&reserved=3D0
>
> >
> > Dan Driscoll
> > Distinguished Engineer
> > Siemens DISW - Embedded Platform Solutions
>
> --
> Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 20:29:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 20:29:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610694.950185 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmK73-0000H4-5i; Fri, 29 Sep 2023 20:29:25 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610694.950185; Fri, 29 Sep 2023 20:29:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmK73-0000Gx-2X; Fri, 29 Sep 2023 20:29:25 +0000
Received: by outflank-mailman (input) for mailman id 610694;
 Fri, 29 Sep 2023 20:29:23 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qmK71-0000Gp-Cp
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 20:29:23 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id de36ee63-5f06-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 22:29:20 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 47B5661F9E;
 Fri, 29 Sep 2023 20:29:19 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id EC80AC433C7;
 Fri, 29 Sep 2023 20:29:17 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: de36ee63-5f06-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696019359;
	bh=8aXrBIhIeUcQ76eLg4oUi1q7DpgCgGhzSghNO6YOpb4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=N86GBBIoEEZKbiC1ehbypxmKbqUOKXo4P29wUwtKLb5UA3zoywd6M2rJpH+zjYOB1
	 abgd7cUqJ2WxCAA5wYd2P6aUqVfb4LwXp5PS3+ds3LNbxMKMyTpGuJdfEwDVBCrGEe
	 afxWMK5X0OfFuycolfrGwviHVw3ugxIfn8V36VZ3BISzChHffUCV1UiwhnTLmrGgU3
	 r6k8eJEKyw5uo1nmA7y/tRmXGX3yL0KOrVVruTNiQGs7ZCK/mwOvxA1g651WKoN4DS
	 OqO4W9v/X5uKy3bK+pM9ALqJdgK+DoV3I2FF4EAVNS/YjTk/Jt8MJCiC7MuG28kzAP
	 qJMxu6LQRxPcA==
Date: Fri, 29 Sep 2023 13:29:16 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: "Driscoll, Dan" <dan.driscoll@siemens.com>
cc: Julien Grall <julien@xen.org>, 
    "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>, 
    Stefano Stabellini <sstabellini@kernel.org>, 
    "arvind.raghuraman@siemens.com" <arvind.raghuraman@siemens.com>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    "rahul.singh@arm.com" <rahul.singh@arm.com>, 
    Luca Fancellu <Luca.Fancellu@arm.com>
Subject: RE: Xen on AWS EC2 Graviton 2 metal instances (c6g.metal)
In-Reply-To: <DM6PR07MB4316E030CEF6D6E27ACD58819AC0A@DM6PR07MB4316.namprd07.prod.outlook.com>
Message-ID: <alpine.DEB.2.22.394.2309291321570.2348112@ubuntu-linux-20-04-desktop>
References: <DM6PR07MB43168B0D4DEA80BF2474B9D89AC3A@DM6PR07MB4316.namprd07.prod.outlook.com> <ed3ea203-4244-4bbe-a9e0-ac8882ecc83c@xen.org> <DM6PR07MB4316E030CEF6D6E27ACD58819AC0A@DM6PR07MB4316.namprd07.prod.outlook.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

Hi Dan,

I am very glad you managed to solve the issue!

It is always difficult to know what is the right thing to do when the
firmware provides wrong or noncompliant information. One on hand a panic
can help debug a potentially broken firmware configuration. On the other
hand the panic can cause problems to users that just want to boot Xen.
Unfortunately due to the complexity of ACPI, issues like this one are
not uncommon.

In this specific case, given that we don't actually use
TIMER_PHYS_SECURE_PPI (we do use all the others: TIMER_HYP_PPI,
TIMER_VIRT_PPI and TIMER_PHYS_NONSECURE_PPI) then I think we could
safely remove the BUG at vtimer.c:75.

Julien, what do you think?


On Fri, 29 Sep 2023, Driscoll, Dan wrote:
> All,
> 
>         Just an FYI - using the debug guidance from Julien on Graviton 2, we have successfully been able to boot Xen and 3 Linux VMs on a Graviton 2 c6g.metal instance.
> 
>         The problem turned out to be that the ACPI table containing the arch timer interrupt vectors had an issue - the result was that the secure physical timer IRQ was getting set to a value of 0 which resulted in Xen panicking at vtimer.c:75 and stop booting the system.  The quick work-around for this was to just hard-code this IRQ to 29 which is the "typical" PPI assigned for this interrupt (and I suspect it isn't even used, so kind of a don't care).  This fixed the problem and we encountered no other issues.
> 
>         Out of curiosity, is this problem we found here one that has been seen before?  I guess I could argue that the ACPI tables are incorrect and should provide a valid PPI number for the secure physical timer, but I could also argue that Xen shouldn't panic if this value is 0 and should maybe replace with a "suitable" value and continue booting since it really is not used?  I can provide more details as well as the patch used to work around this issue - we are using Xen 4.16.1 BTW.
> 
>         Much appreciated for the support and help here... as we progress in our work in this domain, we might have some more questions but, for right now, it appears that things are working properly with the limited testing we conducted.
> 
> Thanks,
> Dan
> 
> > -----Original Message-----
> > From: Julien Grall <julien@xen.org>
> > Sent: Wednesday, September 27, 2023 7:59 AM
> > To: Driscoll, Dan (DI SW CAS ES TO) <dan.driscoll@siemens.com>; xen-
> > devel@lists.xenproject.org
> > Cc: Stefano Stabellini <sstabellini@kernel.org>; Raghuraman, Arvind (DI SW CAS
> > ES) <arvind.raghuraman@siemens.com>; Bertrand Marquis
> > <Bertrand.Marquis@arm.com>; rahul.singh@arm.com; Luca Fancellu
> > <Luca.Fancellu@arm.com>
> > Subject: Re: Xen on AWS EC2 Graviton 2 metal instances (c6g.metal)
> >
> > Hi Dan,
> >
> > Thanks for the report.
> >
> > On 26/09/2023 20:41, Driscoll, Dan wrote:
> > >     First off - sorry for the very long email, but there are a lot of details related
> > to this topic and I figured more details might be better than less but I could be
> > wrong here....
> > >
> > >     Within Siemens Embedded, we have been doing some prototyping using
> > Xen for some upcoming customer related work - this email thread attempts to
> > explain what has been done here and our analysis of the problems we are having.
> > >
> > >     We have done some initial prototyping to get Xen running on an AWS
> > Graviton 2 instance using an EC2 Arm64 "metal" instance (c6g.metal - no AWS
> > hypervisor) and ran into some problems during this prototyping.
> > >
> > >     Since the Edge Workload Abstraction and Orchestration Layer (EWAOL)
> > that is part of SOAFEE already has some enablement of Xen in various
> > environments (including an Arm64 server environment), we used this as a starting
> > point.
> > >
> > >     We were able to successfully bring up Xen and a Yocto dom0 and
> > > multiple domu Yocto guests on an Arm AVA server (AVA Developer
> > > Platform - 32 core Neoverse N1 server) following documented steps with
> > > some minimal configuration changes (we simply extended the
> > > configuration to include 3 Linux guests):
> > > https://ewao/
> > > l.docs.arm.com%2Fen%2Fkirkstone-
> > dev%2Fmanual%2Fbuild_system.html%23bui
> > > ld-
> > system&data=05%7C01%7Cdan.driscoll%40siemens.com%7Cc7c8b262cbfc43ce
> > >
> > 45b908dbbf598a6d%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C63
> > 831416
> > >
> > 3551872035%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV
> > 2luMzI
> > >
> > iLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=TfGY5InUn
> > BnfUO0z
> > > ato7l%2Fa5IIAek%2FOip%2FdNMxuXEgM%3D&reserved=0
> > >
> > >     So, this specific EWAOL support has all the proper bitbake layers to
> > generate images for both bare-metal (Linux running natively) and a virtualization
> > build (using Xen) for AVA and also a Neoverse N1 System Development Platform
> > (N1SDP), but we only verified this on AVA.
> > > c6g.medium
> > >     AWS also has support for EWAOL on Graviton 2, but the only supported
> > > configuration is a bare-metal configuration (Linux running natively)
> > > and the virtualization build hasn't been implemented in the bitbake
> > > layers in their repo - here is the URL for information / instructions
> > > on this support:
> > > https://gith/
> > > ub.com%2Faws4embeddedlinux%2Fmeta-aws-
> > ewaol&data=05%7C01%7Cdan.driscol
> > >
> > l%40siemens.com%7Cc7c8b262cbfc43ce45b908dbbf598a6d%7C38ae3bcd95794f
> > d4a
> > >
> > ddab42e1495d55a%7C1%7C0%7C638314163551872035%7CUnknown%7CTWFp
> > bGZsb3d8e
> > >
> > yJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7
> > C30
> > >
> > 00%7C%7C%7C&sdata=rPcqfn9w9C9cS81Ee5HpyupEBD%2BqDY18dvPm0N6tB
> > Mk%3D&res
> > > erved=0
> > >
> > https://docs.aws.am/
> > azon.com%2FAWSEC2%2Flatest%2FUserGuide%2Fgrub.html&data=05%7C01%
> > 7Cdan.driscoll%40siemens.com%7Cc7c8b262cbfc43ce45b908dbbf598a6d%7C38a
> > e3bcd95794fd4addab42e1495d55a%7C1%7C0%7C638314163551872035%7CUnk
> > nown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1h
> > aWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=ZwLDw%2B3vOtaVJwg%
> > 2B7kgHXJcE8yuu%2F7TNewmE2Yn4AiQ%3D&reserved=0
> > >     As part of our effort to bring this up, we did a VERY minimal patch to the
> > repo used for the AWS EWAOL to generate a virtualization build (attached meta-
> > aws-ewaol.patch).  The resultant build of the AWS EWAOL support with this patch
> > applied does result in Xen being built as well as a dom0 Yocto kernel, but there is
> > definitely missing support to properly build everything for this virtualization layer.
> > Following the instructions for meta-aws-ewaol,  we generated an AMI and started
> > an EC2 instance with this AMI (c6g.metal type).  The resultant image does boot,
> > but it boots into the dom0 Linux kernel with problems recorded in the boot log
> > related to Xen (see dom0-linux-boot.txt).
> > >
> > >         Looking more closely at the EFI partition, it was clear that systemd-boot
> > was being used and it was set-up to boot the dom0 Linux kernel and not boot into
> > Xen - the Xen EFI images were not present in the EFI partition and obviously no
> > launch entries existed for Xen.  To rectify this, the Xen EFI image that were built as
> > part of the AWS EWAOL build mentioned above where placed in the EFI partition,
> > along with a Xen config file that provided the dom0 Linux kernel image details.  A
> > new entry was added into the EFI image for Xen and the launch conf file was
> > updated to boot Xen instead of dom0 Linux.  This resulted in the EC2 instance
> > becoming "bricked" and no longer accessible.
> > >
> > >         Details on the EFI related content and changes we made are captured in
> > the meta-aws-ewaol-efi-boot-changes.txt file attached above.
> > >
> > >         The next step was comparing the AVA Xen output that was working and we
> > noticed a few differences - the AVA build did enable ACPI and UNSUPPORTED
> > kconfig settings whereas the AWS Xen build did not.  So, we tried again to bring up
> > another EC2 metal instance using the same AMI as before and utilized the AVA
> > Xen EFI image instead and same Xen config file.  The result was the same - a
> > "bricked" instance.
> > >
> > >         We will likely try to use the entire AVA flow on AWS Graviton next as it is
> > using GRUB 2 instead of systemd-boot and we hope to maybe extend or enable
> > some of the debug output during boot.  The AWS EC2 instances have a "serial
> > console", but we have yet to see any output on this console prior to Linux boot logs
> > - no success in getting EC2 serial output during EFI booting.
> >
> > That's interesting. The documentation for AWS [1] suggests that the logs from boot
> > should be seen. They even have a page for troubleshooting using GRUB [2].
> >
> > I just launched a c6g.metal and I could access the serial console but then it didn't
> > work across reboot.
> >
> > I have tried a c6g.medium and the serial was working across reboot (I could see
> > some logs). So I wonder whether the serial console is there is a missing
> > configuration for baremetal?
> >
> > >
> > >         We have had a call and some email exchanges with AWS on this topic
> > (Luke Harvey, Jeremy Dahan, Robert DeOliveira, and Azim Siddique) and they said
> > there have been multiple virtualization solutions successfully booted on Graviton 2
> > metal instances, so they felt that Xen should be useable once we figured out
> > configuration / boot details.  The provided some guidance how we might go about
> > some more exploration here, but nothing really specific to supporting Xen.
> >
> > To be honest, without a properly working serial console, it is going to be very
> > difficult to debug any issue in Xen.
> >
> > Right now, it is unclear whether Xen has output anything. If we can confirm the
> > serial console has intended and then are still no logs, then I would suggest to
> > enable earlyprintk in Xen. For your Graviton2, I think the following lines in
> > xen/.config should do the trick:
> >
> > CONFIG_DEBUG=y
> > CONFIG_EARLY_UART_CHOICE_PL011=y
> > CONFIG_EARLY_UART_PL011=y
> > CONFIG_EARLY_PRINTK=y
> > CONFIG_EARLY_UART_BASE_ADDRESS=0x83e00000
> > CONFIG_EARLY_UART_PL011_BAUD_RATE=115200
> >
> > >
> > >         I have attached the following files for reference:
> > >
> > >     * meta-aws-ewaol.patch - patch to AWS EWAOL repo found at
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%25
> > 2Faws4embeddedlinux%2Fmeta-aws-
> > ewaol&data=05%7C01%7Cdan.driscoll%40siemens.com%7Cc7c8b262cbfc43ce45
> > b908dbbf598a6d%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C6383
> > 14163551872035%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJ
> > QIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata
> > =rPcqfn9w9C9cS81Ee5HpyupEBD%2BqDY18dvPm0N6tBMk%3D&reserved=0
> > >     * meta-aws-ewaol-efi-boot-changes.txt - Description of EFI related
> > changes made to AWS EWAOL EFI partition in attempt to boot Xen
> > >     * ava.xen.config - config file for Xen build for AVA using EWAOL
> > virtualization build
> > >     * aws.xen.config - config file for Xen build for AWS using EWAOL
> > virtualization build
> > >     * xen-4.16.1.cfg - Xen config file placed in root of EFI boot
> > > partition alongside xen-4.16.1.efi image
> >
> > May I ask why you are using 4.16.1 rather than 4.17? In general I would
> > recommend to use the latest stable version or even a staging (the on-going
> > development branch) for bring-up because we don't always backport everything to
> > stable branch. So a bug may have been fixed in newer revision.
> >
> > That said, skimming through the logs, I couldn't spot any patches that may help on
> > Graviton 2.
> >
> > Best regards,
> >
> > [1]
> > https://docs.aws.am/
> > azon.com%2FAWSEC2%2Flatest%2FUserGuide%2Fec2-serial-
> > console.html&data=05%7C01%7Cdan.driscoll%40siemens.com%7Cc7c8b262cbfc
> > 43ce45b908dbbf598a6d%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7
> > C638314163551872035%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMD
> > AiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&
> > sdata=%2BQF9rA7KVEGbGJZIX0lhCv0du4oKR5632Eff2EoC2PY%3D&reserved=0
> > [2]
> > https://docs.aws.am/
> > azon.com%2FAWSEC2%2Flatest%2FUserGuide%2Fgrub.html&data=05%7C01%
> > 7Cdan.driscoll%40siemens.com%7Cc7c8b262cbfc43ce45b908dbbf598a6d%7C38a
> > e3bcd95794fd4addab42e1495d55a%7C1%7C0%7C638314163551872035%7CUnk
> > nown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1h
> > aWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=ZwLDw%2B3vOtaVJwg%
> > 2B7kgHXJcE8yuu%2F7TNewmE2Yn4AiQ%3D&reserved=0
> >
> > >
> > > Dan Driscoll
> > > Distinguished Engineer
> > > Siemens DISW - Embedded Platform Solutions
> >
> > --
> > Julien Grall
> 


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 20:41:39 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 20:41:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610703.950194 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKIl-00044v-4v; Fri, 29 Sep 2023 20:41:31 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610703.950194; Fri, 29 Sep 2023 20:41:31 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKIl-00044o-1v; Fri, 29 Sep 2023 20:41:31 +0000
Received: by outflank-mailman (input) for mailman id 610703;
 Fri, 29 Sep 2023 20:41:30 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qmKIk-00044d-4s
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 20:41:30 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 8f989d3c-5f08-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 22:41:27 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 3A8D561F9E;
 Fri, 29 Sep 2023 20:41:26 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2D4CBC433C7;
 Fri, 29 Sep 2023 20:41:24 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 8f989d3c-5f08-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696020085;
	bh=dzhZ1mSCmrLGt1p3geeq1DE/AqRgIGGPUC20hGh9mjg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=dwkbbKvMaIeeORe7fj39Aek332vZibWSpdFIIiA0Cy5VERaedMeEF1hsc5mvHgj5p
	 soIvAw7Ad1YQ9IMGuky92O2sumtCisRcdHbMHhKvorIEWc19FIrNoeuWnRxYaGF6eD
	 T3qObMDz42/KjmTFmPT4aaRxF33wiIaAl12T52qW9i+k4UELozVwtrpfubyPbH3s9d
	 SxdEHzeCygKcQnRG5IjO4Hb7I2NcaSlYhwf8P5rw31y6P2y2JG/yYVaBV2hUjwsGD8
	 R7RY5Sqa1MmL9U93pSA0hBCZEpANIdcevVHCi/0sRen1Rz8H+0UR+4cLVQZr3qYLId
	 MCNoeWZAf2FLQ==
Date: Fri, 29 Sep 2023 13:41:22 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    Jan Beulich <jbeulich@suse.com>, consulting@bugseng.com, 
    Andrew Cooper <andrew.cooper3@citrix.com>, 
    George Dunlap <george.dunlap@citrix.com>, Julien Grall <julien@xen.org>, 
    Wei Liu <wl@xen.org>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Bertrand Marquis <bertrand.marquis@arm.com>, 
    Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>, 
    xen-devel@lists.xenproject.org, roberto.bagnara@bugseng.com
Subject: Re: [XEN PATCH v2 00/10] address violations of MISRA C:2012 Directive
 4.10
In-Reply-To: <5d42e276-67ca-4f56-910f-d2c95a91de34@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309291339310.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1694510856.git.simone.ballarin@bugseng.com> <b62205a1-885b-ea4e-3ce2-7ad58cfc938d@suse.com> <f1759081-eb18-4597-82b6-d7d9ee1754ab@bugseng.com> <e0ff3307-99ee-7740-bc5f-52dd7f589057@suse.com> <c2b10554-673c-4452-a35c-0d2f314e8ad2@bugseng.com>
 <f0cd8400-5e37-6704-75ce-d965540bc2b7@suse.com> <alpine.DEB.2.22.394.2309281515570.1996340@ubuntu-linux-20-04-desktop> <5d42e276-67ca-4f56-910f-d2c95a91de34@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 29 Sep 2023, Simone Ballarin wrote:
> On 29/09/23 00:24, Stefano Stabellini wrote:
> > On Thu, 28 Sep 2023, Jan Beulich wrote:
> > > On 28.09.2023 15:17, Simone Ballarin wrote:
> > > > On 28/09/23 14:51, Jan Beulich wrote:
> > > > > On 28.09.2023 14:46, Simone Ballarin wrote:
> > > > > > On 13/09/23 10:02, Jan Beulich wrote:
> > > > > > > On 12.09.2023 11:36, Simone Ballarin wrote:
> > > > > > > > Add or move inclusion guards to address violations of
> > > > > > > > MISRA C:2012 Directive 4.10 ("Precautions shall be taken in
> > > > > > > > order
> > > > > > > > to prevent the contents of a header file being included more
> > > > > > > > than
> > > > > > > > once").
> > > > > > > > 
> > > > > > > > Inclusion guards must appear at the beginning of the headers
> > > > > > > > (comments are permitted anywhere) and the #if directive cannot
> > > > > > > > be used for other checks.
> > > > > > > > 
> > > > > > > > Simone Ballarin (10):
> > > > > > > >      misra: add deviation for headers that explicitly avoid
> > > > > > > > guards
> > > > > > > >      misra: modify deviations for empty and generated headers
> > > > > > > >      misra: add deviations for direct inclusion guards
> > > > > > > >      xen/arm: address violations of MISRA C:2012 Directive 4.10
> > > > > > > >      xen/x86: address violations of MISRA C:2012 Directive 4.10
> > > > > > > >      x86/EFI: address violations of MISRA C:2012 Directive 4.10
> > > > > > > >      xen/common: address violations of MISRA C:2012 Directive
> > > > > > > > 4.10
> > > > > > > >      xen/efi: address violations of MISRA C:2012 Directive 4.10
> > > > > > > >      xen: address violations of MISRA C:2012 Directive 4.10
> > > > > > > >      x86/asm: address violations of MISRA C:2012 Directive 4.10
> > > > > > > 
> > > > > > > Just to mention it here again for the entire series, seeing that
> > > > > > > despite
> > > > > > > my earlier comments to this effect a few R-b have arrived: If
> > > > > > > private
> > > > > > > headers need to gain guards (for, imo, no real reason), we first
> > > > > > > need to
> > > > > > > settle on a naming scheme for these guards, such that guards used
> > > > > > > in
> > > > > > > private headers aren't at risk of colliding with ones used headers
> > > > > > > living in one of the usual include directories. IOW imo fair parts
> > > > > > > of
> > > > > > > this series may need redoing.
> > > > > > > 
> > > > > > > Jan
> > > > > > > 
> > > > > > 
> > > > > > My proposal is:
> > > > > > - the relative path from "xen/arch" for files in this directory
> > > > > >      (i.e. X86_X86_X86_MMCONFIG_H for
> > > > > > "xen/arch/x86/x86_64/mmconfig.h";
> > > > > 
> > > > > X86_X86_64_MMCONFIG_H that is?
> > > > > 
> > > > > Yet then this scheme won't hold for xen/arch/include/asm/... ? It's
> > > > > also
> > > > > not clear whether you're deliberately omitting leading/trailing
> > > > > underscores
> > > > > here, which may be a way to distinguish private from global headers.
> > > > 
> > > > Each name that begins with a double or single underscore (__, _)
> > > > followed by an uppercase letter is reserved. Using a reserved identifier
> > > > is an undefined-b.
> > > > 
> > > > I would be better to avoid them.
> > > 
> > > I'm with you about avoiding them, except that we use such all over the
> > > place. Taking this together with ...
> > > 
> > > > > > - for the others, the entire path.
> > > > > 
> > > > > What exactly is "entire" here?
> > > > 
> > > > Let me try again.
> > > > 
> > > > If we are inside xen/arch the relative path starting from this
> > > > directory:
> > > >     | xen/arch/x86/include/asm/compat.h
> > > >     X86_INCLUDE_ASM_COMPAT_H
> > > > 
> > > > For xen/include, the current convention.
> > > > Maybe, in a future patch, we can consider removing the leading _.
> > > > 
> > > > For the others, the relative path after xen:
> > > >     | xen/common/efi/efi.h
> > > >     COMMON_EFI_EFI_H
> > > 
> > > ... this you're effectively suggesting to change all existing guards.
> > > That's an option, but likely not a preferred one. Personally I'd prefer
> > > if in particular the headers in xen/include/ and in xen/arch/*include/
> > > didn't needlessly include _INCLUDE_ in their guard names.
> > > 
> > > I'm really curious what others think.
> > 
> > If it is a MISRA requirement to avoid names that begin with single or
> > double underscore, then I think we should bite the bullet and change all
> > guard names, taking the opportunity to make them consistent.
> > 
> 
> Yes, it is.
> 
> Rule 21.2, found in Set3, addresses this Undef.-b.:
> A reserved identifier or reserved macro name shall not be declared.

OK. Adding Roberto in CC. I think we should discuss 21.2 during the next
MISRA C meeting. If 21.2 is accepted then we should go down the route of
a global rename here which would also benefit consistency across the
codebase.


> > If it is not a MISRA requirement, then I think we should go for the path
> > of least resistance and try to make the smallest amount of changes
> > overall, which seems to be:
> > 
> > - for xen/include/blah.h, __BLAH_H__
> > - for xen/arch/arm/asm/include/blah.h, __ASM_ARM_BLAH_H__
> > - for xen/arch/x86/asm/include/blah.h, it is far less consistent, maybe
> > __ASM_X86_BLAH_H__ ?



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 20:44:22 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 20:44:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610709.950205 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKLV-0005pj-JW; Fri, 29 Sep 2023 20:44:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610709.950205; Fri, 29 Sep 2023 20:44:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKLV-0005pc-FT; Fri, 29 Sep 2023 20:44:21 +0000
Received: by outflank-mailman (input) for mailman id 610709;
 Fri, 29 Sep 2023 20:44:20 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qmKLU-0005pU-GJ
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 20:44:20 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id f5a8165e-5f08-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 22:44:19 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id C5A9C6204B;
 Fri, 29 Sep 2023 20:44:17 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id BF1A3C433C7;
 Fri, 29 Sep 2023 20:44:16 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: f5a8165e-5f08-11ee-878c-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696020257;
	bh=mYWmJrVwdxnXz7KzjjNk/2YpYGUzKXvy2wafBy+diYg=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=Q4DBr80iwKLQ1lE2z6H10p4D2MsQvQ6VbUPK4vIg7mUaWnFG0EkPFkWhJdP7yiW9q
	 fu8PYVpVz4f/6DUxhuNiG89ge3UuR/oxYFlO8Hht+UnfZjJx97vjypQ5if+Ty3eQbe
	 weSU7KJy8aVOCOZfjHIrNJJlTB4Bt9I3o38zI5hT3QDBjP1AQHOKMkak5K+3HI/Kaa
	 cQ273cwbhbawFieO62FzMs7lvNA7dHlStWO/Y15PyVVyGmxldF0epAfoKkp42YRsuI
	 tfxUNSKCQdK7AdyUhWf7XO0Ku+PYArJxhOv+OvI3TeT/u8T8XNv33z3QiwQhw4Z1jD
	 fM6Ct2NDII26w==
Date: Fri, 29 Sep 2023 13:44:15 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Simone Ballarin <simone.ballarin@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    Doug Goldstein <cardoe@cardoe.com>, 
    Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [XEN PATCH] automation/eclair: update accepted and clean
 guidelines
In-Reply-To: <b163d56b606a86a8772e97cd1938c737aeef4754.1696003647.git.simone.ballarin@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309291341590.2348112@ubuntu-linux-20-04-desktop>
References: <b163d56b606a86a8772e97cd1938c737aeef4754.1696003647.git.simone.ballarin@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-1318117603-1696020195=:2348112"
Content-ID: <alpine.DEB.2.22.394.2309291344010.2348112@ubuntu-linux-20-04-desktop>

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-1318117603-1696020195=:2348112
Content-Type: text/plain; CHARSET=US-ASCII
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2309291344011.2348112@ubuntu-linux-20-04-desktop>

On Fri, 29 Sep 2023, Simone Ballarin wrote:
> This patch updates accepted and clean guidelines selectors.
> 
> Align accepted selector with docs/misra/rules.txt.
> Add rule 7.3 in the clean selector for ARM.
> Avoid regular expressions in all service selectors: usign them
> requires escaping dots, which make selectors hard to read.
> 
> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>

Acked-by: Stefano Stabellini <sstabellini@kernel.org>

Due to Xen being in code freeze, I committed this patch to a private
branch. I'll merge it upstream in Xen as soon as the tree reopens.

https://gitlab.com/xen-project/people/sstabellini/xen.git for-4.19


> ---
>  automation/eclair_analysis/ECLAIR/tagging.ecl | 9 +++++----
>  1 file changed, 5 insertions(+), 4 deletions(-)
> 
> diff --git a/automation/eclair_analysis/ECLAIR/tagging.ecl b/automation/eclair_analysis/ECLAIR/tagging.ecl
> index 3f589fd716..78a0bc948b 100644
> --- a/automation/eclair_analysis/ECLAIR/tagging.ecl
> +++ b/automation/eclair_analysis/ECLAIR/tagging.ecl
> @@ -18,7 +18,8 @@
>  #######################
>  
>  -doc="Accepted guidelines as reported in XEN/docs/misra/rules.rst"
> --service_selector={accepted_guidelines,"^(MC3R1\\.D1\\.1|MC3R1\\.D2\\.1|MC3R1\\.D4\\.3|MC3R1\\.D4\\.7|MC3R1\\.D4\\.10|MC3R1\\.D4\\.11|MC3R1\\.D4\\.14|MC3R1\\.R1\\.1|MC3R1\\.R1\\.3|MC3R1\\.R1\\.4|MC3R1\\.R2\\.1|MC3R1\\.R2\\.6|MC3R1\\.R2\\.2|MC3R1\\.R3\\.1|MC3R1\\.R3\\.2|MC3R1\\.R4\\.1|MC3R1\\.R4\\.2|MC3R1\\.R5\\.1|MC3R1\\.R5\\.2|MC3R1\\.R5\\.3|MC3R1\\.R5\\.4|MC3R1\\.R5\\.6|MC3R1\\.R6\\.1|MC3R1\\.R6\\.2|MC3R1\\.R7\\.1|MC3R1\\.R7\\.2|MC3R1\\.R7\\.3|MC3R1\\.R7\\.4|MC3R1\\.R8\\.1|MC3R1\\.R8\\.2|MC3R1\\.R8\\.3|MC3R1\\.R8\\.4|MC3R1\\.R8\\.5|MC3R1\\.R8\\.6|MC3R1\\.R8\\.8|MC3R1\\.R8\\.10|MC3R1\\.R8\\.12|MC3R1\\.R8\\.14|MC3R1\\.R9\\.1|MC3R1\\.R9\\.2|MC3R1\\.R9\\.3|MC3R1\\.R9\\.4|MC3R1\\.R9\\.5|MC3R1\\.R12\\.5|MC3R1\\.R13\\.6|MC3R1\\.R13\\.1|MC3R1\\.R14\\.1|MC3R1\\.R16\\.7|MC3R1\\.R17\\.3|MC3R1\\.R17\\.4|MC3R1\\.R17\\.6|MC3R1\\.R18\\.3|MC3R1\\.R19\\.1|MC3R1\\.R20\\.7|MC3R1\\.R20\\.13|MC3R1\\.R20\\.14|MC3R1\\.R21\\.13|MC3R1\\.R21\\.17|MC3R1\\.R21\\.18|MC3R1\\.R21\\.19|MC3R1\\.R21\\.20|MC3R1\\
 .R21\\.21|MC3R1\\.R22\\.2|MC3R1\\.R22\\.4|MC3R1\\.R22\\.5|MC3R1\\.R22\\.6)$"
> +-service_selector={accepted_guidelines,
> +    "MC3R1.D1.1||MC3R1.D2.1||MC3R1.D4.1||MC3R1.D4.3||MC3R1.D4.7||MC3R1.D4.10||MC3R1.D4.11||MC3R1.D4.14||MC3R1.R1.1||MC3R1.R1.3||MC3R1.R1.4||MC3R1.R2.1||MC3R1.R2.2||MC3R1.R2.6||MC3R1.R2.2||MC3R1.R3.1||MC3R1.R3.2||MC3R1.R4.1||MC3R1.R4.2||MC3R1.R5.1||MC3R1.R5.2||MC3R1.R5.3||MC3R1.R5.4||MC3R1.R5.6||MC3R1.R6.1||MC3R1.R6.2||MC3R1.R7.1||MC3R1.R7.2||MC3R1.R7.3||MC3R1.R7.4||MC3R1.R8.1||MC3R1.R8.2||MC3R1.R8.3||MC3R1.R8.4||MC3R1.R8.5||MC3R1.R8.6||MC3R1.R8.8||MC3R1.R8.10||MC3R1.R8.12||MC3R1.R8.14||MC3R1.R9.1||MC3R1.R9.2||MC3R1.R9.3||MC3R1.R9.4||MC3R1.R9.5||MC3R1.R10.1||MC3R1.R10.2||MC3R1.R10.3||MC3R1.R10.4||MC3R1.R12.5||MC3R1.R13.6||MC3R1.R13.1||MC3R1.R14.1||MC3R1.R14.3||MC3R1.R16.7||MC3R1.R17.3||MC3R1.R17.4||MC3R1.R17.6||MC3R1.R18.3||MC3R1.R19.1||MC3R1.R20.7||MC3R1.R20.13||MC3R1.R20.14||MC3R1.R21.13||MC3R1.R21.17||MC3R1.R21.18||MC3R1.R21.19||MC3R1.R21.20||MC3R1.R21.21||MC3R1.R22.2||MC3R1.R22.4||MC3R1.R22.5||MC3R1.R22.6"
>  }
>  -doc="All reports of accepted guidelines are tagged as accepted."
>  -reports+={status:accepted,"service(accepted_guidelines)"}
> @@ -29,17 +30,17 @@
>  
>  -doc_begin="Clean guidelines: new violations for these guidelines are not accepted."
>  
> --service_selector={clean_guidelines_common,"^(MC3R1\\.D1\\.1|MC3R1\\.D2\\.1|MC3R1\\.D4\\.11|MC3R1\\.D4\\.14|MC3R1\\.R1\\.1|MC3R1\\.R1\\.3|MC3R1\\.R1\\.4|MC3R1\\.R2\\.2|MC3R1\\.R3\\.1|MC3R1\\.R3\\.2|MC3R1\\.R4\\.1|MC3R1\\.R5\\.1|MC3R1\\.R5\\.2|MC3R1\\.R5\\.4|MC3R1\\.R6\\.1|MC3R1\\.R6\\.2|MC3R1\\.R7\\.1|MC3R1\\.R8\\.1|MC3R1\\.R8\\.5|MC3R1\\.R8\\.8|MC3R1\\.R8\\.10|MC3R1\\.R8\\.12|MC3R1\\.R8\\.14|MC3R1\\.R9\\.2|MC3R1\\.R9\\.4|MC3R1\\.R9\\.5|MC3R1\\.R12\\.5|MC3R1\\.R17\\.3|MC3R1\\.R17\\.4|MC3R1\\.R17\\.6|MC3R1\\.R21\\.13|MC3R1\\.R21\\.19|MC3R1\\.R21\\.21|MC3R1\\.R22\\.2|MC3R1\\.R22\\.4|MC3R1\\.R22\\.5|MC3R1\\.R22\\.6)$"
> +-service_selector={clean_guidelines_common,"MC3R1.D1.1||MC3R1.D2.1||MC3R1.D4.11||MC3R1.D4.14||MC3R1.R1.1||MC3R1.R1.3||MC3R1.R1.4||MC3R1.R2.2||MC3R1.R3.1||MC3R1.R3.2||MC3R1.R4.1||MC3R1.R5.1||MC3R1.R5.2||MC3R1.R5.4||MC3R1.R6.1||MC3R1.R6.2||MC3R1.R7.1||MC3R1.R8.1||MC3R1.R8.5||MC3R1.R8.8||MC3R1.R8.10||MC3R1.R8.12||MC3R1.R8.14||MC3R1.R9.2||MC3R1.R9.4||MC3R1.R9.5||MC3R1.R12.5||MC3R1.R17.3||MC3R1.R17.4||MC3R1.R17.6||MC3R1.R21.13||MC3R1.R21.19||MC3R1.R21.21||MC3R1.R22.2||MC3R1.R22.4||MC3R1.R22.5||MC3R1.R22.6"
>  }
>  
>  -setq=target,getenv("XEN_TARGET_ARCH")
>  
>  if(string_equal(target,"x86_64"),
> -    service_selector({"additional_clean_guidelines","^(MC3R1\\.D4\\.3)$"})
> +    service_selector({"additional_clean_guidelines","MC3R1.D4.3"})
>  )
>  
>  if(string_equal(target,"arm64"),
> -    service_selector({"additional_clean_guidelines","^(MC3R1\\.R5\\.3|MC3R1\\.R7\\.2|MC3R1\\.R8\\.6|MC3R1\\.R9\\.3)$"})
> +    service_selector({"additional_clean_guidelines","MC3R1.R5.3||MC3R1.R7.2||MC3R1.R7.3||MC3R1.R8.6||MC3R1.R9.3"})
>  )
>  
>  -reports+={clean:added,"service(clean_guidelines_common||additional_clean_guidelines)"}
> -- 
> 2.34.1
> 
--8323329-1318117603-1696020195=:2348112--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 20:51:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 20:51:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610715.950214 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKSG-0007W5-An; Fri, 29 Sep 2023 20:51:20 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610715.950214; Fri, 29 Sep 2023 20:51:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKSG-0007Vy-85; Fri, 29 Sep 2023 20:51:20 +0000
Received: by outflank-mailman (input) for mailman id 610715;
 Fri, 29 Sep 2023 20:51:19 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qmKSF-0007Vr-LW
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 20:51:19 +0000
Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id eed32887-5f09-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 22:51:18 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by sin.source.kernel.org (Postfix) with ESMTP id A03BBCE24A8;
 Fri, 29 Sep 2023 20:51:13 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id D2B08C433C8;
 Fri, 29 Sep 2023 20:51:11 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: eed32887-5f09-11ee-878c-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696020672;
	bh=dNxV4njiNUYAdQ7hT8iUuivCbfjhYNPcBNFgJPOF6LE=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=idVTmv9JA4z6cG+bwRmTvIAEstjU22sY8txYN0vQbHgodFwa0IOwzoR06Lp7VBJix
	 P8T6BVkBOiwVDsaWy9SgAVEM7a5KIfXk4ucRj28BUGrdx+r9icHhY6cf3sJd9lv2Bh
	 CqiKcgLyIcRYxWuGKrjRlbHCBaLjckKh35XCnBhQsoY6enJFZsr8P5G7ZRaYUjlCwe
	 NUVvctPwJpjEQ7o0oyufVHcRHYOGnYlI2itLEQDNsynQ4bhkO5IYomDEgKPlDH0Tq+
	 eNja9MucmV6OgfrySlRJKOFk0OgHar/Hu6aXjJTvOzLu+5y7JMFl87TbrUbwirJegx
	 FoQuh182/JXPw==
Date: Fri, 29 Sep 2023 13:51:10 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Federico Serafini <federico.serafini@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Liu <wl@xen.org>, Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH] x86/msi: address violations of MISRA C:2012 Rules
 8.2 and 8.3
In-Reply-To: <d8023a832f77dc872a92e71c4df2da39ddbe06b0.1695978595.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309291351012.2348112@ubuntu-linux-20-04-desktop>
References: <d8023a832f77dc872a92e71c4df2da39ddbe06b0.1695978595.git.federico.serafini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 29 Sep 2023, Federico Serafini wrote:
> Add missing parameter names and make function declarations and
> definitions consistent.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 20:53:13 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 20:53:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610718.950224 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKU2-0000cb-LF; Fri, 29 Sep 2023 20:53:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610718.950224; Fri, 29 Sep 2023 20:53:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKU2-0000cU-IR; Fri, 29 Sep 2023 20:53:10 +0000
Received: by outflank-mailman (input) for mailman id 610718;
 Fri, 29 Sep 2023 20:53:09 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qmKU1-0000Ye-Dc
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 20:53:09 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org
 [2604:1380:4641:c500::1])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 312197ce-5f0a-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 22:53:08 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id EF91462029;
 Fri, 29 Sep 2023 20:53:06 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A9A27C433C7;
 Fri, 29 Sep 2023 20:53:05 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 312197ce-5f0a-11ee-878c-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696020786;
	bh=BK0F8me+AI2nLgpcgCWv4RDpQHvjDWUGvi6Cmz0c1AI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=oWDmDS6f7McMeNZX41oW+rXyL4/KZgoCYlRZUwsKjW8Z7O3m4SGhEFmBu7LcqIRV5
	 0RlIfRBpDgRmUfyF+1xrMqZZti5/Bp58N1H9uvIcPS3ex3Uu5YOmC+I9eGBI+xUY3h
	 F9zqUPEkpRVIDh0HAsoAgpRs38mgsSIPX5TUG4D+6365OXA4YITUvO39k70IsodrbL
	 O/lSWDURUj1CekHS5IlvS0NGO6zA9YthFSYfS3TYGSrbstJIIlba0AMPfjXL5e602y
	 EKyVhyvRPpzYoOrzY+u4vgHodpoq8wRfsadg7EGBsSOQWOUb4UMphclTt3wEgtkTl6
	 kBhmvi21lHiLw==
Date: Fri, 29 Sep 2023 13:53:04 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Federico Serafini <federico.serafini@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Liu <wl@xen.org>, Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 2/4] x86/uaccess: address violations of MISRA C:2012
 Rule 8.3
In-Reply-To: <7e32d3b6c078a7692668a509d05c44175ad99310.1695972930.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309291352560.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1695972930.git.federico.serafini@bugseng.com> <7e32d3b6c078a7692668a509d05c44175ad99310.1695972930.git.federico.serafini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 29 Sep 2023, Federico Serafini wrote:
> Make function declarations and definitions consistent.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 20:53:57 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 20:53:57 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610721.950234 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKUm-0001MW-TV; Fri, 29 Sep 2023 20:53:56 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610721.950234; Fri, 29 Sep 2023 20:53:56 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKUm-0001MP-Qi; Fri, 29 Sep 2023 20:53:56 +0000
Received: by outflank-mailman (input) for mailman id 610721;
 Fri, 29 Sep 2023 20:53:55 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qmKUl-00014h-Mn
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 20:53:55 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 4c5218c3-5f0a-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 22:53:53 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 945C361F9E;
 Fri, 29 Sep 2023 20:53:52 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 56B82C433C7;
 Fri, 29 Sep 2023 20:53:51 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4c5218c3-5f0a-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696020832;
	bh=2B856vGkSTMJAMikwkE5b97Idn5yLE+F6kWpkmavanI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=DFTKGYnhznCUdOreGdQjwsNSw0hnAppKR9sRDW89ZOh/f0ucalqBmTl1UnLeS4qM2
	 Gsy9EHQyznk5hQ66bVE7xk76FXl5UY5DefhElFiAR9y2zm++H9d3PEhkdOsb4a1ZM0
	 vQwW08x1Qr93mUPSux8DfXlafFzyMw2zl9TP6Buk1hHrd5DFrlqRbOrlhqt7pkmjbs
	 8XughOHYar9m4y13zStyoLy8JDwaOePUQY54mJEKBD0WeF3/nRV1SQN1gbBdO/Tk6s
	 K7NPQ4xyiZIljVwzS9LOMjWYywnNJA0OD/2fL0RWpnmr2s7ftIf4y6TyBcTqFVApNr
	 PLQFPEup2pMEQ==
Date: Fri, 29 Sep 2023 13:53:49 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Federico Serafini <federico.serafini@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Liu <wl@xen.org>, Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 3/4] x86/xstate: address a violation of MISRA C:2012
 Rule 8.3
In-Reply-To: <198577fa8876efc48a08a89b55fa5f95694b37c1.1695972930.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309291353430.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1695972930.git.federico.serafini@bugseng.com> <198577fa8876efc48a08a89b55fa5f95694b37c1.1695972930.git.federico.serafini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 29 Sep 2023, Federico Serafini wrote:
> Make function declaration and definition consistent.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 20:54:45 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 20:54:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610724.950244 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKVY-0001tf-5N; Fri, 29 Sep 2023 20:54:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610724.950244; Fri, 29 Sep 2023 20:54:44 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKVY-0001tY-2h; Fri, 29 Sep 2023 20:54:44 +0000
Received: by outflank-mailman (input) for mailman id 610724;
 Fri, 29 Sep 2023 20:54:43 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qmKVX-0001pn-2H
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 20:54:43 +0000
Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 69251b67-5f0a-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 22:54:42 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by dfw.source.kernel.org (Postfix) with ESMTP id 0D5C062045;
 Fri, 29 Sep 2023 20:54:41 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id B9655C433C8;
 Fri, 29 Sep 2023 20:54:39 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 69251b67-5f0a-11ee-878c-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696020880;
	bh=2B856vGkSTMJAMikwkE5b97Idn5yLE+F6kWpkmavanI=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=YNui5MH89YjyJ2BBtvXZwkCUYmqp5OmODzD32aLbaxo4fmF2VTUg8zw1kxesbg2GS
	 V+hGl8iD6pa0EvVIIS11sQWX6PH/2eQMdS4k4I6HgCg2wjz/PY6dDmNPOS8063HEGg
	 VKNgVkW2/ZWKdAZN5rzx2JTfqdb51e4wBBfLw5nzEldxxy8O06aRZmvp5FLYCnCboj
	 1IVaZRdY/7iCE6o89mCRnakCs1yFIG5Scv1WQAx+EhGEdN0RRcOMfI5UWVqiNVI6zx
	 kzxrOvv27rkbiX7LONAXcxPWwTs2+htdealYEBvYKpOeWGe6rLzEm81jUkpIeL5ACW
	 1T4RHXhd87+Ow==
Date: Fri, 29 Sep 2023 13:54:38 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Federico Serafini <federico.serafini@bugseng.com>
cc: xen-devel@lists.xenproject.org, consulting@bugseng.com, 
    Jan Beulich <jbeulich@suse.com>, Andrew Cooper <andrew.cooper3@citrix.com>, 
    =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com>, 
    Wei Liu <wl@xen.org>, Henry Wang <henry.wang@arm.com>
Subject: Re: [XEN PATCH 4/4] x86/psr: address a violation of MISRA C:2012
 Rule 8.3
In-Reply-To: <c7673a1cd70e1f4901b8f6a6a0ffe3019c9307ac.1695972930.git.federico.serafini@bugseng.com>
Message-ID: <alpine.DEB.2.22.394.2309291354300.2348112@ubuntu-linux-20-04-desktop>
References: <cover.1695972930.git.federico.serafini@bugseng.com> <c7673a1cd70e1f4901b8f6a6a0ffe3019c9307ac.1695972930.git.federico.serafini@bugseng.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 29 Sep 2023, Federico Serafini wrote:
> Make function declaration and definition consistent.
> No functional change.
> 
> Signed-off-by: Federico Serafini <federico.serafini@bugseng.com>

Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>



From xen-devel-bounces@lists.xenproject.org Fri Sep 29 21:03:50 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 21:03:50 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610729.950255 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKeG-0004jT-0I; Fri, 29 Sep 2023 21:03:44 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610729.950255; Fri, 29 Sep 2023 21:03:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKeF-0004jM-T4; Fri, 29 Sep 2023 21:03:43 +0000
Received: by outflank-mailman (input) for mailman id 610729;
 Fri, 29 Sep 2023 21:03:42 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=w1P3=FN=amd.com=Stewart.Hildebrand@srs-se1.protection.inumbo.net>)
 id 1qmKeD-0004h1-T8
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 21:03:42 +0000
Received: from NAM10-MW2-obe.outbound.protection.outlook.com
 (mail-mw2nam10on2060e.outbound.protection.outlook.com
 [2a01:111:f400:7e89::60e])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id a9308afa-5f0b-11ee-9b0d-b553b5be7939;
 Fri, 29 Sep 2023 23:03:38 +0200 (CEST)
Received: from DS7PR03CA0265.namprd03.prod.outlook.com (2603:10b6:5:3b3::30)
 by PH8PR12MB7326.namprd12.prod.outlook.com (2603:10b6:510:216::7) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Fri, 29 Sep
 2023 21:03:32 +0000
Received: from DS3PEPF000099DF.namprd04.prod.outlook.com
 (2603:10b6:5:3b3:cafe::29) by DS7PR03CA0265.outlook.office365.com
 (2603:10b6:5:3b3::30) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.27 via Frontend
 Transport; Fri, 29 Sep 2023 21:03:32 +0000
Received: from SATLEXMB03.amd.com (165.204.84.17) by
 DS3PEPF000099DF.mail.protection.outlook.com (10.167.17.202) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.20.6838.14 via Frontend Transport; Fri, 29 Sep 2023 21:03:31 +0000
Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Fri, 29 Sep
 2023 16:03:31 -0500
Received: from [172.20.57.36] (10.180.168.240) by SATLEXMB03.amd.com
 (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.27 via Frontend
 Transport; Fri, 29 Sep 2023 16:03:29 -0500
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a9308afa-5f0b-11ee-9b0d-b553b5be7939
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=UOBNdEOTz95gaXmyvqCq04B9FZ0IDafvXZmaXM/scL3hxK03QCs2TqfgX1Fd8sTp8m8A+GF2KXJIOk9aM2bldSc5Bljgmu+/Zu/aO7SLiOxS6vc9f0YRZ/YmZ66Yt2aAWOHrX3q+gohd0q+B2AAoGceupsIKb8VsRduyopIvuNeerrz/Ea6pJah6EGKhdeGYfd/MtXWGUZQy/Q8EbS/kHFVNW0nlgokn/QaBfJUYQYi1VZ+8iXF+AB3ED3ozTw9J6HJzn5XVgK0SsVxoORMoKla8gB7/PSQs/E7gHHG5AGeuXnWqMICXhrMKi7k3qPknEU+tV/ovXRKUC6miHgeX6g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=+faOQx7oloYsx/+3vWU/dQDWIUfjbXsWX7LCct0P9Z4=;
 b=XDZaQV7evpE6KC0NZjC2lxVFIsVPQ7wagOkPPfj/Ak3Vc3HOHAvt9O5xMr6XanAmEc22NVCwqCgaNIYko1CyRPyNlw/xG0yAbDE83X9KC8tkNPI9PLJ1titQnirrXoKkDGPwrQ99hrv18OyuzS+34VBK0ziwZdtR4DL9hrrP3gUOIOYAcEy++k5XQt9dHGLtSxV/v87WWnrkbWYOgCV2BiPuxYI1w/PnwGVcyj1b9VMKaFJMbjdTu0/ZLsqMukwfV91jb9sjNxGAT2Ns4G2KUMobEj7VEWdljkXueu7jg89p6nyZGBAUS/GeVwySgEEWRBdlhflOyyWnPle4swp29g==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
 165.204.84.17) smtp.rcpttodomain=xen.org smtp.mailfrom=amd.com; dmarc=pass
 (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
 dkim=none (message not signed); arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=+faOQx7oloYsx/+3vWU/dQDWIUfjbXsWX7LCct0P9Z4=;
 b=m2fvy6iUP4HdhUf/RYIcigYBUwYQmZAPU+LjYEZn5AzhEydK0q2WmDQszSzjroutaPRnSrMJKWUlE7Earl7NP7+ZZ8TsWjVtH8iilNuE0Fd/fO5sx5xmPxmutK12hleOvOfHmxcmL5S/KlTt8iXzioNph5pv+wDSxrAwLzgtQOQ=
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
 smtp.mailfrom=amd.com; dkim=none (message not signed)
 header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
 165.204.84.17 as permitted sender) receiver=protection.outlook.com;
 client-ip=165.204.84.17; helo=SATLEXMB03.amd.com; pr=C
Message-ID: <21d58a9f-5563-b745-7938-70db6b7e10f2@amd.com>
Date: Fri, 29 Sep 2023 17:03:29 -0400
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.15.1
Subject: Re: [PATCH v4 4/7] iommu/arm: Introduce iommu_add_dt_pci_sideband_ids
 API
Content-Language: en-US
To: Julien Grall <julien@xen.org>, <xen-devel@lists.xenproject.org>
CC: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>, Stefano Stabellini
	<sstabellini@kernel.org>, Jan Beulich <jbeulich@suse.com>, Paul Durrant
	<paul@xen.org>, =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com>,
	Rahul Singh <rahul.singh@arm.com>, Bertrand Marquis
	<bertrand.marquis@arm.com>
References: <20230607030220.22698-1-stewart.hildebrand@amd.com>
 <20230607030220.22698-5-stewart.hildebrand@amd.com>
 <855fd25d-07bb-0b08-4c25-75e652c142a6@xen.org>
From: Stewart Hildebrand <stewart.hildebrand@amd.com>
In-Reply-To: <855fd25d-07bb-0b08-4c25-75e652c142a6@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: DS3PEPF000099DF:EE_|PH8PR12MB7326:EE_
X-MS-Office365-Filtering-Correlation-Id: 38aadaa5-b455-4e47-59aa-08dbc12f89a5
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	s+q/4+cXkbQDyN5WoyCnv39YKz8b8wUPsCrprZbTgEd6vdkeVz7vS2hJYy2VFWXCHfTkEnN/HBmLcYmnu+fkNVr/fWha5a2GhhV6eon0z9h9p6Sn5Z82VcKckas7XVfU/Imlq4EVxpgt8xnUbqEbRzk+GvaN69gSyvDXDT6zUZTN5E70eRE3dgK2oo8EzhdgUzVF+SVG55hBGLxSLEkbyGruDvLlNzfyLKiehQC86nJ3qTu4Q9SmZCyA6yYOB5kgbY+8Blxa+z7VDSH6wFKIP+YuoHy0Pw47EExmdNwDWR7EjrMEbY2aahwPtLnz17zSVHTEQd6z8kKxgaucd2b6lx18edfgbNvgoN5YNKW/sHbcJi9nri2MEltpsp+lmxflYvnQS6DEBtWfdutNoJeXxRgKfG3UuZjQnIgp5xi/ZNXqt21x1NCJ07zY2dcudYIVpz6bdneiQkAYICtuIb1xP0g65WUZ3je6+bBne3A50X6VzDiQlovgvI1jAgd7X5x9ZHP00tsnc4b67L5V1PoSEihDKHeqAlVXsXNv+vBMdCKMrrB//tFjAWAhlQ+GKMIUMVpZJM9o+/hjhYQPmicUaW26VdsYlcxmpIljDr+/v3DRQuOArYbfUgOsgrI0hAmp0T6JxRzXSbKswv3JWHive4AyHYUHNvGzIkth2orMr6PXE32DTwdZQxrBQFJsr0aIQSuu2A5hWEhha5OpWcILWH4h1dFJE/vSVMlobrwh/w8fYARpt47IKTaDX7sjQ9AuJyo9Nad0PYqjj2YED5s8aPy1/8h+rdNQKc4joJI647z10AQhQwwp5n/Q0tvnZVhrma6qzQJJ590D2L0sbcLZHw==
X-Forefront-Antispam-Report:
	CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(39860400002)(396003)(346002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(82310400011)(36840700001)(40470700004)(46966006)(4326008)(54906003)(110136005)(40480700001)(16576012)(5660300002)(70586007)(70206006)(41300700001)(44832011)(8936002)(316002)(45080400002)(8676002)(47076005)(2906002)(40460700003)(31686004)(30864003)(356005)(82740400003)(426003)(478600001)(36860700001)(966005)(26005)(2616005)(81166007)(86362001)(53546011)(83380400001)(31696002)(36756003)(336012)(36900700001)(43740500002);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Sep 2023 21:03:31.8120
 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 38aadaa5-b455-4e47-59aa-08dbc12f89a5
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB03.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
	DS3PEPF000099DF.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB7326

On 7/4/23 05:35, Julien Grall wrote:
> Hi,
> 
> On 07/06/2023 04:02, Stewart Hildebrand wrote:
>> From: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
>>
>> The main purpose of this patch is to add a way to register PCI device
>> (which is behind the IOMMU) using the generic PCI-IOMMU DT bindings [1]
>> before assigning that device to a domain.
>>
>> This behaves similarly to the existing iommu_add_dt_device API, except it
>> handles PCI devices, and it is to be invoked from the add_device hook in the
>> SMMU driver.
>>
>> The function of_map_id to translate an ID through a downstream mapping
> 
> You called the function dt_map_id in Xen.

I will fix

>> (which is also suitable for mapping Requester ID) was borrowed from Linux
>> (v5.10-rc6) and updated according to the Xen code base.
>>
>> [1] https://www.kernel.org/doc/Documentation/devicetree/bindings/pci/pci-iommu.txt
>>
>> Signed-off-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
>> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@amd.com>
>> ---
>> v3->v4:
>> * wrap #include <asm/acpi.h> and if ( acpi_disabled ) in #ifdef CONFIG_ACPI
>> * fix Michal's remarks about style, parenthesis, and print formats
>> * remove !ops->dt_xlate check since it is already in iommu_dt_xlate helper
>> * rename s/iommu_dt_pci_map_id/dt_map_id/ because it is generic, not specific
>>    to iommu
>> * update commit description
>>
>> v2->v3:
>> * new patch title (was: iommu/arm: Introduce iommu_add_dt_pci_device API)
>> * renamed function
>>    from: iommu_add_dt_pci_device
>>    to: iommu_add_dt_pci_sideband_ids
>> * removed stale ops->add_device check
>> * iommu.h: add empty stub iommu_add_dt_pci_sideband_ids for !HAS_DEVICE_TREE
>> * iommu.h: add iommu_add_pci_sideband_ids helper
>> * iommu.h: don't wrap prototype in #ifdef CONFIG_HAS_PCI
>> * s/iommu_fwspec_free(pci_to_dev(pdev))/iommu_fwspec_free(dev)/
>>
>> v1->v2:
>> * remove extra devfn parameter since pdev fully describes the device
>> * remove ops->add_device() call from iommu_add_dt_pci_device(). Instead, rely on
>>    the existing iommu call in iommu_add_device().
>> * move the ops->add_device and ops->dt_xlate checks earlier
>>
>> downstream->v1:
>> * rebase
>> * add const qualifier to struct dt_device_node *np arg in dt_map_id()
>> * add const qualifier to struct dt_device_node *np declaration in iommu_add_pci_device()
>> * use stdint.h types instead of u8/u32/etc...
>> * rename functions:
>>    s/dt_iommu_xlate/iommu_dt_xlate/
>>    s/dt_map_id/iommu_dt_pci_map_id/
>>    s/iommu_add_pci_device/iommu_add_dt_pci_device/
>> * add device_is_protected check in iommu_add_dt_pci_device
>> * wrap prototypes in CONFIG_HAS_PCI
>>
>> (cherry picked from commit 734e3bf6ee77e7947667ab8fa96c25b349c2e1da from
>>   the downstream branch poc/pci-passthrough from
>>   https://gitlab.com/xen-project/people/bmarquis/xen-arm-poc.git)
>> ---
>>   xen/drivers/passthrough/device_tree.c | 134 ++++++++++++++++++++++++++
>>   xen/include/xen/device_tree.h         |  25 +++++
>>   xen/include/xen/iommu.h               |  22 ++++-
>>   3 files changed, 180 insertions(+), 1 deletion(-)
>>
>> diff --git a/xen/drivers/passthrough/device_tree.c b/xen/drivers/passthrough/device_tree.c
>> index ff9e66ebf92a..bd0aed5df651 100644
>> --- a/xen/drivers/passthrough/device_tree.c
>> +++ b/xen/drivers/passthrough/device_tree.c
>> @@ -154,6 +154,140 @@ static int iommu_dt_xlate(struct device *dev,
>>       return ops->dt_xlate(dev, iommu_spec);
>>   }
>>
>> +#ifdef CONFIG_HAS_PCI
> 
> The code below doesn't seem to be specific to PCI.

I will move dt_map_id() outside the #ifdef CONFIG_HAS_PCI ...

> 
>> +int dt_map_id(const struct dt_device_node *np, uint32_t id,
>> +              const char *map_name, const char *map_mask_name,
>> +              struct dt_device_node **target, uint32_t *id_out)
> 
> AFAICT, this function can also be used outside of the IOMMU code. So
> shouldn't this be implemented in common/device_tree.c?

... to common/device_tree.c.

>> +{
>> +    uint32_t map_mask, masked_id, map_len;
>> +    const __be32 *map = NULL;
>> +
>> +    if ( !np || !map_name || (!target && !id_out) )
>> +        return -EINVAL;
>> +
>> +    map = dt_get_property(np, map_name, &map_len);
>> +    if ( !map )
>> +    {
>> +        if ( target )
>> +            return -ENODEV;
>> +
>> +        /* Otherwise, no map implies no translation */
>> +        *id_out = id;
>> +        return 0;
>> +    }
>> +
>> +    if ( !map_len || (map_len % (4 * sizeof(*map))) )
>> +    {
>> +        printk(XENLOG_ERR "%s: Error: Bad %s length: %u\n", np->full_name,
>> +               map_name, map_len);
> 
> I think it would be helpful if you add the function name in the error
> message.

Will do

>> +        return -EINVAL;
>> +    }
>> +
>> +    /* The default is to select all bits. */
>> +    map_mask = 0xffffffff;
> 
> Please add a U. That said, I would switch to GENMASK(31, 0) so it is
> easier to check the value.

OK, I will use GENMASK and add #include <xen/bitops.h>.

>> +
>> +    /*
>> +     * Can be overridden by "{iommu,msi}-map-mask" property.
>> +     * If df_property_read_u32() fails, the default is used.
> 
> s/df/dt/

Will fix, thanks for spotting this

>> +     */
>> +    if ( map_mask_name )
>> +        dt_property_read_u32(np, map_mask_name, &map_mask);
>> +
>> +    masked_id = map_mask & id;
>> +    for ( ; (int)map_len > 0; map_len -= 4 * sizeof(*map), map += 4 )
> 
> Why do you cast map_len to 'int'?

No good reason, I will remove the cast.

>> +    {
>> +        struct dt_device_node *phandle_node;
>> +        uint32_t id_base = be32_to_cpup(map + 0);
>> +        uint32_t phandle = be32_to_cpup(map + 1);
>> +        uint32_t out_base = be32_to_cpup(map + 2);
>> +        uint32_t id_len = be32_to_cpup(map + 3);
>> +
>> +        if ( id_base & ~map_mask )
>> +        {
>> +            printk(XENLOG_ERR "%s: Invalid %s translation - %s-mask (0x%"PRIx32") ignores id-base (0x%"PRIx32")\n",
>> +                   np->full_name, map_name, map_name, map_mask, id_base);
> 
> Same here about adding the function name.

Will do

>> +            return -EFAULT;
>> +        }
>> +
>> +        if ( (masked_id < id_base) || (masked_id >= (id_base + id_len)) )
>> +            continue;
>> +
>> +        phandle_node = dt_find_node_by_phandle(phandle);
>> +        if ( !phandle_node )
>> +            return -ENODEV;
>> +
>> +        if ( target )
>> +        {
>> +            if ( !*target )
>> +                *target = phandle_node;
>> +
>> +            if ( *target != phandle_node )
>> +                continue;
>> +        }
>> +
>> +        if ( id_out )
>> +            *id_out = masked_id - id_base + out_base;
>> +
>> +        printk(XENLOG_DEBUG "%s: %s, using mask %08"PRIx32", id-base: %08"PRIx32", out-base: %08"PRIx32", length: %08"PRIx32", id: %08"PRIx32" -> %08"PRIx32"\n",
> 
> How about using dprintk()?

OK

>> +               np->full_name, map_name, map_mask, id_base, out_base, id_len, id,
>> +               masked_id - id_base + out_base);
>> +        return 0;
>> +    }
>> +
>> +    printk(XENLOG_ERR "%s: no %s translation for id 0x%"PRIx32" on %s\n",
>> +           np->full_name, map_name, id, (target && *target) ? (*target)->full_name : NULL);
> 
> Same here about adding the function name.

I'll change this one to dprintk too, since it's not necessarily an error condition to reach here (see below).

>> +
>> +    /*
>> +     * NOTE: Linux bypasses translation without returning an error here,
>> +     * but should we behave in the same way on Xen? Restrict for now.
>> +     */
> 
> Can you outline why we would want to bypass the translation?

We can reach here if the iommu-map property doesn't cover all possible RIDs, or is otherwise malformed in some way. E.g. you might have iommu-map = <0x0 &smmu 0x8000 0x8000>;. RIDs 0x0-0x7fff will get translated, but RIDs 0x8000-0xffff won't. Also, RIDs 0x8000-0xffff won't have the &smmu phandle reference.

Reference the iommu-map DT binding [1] linked in the commit message for more info.

On an ARM platform, it would probably be an error to not apply a RID -> stream ID translation. However, this code is not ARM specific. Also, in case of no translation, the SMMU driver will fail to add the device, because the *target = phandle_node; line above would not get executed. So I think we can safely change it to return 0, which is the same as of_map_id in Linux.

>> +    return -EFAULT;
>> +}
>> +
>> +int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev)
>> +{
>> +    const struct iommu_ops *ops = iommu_get_ops();
>> +    struct dt_phandle_args iommu_spec = { .args_count = 1 };
>> +    struct device *dev = pci_to_dev(pdev);
>> +    const struct dt_device_node *np;
>> +    int rc = NO_IOMMU;
> 
> AFAICT, the initial value will never be read. So is it necessary?

You're right, no need to initialize. I will fix.

>> +
>> +    if ( !iommu_enabled )
>> +        return NO_IOMMU;
>> +
>> +    if ( !ops )
>> +        return -EINVAL;
>> +
>> +    if ( device_is_protected(dev) )
>> +        return 0;
> 
> These two lines are a bit odd to read because you would think that if
> the device is protected, then you want to continue translation. So can
> you add a comment explaining what this check means?

Since dropping ("xen/arm: Move is_protected flag to struct device") the is_protected check is no longer relevant. I will remove it.

>> +
>> +    if ( dev_iommu_fwspec_get(dev) )
>> +        return -EEXIST;
>> +
>> +    np = pci_find_host_bridge_node(pdev);
>> +    if ( !np )
>> +        return -ENODEV;
>> +
>> +    /*
>> +     * According to the Documentation/devicetree/bindings/pci/pci-iommu.txt
>> +     * from Linux.
>> +     */
>> +    rc = dt_map_id(np, PCI_BDF(pdev->bus, pdev->devfn), "iommu-map",
>> +                   "iommu-map-mask", &iommu_spec.np, iommu_spec.args);
>> +    if ( rc )
>> +        return (rc == -ENODEV) ? NO_IOMMU : rc;
>> +
>> +    rc = iommu_dt_xlate(dev, &iommu_spec);
>> +    if ( rc < 0 )
>> +    {
>> +        iommu_fwspec_free(dev);
>> +        return -EINVAL;
>> +    }
>> +
>> +    return rc;
>> +}
>> +#endif /* CONFIG_HAS_PCI */
>> +
>>   int iommu_add_dt_device(struct dt_device_node *np)
>>   {
>>       const struct iommu_ops *ops = iommu_get_ops();
>> diff --git a/xen/include/xen/device_tree.h b/xen/include/xen/device_tree.h
>> index c2f315140560..8385cd538a58 100644
>> --- a/xen/include/xen/device_tree.h
>> +++ b/xen/include/xen/device_tree.h
>> @@ -892,6 +892,31 @@ int dt_count_phandle_with_args(const struct dt_device_node *np,
>>    */
>>   int dt_get_pci_domain_nr(struct dt_device_node *node);
>>
>> +#ifdef CONFIG_HAS_PCI
> 
> In Xen, we don't usually add #ifdef for prototype only.

OK, I will remove the #ifdef

>> +/**
>> + * dt_map_id - Translate an ID through a downstream mapping.
>> + * @np: root complex device node.
>> + * @id: device ID to map.
>> + * @map_name: property name of the map to use.
>> + * @map_mask_name: optional property name of the mask to use.
>> + * @target: optional pointer to a target device node.
>> + * @id_out: optional pointer to receive the translated ID.
>> + *
>> + * Given a device ID, look up the appropriate implementation-defined
>> + * platform ID and/or the target device which receives transactions on that
>> + * ID, as per the "iommu-map" and "msi-map" bindings. Either of @target or
>> + * @id_out may be NULL if only the other is required. If @target points to
>> + * a non-NULL device node pointer, only entries targeting that node will be
>> + * matched; if it points to a NULL value, it will receive the device node of
>> + * the first matching target phandle, with a reference held.
>> + *
>> + * Return: 0 on success or a standard error code on failure.
>> + */
>> +int dt_map_id(const struct dt_device_node *np, uint32_t id,
>> +              const char *map_name, const char *map_mask_name,
>> +              struct dt_device_node **target, uint32_t *id_out);
>> +#endif /* CONFIG_HAS_PCI */
>> +
>>   struct dt_device_node *dt_find_node_by_phandle(dt_phandle handle);
>>
>>   #ifdef CONFIG_DEVICE_TREE_DEBUG
>> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
>> index 405db59971c5..3cac177840f7 100644
>> --- a/xen/include/xen/iommu.h
>> +++ b/xen/include/xen/iommu.h
>> @@ -26,6 +26,9 @@
>>   #include <xen/spinlock.h>
>>   #include <public/domctl.h>
>>   #include <public/hvm/ioreq.h>
>> +#ifdef CONFIG_ACPI
>> +#include <asm/acpi.h>
>> +#endif
>>   #include <asm/device.h>
>>
>>   TYPE_SAFE(uint64_t, dfn);
>> @@ -219,7 +222,8 @@ int iommu_dt_domain_init(struct domain *d);
>>   int iommu_release_dt_devices(struct domain *d);
>>
>>   /*
>> - * Helper to add master device to the IOMMU using generic IOMMU DT bindings.
>> + * Helpers to add master device to the IOMMU using generic (PCI-)IOMMU
>> + * DT bindings.
>>    *
>>    * Return values:
>>    *  0 : device is protected by an IOMMU
>> @@ -228,12 +232,28 @@ int iommu_release_dt_devices(struct domain *d);
>>    *      (IOMMU is not enabled/present or device is not connected to it).
>>    */
>>   int iommu_add_dt_device(struct dt_device_node *np);
>> +int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev);
>>
>>   int iommu_do_dt_domctl(struct xen_domctl *, struct domain *,
>>                          XEN_GUEST_HANDLE_PARAM(xen_domctl_t));
>>
>> +#else /* !HAS_DEVICE_TREE */
>> +static inline int iommu_add_dt_pci_sideband_ids(struct pci_dev *pdev)
>> +{
>> +    return 0;
> Shouldn't this return an error because we wouldn't be able to add the
> Device?

Yep, I will fix

>> +}
>>   #endif /* HAS_DEVICE_TREE */
>>
>> +static inline int iommu_add_pci_sideband_ids(struct pci_dev *pdev)
>> +{
>> +    int ret = 0;
> 
> Same here.

OK

>> +#ifdef CONFIG_ACPI
>> +    if ( acpi_disabled )
>> +#endif
>> +        ret = iommu_add_dt_pci_sideband_ids(pdev);
>> +    return ret;
>> +}
>> +
>>   struct page_info;
>>
>>   /*
> 
> Cheers,
> 
> -- 
> Julien Grall


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 21:14:12 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 21:14:12 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610738.950265 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKoI-0007AX-5y; Fri, 29 Sep 2023 21:14:06 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610738.950265; Fri, 29 Sep 2023 21:14:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmKoI-0007AQ-3C; Fri, 29 Sep 2023 21:14:06 +0000
Received: by outflank-mailman (input) for mailman id 610738;
 Fri, 29 Sep 2023 21:14:04 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qmKoG-0007AK-Q2
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 21:14:04 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 1d978032-5f0d-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 23:14:03 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id A1A87B82082;
 Fri, 29 Sep 2023 21:14:02 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id D6C4CC433C9;
 Fri, 29 Sep 2023 21:14:00 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 1d978032-5f0d-11ee-878c-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696022042;
	bh=6YfKG9FnLyhaWAFNJ+a9HVMWHWnyC0gh++r5NmRuxnY=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=IXap6kV+hjxtZMpZxwY8ugSV6fFeG7FQvZeDoHWfS1XCFyhq50Z35rzhMC8zZSZEa
	 mfvGyVoAENclAhwm2UAge/jQKqaygOToWxFwKF3mZHhKUiFj6w+MzOmU5LHlON2oma
	 V2uZkS+AP1welUErwynorIQ+43MSAvCNf8hkyXErwPrSHJJNwSc9jd62aObYiJKa+6
	 K+6VzevdNP5svwrwwrf+WZXer1LlhiPxB6//Wl2wuvVWmF4J9+D65KQe33R0JCRvi/
	 oA3ZhNwk50ctr1gpYd1OfDM7JjzRKvu8URv8R0oUnDjd6x/rPM/fsxOEvfq++r4YjO
	 PXUueH7lg9sWg==
Date: Fri, 29 Sep 2023 14:13:59 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Julien Grall <julien@xen.org>
cc: Stefano Stabellini <sstabellini@kernel.org>, 
    xen-devel@lists.xenproject.org, jbeulich@suse.com, 
    andrew.cooper3@citrix.com, roger.pau@citrix.com, bertrand.marquis@arm.com, 
    george.dunlap@citrix.com, wl@xen.org
Subject: Re: [PATCH] bitmap: fix n__ signess
In-Reply-To: <592517ec-f093-4789-8cd6-320f886e45ae@xen.org>
Message-ID: <alpine.DEB.2.22.394.2309291401010.2348112@ubuntu-linux-20-04-desktop>
References: <alpine.DEB.2.22.394.2309281616200.1996340@ubuntu-linux-20-04-desktop> <592517ec-f093-4789-8cd6-320f886e45ae@xen.org>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

On Fri, 29 Sep 2023, Julien Grall wrote:
> On 29/09/2023 00:19, Stefano Stabellini wrote:
> > All callers of the bitmap_switch macro (which are all within bitmap.h)
> > pass an int as first parameter. Do not assign it to an unsigned int
> > potentially introducing errors.
> > 
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> > ---
> > 
> > We could also have gone the other way and change all the callers and the
> > callers' callers to use an unsigned int instead, but I went for the path
> > of least resistance.
> 
> I understand this will solve the issue right now because the callers are all
> passing 'int'. However, all the callers will need to switch to 'unsigned int'
> in order to solve violations in their callers.
> 
> That unless we decide to use 'int' everywhere, but I think this is a bad idea
> because 'n__' is not supposed to be negative.
> 
> Overall, this may be an easy win right now, but this will need to be reverted.
> So, I am not happy to ack it and would in fact be leaning towards Nacking it.

I understand this point and I was undecided myself about the approach.
The issue for me is the overwhelming amount of gcc warnings (thankfully
Luca's script helps a lot with it). With so many warning, it is
difficult to draw the line where to stop fixing things to generate a
digestable patch and not having the feeling of unraveling an infinite
ball of yarn. So, worried about having to change hundreds of lines of
code, I submitted the minimal change instead.

In this case though unsigned int is obviously the right type and the
patch below works as well. So I think that's better.

---
[PATCH v2] bitmap: fix nbits signess

To avoid potentially dangerous sign conversions in bitmap_switch, all
the callers of the bitmap_switch macro (which are all within bitmap.h)
should pass an unsigned int as first parameter.

Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
---
Changes in v2:
- change nbits instead

diff --git a/xen/include/xen/bitmap.h b/xen/include/xen/bitmap.h
index 3caf92c76d..657390e32e 100644
--- a/xen/include/xen/bitmap.h
+++ b/xen/include/xen/bitmap.h
@@ -110,7 +110,7 @@ extern int bitmap_allocate_region(unsigned long *bitmap, int pos, int order);
 		large;							  \
 	}
 
-static inline void bitmap_zero(unsigned long *dst, int nbits)
+static inline void bitmap_zero(unsigned long *dst, unsigned int nbits)
 {
 	bitmap_switch(nbits,,
 		*dst = 0UL,
@@ -134,7 +134,7 @@ static inline void bitmap_fill(unsigned long *dst, int nbits)
 }
 
 static inline void bitmap_copy(unsigned long *dst, const unsigned long *src,
-			int nbits)
+			unsigned int nbits)
 {
 	bitmap_switch(nbits,,
 		*dst = *src,
@@ -142,7 +142,7 @@ static inline void bitmap_copy(unsigned long *dst, const unsigned long *src,
 }
 
 static inline void bitmap_and(unsigned long *dst, const unsigned long *src1,
-			const unsigned long *src2, int nbits)
+			const unsigned long *src2, unsigned int nbits)
 {
 	bitmap_switch(nbits,,
 		*dst = *src1 & *src2,
@@ -150,7 +150,7 @@ static inline void bitmap_and(unsigned long *dst, const unsigned long *src1,
 }
 
 static inline void bitmap_or(unsigned long *dst, const unsigned long *src1,
-			const unsigned long *src2, int nbits)
+			const unsigned long *src2, unsigned int nbits)
 {
 	bitmap_switch(nbits,,
 		*dst = *src1 | *src2,
@@ -158,7 +158,7 @@ static inline void bitmap_or(unsigned long *dst, const unsigned long *src1,
 }
 
 static inline void bitmap_xor(unsigned long *dst, const unsigned long *src1,
-			const unsigned long *src2, int nbits)
+			const unsigned long *src2, unsigned int nbits)
 {
 	bitmap_switch(nbits,,
 		*dst = *src1 ^ *src2,
@@ -166,7 +166,7 @@ static inline void bitmap_xor(unsigned long *dst, const unsigned long *src1,
 }
 
 static inline void bitmap_andnot(unsigned long *dst, const unsigned long *src1,
-			const unsigned long *src2, int nbits)
+			const unsigned long *src2, unsigned int nbits)
 {
 	bitmap_switch(nbits,,
 		*dst = *src1 & ~*src2,
@@ -174,7 +174,7 @@ static inline void bitmap_andnot(unsigned long *dst, const unsigned long *src1,
 }
 
 static inline void bitmap_complement(unsigned long *dst, const unsigned long *src,
-			int nbits)
+			unsigned int nbits)
 {
 	bitmap_switch(nbits,,
 		*dst = ~*src & BITMAP_LAST_WORD_MASK(nbits),
@@ -182,7 +182,7 @@ static inline void bitmap_complement(unsigned long *dst, const unsigned long *sr
 }
 
 static inline int bitmap_equal(const unsigned long *src1,
-			const unsigned long *src2, int nbits)
+			const unsigned long *src2, unsigned int nbits)
 {
 	bitmap_switch(nbits,
 		return -1,
@@ -191,7 +191,7 @@ static inline int bitmap_equal(const unsigned long *src1,
 }
 
 static inline int bitmap_intersects(const unsigned long *src1,
-			const unsigned long *src2, int nbits)
+			const unsigned long *src2, unsigned int nbits)
 {
 	bitmap_switch(nbits,
 		return -1,
@@ -200,7 +200,7 @@ static inline int bitmap_intersects(const unsigned long *src1,
 }
 
 static inline int bitmap_subset(const unsigned long *src1,
-			const unsigned long *src2, int nbits)
+			const unsigned long *src2, unsigned int nbits)
 {
 	bitmap_switch(nbits,
 		return -1,
@@ -208,7 +208,7 @@ static inline int bitmap_subset(const unsigned long *src1,
 		return __bitmap_subset(src1, src2, nbits));
 }
 
-static inline int bitmap_empty(const unsigned long *src, int nbits)
+static inline int bitmap_empty(const unsigned long *src, unsigned int nbits)
 {
 	bitmap_switch(nbits,
 		return -1,
@@ -216,7 +216,7 @@ static inline int bitmap_empty(const unsigned long *src, int nbits)
 		return __bitmap_empty(src, nbits));
 }
 
-static inline int bitmap_full(const unsigned long *src, int nbits)
+static inline int bitmap_full(const unsigned long *src, unsigned int nbits)
 {
 	bitmap_switch(nbits,
 		return -1,


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 21:34:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 21:34:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610744.950275 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmL8B-0005pD-Rg; Fri, 29 Sep 2023 21:34:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610744.950275; Fri, 29 Sep 2023 21:34:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmL8B-0005p6-OC; Fri, 29 Sep 2023 21:34:39 +0000
Received: by outflank-mailman (input) for mailman id 610744;
 Fri, 29 Sep 2023 21:34:38 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/xMB=FN=kernel.org=sstabellini@srs-se1.protection.inumbo.net>)
 id 1qmL8A-0005p0-LI
 for xen-devel@lists.xenproject.org; Fri, 29 Sep 2023 21:34:38 +0000
Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id fc4ffdfc-5f0f-11ee-878c-cb3800f73035;
 Fri, 29 Sep 2023 23:34:35 +0200 (CEST)
Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58])
 by ams.source.kernel.org (Postfix) with ESMTP id 7595BB82147;
 Fri, 29 Sep 2023 21:34:35 +0000 (UTC)
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 68422C433C7;
 Fri, 29 Sep 2023 21:34:33 +0000 (UTC)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fc4ffdfc-5f0f-11ee-878c-cb3800f73035
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1696023274;
	bh=CKiMOv7w+H9l7zOQwP0JdQ1knLqx21NOxcB2PP1TQi4=;
	h=Date:From:To:cc:Subject:In-Reply-To:References:From;
	b=NQyXYjZqhtu0QJArRLxlsy3ywIsMnBe78fcLXNx/skJFOfdpoG2BCwf4XumVva+yH
	 OviMCoXdvc4+1xPh3tn90Mh8uMGEwThJ9UiopdiVN5rYm/CiclIr3vqiX8Fv+/YOne
	 OTxSmil8uPAyJg7Je2Lr+DnO/jPWQiPhnqJY5N4Pkh6mtsg3t4UR/+CkKeg/QkrUpY
	 +saMaiOIEXuJ/5gZAb78zz7W4mHopQ5rHqI6T6Wm6rVopeoKVDh08keg/229zWjN0F
	 aIw8cwRuE+wseiAivnKqrKy84FRhnyx2Zf9ESmEcTjgMjBctGIk0hqaBErubPk4VVW
	 m9f2A6fbsxhmA==
Date: Fri, 29 Sep 2023 14:34:31 -0700 (PDT)
From: Stefano Stabellini <sstabellini@kernel.org>
X-X-Sender: sstabellini@ubuntu-linux-20-04-desktop
To: Luca Fancellu <Luca.Fancellu@arm.com>
cc: Julien Grall <julien@xen.org>, Stefano Stabellini <sstabellini@kernel.org>, 
    Xen-devel <xen-devel@lists.xenproject.org>, 
    Jan Beulich <jbeulich@suse.com>, 
    "andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>, 
    "roger.pau@citrix.com" <roger.pau@citrix.com>, 
    Bertrand Marquis <Bertrand.Marquis@arm.com>, 
    "george.dunlap@citrix.com" <george.dunlap@citrix.com>, 
    "wl@xen.org" <wl@xen.org>, sanastasio@raptorengineering.com
Subject: Re: [PATCH] cpumask: fix integer type in cpumask_first
In-Reply-To: <DD5A5A95-82B2-4886-8B5F-BC75C64CC7FC@arm.com>
Message-ID: <alpine.DEB.2.22.394.2309291432050.2348112@ubuntu-linux-20-04-desktop>
References: <alpine.DEB.2.22.394.2309281629360.1996340@ubuntu-linux-20-04-desktop> <e5815f93-80a4-4628-9eae-98c431c70dcc@xen.org> <DD5A5A95-82B2-4886-8B5F-BC75C64CC7FC@arm.com>
User-Agent: Alpine 2.22 (DEB 394 2020-01-19)
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="8323329-1404774899-1696023215=:2348112"
Content-ID: <alpine.DEB.2.22.394.2309291433400.2348112@ubuntu-linux-20-04-desktop>

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--8323329-1404774899-1696023215=:2348112
Content-Type: text/plain; CHARSET=UTF-8
Content-Transfer-Encoding: 8BIT
Content-ID: <alpine.DEB.2.22.394.2309291433401.2348112@ubuntu-linux-20-04-desktop>

On Fri, 29 Sep 2023, Luca Fancellu wrote:
> > On 29 Sep 2023, at 08:31, Julien Grall <julien@xen.org> wrote:
> > 
> > Hi Stefano,
> > 
> > On 29/09/2023 00:32, Stefano Stabellini wrote:
> >> nr_cpu_ids is unsigned int, but find_first_bit returns unsigned long (at
> >> least on arm).
> > 
> > find_* are meant to be used by common code. So I think the first step is to correct the return type so it is consistent across all architectures.
> > 
> > I don't have a strong opinion on whether they should all return 'unsigned long'.
> > 
> > Then we can discuss if the MISRA rule is still violated.
> > 
> >> Use the larger type for min_t to avoid larger-to-smaller
> >> type assignments. This address 141 MISRA C 10.3 violations.
> > 
> > I find interesting you are saying this given that...
> >> Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> >> ---
> >> diff --git a/xen/include/xen/cpumask.h b/xen/include/xen/cpumask.h
> >> index 9826707909..a6ed6a28e8 100644
> >> --- a/xen/include/xen/cpumask.h
> >> +++ b/xen/include/xen/cpumask.h
> >> @@ -208,7 +208,7 @@ static inline void cpumask_copy(cpumask_t *dstp, const cpumask_t *srcp)
> >>    static inline int cpumask_first(const cpumask_t *srcp)
> >>  {
> >> - return min_t(int, nr_cpu_ids, find_first_bit(srcp->bits, nr_cpu_ids));
> >> + return min_t(unsigned long, nr_cpu_ids, find_first_bit(srcp->bits, nr_cpu_ids));
> > 
> > ... cpumask_first() is return 'int'. So rather than fixing it, you seem to have just moved the violation.
> > 
> >>  }
> >>    static inline int cpumask_next(int n, const cpumask_t *srcp)
> 
> I’ve also found that find_first_bit returns:
> 
>  - unsigned int on x86
>  - unsigned long on ppc
>  - unsigned long on arm64
>  - int on arm32 (seems that value is always >= 0
> 
> So maybe they can be all unsigned int, and cpumask_first can be as well unsigned int?

I am OK with that. Julien, Shawn do you agree? If so, I can make the
change to find_first_bit so that it returns unsigned int on all arches.
--8323329-1404774899-1696023215=:2348112--


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 21:56:19 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 21:56:19 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610753.950285 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmLSu-0003ML-Nn; Fri, 29 Sep 2023 21:56:04 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610753.950285; Fri, 29 Sep 2023 21:56:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmLSu-0003ME-Jq; Fri, 29 Sep 2023 21:56:04 +0000
Received: by outflank-mailman (input) for mailman id 610753;
 Fri, 29 Sep 2023 21:56:03 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmLSt-0003M4-GR; Fri, 29 Sep 2023 21:56:03 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmLSt-0004gw-37; Fri, 29 Sep 2023 21:56:03 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmLSs-0005fY-Hr; Fri, 29 Sep 2023 21:56:02 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmLSs-0006H6-HM; Fri, 29 Sep 2023 21:56:02 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=HTBXQXmqYiX8bB927s7/TgzJdFQs01LoRkau3j50l9Y=; b=imUh+PDfrK3aoZLC3kh37XAU//
	tLBpPMtiKOfeWKx4wMTsaEqWtIG7pCWAU+SUXeGyZ3gBvikOdtZRLY4xVMbL6qj00j5GeP/2fSpGU
	VGpRyayniYAFj+HcOxmTYFzh6Qe6D8zP/SysgxN2uuEdSlr6QIQiFwR0n/iVb//DL+Bs=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183210-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183210: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=52d1872e6562d0cd0821668d631fdedcd4a34934
X-Osstest-Versions-That:
    libvirt=dd403f8873cf8de7675b89ed757a4228af7bc05e
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 29 Sep 2023 21:56:02 +0000

flight 183210 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183210/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183201
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183201
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183201
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              52d1872e6562d0cd0821668d631fdedcd4a34934
baseline version:
 libvirt              dd403f8873cf8de7675b89ed757a4228af7bc05e

Last test of basis   183201  2023-09-28 04:20:29 Z    1 days
Testing same since   183210  2023-09-29 04:20:30 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Andrea Bolognani <abologna@redhat.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   dd403f8873..52d1872e65  52d1872e6562d0cd0821668d631fdedcd4a34934 -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 23:20:09 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 23:20:09 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610763.950295 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmMm2-0005TZ-M1; Fri, 29 Sep 2023 23:19:54 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610763.950295; Fri, 29 Sep 2023 23:19:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmMm2-0005TS-J7; Fri, 29 Sep 2023 23:19:54 +0000
Received: by outflank-mailman (input) for mailman id 610763;
 Fri, 29 Sep 2023 23:19:52 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmMm0-0005TI-QK; Fri, 29 Sep 2023 23:19:52 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmMm0-0006h2-KD; Fri, 29 Sep 2023 23:19:52 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmMm0-0008D6-0U; Fri, 29 Sep 2023 23:19:52 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmMlz-000801-WA; Fri, 29 Sep 2023 23:19:51 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=7N9Zn3D8edm5Jm0DumkURsbZ37YuvZMAUr0vfCAFrz8=; b=m0vODy63elz5t+KWreuFPTKIqG
	pb+SdKK8l9jSm7K0Kb6jSt8xydTsuWZXQ6TLQWVF0UTZMUHzAH7bXBOrYaASgIZln+Z1BiFetFW21
	aU2Yq7TLYyWnYcdjPsMhu/Emc6YI6B++FiKSTss79m6fELX0mcE1L9JPsRQ/cU+xohgI=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183211-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183211: regressions - trouble: fail/pass/starved
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start.2:fail:regression
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:xen-install:fail:heisenbug
    linux-5.4:test-amd64-i386-xl:xen-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    linux-5.4:test-amd64-amd64-xl-qemut-debianhvm-amd64:xen-boot:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-amd64-i386-examine-bios:xen-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:guest-start:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 29 Sep 2023 23:19:51 +0000

flight 183211 linux-5.4 real [real]
flight 183219 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183211/
http://logs.test-lab.xenproject.org/osstest/logs/183219/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1  19 guest-start.2  fail in 183144 REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183144 pass in 183211
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 7 xen-install fail in 183199 pass in 183211
 test-amd64-i386-xl            7 xen-install      fail in 183199 pass in 183211
 test-armhf-armhf-xl-credit1  14 guest-start      fail in 183199 pass in 183211
 test-amd64-amd64-xl-qemut-debianhvm-amd64 8 xen-boot fail in 183205 pass in 183211
 test-armhf-armhf-xl-credit2  14 guest-start      fail in 183205 pass in 183211
 test-armhf-armhf-xl-credit1  18 guest-start/debian.repeat  fail pass in 183144
 test-amd64-i386-examine-bios  6 xen-install                fail pass in 183199
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail pass in 183199
 test-amd64-i386-qemut-rhel6hvm-amd  7 xen-install          fail pass in 183205

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-multivcpu 18 guest-start/debian.repeat fail in 183199 blocked in 182613
 test-arm64-arm64-xl         15 migrate-support-check fail in 183199 never pass
 test-arm64-arm64-xl     16 saverestore-support-check fail in 183199 never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check fail in 183199 never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check fail in 183199 never pass
 test-arm64-arm64-xl-credit1 15 migrate-support-check fail in 183199 never pass
 test-arm64-arm64-xl-xsm     15 migrate-support-check fail in 183199 never pass
 test-arm64-arm64-xl-credit1 16 saverestore-support-check fail in 183199 never pass
 test-arm64-arm64-xl-xsm 16 saverestore-support-check fail in 183199 never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check fail in 183199 never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check fail in 183199 never pass
 test-arm64-arm64-xl-credit2 15 migrate-support-check fail in 183199 never pass
 test-arm64-arm64-xl-credit2 16 saverestore-support-check fail in 183199 never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check fail in 183199 never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check fail in 183199 never pass
 test-arm64-arm64-xl-vhd     14 migrate-support-check fail in 183199 never pass
 test-arm64-arm64-xl-vhd 15 saverestore-support-check fail in 183199 never pass
 test-armhf-armhf-xl-multivcpu 14 guest-start        fail in 183205 like 182613
 test-armhf-armhf-xl-arndale 18 guest-start/debian.repeat fail in 183205 like 182613
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat    fail  like 182613
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182613
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-raw  3 hosts-allocate               starved  n/a
 test-arm64-arm64-libvirt-xsm  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit2   3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-vhd       3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-thunderx  3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl           3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-xsm       3 hosts-allocate               starved  n/a
 test-arm64-arm64-xl-credit1   3 hosts-allocate               starved  n/a

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   27 days
Testing same since   183129  2023-09-23 09:20:22 Z    6 days   12 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          starved 
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 starved 
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      starved 
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           fail    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  starved 
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  starved 
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               fail    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 starved 
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 starved 
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      starved 
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Fri Sep 29 23:59:18 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Fri, 29 Sep 2023 23:59:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610772.950305 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmNO2-0005Vf-2S; Fri, 29 Sep 2023 23:59:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610772.950305; Fri, 29 Sep 2023 23:59:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmNO1-0005VY-VY; Fri, 29 Sep 2023 23:59:09 +0000
Received: by outflank-mailman (input) for mailman id 610772;
 Fri, 29 Sep 2023 23:59:08 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmNNz-0005VN-Ua; Fri, 29 Sep 2023 23:59:07 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmNNz-0007YG-JA; Fri, 29 Sep 2023 23:59:07 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmNNz-0000sE-A9; Fri, 29 Sep 2023 23:59:07 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmNNz-0005Yw-9f; Fri, 29 Sep 2023 23:59:07 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=kEjFYmD55mc6q8G3MAkrtDXkrF3d+TbrfBU+ohVQcyo=; b=0ieafBgltm4UWe2ULcxsb367xn
	7NrIwYs9+6NeBjfhk+G0AAx5Z1Ez24fwlwsapCziw5XTQXTP20XTw8uwB5n/aCqxpvh9BRPNA7jqc
	Cf1AeM/wHigPlIBHpoHVcWhWVfTaUPj4JQ/OjfatsjBZyRBJ+rGU4jhS1ijVLS3T8bGQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183218-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable-smoke test] 183218: tolerable all pass - PUSHED
X-Osstest-Failures:
    xen-unstable-smoke:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable-smoke:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5bdfcf7fe89759321335159c8304833dc32a25cd
X-Osstest-Versions-That:
    xen=2797a717121cda0da5eeea3a17203d1c155c5e54
From: osstest service owner <osstest-admin@xenproject.org>
Date: Fri, 29 Sep 2023 23:59:07 +0000

flight 183218 xen-unstable-smoke real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183218/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass

version targeted for testing:
 xen                  5bdfcf7fe89759321335159c8304833dc32a25cd
baseline version:
 xen                  2797a717121cda0da5eeea3a17203d1c155c5e54

Last test of basis   183214  2023-09-29 13:03:41 Z    0 days
Testing same since   183218  2023-09-29 19:02:06 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bertrand Marquis <bertrand.marquis@arm.com>
  Jan Beulich <jbeulich@suse.com>
  Stefano Stabellini <stefano.stabellini@amd.com>

jobs:
 build-arm64-xsm                                              pass    
 build-amd64                                                  pass    
 build-armhf                                                  pass    
 build-amd64-libvirt                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-libvirt                                     pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   2797a71712..5bdfcf7fe8  5bdfcf7fe89759321335159c8304833dc32a25cd -> smoke


From xen-devel-bounces@lists.xenproject.org Sat Sep 30 06:14:51 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 30 Sep 2023 06:14:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610792.950316 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmTFC-0007jk-PD; Sat, 30 Sep 2023 06:14:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610792.950316; Sat, 30 Sep 2023 06:14:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmTFC-0007jd-KC; Sat, 30 Sep 2023 06:14:26 +0000
Received: by outflank-mailman (input) for mailman id 610792;
 Sat, 30 Sep 2023 06:14:25 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=T/O9=FO=m5p.com=ehem@srs-se1.protection.inumbo.net>)
 id 1qmTFB-0007jX-Cn
 for xen-devel@lists.xenproject.org; Sat, 30 Sep 2023 06:14:25 +0000
Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 98335a85-5f58-11ee-9b0d-b553b5be7939;
 Sat, 30 Sep 2023 08:14:22 +0200 (CEST)
Received: from m5p.com (mailhost.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:f7])
 by mailhost.m5p.com (8.17.1/8.15.2) with ESMTPS id 38U6Dox1013323
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Sat, 30 Sep 2023 02:13:56 -0400 (EDT) (envelope-from ehem@m5p.com)
Received: (from ehem@localhost)
 by m5p.com (8.17.1/8.15.2/Submit) id 38U6Dl20013322;
 Fri, 29 Sep 2023 23:13:47 -0700 (PDT) (envelope-from ehem)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 98335a85-5f58-11ee-9b0d-b553b5be7939
Date: Fri, 29 Sep 2023 23:13:47 -0700
From: Elliott Mitchell <ehem+xen@m5p.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien@xen.org>, xen-devel@lists.xenproject.org,
        jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com,
        bertrand.marquis@arm.com, george.dunlap@citrix.com, wl@xen.org
Subject: Re: [PATCH] bitmap: fix n__ signess
Message-ID: <ZRe8myyldx2ar3Yv@mattapan.m5p.com>
References: <alpine.DEB.2.22.394.2309281616200.1996340@ubuntu-linux-20-04-desktop>
 <592517ec-f093-4789-8cd6-320f886e45ae@xen.org>
 <alpine.DEB.2.22.394.2309291401010.2348112@ubuntu-linux-20-04-desktop>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <alpine.DEB.2.22.394.2309291401010.2348112@ubuntu-linux-20-04-desktop>
X-Spam-Status: No, score=0.4 required=10.0 tests=KHOP_HELO_FCRDNS autolearn=no
	autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mattapan.m5p.com

On Fri, Sep 29, 2023 at 02:13:59PM -0700, Stefano Stabellini wrote:
> On Fri, 29 Sep 2023, Julien Grall wrote:
> > On 29/09/2023 00:19, Stefano Stabellini wrote:
> > > All callers of the bitmap_switch macro (which are all within bitmap.h)
> > > pass an int as first parameter. Do not assign it to an unsigned int
> > > potentially introducing errors.
> > > 
> > > Signed-off-by: Stefano Stabellini <stefano.stabellini@amd.com>
> > > ---
> > > 
> > > We could also have gone the other way and change all the callers and the
> > > callers' callers to use an unsigned int instead, but I went for the path
> > > of least resistance.
> > 
> > I understand this will solve the issue right now because the callers are all
> > passing 'int'. However, all the callers will need to switch to 'unsigned int'
> > in order to solve violations in their callers.
> > 
> > That unless we decide to use 'int' everywhere, but I think this is a bad idea
> > because 'n__' is not supposed to be negative.
> > 
> > Overall, this may be an easy win right now, but this will need to be reverted.
> > So, I am not happy to ack it and would in fact be leaning towards Nacking it.
> 
> I understand this point and I was undecided myself about the approach.
> The issue for me is the overwhelming amount of gcc warnings (thankfully
> Luca's script helps a lot with it). With so many warning, it is
> difficult to draw the line where to stop fixing things to generate a
> digestable patch and not having the feeling of unraveling an infinite
> ball of yarn. So, worried about having to change hundreds of lines of
> code, I submitted the minimal change instead.
> 
> In this case though unsigned int is obviously the right type and the
> patch below works as well. So I think that's better.

This looks much better to me.  Did changing the nbits arguments of
bitmap_copy(), bitmap_fill(), and bitmap_weight(), result in the mess
getting worse?  If so then this is a reasonable stopping point, but if
you didn't check I would be tempted to do so (ensure consistency amoung
these functions).


-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \BS (    |         ehem+sigmsg@m5p.com  PGP 87145445         |    )   /
  \_CS\   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445




From xen-devel-bounces@lists.xenproject.org Sat Sep 30 06:40:08 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 30 Sep 2023 06:40:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610805.950324 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmTdu-0003Qv-Up; Sat, 30 Sep 2023 06:39:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610805.950324; Sat, 30 Sep 2023 06:39:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmTdu-0003Qo-Rs; Sat, 30 Sep 2023 06:39:58 +0000
Received: by outflank-mailman (input) for mailman id 610805;
 Sat, 30 Sep 2023 06:39:57 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmTdt-0003Qc-GU; Sat, 30 Sep 2023 06:39:57 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmTdt-0008Jw-8F; Sat, 30 Sep 2023 06:39:57 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmTds-0001jt-Q5; Sat, 30 Sep 2023 06:39:56 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmTds-0003cy-Pa; Sat, 30 Sep 2023 06:39:56 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=bRA4ftewFj8f6a1WwNKzF0zi4ht/1Q1BOvPMHmWFsv4=; b=lQn8D9qivRMQ6nwj/VF6NzzyZq
	6u9JUdRYhHC3kNeFD4COXwg2ZeOUV3F4bsIHjzwjuUtkzus9pKkzoneUoF37gh4B6XfyzIZZ5Tfmg
	pRlugqIvSWGpfisjlmT+LyfRNqP9ZjZTKxLLbI6YLQmiupAFbs+2Z6AG0CrBTIVTOATA=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183216-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183216: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-amd64-i386-examine-bios:xen-install:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-credit1:guest-start.2:fail:heisenbug
    xen-unstable:test-armhf-armhf-xl-vhd:guest-start:fail:heisenbug
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=a8ab67cae01eca7bba8627ce13429c59fda056f3
X-Osstest-Versions-That:
    xen=a363089e68ed677fef12c296253535753fe817e3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 30 Sep 2023 06:39:56 +0000

flight 183216 xen-unstable real [real]
flight 183221 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183216/
http://logs.test-lab.xenproject.org/osstest/logs/183221/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-amd64-i386-examine-bios  6 xen-install         fail pass in 183221-retest
 test-armhf-armhf-xl-credit1  19 guest-start.2       fail pass in 183221-retest
 test-armhf-armhf-xl-vhd      13 guest-start         fail pass in 183221-retest

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop      fail blocked in 183208
 test-armhf-armhf-xl-vhd     14 migrate-support-check fail in 183221 never pass
 test-armhf-armhf-xl-vhd 15 saverestore-support-check fail in 183221 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183208
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183208
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183208
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183208
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183208
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183208
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183208
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183208
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183208
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183208
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183208
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  a8ab67cae01eca7bba8627ce13429c59fda056f3
baseline version:
 xen                  a363089e68ed677fef12c296253535753fe817e3

Last test of basis   183208  2023-09-29 01:55:17 Z    1 days
Testing same since   183216  2023-09-29 14:10:21 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Julien Grall <jgrall@amazon.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 fail    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      fail    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   a363089e68..a8ab67cae0  a8ab67cae01eca7bba8627ce13429c59fda056f3 -> master


From xen-devel-bounces@lists.xenproject.org Sat Sep 30 08:51:56 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 30 Sep 2023 08:51:56 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610827.950342 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmVhI-0003ZP-2I; Sat, 30 Sep 2023 08:51:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610827.950342; Sat, 30 Sep 2023 08:51:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmVhH-0003ZI-Vv; Sat, 30 Sep 2023 08:51:35 +0000
Received: by outflank-mailman (input) for mailman id 610827;
 Sat, 30 Sep 2023 08:51:34 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmVhG-0003Wf-Pe; Sat, 30 Sep 2023 08:51:34 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmVhG-0003bf-FG; Sat, 30 Sep 2023 08:51:34 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmVhG-0007Qo-32; Sat, 30 Sep 2023 08:51:34 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmVhG-0007L7-2G; Sat, 30 Sep 2023 08:51:34 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=u5F6yhKALJ2qTzcjTG1GZi2QdotYKNznRL/bCboyzEQ=; b=ENoRmjJKEuJ8bmOcNhIEz2Ig8c
	FRXFoHvkoDQOl766lUovQKAaSMBcCekkqqWgdnbzYMuMa6cZtGF3AVywKdFiq5tj50WE24gx73oWj
	DZyiKK0D7RtK/8lMAtA8mNcW2+OrWvtrPALR7r/x+Y/fKPZdlki+tX6monSVtQksjzSQ=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183217-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-linus test] 183217: tolerable FAIL - PUSHED
X-Osstest-Failures:
    linux-linus:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-linus:test-amd64-amd64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-linus:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
X-Osstest-Versions-This:
    linux=71e58659bfc02e4171345f80b13d6485e9cdf687
X-Osstest-Versions-That:
    linux=9ed22ae6be817d7a3f5c15ca22cbc9d3963b481d
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 30 Sep 2023 08:51:34 +0000

flight 183217 linux-linus real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183217/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183206
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183206
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183206
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183206
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183206
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183206
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183206
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183206
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                71e58659bfc02e4171345f80b13d6485e9cdf687
baseline version:
 linux                9ed22ae6be817d7a3f5c15ca22cbc9d3963b481d

Last test of basis   183206  2023-09-28 18:44:04 Z    1 days
Testing same since   183217  2023-09-29 16:44:00 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
  Biju Das <biju.das.jz@bp.renesas.com>
  Chengfeng Ye <dg573847474@gmail.com>
  Chris Morgan <macromorgan@hotmail.com>
  Christophe JAILLET <christophe.jaillet@wanadoo.fr>
  Chunyan Zhang <zhang.lyra@gmail.com>
  Conor Dooley <conor.dooley@microchip.com>
  Dan Carpenter <dan.carpenter@linaro.org>
  David Thompson <davthompson@nvidia.com>
  Harshit Mogalapalli <harshit.m.mogalapalli@oracle.com>
  Justin Stitt <justinstitt@google.com>
  Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  Linus Torvalds <torvalds@linux-foundation.org>
  Linus Walleij <linus.walleij@linaro.org>
  Marc Zyngier <maz@kernel.org>
  Marek Vasut <marex@denx.de>
  Max Filippov <jcmvbkbc@gmail.com>
  Mikko Perttunen <mperttunen@nvidia.com>
  Nicolas Frattaroli <frattaroli.nicolas@gmail.com>
  Randy Dunlap <rdunlap@infradead.org>
  Sebastian Reichel <sebastian.reichel@collabora.com>
  Stephen Boyd <sboyd@kernel.org>
  Sudeep Holla <sudeep.holla@arm.com>
  Timo Alho <talho@nvidia.com>
  Vincent Whitchurch <vincent.whitchurch@axis.com>
  Wenhua Lin <Wenhua.Lin@unisoc.com>
  Zhifeng Tang <zhifeng.tang@unisoc.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-amd64-freebsd11-amd64                             pass    
 test-amd64-amd64-freebsd12-amd64                             pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-amd64-pygrub                                      pass    
 test-amd64-amd64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-libvirt-raw                                 pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-amd64-xl-vhd                                      pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

hint: The 'hooks/update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-receive' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
hint: The 'hooks/post-update' hook was ignored because it's not set as executable.
hint: You can disable this warning with `git config advice.ignoredHook false`.
To xenbits.xen.org:/home/xen/git/linux-pvops.git
   9ed22ae6be81..71e58659bfc0  71e58659bfc02e4171345f80b13d6485e9cdf687 -> tested/linux-linus


From xen-devel-bounces@lists.xenproject.org Sat Sep 30 15:26:07 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 30 Sep 2023 15:26:07 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610868.950353 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmbqo-0005wb-Is; Sat, 30 Sep 2023 15:25:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610868.950353; Sat, 30 Sep 2023 15:25:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmbqo-0005wU-Eg; Sat, 30 Sep 2023 15:25:50 +0000
Received: by outflank-mailman (input) for mailman id 610868;
 Sat, 30 Sep 2023 15:25:49 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmbqn-0005wK-Ci; Sat, 30 Sep 2023 15:25:49 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmbqn-0004hQ-3Z; Sat, 30 Sep 2023 15:25:49 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmbqm-0001Sb-JQ; Sat, 30 Sep 2023 15:25:48 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmbqm-0003v4-J5; Sat, 30 Sep 2023 15:25:48 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=zLl/WLfULFLZT3CmUGEdIqnrQqay77rrkIfYB5I7YRM=; b=NU8FkQRfVLy8WKE85th1g8nPnI
	Lw86hpKUOQcoxEY3kfgAzgRTRMA2yGkbvol9zQ/iBTKtLPIhqUqxt6z+NuftxQmXykZArpLLAhTSi
	rG7ArXcDfXCrSqQyrmdiHy3qEx+3eRq56ZJiZmGUzbQfhM9DpjVqy0l7G1cFYvT+UmrM=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183220-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [linux-5.4 test] 183220: regressions - FAIL
X-Osstest-Failures:
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start.2:fail:regression
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start:fail:heisenbug
    linux-5.4:test-amd64-i386-xl-qemut-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-amd64-i386-examine-bios:xen-install:fail:heisenbug
    linux-5.4:test-amd64-i386-qemut-rhel6hvm-amd:xen-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-libvirt-qcow2:guest-start/debian.repeat:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:guest-start:fail:heisenbug
    linux-5.4:test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm:debian-hvm-install:fail:heisenbug
    linux-5.4:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:guest-start/debian.repeat:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    linux-5.4:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    linux-5.4:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-raw:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-libvirt-xsm:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-xl-vhd:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit2:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-xl:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-xl-xsm:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-xl-credit1:hosts-allocate:starved:nonblocking
    linux-5.4:test-arm64-arm64-xl-thunderx:hosts-allocate:starved:nonblocking
X-Osstest-Versions-This:
    linux=a140610d8aff1a06d36f8e4e9e66079b561d043d
X-Osstest-Versions-That:
    linux=0c2544add9fc25c0e54a2167d6a2cfd2e696cf58
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 30 Sep 2023 15:25:48 +0000

flight 183220 linux-5.4 real [real]
flight 183225 linux-5.4 real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183220/
http://logs.test-lab.xenproject.org/osstest/logs/183225/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-armhf-armhf-xl-credit1  19 guest-start.2  fail in 183144 REGR. vs. 182613

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl-credit2  14 guest-start      fail in 183144 pass in 183220
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm 12 debian-hvm-install fail in 183144 pass in 183220
 test-armhf-armhf-xl-credit1 18 guest-start/debian.repeat fail in 183211 pass in 183144
 test-amd64-i386-examine-bios  6 xen-install      fail in 183211 pass in 183220
 test-amd64-i386-qemut-rhel6hvm-amd 7 xen-install fail in 183211 pass in 183220
 test-armhf-armhf-libvirt-qcow2 17 guest-start/debian.repeat fail in 183211 pass in 183220
 test-armhf-armhf-xl-credit1  14 guest-start                fail pass in 183211
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm 12 debian-hvm-install fail pass in 183211

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-xl-credit1 15 migrate-support-check fail in 183211 never pass
 test-armhf-armhf-xl-credit1 16 saverestore-support-check fail in 183211 never pass
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 182613
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 182613
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 182613
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 182613
 test-armhf-armhf-xl-credit2  18 guest-start/debian.repeat    fail  like 182613
 test-armhf-armhf-xl-rtds     18 guest-start/debian.repeat    fail  like 182613
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 182613
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 182613
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 182613
 test-armhf-armhf-libvirt-raw 17 guest-start/debian.repeat    fail  like 182613
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 182613
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 182613
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-raw  3 hosts-allocate           starved in 183211 n/a
 test-arm64-arm64-libvirt-xsm  3 hosts-allocate           starved in 183211 n/a
 test-arm64-arm64-xl-vhd       3 hosts-allocate           starved in 183211 n/a
 test-arm64-arm64-xl-credit2   3 hosts-allocate           starved in 183211 n/a
 test-arm64-arm64-xl           3 hosts-allocate           starved in 183211 n/a
 test-arm64-arm64-xl-xsm       3 hosts-allocate           starved in 183211 n/a
 test-arm64-arm64-xl-credit1   3 hosts-allocate           starved in 183211 n/a
 test-arm64-arm64-xl-thunderx  3 hosts-allocate           starved in 183211 n/a

version targeted for testing:
 linux                a140610d8aff1a06d36f8e4e9e66079b561d043d
baseline version:
 linux                0c2544add9fc25c0e54a2167d6a2cfd2e696cf58

Last test of basis   182613  2023-09-02 07:45:54 Z   28 days
Testing same since   183129  2023-09-23 09:20:22 Z    7 days   13 attempts

------------------------------------------------------------
373 people touched revisions under test,
not listing them all

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 fail    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  fail    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  fail    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 fail    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     fail    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 10794 lines long.)


From xen-devel-bounces@lists.xenproject.org Sat Sep 30 15:27:44 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 30 Sep 2023 15:27:44 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610874.950362 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmbsd-0006Un-Ty; Sat, 30 Sep 2023 15:27:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610874.950362; Sat, 30 Sep 2023 15:27:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmbsd-0006Ug-RQ; Sat, 30 Sep 2023 15:27:43 +0000
Received: by outflank-mailman (input) for mailman id 610874;
 Sat, 30 Sep 2023 15:27:42 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmbsc-0006UU-UO; Sat, 30 Sep 2023 15:27:42 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmbsc-0004kK-Ss; Sat, 30 Sep 2023 15:27:42 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmbsc-0001Vr-Em; Sat, 30 Sep 2023 15:27:42 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmbsc-0005bc-EN; Sat, 30 Sep 2023 15:27:42 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=OYLIbYkxOD32NqRN02b6LghmIP0/8RsVhHRoX8DCWhU=; b=5W+Z2z45edUOLP9D3J7XvtnJec
	PiEDhMn87tT97Ll81HP+AbdmPJUIIPOyFiIUcrVX+g7MLhKyeKmHi4nhyya8drpLABqcMVh2Qp5En
	U1wR4aoqAC4LIOrPwRIN0ovIGVBLKm426JbvfHGryqWlYu6DXlDBm6CqVkK3qg+niEdc=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183222-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [libvirt test] 183222: tolerable all pass - PUSHED
X-Osstest-Failures:
    libvirt:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    libvirt:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    libvirt:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
    libvirt:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    libvirt=53fe17bb23ca6723dbaacf849bff8461a474d07a
X-Osstest-Versions-That:
    libvirt=52d1872e6562d0cd0821668d631fdedcd4a34934
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 30 Sep 2023 15:27:42 +0000

flight 183222 libvirt real [real]
http://logs.test-lab.xenproject.org/osstest/logs/183222/

Failures :-/ but no regressions.

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183210
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183210
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183210
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-arm64-arm64-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 15 saverestore-support-check    fail never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass

version targeted for testing:
 libvirt              53fe17bb23ca6723dbaacf849bff8461a474d07a
baseline version:
 libvirt              52d1872e6562d0cd0821668d631fdedcd4a34934

Last test of basis   183210  2023-09-29 04:20:30 Z    1 days
Testing same since   183222  2023-09-30 04:18:44 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Anastasia Belova <abelova@astralinux.ru>
  Michal Privoznik <mprivozn@redhat.com>
  Yuri Chornoivan <yurchor@ukr.net>
  김인수 <simmon@nplob.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-libvirt                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-libvirt-vhd                                 pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/libvirt.git
   52d1872e65..53fe17bb23  53fe17bb23ca6723dbaacf849bff8461a474d07a -> xen-tested-master


From xen-devel-bounces@lists.xenproject.org Sat Sep 30 22:02:32 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 30 Sep 2023 22:02:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610899.950393 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmi2N-0001BT-3z; Sat, 30 Sep 2023 22:02:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610899.950393; Sat, 30 Sep 2023 22:02:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmi2N-0001BM-02; Sat, 30 Sep 2023 22:02:11 +0000
Received: by outflank-mailman (input) for mailman id 610899;
 Sat, 30 Sep 2023 22:02:10 +0000
Received: from mail.xenproject.org ([104.130.215.37])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmi2M-0001BC-0y; Sat, 30 Sep 2023 22:02:10 +0000
Received: from host146.205.237.98.conversent.net ([205.237.98.146]
 helo=infra.test-lab.xenproject.org)
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmi2L-0007PX-V2; Sat, 30 Sep 2023 22:02:10 +0000
Received: from [172.16.148.1] (helo=osstest.test-lab.xenproject.org)
 by infra.test-lab.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <osstest-admin@xenproject.org>)
 id 1qmi2L-0000eO-Ce; Sat, 30 Sep 2023 22:02:09 +0000
Received: from osstest by osstest.test-lab.xenproject.org with local (Exim
 4.92) (envelope-from <osstest-admin@xenproject.org>)
 id 1qmi2L-0003nP-Bo; Sat, 30 Sep 2023 22:02:09 +0000
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
	d=xenproject.org; s=20200302mail; h=Date:From:Subject:MIME-Version:
	Content-Transfer-Encoding:Content-Type:Message-ID:To;
	bh=UWeRdlTFEpSidgwATLbS+LNJWU67O4tVvK7yVNw+0qY=; b=UxfL9iCtC6nIA3T5gbMF3OXFOn
	3TUibf0/p2egyBsGLsNTspq05kPBXfDr+DTczRfX+HoKsYIMd28eEsxz7bN3nhrmONbuUdhJlgqRI
	FTlQoAzjZt1OWqOWpjnSwi7CjsAiooO2HNWBOPkMBTAH1xnU/b3xMBIs+qNdZ5UPZXro=;
To: xen-devel@lists.xenproject.org
Message-ID: <osstest-183223-mainreport@xen.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Subject: [xen-unstable test] 183223: tolerable FAIL - PUSHED
X-Osstest-Failures:
    xen-unstable:test-armhf-armhf-xl:guest-start/debian.repeat:fail:heisenbug
    xen-unstable:test-armhf-armhf-libvirt:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-qemuu-nested-amd:debian-hvm-install/l1/l2:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemut-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemut-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-qemuu-ws16-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-xl-qemuu-win7-amd64:guest-stop:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-xl-pvshim:guest-start:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-xsm:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-thunderx:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-multivcpu:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit2:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-credit1:saverestore-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-i386-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-amd64-amd64-libvirt-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-libvirt-raw:saverestore-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-arm64-arm64-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-raw:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-vhd:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-arndale:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:migrate-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-xl-rtds:saverestore-support-check:fail:nonblocking
    xen-unstable:test-armhf-armhf-libvirt-qcow2:migrate-support-check:fail:nonblocking
X-Osstest-Versions-This:
    xen=5bdfcf7fe89759321335159c8304833dc32a25cd
X-Osstest-Versions-That:
    xen=a8ab67cae01eca7bba8627ce13429c59fda056f3
From: osstest service owner <osstest-admin@xenproject.org>
Date: Sat, 30 Sep 2023 22:02:09 +0000

flight 183223 xen-unstable real [real]
flight 183227 xen-unstable real-retest [real]
http://logs.test-lab.xenproject.org/osstest/logs/183223/
http://logs.test-lab.xenproject.org/osstest/logs/183227/

Failures :-/ but no regressions.

Tests which are failing intermittently (not blocking):
 test-armhf-armhf-xl    18 guest-start/debian.repeat fail pass in 183227-retest

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     16 saverestore-support-check    fail  like 183216
 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stop            fail like 183216
 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop             fail like 183216
 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stop            fail like 183216
 test-armhf-armhf-libvirt-raw 15 saverestore-support-check    fail  like 183216
 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 183216
 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop             fail like 183216
 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop             fail like 183216
 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stop            fail like 183216
 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check   fail like 183216
 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop             fail like 183216
 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stop            fail like 183216
 test-amd64-amd64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-amd64-i386-xl-pvshim    14 guest-start                  fail   never pass
 test-amd64-i386-libvirt      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  16 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 15 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-thunderx 15 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 16 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-thunderx 16 saverestore-support-check    fail   never pass
 test-amd64-i386-libvirt-xsm  15 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass
 test-armhf-armhf-xl          15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 15 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 16 saverestore-support-check    fail  never pass
 test-armhf-armhf-libvirt     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit1  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  16 saverestore-support-check    fail   never pass
 test-amd64-amd64-libvirt     15 migrate-support-check        fail   never pass
 test-amd64-i386-libvirt-raw  14 migrate-support-check        fail   never pass
 test-amd64-amd64-libvirt-vhd 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 14 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-raw 15 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-vhd      14 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-raw 14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      14 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      15 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-arndale  15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-arndale  16 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-rtds     15 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     16 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt-qcow2 14 migrate-support-check        fail never pass

version targeted for testing:
 xen                  5bdfcf7fe89759321335159c8304833dc32a25cd
baseline version:
 xen                  a8ab67cae01eca7bba8627ce13429c59fda056f3

Last test of basis   183216  2023-09-29 14:10:21 Z    1 days
Testing same since   183223  2023-09-30 06:42:36 Z    0 days    1 attempts

------------------------------------------------------------
People who touched revisions under test:
  Bertrand Marquis <bertrand.marquis@arm.com>
  David Kahurani <k.kahurani@gmail.com>
  Jan Beulich <jbeulich@suse.com>
  Shawn Anastasio <sanastasio@raptorengineering.com>
  Stefano Stabellini <stefano.stabellini@amd.com>

jobs:
 build-amd64-xsm                                              pass    
 build-arm64-xsm                                              pass    
 build-i386-xsm                                               pass    
 build-amd64-xtf                                              pass    
 build-amd64                                                  pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-i386                                                   pass    
 build-amd64-libvirt                                          pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-i386-libvirt                                           pass    
 build-amd64-prev                                             pass    
 build-i386-prev                                              pass    
 build-amd64-pvops                                            pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-xtf-amd64-amd64-1                                       pass    
 test-xtf-amd64-amd64-2                                       pass    
 test-xtf-amd64-amd64-3                                       pass    
 test-xtf-amd64-amd64-4                                       pass    
 test-xtf-amd64-amd64-5                                       pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-coresched-amd64-xl                                pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          fail    
 test-amd64-i386-xl                                           pass    
 test-amd64-coresched-i386-xl                                 pass    
 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm           pass    
 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm            pass    
 test-amd64-amd64-xl-qemut-stubdom-debianhvm-amd64-xsm        pass    
 test-amd64-i386-xl-qemut-stubdom-debianhvm-amd64-xsm         pass    
 test-amd64-amd64-xl-qemut-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemut-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-xl-qemuu-debianhvm-i386-xsm                 pass    
 test-amd64-i386-xl-qemuu-debianhvm-i386-xsm                  pass    
 test-amd64-amd64-libvirt-xsm                                 pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-amd64-i386-libvirt-xsm                                  pass    
 test-amd64-amd64-xl-xsm                                      pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-amd64-i386-xl-xsm                                       pass    
 test-amd64-amd64-qemuu-nested-amd                            fail    
 test-amd64-amd64-xl-pvhv2-amd                                pass    
 test-amd64-i386-qemut-rhel6hvm-amd                           pass    
 test-amd64-i386-qemuu-rhel6hvm-amd                           pass    
 test-amd64-amd64-dom0pvh-xl-amd                              pass    
 test-amd64-amd64-xl-qemut-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemut-debianhvm-amd64                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64                    pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64                     pass    
 test-amd64-i386-freebsd10-amd64                              pass    
 test-amd64-amd64-qemuu-freebsd11-amd64                       pass    
 test-amd64-amd64-qemuu-freebsd12-amd64                       pass    
 test-amd64-amd64-xl-qemuu-ovmf-amd64                         pass    
 test-amd64-i386-xl-qemuu-ovmf-amd64                          pass    
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          fail    
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-i386-xl-qemuu-win7-amd64                          fail    
 test-amd64-amd64-xl-qemut-ws16-amd64                         fail    
 test-amd64-i386-xl-qemut-ws16-amd64                          fail    
 test-amd64-amd64-xl-qemuu-ws16-amd64                         fail    
 test-amd64-i386-xl-qemuu-ws16-amd64                          fail    
 test-armhf-armhf-xl-arndale                                  pass    
 test-amd64-amd64-examine-bios                                pass    
 test-amd64-i386-examine-bios                                 pass    
 test-amd64-amd64-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-amd64-amd64-xl-credit2                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-amd64-amd64-xl-qemuu-dmrestrict-amd64-dmrestrict        pass    
 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict         pass    
 test-amd64-amd64-examine                                     pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-amd64-i386-examine                                      pass    
 test-amd64-i386-freebsd10-i386                               pass    
 test-amd64-amd64-qemuu-nested-intel                          pass    
 test-amd64-amd64-xl-pvhv2-intel                              pass    
 test-amd64-i386-qemut-rhel6hvm-intel                         pass    
 test-amd64-i386-qemuu-rhel6hvm-intel                         pass    
 test-amd64-amd64-dom0pvh-xl-intel                            pass    
 test-amd64-amd64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-amd64-i386-libvirt                                      pass    
 test-amd64-amd64-livepatch                                   pass    
 test-amd64-i386-livepatch                                    pass    
 test-amd64-amd64-migrupgrade                                 pass    
 test-amd64-i386-migrupgrade                                  pass    
 test-amd64-amd64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         pass    
 test-amd64-amd64-libvirt-pair                                pass    
 test-amd64-i386-libvirt-pair                                 pass    
 test-amd64-amd64-xl-pvshim                                   pass    
 test-amd64-i386-xl-pvshim                                    fail    
 test-amd64-amd64-pygrub                                      pass    
 test-armhf-armhf-libvirt-qcow2                               pass    
 test-amd64-amd64-xl-qcow2                                    pass    
 test-arm64-arm64-libvirt-raw                                 pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-amd64-i386-libvirt-raw                                  pass    
 test-amd64-amd64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-amd64-amd64-xl-qemuu-debianhvm-amd64-shadow             pass    
 test-amd64-i386-xl-qemuu-debianhvm-amd64-shadow              pass    
 test-amd64-amd64-xl-shadow                                   pass    
 test-amd64-i386-xl-shadow                                    pass    
 test-arm64-arm64-xl-thunderx                                 pass    
 test-amd64-amd64-examine-uefi                                pass    
 test-amd64-i386-examine-uefi                                 pass    
 test-amd64-amd64-libvirt-vhd                                 pass    
 test-arm64-arm64-xl-vhd                                      pass    
 test-armhf-armhf-xl-vhd                                      pass    
 test-amd64-i386-xl-vhd                                       pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Pushing revision :

To xenbits.xen.org:/home/xen/git/xen.git
   a8ab67cae0..5bdfcf7fe8  5bdfcf7fe89759321335159c8304833dc32a25cd -> master


From xen-devel-bounces@lists.xenproject.org Sat Sep 30 23:28:46 2023
Return-path: <xen-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Sat, 30 Sep 2023 23:28:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.610910.950403 (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmjNy-0007Po-EN; Sat, 30 Sep 2023 23:28:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 610910.950403; Sat, 30 Sep 2023 23:28:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-devel-bounces@lists.xenproject.org>)
	id 1qmjNy-0007Ph-AN; Sat, 30 Sep 2023 23:28:34 +0000
Received: by outflank-mailman (input) for mailman id 610910;
 Sat, 30 Sep 2023 23:28:32 +0000
Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50]
 helo=se1-gles-flk1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=Uo57=FO=invisiblethingslab.com=demi@srs-se1.protection.inumbo.net>)
 id 1qmjNw-0007Pb-5r
 for xen-devel@lists.xenproject.org; Sat, 30 Sep 2023 23:28:32 +0000
Received: from wout2-smtp.messagingengine.com (wout2-smtp.messagingengine.com
 [64.147.123.25]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 0be409d2-5fe9-11ee-9b0d-b553b5be7939;
 Sun, 01 Oct 2023 01:28:24 +0200 (CEST)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
 by mailout.west.internal (Postfix) with ESMTP id 02C8B3201210;
 Sat, 30 Sep 2023 19:28:20 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162])
 by compute3.internal (MEProxy); Sat, 30 Sep 2023 19:28:21 -0400
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat,
 30 Sep 2023 19:28:19 -0400 (EDT)
X-BeenThere: xen-devel@lists.xenproject.org
List-Id: Xen developer discussion <xen-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-devel@lists.xenproject.org>
List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>,
 <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 0be409d2-5fe9-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=cc:cc:content-type:content-type:date
	:date:from:from:in-reply-to:in-reply-to:message-id:mime-version
	:references:reply-to:sender:subject:subject:to:to; s=fm2; t=
	1696116500; x=1696202900; bh=K+sCmI9/IZXRz7WaophaWkj5oWB1yh93aRG
	SFusggM4=; b=Hc49WZzgqkeMu8eYcDurnStkMeydBaUM29JQ9NjiuxmX8nSgqPo
	DJF8CjGcYefbwd3bWt0w89tz7PL6AwLIkjuzwz1q98SIA4dJabONTEC90+bmmvu/
	nrKUg6qtuDyk6BsSFnTMzxZ/HHha0uChJ3iUTmNkiaLSQCnT9nU+cu73s+JHgxce
	gdizXn+AnGEuYRdVOmIt9dxtknazBXvWRxCReQV0x5eOhDKye5ASRn1/DKqMUMRA
	ZkQvG5TVG+J9ldtthYQ4oxkAEdYZbuxGd26X1yRlntJGLw8BoiN47ho9yLKqRcpd
	fv/AdT9jq8tcJGh/nYfSjnYNzV/e0QiZh8A==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:cc:content-type:content-type:date:date
	:feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
	:message-id:mime-version:references:reply-to:sender:subject
	:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
	:x-sasl-enc; s=fm2; t=1696116500; x=1696202900; bh=K+sCmI9/IZXRz
	7WaophaWkj5oWB1yh93aRGSFusggM4=; b=NEhv/g8kae+3B7ijRM9UGiskBZuBT
	pVeoiALQgGesyFiHz3mchMc0zi0iwaOwM7PRp9S5ABAv1u4FOQZoDpnyfHFD6awC
	K/+1VnxD+rigMJHMAgN8Nvt7tf7K2DIq4pkgaP3KaNC3GvRQFXCT+s5xbHUSX+M+
	yw4F4Cm8B0fyG1MQMgKCj7O1fBzhbt3GWu21EIGGYgtUboh8h8M65dN7PL/iQIHu
	FCFjKw6wV5hLSjNnhF93qUcaZ0w45Ak1oK+vvcDpEJxkozi4Uy3rVblNwLQ8h8Vc
	OeJrKdjy2t1NRJN4Gz5qz4g0y0uOdHQEMO01DvVW1L5bROKuJGFABQ0Wg==
X-ME-Sender: <xms:FK8YZahCAbl4G1OSPmllAipjijOUxlK84cZD8PeRFl2Q2i8lsS3LCg>
    <xme:FK8YZbBtQlJ41nnZDhy8905x_Cx72O0GZ0RxYMd67oWfDx8CRPvd7f-XPBi9a139D
    jfvm3TNXRPmQeI>
X-ME-Received: <xmr:FK8YZSEsdWo0XGXDxBwRKeOxTIcs82VRSceD4wxrmFsU1S4vx8wIh5cRBt-fWpIl31-jjOY1b-P5xxQfOGU-tHMofW8aL4VqB4gl7JcR1FY7Qu2b>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrudeggddvfecutefuodetggdotefrodftvf
    curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu
    uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc
    fjughrpeffhffvvefukfhfgggtuggjsehgtderredttdejnecuhfhrohhmpeffvghmihcu
    ofgrrhhivgcuqfgsvghnohhurhcuoeguvghmihesihhnvhhishhisghlvghthhhinhhgsh
    hlrggsrdgtohhmqeenucggtffrrghtthgvrhhnpedvjeetgeekhfetudfhgfetffegfffg
    uddvgffhffeifeeikeektdehgeetheffleenucevlhhushhtvghrufhiiigvpedtnecurf
    grrhgrmhepmhgrihhlfhhrohhmpeguvghmihesihhnvhhishhisghlvghthhhinhhgshhl
    rggsrdgtohhm
X-ME-Proxy: <xmx:FK8YZTTc2Cpbkxoyls8Iv1xDTdT5OD3ZzoXFMvM1c94NLuJ-7IhQfw>
    <xmx:FK8YZXw-YGjsUYWb9HKC0q521Z-QxB4AfGl7vtSm_T2vmY3PAN891Q>
    <xmx:FK8YZR6fVIxrh0Ba9l5qJLF8bAWgvTZ0rSI5a62Qyak7DzNhoSag8w>
    <xmx:FK8YZQq6k3EDW22gCqMRGbs3nZwiHJzIcA_dHUTSG4H83dZyQY9mkw>
Feedback-ID: iac594737:Fastmail
Date: Sat, 30 Sep 2023 19:28:15 -0400
From: Demi Marie Obenour <demi@invisiblethingslab.com>
To: George Dunlap <george.dunlap@cloud.com>,
	Xen-devel <xen-devel@lists.xenproject.org>
Cc: Juergen Gross <jgross@suse.com>,
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Subject: Re: Sketch of an idea for handling the "mixed workload" problem
Message-ID: <ZRivEkG8Ox213H2A@itl-email>
References: <CA+zSX=Z904nF0yD1grRZc1miEOhdTHqAd4j-S1j8GY+1bo9COw@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
	protocol="application/pgp-signature"; boundary="LspdzsiRMcdqncB7"
Content-Disposition: inline
In-Reply-To: <CA+zSX=Z904nF0yD1grRZc1miEOhdTHqAd4j-S1j8GY+1bo9COw@mail.gmail.com>


--LspdzsiRMcdqncB7
Content-Type: text/plain; protected-headers=v1; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Date: Sat, 30 Sep 2023 19:28:15 -0400
From: Demi Marie Obenour <demi@invisiblethingslab.com>
To: George Dunlap <george.dunlap@cloud.com>,
	Xen-devel <xen-devel@lists.xenproject.org>
Cc: Juergen Gross <jgross@suse.com>,
	Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= <marmarek@invisiblethingslab.com>
Subject: Re: Sketch of an idea for handling the "mixed workload" problem

On Fri, Sep 29, 2023 at 05:42:16PM +0100, George Dunlap wrote:
> The basic credit2 algorithm goes something like this:
>=20
> 1. All vcpus start with the same number of credits; about 10ms worth
> if everyone has the same weight

> 2. vcpus burn credits as they consume cpu, based on the relative
> weights: higher weights burn slower, lower weights burn faster
>=20
> 3. At any given point in time, the runnable vcpu with the highest
> credit is allowed to run
>=20
> 4. When the "next runnable vcpu" on a runqueue is negative, credit is
> reset: everyone gets another 10ms, and can carry over at most 2ms of
> credit over the reset.

One relevant aspect of Qubes OS is that it is very very heavily
oversubscribed: having more VMs running than physical CPUs is (at least
in my usage) not uncommon, and each of those VMs will typically have at
least two vCPUs.  With a credit of 10ms and 36 vCPUs, I could easily see
a vCPU not being allowed to execute for 200ms or more.  For audio or
video, workloads, this is a disaster.

10ms is a LOT for desktop workloads or for anyone who cares about
latency.  At 60Hz it is 3/5 of a frame, and with a 120Hz monitor and a
heavily contended system frame drops are guaranteed.

> Generally speaking, vcpus that use less than their quota and have lots
> of interrupts are scheduled immediately, since when they wake up they
> always have more credit than the vcpus who are burning through their
> slices.
>=20
> But what about a situation as described recently on Matrix, where a VM
> uses a non-negligible amount of cpu doing un-accelerated encryption
> and decryption, which can be delayed by a few MS, as well as handling
> audio events?  How can we make sure that:
>=20
> 1. We can run whenever interrupts happen
> 2. We get no more than our fair share of the cpu?
>=20
> The counter-intuitive key here is that in order to achieve the above,
> you need to *deschedule or preempt early*, so that when the interrupt
> comes, you have spare credit to run the interrupt handler.  How do we
> manage that?
>=20
> The idea I'm working out comes from a phrase I used in the Matrix
> discussion, about a vcpu that "foolishly burned all its credits".
> Naturally the thing you want to do to have credits available is to
> save them up.
>=20
> So the idea would be this.  Each vcpu would have a "boost credit
> ratio" and a "default boost interval"; there would be sensible
> defaults based on typical workloads, but these could be tweaked for
> individual VMs.
>=20
> When credit is assigned, all VMs would get the same amount of credit,
> but divided into two "buckets", according to the boost credit ratio.
>=20
> Under certain conditions, a vcpu would be considered "boosted"; this
> state would last either until the default boost interval, or until
> some other event (such as a de-boost yield).
>=20
> The queue would be sorted thus:
>=20
> * Boosted vcpus, by boost credit available
> * Non-boosted vcpus, by non-boost credit available
>=20
> Getting more boost credit means having lower priority when not
> boosted; and burning through your boost credit means not being
> scheduled when you need to be.
>=20
> Other ways we could consider putting a vcpu into a boosted state (some
> discussed on Matrix or emails linked from Matrix):
> * Xen is about to preempt, but finds that the vcpu interrupts are
> blocked (this sort of overlaps with the "when we deliver an interrupt"
> one)

This is also a good heuristic for "vCPU owns a spinlock", which is
definitely a bad time to preempt.

> * Xen is about to preempt, but finds that the (currently out-of-tree)
> "dont_desched" bit has been set in the shared memory area
>=20
> Other ways to consider de-boosting:
> * There's a way to trigger a VMEXIT when interrupts have been
> re-enabled; setting this up when the VM is in the boost state

This is a good idea.

> Getting the defaults right might take some thinking.  If you set the
> default "boost credit ratio" to 25% and the "default boost interval"
> to 500ms, then you'd basically have five "boosts" per scheduling
> window.  The window depends on how active other vcpus are, but if it's
> longer than 20ms your system is too overloaded.

An interval of 500ms seems rather long to me.  Did you mean 500=CE=BCs?

> Thoughts?

My first thought when I had the problem is that Xen's scheduling quantum
was too long.  This is consistent with the observation that dom0 (which
was not very busy IIRC) fell behind in its delivery of audio samples.
Presumably it had plenty of credit, but simply did not get scheduled in
time, perhaps because Xen did not preempt soon enough.  It=E2=80=99s also w=
orth
noting that Qubes makes heavy use of vchans, and I expect the latency of
these to be directly proportional to the time between preemption
interrupts.

Audio is not very demanding on throughput, but is extremely sensitive to
latency.  Therefore, the top priority is making sure that every runnable
vCPU gets a chance to execute periodically.  One way to solve this would
be for both the credits (both the initial credit and the maximum credit
carried over) and the interval between preemptions to be inversely
proportional to the number of runnable vCPUs, so that the time needed to
cycle through all runnable vCPUs is roughly constant.  Specifically,
they would be proportional to Lmax/runnable_vCPUs, where Lmax is the
latency target (1ms or so).  This also ensures that even Xen-unaware VMs
(such as a Windows guest running Microsoft Teams or Skype) get to run
periodically.  There would need to be a limit to prevent Xen from
hogging more than e.g. 10% of CPU time just doing preemption, but if
this is hit, Xen should log something and possibly notify dom0 so that a
warning can be displayed to the user.  Additionally, a certain amount of
CPU time (such as 10%) should be reserved for dom0, so that the system
remains responsive.

Qubes OS could also help here.  If a VM is allowed to record audio, it
(and the VMs providing network to it, transitively) should get a boost
in priority, so that if the system is overloaded other guests are more
likely be delayed in their execution.

> Demi, what kinds of interrupt counts are you getting for your VM?

I didn't measure it, but I can check the next time I am on a video call
or doing audio recoring.

>  -George

--=20
Sincerely,
Demi Marie Obenour (she/her/hers)
Invisible Things Lab

--LspdzsiRMcdqncB7
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEdodNnxM2uiJZBxxxsoi1X/+cIsEFAmUYrxIACgkQsoi1X/+c
IsHZFRAA0O1fJJuPtQCYWtgxyvp2QGjCUzWqUyWOQxFd5ur1JeameH1eoQv8boQK
vUfQ1KjdoN8QlxGSxMRci7URDhhL4jdxSxKq0aPc/7mdACXsNmVNaVucGrkWaAVE
aqkNGysLgn1JgsbhkOVZYeQFKS4WpZQ9hVK4upt8swgCHifcrnV4oM63FlYULGBB
VXA0DnXixOhdhfYBYHnzWTEgew6m46U7mRiyulXCROZdlc+XMZZSTZZeQi9asKHj
bJmF9b5cSRG1zRiG4CdfMJcANUoLC/O/CivqcXs4kOjae/ayzIYrIv9YM1F0BT01
ZZHt+jvWIrdA7pOB9UhGipzmpVU0+/YrFUDqA7ttV6FPnl2yzkgsCwIhvj3lVAcH
7ES9zRBrEwdsbg3WKtAd8xhygHj1neq2o7jJvvi6Xt5TfQBWHv8ZqORZFLPPjC+z
wsAD4OUHAbstIP3xy+EyXUzOCxKrzTOoi4n/IfsL5QiAFEEUT474DYtlSFbf2vmR
YIEAV78cvYjyGRTYKDBB0d+6tP0Wz2D/AtZfHQDDjpjTofvwOlRnb/FSRVu5vYoD
yMKhbnagQ3w4UbD9GzYdOnHJo1bXwLEpC1Njdn+zM2tuHZWiSfOz9+6Ka0WQPmpA
ITslf6ErTBJZzDJu7Kb1PmQS3F44OkXkWYaYpuaD+gELM9o0jSY=
=rxFu
-----END PGP SIGNATURE-----

--LspdzsiRMcdqncB7--


